diff --git a/docs/index.md b/docs/index.md index fe2acf4d0..182f2423a 100644 --- a/docs/index.md +++ b/docs/index.md @@ -49,6 +49,4 @@ provider "volterra" { **OR** - `VES_P12_CONTENT`: Base64-encoded P12 bundle content. - - **Password:** Set the P12 file password via the `VES_P12_PASSWORD` environment variable. - - \ No newline at end of file + - **Password:** Set the P12 file password via the `VES_P12_PASSWORD` environment variable. \ No newline at end of file diff --git a/docs/resources/volterra_advertise_policy.md b/docs/resources/volterra_advertise_policy.md index fe88f2d7a..2e76c4378 100644 --- a/docs/resources/volterra_advertise_policy.md +++ b/docs/resources/volterra_advertise_policy.md @@ -21,6 +21,7 @@ resource "volterra_advertise_policy" "example" { namespace = "staging" // One of the arguments from this list "port port_ranges" must be set + port = "80" } @@ -165,7 +166,7 @@ tenant - (Optional) then tenant will hold the referred object's(e.g. route's) te Direct reference to site object. -###### One of the arguments from this list "enable_internet_vip, disable_internet_vip" must be set +###### One of the arguments from this list "disable_internet_vip, enable_internet_vip" must be set `disable_internet_vip` - (Optional) Do not enable advertise on external internet vip. (`Bool`). @@ -245,7 +246,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -275,7 +276,7 @@ Common TLS parameters used in both upstream and downstream connections. Root CA Certificate. -`trusted_ca_list` - (Optional) Reference to Root CA Certificate. See [ref](#ref) below for details.(Deprecated) +`trusted_ca_list` - (Optional) Reference to Root CA Certificate. See [ref](#ref) below for details. Attribute Reference ------------------- diff --git a/docs/resources/volterra_alert_policy.md b/docs/resources/volterra_alert_policy.md index 7b462a9ad..f2f3605d8 100644 --- a/docs/resources/volterra_alert_policy.md +++ b/docs/resources/volterra_alert_policy.md @@ -28,19 +28,18 @@ resource "volterra_alert_policy" "example" { routes { // One of the arguments from this list "send dont_send" must be set + send = true - // One of the arguments from this list "severity group alertname alertname_regex custom any" must be set + // One of the arguments from this list "severity group alertname alertname_regex custom any" can be set - group { - groups = ["groups"] + severity { + severities = ["severities"] } notification_parameters { - // One of the arguments from this list "default individual ves_io_group custom" must be set + // One of the arguments from this list "custom default individual ves_io_group" must be set - custom { - labels = ["value"] - } + default = true group_interval = "1m" @@ -82,7 +81,7 @@ Argument Reference Notification parameters to decide how and when the alerts should be sent to the receivers.. -###### One of the arguments from this list "ves_io_group, custom, default, individual" must be set +###### One of the arguments from this list "default, individual, ves_io_group, custom" must be set `custom` - (Optional) Specify set of labels for grouping the alerts. See [Group By Custom ](#group-by-custom) below for details. @@ -108,7 +107,7 @@ The routes are evaluated in the specified order and terminates on the first matc `send` - (Optional) Send the alert (`Bool`). -###### One of the arguments from this list "any, severity, group, alertname, alertname_regex, custom" can be set +###### One of the arguments from this list "custom, any, severity, group, alertname, alertname_regex" can be set `alertname` - (Optional) Matches the alertname of the alert (`String`). @@ -146,7 +145,7 @@ AlertLabel to configure the alert policy rule. Alertname Matcher. -###### One of the arguments from this list "regex_match, exact_match" must be set +###### One of the arguments from this list "exact_match, regex_match" must be set `exact_match` - (Optional) Equality match value for the label (`String`). diff --git a/docs/resources/volterra_alert_receiver.md b/docs/resources/volterra_alert_receiver.md index cbe2e397e..1974f278c 100644 --- a/docs/resources/volterra_alert_receiver.md +++ b/docs/resources/volterra_alert_receiver.md @@ -20,10 +20,28 @@ resource "volterra_alert_receiver" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "sms webhook slack pagerduty opsgenie email" must be set + // One of the arguments from this list "email sms webhook slack pagerduty opsgenie" must be set - email { - email = "abc@email.com" + slack { + channel = "value" + + url { + blindfold_secret_info_internal { + decryption_provider = "value" + + location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" + + store_provider = "value" + } + + secret_encoding_type = "secret_encoding_type" + + // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set + + wingman_secret_info { + name = "ChargeBack-API-Key" + } + } } } @@ -120,7 +138,7 @@ HTTP Basic Auth Password. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -156,7 +174,7 @@ PagerDuty integration key (choose Integration Type: Events API v2). `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -296,7 +314,7 @@ API Key is embedded in the webhook URL.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -392,7 +410,7 @@ Incoming webhook url to send alert notifications.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_api_definition.md b/docs/resources/volterra_api_definition.md index 60c05a38b..6070038ba 100644 --- a/docs/resources/volterra_api_definition.md +++ b/docs/resources/volterra_api_definition.md @@ -21,7 +21,8 @@ resource "volterra_api_definition" "example" { namespace = "staging" // One of the arguments from this list "strict_schema_origin mixed_schema_origin" must be set - strict_schema_origin = true + + mixed_schema_origin = true } ``` diff --git a/docs/resources/volterra_apm.md b/docs/resources/volterra_apm.md index da53658a2..56dbe4985 100644 --- a/docs/resources/volterra_apm.md +++ b/docs/resources/volterra_apm.md @@ -23,72 +23,25 @@ resource "volterra_apm" "example" { // One of the arguments from this list "https_management" must be set https_management { - // One of the arguments from this list "advertise_on_internet_default_vip advertise_on_internet advertise_on_slo_internet_vip advertise_on_sli_vip advertise_on_slo_vip advertise_on_slo_sli disable_local do_not_advertise_on_internet" must be set + // One of the arguments from this list "advertise_on_internet advertise_on_slo_internet_vip advertise_on_sli_vip advertise_on_slo_vip advertise_on_slo_sli disable_local do_not_advertise_on_internet advertise_on_internet_default_vip" must be set - advertise_on_slo_sli { - // One of the arguments from this list "use_mtls no_mtls" must be set - - use_mtls { - // One of the arguments from this list "no_crl crl" must be set - no_crl = true - - // One of the arguments from this list "trusted_ca_url trusted_ca" must be set - - trusted_ca { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - // One of the arguments from this list "xfcc_disabled xfcc_options" must be set - xfcc_disabled = true - } - - tls_certificates { - certificate_url = "value" - - description = "Certificate used in production environment" - - // One of the arguments from this list "use_system_defaults disable_ocsp_stapling custom_hash_algorithms" must be set - - use_system_defaults {} - private_key { - blindfold_secret_info_internal { - decryption_provider = "value" - - location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - - store_provider = "value" - } - - secret_encoding_type = "secret_encoding_type" - - // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set - - wingman_secret_info { - name = "ChargeBack-API-Key" - } - } - } - - tls_config { - // One of the arguments from this list "medium_security low_security custom_security default_security" must be set - default_security = true - } - } + do_not_advertise_on_internet = true domain_suffix = "foo.com" - // One of the arguments from this list "do_not_advertise advertise_on_public_default_vip advertise_on_public" must be set + // One of the arguments from this list "advertise_on_public_default_vip advertise_on_public do_not_advertise" can be set + do_not_advertise = true // One of the arguments from this list "default_https_port https_port" must be set - default_https_port = true + + https_port = "https_port" } // One of the arguments from this list "aws_site_type_choice baremetal_site_type_choice" must be set - aws_site_type_choice { - apm_aws_site { + baremetal_site_type_choice { + f5_bare_metal_site { admin_password { blindfold_secret_info_internal { decryption_provider = "value" @@ -102,74 +55,94 @@ resource "volterra_apm" "example" { // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set - vault_secret_info { - key = "key_pem" - - location = "v1/data/vhost_key" - - provider = "vault-vh-provider" + blindfold_secret_info { + decryption_provider = "value" - secret_encoding = "secret_encoding" + location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - version = "1" + store_provider = "value" } } admin_username = "admin" - aws_tgw_site { - aws_tgw_site { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } + bare_metal_site { + name = "test1" + namespace = "staging" + tenant = "acmecorp" } - endpoint_service { - // One of the arguments from this list "disable_advertise_on_slo_ip advertise_on_slo_ip advertise_on_slo_ip_external" must be set - disable_advertise_on_slo_ip = true + bigiq_instance { + license_pool_name = "apm_msp_license_pool1" - // One of the arguments from this list "automatic_vip configured_vip" must be set - automatic_vip = true + license_server_ip = "192.168.0.77" - // One of the arguments from this list "default_tcp_ports http_port https_port custom_tcp_ports no_tcp_ports" must be set - default_tcp_ports = true + password { + blindfold_secret_info_internal { + decryption_provider = "value" - // One of the arguments from this list "no_udp_ports custom_udp_ports" must be set - no_udp_ports = true - } + location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - nodes { - aws_az_name = "us-west-2a" + store_provider = "value" + } + + secret_encoding_type = "secret_encoding_type" + + // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set - // One of the arguments from this list "reserved_mgmt_subnet mgmt_subnet" must be set + vault_secret_info { + key = "key_pem" - mgmt_subnet { - // One of the arguments from this list "subnet_param existing_subnet_id" must be set + location = "v1/data/vhost_key" - subnet_param { - ipv4 = "10.1.2.0/24" + provider = "vault-vh-provider" - ipv6 = "1234:568:abcd:9100::/64" + secret_encoding = "secret_encoding" + + version = "1" } } - node_name = "node1" - // One of the arguments from this list "automatic_prefix tunnel_prefix" must be set - automatic_prefix = true + + sku_name = "F5-BIG-MSP-A-BT-1G-EXTHSM-1" + + username = "admin" } - ssh_key = "ssh-rsa AAAAB..." + nodes { + bm_node_memory_size = "bm_node_memory_size" + + bm_virtual_cpu_count = "bm_virtual_cpu_count" - tags = { - "key1" = "value1" + external_interface { + interface { + name = "test1" + namespace = "staging" + tenant = "acmecorp" + } + + network_gateway = "10.2.3.0" + + network_self_ip = "10.2.3.0/24" + } + + internal_interface { + interface { + name = "test1" + namespace = "staging" + tenant = "acmecorp" + } + + network_gateway = "10.2.3.0" + + network_self_ip = "10.2.3.0/24" + } + + node_name = "node1" } - } - // One of the arguments from this list "market_place_image" must be set + public_download_url = "https://imagepath.com/bigip_ve" - market_place_image { - // One of the arguments from this list "BestPlusPayG200Mbps best_plus_payg_1gbps" must be set - BestPlusPayG200Mbps = true + ssh_key = "ssh-rsa AAAAB..." } } } @@ -293,7 +266,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set +###### One of the arguments from this list "custom_hash_algorithms, use_system_defaults, disable_ocsp_stapling" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -339,7 +312,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "medium_security, low_security, custom_security, default_security" must be set +###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -389,7 +362,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set +###### One of the arguments from this list "disable_ocsp_stapling, custom_hash_algorithms, use_system_defaults" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -403,7 +376,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "low_security, custom_security, default_security, medium_security" must be set +###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -429,7 +402,7 @@ Secret admin password for BIG-IP. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -457,7 +430,7 @@ External service type is Endpoint service. `disable_advertise_on_slo_ip` - (Optional) Do not Advertise this loadbalancer on Site Local Outside network address (`Bool`). -###### One of the arguments from this list "configured_vip, automatic_vip" must be set +###### One of the arguments from this list "automatic_vip, configured_vip" must be set `automatic_vip` - (Optional) System will automatically select a VIP (`Bool`). @@ -545,7 +518,7 @@ Password of the user used to access BIG-IQ to activate the license. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -609,7 +582,7 @@ Secret admin password for BIG-IP. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -671,7 +644,7 @@ Enable HTTPS based management. `domain_suffix` - (Required) Domain suffix will be used along with node name to form URL to access node management (`String`). -###### One of the arguments from this list "advertise_on_public_default_vip, advertise_on_public, do_not_advertise" can be set +###### One of the arguments from this list "do_not_advertise, advertise_on_public_default_vip, advertise_on_public" can be set `advertise_on_public` - (Optional) Advertise this loadbalancer on public network. See [Internet Choice Advertise On Public ](#internet-choice-advertise-on-public) below for details.(Deprecated) diff --git a/docs/resources/volterra_app_api_group.md b/docs/resources/volterra_app_api_group.md index c35c709a3..ddbd20434 100644 --- a/docs/resources/volterra_app_api_group.md +++ b/docs/resources/volterra_app_api_group.md @@ -28,13 +28,7 @@ resource "volterra_app_api_group" "example" { // One of the arguments from this list "generic http_loadbalancer api_definition" must be set - http_loadbalancer { - http_loadbalancer { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } + generic = true } ``` diff --git a/docs/resources/volterra_app_firewall.md b/docs/resources/volterra_app_firewall.md index 9618e7ee4..5401d7f72 100644 --- a/docs/resources/volterra_app_firewall.md +++ b/docs/resources/volterra_app_firewall.md @@ -20,43 +20,28 @@ resource "volterra_app_firewall" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "allow_all_response_codes allowed_response_codes" must be set + // One of the arguments from this list "allowed_response_codes allow_all_response_codes" must be set + allow_all_response_codes = true - // One of the arguments from this list "disable_anonymization default_anonymization custom_anonymization" must be set + // One of the arguments from this list "custom_anonymization disable_anonymization default_anonymization" must be set + disable_anonymization = true // One of the arguments from this list "use_default_blocking_page blocking_page" must be set + use_default_blocking_page = true // One of the arguments from this list "default_bot_setting bot_protection_setting" must be set + default_bot_setting = true // One of the arguments from this list "default_detection_settings detection_settings" must be set - detection_settings { - // One of the arguments from this list "enable_suppression disable_suppression" must be set - enable_suppression = true + default_detection_settings = true - signature_selection_setting { - // One of the arguments from this list "default_attack_type_settings attack_type_settings" must be set - default_attack_type_settings = true - - // One of the arguments from this list "only_high_accuracy_signatures high_medium_accuracy_signatures high_medium_low_accuracy_signatures" must be set - only_high_accuracy_signatures = true - } - - // One of the arguments from this list "disable_staging stage_new_signatures stage_new_and_updated_signatures" must be set - - stage_new_and_updated_signatures { - staging_period = "7" - } - // One of the arguments from this list "enable_threat_campaigns disable_threat_campaigns" must be set - disable_threat_campaigns = true - // One of the arguments from this list "default_violation_settings violation_settings" must be set - default_violation_settings = true - } // One of the arguments from this list "use_loadbalancer_setting blocking monitoring" must be set + use_loadbalancer_setting = true } @@ -205,7 +190,7 @@ Define Custom Security Policy settings. `enable_threat_campaigns` - (Optional) x-displayName: "Enable" (`Bool`). -###### One of the arguments from this list "default_violation_settings, violation_settings" must be set +###### One of the arguments from this list "violation_settings, default_violation_settings" must be set `default_violation_settings` - (Optional) All violations are enabled for detection (`Bool`). diff --git a/docs/resources/volterra_app_setting.md b/docs/resources/volterra_app_setting.md index 4a3c27a93..37d31e3aa 100644 --- a/docs/resources/volterra_app_setting.md +++ b/docs/resources/volterra_app_setting.md @@ -28,7 +28,8 @@ resource "volterra_app_setting" "example" { } business_logic_markup_setting { - // One of the arguments from this list "enable disable" must be set + // One of the arguments from this list "enable disable" can be set + enable = true } @@ -41,19 +42,23 @@ resource "volterra_app_setting" "example" { } user_behavior_analysis_setting { - // One of the arguments from this list "enable_learning disable_learning" must be set - enable_learning = true + // One of the arguments from this list "disable_learning enable_learning" must be set + + disable_learning = true - // One of the arguments from this list "disable_detection enable_detection" must be set + // One of the arguments from this list "enable_detection disable_detection" must be set enable_detection { - // One of the arguments from this list "exclude_bola_detection bola_detection_manual bola_detection_automatic" must be set - exclude_bola_detection = true + // One of the arguments from this list "exclude_bola_detection bola_detection_manual bola_detection_automatic" can be set + + bola_detection_automatic = true // One of the arguments from this list "include_bot_defense_activity exclude_bot_defense_activity" must be set + include_bot_defense_activity = true // One of the arguments from this list "cooling_off_period" must be set + cooling_off_period = "cooling_off_period" // One of the arguments from this list "include_failed_login_activity exclude_failed_login_activity" must be set @@ -67,13 +72,25 @@ resource "volterra_app_setting" "example" { include_forbidden_activity { forbidden_requests_threshold = "10" } + // One of the arguments from this list "include_ip_reputation exclude_ip_reputation" must be set + include_ip_reputation = true - // One of the arguments from this list "exclude_non_existent_url_activity include_non_existent_url_activity_custom include_non_existent_url_activity_automatic" must be set - exclude_non_existent_url_activity = true + + // One of the arguments from this list "exclude_non_existent_url_activity include_non_existent_url_activity_custom include_non_existent_url_activity_automatic" can be set + + include_non_existent_url_activity_automatic { + // One of the arguments from this list "low medium high" must be set + + low = true + } + // One of the arguments from this list "include_rate_limit exclude_rate_limit" must be set + include_rate_limit = true + // One of the arguments from this list "include_waf_activity exclude_waf_activity" must be set + include_waf_activity = true } } @@ -159,7 +176,7 @@ Detect Enumeration attack automatically.. Detect Enumeration attack using user defined threshold.. -###### One of the arguments from this list "threshold_level_1, threshold_level_2, threshold_level_3, threshold_level_4, threshold_level_5, threshold_level_6" must be set +###### One of the arguments from this list "threshold_level_3, threshold_level_4, threshold_level_5, threshold_level_6, threshold_level_1, threshold_level_2" must be set `threshold_level_1` - (Optional) Detected in range: 10 - 150 (`Bool`). @@ -245,7 +262,7 @@ Enable AI based malicious user detection. `exclude_bola_detection` - (Optional) Disable Enumeration attack detection (`Bool`).(Deprecated) -###### One of the arguments from this list "include_bot_defense_activity, exclude_bot_defense_activity" must be set +###### One of the arguments from this list "exclude_bot_defense_activity, include_bot_defense_activity" must be set `exclude_bot_defense_activity` - (Optional) Exclude Bot Defense activity in malicious user detection (`Bool`). @@ -267,13 +284,13 @@ Enable AI based malicious user detection. `include_forbidden_activity` - (Optional) Include forbidden activity by policy in malicious user detection. See [Forbidden Activity Choice Include Forbidden Activity ](#forbidden-activity-choice-include-forbidden-activity) below for details. -###### One of the arguments from this list "exclude_ip_reputation, include_ip_reputation" must be set +###### One of the arguments from this list "include_ip_reputation, exclude_ip_reputation" must be set `exclude_ip_reputation` - (Optional) Exclude IP Reputation in malicious user detection (`Bool`). `include_ip_reputation` - (Optional) Include IP Reputation in malicious user detection (`Bool`). -###### One of the arguments from this list "include_non_existent_url_activity_automatic, exclude_non_existent_url_activity, include_non_existent_url_activity_custom" can be set +###### One of the arguments from this list "exclude_non_existent_url_activity, include_non_existent_url_activity_custom, include_non_existent_url_activity_automatic" can be set `exclude_non_existent_url_activity` - (Optional) Exclude Non-Existent URL activity in malicious user detection (`Bool`).(Deprecated) diff --git a/docs/resources/volterra_app_type.md b/docs/resources/volterra_app_type.md index 2533cdf13..60c8c923f 100644 --- a/docs/resources/volterra_app_type.md +++ b/docs/resources/volterra_app_type.md @@ -118,7 +118,7 @@ The custom data detection config specifies targets, scopes & the pattern to be d `custom_sections` - (Optional) x-displayName: "Custom Sections". See [Section Choice Custom Sections ](#section-choice-custom-sections) below for details. -###### One of the arguments from this list "any_target, api_endpoint_target, base_path, api_group" must be set +###### One of the arguments from this list "api_group, any_target, api_endpoint_target, base_path" must be set `any_target` - (Optional) The rule will be applied for all requests on this LB. (`Bool`). @@ -152,7 +152,7 @@ Pattern for key/field.. Pattern for value.. -###### One of the arguments from this list "exact_value, regex_value" must be set +###### One of the arguments from this list "regex_value, exact_value" must be set `exact_value` - (Optional) Pattern value to be detected. (`String`). diff --git a/docs/resources/volterra_aws_tgw_site.md b/docs/resources/volterra_aws_tgw_site.md index 1099ddcb8..ce9d564ef 100644 --- a/docs/resources/volterra_aws_tgw_site.md +++ b/docs/resources/volterra_aws_tgw_site.md @@ -29,12 +29,11 @@ resource "volterra_aws_tgw_site" "example" { aws_az_name = "us-west-2a" // One of the arguments from this list "reserved_inside_subnet inside_subnet" must be set - reserved_inside_subnet = true + reserved_inside_subnet = true disk_size = "80" - outside_subnet { - // One of the arguments from this list "existing_subnet_id subnet_param" must be set + // One of the arguments from this list "subnet_param existing_subnet_id" must be set subnet_param { ipv4 = "10.1.2.0/24" @@ -42,7 +41,6 @@ resource "volterra_aws_tgw_site" "example" { ipv6 = "1234:568:abcd:9100::/64" } } - workload_subnet { // One of the arguments from this list "subnet_param existing_subnet_id" must be set @@ -63,31 +61,72 @@ resource "volterra_aws_tgw_site" "example" { } disk_size = "80" instance_type = "a1.xlarge" - // One of the arguments from this list "enable_internet_vip disable_internet_vip" must be set + + // One of the arguments from this list "disable_internet_vip enable_internet_vip" must be set + disable_internet_vip = true + // One of the arguments from this list "f5xc_security_group custom_security_group" must be set + f5xc_security_group = true + // One of the arguments from this list "new_vpc vpc_id" must be set - vpc_id = "vpc-12345678901234567" + + new_vpc { + allocate_ipv6 = true + + // One of the arguments from this list "name_tag autogenerate" must be set + + name_tag = "name_tag" + primary_ipv4 = "10.1.0.0/16" + } ssh_key = "ssh-rsa AAAAB..." - // One of the arguments from this list "new_tgw existing_tgw" must be set + // One of the arguments from this list "existing_tgw new_tgw" must be set new_tgw { // One of the arguments from this list "system_generated user_assigned" must be set + system_generated = true } - // One of the arguments from this list "nodes_per_az total_nodes no_worker_nodes" must be set - nodes_per_az = "2" + + // One of the arguments from this list "total_nodes no_worker_nodes nodes_per_az" must be set + + total_nodes = "1" } - // One of the arguments from this list "default_blocked_services block_all_services blocked_services" must be set - default_blocked_services = true + // One of the arguments from this list "block_all_services blocked_services default_blocked_services" must be set + + block_all_services = true + + // One of the arguments from this list "direct_connect_disabled direct_connect_enabled private_connectivity" must be set + + direct_connect_enabled { + // One of the arguments from this list "auto_asn custom_asn" must be set + + auto_asn = true - // One of the arguments from this list "direct_connect_enabled private_connectivity direct_connect_disabled" must be set - direct_connect_disabled = true + // One of the arguments from this list "standard_vifs manual_gw hosted_vifs" must be set + + hosted_vifs { + // One of the arguments from this list "site_registration_over_internet site_registration_over_direct_connect" can be set + + site_registration_over_internet = true + + vif_list { + vif_id = "dxvif-fgwtckim" + + // One of the arguments from this list "same_as_site_region other_region" must be set + + other_region = "other_region" + } + + vifs = ["value"] + } + } // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set + logs_streaming_disabled = true } @@ -118,7 +157,7 @@ Argument Reference `blocked_services` - (Optional) Use custom blocked services configuration, to list the services which need to be blocked. See [Blocked Services Choice Blocked Services ](#blocked-services-choice-blocked-services) below for details. -`default_blocked_services` - (Optional) Allow access to DNS, SSH & WebUI services on Site (`Bool`). +`default_blocked_services` - (Optional) Allow access to DNS, SSH services on Site (`Bool`). `coordinates` - (Optional) Site longitude and latitude co-ordinates. See [Coordinates ](#coordinates) below for details. @@ -130,6 +169,8 @@ Argument Reference `private_connectivity` - (Optional) Enable Private Connectivity to Site via CloudLink. See [Direct Connect Choice Private Connectivity ](#direct-connect-choice-private-connectivity) below for details. +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `log_receiver` - (Optional) Select log receiver for logs streaming. See [ref](#ref) below for details. `logs_streaming_disabled` - (Optional) Logs Streaming is disabled (`Bool`). @@ -170,7 +211,7 @@ Example of the managed AWS resources to name few are VPC, TGW, Route Tables etc. `instance_type` - (Required) Instance size based on the performance. (`String`). -###### One of the arguments from this list "disable_internet_vip, enable_internet_vip" must be set +###### One of the arguments from this list "enable_internet_vip, disable_internet_vip" must be set `disable_internet_vip` - (Optional) VIPs cannot be advertised to the internet directly on this Site (`Bool`). @@ -224,6 +265,16 @@ custom dns configure to the CE site. `outside_nameserver_v6` - (Optional) Optional DNS server IPv6 to be used for name resolution in outside network (`String`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "enable_upgrade_drain, disable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Offline Survivability Mode Enable/Disable offline survivability mode. @@ -258,7 +309,7 @@ Performance Enhancement Mode to optimize for L3 or L7 networking. F5XC Software Details. -###### One of the arguments from this list "volterra_software_version, default_sw_version" must be set +###### One of the arguments from this list "default_sw_version, volterra_software_version" must be set `default_sw_version` - (Optional) Will assign latest available SW version (`Bool`). @@ -268,7 +319,7 @@ F5XC Software Details. Security Configuration for transit gateway. -###### One of the arguments from this list "east_west_service_policy_allow_all, no_east_west_policy, active_east_west_service_policies" must be set +###### One of the arguments from this list "no_east_west_policy, active_east_west_service_policies, east_west_service_policy_allow_all" must be set `active_east_west_service_policies` - (Optional) Enable service policy so east-west traffic goes via proxy. See [East West Service Policy Choice Active East West Service Policies ](#east-west-service-policy-choice-active-east-west-service-policies) below for details. @@ -276,7 +327,7 @@ Security Configuration for transit gateway. `no_east_west_policy` - (Optional) Disable service policy so that east-west traffic does not go via proxy (`Bool`). -###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set +###### One of the arguments from this list "active_forward_proxy_policies, forward_proxy_allow_all, no_forward_proxy" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -314,7 +365,7 @@ Site Network related details will be configured. `no_global_network` - (Optional) No global network to connect (`Bool`). -###### One of the arguments from this list "no_inside_static_routes, inside_static_routes" must be set +###### One of the arguments from this list "inside_static_routes, no_inside_static_routes" must be set `inside_static_routes` - (Optional) Manage static routes for inside network.. See [Inside Static Route Choice Inside Static Routes ](#inside-static-route-choice-inside-static-routes) below for details. @@ -326,7 +377,7 @@ Site Network related details will be configured. `outside_static_routes` - (Optional) Manage static routes for outside network.. See [Outside Static Route Choice Outside Static Routes ](#outside-static-route-choice-outside-static-routes) below for details. -###### One of the arguments from this list "sm_connection_public_ip, sm_connection_pvt_ip" must be set +###### One of the arguments from this list "sm_connection_pvt_ip, sm_connection_public_ip" must be set `sm_connection_public_ip` - (Optional) creating ipsec between two sites which are part of the site mesh group (`Bool`). @@ -428,7 +479,7 @@ Matches the web user interface port. Select Existing Subnet or Create New. -###### One of the arguments from this list "existing_subnet_id, subnet_param" must be set +###### One of the arguments from this list "subnet_param, existing_subnet_id" must be set `existing_subnet_id` - (Optional) Information about existing subnet ID (`String`). @@ -488,7 +539,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -512,7 +563,7 @@ Nexthop for the route. List of route prefixes. -###### One of the arguments from this list "ipv4, ipv6" must be set +###### One of the arguments from this list "ipv6, ipv4" must be set `ipv4` - (Optional) IPv4 Subnet Address. See [Ver Ipv4 ](#ver-ipv4) below for details. @@ -550,7 +601,7 @@ Enable Private Connectivity to Site via CloudLink. `cloud_link` - (Required) Reference to Cloud Link. See [ref](#ref) below for details. -###### One of the arguments from this list "inside, outside" can be set +###### One of the arguments from this list "outside, inside" can be set `inside` - (Optional) CloudLink will be associated, and routes will be propagated with the Site Local Inside Network of this Site (`Bool`). @@ -646,7 +697,7 @@ List of Hosted VIF Config. `vif_id` - (Required) AWS Direct Connect VIF ID that needs to be connected to the site (`String`). -###### One of the arguments from this list "other_region, same_as_site_region" must be set +###### One of the arguments from this list "same_as_site_region, other_region" must be set `other_region` - (Optional) Other Region (`String`). @@ -686,7 +737,7 @@ Policy to enable/disable specific domains, with implicit enable all domains. Domain value or regular expression to match. -###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set +###### One of the arguments from this list "suffix_value, regex_value, exact_value" must be set `exact_value` - (Optional) Exact domain name. (`String`). @@ -702,6 +753,28 @@ VIPs cannot be advertised to the internet directly on this Site. VIPs can be advertised to the internet directly on this Site. +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_count, drain_max_unavailable_node_percentage" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "disable_vega_upgrade_mode, enable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Name Choice Autogenerate Autogenerate the VPC Name. @@ -798,7 +871,7 @@ L3 performance mode enhancement without jumbo frame. When the mode is toggled to l3 enhanced, traffic disruption will be seen. -###### One of the arguments from this list "jumbo, no_jumbo" must be set +###### One of the arguments from this list "no_jumbo, jumbo" must be set `jumbo` - (Optional) L3 performance mode enhancement to use jumbo frame (`Bool`). @@ -814,7 +887,7 @@ List of ordered rules to enable or disable for TLS interception. `domain_match` - (Required) Domain value or regular expression to match. See [Interception Rules Domain Match ](#interception-rules-domain-match) below for details. -###### One of the arguments from this list "disable_interception, enable_interception" must be set +###### One of the arguments from this list "enable_interception, disable_interception" must be set `disable_interception` - (Optional) Disable Interception (`Bool`). @@ -990,7 +1063,7 @@ Specify TLS interception configuration for the network connector. `policy` - (Optional) Policy to enable/disable specific domains, with implicit enable all domains. See [Interception Policy Choice Policy ](#interception-policy-choice-policy) below for details. -###### One of the arguments from this list "volterra_certificate, custom_certificate" must be set +###### One of the arguments from this list "custom_certificate, volterra_certificate" must be set `custom_certificate` - (Optional) Certificates for generating intermediate certificate for TLS interception.. See [Signing Cert Choice Custom Certificate ](#signing-cert-choice-custom-certificate) below for details. @@ -1006,6 +1079,14 @@ Specify TLS interception configuration for the network connector. F5XC Root CA Certificate for validating upstream server certificate. +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Ver Ipv4 IPv4 Address. @@ -1064,7 +1145,7 @@ Use same region as that of the Site. Allowed VIP Port Configuration. -###### One of the arguments from this list "use_http_https_port, custom_ports, disable_allowed_vip_port, use_http_port, use_https_port" can be set +###### One of the arguments from this list "use_https_port, use_http_https_port, custom_ports, disable_allowed_vip_port, use_http_port" can be set `custom_ports` - (Optional) Custom list of ports to be allowed. See [Port Choice Custom Ports ](#port-choice-custom-ports) below for details. @@ -1080,7 +1161,7 @@ Allowed VIP Port Configuration. Allowed VIP Port Configuration for Inside Network. -###### One of the arguments from this list "disable_allowed_vip_port, use_http_port, use_https_port, use_http_https_port, custom_ports" can be set +###### One of the arguments from this list "use_http_https_port, custom_ports, disable_allowed_vip_port, use_http_port, use_https_port" can be set `custom_ports` - (Optional) Custom list of ports to be allowed. See [Port Choice Custom Ports ](#port-choice-custom-ports) below for details. diff --git a/docs/resources/volterra_aws_vpc_site.md b/docs/resources/volterra_aws_vpc_site.md index e5f626ba2..4f5d147f5 100644 --- a/docs/resources/volterra_aws_vpc_site.md +++ b/docs/resources/volterra_aws_vpc_site.md @@ -21,8 +21,17 @@ resource "volterra_aws_vpc_site" "example" { namespace = "staging" aws_region = ["us-east-1"] - // One of the arguments from this list "block_all_services blocked_services default_blocked_services" must be set - default_blocked_services = true + // One of the arguments from this list "default_blocked_services block_all_services blocked_services" must be set + + blocked_services { + blocked_sevice { + // One of the arguments from this list "web_user_interface dns ssh" can be set + + web_user_interface = true + + network_type = "network_type" + } + } // One of the arguments from this list "aws_cred" must be set @@ -31,29 +40,67 @@ resource "volterra_aws_vpc_site" "example" { namespace = "staging" tenant = "acmecorp" } + // One of the arguments from this list "private_connectivity direct_connect_disabled direct_connect_enabled" must be set - direct_connect_disabled = true - // One of the arguments from this list "egress_gateway_default egress_nat_gw egress_virtual_private_gateway" must be set + direct_connect_enabled { + // One of the arguments from this list "auto_asn custom_asn" must be set + + auto_asn = true - egress_virtual_private_gateway { - // One of the arguments from this list "vgw_id" must be set - vgw_id = "vgw_id" + // One of the arguments from this list "hosted_vifs standard_vifs manual_gw" must be set + + hosted_vifs { + // One of the arguments from this list "site_registration_over_internet site_registration_over_direct_connect" can be set + + site_registration_over_internet = true + + vif_list { + vif_id = "dxvif-fgwtckim" + + // One of the arguments from this list "same_as_site_region other_region" must be set + + same_as_site_region = true + } + + vifs = ["value"] + } } - instance_type = ["a1.xlarge"] + + // One of the arguments from this list "egress_gateway_default egress_nat_gw egress_virtual_private_gateway" must be set + + egress_gateway_default = true + instance_type = ["a1.xlarge"] + // One of the arguments from this list "disable_internet_vip enable_internet_vip" must be set + disable_internet_vip = true + // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set - logs_streaming_disabled = true + + log_receiver { + name = "test1" + namespace = "staging" + tenant = "acmecorp" + } + // One of the arguments from this list "f5xc_security_group custom_security_group" must be set - f5xc_security_group = true + + custom_security_group { + inside_security_group_id = "sg-0db952838ba829943" + + outside_security_group_id = "sg-0db952838ba829943" + } // One of the arguments from this list "ingress_gw ingress_egress_gw voltstack_cluster" must be set ingress_gw { allowed_vip_port { - // One of the arguments from this list "use_http_https_port custom_ports disable_allowed_vip_port use_http_port use_https_port" must be set - use_http_port = true + // One of the arguments from this list "use_http_port use_https_port use_http_https_port custom_ports disable_allowed_vip_port" can be set + + custom_ports { + port_ranges = "80, 8080-8085" + } } aws_certified_hw = "aws-byol-voltmesh" @@ -64,7 +111,7 @@ resource "volterra_aws_vpc_site" "example" { disk_size = "80" local_subnet { - // One of the arguments from this list "subnet_param existing_subnet_id" must be set + // One of the arguments from this list "existing_subnet_id subnet_param" must be set subnet_param { ipv4 = "10.1.2.0/24" @@ -76,12 +123,15 @@ resource "volterra_aws_vpc_site" "example" { performance_enhancement_mode { // One of the arguments from this list "perf_mode_l3_enhanced perf_mode_l7_enhanced" must be set + perf_mode_l7_enhanced = true } } ssh_key = ["ssh-rsa AAAAB..."] - // One of the arguments from this list "nodes_per_az total_nodes no_worker_nodes" must be set - nodes_per_az = "2" + + // One of the arguments from this list "no_worker_nodes nodes_per_az total_nodes" must be set + + no_worker_nodes = true } ``` @@ -113,7 +163,7 @@ Argument Reference `blocked_services` - (Optional) Use custom blocked services configuration. See [Blocked Services Choice Blocked Services ](#blocked-services-choice-blocked-services) below for details. -`default_blocked_services` - (Optional) Allow access to DNS, SSH & WebUI services on Site (`Bool`). +`default_blocked_services` - (Optional) Allow access to DNS, SSH services on Site (`Bool`). `coordinates` - (Optional) Site longitude and latitude co-ordinates. See [Coordinates ](#coordinates) below for details. @@ -141,6 +191,8 @@ Argument Reference `enable_internet_vip` - (Optional) VIPs can be advertised to the internet directly on this Site (`Bool`). +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `log_receiver` - (Optional) Select log receiver for logs streaming. See [ref](#ref) below for details. `logs_streaming_disabled` - (Optional) Logs Streaming is disabled (`Bool`). @@ -193,6 +245,16 @@ custom dns configure to the CE site. `outside_nameserver_v6` - (Optional) Optional DNS server IPv6 to be used for name resolution in outside network (`String`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "disable_upgrade_drain, enable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Offline Survivability Mode Enable/Disable offline survivability mode. @@ -207,7 +269,7 @@ Enable/Disable offline survivability mode. Operating System Details. -###### One of the arguments from this list "operating_system_version, default_os_version" must be set +###### One of the arguments from this list "default_os_version, operating_system_version" must be set `default_os_version` - (Optional) Will assign latest available OS version (`Bool`). @@ -217,7 +279,7 @@ Operating System Details. F5XC Software Details. -###### One of the arguments from this list "default_sw_version, volterra_software_version" must be set +###### One of the arguments from this list "volterra_software_version, default_sw_version" must be set `default_sw_version` - (Optional) Will assign latest available SW version (`Bool`). @@ -521,7 +583,7 @@ Global network connections. `slo_to_global_dr` - (Optional) Site local outside is connected directly to a given global network. See [Connection Choice Slo To Global Dr ](#connection-choice-slo-to-global-dr) below for details. -###### One of the arguments from this list "enable_forward_proxy, disable_forward_proxy" can be set +###### One of the arguments from this list "disable_forward_proxy, enable_forward_proxy" can be set `disable_forward_proxy` - (Optional) Forward Proxy is disabled for this connector (`Bool`).(Deprecated) @@ -543,7 +605,7 @@ List of Hosted VIF Config. Allowed VIP Port Configuration for Outside Network. -###### One of the arguments from this list "use_http_https_port, custom_ports, disable_allowed_vip_port, use_http_port, use_https_port" can be set +###### One of the arguments from this list "custom_ports, disable_allowed_vip_port, use_http_port, use_https_port, use_http_https_port" can be set `custom_ports` - (Optional) Custom list of ports to be allowed. See [Port Choice Custom Ports ](#port-choice-custom-ports) below for details. @@ -593,7 +655,7 @@ Only Single AZ or Three AZ(s) nodes are supported currently.. Performance Enhancement Mode to optimize for L3 or L7 networking. -###### One of the arguments from this list "perf_mode_l3_enhanced, perf_mode_l7_enhanced" must be set +###### One of the arguments from this list "perf_mode_l7_enhanced, perf_mode_l3_enhanced" must be set `perf_mode_l3_enhanced` - (Optional) When the mode is toggled to l3 enhanced, traffic disruption will be seen. See [Perf Mode Choice Perf Mode L3 Enhanced ](#perf-mode-choice-perf-mode-l3-enhanced) below for details. @@ -603,7 +665,7 @@ Performance Enhancement Mode to optimize for L3 or L7 networking. Allowed VIP Port Configuration. -###### One of the arguments from this list "disable_allowed_vip_port, use_http_port, use_https_port, use_http_https_port, custom_ports" can be set +###### One of the arguments from this list "use_https_port, use_http_https_port, custom_ports, disable_allowed_vip_port, use_http_port" can be set `custom_ports` - (Optional) Custom list of ports to be allowed. See [Port Choice Custom Ports ](#port-choice-custom-ports) below for details. @@ -681,6 +743,28 @@ Domain value or regular expression to match. Site Local K8s API access is disabled. +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_percentage, drain_max_unavailable_node_count" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "disable_vega_upgrade_mode, enable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Name Choice Autogenerate Autogenerate the VPC Name. @@ -895,7 +979,7 @@ Certificates for generating intermediate certificate for TLS interception.. `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set +###### One of the arguments from this list "disable_ocsp_stapling, custom_hash_algorithms, use_system_defaults" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -957,7 +1041,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `no_inside_static_routes` - (Optional) Static Routes disabled for inside network. (`Bool`). -###### One of the arguments from this list "no_network_policy, active_network_policies, active_enhanced_firewall_policies" must be set +###### One of the arguments from this list "active_network_policies, active_enhanced_firewall_policies, no_network_policy" must be set `active_enhanced_firewall_policies` - (Optional) with an additional option for service insertion.. See [Network Policy Choice Active Enhanced Firewall Policies ](#network-policy-choice-active-enhanced-firewall-policies) below for details. @@ -1007,7 +1091,7 @@ App Stack Cluster using single interface, useful for deploying K8s cluster.. `no_dc_cluster_group` - (Optional) This site is not a member of dc cluster group (`Bool`). -###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set +###### One of the arguments from this list "active_forward_proxy_policies, forward_proxy_allow_all, no_forward_proxy" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -1027,7 +1111,7 @@ App Stack Cluster using single interface, useful for deploying K8s cluster.. `no_k8s_cluster` - (Optional) Site Local K8s API access is disabled (`Bool`). -###### One of the arguments from this list "active_enhanced_firewall_policies, no_network_policy, active_network_policies" must be set +###### One of the arguments from this list "no_network_policy, active_network_policies, active_enhanced_firewall_policies" must be set `active_enhanced_firewall_policies` - (Optional) with an additional option for service insertion.. See [Network Policy Choice Active Enhanced Firewall Policies ](#network-policy-choice-active-enhanced-firewall-policies) below for details. @@ -1079,7 +1163,7 @@ No TLS interception is enabled for this network connector. Specify TLS interception configuration for the network connector. -###### One of the arguments from this list "policy, enable_for_all_domains" must be set +###### One of the arguments from this list "enable_for_all_domains, policy" must be set `enable_for_all_domains` - (Optional) Enable interception for all domains (`Bool`). @@ -1101,6 +1185,14 @@ Specify TLS interception configuration for the network connector. F5XC Root CA Certificate for validating upstream server certificate. +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Ver Ipv4 IPv4 Address. diff --git a/docs/resources/volterra_azure_vnet_site.md b/docs/resources/volterra_azure_vnet_site.md index bce04e6ae..f54d910a8 100644 --- a/docs/resources/volterra_azure_vnet_site.md +++ b/docs/resources/volterra_azure_vnet_site.md @@ -21,6 +21,7 @@ resource "volterra_azure_vnet_site" "example" { namespace = "staging" // One of the arguments from this list "default_blocked_services block_all_services blocked_services" must be set + default_blocked_services = true // One of the arguments from this list "azure_cred" must be set @@ -30,25 +31,30 @@ resource "volterra_azure_vnet_site" "example" { namespace = "staging" tenant = "acmecorp" } + // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set + logs_streaming_disabled = true machine_type = ["Standard_D3_v2"] - // One of the arguments from this list "alternate_region azure_region" must be set - alternate_region = "northcentralus" + + // One of the arguments from this list "azure_region alternate_region" must be set + + azure_region = "eastus" resource_group = ["my-resources"] // One of the arguments from this list "ingress_gw ingress_egress_gw voltstack_cluster ingress_gw_ar ingress_egress_gw_ar voltstack_cluster_ar" must be set - ingress_gw_ar { + voltstack_cluster { accelerated_networking { // One of the arguments from this list "disable enable" must be set + disable = true } - azure_certified_hw = "azure-byol-voltmesh" + az_nodes { + azure_az = "1" - node { - fault_domain = "1" + disk_size = "80" local_subnet { // One of the arguments from this list "subnet_param subnet" must be set @@ -59,16 +65,45 @@ resource "volterra_azure_vnet_site" "example" { ipv6 = "1234:568:abcd:9100::/64" } } + } - node_number = "1" + azure_certified_hw = "azure-byol-voltstack-combo" - update_domain = "1" - } + // One of the arguments from this list "no_dc_cluster_group dc_cluster_group" must be set - performance_enhancement_mode { - // One of the arguments from this list "perf_mode_l7_enhanced perf_mode_l3_enhanced" must be set - perf_mode_l7_enhanced = true + dc_cluster_group { + name = "test1" + namespace = "staging" + tenant = "acmecorp" } + + // One of the arguments from this list "active_forward_proxy_policies forward_proxy_allow_all no_forward_proxy" must be set + + no_forward_proxy = true + + // One of the arguments from this list "no_global_network global_network_list" must be set + + no_global_network = true + + // One of the arguments from this list "no_k8s_cluster k8s_cluster" must be set + + no_k8s_cluster = true + + // One of the arguments from this list "active_network_policies active_enhanced_firewall_policies no_network_policy" must be set + + no_network_policy = true + + // One of the arguments from this list "no_outside_static_routes outside_static_routes" must be set + + no_outside_static_routes = true + + // One of the arguments from this list "sm_connection_public_ip sm_connection_pvt_ip" must be set + + sm_connection_public_ip = true + + // One of the arguments from this list "default_storage storage_class_list" must be set + + default_storage = true } ssh_key = ["ssh-rsa AAAAB..."] vnet { @@ -76,13 +111,16 @@ resource "volterra_azure_vnet_site" "example" { new_vnet { // One of the arguments from this list "name autogenerate" must be set + name = "name" primary_ipv4 = "10.1.0.0/16" } } + // One of the arguments from this list "nodes_per_az total_nodes no_worker_nodes" must be set - no_worker_nodes = true + + nodes_per_az = "2" } ``` @@ -112,7 +150,7 @@ Argument Reference `blocked_services` - (Optional) Use custom blocked services configuration. See [Blocked Services Choice Blocked Services ](#blocked-services-choice-blocked-services) below for details. -`default_blocked_services` - (Optional) Allow access to DNS, SSH & WebUI services on Site (`Bool`). +`default_blocked_services` - (Optional) Allow access to DNS, SSH services on Site (`Bool`). `coordinates` - (Optional) Site longitude and latitude co-ordinates. See [Coordinates ](#coordinates) below for details. @@ -122,6 +160,8 @@ Argument Reference `disk_size` - (Optional) Disk size to be used for this instance in GiB. 80 is 80 GiB (`Int`). +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `log_receiver` - (Optional) Select log receiver for logs streaming. See [ref](#ref) below for details. `logs_streaming_disabled` - (Optional) Logs Streaming is disabled (`Bool`). @@ -184,6 +224,16 @@ custom dns configure to the CE site. `outside_nameserver_v6` - (Optional) Optional DNS server IPv6 to be used for name resolution in outside network (`String`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "enable_upgrade_drain, disable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Offline Survivability Mode Enable/Disable offline survivability mode. @@ -208,7 +258,7 @@ Operating System Details. F5XC Software Details. -###### One of the arguments from this list "volterra_software_version, default_sw_version" must be set +###### One of the arguments from this list "default_sw_version, volterra_software_version" must be set `default_sw_version` - (Optional) Will assign latest available SW version (`Bool`). @@ -414,7 +464,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -472,7 +522,7 @@ Express Route is enabled on this site. `connections` - (Required) Add the ExpressRoute Circuit Connections to this site. See [Express Route Enabled Connections ](#express-route-enabled-connections) below for details. -###### One of the arguments from this list "site_registration_over_express_route, site_registration_over_internet" can be set +###### One of the arguments from this list "site_registration_over_internet, site_registration_over_express_route" can be set `site_registration_over_express_route` - (Optional) Site Registration and Site to RE tunnels go over the Azure Express Route. See [Connectivity Options Site Registration Over Express Route ](#connectivity-options-site-registration-over-express-route) below for details. @@ -554,7 +604,7 @@ Forward Proxy is enabled for this connector. `max_connect_attempts` - (Optional) Specifies the allowed number of retries on connect failure to upstream server. Defaults to 1. (`Int`). -###### One of the arguments from this list "tls_intercept, no_interception" can be set +###### One of the arguments from this list "no_interception, tls_intercept" can be set `no_interception` - (Optional) No TLS interception is enabled for this network connector (`Bool`).(Deprecated) @@ -632,7 +682,7 @@ This VNet is a standalone VNet. disruption will be seen. -###### One of the arguments from this list "disable, enable" must be set +###### One of the arguments from this list "enable, disable" must be set `disable` - (Optional) infrastructure. (`Bool`). @@ -688,7 +738,7 @@ Ingress/Egress Gateway (Two Interface) Node information.. Performance Enhancement Mode to optimize for L3 or L7 networking. -###### One of the arguments from this list "perf_mode_l7_enhanced, perf_mode_l3_enhanced" must be set +###### One of the arguments from this list "perf_mode_l3_enhanced, perf_mode_l7_enhanced" must be set `perf_mode_l3_enhanced` - (Optional) When the mode is toggled to l3 enhanced, traffic disruption will be seen. See [Perf Mode Choice Perf Mode L3 Enhanced ](#perf-mode-choice-perf-mode-l3-enhanced) below for details. @@ -698,7 +748,7 @@ Performance Enhancement Mode to optimize for L3 or L7 networking. disruption will be seen. -###### One of the arguments from this list "enable, disable" must be set +###### One of the arguments from this list "disable, enable" must be set `disable` - (Optional) infrastructure. (`Bool`). @@ -790,7 +840,7 @@ Policy to enable/disable specific domains, with implicit enable all domains. Domain value or regular expression to match. -###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set +###### One of the arguments from this list "regex_value, exact_value, suffix_value" must be set `exact_value` - (Optional) Exact domain name. (`String`). @@ -802,6 +852,28 @@ Domain value or regular expression to match. Site Local K8s API access is disabled. +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_count, drain_max_unavailable_node_percentage" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "disable_vega_upgrade_mode, enable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Name Choice Autogenerate Autogenerate the Vnet Name. @@ -846,7 +918,7 @@ Subnets for the inside interface of the node. Subnets for the site local interface of the node. -###### One of the arguments from this list "subnet_param, subnet" must be set +###### One of the arguments from this list "subnet, subnet_param" must be set `subnet` - (Optional) Information about existing subnet.. See [Choice Subnet ](#choice-subnet) below for details. @@ -896,7 +968,7 @@ Authorization Key created by the circuit owner. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -1038,7 +1110,7 @@ Certificates for generating intermediate certificate for TLS interception.. `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "disable_ocsp_stapling, custom_hash_algorithms, use_system_defaults" can be set +###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -1070,7 +1142,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `azure_certified_hw` - (Required) Name for Azure certified hardware. (`String`). -###### One of the arguments from this list "dc_cluster_group_inside_vn, no_dc_cluster_group, dc_cluster_group_outside_vn" must be set +###### One of the arguments from this list "dc_cluster_group_outside_vn, dc_cluster_group_inside_vn, no_dc_cluster_group" must be set `dc_cluster_group_inside_vn` - (Optional) This site is member of dc cluster group connected via inside network. See [ref](#ref) below for details. @@ -1098,7 +1170,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `not_hub` - (Optional) This VNet is a standalone VNet (`Bool`). -###### One of the arguments from this list "inside_static_routes, no_inside_static_routes" must be set +###### One of the arguments from this list "no_inside_static_routes, inside_static_routes" must be set `inside_static_routes` - (Optional) Manage static routes for inside network.. See [Inside Static Route Choice Inside Static Routes ](#inside-static-route-choice-inside-static-routes) below for details. @@ -1142,7 +1214,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `no_dc_cluster_group` - (Optional) This site is not a member of dc cluster group (`Bool`). -###### One of the arguments from this list "active_forward_proxy_policies, forward_proxy_allow_all, no_forward_proxy" must be set +###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -1162,13 +1234,13 @@ Two interface site is useful when site is used as ingress/egress gateway to the `not_hub` - (Optional) This VNet is a standalone VNet (`Bool`). -###### One of the arguments from this list "inside_static_routes, no_inside_static_routes" must be set +###### One of the arguments from this list "no_inside_static_routes, inside_static_routes" must be set `inside_static_routes` - (Optional) Manage static routes for inside network.. See [Inside Static Route Choice Inside Static Routes ](#inside-static-route-choice-inside-static-routes) below for details. `no_inside_static_routes` - (Optional) Static Routes disabled for inside network. (`Bool`). -###### One of the arguments from this list "active_enhanced_firewall_policies, no_network_policy, active_network_policies" must be set +###### One of the arguments from this list "no_network_policy, active_network_policies, active_enhanced_firewall_policies" must be set `active_enhanced_firewall_policies` - (Optional) with an additional option for service insertion.. See [Network Policy Choice Active Enhanced Firewall Policies ](#network-policy-choice-active-enhanced-firewall-policies) below for details. @@ -1232,7 +1304,7 @@ App Stack Cluster using single interface, useful for deploying K8s cluster.. `no_dc_cluster_group` - (Optional) This site is not a member of dc cluster group (`Bool`). -###### One of the arguments from this list "forward_proxy_allow_all, no_forward_proxy, active_forward_proxy_policies" must be set +###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -1260,7 +1332,7 @@ App Stack Cluster using single interface, useful for deploying K8s cluster.. `no_network_policy` - (Optional) Firewall Policy is disabled for this site. (`Bool`). -###### One of the arguments from this list "outside_static_routes, no_outside_static_routes" must be set +###### One of the arguments from this list "no_outside_static_routes, outside_static_routes" must be set `no_outside_static_routes` - (Optional) Static Routes disabled for outside network. (`Bool`). @@ -1406,7 +1478,7 @@ No TLS interception is enabled for this network connector. Specify TLS interception configuration for the network connector. -###### One of the arguments from this list "enable_for_all_domains, policy" must be set +###### One of the arguments from this list "policy, enable_for_all_domains" must be set `enable_for_all_domains` - (Optional) Enable interception for all domains (`Bool`). @@ -1428,6 +1500,14 @@ Specify TLS interception configuration for the network connector. F5XC Root CA Certificate for validating upstream server certificate. +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Ver Ipv4 IPv4 Address. diff --git a/docs/resources/volterra_bgp.md b/docs/resources/volterra_bgp.md index 0573343ac..6e0f41365 100644 --- a/docs/resources/volterra_bgp.md +++ b/docs/resources/volterra_bgp.md @@ -24,7 +24,7 @@ resource "volterra_bgp" "example" { asn = "64512" bgp_router_id { - // One of the arguments from this list "ipv4 ipv6" must be set + // One of the arguments from this list "ipv4 ipv6" can be set ipv4 { addr = "192.168.1.1" @@ -36,6 +36,7 @@ resource "volterra_bgp" "example" { bgp_router_id_type = "bgp_router_id_type" // One of the arguments from this list "local_address from_site ip_address" must be set + local_address = true } @@ -49,37 +50,43 @@ resource "volterra_bgp" "example" { } // One of the arguments from this list "passive_mode_disabled passive_mode_enabled" must be set - passive_mode_disabled = true + passive_mode_disabled = true target_service = "value" - // One of the arguments from this list "external internal" must be set + // One of the arguments from this list "internal external" must be set external { - // One of the arguments from this list "address subnet_begin_offset subnet_end_offset from_site default_gateway disable" must be set - from_site = true + // One of the arguments from this list "from_site default_gateway disable address subnet_begin_offset subnet_end_offset" must be set + + subnet_begin_offset = "subnet_begin_offset" // One of the arguments from this list "default_gateway_v6 disable_v6 address_ipv6 subnet_begin_offset_v6 subnet_end_offset_v6 from_site_v6" must be set - subnet_end_offset_v6 = "subnet_end_offset_v6" + from_site_v6 = true asn = "64512" - // One of the arguments from this list "md5_auth_key no_authentication" must be set - no_authentication = true + // One of the arguments from this list "no_authentication md5_auth_key" can be set + no_authentication = true family_inet { // One of the arguments from this list "enable disable" must be set + enable = true } - family_inet_v6 { // One of the arguments from this list "enable disable" must be set + enable = true } // One of the arguments from this list "interface interface_list inside_interfaces outside_interfaces" must be set - outside_interfaces = true + interface { + name = "test1" + namespace = "staging" + tenant = "acmecorp" + } port = "179" } } @@ -89,6 +96,7 @@ resource "volterra_bgp" "example" { site { // One of the arguments from this list "disable_internet_vip enable_internet_vip" must be set + disable_internet_vip = true network_type = "network_type" @@ -279,7 +287,7 @@ All interfaces in the site local outside network.. Parameters for IPv6 VPN Unicast family.. -###### One of the arguments from this list "disable, enable" must be set +###### One of the arguments from this list "enable, disable" must be set `disable` - (Optional) Disable the IPv6 Unicast family. (`Bool`).(Deprecated) @@ -379,7 +387,7 @@ Direct reference to site object. Direct reference to virtual site object. -###### One of the arguments from this list "disable_internet_vip, enable_internet_vip" must be set +###### One of the arguments from this list "enable_internet_vip, disable_internet_vip" must be set `disable_internet_vip` - (Optional) Do not enable advertise on external internet vip. (`Bool`). @@ -411,7 +419,7 @@ Enable the IPv4 Unicast family.. External BGP peer.. -###### One of the arguments from this list "default_gateway, disable, address, subnet_begin_offset, subnet_end_offset, from_site" must be set +###### One of the arguments from this list "address, subnet_begin_offset, subnet_end_offset, from_site, default_gateway, disable" must be set `address` - (Optional) Specify IPV4 peer address. (`String`). @@ -467,7 +475,7 @@ External BGP peer.. Internal BGP peer.. -###### One of the arguments from this list "address, from_site, dns_name" must be set +###### One of the arguments from this list "from_site, dns_name, address" must be set `address` - (Optional) Specify peer address. (`String`). diff --git a/docs/resources/volterra_cdn_loadbalancer.md b/docs/resources/volterra_cdn_loadbalancer.md index bd37a9add..747941b11 100644 --- a/docs/resources/volterra_cdn_loadbalancer.md +++ b/docs/resources/volterra_cdn_loadbalancer.md @@ -22,17 +22,14 @@ resource "volterra_cdn_loadbalancer" "example" { domains = ["www.foo.com"] - // One of the arguments from this list "http https_auto_cert https" must be set + // One of the arguments from this list "https_auto_cert https http" must be set - https_auto_cert { - add_hsts = true + http { + dns_volterra_managed = true - http_redirect = true + // One of the arguments from this list "port port_ranges" must be set - tls_config { - // One of the arguments from this list "tls_12_plus tls_11_plus" must be set - tls_12_plus = true - } + port = "80" } origin_pool { follow_origin_redirect = true @@ -48,9 +45,10 @@ resource "volterra_cdn_loadbalancer" "example" { origin_servers { // One of the arguments from this list "public_ip public_name" must be set - public_ip { - // One of the arguments from this list "ip ipv6" must be set - ip = "8.8.8.8" + public_name { + dns_name = "value" + + refresh_interval = "20" } port = "80" @@ -63,6 +61,7 @@ resource "volterra_cdn_loadbalancer" "example" { } // One of the arguments from this list "no_tls use_tls" must be set + no_tls = true } } @@ -130,569 +129,627 @@ x-required. `public_name` - (Required) The DNS name to be used as the host header for the request to the origin server. See [Origin Pool Public Name ](#origin-pool-public-name) below for details. -###### One of the arguments from this list "use_tls, no_tls" must be set +###### One of the arguments from this list "no_tls, use_tls" must be set `no_tls` - (Optional) Origin servers do not use TLS (`Bool`). `use_tls` - (Optional) Origin servers use TLS. See [Tls Choice Use Tls ](#tls-choice-use-tls) below for details. -### Auth Options Custom +### Action Allow -Enable Custom Authenticaiton. +Allow the request to proceed.. -`custom_auth_config` - (Optional) This is custom authentication configuration parameters. Please reach out to the support for custom authentication details. (`String`). +### Action Deny -### Auth Options Disable Auth +Deny the request.. -No Authenticaiton. +### Action Choice Action Block -### Auth Options Jwt +Block the request and issue an API security event. -Enable JWT Authenticaiton. +### Action Choice Action Report -`backup_key` - (Optional) Backup JWT Key - If specified is also checked in addition to the primary secret key. See [Jwt Backup Key ](#jwt-backup-key) below for details. +Continue processing the request and issue an API security event. -`secret_key` - (Required) Secret Key for JWT. See [Jwt Secret Key ](#jwt-secret-key) below for details. +### Action Choice Action Skip -###### One of the arguments from this list "header, cookie, query_param, bearer_token" can be set +Continue processing the request. -`bearer_token` - (Optional) Token is found in the Bearer-Token (`Bool`). +### Action Choice Apply Data Guard -`cookie` - (Optional) Token is found in the cookie. See [Token Source Cookie ](#token-source-cookie) below for details. +x-displayName: "Apply". -`header` - (Optional) Token is found in the header. See [Token Source Header ](#token-source-header) below for details. +### Action Choice Block -`query_param` - (Optional) Token is found in the Query-Param. See [Token Source Query Param ](#token-source-query-param) below for details. +Block the request and report the issue. -### Backup Key Blindfold Secret Info Internal +### Action Choice Bot Skip Processing -Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. +Skip Bot Defense processing for clients matching this rule.. -`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). +### Action Choice Report -`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). +Allow the request and report the issue. -`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +### Action Choice Skip Data Guard -### Cache Actions Cache Bypass +x-displayName: "Skip". -Bypass Caching of content from the origin. +### Action Choice Skip Processing -### Cache Actions Cache Disabled +Skip both WAF and Bot Defense processing for clients matching this rule.. -Disable Caching of content from the origin. +### Action Choice Waf Skip Processing -### Cache Actions Eligible For Cache +Skip WAF processing for clients matching this rule.. -Eligible for caching the content. +### Additional Headers Choice Allow Additional Headers -###### One of the arguments from this list "scheme_hostname_uri, scheme_hostname_request_uri, hostname_uri, scheme_hostname_uri_query, scheme_proxy_host_uri, scheme_proxy_host_request_uri" must be set +Allow extra headers (on top of what specified in the OAS documentation). -`hostname_uri` - (Optional) . See [Eligible For Cache Hostname Uri ](#eligible-for-cache-hostname-uri) below for details.(Deprecated) +### Additional Headers Choice Disallow Additional Headers -`scheme_hostname_request_uri` - (Optional) . See [Eligible For Cache Scheme Hostname Request Uri ](#eligible-for-cache-scheme-hostname-request-uri) below for details.(Deprecated) +Disallow extra headers (on top of what specified in the OAS documentation). -`scheme_hostname_uri` - (Optional) . See [Eligible For Cache Scheme Hostname Uri ](#eligible-for-cache-scheme-hostname-uri) below for details.(Deprecated) +### Additional Parameters Choice Allow Additional Parameters -`scheme_hostname_uri_query` - (Optional) . See [Eligible For Cache Scheme Hostname Uri Query ](#eligible-for-cache-scheme-hostname-uri-query) below for details.(Deprecated) +Allow extra query parameters (on top of what specified in the OAS documentation). -`scheme_proxy_host_request_uri` - (Optional) . See [Eligible For Cache Scheme Proxy Host Request Uri ](#eligible-for-cache-scheme-proxy-host-request-uri) below for details. +### Additional Parameters Choice Disallow Additional Parameters -`scheme_proxy_host_uri` - (Optional) . See [Eligible For Cache Scheme Proxy Host Uri ](#eligible-for-cache-scheme-proxy-host-uri) below for details. +Disallow extra query parameters (on top of what specified in the OAS documentation). -### Cache Actions Eligible For Cache +### Allow Introspection Queries Choice Disable Introspection -Eligible for caching the content. +Disable introspection queries for the load balancer.. -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +### Allow Introspection Queries Choice Enable Introspection -### Cache Headers Operator +Enable introspection queries for the load balancer.. -Available operators. +### Allowed Domains All Load Balancer Domains -###### One of the arguments from this list "DoesNotEndWith, MatchRegex, DoesNotEqual, DoesNotContain, Startswith, Endswith, Equals, Contains, DoesNotStartWith" can be set +Add All load balancer domains to source origin (allow) list.. -`Contains` - (Optional) Field must contain (`String`). +### Allowed Domains Custom Domain List -`DoesNotContain` - (Optional) Field must not contain (`String`). +Add one or more domains to source origin (allow) list.. -`DoesNotEndWith` - (Optional) Field must not end with (`String`). +`domains` - (Required) Wildcard names are supported in the suffix or prefix form. (`String`). -`DoesNotEqual` - (Optional) Field must not equal (`String`). +### Allowed Domains Disabled -`DoesNotStartWith` - (Optional) Field must not start with (`String`). +Allow all source origin domains.. -`Endswith` - (Optional) Field must end with (`String`). +### Api Definition Choice Api Specification -`Equals` - (Optional) Field must exactly match (`String`). +Specify API definition and OpenAPI Validation. -`MatchRegex` - (Optional) Field matches regular expression (`String`). +`api_definition` - (Required) Specify API definition which includes application API paths and methods derived from swagger files.. See [ref](#ref) below for details. -`Startswith` - (Optional) Field must start with (`String`). +###### One of the arguments from this list "validation_disabled, validation_all_spec_endpoints, validation_custom_list" must be set -### Cache Options Cache Rules +`validation_all_spec_endpoints` - (Optional) All other API endpoints would proceed according to "Fall Through Mode". See [Validation Target Choice Validation All Spec Endpoints ](#validation-target-choice-validation-all-spec-endpoints) below for details. -Rules are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs.. +`validation_custom_list` - (Optional) Any other end-points not listed will act according to "Fall Through Mode". See [Validation Target Choice Validation Custom List ](#validation-target-choice-validation-custom-list) below for details. -###### One of the arguments from this list "cache_bypass, eligible_for_cache" must be set +`validation_disabled` - (Optional) Don't run OpenAPI validation (`Bool`). -`cache_bypass` - (Optional) Bypass Caching of content from the origin (`Bool`). +### Api Definition Choice Api Specification On Cache Miss -`eligible_for_cache` - (Optional) Eligible for caching the content. See [Cache Actions Eligible For Cache ](#cache-actions-eligible-for-cache) below for details. +Enable API definition and OpenAPI Validation only on cache miss in this distribution. -`rule_expression_list` - (Required) Expressions are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs... See [Cache Rules Rule Expression List ](#cache-rules-rule-expression-list) below for details. +`api_definition` - (Required) Specify API definition which includes application API paths and methods derived from swagger files.. See [ref](#ref) below for details. -`rule_name` - (Required) Name of the Cache Rule (`String`). +###### One of the arguments from this list "validation_disabled, validation_all_spec_endpoints, validation_custom_list" must be set -### Cache Options Default Cache Action +`validation_all_spec_endpoints` - (Optional) All other API endpoints would proceed according to "Fall Through Mode". See [Validation Target Choice Validation All Spec Endpoints ](#validation-target-choice-validation-all-spec-endpoints) below for details. -Default value for Cache action.. +`validation_custom_list` - (Optional) Any other end-points not listed will act according to "Fall Through Mode". See [Validation Target Choice Validation Custom List ](#validation-target-choice-validation-custom-list) below for details. -###### One of the arguments from this list "eligible_for_cache, cache_ttl_default, cache_ttl_override, cache_disabled" can be set +`validation_disabled` - (Optional) Don't run OpenAPI validation (`Bool`). -`cache_disabled` - (Optional) Disable Caching of content from the origin (`Bool`). +### Api Definition Choice Disable Api Definition -`cache_ttl_default` - (Optional) Cache TTL value to use when the origin does not provide one (`String`). +API Definition is not currently used for this load balancer. -`cache_ttl_override` - (Optional) Override the Cache TTL directive in the response from the origin (`String`). +### Api Discovery Choice Api Discovery On Cache Miss -`eligible_for_cache` - (Optional) Eligible for caching the content. See [Cache Actions Eligible For Cache ](#cache-actions-eligible-for-cache) below for details.(Deprecated) +Enable api discovery only on cache miss in this distribution. -### Cache Rule Expression Cache Headers +`discovered_api_settings` - (Optional) Configure Discovered API Settings.. See [Api Discovery On Cache Miss Discovered Api Settings ](#api-discovery-on-cache-miss-discovered-api-settings) below for details. -Configure cache rule headers to match the criteria. +###### One of the arguments from this list "disable_learn_from_redirect_traffic, enable_learn_from_redirect_traffic" must be set -`name` - (Optional) Name of the header (`String`). +`disable_learn_from_redirect_traffic` - (Optional) Disable learning API patterns from traffic with redirect response codes 3xx (`Bool`). -`operator` - (Optional) Available operators. See [Cache Headers Operator ](#cache-headers-operator) below for details. +`enable_learn_from_redirect_traffic` - (Optional) Enable learning API patterns from traffic with redirect response codes 3xx (`Bool`). -### Cache Rule Expression Cookie Matcher +`sensitive_data_detection_rules` - (Optional) Manage rules to detect sensitive data in requests and/or response sections.. See [Api Discovery On Cache Miss Sensitive Data Detection Rules ](#api-discovery-on-cache-miss-sensitive-data-detection-rules) below for details. -Note that all specified cookie matcher predicates must evaluate to true.. +### Api Discovery Choice Disable Api Discovery -`name` - (Required) A case-sensitive cookie name. (`String`). +Disable api discovery for this distribution. -`operator` - (Optional) . See [Cookie Matcher Operator ](#cookie-matcher-operator) below for details. +### Api Discovery Choice Enable Api Discovery -### Cache Rule Expression Path Match +Enable api discovery for all requests in this distribution. -URI path of route. +`discovered_api_settings` - (Optional) Configure Discovered API Settings.. See [Enable Api Discovery Discovered Api Settings ](#enable-api-discovery-discovered-api-settings) below for details. -`operator` - (Optional) A specification of path match. See [Path Match Operator ](#path-match-operator) below for details. +###### One of the arguments from this list "enable_learn_from_redirect_traffic, disable_learn_from_redirect_traffic" must be set -### Cache Rule Expression Query Parameters +`disable_learn_from_redirect_traffic` - (Optional) Disable learning API patterns from traffic with redirect response codes 3xx (`Bool`). -List of (key, value) query parameters. +`enable_learn_from_redirect_traffic` - (Optional) Enable learning API patterns from traffic with redirect response codes 3xx (`Bool`). -`key` - (Required) In the above example, assignee_username is the key (`String`). +`sensitive_data_detection_rules` - (Optional) Manage rules to detect sensitive data in requests and/or response sections.. See [Enable Api Discovery Sensitive Data Detection Rules ](#enable-api-discovery-sensitive-data-detection-rules) below for details. -`operator` - (Optional) . See [Query Parameters Operator ](#query-parameters-operator) below for details. +### Api Discovery On Cache Miss Discovered Api Settings -### Cache Rules Rule Expression List +Configure Discovered API Settings.. -Expressions are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs... +### Api Discovery On Cache Miss Sensitive Data Detection Rules -`cache_rule_expression` - (Required) The Cache Rule Expression Terms that are ANDed. See [Rule Expression List Cache Rule Expression ](#rule-expression-list-cache-rule-expression) below for details. +Manage rules to detect sensitive data in requests and/or response sections.. -`expression_name` - (Required) Name of the Expressions items that are ANDed (`String`). +### Api Endpoint Rules Action -### Choice Custom Security +The action to take if the input request matches the rule.. -Custom selection of TLS versions and cipher suites. +###### One of the arguments from this list "allow, deny" must be set -`cipher_suites` - (Required) The TLS listener will only support the specified cipher list. (`String`). +`allow` - (Optional) Allow the request to proceed. (`Bool`). -`max_version` - (Optional) Maximum TLS protocol version. (`String`). +`deny` - (Optional) Deny the request. (`Bool`). -`min_version` - (Optional) Minimum TLS protocol version. (`String`). +### Api Endpoint Rules Api Endpoint Method -### Choice Default Security +The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.. -TLS v1.2+ with PFS ciphers and strong crypto algorithms.. +`invert_matcher` - (Optional) Invert the match result. (`Bool`). -### Choice Low Security +`methods` - (Optional) x-example: "['GET', 'POST', 'DELETE']" (`List of Strings`). -TLS v1.0+ including non-PFS ciphers and weak crypto algorithms.. +### Api Endpoint Rules Client Matcher -### Choice Medium Security +Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. -TLS v1.0+ with PFS ciphers and medium strength crypto algorithms.. +###### One of the arguments from this list "ip_threat_category_list, client_selector, any_client" must be set -### Choice Public Ip +`any_client` - (Optional) Any Client (`Bool`). -Specify origin server with public IP. +`client_selector` - (Optional) The predicate evaluates to true if the expressions in the label selector are true for the client labels.. See [Client Choice Client Selector ](#client-choice-client-selector) below for details. -###### One of the arguments from this list "ip, ipv6" must be set +`ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. -`ip` - (Optional) Public IPV4 address (`String`). +###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher, asn_list, asn_matcher" must be set -`ipv6` - (Optional) Public IPV6 address (`String`). +`any_ip` - (Optional) Any Source IP (`Bool`). -### Choice Public Name +`asn_list` - (Optional) The predicate evaluates to true if the origin ASN is present in the ASN list.. See [Ip Asn Choice Asn List ](#ip-asn-choice-asn-list) below for details. -Specify origin server with public DNS name. +`asn_matcher` - (Optional) The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. See [Ip Asn Choice Asn Matcher ](#ip-asn-choice-asn-matcher) below for details. -`dns_name` - (Required) DNS Name (`String`). +`ip_matcher` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.. See [Ip Asn Choice Ip Matcher ](#ip-asn-choice-ip-matcher) below for details. -`refresh_interval` - (Optional) Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 (`Int`). +`ip_prefix_list` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.. See [Ip Asn Choice Ip Prefix List ](#ip-asn-choice-ip-prefix-list) below for details. -### Choice Tls 11 Plus +`tls_fingerprint_matcher` - (Optional) The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.. See [Client Matcher Tls Fingerprint Matcher ](#client-matcher-tls-fingerprint-matcher) below for details. -TLS v1.1+ with PFS ciphers and medium strength crypto algorithms.. +### Api Endpoint Rules Metadata -### Choice Tls 12 Plus +Common attributes for the rule including name and description.. -TLS v1.2+ with PFS ciphers and strong crypto algorithms.. +`description` - (Optional) Human readable description. (`String`). -### Cookie Matcher Operator +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) -. +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). -###### One of the arguments from this list "Equals, Contains, DoesNotStartWith, DoesNotEqual, DoesNotContain, Startswith, Endswith, DoesNotEndWith, MatchRegex" can be set +### Api Endpoint Rules Request Matcher -`Contains` - (Optional) Field must contain (`String`). +Conditions related to the request, such as query parameters, headers, etc.. -`DoesNotContain` - (Optional) Field must not contain (`String`). +`cookie_matchers` - (Optional) Note that all specified cookie matcher predicates must evaluate to true.. See [Request Matcher Cookie Matchers ](#request-matcher-cookie-matchers) below for details. -`DoesNotEndWith` - (Optional) Field must not end with (`String`). +`headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. -`DoesNotEqual` - (Optional) Field must not equal (`String`). +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. -`DoesNotStartWith` - (Optional) Field must not start with (`String`). +`query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. -`Endswith` - (Optional) Field must end with (`String`). +### Api Groups Rules Action -`Equals` - (Optional) Field must exactly match (`String`). +The action to take if the input request matches the rule.. -`MatchRegex` - (Optional) Field matches regular expression (`String`). +###### One of the arguments from this list "allow, deny" must be set -`Startswith` - (Optional) Field must start with (`String`). +`allow` - (Optional) Allow the request to proceed. (`Bool`). -### Eligible For Cache Hostname Uri +`deny` - (Optional) Deny the request. (`Bool`). -. +### Api Groups Rules Client Matcher -`cache_override` - (Optional) Honour Cache Override (`Bool`). +Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +###### One of the arguments from this list "any_client, ip_threat_category_list, client_selector" must be set -`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). +`any_client` - (Optional) Any Client (`Bool`). -### Eligible For Cache Scheme Hostname Request Uri +`client_selector` - (Optional) The predicate evaluates to true if the expressions in the label selector are true for the client labels.. See [Client Choice Client Selector ](#client-choice-client-selector) below for details. -. +`ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. -`cache_override` - (Optional) Honour Cache Override (`Bool`). +###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher, asn_list, asn_matcher" must be set -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +`any_ip` - (Optional) Any Source IP (`Bool`). -`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). +`asn_list` - (Optional) The predicate evaluates to true if the origin ASN is present in the ASN list.. See [Ip Asn Choice Asn List ](#ip-asn-choice-asn-list) below for details. -### Eligible For Cache Scheme Hostname Uri +`asn_matcher` - (Optional) The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. See [Ip Asn Choice Asn Matcher ](#ip-asn-choice-asn-matcher) below for details. -. +`ip_matcher` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.. See [Ip Asn Choice Ip Matcher ](#ip-asn-choice-ip-matcher) below for details. -`cache_override` - (Optional) Honour Cache Override (`Bool`). +`ip_prefix_list` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.. See [Ip Asn Choice Ip Prefix List ](#ip-asn-choice-ip-prefix-list) below for details. -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +`tls_fingerprint_matcher` - (Optional) The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.. See [Client Matcher Tls Fingerprint Matcher ](#client-matcher-tls-fingerprint-matcher) below for details. -`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). +### Api Groups Rules Metadata -### Eligible For Cache Scheme Hostname Uri Query +Common attributes for the rule including name and description.. -. +`description` - (Optional) Human readable description. (`String`). -`cache_override` - (Optional) Honour Cache Override (`Bool`). +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). -`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). +### Api Groups Rules Request Matcher -### Eligible For Cache Scheme Proxy Host Request Uri +Conditions related to the request, such as query parameters, headers, etc.. -. +`cookie_matchers` - (Optional) Note that all specified cookie matcher predicates must evaluate to true.. See [Request Matcher Cookie Matchers ](#request-matcher-cookie-matchers) below for details. -`cache_override` - (Optional) Honour Cache Override (`Bool`). +`headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. -`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). +`query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. -### Eligible For Cache Scheme Proxy Host Uri +### Api Protection Api Protection Rules -. +Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.. -`cache_override` - (Optional) Honour Cache Override (`Bool`). +`api_endpoint_rules` - (Optional) If request matches any of these rules, skipping second category rules.. See [Api Protection Rules Api Endpoint Rules ](#api-protection-rules-api-endpoint-rules) below for details. -`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). +`api_groups_rules` - (Optional) For API groups, refer to API Definition which includes API groups derived from uploaded swaggers.. See [Api Protection Rules Api Groups Rules ](#api-protection-rules-api-groups-rules) below for details. -`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). +### Api Protection Jwt Validation -### Geo Filtering Type Allow List +tokens or tokens that are not yet valid.. -Allow list of countries. +`action` - (Required) x-required. See [Jwt Validation Action ](#jwt-validation-action) below for details. -`country_codes` - (Required) List of Country Codes (`List of Strings`). +###### One of the arguments from this list "auth_server_uri, jwks, jwks_config" must be set -`invert_match` - (Optional) Invert the match result. (`Bool`). +`auth_server_uri` - (Optional) JWKS URI will be will be retrieved from this URI (`String`).(Deprecated) -### Geo Filtering Type Block List +`jwks` - (Optional) The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details. (`String`).(Deprecated) -Block list of countries. +`jwks_config` - (Optional) The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.. See [Jwks Configuration Jwks Config ](#jwks-configuration-jwks-config) below for details. -`country_codes` - (Required) List of Country Codes (`List of Strings`). +`mandatory_claims` - (Optional) If the claim does not exist JWT token validation will fail.. See [Jwt Validation Mandatory Claims ](#jwt-validation-mandatory-claims) below for details. -`invert_match` - (Optional) Invert the match result. (`Bool`). +`reserved_claims` - (Optional) the token validation of these claims should be disabled.. See [Jwt Validation Reserved Claims ](#jwt-validation-reserved-claims) below for details. -### Header Options Request Headers To Add +`target` - (Required) Define endpoints for which JWT token validation will be performed. See [Jwt Validation Target ](#jwt-validation-target) below for details. -Headers specified at this level are applied after headers from matched Route are applied. +`token_location` - (Required) Define where in the HTTP request the JWT token will be extracted. See [Jwt Validation Token Location ](#jwt-validation-token-location) below for details. -`append` - (Optional) Default value is do not append (`Bool`). +### Api Protection Rules Api Endpoint Rules -`name` - (Required) Name of the HTTP header. (`String`). +If request matches any of these rules, skipping second category rules.. -###### One of the arguments from this list "value, secret_value" must be set +`action` - (Required) The action to take if the input request matches the rule.. See [Api Endpoint Rules Action ](#api-endpoint-rules-action) below for details. -`secret_value` - (Optional) Secret Value of the HTTP header.. See [Value Choice Secret Value ](#value-choice-secret-value) below for details. +`api_endpoint_method` - (Optional) The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.. See [Api Endpoint Rules Api Endpoint Method ](#api-endpoint-rules-api-endpoint-method) below for details. -`value` - (Optional) Value of the HTTP header. (`String`). +`api_endpoint_path` - (Required) The endpoint (path) of the request. (`String`). -### Header Options Response Headers To Add +`client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Api Endpoint Rules Client Matcher ](#api-endpoint-rules-client-matcher) below for details. -Headers specified at this level are applied after headers from matched Route are applied. +###### One of the arguments from this list "any_domain, specific_domain" must be set -`append` - (Optional) Default value is do not append (`Bool`). +`any_domain` - (Optional) The rule will apply for all domains. (`Bool`). -`name` - (Required) Name of the HTTP header. (`String`). +`specific_domain` - (Optional) For example: api.example.com (`String`). -###### One of the arguments from this list "value, secret_value" must be set +`metadata` - (Required) Common attributes for the rule including name and description.. See [Api Endpoint Rules Metadata ](#api-endpoint-rules-metadata) below for details. -`secret_value` - (Optional) Secret Value of the HTTP header.. See [Value Choice Secret Value ](#value-choice-secret-value) below for details. +`request_matcher` - (Optional) Conditions related to the request, such as query parameters, headers, etc.. See [Api Endpoint Rules Request Matcher ](#api-endpoint-rules-request-matcher) below for details. -`value` - (Optional) Value of the HTTP header. (`String`). +### Api Protection Rules Api Groups Rules -### Https Tls Parameters +For API groups, refer to API Definition which includes API groups derived from uploaded swaggers.. -TLS parameters for the downstream connections.. +`action` - (Required) The action to take if the input request matches the rule.. See [Api Groups Rules Action ](#api-groups-rules-action) below for details. -`tls_certificates` - (Required) for example, domain.com and *.domain.com - but use different signature algorithms. See [Tls Parameters Tls Certificates ](#tls-parameters-tls-certificates) below for details. +`api_group` - (Optional) Custom groups can be created if user tags paths or operations with "x-volterra-api-group" extensions inside swaggers. (`String`). -`tls_config` - (Optional) TLS Configuration Parameters. See [Tls Parameters Tls Config ](#tls-parameters-tls-config) below for details. +`base_path` - (Required) For example: /v1 (`String`). -### Https Auto Cert Tls Config +`client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Api Groups Rules Client Matcher ](#api-groups-rules-client-matcher) below for details. -TLS Configuration Parameters. +###### One of the arguments from this list "any_domain, specific_domain" must be set -###### One of the arguments from this list "tls_12_plus, tls_11_plus" must be set +`any_domain` - (Optional) The rule will apply for all domains. (`Bool`). -`tls_11_plus` - (Optional) TLS v1.1+ with PFS ciphers and medium strength crypto algorithms. (`Bool`). +`specific_domain` - (Optional) For example: api.example.com (`String`). -`tls_12_plus` - (Optional) TLS v1.2+ with PFS ciphers and strong crypto algorithms. (`Bool`). +`metadata` - (Required) Common attributes for the rule including name and description.. See [Api Groups Rules Metadata ](#api-groups-rules-metadata) below for details. -### Ip Filtering Type Allow List +`request_matcher` - (Optional) Conditions related to the request, such as query parameters, headers, etc.. See [Api Groups Rules Request Matcher ](#api-groups-rules-request-matcher) below for details. -Allow list of ip prefixes. +### Api Rate Limit Api Endpoint Rules -`invert_match` - (Optional) Invert the match result. (`Bool`). +For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.. -`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). +`api_endpoint_method` - (Optional) The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.. See [Api Endpoint Rules Api Endpoint Method ](#api-endpoint-rules-api-endpoint-method) below for details. -### Ip Filtering Type Block List +`api_endpoint_path` - (Required) The endpoint (path) of the request. (`String`). -Block list of ip prefixes. +`base_path` - (Optional) The request base path. (`String`).(Deprecated) -`invert_match` - (Optional) Invert the match result. (`Bool`). +`client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Api Endpoint Rules Client Matcher ](#api-endpoint-rules-client-matcher) below for details. -`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). +###### One of the arguments from this list "any_domain, specific_domain" must be set -### Jwt Backup Key +`any_domain` - (Optional) The rule will apply for all domains. (`Bool`). -Backup JWT Key - If specified is also checked in addition to the primary secret key. +`specific_domain` - (Optional) The rule will apply for a specific domain. (`String`). -`blindfold_secret_info_internal` - (Optional) Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. See [Backup Key Blindfold Secret Info Internal ](#backup-key-blindfold-secret-info-internal) below for details.(Deprecated) +###### One of the arguments from this list "inline_rate_limiter, ref_rate_limiter" must be set -`secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) +`inline_rate_limiter` - (Optional) Specify rate values for the rule.. See [Rate Limiter Choice Inline Rate Limiter ](#rate-limiter-choice-inline-rate-limiter) below for details. -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +`ref_rate_limiter` - (Optional) Select external rate limiter.. See [ref](#ref) below for details. -`blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. +`request_matcher` - (Optional) Conditions related to the request, such as query parameters, headers, etc.. See [Api Endpoint Rules Request Matcher ](#api-endpoint-rules-request-matcher) below for details. -`clear_secret_info` - (Optional) Clear Secret is used for the secrets that are not encrypted. See [Secret Info Oneof Clear Secret Info ](#secret-info-oneof-clear-secret-info) below for details. +### Api Rate Limit Server Url Rules -`vault_secret_info` - (Optional) Vault Secret is used for the secrets managed by Hashicorp Vault. See [Secret Info Oneof Vault Secret Info ](#secret-info-oneof-vault-secret-info) below for details.(Deprecated) +For matching also specific endpoints you can use the API endpoint rules set bellow.. -`wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) +`api_group` - (Optional) Custom groups can be created if user tags paths or operations with "x-volterra-api-group" extensions inside swaggers. (`String`). -### Jwt Secret Key +`base_path` - (Required) Prefix of the request path. (`String`). -Secret Key for JWT. +`client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Server Url Rules Client Matcher ](#server-url-rules-client-matcher) below for details. -`blindfold_secret_info_internal` - (Optional) Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. See [Secret Key Blindfold Secret Info Internal ](#secret-key-blindfold-secret-info-internal) below for details.(Deprecated) +###### One of the arguments from this list "any_domain, specific_domain" must be set -`secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) +`any_domain` - (Optional) The rule will apply for all domains. (`Bool`). -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +`specific_domain` - (Optional) The rule will apply for a specific domain. (`String`). -`blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. +###### One of the arguments from this list "inline_rate_limiter, ref_rate_limiter" must be set -`clear_secret_info` - (Optional) Clear Secret is used for the secrets that are not encrypted. See [Secret Info Oneof Clear Secret Info ](#secret-info-oneof-clear-secret-info) below for details. +`inline_rate_limiter` - (Optional) Specify rate values for the rule.. See [Rate Limiter Choice Inline Rate Limiter ](#rate-limiter-choice-inline-rate-limiter) below for details. -`vault_secret_info` - (Optional) Vault Secret is used for the secrets managed by Hashicorp Vault. See [Secret Info Oneof Vault Secret Info ](#secret-info-oneof-vault-secret-info) below for details.(Deprecated) +`ref_rate_limiter` - (Optional) Use external rate limiter.. See [ref](#ref) below for details. -`wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) +`request_matcher` - (Optional) Conditions related to the request, such as query parameters, headers, etc.. See [Server Url Rules Request Matcher ](#server-url-rules-request-matcher) below for details. -### Loadbalancer Type Http +### App Firewall Detection Control Exclude Attack Type Contexts -CDN Distribution serving content over HTTP. +Attack Types to be excluded for the defined match criteria. -`dns_volterra_managed` - (Optional) or a DNS CNAME record should be created in your DNS provider's portal. (`Bool`). +`context` - (Required) x-required (`String`). -###### One of the arguments from this list "port, port_ranges" must be set +`context_name` - (Optional) Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check. (`String`). -`port` - (Optional) HTTP port to Listen. (`Int`). +`exclude_attack_type` - (Required) x-required (`String`). -`port_ranges` - (Optional) Each port range consists of a single port or two ports separated by "-". (`String`). +### App Firewall Detection Control Exclude Bot Name Contexts -### Loadbalancer Type Https +Bot Names to be excluded for the defined match criteria. -User is responsible for managing DNS.. +`bot_name` - (Required) x-example: "Hydra" (`String`). -`add_hsts` - (Optional) Add HTTP Strict-Transport-Security response header (`Bool`). +### App Firewall Detection Control Exclude Signature Contexts -`http_redirect` - (Optional) Redirect HTTP traffic to HTTPS (`Bool`). +Signature IDs to be excluded for the defined match criteria. -`tls_parameters` - (Optional) TLS parameters for the downstream connections.. See [Https Tls Parameters ](#https-tls-parameters) below for details. +`context` - (Required) x-required (`String`). -### Loadbalancer Type Https Auto Cert +`context_name` - (Optional) Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check. (`String`). -DNS records will be managed by Volterra.. +`signature_id` - (Required) 0 implies that all signatures will be excluded for the specified context. (`Int`). -`add_hsts` - (Optional) Add HTTP Strict-Transport-Security response header (`Bool`). +### App Firewall Detection Control Exclude Violation Contexts -`http_redirect` - (Optional) Redirect HTTP traffic to HTTPS (`Bool`). +Violations to be excluded for the defined match criteria. -`tls_config` - (Optional) TLS Configuration Parameters. See [Https Auto Cert Tls Config ](#https-auto-cert-tls-config) below for details. +`context` - (Required) x-required (`String`). -### Logging Options Client Log Options +`context_name` - (Optional) Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check. (`String`). -Client request headers to log. +`exclude_violation` - (Required) x-required (`String`). -`header_list` - (Optional) List of headers (`String`). +### Asn Choice Any Asn -### Logging Options Origin Log Options +any_asn. -Origin response headers to log. +### Asn Choice Asn List -`header_list` - (Optional) List of headers (`String`). +asn_list. -### More Option Cache Options +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). -Cache Options. +### Asn Choice Asn Matcher -`cache_rules` - (Optional) Rules are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs.. See [Cache Options Cache Rules ](#cache-options-cache-rules) below for details. +asn_matcher. -`default_cache_action` - (Required) Default value for Cache action.. See [Cache Options Default Cache Action ](#cache-options-default-cache-action) below for details. +`asn_sets` - (Required) A list of references to bgp_asn_set objects.. See [ref](#ref) below for details. -### More Option Cache Ttl Options +### Audience Validation Audience -Cache Options. +x-displayName: "Exact Match". -###### One of the arguments from this list "cache_disabled, cache_ttl_default, cache_ttl_override" can be set +`audiences` - (Required) x-required (`String`). -`cache_disabled` - (Optional) Disable Caching of content from the origin (`Bool`). +### Audience Validation Audience Disable -`cache_ttl_default` - (Optional) Cache TTL value to use when the origin does not provide one (`String`). +x-displayName: "Disable". -`cache_ttl_override` - (Optional) Override the Cache TTL directive in the response from the origin (`String`). +### Auth Options Custom -### More Option Header Options +Enable Custom Authentication. -Request/Response header related options. +`custom_auth_config` - (Optional) This is custom authentication configuration parameters. Please reach out to the support for custom authentication details. (`String`). -`request_headers_to_add` - (Optional) Headers specified at this level are applied after headers from matched Route are applied. See [Header Options Request Headers To Add ](#header-options-request-headers-to-add) below for details. +### Auth Options Disable Auth -`request_headers_to_remove` - (Optional) List of keys of Headers to be removed from the HTTP request being sent towards upstream. (`String`). +No Authentication. -`response_headers_to_add` - (Optional) Headers specified at this level are applied after headers from matched Route are applied. See [Header Options Response Headers To Add ](#header-options-response-headers-to-add) below for details. +### Auth Options Jwt -`response_headers_to_remove` - (Optional) List of keys of Headers to be removed from the HTTP response being sent towards downstream. (`String`). +Enable JWT Authentication. -### More Option Logging Options +`backup_key` - (Optional) Backup JWT Key - If specified is also checked in addition to the primary secret key. See [Jwt Backup Key ](#jwt-backup-key) below for details. -Logging related options. +`secret_key` - (Required) Secret Key for JWT. See [Jwt Secret Key ](#jwt-secret-key) below for details. -`client_log_options` - (Optional) Client request headers to log. See [Logging Options Client Log Options ](#logging-options-client-log-options) below for details. +###### One of the arguments from this list "header, cookie, query_param, bearer_token" can be set -`origin_log_options` - (Optional) Origin response headers to log. See [Logging Options Origin Log Options ](#logging-options-origin-log-options) below for details. +`bearer_token` - (Optional) Token is found in the Bearer-Token (`Bool`). -### More Option Security Options +`cookie` - (Optional) Token is found in the cookie. See [Token Source Cookie ](#token-source-cookie) below for details. -Security related options. +`header` - (Optional) Token is found in the header. See [Token Source Header ](#token-source-header) below for details. -`auth_options` - (Optional) Authentication Options. See [Security Options Auth Options ](#security-options-auth-options) below for details. +`query_param` - (Optional) Token is found in the Query-Param. See [Token Source Query Param ](#token-source-query-param) below for details. -`geo_filtering` - (Optional) Geo filtering options. See [Security Options Geo Filtering ](#security-options-geo-filtering) below for details. +### Backup Key Blindfold Secret Info Internal -`ip_filtering` - (Optional) IP filtering options. See [Security Options Ip Filtering ](#security-options-ip-filtering) below for details. +Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. -### Mtls Choice No Mtls +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). -x-displayName: "Disable". +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). -### Mtls Choice Use Mtls +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). -x-displayName: "Upload a client authentication certificate specifically for this Origin Pool". +### Blocked Clients Metadata -`tls_certificates` - (Required) mTLS Client Certificate. See [Use Mtls Tls Certificates ](#use-mtls-tls-certificates) below for details. +Common attributes for the rule including name and description.. -### Ocsp Stapling Choice Custom Hash Algorithms +`description` - (Optional) Human readable description. (`String`). -Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) -`hash_algorithms` - (Required) Ordered list of hash algorithms to be used. (`List of Strings`). +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). -### Ocsp Stapling Choice Disable Ocsp Stapling +### Bypass Rate Limiting Rules Bypass Rate Limiting Rules -This is the default behavior if no choice is selected.. +This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.. -### Ocsp Stapling Choice Use System Defaults +`client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Bypass Rate Limiting Rules Client Matcher ](#bypass-rate-limiting-rules-client-matcher) below for details. -F5XC will try to fetch OCSPResponse with sha256 and sha1 as HashAlgorithm, in that order.. +###### One of the arguments from this list "any_url, base_path, api_endpoint, api_groups" must be set -### Origin Pool More Origin Options +`any_url` - (Optional) Any URL (`Bool`). -x-displayName: "Advanced Configuration". +`api_endpoint` - (Required) The endpoint (path) of the request.. See [Destination Type Api Endpoint ](#destination-type-api-endpoint) below for details. -`disable_byte_range_request` - (Optional) Choice to enable/disable origin byte range requrests towards origin (`Bool`). +`api_groups` - (Optional) Validation will be performed for the endpoints mentioned in the API Groups. See [Destination Type Api Groups ](#destination-type-api-groups) below for details. -`websocket_proxy` - (Optional) Option to enable proxying of websocket connections to the origin server (`Bool`). +`base_path` - (Optional) The base path which this validation applies to (`String`). -### Origin Pool Origin Servers +###### One of the arguments from this list "any_domain, specific_domain" must be set -List of original servers. +`any_domain` - (Optional) The rule will apply for all domains. (`Bool`). -###### One of the arguments from this list "public_name, public_ip" must be set +`specific_domain` - (Optional) For example: api.example.com (`String`). -`public_ip` - (Optional) Specify origin server with public IP. See [Choice Public Ip ](#choice-public-ip) below for details. +`request_matcher` - (Optional) Conditions related to the request, such as query parameters, headers, etc.. See [Bypass Rate Limiting Rules Request Matcher ](#bypass-rate-limiting-rules-request-matcher) below for details. -`public_name` - (Optional) Specify origin server with public DNS name. See [Choice Public Name ](#choice-public-name) below for details. +### Bypass Rate Limiting Rules Client Matcher -`port` - (Optional) Port the workload can be reached on (`Int`). +Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. -### Origin Pool Public Name +###### One of the arguments from this list "any_client, ip_threat_category_list, client_selector" must be set -The DNS name to be used as the host header for the request to the origin server. +`any_client` - (Optional) Any Client (`Bool`). -`dns_name` - (Required) DNS Name (`String`). +`client_selector` - (Optional) The predicate evaluates to true if the expressions in the label selector are true for the client labels.. See [Client Choice Client Selector ](#client-choice-client-selector) below for details. -`refresh_interval` - (Optional) Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 (`Int`). +`ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. -### Path Match Operator +###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher, asn_list, asn_matcher" must be set -A specification of path match. +`any_ip` - (Optional) Any Source IP (`Bool`). + +`asn_list` - (Optional) The predicate evaluates to true if the origin ASN is present in the ASN list.. See [Ip Asn Choice Asn List ](#ip-asn-choice-asn-list) below for details. + +`asn_matcher` - (Optional) The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. See [Ip Asn Choice Asn Matcher ](#ip-asn-choice-asn-matcher) below for details. + +`ip_matcher` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.. See [Ip Asn Choice Ip Matcher ](#ip-asn-choice-ip-matcher) below for details. + +`ip_prefix_list` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.. See [Ip Asn Choice Ip Prefix List ](#ip-asn-choice-ip-prefix-list) below for details. + +`tls_fingerprint_matcher` - (Optional) The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.. See [Client Matcher Tls Fingerprint Matcher ](#client-matcher-tls-fingerprint-matcher) below for details. + +### Bypass Rate Limiting Rules Request Matcher + +Conditions related to the request, such as query parameters, headers, etc.. + +`cookie_matchers` - (Optional) Note that all specified cookie matcher predicates must evaluate to true.. See [Request Matcher Cookie Matchers ](#request-matcher-cookie-matchers) below for details. + +`headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. + +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. + +`query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. + +### Cache Actions Cache Bypass + +Bypass Caching of content from the origin. + +### Cache Actions Cache Disabled + +Disable Caching of content from the origin. + +### Cache Actions Eligible For Cache + +Eligible for caching the content. + +###### One of the arguments from this list "scheme_hostname_request_uri, hostname_uri, scheme_hostname_uri_query, scheme_proxy_host_uri, scheme_proxy_host_request_uri, scheme_hostname_uri" must be set + +`hostname_uri` - (Optional) . See [Eligible For Cache Hostname Uri ](#eligible-for-cache-hostname-uri) below for details.(Deprecated) + +`scheme_hostname_request_uri` - (Optional) . See [Eligible For Cache Scheme Hostname Request Uri ](#eligible-for-cache-scheme-hostname-request-uri) below for details.(Deprecated) -###### One of the arguments from this list "DoesNotEqual, DoesNotContain, Startswith, Endswith, DoesNotEndWith, MatchRegex, Equals, Contains, DoesNotStartWith" can be set +`scheme_hostname_uri` - (Optional) . See [Eligible For Cache Scheme Hostname Uri ](#eligible-for-cache-scheme-hostname-uri) below for details.(Deprecated) + +`scheme_hostname_uri_query` - (Optional) . See [Eligible For Cache Scheme Hostname Uri Query ](#eligible-for-cache-scheme-hostname-uri-query) below for details.(Deprecated) + +`scheme_proxy_host_request_uri` - (Optional) . See [Eligible For Cache Scheme Proxy Host Request Uri ](#eligible-for-cache-scheme-proxy-host-request-uri) below for details. + +`scheme_proxy_host_uri` - (Optional) . See [Eligible For Cache Scheme Proxy Host Uri ](#eligible-for-cache-scheme-proxy-host-uri) below for details. + +### Cache Actions Eligible For Cache + +Eligible for caching the content. + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +### Cache Headers Operator + +Available operators. + +###### One of the arguments from this list "Equals, DoesNotEqual, Endswith, DoesNotEndWith, MatchRegex, Contains, DoesNotContain, Startswith, DoesNotStartWith" can be set `Contains` - (Optional) Field must contain (`String`). @@ -712,177 +769,1965 @@ A specification of path match. `Startswith` - (Optional) Field must start with (`String`). -### Private Key Blindfold Secret Info Internal +### Cache Options Cache Rules -Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. +Rules are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs.. -`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). +###### One of the arguments from this list "cache_bypass, eligible_for_cache" must be set -`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). +`cache_bypass` - (Optional) Bypass Caching of content from the origin (`Bool`). -`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +`eligible_for_cache` - (Optional) Eligible for caching the content. See [Cache Actions Eligible For Cache ](#cache-actions-eligible-for-cache) below for details. + +`rule_expression_list` - (Required) Expressions are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs... See [Cache Rules Rule Expression List ](#cache-rules-rule-expression-list) below for details. + +`rule_name` - (Required) Name of the Cache Rule (`String`). + +### Cache Options Default Cache Action + +Default value for Cache action.. + +###### One of the arguments from this list "cache_ttl_override, cache_disabled, eligible_for_cache, cache_ttl_default" can be set + +`cache_disabled` - (Optional) Disable Caching of content from the origin (`Bool`). + +`cache_ttl_default` - (Optional) Cache TTL value to use when the origin does not provide one (`String`). + +`cache_ttl_override` - (Optional) Override the Cache TTL directive in the response from the origin (`String`). + +`eligible_for_cache` - (Optional) Eligible for caching the content. See [Cache Actions Eligible For Cache ](#cache-actions-eligible-for-cache) below for details.(Deprecated) + +### Cache Rule Expression Cache Headers + +Configure cache rule headers to match the criteria. + +`name` - (Optional) Name of the header (`String`). + +`operator` - (Optional) Available operators. See [Cache Headers Operator ](#cache-headers-operator) below for details. + +### Cache Rule Expression Cookie Matcher + +Note that all specified cookie matcher predicates must evaluate to true.. + +`name` - (Required) A case-sensitive cookie name. (`String`). + +`operator` - (Optional) . See [Cookie Matcher Operator ](#cookie-matcher-operator) below for details. + +### Cache Rule Expression Path Match + +URI path of route. + +`operator` - (Optional) A specification of path match. See [Path Match Operator ](#path-match-operator) below for details. + +### Cache Rule Expression Query Parameters + +List of (key, value) query parameters. + +`key` - (Required) In the above example, assignee_username is the key (`String`). + +`operator` - (Optional) . See [Query Parameters Operator ](#query-parameters-operator) below for details. + +### Cache Rules Rule Expression List + +Expressions are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs... + +`cache_rule_expression` - (Required) The Cache Rule Expression Terms that are ANDed. See [Rule Expression List Cache Rule Expression ](#rule-expression-list-cache-rule-expression) below for details. + +`expression_name` - (Required) Name of the Expressions items that are ANDed (`String`). + +### Captcha Challenge Parameters Choice Captcha Challenge Parameters + +Configure captcha challenge parameters. + +`cookie_expiry` - (Optional) An expired cookie causes the loadbalancer to issue a new challenge. (`Int`). + +`custom_page` - (Optional) E.g. "

Please Wait

". Base64 encoded string for this html is "PHA+IFBsZWFzZSBXYWl0IDwvcD4=" (`String`). + +### Captcha Challenge Parameters Choice Default Captcha Challenge Parameters + +Use default parameters. + +### Challenge Action Disable Challenge + +Disable the challenge type selected in PolicyBasedChallenge. + +### Challenge Action Enable Captcha Challenge + +Enable captcha challenge. + +### Challenge Action Enable Javascript Challenge + +Enable javascript challenge. + +### Challenge Choice Always Enable Captcha Challenge + +Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.. + +### Challenge Choice Always Enable Js Challenge + +Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.. + +### Challenge Choice No Challenge + +Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.. + +### Challenge Type Captcha Challenge + +Configure Captcha challenge on this load balancer. + +`cookie_expiry` - (Optional) An expired cookie causes the loadbalancer to issue a new challenge. (`Int`). + +`custom_page` - (Optional) E.g. "

Please Wait

". Base64 encoded string for this html is "PHA+IFBsZWFzZSBXYWl0IDwvcD4=" (`String`). + +### Challenge Type Challenge On Cache Miss + +Configure auto mitigation i.e risk based challenges for malicious users only on cache miss in this load balancer. + +###### One of the arguments from this list "default_captcha_challenge_parameters, captcha_challenge_parameters" can be set + +`captcha_challenge_parameters` - (Optional) Configure captcha challenge parameters. See [Captcha Challenge Parameters Choice Captcha Challenge Parameters ](#captcha-challenge-parameters-choice-captcha-challenge-parameters) below for details. + +`default_captcha_challenge_parameters` - (Optional) Use default parameters (`Bool`). + +###### One of the arguments from this list "default_js_challenge_parameters, js_challenge_parameters" can be set + +`default_js_challenge_parameters` - (Optional) Use default parameters (`Bool`). + +`js_challenge_parameters` - (Optional) Configure JavaScript challenge parameters. See [Js Challenge Parameters Choice Js Challenge Parameters ](#js-challenge-parameters-choice-js-challenge-parameters) below for details. + +###### One of the arguments from this list "default_mitigation_settings, malicious_user_mitigation" can be set + +`default_mitigation_settings` - (Optional) For high level, users will be temporarily blocked. (`Bool`). + +`malicious_user_mitigation` - (Optional) Define the mitigation actions to be taken for different threat levels. See [ref](#ref) below for details. + +### Challenge Type Enable Challenge + +Configure auto mitigation i.e risk based challenges for malicious users for this load balancer. + +###### One of the arguments from this list "default_captcha_challenge_parameters, captcha_challenge_parameters" can be set + +`captcha_challenge_parameters` - (Optional) Configure captcha challenge parameters. See [Captcha Challenge Parameters Choice Captcha Challenge Parameters ](#captcha-challenge-parameters-choice-captcha-challenge-parameters) below for details. + +`default_captcha_challenge_parameters` - (Optional) Use default parameters (`Bool`). + +###### One of the arguments from this list "default_js_challenge_parameters, js_challenge_parameters" can be set + +`default_js_challenge_parameters` - (Optional) Use default parameters (`Bool`). + +`js_challenge_parameters` - (Optional) Configure JavaScript challenge parameters. See [Js Challenge Parameters Choice Js Challenge Parameters ](#js-challenge-parameters-choice-js-challenge-parameters) below for details. + +###### One of the arguments from this list "default_mitigation_settings, malicious_user_mitigation" can be set + +`default_mitigation_settings` - (Optional) For high level, users will be temporarily blocked. (`Bool`). + +`malicious_user_mitigation` - (Optional) Define the mitigation actions to be taken for different threat levels. See [ref](#ref) below for details. + +### Challenge Type Js Challenge + +Configure JavaScript challenge on this load balancer. + +`cookie_expiry` - (Optional) An expired cookie causes the loadbalancer to issue a new challenge. (`Int`). + +`custom_page` - (Optional) E.g. "

Please Wait

". Base64 encoded string for this html is "PHA+IFBsZWFzZSBXYWl0IDwvcD4=" (`String`). + +`js_script_delay` - (Optional) Delay introduced by Javascript, in milliseconds. (`Int`). + +### Challenge Type No Challenge + +No challenge is enabled for this load balancer. + +### Challenge Type Policy Based Challenge + +Specifies the settings for policy rule based challenge. + +###### One of the arguments from this list "default_captcha_challenge_parameters, captcha_challenge_parameters" can be set + +`captcha_challenge_parameters` - (Optional) Configure captcha challenge parameters. See [Captcha Challenge Parameters Choice Captcha Challenge Parameters ](#captcha-challenge-parameters-choice-captcha-challenge-parameters) below for details. + +`default_captcha_challenge_parameters` - (Optional) Use default parameters (`Bool`). + +###### One of the arguments from this list "no_challenge, always_enable_js_challenge, always_enable_captcha_challenge" must be set + +`always_enable_captcha_challenge` - (Optional) Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests. (`Bool`). + +`always_enable_js_challenge` - (Optional) Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests. (`Bool`). + +`no_challenge` - (Optional) Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests. (`Bool`). + +###### One of the arguments from this list "js_challenge_parameters, default_js_challenge_parameters" can be set + +`default_js_challenge_parameters` - (Optional) Use default parameters (`Bool`). + +`js_challenge_parameters` - (Optional) Configure JavaScript challenge parameters. See [Js Challenge Parameters Choice Js Challenge Parameters ](#js-challenge-parameters-choice-js-challenge-parameters) below for details. + +###### One of the arguments from this list "default_mitigation_settings, malicious_user_mitigation" can be set + +`default_mitigation_settings` - (Optional) For high level, users will be temporarily blocked. (`Bool`). + +`malicious_user_mitigation` - (Optional) Define the mitigation actions to be taken for different threat levels. See [ref](#ref) below for details. + +`rule_list` - (Optional) list challenge rules to be used in policy based challenge. See [Policy Based Challenge Rule List ](#policy-based-challenge-rule-list) below for details. + +###### One of the arguments from this list "default_temporary_blocking_parameters, temporary_user_blocking" can be set + +`default_temporary_blocking_parameters` - (Optional) Use default parameters (`Bool`).(Deprecated) + +`temporary_user_blocking` - (Optional) Specifies configuration for temporary user blocking resulting from malicious user detection. See [Temporary Blocking Parameters Choice Temporary User Blocking ](#temporary-blocking-parameters-choice-temporary-user-blocking) below for details.(Deprecated) + +### Choice Custom Security + +Custom selection of TLS versions and cipher suites. + +`cipher_suites` - (Required) The TLS listener will only support the specified cipher list. (`String`). + +`max_version` - (Optional) Maximum TLS protocol version. (`String`). + +`min_version` - (Optional) Minimum TLS protocol version. (`String`). + +### Choice Default Security + +TLS v1.2+ with PFS ciphers and strong crypto algorithms.. + +### Choice Low Security + +TLS v1.0+ including non-PFS ciphers and weak crypto algorithms.. + +### Choice Medium Security + +TLS v1.0+ with PFS ciphers and medium strength crypto algorithms.. + +### Choice Public Ip + +Specify origin server with public IP. + +###### One of the arguments from this list "ip, ipv6" must be set + +`ip` - (Optional) Public IPV4 address (`String`). + +`ipv6` - (Optional) Public IPV6 address (`String`). + +### Choice Public Name + +Specify origin server with public DNS name. + +`dns_name` - (Required) DNS Name (`String`). + +`refresh_interval` - (Optional) Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 (`Int`). + +### Choice Tls 11 Plus + +TLS v1.1+ with PFS ciphers and medium strength crypto algorithms.. + +### Choice Tls 12 Plus + +TLS v1.2+ with PFS ciphers and strong crypto algorithms.. + +### Client Choice Any Client + +Any Client. + +### Client Choice Client Name Matcher + +client_name_matcher. + +`exact_values` - (Optional) A list of exact values to match the input against. (`String`). + +`regex_values` - (Optional) A list of regular expressions to match the input against. (`String`). + +`transformers` - (Optional) An ordered list of transformers (starting from index 0) to be applied to the path before matching. (`List of Strings`). + +### Client Choice Client Selector + +The predicate evaluates to true if the expressions in the label selector are true for the client labels.. + +`expressions` - (Required) expressions contains the kubernetes style label expression for selections. (`String`). + +### Client Choice Ip Threat Category List + +IP threat categories to choose from. + +`ip_threat_categories` - (Required) The IP threat categories is obtained from the list and is used to auto-generate equivalent label selection expressions (`List of Strings`). + +### Client Matcher Tls Fingerprint Matcher + +The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.. + +`classes` - (Optional) A list of known classes of TLS fingerprints to match the input TLS JA3 fingerprint against. (`List of Strings`). + +`exact_values` - (Optional) A list of exact TLS JA3 fingerprints to match the input TLS JA3 fingerprint against. (`String`). + +`excluded_values` - (Optional) or more known TLS fingerprint classes in the enclosing matcher. (`String`). + +### Client Source Choice Http Header + +Request header name and value pairs. + +`headers` - (Required) List of HTTP header name and value pairs. See [Http Header Headers ](#http-header-headers) below for details. + +### Common Security Controls Blocked Clients + +Define rules to block IP Prefixes or AS numbers.. + +###### One of the arguments from this list "skip_processing, waf_skip_processing, bot_skip_processing" can be set + +`bot_skip_processing` - (Optional) Skip Bot Defense processing for clients matching this rule. (`Bool`).(Deprecated) + +`skip_processing` - (Optional) Skip both WAF and Bot Defense processing for clients matching this rule. (`Bool`).(Deprecated) + +`waf_skip_processing` - (Optional) Skip WAF processing for clients matching this rule. (`Bool`).(Deprecated) + +`actions` - (Optional) Actions that should be taken when client identifier matches the rule (`List of Strings`). + +###### One of the arguments from this list "as_number, http_header, user_identifier, ip_prefix" must be set + +`as_number` - (Optional) RFC 6793 defined 4-byte AS number (`Int`). + +`http_header` - (Optional) Request header name and value pairs. See [Client Source Choice Http Header ](#client-source-choice-http-header) below for details. + +`ip_prefix` - (Optional) IPv4 prefix string. (`String`). + +`user_identifier` - (Optional) Identify user based on user identifier. User identifier value needs to be copied from security event. (`String`). + +`expiration_timestamp` - (Optional) the configuration but is not applied anymore. (`String`). + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Blocked Clients Metadata ](#blocked-clients-metadata) below for details. + +### Common Security Controls Cors Policy + +resources from a server at a different origin. + +`allow_credentials` - (Optional) Specifies whether the resource allows credentials (`Bool`). + +`allow_headers` - (Optional) Specifies the content for the access-control-allow-headers header (`String`). + +`allow_methods` - (Optional) Specifies the content for the access-control-allow-methods header (`String`). + +`allow_origin` - (Optional) An origin is allowed if either allow_origin or allow_origin_regex match (`String`). + +`allow_origin_regex` - (Optional) An origin is allowed if either allow_origin or allow_origin_regex match (`String`). + +`disabled` - (Optional) The value of this field is ignored for virtual-host (`Bool`). + +`expose_headers` - (Optional) Specifies the content for the access-control-expose-headers header (`String`). + +`max_age` - (Optional) Specifies the content for the access-control-max-age header (`String`).(Deprecated) + +`maximum_age` - (Optional) Maximum permitted value is 86400 seconds (24 hours) (`Int`). + +### Common Security Controls Trusted Clients + +Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.. + +###### One of the arguments from this list "skip_processing, waf_skip_processing, bot_skip_processing" can be set + +`bot_skip_processing` - (Optional) Skip Bot Defense processing for clients matching this rule. (`Bool`).(Deprecated) + +`skip_processing` - (Optional) Skip both WAF and Bot Defense processing for clients matching this rule. (`Bool`).(Deprecated) + +`waf_skip_processing` - (Optional) Skip WAF processing for clients matching this rule. (`Bool`).(Deprecated) + +`actions` - (Optional) Actions that should be taken when client identifier matches the rule (`List of Strings`). + +###### One of the arguments from this list "user_identifier, ip_prefix, as_number, http_header" must be set + +`as_number` - (Optional) RFC 6793 defined 4-byte AS number (`Int`). + +`http_header` - (Optional) Request header name and value pairs. See [Client Source Choice Http Header ](#client-source-choice-http-header) below for details. + +`ip_prefix` - (Optional) IPv4 prefix string. (`String`). + +`user_identifier` - (Optional) Identify user based on user identifier. User identifier value needs to be copied from security event. (`String`). + +`expiration_timestamp` - (Optional) the configuration but is not applied anymore. (`String`). + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Trusted Clients Metadata ](#trusted-clients-metadata) below for details. + +### Condition Type Choice Api Endpoint + +The API endpoint (Path + Method) which this validation applies to. + +`methods` - (Optional) Methods to be matched (`List of Strings`). + +`path` - (Required) Path to be matched (`String`). + +### Cookie Matcher Operator + +. + +###### One of the arguments from this list "Startswith, DoesNotStartWith, Contains, DoesNotContain, Endswith, DoesNotEndWith, MatchRegex, Equals, DoesNotEqual" can be set + +`Contains` - (Optional) Field must contain (`String`). + +`DoesNotContain` - (Optional) Field must not contain (`String`). + +`DoesNotEndWith` - (Optional) Field must not end with (`String`). + +`DoesNotEqual` - (Optional) Field must not equal (`String`). + +`DoesNotStartWith` - (Optional) Field must not start with (`String`). + +`Endswith` - (Optional) Field must end with (`String`). + +`Equals` - (Optional) Field must exactly match (`String`). + +`MatchRegex` - (Optional) Field matches regular expression (`String`). + +`Startswith` - (Optional) Field must start with (`String`). + +### Cookie Tampering Disable Tampering Protection + +x-displayName: "Disable". + +### Cookie Tampering Enable Tampering Protection + +x-displayName: "Enable". + +### Count By Choice Use Http Lb User Id + +Defined in HTTP-LB Security Configuration -> User Identifier.. + +### Data Guard Rules Metadata + +Common attributes for the rule including name and description.. + +`description` - (Optional) Human readable description. (`String`). + +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +### Data Guard Rules Path + +URI path matcher.. + +###### One of the arguments from this list "prefix, path, regex" must be set + +`path` - (Optional) Exact path value to match (`String`). + +`prefix` - (Optional) Path prefix to match (e.g. the value / will match on all paths) (`String`). + +`regex` - (Optional) Regular expression of path match (e.g. the value .* will match on all paths) (`String`). + +### Destination Type Any Url + +Any URL . + +### Destination Type Api Endpoint + +The endpoint (path) of the request.. + +`methods` - (Optional) Methods to be matched (`List of Strings`). + +`path` - (Required) Path to be matched (`String`). + +### Destination Type Api Groups + +Validation will be performed for the endpoints mentioned in the API Groups. + +`api_groups` - (Required) x-required (`String`). + +### Domain Choice Any Domain + +The rule will apply for all domains.. + +### Eligible For Cache Hostname Uri + +. + +`cache_override` - (Optional) Honour Cache Override (`Bool`). + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). + +### Eligible For Cache Scheme Hostname Request Uri + +. + +`cache_override` - (Optional) Honour Cache Override (`Bool`). + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). + +### Eligible For Cache Scheme Hostname Uri + +. + +`cache_override` - (Optional) Honour Cache Override (`Bool`). + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). + +### Eligible For Cache Scheme Hostname Uri Query + +. + +`cache_override` - (Optional) Honour Cache Override (`Bool`). + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). + +### Eligible For Cache Scheme Proxy Host Request Uri + +. + +`cache_override` - (Optional) Honour Cache Override (`Bool`). + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). + +### Eligible For Cache Scheme Proxy Host Uri + +. + +`cache_override` - (Optional) Honour Cache Override (`Bool`). + +`cache_ttl` - (Required) Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days (`String`). + +`ignore_response_cookie` - (Optional) By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. (`Bool`). + +### Enable Api Discovery Discovered Api Settings + +Configure Discovered API Settings.. + +### Enable Api Discovery Sensitive Data Detection Rules + +Manage rules to detect sensitive data in requests and/or response sections.. + +### Fall Through Mode Choice Fall Through Mode Allow + +Allow any unprotected end point. + +### Fall Through Mode Choice Fall Through Mode Custom + +Custom rules for any unprotected end point. + +`open_api_validation_rules` - (Required) x-displayName: "Custom Fall Through Rule List". See [Fall Through Mode Custom Open Api Validation Rules ](#fall-through-mode-custom-open-api-validation-rules) below for details. + +### Fall Through Mode Custom Open Api Validation Rules + +x-displayName: "Custom Fall Through Rule List". + +###### One of the arguments from this list "action_skip, action_report, action_block" must be set + +`action_block` - (Optional) Block the request and issue an API security event (`Bool`). + +`action_report` - (Optional) Continue processing the request and issue an API security event (`Bool`). + +`action_skip` - (Optional) Continue processing the request (`Bool`). + +###### One of the arguments from this list "api_endpoint, base_path, api_group" must be set + +`api_endpoint` - (Optional) The API endpoint (Path + Method) which this validation applies to. See [Condition Type Choice Api Endpoint ](#condition-type-choice-api-endpoint) below for details. + +`api_group` - (Optional) The API group which this validation applies to (`String`). + +`base_path` - (Optional) The base path which this validation applies to (`String`). + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Open Api Validation Rules Metadata ](#open-api-validation-rules-metadata) below for details. + +### Geo Filtering Type Allow List + +Allow list of countries. + +`country_codes` - (Required) List of Country Codes (`List of Strings`). + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +### Geo Filtering Type Block List + +Block list of countries. + +`country_codes` - (Required) List of Country Codes (`List of Strings`). + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +### Graphql Rules Graphql Settings + +GraphQL configuration.. + +###### One of the arguments from this list "disable_introspection, enable_introspection" must be set + +`disable_introspection` - (Optional) Disable introspection queries for the load balancer. (`Bool`). + +`enable_introspection` - (Optional) Enable introspection queries for the load balancer. (`Bool`). + +`max_batched_queries` - (Required) Specify maximum number of queries in a single batched request. (`Int`). + +`max_depth` - (Required) Specify maximum depth for the GraphQL query. (`Int`). + +`max_total_length` - (Required) Specify maximum length in bytes for the GraphQL query. (`Int`). + +`max_value_length` - (Required) Specify maximum value length in bytes for the GraphQL query. (`Int`).(Deprecated) + +`policy_name` - (Optional) Sets the BD Policy to use (`String`).(Deprecated) + +### Graphql Rules Metadata + +Common attributes for the rule including name and description.. + +`description` - (Optional) Human readable description. (`String`). + +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +### Header Options Request Headers To Add + +Headers specified at this level are applied after headers from matched Route are applied. + +`append` - (Optional) Default value is do not append (`Bool`). + +`name` - (Required) Name of the HTTP header. (`String`). + +###### One of the arguments from this list "value, secret_value" must be set + +`secret_value` - (Optional) Secret Value of the HTTP header.. See [Value Choice Secret Value ](#value-choice-secret-value) below for details. + +`value` - (Optional) Value of the HTTP header. (`String`). + +### Header Options Response Headers To Add + +Headers specified at this level are applied after headers from matched Route are applied. + +`append` - (Optional) Default value is do not append (`Bool`). + +`name` - (Required) Name of the HTTP header. (`String`). + +###### One of the arguments from this list "value, secret_value" must be set + +`secret_value` - (Optional) Secret Value of the HTTP header.. See [Value Choice Secret Value ](#value-choice-secret-value) below for details. + +`value` - (Optional) Value of the HTTP header. (`String`). + +### Http Header Headers + +List of HTTP header name and value pairs. + +`invert_match` - (Optional) Invert the result of the match to detect missing header or non-matching value (`Bool`). + +`name` - (Required) Name of the header (`String`). + +###### One of the arguments from this list "exact, regex, presence" can be set + +`exact` - (Optional) Header value to match exactly (`String`). + +`presence` - (Optional) If true, check for presence of header (`Bool`). + +`regex` - (Optional) Regex match of the header value in re2 format (`String`). + +### Httponly Add Httponly + +x-displayName: "Add". + +### Httponly Ignore Httponly + +x-displayName: "Ignore". + +### Https Tls Parameters + +TLS parameters for the downstream connections.. + +`tls_certificates` - (Required) for example, domain.com and *.domain.com - but use different signature algorithms. See [Tls Parameters Tls Certificates ](#tls-parameters-tls-certificates) below for details. + +`tls_config` - (Optional) TLS Configuration Parameters. See [Tls Parameters Tls Config ](#tls-parameters-tls-config) below for details. + +### Https Auto Cert Tls Config + +TLS Configuration Parameters. + +###### One of the arguments from this list "tls_12_plus, tls_11_plus" must be set + +`tls_11_plus` - (Optional) TLS v1.1+ with PFS ciphers and medium strength crypto algorithms. (`Bool`). + +`tls_12_plus` - (Optional) TLS v1.2+ with PFS ciphers and strong crypto algorithms. (`Bool`). + +### Ip Allowed List Choice Bypass Rate Limiting Rules + +This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.. + +`bypass_rate_limiting_rules` - (Optional) This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.. See [Bypass Rate Limiting Rules Bypass Rate Limiting Rules ](#bypass-rate-limiting-rules-bypass-rate-limiting-rules) below for details. + +### Ip Allowed List Choice Custom Ip Allowed List + +IP Allowed list using existing ip_prefix_set objects.. + +`rate_limiter_allowed_prefixes` - (Required) Requests from source IP addresses that are covered by one of the allowed IP Prefixes are not subjected to rate limiting.. See [ref](#ref) below for details. + +### Ip Allowed List Choice Ip Allowed List + +List of IP(s) for which rate limiting will be disabled.. + +`ipv6_prefixes` - (Optional) List of IPv6 prefix strings. (`String`). + +`prefixes` - (Optional) List of IPv4 prefixes that represent an endpoint (`String`). + +### Ip Allowed List Choice No Ip Allowed List + +There is no ip allowed list for rate limiting, all clients go through rate limiting.. + +### Ip Asn Choice Any Ip + +Any Source IP. + +### Ip Asn Choice Asn List + +The predicate evaluates to true if the origin ASN is present in the ASN list.. + +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). + +### Ip Asn Choice Asn Matcher + +The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. + +`asn_sets` - (Required) A list of references to bgp_asn_set objects.. See [ref](#ref) below for details. + +### Ip Asn Choice Ip Matcher + +The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +`prefix_sets` - (Required) A list of references to ip_prefix_set objects.. See [ref](#ref) below for details. + +### Ip Asn Choice Ip Prefix List + +The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.. + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). + +### Ip Choice Any Ip + +any_ip. + +### Ip Choice Ip Matcher + +ip_matcher. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +`prefix_sets` - (Required) A list of references to ip_prefix_set objects.. See [ref](#ref) below for details. + +### Ip Choice Ip Prefix List + +ip_prefix_list. + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). + +### Ip Filtering Type Allow List + +Allow list of ip prefixes. + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). + +### Ip Filtering Type Block List + +Block list of ip prefixes. + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). + +### Ip Reputation Choice Disable Ip Reputation + +No IP reputation configured this distribution. + +### Ip Reputation Choice Enable Ip Reputation + +Enable IP reputation for all requests in this distribution. + +`ip_threat_categories` - (Required) If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied. (`List of Strings`). + +### Ip Reputation Choice Ip Reputation On Cache Miss + +Enable IP reputation only on cache miss in this distribution. + +`ip_threat_categories` - (Required) If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied. (`List of Strings`). + +### Issuer Validation Issuer Disable + +x-displayName: "Disable". + +### Js Challenge Parameters Choice Default Js Challenge Parameters + +Use default parameters. + +### Js Challenge Parameters Choice Js Challenge Parameters + +Configure JavaScript challenge parameters. + +`cookie_expiry` - (Optional) An expired cookie causes the loadbalancer to issue a new challenge. (`Int`). + +`custom_page` - (Optional) E.g. "

Please Wait

". Base64 encoded string for this html is "PHA+IFBsZWFzZSBXYWl0IDwvcD4=" (`String`). + +`js_script_delay` - (Optional) Delay introduced by Javascript, in milliseconds. (`Int`). + +### Jwks Configuration Jwks Config + +The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.. + +`cleartext` - (Optional) The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details. (`String`). + +### Jwt Backup Key + +Backup JWT Key - If specified is also checked in addition to the primary secret key. + +`blindfold_secret_info_internal` - (Optional) Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. See [Backup Key Blindfold Secret Info Internal ](#backup-key-blindfold-secret-info-internal) below for details.(Deprecated) + +`secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) + +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set + +`blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. + +`clear_secret_info` - (Optional) Clear Secret is used for the secrets that are not encrypted. See [Secret Info Oneof Clear Secret Info ](#secret-info-oneof-clear-secret-info) below for details. + +`vault_secret_info` - (Optional) Vault Secret is used for the secrets managed by Hashicorp Vault. See [Secret Info Oneof Vault Secret Info ](#secret-info-oneof-vault-secret-info) below for details.(Deprecated) + +`wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) + +### Jwt Secret Key + +Secret Key for JWT. + +`blindfold_secret_info_internal` - (Optional) Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. See [Secret Key Blindfold Secret Info Internal ](#secret-key-blindfold-secret-info-internal) below for details.(Deprecated) + +`secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) + +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set + +`blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. + +`clear_secret_info` - (Optional) Clear Secret is used for the secrets that are not encrypted. See [Secret Info Oneof Clear Secret Info ](#secret-info-oneof-clear-secret-info) below for details. + +`vault_secret_info` - (Optional) Vault Secret is used for the secrets managed by Hashicorp Vault. See [Secret Info Oneof Vault Secret Info ](#secret-info-oneof-vault-secret-info) below for details.(Deprecated) + +`wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) + +### Jwt Validation Action + +x-required. + +###### One of the arguments from this list "block, report" must be set + +`block` - (Optional) Block the request and report the issue (`Bool`). + +`report` - (Optional) Allow the request and report the issue (`Bool`). + +### Jwt Validation Mandatory Claims + +If the claim does not exist JWT token validation will fail.. + +`claim_names` - (Optional) x-displayName: "Claim Names" (`String`). + +### Jwt Validation Reserved Claims + +the token validation of these claims should be disabled.. + +###### One of the arguments from this list "audience_disable, audience" must be set + +`audience` - (Optional) x-displayName: "Exact Match". See [Audience Validation Audience ](#audience-validation-audience) below for details. + +`audience_disable` - (Optional) x-displayName: "Disable" (`Bool`). + +###### One of the arguments from this list "issuer_disable, issuer" must be set + +`issuer` - (Optional) x-displayName: "Exact Match" (`String`). + +`issuer_disable` - (Optional) x-displayName: "Disable" (`Bool`). + +###### One of the arguments from this list "validate_period_disable, validate_period_enable" must be set + +`validate_period_disable` - (Optional) x-displayName: "Disable" (`Bool`). + +`validate_period_enable` - (Optional) x-displayName: "Enable" (`Bool`). + +### Jwt Validation Target + +Define endpoints for which JWT token validation will be performed. + +###### One of the arguments from this list "api_groups, base_paths, all_endpoint" must be set + +`all_endpoint` - (Optional) Validation will be performed for all requests on this LB (`Bool`). + +`api_groups` - (Optional) Validation will be performed for the endpoints mentioned in the API Groups. See [Target Api Groups ](#target-api-groups) below for details. + +`base_paths` - (Optional) Validation will be performed for selected path prefixes. See [Target Base Paths ](#target-base-paths) below for details. + +### Jwt Validation Token Location + +Define where in the HTTP request the JWT token will be extracted. + +###### One of the arguments from this list "query_param, bearer_token, cookie, header" must be set + +`bearer_token` - (Optional) Token is found in Authorization HTTP header with Bearer authentication scheme (`Bool`). + +`cookie` - (Optional) Token is found in the cookie (`String`).(Deprecated) + +`header` - (Optional) Token is found in the header (`String`).(Deprecated) + +`query_param` - (Optional) Token is found in the query string parameter (`String`).(Deprecated) + +### Learn From Redirect Traffic Disable Learn From Redirect Traffic + +Disable learning API patterns from traffic with redirect response codes 3xx. + +### Learn From Redirect Traffic Enable Learn From Redirect Traffic + +Enable learning API patterns from traffic with redirect response codes 3xx. + +### Loadbalancer Type Http + +CDN Distribution serving content over HTTP. + +`dns_volterra_managed` - (Optional) or a DNS CNAME record should be created in your DNS provider's portal. (`Bool`). + +###### One of the arguments from this list "port, port_ranges" must be set + +`port` - (Optional) HTTP port to Listen. (`Int`). + +`port_ranges` - (Optional) Each port range consists of a single port or two ports separated by "-". (`String`). + +### Loadbalancer Type Https + +User is responsible for managing DNS.. + +`add_hsts` - (Optional) Add HTTP Strict-Transport-Security response header (`Bool`). + +`http_redirect` - (Optional) Redirect HTTP traffic to HTTPS (`Bool`). + +`tls_parameters` - (Optional) TLS parameters for the downstream connections.. See [Https Tls Parameters ](#https-tls-parameters) below for details. + +### Loadbalancer Type Https Auto Cert + +DNS records will be managed by Volterra.. + +`add_hsts` - (Optional) Add HTTP Strict-Transport-Security response header (`Bool`). + +`http_redirect` - (Optional) Redirect HTTP traffic to HTTPS (`Bool`). + +`tls_config` - (Optional) TLS Configuration Parameters. See [Https Auto Cert Tls Config ](#https-auto-cert-tls-config) below for details. + +### Logging Options Client Log Options + +Client request headers to log. + +`header_list` - (Optional) List of headers (`String`). + +### Logging Options Origin Log Options + +Origin response headers to log. + +`header_list` - (Optional) List of headers (`String`). + +### Malicious User Detection Choice Disable Malicious User Detection + +Disable malicious user detection for this distribution. + +### Malicious User Detection Choice Enable Malicious User Detection + +Enable malicious user detection for all requests in this distribution. + +### Malicious User Detection Choice Malicious User Detection On Cache Miss + +Enable malicious user detection only on cache miss in this distribution. + +### Malicious User Mitigation Choice Default Mitigation Settings + +For high level, users will be temporarily blocked.. + +### Match Check Not Present + +Check that the cookie is not present.. + +### Match Check Present + +Check that the cookie is present.. + +### Match Item + +Criteria for matching the values for the cookie. The match is successful if any of the values in the input satisfies the criteria in the matcher.. + +`exact_values` - (Optional) A list of exact values to match the input against. (`String`). + +`regex_values` - (Optional) A list of regular expressions to match the input against. (`String`). + +`transformers` - (Optional) An ordered list of transformers (starting from index 0) to be applied to the path before matching. (`List of Strings`). + +### Max Age Ignore Max Age + +Ignore max age attribute. + +### Method Choice Method Get + +x-displayName: "GET". + +### Method Choice Method Post + +x-displayName: "POST". + +### More Option Cache Options + +Cache Options. + +`cache_rules` - (Optional) Rules are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs.. See [Cache Options Cache Rules ](#cache-options-cache-rules) below for details. + +`default_cache_action` - (Required) Default value for Cache action.. See [Cache Options Default Cache Action ](#cache-options-default-cache-action) below for details. + +### More Option Cache Ttl Options + +Cache Options. + +###### One of the arguments from this list "cache_ttl_default, cache_ttl_override, cache_disabled" can be set + +`cache_disabled` - (Optional) Disable Caching of content from the origin (`Bool`). + +`cache_ttl_default` - (Optional) Cache TTL value to use when the origin does not provide one (`String`). + +`cache_ttl_override` - (Optional) Override the Cache TTL directive in the response from the origin (`String`). + +### More Option Header Options + +Request/Response header related options. + +`request_headers_to_add` - (Optional) Headers specified at this level are applied after headers from matched Route are applied. See [Header Options Request Headers To Add ](#header-options-request-headers-to-add) below for details. + +`request_headers_to_remove` - (Optional) List of keys of Headers to be removed from the HTTP request being sent towards upstream. (`String`). + +`response_headers_to_add` - (Optional) Headers specified at this level are applied after headers from matched Route are applied. See [Header Options Response Headers To Add ](#header-options-response-headers-to-add) below for details. + +`response_headers_to_remove` - (Optional) List of keys of Headers to be removed from the HTTP response being sent towards downstream. (`String`). + +### More Option Logging Options + +Logging related options. + +`client_log_options` - (Optional) Client request headers to log. See [Logging Options Client Log Options ](#logging-options-client-log-options) below for details. + +`origin_log_options` - (Optional) Origin response headers to log. See [Logging Options Origin Log Options ](#logging-options-origin-log-options) below for details. + +### More Option Security Options + +Security related options. + +`api_protection` - (Optional) x-displayName: "API Protection". See [Security Options Api Protection ](#security-options-api-protection) below for details. + +`auth_options` - (Optional) Authentication Options. See [Security Options Auth Options ](#security-options-auth-options) below for details. + +`common_security_controls` - (Optional) x-displayName: "Common Security Controls". See [Security Options Common Security Controls ](#security-options-common-security-controls) below for details. + +`geo_filtering` - (Optional) Geo filtering options. See [Security Options Geo Filtering ](#security-options-geo-filtering) below for details. + +`ip_filtering` - (Optional) IP filtering options. See [Security Options Ip Filtering ](#security-options-ip-filtering) below for details. + +`web_app_firewall` - (Optional) Web Application Firewall. See [Security Options Web App Firewall ](#security-options-web-app-firewall) below for details. + +### Mtls Choice No Mtls + +x-displayName: "Disable". + +### Mtls Choice Use Mtls + +x-displayName: "Upload a client authentication certificate specifically for this Origin Pool". + +`tls_certificates` - (Required) mTLS Client Certificate. See [Use Mtls Tls Certificates ](#use-mtls-tls-certificates) below for details. + +### Ocsp Stapling Choice Custom Hash Algorithms + +Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. + +`hash_algorithms` - (Required) Ordered list of hash algorithms to be used. (`List of Strings`). + +### Ocsp Stapling Choice Disable Ocsp Stapling + +This is the default behavior if no choice is selected.. + +### Ocsp Stapling Choice Use System Defaults + +F5XC will try to fetch OCSPResponse with sha256 and sha1 as HashAlgorithm, in that order.. + +### Open Api Validation Rules Metadata + +Common attributes for the rule including name and description.. + +`description` - (Optional) Human readable description. (`String`). + +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +### Open Api Validation Rules Validation Mode + +When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger). + +###### One of the arguments from this list "response_validation_mode_active, skip_response_validation" must be set + +`response_validation_mode_active` - (Optional) Enforce OpenAPI validation processing for this event. See [Response Validation Mode Choice Response Validation Mode Active ](#response-validation-mode-choice-response-validation-mode-active) below for details. + +`skip_response_validation` - (Optional) Skip OpenAPI validation processing for this event (`Bool`). + +###### One of the arguments from this list "validation_mode_active, skip_validation" must be set + +`skip_validation` - (Optional) Skip OpenAPI validation processing for this event (`Bool`). + +`validation_mode_active` - (Optional) Enforce OpenAPI validation processing for this event. See [Validation Mode Choice Validation Mode Active ](#validation-mode-choice-validation-mode-active) below for details. + +### Origin Pool More Origin Options + +x-displayName: "Advanced Configuration". + +`disable_byte_range_request` - (Optional) Choice to enable/disable origin byte range requrests towards origin (`Bool`). + +`websocket_proxy` - (Optional) Option to enable proxying of websocket connections to the origin server (`Bool`). + +### Origin Pool Origin Servers + +List of original servers. + +###### One of the arguments from this list "public_ip, public_name" must be set + +`public_ip` - (Optional) Specify origin server with public IP. See [Choice Public Ip ](#choice-public-ip) below for details. + +`public_name` - (Optional) Specify origin server with public DNS name. See [Choice Public Name ](#choice-public-name) below for details. + +`port` - (Optional) Port the workload can be reached on (`Int`). + +### Origin Pool Public Name + +The DNS name to be used as the host header for the request to the origin server. + +`dns_name` - (Required) DNS Name (`String`). + +`refresh_interval` - (Optional) Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 (`Int`). + +### Oversized Body Choice Oversized Body Fail Validation + +Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb). + +### Oversized Body Choice Oversized Body Skip Validation + +Skip body validation when the body length is too long to verify (default 64Kb). + +### Path Choice Any Path + +Match all paths. + +### Path Match Operator + +A specification of path match. + +###### One of the arguments from this list "Equals, DoesNotEqual, Endswith, DoesNotEndWith, MatchRegex, Contains, DoesNotContain, Startswith, DoesNotStartWith" can be set + +`Contains` - (Optional) Field must contain (`String`). + +`DoesNotContain` - (Optional) Field must not contain (`String`). + +`DoesNotEndWith` - (Optional) Field must not end with (`String`). + +`DoesNotEqual` - (Optional) Field must not equal (`String`). + +`DoesNotStartWith` - (Optional) Field must not start with (`String`). + +`Endswith` - (Optional) Field must end with (`String`). + +`Equals` - (Optional) Field must exactly match (`String`). + +`MatchRegex` - (Optional) Field matches regular expression (`String`). + +`Startswith` - (Optional) Field must start with (`String`). + +### Policy Based Challenge Rule List + +list challenge rules to be used in policy based challenge. + +`rules` - (Optional) these rules can be used to disable challenge or launch a different challenge for requests that match the specified conditions. See [Rule List Rules ](#rule-list-rules) below for details. + +### Policy Choice No Policies + +Do not apply additional rate limiter policies.. + +### Policy Choice Policies + +to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.. + +`policies` - (Required) Ordered list of rate limiter policies.. See [ref](#ref) below for details. + +### Private Key Blindfold Secret Info Internal + +Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Property Validation Settings Choice Property Validation Settings Custom + +Use custom settings with Open API specification validation. + +`headers` - (Optional) Custom settings for headers validation. See [Property Validation Settings Custom Headers ](#property-validation-settings-custom-headers) below for details.(Deprecated) + +`queryParameters` - (Optional) Custom settings for query parameters validation. See [Property Validation Settings Custom QueryParameters ](#property-validation-settings-custom-queryParameters) below for details. + +### Property Validation Settings Choice Property Validation Settings Default + +Keep the default settings of OpenAPI specification validation. + +### Property Validation Settings Custom Headers + +Custom settings for headers validation. + +###### One of the arguments from this list "allow_additional_headers, disallow_additional_headers" must be set + +`allow_additional_headers` - (Optional) Allow extra headers (on top of what specified in the OAS documentation) (`Bool`). + +`disallow_additional_headers` - (Optional) Disallow extra headers (on top of what specified in the OAS documentation) (`Bool`). + +### Property Validation Settings Custom QueryParameters + +Custom settings for query parameters validation. + +###### One of the arguments from this list "allow_additional_parameters, disallow_additional_parameters" must be set + +`allow_additional_parameters` - (Optional) Allow extra query parameters (on top of what specified in the OAS documentation) (`Bool`). + +`disallow_additional_parameters` - (Optional) Disallow extra query parameters (on top of what specified in the OAS documentation) (`Bool`). + +### Query Parameters Operator + +. + +###### One of the arguments from this list "Equals, DoesNotEqual, Endswith, DoesNotEndWith, MatchRegex, Contains, DoesNotContain, Startswith, DoesNotStartWith" can be set + +`Contains` - (Optional) Field must contain (`String`). + +`DoesNotContain` - (Optional) Field must not contain (`String`). + +`DoesNotEndWith` - (Optional) Field must not end with (`String`). + +`DoesNotEqual` - (Optional) Field must not equal (`String`). + +`DoesNotStartWith` - (Optional) Field must not start with (`String`). + +`Endswith` - (Optional) Field must end with (`String`). + +`Equals` - (Optional) Field must exactly match (`String`). + +`MatchRegex` - (Optional) Field matches regular expression (`String`). + +`Startswith` - (Optional) Field must start with (`String`). + +### Rate Limit Rate Limiter + +Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.. + +`burst_multiplier` - (Optional) The maximum burst of requests to accommodate, expressed as a multiple of the rate. (`Int`). + +`total_number` - (Required) The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period. (`Int`). + +`unit` - (Required) Unit for the period per which the rate limit is applied. (`String`). + +### Rate Limit Choice Api Rate Limit + +Define rate limiting for one or more API endpoints. + +`api_endpoint_rules` - (Optional) For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.. See [Api Rate Limit Api Endpoint Rules ](#api-rate-limit-api-endpoint-rules) below for details. + +###### One of the arguments from this list "custom_ip_allowed_list, bypass_rate_limiting_rules, no_ip_allowed_list, ip_allowed_list" must be set + +`bypass_rate_limiting_rules` - (Optional) This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.. See [Ip Allowed List Choice Bypass Rate Limiting Rules ](#ip-allowed-list-choice-bypass-rate-limiting-rules) below for details. + +`custom_ip_allowed_list` - (Optional) IP Allowed list using existing ip_prefix_set objects.. See [Ip Allowed List Choice Custom Ip Allowed List ](#ip-allowed-list-choice-custom-ip-allowed-list) below for details. + +`ip_allowed_list` - (Optional) List of IP(s) for which rate limiting will be disabled.. See [Ip Allowed List Choice Ip Allowed List ](#ip-allowed-list-choice-ip-allowed-list) below for details. + +`no_ip_allowed_list` - (Optional) There is no ip allowed list for rate limiting, all clients go through rate limiting. (`Bool`). + +`server_url_rules` - (Optional) For matching also specific endpoints you can use the API endpoint rules set bellow.. See [Api Rate Limit Server Url Rules ](#api-rate-limit-server-url-rules) below for details. + +### Rate Limit Choice Disable Rate Limit + +Rate limiting is not currently enabled for this load balancer. + +### Rate Limit Choice Rate Limit + +Define custom rate limiting parameters for this load balancer. + +###### One of the arguments from this list "no_ip_allowed_list, ip_allowed_list, custom_ip_allowed_list" must be set + +`custom_ip_allowed_list` - (Optional) IP Allowed list using existing ip_prefix_set objects.. See [Ip Allowed List Choice Custom Ip Allowed List ](#ip-allowed-list-choice-custom-ip-allowed-list) below for details. + +`ip_allowed_list` - (Optional) List of IP(s) for which rate limiting will be disabled.. See [Ip Allowed List Choice Ip Allowed List ](#ip-allowed-list-choice-ip-allowed-list) below for details. + +`no_ip_allowed_list` - (Optional) There is no ip allowed list for rate limiting, all clients go through rate limiting. (`Bool`). + +###### One of the arguments from this list "no_policies, policies" must be set + +`no_policies` - (Optional) Do not apply additional rate limiter policies. (`Bool`). + +`policies` - (Optional) to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.. See [Policy Choice Policies ](#policy-choice-policies) below for details. + +`rate_limiter` - (Optional) Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.. See [Rate Limit Rate Limiter ](#rate-limit-rate-limiter) below for details. + +### Rate Limiter Choice Inline Rate Limiter + +Specify rate values for the rule.. + +###### One of the arguments from this list "use_http_lb_user_id, ref_user_id" must be set + +`ref_user_id` - (Optional) The rules in the user_identification object are evaluated to determine the user identifier to be rate limited.. See [ref](#ref) below for details. + +`use_http_lb_user_id` - (Optional) Defined in HTTP-LB Security Configuration -> User Identifier. (`Bool`). + +`threshold` - (Required) The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period. (`Int`). + +`unit` - (Required) Unit for the period per which the rate limit is applied. (`String`). + +### Ref + +Reference to another volterra object is shown like below + +name - (Required) then name will hold the referred object's(e.g. route's) name. (String). + +namespace - (Optional) then namespace will hold the referred object's(e.g. route's) namespace. (String). + +tenant - (Optional) then tenant will hold the referred object's(e.g. route's) tenant. (String). + +### Request Matcher Cookie Matchers + +Note that all specified cookie matcher predicates must evaluate to true.. + +`invert_matcher` - (Optional) Invert Match of the expression defined (`Bool`). + +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set + +`check_not_present` - (Optional) Check that the cookie is not present. (`Bool`). + +`check_present` - (Optional) Check that the cookie is present. (`Bool`). + +`item` - (Optional) Criteria for matching the values for the cookie. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. + +`presence` - (Optional) Check if the cookie is present or absent. (`Bool`).(Deprecated) + +`name` - (Required) A case-sensitive cookie name. (`String`). + +### Request Matcher Headers + +Note that all specified header predicates must evaluate to true.. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set + +`check_not_present` - (Optional) Check that the header is not present. (`Bool`). + +`check_present` - (Optional) Check that the header is present. (`Bool`). + +`item` - (Optional) Criteria for matching the values for the header. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. + +`presence` - (Optional) Check if the header is present or absent. (`Bool`).(Deprecated) + +`name` - (Required) A case-insensitive HTTP header name. (`String`). + +### Request Matcher Jwt Claims + +Note that this feature only works on LBs with JWT Validation feature enabled.. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +###### One of the arguments from this list "item, check_present, check_not_present" must be set + +`check_not_present` - (Optional) Check that the JWT Claim is not present. (`Bool`). + +`check_present` - (Optional) Check that the JWT Claim is present. (`Bool`). + +`item` - (Optional) Criteria for matching the values for the JWT Claim. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. + +`name` - (Required) JWT claim name. (`String`). + +### Request Matcher Query Params + +Note that all specified query parameter predicates must evaluate to true.. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +`key` - (Required) A case-sensitive HTTP query parameter name. (`String`). + +###### One of the arguments from this list "item, presence, check_present, check_not_present" must be set + +`check_not_present` - (Optional) Check that the query parameter is not present. (`Bool`). + +`check_present` - (Optional) Check that the query parameter is present. (`Bool`). + +`item` - (Optional) criteria in the matcher.. See [Match Item ](#match-item) below for details. + +`presence` - (Optional) Check if the query parameter is present or absent. (`Bool`).(Deprecated) + +### Response Validation Mode Choice Response Validation Mode Active + +Enforce OpenAPI validation processing for this event. + +`response_validation_properties` - (Required) List of properties of the response to validate according to the OpenAPI specification file (a.k.a. swagger) (`List of Strings`). + +###### One of the arguments from this list "enforcement_report, enforcement_block" must be set + +`enforcement_block` - (Optional) Block the response, trigger an API security event (`Bool`). + +`enforcement_report` - (Optional) Allow the response, trigger an API security event (`Bool`). + +### Response Validation Mode Choice Skip Response Validation + +Skip OpenAPI validation processing for this event. + +### Rule Expression List Cache Rule Expression + +The Cache Rule Expression Terms that are ANDed. + +`cache_headers` - (Optional) Configure cache rule headers to match the criteria. See [Cache Rule Expression Cache Headers ](#cache-rule-expression-cache-headers) below for details. + +`cookie_matcher` - (Optional) Note that all specified cookie matcher predicates must evaluate to true.. See [Cache Rule Expression Cookie Matcher ](#cache-rule-expression-cookie-matcher) below for details. + +`path_match` - (Optional) URI path of route. See [Cache Rule Expression Path Match ](#cache-rule-expression-path-match) below for details. + +`query_parameters` - (Optional) List of (key, value) query parameters. See [Cache Rule Expression Query Parameters ](#cache-rule-expression-query-parameters) below for details. + +### Rule List Rules + +these rules can be used to disable challenge or launch a different challenge for requests that match the specified conditions. + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Rules Metadata ](#rules-metadata) below for details. + +`spec` - (Required) Specification for the rule including match predicates and actions.. See [Rules Spec ](#rules-spec) below for details. + +### Rules Metadata + +Common attributes for the rule including name and description.. + +`description` - (Optional) Human readable description. (`String`). + +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +### Rules Spec + +Specification for the rule including match predicates and actions.. + +`arg_matchers` - (Optional)arg_matchers. See [Spec Arg Matchers ](#spec-arg-matchers) below for details. + +###### One of the arguments from this list "asn_list, asn_matcher, any_asn" can be set + +`any_asn` - (Optional)any_asn (`Bool`). + +`asn_list` - (Optional)asn_list. See [Asn Choice Asn List ](#asn-choice-asn-list) below for details. + +`asn_matcher` - (Optional)asn_matcher. See [Asn Choice Asn Matcher ](#asn-choice-asn-matcher) below for details. + +`body_matcher` - (Optional)body_matcher. See [Spec Body Matcher ](#spec-body-matcher) below for details. + +###### One of the arguments from this list "disable_challenge, enable_javascript_challenge, enable_captcha_challenge" must be set + +`disable_challenge` - (Optional) Disable the challenge type selected in PolicyBasedChallenge (`Bool`). + +`enable_captcha_challenge` - (Optional) Enable captcha challenge (`Bool`). + +`enable_javascript_challenge` - (Optional) Enable javascript challenge (`Bool`). + +###### One of the arguments from this list "client_name, client_selector, client_name_matcher, any_client" can be set + +`any_client` - (Optional)any_client (`Bool`). + +`client_name` - (Optional)client_name (`String`).(Deprecated) + +`client_name_matcher` - (Optional)client_name_matcher. See [Client Choice Client Name Matcher ](#client-choice-client-name-matcher) below for details.(Deprecated) + +`client_selector` - (Optional)client_selector. See [Client Choice Client Selector ](#client-choice-client-selector) below for details. + +`cookie_matchers` - (Optional)cookie_matchers. See [Spec Cookie Matchers ](#spec-cookie-matchers) below for details. + +`domain_matcher` - (Optional)domain_matcher. See [Spec Domain Matcher ](#spec-domain-matcher) below for details. + +`expiration_timestamp` - (Optional)expiration_timestamp (`String`). + +`headers` - (Optional)headers. See [Spec Headers ](#spec-headers) below for details. + +`http_method` - (Optional)http_method. See [Spec Http Method ](#spec-http-method) below for details. + +###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher" can be set + +`any_ip` - (Optional)any_ip (`Bool`). + +`ip_matcher` - (Optional)ip_matcher. See [Ip Choice Ip Matcher ](#ip-choice-ip-matcher) below for details. + +`ip_prefix_list` - (Optional)ip_prefix_list. See [Ip Choice Ip Prefix List ](#ip-choice-ip-prefix-list) below for details. + +`path` - (Optional)path. See [Spec Path ](#spec-path) below for details. + +`query_params` - (Optional)query_params. See [Spec Query Params ](#spec-query-params) below for details. + +`tls_fingerprint_matcher` - (Optional)tls_fingerprint_matcher. See [Spec Tls Fingerprint Matcher ](#spec-tls-fingerprint-matcher) below for details. + +### Samesite Ignore Samesite + +Ignore Samesite attribute. + +### Samesite Samesite Lax + +Add Samesite attribute with Lax. Means that the cookie is not sent on cross-site requests. + +### Samesite Samesite None + +Add Samesite attribute with None. Means that the browser sends the cookie with both cross-site and same-site requests. + +### Samesite Samesite Strict + +Add Samesite attribute with Strict. Means that the browser sends the cookie only for same-site requests. + +### Secret Info Oneof Blindfold Secret Info + +Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Secret Info Oneof Clear Secret Info + +Clear Secret is used for the secrets that are not encrypted. + +`provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +`url` - (Required) When asked for this secret, caller will get Secret bytes after Base64 decoding. (`String`). + +### Secret Info Oneof Vault Secret Info + +Vault Secret is used for the secrets managed by Hashicorp Vault. + +`key` - (Optional) If not provided entire secret will be returned. (`String`). + +`location` - (Required) Path to secret in Vault. (`String`). + +`provider` - (Required) Name of the Secret Management Access object that contains information about the backend Vault. (`String`). + +`secret_encoding` - (Optional) This field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault. (`String`). + +`version` - (Optional) If not provided latest version will be returned. (`Int`). + +### Secret Info Oneof Wingman Secret Info + +Secret is given as bootstrap secret in F5XC Security Sidecar. + +`name` - (Required) Name of the secret. (`String`). + +### Secret Key Blindfold Secret Info Internal + +Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Secret Value Blindfold Secret Info Internal + +Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Secure Add Secure + +x-displayName: "Add". + +### Secure Ignore Secure + +x-displayName: "Ignore". + +### Security Options Api Protection + +x-displayName: "API Protection". + +###### One of the arguments from this list "disable_api_definition, api_specification, api_specification_on_cache_miss" must be set + +`api_specification` - (Optional) Specify API definition and OpenAPI Validation. See [Api Definition Choice Api Specification ](#api-definition-choice-api-specification) below for details. + +`api_specification_on_cache_miss` - (Optional) Enable API definition and OpenAPI Validation only on cache miss in this distribution. See [Api Definition Choice Api Specification On Cache Miss ](#api-definition-choice-api-specification-on-cache-miss) below for details. + +`disable_api_definition` - (Optional) API Definition is not currently used for this load balancer (`Bool`). + +###### One of the arguments from this list "enable_api_discovery, disable_api_discovery, api_discovery_on_cache_miss" must be set + +`api_discovery_on_cache_miss` - (Optional) Enable api discovery only on cache miss in this distribution. See [Api Discovery Choice Api Discovery On Cache Miss ](#api-discovery-choice-api-discovery-on-cache-miss) below for details. + +`disable_api_discovery` - (Optional) Disable api discovery for this distribution (`Bool`). + +`enable_api_discovery` - (Optional) Enable api discovery for all requests in this distribution. See [Api Discovery Choice Enable Api Discovery ](#api-discovery-choice-enable-api-discovery) below for details. + +`api_protection_rules` - (Optional) Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.. See [Api Protection Api Protection Rules ](#api-protection-api-protection-rules) below for details. + +`jwt_validation` - (Optional) tokens or tokens that are not yet valid.. See [Api Protection Jwt Validation ](#api-protection-jwt-validation) below for details. + +### Security Options Auth Options + +Authentication Options. + +###### One of the arguments from this list "disable_auth, jwt, custom" can be set + +`custom` - (Optional) Enable Custom Authentication. See [Auth Options Custom ](#auth-options-custom) below for details. + +`disable_auth` - (Optional) No Authentication (`Bool`). + +`jwt` - (Optional) Enable JWT Authentication. See [Auth Options Jwt ](#auth-options-jwt) below for details. + +### Security Options Common Security Controls + +x-displayName: "Common Security Controls". + +`blocked_clients` - (Optional) Define rules to block IP Prefixes or AS numbers.. See [Common Security Controls Blocked Clients ](#common-security-controls-blocked-clients) below for details. + +###### One of the arguments from this list "policy_based_challenge, no_challenge, enable_challenge, challenge_on_cache_miss, js_challenge, captcha_challenge" must be set + +`captcha_challenge` - (Optional) Configure Captcha challenge on this load balancer. See [Challenge Type Captcha Challenge ](#challenge-type-captcha-challenge) below for details. + +`challenge_on_cache_miss` - (Optional) Configure auto mitigation i.e risk based challenges for malicious users only on cache miss in this load balancer. See [Challenge Type Challenge On Cache Miss ](#challenge-type-challenge-on-cache-miss) below for details. + +`enable_challenge` - (Optional) Configure auto mitigation i.e risk based challenges for malicious users for this load balancer. See [Challenge Type Enable Challenge ](#challenge-type-enable-challenge) below for details. + +`js_challenge` - (Optional) Configure JavaScript challenge on this load balancer. See [Challenge Type Js Challenge ](#challenge-type-js-challenge) below for details. + +`no_challenge` - (Optional) No challenge is enabled for this load balancer (`Bool`). + +`policy_based_challenge` - (Optional) Specifies the settings for policy rule based challenge. See [Challenge Type Policy Based Challenge ](#challenge-type-policy-based-challenge) below for details. + +`cors_policy` - (Optional) resources from a server at a different origin. See [Common Security Controls Cors Policy ](#common-security-controls-cors-policy) below for details. + +###### One of the arguments from this list "disable_ip_reputation, enable_ip_reputation, ip_reputation_on_cache_miss" can be set + +`disable_ip_reputation` - (Optional) No IP reputation configured this distribution (`Bool`). + +`enable_ip_reputation` - (Optional) Enable IP reputation for all requests in this distribution. See [Ip Reputation Choice Enable Ip Reputation ](#ip-reputation-choice-enable-ip-reputation) below for details. + +`ip_reputation_on_cache_miss` - (Optional) Enable IP reputation only on cache miss in this distribution. See [Ip Reputation Choice Ip Reputation On Cache Miss ](#ip-reputation-choice-ip-reputation-on-cache-miss) below for details. + +###### One of the arguments from this list "disable_malicious_user_detection, enable_malicious_user_detection, malicious_user_detection_on_cache_miss" must be set + +`disable_malicious_user_detection` - (Optional) Disable malicious user detection for this distribution (`Bool`). + +`enable_malicious_user_detection` - (Optional) Enable malicious user detection for all requests in this distribution (`Bool`). + +`malicious_user_detection_on_cache_miss` - (Optional) Enable malicious user detection only on cache miss in this distribution (`Bool`). + +###### One of the arguments from this list "api_rate_limit, rate_limit, disable_rate_limit" must be set + +`api_rate_limit` - (Optional) Define rate limiting for one or more API endpoints. See [Rate Limit Choice Api Rate Limit ](#rate-limit-choice-api-rate-limit) below for details. + +`disable_rate_limit` - (Optional) Rate limiting is not currently enabled for this load balancer (`Bool`). + +`rate_limit` - (Optional) Define custom rate limiting parameters for this load balancer. See [Rate Limit Choice Rate Limit ](#rate-limit-choice-rate-limit) below for details. + +###### One of the arguments from this list "active_service_policies, service_policies_from_namespace, no_service_policies" must be set + +`active_service_policies` - (Optional) Apply the specified list of service policies and bypass the namespace service policy set. See [Service Policy Choice Active Service Policies ](#service-policy-choice-active-service-policies) below for details. + +`no_service_policies` - (Optional) Do not apply any service policies i.e. bypass the namespace service policy set (`Bool`). + +`service_policies_from_namespace` - (Optional) Apply the active service policies configured as part of the namespace service policy set (`Bool`). + +`trusted_clients` - (Optional) Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.. See [Common Security Controls Trusted Clients ](#common-security-controls-trusted-clients) below for details. + +###### One of the arguments from this list "user_id_client_ip, user_identification" must be set + +`user_id_client_ip` - (Optional) Use the Client IP address as the user identifier. (`Bool`). + +`user_identification` - (Optional) The rules in the user_identification object are evaluated to determine the user identifier.. See [ref](#ref) below for details. + +### Security Options Geo Filtering + +Geo filtering options. + +###### One of the arguments from this list "allow_list, block_list" can be set + +`allow_list` - (Optional) Allow list of countries. See [Geo Filtering Type Allow List ](#geo-filtering-type-allow-list) below for details. + +`block_list` - (Optional) Block list of countries. See [Geo Filtering Type Block List ](#geo-filtering-type-block-list) below for details. + +### Security Options Ip Filtering + +IP filtering options. + +###### One of the arguments from this list "allow_list, block_list" can be set + +`allow_list` - (Optional) Allow list of ip prefixes. See [Ip Filtering Type Allow List ](#ip-filtering-type-allow-list) below for details. + +`block_list` - (Optional) Block list of ip prefixes. See [Ip Filtering Type Block List ](#ip-filtering-type-block-list) below for details. + +### Security Options Web App Firewall + +Web Application Firewall. + +`csrf_policy` - (Optional) Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).. See [Web App Firewall Csrf Policy ](#web-app-firewall-csrf-policy) below for details. + +`data_guard_rules` - (Optional) Note: App Firewall should be enabled, to use Data Guard feature.. See [Web App Firewall Data Guard Rules ](#web-app-firewall-data-guard-rules) below for details. + +`graphql_rules` - (Optional) queries and prevent GraphQL tailored attacks.. See [Web App Firewall Graphql Rules ](#web-app-firewall-graphql-rules) below for details. + +`protected_cookies` - (Optional) Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection.. See [Web App Firewall Protected Cookies ](#web-app-firewall-protected-cookies) below for details. + +###### One of the arguments from this list "disable_waf, app_firewall, app_firewall_on_cache_miss" must be set + +`app_firewall` - (Optional) Enable WAF configuration for all requests in this distribution. See [ref](#ref) below for details. + +`app_firewall_on_cache_miss` - (Optional) Enable WAF configuration only on cache miss in this distribution. See [ref](#ref) below for details. + +`disable_waf` - (Optional) No WAF configuration for this load balancer (`Bool`). + +`waf_exclusion_rules` - (Optional) When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated.. See [Web App Firewall Waf Exclusion Rules ](#web-app-firewall-waf-exclusion-rules) below for details. + +### Server Url Rules Client Matcher + +Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. + +###### One of the arguments from this list "ip_threat_category_list, client_selector, any_client" must be set + +`any_client` - (Optional) Any Client (`Bool`). + +`client_selector` - (Optional) The predicate evaluates to true if the expressions in the label selector are true for the client labels.. See [Client Choice Client Selector ](#client-choice-client-selector) below for details. + +`ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. + +###### One of the arguments from this list "asn_matcher, any_ip, ip_prefix_list, ip_matcher, asn_list" must be set + +`any_ip` - (Optional) Any Source IP (`Bool`). + +`asn_list` - (Optional) The predicate evaluates to true if the origin ASN is present in the ASN list.. See [Ip Asn Choice Asn List ](#ip-asn-choice-asn-list) below for details. + +`asn_matcher` - (Optional) The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. See [Ip Asn Choice Asn Matcher ](#ip-asn-choice-asn-matcher) below for details. + +`ip_matcher` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.. See [Ip Asn Choice Ip Matcher ](#ip-asn-choice-ip-matcher) below for details. + +`ip_prefix_list` - (Optional) The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.. See [Ip Asn Choice Ip Prefix List ](#ip-asn-choice-ip-prefix-list) below for details. + +`tls_fingerprint_matcher` - (Optional) The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.. See [Client Matcher Tls Fingerprint Matcher ](#client-matcher-tls-fingerprint-matcher) below for details. + +### Server Url Rules Request Matcher + +Conditions related to the request, such as query parameters, headers, etc.. + +`cookie_matchers` - (Optional) Note that all specified cookie matcher predicates must evaluate to true.. See [Request Matcher Cookie Matchers ](#request-matcher-cookie-matchers) below for details. + +`headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. + +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. + +`query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. + +### Server Validation Choice Skip Server Verification + +Skip origin server verification. + +### Server Validation Choice Use Server Verification + +Perform origin server verification using the provided Root CA Certificate. + +###### One of the arguments from this list "trusted_ca_url, trusted_ca" must be set + +`trusted_ca` - (Optional) Select/Add a Root CA Certificate object to associate with this Origin Pool for verification of server's certificate. See [ref](#ref) below for details. + +`trusted_ca_url` - (Optional) Upload a Root CA Certificate specifically for this Origin Pool for verification of server's certificate (`String`). + +### Server Validation Choice Volterra Trusted Ca + +Perform origin server verification using F5XC Default Root CA Certificate. + +### Service Policy Choice Active Service Policies + +Apply the specified list of service policies and bypass the namespace service policy set. + +`policies` - (Required) If all policies are evaluated and none match, then the request will be denied by default.. See [ref](#ref) below for details. + +### Service Policy Choice No Service Policies + +Do not apply any service policies i.e. bypass the namespace service policy set. -### Query Parameters Operator +### Service Policy Choice Service Policies From Namespace -. +Apply the active service policies configured as part of the namespace service policy set. -###### One of the arguments from this list "Equals, Contains, DoesNotStartWith, DoesNotEndWith, MatchRegex, DoesNotEqual, DoesNotContain, Startswith, Endswith" can be set +### Sni Choice Disable Sni -`Contains` - (Optional) Field must contain (`String`). +Do not use SNI.. -`DoesNotContain` - (Optional) Field must not contain (`String`). +### Sni Choice Use Host Header As Sni -`DoesNotEndWith` - (Optional) Field must not end with (`String`). +Use the host header as SNI. The host header value is extracted after any configured rewrites have been applied.. -`DoesNotEqual` - (Optional) Field must not equal (`String`). +### Spec Arg Matchers -`DoesNotStartWith` - (Optional) Field must not start with (`String`). +arg_matchers. -`Endswith` - (Optional) Field must end with (`String`). +`invert_matcher` - (Optional) Invert Match of the expression defined (`Bool`). -`Equals` - (Optional) Field must exactly match (`String`). +###### One of the arguments from this list "item, presence, check_present, check_not_present" must be set -`MatchRegex` - (Optional) Field matches regular expression (`String`). +`check_not_present` - (Optional) Check that the argument is not present. (`Bool`). -`Startswith` - (Optional) Field must start with (`String`). +`check_present` - (Optional) Check that the argument is present. (`Bool`). -### Ref +`item` - (Optional) Criteria for matching the values for the Arg. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. -Reference to another volterra object is shown like below +`presence` - (Optional) Check if the arg is present or absent. (`Bool`).(Deprecated) -name - (Required) then name will hold the referred object's(e.g. route's) name. (String). +`name` - (Required) A case-sensitive JSON path in the HTTP request body. (`String`). -namespace - (Optional) then namespace will hold the referred object's(e.g. route's) namespace. (String). +### Spec Body Matcher -tenant - (Optional) then tenant will hold the referred object's(e.g. route's) tenant. (String). +body_matcher. -### Rule Expression List Cache Rule Expression +`exact_values` - (Optional) A list of exact values to match the input against. (`String`). -The Cache Rule Expression Terms that are ANDed. +`regex_values` - (Optional) A list of regular expressions to match the input against. (`String`). -`cache_headers` - (Optional) Configure cache rule headers to match the criteria. See [Cache Rule Expression Cache Headers ](#cache-rule-expression-cache-headers) below for details. +`transformers` - (Optional) An ordered list of transformers (starting from index 0) to be applied to the path before matching. (`List of Strings`). -`cookie_matcher` - (Optional) Note that all specified cookie matcher predicates must evaluate to true.. See [Cache Rule Expression Cookie Matcher ](#cache-rule-expression-cookie-matcher) below for details. +### Spec Cookie Matchers -`path_match` - (Optional) URI path of route. See [Cache Rule Expression Path Match ](#cache-rule-expression-path-match) below for details. +cookie_matchers. -`query_parameters` - (Optional) List of (key, value) query parameters. See [Cache Rule Expression Query Parameters ](#cache-rule-expression-query-parameters) below for details. +`invert_matcher` - (Optional) Invert Match of the expression defined (`Bool`). -### Secret Info Oneof Blindfold Secret Info +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set -Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. +`check_not_present` - (Optional) Check that the cookie is not present. (`Bool`). -`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). +`check_present` - (Optional) Check that the cookie is present. (`Bool`). -`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). +`item` - (Optional) Criteria for matching the values for the cookie. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. -`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +`presence` - (Optional) Check if the cookie is present or absent. (`Bool`).(Deprecated) -### Secret Info Oneof Clear Secret Info +`name` - (Required) A case-sensitive cookie name. (`String`). -Clear Secret is used for the secrets that are not encrypted. +### Spec Domain Matcher -`provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +domain_matcher. -`url` - (Required) When asked for this secret, caller will get Secret bytes after Base64 decoding. (`String`). +`exact_values` - (Optional) A list of exact values to match the input against. (`String`). -### Secret Info Oneof Vault Secret Info +`regex_values` - (Optional) A list of regular expressions to match the input against. (`String`). -Vault Secret is used for the secrets managed by Hashicorp Vault. +### Spec Headers -`key` - (Optional) If not provided entire secret will be returned. (`String`). +headers. -`location` - (Required) Path to secret in Vault. (`String`). +`invert_matcher` - (Optional) Invert the match result. (`Bool`). -`provider` - (Required) Name of the Secret Management Access object that contains information about the backend Vault. (`String`). +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set -`secret_encoding` - (Optional) This field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault. (`String`). +`check_not_present` - (Optional) Check that the header is not present. (`Bool`). -`version` - (Optional) If not provided latest version will be returned. (`Int`). +`check_present` - (Optional) Check that the header is present. (`Bool`). -### Secret Info Oneof Wingman Secret Info +`item` - (Optional) Criteria for matching the values for the header. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. -Secret is given as bootstrap secret in F5XC Security Sidecar. +`presence` - (Optional) Check if the header is present or absent. (`Bool`).(Deprecated) -`name` - (Required) Name of the secret. (`String`). +`name` - (Required) A case-insensitive HTTP header name. (`String`). -### Secret Key Blindfold Secret Info Internal +### Spec Http Method -Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. +http_method. -`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). +`invert_matcher` - (Optional) Invert the match result. (`Bool`). -`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). +`methods` - (Optional) x-example: "['GET', 'POST', 'DELETE']" (`List of Strings`). -`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +### Spec Path -### Secret Value Blindfold Secret Info Internal +path. -Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. +`exact_values` - (Optional) A list of exact path values to match the input HTTP path against. (`String`). -`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). +`invert_matcher` - (Optional) Invert the match result. (`Bool`). -`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). +`prefix_values` - (Optional) A list of path prefix values to match the input HTTP path against. (`String`). -`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +`regex_values` - (Optional) A list of regular expressions to match the input HTTP path against. (`String`). -### Security Options Auth Options +`suffix_values` - (Optional) A list of path suffix values to match the input HTTP path against. (`String`). -Authentication Options. +`transformers` - (Optional) An ordered list of transformers (starting from index 0) to be applied to the path before matching. (`List of Strings`). -###### One of the arguments from this list "disable_auth, jwt, custom" can be set +### Spec Query Params -`custom` - (Optional) Enable Custom Authenticaiton. See [Auth Options Custom ](#auth-options-custom) below for details. +query_params. -`disable_auth` - (Optional) No Authenticaiton (`Bool`). +`invert_matcher` - (Optional) Invert the match result. (`Bool`). -`jwt` - (Optional) Enable JWT Authenticaiton. See [Auth Options Jwt ](#auth-options-jwt) below for details. +`key` - (Required) A case-sensitive HTTP query parameter name. (`String`). -### Security Options Geo Filtering +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set -Geo filtering options. +`check_not_present` - (Optional) Check that the query parameter is not present. (`Bool`). -###### One of the arguments from this list "allow_list, block_list" can be set +`check_present` - (Optional) Check that the query parameter is present. (`Bool`). -`allow_list` - (Optional) Allow list of countries. See [Geo Filtering Type Allow List ](#geo-filtering-type-allow-list) below for details. +`item` - (Optional) criteria in the matcher.. See [Match Item ](#match-item) below for details. -`block_list` - (Optional) Block list of countries. See [Geo Filtering Type Block List ](#geo-filtering-type-block-list) below for details. +`presence` - (Optional) Check if the query parameter is present or absent. (`Bool`).(Deprecated) -### Security Options Ip Filtering +### Spec Tls Fingerprint Matcher -IP filtering options. +tls_fingerprint_matcher. -###### One of the arguments from this list "block_list, allow_list" can be set +`classes` - (Optional) A list of known classes of TLS fingerprints to match the input TLS JA3 fingerprint against. (`List of Strings`). -`allow_list` - (Optional) Allow list of ip prefixes. See [Ip Filtering Type Allow List ](#ip-filtering-type-allow-list) below for details. +`exact_values` - (Optional) A list of exact TLS JA3 fingerprints to match the input TLS JA3 fingerprint against. (`String`). -`block_list` - (Optional) Block list of ip prefixes. See [Ip Filtering Type Block List ](#ip-filtering-type-block-list) below for details. +`excluded_values` - (Optional) or more known TLS fingerprint classes in the enclosing matcher. (`String`). -### Server Validation Choice Skip Server Verification +### Target All Endpoint -Skip origin server verification. +Validation will be performed for all requests on this LB. -### Server Validation Choice Use Server Verification +### Target Api Groups -Perform origin server verification using the provided Root CA Certificate. +Validation will be performed for the endpoints mentioned in the API Groups. -###### One of the arguments from this list "trusted_ca_url, trusted_ca" must be set +`api_groups` - (Required) x-required (`String`). -`trusted_ca` - (Optional) Select/Add a Root CA Certificate object to associate with this Origin Pool for verification of server's certificate. See [ref](#ref) below for details. +### Target Base Paths -`trusted_ca_url` - (Optional) Upload a Root CA Certificate specifically for this Origin Pool for verification of server's certificate (`String`). +Validation will be performed for selected path prefixes. -### Server Validation Choice Volterra Trusted Ca +`base_paths` - (Required) x-required (`String`). -Perform origin server verification using F5XC Default Root CA Certificate. +### Temporary Blocking Parameters Choice Default Temporary Blocking Parameters -### Sni Choice Disable Sni +Use default parameters. -Do not use SNI.. +### Temporary Blocking Parameters Choice Temporary User Blocking -### Sni Choice Use Host Header As Sni +Specifies configuration for temporary user blocking resulting from malicious user detection. -Use the host header as SNI. The host header value is extracted after any configured rewrites have been applied.. +`custom_page` - (Optional) E.g. "

Blocked

". Base64 encoded string for this html is "PHA+IFBsZWFzZSBXYWl0IDwvcD4=" (`String`). ### Tls Certificates Private Key @@ -892,7 +2737,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -926,7 +2771,7 @@ Origin servers use TLS. `volterra_trusted_ca` - (Optional) Perform origin server verification using F5XC Default Root CA Certificate (`Bool`). -###### One of the arguments from this list "sni, use_host_header_as_sni, disable_sni" must be set +###### One of the arguments from this list "disable_sni, sni, use_host_header_as_sni" must be set `disable_sni` - (Optional) Do not use SNI. (`Bool`). @@ -958,12 +2803,16 @@ for example, domain.com and *.domain.com - but use different signature algorithm TLS Configuration Parameters. -###### One of the arguments from this list "tls_12_plus, tls_11_plus" must be set +###### One of the arguments from this list "tls_11_plus, tls_12_plus" must be set `tls_11_plus` - (Optional) TLS v1.1+ with PFS ciphers and medium strength crypto algorithms. (`Bool`). `tls_12_plus` - (Optional) TLS v1.2+ with PFS ciphers and strong crypto algorithms. (`Bool`). +### Token Location Bearer Token + +Token is found in Authorization HTTP header with Bearer authentication scheme. + ### Token Source Bearer Token Token is found in the Bearer-Token. @@ -986,6 +2835,16 @@ Token is found in the Query-Param. `key` - (Required) A case-sensitive HTTP query parameter name. (`String`). +### Trusted Clients Metadata + +Common attributes for the rule including name and description.. + +`description` - (Optional) Human readable description. (`String`). + +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + ### Ttl Options Cache Disabled Disable Caching of content from the origin. @@ -1012,7 +2871,7 @@ mTLS Client Certificate. TLS parameters such as min/max TLS version and ciphers. -###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set +###### One of the arguments from this list "custom_security, default_security, medium_security, low_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -1022,6 +2881,168 @@ TLS parameters such as min/max TLS version and ciphers. `medium_security` - (Optional) TLS v1.0+ with PFS ciphers and medium strength crypto algorithms. (`Bool`). +### User Id Choice User Id Client Ip + +Use the Client IP address as the user identifier.. + +### Validate Period Validate Period Disable + +x-displayName: "Disable". + +### Validate Period Validate Period Enable + +x-displayName: "Enable". + +### Validation All Spec Endpoints Fall Through Mode + +Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules). + +###### One of the arguments from this list "fall_through_mode_allow, fall_through_mode_custom" must be set + +`fall_through_mode_allow` - (Optional) Allow any unprotected end point (`Bool`). + +`fall_through_mode_custom` - (Optional) Custom rules for any unprotected end point. See [Fall Through Mode Choice Fall Through Mode Custom ](#fall-through-mode-choice-fall-through-mode-custom) below for details. + +### Validation All Spec Endpoints Settings + +OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement. + +###### One of the arguments from this list "oversized_body_skip_validation, oversized_body_fail_validation" can be set + +`oversized_body_fail_validation` - (Optional) Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb) (`Bool`). + +`oversized_body_skip_validation` - (Optional) Skip body validation when the body length is too long to verify (default 64Kb) (`Bool`). + +###### One of the arguments from this list "property_validation_settings_default, property_validation_settings_custom" can be set + +`property_validation_settings_custom` - (Optional) Use custom settings with Open API specification validation. See [Property Validation Settings Choice Property Validation Settings Custom ](#property-validation-settings-choice-property-validation-settings-custom) below for details. + +`property_validation_settings_default` - (Optional) Keep the default settings of OpenAPI specification validation (`Bool`). + +### Validation All Spec Endpoints Validation Mode + +When a validation mismatch occurs on a request to one of the API Inventory endpoints. + +###### One of the arguments from this list "skip_response_validation, response_validation_mode_active" must be set + +`response_validation_mode_active` - (Optional) Enforce OpenAPI validation processing for this event. See [Response Validation Mode Choice Response Validation Mode Active ](#response-validation-mode-choice-response-validation-mode-active) below for details. + +`skip_response_validation` - (Optional) Skip OpenAPI validation processing for this event (`Bool`). + +###### One of the arguments from this list "validation_mode_active, skip_validation" must be set + +`skip_validation` - (Optional) Skip OpenAPI validation processing for this event (`Bool`). + +`validation_mode_active` - (Optional) Enforce OpenAPI validation processing for this event. See [Validation Mode Choice Validation Mode Active ](#validation-mode-choice-validation-mode-active) below for details. + +### Validation Custom List Fall Through Mode + +Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules). + +###### One of the arguments from this list "fall_through_mode_allow, fall_through_mode_custom" must be set + +`fall_through_mode_allow` - (Optional) Allow any unprotected end point (`Bool`). + +`fall_through_mode_custom` - (Optional) Custom rules for any unprotected end point. See [Fall Through Mode Choice Fall Through Mode Custom ](#fall-through-mode-choice-fall-through-mode-custom) below for details. + +### Validation Custom List Open Api Validation Rules + +x-displayName: "Validation List". + +###### One of the arguments from this list "api_endpoint, base_path, api_group" must be set + +`api_endpoint` - (Optional) The API endpoint (Path + Method) which this validation applies to. See [Condition Type Choice Api Endpoint ](#condition-type-choice-api-endpoint) below for details. + +`api_group` - (Optional) The API group which this validation applies to (`String`). + +`base_path` - (Optional) The base path which this validation applies to (`String`). + +###### One of the arguments from this list "any_domain, specific_domain" must be set + +`any_domain` - (Optional) The rule will apply for all domains. (`Bool`). + +`specific_domain` - (Optional) The rule will apply for a specific domain. (`String`). + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Open Api Validation Rules Metadata ](#open-api-validation-rules-metadata) below for details. + +`validation_mode` - (Required) When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger). See [Open Api Validation Rules Validation Mode ](#open-api-validation-rules-validation-mode) below for details. + +### Validation Custom List Settings + +OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement. + +###### One of the arguments from this list "oversized_body_fail_validation, oversized_body_skip_validation" can be set + +`oversized_body_fail_validation` - (Optional) Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb) (`Bool`). + +`oversized_body_skip_validation` - (Optional) Skip body validation when the body length is too long to verify (default 64Kb) (`Bool`). + +###### One of the arguments from this list "property_validation_settings_default, property_validation_settings_custom" can be set + +`property_validation_settings_custom` - (Optional) Use custom settings with Open API specification validation. See [Property Validation Settings Choice Property Validation Settings Custom ](#property-validation-settings-choice-property-validation-settings-custom) below for details. + +`property_validation_settings_default` - (Optional) Keep the default settings of OpenAPI specification validation (`Bool`). + +### Validation Enforcement Type Enforcement Block + +Block the response, trigger an API security event. + +### Validation Enforcement Type Enforcement Report + +Allow the response, trigger an API security event. + +### Validation Mode Choice Skip Validation + +Skip OpenAPI validation processing for this event. + +### Validation Mode Choice Validation Mode Active + +Enforce OpenAPI validation processing for this event. + +`request_validation_properties` - (Required) List of properties of the request to validate according to the OpenAPI specification file (a.k.a. swagger) (`List of Strings`). + +###### One of the arguments from this list "enforcement_report, enforcement_block" must be set + +`enforcement_block` - (Optional) Block the request, trigger an API security event (`Bool`). + +`enforcement_report` - (Optional) Allow the request, trigger an API security event (`Bool`). + +### Validation Target Choice Validation All Spec Endpoints + +All other API endpoints would proceed according to "Fall Through Mode". + +`fall_through_mode` - (Required) Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules). See [Validation All Spec Endpoints Fall Through Mode ](#validation-all-spec-endpoints-fall-through-mode) below for details. + +###### One of the arguments from this list "oversized_body_skip_validation, oversized_body_fail_validation" can be set + +`oversized_body_fail_validation` - (Optional) Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb) (`Bool`).(Deprecated) + +`oversized_body_skip_validation` - (Optional) Skip body validation when the body length is too long to verify (default 64Kb) (`Bool`).(Deprecated) + +`settings` - (Optional) OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement. See [Validation All Spec Endpoints Settings ](#validation-all-spec-endpoints-settings) below for details. + +`validation_mode` - (Required) When a validation mismatch occurs on a request to one of the API Inventory endpoints. See [Validation All Spec Endpoints Validation Mode ](#validation-all-spec-endpoints-validation-mode) below for details. + +### Validation Target Choice Validation Custom List + +Any other end-points not listed will act according to "Fall Through Mode". + +`fall_through_mode` - (Required) Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules). See [Validation Custom List Fall Through Mode ](#validation-custom-list-fall-through-mode) below for details. + +`open_api_validation_rules` - (Required) x-displayName: "Validation List". See [Validation Custom List Open Api Validation Rules ](#validation-custom-list-open-api-validation-rules) below for details. + +###### One of the arguments from this list "oversized_body_skip_validation, oversized_body_fail_validation" can be set + +`oversized_body_fail_validation` - (Optional) Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb) (`Bool`).(Deprecated) + +`oversized_body_skip_validation` - (Optional) Skip body validation when the body length is too long to verify (default 64Kb) (`Bool`).(Deprecated) + +`settings` - (Optional) OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement. See [Validation Custom List Settings ](#validation-custom-list-settings) below for details. + +### Validation Target Choice Validation Disabled + +Don't run OpenAPI validation. + ### Value Choice Secret Value Secret Value of the HTTP header.. @@ -1030,7 +3051,7 @@ Secret Value of the HTTP header.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -1040,6 +3061,166 @@ Secret Value of the HTTP header.. `wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) +### Waf Advanced Configuration App Firewall Detection Control + +Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.. + +`exclude_attack_type_contexts` - (Optional) Attack Types to be excluded for the defined match criteria. See [App Firewall Detection Control Exclude Attack Type Contexts ](#app-firewall-detection-control-exclude-attack-type-contexts) below for details. + +`exclude_bot_name_contexts` - (Optional) Bot Names to be excluded for the defined match criteria. See [App Firewall Detection Control Exclude Bot Name Contexts ](#app-firewall-detection-control-exclude-bot-name-contexts) below for details. + +`exclude_signature_contexts` - (Optional) Signature IDs to be excluded for the defined match criteria. See [App Firewall Detection Control Exclude Signature Contexts ](#app-firewall-detection-control-exclude-signature-contexts) below for details. + +`exclude_violation_contexts` - (Optional) Violations to be excluded for the defined match criteria. See [App Firewall Detection Control Exclude Violation Contexts ](#app-firewall-detection-control-exclude-violation-contexts) below for details. + +### Waf Advanced Configuration Waf Skip Processing + +Skip all App Firewall processing for this request. + +### Waf Choice Disable Waf + +No WAF configuration for this load balancer. + +### Waf Exclusion Rules Metadata + +Common attributes for the rule including name and description.. + +`description` - (Optional) Human readable description. (`String`). + +`disable` - (Optional) A value of true will administratively disable the object that corresponds to the containing message. (`Bool`).(Deprecated) + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +### Web App Firewall Csrf Policy + +Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).. + +###### One of the arguments from this list "all_load_balancer_domains, custom_domain_list, disabled" must be set + +`all_load_balancer_domains` - (Optional) Add All load balancer domains to source origin (allow) list. (`Bool`). + +`custom_domain_list` - (Optional) Add one or more domains to source origin (allow) list.. See [Allowed Domains Custom Domain List ](#allowed-domains-custom-domain-list) below for details. + +`disabled` - (Optional) Allow all source origin domains. (`Bool`). + +### Web App Firewall Data Guard Rules + +Note: App Firewall should be enabled, to use Data Guard feature.. + +###### One of the arguments from this list "apply_data_guard, skip_data_guard" must be set + +`apply_data_guard` - (Optional) x-displayName: "Apply" (`Bool`). + +`skip_data_guard` - (Optional) x-displayName: "Skip" (`Bool`). + +###### One of the arguments from this list "any_domain, exact_value, suffix_value" must be set + +`any_domain` - (Optional) Enable Data Guard for any domain (`Bool`). + +`exact_value` - (Optional) Exact domain name (`String`). + +`suffix_value` - (Optional) Suffix of domain name e.g "xyz.com" will match "*.xyz.com" and "xyz.com" (`String`). + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Data Guard Rules Metadata ](#data-guard-rules-metadata) below for details. + +`path` - (Required) URI path matcher.. See [Data Guard Rules Path ](#data-guard-rules-path) below for details. + +### Web App Firewall Graphql Rules + +queries and prevent GraphQL tailored attacks.. + +###### One of the arguments from this list "any_domain, exact_value, suffix_value" must be set + +`any_domain` - (Optional) Enable GraphQL inspection for any domain (`Bool`). + +`exact_value` - (Optional) Exact domain name (`String`). + +`suffix_value` - (Optional) Suffix of domain name e.g "xyz.com" will match "*.xyz.com" and "xyz.com" (`String`). + +`exact_path` - (Required) Specifies the exact path to GraphQL endpoint. Default value is /graphql. (`String`). + +`graphql_settings` - (Optional) GraphQL configuration.. See [Graphql Rules Graphql Settings ](#graphql-rules-graphql-settings) below for details. + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Graphql Rules Metadata ](#graphql-rules-metadata) below for details. + +###### One of the arguments from this list "method_get, method_post" must be set + +`method_get` - (Optional) x-displayName: "GET" (`Bool`). + +`method_post` - (Optional) x-displayName: "POST" (`Bool`). + +### Web App Firewall Protected Cookies + +Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection.. + +###### One of the arguments from this list "disable_tampering_protection, enable_tampering_protection" must be set + +`disable_tampering_protection` - (Optional) x-displayName: "Disable" (`Bool`). + +`enable_tampering_protection` - (Optional) x-displayName: "Enable" (`Bool`). + +###### One of the arguments from this list "add_httponly, ignore_httponly" can be set + +`add_httponly` - (Optional) x-displayName: "Add" (`Bool`). + +`ignore_httponly` - (Optional) x-displayName: "Ignore" (`Bool`). + +###### One of the arguments from this list "ignore_max_age, max_age_value" can be set + +`ignore_max_age` - (Optional) Ignore max age attribute (`Bool`).(Deprecated) + +`max_age_value` - (Optional) Add max age attribute (`Int`).(Deprecated) + +`name` - (Required) Name of the Cookie (`String`). + +###### One of the arguments from this list "ignore_samesite, samesite_strict, samesite_lax, samesite_none" can be set + +`ignore_samesite` - (Optional) Ignore Samesite attribute (`Bool`). + +`samesite_lax` - (Optional) Add Samesite attribute with Lax. Means that the cookie is not sent on cross-site requests (`Bool`). + +`samesite_none` - (Optional) Add Samesite attribute with None. Means that the browser sends the cookie with both cross-site and same-site requests (`Bool`). + +`samesite_strict` - (Optional) Add Samesite attribute with Strict. Means that the browser sends the cookie only for same-site requests (`Bool`). + +###### One of the arguments from this list "ignore_secure, add_secure" can be set + +`add_secure` - (Optional) x-displayName: "Add" (`Bool`). + +`ignore_secure` - (Optional) x-displayName: "Ignore" (`Bool`). + +### Web App Firewall Waf Exclusion Rules + +When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated.. + +###### One of the arguments from this list "any_domain, exact_value, suffix_value" must be set + +`any_domain` - (Optional) Apply this WAF exclusion rule for any domain (`Bool`). + +`exact_value` - (Optional) Exact domain name (`String`). + +`suffix_value` - (Optional) Suffix of domain name e.g "xyz.com" will match "*.xyz.com" and "xyz.com" (`String`). + +`expiration_timestamp` - (Optional) the configuration but is not applied anymore. (`String`). + +`metadata` - (Required) Common attributes for the rule including name and description.. See [Waf Exclusion Rules Metadata ](#waf-exclusion-rules-metadata) below for details. + +`methods` - (Optional) methods to be matched (`List of Strings`). + +###### One of the arguments from this list "any_path, path_prefix, path_regex" must be set + +`any_path` - (Optional) Match all paths (`Bool`). + +`path_prefix` - (Optional) Path prefix to match (e.g. the value / will match on all paths) (`String`). + +`path_regex` - (Optional) Define the regex for the path. For example, the regex ^/.*$ will match on all paths (`String`). + +###### One of the arguments from this list "app_firewall_detection_control, waf_skip_processing" can be set + +`app_firewall_detection_control` - (Optional) Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.. See [Waf Advanced Configuration App Firewall Detection Control ](#waf-advanced-configuration-app-firewall-detection-control) below for details. + +`waf_skip_processing` - (Optional) Skip all App Firewall processing for this request (`Bool`). + Attribute Reference ------------------- diff --git a/docs/resources/volterra_certificate.md b/docs/resources/volterra_certificate.md index a6bf4f95e..861015663 100644 --- a/docs/resources/volterra_certificate.md +++ b/docs/resources/volterra_certificate.md @@ -34,16 +34,8 @@ resource "volterra_certificate" "example" { // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set - vault_secret_info { - key = "key_pem" - - location = "v1/data/vhost_key" - - provider = "vault-vh-provider" - - secret_encoding = "secret_encoding" - - version = "1" + wingman_secret_info { + name = "ChargeBack-API-Key" } } } diff --git a/docs/resources/volterra_cloud_credentials.md b/docs/resources/volterra_cloud_credentials.md index 9ebb888cc..58addfbac 100644 --- a/docs/resources/volterra_cloud_credentials.md +++ b/docs/resources/volterra_cloud_credentials.md @@ -22,27 +22,16 @@ resource "volterra_cloud_credentials" "example" { // One of the arguments from this list "aws_secret_key aws_assume_role azure_pfx_certificate azure_client_secret gcp_cred_file" must be set - aws_secret_key { - access_key = "value" + aws_assume_role { + duration_seconds = "5400" - secret_key { - blindfold_secret_info_internal { - decryption_provider = "value" + // One of the arguments from this list "external_id_is_optional external_id_is_tenant_id custom_external_id" must be set - location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - - store_provider = "value" - } - - secret_encoding_type = "secret_encoding_type" - - // One of the arguments from this list "clear_secret_info wingman_secret_info blindfold_secret_info vault_secret_info" must be set - - clear_secret_info { - provider = "box-provider" - - url = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - } + external_id_is_optional = true + role_arn = "arn:aws:iam::121212121212:role/aws-iam-role-arn" + session_name = "cloud-f5xc-deployment" + session_tags = { + "key1" = "value1" } } } @@ -86,7 +75,7 @@ Secret Access Key for your AWS account. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -228,7 +217,7 @@ Content of Credential File for your GCP account. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_cloud_link.md b/docs/resources/volterra_cloud_link.md index f13c5c52c..8055bb14c 100644 --- a/docs/resources/volterra_cloud_link.md +++ b/docs/resources/volterra_cloud_link.md @@ -31,69 +31,15 @@ resource "volterra_cloud_link" "example" { // One of the arguments from this list "byoc f5xc_managed" must be set - byoc { - connections { - auth_key { - blindfold_secret_info_internal { - decryption_provider = "value" + f5xc_managed {} - location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - - store_provider = "value" - } - - secret_encoding_type = "secret_encoding_type" - - // One of the arguments from this list "wingman_secret_info blindfold_secret_info vault_secret_info clear_secret_info" must be set - - clear_secret_info { - provider = "box-provider" - - url = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - } - } - - bgp_asn = "64512" - - connection_id = "dxcon-a2h48678" - - coordinates { - latitude = "10.0" - - longitude = "20.0" - } - - enable_sitelink = true - - // One of the arguments from this list "ipv4 ipv6" must be set - - ipv4 { - aws_router_peer_address = "10.1.0.0/31" - - router_peer_address = "10.1.0.0/31" - } - jumbo_mtu = true - metadata { - description = "Virtual Host for acmecorp website" - - disable = true - - name = "acmecorp-web" - } - region = "us-east-1" - // One of the arguments from this list "system_generated_name user_assigned_name" must be set - user_assigned_name = "user_assigned_name" - tags = { - "key1" = "value1" - } - virtual_interface_type = "virtual_interface_type" - vlan = "700" - } - } // One of the arguments from this list "auto custom_asn" must be set + auto = true } + // One of the arguments from this list "disabled enabled" must be set + disabled = true } @@ -216,13 +162,13 @@ CloudLink for AWS Cloud. `aws_cred` - (Required) Reference to AWS cloud account credential object used to deploy CloudLink specific object. See [ref](#ref) below for details. -###### One of the arguments from this list "f5xc_managed, byoc" must be set +###### One of the arguments from this list "byoc, f5xc_managed" must be set `byoc` - (Optional) Assumption is that this given AWS account already has direct connect connection provisioned. See [Cloud Link Type Byoc ](#cloud-link-type-byoc) below for details. `f5xc_managed` - (Optional) F5 XC will manage end to end AWS Direct Connect Connection and making it ready to be consumed by the site.. See [Cloud Link Type F5xc Managed ](#cloud-link-type-f5xc-managed) below for details.(Deprecated) -###### One of the arguments from this list "auto, custom_asn" must be set +###### One of the arguments from this list "custom_asn, auto" must be set `auto` - (Optional) F5XC will automatically generate an ASN to create a Direct Connect Gateway (`Bool`).(Deprecated) diff --git a/docs/resources/volterra_cluster.md b/docs/resources/volterra_cluster.md index 7086e8fc7..7de2095a6 100644 --- a/docs/resources/volterra_cluster.md +++ b/docs/resources/volterra_cluster.md @@ -56,7 +56,7 @@ Argument Reference `fallback_policy` - (Optional) metadata defined as default_set (`String`). -`header_transformation_type` - (Optional) Settings to normalize the headers of upstream requests.. See [Header Transformation Type ](#header-transformation-type) below for details. +`header_transformation_type` - (Optional) Settings to normalize the headers of upstream requests.. See [Header Transformation Type ](#header-transformation-type) below for details.(Deprecated) `health_checks` - (Optional) List of references to healthcheck object for this cluster.. See [ref](#ref) below for details. @@ -64,7 +64,7 @@ Argument Reference `auto_http_config` - (Optional) and will use whichever protocol is negotiated by ALPN with the upstream. (`Bool`). -`http1_config` - (Optional) Enable HTTP/1.1 for upstream connections (`Bool`). +`http1_config` - (Optional) Enable HTTP/1.1 for upstream connections. See [Http Protocol Type Http1 Config ](#http-protocol-type-http1-config) below for details. `http2_options` - (Optional) Enable HTTP/2 for upstream connections. See [Http Protocol Type Http2 Options ](#http-protocol-type-http2-options) below for details. @@ -76,6 +76,12 @@ Argument Reference `panic_threshold` - (Optional) all endpoints will be considered for loadbalancing ignoring its health status. (`Int`). +`disable_proxy_protocol` - (Optional) Disable Proxy Protocol for upstream connections (`Bool`). + +`proxy_protocol_v1` - (Optional) Enable Proxy Protocol V1 for upstream connections (`Bool`). + +`proxy_protocol_v2` - (Optional) Enable Proxy Protocol V2 for upstream connections (`Bool`). + `tls_parameters` - (Optional) TLS parameters to access upstream endpoints for this cluster. See [Tls Parameters ](#tls-parameters) below for details. ### Circuit Breaker @@ -102,10 +108,12 @@ allows to apply back pressure on downstream quickly.. Settings to normalize the headers of upstream requests.. -###### One of the arguments from this list "default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set `default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + `preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). `proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). @@ -128,7 +136,7 @@ healthy load balancing set. Outlier detection is a form of passive health checki TLS parameters to access upstream endpoints for this cluster. -###### One of the arguments from this list "disable_sni, sni, use_host_header_as_sni" must be set +###### One of the arguments from this list "sni, use_host_header_as_sni, disable_sni" must be set `disable_sni` - (Optional) Do not use SNI.. See [Sni Choice Disable Sni ](#sni-choice-disable-sni) below for details. @@ -182,7 +190,7 @@ and list of Subject Alt Names for verification. `skip_hostname_verification` - (Optional) is not matched to the connecting hostname (`Bool`). -###### One of the arguments from this list "trusted_ca, trusted_ca_url" must be set +###### One of the arguments from this list "trusted_ca_url, trusted_ca" must be set `trusted_ca` - (Optional) Root CA Certificate. See [Trusted Ca Choice Trusted Ca ](#trusted-ca-choice-trusted-ca) below for details. @@ -196,6 +204,10 @@ and list of Subject Alt Names for verification. Normalize the headers to lower case. +### Header Transformation Choice Legacy Header Transformation + +Use old header transformation if configured earlier. + ### Header Transformation Choice Preserve Case Header Transformation Preserves the original case of headers without any modifications.. @@ -204,6 +216,26 @@ Preserves the original case of headers without any modifications.. For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”. +### Http1 Config Header Transformation + +the stateful formatter will take effect, and the stateless formatter will be disregarded.. + +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set + +`default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). + +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + +`preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). + +`proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). + +### Http Protocol Type Http1 Config + +Enable HTTP/1.1 for upstream connections. + +`header_transformation` - (Optional) the stateful formatter will take effect, and the stateless formatter will be disregarded.. See [Http1 Config Header Transformation ](#http1-config-header-transformation) below for details. + ### Http Protocol Type Http2 Options Enable HTTP/2 for upstream connections. @@ -298,7 +330,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -342,7 +374,7 @@ Common TLS parameters used in upstream connections. Root CA Certificate. -`trusted_ca_list` - (Optional) Reference to Root CA Certificate. See [ref](#ref) below for details.(Deprecated) +`trusted_ca_list` - (Optional) Reference to Root CA Certificate. See [ref](#ref) below for details. Attribute Reference ------------------- diff --git a/docs/resources/volterra_container_registry.md b/docs/resources/volterra_container_registry.md index dfdbc79ee..22889dded 100644 --- a/docs/resources/volterra_container_registry.md +++ b/docs/resources/volterra_container_registry.md @@ -33,12 +33,10 @@ resource "volterra_container_registry" "example" { // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set - blindfold_secret_info { - decryption_provider = "value" - - location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" + clear_secret_info { + provider = "box-provider" - store_provider = "value" + url = "string:///U2VjcmV0SW5mb3JtYXRpb24=" } } @@ -83,7 +81,7 @@ Password for the above username. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_discovery.md b/docs/resources/volterra_discovery.md index 3c09a804c..1cc642d68 100644 --- a/docs/resources/volterra_discovery.md +++ b/docs/resources/volterra_discovery.md @@ -21,13 +21,14 @@ resource "volterra_discovery" "example" { namespace = "staging" // One of the arguments from this list "no_cluster_id cluster_id" must be set + no_cluster_id = true // One of the arguments from this list "discovery_k8s discovery_consul" must be set discovery_k8s { access_info { - // One of the arguments from this list "connection_info in_cluster kubeconfig_url" must be set + // One of the arguments from this list "kubeconfig_url connection_info in_cluster" must be set kubeconfig_url { blindfold_secret_info_internal { @@ -42,21 +43,27 @@ resource "volterra_discovery" "example" { // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set - blindfold_secret_info { - decryption_provider = "value" + vault_secret_info { + key = "key_pem" - location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" + location = "v1/data/vhost_key" - store_provider = "value" + provider = "vault-vh-provider" + + secret_encoding = "secret_encoding" + + version = "1" } } // One of the arguments from this list "isolated reachable" must be set + isolated = true } publish_info { - // One of the arguments from this list "dns_delegation disable publish publish_fqdns" must be set + // One of the arguments from this list "disable publish publish_fqdns dns_delegation" must be set + disable = true } } @@ -168,7 +175,7 @@ Provide kubeconfig file to connect to K8s cluster. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -234,7 +241,7 @@ Configuration to publish VIPs. Credentials can be kubeconfig file or mTLS using PKI certificates. -###### One of the arguments from this list "kubeconfig_url, connection_info, in_cluster" must be set +###### One of the arguments from this list "connection_info, in_cluster, kubeconfig_url" must be set `connection_info` - (Optional) Provide API server access details (endpoint and TLS parameters). See [Config Type Connection Info ](#config-type-connection-info) below for details. @@ -242,7 +249,7 @@ Credentials can be kubeconfig file or mTLS using PKI certificates. `kubeconfig_url` - (Optional) Provide kubeconfig file to connect to K8s cluster. See [Config Type Kubeconfig Url ](#config-type-kubeconfig-url) below for details. -###### One of the arguments from this list "reachable, isolated" must be set +###### One of the arguments from this list "isolated, reachable" must be set `isolated` - (Optional) discovered when Kubernetes cluster is in InCluster mode. (`Bool`). @@ -270,7 +277,7 @@ F5XC Secret. URL for password, needs to be fetched from this path. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -482,7 +489,7 @@ The data may be optionally secured using BlindFold.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_dns_domain.md b/docs/resources/volterra_dns_domain.md index 7ba44a4b6..2715655f7 100644 --- a/docs/resources/volterra_dns_domain.md +++ b/docs/resources/volterra_dns_domain.md @@ -20,7 +20,8 @@ resource "volterra_dns_domain" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "route53 verification_only volterra_managed" must be set + // One of the arguments from this list "volterra_managed route53 verification_only" must be set + volterra_managed = true } diff --git a/docs/resources/volterra_dns_lb_health_check.md b/docs/resources/volterra_dns_lb_health_check.md index 8683504b0..f1bbe26a7 100644 --- a/docs/resources/volterra_dns_lb_health_check.md +++ b/docs/resources/volterra_dns_lb_health_check.md @@ -20,9 +20,9 @@ resource "volterra_dns_lb_health_check" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "http_health_check tcp_health_check udp_health_check icmp_health_check https_health_check tcp_hex_health_check" must be set + // One of the arguments from this list "https_health_check tcp_hex_health_check http_health_check tcp_health_check udp_health_check icmp_health_check" must be set - http_health_check { + https_health_check { health_check_port = "80" receive = "HTTP/1" diff --git a/docs/resources/volterra_dns_lb_pool.md b/docs/resources/volterra_dns_lb_pool.md index b8abf2031..55cf4ff27 100644 --- a/docs/resources/volterra_dns_lb_pool.md +++ b/docs/resources/volterra_dns_lb_pool.md @@ -21,18 +21,13 @@ resource "volterra_dns_lb_pool" "example" { namespace = "staging" load_balancing_mode = ["load_balancing_mode"] - // One of the arguments from this list "cname_pool mx_pool srv_pool a_pool aaaa_pool" must be set - - a_pool { - // One of the arguments from this list "disable_health_check health_check" must be set - disable_health_check = true + // One of the arguments from this list "aaaa_pool cname_pool mx_pool srv_pool a_pool" must be set + mx_pool { max_answers = "1" members { - disable = true - - ip_endpoint = "8.8.8.8" + domain = "mail.example.com" name = "web server 1" @@ -41,8 +36,10 @@ resource "volterra_dns_lb_pool" "example" { ratio = "10" } } + // One of the arguments from this list "use_rrset_ttl ttl" must be set - ttl = "3600" + + use_rrset_ttl = true } ``` diff --git a/docs/resources/volterra_dns_load_balancer.md b/docs/resources/volterra_dns_load_balancer.md index c7a3f2b4a..a120b4113 100644 --- a/docs/resources/volterra_dns_load_balancer.md +++ b/docs/resources/volterra_dns_load_balancer.md @@ -31,14 +31,12 @@ resource "volterra_dns_load_balancer" "example" { tenant = "acmecorp" } - // One of the arguments from this list "geo_location_label_selector geo_location_set asn_list asn_matcher" must be set - - asn_matcher { - asn_sets { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } + // One of the arguments from this list "ip_prefix_set geo_location_label_selector geo_location_set asn_list asn_matcher ip_prefix_list" must be set + + geo_location_set { + name = "test1" + namespace = "staging" + tenant = "acmecorp" } score = "50" } @@ -100,7 +98,7 @@ Do not perform any load-balancing. Instead return NXDOMAIN. The rule evaluates to true if the origin ASN is present in the ASN list.. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Client Choice Asn Matcher @@ -110,10 +108,26 @@ The rule evaluates to true if the origin ASN is present in one of the BGP ASN Se ### Client Choice Geo Location Label Selector -with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.. +with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.. `expressions` - (Required) expressions contains the kubernetes style label expression for selections. (`String`). +### Client Choice Ip Prefix List + +IP Prefix list.. + +`invert_match` - (Optional) Invert the match result. (`Bool`). + +`ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). + +### Client Choice Ip Prefix Set + +IP Prefix set.. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +`prefix_sets` - (Required) A list of references to ip_prefix_set objects.. See [ref](#ref) below for details. + ### Ref Reference to another volterra object is shown like below @@ -152,15 +166,19 @@ Rules to perform load balancing. `pool` - (Optional) Use this pool for the Load Balancing.. See [ref](#ref) below for details. -###### One of the arguments from this list "asn_list, asn_matcher, geo_location_label_selector, geo_location_set" must be set +###### One of the arguments from this list "ip_prefix_set, geo_location_label_selector, geo_location_set, asn_list, asn_matcher, ip_prefix_list" must be set `asn_list` - (Optional) The rule evaluates to true if the origin ASN is present in the ASN list.. See [Client Choice Asn List ](#client-choice-asn-list) below for details. -`asn_matcher` - (Optional) The rule evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. See [Client Choice Asn Matcher ](#client-choice-asn-matcher) below for details.(Deprecated) +`asn_matcher` - (Optional) The rule evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.. See [Client Choice Asn Matcher ](#client-choice-asn-matcher) below for details. + +`geo_location_label_selector` - (Optional) with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.. See [Client Choice Geo Location Label Selector ](#client-choice-geo-location-label-selector) below for details. + +`geo_location_set` - (Optional) with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.. See [ref](#ref) below for details. -`geo_location_label_selector` - (Optional) with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.. See [Client Choice Geo Location Label Selector ](#client-choice-geo-location-label-selector) below for details. +`ip_prefix_list` - (Optional) IP Prefix list.. See [Client Choice Ip Prefix List ](#client-choice-ip-prefix-list) below for details. -`geo_location_set` - (Optional) with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.. See [ref](#ref) below for details. +`ip_prefix_set` - (Optional) IP Prefix set.. See [Client Choice Ip Prefix Set ](#client-choice-ip-prefix-set) below for details. `score` - (Optional) When multiple load balancing rules match a query, the one with the highest score is chosen (`Int`). diff --git a/docs/resources/volterra_dns_zone.md b/docs/resources/volterra_dns_zone.md index a6354c13d..5862f610c 100644 --- a/docs/resources/volterra_dns_zone.md +++ b/docs/resources/volterra_dns_zone.md @@ -30,21 +30,18 @@ resource "volterra_dns_zone" "example" { ttl = "3600" - // One of the arguments from this list "aaaa_record ptr_record txt_record lb_record cds_record tlsa_record cname_record mx_record srv_record afsdb_record loc_record caa_record eui48_record sshfp_record eui64_record cert_record dlv_record a_record alias_record ns_record naptr_record ds_record" must be set + // One of the arguments from this list "cert_record alias_record caa_record mx_record txt_record eui48_record eui64_record tlsa_record a_record srv_record lb_record cds_record afsdb_record dlv_record cname_record ds_record sshfp_record aaaa_record ns_record ptr_record naptr_record loc_record" must be set - lb_record { - name = "www or mail or * or ww* or *ab" + a_record { + name = "www or mail or * or corp.web or *.b" - value { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } + values = ["1.1.1.1"] } } dnssec_mode { // One of the arguments from this list "disable enable" must be set + disable = true } @@ -62,17 +59,26 @@ resource "volterra_dns_zone" "example" { ttl = "3600" - // One of the arguments from this list "cname_record mx_record srv_record afsdb_record loc_record tlsa_record caa_record eui48_record sshfp_record dlv_record a_record alias_record ns_record naptr_record ds_record eui64_record cert_record aaaa_record ptr_record txt_record lb_record cds_record" must be set + // One of the arguments from this list "cert_record alias_record caa_record mx_record txt_record eui48_record eui64_record tlsa_record a_record srv_record lb_record cds_record afsdb_record dlv_record cname_record ds_record sshfp_record aaaa_record ns_record ptr_record naptr_record loc_record" must be set + + cert_record { + name = "www or mail or * or ww* or *ab" - ptr_record { - name = "www or mail or * or corp.web or *.b" + values { + algorithm = "3" - values = ["my.example.com"] + cert_key_tag = "3" + + cert_type = "PKIX" + + certificate = "Ab100cFg" + } } } } - // One of the arguments from this list "soa_parameters default_soa_parameters" must be set + // One of the arguments from this list "default_soa_parameters soa_parameters" can be set + default_soa_parameters = true } } @@ -308,7 +314,7 @@ default_rr_set_group. `ttl` - (Optional) x-example: "3600" (`Int`). -###### One of the arguments from this list "ns_record, naptr_record, ds_record, eui64_record, cert_record, dlv_record, a_record, alias_record, txt_record, lb_record, cds_record, aaaa_record, ptr_record, srv_record, afsdb_record, loc_record, tlsa_record, cname_record, mx_record, sshfp_record, caa_record, eui48_record" must be set +###### One of the arguments from this list "cert_record, alias_record, caa_record, mx_record, txt_record, eui48_record, eui64_record, tlsa_record, a_record, srv_record, lb_record, cds_record, afsdb_record, dlv_record, cname_record, ds_record, sshfp_record, aaaa_record, ns_record, ptr_record, naptr_record, loc_record" must be set `a_record` - (Optional) x-displayName: "A". See [Type Record Set A Record ](#type-record-set-a-record) below for details. @@ -400,7 +406,7 @@ Collection of DNS resource record sets. `ttl` - (Optional) x-example: "3600" (`Int`). -###### One of the arguments from this list "txt_record, lb_record, cds_record, aaaa_record, ptr_record, srv_record, afsdb_record, loc_record, tlsa_record, cname_record, mx_record, sshfp_record, caa_record, eui48_record, ns_record, naptr_record, ds_record, eui64_record, cert_record, dlv_record, a_record, alias_record" must be set +###### One of the arguments from this list "cname_record, ds_record, sshfp_record, aaaa_record, ns_record, ptr_record, naptr_record, loc_record, tlsa_record, cert_record, alias_record, caa_record, mx_record, txt_record, eui48_record, eui64_record, a_record, srv_record, lb_record, cds_record, afsdb_record, dlv_record" must be set `a_record` - (Optional) x-displayName: "A". See [Type Record Set A Record ](#type-record-set-a-record) below for details. @@ -454,7 +460,7 @@ x-displayName: "TSIG key value in base 64 format". `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_dns_zone_record.md b/docs/resources/volterra_dns_zone_record.md new file mode 100644 index 000000000..957ea1288 --- /dev/null +++ b/docs/resources/volterra_dns_zone_record.md @@ -0,0 +1,278 @@ +--- + +page_title: "Volterra: dns_zone_record" + +description: "The dns_zone_record allows CRUD of Dns Load Balancer resource on Volterra SaaS" +--------------------------------------------------------------------------------------------- + +Resource volterra_dns_zone_record +================================= + +The Dns Zone Record allows CRUD of Dns Load Balancer resource on Volterra SaaS + +~> **Note:** Please refer to [Dns Zone Record API docs](https://docs.cloud.f5.com/docs/api/dns-zone-rrset) to learn more + +Example Usage +------------- + +```hcl +resource "volterra_dns_zone_record" "example" { + dns_zone_name = "www.dns-zone.com" + group_name = "default" + rrset { + description = "description" + ttl = "68" + a_record { + name = "name" + values = ["1.2.1.1"] + } + } +} + +``` + +Argument Reference +------------------ + +### Spec Argument Reference + +`dns_zone_name` - (Required) dns zone name. + +`group_name` - (Required) Name of Group where all records will be created. + +`rrset` - (Required) Collection of DNS resource record sets. See [Rr Set](#rr-set) below for details. + +### Rr Set + +Collection of DNS resource record sets. + +`description` - (Optional) x-displayName: "Comment" (`String`). + +`ttl` - (Optional) x-example: "3600" (`Int`). + +###### One of the arguments from this list "srv_record, lb_record, naptr_record, ds_record, loc_record, sshfp_record, aaaa_record, cname_record, tlsa_record, dlv_record, cert_record, mx_record, txt_record, afsdb_record, eui48_record, alias_record, ns_record, ptr_record, cds_record, eui64_record, a_record, caa_record" must be set + +`a_record` - (Optional) x-displayName: "A". See [A Record ](#a-record) below for details. + +`aaaa_record` - (Optional) x-displayName: "AAAA". See [Aaaa Record ](#aaaa-record) below for details. + +`afsdb_record` - (Optional) x-displayName: "AFSDB". See [Afsdb Record ](#afsdb-record) below for details. + +`alias_record` - (Optional) x-displayName: "ALIAS". See [Alias Record ](#alias-record) below for details. + +`caa_record` - (Optional) x-displayName: "CAA". See [Caa Record ](#caa-record) below for details. + +`cds_record` - (Optional) x-displayName: "CDS". See [Cds Record ](#cds-record) below for details. + +`cert_record` - (Optional) x-displayName: "CERT". See [Cert Record ](#cert-record) below for details. + +`cname_record` - (Optional) x-displayName: "CNAME". See [Cname Record ](#cname-record) below for details. + +`dlv_record` - (Optional) x-displayName: "DLV". See [Dlv Record ](#dlv-record) below for details.(Deprecated) + +`ds_record` - (Optional) x-displayName: "DS". See [Ds Record ](#ds-record) below for details. + +`eui48_record` - (Optional) x-displayName: "EUI48". See [Eui48 Record ](#eui48-record) below for details. + +`eui64_record` - (Optional) x-displayName: "EUI64". See [Eui64 Record ](#eui64-record) below for details. + +`lb_record` - (Optional) x-displayName: "DNS Load Balancer". See [Lb Record ](#lb-record) below for details. + +`loc_record` - (Optional) x-displayName: "LOC". See [Loc Record ](#loc-record) below for details. + +`mx_record` - (Optional) x-displayName: "MX". See [Mx Record ](#mx-record) below for details. + +`naptr_record` - (Optional) x-displayName: "NAPTR". See [Naptr Record ](#naptr-record) below for details. + +`ns_record` - (Optional) x-displayName: "NS". See [Ns Record ](#ns-record) below for details. + +`ptr_record` - (Optional) x-displayName: "PTR". See [Ptr Record ](#ptr-record) below for details. + +`srv_record` - (Optional) x-displayName: "SRV". See [Srv Record ](#srv-record) below for details. + +`sshfp_record` - (Optional) x-displayName: "SSHFP". See [Sshfp Record ](#sshfp-record) below for details. + +`tlsa_record` - (Optional) x-displayName: "TLSA". See [Tlsa Record ](#tlsa-record) below for details. + +`txt_record` - (Optional) x-displayName: "TXT". See [Txt Record ](#txt-record) below for details. + +### A Record + +x-displayName: "A". + +`name` - (Optional) A Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) A valid IPv4 address, for example: 1.1.1.1 (`String`). + +### Aaaa Record + +x-displayName: "AAAA". + +`name` - (Optional) AAAA Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) A valid IPv6 address, for example: 2001:0db8:85a3:0000:0000:8a2e:0370:7334 (`String`). + +### Afsdb Record + +x-displayName: "AFSDB". + +`name` - (Optional) AFSDB Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Afsdb Record Values ](#afsdb-record-values) below for details. + +### Alias Record + +x-displayName: "ALIAS". + +`name` - (Optional) Alias Record name, please provide only the specific subdomain or record name without the base domain. (`String`).(Deprecated) + +`value` - (Optional) A valid domain name, for example: example.com (`String`). + +### Caa Record + +x-displayName: "CAA". + +`name` - (Optional) CAA Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Optional) x-displayName: "CAA Record Value". See [Caa Record Values ](#caa-record-values) below for details. + +### Cds Record + +x-displayName: "CDS". + +`name` - (Optional) CDS Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Cds Record Values ](#cds-record-values) below for details. + +### Cert Record + +x-displayName: "CERT". + +`name` - (Optional) CERT Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Cert Record Values ](#cert-record-values) below for details. + +### Cname Record + +x-displayName: "CNAME". + +`name` - (Required) CName Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`value` - (Optional) x-example: "example.com" (`String`). + +### Dlv Record + +x-displayName: "DLV". + +`name` - (Optional) DLV Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) It uses the same format as the DS record.. See [Dlv Record Values ](#dlv-record-values) below for details. + +### Ds Record + +x-displayName: "DS". + +`name` - (Optional) DS Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Ds Record Values ](#ds-record-values) below for details. + +### Eui48 Record + +x-displayName: "EUI48". + +`name` - (Optional) EUI48 Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`value` - (Required) A valid eui48 identifier, for example: 01-23-45-67-89-ab (`String`). + +### Eui64 Record + +x-displayName: "EUI64". + +`name` - (Optional) EUI64 Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`value` - (Required) A valid EUI64 identifier, for example: 01-23-45-67-89-ab-cd-ef (`String`). + +### Lb Record + +x-displayName: "DNS Load Balancer". + +`name` - (Optional) Load Balancer record name (except for SRV DNS Load balancer record) should be a simple record name and not a subdomain of a subdomain. (`String`). + +`value` - (Optional) x-displayName: "DNS Load Balancer Record". See [ref](#ref) below for details. + +### Loc Record + +x-displayName: "LOC". + +`name` - (Optional) LOC Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Loc Record Values ](#loc-record-values) below for details. + +### Mx Record + +x-displayName: "MX". + +`name` - (Optional) MX Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Mx Record Values ](#mx-record-values) below for details. + +### Naptr Record + +x-displayName: "NAPTR". + +`name` - (Optional) NAPTR Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Naptr Record Values ](#naptr-record-values) below for details. + +### Ns Record + +x-displayName: "NS". + +`name` - (Optional) NS Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required (`String`). + +### Ptr Record + +x-displayName: "PTR". + +`name` - (Optional) PTR Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required (`String`). + +### Srv Record + +x-displayName: "SRV". + +`name` - (Required) SRV Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Srv Record Values ](#srv-record-values) below for details. + +### Sshfp Record + +x-displayName: "SSHFP". + +`name` - (Optional) SSHFP Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Sshfp Record Values ](#sshfp-record-values) below for details. + +### Tlsa Record + +x-displayName: "TLSA". + +`name` - (Optional) TLSA Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required. See [Tlsa Record Values ](#tlsa-record-values) below for details. + +### Txt Record + +x-displayName: "TXT". + +`name` - (Optional) TXT Record name, please provide only the specific subdomain or record name without the base domain. (`String`). + +`values` - (Required) x-required (`String`). + +Attribute Reference +------------------- + +- `id` - This is the id of the configured dns_zone_record. diff --git a/docs/resources/volterra_endpoint.md b/docs/resources/volterra_endpoint.md index 1b9ee8bbc..886424089 100644 --- a/docs/resources/volterra_endpoint.md +++ b/docs/resources/volterra_endpoint.md @@ -90,7 +90,7 @@ Specifies name and TTL used for DNS resolution.. `discovery_type` - (Required) Specifies whether the discovery is from Kubernetes or Consul cluster (`String`). -###### One of the arguments from this list "service_name, service_selector" can be set +###### One of the arguments from this list "service_selector, service_name" can be set `service_name` - (Optional) discovery objects of the site. (`String`). @@ -118,7 +118,7 @@ tenant - (Optional) then tenant will hold the referred object's(e.g. route's) te Direct reference to site object. -###### One of the arguments from this list "disable_internet_vip, enable_internet_vip" must be set +###### One of the arguments from this list "enable_internet_vip, disable_internet_vip" must be set `disable_internet_vip` - (Optional) Do not enable advertise on external internet vip. (`Bool`). diff --git a/docs/resources/volterra_enhanced_firewall_policy.md b/docs/resources/volterra_enhanced_firewall_policy.md index 61eaed35f..8903ae711 100644 --- a/docs/resources/volterra_enhanced_firewall_policy.md +++ b/docs/resources/volterra_enhanced_firewall_policy.md @@ -20,8 +20,13 @@ resource "volterra_enhanced_firewall_policy" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "denied_destinations rule_list allow_all allowed_sources allowed_destinations deny_all denied_sources" must be set - allow_all = true + // One of the arguments from this list "denied_sources denied_destinations rule_list allow_all allowed_sources allowed_destinations deny_all" must be set + + denied_destinations { + ipv6_prefix = ["[2001:db8::1::/112, 2001::db8::2::/112]"] + + prefix = ["[192.168.1.0/24, 192.168.2.0/24]\""] + } } ``` @@ -59,6 +64,26 @@ Argument Reference `rule_list` - (Optional) Custom Enhanced Firewall Policy Rule Selection. See [Rule Choice Rule List ](#rule-choice-rule-list) below for details. +`segment_policy` - (Optional) Skip the configuration or set option as Any to ignore corresponding segment match. See [Segment Policy ](#segment-policy) below for details. + +### Segment Policy + +Skip the configuration or set option as Any to ignore corresponding segment match. + +###### One of the arguments from this list "dst_any, intra_segment, dst_segments" can be set + +`dst_any` - (Optional) Traffic is not matched against any segment (`Bool`). + +`dst_segments` - (Optional) Traffic is matched against destination segment in selected segments. See [Dst Segment Choice Dst Segments ](#dst-segment-choice-dst-segments) below for details. + +`intra_segment` - (Optional) Traffic is matched for source and destination on the same segment (`Bool`). + +###### One of the arguments from this list "src_any, src_segments" can be set + +`src_any` - (Optional) Traffic is not matched against any segment (`Bool`). + +`src_segments` - (Optional) Source traffic is matched against selected segments. See [Src Segment Choice Src Segments ](#src-segment-choice-src-segments) below for details. + ### Action Choice Allow Allow any connection matching the rule. @@ -125,6 +150,20 @@ All addresses reachable in site-local inside interfaces. All addresses reachable in site-local outside interfaces. +### Dst Segment Choice Dst Any + +Traffic is not matched against any segment. + +### Dst Segment Choice Dst Segments + +Traffic is matched against destination segment in selected segments. + +`segments` - (Required) Select list of segments. See [ref](#ref) below for details. + +### Dst Segment Choice Intra Segment + +Traffic is matched for source and destination on the same segment. + ### Ref Reference to another volterra object is shown like below @@ -187,7 +226,7 @@ Ordered List of Enhanced Firewall Policy Rules. `advanced_action` - (Optional) Log any connection matching the rule. See [Rules Advanced Action ](#rules-advanced-action) below for details. -###### One of the arguments from this list "destination_aws_vpc_ids, destination_aws_subnet_ids, all_destinations, inside_destinations, all_sli_vips, destination_namespace, destination_label_selector, all_slo_vips, destination_prefix_list, destination_ip_prefix_set, outside_destinations" must be set +###### One of the arguments from this list "all_destinations, outside_destinations, all_slo_vips, destination_aws_vpc_ids, all_sli_vips, destination_aws_subnet_ids, destination_prefix_list, destination_ip_prefix_set, inside_destinations, destination_namespace, destination_label_selector" must be set `all_destinations` - (Optional) Any address that matches 0/0 ip prefix (`Bool`). @@ -215,7 +254,7 @@ Ordered List of Enhanced Firewall Policy Rules. `metadata` - (Required) Common attributes for the rule including name and description.. See [Rules Metadata ](#rules-metadata) below for details. -###### One of the arguments from this list "all_sources, source_namespace, source_label_selector, source_aws_vpc_ids, source_prefix_list, source_ip_prefix_set, inside_sources, outside_sources, source_aws_subnet_ids" must be set +###### One of the arguments from this list "all_sources, source_ip_prefix_set, outside_sources, source_label_selector, source_aws_vpc_ids, source_aws_subnet_ids, source_prefix_list, inside_sources, source_namespace" must be set `all_sources` - (Optional) Any address that matches 0/0 ip prefix (`Bool`). @@ -233,7 +272,7 @@ Ordered List of Enhanced Firewall Policy Rules. `source_namespace` - (Optional) All addresses in a namespace (`String`).(Deprecated) -`source_prefix_list` - (Optional) Addresses that match one of the prefix in the list. See [Source Choice Source Prefix List ](#source-choice-source-prefix-list) below for details. +`source_prefix_list` - (Optional) list contains sublist of both v4 and v6 prfix list. See [Source Choice Source Prefix List ](#source-choice-source-prefix-list) below for details. ###### One of the arguments from this list "all_traffic, all_tcp_traffic, all_udp_traffic, applications, protocol_port_range" must be set @@ -307,12 +346,22 @@ These labels can be cloud tags defined on the vpc resource, labels on the global ### Source Choice Source Prefix List -Addresses that match one of the prefix in the list. +list contains sublist of both v4 and v6 prfix list. `ipv6_prefixes` - (Optional) List of IPv6 prefix strings. (`String`). `prefixes` - (Optional) List of IPv4 prefixes that represent an endpoint (`String`). +### Src Segment Choice Src Any + +Traffic is not matched against any segment. + +### Src Segment Choice Src Segments + +Source traffic is matched against selected segments. + +`segments` - (Required) Select list of segments. See [ref](#ref) below for details. + ### Traffic Choice All Tcp Traffic Select all TCP traffic to match. diff --git a/docs/resources/volterra_fast_acl.md b/docs/resources/volterra_fast_acl.md index ca308510b..81e470b86 100644 --- a/docs/resources/volterra_fast_acl.md +++ b/docs/resources/volterra_fast_acl.md @@ -25,7 +25,8 @@ resource "volterra_fast_acl" "example" { site_acl { fast_acl_rules { action { - // One of the arguments from this list "simple_action policer_action protocol_policer_action" must be set + // One of the arguments from this list "simple_action policer_action protocol_policer_action" can be set + simple_action = "simple_action" } @@ -40,7 +41,8 @@ resource "volterra_fast_acl" "example" { name = "value" port { - // One of the arguments from this list "all user_defined dns" must be set + // One of the arguments from this list "all user_defined dns" can be set + all = true } @@ -54,9 +56,11 @@ resource "volterra_fast_acl" "example" { } // One of the arguments from this list "outside_network inside_network" must be set - inside_network = true + + outside_network = true // One of the arguments from this list "interface_services vip_services all_services" must be set + interface_services = true } } @@ -106,7 +110,7 @@ Reference to protocol based policer object. List of IP addresses to match with destination. -###### One of the arguments from this list "ipv6, ipv4" can be set +###### One of the arguments from this list "ipv4, ipv6" can be set `ipv4` - (Optional) IPv4 Address. See [Ver Ipv4 ](#ver-ipv4) below for details. @@ -218,7 +222,7 @@ L4 port numbers to match. CE applies Fast ACLs with network type selector as "site_local" and "site_local_inside" only. -###### One of the arguments from this list "public, site_local, site_local_inside" can be set +###### One of the arguments from this list "site_local, site_local_inside, public" can be set `public` - (Optional) Indicates use of public network (`Bool`). @@ -254,7 +258,7 @@ Fast ACL rules to match. `port` - (Optional) L4 port numbers to match. See [Fast Acl Rules Port ](#fast-acl-rules-port) below for details. -###### One of the arguments from this list "prefix, ip_prefix_set" must be set +###### One of the arguments from this list "ip_prefix_set, prefix" must be set `ip_prefix_set` - (Optional) Reference to IP prefix set object. See [Source Ip Prefix Set ](#source-ip-prefix-set) below for details. @@ -292,7 +296,7 @@ Fast ACL rules to match. `port` - (Optional) L4 port numbers to match. See [Fast Acl Rules Port ](#fast-acl-rules-port) below for details. -###### One of the arguments from this list "ip_prefix_set, prefix" must be set +###### One of the arguments from this list "prefix, ip_prefix_set" must be set `ip_prefix_set` - (Optional) Reference to IP prefix set object. See [Source Ip Prefix Set ](#source-ip-prefix-set) below for details. @@ -314,7 +318,7 @@ ACL will be applied at regional edge sites. `fast_acl_rules` - (Optional) Fast ACL rules to match. See [Re Acl Fast Acl Rules ](#re-acl-fast-acl-rules) below for details. -###### One of the arguments from this list "all_public_vips, default_tenant_vip, selected_tenant_vip" must be set +###### One of the arguments from this list "selected_tenant_vip, all_public_vips, default_tenant_vip" must be set `all_public_vips` - (Optional) Apply this Fast ACL to all public vips (`Bool`). @@ -334,7 +338,7 @@ ACL will be applied at customer edge sites. `outside_network` - (Optional) Site Local Outside network (`Bool`). -###### One of the arguments from this list "interface_services, vip_services, all_services" must be set +###### One of the arguments from this list "vip_services, all_services, interface_services" must be set `all_services` - (Optional) Port and protocol is picked up from advertise policies (`Bool`). diff --git a/docs/resources/volterra_fast_acl_rule.md b/docs/resources/volterra_fast_acl_rule.md index d83aae83c..95e349cc5 100644 --- a/docs/resources/volterra_fast_acl_rule.md +++ b/docs/resources/volterra_fast_acl_rule.md @@ -21,13 +21,15 @@ resource "volterra_fast_acl_rule" "example" { namespace = "staging" action { - // One of the arguments from this list "simple_action policer_action protocol_policer_action" must be set + // One of the arguments from this list "policer_action protocol_policer_action simple_action" can be set + simple_action = "simple_action" } port { - // One of the arguments from this list "all user_defined dns" must be set - user_defined = "user_defined" + // One of the arguments from this list "all user_defined dns" can be set + + dns = true } // One of the arguments from this list "prefix ip_prefix_set" must be set diff --git a/docs/resources/volterra_filter_set.md b/docs/resources/volterra_filter_set.md new file mode 100644 index 000000000..4034e304c --- /dev/null +++ b/docs/resources/volterra_filter_set.md @@ -0,0 +1,115 @@ +--- + +page_title: "Volterra: filter_set" + +description: "The filter_set allows CRUD of Filter Set resource on Volterra SaaS" +--------------------------------------------------------------------------------- + +Resource volterra_filter_set +============================ + +The Filter Set allows CRUD of Filter Set resource on Volterra SaaS + +~> **Note:** Please refer to [Filter Set API docs](https://docs.cloud.f5.com/docs/api/filter-set) to learn more + +Example Usage +------------- + +```hcl +resource "volterra_filter_set" "example" { + name = "acmecorp-web" + namespace = "staging" + context_key = ["context_key"] + + filter_fields { + field_id = "field_id" + + // One of the arguments from this list "filter_expression_field string_field date_field label_selector_field" must be set + + string_field { + field_values = ["field_values"] + } + } +} + +``` + +Argument Reference +------------------ + +### Metadata Argument Reference + +`annotations` - (Optional) queryable and should be preserved when modifying objects. (`String`). + +`description` - (Optional) Human readable description for the object (`String`). + +`disable` - (Optional) A value of true will administratively disable the object (`Bool`). + +`labels` - (Optional) by selector expression (`String`). + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +`namespace` - (Optional) Must be a DNS_LABEL format. For a namespace object itself, namespace value will be "" (`String`). + +### Spec Argument Reference + +`context_key` - (Required) indexable context key that identifies a page or page type for which the FilterSet is applicable (`String`). + +`filter_fields` - (Required) list of fields and their values selected by the user. See [Filter Fields ](#filter-fields) below for details. + +### Filter Fields + +list of fields and their values selected by the user. + +`field_id` - (Required) an identifier for the field that maps to some UI filter component (`String`). + +###### One of the arguments from this list "string_field, date_field, label_selector_field, filter_expression_field" must be set + +`date_field` - (Optional) x-displayName: "Date/Time Range". See [Field Value Date Field ](#field-value-date-field) below for details. + +`filter_expression_field` - (Optional) x-displayName: "Key/Value Selector Expression". See [Field Value Filter Expression Field ](#field-value-filter-expression-field) below for details. + +`label_selector_field` - (Optional) x-displayName: "Kubernetes-style Label Selector Expression (deprecated)". See [Field Value Label Selector Field ](#field-value-label-selector-field) below for details.(Deprecated) + +`string_field` - (Optional) x-displayName: "String". See [Field Value String Field ](#field-value-string-field) below for details. + +### Field Value Date Field + +x-displayName: "Date/Time Range". + +###### One of the arguments from this list "absolute, relative" must be set + +`absolute` - (Optional) absolute start and end timestamps. See [Range Type Absolute ](#range-type-absolute) below for details. + +`relative` - (Optional) relative time duration (`String`). + +### Field Value Filter Expression Field + +x-displayName: "Key/Value Selector Expression". + +`expression` - (Required) differs in that it allows special characters in the keys and values (`String`). + +### Field Value Label Selector Field + +x-displayName: "Kubernetes-style Label Selector Expression (deprecated)". + +`expressions` - (Required) expressions contains the kubernetes style label expression for selections. (`String`). + +### Field Value String Field + +x-displayName: "String". + +`field_values` - (Required) x-required (`String`). + +### Range Type Absolute + +absolute start and end timestamps. + +`end_date` - (Required) Contains end date (`String`). + +`start_date` - (Required) Contains start date (`String`). + +Attribute Reference +------------------- + +- `id` - This is the id of the configured filter_set. diff --git a/docs/resources/volterra_fleet.md b/docs/resources/volterra_fleet.md index e904b0c6c..6efb0f459 100644 --- a/docs/resources/volterra_fleet.md +++ b/docs/resources/volterra_fleet.md @@ -21,14 +21,17 @@ resource "volterra_fleet" "example" { namespace = "staging" // One of the arguments from this list "no_bond_devices bond_device_list" must be set + no_bond_devices = true - // One of the arguments from this list "dc_cluster_group dc_cluster_group_inside no_dc_cluster_group" must be set + // One of the arguments from this list "no_dc_cluster_group dc_cluster_group dc_cluster_group_inside" must be set + no_dc_cluster_group = true fleet_label = ["sfo"] - // One of the arguments from this list "enable_vgpu disable_gpu enable_gpu" must be set - disable_gpu = true + // One of the arguments from this list "disable_gpu enable_gpu enable_vgpu" must be set + + enable_gpu = true // One of the arguments from this list "interface_list default_config device_list" must be set @@ -39,26 +42,34 @@ resource "volterra_fleet" "example" { tenant = "acmecorp" } } + // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set + logs_streaming_disabled = true + // One of the arguments from this list "default_sriov_interface sriov_interfaces" must be set + default_sriov_interface = true + // One of the arguments from this list "default_storage_class storage_class_list" must be set + default_storage_class = true + // One of the arguments from this list "no_storage_device storage_device_list" must be set + no_storage_device = true + // One of the arguments from this list "no_storage_interfaces storage_interface_list" must be set + no_storage_interfaces = true - // One of the arguments from this list "no_storage_static_routes storage_static_routes" must be set + + // One of the arguments from this list "storage_static_routes no_storage_static_routes" must be set + no_storage_static_routes = true // One of the arguments from this list "deny_all_usb allow_all_usb usb_policy" must be set - usb_policy { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } + deny_all_usb = true } ``` @@ -112,6 +123,8 @@ Argument Reference `interface_list` - (Optional) Add all interfaces belonging to this fleet. See [Interface Choice Interface List ](#interface-choice-interface-list) below for details. +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `log_receiver` - (Optional) Select log receiver for logs streaming. See [ref](#ref) below for details. `logs_streaming_disabled` - (Optional) Logs Streaming is disabled (`Bool`). @@ -172,6 +185,16 @@ Configuration to block the default services allowed by the platform. `network_type` - (Optional) Network type in which these ports get blocked (`String`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "enable_upgrade_drain, disable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Performance Enhancement Mode Performance Enhancement Mode to optimize for L3 or L7 networking. @@ -486,7 +509,7 @@ Storage class Device configuration for NetApp Trident. Device configuration for NetApp Trident. -###### One of the arguments from this list "netapp_backend_ontap_san, netapp_backend_ontap_nas" must be set +###### One of the arguments from this list "netapp_backend_ontap_nas, netapp_backend_ontap_san" must be set `netapp_backend_ontap_nas` - (Optional) Backend configuration for ONTAP NAS. See [Backend Choice Netapp Backend Ontap Nas ](#backend-choice-netapp-backend-ontap-nas) below for details. @@ -542,7 +565,7 @@ For FlashArrays you must set the "mgmt_endpoint" and "api_token". `labels` - (Optional) The labels are optional, and can be any key-value pair for use with the PSO "fleet" provisioner. (`String`). -###### One of the arguments from this list "mgmt_dns_name, mgmt_ip" must be set +###### One of the arguments from this list "mgmt_ip, mgmt_dns_name" must be set `mgmt_dns_name` - (Optional) Management Endpoint's ip address is discovered using DNS name resolution. The name given here is fully qualified domain name. (`String`). @@ -556,7 +579,7 @@ Please Enter API TOken. Token to connect to management interface. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -574,7 +597,7 @@ For FlashBlades you must set the "mgmt_endpoint", "api_token" and nfs_endpoint. `lables` - (Optional) The labels are optional, and can be any key-value pair for use with the PSO "fleet" provisioner. (`String`). -###### One of the arguments from this list "mgmt_ip, mgmt_dns_name" must be set +###### One of the arguments from this list "mgmt_dns_name, mgmt_ip" must be set `mgmt_dns_name` - (Optional) Management Endpoint's ip address is discovered using DNS name resolution. The name given here is fully qualified domain name. (`String`). @@ -594,7 +617,7 @@ Please Enter API TOken. Token to connect to management interface. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -622,7 +645,7 @@ chap Password to connect to the HPE storage. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -640,7 +663,7 @@ Please Enter you password.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -672,6 +695,28 @@ Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. `store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_count, drain_max_unavailable_node_percentage" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "disable_vega_upgrade_mode, enable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Lacp Choice Active Backup Configure active/backup based bond device. @@ -716,7 +761,7 @@ Please Enter you password. Password to connect to the cluster/SVM. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -776,7 +821,7 @@ Please Enter value of client private key. Used for certificate-based auth.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -822,7 +867,7 @@ List of QoS volume defaults types. `export_policy` - (Optional) Export policy to use. (`String`). -###### One of the arguments from this list "qos_policy, adaptive_qos_policy, no_qos" must be set +###### One of the arguments from this list "no_qos, qos_policy, adaptive_qos_policy" must be set `adaptive_qos_policy` - (Optional) Enter Adaptive QoS Policy Name (`String`). @@ -1014,7 +1059,7 @@ List of custom storage classes. `description` - (Optional) Description for this storage class (`String`). -###### One of the arguments from this list "hpe_storage, netapp_trident, pure_service_orchestrator, custom_storage" must be set +###### One of the arguments from this list "netapp_trident, pure_service_orchestrator, custom_storage, hpe_storage" must be set `custom_storage` - (Optional) Storage configuration for Custom Storage. See [Device Choice Custom Storage ](#device-choice-custom-storage) below for details. @@ -1074,7 +1119,7 @@ Nexthop for the route. List of route prefixes. -###### One of the arguments from this list "ipv6, ipv4" must be set +###### One of the arguments from this list "ipv4, ipv6" must be set `ipv4` - (Optional) IPv4 Subnet Address. See [Ver Ipv4 ](#ver-ipv4) below for details. @@ -1134,6 +1179,14 @@ CHAP target initiator secret. Required if useCHAP=true. `wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Ver Ipv4 IPv4 Address. diff --git a/docs/resources/volterra_forward_proxy_policy.md b/docs/resources/volterra_forward_proxy_policy.md index 30fa091d9..d99dc109f 100644 --- a/docs/resources/volterra_forward_proxy_policy.md +++ b/docs/resources/volterra_forward_proxy_policy.md @@ -22,10 +22,10 @@ resource "volterra_forward_proxy_policy" "example" { // One of the arguments from this list "any_proxy network_connector proxy_label_selector drp_http_connect" must be set - proxy_label_selector { - expressions = ["region in (us-west1, us-west2),tier in (staging)"] - } - // One of the arguments from this list "allow_all allow_list deny_list rule_list" must be set + any_proxy = true + + // One of the arguments from this list "allow_list deny_list rule_list allow_all" must be set + allow_all = true } @@ -66,6 +66,26 @@ Argument Reference `rule_list` - (Optional) List of custom rules. See [Rule Choice Rule List ](#rule-choice-rule-list) below for details. +`segment_policy` - (Optional) Skip the configuration or set option as Any to ignore corresponding segment match. See [Segment Policy ](#segment-policy) below for details. + +### Segment Policy + +Skip the configuration or set option as Any to ignore corresponding segment match. + +###### One of the arguments from this list "dst_any, intra_segment, dst_segments" can be set + +`dst_any` - (Optional) Traffic is not matched against any segment (`Bool`). + +`dst_segments` - (Optional) Traffic is matched against destination segment in selected segments. See [Dst Segment Choice Dst Segments ](#dst-segment-choice-dst-segments) below for details. + +`intra_segment` - (Optional) Traffic is matched for source and destination on the same segment (`Bool`). + +###### One of the arguments from this list "src_any, src_segments" can be set + +`src_any` - (Optional) Traffic is not matched against any segment (`Bool`). + +`src_segments` - (Optional) Source traffic is matched against selected segments. See [Src Segment Choice Src Segments ](#src-segment-choice-src-segments) below for details. + ### Allow List Dest List L4 destinations for non-HTTP and non-TLS connections and TLS connections without SNI. @@ -78,7 +98,7 @@ L4 destinations for non-HTTP and non-TLS connections and TLS connections without URLs for HTTP connections. -###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set +###### One of the arguments from this list "regex_value, exact_value, suffix_value" must be set `exact_value` - (Optional) Exact domain name (`String`). @@ -86,7 +106,7 @@ URLs for HTTP connections. `suffix_value` - (Optional) Suffix of domain names e.g "xyz.com" will match "*.xyz.com" (`String`). -###### One of the arguments from this list "path_exact_value, path_prefix_value, path_regex_value, any_path" must be set +###### One of the arguments from this list "path_prefix_value, path_regex_value, any_path, path_exact_value" must be set `any_path` - (Optional) All paths are considered match (`Bool`). @@ -154,7 +174,7 @@ URLs for HTTP connections. Domains in SNI for TLS connections. -###### One of the arguments from this list "regex_value, exact_value, suffix_value" must be set +###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set `exact_value` - (Optional) Exact domain name. (`String`). @@ -170,7 +190,7 @@ Match on all destinations. The ASN is obtained by performing a lookup for the destination IPv4 Address in a GeoIP DB.. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Destination Choice Dst Label Selector @@ -204,6 +224,20 @@ URL categories to choose, so that the corresponding label selector expressions c `url_categories` - (Required) List of url categories to be selected (`List of Strings`). +### Dst Segment Choice Dst Any + +Traffic is not matched against any segment. + +### Dst Segment Choice Dst Segments + +Traffic is matched against destination segment in selected segments. + +`segments` - (Required) Select list of segments. See [ref](#ref) below for details. + +### Dst Segment Choice Intra Segment + +Traffic is matched for source and destination on the same segment. + ### Http Connect Choice No Http Connect Port Ignore destination ports for connections. @@ -220,7 +254,7 @@ In case of an HTTP Connect, the destination port is extracted from the connect d URLs for HTTP connections. -###### One of the arguments from this list "suffix_value, regex_value, exact_value" must be set +###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set `exact_value` - (Optional) Exact domain name (`String`). @@ -262,7 +296,7 @@ tenant - (Optional) then tenant will hold the referred object's(e.g. route's) te List of allowed connections. -###### One of the arguments from this list "default_action_deny, default_action_allow, default_action_next_policy" must be set +###### One of the arguments from this list "default_action_next_policy, default_action_deny, default_action_allow" must be set `default_action_allow` - (Optional) Allow all connections (`Bool`). @@ -280,7 +314,7 @@ List of allowed connections. List of denied connections. -###### One of the arguments from this list "default_action_deny, default_action_allow, default_action_next_policy" must be set +###### One of the arguments from this list "default_action_next_policy, default_action_deny, default_action_allow" must be set `default_action_allow` - (Optional) Allow all connections (`Bool`). @@ -306,7 +340,7 @@ List of custom rules. `action` - (Required) Action to be enforced if the input request matches the rule. (`String`). -###### One of the arguments from this list "tls_list, dst_asn_set, url_category_list, dst_prefix_list, dst_asn_list, dst_label_selector, all_destinations, http_list, dst_ip_prefix_set" must be set +###### One of the arguments from this list "dst_label_selector, all_destinations, dst_ip_prefix_set, dst_asn_list, dst_asn_set, url_category_list, tls_list, http_list, dst_prefix_list" must be set `all_destinations` - (Optional) Match on all destinations (`Bool`). @@ -352,7 +386,7 @@ List of custom rules. `namespace` - (Optional) All ip prefixes that are of a namespace are chosen as Endpoints (`String`).(Deprecated) -`prefix_list` - (Optional) list of ip prefixes that are representing source of traffic seen by proxy. See [Source Choice Prefix List ](#source-choice-prefix-list) below for details. +`prefix_list` - (Optional) list is a sublist of both V4 and V6 prefix list. See [Source Choice Prefix List ](#source-choice-prefix-list) below for details. ### Rules Metadata @@ -380,12 +414,22 @@ Sources is set of prefixes determined by label selector expression. ### Source Choice Prefix List -list of ip prefixes that are representing source of traffic seen by proxy. +list is a sublist of both V4 and V6 prefix list. `ipv6_prefixes` - (Optional) List of IPv6 prefix strings. (`String`). `prefixes` - (Optional) List of IPv4 prefixes that represent an endpoint (`String`). +### Src Segment Choice Src Any + +Traffic is not matched against any segment. + +### Src Segment Choice Src Segments + +Source traffic is matched against selected segments. + +`segments` - (Required) Select list of segments. See [ref](#ref) below for details. + ### Tls List Tls List Domains in SNI for TLS connections. diff --git a/docs/resources/volterra_gcp_vpc_site.md b/docs/resources/volterra_gcp_vpc_site.md index 770f11b4f..83688ce12 100644 --- a/docs/resources/volterra_gcp_vpc_site.md +++ b/docs/resources/volterra_gcp_vpc_site.md @@ -21,7 +21,8 @@ resource "volterra_gcp_vpc_site" "example" { namespace = "staging" // One of the arguments from this list "default_blocked_services block_all_services blocked_services" must be set - block_all_services = true + + default_blocked_services = true // One of the arguments from this list "cloud_credentials" must be set @@ -32,12 +33,20 @@ resource "volterra_gcp_vpc_site" "example" { } gcp_region = ["us-west1"] instance_type = ["n1-standard-4"] + // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set - logs_streaming_disabled = true + + log_receiver { + name = "test1" + namespace = "staging" + tenant = "acmecorp" + } + // One of the arguments from this list "private_connect_disabled private_connectivity" must be set + private_connect_disabled = true - // One of the arguments from this list "ingress_gw ingress_egress_gw voltstack_cluster" must be set + // One of the arguments from this list "ingress_egress_gw voltstack_cluster ingress_gw" must be set ingress_gw { gcp_certified_hw = "gcp-byol-voltmesh" @@ -47,8 +56,8 @@ resource "volterra_gcp_vpc_site" "example" { local_network { // One of the arguments from this list "new_network_autogenerate new_network existing_network" must be set - new_network_autogenerate { - autogenerate = true + new_network { + name = "network1" } } @@ -66,6 +75,7 @@ resource "volterra_gcp_vpc_site" "example" { performance_enhancement_mode { // One of the arguments from this list "perf_mode_l7_enhanced perf_mode_l3_enhanced" must be set + perf_mode_l7_enhanced = true } } @@ -99,7 +109,7 @@ Argument Reference `blocked_services` - (Optional) Use custom blocked services configuration. See [Blocked Services Choice Blocked Services ](#blocked-services-choice-blocked-services) below for details. -`default_blocked_services` - (Optional) Allow access to DNS, SSH & WebUI services on Site (`Bool`). +`default_blocked_services` - (Optional) Allow access to DNS, SSH services on Site (`Bool`). `coordinates` - (Optional) Site longitude and latitude co-ordinates. See [Coordinates ](#coordinates) below for details. @@ -115,6 +125,8 @@ Argument Reference `instance_type` - (Required) Select Instance size based on performance needed (`String`). +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `log_receiver` - (Optional) Select log receiver for logs streaming. See [ref](#ref) below for details. `logs_streaming_disabled` - (Optional) Logs Streaming is disabled (`Bool`). @@ -159,6 +171,16 @@ custom dns configure to the CE site. `outside_nameserver_v6` - (Optional) Optional DNS server IPv6 to be used for name resolution in outside network (`String`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "disable_upgrade_drain, enable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Offline Survivability Mode Enable/Disable offline survivability mode. @@ -173,7 +195,7 @@ Enable/Disable offline survivability mode. Operating System Details. -###### One of the arguments from this list "operating_system_version, default_os_version" must be set +###### One of the arguments from this list "default_os_version, operating_system_version" must be set `default_os_version` - (Optional) Will assign latest available OS version (`Bool`). @@ -285,7 +307,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -309,7 +331,7 @@ Nexthop for the route. List of route prefixes. -###### One of the arguments from this list "ipv4, ipv6" must be set +###### One of the arguments from this list "ipv6, ipv4" must be set `ipv4` - (Optional) IPv4 Subnet Address. See [Ver Ipv4 ](#ver-ipv4) below for details. @@ -393,7 +415,7 @@ Global network connections. Network for the inside interface of the node. -###### One of the arguments from this list "new_network_autogenerate, new_network, existing_network" must be set +###### One of the arguments from this list "new_network, existing_network, new_network_autogenerate" must be set `existing_network` - (Optional) Name of existing VPC network.. See [Choice Existing Network ](#choice-existing-network) below for details. @@ -415,7 +437,7 @@ Subnet for the inside interface of the node.. Network for the outside interface of the node. -###### One of the arguments from this list "new_network, existing_network, new_network_autogenerate" must be set +###### One of the arguments from this list "new_network_autogenerate, new_network, existing_network" must be set `existing_network` - (Optional) Name of existing VPC network.. See [Choice Existing Network ](#choice-existing-network) below for details. @@ -447,7 +469,7 @@ Performance Enhancement Mode to optimize for L3 or L7 networking. Network for the local interface of the node. -###### One of the arguments from this list "new_network, existing_network, new_network_autogenerate" must be set +###### One of the arguments from this list "new_network_autogenerate, new_network, existing_network" must be set `existing_network` - (Optional) Name of existing VPC network.. See [Choice Existing Network ](#choice-existing-network) below for details. @@ -489,7 +511,7 @@ Static Routes disabled for inside network.. List of Static routes. -###### One of the arguments from this list "custom_static_route, simple_static_route" must be set +###### One of the arguments from this list "simple_static_route, custom_static_route" must be set `custom_static_route` - (Optional) Use Custom static route to configure all advanced options. See [Config Mode Choice Custom Static Route ](#config-mode-choice-custom-static-route) below for details. @@ -509,7 +531,7 @@ Policy to enable/disable specific domains, with implicit enable all domains. Domain value or regular expression to match. -###### One of the arguments from this list "suffix_value, regex_value, exact_value" must be set +###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set `exact_value` - (Optional) Exact domain name. (`String`). @@ -521,6 +543,28 @@ Domain value or regular expression to match. Site Local K8s API access is disabled. +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_count, drain_max_unavailable_node_percentage" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "disable_vega_upgrade_mode, enable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Network Options Inside CloudLink will be associated, and routes will be propagated with the Site Local Inside Network of this Site. @@ -739,7 +783,7 @@ creating ipsec between two sites which are part of the site mesh group. Two interface site is useful when site is used as ingress/egress gateway to the VPC network.. -###### One of the arguments from this list "dc_cluster_group_outside_vn, dc_cluster_group_inside_vn, no_dc_cluster_group" must be set +###### One of the arguments from this list "no_dc_cluster_group, dc_cluster_group_outside_vn, dc_cluster_group_inside_vn" must be set `dc_cluster_group_inside_vn` - (Optional) This site is member of dc cluster group connected via inside network. See [ref](#ref) below for details. @@ -747,7 +791,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `no_dc_cluster_group` - (Optional) This site is not a member of dc cluster group (`Bool`). -###### One of the arguments from this list "active_forward_proxy_policies, forward_proxy_allow_all, no_forward_proxy" must be set +###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -767,7 +811,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `inside_network` - (Optional) Network for the inside interface of the node. See [Ingress Egress Gw Inside Network ](#ingress-egress-gw-inside-network) below for details. -###### One of the arguments from this list "no_inside_static_routes, inside_static_routes" must be set +###### One of the arguments from this list "inside_static_routes, no_inside_static_routes" must be set `inside_static_routes` - (Optional) Manage static routes for inside network.. See [Inside Static Route Choice Inside Static Routes ](#inside-static-route-choice-inside-static-routes) below for details. @@ -775,7 +819,7 @@ Two interface site is useful when site is used as ingress/egress gateway to the `inside_subnet` - (Optional) Subnet for the inside interface of the node.. See [Ingress Egress Gw Inside Subnet ](#ingress-egress-gw-inside-subnet) below for details. -###### One of the arguments from this list "active_enhanced_firewall_policies, no_network_policy, active_network_policies" must be set +###### One of the arguments from this list "no_network_policy, active_network_policies, active_enhanced_firewall_policies" must be set `active_enhanced_firewall_policies` - (Optional) with an additional option for service insertion.. See [Network Policy Choice Active Enhanced Firewall Policies ](#network-policy-choice-active-enhanced-firewall-policies) below for details. @@ -829,7 +873,7 @@ App Stack Cluster using single interface, useful for deploying K8s cluster.. `no_dc_cluster_group` - (Optional) This site is not a member of dc cluster group (`Bool`). -###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set +###### One of the arguments from this list "forward_proxy_allow_all, no_forward_proxy, active_forward_proxy_policies" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -847,7 +891,7 @@ App Stack Cluster using single interface, useful for deploying K8s cluster.. `no_global_network` - (Optional) No global network to connect (`Bool`). -###### One of the arguments from this list "k8s_cluster, no_k8s_cluster" must be set +###### One of the arguments from this list "no_k8s_cluster, k8s_cluster" must be set `k8s_cluster` - (Optional) Site Local K8s API access is enabled, using k8s_cluster object. See [ref](#ref) below for details. @@ -911,7 +955,7 @@ No TLS interception is enabled for this network connector. Specify TLS interception configuration for the network connector. -###### One of the arguments from this list "policy, enable_for_all_domains" must be set +###### One of the arguments from this list "enable_for_all_domains, policy" must be set `enable_for_all_domains` - (Optional) Enable interception for all domains (`Bool`). @@ -933,6 +977,14 @@ Specify TLS interception configuration for the network connector. F5XC Root CA Certificate for validating upstream server certificate. +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Ver Ipv4 IPv4 Address. diff --git a/docs/resources/volterra_global_log_receiver.md b/docs/resources/volterra_global_log_receiver.md index 0f9dcbdcf..d4e25e342 100644 --- a/docs/resources/volterra_global_log_receiver.md +++ b/docs/resources/volterra_global_log_receiver.md @@ -20,40 +20,45 @@ resource "volterra_global_log_receiver" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "ns_current ns_all ns_list ns_system" must be set - ns_system = true + // One of the arguments from this list "ns_list ns_system ns_current ns_all" must be set + + ns_current = true // One of the arguments from this list "request_logs security_events audit_logs" must be set + request_logs = true - // One of the arguments from this list "new_relic_receiver aws_cloud_watch_receiver kafka_receiver sumo_logic_receiver http_receiver splunk_receiver elastic_receiver gcp_bucket_receiver datadog_receiver azure_receiver azure_event_hubs_receiver qradar_receiver s3_receiver" must be set + // One of the arguments from this list "http_receiver elastic_receiver kafka_receiver qradar_receiver gcp_bucket_receiver s3_receiver datadog_receiver azure_event_hubs_receiver new_relic_receiver splunk_receiver azure_receiver aws_cloud_watch_receiver sumo_logic_receiver" must be set - s3_receiver { - aws_cred { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } + http_receiver { + // One of the arguments from this list "auth_none auth_basic auth_token" must be set - aws_region = "us-east-1" + auth_none = true batch { - // One of the arguments from this list "max_bytes max_bytes_disabled" must be set + // One of the arguments from this list "max_bytes_disabled max_bytes" can be set + max_bytes_disabled = true - // One of the arguments from this list "max_events_disabled max_events" must be set + // One of the arguments from this list "max_events_disabled max_events" can be set + max_events_disabled = true - // One of the arguments from this list "timeout_seconds_default timeout_seconds" must be set + // One of the arguments from this list "timeout_seconds_default timeout_seconds" can be set + timeout_seconds_default = true } - bucket = "my-log-bucket" - compression { - // One of the arguments from this list "compression_gzip compression_none" must be set + // One of the arguments from this list "compression_none compression_gzip" can be set + compression_none = true } + + // One of the arguments from this list "no_tls use_tls" must be set + + no_tls = true + uri = "http://example.com:9000/logs" } } @@ -136,7 +141,7 @@ HTTP Basic Auth Password. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -172,7 +177,7 @@ F5XC Secret. URL for token, needs to be fetched from this path. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -186,7 +191,7 @@ F5XC Secret. URL for token, needs to be fetched from this path. Batch Options allow tuning of the conditions for how batches of logs are sent to the endpoint. -###### One of the arguments from this list "max_bytes, max_bytes_disabled" can be set +###### One of the arguments from this list "max_bytes_disabled, max_bytes" can be set `max_bytes` - (Optional) Send batch to endpoint after the batch is equal to or larger than this many bytes (`Int`). @@ -208,7 +213,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to Compression Options allows selection of how data should be compressed when sent to the endpoint. -###### One of the arguments from this list "compression_gzip, compression_none" can be set +###### One of the arguments from this list "compression_none, compression_gzip" can be set `compression_gzip` - (Optional) Gzip Compression (`Bool`). @@ -222,7 +227,7 @@ Azure Event Hubs Connection String.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -258,7 +263,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to Compression Options allows selection of how data should be compressed when sent to the endpoint. -###### One of the arguments from this list "compression_none, compression_gzip" can be set +###### One of the arguments from this list "compression_gzip, compression_none" can be set `compression_gzip` - (Optional) Gzip Compression (`Bool`). @@ -336,7 +341,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to `max_bytes_disabled` - (Optional) Batch Bytes Disabled (`Bool`). -###### One of the arguments from this list "max_events, max_events_disabled" can be set +###### One of the arguments from this list "max_events_disabled, max_events" can be set `max_events` - (Optional) Send batch to endpoint after this many log messages are in the batch (`Int`). @@ -366,7 +371,7 @@ Secret API key to access the datadog server. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -380,7 +385,7 @@ Secret API key to access the datadog server. Batch Options allow tuning of the conditions for how batches of logs are sent to the endpoint. -###### One of the arguments from this list "max_bytes_disabled, max_bytes" can be set +###### One of the arguments from this list "max_bytes, max_bytes_disabled" can be set `max_bytes` - (Optional) Send batch to endpoint after the batch is equal to or larger than this many bytes (`Int`). @@ -392,7 +397,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to `max_events_disabled` - (Optional) Max Events Disabled (`Bool`). -###### One of the arguments from this list "timeout_seconds, timeout_seconds_default" can be set +###### One of the arguments from this list "timeout_seconds_default, timeout_seconds" can be set `timeout_seconds` - (Optional) Send batch to the endpoint after this many seconds (`Int`). @@ -432,7 +437,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to `max_bytes_disabled` - (Optional) Batch Bytes Disabled (`Bool`). -###### One of the arguments from this list "max_events_disabled, max_events" can be set +###### One of the arguments from this list "max_events, max_events_disabled" can be set `max_events` - (Optional) Send batch to endpoint after this many log messages are in the batch (`Int`). @@ -548,7 +553,7 @@ The data may be optionally secured using BlindFold.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -612,7 +617,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to Compression Options allows selection of how data should be compressed when sent to the endpoint. -###### One of the arguments from this list "compression_gzip, compression_none" can be set +###### One of the arguments from this list "compression_none, compression_gzip" can be set `compression_gzip` - (Optional) Gzip Compression (`Bool`). @@ -666,7 +671,7 @@ Send logs to a Datadog service. `datadog_api_key` - (Required) Secret API key to access the datadog server. See [Datadog Receiver Datadog Api Key ](#datadog-receiver-datadog-api-key) below for details. -###### One of the arguments from this list "site, endpoint" must be set +###### One of the arguments from this list "endpoint, site" must be set `endpoint` - (Optional) Datadog Endpoint, example: `example.com:9000` (`String`). @@ -682,7 +687,7 @@ Send logs to a Datadog service. Send logs to an Elasticsearch endpoint. -###### One of the arguments from this list "auth_aws, auth_none, auth_basic" must be set +###### One of the arguments from this list "auth_none, auth_basic, auth_aws" must be set `auth_aws` - (Optional) Reference to AWS Cloud Credentials for Authentication when connecting to the Elasticsearch Endpoint. See [ref](#ref) below for details.(Deprecated) @@ -696,7 +701,7 @@ Send logs to an Elasticsearch endpoint. `endpoint` - (Required) Elasticsearch Endpoint URL, example `http://10.9.8.7:9000` (`String`). -###### One of the arguments from this list "use_tls, no_tls" must be set +###### One of the arguments from this list "no_tls, use_tls" must be set `no_tls` - (Optional) Do not use TLS for the client connection (`Bool`). @@ -922,7 +927,7 @@ Batch Options allow tuning of the conditions for how batches of logs are sent to `max_bytes_disabled` - (Optional) Batch Bytes Disabled (`Bool`). -###### One of the arguments from this list "max_events_disabled, max_events" can be set +###### One of the arguments from this list "max_events, max_events_disabled" can be set `max_events` - (Optional) Send batch to endpoint after this many log messages are in the batch (`Int`). @@ -952,7 +957,7 @@ Splunk HEC Logs secret Token. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -1000,7 +1005,7 @@ Use TLS for client connections to the endpoint. `mtls_enable` - (Optional) Enable mTLS configuration. See [Mtls Choice Mtls Enable ](#mtls-choice-mtls-enable) below for details. -###### One of the arguments from this list "disable_verify_certificate, enable_verify_certificate" can be set +###### One of the arguments from this list "enable_verify_certificate, disable_verify_certificate" can be set `disable_verify_certificate` - (Optional) x-displayName: "Skip Server Certificate Verification" (`Bool`). diff --git a/docs/resources/volterra_healthcheck.md b/docs/resources/volterra_healthcheck.md index 99ea68211..1d09d2773 100644 --- a/docs/resources/volterra_healthcheck.md +++ b/docs/resources/volterra_healthcheck.md @@ -20,20 +20,12 @@ resource "volterra_healthcheck" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "http_health_check tcp_health_check dns_proxy_tcp_health_check dns_proxy_udp_health_check dns_health_check dns_proxy_icmp_health_check" must be set + // One of the arguments from this list "dns_health_check dns_proxy_icmp_health_check http_health_check tcp_health_check dns_proxy_tcp_health_check dns_proxy_udp_health_check" must be set - dns_health_check { - expected_rcode = "no-error" + dns_proxy_tcp_health_check { + expected_response = ".*" - expected_record_type = "REQUESTED_QUERY_TYPE" - - expected_response = "10.0.0.1" - - query_name = "www.example.com" - - query_type = "A" - - reverse = true + send_payload = "send_payload" } healthy_threshold = ["2"] interval = ["10"] @@ -124,7 +116,7 @@ Specifies send string and expected response payload pattern for UDP health Check `headers` - (Optional) health checked cluster. This is a list of key-value pairs. (`String`). -###### One of the arguments from this list "host_header, use_origin_server_name" must be set +###### One of the arguments from this list "use_origin_server_name, host_header" must be set `host_header` - (Optional) The value of the host header. (`String`). diff --git a/docs/resources/volterra_http_loadbalancer.md b/docs/resources/volterra_http_loadbalancer.md index 961a561c7..99488ee8c 100644 --- a/docs/resources/volterra_http_loadbalancer.md +++ b/docs/resources/volterra_http_loadbalancer.md @@ -21,21 +21,23 @@ resource "volterra_http_loadbalancer" "example" { namespace = "staging" // One of the arguments from this list "do_not_advertise advertise_on_public_default_vip advertise_on_public advertise_custom" must be set - do_not_advertise = true - // One of the arguments from this list "disable_api_definition api_definition api_specification api_definitions" must be set + advertise_on_public_default_vip = true + + // One of the arguments from this list "api_definition api_specification api_definitions disable_api_definition" must be set + disable_api_definition = true - // One of the arguments from this list "enable_api_discovery disable_api_discovery" must be set + // One of the arguments from this list "disable_api_discovery enable_api_discovery" must be set enable_api_discovery { discovered_api_settings { purge_duration_for_inactive_discovered_apis = "2" } - // One of the arguments from this list "enable_learn_from_redirect_traffic disable_learn_from_redirect_traffic" must be set - disable_learn_from_redirect_traffic = true + // One of the arguments from this list "disable_learn_from_redirect_traffic enable_learn_from_redirect_traffic" must be set + disable_learn_from_redirect_traffic = true sensitive_data_detection_rules { custom_sensitive_data_detection_rules { metadata { @@ -48,18 +50,24 @@ resource "volterra_http_loadbalancer" "example" { sensitive_data_detection_config { // One of the arguments from this list "specific_domain any_domain" must be set + any_domain = true // One of the arguments from this list "key_pattern value_pattern key_value_pattern" must be set key_pattern { // One of the arguments from this list "exact_value regex_value" must be set - exact_value = "x-volt-header" + + regex_value = "'^new.*$', 'san f.*', '.* del .*'" } + // One of the arguments from this list "all_sections all_request_sections all_response_sections custom_sections" must be set + all_sections = true + // One of the arguments from this list "any_target api_endpoint_target base_path api_group" must be set - any_target = true + + api_group = "oas-all-operations" } sensitive_data_type { @@ -72,98 +80,56 @@ resource "volterra_http_loadbalancer" "example" { } } } + // One of the arguments from this list "no_challenge enable_challenge js_challenge captcha_challenge policy_based_challenge" must be set + no_challenge = true - // One of the arguments from this list "enable_ddos_detection disable_ddos_detection" must be set - disable_ddos_detection = true domains = ["www.foo.com"] - // One of the arguments from this list "round_robin least_active random source_ip_stickiness cookie_stickiness ring_hash" must be set - round_robin = true - // One of the arguments from this list "l7_ddos_action_default l7_ddos_action_block l7_ddos_action_js_challenge l7_ddos_action_none" must be set - - l7_ddos_action_js_challenge { - cookie_expiry = "1000" - - custom_page = "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=" - - js_script_delay = "1000" - } - - // One of the arguments from this list "http https_auto_cert https" must be set - - https_auto_cert { - add_hsts = true - - connection_idle_timeout = "60000" - - // One of the arguments from this list "non_default_loadbalancer default_loadbalancer" must be set - non_default_loadbalancer = true - - header_transformation_type { - // One of the arguments from this list "default_header_transformation proper_case_header_transformation preserve_case_header_transformation" must be set - default_header_transformation = true - } + // One of the arguments from this list "round_robin least_active random source_ip_stickiness cookie_stickiness ring_hash" must be set - http_protocol_options { - // One of the arguments from this list "http_protocol_enable_v1_only http_protocol_enable_v2_only http_protocol_enable_v1_v2" must be set - http_protocol_enable_v1_only = true - } + random = true - http_redirect = true + // One of the arguments from this list "l7_ddos_action_js_challenge l7_ddos_action_none l7_ddos_action_default l7_ddos_action_block" must be set - // One of the arguments from this list "use_mtls no_mtls" must be set - no_mtls = true + l7_ddos_action_none = true - // One of the arguments from this list "disable_path_normalize enable_path_normalize" must be set - enable_path_normalize = true + // One of the arguments from this list "https_auto_cert https http" must be set - // One of the arguments from this list "port port_ranges" must be set - port = "port" + http { + dns_volterra_managed = true - // One of the arguments from this list "pass_through default_header server_name append_server_name" must be set - default_header = true + // One of the arguments from this list "port_ranges port" must be set - tls_config { - // One of the arguments from this list "default_security medium_security low_security custom_security" must be set - default_security = true - } + port_ranges = "80,443,8080-8191,9080" } + // One of the arguments from this list "enable_malicious_user_detection disable_malicious_user_detection" must be set + enable_malicious_user_detection = true // One of the arguments from this list "disable_rate_limit api_rate_limit rate_limit" must be set - rate_limit { - // One of the arguments from this list "no_ip_allowed_list ip_allowed_list custom_ip_allowed_list" must be set - no_ip_allowed_list = true + disable_rate_limit = true - // One of the arguments from this list "no_policies policies" must be set + // One of the arguments from this list "service_policies_from_namespace no_service_policies active_service_policies" must be set - policies { - policies { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } - rate_limiter { - burst_multiplier = "1" + no_service_policies = true - total_number = "1" + // One of the arguments from this list "disable_threat_mesh enable_threat_mesh" must be set + + disable_threat_mesh = true + + // One of the arguments from this list "disable_trust_client_ip_headers enable_trust_client_ip_headers" must be set - unit = "unit" - } - } - // One of the arguments from this list "no_service_policies active_service_policies service_policies_from_namespace" must be set - service_policies_from_namespace = true - // One of the arguments from this list "disable_threat_intelligence enable_threat_intelligence" must be set - disable_threat_intelligence = true - // One of the arguments from this list "enable_trust_client_ip_headers disable_trust_client_ip_headers" must be set disable_trust_client_ip_headers = true + // One of the arguments from this list "user_id_client_ip user_identification" must be set + user_id_client_ip = true + // One of the arguments from this list "disable_waf app_firewall" must be set + disable_waf = true } @@ -240,10 +206,6 @@ Argument Reference `data_guard_rules` - (Optional) Note: App Firewall should be enabled, to use Data Guard feature.. See [Data Guard Rules ](#data-guard-rules) below for details. -`disable_ddos_detection` - (Optional) x-displayName: "Disable" (`Bool`).(Deprecated) - -`enable_ddos_detection` - (Optional) x-displayName: "Enable". See [Ddos Detection Choice Enable Ddos Detection ](#ddos-detection-choice-enable-ddos-detection) below for details.(Deprecated) - `ddos_mitigation_rules` - (Optional) Define manual mitigation rules to block L7 DDoS attacks.. See [Ddos Mitigation Rules ](#ddos-mitigation-rules) below for details. `default_route_pools` - (Optional) Origin Pools used when no route is specified (default route). See [Default Route Pools ](#default-route-pools) below for details. @@ -322,9 +284,9 @@ Argument Reference `system_default_timeouts` - (Optional) Default Settings for Slow DDoS Mitigation (`Bool`). -`disable_threat_intelligence` - (Optional) x-displayName: "Disable" (`Bool`). +`disable_threat_mesh` - (Optional) x-displayName: "Disable" (`Bool`). -`enable_threat_intelligence` - (Optional) x-displayName: "Enable" (`Bool`). +`enable_threat_mesh` - (Optional) x-displayName: "Enable" (`Bool`). `disable_trust_client_ip_headers` - (Optional) x-displayName: "Disable" (`Bool`). @@ -362,7 +324,7 @@ Define rules to block IP Prefixes or AS numbers.. `waf_skip_processing` - (Optional) Skip WAF processing for clients matching this rule. (`Bool`).(Deprecated) -`actions` - (Optional) Actions that should be taken when client identifier matches the rule (`List of Strings`).The rules are SKIP_PROCESSING_WAF, SKIP_PROCESSING_BOT, SKIP_PROCESSING_MUM, SKIP_PROCESSING_IP_REPUTATION, SKIP_PROCESSING_API_PROTECTION, SKIP_PROCESSING_OAS_VALIDATION, SKIP_PROCESSING_DDOS_PROTECTION. +`actions` - (Optional) Actions that should be taken when client identifier matches the rule (`List of Strings`). ###### One of the arguments from this list "ip_prefix, as_number, http_header, user_identifier" must be set @@ -422,7 +384,7 @@ Note: App Firewall should be enabled, to use Data Guard feature.. `skip_data_guard` - (Optional) x-displayName: "Skip" (`Bool`). -###### One of the arguments from this list "any_domain, exact_value, suffix_value" must be set +###### One of the arguments from this list "suffix_value, any_domain, exact_value" must be set `any_domain` - (Optional) Enable Data Guard for any domain (`Bool`). @@ -446,7 +408,7 @@ Define manual mitigation rules to block L7 DDoS attacks.. `block` - (Optional) Block user for a duration determined by the expiration time (`Bool`). -###### One of the arguments from this list "ddos_client_source, ip_prefix_list" must be set +###### One of the arguments from this list "ip_prefix_list, ddos_client_source" must be set `ddos_client_source` - (Optional) Combination of Region, ASN and TLS Fingerprints. See [Mitigation Choice Ddos Client Source ](#mitigation-choice-ddos-client-source) below for details. @@ -472,7 +434,7 @@ Origin Pools used when no route is specified (default route). queries and prevent GraphQL tailored attacks.. -###### One of the arguments from this list "exact_value, suffix_value, any_domain" must be set +###### One of the arguments from this list "suffix_value, any_domain, exact_value" must be set `any_domain` - (Optional) Enable GraphQL inspection for any domain (`Bool`). @@ -498,7 +460,7 @@ tokens or tokens that are not yet valid.. `action` - (Required) x-required. See [Jwt Validation Action ](#jwt-validation-action) below for details. -###### One of the arguments from this list "jwks_config, auth_server_uri, jwks" must be set +###### One of the arguments from this list "auth_server_uri, jwks, jwks_config" must be set `auth_server_uri` - (Optional) JWKS URI will be will be retrieved from this URI (`String`).(Deprecated) @@ -536,7 +498,7 @@ More options like header manipulation, compression etc.. `max_request_header_size` - (Optional) such load balancers is used for all the load balancers in question. (`Int`). -###### One of the arguments from this list "enable_path_normalize, disable_path_normalize" can be set +###### One of the arguments from this list "disable_path_normalize, enable_path_normalize" can be set `disable_path_normalize` - (Optional) x-displayName: "Disable" (`Bool`).(Deprecated) @@ -550,7 +512,7 @@ More options like header manipulation, compression etc.. `response_headers_to_remove` - (Optional) List of keys of Headers to be removed from the HTTP response being sent towards downstream. (`String`). -###### One of the arguments from this list "enable_strict_sni_host_header_check, additional_domains" can be set +###### One of the arguments from this list "additional_domains, enable_strict_sni_host_header_check" can be set `additional_domains` - (Optional) Wildcard names are supported in the suffix or prefix form. See [Strict Sni Host Header Check Choice Additional Domains ](#strict-sni-host-header-check-choice-additional-domains) below for details.(Deprecated) @@ -628,9 +590,9 @@ Define rules to skip processing of one or more features such as WAF, Bot Defense `waf_skip_processing` - (Optional) Skip WAF processing for clients matching this rule. (`Bool`).(Deprecated) -`actions` - (Optional) Actions that should be taken when client identifier matches the rule (`List of Strings`).The rules are SKIP_PROCESSING_WAF, SKIP_PROCESSING_BOT, SKIP_PROCESSING_MUM, SKIP_PROCESSING_IP_REPUTATION, SKIP_PROCESSING_API_PROTECTION, SKIP_PROCESSING_OAS_VALIDATION, SKIP_PROCESSING_DDOS_PROTECTION. +`actions` - (Optional) Actions that should be taken when client identifier matches the rule (`List of Strings`). -###### One of the arguments from this list "ip_prefix, as_number, http_header, user_identifier" must be set +###### One of the arguments from this list "http_header, user_identifier, ip_prefix, as_number" must be set `as_number` - (Optional) RFC 6793 defined 4-byte AS number (`Int`). @@ -680,24 +642,10 @@ When an exclusion rule is matched, then this exclusion rule takes effect and no Allow the request to proceed.. -### Action Block - -x-displayName: "Block". - ### Action Deny Deny the request.. -### Action Js Challenge - -x-displayName: "JavaScript Challenge". - -`cookie_expiry` - (Optional) An expired cookie causes the loadbalancer to issue a new challenge. (`Int`). - -`custom_page` - (Optional) E.g. "

Please Wait

". Base64 encoded string for this html is "PHA+IFBsZWFzZSBXYWl0IDwvcD4=" (`String`). - -`js_script_delay` - (Optional) Delay introduced by Javascript, in milliseconds. (`Int`). - ### Action Choice Action Block Block the request and issue an API security event. @@ -810,7 +758,7 @@ resources from a server at a different origin. Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).. -###### One of the arguments from this list "all_load_balancer_domains, custom_domain_list, disabled" must be set +###### One of the arguments from this list "custom_domain_list, disabled, all_load_balancer_domains" must be set `all_load_balancer_domains` - (Optional) Add All load balancer domains to source origin (allow) list. (`Bool`). @@ -822,10 +770,12 @@ Because CSRF attacks specifically target state-changing requests, the policy onl Settings to normalize the headers of upstream requests.. -###### One of the arguments from this list "default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set `default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + `preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). `proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). @@ -852,7 +802,7 @@ Headers are key-value pairs to be added to HTTP response being sent towards down `name` - (Required) Name of the HTTP header. (`String`). -###### One of the arguments from this list "secret_value, value" must be set +###### One of the arguments from this list "value, secret_value" must be set `secret_value` - (Optional) Secret Value of the HTTP header.. See [Value Choice Secret Value ](#value-choice-secret-value) below for details. @@ -874,17 +824,19 @@ Advertise this load balancer on public network. Where should this load balancer be available. -###### One of the arguments from this list "virtual_site_segment, cloud_edge_segment, segment, site, virtual_site, vk8s_service, virtual_network, site_segment" must be set +###### One of the arguments from this list "cloud_edge_segment, segment, site, virtual_site, vk8s_service, virtual_network, site_segment, virtual_site_segment" must be set `site` - (Optional) Advertise on a customer site and a given network.. See [Choice Site ](#choice-site) below for details. +`site_segment` - (Optional) Advertise on a segment on a site. See [Choice Site Segment ](#choice-site-segment) below for details. + `virtual_network` - (Optional) Advertise on a virtual network. See [Choice Virtual Network ](#choice-virtual-network) below for details. `virtual_site` - (Optional) Advertise on a customer virtual site and a given network.. See [Choice Virtual Site ](#choice-virtual-site) below for details. `vk8s_service` - (Optional) Advertise on vK8s Service Network on RE.. See [Choice Vk8s Service ](#choice-vk8s-service) below for details. -###### One of the arguments from this list "use_default_port, port" must be set +###### One of the arguments from this list "port, use_default_port" must be set `port` - (Optional) TCP port to Listen. (`Int`). @@ -924,7 +876,7 @@ Specify API definition and OpenAPI Validation. `api_definition` - (Required) Specify API definition which includes application API paths and methods derived from swagger files.. See [ref](#ref) below for details. -###### One of the arguments from this list "validation_disabled, validation_all_spec_endpoints, validation_custom_list" must be set +###### One of the arguments from this list "validation_all_spec_endpoints, validation_custom_list, validation_disabled" must be set `validation_all_spec_endpoints` - (Optional) All other API endpoints would proceed according to "Fall Through Mode". See [Validation Target Choice Validation All Spec Endpoints ](#validation-target-choice-validation-all-spec-endpoints) below for details. @@ -986,7 +938,7 @@ The predicate evaluates to true if the actual HTTP method belongs is present in Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. -###### One of the arguments from this list "ip_threat_category_list, client_selector, any_client" must be set +###### One of the arguments from this list "client_selector, any_client, ip_threat_category_list" must be set `any_client` - (Optional) Any Client (`Bool`). @@ -994,7 +946,7 @@ Conditions related to the origin of the request, such as client IP, TLS fingerpr `ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. -###### One of the arguments from this list "ip_matcher, asn_list, asn_matcher, any_ip, ip_prefix_list" must be set +###### One of the arguments from this list "asn_matcher, any_ip, ip_prefix_list, ip_matcher, asn_list" must be set `any_ip` - (Optional) Any Source IP (`Bool`). @@ -1026,6 +978,8 @@ Conditions related to the request, such as query parameters, headers, etc.. `headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. + `query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. ### Api Groups Rules Action @@ -1042,7 +996,7 @@ The action to take if the input request matches the rule.. Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. -###### One of the arguments from this list "client_selector, any_client, ip_threat_category_list" must be set +###### One of the arguments from this list "any_client, ip_threat_category_list, client_selector" must be set `any_client` - (Optional) Any Client (`Bool`). @@ -1050,7 +1004,7 @@ Conditions related to the origin of the request, such as client IP, TLS fingerpr `ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. -###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher, asn_list, asn_matcher" must be set +###### One of the arguments from this list "asn_matcher, any_ip, ip_prefix_list, ip_matcher, asn_list" must be set `any_ip` - (Optional) Any Source IP (`Bool`). @@ -1082,6 +1036,8 @@ Conditions related to the request, such as query parameters, headers, etc.. `headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. + `query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. ### Api Protection Rules Api Endpoint Rules @@ -1118,7 +1074,7 @@ For API groups, refer to API Definition which includes API groups derived from u `client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Api Groups Rules Client Matcher ](#api-groups-rules-client-matcher) below for details. -###### One of the arguments from this list "specific_domain, any_domain" must be set +###### One of the arguments from this list "any_domain, specific_domain" must be set `any_domain` - (Optional) The rule will apply for all domains. (`Bool`). @@ -1258,7 +1214,7 @@ any_asn. asn_list. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Asn Choice Asn Matcher @@ -1276,20 +1232,6 @@ x-displayName: "Exact Match". x-displayName: "Disable". -### Auto Mitigation Choice Disable Auto Mitigation - -x-displayName: "Disable". - -### Auto Mitigation Choice Enable Auto Mitigation - -x-displayName: "Enable". - -###### One of the arguments from this list "block, js_challenge" must be set - -`block` - (Optional) x-displayName: "Block" (`Bool`). - -`js_challenge` - (Optional) x-displayName: "JavaScript Challenge". See [Action Js Challenge ](#action-js-challenge) below for details. - ### Blocked Clients Metadata Common attributes for the rule including name and description.. @@ -1304,7 +1246,7 @@ Common attributes for the rule including name and description.. Bot Defense Policy.. -###### One of the arguments from this list "js_insertion_rules, disable_js_insert, js_insert_all_pages, js_insert_all_pages_except" must be set +###### One of the arguments from this list "disable_js_insert, js_insert_all_pages, js_insert_all_pages_except, js_insertion_rules" must be set `disable_js_insert` - (Optional) Disable JavaScript insertion. (`Bool`). @@ -1318,7 +1260,7 @@ Bot Defense Policy.. `js_download_path` - (Optional) Customize Bot Defense Client JavaScript path. If not specified, default `/common.js` (`String`). -###### One of the arguments from this list "mobile_sdk_config, disable_mobile_sdk" must be set +###### One of the arguments from this list "disable_mobile_sdk, mobile_sdk_config" must be set `disable_mobile_sdk` - (Optional) Disable Mobile SDK. (`Bool`). @@ -1406,7 +1348,7 @@ This category defines rules per URL or API group. If request matches any of thes `client_matcher` - (Optional) Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.. See [Bypass Rate Limiting Rules Client Matcher ](#bypass-rate-limiting-rules-client-matcher) below for details. -###### One of the arguments from this list "any_url, base_path, api_endpoint, api_groups" must be set +###### One of the arguments from this list "api_endpoint, api_groups, any_url, base_path" must be set `any_url` - (Optional) Any URL (`Bool`). @@ -1416,7 +1358,7 @@ This category defines rules per URL or API group. If request matches any of thes `base_path` - (Optional) The base path which this validation applies to (`String`). -###### One of the arguments from this list "any_domain, specific_domain" must be set +###### One of the arguments from this list "specific_domain, any_domain" must be set `any_domain` - (Optional) The rule will apply for all domains. (`Bool`). @@ -1458,6 +1400,8 @@ Conditions related to the request, such as query parameters, headers, etc.. `headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. + `query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. ### Captcha Challenge Parameters Choice Captcha Challenge Parameters @@ -1568,7 +1512,7 @@ Specifies the settings for policy rule based challenge. `rule_list` - (Optional) list challenge rules to be used in policy based challenge. See [Policy Based Challenge Rule List ](#policy-based-challenge-rule-list) below for details. -###### One of the arguments from this list "default_temporary_blocking_parameters, temporary_user_blocking" can be set +###### One of the arguments from this list "temporary_user_blocking, default_temporary_blocking_parameters" can be set `default_temporary_blocking_parameters` - (Optional) Use default parameters (`Bool`).(Deprecated) @@ -1640,7 +1584,7 @@ Specify origin server with K8s service name and site information. `vk8s_networks` - (Optional) origin server are on vK8s network on the site (`Bool`). -###### One of the arguments from this list "service_selector, service_name" must be set +###### One of the arguments from this list "service_name, service_selector" must be set `service_name` - (Optional) Both namespace and cluster-id are optional. (`String`). @@ -1660,12 +1604,14 @@ TLS v1.0+ with PFS ciphers and medium strength crypto algorithms.. Specify origin server with private or public IP address and site information. -###### One of the arguments from this list "inside_network, outside_network" must be set +###### One of the arguments from this list "inside_network, outside_network, segment" must be set `inside_network` - (Optional) Inside network on the site (`Bool`). `outside_network` - (Optional) Outside network on the site (`Bool`). +`segment` - (Required) Segment where this origin server is located. See [ref](#ref) below for details. + ###### One of the arguments from this list "ip, ipv6" must be set `ip` - (Optional) Private IPV4 address (`String`). @@ -1680,12 +1626,14 @@ Specify origin server with private or public DNS name and site information. `dns_name` - (Required) DNS Name (`String`). -###### One of the arguments from this list "inside_network, outside_network" must be set +###### One of the arguments from this list "inside_network, outside_network, segment" must be set `inside_network` - (Optional) Inside network on the site (`Bool`). `outside_network` - (Optional) Outside network on the site (`Bool`). +`segment` - (Required) Segment where this origin server is located. See [ref](#ref) below for details. + `refresh_interval` - (Optional) Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 (`Int`). `site_locator` - (Required) Site or Virtual site where this origin server is located. See [Private Name Site Locator ](#private-name-site-locator) below for details. @@ -1694,7 +1642,7 @@ Specify origin server with private or public DNS name and site information. Specify origin server with public IP. -###### One of the arguments from this list "ipv6, ip" must be set +###### One of the arguments from this list "ip, ipv6" must be set `ip` - (Optional) Public IPV4 address (`String`). @@ -1730,7 +1678,7 @@ A simple route matches on path and/or HTTP method and forwards the matching traf `headers` - (Optional) List of (key, value) headers. See [Simple Route Headers ](#simple-route-headers) below for details. -###### One of the arguments from this list "disable_host_rewrite, auto_host_rewrite, host_rewrite" must be set +###### One of the arguments from this list "auto_host_rewrite, host_rewrite, disable_host_rewrite" must be set `auto_host_rewrite` - (Optional) Host header will be swapped with hostname of upstream host chosen by the cluster (`Bool`). @@ -1758,6 +1706,18 @@ Advertise on a customer site and a given network.. `site` - (Required) Reference to site object. See [ref](#ref) below for details. +### Choice Site Segment + +Advertise on a segment on a site. + +`ip` - (Required) Use given IP address as VIP on the site (`String`). + +`ipv6` - (Optional) Use given IPv6 address as VIP on the site (`String`). + +`segment` - (Required) x-required. See [ref](#ref) below for details. + +`site` - (Required) x-required. See [ref](#ref) below for details. + ### Choice Virtual Network Advertise on a virtual network. @@ -1774,7 +1734,7 @@ Advertise on a virtual network. `specific_vip` - (Optional) Use given IPV4 address as VIP on virtual Network (`String`). -`virtual_network` - (Required) Select virtual network reference. See [ref](#ref) below for details. +`virtual_network` - (Required) Select network reference. See [ref](#ref) below for details. ### Choice Virtual Site @@ -1968,7 +1928,7 @@ The custom data detection config specifies targets, scopes & the pattern to be d `specific_domain` - (Optional) For example: api.example.com (`String`).(Deprecated) -###### One of the arguments from this list "key_pattern, value_pattern, key_value_pattern" must be set +###### One of the arguments from this list "value_pattern, key_value_pattern, key_pattern" must be set `key_pattern` - (Optional) Search for pattern across all field names in the specified sections.. See [Pattern Choice Key Pattern ](#pattern-choice-key-pattern) below for details. @@ -2028,7 +1988,7 @@ URI path matcher.. The ASN is obtained by performing a lookup for the source IPv4 Address in a GeoIP DB.. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Ddos Client Source Tls Fingerprint Matcher @@ -2040,20 +2000,6 @@ The predicate evaluates to true if the TLS fingerprint matches any of the exact `excluded_values` - (Optional) or more known TLS fingerprint classes in the enclosing matcher. (`String`). -### Ddos Detection Choice Disable Ddos Detection - -x-displayName: "Disable". - -### Ddos Detection Choice Enable Ddos Detection - -x-displayName: "Enable". - -###### One of the arguments from this list "enable_auto_mitigation, disable_auto_mitigation" can be set - -`disable_auto_mitigation` - (Optional) x-displayName: "Disable" (`Bool`). - -`enable_auto_mitigation` - (Optional) x-displayName: "Enable". See [Auto Mitigation Choice Enable Auto Mitigation ](#auto-mitigation-choice-enable-auto-mitigation) below for details. - ### Ddos Mitigation Rules Metadata Common attributes for the rule including name and description.. @@ -2086,25 +2032,25 @@ Advanced options configuration like timeouts, circuit breaker, subset load balan `connection_timeout` - (Optional) This is specified in milliseconds. The default value is 2 seconds (`Int`). -`header_transformation_type` - (Optional) Settings to normalize the headers of upstream requests.. See [Advanced Options Header Transformation Type ](#advanced-options-header-transformation-type) below for details. +`header_transformation_type` - (Optional) Settings to normalize the headers of upstream requests.. See [Advanced Options Header Transformation Type ](#advanced-options-header-transformation-type) below for details.(Deprecated) `http_idle_timeout` - (Optional) This is specified in milliseconds. The default value is 5 minutes. (`Int`). -###### One of the arguments from this list "http2_options, auto_http_config, http1_config" must be set +###### One of the arguments from this list "auto_http_config, http1_config, http2_options" must be set `auto_http_config` - (Optional) and will use whichever protocol is negotiated by ALPN with the upstream. (`Bool`). -`http1_config` - (Optional) Enable HTTP/1.1 for upstream connections (`Bool`). +`http1_config` - (Optional) Enable HTTP/1.1 for upstream connections. See [Http Protocol Type Http1 Config ](#http-protocol-type-http1-config) below for details. `http2_options` - (Optional) Enable HTTP/2 for upstream connections.. See [Http Protocol Type Http2 Options ](#http-protocol-type-http2-options) below for details. -###### One of the arguments from this list "disable_lb_source_ip_persistance, enable_lb_source_ip_persistance" can be set +###### One of the arguments from this list "enable_lb_source_ip_persistance, disable_lb_source_ip_persistance" can be set -`disable_lb_source_ip_persistance` - (Optional) Disable LB source IP persistance (`Bool`).(Deprecated) +`disable_lb_source_ip_persistance` - (Optional) Disable LB source IP persistence (`Bool`). -`enable_lb_source_ip_persistance` - (Optional) Enable LB source IP persistance (`Bool`).(Deprecated) +`enable_lb_source_ip_persistance` - (Optional) Enable LB source IP persistence (`Bool`). -###### One of the arguments from this list "outlier_detection, disable_outlier_detection" must be set +###### One of the arguments from this list "disable_outlier_detection, outlier_detection" must be set `disable_outlier_detection` - (Optional) Outlier detection is disabled (`Bool`). @@ -2116,6 +2062,14 @@ Advanced options configuration like timeouts, circuit breaker, subset load balan `panic_threshold` - (Optional) all endpoints will be considered for load balancing ignoring its health status. (`Int`). +###### One of the arguments from this list "proxy_protocol_v1, proxy_protocol_v2, disable_proxy_protocol" can be set + +`disable_proxy_protocol` - (Optional) Disable Proxy Protocol for upstream connections (`Bool`). + +`proxy_protocol_v1` - (Optional) Enable Proxy Protocol Version 1 for upstream connections (`Bool`). + +`proxy_protocol_v2` - (Optional) Enable Proxy Protocol Version 2 for upstream connections (`Bool`). + ###### One of the arguments from this list "disable_subsets, enable_subsets" must be set `disable_subsets` - (Optional) Subset load balancing is disabled. All eligible origin servers will be considered for load balancing. (`Bool`). @@ -2126,7 +2080,7 @@ Advanced options configuration like timeouts, circuit breaker, subset load balan List of origin servers in this pool. -###### One of the arguments from this list "segment_name, public_ip, public_name, private_ip, k8s_service, vn_private_name, segment_ip, private_name, consul_service, custom_endpoint_object, vn_private_ip" must be set +###### One of the arguments from this list "public_name, private_ip, k8s_service, custom_endpoint_object, vn_private_name, public_ip, private_name, consul_service, vn_private_ip" must be set `consul_service` - (Optional) Specify origin server with Hashi Corp Consul service name and site information. See [Choice Consul Service ](#choice-consul-service) below for details. @@ -2214,7 +2168,7 @@ The port on which the request is received. URI path of route. -###### One of the arguments from this list "prefix, path, regex" must be set +###### One of the arguments from this list "path, regex, prefix" must be set `path` - (Optional) Exact path value to match (`String`). @@ -2298,7 +2252,7 @@ Common attributes for the rule including name and description.. URI path matcher.. -###### One of the arguments from this list "regex, prefix, path" must be set +###### One of the arguments from this list "prefix, path, regex" must be set `path` - (Optional) Exact path value to match (`String`). @@ -2320,7 +2274,7 @@ Custom rules for any unprotected end point. x-displayName: "Custom Fall Through Rule List". -###### One of the arguments from this list "action_report, action_block, action_skip" must be set +###### One of the arguments from this list "action_block, action_skip, action_report" must be set `action_block` - (Optional) Block the request and issue an API security event (`Bool`). @@ -2366,7 +2320,7 @@ x-displayName: "Account Management". x-displayName: "Authentication". -###### One of the arguments from this list "login, login_mfa, login_partner, logout, token_refresh" must be set +###### One of the arguments from this list "login_partner, logout, token_refresh, login, login_mfa" must be set `login` - (Optional) x-displayName: "Login". See [Label Choice Login ](#label-choice-login) below for details. @@ -2400,7 +2354,7 @@ x-displayName: "Flight". x-displayName: "Specify Endpoint label category". -###### One of the arguments from this list "financial_services, search, flight, authentication, account_management, profile_management, shopping_gift_cards" must be set +###### One of the arguments from this list "authentication, account_management, profile_management, shopping_gift_cards, financial_services, search, flight" must be set `account_management` - (Optional) x-displayName: "Account Management". See [Flow Label Choice Account Management ](#flow-label-choice-account-management) below for details. @@ -2420,7 +2374,7 @@ x-displayName: "Specify Endpoint label category". x-displayName: "Profile Management". -###### One of the arguments from this list "create, update, view" must be set +###### One of the arguments from this list "view, create, update" must be set `create` - (Optional) x-displayName: "Profile Creation" (`Bool`). @@ -2446,7 +2400,7 @@ x-displayName: "Search". x-displayName: "Shopping & Gift Cards". -###### One of the arguments from this list "shop_make_payment, shop_price_inquiry, shop_purchase_gift_card, shop_update_quantity, shop_enter_drawing_submission, gift_card_make_purchase_with_gift_card, shop_add_to_cart, shop_promo_code_validation, shop_checkout, shop_order, shop_choose_seat, gift_card_validation" can be set +###### One of the arguments from this list "shop_purchase_gift_card, shop_choose_seat, shop_enter_drawing_submission, gift_card_make_purchase_with_gift_card, shop_add_to_cart, shop_promo_code_validation, shop_checkout, shop_make_payment, shop_order, shop_price_inquiry, shop_update_quantity, gift_card_validation" can be set `gift_card_make_purchase_with_gift_card` - (Optional) x-displayName: "Purchase with Gift Card" (`Bool`). @@ -2488,7 +2442,7 @@ System flags Good Bot Traffic, but mitigation is handled in the same manner as m GraphQL configuration.. -###### One of the arguments from this list "enable_introspection, disable_introspection" must be set +###### One of the arguments from this list "disable_introspection, enable_introspection" must be set `disable_introspection` - (Optional) Disable introspection queries for the load balancer. (`Bool`). @@ -2522,7 +2476,7 @@ Use load balancer hash policy for this route. Consistent hashing algorithm, ring hash, is used to select origin server. -###### One of the arguments from this list "add_httponly, ignore_httponly" can be set +###### One of the arguments from this list "ignore_httponly, add_httponly" can be set `add_httponly` - (Optional) Add httponly attribute (`Bool`). @@ -2566,6 +2520,10 @@ Configure hash policy specific for this route. Normalize the headers to lower case. +### Header Transformation Choice Legacy Header Transformation + +Use old header transformation if configured earlier. + ### Header Transformation Choice Preserve Case Header Transformation Preserves the original case of headers without any modifications.. @@ -2586,6 +2544,20 @@ Host header will be swapped with hostname of upstream host chosen by the cluster Host header is not modified. +### Http1 Config Header Transformation + +the stateful formatter will take effect, and the stateless formatter will be disregarded.. + +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set + +`default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). + +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + +`preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). + +`proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). + ### Http Header Headers List of HTTP header name and value pairs. @@ -2594,7 +2566,7 @@ List of HTTP header name and value pairs. `name` - (Required) Name of the header (`String`). -###### One of the arguments from this list "regex, presence, exact" can be set +###### One of the arguments from this list "exact, regex, presence" can be set `exact` - (Optional) Header value to match exactly (`String`). @@ -2606,6 +2578,8 @@ List of HTTP header name and value pairs. Enable HTTP/1.1 for downstream connections. +`header_transformation` - (Optional) the stateful formatter will take effect, and the stateless formatter will be disregarded.. See [Http Protocol Enable V1 Only Header Transformation ](#http-protocol-enable-v1-only-header-transformation) below for details. + ### Http Protocol Choice Http Protocol Enable V1 V2 Enable both HTTP/1.1 and HTTP/2 for downstream connections. @@ -2614,6 +2588,20 @@ Enable both HTTP/1.1 and HTTP/2 for downstream connections. Enable HTTP/2 for downstream connections. +### Http Protocol Enable V1 Only Header Transformation + +the stateful formatter will take effect, and the stateless formatter will be disregarded.. + +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set + +`default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). + +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + +`preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). + +`proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). + ### Http Protocol Type Auto Http Config and will use whichever protocol is negotiated by ALPN with the upstream.. @@ -2622,6 +2610,8 @@ and will use whichever protocol is negotiated by ALPN with the upstream.. Enable HTTP/1.1 for upstream connections. +`header_transformation` - (Optional) the stateful formatter will take effect, and the stateless formatter will be disregarded.. See [Http1 Config Header Transformation ](#http1-config-header-transformation) below for details. + ### Http Protocol Type Http2 Options Enable HTTP/2 for upstream connections.. @@ -2640,10 +2630,12 @@ Ignore httponly attribute. Header transformation options for response headers to the client. -###### One of the arguments from this list "default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set +###### One of the arguments from this list "preserve_case_header_transformation, legacy_header_transformation, default_header_transformation, proper_case_header_transformation" must be set `default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + `preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). `proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). @@ -2654,7 +2646,7 @@ HTTP protocol configuration options for downstream connections.. ###### One of the arguments from this list "http_protocol_enable_v1_only, http_protocol_enable_v2_only, http_protocol_enable_v1_v2" must be set -`http_protocol_enable_v1_only` - (Optional) Enable HTTP/1.1 for downstream connections (`Bool`). +`http_protocol_enable_v1_only` - (Optional) Enable HTTP/1.1 for downstream connections. See [Http Protocol Choice Http Protocol Enable V1 Only ](#http-protocol-choice-http-protocol-enable-v1-only) below for details. `http_protocol_enable_v1_v2` - (Optional) Enable both HTTP/1.1 and HTTP/2 for downstream connections (`Bool`). @@ -2664,10 +2656,12 @@ HTTP protocol configuration options for downstream connections.. Header transformation options for response headers to the client. -###### One of the arguments from this list "default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set `default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + `preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). `proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). @@ -2676,9 +2670,9 @@ Header transformation options for response headers to the client. HTTP protocol configuration options for downstream connections.. -###### One of the arguments from this list "http_protocol_enable_v1_only, http_protocol_enable_v2_only, http_protocol_enable_v1_v2" must be set +###### One of the arguments from this list "http_protocol_enable_v1_v2, http_protocol_enable_v1_only, http_protocol_enable_v2_only" must be set -`http_protocol_enable_v1_only` - (Optional) Enable HTTP/1.1 for downstream connections (`Bool`). +`http_protocol_enable_v1_only` - (Optional) Enable HTTP/1.1 for downstream connections. See [Http Protocol Choice Http Protocol Enable V1 Only ](#http-protocol-choice-http-protocol-enable-v1-only) below for details. `http_protocol_enable_v1_v2` - (Optional) Enable both HTTP/1.1 and HTTP/2 for downstream connections (`Bool`). @@ -2688,7 +2682,7 @@ HTTP protocol configuration options for downstream connections.. Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "custom_security, default_security, medium_security, low_security" must be set +###### One of the arguments from this list "low_security, custom_security, default_security, medium_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -2720,7 +2714,7 @@ List of IP(s) for which rate limiting will be disabled.. ### Ip Allowed List Choice No Ip Allowed List -There is no skip rules for rate limiting, all clients go through rate limiting.. +There is no ip allowed list for rate limiting, all clients go through rate limiting.. ### Ip Asn Choice Any Ip @@ -2730,7 +2724,7 @@ Any Source IP. The predicate evaluates to true if the origin ASN is present in the ASN list.. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Ip Asn Choice Asn Matcher @@ -2868,7 +2862,7 @@ Optional JavaScript insertions exclude list of domain and path matchers.. Optional JavaScript insertions exclude list of domain and path matchers.. -###### One of the arguments from this list "domain, any_domain" must be set +###### One of the arguments from this list "any_domain, domain" must be set `any_domain` - (Optional) Any Domain. (`Bool`). @@ -2940,13 +2934,13 @@ the token validation of these claims should be disabled.. `audience_disable` - (Optional) x-displayName: "Disable" (`Bool`). -###### One of the arguments from this list "issuer_disable, issuer" must be set +###### One of the arguments from this list "issuer, issuer_disable" must be set `issuer` - (Optional) x-displayName: "Exact Match" (`String`). `issuer_disable` - (Optional) x-displayName: "Disable" (`Bool`). -###### One of the arguments from this list "validate_period_enable, validate_period_disable" must be set +###### One of the arguments from this list "validate_period_disable, validate_period_enable" must be set `validate_period_disable` - (Optional) x-displayName: "Disable" (`Bool`). @@ -2982,7 +2976,7 @@ Define where in the HTTP request the JWT token will be extracted. Site or Virtual site where this origin server is located. -###### One of the arguments from this list "virtual_site, site" must be set +###### One of the arguments from this list "site, virtual_site" must be set `site` - (Optional) Reference to site object. See [ref](#ref) below for details. @@ -3132,11 +3126,11 @@ x-displayName: "Profile View". ### Lb Source Ip Persistance Choice Disable Lb Source Ip Persistance -Disable LB source IP persistance. +Disable LB source IP persistence. ### Lb Source Ip Persistance Choice Enable Lb Source Ip Persistance -Enable LB source IP persistance. +Enable LB source IP persistence. ### Learn From Redirect Traffic Disable Learn From Redirect Traffic @@ -3166,7 +3160,7 @@ User is responsible for managing DNS to this load balancer.. `connection_idle_timeout` - (Optional) This is specified in milliseconds. The default value is 2 minutes. (`Int`). -###### One of the arguments from this list "default_loadbalancer, non_default_loadbalancer" can be set +###### One of the arguments from this list "non_default_loadbalancer, default_loadbalancer" can be set `default_loadbalancer` - (Optional) x-displayName: "Yes" (`Bool`). @@ -3174,7 +3168,7 @@ User is responsible for managing DNS to this load balancer.. `header_transformation_type` - (Optional) Header transformation options for response headers to the client. See [Https Header Transformation Type ](#https-header-transformation-type) below for details.(Deprecated) -`http_protocol_options` - (Optional) HTTP protocol configuration options for downstream connections.. See [Https Http Protocol Options ](#https-http-protocol-options) below for details.(Deprecated) +`http_protocol_options` - (Optional) HTTP protocol configuration options for downstream connections.. See [Https Http Protocol Options ](#https-http-protocol-options) below for details. `http_redirect` - (Optional) Redirect HTTP traffic to HTTPS (`Bool`). @@ -3184,13 +3178,13 @@ User is responsible for managing DNS to this load balancer.. `enable_path_normalize` - (Optional) x-displayName: "Enable" (`Bool`). -###### One of the arguments from this list "port_ranges, port" must be set +###### One of the arguments from this list "port, port_ranges" must be set `port` - (Optional) HTTPS port to Listen. (`Int`). `port_ranges` - (Optional) Each port range consists of a single port or two ports separated by "-". (`String`). -###### One of the arguments from this list "pass_through, default_header, server_name, append_server_name" can be set +###### One of the arguments from this list "default_header, server_name, append_server_name, pass_through" can be set `append_server_name` - (Optional) If header value is already present, it is not overwritten and passed as-is. (`String`). @@ -3200,7 +3194,7 @@ User is responsible for managing DNS to this load balancer.. `server_name` - (Optional) This will overwrite existing values, if any, for the server header. (`String`). -###### One of the arguments from this list "tls_parameters, tls_cert_params" must be set +###### One of the arguments from this list "tls_cert_params, tls_parameters" must be set `tls_cert_params` - (Optional) Select/Add one or more TLS Certificate objects to associate with this Load Balancer. See [Tls Certificates Choice Tls Cert Params ](#tls-certificates-choice-tls-cert-params) below for details. @@ -3222,7 +3216,7 @@ or a DNS CNAME record should be created in your DNS provider's portal(only for D `header_transformation_type` - (Optional) Header transformation options for response headers to the client. See [Https Auto Cert Header Transformation Type ](#https-auto-cert-header-transformation-type) below for details.(Deprecated) -`http_protocol_options` - (Optional) HTTP protocol configuration options for downstream connections.. See [Https Auto Cert Http Protocol Options ](#https-auto-cert-http-protocol-options) below for details.(Deprecated) +`http_protocol_options` - (Optional) HTTP protocol configuration options for downstream connections.. See [Https Auto Cert Http Protocol Options ](#https-auto-cert-http-protocol-options) below for details. `http_redirect` - (Optional) Redirect HTTP traffic to HTTPS (`Bool`). @@ -3238,7 +3232,7 @@ or a DNS CNAME record should be created in your DNS provider's portal(only for D `enable_path_normalize` - (Optional) x-displayName: "Enable" (`Bool`). -###### One of the arguments from this list "port_ranges, port" can be set +###### One of the arguments from this list "port, port_ranges" can be set `port` - (Optional) HTTPS port to Listen. (`Int`). @@ -3350,13 +3344,7 @@ ML Config applied on this load balancer. `enable_discovery` - (Optional) x-displayName: "Enable". See [Api Discovery Choice Enable Discovery ](#api-discovery-choice-enable-discovery) below for details. -###### One of the arguments from this list "enable_ddos_detection, disable_ddos_detection" can be set - -`disable_ddos_detection` - (Optional) x-displayName: "Disable" (`Bool`).(Deprecated) - -`enable_ddos_detection` - (Optional) x-displayName: "Enable". See [Ddos Detection Choice Enable Ddos Detection ](#ddos-detection-choice-enable-ddos-detection) below for details.(Deprecated) - -###### One of the arguments from this list "enable_malicious_user_detection, disable_malicious_user_detection" must be set +###### One of the arguments from this list "disable_malicious_user_detection, enable_malicious_user_detection" must be set `disable_malicious_user_detection` - (Optional) x-displayName: "Disable" (`Bool`). @@ -3392,7 +3380,7 @@ Mobile SDK configuration. `mobile_identifier` - (Optional) Mobile traffic identifier type.. See [Mobile Sdk Config Mobile Identifier ](#mobile-sdk-config-mobile-identifier) below for details. -`reload_header_name` - (Required) Header that is used for SDK configuration sync. (`String`). +`reload_header_name` - (Optional) Header that is used for SDK configuration sync. (`String`).(Deprecated) ### Mobile Sdk Config Mobile Identifier @@ -3514,7 +3502,7 @@ x-displayName: "Enable". `no_crl` - (Optional) Client certificate revocation status is not verified (`Bool`). -###### One of the arguments from this list "trusted_ca, trusted_ca_url" must be set +###### One of the arguments from this list "trusted_ca_url, trusted_ca" must be set `trusted_ca` - (Optional) Select/Add a Root CA Certificate object to associate with this Load Balancer. See [ref](#ref) below for details. @@ -3630,7 +3618,7 @@ Multiple Origin Pools with weights and priorities. When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated.. -###### One of the arguments from this list "asn_matcher, any_asn, asn_list" must be set +###### One of the arguments from this list "any_asn, asn_list, asn_matcher" must be set `any_asn` - (Optional) Any origin ASN. (`Bool`). @@ -3796,7 +3784,7 @@ List of protected application endpoints (max 128 items).. List of protected endpoints (max 128 items). -###### One of the arguments from this list "web_client, mobile_client, web_mobile_client" must be set +###### One of the arguments from this list "web_mobile_client, web_client, mobile_client" must be set `mobile_client` - (Optional) Mobile traffic channel. (`Bool`). @@ -3914,7 +3902,7 @@ Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. Site or Virtual site where this origin server is located. -###### One of the arguments from this list "site, virtual_site" must be set +###### One of the arguments from this list "virtual_site, site" must be set `site` - (Optional) Reference to site object. See [ref](#ref) below for details. @@ -3966,7 +3954,7 @@ Common attributes for the rule including name and description.. Mitigation action.. -###### One of the arguments from this list "none, block, redirect, flag" can be set +###### One of the arguments from this list "redirect, flag, none, block" can be set `block` - (Optional) Block bot request and send response with custom content.. See [Action Type Block ](#action-type-block) below for details. @@ -3980,7 +3968,7 @@ Mitigation action.. Matching URI path of the route.. -###### One of the arguments from this list "path, regex, prefix" must be set +###### One of the arguments from this list "prefix, path, regex" must be set `path` - (Optional) Exact path value to match (`String`). @@ -4014,6 +4002,18 @@ Request Body. `regex_value` - (Optional) Regular expression of query match (e.g. the value .* will match on all query) (`String`). +### Proxy Protocol Choice Disable Proxy Protocol + +Disable Proxy Protocol for upstream connections. + +### Proxy Protocol Choice Proxy Protocol V1 + +Enable Proxy Protocol Version 1 for upstream connections. + +### Proxy Protocol Choice Proxy Protocol V2 + +Enable Proxy Protocol Version 2 for upstream connections. + ### Query Params Remove All Params x-displayName: "Remove All Parameters". @@ -4052,7 +4052,7 @@ Define rate limiting for one or more API endpoints. `ip_allowed_list` - (Optional) List of IP(s) for which rate limiting will be disabled.. See [Ip Allowed List Choice Ip Allowed List ](#ip-allowed-list-choice-ip-allowed-list) below for details. -`no_ip_allowed_list` - (Optional) There is no skip rules for rate limiting, all clients go through rate limiting. (`Bool`). +`no_ip_allowed_list` - (Optional) There is no ip allowed list for rate limiting, all clients go through rate limiting. (`Bool`). `server_url_rules` - (Optional) For matching also specific endpoints you can use the API endpoint rules set bellow.. See [Api Rate Limit Server Url Rules ](#api-rate-limit-server-url-rules) below for details. @@ -4098,7 +4098,7 @@ List of (key, value) headers. `name` - (Required) Name of the header (`String`). -###### One of the arguments from this list "exact, regex, presence" can be set +###### One of the arguments from this list "regex, presence, exact" can be set `exact` - (Optional) Header value to match exactly (`String`). @@ -4140,7 +4140,7 @@ Send redirect response. `proto_redirect` - (Optional) When incoming-proto option is specified, swapping of protocol is not done. (`String`). -###### One of the arguments from this list "remove_all_params, replace_params, strip_query_params, all_params, retain_all_params" can be set +###### One of the arguments from this list "replace_params, strip_query_params, all_params, retain_all_params, remove_all_params" can be set `all_params` - (Optional) be removed. Default value is false, which means query portion of the URL will NOT be removed (`Bool`).(Deprecated) @@ -4176,7 +4176,7 @@ Note that all specified cookie matcher predicates must evaluate to true.. `invert_matcher` - (Optional) Invert Match of the expression defined (`Bool`). -###### One of the arguments from this list "check_present, check_not_present, item, presence" must be set +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set `check_not_present` - (Optional) Check that the cookie is not present. (`Bool`). @@ -4194,7 +4194,7 @@ Note that all specified header predicates must evaluate to true.. `invert_matcher` - (Optional) Invert the match result. (`Bool`). -###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set +###### One of the arguments from this list "check_not_present, item, presence, check_present" must be set `check_not_present` - (Optional) Check that the header is not present. (`Bool`). @@ -4206,6 +4206,22 @@ Note that all specified header predicates must evaluate to true.. `name` - (Required) A case-insensitive HTTP header name. (`String`). +### Request Matcher Jwt Claims + +Note that this feature only works on LBs with JWT Validation feature enabled.. + +`invert_matcher` - (Optional) Invert the match result. (`Bool`). + +###### One of the arguments from this list "check_not_present, item, check_present" must be set + +`check_not_present` - (Optional) Check that the JWT Claim is not present. (`Bool`). + +`check_present` - (Optional) Check that the JWT Claim is present. (`Bool`). + +`item` - (Optional) Criteria for matching the values for the JWT Claim. The match is successful if any of the values in the input satisfies the criteria in the matcher.. See [Match Item ](#match-item) below for details. + +`name` - (Required) JWT claim name. (`String`). + ### Request Matcher Query Params Note that all specified query parameter predicates must evaluate to true.. @@ -4324,7 +4340,7 @@ Common attributes for the rule including name and description.. URI path matcher.. -###### One of the arguments from this list "regex, prefix, path" must be set +###### One of the arguments from this list "prefix, path, regex" must be set `path` - (Optional) Exact path value to match (`String`). @@ -4376,7 +4392,7 @@ Specification for the rule including match predicates and actions.. `http_method` - (Optional)http_method. See [Spec Http Method ](#spec-http-method) below for details. -###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher" can be set +###### One of the arguments from this list "ip_prefix_list, ip_matcher, any_ip" can be set `any_ip` - (Optional)any_ip (`Bool`). @@ -4538,7 +4554,7 @@ Conditions related to the origin of the request, such as client IP, TLS fingerpr `ip_threat_category_list` - (Optional) IP threat categories to choose from. See [Client Choice Ip Threat Category List ](#client-choice-ip-threat-category-list) below for details. -###### One of the arguments from this list "asn_matcher, any_ip, ip_prefix_list, ip_matcher, asn_list" must be set +###### One of the arguments from this list "any_ip, ip_prefix_list, ip_matcher, asn_list, asn_matcher" must be set `any_ip` - (Optional) Any Source IP (`Bool`). @@ -4560,6 +4576,8 @@ Conditions related to the request, such as query parameters, headers, etc.. `headers` - (Optional) Note that all specified header predicates must evaluate to true.. See [Request Matcher Headers ](#request-matcher-headers) below for details. +`jwt_claims` - (Optional) Note that this feature only works on LBs with JWT Validation feature enabled.. See [Request Matcher Jwt Claims ](#request-matcher-jwt-claims) below for details. + `query_params` - (Optional) Note that all specified query parameter predicates must evaluate to true.. See [Request Matcher Query Params ](#request-matcher-query-params) below for details. ### Server Validation Choice Skip Server Verification @@ -4658,7 +4676,7 @@ Configure Advanced per route options. `prefix_rewrite` - (Optional) the query string) will be swapped with this value. (`String`). -`regex_rewrite` - (Optional) with the substitution value.. See [Rewrite Choice Regex Rewrite ](#rewrite-choice-regex-rewrite) below for details.(Deprecated) +`regex_rewrite` - (Optional) with the substitution value.. See [Rewrite Choice Regex Rewrite ](#rewrite-choice-regex-rewrite) below for details. ###### One of the arguments from this list "disable_spdy, enable_spdy" must be set @@ -4676,7 +4694,7 @@ Configure Advanced per route options. `inherited_waf` - (Optional) Hence no custom configuration is applied on the route (`Bool`). -###### One of the arguments from this list "web_socket_config, disable_web_socket_config" must be set +###### One of the arguments from this list "disable_web_socket_config, web_socket_config" must be set `disable_web_socket_config` - (Optional) Websocket upgrade is disabled (`Bool`). @@ -4772,7 +4790,7 @@ arg_matchers. `invert_matcher` - (Optional) Invert Match of the expression defined (`Bool`). -###### One of the arguments from this list "check_not_present, item, presence, check_present" must be set +###### One of the arguments from this list "item, presence, check_present, check_not_present" must be set `check_not_present` - (Optional) Check that the argument is not present. (`Bool`). @@ -4826,7 +4844,7 @@ headers. `invert_matcher` - (Optional) Invert the match result. (`Bool`). -###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set +###### One of the arguments from this list "item, presence, check_present, check_not_present" must be set `check_not_present` - (Optional) Check that the header is not present. (`Bool`). @@ -4870,7 +4888,7 @@ query_params. `key` - (Required) A case-sensitive HTTP query parameter name. (`String`). -###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set +###### One of the arguments from this list "item, presence, check_present, check_not_present" must be set `check_not_present` - (Optional) Check that the query parameter is not present. (`Bool`). @@ -4974,7 +4992,7 @@ Specifies configuration for temporary user blocking resulting from malicious use Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "low_security, custom_security, default_security, medium_security" must be set +###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -5046,7 +5064,7 @@ x-displayName: "Enable". `use_mtls_obj` - (Optional) x-displayName: "Select/add a TLS Certificate object for client authentication". See [ref](#ref) below for details. -###### One of the arguments from this list "use_server_verification, skip_server_verification, volterra_trusted_ca" must be set +###### One of the arguments from this list "volterra_trusted_ca, use_server_verification, skip_server_verification" must be set `skip_server_verification` - (Optional) Skip origin server verification (`Bool`). @@ -5072,7 +5090,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set +###### One of the arguments from this list "custom_hash_algorithms, use_system_defaults, disable_ocsp_stapling" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -5136,7 +5154,7 @@ Collect transaction result.. x-displayName: "Enable". -`client_ip_headers` - (Optional) For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip (`String`). +`client_ip_headers` - (Required) For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip (`String`). ### Trusted Clients Metadata @@ -5156,7 +5174,7 @@ mTLS Client Certificate. `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "disable_ocsp_stapling, custom_hash_algorithms, use_system_defaults" can be set +###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -5170,7 +5188,7 @@ mTLS Client Certificate. TLS parameters such as min/max TLS version and ciphers. -###### One of the arguments from this list "low_security, custom_security, default_security, medium_security" must be set +###### One of the arguments from this list "custom_security, default_security, medium_security, low_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -5196,7 +5214,7 @@ x-displayName: "Enable". Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules). -###### One of the arguments from this list "fall_through_mode_allow, fall_through_mode_custom" must be set +###### One of the arguments from this list "fall_through_mode_custom, fall_through_mode_allow" must be set `fall_through_mode_allow` - (Optional) Allow any unprotected end point (`Bool`). @@ -5248,7 +5266,7 @@ Determine what to do with unprotected endpoints (not in the OpenAPI specificatio x-displayName: "Validation List". -###### One of the arguments from this list "api_endpoint, base_path, api_group" must be set +###### One of the arguments from this list "api_group, api_endpoint, base_path" must be set `api_endpoint` - (Optional) The API endpoint (Path + Method) which this validation applies to. See [Condition Type Choice Api Endpoint ](#condition-type-choice-api-endpoint) below for details. @@ -5270,7 +5288,7 @@ x-displayName: "Validation List". OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement. -###### One of the arguments from this list "oversized_body_fail_validation, oversized_body_skip_validation" can be set +###### One of the arguments from this list "oversized_body_skip_validation, oversized_body_fail_validation" can be set `oversized_body_fail_validation` - (Optional) Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb) (`Bool`). @@ -5350,7 +5368,7 @@ Secret Value of the HTTP header.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -5406,7 +5424,7 @@ Common attributes for the rule including name and description.. Header that is used by mobile traffic.. -###### One of the arguments from this list "check_not_present, item, check_present" must be set +###### One of the arguments from this list "check_present, check_not_present, item" must be set `check_not_present` - (Optional) Check that the header is not present. (`Bool`). diff --git a/docs/resources/volterra_k8s_cluster.md b/docs/resources/volterra_k8s_cluster.md index e2a7415dc..ba7971840 100644 --- a/docs/resources/volterra_k8s_cluster.md +++ b/docs/resources/volterra_k8s_cluster.md @@ -21,24 +21,37 @@ resource "volterra_k8s_cluster" "example" { namespace = "staging" // One of the arguments from this list "no_cluster_wide_apps cluster_wide_app_list" must be set + no_cluster_wide_apps = true // One of the arguments from this list "use_default_cluster_role_bindings use_custom_cluster_role_bindings" must be set - use_default_cluster_role_bindings = true + + use_custom_cluster_role_bindings { + cluster_role_bindings { + name = "test1" + namespace = "staging" + tenant = "acmecorp" + } + } // One of the arguments from this list "use_default_cluster_roles use_custom_cluster_role_list" must be set + use_default_cluster_roles = true // One of the arguments from this list "cluster_scoped_access_deny cluster_scoped_access_permit" must be set - cluster_scoped_access_deny = true + + cluster_scoped_access_permit = true // One of the arguments from this list "no_global_access global_access_enable" must be set + no_global_access = true // One of the arguments from this list "no_insecure_registries insecure_registry_list" must be set + no_insecure_registries = true // One of the arguments from this list "no_local_access local_access_config" must be set + no_local_access = true // One of the arguments from this list "use_default_pod_security_admission use_custom_pod_security_admission" must be set @@ -51,14 +64,10 @@ resource "volterra_k8s_cluster" "example" { // One of the arguments from this list "use_default_psp use_custom_psp_list" must be set - use_custom_psp_list { - pod_security_policies { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } + use_default_psp = true + // One of the arguments from this list "vk8s_namespace_access_deny vk8s_namespace_access_permit" must be set + vk8s_namespace_access_deny = true } diff --git a/docs/resources/volterra_k8s_cluster_role.md b/docs/resources/volterra_k8s_cluster_role.md index 9dede4e4a..5eb5f4924 100644 --- a/docs/resources/volterra_k8s_cluster_role.md +++ b/docs/resources/volterra_k8s_cluster_role.md @@ -26,8 +26,12 @@ resource "volterra_k8s_cluster_role" "example" { policy_rule { // One of the arguments from this list "resource_list non_resource_url_list" must be set - non_resource_url_list { - urls = ["value"] + resource_list { + api_groups = ["rbac.authorization.k8s.io"] + + resource_instances = ["admin"] + + resource_types = ["role"] verbs = ["get"] } diff --git a/docs/resources/volterra_k8s_cluster_role_binding.md b/docs/resources/volterra_k8s_cluster_role_binding.md index 9b2c450c3..7ad25c970 100644 --- a/docs/resources/volterra_k8s_cluster_role_binding.md +++ b/docs/resources/volterra_k8s_cluster_role_binding.md @@ -29,11 +29,7 @@ resource "volterra_k8s_cluster_role_binding" "example" { subjects { // One of the arguments from this list "user service_account group" must be set - service_account { - name = "cd-app-controller" - - namespace = "cd-app-namespace" - } + user = "user1@example.com" } } diff --git a/docs/resources/volterra_k8s_pod_security_admission.md b/docs/resources/volterra_k8s_pod_security_admission.md index 0d4e54049..b87a9111d 100644 --- a/docs/resources/volterra_k8s_pod_security_admission.md +++ b/docs/resources/volterra_k8s_pod_security_admission.md @@ -21,10 +21,12 @@ resource "volterra_k8s_pod_security_admission" "example" { namespace = "staging" pod_security_admission_specs { - // One of the arguments from this list "enforce audit warn" must be set - enforce = true + // One of the arguments from this list "warn enforce audit" must be set + + warn = true + + // One of the arguments from this list "restricted privileged baseline" must be set - // One of the arguments from this list "privileged baseline restricted" must be set privileged = true } } diff --git a/docs/resources/volterra_k8s_pod_security_policy.md b/docs/resources/volterra_k8s_pod_security_policy.md index e34738975..1951052a4 100644 --- a/docs/resources/volterra_k8s_pod_security_policy.md +++ b/docs/resources/volterra_k8s_pod_security_policy.md @@ -21,7 +21,72 @@ resource "volterra_k8s_pod_security_policy" "example" { namespace = "staging" // One of the arguments from this list "psp_spec yaml" must be set - yaml = "yaml" + + psp_spec { + allow_privilege_escalation = true + + // One of the arguments from this list "no_allowed_capabilities allowed_capabilities" must be set + + no_allowed_capabilities = true + allowed_csi_drivers = ["value"] + allowed_flex_volumes = ["value"] + allowed_host_paths { + path_prefix = "value" + + read_only = true + } + allowed_proc_mounts = ["value"] + allowed_unsafe_sysctls = ["value"] + default_allow_privilege_escalation = true + + // One of the arguments from this list "no_default_capabilities default_capabilities" must be set + + no_default_capabilities = true + + // One of the arguments from this list "no_drop_capabilities drop_capabilities" must be set + + no_drop_capabilities = true + forbidden_sysctls = ["value"] + + // One of the arguments from this list "no_fs_groups fs_group_strategy_options" must be set + + fs_group_strategy_options { + id_ranges { + max_id = "3000" + + min_id = "2000" + } + + rule = "MustRunAs" + } + + // One of the arguments from this list "run_as_group no_run_as_group" must be set + + no_run_as_group = true + host_ipc = true + host_network = true + host_pid = true + host_port_ranges = "80,443,8080-8191,9080" + privileged = true + read_only_root_filesystem = true + + // One of the arguments from this list "runtime_class no_runtime_class" must be set + + no_runtime_class = true + + // One of the arguments from this list "no_se_linux_options se_linux_options" must be set + + no_se_linux_options = true + + // One of the arguments from this list "no_supplemental_groups supplemental_groups" must be set + + no_supplemental_groups = true + + // One of the arguments from this list "no_run_as_user run_as_user" must be set + + no_run_as_user = true + volumes = ["gitRepo"] + } } ``` diff --git a/docs/resources/volterra_log_receiver.md b/docs/resources/volterra_log_receiver.md index 80a45adf5..d152df61c 100644 --- a/docs/resources/volterra_log_receiver.md +++ b/docs/resources/volterra_log_receiver.md @@ -20,10 +20,11 @@ resource "volterra_log_receiver" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "splunk syslog data_dog" must be set + // One of the arguments from this list "syslog data_dog splunk" must be set syslog { - // One of the arguments from this list "syslog_rfc5424 syslog_rfc3164" must be set + // One of the arguments from this list "syslog_rfc3164 syslog_rfc5424" must be set + syslog_rfc5424 = "500" // One of the arguments from this list "udp_server tcp_server tls_server" must be set @@ -34,7 +35,9 @@ resource "volterra_log_receiver" "example" { server_name = "server.example.com" } } - // One of the arguments from this list "log_receiver_sites site_local" must be set + + // One of the arguments from this list "site_local log_receiver_sites" must be set + site_local = true } @@ -123,7 +126,7 @@ Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. Stream log to Datadog receiver. -###### One of the arguments from this list "trusted_ca_url, volterra_ca" must be set +###### One of the arguments from this list "volterra_ca, trusted_ca_url" must be set `trusted_ca_url` - (Optional) Certificates in PEM format including the PEM headers. (`String`). @@ -143,7 +146,7 @@ Stream log to Datadog receiver. `port` - (Optional) Custom port number used for communication (`Int`). -###### One of the arguments from this list "datadog_default_server, server_name" must be set +###### One of the arguments from this list "server_name, datadog_default_server" must be set `datadog_default_server` - (Optional) Default Datadog server name (`Bool`). @@ -153,7 +156,7 @@ Stream log to Datadog receiver. Stream log to Splunk HEC Receiver. -###### One of the arguments from this list "splunk_server_ip, splunk_server_tls, splunk_server_name" must be set +###### One of the arguments from this list "splunk_server_name, splunk_server_ip, splunk_server_tls" must be set `splunk_server_ip` - (Optional) Splunk HEC server ip address and port number. See [Server Name Choice Splunk Server Ip ](#server-name-choice-splunk-server-ip) below for details. @@ -205,7 +208,7 @@ Syslog transport mode is TLS. `mtls_enable` - (Optional) Enable mTLS configuration. See [Mtls Choice Mtls Enable ](#mtls-choice-mtls-enable) below for details. -###### One of the arguments from this list "default_syslog_tls_port, default_https_port, port" must be set +###### One of the arguments from this list "default_https_port, port, default_syslog_tls_port" must be set `default_https_port` - (Optional) Default port number for HTTPS is 443. (`Bool`). @@ -243,7 +246,7 @@ The data may be optionally secured using BlindFold.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -337,7 +340,7 @@ Fully qualified splunk HEC server name and port number. Splunk TLS Server Parameters. -###### One of the arguments from this list "trusted_ca_url, volterra_ca" must be set +###### One of the arguments from this list "volterra_ca, trusted_ca_url" must be set `trusted_ca_url` - (Optional) Certificates in PEM format including the PEM headers. (`String`). @@ -367,7 +370,7 @@ Secret splunk HEC token. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_malicious_user_mitigation.md b/docs/resources/volterra_malicious_user_mitigation.md index 00b84b2c3..0343ec2ef 100644 --- a/docs/resources/volterra_malicious_user_mitigation.md +++ b/docs/resources/volterra_malicious_user_mitigation.md @@ -82,7 +82,7 @@ Define the threat levels and the corresponding mitigation actions to be taken. The action to be taken at the specified threat level. -###### One of the arguments from this list "none, alert_only, javascript_challenge, captcha_challenge, block_temporarily" must be set +###### One of the arguments from this list "block_temporarily, none, alert_only, javascript_challenge, captcha_challenge" must be set `alert_only` - (Optional) Generate alert while not taking any invasive actions (`Bool`).(Deprecated) @@ -98,7 +98,7 @@ The action to be taken at the specified threat level. The threat level at which mitigation actions will be taken. -###### One of the arguments from this list "high, low, medium" must be set +###### One of the arguments from this list "low, medium, high" must be set `high` - (Optional) (`Bool`). diff --git a/docs/resources/volterra_network_connector.md b/docs/resources/volterra_network_connector.md index b2bf2f3e5..f911fae9c 100644 --- a/docs/resources/volterra_network_connector.md +++ b/docs/resources/volterra_network_connector.md @@ -20,16 +20,12 @@ resource "volterra_network_connector" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "sli_to_slo_dr sli_to_global_dr sli_to_global_snat slo_to_global_dr slo_to_global_snat sli_to_slo_snat" must be set - - slo_to_global_dr { - global_vn { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } + // One of the arguments from this list "sli_to_slo_snat sli_to_slo_dr sli_to_global_dr sli_to_global_snat slo_to_global_dr slo_to_global_snat" must be set + + sli_to_slo_dr = true + // One of the arguments from this list "disable_forward_proxy enable_forward_proxy" must be set + disable_forward_proxy = true } @@ -304,7 +300,7 @@ F5XC certificates for generating intermediate certificate for TLS interception.. SNAT configuration to connect to global network. -###### One of the arguments from this list "snat_pool, snat_pool_allocator, interface_ip" must be set +###### One of the arguments from this list "interface_ip, snat_pool, snat_pool_allocator" must be set `interface_ip` - (Optional) Interface IP of the outgoing interface will be used for SNAT (`Bool`). diff --git a/docs/resources/volterra_network_firewall.md b/docs/resources/volterra_network_firewall.md index 87bb9f5cb..897856adf 100644 --- a/docs/resources/volterra_network_firewall.md +++ b/docs/resources/volterra_network_firewall.md @@ -20,27 +20,23 @@ resource "volterra_network_firewall" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "disable_fast_acl active_fast_acls fast_acl_set" must be set + // One of the arguments from this list "fast_acl_set disable_fast_acl active_fast_acls" must be set - active_fast_acls { - fast_acls { + disable_fast_acl = true + + // One of the arguments from this list "disable_forward_proxy_policy active_forward_proxy_policies forward_proxy_policy_set" must be set + + active_forward_proxy_policies { + forward_proxy_policies { name = "test1" namespace = "staging" tenant = "acmecorp" } } - // One of the arguments from this list "disable_forward_proxy_policy active_forward_proxy_policies forward_proxy_policy_set" must be set - disable_forward_proxy_policy = true // One of the arguments from this list "disable_network_policy active_network_policies network_policy_set active_enhanced_firewall_policies" must be set - active_network_policies { - network_policies { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } + disable_network_policy = true } ``` diff --git a/docs/resources/volterra_network_policy.md b/docs/resources/volterra_network_policy.md index 180a19c11..2c8893898 100644 --- a/docs/resources/volterra_network_policy.md +++ b/docs/resources/volterra_network_policy.md @@ -21,8 +21,9 @@ resource "volterra_network_policy" "example" { namespace = "staging" endpoint { - // One of the arguments from this list "any outside_endpoints inside_endpoints interface namespace label_selector prefix_list" must be set - any = true + // One of the arguments from this list "namespace label_selector prefix_list any outside_endpoints inside_endpoints interface" must be set + + outside_endpoints = true } } @@ -55,7 +56,7 @@ Argument Reference Policy is for set of endpoints defined, rules are applied to connections to or from these endpoints.. -###### One of the arguments from this list "label_selector, prefix_list, any, outside_endpoints, inside_endpoints, interface, namespace" must be set +###### One of the arguments from this list "namespace, label_selector, prefix_list, any, outside_endpoints, inside_endpoints, interface" must be set `any` - (Optional) Any Endpoint that matches 0/0 ip prefix (`Bool`). @@ -205,7 +206,7 @@ Ordered list of rules applied to connections from policy endpoints.. `metadata` - (Required) Common attributes for the rule including name and description.. See [Egress Rules Metadata ](#egress-rules-metadata) below for details. -###### One of the arguments from this list "ip_prefix_set, any, prefix_list, outside_endpoints, inside_endpoints, namespace, label_selector" can be set +###### One of the arguments from this list "label_selector, ip_prefix_set, any, prefix_list, outside_endpoints, inside_endpoints, namespace" can be set `any` - (Optional) Any Endpoint that matches 0/0 ip prefix (`Bool`). @@ -225,7 +226,7 @@ Ordered list of rules applied to connections from policy endpoints.. `rule_name` - (Optional) Rule Name that will be used to query metrics for this rule. (`String`).(Deprecated) -###### One of the arguments from this list "applications, protocol_port_range, all_traffic, all_tcp_traffic, all_udp_traffic" can be set +###### One of the arguments from this list "all_traffic, all_tcp_traffic, all_udp_traffic, applications, protocol_port_range" can be set `all_tcp_traffic` - (Optional) Select all TCP traffic to match (`Bool`). @@ -251,7 +252,7 @@ Ordered list of rules applied to connections to policy endpoints.. `metadata` - (Required) Common attributes for the rule including name and description.. See [Ingress Rules Metadata ](#ingress-rules-metadata) below for details. -###### One of the arguments from this list "outside_endpoints, inside_endpoints, namespace, label_selector, ip_prefix_set, any, prefix_list" can be set +###### One of the arguments from this list "any, prefix_list, outside_endpoints, inside_endpoints, namespace, label_selector, ip_prefix_set" can be set `any` - (Optional) Any Endpoint that matches 0/0 ip prefix (`Bool`). @@ -271,7 +272,7 @@ Ordered list of rules applied to connections to policy endpoints.. `rule_name` - (Optional) Rule Name that will be used to query metrics for this rule. (`String`).(Deprecated) -###### One of the arguments from this list "all_udp_traffic, applications, protocol_port_range, all_traffic, all_tcp_traffic" can be set +###### One of the arguments from this list "all_traffic, all_tcp_traffic, all_udp_traffic, applications, protocol_port_range" can be set `all_tcp_traffic` - (Optional) Select all TCP traffic to match (`Bool`). diff --git a/docs/resources/volterra_network_policy_view.md b/docs/resources/volterra_network_policy_view.md index 44e4f168b..c1dfe4d32 100644 --- a/docs/resources/volterra_network_policy_view.md +++ b/docs/resources/volterra_network_policy_view.md @@ -21,8 +21,9 @@ resource "volterra_network_policy_view" "example" { namespace = "staging" endpoint { - // One of the arguments from this list "namespace label_selector prefix_list any outside_endpoints inside_endpoints interface" must be set - namespace = "namespace" + // One of the arguments from this list "prefix_list any outside_endpoints inside_endpoints interface namespace label_selector" must be set + + any = true } } @@ -67,7 +68,7 @@ Ordered list of rules applied to connections from policy endpoints.. `metadata` - (Required) Common attributes for the rule including name and description.. See [Egress Rules Metadata ](#egress-rules-metadata) below for details. -###### One of the arguments from this list "namespace, label_selector, ip_prefix_set, any, prefix_list, outside_endpoints, inside_endpoints" can be set +###### One of the arguments from this list "label_selector, ip_prefix_set, any, prefix_list, outside_endpoints, inside_endpoints, namespace" can be set `any` - (Optional) Any Endpoint that matches 0/0 ip prefix (`Bool`). @@ -87,7 +88,7 @@ Ordered list of rules applied to connections from policy endpoints.. `rule_name` - (Optional) Rule Name that will be used to query metrics for this rule. (`String`).(Deprecated) -###### One of the arguments from this list "all_udp_traffic, applications, protocol_port_range, all_traffic, all_tcp_traffic" can be set +###### One of the arguments from this list "all_traffic, all_tcp_traffic, all_udp_traffic, applications, protocol_port_range" can be set `all_tcp_traffic` - (Optional) Select all TCP traffic to match (`Bool`). @@ -103,7 +104,7 @@ Ordered list of rules applied to connections from policy endpoints.. Policy is for set of endpoints defined, rules are applied to connections to or from these endpoints.. -###### One of the arguments from this list "outside_endpoints, inside_endpoints, interface, namespace, label_selector, prefix_list, any" must be set +###### One of the arguments from this list "prefix_list, any, outside_endpoints, inside_endpoints, interface, namespace, label_selector" must be set `any` - (Optional) Any Endpoint that matches 0/0 ip prefix (`Bool`). @@ -133,7 +134,7 @@ Ordered list of rules applied to connections to policy endpoints.. `metadata` - (Required) Common attributes for the rule including name and description.. See [Ingress Rules Metadata ](#ingress-rules-metadata) below for details. -###### One of the arguments from this list "prefix_list, outside_endpoints, inside_endpoints, namespace, label_selector, ip_prefix_set, any" can be set +###### One of the arguments from this list "outside_endpoints, inside_endpoints, namespace, label_selector, ip_prefix_set, any, prefix_list" can be set `any` - (Optional) Any Endpoint that matches 0/0 ip prefix (`Bool`). @@ -153,7 +154,7 @@ Ordered list of rules applied to connections to policy endpoints.. `rule_name` - (Optional) Rule Name that will be used to query metrics for this rule. (`String`).(Deprecated) -###### One of the arguments from this list "all_traffic, all_tcp_traffic, all_udp_traffic, applications, protocol_port_range" can be set +###### One of the arguments from this list "all_tcp_traffic, all_udp_traffic, applications, protocol_port_range, all_traffic" can be set `all_tcp_traffic` - (Optional) Select all TCP traffic to match (`Bool`). diff --git a/docs/resources/volterra_nfv_service.md b/docs/resources/volterra_nfv_service.md index d87726048..e7c8043eb 100644 --- a/docs/resources/volterra_nfv_service.md +++ b/docs/resources/volterra_nfv_service.md @@ -21,6 +21,7 @@ resource "volterra_nfv_service" "example" { namespace = "staging" // One of the arguments from this list "disable_https_management https_management" must be set + disable_https_management = true // One of the arguments from this list "f5_big_ip_aws_service palo_alto_fw_service" must be set @@ -37,47 +38,54 @@ resource "volterra_nfv_service" "example" { secret_encoding_type = "secret_encoding_type" - // One of the arguments from this list "blindfold_secret_info vault_secret_info clear_secret_info wingman_secret_info" must be set + // One of the arguments from this list "wingman_secret_info blindfold_secret_info vault_secret_info clear_secret_info" must be set + + blindfold_secret_info { + decryption_provider = "value" + + location = "string:///U2VjcmV0SW5mb3JtYXRpb24=" - wingman_secret_info { - name = "ChargeBack-API-Key" + store_provider = "value" } } admin_username = "admin" endpoint_service { - // One of the arguments from this list "disable_advertise_on_slo_ip advertise_on_slo_ip advertise_on_slo_ip_external" must be set + // One of the arguments from this list "advertise_on_slo_ip_external disable_advertise_on_slo_ip advertise_on_slo_ip" must be set + disable_advertise_on_slo_ip = true // One of the arguments from this list "automatic_vip configured_vip" must be set + automatic_vip = true - // One of the arguments from this list "default_tcp_ports http_port https_port custom_tcp_ports no_tcp_ports" must be set - default_tcp_ports = true + // One of the arguments from this list "no_tcp_ports default_tcp_ports http_port https_port custom_tcp_ports" must be set + + https_port = true // One of the arguments from this list "no_udp_ports custom_udp_ports" must be set - custom_udp_ports { - ports = ["100-200"] - } + no_udp_ports = true } // One of the arguments from this list "market_place_image byol_image" must be set market_place_image { - // One of the arguments from this list "AWAFPayG200Mbps AWAFPayG3Gbps BestPlusPayG200Mbps best_plus_payg_1gbps" must be set - AWAFPayG200Mbps = true + // One of the arguments from this list "best_plus_payg_1gbps AWAFPayG200Mbps AWAFPayG3Gbps BestPlusPayG200Mbps" must be set + + best_plus_payg_1gbps = true } nodes { aws_az_name = "us-west-2a" // One of the arguments from this list "reserved_mgmt_subnet mgmt_subnet" must be set - reserved_mgmt_subnet = true + reserved_mgmt_subnet = true node_name = "node1" // One of the arguments from this list "automatic_prefix tunnel_prefix" must be set + automatic_prefix = true } @@ -95,7 +103,9 @@ resource "volterra_nfv_service" "example" { "key1" = "value1" } } + // One of the arguments from this list "disable_ssh_access enabled_ssh_access" must be set + disable_ssh_access = true } @@ -188,7 +198,7 @@ Enable on Site local outside network, default VIP will be used. Enable On Site Local Outside Internet VIP. -###### One of the arguments from this list "use_mtls, no_mtls" must be set +###### One of the arguments from this list "no_mtls, use_mtls" must be set `no_mtls` - (Optional) x-displayName: "Disable" (`Bool`). @@ -202,7 +212,7 @@ Enable On Site Local Outside Internet VIP. Enable on Site local inside and outside network, default VIP will be used. -###### One of the arguments from this list "no_mtls, use_mtls" must be set +###### One of the arguments from this list "use_mtls, no_mtls" must be set `no_mtls` - (Optional) x-displayName: "Disable" (`Bool`). @@ -246,7 +256,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set +###### One of the arguments from this list "custom_hash_algorithms, use_system_defaults, disable_ocsp_stapling" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -292,7 +302,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "medium_security, low_security, custom_security, default_security" must be set +###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -342,7 +352,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "custom_hash_algorithms, use_system_defaults, disable_ocsp_stapling" can be set +###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -400,7 +410,7 @@ Firewall Admin Password. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -418,7 +428,7 @@ Secret License data. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -490,7 +500,7 @@ Secret admin password for BIG ip. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -542,7 +552,7 @@ Specify how and where the service nodes are spawned. `aws_az_name` - (Required) The AWS Availability Zone must be consistent with the AWS Region chosen. Please select an AZ in the same Region as your TGW Site (`String`). -###### One of the arguments from this list "mgmt_subnet, reserved_mgmt_subnet" must be set +###### One of the arguments from this list "reserved_mgmt_subnet, mgmt_subnet" must be set `mgmt_subnet` - (Optional) Select Existing Subnet or Create New. See [Mgmt Subnet Choice Mgmt Subnet ](#mgmt-subnet-choice-mgmt-subnet) below for details. @@ -560,7 +570,7 @@ Specify how and where the service nodes are spawned. Enable HTTPS based management. -###### One of the arguments from this list "disable_local, do_not_advertise_on_internet, advertise_on_internet_default_vip, advertise_on_internet, advertise_on_slo_internet_vip, advertise_on_sli_vip, advertise_on_slo_vip, advertise_on_slo_sli" must be set +###### One of the arguments from this list "advertise_on_slo_internet_vip, advertise_on_sli_vip, advertise_on_slo_vip, advertise_on_slo_sli, disable_local, do_not_advertise_on_internet, advertise_on_internet_default_vip, advertise_on_internet" must be set `advertise_on_internet` - (Optional) Advertise this loadbalancer on public network. See [Advertise Choice Advertise On Internet ](#advertise-choice-advertise-on-internet) below for details. @@ -580,7 +590,7 @@ Enable HTTPS based management. `domain_suffix` - (Required) Domain suffix will be used along with node name to form URL to access node management (`String`). -###### One of the arguments from this list "advertise_on_public, do_not_advertise, advertise_on_public_default_vip" can be set +###### One of the arguments from this list "do_not_advertise, advertise_on_public_default_vip, advertise_on_public" can be set `advertise_on_public` - (Optional) Advertise this loadbalancer on public network. See [Internet Choice Advertise On Public ](#internet-choice-advertise-on-public) below for details.(Deprecated) @@ -648,7 +658,7 @@ Authorized Public SSH key which will be programmed on the node. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -896,7 +906,7 @@ Auto Setup API Access & Users. With this firewall api access and given admin use `admin_username` - (Required) Firewall Admin Username (`String`). -###### One of the arguments from this list "manual_ssh_keys, autogenerated_ssh_keys" must be set +###### One of the arguments from this list "autogenerated_ssh_keys, manual_ssh_keys" must be set `autogenerated_ssh_keys` - (Optional) Autogenerated SSH Keys, users will be able to download the keys after external service is created (`Bool`).(Deprecated) diff --git a/docs/resources/volterra_origin_pool.md b/docs/resources/volterra_origin_pool.md index f0487b734..29edd6b91 100644 --- a/docs/resources/volterra_origin_pool.md +++ b/docs/resources/volterra_origin_pool.md @@ -23,16 +23,12 @@ resource "volterra_origin_pool" "example" { loadbalancer_algorithm = ["loadbalancer_algorithm"] origin_servers { - // One of the arguments from this list "segment_ip private_name consul_service custom_endpoint_object vn_private_ip vn_private_name public_ip public_name private_ip k8s_service segment_name" must be set + // One of the arguments from this list "consul_service vn_private_ip public_ip private_name k8s_service custom_endpoint_object vn_private_name public_name private_ip" must be set - vn_private_name { - dns_name = "value" + public_ip { + // One of the arguments from this list "ip ipv6" must be set - private_network { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } + ip = "8.8.8.8" } labels = { @@ -40,10 +36,12 @@ resource "volterra_origin_pool" "example" { } } - // One of the arguments from this list "lb_port port automatic_port" must be set + // One of the arguments from this list "port automatic_port lb_port" must be set + lb_port = true - // One of the arguments from this list "use_tls no_tls" must be set + // One of the arguments from this list "no_tls use_tls" must be set + no_tls = true } @@ -106,23 +104,23 @@ Advanced options configuration like timeouts, circuit breaker, subset load balan `connection_timeout` - (Optional) This is specified in milliseconds. The default value is 2 seconds (`Int`). -`header_transformation_type` - (Optional) Settings to normalize the headers of upstream requests.. See [Advanced Options Header Transformation Type ](#advanced-options-header-transformation-type) below for details. +`header_transformation_type` - (Optional) Settings to normalize the headers of upstream requests.. See [Advanced Options Header Transformation Type ](#advanced-options-header-transformation-type) below for details.(Deprecated) `http_idle_timeout` - (Optional) This is specified in milliseconds. The default value is 5 minutes. (`Int`). -###### One of the arguments from this list "auto_http_config, http1_config, http2_options" must be set +###### One of the arguments from this list "http1_config, http2_options, auto_http_config" must be set `auto_http_config` - (Optional) and will use whichever protocol is negotiated by ALPN with the upstream. (`Bool`). -`http1_config` - (Optional) Enable HTTP/1.1 for upstream connections (`Bool`). +`http1_config` - (Optional) Enable HTTP/1.1 for upstream connections. See [Http Protocol Type Http1 Config ](#http-protocol-type-http1-config) below for details. `http2_options` - (Optional) Enable HTTP/2 for upstream connections.. See [Http Protocol Type Http2 Options ](#http-protocol-type-http2-options) below for details. ###### One of the arguments from this list "enable_lb_source_ip_persistance, disable_lb_source_ip_persistance" can be set -`disable_lb_source_ip_persistance` - (Optional) Disable LB source IP persistance (`Bool`).(Deprecated) +`disable_lb_source_ip_persistance` - (Optional) Disable LB source IP persistence (`Bool`). -`enable_lb_source_ip_persistance` - (Optional) Enable LB source IP persistance (`Bool`).(Deprecated) +`enable_lb_source_ip_persistance` - (Optional) Enable LB source IP persistence (`Bool`). ###### One of the arguments from this list "disable_outlier_detection, outlier_detection" must be set @@ -136,6 +134,14 @@ Advanced options configuration like timeouts, circuit breaker, subset load balan `panic_threshold` - (Optional) all endpoints will be considered for load balancing ignoring its health status. (`Int`). +###### One of the arguments from this list "disable_proxy_protocol, proxy_protocol_v1, proxy_protocol_v2" can be set + +`disable_proxy_protocol` - (Optional) Disable Proxy Protocol for upstream connections (`Bool`). + +`proxy_protocol_v1` - (Optional) Enable Proxy Protocol Version 1 for upstream connections (`Bool`). + +`proxy_protocol_v2` - (Optional) Enable Proxy Protocol Version 2 for upstream connections (`Bool`). + ###### One of the arguments from this list "disable_subsets, enable_subsets" must be set `disable_subsets` - (Optional) Subset load balancing is disabled. All eligible origin servers will be considered for load balancing. (`Bool`). @@ -146,7 +152,7 @@ Advanced options configuration like timeouts, circuit breaker, subset load balan List of origin servers in this pool. -###### One of the arguments from this list "public_name, private_ip, k8s_service, segment_name, public_ip, consul_service, custom_endpoint_object, vn_private_ip, vn_private_name, segment_ip, private_name" must be set +###### One of the arguments from this list "custom_endpoint_object, vn_private_name, public_name, private_ip, k8s_service, vn_private_ip, public_ip, private_name, consul_service" must be set `consul_service` - (Optional) Specify origin server with Hashi Corp Consul service name and site information. See [Choice Consul Service ](#choice-consul-service) below for details. @@ -172,10 +178,12 @@ List of origin servers in this pool. Settings to normalize the headers of upstream requests.. -###### One of the arguments from this list "default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set `default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + `preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). `proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). @@ -218,7 +226,7 @@ TLS v1.2+ with PFS ciphers and strong crypto algorithms.. Specify origin server with K8s service name and site information. -###### One of the arguments from this list "outside_network, vk8s_networks, inside_network" must be set +###### One of the arguments from this list "inside_network, outside_network, vk8s_networks" must be set `inside_network` - (Optional) Inside network on the site (`Bool`). @@ -226,7 +234,7 @@ Specify origin server with K8s service name and site information. `vk8s_networks` - (Optional) origin server are on vK8s network on the site (`Bool`). -###### One of the arguments from this list "service_selector, service_name" must be set +###### One of the arguments from this list "service_name, service_selector" must be set `service_name` - (Optional) Both namespace and cluster-id are optional. (`String`). @@ -246,13 +254,15 @@ TLS v1.0+ with PFS ciphers and medium strength crypto algorithms.. Specify origin server with private or public IP address and site information. -###### One of the arguments from this list "inside_network, outside_network" must be set +###### One of the arguments from this list "inside_network, outside_network, segment" must be set `inside_network` - (Optional) Inside network on the site (`Bool`). `outside_network` - (Optional) Outside network on the site (`Bool`). -###### One of the arguments from this list "ip, ipv6" must be set +`segment` - (Required) Segment where this origin server is located. See [ref](#ref) below for details. + +###### One of the arguments from this list "ipv6, ip" must be set `ip` - (Optional) Private IPV4 address (`String`). @@ -266,12 +276,14 @@ Specify origin server with private or public DNS name and site information. `dns_name` - (Required) DNS Name (`String`). -###### One of the arguments from this list "inside_network, outside_network" must be set +###### One of the arguments from this list "segment, inside_network, outside_network" must be set `inside_network` - (Optional) Inside network on the site (`Bool`). `outside_network` - (Optional) Outside network on the site (`Bool`). +`segment` - (Required) Segment where this origin server is located. See [ref](#ref) below for details. + `refresh_interval` - (Optional) Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 (`Int`). `site_locator` - (Required) Site or Virtual site where this origin server is located. See [Private Name Site Locator ](#private-name-site-locator) below for details. @@ -300,7 +312,7 @@ Specify origin server IP address on virtual network other than inside or outside `virtual_network` - (Required) Virtual Network where this IP will be present. See [ref](#ref) below for details. -###### One of the arguments from this list "ip, ipv6" must be set +###### One of the arguments from this list "ipv6, ip" must be set `ip` - (Optional) IPV4 address (`String`). @@ -370,6 +382,10 @@ Request will be failed and error returned, as if cluster has no origin servers.. Normalize the headers to lower case. +### Header Transformation Choice Legacy Header Transformation + +Use old header transformation if configured earlier. + ### Header Transformation Choice Preserve Case Header Transformation Preserves the original case of headers without any modifications.. @@ -378,6 +394,20 @@ Preserves the original case of headers without any modifications.. For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”. +### Http1 Config Header Transformation + +the stateful formatter will take effect, and the stateless formatter will be disregarded.. + +###### One of the arguments from this list "preserve_case_header_transformation, legacy_header_transformation, default_header_transformation, proper_case_header_transformation" must be set + +`default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). + +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + +`preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). + +`proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). + ### Http Protocol Type Auto Http Config and will use whichever protocol is negotiated by ALPN with the upstream.. @@ -386,6 +416,8 @@ and will use whichever protocol is negotiated by ALPN with the upstream.. Enable HTTP/1.1 for upstream connections. +`header_transformation` - (Optional) the stateful formatter will take effect, and the stateless formatter will be disregarded.. See [Http1 Config Header Transformation ](#http1-config-header-transformation) below for details. + ### Http Protocol Type Http2 Options Enable HTTP/2 for upstream connections.. @@ -404,11 +436,11 @@ Site or Virtual site where this origin server is located. ### Lb Source Ip Persistance Choice Disable Lb Source Ip Persistance -Disable LB source IP persistance. +Disable LB source IP persistence. ### Lb Source Ip Persistance Choice Enable Lb Source Ip Persistance -Enable LB source IP persistance. +Enable LB source IP persistence. ### Mtls Choice No Mtls @@ -472,7 +504,7 @@ Disable panic threshold. Only healthy endpoints are considered for load balancin Site or Virtual site where this origin server is located. -###### One of the arguments from this list "virtual_site, site" must be set +###### One of the arguments from this list "site, virtual_site" must be set `site` - (Optional) Reference to site object. See [ref](#ref) below for details. @@ -498,6 +530,18 @@ Site or Virtual site where this origin server is located. `virtual_site` - (Optional) Reference to virtual site object. See [ref](#ref) below for details. +### Proxy Protocol Choice Disable Proxy Protocol + +Disable Proxy Protocol for upstream connections. + +### Proxy Protocol Choice Proxy Protocol V1 + +Enable Proxy Protocol Version 1 for upstream connections. + +### Proxy Protocol Choice Proxy Protocol V2 + +Enable Proxy Protocol Version 2 for upstream connections. + ### Ref Reference to another volterra object is shown like below @@ -618,7 +662,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da x-displayName: "Enable". -###### One of the arguments from this list "use_mtls_obj, no_mtls, use_mtls" must be set +###### One of the arguments from this list "use_mtls, use_mtls_obj, no_mtls" must be set `no_mtls` - (Optional) x-displayName: "Disable" (`Bool`). @@ -626,7 +670,7 @@ x-displayName: "Enable". `use_mtls_obj` - (Optional) x-displayName: "Select/add a TLS Certificate object for client authentication". See [ref](#ref) below for details. -###### One of the arguments from this list "volterra_trusted_ca, use_server_verification, skip_server_verification" must be set +###### One of the arguments from this list "skip_server_verification, volterra_trusted_ca, use_server_verification" must be set `skip_server_verification` - (Optional) Skip origin server verification (`Bool`). @@ -634,7 +678,7 @@ x-displayName: "Enable". `volterra_trusted_ca` - (Optional) Perform origin server verification using F5XC Default Root CA Certificate (`Bool`). -###### One of the arguments from this list "sni, use_host_header_as_sni, disable_sni" must be set +###### One of the arguments from this list "disable_sni, sni, use_host_header_as_sni" must be set `disable_sni` - (Optional) Do not use SNI. (`Bool`). @@ -652,7 +696,7 @@ mTLS Client Certificate. `description` - (Optional) Description for the certificate (`String`). -###### One of the arguments from this list "use_system_defaults, disable_ocsp_stapling, custom_hash_algorithms" can be set +###### One of the arguments from this list "disable_ocsp_stapling, custom_hash_algorithms, use_system_defaults" can be set `custom_hash_algorithms` - (Optional) Use hash algorithms in the custom order. F5XC will try to fetch ocsp response from the CA in the given order. Additionally, LoadBalancer will not become active until ocspResponse cannot be fetched if the certificate has MustStaple extension set.. See [Ocsp Stapling Choice Custom Hash Algorithms ](#ocsp-stapling-choice-custom-hash-algorithms) below for details. @@ -666,7 +710,7 @@ mTLS Client Certificate. TLS parameters such as min/max TLS version and ciphers. -###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set +###### One of the arguments from this list "low_security, custom_security, default_security, medium_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. diff --git a/docs/resources/volterra_protocol_inspection.md b/docs/resources/volterra_protocol_inspection.md index 4d25011b8..d0a3bd09c 100644 --- a/docs/resources/volterra_protocol_inspection.md +++ b/docs/resources/volterra_protocol_inspection.md @@ -21,7 +21,7 @@ resource "volterra_protocol_inspection" "example" { namespace = "staging" enable_disable_compliance_checks { - // One of the arguments from this list "disable_compliance_checks enable_compliance_checks" must be set + // One of the arguments from this list "enable_compliance_checks disable_compliance_checks" must be set enable_compliance_checks { name = "test1" @@ -31,8 +31,9 @@ resource "volterra_protocol_inspection" "example" { } enable_disable_signatures { - // One of the arguments from this list "enable_signature disable_signature" must be set - disable_signature = true + // One of the arguments from this list "disable_signature enable_signature" must be set + + enable_signature = true } } diff --git a/docs/resources/volterra_protocol_policer.md b/docs/resources/volterra_protocol_policer.md index ff267e68a..ab2e1149b 100644 --- a/docs/resources/volterra_protocol_policer.md +++ b/docs/resources/volterra_protocol_policer.md @@ -56,7 +56,7 @@ List of L4 protocol match condition and associated traffic rate limits. Protocol specifys L4 match criteria in a packet. -###### One of the arguments from this list "tcp, icmp, udp, dns" can be set +###### One of the arguments from this list "dns, tcp, icmp, udp" can be set `dns` - (Optional) Match all DNS packets. See [Type Dns ](#type-dns) below for details. diff --git a/docs/resources/volterra_rate_limiter_policy.md b/docs/resources/volterra_rate_limiter_policy.md index 4bd815792..fb0907c40 100644 --- a/docs/resources/volterra_rate_limiter_policy.md +++ b/docs/resources/volterra_rate_limiter_policy.md @@ -76,7 +76,7 @@ any_asn. asn_list. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Asn Choice Asn Matcher @@ -166,7 +166,7 @@ Specification for the rule including match preicates and actions.. `custom_rate_limiter` - (Optional) Apply a custom rate limiter.. See [ref](#ref) below for details. -###### One of the arguments from this list "any_asn, asn_list, asn_matcher" can be set +###### One of the arguments from this list "asn_matcher, any_asn, asn_list" can be set `any_asn` - (Optional)any_asn (`Bool`). @@ -174,7 +174,7 @@ Specification for the rule including match preicates and actions.. `asn_matcher` - (Optional)asn_matcher. See [Asn Choice Asn Matcher ](#asn-choice-asn-matcher) below for details. -###### One of the arguments from this list "any_country, country_list" must be set +###### One of the arguments from this list "country_list, any_country" must be set `any_country` - (Optional) x-displayName: "Any Country" (`Bool`). diff --git a/docs/resources/volterra_route.md b/docs/resources/volterra_route.md index 0b589e7d6..c9fce7cd3 100644 --- a/docs/resources/volterra_route.md +++ b/docs/resources/volterra_route.md @@ -21,21 +21,9 @@ resource "volterra_route" "example" { namespace = "staging" routes { - // One of the arguments from this list "bot_defense_javascript_injection inherited_bot_defense_javascript_injection" must be set + // One of the arguments from this list "inherited_bot_defense_javascript_injection bot_defense_javascript_injection" can be set - bot_defense_javascript_injection { - javascript_location = "javascript_location" - - javascript_tags { - javascript_url = "https://www.example.com/login/common.js?single" - - tag_attributes { - javascript_tag = "ID" - - tag_value = "_imp_apg_dip_" - } - } - } + inherited_bot_defense_javascript_injection = true bot_defense_javascript_injection_inline_mode { element_selector = "value" @@ -55,26 +43,30 @@ resource "volterra_route" "example" { name = "Content-Type" - // One of the arguments from this list "presence exact regex" must be set + // One of the arguments from this list "presence exact regex" can be set + exact = "application/json" } http_method = "http_method" incoming_port { - // One of the arguments from this list "port port_ranges no_port_match" must be set + // One of the arguments from this list "port port_ranges no_port_match" can be set + port = "6443" } path { - // One of the arguments from this list "path regex prefix" must be set - prefix = "/register/" + // One of the arguments from this list "prefix path regex" must be set + + regex = "regex" } query_params { key = "assignee_username" - // One of the arguments from this list "regex exact" must be set + // One of the arguments from this list "exact regex" can be set + exact = "exact" } } @@ -85,6 +77,7 @@ resource "volterra_route" "example" { name = "value" // One of the arguments from this list "value secret_value" must be set + value = "value" } @@ -96,6 +89,7 @@ resource "volterra_route" "example" { name = "value" // One of the arguments from this list "value secret_value" must be set + value = "value" } @@ -112,9 +106,9 @@ resource "volterra_route" "example" { max_request_time = "30" } - // One of the arguments from this list "retract_cluster do_not_retract_cluster" must be set - retract_cluster = true + // One of the arguments from this list "retract_cluster do_not_retract_cluster" can be set + retract_cluster = true cors_policy { allow_credentials = true @@ -134,15 +128,11 @@ resource "volterra_route" "example" { maximum_age = "-1" } - csrf_policy { - // One of the arguments from this list "custom_domain_list disabled all_load_balancer_domains" must be set + // One of the arguments from this list "all_load_balancer_domains custom_domain_list disabled" must be set - custom_domain_list { - domains = ["www.foo.com"] - } + all_load_balancer_domains = true } - destinations { cluster { name = "test1" @@ -158,21 +148,20 @@ resource "volterra_route" "example" { weight = "10" } - endpoint_subsets = { "key1" = "value1" } - hash_policy { // One of the arguments from this list "cookie source_ip header_name" must be set + header_name = "host" terminal = true } // One of the arguments from this list "host_rewrite auto_host_rewrite" must be set - host_rewrite = "one.volterra.com" + host_rewrite = "one.volterra.com" mirror_policy { cluster { name = "test1" @@ -186,9 +175,7 @@ resource "volterra_route" "example" { numerator = "5" } } - priority = "priority" - retry_policy { back_off { base_interval = "5" @@ -207,15 +194,13 @@ resource "volterra_route" "example" { retry_on = "5xx" } - // One of the arguments from this list "prefix_rewrite regex_rewrite" must be set - prefix_rewrite = "/" + // One of the arguments from this list "prefix_rewrite regex_rewrite" can be set + prefix_rewrite = "/" spdy_config { use_spdy = true } - timeout = "2000" - web_socket_config { idle_timeout = "2000" @@ -225,20 +210,15 @@ resource "volterra_route" "example" { } } service_policy { - // One of the arguments from this list "disable context_extensions" must be set + // One of the arguments from this list "context_extensions disable" can be set + disable = true } skip_lb_override = true waf_type { - // One of the arguments from this list "app_firewall disable_waf inherit_waf" must be set + // One of the arguments from this list "app_firewall disable_waf inherit_waf" can be set - app_firewall { - app_firewall { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } + disable_waf = true } } } @@ -372,7 +352,7 @@ List of (key, value) headers. `name` - (Required) Name of the header (`String`). -###### One of the arguments from this list "exact, regex, presence" can be set +###### One of the arguments from this list "presence, exact, regex" can be set `exact` - (Optional) Header value to match exactly (`String`). @@ -396,7 +376,7 @@ The port on which the request is received. URI path of route. -###### One of the arguments from this list "regex, prefix, path" must be set +###### One of the arguments from this list "prefix, path, regex" must be set `path` - (Optional) Exact path value to match (`String`). @@ -438,7 +418,7 @@ Hash based on cookie. `path` - (Optional) will be set for the cookie (`String`). -###### One of the arguments from this list "samesite_lax, samesite_none, ignore_samesite, samesite_strict" can be set +###### One of the arguments from this list "samesite_strict, samesite_lax, samesite_none, ignore_samesite" can be set `ignore_samesite` - (Optional) Ignore Samesite attribute (`Bool`). @@ -544,7 +524,7 @@ Send request to one of the destination from list of destinations. `prefix_rewrite` - (Optional) while requests to /register/public will be stripped to /public (`String`). -`regex_rewrite` - (Optional) would transform "/service/foo/v1/api" into "/v1/api/instance/foo".. See [Route Destination Rewrite Regex Rewrite ](#route-destination-rewrite-regex-rewrite) below for details.(Deprecated) +`regex_rewrite` - (Optional) would transform "/service/foo/v1/api" into "/v1/api/instance/foo".. See [Route Destination Rewrite Regex Rewrite ](#route-destination-rewrite-regex-rewrite) below for details. `spdy_config` - (Optional) SPDY configuration for each route. See [Route Destination Spdy Config ](#route-destination-spdy-config) below for details. @@ -570,7 +550,7 @@ Send redirect response. `proto_redirect` - (Optional) When incoming-proto option is specified, swapping of protocol is not done. (`String`). -###### One of the arguments from this list "retain_all_params, remove_all_params, replace_params, strip_query_params, all_params" can be set +###### One of the arguments from this list "strip_query_params, all_params, retain_all_params, remove_all_params, replace_params" can be set `all_params` - (Optional) be removed. Default value is false, which means query portion of the URL will NOT be removed (`Bool`).(Deprecated) @@ -650,7 +630,7 @@ sent to the cluster specified in the destination. route the request. -###### One of the arguments from this list "header_name, cookie, source_ip" must be set +###### One of the arguments from this list "cookie, source_ip, header_name" must be set `cookie` - (Optional) Hash based on cookie. See [Policy Specifier Cookie ](#policy-specifier-cookie) below for details. @@ -764,7 +744,7 @@ enclosing VirtualHost object level. service policy configuration at route level which overrides configuration at virtual-host level. -###### One of the arguments from this list "context_extensions, disable" can be set +###### One of the arguments from this list "disable, context_extensions" can be set `context_extensions` - (Optional) sending additional information to the external authorization server.. See [Service Policy Choice Context Extensions ](#service-policy-choice-context-extensions) below for details.(Deprecated) @@ -868,7 +848,7 @@ Secret Value of the HTTP header.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_secret_policy.md b/docs/resources/volterra_secret_policy.md index 021d29737..aa2a0938f 100644 --- a/docs/resources/volterra_secret_policy.md +++ b/docs/resources/volterra_secret_policy.md @@ -116,7 +116,7 @@ Specification for the rule including match predicates and actions.. `action` - (Required) Action to be enforced if all the predicates evaluates to true. (`String`). -###### One of the arguments from this list "client_selector, client_name_matcher, client_name" must be set +###### One of the arguments from this list "client_name, client_selector, client_name_matcher" must be set `client_name` - (Optional) This predicate evaluates to true if client name matches the configured name (`String`). diff --git a/docs/resources/volterra_secret_policy_rule.md b/docs/resources/volterra_secret_policy_rule.md index a13efcafc..fcc7ff166 100644 --- a/docs/resources/volterra_secret_policy_rule.md +++ b/docs/resources/volterra_secret_policy_rule.md @@ -22,6 +22,7 @@ resource "volterra_secret_policy_rule" "example" { action = ["action"] // One of the arguments from this list "client_name client_selector client_name_matcher" must be set + client_name = "ver.re01.int.ves.io" } diff --git a/docs/resources/volterra_securemesh_site.md b/docs/resources/volterra_securemesh_site.md index 695b3a2d2..cda96d453 100644 --- a/docs/resources/volterra_securemesh_site.md +++ b/docs/resources/volterra_securemesh_site.md @@ -21,14 +21,16 @@ resource "volterra_securemesh_site" "example" { namespace = "staging" // One of the arguments from this list "default_blocked_services blocked_services" must be set + default_blocked_services = true // One of the arguments from this list "no_bond_devices bond_device_list" must be set + no_bond_devices = true // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set - logs_streaming_disabled = true + logs_streaming_disabled = true master_node_configuration { name = "master-0" @@ -37,48 +39,8 @@ resource "volterra_securemesh_site" "example" { // One of the arguments from this list "default_network_config custom_network_config" must be set - custom_network_config { - bgp_peer_address = "10.1.1.1" - - bgp_peer_address_v6 = "3c0f:7554:352a:a2dc:333f:67c5:c2b5:7326" - - bgp_router_id = "10.1.1.1" - - // One of the arguments from this list "forward_proxy_allow_all no_forward_proxy active_forward_proxy_policies" must be set - no_forward_proxy = true - - // One of the arguments from this list "no_global_network global_network_list" must be set - - global_network_list { - global_network_connections { - // One of the arguments from this list "sli_to_global_dr slo_to_global_dr" must be set - - sli_to_global_dr { - global_vn { - name = "test1" - namespace = "staging" - tenant = "acmecorp" - } - } - - // One of the arguments from this list "disable_forward_proxy enable_forward_proxy" must be set - disable_forward_proxy = true - } - } - // One of the arguments from this list "default_interface_config interface_list" must be set - default_interface_config = true - // One of the arguments from this list "active_network_policies active_enhanced_firewall_policies no_network_policy" must be set - no_network_policy = true - // One of the arguments from this list "sm_connection_public_ip sm_connection_pvt_ip" must be set - sm_connection_public_ip = true - // One of the arguments from this list "default_sli_config sli_config" must be set - default_sli_config = true - // One of the arguments from this list "default_config slo_config" must be set - default_config = true - tunnel_dead_timeout = "0" - vip_vrrp_mode = "vip_vrrp_mode" - } - volterra_certified_hw = ["isv-8000-series-voltmesh"] + default_network_config = true + volterra_certified_hw = ["isv-8000-series-voltmesh"] } ``` @@ -114,6 +76,8 @@ Argument Reference `coordinates` - (Optional) Coordinates of the site, longitude and latitude. See [Coordinates ](#coordinates) below for details. +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `log_receiver` - (Optional) Select log receiver for logs streaming. See [ref](#ref) below for details. `logs_streaming_disabled` - (Optional) Logs Streaming is disabled (`Bool`). @@ -144,6 +108,16 @@ Coordinates of the site, longitude and latitude. `longitude` - (Optional) longitude of site location (`Float`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "enable_upgrade_drain, disable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Master Node Configuration Configuration of master nodes. @@ -206,7 +180,7 @@ DHCP Server is configured for this interface, Interface IP from DHCP server conf `fixed_ip_map` - (Optional) Fixed MAC address to ip assignments, Key: Mac address, Value: IP Address (`String`). -###### One of the arguments from this list "interface_ip_map, automatic_from_start, automatic_from_end" must be set +###### One of the arguments from this list "automatic_from_start, automatic_from_end, interface_ip_map" must be set `automatic_from_end` - (Optional) Assign automatically from End of the first network in the list (`Bool`). @@ -222,7 +196,7 @@ works along with Router Advertisement' Managed flag. `fixed_ip_map` - (Optional) Fixed MAC address to ipv6 assignments, Key: Mac address, Value: IPV6 Address (`String`). -###### One of the arguments from this list "automatic_from_start, automatic_from_end, interface_ip_map" must be set +###### One of the arguments from this list "automatic_from_end, interface_ip_map, automatic_from_start" must be set `automatic_from_end` - (Optional) Assign automatically from End of the first network in the list (`Bool`). @@ -234,7 +208,7 @@ works along with Router Advertisement' Managed flag. Interface IP is configured statically. -###### One of the arguments from this list "node_static_ip, cluster_static_ip, fleet_static_ip" must be set +###### One of the arguments from this list "fleet_static_ip, node_static_ip, cluster_static_ip" must be set `cluster_static_ip` - (Optional) Static IP configuration for a specific node. See [Network Prefix Choice Cluster Static Ip ](#network-prefix-choice-cluster-static-ip) below for details. @@ -262,7 +236,7 @@ System behaves like Auto config Router and provides auto config parameters. Use custom blocked services configuration. -###### One of the arguments from this list "ssh, web_user_interface, dns" can be set +###### One of the arguments from this list "web_user_interface, dns, ssh" can be set `dns` - (Optional) Matches DNS port 53 (`Bool`). @@ -344,7 +318,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -396,7 +370,7 @@ List of networks from which DHCP server can allocate ip addresses. `same_as_dgw` - (Optional) DNS server address is same as default gateway address (`Bool`). -###### One of the arguments from this list "last_address, dgw_address, first_address" must be set +###### One of the arguments from this list "first_address, last_address, dgw_address" must be set `dgw_address` - (Optional) Configured address from the network prefix is chosen as default gateway. (`String`). @@ -424,7 +398,7 @@ Configured address outside network range - external dns server. Choose the address from the network prefix range as dns server. -###### One of the arguments from this list "first_address, last_address, configured_address" must be set +###### One of the arguments from this list "last_address, configured_address, first_address" must be set `configured_address` - (Optional) Configured address from the network prefix is chosen as dns server (`String`). @@ -542,7 +516,7 @@ Networking configuration for dedicated interface is configured locally on site e `device` - (Required) Name of the device for which interface is configured. Use wwan0 for 4G/LTE. (`String`). -###### One of the arguments from this list "monitor, monitor_disabled" can be set +###### One of the arguments from this list "monitor_disabled, monitor" can be set `monitor` - (Optional) Link Quality Monitoring parameters. Choosing the option will enable link quality monitoring.. See [Monitoring Choice Monitor ](#monitoring-choice-monitor) below for details. @@ -596,7 +570,7 @@ Ethernet interface configuration.. `device` - (Required) Interface configuration for the ethernet device (`String`). -###### One of the arguments from this list "ipv6_auto_config, no_ipv6_address, static_ipv6_address" can be set +###### One of the arguments from this list "no_ipv6_address, static_ipv6_address, ipv6_auto_config" can be set `ipv6_auto_config` - (Optional) Configuration corresponding to IPV6 auto configuration. See [Ipv6 Address Choice Ipv6 Auto Config ](#ipv6-address-choice-ipv6-auto-config) below for details. @@ -604,7 +578,7 @@ Ethernet interface configuration.. `static_ipv6_address` - (Optional) Interface IP is configured statically. See [Ipv6 Address Choice Static Ipv6 Address ](#ipv6-address-choice-static-ipv6-address) below for details. -###### One of the arguments from this list "monitor_disabled, monitor" can be set +###### One of the arguments from this list "monitor, monitor_disabled" can be set `monitor` - (Optional) Link Quality Monitoring parameters. Choosing the option will enable link quality monitoring.. See [Monitoring Choice Monitor ](#monitoring-choice-monitor) below for details. @@ -612,12 +586,14 @@ Ethernet interface configuration.. `mtu` - (Optional) When configured, mtu must be between 512 and 16384 (`Int`). -###### One of the arguments from this list "site_local_network, site_local_inside_network, inside_network, storage_network, srv6_network, ip_fabric_network, segment_network" must be set +###### One of the arguments from this list "srv6_network, ip_fabric_network, segment_network, site_local_network, site_local_inside_network, inside_network, storage_network" must be set `inside_network` - (Optional) Interface belongs to user configured inside network. See [ref](#ref) below for details.(Deprecated) `ip_fabric_network` - (Optional) Interface belongs to IP Fabric network (`Bool`).(Deprecated) +`segment_network` - (Optional) x-displayName: "Segment". See [ref](#ref) below for details. + `site_local_inside_network` - (Optional) Interface belongs to site local network inside (`Bool`). `site_local_network` - (Optional) Interface belongs to site local network (outside) (`Bool`). @@ -700,7 +676,7 @@ Configure network interfaces for this Secure Mesh site. `description` - (Optional) Description for this Interface (`String`). -###### One of the arguments from this list "ethernet_interface, dedicated_interface, dedicated_management_interface, loopback_interface" must be set +###### One of the arguments from this list "dedicated_interface, dedicated_management_interface, loopback_interface, ethernet_interface" must be set `dedicated_interface` - (Optional) Networking configuration for dedicated interface is configured locally on site e.g. (outside/inside)Ethernet. See [Interface Choice Dedicated Interface ](#interface-choice-dedicated-interface) below for details. @@ -736,7 +712,7 @@ Configured address for every node. Configuration corresponding to IPV6 auto configuration. -###### One of the arguments from this list "router, host" must be set +###### One of the arguments from this list "host, router" must be set `host` - (Optional) auto configuration routers (`Bool`). @@ -758,6 +734,28 @@ Interface IP is configured statically. `node_static_ip` - (Optional) Static IP configuration for the Node. See [Network Prefix Choice Node Static Ip ](#network-prefix-choice-node-static-ip) below for details. +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_count, drain_max_unavailable_node_percentage" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "enable_vega_upgrade_mode, disable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Lacp Choice Active Backup Configure active/backup based bond device. @@ -794,7 +792,7 @@ Use custom networking configuration. `bgp_router_id` - (Optional) fetch BGP router ID from site object. (`String`).(Deprecated) -###### One of the arguments from this list "no_forward_proxy, active_forward_proxy_policies, forward_proxy_allow_all" must be set +###### One of the arguments from this list "forward_proxy_allow_all, no_forward_proxy, active_forward_proxy_policies" must be set `active_forward_proxy_policies` - (Optional) Enable Forward Proxy for this site and manage policies. See [Forward Proxy Choice Active Forward Proxy Policies ](#forward-proxy-choice-active-forward-proxy-policies) below for details. @@ -814,7 +812,7 @@ Use custom networking configuration. `interface_list` - (Optional) Add all interfaces belonging to this site. See [Interface Choice Interface List ](#interface-choice-interface-list) below for details. -###### One of the arguments from this list "active_enhanced_firewall_policies, no_network_policy, active_network_policies" must be set +###### One of the arguments from this list "active_network_policies, active_enhanced_firewall_policies, no_network_policy" must be set `active_enhanced_firewall_policies` - (Optional) with an additional option for service insertion.. See [Network Policy Choice Active Enhanced Firewall Policies ](#network-policy-choice-active-enhanced-firewall-policies) below for details. @@ -828,7 +826,7 @@ Use custom networking configuration. `sm_connection_pvt_ip` - (Optional) creating ipsec between two sites which are part of the site mesh group (`Bool`). -###### One of the arguments from this list "default_sli_config, sli_config" can be set +###### One of the arguments from this list "sli_config, default_sli_config" can be set `default_sli_config` - (Optional) Use default configuration for site local network (`Bool`). @@ -1002,7 +1000,7 @@ tenant - (Optional) then tenant will hold the referred object's(e.g. route's) te Dns information that needs to added in the RouterAdvetisement. -###### One of the arguments from this list "configured_list, local_dns" must be set +###### One of the arguments from this list "local_dns, configured_list" must be set `configured_list` - (Optional) Configured address outside network range - external dns server. See [Dns Choice Configured List ](#dns-choice-configured-list) below for details. @@ -1084,7 +1082,7 @@ Use default configuration for site local network. Configuration for site local inside network. -###### One of the arguments from this list "dc_cluster_group, no_dc_cluster_group" must be set +###### One of the arguments from this list "no_dc_cluster_group, dc_cluster_group" must be set `dc_cluster_group` - (Optional) This site is member of dc cluster group via network. See [ref](#ref) below for details. @@ -1208,7 +1206,7 @@ List of IPv6 static routes. `ip_prefixes` - (Required) List of IPv6 route prefixes that have common next hop and attributes (`String`). -###### One of the arguments from this list "ip_address, interface, default_gateway" must be set +###### One of the arguments from this list "interface, default_gateway, ip_address" must be set `default_gateway` - (Optional) Traffic matching the ip prefixes is sent to default gateway (`Bool`). @@ -1246,6 +1244,14 @@ Specify TLS interception configuration for the network connector. F5XC Root CA Certificate for validating upstream server certificate. +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Vlan Choice Untagged Configure a untagged ethernet interface. diff --git a/docs/resources/volterra_service_policy_rule.md b/docs/resources/volterra_service_policy_rule.md index f8c8ec2e3..f023dad23 100644 --- a/docs/resources/volterra_service_policy_rule.md +++ b/docs/resources/volterra_service_policy_rule.md @@ -22,19 +22,25 @@ resource "volterra_service_policy_rule" "example" { action = ["action"] // One of the arguments from this list "any_asn asn_list asn_matcher" must be set + any_asn = true challenge_action = ["challenge_action"] - // One of the arguments from this list "any_client client_name ip_threat_category_list client_selector client_name_matcher" must be set + // One of the arguments from this list "ip_threat_category_list client_selector client_name_matcher any_client client_name" must be set + + client_name_matcher { + exact_values = ["['new york', 'london', 'sydney', 'tokyo', 'cairo']"] - client_selector { - expressions = ["region in (us-west1, us-west2),tier in (staging)"] + regex_values = ["['^new .*$', 'san f.*', '.* del .*']"] } + // One of the arguments from this list "any_ip ip_prefix_list ip_matcher" must be set + any_ip = true waf_action { // One of the arguments from this list "jwt_claims_validation none waf_skip_processing waf_in_monitoring_mode app_firewall_detection_control data_guard_control jwt_validation" must be set - none = true + + jwt_claims_validation = true } } @@ -145,6 +151,8 @@ Argument Reference `scheme` - (Optional) The scheme in the request. (`List of String`).(Deprecated) +`segment_policy` - (Optional) Skip the configuration or set option as Any to ignore corresponding segment match. See [Segment Policy ](#segment-policy) below for details. + `server_selector` - (Optional) The predicate evaluates to true if the expressions in the label selector are true for the server labels.. See [Server Selector ](#server-selector) below for details.(Deprecated) `shape_protected_endpoint_action` - (Optional) Shape Protected Endpoint Action that include application traffic type and mitigation. See [Shape Protected Endpoint Action ](#shape-protected-endpoint-action) below for details.(Deprecated) @@ -253,7 +261,7 @@ Note that all specified header predicates must evaluate to true.. `invert_matcher` - (Optional) Invert the match result. (`Bool`). -###### One of the arguments from this list "check_not_present, item, presence, check_present" must be set +###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set `check_not_present` - (Optional) Check that the header is not present. (`Bool`). @@ -289,7 +297,7 @@ Note that all specified JWT claim predicates must evaluate to true.. `invert_matcher` - (Optional) Invert the match result. (`Bool`). -###### One of the arguments from this list "item, check_present, check_not_present" must be set +###### One of the arguments from this list "check_present, check_not_present, item" must be set `check_not_present` - (Optional) Check that the JWT Claim is not present. (`Bool`). @@ -355,7 +363,7 @@ Note that all specified query parameter predicates must evaluate to true.. `key` - (Required) A case-sensitive HTTP query parameter name. (`String`). -###### One of the arguments from this list "presence, check_present, check_not_present, item" must be set +###### One of the arguments from this list "check_present, check_not_present, item, presence" must be set `check_not_present` - (Optional) Check that the query parameter is not present. (`Bool`). @@ -393,7 +401,7 @@ Place limits on request based on the request attributes. The request matches if `max_header_count_none` - (Optional) x-displayName: "Not Configured" (`Bool`). -###### One of the arguments from this list "max_header_key_size_exceeds, max_header_key_size_none" must be set +###### One of the arguments from this list "max_header_key_size_none, max_header_key_size_exceeds" must be set `max_header_key_size_exceeds` - (Optional) x-example: "32" (`Int`). @@ -411,25 +419,25 @@ Place limits on request based on the request attributes. The request matches if `max_parameter_count_none` - (Optional) x-displayName: "Not Configured" (`Bool`). -###### One of the arguments from this list "max_parameter_name_size_exceeds, max_parameter_name_size_none" must be set +###### One of the arguments from this list "max_parameter_name_size_none, max_parameter_name_size_exceeds" must be set `max_parameter_name_size_exceeds` - (Optional) x-example: "64" (`Int`). `max_parameter_name_size_none` - (Optional) x-displayName: "Not Configured" (`Bool`). -###### One of the arguments from this list "max_parameter_value_size_none, max_parameter_value_size_exceeds" must be set +###### One of the arguments from this list "max_parameter_value_size_exceeds, max_parameter_value_size_none" must be set `max_parameter_value_size_exceeds` - (Optional) x-example: "1000" (`Int`). `max_parameter_value_size_none` - (Optional) x-displayName: "Not Configured" (`Bool`). -###### One of the arguments from this list "max_query_size_exceeds, max_query_size_none" must be set +###### One of the arguments from this list "max_query_size_none, max_query_size_exceeds" must be set `max_query_size_exceeds` - (Optional) x-example: "4096" (`Int`). `max_query_size_none` - (Optional) x-displayName: "Not Configured" (`Bool`). -###### One of the arguments from this list "max_request_line_size_none, max_request_line_size_exceeds" must be set +###### One of the arguments from this list "max_request_line_size_exceeds, max_request_line_size_none" must be set `max_request_line_size_exceeds` - (Optional) x-example: "4096" (`Int`). @@ -447,6 +455,24 @@ Place limits on request based on the request attributes. The request matches if `max_url_size_none` - (Optional) x-displayName: "Not Configured" (`Bool`). +### Segment Policy + +Skip the configuration or set option as Any to ignore corresponding segment match. + +###### One of the arguments from this list "dst_any, intra_segment, dst_segments" can be set + +`dst_any` - (Optional) Traffic is not matched against any segment (`Bool`). + +`dst_segments` - (Optional) Traffic is matched against destination segment in selected segments. See [Dst Segment Choice Dst Segments ](#dst-segment-choice-dst-segments) below for details. + +`intra_segment` - (Optional) Traffic is matched for source and destination on the same segment (`Bool`). + +###### One of the arguments from this list "src_any, src_segments" can be set + +`src_any` - (Optional) Traffic is not matched against any segment (`Bool`). + +`src_segments` - (Optional) Source traffic is matched against selected segments. See [Src Segment Choice Src Segments ](#src-segment-choice-src-segments) below for details. + ### Server Selector The predicate evaluates to true if the expressions in the label selector are true for the server labels.. @@ -499,7 +525,7 @@ Hidden because this will be used only in system generated rate limiting service_ App Firewall action to be enforced if the input request matches the rule.. -###### One of the arguments from this list "none, waf_skip_processing, waf_in_monitoring_mode, app_firewall_detection_control, data_guard_control, jwt_validation, jwt_claims_validation" must be set +###### One of the arguments from this list "app_firewall_detection_control, data_guard_control, jwt_validation, jwt_claims_validation, none, waf_skip_processing, waf_in_monitoring_mode" must be set `app_firewall_detection_control` - (Optional) Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.. See [Action Type App Firewall Detection Control ](#action-type-app-firewall-detection-control) below for details. @@ -631,7 +657,7 @@ Violations to be excluded for the defined match criteria. The predicate evaluates to true if the origin ASN is present in the ASN list.. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Asn Choice Asn Matcher @@ -663,7 +689,7 @@ IP threat categories to choose from. The predicate evaluates to true if the destination ASN is present in the ASN list.. -`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. (`Int`). +`as_numbers` - (Required) An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. (`Int`). ### Dst Asn Choice Dst Asn Matcher @@ -687,6 +713,20 @@ The predicate evaluates to true if the destination address is covered by one or `ip_prefixes` - (Optional) List of IPv4 prefix strings. (`String`). +### Dst Segment Choice Dst Any + +Traffic is not matched against any segment. + +### Dst Segment Choice Dst Segments + +Traffic is matched against destination segment in selected segments. + +`segments` - (Required) Select list of segments. See [ref](#ref) below for details. + +### Dst Segment Choice Intra Segment + +Traffic is matched for source and destination on the same segment. + ### Ip Choice Ip Matcher The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.. @@ -807,7 +847,7 @@ No mitigation headers.. Mitigation action for protected endpoint. -###### One of the arguments from this list "none, block, redirect, flag" can be set +###### One of the arguments from this list "flag, none, block, redirect" can be set `block` - (Optional) Block bot request and send response with custom content.. See [Action Type Block ](#action-type-block) below for details. @@ -825,6 +865,16 @@ Success/failure Criteria for transaction result. `success_conditions` - (Optional) Success Conditions. See [Transaction Result Success Conditions ](#transaction-result-success-conditions) below for details. +### Src Segment Choice Src Any + +Traffic is not matched against any segment. + +### Src Segment Choice Src Segments + +Source traffic is matched against selected segments. + +`segments` - (Required) Select list of segments. See [ref](#ref) below for details. + ### Transaction Result Failure Conditions Failure Conditions. @@ -849,13 +899,13 @@ Success Conditions. A list of URL items used as match criteria. The match is considered successful if the domain and path match any of the URL items.. -###### One of the arguments from this list "domain_value, domain_regex" must be set +###### One of the arguments from this list "domain_regex, domain_value" must be set `domain_regex` - (Optional) A regular expression to match the domain against. (`String`). `domain_value` - (Optional) An exact value to match the domain against. (`String`). -###### One of the arguments from this list "path_regex, path_value, path_prefix" can be set +###### One of the arguments from this list "path_value, path_prefix, path_regex" can be set `path_prefix` - (Optional) An prefix value to match the path against. (`String`). diff --git a/docs/resources/volterra_tcp_loadbalancer.md b/docs/resources/volterra_tcp_loadbalancer.md index 85336b80a..6c9fc5d01 100644 --- a/docs/resources/volterra_tcp_loadbalancer.md +++ b/docs/resources/volterra_tcp_loadbalancer.md @@ -21,24 +21,31 @@ resource "volterra_tcp_loadbalancer" "example" { namespace = "staging" // One of the arguments from this list "do_not_advertise advertise_on_public_default_vip advertise_on_public advertise_custom" must be set + advertise_on_public_default_vip = true // One of the arguments from this list "retract_cluster do_not_retract_cluster" must be set - retract_cluster = true - // One of the arguments from this list "hash_policy_choice_round_robin hash_policy_choice_least_active hash_policy_choice_random hash_policy_choice_source_ip_stickiness" must be set - hash_policy_choice_source_ip_stickiness = true + do_not_retract_cluster = true + + // One of the arguments from this list "hash_policy_choice_least_active hash_policy_choice_random hash_policy_choice_source_ip_stickiness hash_policy_choice_round_robin" must be set + + hash_policy_choice_least_active = true // One of the arguments from this list "tcp tls_tcp_auto_cert tls_tcp" must be set + tcp = true // One of the arguments from this list "listen_port port_ranges" must be set + listen_port = "0" - // One of the arguments from this list "service_policies_from_namespace no_service_policies active_service_policies" must be set + // One of the arguments from this list "no_service_policies active_service_policies service_policies_from_namespace" must be set + service_policies_from_namespace = true - // One of the arguments from this list "no_sni sni default_lb_with_sni" must be set + // One of the arguments from this list "default_lb_with_sni no_sni sni" must be set + no_sni = true } @@ -149,6 +156,8 @@ Where should this load balancer be available. `site` - (Optional) Advertise on a customer site and a given network.. See [Choice Site ](#choice-site) below for details. +`site_segment` - (Optional) Advertise on a segment on a site. See [Choice Site Segment ](#choice-site-segment) below for details. + `virtual_network` - (Optional) Advertise on a virtual network. See [Choice Virtual Network ](#choice-virtual-network) below for details. `virtual_site` - (Optional) Advertise on a customer virtual site and a given network.. See [Choice Virtual Site ](#choice-virtual-site) below for details. @@ -195,6 +204,18 @@ Advertise on a customer site and a given network.. `site` - (Required) Reference to site object. See [ref](#ref) below for details. +### Choice Site Segment + +Advertise on a segment on a site. + +`ip` - (Required) Use given IP address as VIP on the site (`String`). + +`ipv6` - (Optional) Use given IPv6 address as VIP on the site (`String`). + +`segment` - (Required) x-required. See [ref](#ref) below for details. + +`site` - (Required) x-required. See [ref](#ref) below for details. + ### Choice Virtual Network Advertise on a virtual network. @@ -211,7 +232,7 @@ Advertise on a virtual network. `specific_vip` - (Optional) Use given IPV4 address as VIP on virtual Network (`String`). -`virtual_network` - (Required) Select virtual network reference. See [ref](#ref) below for details. +`virtual_network` - (Required) Select network reference. See [ref](#ref) below for details. ### Choice Virtual Site @@ -239,7 +260,7 @@ Client certificate revocation status is not verified. User is responsible for managing DNS to this load balancer.. -###### One of the arguments from this list "tls_cert_params, tls_parameters" must be set +###### One of the arguments from this list "tls_parameters, tls_cert_params" must be set `tls_cert_params` - (Optional) Select/Add one or more TLS Certificate objects to associate with this Load Balancer. See [Tls Certificates Choice Tls Cert Params ](#tls-certificates-choice-tls-cert-params) below for details. @@ -277,7 +298,7 @@ x-displayName: "Enable". `trusted_ca_url` - (Optional) Upload a Root CA Certificate specifically for this Load Balancer (`String`). -###### One of the arguments from this list "xfcc_disabled, xfcc_options" can be set +###### One of the arguments from this list "xfcc_options, xfcc_disabled" can be set `xfcc_disabled` - (Optional) No X-Forwarded-Client-Cert header will be added (`Bool`). @@ -387,7 +408,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -447,7 +468,7 @@ for example, domain.com and *.domain.com - but use different signature algorithm Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "low_security, custom_security, default_security, medium_security" must be set +###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. @@ -461,7 +482,7 @@ Configuration of TLS settings such as min/max TLS version and ciphersuites. Configuration of TLS settings such as min/max TLS version and ciphersuites. -###### One of the arguments from this list "default_security, medium_security, low_security, custom_security" must be set +###### One of the arguments from this list "custom_security, default_security, medium_security, low_security" must be set `custom_security` - (Optional) Custom selection of TLS versions and cipher suites. See [Choice Custom Security ](#choice-custom-security) below for details. diff --git a/docs/resources/volterra_user_identification.md b/docs/resources/volterra_user_identification.md index 537686c81..dfee0b148 100644 --- a/docs/resources/volterra_user_identification.md +++ b/docs/resources/volterra_user_identification.md @@ -21,8 +21,9 @@ resource "volterra_user_identification" "example" { namespace = "staging" rules { - // One of the arguments from this list "client_city http_header_name none client_country client_asn client_region ip_and_tls_fingerprint jwt_claim_name client_ip cookie_name ip_and_http_header_name query_param_key tls_fingerprint" must be set - client_ip = true + // One of the arguments from this list "ip_and_http_header_name ip_and_tls_fingerprint client_ip client_country client_region cookie_name jwt_claim_name query_param_key none client_asn tls_fingerprint client_city http_header_name" must be set + + http_header_name = "http_header_name" } } @@ -53,7 +54,7 @@ Argument Reference Evaluation of the rules is terminated once a user identifier has been extracted.. -###### One of the arguments from this list "client_ip, cookie_name, ip_and_http_header_name, ip_and_tls_fingerprint, jwt_claim_name, query_param_key, tls_fingerprint, http_header_name, none, client_country, client_city, client_asn, client_region" must be set +###### One of the arguments from this list "cookie_name, client_country, client_region, query_param_key, jwt_claim_name, client_city, http_header_name, none, client_asn, tls_fingerprint, client_ip, ip_and_http_header_name, ip_and_tls_fingerprint" must be set `client_asn` - (Optional) The client ASN is obtained by performing a lookup for the client IP Address in a GeoIP DB. (`Bool`). diff --git a/docs/resources/volterra_virtual_host.md b/docs/resources/volterra_virtual_host.md index 69289d4e9..2c73e828a 100644 --- a/docs/resources/volterra_virtual_host.md +++ b/docs/resources/volterra_virtual_host.md @@ -22,11 +22,7 @@ resource "volterra_virtual_host" "example" { // One of the arguments from this list "no_challenge js_challenge captcha_challenge" must be set - captcha_challenge { - cookie_expiry = "1000" - - custom_page = "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=" - } + no_challenge = true } ``` @@ -98,6 +94,8 @@ Argument Reference `header_transformation_type` - (Optional) Header transformation options for response headers to the client. See [Header Transformation Type ](#header-transformation-type) below for details.(Deprecated) +`http_protocol_options` - (Optional) HTTP protocol configuration options for downstream connections.. See [Http Protocol Options ](#http-protocol-options) below for details. + `idle_timeout` - (Optional) The default if not specified is 1 minute. (`Int`). `max_request_header_size` - (Optional) on any of the virtual hosts (`Int`). @@ -148,6 +146,8 @@ Argument Reference `waf_type` - (Optional) waf_type is the App Firewall profile to use.. See [Waf Type ](#waf-type) below for details. +`ztna_proxy_configurations` - (Optional) Advanced Ztna Proxy configuration containing policy and application configuration. See [Ztna Proxy Configurations ](#ztna-proxy-configurations) below for details.(Deprecated) + ### Api Spec OpenAPI specification settings. @@ -192,7 +192,7 @@ List of cookies to be modified from the HTTP response being sent towards downstr `enable_tampering_protection` - (Optional) x-displayName: "Enable" (`Bool`). -###### One of the arguments from this list "ignore_httponly, add_httponly" can be set +###### One of the arguments from this list "add_httponly, ignore_httponly" can be set `add_httponly` - (Optional) x-displayName: "Add" (`Bool`). @@ -206,7 +206,7 @@ List of cookies to be modified from the HTTP response being sent towards downstr `name` - (Required) Name of the Cookie (`String`). -###### One of the arguments from this list "ignore_samesite, samesite_strict, samesite_lax, samesite_none" can be set +###### One of the arguments from this list "samesite_strict, samesite_lax, samesite_none, ignore_samesite" can be set `ignore_samesite` - (Optional) Ignore Samesite attribute (`Bool`). @@ -216,7 +216,7 @@ List of cookies to be modified from the HTTP response being sent towards downstr `samesite_strict` - (Optional) Add Samesite attribute with Strict. Means that the browser sends the cookie only for same-site requests (`Bool`). -###### One of the arguments from this list "ignore_secure, add_secure" can be set +###### One of the arguments from this list "add_secure, ignore_secure" can be set `add_secure` - (Optional) x-displayName: "Add" (`Bool`). @@ -292,14 +292,28 @@ request. The DNS response is cached for 60s by default.. Header transformation options for response headers to the client. -###### One of the arguments from this list "default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set `default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + `preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). `proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). +### Http Protocol Options + +HTTP protocol configuration options for downstream connections.. + +###### One of the arguments from this list "http_protocol_enable_v1_only, http_protocol_enable_v2_only, http_protocol_enable_v1_v2" must be set + +`http_protocol_enable_v1_only` - (Optional) Enable HTTP/1.1 for downstream connections. See [Http Protocol Choice Http Protocol Enable V1 Only ](#http-protocol-choice-http-protocol-enable-v1-only) below for details. + +`http_protocol_enable_v1_v2` - (Optional) Enable both HTTP/1.1 and HTTP/2 for downstream connections (`Bool`). + +`http_protocol_enable_v2_only` - (Optional) Enable HTTP/2 for downstream connections (`Bool`). + ### Request Headers To Add Headers specified at this level are applied after headers from matched Route are applied. @@ -322,7 +336,7 @@ Headers specified at this level are applied after headers from matched Route are `name` - (Required) Name of the HTTP header. (`String`). -###### One of the arguments from this list "secret_value, value" must be set +###### One of the arguments from this list "value, secret_value" must be set `secret_value` - (Optional) Secret Value of the HTTP header.. See [Value Choice Secret Value ](#value-choice-secret-value) below for details. @@ -366,7 +380,7 @@ Specifies configuration for temporary user blocking resulting from malicious use waf_type is the App Firewall profile to use.. -###### One of the arguments from this list "app_firewall, disable_waf, inherit_waf" can be set +###### One of the arguments from this list "disable_waf, inherit_waf, app_firewall" can be set `app_firewall` - (Optional) A direct reference to an Application Firewall configuration object. See [Ref Type App Firewall ](#ref-type-app-firewall) below for details. @@ -374,6 +388,14 @@ waf_type is the App Firewall profile to use.. `inherit_waf` - (Optional) Any Application Firewall configuration that was configured on a higher level will be enforced (`Bool`). +### Ztna Proxy Configurations + +Advanced Ztna Proxy configuration containing policy and application configuration. + +`ztna_application_config` - (Optional) Advance configuration of Ztna Application Configuration(Connectivity/Session/Message). See [ref](#ref) below for details. + +`ztna_policy_config` - (Optional) Advance configuration of Ztna Policy Configuration(Connectivity/Session/Message). See [ref](#ref) below for details. + ### Allowed Domains All Load Balancer Domains Add All load balancer domains to source origin (allow) list.. @@ -396,7 +418,7 @@ Primary HMAC Key. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -414,7 +436,7 @@ Secondary HMAC Key. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -488,7 +510,7 @@ and list of Subject Alt Names for verification. `skip_hostname_verification` - (Optional) is not matched to the connecting hostname (`Bool`). -###### One of the arguments from this list "trusted_ca, trusted_ca_url" must be set +###### One of the arguments from this list "trusted_ca_url, trusted_ca" must be set `trusted_ca` - (Optional) Root CA Certificate. See [Trusted Ca Choice Trusted Ca ](#trusted-ca-choice-trusted-ca) below for details. @@ -586,6 +608,10 @@ the RSA certificate for the domain, if any. Normalize the headers to lower case. +### Header Transformation Choice Legacy Header Transformation + +Use old header transformation if configured earlier. + ### Header Transformation Choice Preserve Case Header Transformation Preserves the original case of headers without any modifications.. @@ -594,6 +620,34 @@ Preserves the original case of headers without any modifications.. For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”. +### Http Protocol Choice Http Protocol Enable V1 Only + +Enable HTTP/1.1 for downstream connections. + +`header_transformation` - (Optional) the stateful formatter will take effect, and the stateless formatter will be disregarded.. See [Http Protocol Enable V1 Only Header Transformation ](#http-protocol-enable-v1-only-header-transformation) below for details. + +### Http Protocol Choice Http Protocol Enable V1 V2 + +Enable both HTTP/1.1 and HTTP/2 for downstream connections. + +### Http Protocol Choice Http Protocol Enable V2 Only + +Enable HTTP/2 for downstream connections. + +### Http Protocol Enable V1 Only Header Transformation + +the stateful formatter will take effect, and the stateless formatter will be disregarded.. + +###### One of the arguments from this list "legacy_header_transformation, default_header_transformation, proper_case_header_transformation, preserve_case_header_transformation" must be set + +`default_header_transformation` - (Optional) Normalize the headers to lower case (`Bool`). + +`legacy_header_transformation` - (Optional) Use old header transformation if configured earlier (`Bool`). + +`preserve_case_header_transformation` - (Optional) Preserves the original case of headers without any modifications. (`Bool`). + +`proper_case_header_transformation` - (Optional) For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are” (`Bool`). + ### Httponly Add Httponly x-displayName: "Add". @@ -806,7 +860,7 @@ and list of Subject Alt Names for verification. `skip_hostname_verification` - (Optional) is not matched to the connecting hostname (`Bool`). -###### One of the arguments from this list "trusted_ca_url, trusted_ca" must be set +###### One of the arguments from this list "trusted_ca, trusted_ca_url" must be set `trusted_ca` - (Optional) Root CA Certificate. See [Trusted Ca Choice Trusted Ca ](#trusted-ca-choice-trusted-ca) below for details. @@ -824,7 +878,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -886,7 +940,7 @@ Common TLS parameters used in both upstream and downstream connections. Root CA Certificate. -`trusted_ca_list` - (Optional) Reference to Root CA Certificate. See [ref](#ref) below for details.(Deprecated) +`trusted_ca_list` - (Optional) Reference to Root CA Certificate. See [ref](#ref) below for details. ### Value Choice Secret Value @@ -896,7 +950,7 @@ Secret Value of the HTTP header.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. diff --git a/docs/resources/volterra_virtual_network.md b/docs/resources/volterra_virtual_network.md index 1efa9ba6b..b014f0ab9 100644 --- a/docs/resources/volterra_virtual_network.md +++ b/docs/resources/volterra_virtual_network.md @@ -20,8 +20,9 @@ resource "volterra_virtual_network" "example" { name = "acmecorp-web" namespace = "staging" - // One of the arguments from this list "site_local_inside_network legacy_type srv6_network global_network site_local_network" must be set - site_local_inside_network = true + // One of the arguments from this list "site_local_network site_local_inside_network legacy_type srv6_network global_network" must be set + + global_network = true } ``` @@ -117,7 +118,7 @@ Configure a per site srv6 network. `access_network_rtargets` - (Optional) Import Route Targets for connectivity to Access Networks.. See [Srv6 Network Access Network Rtargets ](#srv6-network-access-network-rtargets) below for details. -###### One of the arguments from this list "interface_ip_vip, anycast_vip, fleet_vip" must be set +###### One of the arguments from this list "anycast_vip, fleet_vip, interface_ip_vip" must be set `anycast_vip` - (Optional) Configure anycast VIP (`String`). @@ -133,7 +134,7 @@ Configure a per site srv6 network. `internet_rtargets` - (Optional) Import Route Targets for connectivity to the Internet.. See [Srv6 Network Internet Rtargets ](#srv6-network-internet-rtargets) below for details. -###### One of the arguments from this list "srv6_network_ns_params, no_namespace_network" must be set +###### One of the arguments from this list "no_namespace_network, srv6_network_ns_params" must be set `no_namespace_network` - (Optional) Namespace network is not connected to this network (`Bool`). @@ -143,7 +144,7 @@ Configure a per site srv6 network. `slice` - (Required) The srv6_network_slice to which this network belongs.. See [ref](#ref) below for details. -###### One of the arguments from this list "fleet_snat_pool, interface_ip_snat_pool, site_snat_pool" must be set +###### One of the arguments from this list "interface_ip_snat_pool, site_snat_pool, fleet_snat_pool" must be set `fleet_snat_pool` - (Optional) Configure address allocator for SNAT pool for a Fleet. See [Snat Pool Choice Fleet Snat Pool ](#snat-pool-choice-fleet-snat-pool) below for details.(Deprecated) diff --git a/docs/resources/volterra_voltstack_site.md b/docs/resources/volterra_voltstack_site.md index d8abad05d..c520f2439 100644 --- a/docs/resources/volterra_voltstack_site.md +++ b/docs/resources/volterra_voltstack_site.md @@ -21,20 +21,24 @@ resource "volterra_voltstack_site" "example" { namespace = "staging" // One of the arguments from this list "default_blocked_services blocked_services" must be set + default_blocked_services = true - // One of the arguments from this list "no_bond_devices bond_device_list" must be set + // One of the arguments from this list "bond_device_list no_bond_devices" must be set + no_bond_devices = true // One of the arguments from this list "disable_gpu enable_gpu enable_vgpu" must be set + disable_gpu = true // One of the arguments from this list "no_k8s_cluster k8s_cluster" must be set + no_k8s_cluster = true // One of the arguments from this list "logs_streaming_disabled log_receiver" must be set - logs_streaming_disabled = true + logs_streaming_disabled = true master_node_configuration { name = "master-0" @@ -42,15 +46,19 @@ resource "volterra_voltstack_site" "example" { } // One of the arguments from this list "default_network_config custom_network_config" must be set + default_network_config = true - // One of the arguments from this list "sriov_interfaces default_sriov_interface" must be set + // One of the arguments from this list "default_sriov_interface sriov_interfaces" must be set + default_sriov_interface = true // One of the arguments from this list "default_storage_config custom_storage_config" must be set + default_storage_config = true - // One of the arguments from this list "usb_policy deny_all_usb allow_all_usb" must be set + // One of the arguments from this list "deny_all_usb allow_all_usb usb_policy" must be set + deny_all_usb = true volterra_certified_hw = ["isv-8000-series-voltstack-combo"] } @@ -100,6 +108,8 @@ Argument Reference `no_k8s_cluster` - (Optional) Site Local K8s API access is disabled (`Bool`). +`kubernetes_upgrade_drain` - (Optional) Enable Kubernetes Drain during OS or SW upgrade. See [Kubernetes Upgrade Drain ](#kubernetes-upgrade-drain) below for details. + `local_control_plane` - (Optional) Site Local control plane is enabled. See [Local Control Plane Choice Local Control Plane ](#local-control-plane-choice-local-control-plane) below for details.(Deprecated) `no_local_control_plane` - (Optional) Site Local control plane is disabled (`Bool`).(Deprecated) @@ -164,6 +174,16 @@ custom dns configure to the CE site. `outside_nameserver_v6` - (Optional) Optional DNS server IPv6 to be used for name resolution in outside network (`String`). +### Kubernetes Upgrade Drain + +Enable Kubernetes Drain during OS or SW upgrade. + +###### One of the arguments from this list "enable_upgrade_drain, disable_upgrade_drain" must be set + +`disable_upgrade_drain` - (Optional) Disable Node by Node Upgrade during Software or OS version upgrade (`Bool`). + +`enable_upgrade_drain` - (Optional) Enable Node by Node Upgrade during Software or OS version upgrade. See [Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain ](#kubernetes-upgrade-drain-enable-choice-enable-upgrade-drain) below for details. + ### Master Node Configuration Configuration of master nodes. @@ -176,7 +196,7 @@ Configuration of master nodes. Enable/Disable offline survivability mode. -###### One of the arguments from this list "enable_offline_survivability_mode, no_offline_survivability_mode" must be set +###### One of the arguments from this list "no_offline_survivability_mode, enable_offline_survivability_mode" must be set `enable_offline_survivability_mode` - (Optional) When this feature is enabled on an existing site, the pods/services on this site will be restarted. (`Bool`). @@ -216,7 +236,7 @@ DHCP Server is configured for this interface, Interface IP from DHCP server conf `fixed_ip_map` - (Optional) Fixed MAC address to ip assignments, Key: Mac address, Value: IP Address (`String`). -###### One of the arguments from this list "interface_ip_map, automatic_from_start, automatic_from_end" must be set +###### One of the arguments from this list "automatic_from_start, automatic_from_end, interface_ip_map" must be set `automatic_from_end` - (Optional) Assign automatically from End of the first network in the list (`Bool`). @@ -298,7 +318,7 @@ auto configuration routers. System behaves like Auto config Router and provides auto config parameters. -###### One of the arguments from this list "stateful, network_prefix" must be set +###### One of the arguments from this list "network_prefix, stateful" must be set `network_prefix` - (Optional) Nework prefix that is used as Prefix information (`String`). @@ -372,7 +392,7 @@ Backend configuration for ONTAP SAN. `client_private_key` - (Optional) Please Enter value of client private key. Used for certificate-based auth.. See [Netapp Backend Ontap San Client Private Key ](#netapp-backend-ontap-san-client-private-key) below for details. -###### One of the arguments from this list "data_lif_ip, data_lif_dns_name" can be set +###### One of the arguments from this list "data_lif_dns_name, data_lif_ip" can be set `data_lif_dns_name` - (Optional) Backend Data LIF IP Address's ip address is discovered using DNS name resolution. The name given here is fully qualified domain name. (`String`). @@ -458,7 +478,7 @@ List of bond devices. `devices` - (Required) Ethernet devices that will make up this bond (`String`). -###### One of the arguments from this list "lacp, active_backup" must be set +###### One of the arguments from this list "active_backup, lacp" must be set `active_backup` - (Optional) Configure active/backup based bond device (`Bool`). @@ -546,7 +566,7 @@ TLS Private Key data in unencrypted PEM format including the PEM headers. The da `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -762,7 +782,7 @@ For FlashArrays you must set the "mgmt_endpoint" and "api_token". `labels` - (Optional) The labels are optional, and can be any key-value pair for use with the PSO "fleet" provisioner. (`String`). -###### One of the arguments from this list "mgmt_dns_name, mgmt_ip" must be set +###### One of the arguments from this list "mgmt_ip, mgmt_dns_name" must be set `mgmt_dns_name` - (Optional) Management Endpoint's ip address is discovered using DNS name resolution. The name given here is fully qualified domain name. (`String`). @@ -800,7 +820,7 @@ For FlashBlades you must set the "mgmt_endpoint", "api_token" and nfs_endpoint. `mgmt_ip` - (Optional) Management Endpoint is reachable at the given ip address (`String`). -###### One of the arguments from this list "nfs_endpoint_ip, nfs_endpoint_dns_name" must be set +###### One of the arguments from this list "nfs_endpoint_dns_name, nfs_endpoint_ip" must be set `nfs_endpoint_dns_name` - (Optional) Endpoint's ip address is discovered using DNS name resolution. The name given here is fully qualified domain name. (`String`). @@ -954,7 +974,7 @@ Policy to enable/disable specific domains, with implicit enable all domains. Domain value or regular expression to match. -###### One of the arguments from this list "exact_value, suffix_value, regex_value" must be set +###### One of the arguments from this list "suffix_value, regex_value, exact_value" must be set `exact_value` - (Optional) Exact domain name. (`String`). @@ -998,7 +1018,7 @@ Fallback management interfaces can be made into dedicated management interface. `mtu` - (Optional) When configured, mtu must be between 512 and 16384 (`Int`). -###### One of the arguments from this list "node, cluster" must be set +###### One of the arguments from this list "cluster, node" must be set `cluster` - (Optional) Configuration will apply to given device on all nodes of the site. (`Bool`). @@ -1012,7 +1032,7 @@ Interface configuration is done based on certified hardware for this site. Ethernet interface configuration.. -###### One of the arguments from this list "static_ip, dhcp_client, dhcp_server" must be set +###### One of the arguments from this list "dhcp_server, static_ip, dhcp_client" must be set `dhcp_client` - (Optional) Interface gets it IP address from external DHCP server (`Bool`). @@ -1030,7 +1050,7 @@ Ethernet interface configuration.. `static_ipv6_address` - (Optional) Interface IP is configured statically. See [Ipv6 Address Choice Static Ipv6 Address ](#ipv6-address-choice-static-ipv6-address) below for details. -###### One of the arguments from this list "monitor_disabled, monitor" can be set +###### One of the arguments from this list "monitor, monitor_disabled" can be set `monitor` - (Optional) Link Quality Monitoring parameters. Choosing the option will enable link quality monitoring.. See [Monitoring Choice Monitor ](#monitoring-choice-monitor) below for details. @@ -1038,12 +1058,14 @@ Ethernet interface configuration.. `mtu` - (Optional) When configured, mtu must be between 512 and 16384 (`Int`). -###### One of the arguments from this list "site_local_network, site_local_inside_network, inside_network, storage_network, srv6_network, ip_fabric_network, segment_network" must be set +###### One of the arguments from this list "inside_network, storage_network, srv6_network, ip_fabric_network, segment_network, site_local_network, site_local_inside_network" must be set `inside_network` - (Optional) Interface belongs to user configured inside network. See [ref](#ref) below for details.(Deprecated) `ip_fabric_network` - (Optional) Interface belongs to IP Fabric network (`Bool`).(Deprecated) +`segment_network` - (Optional) x-displayName: "Segment". See [ref](#ref) below for details. + `site_local_inside_network` - (Optional) Interface belongs to site local network inside (`Bool`). `site_local_network` - (Optional) Interface belongs to site local network (outside) (`Bool`). @@ -1052,7 +1074,7 @@ Ethernet interface configuration.. `storage_network` - (Optional) Interface belongs to site local network inside (`Bool`). -###### One of the arguments from this list "node, cluster" must be set +###### One of the arguments from this list "cluster, node" must be set `cluster` - (Optional) Configuration will apply to given device on all nodes of the site. (`Bool`). @@ -1108,7 +1130,7 @@ Loopback device.. `site_local_network` - (Optional) Interface belongs to site local network (outside) (`Bool`). -###### One of the arguments from this list "node, cluster" must be set +###### One of the arguments from this list "cluster, node" must be set `cluster` - (Optional) Configuration will apply to given device on all nodes of the site. (`Bool`). @@ -1152,7 +1174,7 @@ Configure network interfaces for this App Stack site. `description` - (Optional) Description for this Interface (`String`). -###### One of the arguments from this list "ethernet_interface, dedicated_interface, dedicated_management_interface, tunnel_interface, loopback_interface" must be set +###### One of the arguments from this list "tunnel_interface, loopback_interface, ethernet_interface, dedicated_interface, dedicated_management_interface" must be set `dedicated_interface` - (Optional) Networking configuration for dedicated interface is configured locally on site e.g. (outside/inside)Ethernet. See [Interface Choice Dedicated Interface ](#interface-choice-dedicated-interface) below for details. @@ -1222,6 +1244,28 @@ Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. `store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). +### Kubernetes Upgrade Drain Enable Choice Disable Upgrade Drain + +Disable Node by Node Upgrade during Software or OS version upgrade. + +### Kubernetes Upgrade Drain Enable Choice Enable Upgrade Drain + +Enable Node by Node Upgrade during Software or OS version upgrade. + +###### One of the arguments from this list "drain_max_unavailable_node_count, drain_max_unavailable_node_percentage" must be set + +`drain_max_unavailable_node_count` - (Optional) Max unavailable worker node count during Software or OS version upgrade (`Int`). + +`drain_max_unavailable_node_percentage` - (Optional) Max unavailable worker node in percentage during Software or OS version upgrade, with minimum unavailable 1 node (`Int`).(Deprecated) + +`drain_node_timeout` - (Required) Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). (`Int`). + +###### One of the arguments from this list "enable_vega_upgrade_mode, disable_vega_upgrade_mode" must be set + +`disable_vega_upgrade_mode` - (Optional) Disable Vega Upgrade Mode (`Bool`).(Deprecated) + +`enable_vega_upgrade_mode` - (Optional) When enabled, vega will inform RE to stop traffic to the specific node. (`Bool`).(Deprecated) + ### Lacp Choice Active Backup Configure active/backup based bond device. @@ -1330,7 +1374,7 @@ List of QoS volume defaults types. `export_policy` - (Optional) Export policy to use. (`String`). -###### One of the arguments from this list "qos_policy, adaptive_qos_policy, no_qos" must be set +###### One of the arguments from this list "no_qos, qos_policy, adaptive_qos_policy" must be set `adaptive_qos_policy` - (Optional) Enter Adaptive QoS Policy Name (`String`). @@ -1362,7 +1406,7 @@ Please Enter value of client private key. Used for certificate-based auth.. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set +###### One of the arguments from this list "clear_secret_info, wingman_secret_info, blindfold_secret_info, vault_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -1450,7 +1494,7 @@ Use custom networking configuration. `no_forward_proxy` - (Optional) Disable Forward Proxy for this site (`Bool`). -###### One of the arguments from this list "global_network_list, no_global_network" must be set +###### One of the arguments from this list "no_global_network, global_network_list" must be set `global_network_list` - (Optional) List of global network connections. See [Global Network Choice Global Network List ](#global-network-choice-global-network-list) below for details. @@ -1486,7 +1530,7 @@ Use custom networking configuration. `sm_connection_pvt_ip` - (Optional) creating ipsec between two sites which are part of the site mesh group (`Bool`). -###### One of the arguments from this list "default_sli_config, sli_config" can be set +###### One of the arguments from this list "sli_config, default_sli_config" can be set `default_sli_config` - (Optional) Use default configuration for site local network (`Bool`).(Deprecated) @@ -1668,7 +1712,7 @@ tenant - (Optional) then tenant will hold the referred object's(e.g. route's) te Dns information that needs to added in the RouterAdvetisement. -###### One of the arguments from this list "local_dns, configured_list" must be set +###### One of the arguments from this list "configured_list, local_dns" must be set `configured_list` - (Optional) Configured address outside network range - external dns server. See [Dns Choice Configured List ](#dns-choice-configured-list) below for details. @@ -1750,13 +1794,13 @@ Use default configuration for site local network. Configuration for site local inside network. -###### One of the arguments from this list "no_static_routes, static_routes" must be set +###### One of the arguments from this list "static_routes, no_static_routes" must be set `no_static_routes` - (Optional) Static Routes disabled for site local inside network. (`Bool`). `static_routes` - (Optional) Manage static routes for site local inside network.. See [Static Route Choice Static Routes ](#static-route-choice-static-routes) below for details. -###### One of the arguments from this list "static_v6_routes, no_v6_static_routes" must be set +###### One of the arguments from this list "no_v6_static_routes, static_v6_routes" must be set `no_v6_static_routes` - (Optional) Static IPv6 Routes disabled for site local inside network. (`Bool`). @@ -1780,7 +1824,7 @@ Configuration for site local network. `labels` - (Optional) Add Labels for this network, these labels can be used in firewall policy (`String`). -###### One of the arguments from this list "no_static_routes, static_routes" must be set +###### One of the arguments from this list "static_routes, no_static_routes" must be set `no_static_routes` - (Optional) Static Routes disabled for site local network. (`Bool`). @@ -1812,7 +1856,7 @@ Use custom SR-IOV interfaces Configuration. List of networks from which DHCP server can allocate ip addresses. -###### One of the arguments from this list "network_prefix_allocator, network_prefix" must be set +###### One of the arguments from this list "network_prefix, network_prefix_allocator" must be set `network_prefix` - (Optional) Network Prefix to be used for IPV6 address auto configuration (`String`). @@ -1990,7 +2034,7 @@ List of custom storage devices. `advanced_advanced_parameters` - (Optional) Map of parameter name and string value (`String`). -###### One of the arguments from this list "pure_service_orchestrator, custom_storage, hpe_storage, netapp_trident" must be set +###### One of the arguments from this list "netapp_trident, pure_service_orchestrator, custom_storage, hpe_storage" must be set `custom_storage` - (Optional) Device configuration for Custom Storage (`Bool`). @@ -2052,12 +2096,14 @@ Configure storage interface for this App Stack site. `mtu` - (Optional) When configured, mtu must be between 512 and 16384 (`Int`). -###### One of the arguments from this list "srv6_network, ip_fabric_network, segment_network, site_local_network, site_local_inside_network, inside_network, storage_network" must be set +###### One of the arguments from this list "site_local_inside_network, inside_network, storage_network, srv6_network, ip_fabric_network, segment_network, site_local_network" must be set `inside_network` - (Optional) Interface belongs to user configured inside network. See [ref](#ref) below for details.(Deprecated) `ip_fabric_network` - (Optional) Interface belongs to IP Fabric network (`Bool`).(Deprecated) +`segment_network` - (Optional) x-displayName: "Segment". See [ref](#ref) below for details. + `site_local_inside_network` - (Optional) Interface belongs to site local network inside (`Bool`). `site_local_network` - (Optional) Interface belongs to site local network (outside) (`Bool`). @@ -2094,19 +2140,19 @@ No TLS interception is enabled for this network connector. Specify TLS interception configuration for the network connector. -###### One of the arguments from this list "policy, enable_for_all_domains" must be set +###### One of the arguments from this list "enable_for_all_domains, policy" must be set `enable_for_all_domains` - (Optional) Enable interception for all domains (`Bool`). `policy` - (Optional) Policy to enable/disable specific domains, with implicit enable all domains. See [Interception Policy Choice Policy ](#interception-policy-choice-policy) below for details. -###### One of the arguments from this list "custom_certificate, volterra_certificate" must be set +###### One of the arguments from this list "volterra_certificate, custom_certificate" must be set `custom_certificate` - (Optional) Certificates for generating intermediate certificate for TLS interception.. See [Signing Cert Choice Custom Certificate ](#signing-cert-choice-custom-certificate) below for details. `volterra_certificate` - (Optional) F5XC certificates for generating intermediate certificate for TLS interception. (`Bool`). -###### One of the arguments from this list "trusted_ca_url, volterra_trusted_ca" must be set +###### One of the arguments from this list "volterra_trusted_ca, trusted_ca_url" must be set `trusted_ca_url` - (Optional) Custom Root CA Certificate for validating upstream server certificate (`String`). @@ -2120,7 +2166,7 @@ F5XC Root CA Certificate for validating upstream server certificate. Interface IP is configured statically. -###### One of the arguments from this list "node_static_ip, cluster_static_ip, fleet_static_ip" must be set +###### One of the arguments from this list "cluster_static_ip, fleet_static_ip, node_static_ip" must be set `cluster_static_ip` - (Optional) Static IP configuration for a specific node. See [Network Prefix Choice Cluster Static Ip ](#network-prefix-choice-cluster-static-ip) below for details. @@ -2136,7 +2182,7 @@ CHAP initiator secret. Required if useCHAP=true. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -2154,7 +2200,7 @@ CHAP target initiator secret. Required if useCHAP=true. `secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) -###### One of the arguments from this list "wingman_secret_info, blindfold_secret_info, vault_secret_info, clear_secret_info" must be set +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set `blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. @@ -2164,6 +2210,14 @@ CHAP target initiator secret. Required if useCHAP=true. `wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) +### Vega Upgrade Mode Toggle Choice Disable Vega Upgrade Mode + +Disable Vega Upgrade Mode. + +### Vega Upgrade Mode Toggle Choice Enable Vega Upgrade Mode + +When enabled, vega will inform RE to stop traffic to the specific node.. + ### Vlan Choice Untagged Configure a untagged ethernet interface. diff --git a/docs/resources/volterra_ztna.md b/docs/resources/volterra_ztna.md new file mode 100644 index 000000000..98fd8ee0a --- /dev/null +++ b/docs/resources/volterra_ztna.md @@ -0,0 +1,388 @@ +--- + +page_title: "Volterra: ztna" + +description: "The ztna allows CRUD of Ztna resource on Volterra SaaS" +--------------------------------------------------------------------- + +Resource volterra_ztna +====================== + +The Ztna allows CRUD of Ztna resource on Volterra SaaS + +~> **Note:** Please refer to [Ztna API docs](https://docs.cloud.f5.com/docs/api/ztna) to learn more + +Example Usage +------------- + +```hcl +resource "volterra_ztna" "example" { + name = "acmecorp-web" + namespace = "staging" +} + +``` + +Argument Reference +------------------ + +### Metadata Argument Reference + +`annotations` - (Optional) queryable and should be preserved when modifying objects. (`String`). + +`description` - (Optional) Human readable description for the object (`String`). + +`disable` - (Optional) A value of true will administratively disable the object (`Bool`). + +`labels` - (Optional) by selector expression (`String`). + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +`namespace` - (Optional) Must be a DNS_LABEL format. For a namespace object itself, namespace value will be "" (`String`). + +### Spec Argument Reference + +`connectivity` - (Optional) List of Connectivity Policy Type . See [Connectivity ](#connectivity) below for details. + +`per_session` - (Optional) List of configuration for per session policy type.. See [Per Session ](#per-session) below for details. + +### Connectivity + +List of Connectivity Policy Type . + +`connectivities` - (Optional) Connectivity policy configuration. Select connectivity policy as PPP/DTLS (`String`). + +`connectivity_policy_name` - (Optional) Name of connectivity policy (`String`). + +### Per Session + +List of configuration for per session policy type.. + +`external_server` - (Optional) List of configuration of external server . See [Per Session External Server ](#per-session-external-server) below for details. + +`lease_pool_member` - (Optional) List of Lease pool member for Session Policy. See [Per Session Lease Pool Member ](#per-session-lease-pool-member) below for details. + +`per_session_policy_name` - (Optional) This contains the name of session policy (`String`). + +`resources` - (Optional) List of the Policy of session type.. See [Per Session Resources ](#per-session-resources) below for details. + +`sequence_action` - (Optional) Active Directory Query/Resource Assign . See [Per Session Sequence Action ](#per-session-sequence-action) below for details. + +### Acl Entries + +Entries Config for Acl Resource. + +`action` - (Optional) action is either allow/reject for acl resource type (`String`). + +`destination_end_port` - (Optional) Destination End Port for acl resource type. (`Int`). + +`destination_ip` - (Optional) Destination IP address for the acl resource type. . See [Entries Destination Ip ](#entries-destination-ip) below for details. + +`destination_start_port` - (Optional) Destination start port for acl resource type. (`Int`). + +### Active Directory Auth Active Directory Query + +Send active directory query configuration on success of allow directory auth.. + +`deny_name` - (Optional) Send deny as next item if query gets failed. (`String`). + +`filter` - (Optional) Filter setting for filtering out the assigned resources (`String`). + +`resource_assign` - (Optional) List of all assigned resources list . See [Active Directory Query Resource Assign ](#active-directory-query-resource-assign) below for details. + +`server` - (Optional) Name of the server which gets assigned. (`String`). + +### Active Directory Query Resource Assign + +List of all assigned resources list . + +`allow` - (Optional) This sends resource assign configuration. See [Resource Assign Allow ](#resource-assign-allow) below for details. + +### Admin Password Blindfold Secret Info Internal + +Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Allow Rules Resource Assign + +Rules for assigning the resources . + +`acls` - (Optional) Put the list of all acls resource type name. (`String`). + +`network_access_rule` - (Optional) List of network access rules configuration (`String`). + +`web_top_name` - (Optional) Put the name of webtopfull resource type (`String`). + +### Customization Password + +This field contains the secret password for log on.. + +`blindfold_secret_info_internal` - (Optional) Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. See [Password Blindfold Secret Info Internal ](#password-blindfold-secret-info-internal) below for details.(Deprecated) + +`secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) + +###### One of the arguments from this list "blindfold_secret_info, vault_secret_info, clear_secret_info, wingman_secret_info" must be set + +`blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. + +`clear_secret_info` - (Optional) Clear Secret is used for the secrets that are not encrypted. See [Secret Info Oneof Clear Secret Info ](#secret-info-oneof-clear-secret-info) below for details. + +`vault_secret_info` - (Optional) Vault Secret is used for the secrets managed by Hashicorp Vault. See [Secret Info Oneof Vault Secret Info ](#secret-info-oneof-vault-secret-info) below for details.(Deprecated) + +`wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) + +### Entries Destination Ip + +Destination IP address for the acl resource type. . + +###### One of the arguments from this list "ipv4, ipv6" can be set + +`ipv4` - (Optional) IPv4 Address. See [Ver Ipv4 ](#ver-ipv4) below for details. + +`ipv6` - (Optional) IPv6 Address. See [Ver Ipv6 ](#ver-ipv6) below for details. + +### External Server Admin Password + +Secret password credential used for external server. + +`blindfold_secret_info_internal` - (Optional) Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. See [Admin Password Blindfold Secret Info Internal ](#admin-password-blindfold-secret-info-internal) below for details.(Deprecated) + +`secret_encoding_type` - (Optional) e.g. if a secret is base64 encoded and then put into vault. (`String`).(Deprecated) + +###### One of the arguments from this list "vault_secret_info, clear_secret_info, wingman_secret_info, blindfold_secret_info" must be set + +`blindfold_secret_info` - (Optional) Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. See [Secret Info Oneof Blindfold Secret Info ](#secret-info-oneof-blindfold-secret-info) below for details. + +`clear_secret_info` - (Optional) Clear Secret is used for the secrets that are not encrypted. See [Secret Info Oneof Clear Secret Info ](#secret-info-oneof-clear-secret-info) below for details. + +`vault_secret_info` - (Optional) Vault Secret is used for the secrets managed by Hashicorp Vault. See [Secret Info Oneof Vault Secret Info ](#secret-info-oneof-vault-secret-info) below for details.(Deprecated) + +`wingman_secret_info` - (Optional) Secret is given as bootstrap secret in F5XC Security Sidecar. See [Secret Info Oneof Wingman Secret Info ](#secret-info-oneof-wingman-secret-info) below for details.(Deprecated) + +### Item Type Active Directory Auth + +Action type is active Directory auth.. + +`active_directory_query` - (Optional) Send active directory query configuration on success of allow directory auth.. See [Active Directory Auth Active Directory Query ](#active-directory-auth-active-directory-query) below for details. + +`deny_name` - (Optional) Send deny as next item in case it fails to find the query. (`String`). + +`expression` - (Optional) Expression string to filter the Directory query. (`String`). + +`server` - (Optional) Server name on which log on is success. (`String`). + +### Item Type Active Directory Query + +Action type is active Directory query.. + +`deny_name` - (Optional) Send deny as next item if query gets failed. (`String`). + +`filter` - (Optional) Filter setting for filtering out the assigned resources (`String`). + +`resource_assign` - (Optional) List of all assigned resources list . See [Active Directory Query Resource Assign ](#active-directory-query-resource-assign) below for details. + +`server` - (Optional) Name of the server which gets assigned. (`String`). + +### Item Type Log On + +Action type is logon . + +`active_directory_auth` - (Optional) After logon next item is to verify the group and directory.. See [Log On Active Directory Auth ](#log-on-active-directory-auth) below for details. + +`customization` - (Optional) This contains language , username and secret to login. See [Log On Customization ](#log-on-customization) below for details. + +### Item Type Resource Assign + +Action type is resource assign.. + +`allow` - (Optional) This sends resource assign configuration. See [Resource Assign Allow ](#resource-assign-allow) below for details. + +### Lease Pool Member End Address + +End Address of Lease Pool member. + +###### One of the arguments from this list "ipv4, ipv6" can be set + +`ipv4` - (Optional) IPv4 Address. See [Ver Ipv4 ](#ver-ipv4) below for details. + +`ipv6` - (Optional) IPv6 Address. See [Ver Ipv6 ](#ver-ipv6) below for details. + +### Lease Pool Member Start Address + +startAddress of Lease Pool member. + +###### One of the arguments from this list "ipv6, ipv4" can be set + +`ipv4` - (Optional) IPv4 Address. See [Ver Ipv4 ](#ver-ipv4) below for details. + +`ipv6` - (Optional) IPv6 Address. See [Ver Ipv6 ](#ver-ipv6) below for details. + +### Log On Active Directory Auth + +After logon next item is to verify the group and directory.. + +`active_directory_query` - (Optional) Send active directory query configuration on success of allow directory auth.. See [Active Directory Auth Active Directory Query ](#active-directory-auth-active-directory-query) below for details. + +`deny_name` - (Optional) Send deny as next item in case it fails to find the query. (`String`). + +`expression` - (Optional) Expression string to filter the Directory query. (`String`). + +`server` - (Optional) Server name on which log on is success. (`String`). + +### Log On Customization + +This contains language , username and secret to login. + +`password` - (Optional) This field contains the secret password for log on.. See [Customization Password ](#customization-password) below for details. + +`user_name` - (Optional)This contains the user name to log on. (`String`). + +### Password Blindfold Secret Info Internal + +Blindfold Secret Internal is used for the putting re-encrypted blindfold secret. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Per Session External Server + +List of configuration of external server . + +`admin_password` - (Optional) Secret password credential used for external server. See [External Server Admin Password ](#external-server-admin-password) below for details. + +`admin_username` - (Optional) Credentials used for external server (`String`). + +`domain` - (Optional) Domain name for the external server (`String`). + +`server_type` - (Optional) serverType of External server (`String`). + +### Per Session Lease Pool Member + +List of Lease pool member for Session Policy. + +`end_address` - (Optional) End Address of Lease Pool member. See [Lease Pool Member End Address ](#lease-pool-member-end-address) below for details. + +`start_address` - (Optional) startAddress of Lease Pool member. See [Lease Pool Member Start Address ](#lease-pool-member-start-address) below for details. + +### Per Session Resources + +List of the Policy of session type.. + +###### One of the arguments from this list "acl, web, connectivity" can be set + +`acl` - (Optional) Resource type is ACL.. See [Resource Type Acl ](#resource-type-acl) below for details. + +`connectivity` - (Optional) Resource type is connectivity . (`Bool`). + +`web` - (Optional) Resource type is webtopfull. (`Bool`). + +### Per Session Sequence Action + +Active Directory Query/Resource Assign . + +`connectivity_access_policy_name` - (Optional) Name of connectivity policy (`String`). + +`next_action` - (Optional) Active Directory Query/Resource Assign . See [Sequence Action Next Action ](#sequence-action-next-action) below for details. + +### Resource Assign Allow + +This sends resource assign configuration. + +`allow_name` - (Optional) Send allow as next item in case of success (`String`). + +`deny_name` - (Optional) Send deny as next item in case of failure (`String`). + +`rules_resource_assign` - (Optional) Rules for assigning the resources . See [Allow Rules Resource Assign ](#allow-rules-resource-assign) below for details. + +`server` - (Optional) Server name for assigning the resources (`String`). + +### Resource Type Acl + +Resource type is ACL.. + +`entries` - (Optional) Entries Config for Acl Resource. See [Acl Entries ](#acl-entries) below for details. + +### Resource Type Connectivity + +Resource type is connectivity .. + +### Resource Type Web + +Resource type is webtopfull.. + +### Secret Info Oneof Blindfold Secret Info + +Blindfold Secret is used for the secrets managed by F5XC Secret Management Service. + +`decryption_provider` - (Optional) Name of the Secret Management Access object that contains information about the backend Secret Management service. (`String`). + +`location` - (Required) Or it could be a path if the store provider is an http/https location (`String`). + +`store_provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +### Secret Info Oneof Clear Secret Info + +Clear Secret is used for the secrets that are not encrypted. + +`provider` - (Optional) This field needs to be provided only if the url scheme is not string:/// (`String`). + +`url` - (Required) When asked for this secret, caller will get Secret bytes after Base64 decoding. (`String`). + +### Secret Info Oneof Vault Secret Info + +Vault Secret is used for the secrets managed by Hashicorp Vault. + +`key` - (Optional) If not provided entire secret will be returned. (`String`). + +`location` - (Required) Path to secret in Vault. (`String`). + +`provider` - (Required) Name of the Secret Management Access object that contains information about the backend Vault. (`String`). + +`secret_encoding` - (Optional) This field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault. (`String`). + +`version` - (Optional) If not provided latest version will be returned. (`Int`). + +### Secret Info Oneof Wingman Secret Info + +Secret is given as bootstrap secret in F5XC Security Sidecar. + +`name` - (Required) Name of the secret. (`String`). + +### Sequence Action Next Action + +Active Directory Query/Resource Assign . + +###### One of the arguments from this list "log_on, active_directory_auth, active_directory_query, resource_assign" can be set + +`active_directory_auth` - (Optional) Action type is active Directory auth.. See [Item Type Active Directory Auth ](#item-type-active-directory-auth) below for details. + +`active_directory_query` - (Optional) Action type is active Directory query.. See [Item Type Active Directory Query ](#item-type-active-directory-query) below for details. + +`log_on` - (Optional) Action type is logon . See [Item Type Log On ](#item-type-log-on) below for details. + +`resource_assign` - (Optional) Action type is resource assign.. See [Item Type Resource Assign ](#item-type-resource-assign) below for details. + +### Ver Ipv4 + +IPv4 Address. + +`addr` - (Optional) IPv4 Address in string form with dot-decimal notation (`String`). + +### Ver Ipv6 + +IPv6 Address. + +`addr` - (Optional) e.g. '2001:db8:0:0:0:0:2:1' becomes '2001:db8::2:1' or '2001:db8:0:0:0:2:0:0' becomes '2001:db8::2::' (`String`). + +Attribute Reference +------------------- + +- `id` - This is the id of the configured ztna. diff --git a/docs/resources/volterra_ztna_application.md b/docs/resources/volterra_ztna_application.md new file mode 100644 index 000000000..5eed1a4e5 --- /dev/null +++ b/docs/resources/volterra_ztna_application.md @@ -0,0 +1,237 @@ +--- + +page_title: "Volterra: ztna_application" + +description: "The ztna_application allows CRUD of Ztna Application resource on Volterra SaaS" +--------------------------------------------------------------------------------------------- + +Resource volterra_ztna_application +================================== + +The Ztna Application allows CRUD of Ztna Application resource on Volterra SaaS + +~> **Note:** Please refer to [Ztna Application API docs](https://docs.cloud.f5.com/docs/api/ztna-application) to learn more + +Example Usage +------------- + +```hcl +resource "volterra_ztna_application" "example" { + name = "acmecorp-web" + namespace = "staging" + transport_type = ["transport_type"] +} + +``` + +Argument Reference +------------------ + +### Metadata Argument Reference + +`annotations` - (Optional) queryable and should be preserved when modifying objects. (`String`). + +`description` - (Optional) Human readable description for the object (`String`). + +`disable` - (Optional) A value of true will administratively disable the object (`Bool`). + +`labels` - (Optional) by selector expression (`String`). + +`name` - (Required) The value of name has to follow DNS-1035 format. (`String`). + +`namespace` - (Optional) Must be a DNS_LABEL format. For a namespace object itself, namespace value will be "" (`String`). + +### Spec Argument Reference + +`domain_name` - (Optional) ztna_application's Domain name (`String`). + +`msg` - (Optional) Denotes the service IP address and port. See [Msg ](#msg) below for details. + +`policies` - (Optional) Denotes the ZTNA policies. See [Policies ](#policies) below for details. + +`proxy_advertisement` - (Optional) Proxy Advertisement choice. See [Proxy Advertisement ](#proxy-advertisement) below for details. + +`transport_type` - (Required) DNS Proxy supports TCP and UDP transport (`String`). + +### Msg + +Denotes the service IP address and port. + +`ip` - (Optional) Used to set the Service IP. See [Msg Ip ](#msg-ip) below for details. + +`port` - (Optional) Matches port (`Int`). + +### Policies + +Denotes the ZTNA policies. + +`connectivity_policy_name` - (Optional) Used to set the Connectivity policy name (`String`). + +`message_policy_name` - (Optional) Used to set the Message policy name (`String`). + +`session_policy_name` - (Optional) Used to set the session policy name (`String`). + +### Proxy Advertisement + +Proxy Advertisement choice. + +###### One of the arguments from this list "advertise_on_public_default_vip, advertise_on_public, advertise_custom, do_not_advertise" must be set + +`advertise_custom` - (Optional) Advertise this load balancer on specific sites. See [Advertise Choice Advertise Custom ](#advertise-choice-advertise-custom) below for details. + +`advertise_on_public` - (Optional) Advertise this proxy on public network. See [Advertise Choice Advertise On Public ](#advertise-choice-advertise-on-public) below for details. + +`advertise_on_public_default_vip` - (Optional) Advertise this load balancer on public network with default VIP (`Bool`). + +`do_not_advertise` - (Optional) Do not advertise this proxy (`Bool`). + +### Advertise Choice Advertise Custom + +Advertise this load balancer on specific sites. + +`advertise_where` - (Required) Where should this load balancer be available. See [Advertise Custom Advertise Where ](#advertise-custom-advertise-where) below for details. + +### Advertise Choice Advertise On Public + +Advertise this proxy on public network. + +`public_ip` - (Required) Dedicated Public IP, which is allocated by F5 Distributed Cloud on request, is used as a VIP.. See [ref](#ref) below for details. + +### Advertise Choice Advertise On Public Default Vip + +Advertise this load balancer on public network with default VIP. + +### Advertise Choice Do Not Advertise + +Do not advertise this proxy. + +### Advertise Custom Advertise Where + +Where should this load balancer be available. + +###### One of the arguments from this list "cloud_edge_segment, segment, site, virtual_site, vk8s_service, virtual_network, site_segment, virtual_site_segment" must be set + +`site` - (Optional) Advertise on a customer site and a given network.. See [Choice Site ](#choice-site) below for details. + +`site_segment` - (Optional) Advertise on a segment on a site. See [Choice Site Segment ](#choice-site-segment) below for details. + +`virtual_network` - (Optional) Advertise on a virtual network. See [Choice Virtual Network ](#choice-virtual-network) below for details. + +`virtual_site` - (Optional) Advertise on a customer virtual site and a given network.. See [Choice Virtual Site ](#choice-virtual-site) below for details. + +`vk8s_service` - (Optional) Advertise on vK8s Service Network on RE.. See [Choice Vk8s Service ](#choice-vk8s-service) below for details. + +###### One of the arguments from this list "use_default_port, port" must be set + +`port` - (Optional) TCP port to Listen. (`Int`). + +`use_default_port` - (Optional) For HTTP, default is 80. For HTTPS/SNI, default is 443. (`Bool`). + +### Choice Site + +Advertise on a customer site and a given network.. + +`ip` - (Optional) Use given IP address as VIP on the site (`String`). + +`ipv6` - (Optional) Use given IPv6 address as VIP on the site (`String`). + +`network` - (Required) By default VIP chosen as ip address of primary network interface in the network (`String`). + +`site` - (Required) Reference to site object. See [ref](#ref) below for details. + +### Choice Site Segment + +Advertise on a segment on a site. + +`ip` - (Required) Use given IP address as VIP on the site (`String`). + +`ipv6` - (Optional) Use given IPv6 address as VIP on the site (`String`). + +`segment` - (Required) x-required. See [ref](#ref) below for details. + +`site` - (Required) x-required. See [ref](#ref) below for details. + +### Choice Virtual Network + +Advertise on a virtual network. + +###### One of the arguments from this list "default_v6_vip, specific_v6_vip" can be set + +`default_v6_vip` - (Optional) Use the default VIP, system allocated or configured in the virtual network (`Bool`). + +`specific_v6_vip` - (Optional) Use given IPV6 address as VIP on virtual Network (`String`). + +###### One of the arguments from this list "default_vip, specific_vip" can be set + +`default_vip` - (Optional) Use the default VIP, system allocated or configured in the virtual network (`Bool`). + +`specific_vip` - (Optional) Use given IPV4 address as VIP on virtual Network (`String`). + +`virtual_network` - (Required) Select network reference. See [ref](#ref) below for details. + +### Choice Virtual Site + +Advertise on a customer virtual site and a given network.. + +`network` - (Required) IP address of primary network interface in the network (`String`). + +`virtual_site` - (Required) Reference to virtual site object. See [ref](#ref) below for details. + +### Choice Vk8s Service + +Advertise on vK8s Service Network on RE.. + +###### One of the arguments from this list "site, virtual_site" must be set + +`site` - (Optional) Reference to site object. See [ref](#ref) below for details. + +`virtual_site` - (Optional) Reference to virtual site object. See [ref](#ref) below for details. + +### Msg Ip + +Used to set the Service IP. + +###### One of the arguments from this list "ipv4, ipv6" can be set + +`ipv4` - (Optional) IPv4 Address. See [Ver Ipv4 ](#ver-ipv4) below for details. + +`ipv6` - (Optional) IPv6 Address. See [Ver Ipv6 ](#ver-ipv6) below for details. + +### Port Choice Use Default Port + +For HTTP, default is 80. For HTTPS/SNI, default is 443.. + +### Ref + +Reference to another volterra object is shown like below + +name - (Required) then name will hold the referred object's(e.g. route's) name. (String). + +namespace - (Optional) then namespace will hold the referred object's(e.g. route's) namespace. (String). + +tenant - (Optional) then tenant will hold the referred object's(e.g. route's) tenant. (String). + +### V6 Vip Choice Default V6 Vip + +Use the default VIP, system allocated or configured in the virtual network. + +### Ver Ipv4 + +IPv4 Address. + +`addr` - (Optional) IPv4 Address in string form with dot-decimal notation (`String`). + +### Ver Ipv6 + +IPv6 Address. + +`addr` - (Optional) e.g. '2001:db8:0:0:0:0:2:1' becomes '2001:db8::2:1' or '2001:db8:0:0:0:2:0:0' becomes '2001:db8::2::' (`String`). + +### Vip Choice Default Vip + +Use the default VIP, system allocated or configured in the virtual network. + +Attribute Reference +------------------- + +- `id` - This is the id of the configured ztna_application. diff --git a/pbgo/combined/combined.ves.go b/pbgo/combined/combined.ves.go index 0fcc83424..af26398e0 100644 --- a/pbgo/combined/combined.ves.go +++ b/pbgo/combined/combined.ves.go @@ -21,6 +21,10 @@ import ( ves_io_schema_address_allocator_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/address_allocator/crudapi" ves_io_schema_advertise_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/advertise_policy" ves_io_schema_advertise_policy_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/advertise_policy/crudapi" + ves_io_schema_ai_assistant "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant" + ves_io_schema_ai_assistant_common "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/common" + ves_io_schema_ai_assistant_explain_log_record "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/explain_log_record" + ves_io_schema_ai_assistant_gen_dashboard_filter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter" ves_io_schema_alert_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy" ves_io_schema_alert_policy_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy/crudapi" ves_io_schema_alert_policy_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy_set" @@ -90,6 +94,7 @@ import ( ves_io_schema_dns_load_balancer_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_load_balancer/crudapi" ves_io_schema_dns_zone "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone" ves_io_schema_dns_zone_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/crudapi" + ves_io_schema_dns_zone_rrset "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/rrset" ves_io_schema_dos_mitigation "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dos_mitigation" ves_io_schema_dos_mitigation_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dos_mitigation/crudapi" ves_io_schema_downstream_cos "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/downstream_cos" @@ -102,6 +107,8 @@ import ( ves_io_schema_fast_acl_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl/crudapi" ves_io_schema_fast_acl_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl_rule" ves_io_schema_fast_acl_rule_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl_rule/crudapi" + ves_io_schema_filter_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" + ves_io_schema_filter_set_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set/crudapi" ves_io_schema_fleet "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet" ves_io_schema_fleet_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet/crudapi" ves_io_schema_flow_exporter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/flow_exporter" @@ -158,6 +165,8 @@ import ( ves_io_schema_malicious_user_mitigation_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/malicious_user_mitigation/crudapi" ves_io_schema_marketplace_aws_account "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/aws_account" ves_io_schema_marketplace_aws_account_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/aws_account/crudapi" + ves_io_schema_marketplace_xc_saas_asb_message "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message" + ves_io_schema_marketplace_xc_saas_asb_message_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi" ves_io_schema_namespace "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace" ves_io_schema_namespace_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace/crudapi" ves_io_schema_network_connector "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/network_connector" @@ -210,6 +219,8 @@ import ( ves_io_schema_site_mesh_group_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site_mesh_group/crudapi" ves_io_schema_stored_object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/stored_object" ves_io_schema_stored_object_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/stored_object/crudapi" + ves_io_schema_subscription "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription" + ves_io_schema_subscription_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription/crudapi" ves_io_schema_tenant "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant" ves_io_schema_tenant_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant/crudapi" ves_io_schema_token "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/token" @@ -271,6 +282,7 @@ import ( ves_io_schema_views_cdn_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer" ves_io_schema_views_cdn_loadbalancer_access_log "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer/access_log" ves_io_schema_views_cdn_loadbalancer_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" ves_io_schema_views_forward_proxy_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/forward_proxy_policy" ves_io_schema_views_forward_proxy_policy_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/forward_proxy_policy/crudapi" ves_io_schema_views_gcp_vpc_site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/gcp_vpc_site" @@ -308,6 +320,10 @@ import ( ves_io_schema_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/waf" ves_io_schema_waf_signatures_changelog "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/waf_signatures_changelog" ves_io_schema_waf_signatures_changelog_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/waf_signatures_changelog/crudapi" + ves_io_schema_ztna "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" + ves_io_schema_ztna_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna/crudapi" + ves_io_schema_ztna_application "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" + ves_io_schema_ztna_application_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application/crudapi" ) var ( @@ -342,6 +358,10 @@ func init() { ves_io_schema_address_allocator_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_advertise_policy.InitializeMDRegistry(MDR, true) ves_io_schema_advertise_policy_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_ai_assistant.InitializeMDRegistry(MDR, true) + ves_io_schema_ai_assistant_common.InitializeMDRegistry(MDR, true) + ves_io_schema_ai_assistant_explain_log_record.InitializeMDRegistry(MDR, true) + ves_io_schema_ai_assistant_gen_dashboard_filter.InitializeMDRegistry(MDR, true) ves_io_schema_alert_policy.InitializeMDRegistry(MDR, true) ves_io_schema_alert_policy_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_alert_policy_set.InitializeMDRegistry(MDR, true) @@ -411,6 +431,7 @@ func init() { ves_io_schema_dns_load_balancer_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_dns_zone.InitializeMDRegistry(MDR, true) ves_io_schema_dns_zone_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_dns_zone_rrset.InitializeMDRegistry(MDR, true) ves_io_schema_dos_mitigation.InitializeMDRegistry(MDR, true) ves_io_schema_dos_mitigation_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_downstream_cos.InitializeMDRegistry(MDR, true) @@ -423,6 +444,8 @@ func init() { ves_io_schema_fast_acl_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_fast_acl_rule.InitializeMDRegistry(MDR, true) ves_io_schema_fast_acl_rule_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_filter_set.InitializeMDRegistry(MDR, true) + ves_io_schema_filter_set_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_fleet.InitializeMDRegistry(MDR, true) ves_io_schema_fleet_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_flow_exporter.InitializeMDRegistry(MDR, true) @@ -479,6 +502,8 @@ func init() { ves_io_schema_malicious_user_mitigation_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_marketplace_aws_account.InitializeMDRegistry(MDR, true) ves_io_schema_marketplace_aws_account_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_marketplace_xc_saas_asb_message.InitializeMDRegistry(MDR, true) + ves_io_schema_marketplace_xc_saas_asb_message_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_namespace.InitializeMDRegistry(MDR, true) ves_io_schema_namespace_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_network_connector.InitializeMDRegistry(MDR, true) @@ -531,6 +556,8 @@ func init() { ves_io_schema_site_mesh_group_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_stored_object.InitializeMDRegistry(MDR, true) ves_io_schema_stored_object_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_subscription.InitializeMDRegistry(MDR, true) + ves_io_schema_subscription_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_tenant.InitializeMDRegistry(MDR, true) ves_io_schema_tenant_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_token.InitializeMDRegistry(MDR, true) @@ -592,6 +619,7 @@ func init() { ves_io_schema_views_cdn_loadbalancer.InitializeMDRegistry(MDR, true) ves_io_schema_views_cdn_loadbalancer_access_log.InitializeMDRegistry(MDR, true) ves_io_schema_views_cdn_loadbalancer_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_views_common_waf.InitializeMDRegistry(MDR, true) ves_io_schema_views_forward_proxy_policy.InitializeMDRegistry(MDR, true) ves_io_schema_views_forward_proxy_policy_crudapi.InitializeMDRegistry(MDR, true) ves_io_schema_views_gcp_vpc_site.InitializeMDRegistry(MDR, true) @@ -629,6 +657,10 @@ func init() { ves_io_schema_waf.InitializeMDRegistry(MDR, true) ves_io_schema_waf_signatures_changelog.InitializeMDRegistry(MDR, true) ves_io_schema_waf_signatures_changelog_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_ztna.InitializeMDRegistry(MDR, true) + ves_io_schema_ztna_crudapi.InitializeMDRegistry(MDR, true) + ves_io_schema_ztna_application.InitializeMDRegistry(MDR, true) + ves_io_schema_ztna_application_crudapi.InitializeMDRegistry(MDR, true) ves_io_tpv.InitializeMDRegistry(MDR, false) // Set singleton functions in MDRegistry diff --git a/pbgo/combined/data.ves.go b/pbgo/combined/data.ves.go index 0a92f38b6..173069375 100644 --- a/pbgo/combined/data.ves.go +++ b/pbgo/combined/data.ves.go @@ -264,6 +264,41 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.advertise_policy.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant", true) + mdr.PkgsInfo["ves.io.schema.ai_assistant"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("SahayaAPI", "CUSTOM_PUBLIC", "", false) + + rpcInfo = svcfw.NewRPCInfo("AIAssistantQuery", "ves.io.schema.ai_assistant.AIAssistantQueryRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/query"}} + + aInfo.RPCsInfo[svcfw.RPCName("AIAssistantQuery")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ai_assistant.SahayaAPI.AIAssistantQuery"] = rpcInfo + + fInfo.APIsInfo["SahayaAPI"] = aInfo + mdr.APIIdx["ves.io.schema.ai_assistant.SahayaAPI"] = aInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant.common", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/common", true) + mdr.PkgsInfo["ves.io.schema.ai_assistant.common"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/common/link.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/common/link.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant.explain_log_record", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/explain_log_record", true) + mdr.PkgsInfo["ves.io.schema.ai_assistant.explain_log_record"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/explain_log_record/explain_log_record.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/explain_log_record/explain_log_record.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant.gen_dashboard_filter", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter", true) + mdr.PkgsInfo["ves.io.schema.ai_assistant.gen_dashboard_filter"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.proto"] = fInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.alert_policy", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy", true) mdr.PkgsInfo["ves.io.schema.alert_policy"] = pInfo @@ -328,6 +363,20 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { mInfo = svcfw.NewMsgInfo("ReplaceRequest") mdr.MsgIdx["ves.io.schema.alert_policy.ReplaceRequest"] = mInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/alert_policy/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/alert_policy/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.alert_policy.Object", false) + + rpcInfo = svcfw.NewRPCInfo("GetAlertPolicyMatch", "ves.io.schema.alert_policy.AlertPolicyMatchRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/alert_policy/match"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetAlertPolicyMatch")] = rpcInfo + mdr.RPCIdx["ves.io.schema.alert_policy.CustomAPI.GetAlertPolicyMatch"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.alert_policy.CustomAPI"] = aInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/alert_policy/types.proto") pInfo.FilesInfo["ves.io/schema/alert_policy/types.proto"] = fInfo @@ -532,11 +581,6 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("ConfirmAlertReceiver")] = rpcInfo mdr.RPCIdx["ves.io.schema.alert_receiver.CustomAPI.ConfirmAlertReceiver"] = rpcInfo - rpcInfo = svcfw.NewRPCInfo("GetAlertPolicyMatch", "ves.io.schema.alert_receiver.AlertPolicyMatchRequest", false, false) - rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/alert_policy/match"}} - - aInfo.RPCsInfo[svcfw.RPCName("GetAlertPolicyMatch")] = rpcInfo - mdr.RPCIdx["ves.io.schema.alert_receiver.CustomAPI.GetAlertPolicyMatch"] = rpcInfo rpcInfo = svcfw.NewRPCInfo("TestAlertReceiver", "ves.io.schema.alert_receiver.TestAlertReceiverRequest", false, false) rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/alert_receivers/{name}/test"}} @@ -920,6 +964,11 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("Metrics")] = rpcInfo mdr.RPCIdx["ves.io.schema.app_firewall.CustomDataAPI.Metrics"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("MetricsAllNamespaces", "ves.io.schema.app_firewall.MetricsRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/app_firewall/all_ns_metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("MetricsAllNamespaces")] = rpcInfo + mdr.RPCIdx["ves.io.schema.app_firewall.CustomDataAPI.MetricsAllNamespaces"] = rpcInfo fInfo.APIsInfo["CustomDataAPI"] = aInfo mdr.APIIdx["ves.io.schema.app_firewall.CustomDataAPI"] = aInfo @@ -2248,6 +2297,68 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { mInfo = svcfw.NewMsgInfo("ReplaceRequest") mdr.MsgIdx["ves.io.schema.cloud_connect.ReplaceRequest"] = mInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/cloud_connect/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.cloud_connect.Object", false) + + rpcInfo = svcfw.NewRPCInfo("GetMetrics", "ves.io.schema.cloud_connect.GetMetricsRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connects/{name}/metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetMetrics")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CustomAPI.GetMetrics"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListMetrics", "ves.io.schema.cloud_connect.ListMetricsRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connects/metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListMetrics")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CustomAPI.ListMetrics"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListSegmentMetrics", "ves.io.schema.cloud_connect.ListSegmentMetricsRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connects/segment_metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListSegmentMetrics")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CustomAPI.ListSegmentMetrics"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.cloud_connect.CustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/public_customapi_akar.proto") + pInfo.FilesInfo["ves.io/schema/cloud_connect/public_customapi_akar.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("ConfigCustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.cloud_connect.Object", false) + + rpcInfo = svcfw.NewRPCInfo("EdgeCredentials", "ves.io.schema.cloud_connect.CredentialsRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/edge_credentials/{provider}"}} + + aInfo.RPCsInfo[svcfw.RPCName("EdgeCredentials")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeCredentials"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("EdgeList", "ves.io.schema.cloud_connect.EdgeListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/edge_list"}} + + aInfo.RPCsInfo[svcfw.RPCName("EdgeList")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeList"] = rpcInfo + + fInfo.APIsInfo["ConfigCustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.cloud_connect.ConfigCustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/public_customapi_lucario.proto") + pInfo.FilesInfo["ves.io/schema/cloud_connect/public_customapi_lucario.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CloudDataCustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.cloud_connect.Object", false) + + rpcInfo = svcfw.NewRPCInfo("DiscoverVPC", "ves.io.schema.cloud_connect.DiscoverVPCRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/discover_vpc"}} + + aInfo.RPCsInfo[svcfw.RPCName("DiscoverVPC")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CloudDataCustomAPI.DiscoverVPC"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ReApplyVPCAttachment", "ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connect_reapply_vpc_attachment"}} + + aInfo.RPCsInfo[svcfw.RPCName("ReApplyVPCAttachment")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CloudDataCustomAPI.ReApplyVPCAttachment"] = rpcInfo + + fInfo.APIsInfo["CloudDataCustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = aInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/types.proto") pInfo.FilesInfo["ves.io/schema/cloud_connect/types.proto"] = fInfo @@ -3942,7 +4053,7 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.dns_load_balancer.Object", false) rpcInfo = svcfw.NewRPCInfo("SuggestValues", "ves.io.schema.dns_load_balancer.SuggestValuesReq", true, false) - rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/dns_load_balancer/suggest-values"}} + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/suggest-values"}} aInfo.RPCsInfo[svcfw.RPCName("SuggestValues")] = rpcInfo mdr.RPCIdx["ves.io.schema.dns_load_balancer.CustomAPI.SuggestValues"] = rpcInfo @@ -4170,6 +4281,50 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.dns_zone.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.dns_zone.rrset", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/rrset", true) + mdr.PkgsInfo["ves.io.schema.dns_zone.rrset"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/dns_zone/rrset/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/dns_zone/rrset/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.dns_zone.rrset.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.dns_zone.rrset.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.dns_zone.rrset.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.dns_zone.rrset.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Replace"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.dns_zone.rrset.CustomAPI"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.ReplaceRequest"] = mInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.dos_mitigation", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dos_mitigation", true) mdr.PkgsInfo["ves.io.schema.dos_mitigation"] = pInfo @@ -4773,6 +4928,129 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.fast_acl_rule.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.filter_set", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set", true) + mdr.PkgsInfo["ves.io.schema.filter_set"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/object.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.filter_set.Object"] = oInfo + oInfo = svcfw.NewObjInfo("StatusObject", false) + + fInfo.ObjsInfo[svcfw.ObjType("StatusObject")] = oInfo + mdr.ObjIdx["ves.io.schema.filter_set.StatusObject"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/public_crudapi.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/public_crudapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD_PUBLIC", "ves.io.schema.filter_set.Object", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.filter_set.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{metadata.namespace}/filter_sets"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.filter_set.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/{namespace}/filter_sets/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.filter_set.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/filter_sets/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.filter_set.ListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/filter_sets"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.filter_set.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/{metadata.namespace}/filter_sets/{metadata.name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.filter_set.API"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.filter_set.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.filter_set.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.filter_set.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ListRequest") + mdr.MsgIdx["ves.io.schema.filter_set.ListRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.filter_set.ReplaceRequest"] = mInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.filter_set.Object", false) + + rpcInfo = svcfw.NewRPCInfo("FindFilterSets", "ves.io.schema.filter_set.FindFilterSetsReq", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/filter_sets/find"}} + + aInfo.RPCsInfo[svcfw.RPCName("FindFilterSets")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.CustomAPI.FindFilterSets"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.filter_set.CustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/types.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.filter_set.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set/crudapi", true) + mdr.PkgsInfo["ves.io.schema.filter_set.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.filter_set.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.filter_set.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.filter_set/Objects", "/ves.io.schema.filter_set/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.filter_set.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.filter_set/Object/{object_uid}", "/ves.io.schema.filter_set/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.filter_set.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.filter_set/Object/{object_uid}", "/ves.io.schema.filter_set/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.filter_set.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.filter_set/Objects", "/ves.io.schema.filter_set/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.filter_set.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.filter_set/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.filter_set.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.filter_set/Object/{object_uid}", "/ves.io.schema.filter_set/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.filter_set.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.fleet", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet", true) mdr.PkgsInfo["ves.io.schema.fleet"] = pInfo @@ -7208,6 +7486,62 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.marketplace.aws_account.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.marketplace.xc_saas.asb.message", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message", true) + mdr.PkgsInfo["ves.io.schema.marketplace.xc_saas.asb.message"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/marketplace/xc_saas/asb/message/object.proto") + pInfo.FilesInfo["ves.io/schema/marketplace/xc_saas/asb/message/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/marketplace/xc_saas/asb/message/types.proto") + pInfo.FilesInfo["ves.io/schema/marketplace/xc_saas/asb/message/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi", true) + mdr.PkgsInfo["ves.io.schema.marketplace.xc_saas.asb.message.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.marketplace.xc_saas.asb.message.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Objects", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Objects", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.namespace", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace", true) mdr.PkgsInfo["ves.io.schema.namespace"] = pInfo @@ -7397,6 +7731,16 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("GetApiEndpointsStats")] = rpcInfo mdr.RPCIdx["ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStats"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("GetApiEndpointsStatsAllNamespaces", "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/api_endpoints/all_ns_stats"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetApiEndpointsStatsAllNamespaces")] = rpcInfo + mdr.RPCIdx["ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("SuggestValues", "ves.io.schema.namespace.SuggestValuesReq", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/suggest-values"}} + + aInfo.RPCsInfo[svcfw.RPCName("SuggestValues")] = rpcInfo + mdr.RPCIdx["ves.io.schema.namespace.NamespaceMLCustomAPI.SuggestValues"] = rpcInfo fInfo.APIsInfo["NamespaceMLCustomAPI"] = aInfo mdr.APIIdx["ves.io.schema.namespace.NamespaceMLCustomAPI"] = aInfo @@ -10407,6 +10751,66 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.stored_object.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.subscription", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription", true) + mdr.PkgsInfo["ves.io.schema.subscription"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/object.proto") + pInfo.FilesInfo["ves.io/schema/subscription/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.subscription.Object"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/subscription/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "", false) + + rpcInfo = svcfw.NewRPCInfo("Subscribe", "ves.io.schema.subscription.SubscribeRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/addon/subscribe"}} + + aInfo.RPCsInfo[svcfw.RPCName("Subscribe")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.CustomAPI.Subscribe"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Unsubscribe", "ves.io.schema.subscription.UnsubscribeRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/addon/unsubscribe"}} + + aInfo.RPCsInfo[svcfw.RPCName("Unsubscribe")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.CustomAPI.Unsubscribe"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.subscription.CustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/types.proto") + pInfo.FilesInfo["ves.io/schema/subscription/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.subscription.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription/crudapi", true) + mdr.PkgsInfo["ves.io.schema.subscription.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/subscription/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.subscription.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.subscription.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.subscription/Object/{object_uid}", "/ves.io.schema.subscription/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.subscription.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.subscription/Objects", "/ves.io.schema.subscription/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.subscription.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.subscription/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.crudapi.API.ListStream"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.subscription.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.tenant", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant", true) mdr.PkgsInfo["ves.io.schema.tenant"] = pInfo @@ -10771,11 +11175,21 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("DCClusterTopology")] = rpcInfo mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.DCClusterTopology"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("GetNetworkRouteTables", "ves.io.schema.topology.NetworkRouteTablesRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/network/{id}/route_tables"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetNetworkRouteTables")] = rpcInfo + mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.GetNetworkRouteTables"] = rpcInfo rpcInfo = svcfw.NewRPCInfo("GetRouteTable", "ves.io.schema.topology.RouteTableRequest", false, false) rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/route_table/{name}"}} aInfo.RPCsInfo[svcfw.RPCName("GetRouteTable")] = rpcInfo mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.GetRouteTable"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("GetSiteNetworks", "ves.io.schema.topology.SiteNetworksRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/site/{name}/networks"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetSiteNetworks")] = rpcInfo + mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.GetSiteNetworks"] = rpcInfo rpcInfo = svcfw.NewRPCInfo("SiteMeshGroupsSummary", "ves.io.schema.topology.SiteMeshGroupsSummaryRequest", false, false) rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/site_mesh_groups"}} @@ -13460,6 +13874,12 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.views.cdn_loadbalancer.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.views.common_waf", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf", true) + mdr.PkgsInfo["ves.io.schema.views.common_waf"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/views/common_waf/common_waf_types.proto") + pInfo.FilesInfo["ves.io/schema/views/common_waf/common_waf_types.proto"] = fInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.views.forward_proxy_policy", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/forward_proxy_policy", true) mdr.PkgsInfo["ves.io.schema.views.forward_proxy_policy"] = pInfo @@ -15609,6 +16029,224 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.waf_signatures_changelog.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna", true) + mdr.PkgsInfo["ves.io.schema.ztna"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/object.proto") + pInfo.FilesInfo["ves.io/schema/ztna/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna.Object"] = oInfo + oInfo = svcfw.NewObjInfo("StatusObject", false) + + fInfo.ObjsInfo[svcfw.ObjType("StatusObject")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna.StatusObject"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/public_crudapi.proto") + pInfo.FilesInfo["ves.io/schema/ztna/public_crudapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD_PUBLIC", "ves.io.schema.ztna.Object", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{metadata.namespace}/ztnas"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/{namespace}/ztnas/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztnas/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna.ListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztnas"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/{metadata.namespace}/ztnas/{metadata.name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna.API"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.ztna.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.ztna.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.ztna.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ListRequest") + mdr.MsgIdx["ves.io.schema.ztna.ListRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.ztna.ReplaceRequest"] = mInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/types.proto") + pInfo.FilesInfo["ves.io/schema/ztna/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna/crudapi", true) + mdr.PkgsInfo["ves.io.schema.ztna.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/ztna/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.ztna.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.ztna/Objects", "/ves.io.schema.ztna/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.ztna/Object/{object_uid}", "/ves.io.schema.ztna/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna/Object/{object_uid}", "/ves.io.schema.ztna/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna/Objects", "/ves.io.schema.ztna/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.ztna.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.ztna/Object/{object_uid}", "/ves.io.schema.ztna/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna.crudapi.API"] = aInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna_application", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application", true) + mdr.PkgsInfo["ves.io.schema.ztna_application"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/object.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna_application.Object"] = oInfo + oInfo = svcfw.NewObjInfo("StatusObject", false) + + fInfo.ObjsInfo[svcfw.ObjType("StatusObject")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna_application.StatusObject"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/public_crudapi.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/public_crudapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD_PUBLIC", "ves.io.schema.ztna_application.Object", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna_application.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{metadata.namespace}/ztna_applications"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna_application.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/{namespace}/ztna_applications/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna_application.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztna_applications/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna_application.ListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztna_applications"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna_application.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/{metadata.namespace}/ztna_applications/{metadata.name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna_application.API"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ListRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.ListRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.ReplaceRequest"] = mInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/types.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna_application.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application/crudapi", true) + mdr.PkgsInfo["ves.io.schema.ztna_application.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.ztna_application.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna_application.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.ztna_application/Objects", "/ves.io.schema.ztna_application/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna_application.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.ztna_application/Object/{object_uid}", "/ves.io.schema.ztna_application/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna_application.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna_application/Object/{object_uid}", "/ves.io.schema.ztna_application/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna_application.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna_application/Objects", "/ves.io.schema.ztna_application/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.ztna_application.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna_application/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.ztna_application/Object/{object_uid}", "/ves.io.schema.ztna_application/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna_application.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.tpv", "github.com/volterraedge/terraform-provider-volterra/pbgo", false) mdr.PkgsInfo["ves.io.tpv"] = pInfo diff --git a/pbgo/extschema/schema/address_allocator/crudapi/api.vesapi.go b/pbgo/extschema/schema/address_allocator/crudapi/api.vesapi.go index c02b7308e..22e40facf 100644 --- a/pbgo/extschema/schema/address_allocator/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/address_allocator/crudapi/api.vesapi.go @@ -3194,10 +3194,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/address_allocator/object.pb.go b/pbgo/extschema/schema/address_allocator/object.pb.go index 4956d943b..47e073ef7 100644 --- a/pbgo/extschema/schema/address_allocator/object.pb.go +++ b/pbgo/extschema/schema/address_allocator/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_660195bdc172dcd1 = []byte{ - // 603 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x3b, 0xbb, 0x9b, 0x85, 0x0c, 0x04, 0xb1, 0x7a, 0xa8, 0xa8, 0x23, 0x59, 0x2f, 0x18, - 0x69, 0x6b, 0x30, 0x1e, 0x40, 0xc5, 0x04, 0x48, 0xf0, 0x00, 0x31, 0xd9, 0xc5, 0x8b, 0x97, 0xcd, - 0x74, 0xfa, 0xb6, 0x54, 0xda, 0x9d, 0x66, 0x66, 0x5a, 0xe0, 0x60, 0x62, 0xfc, 0x04, 0x26, 0xde, - 0xfc, 0x04, 0xc6, 0xf8, 0x21, 0xc0, 0x93, 0xf1, 0x44, 0x38, 0x71, 0x94, 0xee, 0xc5, 0x23, 0x7e, - 0x03, 0xc3, 0x94, 0x12, 0x16, 0xd6, 0x60, 0xb8, 0x4d, 0xf3, 0x7e, 0xff, 0x7f, 0xdf, 0x9b, 0xf7, - 0xde, 0xe0, 0xe9, 0x0c, 0xa4, 0x13, 0x72, 0x57, 0xb2, 0x75, 0x88, 0xa9, 0x4b, 0x7d, 0x5f, 0x80, - 0x94, 0x6d, 0x1a, 0x45, 0x9c, 0x51, 0xc5, 0x85, 0xcb, 0xbd, 0xb7, 0xc0, 0x94, 0x93, 0x08, 0xae, - 0xb8, 0x79, 0xaf, 0xa0, 0x9d, 0x82, 0x76, 0x2e, 0xd0, 0x13, 0x76, 0x10, 0xaa, 0xf5, 0xd4, 0x73, - 0x18, 0x8f, 0xdd, 0x80, 0x07, 0xdc, 0xd5, 0x3a, 0x2f, 0xed, 0xe8, 0x2f, 0xfd, 0xa1, 0x4f, 0x85, - 0xdf, 0xc4, 0xc3, 0xcb, 0xfe, 0xae, 0xb6, 0x13, 0x90, 0x27, 0xf0, 0xed, 0x7e, 0x98, 0x27, 0x2a, - 0xe4, 0xdd, 0x32, 0x78, 0xab, 0x3f, 0x78, 0x56, 0xd7, 0xe8, 0x0f, 0x65, 0x20, 0xa1, 0x9b, 0xf5, - 0xcb, 0x1b, 0x9f, 0x6a, 0xb8, 0xfe, 0x4a, 0x57, 0x6a, 0xce, 0xe2, 0xe1, 0x18, 0x14, 0xf5, 0xa9, - 0xa2, 0x16, 0x9a, 0x44, 0x53, 0x23, 0x33, 0x77, 0x9d, 0xfe, 0xb2, 0x0b, 0x70, 0x15, 0x14, 0x5d, - 0xdb, 0x4e, 0xa0, 0x79, 0x8a, 0x9b, 0x2b, 0xf8, 0x9a, 0xdc, 0x96, 0x0a, 0xe2, 0xf6, 0xa9, 0x43, - 0x45, 0x3b, 0xdc, 0x3f, 0xe7, 0xd0, 0xd2, 0xd4, 0x39, 0x9f, 0xb1, 0x42, 0xbb, 0x5a, 0xba, 0x3d, - 0xc7, 0x35, 0x99, 0x00, 0xb3, 0xaa, 0xda, 0xe2, 0x81, 0x73, 0xc9, 0xdd, 0x3b, 0xad, 0x04, 0x98, - 0x36, 0xd2, 0xb2, 0xb9, 0x9d, 0xca, 0x87, 0x17, 0xf5, 0xc2, 0xf2, 0xfb, 0xae, 0x55, 0x19, 0x47, - 0xfb, 0xbb, 0xd6, 0xb7, 0x0a, 0x9e, 0xc5, 0xd5, 0x65, 0x50, 0xe6, 0x4c, 0xe7, 0xc9, 0x16, 0xb3, - 0x25, 0xb0, 0x54, 0x40, 0x0c, 0x72, 0xdd, 0xf6, 0xa8, 0x0c, 0x99, 0x1d, 0xf3, 0x6e, 0xa8, 0xb8, - 0x98, 0x9e, 0xcc, 0x40, 0xda, 0x21, 0xb7, 0xbb, 0xa0, 0x36, 0xb9, 0xd8, 0xb0, 0x05, 0x50, 0x1f, - 0x3f, 0xc5, 0x43, 0x4d, 0x48, 0x22, 0xca, 0xc0, 0x7c, 0x34, 0x58, 0x9e, 0x4a, 0xb8, 0xa8, 0xdd, - 0x14, 0xa1, 0x02, 0x3c, 0x87, 0xeb, 0x8b, 0x02, 0xa8, 0xba, 0xa2, 0x76, 0x09, 0x22, 0xb8, 0xa2, - 0xb6, 0xb6, 0x12, 0xca, 0x2b, 0x15, 0xdc, 0x58, 0xc3, 0xc3, 0xe5, 0xa5, 0x9a, 0x2f, 0xf1, 0x50, - 0xc0, 0xda, 0xba, 0x21, 0xc5, 0x54, 0xb8, 0x97, 0x36, 0x64, 0x39, 0xe2, 0x1e, 0x8d, 0x4e, 0xdb, - 0x52, 0x0f, 0xd8, 0xf1, 0xb9, 0xf1, 0x07, 0xe1, 0xd1, 0x96, 0xa2, 0x2a, 0x95, 0xff, 0x3d, 0x71, - 0x05, 0x3e, 0x60, 0xe2, 0x5a, 0x78, 0xa4, 0x58, 0xd0, 0xb6, 0x80, 0x8e, 0xb4, 0x2a, 0x93, 0xd5, - 0xa9, 0x91, 0x99, 0x3b, 0x03, 0xe7, 0xb5, 0x09, 0x9d, 0x63, 0xf1, 0xc2, 0xcd, 0xaf, 0xef, 0xae, - 0x5f, 0xc8, 0xb5, 0x89, 0x79, 0x09, 0x49, 0xf3, 0x19, 0xc6, 0x8c, 0x77, 0xfd, 0x50, 0x2f, 0x88, - 0x55, 0x1d, 0xe8, 0xb9, 0x58, 0x02, 0x3a, 0xa1, 0x33, 0xfc, 0xdc, 0x8d, 0xfd, 0xf9, 0x71, 0x3c, - 0x86, 0x47, 0xcb, 0x1c, 0x9d, 0x34, 0xf4, 0x17, 0x3e, 0xa3, 0x9f, 0xf3, 0xb5, 0xc5, 0x95, 0xe6, - 0xd2, 0xde, 0x21, 0x31, 0x0e, 0x0e, 0x89, 0x71, 0x74, 0x48, 0xd0, 0xfb, 0x9c, 0xa0, 0x2f, 0x39, - 0x41, 0x3f, 0x72, 0x82, 0xf6, 0x72, 0x82, 0x0e, 0x72, 0x82, 0x7e, 0xe5, 0x04, 0xfd, 0xce, 0x89, - 0x71, 0x94, 0x13, 0xf4, 0xb1, 0x47, 0x8c, 0x9d, 0x1e, 0x41, 0x7b, 0x3d, 0x62, 0x1c, 0xf4, 0x88, - 0xf1, 0xe6, 0x75, 0xc0, 0x93, 0x8d, 0xc0, 0xc9, 0x78, 0xa4, 0x40, 0x08, 0xea, 0xa4, 0xd2, 0xd5, - 0x87, 0x0e, 0x17, 0xb1, 0x9d, 0x08, 0x9e, 0x85, 0x3e, 0x08, 0xbb, 0x0c, 0xbb, 0x89, 0x17, 0x70, - 0x17, 0xb6, 0xd4, 0xc9, 0xe2, 0xff, 0xeb, 0x91, 0xf1, 0xea, 0xfa, 0x0d, 0x78, 0xfc, 0x37, 0x00, - 0x00, 0xff, 0xff, 0x63, 0x86, 0x0f, 0x52, 0x0c, 0x05, 0x00, 0x00, + // 621 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4f, 0x4f, 0xd4, 0x40, + 0x14, 0xc0, 0x77, 0x58, 0x5c, 0xc8, 0x40, 0x10, 0xab, 0x87, 0x15, 0x75, 0x24, 0xeb, 0x05, 0x23, + 0x6d, 0x13, 0x8c, 0x07, 0x89, 0x62, 0x02, 0x24, 0x78, 0x80, 0x90, 0xec, 0xe2, 0x41, 0x34, 0xd9, + 0x4c, 0xa7, 0x6f, 0x4b, 0xa5, 0xed, 0x34, 0x33, 0xd3, 0x02, 0x07, 0x13, 0xe3, 0x27, 0xf0, 0xec, + 0x27, 0x30, 0x9e, 0xfd, 0x00, 0xe2, 0xc9, 0x98, 0x98, 0x10, 0x4e, 0x1c, 0xdd, 0xee, 0xc5, 0x23, + 0x7e, 0x03, 0xc3, 0x94, 0x22, 0xbb, 0xac, 0xe2, 0x85, 0xdb, 0x34, 0xef, 0xf7, 0x7e, 0xf3, 0xa7, + 0xef, 0x3d, 0x3c, 0x9d, 0x82, 0xb4, 0x7c, 0x6e, 0x4b, 0xb6, 0x01, 0x21, 0xb5, 0xa9, 0xeb, 0x0a, + 0x90, 0xb2, 0x49, 0x83, 0x80, 0x33, 0xaa, 0xb8, 0xb0, 0xb9, 0xf3, 0x0a, 0x98, 0xb2, 0x62, 0xc1, + 0x15, 0x37, 0x6e, 0xe7, 0xb4, 0x95, 0xd3, 0xd6, 0x19, 0x7a, 0xc2, 0xf4, 0x7c, 0xb5, 0x91, 0x38, + 0x16, 0xe3, 0xa1, 0xed, 0x71, 0x8f, 0xdb, 0x3a, 0xcf, 0x49, 0x5a, 0xfa, 0x4b, 0x7f, 0xe8, 0x55, + 0xee, 0x9b, 0xb8, 0x77, 0xde, 0xee, 0x6a, 0x27, 0x06, 0x79, 0x0c, 0xdf, 0xe8, 0x86, 0x79, 0xac, + 0x7c, 0x1e, 0x15, 0xc1, 0xeb, 0xdd, 0xc1, 0xd3, 0x79, 0xb5, 0xee, 0x50, 0x0a, 0x12, 0xa2, 0xb4, + 0x3b, 0xbd, 0xf6, 0xe9, 0x12, 0xae, 0xac, 0xea, 0x9b, 0x1a, 0x0f, 0xf1, 0x70, 0x08, 0x8a, 0xba, + 0x54, 0xd1, 0x2a, 0x9a, 0x44, 0x53, 0x23, 0x33, 0xb7, 0xac, 0xee, 0x6b, 0xe7, 0xe0, 0x0a, 0x28, + 0xba, 0xb6, 0x13, 0x43, 0xfd, 0x04, 0x37, 0x96, 0xf1, 0x65, 0xb9, 0x23, 0x15, 0x84, 0xcd, 0x13, + 0xc3, 0x80, 0x36, 0xdc, 0xe9, 0x31, 0x34, 0x34, 0xd5, 0xe3, 0x19, 0xcb, 0x73, 0x57, 0x0a, 0xdb, + 0x63, 0x3c, 0x28, 0x63, 0x60, 0xd5, 0xb2, 0x56, 0xdc, 0xb5, 0xce, 0x79, 0x7b, 0xab, 0x11, 0x03, + 0xd3, 0x22, 0x9d, 0x36, 0xdb, 0x2e, 0xbf, 0x7d, 0x52, 0xc9, 0x95, 0x5f, 0x76, 0xab, 0x03, 0xe3, + 0x68, 0x7f, 0xb7, 0xfa, 0xbd, 0x8c, 0x5f, 0xe0, 0xf2, 0x12, 0x28, 0x63, 0xad, 0xf5, 0x60, 0x9b, + 0x99, 0x12, 0x58, 0x22, 0x20, 0x04, 0xb9, 0x61, 0x3a, 0x54, 0xfa, 0xcc, 0x0c, 0x79, 0xe4, 0x2b, + 0x2e, 0xa6, 0x27, 0x7b, 0xc3, 0x52, 0xd1, 0xc8, 0xa5, 0xc2, 0xfd, 0x43, 0xa4, 0x20, 0x4d, 0x9f, + 0x9b, 0x11, 0xa8, 0x2d, 0x2e, 0x36, 0x4d, 0x01, 0xd4, 0xc5, 0xeb, 0x78, 0xa8, 0x0e, 0x71, 0x40, + 0x19, 0x18, 0xab, 0xfd, 0x37, 0x48, 0x24, 0xfc, 0xcb, 0x9e, 0x87, 0x7b, 0xd4, 0x5b, 0xc2, 0x57, + 0x80, 0x9f, 0xe3, 0xca, 0x82, 0x00, 0xaa, 0x2e, 0x46, 0xbd, 0x08, 0x01, 0x5c, 0x84, 0xfa, 0x25, + 0x1e, 0x5c, 0xf6, 0xe5, 0x05, 0xbd, 0x77, 0x6d, 0x0d, 0x0f, 0x17, 0x7f, 0xdd, 0x78, 0x8a, 0x87, + 0x3c, 0xd6, 0xd4, 0x15, 0x93, 0x97, 0xad, 0x7d, 0x6e, 0xc5, 0x2c, 0x05, 0xdc, 0xa1, 0xc1, 0x49, + 0xdd, 0x54, 0x3c, 0x76, 0xb4, 0xae, 0xfd, 0x42, 0x78, 0xb4, 0xa1, 0xa8, 0x4a, 0xe4, 0x7f, 0xb7, + 0x44, 0x8e, 0xf7, 0x69, 0x89, 0x06, 0x1e, 0xc9, 0x27, 0x48, 0x53, 0x40, 0x4b, 0x56, 0x07, 0x26, + 0xcb, 0x53, 0x23, 0x33, 0x37, 0xfb, 0x36, 0x54, 0x1d, 0x5a, 0x47, 0xc9, 0xf3, 0xd7, 0x3e, 0xbe, + 0xbe, 0x72, 0xe6, 0xac, 0x75, 0xcc, 0x0b, 0x48, 0x1a, 0x8f, 0x30, 0x66, 0x3c, 0x72, 0x7d, 0xdd, + 0xc1, 0xd5, 0x72, 0x5f, 0xe7, 0x42, 0x01, 0xe8, 0x03, 0x9d, 0xe2, 0x67, 0xaf, 0xee, 0xcf, 0x8d, + 0xe3, 0x31, 0x3c, 0x5a, 0x9c, 0xd1, 0x4a, 0x7c, 0x77, 0xfe, 0x3d, 0xfa, 0x36, 0x37, 0xb8, 0xb0, + 0x5c, 0x5f, 0xdc, 0x6b, 0x93, 0xd2, 0x41, 0x9b, 0x94, 0x0e, 0xdb, 0x04, 0xbd, 0xc9, 0x08, 0xfa, + 0x90, 0x11, 0xf4, 0x35, 0x23, 0x68, 0x2f, 0x23, 0xe8, 0x20, 0x23, 0xe8, 0x47, 0x46, 0xd0, 0xcf, + 0x8c, 0x94, 0x0e, 0x33, 0x82, 0xde, 0x75, 0x48, 0xe9, 0x73, 0x87, 0xa0, 0xbd, 0x0e, 0x29, 0x1d, + 0x74, 0x48, 0x69, 0xfd, 0x99, 0xc7, 0xe3, 0x4d, 0xcf, 0x4a, 0x79, 0xa0, 0x40, 0x08, 0x6a, 0x25, + 0xd2, 0xd6, 0x8b, 0x16, 0x17, 0xa1, 0x19, 0x0b, 0x9e, 0xfa, 0x2e, 0x08, 0xb3, 0x08, 0xdb, 0xb1, + 0xe3, 0x71, 0x1b, 0xb6, 0xd5, 0xf1, 0x64, 0xfa, 0xdb, 0x14, 0x74, 0x2a, 0x7a, 0x48, 0xdd, 0xff, + 0x1d, 0x00, 0x00, 0xff, 0xff, 0xb2, 0x9d, 0x63, 0x53, 0xad, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/address_allocator/public_crudapi.pb.go b/pbgo/extschema/schema/address_allocator/public_crudapi.pb.go index e8e18ce74..ea0e39b2d 100644 --- a/pbgo/extschema/schema/address_allocator/public_crudapi.pb.go +++ b/pbgo/extschema/schema/address_allocator/public_crudapi.pb.go @@ -930,101 +930,102 @@ func init() { } var fileDescriptor_31462926dd4d7918 = []byte{ - // 1496 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcb, 0x6f, 0x1b, 0xc5, - 0x1f, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xf0, 0x6f, 0x7e, 0x6d, 0xba, 0x31, 0xc5, 0x18, 0x17, - 0x55, 0x51, 0x1a, 0xef, 0xb6, 0x29, 0xa0, 0x36, 0xa2, 0xad, 0xf2, 0x70, 0xac, 0x94, 0xb4, 0x69, - 0xd7, 0x4e, 0x85, 0xb8, 0xac, 0xd6, 0xbb, 0x63, 0x67, 0x89, 0xed, 0x5d, 0x66, 0xc6, 0x4e, 0x23, - 0x14, 0x09, 0xf5, 0xc6, 0x0d, 0x09, 0x89, 0x03, 0x42, 0x82, 0x0b, 0x12, 0x57, 0x6e, 0x48, 0xb9, - 0xf4, 0xd6, 0xaa, 0x12, 0x28, 0x2a, 0x07, 0x22, 0x71, 0xa1, 0x0e, 0x87, 0x1e, 0xfb, 0x0f, 0x20, - 0xa1, 0x9d, 0xd9, 0x75, 0x6d, 0xc7, 0x10, 0x3b, 0xcd, 0xc9, 0x3b, 0xdf, 0xc7, 0x67, 0xbe, 0xef, - 0x99, 0x31, 0x7c, 0xb7, 0x81, 0xa9, 0x6c, 0xd9, 0x0a, 0x35, 0x36, 0x70, 0x55, 0x57, 0x74, 0xd3, - 0x24, 0x98, 0x52, 0x4d, 0xaf, 0x54, 0x6c, 0x43, 0x67, 0x36, 0x51, 0x9c, 0x7a, 0xb1, 0x62, 0x19, - 0x9a, 0x41, 0xea, 0xa6, 0xee, 0x58, 0xb2, 0x43, 0x6c, 0x66, 0xa3, 0xb7, 0x84, 0x96, 0x2c, 0xb4, - 0xe4, 0x43, 0x5a, 0x89, 0x4c, 0xd9, 0x62, 0x1b, 0xf5, 0xa2, 0x6c, 0xd8, 0x55, 0xa5, 0x6c, 0x97, - 0x6d, 0x85, 0xeb, 0x15, 0xeb, 0x25, 0xbe, 0xe2, 0x0b, 0xfe, 0x25, 0xf0, 0x12, 0xe7, 0xca, 0xb6, - 0x5d, 0xae, 0x60, 0x45, 0x77, 0x2c, 0x45, 0xaf, 0xd5, 0x6c, 0xa6, 0x33, 0xcb, 0xae, 0x51, 0x8f, - 0xfb, 0x86, 0xc7, 0x6d, 0x61, 0xe0, 0xaa, 0xc3, 0xb6, 0x3d, 0xe6, 0xcc, 0x51, 0x0e, 0xd8, 0xc5, - 0x4f, 0xb0, 0xc1, 0x3c, 0xe9, 0x8b, 0x47, 0x49, 0xb3, 0x6d, 0x07, 0xfb, 0xfb, 0x26, 0x3a, 0x85, - 0x31, 0x21, 0x36, 0x69, 0xd9, 0xd4, 0xc9, 0xb3, 0x9d, 0x76, 0x83, 0x27, 0x3b, 0x99, 0xed, 0x98, - 0xe9, 0x4e, 0x56, 0x03, 0x53, 0x5c, 0x6b, 0x74, 0xa9, 0xa7, 0xba, 0x64, 0x2c, 0xbc, 0xa5, 0x75, - 0x48, 0xa4, 0x7f, 0x02, 0x70, 0x74, 0x91, 0x60, 0x9d, 0x61, 0x15, 0x7f, 0x5a, 0xc7, 0x94, 0xa1, - 0x9b, 0x30, 0x52, 0xc5, 0x4c, 0x37, 0x75, 0xa6, 0x4b, 0x20, 0x05, 0xa6, 0x62, 0xb3, 0xe7, 0xe5, - 0xce, 0x24, 0xad, 0xf1, 0x38, 0x08, 0xad, 0xdb, 0x98, 0xe9, 0x85, 0x6d, 0x07, 0xab, 0x2d, 0x25, - 0x54, 0x80, 0x21, 0xea, 0x60, 0x43, 0x0a, 0x70, 0x65, 0x45, 0x3e, 0x22, 0xc3, 0xb2, 0x00, 0xca, - 0x3b, 0xd8, 0x70, 0x81, 0x16, 0xc6, 0xbf, 0xd9, 0x19, 0x71, 0xf5, 0xe5, 0xb2, 0xa1, 0xb9, 0xbf, - 0x2a, 0x47, 0x9b, 0x8b, 0x3e, 0xbd, 0x11, 0x16, 0x1b, 0xa7, 0xff, 0x06, 0x70, 0xcc, 0xb7, 0x99, - 0x3a, 0x76, 0x8d, 0x62, 0xf4, 0xc1, 0x21, 0xa3, 0x53, 0x3d, 0x8d, 0xce, 0x61, 0xd6, 0xc3, 0xe2, - 0x35, 0x38, 0x4e, 0xb7, 0x29, 0xc3, 0x55, 0xad, 0x05, 0x12, 0xe4, 0x20, 0x17, 0xba, 0x40, 0xf2, - 0x5c, 0xea, 0x30, 0xd4, 0x98, 0x50, 0xbf, 0xed, 0x03, 0xde, 0xeb, 0x08, 0xc1, 0xcc, 0x91, 0x21, - 0xc8, 0x61, 0x36, 0x80, 0xff, 0xdf, 0x01, 0x08, 0x73, 0x98, 0xf9, 0x09, 0x3b, 0x07, 0xa3, 0x35, - 0xbd, 0x8a, 0xa9, 0xa3, 0x1b, 0x98, 0x3b, 0x1f, 0x55, 0x5f, 0x11, 0x10, 0x82, 0x21, 0x77, 0xc1, - 0x4d, 0x89, 0xaa, 0xfc, 0x1b, 0x69, 0x70, 0x9c, 0x78, 0x91, 0xd3, 0x4a, 0x36, 0xa9, 0xea, 0x8c, - 0xfb, 0x3b, 0x36, 0xfb, 0x7e, 0x3f, 0x96, 0xfa, 0x41, 0x5f, 0xe6, 0x9a, 0x8b, 0xb6, 0x89, 0xd5, - 0x31, 0xd2, 0x41, 0x4b, 0xff, 0x32, 0x0c, 0x63, 0x6d, 0x92, 0x68, 0x0d, 0xc6, 0x0c, 0x9e, 0x30, - 0xbe, 0x9d, 0x17, 0x16, 0xb9, 0xcf, 0xca, 0xf0, 0xfc, 0x54, 0xa1, 0x80, 0x70, 0xb7, 0x40, 0x0a, - 0x8c, 0x13, 0x4c, 0xed, 0x3a, 0x31, 0xb0, 0xd6, 0xc0, 0x84, 0x5a, 0x76, 0x4d, 0x0a, 0xb9, 0x1e, - 0x2e, 0x84, 0x5e, 0xec, 0x02, 0xa0, 0x8e, 0xfb, 0xdc, 0xfb, 0x82, 0xd9, 0x51, 0x20, 0xc3, 0x27, - 0x51, 0x20, 0xa7, 0x4e, 0xa4, 0x40, 0xc2, 0x27, 0x56, 0x20, 0x68, 0x15, 0x86, 0x29, 0xd3, 0x59, - 0x9d, 0x4a, 0xdf, 0x7f, 0x0b, 0x52, 0xc1, 0xa9, 0xd8, 0x6c, 0xe6, 0x48, 0xd8, 0x3c, 0x57, 0x10, - 0xe6, 0x2e, 0x04, 0x1f, 0xed, 0x00, 0xd5, 0xc3, 0x40, 0x2b, 0xf0, 0x7f, 0x04, 0x97, 0x30, 0x21, - 0x56, 0xad, 0xac, 0x89, 0xc1, 0x47, 0xa5, 0x08, 0x87, 0x3d, 0xd7, 0x33, 0x70, 0x2a, 0x2e, 0x71, - 0x4f, 0xe3, 0x2d, 0x35, 0x41, 0xa7, 0xe8, 0x3e, 0x94, 0x4c, 0x5c, 0xc1, 0x0c, 0x9b, 0x9a, 0xe0, - 0x61, 0xb3, 0x85, 0x18, 0xed, 0x03, 0x71, 0xc2, 0xd3, 0x56, 0x3d, 0x65, 0x1f, 0xf7, 0x23, 0x38, - 0x69, 0x5a, 0x54, 0x2f, 0x56, 0x7a, 0x01, 0xc3, 0x3e, 0x80, 0xcf, 0xfa, 0xea, 0x5d, 0xc8, 0x6d, - 0xbd, 0x76, 0x2b, 0x14, 0x01, 0xf1, 0x40, 0xfa, 0x07, 0x00, 0x63, 0xab, 0x16, 0xed, 0xb3, 0xe5, - 0xde, 0x86, 0x23, 0x15, 0xbd, 0x88, 0x2b, 0x5a, 0xc9, 0xaa, 0x30, 0x4c, 0xbc, 0xd6, 0x8b, 0x71, - 0xda, 0x32, 0x27, 0xa1, 0xf3, 0x70, 0x94, 0x60, 0xc7, 0x26, 0x4c, 0x2b, 0x59, 0xb8, 0x62, 0x52, - 0x29, 0x98, 0x0a, 0x4e, 0x45, 0xd5, 0x11, 0x41, 0x5c, 0xe6, 0x34, 0x74, 0x09, 0x9e, 0xf6, 0x84, - 0x44, 0x52, 0x7c, 0xd9, 0x10, 0x97, 0x45, 0x82, 0x27, 0x52, 0x28, 0x34, 0xd2, 0x7b, 0x61, 0x18, - 0x17, 0x76, 0x8a, 0xc6, 0x5b, 0x61, 0xb8, 0x8a, 0x26, 0x60, 0x98, 0xe1, 0x9a, 0x5e, 0x63, 0xbc, - 0xda, 0xa2, 0xaa, 0xb7, 0x3a, 0xc6, 0xdc, 0x88, 0xc3, 0x60, 0xdd, 0x32, 0xf9, 0xac, 0x88, 0xaa, - 0xee, 0x27, 0x4a, 0xc1, 0x98, 0x89, 0xa9, 0x41, 0x2c, 0x7e, 0xa8, 0x48, 0x31, 0xe1, 0x69, 0x1b, - 0x09, 0x25, 0x60, 0xc4, 0x0f, 0xb3, 0x34, 0x92, 0x02, 0x53, 0x11, 0xb5, 0xb5, 0x46, 0xeb, 0x30, - 0xcc, 0x83, 0x22, 0x5c, 0x8a, 0xcd, 0x5e, 0x3f, 0xb2, 0x60, 0xbb, 0x9d, 0x93, 0x57, 0xb9, 0x7e, - 0xb6, 0xc6, 0xc8, 0xb6, 0xea, 0x81, 0x21, 0x13, 0xc6, 0xda, 0x8e, 0x7e, 0xaf, 0x14, 0x16, 0x06, - 0xc7, 0x9e, 0x7f, 0x05, 0x22, 0x36, 0x68, 0x87, 0x45, 0xd7, 0x20, 0xb4, 0xb7, 0x6a, 0x98, 0x68, - 0xee, 0xa9, 0x2a, 0x45, 0x79, 0x23, 0x27, 0xba, 0x36, 0xb9, 0x6f, 0xe1, 0x2d, 0xbf, 0xda, 0xa2, - 0x5c, 0xda, 0xa5, 0x74, 0x0c, 0xa3, 0xd1, 0x93, 0x18, 0x46, 0x63, 0xaf, 0x35, 0x8c, 0x72, 0x30, - 0x52, 0xc6, 0x8c, 0xcf, 0x12, 0x6f, 0xac, 0x0d, 0x34, 0x90, 0xd4, 0x53, 0x65, 0xb1, 0x40, 0xf7, - 0x20, 0xf4, 0x2a, 0x95, 0x62, 0xe6, 0x4d, 0x8b, 0xe3, 0x0c, 0xa1, 0xa8, 0x40, 0xc9, 0x63, 0x96, - 0xb8, 0x06, 0x63, 0x6d, 0x29, 0x76, 0x2b, 0x70, 0x13, 0x6f, 0x7b, 0xd5, 0xea, 0x7e, 0xa2, 0xd3, - 0x70, 0xb8, 0xa1, 0x57, 0xea, 0x7e, 0xa1, 0x8a, 0xc5, 0x5c, 0xe0, 0x2a, 0x48, 0xdc, 0x80, 0xf1, - 0xee, 0x0c, 0x0e, 0xa2, 0x7f, 0x2b, 0x14, 0x19, 0x8e, 0x87, 0xd3, 0x5f, 0x00, 0x38, 0xd2, 0x5e, - 0x19, 0x28, 0x07, 0x87, 0x2d, 0x86, 0xab, 0x54, 0x12, 0x43, 0xf6, 0xf2, 0xc0, 0x75, 0xa5, 0x0a, - 0x7d, 0x74, 0x09, 0x86, 0xc5, 0x45, 0x50, 0x0a, 0x70, 0x24, 0xa9, 0x0b, 0x29, 0xeb, 0x32, 0x79, - 0x80, 0x3d, 0xb9, 0xf4, 0x26, 0x1c, 0x5d, 0xe2, 0xb3, 0xf0, 0xf8, 0x47, 0xff, 0x14, 0x8c, 0x97, - 0x74, 0xab, 0xa2, 0x59, 0xa5, 0xd6, 0xcc, 0xe4, 0xfd, 0x1c, 0x51, 0xc7, 0x5c, 0xfa, 0x4a, 0xc9, - 0x9f, 0x85, 0xd3, 0xcf, 0x00, 0x3c, 0xd3, 0xf3, 0xb4, 0x47, 0x09, 0x38, 0x91, 0xcb, 0x16, 0x34, - 0x35, 0x7f, 0x57, 0x5b, 0x5e, 0x53, 0x6f, 0xcf, 0x17, 0xb4, 0xa5, 0xec, 0xf2, 0xfc, 0xfa, 0x6a, - 0x21, 0x3e, 0x84, 0xde, 0x84, 0x93, 0x5d, 0xbc, 0xe5, 0x35, 0x55, 0x5b, 0x54, 0xb3, 0xf3, 0x85, - 0x6c, 0x1c, 0xa0, 0x49, 0x78, 0xa6, 0x8b, 0x9d, 0x2f, 0xcc, 0x17, 0xd6, 0xf3, 0xf1, 0x20, 0x3a, - 0x0b, 0xff, 0xdf, 0xc5, 0x52, 0xb3, 0xf3, 0x4b, 0xf1, 0x10, 0x7a, 0x07, 0xa6, 0x0e, 0x31, 0x96, - 0xb3, 0xaa, 0xba, 0x72, 0x27, 0xa7, 0xad, 0x2d, 0xdc, 0xca, 0x2e, 0x16, 0xf2, 0xf1, 0xe1, 0x1e, - 0x52, 0x0b, 0xea, 0xda, 0x87, 0xd9, 0x3b, 0x42, 0x38, 0x7b, 0x67, 0x31, 0x9b, 0x8f, 0x87, 0x67, - 0xf7, 0x4f, 0xc1, 0xe0, 0xfc, 0xdd, 0x15, 0x74, 0x00, 0x60, 0x58, 0xdc, 0x2e, 0xd0, 0x80, 0xd7, - 0x90, 0x84, 0xd2, 0xb7, 0xbc, 0x08, 0x5c, 0xfa, 0x41, 0xf3, 0xb1, 0xa4, 0x94, 0xde, 0x7b, 0x60, - 0x64, 0x28, 0x36, 0xea, 0x04, 0x57, 0x31, 0xdd, 0xc8, 0x14, 0x75, 0x6a, 0x19, 0x99, 0x3a, 0xc5, - 0xc4, 0x7d, 0x76, 0x64, 0x2c, 0x3b, 0x53, 0xc3, 0x6c, 0xcb, 0x26, 0x9b, 0x99, 0x2d, 0x62, 0x31, - 0xfc, 0xf0, 0xb7, 0xbf, 0xbe, 0x0a, 0xdc, 0x4c, 0xcf, 0x79, 0x8f, 0x26, 0xa5, 0x95, 0x54, 0xaa, - 0x7c, 0xe6, 0x77, 0xbd, 0xdc, 0x22, 0xee, 0x1c, 0x7e, 0x7e, 0xd0, 0x39, 0x30, 0x8d, 0xfe, 0x00, - 0x30, 0x98, 0xc3, 0x0c, 0x5d, 0xec, 0xef, 0x5a, 0x27, 0xfc, 0x9b, 0x19, 0xe4, 0x0e, 0x98, 0xde, - 0x7e, 0xf2, 0x73, 0x00, 0x34, 0x1f, 0x4b, 0x97, 0x7b, 0x3b, 0x58, 0xb5, 0x6b, 0x16, 0xb3, 0x0f, - 0xf9, 0x48, 0xb0, 0x6e, 0x72, 0x17, 0xe7, 0xd0, 0xd5, 0x5e, 0x2e, 0xfe, 0xa7, 0x67, 0x82, 0xbd, - 0x83, 0x7e, 0x07, 0x30, 0xe4, 0xf6, 0x16, 0x9a, 0xe9, 0xb3, 0x05, 0x85, 0x7f, 0x99, 0x81, 0x1a, - 0x36, 0x4d, 0x5e, 0xcf, 0xc1, 0x2b, 0xe8, 0xf2, 0xc0, 0x0e, 0xa2, 0x27, 0x00, 0x86, 0x45, 0xa3, - 0xf7, 0x51, 0x9d, 0x1d, 0x13, 0x21, 0x31, 0x21, 0x8b, 0x27, 0xae, 0xec, 0x3f, 0x71, 0xe5, 0xac, - 0xfb, 0xc4, 0x4d, 0x37, 0x8e, 0x5b, 0x84, 0xd7, 0xa7, 0x8f, 0x9d, 0xa1, 0x39, 0x30, 0x9d, 0xd8, - 0x78, 0xb4, 0x0b, 0x02, 0xcf, 0x76, 0xc1, 0x85, 0xa3, 0xdc, 0x10, 0xf3, 0x7f, 0x7f, 0x17, 0x80, - 0xe6, 0x2e, 0x98, 0x19, 0xe4, 0xcc, 0x78, 0xf8, 0xab, 0x14, 0x88, 0x83, 0x85, 0xaf, 0xc1, 0xd3, - 0x1b, 0xa1, 0xc5, 0x55, 0x75, 0x69, 0xef, 0x79, 0x72, 0x68, 0xff, 0x79, 0x72, 0xe8, 0xe5, 0xf3, - 0x24, 0xf8, 0xbc, 0x99, 0x04, 0x3f, 0x36, 0x93, 0xe0, 0x49, 0x33, 0x09, 0xf6, 0x9a, 0x49, 0xf0, - 0x67, 0x33, 0x09, 0x5e, 0x34, 0x93, 0x43, 0x2f, 0x9b, 0x49, 0xf0, 0xe5, 0x41, 0x72, 0xe8, 0xd1, - 0x41, 0x12, 0xec, 0x1d, 0x24, 0x87, 0xf6, 0x0f, 0x92, 0x43, 0x1f, 0xaf, 0x97, 0x6d, 0x67, 0xb3, - 0x2c, 0x37, 0x6c, 0xf7, 0x8a, 0x46, 0x74, 0xb9, 0x4e, 0x15, 0xfe, 0xe1, 0xbe, 0x59, 0x32, 0x0e, - 0xb1, 0x1b, 0x96, 0x89, 0x49, 0xc6, 0x67, 0x2b, 0x4e, 0xb1, 0x6c, 0x2b, 0xf8, 0x01, 0xf3, 0x1e, - 0xd7, 0xff, 0xf6, 0x47, 0x40, 0x31, 0xcc, 0x53, 0x71, 0xe5, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x2f, 0x29, 0xb8, 0xe0, 0x21, 0x11, 0x00, 0x00, + // 1517 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x1b, 0x4d, + 0x15, 0xcf, 0xd8, 0x8e, 0x3f, 0x7b, 0x9c, 0x3f, 0x66, 0xf8, 0xbe, 0x7c, 0x8e, 0x29, 0xc6, 0xb8, + 0xa8, 0x8a, 0xd2, 0x78, 0xdd, 0xa6, 0x80, 0xda, 0x88, 0xb6, 0xca, 0x1f, 0xc7, 0x4a, 0x49, 0x9a, + 0x76, 0xed, 0x54, 0x88, 0xcb, 0x6a, 0xbd, 0xfb, 0xec, 0x2c, 0xb1, 0xbd, 0xcb, 0xcc, 0xd8, 0x69, + 0x84, 0x22, 0xa1, 0xde, 0xb8, 0x21, 0x15, 0xf5, 0x50, 0x21, 0xc1, 0x05, 0x89, 0x2b, 0x37, 0xa4, + 0x5c, 0x7a, 0xa3, 0xaa, 0x04, 0x8a, 0xca, 0xa5, 0xe2, 0x44, 0x1d, 0x24, 0x7a, 0xec, 0x95, 0x43, + 0x25, 0xb4, 0x33, 0xbb, 0xae, 0xed, 0x98, 0xc6, 0x0e, 0xe9, 0xc9, 0x3b, 0xef, 0xbd, 0xdf, 0x6f, + 0xe6, 0xfd, 0x99, 0x37, 0x33, 0xc6, 0xdf, 0x6f, 0x01, 0x53, 0x2c, 0x3b, 0xc7, 0x8c, 0x5d, 0xa8, + 0xeb, 0x39, 0xdd, 0x34, 0x29, 0x30, 0xa6, 0xe9, 0xb5, 0x9a, 0x6d, 0xe8, 0xdc, 0xa6, 0x39, 0xa7, + 0x59, 0xae, 0x59, 0x86, 0x66, 0xd0, 0xa6, 0xa9, 0x3b, 0x96, 0xe2, 0x50, 0x9b, 0xdb, 0xe4, 0x3b, + 0x12, 0xa5, 0x48, 0x94, 0x72, 0x0a, 0x95, 0xcc, 0x56, 0x2d, 0xbe, 0xdb, 0x2c, 0x2b, 0x86, 0x5d, + 0xcf, 0x55, 0xed, 0xaa, 0x9d, 0x13, 0xb8, 0x72, 0xb3, 0x22, 0x46, 0x62, 0x20, 0xbe, 0x24, 0x5f, + 0xf2, 0x52, 0xd5, 0xb6, 0xab, 0x35, 0xc8, 0xe9, 0x8e, 0x95, 0xd3, 0x1b, 0x0d, 0x9b, 0xeb, 0xdc, + 0xb2, 0x1b, 0xcc, 0xd3, 0x7e, 0xcb, 0xd3, 0x76, 0x38, 0xa0, 0xee, 0xf0, 0x03, 0x4f, 0xb9, 0x70, + 0x96, 0x03, 0x76, 0xf9, 0x67, 0x60, 0x70, 0xcf, 0xfa, 0xea, 0x59, 0xd6, 0xfc, 0xc0, 0x01, 0x7f, + 0xde, 0x64, 0xaf, 0x31, 0x50, 0x6a, 0xd3, 0xce, 0x9a, 0x7a, 0x75, 0xb6, 0xd3, 0xbd, 0xe0, 0xd9, + 0x5e, 0x65, 0x37, 0x67, 0xa6, 0x57, 0xd5, 0x02, 0x06, 0x8d, 0x56, 0x1f, 0x3c, 0xdd, 0x67, 0x63, + 0xc1, 0xbe, 0xd6, 0x63, 0x91, 0xf9, 0x13, 0xc2, 0x93, 0xab, 0x14, 0x74, 0x0e, 0x2a, 0xfc, 0xbc, + 0x09, 0x8c, 0x93, 0xbb, 0x38, 0x52, 0x07, 0xae, 0x9b, 0x3a, 0xd7, 0x13, 0x28, 0x8d, 0xe6, 0x62, + 0x8b, 0x97, 0x95, 0xde, 0x24, 0x6d, 0x8b, 0x38, 0x48, 0xd4, 0x16, 0x70, 0xbd, 0x74, 0xe0, 0x80, + 0xda, 0x01, 0x91, 0x12, 0x0e, 0x31, 0x07, 0x8c, 0x44, 0x40, 0x80, 0x73, 0xca, 0x19, 0x19, 0x56, + 0x24, 0x51, 0xd1, 0x01, 0xc3, 0x25, 0x5a, 0x99, 0x7e, 0x7e, 0x38, 0xe1, 0xe2, 0x95, 0xaa, 0xa1, + 0xb9, 0xbf, 0xaa, 0x60, 0x5b, 0x8a, 0xbe, 0xba, 0x13, 0x96, 0x13, 0x67, 0x3e, 0x20, 0x3c, 0xe5, + 0xaf, 0x99, 0x39, 0x76, 0x83, 0x01, 0xf9, 0xd1, 0xa9, 0x45, 0xa7, 0x07, 0x2e, 0xba, 0x00, 0x7c, + 0xc0, 0x8a, 0xb7, 0xf1, 0x34, 0x3b, 0x60, 0x1c, 0xea, 0x5a, 0x87, 0x24, 0x28, 0x48, 0xae, 0xf4, + 0x91, 0x14, 0x85, 0xd5, 0x69, 0xaa, 0x29, 0x09, 0xdf, 0xf2, 0x09, 0x1f, 0xf6, 0x84, 0x60, 0xe1, + 0xcc, 0x10, 0x14, 0x80, 0x8f, 0xe0, 0xff, 0xef, 0x10, 0xc6, 0x05, 0xe0, 0x7e, 0xc2, 0x2e, 0xe1, + 0x68, 0x43, 0xaf, 0x03, 0x73, 0x74, 0x03, 0x84, 0xf3, 0x51, 0xf5, 0xa3, 0x80, 0x10, 0x1c, 0x72, + 0x07, 0x62, 0x29, 0x51, 0x55, 0x7c, 0x13, 0x0d, 0x4f, 0x53, 0x2f, 0x72, 0x5a, 0xc5, 0xa6, 0x75, + 0x9d, 0x0b, 0x7f, 0xa7, 0x16, 0x7f, 0x38, 0xcc, 0x4a, 0xfd, 0xa0, 0xaf, 0x0b, 0xe4, 0xaa, 0x6d, + 0x82, 0x3a, 0x45, 0x7b, 0x64, 0x99, 0xbf, 0x8e, 0xe3, 0x58, 0x97, 0x25, 0xd9, 0xc6, 0x31, 0x43, + 0x24, 0x4c, 0x4c, 0xe7, 0x85, 0x45, 0x19, 0xb2, 0x32, 0x3c, 0x3f, 0x55, 0x2c, 0x29, 0xdc, 0x29, + 0x48, 0x0e, 0xc7, 0x29, 0x30, 0xbb, 0x49, 0x0d, 0xd0, 0x5a, 0x40, 0x99, 0x65, 0x37, 0x12, 0x21, + 0xd7, 0xc3, 0x95, 0xd0, 0xbb, 0x23, 0x84, 0xd4, 0x69, 0x5f, 0xfb, 0x48, 0x2a, 0x7b, 0x0a, 0x64, + 0xfc, 0x22, 0x0a, 0xe4, 0x8b, 0x0b, 0x29, 0x90, 0xf0, 0x85, 0x15, 0x08, 0xd9, 0xc4, 0x61, 0xc6, + 0x75, 0xde, 0x64, 0x89, 0xdf, 0xff, 0x16, 0xa5, 0x83, 0x73, 0xb1, 0xc5, 0xec, 0x99, 0xb4, 0x45, + 0x01, 0x90, 0xcb, 0x5d, 0x09, 0xbe, 0x38, 0x44, 0xaa, 0xc7, 0x41, 0x36, 0xf0, 0x37, 0x28, 0x54, + 0x80, 0x52, 0xab, 0x51, 0xd5, 0x64, 0xe3, 0x63, 0x89, 0x88, 0xa0, 0xbd, 0x34, 0x30, 0x70, 0x2a, + 0x54, 0x84, 0xa7, 0xf1, 0x0e, 0x4c, 0xca, 0x19, 0x79, 0x84, 0x13, 0x26, 0xd4, 0x80, 0x83, 0xa9, + 0x49, 0x1d, 0x98, 0x1d, 0xc6, 0xe8, 0x10, 0x8c, 0x33, 0x1e, 0x5a, 0xf5, 0xc0, 0x3e, 0xef, 0x4f, + 0xf0, 0xac, 0x69, 0x31, 0xbd, 0x5c, 0x1b, 0x44, 0x8c, 0x87, 0x20, 0xfe, 0xda, 0x87, 0xf7, 0x31, + 0x77, 0xed, 0xb5, 0x7b, 0xa1, 0x08, 0x8a, 0x07, 0x32, 0x7f, 0x40, 0x38, 0xb6, 0x69, 0xb1, 0x21, + 0xb7, 0xdc, 0x77, 0xf1, 0x44, 0x4d, 0x2f, 0x43, 0x4d, 0xab, 0x58, 0x35, 0x0e, 0xd4, 0xdb, 0x7a, + 0x31, 0x21, 0x5b, 0x17, 0x22, 0x72, 0x19, 0x4f, 0x52, 0x70, 0x6c, 0xca, 0xb5, 0x8a, 0x05, 0x35, + 0x93, 0x25, 0x82, 0xe9, 0xe0, 0x5c, 0x54, 0x9d, 0x90, 0xc2, 0x75, 0x21, 0x23, 0xd7, 0xf0, 0x97, + 0x9e, 0x91, 0x4c, 0x8a, 0x6f, 0x1b, 0x12, 0xb6, 0x44, 0xea, 0x64, 0x0a, 0x25, 0x22, 0x73, 0x1c, + 0xc6, 0x71, 0xb9, 0x4e, 0xb9, 0xf1, 0x36, 0x38, 0xd4, 0xc9, 0x0c, 0x0e, 0x73, 0x68, 0xe8, 0x0d, + 0x2e, 0xaa, 0x2d, 0xaa, 0x7a, 0xa3, 0x73, 0xf4, 0x8d, 0x38, 0x0e, 0x36, 0x2d, 0x53, 0xf4, 0x8a, + 0xa8, 0xea, 0x7e, 0x92, 0x34, 0x8e, 0x99, 0xc0, 0x0c, 0x6a, 0x89, 0x43, 0x25, 0x11, 0x93, 0x9e, + 0x76, 0x89, 0x48, 0x12, 0x47, 0xfc, 0x30, 0x27, 0x26, 0xd2, 0x68, 0x2e, 0xa2, 0x76, 0xc6, 0x64, + 0x07, 0x87, 0x45, 0x50, 0xa4, 0x4b, 0xb1, 0xc5, 0xdb, 0x67, 0x16, 0x6c, 0xbf, 0x73, 0xca, 0xa6, + 0xc0, 0xe7, 0x1b, 0x9c, 0x1e, 0xa8, 0x1e, 0x19, 0x31, 0x71, 0xac, 0xeb, 0xe8, 0xf7, 0x4a, 0x61, + 0x65, 0x74, 0xee, 0xe5, 0x8f, 0x24, 0x72, 0x82, 0x6e, 0x5a, 0x72, 0x0b, 0x63, 0x7b, 0xbf, 0x01, + 0x54, 0x73, 0x4f, 0xd5, 0x44, 0x54, 0x6c, 0xe4, 0x64, 0xdf, 0x24, 0x8f, 0x2c, 0xd8, 0xf7, 0xab, + 0x2d, 0x2a, 0xac, 0x5d, 0x49, 0x4f, 0x33, 0x9a, 0xbc, 0x88, 0x66, 0x34, 0xf5, 0x7f, 0x35, 0xa3, + 0x02, 0x8e, 0x54, 0x81, 0x8b, 0x5e, 0xe2, 0xb5, 0xb5, 0x91, 0x1a, 0x92, 0xfa, 0x45, 0x55, 0x0e, + 0xc8, 0x43, 0x8c, 0xbd, 0x4a, 0x65, 0xc0, 0xbd, 0x6e, 0x71, 0x9e, 0x26, 0x14, 0x95, 0x2c, 0x45, + 0xe0, 0xc9, 0x5b, 0x38, 0xd6, 0x95, 0x62, 0xb7, 0x02, 0xf7, 0xe0, 0xc0, 0xab, 0x56, 0xf7, 0x93, + 0x7c, 0x89, 0xc7, 0x5b, 0x7a, 0xad, 0xe9, 0x17, 0xaa, 0x1c, 0x2c, 0x05, 0x6e, 0xa2, 0xe4, 0x1d, + 0x1c, 0xef, 0xcf, 0xe0, 0x28, 0xf8, 0x7b, 0xa1, 0xc8, 0x78, 0x3c, 0x9c, 0xf9, 0x15, 0xc2, 0x13, + 0xdd, 0x95, 0x41, 0x0a, 0x78, 0xdc, 0xe2, 0x50, 0x67, 0x09, 0xd9, 0x64, 0xaf, 0x8f, 0x5c, 0x57, + 0xaa, 0xc4, 0x93, 0x6b, 0x38, 0x2c, 0x2f, 0x82, 0x89, 0x80, 0x60, 0x4a, 0xf4, 0x31, 0xe5, 0x5d, + 0xa5, 0x08, 0xb0, 0x67, 0x97, 0xd9, 0xc3, 0x93, 0x6b, 0xa2, 0x17, 0x9e, 0xff, 0xe8, 0x9f, 0xc3, + 0xf1, 0x8a, 0x6e, 0xd5, 0x34, 0xab, 0xd2, 0xe9, 0x99, 0x62, 0x3f, 0x47, 0xd4, 0x29, 0x57, 0xbe, + 0x51, 0xf1, 0x7b, 0xe1, 0xfc, 0x6b, 0x84, 0xbf, 0x1a, 0x78, 0xda, 0x93, 0x24, 0x9e, 0x29, 0xe4, + 0x4b, 0x9a, 0x5a, 0x7c, 0xa0, 0xad, 0x6f, 0xab, 0x5b, 0xcb, 0x25, 0x6d, 0x2d, 0xbf, 0xbe, 0xbc, + 0xb3, 0x59, 0x8a, 0x8f, 0x91, 0x6f, 0xe3, 0xd9, 0x3e, 0xdd, 0xfa, 0xb6, 0xaa, 0xad, 0xaa, 0xf9, + 0xe5, 0x52, 0x3e, 0x8e, 0xc8, 0x2c, 0xfe, 0xaa, 0x4f, 0x5d, 0x2c, 0x2d, 0x97, 0x76, 0x8a, 0xf1, + 0x20, 0xf9, 0x1a, 0x7f, 0xb3, 0x4f, 0xa5, 0xe6, 0x97, 0xd7, 0xe2, 0x21, 0xf2, 0x3d, 0x9c, 0x3e, + 0xa5, 0x58, 0xcf, 0xab, 0xea, 0xc6, 0xfd, 0x82, 0xb6, 0xbd, 0x72, 0x2f, 0xbf, 0x5a, 0x2a, 0xc6, + 0xc7, 0x07, 0x58, 0xad, 0xa8, 0xdb, 0x3f, 0xce, 0xdf, 0x97, 0xc6, 0xf9, 0xfb, 0xab, 0xf9, 0x62, + 0x3c, 0xbc, 0xf8, 0x8f, 0x08, 0x0e, 0x2e, 0x3f, 0xd8, 0x20, 0x4f, 0x02, 0x38, 0x2c, 0x6f, 0x17, + 0x64, 0xc4, 0x6b, 0x48, 0x32, 0x37, 0xb4, 0xbd, 0x0c, 0x5c, 0xe6, 0x19, 0x6a, 0xff, 0x25, 0xb1, + 0x55, 0xf9, 0xc1, 0x63, 0x23, 0xcb, 0xc0, 0x68, 0x52, 0xa8, 0x03, 0xdb, 0xcd, 0x96, 0x75, 0x66, + 0x19, 0xd9, 0x26, 0x03, 0xba, 0xd0, 0xaf, 0x62, 0x5c, 0x6f, 0x98, 0x3a, 0x35, 0xa5, 0xb6, 0x05, + 0x2c, 0x6b, 0xd9, 0xd9, 0x06, 0xf0, 0x7d, 0x9b, 0xee, 0x65, 0xf7, 0xa9, 0xc5, 0xe1, 0xc9, 0xdf, + 0xff, 0xf5, 0x34, 0x70, 0x37, 0xb3, 0xe4, 0xbd, 0xa9, 0x72, 0x9d, 0x9c, 0xb3, 0xdc, 0x2f, 0xfc, + 0xa6, 0xa0, 0x74, 0x84, 0x87, 0xa7, 0x5f, 0x27, 0x6c, 0x09, 0xcd, 0x93, 0x0f, 0x08, 0x07, 0x0b, + 0xc0, 0xc9, 0xd5, 0xe1, 0x6e, 0x7d, 0xd2, 0xfd, 0x85, 0x51, 0xae, 0x88, 0x99, 0xe7, 0xe8, 0xe5, + 0x9f, 0x03, 0xae, 0xff, 0xea, 0x60, 0xff, 0xeb, 0x76, 0xc3, 0xe2, 0xf6, 0x27, 0x42, 0xe0, 0x1b, + 0xf4, 0x45, 0x81, 0x82, 0x6e, 0x8a, 0x20, 0x2c, 0x91, 0x9b, 0x83, 0x82, 0xf0, 0x49, 0xdf, 0xa5, + 0xfa, 0x90, 0xfc, 0x07, 0xe1, 0x90, 0xbb, 0x39, 0xc9, 0xc2, 0x90, 0x7b, 0x58, 0x46, 0x20, 0x3b, + 0xd2, 0x8e, 0xcf, 0x3c, 0xfd, 0xdc, 0x21, 0xb8, 0x41, 0xae, 0x8f, 0x1c, 0x02, 0xf2, 0x6f, 0x84, + 0xc3, 0xb2, 0x97, 0x0c, 0xb1, 0x01, 0x7a, 0x9a, 0x4e, 0x72, 0x46, 0x91, 0xaf, 0x68, 0xc5, 0x7f, + 0x45, 0x2b, 0x79, 0xf7, 0x15, 0x9d, 0xf9, 0xcd, 0x67, 0xaa, 0xf3, 0xdb, 0xf3, 0xe7, 0x4e, 0xf1, + 0x12, 0x9a, 0x4f, 0xee, 0xbe, 0x38, 0x42, 0x81, 0xd7, 0x47, 0xe8, 0xca, 0x59, 0x5e, 0xca, 0x13, + 0xe8, 0xcd, 0x11, 0x42, 0xed, 0x23, 0xb4, 0x30, 0xca, 0xa9, 0xf5, 0xe4, 0x6f, 0x89, 0x40, 0x1c, + 0xad, 0x3c, 0x43, 0xaf, 0xee, 0x84, 0x56, 0x37, 0xd5, 0xb5, 0xe3, 0xb7, 0xa9, 0xb1, 0x37, 0x6f, + 0x53, 0x63, 0xef, 0xdf, 0xa6, 0xd0, 0x2f, 0xdb, 0x29, 0xf4, 0xc7, 0x76, 0x0a, 0xbd, 0x6c, 0xa7, + 0xd0, 0x71, 0x3b, 0x85, 0xfe, 0xd9, 0x4e, 0xa1, 0x77, 0xed, 0xd4, 0xd8, 0xfb, 0x76, 0x0a, 0xfd, + 0xfa, 0x24, 0x35, 0xf6, 0xe2, 0x24, 0x85, 0x8e, 0x4f, 0x52, 0x63, 0x6f, 0x4e, 0x52, 0x63, 0x3f, + 0xdd, 0xa9, 0xda, 0xce, 0x5e, 0x55, 0x69, 0xd9, 0xee, 0x25, 0x91, 0xea, 0x4a, 0x93, 0xe5, 0xc4, + 0x87, 0xfb, 0x6a, 0xca, 0x3a, 0xd4, 0x6e, 0x59, 0x26, 0xd0, 0xac, 0xaf, 0xce, 0x39, 0xe5, 0xaa, + 0x9d, 0x83, 0xc7, 0xdc, 0x7b, 0xde, 0xff, 0xaf, 0xbf, 0x22, 0xca, 0x61, 0x91, 0xa9, 0x1b, 0xff, + 0x0d, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x01, 0x58, 0x52, 0xa3, 0x11, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/address_allocator/public_crudapi.vesapi.go b/pbgo/extschema/schema/address_allocator/public_crudapi.vesapi.go index 63bfead16..978cc8ee8 100644 --- a/pbgo/extschema/schema/address_allocator/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/address_allocator/public_crudapi.vesapi.go @@ -2478,10 +2478,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2538,10 +2542,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/advertise_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/advertise_policy/crudapi/api.vesapi.go index 93a8c2564..e35cc58f0 100644 --- a/pbgo/extschema/schema/advertise_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/advertise_policy/crudapi/api.vesapi.go @@ -3379,10 +3379,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3969,7 +3973,22 @@ var APISwaggerJSON string = `{ "description": "Reference to Root CA Certificate", "title": "Root CA Certificate", "x-displayname": "Root CA Certificate Reference", - "x-ves-proto-message": "ves.io.schema.TrustedCAList" + "x-ves-proto-message": "ves.io.schema.TrustedCAList", + "properties": { + "trusted_ca_list": { + "type": "array", + "description": " Reference to Root CA Certificate\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Root CA Certificate", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Root CA Certificate Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } }, "schemaVSiteRefType": { "type": "object", diff --git a/pbgo/extschema/schema/advertise_policy/object.pb.go b/pbgo/extschema/schema/advertise_policy/object.pb.go index 9827be1b6..ccc5cade3 100644 --- a/pbgo/extschema/schema/advertise_policy/object.pb.go +++ b/pbgo/extschema/schema/advertise_policy/object.pb.go @@ -246,47 +246,48 @@ func init() { } var fileDescriptor_a2f534adfba2e8c0 = []byte{ - // 629 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xbf, 0x4f, 0x14, 0x41, - 0x14, 0xc7, 0x6f, 0xee, 0xce, 0x03, 0x07, 0x82, 0x64, 0x6d, 0x4e, 0xd0, 0x09, 0x39, 0x1b, 0xa2, - 0xec, 0xae, 0x1e, 0x31, 0x0a, 0x21, 0x14, 0x60, 0x42, 0x73, 0xc4, 0xe4, 0xa0, 0xd1, 0xe6, 0x32, - 0x3b, 0xf7, 0x6e, 0x19, 0xdd, 0xbd, 0xd9, 0xcc, 0xcc, 0xae, 0x5c, 0x61, 0x62, 0x67, 0x6b, 0xfc, - 0x13, 0xac, 0x8c, 0xbd, 0xbd, 0x58, 0x18, 0x4b, 0x42, 0x45, 0x29, 0x7b, 0x8d, 0x25, 0xe1, 0x2f, - 0x30, 0xcc, 0xb2, 0xc8, 0x5d, 0x4e, 0x31, 0x74, 0xb3, 0x79, 0xdf, 0xcf, 0x77, 0xe7, 0xfd, 0x98, - 0x87, 0xef, 0x27, 0xa0, 0x1c, 0x2e, 0x5c, 0xc5, 0x76, 0x20, 0xa4, 0x2e, 0x6d, 0x27, 0x20, 0x35, - 0x57, 0xd0, 0x8a, 0x44, 0xc0, 0x59, 0xcf, 0x15, 0xde, 0x4b, 0x60, 0xda, 0x89, 0xa4, 0xd0, 0xc2, - 0x22, 0x99, 0xd8, 0xc9, 0xc4, 0xce, 0xb0, 0x78, 0xc6, 0xf6, 0xb9, 0xde, 0x89, 0x3d, 0x87, 0x89, - 0xd0, 0xf5, 0x85, 0x2f, 0x5c, 0x83, 0x79, 0x71, 0xc7, 0x7c, 0x99, 0x0f, 0x73, 0xca, 0xec, 0x66, - 0xee, 0x5d, 0xf2, 0x6f, 0xdd, 0x8b, 0x40, 0x9d, 0x69, 0x67, 0x07, 0xb5, 0x22, 0xd2, 0x5c, 0x74, - 0xf3, 0xe0, 0xad, 0xc1, 0xe0, 0x45, 0xae, 0x36, 0x18, 0x4a, 0x40, 0x41, 0x37, 0x19, 0xc4, 0x6b, - 0xef, 0xca, 0xb8, 0xf2, 0xcc, 0xe4, 0x69, 0x2d, 0xe1, 0xf1, 0x10, 0x34, 0x6d, 0x53, 0x4d, 0xab, - 0x68, 0x0e, 0xcd, 0x4f, 0xd4, 0xef, 0x38, 0x83, 0x49, 0x67, 0xc2, 0x4d, 0xd0, 0x74, 0xbb, 0x17, - 0x41, 0xf3, 0x5c, 0x6e, 0x35, 0xf0, 0x0d, 0xd5, 0x53, 0x1a, 0xc2, 0xd6, 0xb9, 0x43, 0xd1, 0x38, - 0xdc, 0x1d, 0x72, 0xd8, 0x32, 0xaa, 0x21, 0x9f, 0xa9, 0x8c, 0xdd, 0xcc, 0xdd, 0x56, 0x70, 0x59, - 0x45, 0xc0, 0xaa, 0x25, 0x63, 0x31, 0xef, 0xfc, 0xbb, 0xf2, 0xce, 0x56, 0x04, 0xcc, 0xf8, 0x18, - 0x6a, 0xf9, 0x4b, 0xf1, 0x64, 0xf5, 0xda, 0xc3, 0x85, 0xfa, 0xc2, 0xe2, 0xb7, 0xbd, 0x6a, 0x71, - 0x1a, 0x1d, 0xec, 0x55, 0x3f, 0x16, 0xf1, 0x63, 0x5c, 0xda, 0x00, 0x6d, 0x3d, 0xe8, 0x3c, 0xda, - 0x65, 0xb6, 0x02, 0x16, 0x4b, 0x08, 0x41, 0xed, 0xd8, 0x1e, 0x55, 0x9c, 0xd9, 0xa1, 0xe8, 0x72, - 0x2d, 0xe4, 0xc2, 0x5c, 0x02, 0xca, 0xe6, 0xc2, 0x8e, 0xa4, 0xd8, 0xed, 0xd9, 0x12, 0x68, 0x1b, - 0x2f, 0xe1, 0xb1, 0x26, 0x44, 0x01, 0x65, 0x60, 0x39, 0xa3, 0xe1, 0x58, 0xc1, 0x30, 0xf9, 0x5a, - 0x72, 0x0d, 0xf8, 0x09, 0xae, 0xac, 0x4b, 0xa0, 0xfa, 0x4a, 0xe4, 0x53, 0x08, 0xe0, 0x4a, 0x64, - 0xb9, 0xc1, 0xd5, 0x15, 0x12, 0xad, 0x3d, 0xc7, 0xe3, 0x79, 0x25, 0xad, 0x0d, 0x3c, 0xe6, 0xb3, - 0x96, 0x69, 0x42, 0xd6, 0x47, 0xe7, 0xb2, 0x26, 0x6c, 0x04, 0xc2, 0xa3, 0xc1, 0x79, 0x2b, 0x2a, - 0x3e, 0x3b, 0x3d, 0x2f, 0x97, 0x4f, 0x56, 0x51, 0xbd, 0xf6, 0xbd, 0x88, 0x27, 0xb7, 0x34, 0xd5, - 0xb1, 0xfa, 0xef, 0x51, 0xcb, 0xe4, 0x23, 0x46, 0xad, 0x89, 0x27, 0xb2, 0x77, 0xd9, 0x92, 0xd0, - 0x51, 0xd5, 0xe2, 0x5c, 0x69, 0x7e, 0xa2, 0x7e, 0x7b, 0xe4, 0xa0, 0x36, 0xa1, 0x73, 0x0a, 0xaf, - 0xdd, 0xfc, 0xfc, 0x66, 0x7a, 0xf8, 0xc2, 0x4d, 0x2c, 0x72, 0x8d, 0xb2, 0x56, 0x30, 0x66, 0xa2, - 0xdb, 0xe6, 0xe6, 0x61, 0x54, 0x4b, 0x23, 0x2d, 0xd7, 0x73, 0x81, 0xb9, 0xcf, 0x05, 0xbd, 0xd5, - 0xc0, 0xd7, 0x03, 0xae, 0x34, 0x74, 0x41, 0xaa, 0x6a, 0xd9, 0xc0, 0x97, 0x96, 0xab, 0x71, 0x06, - 0xac, 0x8b, 0x6e, 0x87, 0xfb, 0xcd, 0x3f, 0x06, 0xcb, 0xb3, 0x07, 0xab, 0xd3, 0x78, 0x0a, 0x4f, - 0xe6, 0x09, 0x3b, 0x31, 0x6f, 0xe7, 0x03, 0xbd, 0xf6, 0x01, 0xed, 0x1f, 0x91, 0xc2, 0xe1, 0x11, - 0x29, 0x1c, 0x1f, 0x11, 0xf4, 0x36, 0x25, 0xe8, 0x53, 0x4a, 0xd0, 0x8f, 0x94, 0xa0, 0xfd, 0x94, - 0xa0, 0xc3, 0x94, 0xa0, 0x9f, 0x29, 0x41, 0xbf, 0x52, 0x52, 0x38, 0x4e, 0x09, 0x7a, 0xdf, 0x27, - 0x85, 0xaf, 0x7d, 0x82, 0xf6, 0xfb, 0xa4, 0x70, 0xd8, 0x27, 0x85, 0x17, 0xdb, 0xbe, 0x88, 0x5e, - 0xf9, 0x4e, 0x22, 0x02, 0x0d, 0x52, 0x52, 0x27, 0x56, 0xae, 0x39, 0x74, 0x84, 0x0c, 0x4f, 0x47, - 0x21, 0xe1, 0x6d, 0x90, 0x76, 0x1e, 0x76, 0x23, 0xcf, 0x17, 0x2e, 0xec, 0xea, 0xb3, 0xfd, 0xf1, - 0x97, 0x55, 0xe5, 0x55, 0xcc, 0x26, 0x59, 0xfc, 0x1d, 0x00, 0x00, 0xff, 0xff, 0xa5, 0x20, 0x85, - 0x6e, 0x4f, 0x05, 0x00, 0x00, + // 646 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4e, 0x13, 0x41, + 0x18, 0xc7, 0x3b, 0x6d, 0x29, 0x38, 0x10, 0x24, 0xeb, 0xa5, 0x82, 0x4e, 0x48, 0xbd, 0x10, 0x65, + 0x77, 0x63, 0x89, 0x07, 0x09, 0xe1, 0x00, 0x26, 0x5c, 0x4a, 0x4c, 0x0a, 0x89, 0xc2, 0xa5, 0x99, + 0xee, 0x7e, 0x5d, 0x46, 0x77, 0x77, 0x36, 0x33, 0xb3, 0x2b, 0x3d, 0x98, 0xf8, 0x08, 0xc6, 0xa7, + 0x20, 0x3e, 0x85, 0x68, 0x62, 0x3c, 0x12, 0x0e, 0x86, 0xa3, 0x6c, 0x2f, 0x1e, 0x09, 0x4f, 0x60, + 0x98, 0x65, 0x81, 0x36, 0x15, 0x3c, 0xc8, 0x6d, 0x26, 0xff, 0xff, 0xff, 0xb7, 0x33, 0xb3, 0xdf, + 0xf7, 0xe1, 0x27, 0x09, 0x48, 0x8b, 0x71, 0x5b, 0x3a, 0x3b, 0x10, 0x50, 0x9b, 0xba, 0x09, 0x08, + 0xc5, 0x24, 0xb4, 0x22, 0xee, 0x33, 0xa7, 0x6b, 0xf3, 0xf6, 0x1b, 0x70, 0x94, 0x15, 0x09, 0xae, + 0xb8, 0x41, 0x32, 0xb3, 0x95, 0x99, 0xad, 0x41, 0xf3, 0xb4, 0xe9, 0x31, 0xb5, 0x13, 0xb7, 0x2d, + 0x87, 0x07, 0xb6, 0xc7, 0x3d, 0x6e, 0xeb, 0x58, 0x3b, 0xee, 0xe8, 0x9d, 0xde, 0xe8, 0x55, 0x86, + 0x9b, 0x7e, 0x7c, 0xc3, 0xb7, 0x55, 0x37, 0x02, 0x79, 0xee, 0x9d, 0xe9, 0xf7, 0xf2, 0x48, 0x31, + 0x1e, 0xe6, 0xe2, 0xfd, 0x7e, 0xf1, 0x6a, 0xae, 0xd6, 0x2f, 0x25, 0x20, 0x21, 0x4c, 0xfa, 0xe3, + 0xb5, 0xbd, 0x11, 0x5c, 0x79, 0xa9, 0xef, 0x69, 0x3c, 0xc7, 0x63, 0x01, 0x28, 0xea, 0x52, 0x45, + 0xab, 0x68, 0x16, 0xcd, 0x8d, 0xd7, 0x1f, 0x5a, 0xfd, 0x97, 0xce, 0x8c, 0xeb, 0xa0, 0xe8, 0x66, + 0x37, 0x82, 0xe6, 0x85, 0xdd, 0x68, 0xe0, 0xbb, 0xb2, 0x2b, 0x15, 0x04, 0xad, 0x0b, 0x42, 0x51, + 0x13, 0x1e, 0x0d, 0x10, 0x36, 0xb4, 0x6b, 0x80, 0x33, 0x99, 0x65, 0xd7, 0x73, 0xda, 0x12, 0x2e, + 0xcb, 0x08, 0x9c, 0x6a, 0x49, 0x23, 0xe6, 0xac, 0xeb, 0x5f, 0xde, 0xda, 0x88, 0xc0, 0xd1, 0x1c, + 0x9d, 0x5a, 0xfc, 0x59, 0x3a, 0x5d, 0x1e, 0x79, 0x3a, 0x5f, 0x9f, 0x5f, 0xf8, 0xba, 0x5f, 0x2d, + 0x4e, 0xa1, 0xc3, 0xfd, 0xea, 0xb7, 0x12, 0xde, 0xc2, 0xa5, 0x35, 0x50, 0x46, 0xb3, 0xf3, 0x6c, + 0xd7, 0x31, 0x25, 0x38, 0xb1, 0x80, 0x00, 0xe4, 0x8e, 0xd9, 0xa6, 0x92, 0x39, 0x66, 0xc0, 0x43, + 0xa6, 0xb8, 0x98, 0x9f, 0x1d, 0x94, 0xa5, 0xa2, 0xa1, 0x4b, 0x85, 0x7b, 0xe9, 0x48, 0x40, 0x9a, + 0x8c, 0x9b, 0x91, 0xe0, 0xbb, 0x5d, 0x53, 0x00, 0x75, 0xf1, 0x6b, 0x3c, 0xda, 0x84, 0xc8, 0xa7, + 0x0e, 0x18, 0xeb, 0xc3, 0xf1, 0xb1, 0x84, 0xeb, 0xd8, 0x99, 0xdc, 0x07, 0x7e, 0x27, 0x98, 0x02, + 0xfc, 0x0a, 0x57, 0x56, 0x05, 0x50, 0x75, 0x1b, 0xe0, 0x17, 0xe0, 0xc3, 0xff, 0x07, 0x6f, 0xe3, + 0x72, 0x83, 0xc9, 0x5b, 0x79, 0xe7, 0xda, 0x16, 0x1e, 0xcb, 0x7f, 0xb5, 0xb1, 0x86, 0x47, 0x3d, + 0xa7, 0xa5, 0xab, 0x24, 0x2b, 0x34, 0xeb, 0xa6, 0x2a, 0x59, 0xf3, 0x79, 0x9b, 0xfa, 0x17, 0xb5, + 0x52, 0xf1, 0x9c, 0xb3, 0xf5, 0x62, 0xf9, 0x74, 0x19, 0xd5, 0x6b, 0xdf, 0x8b, 0x78, 0x62, 0x43, + 0x51, 0x15, 0xcb, 0x7f, 0xee, 0x85, 0xcc, 0x3e, 0xa4, 0x17, 0x9a, 0x78, 0x3c, 0x1b, 0x1c, 0x2d, + 0x01, 0x1d, 0x59, 0x2d, 0xce, 0x96, 0xe6, 0xc6, 0xeb, 0x0f, 0x86, 0x76, 0x52, 0x13, 0x3a, 0x67, + 0xe1, 0x95, 0x7b, 0x9f, 0xdf, 0x4f, 0x0d, 0x1e, 0xb8, 0x89, 0x79, 0xee, 0x91, 0xc6, 0x12, 0xc6, + 0x0e, 0x0f, 0x5d, 0xa6, 0x3b, 0xb7, 0x5a, 0x1a, 0x8a, 0x5c, 0xcd, 0x0d, 0xfa, 0x3c, 0x57, 0xfc, + 0x46, 0x03, 0xdf, 0xf1, 0x99, 0x54, 0x10, 0x82, 0x90, 0xd5, 0xb2, 0x0e, 0xdf, 0xf8, 0x5c, 0x8d, + 0xf3, 0xc0, 0x2a, 0x0f, 0x3b, 0xcc, 0x6b, 0x5e, 0x02, 0x16, 0x67, 0x0e, 0x97, 0xa7, 0xf0, 0x24, + 0x9e, 0xc8, 0x2f, 0x6c, 0xc5, 0xcc, 0xcd, 0x3b, 0x6e, 0xe5, 0x13, 0x3a, 0x38, 0x26, 0x85, 0xa3, + 0x63, 0x52, 0x38, 0x39, 0x26, 0xe8, 0x43, 0x4a, 0xd0, 0x5e, 0x4a, 0xd0, 0x8f, 0x94, 0xa0, 0x83, + 0x94, 0xa0, 0xa3, 0x94, 0xa0, 0x5f, 0x29, 0x41, 0xbf, 0x53, 0x52, 0x38, 0x49, 0x09, 0xfa, 0xd8, + 0x23, 0x85, 0x2f, 0x3d, 0x82, 0x0e, 0x7a, 0xa4, 0x70, 0xd4, 0x23, 0x85, 0xed, 0x4d, 0x8f, 0x47, + 0x6f, 0x3d, 0x2b, 0xe1, 0xbe, 0x02, 0x21, 0xa8, 0x15, 0x4b, 0x5b, 0x2f, 0x3a, 0x5c, 0x04, 0x67, + 0xa5, 0x90, 0x30, 0x17, 0x84, 0x99, 0xcb, 0x76, 0xd4, 0xf6, 0xb8, 0x0d, 0xbb, 0xea, 0x7c, 0xc0, + 0xfd, 0x65, 0x96, 0xb6, 0x2b, 0x7a, 0xd4, 0x2d, 0xfc, 0x09, 0x00, 0x00, 0xff, 0xff, 0x21, 0x8c, + 0x45, 0x7b, 0xf0, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/advertise_policy/public_crudapi.pb.go b/pbgo/extschema/schema/advertise_policy/public_crudapi.pb.go index afd52aa37..209df9e5f 100644 --- a/pbgo/extschema/schema/advertise_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/advertise_policy/public_crudapi.pb.go @@ -1075,108 +1075,109 @@ func init() { } var fileDescriptor_f0cd7ccf6d56a2c5 = []byte{ - // 1611 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x68, 0x1b, 0xc7, - 0x1a, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x67, 0x33, 0x2f, 0x71, 0x64, 0xbd, 0xbc, 0x45, 0x4f, - 0xc9, 0x7b, 0x18, 0x3b, 0xda, 0x35, 0x0e, 0xe1, 0x3d, 0x9b, 0xe0, 0x56, 0xb6, 0x25, 0xe3, 0xc4, - 0xb1, 0xdd, 0x95, 0x12, 0x4a, 0x0f, 0x5d, 0x56, 0xab, 0x91, 0xb2, 0x8d, 0xa4, 0xdd, 0xee, 0x8c, - 0xe4, 0x88, 0x62, 0x28, 0x81, 0x42, 0x8f, 0x85, 0x42, 0x0f, 0xa5, 0x2d, 0xbd, 0x14, 0x7a, 0xec, - 0x31, 0xe0, 0x4b, 0x0e, 0x85, 0x84, 0x50, 0x4a, 0x48, 0xa1, 0xe4, 0x54, 0x1a, 0x39, 0x87, 0x1c, - 0x43, 0xce, 0x3d, 0x94, 0x9d, 0xd9, 0x55, 0x24, 0x59, 0x89, 0x24, 0xc7, 0x27, 0xed, 0xcc, 0xf7, - 0x7d, 0xbf, 0xf9, 0x7e, 0xf3, 0xfd, 0xd9, 0x4f, 0x0b, 0x2f, 0xd6, 0x31, 0x91, 0x0c, 0x53, 0x26, - 0xfa, 0x4d, 0x5c, 0xd1, 0x64, 0xad, 0x50, 0xc7, 0x36, 0x35, 0x08, 0x56, 0x2d, 0xb3, 0x6c, 0xe8, - 0x0d, 0xd9, 0xaa, 0xe5, 0xcb, 0x86, 0xae, 0xea, 0x76, 0xad, 0xa0, 0x59, 0x86, 0x64, 0xd9, 0x26, - 0x35, 0x91, 0xc8, 0x8d, 0x24, 0x6e, 0x24, 0x75, 0x1b, 0xc5, 0x92, 0x25, 0x83, 0xde, 0xac, 0xe5, - 0x25, 0xdd, 0xac, 0xc8, 0x25, 0xb3, 0x64, 0xca, 0xcc, 0x2c, 0x5f, 0x2b, 0xb2, 0x15, 0x5b, 0xb0, - 0x27, 0x0e, 0x17, 0x3b, 0x5b, 0x32, 0xcd, 0x52, 0x19, 0xcb, 0x9a, 0x65, 0xc8, 0x5a, 0xb5, 0x6a, - 0x52, 0x8d, 0x1a, 0x66, 0x95, 0xb8, 0xd2, 0x7f, 0xba, 0xd2, 0x16, 0x06, 0xae, 0x58, 0xb4, 0xe1, - 0x0a, 0xe7, 0xfa, 0xb8, 0x6f, 0xe6, 0x3f, 0xc2, 0x3a, 0x75, 0x95, 0x67, 0xfb, 0x28, 0xd3, 0x86, - 0x85, 0xbd, 0x53, 0x63, 0x9d, 0xba, 0xd8, 0xb6, 0x4d, 0xbb, 0xe5, 0x51, 0xa7, 0xcc, 0xb4, 0xda, - 0xdd, 0x9d, 0xee, 0x14, 0xb6, 0x63, 0x26, 0x3a, 0x45, 0x75, 0x4c, 0x70, 0xb5, 0xde, 0x65, 0x1e, - 0xef, 0xd2, 0x31, 0xf0, 0xae, 0xda, 0xa1, 0x91, 0xf8, 0x09, 0xc0, 0xf1, 0x55, 0x1b, 0x6b, 0x14, - 0x2b, 0xf8, 0xe3, 0x1a, 0x26, 0x14, 0xbd, 0x03, 0x43, 0x15, 0x4c, 0xb5, 0x82, 0x46, 0xb5, 0x28, - 0x88, 0x83, 0x99, 0xc8, 0xc2, 0x39, 0xa9, 0x33, 0x42, 0xdb, 0xec, 0x1a, 0xb8, 0xd5, 0x35, 0x4c, - 0xb5, 0x5c, 0xc3, 0xc2, 0x4a, 0xcb, 0x08, 0x65, 0x61, 0x80, 0x58, 0x58, 0x8f, 0xfa, 0x98, 0xb1, - 0x24, 0xbd, 0x39, 0xbc, 0x12, 0xc7, 0xc9, 0x5a, 0x58, 0x77, 0x70, 0x56, 0x26, 0xbf, 0xde, 0x1b, - 0x73, 0xcc, 0xa5, 0x92, 0xae, 0x3a, 0xbf, 0x0a, 0x03, 0x5b, 0x0a, 0x3f, 0x5c, 0x0e, 0xf2, 0x73, - 0x13, 0x7f, 0x01, 0x38, 0xe1, 0xb9, 0x4c, 0x2c, 0xb3, 0x4a, 0x30, 0xba, 0x7c, 0xc8, 0xe7, 0x78, - 0x4f, 0x9f, 0xd7, 0x31, 0xed, 0xe1, 0xf0, 0x36, 0x9c, 0x24, 0x0d, 0x42, 0x71, 0x45, 0x6d, 0x81, - 0xf8, 0x19, 0xc8, 0x7f, 0xbb, 0x40, 0xb2, 0x4c, 0xeb, 0x30, 0xd4, 0x04, 0x37, 0xbf, 0xe6, 0x01, - 0xee, 0x74, 0xdc, 0xc0, 0x5c, 0xbf, 0x1b, 0x58, 0xc7, 0x74, 0x08, 0xfa, 0xcf, 0x00, 0x9c, 0x50, - 0xb0, 0x55, 0xd6, 0xf4, 0x56, 0xc8, 0xde, 0x3d, 0x44, 0xff, 0x7c, 0x4f, 0xfa, 0xae, 0x59, 0x8f, - 0x2b, 0xc8, 0x75, 0x78, 0x2c, 0xf7, 0xf3, 0xd8, 0x05, 0xea, 0xe3, 0x35, 0x92, 0xa1, 0x60, 0x63, - 0x62, 0xd6, 0x6c, 0x1d, 0xab, 0x75, 0x6c, 0x13, 0xc3, 0xac, 0xb2, 0x9b, 0x0d, 0xaf, 0x04, 0x9e, - 0xef, 0x03, 0xa0, 0x4c, 0x7a, 0xd2, 0x1b, 0x5c, 0xd8, 0x4e, 0xf3, 0x24, 0x9c, 0x6c, 0xb1, 0xe4, - 0x51, 0x4e, 0x7c, 0x07, 0x20, 0x5c, 0xc7, 0xd4, 0x63, 0x7d, 0x16, 0x86, 0xab, 0x5a, 0x05, 0x13, - 0x4b, 0xd3, 0x31, 0xa3, 0x1d, 0x56, 0x5e, 0x6d, 0x20, 0x04, 0x03, 0xce, 0x82, 0x31, 0x0a, 0x2b, - 0xec, 0x19, 0x7d, 0x08, 0x9d, 0x13, 0x19, 0x98, 0x5a, 0x34, 0xed, 0x8a, 0x46, 0x99, 0x3b, 0x13, - 0x0b, 0x97, 0x06, 0x08, 0x91, 0xe7, 0x46, 0x86, 0x19, 0xae, 0x9a, 0x05, 0xac, 0x4c, 0xd8, 0x1d, - 0x7b, 0x89, 0x6f, 0x83, 0x30, 0xd2, 0xa6, 0x89, 0xb6, 0x60, 0x44, 0x67, 0x89, 0xca, 0x4e, 0x73, - 0x2f, 0x37, 0x39, 0x58, 0x41, 0xb8, 0x2c, 0x15, 0xc8, 0x11, 0x9c, 0x13, 0xd0, 0x7b, 0x70, 0xcc, - 0xe6, 0x77, 0xc2, 0x01, 0xfd, 0x83, 0x55, 0x58, 0x67, 0xb6, 0x28, 0x11, 0x17, 0x83, 0x41, 0xf6, - 0x0a, 0x51, 0xe0, 0x0d, 0x21, 0xea, 0x28, 0xb5, 0xd1, 0xe3, 0x28, 0xb5, 0x13, 0xc7, 0x52, 0x6a, - 0xc1, 0xe3, 0x2a, 0x35, 0x74, 0x15, 0x06, 0x09, 0xd5, 0x68, 0x8d, 0x44, 0xbf, 0xff, 0x06, 0xc4, - 0xfd, 0x33, 0x91, 0x85, 0x0b, 0xfd, 0x50, 0xb3, 0x4c, 0x9f, 0x3b, 0xbb, 0xe2, 0xbf, 0xb7, 0x07, - 0x14, 0x17, 0x02, 0x6d, 0xc0, 0x93, 0x36, 0x2e, 0x62, 0xdb, 0x36, 0xaa, 0x25, 0x95, 0xbf, 0x3e, - 0x48, 0x34, 0xc4, 0x50, 0xcf, 0xbe, 0xa6, 0x44, 0x8b, 0x8c, 0xa7, 0xd0, 0x32, 0xe3, 0xfb, 0x04, - 0xdd, 0x80, 0xd1, 0x02, 0x2e, 0x63, 0x8a, 0x0b, 0x2a, 0x97, 0xe1, 0x42, 0x0b, 0x31, 0x3c, 0x00, - 0xe2, 0x94, 0x6b, 0xad, 0xb8, 0xc6, 0x1e, 0xee, 0xfb, 0x70, 0xba, 0x60, 0x10, 0x2d, 0x5f, 0xee, - 0x05, 0x0c, 0x07, 0x00, 0x3e, 0xe3, 0x99, 0x77, 0x21, 0xb7, 0x55, 0xf3, 0x95, 0x40, 0x08, 0x08, - 0xbe, 0xc4, 0x0f, 0x00, 0x46, 0x36, 0x0d, 0x32, 0x60, 0x05, 0xff, 0x1b, 0x8e, 0x95, 0xb5, 0x3c, - 0x2e, 0xab, 0x45, 0xa3, 0x4c, 0xb1, 0xed, 0x56, 0x72, 0x84, 0xed, 0x65, 0xd8, 0x16, 0x3a, 0x07, - 0xc7, 0x6d, 0x6c, 0x99, 0x36, 0x55, 0x8b, 0x06, 0x2e, 0x17, 0x48, 0xd4, 0x1f, 0xf7, 0xcf, 0x84, - 0x95, 0x31, 0xbe, 0x99, 0x61, 0x7b, 0x68, 0x1e, 0x9e, 0x72, 0x95, 0x78, 0x50, 0x3c, 0xdd, 0x00, - 0xd3, 0x45, 0x5c, 0xc6, 0x43, 0xc8, 0x2d, 0x12, 0xbf, 0x04, 0xa1, 0xc0, 0xfd, 0xe4, 0x85, 0xbc, - 0x41, 0x71, 0x05, 0x4d, 0xc1, 0x20, 0xc5, 0x55, 0xad, 0x4a, 0x59, 0xae, 0x85, 0x15, 0x77, 0x75, - 0x84, 0x36, 0x24, 0x40, 0x7f, 0xcd, 0x28, 0xf0, 0x4e, 0xa8, 0x38, 0x8f, 0x28, 0x0e, 0x23, 0x05, - 0x4c, 0x74, 0xdb, 0x60, 0xef, 0xe6, 0x68, 0x84, 0x33, 0x6d, 0xdb, 0x42, 0x31, 0x18, 0xf2, 0xae, - 0x39, 0x3a, 0x16, 0x07, 0x33, 0x21, 0xa5, 0xb5, 0x46, 0x39, 0x18, 0x64, 0x97, 0xc2, 0x29, 0x45, - 0x16, 0x2e, 0xf7, 0xcb, 0xd7, 0x6e, 0x6e, 0xd2, 0x26, 0x33, 0x4f, 0x57, 0xa9, 0xdd, 0x50, 0x5c, - 0x2c, 0xa4, 0xc3, 0x48, 0xdb, 0xf8, 0xe4, 0x66, 0x42, 0x6a, 0x68, 0xe8, 0xd4, 0x2b, 0x0c, 0x8e, - 0xdf, 0x8e, 0x8a, 0x16, 0x21, 0x34, 0x77, 0xab, 0xd8, 0x56, 0x9d, 0xd1, 0x24, 0x1a, 0x66, 0x45, - 0x1c, 0xeb, 0x3a, 0xe3, 0x86, 0x81, 0x77, 0xbd, 0x5c, 0x0b, 0x33, 0x6d, 0x67, 0xa7, 0xa3, 0x11, - 0x8d, 0x1f, 0x47, 0x23, 0x9a, 0x78, 0xab, 0x46, 0x94, 0x81, 0xa1, 0x12, 0xa6, 0xac, 0x91, 0xb8, - 0x2d, 0x6d, 0x98, 0x66, 0xa4, 0x9c, 0x28, 0xf1, 0x05, 0xda, 0x81, 0xd0, 0x4d, 0x53, 0x82, 0xa9, - 0xdb, 0x2a, 0x8e, 0xd0, 0x80, 0xc2, 0x1c, 0x24, 0x8b, 0x69, 0x6c, 0x11, 0x46, 0xda, 0xe2, 0xeb, - 0x64, 0xdf, 0x2d, 0xdc, 0x70, 0x33, 0xd5, 0x79, 0x44, 0xa7, 0xe0, 0x68, 0x5d, 0x2b, 0xd7, 0xbc, - 0x24, 0xe5, 0x8b, 0x25, 0xdf, 0xff, 0x41, 0x6c, 0x19, 0x0a, 0xdd, 0xf1, 0x1b, 0xc6, 0xfe, 0x4a, - 0x20, 0x34, 0x2a, 0x04, 0x13, 0x9f, 0x03, 0x38, 0xd6, 0x9e, 0x17, 0x28, 0x03, 0x47, 0x0d, 0x8a, - 0x2b, 0x24, 0xca, 0xfb, 0xeb, 0xfc, 0xb0, 0x49, 0xa5, 0x70, 0x73, 0x34, 0x0f, 0x83, 0x7c, 0x94, - 0x8e, 0xfa, 0x18, 0x50, 0xb4, 0x0b, 0x28, 0xed, 0x08, 0xd9, 0xf5, 0xba, 0x7a, 0x89, 0x5b, 0x70, - 0x7c, 0x8d, 0xb5, 0xc1, 0xa3, 0x0f, 0x11, 0x33, 0x50, 0x28, 0x6a, 0x46, 0x59, 0x35, 0x8a, 0xad, - 0x76, 0xc9, 0x4a, 0x39, 0xa4, 0x4c, 0x38, 0xfb, 0x1b, 0x45, 0xaf, 0x0d, 0xce, 0xbe, 0x04, 0xf0, - 0x74, 0xcf, 0xc1, 0x01, 0xc5, 0xe0, 0xd4, 0x7a, 0x3a, 0xa7, 0x2a, 0xd9, 0x1d, 0x35, 0xb3, 0xad, - 0x5c, 0x4b, 0xe5, 0xd4, 0xb5, 0x74, 0x26, 0x75, 0x7d, 0x33, 0x27, 0x8c, 0xa0, 0x7f, 0xc1, 0xe9, - 0x2e, 0x59, 0x66, 0x5b, 0x51, 0x57, 0x95, 0x74, 0x2a, 0x97, 0x16, 0x00, 0x12, 0x61, 0xac, 0x87, - 0x58, 0x49, 0xef, 0x6c, 0xa6, 0x56, 0xd3, 0x82, 0x0f, 0x4d, 0xc3, 0xd3, 0x5d, 0xf2, 0x6c, 0x2e, - 0x95, 0xbb, 0x9e, 0x15, 0xfc, 0xe8, 0x0c, 0xfc, 0x47, 0x97, 0x48, 0x49, 0xa7, 0xd6, 0x84, 0x00, - 0x3a, 0x0f, 0xe3, 0x87, 0x04, 0x99, 0xb4, 0xa2, 0x6c, 0x6c, 0xad, 0xab, 0xdb, 0x2b, 0x57, 0xd2, - 0xab, 0xb9, 0xac, 0x30, 0xda, 0x43, 0x6b, 0x45, 0xd9, 0xbe, 0x9a, 0xde, 0xe2, 0xca, 0xe9, 0xad, - 0xd5, 0x74, 0x56, 0x08, 0x2e, 0xdc, 0x0d, 0x43, 0x7f, 0x6a, 0x67, 0x03, 0xfd, 0x01, 0x60, 0x90, - 0x4f, 0x32, 0x68, 0xb8, 0x89, 0x27, 0x26, 0x0d, 0xaa, 0xee, 0x8e, 0x85, 0xb5, 0xe6, 0xfd, 0x68, - 0xb2, 0x78, 0xe9, 0xb6, 0x9e, 0x24, 0x58, 0xaf, 0xd9, 0xb8, 0x82, 0xc9, 0xcd, 0x64, 0x5e, 0x23, - 0x86, 0x9e, 0xac, 0x11, 0x6c, 0x5f, 0xa8, 0x63, 0x92, 0x34, 0xcc, 0xa4, 0x65, 0x9b, 0xb7, 0x1b, - 0xc9, 0x5d, 0xdb, 0xa0, 0xf8, 0xce, 0x6f, 0xcf, 0xbe, 0xf4, 0x2d, 0x27, 0x16, 0xdd, 0xff, 0xa3, - 0x72, 0x2b, 0xe0, 0x44, 0xfe, 0xc4, 0x6b, 0x07, 0x52, 0x6b, 0x73, 0xef, 0xd0, 0x7f, 0x3b, 0xb2, - 0x04, 0x66, 0xd1, 0xef, 0x00, 0xfa, 0xd7, 0x31, 0x45, 0xb3, 0x03, 0xcd, 0x8e, 0x9c, 0xda, 0xdc, - 0x10, 0x73, 0x66, 0xa2, 0xfe, 0xe0, 0xae, 0x0f, 0x34, 0xef, 0x47, 0xe5, 0xde, 0xdc, 0x2a, 0x66, - 0xd5, 0xa0, 0x66, 0x17, 0x3d, 0x1b, 0x6b, 0x05, 0xc6, 0x6e, 0x11, 0xfd, 0xaf, 0x17, 0xbb, 0x37, - 0x91, 0xe2, 0xd2, 0x3d, 0xf4, 0x18, 0xc0, 0x80, 0x53, 0x71, 0x68, 0x6e, 0xb0, 0xba, 0xe4, 0xd4, - 0x2e, 0x0c, 0x53, 0xc4, 0x09, 0xf3, 0x6d, 0xb8, 0x2d, 0xa0, 0xf9, 0x61, 0xb9, 0xa1, 0x97, 0x00, - 0x9e, 0x70, 0xe7, 0x60, 0x34, 0xe4, 0xc0, 0x1c, 0x93, 0x07, 0xd6, 0x77, 0xd9, 0x7d, 0x06, 0x8e, - 0x96, 0x92, 0x5b, 0xb1, 0x8d, 0x23, 0xa7, 0x64, 0x97, 0xda, 0x9e, 0x93, 0xa2, 0x3f, 0x03, 0x18, - 0xe4, 0xed, 0xae, 0x7f, 0x0d, 0x76, 0xb4, 0xc5, 0xd8, 0x94, 0xc4, 0xbf, 0x93, 0x48, 0xde, 0x77, - 0x12, 0x29, 0x5d, 0xb1, 0x68, 0x23, 0x41, 0x8e, 0x46, 0xec, 0xf2, 0xec, 0x51, 0xb3, 0x71, 0x09, - 0xcc, 0xc6, 0x8a, 0xf7, 0xf6, 0x81, 0xef, 0xf1, 0x3e, 0xf8, 0x4f, 0x1f, 0x0a, 0xfc, 0xfd, 0xf7, - 0x64, 0x1f, 0x80, 0xe6, 0x3e, 0x98, 0x1b, 0xe2, 0x95, 0x79, 0xe7, 0xd7, 0xa8, 0x4f, 0x00, 0x2b, - 0x5f, 0x81, 0x87, 0xcb, 0xa3, 0xab, 0xca, 0xf5, 0xb5, 0xcd, 0x47, 0x4f, 0xc5, 0x91, 0x27, 0x4f, - 0xc5, 0x91, 0x17, 0x4f, 0x45, 0xf0, 0x69, 0x53, 0x04, 0x3f, 0x36, 0x45, 0xf0, 0xa0, 0x29, 0x82, - 0x47, 0x4d, 0x11, 0xfc, 0xd9, 0x14, 0xc1, 0xf3, 0xa6, 0x38, 0xf2, 0xa2, 0x29, 0x82, 0x2f, 0x0e, - 0xc4, 0x91, 0x7b, 0x07, 0x22, 0x78, 0x74, 0x20, 0x8e, 0x3c, 0x39, 0x10, 0x47, 0x3e, 0xc8, 0x95, - 0x4c, 0xeb, 0x56, 0x49, 0xaa, 0x9b, 0xce, 0x78, 0x6a, 0x6b, 0x52, 0x8d, 0xc8, 0xec, 0xc1, 0xf9, - 0xbb, 0xe6, 0xdc, 0x4a, 0xdd, 0x28, 0x60, 0x3b, 0xe9, 0x89, 0x65, 0x2b, 0x5f, 0x32, 0x65, 0x7c, - 0x9b, 0xba, 0xdf, 0x67, 0x5e, 0xf3, 0x29, 0x29, 0x1f, 0x64, 0x51, 0xb8, 0xf8, 0x77, 0x00, 0x00, - 0x00, 0xff, 0xff, 0x52, 0x08, 0x30, 0xba, 0x5f, 0x13, 0x00, 0x00, + // 1625 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1b, 0xc5, + 0x17, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x9d, 0x7f, 0x9b, 0x3a, 0xfe, 0x97, 0x95, 0x71, + 0x0b, 0x8a, 0x92, 0x7a, 0x1d, 0xa5, 0xaa, 0x20, 0x51, 0x15, 0x70, 0x12, 0x3b, 0x4a, 0x9b, 0x26, + 0x61, 0xed, 0x56, 0x88, 0x03, 0xab, 0xf5, 0x7a, 0xec, 0x2e, 0xb5, 0xbd, 0xcb, 0xce, 0xd8, 0xa9, + 0x85, 0x22, 0xa1, 0x9e, 0x38, 0x16, 0x55, 0x02, 0x09, 0x01, 0x42, 0x42, 0x48, 0x1c, 0x39, 0x22, + 0xe5, 0xd2, 0x1b, 0x55, 0x85, 0x50, 0x05, 0x97, 0x1c, 0xa9, 0xd3, 0x43, 0x8f, 0x15, 0xe2, 0xc0, + 0x01, 0x24, 0xb4, 0x33, 0xbb, 0xae, 0xed, 0xb8, 0xb1, 0x1d, 0xd2, 0x93, 0x77, 0xe6, 0xbd, 0xf7, + 0x9b, 0xf7, 0x9b, 0xf7, 0xb1, 0xcf, 0x0b, 0x2f, 0xd6, 0x30, 0x91, 0x74, 0x23, 0x41, 0xb4, 0x9b, + 0xb8, 0xac, 0x26, 0xd4, 0x7c, 0x0d, 0x5b, 0x54, 0x27, 0x58, 0x31, 0x8d, 0x92, 0xae, 0xd5, 0x13, + 0x66, 0x35, 0x57, 0xd2, 0x35, 0x45, 0xb3, 0xaa, 0x79, 0xd5, 0xd4, 0x25, 0xd3, 0x32, 0xa8, 0x81, + 0x44, 0x6e, 0x24, 0x71, 0x23, 0xa9, 0xd3, 0x28, 0x12, 0x2f, 0xea, 0xf4, 0x66, 0x35, 0x27, 0x69, + 0x46, 0x39, 0x51, 0x34, 0x8a, 0x46, 0x82, 0x99, 0xe5, 0xaa, 0x05, 0xb6, 0x62, 0x0b, 0xf6, 0xc4, + 0xe1, 0x22, 0x67, 0x8b, 0x86, 0x51, 0x2c, 0xe1, 0x84, 0x6a, 0xea, 0x09, 0xb5, 0x52, 0x31, 0xa8, + 0x4a, 0x75, 0xa3, 0x42, 0x1c, 0xe9, 0xff, 0x1d, 0x69, 0x13, 0x03, 0x97, 0x4d, 0x5a, 0x77, 0x84, + 0x33, 0x3d, 0xdc, 0x37, 0x72, 0x1f, 0x60, 0x8d, 0x3a, 0xca, 0xd3, 0x3d, 0x94, 0x69, 0xdd, 0xc4, + 0xee, 0xa9, 0x91, 0x76, 0x5d, 0x6c, 0x59, 0x86, 0xd5, 0xf4, 0xa8, 0x5d, 0x66, 0x98, 0xad, 0xee, + 0x4e, 0xb6, 0x0b, 0x5b, 0x31, 0x63, 0xed, 0xa2, 0x1a, 0x26, 0xb8, 0x52, 0xeb, 0x30, 0x8f, 0x76, + 0xe8, 0xe8, 0x78, 0x5b, 0x69, 0xd3, 0x88, 0xfd, 0x00, 0xe0, 0xe8, 0xb2, 0x85, 0x55, 0x8a, 0x65, + 0xfc, 0x61, 0x15, 0x13, 0x8a, 0xde, 0x82, 0x81, 0x32, 0xa6, 0x6a, 0x5e, 0xa5, 0x6a, 0x18, 0x44, + 0xc1, 0x54, 0x68, 0xee, 0x9c, 0xd4, 0x1e, 0xa1, 0x4d, 0x76, 0x0d, 0xdc, 0xea, 0x1a, 0xa6, 0x6a, + 0xb6, 0x6e, 0x62, 0xb9, 0x69, 0x84, 0x32, 0xd0, 0x47, 0x4c, 0xac, 0x85, 0x3d, 0xcc, 0x58, 0x92, + 0x0e, 0x0f, 0xaf, 0xc4, 0x71, 0x32, 0x26, 0xd6, 0x6c, 0x9c, 0xa5, 0xf1, 0x2f, 0x76, 0x46, 0x6c, + 0x73, 0xa9, 0xa8, 0x29, 0xf6, 0xaf, 0xcc, 0xc0, 0x16, 0x82, 0x0f, 0x17, 0xfd, 0xfc, 0xdc, 0xd8, + 0xdf, 0x00, 0x8e, 0xb9, 0x2e, 0x13, 0xd3, 0xa8, 0x10, 0x8c, 0x2e, 0x1f, 0xf0, 0x39, 0xda, 0xd5, + 0xe7, 0x55, 0x4c, 0xbb, 0x38, 0xbc, 0x09, 0xc7, 0x49, 0x9d, 0x50, 0x5c, 0x56, 0x9a, 0x20, 0x5e, + 0x06, 0xf2, 0x7a, 0x07, 0x48, 0x86, 0x69, 0x1d, 0x84, 0x1a, 0xe3, 0xe6, 0xd7, 0x5c, 0xc0, 0xad, + 0xb6, 0x1b, 0x98, 0xe9, 0x75, 0x03, 0xab, 0x98, 0x0e, 0x40, 0xff, 0x09, 0x80, 0x63, 0x32, 0x36, + 0x4b, 0xaa, 0xd6, 0x0c, 0xd9, 0xdb, 0x07, 0xe8, 0x9f, 0xef, 0x4a, 0xdf, 0x31, 0xeb, 0x72, 0x05, + 0xd9, 0x36, 0x8f, 0x13, 0xbd, 0x3c, 0x76, 0x80, 0x7a, 0x78, 0x8d, 0x12, 0x50, 0xb0, 0x30, 0x31, + 0xaa, 0x96, 0x86, 0x95, 0x1a, 0xb6, 0x88, 0x6e, 0x54, 0xd8, 0xcd, 0x06, 0x97, 0x7c, 0x4f, 0x77, + 0x01, 0x90, 0xc7, 0x5d, 0xe9, 0x0d, 0x2e, 0x6c, 0xa5, 0x79, 0x12, 0x8e, 0x37, 0x59, 0xf2, 0x28, + 0xc7, 0xbe, 0x06, 0x10, 0xae, 0x62, 0xea, 0xb2, 0x3e, 0x0b, 0x83, 0x15, 0xb5, 0x8c, 0x89, 0xa9, + 0x6a, 0x98, 0xd1, 0x0e, 0xca, 0xcf, 0x37, 0x10, 0x82, 0x3e, 0x7b, 0xc1, 0x18, 0x05, 0x65, 0xf6, + 0x8c, 0xde, 0x87, 0xf6, 0x89, 0x0c, 0x4c, 0x29, 0x18, 0x56, 0x59, 0xa5, 0xcc, 0x9d, 0xb1, 0xb9, + 0x4b, 0x7d, 0x84, 0xc8, 0x75, 0x23, 0xcd, 0x0c, 0x97, 0x8d, 0x3c, 0x96, 0xc7, 0xac, 0xb6, 0xbd, + 0xd8, 0x57, 0x7e, 0x18, 0x6a, 0xd1, 0x44, 0x1b, 0x30, 0xa4, 0xb1, 0x44, 0x65, 0xa7, 0x39, 0x97, + 0x1b, 0xef, 0xaf, 0x20, 0x1c, 0x96, 0x32, 0xe4, 0x08, 0xf6, 0x09, 0xe8, 0x1d, 0x38, 0x62, 0xf1, + 0x3b, 0xe1, 0x80, 0xde, 0xfe, 0x2a, 0xac, 0x3d, 0x5b, 0xe4, 0x90, 0x83, 0xc1, 0x20, 0xbb, 0x85, + 0xc8, 0x77, 0x48, 0x88, 0xda, 0x4a, 0x6d, 0xf8, 0x38, 0x4a, 0xed, 0xc4, 0xb1, 0x94, 0x9a, 0xff, + 0xb8, 0x4a, 0x0d, 0x5d, 0x85, 0x7e, 0x42, 0x55, 0x5a, 0x25, 0xe1, 0x6f, 0xbe, 0x04, 0x51, 0xef, + 0x54, 0x68, 0xee, 0x42, 0x2f, 0xd4, 0x0c, 0xd3, 0xe7, 0xce, 0x2e, 0x79, 0xef, 0xef, 0x00, 0xd9, + 0x81, 0x40, 0x6b, 0xf0, 0xa4, 0x85, 0x0b, 0xd8, 0xb2, 0xf4, 0x4a, 0x51, 0xe1, 0xaf, 0x0f, 0x12, + 0x0e, 0x30, 0xd4, 0xb3, 0x2f, 0x28, 0xd1, 0x02, 0xe3, 0x29, 0x34, 0xcd, 0xf8, 0x3e, 0x41, 0x37, + 0x60, 0x38, 0x8f, 0x4b, 0x98, 0xe2, 0xbc, 0xc2, 0x65, 0x38, 0xdf, 0x44, 0x0c, 0xf6, 0x81, 0x38, + 0xe1, 0x58, 0xcb, 0x8e, 0xb1, 0x8b, 0xfb, 0x2e, 0x9c, 0xcc, 0xeb, 0x44, 0xcd, 0x95, 0xba, 0x01, + 0xc3, 0x3e, 0x80, 0xcf, 0xb8, 0xe6, 0x1d, 0xc8, 0x2d, 0xd5, 0x7c, 0xc5, 0x17, 0x00, 0x82, 0x27, + 0xf6, 0x1d, 0x80, 0xa1, 0x75, 0x9d, 0xf4, 0x59, 0xc1, 0xaf, 0xc2, 0x91, 0x92, 0x9a, 0xc3, 0x25, + 0xa5, 0xa0, 0x97, 0x28, 0xb6, 0x9c, 0x4a, 0x0e, 0xb1, 0xbd, 0x34, 0xdb, 0x42, 0xe7, 0xe0, 0xa8, + 0x85, 0x4d, 0xc3, 0xa2, 0x4a, 0x41, 0xc7, 0xa5, 0x3c, 0x09, 0x7b, 0xa3, 0xde, 0xa9, 0xa0, 0x3c, + 0xc2, 0x37, 0xd3, 0x6c, 0x0f, 0xcd, 0xc2, 0x53, 0x8e, 0x12, 0x0f, 0x8a, 0xab, 0xeb, 0x63, 0xba, + 0x88, 0xcb, 0x78, 0x08, 0xb9, 0x45, 0xec, 0x67, 0x3f, 0x14, 0xb8, 0x9f, 0xbc, 0x90, 0xd7, 0x28, + 0x2e, 0xa3, 0x09, 0xe8, 0xa7, 0xb8, 0xa2, 0x56, 0x28, 0xcb, 0xb5, 0xa0, 0xec, 0xac, 0x8e, 0xd0, + 0x86, 0x04, 0xe8, 0xad, 0xea, 0x79, 0xde, 0x09, 0x65, 0xfb, 0x11, 0x45, 0x61, 0x28, 0x8f, 0x89, + 0x66, 0xe9, 0xec, 0xdd, 0x1c, 0x0e, 0x71, 0xa6, 0x2d, 0x5b, 0x28, 0x02, 0x03, 0xee, 0x35, 0x87, + 0x47, 0xa2, 0x60, 0x2a, 0x20, 0x37, 0xd7, 0x28, 0x0b, 0xfd, 0xec, 0x52, 0x38, 0xa5, 0xd0, 0xdc, + 0xe5, 0x5e, 0xf9, 0xda, 0xc9, 0x4d, 0x5a, 0x67, 0xe6, 0xa9, 0x0a, 0xb5, 0xea, 0xb2, 0x83, 0x85, + 0x34, 0x18, 0x6a, 0x19, 0x9f, 0x9c, 0x4c, 0x48, 0x0e, 0x0c, 0x9d, 0x7c, 0x8e, 0xc1, 0xf1, 0x5b, + 0x51, 0xd1, 0x3c, 0x84, 0xc6, 0x76, 0x05, 0x5b, 0x8a, 0x3d, 0x9a, 0x84, 0x83, 0xac, 0x88, 0x23, + 0x1d, 0x67, 0xdc, 0xd0, 0xf1, 0xb6, 0x9b, 0x6b, 0x41, 0xa6, 0x6d, 0xef, 0xb4, 0x35, 0xa2, 0xd1, + 0xe3, 0x68, 0x44, 0x63, 0xff, 0xa9, 0x11, 0xa5, 0x61, 0xa0, 0x88, 0x29, 0x6b, 0x24, 0x4e, 0x4b, + 0x1b, 0xa4, 0x19, 0xc9, 0x27, 0x8a, 0x7c, 0x81, 0xb6, 0x20, 0x74, 0xd2, 0x94, 0x60, 0xea, 0xb4, + 0x8a, 0x23, 0x34, 0xa0, 0x20, 0x07, 0xc9, 0x60, 0x1a, 0x99, 0x87, 0xa1, 0x96, 0xf8, 0xda, 0xd9, + 0x77, 0x0b, 0xd7, 0x9d, 0x4c, 0xb5, 0x1f, 0xd1, 0x29, 0x38, 0x5c, 0x53, 0x4b, 0x55, 0x37, 0x49, + 0xf9, 0x62, 0xc1, 0xf3, 0x26, 0x88, 0x2c, 0x42, 0xa1, 0x33, 0x7e, 0x83, 0xd8, 0x5f, 0xf1, 0x05, + 0x86, 0x05, 0x7f, 0xec, 0x13, 0x00, 0x47, 0x5a, 0xf3, 0x02, 0xa5, 0xe1, 0xb0, 0x4e, 0x71, 0x99, + 0x84, 0x79, 0x7f, 0x9d, 0x1d, 0x34, 0xa9, 0x64, 0x6e, 0x8e, 0x66, 0xa1, 0x9f, 0x8f, 0xd2, 0x61, + 0x0f, 0x03, 0x0a, 0x77, 0x00, 0xa5, 0x6c, 0x21, 0xbb, 0x5e, 0x47, 0x2f, 0x76, 0x0b, 0x8e, 0xae, + 0xb0, 0x36, 0x78, 0xf4, 0x21, 0x62, 0x0a, 0x0a, 0x05, 0x55, 0x2f, 0x29, 0x7a, 0xa1, 0xd9, 0x2e, + 0x59, 0x29, 0x07, 0xe4, 0x31, 0x7b, 0x7f, 0xad, 0xe0, 0xb6, 0xc1, 0xe9, 0x3f, 0x00, 0x3c, 0xdd, + 0x75, 0x70, 0x40, 0x11, 0x38, 0xb1, 0x9a, 0xca, 0x2a, 0x72, 0x66, 0x4b, 0x49, 0x6f, 0xca, 0xd7, + 0x92, 0x59, 0x65, 0x25, 0x95, 0x4e, 0x5e, 0x5f, 0xcf, 0x0a, 0x43, 0xe8, 0x15, 0x38, 0xd9, 0x21, + 0x4b, 0x6f, 0xca, 0xca, 0xb2, 0x9c, 0x4a, 0x66, 0x53, 0x02, 0x40, 0x22, 0x8c, 0x74, 0x11, 0xcb, + 0xa9, 0xad, 0xf5, 0xe4, 0x72, 0x4a, 0xf0, 0xa0, 0x49, 0x78, 0xba, 0x43, 0x9e, 0xc9, 0x26, 0xb3, + 0xd7, 0x33, 0x82, 0x17, 0x9d, 0x81, 0xff, 0xeb, 0x10, 0xc9, 0xa9, 0xe4, 0x8a, 0xe0, 0x43, 0xe7, + 0x61, 0xf4, 0x80, 0x20, 0x9d, 0x92, 0xe5, 0xb5, 0x8d, 0x55, 0x65, 0x73, 0xe9, 0x4a, 0x6a, 0x39, + 0x9b, 0x11, 0x86, 0xbb, 0x68, 0x2d, 0xc9, 0x9b, 0x57, 0x53, 0x1b, 0x5c, 0x39, 0xb5, 0xb1, 0x9c, + 0xca, 0x08, 0xfe, 0xb9, 0x3d, 0x08, 0xbd, 0xc9, 0xad, 0x35, 0xf4, 0x0f, 0x80, 0x7e, 0x3e, 0xc9, + 0xa0, 0xc1, 0x26, 0x9e, 0x88, 0xd4, 0xaf, 0xba, 0x33, 0x16, 0xde, 0x03, 0x8d, 0x9f, 0xc2, 0x57, + 0x0b, 0x97, 0x6e, 0x6b, 0x71, 0x82, 0xb5, 0xaa, 0x85, 0xcb, 0x98, 0xdc, 0x8c, 0xe7, 0x54, 0xa2, + 0x6b, 0xf1, 0x2a, 0xc1, 0xd6, 0x85, 0x4e, 0x11, 0xa1, 0x6a, 0x25, 0xaf, 0x5a, 0x79, 0x2e, 0xad, + 0x61, 0x12, 0xd7, 0x8d, 0xb8, 0x69, 0x19, 0xb7, 0xeb, 0xf1, 0x6d, 0x4b, 0xa7, 0xf8, 0xce, 0x6f, + 0x4f, 0xee, 0x79, 0x16, 0x63, 0xf3, 0xce, 0xdf, 0xd5, 0x44, 0x33, 0x1f, 0x48, 0xe2, 0x23, 0xb7, + 0x5b, 0x48, 0xcd, 0xcd, 0x9d, 0x03, 0x7f, 0xfd, 0xc8, 0x02, 0x98, 0x46, 0x7f, 0x01, 0xe8, 0x5d, + 0xc5, 0x14, 0x4d, 0xf7, 0x35, 0x5a, 0x72, 0xe6, 0x33, 0x03, 0x8c, 0xa1, 0xb1, 0xcf, 0xc1, 0x83, + 0x1f, 0x3d, 0x36, 0xf5, 0xad, 0xee, 0xd4, 0xcb, 0x46, 0x45, 0xa7, 0xc6, 0x21, 0xec, 0x5d, 0x85, + 0xb6, 0x0b, 0xb0, 0xb0, 0x9a, 0x67, 0xfc, 0xe7, 0xd1, 0x1b, 0xdd, 0xf8, 0x1f, 0x46, 0x9b, 0x4b, + 0x77, 0xd0, 0x9f, 0x00, 0xfa, 0xec, 0x92, 0x45, 0x33, 0xfd, 0x15, 0x36, 0x27, 0x7f, 0x61, 0x90, + 0x2e, 0x10, 0xbb, 0xfb, 0x72, 0xd9, 0xcf, 0xa1, 0xd9, 0x41, 0xd9, 0xa3, 0xbb, 0x1e, 0x78, 0xc2, + 0x19, 0xb5, 0xd1, 0x80, 0x33, 0x79, 0x24, 0xd1, 0xb7, 0xbe, 0xc3, 0xff, 0xdb, 0x97, 0x92, 0xf4, + 0x1b, 0x91, 0xb5, 0x23, 0x27, 0x7d, 0x87, 0xda, 0x8e, 0x5d, 0x04, 0xfb, 0x00, 0xfa, 0x79, 0xbf, + 0xed, 0xdd, 0x04, 0xda, 0xfa, 0x72, 0x64, 0x42, 0xe2, 0x1f, 0x6a, 0x24, 0xf7, 0x43, 0x8d, 0x94, + 0x2a, 0x9b, 0xb4, 0x1e, 0xfb, 0xf4, 0xa5, 0xf0, 0xbe, 0x3c, 0x7d, 0xd4, 0x64, 0x5f, 0x00, 0xd3, + 0x91, 0xc2, 0xfd, 0x5d, 0xe0, 0xf9, 0x75, 0x17, 0xbc, 0xd6, 0x83, 0x21, 0x7f, 0x3f, 0xef, 0xed, + 0x02, 0xd0, 0xd8, 0x05, 0x33, 0x03, 0xbc, 0xd2, 0xef, 0xfc, 0x12, 0xf6, 0x08, 0x60, 0xe9, 0x33, + 0xf0, 0x70, 0x71, 0x78, 0x59, 0xbe, 0xbe, 0xb2, 0xfe, 0xe8, 0xb1, 0x38, 0xb4, 0xf7, 0x58, 0x1c, + 0x7a, 0xf6, 0x58, 0x04, 0x1f, 0x37, 0x44, 0xf0, 0x7d, 0x43, 0x04, 0x0f, 0x1a, 0x22, 0x78, 0xd4, + 0x10, 0xc1, 0xef, 0x0d, 0x11, 0x3c, 0x6d, 0x88, 0x43, 0xcf, 0x1a, 0x22, 0xb8, 0xbb, 0x2f, 0x0e, + 0xdd, 0xdf, 0x17, 0xc1, 0xa3, 0x7d, 0x71, 0x68, 0x6f, 0x5f, 0x1c, 0x7a, 0x2f, 0x5b, 0x34, 0xcc, + 0x5b, 0x45, 0xa9, 0x66, 0xd8, 0xe3, 0xb3, 0xa5, 0x4a, 0x55, 0x92, 0x60, 0x0f, 0xf6, 0xdf, 0x49, + 0xfb, 0x56, 0x6a, 0x7a, 0x1e, 0x5b, 0x71, 0x57, 0x9c, 0x30, 0x73, 0x45, 0x23, 0x81, 0x6f, 0x53, + 0xe7, 0xfb, 0xd1, 0x0b, 0x3e, 0x75, 0xe5, 0xfc, 0x2c, 0x48, 0x17, 0xff, 0x0d, 0x00, 0x00, 0xff, + 0xff, 0x0a, 0xb4, 0xe3, 0x1b, 0xff, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/advertise_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/advertise_policy/public_crudapi.vesapi.go index 103ba039b..ebe6f79ce 100644 --- a/pbgo/extschema/schema/advertise_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/advertise_policy/public_crudapi.vesapi.go @@ -3183,10 +3183,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3243,10 +3247,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3349,10 +3357,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3838,7 +3850,22 @@ var APISwaggerJSON string = `{ "description": "Reference to Root CA Certificate", "title": "Root CA Certificate", "x-displayname": "Root CA Certificate Reference", - "x-ves-proto-message": "ves.io.schema.TrustedCAList" + "x-ves-proto-message": "ves.io.schema.TrustedCAList", + "properties": { + "trusted_ca_list": { + "type": "array", + "description": " Reference to Root CA Certificate\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Root CA Certificate", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Root CA Certificate Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } }, "schemaVSiteRefType": { "type": "object", diff --git a/pbgo/extschema/schema/ai_assistant/common/link.pb.go b/pbgo/extschema/schema/ai_assistant/common/link.pb.go new file mode 100644 index 000000000..af3b9d18b --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/common/link.pb.go @@ -0,0 +1,1905 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ai_assistant/common/link.proto + +package common + +import ( + fmt "fmt" + proto "github.com/gogo/protobuf/proto" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Filter Operator +// +// x-displayName: "Filter Operator" +// Operator for query filter +type FilterOperator int32 + +const ( + // Filter Operator + // + // x-displayName: "In" + // Specifies that query result includes filter values + IN FilterOperator = 0 + // Filter Operator + // + // x-displayName: "Not In" + // Specifies that query result excludes filter values + NOT_IN FilterOperator = 1 +) + +var FilterOperator_name = map[int32]string{ + 0: "IN", + 1: "NOT_IN", +} + +var FilterOperator_value = map[string]int32{ + "IN": 0, + "NOT_IN": 1, +} + +func (FilterOperator) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_164e2504257d95f4, []int{0} +} + +// LinkType +// +// x-displayName: "Link Type" +// Link Type to be presented +type DashboardLinkType int32 + +const ( + // SECURITY_ANALYTICS_EVENTS + // + // x-displayName: "SECURITY_ANALYTICS_EVENTS" + // Security analytics dashboard: /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_analytics/events + SECURITY_ANALYTICS_EVENTS DashboardLinkType = 0 + // REQUESTS_EVENTS + // + // x-displayName: "REQUESTS_EVENTS" + // Requests dashboard: /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_monitoring/request + REQUESTS_EVENTS DashboardLinkType = 1 +) + +var DashboardLinkType_name = map[int32]string{ + 0: "SECURITY_ANALYTICS_EVENTS", + 1: "REQUESTS_EVENTS", +} + +var DashboardLinkType_value = map[string]int32{ + "SECURITY_ANALYTICS_EVENTS": 0, + "REQUESTS_EVENTS": 1, +} + +func (DashboardLinkType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_164e2504257d95f4, []int{1} +} + +// Link +// +// x-displayName: "Link" +// Link for a page +type Link struct { + // title + // + // x-example: "Security Analytics lb1" + // x-displayName: "Title" + // Title for the link + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + // key + // + // x-example: "db_link" + // x-displayName: "Key" + // x-required + // Key will present a placeholder in a text field to insert the link. + // For example: To view these events go to the ${{link:db_link}}. + Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` + // link_type + // + // x-displayName: "Link" + // Type of link to be presented + // + // Types that are valid to be assigned to LinkType: + // *Link_GenericLink + // *Link_DashboardLink + LinkType isLink_LinkType `protobuf_oneof:"link_type"` +} + +func (m *Link) Reset() { *m = Link{} } +func (*Link) ProtoMessage() {} +func (*Link) Descriptor() ([]byte, []int) { + return fileDescriptor_164e2504257d95f4, []int{0} +} +func (m *Link) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Link) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Link.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Link) XXX_Merge(src proto.Message) { + xxx_messageInfo_Link.Merge(m, src) +} +func (m *Link) XXX_Size() int { + return m.Size() +} +func (m *Link) XXX_DiscardUnknown() { + xxx_messageInfo_Link.DiscardUnknown(m) +} + +var xxx_messageInfo_Link proto.InternalMessageInfo + +type isLink_LinkType interface { + isLink_LinkType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type Link_GenericLink struct { + GenericLink *GenericLink `protobuf:"bytes,4,opt,name=generic_link,json=genericLink,proto3,oneof" json:"generic_link,omitempty"` +} +type Link_DashboardLink struct { + DashboardLink *DashboardLink `protobuf:"bytes,5,opt,name=dashboard_link,json=dashboardLink,proto3,oneof" json:"dashboard_link,omitempty"` +} + +func (*Link_GenericLink) isLink_LinkType() {} +func (*Link_DashboardLink) isLink_LinkType() {} + +func (m *Link) GetLinkType() isLink_LinkType { + if m != nil { + return m.LinkType + } + return nil +} + +func (m *Link) GetTitle() string { + if m != nil { + return m.Title + } + return "" +} + +func (m *Link) GetKey() string { + if m != nil { + return m.Key + } + return "" +} + +func (m *Link) GetGenericLink() *GenericLink { + if x, ok := m.GetLinkType().(*Link_GenericLink); ok { + return x.GenericLink + } + return nil +} + +func (m *Link) GetDashboardLink() *DashboardLink { + if x, ok := m.GetLinkType().(*Link_DashboardLink); ok { + return x.DashboardLink + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Link) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Link_GenericLink)(nil), + (*Link_DashboardLink)(nil), + } +} + +// GenericLink +// +// x-displayName: "Generic Link" +// Generic link can have external link with full url +type GenericLink struct { + // url + // + // x-displayName: "URL" + // x-example: "https://datatracker.ietf.org/doc/html/rfc3986" + // Full url + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"` +} + +func (m *GenericLink) Reset() { *m = GenericLink{} } +func (*GenericLink) ProtoMessage() {} +func (*GenericLink) Descriptor() ([]byte, []int) { + return fileDescriptor_164e2504257d95f4, []int{1} +} +func (m *GenericLink) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GenericLink) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GenericLink.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GenericLink) XXX_Merge(src proto.Message) { + xxx_messageInfo_GenericLink.Merge(m, src) +} +func (m *GenericLink) XXX_Size() int { + return m.Size() +} +func (m *GenericLink) XXX_DiscardUnknown() { + xxx_messageInfo_GenericLink.DiscardUnknown(m) +} + +var xxx_messageInfo_GenericLink proto.InternalMessageInfo + +func (m *GenericLink) GetUrl() string { + if m != nil { + return m.Url + } + return "" +} + +// DashboardLink +// +// x-displayName: "Dashboard Link" +// Dashboard link will present common fields like type, namespace, object, dateFilter, logFilter +type DashboardLink struct { + // type + // + // x-example: "SECURITY_ANALYTICS_EVENTS" + // x-displayName: "Type" + // Type of the link to be presented. + // SECURITY_ANALYTICS_EVENTS --> /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_analytics/events + // REQUESTS_EVENTS --> /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_monitoring/request + Type DashboardLinkType `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.ai_assistant.common.DashboardLinkType" json:"type,omitempty"` + // Namespace + // + // x-displayName: "Namespace" + // x-example: "system" + // Namespace for current request + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + // object_name + // + // x-displayName: "Object name" + // x-example: "ves-io-http-loadbalancer-prod-nginx" + // Object name such as LB, VH + ObjectName string `protobuf:"bytes,3,opt,name=object_name,json=objectName,proto3" json:"object_name,omitempty"` + // time_range + // + // x-displayName: "Time Range" + // x-example: "604800" + // Time range filter + TimeRange string `protobuf:"bytes,4,opt,name=time_range,json=timeRange,proto3" json:"time_range,omitempty"` + // log_filters + // + // x-displayName: "Logs Filter" + // Logs filter + LogFilters []*LogFilter `protobuf:"bytes,5,rep,name=log_filters,json=logFilters,proto3" json:"log_filters,omitempty"` +} + +func (m *DashboardLink) Reset() { *m = DashboardLink{} } +func (*DashboardLink) ProtoMessage() {} +func (*DashboardLink) Descriptor() ([]byte, []int) { + return fileDescriptor_164e2504257d95f4, []int{2} +} +func (m *DashboardLink) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DashboardLink) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DashboardLink.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DashboardLink) XXX_Merge(src proto.Message) { + xxx_messageInfo_DashboardLink.Merge(m, src) +} +func (m *DashboardLink) XXX_Size() int { + return m.Size() +} +func (m *DashboardLink) XXX_DiscardUnknown() { + xxx_messageInfo_DashboardLink.DiscardUnknown(m) +} + +var xxx_messageInfo_DashboardLink proto.InternalMessageInfo + +func (m *DashboardLink) GetType() DashboardLinkType { + if m != nil { + return m.Type + } + return SECURITY_ANALYTICS_EVENTS +} + +func (m *DashboardLink) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *DashboardLink) GetObjectName() string { + if m != nil { + return m.ObjectName + } + return "" +} + +func (m *DashboardLink) GetTimeRange() string { + if m != nil { + return m.TimeRange + } + return "" +} + +func (m *DashboardLink) GetLogFilters() []*LogFilter { + if m != nil { + return m.LogFilters + } + return nil +} + +// LogFilter +// +// x-displayName: "Log Filter" +// Log filter for filter query +type LogFilter struct { + // key + // + // x-displayName: "Key" + // x-example: "attack_types.name" + // Key to be presented in the filter + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + // values + // + // x-displayName: "Values" + // x-example: "ATTACK_TYPE_CROSS_SITE_SCRIPTING" + // Values to be presented in the filter + Values []string `protobuf:"bytes,2,rep,name=values,proto3" json:"values,omitempty"` + // op + // + // x-displayName: "Operator" + // x-example: "IN" + // Operator for query filter + Op FilterOperator `protobuf:"varint,3,opt,name=op,proto3,enum=ves.io.schema.ai_assistant.common.FilterOperator" json:"op,omitempty"` +} + +func (m *LogFilter) Reset() { *m = LogFilter{} } +func (*LogFilter) ProtoMessage() {} +func (*LogFilter) Descriptor() ([]byte, []int) { + return fileDescriptor_164e2504257d95f4, []int{3} +} +func (m *LogFilter) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LogFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_LogFilter.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *LogFilter) XXX_Merge(src proto.Message) { + xxx_messageInfo_LogFilter.Merge(m, src) +} +func (m *LogFilter) XXX_Size() int { + return m.Size() +} +func (m *LogFilter) XXX_DiscardUnknown() { + xxx_messageInfo_LogFilter.DiscardUnknown(m) +} + +var xxx_messageInfo_LogFilter proto.InternalMessageInfo + +func (m *LogFilter) GetKey() string { + if m != nil { + return m.Key + } + return "" +} + +func (m *LogFilter) GetValues() []string { + if m != nil { + return m.Values + } + return nil +} + +func (m *LogFilter) GetOp() FilterOperator { + if m != nil { + return m.Op + } + return IN +} + +func init() { + proto.RegisterEnum("ves.io.schema.ai_assistant.common.FilterOperator", FilterOperator_name, FilterOperator_value) + proto.RegisterEnum("ves.io.schema.ai_assistant.common.DashboardLinkType", DashboardLinkType_name, DashboardLinkType_value) + proto.RegisterType((*Link)(nil), "ves.io.schema.ai_assistant.common.Link") + proto.RegisterType((*GenericLink)(nil), "ves.io.schema.ai_assistant.common.GenericLink") + proto.RegisterType((*DashboardLink)(nil), "ves.io.schema.ai_assistant.common.DashboardLink") + proto.RegisterType((*LogFilter)(nil), "ves.io.schema.ai_assistant.common.LogFilter") +} + +func init() { + proto.RegisterFile("ves.io/schema/ai_assistant/common/link.proto", fileDescriptor_164e2504257d95f4) +} + +var fileDescriptor_164e2504257d95f4 = []byte{ + // 592 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x53, 0xcd, 0x6e, 0xd3, 0x40, + 0x10, 0xf6, 0x26, 0x69, 0x84, 0x27, 0x34, 0xa4, 0x0b, 0x42, 0x01, 0xd1, 0x6d, 0x88, 0x38, 0x44, + 0x55, 0x6b, 0x43, 0xe0, 0x05, 0xda, 0x12, 0xda, 0xa0, 0x92, 0x0a, 0xc7, 0x05, 0x95, 0x8b, 0xb5, + 0x49, 0xb6, 0xae, 0x89, 0xed, 0xb5, 0x76, 0xb7, 0xa1, 0xbd, 0x71, 0xe2, 0x86, 0xc4, 0x63, 0xf0, + 0x0e, 0xbc, 0x00, 0xc7, 0x1c, 0x7b, 0xa4, 0xee, 0x85, 0x63, 0x6f, 0x5c, 0x91, 0xed, 0xa4, 0x3f, + 0x42, 0x88, 0x70, 0x9b, 0xf9, 0xe6, 0x9b, 0x6f, 0xbe, 0xfd, 0x19, 0x58, 0x19, 0x31, 0x69, 0x78, + 0xdc, 0x94, 0xfd, 0x03, 0x16, 0x50, 0x93, 0x7a, 0x0e, 0x95, 0xd2, 0x93, 0x8a, 0x86, 0xca, 0xec, + 0xf3, 0x20, 0xe0, 0xa1, 0xe9, 0x7b, 0xe1, 0xd0, 0x88, 0x04, 0x57, 0x1c, 0x3f, 0xcc, 0xd8, 0x46, + 0xc6, 0x36, 0xae, 0xb2, 0x8d, 0x8c, 0x7d, 0xbf, 0x76, 0x5d, 0x70, 0xe4, 0xb1, 0x0f, 0x0e, 0x8f, + 0x94, 0xc7, 0x43, 0x99, 0x89, 0xd4, 0x7f, 0x21, 0x28, 0x6c, 0x7b, 0xe1, 0x10, 0xdf, 0x81, 0x39, + 0xe5, 0x29, 0x9f, 0x55, 0x51, 0x0d, 0x35, 0x74, 0x2b, 0x4b, 0x70, 0x05, 0xf2, 0x43, 0x76, 0x5c, + 0xcd, 0xa5, 0x58, 0x12, 0xe2, 0x2e, 0xdc, 0x74, 0x59, 0xc8, 0x84, 0xd7, 0x77, 0x12, 0x2f, 0xd5, + 0x42, 0x0d, 0x35, 0x4a, 0x4d, 0xc3, 0xf8, 0xa7, 0x19, 0x63, 0x33, 0x6b, 0x4b, 0xa6, 0x6d, 0x69, + 0x56, 0xc9, 0xbd, 0x4c, 0xf1, 0x1e, 0x94, 0x07, 0x54, 0x1e, 0xf4, 0x38, 0x15, 0x83, 0x4c, 0x76, + 0x2e, 0x95, 0x7d, 0x3c, 0x83, 0xec, 0xf3, 0x69, 0xe3, 0x44, 0x78, 0x7e, 0x70, 0x15, 0x58, 0x5f, + 0x00, 0x3d, 0x11, 0x74, 0xd4, 0x71, 0xc4, 0x70, 0x61, 0xfc, 0x0d, 0xe5, 0x5f, 0x16, 0x6e, 0xe4, + 0x2b, 0x85, 0xfa, 0x12, 0x94, 0xae, 0x38, 0x4a, 0x4e, 0x7a, 0x28, 0xfc, 0xc9, 0xe9, 0x93, 0xb0, + 0xfe, 0x29, 0x07, 0xf3, 0xd7, 0xc4, 0xf1, 0x16, 0x14, 0x12, 0x99, 0x94, 0x54, 0x6e, 0x3e, 0xfb, + 0x5f, 0x73, 0xf6, 0x71, 0xc4, 0xac, 0x54, 0x01, 0x3f, 0x00, 0x3d, 0xa4, 0x01, 0x93, 0x11, 0xed, + 0xb3, 0xc9, 0xed, 0x5e, 0x02, 0x78, 0x09, 0x4a, 0xbc, 0xf7, 0x9e, 0xf5, 0x95, 0x93, 0x60, 0xd5, + 0x7c, 0x5a, 0x87, 0x0c, 0xea, 0xd0, 0x80, 0xe1, 0x45, 0x00, 0xe5, 0x05, 0xcc, 0x11, 0x34, 0x74, + 0x59, 0xfa, 0x04, 0xba, 0xa5, 0x27, 0x88, 0x95, 0x00, 0xf8, 0x15, 0x94, 0x7c, 0xee, 0x3a, 0xfb, + 0x9e, 0xaf, 0x98, 0x90, 0xd5, 0xb9, 0x5a, 0xbe, 0x51, 0x6a, 0xae, 0xcc, 0x60, 0x77, 0x9b, 0xbb, + 0x2f, 0xd2, 0x26, 0x0b, 0xfc, 0x69, 0x28, 0xeb, 0x47, 0xa0, 0x5f, 0x14, 0xa6, 0x3f, 0x02, 0x5d, + 0xfe, 0x88, 0xbb, 0x50, 0x1c, 0x51, 0xff, 0x90, 0xc9, 0x6a, 0xae, 0x96, 0x6f, 0xe8, 0xd6, 0x24, + 0xc3, 0x6b, 0x90, 0xe3, 0x51, 0x6a, 0xbe, 0xdc, 0x7c, 0x32, 0xc3, 0xf0, 0x6c, 0xc0, 0x4e, 0xc4, + 0x04, 0x55, 0x5c, 0x58, 0x39, 0x1e, 0x2d, 0x3f, 0x82, 0xf2, 0x75, 0x14, 0x17, 0x21, 0xd7, 0xee, + 0x54, 0x34, 0x0c, 0x50, 0xec, 0xec, 0xd8, 0x4e, 0xbb, 0x53, 0x41, 0xcb, 0x9b, 0xb0, 0xf0, 0xc7, + 0x3d, 0xe3, 0x45, 0xb8, 0xd7, 0x6d, 0x6d, 0xec, 0x5a, 0x6d, 0x7b, 0xcf, 0x59, 0xeb, 0xac, 0x6d, + 0xef, 0xd9, 0xed, 0x8d, 0xae, 0xd3, 0x7a, 0xd3, 0xea, 0xd8, 0xdd, 0x8a, 0x86, 0x6f, 0xc3, 0x2d, + 0xab, 0xf5, 0x7a, 0xb7, 0xd5, 0xb5, 0x2f, 0x40, 0xb4, 0xfe, 0x19, 0x8d, 0x4f, 0x89, 0x76, 0x72, + 0x4a, 0xb4, 0xf3, 0x53, 0x82, 0x3e, 0xc6, 0x04, 0x7d, 0x8d, 0x09, 0xfa, 0x1e, 0x13, 0x34, 0x8e, + 0x09, 0xfa, 0x11, 0x13, 0xf4, 0x33, 0x26, 0xda, 0x79, 0x4c, 0xd0, 0x97, 0x33, 0xa2, 0x8d, 0xcf, + 0x88, 0x76, 0x72, 0x46, 0xb4, 0x77, 0x6f, 0x5d, 0x1e, 0x0d, 0x5d, 0x63, 0xc4, 0x13, 0xa7, 0x82, + 0x1a, 0x87, 0xd2, 0x4c, 0x83, 0x7d, 0x2e, 0x82, 0xd5, 0x48, 0xf0, 0x91, 0x37, 0x60, 0x62, 0x75, + 0x5a, 0x36, 0xa3, 0x9e, 0xcb, 0x4d, 0x76, 0xa4, 0x26, 0x4b, 0xf9, 0xf7, 0x65, 0xef, 0x15, 0xd3, + 0x1d, 0x7d, 0xfa, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x7b, 0x7a, 0x9f, 0x6d, 0x18, 0x04, 0x00, 0x00, +} + +func (x FilterOperator) String() string { + s, ok := FilterOperator_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x DashboardLinkType) String() string { + s, ok := DashboardLinkType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *Link) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Link) + if !ok { + that2, ok := that.(Link) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Title != that1.Title { + return false + } + if this.Key != that1.Key { + return false + } + if that1.LinkType == nil { + if this.LinkType != nil { + return false + } + } else if this.LinkType == nil { + return false + } else if !this.LinkType.Equal(that1.LinkType) { + return false + } + return true +} +func (this *Link_GenericLink) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Link_GenericLink) + if !ok { + that2, ok := that.(Link_GenericLink) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GenericLink.Equal(that1.GenericLink) { + return false + } + return true +} +func (this *Link_DashboardLink) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Link_DashboardLink) + if !ok { + that2, ok := that.(Link_DashboardLink) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DashboardLink.Equal(that1.DashboardLink) { + return false + } + return true +} +func (this *GenericLink) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GenericLink) + if !ok { + that2, ok := that.(GenericLink) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Url != that1.Url { + return false + } + return true +} +func (this *DashboardLink) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DashboardLink) + if !ok { + that2, ok := that.(DashboardLink) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Type != that1.Type { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.ObjectName != that1.ObjectName { + return false + } + if this.TimeRange != that1.TimeRange { + return false + } + if len(this.LogFilters) != len(that1.LogFilters) { + return false + } + for i := range this.LogFilters { + if !this.LogFilters[i].Equal(that1.LogFilters[i]) { + return false + } + } + return true +} +func (this *LogFilter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LogFilter) + if !ok { + that2, ok := that.(LogFilter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Key != that1.Key { + return false + } + if len(this.Values) != len(that1.Values) { + return false + } + for i := range this.Values { + if this.Values[i] != that1.Values[i] { + return false + } + } + if this.Op != that1.Op { + return false + } + return true +} +func (this *Link) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common.Link{") + s = append(s, "Title: "+fmt.Sprintf("%#v", this.Title)+",\n") + s = append(s, "Key: "+fmt.Sprintf("%#v", this.Key)+",\n") + if this.LinkType != nil { + s = append(s, "LinkType: "+fmt.Sprintf("%#v", this.LinkType)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Link_GenericLink) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common.Link_GenericLink{` + + `GenericLink:` + fmt.Sprintf("%#v", this.GenericLink) + `}`}, ", ") + return s +} +func (this *Link_DashboardLink) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common.Link_DashboardLink{` + + `DashboardLink:` + fmt.Sprintf("%#v", this.DashboardLink) + `}`}, ", ") + return s +} +func (this *GenericLink) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common.GenericLink{") + s = append(s, "Url: "+fmt.Sprintf("%#v", this.Url)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DashboardLink) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&common.DashboardLink{") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "ObjectName: "+fmt.Sprintf("%#v", this.ObjectName)+",\n") + s = append(s, "TimeRange: "+fmt.Sprintf("%#v", this.TimeRange)+",\n") + if this.LogFilters != nil { + s = append(s, "LogFilters: "+fmt.Sprintf("%#v", this.LogFilters)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *LogFilter) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&common.LogFilter{") + s = append(s, "Key: "+fmt.Sprintf("%#v", this.Key)+",\n") + s = append(s, "Values: "+fmt.Sprintf("%#v", this.Values)+",\n") + s = append(s, "Op: "+fmt.Sprintf("%#v", this.Op)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringLink(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *Link) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Link) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Link) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.LinkType != nil { + { + size := m.LinkType.Size() + i -= size + if _, err := m.LinkType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.Key) > 0 { + i -= len(m.Key) + copy(dAtA[i:], m.Key) + i = encodeVarintLink(dAtA, i, uint64(len(m.Key))) + i-- + dAtA[i] = 0x12 + } + if len(m.Title) > 0 { + i -= len(m.Title) + copy(dAtA[i:], m.Title) + i = encodeVarintLink(dAtA, i, uint64(len(m.Title))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Link_GenericLink) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Link_GenericLink) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GenericLink != nil { + { + size, err := m.GenericLink.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintLink(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *Link_DashboardLink) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Link_DashboardLink) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DashboardLink != nil { + { + size, err := m.DashboardLink.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintLink(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *GenericLink) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GenericLink) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GenericLink) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Url) > 0 { + i -= len(m.Url) + copy(dAtA[i:], m.Url) + i = encodeVarintLink(dAtA, i, uint64(len(m.Url))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DashboardLink) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DashboardLink) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DashboardLink) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.LogFilters) > 0 { + for iNdEx := len(m.LogFilters) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.LogFilters[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintLink(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + } + if len(m.TimeRange) > 0 { + i -= len(m.TimeRange) + copy(dAtA[i:], m.TimeRange) + i = encodeVarintLink(dAtA, i, uint64(len(m.TimeRange))) + i-- + dAtA[i] = 0x22 + } + if len(m.ObjectName) > 0 { + i -= len(m.ObjectName) + copy(dAtA[i:], m.ObjectName) + i = encodeVarintLink(dAtA, i, uint64(len(m.ObjectName))) + i-- + dAtA[i] = 0x1a + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintLink(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0x12 + } + if m.Type != 0 { + i = encodeVarintLink(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *LogFilter) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LogFilter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LogFilter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Op != 0 { + i = encodeVarintLink(dAtA, i, uint64(m.Op)) + i-- + dAtA[i] = 0x18 + } + if len(m.Values) > 0 { + for iNdEx := len(m.Values) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Values[iNdEx]) + copy(dAtA[i:], m.Values[iNdEx]) + i = encodeVarintLink(dAtA, i, uint64(len(m.Values[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Key) > 0 { + i -= len(m.Key) + copy(dAtA[i:], m.Key) + i = encodeVarintLink(dAtA, i, uint64(len(m.Key))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintLink(dAtA []byte, offset int, v uint64) int { + offset -= sovLink(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Link) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Title) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + l = len(m.Key) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + if m.LinkType != nil { + n += m.LinkType.Size() + } + return n +} + +func (m *Link_GenericLink) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GenericLink != nil { + l = m.GenericLink.Size() + n += 1 + l + sovLink(uint64(l)) + } + return n +} +func (m *Link_DashboardLink) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DashboardLink != nil { + l = m.DashboardLink.Size() + n += 1 + l + sovLink(uint64(l)) + } + return n +} +func (m *GenericLink) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Url) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + return n +} + +func (m *DashboardLink) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Type != 0 { + n += 1 + sovLink(uint64(m.Type)) + } + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + l = len(m.ObjectName) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + l = len(m.TimeRange) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + if len(m.LogFilters) > 0 { + for _, e := range m.LogFilters { + l = e.Size() + n += 1 + l + sovLink(uint64(l)) + } + } + return n +} + +func (m *LogFilter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Key) + if l > 0 { + n += 1 + l + sovLink(uint64(l)) + } + if len(m.Values) > 0 { + for _, s := range m.Values { + l = len(s) + n += 1 + l + sovLink(uint64(l)) + } + } + if m.Op != 0 { + n += 1 + sovLink(uint64(m.Op)) + } + return n +} + +func sovLink(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozLink(x uint64) (n int) { + return sovLink(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *Link) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Link{`, + `Title:` + fmt.Sprintf("%v", this.Title) + `,`, + `Key:` + fmt.Sprintf("%v", this.Key) + `,`, + `LinkType:` + fmt.Sprintf("%v", this.LinkType) + `,`, + `}`, + }, "") + return s +} +func (this *Link_GenericLink) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Link_GenericLink{`, + `GenericLink:` + strings.Replace(fmt.Sprintf("%v", this.GenericLink), "GenericLink", "GenericLink", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Link_DashboardLink) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Link_DashboardLink{`, + `DashboardLink:` + strings.Replace(fmt.Sprintf("%v", this.DashboardLink), "DashboardLink", "DashboardLink", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GenericLink) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GenericLink{`, + `Url:` + fmt.Sprintf("%v", this.Url) + `,`, + `}`, + }, "") + return s +} +func (this *DashboardLink) String() string { + if this == nil { + return "nil" + } + repeatedStringForLogFilters := "[]*LogFilter{" + for _, f := range this.LogFilters { + repeatedStringForLogFilters += strings.Replace(f.String(), "LogFilter", "LogFilter", 1) + "," + } + repeatedStringForLogFilters += "}" + s := strings.Join([]string{`&DashboardLink{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `ObjectName:` + fmt.Sprintf("%v", this.ObjectName) + `,`, + `TimeRange:` + fmt.Sprintf("%v", this.TimeRange) + `,`, + `LogFilters:` + repeatedStringForLogFilters + `,`, + `}`, + }, "") + return s +} +func (this *LogFilter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LogFilter{`, + `Key:` + fmt.Sprintf("%v", this.Key) + `,`, + `Values:` + fmt.Sprintf("%v", this.Values) + `,`, + `Op:` + fmt.Sprintf("%v", this.Op) + `,`, + `}`, + }, "") + return s +} +func valueToStringLink(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *Link) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Link: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Link: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Title = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Key = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GenericLink", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &GenericLink{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.LinkType = &Link_GenericLink{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DashboardLink", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &DashboardLink{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.LinkType = &Link_DashboardLink{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipLink(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GenericLink) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GenericLink: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GenericLink: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Url", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Url = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipLink(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DashboardLink) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DashboardLink: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DashboardLink: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + m.Type = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Type |= DashboardLinkType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TimeRange", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TimeRange = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LogFilters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LogFilters = append(m.LogFilters, &LogFilter{}) + if err := m.LogFilters[len(m.LogFilters)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipLink(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *LogFilter) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LogFilter: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LogFilter: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Key = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthLink + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLink + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Values = append(m.Values, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Op", wireType) + } + m.Op = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLink + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Op |= FilterOperator(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipLink(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthLink + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipLink(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowLink + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowLink + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowLink + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthLink + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupLink + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthLink + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthLink = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowLink = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupLink = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ai_assistant/common/link.vesmsg.go b/pbgo/extschema/schema/ai_assistant/common/link.vesmsg.go new file mode 100644 index 000000000..ffaea9342 --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/common/link.vesmsg.go @@ -0,0 +1,459 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package common + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *DashboardLink) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DashboardLink) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DashboardLink) DeepCopy() *DashboardLink { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DashboardLink{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DashboardLink) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DashboardLink) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DashboardLinkValidator().Validate(ctx, m, opts...) +} + +type ValidateDashboardLink struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDashboardLink) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DashboardLink) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DashboardLink got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["log_filters"]; exists { + + vOpts := append(opts, db.WithValidateField("log_filters")) + for idx, item := range m.GetLogFilters() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_name"]; exists { + + vOpts := append(opts, db.WithValidateField("object_name")) + if err := fv(ctx, m.GetObjectName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["time_range"]; exists { + + vOpts := append(opts, db.WithValidateField("time_range")) + if err := fv(ctx, m.GetTimeRange(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDashboardLinkValidator = func() *ValidateDashboardLink { + v := &ValidateDashboardLink{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func DashboardLinkValidator() db.Validator { + return DefaultDashboardLinkValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GenericLink) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GenericLink) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GenericLink) DeepCopy() *GenericLink { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GenericLink{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GenericLink) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GenericLink) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GenericLinkValidator().Validate(ctx, m, opts...) +} + +type ValidateGenericLink struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGenericLink) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GenericLink) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GenericLink got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["url"]; exists { + + vOpts := append(opts, db.WithValidateField("url")) + if err := fv(ctx, m.GetUrl(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGenericLinkValidator = func() *ValidateGenericLink { + v := &ValidateGenericLink{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GenericLinkValidator() db.Validator { + return DefaultGenericLinkValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Link) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Link) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Link) DeepCopy() *Link { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Link{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Link) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Link) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LinkValidator().Validate(ctx, m, opts...) +} + +type ValidateLink struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateLink) KeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for key") + } + + return validatorFn, nil +} + +func (v *ValidateLink) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Link) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Link got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["key"]; exists { + + vOpts := append(opts, db.WithValidateField("key")) + if err := fv(ctx, m.GetKey(), vOpts...); err != nil { + return err + } + + } + + switch m.GetLinkType().(type) { + case *Link_GenericLink: + if fv, exists := v.FldValidators["link_type.generic_link"]; exists { + val := m.GetLinkType().(*Link_GenericLink).GenericLink + vOpts := append(opts, + db.WithValidateField("link_type"), + db.WithValidateField("generic_link"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *Link_DashboardLink: + if fv, exists := v.FldValidators["link_type.dashboard_link"]; exists { + val := m.GetLinkType().(*Link_DashboardLink).DashboardLink + vOpts := append(opts, + db.WithValidateField("link_type"), + db.WithValidateField("dashboard_link"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["title"]; exists { + + vOpts := append(opts, db.WithValidateField("title")) + if err := fv(ctx, m.GetTitle(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultLinkValidator = func() *ValidateLink { + v := &ValidateLink{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhKey := v.KeyValidationRuleHandler + rulesKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhKey(rulesKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for Link.key: %s", err) + panic(errMsg) + } + v.FldValidators["key"] = vFn + + return v +}() + +func LinkValidator() db.Validator { + return DefaultLinkValidator +} + +// augmented methods on protoc/std generated struct + +func (m *LogFilter) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *LogFilter) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *LogFilter) DeepCopy() *LogFilter { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &LogFilter{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *LogFilter) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *LogFilter) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LogFilterValidator().Validate(ctx, m, opts...) +} + +type ValidateLogFilter struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateLogFilter) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LogFilter) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *LogFilter got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["key"]; exists { + + vOpts := append(opts, db.WithValidateField("key")) + if err := fv(ctx, m.GetKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["op"]; exists { + + vOpts := append(opts, db.WithValidateField("op")) + if err := fv(ctx, m.GetOp(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["values"]; exists { + + vOpts := append(opts, db.WithValidateField("values")) + for idx, item := range m.GetValues() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultLogFilterValidator = func() *ValidateLogFilter { + v := &ValidateLogFilter{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func LogFilterValidator() db.Validator { + return DefaultLogFilterValidator +} diff --git a/pbgo/extschema/schema/ai_assistant/common/pkg.vespkg.go b/pbgo/extschema/schema/ai_assistant/common/pkg.vespkg.go new file mode 100644 index 000000000..6ed1f5e12 --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/common/pkg.vespkg.go @@ -0,0 +1,57 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package common + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ai_assistant.common.DashboardLink"] = DashboardLinkValidator() + vr["ves.io.schema.ai_assistant.common.GenericLink"] = GenericLinkValidator() + vr["ves.io.schema.ai_assistant.common.Link"] = LinkValidator() + vr["ves.io.schema.ai_assistant.common.LogFilter"] = LogFilterValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ai_assistant/explain_log_record/explain_log_record.pb.go b/pbgo/extschema/schema/ai_assistant/explain_log_record/explain_log_record.pb.go new file mode 100644 index 000000000..c30bac9ad --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/explain_log_record/explain_log_record.pb.go @@ -0,0 +1,3898 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ai_assistant/explain_log_record/explain_log_record.proto + +// Explain Log record +// +// x-displayName: "Explain Log Record" +// AI Assistant explain log record response + +package explain_log_record + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Accuracy +// +// x-displayName: "Accuracy" +// Specifies accuracy of the signature +type Accuracy int32 + +const ( + // Low + // + // x-displayName: "Low" + // Specifies low accuracy of the signature + LOW_ACCURACY Accuracy = 0 + // Medium + // + // x-displayName: "Medium" + // Specifies medium accuracy of the signature + MEDIUM_ACCURACY Accuracy = 1 + // High + // + // x-displayName: "High" + // Specifies high accuracy of the signature + HIGH_ACCURACY Accuracy = 2 +) + +var Accuracy_name = map[int32]string{ + 0: "LOW_ACCURACY", + 1: "MEDIUM_ACCURACY", + 2: "HIGH_ACCURACY", +} + +var Accuracy_value = map[string]int32{ + "LOW_ACCURACY": 0, + "MEDIUM_ACCURACY": 1, + "HIGH_ACCURACY": 2, +} + +func (Accuracy) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{0} +} + +// IPReputation +// +// x-displayName: "IP Reputation" +// Specifies IP risk/trustworthiness +type IPReputation int32 + +const ( + // Low + // + // x-displayName: "Low" + // Specifies low IP risk/trustworthiness + LOW_REPUTATION IPReputation = 0 + // High + // + // x-displayName: "High" + // Specifies high IP risk/trustworthiness + HIGH_REPUTATION IPReputation = 1 +) + +var IPReputation_name = map[int32]string{ + 0: "LOW_REPUTATION", + 1: "HIGH_REPUTATION", +} + +var IPReputation_value = map[string]int32{ + "LOW_REPUTATION": 0, + "HIGH_REPUTATION": 1, +} + +func (IPReputation) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{1} +} + +// EnforcementMode +// +// x-displayName: "Enforcement Mode" +// Enforcement mode of WAF +type EnforcementMode int32 + +const ( + // Monitoring + // + // x-displayName: "Monitoring" + // Monitoring mode of waf + MONITORING EnforcementMode = 0 + // Blocking + // + // x-displayName: "Blocking" + // Blocking mode of waf + BLOCKING EnforcementMode = 1 +) + +var EnforcementMode_name = map[int32]string{ + 0: "MONITORING", + 1: "BLOCKING", +} + +var EnforcementMode_value = map[string]int32{ + "MONITORING": 0, + "BLOCKING": 1, +} + +func (EnforcementMode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{2} +} + +// Action +// +// x-displayName: "Action" +// Action taken for the request +type Action int32 + +const ( + // Allow + // + // x-displayName: "Allow" + // The request was allowed to pass + ALLOW Action = 0 + // Block + // + // x-displayName: "Block" + // The request was blocked + BLOCK Action = 1 +) + +var Action_name = map[int32]string{ + 0: "ALLOW", + 1: "BLOCK", +} + +var Action_value = map[string]int32{ + "ALLOW": 0, + "BLOCK": 1, +} + +func (Action) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{3} +} + +// ExplainLogRecordResponse +// +// x-displayName: "Explain Log Record Response" +// Explain log response +type ExplainLogRecordResponse struct { + // summary + // + // x-example: "Request Id 12345 refers to a WAF security event for an HTTP request that was blocked" + // x-displayName: "Summary" + // Log summary + Summary string `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"` + // analysis + // + // x-example: "The request was blocked because Null in request violation was detected" + // x-displayName: "Analysis" + // Log analysis + Analysis string `protobuf:"bytes,2,opt,name=analysis,proto3" json:"analysis,omitempty"` + // actions + // + // x-example: "If you think that this is a false positive you can create exclusion rule.." + // x-displayName: "Actions" + // Follow-up actions + Actions string `protobuf:"bytes,3,opt,name=actions,proto3" json:"actions,omitempty"` + // details + // + // x-displayName: "Details" + // Log details + // + // Types that are valid to be assigned to Details: + // *ExplainLogRecordResponse_WafEventDetails + // *ExplainLogRecordResponse_SvcPolicyEventDetails + Details isExplainLogRecordResponse_Details `protobuf_oneof:"details"` +} + +func (m *ExplainLogRecordResponse) Reset() { *m = ExplainLogRecordResponse{} } +func (*ExplainLogRecordResponse) ProtoMessage() {} +func (*ExplainLogRecordResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{0} +} +func (m *ExplainLogRecordResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ExplainLogRecordResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ExplainLogRecordResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ExplainLogRecordResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ExplainLogRecordResponse.Merge(m, src) +} +func (m *ExplainLogRecordResponse) XXX_Size() int { + return m.Size() +} +func (m *ExplainLogRecordResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ExplainLogRecordResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ExplainLogRecordResponse proto.InternalMessageInfo + +type isExplainLogRecordResponse_Details interface { + isExplainLogRecordResponse_Details() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ExplainLogRecordResponse_WafEventDetails struct { + WafEventDetails *WAFEventDetails `protobuf:"bytes,5,opt,name=waf_event_details,json=wafEventDetails,proto3,oneof" json:"waf_event_details,omitempty"` +} +type ExplainLogRecordResponse_SvcPolicyEventDetails struct { + SvcPolicyEventDetails *SvcPolicyEventDetails `protobuf:"bytes,6,opt,name=svc_policy_event_details,json=svcPolicyEventDetails,proto3,oneof" json:"svc_policy_event_details,omitempty"` +} + +func (*ExplainLogRecordResponse_WafEventDetails) isExplainLogRecordResponse_Details() {} +func (*ExplainLogRecordResponse_SvcPolicyEventDetails) isExplainLogRecordResponse_Details() {} + +func (m *ExplainLogRecordResponse) GetDetails() isExplainLogRecordResponse_Details { + if m != nil { + return m.Details + } + return nil +} + +func (m *ExplainLogRecordResponse) GetSummary() string { + if m != nil { + return m.Summary + } + return "" +} + +func (m *ExplainLogRecordResponse) GetAnalysis() string { + if m != nil { + return m.Analysis + } + return "" +} + +func (m *ExplainLogRecordResponse) GetActions() string { + if m != nil { + return m.Actions + } + return "" +} + +func (m *ExplainLogRecordResponse) GetWafEventDetails() *WAFEventDetails { + if x, ok := m.GetDetails().(*ExplainLogRecordResponse_WafEventDetails); ok { + return x.WafEventDetails + } + return nil +} + +func (m *ExplainLogRecordResponse) GetSvcPolicyEventDetails() *SvcPolicyEventDetails { + if x, ok := m.GetDetails().(*ExplainLogRecordResponse_SvcPolicyEventDetails); ok { + return x.SvcPolicyEventDetails + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ExplainLogRecordResponse) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ExplainLogRecordResponse_WafEventDetails)(nil), + (*ExplainLogRecordResponse_SvcPolicyEventDetails)(nil), + } +} + +// WAFEventDetails +// +// x-displayName: "WAF Event Details" +// WAF security events details +type WAFEventDetails struct { + // action + // + // x-example: "Block" + // x-displayName: "Action" + // Event action + Action Action `protobuf:"varint,8,opt,name=action,proto3,enum=ves.io.schema.ai_assistant.explain_log_record.Action" json:"action,omitempty"` + // app_firewall + // + // x-example: "app-firewall" + // x-displayName: "App Firewall" + // App Firewall name + AppFirewall string `protobuf:"bytes,2,opt,name=app_firewall,json=appFirewall,proto3" json:"app_firewall,omitempty"` + // enforcement_mode + // + // x-example: "Monitoring" + // x-displayName: "Enforcement Mode" + // Enforcement mode + EnforcementMode EnforcementMode `protobuf:"varint,3,opt,name=enforcement_mode,json=enforcementMode,proto3,enum=ves.io.schema.ai_assistant.explain_log_record.EnforcementMode" json:"enforcement_mode,omitempty"` + // signatures + // + // x-displayName: "Signatures" + // The signatures that were detected in the request + Signatures []*Signature `protobuf:"bytes,4,rep,name=signatures,proto3" json:"signatures,omitempty"` + // violations + // + // x-displayName: "Violations" + // The violations that were detected in the request + Violations []*Violation `protobuf:"bytes,5,rep,name=violations,proto3" json:"violations,omitempty"` + // threat_campaigns + // + // x-displayName: "Threat Campaign" + // Threat campaigns that were detected in the request + ThreatCampaigns []*ThreatCampaign `protobuf:"bytes,9,rep,name=threat_campaigns,json=threatCampaigns,proto3" json:"threat_campaigns,omitempty"` + // bots + // + // x-displayName: "Bot" + // Bot that were detected in the request + Bot *Bot `protobuf:"bytes,7,opt,name=bot,proto3" json:"bot,omitempty"` +} + +func (m *WAFEventDetails) Reset() { *m = WAFEventDetails{} } +func (*WAFEventDetails) ProtoMessage() {} +func (*WAFEventDetails) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{1} +} +func (m *WAFEventDetails) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *WAFEventDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_WAFEventDetails.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *WAFEventDetails) XXX_Merge(src proto.Message) { + xxx_messageInfo_WAFEventDetails.Merge(m, src) +} +func (m *WAFEventDetails) XXX_Size() int { + return m.Size() +} +func (m *WAFEventDetails) XXX_DiscardUnknown() { + xxx_messageInfo_WAFEventDetails.DiscardUnknown(m) +} + +var xxx_messageInfo_WAFEventDetails proto.InternalMessageInfo + +func (m *WAFEventDetails) GetAction() Action { + if m != nil { + return m.Action + } + return ALLOW +} + +func (m *WAFEventDetails) GetAppFirewall() string { + if m != nil { + return m.AppFirewall + } + return "" +} + +func (m *WAFEventDetails) GetEnforcementMode() EnforcementMode { + if m != nil { + return m.EnforcementMode + } + return MONITORING +} + +func (m *WAFEventDetails) GetSignatures() []*Signature { + if m != nil { + return m.Signatures + } + return nil +} + +func (m *WAFEventDetails) GetViolations() []*Violation { + if m != nil { + return m.Violations + } + return nil +} + +func (m *WAFEventDetails) GetThreatCampaigns() []*ThreatCampaign { + if m != nil { + return m.ThreatCampaigns + } + return nil +} + +func (m *WAFEventDetails) GetBot() *Bot { + if m != nil { + return m.Bot + } + return nil +} + +// SvcPolicyEventDetails +// +// x-displayName: "Service Policy Event Details" +// Service policy security events details +type SvcPolicyEventDetails struct { + // action + // + // x-example: "Block" + // x-displayName: "Action" + // Event action + Action Action `protobuf:"varint,8,opt,name=action,proto3,enum=ves.io.schema.ai_assistant.explain_log_record.Action" json:"action,omitempty"` + // policy + // + // x-example: "policy-1" + // x-displayName: "Policy" + // Policy name + Policy string `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"` + // policy namespace + // + // x-example: "data-path" + // x-displayName: "Policy namespace" + // Policy namespace + PolicyNamespace string `protobuf:"bytes,3,opt,name=policy_namespace,json=policyNamespace,proto3" json:"policy_namespace,omitempty"` + // policy rule + // + // x-example: "policy-rule-1" + // x-displayName: "Policy rule" + // Policy rule name + PolicyRule string `protobuf:"bytes,4,opt,name=policy_rule,json=policyRule,proto3" json:"policy_rule,omitempty"` + // ip threat categories + // + // x-example: "SPAM_SOURCES,PHISHING" + // x-displayName: "IP threat categories" + // IP threat categories + IpThreatCategories []policy.IPThreatCategory `protobuf:"varint,9,rep,packed,name=ip_threat_categories,json=ipThreatCategories,proto3,enum=ves.io.schema.policy.IPThreatCategory" json:"ip_threat_categories,omitempty"` + // ip trustworthiness + // + // x-example: "LOW" + // x-displayName: "IP trustworthiness" + // IP trustworthiness + IpTrustworthiness IPReputation `protobuf:"varint,6,opt,name=ip_trustworthiness,json=ipTrustworthiness,proto3,enum=ves.io.schema.ai_assistant.explain_log_record.IPReputation" json:"ip_trustworthiness,omitempty"` + // ip risk + // + // x-example: "HIGH" + // x-displayName: "IP risk" + // IP risk + IpRisk IPReputation `protobuf:"varint,7,opt,name=ip_risk,json=ipRisk,proto3,enum=ves.io.schema.ai_assistant.explain_log_record.IPReputation" json:"ip_risk,omitempty"` +} + +func (m *SvcPolicyEventDetails) Reset() { *m = SvcPolicyEventDetails{} } +func (*SvcPolicyEventDetails) ProtoMessage() {} +func (*SvcPolicyEventDetails) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{2} +} +func (m *SvcPolicyEventDetails) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SvcPolicyEventDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_SvcPolicyEventDetails.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *SvcPolicyEventDetails) XXX_Merge(src proto.Message) { + xxx_messageInfo_SvcPolicyEventDetails.Merge(m, src) +} +func (m *SvcPolicyEventDetails) XXX_Size() int { + return m.Size() +} +func (m *SvcPolicyEventDetails) XXX_DiscardUnknown() { + xxx_messageInfo_SvcPolicyEventDetails.DiscardUnknown(m) +} + +var xxx_messageInfo_SvcPolicyEventDetails proto.InternalMessageInfo + +func (m *SvcPolicyEventDetails) GetAction() Action { + if m != nil { + return m.Action + } + return ALLOW +} + +func (m *SvcPolicyEventDetails) GetPolicy() string { + if m != nil { + return m.Policy + } + return "" +} + +func (m *SvcPolicyEventDetails) GetPolicyNamespace() string { + if m != nil { + return m.PolicyNamespace + } + return "" +} + +func (m *SvcPolicyEventDetails) GetPolicyRule() string { + if m != nil { + return m.PolicyRule + } + return "" +} + +func (m *SvcPolicyEventDetails) GetIpThreatCategories() []policy.IPThreatCategory { + if m != nil { + return m.IpThreatCategories + } + return nil +} + +func (m *SvcPolicyEventDetails) GetIpTrustworthiness() IPReputation { + if m != nil { + return m.IpTrustworthiness + } + return LOW_REPUTATION +} + +func (m *SvcPolicyEventDetails) GetIpRisk() IPReputation { + if m != nil { + return m.IpRisk + } + return LOW_REPUTATION +} + +// Signature +// +// x-displayName: "Signature" +// Signature details +type Signature struct { + // id + // + // x-example: "200013569" + // x-displayName: "Signature ID" + // Signature ID + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // name + // + // x-example: "shell command processor" + // x-displayName: "Name" + // Signature name + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // attack_type + // + // x-example: "Command Execution" + // x-displayName: "Attack Type" + // Attack type of the signature + AttackType string `protobuf:"bytes,3,opt,name=attack_type,json=attackType,proto3" json:"attack_type,omitempty"` + // accuracy + // + // x-example: "Medium" + // x-displayName: "Accuracy" + // Accuracy of the signature + Accuracy Accuracy `protobuf:"varint,4,opt,name=accuracy,proto3,enum=ves.io.schema.ai_assistant.explain_log_record.Accuracy" json:"accuracy,omitempty"` + // context + // + // x-example: "parameter" + // x-displayName: "Context" + // Context of the signature + Context string `protobuf:"bytes,5,opt,name=context,proto3" json:"context,omitempty"` + // matching_info + // + // x-example: "Matched 7 chars on offset 6 against value: Token" + // x-displayName: "Matching Info" + // Matching info + MatchingInfo string `protobuf:"bytes,6,opt,name=matching_info,json=matchingInfo,proto3" json:"matching_info,omitempty"` +} + +func (m *Signature) Reset() { *m = Signature{} } +func (*Signature) ProtoMessage() {} +func (*Signature) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{3} +} +func (m *Signature) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Signature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Signature.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Signature) XXX_Merge(src proto.Message) { + xxx_messageInfo_Signature.Merge(m, src) +} +func (m *Signature) XXX_Size() int { + return m.Size() +} +func (m *Signature) XXX_DiscardUnknown() { + xxx_messageInfo_Signature.DiscardUnknown(m) +} + +var xxx_messageInfo_Signature proto.InternalMessageInfo + +func (m *Signature) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *Signature) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *Signature) GetAttackType() string { + if m != nil { + return m.AttackType + } + return "" +} + +func (m *Signature) GetAccuracy() Accuracy { + if m != nil { + return m.Accuracy + } + return LOW_ACCURACY +} + +func (m *Signature) GetContext() string { + if m != nil { + return m.Context + } + return "" +} + +func (m *Signature) GetMatchingInfo() string { + if m != nil { + return m.MatchingInfo + } + return "" +} + +// Violation +// +// x-displayName: "Violation" +// Violation details +type Violation struct { + // name + // + // x-example: "Illegal filetype" + // x-displayName: "Name" + // Violation name + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // attack_type + // + // x-example: "Command Execution" + // x-displayName: "Attack Type" + // Attack type of the violation + AttackType string `protobuf:"bytes,2,opt,name=attack_type,json=attackType,proto3" json:"attack_type,omitempty"` + // context + // + // x-example: "parameter" + // x-displayName: "Context" + // Context of the violation + Context string `protobuf:"bytes,3,opt,name=context,proto3" json:"context,omitempty"` + // matching_info + // + // x-example: "File extension was dat" + // x-displayName: "Matching Info" + // Matching info + MatchingInfo string `protobuf:"bytes,4,opt,name=matching_info,json=matchingInfo,proto3" json:"matching_info,omitempty"` +} + +func (m *Violation) Reset() { *m = Violation{} } +func (*Violation) ProtoMessage() {} +func (*Violation) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{4} +} +func (m *Violation) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Violation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Violation.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Violation) XXX_Merge(src proto.Message) { + xxx_messageInfo_Violation.Merge(m, src) +} +func (m *Violation) XXX_Size() int { + return m.Size() +} +func (m *Violation) XXX_DiscardUnknown() { + xxx_messageInfo_Violation.DiscardUnknown(m) +} + +var xxx_messageInfo_Violation proto.InternalMessageInfo + +func (m *Violation) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *Violation) GetAttackType() string { + if m != nil { + return m.AttackType + } + return "" +} + +func (m *Violation) GetContext() string { + if m != nil { + return m.Context + } + return "" +} + +func (m *Violation) GetMatchingInfo() string { + if m != nil { + return m.MatchingInfo + } + return "" +} + +// ThreatCampaign +// +// x-displayName: "Threat Campaign" +// Threat campaign details +type ThreatCampaign struct { + // id + // + // x-example: "cmpe1ab3d4feddb3c691bc68201d253be66" + // x-displayName: "ThreatCampaign ID" + // ThreatCampaign ID + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // name + // + // x-example: "Nette Framework Remote Code Execution - oshi" + // x-displayName: "Name" + // ThreatCampaign name + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // attack_type + // + // x-example: "Command Execution" + // x-displayName: "Attack Type" + // Attack type of threat campaign + AttackType string `protobuf:"bytes,3,opt,name=attack_type,json=attackType,proto3" json:"attack_type,omitempty"` +} + +func (m *ThreatCampaign) Reset() { *m = ThreatCampaign{} } +func (*ThreatCampaign) ProtoMessage() {} +func (*ThreatCampaign) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{5} +} +func (m *ThreatCampaign) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ThreatCampaign) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ThreatCampaign.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ThreatCampaign) XXX_Merge(src proto.Message) { + xxx_messageInfo_ThreatCampaign.Merge(m, src) +} +func (m *ThreatCampaign) XXX_Size() int { + return m.Size() +} +func (m *ThreatCampaign) XXX_DiscardUnknown() { + xxx_messageInfo_ThreatCampaign.DiscardUnknown(m) +} + +var xxx_messageInfo_ThreatCampaign proto.InternalMessageInfo + +func (m *ThreatCampaign) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *ThreatCampaign) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ThreatCampaign) GetAttackType() string { + if m != nil { + return m.AttackType + } + return "" +} + +// Bot +// +// x-displayName: "Bot" +// Bot details +type Bot struct { + // name + // + // x-example: "curl" + // x-displayName: "Name" + // Bot name + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // name + // + // x-example: "HTTP Library" + // x-displayName: "Type" + // Bot type + Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` + // classification + // + // x-example: "suspicious" + // x-displayName: "Classification" + // Bot classification + Classification string `protobuf:"bytes,3,opt,name=classification,proto3" json:"classification,omitempty"` +} + +func (m *Bot) Reset() { *m = Bot{} } +func (*Bot) ProtoMessage() {} +func (*Bot) Descriptor() ([]byte, []int) { + return fileDescriptor_372bf5d0c54c0c62, []int{6} +} +func (m *Bot) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Bot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Bot.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Bot) XXX_Merge(src proto.Message) { + xxx_messageInfo_Bot.Merge(m, src) +} +func (m *Bot) XXX_Size() int { + return m.Size() +} +func (m *Bot) XXX_DiscardUnknown() { + xxx_messageInfo_Bot.DiscardUnknown(m) +} + +var xxx_messageInfo_Bot proto.InternalMessageInfo + +func (m *Bot) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *Bot) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +func (m *Bot) GetClassification() string { + if m != nil { + return m.Classification + } + return "" +} + +func init() { + proto.RegisterEnum("ves.io.schema.ai_assistant.explain_log_record.Accuracy", Accuracy_name, Accuracy_value) + proto.RegisterEnum("ves.io.schema.ai_assistant.explain_log_record.IPReputation", IPReputation_name, IPReputation_value) + proto.RegisterEnum("ves.io.schema.ai_assistant.explain_log_record.EnforcementMode", EnforcementMode_name, EnforcementMode_value) + proto.RegisterEnum("ves.io.schema.ai_assistant.explain_log_record.Action", Action_name, Action_value) + proto.RegisterType((*ExplainLogRecordResponse)(nil), "ves.io.schema.ai_assistant.explain_log_record.ExplainLogRecordResponse") + proto.RegisterType((*WAFEventDetails)(nil), "ves.io.schema.ai_assistant.explain_log_record.WAFEventDetails") + proto.RegisterType((*SvcPolicyEventDetails)(nil), "ves.io.schema.ai_assistant.explain_log_record.SvcPolicyEventDetails") + proto.RegisterType((*Signature)(nil), "ves.io.schema.ai_assistant.explain_log_record.Signature") + proto.RegisterType((*Violation)(nil), "ves.io.schema.ai_assistant.explain_log_record.Violation") + proto.RegisterType((*ThreatCampaign)(nil), "ves.io.schema.ai_assistant.explain_log_record.ThreatCampaign") + proto.RegisterType((*Bot)(nil), "ves.io.schema.ai_assistant.explain_log_record.Bot") +} + +func init() { + proto.RegisterFile("ves.io/schema/ai_assistant/explain_log_record/explain_log_record.proto", fileDescriptor_372bf5d0c54c0c62) +} + +var fileDescriptor_372bf5d0c54c0c62 = []byte{ + // 1070 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x96, 0x4d, 0x6f, 0xe3, 0x44, + 0x18, 0xc7, 0xe3, 0xc4, 0x4d, 0x93, 0xa7, 0xdd, 0xc4, 0x3b, 0xb0, 0xc8, 0x2a, 0xc8, 0x94, 0x20, + 0xad, 0x4a, 0xa5, 0x26, 0x52, 0x10, 0x5a, 0x24, 0x04, 0x52, 0xfa, 0xb6, 0x4d, 0x69, 0x9b, 0xca, + 0x9b, 0x52, 0xe0, 0x62, 0x4d, 0x9d, 0x89, 0x33, 0xd4, 0xf1, 0x8c, 0x3c, 0x93, 0xb4, 0x39, 0x2d, + 0x1f, 0x81, 0x2b, 0xdf, 0x80, 0xef, 0xc0, 0x17, 0xe0, 0xd8, 0xe3, 0x9e, 0x10, 0x4d, 0x39, 0x70, + 0xac, 0xf8, 0x04, 0xc8, 0x63, 0x27, 0x4d, 0xb2, 0x41, 0x10, 0xd8, 0xdb, 0x3c, 0xff, 0x99, 0xe7, + 0x37, 0xf3, 0xbc, 0xcc, 0xd8, 0xb0, 0xdf, 0x27, 0xa2, 0x4c, 0x59, 0x45, 0xb8, 0x1d, 0xd2, 0xc5, + 0x15, 0x4c, 0x1d, 0x2c, 0x04, 0x15, 0x12, 0x07, 0xb2, 0x42, 0xae, 0xb9, 0x8f, 0x69, 0xe0, 0xf8, + 0xcc, 0x73, 0x42, 0xe2, 0xb2, 0xb0, 0x35, 0x47, 0x2a, 0xf3, 0x90, 0x49, 0x86, 0xb6, 0x62, 0x4e, + 0x39, 0xe6, 0x94, 0x27, 0x39, 0xe5, 0xd7, 0x9d, 0xd6, 0xb6, 0x3c, 0x2a, 0x3b, 0xbd, 0x8b, 0xb2, + 0xcb, 0xba, 0x15, 0x8f, 0x79, 0xac, 0xa2, 0x28, 0x17, 0xbd, 0xb6, 0xb2, 0x94, 0xa1, 0x46, 0x31, + 0x7d, 0xed, 0xdd, 0xe9, 0x53, 0x32, 0x2e, 0x29, 0x0b, 0x44, 0x32, 0xb9, 0x3e, 0x3d, 0xc9, 0x99, + 0x4f, 0xdd, 0x41, 0x45, 0x0e, 0x38, 0x19, 0xad, 0x78, 0x6f, 0x7a, 0x45, 0x1f, 0xfb, 0xb4, 0x85, + 0x25, 0x99, 0xef, 0xdf, 0xa7, 0xe4, 0xca, 0x99, 0xda, 0xa1, 0x74, 0x9f, 0x06, 0x73, 0x2f, 0x0e, + 0xe2, 0x88, 0x79, 0xb6, 0x0a, 0xc1, 0x26, 0x82, 0xb3, 0x40, 0x10, 0x64, 0xc2, 0xb2, 0xe8, 0x75, + 0xbb, 0x38, 0x1c, 0x98, 0xda, 0xba, 0xb6, 0x91, 0xb7, 0x47, 0x26, 0x5a, 0x83, 0x1c, 0x0e, 0xb0, + 0x3f, 0x10, 0x54, 0x98, 0x69, 0x35, 0x35, 0xb6, 0x23, 0x2f, 0xec, 0xaa, 0x3d, 0xcc, 0x4c, 0xec, + 0x95, 0x98, 0xc8, 0x87, 0xc7, 0x57, 0xb8, 0xed, 0x90, 0x3e, 0x09, 0xa4, 0xd3, 0x22, 0x12, 0x53, + 0x5f, 0x98, 0x4b, 0xeb, 0xda, 0xc6, 0x4a, 0xf5, 0x8b, 0xf2, 0x42, 0x59, 0x2e, 0x9f, 0xd7, 0xf6, + 0xf7, 0x22, 0xcc, 0x6e, 0x4c, 0x39, 0x48, 0xd9, 0xc5, 0x2b, 0xdc, 0x9e, 0x94, 0xd0, 0x4b, 0x30, + 0x45, 0xdf, 0x75, 0xe2, 0xa4, 0xcd, 0x6c, 0x9a, 0x55, 0x9b, 0xee, 0x2e, 0xb8, 0xe9, 0x8b, 0xbe, + 0x7b, 0xaa, 0x68, 0x33, 0x5b, 0x3f, 0x11, 0xf3, 0x26, 0xb6, 0x8b, 0xb0, 0x9c, 0xec, 0x87, 0xf4, + 0x9b, 0x9f, 0x35, 0xfd, 0x50, 0xcf, 0xe9, 0xc6, 0x52, 0xe9, 0x57, 0x1d, 0x8a, 0x33, 0xc7, 0x47, + 0xc7, 0x90, 0x8d, 0x93, 0x64, 0xe6, 0xd6, 0xb5, 0x8d, 0x42, 0xf5, 0x93, 0x05, 0x4f, 0x56, 0x53, + 0xce, 0x76, 0x02, 0x41, 0x1f, 0xc0, 0x2a, 0xe6, 0xdc, 0x69, 0xd3, 0x90, 0x5c, 0x61, 0xdf, 0x4f, + 0x4a, 0xb4, 0x82, 0x39, 0xdf, 0x4f, 0x24, 0x44, 0xc1, 0x20, 0x41, 0x9b, 0x85, 0x2e, 0xe9, 0x46, + 0x89, 0xe9, 0xb2, 0x16, 0x51, 0xe5, 0x2a, 0x2c, 0x5c, 0x8a, 0xbd, 0x07, 0xcc, 0x31, 0x6b, 0x11, + 0xbb, 0x48, 0xa6, 0x05, 0xf4, 0x35, 0x80, 0xa0, 0x5e, 0x80, 0x65, 0x2f, 0x24, 0xc2, 0xd4, 0xd7, + 0x33, 0x1b, 0x2b, 0xd5, 0x4f, 0x17, 0x4d, 0xfd, 0x08, 0x60, 0x4f, 0xb0, 0x22, 0x72, 0x9f, 0x32, + 0x1f, 0xc7, 0xdd, 0xb6, 0xf4, 0x9f, 0xc8, 0x5f, 0x8d, 0x00, 0xf6, 0x04, 0x0b, 0x75, 0xc0, 0x90, + 0x9d, 0x90, 0x60, 0xe9, 0xb8, 0xb8, 0xcb, 0x31, 0xf5, 0x02, 0x61, 0xe6, 0x15, 0xff, 0xf3, 0x05, + 0xf9, 0x4d, 0x85, 0xd9, 0x49, 0x28, 0x76, 0x51, 0x4e, 0xd9, 0x02, 0xed, 0x42, 0xe6, 0x82, 0x49, + 0x73, 0x59, 0x75, 0x64, 0x75, 0x41, 0xf8, 0x36, 0x93, 0x76, 0xe4, 0x7e, 0xa8, 0xe7, 0x34, 0x23, + 0x7d, 0xa8, 0xe7, 0xb2, 0xc6, 0x72, 0xe9, 0xcf, 0x0c, 0x3c, 0x99, 0xdb, 0xaa, 0x6f, 0xba, 0xcd, + 0xde, 0x81, 0x6c, 0x7c, 0xbb, 0x92, 0x06, 0x4b, 0x2c, 0xf4, 0x11, 0x18, 0xc9, 0xad, 0x0b, 0x70, + 0x97, 0x08, 0x8e, 0x5d, 0x92, 0x3c, 0x05, 0xc5, 0x58, 0x3f, 0x19, 0xc9, 0xe8, 0x7d, 0x58, 0x49, + 0x96, 0x86, 0x3d, 0x9f, 0x98, 0xba, 0x5a, 0x05, 0xb1, 0x64, 0xf7, 0xfc, 0xa8, 0x79, 0xde, 0xa6, + 0xdc, 0x19, 0xd7, 0x42, 0x12, 0x8f, 0x85, 0x94, 0xc4, 0xc5, 0x28, 0x54, 0x9f, 0xce, 0x04, 0x10, + 0x3b, 0x96, 0xeb, 0xa7, 0xa3, 0xac, 0xab, 0xf5, 0x03, 0x1b, 0x51, 0x3e, 0xa5, 0x50, 0x22, 0xd0, + 0x77, 0x80, 0x22, 0x72, 0xd8, 0x13, 0xf2, 0x8a, 0x85, 0xb2, 0x43, 0x03, 0x22, 0xe2, 0x97, 0xa1, + 0x50, 0xfd, 0x6c, 0xc1, 0xc4, 0xd4, 0x4f, 0x6d, 0xc2, 0x7b, 0x32, 0xee, 0xa3, 0xc7, 0x94, 0x37, + 0xa7, 0xa9, 0xa8, 0x09, 0xcb, 0x94, 0x3b, 0x21, 0x15, 0x97, 0xaa, 0xd0, 0xff, 0x73, 0x83, 0x2c, + 0xe5, 0x36, 0x15, 0x97, 0xe3, 0xa2, 0x2f, 0x19, 0xd9, 0xd2, 0xef, 0x1a, 0xe4, 0xc7, 0x97, 0x04, + 0x15, 0x20, 0x4d, 0x5b, 0xc9, 0xa3, 0x9d, 0xa6, 0x2d, 0x84, 0x40, 0x8f, 0x4a, 0x91, 0xd4, 0x49, + 0x8d, 0xa3, 0xd4, 0x63, 0x29, 0xb1, 0x7b, 0xe9, 0x44, 0x1f, 0x94, 0xa4, 0x40, 0x10, 0x4b, 0xcd, + 0x01, 0x27, 0xe8, 0x05, 0xe4, 0xb0, 0xeb, 0xf6, 0x42, 0xec, 0x0e, 0x54, 0x61, 0x0a, 0xd5, 0x67, + 0x0b, 0xf7, 0x4b, 0xec, 0x6e, 0x8f, 0x41, 0xd1, 0xd7, 0xc1, 0x65, 0x81, 0x24, 0xd7, 0x52, 0xbd, + 0xfc, 0x79, 0x7b, 0x64, 0xa2, 0x0f, 0xe1, 0x51, 0x17, 0x4b, 0xb7, 0x43, 0x03, 0xcf, 0xa1, 0x41, + 0x9b, 0xa9, 0x52, 0xe4, 0xed, 0xd5, 0x91, 0x58, 0x0f, 0xda, 0xac, 0xf4, 0x12, 0xf2, 0xe3, 0x0b, + 0x3b, 0x8e, 0x4a, 0xfb, 0xfb, 0xa8, 0xd2, 0xaf, 0x45, 0x35, 0x71, 0x80, 0xcc, 0x3f, 0x1c, 0x40, + 0x9f, 0x73, 0x80, 0x33, 0x28, 0x4c, 0xdf, 0xe8, 0x37, 0x92, 0xeb, 0xd2, 0x19, 0x64, 0xb6, 0x99, + 0x9c, 0x1b, 0x11, 0x02, 0x7d, 0x22, 0x14, 0x35, 0x46, 0x4f, 0xa1, 0xe0, 0xfa, 0x51, 0xea, 0xdb, + 0xd4, 0x55, 0xb9, 0x48, 0x90, 0x33, 0xea, 0xe6, 0x2e, 0xe4, 0x46, 0x35, 0x40, 0x06, 0xac, 0x1e, + 0x35, 0xce, 0x9d, 0xda, 0xce, 0xce, 0x99, 0x5d, 0xdb, 0xf9, 0xc6, 0x48, 0xa1, 0xb7, 0xa0, 0x78, + 0xbc, 0xb7, 0x5b, 0x3f, 0x3b, 0x7e, 0x10, 0x35, 0xf4, 0x18, 0x1e, 0x1d, 0xd4, 0x9f, 0x1f, 0x3c, + 0x48, 0xe9, 0xcd, 0x67, 0xb0, 0x3a, 0xd9, 0x7f, 0x08, 0x41, 0x21, 0x22, 0xd9, 0x7b, 0xa7, 0x67, + 0xcd, 0x5a, 0xb3, 0xde, 0x38, 0x89, 0x59, 0xca, 0x6d, 0x42, 0xd4, 0x36, 0x2b, 0x50, 0x9c, 0xf9, + 0x3a, 0xa0, 0x02, 0xc0, 0x71, 0xe3, 0xa4, 0xde, 0x6c, 0xd8, 0xf5, 0x93, 0xe7, 0x46, 0x0a, 0xad, + 0x42, 0x6e, 0xfb, 0xa8, 0xb1, 0xf3, 0x65, 0x64, 0x69, 0x9b, 0x16, 0x64, 0xe3, 0x37, 0x06, 0xe5, + 0x61, 0xa9, 0x76, 0x74, 0xd4, 0x38, 0x37, 0x52, 0xd1, 0x50, 0x2d, 0x31, 0xb4, 0xed, 0x1f, 0xb5, + 0x9b, 0x5b, 0x2b, 0xf5, 0xea, 0xd6, 0x4a, 0xdd, 0xdf, 0x5a, 0xda, 0xf7, 0x43, 0x4b, 0xfb, 0x69, + 0x68, 0x69, 0xbf, 0x0c, 0x2d, 0xed, 0x66, 0x68, 0x69, 0xbf, 0x0d, 0x2d, 0xed, 0x8f, 0xa1, 0x95, + 0xba, 0x1f, 0x5a, 0xda, 0x0f, 0x77, 0x56, 0xea, 0xe6, 0xce, 0x4a, 0xbd, 0xba, 0xb3, 0x52, 0xdf, + 0xba, 0x1e, 0xe3, 0x97, 0x5e, 0xb9, 0xcf, 0x7c, 0x49, 0xc2, 0x10, 0x97, 0x7b, 0xa2, 0xa2, 0x06, + 0x6d, 0x16, 0x76, 0xb7, 0x78, 0xc8, 0xfa, 0xb4, 0x45, 0xc2, 0xad, 0xd1, 0x74, 0x85, 0x5f, 0x78, + 0xac, 0x42, 0xae, 0x65, 0xf2, 0xdb, 0xf4, 0xef, 0x7e, 0x20, 0x2f, 0xb2, 0xea, 0x8f, 0xea, 0xe3, + 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0xc2, 0xa2, 0x45, 0xe2, 0x78, 0x0a, 0x00, 0x00, +} + +func (x Accuracy) String() string { + s, ok := Accuracy_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x IPReputation) String() string { + s, ok := IPReputation_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x EnforcementMode) String() string { + s, ok := EnforcementMode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x Action) String() string { + s, ok := Action_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ExplainLogRecordResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ExplainLogRecordResponse) + if !ok { + that2, ok := that.(ExplainLogRecordResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Summary != that1.Summary { + return false + } + if this.Analysis != that1.Analysis { + return false + } + if this.Actions != that1.Actions { + return false + } + if that1.Details == nil { + if this.Details != nil { + return false + } + } else if this.Details == nil { + return false + } else if !this.Details.Equal(that1.Details) { + return false + } + return true +} +func (this *ExplainLogRecordResponse_WafEventDetails) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ExplainLogRecordResponse_WafEventDetails) + if !ok { + that2, ok := that.(ExplainLogRecordResponse_WafEventDetails) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.WafEventDetails.Equal(that1.WafEventDetails) { + return false + } + return true +} +func (this *ExplainLogRecordResponse_SvcPolicyEventDetails) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ExplainLogRecordResponse_SvcPolicyEventDetails) + if !ok { + that2, ok := that.(ExplainLogRecordResponse_SvcPolicyEventDetails) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SvcPolicyEventDetails.Equal(that1.SvcPolicyEventDetails) { + return false + } + return true +} +func (this *WAFEventDetails) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*WAFEventDetails) + if !ok { + that2, ok := that.(WAFEventDetails) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Action != that1.Action { + return false + } + if this.AppFirewall != that1.AppFirewall { + return false + } + if this.EnforcementMode != that1.EnforcementMode { + return false + } + if len(this.Signatures) != len(that1.Signatures) { + return false + } + for i := range this.Signatures { + if !this.Signatures[i].Equal(that1.Signatures[i]) { + return false + } + } + if len(this.Violations) != len(that1.Violations) { + return false + } + for i := range this.Violations { + if !this.Violations[i].Equal(that1.Violations[i]) { + return false + } + } + if len(this.ThreatCampaigns) != len(that1.ThreatCampaigns) { + return false + } + for i := range this.ThreatCampaigns { + if !this.ThreatCampaigns[i].Equal(that1.ThreatCampaigns[i]) { + return false + } + } + if !this.Bot.Equal(that1.Bot) { + return false + } + return true +} +func (this *SvcPolicyEventDetails) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SvcPolicyEventDetails) + if !ok { + that2, ok := that.(SvcPolicyEventDetails) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Action != that1.Action { + return false + } + if this.Policy != that1.Policy { + return false + } + if this.PolicyNamespace != that1.PolicyNamespace { + return false + } + if this.PolicyRule != that1.PolicyRule { + return false + } + if len(this.IpThreatCategories) != len(that1.IpThreatCategories) { + return false + } + for i := range this.IpThreatCategories { + if this.IpThreatCategories[i] != that1.IpThreatCategories[i] { + return false + } + } + if this.IpTrustworthiness != that1.IpTrustworthiness { + return false + } + if this.IpRisk != that1.IpRisk { + return false + } + return true +} +func (this *Signature) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Signature) + if !ok { + that2, ok := that.(Signature) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Id != that1.Id { + return false + } + if this.Name != that1.Name { + return false + } + if this.AttackType != that1.AttackType { + return false + } + if this.Accuracy != that1.Accuracy { + return false + } + if this.Context != that1.Context { + return false + } + if this.MatchingInfo != that1.MatchingInfo { + return false + } + return true +} +func (this *Violation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Violation) + if !ok { + that2, ok := that.(Violation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Name != that1.Name { + return false + } + if this.AttackType != that1.AttackType { + return false + } + if this.Context != that1.Context { + return false + } + if this.MatchingInfo != that1.MatchingInfo { + return false + } + return true +} +func (this *ThreatCampaign) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ThreatCampaign) + if !ok { + that2, ok := that.(ThreatCampaign) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Id != that1.Id { + return false + } + if this.Name != that1.Name { + return false + } + if this.AttackType != that1.AttackType { + return false + } + return true +} +func (this *Bot) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Bot) + if !ok { + that2, ok := that.(Bot) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Name != that1.Name { + return false + } + if this.Type != that1.Type { + return false + } + if this.Classification != that1.Classification { + return false + } + return true +} +func (this *ExplainLogRecordResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&explain_log_record.ExplainLogRecordResponse{") + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + s = append(s, "Analysis: "+fmt.Sprintf("%#v", this.Analysis)+",\n") + s = append(s, "Actions: "+fmt.Sprintf("%#v", this.Actions)+",\n") + if this.Details != nil { + s = append(s, "Details: "+fmt.Sprintf("%#v", this.Details)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ExplainLogRecordResponse_WafEventDetails) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&explain_log_record.ExplainLogRecordResponse_WafEventDetails{` + + `WafEventDetails:` + fmt.Sprintf("%#v", this.WafEventDetails) + `}`}, ", ") + return s +} +func (this *ExplainLogRecordResponse_SvcPolicyEventDetails) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&explain_log_record.ExplainLogRecordResponse_SvcPolicyEventDetails{` + + `SvcPolicyEventDetails:` + fmt.Sprintf("%#v", this.SvcPolicyEventDetails) + `}`}, ", ") + return s +} +func (this *WAFEventDetails) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&explain_log_record.WAFEventDetails{") + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + s = append(s, "AppFirewall: "+fmt.Sprintf("%#v", this.AppFirewall)+",\n") + s = append(s, "EnforcementMode: "+fmt.Sprintf("%#v", this.EnforcementMode)+",\n") + if this.Signatures != nil { + s = append(s, "Signatures: "+fmt.Sprintf("%#v", this.Signatures)+",\n") + } + if this.Violations != nil { + s = append(s, "Violations: "+fmt.Sprintf("%#v", this.Violations)+",\n") + } + if this.ThreatCampaigns != nil { + s = append(s, "ThreatCampaigns: "+fmt.Sprintf("%#v", this.ThreatCampaigns)+",\n") + } + if this.Bot != nil { + s = append(s, "Bot: "+fmt.Sprintf("%#v", this.Bot)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SvcPolicyEventDetails) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&explain_log_record.SvcPolicyEventDetails{") + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") + s = append(s, "PolicyNamespace: "+fmt.Sprintf("%#v", this.PolicyNamespace)+",\n") + s = append(s, "PolicyRule: "+fmt.Sprintf("%#v", this.PolicyRule)+",\n") + s = append(s, "IpThreatCategories: "+fmt.Sprintf("%#v", this.IpThreatCategories)+",\n") + s = append(s, "IpTrustworthiness: "+fmt.Sprintf("%#v", this.IpTrustworthiness)+",\n") + s = append(s, "IpRisk: "+fmt.Sprintf("%#v", this.IpRisk)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Signature) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&explain_log_record.Signature{") + s = append(s, "Id: "+fmt.Sprintf("%#v", this.Id)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "AttackType: "+fmt.Sprintf("%#v", this.AttackType)+",\n") + s = append(s, "Accuracy: "+fmt.Sprintf("%#v", this.Accuracy)+",\n") + s = append(s, "Context: "+fmt.Sprintf("%#v", this.Context)+",\n") + s = append(s, "MatchingInfo: "+fmt.Sprintf("%#v", this.MatchingInfo)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Violation) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&explain_log_record.Violation{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "AttackType: "+fmt.Sprintf("%#v", this.AttackType)+",\n") + s = append(s, "Context: "+fmt.Sprintf("%#v", this.Context)+",\n") + s = append(s, "MatchingInfo: "+fmt.Sprintf("%#v", this.MatchingInfo)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ThreatCampaign) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&explain_log_record.ThreatCampaign{") + s = append(s, "Id: "+fmt.Sprintf("%#v", this.Id)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "AttackType: "+fmt.Sprintf("%#v", this.AttackType)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Bot) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&explain_log_record.Bot{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Classification: "+fmt.Sprintf("%#v", this.Classification)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringExplainLogRecord(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *ExplainLogRecordResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExplainLogRecordResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ExplainLogRecordResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Details != nil { + { + size := m.Details.Size() + i -= size + if _, err := m.Details.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.Actions) > 0 { + i -= len(m.Actions) + copy(dAtA[i:], m.Actions) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Actions))) + i-- + dAtA[i] = 0x1a + } + if len(m.Analysis) > 0 { + i -= len(m.Analysis) + copy(dAtA[i:], m.Analysis) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Analysis))) + i-- + dAtA[i] = 0x12 + } + if len(m.Summary) > 0 { + i -= len(m.Summary) + copy(dAtA[i:], m.Summary) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Summary))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ExplainLogRecordResponse_WafEventDetails) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ExplainLogRecordResponse_WafEventDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.WafEventDetails != nil { + { + size, err := m.WafEventDetails.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintExplainLogRecord(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *ExplainLogRecordResponse_SvcPolicyEventDetails) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ExplainLogRecordResponse_SvcPolicyEventDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SvcPolicyEventDetails != nil { + { + size, err := m.SvcPolicyEventDetails.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintExplainLogRecord(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *WAFEventDetails) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *WAFEventDetails) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *WAFEventDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ThreatCampaigns) > 0 { + for iNdEx := len(m.ThreatCampaigns) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ThreatCampaigns[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintExplainLogRecord(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + } + if m.Action != 0 { + i = encodeVarintExplainLogRecord(dAtA, i, uint64(m.Action)) + i-- + dAtA[i] = 0x40 + } + if m.Bot != nil { + { + size, err := m.Bot.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintExplainLogRecord(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if len(m.Violations) > 0 { + for iNdEx := len(m.Violations) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Violations[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintExplainLogRecord(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + } + if len(m.Signatures) > 0 { + for iNdEx := len(m.Signatures) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Signatures[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintExplainLogRecord(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + } + if m.EnforcementMode != 0 { + i = encodeVarintExplainLogRecord(dAtA, i, uint64(m.EnforcementMode)) + i-- + dAtA[i] = 0x18 + } + if len(m.AppFirewall) > 0 { + i -= len(m.AppFirewall) + copy(dAtA[i:], m.AppFirewall) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.AppFirewall))) + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *SvcPolicyEventDetails) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SvcPolicyEventDetails) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SvcPolicyEventDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.IpThreatCategories) > 0 { + dAtA5 := make([]byte, len(m.IpThreatCategories)*10) + var j4 int + for _, num := range m.IpThreatCategories { + for num >= 1<<7 { + dAtA5[j4] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j4++ + } + dAtA5[j4] = uint8(num) + j4++ + } + i -= j4 + copy(dAtA[i:], dAtA5[:j4]) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(j4)) + i-- + dAtA[i] = 0x4a + } + if m.Action != 0 { + i = encodeVarintExplainLogRecord(dAtA, i, uint64(m.Action)) + i-- + dAtA[i] = 0x40 + } + if m.IpRisk != 0 { + i = encodeVarintExplainLogRecord(dAtA, i, uint64(m.IpRisk)) + i-- + dAtA[i] = 0x38 + } + if m.IpTrustworthiness != 0 { + i = encodeVarintExplainLogRecord(dAtA, i, uint64(m.IpTrustworthiness)) + i-- + dAtA[i] = 0x30 + } + if len(m.PolicyRule) > 0 { + i -= len(m.PolicyRule) + copy(dAtA[i:], m.PolicyRule) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.PolicyRule))) + i-- + dAtA[i] = 0x22 + } + if len(m.PolicyNamespace) > 0 { + i -= len(m.PolicyNamespace) + copy(dAtA[i:], m.PolicyNamespace) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.PolicyNamespace))) + i-- + dAtA[i] = 0x1a + } + if len(m.Policy) > 0 { + i -= len(m.Policy) + copy(dAtA[i:], m.Policy) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Policy))) + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *Signature) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Signature) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Signature) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MatchingInfo) > 0 { + i -= len(m.MatchingInfo) + copy(dAtA[i:], m.MatchingInfo) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.MatchingInfo))) + i-- + dAtA[i] = 0x32 + } + if len(m.Context) > 0 { + i -= len(m.Context) + copy(dAtA[i:], m.Context) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Context))) + i-- + dAtA[i] = 0x2a + } + if m.Accuracy != 0 { + i = encodeVarintExplainLogRecord(dAtA, i, uint64(m.Accuracy)) + i-- + dAtA[i] = 0x20 + } + if len(m.AttackType) > 0 { + i -= len(m.AttackType) + copy(dAtA[i:], m.AttackType) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.AttackType))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Id) > 0 { + i -= len(m.Id) + copy(dAtA[i:], m.Id) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Id))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Violation) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Violation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Violation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MatchingInfo) > 0 { + i -= len(m.MatchingInfo) + copy(dAtA[i:], m.MatchingInfo) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.MatchingInfo))) + i-- + dAtA[i] = 0x22 + } + if len(m.Context) > 0 { + i -= len(m.Context) + copy(dAtA[i:], m.Context) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Context))) + i-- + dAtA[i] = 0x1a + } + if len(m.AttackType) > 0 { + i -= len(m.AttackType) + copy(dAtA[i:], m.AttackType) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.AttackType))) + i-- + dAtA[i] = 0x12 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ThreatCampaign) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ThreatCampaign) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ThreatCampaign) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AttackType) > 0 { + i -= len(m.AttackType) + copy(dAtA[i:], m.AttackType) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.AttackType))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Id) > 0 { + i -= len(m.Id) + copy(dAtA[i:], m.Id) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Id))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Bot) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Bot) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Bot) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Classification) > 0 { + i -= len(m.Classification) + copy(dAtA[i:], m.Classification) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Classification))) + i-- + dAtA[i] = 0x1a + } + if len(m.Type) > 0 { + i -= len(m.Type) + copy(dAtA[i:], m.Type) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Type))) + i-- + dAtA[i] = 0x12 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintExplainLogRecord(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintExplainLogRecord(dAtA []byte, offset int, v uint64) int { + offset -= sovExplainLogRecord(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ExplainLogRecordResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Summary) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Analysis) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Actions) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + if m.Details != nil { + n += m.Details.Size() + } + return n +} + +func (m *ExplainLogRecordResponse_WafEventDetails) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.WafEventDetails != nil { + l = m.WafEventDetails.Size() + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + return n +} +func (m *ExplainLogRecordResponse_SvcPolicyEventDetails) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SvcPolicyEventDetails != nil { + l = m.SvcPolicyEventDetails.Size() + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + return n +} +func (m *WAFEventDetails) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.AppFirewall) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + if m.EnforcementMode != 0 { + n += 1 + sovExplainLogRecord(uint64(m.EnforcementMode)) + } + if len(m.Signatures) > 0 { + for _, e := range m.Signatures { + l = e.Size() + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + } + if len(m.Violations) > 0 { + for _, e := range m.Violations { + l = e.Size() + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + } + if m.Bot != nil { + l = m.Bot.Size() + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + if m.Action != 0 { + n += 1 + sovExplainLogRecord(uint64(m.Action)) + } + if len(m.ThreatCampaigns) > 0 { + for _, e := range m.ThreatCampaigns { + l = e.Size() + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + } + return n +} + +func (m *SvcPolicyEventDetails) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Policy) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.PolicyNamespace) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.PolicyRule) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + if m.IpTrustworthiness != 0 { + n += 1 + sovExplainLogRecord(uint64(m.IpTrustworthiness)) + } + if m.IpRisk != 0 { + n += 1 + sovExplainLogRecord(uint64(m.IpRisk)) + } + if m.Action != 0 { + n += 1 + sovExplainLogRecord(uint64(m.Action)) + } + if len(m.IpThreatCategories) > 0 { + l = 0 + for _, e := range m.IpThreatCategories { + l += sovExplainLogRecord(uint64(e)) + } + n += 1 + sovExplainLogRecord(uint64(l)) + l + } + return n +} + +func (m *Signature) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Id) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.AttackType) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + if m.Accuracy != 0 { + n += 1 + sovExplainLogRecord(uint64(m.Accuracy)) + } + l = len(m.Context) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.MatchingInfo) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + return n +} + +func (m *Violation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.AttackType) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Context) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.MatchingInfo) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + return n +} + +func (m *ThreatCampaign) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Id) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.AttackType) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + return n +} + +func (m *Bot) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Type) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + l = len(m.Classification) + if l > 0 { + n += 1 + l + sovExplainLogRecord(uint64(l)) + } + return n +} + +func sovExplainLogRecord(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozExplainLogRecord(x uint64) (n int) { + return sovExplainLogRecord(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ExplainLogRecordResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExplainLogRecordResponse{`, + `Summary:` + fmt.Sprintf("%v", this.Summary) + `,`, + `Analysis:` + fmt.Sprintf("%v", this.Analysis) + `,`, + `Actions:` + fmt.Sprintf("%v", this.Actions) + `,`, + `Details:` + fmt.Sprintf("%v", this.Details) + `,`, + `}`, + }, "") + return s +} +func (this *ExplainLogRecordResponse_WafEventDetails) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExplainLogRecordResponse_WafEventDetails{`, + `WafEventDetails:` + strings.Replace(fmt.Sprintf("%v", this.WafEventDetails), "WAFEventDetails", "WAFEventDetails", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ExplainLogRecordResponse_SvcPolicyEventDetails) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExplainLogRecordResponse_SvcPolicyEventDetails{`, + `SvcPolicyEventDetails:` + strings.Replace(fmt.Sprintf("%v", this.SvcPolicyEventDetails), "SvcPolicyEventDetails", "SvcPolicyEventDetails", 1) + `,`, + `}`, + }, "") + return s +} +func (this *WAFEventDetails) String() string { + if this == nil { + return "nil" + } + repeatedStringForSignatures := "[]*Signature{" + for _, f := range this.Signatures { + repeatedStringForSignatures += strings.Replace(f.String(), "Signature", "Signature", 1) + "," + } + repeatedStringForSignatures += "}" + repeatedStringForViolations := "[]*Violation{" + for _, f := range this.Violations { + repeatedStringForViolations += strings.Replace(f.String(), "Violation", "Violation", 1) + "," + } + repeatedStringForViolations += "}" + repeatedStringForThreatCampaigns := "[]*ThreatCampaign{" + for _, f := range this.ThreatCampaigns { + repeatedStringForThreatCampaigns += strings.Replace(f.String(), "ThreatCampaign", "ThreatCampaign", 1) + "," + } + repeatedStringForThreatCampaigns += "}" + s := strings.Join([]string{`&WAFEventDetails{`, + `AppFirewall:` + fmt.Sprintf("%v", this.AppFirewall) + `,`, + `EnforcementMode:` + fmt.Sprintf("%v", this.EnforcementMode) + `,`, + `Signatures:` + repeatedStringForSignatures + `,`, + `Violations:` + repeatedStringForViolations + `,`, + `Bot:` + strings.Replace(this.Bot.String(), "Bot", "Bot", 1) + `,`, + `Action:` + fmt.Sprintf("%v", this.Action) + `,`, + `ThreatCampaigns:` + repeatedStringForThreatCampaigns + `,`, + `}`, + }, "") + return s +} +func (this *SvcPolicyEventDetails) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SvcPolicyEventDetails{`, + `Policy:` + fmt.Sprintf("%v", this.Policy) + `,`, + `PolicyNamespace:` + fmt.Sprintf("%v", this.PolicyNamespace) + `,`, + `PolicyRule:` + fmt.Sprintf("%v", this.PolicyRule) + `,`, + `IpTrustworthiness:` + fmt.Sprintf("%v", this.IpTrustworthiness) + `,`, + `IpRisk:` + fmt.Sprintf("%v", this.IpRisk) + `,`, + `Action:` + fmt.Sprintf("%v", this.Action) + `,`, + `IpThreatCategories:` + fmt.Sprintf("%v", this.IpThreatCategories) + `,`, + `}`, + }, "") + return s +} +func (this *Signature) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Signature{`, + `Id:` + fmt.Sprintf("%v", this.Id) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `AttackType:` + fmt.Sprintf("%v", this.AttackType) + `,`, + `Accuracy:` + fmt.Sprintf("%v", this.Accuracy) + `,`, + `Context:` + fmt.Sprintf("%v", this.Context) + `,`, + `MatchingInfo:` + fmt.Sprintf("%v", this.MatchingInfo) + `,`, + `}`, + }, "") + return s +} +func (this *Violation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Violation{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `AttackType:` + fmt.Sprintf("%v", this.AttackType) + `,`, + `Context:` + fmt.Sprintf("%v", this.Context) + `,`, + `MatchingInfo:` + fmt.Sprintf("%v", this.MatchingInfo) + `,`, + `}`, + }, "") + return s +} +func (this *ThreatCampaign) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ThreatCampaign{`, + `Id:` + fmt.Sprintf("%v", this.Id) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `AttackType:` + fmt.Sprintf("%v", this.AttackType) + `,`, + `}`, + }, "") + return s +} +func (this *Bot) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Bot{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Classification:` + fmt.Sprintf("%v", this.Classification) + `,`, + `}`, + }, "") + return s +} +func valueToStringExplainLogRecord(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ExplainLogRecordResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExplainLogRecordResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExplainLogRecordResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Summary", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Summary = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Analysis", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Analysis = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actions", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actions = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WafEventDetails", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &WAFEventDetails{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Details = &ExplainLogRecordResponse_WafEventDetails{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SvcPolicyEventDetails", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &SvcPolicyEventDetails{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Details = &ExplainLogRecordResponse_SvcPolicyEventDetails{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *WAFEventDetails) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: WAFEventDetails: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: WAFEventDetails: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AppFirewall = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field EnforcementMode", wireType) + } + m.EnforcementMode = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.EnforcementMode |= EnforcementMode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Signatures", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Signatures = append(m.Signatures, &Signature{}) + if err := m.Signatures[len(m.Signatures)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Violations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Violations = append(m.Violations, &Violation{}) + if err := m.Violations[len(m.Violations)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Bot", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Bot == nil { + m.Bot = &Bot{} + } + if err := m.Bot.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + } + m.Action = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Action |= Action(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ThreatCampaigns", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ThreatCampaigns = append(m.ThreatCampaigns, &ThreatCampaign{}) + if err := m.ThreatCampaigns[len(m.ThreatCampaigns)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SvcPolicyEventDetails) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SvcPolicyEventDetails: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SvcPolicyEventDetails: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Policy = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyNamespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyNamespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyRule", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyRule = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IpTrustworthiness", wireType) + } + m.IpTrustworthiness = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.IpTrustworthiness |= IPReputation(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IpRisk", wireType) + } + m.IpRisk = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.IpRisk |= IPReputation(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + } + m.Action = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Action |= Action(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 9: + if wireType == 0 { + var v policy.IPThreatCategory + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= policy.IPThreatCategory(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IpThreatCategories = append(m.IpThreatCategories, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.IpThreatCategories) == 0 { + m.IpThreatCategories = make([]policy.IPThreatCategory, 0, elementCount) + } + for iNdEx < postIndex { + var v policy.IPThreatCategory + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= policy.IPThreatCategory(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IpThreatCategories = append(m.IpThreatCategories, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field IpThreatCategories", wireType) + } + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Signature) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Signature: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Signature: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Id = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AttackType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AttackType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Accuracy", wireType) + } + m.Accuracy = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Accuracy |= Accuracy(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Context", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Context = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MatchingInfo", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MatchingInfo = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Violation) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Violation: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Violation: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AttackType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AttackType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Context", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Context = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MatchingInfo", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MatchingInfo = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ThreatCampaign) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ThreatCampaign: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ThreatCampaign: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Id = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AttackType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AttackType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Bot) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Bot: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Bot: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Classification", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthExplainLogRecord + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthExplainLogRecord + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Classification = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipExplainLogRecord(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthExplainLogRecord + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipExplainLogRecord(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowExplainLogRecord + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthExplainLogRecord + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupExplainLogRecord + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthExplainLogRecord + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthExplainLogRecord = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowExplainLogRecord = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupExplainLogRecord = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ai_assistant/explain_log_record/explain_log_record.vesmsg.go b/pbgo/extschema/schema/ai_assistant/explain_log_record/explain_log_record.vesmsg.go new file mode 100644 index 000000000..52f4ba80d --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/explain_log_record/explain_log_record.vesmsg.go @@ -0,0 +1,841 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package explain_log_record + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *Bot) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Bot) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Bot) DeepCopy() *Bot { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Bot{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Bot) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Bot) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BotValidator().Validate(ctx, m, opts...) +} + +type ValidateBot struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateBot) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Bot) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Bot got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["classification"]; exists { + + vOpts := append(opts, db.WithValidateField("classification")) + if err := fv(ctx, m.GetClassification(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultBotValidator = func() *ValidateBot { + v := &ValidateBot{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func BotValidator() db.Validator { + return DefaultBotValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ExplainLogRecordResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ExplainLogRecordResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ExplainLogRecordResponse) DeepCopy() *ExplainLogRecordResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ExplainLogRecordResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ExplainLogRecordResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ExplainLogRecordResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ExplainLogRecordResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateExplainLogRecordResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateExplainLogRecordResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ExplainLogRecordResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ExplainLogRecordResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["actions"]; exists { + + vOpts := append(opts, db.WithValidateField("actions")) + if err := fv(ctx, m.GetActions(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["analysis"]; exists { + + vOpts := append(opts, db.WithValidateField("analysis")) + if err := fv(ctx, m.GetAnalysis(), vOpts...); err != nil { + return err + } + + } + + switch m.GetDetails().(type) { + case *ExplainLogRecordResponse_WafEventDetails: + if fv, exists := v.FldValidators["details.waf_event_details"]; exists { + val := m.GetDetails().(*ExplainLogRecordResponse_WafEventDetails).WafEventDetails + vOpts := append(opts, + db.WithValidateField("details"), + db.WithValidateField("waf_event_details"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ExplainLogRecordResponse_SvcPolicyEventDetails: + if fv, exists := v.FldValidators["details.svc_policy_event_details"]; exists { + val := m.GetDetails().(*ExplainLogRecordResponse_SvcPolicyEventDetails).SvcPolicyEventDetails + vOpts := append(opts, + db.WithValidateField("details"), + db.WithValidateField("svc_policy_event_details"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["summary"]; exists { + + vOpts := append(opts, db.WithValidateField("summary")) + if err := fv(ctx, m.GetSummary(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultExplainLogRecordResponseValidator = func() *ValidateExplainLogRecordResponse { + v := &ValidateExplainLogRecordResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ExplainLogRecordResponseValidator() db.Validator { + return DefaultExplainLogRecordResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Signature) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Signature) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Signature) DeepCopy() *Signature { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Signature{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Signature) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Signature) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignatureValidator().Validate(ctx, m, opts...) +} + +type ValidateSignature struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSignature) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Signature) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Signature got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["accuracy"]; exists { + + vOpts := append(opts, db.WithValidateField("accuracy")) + if err := fv(ctx, m.GetAccuracy(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["attack_type"]; exists { + + vOpts := append(opts, db.WithValidateField("attack_type")) + if err := fv(ctx, m.GetAttackType(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["context"]; exists { + + vOpts := append(opts, db.WithValidateField("context")) + if err := fv(ctx, m.GetContext(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["id"]; exists { + + vOpts := append(opts, db.WithValidateField("id")) + if err := fv(ctx, m.GetId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["matching_info"]; exists { + + vOpts := append(opts, db.WithValidateField("matching_info")) + if err := fv(ctx, m.GetMatchingInfo(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSignatureValidator = func() *ValidateSignature { + v := &ValidateSignature{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SignatureValidator() db.Validator { + return DefaultSignatureValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SvcPolicyEventDetails) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SvcPolicyEventDetails) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SvcPolicyEventDetails) DeepCopy() *SvcPolicyEventDetails { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SvcPolicyEventDetails{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SvcPolicyEventDetails) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SvcPolicyEventDetails) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SvcPolicyEventDetailsValidator().Validate(ctx, m, opts...) +} + +type ValidateSvcPolicyEventDetails struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSvcPolicyEventDetails) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SvcPolicyEventDetails) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SvcPolicyEventDetails got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + + vOpts := append(opts, db.WithValidateField("action")) + if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["ip_risk"]; exists { + + vOpts := append(opts, db.WithValidateField("ip_risk")) + if err := fv(ctx, m.GetIpRisk(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["ip_threat_categories"]; exists { + + vOpts := append(opts, db.WithValidateField("ip_threat_categories")) + for idx, item := range m.GetIpThreatCategories() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["ip_trustworthiness"]; exists { + + vOpts := append(opts, db.WithValidateField("ip_trustworthiness")) + if err := fv(ctx, m.GetIpTrustworthiness(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policy"]; exists { + + vOpts := append(opts, db.WithValidateField("policy")) + if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policy_namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("policy_namespace")) + if err := fv(ctx, m.GetPolicyNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policy_rule"]; exists { + + vOpts := append(opts, db.WithValidateField("policy_rule")) + if err := fv(ctx, m.GetPolicyRule(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSvcPolicyEventDetailsValidator = func() *ValidateSvcPolicyEventDetails { + v := &ValidateSvcPolicyEventDetails{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SvcPolicyEventDetailsValidator() db.Validator { + return DefaultSvcPolicyEventDetailsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ThreatCampaign) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ThreatCampaign) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ThreatCampaign) DeepCopy() *ThreatCampaign { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ThreatCampaign{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ThreatCampaign) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ThreatCampaign) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ThreatCampaignValidator().Validate(ctx, m, opts...) +} + +type ValidateThreatCampaign struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateThreatCampaign) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ThreatCampaign) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ThreatCampaign got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["attack_type"]; exists { + + vOpts := append(opts, db.WithValidateField("attack_type")) + if err := fv(ctx, m.GetAttackType(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["id"]; exists { + + vOpts := append(opts, db.WithValidateField("id")) + if err := fv(ctx, m.GetId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultThreatCampaignValidator = func() *ValidateThreatCampaign { + v := &ValidateThreatCampaign{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ThreatCampaignValidator() db.Validator { + return DefaultThreatCampaignValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Violation) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Violation) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Violation) DeepCopy() *Violation { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Violation{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Violation) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Violation) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ViolationValidator().Validate(ctx, m, opts...) +} + +type ValidateViolation struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateViolation) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Violation) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Violation got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["attack_type"]; exists { + + vOpts := append(opts, db.WithValidateField("attack_type")) + if err := fv(ctx, m.GetAttackType(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["context"]; exists { + + vOpts := append(opts, db.WithValidateField("context")) + if err := fv(ctx, m.GetContext(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["matching_info"]; exists { + + vOpts := append(opts, db.WithValidateField("matching_info")) + if err := fv(ctx, m.GetMatchingInfo(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultViolationValidator = func() *ValidateViolation { + v := &ValidateViolation{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ViolationValidator() db.Validator { + return DefaultViolationValidator +} + +// augmented methods on protoc/std generated struct + +func (m *WAFEventDetails) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *WAFEventDetails) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *WAFEventDetails) DeepCopy() *WAFEventDetails { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &WAFEventDetails{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *WAFEventDetails) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *WAFEventDetails) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return WAFEventDetailsValidator().Validate(ctx, m, opts...) +} + +type ValidateWAFEventDetails struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateWAFEventDetails) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*WAFEventDetails) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *WAFEventDetails got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + + vOpts := append(opts, db.WithValidateField("action")) + if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["app_firewall"]; exists { + + vOpts := append(opts, db.WithValidateField("app_firewall")) + if err := fv(ctx, m.GetAppFirewall(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["bot"]; exists { + + vOpts := append(opts, db.WithValidateField("bot")) + if err := fv(ctx, m.GetBot(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["enforcement_mode"]; exists { + + vOpts := append(opts, db.WithValidateField("enforcement_mode")) + if err := fv(ctx, m.GetEnforcementMode(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["signatures"]; exists { + + vOpts := append(opts, db.WithValidateField("signatures")) + for idx, item := range m.GetSignatures() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["threat_campaigns"]; exists { + + vOpts := append(opts, db.WithValidateField("threat_campaigns")) + for idx, item := range m.GetThreatCampaigns() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["violations"]; exists { + + vOpts := append(opts, db.WithValidateField("violations")) + for idx, item := range m.GetViolations() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultWAFEventDetailsValidator = func() *ValidateWAFEventDetails { + v := &ValidateWAFEventDetails{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func WAFEventDetailsValidator() db.Validator { + return DefaultWAFEventDetailsValidator +} diff --git a/pbgo/extschema/schema/ai_assistant/explain_log_record/pkg.vespkg.go b/pbgo/extschema/schema/ai_assistant/explain_log_record/pkg.vespkg.go new file mode 100644 index 000000000..263d37d2c --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/explain_log_record/pkg.vespkg.go @@ -0,0 +1,60 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package explain_log_record + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ai_assistant.explain_log_record.Bot"] = BotValidator() + vr["ves.io.schema.ai_assistant.explain_log_record.ExplainLogRecordResponse"] = ExplainLogRecordResponseValidator() + vr["ves.io.schema.ai_assistant.explain_log_record.Signature"] = SignatureValidator() + vr["ves.io.schema.ai_assistant.explain_log_record.SvcPolicyEventDetails"] = SvcPolicyEventDetailsValidator() + vr["ves.io.schema.ai_assistant.explain_log_record.ThreatCampaign"] = ThreatCampaignValidator() + vr["ves.io.schema.ai_assistant.explain_log_record.Violation"] = ViolationValidator() + vr["ves.io.schema.ai_assistant.explain_log_record.WAFEventDetails"] = WAFEventDetailsValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.pb.go b/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.pb.go new file mode 100644 index 000000000..71f514b66 --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.pb.go @@ -0,0 +1,553 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.proto + +// Generate Dashboard Filter +// +// x-displayName: "Generate Dashboard Filter" +// AI Assistant generates dashboard filter response + +package gen_dashboard_filter + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + common "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/common" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// GenDashboardFilterResponse +// +// x-displayName: "Generate Dashboard Filter" +// Generate dashboard filter response +type GenDashboardFilterResponse struct { + // summary + // + // x-example: "135 events matching your query were found" + // x-displayName: "Summary" + // Events summary + Summary string `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"` + // actions + // + // x-example: "To view these events go to the ${{link:dashboard_link}} page" + // x-displayName: "Actions" + // Follow-up actions + Actions string `protobuf:"bytes,2,opt,name=actions,proto3" json:"actions,omitempty"` + // links + // + // x-displayName: "Links" + // Links that will be presented to the user + Links []*common.Link `protobuf:"bytes,3,rep,name=links,proto3" json:"links,omitempty"` +} + +func (m *GenDashboardFilterResponse) Reset() { *m = GenDashboardFilterResponse{} } +func (*GenDashboardFilterResponse) ProtoMessage() {} +func (*GenDashboardFilterResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_4d7f3e2e0a806465, []int{0} +} +func (m *GenDashboardFilterResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GenDashboardFilterResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GenDashboardFilterResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GenDashboardFilterResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GenDashboardFilterResponse.Merge(m, src) +} +func (m *GenDashboardFilterResponse) XXX_Size() int { + return m.Size() +} +func (m *GenDashboardFilterResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GenDashboardFilterResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GenDashboardFilterResponse proto.InternalMessageInfo + +func (m *GenDashboardFilterResponse) GetSummary() string { + if m != nil { + return m.Summary + } + return "" +} + +func (m *GenDashboardFilterResponse) GetActions() string { + if m != nil { + return m.Actions + } + return "" +} + +func (m *GenDashboardFilterResponse) GetLinks() []*common.Link { + if m != nil { + return m.Links + } + return nil +} + +func init() { + proto.RegisterType((*GenDashboardFilterResponse)(nil), "ves.io.schema.ai_assistant.gen_dashboard_filter.GenDashboardFilterResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.proto", fileDescriptor_4d7f3e2e0a806465) +} + +var fileDescriptor_4d7f3e2e0a806465 = []byte{ + // 347 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0xb1, 0x4e, 0xeb, 0x30, + 0x14, 0x86, 0xe3, 0x5b, 0xdd, 0x7b, 0x45, 0xd8, 0x3a, 0x45, 0x45, 0xb2, 0x2a, 0x16, 0x3a, 0x50, + 0x5b, 0x82, 0x99, 0x05, 0x21, 0x90, 0x10, 0x53, 0x47, 0x96, 0xc8, 0x49, 0x5d, 0xd7, 0x6a, 0xed, + 0x13, 0xd9, 0x4e, 0x80, 0x8d, 0x37, 0x80, 0x9d, 0x17, 0xe0, 0x51, 0x18, 0x3b, 0x76, 0xa4, 0xee, + 0xc2, 0xd8, 0x47, 0x40, 0x75, 0x52, 0x89, 0x4a, 0x55, 0xc5, 0x76, 0xfe, 0xfc, 0xe7, 0x7c, 0xfa, + 0xf3, 0xcb, 0xf1, 0x6d, 0xc5, 0x2d, 0x91, 0x40, 0x6d, 0x3e, 0xe6, 0x8a, 0x51, 0x26, 0x53, 0x66, + 0xad, 0xb4, 0x8e, 0x69, 0x47, 0x05, 0xd7, 0xe9, 0x90, 0xd9, 0x71, 0x06, 0xcc, 0x0c, 0xd3, 0x91, + 0x9c, 0x3a, 0x6e, 0x76, 0x7e, 0x24, 0x85, 0x01, 0x07, 0x6d, 0x5a, 0xb3, 0x48, 0xcd, 0x22, 0x3f, + 0x59, 0x64, 0xd7, 0x59, 0xa7, 0x2f, 0xa4, 0x1b, 0x97, 0x19, 0xc9, 0x41, 0x51, 0x01, 0x02, 0x68, + 0xe0, 0x64, 0xe5, 0x28, 0xa8, 0x20, 0xc2, 0x54, 0xf3, 0x3b, 0xa7, 0x7b, 0xb2, 0xe6, 0xa0, 0x14, + 0x68, 0x3a, 0x95, 0x7a, 0xd2, 0x6c, 0x1f, 0x6d, 0x6f, 0x43, 0xe1, 0x24, 0x68, 0xdb, 0x98, 0xdd, + 0x6d, 0xb3, 0x92, 0xfc, 0x21, 0xdd, 0xda, 0x38, 0x7e, 0x41, 0x71, 0xe7, 0x86, 0xeb, 0xab, 0x4d, + 0xe6, 0xeb, 0x10, 0x79, 0xc0, 0x6d, 0x01, 0xda, 0xf2, 0x76, 0x12, 0xff, 0xb7, 0xa5, 0x52, 0xcc, + 0x3c, 0x25, 0xa8, 0x8b, 0x7a, 0x07, 0x83, 0x8d, 0x5c, 0x3b, 0x2c, 0x0f, 0xa4, 0xe4, 0x4f, 0xed, + 0x34, 0xb2, 0x7d, 0x11, 0xff, 0x5d, 0xe7, 0xb3, 0x49, 0xab, 0xdb, 0xea, 0x1d, 0x9e, 0x9d, 0x90, + 0x3d, 0x7d, 0xd5, 0xff, 0x43, 0xee, 0xa4, 0x9e, 0x0c, 0xea, 0xab, 0xcb, 0x37, 0x34, 0x5b, 0xe0, + 0x68, 0xbe, 0xc0, 0xd1, 0x6a, 0x81, 0xd1, 0xb3, 0xc7, 0xe8, 0xdd, 0x63, 0xf4, 0xe1, 0x31, 0x9a, + 0x79, 0x8c, 0x3e, 0x3d, 0x46, 0x5f, 0x1e, 0x47, 0x2b, 0x8f, 0xd1, 0xeb, 0x12, 0x47, 0xb3, 0x25, + 0x8e, 0xe6, 0x4b, 0x1c, 0xdd, 0x73, 0x01, 0xc5, 0x44, 0x90, 0x0a, 0xd6, 0xf9, 0x0d, 0x23, 0xa5, + 0xa5, 0x61, 0x18, 0x81, 0x51, 0xfd, 0xc2, 0x40, 0x25, 0x87, 0xdc, 0xf4, 0x37, 0x36, 0x2d, 0x32, + 0x01, 0x94, 0x3f, 0xba, 0xa6, 0x99, 0xdf, 0xbe, 0x8b, 0xec, 0x5f, 0xa8, 0xed, 0xfc, 0x3b, 0x00, + 0x00, 0xff, 0xff, 0x46, 0xd3, 0x46, 0x17, 0x51, 0x02, 0x00, 0x00, +} + +func (this *GenDashboardFilterResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GenDashboardFilterResponse) + if !ok { + that2, ok := that.(GenDashboardFilterResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Summary != that1.Summary { + return false + } + if this.Actions != that1.Actions { + return false + } + if len(this.Links) != len(that1.Links) { + return false + } + for i := range this.Links { + if !this.Links[i].Equal(that1.Links[i]) { + return false + } + } + return true +} +func (this *GenDashboardFilterResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&gen_dashboard_filter.GenDashboardFilterResponse{") + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + s = append(s, "Actions: "+fmt.Sprintf("%#v", this.Actions)+",\n") + if this.Links != nil { + s = append(s, "Links: "+fmt.Sprintf("%#v", this.Links)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringGenDashboardFilter(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *GenDashboardFilterResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GenDashboardFilterResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GenDashboardFilterResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Links) > 0 { + for iNdEx := len(m.Links) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Links[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintGenDashboardFilter(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if len(m.Actions) > 0 { + i -= len(m.Actions) + copy(dAtA[i:], m.Actions) + i = encodeVarintGenDashboardFilter(dAtA, i, uint64(len(m.Actions))) + i-- + dAtA[i] = 0x12 + } + if len(m.Summary) > 0 { + i -= len(m.Summary) + copy(dAtA[i:], m.Summary) + i = encodeVarintGenDashboardFilter(dAtA, i, uint64(len(m.Summary))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintGenDashboardFilter(dAtA []byte, offset int, v uint64) int { + offset -= sovGenDashboardFilter(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *GenDashboardFilterResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Summary) + if l > 0 { + n += 1 + l + sovGenDashboardFilter(uint64(l)) + } + l = len(m.Actions) + if l > 0 { + n += 1 + l + sovGenDashboardFilter(uint64(l)) + } + if len(m.Links) > 0 { + for _, e := range m.Links { + l = e.Size() + n += 1 + l + sovGenDashboardFilter(uint64(l)) + } + } + return n +} + +func sovGenDashboardFilter(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozGenDashboardFilter(x uint64) (n int) { + return sovGenDashboardFilter(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *GenDashboardFilterResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForLinks := "[]*Link{" + for _, f := range this.Links { + repeatedStringForLinks += strings.Replace(fmt.Sprintf("%v", f), "Link", "common.Link", 1) + "," + } + repeatedStringForLinks += "}" + s := strings.Join([]string{`&GenDashboardFilterResponse{`, + `Summary:` + fmt.Sprintf("%v", this.Summary) + `,`, + `Actions:` + fmt.Sprintf("%v", this.Actions) + `,`, + `Links:` + repeatedStringForLinks + `,`, + `}`, + }, "") + return s +} +func valueToStringGenDashboardFilter(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *GenDashboardFilterResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GenDashboardFilterResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GenDashboardFilterResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Summary", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenDashboardFilter + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthGenDashboardFilter + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Summary = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actions", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenDashboardFilter + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthGenDashboardFilter + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actions = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Links", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenDashboardFilter + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthGenDashboardFilter + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Links = append(m.Links, &common.Link{}) + if err := m.Links[len(m.Links)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenDashboardFilter(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenDashboardFilter + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthGenDashboardFilter + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenDashboardFilter(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenDashboardFilter + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthGenDashboardFilter + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupGenDashboardFilter + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthGenDashboardFilter + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthGenDashboardFilter = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenDashboardFilter = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupGenDashboardFilter = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.vesmsg.go b/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.vesmsg.go new file mode 100644 index 000000000..cc6e86066 --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.vesmsg.go @@ -0,0 +1,126 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package gen_dashboard_filter + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema_ai_assistant_common "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/common" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *GenDashboardFilterResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GenDashboardFilterResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GenDashboardFilterResponse) DeepCopy() *GenDashboardFilterResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GenDashboardFilterResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GenDashboardFilterResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GenDashboardFilterResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GenDashboardFilterResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateGenDashboardFilterResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGenDashboardFilterResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GenDashboardFilterResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GenDashboardFilterResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["actions"]; exists { + + vOpts := append(opts, db.WithValidateField("actions")) + if err := fv(ctx, m.GetActions(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["links"]; exists { + + vOpts := append(opts, db.WithValidateField("links")) + for idx, item := range m.GetLinks() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["summary"]; exists { + + vOpts := append(opts, db.WithValidateField("summary")) + if err := fv(ctx, m.GetSummary(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGenDashboardFilterResponseValidator = func() *ValidateGenDashboardFilterResponse { + v := &ValidateGenDashboardFilterResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["links"] = ves_io_schema_ai_assistant_common.LinkValidator().Validate + + return v +}() + +func GenDashboardFilterResponseValidator() db.Validator { + return DefaultGenDashboardFilterResponseValidator +} diff --git a/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/pkg.vespkg.go b/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/pkg.vespkg.go new file mode 100644 index 000000000..9638296a5 --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter/pkg.vespkg.go @@ -0,0 +1,54 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package gen_dashboard_filter + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ai_assistant.gen_dashboard_filter.GenDashboardFilterResponse"] = GenDashboardFilterResponseValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ai_assistant/pkg.vespkg.go b/pbgo/extschema/schema/ai_assistant/pkg.vespkg.go new file mode 100644 index 000000000..06dddfe7f --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/pkg.vespkg.go @@ -0,0 +1,76 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ai_assistant + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ai_assistant.AIAssistantQueryRequest"] = AIAssistantQueryRequestValidator() + vr["ves.io.schema.ai_assistant.AIAssistantQueryResponse"] = AIAssistantQueryResponseValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + sm["ves.io.schema.ai_assistant.SahayaAPI"] = "gen-ai" + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + customCSR.SwaggerRegistry["ves.io.schema.ai_assistant.SahayaAPI"] = SahayaAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.ai_assistant.SahayaAPI"] = NewSahayaAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.ai_assistant.SahayaAPI"] = NewSahayaAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.ai_assistant.SahayaAPI"] = RegisterSahayaAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.ai_assistant.SahayaAPI"] = RegisterGwSahayaAPIHandler + customCSR.ServerRegistry["ves.io.schema.ai_assistant.SahayaAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewSahayaAPIServer(svc) + } + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ai_assistant/public_customapi.pb.go b/pbgo/extschema/schema/ai_assistant/public_customapi.pb.go new file mode 100644 index 000000000..b728b485d --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/public_customapi.pb.go @@ -0,0 +1,1118 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ai_assistant/public_customapi.proto + +// AI Assistant APIs +// +// x-displayName: "AI Assistant APIs" +// Custom handler for ai assistant related microservice + +package ai_assistant + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + _ "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + explain_log_record "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/explain_log_record" + gen_dashboard_filter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// AI Assistant Query Request +// +// x-displayName: "AI Assistant Query Request" +// AI Assistant Query Request +type AIAssistantQueryRequest struct { + // Namespace + // + // x-displayName: "Namespace" + // x-example: "system" + // Namespace of the HTTP Load Balancer for current request + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // current_query + // + // x-example: "Explain security event 07e03bc6-81d4-4c86-a865-67b5763fe294" + // x-displayName: "Current query" + // Current query will be in text format + CurrentQuery string `protobuf:"bytes,2,opt,name=current_query,json=currentQuery,proto3" json:"current_query,omitempty"` +} + +func (m *AIAssistantQueryRequest) Reset() { *m = AIAssistantQueryRequest{} } +func (*AIAssistantQueryRequest) ProtoMessage() {} +func (*AIAssistantQueryRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_bddde4c8c6689ac0, []int{0} +} +func (m *AIAssistantQueryRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AIAssistantQueryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_AIAssistantQueryRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *AIAssistantQueryRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_AIAssistantQueryRequest.Merge(m, src) +} +func (m *AIAssistantQueryRequest) XXX_Size() int { + return m.Size() +} +func (m *AIAssistantQueryRequest) XXX_DiscardUnknown() { + xxx_messageInfo_AIAssistantQueryRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_AIAssistantQueryRequest proto.InternalMessageInfo + +func (m *AIAssistantQueryRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *AIAssistantQueryRequest) GetCurrentQuery() string { + if m != nil { + return m.CurrentQuery + } + return "" +} + +// AI Assistant Query Response +// +// x-displayName: "AI Assistant Query Response" +// AI Assistant Query Response +type AIAssistantQueryResponse struct { + // current_query + // + // x-example: "Explain security event 07e03bc6-81d4-4c86-a865-67b5763fe294" + // x-displayName: "Current query" + // Current query will be in text format + CurrentQuery string `protobuf:"bytes,1,opt,name=current_query,json=currentQuery,proto3" json:"current_query,omitempty"` + // response_choice + // + // x-displayName: "Response" + // Response will have different types of responses + // + // Types that are valid to be assigned to ResponseChoice: + // *AIAssistantQueryResponse_ExplainLog + // *AIAssistantQueryResponse_GenDashboardFilter + ResponseChoice isAIAssistantQueryResponse_ResponseChoice `protobuf_oneof:"response_choice"` +} + +func (m *AIAssistantQueryResponse) Reset() { *m = AIAssistantQueryResponse{} } +func (*AIAssistantQueryResponse) ProtoMessage() {} +func (*AIAssistantQueryResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_bddde4c8c6689ac0, []int{1} +} +func (m *AIAssistantQueryResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AIAssistantQueryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_AIAssistantQueryResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *AIAssistantQueryResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_AIAssistantQueryResponse.Merge(m, src) +} +func (m *AIAssistantQueryResponse) XXX_Size() int { + return m.Size() +} +func (m *AIAssistantQueryResponse) XXX_DiscardUnknown() { + xxx_messageInfo_AIAssistantQueryResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_AIAssistantQueryResponse proto.InternalMessageInfo + +type isAIAssistantQueryResponse_ResponseChoice interface { + isAIAssistantQueryResponse_ResponseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type AIAssistantQueryResponse_ExplainLog struct { + ExplainLog *explain_log_record.ExplainLogRecordResponse `protobuf:"bytes,3,opt,name=explain_log,json=explainLog,proto3,oneof" json:"explain_log,omitempty"` +} +type AIAssistantQueryResponse_GenDashboardFilter struct { + GenDashboardFilter *gen_dashboard_filter.GenDashboardFilterResponse `protobuf:"bytes,4,opt,name=gen_dashboard_filter,json=genDashboardFilter,proto3,oneof" json:"gen_dashboard_filter,omitempty"` +} + +func (*AIAssistantQueryResponse_ExplainLog) isAIAssistantQueryResponse_ResponseChoice() {} +func (*AIAssistantQueryResponse_GenDashboardFilter) isAIAssistantQueryResponse_ResponseChoice() {} + +func (m *AIAssistantQueryResponse) GetResponseChoice() isAIAssistantQueryResponse_ResponseChoice { + if m != nil { + return m.ResponseChoice + } + return nil +} + +func (m *AIAssistantQueryResponse) GetCurrentQuery() string { + if m != nil { + return m.CurrentQuery + } + return "" +} + +func (m *AIAssistantQueryResponse) GetExplainLog() *explain_log_record.ExplainLogRecordResponse { + if x, ok := m.GetResponseChoice().(*AIAssistantQueryResponse_ExplainLog); ok { + return x.ExplainLog + } + return nil +} + +func (m *AIAssistantQueryResponse) GetGenDashboardFilter() *gen_dashboard_filter.GenDashboardFilterResponse { + if x, ok := m.GetResponseChoice().(*AIAssistantQueryResponse_GenDashboardFilter); ok { + return x.GenDashboardFilter + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*AIAssistantQueryResponse) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*AIAssistantQueryResponse_ExplainLog)(nil), + (*AIAssistantQueryResponse_GenDashboardFilter)(nil), + } +} + +func init() { + proto.RegisterType((*AIAssistantQueryRequest)(nil), "ves.io.schema.ai_assistant.AIAssistantQueryRequest") + golang_proto.RegisterType((*AIAssistantQueryRequest)(nil), "ves.io.schema.ai_assistant.AIAssistantQueryRequest") + proto.RegisterType((*AIAssistantQueryResponse)(nil), "ves.io.schema.ai_assistant.AIAssistantQueryResponse") + golang_proto.RegisterType((*AIAssistantQueryResponse)(nil), "ves.io.schema.ai_assistant.AIAssistantQueryResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/ai_assistant/public_customapi.proto", fileDescriptor_bddde4c8c6689ac0) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ai_assistant/public_customapi.proto", fileDescriptor_bddde4c8c6689ac0) +} + +var fileDescriptor_bddde4c8c6689ac0 = []byte{ + // 627 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0x41, 0x6b, 0xd4, 0x40, + 0x14, 0xce, 0x64, 0x8b, 0xd8, 0x54, 0xb1, 0x04, 0xa1, 0x61, 0x2d, 0xe3, 0xb2, 0x7a, 0xa8, 0xe2, + 0x26, 0xd8, 0xea, 0xc5, 0x5b, 0x8b, 0xb6, 0xb6, 0x7a, 0xa8, 0xeb, 0x4d, 0x84, 0x30, 0x49, 0x66, + 0xb3, 0xa3, 0x9b, 0xbc, 0xe9, 0xcc, 0x64, 0xdb, 0x22, 0x62, 0xe9, 0xd1, 0x93, 0xe0, 0x9f, 0xf0, + 0x3f, 0xf4, 0xd2, 0x9b, 0x82, 0x20, 0x0b, 0x5e, 0x7a, 0xb4, 0x59, 0x05, 0x8f, 0xfd, 0x09, 0xd2, + 0x6c, 0x76, 0xbb, 0xdd, 0x4d, 0x17, 0xbc, 0xcd, 0x7c, 0xdf, 0xfb, 0xbe, 0xf7, 0x32, 0xef, 0xbd, + 0x18, 0xf7, 0xdb, 0x54, 0xda, 0x0c, 0x1c, 0xe9, 0x37, 0x69, 0x44, 0x1c, 0xc2, 0x5c, 0x22, 0x25, + 0x93, 0x8a, 0xc4, 0xca, 0xe1, 0x89, 0xd7, 0x62, 0xbe, 0xeb, 0x27, 0x52, 0x41, 0x44, 0x38, 0xb3, + 0xb9, 0x00, 0x05, 0x66, 0xb9, 0x27, 0xb1, 0x7b, 0x12, 0x7b, 0x58, 0x52, 0xae, 0x85, 0x4c, 0x35, + 0x13, 0xcf, 0xf6, 0x21, 0x72, 0x42, 0x08, 0xc1, 0xc9, 0x24, 0x5e, 0xd2, 0xc8, 0x6e, 0xd9, 0x25, + 0x3b, 0xf5, 0xac, 0xca, 0xf3, 0x21, 0x40, 0xd8, 0xa2, 0x0e, 0xe1, 0xcc, 0x21, 0x71, 0x0c, 0x8a, + 0x28, 0x06, 0xb1, 0xcc, 0xd9, 0x9b, 0x39, 0x3b, 0xf0, 0x50, 0x2c, 0xa2, 0x52, 0x91, 0x88, 0xe7, + 0x01, 0xab, 0x13, 0x8a, 0xa7, 0x3b, 0xbc, 0x45, 0x58, 0xec, 0xb6, 0x20, 0x74, 0x05, 0xf5, 0x41, + 0x04, 0x05, 0x50, 0xee, 0xb3, 0x31, 0xc1, 0x27, 0xa4, 0xb1, 0x1b, 0x10, 0xd9, 0xf4, 0x80, 0x88, + 0xc0, 0x6d, 0xb0, 0x96, 0xa2, 0xa2, 0x10, 0xcc, 0xbd, 0x6e, 0x9c, 0xf7, 0x02, 0x3e, 0xfc, 0x45, + 0xf3, 0xe7, 0xc9, 0x36, 0x69, 0xb1, 0x80, 0x28, 0x9a, 0xb3, 0xd5, 0x11, 0x96, 0x4a, 0x1a, 0xb7, + 0x47, 0x1c, 0x2a, 0x23, 0x31, 0x8c, 0x6e, 0xbb, 0xe7, 0x22, 0xaa, 0xaf, 0x8d, 0xb9, 0xe5, 0xf5, + 0xe5, 0x7e, 0xfd, 0x2f, 0x12, 0x2a, 0x76, 0xeb, 0x74, 0x2b, 0xa1, 0x52, 0x99, 0xf3, 0xc6, 0x74, + 0x4c, 0x22, 0x2a, 0x39, 0xf1, 0xa9, 0x85, 0x2a, 0x68, 0x61, 0xba, 0x7e, 0x06, 0x98, 0xb7, 0x8c, + 0xab, 0x7e, 0x22, 0x04, 0x8d, 0x95, 0xbb, 0x75, 0xaa, 0xb2, 0xf4, 0x2c, 0xe2, 0x4a, 0x0e, 0x66, + 0x4e, 0xd5, 0xef, 0xba, 0x61, 0x8d, 0xdb, 0x4b, 0x0e, 0xb1, 0x2c, 0x70, 0x40, 0xe3, 0x0e, 0xe6, + 0x1b, 0x63, 0x66, 0xa8, 0x11, 0x56, 0xa9, 0x82, 0x16, 0x66, 0x16, 0xd7, 0xec, 0x8b, 0x87, 0xca, + 0x2e, 0xe8, 0xdb, 0x93, 0x1e, 0xf4, 0x1c, 0xc2, 0x7a, 0x06, 0xf4, 0x4b, 0x78, 0xaa, 0xd5, 0x0d, + 0x3a, 0xe0, 0xcc, 0x0f, 0xc6, 0xf5, 0xa2, 0x56, 0x59, 0x53, 0x59, 0xd2, 0x67, 0x93, 0x92, 0x16, + 0xb6, 0x78, 0x8d, 0xc6, 0x8f, 0xfb, 0xd8, 0x6a, 0x06, 0x0d, 0x25, 0x36, 0xc3, 0x31, 0x76, 0x65, + 0xce, 0xb8, 0x26, 0xf2, 0x08, 0xd7, 0x6f, 0x02, 0xf3, 0xa9, 0x39, 0xd5, 0x39, 0x40, 0xfa, 0xc6, + 0xd4, 0x65, 0x7d, 0xb6, 0xb4, 0xb8, 0xa7, 0x1b, 0xd3, 0x2f, 0x49, 0x93, 0xec, 0x92, 0xe5, 0xcd, + 0x75, 0xf3, 0x0f, 0x32, 0x66, 0x47, 0xdf, 0xd6, 0x5c, 0x9a, 0x54, 0xe4, 0x05, 0x8d, 0x2e, 0x3f, + 0xf8, 0x3f, 0x51, 0xaf, 0xc0, 0x6a, 0x23, 0xfd, 0x6a, 0x2d, 0x35, 0x1e, 0xee, 0xf8, 0xb5, 0x6d, + 0x42, 0x78, 0xcd, 0x23, 0x92, 0xf9, 0xb5, 0x08, 0x62, 0xa6, 0x40, 0xdc, 0xab, 0x9c, 0x11, 0xa7, + 0xd2, 0x80, 0x88, 0xa0, 0xcf, 0xed, 0xff, 0xfc, 0xfd, 0x59, 0xbf, 0x53, 0xbd, 0x9d, 0xff, 0x30, + 0x9c, 0xc1, 0x48, 0x49, 0xe7, 0xdd, 0xe0, 0xfc, 0xde, 0xc9, 0x46, 0xe2, 0x11, 0xba, 0x5b, 0x9e, + 0x39, 0x3c, 0x40, 0xa5, 0xfd, 0x1f, 0x56, 0xe9, 0x48, 0x47, 0x2b, 0x1f, 0x51, 0xe7, 0x18, 0x6b, + 0x47, 0xc7, 0x58, 0x3b, 0x39, 0xc6, 0x68, 0x2f, 0xc5, 0xe8, 0x4b, 0x8a, 0xd1, 0xb7, 0x14, 0xa3, + 0x4e, 0x8a, 0xd1, 0xaf, 0x14, 0xa3, 0xbf, 0x29, 0xd6, 0x4e, 0x52, 0x8c, 0x3e, 0x75, 0xb1, 0x76, + 0xd8, 0xc5, 0xa8, 0xd3, 0xc5, 0xda, 0x51, 0x17, 0x6b, 0xaf, 0x36, 0x43, 0xe0, 0x6f, 0x43, 0xbb, + 0x0d, 0xa7, 0x4f, 0x2d, 0x88, 0x9d, 0x48, 0x27, 0x3b, 0x34, 0x40, 0x44, 0x35, 0x2e, 0xa0, 0xcd, + 0x02, 0x2a, 0x6a, 0x7d, 0xda, 0xe1, 0x5e, 0x08, 0x0e, 0xdd, 0x51, 0xf9, 0xea, 0x14, 0x2c, 0xbb, + 0x77, 0x29, 0x5b, 0xa1, 0xa5, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x33, 0x37, 0xdc, 0x50, 0x16, + 0x05, 0x00, 0x00, +} + +func (this *AIAssistantQueryRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AIAssistantQueryRequest) + if !ok { + that2, ok := that.(AIAssistantQueryRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.CurrentQuery != that1.CurrentQuery { + return false + } + return true +} +func (this *AIAssistantQueryResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AIAssistantQueryResponse) + if !ok { + that2, ok := that.(AIAssistantQueryResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.CurrentQuery != that1.CurrentQuery { + return false + } + if that1.ResponseChoice == nil { + if this.ResponseChoice != nil { + return false + } + } else if this.ResponseChoice == nil { + return false + } else if !this.ResponseChoice.Equal(that1.ResponseChoice) { + return false + } + return true +} +func (this *AIAssistantQueryResponse_ExplainLog) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AIAssistantQueryResponse_ExplainLog) + if !ok { + that2, ok := that.(AIAssistantQueryResponse_ExplainLog) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ExplainLog.Equal(that1.ExplainLog) { + return false + } + return true +} +func (this *AIAssistantQueryResponse_GenDashboardFilter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AIAssistantQueryResponse_GenDashboardFilter) + if !ok { + that2, ok := that.(AIAssistantQueryResponse_GenDashboardFilter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GenDashboardFilter.Equal(that1.GenDashboardFilter) { + return false + } + return true +} +func (this *AIAssistantQueryRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ai_assistant.AIAssistantQueryRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "CurrentQuery: "+fmt.Sprintf("%#v", this.CurrentQuery)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AIAssistantQueryResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ai_assistant.AIAssistantQueryResponse{") + s = append(s, "CurrentQuery: "+fmt.Sprintf("%#v", this.CurrentQuery)+",\n") + if this.ResponseChoice != nil { + s = append(s, "ResponseChoice: "+fmt.Sprintf("%#v", this.ResponseChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AIAssistantQueryResponse_ExplainLog) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ai_assistant.AIAssistantQueryResponse_ExplainLog{` + + `ExplainLog:` + fmt.Sprintf("%#v", this.ExplainLog) + `}`}, ", ") + return s +} +func (this *AIAssistantQueryResponse_GenDashboardFilter) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ai_assistant.AIAssistantQueryResponse_GenDashboardFilter{` + + `GenDashboardFilter:` + fmt.Sprintf("%#v", this.GenDashboardFilter) + `}`}, ", ") + return s +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// SahayaAPIClient is the client API for SahayaAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type SahayaAPIClient interface { + // AI Assistant Query + // + // x-displayName: "AI Assistant Query" + // Enable service by returning service account details + AIAssistantQuery(ctx context.Context, in *AIAssistantQueryRequest, opts ...grpc.CallOption) (*AIAssistantQueryResponse, error) +} + +type sahayaAPIClient struct { + cc *grpc.ClientConn +} + +func NewSahayaAPIClient(cc *grpc.ClientConn) SahayaAPIClient { + return &sahayaAPIClient{cc} +} + +func (c *sahayaAPIClient) AIAssistantQuery(ctx context.Context, in *AIAssistantQueryRequest, opts ...grpc.CallOption) (*AIAssistantQueryResponse, error) { + out := new(AIAssistantQueryResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ai_assistant.SahayaAPI/AIAssistantQuery", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// SahayaAPIServer is the server API for SahayaAPI service. +type SahayaAPIServer interface { + // AI Assistant Query + // + // x-displayName: "AI Assistant Query" + // Enable service by returning service account details + AIAssistantQuery(context.Context, *AIAssistantQueryRequest) (*AIAssistantQueryResponse, error) +} + +// UnimplementedSahayaAPIServer can be embedded to have forward compatible implementations. +type UnimplementedSahayaAPIServer struct { +} + +func (*UnimplementedSahayaAPIServer) AIAssistantQuery(ctx context.Context, req *AIAssistantQueryRequest) (*AIAssistantQueryResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AIAssistantQuery not implemented") +} + +func RegisterSahayaAPIServer(s *grpc.Server, srv SahayaAPIServer) { + s.RegisterService(&_SahayaAPI_serviceDesc, srv) +} + +func _SahayaAPI_AIAssistantQuery_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AIAssistantQueryRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SahayaAPIServer).AIAssistantQuery(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ai_assistant.SahayaAPI/AIAssistantQuery", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SahayaAPIServer).AIAssistantQuery(ctx, req.(*AIAssistantQueryRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _SahayaAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.ai_assistant.SahayaAPI", + HandlerType: (*SahayaAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "AIAssistantQuery", + Handler: _SahayaAPI_AIAssistantQuery_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/ai_assistant/public_customapi.proto", +} + +func (m *AIAssistantQueryRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AIAssistantQueryRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AIAssistantQueryRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.CurrentQuery) > 0 { + i -= len(m.CurrentQuery) + copy(dAtA[i:], m.CurrentQuery) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.CurrentQuery))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *AIAssistantQueryResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AIAssistantQueryResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AIAssistantQueryResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResponseChoice != nil { + { + size := m.ResponseChoice.Size() + i -= size + if _, err := m.ResponseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.CurrentQuery) > 0 { + i -= len(m.CurrentQuery) + copy(dAtA[i:], m.CurrentQuery) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.CurrentQuery))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *AIAssistantQueryResponse_ExplainLog) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AIAssistantQueryResponse_ExplainLog) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ExplainLog != nil { + { + size, err := m.ExplainLog.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *AIAssistantQueryResponse_GenDashboardFilter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AIAssistantQueryResponse_GenDashboardFilter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GenDashboardFilter != nil { + { + size, err := m.GenDashboardFilter.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *AIAssistantQueryRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.CurrentQuery) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *AIAssistantQueryResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CurrentQuery) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.ResponseChoice != nil { + n += m.ResponseChoice.Size() + } + return n +} + +func (m *AIAssistantQueryResponse_ExplainLog) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ExplainLog != nil { + l = m.ExplainLog.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *AIAssistantQueryResponse_GenDashboardFilter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GenDashboardFilter != nil { + l = m.GenDashboardFilter.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *AIAssistantQueryRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AIAssistantQueryRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `CurrentQuery:` + fmt.Sprintf("%v", this.CurrentQuery) + `,`, + `}`, + }, "") + return s +} +func (this *AIAssistantQueryResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AIAssistantQueryResponse{`, + `CurrentQuery:` + fmt.Sprintf("%v", this.CurrentQuery) + `,`, + `ResponseChoice:` + fmt.Sprintf("%v", this.ResponseChoice) + `,`, + `}`, + }, "") + return s +} +func (this *AIAssistantQueryResponse_ExplainLog) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AIAssistantQueryResponse_ExplainLog{`, + `ExplainLog:` + strings.Replace(fmt.Sprintf("%v", this.ExplainLog), "ExplainLogRecordResponse", "explain_log_record.ExplainLogRecordResponse", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AIAssistantQueryResponse_GenDashboardFilter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AIAssistantQueryResponse_GenDashboardFilter{`, + `GenDashboardFilter:` + strings.Replace(fmt.Sprintf("%v", this.GenDashboardFilter), "GenDashboardFilterResponse", "gen_dashboard_filter.GenDashboardFilterResponse", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *AIAssistantQueryRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AIAssistantQueryRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AIAssistantQueryRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentQuery", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CurrentQuery = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AIAssistantQueryResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AIAssistantQueryResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AIAssistantQueryResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentQuery", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CurrentQuery = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExplainLog", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &explain_log_record.ExplainLogRecordResponse{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResponseChoice = &AIAssistantQueryResponse_ExplainLog{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GenDashboardFilter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &gen_dashboard_filter.GenDashboardFilterResponse{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResponseChoice = &AIAssistantQueryResponse_GenDashboardFilter{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ai_assistant/public_customapi.pb.gw.go b/pbgo/extschema/schema/ai_assistant/public_customapi.pb.gw.go new file mode 100644 index 000000000..93dc5b09d --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/public_customapi.pb.gw.go @@ -0,0 +1,196 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/ai_assistant/public_customapi.proto + +/* +Package ai_assistant is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package ai_assistant + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_SahayaAPI_AIAssistantQuery_0(ctx context.Context, marshaler runtime.Marshaler, client SahayaAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AIAssistantQueryRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := client.AIAssistantQuery(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_SahayaAPI_AIAssistantQuery_0(ctx context.Context, marshaler runtime.Marshaler, server SahayaAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AIAssistantQueryRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := server.AIAssistantQuery(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterSahayaAPIHandlerServer registers the http handlers for service SahayaAPI to "mux". +// UnaryRPC :call SahayaAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterSahayaAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server SahayaAPIServer) error { + + mux.Handle("POST", pattern_SahayaAPI_AIAssistantQuery_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_SahayaAPI_AIAssistantQuery_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_SahayaAPI_AIAssistantQuery_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterSahayaAPIHandlerFromEndpoint is same as RegisterSahayaAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterSahayaAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterSahayaAPIHandler(ctx, mux, conn) +} + +// RegisterSahayaAPIHandler registers the http handlers for service SahayaAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterSahayaAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterSahayaAPIHandlerClient(ctx, mux, NewSahayaAPIClient(conn)) +} + +// RegisterSahayaAPIHandlerClient registers the http handlers for service SahayaAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "SahayaAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "SahayaAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "SahayaAPIClient" to call the correct interceptors. +func RegisterSahayaAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client SahayaAPIClient) error { + + mux.Handle("POST", pattern_SahayaAPI_AIAssistantQuery_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_SahayaAPI_AIAssistantQuery_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_SahayaAPI_AIAssistantQuery_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_SahayaAPI_AIAssistantQuery_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "query"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_SahayaAPI_AIAssistantQuery_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/ai_assistant/public_customapi.vesapi.go b/pbgo/extschema/schema/ai_assistant/public_customapi.vesapi.go new file mode 100644 index 000000000..3cc1761bd --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/public_customapi.vesapi.go @@ -0,0 +1,1038 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ai_assistant + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create SahayaAPI GRPC Client satisfying server.CustomClient +type SahayaAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient SahayaAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *SahayaAPIGrpcClient) doRPCAIAssistantQuery(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &AIAssistantQueryRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.ai_assistant.AIAssistantQueryRequest", yamlReq) + } + rsp, err := c.grpcClient.AIAssistantQuery(ctx, req, opts...) + return rsp, err +} + +func (c *SahayaAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewSahayaAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &SahayaAPIGrpcClient{ + conn: cc, + grpcClient: NewSahayaAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["AIAssistantQuery"] = ccl.doRPCAIAssistantQuery + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create SahayaAPI REST Client satisfying server.CustomClient +type SahayaAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *SahayaAPIRestClient) doRPCAIAssistantQuery(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &AIAssistantQueryRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.ai_assistant.AIAssistantQueryRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("current_query", fmt.Sprintf("%v", req.CurrentQuery)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &AIAssistantQueryResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.ai_assistant.AIAssistantQueryResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *SahayaAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewSahayaAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &SahayaAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["AIAssistantQuery"] = ccl.doRPCAIAssistantQuery + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create sahayaAPIInprocClient + +// INPROC Client (satisfying SahayaAPIClient interface) +type sahayaAPIInprocClient struct { + SahayaAPIServer +} + +func (c *sahayaAPIInprocClient) AIAssistantQuery(ctx context.Context, in *AIAssistantQueryRequest, opts ...grpc.CallOption) (*AIAssistantQueryResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ai_assistant.SahayaAPI.AIAssistantQuery") + return c.SahayaAPIServer.AIAssistantQuery(ctx, in) +} + +func NewSahayaAPIInprocClient(svc svcfw.Service) SahayaAPIClient { + return &sahayaAPIInprocClient{SahayaAPIServer: NewSahayaAPIServer(svc)} +} + +// RegisterGwSahayaAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwSahayaAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterSahayaAPIHandlerClient(ctx, mux, NewSahayaAPIInprocClient(s)) +} + +// Create sahayaAPISrv + +// SERVER (satisfying SahayaAPIServer interface) +type sahayaAPISrv struct { + svc svcfw.Service +} + +func (s *sahayaAPISrv) AIAssistantQuery(ctx context.Context, in *AIAssistantQueryRequest) (*AIAssistantQueryResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.ai_assistant.SahayaAPI") + cah, ok := ah.(SahayaAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *SahayaAPIServer", ah) + } + + var ( + rsp *AIAssistantQueryResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.ai_assistant.AIAssistantQueryRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'SahayaAPI.AIAssistantQuery' operation on 'ai_assistant'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.ai_assistant.SahayaAPI.AIAssistantQuery"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.AIAssistantQuery(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.ai_assistant.AIAssistantQueryResponse", rsp)...) + + return rsp, nil +} + +func NewSahayaAPIServer(svc svcfw.Service) SahayaAPIServer { + return &sahayaAPISrv{svc: svc} +} + +var SahayaAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "AI Assistant APIs", + "description": "Custom handler for ai assistant related microservice", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/{namespace}/query": { + "post": { + "summary": "AI Assistant Query", + "description": "Enable service by returning service account details", + "operationId": "ves.io.schema.ai_assistant.SahayaAPI.AIAssistantQuery", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ai_assistantAIAssistantQueryResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "Namespace\n\nx-example: \"system\"\nNamespace of the HTTP Load Balancer for current request", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ai_assistantAIAssistantQueryRequest" + } + } + ], + "tags": [ + "SahayaAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ai_assistant-sahayaapi-aiassistantquery" + }, + "x-ves-proto-rpc": "ves.io.schema.ai_assistant.SahayaAPI.AIAssistantQuery" + }, + "x-displayname": "SahayaAPI", + "x-ves-proto-service": "ves.io.schema.ai_assistant.SahayaAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "ai_assistantAIAssistantQueryRequest": { + "type": "object", + "description": "AI Assistant Query Request", + "title": "AI Assistant Query Request", + "x-displayname": "AI Assistant Query Request", + "x-ves-proto-message": "ves.io.schema.ai_assistant.AIAssistantQueryRequest", + "properties": { + "current_query": { + "type": "string", + "description": " Current query will be in text format\n\nExample: - \"Explain security event 07e03bc6-81d4-4c86-a865-67b5763fe294\"-", + "title": "current_query", + "x-displayname": "Current query", + "x-ves-example": "Explain security event 07e03bc6-81d4-4c86-a865-67b5763fe294" + }, + "namespace": { + "type": "string", + "description": " Namespace of the HTTP Load Balancer for current request\n\nExample: - \"system\"-", + "title": "Namespace", + "x-displayname": "Namespace", + "x-ves-example": "system" + } + } + }, + "ai_assistantAIAssistantQueryResponse": { + "type": "object", + "description": "AI Assistant Query Response", + "title": "AI Assistant Query Response", + "x-displayname": "AI Assistant Query Response", + "x-ves-oneof-field-response_choice": "[\"explain_log\",\"gen_dashboard_filter\"]", + "x-ves-proto-message": "ves.io.schema.ai_assistant.AIAssistantQueryResponse", + "properties": { + "current_query": { + "type": "string", + "description": " Current query will be in text format\n\nExample: - \"Explain security event 07e03bc6-81d4-4c86-a865-67b5763fe294\"-", + "title": "current_query", + "x-displayname": "Current query", + "x-ves-example": "Explain security event 07e03bc6-81d4-4c86-a865-67b5763fe294" + }, + "explain_log": { + "description": "Exclusive with [gen_dashboard_filter]\n Explain log response", + "title": "explain_log", + "$ref": "#/definitions/explain_log_recordExplainLogRecordResponse", + "x-displayname": "Explain log" + }, + "gen_dashboard_filter": { + "description": "Exclusive with [explain_log]\n Generate dashboard filter response", + "title": "gen_dashboard_filter", + "$ref": "#/definitions/gen_dashboard_filterGenDashboardFilterResponse", + "x-displayname": "Generate dashboard filter" + } + } + }, + "ai_assistantexplain_log_recordAction": { + "type": "string", + "description": "Action taken for the request\n\n - ALLOW: Allow\n\nThe request was allowed to pass\n - BLOCK: Block\n\nThe request was blocked", + "title": "Action", + "enum": [ + "ALLOW", + "BLOCK" + ], + "default": "ALLOW", + "x-displayname": "Action", + "x-ves-proto-enum": "ves.io.schema.ai_assistant.explain_log_record.Action" + }, + "commonDashboardLink": { + "type": "object", + "description": "Dashboard link will present common fields like type, namespace, object, dateFilter, logFilter", + "title": "DashboardLink", + "x-displayname": "Dashboard Link", + "x-ves-proto-message": "ves.io.schema.ai_assistant.common.DashboardLink", + "properties": { + "log_filters": { + "type": "array", + "description": " Logs filter", + "title": "log_filters", + "items": { + "$ref": "#/definitions/commonLogFilter" + }, + "x-displayname": "Logs Filter" + }, + "namespace": { + "type": "string", + "description": " Namespace for current request\n\nExample: - \"system\"-", + "title": "Namespace", + "x-displayname": "Namespace", + "x-ves-example": "system" + }, + "object_name": { + "type": "string", + "description": " Object name such as LB, VH\n\nExample: - \"ves-io-http-loadbalancer-prod-nginx\"-", + "title": "object_name", + "x-displayname": "Object name", + "x-ves-example": "ves-io-http-loadbalancer-prod-nginx" + }, + "time_range": { + "type": "string", + "description": " Time range filter\n\nExample: - \"604800\"-", + "title": "time_range", + "x-displayname": "Time Range", + "x-ves-example": "604800" + }, + "type": { + "description": " Type of the link to be presented.\n SECURITY_ANALYTICS_EVENTS --\u003e /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_analytics/events\n REQUESTS_EVENTS --\u003e /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_monitoring/request\n\nExample: - \"SECURITY_ANALYTICS_EVENTS\"-", + "title": "type", + "$ref": "#/definitions/commonDashboardLinkType", + "x-displayname": "Type", + "x-ves-example": "SECURITY_ANALYTICS_EVENTS" + } + } + }, + "commonDashboardLinkType": { + "type": "string", + "description": "Link Type to be presented\n\n - SECURITY_ANALYTICS_EVENTS: SECURITY_ANALYTICS_EVENTS\n\nSecurity analytics dashboard: /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_analytics/events\n - REQUESTS_EVENTS: REQUESTS_EVENTS\n\nRequests dashboard: /web/workspaces/web-app-and-api-protection/../dashboard/security-dashboard/../security_monitoring/request", + "title": "LinkType", + "enum": [ + "SECURITY_ANALYTICS_EVENTS", + "REQUESTS_EVENTS" + ], + "default": "SECURITY_ANALYTICS_EVENTS", + "x-displayname": "Link Type", + "x-ves-proto-enum": "ves.io.schema.ai_assistant.common.DashboardLinkType" + }, + "commonFilterOperator": { + "type": "string", + "description": "Operator for query filter\n\n - IN: Filter Operator\n\nSpecifies that query result includes filter values\n - NOT_IN: Filter Operator\n\nSpecifies that query result excludes filter values", + "title": "Filter Operator", + "enum": [ + "IN", + "NOT_IN" + ], + "default": "IN", + "x-displayname": "Filter Operator", + "x-ves-proto-enum": "ves.io.schema.ai_assistant.common.FilterOperator" + }, + "commonGenericLink": { + "type": "object", + "description": "Generic link can have external link with full url", + "title": "GenericLink", + "x-displayname": "Generic Link", + "x-ves-proto-message": "ves.io.schema.ai_assistant.common.GenericLink", + "properties": { + "url": { + "type": "string", + "description": " Full url\n\nExample: - \"https://datatracker.ietf.org/doc/html/rfc3986\"-", + "title": "url", + "x-displayname": "URL", + "x-ves-example": "https://datatracker.ietf.org/doc/html/rfc3986" + } + } + }, + "commonLink": { + "type": "object", + "description": "Link for a page", + "title": "Link", + "x-displayname": "Link", + "x-ves-oneof-field-link_type": "[\"dashboard_link\",\"generic_link\"]", + "x-ves-proto-message": "ves.io.schema.ai_assistant.common.Link", + "properties": { + "dashboard_link": { + "description": "Exclusive with [generic_link]\n Dashboard link will present common dashboard fields like type, namespace, object, dateFilter, logFilter", + "title": "dashboard_link", + "$ref": "#/definitions/commonDashboardLink", + "x-displayname": "Dashboard Link" + }, + "generic_link": { + "description": "Exclusive with [dashboard_link]\n Generic link can have external link with full url", + "title": "generic_link", + "$ref": "#/definitions/commonGenericLink", + "x-displayname": "Generic Link" + }, + "key": { + "type": "string", + "description": " Key will present a placeholder in a text field to insert the link.\n For example: To view these events go to the ${{link:db_link}}.\n\nExample: - \"db_link\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "key", + "x-displayname": "Key", + "x-ves-example": "db_link", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "title": { + "type": "string", + "description": " Title for the link\n\nExample: - \"Security Analytics lb1\"-", + "title": "title", + "x-displayname": "Title", + "x-ves-example": "Security Analytics lb1" + } + } + }, + "commonLogFilter": { + "type": "object", + "description": "Log filter for filter query", + "title": "LogFilter", + "x-displayname": "Log Filter", + "x-ves-proto-message": "ves.io.schema.ai_assistant.common.LogFilter", + "properties": { + "key": { + "type": "string", + "description": " Key to be presented in the filter\n\nExample: - \"attack_types.name\"-", + "title": "key", + "x-displayname": "Key", + "x-ves-example": "attack_types.name" + }, + "op": { + "description": " Operator for query filter\n\nExample: - \"IN\"-", + "title": "op", + "$ref": "#/definitions/commonFilterOperator", + "x-displayname": "Operator", + "x-ves-example": "IN" + }, + "values": { + "type": "array", + "description": " Values to be presented in the filter\n\nExample: - \"ATTACK_TYPE_CROSS_SITE_SCRIPTING\"-", + "title": "values", + "items": { + "type": "string" + }, + "x-displayname": "Values", + "x-ves-example": "ATTACK_TYPE_CROSS_SITE_SCRIPTING" + } + } + }, + "explain_log_recordAccuracy": { + "type": "string", + "description": "Specifies accuracy of the signature\n\n - LOW_ACCURACY: Low\n\nSpecifies low accuracy of the signature\n - MEDIUM_ACCURACY: Medium\n\nSpecifies medium accuracy of the signature\n - HIGH_ACCURACY: High\n\nSpecifies high accuracy of the signature", + "title": "Accuracy", + "enum": [ + "LOW_ACCURACY", + "MEDIUM_ACCURACY", + "HIGH_ACCURACY" + ], + "default": "LOW_ACCURACY", + "x-displayname": "Accuracy", + "x-ves-proto-enum": "ves.io.schema.ai_assistant.explain_log_record.Accuracy" + }, + "explain_log_recordBot": { + "type": "object", + "description": "Bot details", + "title": "Bot", + "x-displayname": "Bot", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.Bot", + "properties": { + "classification": { + "type": "string", + "description": " Bot classification\n\nExample: - \"suspicious\"-", + "title": "classification", + "x-displayname": "Classification", + "x-ves-example": "suspicious" + }, + "name": { + "type": "string", + "description": " Bot name\n\nExample: - \"curl\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "curl" + }, + "type": { + "type": "string", + "description": " Bot type\n\nExample: - \"HTTP Library\"-", + "title": "name", + "x-displayname": "Type", + "x-ves-example": "HTTP Library" + } + } + }, + "explain_log_recordEnforcementMode": { + "type": "string", + "description": "Enforcement mode of WAF\n\n - MONITORING: Monitoring\n\nMonitoring mode of waf\n - BLOCKING: Blocking\n\nBlocking mode of waf", + "title": "EnforcementMode", + "enum": [ + "MONITORING", + "BLOCKING" + ], + "default": "MONITORING", + "x-displayname": "Enforcement Mode", + "x-ves-proto-enum": "ves.io.schema.ai_assistant.explain_log_record.EnforcementMode" + }, + "explain_log_recordExplainLogRecordResponse": { + "type": "object", + "description": "Explain log response", + "title": "ExplainLogRecordResponse", + "x-displayname": "Explain Log Record Response", + "x-ves-oneof-field-details": "[\"svc_policy_event_details\",\"waf_event_details\"]", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.ExplainLogRecordResponse", + "properties": { + "actions": { + "type": "string", + "description": " Follow-up actions\n\nExample: - \"If you think that this is a false positive you can create exclusion rule..\"-", + "title": "actions", + "x-displayname": "Actions", + "x-ves-example": "If you think that this is a false positive you can create exclusion rule.." + }, + "analysis": { + "type": "string", + "description": " Log analysis\n\nExample: - \"The request was blocked because Null in request violation was detected\"-", + "title": "analysis", + "x-displayname": "Analysis", + "x-ves-example": "The request was blocked because Null in request violation was detected" + }, + "summary": { + "type": "string", + "description": " Log summary\n\nExample: - \"Request Id 12345 refers to a WAF security event for an HTTP request that was blocked\"-", + "title": "summary", + "x-displayname": "Summary", + "x-ves-example": "Request Id 12345 refers to a WAF security event for an HTTP request that was blocked" + }, + "svc_policy_event_details": { + "description": "Exclusive with [waf_event_details]\n Service Policy event details", + "title": "SvcPolicyEventDetails", + "$ref": "#/definitions/explain_log_recordSvcPolicyEventDetails", + "x-displayname": "Service Policy event details" + }, + "waf_event_details": { + "description": "Exclusive with [svc_policy_event_details]\n WAF event details", + "title": "WAFEventDetails", + "$ref": "#/definitions/explain_log_recordWAFEventDetails", + "x-displayname": "WAF event details" + } + } + }, + "explain_log_recordIPReputation": { + "type": "string", + "description": "Specifies IP risk/trustworthiness\n\n - LOW_REPUTATION: Low\n\nSpecifies low IP risk/trustworthiness\n - HIGH_REPUTATION: High\n\nSpecifies high IP risk/trustworthiness", + "title": "IPReputation", + "enum": [ + "LOW_REPUTATION", + "HIGH_REPUTATION" + ], + "default": "LOW_REPUTATION", + "x-displayname": "IP Reputation", + "x-ves-proto-enum": "ves.io.schema.ai_assistant.explain_log_record.IPReputation" + }, + "explain_log_recordSignature": { + "type": "object", + "description": "Signature details", + "title": "Signature", + "x-displayname": "Signature", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.Signature", + "properties": { + "accuracy": { + "description": " Accuracy of the signature\n\nExample: - \"Medium\"-", + "title": "accuracy", + "$ref": "#/definitions/explain_log_recordAccuracy", + "x-displayname": "Accuracy", + "x-ves-example": "Medium" + }, + "attack_type": { + "type": "string", + "description": " Attack type of the signature\n\nExample: - \"Command Execution\"-", + "title": "attack_type", + "x-displayname": "Attack Type", + "x-ves-example": "Command Execution" + }, + "context": { + "type": "string", + "description": " Context of the signature\n\nExample: - \"parameter\"-", + "title": "context", + "x-displayname": "Context", + "x-ves-example": "parameter" + }, + "id": { + "type": "string", + "description": " Signature ID\n\nExample: - \"200013569\"-", + "title": "id", + "x-displayname": "Signature ID", + "x-ves-example": "200013569" + }, + "matching_info": { + "type": "string", + "description": " Matching info\n\nExample: - \"Matched 7 chars on offset 6 against valueToken\"-", + "title": "matching_info", + "x-displayname": "Matching Info", + "x-ves-example": "Matched 7 chars on offset 6 against value: Token" + }, + "name": { + "type": "string", + "description": " Signature name\n\nExample: - \"shell command processor\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "shell command processor" + } + } + }, + "explain_log_recordSvcPolicyEventDetails": { + "type": "object", + "description": "Service policy security events details", + "title": "SvcPolicyEventDetails", + "x-displayname": "Service Policy Event Details", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.SvcPolicyEventDetails", + "properties": { + "action": { + "description": " Event action\n\nExample: - \"Block\"-", + "title": "action", + "$ref": "#/definitions/ai_assistantexplain_log_recordAction", + "x-displayname": "Action", + "x-ves-example": "Block" + }, + "ip_risk": { + "description": " IP risk\n\nExample: - \"HIGH\"-", + "title": "ip risk", + "$ref": "#/definitions/explain_log_recordIPReputation", + "x-displayname": "IP risk", + "x-ves-example": "HIGH" + }, + "ip_threat_categories": { + "type": "array", + "description": " IP threat categories\n\nExample: - \"SPAM_SOURCES,PHISHING\"-", + "title": "ip threat categories", + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "IP threat categories", + "x-ves-example": "SPAM_SOURCES,PHISHING" + }, + "ip_trustworthiness": { + "description": " IP trustworthiness\n\nExample: - \"LOW\"-", + "title": "ip trustworthiness", + "$ref": "#/definitions/explain_log_recordIPReputation", + "x-displayname": "IP trustworthiness", + "x-ves-example": "LOW" + }, + "policy": { + "type": "string", + "description": " Policy name\n\nExample: - \"policy-1\"-", + "title": "policy", + "x-displayname": "Policy", + "x-ves-example": "policy-1" + }, + "policy_namespace": { + "type": "string", + "description": " Policy namespace\n\nExample: - \"data-path\"-", + "title": "policy namespace", + "x-displayname": "Policy namespace", + "x-ves-example": "data-path" + }, + "policy_rule": { + "type": "string", + "description": " Policy rule name\n\nExample: - \"policy-rule-1\"-", + "title": "policy rule", + "x-displayname": "Policy rule", + "x-ves-example": "policy-rule-1" + } + } + }, + "explain_log_recordThreatCampaign": { + "type": "object", + "description": "Threat campaign details", + "title": "ThreatCampaign", + "x-displayname": "Threat Campaign", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.ThreatCampaign", + "properties": { + "attack_type": { + "type": "string", + "description": " Attack type of threat campaign\n\nExample: - \"Command Execution\"-", + "title": "attack_type", + "x-displayname": "Attack Type", + "x-ves-example": "Command Execution" + }, + "id": { + "type": "string", + "description": " ThreatCampaign ID\n\nExample: - \"cmpe1ab3d4feddb3c691bc68201d253be66\"-", + "title": "id", + "x-displayname": "ThreatCampaign ID", + "x-ves-example": "cmpe1ab3d4feddb3c691bc68201d253be66" + }, + "name": { + "type": "string", + "description": " ThreatCampaign name\n\nExample: - \"Nette Framework Remote Code Execution - oshi\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "Nette Framework Remote Code Execution - oshi" + } + } + }, + "explain_log_recordViolation": { + "type": "object", + "description": "Violation details", + "title": "Violation", + "x-displayname": "Violation", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.Violation", + "properties": { + "attack_type": { + "type": "string", + "description": " Attack type of the violation\n\nExample: - \"Command Execution\"-", + "title": "attack_type", + "x-displayname": "Attack Type", + "x-ves-example": "Command Execution" + }, + "context": { + "type": "string", + "description": " Context of the violation\n\nExample: - \"parameter\"-", + "title": "context", + "x-displayname": "Context", + "x-ves-example": "parameter" + }, + "matching_info": { + "type": "string", + "description": " Matching info\n\nExample: - \"File extension was dat\"-", + "title": "matching_info", + "x-displayname": "Matching Info", + "x-ves-example": "File extension was dat" + }, + "name": { + "type": "string", + "description": " Violation name\n\nExample: - \"Illegal filetype\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "Illegal filetype" + } + } + }, + "explain_log_recordWAFEventDetails": { + "type": "object", + "description": "WAF security events details", + "title": "WAFEventDetails", + "x-displayname": "WAF Event Details", + "x-ves-proto-message": "ves.io.schema.ai_assistant.explain_log_record.WAFEventDetails", + "properties": { + "action": { + "description": " Event action\n\nExample: - \"Block\"-", + "title": "action", + "$ref": "#/definitions/ai_assistantexplain_log_recordAction", + "x-displayname": "Action", + "x-ves-example": "Block" + }, + "app_firewall": { + "type": "string", + "description": " App Firewall name\n\nExample: - \"app-firewall\"-", + "title": "app_firewall", + "x-displayname": "App Firewall", + "x-ves-example": "app-firewall" + }, + "bot": { + "description": " Bot that were detected in the request", + "title": "bots", + "$ref": "#/definitions/explain_log_recordBot", + "x-displayname": "Bot" + }, + "enforcement_mode": { + "description": " Enforcement mode\n\nExample: - \"Monitoring\"-", + "title": "enforcement_mode", + "$ref": "#/definitions/explain_log_recordEnforcementMode", + "x-displayname": "Enforcement Mode", + "x-ves-example": "Monitoring" + }, + "signatures": { + "type": "array", + "description": " The signatures that were detected in the request", + "title": "signatures", + "items": { + "$ref": "#/definitions/explain_log_recordSignature" + }, + "x-displayname": "Signatures" + }, + "threat_campaigns": { + "type": "array", + "description": " Threat campaigns that were detected in the request", + "title": "threat_campaigns", + "items": { + "$ref": "#/definitions/explain_log_recordThreatCampaign" + }, + "x-displayname": "Threat Campaign" + }, + "violations": { + "type": "array", + "description": " The violations that were detected in the request", + "title": "violations", + "items": { + "$ref": "#/definitions/explain_log_recordViolation" + }, + "x-displayname": "Violations" + } + } + }, + "gen_dashboard_filterGenDashboardFilterResponse": { + "type": "object", + "description": "Generate dashboard filter response", + "title": "GenDashboardFilterResponse", + "x-displayname": "Generate Dashboard Filter", + "x-ves-proto-message": "ves.io.schema.ai_assistant.gen_dashboard_filter.GenDashboardFilterResponse", + "properties": { + "actions": { + "type": "string", + "description": " Follow-up actions\n\nExample: - \"To view these events go to the ${{link:dashboard_link}} page\"-", + "title": "actions", + "x-displayname": "Actions", + "x-ves-example": "To view these events go to the ${{link:dashboard_link}} page" + }, + "links": { + "type": "array", + "description": " Links that will be presented to the user", + "title": "links", + "items": { + "$ref": "#/definitions/commonLink" + }, + "x-displayname": "Links" + }, + "summary": { + "type": "string", + "description": " Events summary\n\nExample: - \"135 events matching your query were found\"-", + "title": "summary", + "x-displayname": "Summary", + "x-ves-example": "135 events matching your query were found" + } + } + }, + "policyIPThreatCategory": { + "type": "string", + "description": "The IP threat categories to use when a policy based IP threat category is configured.\n\n - SPAM_SOURCES: SPAM_SOURCES\n\n - WINDOWS_EXPLOITS: WINDOWS_EXPLOITS\n\n - WEB_ATTACKS: WEB_ATTACKS\n\n - BOTNETS: BOTNETS\n\n - SCANNERS: SCANNERS\n\n - REPUTATION: REPUTATION\n\n - PHISHING: PHISHING\n\n - PROXY: PROXY\n\n - MOBILE_THREATS: MOBILE_THREATS\n\n - TOR_PROXY: TOR_PROXY\n\n - DENIAL_OF_SERVICE: DENIAL_OF_SERVICE\n\n - NETWORK: NETWORK\n", + "title": "IP Threat Category", + "enum": [ + "SPAM_SOURCES", + "WINDOWS_EXPLOITS", + "WEB_ATTACKS", + "BOTNETS", + "SCANNERS", + "REPUTATION", + "PHISHING", + "PROXY", + "MOBILE_THREATS", + "TOR_PROXY", + "DENIAL_OF_SERVICE", + "NETWORK" + ], + "default": "SPAM_SOURCES", + "x-displayname": "IP Threat Category", + "x-ves-proto-enum": "ves.io.schema.policy.IPThreatCategory" + } + }, + "x-displayname": "AI Assistant APIs", + "x-ves-proto-file": "ves.io/schema/ai_assistant/public_customapi.proto" +}` diff --git a/pbgo/extschema/schema/ai_assistant/public_customapi.vesmsg.go b/pbgo/extschema/schema/ai_assistant/public_customapi.vesmsg.go new file mode 100644 index 000000000..07c565c1e --- /dev/null +++ b/pbgo/extschema/schema/ai_assistant/public_customapi.vesmsg.go @@ -0,0 +1,218 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ai_assistant + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema_ai_assistant_gen_dashboard_filter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *AIAssistantQueryRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AIAssistantQueryRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AIAssistantQueryRequest) DeepCopy() *AIAssistantQueryRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AIAssistantQueryRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AIAssistantQueryRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AIAssistantQueryRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AIAssistantQueryRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateAIAssistantQueryRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAIAssistantQueryRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AIAssistantQueryRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AIAssistantQueryRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["current_query"]; exists { + + vOpts := append(opts, db.WithValidateField("current_query")) + if err := fv(ctx, m.GetCurrentQuery(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAIAssistantQueryRequestValidator = func() *ValidateAIAssistantQueryRequest { + v := &ValidateAIAssistantQueryRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AIAssistantQueryRequestValidator() db.Validator { + return DefaultAIAssistantQueryRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AIAssistantQueryResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AIAssistantQueryResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AIAssistantQueryResponse) DeepCopy() *AIAssistantQueryResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AIAssistantQueryResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AIAssistantQueryResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AIAssistantQueryResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AIAssistantQueryResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateAIAssistantQueryResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAIAssistantQueryResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AIAssistantQueryResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AIAssistantQueryResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["current_query"]; exists { + + vOpts := append(opts, db.WithValidateField("current_query")) + if err := fv(ctx, m.GetCurrentQuery(), vOpts...); err != nil { + return err + } + + } + + switch m.GetResponseChoice().(type) { + case *AIAssistantQueryResponse_ExplainLog: + if fv, exists := v.FldValidators["response_choice.explain_log"]; exists { + val := m.GetResponseChoice().(*AIAssistantQueryResponse_ExplainLog).ExplainLog + vOpts := append(opts, + db.WithValidateField("response_choice"), + db.WithValidateField("explain_log"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AIAssistantQueryResponse_GenDashboardFilter: + if fv, exists := v.FldValidators["response_choice.gen_dashboard_filter"]; exists { + val := m.GetResponseChoice().(*AIAssistantQueryResponse_GenDashboardFilter).GenDashboardFilter + vOpts := append(opts, + db.WithValidateField("response_choice"), + db.WithValidateField("gen_dashboard_filter"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAIAssistantQueryResponseValidator = func() *ValidateAIAssistantQueryResponse { + v := &ValidateAIAssistantQueryResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["response_choice.gen_dashboard_filter"] = ves_io_schema_ai_assistant_gen_dashboard_filter.GenDashboardFilterResponseValidator().Validate + + return v +}() + +func AIAssistantQueryResponseValidator() db.Validator { + return DefaultAIAssistantQueryResponseValidator +} diff --git a/pbgo/extschema/schema/alert_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/alert_policy/crudapi/api.vesapi.go index 59d0a463d..cdc94fe5d 100644 --- a/pbgo/extschema/schema/alert_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/alert_policy/crudapi/api.vesapi.go @@ -3452,10 +3452,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/alert_policy/pkg.vespkg.go b/pbgo/extschema/schema/alert_policy/pkg.vespkg.go index 060d2a7cf..078037b3a 100644 --- a/pbgo/extschema/schema/alert_policy/pkg.vespkg.go +++ b/pbgo/extschema/schema/alert_policy/pkg.vespkg.go @@ -7,6 +7,7 @@ import ( "reflect" "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/server" "gopkg.volterra.us/stdlib/store" "gopkg.volterra.us/stdlib/svcfw" ) @@ -28,6 +29,10 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.alert_policy.ReplaceRequest"] = ReplaceRequestValidator() vr["ves.io.schema.alert_policy.ReplaceResponse"] = ReplaceResponseValidator() + vr["ves.io.schema.alert_policy.AlertPolicyMatch"] = AlertPolicyMatchValidator() + vr["ves.io.schema.alert_policy.AlertPolicyMatchRequest"] = AlertPolicyMatchRequestValidator() + vr["ves.io.schema.alert_policy.AlertPolicyMatchResponse"] = AlertPolicyMatchResponseValidator() + vr["ves.io.schema.alert_policy.CreateSpecType"] = CreateSpecTypeValidator() vr["ves.io.schema.alert_policy.CustomGroupBy"] = CustomGroupByValidator() vr["ves.io.schema.alert_policy.CustomMatcher"] = CustomMatcherValidator() @@ -60,6 +65,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { sm["ves.io.schema.alert_policy.API"] = "config" + sm["ves.io.schema.alert_policy.CustomAPI"] = "alert" } @@ -97,6 +103,26 @@ func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { }() + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + + customCSR.SwaggerRegistry["ves.io.schema.alert_policy.Object"] = CustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.alert_policy.CustomAPI"] = NewCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.alert_policy.CustomAPI"] = NewCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.alert_policy.CustomAPI"] = RegisterCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.alert_policy.CustomAPI"] = RegisterGwCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.alert_policy.CustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewCustomAPIServer(svc) + } + + }() + } func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { diff --git a/pbgo/extschema/schema/alert_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/alert_policy/public_crudapi.vesapi.go index 940244159..2b92ba95a 100644 --- a/pbgo/extschema/schema/alert_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/alert_policy/public_crudapi.vesapi.go @@ -3191,10 +3191,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3251,10 +3255,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3357,10 +3365,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/alert_policy/public_customapi.pb.go b/pbgo/extschema/schema/alert_policy/public_customapi.pb.go new file mode 100644 index 000000000..2aa7f65aa --- /dev/null +++ b/pbgo/extschema/schema/alert_policy/public_customapi.pb.go @@ -0,0 +1,1302 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/alert_policy/public_customapi.proto + +// Alert Policy +// +// x-displayName: "Alert Policy" +// Custom APIs for alert policy object + +package alert_policy + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// AlertPolicyStatus +// +// x-displayName: "AlertPolicyStatus" +// Indicates if Alert Policy is in Alert Policy Set, PolicyStatus is ACTIVE or INACTIVE. +type AlertPolicyStatus int32 + +const ( + // x-displayName: "INACTIVE" + // INACTIVE means Alert Policy is not in Alert Policy Set, and will + // not be used to send Alerts to Alert Receivers. + INACTIVE AlertPolicyStatus = 0 + // x-displayName: "ACTIVE" + // ACTIVE means Alert Policy is in Alert Policy Set, and is used + // to send out Alert to Alert Receivers. + ACTIVE AlertPolicyStatus = 1 +) + +var AlertPolicyStatus_name = map[int32]string{ + 0: "INACTIVE", + 1: "ACTIVE", +} + +var AlertPolicyStatus_value = map[string]int32{ + "INACTIVE": 0, + "ACTIVE": 1, +} + +func (AlertPolicyStatus) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_54d5737f5424cdab, []int{0} +} + +// Alert Policy Match Request +// +// x-displayName: "Alert Policy Match Request" +// Request message for GetAlertPolicyMatch RPC, +// describing alert to match against alert policies +type AlertPolicyMatchRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-required + // x-example: "ns1" + // The namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // labels + // + // x-displayName: "Labels" + // x-required + // x-example: "labels": { + // "namespace": "system", + // "tenant" :"tenant2", + // "alertname": "podXcrash", + // "group": "IaaS", + // "severity": "critical" + // }, + // Alert labels to find match against alert policies + // requires tenant and namespace to be defined labels map + Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *AlertPolicyMatchRequest) Reset() { *m = AlertPolicyMatchRequest{} } +func (*AlertPolicyMatchRequest) ProtoMessage() {} +func (*AlertPolicyMatchRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_54d5737f5424cdab, []int{0} +} +func (m *AlertPolicyMatchRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AlertPolicyMatchRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_AlertPolicyMatchRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *AlertPolicyMatchRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlertPolicyMatchRequest.Merge(m, src) +} +func (m *AlertPolicyMatchRequest) XXX_Size() int { + return m.Size() +} +func (m *AlertPolicyMatchRequest) XXX_DiscardUnknown() { + xxx_messageInfo_AlertPolicyMatchRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_AlertPolicyMatchRequest proto.InternalMessageInfo + +func (m *AlertPolicyMatchRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *AlertPolicyMatchRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +// Alert Policy Match +// +// x-displayName: "Alert Policy Match" +// Alert Policy info that matches AlertPolicyMatchRequest giving +// +// alert policy name, +// alert policy activation state +type AlertPolicyMatch struct { + // policy_name + // + // x-displayName: "Policy Name" + // x-example: samplepolicy + PolicyName string `protobuf:"bytes,1,opt,name=policy_name,json=policyName,proto3" json:"policy_name,omitempty"` + // policy_status + // + // x-displayName: "Policy Status" + // x-example: 1, ACTIVE + PolicyStatus AlertPolicyStatus `protobuf:"varint,2,opt,name=policy_status,json=policyStatus,proto3,enum=ves.io.schema.alert_policy.AlertPolicyStatus" json:"policy_status,omitempty"` +} + +func (m *AlertPolicyMatch) Reset() { *m = AlertPolicyMatch{} } +func (*AlertPolicyMatch) ProtoMessage() {} +func (*AlertPolicyMatch) Descriptor() ([]byte, []int) { + return fileDescriptor_54d5737f5424cdab, []int{1} +} +func (m *AlertPolicyMatch) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AlertPolicyMatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_AlertPolicyMatch.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *AlertPolicyMatch) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlertPolicyMatch.Merge(m, src) +} +func (m *AlertPolicyMatch) XXX_Size() int { + return m.Size() +} +func (m *AlertPolicyMatch) XXX_DiscardUnknown() { + xxx_messageInfo_AlertPolicyMatch.DiscardUnknown(m) +} + +var xxx_messageInfo_AlertPolicyMatch proto.InternalMessageInfo + +func (m *AlertPolicyMatch) GetPolicyName() string { + if m != nil { + return m.PolicyName + } + return "" +} + +func (m *AlertPolicyMatch) GetPolicyStatus() AlertPolicyStatus { + if m != nil { + return m.PolicyStatus + } + return INACTIVE +} + +// Alert Policy Match Response +// +// x-displayName: "Alert Policy Match Response" +// Response of matching Alert Policies from Get Alert Policy Match request +type AlertPolicyMatchResponse struct { + // alert_match + // + // x-displayName: "Alert Match" + // x-example:{"alert_match":[{"policy_name":"policy1","policy_active":1},{"policy_name":"policy4"}]} + // List of Alert Policies that match given requested namespace,labels. + AlertMatch []*AlertPolicyMatch `protobuf:"bytes,1,rep,name=alert_match,json=alertMatch,proto3" json:"alert_match,omitempty"` +} + +func (m *AlertPolicyMatchResponse) Reset() { *m = AlertPolicyMatchResponse{} } +func (*AlertPolicyMatchResponse) ProtoMessage() {} +func (*AlertPolicyMatchResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_54d5737f5424cdab, []int{2} +} +func (m *AlertPolicyMatchResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AlertPolicyMatchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_AlertPolicyMatchResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *AlertPolicyMatchResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlertPolicyMatchResponse.Merge(m, src) +} +func (m *AlertPolicyMatchResponse) XXX_Size() int { + return m.Size() +} +func (m *AlertPolicyMatchResponse) XXX_DiscardUnknown() { + xxx_messageInfo_AlertPolicyMatchResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_AlertPolicyMatchResponse proto.InternalMessageInfo + +func (m *AlertPolicyMatchResponse) GetAlertMatch() []*AlertPolicyMatch { + if m != nil { + return m.AlertMatch + } + return nil +} + +func init() { + proto.RegisterEnum("ves.io.schema.alert_policy.AlertPolicyStatus", AlertPolicyStatus_name, AlertPolicyStatus_value) + golang_proto.RegisterEnum("ves.io.schema.alert_policy.AlertPolicyStatus", AlertPolicyStatus_name, AlertPolicyStatus_value) + proto.RegisterType((*AlertPolicyMatchRequest)(nil), "ves.io.schema.alert_policy.AlertPolicyMatchRequest") + golang_proto.RegisterType((*AlertPolicyMatchRequest)(nil), "ves.io.schema.alert_policy.AlertPolicyMatchRequest") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.alert_policy.AlertPolicyMatchRequest.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.alert_policy.AlertPolicyMatchRequest.LabelsEntry") + proto.RegisterType((*AlertPolicyMatch)(nil), "ves.io.schema.alert_policy.AlertPolicyMatch") + golang_proto.RegisterType((*AlertPolicyMatch)(nil), "ves.io.schema.alert_policy.AlertPolicyMatch") + proto.RegisterType((*AlertPolicyMatchResponse)(nil), "ves.io.schema.alert_policy.AlertPolicyMatchResponse") + golang_proto.RegisterType((*AlertPolicyMatchResponse)(nil), "ves.io.schema.alert_policy.AlertPolicyMatchResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/alert_policy/public_customapi.proto", fileDescriptor_54d5737f5424cdab) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/alert_policy/public_customapi.proto", fileDescriptor_54d5737f5424cdab) +} + +var fileDescriptor_54d5737f5424cdab = []byte{ + // 655 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xcf, 0x6b, 0xd4, 0x5a, + 0x14, 0xce, 0xcd, 0xd0, 0xd2, 0xde, 0xe9, 0x7b, 0xcc, 0xcb, 0x7b, 0xf0, 0xe2, 0x58, 0xae, 0x75, + 0x56, 0xa5, 0x34, 0x09, 0x9d, 0xaa, 0x68, 0x37, 0xd2, 0x96, 0x22, 0x03, 0xb6, 0x96, 0x51, 0x5c, + 0xb8, 0x29, 0x37, 0x99, 0xd3, 0x34, 0x36, 0xc9, 0x8d, 0xb9, 0x37, 0xa1, 0x83, 0x08, 0xd2, 0x8d, + 0x28, 0x2e, 0x04, 0x77, 0xfe, 0x05, 0xfe, 0x0d, 0x76, 0xd3, 0x9d, 0x82, 0x20, 0x45, 0x17, 0x76, + 0x69, 0x33, 0x2e, 0x74, 0xd7, 0x3f, 0x41, 0xe6, 0x26, 0xad, 0x33, 0xfd, 0x21, 0xd6, 0xdd, 0x39, + 0xe7, 0xbb, 0xdf, 0x77, 0xcf, 0x77, 0xee, 0x0f, 0x3c, 0x95, 0x02, 0x37, 0x3d, 0x66, 0x71, 0x67, + 0x0d, 0x02, 0x6a, 0x51, 0x1f, 0x62, 0xb1, 0x12, 0x31, 0xdf, 0x73, 0xda, 0x56, 0x94, 0xd8, 0xbe, + 0xe7, 0xac, 0x38, 0x09, 0x17, 0x2c, 0xa0, 0x91, 0x67, 0x46, 0x31, 0x13, 0x4c, 0xab, 0xe6, 0x14, + 0x33, 0xa7, 0x98, 0xbd, 0x94, 0xaa, 0xe1, 0x7a, 0x62, 0x2d, 0xb1, 0x4d, 0x87, 0x05, 0x96, 0xcb, + 0x5c, 0x66, 0x49, 0x8a, 0x9d, 0xac, 0xca, 0x4c, 0x26, 0x32, 0xca, 0xa5, 0xaa, 0xa3, 0x2e, 0x63, + 0xae, 0x0f, 0x16, 0x8d, 0x3c, 0x8b, 0x86, 0x21, 0x13, 0x54, 0x78, 0x2c, 0xe4, 0x05, 0x7a, 0xbe, + 0xbf, 0x37, 0x16, 0xf5, 0x82, 0xe7, 0xfa, 0x41, 0xd1, 0x8e, 0xe0, 0x00, 0x1a, 0xed, 0x87, 0x52, + 0xea, 0x7b, 0x2d, 0x2a, 0xa0, 0x40, 0x6b, 0x47, 0x50, 0xe0, 0x10, 0xa6, 0xfd, 0xe2, 0xb5, 0xcf, + 0x08, 0xff, 0x3f, 0xdb, 0xf5, 0xb5, 0x2c, 0x6d, 0x2d, 0x52, 0xe1, 0xac, 0x35, 0xe1, 0x41, 0x02, + 0x5c, 0x68, 0xa3, 0x78, 0x38, 0xa4, 0x01, 0xf0, 0x88, 0x3a, 0xa0, 0xa3, 0x31, 0x34, 0x3e, 0xdc, + 0xfc, 0x59, 0xd0, 0x1c, 0x3c, 0xe8, 0x53, 0x1b, 0x7c, 0xae, 0xab, 0x63, 0xa5, 0xf1, 0x72, 0xfd, + 0xba, 0x79, 0xfa, 0xb4, 0xcc, 0x53, 0xb6, 0x30, 0x6f, 0x4a, 0x85, 0x85, 0x50, 0xc4, 0xed, 0x39, + 0xfc, 0xe6, 0xfb, 0x76, 0x69, 0xe0, 0x15, 0x52, 0x2b, 0xf5, 0x66, 0x21, 0x5d, 0xbd, 0x86, 0xcb, + 0x3d, 0x4b, 0xb4, 0x0a, 0x2e, 0xad, 0x43, 0xbb, 0xe8, 0xa5, 0x1b, 0x6a, 0xff, 0xe1, 0x81, 0x94, + 0xfa, 0x09, 0xe8, 0xaa, 0xac, 0xe5, 0xc9, 0x8c, 0x7a, 0x15, 0xd5, 0x9e, 0x20, 0x5c, 0x39, 0xba, + 0xad, 0x76, 0x01, 0x97, 0xf3, 0x8e, 0x56, 0xba, 0x46, 0x0a, 0x21, 0x9c, 0x97, 0x96, 0x68, 0x00, + 0x5a, 0x13, 0xff, 0x55, 0x2c, 0xe0, 0x82, 0x8a, 0x84, 0x4b, 0xdd, 0xbf, 0xeb, 0xc6, 0x6f, 0x9a, + 0xbb, 0x2d, 0x49, 0xcd, 0x91, 0xa8, 0x27, 0xab, 0x79, 0x58, 0x3f, 0xee, 0x9f, 0x47, 0x2c, 0xe4, + 0xa0, 0x2d, 0xe2, 0x72, 0xae, 0x15, 0x74, 0xcb, 0x3a, 0x92, 0xa3, 0x9c, 0x3c, 0xd3, 0x28, 0xb1, + 0x84, 0x65, 0x3c, 0x61, 0xe0, 0x7f, 0x8e, 0x75, 0xa3, 0x8d, 0xe0, 0xa1, 0xc6, 0xd2, 0xec, 0xfc, + 0x9d, 0xc6, 0xdd, 0x85, 0x8a, 0xa2, 0x61, 0x3c, 0x58, 0xc4, 0xa8, 0xfe, 0x5e, 0xc5, 0xc3, 0xf3, + 0xf2, 0xd2, 0xcf, 0x2e, 0x37, 0xb4, 0xe7, 0x2a, 0xfe, 0xf7, 0x06, 0x88, 0x63, 0x43, 0x9b, 0xfe, + 0x83, 0x93, 0xad, 0x5e, 0x3a, 0x1b, 0x29, 0x1f, 0x47, 0xed, 0x29, 0xca, 0xde, 0xea, 0x8d, 0xd5, + 0xcb, 0x1b, 0x8e, 0x41, 0x93, 0x96, 0x27, 0x0c, 0x9f, 0xb9, 0xdc, 0x90, 0x5c, 0x6e, 0x04, 0x2c, + 0xf4, 0x04, 0x8b, 0x27, 0x4f, 0x86, 0x27, 0x53, 0xe0, 0x86, 0xc7, 0x0c, 0x17, 0x42, 0x88, 0xa9, + 0x6f, 0xc4, 0x40, 0x5b, 0x9b, 0x9f, 0xbe, 0xbe, 0x54, 0xaf, 0xd4, 0xa6, 0x8a, 0x07, 0x6e, 0x1d, + 0xde, 0x5e, 0x6e, 0x3d, 0x3c, 0x8c, 0x1f, 0xf5, 0xff, 0x05, 0xf2, 0x20, 0x66, 0xd0, 0x44, 0xd5, + 0xda, 0xde, 0x42, 0xa5, 0x8f, 0x5b, 0xe8, 0xe2, 0x2f, 0x8c, 0xdc, 0xb2, 0xef, 0x83, 0x23, 0x36, + 0x3f, 0xe8, 0xea, 0x10, 0x9a, 0x7b, 0x86, 0x76, 0xf6, 0x88, 0xb2, 0xbb, 0x47, 0x94, 0xfd, 0x3d, + 0x82, 0x1e, 0x67, 0x04, 0xbd, 0xce, 0x08, 0x7a, 0x97, 0x11, 0xb4, 0x93, 0x11, 0xf4, 0x25, 0x23, + 0xe8, 0x5b, 0x46, 0x94, 0xfd, 0x8c, 0xa0, 0x17, 0x1d, 0xa2, 0x6c, 0x77, 0x08, 0xda, 0xe9, 0x10, + 0x65, 0xb7, 0x43, 0x94, 0x7b, 0xcb, 0x2e, 0x8b, 0xd6, 0x5d, 0x33, 0x65, 0xbe, 0x80, 0x38, 0xa6, + 0x66, 0xc2, 0x2d, 0x19, 0xac, 0xb2, 0x38, 0x30, 0xa2, 0x98, 0xa5, 0x5e, 0x0b, 0x62, 0xe3, 0x00, + 0xb6, 0x22, 0xdb, 0x65, 0x16, 0x6c, 0x88, 0xe2, 0x65, 0x9f, 0xf0, 0xa5, 0xd9, 0x83, 0xf2, 0x7d, + 0x4f, 0xff, 0x08, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x18, 0xcd, 0xc5, 0xf7, 0x04, 0x00, 0x00, +} + +func (x AlertPolicyStatus) String() string { + s, ok := AlertPolicyStatus_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *AlertPolicyMatchRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AlertPolicyMatchRequest) + if !ok { + that2, ok := that.(AlertPolicyMatchRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + return true +} +func (this *AlertPolicyMatch) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AlertPolicyMatch) + if !ok { + that2, ok := that.(AlertPolicyMatch) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.PolicyName != that1.PolicyName { + return false + } + if this.PolicyStatus != that1.PolicyStatus { + return false + } + return true +} +func (this *AlertPolicyMatchResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AlertPolicyMatchResponse) + if !ok { + that2, ok := that.(AlertPolicyMatchResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.AlertMatch) != len(that1.AlertMatch) { + return false + } + for i := range this.AlertMatch { + if !this.AlertMatch[i].Equal(that1.AlertMatch[i]) { + return false + } + } + return true +} +func (this *AlertPolicyMatchRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&alert_policy.AlertPolicyMatchRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AlertPolicyMatch) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&alert_policy.AlertPolicyMatch{") + s = append(s, "PolicyName: "+fmt.Sprintf("%#v", this.PolicyName)+",\n") + s = append(s, "PolicyStatus: "+fmt.Sprintf("%#v", this.PolicyStatus)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AlertPolicyMatchResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&alert_policy.AlertPolicyMatchResponse{") + if this.AlertMatch != nil { + s = append(s, "AlertMatch: "+fmt.Sprintf("%#v", this.AlertMatch)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomAPIClient is the client API for CustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomAPIClient interface { + // GetAlertPolicyMatch + // + // x-displayName: "Get Alert Policy Match" + // Get Alert Policies that match to a set of alert labels for a namespace. + GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest, opts ...grpc.CallOption) (*AlertPolicyMatchResponse, error) +} + +type customAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { + return &customAPIClient{cc} +} + +func (c *customAPIClient) GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest, opts ...grpc.CallOption) (*AlertPolicyMatchResponse, error) { + out := new(AlertPolicyMatchResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.alert_policy.CustomAPI/GetAlertPolicyMatch", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CustomAPIServer is the server API for CustomAPI service. +type CustomAPIServer interface { + // GetAlertPolicyMatch + // + // x-displayName: "Get Alert Policy Match" + // Get Alert Policies that match to a set of alert labels for a namespace. + GetAlertPolicyMatch(context.Context, *AlertPolicyMatchRequest) (*AlertPolicyMatchResponse, error) +} + +// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomAPIServer struct { +} + +func (*UnimplementedCustomAPIServer) GetAlertPolicyMatch(ctx context.Context, req *AlertPolicyMatchRequest) (*AlertPolicyMatchResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetAlertPolicyMatch not implemented") +} + +func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { + s.RegisterService(&_CustomAPI_serviceDesc, srv) +} + +func _CustomAPI_GetAlertPolicyMatch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AlertPolicyMatchRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).GetAlertPolicyMatch(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.alert_policy.CustomAPI/GetAlertPolicyMatch", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).GetAlertPolicyMatch(ctx, req.(*AlertPolicyMatchRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.alert_policy.CustomAPI", + HandlerType: (*CustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetAlertPolicyMatch", + Handler: _CustomAPI_GetAlertPolicyMatch_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/alert_policy/public_customapi.proto", +} + +func (m *AlertPolicyMatchRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AlertPolicyMatchRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AlertPolicyMatchRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *AlertPolicyMatch) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AlertPolicyMatch) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AlertPolicyMatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PolicyStatus != 0 { + i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.PolicyStatus)) + i-- + dAtA[i] = 0x10 + } + if len(m.PolicyName) > 0 { + i -= len(m.PolicyName) + copy(dAtA[i:], m.PolicyName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.PolicyName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *AlertPolicyMatchResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AlertPolicyMatchResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AlertPolicyMatchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AlertMatch) > 0 { + for iNdEx := len(m.AlertMatch) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AlertMatch[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *AlertPolicyMatchRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + } + } + return n +} + +func (m *AlertPolicyMatch) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.PolicyName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.PolicyStatus != 0 { + n += 1 + sovPublicCustomapi(uint64(m.PolicyStatus)) + } + return n +} + +func (m *AlertPolicyMatchResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.AlertMatch) > 0 { + for _, e := range m.AlertMatch { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *AlertPolicyMatchRequest) String() string { + if this == nil { + return "nil" + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&AlertPolicyMatchRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Labels:` + mapStringForLabels + `,`, + `}`, + }, "") + return s +} +func (this *AlertPolicyMatch) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AlertPolicyMatch{`, + `PolicyName:` + fmt.Sprintf("%v", this.PolicyName) + `,`, + `PolicyStatus:` + fmt.Sprintf("%v", this.PolicyStatus) + `,`, + `}`, + }, "") + return s +} +func (this *AlertPolicyMatchResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForAlertMatch := "[]*AlertPolicyMatch{" + for _, f := range this.AlertMatch { + repeatedStringForAlertMatch += strings.Replace(f.String(), "AlertPolicyMatch", "AlertPolicyMatch", 1) + "," + } + repeatedStringForAlertMatch += "}" + s := strings.Join([]string{`&AlertPolicyMatchResponse{`, + `AlertMatch:` + repeatedStringForAlertMatch + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *AlertPolicyMatchRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AlertPolicyMatchRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AlertPolicyMatchRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCustomapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCustomapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AlertPolicyMatch) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AlertPolicyMatch: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AlertPolicyMatch: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyStatus", wireType) + } + m.PolicyStatus = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PolicyStatus |= AlertPolicyStatus(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AlertPolicyMatchResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AlertPolicyMatchResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AlertPolicyMatchResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AlertMatch", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AlertMatch = append(m.AlertMatch, &AlertPolicyMatch{}) + if err := m.AlertMatch[len(m.AlertMatch)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/alert_policy/public_customapi.pb.gw.go b/pbgo/extschema/schema/alert_policy/public_customapi.pb.gw.go new file mode 100644 index 000000000..052e9cbe6 --- /dev/null +++ b/pbgo/extschema/schema/alert_policy/public_customapi.pb.gw.go @@ -0,0 +1,196 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/alert_policy/public_customapi.proto + +/* +Package alert_policy is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package alert_policy + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_CustomAPI_GetAlertPolicyMatch_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AlertPolicyMatchRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := client.GetAlertPolicyMatch(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_GetAlertPolicyMatch_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AlertPolicyMatchRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := server.GetAlertPolicyMatch(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCustomAPIHandlerServer registers the http handlers for service CustomAPI to "mux". +// UnaryRPC :call CustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CustomAPIServer) error { + + mux.Handle("POST", pattern_CustomAPI_GetAlertPolicyMatch_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_GetAlertPolicyMatch_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_GetAlertPolicyMatch_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCustomAPIHandlerFromEndpoint is same as RegisterCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCustomAPIHandler(ctx, mux, conn) +} + +// RegisterCustomAPIHandler registers the http handlers for service CustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIClient(conn)) +} + +// RegisterCustomAPIHandlerClient registers the http handlers for service CustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CustomAPIClient" to call the correct interceptors. +func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CustomAPIClient) error { + + mux.Handle("POST", pattern_CustomAPI_GetAlertPolicyMatch_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_GetAlertPolicyMatch_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_GetAlertPolicyMatch_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CustomAPI_GetAlertPolicyMatch_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "namespace", "alert_policy", "match"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_CustomAPI_GetAlertPolicyMatch_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/alert_policy/public_customapi.vesapi.go b/pbgo/extschema/schema/alert_policy/public_customapi.vesapi.go new file mode 100644 index 000000000..b3424bb45 --- /dev/null +++ b/pbgo/extschema/schema/alert_policy/public_customapi.vesapi.go @@ -0,0 +1,491 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package alert_policy + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create CustomAPI GRPC Client satisfying server.CustomClient +type CustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient CustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *CustomAPIGrpcClient) doRPCGetAlertPolicyMatch(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &AlertPolicyMatchRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.alert_policy.AlertPolicyMatchRequest", yamlReq) + } + rsp, err := c.grpcClient.GetAlertPolicyMatch(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &CustomAPIGrpcClient{ + conn: cc, + grpcClient: NewCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["GetAlertPolicyMatch"] = ccl.doRPCGetAlertPolicyMatch + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create CustomAPI REST Client satisfying server.CustomClient +type CustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *CustomAPIRestClient) doRPCGetAlertPolicyMatch(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &AlertPolicyMatchRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.alert_policy.AlertPolicyMatchRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("labels", fmt.Sprintf("%v", req.Labels)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &AlertPolicyMatchResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.alert_policy.AlertPolicyMatchResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["GetAlertPolicyMatch"] = ccl.doRPCGetAlertPolicyMatch + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create customAPIInprocClient + +// INPROC Client (satisfying CustomAPIClient interface) +type customAPIInprocClient struct { + CustomAPIServer +} + +func (c *customAPIInprocClient) GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest, opts ...grpc.CallOption) (*AlertPolicyMatchResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.alert_policy.CustomAPI.GetAlertPolicyMatch") + return c.CustomAPIServer.GetAlertPolicyMatch(ctx, in) +} + +func NewCustomAPIInprocClient(svc svcfw.Service) CustomAPIClient { + return &customAPIInprocClient{CustomAPIServer: NewCustomAPIServer(svc)} +} + +// RegisterGwCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIInprocClient(s)) +} + +// Create customAPISrv + +// SERVER (satisfying CustomAPIServer interface) +type customAPISrv struct { + svc svcfw.Service +} + +func (s *customAPISrv) GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest) (*AlertPolicyMatchResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.alert_policy.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *AlertPolicyMatchResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.alert_policy.AlertPolicyMatchRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.GetAlertPolicyMatch' operation on 'alert_policy'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.alert_policy.CustomAPI.GetAlertPolicyMatch"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.GetAlertPolicyMatch(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.alert_policy.AlertPolicyMatchResponse", rsp)...) + + return rsp, nil +} + +func NewCustomAPIServer(svc svcfw.Service) CustomAPIServer { + return &customAPISrv{svc: svc} +} + +var CustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Alert Policy", + "description": "Custom APIs for alert policy object", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/{namespace}/alert_policy/match": { + "post": { + "summary": "Get Alert Policy Match", + "description": "Get Alert Policies that match to a set of alert labels for a namespace.", + "operationId": "ves.io.schema.alert_policy.CustomAPI.GetAlertPolicyMatch", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/alert_policyAlertPolicyMatchResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-required\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/alert_policyAlertPolicyMatchRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-alert_policy-customapi-getalertpolicymatch" + }, + "x-ves-proto-rpc": "ves.io.schema.alert_policy.CustomAPI.GetAlertPolicyMatch" + }, + "x-displayname": "Alert Policy Custom API", + "x-ves-proto-service": "ves.io.schema.alert_policy.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "alert_policyAlertPolicyMatch": { + "type": "object", + "description": "Alert Policy info that matches AlertPolicyMatchRequest giving\n alert policy name,\n alert policy activation state", + "title": "Alert Policy Match", + "x-displayname": "Alert Policy Match", + "x-ves-proto-message": "ves.io.schema.alert_policy.AlertPolicyMatch", + "properties": { + "policy_name": { + "type": "string", + "description": "\n\nExample: - samplepolicy-", + "title": "policy_name", + "x-displayname": "Policy Name" + }, + "policy_status": { + "description": "\n\nExample: - 1, ACTIVE-", + "title": "policy_status", + "$ref": "#/definitions/alert_policyAlertPolicyStatus", + "x-displayname": "Policy Status" + } + } + }, + "alert_policyAlertPolicyMatchRequest": { + "type": "object", + "description": "Request message for GetAlertPolicyMatch RPC,\ndescribing alert to match against alert policies", + "title": "Alert Policy Match Request", + "x-displayname": "Alert Policy Match Request", + "x-ves-proto-message": "ves.io.schema.alert_policy.AlertPolicyMatchRequest", + "properties": { + "labels": { + "type": "object", + "description": " \"namespace\": \"system\",\n \"tenant\" :\"tenant2\",\n \"alertname\": \"podXcrash\",\n \"group\": \"IaaS\",\n \"severity\": \"critical\"\n },\n Alert labels to find match against alert policies\n requires tenant and namespace to be defined labels map\n\nExample: - \"labels\"{-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.map.max_pairs: 50\n ves.io.schema.rules.message.required: true\n", + "title": "labels", + "x-displayname": "Labels", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.max_pairs": "50", + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " The namespace in which the configuration object is present\n\nExample: - \"ns1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "alert_policyAlertPolicyMatchResponse": { + "type": "object", + "description": "Response of matching Alert Policies from Get Alert Policy Match request", + "title": "Alert Policy Match Response", + "x-displayname": "Alert Policy Match Response", + "x-ves-proto-message": "ves.io.schema.alert_policy.AlertPolicyMatchResponse", + "properties": { + "alert_match": { + "type": "array", + "description": " x-example:{\"alert_match\":[{\"policy_name\":\"policy1\",\"policy_active\":1},{\"policy_name\":\"policy4\"}]}\n List of Alert Policies that match given requested namespace,labels.", + "title": "alert_match", + "items": { + "$ref": "#/definitions/alert_policyAlertPolicyMatch" + }, + "x-displayname": "Alert Match" + } + } + }, + "alert_policyAlertPolicyStatus": { + "type": "string", + "description": "Indicates if Alert Policy is in Alert Policy Set, PolicyStatus is ACTIVE or INACTIVE.\n\nINACTIVE means Alert Policy is not in Alert Policy Set, and will\nnot be used to send Alerts to Alert Receivers.\nACTIVE means Alert Policy is in Alert Policy Set, and is used\nto send out Alert to Alert Receivers.", + "title": "AlertPolicyStatus", + "enum": [ + "INACTIVE", + "ACTIVE" + ], + "default": "INACTIVE", + "x-displayname": "AlertPolicyStatus", + "x-ves-proto-enum": "ves.io.schema.alert_policy.AlertPolicyStatus" + } + }, + "x-displayname": "Alert Policy", + "x-ves-proto-file": "ves.io/schema/alert_policy/public_customapi.proto" +}` diff --git a/pbgo/extschema/schema/alert_policy/public_customapi.vesmsg.go b/pbgo/extschema/schema/alert_policy/public_customapi.vesmsg.go new file mode 100644 index 000000000..0cf716cef --- /dev/null +++ b/pbgo/extschema/schema/alert_policy/public_customapi.vesmsg.go @@ -0,0 +1,363 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package alert_policy + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *AlertPolicyMatch) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AlertPolicyMatch) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AlertPolicyMatch) DeepCopy() *AlertPolicyMatch { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AlertPolicyMatch{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AlertPolicyMatch) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AlertPolicyMatch) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AlertPolicyMatchValidator().Validate(ctx, m, opts...) +} + +type ValidateAlertPolicyMatch struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAlertPolicyMatch) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AlertPolicyMatch) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AlertPolicyMatch got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("policy_name")) + if err := fv(ctx, m.GetPolicyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policy_status"]; exists { + + vOpts := append(opts, db.WithValidateField("policy_status")) + if err := fv(ctx, m.GetPolicyStatus(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAlertPolicyMatchValidator = func() *ValidateAlertPolicyMatch { + v := &ValidateAlertPolicyMatch{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AlertPolicyMatchValidator() db.Validator { + return DefaultAlertPolicyMatchValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AlertPolicyMatchRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AlertPolicyMatchRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AlertPolicyMatchRequest) DeepCopy() *AlertPolicyMatchRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AlertPolicyMatchRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AlertPolicyMatchRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AlertPolicyMatchRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AlertPolicyMatchRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateAlertPolicyMatchRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAlertPolicyMatchRequest) NamespaceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for namespace") + } + + return validatorFn, nil +} + +func (v *ValidateAlertPolicyMatchRequest) LabelsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemKeyRules := db.GetMapStringKeyRules(rules) + itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) + if err != nil { + return nil, errors.Wrap(err, "Item key ValidationRuleHandler for labels") + } + itemValRules := db.GetMapStringValueRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemValRules) + if err != nil { + return nil, errors.Wrap(err, "Item value ValidationRuleHandler for labels") + } + itemsValidatorFn := func(ctx context.Context, kv map[string]string, opts ...db.ValidateOpt) error { + for key, value := range kv { + if err := itemKeyFn(ctx, key, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + } + if err := itemValFn(ctx, value, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + } + } + return nil + } + mapValFn, err := db.NewMapValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Map ValidationRuleHandler for labels") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.(map[string]string) + if !ok { + return fmt.Errorf("Map validation expected map[ string ]string, got %T", val) + } + if err := mapValFn(ctx, len(elems), opts...); err != nil { + return errors.Wrap(err, "map labels") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items labels") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAlertPolicyMatchRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AlertPolicyMatchRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AlertPolicyMatchRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["labels"]; exists { + vOpts := append(opts, db.WithValidateField("labels")) + if err := fv(ctx, m.GetLabels(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAlertPolicyMatchRequestValidator = func() *ValidateAlertPolicyMatchRequest { + v := &ValidateAlertPolicyMatchRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhNamespace := v.NamespaceValidationRuleHandler + rulesNamespace := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhNamespace(rulesNamespace) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AlertPolicyMatchRequest.namespace: %s", err) + panic(errMsg) + } + v.FldValidators["namespace"] = vFn + + vrhLabels := v.LabelsValidationRuleHandler + rulesLabels := map[string]string{ + "ves.io.schema.rules.map.max_pairs": "50", + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhLabels(rulesLabels) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AlertPolicyMatchRequest.labels: %s", err) + panic(errMsg) + } + v.FldValidators["labels"] = vFn + + return v +}() + +func AlertPolicyMatchRequestValidator() db.Validator { + return DefaultAlertPolicyMatchRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AlertPolicyMatchResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AlertPolicyMatchResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AlertPolicyMatchResponse) DeepCopy() *AlertPolicyMatchResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AlertPolicyMatchResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AlertPolicyMatchResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AlertPolicyMatchResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AlertPolicyMatchResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateAlertPolicyMatchResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAlertPolicyMatchResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AlertPolicyMatchResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AlertPolicyMatchResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["alert_match"]; exists { + + vOpts := append(opts, db.WithValidateField("alert_match")) + for idx, item := range m.GetAlertMatch() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAlertPolicyMatchResponseValidator = func() *ValidateAlertPolicyMatchResponse { + v := &ValidateAlertPolicyMatchResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AlertPolicyMatchResponseValidator() db.Validator { + return DefaultAlertPolicyMatchResponseValidator +} diff --git a/pbgo/extschema/schema/alert_policy_set/crudapi/api.vesapi.go b/pbgo/extschema/schema/alert_policy_set/crudapi/api.vesapi.go index 64cf0dafd..0b6128a39 100644 --- a/pbgo/extschema/schema/alert_policy_set/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/alert_policy_set/crudapi/api.vesapi.go @@ -3166,10 +3166,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/alert_receiver/crudapi/api.vesapi.go b/pbgo/extschema/schema/alert_receiver/crudapi/api.vesapi.go index bd76f2c9f..7541a763b 100644 --- a/pbgo/extschema/schema/alert_receiver/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/alert_receiver/crudapi/api.vesapi.go @@ -3564,10 +3564,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/alert_receiver/pkg.vespkg.go b/pbgo/extschema/schema/alert_receiver/pkg.vespkg.go index 8e43a4138..cd7e8a5af 100644 --- a/pbgo/extschema/schema/alert_receiver/pkg.vespkg.go +++ b/pbgo/extschema/schema/alert_receiver/pkg.vespkg.go @@ -29,9 +29,6 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.alert_receiver.ReplaceRequest"] = ReplaceRequestValidator() vr["ves.io.schema.alert_receiver.ReplaceResponse"] = ReplaceResponseValidator() - vr["ves.io.schema.alert_receiver.AlertPolicyMatch"] = AlertPolicyMatchValidator() - vr["ves.io.schema.alert_receiver.AlertPolicyMatchRequest"] = AlertPolicyMatchRequestValidator() - vr["ves.io.schema.alert_receiver.AlertPolicyMatchResponse"] = AlertPolicyMatchResponseValidator() vr["ves.io.schema.alert_receiver.ConfirmAlertReceiverRequest"] = ConfirmAlertReceiverRequestValidator() vr["ves.io.schema.alert_receiver.ConfirmAlertReceiverResponse"] = ConfirmAlertReceiverResponseValidator() vr["ves.io.schema.alert_receiver.TestAlertReceiverRequest"] = TestAlertReceiverRequestValidator() diff --git a/pbgo/extschema/schema/alert_receiver/public_crudapi.vesapi.go b/pbgo/extschema/schema/alert_receiver/public_crudapi.vesapi.go index 1d1bb7a94..5156b54b0 100644 --- a/pbgo/extschema/schema/alert_receiver/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/alert_receiver/public_crudapi.vesapi.go @@ -3296,10 +3296,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3356,10 +3360,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3462,10 +3470,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/alert_receiver/public_customapi.pb.go b/pbgo/extschema/schema/alert_receiver/public_customapi.pb.go index 3d5895961..0729bd458 100644 --- a/pbgo/extschema/schema/alert_receiver/public_customapi.pb.go +++ b/pbgo/extschema/schema/alert_receiver/public_customapi.pb.go @@ -14,7 +14,6 @@ import ( _ "github.com/gogo/googleapis/google/api" _ "github.com/gogo/protobuf/gogoproto" proto "github.com/gogo/protobuf/proto" - github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" golang_proto "github.com/golang/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" @@ -25,7 +24,6 @@ import ( math "math" math_bits "math/bits" reflect "reflect" - strconv "strconv" strings "strings" ) @@ -41,37 +39,6 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package -// PolicyStatus -// -// x-displayName: "PolicyStatus" -// Indicates if Alert Policy is in Alert Policy Set, PolicyStatus is ACTIVE or INACTIVE. -type PolicyStatus int32 - -const ( - // x-displayName: "INACTIVE" - // INACTIVE means Alert Policy is not in Alert Policy Set, and will - // not be used to send Alerts to Alert Receivers. - INACTIVE PolicyStatus = 0 - // x-displayName: "ACTIVE" - // ACTIVE means Alert Policy is in Alert Policy Set, and is used - // to send out Alert to Alert Receivers. - ACTIVE PolicyStatus = 1 -) - -var PolicyStatus_name = map[int32]string{ - 0: "INACTIVE", - 1: "ACTIVE", -} - -var PolicyStatus_value = map[string]int32{ - "INACTIVE": 0, - "ACTIVE": 1, -} - -func (PolicyStatus) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_d91e62fa21ec8069, []int{0} -} - // Verify Alert Receiver Request // // x-displayName: "Verify Alert Receiver Request" @@ -403,202 +370,7 @@ func (m *TestAlertReceiverResponse) XXX_DiscardUnknown() { var xxx_messageInfo_TestAlertReceiverResponse proto.InternalMessageInfo -// Alert Policy Match Request -// -// x-displayName: "Alert Policy Match Request" -// Request message for GetAlertPolicyMatch RPC, -// describing alert to match against alert policies -type AlertPolicyMatchRequest struct { - // namespace - // - // x-displayName: "Namespace" - // x-required - // x-example: "ns1" - // The namespace in which the configuration object is present - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // labels - // - // x-displayName: "Labels" - // x-required - // x-example: "labels": { - // "namespace": "system", - // "tenant" :"tenant2", - // "alertname": "podXcrash", - // "group": "IaaS", - // "severity": "critical" - // }, - // Alert labels to find match against alert policies - // requires tenant and namespace to be defined labels map - Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (m *AlertPolicyMatchRequest) Reset() { *m = AlertPolicyMatchRequest{} } -func (*AlertPolicyMatchRequest) ProtoMessage() {} -func (*AlertPolicyMatchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d91e62fa21ec8069, []int{6} -} -func (m *AlertPolicyMatchRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *AlertPolicyMatchRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_AlertPolicyMatchRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *AlertPolicyMatchRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_AlertPolicyMatchRequest.Merge(m, src) -} -func (m *AlertPolicyMatchRequest) XXX_Size() int { - return m.Size() -} -func (m *AlertPolicyMatchRequest) XXX_DiscardUnknown() { - xxx_messageInfo_AlertPolicyMatchRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_AlertPolicyMatchRequest proto.InternalMessageInfo - -func (m *AlertPolicyMatchRequest) GetNamespace() string { - if m != nil { - return m.Namespace - } - return "" -} - -func (m *AlertPolicyMatchRequest) GetLabels() map[string]string { - if m != nil { - return m.Labels - } - return nil -} - -// Alert Policy Match -// -// x-displayName: "Alert Policy Match" -// Alert Policy info that matches AlertPolicyMatchRequest giving -// -// alert policy name, -// alert policy activation state -type AlertPolicyMatch struct { - // policy_name - // - // x-displayName: "Policy Name" - // x-example: samplepolicy - PolicyName string `protobuf:"bytes,1,opt,name=policy_name,json=policyName,proto3" json:"policy_name,omitempty"` - // policy_active - // - // x-displayName: "Policy Active" - // x-example: 1, ACTIVE - PolicyActive PolicyStatus `protobuf:"varint,2,opt,name=policy_active,json=policyActive,proto3,enum=ves.io.schema.alert_receiver.PolicyStatus" json:"policy_active,omitempty"` -} - -func (m *AlertPolicyMatch) Reset() { *m = AlertPolicyMatch{} } -func (*AlertPolicyMatch) ProtoMessage() {} -func (*AlertPolicyMatch) Descriptor() ([]byte, []int) { - return fileDescriptor_d91e62fa21ec8069, []int{7} -} -func (m *AlertPolicyMatch) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *AlertPolicyMatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_AlertPolicyMatch.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *AlertPolicyMatch) XXX_Merge(src proto.Message) { - xxx_messageInfo_AlertPolicyMatch.Merge(m, src) -} -func (m *AlertPolicyMatch) XXX_Size() int { - return m.Size() -} -func (m *AlertPolicyMatch) XXX_DiscardUnknown() { - xxx_messageInfo_AlertPolicyMatch.DiscardUnknown(m) -} - -var xxx_messageInfo_AlertPolicyMatch proto.InternalMessageInfo - -func (m *AlertPolicyMatch) GetPolicyName() string { - if m != nil { - return m.PolicyName - } - return "" -} - -func (m *AlertPolicyMatch) GetPolicyActive() PolicyStatus { - if m != nil { - return m.PolicyActive - } - return INACTIVE -} - -// Alert Policy Match Response -// -// x-displayName: "Alert Policy Match Response" -// Response of matching Alert Policies from Get Alert Policy Match request -type AlertPolicyMatchResponse struct { - // alert_match - // - // x-displayName: "Alert Match" - // x-example:{"alert_match":[{"policy_name":"policy1","policy_active":1},{"policy_name":"policy4"}]} - // List of Alert Policies that match given requested namespace,labels. - AlertMatch []*AlertPolicyMatch `protobuf:"bytes,1,rep,name=alert_match,json=alertMatch,proto3" json:"alert_match,omitempty"` -} - -func (m *AlertPolicyMatchResponse) Reset() { *m = AlertPolicyMatchResponse{} } -func (*AlertPolicyMatchResponse) ProtoMessage() {} -func (*AlertPolicyMatchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d91e62fa21ec8069, []int{8} -} -func (m *AlertPolicyMatchResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *AlertPolicyMatchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_AlertPolicyMatchResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *AlertPolicyMatchResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_AlertPolicyMatchResponse.Merge(m, src) -} -func (m *AlertPolicyMatchResponse) XXX_Size() int { - return m.Size() -} -func (m *AlertPolicyMatchResponse) XXX_DiscardUnknown() { - xxx_messageInfo_AlertPolicyMatchResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_AlertPolicyMatchResponse proto.InternalMessageInfo - -func (m *AlertPolicyMatchResponse) GetAlertMatch() []*AlertPolicyMatch { - if m != nil { - return m.AlertMatch - } - return nil -} - func init() { - proto.RegisterEnum("ves.io.schema.alert_receiver.PolicyStatus", PolicyStatus_name, PolicyStatus_value) - golang_proto.RegisterEnum("ves.io.schema.alert_receiver.PolicyStatus", PolicyStatus_name, PolicyStatus_value) proto.RegisterType((*VerifyAlertReceiverRequest)(nil), "ves.io.schema.alert_receiver.VerifyAlertReceiverRequest") golang_proto.RegisterType((*VerifyAlertReceiverRequest)(nil), "ves.io.schema.alert_receiver.VerifyAlertReceiverRequest") proto.RegisterType((*VerifyAlertReceiverResponse)(nil), "ves.io.schema.alert_receiver.VerifyAlertReceiverResponse") @@ -611,14 +383,6 @@ func init() { golang_proto.RegisterType((*TestAlertReceiverRequest)(nil), "ves.io.schema.alert_receiver.TestAlertReceiverRequest") proto.RegisterType((*TestAlertReceiverResponse)(nil), "ves.io.schema.alert_receiver.TestAlertReceiverResponse") golang_proto.RegisterType((*TestAlertReceiverResponse)(nil), "ves.io.schema.alert_receiver.TestAlertReceiverResponse") - proto.RegisterType((*AlertPolicyMatchRequest)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatchRequest") - golang_proto.RegisterType((*AlertPolicyMatchRequest)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatchRequest") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatchRequest.LabelsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatchRequest.LabelsEntry") - proto.RegisterType((*AlertPolicyMatch)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatch") - golang_proto.RegisterType((*AlertPolicyMatch)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatch") - proto.RegisterType((*AlertPolicyMatchResponse)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatchResponse") - golang_proto.RegisterType((*AlertPolicyMatchResponse)(nil), "ves.io.schema.alert_receiver.AlertPolicyMatchResponse") } func init() { @@ -629,72 +393,50 @@ func init() { } var fileDescriptor_d91e62fa21ec8069 = []byte{ - // 885 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0x41, 0x6f, 0xdc, 0x44, - 0x14, 0xde, 0xf1, 0xd2, 0xa8, 0x99, 0x04, 0x94, 0xba, 0x95, 0x70, 0x9d, 0xc5, 0x44, 0xe6, 0x12, - 0x45, 0xb5, 0xad, 0xa6, 0x6a, 0xda, 0xae, 0x40, 0x68, 0x13, 0x55, 0x28, 0xa2, 0x24, 0xd5, 0x52, - 0x55, 0x82, 0x4b, 0x34, 0xeb, 0x7d, 0xeb, 0x0c, 0xf1, 0x7a, 0x8c, 0x67, 0x6c, 0x75, 0x85, 0x2a, - 0xa1, 0x8a, 0x03, 0x48, 0x1c, 0x2a, 0x81, 0xe0, 0xc0, 0x05, 0x89, 0x03, 0xfc, 0x06, 0x7a, 0x20, - 0x37, 0xb8, 0x80, 0x22, 0xb8, 0xf4, 0x48, 0x1c, 0x0e, 0x70, 0xeb, 0x4f, 0x40, 0x1e, 0x4f, 0xda, - 0xdd, 0x64, 0x77, 0xdb, 0xac, 0xda, 0xdb, 0x9b, 0xf9, 0xe6, 0x7d, 0xef, 0xbd, 0xcf, 0x9e, 0x4f, - 0x83, 0x2f, 0x65, 0xc0, 0x5d, 0xca, 0x3c, 0xee, 0x6f, 0x43, 0x97, 0x78, 0x24, 0x84, 0x44, 0x6c, - 0x25, 0xe0, 0x03, 0xcd, 0x20, 0xf1, 0xe2, 0xb4, 0x15, 0x52, 0x7f, 0xcb, 0x4f, 0xb9, 0x60, 0x5d, - 0x12, 0x53, 0x37, 0x4e, 0x98, 0x60, 0x7a, 0xad, 0x4c, 0x72, 0xcb, 0x24, 0x77, 0x30, 0xc9, 0x74, - 0x02, 0x2a, 0xb6, 0xd3, 0x96, 0xeb, 0xb3, 0xae, 0x17, 0xb0, 0x80, 0x79, 0x32, 0xa9, 0x95, 0x76, - 0xe4, 0x4a, 0x2e, 0x64, 0x54, 0x92, 0x99, 0xb5, 0x80, 0xb1, 0x20, 0x04, 0x8f, 0xc4, 0xd4, 0x23, - 0x51, 0xc4, 0x04, 0x11, 0x94, 0x45, 0x5c, 0xa1, 0xf3, 0x83, 0xfd, 0xb1, 0xb8, 0x1f, 0x3c, 0x3f, - 0x08, 0x8a, 0x5e, 0x0c, 0x87, 0x50, 0x6d, 0x10, 0xca, 0x48, 0x48, 0xdb, 0x44, 0x80, 0x42, 0xed, - 0x23, 0x28, 0x70, 0x88, 0xb2, 0x41, 0x72, 0x7b, 0x03, 0x9b, 0xb7, 0x21, 0xa1, 0x9d, 0x5e, 0xa3, - 0x18, 0xaf, 0xa9, 0xa6, 0x6b, 0xc2, 0xc7, 0x29, 0x70, 0xa1, 0xd7, 0xf0, 0x74, 0x44, 0xba, 0xc0, - 0x63, 0xe2, 0x83, 0x81, 0x16, 0xd0, 0xe2, 0x74, 0xf3, 0xc9, 0x86, 0xae, 0xe3, 0x97, 0x8a, 0x85, - 0xa1, 0x49, 0x40, 0xc6, 0xf6, 0x6b, 0x78, 0x7e, 0x28, 0x1f, 0x8f, 0x59, 0xc4, 0xc1, 0xfe, 0x1c, - 0xe1, 0xf9, 0x35, 0x16, 0x75, 0x68, 0xd2, 0x7d, 0x3e, 0x05, 0xf5, 0x2b, 0xf8, 0x4c, 0x56, 0x14, - 0xa4, 0xbe, 0x54, 0x74, 0xcb, 0x67, 0x6d, 0x30, 0xaa, 0xc5, 0x81, 0x55, 0xfc, 0xf3, 0x7f, 0xbb, - 0xd5, 0x53, 0x49, 0xf5, 0x7b, 0x34, 0xd5, 0x9c, 0xeb, 0x3f, 0xb4, 0xc6, 0xda, 0x60, 0x5b, 0xb8, - 0x36, 0xbc, 0x13, 0xd5, 0xea, 0x0d, 0x6c, 0xdc, 0x02, 0x2e, 0x9e, 0x93, 0x2e, 0xf3, 0xf8, 0xfc, - 0x10, 0x36, 0x55, 0xea, 0x77, 0x84, 0x5f, 0x95, 0xc8, 0x4d, 0x16, 0x52, 0xbf, 0xf7, 0x1e, 0x11, - 0xfe, 0xf6, 0xb3, 0x95, 0xfa, 0x00, 0x4f, 0x85, 0xa4, 0x05, 0x21, 0x37, 0xb4, 0x85, 0xea, 0xe2, - 0xcc, 0x72, 0xc3, 0x1d, 0xf7, 0xd3, 0xba, 0x23, 0x8a, 0xb8, 0x37, 0x24, 0xc7, 0xf5, 0x48, 0x24, - 0xbd, 0xa6, 0x22, 0x34, 0xaf, 0xe1, 0x99, 0xbe, 0x6d, 0x7d, 0x0e, 0x57, 0x77, 0xa0, 0xa7, 0x3a, - 0x28, 0x42, 0xfd, 0x1c, 0x3e, 0x95, 0x91, 0x30, 0x3d, 0x9c, 0xb3, 0x5c, 0xd4, 0xb5, 0xab, 0xc8, - 0xfe, 0x0c, 0xe1, 0xb9, 0xa3, 0xa5, 0xf4, 0xd7, 0xf1, 0x4c, 0x2c, 0x97, 0x5b, 0x52, 0x9c, 0x92, - 0x08, 0x97, 0x5b, 0x1b, 0xc5, 0x97, 0xdc, 0xc4, 0x2f, 0xab, 0x03, 0xc4, 0x17, 0x34, 0x2b, 0x79, - 0x5f, 0x59, 0x5e, 0x1a, 0x3f, 0x52, 0x59, 0xe2, 0x7d, 0x41, 0x44, 0xca, 0x9b, 0xb3, 0x25, 0x41, - 0x43, 0xe6, 0xdb, 0x3b, 0xd8, 0x38, 0x3e, 0x70, 0x29, 0xb9, 0xbe, 0x89, 0x67, 0x4a, 0xa2, 0x6e, - 0xb1, 0x6d, 0x20, 0xa9, 0x9e, 0x7b, 0x42, 0xf5, 0xb0, 0x3c, 0x20, 0xe3, 0xa5, 0x45, 0x3c, 0xdb, - 0xdf, 0x8a, 0x3e, 0x8b, 0x4f, 0xaf, 0x6f, 0x34, 0xd6, 0x6e, 0xad, 0xdf, 0xbe, 0x3e, 0x57, 0xd1, - 0x31, 0x9e, 0x52, 0x31, 0x5a, 0xfe, 0x65, 0x1a, 0x4f, 0xaf, 0x49, 0xaf, 0x69, 0xdc, 0x5c, 0xd7, - 0x7f, 0xd0, 0xf0, 0xd9, 0x21, 0x37, 0x46, 0xbf, 0x3a, 0xbe, 0x97, 0xd1, 0x97, 0xd6, 0xbc, 0x36, - 0x41, 0xa6, 0xfa, 0x11, 0xbf, 0x41, 0xf9, 0xaf, 0xc6, 0xbb, 0x9d, 0xcb, 0x77, 0x7c, 0x87, 0xa4, - 0x6d, 0x2a, 0x9c, 0x90, 0x05, 0xdc, 0x91, 0x04, 0xdc, 0xe9, 0xb2, 0x88, 0x0a, 0x96, 0x5c, 0x58, - 0x18, 0x8e, 0x5f, 0x58, 0xc8, 0x80, 0x3b, 0x94, 0x39, 0x01, 0x44, 0x90, 0x90, 0xd0, 0x49, 0x80, - 0xb4, 0xef, 0xfd, 0xf5, 0xcf, 0x57, 0x5a, 0xc3, 0x7e, 0x53, 0x79, 0xac, 0xf7, 0xf8, 0xcf, 0xe5, - 0xde, 0x27, 0x8f, 0xe3, 0xbb, 0x47, 0x0c, 0x59, 0x61, 0x77, 0x3d, 0x79, 0x67, 0x7b, 0x75, 0xb4, - 0xa4, 0xff, 0xa8, 0xe1, 0x73, 0xc3, 0x6e, 0xab, 0xfe, 0x94, 0x61, 0xc7, 0x78, 0x8d, 0x59, 0x9f, - 0x24, 0x55, 0x09, 0xf5, 0xed, 0x0b, 0x11, 0x6a, 0xd5, 0x7e, 0x6b, 0x32, 0xa1, 0xfc, 0xb2, 0xd7, - 0x42, 0xa9, 0xef, 0x34, 0x7c, 0xe6, 0x98, 0xd3, 0xe8, 0x2b, 0xe3, 0x67, 0x1d, 0x65, 0x74, 0xe6, - 0x95, 0x13, 0xe7, 0x29, 0x81, 0xbe, 0x7e, 0x21, 0x02, 0xbd, 0x6d, 0xd7, 0x27, 0x13, 0x48, 0x00, - 0x17, 0x85, 0x3a, 0xf7, 0x35, 0x7c, 0xf6, 0x1d, 0x10, 0xc7, 0xcc, 0xe9, 0xf2, 0x44, 0xbe, 0x69, - 0xae, 0x9c, 0x34, 0x4d, 0xa9, 0xf3, 0x45, 0xa1, 0xce, 0xfa, 0x53, 0xd4, 0x19, 0x21, 0xce, 0x28, - 0x6d, 0x56, 0xec, 0x8b, 0xcf, 0xa4, 0x4d, 0x69, 0x91, 0x9e, 0xf4, 0xbd, 0x3a, 0x5a, 0x32, 0x2f, - 0xee, 0x3e, 0x40, 0xd5, 0x3f, 0x1f, 0xa0, 0x37, 0xc6, 0x8e, 0xb2, 0xd9, 0xfa, 0x08, 0x7c, 0x71, - 0xef, 0x0f, 0x43, 0x3b, 0x8d, 0x56, 0xbf, 0x44, 0x7b, 0xfb, 0x56, 0xe5, 0xe1, 0xbe, 0x55, 0x79, - 0xb4, 0x6f, 0xa1, 0x4f, 0x73, 0x0b, 0xfd, 0x94, 0x5b, 0xe8, 0xb7, 0xdc, 0x42, 0x7b, 0xb9, 0x85, - 0xfe, 0xce, 0x2d, 0xf4, 0x6f, 0x6e, 0x55, 0x1e, 0xe5, 0x16, 0xba, 0x7f, 0x60, 0x55, 0x76, 0x0f, - 0x2c, 0xb4, 0x77, 0x60, 0x55, 0x1e, 0x1e, 0x58, 0x95, 0x0f, 0x9b, 0x01, 0x8b, 0x77, 0x02, 0x37, - 0x63, 0xa1, 0x80, 0x24, 0x21, 0x6e, 0xca, 0x3d, 0x19, 0x74, 0x58, 0xd2, 0x75, 0xe2, 0x84, 0x65, - 0xb4, 0x0d, 0x89, 0x73, 0x08, 0x7b, 0x71, 0x2b, 0x60, 0x1e, 0xdc, 0x11, 0xea, 0x09, 0x33, 0xf4, - 0xfd, 0xd6, 0x9a, 0x92, 0x4f, 0x99, 0x4b, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x2f, 0x11, 0xb1, - 0xcf, 0xe6, 0x09, 0x00, 0x00, -} - -func (x PolicyStatus) String() string { - s, ok := PolicyStatus_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) + // 650 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xbf, 0x6f, 0xd3, 0x4e, + 0x14, 0xcf, 0x25, 0xdf, 0x6f, 0xa1, 0x37, 0x51, 0xc3, 0x90, 0x3a, 0xe1, 0x54, 0x99, 0x05, 0x55, + 0xb5, 0x2d, 0xa8, 0xa0, 0x10, 0x81, 0x50, 0xdb, 0x09, 0x81, 0x00, 0x45, 0x88, 0x81, 0xa5, 0xba, + 0x38, 0x2f, 0xee, 0x81, 0xed, 0x33, 0x77, 0x67, 0xab, 0x15, 0xaa, 0x84, 0x3a, 0x31, 0x30, 0x20, + 0x81, 0x60, 0x60, 0x41, 0x62, 0x80, 0x81, 0xbf, 0x80, 0x2e, 0xdd, 0x60, 0x42, 0x15, 0x2c, 0x1d, + 0x89, 0xc3, 0x00, 0x5b, 0xff, 0x04, 0x14, 0xc7, 0x2d, 0x4d, 0x71, 0x83, 0x88, 0xda, 0xed, 0x3d, + 0x7f, 0xee, 0xf3, 0x7e, 0x7c, 0xde, 0xbb, 0x33, 0x9e, 0x8e, 0x41, 0x5a, 0x8c, 0xdb, 0xd2, 0x59, + 0x04, 0x9f, 0xda, 0xd4, 0x03, 0xa1, 0x16, 0x04, 0x38, 0xc0, 0x62, 0x10, 0x76, 0x18, 0x35, 0x3c, + 0xe6, 0x2c, 0x38, 0x91, 0x54, 0xdc, 0xa7, 0x21, 0xb3, 0x42, 0xc1, 0x15, 0xd7, 0xaa, 0x3d, 0x92, + 0xd5, 0x23, 0x59, 0xfd, 0x24, 0xdd, 0x74, 0x99, 0x5a, 0x8c, 0x1a, 0x96, 0xc3, 0x7d, 0xdb, 0xe5, + 0x2e, 0xb7, 0x53, 0x52, 0x23, 0x6a, 0xa5, 0x5e, 0xea, 0xa4, 0x56, 0x2f, 0x98, 0x5e, 0x75, 0x39, + 0x77, 0x3d, 0xb0, 0x69, 0xc8, 0x6c, 0x1a, 0x04, 0x5c, 0x51, 0xc5, 0x78, 0x20, 0x33, 0xb4, 0xd2, + 0x5f, 0x1f, 0x0f, 0x77, 0x83, 0xe3, 0xfd, 0xa0, 0x5a, 0x0e, 0x61, 0x1b, 0xaa, 0xf6, 0x43, 0x31, + 0xf5, 0x58, 0x93, 0x2a, 0xc8, 0x50, 0x63, 0x0f, 0x0a, 0x12, 0x82, 0xb8, 0x3f, 0xb8, 0x71, 0x03, + 0xeb, 0x77, 0x40, 0xb0, 0xd6, 0xf2, 0x6c, 0xb7, 0xbd, 0x7a, 0xd6, 0x5d, 0x1d, 0x1e, 0x44, 0x20, + 0x95, 0x56, 0xc5, 0xa3, 0x01, 0xf5, 0x41, 0x86, 0xd4, 0x81, 0x32, 0x9a, 0x40, 0xa7, 0x47, 0xeb, + 0xbf, 0x3f, 0x68, 0x1a, 0xfe, 0xaf, 0xeb, 0x94, 0x8b, 0x29, 0x90, 0xda, 0xc6, 0x49, 0x5c, 0xc9, + 0x8d, 0x27, 0x43, 0x1e, 0x48, 0x30, 0x1e, 0x23, 0x5c, 0x99, 0xe7, 0x41, 0x8b, 0x09, 0xff, 0x60, + 0x12, 0x6a, 0x33, 0x78, 0x2c, 0xee, 0x26, 0x64, 0x4e, 0xaa, 0xe8, 0x82, 0xc3, 0x9b, 0x50, 0x2e, + 0x75, 0x0f, 0xcc, 0xe1, 0x0f, 0x3f, 0xd7, 0x4b, 0xff, 0x8b, 0xd2, 0x6b, 0x34, 0x52, 0x3f, 0xb6, + 0xfb, 0xd0, 0x3c, 0x6f, 0x82, 0x41, 0x70, 0x35, 0xbf, 0x92, 0xac, 0xd4, 0xeb, 0xb8, 0x7c, 0x1b, + 0xa4, 0x3a, 0x20, 0x5d, 0x2a, 0x78, 0x3c, 0x27, 0x5a, 0x2f, 0xd5, 0xd9, 0xf7, 0x47, 0xf0, 0xe8, + 0x7c, 0xba, 0x7d, 0xb3, 0xb7, 0xae, 0x6a, 0x6f, 0x8a, 0xf8, 0x78, 0x8e, 0x86, 0xda, 0x05, 0x6b, + 0xd0, 0x42, 0x5a, 0xfb, 0x8f, 0x51, 0xbf, 0x38, 0x04, 0x33, 0x53, 0xe1, 0x05, 0x4a, 0x3e, 0x96, + 0xaf, 0xb5, 0xce, 0x2d, 0x39, 0x26, 0x8d, 0x9a, 0x4c, 0x99, 0x1e, 0x77, 0xa5, 0x99, 0x06, 0x90, + 0xa6, 0xcf, 0x03, 0xa6, 0xb8, 0x98, 0x9a, 0xc8, 0xc7, 0xa7, 0x26, 0x62, 0x90, 0x26, 0xe3, 0xa6, + 0x0b, 0x01, 0x08, 0xea, 0x99, 0x02, 0x68, 0x73, 0xf5, 0xeb, 0xf7, 0x67, 0xc5, 0x59, 0xe3, 0x52, + 0x76, 0xeb, 0xec, 0x1d, 0xd9, 0xa4, 0xfd, 0x70, 0xc7, 0x5e, 0xd9, 0x73, 0x45, 0x33, 0x6c, 0xc5, + 0x4e, 0xa7, 0xb8, 0x5c, 0x43, 0x93, 0xda, 0xdb, 0x22, 0x3e, 0x91, 0x37, 0x3f, 0xed, 0x2f, 0xcd, + 0x0e, 0xd8, 0x3e, 0xbd, 0x36, 0x0c, 0x35, 0x13, 0xea, 0xe5, 0xa1, 0x08, 0x35, 0x67, 0x5c, 0x1e, + 0x4e, 0x28, 0xa7, 0x57, 0x6b, 0x57, 0xa9, 0x57, 0x45, 0x3c, 0xf6, 0xc7, 0xee, 0x69, 0xe7, 0x07, + 0xf7, 0xba, 0xdf, 0xea, 0xeb, 0x33, 0xff, 0xcc, 0xcb, 0x04, 0x7a, 0x7e, 0x28, 0x02, 0x5d, 0x31, + 0x6a, 0xc3, 0x09, 0xa4, 0x40, 0xaa, 0x1a, 0x9a, 0xd4, 0xcf, 0xac, 0xaf, 0xa1, 0xd2, 0x97, 0x35, + 0x74, 0x6a, 0x60, 0x5b, 0x37, 0x1b, 0xf7, 0xc0, 0x51, 0xab, 0x9f, 0xcb, 0xc5, 0xa3, 0x68, 0xee, + 0x09, 0xda, 0x68, 0x93, 0xc2, 0x66, 0x9b, 0x14, 0xb6, 0xda, 0x04, 0x3d, 0x4a, 0x08, 0x7a, 0x97, + 0x10, 0xf4, 0x29, 0x21, 0x68, 0x23, 0x21, 0xe8, 0x5b, 0x42, 0xd0, 0x8f, 0x84, 0x14, 0xb6, 0x12, + 0x82, 0x9e, 0x76, 0x48, 0x61, 0xbd, 0x43, 0xd0, 0x46, 0x87, 0x14, 0x36, 0x3b, 0xa4, 0x70, 0xb7, + 0xee, 0xf2, 0xf0, 0xbe, 0x6b, 0xc5, 0xdc, 0x53, 0x20, 0x04, 0xb5, 0x22, 0x69, 0xa7, 0x46, 0x8b, + 0x0b, 0xdf, 0x0c, 0x05, 0x8f, 0x59, 0x13, 0x84, 0xb9, 0x0d, 0xdb, 0x61, 0xc3, 0xe5, 0x36, 0x2c, + 0xa9, 0xec, 0x05, 0xcf, 0xfd, 0x7d, 0x35, 0x46, 0xd2, 0x97, 0x7c, 0xfa, 0x57, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x5b, 0x64, 0x52, 0x42, 0xe5, 0x06, 0x00, 0x00, } + func (this *VerifyAlertReceiverRequest) Equal(that interface{}) bool { if that == nil { return this == nil @@ -842,94 +584,6 @@ func (this *TestAlertReceiverResponse) Equal(that interface{}) bool { } return true } -func (this *AlertPolicyMatchRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*AlertPolicyMatchRequest) - if !ok { - that2, ok := that.(AlertPolicyMatchRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if len(this.Labels) != len(that1.Labels) { - return false - } - for i := range this.Labels { - if this.Labels[i] != that1.Labels[i] { - return false - } - } - return true -} -func (this *AlertPolicyMatch) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*AlertPolicyMatch) - if !ok { - that2, ok := that.(AlertPolicyMatch) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.PolicyName != that1.PolicyName { - return false - } - if this.PolicyActive != that1.PolicyActive { - return false - } - return true -} -func (this *AlertPolicyMatchResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*AlertPolicyMatchResponse) - if !ok { - that2, ok := that.(AlertPolicyMatchResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.AlertMatch) != len(that1.AlertMatch) { - return false - } - for i := range this.AlertMatch { - if !this.AlertMatch[i].Equal(that1.AlertMatch[i]) { - return false - } - } - return true -} func (this *VerifyAlertReceiverRequest) GoString() string { if this == nil { return "nil" @@ -991,52 +645,6 @@ func (this *TestAlertReceiverResponse) GoString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *AlertPolicyMatchRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&alert_receiver.AlertPolicyMatchRequest{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) - } - mapStringForLabels += "}" - if this.Labels != nil { - s = append(s, "Labels: "+mapStringForLabels+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AlertPolicyMatch) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&alert_receiver.AlertPolicyMatch{") - s = append(s, "PolicyName: "+fmt.Sprintf("%#v", this.PolicyName)+",\n") - s = append(s, "PolicyActive: "+fmt.Sprintf("%#v", this.PolicyActive)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AlertPolicyMatchResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&alert_receiver.AlertPolicyMatchResponse{") - if this.AlertMatch != nil { - s = append(s, "AlertMatch: "+fmt.Sprintf("%#v", this.AlertMatch)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} func valueToGoStringPublicCustomapi(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -1073,11 +681,6 @@ type CustomAPIClient interface { // x-displayName: "Test Alert Receiver" // API to send test alert TestAlertReceiver(ctx context.Context, in *TestAlertReceiverRequest, opts ...grpc.CallOption) (*TestAlertReceiverResponse, error) - // GetAlertPolicyMatch - // - // x-displayName: "Get Alert Policy Match" - // Get Alert Policies that match to a set of alert labels for a namespace. - GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest, opts ...grpc.CallOption) (*AlertPolicyMatchResponse, error) } type customAPIClient struct { @@ -1115,15 +718,6 @@ func (c *customAPIClient) TestAlertReceiver(ctx context.Context, in *TestAlertRe return out, nil } -func (c *customAPIClient) GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest, opts ...grpc.CallOption) (*AlertPolicyMatchResponse, error) { - out := new(AlertPolicyMatchResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.alert_receiver.CustomAPI/GetAlertPolicyMatch", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - // CustomAPIServer is the server API for CustomAPI service. type CustomAPIServer interface { // Verify Alert Receiver @@ -1141,11 +735,6 @@ type CustomAPIServer interface { // x-displayName: "Test Alert Receiver" // API to send test alert TestAlertReceiver(context.Context, *TestAlertReceiverRequest) (*TestAlertReceiverResponse, error) - // GetAlertPolicyMatch - // - // x-displayName: "Get Alert Policy Match" - // Get Alert Policies that match to a set of alert labels for a namespace. - GetAlertPolicyMatch(context.Context, *AlertPolicyMatchRequest) (*AlertPolicyMatchResponse, error) } // UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. @@ -1161,9 +750,6 @@ func (*UnimplementedCustomAPIServer) ConfirmAlertReceiver(ctx context.Context, r func (*UnimplementedCustomAPIServer) TestAlertReceiver(ctx context.Context, req *TestAlertReceiverRequest) (*TestAlertReceiverResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method TestAlertReceiver not implemented") } -func (*UnimplementedCustomAPIServer) GetAlertPolicyMatch(ctx context.Context, req *AlertPolicyMatchRequest) (*AlertPolicyMatchResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetAlertPolicyMatch not implemented") -} func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { s.RegisterService(&_CustomAPI_serviceDesc, srv) @@ -1223,24 +809,6 @@ func _CustomAPI_TestAlertReceiver_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } -func _CustomAPI_GetAlertPolicyMatch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AlertPolicyMatchRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(CustomAPIServer).GetAlertPolicyMatch(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.alert_receiver.CustomAPI/GetAlertPolicyMatch", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomAPIServer).GetAlertPolicyMatch(ctx, req.(*AlertPolicyMatchRequest)) - } - return interceptor(ctx, in, info, handler) -} - var _CustomAPI_serviceDesc = grpc.ServiceDesc{ ServiceName: "ves.io.schema.alert_receiver.CustomAPI", HandlerType: (*CustomAPIServer)(nil), @@ -1257,10 +825,6 @@ var _CustomAPI_serviceDesc = grpc.ServiceDesc{ MethodName: "TestAlertReceiver", Handler: _CustomAPI_TestAlertReceiver_Handler, }, - { - MethodName: "GetAlertPolicyMatch", - Handler: _CustomAPI_GetAlertPolicyMatch_Handler, - }, }, Streams: []grpc.StreamDesc{}, Metadata: "ves.io/schema/alert_receiver/public_customapi.proto", @@ -1453,142 +1017,21 @@ func (m *TestAlertReceiverResponse) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } -func (m *AlertPolicyMatchRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ } - return dAtA[:n], nil -} - -func (m *AlertPolicyMatchRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + dAtA[offset] = uint8(v) + return base } - -func (m *AlertPolicyMatchRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Labels) > 0 { - for k := range m.Labels { - v := m.Labels[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x12 - } - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *AlertPolicyMatch) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *AlertPolicyMatch) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AlertPolicyMatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.PolicyActive != 0 { - i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.PolicyActive)) - i-- - dAtA[i] = 0x10 - } - if len(m.PolicyName) > 0 { - i -= len(m.PolicyName) - copy(dAtA[i:], m.PolicyName) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.PolicyName))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *AlertPolicyMatchResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *AlertPolicyMatchResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AlertPolicyMatchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.AlertMatch) > 0 { - for iNdEx := len(m.AlertMatch) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.AlertMatch[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { - offset -= sovPublicCustomapi(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *VerifyAlertReceiverRequest) Size() (n int) { - if m == nil { - return 0 - } +func (m *VerifyAlertReceiverRequest) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l l = len(m.Namespace) @@ -1667,58 +1110,6 @@ func (m *TestAlertReceiverResponse) Size() (n int) { return n } -func (m *AlertPolicyMatchRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) - } - if len(m.Labels) > 0 { - for k, v := range m.Labels { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) - } - } - return n -} - -func (m *AlertPolicyMatch) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.PolicyName) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) - } - if m.PolicyActive != 0 { - n += 1 + sovPublicCustomapi(uint64(m.PolicyActive)) - } - return n -} - -func (m *AlertPolicyMatchResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.AlertMatch) > 0 { - for _, e := range m.AlertMatch { - l = e.Size() - n += 1 + l + sovPublicCustomapi(uint64(l)) - } - } - return n -} - func sovPublicCustomapi(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -1786,53 +1177,6 @@ func (this *TestAlertReceiverResponse) String() string { }, "") return s } -func (this *AlertPolicyMatchRequest) String() string { - if this == nil { - return "nil" - } - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) - } - mapStringForLabels += "}" - s := strings.Join([]string{`&AlertPolicyMatchRequest{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `Labels:` + mapStringForLabels + `,`, - `}`, - }, "") - return s -} -func (this *AlertPolicyMatch) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AlertPolicyMatch{`, - `PolicyName:` + fmt.Sprintf("%v", this.PolicyName) + `,`, - `PolicyActive:` + fmt.Sprintf("%v", this.PolicyActive) + `,`, - `}`, - }, "") - return s -} -func (this *AlertPolicyMatchResponse) String() string { - if this == nil { - return "nil" - } - repeatedStringForAlertMatch := "[]*AlertPolicyMatch{" - for _, f := range this.AlertMatch { - repeatedStringForAlertMatch += strings.Replace(f.String(), "AlertPolicyMatch", "AlertPolicyMatch", 1) + "," - } - repeatedStringForAlertMatch += "}" - s := strings.Join([]string{`&AlertPolicyMatchResponse{`, - `AlertMatch:` + repeatedStringForAlertMatch + `,`, - `}`, - }, "") - return s -} func valueToStringPublicCustomapi(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -2383,409 +1727,6 @@ func (m *TestAlertReceiverResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *AlertPolicyMatchRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AlertPolicyMatchRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AlertPolicyMatchRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCustomapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCustomapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Labels == nil { - m.Labels = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthPublicCustomapi - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthPublicCustomapi - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthPublicCustomapi - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthPublicCustomapi - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Labels[mapkey] = mapvalue - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AlertPolicyMatch) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AlertPolicyMatch: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AlertPolicyMatch: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCustomapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PolicyName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyActive", wireType) - } - m.PolicyActive = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.PolicyActive |= PolicyStatus(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AlertPolicyMatchResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AlertPolicyMatchResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AlertPolicyMatchResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AlertMatch", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCustomapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AlertMatch = append(m.AlertMatch, &AlertPolicyMatch{}) - if err := m.AlertMatch[len(m.AlertMatch)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCustomapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func skipPublicCustomapi(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/pbgo/extschema/schema/alert_receiver/public_customapi.pb.gw.go b/pbgo/extschema/schema/alert_receiver/public_customapi.pb.gw.go index 1c44605d0..d444cc461 100644 --- a/pbgo/extschema/schema/alert_receiver/public_customapi.pb.gw.go +++ b/pbgo/extschema/schema/alert_receiver/public_customapi.pb.gw.go @@ -304,76 +304,6 @@ func local_request_CustomAPI_TestAlertReceiver_0(ctx context.Context, marshaler } -func request_CustomAPI_GetAlertPolicyMatch_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AlertPolicyMatchRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - msg, err := client.GetAlertPolicyMatch(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_CustomAPI_GetAlertPolicyMatch_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AlertPolicyMatchRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - msg, err := server.GetAlertPolicyMatch(ctx, &protoReq) - return msg, metadata, err - -} - // RegisterCustomAPIHandlerServer registers the http handlers for service CustomAPI to "mux". // UnaryRPC :call CustomAPIServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -439,26 +369,6 @@ func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, }) - mux.Handle("POST", pattern_CustomAPI_GetAlertPolicyMatch_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_CustomAPI_GetAlertPolicyMatch_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_CustomAPI_GetAlertPolicyMatch_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - return nil } @@ -560,26 +470,6 @@ func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, }) - mux.Handle("POST", pattern_CustomAPI_GetAlertPolicyMatch_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_CustomAPI_GetAlertPolicyMatch_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_CustomAPI_GetAlertPolicyMatch_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - return nil } @@ -589,8 +479,6 @@ var ( pattern_CustomAPI_ConfirmAlertReceiver_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"public", "namespaces", "namespace", "alert_receivers", "name", "confirm"}, "", runtime.AssumeColonVerbOpt(false))) pattern_CustomAPI_TestAlertReceiver_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"public", "namespaces", "namespace", "alert_receivers", "name", "test"}, "", runtime.AssumeColonVerbOpt(false))) - - pattern_CustomAPI_GetAlertPolicyMatch_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "namespace", "alert_policy", "match"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( @@ -599,6 +487,4 @@ var ( forward_CustomAPI_ConfirmAlertReceiver_0 = runtime.ForwardResponseMessage forward_CustomAPI_TestAlertReceiver_0 = runtime.ForwardResponseMessage - - forward_CustomAPI_GetAlertPolicyMatch_0 = runtime.ForwardResponseMessage ) diff --git a/pbgo/extschema/schema/alert_receiver/public_customapi.vesapi.go b/pbgo/extschema/schema/alert_receiver/public_customapi.vesapi.go index b24beb288..fec5b9354 100644 --- a/pbgo/extschema/schema/alert_receiver/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/alert_receiver/public_customapi.vesapi.go @@ -43,15 +43,6 @@ func (c *CustomAPIGrpcClient) doRPCConfirmAlertReceiver(ctx context.Context, yam return rsp, err } -func (c *CustomAPIGrpcClient) doRPCGetAlertPolicyMatch(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { - req := &AlertPolicyMatchRequest{} - if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.alert_receiver.AlertPolicyMatchRequest", yamlReq) - } - rsp, err := c.grpcClient.GetAlertPolicyMatch(ctx, req, opts...) - return rsp, err -} - func (c *CustomAPIGrpcClient) doRPCTestAlertReceiver(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { req := &TestAlertReceiverRequest{} if err := codec.FromYAML(yamlReq, req); err != nil { @@ -102,8 +93,6 @@ func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) rpcFns["ConfirmAlertReceiver"] = ccl.doRPCConfirmAlertReceiver - rpcFns["GetAlertPolicyMatch"] = ccl.doRPCGetAlertPolicyMatch - rpcFns["TestAlertReceiver"] = ccl.doRPCTestAlertReceiver rpcFns["VerifyAlertReceiver"] = ccl.doRPCVerifyAlertReceiver @@ -206,90 +195,6 @@ func (c *CustomAPIRestClient) doRPCConfirmAlertReceiver(ctx context.Context, cal return pbRsp, nil } -func (c *CustomAPIRestClient) doRPCGetAlertPolicyMatch(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { - if callOpts.URI == "" { - return nil, fmt.Errorf("Error, URI should be specified, got empty") - } - url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) - - yamlReq := callOpts.YAMLReq - req := &AlertPolicyMatchRequest{} - if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.alert_receiver.AlertPolicyMatchRequest: %s", yamlReq, err) - } - - var hReq *http.Request - hm := strings.ToLower(callOpts.HTTPMethod) - switch hm { - case "post", "put": - jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) - if err != nil { - return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") - } - var op string - if hm == "post" { - op = http.MethodPost - } else { - op = http.MethodPut - } - newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) - if err != nil { - return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) - } - hReq = newReq - case "get": - newReq, err := http.NewRequest(http.MethodGet, url, nil) - if err != nil { - return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") - } - hReq = newReq - q := hReq.URL.Query() - _ = q - q.Add("labels", fmt.Sprintf("%v", req.Labels)) - q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) - - hReq.URL.RawQuery += q.Encode() - case "delete": - newReq, err := http.NewRequest(http.MethodDelete, url, nil) - if err != nil { - return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") - } - hReq = newReq - default: - return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) - } - hReq = hReq.WithContext(ctx) - hReq.Header.Set("Content-Type", "application/json") - client.AddHdrsToReq(callOpts.Headers, hReq) - - rsp, err := c.client.Do(hReq) - if err != nil { - return nil, errors.Wrap(err, "Custom API RestClient") - } - defer rsp.Body.Close() - - // checking whether the status code is a successful status code (2xx series) - if rsp.StatusCode < 200 || rsp.StatusCode > 299 { - body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) - } - - body, err := io.ReadAll(rsp.Body) - if err != nil { - return nil, errors.Wrap(err, "Custom API RestClient read body") - } - pbRsp := &AlertPolicyMatchResponse{} - if err := codec.FromJSON(string(body), pbRsp); err != nil { - return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.alert_receiver.AlertPolicyMatchResponse", body) - - } - if callOpts.OutCallResponse != nil { - callOpts.OutCallResponse.ProtoMsg = pbRsp - callOpts.OutCallResponse.JSON = string(body) - } - return pbRsp, nil -} - func (c *CustomAPIRestClient) doRPCTestAlertReceiver(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") @@ -484,8 +389,6 @@ func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) rpcFns["ConfirmAlertReceiver"] = ccl.doRPCConfirmAlertReceiver - rpcFns["GetAlertPolicyMatch"] = ccl.doRPCGetAlertPolicyMatch - rpcFns["TestAlertReceiver"] = ccl.doRPCTestAlertReceiver rpcFns["VerifyAlertReceiver"] = ccl.doRPCVerifyAlertReceiver @@ -506,10 +409,6 @@ func (c *customAPIInprocClient) ConfirmAlertReceiver(ctx context.Context, in *Co ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.alert_receiver.CustomAPI.ConfirmAlertReceiver") return c.CustomAPIServer.ConfirmAlertReceiver(ctx, in) } -func (c *customAPIInprocClient) GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest, opts ...grpc.CallOption) (*AlertPolicyMatchResponse, error) { - ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.alert_receiver.CustomAPI.GetAlertPolicyMatch") - return c.CustomAPIServer.GetAlertPolicyMatch(ctx, in) -} func (c *customAPIInprocClient) TestAlertReceiver(ctx context.Context, in *TestAlertReceiverRequest, opts ...grpc.CallOption) (*TestAlertReceiverResponse, error) { ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.alert_receiver.CustomAPI.TestAlertReceiver") return c.CustomAPIServer.TestAlertReceiver(ctx, in) @@ -589,55 +488,6 @@ func (s *customAPISrv) ConfirmAlertReceiver(ctx context.Context, in *ConfirmAler return rsp, nil } -func (s *customAPISrv) GetAlertPolicyMatch(ctx context.Context, in *AlertPolicyMatchRequest) (*AlertPolicyMatchResponse, error) { - ah := s.svc.GetAPIHandler("ves.io.schema.alert_receiver.CustomAPI") - cah, ok := ah.(CustomAPIServer) - if !ok { - return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) - } - - var ( - rsp *AlertPolicyMatchResponse - err error - ) - - bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.alert_receiver.AlertPolicyMatchRequest", in) - defer func() { - if len(bodyFields) > 0 { - server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) - } - userMsg := "The 'CustomAPI.GetAlertPolicyMatch' operation on 'alert_receiver'" - if err == nil { - userMsg += " was successfully performed." - } else { - userMsg += " failed to be performed." - } - server.AddUserMsgToAPIAudit(ctx, userMsg) - }() - - if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { - err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) - return nil, server.GRPCStatusFromError(err).Err() - } - - if s.svc.Config().EnableAPIValidation { - if rvFn := s.svc.GetRPCValidator("ves.io.schema.alert_receiver.CustomAPI.GetAlertPolicyMatch"); rvFn != nil { - if verr := rvFn(ctx, in); verr != nil { - err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) - return nil, server.GRPCStatusFromError(err).Err() - } - } - } - - rsp, err = cah.GetAlertPolicyMatch(ctx, in) - if err != nil { - return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() - } - - bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.alert_receiver.AlertPolicyMatchResponse", rsp)...) - - return rsp, nil -} func (s *customAPISrv) TestAlertReceiver(ctx context.Context, in *TestAlertReceiverRequest) (*TestAlertReceiverResponse, error) { ah := s.svc.GetAPIHandler("ves.io.schema.alert_receiver.CustomAPI") cah, ok := ah.(CustomAPIServer) @@ -760,98 +610,6 @@ var CustomAPISwaggerJSON string = `{ ], "tags": [], "paths": { - "/public/namespaces/{namespace}/alert_policy/match": { - "post": { - "summary": "Get Alert Policy Match", - "description": "Get Alert Policies that match to a set of alert labels for a namespace.", - "operationId": "ves.io.schema.alert_receiver.CustomAPI.GetAlertPolicyMatch", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/alert_receiverAlertPolicyMatchResponse" - } - }, - "401": { - "description": "Returned when operation is not authorized", - "schema": { - "format": "string" - } - }, - "403": { - "description": "Returned when there is no permission to access resource", - "schema": { - "format": "string" - } - }, - "404": { - "description": "Returned when resource is not found", - "schema": { - "format": "string" - } - }, - "409": { - "description": "Returned when operation on resource is conflicting with current value", - "schema": { - "format": "string" - } - }, - "429": { - "description": "Returned when operation has been rejected as it is happening too frequently", - "schema": { - "format": "string" - } - }, - "500": { - "description": "Returned when server encountered an error in processing API", - "schema": { - "format": "string" - } - }, - "503": { - "description": "Returned when service is unavailable temporarily", - "schema": { - "format": "string" - } - }, - "504": { - "description": "Returned when server timed out processing request", - "schema": { - "format": "string" - } - } - }, - "parameters": [ - { - "name": "namespace", - "description": "namespace\n\nx-required\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", - "in": "path", - "required": true, - "type": "string", - "x-displayname": "Namespace" - }, - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/alert_receiverAlertPolicyMatchRequest" - } - } - ], - "tags": [ - "CustomAPI" - ], - "externalDocs": { - "description": "Examples of this operation", - "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-alert_receiver-customapi-getalertpolicymatch" - }, - "x-ves-proto-rpc": "ves.io.schema.alert_receiver.CustomAPI.GetAlertPolicyMatch" - }, - "x-displayname": "Alert Receiver Custom API", - "x-ves-proto-service": "ves.io.schema.alert_receiver.CustomAPI", - "x-ves-proto-service-type": "CUSTOM_PUBLIC" - }, "/public/namespaces/{namespace}/alert_receivers/{name}/confirm": { "post": { "summary": "Confirm Alert Receiver", @@ -1154,75 +912,6 @@ var CustomAPISwaggerJSON string = `{ } }, "definitions": { - "alert_receiverAlertPolicyMatch": { - "type": "object", - "description": "Alert Policy info that matches AlertPolicyMatchRequest giving\n alert policy name,\n alert policy activation state", - "title": "Alert Policy Match", - "x-displayname": "Alert Policy Match", - "x-ves-proto-message": "ves.io.schema.alert_receiver.AlertPolicyMatch", - "properties": { - "policy_active": { - "description": "\n\nExample: - 1, ACTIVE-", - "title": "policy_active", - "$ref": "#/definitions/alert_receiverPolicyStatus", - "x-displayname": "Policy Active" - }, - "policy_name": { - "type": "string", - "description": "\n\nExample: - samplepolicy-", - "title": "policy_name", - "x-displayname": "Policy Name" - } - } - }, - "alert_receiverAlertPolicyMatchRequest": { - "type": "object", - "description": "Request message for GetAlertPolicyMatch RPC,\ndescribing alert to match against alert policies", - "title": "Alert Policy Match Request", - "x-displayname": "Alert Policy Match Request", - "x-ves-proto-message": "ves.io.schema.alert_receiver.AlertPolicyMatchRequest", - "properties": { - "labels": { - "type": "object", - "description": " \"namespace\": \"system\",\n \"tenant\" :\"tenant2\",\n \"alertname\": \"podXcrash\",\n \"group\": \"IaaS\",\n \"severity\": \"critical\"\n },\n Alert labels to find match against alert policies\n requires tenant and namespace to be defined labels map\n\nExample: - \"labels\"{-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "labels", - "x-displayname": "Labels", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "namespace": { - "type": "string", - "description": " The namespace in which the configuration object is present\n\nExample: - \"ns1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "alert_receiverAlertPolicyMatchResponse": { - "type": "object", - "description": "Response of matching Alert Policies from Get Alert Policy Match request", - "title": "Alert Policy Match Response", - "x-displayname": "Alert Policy Match Response", - "x-ves-proto-message": "ves.io.schema.alert_receiver.AlertPolicyMatchResponse", - "properties": { - "alert_match": { - "type": "array", - "description": " x-example:{\"alert_match\":[{\"policy_name\":\"policy1\",\"policy_active\":1},{\"policy_name\":\"policy4\"}]}\n List of Alert Policies that match given requested namespace,labels.", - "title": "alert_match", - "items": { - "$ref": "#/definitions/alert_receiverAlertPolicyMatch" - }, - "x-displayname": "Alert Match" - } - } - }, "alert_receiverConfirmAlertReceiverRequest": { "type": "object", "description": "Request to confirm the Alert Receiver", @@ -1267,18 +956,6 @@ var CustomAPISwaggerJSON string = `{ "x-displayname": "Confirm Alert Receiver Response", "x-ves-proto-message": "ves.io.schema.alert_receiver.ConfirmAlertReceiverResponse" }, - "alert_receiverPolicyStatus": { - "type": "string", - "description": "Indicates if Alert Policy is in Alert Policy Set, PolicyStatus is ACTIVE or INACTIVE.\n\nINACTIVE means Alert Policy is not in Alert Policy Set, and will\nnot be used to send Alerts to Alert Receivers.\nACTIVE means Alert Policy is in Alert Policy Set, and is used\nto send out Alert to Alert Receivers.", - "title": "PolicyStatus", - "enum": [ - "INACTIVE", - "ACTIVE" - ], - "default": "INACTIVE", - "x-displayname": "PolicyStatus", - "x-ves-proto-enum": "ves.io.schema.alert_receiver.PolicyStatus" - }, "alert_receiverTestAlertReceiverRequest": { "type": "object", "description": "Request to send test alert", diff --git a/pbgo/extschema/schema/alert_receiver/public_customapi.vesmsg.go b/pbgo/extschema/schema/alert_receiver/public_customapi.vesmsg.go index 7e968bbf2..59d94172d 100644 --- a/pbgo/extschema/schema/alert_receiver/public_customapi.vesmsg.go +++ b/pbgo/extschema/schema/alert_receiver/public_customapi.vesmsg.go @@ -24,345 +24,6 @@ var ( // augmented methods on protoc/std generated struct -func (m *AlertPolicyMatch) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *AlertPolicyMatch) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *AlertPolicyMatch) DeepCopy() *AlertPolicyMatch { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &AlertPolicyMatch{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *AlertPolicyMatch) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *AlertPolicyMatch) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AlertPolicyMatchValidator().Validate(ctx, m, opts...) -} - -type ValidateAlertPolicyMatch struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateAlertPolicyMatch) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*AlertPolicyMatch) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *AlertPolicyMatch got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["policy_active"]; exists { - - vOpts := append(opts, db.WithValidateField("policy_active")) - if err := fv(ctx, m.GetPolicyActive(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["policy_name"]; exists { - - vOpts := append(opts, db.WithValidateField("policy_name")) - if err := fv(ctx, m.GetPolicyName(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultAlertPolicyMatchValidator = func() *ValidateAlertPolicyMatch { - v := &ValidateAlertPolicyMatch{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func AlertPolicyMatchValidator() db.Validator { - return DefaultAlertPolicyMatchValidator -} - -// augmented methods on protoc/std generated struct - -func (m *AlertPolicyMatchRequest) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *AlertPolicyMatchRequest) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *AlertPolicyMatchRequest) DeepCopy() *AlertPolicyMatchRequest { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &AlertPolicyMatchRequest{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *AlertPolicyMatchRequest) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *AlertPolicyMatchRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AlertPolicyMatchRequestValidator().Validate(ctx, m, opts...) -} - -type ValidateAlertPolicyMatchRequest struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateAlertPolicyMatchRequest) NamespaceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for namespace") - } - - return validatorFn, nil -} - -func (v *ValidateAlertPolicyMatchRequest) LabelsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemKeyRules := db.GetMapStringKeyRules(rules) - itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) - if err != nil { - return nil, errors.Wrap(err, "Item key ValidationRuleHandler for labels") - } - itemValRules := db.GetMapStringValueRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemValRules) - if err != nil { - return nil, errors.Wrap(err, "Item value ValidationRuleHandler for labels") - } - itemsValidatorFn := func(ctx context.Context, kv map[string]string, opts ...db.ValidateOpt) error { - for key, value := range kv { - if err := itemKeyFn(ctx, key, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) - } - if err := itemValFn(ctx, value, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) - } - } - return nil - } - mapValFn, err := db.NewMapValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Map ValidationRuleHandler for labels") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.(map[string]string) - if !ok { - return fmt.Errorf("Map validation expected map[ string ]string, got %T", val) - } - if err := mapValFn(ctx, len(elems), opts...); err != nil { - return errors.Wrap(err, "map labels") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items labels") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateAlertPolicyMatchRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*AlertPolicyMatchRequest) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *AlertPolicyMatchRequest got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["labels"]; exists { - vOpts := append(opts, db.WithValidateField("labels")) - if err := fv(ctx, m.GetLabels(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["namespace"]; exists { - - vOpts := append(opts, db.WithValidateField("namespace")) - if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultAlertPolicyMatchRequestValidator = func() *ValidateAlertPolicyMatchRequest { - v := &ValidateAlertPolicyMatchRequest{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhNamespace := v.NamespaceValidationRuleHandler - rulesNamespace := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhNamespace(rulesNamespace) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AlertPolicyMatchRequest.namespace: %s", err) - panic(errMsg) - } - v.FldValidators["namespace"] = vFn - - vrhLabels := v.LabelsValidationRuleHandler - rulesLabels := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhLabels(rulesLabels) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AlertPolicyMatchRequest.labels: %s", err) - panic(errMsg) - } - v.FldValidators["labels"] = vFn - - return v -}() - -func AlertPolicyMatchRequestValidator() db.Validator { - return DefaultAlertPolicyMatchRequestValidator -} - -// augmented methods on protoc/std generated struct - -func (m *AlertPolicyMatchResponse) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *AlertPolicyMatchResponse) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *AlertPolicyMatchResponse) DeepCopy() *AlertPolicyMatchResponse { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &AlertPolicyMatchResponse{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *AlertPolicyMatchResponse) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *AlertPolicyMatchResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AlertPolicyMatchResponseValidator().Validate(ctx, m, opts...) -} - -type ValidateAlertPolicyMatchResponse struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateAlertPolicyMatchResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*AlertPolicyMatchResponse) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *AlertPolicyMatchResponse got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["alert_match"]; exists { - - vOpts := append(opts, db.WithValidateField("alert_match")) - for idx, item := range m.GetAlertMatch() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultAlertPolicyMatchResponseValidator = func() *ValidateAlertPolicyMatchResponse { - v := &ValidateAlertPolicyMatchResponse{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func AlertPolicyMatchResponseValidator() db.Validator { - return DefaultAlertPolicyMatchResponseValidator -} - -// augmented methods on protoc/std generated struct - func (m *ConfirmAlertReceiverRequest) ToJSON() (string, error) { return codec.ToJSON(m) } diff --git a/pbgo/extschema/schema/api_credential/crudapi/api.vesapi.go b/pbgo/extschema/schema/api_credential/crudapi/api.vesapi.go index e60b7cd5d..a6a12f309 100644 --- a/pbgo/extschema/schema/api_credential/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/api_credential/crudapi/api.vesapi.go @@ -3159,10 +3159,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/api_credential/public_customapi.pb.go b/pbgo/extschema/schema/api_credential/public_customapi.pb.go index e9919d7d8..0bdb708cf 100644 --- a/pbgo/extschema/schema/api_credential/public_customapi.pb.go +++ b/pbgo/extschema/schema/api_credential/public_customapi.pb.go @@ -1458,123 +1458,124 @@ func init() { } var fileDescriptor_6dd860345148a1a2 = []byte{ - // 1851 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x59, 0x4d, 0x70, 0x1b, 0x49, - 0x15, 0x56, 0x4b, 0x23, 0x45, 0x6e, 0xd9, 0xb2, 0xb6, 0x1d, 0xb2, 0xb3, 0x26, 0xc8, 0x62, 0x80, - 0x5a, 0xc5, 0xd1, 0x8f, 0x2d, 0xc7, 0x89, 0xd7, 0xec, 0xba, 0x62, 0x3b, 0xa9, 0x6c, 0xbc, 0xfc, - 0x84, 0x49, 0xe0, 0x00, 0x07, 0x31, 0x1a, 0xb5, 0x95, 0xc6, 0xd2, 0xcc, 0x30, 0xdd, 0x92, 0xe3, - 0xa2, 0x5c, 0x64, 0x53, 0x1c, 0x39, 0x50, 0xc5, 0x65, 0x8b, 0x53, 0x8e, 0x1c, 0x39, 0x70, 0xa0, - 0xf0, 0xc5, 0x27, 0xe2, 0x02, 0x6a, 0x2b, 0x15, 0xaa, 0x20, 0x95, 0xe2, 0x90, 0x28, 0x1c, 0xe0, - 0x42, 0xa5, 0x72, 0x81, 0x2a, 0x2e, 0x54, 0xf7, 0x8c, 0xa4, 0xd1, 0x8f, 0xa5, 0x91, 0xb3, 0xde, - 0xdb, 0xcc, 0xeb, 0xf7, 0x5e, 0xbf, 0xef, 0xbd, 0xd7, 0x5f, 0xbf, 0x91, 0xe0, 0x52, 0x03, 0xd3, - 0x1c, 0x31, 0xf3, 0x54, 0xbf, 0x8b, 0x6b, 0x5a, 0x5e, 0xb3, 0x48, 0x51, 0xb7, 0x71, 0x19, 0x1b, - 0x8c, 0x68, 0xd5, 0xbc, 0x55, 0x2f, 0x55, 0x89, 0x5e, 0xd4, 0xeb, 0x94, 0x99, 0x35, 0xcd, 0x22, - 0x39, 0xcb, 0x36, 0x99, 0x89, 0xce, 0x3b, 0x46, 0x39, 0xc7, 0x28, 0xd7, 0x6d, 0x34, 0x9b, 0xad, - 0x10, 0x76, 0xb7, 0x5e, 0xca, 0xe9, 0x66, 0x2d, 0x5f, 0x31, 0x2b, 0x66, 0x5e, 0x18, 0x95, 0xea, - 0xdb, 0xe2, 0x4d, 0xbc, 0x88, 0x27, 0xc7, 0xd9, 0xec, 0xf9, 0x8a, 0x69, 0x56, 0xaa, 0x98, 0x6f, - 0x9d, 0xd7, 0x0c, 0xc3, 0x64, 0x1a, 0x23, 0xa6, 0x41, 0xdd, 0xd5, 0x39, 0x77, 0xb5, 0xed, 0x83, - 0x91, 0x1a, 0xa6, 0x4c, 0xab, 0x59, 0xae, 0xc2, 0x85, 0xa1, 0x00, 0xcc, 0xd2, 0x8f, 0xb0, 0xce, - 0x5c, 0xd5, 0xf4, 0x50, 0x55, 0xb6, 0x67, 0xe1, 0xd6, 0xae, 0x5f, 0xec, 0xd6, 0x34, 0x2d, 0x6f, - 0x48, 0xef, 0x74, 0x2f, 0x7a, 0xed, 0xce, 0x77, 0x2f, 0x35, 0xb4, 0x2a, 0x29, 0x6b, 0x0c, 0xbb, - 0xab, 0x4a, 0xcf, 0x2a, 0xa6, 0xd8, 0x68, 0xf4, 0x38, 0x4f, 0xf5, 0xe8, 0x10, 0xbc, 0x5b, 0xec, - 0xd2, 0x50, 0x9e, 0x02, 0x38, 0xb5, 0x69, 0x63, 0x8d, 0x61, 0x15, 0xff, 0xb8, 0x8e, 0x29, 0x43, - 0xe7, 0xe1, 0x84, 0xa1, 0xd5, 0x30, 0xb5, 0x34, 0x1d, 0xcb, 0x20, 0x05, 0xd2, 0x13, 0x6a, 0x47, - 0x80, 0x10, 0x94, 0xf8, 0x8b, 0x1c, 0x14, 0x0b, 0xe2, 0x19, 0x7d, 0x07, 0x4a, 0xd4, 0xc2, 0xba, - 0x1c, 0x4a, 0x81, 0x74, 0xac, 0x50, 0xc8, 0x0d, 0xab, 0x67, 0x6e, 0x53, 0x54, 0xdf, 0xd9, 0xf2, - 0xb6, 0x85, 0xf5, 0x3b, 0x7b, 0x16, 0xde, 0x98, 0xf8, 0xd5, 0x7e, 0xe4, 0x7d, 0xc3, 0x34, 0xf0, - 0x9a, 0x2a, 0x5c, 0xa1, 0x77, 0xe1, 0x34, 0xbe, 0x67, 0x11, 0x5b, 0x54, 0xaf, 0x58, 0xd6, 0xf6, - 0xa8, 0x1c, 0x4e, 0x81, 0xf4, 0x94, 0x1a, 0xef, 0x88, 0xaf, 0x69, 0x7b, 0x74, 0x75, 0xe6, 0x8f, - 0x6b, 0x91, 0x6f, 0x8b, 0xb2, 0xbc, 0x5e, 0x3b, 0xb3, 0x98, 0x29, 0x64, 0x96, 0x32, 0xcb, 0x5b, - 0x52, 0x54, 0x4a, 0x84, 0x95, 0xfb, 0x00, 0xca, 0x2a, 0xd6, 0x9d, 0x9d, 0x74, 0x52, 0xbb, 0x63, - 0xee, 0x60, 0xc3, 0x1f, 0xca, 0xab, 0xfd, 0xdb, 0x73, 0x70, 0x53, 0x1b, 0x6f, 0x3f, 0x3b, 0x00, - 0xa1, 0xc5, 0x95, 0x85, 0xff, 0x1e, 0x80, 0xc0, 0xef, 0xff, 0x75, 0x18, 0x3a, 0x33, 0x1f, 0x96, - 0x9f, 0x85, 0xd3, 0xa0, 0x37, 0xae, 0x2d, 0x29, 0x1a, 0x4c, 0x84, 0x94, 0xdf, 0x02, 0x18, 0x6f, - 0x65, 0x97, 0x5a, 0xa6, 0x41, 0x45, 0x02, 0xcb, 0x1a, 0xd3, 0xdc, 0x3d, 0xc5, 0xf3, 0xc0, 0xa4, - 0x9e, 0x83, 0x11, 0x4d, 0x67, 0xa4, 0x81, 0xc5, 0xce, 0x51, 0xd5, 0x7d, 0x43, 0xdf, 0x84, 0x67, - 0x3d, 0xa1, 0xb5, 0xfb, 0x57, 0x96, 0x44, 0xf2, 0x67, 0x73, 0x4e, 0x87, 0xe7, 0x5a, 0x1d, 0x9e, - 0xbb, 0xd3, 0xd2, 0x50, 0x67, 0x3a, 0x76, 0x6d, 0xe1, 0xea, 0xcc, 0xf3, 0x35, 0xf0, 0x7a, 0x0d, - 0x2c, 0x7e, 0xf2, 0x70, 0x2e, 0xf0, 0x9b, 0x87, 0x73, 0x81, 0xfb, 0x7f, 0x4f, 0x05, 0x94, 0x4f, - 0x22, 0x70, 0xce, 0xad, 0x10, 0xb6, 0x1b, 0x44, 0xc7, 0x9b, 0xed, 0xfa, 0xd1, 0x56, 0x02, 0x6f, - 0x40, 0x89, 0xf7, 0xaa, 0xc0, 0x11, 0x2f, 0xe4, 0x87, 0x17, 0x7d, 0xfd, 0xd6, 0xcd, 0x8e, 0x0b, - 0x51, 0xf1, 0xa0, 0x0c, 0x54, 0xe1, 0xa0, 0xbb, 0x12, 0xc1, 0xe3, 0xfa, 0x2d, 0xe4, 0x49, 0xcd, - 0x4d, 0x38, 0xdd, 0x56, 0x28, 0xda, 0x66, 0x15, 0x53, 0x59, 0x4a, 0x85, 0xd2, 0xb1, 0x42, 0xaa, - 0x27, 0x8a, 0x6f, 0xb5, 0xb4, 0x54, 0xb3, 0x8a, 0xf9, 0xb6, 0x6a, 0xdc, 0xf0, 0x8a, 0x28, 0xba, - 0x0c, 0xbf, 0xd0, 0x20, 0x36, 0xab, 0x6b, 0xd5, 0xe2, 0xce, 0x0a, 0x2d, 0x76, 0x02, 0x89, 0xf0, - 0xfd, 0x44, 0x94, 0x33, 0xae, 0xc2, 0x47, 0x2b, 0xb4, 0xed, 0x0f, 0x65, 0x60, 0xa2, 0xd7, 0x4e, - 0x3e, 0xd3, 0x36, 0x89, 0x77, 0x9b, 0xa0, 0x2f, 0xc3, 0xa8, 0xa5, 0x51, 0xba, 0x6b, 0xda, 0x65, - 0x39, 0x2a, 0xb4, 0xc2, 0x47, 0xfb, 0x40, 0x06, 0x6a, 0x5b, 0x3c, 0xa8, 0xe1, 0x27, 0x06, 0x35, - 0x3c, 0x5a, 0x82, 0x13, 0x3c, 0xb9, 0x8c, 0x37, 0xb3, 0x1c, 0x13, 0x45, 0x3f, 0xdb, 0x03, 0xfb, - 0x7a, 0xcd, 0x62, 0x7b, 0x1f, 0x06, 0xd4, 0xa8, 0x66, 0x11, 0xd1, 0xf4, 0xe8, 0x07, 0x70, 0x5a, - 0x54, 0x04, 0xdb, 0x8c, 0x6c, 0x13, 0x5d, 0x63, 0x58, 0x9e, 0x14, 0xa6, 0x0b, 0x23, 0xea, 0x66, - 0x91, 0xcd, 0x8e, 0x0d, 0xcf, 0xe0, 0x87, 0x01, 0x35, 0xae, 0x75, 0x49, 0xb9, 0xf3, 0x06, 0x4f, - 0xc2, 0x4e, 0xbd, 0x84, 0x75, 0xd3, 0xd8, 0x26, 0x15, 0x79, 0xca, 0x8f, 0xf3, 0xef, 0xed, 0xac, - 0xd0, 0x8f, 0xda, 0x36, 0x2d, 0xe7, 0x8d, 0x2e, 0x29, 0x77, 0x4e, 0x09, 0xc3, 0x5e, 0xe7, 0x71, - 0x3f, 0xce, 0x6f, 0x13, 0x86, 0xfb, 0x9d, 0xd3, 0x2e, 0xe9, 0xc6, 0xd7, 0xe0, 0x3b, 0xd4, 0x69, - 0x70, 0x8f, 0x69, 0x51, 0xbf, 0x6b, 0x12, 0x1d, 0xa3, 0xe8, 0xe1, 0x01, 0x88, 0x3d, 0x3e, 0x00, - 0x70, 0x4b, 0x8a, 0x86, 0x13, 0x91, 0x2d, 0x29, 0x0a, 0x13, 0x31, 0xe5, 0x2a, 0x44, 0xfd, 0x49, - 0x41, 0xf3, 0x9e, 0x02, 0x8b, 0x83, 0xbd, 0x11, 0x3f, 0xda, 0x07, 0x9c, 0x20, 0x22, 0xb6, 0x94, - 0x8a, 0xa4, 0x0b, 0x9d, 0x4a, 0x2b, 0x3f, 0x85, 0xa8, 0x1f, 0x39, 0x5a, 0x84, 0x02, 0x79, 0xb1, - 0x87, 0x94, 0x36, 0x20, 0x77, 0x12, 0xb6, 0x43, 0x0f, 0x83, 0x40, 0x9d, 0xe2, 0x1a, 0x9d, 0x1e, - 0xbc, 0x0c, 0xdf, 0x12, 0x26, 0x7a, 0xb5, 0x4e, 0x19, 0xb6, 0x8b, 0x1d, 0x0a, 0xe9, 0xb2, 0x12, - 0xc5, 0xd9, 0x74, 0x74, 0xb8, 0xb1, 0xb2, 0x0c, 0x51, 0x7f, 0x76, 0xd0, 0x1c, 0x94, 0x78, 0x76, - 0xdc, 0x6d, 0x63, 0xad, 0xd8, 0x41, 0xfa, 0xaa, 0x2a, 0x16, 0x94, 0x7f, 0x03, 0x78, 0x76, 0x10, - 0x79, 0xa3, 0xcd, 0x37, 0x62, 0x02, 0x97, 0x05, 0x0a, 0xc7, 0x1d, 0x44, 0xe7, 0xe0, 0x0f, 0x3c, - 0x84, 0xe9, 0x01, 0x87, 0x50, 0x12, 0xea, 0xbd, 0x07, 0x70, 0xce, 0x53, 0x9f, 0xb0, 0x00, 0x18, - 0x3a, 0xda, 0xf7, 0x1c, 0xbf, 0xd5, 0xc9, 0xd7, 0x6b, 0x13, 0xfc, 0xf6, 0x58, 0xce, 0x2c, 0x65, - 0x2e, 0xb9, 0xe4, 0xbd, 0x00, 0x13, 0xe3, 0x5d, 0x1b, 0xca, 0x1a, 0x84, 0x37, 0x30, 0x3b, 0xf1, - 0x45, 0xaa, 0xdc, 0x82, 0x31, 0x61, 0xef, 0x5e, 0x15, 0xeb, 0x30, 0xe2, 0x4c, 0x1c, 0xc2, 0x3a, - 0x56, 0xf8, 0xea, 0xf0, 0xd4, 0x3a, 0xd7, 0xe0, 0x46, 0xe8, 0x70, 0x1f, 0xa8, 0xae, 0xa1, 0x72, - 0x11, 0xc6, 0xbe, 0x41, 0xa8, 0xbf, 0x90, 0x94, 0x3b, 0x70, 0xd2, 0x51, 0x76, 0xf7, 0xbf, 0x06, - 0xc3, 0x84, 0xe1, 0x1a, 0x95, 0x81, 0x60, 0xd7, 0xdc, 0xf0, 0xed, 0xbd, 0xa6, 0x37, 0x19, 0xae, - 0xa9, 0x8e, 0xb1, 0xf2, 0x3c, 0x08, 0x13, 0xbd, 0x6b, 0x6d, 0xf4, 0xc0, 0x43, 0xeb, 0xc3, 0x2f, - 0x82, 0x04, 0x0c, 0xd5, 0x49, 0xd9, 0x6d, 0x07, 0xfe, 0xd8, 0xee, 0x3b, 0xe9, 0x4d, 0xfa, 0xee, - 0x3a, 0x4c, 0x38, 0x13, 0x82, 0xe7, 0x2a, 0x0d, 0x8f, 0xbc, 0x4a, 0xa7, 0x1d, 0x9b, 0xb6, 0x80, - 0xbb, 0x11, 0x3c, 0xbd, 0xe7, 0x71, 0x13, 0x19, 0xed, 0xc6, 0xb1, 0xe9, 0xb8, 0xf9, 0x12, 0x84, - 0x75, 0x8a, 0xed, 0x22, 0xae, 0x69, 0xa4, 0xea, 0x5c, 0x28, 0xea, 0x04, 0x97, 0x5c, 0xe7, 0x02, - 0xcf, 0x4c, 0x10, 0xf5, 0xce, 0x04, 0x4a, 0x1d, 0x4e, 0xaa, 0xd8, 0xc0, 0xbb, 0x27, 0x1f, 0xe1, - 0xfc, 0xce, 0x5b, 0x5b, 0x52, 0x34, 0x94, 0x90, 0xdc, 0x01, 0x2b, 0x0d, 0xe3, 0xb7, 0x99, 0xc6, - 0xea, 0xb4, 0xdd, 0x31, 0xe7, 0x60, 0x84, 0x0a, 0x89, 0xd8, 0x35, 0xaa, 0xba, 0x6f, 0xca, 0x3a, - 0x9c, 0xba, 0x86, 0xab, 0xf8, 0x0d, 0x86, 0xcc, 0xc2, 0x2b, 0x19, 0x4e, 0x38, 0xf4, 0xb3, 0x7e, - 0xeb, 0x26, 0xfa, 0x14, 0xc0, 0x88, 0x43, 0x43, 0xe8, 0xe2, 0x88, 0x79, 0xd3, 0x3b, 0xdc, 0xce, - 0x66, 0xfc, 0x29, 0x3b, 0x70, 0x14, 0xd2, 0x7c, 0x24, 0x67, 0xb6, 0x97, 0xef, 0xe9, 0xd9, 0x32, - 0xde, 0xd6, 0xea, 0x55, 0x96, 0xd5, 0x74, 0x1d, 0x53, 0x9a, 0xe1, 0x73, 0x75, 0x96, 0x98, 0xd9, - 0x5d, 0x5c, 0x72, 0x45, 0xd9, 0x5d, 0x9b, 0x30, 0xfc, 0xe0, 0x2f, 0xff, 0xf8, 0x65, 0x70, 0x49, - 0xc9, 0xb9, 0x9f, 0x3a, 0xf9, 0x36, 0x24, 0x9a, 0xff, 0x49, 0xfb, 0x79, 0xbf, 0xe7, 0x5b, 0x81, - 0xae, 0x82, 0x79, 0xf4, 0x0c, 0xc0, 0xb7, 0xfa, 0x86, 0x55, 0x74, 0x79, 0x78, 0xb8, 0xc7, 0x4d, - 0xb7, 0x63, 0xc2, 0x2c, 0x36, 0x1f, 0xc9, 0xef, 0x0a, 0x98, 0x54, 0x27, 0xb5, 0xac, 0x56, 0xae, - 0x11, 0x23, 0x93, 0x6a, 0x98, 0x55, 0xa6, 0x9b, 0x06, 0x35, 0xab, 0xd8, 0x23, 0x17, 0x08, 0x73, - 0xca, 0x85, 0x11, 0x08, 0xb9, 0x81, 0x33, 0xa3, 0x70, 0x70, 0x7f, 0x02, 0x70, 0xf2, 0x06, 0x66, - 0x1d, 0x5c, 0x23, 0xa8, 0xa4, 0x0f, 0xcf, 0x85, 0xe1, 0xfa, 0x1e, 0xd2, 0x54, 0x7e, 0x78, 0xf4, - 0xbb, 0x20, 0x18, 0x17, 0xd0, 0x45, 0xe4, 0x1f, 0x10, 0xfa, 0x33, 0x80, 0xa1, 0x1b, 0x98, 0xa1, - 0xb4, 0x8f, 0xa0, 0xc6, 0x0e, 0xdf, 0x72, 0xc3, 0xbf, 0xe8, 0xb3, 0xed, 0x6c, 0xac, 0x95, 0x05, - 0x84, 0x2b, 0x68, 0x79, 0xbc, 0xae, 0x73, 0xd6, 0xf6, 0xd1, 0x11, 0x80, 0x12, 0xe7, 0x67, 0x74, - 0xc1, 0x0f, 0xbf, 0x3b, 0x80, 0xe6, 0xfd, 0x5f, 0x05, 0x0a, 0x39, 0x29, 0xa2, 0x05, 0x34, 0xe6, - 0x39, 0x42, 0x7f, 0x00, 0xf0, 0x1c, 0xdf, 0xbb, 0xff, 0xab, 0xe5, 0xb4, 0xc0, 0x7d, 0xd7, 0x05, - 0x37, 0xe3, 0xe2, 0xa8, 0x60, 0x03, 0xdb, 0x5a, 0xb5, 0x03, 0xe2, 0x12, 0x2a, 0x8c, 0xea, 0xac, - 0xbe, 0x09, 0x94, 0xa2, 0x27, 0x00, 0x46, 0x54, 0xdc, 0x30, 0x77, 0xf0, 0x18, 0x5d, 0x36, 0xe2, - 0xd0, 0x77, 0x53, 0xb5, 0x62, 0x9d, 0x88, 0xdb, 0x56, 0x95, 0x51, 0x5d, 0x66, 0x8b, 0xb0, 0x07, - 0x51, 0xdc, 0x7f, 0xc4, 0xf7, 0x38, 0x5f, 0x1d, 0x50, 0x9f, 0xd3, 0x82, 0xf9, 0x80, 0x57, 0x67, - 0x55, 0xe0, 0x6c, 0x9d, 0xfd, 0x92, 0x46, 0x71, 0x8b, 0x13, 0xc4, 0x02, 0x17, 0xb4, 0x61, 0xd7, - 0x35, 0x97, 0x18, 0x3c, 0xa8, 0xd7, 0x94, 0xf7, 0xfc, 0xa1, 0x1e, 0x50, 0x4b, 0x8e, 0xfc, 0x6f, - 0x00, 0x4e, 0xbb, 0xc8, 0x4f, 0x4c, 0x81, 0xe3, 0xc1, 0xde, 0x1e, 0x97, 0x01, 0x97, 0x95, 0x05, - 0x9f, 0x10, 0xbb, 0x98, 0xfd, 0xaf, 0x00, 0x46, 0xd7, 0xf9, 0x10, 0xc2, 0x6f, 0xe2, 0xd3, 0xaa, - 0xa1, 0x7d, 0xa2, 0x56, 0x7d, 0x5f, 0xb9, 0x32, 0x8a, 0x3e, 0xdc, 0xc0, 0x07, 0x35, 0xeb, 0xff, - 0x00, 0x9c, 0x6d, 0x01, 0xfb, 0x1c, 0xdb, 0xf5, 0x67, 0x9f, 0x45, 0xbb, 0x5e, 0x55, 0xbe, 0xee, - 0x17, 0xf9, 0x31, 0x0d, 0xfb, 0x04, 0xc0, 0xb0, 0x98, 0x28, 0xd1, 0xfc, 0xa8, 0x09, 0xa4, 0x33, - 0x76, 0x8e, 0x09, 0xd5, 0x3c, 0x51, 0x55, 0xdf, 0x53, 0x2e, 0x8d, 0xec, 0x53, 0x03, 0xef, 0x1e, - 0xc3, 0x3f, 0x6f, 0x8b, 0x78, 0x07, 0xd4, 0xf3, 0xf4, 0x60, 0x7e, 0xfc, 0x59, 0x54, 0xf4, 0x03, - 0x65, 0xc5, 0x17, 0xea, 0x63, 0xca, 0xf9, 0x71, 0x10, 0xca, 0xc7, 0xfd, 0x9e, 0x87, 0x3e, 0xf0, - 0x33, 0x2b, 0x1e, 0xfb, 0x3b, 0xe0, 0x98, 0xa3, 0xe6, 0xbd, 0xe6, 0x23, 0xf9, 0x4a, 0x7f, 0x32, - 0xf8, 0x27, 0xce, 0xa0, 0x5c, 0xb4, 0xae, 0xd3, 0x4e, 0x26, 0xae, 0x28, 0x27, 0xb8, 0x4f, 0x57, - 0xc1, 0xfc, 0xec, 0xe2, 0xe1, 0x01, 0x08, 0x3d, 0x39, 0x00, 0x5f, 0xf1, 0xf1, 0x0d, 0xfd, 0xe0, - 0x53, 0x39, 0x78, 0x17, 0x6c, 0xfc, 0x1c, 0x3c, 0x7e, 0x91, 0x0c, 0x3c, 0x7d, 0x91, 0x0c, 0xbc, - 0x7a, 0x91, 0x04, 0xf7, 0x9b, 0x49, 0xf0, 0xeb, 0x66, 0x12, 0x1c, 0x35, 0x93, 0xe0, 0x71, 0x33, - 0x09, 0x9e, 0x37, 0x93, 0xe0, 0x9f, 0xcd, 0x64, 0xe0, 0x55, 0x33, 0x09, 0x7e, 0xf1, 0x32, 0x19, - 0x38, 0x7c, 0x99, 0x04, 0x8f, 0x5f, 0x26, 0x03, 0x4f, 0x5f, 0x26, 0x03, 0xdf, 0x57, 0x2b, 0xa6, - 0xb5, 0x53, 0xc9, 0x71, 0xc2, 0xc5, 0xb6, 0xad, 0xe5, 0xea, 0x34, 0x2f, 0x1e, 0xb6, 0x4d, 0xbb, - 0x96, 0xb5, 0x6c, 0xb3, 0x41, 0xca, 0xd8, 0xce, 0xb6, 0x96, 0xf3, 0x56, 0xa9, 0x62, 0xe6, 0xf1, - 0x3d, 0xe6, 0xfe, 0x4e, 0x3f, 0xf0, 0x2f, 0x85, 0x52, 0x44, 0x7c, 0x41, 0x2e, 0xfd, 0x3f, 0x00, - 0x00, 0xff, 0xff, 0x4d, 0x51, 0x03, 0x9f, 0x65, 0x19, 0x00, 0x00, + // 1868 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x59, 0x4f, 0x6c, 0x1b, 0x59, + 0x19, 0xf7, 0xf3, 0xbf, 0x3a, 0xcf, 0x89, 0xe3, 0x7d, 0x2d, 0xdd, 0x69, 0x28, 0x8e, 0x19, 0x40, + 0xeb, 0xa6, 0xfe, 0x93, 0x38, 0x4d, 0x9b, 0x0d, 0xbb, 0x51, 0x93, 0xb4, 0xea, 0x36, 0xcb, 0x9f, + 0x32, 0x8d, 0x38, 0xc0, 0xc1, 0x8c, 0xc7, 0x2f, 0xee, 0x23, 0xf6, 0xcc, 0xec, 0xbc, 0x67, 0xa7, + 0x11, 0x8a, 0xa8, 0xf6, 0xcc, 0x81, 0x15, 0x42, 0x5a, 0xb1, 0x08, 0xf5, 0xc8, 0x91, 0x03, 0x07, + 0x44, 0x2e, 0xb9, 0x6d, 0x04, 0x68, 0x55, 0x15, 0x09, 0xaa, 0x8a, 0x43, 0xeb, 0x70, 0x80, 0x0b, + 0x5a, 0x55, 0x1c, 0x38, 0xa2, 0xf7, 0x66, 0x3c, 0x1e, 0xff, 0x89, 0x3d, 0x4e, 0x95, 0xbd, 0xcd, + 0xbc, 0xef, 0xef, 0xef, 0xfb, 0xbe, 0xf7, 0x7d, 0xdf, 0xd8, 0x70, 0xb1, 0x89, 0x69, 0x9e, 0x18, + 0x05, 0xaa, 0x3d, 0xc0, 0x75, 0xb5, 0xa0, 0x9a, 0xa4, 0xa4, 0x59, 0xb8, 0x82, 0x75, 0x46, 0xd4, + 0x5a, 0xc1, 0x6c, 0x94, 0x6b, 0x44, 0x2b, 0x69, 0x0d, 0xca, 0x8c, 0xba, 0x6a, 0x92, 0xbc, 0x69, + 0x19, 0xcc, 0x40, 0x97, 0x6d, 0xa1, 0xbc, 0x2d, 0x94, 0xef, 0x16, 0x9a, 0xc9, 0x55, 0x09, 0x7b, + 0xd0, 0x28, 0xe7, 0x35, 0xa3, 0x5e, 0xa8, 0x1a, 0x55, 0xa3, 0x20, 0x84, 0xca, 0x8d, 0x6d, 0xf1, + 0x26, 0x5e, 0xc4, 0x93, 0xad, 0x6c, 0xe6, 0x72, 0xd5, 0x30, 0xaa, 0x35, 0xcc, 0x4d, 0x17, 0x54, + 0x5d, 0x37, 0x98, 0xca, 0x88, 0xa1, 0x53, 0x87, 0x3a, 0xeb, 0x50, 0x5d, 0x1d, 0x8c, 0xd4, 0x31, + 0x65, 0x6a, 0xdd, 0x74, 0x18, 0xae, 0x0c, 0x05, 0x60, 0x94, 0x7f, 0x8c, 0x35, 0xe6, 0xb0, 0x66, + 0x86, 0xb2, 0xb2, 0x3d, 0x13, 0xb7, 0xad, 0x7e, 0xb9, 0x9b, 0xd3, 0x30, 0xbd, 0x2e, 0x5d, 0xea, + 0x26, 0x7a, 0xe5, 0x2e, 0x77, 0x93, 0x9a, 0x6a, 0x8d, 0x54, 0x54, 0x86, 0x1d, 0xaa, 0xdc, 0x43, + 0xc5, 0x14, 0xeb, 0xcd, 0x1e, 0xe5, 0xe9, 0x1e, 0x1e, 0x82, 0x77, 0x4b, 0x5d, 0x1c, 0xf2, 0x33, + 0x00, 0xa7, 0x36, 0x2c, 0xac, 0x32, 0xac, 0xe0, 0x0f, 0x1a, 0x98, 0x32, 0x74, 0x19, 0x4e, 0xe8, + 0x6a, 0x1d, 0x53, 0x53, 0xd5, 0xb0, 0x04, 0xd2, 0x20, 0x33, 0xa1, 0x74, 0x0e, 0x10, 0x82, 0x61, + 0xfe, 0x22, 0x05, 0x05, 0x41, 0x3c, 0xa3, 0xef, 0xc1, 0x30, 0x35, 0xb1, 0x26, 0x85, 0xd2, 0x20, + 0x13, 0x2f, 0x16, 0xf3, 0xc3, 0xf2, 0x99, 0xdf, 0x10, 0xd9, 0xb7, 0x4d, 0xde, 0x37, 0xb1, 0xb6, + 0xb5, 0x67, 0xe2, 0xf5, 0x89, 0x5f, 0xed, 0x47, 0xdf, 0xd1, 0x0d, 0x1d, 0xaf, 0x2a, 0x42, 0x15, + 0x7a, 0x0b, 0x4e, 0xe3, 0x87, 0x26, 0xb1, 0x44, 0xf6, 0x4a, 0x15, 0x75, 0x8f, 0x4a, 0x91, 0x34, + 0xc8, 0x4c, 0x29, 0x89, 0xce, 0xf1, 0x2d, 0x75, 0x8f, 0xae, 0x9c, 0xff, 0xd3, 0x6a, 0xf4, 0xbb, + 0x22, 0x2d, 0xaf, 0x56, 0xcf, 0x2d, 0x64, 0x8b, 0xd9, 0xc5, 0xec, 0xd2, 0x66, 0x38, 0x16, 0x4e, + 0x46, 0xe4, 0x47, 0x00, 0x4a, 0x0a, 0xd6, 0x6c, 0x4b, 0x1a, 0xa9, 0x6f, 0x19, 0x3b, 0x58, 0xf7, + 0x87, 0xf2, 0x66, 0xbf, 0x79, 0x0e, 0x6e, 0x6a, 0xfd, 0xcd, 0xe7, 0x07, 0x20, 0xb4, 0xb0, 0x3c, + 0xff, 0xbf, 0x03, 0x10, 0xf8, 0xe3, 0xbf, 0x0f, 0x43, 0xe7, 0xe6, 0x22, 0xd2, 0xf3, 0x48, 0x06, + 0xf4, 0xfa, 0xb5, 0x19, 0x8e, 0x05, 0x93, 0x21, 0xf9, 0xf7, 0x00, 0x26, 0xda, 0xd1, 0xa5, 0xa6, + 0xa1, 0x53, 0x11, 0xc0, 0x8a, 0xca, 0x54, 0xc7, 0xa6, 0x78, 0x1e, 0x18, 0xd4, 0x8b, 0x30, 0xaa, + 0x6a, 0x8c, 0x34, 0xb1, 0xb0, 0x1c, 0x53, 0x9c, 0x37, 0xf4, 0x6d, 0x78, 0xc1, 0xe3, 0x9a, 0x5b, + 0xbf, 0x52, 0x58, 0x04, 0x7f, 0x26, 0x6f, 0x57, 0x78, 0xbe, 0x5d, 0xe1, 0xf9, 0xad, 0x36, 0x87, + 0x72, 0xbe, 0x23, 0xe7, 0x1e, 0xae, 0x9c, 0x7f, 0xb1, 0x0a, 0x5e, 0xad, 0x82, 0x85, 0x8f, 0x1f, + 0xcf, 0x06, 0x7e, 0xf7, 0x78, 0x36, 0xf0, 0xe8, 0x1f, 0xe9, 0x80, 0xfc, 0x71, 0x14, 0xce, 0x3a, + 0x19, 0xc2, 0x56, 0x93, 0x68, 0x78, 0xc3, 0xcd, 0x1f, 0x6d, 0x07, 0xf0, 0x0e, 0x0c, 0xf3, 0x5a, + 0x15, 0x38, 0x12, 0xc5, 0xc2, 0xf0, 0xa4, 0xaf, 0xdd, 0xbb, 0xdb, 0x51, 0x21, 0x32, 0x1e, 0x94, + 0x80, 0x22, 0x14, 0x74, 0x67, 0x22, 0x78, 0x52, 0xbd, 0x85, 0x3c, 0xa1, 0xb9, 0x0b, 0xa7, 0x5d, + 0x86, 0x92, 0x65, 0xd4, 0x30, 0x95, 0xc2, 0xe9, 0x50, 0x26, 0x5e, 0x4c, 0xf7, 0x78, 0xf1, 0x9d, + 0x36, 0x97, 0x62, 0xd4, 0x30, 0x37, 0xab, 0x24, 0x74, 0xef, 0x11, 0x45, 0xd7, 0xe1, 0x97, 0x9a, + 0xc4, 0x62, 0x0d, 0xb5, 0x56, 0xda, 0x59, 0xa6, 0xa5, 0x8e, 0x23, 0x51, 0x6e, 0x4f, 0x78, 0x79, + 0xde, 0x61, 0x78, 0x7f, 0x99, 0xba, 0xfa, 0x50, 0x16, 0x26, 0x7b, 0xe5, 0xa4, 0x73, 0xae, 0x48, + 0xa2, 0x5b, 0x04, 0x7d, 0x15, 0xc6, 0x4c, 0x95, 0xd2, 0x5d, 0xc3, 0xaa, 0x48, 0x31, 0xc1, 0x15, + 0x39, 0xda, 0x07, 0x12, 0x50, 0xdc, 0xe3, 0x41, 0x05, 0x3f, 0x31, 0xa8, 0xe0, 0xd1, 0x22, 0x9c, + 0xe0, 0xc1, 0x65, 0xbc, 0x98, 0xa5, 0xb8, 0x48, 0xfa, 0x85, 0x1e, 0xd8, 0xb7, 0xeb, 0x26, 0xdb, + 0x7b, 0x2f, 0xa0, 0xc4, 0x54, 0x93, 0x88, 0xa2, 0x47, 0x3f, 0x84, 0xd3, 0x22, 0x23, 0xd8, 0x62, + 0x64, 0x9b, 0x68, 0x2a, 0xc3, 0xd2, 0xa4, 0x10, 0x9d, 0x1f, 0x91, 0x37, 0x93, 0x6c, 0x74, 0x64, + 0x78, 0x04, 0xdf, 0x0b, 0x28, 0x09, 0xb5, 0xeb, 0x94, 0x2b, 0x6f, 0xf2, 0x20, 0xec, 0x34, 0xca, + 0x58, 0x33, 0xf4, 0x6d, 0x52, 0x95, 0xa6, 0xfc, 0x28, 0xff, 0xfe, 0xce, 0x32, 0x7d, 0xdf, 0x95, + 0x69, 0x2b, 0x6f, 0x76, 0x9d, 0x72, 0xe5, 0x94, 0x30, 0xec, 0x55, 0x9e, 0xf0, 0xa3, 0xfc, 0x3e, + 0x61, 0xb8, 0x5f, 0x39, 0xed, 0x3a, 0x5d, 0xff, 0x06, 0xbc, 0x44, 0xed, 0x02, 0xf7, 0x88, 0x96, + 0xb4, 0x07, 0x06, 0xd1, 0x30, 0x8a, 0x1d, 0x1e, 0x80, 0xf8, 0x93, 0x03, 0x00, 0x37, 0xc3, 0xb1, + 0x48, 0x32, 0xba, 0x19, 0x8e, 0xc1, 0x64, 0x5c, 0xbe, 0x09, 0x51, 0x7f, 0x50, 0xd0, 0x9c, 0x27, + 0xc1, 0xe2, 0x62, 0xaf, 0x27, 0x8e, 0xf6, 0x01, 0x6f, 0x10, 0x51, 0x2b, 0x9c, 0x8e, 0x66, 0x8a, + 0x9d, 0x4c, 0xcb, 0x3f, 0x85, 0xa8, 0x1f, 0x39, 0x5a, 0x80, 0x02, 0x79, 0xa9, 0xa7, 0x29, 0xad, + 0x43, 0xae, 0x24, 0x62, 0x85, 0x1e, 0x07, 0x81, 0x32, 0xc5, 0x39, 0x3a, 0x35, 0x78, 0x1d, 0xbe, + 0x21, 0x44, 0xb4, 0x5a, 0x83, 0x32, 0x6c, 0x95, 0x3a, 0x2d, 0xa4, 0x4b, 0x4a, 0x24, 0x67, 0xc3, + 0xe6, 0xe1, 0xc2, 0xf2, 0x12, 0x44, 0xfd, 0xd1, 0x41, 0xb3, 0x30, 0xcc, 0xa3, 0xe3, 0x98, 0x8d, + 0xb7, 0x7d, 0x07, 0x99, 0x9b, 0x8a, 0x20, 0xc8, 0xff, 0x01, 0xf0, 0xc2, 0xa0, 0xe6, 0x8d, 0x36, + 0x5e, 0xab, 0x13, 0x38, 0x5d, 0xa0, 0x78, 0xd2, 0x45, 0xb4, 0x2f, 0xfe, 0xc0, 0x4b, 0x98, 0x19, + 0x70, 0x09, 0xc3, 0x82, 0xbd, 0xf7, 0x02, 0xce, 0x7a, 0xf2, 0x13, 0x11, 0x00, 0x43, 0x47, 0xfb, + 0x9e, 0xeb, 0xb7, 0x32, 0xf9, 0x6a, 0x75, 0x82, 0x4f, 0x8f, 0xa5, 0xec, 0x62, 0xf6, 0x9a, 0xd3, + 0xbc, 0xe7, 0x61, 0x72, 0xbc, 0xb1, 0x21, 0xaf, 0x42, 0x78, 0x07, 0xb3, 0x53, 0x0f, 0x52, 0xf9, + 0x1e, 0x8c, 0x0b, 0x79, 0x67, 0x54, 0xac, 0xc1, 0xa8, 0xbd, 0x71, 0x08, 0xe9, 0x78, 0xf1, 0xeb, + 0xc3, 0x43, 0x6b, 0x8f, 0xc1, 0xf5, 0xd0, 0xe1, 0x3e, 0x50, 0x1c, 0x41, 0xf9, 0x2a, 0x8c, 0x7f, + 0x8b, 0x50, 0x7f, 0x2e, 0xc9, 0x5b, 0x70, 0xd2, 0x66, 0x76, 0xec, 0xdf, 0x82, 0x11, 0xc2, 0x70, + 0x9d, 0x4a, 0x40, 0x74, 0xd7, 0xfc, 0x70, 0xf3, 0x5e, 0xd1, 0xbb, 0x0c, 0xd7, 0x15, 0x5b, 0x58, + 0x7e, 0x11, 0x84, 0xc9, 0x5e, 0x9a, 0x8b, 0x1e, 0x78, 0xda, 0xfa, 0xf0, 0x41, 0x90, 0x84, 0xa1, + 0x06, 0xa9, 0x38, 0xe5, 0xc0, 0x1f, 0xdd, 0xba, 0x0b, 0xbf, 0x4e, 0xdd, 0xdd, 0x86, 0x49, 0x7b, + 0x43, 0xf0, 0x8c, 0xd2, 0xc8, 0xc8, 0x51, 0x3a, 0x6d, 0xcb, 0xb8, 0x07, 0x5c, 0x8d, 0xe8, 0xd3, + 0x7b, 0x1e, 0x35, 0xd1, 0xd1, 0x6a, 0x6c, 0x99, 0x8e, 0x9a, 0xaf, 0x40, 0xd8, 0xa0, 0xd8, 0x2a, + 0xe1, 0xba, 0x4a, 0x6a, 0xf6, 0x40, 0x51, 0x26, 0xf8, 0xc9, 0x6d, 0x7e, 0xe0, 0xd9, 0x09, 0x62, + 0xde, 0x9d, 0x40, 0x6e, 0xc0, 0x49, 0x05, 0xeb, 0x78, 0xf7, 0xf4, 0x2b, 0x9c, 0xdf, 0x7d, 0x6b, + 0x33, 0x1c, 0x0b, 0x25, 0xc3, 0xce, 0x82, 0x95, 0x81, 0x89, 0xfb, 0x4c, 0x65, 0x0d, 0xea, 0x56, + 0xcc, 0x45, 0x18, 0xa5, 0xe2, 0x44, 0x58, 0x8d, 0x29, 0xce, 0x9b, 0xbc, 0x06, 0xa7, 0x6e, 0xe1, + 0x1a, 0x7e, 0x8d, 0x25, 0xb3, 0xf8, 0xdf, 0x4b, 0x70, 0xc2, 0x6e, 0x3f, 0x6b, 0xf7, 0xee, 0xa2, + 0xcf, 0x00, 0x8c, 0xda, 0x6d, 0x08, 0x5d, 0x1d, 0xb1, 0x6f, 0x7a, 0x97, 0xdb, 0x99, 0xac, 0x3f, + 0x66, 0x1b, 0x8e, 0x4c, 0x5a, 0x9f, 0x4a, 0xd9, 0xed, 0xa5, 0x87, 0x5a, 0xae, 0x82, 0xb7, 0xd5, + 0x46, 0x8d, 0xe5, 0x54, 0x4d, 0xc3, 0x94, 0x66, 0xf9, 0x5e, 0x9d, 0x23, 0x46, 0x6e, 0x17, 0x97, + 0x9d, 0xa3, 0xdc, 0xae, 0x45, 0x18, 0xfe, 0xf0, 0xaf, 0xff, 0xfc, 0x45, 0x70, 0x51, 0xce, 0x3b, + 0x9f, 0x3a, 0x05, 0x17, 0x12, 0x2d, 0xfc, 0xc4, 0x7d, 0xde, 0xef, 0xf9, 0x56, 0xa0, 0x2b, 0x60, + 0x0e, 0x3d, 0x07, 0xf0, 0x8d, 0xbe, 0x65, 0x15, 0x5d, 0x1f, 0xee, 0xee, 0x49, 0xdb, 0xed, 0x98, + 0x30, 0x4b, 0xad, 0x4f, 0xa5, 0xb7, 0x04, 0x4c, 0xaa, 0x91, 0x7a, 0x4e, 0xad, 0xd4, 0x89, 0x9e, + 0x4d, 0x37, 0x8d, 0x1a, 0xd3, 0x0c, 0x9d, 0x1a, 0x35, 0xec, 0x39, 0x17, 0x08, 0xf3, 0xf2, 0x95, + 0x11, 0x08, 0xb9, 0x80, 0xbd, 0xa3, 0x70, 0x70, 0x7f, 0x06, 0x70, 0xf2, 0x0e, 0x66, 0x1d, 0x5c, + 0x23, 0x5a, 0x49, 0x1f, 0x9e, 0x2b, 0xc3, 0xf9, 0x3d, 0x4d, 0x53, 0xfe, 0xd1, 0xd1, 0x1f, 0x82, + 0x60, 0x5c, 0x40, 0x57, 0x91, 0x7f, 0x40, 0xe8, 0x2f, 0x00, 0x86, 0xee, 0x60, 0x86, 0x32, 0x3e, + 0x9c, 0x1a, 0xdb, 0x7d, 0xd3, 0x71, 0xff, 0xaa, 0xcf, 0xb2, 0xb3, 0xb0, 0x5a, 0x11, 0x10, 0x6e, + 0xa0, 0xa5, 0xf1, 0xaa, 0xce, 0xa6, 0xed, 0xa3, 0x23, 0x00, 0xc3, 0xbc, 0x3f, 0xa3, 0x2b, 0x7e, + 0xfa, 0xbb, 0x0d, 0x68, 0xce, 0xff, 0x28, 0x90, 0xc9, 0x69, 0x11, 0xcd, 0xa3, 0x31, 0xef, 0x11, + 0x6a, 0x01, 0x78, 0x91, 0xdb, 0xee, 0xff, 0x6a, 0x39, 0x2b, 0x70, 0x1f, 0x38, 0xe0, 0x0a, 0x02, + 0x5c, 0xbb, 0xba, 0xca, 0x2a, 0x25, 0x5a, 0xae, 0x6e, 0xe8, 0x84, 0x19, 0x96, 0x8b, 0xb1, 0x8a, + 0x75, 0x6c, 0xa9, 0xb5, 0x0e, 0xc0, 0x6b, 0xa8, 0x38, 0xaa, 0xea, 0xfa, 0xb6, 0x53, 0x8a, 0x9e, + 0x02, 0x18, 0x55, 0x70, 0xd3, 0xd8, 0xc1, 0x63, 0x54, 0xe0, 0x88, 0x86, 0xd0, 0xdd, 0xc6, 0x65, + 0xf3, 0x54, 0x7d, 0x6f, 0x45, 0x1e, 0x55, 0x81, 0x96, 0x70, 0x7b, 0x50, 0xfb, 0xfb, 0x28, 0xc8, + 0xbf, 0xd5, 0x39, 0x75, 0x40, 0xee, 0xce, 0x0a, 0xe6, 0xaf, 0x79, 0xe6, 0xb6, 0x7a, 0x33, 0x87, + 0xdb, 0xfd, 0x62, 0x40, 0x4a, 0xbd, 0x14, 0xce, 0xea, 0x06, 0xa4, 0xa1, 0x3a, 0xed, 0xc4, 0x13, + 0x8f, 0x55, 0xf9, 0x6d, 0x7f, 0xf1, 0x18, 0x90, 0x65, 0x1e, 0x93, 0xbf, 0x03, 0x38, 0xed, 0xc4, + 0xe4, 0xd4, 0x8d, 0x73, 0xbc, 0x80, 0x6c, 0x8f, 0xdb, 0x37, 0x97, 0xe4, 0x79, 0x9f, 0x10, 0xbb, + 0xe6, 0xc1, 0xdf, 0x00, 0x8c, 0xad, 0xf1, 0xd5, 0x85, 0xcf, 0xef, 0xb3, 0xca, 0xae, 0x75, 0xaa, + 0x22, 0x7e, 0x47, 0xbe, 0x31, 0xaa, 0xe9, 0x38, 0x8e, 0x0f, 0x2a, 0xe3, 0x5f, 0x06, 0xe1, 0x4c, + 0x1b, 0xd8, 0x17, 0x58, 0xc8, 0xbf, 0x39, 0xdb, 0x42, 0xbe, 0x29, 0x7f, 0xd3, 0x6f, 0x4c, 0x4e, + 0x28, 0xe5, 0xa7, 0x00, 0x46, 0xc4, 0x86, 0x8a, 0xe6, 0x46, 0x6d, 0x34, 0x9d, 0x35, 0x76, 0xcc, + 0x20, 0x18, 0xa7, 0xca, 0xf7, 0xdb, 0xf2, 0xb5, 0x91, 0x15, 0xac, 0xe3, 0xdd, 0x13, 0x7a, 0xd6, + 0x9b, 0xc2, 0xdf, 0x01, 0x99, 0x3e, 0x3b, 0x98, 0x9f, 0x9c, 0x6d, 0xae, 0xdf, 0x95, 0x97, 0x7d, + 0xc5, 0xe3, 0x84, 0x44, 0x7f, 0x12, 0x84, 0xd2, 0x49, 0xbf, 0x1c, 0xa2, 0x77, 0xfd, 0x6c, 0xa5, + 0x27, 0xfe, 0xe2, 0x38, 0xe6, 0x52, 0xfb, 0x11, 0x8f, 0xd3, 0xbd, 0xfe, 0x38, 0xf1, 0xaf, 0xa9, + 0x81, 0x61, 0xf2, 0x10, 0xba, 0xa2, 0xd4, 0x1e, 0xdb, 0x9d, 0x18, 0xdd, 0x90, 0x4f, 0x31, 0xb7, + 0x57, 0xc0, 0xdc, 0xcc, 0xc2, 0xe1, 0x01, 0x08, 0x3d, 0x3d, 0x00, 0x5f, 0xf3, 0xf1, 0x1d, 0xff, + 0xe1, 0x67, 0x52, 0xf0, 0x01, 0x58, 0xff, 0x19, 0x78, 0xf2, 0x32, 0x15, 0x78, 0xf6, 0x32, 0x15, + 0xf8, 0xfc, 0x65, 0x0a, 0x3c, 0x6a, 0xa5, 0xc0, 0x6f, 0x5b, 0x29, 0x70, 0xd4, 0x4a, 0x81, 0x27, + 0xad, 0x14, 0x78, 0xd1, 0x4a, 0x81, 0x7f, 0xb5, 0x52, 0x81, 0xcf, 0x5b, 0x29, 0xf0, 0xf3, 0xe3, + 0x54, 0xe0, 0xf0, 0x38, 0x05, 0x9e, 0x1c, 0xa7, 0x02, 0xcf, 0x8e, 0x53, 0x81, 0x1f, 0x28, 0x55, + 0xc3, 0xdc, 0xa9, 0xe6, 0x79, 0xfb, 0xc6, 0x96, 0xa5, 0xe6, 0x1b, 0xb4, 0x20, 0x1e, 0xb6, 0x0d, + 0xab, 0x9e, 0x33, 0x2d, 0xa3, 0x49, 0x2a, 0xd8, 0xca, 0xb5, 0xc9, 0x05, 0xb3, 0x5c, 0x35, 0x0a, + 0xf8, 0x21, 0x73, 0xfe, 0x2b, 0x18, 0xf8, 0xb7, 0x46, 0x39, 0x2a, 0xbe, 0x62, 0x17, 0xff, 0x1f, + 0x00, 0x00, 0xff, 0xff, 0x9c, 0x66, 0x54, 0xeb, 0xe9, 0x19, 0x00, 0x00, } func (this *CreateRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/api_credential/public_customapi.vesapi.go b/pbgo/extschema/schema/api_credential/public_customapi.vesapi.go index fc3eb5d0d..afc9f588d 100644 --- a/pbgo/extschema/schema/api_credential/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/api_credential/public_customapi.vesapi.go @@ -4288,10 +4288,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/api_group_element/crudapi/api.vesapi.go b/pbgo/extschema/schema/api_group_element/crudapi/api.vesapi.go index e8f226aa4..c57c7998a 100644 --- a/pbgo/extschema/schema/api_group_element/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/api_group_element/crudapi/api.vesapi.go @@ -3119,10 +3119,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/api_group_element/object.pb.go b/pbgo/extschema/schema/api_group_element/object.pb.go index 163871d9a..17c8e507b 100644 --- a/pbgo/extschema/schema/api_group_element/object.pb.go +++ b/pbgo/extschema/schema/api_group_element/object.pb.go @@ -231,43 +231,43 @@ func init() { } var fileDescriptor_586f635d24e39301 = []byte{ - // 561 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0xb1, 0x6f, 0xd3, 0x4e, + // 567 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x93, 0xb1, 0x6f, 0xd3, 0x4e, 0x14, 0xc7, 0x7d, 0x49, 0xd5, 0x5f, 0x75, 0xad, 0xfa, 0x03, 0xc3, 0x60, 0x0a, 0x1c, 0x51, 0x58, - 0x8a, 0xa8, 0x6d, 0xa9, 0xa8, 0x03, 0x55, 0xdb, 0xa1, 0x0c, 0x65, 0x48, 0x85, 0x94, 0x94, 0x85, - 0x25, 0x3a, 0x3b, 0x2f, 0x8e, 0x21, 0xf6, 0xb3, 0x7c, 0x67, 0xab, 0x19, 0x2a, 0xb1, 0xb1, 0x32, - 0xf2, 0x27, 0x20, 0xfe, 0x0a, 0xca, 0x84, 0x98, 0xa2, 0x4e, 0x11, 0x13, 0x71, 0x16, 0xc6, 0xf2, - 0x1f, 0xa0, 0x9c, 0xeb, 0xa8, 0x69, 0x83, 0x82, 0xd8, 0xde, 0xf9, 0x7d, 0xbe, 0x5f, 0xbf, 0x77, - 0xef, 0x1e, 0xdd, 0x48, 0x41, 0x58, 0x3e, 0xda, 0xc2, 0xed, 0x40, 0xc0, 0x6d, 0x1e, 0xf9, 0x4d, - 0x2f, 0xc6, 0x24, 0x6a, 0x42, 0x17, 0x02, 0x08, 0xa5, 0x8d, 0xce, 0x6b, 0x70, 0xa5, 0x15, 0xc5, - 0x28, 0x51, 0x7f, 0x90, 0xd3, 0x56, 0x4e, 0x5b, 0xd7, 0xe8, 0x35, 0xd3, 0xf3, 0x65, 0x27, 0x71, - 0x2c, 0x17, 0x03, 0xdb, 0x43, 0x0f, 0x6d, 0xa5, 0x73, 0x92, 0xb6, 0x3a, 0xa9, 0x83, 0x8a, 0x72, - 0xbf, 0xb5, 0xc7, 0xf3, 0xfe, 0x2e, 0x7b, 0x11, 0x88, 0x0b, 0xf8, 0xee, 0x34, 0x8c, 0x91, 0xf4, - 0x31, 0x2c, 0x92, 0x77, 0xa6, 0x93, 0x97, 0x75, 0xd5, 0xe9, 0x54, 0x0a, 0x02, 0xc2, 0x74, 0x5a, - 0x5e, 0xfd, 0x5e, 0xa2, 0x8b, 0x2f, 0x54, 0xa7, 0xfa, 0x53, 0xba, 0x14, 0x80, 0xe4, 0x2d, 0x2e, - 0xb9, 0x41, 0x2a, 0x64, 0x7d, 0x79, 0xf3, 0xbe, 0x35, 0xdd, 0x76, 0x0e, 0x1e, 0x82, 0xe4, 0x47, - 0xbd, 0x08, 0xea, 0x13, 0x5c, 0xaf, 0xd1, 0xff, 0x45, 0x4f, 0x48, 0x08, 0x9a, 0x13, 0x87, 0x92, - 0x72, 0x78, 0x78, 0xc5, 0xa1, 0xa1, 0xa8, 0x2b, 0x3e, 0xab, 0xb9, 0xf6, 0xb0, 0x70, 0xdb, 0xa5, - 0x0b, 0x22, 0x02, 0xd7, 0x28, 0x2b, 0x8b, 0x47, 0xd6, 0x9c, 0xbb, 0xb7, 0x1a, 0x11, 0xb8, 0xca, - 0x48, 0xc9, 0xb6, 0xdf, 0x91, 0x2f, 0xa7, 0x46, 0xa9, 0x43, 0xce, 0x4e, 0x8d, 0x13, 0xba, 0x43, - 0xcb, 0x07, 0x20, 0xf5, 0xad, 0xf6, 0xd6, 0xb1, 0x6b, 0xba, 0x18, 0x0a, 0xec, 0x82, 0xe9, 0x70, - 0x01, 0x66, 0x80, 0xa1, 0x2f, 0x31, 0xde, 0xa8, 0xa8, 0xd4, 0xf8, 0xd3, 0x46, 0x25, 0x05, 0x61, - 0xfa, 0x68, 0x26, 0x3c, 0x30, 0x63, 0xe0, 0x2d, 0xba, 0x4b, 0x17, 0x6a, 0xbe, 0xf8, 0x57, 0x79, - 0xf5, 0x88, 0x2e, 0x15, 0xb5, 0xe9, 0xcf, 0xe9, 0x7f, 0x9e, 0xdb, 0x54, 0x7d, 0xe5, 0x97, 0x6b, - 0xcf, 0xed, 0xeb, 0xa0, 0x8b, 0x0e, 0xef, 0x4e, 0xba, 0x5b, 0xf4, 0xdc, 0x71, 0x5c, 0xfd, 0x45, - 0xe8, 0x4a, 0x43, 0x72, 0x99, 0x88, 0xbf, 0x1e, 0x5c, 0x8e, 0xcf, 0x18, 0x5c, 0x83, 0x2e, 0xe7, - 0xef, 0xbc, 0x19, 0x43, 0x5b, 0x18, 0xa5, 0x4a, 0x79, 0x7d, 0x79, 0xf3, 0xde, 0xcc, 0xb1, 0xd7, - 0xa1, 0x3d, 0x16, 0xef, 0xdf, 0xfe, 0x74, 0x72, 0xf3, 0x5a, 0xad, 0x75, 0x8a, 0x05, 0x24, 0xf4, - 0x1d, 0x4a, 0x5d, 0x0c, 0x5b, 0xbe, 0x7a, 0x67, 0x46, 0x79, 0xa6, 0xe7, 0xb3, 0x02, 0x50, 0x05, - 0x5d, 0xe2, 0xb7, 0x6f, 0x9d, 0xed, 0xdd, 0xa0, 0xab, 0x74, 0xa5, 0xa8, 0xd1, 0x4a, 0xfc, 0xd6, - 0xfe, 0x07, 0xf2, 0x6d, 0xaf, 0x54, 0xaf, 0xf5, 0x87, 0x4c, 0x1b, 0x0c, 0x99, 0x76, 0x3e, 0x64, - 0xe4, 0x6d, 0xc6, 0xc8, 0xc7, 0x8c, 0x91, 0xaf, 0x19, 0x23, 0xfd, 0x8c, 0x91, 0x41, 0xc6, 0xc8, - 0x8f, 0x8c, 0x91, 0x9f, 0x19, 0xd3, 0xce, 0x33, 0x46, 0xde, 0x8f, 0x98, 0xf6, 0x79, 0xc4, 0x48, - 0x7f, 0xc4, 0xb4, 0xc1, 0x88, 0x69, 0xaf, 0x5e, 0x7a, 0x18, 0xbd, 0xf1, 0xac, 0x14, 0xbb, 0x12, - 0xe2, 0x98, 0x5b, 0x89, 0xb0, 0x55, 0xd0, 0xc6, 0x38, 0x30, 0xa3, 0x18, 0x53, 0xbf, 0x05, 0xb1, - 0x59, 0xa4, 0xed, 0xc8, 0xf1, 0xd0, 0x86, 0x63, 0x79, 0xb1, 0x3d, 0x7f, 0xda, 0x54, 0x67, 0x51, - 0x2d, 0xd2, 0x93, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xda, 0x6c, 0x7a, 0xff, 0x51, 0x04, 0x00, - 0x00, + 0x8a, 0xa8, 0x6d, 0xa9, 0x88, 0x81, 0x0a, 0x3a, 0x94, 0xa1, 0x0c, 0xad, 0x10, 0x49, 0x91, 0x80, + 0x25, 0x3a, 0x3b, 0x2f, 0x8e, 0x21, 0xf6, 0xb3, 0x7c, 0x67, 0xab, 0x19, 0x90, 0xf8, 0x13, 0x90, + 0x58, 0xf8, 0x13, 0x10, 0x3b, 0x7b, 0xcb, 0x84, 0x98, 0xa2, 0x4e, 0x19, 0x89, 0xb3, 0x30, 0x96, + 0xff, 0x00, 0xe5, 0x5c, 0x47, 0x4d, 0x1a, 0x14, 0x16, 0xb6, 0xb3, 0xbe, 0x9f, 0xef, 0xd7, 0xf7, + 0xde, 0xbb, 0x47, 0x37, 0x52, 0x10, 0x96, 0x8f, 0xb6, 0x70, 0xdb, 0x10, 0x70, 0x9b, 0x47, 0x7e, + 0xc3, 0x8b, 0x31, 0x89, 0x1a, 0xd0, 0x81, 0x00, 0x42, 0x69, 0xa3, 0xf3, 0x1a, 0x5c, 0x69, 0x45, + 0x31, 0x4a, 0xd4, 0x6f, 0xe5, 0xb4, 0x95, 0xd3, 0xd6, 0x05, 0x7a, 0xcd, 0xf4, 0x7c, 0xd9, 0x4e, + 0x1c, 0xcb, 0xc5, 0xc0, 0xf6, 0xd0, 0x43, 0x5b, 0xf9, 0x9c, 0xa4, 0xa5, 0xbe, 0xd4, 0x87, 0x3a, + 0xe5, 0x79, 0x6b, 0x77, 0xe7, 0xfd, 0x5d, 0x76, 0x23, 0x10, 0x67, 0xf0, 0xf5, 0x49, 0x18, 0x23, + 0xe9, 0x63, 0x58, 0x88, 0xd7, 0x26, 0xc5, 0xf3, 0xbe, 0xea, 0xa4, 0x94, 0x82, 0x80, 0x30, 0x9d, + 0xb4, 0x57, 0x3f, 0x94, 0xe9, 0xe2, 0x53, 0x55, 0xa9, 0xfe, 0x80, 0x2e, 0x05, 0x20, 0x79, 0x93, + 0x4b, 0x6e, 0x90, 0x0a, 0x59, 0x5f, 0xde, 0xbc, 0x69, 0x4d, 0x96, 0x9d, 0x83, 0xfb, 0x20, 0xf9, + 0x41, 0x37, 0x82, 0xda, 0x18, 0xd7, 0xf7, 0xe8, 0xff, 0xa2, 0x2b, 0x24, 0x04, 0x8d, 0x71, 0x42, + 0x49, 0x25, 0xdc, 0x9e, 0x4a, 0xa8, 0x2b, 0x6a, 0x2a, 0x67, 0x35, 0xf7, 0xee, 0x17, 0x69, 0x8f, + 0xe8, 0x82, 0x88, 0xc0, 0x35, 0xca, 0x2a, 0xe2, 0x8e, 0x35, 0xa7, 0xf7, 0x56, 0x3d, 0x02, 0x57, + 0x05, 0x29, 0xdb, 0xd6, 0x11, 0xf9, 0x7a, 0x6c, 0x94, 0xda, 0xe4, 0xe4, 0xd8, 0xf8, 0x42, 0xe8, + 0x0b, 0x5a, 0xde, 0x05, 0xa9, 0x3f, 0x6b, 0xdd, 0x3f, 0x74, 0x4d, 0x17, 0x43, 0x81, 0x1d, 0x30, + 0x1d, 0x2e, 0xc0, 0x0c, 0x30, 0xf4, 0x25, 0xc6, 0x1b, 0x95, 0x69, 0xc9, 0x77, 0xa7, 0xb4, 0x11, + 0xbe, 0x51, 0x49, 0x41, 0x98, 0x3e, 0x9a, 0x09, 0x0f, 0xcc, 0x18, 0x78, 0x93, 0xbe, 0xa4, 0x0b, + 0x7b, 0xbe, 0xf8, 0x17, 0xd1, 0xd5, 0x03, 0xba, 0x54, 0x14, 0xa5, 0x3f, 0xa1, 0xff, 0x79, 0x6e, + 0x43, 0x35, 0x24, 0x9f, 0x8a, 0x3d, 0xb7, 0x21, 0xbb, 0x1d, 0x74, 0x78, 0x67, 0xdc, 0x96, 0x45, + 0xcf, 0x1d, 0x9d, 0xab, 0xbf, 0x08, 0x5d, 0xa9, 0x4b, 0x2e, 0x13, 0xf1, 0xd7, 0x13, 0xcf, 0xf1, + 0x19, 0x13, 0xaf, 0xd3, 0xe5, 0x7c, 0x41, 0x1a, 0x31, 0xb4, 0x84, 0x51, 0xaa, 0x94, 0xd7, 0x97, + 0x37, 0x6f, 0xcc, 0x7c, 0x2f, 0x35, 0x68, 0x8d, 0xcc, 0x3b, 0x57, 0x3f, 0xbf, 0xbd, 0x7c, 0xe1, + 0xae, 0x35, 0x8a, 0x05, 0x24, 0xf4, 0x87, 0x94, 0xba, 0x18, 0x36, 0x7d, 0xf5, 0x40, 0x8d, 0xf2, + 0xcc, 0xcc, 0xc7, 0x05, 0xa0, 0x2e, 0x74, 0x8e, 0xdf, 0xba, 0x72, 0xb2, 0x7d, 0x89, 0xae, 0xd2, + 0x95, 0xe2, 0x8e, 0x56, 0xe2, 0x37, 0x77, 0x3e, 0x92, 0xef, 0xdb, 0xa5, 0xda, 0x5e, 0x6f, 0xc0, + 0xb4, 0xfe, 0x80, 0x69, 0xa7, 0x03, 0x46, 0xde, 0x65, 0x8c, 0x7c, 0xca, 0x18, 0xf9, 0x96, 0x31, + 0xd2, 0xcb, 0x18, 0xe9, 0x67, 0x8c, 0xfc, 0xc8, 0x18, 0xf9, 0x99, 0x31, 0xed, 0x34, 0x63, 0xe4, + 0xfd, 0x90, 0x69, 0x47, 0x43, 0x46, 0x7a, 0x43, 0xa6, 0xf5, 0x87, 0x4c, 0x7b, 0xf5, 0xdc, 0xc3, + 0xe8, 0x8d, 0x67, 0xa5, 0xd8, 0x91, 0x10, 0xc7, 0xdc, 0x4a, 0x84, 0xad, 0x0e, 0x2d, 0x8c, 0x03, + 0x33, 0x8a, 0x31, 0xf5, 0x9b, 0x10, 0x9b, 0x85, 0x6c, 0x47, 0x8e, 0x87, 0x36, 0x1c, 0xca, 0xb3, + 0xb5, 0xfb, 0xd3, 0x8a, 0x3b, 0x8b, 0x6a, 0x03, 0xef, 0xfd, 0x0e, 0x00, 0x00, 0xff, 0xff, 0xd0, + 0x3f, 0xa7, 0x24, 0x8a, 0x04, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/api_group_element/public_crudapi.pb.go b/pbgo/extschema/schema/api_group_element/public_crudapi.pb.go index 54ee719e3..f13cb2520 100644 --- a/pbgo/extschema/schema/api_group_element/public_crudapi.pb.go +++ b/pbgo/extschema/schema/api_group_element/public_crudapi.pb.go @@ -699,87 +699,88 @@ func init() { } var fileDescriptor_cd50e46381bd22b3 = []byte{ - // 1279 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xd8, 0x8e, 0x6b, 0x8f, 0xd3, 0xc4, 0x0c, 0xfd, 0xb1, 0x35, 0xd5, 0x62, 0x0c, 0xaa, - 0x22, 0x1a, 0xdb, 0x6d, 0x0a, 0xa8, 0xad, 0xa0, 0x52, 0xdc, 0x3a, 0x56, 0x4a, 0xda, 0xb4, 0x6b, - 0xa7, 0x42, 0x5c, 0x56, 0x6b, 0xfb, 0x79, 0xb3, 0xd4, 0xde, 0x59, 0x66, 0xc6, 0x6e, 0xa3, 0x2a, - 0x12, 0xea, 0x8d, 0x1b, 0x12, 0x9c, 0x10, 0x12, 0x5c, 0x90, 0x90, 0x38, 0x72, 0x41, 0xca, 0xa5, - 0x37, 0xaa, 0x1e, 0x50, 0x04, 0x97, 0x72, 0x40, 0xa2, 0x0e, 0x87, 0x1e, 0xfb, 0x07, 0x70, 0x40, - 0x3b, 0xb3, 0x76, 0x6d, 0x27, 0x28, 0x71, 0xcb, 0xc9, 0x33, 0xef, 0x7b, 0xdf, 0xb7, 0xf3, 0x66, - 0xde, 0x7b, 0x7e, 0xf8, 0x9d, 0x2e, 0xf0, 0xbc, 0x43, 0x0b, 0xbc, 0xbe, 0x0e, 0x6d, 0xab, 0x60, - 0x79, 0x8e, 0x69, 0x33, 0xda, 0xf1, 0x4c, 0x68, 0x41, 0x1b, 0x5c, 0x51, 0xf0, 0x3a, 0xb5, 0x96, - 0x53, 0x37, 0xeb, 0xac, 0xd3, 0xb0, 0x3c, 0x27, 0xef, 0x31, 0x2a, 0x28, 0x79, 0x5d, 0xb1, 0xf2, - 0x8a, 0x95, 0xdf, 0xc5, 0x4a, 0xe7, 0x6c, 0x47, 0xac, 0x77, 0x6a, 0xf9, 0x3a, 0x6d, 0x17, 0x6c, - 0x6a, 0xd3, 0x82, 0xe4, 0xd5, 0x3a, 0x4d, 0xb9, 0x93, 0x1b, 0xb9, 0x52, 0x7a, 0xe9, 0x93, 0x36, - 0xa5, 0x76, 0x0b, 0xfc, 0xcf, 0x17, 0x2c, 0xd7, 0xa5, 0xc2, 0x12, 0x0e, 0x75, 0x79, 0x80, 0xbe, - 0x16, 0xa0, 0x03, 0x0d, 0x68, 0x7b, 0x62, 0x23, 0x00, 0xe7, 0xf7, 0x0b, 0x80, 0xd6, 0x3e, 0x81, - 0xba, 0x08, 0xbc, 0x4f, 0xef, 0xe7, 0x2d, 0x36, 0x3c, 0xe8, 0x7f, 0x37, 0x3d, 0xea, 0x0c, 0x8c, - 0x51, 0x36, 0x38, 0xd3, 0x28, 0x46, 0xbd, 0xe1, 0x03, 0x9f, 0x18, 0x05, 0x87, 0x35, 0xb3, 0xa3, - 0x50, 0x17, 0x38, 0xb8, 0xdd, 0x31, 0x7a, 0x66, 0xcc, 0xc7, 0x81, 0x3b, 0xe6, 0x88, 0x47, 0xf6, - 0x5b, 0x84, 0x71, 0x19, 0x84, 0x01, 0x9f, 0x76, 0x80, 0x0b, 0x72, 0x12, 0x27, 0x5c, 0xab, 0x0d, - 0xdc, 0xb3, 0xea, 0xa0, 0xa1, 0x0c, 0x9a, 0x4b, 0x18, 0xcf, 0x0d, 0x84, 0xe0, 0xa8, 0xbf, 0xd1, - 0xc2, 0x12, 0x90, 0x6b, 0x62, 0xe2, 0x59, 0x06, 0xdc, 0xa3, 0x2e, 0x07, 0xb3, 0x49, 0x59, 0xdb, - 0x12, 0x5a, 0x24, 0x83, 0xe6, 0x66, 0x16, 0xde, 0xcb, 0xef, 0xf3, 0xb4, 0x79, 0xf9, 0x5d, 0x45, - 0x5d, 0x92, 0xcc, 0xcb, 0xb4, 0x01, 0xc6, 0x0c, 0x1b, 0xb1, 0x65, 0xff, 0x89, 0xe2, 0xe4, 0x90, - 0x27, 0x29, 0xe0, 0x14, 0x03, 0x4e, 0x3b, 0xac, 0x0e, 0x66, 0x17, 0x18, 0x77, 0xa8, 0xab, 0x45, - 0xfd, 0x03, 0x15, 0xa3, 0x4f, 0xb7, 0x10, 0x32, 0x66, 0xfb, 0xe8, 0x2d, 0x05, 0x92, 0xf7, 0x71, - 0xbc, 0x0d, 0xc2, 0x6a, 0x58, 0xc2, 0xd2, 0xa6, 0x32, 0x68, 0x2e, 0xb9, 0x90, 0x19, 0x3b, 0xda, - 0xaa, 0x7c, 0xd8, 0x32, 0x88, 0x6b, 0x20, 0xac, 0xea, 0x86, 0x07, 0xc6, 0x80, 0x41, 0x56, 0xf1, - 0x2c, 0xdf, 0xe0, 0x02, 0xda, 0xe6, 0x40, 0xe4, 0x90, 0x14, 0x39, 0x35, 0x26, 0x52, 0x91, 0x5e, - 0xbb, 0xa5, 0x66, 0x14, 0xfd, 0x5a, 0x5f, 0xf0, 0x26, 0x8e, 0x72, 0x0f, 0xea, 0x5a, 0x4c, 0xaa, - 0xcc, 0x1f, 0xe4, 0x96, 0x2a, 0x1e, 0xd4, 0x7d, 0xad, 0xe2, 0xec, 0xd7, 0x9b, 0xd3, 0x3e, 0x39, - 0x6f, 0xd7, 0x4d, 0xff, 0xd7, 0x90, 0x52, 0x64, 0x05, 0xc7, 0xb8, 0xb0, 0x44, 0x87, 0x6b, 0xdf, - 0x7d, 0x83, 0x32, 0x91, 0xb9, 0xe4, 0x42, 0x6e, 0x5f, 0xd9, 0x8a, 0x24, 0xa8, 0xe3, 0x16, 0x23, - 0x0f, 0x36, 0x91, 0x11, 0x68, 0x90, 0x65, 0xfc, 0x0a, 0x83, 0x26, 0x30, 0xe6, 0xb8, 0xb6, 0xa9, - 0x72, 0x9e, 0x6b, 0x71, 0x29, 0x7b, 0x72, 0xcf, 0x8b, 0x33, 0xa0, 0x29, 0x23, 0x4d, 0x0d, 0x68, - 0xca, 0xce, 0xc9, 0x2d, 0xac, 0x35, 0xa0, 0x05, 0x02, 0x1a, 0xa6, 0xc2, 0xa0, 0x31, 0x50, 0x4c, - 0x1c, 0x40, 0xf1, 0x58, 0xc0, 0x36, 0x02, 0x72, 0x5f, 0xf7, 0x23, 0x7c, 0xa2, 0xe1, 0x70, 0xab, - 0xd6, 0xda, 0x4b, 0x18, 0x1f, 0x40, 0xf8, 0x78, 0x9f, 0x3e, 0xa6, 0x7c, 0x31, 0xf1, 0xe8, 0x52, - 0x4c, 0xad, 0xaf, 0x46, 0xe3, 0x28, 0x15, 0xce, 0x7e, 0x8f, 0x70, 0x72, 0xc5, 0xe1, 0x07, 0xac, - 0x90, 0x37, 0xf0, 0x74, 0xcb, 0xaa, 0x41, 0xcb, 0x6c, 0x3a, 0x2d, 0x01, 0x2c, 0xa8, 0x94, 0xa4, - 0xb4, 0x2d, 0x49, 0x13, 0x79, 0x13, 0x1f, 0x66, 0xe0, 0x51, 0x26, 0xcc, 0xa6, 0x03, 0xad, 0x06, - 0xd7, 0x22, 0x99, 0xc8, 0x5c, 0xc2, 0x98, 0x56, 0xc6, 0x25, 0x69, 0x23, 0x67, 0xf0, 0x91, 0xc0, - 0x49, 0x3d, 0x4a, 0xdf, 0x37, 0x2a, 0x7d, 0x89, 0xc2, 0xd4, 0x13, 0x2a, 0x46, 0x76, 0x3b, 0x86, - 0x53, 0xea, 0x9c, 0xaa, 0x4e, 0x96, 0x05, 0xb4, 0xc9, 0x31, 0x1c, 0x13, 0xe0, 0x5a, 0xae, 0x90, - 0xd9, 0x96, 0x30, 0x82, 0xdd, 0x0b, 0x94, 0x79, 0x0a, 0x47, 0x3a, 0x4e, 0x43, 0x96, 0x76, 0xc2, - 0xf0, 0x97, 0x24, 0x83, 0x93, 0x0d, 0xe0, 0x75, 0xe6, 0xc8, 0x7e, 0xa2, 0x25, 0x55, 0xa4, 0x43, - 0x26, 0x92, 0xc6, 0xf1, 0xfe, 0x35, 0x6b, 0xd3, 0x19, 0x34, 0x17, 0x37, 0x06, 0x7b, 0xb2, 0x86, - 0x63, 0xf2, 0x52, 0x54, 0x48, 0xc9, 0x85, 0x0f, 0xf6, 0x4d, 0xd8, 0xf1, 0xe0, 0xf2, 0x2b, 0x92, - 0x5f, 0x72, 0x05, 0xdb, 0x30, 0x02, 0x31, 0xd2, 0xc0, 0xc9, 0xa1, 0xae, 0x1f, 0xa4, 0x42, 0x71, - 0x72, 0xed, 0xc5, 0xe7, 0x22, 0xea, 0x03, 0xc3, 0xb2, 0xe4, 0x02, 0xc6, 0xf4, 0x8e, 0x0b, 0xcc, - 0xf4, 0x1b, 0xaa, 0x96, 0x90, 0x85, 0x9c, 0x1e, 0xfb, 0xc8, 0x2d, 0x07, 0xee, 0xf4, 0xb3, 0x2d, - 0x21, 0xbd, 0x7d, 0xcb, 0x48, 0x33, 0x3a, 0xfc, 0x7f, 0x34, 0xa3, 0x99, 0x97, 0x6a, 0x46, 0x65, - 0x1c, 0xb7, 0x41, 0xc8, 0x5e, 0x12, 0xb4, 0xb5, 0x89, 0x1a, 0x92, 0x71, 0xc8, 0x56, 0x1b, 0x72, - 0x13, 0xe3, 0x20, 0x53, 0x39, 0x88, 0xa0, 0x5b, 0xbc, 0x48, 0x13, 0x4a, 0x28, 0x95, 0x0a, 0x88, - 0xf4, 0x05, 0x9c, 0x1c, 0x7a, 0x62, 0x3f, 0x03, 0x6f, 0xc3, 0x46, 0x90, 0xad, 0xfe, 0x92, 0x1c, - 0xc1, 0x53, 0x5d, 0xab, 0xd5, 0xe9, 0x27, 0xaa, 0xda, 0x5c, 0x0c, 0x9f, 0x47, 0xe9, 0x4b, 0x38, - 0x35, 0xfe, 0x82, 0x93, 0xf0, 0xaf, 0x46, 0xe3, 0x53, 0xa9, 0x58, 0xf6, 0x73, 0x84, 0xa7, 0x87, - 0x33, 0x83, 0x94, 0xf1, 0x94, 0x23, 0xa0, 0xcd, 0x35, 0xd5, 0x64, 0xcf, 0x4e, 0x9c, 0x57, 0x86, - 0xe2, 0x93, 0x33, 0x38, 0xa6, 0x66, 0x00, 0x2d, 0x2c, 0x95, 0xb4, 0x31, 0xa5, 0x92, 0x0f, 0xca, - 0x0b, 0x0e, 0xfc, 0xde, 0xfe, 0x09, 0xe1, 0xa3, 0x7b, 0xfe, 0x5f, 0x92, 0x34, 0x3e, 0x56, 0x2e, - 0x55, 0x4d, 0xa3, 0x72, 0xc3, 0x5c, 0x5a, 0x35, 0xae, 0x2d, 0x56, 0xcd, 0x2b, 0xa5, 0xa5, 0xc5, - 0xb5, 0x95, 0x6a, 0x2a, 0x44, 0x4e, 0xe0, 0xa3, 0x63, 0x58, 0xa5, 0xba, 0x58, 0x5d, 0xab, 0xa4, - 0x22, 0xe4, 0x38, 0x7e, 0x75, 0x0c, 0x32, 0x4a, 0x8b, 0x57, 0x52, 0x51, 0xf2, 0x16, 0xce, 0xec, - 0x02, 0x96, 0x4a, 0x86, 0xb1, 0x7c, 0xbd, 0x6c, 0xae, 0x16, 0xaf, 0x96, 0x2e, 0x57, 0x2b, 0xa9, - 0xa9, 0x3d, 0xbc, 0x8a, 0xc6, 0xea, 0x87, 0xa5, 0xeb, 0xca, 0xb9, 0x74, 0xfd, 0x72, 0xa9, 0x92, - 0x8a, 0x2d, 0xfc, 0x18, 0xc5, 0x91, 0xc5, 0x1b, 0xcb, 0xe4, 0x4f, 0x84, 0x23, 0x65, 0x10, 0xe4, - 0xf4, 0xc1, 0x66, 0x02, 0xd9, 0x69, 0xd3, 0xf3, 0x93, 0x0c, 0x10, 0xd9, 0x7b, 0x0f, 0x7f, 0x0e, - 0xa3, 0xde, 0x2f, 0xda, 0xb9, 0xe6, 0xbb, 0x77, 0xeb, 0xb9, 0x3a, 0x75, 0x39, 0x6d, 0x41, 0xae, - 0x66, 0x71, 0xc8, 0xb5, 0xa9, 0xeb, 0x08, 0xca, 0xe6, 0x25, 0xe2, 0x5b, 0xfc, 0x49, 0x2f, 0xe7, - 0xd0, 0x5c, 0xc7, 0x6a, 0xe7, 0x18, 0x58, 0x8d, 0xfb, 0xbf, 0xff, 0xfd, 0x65, 0xf8, 0x22, 0x39, - 0x1f, 0x8c, 0xa8, 0x85, 0x41, 0x2b, 0xe4, 0x85, 0x7b, 0x83, 0xf5, 0xe6, 0xee, 0x19, 0x2f, 0x80, - 0x37, 0xc9, 0x1f, 0x08, 0x47, 0xfd, 0xb7, 0x26, 0xf3, 0x07, 0x4c, 0x09, 0x15, 0x61, 0x6e, 0xa2, - 0x04, 0xca, 0x8a, 0x97, 0x0d, 0xf1, 0x1c, 0x39, 0x3b, 0x71, 0x88, 0xe9, 0xf5, 0x07, 0x5b, 0x28, - 0xfc, 0xdb, 0x16, 0x3a, 0xb5, 0xdf, 0x59, 0x55, 0x19, 0x3f, 0xde, 0x42, 0xa8, 0xb7, 0x85, 0xe6, - 0x27, 0x29, 0xfd, 0xfb, 0xbf, 0x6a, 0xe1, 0x75, 0x54, 0xfc, 0x0a, 0x3d, 0xba, 0x14, 0x36, 0x56, - 0xb6, 0x9f, 0xe8, 0xa1, 0xc7, 0x4f, 0xf4, 0xd0, 0xb3, 0x27, 0x3a, 0xfa, 0xac, 0xa7, 0xa3, 0x1f, - 0x7a, 0x3a, 0x7a, 0xd8, 0xd3, 0xd1, 0x76, 0x4f, 0x47, 0x7f, 0xf5, 0x74, 0xf4, 0xb4, 0xa7, 0x87, - 0x9e, 0xf5, 0x74, 0xf4, 0xc5, 0x8e, 0x1e, 0x7a, 0xb0, 0xa3, 0xa3, 0xed, 0x1d, 0x3d, 0xf4, 0x78, - 0x47, 0x0f, 0x7d, 0xbc, 0x66, 0x53, 0xef, 0xb6, 0x9d, 0xef, 0x52, 0xff, 0x7f, 0x96, 0x59, 0xf9, - 0x0e, 0x2f, 0xc8, 0x85, 0x3f, 0x96, 0xe6, 0x3c, 0x46, 0xbb, 0x4e, 0x03, 0x58, 0xae, 0x0f, 0x17, - 0xbc, 0x9a, 0x4d, 0x0b, 0x70, 0x57, 0x04, 0xc3, 0xf1, 0x7f, 0x0d, 0xf2, 0xb5, 0x98, 0x9c, 0x94, - 0xcf, 0xfd, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x3c, 0x2d, 0x2b, 0x12, 0xe1, 0x0c, 0x00, 0x00, + // 1288 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0x4f, 0x6c, 0x1b, 0x45, + 0x17, 0xf7, 0xd8, 0x8e, 0x6b, 0x8f, 0xd3, 0xc4, 0xdf, 0x7c, 0xfd, 0xb3, 0xf5, 0x57, 0xed, 0x67, + 0x0c, 0xaa, 0x22, 0x1a, 0xdb, 0x6d, 0x0a, 0xa8, 0xad, 0xa0, 0x52, 0xdc, 0x3a, 0x56, 0x4a, 0x9a, + 0xb4, 0x6b, 0xa7, 0x42, 0x5c, 0x56, 0xeb, 0xf5, 0xb3, 0xb3, 0xd4, 0xde, 0x59, 0x66, 0xc6, 0x6e, + 0x23, 0x14, 0x09, 0xf5, 0xc6, 0x09, 0x24, 0x10, 0x07, 0x84, 0x04, 0x17, 0x24, 0xee, 0x5c, 0x90, + 0x72, 0xe9, 0x8d, 0xaa, 0x07, 0x14, 0xc1, 0xa5, 0x47, 0xea, 0x70, 0xe8, 0xb1, 0x17, 0x0e, 0x48, + 0x1c, 0xd0, 0xce, 0xac, 0x5d, 0xdb, 0x09, 0x4a, 0x5c, 0xe0, 0xe4, 0x99, 0xf7, 0x7b, 0xbf, 0xdf, + 0xcc, 0x9b, 0x79, 0xf3, 0xf6, 0x19, 0xbf, 0xd6, 0x05, 0x9e, 0x77, 0x68, 0x81, 0xdb, 0x1b, 0xd0, + 0xb6, 0x0a, 0x96, 0xe7, 0x98, 0x4d, 0x46, 0x3b, 0x9e, 0x09, 0x2d, 0x68, 0x83, 0x2b, 0x0a, 0x5e, + 0xa7, 0xd6, 0x72, 0x6c, 0xd3, 0x66, 0x9d, 0xba, 0xe5, 0x39, 0x79, 0x8f, 0x51, 0x41, 0xc9, 0xff, + 0x15, 0x2b, 0xaf, 0x58, 0xf9, 0x3d, 0xac, 0x74, 0xae, 0xe9, 0x88, 0x8d, 0x4e, 0x2d, 0x6f, 0xd3, + 0x76, 0xa1, 0x49, 0x9b, 0xb4, 0x20, 0x79, 0xb5, 0x4e, 0x43, 0xce, 0xe4, 0x44, 0x8e, 0x94, 0x5e, + 0xfa, 0x74, 0x93, 0xd2, 0x66, 0x0b, 0xfc, 0xe5, 0x0b, 0x96, 0xeb, 0x52, 0x61, 0x09, 0x87, 0xba, + 0x3c, 0x40, 0xff, 0x17, 0xa0, 0x03, 0x0d, 0x68, 0x7b, 0x62, 0x33, 0x00, 0xe7, 0x0f, 0x0a, 0x80, + 0xd6, 0xde, 0x03, 0x5b, 0x04, 0xde, 0x67, 0x0f, 0xf2, 0x16, 0x9b, 0x1e, 0xf4, 0xd7, 0x4d, 0x8f, + 0x3a, 0x03, 0x63, 0x94, 0x0d, 0xf6, 0x34, 0x8a, 0x51, 0x6f, 0x78, 0xc3, 0xa7, 0x46, 0xc1, 0x61, + 0xcd, 0xec, 0x28, 0xd4, 0x05, 0x0e, 0x6e, 0x77, 0x8c, 0x9e, 0x19, 0xf3, 0x71, 0xe0, 0xae, 0x39, + 0xe2, 0x91, 0xfd, 0x0a, 0x61, 0x5c, 0x06, 0x61, 0xc0, 0xfb, 0x1d, 0xe0, 0x82, 0x9c, 0xc6, 0x09, + 0xd7, 0x6a, 0x03, 0xf7, 0x2c, 0x1b, 0x34, 0x94, 0x41, 0x73, 0x09, 0xe3, 0xb9, 0x81, 0x10, 0x1c, + 0xf5, 0x27, 0x5a, 0x58, 0x02, 0x72, 0x4c, 0x4c, 0x3c, 0xcb, 0x80, 0x7b, 0xd4, 0xe5, 0x60, 0x36, + 0x28, 0x6b, 0x5b, 0x42, 0x8b, 0x64, 0xd0, 0xdc, 0xcc, 0xc2, 0x1b, 0xf9, 0x03, 0xae, 0x36, 0x2f, + 0xd7, 0x55, 0xd4, 0x25, 0xc9, 0xbc, 0x4a, 0xeb, 0x60, 0xcc, 0xb0, 0x11, 0x5b, 0xf6, 0x8f, 0x28, + 0x4e, 0x0e, 0x79, 0x92, 0x02, 0x4e, 0x31, 0xe0, 0xb4, 0xc3, 0x6c, 0x30, 0xbb, 0xc0, 0xb8, 0x43, + 0x5d, 0x2d, 0xea, 0x6f, 0xa8, 0x18, 0x7d, 0xba, 0x8d, 0x90, 0x31, 0xdb, 0x47, 0x6f, 0x2b, 0x90, + 0xbc, 0x89, 0xe3, 0x6d, 0x10, 0x56, 0xdd, 0x12, 0x96, 0x36, 0x95, 0x41, 0x73, 0xc9, 0x85, 0xcc, + 0xd8, 0xd6, 0xd6, 0xe4, 0xc5, 0x96, 0x41, 0xdc, 0x00, 0x61, 0x55, 0x37, 0x3d, 0x30, 0x06, 0x0c, + 0xb2, 0x86, 0x67, 0xf9, 0x26, 0x17, 0xd0, 0x36, 0x07, 0x22, 0x47, 0xa4, 0xc8, 0x99, 0x31, 0x91, + 0x8a, 0xf4, 0xda, 0x2b, 0x35, 0xa3, 0xe8, 0x37, 0xfa, 0x82, 0xb7, 0x70, 0x94, 0x7b, 0x60, 0x6b, + 0x31, 0xa9, 0x32, 0x7f, 0x98, 0x53, 0xaa, 0x78, 0x60, 0xfb, 0x5a, 0xc5, 0xd9, 0x2f, 0xb6, 0xa6, + 0x7d, 0x72, 0xbe, 0x69, 0x9b, 0xfe, 0xaf, 0x21, 0xa5, 0xc8, 0x0a, 0x8e, 0x71, 0x61, 0x89, 0x0e, + 0xd7, 0xbe, 0xfe, 0x12, 0x65, 0x22, 0x73, 0xc9, 0x85, 0xdc, 0x81, 0xb2, 0x15, 0x49, 0x50, 0xdb, + 0x2d, 0x46, 0x1e, 0x6c, 0x21, 0x23, 0xd0, 0x20, 0xcb, 0xf8, 0x3f, 0x0c, 0x1a, 0xc0, 0x98, 0xe3, + 0x36, 0x4d, 0x95, 0xf3, 0x5c, 0x8b, 0x4b, 0xd9, 0xd3, 0xfb, 0x1e, 0x9c, 0x01, 0x0d, 0x19, 0x69, + 0x6a, 0x40, 0x53, 0x76, 0x4e, 0x6e, 0x63, 0xad, 0x0e, 0x2d, 0x10, 0x50, 0x37, 0x15, 0x06, 0xf5, + 0x81, 0x62, 0xe2, 0x10, 0x8a, 0x27, 0x02, 0xb6, 0x11, 0x90, 0xfb, 0xba, 0xef, 0xe0, 0x53, 0x75, + 0x87, 0x5b, 0xb5, 0xd6, 0x7e, 0xc2, 0xf8, 0x10, 0xc2, 0x27, 0xfb, 0xf4, 0x31, 0xe5, 0xcb, 0x89, + 0x47, 0x57, 0x62, 0x6a, 0x7c, 0x3d, 0x1a, 0x47, 0xa9, 0x70, 0xf6, 0x1b, 0x84, 0x93, 0x2b, 0x0e, + 0x3f, 0xe4, 0x0b, 0x79, 0x09, 0x4f, 0xb7, 0xac, 0x1a, 0xb4, 0xcc, 0x86, 0xd3, 0x12, 0xc0, 0x82, + 0x97, 0x92, 0x94, 0xb6, 0x25, 0x69, 0x22, 0x2f, 0xe3, 0xa3, 0x0c, 0x3c, 0xca, 0x84, 0xd9, 0x70, + 0xa0, 0x55, 0xe7, 0x5a, 0x24, 0x13, 0x99, 0x4b, 0x18, 0xd3, 0xca, 0xb8, 0x24, 0x6d, 0xe4, 0x1c, + 0x3e, 0x16, 0x38, 0xa9, 0x4b, 0xe9, 0xfb, 0x46, 0xa5, 0x2f, 0x51, 0x98, 0xba, 0x42, 0xc5, 0xc8, + 0xee, 0xc4, 0x70, 0x4a, 0xed, 0x53, 0xbd, 0x93, 0x65, 0x01, 0x6d, 0x72, 0x02, 0xc7, 0x04, 0xb8, + 0x96, 0x2b, 0x64, 0xb6, 0x25, 0x8c, 0x60, 0xf6, 0x02, 0xcf, 0x3c, 0x85, 0x23, 0x1d, 0xa7, 0x2e, + 0x9f, 0x76, 0xc2, 0xf0, 0x87, 0x24, 0x83, 0x93, 0x75, 0xe0, 0x36, 0x73, 0x64, 0x3d, 0xd1, 0x92, + 0x2a, 0xd2, 0x21, 0x13, 0x49, 0xe3, 0x78, 0xff, 0x98, 0xb5, 0xe9, 0x0c, 0x9a, 0x8b, 0x1b, 0x83, + 0x39, 0x59, 0xc7, 0x31, 0x79, 0x28, 0x2a, 0xa4, 0xe4, 0xc2, 0x5b, 0x07, 0x26, 0xec, 0x78, 0x70, + 0xf9, 0x15, 0xc9, 0x2f, 0xb9, 0x82, 0x6d, 0x1a, 0x81, 0x18, 0xa9, 0xe3, 0xe4, 0x50, 0xd5, 0x0f, + 0x52, 0xa1, 0x38, 0xb9, 0xf6, 0xe2, 0x73, 0x11, 0xb5, 0xc0, 0xb0, 0x2c, 0xb9, 0x84, 0x31, 0xbd, + 0xeb, 0x02, 0x33, 0xfd, 0x82, 0xaa, 0x25, 0xe4, 0x43, 0x4e, 0x8f, 0x2d, 0x72, 0xdb, 0x81, 0xbb, + 0xfd, 0x6c, 0x4b, 0x48, 0x6f, 0xdf, 0x32, 0x52, 0x8c, 0x8e, 0xfe, 0x13, 0xc5, 0x68, 0xe6, 0x6f, + 0x15, 0xa3, 0x32, 0x8e, 0x37, 0x41, 0xc8, 0x5a, 0x12, 0x94, 0xb5, 0x89, 0x0a, 0x92, 0x71, 0xa4, + 0xa9, 0x26, 0xe4, 0x16, 0xc6, 0x41, 0xa6, 0x72, 0x10, 0x41, 0xb5, 0x78, 0x91, 0x22, 0x94, 0x50, + 0x2a, 0x15, 0x10, 0xe9, 0x4b, 0x38, 0x39, 0x74, 0xc5, 0x7e, 0x06, 0xde, 0x81, 0xcd, 0x20, 0x5b, + 0xfd, 0x21, 0x39, 0x86, 0xa7, 0xba, 0x56, 0xab, 0xd3, 0x4f, 0x54, 0x35, 0xb9, 0x1c, 0xbe, 0x88, + 0xd2, 0x57, 0x70, 0x6a, 0xfc, 0x06, 0x27, 0xe1, 0x5f, 0x8f, 0xc6, 0xa7, 0x52, 0xb1, 0xec, 0x47, + 0x08, 0x4f, 0x0f, 0x67, 0x06, 0x29, 0xe3, 0x29, 0x47, 0x40, 0x9b, 0x6b, 0xaa, 0xc8, 0x9e, 0x9f, + 0x38, 0xaf, 0x0c, 0xc5, 0x27, 0xe7, 0x70, 0x4c, 0xf5, 0x00, 0x5a, 0x58, 0x2a, 0x69, 0x63, 0x4a, + 0x25, 0x1f, 0x94, 0x07, 0x1c, 0xf8, 0xbd, 0xfa, 0x1d, 0xc2, 0xc7, 0xf7, 0xfd, 0x5e, 0x92, 0x34, + 0x3e, 0x51, 0x2e, 0x55, 0x4d, 0xa3, 0x72, 0xd3, 0x5c, 0x5a, 0x33, 0x6e, 0x2c, 0x56, 0xcd, 0x6b, + 0xa5, 0xa5, 0xc5, 0xf5, 0x95, 0x6a, 0x2a, 0x44, 0x4e, 0xe1, 0xe3, 0x63, 0x58, 0xa5, 0xba, 0x58, + 0x5d, 0xaf, 0xa4, 0x22, 0xe4, 0x24, 0xfe, 0xef, 0x18, 0x64, 0x94, 0x16, 0xaf, 0xa5, 0xa2, 0xe4, + 0x15, 0x9c, 0xd9, 0x03, 0x2c, 0x95, 0x0c, 0x63, 0x79, 0xb5, 0x6c, 0xae, 0x15, 0xaf, 0x97, 0xae, + 0x56, 0x2b, 0xa9, 0xa9, 0x7d, 0xbc, 0x8a, 0xc6, 0xda, 0xdb, 0xa5, 0x55, 0xe5, 0x5c, 0x5a, 0xbd, + 0x5a, 0xaa, 0xa4, 0x62, 0x0b, 0xbb, 0x51, 0x1c, 0x59, 0xbc, 0xb9, 0x4c, 0x7e, 0x47, 0x38, 0x52, + 0x06, 0x41, 0xce, 0x1e, 0xae, 0x27, 0x90, 0x95, 0x36, 0x3d, 0x3f, 0x49, 0x03, 0x91, 0xfd, 0x1c, + 0x3d, 0xfc, 0x3e, 0x8c, 0x7a, 0x3f, 0x68, 0xab, 0x8d, 0xd7, 0xef, 0xd9, 0x39, 0x9b, 0xba, 0x9c, + 0xb6, 0x20, 0x57, 0xb3, 0x38, 0xe4, 0xda, 0xd4, 0x75, 0x04, 0x65, 0xf3, 0xe3, 0x88, 0x63, 0x8f, + 0x42, 0xbe, 0xb3, 0xdf, 0x05, 0xe6, 0x1c, 0x9a, 0xeb, 0x58, 0xed, 0x1c, 0x03, 0xab, 0x7e, 0xff, + 0xe7, 0x5f, 0x3f, 0x0d, 0x5f, 0x26, 0x17, 0x83, 0xf6, 0xb5, 0x30, 0x28, 0x93, 0xbc, 0xf0, 0xc1, + 0x60, 0xbc, 0xb5, 0xb7, 0xff, 0x0b, 0xe0, 0x2d, 0xf2, 0x1b, 0xc2, 0x51, 0x3f, 0x0f, 0xc8, 0xfc, + 0x21, 0xd3, 0x45, 0x45, 0x9f, 0x9b, 0x28, 0xb9, 0xb2, 0x1f, 0xff, 0x9b, 0xe1, 0x5f, 0x20, 0xe7, + 0x27, 0x0e, 0x3f, 0xbd, 0xf1, 0x60, 0x1b, 0x85, 0x7f, 0xda, 0x46, 0x67, 0x0e, 0x8a, 0x43, 0x3d, + 0xff, 0xc7, 0xdb, 0x08, 0xf5, 0xb6, 0xd1, 0xfc, 0x24, 0x25, 0xe3, 0xfe, 0x8f, 0x5a, 0x78, 0x03, + 0x15, 0x3f, 0x43, 0x8f, 0xae, 0x84, 0x8d, 0x95, 0x9d, 0x27, 0x7a, 0xe8, 0xf1, 0x13, 0x3d, 0xf4, + 0xec, 0x89, 0x8e, 0x3e, 0xec, 0xe9, 0xe8, 0xdb, 0x9e, 0x8e, 0x1e, 0xf6, 0x74, 0xb4, 0xd3, 0xd3, + 0xd1, 0x2f, 0x3d, 0x1d, 0x3d, 0xed, 0xe9, 0xa1, 0x67, 0x3d, 0x1d, 0x7d, 0xb2, 0xab, 0x87, 0x1e, + 0xec, 0xea, 0x68, 0x67, 0x57, 0x0f, 0x3d, 0xde, 0xd5, 0x43, 0xef, 0xae, 0x37, 0xa9, 0x77, 0xa7, + 0x99, 0xef, 0x52, 0xff, 0xfb, 0xcc, 0xac, 0x7c, 0x87, 0x17, 0xe4, 0xc0, 0x6f, 0x67, 0x73, 0x1e, + 0xa3, 0x5d, 0xa7, 0x0e, 0x2c, 0xd7, 0x87, 0x0b, 0x5e, 0xad, 0x49, 0x0b, 0x70, 0x4f, 0x04, 0x4d, + 0xf5, 0x5f, 0xfd, 0x01, 0xa8, 0xc5, 0x64, 0x87, 0x7d, 0xe1, 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x54, 0xe0, 0x80, 0x23, 0x19, 0x0d, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/api_group_element/public_crudapi.vesapi.go b/pbgo/extschema/schema/api_group_element/public_crudapi.vesapi.go index fdc5cd690..0fccc8fe3 100644 --- a/pbgo/extschema/schema/api_group_element/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/api_group_element/public_crudapi.vesapi.go @@ -1716,10 +1716,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_firewall/crudapi/api.vesapi.go b/pbgo/extschema/schema/app_firewall/crudapi/api.vesapi.go index 0906d43a2..301365cd7 100644 --- a/pbgo/extschema/schema/app_firewall/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/app_firewall/crudapi/api.vesapi.go @@ -3720,10 +3720,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_firewall/object.pb.go b/pbgo/extschema/schema/app_firewall/object.pb.go index 23d50b4ce..2d4590a8f 100644 --- a/pbgo/extschema/schema/app_firewall/object.pb.go +++ b/pbgo/extschema/schema/app_firewall/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_b88f3c6a850f2f84 = []byte{ - // 588 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0x13, 0x4f, - 0x18, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0x40, 0xf6, 0x77, 0xe9, 0x0f, 0x75, 0x42, 0xaa, 0x51, - 0x62, 0xd8, 0xd9, 0x04, 0x83, 0x7f, 0x88, 0xf1, 0x00, 0x26, 0x5c, 0x40, 0x4c, 0xf1, 0xe4, 0xa5, - 0x99, 0xdd, 0x3e, 0xbb, 0x8c, 0x6e, 0x3b, 0x93, 0x99, 0xd9, 0x2d, 0x3d, 0x98, 0xf8, 0x0a, 0x8c, - 0x47, 0xef, 0x5e, 0x8c, 0xaf, 0x42, 0x3c, 0x79, 0x24, 0x9c, 0x38, 0xca, 0xf6, 0xe2, 0xc1, 0x03, - 0xbe, 0x03, 0xc3, 0x2c, 0x4b, 0xda, 0xa6, 0x12, 0xe5, 0x36, 0x93, 0xe7, 0xf3, 0xfd, 0xee, 0xf3, - 0x3c, 0xf3, 0x3c, 0x8b, 0xef, 0xa4, 0xa0, 0x29, 0x17, 0x9e, 0x0e, 0xf6, 0xa0, 0xcd, 0x3c, 0x26, - 0x65, 0x33, 0xe4, 0x0a, 0xba, 0x2c, 0x8e, 0x3d, 0xe1, 0xbf, 0x82, 0xc0, 0x50, 0xa9, 0x84, 0x11, - 0xce, 0x42, 0x0e, 0xd2, 0x1c, 0xa4, 0x83, 0xe0, 0x82, 0x1b, 0x71, 0xb3, 0x97, 0xf8, 0x34, 0x10, - 0x6d, 0x2f, 0x12, 0x91, 0xf0, 0xac, 0xc4, 0x4f, 0x42, 0x7b, 0xb3, 0x17, 0x7b, 0xca, 0xad, 0x16, - 0x6e, 0x5f, 0xf2, 0x4d, 0xd3, 0x93, 0xa0, 0xcf, 0xb9, 0x6b, 0xc3, 0x9c, 0x90, 0x86, 0x8b, 0x4e, - 0x11, 0xfc, 0x7f, 0x38, 0x38, 0xa8, 0xab, 0x0f, 0x87, 0x52, 0xd0, 0xd0, 0x49, 0x87, 0xe5, 0xf5, - 0x5f, 0x15, 0x5c, 0xdd, 0xb1, 0xf5, 0x39, 0x8f, 0xf0, 0x54, 0x1b, 0x0c, 0x6b, 0x31, 0xc3, 0x6a, - 0x68, 0x11, 0x2d, 0x4d, 0xaf, 0xdc, 0xa0, 0xc3, 0xc5, 0xe6, 0xe0, 0x36, 0x18, 0xf6, 0xa2, 0x27, - 0xa1, 0x71, 0x81, 0x3b, 0x5b, 0x78, 0x4e, 0xf7, 0xb4, 0x81, 0x76, 0xf3, 0xc2, 0xa1, 0x6c, 0x1d, - 0x6e, 0x8e, 0x38, 0xec, 0x5a, 0x6a, 0xc4, 0x67, 0x36, 0xd7, 0x6e, 0x17, 0x6e, 0x0f, 0xf1, 0x84, - 0x96, 0x10, 0xd4, 0x2a, 0xd6, 0xe2, 0x16, 0xfd, 0x73, 0xc7, 0xe9, 0xae, 0x84, 0xc0, 0x7a, 0x58, - 0xc5, 0xda, 0xc7, 0xf2, 0xd7, 0x83, 0x5a, 0x79, 0x1e, 0x1d, 0x1d, 0xd4, 0x3e, 0x94, 0xf1, 0x2a, - 0xae, 0x6c, 0x82, 0x71, 0x68, 0xb8, 0xba, 0x1f, 0xb8, 0x5d, 0xc6, 0xa4, 0xeb, 0x33, 0xcd, 0x03, - 0xb7, 0x2d, 0x3a, 0xdc, 0x08, 0xb5, 0xbc, 0x98, 0x82, 0x76, 0xb9, 0x70, 0xa5, 0x12, 0xfb, 0x3d, - 0xb7, 0xcb, 0x42, 0x57, 0x01, 0x6b, 0xe1, 0x07, 0x78, 0xb2, 0x01, 0x32, 0x66, 0x01, 0x38, 0xcb, - 0xa3, 0xd2, 0x44, 0xc3, 0x38, 0x5d, 0x57, 0x71, 0x03, 0xf8, 0x3e, 0xae, 0x6e, 0x28, 0x60, 0xe6, - 0x0a, 0xba, 0xa7, 0x10, 0xc3, 0x15, 0x74, 0x13, 0x5b, 0x5c, 0xff, 0x73, 0x81, 0xf5, 0x1d, 0x3c, - 0x55, 0xf4, 0xcd, 0xd9, 0xc0, 0x93, 0x51, 0xd0, 0xb4, 0xed, 0xce, 0xdf, 0xfc, 0xee, 0x65, 0xed, - 0xde, 0x8c, 0x85, 0xcf, 0xe2, 0x8b, 0xa6, 0x57, 0xa3, 0xe0, 0xec, 0x5c, 0xff, 0x89, 0xf0, 0xcc, - 0xae, 0x61, 0x26, 0xd1, 0x7f, 0x3d, 0x4a, 0x39, 0x3e, 0x66, 0x94, 0x9e, 0xe1, 0xe9, 0x7c, 0xdf, - 0x9a, 0x0a, 0x42, 0x5d, 0x2b, 0x2f, 0x56, 0x96, 0xa6, 0x57, 0xae, 0x8f, 0x1d, 0xc4, 0x06, 0x84, - 0x67, 0xe2, 0xf5, 0xb9, 0xcf, 0x6f, 0x66, 0x06, 0xd3, 0x6c, 0x60, 0x51, 0xc4, 0xb5, 0xf3, 0x18, - 0xe3, 0x40, 0x74, 0x5a, 0xdc, 0x0e, 0x7d, 0xad, 0x32, 0xd6, 0x6e, 0xa3, 0x00, 0x6c, 0x2e, 0x03, - 0xfc, 0xda, 0x7f, 0x47, 0x4f, 0xe6, 0xf1, 0x2c, 0x9e, 0x29, 0xd2, 0xa3, 0x09, 0x6f, 0xad, 0xbf, - 0x43, 0x87, 0x27, 0xa4, 0x74, 0x7c, 0x42, 0x4a, 0xa7, 0x27, 0x04, 0xbd, 0xcd, 0x08, 0xfa, 0x94, - 0x11, 0xf4, 0x2d, 0x23, 0xe8, 0x30, 0x23, 0xe8, 0x38, 0x23, 0xe8, 0x7b, 0x46, 0xd0, 0x8f, 0x8c, - 0x94, 0x4e, 0x33, 0x82, 0xde, 0xf7, 0x49, 0xe9, 0x4b, 0x9f, 0xa0, 0xc3, 0x3e, 0x29, 0x1d, 0xf7, - 0x49, 0xe9, 0xe5, 0xf3, 0x48, 0xc8, 0xd7, 0x11, 0x4d, 0x45, 0x6c, 0x40, 0x29, 0x46, 0x13, 0xed, - 0xd9, 0x43, 0x28, 0x54, 0xfb, 0xec, 0xa9, 0x52, 0xde, 0x02, 0xe5, 0x16, 0x61, 0x4f, 0xfa, 0x91, - 0xf0, 0x60, 0xdf, 0x9c, 0x6f, 0xf1, 0x98, 0x9f, 0x85, 0x5f, 0xb5, 0xbb, 0x7c, 0xef, 0x77, 0x00, - 0x00, 0x00, 0xff, 0xff, 0xc3, 0x58, 0x2f, 0x1f, 0xc5, 0x04, 0x00, 0x00, + // 604 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x41, 0x4f, 0xd4, 0x4e, + 0x18, 0xc6, 0x77, 0x58, 0xb2, 0x90, 0x81, 0x00, 0xe9, 0xff, 0xb2, 0x7f, 0xd4, 0x09, 0x59, 0x8d, + 0x12, 0x63, 0xdb, 0x04, 0x63, 0xa2, 0xc4, 0x78, 0x00, 0x0d, 0x89, 0x01, 0xc1, 0xc5, 0x93, 0x97, + 0xcd, 0xb4, 0x7d, 0x5b, 0x46, 0xdb, 0x9d, 0xc9, 0xcc, 0xb4, 0xcb, 0x1e, 0x4c, 0xfc, 0x04, 0xc6, + 0xbb, 0x77, 0x63, 0xfc, 0x14, 0xe2, 0xc9, 0x23, 0xe1, 0xc4, 0x51, 0xba, 0x17, 0x0f, 0x1e, 0x38, + 0xf8, 0x01, 0x0c, 0x53, 0x0a, 0xbb, 0xb8, 0x12, 0x0f, 0x7b, 0x9b, 0xe6, 0x79, 0x9e, 0x5f, 0x67, + 0xe6, 0x9d, 0xf7, 0xc5, 0xb7, 0x32, 0x50, 0x0e, 0xe3, 0xae, 0xf2, 0x77, 0x20, 0xa1, 0x2e, 0x15, + 0xa2, 0x15, 0x32, 0x09, 0x1d, 0x1a, 0xc7, 0x2e, 0xf7, 0x5e, 0x81, 0xaf, 0x1d, 0x21, 0xb9, 0xe6, + 0xd6, 0x7c, 0x61, 0x74, 0x0a, 0xa3, 0xd3, 0x6f, 0x9c, 0xb7, 0x23, 0xa6, 0x77, 0x52, 0xcf, 0xf1, + 0x79, 0xe2, 0x46, 0x3c, 0xe2, 0xae, 0x89, 0x78, 0x69, 0x68, 0xbe, 0xcc, 0x87, 0x59, 0x15, 0xa8, + 0xf9, 0x9b, 0x97, 0xfc, 0x53, 0x77, 0x05, 0xa8, 0x53, 0xdf, 0x95, 0x41, 0x1f, 0x17, 0x9a, 0xf1, + 0x76, 0x29, 0xfe, 0x3f, 0x28, 0xf6, 0xe7, 0x1a, 0x83, 0x52, 0x06, 0x0a, 0xda, 0xd9, 0x60, 0xbc, + 0xf1, 0x6b, 0x1c, 0xd7, 0x36, 0xcd, 0xf9, 0xac, 0x07, 0x78, 0x32, 0x01, 0x4d, 0x03, 0xaa, 0x69, + 0x1d, 0x2d, 0xa0, 0xc5, 0xa9, 0xa5, 0x6b, 0xce, 0xe0, 0x61, 0x0b, 0xe3, 0x06, 0x68, 0xfa, 0xa2, + 0x2b, 0xa0, 0x79, 0x66, 0xb7, 0xd6, 0xf1, 0xac, 0xea, 0x2a, 0x0d, 0x49, 0xeb, 0x8c, 0x30, 0x66, + 0x08, 0xd7, 0x2f, 0x10, 0xb6, 0x8d, 0xeb, 0x02, 0x67, 0xa6, 0xc8, 0x6e, 0x94, 0xb4, 0xfb, 0x78, + 0x5c, 0x09, 0xf0, 0xeb, 0x55, 0x83, 0xb8, 0xe1, 0xfc, 0xfd, 0xc6, 0x9d, 0x6d, 0x01, 0xbe, 0x61, + 0x98, 0xc4, 0xf2, 0xc7, 0xea, 0xd7, 0xbd, 0xfa, 0xd8, 0x1c, 0x3a, 0xd8, 0xab, 0x7f, 0xa8, 0xe2, + 0xe7, 0xb8, 0xba, 0x06, 0xda, 0x7a, 0x1a, 0xde, 0xdb, 0xf5, 0xed, 0x0e, 0xa5, 0xc2, 0xf6, 0xa8, + 0x62, 0xbe, 0x9d, 0xf0, 0x36, 0xd3, 0x5c, 0xde, 0x59, 0x38, 0x17, 0x94, 0xa6, 0xed, 0x80, 0xca, + 0xe0, 0x5c, 0xcb, 0x40, 0xd9, 0x8c, 0xdb, 0x42, 0xf2, 0xdd, 0xae, 0xdd, 0xa1, 0xa1, 0x2d, 0x81, + 0x06, 0x78, 0x0b, 0x4f, 0x34, 0x41, 0xc4, 0xd4, 0x07, 0xeb, 0xc9, 0x45, 0x6c, 0xaa, 0x60, 0x38, + 0xb3, 0x10, 0xfe, 0x00, 0x76, 0x24, 0xd3, 0x80, 0x37, 0x71, 0x6d, 0x55, 0x02, 0xd5, 0xa3, 0x04, + 0x3e, 0x86, 0x18, 0x46, 0x07, 0x6c, 0xe2, 0xf1, 0x75, 0xa6, 0x46, 0x7a, 0x8f, 0x8d, 0x4d, 0x3c, + 0x59, 0x96, 0xce, 0x5a, 0xc5, 0x13, 0x91, 0xdf, 0x32, 0x15, 0x2f, 0x9e, 0xdd, 0xed, 0xcb, 0x2a, + 0xbe, 0x16, 0x73, 0x8f, 0xc6, 0x67, 0x75, 0xaf, 0x45, 0xfe, 0xc9, 0xba, 0xf1, 0x13, 0xe1, 0xe9, + 0x6d, 0x4d, 0x75, 0xaa, 0xfe, 0xf9, 0x35, 0x17, 0xf6, 0x21, 0xaf, 0xf9, 0x19, 0x9e, 0x2a, 0x5a, + 0xbe, 0x25, 0x21, 0x54, 0xf5, 0xb1, 0x85, 0xea, 0xe2, 0xd4, 0xd2, 0xd5, 0xa1, 0xbd, 0xd0, 0x84, + 0xf0, 0x24, 0xbc, 0x32, 0xfb, 0xf9, 0xcd, 0x74, 0xff, 0x36, 0x9b, 0x98, 0x97, 0xba, 0xb2, 0x1e, + 0x62, 0xec, 0xf3, 0x76, 0xc0, 0x4c, 0xdf, 0xd5, 0xab, 0x43, 0x71, 0xab, 0xa5, 0xc1, 0xec, 0xa5, + 0xcf, 0xbf, 0xfc, 0xdf, 0xc1, 0xa3, 0x39, 0x3c, 0x83, 0xa7, 0xcb, 0xed, 0x39, 0x29, 0x0b, 0x56, + 0xde, 0xa1, 0xfd, 0x23, 0x52, 0x39, 0x3c, 0x22, 0x95, 0xe3, 0x23, 0x82, 0xde, 0xe6, 0x04, 0x7d, + 0xca, 0x09, 0xfa, 0x96, 0x13, 0xb4, 0x9f, 0x13, 0x74, 0x98, 0x13, 0xf4, 0x3d, 0x27, 0xe8, 0x47, + 0x4e, 0x2a, 0xc7, 0x39, 0x41, 0xef, 0x7b, 0xa4, 0xf2, 0xa5, 0x47, 0xd0, 0x7e, 0x8f, 0x54, 0x0e, + 0x7b, 0xa4, 0xf2, 0x72, 0x2b, 0xe2, 0xe2, 0x75, 0xe4, 0x64, 0x3c, 0xd6, 0x20, 0x25, 0x75, 0x52, + 0xe5, 0x9a, 0x45, 0xc8, 0x65, 0x72, 0x52, 0xaa, 0x8c, 0x05, 0x20, 0xed, 0x52, 0x76, 0x85, 0x17, + 0x71, 0x17, 0x76, 0xf5, 0xe9, 0x20, 0x19, 0x32, 0xaf, 0xbc, 0x9a, 0x19, 0x27, 0x77, 0x7f, 0x07, + 0x00, 0x00, 0xff, 0xff, 0x3e, 0xab, 0x50, 0x08, 0x48, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/app_firewall/public_crudapi.pb.go b/pbgo/extschema/schema/app_firewall/public_crudapi.pb.go index 87147b9c1..4c2f8dd22 100644 --- a/pbgo/extschema/schema/app_firewall/public_crudapi.pb.go +++ b/pbgo/extschema/schema/app_firewall/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_d78d5a6ae27ceb25 = []byte{ - // 1602 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xce, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x63, 0x3b, 0xb4, 0xa9, 0x63, 0xca, 0xca, 0x75, 0xab, - 0x26, 0xa4, 0xf5, 0xba, 0xa4, 0xaa, 0xd4, 0x46, 0x50, 0xb0, 0x93, 0x4d, 0x94, 0x90, 0x34, 0xd1, - 0xd8, 0xad, 0x50, 0x0f, 0xac, 0xd6, 0xeb, 0xb1, 0xbb, 0xd4, 0xf6, 0x2e, 0xbb, 0x63, 0xa7, 0x16, - 0x8a, 0x40, 0x15, 0x57, 0x24, 0x04, 0xb7, 0x8a, 0x03, 0x17, 0x24, 0x0e, 0xfc, 0x01, 0x88, 0x70, - 0xe8, 0x01, 0xa9, 0x55, 0x0f, 0x28, 0x82, 0x4b, 0x8f, 0xad, 0xc3, 0xa1, 0x17, 0xa4, 0x8a, 0x13, - 0x47, 0xb4, 0x33, 0xbb, 0xae, 0xed, 0xb8, 0x8e, 0x13, 0x72, 0xf2, 0xee, 0xbc, 0xf7, 0x7d, 0xfb, - 0xbe, 0x99, 0xf7, 0xde, 0x3e, 0x2f, 0x4c, 0xd5, 0x89, 0x2d, 0xe9, 0x46, 0xca, 0xd6, 0xee, 0x90, - 0x8a, 0x9a, 0x52, 0x4d, 0x53, 0x29, 0xea, 0x16, 0xd9, 0x54, 0xcb, 0xe5, 0x94, 0x59, 0xcb, 0x97, - 0x75, 0x4d, 0xd1, 0xac, 0x5a, 0x41, 0x35, 0x75, 0xc9, 0xb4, 0x0c, 0x6a, 0xa0, 0x18, 0x07, 0x48, - 0x1c, 0x20, 0xb5, 0x03, 0x62, 0xc9, 0x92, 0x4e, 0xef, 0xd4, 0xf2, 0x92, 0x66, 0x54, 0x52, 0x25, - 0xa3, 0x64, 0xa4, 0x18, 0x24, 0x5f, 0x2b, 0xb2, 0x3b, 0x76, 0xc3, 0xae, 0x38, 0x55, 0xec, 0x74, - 0xc9, 0x30, 0x4a, 0x65, 0x92, 0x52, 0x4d, 0x3d, 0xa5, 0x56, 0xab, 0x06, 0x55, 0xa9, 0x6e, 0x54, - 0x6d, 0xd7, 0xfa, 0xa6, 0x6b, 0x6d, 0x71, 0x90, 0x8a, 0x49, 0x1b, 0xae, 0x71, 0xaa, 0x4f, 0xd8, - 0x46, 0xfe, 0x13, 0xa2, 0x51, 0xd7, 0xf1, 0x7c, 0x1f, 0x47, 0xda, 0x30, 0x89, 0xf7, 0xb4, 0x58, - 0xa7, 0x1f, 0xb1, 0x2c, 0xc3, 0x6a, 0x45, 0xd2, 0x69, 0x33, 0xcc, 0xf6, 0x30, 0x27, 0x3b, 0x8d, - 0xed, 0x9c, 0x89, 0x4e, 0x53, 0x9d, 0xd8, 0xa4, 0x5a, 0xef, 0x82, 0xc7, 0xbb, 0x7c, 0x74, 0xb2, - 0xa9, 0x74, 0x78, 0x24, 0x7e, 0x02, 0x70, 0x74, 0xde, 0x22, 0x2a, 0x25, 0x98, 0x7c, 0x5a, 0x23, - 0x36, 0x45, 0xef, 0xc3, 0x50, 0x85, 0x50, 0xb5, 0xa0, 0x52, 0x35, 0x0a, 0xe2, 0x60, 0x3a, 0x32, - 0x7b, 0x56, 0xea, 0x3c, 0x95, 0x75, 0xb6, 0x05, 0x1c, 0xb5, 0x46, 0xa8, 0x9a, 0x6b, 0x98, 0x04, - 0xb7, 0x40, 0x68, 0x1d, 0x06, 0x6c, 0x93, 0x68, 0x51, 0x1f, 0x03, 0xcf, 0x48, 0xaf, 0x3f, 0x52, - 0x89, 0x73, 0x64, 0x4d, 0xa2, 0x39, 0x1c, 0x99, 0xf1, 0x07, 0x5b, 0x23, 0x0e, 0x54, 0x2a, 0x69, - 0x8a, 0xf3, 0x8b, 0x19, 0xd1, 0x5c, 0xf8, 0xc9, 0xf5, 0x20, 0x7f, 0x66, 0xe2, 0x5f, 0x00, 0xc7, - 0xbc, 0x70, 0x6d, 0xd3, 0xa8, 0xda, 0x04, 0xbd, 0xbb, 0x27, 0xde, 0x78, 0xcf, 0x78, 0x97, 0x08, - 0xed, 0x19, 0xec, 0xb8, 0xdd, 0xb0, 0x29, 0xa9, 0x28, 0x2d, 0x12, 0x3f, 0x23, 0x39, 0xdf, 0x45, - 0x92, 0x65, 0x5e, 0x7b, 0xa9, 0xc6, 0x38, 0x7c, 0xcd, 0x23, 0x5c, 0xed, 0x50, 0x3f, 0xd5, 0x4f, - 0xfd, 0x12, 0xa1, 0x07, 0x90, 0xfe, 0x0c, 0xc0, 0x31, 0x4c, 0xcc, 0xb2, 0xaa, 0xb5, 0x8e, 0xea, - 0x83, 0x3d, 0xd2, 0xcf, 0xf5, 0x94, 0xee, 0xc2, 0x7a, 0xc8, 0xdf, 0xe8, 0x88, 0xf6, 0x42, 0xbf, - 0x68, 0x5d, 0x92, 0x7d, 0x22, 0x46, 0x29, 0x28, 0x58, 0xc4, 0x36, 0x6a, 0x96, 0x46, 0x94, 0x3a, - 0xb1, 0x6c, 0xdd, 0xa8, 0xb2, 0x1d, 0x0d, 0x67, 0x02, 0x2f, 0xb6, 0x01, 0xc0, 0xe3, 0x9e, 0xf5, - 0x16, 0x37, 0xb6, 0x4b, 0x3c, 0x0e, 0xc7, 0x5b, 0x0a, 0xf9, 0xe9, 0x26, 0x1e, 0x00, 0x08, 0x97, - 0x08, 0xf5, 0x14, 0x9f, 0x86, 0xe1, 0xaa, 0x5a, 0x21, 0xb6, 0xa9, 0x6a, 0x84, 0x49, 0x0e, 0xe3, - 0x57, 0x0b, 0x08, 0xc1, 0x80, 0x73, 0xc3, 0xd4, 0x84, 0x31, 0xbb, 0x46, 0xb7, 0xa1, 0xf3, 0x44, - 0x46, 0xa6, 0x14, 0x0d, 0xab, 0xa2, 0x52, 0x16, 0xce, 0xd8, 0xec, 0x3b, 0xfb, 0x1c, 0x8d, 0x17, - 0xc2, 0x22, 0x03, 0xcd, 0x1b, 0x05, 0x82, 0xc7, 0xac, 0x8e, 0xb5, 0xc4, 0x57, 0x41, 0x18, 0x69, - 0xf3, 0x44, 0x2b, 0x30, 0xa2, 0xb1, 0xe4, 0x64, 0x4f, 0x72, 0x37, 0xf5, 0xed, 0xfd, 0x0b, 0xc0, - 0x55, 0x87, 0x21, 0x47, 0x3b, 0xec, 0x68, 0x0d, 0x8e, 0x58, 0x7c, 0x2f, 0x38, 0x99, 0x7f, 0xff, - 0x6a, 0xea, 0xcc, 0x0e, 0x1c, 0x71, 0xf1, 0x8c, 0xae, 0xd7, 0xb1, 0x04, 0xfa, 0x1c, 0x4b, 0x47, - 0x59, 0x0d, 0x1f, 0x45, 0x59, 0x1d, 0x3b, 0x92, 0xb2, 0x0a, 0x1e, 0x45, 0x59, 0xa1, 0x25, 0x18, - 0xb4, 0xa9, 0x4a, 0x6b, 0x76, 0xf4, 0xfb, 0xef, 0x40, 0xdc, 0x3f, 0x1d, 0x99, 0x9d, 0xee, 0xc7, - 0x98, 0x65, 0xbe, 0x3c, 0xc8, 0x8c, 0xff, 0xe1, 0x16, 0xc0, 0x2e, 0x1c, 0x2d, 0xc3, 0xe3, 0x16, - 0x29, 0x12, 0xcb, 0xd2, 0xab, 0x25, 0x85, 0xbf, 0x1a, 0xec, 0x68, 0x88, 0x31, 0x9e, 0x7e, 0x4d, - 0x29, 0x16, 0x99, 0x3e, 0xa1, 0x05, 0xe3, 0xeb, 0x36, 0xba, 0x05, 0xa3, 0x05, 0x52, 0x26, 0x94, - 0x14, 0x14, 0x6e, 0x23, 0x85, 0x16, 0x63, 0x78, 0x00, 0xc6, 0x09, 0x17, 0x8d, 0x5d, 0xb0, 0xc7, - 0xfb, 0x11, 0x9c, 0x2c, 0xe8, 0xb6, 0x9a, 0x2f, 0xf7, 0x22, 0x86, 0x03, 0x10, 0x9f, 0xf2, 0xe0, - 0x5d, 0xcc, 0x6d, 0x95, 0xbb, 0x12, 0x08, 0x01, 0xc1, 0x97, 0xf8, 0x01, 0xc0, 0xc8, 0xaa, 0x6e, - 0x0f, 0x58, 0xad, 0x67, 0xe0, 0x48, 0x59, 0xcd, 0x93, 0xb2, 0x52, 0xd4, 0xcb, 0x94, 0x58, 0x6e, - 0xd5, 0x46, 0xd8, 0xda, 0x22, 0x5b, 0x42, 0x67, 0xe1, 0xa8, 0x45, 0x4c, 0xc3, 0xa2, 0x4a, 0x51, - 0x27, 0xe5, 0x82, 0x1d, 0xf5, 0xc7, 0xfd, 0xd3, 0x61, 0x3c, 0xc2, 0x17, 0x17, 0xd9, 0x1a, 0xba, - 0x04, 0x4f, 0xb8, 0x4e, 0xfc, 0x50, 0x3c, 0xdf, 0x00, 0xf3, 0x45, 0xdc, 0xc6, 0x8f, 0x90, 0x23, - 0x12, 0xbf, 0x06, 0xa1, 0xc0, 0xe3, 0xe4, 0x85, 0xbb, 0x4c, 0x49, 0x05, 0x4d, 0xc0, 0x20, 0x25, - 0x55, 0xb5, 0x4a, 0x59, 0x8e, 0x85, 0xb1, 0x7b, 0x77, 0x88, 0x96, 0x23, 0x40, 0x7f, 0x4d, 0x2f, - 0xf0, 0xae, 0x87, 0x9d, 0x4b, 0x14, 0x87, 0x91, 0x02, 0xb1, 0x35, 0x4b, 0x67, 0xef, 0xde, 0x68, - 0x84, 0x2b, 0x6d, 0x5b, 0x42, 0x31, 0x18, 0xf2, 0xb6, 0x39, 0x3a, 0x12, 0x07, 0xd3, 0x21, 0xdc, - 0xba, 0x47, 0x1b, 0x30, 0xc8, 0x36, 0x85, 0x4b, 0x8a, 0xcc, 0x5e, 0xed, 0x97, 0xab, 0xdd, 0xba, - 0xa4, 0x55, 0x06, 0x95, 0xab, 0xd4, 0x6a, 0x60, 0x97, 0x07, 0x29, 0x30, 0xd2, 0x36, 0x12, 0xb9, - 0x59, 0xf0, 0xde, 0x81, 0x68, 0xd3, 0xaf, 0xf0, 0x9c, 0xbb, 0x9d, 0x11, 0x5d, 0x83, 0xd0, 0xd8, - 0xac, 0x12, 0x4b, 0x71, 0x46, 0x8e, 0x68, 0x98, 0x15, 0x6d, 0xac, 0x8b, 0xff, 0x96, 0x4e, 0x36, - 0xbd, 0x1c, 0x0b, 0x33, 0x6f, 0x67, 0xa5, 0xa3, 0xf1, 0x8c, 0x1e, 0x45, 0xe3, 0x19, 0xfb, 0x5f, - 0x8d, 0x27, 0x03, 0x43, 0x25, 0x42, 0x59, 0xf3, 0x70, 0x5b, 0xd8, 0xa0, 0xcd, 0x07, 0x1f, 0x2b, - 0xf1, 0x1b, 0xb4, 0x0a, 0xa1, 0x9b, 0x9a, 0x36, 0xa1, 0x6e, 0x7b, 0x38, 0x60, 0xc3, 0x09, 0x73, - 0x82, 0x2c, 0xa1, 0xb1, 0x6b, 0x30, 0xd2, 0x76, 0xa6, 0x4e, 0xb6, 0xdd, 0x25, 0x0d, 0x37, 0x33, - 0x9d, 0x4b, 0x74, 0x02, 0x0e, 0xd7, 0xd5, 0x72, 0xcd, 0x4b, 0x4a, 0x7e, 0x33, 0xe7, 0xbb, 0x0a, - 0x62, 0xd7, 0xa1, 0xd0, 0x7d, 0x6e, 0x07, 0xc1, 0xaf, 0x04, 0x42, 0xc3, 0x42, 0x30, 0xf1, 0x25, - 0x80, 0x23, 0xed, 0xf9, 0x80, 0x32, 0x70, 0x58, 0xa7, 0xa4, 0x62, 0x47, 0x79, 0x2f, 0xbd, 0x78, - 0x90, 0x44, 0xc2, 0x1c, 0x8a, 0x2e, 0xc1, 0x20, 0x1f, 0x8b, 0xa3, 0x3e, 0x46, 0x12, 0xed, 0x22, - 0x91, 0x1d, 0x23, 0xdb, 0x56, 0xd7, 0x2f, 0x71, 0x17, 0x8e, 0x2e, 0xb0, 0x96, 0x77, 0xf8, 0xe1, - 0x60, 0x1a, 0x0a, 0x45, 0x55, 0x2f, 0x2b, 0x7a, 0xb1, 0xd5, 0x1a, 0x59, 0xd9, 0x86, 0xf0, 0x98, - 0xb3, 0xbe, 0x5c, 0xf4, 0x5a, 0xde, 0xcc, 0x3f, 0x00, 0x9e, 0xec, 0x39, 0x14, 0xa0, 0x18, 0x9c, - 0x58, 0x92, 0x73, 0x0a, 0xce, 0x6e, 0x28, 0x8b, 0xeb, 0x78, 0x2d, 0x9d, 0x53, 0x16, 0xe4, 0xc5, - 0xf4, 0xcd, 0xd5, 0x9c, 0x30, 0x84, 0xde, 0x82, 0x93, 0x5d, 0xb6, 0xc5, 0x75, 0xac, 0xcc, 0x63, - 0x39, 0x9d, 0x93, 0x05, 0x80, 0x44, 0x18, 0xeb, 0x61, 0xc6, 0xf2, 0xc6, 0x6a, 0x7a, 0x5e, 0x16, - 0x7c, 0x68, 0x12, 0x9e, 0xec, 0xb2, 0x67, 0x73, 0xe9, 0xdc, 0xcd, 0xac, 0xe0, 0x47, 0xa7, 0xe0, - 0x1b, 0x5d, 0x26, 0x2c, 0xa7, 0x17, 0x84, 0x00, 0x3a, 0x07, 0xe3, 0x7b, 0x0c, 0x8b, 0x32, 0xc6, - 0xcb, 0x37, 0x96, 0x94, 0xf5, 0xcc, 0x8a, 0x3c, 0x9f, 0xcb, 0x0a, 0xc3, 0x3d, 0xbc, 0x32, 0x78, - 0xfd, 0x43, 0xf9, 0x06, 0x77, 0x96, 0x6f, 0xcc, 0xcb, 0x59, 0x21, 0x38, 0xfb, 0x77, 0x08, 0xfa, - 0xd3, 0x1b, 0xcb, 0x68, 0x07, 0xc0, 0x20, 0x9f, 0x54, 0xd0, 0xe0, 0xd3, 0x4c, 0x6c, 0x66, 0x10, - 0x57, 0x77, 0xcc, 0x33, 0x9a, 0x8f, 0xa2, 0x17, 0x8a, 0x57, 0xee, 0x69, 0xc9, 0x4d, 0x55, 0x35, - 0x93, 0x79, 0xd5, 0xd6, 0xb5, 0x64, 0xcd, 0x26, 0xd6, 0xc5, 0x3a, 0xb1, 0x93, 0xba, 0x91, 0x34, - 0x2d, 0xe3, 0x5e, 0x23, 0xb9, 0xa9, 0x16, 0x93, 0x9b, 0x96, 0x4e, 0xc9, 0xfd, 0x3f, 0xff, 0xfa, - 0xd6, 0x37, 0x97, 0xb8, 0xe2, 0xfe, 0x8b, 0x4c, 0xb5, 0x8e, 0xd9, 0x4e, 0x7d, 0xe6, 0x15, 0xbe, - 0xd4, 0x5a, 0xdc, 0xea, 0xf8, 0x67, 0x66, 0xcf, 0x81, 0x19, 0xf4, 0x18, 0x40, 0xff, 0x12, 0xa1, - 0xe8, 0xfc, 0xbe, 0x53, 0x20, 0x17, 0x33, 0x35, 0xe0, 0xb4, 0x98, 0x30, 0x1f, 0xff, 0xec, 0x03, - 0xcd, 0x47, 0xd1, 0x64, 0xb7, 0x9a, 0x8a, 0x51, 0xd5, 0xa9, 0xd1, 0x43, 0x90, 0x45, 0xd4, 0x02, - 0xd3, 0x73, 0x05, 0x5d, 0xee, 0xa5, 0xe7, 0x75, 0x32, 0xb8, 0x65, 0x0b, 0xfd, 0x06, 0x60, 0xc0, - 0xa9, 0x2a, 0x34, 0xb5, 0x7f, 0xdd, 0x71, 0x31, 0xd3, 0x83, 0x16, 0x68, 0x42, 0x3f, 0xbc, 0x1a, - 0x09, 0x5d, 0x3c, 0x88, 0x1a, 0xb4, 0x0b, 0xe0, 0x31, 0x77, 0x82, 0x45, 0x07, 0x18, 0x73, 0x63, - 0x17, 0x06, 0xf2, 0x75, 0xf5, 0x7c, 0x7e, 0x98, 0x3c, 0x5b, 0x89, 0xc9, 0x87, 0xca, 0xb3, 0x2e, - 0x97, 0x2d, 0x27, 0xef, 0x7e, 0x01, 0x30, 0xc8, 0xbb, 0x56, 0xff, 0x52, 0xea, 0xe8, 0x6c, 0xb1, - 0x09, 0x89, 0x7f, 0xae, 0x90, 0xbc, 0xcf, 0x15, 0x92, 0x5c, 0x31, 0x69, 0x23, 0x51, 0x39, 0x8c, - 0x9c, 0xab, 0x33, 0x87, 0x49, 0xb3, 0x39, 0x30, 0x13, 0xfb, 0xf8, 0xe1, 0x36, 0xf0, 0xfd, 0xb1, - 0x0d, 0xce, 0xf4, 0x09, 0x9c, 0xbf, 0xb4, 0x9e, 0x6e, 0x03, 0xd0, 0xdc, 0x06, 0x53, 0x03, 0xbe, - 0xe3, 0xee, 0xff, 0x1e, 0xf5, 0x09, 0x20, 0xf3, 0x0d, 0x78, 0x72, 0x7d, 0x78, 0x1e, 0xdf, 0x5c, - 0x58, 0xdd, 0x79, 0x2e, 0x0e, 0x3d, 0x7d, 0x2e, 0x0e, 0xbd, 0x7c, 0x2e, 0x82, 0x2f, 0x9a, 0x22, - 0xf8, 0xb1, 0x29, 0x82, 0xc7, 0x4d, 0x11, 0xec, 0x34, 0x45, 0xf0, 0xac, 0x29, 0x82, 0x17, 0x4d, - 0x71, 0xe8, 0x65, 0x53, 0x04, 0x5f, 0xef, 0x8a, 0x43, 0x0f, 0x77, 0x45, 0xb0, 0xb3, 0x2b, 0x0e, - 0x3d, 0xdd, 0x15, 0x87, 0x6e, 0x6f, 0x94, 0x0c, 0xf3, 0x6e, 0x49, 0xaa, 0x1b, 0xce, 0xfc, 0x68, - 0xa9, 0x52, 0xcd, 0x4e, 0xb1, 0x0b, 0xe7, 0x3f, 0x94, 0xb3, 0x1b, 0x75, 0xbd, 0x40, 0xac, 0xa4, - 0x67, 0x4e, 0x99, 0xf9, 0x92, 0x91, 0x22, 0xf7, 0xa8, 0xfb, 0x81, 0xa4, 0xc7, 0x77, 0x9c, 0x7c, - 0x90, 0xed, 0xf9, 0xe5, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x4f, 0x33, 0x4b, 0x88, 0xcc, 0x12, - 0x00, 0x00, + // 1620 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x1b, 0x45, + 0x14, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x1d, 0xda, 0xd4, 0x31, 0xc5, 0x72, 0xdd, 0xaa, + 0x09, 0x69, 0xbd, 0x2e, 0xa9, 0x2a, 0xb5, 0x11, 0x14, 0x6c, 0x67, 0x13, 0x12, 0x92, 0x26, 0x5a, + 0xbb, 0x15, 0xea, 0x81, 0xd5, 0x7a, 0x3d, 0x76, 0x97, 0xda, 0xde, 0x65, 0x67, 0xec, 0xd4, 0x42, + 0x91, 0x50, 0x55, 0xc4, 0x01, 0x21, 0x21, 0x38, 0x20, 0x55, 0x1c, 0xb8, 0x20, 0x71, 0xe0, 0x0f, + 0x40, 0x0a, 0x87, 0xde, 0xa8, 0x7a, 0x40, 0x15, 0xbd, 0xf4, 0xd8, 0x3a, 0x3d, 0x94, 0x5b, 0xc5, + 0x89, 0x03, 0x07, 0xb4, 0x33, 0xbb, 0xae, 0xed, 0xb8, 0x8e, 0x13, 0xc2, 0xc9, 0xbb, 0xef, 0xe3, + 0xb7, 0xef, 0x37, 0xef, 0x63, 0x9f, 0x17, 0x26, 0xeb, 0x98, 0x88, 0xba, 0x91, 0x24, 0xda, 0x0d, + 0x5c, 0x51, 0x93, 0xaa, 0x69, 0x2a, 0x45, 0xdd, 0xc2, 0x1b, 0x6a, 0xb9, 0x9c, 0x34, 0x6b, 0xf9, + 0xb2, 0xae, 0x29, 0x9a, 0x55, 0x2b, 0xa8, 0xa6, 0x2e, 0x9a, 0x96, 0x41, 0x0d, 0x14, 0xe1, 0x0e, + 0x22, 0x77, 0x10, 0xdb, 0x1d, 0x22, 0x89, 0x92, 0x4e, 0x6f, 0xd4, 0xf2, 0xa2, 0x66, 0x54, 0x92, + 0x25, 0xa3, 0x64, 0x24, 0x99, 0x4b, 0xbe, 0x56, 0x64, 0x77, 0xec, 0x86, 0x5d, 0x71, 0xa8, 0xc8, + 0xf1, 0x92, 0x61, 0x94, 0xca, 0x38, 0xa9, 0x9a, 0x7a, 0x52, 0xad, 0x56, 0x0d, 0xaa, 0x52, 0xdd, + 0xa8, 0x12, 0x47, 0xfb, 0xba, 0xa3, 0x6d, 0x61, 0xe0, 0x8a, 0x49, 0x1b, 0x8e, 0x72, 0xaa, 0x4f, + 0xd8, 0x46, 0xfe, 0x63, 0xac, 0x51, 0xc7, 0xf0, 0x74, 0x1f, 0x43, 0xda, 0x30, 0xb1, 0xfb, 0xb4, + 0x48, 0xa7, 0x1d, 0xb6, 0x2c, 0xc3, 0x6a, 0x45, 0xd2, 0xa9, 0x33, 0xcc, 0xf6, 0x30, 0x27, 0x3b, + 0x95, 0xed, 0x98, 0xf1, 0x4e, 0x55, 0x1d, 0x13, 0x5c, 0xad, 0x77, 0xb9, 0xc7, 0xba, 0x6c, 0x74, + 0xbc, 0xa1, 0x74, 0x58, 0xc4, 0x7f, 0x06, 0x70, 0x34, 0x63, 0x61, 0x95, 0x62, 0x19, 0x7f, 0x52, + 0xc3, 0x84, 0xa2, 0x77, 0x61, 0xa0, 0x82, 0xa9, 0x5a, 0x50, 0xa9, 0x1a, 0x06, 0x31, 0x30, 0x1d, + 0x9a, 0x3d, 0x29, 0x76, 0x66, 0x65, 0x8d, 0x1d, 0x01, 0xf7, 0x5a, 0xc5, 0x54, 0xcd, 0x35, 0x4c, + 0x2c, 0xb7, 0x9c, 0xd0, 0x1a, 0xf4, 0x11, 0x13, 0x6b, 0x61, 0x0f, 0x73, 0x9e, 0x11, 0x5f, 0x9d, + 0x52, 0x91, 0x63, 0x64, 0x4d, 0xac, 0xd9, 0x18, 0xe9, 0xf1, 0xbb, 0x9b, 0x23, 0xb6, 0xab, 0x58, + 0xd2, 0x14, 0xfb, 0x57, 0x66, 0x40, 0x73, 0xc1, 0x07, 0x97, 0xfd, 0xfc, 0x99, 0xf1, 0xbf, 0x01, + 0x1c, 0x73, 0xc3, 0x25, 0xa6, 0x51, 0x25, 0x18, 0xbd, 0xbd, 0x23, 0xde, 0x58, 0xcf, 0x78, 0x17, + 0x31, 0xed, 0x19, 0xec, 0x38, 0x69, 0x10, 0x8a, 0x2b, 0x4a, 0x0b, 0xc4, 0xcb, 0x40, 0x4e, 0x77, + 0x81, 0x64, 0x99, 0xd5, 0x4e, 0xa8, 0x31, 0xee, 0xbe, 0xea, 0x02, 0xae, 0x74, 0xb0, 0x9f, 0xea, + 0xc7, 0x7e, 0x11, 0xd3, 0x3d, 0x50, 0x7f, 0x02, 0xe0, 0x98, 0x8c, 0xcd, 0xb2, 0xaa, 0xb5, 0x52, + 0xf5, 0xde, 0x0e, 0xea, 0xa7, 0x7a, 0x52, 0x77, 0xdc, 0x7a, 0xd0, 0x5f, 0xef, 0x88, 0xf6, 0x4c, + 0xbf, 0x68, 0x1d, 0x90, 0x5d, 0x22, 0x46, 0x49, 0x28, 0x58, 0x98, 0x18, 0x35, 0x4b, 0xc3, 0x4a, + 0x1d, 0x5b, 0x44, 0x37, 0xaa, 0xec, 0x44, 0x83, 0x69, 0xdf, 0xf3, 0x2d, 0x00, 0xe4, 0x71, 0x57, + 0x7b, 0x8d, 0x2b, 0xdb, 0x29, 0x1e, 0x86, 0xe3, 0x2d, 0x86, 0x3c, 0xbb, 0xf1, 0xbb, 0x00, 0xc2, + 0x45, 0x4c, 0x5d, 0xc6, 0xc7, 0x61, 0xb0, 0xaa, 0x56, 0x30, 0x31, 0x55, 0x0d, 0x33, 0xca, 0x41, + 0xf9, 0xa5, 0x00, 0x21, 0xe8, 0xb3, 0x6f, 0x18, 0x9b, 0xa0, 0xcc, 0xae, 0xd1, 0x75, 0x68, 0x3f, + 0x91, 0x81, 0x29, 0x45, 0xc3, 0xaa, 0xa8, 0x94, 0x85, 0x33, 0x36, 0xfb, 0xd6, 0x2e, 0xa9, 0x71, + 0x43, 0x58, 0x60, 0x4e, 0x19, 0xa3, 0x80, 0xe5, 0x31, 0xab, 0x43, 0x16, 0xff, 0xca, 0x0f, 0x43, + 0x6d, 0x96, 0x68, 0x19, 0x86, 0x34, 0x56, 0x9c, 0xec, 0x49, 0xce, 0xa1, 0xbe, 0xb9, 0x7b, 0x03, + 0x38, 0xec, 0x64, 0xc8, 0xbd, 0x6d, 0x74, 0xb4, 0x0a, 0x47, 0x2c, 0x7e, 0x16, 0x1c, 0xcc, 0xbb, + 0x7b, 0x37, 0x75, 0x56, 0x87, 0x1c, 0x72, 0xfc, 0x19, 0x5c, 0xaf, 0xb4, 0xf8, 0xfa, 0xa4, 0xa5, + 0xa3, 0xad, 0x86, 0x0f, 0xa2, 0xad, 0x0e, 0x1d, 0x48, 0x5b, 0xf9, 0x0f, 0xa2, 0xad, 0xd0, 0x22, + 0xf4, 0x13, 0xaa, 0xd2, 0x1a, 0x09, 0xff, 0xf0, 0x3d, 0x88, 0x79, 0xa7, 0x43, 0xb3, 0xd3, 0xfd, + 0x10, 0xb3, 0xcc, 0x96, 0x07, 0x99, 0xf6, 0xde, 0xdb, 0x04, 0xb2, 0xe3, 0x8e, 0x96, 0xe0, 0x61, + 0x0b, 0x17, 0xb1, 0x65, 0xe9, 0xd5, 0x92, 0xc2, 0x5f, 0x0d, 0x24, 0x1c, 0x60, 0x88, 0xc7, 0x5f, + 0xd1, 0x8a, 0x45, 0xc6, 0x4f, 0x68, 0xb9, 0x71, 0x39, 0x41, 0xd7, 0x60, 0xb8, 0x80, 0xcb, 0x98, + 0xe2, 0x82, 0xc2, 0x75, 0xb8, 0xd0, 0x42, 0x0c, 0x0e, 0x80, 0x38, 0xe1, 0x78, 0xcb, 0x8e, 0xb3, + 0x8b, 0xfb, 0x21, 0x9c, 0x2c, 0xe8, 0x44, 0xcd, 0x97, 0x7b, 0x01, 0xc3, 0x01, 0x80, 0x8f, 0xb9, + 0xee, 0x5d, 0xc8, 0x6d, 0x9d, 0xbb, 0xec, 0x0b, 0x00, 0xc1, 0x13, 0xff, 0x11, 0xc0, 0xd0, 0x8a, + 0x4e, 0x06, 0xec, 0xd6, 0x13, 0x70, 0xa4, 0xac, 0xe6, 0x71, 0x59, 0x29, 0xea, 0x65, 0x8a, 0x2d, + 0xa7, 0x6b, 0x43, 0x4c, 0xb6, 0xc0, 0x44, 0xe8, 0x24, 0x1c, 0xb5, 0xb0, 0x69, 0x58, 0x54, 0x29, + 0xea, 0xb8, 0x5c, 0x20, 0x61, 0x6f, 0xcc, 0x3b, 0x1d, 0x94, 0x47, 0xb8, 0x70, 0x81, 0xc9, 0xd0, + 0x39, 0x78, 0xc4, 0x31, 0xe2, 0x49, 0x71, 0x6d, 0x7d, 0xcc, 0x16, 0x71, 0x1d, 0x4f, 0x21, 0xf7, + 0x88, 0xff, 0xea, 0x87, 0x02, 0x8f, 0x93, 0x37, 0xee, 0x12, 0xc5, 0x15, 0x34, 0x01, 0xfd, 0x14, + 0x57, 0xd5, 0x2a, 0x65, 0x35, 0x16, 0x94, 0x9d, 0xbb, 0x7d, 0x8c, 0x1c, 0x01, 0x7a, 0x6b, 0x7a, + 0x81, 0x4f, 0x3d, 0xd9, 0xbe, 0x44, 0x31, 0x18, 0x2a, 0x60, 0xa2, 0x59, 0x3a, 0x7b, 0xf7, 0x86, + 0x43, 0x9c, 0x69, 0x9b, 0x08, 0x45, 0x60, 0xc0, 0x3d, 0xe6, 0xf0, 0x48, 0x0c, 0x4c, 0x07, 0xe4, + 0xd6, 0x3d, 0x5a, 0x87, 0x7e, 0x76, 0x28, 0x9c, 0x52, 0x68, 0xf6, 0x62, 0xbf, 0x5a, 0xed, 0xe6, + 0x25, 0xae, 0x30, 0x57, 0xa9, 0x4a, 0xad, 0x86, 0xec, 0xe0, 0x20, 0x05, 0x86, 0xda, 0x56, 0x22, + 0xa7, 0x0a, 0xde, 0xd9, 0x13, 0x6c, 0xea, 0xa5, 0x3f, 0xc7, 0x6e, 0x47, 0x44, 0x97, 0x20, 0x34, + 0x36, 0xaa, 0xd8, 0x52, 0xec, 0x95, 0x23, 0x1c, 0x64, 0x4d, 0x1b, 0xe9, 0xc2, 0xbf, 0xa6, 0xe3, + 0x0d, 0xb7, 0xc6, 0x82, 0xcc, 0xda, 0x96, 0x74, 0x0c, 0x9e, 0xd1, 0x83, 0x18, 0x3c, 0x63, 0xff, + 0x69, 0xf0, 0xa4, 0x61, 0xa0, 0x84, 0x29, 0x1b, 0x1e, 0xce, 0x08, 0x1b, 0x74, 0xf8, 0xc8, 0x87, + 0x4a, 0xfc, 0x06, 0xad, 0x40, 0xe8, 0x94, 0x26, 0xc1, 0xd4, 0x19, 0x0f, 0x7b, 0x1c, 0x38, 0x41, + 0x0e, 0x90, 0xc5, 0x34, 0x72, 0x09, 0x86, 0xda, 0x72, 0x6a, 0x57, 0xdb, 0x4d, 0xdc, 0x70, 0x2a, + 0xd3, 0xbe, 0x44, 0x47, 0xe0, 0x70, 0x5d, 0x2d, 0xd7, 0xdc, 0xa2, 0xe4, 0x37, 0x73, 0x9e, 0x8b, + 0x20, 0x72, 0x19, 0x0a, 0xdd, 0x79, 0xdb, 0x8b, 0xff, 0xb2, 0x2f, 0x30, 0x2c, 0xf8, 0xe3, 0x77, + 0x00, 0x1c, 0x69, 0xaf, 0x07, 0x94, 0x86, 0xc3, 0x3a, 0xc5, 0x15, 0x12, 0xe6, 0xb3, 0xf4, 0xec, + 0x5e, 0x0a, 0x49, 0xe6, 0xae, 0xe8, 0x1c, 0xf4, 0xf3, 0xb5, 0x38, 0xec, 0x61, 0x20, 0xe1, 0x2e, + 0x10, 0xc9, 0x56, 0xb2, 0x63, 0x75, 0xec, 0xe2, 0x37, 0xe1, 0xe8, 0x3c, 0x1b, 0x79, 0xfb, 0x5f, + 0x0e, 0xa6, 0xa1, 0x50, 0x54, 0xf5, 0xb2, 0xa2, 0x17, 0x5b, 0xa3, 0x91, 0xb5, 0x6d, 0x40, 0x1e, + 0xb3, 0xe5, 0x4b, 0x45, 0x77, 0xe4, 0xcd, 0xfc, 0x05, 0xe0, 0xd1, 0x9e, 0x4b, 0x01, 0x8a, 0xc0, + 0x89, 0x45, 0x29, 0xa7, 0xc8, 0xd9, 0x75, 0x65, 0x61, 0x4d, 0x5e, 0x4d, 0xe5, 0x94, 0x79, 0x69, + 0x21, 0x75, 0x75, 0x25, 0x27, 0x0c, 0xa1, 0x37, 0xe0, 0x64, 0x97, 0x6e, 0x61, 0x4d, 0x56, 0x32, + 0xb2, 0x94, 0xca, 0x49, 0x02, 0x40, 0x51, 0x18, 0xe9, 0xa1, 0x96, 0xa5, 0xf5, 0x95, 0x54, 0x46, + 0x12, 0x3c, 0x68, 0x12, 0x1e, 0xed, 0xd2, 0x67, 0x73, 0xa9, 0xdc, 0xd5, 0xac, 0xe0, 0x45, 0xc7, + 0xe0, 0x6b, 0x5d, 0x2a, 0x59, 0x4a, 0xcd, 0x0b, 0x3e, 0x74, 0x0a, 0xc6, 0x76, 0x28, 0x16, 0x24, + 0x59, 0x5e, 0xba, 0xb2, 0xa8, 0xac, 0xa5, 0x97, 0xa5, 0x4c, 0x2e, 0x2b, 0x0c, 0xf7, 0xb0, 0x4a, + 0xcb, 0x6b, 0x1f, 0x48, 0x57, 0xb8, 0xb1, 0x74, 0x25, 0x23, 0x65, 0x05, 0xff, 0xec, 0x8b, 0x20, + 0xf4, 0xa6, 0xd6, 0x97, 0xd0, 0x9f, 0x00, 0xfa, 0xf9, 0xa6, 0x82, 0x06, 0xdf, 0x66, 0x22, 0x33, + 0x83, 0x98, 0x3a, 0x6b, 0xde, 0x17, 0xa0, 0xf9, 0x5b, 0x38, 0x53, 0xbc, 0x70, 0x4b, 0x4b, 0x6c, + 0xa8, 0xaa, 0x99, 0xc8, 0xab, 0x44, 0xd7, 0x12, 0x35, 0x82, 0xad, 0xb3, 0x2f, 0x85, 0x84, 0xaa, + 0xd5, 0x82, 0x6a, 0x15, 0xb8, 0xbc, 0x8e, 0x49, 0x42, 0x37, 0x12, 0xa6, 0x65, 0xdc, 0x6a, 0x24, + 0x36, 0xd4, 0x62, 0x62, 0xc3, 0xd2, 0x29, 0xbe, 0xfd, 0xe8, 0xd9, 0xb7, 0x9e, 0xb9, 0xf8, 0x05, + 0xe7, 0xef, 0x65, 0xb2, 0x95, 0x7f, 0x92, 0xfc, 0xd4, 0x9d, 0x08, 0x62, 0x4b, 0xb8, 0xd9, 0xf1, + 0x97, 0x8d, 0xcc, 0x81, 0x19, 0xf4, 0x0c, 0x40, 0xef, 0x22, 0xa6, 0xe8, 0xf4, 0xae, 0xeb, 0x21, + 0x67, 0x39, 0x35, 0xe0, 0x1a, 0x19, 0xff, 0x12, 0xdc, 0xff, 0xc5, 0x63, 0xd3, 0x7c, 0xbf, 0x9b, + 0x66, 0xc5, 0xa8, 0xea, 0xd4, 0xe8, 0xc9, 0xd4, 0x55, 0xed, 0x20, 0x6b, 0x61, 0xb5, 0xc0, 0xb8, + 0x5e, 0x40, 0xe7, 0x7b, 0x71, 0x7d, 0x15, 0x45, 0xae, 0xd9, 0x44, 0x4f, 0x00, 0xf4, 0xd9, 0xad, + 0x88, 0xa6, 0x76, 0x6f, 0x56, 0x4e, 0x74, 0x7a, 0xd0, 0xae, 0x8e, 0xdf, 0xf9, 0x7f, 0x98, 0x8a, + 0xe8, 0xec, 0x5e, 0x98, 0xa2, 0x7f, 0x00, 0x3c, 0xe4, 0xac, 0xc4, 0x68, 0x0f, 0x7b, 0x73, 0xe4, + 0xcc, 0x40, 0xb6, 0x0e, 0xd7, 0xef, 0x0e, 0xb4, 0x70, 0x97, 0x23, 0xd2, 0xbe, 0x0a, 0xb7, 0xcb, + 0x64, 0xd3, 0x2e, 0xe4, 0x47, 0x00, 0xfa, 0xf9, 0x7c, 0xec, 0xdf, 0xb4, 0x1d, 0x33, 0x34, 0x32, + 0x21, 0xf2, 0x0f, 0x23, 0xa2, 0xfb, 0x61, 0x44, 0x94, 0x2a, 0x26, 0x6d, 0xc4, 0x3f, 0x3f, 0x50, + 0x9e, 0x17, 0x67, 0xf6, 0x53, 0xb4, 0x73, 0x60, 0x26, 0xf2, 0xd1, 0xbd, 0x2d, 0xe0, 0xf9, 0x63, + 0x0b, 0x9c, 0xe8, 0xc3, 0x88, 0xbf, 0x37, 0x1f, 0x6f, 0x01, 0xd0, 0xdc, 0x02, 0x53, 0x03, 0xbe, + 0x66, 0x6f, 0xff, 0x1e, 0xf6, 0x08, 0x20, 0xfd, 0x0d, 0x78, 0x70, 0x79, 0x38, 0x23, 0x5f, 0x9d, + 0x5f, 0x79, 0xf8, 0x34, 0x3a, 0xf4, 0xf8, 0x69, 0x74, 0xe8, 0xc5, 0xd3, 0x28, 0xf8, 0xac, 0x19, + 0x05, 0x3f, 0x35, 0xa3, 0xe0, 0x7e, 0x33, 0x0a, 0x1e, 0x36, 0xa3, 0xe0, 0x49, 0x33, 0x0a, 0x9e, + 0x37, 0xa3, 0x43, 0x2f, 0x9a, 0x51, 0xf0, 0xf5, 0x76, 0x74, 0xe8, 0xde, 0x76, 0x14, 0x3c, 0xdc, + 0x8e, 0x0e, 0x3d, 0xde, 0x8e, 0x0e, 0x5d, 0x5f, 0x2f, 0x19, 0xe6, 0xcd, 0x92, 0x58, 0x37, 0xec, + 0x15, 0xd6, 0x52, 0xc5, 0x1a, 0x49, 0xb2, 0x0b, 0xfb, 0x6f, 0x9c, 0x7d, 0x1a, 0x75, 0xbd, 0x80, + 0xad, 0x84, 0xab, 0x4e, 0x9a, 0xf9, 0x92, 0x91, 0xc4, 0xb7, 0xa8, 0xf3, 0x8d, 0xa6, 0xc7, 0xa7, + 0xa4, 0xbc, 0x9f, 0x25, 0xe3, 0xfc, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xab, 0x4e, 0xba, 0x17, + 0x4f, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/app_firewall/public_crudapi.vesapi.go b/pbgo/extschema/schema/app_firewall/public_crudapi.vesapi.go index 20de05793..4a7e18069 100644 --- a/pbgo/extschema/schema/app_firewall/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/app_firewall/public_crudapi.vesapi.go @@ -3526,10 +3526,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3586,10 +3590,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3692,10 +3700,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.go b/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.go index 146764671..6a212517b 100644 --- a/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.go @@ -521,67 +521,71 @@ func init() { } var fileDescriptor_fdde37f60bf704d7 = []byte{ - // 954 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xcf, 0x6f, 0xe3, 0x44, - 0x14, 0xce, 0xd8, 0x69, 0x9b, 0xce, 0x6e, 0x83, 0x77, 0xb4, 0xac, 0x4c, 0xa8, 0xac, 0x12, 0x09, - 0x08, 0x85, 0xd8, 0x68, 0x2b, 0x60, 0xd5, 0x03, 0x52, 0x92, 0x1a, 0x11, 0x6d, 0xb6, 0x29, 0x8e, - 0xb7, 0x12, 0x5c, 0xcc, 0xc4, 0x99, 0x78, 0xcd, 0xda, 0x1e, 0xe3, 0x99, 0xa4, 0x8d, 0x10, 0x12, - 0xda, 0x13, 0xe2, 0x84, 0xe0, 0x00, 0x47, 0x8e, 0xfc, 0x0b, 0xb0, 0x97, 0x72, 0x82, 0x13, 0xaa, - 0x80, 0xc3, 0x1e, 0x69, 0xca, 0x01, 0x6e, 0xfd, 0x13, 0x90, 0xc7, 0x4e, 0xdb, 0x2c, 0x3f, 0x36, - 0xb7, 0x99, 0xf7, 0xbd, 0xef, 0x9b, 0x6f, 0xde, 0x3c, 0x3f, 0xc3, 0x37, 0xc6, 0x84, 0xe9, 0x3e, - 0x35, 0x98, 0x7b, 0x8f, 0x84, 0xd8, 0xc0, 0x71, 0xec, 0x0c, 0xfd, 0x84, 0x1c, 0xe0, 0x20, 0x30, - 0xe2, 0x51, 0x3f, 0xf0, 0x5d, 0xc7, 0x1d, 0x31, 0x4e, 0x43, 0x67, 0x80, 0x39, 0x76, 0x70, 0xec, - 0xeb, 0x71, 0x42, 0x39, 0x45, 0x95, 0x8c, 0xa8, 0x67, 0x44, 0xfd, 0x32, 0xb1, 0x52, 0xf7, 0x7c, - 0x7e, 0x6f, 0xd4, 0xd7, 0x5d, 0x1a, 0x1a, 0x1e, 0xf5, 0xa8, 0x21, 0x28, 0xfd, 0xd1, 0x50, 0xec, - 0xc4, 0x46, 0xac, 0x32, 0xa9, 0xca, 0xba, 0x47, 0xa9, 0x17, 0x10, 0x03, 0xc7, 0xbe, 0x81, 0xa3, - 0x88, 0x72, 0xcc, 0x7d, 0x1a, 0xb1, 0x1c, 0x7d, 0x76, 0xde, 0x21, 0x8d, 0x2f, 0x83, 0xcf, 0xcc, - 0x83, 0x7c, 0x12, 0x93, 0x19, 0xb4, 0x3e, 0x0f, 0x8d, 0x71, 0xe0, 0x0f, 0x30, 0x27, 0x39, 0x5a, - 0x7d, 0x0c, 0x25, 0x8c, 0x44, 0xe3, 0x79, 0xf1, 0xea, 0x77, 0x32, 0x2c, 0xdf, 0x21, 0x3c, 0xf1, - 0x5d, 0x66, 0x91, 0x0f, 0x47, 0x84, 0x71, 0xb4, 0x0e, 0x57, 0x23, 0x1c, 0x12, 0x16, 0x63, 0x97, - 0xa8, 0x60, 0x03, 0xd4, 0x56, 0xad, 0x8b, 0x00, 0xba, 0x01, 0x97, 0x87, 0x7e, 0xc0, 0x49, 0xa2, - 0x4a, 0x02, 0xca, 0x77, 0xa8, 0x09, 0x4b, 0x5e, 0x42, 0x47, 0xb1, 0xd3, 0x9f, 0xa8, 0xf2, 0x86, - 0x5c, 0x2b, 0xdf, 0x7c, 0x51, 0xff, 0xef, 0xf2, 0xe9, 0xd9, 0x99, 0x1d, 0xdc, 0x27, 0x81, 0xb5, - 0x22, 0x88, 0xcd, 0x09, 0x0a, 0x61, 0x79, 0xe8, 0x93, 0x60, 0xe0, 0x30, 0x12, 0x10, 0x97, 0xd3, - 0x44, 0x2d, 0x0a, 0xa5, 0x17, 0x9e, 0xac, 0x64, 0x4f, 0x62, 0xd2, 0xd4, 0xbe, 0xff, 0xeb, 0x48, - 0x5e, 0xfa, 0x02, 0x48, 0x4a, 0x69, 0xb6, 0x2a, 0x81, 0xd9, 0x4a, 0x05, 0xd6, 0x9a, 0x50, 0xef, - 0xe5, 0xe2, 0xe8, 0x25, 0x08, 0x19, 0xc7, 0x09, 0x77, 0xb8, 0x1f, 0x12, 0x75, 0x29, 0xbd, 0x4e, - 0x13, 0x8a, 0xf4, 0x44, 0xfe, 0xba, 0x08, 0xac, 0x55, 0x81, 0xda, 0x7e, 0x48, 0xd0, 0xf3, 0xb0, - 0x44, 0xa2, 0x41, 0x96, 0xb8, 0xfc, 0x8f, 0xc4, 0x15, 0x12, 0x0d, 0x44, 0x9a, 0x06, 0x8b, 0x8c, - 0x93, 0x58, 0x5d, 0x99, 0x4b, 0xf9, 0xa6, 0x08, 0x2c, 0x11, 0x47, 0x55, 0xb8, 0x94, 0xe0, 0xc8, - 0x23, 0x6a, 0x49, 0x24, 0x5c, 0xcd, 0x13, 0xce, 0x24, 0xa0, 0x02, 0x2b, 0x83, 0x50, 0x0d, 0x2a, - 0x3e, 0x73, 0x78, 0x92, 0x9e, 0x97, 0x64, 0x4f, 0xa2, 0xae, 0x6e, 0x80, 0x5a, 0xc9, 0x2a, 0xfb, - 0xcc, 0x4e, 0xc3, 0xf9, 0x43, 0x55, 0x43, 0xf8, 0xd4, 0xf9, 0xd3, 0xb1, 0x98, 0x46, 0x8c, 0xa0, - 0x6d, 0x58, 0x4c, 0x7b, 0x58, 0x05, 0x1b, 0x72, 0xed, 0xca, 0x22, 0x75, 0xdb, 0xc1, 0x1c, 0x5b, - 0x82, 0x73, 0x6e, 0x5e, 0x9a, 0x33, 0x7f, 0x26, 0xe5, 0xe6, 0xab, 0x3f, 0x80, 0x59, 0xab, 0xa4, - 0xc5, 0x4e, 0x89, 0xc8, 0x84, 0xf2, 0x7d, 0x32, 0xc9, 0x4f, 0xdb, 0x5a, 0xec, 0x95, 0x52, 0xa2, - 0x7e, 0x9b, 0x4c, 0xcc, 0x88, 0x27, 0x13, 0x2b, 0xe5, 0xa3, 0x57, 0xe1, 0xd2, 0x18, 0x07, 0x23, - 0xa2, 0x4a, 0x42, 0xa8, 0xf2, 0x98, 0x50, 0xc6, 0xdd, 0x4f, 0x33, 0xac, 0x2c, 0xb1, 0xf2, 0x3a, - 0x2c, 0xcd, 0x24, 0x90, 0x32, 0x33, 0x91, 0xb6, 0xa3, 0xd0, 0xbb, 0x7e, 0xa1, 0x97, 0xc6, 0xb2, - 0xcd, 0xb6, 0x74, 0x0b, 0x54, 0x3f, 0x05, 0x10, 0x5e, 0x5c, 0x3c, 0x2d, 0x57, 0xfa, 0x39, 0x09, - 0xee, 0xc2, 0x6d, 0x66, 0x09, 0x0e, 0x7a, 0x33, 0x2f, 0x75, 0xe6, 0x79, 0x73, 0xf1, 0xcb, 0x67, - 0xe5, 0xde, 0x7c, 0x7f, 0xe6, 0x24, 0x8d, 0xa3, 0x6b, 0x70, 0xad, 0xd9, 0xb5, 0x9d, 0x1d, 0xd3, - 0x36, 0x5b, 0x76, 0xbb, 0xbb, 0xab, 0x14, 0xd0, 0xd3, 0xf0, 0x5a, 0xc3, 0xb6, 0x1b, 0xad, 0xdb, - 0xe6, 0x8e, 0x63, 0x99, 0xef, 0xdc, 0x35, 0x7b, 0x76, 0x4f, 0x01, 0xe8, 0x3a, 0x54, 0x9a, 0x9d, - 0xee, 0x7c, 0x54, 0x42, 0x08, 0x96, 0xed, 0xae, 0xdd, 0xe8, 0x5c, 0xc4, 0xe4, 0xcd, 0x7d, 0x78, - 0xe5, 0xd2, 0x67, 0x86, 0xd6, 0xe0, 0xea, 0x6e, 0xe3, 0x8e, 0xd9, 0xdb, 0x6b, 0xb4, 0x4c, 0xa5, - 0x80, 0x14, 0x78, 0x75, 0xbf, 0x6d, 0xd9, 0x77, 0x1b, 0x1d, 0xe7, 0xed, 0x6e, 0xcf, 0x56, 0x24, - 0x74, 0x03, 0xa2, 0xd4, 0x43, 0xab, 0xd3, 0xe8, 0xf5, 0xda, 0x6f, 0xb5, 0x5b, 0x0d, 0x61, 0x44, - 0x46, 0x65, 0x08, 0xcd, 0x7d, 0x73, 0xd7, 0x76, 0xec, 0x77, 0xf7, 0x4c, 0xa5, 0x78, 0xf3, 0x2b, - 0x09, 0xae, 0xb5, 0xc4, 0xc0, 0x4c, 0xaf, 0xd3, 0xd8, 0x6b, 0xa3, 0xdf, 0x00, 0x5c, 0xc9, 0x5b, - 0x11, 0x2d, 0x50, 0x89, 0xd9, 0xa8, 0xa9, 0xbc, 0xbc, 0x50, 0x6e, 0xd6, 0xdb, 0xd5, 0x78, 0xfa, - 0xa3, 0xaa, 0x0f, 0x5f, 0x3b, 0x74, 0xeb, 0x07, 0x18, 0xc7, 0xf5, 0x3e, 0x66, 0xbe, 0x5b, 0x0f, - 0x69, 0xe4, 0x73, 0x9a, 0xbc, 0xb2, 0x31, 0x26, 0xac, 0xee, 0xd3, 0x7a, 0x9c, 0xd0, 0xc3, 0x49, - 0xfd, 0x00, 0x0f, 0xeb, 0x09, 0xc1, 0x83, 0x07, 0xbf, 0xfe, 0xf1, 0xa5, 0x74, 0xab, 0xba, 0x95, - 0x8f, 0x79, 0xe3, 0x7c, 0x8c, 0x31, 0xe3, 0xa3, 0xf3, 0xf5, 0xc7, 0xf3, 0x7f, 0x84, 0x30, 0x3b, - 0x76, 0x1b, 0x6c, 0x56, 0x8c, 0xa3, 0x87, 0x40, 0xfe, 0xe5, 0x21, 0x78, 0xee, 0x7f, 0x5c, 0x76, - 0xfb, 0x1f, 0x10, 0x97, 0x3f, 0xf8, 0x59, 0x95, 0x54, 0xd0, 0xfc, 0x0c, 0x1c, 0x9f, 0x68, 0x85, - 0x47, 0x27, 0x5a, 0xe1, 0xec, 0x44, 0x03, 0x9f, 0x4c, 0x35, 0xf0, 0xed, 0x54, 0x03, 0x3f, 0x4d, - 0x35, 0x70, 0x3c, 0xd5, 0xc0, 0xef, 0x53, 0x0d, 0xfc, 0x39, 0xd5, 0x0a, 0x67, 0x53, 0x0d, 0x7c, - 0x7e, 0xaa, 0x15, 0x8e, 0x4e, 0x35, 0x70, 0x7c, 0xaa, 0x15, 0x1e, 0x9d, 0x6a, 0x85, 0xf7, 0xf6, - 0x3c, 0x1a, 0xdf, 0xf7, 0xf4, 0x31, 0x4d, 0xa7, 0x69, 0x82, 0xf5, 0x11, 0x33, 0xc4, 0x62, 0x48, - 0x93, 0x30, 0xbd, 0xd5, 0xd8, 0x1f, 0x90, 0xa4, 0x3e, 0x83, 0x8d, 0xb8, 0xef, 0x51, 0x83, 0x1c, - 0xf2, 0x7c, 0xb6, 0xff, 0xcb, 0xaf, 0xad, 0xbf, 0x2c, 0x26, 0xfc, 0xd6, 0xdf, 0x01, 0x00, 0x00, - 0xff, 0xff, 0x12, 0x43, 0x44, 0xda, 0xff, 0x06, 0x00, 0x00, + // 1015 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0x41, 0x6f, 0xe3, 0x44, + 0x14, 0xce, 0x38, 0x69, 0x9b, 0xce, 0x6e, 0x43, 0x76, 0x54, 0x56, 0x26, 0x54, 0x56, 0x89, 0x04, + 0x94, 0x42, 0x62, 0xb4, 0xd5, 0xc2, 0xaa, 0x07, 0xa4, 0x24, 0x35, 0xa2, 0x6c, 0xb7, 0x29, 0x8e, + 0xb7, 0x12, 0x08, 0xc9, 0x4c, 0xe2, 0x89, 0x77, 0x58, 0xdb, 0x63, 0x3c, 0x93, 0xb4, 0x11, 0x42, + 0x42, 0x2b, 0x0e, 0x08, 0x71, 0x40, 0x70, 0xe1, 0xc8, 0x91, 0xbf, 0x00, 0x7b, 0x29, 0xa7, 0xe5, + 0x02, 0xaa, 0xe0, 0xb2, 0x47, 0x9a, 0x72, 0x80, 0x5b, 0xf9, 0x07, 0xc8, 0x63, 0x27, 0x69, 0x96, + 0x02, 0xb9, 0xec, 0x6d, 0xe6, 0x7d, 0xef, 0xfb, 0xfc, 0xbd, 0x37, 0xe3, 0x79, 0xf0, 0xd5, 0x3e, + 0xe1, 0x55, 0xca, 0x74, 0xde, 0xb9, 0x43, 0x7c, 0xac, 0xe3, 0x30, 0xb4, 0xbb, 0x34, 0x22, 0x07, + 0xd8, 0xf3, 0xf4, 0xb0, 0xd7, 0xf6, 0x68, 0xc7, 0xee, 0xf4, 0xb8, 0x60, 0xbe, 0xed, 0x60, 0x81, + 0x6d, 0x1c, 0xd2, 0x6a, 0x18, 0x31, 0xc1, 0x50, 0x29, 0x21, 0x56, 0x13, 0x62, 0xf5, 0x3c, 0xb1, + 0x54, 0x71, 0xa9, 0xb8, 0xd3, 0x6b, 0x57, 0x3b, 0xcc, 0xd7, 0x5d, 0xe6, 0x32, 0x5d, 0x52, 0xda, + 0xbd, 0xae, 0xdc, 0xc9, 0x8d, 0x5c, 0x25, 0x52, 0xa5, 0x15, 0x97, 0x31, 0xd7, 0x23, 0x3a, 0x0e, + 0xa9, 0x8e, 0x83, 0x80, 0x09, 0x2c, 0x28, 0x0b, 0x78, 0x8a, 0x3e, 0x3d, 0xed, 0x90, 0x85, 0xe7, + 0xc1, 0xa7, 0xa6, 0x41, 0x31, 0x08, 0xc9, 0x08, 0x5a, 0x99, 0x86, 0xfa, 0xd8, 0xa3, 0x0e, 0x16, + 0x24, 0x45, 0xcb, 0x8f, 0xa0, 0x84, 0x93, 0xa0, 0x3f, 0x2d, 0x5e, 0xfe, 0x2e, 0x0b, 0x0b, 0xb7, + 0x88, 0x88, 0x68, 0x87, 0x9b, 0xe4, 0x83, 0x1e, 0xe1, 0x02, 0xad, 0xc0, 0xc5, 0x00, 0xfb, 0x84, + 0x87, 0xb8, 0x43, 0x54, 0xb0, 0x0a, 0xd6, 0x16, 0xcd, 0x49, 0x00, 0x5d, 0x85, 0xf3, 0x5d, 0xea, + 0x09, 0x12, 0xa9, 0x8a, 0x84, 0xd2, 0x1d, 0xaa, 0xc3, 0xbc, 0x1b, 0xb1, 0x5e, 0x68, 0xb7, 0x07, + 0x6a, 0x76, 0x35, 0xbb, 0x56, 0xb8, 0xf6, 0x7c, 0xf5, 0xdf, 0xdb, 0x57, 0x4d, 0xbe, 0xb9, 0x83, + 0xdb, 0xc4, 0x33, 0x17, 0x24, 0xb1, 0x3e, 0x40, 0x3e, 0x2c, 0x74, 0x29, 0xf1, 0x1c, 0x9b, 0x13, + 0x8f, 0x74, 0x04, 0x8b, 0xd4, 0x9c, 0x54, 0x7a, 0xee, 0xff, 0x95, 0xac, 0x41, 0x48, 0xea, 0xda, + 0xf7, 0x7f, 0x1e, 0x65, 0xe7, 0xbe, 0x04, 0x4a, 0x31, 0x3f, 0x5a, 0xe5, 0xc1, 0x68, 0xa5, 0x02, + 0x73, 0x49, 0xaa, 0xb7, 0x52, 0x71, 0xf4, 0x02, 0x84, 0x5c, 0xe0, 0x48, 0xd8, 0x82, 0xfa, 0x44, + 0x9d, 0x8b, 0xcb, 0xa9, 0x43, 0x99, 0x1e, 0x65, 0xbf, 0xce, 0x01, 0x73, 0x51, 0xa2, 0x16, 0xf5, + 0x09, 0x7a, 0x16, 0xe6, 0x49, 0xe0, 0x24, 0x89, 0xf3, 0xff, 0x48, 0x5c, 0x20, 0x81, 0x23, 0xd3, + 0x34, 0x98, 0xe3, 0x82, 0x84, 0xea, 0xc2, 0x54, 0xca, 0x37, 0x39, 0x60, 0xca, 0x38, 0x2a, 0xc3, + 0xb9, 0x08, 0x07, 0x2e, 0x51, 0xf3, 0x32, 0xe1, 0x72, 0x9a, 0x70, 0xa6, 0x00, 0x15, 0x98, 0x09, + 0x84, 0xd6, 0x60, 0x91, 0x72, 0x5b, 0x44, 0xf1, 0xf7, 0xa2, 0xe4, 0x48, 0xd4, 0xc5, 0x55, 0xb0, + 0x96, 0x37, 0x0b, 0x94, 0x5b, 0x71, 0x38, 0x3d, 0xa8, 0xb2, 0x0f, 0x9f, 0x18, 0x1f, 0x1d, 0x0f, + 0x59, 0xc0, 0x09, 0xda, 0x84, 0xb9, 0xf8, 0x0e, 0xab, 0x60, 0x35, 0xbb, 0x76, 0x69, 0x96, 0xbe, + 0x6d, 0x61, 0x81, 0x4d, 0xc9, 0x19, 0x9b, 0x57, 0xa6, 0xcc, 0x9f, 0x29, 0xa9, 0xf9, 0xf2, 0x0f, + 0x60, 0x74, 0x55, 0xe2, 0x66, 0xc7, 0x44, 0x64, 0xc0, 0xec, 0x5d, 0x32, 0x48, 0xbf, 0xb6, 0x31, + 0xdb, 0x29, 0xc5, 0xc4, 0xea, 0x4d, 0x32, 0x30, 0x02, 0x11, 0x0d, 0xcc, 0x98, 0x8f, 0x5e, 0x86, + 0x73, 0x7d, 0xec, 0xf5, 0x88, 0xaa, 0x48, 0xa1, 0xd2, 0x23, 0x42, 0x09, 0x77, 0x3f, 0xce, 0x30, + 0x93, 0xc4, 0xd2, 0x2b, 0x30, 0x3f, 0x92, 0x40, 0xc5, 0x91, 0x89, 0xf8, 0x3a, 0x4a, 0xbd, 0xe5, + 0x89, 0x5e, 0x1c, 0x4b, 0x36, 0x9b, 0xca, 0x0d, 0x50, 0xfe, 0x14, 0x40, 0x38, 0x29, 0x3c, 0x6e, + 0x57, 0xfc, 0x3b, 0x49, 0xee, 0xcc, 0xd7, 0xcc, 0x94, 0x1c, 0xf4, 0x5a, 0xda, 0xea, 0xc4, 0xf3, + 0xfa, 0xec, 0xc5, 0x27, 0xed, 0x5e, 0x7f, 0x6f, 0xe4, 0x24, 0x8e, 0xa3, 0x2b, 0x70, 0xa9, 0xde, + 0xb4, 0xec, 0x2d, 0xc3, 0x32, 0x1a, 0xd6, 0x76, 0x73, 0xb7, 0x98, 0x41, 0x4f, 0xc2, 0x2b, 0x35, + 0xcb, 0xaa, 0x35, 0x6e, 0x1a, 0x5b, 0xb6, 0x69, 0xbc, 0x75, 0xdb, 0x68, 0x59, 0xad, 0x22, 0x40, + 0xcb, 0xb0, 0x58, 0xdf, 0x69, 0x4e, 0x47, 0x15, 0x84, 0x60, 0xc1, 0x6a, 0x5a, 0xb5, 0x9d, 0x49, + 0x2c, 0xbb, 0xbe, 0x0f, 0x2f, 0x9d, 0xfb, 0xcd, 0xd0, 0x12, 0x5c, 0xdc, 0xad, 0xdd, 0x32, 0x5a, + 0x7b, 0xb5, 0x86, 0x51, 0xcc, 0xa0, 0x22, 0xbc, 0xbc, 0xbf, 0x6d, 0x5a, 0xb7, 0x6b, 0x3b, 0xf6, + 0x1b, 0xcd, 0x96, 0x55, 0x54, 0xd0, 0x55, 0x88, 0x62, 0x0f, 0x8d, 0x9d, 0x5a, 0xab, 0xb5, 0xfd, + 0xfa, 0x76, 0xa3, 0x26, 0x8d, 0x64, 0x51, 0x01, 0x42, 0x63, 0xdf, 0xd8, 0xb5, 0x6c, 0xeb, 0xed, + 0x3d, 0xa3, 0x98, 0xbb, 0xf6, 0x49, 0x0e, 0x2e, 0x35, 0xe4, 0x83, 0x19, 0x97, 0x53, 0xdb, 0xdb, + 0x46, 0x7f, 0x01, 0xb8, 0x90, 0x5e, 0x45, 0x34, 0x43, 0x27, 0x46, 0x4f, 0x4d, 0xe9, 0xc5, 0x99, + 0x72, 0x93, 0xbb, 0x5d, 0xfe, 0x1c, 0x0c, 0x1f, 0xa8, 0x6f, 0x76, 0xaf, 0x1f, 0x76, 0x2a, 0x07, + 0x18, 0x87, 0x95, 0x36, 0xe6, 0xb4, 0x53, 0xf1, 0x59, 0x40, 0x05, 0x8b, 0x5e, 0x5a, 0x9d, 0x00, + 0x5c, 0xe0, 0xc0, 0xc1, 0x91, 0x33, 0xc1, 0xfa, 0x84, 0x57, 0x28, 0xab, 0x84, 0x11, 0x3b, 0x1c, + 0x54, 0x0e, 0x70, 0xb7, 0x12, 0x11, 0xec, 0xdc, 0xfb, 0xf5, 0xf7, 0xaf, 0x94, 0x1b, 0xe5, 0x8d, + 0x74, 0x06, 0xe8, 0xe3, 0x37, 0x8e, 0xeb, 0x1f, 0x8e, 0xd7, 0x1f, 0x4d, 0x8f, 0x0b, 0x3f, 0xf1, + 0xb4, 0x09, 0xd6, 0xd1, 0x4f, 0x00, 0x2e, 0xa7, 0x16, 0x6b, 0x9e, 0xb7, 0x3b, 0x26, 0x3f, 0xbe, + 0x06, 0xbc, 0x3b, 0x7c, 0xa0, 0xaa, 0x17, 0x94, 0x89, 0x1d, 0x9f, 0x06, 0xb2, 0x9a, 0xcd, 0xf2, + 0xf5, 0x0b, 0xaa, 0xe1, 0x03, 0x2e, 0x88, 0x3f, 0x5d, 0x08, 0xf6, 0x3c, 0x3b, 0xe0, 0xf6, 0xa4, + 0x9e, 0x92, 0x7e, 0x74, 0x1f, 0x64, 0x7f, 0xb9, 0x0f, 0x9e, 0xf9, 0x0f, 0x47, 0xcd, 0xf6, 0xfb, + 0xa4, 0x23, 0xee, 0xfd, 0xac, 0x2a, 0x2a, 0xa8, 0x7f, 0x06, 0x8e, 0x4f, 0xb4, 0xcc, 0xc3, 0x13, + 0x2d, 0x73, 0x76, 0xa2, 0x81, 0x8f, 0x87, 0x1a, 0xf8, 0x76, 0xa8, 0x81, 0x1f, 0x87, 0x1a, 0x38, + 0x1e, 0x6a, 0xe0, 0xb7, 0xa1, 0x06, 0xfe, 0x18, 0x6a, 0x99, 0xb3, 0xa1, 0x06, 0xbe, 0x38, 0xd5, + 0x32, 0x47, 0xa7, 0x1a, 0x38, 0x3e, 0xd5, 0x32, 0x0f, 0x4f, 0xb5, 0xcc, 0x3b, 0x7b, 0x2e, 0x0b, + 0xef, 0xba, 0xd5, 0x3e, 0x8b, 0x47, 0x47, 0x84, 0xab, 0x3d, 0xae, 0xcb, 0x45, 0x97, 0x45, 0x7e, + 0x7c, 0x4a, 0x7d, 0xea, 0x90, 0xa8, 0x32, 0x82, 0xf5, 0xb0, 0xed, 0x32, 0x9d, 0x1c, 0x8a, 0x74, + 0x90, 0x5d, 0x30, 0xc7, 0xdb, 0xf3, 0x72, 0x9c, 0x6d, 0xfc, 0x1d, 0x00, 0x00, 0xff, 0xff, 0xd6, + 0xb9, 0xcb, 0x6b, 0xec, 0x07, 0x00, 0x00, } func (x MetricType) String() string { @@ -852,6 +856,11 @@ type CustomDataAPIClient interface { // x-displayName: "Metrics" // App Firewall metrics Metrics(ctx context.Context, in *MetricsRequest, opts ...grpc.CallOption) (*MetricsResponse, error) + // Metrics All Namespaces + // + // x-displayName: "MetricsAllNamespaces" + // App Firewall metrics + MetricsAllNamespaces(ctx context.Context, in *MetricsRequest, opts ...grpc.CallOption) (*MetricsResponse, error) } type customDataAPIClient struct { @@ -871,6 +880,15 @@ func (c *customDataAPIClient) Metrics(ctx context.Context, in *MetricsRequest, o return out, nil } +func (c *customDataAPIClient) MetricsAllNamespaces(ctx context.Context, in *MetricsRequest, opts ...grpc.CallOption) (*MetricsResponse, error) { + out := new(MetricsResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.app_firewall.CustomDataAPI/MetricsAllNamespaces", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // CustomDataAPIServer is the server API for CustomDataAPI service. type CustomDataAPIServer interface { // Metrics @@ -878,6 +896,11 @@ type CustomDataAPIServer interface { // x-displayName: "Metrics" // App Firewall metrics Metrics(context.Context, *MetricsRequest) (*MetricsResponse, error) + // Metrics All Namespaces + // + // x-displayName: "MetricsAllNamespaces" + // App Firewall metrics + MetricsAllNamespaces(context.Context, *MetricsRequest) (*MetricsResponse, error) } // UnimplementedCustomDataAPIServer can be embedded to have forward compatible implementations. @@ -887,6 +910,9 @@ type UnimplementedCustomDataAPIServer struct { func (*UnimplementedCustomDataAPIServer) Metrics(ctx context.Context, req *MetricsRequest) (*MetricsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Metrics not implemented") } +func (*UnimplementedCustomDataAPIServer) MetricsAllNamespaces(ctx context.Context, req *MetricsRequest) (*MetricsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method MetricsAllNamespaces not implemented") +} func RegisterCustomDataAPIServer(s *grpc.Server, srv CustomDataAPIServer) { s.RegisterService(&_CustomDataAPI_serviceDesc, srv) @@ -910,6 +936,24 @@ func _CustomDataAPI_Metrics_Handler(srv interface{}, ctx context.Context, dec fu return interceptor(ctx, in, info, handler) } +func _CustomDataAPI_MetricsAllNamespaces_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MetricsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomDataAPIServer).MetricsAllNamespaces(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.app_firewall.CustomDataAPI/MetricsAllNamespaces", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).MetricsAllNamespaces(ctx, req.(*MetricsRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _CustomDataAPI_serviceDesc = grpc.ServiceDesc{ ServiceName: "ves.io.schema.app_firewall.CustomDataAPI", HandlerType: (*CustomDataAPIServer)(nil), @@ -918,6 +962,10 @@ var _CustomDataAPI_serviceDesc = grpc.ServiceDesc{ MethodName: "Metrics", Handler: _CustomDataAPI_Metrics_Handler, }, + { + MethodName: "MetricsAllNamespaces", + Handler: _CustomDataAPI_MetricsAllNamespaces_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "ves.io/schema/app_firewall/public_custom_data_api.proto", diff --git a/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.gw.go b/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.gw.go index adcfd4a4e..19b922a8f 100644 --- a/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.gw.go +++ b/pbgo/extschema/schema/app_firewall/public_custom_data_api.pb.gw.go @@ -98,6 +98,40 @@ func local_request_CustomDataAPI_Metrics_0(ctx context.Context, marshaler runtim } +func request_CustomDataAPI_MetricsAllNamespaces_0(ctx context.Context, marshaler runtime.Marshaler, client CustomDataAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq MetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.MetricsAllNamespaces(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomDataAPI_MetricsAllNamespaces_0(ctx context.Context, marshaler runtime.Marshaler, server CustomDataAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq MetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.MetricsAllNamespaces(ctx, &protoReq) + return msg, metadata, err + +} + // RegisterCustomDataAPIHandlerServer registers the http handlers for service CustomDataAPI to "mux". // UnaryRPC :call CustomDataAPIServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -123,6 +157,26 @@ func RegisterCustomDataAPIHandlerServer(ctx context.Context, mux *runtime.ServeM }) + mux.Handle("POST", pattern_CustomDataAPI_MetricsAllNamespaces_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomDataAPI_MetricsAllNamespaces_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomDataAPI_MetricsAllNamespaces_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -184,13 +238,37 @@ func RegisterCustomDataAPIHandlerClient(ctx context.Context, mux *runtime.ServeM }) + mux.Handle("POST", pattern_CustomDataAPI_MetricsAllNamespaces_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomDataAPI_MetricsAllNamespaces_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomDataAPI_MetricsAllNamespaces_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } var ( pattern_CustomDataAPI_Metrics_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "namespace", "app_firewall", "metrics"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomDataAPI_MetricsAllNamespaces_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "app_firewall", "all_ns_metrics"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( forward_CustomDataAPI_Metrics_0 = runtime.ForwardResponseMessage + + forward_CustomDataAPI_MetricsAllNamespaces_0 = runtime.ForwardResponseMessage ) diff --git a/pbgo/extschema/schema/app_firewall/public_custom_data_api.vesapi.go b/pbgo/extschema/schema/app_firewall/public_custom_data_api.vesapi.go index 121092411..b2ccb6ef0 100644 --- a/pbgo/extschema/schema/app_firewall/public_custom_data_api.vesapi.go +++ b/pbgo/extschema/schema/app_firewall/public_custom_data_api.vesapi.go @@ -43,6 +43,15 @@ func (c *CustomDataAPIGrpcClient) doRPCMetrics(ctx context.Context, yamlReq stri return rsp, err } +func (c *CustomDataAPIGrpcClient) doRPCMetricsAllNamespaces(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &MetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.app_firewall.MetricsRequest", yamlReq) + } + rsp, err := c.grpcClient.MetricsAllNamespaces(ctx, req, opts...) + return rsp, err +} + func (c *CustomDataAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { rpcFn, exists := c.rpcFns[rpc] if !exists { @@ -75,6 +84,8 @@ func NewCustomDataAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) rpcFns["Metrics"] = ccl.doRPCMetrics + rpcFns["MetricsAllNamespaces"] = ccl.doRPCMetricsAllNamespaces + ccl.rpcFns = rpcFns return ccl @@ -183,6 +194,101 @@ func (c *CustomDataAPIRestClient) doRPCMetrics(ctx context.Context, callOpts *se return pbRsp, nil } +func (c *CustomDataAPIRestClient) doRPCMetricsAllNamespaces(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &MetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.app_firewall.MetricsRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("end_time", fmt.Sprintf("%v", req.EndTime)) + for _, item := range req.FieldSelector { + q.Add("field_selector", fmt.Sprintf("%v", item)) + } + q.Add("filter", fmt.Sprintf("%v", req.Filter)) + for _, item := range req.GroupBy { + q.Add("group_by", fmt.Sprintf("%v", item)) + } + q.Add("is_trend_request", fmt.Sprintf("%v", req.IsTrendRequest)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + q.Add("range", fmt.Sprintf("%v", req.Range)) + q.Add("start_time", fmt.Sprintf("%v", req.StartTime)) + q.Add("step", fmt.Sprintf("%v", req.Step)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &MetricsResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.app_firewall.MetricsResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + func (c *CustomDataAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { rpcFn, exists := c.rpcFns[rpc] if !exists { @@ -209,6 +315,8 @@ func NewCustomDataAPIRestClient(baseURL string, hc http.Client) server.CustomCli rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) rpcFns["Metrics"] = ccl.doRPCMetrics + rpcFns["MetricsAllNamespaces"] = ccl.doRPCMetricsAllNamespaces + ccl.rpcFns = rpcFns return ccl @@ -225,6 +333,10 @@ func (c *customDataAPIInprocClient) Metrics(ctx context.Context, in *MetricsRequ ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.app_firewall.CustomDataAPI.Metrics") return c.CustomDataAPIServer.Metrics(ctx, in) } +func (c *customDataAPIInprocClient) MetricsAllNamespaces(ctx context.Context, in *MetricsRequest, opts ...grpc.CallOption) (*MetricsResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.app_firewall.CustomDataAPI.MetricsAllNamespaces") + return c.CustomDataAPIServer.MetricsAllNamespaces(ctx, in) +} func NewCustomDataAPIInprocClient(svc svcfw.Service) CustomDataAPIClient { return &customDataAPIInprocClient{CustomDataAPIServer: NewCustomDataAPIServer(svc)} @@ -296,6 +408,55 @@ func (s *customDataAPISrv) Metrics(ctx context.Context, in *MetricsRequest) (*Me return rsp, nil } +func (s *customDataAPISrv) MetricsAllNamespaces(ctx context.Context, in *MetricsRequest) (*MetricsResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.app_firewall.CustomDataAPI") + cah, ok := ah.(CustomDataAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomDataAPIServer", ah) + } + + var ( + rsp *MetricsResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.app_firewall.MetricsRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomDataAPI.MetricsAllNamespaces' operation on 'app_firewall'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.app_firewall.CustomDataAPI.MetricsAllNamespaces"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.MetricsAllNamespaces(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.app_firewall.MetricsResponse", rsp)...) + + return rsp, nil +} func NewCustomDataAPIServer(svc svcfw.Service) CustomDataAPIServer { return &customDataAPISrv{svc: svc} @@ -320,6 +481,90 @@ var CustomDataAPISwaggerJSON string = `{ ], "tags": [], "paths": { + "/public/namespaces/system/app_firewall/all_ns_metrics": { + "post": { + "summary": "MetricsAllNamespaces", + "description": "App Firewall metrics", + "operationId": "ves.io.schema.app_firewall.CustomDataAPI.MetricsAllNamespaces", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/app_firewallMetricsResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app_firewallMetricsRequest" + } + } + ], + "tags": [ + "CustomDataAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-app_firewall-customdataapi-metricsallnamespaces" + }, + "x-ves-proto-rpc": "ves.io.schema.app_firewall.CustomDataAPI.MetricsAllNamespaces" + }, + "x-displayname": "Application Firewall Custom Data API", + "x-ves-proto-service": "ves.io.schema.app_firewall.CustomDataAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, "/public/namespaces/{namespace}/app_firewall/metrics": { "post": { "summary": "Metrics", diff --git a/pbgo/extschema/schema/app_setting/crudapi/api.vesapi.go b/pbgo/extschema/schema/app_setting/crudapi/api.vesapi.go index c30edc156..51e1439e9 100644 --- a/pbgo/extschema/schema/app_setting/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/app_setting/crudapi/api.vesapi.go @@ -3558,10 +3558,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_setting/public_crudapi.vesapi.go b/pbgo/extschema/schema/app_setting/public_crudapi.vesapi.go index 364e11aea..db121f86c 100644 --- a/pbgo/extschema/schema/app_setting/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/app_setting/public_crudapi.vesapi.go @@ -3216,10 +3216,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3276,10 +3280,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3338,10 +3346,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_type/crudapi/api.vesapi.go b/pbgo/extschema/schema/app_type/crudapi/api.vesapi.go index aa83ce9a9..0541de7d6 100644 --- a/pbgo/extschema/schema/app_type/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/app_type/crudapi/api.vesapi.go @@ -3453,10 +3453,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_type/public_crudapi.vesapi.go b/pbgo/extschema/schema/app_type/public_crudapi.vesapi.go index ac0c59877..3eb69b13d 100644 --- a/pbgo/extschema/schema/app_type/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/app_type/public_crudapi.vesapi.go @@ -3161,10 +3161,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3221,10 +3225,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3327,10 +3335,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/app_type/types.pb.go b/pbgo/extschema/schema/app_type/types.pb.go index b678302eb..3402a11ec 100644 --- a/pbgo/extschema/schema/app_type/types.pb.go +++ b/pbgo/extschema/schema/app_type/types.pb.go @@ -554,8 +554,8 @@ type BusinessLogicMarkupSetting struct { // Include or Exclude data in machine learning from traffic with redirect response in API Discovery // // x-displayName: "Learn from Traffic with Redirect Response" - // By default, API Discovery only learns API Endpoints and patterns from traffic with response code 200 - // On enabling this, the AI engine will learn API Endpoints from traffic with response code 3xx in addition to 200 + // By default, API Discovery only learns API Endpoints and patterns from traffic with response code 2xx + // On enabling this, the AI engine will learn API Endpoints from traffic with response code 3xx in addition to 2xx // // Types that are valid to be assigned to LearnFromRedirectTraffic: // *BusinessLogicMarkupSetting_Disable diff --git a/pbgo/extschema/schema/authentication/crudapi/api.vesapi.go b/pbgo/extschema/schema/authentication/crudapi/api.vesapi.go index 22964d00d..f57a29c19 100644 --- a/pbgo/extschema/schema/authentication/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/authentication/crudapi/api.vesapi.go @@ -3417,10 +3417,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/authentication/object.pb.go b/pbgo/extschema/schema/authentication/object.pb.go index bded15988..7f6f8b1cb 100644 --- a/pbgo/extschema/schema/authentication/object.pb.go +++ b/pbgo/extschema/schema/authentication/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_bab3b536268d2607 = []byte{ - // 584 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0xd4, 0x4e, - 0x18, 0xc7, 0x3b, 0xbb, 0x64, 0x21, 0x03, 0xe1, 0xc7, 0xaf, 0x5e, 0x2a, 0xe2, 0x84, 0xac, 0x89, - 0xc1, 0x84, 0x4e, 0x0d, 0xc6, 0x28, 0xc4, 0x78, 0x00, 0x0d, 0x17, 0x88, 0xba, 0x78, 0xf2, 0x42, - 0xa6, 0xb3, 0xcf, 0x76, 0x47, 0xb7, 0x3b, 0xcd, 0xcc, 0xb4, 0xb2, 0x07, 0x13, 0x5f, 0x02, 0xaf, - 0xc1, 0x93, 0x31, 0xf1, 0x3d, 0x88, 0x27, 0x8f, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0x3c, 0x19, 0xde, - 0x80, 0x89, 0xd9, 0x29, 0x25, 0x94, 0x6c, 0x88, 0xe1, 0x36, 0x93, 0xe7, 0xf3, 0xfd, 0x76, 0x9e, - 0x7f, 0xc5, 0xf7, 0x32, 0xd0, 0x54, 0xc8, 0x40, 0xf3, 0x2e, 0xc4, 0x2c, 0x60, 0xa9, 0xe9, 0x42, - 0xdf, 0x08, 0xce, 0x8c, 0x90, 0xfd, 0x40, 0x86, 0x6f, 0x81, 0x1b, 0x9a, 0x28, 0x69, 0xa4, 0xbb, - 0x50, 0xa0, 0xb4, 0x40, 0x69, 0x15, 0x9d, 0xf7, 0x23, 0x61, 0xba, 0x69, 0x48, 0xb9, 0x8c, 0x83, - 0x48, 0x46, 0x32, 0xb0, 0xa2, 0x30, 0xed, 0xd8, 0x9b, 0xbd, 0xd8, 0x53, 0x61, 0x36, 0xbf, 0x74, - 0xe5, 0x77, 0xcd, 0x20, 0x01, 0x7d, 0x46, 0xde, 0xaa, 0x92, 0x32, 0x19, 0x11, 0x65, 0xf0, 0x66, - 0x35, 0x78, 0x51, 0xd7, 0xac, 0x86, 0x32, 0xd0, 0xd0, 0xcf, 0xaa, 0xf2, 0xe6, 0x9f, 0x3a, 0x6e, - 0xbc, 0xb0, 0x39, 0xba, 0xab, 0x78, 0x2a, 0x06, 0xc3, 0xda, 0xcc, 0x30, 0x0f, 0x2d, 0xa2, 0xa5, - 0xe9, 0x95, 0xdb, 0xb4, 0x9a, 0x70, 0x01, 0x6e, 0x83, 0x61, 0xaf, 0x07, 0x09, 0xb4, 0xce, 0x71, - 0x77, 0x0b, 0xff, 0xa7, 0x07, 0xda, 0x40, 0xbc, 0x7b, 0xee, 0x50, 0xb3, 0x0e, 0x77, 0x2e, 0x39, - 0xec, 0x58, 0xea, 0x92, 0xcf, 0x6c, 0xa1, 0xdd, 0x2e, 0xdd, 0xd6, 0xf0, 0x84, 0x4e, 0x80, 0x7b, - 0x75, 0x6b, 0x71, 0x97, 0x5e, 0x55, 0x75, 0xba, 0x93, 0x00, 0xb7, 0x2e, 0x56, 0xb3, 0xf6, 0xb5, - 0xf6, 0xfd, 0xc0, 0xab, 0xcd, 0xa1, 0xa3, 0x03, 0xef, 0x53, 0x0d, 0x3f, 0xc2, 0xf5, 0x4d, 0x30, - 0xee, 0xfd, 0xce, 0xc3, 0x3d, 0xee, 0x6b, 0xe0, 0xa9, 0x82, 0x18, 0x74, 0xd7, 0x0f, 0x99, 0x16, - 0xdc, 0x8f, 0x65, 0x5f, 0x18, 0xa9, 0x96, 0x17, 0x33, 0xd0, 0xbe, 0x90, 0x7e, 0xa2, 0xe4, 0xde, - 0xc0, 0x57, 0xc0, 0xda, 0x78, 0x15, 0x4f, 0xb6, 0x20, 0xe9, 0x31, 0x0e, 0x2e, 0x1d, 0x2f, 0x4e, - 0x35, 0x5c, 0x56, 0xbe, 0x57, 0xc2, 0x00, 0x7e, 0x8c, 0x1b, 0x1b, 0x0a, 0x98, 0xb9, 0x96, 0xf2, - 0x19, 0xf4, 0xe0, 0x5a, 0xca, 0x89, 0x2d, 0xa1, 0xaf, 0x91, 0x68, 0xf3, 0x15, 0x9e, 0x2a, 0x2b, - 0xe8, 0x3e, 0xc7, 0x93, 0x11, 0xdf, 0xb5, 0xa5, 0x2f, 0xba, 0xb7, 0x7c, 0x75, 0xe9, 0x37, 0x7b, - 0x32, 0x64, 0xbd, 0xf3, 0x06, 0x34, 0x22, 0x3e, 0x3a, 0x37, 0x7f, 0x23, 0x3c, 0xb3, 0x63, 0x98, - 0x49, 0xf5, 0x3f, 0x0f, 0x56, 0x81, 0x8f, 0x19, 0xac, 0x97, 0x78, 0xba, 0xd8, 0xc0, 0x5d, 0x05, - 0x1d, 0xed, 0xd5, 0x16, 0xeb, 0x4b, 0xd3, 0x2b, 0x0b, 0x63, 0xc7, 0xb2, 0x05, 0x9d, 0x91, 0x78, - 0xfd, 0xff, 0x2f, 0x1f, 0x66, 0xab, 0x0f, 0x6d, 0x61, 0x59, 0x12, 0xda, 0x7d, 0x82, 0x31, 0x97, - 0xfd, 0xb6, 0xb0, 0x4b, 0xe0, 0xd5, 0xc7, 0x1a, 0x6e, 0x94, 0x80, 0x7d, 0xcd, 0x05, 0x7e, 0xed, - 0xc6, 0xd1, 0xd3, 0x39, 0x3c, 0x8b, 0x67, 0xca, 0x07, 0xd2, 0x54, 0xb4, 0xd7, 0xf7, 0xd1, 0xe1, - 0x09, 0x71, 0x8e, 0x4f, 0x88, 0x73, 0x7a, 0x42, 0xd0, 0xc7, 0x9c, 0xa0, 0xcf, 0x39, 0x41, 0x3f, - 0x72, 0x82, 0x0e, 0x73, 0x82, 0x8e, 0x73, 0x82, 0x7e, 0xe6, 0x04, 0xfd, 0xca, 0x89, 0x73, 0x9a, - 0x13, 0xb4, 0x3f, 0x24, 0xce, 0xb7, 0x21, 0x41, 0x87, 0x43, 0xe2, 0x1c, 0x0f, 0x89, 0xf3, 0xa6, - 0x15, 0xc9, 0xe4, 0x5d, 0x44, 0x33, 0xd9, 0x33, 0xa0, 0x14, 0xa3, 0xa9, 0x0e, 0xec, 0xa1, 0x23, - 0x55, 0x3c, 0x6a, 0x55, 0x26, 0xda, 0xa0, 0xfc, 0x32, 0x1c, 0x24, 0x61, 0x24, 0x03, 0xd8, 0x33, - 0x67, 0x5b, 0x3d, 0xf6, 0xf7, 0x11, 0x36, 0xec, 0x76, 0x3f, 0xf8, 0x1b, 0x00, 0x00, 0xff, 0xff, - 0x87, 0x09, 0x4c, 0x3b, 0xdd, 0x04, 0x00, 0x00, + // 600 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0x80, 0x77, 0x58, 0x5c, 0xc8, 0x40, 0x10, 0xeb, 0x65, 0x45, 0x9c, 0x90, 0x35, 0x31, 0x98, + 0xd0, 0x36, 0xc1, 0x78, 0x90, 0x18, 0x0f, 0xa0, 0xe1, 0x02, 0x51, 0x8b, 0x89, 0xca, 0x85, 0x4c, + 0xa7, 0x6f, 0xbb, 0xa3, 0xdb, 0x4e, 0x33, 0x33, 0xad, 0xec, 0xc1, 0xc4, 0x9f, 0xc0, 0x2f, 0xf0, + 0x6c, 0xfc, 0x15, 0xa2, 0x17, 0x4f, 0x86, 0x70, 0xe2, 0x28, 0xdd, 0x8b, 0x27, 0xc3, 0x4f, 0x30, + 0x3b, 0xa5, 0x48, 0xc9, 0x66, 0xe3, 0x41, 0x6e, 0xd3, 0xbc, 0xef, 0x7d, 0x7d, 0x33, 0xf3, 0xe6, + 0xe1, 0xbb, 0x19, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x0e, 0x44, 0xd4, 0xa5, 0xa9, 0xee, 0x40, 0xac, + 0x39, 0xa3, 0x9a, 0x8b, 0xd8, 0x15, 0xfe, 0x1b, 0x60, 0xda, 0x49, 0xa4, 0xd0, 0xc2, 0x9a, 0x2f, + 0x50, 0xa7, 0x40, 0x9d, 0x2a, 0x3a, 0x67, 0x87, 0x5c, 0x77, 0x52, 0xdf, 0x61, 0x22, 0x72, 0x43, + 0x11, 0x0a, 0xd7, 0x24, 0xf9, 0x69, 0xdb, 0x7c, 0x99, 0x0f, 0xb3, 0x2a, 0x64, 0x73, 0x8b, 0x23, + 0xff, 0xab, 0x7b, 0x09, 0xa8, 0x53, 0xf2, 0x66, 0x95, 0x14, 0xc9, 0x80, 0x28, 0x83, 0x37, 0xaa, + 0xc1, 0xf3, 0x79, 0xad, 0x6a, 0x28, 0x03, 0x05, 0x71, 0x56, 0x4d, 0x6f, 0x7d, 0xbc, 0x82, 0x1b, + 0x4f, 0xcd, 0x1e, 0xad, 0x07, 0x78, 0x32, 0x02, 0x4d, 0x03, 0xaa, 0x69, 0x13, 0x2d, 0xa0, 0xc5, + 0xa9, 0xe5, 0x5b, 0x4e, 0x75, 0xc3, 0x05, 0xb8, 0x09, 0x9a, 0xbe, 0xe8, 0x25, 0xe0, 0x9d, 0xe1, + 0xd6, 0x06, 0xbe, 0xaa, 0x7a, 0x4a, 0x43, 0xb4, 0x73, 0x66, 0x18, 0x33, 0x86, 0xdb, 0x17, 0x0c, + 0x5b, 0x86, 0xba, 0xe0, 0x99, 0x29, 0x72, 0x37, 0x4b, 0xdb, 0x0a, 0x1e, 0x57, 0x09, 0xb0, 0x66, + 0xdd, 0x28, 0xee, 0x38, 0xa3, 0x4e, 0xdd, 0xd9, 0x4a, 0x80, 0x19, 0x8b, 0xc9, 0x59, 0xf9, 0x51, + 0xff, 0xba, 0xdf, 0x1c, 0x9b, 0x45, 0x87, 0xfb, 0xcd, 0x6f, 0x75, 0xfc, 0x1a, 0xd7, 0xd7, 0x41, + 0x5b, 0x5e, 0xfb, 0xfe, 0x2e, 0xb3, 0x15, 0xb0, 0x54, 0x42, 0x04, 0xaa, 0x63, 0xfb, 0x54, 0x71, + 0x66, 0x47, 0x22, 0xe6, 0x5a, 0xc8, 0xa5, 0x85, 0x8b, 0x61, 0xa5, 0x69, 0x1c, 0x50, 0x19, 0xfc, + 0x25, 0x32, 0x50, 0x36, 0x17, 0x76, 0x22, 0xc5, 0x6e, 0xcf, 0x96, 0x40, 0x03, 0xfc, 0x0a, 0x4f, + 0x78, 0x90, 0x74, 0x29, 0x03, 0x6b, 0x73, 0xb8, 0x3e, 0x55, 0x30, 0xca, 0x5d, 0x84, 0x2b, 0xe2, + 0x77, 0x92, 0x6b, 0xc0, 0x2f, 0x71, 0x63, 0x4d, 0x02, 0xd5, 0x97, 0x21, 0x7e, 0x0c, 0x5d, 0xf8, + 0xff, 0xe2, 0x6d, 0x3c, 0xbe, 0xc1, 0xd5, 0xa5, 0x9c, 0x73, 0xeb, 0x39, 0x9e, 0x2c, 0xaf, 0xd8, + 0x7a, 0x82, 0x27, 0x42, 0xb6, 0x63, 0x7a, 0xa3, 0x68, 0xaf, 0xa5, 0xd1, 0xbd, 0xb1, 0xde, 0x15, + 0x3e, 0xed, 0x9e, 0x75, 0x48, 0x23, 0x64, 0x83, 0x75, 0xeb, 0x37, 0xc2, 0xd3, 0x5b, 0x9a, 0xea, + 0x54, 0xfd, 0x73, 0xe7, 0x17, 0xf8, 0x90, 0xce, 0x7f, 0x86, 0xa7, 0x8a, 0x11, 0xb1, 0x23, 0xa1, + 0xad, 0x9a, 0x63, 0x0b, 0xf5, 0xc5, 0xa9, 0xe5, 0xf9, 0xa1, 0xef, 0xc6, 0x83, 0xf6, 0x20, 0x79, + 0xf5, 0xda, 0xe7, 0xf7, 0x33, 0xd5, 0x42, 0x3d, 0x2c, 0x4a, 0x42, 0x59, 0x0f, 0x31, 0x66, 0x22, + 0x0e, 0xb8, 0x79, 0xa5, 0xcd, 0xfa, 0x50, 0xe1, 0x5a, 0x09, 0x98, 0x6a, 0xce, 0xf1, 0x2b, 0xd7, + 0x0f, 0x1f, 0xcd, 0xe2, 0x19, 0x3c, 0x5d, 0x16, 0xe8, 0xa4, 0x3c, 0x58, 0xdd, 0x43, 0x07, 0xc7, + 0xa4, 0x76, 0x74, 0x4c, 0x6a, 0x27, 0xc7, 0x04, 0x7d, 0xc8, 0x09, 0xfa, 0x94, 0x13, 0xf4, 0x3d, + 0x27, 0xe8, 0x20, 0x27, 0xe8, 0x28, 0x27, 0xe8, 0x67, 0x4e, 0xd0, 0xaf, 0x9c, 0xd4, 0x4e, 0x72, + 0x82, 0xf6, 0xfa, 0xa4, 0xf6, 0xa5, 0x4f, 0xd0, 0x41, 0x9f, 0xd4, 0x8e, 0xfa, 0xa4, 0xb6, 0xed, + 0x85, 0x22, 0x79, 0x1b, 0x3a, 0x99, 0xe8, 0x6a, 0x90, 0x92, 0x3a, 0xa9, 0x72, 0xcd, 0xa2, 0x2d, + 0x64, 0x34, 0xb8, 0xaa, 0x8c, 0x07, 0x20, 0xed, 0x32, 0xec, 0x26, 0x7e, 0x28, 0x5c, 0xd8, 0xd5, + 0xa7, 0x63, 0x67, 0xe8, 0x7c, 0xf3, 0x1b, 0x66, 0xfc, 0xdc, 0xfb, 0x13, 0x00, 0x00, 0xff, 0xff, + 0xeb, 0x1f, 0x3c, 0xaa, 0x7e, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/authentication/public_crudapi.pb.go b/pbgo/extschema/schema/authentication/public_crudapi.pb.go index 2e33e98d6..ad50d8e15 100644 --- a/pbgo/extschema/schema/authentication/public_crudapi.pb.go +++ b/pbgo/extschema/schema/authentication/public_crudapi.pb.go @@ -1058,108 +1058,109 @@ func init() { } var fileDescriptor_58388342fe0821a2 = []byte{ - // 1603 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x68, 0x1b, 0xc7, - 0x17, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xb1, 0x99, 0x7f, 0xe2, 0xc8, 0xfa, 0xbb, 0x42, 0x55, - 0x42, 0xb1, 0xdd, 0x68, 0x95, 0x3a, 0x84, 0x34, 0x26, 0x24, 0x95, 0x6d, 0xd9, 0x38, 0x75, 0xec, - 0x74, 0xa4, 0x84, 0x52, 0x0a, 0xcb, 0x6a, 0x35, 0x92, 0xb7, 0x91, 0xb4, 0x9b, 0x9d, 0x91, 0x1c, - 0x51, 0x0c, 0x25, 0x85, 0x9e, 0x0b, 0x6d, 0xa1, 0x94, 0x1c, 0x7a, 0x29, 0xf4, 0xd4, 0x73, 0xc1, - 0x17, 0x1f, 0x0a, 0x09, 0xa1, 0x14, 0xd3, 0x5e, 0x7c, 0x6c, 0xe4, 0x1e, 0x72, 0xe8, 0x21, 0xf4, - 0xd8, 0x53, 0xd9, 0x99, 0x5d, 0x45, 0x92, 0x15, 0x45, 0x72, 0x7c, 0xd2, 0xce, 0xbc, 0xf7, 0x7e, - 0xf3, 0x7e, 0xf3, 0x3e, 0xf6, 0x69, 0xe1, 0x3b, 0x35, 0x42, 0x65, 0xdd, 0x48, 0x52, 0x6d, 0x93, - 0x94, 0xd5, 0xa4, 0x5a, 0x65, 0x9b, 0xa4, 0xc2, 0x74, 0x4d, 0x65, 0xba, 0x51, 0x49, 0x9a, 0xd5, - 0x5c, 0x49, 0xd7, 0x14, 0xcd, 0xaa, 0xe6, 0x55, 0x53, 0x97, 0x4d, 0xcb, 0x60, 0x06, 0x9a, 0x12, - 0x26, 0xb2, 0x30, 0x91, 0xdb, 0x4d, 0x22, 0x89, 0xa2, 0xce, 0x36, 0xab, 0x39, 0x59, 0x33, 0xca, - 0xc9, 0xa2, 0x51, 0x34, 0x92, 0xdc, 0x28, 0x57, 0x2d, 0xf0, 0x15, 0x5f, 0xf0, 0x27, 0x01, 0x16, - 0x99, 0x2a, 0x1a, 0x46, 0xb1, 0x44, 0x92, 0xaa, 0xa9, 0x27, 0xd5, 0x4a, 0xc5, 0x60, 0x1c, 0x85, - 0x3a, 0xd2, 0xff, 0x3b, 0xd2, 0x26, 0x06, 0x29, 0x9b, 0xac, 0xee, 0x08, 0x67, 0x7a, 0xba, 0x6e, - 0xe4, 0x3e, 0x21, 0x1a, 0x73, 0x54, 0xa7, 0x7b, 0xaa, 0xb2, 0xba, 0x49, 0xdc, 0x13, 0x23, 0xed, - 0x9a, 0xc4, 0xb2, 0x0c, 0xab, 0xe9, 0x4d, 0xbb, 0xcc, 0x30, 0x5b, 0x5d, 0x9d, 0x6c, 0x17, 0xb6, - 0x62, 0xc6, 0xdb, 0x45, 0x35, 0x42, 0x49, 0xa5, 0xd6, 0x61, 0x1e, 0xeb, 0xd0, 0xd1, 0xc9, 0x96, - 0xd2, 0xa6, 0x11, 0xff, 0x09, 0xc0, 0xd1, 0x45, 0x8b, 0xa8, 0x8c, 0x60, 0x72, 0xaf, 0x4a, 0x28, - 0x43, 0xd7, 0x61, 0xa0, 0x4c, 0x98, 0x9a, 0x57, 0x99, 0x1a, 0x06, 0x31, 0x30, 0x1d, 0x9a, 0x3b, - 0x2b, 0xb7, 0xc7, 0x66, 0x83, 0x5f, 0x82, 0xb0, 0xba, 0x49, 0x98, 0x9a, 0xad, 0x9b, 0x04, 0x37, - 0x8d, 0xd0, 0x07, 0xd0, 0x47, 0x4d, 0xa2, 0x85, 0x3d, 0xdc, 0xf8, 0xbc, 0xdc, 0x2b, 0xb0, 0xb2, - 0x40, 0xc9, 0x98, 0x44, 0xb3, 0x51, 0x16, 0xc6, 0xbf, 0xdb, 0x1e, 0xb1, 0x8d, 0xe5, 0xa2, 0xa6, - 0xd8, 0xbf, 0x98, 0x43, 0xcd, 0x07, 0x9f, 0x5c, 0xf3, 0x8b, 0x53, 0xe3, 0xff, 0x02, 0x38, 0xe6, - 0x3a, 0x4c, 0x4d, 0xa3, 0x42, 0x09, 0xba, 0x7a, 0xc8, 0xe3, 0x58, 0x57, 0x8f, 0x57, 0x08, 0xeb, - 0xe2, 0xee, 0x06, 0x1c, 0xa7, 0x75, 0xca, 0x48, 0x59, 0x69, 0x82, 0x78, 0x39, 0xc8, 0x5b, 0x1d, - 0x20, 0x19, 0xae, 0x75, 0x18, 0x6a, 0x4c, 0x98, 0xdf, 0x74, 0x01, 0xd7, 0xdb, 0xf8, 0xcf, 0xf4, - 0xe6, 0xbf, 0x42, 0xd8, 0x00, 0xe4, 0x1b, 0x00, 0x8e, 0x61, 0x62, 0x96, 0x54, 0xad, 0x19, 0xae, - 0xf7, 0x0e, 0x91, 0x3f, 0xd7, 0x95, 0xbc, 0x63, 0xd6, 0xe5, 0x02, 0x70, 0x9b, 0xbf, 0x89, 0xde, - 0xfe, 0x3a, 0x30, 0xaf, 0xf0, 0x19, 0x25, 0xa1, 0x64, 0x11, 0x6a, 0x54, 0x2d, 0x8d, 0x28, 0x35, - 0x62, 0x51, 0xdd, 0xa8, 0xf0, 0x5b, 0x0d, 0x2e, 0xf8, 0x9e, 0xed, 0x00, 0x80, 0xc7, 0x5d, 0xe9, - 0x1d, 0x21, 0x6c, 0x25, 0x79, 0x12, 0x8e, 0x37, 0x39, 0x8a, 0x08, 0xc7, 0x1f, 0x02, 0x08, 0x57, - 0x08, 0x73, 0x39, 0x4f, 0xc1, 0x60, 0x45, 0x2d, 0x13, 0x6a, 0xaa, 0x1a, 0xe1, 0xa4, 0x83, 0xf8, - 0xc5, 0x06, 0x42, 0xd0, 0x67, 0x2f, 0x38, 0x9f, 0x20, 0xe6, 0xcf, 0xe8, 0x63, 0x68, 0x9f, 0xc8, - 0xc1, 0x94, 0x82, 0x61, 0x95, 0x55, 0xc6, 0xdd, 0x19, 0x9b, 0xbb, 0xf8, 0xca, 0xf0, 0xb8, 0x4e, - 0x2c, 0x73, 0xb3, 0x45, 0x23, 0x4f, 0xf0, 0x98, 0xd5, 0xb6, 0x17, 0xff, 0xc6, 0x0f, 0x43, 0x2d, - 0x9a, 0x68, 0x0d, 0x86, 0x34, 0x9e, 0xa2, 0xfc, 0x2c, 0xe7, 0x62, 0xdf, 0xee, 0xa7, 0x10, 0x1c, - 0x86, 0x18, 0x0a, 0x7b, 0x1b, 0x1f, 0x6d, 0xc0, 0x11, 0x4b, 0xdc, 0x87, 0x80, 0xf3, 0xf6, 0x53, - 0x57, 0xed, 0x59, 0x82, 0x43, 0x0e, 0x02, 0x07, 0xec, 0x16, 0x1c, 0x5f, 0x8f, 0xe0, 0xb4, 0x15, - 0xd8, 0xf0, 0x71, 0x14, 0xd8, 0x89, 0x63, 0x29, 0x30, 0xff, 0xf1, 0x14, 0x18, 0x5a, 0x85, 0x7e, - 0xca, 0x54, 0x56, 0xa5, 0xe1, 0xef, 0x1f, 0x82, 0x98, 0x77, 0x3a, 0x34, 0x37, 0xdb, 0x1b, 0x33, - 0xc3, 0xb5, 0x85, 0xa3, 0x0b, 0xde, 0xdd, 0x6d, 0x80, 0x1d, 0x00, 0xb4, 0x0a, 0x4f, 0x5a, 0xa4, - 0x40, 0x2c, 0x4b, 0xaf, 0x14, 0x15, 0xf1, 0xb2, 0xa0, 0xe1, 0x00, 0xc7, 0x9c, 0x7a, 0x49, 0x59, - 0x16, 0x38, 0x47, 0xa9, 0x69, 0x26, 0xf6, 0x29, 0xba, 0x03, 0xc3, 0x79, 0x52, 0x22, 0x8c, 0xe4, - 0x15, 0x21, 0x23, 0xf9, 0x26, 0x62, 0xb0, 0x0f, 0xc4, 0x09, 0xc7, 0x1a, 0x3b, 0xc6, 0x2e, 0xee, - 0x87, 0x70, 0x32, 0xaf, 0x53, 0x35, 0x57, 0xea, 0x06, 0x0c, 0xfb, 0x00, 0x3e, 0xe3, 0x9a, 0x77, - 0x20, 0xb7, 0xd4, 0xf0, 0x0d, 0x5f, 0x00, 0x48, 0x9e, 0xf8, 0x0f, 0x00, 0x86, 0xd6, 0x74, 0xda, - 0x67, 0xdd, 0xbe, 0x09, 0x47, 0x4a, 0x6a, 0x8e, 0x94, 0x94, 0x82, 0x5e, 0x62, 0xc4, 0x72, 0xea, - 0x37, 0xc4, 0xf7, 0x96, 0xf9, 0x16, 0x3a, 0x0b, 0x47, 0x2d, 0x62, 0x1a, 0x16, 0x53, 0x0a, 0x3a, - 0x29, 0xe5, 0x69, 0xd8, 0x1b, 0xf3, 0x4e, 0x07, 0xf1, 0x88, 0xd8, 0x5c, 0xe6, 0x7b, 0xe8, 0x02, - 0x3c, 0xe5, 0x28, 0x89, 0xa0, 0xb8, 0xba, 0x3e, 0xae, 0x8b, 0x84, 0x4c, 0x84, 0x50, 0x58, 0xc4, - 0x7f, 0xf1, 0x43, 0x49, 0xf8, 0x29, 0x0a, 0x78, 0x95, 0x91, 0x32, 0x9a, 0x80, 0x7e, 0x46, 0x2a, - 0x6a, 0x85, 0xf1, 0x3c, 0x0b, 0x62, 0x67, 0x75, 0x84, 0xe6, 0x23, 0x41, 0x6f, 0x55, 0xcf, 0x8b, - 0xfe, 0x87, 0xed, 0x47, 0x14, 0x83, 0xa1, 0x3c, 0xa1, 0x9a, 0xa5, 0xf3, 0x77, 0x71, 0x38, 0x24, - 0x98, 0xb6, 0x6c, 0xa1, 0x08, 0x0c, 0xb8, 0xd7, 0x1c, 0x1e, 0x89, 0x81, 0xe9, 0x00, 0x6e, 0xae, - 0x11, 0x86, 0x7e, 0x7e, 0x29, 0x82, 0x52, 0x68, 0x6e, 0xbe, 0x77, 0xb6, 0x76, 0x32, 0x93, 0xd7, - 0xb8, 0x71, 0xba, 0xc2, 0xac, 0x3a, 0x76, 0x90, 0x90, 0x0a, 0x43, 0x2d, 0x83, 0x92, 0x93, 0x07, - 0xd7, 0x07, 0x04, 0x4e, 0xbd, 0x40, 0x10, 0xe8, 0xad, 0x98, 0xe8, 0x0a, 0x84, 0xc6, 0x56, 0x85, - 0x58, 0x8a, 0x3d, 0x86, 0x84, 0x83, 0xbc, 0x78, 0x23, 0x1d, 0x27, 0xdc, 0xd1, 0xc9, 0x96, 0x9b, - 0x67, 0x41, 0xae, 0x6d, 0xef, 0xb4, 0x35, 0xa0, 0xd1, 0xe3, 0x68, 0x40, 0x63, 0xaf, 0xd5, 0x80, - 0x96, 0x60, 0xa0, 0x48, 0x18, 0x6f, 0x21, 0x4e, 0x2b, 0xeb, 0xbf, 0x09, 0xe1, 0x13, 0x45, 0xb1, - 0x40, 0xeb, 0x10, 0x3a, 0x09, 0x4a, 0x09, 0x73, 0x9a, 0xc4, 0xc0, 0x8d, 0x27, 0x28, 0x20, 0x32, - 0x84, 0x45, 0xae, 0xc0, 0x50, 0x4b, 0x64, 0xed, 0xac, 0xbb, 0x4b, 0xea, 0x4e, 0x86, 0xda, 0x8f, - 0xe8, 0x14, 0x1c, 0xae, 0xa9, 0xa5, 0xaa, 0x9b, 0x9c, 0x62, 0x31, 0xef, 0x79, 0x17, 0x44, 0xae, - 0x41, 0xa9, 0x33, 0x76, 0x83, 0xd8, 0xdf, 0xf0, 0x05, 0x86, 0x25, 0x7f, 0xfc, 0x0b, 0x00, 0x47, - 0x5a, 0x73, 0x02, 0x2d, 0xc1, 0x61, 0x9d, 0x91, 0x32, 0x0d, 0x8b, 0xae, 0x2a, 0x0f, 0x96, 0x4e, - 0x58, 0x18, 0xa3, 0x0b, 0xd0, 0x2f, 0x06, 0xe6, 0xb0, 0x87, 0xc3, 0x84, 0x3b, 0x60, 0xd2, 0xb6, - 0x90, 0x5f, 0xad, 0xa3, 0x17, 0xbf, 0x0b, 0x47, 0x97, 0x78, 0xf3, 0x3b, 0xfa, 0xc0, 0x30, 0x0d, - 0xa5, 0x82, 0xaa, 0x97, 0x14, 0xbd, 0xd0, 0x6c, 0x92, 0xbc, 0x80, 0x03, 0x78, 0xcc, 0xde, 0x5f, - 0x2d, 0xb8, 0xcd, 0x6f, 0xf6, 0x1f, 0x00, 0x4f, 0x77, 0x1d, 0x13, 0x50, 0x04, 0x4e, 0xac, 0xa4, - 0xb3, 0x0a, 0xce, 0xdc, 0x52, 0x96, 0x37, 0xf0, 0xcd, 0x54, 0x56, 0x59, 0x4a, 0x2f, 0xa7, 0x6e, - 0xaf, 0x65, 0xa5, 0x21, 0xf4, 0x06, 0x9c, 0xec, 0x90, 0x2d, 0x6f, 0x60, 0x65, 0x11, 0xa7, 0x53, - 0xd9, 0xb4, 0x04, 0x50, 0x14, 0x46, 0xba, 0x88, 0x71, 0xfa, 0xd6, 0x5a, 0x6a, 0x31, 0x2d, 0x79, - 0xd0, 0x24, 0x3c, 0xdd, 0x21, 0xcf, 0x64, 0x53, 0xd9, 0xdb, 0x19, 0xc9, 0x8b, 0xce, 0xc0, 0xff, - 0x75, 0x88, 0x70, 0x3a, 0xb5, 0x24, 0xf9, 0xd0, 0x39, 0x18, 0x3b, 0x24, 0x58, 0x4e, 0x63, 0xbc, - 0xba, 0xbe, 0xa2, 0x6c, 0x2c, 0xdc, 0x48, 0x2f, 0x66, 0x33, 0xd2, 0x70, 0x17, 0xad, 0x05, 0xbc, - 0xf1, 0x7e, 0x7a, 0x5d, 0x28, 0xa7, 0xd7, 0x17, 0xd3, 0x19, 0xc9, 0x3f, 0xf7, 0x6d, 0x10, 0x7a, - 0x53, 0xb7, 0x56, 0xd1, 0x3e, 0x80, 0x7e, 0x31, 0xb9, 0xa0, 0x41, 0xe6, 0x9b, 0xc8, 0xf9, 0xfe, - 0x94, 0x9d, 0xf1, 0x8f, 0x36, 0x1e, 0x85, 0x13, 0x85, 0x4b, 0xf7, 0xb5, 0x04, 0x25, 0x5a, 0xd5, - 0x22, 0x65, 0x42, 0x37, 0x13, 0x39, 0x95, 0xea, 0x5a, 0xa2, 0x4a, 0x89, 0x75, 0xbe, 0x46, 0x68, - 0x42, 0x37, 0x12, 0xa6, 0x65, 0xdc, 0xaf, 0x27, 0xb6, 0x2c, 0x9d, 0x91, 0x07, 0x7f, 0xfc, 0xf5, - 0x95, 0xe7, 0x6a, 0xfc, 0xb2, 0xf3, 0x5f, 0x33, 0xd9, 0x0c, 0x36, 0x4d, 0x7e, 0xea, 0x36, 0x01, - 0xb9, 0xb9, 0xb9, 0xdd, 0xf1, 0xdf, 0x8d, 0xce, 0x83, 0x59, 0xb4, 0x07, 0xa0, 0x77, 0x85, 0x30, - 0x34, 0xdd, 0xc7, 0x84, 0x28, 0x48, 0xcd, 0xf4, 0x3d, 0x4b, 0xc6, 0xd9, 0xe3, 0x9f, 0x3d, 0xa0, - 0xf1, 0x28, 0x9c, 0xec, 0xce, 0xaa, 0x6c, 0x54, 0x74, 0x66, 0x74, 0x10, 0xb3, 0x88, 0x9a, 0xe7, - 0xbc, 0x2e, 0xa3, 0x4b, 0xdd, 0x78, 0xbd, 0x9c, 0x8e, 0x90, 0x6d, 0xa3, 0x5f, 0x01, 0xf4, 0xd9, - 0x55, 0x86, 0x66, 0xfa, 0xa9, 0x44, 0x41, 0x6a, 0xb6, 0xff, 0xa2, 0x8d, 0x97, 0x5f, 0x87, 0xd5, - 0x05, 0x24, 0x0f, 0xc6, 0x0a, 0xfd, 0x0d, 0xe0, 0x09, 0x67, 0xce, 0x45, 0x03, 0x8d, 0xc3, 0x91, - 0x44, 0x9f, 0xda, 0x0e, 0xaf, 0xcf, 0xc1, 0xd1, 0x12, 0x70, 0x2d, 0xb2, 0x72, 0xc4, 0x04, 0xec, - 0x50, 0xda, 0xb6, 0x13, 0x72, 0x17, 0x40, 0xbf, 0x68, 0x6b, 0xaf, 0xaa, 0xb5, 0xb6, 0xe6, 0x17, - 0x99, 0x90, 0xc5, 0xf7, 0x0e, 0xd9, 0xfd, 0xde, 0x21, 0xa7, 0xcb, 0x26, 0xab, 0xc7, 0xef, 0x1d, - 0x8d, 0xd4, 0xfc, 0xec, 0xd1, 0xb2, 0x6f, 0x1e, 0xcc, 0x46, 0x72, 0xbb, 0x3b, 0xc0, 0xf3, 0xfb, - 0x0e, 0x38, 0xdb, 0xd3, 0x7d, 0xf1, 0x7e, 0xdb, 0xdf, 0x01, 0xa0, 0xb1, 0x03, 0x66, 0xfa, 0x7e, - 0x21, 0x3e, 0xf8, 0x2d, 0xec, 0x91, 0xc0, 0xc2, 0xd7, 0xe0, 0xc9, 0xb5, 0xe1, 0x45, 0x7c, 0x7b, - 0x69, 0x6d, 0xef, 0x69, 0x74, 0x68, 0xff, 0x69, 0x74, 0xe8, 0xf9, 0xd3, 0x28, 0xf8, 0xac, 0x11, - 0x05, 0x3f, 0x36, 0xa2, 0xe0, 0x71, 0x23, 0x0a, 0xf6, 0x1a, 0x51, 0xf0, 0x67, 0x23, 0x0a, 0x9e, - 0x35, 0xa2, 0x43, 0xcf, 0x1b, 0x51, 0xf0, 0xe5, 0x41, 0x74, 0x68, 0xf7, 0x20, 0x0a, 0xf6, 0x0e, - 0xa2, 0x43, 0xfb, 0x07, 0xd1, 0xa1, 0x8f, 0x70, 0xd1, 0x30, 0xef, 0x16, 0xe5, 0x9a, 0x61, 0x0f, - 0x9d, 0x96, 0x2a, 0x57, 0x69, 0x92, 0x3f, 0xd8, 0x7f, 0xbf, 0xec, 0xfb, 0xa8, 0xe9, 0x79, 0x62, - 0x25, 0x5c, 0x71, 0xd2, 0xcc, 0x15, 0x8d, 0x24, 0xb9, 0xcf, 0x9c, 0xaf, 0x2c, 0x5d, 0x3f, 0x07, - 0xe5, 0xfc, 0xfc, 0xf6, 0x2f, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0x7b, 0xf2, 0xf5, 0xb0, 0x1b, - 0x13, 0x00, 0x00, + // 1625 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x13, 0xc7, + 0x1a, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb3, 0xcc, 0x83, 0xe0, 0xf8, 0xe5, 0x59, 0x7e, 0x06, + 0x3d, 0x25, 0x79, 0x78, 0xcd, 0x0b, 0x42, 0x3c, 0x22, 0x04, 0x75, 0x12, 0x27, 0x0a, 0x84, 0x24, + 0x1d, 0x1b, 0x54, 0x55, 0x95, 0x56, 0xeb, 0xf5, 0xd8, 0xd9, 0x62, 0x7b, 0xb7, 0x3b, 0x63, 0x07, + 0xab, 0x8a, 0x54, 0x71, 0xe8, 0xa1, 0x87, 0xfe, 0x51, 0xcb, 0xa5, 0xe2, 0xd0, 0x1e, 0x2a, 0xf5, + 0xd4, 0x33, 0x52, 0x2e, 0x1c, 0x2a, 0x15, 0x71, 0xa8, 0x50, 0x7b, 0xe1, 0xd6, 0xe2, 0xf4, 0xc0, + 0xa9, 0x42, 0x5c, 0x2a, 0xf5, 0x54, 0xed, 0xcc, 0xae, 0xb1, 0x1d, 0x63, 0xec, 0x34, 0x9c, 0xbc, + 0x33, 0xdf, 0xf7, 0xfd, 0xe6, 0xfb, 0xcd, 0xf7, 0x67, 0x3f, 0x2f, 0xfc, 0x5f, 0x8d, 0x50, 0x59, + 0x37, 0x92, 0x54, 0xdb, 0x22, 0x65, 0x35, 0xa9, 0x56, 0xd9, 0x16, 0xa9, 0x30, 0x5d, 0x53, 0x99, + 0x6e, 0x54, 0x92, 0x66, 0x35, 0x57, 0xd2, 0x35, 0x45, 0xb3, 0xaa, 0x79, 0xd5, 0xd4, 0x65, 0xd3, + 0x32, 0x98, 0x81, 0xa6, 0x84, 0x89, 0x2c, 0x4c, 0xe4, 0x76, 0x93, 0x48, 0xa2, 0xa8, 0xb3, 0xad, + 0x6a, 0x4e, 0xd6, 0x8c, 0x72, 0xb2, 0x68, 0x14, 0x8d, 0x24, 0x37, 0xca, 0x55, 0x0b, 0x7c, 0xc5, + 0x17, 0xfc, 0x49, 0x80, 0x45, 0xa6, 0x8a, 0x86, 0x51, 0x2c, 0x91, 0xa4, 0x6a, 0xea, 0x49, 0xb5, + 0x52, 0x31, 0x18, 0x47, 0xa1, 0x8e, 0xf4, 0x9f, 0x8e, 0xb4, 0x89, 0x41, 0xca, 0x26, 0xab, 0x3b, + 0xc2, 0x99, 0x9e, 0xae, 0x1b, 0xb9, 0x77, 0x89, 0xc6, 0x1c, 0xd5, 0xe9, 0x9e, 0xaa, 0xac, 0x6e, + 0x12, 0xf7, 0xc4, 0x48, 0xbb, 0x26, 0xb1, 0x2c, 0xc3, 0x6a, 0x7a, 0xd3, 0x2e, 0x33, 0xcc, 0x56, + 0x57, 0x27, 0xdb, 0x85, 0xad, 0x98, 0xf1, 0x76, 0x51, 0x8d, 0x50, 0x52, 0xa9, 0x75, 0x98, 0xc7, + 0x3a, 0x74, 0x74, 0xb2, 0xad, 0xb4, 0x69, 0xc4, 0xbf, 0x03, 0x70, 0x74, 0xd1, 0x22, 0x2a, 0x23, + 0x98, 0xbc, 0x57, 0x25, 0x94, 0xa1, 0xcb, 0x30, 0x50, 0x26, 0x4c, 0xcd, 0xab, 0x4c, 0x0d, 0x83, + 0x18, 0x98, 0x0e, 0xcd, 0x9d, 0x94, 0xdb, 0x63, 0xb3, 0xc1, 0x2f, 0x41, 0x58, 0x5d, 0x23, 0x4c, + 0xcd, 0xd6, 0x4d, 0x82, 0x9b, 0x46, 0xe8, 0x4d, 0xe8, 0xa3, 0x26, 0xd1, 0xc2, 0x1e, 0x6e, 0x7c, + 0x5a, 0xee, 0x15, 0x58, 0x59, 0xa0, 0x64, 0x4c, 0xa2, 0xd9, 0x28, 0x0b, 0xe3, 0x5f, 0xee, 0x8c, + 0xd8, 0xc6, 0x72, 0x51, 0x53, 0xec, 0x5f, 0xcc, 0xa1, 0xe6, 0x83, 0x0f, 0x2f, 0xf9, 0xc5, 0xa9, + 0xf1, 0x3f, 0x01, 0x1c, 0x73, 0x1d, 0xa6, 0xa6, 0x51, 0xa1, 0x04, 0x5d, 0xdc, 0xe7, 0x71, 0xac, + 0xab, 0xc7, 0x2b, 0x84, 0x75, 0x71, 0x77, 0x03, 0x8e, 0xd3, 0x3a, 0x65, 0xa4, 0xac, 0x34, 0x41, + 0xbc, 0x1c, 0xe4, 0x3f, 0x1d, 0x20, 0x19, 0xae, 0xb5, 0x1f, 0x6a, 0x4c, 0x98, 0x5f, 0x73, 0x01, + 0xd7, 0xdb, 0xf8, 0xcf, 0xf4, 0xe6, 0xbf, 0x42, 0xd8, 0x00, 0xe4, 0x1b, 0x00, 0x8e, 0x61, 0x62, + 0x96, 0x54, 0xad, 0x19, 0xae, 0x37, 0xf6, 0x91, 0x3f, 0xd5, 0x95, 0xbc, 0x63, 0xd6, 0xe5, 0x02, + 0x70, 0x9b, 0xbf, 0x89, 0xde, 0xfe, 0x3a, 0x30, 0xaf, 0xf0, 0x19, 0x25, 0xa1, 0x64, 0x11, 0x6a, + 0x54, 0x2d, 0x8d, 0x28, 0x35, 0x62, 0x51, 0xdd, 0xa8, 0xf0, 0x5b, 0x0d, 0x2e, 0xf8, 0x9e, 0xee, + 0x02, 0x80, 0xc7, 0x5d, 0xe9, 0x0d, 0x21, 0x6c, 0x25, 0x79, 0x14, 0x8e, 0x37, 0x39, 0x8a, 0x08, + 0xc7, 0xef, 0x02, 0x08, 0x57, 0x08, 0x73, 0x39, 0x4f, 0xc1, 0x60, 0x45, 0x2d, 0x13, 0x6a, 0xaa, + 0x1a, 0xe1, 0xa4, 0x83, 0xf8, 0xc5, 0x06, 0x42, 0xd0, 0x67, 0x2f, 0x38, 0x9f, 0x20, 0xe6, 0xcf, + 0xe8, 0x1d, 0x68, 0x9f, 0xc8, 0xc1, 0x94, 0x82, 0x61, 0x95, 0x55, 0xc6, 0xdd, 0x19, 0x9b, 0x3b, + 0xfb, 0xca, 0xf0, 0xb8, 0x4e, 0x2c, 0x73, 0xb3, 0x45, 0x23, 0x4f, 0xf0, 0x98, 0xd5, 0xb6, 0x17, + 0xbf, 0xe3, 0x87, 0xa1, 0x16, 0x4d, 0xb4, 0x06, 0x43, 0x1a, 0x4f, 0x51, 0x7e, 0x96, 0x73, 0xb1, + 0xff, 0xed, 0xa7, 0x10, 0x1c, 0x86, 0x18, 0x0a, 0x7b, 0x1b, 0x1f, 0x6d, 0xc0, 0x11, 0x4b, 0xdc, + 0x87, 0x80, 0xf3, 0xf6, 0x53, 0x57, 0xed, 0x59, 0x82, 0x43, 0x0e, 0x02, 0x07, 0xec, 0x16, 0x1c, + 0x5f, 0x8f, 0xe0, 0xb4, 0x15, 0xd8, 0xf0, 0x61, 0x14, 0xd8, 0x91, 0x43, 0x29, 0x30, 0xff, 0xe1, + 0x14, 0x18, 0x5a, 0x85, 0x7e, 0xca, 0x54, 0x56, 0xa5, 0xe1, 0xaf, 0xee, 0x82, 0x98, 0x77, 0x3a, + 0x34, 0x37, 0xdb, 0x1b, 0x33, 0xc3, 0xb5, 0x85, 0xa3, 0x0b, 0xde, 0xfb, 0x3b, 0x00, 0x3b, 0x00, + 0x68, 0x15, 0x1e, 0xb5, 0x48, 0x81, 0x58, 0x96, 0x5e, 0x29, 0x2a, 0xe2, 0x65, 0x41, 0xc3, 0x01, + 0x8e, 0x39, 0xf5, 0x92, 0xb2, 0x2c, 0x70, 0x8e, 0x52, 0xd3, 0x4c, 0xec, 0x53, 0x74, 0x03, 0x86, + 0xf3, 0xa4, 0x44, 0x18, 0xc9, 0x2b, 0x42, 0x46, 0xf2, 0x4d, 0xc4, 0x60, 0x1f, 0x88, 0x13, 0x8e, + 0x35, 0x76, 0x8c, 0x5d, 0xdc, 0xb7, 0xe0, 0x64, 0x5e, 0xa7, 0x6a, 0xae, 0xd4, 0x0d, 0x18, 0xf6, + 0x01, 0x7c, 0xc2, 0x35, 0xef, 0x40, 0x6e, 0xa9, 0xe1, 0x2b, 0xbe, 0x00, 0x90, 0x3c, 0xf1, 0x6f, + 0x00, 0x0c, 0xad, 0xe9, 0xb4, 0xcf, 0xba, 0xfd, 0x37, 0x1c, 0x29, 0xa9, 0x39, 0x52, 0x52, 0x0a, + 0x7a, 0x89, 0x11, 0xcb, 0xa9, 0xdf, 0x10, 0xdf, 0x5b, 0xe6, 0x5b, 0xe8, 0x24, 0x1c, 0xb5, 0x88, + 0x69, 0x58, 0x4c, 0x29, 0xe8, 0xa4, 0x94, 0xa7, 0x61, 0x6f, 0xcc, 0x3b, 0x1d, 0xc4, 0x23, 0x62, + 0x73, 0x99, 0xef, 0xa1, 0x33, 0xf0, 0x98, 0xa3, 0x24, 0x82, 0xe2, 0xea, 0xfa, 0xb8, 0x2e, 0x12, + 0x32, 0x11, 0x42, 0x61, 0x11, 0xff, 0xde, 0x0f, 0x25, 0xe1, 0xa7, 0x28, 0xe0, 0x55, 0x46, 0xca, + 0x68, 0x02, 0xfa, 0x19, 0xa9, 0xa8, 0x15, 0xc6, 0xf3, 0x2c, 0x88, 0x9d, 0xd5, 0x01, 0x9a, 0x8f, + 0x04, 0xbd, 0x55, 0x3d, 0x2f, 0xfa, 0x1f, 0xb6, 0x1f, 0x51, 0x0c, 0x86, 0xf2, 0x84, 0x6a, 0x96, + 0xce, 0xdf, 0xc5, 0xe1, 0x90, 0x60, 0xda, 0xb2, 0x85, 0x22, 0x30, 0xe0, 0x5e, 0x73, 0x78, 0x24, + 0x06, 0xa6, 0x03, 0xb8, 0xb9, 0x46, 0x18, 0xfa, 0xf9, 0xa5, 0x08, 0x4a, 0xa1, 0xb9, 0xf9, 0xde, + 0xd9, 0xda, 0xc9, 0x4c, 0x5e, 0xe3, 0xc6, 0xe9, 0x0a, 0xb3, 0xea, 0xd8, 0x41, 0x42, 0x2a, 0x0c, + 0xb5, 0x0c, 0x4a, 0x4e, 0x1e, 0x5c, 0x1e, 0x10, 0x38, 0xf5, 0x02, 0x41, 0xa0, 0xb7, 0x62, 0xa2, + 0x0b, 0x10, 0x1a, 0xdb, 0x15, 0x62, 0x29, 0xf6, 0x18, 0x12, 0x0e, 0xf2, 0xe2, 0x8d, 0x74, 0x9c, + 0x70, 0x43, 0x27, 0xdb, 0x6e, 0x9e, 0x05, 0xb9, 0xb6, 0xbd, 0xd3, 0xd6, 0x80, 0x46, 0x0f, 0xa3, + 0x01, 0x8d, 0xfd, 0xad, 0x06, 0xb4, 0x04, 0x03, 0x45, 0xc2, 0x78, 0x0b, 0x71, 0x5a, 0x59, 0xff, + 0x4d, 0x08, 0x1f, 0x29, 0x8a, 0x05, 0x5a, 0x87, 0xd0, 0x49, 0x50, 0x4a, 0x98, 0xd3, 0x24, 0x06, + 0x6e, 0x3c, 0x41, 0x01, 0x91, 0x21, 0x2c, 0x72, 0x01, 0x86, 0x5a, 0x22, 0x6b, 0x67, 0xdd, 0x4d, + 0x52, 0x77, 0x32, 0xd4, 0x7e, 0x44, 0xc7, 0xe0, 0x70, 0x4d, 0x2d, 0x55, 0xdd, 0xe4, 0x14, 0x8b, + 0x79, 0xcf, 0xff, 0x41, 0xe4, 0x12, 0x94, 0x3a, 0x63, 0x37, 0x88, 0xfd, 0x15, 0x5f, 0x60, 0x58, + 0xf2, 0xc7, 0x3f, 0x04, 0x70, 0xa4, 0x35, 0x27, 0xd0, 0x12, 0x1c, 0xd6, 0x19, 0x29, 0xd3, 0xb0, + 0xe8, 0xaa, 0xf2, 0x60, 0xe9, 0x84, 0x85, 0x31, 0x3a, 0x03, 0xfd, 0x62, 0x60, 0x0e, 0x7b, 0x38, + 0x4c, 0xb8, 0x03, 0x26, 0x6d, 0x0b, 0xf9, 0xd5, 0x3a, 0x7a, 0xf1, 0x9b, 0x70, 0x74, 0x89, 0x37, + 0xbf, 0x83, 0x0f, 0x0c, 0xd3, 0x50, 0x2a, 0xa8, 0x7a, 0x49, 0xd1, 0x0b, 0xcd, 0x26, 0xc9, 0x0b, + 0x38, 0x80, 0xc7, 0xec, 0xfd, 0xd5, 0x82, 0xdb, 0xfc, 0x66, 0x9f, 0x03, 0x78, 0xbc, 0xeb, 0x98, + 0x80, 0x22, 0x70, 0x62, 0x25, 0x9d, 0x55, 0x70, 0x66, 0x53, 0x59, 0xde, 0xc0, 0xd7, 0x52, 0x59, + 0x65, 0x29, 0xbd, 0x9c, 0xba, 0xbe, 0x96, 0x95, 0x86, 0xd0, 0xbf, 0xe0, 0x64, 0x87, 0x6c, 0x79, + 0x03, 0x2b, 0x8b, 0x38, 0x9d, 0xca, 0xa6, 0x25, 0x80, 0xa2, 0x30, 0xd2, 0x45, 0x8c, 0xd3, 0x9b, + 0x6b, 0xa9, 0xc5, 0xb4, 0xe4, 0x41, 0x93, 0xf0, 0x78, 0x87, 0x3c, 0x93, 0x4d, 0x65, 0xaf, 0x67, + 0x24, 0x2f, 0x3a, 0x01, 0xff, 0xd1, 0x21, 0xc2, 0xe9, 0xd4, 0x92, 0xe4, 0x43, 0xa7, 0x60, 0x6c, + 0x9f, 0x60, 0x39, 0x8d, 0xf1, 0xea, 0xfa, 0x8a, 0xb2, 0xb1, 0x70, 0x25, 0xbd, 0x98, 0xcd, 0x48, + 0xc3, 0x5d, 0xb4, 0x16, 0xf0, 0xc6, 0xd5, 0xf4, 0xba, 0x50, 0x4e, 0xaf, 0x2f, 0xa6, 0x33, 0x92, + 0x7f, 0xee, 0x1e, 0x84, 0xde, 0xd4, 0xe6, 0x2a, 0xfa, 0x03, 0x40, 0xbf, 0x98, 0x5c, 0xd0, 0x20, + 0xf3, 0x4d, 0xe4, 0x74, 0x7f, 0xca, 0xce, 0xf8, 0xf7, 0x19, 0x68, 0xfc, 0x10, 0xbe, 0x5a, 0x38, + 0x77, 0x4b, 0x4b, 0x50, 0xa2, 0x55, 0x2d, 0x52, 0x26, 0x74, 0x2b, 0x91, 0x53, 0xa9, 0xae, 0x25, + 0xaa, 0x94, 0x58, 0xa7, 0x3b, 0x45, 0x94, 0xa9, 0x95, 0xbc, 0x6a, 0xe5, 0x85, 0xb4, 0x46, 0x68, + 0x42, 0x37, 0x12, 0xa6, 0x65, 0xdc, 0xaa, 0x27, 0xb6, 0x2d, 0x9d, 0x91, 0xdb, 0x3f, 0xff, 0xf6, + 0xb9, 0xe7, 0x62, 0xfc, 0xbc, 0xf3, 0x57, 0x34, 0xd9, 0xcc, 0x05, 0x9a, 0x7c, 0xdf, 0xed, 0x11, + 0x72, 0x73, 0x73, 0xa7, 0xe3, 0xaf, 0x1d, 0x9d, 0x07, 0xb3, 0xe8, 0x39, 0x80, 0xde, 0x15, 0xc2, + 0xd0, 0x74, 0x1f, 0x03, 0xa4, 0xe0, 0x3c, 0xd3, 0xf7, 0xa8, 0x19, 0xbf, 0x03, 0x1e, 0xdc, 0xf3, + 0xd8, 0xa4, 0x37, 0xbb, 0x93, 0x2e, 0x1b, 0x15, 0x9d, 0x19, 0x3d, 0x78, 0xbb, 0x0a, 0x6d, 0xd4, + 0x2d, 0xa2, 0xe6, 0x39, 0xf3, 0xf3, 0xe8, 0x5c, 0x37, 0xe6, 0x2f, 0x27, 0x2c, 0x64, 0x3b, 0xe8, + 0x77, 0x00, 0x7d, 0x76, 0x99, 0xa2, 0x99, 0x7e, 0x4a, 0x59, 0xd0, 0x9e, 0xed, 0xbf, 0xea, 0xe3, + 0x1f, 0xbf, 0x5e, 0xde, 0x67, 0x90, 0x3c, 0x18, 0x6f, 0xf4, 0x91, 0x07, 0x1e, 0x71, 0x46, 0x69, + 0x34, 0xd0, 0xc4, 0x1d, 0x49, 0xf4, 0xa9, 0xed, 0x30, 0xff, 0xfa, 0xb5, 0xa4, 0xf8, 0x5a, 0x64, + 0xe5, 0x80, 0x29, 0xde, 0xa1, 0xb4, 0x63, 0xa7, 0xfc, 0x2f, 0x00, 0xfa, 0x45, 0x5f, 0x7d, 0x55, + 0xb1, 0xb7, 0x75, 0xdf, 0xc8, 0x84, 0x2c, 0x3e, 0xb8, 0xc8, 0xee, 0x07, 0x17, 0x39, 0x5d, 0x36, + 0x59, 0x3d, 0xfe, 0xc9, 0x6b, 0xe1, 0x3c, 0x3f, 0x7b, 0xb0, 0xe4, 0x9e, 0x07, 0xb3, 0x91, 0xdc, + 0xfd, 0x5d, 0xe0, 0xf9, 0x69, 0x17, 0x9c, 0xec, 0xc9, 0x4e, 0xbc, 0x7f, 0x1f, 0xef, 0x02, 0xd0, + 0xd8, 0x05, 0x33, 0x7d, 0xbf, 0xb0, 0x6f, 0xff, 0x18, 0xf6, 0x48, 0x60, 0xe1, 0x0b, 0xf0, 0xf0, + 0xd2, 0xf0, 0x22, 0xbe, 0xbe, 0xb4, 0xf6, 0xe8, 0x49, 0x74, 0xe8, 0xf1, 0x93, 0xe8, 0xd0, 0xb3, + 0x27, 0x51, 0xf0, 0x41, 0x23, 0x0a, 0xbe, 0x6d, 0x44, 0xc1, 0x83, 0x46, 0x14, 0x3c, 0x6a, 0x44, + 0xc1, 0xaf, 0x8d, 0x28, 0x78, 0xda, 0x88, 0x0e, 0x3d, 0x6b, 0x44, 0xc1, 0xa7, 0x7b, 0xd1, 0xa1, + 0xfb, 0x7b, 0x51, 0xf0, 0x68, 0x2f, 0x3a, 0xf4, 0x78, 0x2f, 0x3a, 0xf4, 0x36, 0x2e, 0x1a, 0xe6, + 0xcd, 0xa2, 0x5c, 0x33, 0xec, 0xa1, 0xd8, 0x52, 0xe5, 0x2a, 0x4d, 0xf2, 0x07, 0xfb, 0xef, 0xa1, + 0x7d, 0x1f, 0x35, 0x3d, 0x4f, 0xac, 0x84, 0x2b, 0x4e, 0x9a, 0xb9, 0xa2, 0x91, 0x24, 0xb7, 0x98, + 0xf3, 0x15, 0xa8, 0xeb, 0xe7, 0xaa, 0x9c, 0x9f, 0x07, 0xe7, 0xec, 0x5f, 0x01, 0x00, 0x00, 0xff, + 0xff, 0x26, 0x39, 0x3c, 0x0d, 0xbb, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/authentication/public_crudapi.vesapi.go b/pbgo/extschema/schema/authentication/public_crudapi.vesapi.go index 1d183d8b1..3eafec787 100644 --- a/pbgo/extschema/schema/authentication/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/authentication/public_crudapi.vesapi.go @@ -3115,10 +3115,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3175,10 +3179,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3237,10 +3245,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/bgp/crudapi/api.vesapi.go b/pbgo/extschema/schema/bgp/crudapi/api.vesapi.go index 8a9bb8f8d..451321593 100644 --- a/pbgo/extschema/schema/bgp/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/bgp/crudapi/api.vesapi.go @@ -3990,10 +3990,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/bgp/object.pb.go b/pbgo/extschema/schema/bgp/object.pb.go index c65594c7c..0dd4f8d7f 100644 --- a/pbgo/extschema/schema/bgp/object.pb.go +++ b/pbgo/extschema/schema/bgp/object.pb.go @@ -244,45 +244,47 @@ func init() { } var fileDescriptor_5debdb82370d75d4 = []byte{ - // 605 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0x4f, 0x4f, 0x13, 0x41, - 0x14, 0xef, 0xb4, 0x58, 0x70, 0x20, 0x88, 0xeb, 0x65, 0x05, 0x99, 0xd4, 0x7a, 0xe1, 0xe0, 0xee, - 0x1a, 0x8c, 0x07, 0xaa, 0x91, 0x04, 0x54, 0x2e, 0x10, 0x93, 0xe2, 0xc9, 0x4b, 0xb3, 0x33, 0x7d, - 0x1d, 0x56, 0xba, 0x9d, 0xc9, 0xcc, 0x6c, 0x81, 0x83, 0x89, 0x31, 0xe1, 0xee, 0x87, 0xf0, 0x60, - 0x8c, 0x1f, 0x02, 0x3c, 0x79, 0x24, 0x9c, 0x38, 0xca, 0xf6, 0xe2, 0x91, 0x8f, 0x60, 0x98, 0x65, - 0x91, 0xc2, 0x1e, 0x4c, 0x6f, 0x33, 0xfd, 0xfd, 0xe9, 0xfc, 0xde, 0x7b, 0xfb, 0x30, 0xe9, 0x83, - 0xf6, 0x23, 0x11, 0x68, 0xb6, 0x05, 0x71, 0x18, 0x50, 0x2e, 0x03, 0x41, 0x3f, 0x00, 0x33, 0xbe, - 0x54, 0xc2, 0x08, 0xe7, 0x6e, 0x86, 0xfb, 0x19, 0xee, 0x53, 0x2e, 0x67, 0x3d, 0x1e, 0x99, 0xad, - 0x84, 0xfa, 0x4c, 0xc4, 0x01, 0x17, 0x5c, 0x04, 0x96, 0x49, 0x93, 0x8e, 0xbd, 0xd9, 0x8b, 0x3d, - 0x65, 0x0e, 0xb3, 0xf3, 0x37, 0xff, 0xc1, 0xec, 0x49, 0xd0, 0x17, 0xf0, 0xdc, 0x30, 0x2c, 0xa4, - 0x89, 0x44, 0x2f, 0x07, 0xef, 0x0f, 0x83, 0x57, 0x75, 0xf5, 0x61, 0xa8, 0x0f, 0x1a, 0x7a, 0xfd, - 0x61, 0x79, 0x7d, 0x7f, 0x0c, 0x57, 0xdf, 0xda, 0x34, 0xce, 0x12, 0x9e, 0x88, 0xc1, 0x84, 0xed, - 0xd0, 0x84, 0x2e, 0xaa, 0xa1, 0x85, 0xc9, 0xc5, 0x79, 0x7f, 0x38, 0x5a, 0x46, 0xdc, 0x00, 0x13, - 0xbe, 0xdb, 0x93, 0xd0, 0xbc, 0xa4, 0x3b, 0xeb, 0xf8, 0x8e, 0xde, 0xd3, 0x06, 0xe2, 0xd6, 0xa5, - 0x43, 0xd9, 0x3a, 0x3c, 0xba, 0xe6, 0xb0, 0x69, 0x59, 0xd7, 0x7c, 0xa6, 0x33, 0xed, 0x46, 0xee, - 0x16, 0xe0, 0x31, 0x2d, 0x81, 0xb9, 0x15, 0x6b, 0x31, 0xe7, 0xdf, 0xa8, 0xaf, 0xbf, 0x29, 0x81, - 0x59, 0xa9, 0x25, 0x36, 0x0e, 0xca, 0x9f, 0x97, 0xab, 0x99, 0xc9, 0xcf, 0x43, 0xb7, 0x3c, 0x83, - 0x8e, 0x0f, 0xdd, 0x1f, 0x65, 0xbc, 0x84, 0x2b, 0x6b, 0x60, 0x9c, 0xc5, 0xce, 0xb3, 0x5d, 0xe6, - 0x69, 0x60, 0x89, 0x82, 0x18, 0xf4, 0x96, 0x47, 0x43, 0x1d, 0x31, 0x2f, 0x16, 0xbd, 0xc8, 0x08, - 0xf5, 0xb8, 0xd6, 0x07, 0xed, 0x45, 0xc2, 0xeb, 0x81, 0xd9, 0x11, 0x6a, 0xdb, 0x53, 0x10, 0xb6, - 0xf1, 0x73, 0x3c, 0xde, 0x04, 0xd9, 0x0d, 0x19, 0x38, 0x4f, 0x8a, 0xe5, 0x89, 0x86, 0x9b, 0xda, - 0x1d, 0x15, 0x19, 0xc0, 0x0d, 0x5c, 0x5d, 0x55, 0x10, 0x9a, 0x11, 0xb5, 0xaf, 0xa0, 0x0b, 0x23, - 0x6a, 0xc7, 0xd6, 0x23, 0x3d, 0x52, 0xe0, 0xfa, 0x1b, 0x3c, 0x91, 0x17, 0xd5, 0x69, 0xe0, 0x71, - 0xce, 0x5a, 0xb6, 0x05, 0x59, 0x17, 0x1f, 0x16, 0xb4, 0x60, 0xad, 0x2b, 0x68, 0xd8, 0xbd, 0x6c, - 0x44, 0x95, 0xb3, 0xf3, 0x73, 0xfd, 0x6b, 0x19, 0x4f, 0x6d, 0x9a, 0xd0, 0x24, 0xfa, 0xbf, 0xa7, - 0x2a, 0xa3, 0x17, 0x4c, 0xd5, 0x6b, 0x3c, 0x99, 0x7d, 0x68, 0x2d, 0x05, 0x1d, 0xed, 0x96, 0x6b, - 0x95, 0x85, 0xc9, 0xc5, 0x07, 0x85, 0x33, 0xd9, 0x84, 0xce, 0xb9, 0x78, 0xa5, 0xfa, 0xfd, 0x63, - 0x85, 0x72, 0xd9, 0xc4, 0x22, 0xff, 0x59, 0x3b, 0x2f, 0x30, 0x66, 0xa2, 0xd7, 0x8e, 0xec, 0xd8, - 0xbb, 0x95, 0x42, 0x97, 0xd5, 0x9c, 0x60, 0x9f, 0x70, 0x85, 0xef, 0x2c, 0x63, 0x4c, 0xb9, 0x6c, - 0x69, 0xfb, 0x48, 0xf7, 0x96, 0x4d, 0x50, 0x2b, 0xa8, 0xc7, 0x0a, 0x97, 0x59, 0x10, 0xeb, 0x70, - 0x9b, 0xe6, 0xd7, 0xc6, 0xbd, 0xe3, 0x97, 0x33, 0x78, 0x1a, 0x4f, 0xe5, 0xb1, 0xfc, 0x24, 0x6a, - 0xaf, 0xec, 0xa3, 0xa3, 0x53, 0x52, 0x3a, 0x39, 0x25, 0xa5, 0xb3, 0x53, 0x82, 0x3e, 0xa5, 0x04, - 0x7d, 0x4b, 0x09, 0xfa, 0x95, 0x12, 0x74, 0x94, 0x12, 0x74, 0x92, 0x12, 0xf4, 0x3b, 0x25, 0xe8, - 0x4f, 0x4a, 0x4a, 0x67, 0x29, 0x41, 0x5f, 0x06, 0xa4, 0x74, 0x30, 0x20, 0xe8, 0x68, 0x40, 0x4a, - 0x27, 0x03, 0x52, 0x7a, 0xbf, 0xc6, 0x85, 0xdc, 0xe6, 0x7e, 0x5f, 0x74, 0x0d, 0x28, 0x15, 0xfa, - 0x89, 0x0e, 0xec, 0xa1, 0x23, 0x54, 0xec, 0x49, 0x25, 0xfa, 0x51, 0x1b, 0x94, 0x97, 0xc3, 0x81, - 0xa4, 0x5c, 0x04, 0xb0, 0x6b, 0x2e, 0x16, 0xc1, 0xbf, 0x35, 0x43, 0xab, 0x76, 0x0b, 0x3c, 0xfd, - 0x1b, 0x00, 0x00, 0xff, 0xff, 0xbc, 0x15, 0x57, 0xf4, 0xe4, 0x04, 0x00, 0x00, + // 628 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4f, 0xd4, 0x4e, + 0x14, 0xc7, 0x77, 0xb6, 0xb0, 0xf0, 0x1b, 0x08, 0x3f, 0xac, 0x97, 0x0a, 0x32, 0x59, 0xd7, 0x0b, + 0x07, 0xdb, 0x26, 0x18, 0x0f, 0x12, 0x23, 0x09, 0xa8, 0x5c, 0x20, 0x24, 0x0b, 0x17, 0xd1, 0x64, + 0x33, 0x6d, 0xdf, 0x0e, 0x95, 0xed, 0xce, 0x64, 0x66, 0xba, 0xc0, 0xc1, 0xc4, 0x98, 0x78, 0xf7, + 0x8f, 0x30, 0xc6, 0xf8, 0x57, 0x88, 0x27, 0x2f, 0x26, 0x84, 0x13, 0x47, 0xb7, 0x7b, 0xf1, 0xc8, + 0x9f, 0x60, 0x98, 0x52, 0x60, 0x97, 0x8d, 0xf1, 0xc2, 0x6d, 0xa6, 0xdf, 0xef, 0xfb, 0xcc, 0xbc, + 0xd7, 0x37, 0x0f, 0x93, 0x0e, 0x28, 0x2f, 0xe6, 0xbe, 0x0a, 0x77, 0x20, 0xa1, 0x7e, 0xc0, 0x84, + 0xcf, 0x83, 0x37, 0x10, 0x6a, 0x4f, 0x48, 0xae, 0xb9, 0x7d, 0x2b, 0xd7, 0xbd, 0x5c, 0xf7, 0x02, + 0x26, 0x66, 0x5c, 0x16, 0xeb, 0x9d, 0x34, 0xf0, 0x42, 0x9e, 0xf8, 0x8c, 0x33, 0xee, 0x1b, 0x67, + 0x90, 0x36, 0xcd, 0xce, 0x6c, 0xcc, 0x2a, 0x27, 0xcc, 0xcc, 0x5d, 0x3f, 0x41, 0x1f, 0x08, 0x50, + 0xe7, 0xf2, 0x6c, 0xbf, 0xcc, 0x85, 0x8e, 0x79, 0xbb, 0x10, 0xef, 0xf4, 0x8b, 0x57, 0xe3, 0x6a, + 0xfd, 0x52, 0x07, 0x14, 0xb4, 0x3b, 0xfd, 0xe1, 0xb5, 0xcf, 0xa3, 0xb8, 0xb2, 0x61, 0xb2, 0xb1, + 0x1f, 0xe3, 0xf1, 0x04, 0x34, 0x8d, 0xa8, 0xa6, 0x0e, 0xaa, 0xa2, 0xf9, 0x89, 0x85, 0x39, 0xaf, + 0x3f, 0xb5, 0xdc, 0xb8, 0x0e, 0x9a, 0x6e, 0x1d, 0x08, 0xa8, 0x5f, 0xd8, 0xed, 0x35, 0xfc, 0xbf, + 0x3a, 0x50, 0x1a, 0x92, 0xc6, 0x05, 0xa1, 0x6c, 0x08, 0xf7, 0x07, 0x08, 0x9b, 0xc6, 0x35, 0xc0, + 0x99, 0xca, 0x63, 0xd7, 0x0b, 0x9a, 0x8f, 0x47, 0x94, 0x80, 0xd0, 0xb1, 0x0c, 0x62, 0xd6, 0xbb, + 0x56, 0x5f, 0x6f, 0x53, 0x40, 0x68, 0x42, 0x8d, 0x71, 0xb1, 0x6b, 0xbd, 0x5f, 0xaa, 0xe4, 0x90, + 0xef, 0x87, 0x4e, 0x79, 0x1a, 0x1d, 0x1f, 0x3a, 0x3f, 0x2d, 0xfc, 0x0a, 0x5b, 0xab, 0xa0, 0xed, + 0xad, 0xe6, 0xa3, 0xfd, 0xd0, 0x55, 0x10, 0xa6, 0x12, 0x12, 0x50, 0x3b, 0x6e, 0x40, 0x55, 0x1c, + 0xba, 0x09, 0x6f, 0xc7, 0x9a, 0xcb, 0x07, 0xd5, 0x41, 0x59, 0x69, 0xda, 0x8e, 0xa8, 0x8c, 0x2e, + 0x1d, 0x1d, 0x50, 0x6e, 0xcc, 0xdd, 0x36, 0xe8, 0x3d, 0x2e, 0x77, 0x5d, 0x09, 0x34, 0xc2, 0xdb, + 0x78, 0xac, 0x0e, 0xa2, 0x45, 0x43, 0xb0, 0x37, 0x86, 0x1f, 0x90, 0x2a, 0xf8, 0x1b, 0x3d, 0x97, + 0x07, 0xd0, 0x7b, 0x32, 0xd6, 0x80, 0x5f, 0xe2, 0xca, 0x8a, 0x04, 0xaa, 0x6f, 0x06, 0xfd, 0x0c, + 0x5a, 0x70, 0x13, 0xe8, 0xd7, 0x78, 0x64, 0x2d, 0x56, 0x37, 0x54, 0xef, 0xda, 0x0b, 0x3c, 0x5e, + 0xfc, 0x75, 0x7b, 0x11, 0x8f, 0xb1, 0xb0, 0x61, 0x7a, 0x24, 0x6f, 0xb3, 0x7b, 0x43, 0x7a, 0x64, + 0xb5, 0xc5, 0x03, 0xda, 0xba, 0xe8, 0x94, 0x0a, 0x0b, 0xcf, 0xd6, 0xb5, 0x4f, 0x65, 0x3c, 0xb9, + 0xa9, 0xa9, 0x4e, 0xd5, 0x3f, 0xb7, 0x7d, 0x6e, 0x1f, 0xd2, 0xf6, 0xcf, 0xf1, 0x44, 0x3e, 0x09, + 0x1a, 0x12, 0x9a, 0xca, 0x29, 0x57, 0xad, 0xf9, 0x89, 0x85, 0xbb, 0x43, 0x1f, 0x4d, 0x1d, 0x9a, + 0x67, 0xc1, 0xcb, 0x95, 0xaf, 0x6f, 0xad, 0x80, 0x89, 0x3a, 0xe6, 0xc5, 0x67, 0x65, 0x3f, 0xc1, + 0x38, 0xe4, 0xed, 0x28, 0x36, 0xef, 0xd2, 0xb1, 0x86, 0x52, 0x56, 0x0a, 0x83, 0xb9, 0xc2, 0x15, + 0xbf, 0xbd, 0x84, 0x71, 0xc0, 0x44, 0x43, 0x99, 0x4b, 0x3a, 0xa3, 0x26, 0x83, 0xea, 0x90, 0x7a, + 0x2c, 0x33, 0x91, 0x27, 0x62, 0x08, 0xff, 0x05, 0xc5, 0x76, 0xf1, 0xf6, 0xf1, 0xd3, 0x69, 0x3c, + 0x85, 0x27, 0x8b, 0xb4, 0xbc, 0x34, 0x8e, 0x96, 0x3f, 0xa0, 0xa3, 0x2e, 0x29, 0x9d, 0x74, 0x49, + 0xe9, 0xb4, 0x4b, 0xd0, 0xbb, 0x8c, 0xa0, 0x2f, 0x19, 0x41, 0x3f, 0x32, 0x82, 0x8e, 0x32, 0x82, + 0x4e, 0x32, 0x82, 0x7e, 0x65, 0x04, 0xfd, 0xce, 0x48, 0xe9, 0x34, 0x23, 0xe8, 0x63, 0x8f, 0x94, + 0xbe, 0xf5, 0x08, 0x3a, 0xea, 0x91, 0xd2, 0x49, 0x8f, 0x94, 0xb6, 0x57, 0x19, 0x17, 0xbb, 0xcc, + 0xeb, 0xf0, 0x96, 0x06, 0x29, 0xa9, 0x97, 0x2a, 0xdf, 0x2c, 0x9a, 0x5c, 0x26, 0xae, 0x90, 0xbc, + 0x13, 0x47, 0x20, 0xdd, 0x42, 0xf6, 0x45, 0xc0, 0xb8, 0x0f, 0xfb, 0xfa, 0x7c, 0x52, 0x5d, 0xce, + 0xc1, 0xa0, 0x62, 0xc6, 0xd4, 0xc3, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe8, 0xbf, 0xbc, 0xf9, + 0x85, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/bgp/pkg.vespkg.go b/pbgo/extschema/schema/bgp/pkg.vespkg.go index 8f48ca21c..1890bb456 100644 --- a/pbgo/extschema/schema/bgp/pkg.vespkg.go +++ b/pbgo/extschema/schema/bgp/pkg.vespkg.go @@ -81,7 +81,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.bgp.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.peers.#.external.family_inet_v6", @@ -92,7 +92,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.bgp.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.peers.#.external.family_inet_v6", @@ -105,7 +105,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.bgp.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.peers.#.external.family_inet_v6", @@ -113,7 +113,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "replace_form.spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.peers.#.external.family_inet_v6", @@ -121,7 +121,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.peers.#.external.family_inet_v6", @@ -132,7 +132,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.bgp.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.peers.#.external.family_inet_v6", @@ -156,7 +156,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.bgp.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.peers.#.external.family_inet_v6", diff --git a/pbgo/extschema/schema/bgp/public_crudapi.pb.go b/pbgo/extschema/schema/bgp/public_crudapi.pb.go index c893f26b0..ebf97261f 100644 --- a/pbgo/extschema/schema/bgp/public_crudapi.pb.go +++ b/pbgo/extschema/schema/bgp/public_crudapi.pb.go @@ -1060,107 +1060,108 @@ func init() { } var fileDescriptor_bfdffacbad3a74d8 = []byte{ - // 1597 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0xdb, 0x46, - 0x16, 0xf7, 0x48, 0xb2, 0x2c, 0x8d, 0xfc, 0xc1, 0xcc, 0x26, 0x0e, 0xad, 0x4d, 0x18, 0x45, 0xce, - 0x06, 0x86, 0x11, 0x91, 0x89, 0x77, 0x17, 0x58, 0x1b, 0x81, 0x77, 0x65, 0x59, 0x12, 0x9c, 0x75, - 0xe2, 0x2c, 0xa5, 0x18, 0x8b, 0x5e, 0x08, 0x8a, 0x1a, 0xc9, 0x8c, 0x25, 0x91, 0x25, 0x47, 0x72, - 0xdc, 0xc0, 0x40, 0x91, 0x5b, 0x6f, 0x2d, 0x7a, 0x29, 0x8a, 0x1e, 0x0a, 0x14, 0x05, 0x7a, 0x68, - 0x0f, 0xbd, 0xb5, 0xf0, 0x25, 0xb7, 0x04, 0x41, 0x51, 0x04, 0xed, 0xa1, 0x39, 0x36, 0x72, 0x0f, - 0xe9, 0xa9, 0x69, 0xff, 0x82, 0x82, 0x33, 0xa4, 0xa2, 0x0f, 0xfa, 0x33, 0x39, 0x89, 0xf3, 0xde, - 0xfb, 0xfd, 0xf8, 0xde, 0xbc, 0x0f, 0xce, 0x08, 0x5e, 0x6e, 0x61, 0x5b, 0xd4, 0x0d, 0xc9, 0xd6, - 0x36, 0x70, 0x5d, 0x95, 0x4a, 0x55, 0x53, 0x32, 0x9b, 0xa5, 0x9a, 0xae, 0x29, 0x9a, 0xd5, 0x2c, - 0xab, 0xa6, 0x2e, 0x9a, 0x96, 0x41, 0x0c, 0x74, 0x8a, 0xd9, 0x89, 0xcc, 0x4e, 0x2c, 0x55, 0xcd, - 0x78, 0xaa, 0xaa, 0x93, 0x8d, 0x66, 0x49, 0xd4, 0x8c, 0xba, 0x54, 0x35, 0xaa, 0x86, 0x44, 0x2d, - 0x4b, 0xcd, 0x0a, 0x5d, 0xd1, 0x05, 0x7d, 0x62, 0x0c, 0xf1, 0x73, 0x55, 0xc3, 0xa8, 0xd6, 0xb0, - 0xa4, 0x9a, 0xba, 0xa4, 0x36, 0x1a, 0x06, 0x51, 0x89, 0x6e, 0x34, 0x6c, 0x57, 0xfb, 0x57, 0x57, - 0xdb, 0xe1, 0xc0, 0x75, 0x93, 0x6c, 0xbb, 0x4a, 0x61, 0xd0, 0x49, 0xa3, 0x74, 0x17, 0x6b, 0xc4, - 0xd5, 0x9f, 0x1f, 0xd4, 0x93, 0x6d, 0x13, 0x7b, 0xdc, 0xf1, 0x5e, 0x35, 0xb6, 0x2c, 0xc3, 0xea, - 0xbc, 0xb7, 0x57, 0x67, 0x98, 0xdd, 0x4e, 0x4d, 0xf5, 0x2a, 0xbb, 0x39, 0x93, 0xbd, 0xaa, 0x16, - 0xb6, 0x71, 0xa3, 0xd5, 0x07, 0x4f, 0xf4, 0xd9, 0xe8, 0x78, 0x4b, 0xe9, 0xb1, 0x48, 0x7e, 0x06, - 0xe0, 0x58, 0xc6, 0xc2, 0x2a, 0xc1, 0x32, 0x7e, 0xbb, 0x89, 0x6d, 0x82, 0xfe, 0x0d, 0x23, 0x75, - 0x4c, 0xd4, 0xb2, 0x4a, 0x54, 0x1e, 0x24, 0xc0, 0x4c, 0x6c, 0x6e, 0x5a, 0xec, 0xdd, 0xfa, 0x35, - 0x1a, 0x39, 0x43, 0xdd, 0xc4, 0x44, 0x2d, 0x6e, 0x9b, 0x58, 0xee, 0x80, 0x50, 0x0e, 0x86, 0x6c, - 0x13, 0x6b, 0x7c, 0x80, 0x82, 0x2f, 0x8a, 0x03, 0x79, 0x13, 0x19, 0xb4, 0x60, 0x62, 0xcd, 0x81, - 0x2e, 0x4d, 0x7c, 0xbc, 0x33, 0xea, 0x20, 0xc4, 0xaa, 0xa6, 0x38, 0xbf, 0x32, 0xc5, 0x2f, 0x44, - 0x9f, 0x2c, 0x86, 0xd9, 0xab, 0x92, 0xbf, 0x01, 0x38, 0xee, 0x79, 0x69, 0x9b, 0x46, 0xc3, 0xc6, - 0xe8, 0xfa, 0x80, 0x9b, 0x09, 0x5f, 0x37, 0xf3, 0x98, 0xf8, 0xf8, 0xb8, 0x06, 0x27, 0xec, 0x6d, - 0x9b, 0xe0, 0xba, 0xd2, 0x21, 0x09, 0x52, 0x92, 0xcb, 0x7d, 0x24, 0x05, 0x6a, 0x35, 0x48, 0x35, - 0xce, 0xe0, 0x37, 0x3d, 0xc2, 0x4c, 0x4f, 0xd0, 0x82, 0x4f, 0xd0, 0x79, 0x4c, 0x8e, 0x11, 0xf1, - 0x4f, 0x00, 0x8e, 0xcb, 0xd8, 0xac, 0xa9, 0x5a, 0x27, 0x31, 0xff, 0x19, 0x88, 0xf8, 0x92, 0x6f, - 0xc4, 0x2e, 0xcc, 0x27, 0xea, 0x7c, 0x8f, 0x93, 0x49, 0x1f, 0x27, 0x5d, 0xec, 0x21, 0x8e, 0x22, - 0x09, 0x72, 0x16, 0xb6, 0x8d, 0xa6, 0xa5, 0x61, 0xa5, 0x85, 0x2d, 0x5b, 0x37, 0x1a, 0x74, 0xff, - 0xa2, 0x4b, 0xa1, 0x17, 0xbb, 0x00, 0xc8, 0x13, 0x9e, 0x76, 0x9d, 0x29, 0xbb, 0x23, 0x3b, 0x05, - 0x27, 0x3a, 0x81, 0xb1, 0x5c, 0x26, 0x3f, 0x00, 0x10, 0xe6, 0x31, 0xf1, 0x02, 0x3d, 0x07, 0xa3, - 0x0d, 0xb5, 0x8e, 0x6d, 0x53, 0xd5, 0x30, 0x8d, 0x34, 0x2a, 0xbf, 0x12, 0x20, 0x04, 0x43, 0xce, - 0x82, 0x06, 0x11, 0x95, 0xe9, 0x33, 0xfa, 0x1f, 0x74, 0xde, 0x48, 0xc9, 0x94, 0x8a, 0x61, 0xd5, - 0x55, 0x42, 0xdd, 0x19, 0x9f, 0x9b, 0xf1, 0x4f, 0x84, 0xf7, 0xe6, 0x1c, 0xb5, 0xcd, 0x18, 0x65, - 0x2c, 0x8f, 0x5b, 0x3d, 0xb2, 0xe4, 0xaf, 0xc3, 0x30, 0xd6, 0x65, 0x89, 0xd2, 0x30, 0xa6, 0xd1, - 0x0a, 0xa4, 0x2f, 0x70, 0xb7, 0x30, 0xb1, 0x6f, 0x71, 0xbb, 0xb1, 0xc8, 0x90, 0x81, 0x1c, 0x52, - 0xb4, 0x0c, 0x47, 0x2d, 0x16, 0x39, 0xe3, 0x08, 0xee, 0xdb, 0x20, 0xbd, 0x99, 0x97, 0x63, 0x2e, - 0x8c, 0xb2, 0xf8, 0xed, 0x7d, 0xe8, 0x80, 0xbd, 0xef, 0xe9, 0x94, 0xe1, 0x37, 0xd1, 0x29, 0x23, - 0x6f, 0xa4, 0x53, 0xc2, 0xaf, 0xd1, 0x29, 0x68, 0x11, 0x86, 0x6d, 0xa2, 0x92, 0xa6, 0xcd, 0x7f, - 0xfa, 0x09, 0x48, 0x04, 0x67, 0x62, 0x73, 0x17, 0x7c, 0x88, 0x0a, 0xd4, 0x84, 0xb9, 0xb4, 0x14, - 0x7c, 0xb8, 0x03, 0x64, 0x17, 0x85, 0x56, 0xe0, 0x29, 0x0b, 0x57, 0xb0, 0x65, 0xe9, 0x8d, 0xaa, - 0xc2, 0x26, 0xb9, 0xcd, 0x47, 0x28, 0xd1, 0xb9, 0x7d, 0x9a, 0xaa, 0x42, 0xa3, 0xe1, 0x3a, 0x30, - 0x26, 0xb7, 0xd1, 0x3a, 0xe4, 0xcb, 0xb8, 0x86, 0x09, 0x2e, 0x2b, 0x4c, 0x87, 0xcb, 0x1d, 0xc6, - 0xe8, 0x11, 0x18, 0x27, 0x5d, 0xb4, 0xec, 0x82, 0x3d, 0xde, 0xff, 0xc3, 0xa9, 0xb2, 0x6e, 0xab, - 0xa5, 0x9a, 0x1f, 0x31, 0x3c, 0x02, 0xf1, 0x59, 0x0f, 0xde, 0xc7, 0xdc, 0xd5, 0x8c, 0x37, 0x42, - 0x11, 0xc0, 0x05, 0x92, 0x9f, 0x03, 0x18, 0x5b, 0xd5, 0xed, 0x23, 0x36, 0xe0, 0x45, 0x38, 0x5a, - 0x53, 0x4b, 0xb8, 0xa6, 0x54, 0xf4, 0x1a, 0xc1, 0x96, 0xdb, 0x88, 0x31, 0x2a, 0xcb, 0x51, 0x11, - 0x9a, 0x86, 0x63, 0x16, 0x36, 0x0d, 0x8b, 0x28, 0x15, 0x1d, 0xd7, 0xca, 0x36, 0x1f, 0x4c, 0x04, - 0x67, 0xa2, 0xf2, 0x28, 0x13, 0xe6, 0xa8, 0x0c, 0x5d, 0x85, 0xa7, 0x5d, 0x23, 0x96, 0x14, 0xcf, - 0x36, 0x44, 0x6d, 0x11, 0xd3, 0xb1, 0x14, 0x32, 0x44, 0xf2, 0xa3, 0x30, 0xe4, 0x98, 0x9f, 0xac, - 0x29, 0x57, 0x08, 0xae, 0xa3, 0x49, 0x18, 0x26, 0xb8, 0xa1, 0x36, 0x08, 0xad, 0xa8, 0xa8, 0xec, - 0xae, 0x4e, 0x30, 0x45, 0x38, 0x18, 0x6c, 0xea, 0x65, 0x36, 0xc8, 0x64, 0xe7, 0x11, 0x25, 0x60, - 0xac, 0x8c, 0x6d, 0xcd, 0xd2, 0xe9, 0x37, 0x93, 0x8f, 0xb1, 0x48, 0xbb, 0x44, 0x28, 0x0e, 0x23, - 0xde, 0x36, 0xf3, 0xa3, 0x09, 0x30, 0x13, 0x91, 0x3b, 0x6b, 0x94, 0x87, 0x61, 0xba, 0x29, 0x2c, - 0xa4, 0xd8, 0x9c, 0xe4, 0x53, 0xa2, 0xfd, 0xe1, 0x88, 0xab, 0x14, 0x91, 0x6d, 0x10, 0x6b, 0x5b, - 0x76, 0xe1, 0x68, 0x1d, 0xc6, 0xba, 0xce, 0x2b, 0x6e, 0xf2, 0xff, 0x71, 0x14, 0xb6, 0xf4, 0x2b, - 0x18, 0xa3, 0xec, 0x26, 0x42, 0xf3, 0x10, 0x1a, 0x5b, 0x0d, 0x6c, 0x29, 0xce, 0xc1, 0x80, 0x8f, - 0xd2, 0x86, 0x8c, 0xf7, 0xd1, 0xae, 0xeb, 0x78, 0xcb, 0xab, 0xa8, 0x28, 0xb5, 0x76, 0x24, 0x3d, - 0x43, 0x65, 0xec, 0x4d, 0x0c, 0x95, 0xf1, 0xd7, 0x1a, 0x2a, 0xf3, 0x30, 0x52, 0xc5, 0x84, 0x4e, - 0x08, 0x77, 0x3c, 0x1d, 0x32, 0x58, 0xe4, 0x91, 0x2a, 0x5b, 0xa0, 0x0c, 0x84, 0x6e, 0xfd, 0xd9, - 0x98, 0xb8, 0x33, 0xe0, 0x68, 0xc3, 0x24, 0xca, 0x70, 0x05, 0x4c, 0xe2, 0xf3, 0x30, 0xd6, 0x95, - 0x38, 0xa7, 0x92, 0x36, 0xf1, 0xb6, 0x5b, 0x75, 0xce, 0x23, 0x3a, 0x0d, 0x87, 0x5b, 0x6a, 0xad, - 0xe9, 0x15, 0x1c, 0x5b, 0x2c, 0x04, 0xfe, 0x05, 0xe2, 0x8b, 0x90, 0xeb, 0xcf, 0xd2, 0x71, 0xf0, - 0x37, 0x42, 0x91, 0x61, 0x2e, 0x9c, 0xbc, 0x0f, 0x47, 0xbb, 0x93, 0x8f, 0xe6, 0xe1, 0xb0, 0x4e, - 0x70, 0xdd, 0xe6, 0xd9, 0x74, 0x9c, 0x3e, 0x42, 0xb1, 0xc8, 0x0c, 0x81, 0xae, 0xc2, 0x30, 0x3b, - 0xa0, 0xf2, 0x01, 0x8a, 0xe5, 0xfb, 0xb0, 0x59, 0x47, 0x49, 0xf7, 0xd0, 0xb5, 0x4b, 0x6e, 0xc2, - 0xb1, 0x65, 0x3a, 0xc4, 0x4e, 0xfe, 0x05, 0x9f, 0x81, 0x5c, 0x45, 0xd5, 0x6b, 0x8a, 0x5e, 0xe9, - 0x0c, 0x3b, 0xda, 0x88, 0x11, 0x79, 0xdc, 0x91, 0xaf, 0x54, 0xbc, 0x21, 0x36, 0xfb, 0x07, 0x80, - 0x67, 0x7c, 0x3f, 0xe1, 0x28, 0x0e, 0x27, 0xf3, 0xd9, 0xa2, 0x22, 0x17, 0x6e, 0x2b, 0xb9, 0x35, - 0xf9, 0x66, 0xba, 0xa8, 0x2c, 0x67, 0x73, 0xe9, 0x3b, 0xab, 0x45, 0x6e, 0x08, 0x9d, 0x87, 0x53, - 0x7d, 0xba, 0xdc, 0x9a, 0xac, 0x64, 0xe4, 0x6c, 0xba, 0x98, 0xe5, 0x00, 0x12, 0x60, 0xdc, 0x47, - 0x2d, 0x67, 0x6f, 0xaf, 0xa6, 0x33, 0x59, 0x2e, 0x80, 0xa6, 0xe0, 0x99, 0x3e, 0x7d, 0xa1, 0x98, - 0x2e, 0xde, 0x29, 0x70, 0x41, 0x74, 0x16, 0xfe, 0xa5, 0x4f, 0x25, 0x67, 0xd3, 0xcb, 0x5c, 0x08, - 0x5d, 0x82, 0x89, 0x01, 0x45, 0x2e, 0x2b, 0xcb, 0x2b, 0xb7, 0xf2, 0xca, 0xda, 0xd2, 0x8d, 0x6c, - 0xa6, 0x58, 0xe0, 0x86, 0x7d, 0xac, 0x96, 0xe4, 0xb5, 0xff, 0x66, 0x6f, 0x31, 0xe3, 0xec, 0xad, - 0x4c, 0xb6, 0xc0, 0x85, 0xe7, 0x7e, 0x1f, 0x81, 0xc1, 0xf4, 0xed, 0x15, 0xf4, 0x2d, 0x80, 0x61, - 0x76, 0xc0, 0x40, 0x87, 0x9e, 0x3d, 0xe2, 0x17, 0x0f, 0xb0, 0x70, 0x4f, 0x5e, 0x77, 0xdb, 0x8f, - 0x78, 0xa9, 0xf2, 0xcf, 0x7b, 0x5a, 0xca, 0xc6, 0x5a, 0xd3, 0xc2, 0x75, 0x6c, 0x6f, 0xa4, 0x4a, - 0xaa, 0xad, 0x6b, 0xa9, 0xa6, 0x8d, 0xad, 0x2b, 0x2d, 0x6c, 0xa7, 0x74, 0x23, 0xd5, 0xc0, 0x64, - 0xcb, 0xb0, 0x36, 0x53, 0x5b, 0x96, 0x4e, 0xf0, 0x83, 0x1f, 0x7f, 0xf9, 0x30, 0x70, 0x2d, 0x79, - 0xc5, 0xbd, 0xa6, 0x49, 0x9d, 0xc4, 0xda, 0xd2, 0x7d, 0xaf, 0x9d, 0xc5, 0x8e, 0x70, 0xc7, 0xb9, - 0x0c, 0xd9, 0x0b, 0x60, 0x16, 0x7d, 0x0d, 0x60, 0x30, 0x8f, 0x09, 0x3a, 0xbf, 0xdf, 0x99, 0x8c, - 0x79, 0x2d, 0x1c, 0x7c, 0x64, 0x4b, 0x6e, 0x3e, 0xfe, 0x26, 0x00, 0xda, 0x8f, 0xf8, 0x6b, 0xfe, - 0x6e, 0xd7, 0x8d, 0x86, 0x4e, 0x8c, 0x01, 0xcf, 0x2d, 0xac, 0x96, 0xa9, 0xe3, 0x57, 0xd0, 0xac, - 0x9f, 0xe3, 0x7d, 0xfe, 0x32, 0xc1, 0x0e, 0xfa, 0x0a, 0xc0, 0x90, 0xd3, 0x27, 0x48, 0xd8, 0xb7, - 0x81, 0x98, 0xd7, 0x17, 0x0e, 0x69, 0xb0, 0x64, 0xf9, 0xf5, 0xdc, 0xfe, 0x1b, 0x9a, 0x3e, 0x82, - 0xdb, 0xe8, 0x3b, 0x00, 0x47, 0xdc, 0xc3, 0x23, 0x3a, 0xfc, 0x60, 0x19, 0x4f, 0x1e, 0x64, 0xe2, - 0x3a, 0xfe, 0xce, 0x49, 0x4b, 0x24, 0x1d, 0xbf, 0x7e, 0x9c, 0x12, 0xe9, 0xd3, 0xec, 0x38, 0x25, - 0xf3, 0x25, 0x80, 0x61, 0x36, 0x59, 0x7c, 0xcb, 0xbd, 0x67, 0xe8, 0xc4, 0x27, 0x45, 0x76, 0x83, - 0x17, 0xbd, 0x1b, 0xbc, 0x98, 0x75, 0x6e, 0xf0, 0xc9, 0x8d, 0x93, 0x06, 0x20, 0xcd, 0x1e, 0xa3, - 0x54, 0x16, 0xc0, 0x6c, 0x7c, 0xf5, 0xe1, 0x2e, 0x08, 0xfc, 0xb0, 0x0b, 0xf8, 0x41, 0x57, 0xd9, - 0x77, 0xe3, 0xd9, 0x2e, 0x00, 0xed, 0x5d, 0x20, 0x1c, 0xfc, 0x75, 0x79, 0xf0, 0x3d, 0x1f, 0xe0, - 0xc0, 0xd2, 0x7b, 0xe0, 0xc9, 0xe2, 0x70, 0x46, 0xbe, 0xb3, 0xbc, 0xfa, 0xf4, 0xb9, 0x30, 0xf4, - 0xec, 0xb9, 0x30, 0xf4, 0xf2, 0xb9, 0x00, 0xde, 0x6d, 0x0b, 0xe0, 0x8b, 0xb6, 0x00, 0x1e, 0xb7, - 0x05, 0xf0, 0xb4, 0x2d, 0x80, 0x9f, 0xdb, 0x02, 0x78, 0xd1, 0x16, 0x86, 0x5e, 0xb6, 0x05, 0xf0, - 0xfe, 0x9e, 0x30, 0xf4, 0x70, 0x4f, 0x00, 0x4f, 0xf7, 0x84, 0xa1, 0x67, 0x7b, 0xc2, 0xd0, 0x5b, - 0xf9, 0xaa, 0x61, 0x6e, 0x56, 0xc5, 0x96, 0xe1, 0x9c, 0xca, 0x2c, 0x55, 0x6c, 0xda, 0x12, 0x7d, - 0x70, 0xae, 0x1f, 0x29, 0xd3, 0x32, 0x5a, 0x7a, 0x19, 0x5b, 0x29, 0x4f, 0x2d, 0x99, 0xa5, 0xaa, - 0x21, 0xe1, 0x7b, 0xc4, 0xfd, 0xbb, 0xe0, 0xd5, 0x9f, 0x19, 0xa5, 0x30, 0xdd, 0xd3, 0xbf, 0xff, - 0x19, 0x00, 0x00, 0xff, 0xff, 0xa2, 0x4e, 0x6d, 0xaa, 0xad, 0x11, 0x00, 0x00, + // 1614 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcb, 0x6f, 0xdb, 0x46, + 0x1a, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x60, 0x66, 0x13, 0x47, 0xd6, 0x26, 0x8c, 0x22, 0x67, + 0x03, 0xc3, 0x88, 0xa8, 0xac, 0x77, 0x17, 0x58, 0x1b, 0x81, 0x77, 0x65, 0x59, 0x12, 0x9c, 0xb5, + 0xe3, 0x2c, 0xa5, 0x18, 0x45, 0x2f, 0x04, 0x45, 0x8d, 0x14, 0xd6, 0x92, 0xc8, 0x72, 0x46, 0x72, + 0x8c, 0xc0, 0x40, 0x11, 0xa0, 0x45, 0x0b, 0xf4, 0xd0, 0xc7, 0x25, 0x28, 0x7a, 0x28, 0x50, 0x14, + 0xe8, 0x9f, 0x50, 0xc0, 0x97, 0xdc, 0x1a, 0xa4, 0x40, 0x1b, 0x34, 0x87, 0xfa, 0xd8, 0xc8, 0x3d, + 0xa4, 0xe8, 0xa1, 0x41, 0xff, 0x82, 0x82, 0x33, 0xa4, 0xa2, 0x07, 0xfd, 0xca, 0xe3, 0x24, 0x72, + 0xbe, 0xef, 0xf7, 0xe3, 0xf7, 0x9b, 0xef, 0xc1, 0x11, 0xe1, 0xa5, 0x16, 0x26, 0x92, 0x6e, 0xa4, + 0x88, 0x76, 0x0b, 0xd7, 0xd5, 0x54, 0xa9, 0x6a, 0xa6, 0xcc, 0x66, 0xa9, 0xa6, 0x6b, 0x8a, 0x66, + 0x35, 0xcb, 0xaa, 0xa9, 0x4b, 0xa6, 0x65, 0x50, 0x03, 0x9d, 0xe4, 0x7e, 0x12, 0xf7, 0x93, 0x4a, + 0x55, 0x33, 0x96, 0xac, 0xea, 0xf4, 0x56, 0xb3, 0x24, 0x69, 0x46, 0x3d, 0x55, 0x35, 0xaa, 0x46, + 0x8a, 0x79, 0x96, 0x9a, 0x15, 0x76, 0xc7, 0x6e, 0xd8, 0x15, 0x67, 0x88, 0x9d, 0xad, 0x1a, 0x46, + 0xb5, 0x86, 0x53, 0xaa, 0xa9, 0xa7, 0xd4, 0x46, 0xc3, 0xa0, 0x2a, 0xd5, 0x8d, 0x06, 0x71, 0xac, + 0x7f, 0x75, 0xac, 0x1d, 0x0e, 0x5c, 0x37, 0xe9, 0x96, 0x63, 0x14, 0x07, 0x83, 0x34, 0x4a, 0x6f, + 0x61, 0x8d, 0x3a, 0xf6, 0x73, 0x83, 0x76, 0xba, 0x65, 0x62, 0x97, 0x3b, 0xd6, 0x6b, 0xc6, 0x96, + 0x65, 0x58, 0x9d, 0xe7, 0xf6, 0xda, 0x0c, 0xb3, 0x3b, 0xa8, 0xc9, 0x5e, 0x63, 0x37, 0x67, 0xa2, + 0xd7, 0xd4, 0xc2, 0x04, 0x37, 0x5a, 0x7d, 0xf0, 0x78, 0x9f, 0x8f, 0x8e, 0x37, 0x95, 0x1e, 0x8f, + 0xc4, 0x97, 0x00, 0x8e, 0x66, 0x2c, 0xac, 0x52, 0x2c, 0xe3, 0xb7, 0x9b, 0x98, 0x50, 0xf4, 0x1f, + 0x18, 0xaa, 0x63, 0xaa, 0x96, 0x55, 0xaa, 0x46, 0x41, 0x1c, 0x4c, 0x47, 0x66, 0xa7, 0xa4, 0xde, + 0xad, 0x5f, 0x63, 0xca, 0x39, 0x6a, 0x15, 0x53, 0xb5, 0xb8, 0x65, 0x62, 0xb9, 0x03, 0x42, 0x39, + 0x18, 0x20, 0x26, 0xd6, 0xa2, 0x3e, 0x06, 0xbe, 0x20, 0x0d, 0xe4, 0x4d, 0xe2, 0xd0, 0x82, 0x89, + 0x35, 0x1b, 0xba, 0x38, 0xfe, 0xd9, 0xf6, 0x88, 0x8d, 0x90, 0xaa, 0x9a, 0x62, 0xff, 0xca, 0x0c, + 0x3f, 0x1f, 0x7e, 0xb8, 0x10, 0xe4, 0x8f, 0x4a, 0xfc, 0x0e, 0xe0, 0x98, 0x1b, 0x25, 0x31, 0x8d, + 0x06, 0xc1, 0xe8, 0xea, 0x40, 0x98, 0x71, 0xcf, 0x30, 0xf3, 0x98, 0x7a, 0xc4, 0xb8, 0x06, 0xc7, + 0xc9, 0x16, 0xa1, 0xb8, 0xae, 0x74, 0x48, 0xfc, 0x8c, 0xe4, 0x52, 0x1f, 0x49, 0x81, 0x79, 0x0d, + 0x52, 0x8d, 0x71, 0xf8, 0xaa, 0x4b, 0x98, 0xe9, 0x11, 0x2d, 0x7a, 0x88, 0xce, 0x63, 0x7a, 0x0c, + 0xc5, 0x3f, 0x01, 0x38, 0x26, 0x63, 0xb3, 0xa6, 0x6a, 0x9d, 0xc4, 0xfc, 0x77, 0x40, 0xf1, 0x45, + 0x4f, 0xc5, 0x0e, 0xcc, 0x43, 0x75, 0xbe, 0x27, 0xc8, 0x84, 0x47, 0x90, 0x0e, 0xf6, 0x90, 0x40, + 0x51, 0x0a, 0x0a, 0x16, 0x26, 0x46, 0xd3, 0xd2, 0xb0, 0xd2, 0xc2, 0x16, 0xd1, 0x8d, 0x06, 0xdb, + 0xbf, 0xf0, 0x62, 0xe0, 0xe9, 0x0e, 0x00, 0xf2, 0xb8, 0x6b, 0x5d, 0xe7, 0xc6, 0x6e, 0x65, 0x27, + 0xe1, 0x78, 0x47, 0x18, 0xcf, 0x65, 0xe2, 0x63, 0x00, 0x61, 0x1e, 0x53, 0x57, 0xe8, 0x59, 0x18, + 0x6e, 0xa8, 0x75, 0x4c, 0x4c, 0x55, 0xc3, 0x4c, 0x69, 0x58, 0x7e, 0xbe, 0x80, 0x10, 0x0c, 0xd8, + 0x37, 0x4c, 0x44, 0x58, 0x66, 0xd7, 0xe8, 0xff, 0xd0, 0x7e, 0x22, 0x23, 0x53, 0x2a, 0x86, 0x55, + 0x57, 0x29, 0x0b, 0x67, 0x6c, 0x76, 0xda, 0x3b, 0x11, 0xee, 0x93, 0x73, 0xcc, 0x37, 0x63, 0x94, + 0xb1, 0x3c, 0x66, 0xf5, 0xac, 0x25, 0x7e, 0x1d, 0x86, 0x91, 0x2e, 0x4f, 0x94, 0x86, 0x11, 0x8d, + 0x55, 0x20, 0x7b, 0x80, 0xb3, 0x85, 0xf1, 0x7d, 0x8b, 0xdb, 0xd1, 0x22, 0x43, 0x0e, 0xb2, 0x49, + 0xd1, 0x12, 0x1c, 0xb1, 0xb8, 0x72, 0xce, 0xe1, 0xdf, 0xb7, 0x41, 0x7a, 0x33, 0x2f, 0x47, 0x1c, + 0x18, 0x63, 0xf1, 0xda, 0xfb, 0xc0, 0x01, 0x7b, 0xdf, 0xd3, 0x29, 0xc3, 0xaf, 0xa2, 0x53, 0x4e, + 0xbc, 0x92, 0x4e, 0x09, 0xbe, 0x44, 0xa7, 0xa0, 0x05, 0x18, 0x24, 0x54, 0xa5, 0x4d, 0x12, 0xfd, + 0xe2, 0x73, 0x10, 0xf7, 0x4f, 0x47, 0x66, 0xcf, 0x7b, 0x10, 0x15, 0x98, 0x0b, 0x0f, 0x69, 0xd1, + 0x7f, 0x7f, 0x1b, 0xc8, 0x0e, 0x0a, 0x2d, 0xc3, 0x93, 0x16, 0xae, 0x60, 0xcb, 0xd2, 0x1b, 0x55, + 0x85, 0x4f, 0x72, 0x12, 0x0d, 0x31, 0xa2, 0xb3, 0xfb, 0x34, 0x55, 0x85, 0xa9, 0x11, 0x3a, 0x30, + 0xbe, 0x4e, 0xd0, 0x3a, 0x8c, 0x96, 0x71, 0x0d, 0x53, 0x5c, 0x56, 0xb8, 0x0d, 0x97, 0x3b, 0x8c, + 0xe1, 0x23, 0x30, 0x4e, 0x38, 0x68, 0xd9, 0x01, 0xbb, 0xbc, 0x6f, 0xc0, 0xc9, 0xb2, 0x4e, 0xd4, + 0x52, 0xcd, 0x8b, 0x18, 0x1e, 0x81, 0xf8, 0x8c, 0x0b, 0xef, 0x63, 0xee, 0x6a, 0xc6, 0x6b, 0x81, + 0x10, 0x10, 0x7c, 0x89, 0xaf, 0x00, 0x8c, 0xac, 0xe8, 0xe4, 0x88, 0x0d, 0x78, 0x01, 0x8e, 0xd4, + 0xd4, 0x12, 0xae, 0x29, 0x15, 0xbd, 0x46, 0xb1, 0xe5, 0x34, 0x62, 0x84, 0xad, 0xe5, 0xd8, 0x12, + 0x9a, 0x82, 0xa3, 0x16, 0x36, 0x0d, 0x8b, 0x2a, 0x15, 0x1d, 0xd7, 0xca, 0x24, 0xea, 0x8f, 0xfb, + 0xa7, 0xc3, 0xf2, 0x08, 0x5f, 0xcc, 0xb1, 0x35, 0x74, 0x05, 0x9e, 0x72, 0x9c, 0x78, 0x52, 0x5c, + 0xdf, 0x00, 0xf3, 0x45, 0xdc, 0xc6, 0x53, 0xc8, 0x11, 0x89, 0x7b, 0x41, 0x28, 0xf0, 0x38, 0x79, + 0x53, 0x2e, 0x53, 0x5c, 0x47, 0x13, 0x30, 0x48, 0x71, 0x43, 0x6d, 0x50, 0x56, 0x51, 0x61, 0xd9, + 0xb9, 0x7b, 0x81, 0x29, 0x22, 0x40, 0x7f, 0x53, 0x2f, 0xf3, 0x41, 0x26, 0xdb, 0x97, 0x28, 0x0e, + 0x23, 0x65, 0x4c, 0x34, 0x4b, 0x67, 0xef, 0xcc, 0x68, 0x84, 0x2b, 0xed, 0x5a, 0x42, 0x31, 0x18, + 0x72, 0xb7, 0x39, 0x3a, 0x12, 0x07, 0xd3, 0x21, 0xb9, 0x73, 0x8f, 0xf2, 0x30, 0xc8, 0x36, 0x85, + 0x4b, 0x8a, 0xcc, 0xa6, 0x3c, 0x4a, 0xb4, 0x5f, 0x8e, 0xb4, 0xc2, 0x10, 0xd9, 0x06, 0xb5, 0xb6, + 0x64, 0x07, 0x8e, 0xd6, 0x61, 0xa4, 0xeb, 0xbc, 0xe2, 0x24, 0xff, 0x9f, 0x47, 0x61, 0x4b, 0x3f, + 0x87, 0x71, 0xca, 0x6e, 0x22, 0x34, 0x07, 0xa1, 0xb1, 0xd9, 0xc0, 0x96, 0x62, 0x1f, 0x0c, 0xa2, + 0x61, 0xd6, 0x90, 0xb1, 0x3e, 0xda, 0x75, 0x1d, 0x6f, 0xba, 0x15, 0x15, 0x66, 0xde, 0xf6, 0x4a, + 0xcf, 0x50, 0x19, 0x7d, 0x15, 0x43, 0x65, 0xec, 0xa5, 0x86, 0xca, 0x1c, 0x0c, 0x55, 0x31, 0x65, + 0x13, 0xc2, 0x19, 0x4f, 0x87, 0x0c, 0x16, 0xf9, 0x44, 0x95, 0xdf, 0xa0, 0x0c, 0x84, 0x4e, 0xfd, + 0x11, 0x4c, 0x9d, 0x19, 0x70, 0xb4, 0x61, 0x12, 0xe6, 0xb8, 0x02, 0xa6, 0xb1, 0x39, 0x18, 0xe9, + 0x4a, 0x9c, 0x5d, 0x49, 0x1b, 0x78, 0xcb, 0xa9, 0x3a, 0xfb, 0x12, 0x9d, 0x82, 0xc3, 0x2d, 0xb5, + 0xd6, 0x74, 0x0b, 0x8e, 0xdf, 0xcc, 0xfb, 0xfe, 0x0d, 0x62, 0x0b, 0x50, 0xe8, 0xcf, 0xd2, 0x71, + 0xf0, 0xd7, 0x02, 0xa1, 0x61, 0x21, 0x98, 0xb8, 0x03, 0x47, 0xba, 0x93, 0x8f, 0xe6, 0xe0, 0xb0, + 0x4e, 0x71, 0x9d, 0x44, 0xf9, 0x74, 0x9c, 0x3a, 0x42, 0xb1, 0xc8, 0x1c, 0x81, 0xae, 0xc0, 0x20, + 0x3f, 0xa0, 0x46, 0x7d, 0x0c, 0x1b, 0xed, 0xc3, 0x66, 0x6d, 0x23, 0xdb, 0x43, 0xc7, 0x2f, 0xb1, + 0x01, 0x47, 0x97, 0xd8, 0x10, 0x7b, 0xf1, 0x37, 0xf8, 0x34, 0x14, 0x2a, 0xaa, 0x5e, 0x53, 0xf4, + 0x4a, 0x67, 0xd8, 0xb1, 0x46, 0x0c, 0xc9, 0x63, 0xf6, 0xfa, 0x72, 0xc5, 0x1d, 0x62, 0x33, 0x7f, + 0x00, 0x78, 0xda, 0xf3, 0x15, 0x8e, 0x62, 0x70, 0x22, 0x9f, 0x2d, 0x2a, 0x72, 0xe1, 0x86, 0x92, + 0x5b, 0x93, 0x57, 0xd3, 0x45, 0x65, 0x29, 0x9b, 0x4b, 0xdf, 0x5c, 0x29, 0x0a, 0x43, 0xe8, 0x1c, + 0x9c, 0xec, 0xb3, 0xe5, 0xd6, 0x64, 0x25, 0x23, 0x67, 0xd3, 0xc5, 0xac, 0x00, 0x90, 0x08, 0x63, + 0x1e, 0x66, 0x39, 0x7b, 0x63, 0x25, 0x9d, 0xc9, 0x0a, 0x3e, 0x34, 0x09, 0x4f, 0xf7, 0xd9, 0x0b, + 0xc5, 0x74, 0xf1, 0x66, 0x41, 0xf0, 0xa3, 0x33, 0xf0, 0x2f, 0x7d, 0x26, 0x39, 0x9b, 0x5e, 0x12, + 0x02, 0xe8, 0x22, 0x8c, 0x0f, 0x18, 0x72, 0x59, 0x59, 0x5e, 0xbe, 0x9e, 0x57, 0xd6, 0x16, 0xaf, + 0x65, 0x33, 0xc5, 0x82, 0x30, 0xec, 0xe1, 0xb5, 0x28, 0xaf, 0xfd, 0x2f, 0x7b, 0x9d, 0x3b, 0x67, + 0xaf, 0x67, 0xb2, 0x05, 0x21, 0x38, 0xfb, 0x49, 0x18, 0xfa, 0xd3, 0x37, 0x96, 0xd1, 0x2e, 0x80, + 0x41, 0x7e, 0xc0, 0x40, 0x87, 0x9e, 0x3d, 0x62, 0x17, 0x0e, 0xf0, 0x70, 0x4e, 0x5e, 0xef, 0x83, + 0xf6, 0xb7, 0xd1, 0xd5, 0xca, 0xbf, 0x6e, 0x6b, 0x49, 0x82, 0xb5, 0xa6, 0x85, 0xeb, 0x98, 0xdc, + 0x4a, 0x96, 0x54, 0xa2, 0x6b, 0xc9, 0x26, 0xc1, 0xd6, 0xe5, 0x7e, 0x13, 0xa1, 0x6a, 0xa3, 0xac, + 0x5a, 0x65, 0x6e, 0x6d, 0x61, 0x92, 0xd4, 0x8d, 0x64, 0x03, 0xd3, 0x4d, 0xc3, 0xda, 0x48, 0x6e, + 0x5a, 0x3a, 0xc5, 0x77, 0x1f, 0xff, 0xf2, 0xa9, 0xef, 0xef, 0x89, 0xcb, 0xce, 0xbf, 0xb8, 0x54, + 0x27, 0xef, 0x24, 0x75, 0xc7, 0xed, 0x76, 0xa9, 0xb3, 0xb8, 0x6d, 0xff, 0x57, 0x22, 0xf3, 0x60, + 0x06, 0x3d, 0x06, 0xd0, 0x9f, 0xc7, 0x14, 0x9d, 0xdb, 0xef, 0xc8, 0xc6, 0x45, 0x89, 0x07, 0x9f, + 0xe8, 0x12, 0x1f, 0x82, 0x07, 0xdf, 0xf8, 0x6c, 0x55, 0xb2, 0xb7, 0xaa, 0xba, 0xd1, 0xd0, 0xa9, + 0x71, 0x80, 0x30, 0xd7, 0xa1, 0x4f, 0x9b, 0x85, 0xd5, 0x32, 0x93, 0x76, 0x19, 0xcd, 0x78, 0x49, + 0xeb, 0x53, 0xc4, 0x17, 0xb6, 0xd1, 0x0f, 0x00, 0x06, 0xec, 0x46, 0x43, 0xe2, 0xbe, 0x1d, 0xc8, + 0x75, 0x9d, 0x3f, 0xa4, 0x43, 0x13, 0xef, 0xbe, 0x6e, 0x61, 0x7f, 0x43, 0x53, 0x47, 0x10, 0x86, + 0x7e, 0x03, 0xf0, 0x84, 0x73, 0x3e, 0x45, 0x87, 0x9f, 0x5d, 0x63, 0x89, 0x83, 0x5c, 0x1c, 0x69, + 0xf7, 0x5e, 0x53, 0x15, 0xa6, 0x63, 0x57, 0x8f, 0x53, 0x85, 0x7d, 0x96, 0x6d, 0xbb, 0x2a, 0xbf, + 0x03, 0x30, 0xc8, 0x67, 0x9b, 0x67, 0xc3, 0xf5, 0x8c, 0xbd, 0xd8, 0x84, 0xc4, 0xbf, 0x21, 0x48, + 0xee, 0x37, 0x04, 0x29, 0x5b, 0x37, 0xe9, 0x56, 0xe2, 0xbd, 0xd7, 0xa4, 0x2f, 0x35, 0x73, 0x8c, + 0x52, 0x9c, 0x07, 0x33, 0xb1, 0x95, 0xfb, 0x3b, 0xc0, 0xf7, 0xe3, 0x0e, 0x88, 0x0e, 0x2a, 0xe1, + 0x2f, 0xb6, 0xdd, 0x1d, 0x00, 0xda, 0x3b, 0x40, 0x3c, 0xf8, 0xf5, 0x77, 0xf7, 0xfb, 0xa8, 0x4f, + 0x00, 0x8b, 0x1f, 0x80, 0x87, 0x0b, 0xc3, 0x19, 0xf9, 0xe6, 0xd2, 0xca, 0xa3, 0x27, 0xe2, 0xd0, + 0xee, 0x13, 0x71, 0xe8, 0xd9, 0x13, 0x11, 0xbc, 0xd3, 0x16, 0xc1, 0xd7, 0x6d, 0x11, 0x3c, 0x68, + 0x8b, 0xe0, 0x51, 0x5b, 0x04, 0x3f, 0xb7, 0x45, 0xf0, 0xb4, 0x2d, 0x0e, 0x3d, 0x6b, 0x8b, 0xe0, + 0xa3, 0x3d, 0x71, 0xe8, 0xfe, 0x9e, 0x08, 0x1e, 0xed, 0x89, 0x43, 0xbb, 0x7b, 0xe2, 0xd0, 0x9b, + 0xf9, 0xaa, 0x61, 0x6e, 0x54, 0xa5, 0x96, 0x61, 0x1f, 0x1b, 0x2d, 0x55, 0x6a, 0x92, 0x14, 0xbb, + 0xb0, 0xff, 0x1f, 0x25, 0x4d, 0xcb, 0x68, 0xe9, 0x65, 0x6c, 0x25, 0x5d, 0x73, 0xca, 0x2c, 0x55, + 0x8d, 0x14, 0xbe, 0x4d, 0x9d, 0xef, 0x19, 0xcf, 0xbf, 0xb6, 0x94, 0x82, 0x6c, 0xcb, 0xff, 0xf1, + 0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0x33, 0x52, 0xa0, 0x91, 0x4e, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/bgp/public_crudapi.vesapi.go b/pbgo/extschema/schema/bgp/public_crudapi.vesapi.go index 1b38ba4b0..7f3eccf79 100644 --- a/pbgo/extschema/schema/bgp/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/bgp/public_crudapi.vesapi.go @@ -3601,10 +3601,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3661,10 +3665,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3723,10 +3731,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/bgp/types.pb.go b/pbgo/extschema/schema/bgp/types.pb.go index ae84647ec..d6a41857d 100644 --- a/pbgo/extschema/schema/bgp/types.pb.go +++ b/pbgo/extschema/schema/bgp/types.pb.go @@ -2741,222 +2741,223 @@ func init() { } var fileDescriptor_cad0df24d7dab112 = []byte{ - // 3437 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x5a, 0x4d, 0x6c, 0x1b, 0x57, - 0x7e, 0xd7, 0x13, 0x29, 0x8a, 0xfa, 0x53, 0xa4, 0x86, 0x4f, 0xa2, 0x34, 0xa6, 0x6d, 0x8a, 0xa6, - 0xe3, 0x46, 0x2b, 0x8f, 0x29, 0x73, 0x64, 0xd1, 0x89, 0xd2, 0x78, 0x23, 0x5a, 0xd4, 0x57, 0x6c, - 0x49, 0x18, 0xd2, 0xda, 0x6d, 0x50, 0x60, 0x30, 0x22, 0x1f, 0xe9, 0x59, 0x93, 0x33, 0x83, 0x99, - 0x11, 0x1d, 0x2d, 0x60, 0x20, 0x2d, 0x50, 0xa0, 0x40, 0x2f, 0x45, 0xd1, 0x16, 0xd8, 0x43, 0x0f, - 0xed, 0xa1, 0x2d, 0xf6, 0xd4, 0x5e, 0x7a, 0x28, 0x17, 0xa8, 0xd0, 0x53, 0x90, 0x93, 0x8e, 0xe9, - 0xc7, 0x02, 0x1b, 0xe5, 0x92, 0xdd, 0x53, 0xe0, 0x2d, 0x7a, 0xdd, 0x62, 0xde, 0x7c, 0x70, 0xf8, - 0x19, 0xba, 0x5d, 0x04, 0x45, 0x6e, 0xe4, 0xfb, 0x7f, 0xbc, 0xff, 0xfb, 0xbf, 0xff, 0xc7, 0x6f, - 0xfe, 0x33, 0x70, 0xb3, 0x45, 0x8c, 0xac, 0xac, 0xae, 0x19, 0x95, 0xe7, 0xa4, 0x29, 0xad, 0x9d, - 0xd6, 0xb5, 0x35, 0xf3, 0x5c, 0x23, 0x46, 0x56, 0xd3, 0x55, 0x53, 0xc5, 0x71, 0x9b, 0x9c, 0xb5, - 0xc9, 0xd9, 0xd3, 0xba, 0x96, 0xbc, 0x57, 0x97, 0xcd, 0xe7, 0x67, 0xa7, 0xd9, 0x8a, 0xda, 0x5c, - 0xab, 0xab, 0x75, 0x75, 0x8d, 0x72, 0x9e, 0x9e, 0xd5, 0xe8, 0x3f, 0xfa, 0x87, 0xfe, 0xb2, 0x35, - 0x24, 0x97, 0xeb, 0xaa, 0x5a, 0x6f, 0x90, 0x0e, 0x97, 0x29, 0x37, 0x89, 0x61, 0x4a, 0x4d, 0xcd, - 0x61, 0x58, 0xea, 0xb6, 0x40, 0x21, 0xa6, 0x43, 0xb8, 0xde, 0x4d, 0x50, 0x35, 0x53, 0x56, 0x15, - 0xc7, 0xb0, 0x64, 0x8f, 0xdd, 0x5a, 0xcb, 0x14, 0x7d, 0x76, 0x27, 0xaf, 0x75, 0x93, 0xfd, 0xa4, - 0x1b, 0xdd, 0xa4, 0x96, 0xd4, 0x90, 0xab, 0x92, 0x49, 0x1c, 0x6a, 0xba, 0x87, 0x2a, 0x93, 0x97, - 0x62, 0xf7, 0xce, 0xcb, 0xfd, 0x1c, 0x86, 0x7f, 0x83, 0xcc, 0x17, 0x01, 0x88, 0x16, 0xea, 0xda, - 0xb1, 0xa4, 0x4b, 0x4d, 0x62, 0x12, 0xdd, 0xc0, 0xd7, 0x21, 0x20, 0x19, 0x0a, 0x8b, 0xd2, 0x68, - 0x25, 0x5a, 0x98, 0xf9, 0xe7, 0x5f, 0x5e, 0x04, 0x82, 0xab, 0x93, 0x2b, 0x48, 0xb0, 0x56, 0xf1, - 0x7b, 0x10, 0x6d, 0xa8, 0x15, 0xa9, 0x21, 0x4a, 0xd5, 0xaa, 0x4e, 0x0c, 0x83, 0x0d, 0xa5, 0xd1, - 0x4a, 0x84, 0x5f, 0xc8, 0x76, 0xbb, 0xbe, 0xd8, 0xd4, 0xcc, 0xf3, 0xbd, 0x09, 0x61, 0x96, 0x32, - 0x6f, 0xd9, 0xbc, 0x78, 0x1d, 0x66, 0x6a, 0xba, 0xda, 0x14, 0x0d, 0xd9, 0x24, 0xec, 0xf4, 0x48, - 0xc1, 0xb0, 0xc5, 0x58, 0x92, 0x4d, 0x82, 0x57, 0x01, 0x64, 0xcd, 0xdb, 0x2e, 0x9c, 0x46, 0x2b, - 0x33, 0x8e, 0x55, 0xfa, 0xe4, 0xc7, 0x68, 0x6f, 0x42, 0x98, 0x91, 0x35, 0x77, 0x83, 0x1f, 0x02, - 0x3e, 0xad, 0x6b, 0xa2, 0xae, 0x9e, 0x99, 0x44, 0x17, 0xe5, 0x2a, 0xf5, 0x32, 0x3b, 0x99, 0x46, - 0x2b, 0x31, 0x3e, 0x93, 0xed, 0x8b, 0x8e, 0x6c, 0xa1, 0xae, 0x09, 0x94, 0x77, 0xbf, 0x5a, 0x3e, - 0xd7, 0x48, 0x61, 0xfa, 0xf3, 0x57, 0xe8, 0xab, 0x36, 0x42, 0xc2, 0xdc, 0x69, 0x37, 0x05, 0xef, - 0x43, 0xb4, 0x4b, 0x33, 0x1b, 0xa0, 0xe6, 0xdf, 0xe8, 0x51, 0xba, 0xef, 0x9a, 0xd2, 0xad, 0x2e, - 0xe2, 0x53, 0x87, 0xdf, 0x83, 0x78, 0xb7, 0x91, 0x2f, 0xc8, 0x39, 0x1b, 0xa4, 0xe7, 0x62, 0x1c, - 0x01, 0xe7, 0x78, 0xec, 0x07, 0x42, 0xcc, 0x27, 0xf9, 0x21, 0x39, 0xdf, 0x0c, 0xbd, 0x7e, 0x14, - 0xc8, 0x71, 0x1b, 0x85, 0x3b, 0xc0, 0x74, 0x14, 0x54, 0x9e, 0xab, 0x72, 0x85, 0xe0, 0xf8, 0x45, - 0x1b, 0x85, 0x2e, 0xdb, 0x68, 0xea, 0xaa, 0x8d, 0xa6, 0xf2, 0xdc, 0x43, 0xee, 0x9d, 0x83, 0x60, - 0x78, 0x8a, 0x09, 0x65, 0x7e, 0x1e, 0x82, 0x69, 0xeb, 0x8e, 0x09, 0xd1, 0x47, 0xdf, 0xee, 0x0f, - 0x21, 0x61, 0x99, 0xa6, 0x11, 0xa2, 0xbb, 0x1e, 0xf7, 0xbb, 0xf0, 0xce, 0x60, 0x17, 0x5a, 0x7a, - 0x7d, 0xc7, 0x16, 0xac, 0x3b, 0xe8, 0x59, 0xc3, 0x3b, 0xc0, 0xf4, 0x6a, 0x1e, 0xc7, 0x85, 0xf4, - 0xfc, 0x3e, 0x5d, 0x78, 0x13, 0x16, 0xfa, 0x2c, 0xec, 0xf8, 0x6f, 0xa6, 0xe3, 0xb8, 0x78, 0xb7, - 0xe0, 0x87, 0xe4, 0x1c, 0x2f, 0x43, 0x50, 0x53, 0x75, 0x93, 0x9d, 0xa2, 0x67, 0x8f, 0x58, 0xbc, - 0xa1, 0xd5, 0x20, 0xfb, 0x9b, 0xdf, 0x04, 0x04, 0x4a, 0xc0, 0x8f, 0x60, 0xd1, 0x53, 0x6e, 0x9c, - 0x9d, 0x2a, 0xc4, 0x14, 0xd5, 0x5a, 0xcd, 0x20, 0x26, 0x8d, 0xf2, 0x8e, 0xbb, 0xd8, 0xb4, 0x30, - 0xef, 0xa8, 0x2f, 0x51, 0xb6, 0x23, 0xca, 0x85, 0x4f, 0x20, 0x5c, 0x93, 0x9a, 0x72, 0x43, 0x26, - 0x06, 0xbb, 0x90, 0x0e, 0xac, 0x44, 0xf8, 0xb7, 0x07, 0x78, 0xcc, 0x12, 0xdb, 0xb1, 0xd8, 0xce, - 0x3b, 0x49, 0x57, 0x88, 0xfb, 0x6e, 0x7e, 0xea, 0xcf, 0xd0, 0x24, 0x13, 0x14, 0x3c, 0x5d, 0xf8, - 0x47, 0x10, 0x93, 0x15, 0x93, 0xe8, 0x35, 0xa9, 0x42, 0x44, 0x9d, 0xd4, 0x0c, 0x36, 0x41, 0xb5, - 0xf7, 0xba, 0xee, 0xe8, 0xf4, 0x47, 0xa4, 0x62, 0x0a, 0xa4, 0x46, 0xa3, 0xef, 0xce, 0x4f, 0x5f, - 0xc5, 0x15, 0x62, 0xbe, 0x54, 0xf5, 0x17, 0xa2, 0x27, 0xde, 0xbb, 0x4d, 0x58, 0x88, 0x7a, 0x34, - 0x81, 0xd4, 0x0c, 0xfc, 0x1e, 0x24, 0xa4, 0x46, 0x43, 0x94, 0x15, 0x43, 0xae, 0x92, 0x8e, 0x9c, - 0xc1, 0x2e, 0xa6, 0xd1, 0x4a, 0xb8, 0x13, 0xd2, 0xf3, 0x52, 0xa3, 0xb1, 0x4f, 0x99, 0xf6, 0x3d, - 0x1e, 0xfc, 0x3e, 0x2c, 0x5a, 0xc2, 0xea, 0x99, 0xd9, 0x2b, 0xbd, 0xd4, 0x2d, 0xbd, 0x20, 0x35, - 0x1a, 0x47, 0x36, 0x97, 0x4f, 0x9c, 0x85, 0x69, 0x4d, 0x32, 0x0c, 0xb9, 0x45, 0x58, 0xd6, 0xe2, - 0x17, 0xdc, 0xbf, 0xf8, 0x31, 0xc4, 0x15, 0x55, 0x94, 0xce, 0xcc, 0xe7, 0x44, 0x31, 0xe5, 0x8a, - 0x64, 0x95, 0x38, 0x36, 0x39, 0xb2, 0x82, 0x30, 0x8a, 0xba, 0xd5, 0xc5, 0x8f, 0xdf, 0x86, 0xd9, - 0x66, 0x75, 0x83, 0x6a, 0xa1, 0x31, 0x73, 0x9d, 0xc6, 0x4c, 0xe0, 0xd3, 0x57, 0x56, 0x15, 0x81, - 0x66, 0x75, 0xc3, 0xe2, 0xa7, 0x49, 0xf6, 0x59, 0x1b, 0x4d, 0x32, 0xa8, 0x90, 0x86, 0x08, 0x65, - 0xf6, 0xe5, 0x57, 0xf2, 0xb2, 0x8d, 0xae, 0x59, 0xf9, 0xc5, 0xe7, 0x39, 0xfe, 0xe1, 0x41, 0x30, - 0x7c, 0x8d, 0x49, 0x66, 0xfe, 0x04, 0x41, 0xd4, 0x3b, 0xc6, 0x13, 0xd9, 0x30, 0xf1, 0x8f, 0x01, - 0x7c, 0x87, 0x47, 0xf4, 0xb6, 0x7a, 0x0b, 0x10, 0xad, 0xc5, 0x3d, 0x77, 0x96, 0x1f, 0x74, 0x67, - 0x9f, 0xfe, 0xcc, 0x7f, 0x61, 0xee, 0xaf, 0xb0, 0xb7, 0xc6, 0x22, 0xc1, 0xb7, 0x5b, 0xe6, 0xcf, - 0x11, 0x80, 0x1d, 0x5f, 0xfb, 0x0a, 0x31, 0x71, 0x16, 0x42, 0x44, 0x91, 0x4e, 0x1b, 0x76, 0x12, - 0x0f, 0xf7, 0x97, 0xc3, 0x85, 0xef, 0xc3, 0x74, 0x55, 0x36, 0xa8, 0x40, 0x60, 0xa4, 0x80, 0xcb, - 0x56, 0x48, 0x41, 0xd4, 0x96, 0x75, 0x1d, 0x15, 0xbd, 0x68, 0xa3, 0xc9, 0xcb, 0x36, 0x42, 0x57, - 0x6d, 0x84, 0xf8, 0x83, 0x60, 0x18, 0x31, 0x93, 0x99, 0xbf, 0x40, 0x10, 0xe9, 0x98, 0x95, 0xff, - 0x7f, 0x63, 0xd7, 0xdf, 0x22, 0x58, 0xea, 0xd8, 0xd5, 0xd2, 0x14, 0x5f, 0x2b, 0x7c, 0x53, 0x1b, - 0xdf, 0x1d, 0xcb, 0x46, 0x2f, 0x0d, 0xfc, 0xc6, 0x26, 0x61, 0xc6, 0xd0, 0x47, 0x1a, 0xfa, 0x4f, - 0x08, 0xa2, 0x5d, 0x86, 0xe2, 0xed, 0x1e, 0xf3, 0x56, 0x07, 0x54, 0x9b, 0x21, 0x47, 0xfb, 0xed, - 0x18, 0x3d, 0x9e, 0x87, 0xff, 0x1a, 0x41, 0xcc, 0x77, 0xf3, 0x96, 0xe5, 0xdf, 0xa2, 0x63, 0xc7, - 0xb3, 0xf1, 0x6f, 0x3c, 0xe7, 0x3e, 0x3b, 0x93, 0xab, 0xdf, 0xb2, 0x89, 0xe9, 0x5e, 0x13, 0xe7, - 0x7c, 0x26, 0x06, 0x78, 0x6e, 0xdd, 0x31, 0xf2, 0x27, 0x9e, 0x91, 0x82, 0x29, 0xe9, 0xf5, 0x6f, - 0x25, 0xb9, 0xc7, 0xb5, 0xed, 0x23, 0x58, 0x18, 0xd4, 0xd8, 0xf0, 0x2d, 0x08, 0xd1, 0x3e, 0x76, - 0x4e, 0x21, 0x87, 0xaf, 0x45, 0x33, 0x82, 0x43, 0xc0, 0xcb, 0x10, 0x71, 0xb6, 0x30, 0xf4, 0x56, - 0x9e, 0x9e, 0x24, 0x2c, 0x80, 0xbd, 0x54, 0xd2, 0x5b, 0xf9, 0xcc, 0x7f, 0xcd, 0xc2, 0xac, 0xa5, - 0xbc, 0xf8, 0xb1, 0x49, 0x74, 0x45, 0x6a, 0x8c, 0x06, 0x31, 0x77, 0x60, 0xda, 0x8f, 0x30, 0x7a, - 0xd0, 0xa2, 0x4b, 0xc3, 0xef, 0xc1, 0xbc, 0xd3, 0xe3, 0x4f, 0x49, 0x5d, 0x56, 0xdc, 0x4e, 0x1f, - 0xec, 0xe9, 0xf4, 0x7b, 0x13, 0x42, 0xdc, 0xe6, 0x2b, 0x58, 0x6c, 0x4e, 0xa7, 0x7f, 0x08, 0xce, - 0xa2, 0x48, 0x94, 0xaa, 0x2b, 0x3a, 0xd5, 0x2f, 0x3a, 0x67, 0x73, 0x15, 0x95, 0xaa, 0x23, 0xd8, - 0x05, 0x81, 0x43, 0x63, 0x42, 0xe0, 0xef, 0xc3, 0x5c, 0x95, 0xd4, 0xa4, 0xb3, 0x86, 0x29, 0xd6, - 0x25, 0x93, 0xbc, 0x94, 0xce, 0xbf, 0x01, 0x3d, 0xc7, 0x1c, 0xf6, 0x5d, 0x9b, 0xdb, 0x7f, 0xed, - 0x37, 0xc6, 0xba, 0x76, 0xbc, 0xe2, 0x60, 0x25, 0xa0, 0x67, 0x5a, 0xf8, 0xf7, 0x36, 0x0a, 0xe4, - 0x1e, 0xbe, 0x6b, 0x1d, 0x2d, 0xbc, 0x1a, 0xb2, 0x20, 0xd3, 0x0a, 0x72, 0x40, 0xd3, 0x36, 0x44, - 0xec, 0x7b, 0x14, 0x65, 0x85, 0x98, 0x6c, 0x84, 0xea, 0xbf, 0x39, 0xb2, 0x12, 0x15, 0x82, 0xff, - 0xf0, 0x33, 0x84, 0x04, 0xa8, 0x75, 0xba, 0x94, 0x06, 0x31, 0x9f, 0x16, 0xb1, 0x95, 0x67, 0x67, - 0xa9, 0xa2, 0xd4, 0x48, 0x45, 0xf9, 0xc2, 0xea, 0xaf, 0x5e, 0xdd, 0xae, 0x92, 0xa6, 0x9a, 0xe3, - 0x4c, 0x62, 0x98, 0x5c, 0x45, 0x37, 0x39, 0xc3, 0x94, 0xea, 0xb2, 0x52, 0xe7, 0x0c, 0xb5, 0x66, - 0x9e, 0x4a, 0xca, 0x0b, 0xb1, 0x49, 0x2a, 0x74, 0xbf, 0xd9, 0xce, 0x7e, 0x27, 0x79, 0xfc, 0xfb, - 0x30, 0xe3, 0x35, 0x4d, 0x36, 0x41, 0x37, 0x1b, 0xa7, 0x43, 0xb3, 0xc3, 0x3a, 0xf4, 0x1e, 0x12, - 0x3a, 0x0a, 0xf1, 0xbe, 0x1f, 0xb2, 0x35, 0x64, 0xc3, 0xa4, 0xf8, 0x29, 0xc2, 0xa7, 0x07, 0x9c, - 0xa7, 0x0b, 0x3a, 0xec, 0x21, 0x1f, 0x22, 0xa3, 0x58, 0xe2, 0x09, 0xc4, 0xfb, 0xd1, 0xd8, 0xd2, - 0x38, 0x25, 0x06, 0x09, 0x8c, 0xdc, 0x0b, 0xd1, 0x0e, 0x01, 0x0f, 0x80, 0x67, 0xec, 0x78, 0xea, - 0xe2, 0x6a, 0x1f, 0x66, 0x7b, 0x63, 0x64, 0x36, 0xf9, 0x66, 0xc8, 0x6c, 0xd2, 0x8f, 0xcc, 0xf0, - 0x33, 0x98, 0x75, 0x51, 0xbf, 0xac, 0xb5, 0xf2, 0x6c, 0x8a, 0x32, 0xde, 0x1f, 0x2f, 0x08, 0x28, - 0x5e, 0xd2, 0x03, 0x9f, 0x20, 0xb4, 0x17, 0x10, 0x22, 0x8e, 0x9e, 0x7d, 0xad, 0x95, 0xc7, 0x1f, - 0xc0, 0xe2, 0x80, 0x5a, 0x60, 0x45, 0xe1, 0x72, 0x6f, 0x4e, 0x07, 0x84, 0xf9, 0xbe, 0x72, 0x70, - 0x92, 0xc7, 0xbf, 0x0b, 0x0b, 0x7d, 0x05, 0xc1, 0x92, 0x4f, 0xf7, 0xcb, 0xc7, 0x7b, 0x6a, 0xc2, - 0x49, 0x1e, 0xbf, 0x03, 0xb3, 0x5e, 0x55, 0xb0, 0xa4, 0x6e, 0x8d, 0xf0, 0x5f, 0x40, 0x00, 0xb7, - 0x30, 0x9c, 0xe4, 0xf1, 0x36, 0xe0, 0x9e, 0xd2, 0x60, 0xc9, 0x67, 0x46, 0xca, 0x33, 0xdd, 0xd5, - 0xe1, 0x24, 0x8f, 0x37, 0x00, 0x9c, 0xc4, 0xb7, 0xa4, 0x6f, 0x8f, 0x94, 0x9e, 0x71, 0x38, 0x4f, - 0xf2, 0x9b, 0xec, 0xeb, 0x47, 0x89, 0x1c, 0xc7, 0x73, 0xfc, 0xbb, 0x5c, 0xee, 0x3e, 0x97, 0xcb, - 0x71, 0x39, 0x9e, 0xe3, 0xef, 0x73, 0xbc, 0xf5, 0x78, 0x1a, 0x73, 0xef, 0xc9, 0x69, 0x1b, 0xf3, - 0x17, 0x6d, 0x14, 0xb8, 0x6c, 0xa3, 0xc9, 0xab, 0x36, 0x9a, 0x5e, 0xe7, 0x1e, 0x70, 0x1b, 0x5c, - 0xbe, 0x70, 0x17, 0x98, 0x4e, 0x96, 0x38, 0x8c, 0x4b, 0x17, 0x6d, 0x94, 0xb8, 0x6c, 0xa3, 0x85, - 0xab, 0x36, 0x8a, 0xf0, 0x39, 0x8e, 0xe7, 0x39, 0x7e, 0x9d, 0xe3, 0x1f, 0x7c, 0x33, 0x1a, 0x2f, - 0xac, 0x41, 0xbc, 0x7b, 0x57, 0xb1, 0x95, 0xc7, 0xc9, 0x8b, 0x36, 0xba, 0x7d, 0xd9, 0x46, 0x37, - 0xaf, 0xda, 0x28, 0xb6, 0x7e, 0x9f, 0x5b, 0xcf, 0x71, 0xeb, 0x3c, 0xb7, 0xbe, 0xce, 0xad, 0x3f, - 0x38, 0x08, 0x86, 0x27, 0x99, 0xc0, 0x41, 0x30, 0x1c, 0x66, 0x66, 0x0e, 0x82, 0xe1, 0x05, 0x26, - 0x61, 0x03, 0xfa, 0x83, 0x60, 0xf8, 0x26, 0x93, 0xca, 0xfc, 0x6a, 0xca, 0x6e, 0x3b, 0x34, 0xda, - 0xad, 0xb6, 0x33, 0x66, 0x67, 0xe9, 0xaa, 0xf1, 0xc1, 0x31, 0x6b, 0xfc, 0x3d, 0x08, 0x57, 0x15, - 0x43, 0x54, 0xa4, 0x26, 0xa1, 0x8d, 0xa4, 0x6f, 0x18, 0xf0, 0xdc, 0x86, 0x0c, 0x8a, 0x71, 0x28, - 0x35, 0x09, 0xe6, 0xba, 0xea, 0x33, 0x7b, 0xd1, 0x46, 0x68, 0x44, 0x8d, 0xde, 0xed, 0xaa, 0xae, - 0x2d, 0x4d, 0x71, 0xca, 0x74, 0xfa, 0x9b, 0x00, 0xa3, 0x10, 0xad, 0x75, 0x21, 0xce, 0x03, 0x98, - 0xf3, 0x29, 0xb2, 0xa0, 0x1c, 0xcb, 0x50, 0x4d, 0xb7, 0x46, 0xd7, 0x69, 0x4b, 0x55, 0xac, 0xd6, - 0x8d, 0x01, 0x3b, 0x46, 0x9d, 0xd9, 0x90, 0x8b, 0x8d, 0x7f, 0x83, 0x51, 0x0e, 0x34, 0x73, 0x8d, - 0x72, 0x91, 0x5a, 0x47, 0x91, 0x6e, 0xc3, 0x22, 0xa7, 0x77, 0x0c, 0x57, 0xe4, 0xc0, 0x27, 0x57, - 0x91, 0x8b, 0xa6, 0xde, 0x85, 0x59, 0x37, 0x0d, 0x9a, 0x66, 0xc3, 0x60, 0x63, 0x23, 0xee, 0x0e, - 0x09, 0x11, 0x87, 0xf7, 0xa9, 0xd9, 0x30, 0xf0, 0x43, 0x0f, 0xc3, 0x50, 0xc9, 0xb9, 0x91, 0x92, - 0x0e, 0xb6, 0xb1, 0x04, 0x37, 0xe7, 0x5f, 0x3f, 0x62, 0x78, 0x37, 0x7d, 0xf2, 0x5c, 0xee, 0x21, - 0x97, 0xe3, 0x0b, 0xb7, 0xfa, 0xd2, 0x67, 0xce, 0x97, 0x3e, 0x81, 0x75, 0xee, 0x41, 0xe1, 0x2d, - 0x88, 0x58, 0x3b, 0xb9, 0xf4, 0xc4, 0x45, 0x1b, 0xc5, 0x2e, 0xdb, 0x28, 0x6a, 0x65, 0x43, 0xee, - 0x01, 0x97, 0xdb, 0xf8, 0xba, 0x8d, 0x90, 0x17, 0xe0, 0x51, 0x26, 0x76, 0x10, 0x0c, 0x63, 0x66, - 0xfe, 0x20, 0x18, 0x9e, 0x67, 0x16, 0xbc, 0x60, 0x4f, 0x30, 0x8b, 0x07, 0xc1, 0xf0, 0x22, 0xb3, - 0x94, 0xb9, 0x02, 0x08, 0xd2, 0x01, 0xd1, 0x26, 0x84, 0x9b, 0xc4, 0x94, 0xaa, 0x92, 0x29, 0x51, - 0x80, 0xd5, 0xdf, 0x83, 0x9f, 0x12, 0xc3, 0x90, 0xea, 0xe4, 0x29, 0x31, 0x25, 0x3a, 0xa3, 0xf1, - 0xf8, 0xf1, 0xfb, 0x10, 0x26, 0x0e, 0x46, 0x73, 0xf0, 0xe5, 0xf2, 0x90, 0x01, 0x88, 0x0b, 0xe5, - 0xac, 0x1c, 0x70, 0x45, 0xf0, 0x0e, 0x84, 0x65, 0x27, 0xd7, 0x9c, 0xbc, 0x19, 0x26, 0xee, 0xa6, - 0xa4, 0x1f, 0x4e, 0x7b, 0xb2, 0xf8, 0x00, 0x12, 0xce, 0xe0, 0x40, 0x6c, 0xaa, 0x55, 0x22, 0x3a, - 0x17, 0x55, 0x1d, 0x09, 0xb8, 0x90, 0x30, 0xef, 0x08, 0x3d, 0x55, 0xab, 0x64, 0xdb, 0x11, 0xc1, - 0x7b, 0xb0, 0xd0, 0xa5, 0xcb, 0xbe, 0xba, 0xea, 0x48, 0x00, 0x86, 0x04, 0xec, 0x53, 0x55, 0xb4, - 0x25, 0xf0, 0x1a, 0xc4, 0xec, 0x38, 0x13, 0x0d, 0xa2, 0xb7, 0xe4, 0x0a, 0x61, 0xbf, 0x9a, 0xa6, - 0x89, 0xee, 0x4d, 0x45, 0xa2, 0x36, 0xbd, 0x64, 0x93, 0x37, 0x3f, 0x99, 0x7e, 0xfd, 0x68, 0xca, - 0xaa, 0xaf, 0x1b, 0x9f, 0xb5, 0xd1, 0xaf, 0x43, 0xb0, 0x04, 0x41, 0x2b, 0xf7, 0x93, 0x73, 0x10, - 0x75, 0x3d, 0x9e, 0xb5, 0xea, 0x05, 0xe4, 0x21, 0x68, 0x5d, 0xc4, 0x6a, 0x16, 0x38, 0x58, 0xe8, - 0x5c, 0x01, 0x1f, 0x76, 0xbd, 0x6c, 0xad, 0xba, 0xde, 0xe1, 0xc3, 0xae, 0xf3, 0x20, 0x01, 0x81, - 0xad, 0xd2, 0x61, 0x32, 0x06, 0xb3, 0xae, 0x48, 0x56, 0x32, 0x14, 0xf8, 0xc3, 0x20, 0x4c, 0x3b, - 0x63, 0xb3, 0xd5, 0xff, 0x0e, 0xc0, 0xaf, 0x03, 0x80, 0x81, 0xe9, 0x70, 0xd8, 0x14, 0x58, 0x82, - 0x44, 0xef, 0x1a, 0xed, 0xc9, 0xb0, 0x01, 0x37, 0x3c, 0xc2, 0x80, 0xae, 0x8a, 0x13, 0xc9, 0x79, - 0x7b, 0x6a, 0x96, 0xa6, 0x2d, 0x34, 0x6d, 0x77, 0x41, 0xc8, 0x41, 0xb2, 0x57, 0xac, 0xd3, 0x4a, - 0xf1, 0x7c, 0x32, 0xee, 0x08, 0x15, 0x95, 0xaa, 0x2b, 0xb2, 0x0c, 0xd8, 0x13, 0xf1, 0x2a, 0x2e, - 0x3f, 0xb3, 0xa3, 0xab, 0xcd, 0xb4, 0x55, 0x54, 0xe1, 0x2e, 0xb0, 0x1e, 0x43, 0x4f, 0x9b, 0xe4, - 0xe7, 0xb6, 0xed, 0x85, 0xb4, 0xd3, 0x06, 0xe1, 0x1d, 0x58, 0x1e, 0x65, 0xb7, 0xd5, 0x4b, 0x86, - 0x98, 0xfe, 0x00, 0x6e, 0x0e, 0x37, 0xdd, 0x92, 0x1b, 0x68, 0x7d, 0xc6, 0xe7, 0x40, 0x7f, 0xf7, - 0xf7, 0x1f, 0x20, 0x0b, 0xd7, 0x87, 0x1d, 0xc0, 0xe2, 0xec, 0x3b, 0x03, 0x76, 0x1a, 0xaa, 0xff, - 0xa2, 0x96, 0x01, 0x7b, 0x6b, 0x03, 0xbd, 0x34, 0x6f, 0x01, 0x4c, 0x77, 0x13, 0xa7, 0x07, 0xc1, - 0xdf, 0x21, 0x98, 0xf1, 0x60, 0xde, 0xea, 0x4f, 0x10, 0xfc, 0x25, 0x82, 0x05, 0x9f, 0xbf, 0xbd, - 0xbe, 0x0d, 0x2b, 0x90, 0xe9, 0x5f, 0xa5, 0x98, 0x37, 0xeb, 0x9b, 0x4a, 0x4d, 0x32, 0x01, 0x58, - 0xf1, 0x5d, 0x71, 0x1f, 0xa4, 0xe5, 0x61, 0xab, 0xd1, 0x48, 0xdb, 0x23, 0x45, 0x58, 0xf5, 0x9d, - 0xbb, 0x1f, 0xae, 0xf2, 0x11, 0x8b, 0xd5, 0x99, 0x1f, 0xc2, 0x47, 0x10, 0xeb, 0x86, 0x93, 0xab, - 0x7b, 0xb0, 0x03, 0x19, 0xdf, 0x5e, 0x7d, 0x00, 0x95, 0x0f, 0x1e, 0xaa, 0x0a, 0x81, 0xb4, 0xef, - 0x06, 0xfc, 0xf8, 0x93, 0x9f, 0x7e, 0xba, 0xbd, 0x91, 0xfe, 0x90, 0x9c, 0x17, 0x52, 0x10, 0x31, - 0xcf, 0x35, 0x32, 0xb4, 0x0a, 0xdf, 0x82, 0x98, 0x5b, 0x1d, 0x7c, 0x2c, 0xee, 0x10, 0x3e, 0x90, - 0xe7, 0x1e, 0x7a, 0x25, 0x78, 0x8a, 0x09, 0x65, 0xfe, 0x20, 0x04, 0xb1, 0xdd, 0x86, 0x7a, 0x2a, - 0x35, 0x4a, 0x1a, 0xa9, 0xd0, 0xc1, 0x78, 0x11, 0xa6, 0x5e, 0x3e, 0x27, 0x3a, 0x71, 0x6a, 0xed, - 0xf7, 0x7a, 0x0a, 0x0a, 0x85, 0x79, 0xb2, 0x6e, 0x9e, 0x49, 0x0d, 0xeb, 0xa7, 0x40, 0x6a, 0x25, - 0xd2, 0x20, 0x15, 0x53, 0xd5, 0x9d, 0x87, 0x28, 0x5b, 0xda, 0xea, 0x81, 0x74, 0x74, 0xed, 0x3d, - 0x78, 0x3b, 0x03, 0x81, 0xf4, 0x90, 0x91, 0xbd, 0xc7, 0x27, 0x44, 0x4f, 0xbb, 0xde, 0xfe, 0x94, - 0x61, 0xc6, 0x9d, 0x81, 0x5b, 0x28, 0x27, 0xb0, 0x12, 0xe1, 0x93, 0xc3, 0xc7, 0xfe, 0x85, 0xeb, - 0x7d, 0x03, 0x65, 0xdf, 0x54, 0x32, 0xec, 0x0c, 0xc9, 0x0d, 0xfc, 0x63, 0xe8, 0x7f, 0x68, 0x62, - 0x83, 0x63, 0x0c, 0xb1, 0xd7, 0xc6, 0x1a, 0x62, 0xfb, 0xf6, 0x64, 0x1c, 0x6e, 0x2f, 0x76, 0xf1, - 0x63, 0x98, 0xb2, 0x4f, 0x33, 0x45, 0xf7, 0x5b, 0x1a, 0xd2, 0x52, 0x0a, 0x0b, 0xfd, 0xfa, 0xee, - 0x23, 0xc1, 0x96, 0xc5, 0xa5, 0xbe, 0xe2, 0x1d, 0xa2, 0xaf, 0x44, 0x6e, 0x0f, 0xf6, 0x4d, 0xd9, - 0x5f, 0xc8, 0x87, 0x15, 0x78, 0xfc, 0x7b, 0x30, 0xeb, 0xf9, 0xda, 0x02, 0xde, 0xd3, 0xff, 0x37, - 0x77, 0x83, 0xeb, 0xee, 0x93, 0x3c, 0x96, 0x20, 0x4a, 0xdf, 0x06, 0x7a, 0xfd, 0xf4, 0xab, 0xe9, - 0xb1, 0x1f, 0x71, 0x97, 0x7e, 0xfa, 0xaa, 0x5b, 0xd8, 0x35, 0x7f, 0xd6, 0x5a, 0xf5, 0xd0, 0xf0, - 0x5d, 0xa0, 0xff, 0xc5, 0x16, 0xd1, 0x0d, 0xeb, 0xa1, 0xef, 0x97, 0xd3, 0x14, 0x8b, 0x76, 0x5e, - 0x7a, 0x59, 0xd4, 0x13, 0x9b, 0xb8, 0x19, 0x7e, 0xfd, 0x68, 0x8a, 0xe7, 0x36, 0xb8, 0x5c, 0xe6, - 0x3f, 0x11, 0xc4, 0x1e, 0xeb, 0x44, 0x32, 0x89, 0x97, 0x03, 0xdf, 0xff, 0xdf, 0xe6, 0xc0, 0x6f, - 0x3d, 0xfa, 0xef, 0x8d, 0x17, 0x2b, 0x4e, 0x54, 0x6c, 0xc6, 0x3f, 0x7b, 0xd4, 0x93, 0xcf, 0x99, - 0x9f, 0x23, 0x98, 0x13, 0x88, 0xd6, 0x90, 0x2a, 0xdf, 0xcd, 0xf3, 0xfd, 0x1b, 0x82, 0xc8, 0x2e, - 0x31, 0xbf, 0x93, 0x67, 0xfb, 0xe3, 0x10, 0xc4, 0x9d, 0x4c, 0x2b, 0x99, 0x92, 0x79, 0x66, 0x38, - 0x27, 0x9c, 0x7d, 0xe3, 0xd7, 0x96, 0x11, 0xcd, 0xf7, 0xce, 0xf2, 0x3a, 0xcc, 0x50, 0x05, 0xf4, - 0x81, 0x8d, 0xce, 0x17, 0x85, 0xb0, 0xb5, 0x70, 0x6c, 0x3d, 0x9a, 0xbd, 0x0f, 0xd3, 0x67, 0x9a, - 0x58, 0x55, 0x5f, 0xda, 0xe3, 0xcc, 0x18, 0xff, 0xd6, 0xf0, 0xf4, 0x7f, 0xa6, 0x6d, 0xab, 0x2f, - 0x15, 0xba, 0x41, 0xe8, 0x8c, 0xfe, 0xc6, 0x6f, 0x41, 0x8c, 0xea, 0xee, 0xbc, 0x98, 0xa6, 0x0f, - 0x8f, 0x02, 0x35, 0xd9, 0x7b, 0xe5, 0x7c, 0x0d, 0xc2, 0xf6, 0x11, 0x0c, 0xc5, 0x7e, 0x95, 0x29, - 0x4c, 0x53, 0x03, 0x0d, 0x05, 0xef, 0x40, 0xdc, 0xd9, 0x5f, 0xf4, 0xbe, 0x75, 0x70, 0xc0, 0x6d, - 0x32, 0x6b, 0x7f, 0x0d, 0x91, 0x75, 0xbf, 0x86, 0xc8, 0x96, 0x5d, 0x0e, 0x61, 0xce, 0xde, 0xdf, - 0x5b, 0xc0, 0x3c, 0x24, 0x2a, 0xaa, 0xa2, 0x90, 0x8a, 0xd5, 0x5f, 0xc5, 0x5a, 0x43, 0xd2, 0xc4, - 0x8a, 0x7a, 0xa6, 0x98, 0xf4, 0x8d, 0x7d, 0x54, 0x98, 0xef, 0x10, 0x77, 0x1a, 0x92, 0xf6, 0xd8, - 0x22, 0xe1, 0x3c, 0x2c, 0x49, 0xd5, 0x16, 0xd1, 0x4d, 0xd9, 0x20, 0x55, 0x51, 0xd3, 0x49, 0x4d, - 0xfe, 0xd8, 0x91, 0x9a, 0xa1, 0x52, 0x89, 0x0e, 0xf9, 0x98, 0x52, 0x6d, 0x39, 0x1e, 0x12, 0x3a, - 0xa9, 0x10, 0xb9, 0xd5, 0x2b, 0x05, 0xf6, 0x5e, 0x2e, 0xd1, 0x2f, 0x73, 0xc7, 0x3f, 0x90, 0xa3, - 0x4f, 0xd9, 0x11, 0xea, 0xa8, 0xce, 0xb0, 0x8d, 0x3e, 0x57, 0xdf, 0xee, 0xfd, 0xbe, 0x61, 0xd6, - 0x76, 0xa7, 0xff, 0x3b, 0x86, 0xcd, 0x5f, 0xa0, 0xcf, 0xda, 0xe8, 0x3f, 0x10, 0xa4, 0x21, 0xfa, - 0xc4, 0x5a, 0x4f, 0x3b, 0x04, 0x0b, 0x99, 0x77, 0x49, 0xc3, 0x07, 0xf6, 0x04, 0xc1, 0x65, 0xe0, - 0xef, 0xc3, 0xa2, 0x3f, 0x96, 0xb2, 0xb2, 0xd6, 0x7a, 0x40, 0x81, 0x5a, 0xff, 0x7a, 0xde, 0x5e, - 0x67, 0x61, 0x86, 0x6a, 0xb0, 0x82, 0x25, 0x19, 0xf1, 0x45, 0x12, 0x2c, 0x42, 0xd8, 0xd6, 0x5d, - 0x3a, 0x4c, 0x42, 0xe7, 0x82, 0x61, 0x01, 0xa6, 0xac, 0xe8, 0x25, 0xc9, 0x88, 0x17, 0x5a, 0x69, - 0x04, 0xf7, 0x60, 0x91, 0xae, 0xa6, 0x1f, 0x3f, 0x97, 0x94, 0x3a, 0x49, 0x7b, 0x37, 0x97, 0x9c, - 0x1f, 0x10, 0x01, 0x99, 0x7f, 0x41, 0xf4, 0xb3, 0x10, 0x5f, 0x1a, 0xfc, 0x0e, 0xcc, 0xd9, 0x67, - 0xeb, 0x84, 0x1a, 0xb2, 0x3d, 0x48, 0x97, 0xbd, 0x58, 0xbb, 0x0e, 0x33, 0x8e, 0x0f, 0x0c, 0x85, - 0xa6, 0x72, 0x54, 0x08, 0xdb, 0xde, 0x33, 0x14, 0x7c, 0x08, 0x8c, 0xfd, 0x76, 0x9d, 0xea, 0xb5, - 0x07, 0xa3, 0x36, 0xc8, 0x18, 0x11, 0xf6, 0x1d, 0x23, 0x04, 0x1a, 0xec, 0xf6, 0xff, 0x27, 0xb2, - 0x61, 0x6e, 0x5e, 0xfb, 0xd7, 0x36, 0x4a, 0xc0, 0x3c, 0x40, 0x61, 0xf7, 0x38, 0x6d, 0xaf, 0x63, - 0xfa, 0xc8, 0xb4, 0xbe, 0xfa, 0x8f, 0x08, 0xe6, 0x7a, 0xbe, 0xef, 0xc0, 0x69, 0xb8, 0x51, 0xd8, - 0x3d, 0x16, 0x85, 0xa3, 0x67, 0xe5, 0xa2, 0x20, 0xee, 0x6f, 0x8b, 0x3b, 0xc2, 0xd1, 0x53, 0x71, - 0xff, 0xb0, 0x5c, 0x14, 0x76, 0xb6, 0x1e, 0x17, 0x99, 0x09, 0x7c, 0x0b, 0x6e, 0x0e, 0xe2, 0x38, - 0x16, 0xb7, 0xb6, 0xb7, 0x85, 0x62, 0xa9, 0xc4, 0x20, 0x9c, 0x81, 0xd4, 0x00, 0x96, 0xd2, 0x7e, - 0xb9, 0x28, 0x1e, 0x15, 0x0e, 0x8a, 0x8f, 0xcb, 0xcc, 0x24, 0xde, 0x80, 0xbb, 0xc3, 0x78, 0xca, - 0xc5, 0xa7, 0xc7, 0x4f, 0xb6, 0xca, 0x45, 0xf1, 0x78, 0x4b, 0xd8, 0x7a, 0x5a, 0x2c, 0x17, 0x85, - 0x12, 0x13, 0x48, 0x06, 0x2f, 0xda, 0x08, 0xad, 0xfe, 0xd5, 0x24, 0xe0, 0xfe, 0x0f, 0x2a, 0xf0, - 0x5b, 0x90, 0xb6, 0xb4, 0x1d, 0x17, 0x8b, 0x82, 0x6b, 0x87, 0xad, 0x70, 0xbb, 0xb8, 0xb3, 0xf5, - 0xec, 0x49, 0x59, 0xdc, 0xfd, 0x01, 0x33, 0x31, 0x9c, 0xab, 0xcb, 0xfa, 0x3b, 0x70, 0x6b, 0x30, - 0x57, 0xf7, 0x01, 0xde, 0x81, 0xec, 0x08, 0xb6, 0x11, 0x67, 0xc0, 0xf7, 0xe0, 0x7b, 0x7d, 0x92, - 0x47, 0x3b, 0x3b, 0xa5, 0x62, 0xd9, 0x51, 0xf0, 0xac, 0x70, 0x58, 0x2c, 0x8b, 0x85, 0xe2, 0xee, - 0xfe, 0x21, 0x13, 0xc4, 0x77, 0xe1, 0xed, 0x71, 0xd8, 0x8b, 0x87, 0xdb, 0xcc, 0xd4, 0xea, 0x43, - 0xaf, 0x3e, 0x77, 0x4a, 0x21, 0x8e, 0x43, 0xd4, 0xd3, 0xb0, 0x7d, 0xf4, 0x83, 0x43, 0x66, 0x02, - 0xcf, 0x41, 0xc4, 0x5b, 0x7a, 0x76, 0xcc, 0xa0, 0xd5, 0x17, 0xc0, 0xf4, 0xa2, 0x32, 0x7c, 0x03, - 0x58, 0x8b, 0xa9, 0xbc, 0x25, 0xec, 0x16, 0xcb, 0x62, 0xa9, 0x28, 0x9c, 0xec, 0x3f, 0x2e, 0x8a, - 0xcf, 0x0e, 0x4b, 0xc5, 0x32, 0x33, 0x81, 0x93, 0xb0, 0x38, 0x80, 0xba, 0x23, 0x08, 0x0c, 0xc2, - 0x37, 0xe1, 0xda, 0x00, 0xda, 0xf1, 0xde, 0x51, 0xe1, 0xa8, 0xc4, 0x4c, 0x16, 0xfe, 0x08, 0x5d, - 0x7e, 0x91, 0x9a, 0xf8, 0xfc, 0x8b, 0xd4, 0xc4, 0xd7, 0x5f, 0xa4, 0xd0, 0x27, 0x57, 0x29, 0xf4, - 0xf7, 0x57, 0x29, 0xf4, 0xe9, 0x55, 0x0a, 0x5d, 0x5e, 0xa5, 0xd0, 0xe7, 0x57, 0x29, 0xf4, 0x8b, - 0xab, 0x14, 0xfa, 0xea, 0x2a, 0x35, 0xf1, 0xf5, 0x55, 0x0a, 0xfd, 0xe9, 0x97, 0xa9, 0x89, 0x8b, - 0x2f, 0x53, 0xe8, 0xf2, 0xcb, 0xd4, 0xc4, 0xe7, 0x5f, 0xa6, 0x26, 0x3e, 0xda, 0xad, 0xab, 0xda, - 0x8b, 0x7a, 0xb6, 0xa5, 0x36, 0x4c, 0xa2, 0xeb, 0x52, 0xf6, 0xcc, 0x58, 0xa3, 0x3f, 0x6a, 0xaa, - 0xde, 0xbc, 0xa7, 0xe9, 0x6a, 0x4b, 0xae, 0x12, 0xfd, 0x9e, 0x4b, 0x5e, 0xd3, 0x4e, 0xeb, 0xea, - 0x1a, 0xf9, 0xd8, 0x74, 0xbe, 0xf0, 0xea, 0x7c, 0x1a, 0x77, 0x1a, 0xa2, 0x75, 0x7b, 0xfd, 0x7f, - 0x02, 0x00, 0x00, 0xff, 0xff, 0x60, 0x2d, 0xbe, 0x11, 0x36, 0x27, 0x00, 0x00, + // 3455 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x5a, 0x4b, 0x6c, 0x23, 0x47, + 0x7a, 0x56, 0x89, 0x14, 0x45, 0xfd, 0x14, 0xa9, 0x66, 0x49, 0x94, 0x7a, 0x38, 0x33, 0x14, 0x87, + 0xe3, 0xc9, 0x6a, 0x35, 0x3d, 0xd4, 0xa8, 0x35, 0xe2, 0xd8, 0x72, 0x3c, 0x6b, 0x51, 0xa2, 0x5e, + 0x1e, 0x3d, 0xd0, 0xe4, 0x68, 0x37, 0x46, 0x80, 0x46, 0x8b, 0x2c, 0x72, 0x7a, 0x87, 0xec, 0x6e, + 0x74, 0xb7, 0x38, 0xd6, 0x02, 0x03, 0x38, 0x41, 0x02, 0x04, 0xc8, 0x25, 0x08, 0x92, 0x00, 0x7b, + 0xc8, 0x21, 0x39, 0x24, 0xc1, 0x9e, 0x92, 0x4b, 0x0e, 0xe1, 0x02, 0x11, 0x72, 0x32, 0x7c, 0xd2, + 0xd1, 0x79, 0x01, 0x6b, 0xf9, 0x32, 0xeb, 0x93, 0x31, 0x0b, 0xe4, 0xba, 0x41, 0x57, 0x3f, 0xd8, + 0x7c, 0x9a, 0xde, 0x2c, 0x8c, 0xc0, 0x37, 0xb2, 0xfe, 0x47, 0xfd, 0xf5, 0xd7, 0xff, 0xf8, 0xfa, + 0xef, 0x86, 0xdb, 0x4d, 0x62, 0x64, 0x65, 0x75, 0xc5, 0x28, 0x3f, 0x27, 0x0d, 0x69, 0xe5, 0xac, + 0xa6, 0xad, 0x98, 0x17, 0x1a, 0x31, 0xb2, 0x9a, 0xae, 0x9a, 0x2a, 0x8e, 0xdb, 0xe4, 0xac, 0x4d, + 0xce, 0x9e, 0xd5, 0xb4, 0xe4, 0x83, 0x9a, 0x6c, 0x3e, 0x3f, 0x3f, 0xcb, 0x96, 0xd5, 0xc6, 0x4a, + 0x4d, 0xad, 0xa9, 0x2b, 0x94, 0xf3, 0xec, 0xbc, 0x4a, 0xff, 0xd1, 0x3f, 0xf4, 0x97, 0xad, 0x21, + 0xb9, 0x58, 0x53, 0xd5, 0x5a, 0x9d, 0xb4, 0xb9, 0x4c, 0xb9, 0x41, 0x0c, 0x53, 0x6a, 0x68, 0x0e, + 0xc3, 0x42, 0xa7, 0x05, 0x0a, 0x31, 0x1d, 0xc2, 0xcd, 0x4e, 0x82, 0xaa, 0x99, 0xb2, 0xaa, 0x38, + 0x86, 0x25, 0xbb, 0xec, 0xd6, 0x9a, 0xa6, 0xe8, 0xb3, 0x3b, 0x79, 0xa3, 0x93, 0xec, 0x27, 0xdd, + 0xea, 0x24, 0x35, 0xa5, 0xba, 0x5c, 0x91, 0x4c, 0xe2, 0x50, 0xd3, 0x5d, 0x54, 0x99, 0xbc, 0x14, + 0x3b, 0x77, 0x5e, 0xec, 0xe5, 0x30, 0xfc, 0x1b, 0x64, 0x3e, 0x0f, 0x40, 0x34, 0x5f, 0xd3, 0x4e, + 0x24, 0x5d, 0x6a, 0x10, 0x93, 0xe8, 0x06, 0xbe, 0x09, 0x01, 0xc9, 0x50, 0x58, 0x94, 0x46, 0x4b, + 0xd1, 0xfc, 0xd4, 0xbf, 0xfc, 0xf2, 0x32, 0x10, 0x5c, 0x1e, 0x5f, 0x42, 0x82, 0xb5, 0x8a, 0xdf, + 0x85, 0x68, 0x5d, 0x2d, 0x4b, 0x75, 0x51, 0xaa, 0x54, 0x74, 0x62, 0x18, 0x6c, 0x28, 0x8d, 0x96, + 0x22, 0xfc, 0x5c, 0xb6, 0xd3, 0xf5, 0x85, 0x86, 0x66, 0x5e, 0xec, 0x8d, 0x09, 0xd3, 0x94, 0x79, + 0xd3, 0xe6, 0xc5, 0x6b, 0x30, 0x55, 0xd5, 0xd5, 0x86, 0x68, 0xc8, 0x26, 0x61, 0x27, 0x87, 0x0a, + 0x86, 0x2d, 0xc6, 0xa2, 0x6c, 0x12, 0xbc, 0x0c, 0x20, 0x6b, 0xde, 0x76, 0xe1, 0x34, 0x5a, 0x9a, + 0x72, 0xac, 0xd2, 0xc7, 0x3f, 0x42, 0x7b, 0x63, 0xc2, 0x94, 0xac, 0xb9, 0x1b, 0xfc, 0x08, 0xf0, + 0x59, 0x4d, 0x13, 0x75, 0xf5, 0xdc, 0x24, 0xba, 0x28, 0x57, 0xa8, 0x97, 0xd9, 0xf1, 0x34, 0x5a, + 0x8a, 0xf1, 0x99, 0x6c, 0x4f, 0x74, 0x64, 0xf3, 0x35, 0x4d, 0xa0, 0xbc, 0xfb, 0x95, 0xd2, 0x85, + 0x46, 0xf2, 0x93, 0x9f, 0xbd, 0x42, 0xaf, 0x5b, 0x08, 0x09, 0x33, 0x67, 0x9d, 0x14, 0xbc, 0x0f, + 0xd1, 0x0e, 0xcd, 0x6c, 0x80, 0x9a, 0x7f, 0xab, 0x4b, 0xe9, 0xbe, 0x6b, 0x4a, 0xa7, 0xba, 0x88, + 0x4f, 0x1d, 0x7e, 0x17, 0xe2, 0x9d, 0x46, 0xbe, 0x20, 0x17, 0x6c, 0x90, 0x9e, 0x8b, 0x71, 0x04, + 0x9c, 0xe3, 0xb1, 0xef, 0x0b, 0x31, 0x9f, 0xe4, 0x07, 0xe4, 0x62, 0x23, 0xf4, 0xe6, 0x49, 0x60, + 0x95, 0x5b, 0xcf, 0xdf, 0x03, 0xa6, 0xad, 0xa0, 0xfc, 0x5c, 0x95, 0xcb, 0x04, 0xc7, 0x2f, 0x5b, + 0x28, 0x74, 0xd5, 0x42, 0x13, 0xd7, 0x2d, 0x34, 0x91, 0xe3, 0x1e, 0x73, 0x6f, 0x1f, 0x04, 0xc3, + 0x13, 0x4c, 0x28, 0xf3, 0x3a, 0x04, 0x93, 0xd6, 0x1d, 0x13, 0xa2, 0x0f, 0xbf, 0xdd, 0x1f, 0x41, + 0xc2, 0x32, 0x4d, 0x23, 0x44, 0x77, 0x3d, 0xee, 0x77, 0xe1, 0xbd, 0xfe, 0x2e, 0xb4, 0xf4, 0xfa, + 0x8e, 0x2d, 0x58, 0x77, 0xd0, 0xb5, 0x86, 0x77, 0x80, 0xe9, 0xd6, 0x3c, 0x8a, 0x0b, 0xe9, 0xf9, + 0x7d, 0xba, 0xf0, 0x06, 0xcc, 0xf5, 0x58, 0xd8, 0xf6, 0xdf, 0x54, 0xdb, 0x71, 0xf1, 0x4e, 0xc1, + 0x0f, 0xc8, 0x05, 0x5e, 0x84, 0xa0, 0xa6, 0xea, 0x26, 0x3b, 0x41, 0xcf, 0x1e, 0xb1, 0x78, 0x43, + 0xcb, 0x41, 0xf6, 0xd7, 0xbf, 0x0e, 0x08, 0x94, 0x80, 0x9f, 0xc0, 0xbc, 0xa7, 0xdc, 0x38, 0x3f, + 0x53, 0x88, 0x29, 0xaa, 0xd5, 0xaa, 0x41, 0x4c, 0x1a, 0xe5, 0x6d, 0x77, 0xb1, 0x69, 0x61, 0xd6, + 0x51, 0x5f, 0xa4, 0x6c, 0xc7, 0x94, 0x0b, 0x9f, 0x42, 0xb8, 0x2a, 0x35, 0xe4, 0xba, 0x4c, 0x0c, + 0x76, 0x2e, 0x1d, 0x58, 0x8a, 0xf0, 0xdf, 0xeb, 0xe3, 0x31, 0x4b, 0x6c, 0xc7, 0x62, 0xbb, 0x68, + 0x27, 0x5d, 0x3e, 0xee, 0xbb, 0xf9, 0x89, 0x3f, 0x47, 0xe3, 0x4c, 0x50, 0xf0, 0x74, 0xe1, 0x1f, + 0x43, 0x4c, 0x56, 0x4c, 0xa2, 0x57, 0xa5, 0x32, 0x11, 0x75, 0x52, 0x35, 0xd8, 0x04, 0xd5, 0xde, + 0xed, 0xba, 0xe3, 0xb3, 0x1f, 0x93, 0xb2, 0x29, 0x90, 0x2a, 0x8d, 0xbe, 0x7b, 0x3f, 0x7b, 0x15, + 0x57, 0x88, 0xf9, 0x52, 0xd5, 0x5f, 0x88, 0x9e, 0x78, 0xf7, 0x36, 0x61, 0x21, 0xea, 0xd1, 0x04, + 0x52, 0x35, 0xf0, 0xbb, 0x90, 0x90, 0xea, 0x75, 0x51, 0x56, 0x0c, 0xb9, 0x42, 0xda, 0x72, 0x06, + 0x3b, 0x9f, 0x46, 0x4b, 0xe1, 0x76, 0x48, 0xcf, 0x4a, 0xf5, 0xfa, 0x3e, 0x65, 0xda, 0xf7, 0x78, + 0xf0, 0x7b, 0x30, 0x6f, 0x09, 0xab, 0xe7, 0x66, 0xb7, 0xf4, 0x42, 0xa7, 0xf4, 0x9c, 0x54, 0xaf, + 0x1f, 0xdb, 0x5c, 0x3e, 0x71, 0x16, 0x26, 0x35, 0xc9, 0x30, 0xe4, 0x26, 0x61, 0x59, 0x8b, 0x5f, + 0x70, 0xff, 0xe2, 0x2d, 0x88, 0x2b, 0xaa, 0x28, 0x9d, 0x9b, 0xcf, 0x89, 0x62, 0xca, 0x65, 0xc9, + 0x2a, 0x71, 0x6c, 0x72, 0x68, 0x05, 0x61, 0x14, 0x75, 0xb3, 0x83, 0x1f, 0xf3, 0x30, 0xdd, 0xa8, + 0xac, 0x53, 0x2d, 0x34, 0x66, 0x6e, 0xd2, 0x98, 0x89, 0x7d, 0xf2, 0x0a, 0xbd, 0x79, 0x15, 0x16, + 0x0a, 0xdb, 0x9b, 0x5b, 0xa5, 0xc2, 0xf6, 0xde, 0x98, 0x00, 0x8d, 0xca, 0xba, 0x25, 0x4a, 0xf3, + 0xed, 0xd3, 0x16, 0x1a, 0x67, 0x50, 0x3e, 0x0d, 0x11, 0x2a, 0xe7, 0x4b, 0xb5, 0xe4, 0x55, 0x0b, + 0xdd, 0xb0, 0x52, 0x8d, 0xcf, 0x71, 0xfc, 0xe3, 0x83, 0x60, 0xf8, 0x06, 0x93, 0xcc, 0xfc, 0x29, + 0x82, 0xa8, 0x77, 0xa2, 0xa7, 0xb2, 0x61, 0xe2, 0x9f, 0x00, 0xf8, 0xfc, 0x80, 0xe8, 0xc5, 0x75, + 0xd7, 0x22, 0x5a, 0x96, 0xbb, 0xae, 0x2f, 0xd7, 0xef, 0xfa, 0x3e, 0xf9, 0xb9, 0xff, 0xee, 0xdc, + 0x5f, 0x61, 0x6f, 0x8d, 0x45, 0x82, 0x6f, 0xb7, 0xcc, 0x5f, 0x20, 0x00, 0x3b, 0xd4, 0xf6, 0x15, + 0x62, 0xe2, 0x2c, 0x84, 0x88, 0x22, 0x9d, 0xd5, 0xed, 0x7c, 0x1e, 0xec, 0x3a, 0x87, 0x0b, 0x3f, + 0x84, 0xc9, 0x8a, 0x6c, 0x50, 0x81, 0xc0, 0x50, 0x01, 0x97, 0x2d, 0x9f, 0x82, 0xa8, 0x2d, 0xeb, + 0x3a, 0x2a, 0x7a, 0xd9, 0x42, 0xe3, 0x57, 0x2d, 0x84, 0xae, 0x5b, 0x08, 0xf1, 0x07, 0xc1, 0x30, + 0x62, 0xc6, 0x33, 0x7f, 0x89, 0x20, 0xd2, 0x36, 0x2b, 0xf7, 0xff, 0xc6, 0xae, 0xbf, 0x43, 0xb0, + 0xd0, 0xb6, 0xab, 0xa9, 0x29, 0xbe, 0xae, 0xf8, 0x4d, 0x6d, 0x7c, 0x67, 0x24, 0x1b, 0xbd, 0x8c, + 0xf0, 0x1b, 0x9b, 0x84, 0x29, 0x43, 0x1f, 0x6a, 0xe8, 0x3f, 0x23, 0x88, 0x76, 0x18, 0x8a, 0xb7, + 0xbb, 0xcc, 0x5b, 0xee, 0x53, 0x78, 0x06, 0x1c, 0xed, 0xb7, 0x63, 0xf4, 0x68, 0x1e, 0xfe, 0x1b, + 0x04, 0x31, 0xdf, 0xcd, 0x5b, 0x96, 0x7f, 0x8b, 0x8e, 0x1d, 0xcd, 0xc6, 0xbf, 0xf5, 0x9c, 0xfb, + 0xec, 0x5c, 0xae, 0x7c, 0xcb, 0x26, 0xa6, 0xbb, 0x4d, 0x9c, 0xf1, 0x99, 0x18, 0xe0, 0xb9, 0x35, + 0xc7, 0xc8, 0x9f, 0x7a, 0x46, 0x0a, 0xa6, 0xa4, 0xd7, 0xbe, 0x95, 0xe4, 0x1e, 0xd5, 0xb6, 0x0f, + 0x61, 0xae, 0x5f, 0x8f, 0xc3, 0x77, 0x20, 0x44, 0x5b, 0xda, 0x05, 0x45, 0x1f, 0xbe, 0x6e, 0xcd, + 0x08, 0x0e, 0x01, 0x2f, 0x42, 0xc4, 0xd9, 0xc2, 0xd0, 0x9b, 0x39, 0x7a, 0x92, 0xb0, 0x00, 0xf6, + 0x52, 0x51, 0x6f, 0xe6, 0x32, 0x7f, 0x14, 0x85, 0x69, 0x4b, 0x79, 0xe1, 0x23, 0x93, 0xe8, 0x8a, + 0x54, 0x1f, 0x8e, 0x67, 0xee, 0xc1, 0xa4, 0x1f, 0x6c, 0x74, 0x01, 0x47, 0x97, 0x86, 0xdf, 0x85, + 0x59, 0xa7, 0xdd, 0x9f, 0x91, 0x9a, 0xac, 0xb8, 0x4d, 0x3f, 0xd8, 0xd5, 0xf4, 0xf7, 0xc6, 0x84, + 0xb8, 0xcd, 0x97, 0xb7, 0xd8, 0x9c, 0xa6, 0xff, 0x18, 0x9c, 0x45, 0x91, 0x28, 0x15, 0x57, 0x74, + 0xa2, 0x57, 0x74, 0xc6, 0xe6, 0x2a, 0x28, 0x15, 0x47, 0xb0, 0x03, 0x0d, 0x87, 0x46, 0x44, 0xc3, + 0x3f, 0x80, 0x99, 0x0a, 0xa9, 0x4a, 0xe7, 0x75, 0x53, 0xac, 0x49, 0x26, 0x79, 0x29, 0x5d, 0x7c, + 0x0d, 0x90, 0x8e, 0x39, 0xec, 0xbb, 0x36, 0xb7, 0xff, 0xda, 0x6f, 0x8d, 0x74, 0xed, 0x78, 0xc9, + 0x81, 0x4d, 0x40, 0xcf, 0x34, 0xf7, 0x1f, 0x2d, 0x14, 0x58, 0x7d, 0xfc, 0x8e, 0x75, 0xb4, 0xf0, + 0x72, 0xc8, 0x42, 0x4f, 0x4b, 0xc8, 0xc1, 0x4f, 0xdb, 0x10, 0xb1, 0xef, 0x51, 0x94, 0x15, 0x62, + 0xb2, 0x11, 0xaa, 0xff, 0xf6, 0xd0, 0x4a, 0x94, 0x0f, 0xfe, 0xe3, 0xcf, 0x11, 0x12, 0xa0, 0xda, + 0xee, 0x52, 0x1a, 0xc4, 0x7c, 0x5a, 0xc4, 0x66, 0x8e, 0x9d, 0xa6, 0x8a, 0x52, 0x43, 0x15, 0xe5, + 0xf2, 0xcb, 0x5f, 0xbe, 0xba, 0x5b, 0x21, 0x0d, 0x75, 0x95, 0x33, 0x89, 0x61, 0x72, 0x65, 0xdd, + 0xe4, 0x0c, 0x53, 0xaa, 0xc9, 0x4a, 0x8d, 0x33, 0xd4, 0xaa, 0x79, 0x26, 0x29, 0x2f, 0xc4, 0x06, + 0x29, 0xd3, 0xfd, 0xa6, 0xdb, 0xfb, 0x9d, 0xe6, 0xf0, 0xef, 0xc3, 0x94, 0xd7, 0x34, 0xd9, 0x04, + 0xdd, 0x6c, 0x94, 0x0e, 0xcd, 0x0e, 0xea, 0xd0, 0x7b, 0x48, 0x68, 0x2b, 0xc4, 0xfb, 0x7e, 0xf4, + 0x56, 0x97, 0x0d, 0x93, 0x42, 0xa9, 0x08, 0x9f, 0xee, 0x73, 0x9e, 0x0e, 0xe8, 0xb0, 0x87, 0x7c, + 0xe0, 0x8c, 0x62, 0x89, 0xa7, 0x10, 0xef, 0x05, 0x66, 0x0b, 0xa3, 0x94, 0x18, 0x24, 0x30, 0x72, + 0x37, 0x5a, 0x3b, 0x02, 0xdc, 0x07, 0xa9, 0xb1, 0xa3, 0xa9, 0x8b, 0xab, 0x3d, 0xf0, 0xed, 0x1b, + 0x83, 0xb4, 0xf1, 0xdf, 0x18, 0xa4, 0x8d, 0xfb, 0x41, 0x1a, 0xfe, 0x10, 0xa6, 0xdd, 0x67, 0x01, + 0x59, 0x6b, 0xe6, 0xd8, 0x14, 0x95, 0x59, 0xff, 0xf2, 0xd5, 0xd2, 0x08, 0xf1, 0xc0, 0x69, 0xba, + 0x5a, 0xa1, 0xf8, 0x49, 0x0f, 0x7c, 0x8c, 0xd0, 0x5e, 0x40, 0x88, 0x38, 0xca, 0xf6, 0xb5, 0x66, + 0x0e, 0xbf, 0x0f, 0xf3, 0x7d, 0x6a, 0x83, 0x15, 0x95, 0x8b, 0xdd, 0x39, 0x1e, 0x10, 0x66, 0x7b, + 0xca, 0xc3, 0x69, 0x0e, 0xff, 0x2e, 0xcc, 0xf5, 0x14, 0x08, 0x4b, 0x3e, 0xdd, 0x2b, 0x1f, 0xef, + 0xaa, 0x11, 0xa7, 0x39, 0xfc, 0x36, 0x4c, 0x7b, 0x55, 0xc2, 0x92, 0xba, 0x33, 0xc4, 0x9f, 0x01, + 0x01, 0xdc, 0x42, 0x71, 0x9a, 0xc3, 0xdb, 0x80, 0xbb, 0x4a, 0x85, 0x25, 0x9f, 0x19, 0x2a, 0xcf, + 0x74, 0x56, 0x8b, 0xd3, 0x1c, 0x5e, 0x07, 0x70, 0x0a, 0x81, 0x25, 0x7d, 0x77, 0xa8, 0xf4, 0x94, + 0xc3, 0x79, 0x9a, 0xdb, 0x60, 0xdf, 0x3c, 0x49, 0xac, 0x72, 0x3c, 0xc7, 0xbf, 0xc3, 0xad, 0x3e, + 0xe4, 0x56, 0x57, 0xb9, 0x55, 0x9e, 0xe3, 0x1f, 0x72, 0xbc, 0xf5, 0xe4, 0x1a, 0x73, 0x2f, 0xcb, + 0x69, 0x23, 0xb3, 0x97, 0x2d, 0x14, 0xb8, 0x6a, 0xa1, 0xf1, 0xeb, 0x16, 0x9a, 0x5c, 0xe3, 0x1e, + 0x71, 0xeb, 0x5c, 0x2e, 0x7f, 0x1f, 0x98, 0x76, 0xd6, 0x38, 0x8c, 0x0b, 0x97, 0x2d, 0x94, 0xb8, + 0x6a, 0xa1, 0xb9, 0xeb, 0x16, 0x8a, 0xf0, 0xab, 0x1c, 0xcf, 0x73, 0xfc, 0x1a, 0xc7, 0x3f, 0xfa, + 0x7a, 0x74, 0x9e, 0x5f, 0x81, 0x78, 0xe7, 0xae, 0x62, 0x33, 0x87, 0x93, 0x97, 0x2d, 0x74, 0xf7, + 0xaa, 0x85, 0x6e, 0x5f, 0xb7, 0x50, 0x6c, 0xed, 0x21, 0xb7, 0xb6, 0xca, 0xad, 0xf1, 0xdc, 0xda, + 0x1a, 0xb7, 0xf6, 0xe8, 0x20, 0x18, 0x1e, 0x67, 0x02, 0x07, 0xc1, 0x70, 0x98, 0x99, 0x3a, 0x08, + 0x86, 0xe7, 0x98, 0x84, 0x0d, 0xf0, 0x0f, 0x82, 0xe1, 0xdb, 0x4c, 0x2a, 0xf3, 0xe5, 0x84, 0xdd, + 0x86, 0x68, 0xf4, 0x5b, 0x6d, 0x68, 0xc4, 0x4e, 0xd3, 0x51, 0xf3, 0x83, 0x23, 0xd6, 0xfc, 0x07, + 0x10, 0xae, 0x28, 0x86, 0xa8, 0x48, 0x0d, 0x42, 0x1b, 0x4b, 0xcf, 0x9c, 0xe0, 0xb9, 0x0d, 0x21, + 0x14, 0xe3, 0x48, 0x6a, 0x10, 0xcc, 0x75, 0xd4, 0x6b, 0xf6, 0xb2, 0x85, 0xd0, 0x90, 0x9a, 0xbd, + 0xdb, 0x51, 0x6d, 0x9b, 0x9a, 0xe2, 0x94, 0xed, 0xf4, 0xd7, 0x01, 0x48, 0x21, 0x5a, 0xed, 0x40, + 0xa0, 0x07, 0x30, 0xe3, 0x53, 0x64, 0x41, 0x3b, 0x96, 0xa1, 0x9a, 0xee, 0x0c, 0xaf, 0xdb, 0x96, + 0xaa, 0x58, 0xb5, 0x13, 0x13, 0xb6, 0x8d, 0x3a, 0xb7, 0x21, 0x18, 0x1b, 0xff, 0x1a, 0xa3, 0x1c, + 0xa8, 0xe6, 0x1a, 0xe5, 0x22, 0xb7, 0xb6, 0x22, 0xdd, 0x86, 0x49, 0x4e, 0x2f, 0x19, 0xac, 0xc8, + 0x81, 0x53, 0xae, 0x22, 0x17, 0x5d, 0xbd, 0x03, 0xd3, 0x6e, 0x1a, 0x34, 0xcc, 0xba, 0xc1, 0xc6, + 0x86, 0xdc, 0x1d, 0x12, 0x22, 0x0e, 0xef, 0xa1, 0x59, 0x37, 0xf0, 0x63, 0x0f, 0xd3, 0x50, 0xc9, + 0x99, 0xa1, 0x92, 0x0e, 0xd6, 0xb1, 0x04, 0x37, 0x66, 0xdf, 0x3c, 0x61, 0x78, 0x37, 0x7d, 0x72, + 0xdc, 0xea, 0x63, 0x6e, 0x95, 0xcf, 0xdf, 0xe9, 0x49, 0x9f, 0x19, 0x5f, 0xfa, 0x04, 0xd6, 0xb8, + 0x47, 0xf9, 0xb7, 0x20, 0x62, 0xed, 0xe4, 0xd2, 0x13, 0x97, 0x2d, 0x14, 0xbb, 0x6a, 0xa1, 0xa8, + 0x95, 0x0d, 0xab, 0x8f, 0xb8, 0xd5, 0xf5, 0xaf, 0x5a, 0x08, 0x79, 0x01, 0x1e, 0x65, 0x62, 0x07, + 0xc1, 0x30, 0x66, 0x66, 0x0f, 0x82, 0xe1, 0x59, 0x66, 0xce, 0x0b, 0xf6, 0x04, 0x33, 0x7f, 0x10, + 0x0c, 0xcf, 0x33, 0x0b, 0x99, 0x6b, 0x80, 0x20, 0x9d, 0x1d, 0x6d, 0x40, 0xb8, 0x41, 0x4c, 0xa9, + 0x22, 0x99, 0x12, 0x05, 0x5c, 0xbd, 0x3d, 0xf9, 0x90, 0x18, 0x86, 0x54, 0x23, 0x87, 0xc4, 0x94, + 0xe8, 0xf8, 0xc6, 0xe3, 0xc7, 0xef, 0x41, 0x98, 0x38, 0x98, 0xcd, 0xc1, 0x9b, 0x8b, 0x03, 0x66, + 0x23, 0x2e, 0xb4, 0xb3, 0x72, 0xc0, 0x15, 0xc1, 0x3b, 0x10, 0x96, 0x9d, 0x5c, 0x73, 0xf2, 0x66, + 0x90, 0xb8, 0x9b, 0x92, 0x7e, 0x78, 0xed, 0xc9, 0xe2, 0x03, 0x48, 0x38, 0x33, 0x05, 0xb1, 0xa1, + 0x56, 0x88, 0xe8, 0x5c, 0x54, 0x65, 0x28, 0x00, 0x43, 0xc2, 0xac, 0x23, 0x74, 0xa8, 0x56, 0xc8, + 0xb6, 0x23, 0x82, 0xf7, 0x60, 0xae, 0x43, 0x97, 0x7d, 0x75, 0x95, 0xa1, 0x80, 0x0c, 0x09, 0xd8, + 0xa7, 0xaa, 0x60, 0x4b, 0xe0, 0x15, 0x88, 0xd9, 0x71, 0x26, 0x1a, 0x44, 0x6f, 0xca, 0x65, 0xc2, + 0xbe, 0x9e, 0xa4, 0x89, 0xee, 0x0d, 0x4c, 0xa2, 0x36, 0xbd, 0x68, 0x93, 0x37, 0x3e, 0x9e, 0x7c, + 0xf3, 0x64, 0xc2, 0xaa, 0xaf, 0xeb, 0x9f, 0xb6, 0xd0, 0xaf, 0x42, 0xb0, 0x00, 0x41, 0x2b, 0xf7, + 0x93, 0x33, 0x10, 0x75, 0x3d, 0x9e, 0xb5, 0xea, 0x05, 0xe4, 0x20, 0x68, 0x5d, 0xc4, 0x72, 0x16, + 0x38, 0x98, 0x6b, 0x5f, 0x01, 0x1f, 0x76, 0xbd, 0x6c, 0xad, 0xba, 0xde, 0xe1, 0xc3, 0xae, 0xf3, + 0x20, 0x01, 0x81, 0xcd, 0xe2, 0x51, 0x32, 0x06, 0xd3, 0xae, 0x48, 0x56, 0x32, 0x14, 0xf8, 0xc3, + 0x20, 0x4c, 0x3a, 0x13, 0xb5, 0xe5, 0xff, 0x09, 0xc0, 0xaf, 0x02, 0x80, 0x81, 0x69, 0x73, 0xd8, + 0x14, 0x58, 0x80, 0x44, 0xf7, 0x1a, 0x6d, 0xcc, 0xb0, 0x0e, 0xb7, 0x3c, 0x42, 0x9f, 0xae, 0x8a, + 0x13, 0xc9, 0x59, 0x7b, 0xa0, 0x96, 0xa6, 0x2d, 0x34, 0x6d, 0x77, 0x41, 0x58, 0x85, 0x64, 0xb7, + 0x58, 0xbb, 0x95, 0xe2, 0xd9, 0x64, 0xdc, 0x11, 0x2a, 0x28, 0x15, 0x57, 0x64, 0x11, 0xb0, 0x27, + 0xe2, 0x55, 0x5c, 0x7e, 0x6a, 0x47, 0x57, 0x1b, 0x69, 0xab, 0xa8, 0xc2, 0x7d, 0x60, 0x3d, 0x86, + 0xae, 0x36, 0xc9, 0xcf, 0x6c, 0xdb, 0x0b, 0x69, 0xa7, 0x0d, 0xc2, 0xdb, 0xb0, 0x38, 0xcc, 0x6e, + 0xab, 0x97, 0x0c, 0x30, 0xfd, 0x11, 0xdc, 0x1e, 0x6c, 0xba, 0x25, 0xd7, 0xd7, 0xfa, 0x8c, 0xcf, + 0x81, 0xfe, 0xee, 0xef, 0x3f, 0x40, 0x16, 0x6e, 0x0e, 0x3a, 0x80, 0xc5, 0xd9, 0x73, 0x06, 0xec, + 0x34, 0x54, 0xff, 0x45, 0x2d, 0x02, 0xf6, 0xd6, 0xfa, 0x7a, 0x69, 0xd6, 0x02, 0x9c, 0xee, 0x26, + 0x4e, 0x0f, 0x82, 0xbf, 0x47, 0x30, 0xe5, 0xc1, 0xbe, 0xe5, 0x9f, 0x22, 0xf8, 0x2b, 0x04, 0x73, + 0x3e, 0x7f, 0x7b, 0x7d, 0x1b, 0x96, 0x20, 0xd3, 0xbb, 0x4a, 0x31, 0x70, 0xd6, 0x37, 0xa5, 0x1a, + 0x67, 0x02, 0xb0, 0xe4, 0xbb, 0xe2, 0x1e, 0x88, 0xcb, 0xc3, 0x66, 0xbd, 0x9e, 0xb6, 0xa7, 0x8d, + 0xb0, 0xec, 0x3b, 0x77, 0x2f, 0x7c, 0xe5, 0x23, 0x16, 0xab, 0x33, 0x5a, 0x84, 0x0f, 0x21, 0xd6, + 0x09, 0x2f, 0x97, 0xf7, 0x60, 0x07, 0x32, 0xbe, 0xbd, 0x7a, 0x00, 0x2b, 0x1f, 0x3c, 0x52, 0x15, + 0x02, 0x69, 0xdf, 0x0d, 0xf8, 0xf1, 0x28, 0x3f, 0x79, 0xb8, 0xbd, 0x9e, 0xfe, 0x80, 0x5c, 0xe4, + 0x53, 0x10, 0x31, 0x2f, 0x34, 0x32, 0xb0, 0x0a, 0xdf, 0x81, 0x98, 0x5b, 0x1d, 0x7c, 0x2c, 0xee, + 0x7c, 0x3e, 0x90, 0xe3, 0x1e, 0x7b, 0x25, 0x78, 0x82, 0x09, 0x65, 0xfe, 0x20, 0x04, 0xb1, 0xdd, + 0xba, 0x7a, 0x26, 0xd5, 0x8b, 0x1a, 0x29, 0xd3, 0x99, 0x79, 0x01, 0x26, 0x5e, 0x3e, 0x27, 0x3a, + 0x71, 0x6a, 0xed, 0xf7, 0xbb, 0x0a, 0x0a, 0x85, 0x79, 0xb2, 0x6e, 0x9e, 0x4b, 0x75, 0xeb, 0xa7, + 0x40, 0xaa, 0x45, 0x52, 0x27, 0x65, 0x53, 0xd5, 0x9d, 0x87, 0x2a, 0x5b, 0xda, 0xea, 0x81, 0x74, + 0xaa, 0xed, 0x3d, 0x88, 0x3b, 0x03, 0x82, 0xf4, 0x80, 0x69, 0xbe, 0xc7, 0x27, 0x44, 0xcf, 0x3a, + 0x5e, 0x0c, 0x95, 0x60, 0xca, 0x1d, 0x8f, 0x5b, 0x28, 0x27, 0xb0, 0x14, 0xe1, 0x93, 0x83, 0xdf, + 0x08, 0xe4, 0x6f, 0xf6, 0xcc, 0x9a, 0x7d, 0x53, 0xca, 0xb0, 0x33, 0x3f, 0x37, 0xf0, 0x4f, 0xa0, + 0xf7, 0x21, 0x8a, 0x0d, 0x8e, 0x30, 0xdf, 0x5e, 0x19, 0x69, 0xbe, 0xed, 0xdb, 0x93, 0x71, 0xb8, + 0xbd, 0xd8, 0xc5, 0x5b, 0x30, 0x61, 0x9f, 0x66, 0x82, 0xee, 0xb7, 0x30, 0xa0, 0xa5, 0xe4, 0xe7, + 0x7a, 0xf5, 0x3d, 0x44, 0x82, 0x2d, 0x8b, 0x8b, 0x3d, 0xc5, 0x3b, 0x44, 0xdf, 0x96, 0xdc, 0xed, + 0xef, 0x9b, 0x92, 0xbf, 0x90, 0x0f, 0x2a, 0xf0, 0xf8, 0xf7, 0x60, 0xda, 0xf3, 0xb5, 0x05, 0xbc, + 0x27, 0xff, 0x6f, 0xee, 0x06, 0xd7, 0xdd, 0xa7, 0x39, 0x2c, 0x41, 0x94, 0xbe, 0x28, 0xf4, 0xfa, + 0xe9, 0xeb, 0xc9, 0x91, 0x1f, 0x79, 0x17, 0x7e, 0xf6, 0xaa, 0x53, 0xd8, 0x35, 0x7f, 0xda, 0x5a, + 0xf5, 0xd0, 0xf0, 0x7d, 0xa0, 0xff, 0xc5, 0x26, 0xd1, 0x0d, 0xeb, 0x21, 0xf0, 0x97, 0x93, 0x14, + 0x8b, 0xb6, 0xdf, 0x87, 0x59, 0xd4, 0x53, 0x9b, 0xb8, 0x11, 0x7e, 0xf3, 0x64, 0x82, 0xe7, 0xd6, + 0xb9, 0xd5, 0xcc, 0x7f, 0x21, 0x88, 0x6d, 0xe9, 0x44, 0x32, 0x89, 0x97, 0x03, 0x3f, 0xf8, 0x4d, + 0x73, 0xe0, 0xb7, 0x1e, 0xfd, 0x0f, 0x46, 0x8b, 0x15, 0x27, 0x2a, 0x36, 0xe2, 0x9f, 0x3e, 0xe9, + 0xca, 0xe7, 0xcc, 0x7f, 0x23, 0x98, 0x11, 0x88, 0x56, 0x97, 0xca, 0xdf, 0xcd, 0xf3, 0xfd, 0x3b, + 0x82, 0xc8, 0x2e, 0x31, 0xbf, 0x93, 0x67, 0xfb, 0x93, 0x10, 0xc4, 0x9d, 0x4c, 0x2b, 0x9a, 0x92, + 0x79, 0x6e, 0x38, 0x27, 0x9c, 0xfe, 0xc6, 0x6f, 0x34, 0x23, 0x9a, 0xef, 0x75, 0xe6, 0x4d, 0x98, + 0xa2, 0x0a, 0xe8, 0x03, 0x1b, 0x9d, 0x37, 0x0a, 0x61, 0x6b, 0xe1, 0xc4, 0x7a, 0x34, 0x7b, 0x0f, + 0x26, 0xcf, 0x35, 0xb1, 0xa2, 0xbe, 0xb4, 0xc7, 0x9b, 0x31, 0xfe, 0xad, 0xc1, 0xe9, 0xff, 0x4c, + 0xdb, 0x56, 0x5f, 0x2a, 0x74, 0x83, 0xd0, 0x39, 0xfd, 0x8d, 0xdf, 0x82, 0x18, 0xd5, 0xdd, 0x7e, + 0x67, 0x4d, 0x1f, 0x1e, 0x05, 0x6a, 0xb2, 0xf7, 0x36, 0xfa, 0x06, 0x84, 0xed, 0x23, 0x18, 0x8a, + 0xfd, 0x96, 0x53, 0x98, 0xa4, 0x06, 0x1a, 0x0a, 0xde, 0x81, 0xb8, 0xb3, 0xbf, 0xe8, 0x7d, 0x06, + 0xe1, 0x80, 0xdb, 0x64, 0xd6, 0xfe, 0x50, 0x22, 0xeb, 0x7e, 0x28, 0x91, 0x2d, 0xb9, 0x1c, 0xc2, + 0x8c, 0xbd, 0xbf, 0xb7, 0x80, 0x79, 0x48, 0x94, 0x55, 0x45, 0x21, 0x65, 0xab, 0xbf, 0x8a, 0xd5, + 0xba, 0xa4, 0x89, 0x65, 0xf5, 0x5c, 0x31, 0xe9, 0xcb, 0xfc, 0xa8, 0x30, 0xdb, 0x26, 0xee, 0xd4, + 0x25, 0x6d, 0xcb, 0x22, 0xe1, 0x1c, 0x2c, 0x48, 0x95, 0x26, 0xd1, 0x4d, 0xd9, 0x20, 0x15, 0x51, + 0xd3, 0x49, 0x55, 0xfe, 0xc8, 0x91, 0x9a, 0xa2, 0x52, 0x89, 0x36, 0xf9, 0x84, 0x52, 0x6d, 0x39, + 0x1e, 0x12, 0x3a, 0x29, 0x13, 0xb9, 0xd9, 0x2d, 0x05, 0xf6, 0x5e, 0x2e, 0xd1, 0x2f, 0x73, 0xcf, + 0x3f, 0xa0, 0xa3, 0x4f, 0xd9, 0x11, 0xea, 0xa8, 0xf6, 0xf0, 0x8d, 0x3e, 0x57, 0xdf, 0xed, 0xfe, + 0xf4, 0x61, 0xda, 0x76, 0xa7, 0xff, 0x13, 0x87, 0x8d, 0x5f, 0xa0, 0x4f, 0x5b, 0xe8, 0x3f, 0x11, + 0xa4, 0x21, 0xfa, 0xd4, 0x5a, 0x4f, 0x3b, 0x04, 0x0b, 0x99, 0x77, 0x48, 0xc3, 0xfb, 0xf6, 0x04, + 0xc1, 0x65, 0xe0, 0x1f, 0xc2, 0xbc, 0x3f, 0x96, 0xb2, 0xb2, 0xd6, 0x7c, 0x44, 0x81, 0x5a, 0xef, + 0x7a, 0xce, 0x5e, 0x67, 0x61, 0x8a, 0x6a, 0xb0, 0x82, 0x25, 0x19, 0xf1, 0x45, 0x12, 0xcc, 0x43, + 0xd8, 0xd6, 0x5d, 0x3c, 0x4a, 0x42, 0xfb, 0x82, 0x61, 0x0e, 0x26, 0xac, 0xe8, 0x25, 0xc9, 0x88, + 0x17, 0x5a, 0x69, 0x04, 0x0f, 0x60, 0x9e, 0xae, 0xa6, 0xb7, 0x9e, 0x4b, 0x4a, 0x8d, 0xa4, 0xbd, + 0x9b, 0x4b, 0xce, 0xf6, 0x89, 0x80, 0xcc, 0xbf, 0x22, 0xfa, 0xc5, 0x88, 0x2f, 0x0d, 0x7e, 0x07, + 0x66, 0xec, 0xb3, 0xb5, 0x43, 0x0d, 0xd9, 0x1e, 0xa4, 0xcb, 0x5e, 0xac, 0xdd, 0x84, 0x29, 0xc7, + 0x07, 0x86, 0x42, 0x53, 0x39, 0x2a, 0x84, 0x6d, 0xef, 0x19, 0x0a, 0x3e, 0x02, 0xc6, 0x7e, 0xf1, + 0x4e, 0xf5, 0xda, 0x83, 0x52, 0x1b, 0x64, 0x0c, 0x09, 0xfb, 0xb6, 0x11, 0x02, 0x0d, 0x76, 0xfb, + 0xff, 0x53, 0xd9, 0x30, 0x37, 0x6e, 0xfc, 0x5b, 0x0b, 0x25, 0x60, 0x16, 0x20, 0xbf, 0x7b, 0x92, + 0xb6, 0xd7, 0x31, 0x7d, 0x64, 0x5a, 0x5b, 0xfe, 0x27, 0x04, 0x33, 0x5d, 0x9f, 0x7e, 0xe0, 0x34, + 0xdc, 0xca, 0xef, 0x9e, 0x88, 0xc2, 0xf1, 0xb3, 0x52, 0x41, 0x10, 0xf7, 0xb7, 0xc5, 0x1d, 0xe1, + 0xf8, 0x50, 0xdc, 0x3f, 0x2a, 0x15, 0x84, 0x9d, 0xcd, 0xad, 0x02, 0x33, 0x86, 0xef, 0xc0, 0xed, + 0x7e, 0x1c, 0x27, 0xe2, 0xe6, 0xf6, 0xb6, 0x50, 0x28, 0x16, 0x19, 0x84, 0x33, 0x90, 0xea, 0xc3, + 0x52, 0xdc, 0x2f, 0x15, 0xc4, 0xe3, 0xfc, 0x41, 0x61, 0xab, 0xc4, 0x8c, 0xe3, 0x75, 0xb8, 0x3f, + 0x88, 0xa7, 0x54, 0x38, 0x3c, 0x79, 0xba, 0x59, 0x2a, 0x88, 0x27, 0x9b, 0xc2, 0xe6, 0x61, 0xa1, + 0x54, 0x10, 0x8a, 0x4c, 0x20, 0x19, 0xbc, 0x6c, 0x21, 0xb4, 0xfc, 0xd7, 0xe3, 0x80, 0x7b, 0xbf, + 0xb5, 0xc0, 0x6f, 0x41, 0xda, 0xd2, 0x76, 0x52, 0x28, 0x08, 0xae, 0x1d, 0xb6, 0xc2, 0xed, 0xc2, + 0xce, 0xe6, 0xb3, 0xa7, 0x25, 0x71, 0xf7, 0x87, 0xcc, 0xd8, 0x60, 0xae, 0x0e, 0xeb, 0xef, 0xc1, + 0x9d, 0xfe, 0x5c, 0x9d, 0x07, 0x78, 0x1b, 0xb2, 0x43, 0xd8, 0x86, 0x9c, 0x01, 0x3f, 0x80, 0xef, + 0xf7, 0x48, 0x1e, 0xef, 0xec, 0x14, 0x0b, 0x25, 0x47, 0xc1, 0xb3, 0xfc, 0x51, 0xa1, 0x24, 0xe6, + 0x0b, 0xbb, 0xfb, 0x47, 0x4c, 0x10, 0xdf, 0x87, 0xef, 0x8d, 0xc2, 0x5e, 0x38, 0xda, 0x66, 0x26, + 0x96, 0x1f, 0x7b, 0xf5, 0xb9, 0x5d, 0x0a, 0x71, 0x1c, 0xa2, 0x9e, 0x86, 0xed, 0xe3, 0x1f, 0x1e, + 0x31, 0x63, 0x78, 0x06, 0x22, 0xde, 0xd2, 0xb3, 0x13, 0x06, 0x2d, 0xbf, 0x00, 0xa6, 0x1b, 0x95, + 0xe1, 0x5b, 0xc0, 0x5a, 0x4c, 0xa5, 0x4d, 0x61, 0xb7, 0x50, 0x12, 0x8b, 0x05, 0xe1, 0x74, 0x7f, + 0xab, 0x20, 0x3e, 0x3b, 0x2a, 0x16, 0x4a, 0xcc, 0x18, 0x4e, 0xc2, 0x7c, 0x1f, 0xea, 0x8e, 0x20, + 0x30, 0x08, 0xdf, 0x86, 0x1b, 0x7d, 0x68, 0x27, 0x7b, 0xc7, 0xf9, 0xe3, 0x22, 0x33, 0x9e, 0xff, + 0x63, 0x74, 0xf5, 0x79, 0x6a, 0xec, 0xb3, 0xcf, 0x53, 0x63, 0x5f, 0x7d, 0x9e, 0x42, 0x1f, 0x5f, + 0xa7, 0xd0, 0x3f, 0x5c, 0xa7, 0xd0, 0x27, 0xd7, 0x29, 0x74, 0x75, 0x9d, 0x42, 0x9f, 0x5d, 0xa7, + 0xd0, 0x2f, 0xae, 0x53, 0xe8, 0xf5, 0x75, 0x6a, 0xec, 0xab, 0xeb, 0x14, 0xfa, 0xb3, 0x2f, 0x52, + 0x63, 0x97, 0x5f, 0xa4, 0xd0, 0xd5, 0x17, 0xa9, 0xb1, 0xcf, 0xbe, 0x48, 0x8d, 0x7d, 0xb8, 0x5b, + 0x53, 0xb5, 0x17, 0xb5, 0x6c, 0x53, 0xad, 0x9b, 0x44, 0xd7, 0xa5, 0xec, 0xb9, 0xb1, 0x42, 0x7f, + 0x54, 0x55, 0xbd, 0xf1, 0x40, 0xd3, 0xd5, 0xa6, 0x5c, 0x21, 0xfa, 0x03, 0x97, 0xbc, 0xa2, 0x9d, + 0xd5, 0xd4, 0x15, 0xf2, 0x91, 0xe9, 0x7c, 0xfc, 0xd5, 0xfe, 0x6a, 0xee, 0x2c, 0x44, 0xeb, 0xf6, + 0xda, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0xcc, 0x62, 0xd0, 0xf2, 0x51, 0x27, 0x00, 0x00, } func (x BgpRouterIdType) String() string { diff --git a/pbgo/extschema/schema/bgp/types.vesmsg.go b/pbgo/extschema/schema/bgp/types.vesmsg.go index bd6009bec..dce0188e1 100644 --- a/pbgo/extschema/schema/bgp/types.vesmsg.go +++ b/pbgo/extschema/schema/bgp/types.vesmsg.go @@ -304,7 +304,7 @@ func (m *BgpPeer) Redact(ctx context.Context) error { switch x := m.AuthChoice.(type) { case *BgpPeer_Md5AuthKey: - x.Md5AuthKey = "" + x.Md5AuthKey = "REDACTED" } @@ -3820,7 +3820,7 @@ func (m *PeerExternal) Redact(ctx context.Context) error { switch x := m.AuthChoice.(type) { case *PeerExternal_Md5AuthKey: - x.Md5AuthKey = "" + x.Md5AuthKey = "REDACTED" } diff --git a/pbgo/extschema/schema/bgp_asn_set/crudapi/api.vesapi.go b/pbgo/extschema/schema/bgp_asn_set/crudapi/api.vesapi.go index 7d885ccbe..57d1f40dc 100644 --- a/pbgo/extschema/schema/bgp_asn_set/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/bgp_asn_set/crudapi/api.vesapi.go @@ -3085,10 +3085,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/bgp_asn_set/object.pb.go b/pbgo/extschema/schema/bgp_asn_set/object.pb.go index 2f84e52fa..3e20c8e64 100644 --- a/pbgo/extschema/schema/bgp_asn_set/object.pb.go +++ b/pbgo/extschema/schema/bgp_asn_set/object.pb.go @@ -233,44 +233,45 @@ func init() { } var fileDescriptor_b3092f46bd72bcda = []byte{ - // 588 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x4f, 0x6b, 0xd4, 0x40, - 0x18, 0xc6, 0x33, 0xbb, 0x65, 0x5b, 0x66, 0x4b, 0x2d, 0xf1, 0x92, 0x56, 0x1d, 0xca, 0x8a, 0x52, - 0xc1, 0x24, 0x50, 0x91, 0xd2, 0x22, 0xa2, 0x5b, 0xa1, 0x97, 0xd6, 0xc2, 0xd6, 0x93, 0x97, 0x65, - 0x32, 0xfb, 0x26, 0x1d, 0xdd, 0x64, 0xc2, 0xcc, 0x24, 0xb6, 0x07, 0xc1, 0x2f, 0x20, 0xf8, 0x2d, - 0x14, 0x3f, 0x85, 0xf5, 0xe4, 0xcd, 0xd2, 0x53, 0xf1, 0x64, 0xb3, 0x17, 0xc1, 0x4b, 0x3f, 0x82, - 0x74, 0xd2, 0x94, 0xdd, 0xba, 0x15, 0xa1, 0xb7, 0x19, 0xde, 0xe7, 0xf9, 0xe5, 0x9d, 0xf7, 0x4f, - 0xf0, 0xdd, 0x1c, 0x94, 0xc7, 0x85, 0xaf, 0xd8, 0x0e, 0xc4, 0xd4, 0x0f, 0xa2, 0xb4, 0x4b, 0x55, - 0xd2, 0x55, 0xa0, 0x7d, 0x11, 0xbc, 0x02, 0xa6, 0xbd, 0x54, 0x0a, 0x2d, 0xec, 0xb9, 0x52, 0xe7, - 0x95, 0x3a, 0x6f, 0x48, 0x37, 0xef, 0x46, 0x5c, 0xef, 0x64, 0x81, 0xc7, 0x44, 0xec, 0x47, 0x22, - 0x12, 0xbe, 0x71, 0x04, 0x59, 0x68, 0x6e, 0xe6, 0x62, 0x4e, 0x25, 0x69, 0xfe, 0xce, 0xe5, 0x5f, - 0xd4, 0x7b, 0x29, 0xa8, 0x33, 0xd9, 0x8d, 0x51, 0x99, 0x48, 0x35, 0x17, 0x49, 0x15, 0x9c, 0x1b, - 0x0d, 0x0e, 0xfb, 0x5a, 0xa3, 0xa1, 0x1c, 0x14, 0x24, 0xf9, 0xa8, 0xbd, 0xf5, 0x71, 0x02, 0x37, - 0xb6, 0xcc, 0xeb, 0xec, 0x15, 0x3c, 0x15, 0x83, 0xa6, 0x3d, 0xaa, 0xa9, 0x83, 0x16, 0xd0, 0x62, - 0x73, 0xe9, 0x96, 0x37, 0xfa, 0xd4, 0x52, 0xb8, 0x09, 0x9a, 0xbe, 0xd8, 0x4b, 0xa1, 0x73, 0x2e, - 0xb7, 0x37, 0xf0, 0x35, 0xb5, 0xa7, 0x34, 0xc4, 0xdd, 0x73, 0x42, 0xcd, 0x10, 0x6e, 0x5f, 0x20, - 0x6c, 0x1b, 0xd5, 0x05, 0xce, 0x4c, 0xe9, 0xdd, 0xac, 0x68, 0xcb, 0x78, 0x42, 0xa5, 0xc0, 0x9c, - 0xfa, 0x58, 0xc4, 0x50, 0x95, 0xbc, 0xed, 0x14, 0x98, 0x41, 0x18, 0xc3, 0xea, 0x8f, 0xda, 0xd7, - 0x7d, 0xa7, 0x36, 0x8b, 0x0e, 0xf7, 0x9d, 0xef, 0x35, 0xfc, 0x04, 0xd7, 0xd7, 0x41, 0xdb, 0x2b, - 0xe1, 0xc3, 0x5d, 0xe6, 0x2a, 0x60, 0x99, 0x84, 0x18, 0xd4, 0x8e, 0x1b, 0x50, 0xc5, 0x99, 0x1b, - 0x8b, 0x84, 0x6b, 0x21, 0xef, 0x2f, 0xe4, 0xa0, 0x5c, 0x2e, 0x5c, 0x9e, 0x84, 0x92, 0x2a, 0x2d, - 0x33, 0xa6, 0x33, 0x09, 0xae, 0x04, 0xda, 0xc3, 0x6d, 0x3c, 0xd9, 0x81, 0xb4, 0x4f, 0x19, 0xd8, - 0xcb, 0xe3, 0x29, 0x99, 0x82, 0x4b, 0x11, 0x6f, 0x24, 0xd7, 0x80, 0x9f, 0xe2, 0xc6, 0x9a, 0x04, - 0xaa, 0xaf, 0x86, 0x78, 0x06, 0x7d, 0xb8, 0x1a, 0x62, 0x62, 0x83, 0xab, 0xab, 0x14, 0xa3, 0xf5, - 0x1c, 0x4f, 0x55, 0xe5, 0xb6, 0xdb, 0x78, 0x32, 0x62, 0x5d, 0xd3, 0xa4, 0x72, 0x52, 0xee, 0xfd, - 0xa3, 0x49, 0xeb, 0x7d, 0x11, 0xd0, 0xfe, 0x79, 0xab, 0x1a, 0x11, 0x3b, 0x3d, 0xb7, 0x7e, 0x23, - 0x3c, 0xbd, 0xad, 0xa9, 0xce, 0xd4, 0x7f, 0xcf, 0x5f, 0x29, 0x1f, 0x33, 0x7f, 0x9b, 0xb8, 0x59, - 0xae, 0x68, 0x57, 0x42, 0xa8, 0x9c, 0xda, 0x42, 0x7d, 0xb1, 0xb9, 0x74, 0x73, 0xec, 0xf4, 0x76, - 0x20, 0x3c, 0x35, 0xb7, 0x67, 0x3e, 0xbf, 0x6d, 0x0e, 0x65, 0xd9, 0xc1, 0xa2, 0x0a, 0x2b, 0xfb, - 0x11, 0xc6, 0x4c, 0x24, 0x3d, 0x6e, 0x16, 0xc5, 0xa9, 0x8f, 0xa5, 0xad, 0x55, 0x02, 0x93, 0xca, - 0x90, 0x7e, 0xf5, 0xfa, 0xe1, 0xe3, 0x59, 0x3c, 0x83, 0xa7, 0xab, 0xec, 0xbc, 0x8c, 0xf7, 0xda, - 0xef, 0xd1, 0xc1, 0x31, 0xb1, 0x8e, 0x8e, 0x89, 0x75, 0x72, 0x4c, 0xd0, 0xbb, 0x82, 0xa0, 0x4f, - 0x05, 0x41, 0xdf, 0x0a, 0x82, 0x0e, 0x0a, 0x82, 0x8e, 0x0a, 0x82, 0x7e, 0x16, 0x04, 0xfd, 0x2a, - 0x88, 0x75, 0x52, 0x10, 0xf4, 0x61, 0x40, 0xac, 0x2f, 0x03, 0x82, 0x0e, 0x06, 0xc4, 0x3a, 0x1a, - 0x10, 0xeb, 0xe5, 0x56, 0x24, 0xd2, 0xd7, 0x91, 0x97, 0x8b, 0xbe, 0x06, 0x29, 0xa9, 0x97, 0x29, - 0xdf, 0x1c, 0x42, 0x21, 0x63, 0x37, 0x95, 0x22, 0xe7, 0x3d, 0x90, 0x6e, 0x15, 0xf6, 0xd3, 0x20, - 0x12, 0x3e, 0xec, 0xea, 0xb3, 0xcd, 0xff, 0xfb, 0xff, 0x12, 0x34, 0xcc, 0xfa, 0x3f, 0xf8, 0x13, - 0x00, 0x00, 0xff, 0xff, 0x50, 0x45, 0xa7, 0xf7, 0xf5, 0x04, 0x00, 0x00, + // 605 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0x58, 0x5c, 0xc8, 0x2c, 0x41, 0x52, 0x2f, 0x05, 0x75, 0x42, 0xd6, 0x68, 0x30, + 0xb1, 0x6d, 0x82, 0x31, 0x46, 0x62, 0x3c, 0x80, 0x09, 0x17, 0x90, 0x64, 0x31, 0x1e, 0xf4, 0xb0, + 0x4e, 0xa7, 0xaf, 0x65, 0x74, 0xdb, 0x69, 0x66, 0xa6, 0x15, 0x0e, 0x26, 0x7e, 0x01, 0x13, 0x3f, + 0x86, 0xf1, 0x53, 0x88, 0x27, 0x8e, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0x4c, 0xbc, 0x70, 0xf7, 0x62, + 0x98, 0x52, 0xdc, 0xc5, 0x4a, 0xbc, 0x70, 0x9b, 0xc9, 0xff, 0xf7, 0xfe, 0xef, 0x4d, 0xfb, 0xde, + 0xc3, 0x77, 0x72, 0x50, 0x2e, 0x17, 0x9e, 0x62, 0x5b, 0x10, 0x53, 0xcf, 0x8f, 0xd2, 0x1e, 0x55, + 0x49, 0x4f, 0x81, 0xf6, 0x84, 0xff, 0x06, 0x98, 0x76, 0x53, 0x29, 0xb4, 0xb0, 0x66, 0x4b, 0xce, + 0x2d, 0x39, 0x77, 0x88, 0x9b, 0x73, 0x22, 0xae, 0xb7, 0x32, 0xdf, 0x65, 0x22, 0xf6, 0x22, 0x11, + 0x09, 0xcf, 0x44, 0xf8, 0x59, 0x68, 0x6e, 0xe6, 0x62, 0x4e, 0xa5, 0xd3, 0xdc, 0xed, 0x7f, 0x67, + 0xd4, 0x3b, 0x29, 0xa8, 0x53, 0xec, 0xfa, 0x28, 0x26, 0x52, 0xcd, 0x45, 0x52, 0x89, 0xb3, 0xa3, + 0xe2, 0x70, 0x5c, 0x67, 0x54, 0xca, 0x41, 0x41, 0x92, 0x8f, 0x86, 0x77, 0xf6, 0xae, 0xe0, 0xd6, + 0x86, 0x79, 0x9d, 0xf5, 0x08, 0x4f, 0xc6, 0xa0, 0x69, 0x40, 0x35, 0xb5, 0xd1, 0x3c, 0x5a, 0x68, + 0x2f, 0xde, 0x74, 0x47, 0x9f, 0x5a, 0x82, 0xeb, 0xa0, 0xe9, 0xf3, 0x9d, 0x14, 0xba, 0x67, 0xb8, + 0xb5, 0x86, 0xaf, 0xaa, 0x1d, 0xa5, 0x21, 0xee, 0x9d, 0x39, 0x8c, 0x19, 0x87, 0x5b, 0xe7, 0x1c, + 0x36, 0x0d, 0x75, 0xce, 0x67, 0xba, 0x8c, 0x5d, 0xaf, 0xdc, 0x1e, 0xe2, 0x71, 0x95, 0x02, 0xb3, + 0x9b, 0xb5, 0x16, 0x43, 0x5f, 0xc9, 0xdd, 0x4c, 0x81, 0x19, 0x0b, 0x13, 0xb0, 0xf4, 0xab, 0xf9, + 0x6d, 0xd7, 0x1e, 0x9b, 0x41, 0x07, 0xbb, 0xf6, 0x71, 0x13, 0xfb, 0xb8, 0xb9, 0x0a, 0xda, 0x7a, + 0x15, 0x3e, 0xd8, 0x66, 0x8e, 0x02, 0x96, 0x49, 0x88, 0x41, 0x6d, 0x39, 0x3e, 0x55, 0x9c, 0x39, + 0xb1, 0x48, 0xb8, 0x16, 0xf2, 0xde, 0xfc, 0x79, 0x59, 0x69, 0x9a, 0x04, 0x54, 0x06, 0x7f, 0x88, + 0x1c, 0x94, 0xc3, 0x85, 0xc3, 0x93, 0x50, 0x52, 0xa5, 0x65, 0xc6, 0x74, 0x26, 0xc1, 0x91, 0x40, + 0x03, 0x4c, 0xf1, 0x44, 0x17, 0xd2, 0x3e, 0x65, 0x60, 0xbd, 0xa8, 0xcf, 0x93, 0x29, 0xb8, 0x28, + 0x49, 0x29, 0xd7, 0x67, 0x78, 0x27, 0xb9, 0x06, 0xfc, 0x1a, 0xb7, 0x56, 0x24, 0x50, 0x7d, 0xa9, + 0x19, 0x9e, 0x42, 0x1f, 0x2e, 0x31, 0x03, 0xc3, 0xe3, 0x6b, 0x5c, 0x5d, 0xee, 0xbf, 0xe8, 0x3c, + 0xc3, 0x93, 0x55, 0x3f, 0x58, 0xcb, 0x78, 0x22, 0x62, 0x3d, 0xd3, 0x45, 0x65, 0x2b, 0xdf, 0xbd, + 0xa0, 0x8b, 0x56, 0xfb, 0xc2, 0xa7, 0xfd, 0xb3, 0x5e, 0x6a, 0x45, 0xec, 0xe4, 0xdc, 0xf9, 0x89, + 0xf0, 0xd4, 0xa6, 0xa6, 0x3a, 0x53, 0xff, 0x3d, 0x20, 0x25, 0x5e, 0x33, 0x20, 0xeb, 0xb8, 0x5d, + 0xee, 0x90, 0x9e, 0x84, 0x50, 0xd9, 0x63, 0xf3, 0xcd, 0x85, 0xf6, 0xe2, 0x8d, 0xda, 0xf1, 0xea, + 0x42, 0x78, 0x12, 0xbc, 0x3c, 0xfd, 0xe5, 0x7d, 0x7b, 0xa8, 0xca, 0x2e, 0x16, 0x95, 0xac, 0xac, + 0xc7, 0x18, 0x33, 0x91, 0x04, 0xdc, 0x4c, 0xb2, 0xdd, 0xac, 0x75, 0x5b, 0xa9, 0x00, 0x53, 0xca, + 0x10, 0xbf, 0x74, 0xed, 0xe0, 0xc9, 0x0c, 0x9e, 0xc6, 0x53, 0x55, 0x75, 0x6e, 0xc6, 0x83, 0xe5, + 0x8f, 0x68, 0xff, 0x88, 0x34, 0x0e, 0x8f, 0x48, 0xe3, 0xf8, 0x88, 0xa0, 0x0f, 0x05, 0x41, 0x9f, + 0x0b, 0x82, 0xf6, 0x0a, 0x82, 0xf6, 0x0b, 0x82, 0x0e, 0x0b, 0x82, 0xbe, 0x17, 0x04, 0xfd, 0x28, + 0x48, 0xe3, 0xb8, 0x20, 0xe8, 0xd3, 0x80, 0x34, 0xbe, 0x0e, 0x08, 0xda, 0x1f, 0x90, 0xc6, 0xe1, + 0x80, 0x34, 0x5e, 0x6e, 0x44, 0x22, 0x7d, 0x1b, 0xb9, 0xb9, 0xe8, 0x6b, 0x90, 0x92, 0xba, 0x99, + 0xf2, 0xcc, 0x21, 0x14, 0x32, 0x76, 0x52, 0x29, 0x72, 0x1e, 0x80, 0x74, 0x2a, 0xd9, 0x4b, 0xfd, + 0x48, 0x78, 0xb0, 0xad, 0x4f, 0x57, 0xd3, 0xdf, 0x0b, 0xd0, 0x6f, 0x99, 0xfd, 0x74, 0xff, 0x77, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x85, 0xd8, 0xdb, 0x1a, 0x96, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/bgp_asn_set/public_crudapi.pb.go b/pbgo/extschema/schema/bgp_asn_set/public_crudapi.pb.go index 442928e7d..84b47744f 100644 --- a/pbgo/extschema/schema/bgp_asn_set/public_crudapi.pb.go +++ b/pbgo/extschema/schema/bgp_asn_set/public_crudapi.pb.go @@ -1058,109 +1058,109 @@ func init() { } var fileDescriptor_30fee12cf27b0fab = []byte{ - // 1617 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1b, 0x5b, - 0x15, 0xcf, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0xc7, 0xbc, 0xcb, 0x7b, 0x79, 0x8e, 0x29, 0x96, 0xf1, - 0x7b, 0x4d, 0xd3, 0x14, 0x8f, 0xab, 0x50, 0x68, 0x1b, 0x55, 0x05, 0x27, 0xb1, 0xa3, 0xb4, 0x69, - 0x5c, 0x8d, 0xdd, 0x0a, 0x10, 0x62, 0x34, 0x1e, 0x1f, 0xbb, 0x43, 0x6d, 0xcf, 0x30, 0xf7, 0xda, - 0xa9, 0x41, 0x91, 0x50, 0x59, 0x75, 0x07, 0x42, 0x2c, 0x40, 0x2c, 0xd8, 0x20, 0x21, 0xf1, 0x0f, - 0x54, 0xca, 0xa6, 0x12, 0x8b, 0x56, 0x15, 0x42, 0x11, 0x6c, 0xb2, 0x83, 0x3a, 0x2c, 0xba, 0x60, - 0x51, 0xb1, 0x61, 0x8b, 0xe6, 0xde, 0x19, 0xd7, 0x76, 0xec, 0xc4, 0x49, 0xb3, 0xf2, 0xbd, 0xf7, - 0x9c, 0xf3, 0x9b, 0xf3, 0xbb, 0xe7, 0x63, 0x8e, 0x07, 0xcb, 0x2d, 0xa0, 0xb2, 0x61, 0xa6, 0xa9, - 0xfe, 0x18, 0xea, 0x5a, 0xba, 0x54, 0xb5, 0x54, 0x8d, 0x36, 0x54, 0x0a, 0x2c, 0x6d, 0x35, 0x4b, - 0x35, 0x43, 0x57, 0x75, 0xbb, 0x59, 0xd6, 0x2c, 0x43, 0xb6, 0x6c, 0x93, 0x99, 0x64, 0x5e, 0xe8, - 0xcb, 0x42, 0x5f, 0xee, 0xd1, 0x8f, 0xa5, 0xaa, 0x06, 0x7b, 0xdc, 0x2c, 0xc9, 0xba, 0x59, 0x4f, - 0x57, 0xcd, 0xaa, 0x99, 0xe6, 0x16, 0xa5, 0x66, 0x85, 0xef, 0xf8, 0x86, 0xaf, 0x04, 0x52, 0xec, - 0x62, 0xd5, 0x34, 0xab, 0x35, 0x48, 0x6b, 0x96, 0x91, 0xd6, 0x1a, 0x0d, 0x93, 0x69, 0xcc, 0x30, - 0x1b, 0xd4, 0x95, 0x7e, 0xd5, 0x95, 0x76, 0x31, 0xa0, 0x6e, 0xb1, 0xb6, 0x2b, 0x5c, 0x18, 0xed, - 0xb4, 0x59, 0xfa, 0x31, 0xe8, 0xcc, 0xd5, 0xbb, 0x34, 0x5a, 0x8f, 0xb5, 0x2d, 0xf0, 0x9e, 0x15, - 0xeb, 0x57, 0x03, 0xdb, 0x36, 0xed, 0xae, 0x1f, 0xfd, 0x32, 0xd3, 0xea, 0x75, 0x72, 0xbe, 0x5f, - 0xd8, 0x8b, 0x99, 0xec, 0x17, 0xb5, 0x80, 0x42, 0xa3, 0x35, 0x60, 0x9e, 0x18, 0xd0, 0x31, 0x60, - 0x47, 0xed, 0xd3, 0x48, 0xfe, 0x19, 0xe1, 0xe9, 0x35, 0x1b, 0x34, 0x06, 0x0a, 0xfc, 0xa4, 0x09, - 0x94, 0x91, 0xef, 0xe0, 0x50, 0x1d, 0x98, 0x56, 0xd6, 0x98, 0x16, 0x45, 0x09, 0xb4, 0x18, 0x59, - 0xfe, 0x42, 0xee, 0x0f, 0x49, 0x9e, 0xdf, 0x80, 0xb0, 0xba, 0x0f, 0x4c, 0x2b, 0xb6, 0x2d, 0x50, - 0xba, 0x46, 0x64, 0x1b, 0x07, 0xa8, 0x05, 0x7a, 0xd4, 0xc7, 0x8d, 0xaf, 0xc8, 0x23, 0xe3, 0x29, - 0x0b, 0x88, 0x82, 0x05, 0xba, 0x03, 0xb1, 0x3a, 0xfb, 0xbb, 0xdd, 0x29, 0xc7, 0x52, 0xae, 0xea, - 0xaa, 0xf3, 0xab, 0x70, 0x9c, 0x95, 0xf0, 0x9b, 0x3b, 0x41, 0xf1, 0xc8, 0xe4, 0xff, 0x10, 0x9e, - 0xf1, 0xbc, 0xa5, 0x96, 0xd9, 0xa0, 0x40, 0x6e, 0x1f, 0x71, 0x37, 0x31, 0xd4, 0xdd, 0x0d, 0x60, - 0x43, 0x7c, 0xcd, 0xe3, 0x59, 0xda, 0xa6, 0x0c, 0xea, 0x6a, 0x17, 0xc4, 0xcf, 0x41, 0x16, 0x06, - 0x40, 0x0a, 0x5c, 0xeb, 0x28, 0xd4, 0x8c, 0x30, 0xbf, 0xef, 0x01, 0xde, 0xeb, 0x23, 0xbf, 0x70, - 0x0c, 0xf9, 0x0d, 0x60, 0xa7, 0x60, 0xfe, 0x4f, 0x84, 0x67, 0x14, 0xb0, 0x6a, 0x9a, 0xde, 0x0d, - 0xd4, 0x77, 0x8f, 0x30, 0xff, 0x72, 0x28, 0x73, 0xd7, 0x6c, 0x28, 0xfb, 0x5e, 0x67, 0x97, 0x8e, - 0x71, 0xd6, 0xc5, 0x38, 0xc1, 0x61, 0x92, 0xc6, 0x92, 0x0d, 0xd4, 0x6c, 0xda, 0x3a, 0xa8, 0x2d, - 0xb0, 0xa9, 0x61, 0x36, 0xf8, 0x7d, 0x86, 0x57, 0x03, 0xef, 0xf6, 0x10, 0x52, 0x66, 0x3d, 0xe9, - 0x23, 0x21, 0xec, 0x65, 0xf8, 0x09, 0x9e, 0xed, 0x12, 0x14, 0xb1, 0x4d, 0xfe, 0x16, 0x61, 0xbc, - 0x01, 0xcc, 0x23, 0x7c, 0x11, 0x87, 0x1b, 0x5a, 0x1d, 0xa8, 0xa5, 0xe9, 0xc0, 0x19, 0x87, 0x95, - 0x0f, 0x07, 0x84, 0xe0, 0x80, 0xb3, 0xe1, 0x64, 0xc2, 0x0a, 0x5f, 0x93, 0xef, 0x63, 0xe7, 0x89, - 0x1c, 0x4c, 0xad, 0x98, 0x76, 0x5d, 0x63, 0xdc, 0x9d, 0x99, 0xe5, 0x6b, 0xc7, 0x07, 0xc6, 0xf3, - 0x20, 0xc7, 0x6d, 0xd6, 0xcc, 0x32, 0x28, 0x33, 0x76, 0xdf, 0x59, 0xf2, 0x79, 0x10, 0x47, 0x7a, - 0x34, 0xc9, 0x26, 0x8e, 0xe8, 0x3c, 0x33, 0xf9, 0x83, 0xdc, 0x2b, 0x5d, 0x3c, 0x31, 0xf9, 0x5d, - 0x6e, 0x0a, 0x16, 0xc6, 0x0e, 0x38, 0xd9, 0xc2, 0x53, 0xb6, 0xb8, 0x09, 0x81, 0xe5, 0x3f, 0xb1, - 0x90, 0xfa, 0x33, 0x43, 0x89, 0xb8, 0xe6, 0x1c, 0x6d, 0x58, 0x4c, 0x02, 0xc7, 0xc4, 0xa4, 0xaf, - 0xa2, 0x26, 0xcf, 0xa3, 0xa2, 0x2e, 0x9c, 0x4b, 0x45, 0x05, 0xcf, 0xa1, 0xa2, 0x48, 0x0e, 0x07, - 0x29, 0xd3, 0x58, 0x93, 0x46, 0xff, 0xf0, 0x7b, 0x94, 0xf0, 0x2f, 0x46, 0x96, 0x2f, 0x1f, 0x03, - 0x58, 0xe0, 0xaa, 0xc2, 0xc5, 0x55, 0xff, 0xcb, 0x5d, 0xa4, 0xb8, 0xd6, 0x64, 0x13, 0x7f, 0x62, - 0x43, 0x05, 0x6c, 0xdb, 0x68, 0x54, 0x55, 0xf1, 0x46, 0xa0, 0xd1, 0x10, 0x07, 0xbc, 0x38, 0xa2, - 0x08, 0x2b, 0x9c, 0x9d, 0xd4, 0x35, 0x13, 0xe7, 0x94, 0x3c, 0xc2, 0xd1, 0x32, 0xd4, 0x80, 0x41, - 0x59, 0x15, 0x32, 0x28, 0x77, 0x11, 0xc3, 0x63, 0x20, 0xce, 0xb9, 0xd6, 0x8a, 0x6b, 0xec, 0xe1, - 0x7e, 0x0f, 0xcf, 0x97, 0x0d, 0xaa, 0x95, 0x6a, 0xc3, 0x80, 0xf1, 0x18, 0xc0, 0x9f, 0x7b, 0xe6, - 0x03, 0xc8, 0x3d, 0x45, 0x7b, 0x37, 0x10, 0x42, 0x92, 0x2f, 0xf9, 0x47, 0x84, 0x23, 0x5b, 0x06, - 0x1d, 0xb3, 0x50, 0xbf, 0x8e, 0xa7, 0x6a, 0x5a, 0x09, 0x6a, 0x6a, 0xc5, 0xa8, 0x31, 0xb0, 0xdd, - 0x82, 0x8d, 0xf0, 0xb3, 0x1c, 0x3f, 0x22, 0x5f, 0xe0, 0x69, 0x1b, 0x2c, 0xd3, 0x66, 0x6a, 0xc5, - 0x80, 0x5a, 0x99, 0x46, 0xfd, 0x09, 0xff, 0x62, 0x58, 0x99, 0x12, 0x87, 0x39, 0x7e, 0x46, 0xae, - 0xe1, 0x4f, 0x5d, 0x25, 0x11, 0x14, 0x4f, 0x37, 0xc0, 0x75, 0x89, 0x90, 0x89, 0x10, 0x0a, 0x8b, - 0xe4, 0x8b, 0x20, 0x96, 0x84, 0x9f, 0xa2, 0x68, 0x37, 0x19, 0xd4, 0xc9, 0x1c, 0x0e, 0x32, 0x68, - 0x68, 0x0d, 0xc6, 0x33, 0x2c, 0xac, 0xb8, 0xbb, 0x33, 0x74, 0x1b, 0x09, 0xfb, 0x9b, 0x46, 0x59, - 0x34, 0x3c, 0xc5, 0x59, 0x92, 0x04, 0x8e, 0x94, 0x81, 0xea, 0xb6, 0xc1, 0xdf, 0xb9, 0xd1, 0x88, - 0x60, 0xda, 0x73, 0x44, 0x62, 0x38, 0xe4, 0x5d, 0x73, 0x74, 0x2a, 0x81, 0x16, 0x43, 0x4a, 0x77, - 0x4f, 0xf2, 0x38, 0xc8, 0x2f, 0x45, 0x50, 0x8a, 0x2c, 0xdf, 0x38, 0x26, 0x55, 0x07, 0x69, 0xc9, - 0x5b, 0xdc, 0x32, 0xdb, 0x60, 0x76, 0x5b, 0x71, 0x61, 0xc8, 0x8f, 0x70, 0xa4, 0x67, 0x0e, 0x72, - 0x93, 0xe0, 0xf6, 0x69, 0x50, 0x33, 0x1f, 0xcc, 0x05, 0x74, 0x2f, 0x20, 0xb9, 0x85, 0xb1, 0xb9, - 0xd3, 0x00, 0x5b, 0x75, 0x06, 0x8d, 0x68, 0x98, 0x17, 0x6c, 0x6c, 0x00, 0xfe, 0x91, 0x01, 0x3b, - 0x5e, 0x86, 0x85, 0xb9, 0xb6, 0x73, 0xd2, 0xd7, 0x74, 0xa6, 0xcf, 0xa3, 0xe9, 0xcc, 0x7c, 0x54, - 0xd3, 0xc9, 0xe0, 0x50, 0x15, 0x18, 0xef, 0x1c, 0x23, 0xda, 0xd7, 0x88, 0xc6, 0xa3, 0x5c, 0xa8, - 0x8a, 0x0d, 0xb9, 0x87, 0xb1, 0x9b, 0x97, 0x14, 0x98, 0xdb, 0x1b, 0x4e, 0xd7, 0x6c, 0xc2, 0xc2, - 0xbe, 0x00, 0x2c, 0x76, 0x0b, 0x47, 0x7a, 0x02, 0xea, 0x64, 0xda, 0x13, 0x68, 0xbb, 0x59, 0xe9, - 0x2c, 0xc9, 0xa7, 0x78, 0xb2, 0xa5, 0xd5, 0x9a, 0x5e, 0x42, 0x8a, 0xcd, 0x8a, 0xef, 0x26, 0x8a, - 0xdd, 0xc1, 0xd2, 0x60, 0xd4, 0x4e, 0x63, 0x7f, 0x37, 0x10, 0x9a, 0x94, 0x82, 0xc9, 0x5f, 0x20, - 0x3c, 0xd5, 0x9b, 0x0d, 0x24, 0x83, 0x27, 0x0d, 0x06, 0x75, 0x1a, 0x15, 0x6d, 0xf4, 0xea, 0x29, - 0xb2, 0x48, 0x11, 0x96, 0xe4, 0x1a, 0x0e, 0x8a, 0x49, 0x38, 0xea, 0xe3, 0x18, 0xd1, 0x01, 0x8c, - 0xac, 0x23, 0xe4, 0x97, 0xea, 0xea, 0x25, 0x9f, 0xe0, 0xe9, 0x75, 0xde, 0xed, 0xce, 0x3e, 0x12, - 0x2c, 0x62, 0xa9, 0xa2, 0x19, 0x35, 0xd5, 0xa8, 0x74, 0xbb, 0x22, 0xaf, 0xd8, 0x90, 0x32, 0xe3, - 0x9c, 0x6f, 0x56, 0xbc, 0x6e, 0xb7, 0xf4, 0x5f, 0x84, 0x3f, 0x1b, 0x3a, 0x0b, 0x90, 0x18, 0x9e, - 0xdb, 0xc8, 0x16, 0x55, 0xa5, 0xf0, 0x40, 0xcd, 0xe5, 0x95, 0xfb, 0x99, 0xa2, 0xba, 0x9e, 0xcd, - 0x65, 0x1e, 0x6e, 0x15, 0xa5, 0x09, 0xf2, 0x35, 0x3c, 0x3f, 0x20, 0xcb, 0xe5, 0x15, 0x75, 0x4d, - 0xc9, 0x66, 0x8a, 0x59, 0x09, 0x91, 0x38, 0x8e, 0x0d, 0x11, 0x2b, 0xd9, 0x07, 0x5b, 0x99, 0xb5, - 0xac, 0xe4, 0x23, 0xf3, 0xf8, 0xb3, 0x01, 0x79, 0xa1, 0x98, 0x29, 0x3e, 0x2c, 0x48, 0x7e, 0xf2, - 0x39, 0xfe, 0xca, 0x80, 0x48, 0xc9, 0x66, 0xd6, 0xa5, 0x00, 0xf9, 0x12, 0x27, 0x8e, 0x08, 0x72, - 0x59, 0x45, 0xd9, 0xdc, 0xde, 0x50, 0xf3, 0xab, 0x77, 0xb3, 0x6b, 0xc5, 0x82, 0x34, 0x39, 0x44, - 0x6b, 0x55, 0xc9, 0xdf, 0xcb, 0x6e, 0x0b, 0xe5, 0xec, 0xf6, 0x5a, 0xb6, 0x20, 0x05, 0x97, 0x7f, - 0x13, 0xc6, 0xfe, 0xcc, 0x83, 0x4d, 0x72, 0x80, 0x70, 0x50, 0x4c, 0x28, 0x64, 0xec, 0x21, 0x26, - 0x76, 0x65, 0x0c, 0x4d, 0x77, 0xb4, 0x6b, 0x77, 0x5e, 0x45, 0xbf, 0x5d, 0xf9, 0xd6, 0x53, 0x3d, - 0x45, 0x41, 0x6f, 0xda, 0x50, 0x07, 0xfa, 0x38, 0x55, 0xd2, 0xa8, 0xa1, 0xa7, 0x9a, 0x14, 0xec, - 0x6f, 0xb4, 0x80, 0xa6, 0x0c, 0x33, 0x65, 0x34, 0x2a, 0xb6, 0x46, 0x99, 0xdd, 0xd4, 0x59, 0xd3, - 0x86, 0xd4, 0x8e, 0x6d, 0x30, 0x78, 0xf6, 0x8f, 0x7f, 0xff, 0xda, 0x77, 0x2b, 0x79, 0xdd, 0xfd, - 0xfb, 0x98, 0xee, 0xc6, 0x9b, 0xa6, 0x7f, 0xe6, 0x95, 0xbf, 0xdc, 0x3d, 0xdc, 0xed, 0xfd, 0x53, - 0x46, 0x57, 0xd0, 0x12, 0xd9, 0x47, 0xd8, 0xbf, 0x01, 0x8c, 0x5c, 0x3a, 0x69, 0x06, 0x14, 0xa4, - 0x16, 0xc6, 0x1b, 0x15, 0x93, 0x3f, 0x7d, 0xfd, 0xc2, 0x87, 0x3a, 0xaf, 0xa2, 0x37, 0x87, 0xb3, - 0xaa, 0x9b, 0x0d, 0x83, 0x99, 0xa3, 0x88, 0xd9, 0xa0, 0x95, 0x39, 0xaf, 0xeb, 0x64, 0x79, 0x18, - 0xaf, 0x11, 0x74, 0x84, 0x60, 0x97, 0xfc, 0x15, 0xe1, 0x80, 0x53, 0x65, 0x64, 0xe1, 0xc4, 0x32, - 0x14, 0xa4, 0x2e, 0x8f, 0x59, 0xae, 0x49, 0x7a, 0x2e, 0xac, 0x52, 0xe4, 0xea, 0x29, 0x58, 0x91, - 0xff, 0x20, 0x7c, 0xc1, 0x1d, 0x69, 0xc9, 0xf8, 0x63, 0x6f, 0x6c, 0x69, 0x1c, 0x55, 0x97, 0xd7, - 0x73, 0xf4, 0x91, 0x09, 0xb8, 0x19, 0x5b, 0x3f, 0x4b, 0x02, 0x0e, 0x68, 0xec, 0x3a, 0x09, 0xf9, - 0x17, 0x84, 0x83, 0xa2, 0xad, 0x1d, 0x5b, 0x6b, 0x7d, 0x9d, 0x2f, 0x36, 0x27, 0x8b, 0xef, 0x17, - 0xb2, 0xf7, 0xfd, 0x42, 0xce, 0xd6, 0x2d, 0xd6, 0x4e, 0xee, 0x7c, 0x24, 0xaf, 0x1b, 0x4b, 0x67, - 0x48, 0xc0, 0x15, 0xb4, 0x14, 0xfb, 0xe1, 0xcb, 0x3d, 0xe4, 0xfb, 0xfb, 0x1e, 0x4a, 0x8c, 0x66, - 0x20, 0x5e, 0x6e, 0x07, 0x7b, 0x08, 0x75, 0xf6, 0xd0, 0xc2, 0x78, 0xaf, 0xc2, 0x67, 0x7f, 0x8b, - 0xfa, 0x24, 0xb4, 0xfa, 0x2b, 0xf4, 0xe6, 0xce, 0xe4, 0x9a, 0xf2, 0x70, 0x7d, 0x6b, 0xff, 0x6d, - 0x7c, 0xe2, 0xe0, 0x6d, 0x7c, 0xe2, 0xfd, 0xdb, 0x38, 0xfa, 0x79, 0x27, 0x8e, 0xfe, 0xd4, 0x89, - 0xa3, 0xd7, 0x9d, 0x38, 0xda, 0xef, 0xc4, 0xd1, 0xbf, 0x3a, 0x71, 0xf4, 0xae, 0x13, 0x9f, 0x78, - 0xdf, 0x89, 0xa3, 0x5f, 0x1e, 0xc6, 0x27, 0x5e, 0x1e, 0xc6, 0xd1, 0xfe, 0x61, 0x7c, 0xe2, 0xe0, - 0x30, 0x3e, 0xf1, 0x83, 0x7c, 0xd5, 0xb4, 0x9e, 0x54, 0xe5, 0x96, 0xe9, 0x8c, 0x98, 0xb6, 0x26, - 0x37, 0x69, 0x9a, 0x2f, 0x9c, 0xff, 0x58, 0x29, 0xcb, 0x36, 0x5b, 0x46, 0x19, 0xec, 0x94, 0x27, - 0x4e, 0x5b, 0xa5, 0xaa, 0x99, 0x86, 0xa7, 0xcc, 0xfd, 0x76, 0x72, 0xf4, 0x0b, 0x4f, 0x29, 0xc8, - 0xaf, 0xfe, 0x9b, 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x4d, 0x94, 0x01, 0x75, 0xe2, 0x12, 0x00, - 0x00, + // 1632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4f, 0x6c, 0x13, 0xcb, + 0x19, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb3, 0x4c, 0x21, 0x38, 0x2e, 0xb5, 0x5c, 0x03, 0x21, + 0x84, 0x7a, 0x8d, 0x52, 0x2a, 0x4a, 0x84, 0x68, 0x9d, 0xc4, 0x8e, 0x02, 0x21, 0x46, 0x6b, 0x83, + 0x4a, 0x55, 0x75, 0xb5, 0x5e, 0x8f, 0xcd, 0x16, 0x7b, 0x77, 0x3b, 0x33, 0x76, 0x88, 0xaa, 0x48, + 0x15, 0x3d, 0xb5, 0xa7, 0x56, 0x6d, 0x55, 0xf5, 0xcf, 0xa1, 0x97, 0xaa, 0x95, 0x7a, 0xae, 0x84, + 0x94, 0x0b, 0xb7, 0x22, 0x0e, 0x15, 0xea, 0xbb, 0x70, 0x7b, 0x0f, 0xe7, 0x1d, 0x38, 0x3d, 0x21, + 0x2e, 0x5c, 0x9f, 0x76, 0x66, 0xd7, 0xd8, 0x8e, 0xed, 0x38, 0x79, 0xe1, 0x9d, 0x3c, 0x33, 0xdf, + 0xf7, 0xfd, 0xf6, 0xfb, 0xcd, 0xf7, 0x67, 0x3f, 0x2f, 0x94, 0x9b, 0x98, 0xca, 0x86, 0x95, 0xa6, + 0xfa, 0x43, 0x5c, 0xd7, 0xd2, 0xa5, 0xaa, 0xad, 0x6a, 0xd4, 0x54, 0x29, 0x66, 0x69, 0xbb, 0x51, + 0xaa, 0x19, 0xba, 0xaa, 0x93, 0x46, 0x59, 0xb3, 0x0d, 0xd9, 0x26, 0x16, 0xb3, 0xd0, 0xac, 0xd0, + 0x97, 0x85, 0xbe, 0xdc, 0xa1, 0x1f, 0x4b, 0x55, 0x0d, 0xf6, 0xb0, 0x51, 0x92, 0x75, 0xab, 0x9e, + 0xae, 0x5a, 0x55, 0x2b, 0xcd, 0x2d, 0x4a, 0x8d, 0x0a, 0xdf, 0xf1, 0x0d, 0x5f, 0x09, 0xa4, 0xd8, + 0xd9, 0xaa, 0x65, 0x55, 0x6b, 0x38, 0xad, 0xd9, 0x46, 0x5a, 0x33, 0x4d, 0x8b, 0x69, 0xcc, 0xb0, + 0x4c, 0xea, 0x4a, 0xbf, 0xe9, 0x4a, 0xdb, 0x18, 0xb8, 0x6e, 0xb3, 0x6d, 0x57, 0x38, 0x37, 0xd8, + 0x69, 0xab, 0xf4, 0x33, 0xac, 0x33, 0x57, 0xef, 0xc2, 0x60, 0x3d, 0xb6, 0x6d, 0x63, 0xef, 0x59, + 0xb1, 0x6e, 0x35, 0x4c, 0x88, 0x45, 0xda, 0x7e, 0x74, 0xcb, 0x2c, 0xbb, 0xd3, 0xc9, 0xd9, 0x6e, + 0x61, 0x27, 0x66, 0xb2, 0x5b, 0xd4, 0xc4, 0x14, 0x9b, 0xcd, 0x1e, 0xf3, 0x44, 0x8f, 0x8e, 0x81, + 0xb7, 0xd4, 0x2e, 0x8d, 0xe4, 0xbf, 0x01, 0x9c, 0x5c, 0x21, 0x58, 0x63, 0x58, 0xc1, 0x3f, 0x6f, + 0x60, 0xca, 0xd0, 0x0f, 0x60, 0xa8, 0x8e, 0x99, 0x56, 0xd6, 0x98, 0x16, 0x05, 0x09, 0x30, 0x1f, + 0x59, 0x3c, 0x27, 0x77, 0x87, 0x24, 0xcf, 0x6f, 0x40, 0x58, 0xdd, 0xc1, 0x4c, 0x2b, 0x6e, 0xdb, + 0x58, 0x69, 0x1b, 0xa1, 0x4d, 0x18, 0xa0, 0x36, 0xd6, 0xa3, 0x3e, 0x6e, 0x7c, 0x49, 0x1e, 0x18, + 0x4f, 0x59, 0x40, 0x14, 0x6c, 0xac, 0x3b, 0x10, 0xcb, 0xd3, 0x7f, 0xd9, 0x99, 0x70, 0x2c, 0xe5, + 0xaa, 0xae, 0x3a, 0xbf, 0x0a, 0xc7, 0x59, 0x0a, 0xbf, 0xb8, 0x19, 0x14, 0x8f, 0x4c, 0xbe, 0x07, + 0x70, 0xca, 0xf3, 0x96, 0xda, 0x96, 0x49, 0x31, 0xba, 0xb1, 0xcf, 0xdd, 0x44, 0x5f, 0x77, 0xd7, + 0x30, 0xeb, 0xe3, 0x6b, 0x1e, 0x4e, 0xd3, 0x6d, 0xca, 0x70, 0x5d, 0x6d, 0x83, 0xf8, 0x39, 0xc8, + 0x5c, 0x0f, 0x48, 0x81, 0x6b, 0xed, 0x87, 0x9a, 0x12, 0xe6, 0x77, 0x3c, 0xc0, 0xdb, 0x5d, 0xe4, + 0xe7, 0x86, 0x90, 0x5f, 0xc3, 0xec, 0x10, 0xcc, 0x3f, 0x05, 0x70, 0x4a, 0xc1, 0x76, 0x4d, 0xd3, + 0xdb, 0x81, 0xfa, 0xe1, 0x3e, 0xe6, 0xe7, 0xfb, 0x32, 0x77, 0xcd, 0xfa, 0xb2, 0xef, 0x74, 0x76, + 0x61, 0x88, 0xb3, 0x2e, 0xc6, 0x01, 0x0e, 0xa3, 0x34, 0x94, 0x08, 0xa6, 0x56, 0x83, 0xe8, 0x58, + 0x6d, 0x62, 0x42, 0x0d, 0xcb, 0xe4, 0xf7, 0x19, 0x5e, 0x0e, 0xbc, 0xd9, 0x05, 0x40, 0x99, 0xf6, + 0xa4, 0xf7, 0x85, 0xb0, 0x93, 0xe1, 0x49, 0x38, 0xdd, 0x26, 0x28, 0x62, 0x9b, 0xfc, 0x33, 0x80, + 0x70, 0x0d, 0x33, 0x8f, 0xf0, 0x59, 0x18, 0x36, 0xb5, 0x3a, 0xa6, 0xb6, 0xa6, 0x63, 0xce, 0x38, + 0xac, 0x7c, 0x38, 0x40, 0x08, 0x06, 0x9c, 0x0d, 0x27, 0x13, 0x56, 0xf8, 0x1a, 0x3d, 0x80, 0xce, + 0x13, 0x39, 0x98, 0x5a, 0xb1, 0x48, 0x5d, 0x63, 0xdc, 0x9d, 0xa9, 0xc5, 0x2b, 0xc3, 0x03, 0xe3, + 0x79, 0x90, 0xe3, 0x36, 0x2b, 0x56, 0x19, 0x2b, 0x53, 0xa4, 0xeb, 0x2c, 0xf9, 0xeb, 0x20, 0x8c, + 0x74, 0x68, 0xa2, 0x75, 0x18, 0xd1, 0x79, 0x66, 0xf2, 0x07, 0xb9, 0x57, 0x3a, 0x7f, 0x60, 0xf2, + 0xbb, 0xdc, 0x14, 0x28, 0x8c, 0x1d, 0x70, 0xb4, 0x01, 0x27, 0x88, 0xb8, 0x09, 0x81, 0xe5, 0x3f, + 0xb0, 0x90, 0xba, 0x33, 0x43, 0x89, 0xb8, 0xe6, 0x1c, 0xad, 0x5f, 0x4c, 0x02, 0x43, 0x62, 0xd2, + 0x55, 0x51, 0xe3, 0xc7, 0x51, 0x51, 0x27, 0x8e, 0xa5, 0xa2, 0x82, 0xc7, 0x50, 0x51, 0x28, 0x07, + 0x83, 0x94, 0x69, 0xac, 0x41, 0xa3, 0x7f, 0xff, 0x1b, 0x48, 0xf8, 0xe7, 0x23, 0x8b, 0x17, 0x87, + 0x00, 0x16, 0xb8, 0xaa, 0x70, 0x71, 0xd9, 0xff, 0x6c, 0x07, 0x28, 0xae, 0x35, 0x5a, 0x87, 0x27, + 0x09, 0xae, 0x60, 0x42, 0x0c, 0xb3, 0xaa, 0x8a, 0x37, 0x02, 0x8d, 0x86, 0x38, 0xe0, 0xd9, 0x01, + 0x45, 0x58, 0xe1, 0xec, 0xa4, 0xb6, 0x99, 0x38, 0xa7, 0xe8, 0x3e, 0x8c, 0x96, 0x71, 0x0d, 0x33, + 0x5c, 0x56, 0x85, 0x0c, 0x97, 0xdb, 0x88, 0xe1, 0x11, 0x10, 0x67, 0x5c, 0x6b, 0xc5, 0x35, 0xf6, + 0x70, 0x7f, 0x04, 0x67, 0xcb, 0x06, 0xd5, 0x4a, 0xb5, 0x7e, 0xc0, 0x70, 0x04, 0xe0, 0x33, 0x9e, + 0x79, 0x0f, 0x72, 0x47, 0xd1, 0xde, 0x0a, 0x84, 0x80, 0xe4, 0x4b, 0xfe, 0x03, 0xc0, 0xc8, 0x86, + 0x41, 0x47, 0x2c, 0xd4, 0x6f, 0xc3, 0x89, 0x9a, 0x56, 0xc2, 0x35, 0xb5, 0x62, 0xd4, 0x18, 0x26, + 0x6e, 0xc1, 0x46, 0xf8, 0x59, 0x8e, 0x1f, 0xa1, 0x73, 0x70, 0x92, 0x60, 0xdb, 0x22, 0x4c, 0xad, + 0x18, 0xb8, 0x56, 0xa6, 0x51, 0x7f, 0xc2, 0x3f, 0x1f, 0x56, 0x26, 0xc4, 0x61, 0x8e, 0x9f, 0xa1, + 0x2b, 0xf0, 0x94, 0xab, 0x24, 0x82, 0xe2, 0xe9, 0x06, 0xb8, 0x2e, 0x12, 0x32, 0x11, 0x42, 0x61, + 0x91, 0x7c, 0x1a, 0x84, 0x92, 0xf0, 0x53, 0x14, 0xed, 0x3a, 0xc3, 0x75, 0x34, 0x03, 0x83, 0x0c, + 0x9b, 0x9a, 0xc9, 0x78, 0x86, 0x85, 0x15, 0x77, 0x77, 0x84, 0x6e, 0x23, 0x41, 0x7f, 0xc3, 0x28, + 0x8b, 0x86, 0xa7, 0x38, 0x4b, 0x94, 0x80, 0x91, 0x32, 0xa6, 0x3a, 0x31, 0xf8, 0x3b, 0x37, 0x1a, + 0x11, 0x4c, 0x3b, 0x8e, 0x50, 0x0c, 0x86, 0xbc, 0x6b, 0x8e, 0x4e, 0x24, 0xc0, 0x7c, 0x48, 0x69, + 0xef, 0x51, 0x1e, 0x06, 0xf9, 0xa5, 0x08, 0x4a, 0x91, 0xc5, 0x6b, 0x43, 0x52, 0xb5, 0x97, 0x96, + 0xbc, 0xc1, 0x2d, 0xb3, 0x26, 0x23, 0xdb, 0x8a, 0x0b, 0x83, 0x7e, 0x0a, 0x23, 0x1d, 0x73, 0x90, + 0x9b, 0x04, 0x37, 0x0e, 0x83, 0x9a, 0xf9, 0x60, 0x2e, 0xa0, 0x3b, 0x01, 0xd1, 0x75, 0x08, 0xad, + 0x2d, 0x13, 0x13, 0xd5, 0x19, 0x34, 0xa2, 0x61, 0x5e, 0xb0, 0xb1, 0x1e, 0xf8, 0xfb, 0x06, 0xde, + 0xf2, 0x32, 0x2c, 0xcc, 0xb5, 0x9d, 0x93, 0xae, 0xa6, 0x33, 0x79, 0x1c, 0x4d, 0x67, 0xea, 0x2b, + 0x35, 0x9d, 0x0c, 0x0c, 0x55, 0x31, 0xe3, 0x9d, 0x63, 0x40, 0xfb, 0x1a, 0xd0, 0x78, 0x94, 0x13, + 0x55, 0xb1, 0x41, 0xb7, 0x21, 0x74, 0xf3, 0x92, 0x62, 0xe6, 0xf6, 0x86, 0xc3, 0x35, 0x9b, 0xb0, + 0xb0, 0x2f, 0x60, 0x16, 0xbb, 0x0e, 0x23, 0x1d, 0x01, 0x75, 0x32, 0xed, 0x11, 0xde, 0x76, 0xb3, + 0xd2, 0x59, 0xa2, 0x53, 0x70, 0xbc, 0xa9, 0xd5, 0x1a, 0x5e, 0x42, 0x8a, 0xcd, 0x92, 0xef, 0xfb, + 0x20, 0x76, 0x13, 0x4a, 0xbd, 0x51, 0x3b, 0x8c, 0xfd, 0xad, 0x40, 0x68, 0x5c, 0x0a, 0x26, 0x7f, + 0x05, 0xe0, 0x44, 0x67, 0x36, 0xa0, 0x0c, 0x1c, 0x37, 0x18, 0xae, 0xd3, 0xa8, 0x68, 0xa3, 0x97, + 0x0f, 0x91, 0x45, 0x8a, 0xb0, 0x44, 0x57, 0x60, 0x50, 0x4c, 0xc2, 0x51, 0x1f, 0xc7, 0x88, 0xf6, + 0x60, 0x64, 0x1d, 0x21, 0xbf, 0x54, 0x57, 0x2f, 0xf9, 0x08, 0x4e, 0xae, 0xf2, 0x6e, 0x77, 0xf4, + 0x91, 0x60, 0x1e, 0x4a, 0x15, 0xcd, 0xa8, 0xa9, 0x46, 0xa5, 0xdd, 0x15, 0x79, 0xc5, 0x86, 0x94, + 0x29, 0xe7, 0x7c, 0xbd, 0xe2, 0x75, 0xbb, 0x85, 0x77, 0x00, 0x9e, 0xee, 0x3b, 0x0b, 0xa0, 0x18, + 0x9c, 0x59, 0xcb, 0x16, 0x55, 0xa5, 0x70, 0x57, 0xcd, 0xe5, 0x95, 0x3b, 0x99, 0xa2, 0xba, 0x9a, + 0xcd, 0x65, 0xee, 0x6d, 0x14, 0xa5, 0x31, 0xf4, 0x2d, 0x38, 0xdb, 0x23, 0xcb, 0xe5, 0x15, 0x75, + 0x45, 0xc9, 0x66, 0x8a, 0x59, 0x09, 0xa0, 0x38, 0x8c, 0xf5, 0x11, 0x2b, 0xd9, 0xbb, 0x1b, 0x99, + 0x95, 0xac, 0xe4, 0x43, 0xb3, 0xf0, 0x74, 0x8f, 0xbc, 0x50, 0xcc, 0x14, 0xef, 0x15, 0x24, 0x3f, + 0x3a, 0x03, 0xbf, 0xd1, 0x23, 0x52, 0xb2, 0x99, 0x55, 0x29, 0x80, 0xce, 0xc3, 0xc4, 0x3e, 0x41, + 0x2e, 0xab, 0x28, 0xeb, 0x9b, 0x6b, 0x6a, 0x7e, 0xf9, 0x56, 0x76, 0xa5, 0x58, 0x90, 0xc6, 0xfb, + 0x68, 0x2d, 0x2b, 0xf9, 0xdb, 0xd9, 0x4d, 0xa1, 0x9c, 0xdd, 0x5c, 0xc9, 0x16, 0xa4, 0xe0, 0xe2, + 0x7f, 0x20, 0xf4, 0x67, 0xee, 0xae, 0xa3, 0xf7, 0x00, 0x06, 0xc5, 0x84, 0x82, 0x46, 0x1e, 0x62, + 0x62, 0x97, 0x46, 0xd0, 0x74, 0x47, 0xbb, 0x3f, 0x81, 0xd6, 0x7f, 0xa3, 0xc5, 0xca, 0xf7, 0x1e, + 0xeb, 0x29, 0x8a, 0xf5, 0x06, 0xc1, 0x75, 0x4c, 0x1f, 0xa6, 0x4a, 0x1a, 0x35, 0xf4, 0x54, 0x83, + 0x62, 0xf2, 0x9d, 0x5e, 0x11, 0x65, 0x9a, 0x59, 0xd6, 0x48, 0x59, 0x48, 0x9b, 0x98, 0xa6, 0x0c, + 0x2b, 0x65, 0x98, 0x15, 0xa2, 0x51, 0x46, 0x1a, 0x3a, 0x6b, 0x10, 0x9c, 0xda, 0x22, 0x06, 0xc3, + 0x4f, 0x3e, 0xf9, 0xfc, 0xf7, 0xbe, 0xeb, 0xc9, 0xab, 0xee, 0xbf, 0xcb, 0x74, 0x3b, 0x1d, 0x68, + 0xfa, 0x17, 0x5e, 0x77, 0x90, 0xdb, 0x87, 0x3b, 0x9d, 0xff, 0xd9, 0xe8, 0x12, 0x58, 0x40, 0xef, + 0x00, 0xf4, 0xaf, 0x61, 0x86, 0x2e, 0x1c, 0x34, 0x22, 0x0a, 0xce, 0x73, 0xa3, 0x4d, 0x92, 0xc9, + 0xbf, 0x82, 0xe7, 0x4f, 0x7d, 0x0e, 0xe9, 0x07, 0xfd, 0x49, 0xd7, 0x2d, 0xd3, 0x60, 0xd6, 0x10, + 0xde, 0x9e, 0x42, 0x7f, 0xea, 0x04, 0x6b, 0x65, 0xce, 0xfc, 0x2a, 0x5a, 0xec, 0xc7, 0x7c, 0x00, + 0x61, 0x21, 0xd8, 0x41, 0x5f, 0x00, 0x18, 0x70, 0xca, 0x14, 0xcd, 0x1d, 0x58, 0xc7, 0x82, 0xf6, + 0xc5, 0x11, 0xeb, 0x3d, 0xf9, 0x87, 0xaf, 0x89, 0x77, 0x0a, 0x5d, 0x3e, 0x04, 0x6f, 0xf4, 0x1b, + 0x1f, 0x3c, 0xe1, 0x4e, 0xcd, 0x68, 0xf4, 0xc9, 0x3a, 0xb6, 0x30, 0x8a, 0xaa, 0xcb, 0xfc, 0x9f, + 0x1f, 0x37, 0xc5, 0xd7, 0x63, 0xab, 0x47, 0x49, 0xf1, 0x1e, 0x8d, 0x1d, 0x27, 0xe5, 0x5b, 0x00, + 0x06, 0x45, 0x5f, 0x1d, 0x5a, 0xec, 0x5d, 0xad, 0x37, 0x36, 0x23, 0x8b, 0x0f, 0x28, 0xb2, 0xf7, + 0x01, 0x45, 0xce, 0xd6, 0x6d, 0xb6, 0x9d, 0xfc, 0xe3, 0xc7, 0xa5, 0x7d, 0x6d, 0xe1, 0x08, 0xf9, + 0xbd, 0x04, 0x16, 0x62, 0x3f, 0x79, 0xb6, 0x0b, 0x7c, 0xff, 0xdf, 0x05, 0x89, 0xc1, 0x04, 0xc5, + 0xcb, 0xf7, 0xd5, 0x2e, 0x00, 0xad, 0x5d, 0x30, 0x37, 0xda, 0xab, 0xfa, 0xc9, 0xff, 0xa2, 0x3e, + 0x09, 0x2c, 0xff, 0x0e, 0xbc, 0xb8, 0x39, 0xbe, 0xa2, 0xdc, 0x5b, 0xdd, 0x78, 0xf9, 0x3a, 0x3e, + 0xf6, 0xea, 0x75, 0x7c, 0xec, 0xed, 0xeb, 0x38, 0xf8, 0x65, 0x2b, 0x0e, 0xfe, 0xd5, 0x8a, 0x83, + 0xe7, 0xad, 0x38, 0x78, 0xd9, 0x8a, 0x83, 0xcf, 0x5a, 0x71, 0xf0, 0xa6, 0x15, 0x1f, 0x7b, 0xdb, + 0x8a, 0x83, 0xdf, 0xee, 0xc5, 0xc7, 0x9e, 0xed, 0xc5, 0xc1, 0xcb, 0xbd, 0xf8, 0xd8, 0xab, 0xbd, + 0xf8, 0xd8, 0x8f, 0xf3, 0x55, 0xcb, 0x7e, 0x54, 0x95, 0x9b, 0x96, 0x33, 0x02, 0x13, 0x4d, 0x6e, + 0xd0, 0x34, 0x5f, 0x38, 0xff, 0x01, 0x53, 0x36, 0xb1, 0x9a, 0x46, 0x19, 0x93, 0x94, 0x27, 0x4e, + 0xdb, 0xa5, 0xaa, 0x95, 0xc6, 0x8f, 0x99, 0xfb, 0x6d, 0x67, 0xff, 0x17, 0xa8, 0x52, 0x90, 0x47, + 0xe6, 0xbb, 0x5f, 0x06, 0x00, 0x00, 0xff, 0xff, 0x44, 0xc5, 0x42, 0x07, 0x82, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/bgp_asn_set/public_crudapi.vesapi.go b/pbgo/extschema/schema/bgp_asn_set/public_crudapi.vesapi.go index fc2b67b60..c226d0dfb 100644 --- a/pbgo/extschema/schema/bgp_asn_set/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/bgp_asn_set/public_crudapi.vesapi.go @@ -2798,10 +2798,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2858,10 +2862,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2964,10 +2972,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/bigip/apm/crudapi/api.vesapi.go b/pbgo/extschema/schema/bigip/apm/crudapi/api.vesapi.go index 06f41522c..a009a65f9 100644 --- a/pbgo/extschema/schema/bigip/apm/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/bigip/apm/crudapi/api.vesapi.go @@ -3960,10 +3960,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/bigip/apm/pkg.vespkg.go b/pbgo/extschema/schema/bigip/apm/pkg.vespkg.go index 78e830337..695d5a844 100644 --- a/pbgo/extschema/schema/bigip/apm/pkg.vespkg.go +++ b/pbgo/extschema/schema/bigip/apm/pkg.vespkg.go @@ -103,14 +103,14 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.bigip.apm.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.aws_site_type_choice.apm_aws_site.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.bigip.apm.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.aws_site_type_choice.apm_aws_site.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -119,18 +119,18 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.bigip.apm.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.aws_site_type_choice.apm_aws_site.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_site_type_choice.apm_aws_site.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.bigip.apm.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.aws_site_type_choice.apm_aws_site.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/bigip/apm/public_crudapi.vesapi.go b/pbgo/extschema/schema/bigip/apm/public_crudapi.vesapi.go index a1d3b95f0..6dbae3dc8 100644 --- a/pbgo/extschema/schema/bigip/apm/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/bigip/apm/public_crudapi.vesapi.go @@ -3794,10 +3794,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3854,10 +3858,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3916,10 +3924,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/central_manager/provider/public_customapi.pb.go b/pbgo/extschema/schema/central_manager/provider/public_customapi.pb.go index 8d4648cb2..650ee4f78 100644 --- a/pbgo/extschema/schema/central_manager/provider/public_customapi.pb.go +++ b/pbgo/extschema/schema/central_manager/provider/public_customapi.pb.go @@ -1172,13 +1172,13 @@ type Deployment struct { // x-displayName: "Memory total" // x-example: 12888 // Total memory - MemoryTotal int32 `protobuf:"varint,9,opt,name=memory_total,json=memoryTotal,proto3" json:"memory_total,omitempty"` + MemoryTotal uint64 `protobuf:"varint,9,opt,name=memory_total,json=memoryTotal,proto3" json:"memory_total,omitempty"` // disk_total // // x-displayName: "Disk total" // x-example: 48000000 // Total disk - DiskTotal int32 `protobuf:"varint,10,opt,name=disk_total,json=diskTotal,proto3" json:"disk_total,omitempty"` + DiskTotal uint64 `protobuf:"varint,10,opt,name=disk_total,json=diskTotal,proto3" json:"disk_total,omitempty"` } func (m *Deployment) Reset() { *m = Deployment{} } @@ -1269,14 +1269,14 @@ func (m *Deployment) GetVcpu() int32 { return 0 } -func (m *Deployment) GetMemoryTotal() int32 { +func (m *Deployment) GetMemoryTotal() uint64 { if m != nil { return m.MemoryTotal } return 0 } -func (m *Deployment) GetDiskTotal() int32 { +func (m *Deployment) GetDiskTotal() uint64 { if m != nil { return m.DiskTotal } @@ -1485,103 +1485,103 @@ func init() { var fileDescriptor_43cf26552480eac7 = []byte{ // 1542 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcd, 0x8f, 0x13, 0x47, - 0x16, 0x9f, 0xf2, 0xc7, 0x8c, 0x5d, 0x9e, 0xe1, 0xa3, 0x18, 0x76, 0x7b, 0x0d, 0x98, 0xd9, 0x5e, - 0x2d, 0x1a, 0xb4, 0xd8, 0x86, 0x01, 0xf6, 0x4b, 0xcb, 0x61, 0xc6, 0x98, 0x59, 0xa3, 0x61, 0x06, - 0x35, 0x66, 0xd1, 0x7e, 0xc9, 0x2a, 0xb7, 0xcb, 0x9e, 0xd6, 0x74, 0x77, 0xf5, 0x76, 0x55, 0x1b, - 0x0c, 0x42, 0x5a, 0xcd, 0x21, 0x87, 0x9c, 0x12, 0x45, 0xca, 0x5f, 0x90, 0x43, 0xfe, 0x84, 0x28, - 0x28, 0x12, 0xb7, 0x70, 0x8a, 0x46, 0xca, 0x85, 0x90, 0x28, 0x04, 0x4f, 0x12, 0x25, 0x37, 0x24, - 0x94, 0x7b, 0x54, 0x55, 0xdd, 0x1e, 0xdb, 0x99, 0x80, 0x07, 0x73, 0x0b, 0xb7, 0xaa, 0xdf, 0x7b, - 0xef, 0xd7, 0xf5, 0x5e, 0xd5, 0x7b, 0x55, 0xaf, 0xe1, 0x85, 0x36, 0x61, 0x05, 0x8b, 0x16, 0x99, - 0xb9, 0x4e, 0x1c, 0x5c, 0x34, 0x89, 0xcb, 0x7d, 0x6c, 0xd7, 0x1c, 0xec, 0xe2, 0x16, 0xf1, 0x8b, - 0x9e, 0x4f, 0xdb, 0x56, 0x43, 0x0c, 0x82, 0xba, 0x6d, 0x99, 0x35, 0x33, 0x60, 0x9c, 0x3a, 0xd8, - 0xb3, 0x0a, 0x9e, 0x4f, 0x39, 0x45, 0x27, 0x94, 0x79, 0x41, 0x99, 0x17, 0x86, 0xcc, 0x0b, 0x91, - 0x79, 0x36, 0xdf, 0xb2, 0xf8, 0x7a, 0x50, 0x2f, 0x98, 0xd4, 0x29, 0xb6, 0x68, 0x8b, 0x16, 0xa5, - 0x79, 0x3d, 0x68, 0xca, 0x99, 0x9c, 0xc8, 0x91, 0xa2, 0xcd, 0x1e, 0x6d, 0x51, 0xda, 0xb2, 0x49, - 0x11, 0x7b, 0x56, 0x11, 0xbb, 0x2e, 0xe5, 0x98, 0x5b, 0xd4, 0x65, 0xa1, 0xf4, 0x48, 0x28, 0xed, - 0x71, 0x10, 0xc7, 0xe3, 0x9d, 0x50, 0x78, 0x7c, 0x58, 0xc8, 0x2d, 0x87, 0x30, 0x8e, 0x1d, 0x2f, - 0xb2, 0x1e, 0xf4, 0x98, 0x7a, 0xfd, 0xd4, 0x47, 0x07, 0x85, 0x6d, 0x6c, 0x5b, 0x0d, 0xcc, 0x49, - 0x28, 0xd5, 0x87, 0xa4, 0x84, 0x11, 0xb7, 0x3d, 0xc4, 0x30, 0x37, 0xa4, 0x63, 0x91, 0x9b, 0xb5, - 0x01, 0x0d, 0x5d, 0x87, 0x99, 0x15, 0x8b, 0x71, 0x83, 0xfc, 0x2f, 0x20, 0x8c, 0xa3, 0x43, 0x30, - 0x69, 0x3a, 0x35, 0xab, 0xa1, 0x81, 0x39, 0x30, 0x9f, 0x36, 0x12, 0xa6, 0x53, 0x69, 0xe8, 0x6f, - 0x02, 0x38, 0xad, 0x94, 0x98, 0x47, 0x5d, 0x46, 0xd0, 0x2a, 0x4c, 0x47, 0xc1, 0x64, 0x1a, 0x98, - 0x8b, 0xcf, 0x67, 0x16, 0x4e, 0x17, 0x46, 0x0b, 0x7e, 0xe1, 0x6a, 0x38, 0x30, 0x76, 0x28, 0xd0, - 0x2c, 0x4c, 0x9a, 0x34, 0x70, 0xb9, 0x16, 0x9b, 0x03, 0xf3, 0x49, 0x43, 0x4d, 0x04, 0xca, 0x29, - 0xc7, 0xb6, 0x16, 0x57, 0xa8, 0x9c, 0xe8, 0x4b, 0x10, 0x2e, 0x93, 0xe7, 0xae, 0x17, 0x1d, 0x87, - 0x99, 0x88, 0x5b, 0x88, 0x62, 0x52, 0x04, 0x23, 0xa8, 0xd2, 0xd0, 0xdf, 0x00, 0x70, 0x76, 0x99, - 0xf0, 0x8b, 0xc4, 0xb3, 0x69, 0xc7, 0x21, 0xee, 0x78, 0x74, 0xe8, 0x18, 0x4c, 0xda, 0x96, 0x63, - 0x71, 0xb5, 0xd0, 0xa5, 0xa9, 0x47, 0xf7, 0x40, 0xfc, 0xcc, 0xe9, 0xd3, 0x86, 0x42, 0xd1, 0x6f, - 0x60, 0xc2, 0xc3, 0x2d, 0xa2, 0x25, 0xa4, 0x34, 0xf9, 0xe8, 0x1e, 0x00, 0x67, 0x0c, 0x09, 0xe9, - 0x5f, 0x02, 0x78, 0x78, 0x68, 0x21, 0x61, 0x88, 0xab, 0x30, 0xd3, 0xe8, 0xa1, 0x51, 0x90, 0x17, - 0x46, 0x0d, 0x72, 0x1f, 0x61, 0x3f, 0x0d, 0x2a, 0xc1, 0x84, 0x6d, 0xb9, 0x1b, 0xd2, 0x87, 0xcc, - 0x42, 0x7e, 0x54, 0xba, 0x15, 0xcb, 0xdd, 0x60, 0xc6, 0x64, 0x4d, 0xd8, 0xf6, 0xed, 0x56, 0x7c, - 0xd7, 0xdd, 0x4a, 0xf4, 0xef, 0xd6, 0xb3, 0x14, 0xcc, 0xc8, 0xed, 0x0a, 0xdd, 0xfa, 0x1d, 0x9c, - 0xe9, 0xc5, 0x72, 0x9d, 0x32, 0x1e, 0x06, 0x7a, 0x3a, 0x02, 0xff, 0x4e, 0x19, 0x7f, 0x71, 0xc0, - 0xfb, 0x59, 0x5c, 0xec, 0x10, 0xb9, 0x92, 0x3e, 0x96, 0x55, 0xec, 0x0c, 0x7e, 0x8a, 0x77, 0x3c, - 0x15, 0xff, 0x3e, 0xa5, 0x6a, 0xc7, 0x23, 0xe8, 0x1c, 0x9c, 0x0a, 0x3c, 0x91, 0x54, 0x0d, 0x2d, - 0x29, 0x63, 0x92, 0x2d, 0xa8, 0x94, 0x2d, 0x44, 0x29, 0x5b, 0xa8, 0x46, 0x29, 0x6b, 0x44, 0xaa, - 0xe8, 0xb7, 0x50, 0xb0, 0x34, 0x02, 0x93, 0xab, 0xcf, 0x4f, 0x4a, 0xe6, 0x4c, 0x88, 0xc9, 0xaf, - 0x5f, 0x86, 0x71, 0xd3, 0x0b, 0xb4, 0x29, 0xb9, 0x6f, 0x7f, 0x1e, 0x35, 0xd0, 0x57, 0x08, 0xf7, - 0x2d, 0x93, 0x2d, 0x72, 0xee, 0x5b, 0xf5, 0x80, 0x13, 0x43, 0x90, 0xa0, 0xab, 0x70, 0xd2, 0x21, - 0x0e, 0xf5, 0x3b, 0x5a, 0x6a, 0x4c, 0xba, 0x90, 0x07, 0x5d, 0x83, 0xa9, 0x7a, 0x87, 0x13, 0x56, - 0xb3, 0x5c, 0x2d, 0x3d, 0x26, 0xe7, 0x94, 0x64, 0xaa, 0xb8, 0xe8, 0x3a, 0x4c, 0x2b, 0x52, 0x1a, - 0x70, 0x0d, 0x8e, 0xc9, 0xaa, 0xd6, 0xb7, 0x16, 0x70, 0x54, 0x81, 0x53, 0x9c, 0xb8, 0x58, 0x64, - 0x41, 0x46, 0x6e, 0x51, 0x71, 0x54, 0xd2, 0xaa, 0x32, 0x33, 0x22, 0x7b, 0x74, 0x12, 0x1e, 0x60, - 0xb4, 0xc9, 0x6f, 0x62, 0x9f, 0xd4, 0xda, 0xc4, 0x67, 0x16, 0x75, 0xb5, 0x69, 0xb9, 0x77, 0xfb, - 0x23, 0xfc, 0x1f, 0x0a, 0x46, 0x27, 0xe0, 0xfe, 0x3a, 0x66, 0xa4, 0x46, 0x59, 0x4f, 0x73, 0x46, - 0x6a, 0xce, 0x08, 0x78, 0x8d, 0x45, 0x7a, 0xc7, 0x20, 0x6c, 0x9b, 0x5e, 0x50, 0x53, 0x67, 0x7f, - 0x9f, 0x3c, 0xfb, 0x69, 0x81, 0x54, 0x05, 0x20, 0x0e, 0xa1, 0x14, 0xab, 0x24, 0x24, 0x0d, 0x6d, - 0xbf, 0xd4, 0x98, 0x16, 0xe0, 0xc5, 0x10, 0x43, 0x05, 0x78, 0x88, 0x75, 0x18, 0x27, 0x4e, 0x4d, - 0x6d, 0x4f, 0x48, 0x76, 0x60, 0x0e, 0xcc, 0x27, 0x8c, 0x83, 0x4a, 0x74, 0x45, 0x4a, 0x14, 0xe9, - 0x1f, 0xe1, 0xaf, 0x07, 0xf5, 0x71, 0x1b, 0x5b, 0x36, 0xae, 0xdb, 0x44, 0x3b, 0x28, 0x6d, 0x0e, - 0xf7, 0xdb, 0x2c, 0x46, 0x42, 0x74, 0x04, 0xa6, 0x1b, 0x16, 0xdb, 0xa8, 0x31, 0xeb, 0x36, 0xd1, - 0x90, 0xd4, 0x4c, 0x09, 0xe0, 0x9a, 0x75, 0x9b, 0xa0, 0xdf, 0xc3, 0x7d, 0x52, 0xb8, 0xc3, 0x75, - 0x48, 0x6a, 0xcc, 0x08, 0x74, 0x87, 0xe3, 0x06, 0x84, 0x52, 0x2d, 0x60, 0xa2, 0xa4, 0xcd, 0x8e, - 0xb9, 0xcb, 0x72, 0x3d, 0xd7, 0x05, 0x15, 0xba, 0x0c, 0x27, 0xb1, 0x4d, 0x7c, 0xce, 0xb4, 0xc3, - 0x7b, 0xab, 0x75, 0x8b, 0xc2, 0xea, 0x1a, 0xc7, 0xe2, 0x78, 0x2b, 0x06, 0xfd, 0xa3, 0x04, 0x4c, - 0x45, 0xf7, 0xcc, 0xeb, 0x92, 0xf3, 0xba, 0xe4, 0xec, 0xb1, 0xe4, 0xe8, 0x3f, 0x00, 0x38, 0x15, - 0x16, 0x8f, 0x28, 0xaa, 0xe0, 0xd5, 0x46, 0x35, 0xf6, 0x8a, 0xa2, 0xba, 0x02, 0x13, 0x22, 0x85, - 0xb4, 0xf8, 0x98, 0x7c, 0x92, 0x45, 0xbf, 0x0b, 0xe1, 0x4e, 0x36, 0xa1, 0x7d, 0x30, 0xd6, 0x7b, - 0x09, 0xc5, 0xac, 0x06, 0xca, 0xc2, 0x94, 0x4f, 0x18, 0x0d, 0x7c, 0x93, 0x84, 0x09, 0xd2, 0x9b, - 0xa3, 0x12, 0x4c, 0x32, 0x61, 0x24, 0xd3, 0x62, 0x0f, 0x2f, 0x0b, 0x95, 0xb7, 0xca, 0x56, 0x7f, - 0x1c, 0x83, 0x49, 0xf5, 0xe9, 0xcd, 0x18, 0x4c, 0x31, 0xd2, 0x26, 0xbe, 0xc5, 0x3b, 0x6a, 0x05, - 0x4b, 0xdf, 0x80, 0x0f, 0xbf, 0xbf, 0x1f, 0x7f, 0x0c, 0xfc, 0x2f, 0x80, 0xf1, 0x19, 0xf8, 0xb7, - 0xde, 0x3c, 0x9f, 0xc7, 0x36, 0xf6, 0x9d, 0xbc, 0x48, 0x34, 0xf6, 0xd7, 0xf2, 0x95, 0xb2, 0xb1, - 0x5c, 0x5e, 0x2d, 0xfd, 0x53, 0x3f, 0x35, 0x37, 0x2c, 0x5b, 0x5c, 0x29, 0x1b, 0x55, 0x81, 0x53, - 0x8f, 0xb8, 0x26, 0x75, 0x9b, 0x56, 0x6b, 0x40, 0x5e, 0x32, 0x2a, 0xd5, 0x4a, 0x69, 0x71, 0x65, - 0x17, 0xd3, 0xb2, 0x61, 0xac, 0x19, 0xcf, 0x31, 0xbd, 0xb1, 0x68, 0xac, 0x56, 0x56, 0x97, 0x77, - 0xb1, 0x5c, 0x5d, 0xab, 0x56, 0x4a, 0xe5, 0x5d, 0x04, 0x95, 0xd5, 0x4b, 0x6b, 0xbb, 0xc0, 0x17, - 0xcb, 0x4b, 0xd7, 0x97, 0xf5, 0xff, 0x1a, 0x3d, 0xbf, 0x11, 0x82, 0x09, 0x4e, 0x6e, 0xf1, 0x30, - 0xd6, 0x72, 0x8c, 0x2e, 0xc0, 0x69, 0xd1, 0x42, 0xd4, 0x4c, 0x9f, 0xc8, 0x0a, 0x12, 0x7f, 0x61, - 0x05, 0xc9, 0x08, 0xfd, 0x92, 0x52, 0xd7, 0xdf, 0x8b, 0x43, 0xb8, 0xf3, 0x36, 0xfc, 0x25, 0x9d, - 0x6d, 0x11, 0x4d, 0x59, 0x38, 0x55, 0x49, 0x96, 0x63, 0x19, 0x61, 0x51, 0xa6, 0x93, 0x61, 0x84, - 0x45, 0x79, 0x9e, 0x8d, 0x4e, 0xb2, 0xaa, 0xb0, 0x6a, 0x82, 0x7e, 0x05, 0x27, 0xc5, 0x20, 0x60, - 0xda, 0x94, 0x84, 0xc3, 0x99, 0x60, 0x10, 0x57, 0xb9, 0x96, 0x92, 0xd7, 0xba, 0x1c, 0x8b, 0x52, - 0x3d, 0x70, 0x8f, 0xa7, 0xa5, 0x2c, 0xe3, 0xf4, 0xdd, 0xe0, 0xc7, 0xc2, 0x5b, 0x54, 0x29, 0x40, - 0xf5, 0x6a, 0x10, 0x88, 0x14, 0xeb, 0x0e, 0x4c, 0xca, 0x27, 0xb7, 0xa0, 0x67, 0xc4, 0x6e, 0x46, - 0xed, 0x88, 0x18, 0x0b, 0xcc, 0xf3, 0x49, 0x3b, 0x3a, 0x16, 0x62, 0x2c, 0x9d, 0x13, 0x47, 0x25, - 0x1e, 0x3a, 0x27, 0x8e, 0xca, 0x2c, 0x4c, 0x36, 0x2d, 0x9f, 0xf1, 0xd0, 0x63, 0x35, 0x11, 0x9a, - 0x36, 0x66, 0x3c, 0x72, 0x59, 0x8c, 0xf5, 0x4b, 0xf0, 0xc0, 0x70, 0xd0, 0xd0, 0x51, 0x98, 0xee, - 0xf5, 0xaa, 0xf2, 0xf3, 0x09, 0x63, 0x07, 0x10, 0xdc, 0x6d, 0x6c, 0x07, 0xaa, 0x0e, 0x00, 0x43, - 0x4d, 0x16, 0x9e, 0x25, 0x61, 0xba, 0x24, 0x7b, 0xf2, 0xc5, 0xab, 0x15, 0xf4, 0x39, 0x80, 0x09, - 0xd1, 0x35, 0xa2, 0xb3, 0xa3, 0xb7, 0x19, 0xbd, 0x46, 0x34, 0x7b, 0x6e, 0x6f, 0x46, 0xaa, 0xbd, - 0xd0, 0xd7, 0x1f, 0x7c, 0x10, 0x03, 0xdd, 0x8f, 0xb5, 0x62, 0xf3, 0xfc, 0x2d, 0x33, 0x6f, 0xda, - 0x04, 0xfb, 0xa2, 0xe7, 0xcd, 0x07, 0x8c, 0xf8, 0xa7, 0x44, 0x33, 0x9c, 0xb7, 0x68, 0xde, 0x72, - 0x9b, 0x3e, 0x66, 0xdc, 0x0f, 0x4c, 0x1e, 0xf8, 0x24, 0xef, 0x13, 0xdc, 0xd8, 0xfc, 0xf4, 0xeb, - 0x77, 0x62, 0x7f, 0x40, 0x27, 0xc3, 0x3f, 0x0b, 0x3f, 0xfb, 0xe7, 0x81, 0x15, 0xef, 0xc8, 0xfe, - 0xf0, 0x2e, 0xfa, 0x16, 0xc0, 0xf8, 0x32, 0xe1, 0x68, 0xe4, 0x67, 0xca, 0x4e, 0xd3, 0x9a, 0x3d, - 0xbb, 0x27, 0x9b, 0xd0, 0xb5, 0xf6, 0x38, 0xae, 0xfd, 0x05, 0xfd, 0x69, 0x64, 0xd7, 0x8a, 0x77, - 0xfa, 0x5e, 0x42, 0x77, 0xd1, 0xdb, 0x31, 0x38, 0x33, 0xd0, 0xa2, 0xa2, 0xbf, 0xed, 0x61, 0xf9, - 0x3f, 0x69, 0xb1, 0xb3, 0x17, 0x5e, 0xd2, 0x3a, 0x0c, 0xc3, 0x26, 0x18, 0x27, 0x0e, 0x65, 0x54, - 0x7a, 0xc9, 0x38, 0x14, 0xfb, 0xda, 0xe8, 0x6c, 0xe6, 0xfe, 0x3d, 0x10, 0xdf, 0xfc, 0x44, 0x8b, - 0x6f, 0xc5, 0xc0, 0xd2, 0xbb, 0x60, 0xeb, 0x49, 0x6e, 0xe2, 0xe1, 0x93, 0xdc, 0xc4, 0xd3, 0x27, - 0x39, 0xf0, 0xff, 0x6e, 0x0e, 0xbc, 0xdf, 0xcd, 0x81, 0x07, 0xdd, 0x1c, 0xd8, 0xea, 0xe6, 0xc0, - 0x57, 0xdd, 0x1c, 0xf8, 0xae, 0x9b, 0x9b, 0x78, 0xda, 0xcd, 0x81, 0xb7, 0xb6, 0x73, 0x13, 0xf7, - 0xb7, 0x73, 0x60, 0x6b, 0x3b, 0x37, 0xf1, 0x70, 0x3b, 0x37, 0xf1, 0xaf, 0xff, 0xb4, 0xa8, 0xb7, - 0xd1, 0x2a, 0xb4, 0xa9, 0xcd, 0x89, 0xef, 0xe3, 0x42, 0xc0, 0x8a, 0x72, 0xd0, 0xa4, 0xbe, 0x93, - 0x8f, 0xbe, 0x9e, 0x8f, 0xc4, 0x45, 0xaf, 0xde, 0xa2, 0x45, 0x72, 0x8b, 0x87, 0x7f, 0x73, 0x5e, - 0xf0, 0x97, 0xac, 0x3e, 0x29, 0x6f, 0x83, 0xb3, 0x3f, 0x06, 0x00, 0x00, 0xff, 0xff, 0x6e, 0x5a, - 0xa7, 0xdd, 0x56, 0x13, 0x00, 0x00, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcb, 0x8f, 0x13, 0x47, + 0x1a, 0x9f, 0xf2, 0x63, 0xc6, 0x2e, 0xcf, 0xf0, 0x28, 0x86, 0xdd, 0x5e, 0x03, 0x66, 0xb6, 0x57, + 0x8b, 0x06, 0x2d, 0xb6, 0x61, 0x80, 0x7d, 0x69, 0x39, 0xcc, 0x18, 0x33, 0x6b, 0x34, 0xcc, 0xa0, + 0xc6, 0x2c, 0xda, 0x97, 0xac, 0x72, 0xbb, 0xec, 0x69, 0x4d, 0x77, 0x57, 0x6f, 0x57, 0xb5, 0xc1, + 0x20, 0xa4, 0xd5, 0x1c, 0x72, 0xc8, 0x29, 0x51, 0xa4, 0xfc, 0x05, 0x39, 0xe4, 0x4f, 0x88, 0x82, + 0x22, 0x71, 0x0b, 0xa7, 0x68, 0xa4, 0x5c, 0x08, 0x89, 0x42, 0xf0, 0x24, 0x51, 0x72, 0x43, 0x42, + 0xb9, 0x47, 0x55, 0xd5, 0xed, 0xb1, 0x9d, 0x09, 0x78, 0x30, 0xb7, 0x70, 0xab, 0xfa, 0x1e, 0xbf, + 0xae, 0xef, 0x57, 0xf5, 0x7d, 0x55, 0x5f, 0xc3, 0x0b, 0x6d, 0xc2, 0x0a, 0x16, 0x2d, 0x32, 0x73, + 0x9d, 0x38, 0xb8, 0x68, 0x12, 0x97, 0xfb, 0xd8, 0xae, 0x39, 0xd8, 0xc5, 0x2d, 0xe2, 0x17, 0x3d, + 0x9f, 0xb6, 0xad, 0x86, 0x18, 0x04, 0x75, 0xdb, 0x32, 0x6b, 0x66, 0xc0, 0x38, 0x75, 0xb0, 0x67, + 0x15, 0x3c, 0x9f, 0x72, 0x8a, 0x4e, 0x28, 0xf7, 0x82, 0x72, 0x2f, 0x0c, 0xb9, 0x17, 0x22, 0xf7, + 0x6c, 0xbe, 0x65, 0xf1, 0xf5, 0xa0, 0x5e, 0x30, 0xa9, 0x53, 0x6c, 0xd1, 0x16, 0x2d, 0x4a, 0xf7, + 0x7a, 0xd0, 0x94, 0x33, 0x39, 0x91, 0x23, 0x05, 0x9b, 0x3d, 0xda, 0xa2, 0xb4, 0x65, 0x93, 0x22, + 0xf6, 0xac, 0x22, 0x76, 0x5d, 0xca, 0x31, 0xb7, 0xa8, 0xcb, 0x42, 0xed, 0x91, 0x50, 0xdb, 0xc3, + 0x20, 0x8e, 0xc7, 0x3b, 0xa1, 0xf2, 0xf8, 0xb0, 0x92, 0x5b, 0x0e, 0x61, 0x1c, 0x3b, 0x5e, 0xe4, + 0x3d, 0x18, 0x31, 0xf5, 0xfa, 0xa1, 0x8f, 0x0e, 0x2a, 0xdb, 0xd8, 0xb6, 0x1a, 0x98, 0x93, 0x50, + 0xab, 0x0f, 0x69, 0x09, 0x23, 0x6e, 0x7b, 0x08, 0x61, 0x6e, 0xc8, 0xc6, 0x22, 0x37, 0x6b, 0x03, + 0x16, 0xba, 0x0e, 0x33, 0x2b, 0x16, 0xe3, 0x06, 0xf9, 0x5f, 0x40, 0x18, 0x47, 0x87, 0x60, 0xd2, + 0x74, 0x6a, 0x56, 0x43, 0x03, 0x73, 0x60, 0x3e, 0x6d, 0x24, 0x4c, 0xa7, 0xd2, 0xd0, 0xdf, 0x04, + 0x70, 0x5a, 0x19, 0x31, 0x8f, 0xba, 0x8c, 0xa0, 0x55, 0x98, 0x8e, 0xc8, 0x64, 0x1a, 0x98, 0x8b, + 0xcf, 0x67, 0x16, 0x4e, 0x17, 0x46, 0x23, 0xbf, 0x70, 0x35, 0x1c, 0x18, 0x3b, 0x10, 0x68, 0x16, + 0x26, 0x4d, 0x1a, 0xb8, 0x5c, 0x8b, 0xcd, 0x81, 0xf9, 0xa4, 0xa1, 0x26, 0x42, 0xca, 0x29, 0xc7, + 0xb6, 0x16, 0x57, 0x52, 0x39, 0xd1, 0x97, 0x20, 0x5c, 0x26, 0xcf, 0x5d, 0x2f, 0x3a, 0x0e, 0x33, + 0x11, 0xb6, 0x50, 0xc5, 0xa4, 0x0a, 0x46, 0xa2, 0x4a, 0x43, 0x7f, 0x03, 0xc0, 0xd9, 0x65, 0xc2, + 0x2f, 0x12, 0xcf, 0xa6, 0x1d, 0x87, 0xb8, 0xe3, 0xc1, 0xa1, 0x63, 0x30, 0x69, 0x5b, 0x8e, 0xc5, + 0xd5, 0x42, 0x97, 0xa6, 0x1e, 0xdd, 0x03, 0xf1, 0x33, 0xa7, 0x4f, 0x1b, 0x4a, 0x8a, 0x7e, 0x03, + 0x13, 0x1e, 0x6e, 0x11, 0x2d, 0x21, 0xb5, 0xc9, 0x47, 0xf7, 0x00, 0x38, 0x63, 0x48, 0x91, 0xfe, + 0x25, 0x80, 0x87, 0x87, 0x16, 0x12, 0x52, 0x5c, 0x85, 0x99, 0x46, 0x4f, 0x1a, 0x91, 0xbc, 0x30, + 0x2a, 0xc9, 0x7d, 0x80, 0xfd, 0x30, 0xa8, 0x04, 0x13, 0xb6, 0xe5, 0x6e, 0xc8, 0x18, 0x32, 0x0b, + 0xf9, 0x51, 0xe1, 0x56, 0x2c, 0x77, 0x83, 0x19, 0x93, 0x35, 0xe1, 0xdb, 0xb7, 0x5b, 0xf1, 0x5d, + 0x77, 0x2b, 0xd1, 0xbf, 0x5b, 0xcf, 0x52, 0x30, 0x23, 0xb7, 0x2b, 0x0c, 0xeb, 0x77, 0x70, 0xa6, + 0xc7, 0xe5, 0x3a, 0x65, 0x3c, 0x24, 0x7a, 0x3a, 0x12, 0xfe, 0x9d, 0x32, 0xfe, 0x62, 0xc2, 0xfb, + 0x51, 0x5c, 0xec, 0x10, 0xb9, 0x92, 0x3e, 0x94, 0x55, 0xec, 0x0c, 0x7e, 0x8a, 0x77, 0x3c, 0xc5, + 0x7f, 0x9f, 0x51, 0xb5, 0xe3, 0x11, 0x74, 0x0e, 0x4e, 0x05, 0x9e, 0x48, 0xaa, 0x86, 0x96, 0x94, + 0x9c, 0x64, 0x0b, 0x2a, 0x65, 0x0b, 0x51, 0xca, 0x16, 0xaa, 0x51, 0xca, 0x1a, 0x91, 0x29, 0xfa, + 0x2d, 0x14, 0x28, 0x8d, 0xc0, 0xe4, 0xea, 0xf3, 0x93, 0x12, 0x39, 0x13, 0xca, 0xe4, 0xd7, 0x2f, + 0xc3, 0xb8, 0xe9, 0x05, 0xda, 0x94, 0xdc, 0xb7, 0x3f, 0x8f, 0x4a, 0xf4, 0x15, 0xc2, 0x7d, 0xcb, + 0x64, 0x8b, 0x9c, 0xfb, 0x56, 0x3d, 0xe0, 0xc4, 0x10, 0x20, 0xe8, 0x2a, 0x9c, 0x74, 0x88, 0x43, + 0xfd, 0x8e, 0x96, 0x1a, 0x13, 0x2e, 0xc4, 0x41, 0xd7, 0x60, 0xaa, 0xde, 0xe1, 0x84, 0xd5, 0x2c, + 0x57, 0x4b, 0x8f, 0x89, 0x39, 0x25, 0x91, 0x2a, 0x2e, 0xba, 0x0e, 0xd3, 0x0a, 0x94, 0x06, 0x5c, + 0x83, 0x63, 0xa2, 0xaa, 0xf5, 0xad, 0x05, 0x1c, 0x55, 0xe0, 0x14, 0x27, 0x2e, 0x16, 0x59, 0x90, + 0x91, 0x5b, 0x54, 0x1c, 0x15, 0xb4, 0xaa, 0xdc, 0x8c, 0xc8, 0x1f, 0x9d, 0x84, 0x07, 0x18, 0x6d, + 0xf2, 0x9b, 0xd8, 0x27, 0xb5, 0x36, 0xf1, 0x99, 0x45, 0x5d, 0x6d, 0x5a, 0xee, 0xdd, 0xfe, 0x48, + 0xfe, 0x0f, 0x25, 0x46, 0x27, 0xe0, 0xfe, 0x3a, 0x66, 0xa4, 0x46, 0x59, 0xcf, 0x72, 0x46, 0x5a, + 0xce, 0x08, 0xf1, 0x1a, 0x8b, 0xec, 0x8e, 0x41, 0xd8, 0x36, 0xbd, 0xa0, 0xa6, 0xce, 0xfe, 0x3e, + 0x79, 0xf6, 0xd3, 0x42, 0x52, 0x15, 0x02, 0x71, 0x08, 0xa5, 0x5a, 0x25, 0x21, 0x69, 0x68, 0xfb, + 0xa5, 0xc5, 0xb4, 0x10, 0x5e, 0x0c, 0x65, 0xa8, 0x00, 0x0f, 0xb1, 0x0e, 0xe3, 0xc4, 0xa9, 0xa9, + 0xed, 0x09, 0xc1, 0x0e, 0xcc, 0x81, 0xf9, 0x84, 0x71, 0x50, 0xa9, 0xae, 0x48, 0x8d, 0x02, 0xfd, + 0x23, 0xfc, 0xf5, 0xa0, 0x3d, 0x6e, 0x63, 0xcb, 0xc6, 0x75, 0x9b, 0x68, 0x07, 0xa5, 0xcf, 0xe1, + 0x7e, 0x9f, 0xc5, 0x48, 0x89, 0x8e, 0xc0, 0x74, 0xc3, 0x62, 0x1b, 0x35, 0x66, 0xdd, 0x26, 0x1a, + 0x92, 0x96, 0x29, 0x21, 0xb8, 0x66, 0xdd, 0x26, 0xe8, 0xf7, 0x70, 0x9f, 0x54, 0xee, 0x60, 0x1d, + 0x92, 0x16, 0x33, 0x42, 0xba, 0x83, 0x71, 0x03, 0x42, 0x69, 0x16, 0x30, 0x51, 0xd2, 0x66, 0xc7, + 0xdc, 0x65, 0xb9, 0x9e, 0xeb, 0x02, 0x0a, 0x5d, 0x86, 0x93, 0xd8, 0x26, 0x3e, 0x67, 0xda, 0xe1, + 0xbd, 0xd5, 0xba, 0x45, 0xe1, 0x75, 0x8d, 0x63, 0x71, 0xbc, 0x15, 0x82, 0xfe, 0x51, 0x02, 0xa6, + 0xa2, 0x7b, 0xe6, 0x75, 0xc9, 0x79, 0x5d, 0x72, 0xf6, 0x58, 0x72, 0xf4, 0x1f, 0x00, 0x9c, 0x0a, + 0x8b, 0x47, 0xc4, 0x2a, 0x78, 0xb5, 0xac, 0xc6, 0x5e, 0x11, 0xab, 0x2b, 0x30, 0x21, 0x52, 0x48, + 0x8b, 0x8f, 0x89, 0x27, 0x51, 0xf4, 0xbb, 0x10, 0xee, 0x64, 0x13, 0xda, 0x07, 0x63, 0xbd, 0x97, + 0x50, 0xcc, 0x6a, 0xa0, 0x2c, 0x4c, 0xf9, 0x84, 0xd1, 0xc0, 0x37, 0x49, 0x98, 0x20, 0xbd, 0x39, + 0x2a, 0xc1, 0x24, 0x13, 0x4e, 0x32, 0x2d, 0xf6, 0xf0, 0xb2, 0x50, 0x79, 0xab, 0x7c, 0xf5, 0xc7, + 0x31, 0x98, 0x54, 0x9f, 0xde, 0x8c, 0xc1, 0x14, 0x23, 0x6d, 0xe2, 0x5b, 0xbc, 0xa3, 0x56, 0xb0, + 0xf4, 0x0d, 0xf8, 0xf0, 0xfb, 0xfb, 0xf1, 0xc7, 0xc0, 0xff, 0x02, 0x18, 0x9f, 0x81, 0x7f, 0xeb, + 0xcd, 0xf3, 0x79, 0x6c, 0x63, 0xdf, 0xc9, 0x8b, 0x44, 0x63, 0x7f, 0x2d, 0x5f, 0x29, 0x1b, 0xcb, + 0xe5, 0xd5, 0xd2, 0x3f, 0xf5, 0x53, 0x73, 0xc3, 0xba, 0xc5, 0x95, 0xb2, 0x51, 0x15, 0x72, 0xea, + 0x11, 0xd7, 0xa4, 0x6e, 0xd3, 0x6a, 0x0d, 0xe8, 0x4b, 0x46, 0xa5, 0x5a, 0x29, 0x2d, 0xae, 0xec, + 0xe2, 0x5a, 0x36, 0x8c, 0x35, 0xe3, 0x39, 0xae, 0x37, 0x16, 0x8d, 0xd5, 0xca, 0xea, 0xf2, 0x2e, + 0x9e, 0xab, 0x6b, 0xd5, 0x4a, 0xa9, 0xbc, 0x8b, 0xa2, 0xb2, 0x7a, 0x69, 0x6d, 0x17, 0xf1, 0xc5, + 0xf2, 0xd2, 0xf5, 0x65, 0xfd, 0xbf, 0x46, 0x2f, 0x6e, 0x84, 0x60, 0x82, 0x93, 0x5b, 0x3c, 0xe4, + 0x5a, 0x8e, 0xd1, 0x05, 0x38, 0x2d, 0x5a, 0x88, 0x9a, 0xe9, 0x13, 0x59, 0x41, 0xe2, 0x2f, 0xac, + 0x20, 0x19, 0x61, 0x5f, 0x52, 0xe6, 0xfa, 0x7b, 0x71, 0x08, 0x77, 0xde, 0x86, 0xbf, 0xa4, 0xb3, + 0x2d, 0xd8, 0x94, 0x85, 0x53, 0x95, 0x64, 0x39, 0x96, 0x0c, 0x8b, 0x32, 0x9d, 0x0c, 0x19, 0x16, + 0xe5, 0x79, 0x36, 0x3a, 0xc9, 0xaa, 0xc2, 0xaa, 0x09, 0xfa, 0x15, 0x9c, 0x14, 0x83, 0x80, 0x69, + 0x53, 0x52, 0x1c, 0xce, 0x04, 0x82, 0xb8, 0xca, 0xb5, 0x94, 0xbc, 0xd6, 0xe5, 0x58, 0x94, 0xea, + 0x81, 0x7b, 0x3c, 0x2d, 0xef, 0xd1, 0x8c, 0xd3, 0x77, 0x83, 0x1f, 0x0b, 0x6f, 0x51, 0x65, 0x00, + 0xa5, 0x81, 0xbc, 0x0b, 0xa5, 0x5a, 0x77, 0x60, 0x52, 0x3e, 0xb9, 0x05, 0x3c, 0x23, 0x76, 0x33, + 0x6a, 0x47, 0xc4, 0x58, 0xc8, 0x3c, 0x9f, 0xb4, 0xa3, 0x63, 0x21, 0xc6, 0x32, 0x38, 0x71, 0x54, + 0xe2, 0x61, 0x70, 0xe2, 0xa8, 0xcc, 0xc2, 0x64, 0xd3, 0xf2, 0x19, 0x0f, 0x23, 0x56, 0x13, 0x61, + 0x69, 0x63, 0xc6, 0xa3, 0x90, 0xc5, 0x58, 0xbf, 0x04, 0x0f, 0x0c, 0x93, 0x86, 0x8e, 0xc2, 0x74, + 0xaf, 0x57, 0x95, 0x9f, 0x4f, 0x18, 0x3b, 0x02, 0x81, 0xdd, 0xc6, 0x76, 0xa0, 0xea, 0x00, 0x30, + 0xd4, 0x64, 0xe1, 0x59, 0x12, 0xa6, 0x4b, 0xb2, 0x27, 0x5f, 0xbc, 0x5a, 0x41, 0x9f, 0x03, 0x98, + 0x10, 0x5d, 0x23, 0x3a, 0x3b, 0x7a, 0x9b, 0xd1, 0x6b, 0x44, 0xb3, 0xe7, 0xf6, 0xe6, 0xa4, 0xda, + 0x0b, 0x7d, 0xfd, 0xc1, 0x07, 0x31, 0xd0, 0xfd, 0x58, 0x2b, 0x36, 0xcf, 0xdf, 0x32, 0xf3, 0xa6, + 0x4d, 0xb0, 0x2f, 0x7a, 0xde, 0x7c, 0xc0, 0x88, 0x7f, 0x4a, 0x34, 0xc3, 0x79, 0x8b, 0xe6, 0x2d, + 0xb7, 0xe9, 0x63, 0xc6, 0xfd, 0xc0, 0xe4, 0x81, 0x4f, 0xf2, 0x3e, 0xc1, 0x8d, 0xcd, 0x4f, 0xbf, + 0x7e, 0x27, 0xf6, 0x07, 0x74, 0x32, 0xfc, 0xb3, 0xf0, 0xb3, 0x7f, 0x1e, 0x58, 0xf1, 0x8e, 0xec, + 0x0f, 0xef, 0xa2, 0x6f, 0x01, 0x8c, 0x2f, 0x13, 0x8e, 0x46, 0x7e, 0xa6, 0xec, 0x34, 0xad, 0xd9, + 0xb3, 0x7b, 0xf2, 0x09, 0x43, 0x6b, 0x8f, 0x13, 0xda, 0x5f, 0xd0, 0x9f, 0x46, 0x0e, 0xad, 0x78, + 0xa7, 0xef, 0x25, 0x74, 0x17, 0xbd, 0x1d, 0x83, 0x33, 0x03, 0x2d, 0x2a, 0xfa, 0xdb, 0x1e, 0x96, + 0xff, 0x93, 0x16, 0x3b, 0x7b, 0xe1, 0x25, 0xbd, 0x43, 0x1a, 0x36, 0xc1, 0x38, 0x3c, 0x94, 0x51, + 0xe9, 0x25, 0x79, 0x28, 0xf6, 0xb5, 0xd1, 0xd9, 0xcc, 0xfd, 0x7b, 0x20, 0xbe, 0xf9, 0x89, 0x16, + 0xdf, 0x8a, 0x81, 0xa5, 0x77, 0xc1, 0xd6, 0x93, 0xdc, 0xc4, 0xc3, 0x27, 0xb9, 0x89, 0xa7, 0x4f, + 0x72, 0xe0, 0xff, 0xdd, 0x1c, 0x78, 0xbf, 0x9b, 0x03, 0x0f, 0xba, 0x39, 0xb0, 0xd5, 0xcd, 0x81, + 0xaf, 0xba, 0x39, 0xf0, 0x5d, 0x37, 0x37, 0xf1, 0xb4, 0x9b, 0x03, 0x6f, 0x6d, 0xe7, 0x26, 0xee, + 0x6f, 0xe7, 0xc0, 0xd6, 0x76, 0x6e, 0xe2, 0xe1, 0x76, 0x6e, 0xe2, 0x5f, 0xff, 0x69, 0x51, 0x6f, + 0xa3, 0x55, 0x68, 0x53, 0x9b, 0x13, 0xdf, 0xc7, 0x85, 0x80, 0x15, 0xe5, 0xa0, 0x49, 0x7d, 0x27, + 0x1f, 0x7d, 0x3d, 0x1f, 0xa9, 0x8b, 0x5e, 0xbd, 0x45, 0x8b, 0xe4, 0x16, 0x0f, 0xff, 0xe6, 0xbc, + 0xe0, 0x2f, 0x59, 0x7d, 0x52, 0xde, 0x06, 0x67, 0x7f, 0x0c, 0x00, 0x00, 0xff, 0xff, 0x3a, 0x0a, + 0xc0, 0xc3, 0x56, 0x13, 0x00, 0x00, } func (this *ListRequest) Equal(that interface{}) bool { @@ -6683,7 +6683,7 @@ func (m *Deployment) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.MemoryTotal |= int32(b&0x7F) << shift + m.MemoryTotal |= uint64(b&0x7F) << shift if b < 0x80 { break } @@ -6702,7 +6702,7 @@ func (m *Deployment) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.DiskTotal |= int32(b&0x7F) << shift + m.DiskTotal |= uint64(b&0x7F) << shift if b < 0x80 { break } diff --git a/pbgo/extschema/schema/central_manager/provider/public_customapi.vesapi.go b/pbgo/extschema/schema/central_manager/provider/public_customapi.vesapi.go index 2c21ed227..8a7a1509e 100644 --- a/pbgo/extschema/schema/central_manager/provider/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/central_manager/provider/public_customapi.vesapi.go @@ -953,10 +953,10 @@ var CustomAPISwaggerJSON string = `{ "x-displayname": "Disk Metrics" }, "disk_total": { - "type": "integer", + "type": "string", "description": " Total disk\n\nExample: - 48000000-", "title": "disk_total", - "format": "int32", + "format": "uint64", "x-displayname": "Disk total" }, "memory": { @@ -969,10 +969,10 @@ var CustomAPISwaggerJSON string = `{ "x-displayname": "Memory Metrics" }, "memory_total": { - "type": "integer", + "type": "string", "description": " Total memory\n\nExample: - 12888-", "title": "memory_total", - "format": "int32", + "format": "uint64", "x-displayname": "Memory total" }, "name": { diff --git a/pbgo/extschema/schema/certificate/crudapi/api.vesapi.go b/pbgo/extschema/schema/certificate/crudapi/api.vesapi.go index b37e2694e..34b5f7083 100644 --- a/pbgo/extschema/schema/certificate/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/certificate/crudapi/api.vesapi.go @@ -3351,10 +3351,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/certificate/object.pb.go b/pbgo/extschema/schema/certificate/object.pb.go index 2accc0a08..a17628190 100644 --- a/pbgo/extschema/schema/certificate/object.pb.go +++ b/pbgo/extschema/schema/certificate/object.pb.go @@ -234,46 +234,48 @@ func init() { } var fileDescriptor_c6c3e8f6af7e46fa = []byte{ - // 622 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x6b, 0x13, 0x41, - 0x18, 0x86, 0x33, 0x49, 0x49, 0xcb, 0xa4, 0xd4, 0xb2, 0x5e, 0xb6, 0x55, 0x87, 0x12, 0x51, 0x2a, - 0xb8, 0xbb, 0x52, 0x91, 0xda, 0x22, 0x1e, 0x5a, 0xa1, 0x97, 0xd6, 0x42, 0xa2, 0x17, 0x2f, 0x61, - 0x76, 0xf2, 0x65, 0x3b, 0x36, 0x9b, 0x59, 0x66, 0x66, 0xd7, 0xe6, 0x20, 0x78, 0xf2, 0x26, 0xf8, - 0x1b, 0x3c, 0x89, 0xbf, 0xc2, 0x7a, 0xf2, 0x58, 0xea, 0xa5, 0x78, 0xb2, 0x9b, 0x8b, 0xe0, 0xa5, - 0x3f, 0x41, 0x32, 0x9b, 0x2d, 0x9b, 0x1a, 0x45, 0x7a, 0xda, 0x19, 0xde, 0xf7, 0x79, 0x77, 0x66, - 0xbe, 0x6f, 0x06, 0xdf, 0x4e, 0x40, 0xb9, 0x5c, 0x78, 0x8a, 0xed, 0x41, 0x48, 0x3d, 0x06, 0x52, - 0xf3, 0x0e, 0x67, 0x54, 0x83, 0x27, 0xfc, 0x97, 0xc0, 0xb4, 0x1b, 0x49, 0xa1, 0x85, 0xb5, 0x90, - 0xf9, 0xdc, 0xcc, 0xe7, 0x16, 0x7c, 0x8b, 0x4e, 0xc0, 0xf5, 0x5e, 0xec, 0xbb, 0x4c, 0x84, 0x5e, - 0x20, 0x02, 0xe1, 0x19, 0xc2, 0x8f, 0x3b, 0x66, 0x66, 0x26, 0x66, 0x94, 0x25, 0x2d, 0xde, 0xfa, - 0xfb, 0x1f, 0x75, 0x3f, 0x02, 0x35, 0xb2, 0x5d, 0x1b, 0xb7, 0x89, 0x48, 0x73, 0xd1, 0xcb, 0xc5, - 0x85, 0x71, 0xb1, 0xc8, 0xd5, 0xc7, 0xa5, 0x04, 0x14, 0xf4, 0x92, 0x71, 0xbc, 0xfe, 0x6d, 0x0a, - 0x57, 0x77, 0xcd, 0xee, 0xac, 0x35, 0x3c, 0x13, 0x82, 0xa6, 0x6d, 0xaa, 0xa9, 0x8d, 0x96, 0xd0, - 0x72, 0x6d, 0xe5, 0x86, 0x3b, 0xbe, 0xd5, 0xcc, 0xb8, 0x03, 0x9a, 0x3e, 0xeb, 0x47, 0xd0, 0x38, - 0xb7, 0x5b, 0xdb, 0xf8, 0x8a, 0xea, 0x2b, 0x0d, 0x61, 0xeb, 0x3c, 0xa1, 0x6c, 0x12, 0x6e, 0x5e, - 0x48, 0x68, 0x1a, 0xd7, 0x85, 0x9c, 0xb9, 0x8c, 0xdd, 0xc9, 0xd3, 0x56, 0xf1, 0x94, 0x8a, 0x80, - 0xd9, 0x95, 0x89, 0x11, 0x85, 0x53, 0x72, 0x9b, 0x11, 0x30, 0x13, 0x61, 0x80, 0xf5, 0xb7, 0x95, - 0x2f, 0x87, 0x76, 0x79, 0x1e, 0x1d, 0x1f, 0xda, 0x1f, 0xca, 0x78, 0x15, 0x57, 0xb6, 0x40, 0x5b, - 0xf7, 0x3a, 0x0f, 0x0e, 0x98, 0xa3, 0x80, 0xc5, 0x12, 0x42, 0x50, 0x7b, 0x8e, 0x4f, 0x15, 0x67, - 0x4e, 0x28, 0x7a, 0x5c, 0x0b, 0x79, 0x77, 0x29, 0x01, 0xe5, 0x70, 0xe1, 0x44, 0x52, 0x1c, 0xf4, - 0x1d, 0x09, 0xb4, 0x8d, 0xd7, 0xf0, 0x74, 0x03, 0xa2, 0x2e, 0x65, 0x60, 0xb9, 0x93, 0xe1, 0x58, - 0xc1, 0x45, 0xf2, 0x95, 0xe4, 0x1a, 0xf0, 0x43, 0x5c, 0xdd, 0x94, 0x40, 0xf5, 0xa5, 0xc8, 0x27, - 0xd0, 0x85, 0x4b, 0x91, 0x53, 0xdb, 0x5c, 0x5d, 0x62, 0xa3, 0xdf, 0x0f, 0xed, 0xe7, 0xb8, 0x89, - 0xed, 0xe1, 0xd9, 0xb9, 0x01, 0x6b, 0x99, 0x6f, 0x24, 0x79, 0x42, 0x35, 0xb4, 0xf6, 0xa1, 0x6f, - 0xad, 0x8e, 0x90, 0xc2, 0x91, 0x3b, 0x43, 0x93, 0x13, 0xb0, 0xec, 0x5b, 0x14, 0x46, 0xa0, 0xb3, - 0x0f, 0xfd, 0xfa, 0x53, 0x3c, 0x93, 0x97, 0xc6, 0xda, 0xc0, 0xd3, 0xa3, 0xec, 0x51, 0x57, 0xdd, - 0xf9, 0x47, 0x41, 0xb7, 0xba, 0xc2, 0xa7, 0xdd, 0xf3, 0xb2, 0x56, 0x03, 0x36, 0x1c, 0xd7, 0x7f, - 0x21, 0x3c, 0xdb, 0xd4, 0x54, 0xc7, 0xea, 0xbf, 0x7b, 0x35, 0xb3, 0x4f, 0xe8, 0xd5, 0x1d, 0x5c, - 0xcb, 0xae, 0x73, 0x4b, 0x42, 0x47, 0xd9, 0xe5, 0xa5, 0xca, 0x72, 0x6d, 0xe5, 0xfa, 0xc4, 0x4e, - 0x6f, 0x40, 0x67, 0x08, 0x6f, 0xcc, 0x7d, 0x7a, 0x5d, 0x2b, 0xac, 0xb2, 0x81, 0x45, 0x2e, 0x2b, - 0xeb, 0x11, 0xc6, 0x4c, 0xf4, 0xda, 0xdc, 0x5c, 0x2a, 0xbb, 0x32, 0x31, 0x6d, 0x33, 0x37, 0x98, - 0xa5, 0x14, 0xfc, 0xeb, 0x57, 0x8f, 0x1f, 0xcf, 0xe3, 0x39, 0x3c, 0x9b, 0xaf, 0xce, 0x8d, 0x79, - 0x7b, 0xe3, 0x1d, 0x3a, 0x3a, 0x25, 0xa5, 0x93, 0x53, 0x52, 0x3a, 0x3b, 0x25, 0xe8, 0x4d, 0x4a, - 0xd0, 0xc7, 0x94, 0xa0, 0xaf, 0x29, 0x41, 0x47, 0x29, 0x41, 0x27, 0x29, 0x41, 0x3f, 0x52, 0x82, - 0x7e, 0xa6, 0xa4, 0x74, 0x96, 0x12, 0xf4, 0x7e, 0x40, 0x4a, 0x9f, 0x07, 0x04, 0x1d, 0x0d, 0x48, - 0xe9, 0x64, 0x40, 0x4a, 0x2f, 0x76, 0x03, 0x11, 0xed, 0x07, 0x6e, 0x22, 0xba, 0x1a, 0xa4, 0xa4, - 0x6e, 0xac, 0x3c, 0x33, 0xe8, 0x08, 0x19, 0x0e, 0xab, 0x9f, 0xf0, 0x36, 0x48, 0x27, 0x97, 0xbd, - 0xc8, 0x0f, 0x84, 0x07, 0x07, 0x7a, 0xf4, 0x4a, 0xfc, 0xf9, 0x16, 0xf9, 0x55, 0xf3, 0x54, 0xdc, - 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x86, 0x63, 0x54, 0xbd, 0x21, 0x05, 0x00, 0x00, + // 642 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x6b, 0x13, 0x4f, + 0x18, 0xc6, 0x33, 0x4d, 0xff, 0x69, 0x99, 0x94, 0xfe, 0xcb, 0x7a, 0xd9, 0x56, 0x1d, 0x4a, 0x44, + 0xa9, 0xe0, 0xee, 0x42, 0x45, 0x8a, 0x45, 0x3c, 0xb4, 0x42, 0x2f, 0x8d, 0x85, 0x44, 0x51, 0x7b, + 0x09, 0x93, 0xc9, 0x9b, 0xed, 0xd8, 0x6c, 0x66, 0x99, 0x99, 0x5d, 0x9b, 0x83, 0xe0, 0x17, 0x10, + 0xfc, 0x16, 0x8a, 0x9f, 0xc2, 0xea, 0xc5, 0x63, 0xe9, 0xa9, 0x78, 0xb2, 0x9b, 0x8b, 0xe0, 0xa5, + 0x07, 0x3f, 0x80, 0x64, 0x36, 0x5b, 0x37, 0x35, 0x16, 0x0f, 0xf6, 0xb4, 0xb3, 0x3c, 0xcf, 0xf3, + 0xdb, 0xd9, 0x99, 0xf7, 0x7d, 0xf1, 0x8d, 0x18, 0x94, 0xcb, 0x85, 0xa7, 0xd8, 0x0e, 0x04, 0xd4, + 0x63, 0x20, 0x35, 0x6f, 0x73, 0x46, 0x35, 0x78, 0xa2, 0xf9, 0x1c, 0x98, 0x76, 0x43, 0x29, 0xb4, + 0xb0, 0xe6, 0x53, 0x9f, 0x9b, 0xfa, 0xdc, 0x9c, 0x6f, 0xc1, 0xf1, 0xb9, 0xde, 0x89, 0x9a, 0x2e, + 0x13, 0x81, 0xe7, 0x0b, 0x5f, 0x78, 0x26, 0xd1, 0x8c, 0xda, 0xe6, 0xcd, 0xbc, 0x98, 0x55, 0x4a, + 0x5a, 0xb8, 0xfe, 0xe7, 0x2f, 0xea, 0x5e, 0x08, 0x6a, 0x68, 0xbb, 0x3c, 0x6a, 0x13, 0xa1, 0xe6, + 0xa2, 0x9b, 0x89, 0xf3, 0xa3, 0x62, 0x3e, 0x57, 0x19, 0x95, 0x62, 0x50, 0xd0, 0x8d, 0x47, 0xe3, + 0x95, 0x1f, 0xff, 0xe1, 0xd2, 0x96, 0xf9, 0x3b, 0xeb, 0x2e, 0x9e, 0x0e, 0x40, 0xd3, 0x16, 0xd5, + 0xd4, 0x46, 0x8b, 0x68, 0xa9, 0xbc, 0x7c, 0xd5, 0x1d, 0xfd, 0xd5, 0xd4, 0x58, 0x05, 0x4d, 0x1f, + 0xf5, 0x42, 0xa8, 0x9d, 0xda, 0xad, 0x4d, 0xfc, 0xbf, 0xea, 0x29, 0x0d, 0x41, 0xe3, 0x94, 0x30, + 0x61, 0x08, 0xd7, 0xce, 0x10, 0xea, 0xc6, 0x75, 0x86, 0x33, 0x9b, 0x66, 0xab, 0x19, 0x6d, 0x05, + 0x4f, 0xaa, 0x10, 0x98, 0x5d, 0x1c, 0x8b, 0xc8, 0x9d, 0x92, 0x5b, 0x0f, 0x81, 0x19, 0x84, 0x09, + 0xac, 0xbe, 0x9d, 0xfc, 0xb8, 0x6f, 0x4f, 0xcc, 0xa1, 0xc3, 0x7d, 0xfb, 0x53, 0x11, 0x3f, 0xc3, + 0xc5, 0x0d, 0xd0, 0x56, 0xad, 0x7d, 0x67, 0x8f, 0x39, 0x0a, 0x58, 0x24, 0x21, 0x00, 0xb5, 0xe3, + 0x34, 0xa9, 0xe2, 0xcc, 0x09, 0x44, 0x97, 0x6b, 0x21, 0x6f, 0x2d, 0x9e, 0x95, 0x95, 0xa6, 0xdd, + 0x16, 0x95, 0xad, 0x5f, 0x8e, 0x18, 0x94, 0xc3, 0x85, 0x13, 0x4a, 0xb1, 0xd7, 0x73, 0x24, 0xd0, + 0x16, 0x7e, 0x8a, 0xa7, 0x6a, 0x10, 0x76, 0x28, 0x03, 0xab, 0x3a, 0x1e, 0x1f, 0x29, 0x38, 0x8f, + 0x9d, 0xca, 0x23, 0xe0, 0x17, 0x92, 0x6b, 0xc0, 0x4f, 0x70, 0x69, 0x5d, 0x02, 0xd5, 0x17, 0x01, + 0x7e, 0x00, 0x1d, 0xf8, 0xf7, 0xe0, 0x6d, 0x3c, 0xb9, 0xc9, 0xd5, 0x85, 0x9c, 0xf3, 0x97, 0x7d, + 0xfb, 0x31, 0xae, 0x63, 0x7b, 0x70, 0xb9, 0xae, 0xcf, 0x1a, 0xe6, 0x19, 0x4a, 0x1e, 0x53, 0x0d, + 0x8d, 0x5d, 0xe8, 0x59, 0x2b, 0xc3, 0x48, 0xae, 0x26, 0x9c, 0x81, 0xc9, 0xf1, 0x59, 0xfa, 0xcc, + 0x0b, 0xc3, 0xa0, 0xb3, 0x0b, 0xbd, 0xca, 0x43, 0x3c, 0x9d, 0xd5, 0x8e, 0xb5, 0x86, 0xa7, 0x86, + 0xec, 0x61, 0xd9, 0xdf, 0x3c, 0xa7, 0xe2, 0x36, 0x3a, 0xa2, 0x49, 0x3b, 0xa7, 0x75, 0x57, 0xf2, + 0xd9, 0x60, 0x5d, 0xf9, 0x8e, 0xf0, 0x4c, 0x5d, 0x53, 0x1d, 0xa9, 0xbf, 0x6e, 0xa6, 0xd4, 0x3e, + 0xa6, 0x99, 0xaa, 0xb8, 0x9c, 0xce, 0x9b, 0x86, 0x84, 0xb6, 0xb2, 0x27, 0x16, 0x8b, 0x4b, 0xe5, + 0xe5, 0x2b, 0x63, 0x5b, 0xb1, 0x06, 0xed, 0x41, 0x78, 0x6d, 0xf6, 0xfd, 0xcb, 0x72, 0x6e, 0x97, + 0x35, 0x2c, 0x32, 0x59, 0x59, 0xf7, 0x30, 0x66, 0xa2, 0xdb, 0xe2, 0xa6, 0xeb, 0xed, 0xe2, 0x58, + 0xda, 0x7a, 0x66, 0x30, 0x5b, 0xc9, 0xf9, 0x57, 0x2f, 0x1d, 0xde, 0x9f, 0xc3, 0xb3, 0x78, 0x26, + 0xdb, 0x9d, 0x1b, 0xf1, 0xd6, 0xda, 0x6b, 0x74, 0x70, 0x4c, 0x0a, 0x47, 0xc7, 0xa4, 0x70, 0x72, + 0x4c, 0xd0, 0xab, 0x84, 0xa0, 0x77, 0x09, 0x41, 0x9f, 0x13, 0x82, 0x0e, 0x12, 0x82, 0x8e, 0x12, + 0x82, 0xbe, 0x26, 0x04, 0x7d, 0x4b, 0x48, 0xe1, 0x24, 0x21, 0xe8, 0x4d, 0x9f, 0x14, 0x3e, 0xf4, + 0x09, 0x3a, 0xe8, 0x93, 0xc2, 0x51, 0x9f, 0x14, 0xb6, 0xb7, 0x7c, 0x11, 0xee, 0xfa, 0x6e, 0x2c, + 0x3a, 0x1a, 0xa4, 0xa4, 0x6e, 0xa4, 0x3c, 0xb3, 0x68, 0x0b, 0x19, 0x0c, 0x6e, 0x3f, 0xe6, 0x2d, + 0x90, 0x4e, 0x26, 0x7b, 0x61, 0xd3, 0x17, 0x1e, 0xec, 0xe9, 0xe1, 0x18, 0xfb, 0x7d, 0x58, 0x36, + 0x4b, 0x66, 0x96, 0xdd, 0xfe, 0x19, 0x00, 0x00, 0xff, 0xff, 0x9b, 0xaa, 0x52, 0x29, 0xc2, 0x05, + 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/certificate/public_crudapi.pb.go b/pbgo/extschema/schema/certificate/public_crudapi.pb.go index b01d6f960..23dded873 100644 --- a/pbgo/extschema/schema/certificate/public_crudapi.pb.go +++ b/pbgo/extschema/schema/certificate/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_bba407c5bbcca968 = []byte{ - // 1607 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x13, 0xd7, - 0x16, 0xcf, 0xb5, 0x1d, 0x63, 0x5f, 0xe7, 0x63, 0xb8, 0x0f, 0x82, 0xe3, 0xc7, 0xb3, 0xfc, 0x0c, - 0x84, 0x10, 0x9e, 0xc7, 0x28, 0x8f, 0x27, 0x1e, 0x11, 0xe2, 0x3d, 0x27, 0xb1, 0xa3, 0x40, 0x88, - 0xd1, 0xd8, 0xa0, 0xf7, 0xaa, 0xaa, 0xa3, 0xf1, 0xf8, 0xd8, 0x0c, 0xd8, 0x9e, 0x61, 0xe6, 0xda, - 0xc1, 0xaa, 0x22, 0x21, 0xba, 0xea, 0xae, 0x55, 0x57, 0xad, 0xba, 0xe8, 0xa6, 0x52, 0xa5, 0xfe, - 0x03, 0xa8, 0xd9, 0x20, 0x75, 0x01, 0x62, 0xd1, 0xa2, 0x76, 0xc3, 0xae, 0xc5, 0xe9, 0x82, 0x25, - 0xea, 0xa6, 0xdb, 0x6a, 0xee, 0x9d, 0x31, 0xb6, 0x63, 0x27, 0x4e, 0xc8, 0xca, 0xf7, 0xde, 0x73, - 0xce, 0x6f, 0xce, 0xef, 0x9e, 0x8f, 0x39, 0x1e, 0x2c, 0x36, 0xc0, 0x12, 0x35, 0x3d, 0x69, 0xa9, - 0x77, 0xa0, 0xaa, 0x24, 0x55, 0x30, 0xa9, 0x56, 0xd2, 0x54, 0x85, 0x42, 0xd2, 0xa8, 0x17, 0x2a, - 0x9a, 0x2a, 0xab, 0x66, 0xbd, 0xa8, 0x18, 0x9a, 0x68, 0x98, 0x3a, 0xd5, 0xc9, 0x34, 0xd7, 0x17, - 0xb9, 0xbe, 0xd8, 0xa1, 0x1f, 0x49, 0x94, 0x35, 0x7a, 0xa7, 0x5e, 0x10, 0x55, 0xbd, 0x9a, 0x2c, - 0xeb, 0x65, 0x3d, 0xc9, 0x2c, 0x0a, 0xf5, 0x12, 0xdb, 0xb1, 0x0d, 0x5b, 0x71, 0xa4, 0xc8, 0xc9, - 0xb2, 0xae, 0x97, 0x2b, 0x90, 0x54, 0x0c, 0x2d, 0xa9, 0xd4, 0x6a, 0x3a, 0x55, 0xa8, 0xa6, 0xd7, - 0x2c, 0x47, 0xfa, 0x57, 0x47, 0xda, 0xc6, 0x80, 0xaa, 0x41, 0x9b, 0x8e, 0x70, 0x66, 0xb0, 0xd3, - 0x7a, 0xe1, 0x2e, 0xa8, 0xd4, 0xd1, 0x3b, 0x33, 0x58, 0x8f, 0x36, 0x0d, 0x70, 0x9f, 0x15, 0xe9, - 0x56, 0x03, 0xd3, 0xd4, 0xcd, 0xb6, 0x1f, 0xdd, 0x32, 0xdd, 0xe8, 0x74, 0x72, 0xba, 0x5b, 0xd8, - 0x89, 0x19, 0xef, 0x16, 0x35, 0xc0, 0x82, 0x5a, 0xa3, 0xc7, 0x3c, 0xd6, 0xa3, 0xa3, 0xc1, 0x86, - 0xdc, 0xa5, 0x11, 0xff, 0x16, 0xe1, 0xf1, 0x25, 0x13, 0x14, 0x0a, 0x12, 0xdc, 0xaf, 0x83, 0x45, - 0xc9, 0x7f, 0x70, 0xa0, 0x0a, 0x54, 0x29, 0x2a, 0x54, 0x09, 0xa3, 0x18, 0x9a, 0x0d, 0xcd, 0x9f, - 0x12, 0xbb, 0x43, 0x92, 0x65, 0x37, 0xc0, 0xad, 0x6e, 0x00, 0x55, 0xf2, 0x4d, 0x03, 0xa4, 0xb6, - 0x11, 0x59, 0xc7, 0x3e, 0xcb, 0x00, 0x35, 0xec, 0x61, 0xc6, 0xe7, 0xc4, 0x81, 0xf1, 0x14, 0x39, - 0x44, 0xce, 0x00, 0xd5, 0x86, 0x58, 0x9c, 0xfc, 0x62, 0x73, 0xcc, 0xb6, 0x14, 0xcb, 0xaa, 0x6c, - 0xff, 0x4a, 0x0c, 0x67, 0x21, 0xf8, 0xfc, 0xaa, 0x9f, 0x3f, 0x32, 0xfe, 0x07, 0xc2, 0x13, 0xae, - 0xb7, 0x96, 0xa1, 0xd7, 0x2c, 0x20, 0x57, 0x76, 0xb8, 0x1b, 0xeb, 0xeb, 0xee, 0x0a, 0xd0, 0x3e, - 0xbe, 0x66, 0xf1, 0xa4, 0xd5, 0xb4, 0x28, 0x54, 0xe5, 0x36, 0x88, 0x97, 0x81, 0xcc, 0xf4, 0x80, - 0xe4, 0x98, 0xd6, 0x4e, 0xa8, 0x09, 0x6e, 0x7e, 0xc3, 0x05, 0xbc, 0xde, 0x45, 0x7e, 0x66, 0x17, - 0xf2, 0x2b, 0x40, 0xf7, 0xc1, 0xfc, 0x17, 0x84, 0x27, 0x24, 0x30, 0x2a, 0x8a, 0xda, 0x0e, 0xd4, - 0x7f, 0x77, 0x30, 0x3f, 0xdd, 0x97, 0xb9, 0x63, 0xd6, 0x97, 0x7d, 0xa7, 0xb3, 0x73, 0xbb, 0x38, - 0xeb, 0x60, 0xec, 0xe1, 0x30, 0x49, 0x62, 0xc1, 0x04, 0x4b, 0xaf, 0x9b, 0x2a, 0xc8, 0x0d, 0x30, - 0x2d, 0x4d, 0xaf, 0xb1, 0xfb, 0x0c, 0x2e, 0xfa, 0x5e, 0x6f, 0x21, 0x24, 0x4d, 0xba, 0xd2, 0xdb, - 0x5c, 0xd8, 0xc9, 0xf0, 0x28, 0x9e, 0x6c, 0x13, 0xe4, 0xb1, 0x8d, 0x7f, 0x8e, 0x30, 0x5e, 0x01, - 0xea, 0x12, 0x3e, 0x89, 0x83, 0x35, 0xa5, 0x0a, 0x96, 0xa1, 0xa8, 0xc0, 0x18, 0x07, 0xa5, 0xb7, - 0x07, 0x84, 0x60, 0x9f, 0xbd, 0x61, 0x64, 0x82, 0x12, 0x5b, 0x93, 0xff, 0x63, 0xfb, 0x89, 0x0c, - 0x4c, 0x2e, 0xe9, 0x66, 0x55, 0xa1, 0xcc, 0x9d, 0x89, 0xf9, 0x0b, 0xbb, 0x07, 0xc6, 0xf5, 0x20, - 0xc3, 0x6c, 0x96, 0xf4, 0x22, 0x48, 0x13, 0x66, 0xd7, 0x59, 0xfc, 0x63, 0x3f, 0x0e, 0x75, 0x68, - 0x92, 0x55, 0x1c, 0x52, 0x59, 0x66, 0xb2, 0x07, 0x39, 0x57, 0x3a, 0xbb, 0x67, 0xf2, 0x3b, 0xdc, - 0x24, 0xcc, 0x8d, 0x6d, 0x70, 0xb2, 0x86, 0xc7, 0x4c, 0x7e, 0x13, 0x1c, 0xcb, 0xbb, 0x67, 0x21, - 0x75, 0x67, 0x86, 0x14, 0x72, 0xcc, 0x19, 0x5a, 0xbf, 0x98, 0xf8, 0x76, 0x89, 0x49, 0x57, 0x45, - 0x8d, 0x1e, 0x46, 0x45, 0x1d, 0x39, 0x94, 0x8a, 0xf2, 0x1f, 0x42, 0x45, 0x91, 0x0c, 0xf6, 0x5b, - 0x54, 0xa1, 0x75, 0x2b, 0xfc, 0xd5, 0x97, 0x28, 0xe6, 0x9d, 0x0d, 0xcd, 0x9f, 0xdd, 0x05, 0x30, - 0xc7, 0x54, 0xb9, 0x8b, 0x8b, 0xde, 0x27, 0x9b, 0x48, 0x72, 0xac, 0xc9, 0x2a, 0x3e, 0x6a, 0x42, - 0x09, 0x4c, 0x53, 0xab, 0x95, 0x65, 0xfe, 0x46, 0xb0, 0xc2, 0x01, 0x06, 0x78, 0x72, 0x40, 0x11, - 0x96, 0x18, 0x3b, 0xa1, 0x6d, 0xc6, 0xcf, 0x2d, 0x72, 0x1b, 0x87, 0x8b, 0x50, 0x01, 0x0a, 0x45, - 0x99, 0xcb, 0xa0, 0xd8, 0x46, 0x0c, 0x0e, 0x81, 0x38, 0xe5, 0x58, 0x4b, 0x8e, 0xb1, 0x8b, 0xfb, - 0x3f, 0x3c, 0x5d, 0xd4, 0x2c, 0xa5, 0x50, 0xe9, 0x07, 0x8c, 0x87, 0x00, 0x3e, 0xe1, 0x9a, 0xf7, - 0x20, 0x77, 0x14, 0xed, 0x35, 0x5f, 0x00, 0x09, 0x9e, 0xf8, 0xd7, 0x08, 0x87, 0xd6, 0x34, 0x6b, - 0xc8, 0x42, 0xfd, 0x3b, 0x1e, 0xab, 0x28, 0x05, 0xa8, 0xc8, 0x25, 0xad, 0x42, 0xc1, 0x74, 0x0a, - 0x36, 0xc4, 0xce, 0x32, 0xec, 0x88, 0x9c, 0xc2, 0xe3, 0x26, 0x18, 0xba, 0x49, 0xe5, 0x92, 0x06, - 0x95, 0xa2, 0x15, 0xf6, 0xc6, 0xbc, 0xb3, 0x41, 0x69, 0x8c, 0x1f, 0x66, 0xd8, 0x19, 0xb9, 0x80, - 0x8f, 0x39, 0x4a, 0x3c, 0x28, 0xae, 0xae, 0x8f, 0xe9, 0x12, 0x2e, 0xe3, 0x21, 0xe4, 0x16, 0xf1, - 0xc7, 0x7e, 0x2c, 0x70, 0x3f, 0x79, 0xd1, 0xae, 0x52, 0xa8, 0x92, 0x29, 0xec, 0xa7, 0x50, 0x53, - 0x6a, 0x94, 0x65, 0x58, 0x50, 0x72, 0x76, 0x07, 0xe8, 0x36, 0x02, 0xf6, 0xd6, 0xb5, 0x22, 0x6f, - 0x78, 0x92, 0xbd, 0x24, 0x31, 0x1c, 0x2a, 0x82, 0xa5, 0x9a, 0x1a, 0x7b, 0xe7, 0x86, 0x43, 0x9c, - 0x69, 0xc7, 0x11, 0x89, 0xe0, 0x80, 0x7b, 0xcd, 0xe1, 0xb1, 0x18, 0x9a, 0x0d, 0x48, 0xed, 0x3d, - 0xc9, 0x62, 0x3f, 0xbb, 0x14, 0x4e, 0x29, 0x34, 0x7f, 0x69, 0x97, 0x54, 0xed, 0xa5, 0x25, 0xae, - 0x31, 0xcb, 0x74, 0x8d, 0x9a, 0x4d, 0xc9, 0x81, 0x21, 0x1f, 0xe0, 0x50, 0xc7, 0x1c, 0xe4, 0x24, - 0xc1, 0x95, 0xfd, 0xa0, 0xa6, 0xde, 0x9a, 0x73, 0xe8, 0x4e, 0x40, 0x72, 0x19, 0x63, 0x7d, 0xa3, - 0x06, 0xa6, 0x6c, 0x0f, 0x1a, 0xe1, 0x20, 0x2b, 0xd8, 0x48, 0x0f, 0xfc, 0x6d, 0x0d, 0x36, 0xdc, - 0x0c, 0x0b, 0x32, 0x6d, 0xfb, 0xa4, 0xab, 0xe9, 0x8c, 0x1f, 0x46, 0xd3, 0x99, 0x78, 0xa7, 0xa6, - 0x93, 0xc2, 0x81, 0x32, 0x50, 0xd6, 0x39, 0x06, 0xb4, 0xaf, 0x01, 0x8d, 0x47, 0x3a, 0x52, 0xe6, - 0x1b, 0x72, 0x1d, 0x63, 0x27, 0x2f, 0x2d, 0xa0, 0x4e, 0x6f, 0xd8, 0x5f, 0xb3, 0x09, 0x72, 0xfb, - 0x1c, 0xd0, 0xc8, 0x65, 0x1c, 0xea, 0x08, 0xa8, 0x9d, 0x69, 0xf7, 0xa0, 0xe9, 0x64, 0xa5, 0xbd, - 0x24, 0xc7, 0xf0, 0x68, 0x43, 0xa9, 0xd4, 0xdd, 0x84, 0xe4, 0x9b, 0x05, 0xcf, 0xbf, 0x51, 0xe4, - 0x2a, 0x16, 0x7a, 0xa3, 0xb6, 0x1f, 0xfb, 0x6b, 0xbe, 0xc0, 0xa8, 0xe0, 0x8f, 0x7f, 0x84, 0xf0, - 0x58, 0x67, 0x36, 0x90, 0x14, 0x1e, 0xd5, 0x28, 0x54, 0xad, 0x30, 0x6f, 0xa3, 0xe7, 0xf7, 0x91, - 0x45, 0x12, 0xb7, 0x24, 0x17, 0xb0, 0x9f, 0x4f, 0xc2, 0x61, 0x0f, 0xc3, 0x08, 0xf7, 0x60, 0xa4, - 0x6d, 0x21, 0xbb, 0x54, 0x47, 0x2f, 0x7e, 0x0f, 0x8f, 0x2f, 0xb3, 0x6e, 0x77, 0xf0, 0x91, 0x60, - 0x16, 0x0b, 0x25, 0x45, 0xab, 0xc8, 0x5a, 0xa9, 0xdd, 0x15, 0x59, 0xc5, 0x06, 0xa4, 0x09, 0xfb, - 0x7c, 0xb5, 0xe4, 0x76, 0xbb, 0xb9, 0xdf, 0x11, 0x3e, 0xde, 0x77, 0x16, 0x20, 0x11, 0x3c, 0xb5, - 0x92, 0xce, 0xcb, 0x52, 0xee, 0xa6, 0x9c, 0xc9, 0x4a, 0x37, 0x52, 0x79, 0x79, 0x39, 0x9d, 0x49, - 0xdd, 0x5a, 0xcb, 0x0b, 0x23, 0xe4, 0x6f, 0x78, 0xba, 0x47, 0x96, 0xc9, 0x4a, 0xf2, 0x92, 0x94, - 0x4e, 0xe5, 0xd3, 0x02, 0x22, 0x51, 0x1c, 0xe9, 0x23, 0x96, 0xd2, 0x37, 0xd7, 0x52, 0x4b, 0x69, - 0xc1, 0x43, 0xa6, 0xf1, 0xf1, 0x1e, 0x79, 0x2e, 0x9f, 0xca, 0xdf, 0xca, 0x09, 0x5e, 0x72, 0x02, - 0xff, 0xa5, 0x47, 0x24, 0xa5, 0x53, 0xcb, 0x82, 0x8f, 0x9c, 0xc6, 0xb1, 0x1d, 0x82, 0x4c, 0x5a, - 0x92, 0x56, 0xd7, 0x57, 0xe4, 0xec, 0xe2, 0xb5, 0xf4, 0x52, 0x3e, 0x27, 0x8c, 0xf6, 0xd1, 0x5a, - 0x94, 0xb2, 0xd7, 0xd3, 0xeb, 0x5c, 0x39, 0xbd, 0xbe, 0x94, 0xce, 0x09, 0xfe, 0xf9, 0xd7, 0x01, - 0xec, 0x4d, 0xdd, 0x5c, 0x25, 0x3f, 0x22, 0xec, 0xe7, 0x13, 0x0a, 0x19, 0x7a, 0x88, 0x89, 0x9c, - 0x1b, 0x42, 0xd3, 0x19, 0xed, 0x8c, 0xd6, 0xd3, 0x70, 0xa2, 0xf4, 0xaf, 0x07, 0x6a, 0xc2, 0x02, - 0xb5, 0x6e, 0x42, 0x15, 0xac, 0x3b, 0x89, 0x82, 0x62, 0x69, 0x6a, 0xa2, 0x6e, 0x81, 0xf9, 0x8f, - 0x06, 0x58, 0x09, 0x4d, 0x4f, 0x18, 0xa6, 0xfe, 0xa0, 0x99, 0xd8, 0x30, 0x35, 0x0a, 0x8f, 0x7e, - 0xfe, 0xed, 0x33, 0xcf, 0xe5, 0xf8, 0x45, 0xe7, 0x5f, 0x63, 0xb2, 0x1d, 0x66, 0x2b, 0xf9, 0xa1, - 0x5b, 0xf5, 0x62, 0xfb, 0x70, 0xb3, 0xf3, 0xbf, 0x98, 0xb5, 0x80, 0xe6, 0xc8, 0x53, 0x84, 0xbd, - 0x2b, 0x40, 0xc9, 0x99, 0xbd, 0x46, 0x3f, 0xce, 0x65, 0x66, 0xb8, 0x09, 0x31, 0x7e, 0xff, 0xd9, - 0x63, 0x0f, 0x6a, 0x3d, 0x0d, 0x27, 0xfb, 0x93, 0xa9, 0xea, 0x35, 0x8d, 0xea, 0x3d, 0x7c, 0x4c, - 0x50, 0x8a, 0x8c, 0xce, 0x45, 0x32, 0xdf, 0x8f, 0xce, 0x00, 0x16, 0x5c, 0xb0, 0x49, 0xbe, 0x47, - 0xd8, 0x67, 0xd7, 0x14, 0x99, 0xd9, 0xb3, 0xe8, 0x38, 0x97, 0xb3, 0x43, 0x16, 0x67, 0xfc, 0xee, - 0xbb, 0x90, 0x49, 0x90, 0xf3, 0xfb, 0x20, 0x43, 0xb6, 0x11, 0x3e, 0xe2, 0xcc, 0xad, 0x64, 0xf8, - 0xd9, 0x36, 0x32, 0x37, 0x8c, 0xaa, 0x43, 0xe7, 0x21, 0x3a, 0x58, 0x96, 0xad, 0x46, 0x96, 0x0f, - 0x92, 0x65, 0x3d, 0x1a, 0x9b, 0x76, 0xd6, 0x7d, 0x87, 0xb0, 0x9f, 0xb7, 0xac, 0x5d, 0xeb, 0xa8, - 0xab, 0xab, 0x45, 0xa6, 0x44, 0xfe, 0x6d, 0x42, 0x74, 0xbf, 0x4d, 0x88, 0xe9, 0xaa, 0x41, 0x9b, - 0xf1, 0xda, 0xc1, 0xe8, 0x5c, 0x9a, 0x3b, 0x40, 0x96, 0x2d, 0xa0, 0xb9, 0xc8, 0xfb, 0x4f, 0xb6, - 0x90, 0xe7, 0xa7, 0x2d, 0x14, 0x1b, 0xec, 0x38, 0x7f, 0x5f, 0xbd, 0xdc, 0x42, 0xa8, 0xb5, 0x85, - 0x66, 0x86, 0x7b, 0xbb, 0x3d, 0xfa, 0x21, 0xec, 0x11, 0xd0, 0xe2, 0xa7, 0xe8, 0xf9, 0xd5, 0xd1, - 0x25, 0xe9, 0xd6, 0xf2, 0xda, 0x8b, 0x57, 0xd1, 0x91, 0x97, 0xaf, 0xa2, 0x23, 0x6f, 0x5e, 0x45, - 0xd1, 0xc3, 0x56, 0x14, 0x7d, 0xd3, 0x8a, 0xa2, 0x67, 0xad, 0x28, 0x7a, 0xd1, 0x8a, 0xa2, 0x5f, - 0x5b, 0x51, 0xf4, 0xba, 0x15, 0x1d, 0x79, 0xd3, 0x8a, 0xa2, 0x4f, 0xb6, 0xa3, 0x23, 0x4f, 0xb6, - 0xa3, 0xe8, 0xc5, 0x76, 0x74, 0xe4, 0xe5, 0x76, 0x74, 0xe4, 0xbd, 0x6c, 0x59, 0x37, 0xee, 0x95, - 0xc5, 0x86, 0x6e, 0x4f, 0x8d, 0xa6, 0x22, 0xd6, 0xad, 0x24, 0x5b, 0xd8, 0x7f, 0x9b, 0xec, 0x6b, - 0x68, 0x68, 0x45, 0x30, 0x13, 0xae, 0x38, 0x69, 0x14, 0xca, 0x7a, 0x12, 0x1e, 0x50, 0xe7, 0x73, - 0xc8, 0xce, 0x8f, 0x36, 0x05, 0x3f, 0xbb, 0xf1, 0x7f, 0xfe, 0x19, 0x00, 0x00, 0xff, 0xff, 0x2a, - 0x1b, 0x90, 0xa1, 0xb5, 0x12, 0x00, 0x00, + // 1626 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x1b, 0x45, + 0x1b, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x9d, 0xb7, 0x4d, 0x1d, 0xbf, 0x7d, 0x2d, 0xbf, + 0x6e, 0x9b, 0xa6, 0xe9, 0xeb, 0x75, 0x95, 0xb7, 0xa8, 0x34, 0xaa, 0x0a, 0x4e, 0x62, 0x47, 0x69, + 0xd2, 0x38, 0x5a, 0xbb, 0x15, 0x20, 0xc4, 0x6a, 0xbd, 0x1e, 0xbb, 0x4b, 0x6d, 0xef, 0xb2, 0x33, + 0x76, 0x6a, 0xa1, 0x48, 0x50, 0x2e, 0x20, 0x10, 0xe2, 0xe3, 0x04, 0x42, 0x88, 0x0b, 0x12, 0x12, + 0xff, 0x40, 0xa5, 0x5c, 0x7a, 0xa3, 0xea, 0x01, 0x55, 0x70, 0x29, 0x27, 0xa8, 0x03, 0x52, 0xb9, + 0xa0, 0x8a, 0x0b, 0x57, 0xb4, 0x33, 0xbb, 0xae, 0xed, 0xd8, 0x8e, 0x13, 0xd2, 0x93, 0x67, 0xe6, + 0x79, 0x9e, 0xdf, 0x3e, 0xbf, 0x79, 0x3e, 0xf6, 0xf1, 0x42, 0xb1, 0x86, 0x89, 0xa8, 0xe9, 0x71, + 0xa2, 0xde, 0xc0, 0x65, 0x25, 0xae, 0x62, 0x93, 0x6a, 0x05, 0x4d, 0x55, 0x28, 0x8e, 0x1b, 0xd5, + 0x5c, 0x49, 0x53, 0x65, 0xd5, 0xac, 0xe6, 0x15, 0x43, 0x13, 0x0d, 0x53, 0xa7, 0x3a, 0x9a, 0xe4, + 0xfa, 0x22, 0xd7, 0x17, 0x5b, 0xf4, 0x43, 0xb1, 0xa2, 0x46, 0x6f, 0x54, 0x73, 0xa2, 0xaa, 0x97, + 0xe3, 0x45, 0xbd, 0xa8, 0xc7, 0x99, 0x45, 0xae, 0x5a, 0x60, 0x3b, 0xb6, 0x61, 0x2b, 0x8e, 0x14, + 0x3a, 0x5e, 0xd4, 0xf5, 0x62, 0x09, 0xc7, 0x15, 0x43, 0x8b, 0x2b, 0x95, 0x8a, 0x4e, 0x15, 0xaa, + 0xe9, 0x15, 0x62, 0x4b, 0xff, 0x6d, 0x4b, 0x9b, 0x18, 0xb8, 0x6c, 0xd0, 0xba, 0x2d, 0x9c, 0xea, + 0xed, 0xb4, 0x9e, 0x7b, 0x1d, 0xab, 0xd4, 0xd6, 0x3b, 0xd5, 0x5b, 0x8f, 0xd6, 0x0d, 0xec, 0x3c, + 0x2b, 0xd4, 0xae, 0x86, 0x4d, 0x53, 0x37, 0x9b, 0x7e, 0xb4, 0xcb, 0x74, 0xa3, 0xd5, 0xc9, 0xc9, + 0x76, 0x61, 0x2b, 0x66, 0xb4, 0x5d, 0x54, 0xc3, 0x04, 0x57, 0x6a, 0x1d, 0xe6, 0x91, 0x0e, 0x1d, + 0x0d, 0x6f, 0xc8, 0x6d, 0x1a, 0xd1, 0x6f, 0x01, 0x1c, 0x5d, 0x30, 0xb1, 0x42, 0xb1, 0x84, 0xdf, + 0xa8, 0x62, 0x42, 0xd1, 0x0b, 0xd0, 0x57, 0xc6, 0x54, 0xc9, 0x2b, 0x54, 0x09, 0x82, 0x08, 0x98, + 0x0e, 0xcc, 0x9e, 0x10, 0xdb, 0x43, 0x92, 0x66, 0x37, 0xc0, 0xad, 0xae, 0x62, 0xaa, 0x64, 0xeb, + 0x06, 0x96, 0x9a, 0x46, 0x68, 0x0d, 0x7a, 0x88, 0x81, 0xd5, 0xa0, 0x8b, 0x19, 0x9f, 0x11, 0x7b, + 0xc6, 0x53, 0xe4, 0x10, 0x19, 0x03, 0xab, 0x16, 0xc4, 0xfc, 0xf8, 0xe7, 0x9b, 0x23, 0x96, 0xa5, + 0x58, 0x54, 0x65, 0xeb, 0x57, 0x62, 0x38, 0x73, 0xfe, 0xfb, 0x97, 0xbd, 0xfc, 0x91, 0xd1, 0xbf, + 0x00, 0x1c, 0x73, 0xbc, 0x25, 0x86, 0x5e, 0x21, 0x18, 0x5d, 0xda, 0xe1, 0x6e, 0xa4, 0xab, 0xbb, + 0x4b, 0x98, 0x76, 0xf1, 0x35, 0x0d, 0xc7, 0x49, 0x9d, 0x50, 0x5c, 0x96, 0x9b, 0x20, 0x6e, 0x06, + 0x32, 0xd5, 0x01, 0x92, 0x61, 0x5a, 0x3b, 0xa1, 0xc6, 0xb8, 0xf9, 0x55, 0x07, 0x70, 0xa5, 0x8d, + 0xfc, 0x54, 0x1f, 0xf2, 0x4b, 0x98, 0xee, 0x81, 0xf9, 0xcf, 0x00, 0x8e, 0x49, 0xd8, 0x28, 0x29, + 0x6a, 0x33, 0x50, 0x2f, 0xee, 0x60, 0x7e, 0xb2, 0x2b, 0x73, 0xdb, 0xac, 0x2b, 0xfb, 0x56, 0x67, + 0x67, 0xfa, 0x38, 0x6b, 0x63, 0xec, 0xe2, 0x30, 0x8a, 0x43, 0xc1, 0xc4, 0x44, 0xaf, 0x9a, 0x2a, + 0x96, 0x6b, 0xd8, 0x24, 0x9a, 0x5e, 0x61, 0xf7, 0xe9, 0x9f, 0xf7, 0x3c, 0xde, 0x02, 0x40, 0x1a, + 0x77, 0xa4, 0xd7, 0xb9, 0xb0, 0x95, 0xe1, 0x61, 0x38, 0xde, 0x24, 0xc8, 0x63, 0x1b, 0xfd, 0x0c, + 0x40, 0xb8, 0x84, 0xa9, 0x43, 0xf8, 0x38, 0xf4, 0x57, 0x94, 0x32, 0x26, 0x86, 0xa2, 0x62, 0xc6, + 0xd8, 0x2f, 0x3d, 0x3d, 0x40, 0x08, 0x7a, 0xac, 0x0d, 0x23, 0xe3, 0x97, 0xd8, 0x1a, 0xbd, 0x0c, + 0xad, 0x27, 0x32, 0x30, 0xb9, 0xa0, 0x9b, 0x65, 0x85, 0x32, 0x77, 0xc6, 0x66, 0xcf, 0xf5, 0x0f, + 0x8c, 0xe3, 0x41, 0x8a, 0xd9, 0x2c, 0xe8, 0x79, 0x2c, 0x8d, 0x99, 0x6d, 0x67, 0xd1, 0xf7, 0xbc, + 0x30, 0xd0, 0xa2, 0x89, 0x96, 0x61, 0x40, 0x65, 0x99, 0xc9, 0x1e, 0x64, 0x5f, 0xe9, 0xf4, 0xae, + 0xc9, 0x6f, 0x73, 0x93, 0x20, 0x37, 0xb6, 0xc0, 0xd1, 0x2a, 0x1c, 0x31, 0xf9, 0x4d, 0x70, 0x2c, + 0xf7, 0xae, 0x85, 0xd4, 0x9e, 0x19, 0x52, 0xc0, 0x36, 0x67, 0x68, 0xdd, 0x62, 0xe2, 0xe9, 0x13, + 0x93, 0xb6, 0x8a, 0x1a, 0x3e, 0x88, 0x8a, 0x3a, 0x74, 0x20, 0x15, 0xe5, 0x3d, 0x80, 0x8a, 0x42, + 0x29, 0xe8, 0x25, 0x54, 0xa1, 0x55, 0x12, 0xfc, 0xea, 0x0b, 0x10, 0x71, 0x4f, 0x07, 0x66, 0x4f, + 0xf7, 0x01, 0xcc, 0x30, 0x55, 0xee, 0xe2, 0xbc, 0xfb, 0xee, 0x26, 0x90, 0x6c, 0x6b, 0xb4, 0x0c, + 0x0f, 0x9b, 0xb8, 0x80, 0x4d, 0x53, 0xab, 0x14, 0x65, 0xfe, 0x46, 0x20, 0x41, 0x1f, 0x03, 0x3c, + 0xde, 0xa3, 0x08, 0x0b, 0x8c, 0x9d, 0xd0, 0x34, 0xe3, 0xe7, 0x04, 0x5d, 0x87, 0xc1, 0x3c, 0x2e, + 0x61, 0x8a, 0xf3, 0x32, 0x97, 0xe1, 0x7c, 0x13, 0xd1, 0x3f, 0x00, 0xe2, 0x84, 0x6d, 0x2d, 0xd9, + 0xc6, 0x0e, 0xee, 0x4b, 0x70, 0x32, 0xaf, 0x11, 0x25, 0x57, 0xea, 0x06, 0x0c, 0x07, 0x00, 0x3e, + 0xe6, 0x98, 0x77, 0x20, 0xb7, 0x14, 0xed, 0x15, 0x8f, 0x0f, 0x08, 0xae, 0xe8, 0xd7, 0x00, 0x06, + 0x56, 0x35, 0x32, 0x60, 0xa1, 0xfe, 0x17, 0x8e, 0x94, 0x94, 0x1c, 0x2e, 0xc9, 0x05, 0xad, 0x44, + 0xb1, 0x69, 0x17, 0x6c, 0x80, 0x9d, 0xa5, 0xd8, 0x11, 0x3a, 0x01, 0x47, 0x4d, 0x6c, 0xe8, 0x26, + 0x95, 0x0b, 0x1a, 0x2e, 0xe5, 0x49, 0xd0, 0x1d, 0x71, 0x4f, 0xfb, 0xa5, 0x11, 0x7e, 0x98, 0x62, + 0x67, 0xe8, 0x1c, 0x3c, 0x62, 0x2b, 0xf1, 0xa0, 0x38, 0xba, 0x1e, 0xa6, 0x8b, 0xb8, 0x8c, 0x87, + 0x90, 0x5b, 0x44, 0xef, 0x78, 0xa1, 0xc0, 0xfd, 0xe4, 0x45, 0xbb, 0x4c, 0x71, 0x19, 0x4d, 0x40, + 0x2f, 0xc5, 0x15, 0xa5, 0x42, 0x59, 0x86, 0xf9, 0x25, 0x7b, 0xb7, 0x8f, 0x6e, 0x23, 0x40, 0x77, + 0x55, 0xcb, 0xf3, 0x86, 0x27, 0x59, 0x4b, 0x14, 0x81, 0x81, 0x3c, 0x26, 0xaa, 0xa9, 0xb1, 0x77, + 0x6e, 0x30, 0xc0, 0x99, 0xb6, 0x1c, 0xa1, 0x10, 0xf4, 0x39, 0xd7, 0x1c, 0x1c, 0x89, 0x80, 0x69, + 0x9f, 0xd4, 0xdc, 0xa3, 0x34, 0xf4, 0xb2, 0x4b, 0xe1, 0x94, 0x02, 0xb3, 0x17, 0xfa, 0xa4, 0x6a, + 0x27, 0x2d, 0x71, 0x95, 0x59, 0x26, 0x2b, 0xd4, 0xac, 0x4b, 0x36, 0x0c, 0x7a, 0x0d, 0x06, 0x5a, + 0xe6, 0x20, 0x3b, 0x09, 0x2e, 0xed, 0x05, 0x35, 0xf1, 0xd4, 0x9c, 0x43, 0xb7, 0x02, 0xa2, 0x8b, + 0x10, 0xea, 0x1b, 0x15, 0x6c, 0xca, 0xd6, 0xa0, 0x11, 0xf4, 0xb3, 0x82, 0x0d, 0x75, 0xc0, 0x5f, + 0xd7, 0xf0, 0x86, 0x93, 0x61, 0x7e, 0xa6, 0x6d, 0x9d, 0xb4, 0x35, 0x9d, 0xd1, 0x83, 0x68, 0x3a, + 0x63, 0xff, 0xa8, 0xe9, 0x24, 0xa0, 0xaf, 0x88, 0x29, 0xeb, 0x1c, 0x3d, 0xda, 0x57, 0x8f, 0xc6, + 0x23, 0x1d, 0x2a, 0xf2, 0x0d, 0x5a, 0x81, 0xd0, 0xce, 0x4b, 0x82, 0xa9, 0xdd, 0x1b, 0xf6, 0xd6, + 0x6c, 0xfc, 0xdc, 0x3e, 0x83, 0x69, 0xe8, 0x22, 0x0c, 0xb4, 0x04, 0xd4, 0xca, 0xb4, 0x9b, 0xb8, + 0x6e, 0x67, 0xa5, 0xb5, 0x44, 0x47, 0xe0, 0x70, 0x4d, 0x29, 0x55, 0x9d, 0x84, 0xe4, 0x9b, 0x39, + 0xd7, 0xf3, 0x20, 0x74, 0x19, 0x0a, 0x9d, 0x51, 0xdb, 0x8b, 0xfd, 0x15, 0x8f, 0x6f, 0x58, 0xf0, + 0x46, 0xdf, 0x01, 0x70, 0xa4, 0x35, 0x1b, 0x50, 0x02, 0x0e, 0x6b, 0x14, 0x97, 0x49, 0x90, 0xb7, + 0xd1, 0xb3, 0x7b, 0xc8, 0x22, 0x89, 0x5b, 0xa2, 0x73, 0xd0, 0xcb, 0x27, 0xe1, 0xa0, 0x8b, 0x61, + 0x04, 0x3b, 0x30, 0x92, 0x96, 0x90, 0x5d, 0xaa, 0xad, 0x17, 0xbd, 0x09, 0x47, 0x17, 0x59, 0xb7, + 0xdb, 0xff, 0x48, 0x30, 0x0d, 0x85, 0x82, 0xa2, 0x95, 0x64, 0xad, 0xd0, 0xec, 0x8a, 0xac, 0x62, + 0x7d, 0xd2, 0x98, 0x75, 0xbe, 0x5c, 0x70, 0xba, 0xdd, 0xcc, 0x9f, 0x00, 0x1e, 0xed, 0x3a, 0x0b, + 0xa0, 0x10, 0x9c, 0x58, 0x4a, 0x66, 0x65, 0x29, 0xb3, 0x2e, 0xa7, 0xd2, 0xd2, 0xd5, 0x44, 0x56, + 0x5e, 0x4c, 0xa6, 0x12, 0xd7, 0x56, 0xb3, 0xc2, 0x10, 0xfa, 0x0f, 0x9c, 0xec, 0x90, 0xa5, 0xd2, + 0x92, 0xbc, 0x20, 0x25, 0x13, 0xd9, 0xa4, 0x00, 0x50, 0x18, 0x86, 0xba, 0x88, 0xa5, 0xe4, 0xfa, + 0x6a, 0x62, 0x21, 0x29, 0xb8, 0xd0, 0x24, 0x3c, 0xda, 0x21, 0xcf, 0x64, 0x13, 0xd9, 0x6b, 0x19, + 0xc1, 0x8d, 0x8e, 0xc1, 0x7f, 0x75, 0x88, 0xa4, 0x64, 0x62, 0x51, 0xf0, 0xa0, 0x93, 0x30, 0xb2, + 0x43, 0x90, 0x4a, 0x4a, 0xd2, 0xf2, 0xda, 0x92, 0x9c, 0x9e, 0xbf, 0x92, 0x5c, 0xc8, 0x66, 0x84, + 0xe1, 0x2e, 0x5a, 0xf3, 0x52, 0x7a, 0x25, 0xb9, 0xc6, 0x95, 0x93, 0x6b, 0x0b, 0xc9, 0x8c, 0xe0, + 0x9d, 0x7d, 0x17, 0x42, 0x77, 0x62, 0x7d, 0x19, 0xfd, 0x01, 0xa0, 0x97, 0x4f, 0x28, 0x68, 0xe0, + 0x21, 0x26, 0x74, 0x66, 0x00, 0x4d, 0x7b, 0xb4, 0xfb, 0x10, 0x34, 0xbe, 0x0b, 0xae, 0x14, 0x9e, + 0xbb, 0xa5, 0xc6, 0x08, 0x56, 0xab, 0x26, 0x2e, 0x63, 0x72, 0x23, 0x96, 0x53, 0x88, 0xa6, 0xc6, + 0xaa, 0x04, 0x9b, 0xff, 0xeb, 0x14, 0x11, 0xaa, 0x54, 0xf2, 0x8a, 0x99, 0xe7, 0xd2, 0x1a, 0x26, + 0x31, 0x4d, 0x8f, 0x19, 0xa6, 0x7e, 0xab, 0x1e, 0xdb, 0x30, 0x35, 0x8a, 0x6f, 0xff, 0xf8, 0xeb, + 0xa7, 0xae, 0x8b, 0xd1, 0xf3, 0xf6, 0x9f, 0xca, 0x78, 0x33, 0x0b, 0x48, 0xfc, 0x4d, 0xa7, 0x29, + 0x88, 0xcd, 0xc3, 0xcd, 0xd6, 0xbf, 0x6a, 0x64, 0x0e, 0xcc, 0xa0, 0xdf, 0x01, 0x74, 0x2f, 0x61, + 0x8a, 0x4e, 0xed, 0x36, 0x19, 0x72, 0xaa, 0x53, 0x83, 0x0d, 0x90, 0xd1, 0x4f, 0xc0, 0xbd, 0x3b, + 0x2e, 0x8b, 0xeb, 0x7a, 0x77, 0xae, 0x65, 0xbd, 0xa2, 0x51, 0xbd, 0x0f, 0x5d, 0x47, 0xa1, 0x8d, + 0xb1, 0x89, 0x95, 0x3c, 0x23, 0x7c, 0x1e, 0xcd, 0x76, 0x23, 0xdc, 0x83, 0x27, 0x17, 0x6c, 0xa2, + 0xdf, 0x00, 0xf4, 0x58, 0x45, 0x89, 0xa6, 0x76, 0xad, 0x5a, 0xce, 0xf6, 0xf4, 0x80, 0xd5, 0x1d, + 0x7d, 0xff, 0xd9, 0xd2, 0x8d, 0xa1, 0xb3, 0x7b, 0xa0, 0x8b, 0xde, 0x76, 0xc1, 0x43, 0xf6, 0x68, + 0x8c, 0x06, 0x1f, 0x9f, 0x43, 0x33, 0x83, 0xa8, 0xda, 0x84, 0xbf, 0x7c, 0x26, 0x79, 0xbc, 0x1c, + 0x5a, 0xdc, 0x4f, 0x1e, 0x77, 0x68, 0x6c, 0x5a, 0x79, 0xfd, 0x13, 0x80, 0x5e, 0xde, 0x33, 0xfb, + 0x16, 0x72, 0x5b, 0x5b, 0x0d, 0x4d, 0x88, 0xfc, 0xe3, 0x88, 0xe8, 0x7c, 0x1c, 0x11, 0x93, 0x65, + 0x83, 0xd6, 0xa3, 0x1f, 0x3c, 0x13, 0xb6, 0x17, 0x66, 0xf6, 0x91, 0xc4, 0x73, 0x60, 0x26, 0xf4, + 0xea, 0xdd, 0x2d, 0xe0, 0xfa, 0x61, 0x0b, 0x44, 0x7a, 0xf3, 0xe2, 0xef, 0xd3, 0x87, 0x5b, 0x00, + 0x34, 0xb6, 0xc0, 0xd4, 0x60, 0x6f, 0xdf, 0xdb, 0xdf, 0x07, 0x5d, 0x02, 0x98, 0xff, 0x18, 0xdc, + 0xbf, 0x3c, 0xbc, 0x20, 0x5d, 0x5b, 0x5c, 0x7d, 0xf0, 0x28, 0x3c, 0xf4, 0xf0, 0x51, 0x78, 0xe8, + 0xc9, 0xa3, 0x30, 0x78, 0xab, 0x11, 0x06, 0xdf, 0x34, 0xc2, 0xe0, 0x5e, 0x23, 0x0c, 0x1e, 0x34, + 0xc2, 0xe0, 0x97, 0x46, 0x18, 0x3c, 0x6e, 0x84, 0x87, 0x9e, 0x34, 0xc2, 0xe0, 0xa3, 0xed, 0xf0, + 0xd0, 0xdd, 0xed, 0x30, 0x78, 0xb0, 0x1d, 0x1e, 0x7a, 0xb8, 0x1d, 0x1e, 0x7a, 0x25, 0x5d, 0xd4, + 0x8d, 0x9b, 0x45, 0xb1, 0xa6, 0x5b, 0x53, 0xad, 0xa9, 0x88, 0x55, 0x12, 0x67, 0x0b, 0xeb, 0x6f, + 0x9d, 0x75, 0x0d, 0x35, 0x2d, 0x8f, 0xcd, 0x98, 0x23, 0x8e, 0x1b, 0xb9, 0xa2, 0x1e, 0xc7, 0xb7, + 0xa8, 0xfd, 0xb9, 0x66, 0xe7, 0x47, 0xa5, 0x9c, 0x97, 0x05, 0xe4, 0xff, 0x7f, 0x07, 0x00, 0x00, + 0xff, 0xff, 0xb4, 0xbc, 0x71, 0x3c, 0x55, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/certificate/public_crudapi.vesapi.go b/pbgo/extschema/schema/certificate/public_crudapi.vesapi.go index ba7e7a0aa..4c91bd52b 100644 --- a/pbgo/extschema/schema/certificate/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/certificate/public_crudapi.vesapi.go @@ -3108,10 +3108,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3168,10 +3172,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3230,10 +3238,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/certificate_chain/crudapi/api.vesapi.go b/pbgo/extschema/schema/certificate_chain/crudapi/api.vesapi.go index 938f5f328..d4db1aab0 100644 --- a/pbgo/extschema/schema/certificate_chain/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/certificate_chain/crudapi/api.vesapi.go @@ -3140,10 +3140,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/certificate_chain/object.pb.go b/pbgo/extschema/schema/certificate_chain/object.pb.go index d508e40a8..d6e9463f7 100644 --- a/pbgo/extschema/schema/certificate_chain/object.pb.go +++ b/pbgo/extschema/schema/certificate_chain/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_6d5204f4b497f807 = []byte{ - // 589 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x4f, 0x13, 0x41, - 0x14, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0x88, 0xab, 0x87, 0x8a, 0x3a, 0x92, 0x7a, 0xc1, 0xc8, - 0xce, 0x1a, 0x8c, 0x51, 0x88, 0x7a, 0x00, 0x13, 0x3c, 0x40, 0x4c, 0x5a, 0xbc, 0x78, 0x69, 0x66, - 0xa7, 0x6f, 0xb7, 0xa3, 0xdd, 0xce, 0x66, 0x66, 0x76, 0xa5, 0x07, 0x13, 0x3e, 0x82, 0x89, 0xdf, - 0xc0, 0x93, 0x31, 0xf1, 0x3b, 0x88, 0x27, 0x8f, 0x84, 0x13, 0x47, 0xd9, 0x5e, 0x3c, 0xe2, 0x37, - 0x30, 0xcc, 0xb2, 0x84, 0x42, 0x0d, 0x86, 0xdb, 0x4c, 0xde, 0xef, 0xff, 0xdf, 0xf7, 0xde, 0xbc, - 0xb7, 0x78, 0x21, 0x05, 0x4d, 0x85, 0xf4, 0x34, 0xef, 0x40, 0xc4, 0x3c, 0x0e, 0xca, 0x88, 0x40, - 0x70, 0x66, 0xa0, 0xc5, 0x3b, 0x4c, 0xf4, 0x3c, 0xe9, 0xbf, 0x05, 0x6e, 0x68, 0xac, 0xa4, 0x91, - 0xce, 0x9d, 0x9c, 0xa6, 0x39, 0x4d, 0xcf, 0xd1, 0xb3, 0x6e, 0x28, 0x4c, 0x27, 0xf1, 0x29, 0x97, - 0x91, 0x17, 0xca, 0x50, 0x7a, 0x56, 0xe7, 0x27, 0x81, 0xbd, 0xd9, 0x8b, 0x3d, 0xe5, 0x7e, 0xb3, - 0xf7, 0x2f, 0xfa, 0xba, 0xe9, 0xc7, 0xa0, 0x8f, 0xe1, 0x9b, 0xc3, 0xb0, 0x8c, 0x8d, 0x90, 0xbd, - 0x22, 0x78, 0x63, 0x38, 0x78, 0x5a, 0x57, 0x1f, 0x0e, 0xa5, 0xa0, 0xa1, 0x97, 0x0e, 0xcb, 0xeb, - 0xdb, 0x63, 0xb8, 0xfa, 0xca, 0x56, 0xea, 0x2c, 0xe1, 0x89, 0x08, 0x0c, 0x6b, 0x33, 0xc3, 0x6a, - 0x68, 0x0e, 0xcd, 0x4f, 0x2e, 0xde, 0xa6, 0xc3, 0x65, 0xe7, 0xe0, 0x06, 0x18, 0xb6, 0xd9, 0x8f, - 0xa1, 0x71, 0x82, 0x3b, 0xeb, 0xf8, 0x8a, 0xee, 0x6b, 0x03, 0x51, 0xeb, 0xc4, 0xa1, 0x6c, 0x1d, - 0xee, 0x9e, 0x71, 0x68, 0x5a, 0xea, 0x8c, 0xcf, 0x74, 0xae, 0xdd, 0x28, 0xdc, 0x9e, 0xe1, 0x31, - 0x1d, 0x03, 0xaf, 0x55, 0xac, 0xc5, 0x3d, 0x7a, 0x41, 0xef, 0x69, 0x33, 0x06, 0x6e, 0x8d, 0xac, - 0x6c, 0xf9, 0x5b, 0xf9, 0xc7, 0x4e, 0xad, 0x3c, 0x83, 0xf6, 0x76, 0x6a, 0x9f, 0xcb, 0xf8, 0x31, - 0xae, 0xac, 0x81, 0x71, 0x1e, 0x04, 0x8f, 0xb6, 0xb8, 0xab, 0x81, 0x27, 0x0a, 0x22, 0xd0, 0x1d, - 0xd7, 0x67, 0x5a, 0x70, 0x37, 0x92, 0x3d, 0x61, 0xa4, 0x5a, 0x98, 0x4b, 0x41, 0xbb, 0x42, 0xba, - 0xb1, 0x92, 0x5b, 0x7d, 0x57, 0x01, 0x6b, 0xe3, 0x25, 0x3c, 0xde, 0x80, 0xb8, 0xcb, 0x38, 0x38, - 0x74, 0xb4, 0x38, 0xd1, 0x70, 0x56, 0xf9, 0x5e, 0x09, 0x03, 0xf8, 0x09, 0xae, 0xae, 0x2a, 0x60, - 0xe6, 0x52, 0xca, 0x17, 0xd0, 0x85, 0x4b, 0x29, 0xc7, 0xd6, 0x85, 0xbe, 0x44, 0xa1, 0xf5, 0x4d, - 0x3c, 0x51, 0x74, 0xd0, 0x79, 0x89, 0xc7, 0x43, 0xde, 0xb2, 0xdd, 0xcf, 0x47, 0xc0, 0xbb, 0xb0, - 0xfb, 0x6b, 0x5d, 0xe9, 0xb3, 0xee, 0xc9, 0x1b, 0x54, 0x43, 0x7e, 0x74, 0xae, 0xff, 0x41, 0x78, - 0xaa, 0x69, 0x98, 0x49, 0xf4, 0x7f, 0x8f, 0x57, 0x8e, 0x8f, 0x18, 0xaf, 0x26, 0x9e, 0xcc, 0xb7, - 0xb1, 0xa5, 0x20, 0xd0, 0xb5, 0xf2, 0x5c, 0x65, 0x7e, 0x72, 0xf1, 0xd6, 0xc8, 0xe1, 0x6c, 0x40, - 0x70, 0x24, 0x5e, 0xb9, 0xfe, 0xf5, 0xc3, 0xd5, 0x73, 0xb9, 0x36, 0xb0, 0x2c, 0x20, 0xed, 0x3c, - 0xc5, 0x98, 0xcb, 0x5e, 0x5b, 0xd8, 0x6d, 0xa8, 0x55, 0x46, 0x7a, 0xae, 0x16, 0x80, 0x4d, 0xe8, - 0x14, 0xbf, 0x7c, 0x6d, 0xef, 0xf9, 0x0c, 0x9e, 0xc6, 0x53, 0x45, 0x8e, 0x34, 0x11, 0xed, 0x95, - 0x4f, 0x68, 0xf7, 0x80, 0x94, 0xf6, 0x0f, 0x48, 0xe9, 0xf0, 0x80, 0xa0, 0xed, 0x8c, 0xa0, 0x2f, - 0x19, 0x41, 0x3f, 0x33, 0x82, 0x76, 0x33, 0x82, 0xf6, 0x33, 0x82, 0x7e, 0x65, 0x04, 0xfd, 0xce, - 0x48, 0xe9, 0x30, 0x23, 0xe8, 0xe3, 0x80, 0x94, 0xbe, 0x0f, 0x08, 0xda, 0x1d, 0x90, 0xd2, 0xfe, - 0x80, 0x94, 0xde, 0xbc, 0x0e, 0x65, 0xfc, 0x2e, 0xa4, 0xa9, 0xec, 0x1a, 0x50, 0x8a, 0xd1, 0x44, - 0x7b, 0xf6, 0x10, 0x48, 0x15, 0x1d, 0x3d, 0x58, 0x2a, 0xda, 0xa0, 0xdc, 0x22, 0xec, 0xc5, 0x7e, - 0x28, 0x3d, 0xd8, 0x32, 0xc7, 0xeb, 0xfd, 0xaf, 0x5f, 0x89, 0x5f, 0xb5, 0x9b, 0xfe, 0xf0, 0x6f, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x0d, 0x6f, 0x1b, 0xaf, 0xf2, 0x04, 0x00, 0x00, + // 606 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0x80, 0x77, 0x58, 0x5c, 0xc8, 0x40, 0x10, 0xab, 0x87, 0x15, 0x75, 0x24, 0xeb, 0x05, 0x23, + 0x6d, 0x13, 0x8c, 0x07, 0x89, 0x7a, 0x00, 0x13, 0x3c, 0x40, 0x4c, 0x76, 0x31, 0x2a, 0x97, 0xcd, + 0x74, 0xfa, 0xb6, 0x3b, 0xba, 0xdd, 0x69, 0x66, 0xa6, 0x95, 0x3d, 0x98, 0xf8, 0x13, 0x4c, 0xfc, + 0x05, 0xde, 0x8c, 0xbf, 0x42, 0xf4, 0xe2, 0xc9, 0x10, 0x4e, 0x1c, 0xa5, 0x7b, 0xf1, 0x88, 0xff, + 0xc0, 0x30, 0xa5, 0x48, 0x61, 0x75, 0x3d, 0xc8, 0x6d, 0x9a, 0xf7, 0xbd, 0xaf, 0x6f, 0x66, 0xde, + 0x3c, 0x3c, 0x9f, 0x80, 0x72, 0xb8, 0x70, 0x15, 0x6b, 0x43, 0x48, 0x5d, 0x06, 0x52, 0xf3, 0x16, + 0x67, 0x54, 0x43, 0x93, 0xb5, 0x29, 0xef, 0xba, 0xc2, 0x7b, 0x01, 0x4c, 0x3b, 0x91, 0x14, 0x5a, + 0x58, 0xd7, 0x33, 0xda, 0xc9, 0x68, 0xe7, 0x14, 0x3d, 0x63, 0x07, 0x5c, 0xb7, 0x63, 0xcf, 0x61, + 0x22, 0x74, 0x03, 0x11, 0x08, 0xd7, 0xe4, 0x79, 0x71, 0xcb, 0x7c, 0x99, 0x0f, 0xb3, 0xca, 0x7c, + 0x33, 0xb7, 0x86, 0xfd, 0x5d, 0xf7, 0x22, 0x50, 0x87, 0xf0, 0x95, 0x22, 0x2c, 0x22, 0xcd, 0x45, + 0x37, 0x0f, 0x5e, 0x2e, 0x06, 0x8f, 0xe7, 0xd5, 0x8a, 0xa1, 0x04, 0x14, 0x74, 0x93, 0x62, 0x7a, + 0xed, 0xfd, 0x39, 0x5c, 0x79, 0x6c, 0x76, 0x6a, 0xdd, 0xc5, 0xe3, 0x21, 0x68, 0xea, 0x53, 0x4d, + 0xab, 0x68, 0x16, 0xcd, 0x4d, 0x2c, 0x5c, 0x73, 0x8a, 0xdb, 0xce, 0xc0, 0x35, 0xd0, 0x74, 0xbd, + 0x17, 0x41, 0xfd, 0x08, 0xb7, 0x56, 0xf1, 0x79, 0xd5, 0x53, 0x1a, 0xc2, 0xe6, 0x91, 0x61, 0xc4, + 0x18, 0x6e, 0x9c, 0x30, 0x34, 0x0c, 0x75, 0xc2, 0x33, 0x95, 0xe5, 0xae, 0xe5, 0xb6, 0xfb, 0x78, + 0x54, 0x45, 0xc0, 0xaa, 0x65, 0xa3, 0xb8, 0xe9, 0x0c, 0x39, 0x7b, 0xa7, 0x11, 0x01, 0x33, 0x22, + 0x93, 0xb6, 0xf8, 0xad, 0xfc, 0x79, 0xab, 0x3a, 0x32, 0x8d, 0x76, 0xb6, 0xaa, 0x5f, 0xca, 0xf8, + 0x39, 0x2e, 0xaf, 0x80, 0xb6, 0xea, 0xad, 0x3b, 0x9b, 0xcc, 0x56, 0xc0, 0x62, 0x09, 0x21, 0xa8, + 0xb6, 0xed, 0x51, 0xc5, 0x99, 0x1d, 0x8a, 0x2e, 0xd7, 0x42, 0xce, 0xcf, 0x9e, 0x0c, 0x2b, 0x4d, + 0xbb, 0x3e, 0x95, 0xfe, 0x6f, 0x22, 0x01, 0x65, 0x73, 0x61, 0x47, 0x52, 0x6c, 0xf6, 0x6c, 0x09, + 0xd4, 0xc7, 0xcf, 0xf0, 0x58, 0x1d, 0xa2, 0x0e, 0x65, 0x60, 0xad, 0x0d, 0xd6, 0xc7, 0x0a, 0xfe, + 0xe6, 0xce, 0xc2, 0x05, 0xf1, 0x2b, 0xc9, 0x35, 0xe0, 0xa7, 0xb8, 0xb2, 0x2c, 0x81, 0xea, 0xb3, + 0x10, 0x3f, 0x84, 0x0e, 0xfc, 0x7f, 0xf1, 0x06, 0x1e, 0x5d, 0xe5, 0xea, 0x4c, 0xce, 0xb9, 0xb6, + 0x8e, 0xc7, 0xf3, 0x2b, 0xb6, 0x1e, 0xe1, 0xb1, 0x80, 0x35, 0x4d, 0x7b, 0x64, 0x3d, 0xea, 0x0e, + 0x6d, 0x8f, 0x95, 0x8e, 0xf0, 0x68, 0xe7, 0xa8, 0x49, 0x2a, 0x01, 0x3b, 0x58, 0xd7, 0x7e, 0x22, + 0x3c, 0xd9, 0xd0, 0x54, 0xc7, 0xea, 0x9f, 0xfb, 0x3f, 0xc3, 0x07, 0xf4, 0x7f, 0x03, 0x4f, 0x64, + 0xe3, 0xa2, 0x29, 0xa1, 0xa5, 0xaa, 0x23, 0xb3, 0xe5, 0xb9, 0x89, 0x85, 0xab, 0x03, 0x5f, 0x4f, + 0x1d, 0x5a, 0x07, 0xc9, 0x4b, 0x97, 0x3e, 0xbe, 0xbe, 0x70, 0xaa, 0xd6, 0x3a, 0x16, 0x39, 0xa4, + 0xac, 0x7b, 0x18, 0x33, 0xd1, 0xf5, 0xb9, 0x79, 0xae, 0xd5, 0xf2, 0x40, 0xe7, 0x72, 0x0e, 0x98, + 0x82, 0x8e, 0xf1, 0x8b, 0x17, 0x77, 0x1e, 0x4c, 0xe3, 0x29, 0x3c, 0x99, 0xd7, 0xe8, 0xc4, 0xdc, + 0x5f, 0x7a, 0x87, 0xb6, 0xf7, 0x48, 0x69, 0x77, 0x8f, 0x94, 0xf6, 0xf7, 0x08, 0x7a, 0x93, 0x12, + 0xf4, 0x21, 0x25, 0xe8, 0x6b, 0x4a, 0xd0, 0x76, 0x4a, 0xd0, 0x6e, 0x4a, 0xd0, 0xf7, 0x94, 0xa0, + 0x1f, 0x29, 0x29, 0xed, 0xa7, 0x04, 0xbd, 0xed, 0x93, 0xd2, 0xa7, 0x3e, 0x41, 0xdb, 0x7d, 0x52, + 0xda, 0xed, 0x93, 0xd2, 0xc6, 0x93, 0x40, 0x44, 0x2f, 0x03, 0x27, 0x11, 0x1d, 0x0d, 0x52, 0x52, + 0x27, 0x56, 0xae, 0x59, 0xb4, 0x84, 0x0c, 0x0f, 0x2e, 0x2c, 0xe1, 0x3e, 0x48, 0x3b, 0x0f, 0xbb, + 0x91, 0x17, 0x08, 0x17, 0x36, 0xf5, 0xe1, 0xfc, 0xf9, 0xd3, 0xac, 0xf3, 0x2a, 0x66, 0x14, 0xdd, + 0xfe, 0x15, 0x00, 0x00, 0xff, 0xff, 0x7a, 0x9d, 0x79, 0x38, 0x93, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/certificate_chain/public_crudapi.pb.go b/pbgo/extschema/schema/certificate_chain/public_crudapi.pb.go index cbc749842..7f66d7b10 100644 --- a/pbgo/extschema/schema/certificate_chain/public_crudapi.pb.go +++ b/pbgo/extschema/schema/certificate_chain/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_ab49b754829f4433 = []byte{ - // 1613 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x68, 0x1b, 0xc7, - 0x1a, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x67, 0x33, 0x2f, 0x71, 0x64, 0xbd, 0x3c, 0x3d, 0x3d, - 0x25, 0x04, 0xe3, 0x58, 0xbb, 0x8e, 0xf3, 0xde, 0x23, 0x31, 0x4d, 0x52, 0xd9, 0x96, 0x85, 0x5d, - 0x27, 0x4a, 0x46, 0x72, 0x28, 0xbd, 0x2c, 0xab, 0xd5, 0x48, 0xde, 0x46, 0xd2, 0x6e, 0x77, 0x47, - 0x72, 0x44, 0x31, 0x94, 0x1c, 0x0a, 0xbd, 0x15, 0x7a, 0x28, 0x94, 0x42, 0xdb, 0x43, 0xa1, 0xd7, - 0xde, 0x0a, 0xbe, 0xe4, 0xd4, 0x84, 0x1c, 0x8a, 0x69, 0x29, 0xa4, 0xb7, 0x5a, 0x6e, 0x21, 0xc7, - 0x50, 0xe8, 0xb1, 0x50, 0x76, 0x66, 0x57, 0x91, 0x64, 0x25, 0x92, 0x1c, 0x9f, 0xb4, 0x33, 0xdf, - 0xf7, 0xfd, 0xe6, 0xfb, 0xcd, 0xf7, 0x47, 0xdf, 0x2e, 0xfc, 0x6f, 0x9d, 0x58, 0xa2, 0xa6, 0x4b, - 0x96, 0xba, 0x45, 0x2a, 0x8a, 0xa4, 0x12, 0x93, 0x6a, 0x45, 0x4d, 0x55, 0x28, 0x91, 0xd5, 0x2d, - 0x45, 0xab, 0x4a, 0x46, 0x2d, 0x5f, 0xd6, 0x54, 0x59, 0x35, 0x6b, 0x05, 0xc5, 0xd0, 0x44, 0xc3, - 0xd4, 0xa9, 0x8e, 0xfe, 0xcd, 0xad, 0x44, 0x6e, 0x25, 0x1e, 0xb2, 0x8a, 0x24, 0x4a, 0x1a, 0xdd, - 0xaa, 0xe5, 0x45, 0x55, 0xaf, 0x48, 0x25, 0xbd, 0xa4, 0x4b, 0xcc, 0x2e, 0x5f, 0x2b, 0xb2, 0x15, - 0x5b, 0xb0, 0x27, 0x8e, 0x17, 0x39, 0x5b, 0xd2, 0xf5, 0x52, 0x99, 0x48, 0x8a, 0xa1, 0x49, 0x4a, - 0xb5, 0xaa, 0x53, 0x85, 0x6a, 0x7a, 0xd5, 0x72, 0xa4, 0xff, 0x74, 0xa4, 0x2d, 0x0c, 0x52, 0x31, - 0x68, 0xc3, 0x11, 0xce, 0xf5, 0x23, 0xa0, 0xe7, 0xdf, 0x25, 0x2a, 0x75, 0xb4, 0x2f, 0xf6, 0xd3, - 0xa6, 0x0d, 0x83, 0xb8, 0xe7, 0x46, 0x3a, 0x95, 0x89, 0x69, 0xea, 0x66, 0xcb, 0xa7, 0x4e, 0x99, - 0x6e, 0xb4, 0x3b, 0x3c, 0xdd, 0x29, 0x6c, 0xc7, 0x8c, 0x77, 0x8a, 0xea, 0xc4, 0x22, 0xd5, 0x7a, - 0x97, 0x79, 0xac, 0x4b, 0x47, 0x23, 0xdb, 0x72, 0x87, 0x46, 0xfc, 0x5b, 0x00, 0xc7, 0x97, 0x4d, - 0xa2, 0x50, 0x82, 0xc9, 0x7b, 0x35, 0x62, 0x51, 0x74, 0x03, 0x06, 0x2a, 0x84, 0x2a, 0x05, 0x85, - 0x2a, 0x61, 0x10, 0x03, 0x33, 0xa1, 0x85, 0x73, 0x62, 0x67, 0x90, 0x32, 0xec, 0x1e, 0xb8, 0xd5, - 0x4d, 0x42, 0x95, 0x5c, 0xc3, 0x20, 0xb8, 0x65, 0x84, 0x72, 0xd0, 0x67, 0x19, 0x44, 0x0d, 0x7b, - 0x98, 0xb1, 0x24, 0xf6, 0x89, 0xb0, 0xc8, 0x81, 0xb2, 0x06, 0x51, 0x6d, 0xa0, 0xa5, 0xc9, 0xcf, - 0x76, 0xc6, 0x6c, 0x7b, 0xb1, 0xa4, 0xca, 0xf6, 0x2f, 0x66, 0x68, 0x8b, 0xc1, 0x27, 0xd7, 0xfd, - 0xfc, 0xe0, 0xf8, 0x5f, 0x00, 0x4e, 0xb8, 0x3e, 0x5b, 0x86, 0x5e, 0xb5, 0x08, 0x7a, 0xe3, 0x90, - 0xd3, 0xb1, 0x9e, 0x4e, 0xa7, 0x09, 0xed, 0xe1, 0x71, 0x06, 0x4e, 0x5a, 0x0d, 0x8b, 0x92, 0x8a, - 0xdc, 0x02, 0xf1, 0x32, 0x90, 0x0b, 0x5d, 0x20, 0x59, 0xa6, 0x75, 0x18, 0x6a, 0x82, 0x9b, 0xdf, - 0x74, 0x01, 0xef, 0x74, 0x5c, 0xc1, 0x5c, 0xdf, 0x2b, 0x48, 0x13, 0x3a, 0x04, 0xff, 0xdf, 0x01, - 0x9c, 0xc0, 0xc4, 0x28, 0x2b, 0x6a, 0x2b, 0x68, 0x6f, 0x1e, 0xe2, 0x7f, 0xbe, 0x27, 0x7f, 0xc7, - 0xac, 0xc7, 0x1d, 0x6c, 0x76, 0xb8, 0x3c, 0xdf, 0xd7, 0x65, 0x07, 0xa9, 0x8f, 0xdb, 0x48, 0x82, - 0x82, 0x49, 0x2c, 0xbd, 0x66, 0xaa, 0x44, 0xae, 0x13, 0xd3, 0xd2, 0xf4, 0x2a, 0xbb, 0xdb, 0xe0, - 0x92, 0xef, 0xd9, 0x2e, 0x00, 0x78, 0xd2, 0x95, 0xde, 0xe5, 0xc2, 0x76, 0x9e, 0x27, 0xe1, 0x64, - 0x8b, 0x26, 0x8f, 0x73, 0xfc, 0x0b, 0x00, 0x61, 0x9a, 0x50, 0x97, 0xf6, 0x59, 0x18, 0xac, 0x2a, - 0x15, 0x62, 0x19, 0x8a, 0x4a, 0x18, 0xef, 0x20, 0x7e, 0xb1, 0x81, 0x10, 0xf4, 0xd9, 0x0b, 0x46, - 0x29, 0x88, 0xd9, 0x33, 0x92, 0xa1, 0x7d, 0x22, 0x03, 0x93, 0x8b, 0xba, 0x59, 0x51, 0x28, 0x73, - 0x67, 0x62, 0xe1, 0xff, 0x83, 0x04, 0xc9, 0xf5, 0x63, 0x95, 0x59, 0x2e, 0xeb, 0x05, 0x82, 0x27, - 0xcc, 0x8e, 0xbd, 0xf8, 0x57, 0x7e, 0x18, 0x6a, 0xd3, 0x44, 0x19, 0x18, 0x52, 0x59, 0xae, 0xb2, - 0xe3, 0x9c, 0xeb, 0x15, 0x07, 0x2c, 0x0a, 0x87, 0x27, 0x86, 0x1c, 0xc2, 0x3e, 0x02, 0x61, 0x38, - 0x66, 0xf2, 0x5b, 0xe1, 0x88, 0xde, 0x01, 0xcb, 0xac, 0x33, 0x63, 0x70, 0xc8, 0x01, 0x61, 0x98, - 0xbd, 0xa2, 0xe4, 0x7b, 0x45, 0x94, 0x3a, 0xea, 0x6d, 0xf4, 0x38, 0xea, 0xed, 0xc4, 0xb1, 0xd4, - 0x9b, 0xff, 0xd8, 0xea, 0x0d, 0x6d, 0x40, 0xbf, 0x45, 0x15, 0x5a, 0xb3, 0xc2, 0x5f, 0x7e, 0x0e, - 0x62, 0xde, 0x99, 0xd0, 0x42, 0xa2, 0x2f, 0x6c, 0x96, 0x19, 0x70, 0x77, 0x97, 0xbc, 0x0f, 0x77, - 0x00, 0x76, 0x30, 0xd0, 0x1a, 0x3c, 0x69, 0x92, 0x22, 0x31, 0x4d, 0xad, 0x5a, 0x92, 0xf9, 0xff, - 0x88, 0x15, 0x0e, 0x30, 0xd8, 0xb3, 0x2f, 0x29, 0xd4, 0x22, 0x63, 0x2a, 0xb4, 0xcc, 0xf8, 0xbe, - 0x85, 0xee, 0xc2, 0x70, 0x81, 0x94, 0x09, 0x25, 0x05, 0x99, 0xcb, 0x48, 0xa1, 0x85, 0x18, 0x1c, - 0x00, 0x71, 0xca, 0xb1, 0xc6, 0x8e, 0xb1, 0x8b, 0xfb, 0x36, 0x9c, 0x2e, 0x68, 0x96, 0x92, 0x2f, - 0xf7, 0x02, 0x86, 0x03, 0x00, 0x9f, 0x71, 0xcd, 0xbb, 0x90, 0xdb, 0x4a, 0x7a, 0xdd, 0x17, 0x00, - 0x82, 0x27, 0xfe, 0x35, 0x80, 0xa1, 0x0d, 0xcd, 0x1a, 0xb0, 0x8c, 0xff, 0x03, 0xc7, 0xca, 0x4a, - 0x9e, 0x94, 0xe5, 0xa2, 0x56, 0xa6, 0xc4, 0x74, 0xca, 0x39, 0xc4, 0xf6, 0x56, 0xd9, 0x16, 0x3a, - 0x07, 0xc7, 0x4d, 0x62, 0xe8, 0x26, 0x95, 0x8b, 0x1a, 0x29, 0x17, 0xac, 0xb0, 0x37, 0xe6, 0x9d, - 0x09, 0xe2, 0x31, 0xbe, 0xb9, 0xca, 0xf6, 0xd0, 0x3c, 0x3c, 0xe5, 0x28, 0xf1, 0xa0, 0xb8, 0xba, - 0x3e, 0xa6, 0x8b, 0xb8, 0x8c, 0x87, 0x90, 0x5b, 0xc4, 0xf7, 0xfc, 0x50, 0xe0, 0x7e, 0xf2, 0x62, - 0x5e, 0xa3, 0xa4, 0x82, 0xa6, 0xa0, 0x9f, 0x92, 0xaa, 0x52, 0xa5, 0x2c, 0xdb, 0x82, 0xd8, 0x59, - 0x1d, 0xa1, 0x17, 0x09, 0xd0, 0x5b, 0xd3, 0x0a, 0xbc, 0x1d, 0x62, 0xfb, 0x11, 0xc5, 0x60, 0xa8, - 0x40, 0x2c, 0xd5, 0xd4, 0xd8, 0x7f, 0x74, 0x38, 0xc4, 0x99, 0xb6, 0x6d, 0xa1, 0x08, 0x0c, 0xb8, - 0xd7, 0x1c, 0x1e, 0x8b, 0x81, 0x99, 0x00, 0x6e, 0xad, 0xd1, 0x26, 0xf4, 0xb3, 0x4b, 0xe1, 0x94, - 0x42, 0x0b, 0xd7, 0xfa, 0x26, 0x6c, 0x37, 0x39, 0x71, 0x83, 0xd9, 0xa7, 0xaa, 0xd4, 0x6c, 0x60, - 0x07, 0x0c, 0x15, 0x60, 0xa8, 0x6d, 0x92, 0x72, 0x52, 0x61, 0x69, 0x78, 0xec, 0xe4, 0x0b, 0x10, - 0x7e, 0x40, 0x3b, 0x2c, 0xba, 0x0a, 0xa1, 0xbe, 0x5d, 0x25, 0xa6, 0x6c, 0x0f, 0x29, 0xe1, 0x20, - 0x2b, 0xe4, 0x48, 0xd7, 0x21, 0x77, 0x35, 0xb2, 0xed, 0x66, 0x5b, 0x90, 0x69, 0xdb, 0x3b, 0x1d, - 0xcd, 0x68, 0xfc, 0x38, 0x9a, 0xd1, 0xc4, 0x6b, 0x35, 0xa3, 0x34, 0x0c, 0x94, 0x08, 0x65, 0xbd, - 0xc4, 0x69, 0x6b, 0x43, 0x35, 0x24, 0x7c, 0xa2, 0xc4, 0x17, 0xe8, 0x0e, 0x84, 0x4e, 0xa6, 0x5a, - 0x84, 0x3a, 0xdd, 0xe2, 0x28, 0x4d, 0x28, 0xc8, 0x51, 0xb2, 0x84, 0x46, 0xae, 0xc2, 0x50, 0x5b, - 0x88, 0xed, 0x0c, 0xbc, 0x47, 0x1a, 0x4e, 0xb6, 0xda, 0x8f, 0xe8, 0x14, 0x1c, 0xad, 0x2b, 0xe5, - 0x9a, 0x9b, 0xa8, 0x7c, 0xb1, 0xe8, 0xb9, 0x02, 0x22, 0xd7, 0xa1, 0xd0, 0x1d, 0xc1, 0x61, 0xec, - 0xd7, 0x7d, 0x81, 0x51, 0xc1, 0x1f, 0xff, 0x08, 0xc0, 0xb1, 0xf6, 0xcc, 0x40, 0x69, 0x38, 0xaa, - 0x51, 0x52, 0xb1, 0xc2, 0xbc, 0xc9, 0x5e, 0x1a, 0x3a, 0xaf, 0x30, 0xb7, 0x47, 0xf3, 0xd0, 0xcf, - 0xe7, 0xea, 0xb0, 0x87, 0x21, 0x85, 0xbb, 0x90, 0x52, 0xb6, 0x90, 0x5d, 0xb0, 0xa3, 0x17, 0xbf, - 0x07, 0xc7, 0x57, 0x58, 0x2f, 0x3c, 0xfa, 0x38, 0x31, 0x03, 0x85, 0xa2, 0xa2, 0x95, 0x65, 0xad, - 0xd8, 0xea, 0x99, 0xac, 0x9e, 0x03, 0x78, 0xc2, 0xde, 0x5f, 0x2b, 0xba, 0xbd, 0x70, 0xf6, 0x0f, - 0x00, 0x4f, 0xf7, 0x9c, 0x20, 0x50, 0x04, 0x4e, 0xa5, 0x53, 0x39, 0x19, 0x67, 0x6f, 0xcb, 0xab, - 0x19, 0x7c, 0x33, 0x99, 0x93, 0x57, 0x52, 0xab, 0xc9, 0xcd, 0x8d, 0x9c, 0x30, 0x82, 0xfe, 0x05, - 0xa7, 0xbb, 0x64, 0xab, 0x19, 0x2c, 0x2f, 0xe3, 0x54, 0x32, 0x97, 0x12, 0x00, 0x8a, 0xc2, 0x48, - 0x0f, 0x31, 0x4e, 0xdd, 0xde, 0x48, 0x2e, 0xa7, 0x04, 0x0f, 0x9a, 0x86, 0xa7, 0xbb, 0xe4, 0xd9, - 0x5c, 0x32, 0xb7, 0x99, 0x15, 0xbc, 0xe8, 0x0c, 0xfc, 0x47, 0x97, 0x08, 0xa7, 0x92, 0x2b, 0x82, - 0x0f, 0x9d, 0x87, 0xb1, 0x43, 0x82, 0xd5, 0x14, 0xc6, 0x6b, 0xb7, 0xd2, 0x72, 0x66, 0x69, 0x3d, - 0xb5, 0x9c, 0xcb, 0x0a, 0xa3, 0x3d, 0xb4, 0x96, 0x70, 0xe6, 0xad, 0xd4, 0x2d, 0xae, 0x9c, 0xba, - 0xb5, 0x9c, 0xca, 0x0a, 0xfe, 0x85, 0xc7, 0x41, 0xe8, 0x4d, 0xde, 0x5e, 0x43, 0xfb, 0x00, 0xfa, - 0xf9, 0x44, 0x83, 0x86, 0x1c, 0x7d, 0x22, 0xd2, 0xc0, 0xfa, 0xce, 0x88, 0x58, 0x6f, 0x3e, 0x0a, - 0x27, 0x8a, 0xff, 0xbb, 0xaf, 0x26, 0x2c, 0xa2, 0xd6, 0x4c, 0x52, 0x21, 0xd6, 0x56, 0x22, 0xaf, - 0x58, 0x9a, 0x9a, 0xa8, 0x59, 0xc4, 0xb4, 0xdf, 0xf2, 0x12, 0x9a, 0x9e, 0x30, 0x4c, 0xfd, 0x7e, - 0x23, 0xb1, 0x6d, 0x6a, 0x94, 0x3c, 0xf8, 0xe9, 0xb7, 0x4f, 0x3c, 0x37, 0xe2, 0x8b, 0xce, 0x1b, - 0xaa, 0xd4, 0x0a, 0xb9, 0x25, 0xbd, 0xef, 0xf6, 0x04, 0xb1, 0xb5, 0xb9, 0x73, 0xf8, 0x5d, 0xcf, - 0x5a, 0x04, 0xb3, 0xe8, 0x17, 0x00, 0xbd, 0x69, 0x42, 0xd1, 0xc5, 0xc1, 0x06, 0x49, 0xce, 0x6e, - 0x6e, 0x98, 0xa9, 0x33, 0xbe, 0xfd, 0xf8, 0x3b, 0x0f, 0x68, 0x3e, 0x0a, 0x4b, 0xbd, 0xe9, 0x55, - 0xf4, 0xaa, 0x46, 0xf5, 0x2e, 0x86, 0x26, 0x51, 0x0a, 0x8c, 0xe0, 0x22, 0xba, 0xd2, 0x8b, 0xe0, - 0x2b, 0x79, 0x71, 0xf1, 0x0e, 0xfa, 0x19, 0x40, 0x9f, 0x5d, 0x77, 0x68, 0x6e, 0xc0, 0xf2, 0xe4, - 0xec, 0x12, 0x43, 0x15, 0x73, 0xdc, 0x78, 0x1d, 0x7a, 0x97, 0xd1, 0xa5, 0xa1, 0xe9, 0xa1, 0x3f, - 0x01, 0x3c, 0xe1, 0xcc, 0xc5, 0x68, 0xd8, 0x09, 0x3a, 0x32, 0x3f, 0xb8, 0x81, 0x43, 0xf0, 0x43, - 0x70, 0xb4, 0xdc, 0xcc, 0x44, 0xd6, 0x8f, 0x9e, 0x9b, 0x5d, 0x7a, 0x3b, 0x76, 0xae, 0x7e, 0x0f, - 0xa0, 0x9f, 0xb7, 0xbe, 0x01, 0xea, 0xb1, 0xa3, 0x47, 0x46, 0xa6, 0x44, 0xfe, 0x0d, 0x45, 0x74, - 0xbf, 0xa1, 0x88, 0xa9, 0x8a, 0x41, 0x1b, 0x71, 0x7a, 0x34, 0x6a, 0xd7, 0x66, 0x8f, 0x9c, 0x95, - 0x8b, 0x60, 0x36, 0xb2, 0xf5, 0x70, 0x17, 0x78, 0x7e, 0xdc, 0x05, 0x17, 0xfa, 0x91, 0xe0, 0xff, - 0x87, 0x4f, 0x77, 0x01, 0x68, 0xee, 0x82, 0xb9, 0x61, 0xfe, 0x43, 0x1f, 0xfc, 0x10, 0xf6, 0x08, - 0x60, 0xe9, 0x53, 0xf0, 0xe4, 0xfa, 0xe8, 0x32, 0xde, 0x5c, 0xd9, 0xd8, 0xdb, 0x8f, 0x8e, 0x3c, - 0xdd, 0x8f, 0x8e, 0x3c, 0xdf, 0x8f, 0x82, 0x0f, 0x9a, 0x51, 0xf0, 0x4d, 0x33, 0x0a, 0x1e, 0x37, - 0xa3, 0x60, 0xaf, 0x19, 0x05, 0xbf, 0x36, 0xa3, 0xe0, 0x59, 0x33, 0x3a, 0xf2, 0xbc, 0x19, 0x05, - 0x1f, 0x1f, 0x44, 0x47, 0x1e, 0x1e, 0x44, 0xc1, 0xde, 0x41, 0x74, 0xe4, 0xe9, 0x41, 0x74, 0xe4, - 0x9d, 0xcd, 0x92, 0x6e, 0xdc, 0x2b, 0x89, 0x75, 0xdd, 0x9e, 0x59, 0x4d, 0x45, 0xac, 0x59, 0x12, - 0x7b, 0xb0, 0x5f, 0xe3, 0xec, 0x8b, 0xa9, 0x6b, 0x05, 0x62, 0x26, 0x5c, 0xb1, 0x64, 0xe4, 0x4b, - 0xba, 0x44, 0xee, 0x53, 0xe7, 0xe3, 0xcd, 0xcb, 0x3e, 0x34, 0xe5, 0xfd, 0x2c, 0x12, 0x97, 0xff, - 0x0e, 0x00, 0x00, 0xff, 0xff, 0x5c, 0x8d, 0xe2, 0x43, 0x81, 0x13, 0x00, 0x00, + // 1628 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1a, 0xc7, + 0x1e, 0xf7, 0x00, 0x26, 0x30, 0xf8, 0x63, 0x33, 0x2f, 0x71, 0x30, 0x2f, 0x8f, 0x47, 0x49, 0x14, + 0x59, 0x8e, 0x59, 0x1c, 0xa7, 0xad, 0x12, 0xab, 0x49, 0x8a, 0x6d, 0x8c, 0xec, 0x38, 0xc1, 0x59, + 0x70, 0x54, 0xf5, 0xb2, 0x5a, 0x96, 0x01, 0x6f, 0x03, 0xec, 0x76, 0x67, 0xc0, 0x41, 0x95, 0xa5, + 0x28, 0xb7, 0xde, 0xda, 0xa6, 0x52, 0xab, 0xaa, 0x52, 0x5b, 0xa9, 0x95, 0x7a, 0xed, 0xad, 0x92, + 0x2f, 0xb9, 0x35, 0xca, 0xa1, 0xb2, 0xda, 0x4b, 0x8e, 0x0d, 0x6e, 0xa4, 0x1c, 0xa3, 0x5e, 0x7a, + 0xa8, 0x2a, 0x55, 0x3b, 0xb3, 0x4b, 0x00, 0x93, 0x00, 0xae, 0x73, 0x62, 0xe7, 0xff, 0xf1, 0x9b, + 0xff, 0xf7, 0xfe, 0x59, 0xf8, 0x7a, 0x0d, 0x13, 0x51, 0xd3, 0xe3, 0x44, 0xdd, 0xc4, 0x65, 0x25, + 0xae, 0x62, 0x93, 0x6a, 0x05, 0x4d, 0x55, 0x28, 0x96, 0xd5, 0x4d, 0x45, 0xab, 0xc4, 0x8d, 0x6a, + 0xae, 0xa4, 0xa9, 0xb2, 0x6a, 0x56, 0xf3, 0x8a, 0xa1, 0x89, 0x86, 0xa9, 0x53, 0x1d, 0xfd, 0x9f, + 0x6b, 0x89, 0x5c, 0x4b, 0xdc, 0xa7, 0x15, 0x8a, 0x15, 0x35, 0xba, 0x59, 0xcd, 0x89, 0xaa, 0x5e, + 0x8e, 0x17, 0xf5, 0xa2, 0x1e, 0x67, 0x7a, 0xb9, 0x6a, 0x81, 0x9d, 0xd8, 0x81, 0x3d, 0x71, 0xbc, + 0xd0, 0xc9, 0xa2, 0xae, 0x17, 0x4b, 0x38, 0xae, 0x18, 0x5a, 0x5c, 0xa9, 0x54, 0x74, 0xaa, 0x50, + 0x4d, 0xaf, 0x10, 0x9b, 0xfb, 0x5f, 0x9b, 0xdb, 0xc4, 0xc0, 0x65, 0x83, 0xd6, 0x6d, 0xe6, 0x4c, + 0x2f, 0x07, 0xf4, 0xdc, 0x7b, 0x58, 0xa5, 0xb6, 0xf4, 0xd9, 0x5e, 0xd2, 0xb4, 0x6e, 0x60, 0xe7, + 0xde, 0x50, 0xbb, 0x30, 0x36, 0x4d, 0xdd, 0x6c, 0xda, 0xd4, 0xce, 0xd3, 0x8d, 0x56, 0x83, 0x27, + 0xdb, 0x99, 0xad, 0x98, 0xd1, 0x76, 0x56, 0x0d, 0x13, 0x5c, 0xa9, 0x75, 0xa8, 0x47, 0x3a, 0x64, + 0x34, 0xbc, 0x25, 0xb7, 0x49, 0x44, 0x7f, 0x00, 0x70, 0x74, 0xd1, 0xc4, 0x0a, 0xc5, 0x12, 0x7e, + 0xbf, 0x8a, 0x09, 0x45, 0x57, 0xa0, 0xaf, 0x8c, 0xa9, 0x92, 0x57, 0xa8, 0x12, 0x04, 0x11, 0x30, + 0x15, 0x98, 0x3b, 0x25, 0xb6, 0x27, 0x29, 0xcd, 0xe2, 0xc0, 0xb5, 0xae, 0x61, 0xaa, 0x64, 0xeb, + 0x06, 0x96, 0x9a, 0x4a, 0x28, 0x0b, 0x3d, 0xc4, 0xc0, 0x6a, 0xd0, 0xc5, 0x94, 0xe3, 0x62, 0x8f, + 0x0c, 0x8b, 0x1c, 0x28, 0x63, 0x60, 0xd5, 0x02, 0x5a, 0x18, 0xff, 0x62, 0x7b, 0xc4, 0xd2, 0x17, + 0x8b, 0xaa, 0x6c, 0xfd, 0x4a, 0x0c, 0x6d, 0xde, 0xff, 0xf0, 0xb2, 0x97, 0x5f, 0x1c, 0xfd, 0x1b, + 0xc0, 0x31, 0xc7, 0x66, 0x62, 0xe8, 0x15, 0x82, 0xd1, 0x5b, 0xfb, 0x8c, 0x8e, 0x74, 0x35, 0x3a, + 0x85, 0x69, 0x17, 0x8b, 0xd3, 0x70, 0x9c, 0xd4, 0x09, 0xc5, 0x65, 0xb9, 0x09, 0xe2, 0x66, 0x20, + 0x67, 0x3a, 0x40, 0x32, 0x4c, 0x6a, 0x3f, 0xd4, 0x18, 0x57, 0xbf, 0xe6, 0x00, 0xde, 0x68, 0x0b, + 0xc1, 0x4c, 0xcf, 0x10, 0xa4, 0x30, 0x1d, 0xc0, 0xff, 0x27, 0x00, 0x8e, 0x49, 0xd8, 0x28, 0x29, + 0x6a, 0x33, 0x69, 0x6f, 0xef, 0xf3, 0xff, 0x74, 0x57, 0xff, 0x6d, 0xb5, 0x2e, 0x31, 0xd8, 0x68, + 0x33, 0x79, 0xb6, 0xa7, 0xc9, 0x36, 0x52, 0x0f, 0xb3, 0x51, 0x1c, 0x0a, 0x26, 0x26, 0x7a, 0xd5, + 0x54, 0xb1, 0x5c, 0xc3, 0x26, 0xd1, 0xf4, 0x0a, 0x8b, 0xad, 0x7f, 0xc1, 0xf3, 0x74, 0x07, 0x00, + 0x69, 0xdc, 0xe1, 0xde, 0xe4, 0xcc, 0x56, 0x3f, 0x8f, 0xc2, 0xf1, 0xa6, 0x9b, 0x3c, 0xcf, 0xd1, + 0xaf, 0x00, 0x84, 0x29, 0x4c, 0x1d, 0xb7, 0x4f, 0x42, 0x7f, 0x45, 0x29, 0x63, 0x62, 0x28, 0x2a, + 0x66, 0x7e, 0xfb, 0xa5, 0xe7, 0x04, 0x84, 0xa0, 0xc7, 0x3a, 0x30, 0x97, 0xfc, 0x12, 0x7b, 0x46, + 0x32, 0xb4, 0x6e, 0x64, 0x60, 0x72, 0x41, 0x37, 0xcb, 0x0a, 0x65, 0xe6, 0x8c, 0xcd, 0xbd, 0xd9, + 0x4f, 0x92, 0x1c, 0x3b, 0x96, 0x99, 0xe6, 0xa2, 0x9e, 0xc7, 0xd2, 0x98, 0xd9, 0x46, 0x8b, 0x7e, + 0xe3, 0x85, 0x81, 0x16, 0x49, 0x94, 0x86, 0x01, 0x95, 0xd5, 0x2a, 0xbb, 0xce, 0x0e, 0xaf, 0xd8, + 0x67, 0x53, 0xd8, 0x7e, 0x4a, 0x90, 0x43, 0x58, 0x57, 0x20, 0x09, 0x8e, 0x98, 0x3c, 0x2a, 0x1c, + 0xd1, 0xdd, 0x67, 0x9b, 0xb5, 0x57, 0x8c, 0x14, 0xb0, 0x41, 0x18, 0x66, 0xb7, 0x2c, 0x79, 0x5e, + 0x92, 0xa5, 0xb6, 0x7e, 0x1b, 0x3e, 0x8c, 0x7e, 0x3b, 0x72, 0x28, 0xfd, 0xe6, 0x3d, 0xb4, 0x7e, + 0x43, 0x6b, 0xd0, 0x4b, 0xa8, 0x42, 0xab, 0x24, 0xf8, 0xf5, 0x97, 0x20, 0xe2, 0x9e, 0x0a, 0xcc, + 0xc5, 0x7a, 0xc2, 0x66, 0x98, 0x02, 0x37, 0x77, 0xc1, 0x7d, 0x7f, 0x1b, 0x48, 0x36, 0x06, 0x5a, + 0x81, 0x47, 0x4d, 0x5c, 0xc0, 0xa6, 0xa9, 0x55, 0x8a, 0x32, 0x7f, 0x8f, 0x90, 0xa0, 0x8f, 0xc1, + 0x9e, 0x7c, 0x41, 0xa3, 0x16, 0x98, 0xa7, 0x42, 0x53, 0x8d, 0xd3, 0x09, 0xba, 0x09, 0x83, 0x79, + 0x5c, 0xc2, 0x14, 0xe7, 0x65, 0xce, 0xc3, 0xf9, 0x26, 0xa2, 0xbf, 0x0f, 0xc4, 0x09, 0x5b, 0x5b, + 0xb2, 0x95, 0x1d, 0xdc, 0x77, 0xe0, 0x64, 0x5e, 0x23, 0x4a, 0xae, 0xd4, 0x0d, 0x18, 0xf6, 0x01, + 0x7c, 0xc2, 0x51, 0xef, 0x40, 0x6e, 0x69, 0xe9, 0x55, 0x8f, 0x0f, 0x08, 0xae, 0xe8, 0x77, 0x00, + 0x06, 0xd6, 0x34, 0xd2, 0x67, 0x1b, 0xbf, 0x06, 0x47, 0x4a, 0x4a, 0x0e, 0x97, 0xe4, 0x82, 0x56, + 0xa2, 0xd8, 0xb4, 0xdb, 0x39, 0xc0, 0x68, 0xcb, 0x8c, 0x84, 0x4e, 0xc1, 0x51, 0x13, 0x1b, 0xba, + 0x49, 0xe5, 0x82, 0x86, 0x4b, 0x79, 0x12, 0x74, 0x47, 0xdc, 0x53, 0x7e, 0x69, 0x84, 0x13, 0x97, + 0x19, 0x0d, 0xcd, 0xc2, 0x63, 0xb6, 0x10, 0x4f, 0x8a, 0x23, 0xeb, 0x61, 0xb2, 0x88, 0xf3, 0x78, + 0x0a, 0xb9, 0x46, 0x74, 0xd7, 0x0b, 0x05, 0x6e, 0x27, 0x6f, 0xe6, 0x15, 0x8a, 0xcb, 0x68, 0x02, + 0x7a, 0x29, 0xae, 0x28, 0x15, 0xca, 0xaa, 0xcd, 0x2f, 0xd9, 0xa7, 0x03, 0xcc, 0x22, 0x01, 0xba, + 0xab, 0x5a, 0x9e, 0x8f, 0x43, 0xc9, 0x7a, 0x44, 0x11, 0x18, 0xc8, 0x63, 0xa2, 0x9a, 0x1a, 0x7b, + 0x47, 0x07, 0x03, 0xdc, 0xd3, 0x16, 0x12, 0x0a, 0x41, 0x9f, 0x13, 0xe6, 0xe0, 0x48, 0x04, 0x4c, + 0xf9, 0xa4, 0xe6, 0x19, 0x6d, 0x40, 0x2f, 0x0b, 0x0a, 0x77, 0x29, 0x30, 0x77, 0xa9, 0x67, 0xc1, + 0x76, 0x3a, 0x27, 0xae, 0x31, 0xfd, 0x64, 0x85, 0x9a, 0x75, 0xc9, 0x06, 0x43, 0x79, 0x18, 0x68, + 0xd9, 0xa4, 0xec, 0x52, 0x58, 0x18, 0x1c, 0x3b, 0xf1, 0x1c, 0x84, 0x5f, 0xd0, 0x0a, 0x8b, 0x2e, + 0x42, 0xa8, 0x6f, 0x55, 0xb0, 0x29, 0x5b, 0x4b, 0x4a, 0xd0, 0xcf, 0x1a, 0x39, 0xd4, 0x71, 0xc9, + 0x4d, 0x0d, 0x6f, 0x39, 0xd5, 0xe6, 0x67, 0xd2, 0x16, 0xa5, 0x6d, 0x18, 0x8d, 0x1e, 0xc6, 0x30, + 0x1a, 0xfb, 0x57, 0xc3, 0x28, 0x05, 0x7d, 0x45, 0x4c, 0xd9, 0x2c, 0xb1, 0xc7, 0xda, 0x40, 0x03, + 0x49, 0x3a, 0x52, 0xe4, 0x07, 0x74, 0x03, 0x42, 0xbb, 0x52, 0x09, 0xa6, 0xf6, 0xb4, 0x38, 0xc8, + 0x10, 0xf2, 0x73, 0x94, 0x0c, 0xa6, 0xa1, 0x8b, 0x30, 0xd0, 0x92, 0x62, 0xab, 0x02, 0x6f, 0xe1, + 0xba, 0x5d, 0xad, 0xd6, 0x23, 0x3a, 0x06, 0x87, 0x6b, 0x4a, 0xa9, 0xea, 0x14, 0x2a, 0x3f, 0xcc, + 0xbb, 0x2e, 0x80, 0xd0, 0x65, 0x28, 0x74, 0x66, 0x70, 0x10, 0xfd, 0x55, 0x8f, 0x6f, 0x58, 0xf0, + 0x46, 0x3f, 0x04, 0x70, 0xa4, 0xb5, 0x32, 0x50, 0x0a, 0x0e, 0x6b, 0x14, 0x97, 0x49, 0x90, 0x0f, + 0xd9, 0x73, 0x03, 0xd7, 0x95, 0xc4, 0xf5, 0xd1, 0x2c, 0xf4, 0xf2, 0xbd, 0x3a, 0xe8, 0x62, 0x48, + 0xc1, 0x0e, 0xa4, 0xa4, 0xc5, 0x64, 0x01, 0xb6, 0xe5, 0xa2, 0xb7, 0xe0, 0xe8, 0x12, 0x9b, 0x85, + 0x07, 0x5f, 0x27, 0xa6, 0xa0, 0x50, 0x50, 0xb4, 0x92, 0xac, 0x15, 0x9a, 0x33, 0x93, 0xf5, 0xb3, + 0x4f, 0x1a, 0xb3, 0xe8, 0x2b, 0x05, 0x67, 0x16, 0x4e, 0xff, 0x01, 0xe0, 0xf1, 0xae, 0x1b, 0x04, + 0x0a, 0xc1, 0x89, 0x54, 0x32, 0x2b, 0x4b, 0x99, 0x75, 0x79, 0x39, 0x2d, 0x5d, 0x4b, 0x64, 0xe5, + 0xa5, 0xe4, 0x72, 0x62, 0x63, 0x2d, 0x2b, 0x0c, 0xa1, 0xff, 0xc1, 0xc9, 0x0e, 0xde, 0x72, 0x5a, + 0x92, 0x17, 0xa5, 0x64, 0x22, 0x9b, 0x14, 0x00, 0x0a, 0xc3, 0x50, 0x17, 0xb6, 0x94, 0x5c, 0x5f, + 0x4b, 0x2c, 0x26, 0x05, 0x17, 0x9a, 0x84, 0xc7, 0x3b, 0xf8, 0x99, 0x6c, 0x22, 0xbb, 0x91, 0x11, + 0xdc, 0xe8, 0x04, 0xfc, 0x4f, 0x07, 0x4b, 0x4a, 0x26, 0x96, 0x04, 0x0f, 0x3a, 0x0d, 0x23, 0xfb, + 0x18, 0xcb, 0x49, 0x49, 0x5a, 0xb9, 0x9e, 0x92, 0xd3, 0x0b, 0xab, 0xc9, 0xc5, 0x6c, 0x46, 0x18, + 0xee, 0x22, 0xb5, 0x20, 0xa5, 0xaf, 0x26, 0xaf, 0x73, 0xe1, 0xe4, 0xf5, 0xc5, 0x64, 0x46, 0xf0, + 0xce, 0x3d, 0x85, 0xd0, 0x9d, 0x58, 0x5f, 0x41, 0x77, 0x5c, 0xd0, 0xcb, 0x37, 0x1a, 0x34, 0xe0, + 0xea, 0x13, 0x8a, 0xf7, 0x2d, 0x6f, 0xaf, 0x88, 0x9f, 0x82, 0xc6, 0x4f, 0xc1, 0xab, 0x85, 0x37, + 0x6e, 0xab, 0x31, 0x82, 0xd5, 0xaa, 0x89, 0xcb, 0x98, 0x6c, 0xc6, 0x72, 0x0a, 0xd1, 0xd4, 0x58, + 0x95, 0x60, 0x73, 0xa6, 0x93, 0x45, 0xa8, 0x52, 0xc9, 0x2b, 0x66, 0x9e, 0x73, 0x6b, 0x98, 0xc4, + 0x34, 0x3d, 0x66, 0x98, 0xfa, 0xed, 0x7a, 0x6c, 0xcb, 0xd4, 0x28, 0xbe, 0xfb, 0xeb, 0xef, 0xf7, + 0x5c, 0x57, 0xa2, 0xf3, 0xf6, 0x1f, 0xd8, 0x78, 0xb3, 0x22, 0x48, 0xfc, 0x03, 0x67, 0x64, 0x88, + 0x4d, 0xe2, 0xf6, 0xfe, 0xbf, 0x82, 0x64, 0x1e, 0x4c, 0xa3, 0xbf, 0x00, 0x74, 0xa7, 0x30, 0x45, + 0x67, 0xfb, 0xdb, 0x33, 0xb9, 0xf3, 0x33, 0x83, 0x2c, 0xa5, 0xd1, 0xcf, 0xc1, 0x83, 0x1f, 0x5d, + 0x96, 0xf7, 0xeb, 0xdd, 0xbd, 0x2f, 0xeb, 0x15, 0x8d, 0xea, 0x2f, 0x09, 0x80, 0x23, 0xd0, 0x16, + 0x03, 0x13, 0x2b, 0x79, 0x16, 0x82, 0x79, 0x74, 0xa1, 0x5b, 0x08, 0x5e, 0xea, 0x39, 0x67, 0x6f, + 0xa3, 0x3f, 0x01, 0xf4, 0x58, 0x8d, 0x8b, 0x66, 0xfa, 0xec, 0x6f, 0xee, 0x7f, 0x6c, 0xa0, 0x69, + 0x10, 0xfd, 0xf8, 0xd5, 0x06, 0xe0, 0x3c, 0x3a, 0x37, 0x70, 0x00, 0xd0, 0x3d, 0x17, 0x3c, 0x62, + 0xaf, 0xde, 0x68, 0xd0, 0x25, 0x3d, 0x34, 0xdb, 0xbf, 0x82, 0x1d, 0x82, 0x6f, 0x5f, 0x49, 0xf5, + 0xa7, 0x43, 0xab, 0x07, 0xaf, 0xfe, 0x0e, 0xb9, 0x6d, 0xab, 0x1b, 0x9e, 0x00, 0xe8, 0xe5, 0xb3, + 0xb7, 0x8f, 0x81, 0xd0, 0x36, 0xa4, 0x43, 0x13, 0x22, 0xff, 0x88, 0x23, 0x3a, 0x1f, 0x71, 0xc4, + 0x64, 0xd9, 0xa0, 0xf5, 0xe8, 0x27, 0xaf, 0xc4, 0xf3, 0x4b, 0xd3, 0x07, 0x2e, 0xfa, 0x79, 0x30, + 0x1d, 0xda, 0xbc, 0xbf, 0x03, 0x5c, 0xbf, 0xec, 0x80, 0x33, 0xbd, 0x7c, 0xe4, 0xef, 0xeb, 0x47, + 0x3b, 0x00, 0x34, 0x76, 0xc0, 0xcc, 0x20, 0xef, 0xf8, 0xbb, 0x3f, 0x07, 0x5d, 0x02, 0x58, 0xf8, + 0x0c, 0x3c, 0xbc, 0x3c, 0xbc, 0x28, 0x6d, 0x2c, 0xad, 0xed, 0x3e, 0x0e, 0x0f, 0x3d, 0x7a, 0x1c, + 0x1e, 0x7a, 0xf6, 0x38, 0x0c, 0xee, 0x34, 0xc2, 0xe0, 0xfb, 0x46, 0x18, 0x3c, 0x68, 0x84, 0xc1, + 0x6e, 0x23, 0x0c, 0x7e, 0x6b, 0x84, 0xc1, 0xd3, 0x46, 0x78, 0xe8, 0x59, 0x23, 0x0c, 0x3e, 0xda, + 0x0b, 0x0f, 0xdd, 0xdf, 0x0b, 0x83, 0xdd, 0xbd, 0xf0, 0xd0, 0xa3, 0xbd, 0xf0, 0xd0, 0xbb, 0x1b, + 0x45, 0xdd, 0xb8, 0x55, 0x14, 0x6b, 0xba, 0xb5, 0x53, 0x9b, 0x8a, 0x58, 0x25, 0x71, 0xf6, 0x60, + 0xfd, 0xcd, 0xb4, 0x02, 0x53, 0xd3, 0xf2, 0xd8, 0x8c, 0x39, 0xec, 0xb8, 0x91, 0x2b, 0xea, 0x71, + 0x7c, 0x9b, 0xda, 0x1f, 0x97, 0x5e, 0xf4, 0x21, 0x2c, 0xe7, 0x65, 0x89, 0x3a, 0xff, 0x4f, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x89, 0x01, 0xd0, 0x6c, 0x21, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/certificate_chain/public_crudapi.vesapi.go b/pbgo/extschema/schema/certificate_chain/public_crudapi.vesapi.go index 70d86b177..90c00bae5 100644 --- a/pbgo/extschema/schema/certificate_chain/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/certificate_chain/public_crudapi.vesapi.go @@ -2827,10 +2827,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2887,10 +2891,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2993,10 +3001,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/certified_hardware/crudapi/api.vesapi.go b/pbgo/extschema/schema/certified_hardware/crudapi/api.vesapi.go index 3dd18f337..e0ed80cd8 100644 --- a/pbgo/extschema/schema/certified_hardware/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/certified_hardware/crudapi/api.vesapi.go @@ -3465,10 +3465,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/certified_hardware/object.pb.go b/pbgo/extschema/schema/certified_hardware/object.pb.go index 09f6159f3..27d8953e5 100644 --- a/pbgo/extschema/schema/certified_hardware/object.pb.go +++ b/pbgo/extschema/schema/certified_hardware/object.pb.go @@ -247,47 +247,48 @@ func init() { } var fileDescriptor_d288f52fda068219 = []byte{ - // 639 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x4f, 0x6b, 0xd4, 0x4e, - 0x18, 0xc7, 0x37, 0xbb, 0xcb, 0xb6, 0x4c, 0x4b, 0x7f, 0x25, 0x3f, 0x84, 0x58, 0x75, 0x28, 0xeb, - 0xa5, 0x48, 0x93, 0x48, 0xc5, 0x43, 0x4b, 0x59, 0xa1, 0x55, 0xab, 0xd0, 0x22, 0x6e, 0xab, 0x07, - 0x2f, 0xcb, 0x64, 0xf2, 0x24, 0x1d, 0xdd, 0x64, 0xc2, 0xcc, 0x64, 0xdb, 0x1e, 0x04, 0xf1, 0x15, - 0x78, 0xf5, 0x1d, 0x88, 0xaf, 0xc2, 0x0a, 0x82, 0x78, 0x5a, 0x7a, 0xea, 0xd1, 0x66, 0x2f, 0x3d, - 0xf6, 0x05, 0x78, 0x90, 0x4e, 0x36, 0xa5, 0xdb, 0x3f, 0xae, 0x60, 0x6f, 0x93, 0x79, 0xbe, 0xdf, - 0x4f, 0xe6, 0x99, 0xe7, 0x99, 0x07, 0xd9, 0x1d, 0x90, 0x0e, 0xe3, 0xae, 0xa4, 0x9b, 0x10, 0x11, - 0x97, 0x82, 0x50, 0x2c, 0x60, 0xe0, 0xb7, 0x36, 0x89, 0xf0, 0xb7, 0x88, 0x00, 0x97, 0x7b, 0xaf, - 0x81, 0x2a, 0x27, 0x11, 0x5c, 0x71, 0x73, 0x3a, 0x97, 0x3b, 0xb9, 0xdc, 0x39, 0x2f, 0x9f, 0xb2, - 0x43, 0xa6, 0x36, 0x53, 0xcf, 0xa1, 0x3c, 0x72, 0x43, 0x1e, 0x72, 0x57, 0x1b, 0xbd, 0x34, 0xd0, - 0x5f, 0xfa, 0x43, 0xaf, 0x72, 0xe0, 0xd4, 0xec, 0xd0, 0xff, 0xab, 0x9d, 0x04, 0x64, 0x5f, 0x7d, - 0x63, 0x50, 0xcd, 0x13, 0xc5, 0x78, 0x5c, 0x04, 0xaf, 0x0f, 0x06, 0x4f, 0xfb, 0xea, 0x83, 0xa1, - 0x0e, 0x48, 0x88, 0x3b, 0x83, 0xf6, 0x7a, 0xb7, 0x8a, 0x6a, 0xcf, 0x74, 0xae, 0xe6, 0x3c, 0x1a, - 0x8d, 0x40, 0x11, 0x9f, 0x28, 0x62, 0x19, 0xd3, 0xc6, 0xcc, 0xd8, 0xdc, 0x2d, 0x67, 0x30, 0xf1, - 0x5c, 0xb8, 0x06, 0x8a, 0x6c, 0xec, 0x24, 0xd0, 0x3c, 0x91, 0x9b, 0xab, 0xe8, 0x3f, 0xb9, 0x23, - 0x15, 0x44, 0xad, 0x13, 0x42, 0x59, 0x13, 0x6e, 0x9f, 0x21, 0xac, 0x6b, 0xd5, 0x19, 0xce, 0x44, - 0xee, 0x5d, 0x2b, 0x68, 0x0d, 0x54, 0x95, 0x09, 0x50, 0xab, 0xa2, 0x11, 0x77, 0x9c, 0x61, 0xb7, - 0xef, 0xac, 0x27, 0x40, 0x35, 0x49, 0xfb, 0x16, 0x7e, 0x95, 0xdf, 0x3f, 0xa8, 0xe5, 0xcc, 0xaf, - 0xbb, 0x56, 0x79, 0xd2, 0xd8, 0xdb, 0xb5, 0x0e, 0xcb, 0xe8, 0x11, 0xaa, 0xac, 0x80, 0x32, 0x1b, - 0xc1, 0xfd, 0x6d, 0x6a, 0x4b, 0xa6, 0xc0, 0x8e, 0x48, 0x4c, 0x42, 0x88, 0x20, 0x56, 0xb6, 0x47, - 0x24, 0xa3, 0x76, 0xc4, 0x63, 0xa6, 0xb8, 0x98, 0x3d, 0x2e, 0xb8, 0xcd, 0xb8, 0xcd, 0xe2, 0x40, - 0x10, 0xa9, 0x44, 0x4a, 0x55, 0x2a, 0xc0, 0x16, 0x40, 0x7c, 0xb4, 0x82, 0x46, 0x9a, 0x90, 0xb4, - 0x09, 0x05, 0x73, 0xf1, 0x0f, 0xa8, 0x54, 0xc2, 0xa5, 0x9c, 0x2d, 0xc1, 0x14, 0xa0, 0xc7, 0xa8, - 0xb6, 0x2c, 0x80, 0xa8, 0x2b, 0xe0, 0x3c, 0x84, 0x36, 0x5c, 0x01, 0xa7, 0xba, 0xca, 0xe4, 0x3f, - 0x5f, 0x50, 0xfd, 0x05, 0x1a, 0x2d, 0x0a, 0x62, 0x3e, 0x45, 0x23, 0x21, 0x6d, 0xe9, 0x6a, 0xe6, - 0x0d, 0x71, 0x77, 0x78, 0x35, 0x57, 0xda, 0xdc, 0x23, 0xed, 0x93, 0x9a, 0xd6, 0x42, 0x7a, 0xbc, - 0xae, 0x7f, 0x2b, 0xa3, 0xf1, 0x75, 0x45, 0x54, 0x2a, 0xff, 0xba, 0x5f, 0x73, 0xf9, 0x05, 0xfd, - 0xba, 0x81, 0xc6, 0xf2, 0x07, 0xde, 0x12, 0x10, 0x48, 0xab, 0x3c, 0x5d, 0x99, 0x19, 0x9b, 0xbb, - 0x79, 0x61, 0xb7, 0x37, 0x21, 0x38, 0x36, 0x2f, 0x5d, 0xfb, 0xfc, 0xd6, 0x3c, 0x7f, 0xd8, 0x26, - 0xe2, 0x85, 0x4a, 0x9a, 0x8b, 0x08, 0x51, 0x1e, 0xfb, 0x4c, 0xbf, 0x2f, 0xab, 0x72, 0x21, 0x74, - 0xb9, 0x10, 0xe8, 0x13, 0x9d, 0xd2, 0x9b, 0xcf, 0x51, 0x4d, 0xea, 0xf3, 0x5a, 0x55, 0x9d, 0xcc, - 0xfc, 0xf0, 0x9b, 0x5a, 0x2e, 0xb6, 0x9e, 0xf4, 0x77, 0xf2, 0x84, 0x9b, 0x7d, 0xd0, 0xc2, 0xff, - 0x7b, 0x8d, 0x49, 0x34, 0x81, 0xc6, 0x8b, 0xbc, 0x9d, 0x94, 0xf9, 0x4b, 0x1f, 0x8d, 0x1f, 0x8d, - 0x72, 0x73, 0xb5, 0x7b, 0x80, 0x4b, 0xfb, 0x07, 0xb8, 0x74, 0x74, 0x80, 0x8d, 0x77, 0x19, 0x36, - 0x3e, 0x65, 0xd8, 0xf8, 0x9e, 0x61, 0xa3, 0x9b, 0x61, 0x63, 0x3f, 0xc3, 0xc6, 0xcf, 0x0c, 0x1b, - 0x87, 0x19, 0x2e, 0x1d, 0x65, 0xd8, 0xf8, 0xd0, 0xc3, 0xa5, 0x2f, 0x3d, 0x6c, 0x74, 0x7b, 0xb8, - 0xb4, 0xdf, 0xc3, 0xa5, 0x57, 0x2f, 0x43, 0x9e, 0xbc, 0x09, 0x9d, 0x0e, 0x6f, 0x2b, 0x10, 0x82, - 0x38, 0xa9, 0x74, 0xf5, 0x22, 0xe0, 0x22, 0xb2, 0x13, 0xc1, 0x3b, 0xcc, 0x07, 0x61, 0x17, 0x61, - 0x37, 0xf1, 0x42, 0xee, 0xc2, 0xb6, 0xea, 0x0f, 0xa2, 0x4b, 0xa7, 0x9e, 0x57, 0xd3, 0x43, 0xe9, - 0xde, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x88, 0x60, 0x23, 0x0f, 0xa0, 0x05, 0x00, 0x00, + // 655 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0xc1, 0x4f, 0xd4, 0x4e, + 0x14, 0xc7, 0xb7, 0xbb, 0x9b, 0x85, 0x0c, 0x84, 0x1f, 0xe9, 0x2f, 0x26, 0x15, 0x75, 0xb2, 0x59, + 0x2f, 0xc4, 0xd0, 0xd6, 0x60, 0x3c, 0x40, 0x0c, 0x26, 0x60, 0x82, 0x26, 0x10, 0xe3, 0x82, 0x1e, + 0xbc, 0xac, 0xd3, 0xe9, 0x6b, 0x19, 0xd8, 0x76, 0x9a, 0x99, 0xe9, 0x02, 0x07, 0x13, 0xe3, 0xd1, + 0x93, 0x57, 0xaf, 0x9e, 0x8c, 0x7f, 0x80, 0x67, 0x31, 0x31, 0x31, 0x9e, 0x08, 0x27, 0x8e, 0xd2, + 0xbd, 0x78, 0xe4, 0x4f, 0x30, 0x4c, 0xb7, 0xc8, 0xc2, 0xea, 0x7a, 0xe2, 0x36, 0x9d, 0xf7, 0x79, + 0xdf, 0xef, 0xbc, 0xe9, 0x9b, 0x87, 0xec, 0x0e, 0x48, 0x87, 0x71, 0x57, 0xd2, 0x0d, 0x88, 0x88, + 0x4b, 0x41, 0x28, 0x16, 0x30, 0xf0, 0x5b, 0x1b, 0x44, 0xf8, 0xdb, 0x44, 0x80, 0xcb, 0xbd, 0x4d, + 0xa0, 0xca, 0x49, 0x04, 0x57, 0xdc, 0xac, 0xe7, 0xb8, 0x93, 0xe3, 0xce, 0x45, 0x7c, 0xca, 0x0e, + 0x99, 0xda, 0x48, 0x3d, 0x87, 0xf2, 0xc8, 0x0d, 0x79, 0xc8, 0x5d, 0x9d, 0xe8, 0xa5, 0x81, 0xfe, + 0xd2, 0x1f, 0x7a, 0x95, 0x0b, 0x4e, 0xcd, 0x0c, 0xf5, 0x57, 0xbb, 0x09, 0xc8, 0x1e, 0x7d, 0xad, + 0x9f, 0xe6, 0x89, 0x62, 0x3c, 0x2e, 0x82, 0x57, 0xfb, 0x83, 0x67, 0xf3, 0x1a, 0xfd, 0xa1, 0x0e, + 0x48, 0x88, 0x3b, 0xfd, 0xe9, 0x8d, 0x37, 0x35, 0x54, 0x7b, 0xac, 0x6b, 0x35, 0xe7, 0xd0, 0x68, + 0x04, 0x8a, 0xf8, 0x44, 0x11, 0xcb, 0xa8, 0x1b, 0xd3, 0x63, 0xb3, 0x37, 0x9c, 0xfe, 0xc2, 0x73, + 0x70, 0x15, 0x14, 0x59, 0xdf, 0x4d, 0xa0, 0x79, 0x8a, 0x9b, 0x2b, 0xe8, 0x3f, 0xb9, 0x2b, 0x15, + 0x44, 0xad, 0x53, 0x85, 0xb2, 0x56, 0xb8, 0x79, 0x4e, 0x61, 0x4d, 0x53, 0xe7, 0x74, 0x26, 0xf2, + 0xdc, 0xd5, 0x42, 0x6d, 0x01, 0x55, 0x65, 0x02, 0xd4, 0xaa, 0x68, 0x89, 0x5b, 0xce, 0xb0, 0xdb, + 0x77, 0xd6, 0x12, 0xa0, 0x5a, 0x49, 0xe7, 0xcd, 0x7f, 0xaa, 0xbe, 0xbe, 0x5f, 0xcb, 0x35, 0xbf, + 0xec, 0x59, 0xe5, 0x49, 0xe3, 0x60, 0xcf, 0x7a, 0x5f, 0x45, 0x6d, 0x54, 0x59, 0x06, 0x65, 0x42, + 0x70, 0x77, 0x87, 0xda, 0x92, 0x29, 0xb0, 0x23, 0x12, 0x93, 0x10, 0x22, 0x88, 0x95, 0xed, 0x11, + 0xc9, 0xa8, 0x1d, 0xf1, 0x98, 0x29, 0x2e, 0x66, 0xea, 0x03, 0x19, 0xa9, 0x48, 0xec, 0x13, 0xe1, + 0xff, 0xc6, 0x3a, 0x20, 0x6d, 0xc6, 0x6d, 0x16, 0x07, 0x82, 0x48, 0x25, 0x52, 0xaa, 0x52, 0x01, + 0xb6, 0x00, 0xe2, 0xa3, 0x2d, 0x34, 0xd2, 0x84, 0xa4, 0x4d, 0x28, 0x98, 0x2f, 0xfe, 0xe2, 0x98, + 0x4a, 0x18, 0x6a, 0x97, 0x33, 0x83, 0xbd, 0xb6, 0x05, 0x53, 0x80, 0x36, 0x51, 0x6d, 0x49, 0x00, + 0x51, 0x97, 0xe4, 0xf5, 0x00, 0xda, 0x70, 0x29, 0x5e, 0x11, 0xaa, 0xae, 0x30, 0x79, 0x59, 0xff, + 0xac, 0xf1, 0x14, 0x8d, 0x16, 0xad, 0x64, 0x3e, 0x42, 0x23, 0x21, 0x6d, 0xe9, 0x3e, 0xcc, 0x5b, + 0xf9, 0xf6, 0xf0, 0x3e, 0x5c, 0x6e, 0x73, 0x8f, 0xb4, 0x4f, 0xbb, 0xb1, 0x16, 0xd2, 0x93, 0x75, + 0xe3, 0x6b, 0x19, 0x8d, 0xaf, 0x29, 0xa2, 0x52, 0xf9, 0xcf, 0x2f, 0x2d, 0xc7, 0x07, 0xbc, 0xb4, + 0x75, 0x34, 0x96, 0x8f, 0xa6, 0x96, 0x80, 0x40, 0x5a, 0xe5, 0x7a, 0x65, 0x7a, 0x6c, 0xf6, 0xfa, + 0xc0, 0x77, 0xda, 0x84, 0xe0, 0x24, 0x79, 0xf1, 0xca, 0xc7, 0x97, 0xe6, 0xc5, 0xc3, 0x36, 0x11, + 0x2f, 0x28, 0x69, 0xde, 0x43, 0x88, 0xf2, 0xd8, 0x67, 0x7a, 0x32, 0x58, 0x95, 0x81, 0xa2, 0x4b, + 0x05, 0xa0, 0x4f, 0x74, 0x86, 0x37, 0x9f, 0xa0, 0x9a, 0xd4, 0xe7, 0xb5, 0xaa, 0xba, 0x98, 0xb9, + 0xe1, 0x37, 0xb5, 0x54, 0x6c, 0x3d, 0xec, 0xed, 0xe4, 0x05, 0x37, 0x7b, 0x42, 0xf3, 0xff, 0x1f, + 0x2c, 0x4c, 0xa2, 0x09, 0x34, 0x5e, 0xd4, 0xed, 0xa4, 0xcc, 0x5f, 0x7c, 0x67, 0x7c, 0x5f, 0x28, + 0x37, 0x57, 0xf6, 0x8f, 0x70, 0xe9, 0xf0, 0x08, 0x97, 0x8e, 0x8f, 0xb0, 0xf1, 0x2a, 0xc3, 0xc6, + 0x87, 0x0c, 0x1b, 0xdf, 0x32, 0x6c, 0xec, 0x67, 0xd8, 0x38, 0xcc, 0xb0, 0xf1, 0x23, 0xc3, 0xc6, + 0xcf, 0x0c, 0x97, 0x8e, 0x33, 0x6c, 0xbc, 0xed, 0xe2, 0xd2, 0xe7, 0x2e, 0x36, 0xf6, 0xbb, 0xb8, + 0x74, 0xd8, 0xc5, 0xa5, 0xe7, 0xcf, 0x42, 0x9e, 0x6c, 0x85, 0x4e, 0x87, 0xb7, 0x15, 0x08, 0x41, + 0x9c, 0x54, 0xba, 0x7a, 0x11, 0x70, 0x11, 0xd9, 0x89, 0xe0, 0x1d, 0xe6, 0x83, 0xb0, 0x8b, 0xb0, + 0x9b, 0x78, 0x21, 0x77, 0x61, 0x47, 0xf5, 0x46, 0xe8, 0x1f, 0xe7, 0xb5, 0x57, 0xd3, 0xe3, 0xf4, + 0xce, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5e, 0xb5, 0x12, 0x0b, 0x5a, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/certified_hardware/public_crudapi.pb.go b/pbgo/extschema/schema/certified_hardware/public_crudapi.pb.go index cc06a04ee..5559c45b6 100644 --- a/pbgo/extschema/schema/certified_hardware/public_crudapi.pb.go +++ b/pbgo/extschema/schema/certified_hardware/public_crudapi.pb.go @@ -708,88 +708,89 @@ func init() { } var fileDescriptor_deb0afebc3c6a29e = []byte{ - // 1293 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xcf, 0x6f, 0x1b, 0x45, + // 1306 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x57, 0xcf, 0x6f, 0x1b, 0x45, 0x1b, 0xce, 0xd8, 0x8e, 0x1b, 0x8f, 0xd3, 0xc4, 0xdf, 0x7c, 0xfd, 0xb1, 0xf5, 0x57, 0xad, 0xfc, - 0x19, 0x04, 0x11, 0xea, 0xda, 0x95, 0xa1, 0x82, 0x16, 0x88, 0x94, 0xa4, 0x4e, 0x9a, 0x92, 0x34, - 0xd5, 0xda, 0x8d, 0x10, 0x97, 0x65, 0xbd, 0xfb, 0xda, 0xdd, 0xd6, 0xde, 0x59, 0x66, 0xc6, 0x4e, - 0x23, 0x14, 0x81, 0x7a, 0xe0, 0xc0, 0x09, 0x09, 0x71, 0x41, 0x1c, 0x7a, 0x41, 0xe2, 0xce, 0x05, - 0x29, 0x97, 0xde, 0xa8, 0x7a, 0x40, 0x15, 0x70, 0xe8, 0x91, 0x3a, 0x08, 0x55, 0xe2, 0xd2, 0xbf, - 0x00, 0xa1, 0x9d, 0x59, 0xbb, 0xb6, 0x1b, 0x94, 0xb8, 0xf4, 0xe4, 0x99, 0xf7, 0x79, 0x9f, 0x67, - 0xe7, 0xc7, 0x3b, 0x8f, 0x5f, 0x7c, 0xae, 0x03, 0xbc, 0xe0, 0xd1, 0x22, 0x77, 0xae, 0x43, 0xcb, - 0x2e, 0x3a, 0xc0, 0x84, 0x57, 0xf7, 0xc0, 0xb5, 0xae, 0xdb, 0xcc, 0xdd, 0xb2, 0x19, 0x14, 0x83, - 0x76, 0xad, 0xe9, 0x39, 0x96, 0xc3, 0xda, 0xae, 0x1d, 0x78, 0x85, 0x80, 0x51, 0x41, 0x49, 0x4e, - 0xd1, 0x0a, 0x8a, 0x56, 0x78, 0x96, 0x96, 0x35, 0x1a, 0x9e, 0xb8, 0xde, 0xae, 0x15, 0x1c, 0xda, - 0x2a, 0x36, 0x68, 0x83, 0x16, 0x25, 0xb1, 0xd6, 0xae, 0xcb, 0x99, 0x9c, 0xc8, 0x91, 0x12, 0xcc, - 0x9e, 0x6e, 0x50, 0xda, 0x68, 0x42, 0xd1, 0x0e, 0xbc, 0xa2, 0xed, 0xfb, 0x54, 0xd8, 0xc2, 0xa3, - 0x3e, 0x8f, 0xd0, 0xff, 0x45, 0x68, 0x5f, 0x03, 0x5a, 0x81, 0xd8, 0x8e, 0x40, 0xe3, 0xc0, 0x2d, - 0xd0, 0xda, 0x0d, 0x70, 0x44, 0x94, 0x7e, 0xe6, 0xc0, 0x74, 0xb1, 0x1d, 0x40, 0xef, 0xcb, 0xd9, - 0xe1, 0x6c, 0x60, 0x8c, 0xb2, 0xfe, 0xaa, 0x86, 0x31, 0x1a, 0x0c, 0x2e, 0xf9, 0xd4, 0x30, 0x38, - 0xa8, 0x99, 0x1f, 0x86, 0x3a, 0xc0, 0xc1, 0xef, 0x8c, 0xd0, 0x73, 0x23, 0x39, 0x1e, 0x6c, 0x59, - 0x43, 0x19, 0xf9, 0x3b, 0x08, 0xe3, 0x15, 0x10, 0x26, 0x7c, 0xd4, 0x06, 0x2e, 0xc8, 0x69, 0x9c, - 0xf2, 0xed, 0x16, 0xf0, 0xc0, 0x76, 0x40, 0x43, 0x39, 0x34, 0x97, 0x32, 0x9f, 0x06, 0x08, 0xc1, - 0x89, 0x70, 0xa2, 0xc5, 0x24, 0x20, 0xc7, 0xe4, 0x43, 0x3c, 0xcb, 0x80, 0x07, 0xd4, 0xe7, 0x60, - 0xd5, 0x29, 0x6b, 0xd9, 0x42, 0x8b, 0xe7, 0xd0, 0xdc, 0x4c, 0xe9, 0xcd, 0xc2, 0x41, 0xb7, 0x5b, - 0x90, 0x1f, 0x56, 0xdc, 0x65, 0x49, 0x5d, 0xa2, 0x2e, 0x98, 0x33, 0x6c, 0x28, 0x96, 0xff, 0x2b, - 0x81, 0xd3, 0x03, 0x99, 0xa4, 0x88, 0x33, 0x0c, 0x38, 0x6d, 0x33, 0x07, 0xac, 0x0e, 0x30, 0xee, - 0x51, 0x5f, 0x4b, 0x84, 0x2b, 0x5a, 0x4c, 0x3c, 0xde, 0x45, 0xc8, 0x9c, 0xed, 0xa1, 0x9b, 0x0a, - 0x24, 0xef, 0xe0, 0xa9, 0x16, 0x08, 0xdb, 0xb5, 0x85, 0xad, 0x4d, 0xe6, 0xd0, 0x5c, 0xba, 0x94, - 0x1b, 0x59, 0xdb, 0x86, 0xbc, 0xda, 0x15, 0x10, 0xeb, 0x20, 0xec, 0xea, 0x76, 0x00, 0x66, 0x9f, - 0x41, 0x36, 0xf0, 0x2c, 0xdf, 0xe6, 0x02, 0x5a, 0x56, 0x5f, 0xe4, 0x88, 0x14, 0x79, 0x65, 0x44, - 0xa4, 0x22, 0xb3, 0x9e, 0x95, 0x9a, 0x51, 0xf4, 0xf5, 0x9e, 0xa0, 0x89, 0x13, 0x3c, 0x00, 0x47, - 0x4b, 0x4a, 0x15, 0xe3, 0x50, 0xc7, 0x54, 0x09, 0xc0, 0x09, 0xc5, 0x16, 0x67, 0xbf, 0xde, 0x99, - 0x0e, 0xd9, 0x85, 0x86, 0x63, 0x85, 0xbf, 0xa6, 0xd4, 0x22, 0xeb, 0x38, 0xc9, 0x85, 0x2d, 0xda, - 0x5c, 0xbb, 0xf3, 0x0d, 0xca, 0xc5, 0xe7, 0xd2, 0xa5, 0xc2, 0xc1, 0xba, 0x15, 0xc9, 0x50, 0x0b, - 0x5e, 0x8c, 0xdf, 0xdd, 0x41, 0x66, 0x24, 0x42, 0x56, 0xf1, 0x7f, 0x18, 0xd4, 0x81, 0x31, 0xcf, - 0x6f, 0x58, 0xaa, 0xee, 0xb9, 0x36, 0x25, 0x75, 0x4f, 0xef, 0x7b, 0x74, 0x26, 0xd4, 0xe5, 0x5e, - 0x33, 0x7d, 0x9a, 0x8a, 0x73, 0xb2, 0x89, 0x35, 0x17, 0x9a, 0x20, 0xc0, 0xb5, 0x14, 0x06, 0x6e, - 0x5f, 0x31, 0x75, 0x08, 0xc5, 0x13, 0x11, 0xdb, 0x8c, 0xc8, 0x3d, 0xdd, 0xf7, 0xf1, 0x29, 0xd7, - 0xe3, 0x76, 0xad, 0xb9, 0x9f, 0x30, 0x3e, 0x84, 0xf0, 0xc9, 0x1e, 0x7d, 0x44, 0xf9, 0x42, 0xea, - 0xfe, 0x7c, 0x52, 0x8d, 0x2f, 0x27, 0xa6, 0x50, 0x26, 0x96, 0xff, 0x16, 0xe1, 0xf4, 0x9a, 0xc7, - 0x0f, 0xf9, 0x48, 0xfe, 0x8f, 0xa7, 0x9b, 0x76, 0x0d, 0x9a, 0x56, 0xdd, 0x6b, 0x0a, 0x60, 0xd1, - 0x63, 0x49, 0xcb, 0xd8, 0xb2, 0x0c, 0x91, 0x97, 0xf0, 0x51, 0x06, 0x01, 0x65, 0xc2, 0xaa, 0x7b, - 0xd0, 0x74, 0xb9, 0x16, 0xcf, 0xc5, 0xe7, 0x52, 0xe6, 0xb4, 0x0a, 0x2e, 0xcb, 0x18, 0x39, 0x8b, - 0x8f, 0x45, 0x49, 0xea, 0x52, 0x7a, 0xb9, 0x09, 0x99, 0x4b, 0x14, 0xa6, 0xae, 0x50, 0x31, 0xf2, - 0xbf, 0x26, 0x71, 0x46, 0xad, 0x53, 0xbd, 0x94, 0x55, 0x01, 0x2d, 0x72, 0x02, 0x27, 0x05, 0xf8, - 0xb6, 0x2f, 0x64, 0xbd, 0xa5, 0xcc, 0x68, 0xf6, 0x1c, 0x2f, 0x3d, 0x83, 0xe3, 0x6d, 0xcf, 0x95, - 0xaf, 0x3b, 0x65, 0x86, 0x43, 0x92, 0xc3, 0x69, 0x17, 0xb8, 0xc3, 0x3c, 0x69, 0x29, 0x5a, 0x5a, - 0xed, 0x74, 0x20, 0x44, 0xb2, 0x78, 0xaa, 0x77, 0xcc, 0xda, 0x74, 0x0e, 0xcd, 0x4d, 0x99, 0xfd, - 0x39, 0xd9, 0xc4, 0x49, 0x79, 0x28, 0x6a, 0x4b, 0xe9, 0xd2, 0xfc, 0xc1, 0x15, 0x3b, 0xba, 0xbb, - 0xc2, 0x9a, 0x14, 0x28, 0xfb, 0x82, 0x6d, 0x9b, 0x91, 0x1a, 0x01, 0x9c, 0x1e, 0xf0, 0xfe, 0xa8, - 0x16, 0x96, 0x9e, 0x43, 0x7c, 0xe1, 0xa9, 0x8a, 0xfa, 0xc2, 0xa0, 0x2e, 0x39, 0x8f, 0x31, 0xdd, - 0xf2, 0x81, 0x59, 0xa1, 0xab, 0x6a, 0x29, 0xf9, 0x98, 0xb3, 0x23, 0x5f, 0xd9, 0xf4, 0x60, 0xab, - 0x57, 0x6f, 0x29, 0x99, 0x1d, 0x46, 0x86, 0x0c, 0xe9, 0xe8, 0x8b, 0x30, 0xa4, 0x99, 0x7f, 0x65, - 0x48, 0x97, 0xf0, 0x54, 0x03, 0x84, 0xb4, 0x93, 0xc8, 0xda, 0xc6, 0x33, 0x25, 0xf3, 0x48, 0x43, - 0x4d, 0x88, 0x89, 0x71, 0x54, 0xac, 0x1c, 0x44, 0x64, 0x18, 0xcf, 0x65, 0x44, 0x29, 0x25, 0x53, - 0x01, 0x91, 0x3d, 0x8f, 0xd3, 0x03, 0xb7, 0x1c, 0x56, 0xe1, 0x4d, 0xd8, 0x8e, 0x2a, 0x36, 0x1c, - 0x92, 0x63, 0x78, 0xb2, 0x63, 0x37, 0xdb, 0xbd, 0x62, 0x55, 0x93, 0x0b, 0xb1, 0xb7, 0x50, 0x76, - 0x1e, 0x67, 0x46, 0xef, 0x70, 0x1c, 0xfe, 0xe5, 0xc4, 0xd4, 0x64, 0x26, 0x99, 0xff, 0x1c, 0xe1, - 0xe9, 0xc1, 0xda, 0x20, 0x97, 0xf0, 0xa4, 0x27, 0xa0, 0xc5, 0x35, 0xe5, 0xb4, 0xa5, 0xf1, 0x4b, - 0xcb, 0x54, 0x02, 0xe4, 0x2c, 0x4e, 0xaa, 0x5e, 0x40, 0x8b, 0x49, 0x29, 0x6d, 0x44, 0xaa, 0x1c, - 0x82, 0xf2, 0x88, 0xa3, 0xbc, 0xd7, 0xbe, 0x47, 0xf8, 0xf8, 0xbe, 0x7f, 0x9b, 0x24, 0x8b, 0x4f, - 0xac, 0x94, 0xab, 0x96, 0x59, 0xb9, 0x6a, 0x2d, 0x6f, 0x98, 0xeb, 0x0b, 0x55, 0xeb, 0x62, 0x79, - 0x79, 0xe1, 0xda, 0x5a, 0x35, 0x33, 0x41, 0x4e, 0xe1, 0xe3, 0x23, 0x58, 0xa5, 0xba, 0x50, 0xbd, - 0x56, 0xc9, 0xc4, 0xc9, 0x49, 0xfc, 0xdf, 0x11, 0xc8, 0x2c, 0x2f, 0x5c, 0xcc, 0x24, 0xc8, 0xcb, - 0x38, 0xf7, 0x0c, 0xb0, 0x5c, 0x36, 0xcd, 0xd5, 0x2b, 0x2b, 0xd6, 0xc6, 0xe2, 0xe5, 0xf2, 0x52, - 0xb5, 0x92, 0x99, 0xdc, 0x27, 0x6b, 0xd1, 0xdc, 0x78, 0xaf, 0x7c, 0x45, 0x25, 0x97, 0xaf, 0x2c, - 0x95, 0x2b, 0x99, 0x64, 0xe9, 0x5e, 0x02, 0xc7, 0x17, 0xae, 0xae, 0x92, 0x3f, 0x11, 0x8e, 0xaf, - 0x80, 0x20, 0x67, 0x0e, 0xd9, 0x1b, 0x48, 0xbf, 0xcd, 0x1a, 0x63, 0x75, 0x12, 0xf9, 0xcf, 0xd0, - 0xbd, 0x1f, 0x62, 0xa8, 0xfb, 0xa3, 0xf6, 0x6e, 0xfd, 0xdc, 0x2d, 0xc7, 0xe0, 0x9e, 0x00, 0xa3, - 0x65, 0xfb, 0x76, 0x03, 0x5a, 0xe0, 0x0b, 0xa3, 0x66, 0x73, 0xcf, 0x31, 0x5a, 0xd4, 0xf7, 0x04, - 0x65, 0x61, 0x1b, 0x67, 0x78, 0xd4, 0xf0, 0xfc, 0x3a, 0xb3, 0xb9, 0x60, 0x6d, 0x47, 0xb4, 0x19, - 0x18, 0x0c, 0x6c, 0xf7, 0xf6, 0x2f, 0xbf, 0x7f, 0x19, 0x7b, 0x9b, 0x9c, 0x8f, 0x5a, 0xd7, 0x62, - 0xdf, 0x1c, 0x79, 0xf1, 0xe3, 0xfe, 0x78, 0x67, 0x9f, 0xce, 0x2f, 0xc2, 0x77, 0xc8, 0x1f, 0x08, - 0x27, 0xc2, 0x9b, 0x27, 0xc6, 0x61, 0x2b, 0x44, 0xed, 0xb7, 0x30, 0x5e, 0x41, 0xe5, 0x3f, 0x79, - 0x71, 0xfb, 0x7d, 0x83, 0x94, 0xc6, 0xdf, 0x6f, 0xf6, 0xc6, 0xdd, 0x5d, 0x14, 0xfb, 0x79, 0x17, - 0xbd, 0x7a, 0xe0, 0xba, 0xd5, 0x1b, 0x7f, 0xb8, 0x8b, 0x50, 0x77, 0x17, 0x19, 0x63, 0x19, 0xc3, - 0xed, 0x9f, 0xb4, 0x58, 0x06, 0x2d, 0x7e, 0x85, 0xee, 0xcf, 0xc7, 0xcc, 0xb5, 0x07, 0x8f, 0xf4, - 0x89, 0x87, 0x8f, 0xf4, 0x89, 0x27, 0x8f, 0x74, 0xf4, 0x69, 0x57, 0x47, 0xdf, 0x75, 0x75, 0x74, - 0xaf, 0xab, 0xa3, 0x07, 0x5d, 0x1d, 0xfd, 0xd6, 0xd5, 0xd1, 0xe3, 0xae, 0x3e, 0xf1, 0xa4, 0xab, - 0xa3, 0x2f, 0xf6, 0xf4, 0x89, 0xbb, 0x7b, 0x3a, 0x7a, 0xb0, 0xa7, 0x4f, 0x3c, 0xdc, 0xd3, 0x27, - 0x3e, 0xd8, 0x6c, 0xd0, 0xe0, 0x66, 0xa3, 0xd0, 0xa1, 0xe1, 0x3f, 0x31, 0xb3, 0x0b, 0x6d, 0x5e, - 0x94, 0x83, 0xb0, 0x77, 0x35, 0x02, 0x46, 0x3b, 0x9e, 0x0b, 0xcc, 0xe8, 0xc1, 0xc5, 0xa0, 0xd6, - 0xa0, 0x45, 0xb8, 0x25, 0xa2, 0x0e, 0xfa, 0x1f, 0xdb, 0xfd, 0x5a, 0x52, 0xf6, 0xd3, 0xaf, 0xff, - 0x1d, 0x00, 0x00, 0xff, 0xff, 0x69, 0xe1, 0x47, 0xc6, 0x0b, 0x0d, 0x00, 0x00, + 0x19, 0x04, 0x11, 0xea, 0xda, 0x95, 0xa1, 0x82, 0x16, 0x14, 0x29, 0x49, 0x9d, 0x34, 0x25, 0x69, + 0xaa, 0xb5, 0x1b, 0x21, 0x2e, 0xcb, 0x7a, 0xf7, 0xb5, 0xbb, 0xad, 0xbd, 0xb3, 0xcc, 0x8c, 0x9d, + 0x46, 0x28, 0x12, 0xea, 0x11, 0x09, 0x09, 0x84, 0x7a, 0x41, 0x1c, 0x7a, 0xa9, 0xc4, 0x81, 0x1b, + 0x17, 0xa4, 0x5c, 0x7a, 0xa3, 0xea, 0x01, 0x55, 0xc0, 0xa1, 0x47, 0xea, 0x70, 0xe8, 0xb1, 0x7f, + 0x01, 0x42, 0x3b, 0xb3, 0x76, 0x6d, 0x37, 0x28, 0x71, 0x41, 0x9c, 0x32, 0xf3, 0x3e, 0xef, 0xf3, + 0xec, 0xfc, 0x78, 0xe7, 0xf1, 0x1b, 0x7c, 0xae, 0x03, 0xbc, 0xe0, 0xd1, 0x22, 0x77, 0xae, 0x43, + 0xcb, 0x2e, 0x3a, 0xc0, 0x84, 0x57, 0xf7, 0xc0, 0xb5, 0xae, 0xdb, 0xcc, 0xdd, 0xb2, 0x19, 0x14, + 0x83, 0x76, 0xad, 0xe9, 0x39, 0x96, 0xc3, 0xda, 0xae, 0x1d, 0x78, 0x85, 0x80, 0x51, 0x41, 0x49, + 0x4e, 0xd1, 0x0a, 0x8a, 0x56, 0x78, 0x91, 0x96, 0x35, 0x1a, 0x9e, 0xb8, 0xde, 0xae, 0x15, 0x1c, + 0xda, 0x2a, 0x36, 0x68, 0x83, 0x16, 0x25, 0xb1, 0xd6, 0xae, 0xcb, 0x99, 0x9c, 0xc8, 0x91, 0x12, + 0xcc, 0x9e, 0x6e, 0x50, 0xda, 0x68, 0x42, 0xd1, 0x0e, 0xbc, 0xa2, 0xed, 0xfb, 0x54, 0xd8, 0xc2, + 0xa3, 0x3e, 0x8f, 0xd0, 0xff, 0x45, 0x68, 0x5f, 0x03, 0x5a, 0x81, 0xd8, 0x8e, 0x40, 0xe3, 0xc0, + 0x2d, 0xd0, 0xda, 0x0d, 0x70, 0x44, 0x94, 0x7e, 0xe6, 0xc0, 0x74, 0xb1, 0x1d, 0x40, 0xef, 0xcb, + 0xd9, 0xe1, 0x6c, 0x60, 0x8c, 0xb2, 0xfe, 0xaa, 0x86, 0x31, 0x1a, 0x0c, 0x2e, 0xf9, 0xd4, 0x30, + 0x38, 0xa8, 0x99, 0x1f, 0x86, 0x3a, 0xc0, 0xc1, 0xef, 0x8c, 0xd0, 0x73, 0x23, 0x39, 0x1e, 0x6c, + 0x59, 0x43, 0x19, 0xf9, 0xbb, 0x08, 0xe3, 0x15, 0x10, 0x26, 0x7c, 0xdc, 0x06, 0x2e, 0xc8, 0x69, + 0x9c, 0xf2, 0xed, 0x16, 0xf0, 0xc0, 0x76, 0x40, 0x43, 0x39, 0x34, 0x97, 0x32, 0x9f, 0x07, 0x08, + 0xc1, 0x89, 0x70, 0xa2, 0xc5, 0x24, 0x20, 0xc7, 0xe4, 0x23, 0x3c, 0xcb, 0x80, 0x07, 0xd4, 0xe7, + 0x60, 0xd5, 0x29, 0x6b, 0xd9, 0x42, 0x8b, 0xe7, 0xd0, 0xdc, 0x4c, 0xe9, 0xed, 0xc2, 0x41, 0xb7, + 0x5b, 0x90, 0x1f, 0x56, 0xdc, 0x65, 0x49, 0x5d, 0xa2, 0x2e, 0x98, 0x33, 0x6c, 0x28, 0x96, 0xff, + 0x23, 0x81, 0xd3, 0x03, 0x99, 0xa4, 0x88, 0x33, 0x0c, 0x38, 0x6d, 0x33, 0x07, 0xac, 0x0e, 0x30, + 0xee, 0x51, 0x5f, 0x4b, 0x84, 0x2b, 0x5a, 0x4c, 0x3c, 0xdd, 0x45, 0xc8, 0x9c, 0xed, 0xa1, 0x9b, + 0x0a, 0x24, 0xef, 0xe1, 0xa9, 0x16, 0x08, 0xdb, 0xb5, 0x85, 0xad, 0x4d, 0xe6, 0xd0, 0x5c, 0xba, + 0x94, 0x1b, 0x59, 0xdb, 0x86, 0xbc, 0xda, 0x15, 0x10, 0xeb, 0x20, 0xec, 0xea, 0x76, 0x00, 0x66, + 0x9f, 0x41, 0x36, 0xf0, 0x2c, 0xdf, 0xe6, 0x02, 0x5a, 0x56, 0x5f, 0xe4, 0x88, 0x14, 0x79, 0x6d, + 0x44, 0xa4, 0x22, 0xb3, 0x5e, 0x94, 0x9a, 0x51, 0xf4, 0xf5, 0x9e, 0xa0, 0x89, 0x13, 0x3c, 0x00, + 0x47, 0x4b, 0x4a, 0x15, 0xe3, 0x50, 0xc7, 0x54, 0x09, 0xc0, 0x09, 0xc5, 0x16, 0x67, 0xbf, 0xde, + 0x99, 0x0e, 0xd9, 0x85, 0x86, 0x63, 0x85, 0x7f, 0x4d, 0xa9, 0x45, 0xd6, 0x71, 0x92, 0x0b, 0x5b, + 0xb4, 0xb9, 0x76, 0xf7, 0x1b, 0x94, 0x8b, 0xcf, 0xa5, 0x4b, 0x85, 0x83, 0x75, 0x2b, 0x92, 0xa1, + 0x16, 0xbc, 0x18, 0xbf, 0xbf, 0x83, 0xcc, 0x48, 0x84, 0xac, 0xe2, 0xff, 0x30, 0xa8, 0x03, 0x63, + 0x9e, 0xdf, 0xb0, 0x54, 0xdd, 0x73, 0x6d, 0x4a, 0xea, 0x9e, 0xde, 0xf7, 0xe8, 0x4c, 0xa8, 0xcb, + 0xbd, 0x66, 0xfa, 0x34, 0x15, 0xe7, 0x64, 0x13, 0x6b, 0x2e, 0x34, 0x41, 0x80, 0x6b, 0x29, 0x0c, + 0xdc, 0xbe, 0x62, 0xea, 0x10, 0x8a, 0x27, 0x22, 0xb6, 0x19, 0x91, 0x7b, 0xba, 0x1f, 0xe0, 0x53, + 0xae, 0xc7, 0xed, 0x5a, 0x73, 0x3f, 0x61, 0x7c, 0x08, 0xe1, 0x93, 0x3d, 0xfa, 0x88, 0xf2, 0x85, + 0xd4, 0xc3, 0xf9, 0xa4, 0x1a, 0x5f, 0x4e, 0x4c, 0xa1, 0x4c, 0x2c, 0x7f, 0x0f, 0xe1, 0xf4, 0x9a, + 0xc7, 0x0f, 0xf9, 0x48, 0xfe, 0x8f, 0xa7, 0x9b, 0x76, 0x0d, 0x9a, 0x56, 0xdd, 0x6b, 0x0a, 0x60, + 0xd1, 0x63, 0x49, 0xcb, 0xd8, 0xb2, 0x0c, 0x91, 0x57, 0xf0, 0x51, 0x06, 0x01, 0x65, 0xc2, 0xaa, + 0x7b, 0xd0, 0x74, 0xb9, 0x16, 0xcf, 0xc5, 0xe7, 0x52, 0xe6, 0xb4, 0x0a, 0x2e, 0xcb, 0x18, 0x39, + 0x8b, 0x8f, 0x45, 0x49, 0xea, 0x52, 0x7a, 0xb9, 0x09, 0x99, 0x4b, 0x14, 0xa6, 0xae, 0x50, 0x31, + 0xf2, 0xbf, 0x26, 0x71, 0x46, 0xad, 0x53, 0xbd, 0x94, 0x55, 0x01, 0x2d, 0x72, 0x02, 0x27, 0x05, + 0xf8, 0xb6, 0x2f, 0x64, 0xbd, 0xa5, 0xcc, 0x68, 0xf6, 0x12, 0x2f, 0x3d, 0x83, 0xe3, 0x6d, 0xcf, + 0x95, 0xaf, 0x3b, 0x65, 0x86, 0x43, 0x92, 0xc3, 0x69, 0x17, 0xb8, 0xc3, 0x3c, 0x69, 0x29, 0x5a, + 0x5a, 0xed, 0x74, 0x20, 0x44, 0xb2, 0x78, 0xaa, 0x77, 0xcc, 0xda, 0x74, 0x0e, 0xcd, 0x4d, 0x99, + 0xfd, 0x39, 0xd9, 0xc4, 0x49, 0x79, 0x28, 0x6a, 0x4b, 0xe9, 0xd2, 0xfc, 0xc1, 0x15, 0x3b, 0xba, + 0xbb, 0xc2, 0x9a, 0x14, 0x28, 0xfb, 0x82, 0x6d, 0x9b, 0x91, 0x1a, 0x01, 0x9c, 0x1e, 0xf0, 0xfe, + 0xa8, 0x16, 0x96, 0x5e, 0x42, 0x7c, 0xe1, 0xb9, 0x8a, 0xfa, 0xc2, 0xa0, 0x2e, 0x39, 0x8f, 0x31, + 0xdd, 0xf2, 0x81, 0x59, 0xa1, 0xab, 0x6a, 0x29, 0xf9, 0x98, 0xb3, 0x23, 0x5f, 0xd9, 0xf4, 0x60, + 0xab, 0x57, 0x6f, 0x29, 0x99, 0x1d, 0x46, 0x86, 0x0c, 0xe9, 0xe8, 0x3f, 0x61, 0x48, 0x33, 0x7f, + 0xcb, 0x90, 0x2e, 0xe1, 0xa9, 0x06, 0x08, 0x69, 0x27, 0x91, 0xb5, 0x8d, 0x67, 0x4a, 0xe6, 0x91, + 0x86, 0x9a, 0x10, 0x13, 0xe3, 0xa8, 0x58, 0x39, 0x88, 0xc8, 0x30, 0x5e, 0xca, 0x88, 0x52, 0x4a, + 0xa6, 0x02, 0x22, 0x7b, 0x1e, 0xa7, 0x07, 0x6e, 0x39, 0xac, 0xc2, 0x9b, 0xb0, 0x1d, 0x55, 0x6c, + 0x38, 0x24, 0xc7, 0xf0, 0x64, 0xc7, 0x6e, 0xb6, 0x7b, 0xc5, 0xaa, 0x26, 0x17, 0x62, 0xef, 0xa0, + 0xec, 0x3c, 0xce, 0x8c, 0xde, 0xe1, 0x38, 0xfc, 0xcb, 0x89, 0xa9, 0xc9, 0x4c, 0x32, 0xff, 0x19, + 0xc2, 0xd3, 0x83, 0xb5, 0x41, 0x2e, 0xe1, 0x49, 0x4f, 0x40, 0x8b, 0x6b, 0xca, 0x69, 0x4b, 0xe3, + 0x97, 0x96, 0xa9, 0x04, 0xc8, 0x59, 0x9c, 0x54, 0xbd, 0x80, 0x16, 0x93, 0x52, 0xda, 0x88, 0x54, + 0x39, 0x04, 0xe5, 0x11, 0x47, 0x79, 0x6f, 0x7c, 0x8f, 0xf0, 0xf1, 0x7d, 0x7f, 0x36, 0x49, 0x16, + 0x9f, 0x58, 0x29, 0x57, 0x2d, 0xb3, 0x72, 0xd5, 0x5a, 0xde, 0x30, 0xd7, 0x17, 0xaa, 0xd6, 0xc5, + 0xf2, 0xf2, 0xc2, 0xb5, 0xb5, 0x6a, 0x66, 0x82, 0x9c, 0xc2, 0xc7, 0x47, 0xb0, 0x4a, 0x75, 0xa1, + 0x7a, 0xad, 0x92, 0x89, 0x93, 0x93, 0xf8, 0xbf, 0x23, 0x90, 0x59, 0x5e, 0xb8, 0x98, 0x49, 0x90, + 0x57, 0x71, 0xee, 0x05, 0x60, 0xb9, 0x6c, 0x9a, 0xab, 0x57, 0x56, 0xac, 0x8d, 0xc5, 0xcb, 0xe5, + 0xa5, 0x6a, 0x25, 0x33, 0xb9, 0x4f, 0xd6, 0xa2, 0xb9, 0xf1, 0x7e, 0xf9, 0x8a, 0x4a, 0x2e, 0x5f, + 0x59, 0x2a, 0x57, 0x32, 0xc9, 0xd2, 0x9d, 0x49, 0x1c, 0x5f, 0xb8, 0xba, 0x4a, 0xbe, 0x8c, 0xe1, + 0xf8, 0x0a, 0x08, 0x72, 0xe6, 0x90, 0xbd, 0x81, 0xf4, 0xdb, 0xac, 0x31, 0x56, 0x27, 0x91, 0xff, + 0x0e, 0x3d, 0xf8, 0x21, 0x86, 0xba, 0x3f, 0x6a, 0x4e, 0xfd, 0xdc, 0x2d, 0xc7, 0xe0, 0x9e, 0x00, + 0xa3, 0x65, 0xfb, 0x76, 0x03, 0x5a, 0xe0, 0x0b, 0xa3, 0x66, 0x73, 0xcf, 0x31, 0x5a, 0xd4, 0xf7, + 0x04, 0x65, 0x67, 0xf6, 0x4d, 0xe1, 0xc2, 0xf6, 0x5d, 0x9b, 0xb9, 0xfd, 0xac, 0x0e, 0x70, 0xc3, + 0xa3, 0x86, 0xe7, 0xd7, 0x99, 0xcd, 0x05, 0x6b, 0x3b, 0xa2, 0xcd, 0xc0, 0x60, 0x60, 0xbb, 0xb7, + 0x7f, 0xf9, 0xfd, 0xab, 0xd8, 0xbb, 0xe4, 0x7c, 0xd4, 0xe0, 0x16, 0xfb, 0x16, 0xca, 0x8b, 0x9f, + 0xf4, 0xc7, 0x3b, 0xfb, 0xf4, 0x87, 0x11, 0xbe, 0x43, 0x3e, 0x8f, 0xe1, 0x44, 0x58, 0x1f, 0xc4, + 0x38, 0x6c, 0x1d, 0xa9, 0x53, 0x29, 0x8c, 0x57, 0x76, 0xf9, 0x7b, 0xff, 0xfa, 0xb1, 0xbc, 0x45, + 0x4a, 0xe3, 0x1f, 0x4b, 0xf6, 0xc6, 0xfd, 0x5d, 0x14, 0xfb, 0x79, 0x17, 0xbd, 0x7e, 0xe0, 0xf6, + 0x94, 0x61, 0x3c, 0xde, 0x45, 0xa8, 0xbb, 0x8b, 0x8c, 0xb1, 0x5c, 0xe6, 0xf6, 0x4f, 0x5a, 0x2c, + 0x83, 0x16, 0xef, 0xa0, 0x87, 0xf3, 0x31, 0x73, 0xed, 0xd1, 0x13, 0x7d, 0xe2, 0xf1, 0x13, 0x7d, + 0xe2, 0xd9, 0x13, 0x1d, 0x7d, 0xda, 0xd5, 0xd1, 0xb7, 0x5d, 0x1d, 0x3d, 0xe8, 0xea, 0xe8, 0x51, + 0x57, 0x47, 0xbf, 0x75, 0x75, 0xf4, 0xb4, 0xab, 0x4f, 0x3c, 0xeb, 0xea, 0xe8, 0x8b, 0x3d, 0x7d, + 0xe2, 0xfe, 0x9e, 0x8e, 0x1e, 0xed, 0xe9, 0x13, 0x8f, 0xf7, 0xf4, 0x89, 0x0f, 0x37, 0x1b, 0x34, + 0xb8, 0xd9, 0x28, 0x74, 0x68, 0xf8, 0xb3, 0xce, 0xec, 0x42, 0x9b, 0x17, 0xe5, 0x20, 0x6c, 0x84, + 0x8d, 0x80, 0xd1, 0x8e, 0xe7, 0x02, 0x33, 0x7a, 0x70, 0x31, 0xa8, 0x35, 0x68, 0x11, 0x6e, 0x89, + 0xa8, 0x1d, 0xff, 0xcb, 0xff, 0x1d, 0x6a, 0x49, 0xd9, 0x9c, 0xbf, 0xf9, 0x67, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x0d, 0xa6, 0x17, 0xf0, 0x58, 0x0d, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/certified_hardware/public_crudapi.vesapi.go b/pbgo/extschema/schema/certified_hardware/public_crudapi.vesapi.go index 903c15bae..7b2a58832 100644 --- a/pbgo/extschema/schema/certified_hardware/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/certified_hardware/public_crudapi.vesapi.go @@ -2062,10 +2062,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cloud_connect/crudapi/api.pb.go b/pbgo/extschema/schema/cloud_connect/crudapi/api.pb.go index 5137f4a8c..e35e4564a 100644 --- a/pbgo/extschema/schema/cloud_connect/crudapi/api.pb.go +++ b/pbgo/extschema/schema/cloud_connect/crudapi/api.pb.go @@ -909,95 +909,95 @@ func init() { } var fileDescriptor_0e598c6f9051bce7 = []byte{ - // 1407 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcf, 0x6f, 0x1b, 0xc5, - 0x17, 0xcf, 0xd8, 0xf9, 0xe5, 0x71, 0xd2, 0xa4, 0xd3, 0x4a, 0x5f, 0x7f, 0xdd, 0x76, 0x55, 0x6d, - 0x53, 0x11, 0x82, 0xb2, 0xdb, 0xba, 0x3f, 0x54, 0x72, 0xa8, 0x88, 0x5b, 0xa7, 0x44, 0x6d, 0x9d, - 0x6a, 0x93, 0xf2, 0x23, 0x48, 0x98, 0xb5, 0xf7, 0xc5, 0x5d, 0xb2, 0xde, 0xdd, 0xee, 0x8c, 0xdd, - 0x5a, 0xc8, 0x52, 0x05, 0x27, 0x2e, 0xa8, 0x3f, 0xa0, 0x48, 0x15, 0x07, 0x4e, 0x08, 0xc4, 0x3f, - 0x80, 0x94, 0x4b, 0xc5, 0x29, 0xe2, 0x54, 0xc1, 0x25, 0x47, 0xe2, 0x70, 0x40, 0x1c, 0x50, 0x25, - 0x0e, 0x48, 0x48, 0x48, 0x68, 0x67, 0xd6, 0xae, 0xed, 0xa4, 0xc6, 0x36, 0xa1, 0x12, 0x52, 0x2f, - 0xd1, 0xcc, 0x7b, 0xef, 0xf3, 0xe6, 0xbd, 0x37, 0x9f, 0xf7, 0x76, 0x1c, 0x3c, 0x5d, 0x02, 0xaa, - 0x98, 0x8e, 0x4a, 0x73, 0xd7, 0xa0, 0xa0, 0xab, 0x39, 0xcb, 0x29, 0x1a, 0x99, 0x9c, 0x63, 0xdb, - 0x90, 0x63, 0x6a, 0xce, 0x2b, 0x1a, 0xba, 0x6b, 0xaa, 0xba, 0x6b, 0x2a, 0xae, 0xe7, 0x30, 0x87, - 0x1c, 0x11, 0xe6, 0x8a, 0x30, 0x57, 0x9a, 0xcc, 0x95, 0xc0, 0x3c, 0x3e, 0x9d, 0x37, 0xd9, 0xb5, - 0x62, 0x56, 0xc9, 0x39, 0x05, 0x35, 0xef, 0xe4, 0x1d, 0x95, 0x63, 0xb3, 0xc5, 0x15, 0xbe, 0xe3, - 0x1b, 0xbe, 0x12, 0x3e, 0xe3, 0x07, 0xf3, 0x8e, 0x93, 0xb7, 0x40, 0xe5, 0x27, 0xd9, 0xb6, 0xc3, - 0x74, 0x66, 0x3a, 0x36, 0x0d, 0xb4, 0xff, 0x0f, 0xb4, 0x75, 0x1f, 0xba, 0x5d, 0x0e, 0x54, 0x93, - 0xed, 0x62, 0x77, 0xb2, 0xef, 0xfa, 0x31, 0x09, 0xcb, 0x17, 0xda, 0x59, 0xb2, 0xb2, 0x0b, 0xb5, - 0xd3, 0x0e, 0x34, 0x1b, 0x3a, 0x6e, 0x53, 0x28, 0xcd, 0xca, 0x46, 0x9c, 0xdc, 0xac, 0x2a, 0x01, - 0x05, 0xbb, 0xd4, 0x0c, 0x97, 0xbf, 0x08, 0xe1, 0xb1, 0x05, 0x1e, 0xd5, 0x39, 0x0f, 0x74, 0x06, - 0x1a, 0x5c, 0x27, 0x73, 0x78, 0xb8, 0x00, 0x4c, 0x37, 0x74, 0xa6, 0xc7, 0xd0, 0x61, 0x34, 0x19, - 0x4d, 0x1c, 0x52, 0x9a, 0x4b, 0x2c, 0x10, 0x97, 0x81, 0xe9, 0x4b, 0x65, 0x17, 0x92, 0xd1, 0x07, - 0x95, 0x3a, 0x42, 0xab, 0xaf, 0xc8, 0x3b, 0x78, 0x8c, 0x96, 0x29, 0x83, 0x42, 0xa6, 0xee, 0x2e, - 0xc4, 0xdd, 0x1d, 0x69, 0x71, 0xb7, 0xc8, 0xad, 0x5a, 0x9c, 0x92, 0x07, 0x95, 0x56, 0xb8, 0xb6, - 0x47, 0x08, 0x2e, 0xd7, 0x4e, 0x48, 0xe2, 0x7e, 0xea, 0x42, 0x2e, 0x16, 0xe6, 0x6e, 0x8f, 0x2a, - 0xed, 0x88, 0xb0, 0xe8, 0x42, 0x8e, 0x3b, 0x1e, 0x7a, 0x50, 0xe1, 0x28, 0x8d, 0xff, 0x9d, 0x39, - 0xfa, 0xdd, 0x59, 0xb9, 0x1d, 0x4e, 0x84, 0x25, 0x7f, 0x18, 0x6e, 0x29, 0x14, 0x75, 0xc9, 0x2c, - 0x0e, 0x83, 0xe7, 0xc5, 0x6e, 0xa7, 0x0f, 0xa3, 0xc9, 0x3d, 0x09, 0x45, 0xe9, 0x80, 0x87, 0x4a, - 0xca, 0xf3, 0x1c, 0xef, 0x9c, 0x63, 0x80, 0xe6, 0x63, 0x89, 0x84, 0xb1, 0x20, 0x45, 0xa6, 0x68, - 0x1a, 0xb1, 0x3b, 0xbe, 0xa7, 0x88, 0x16, 0x11, 0xa2, 0xab, 0xa6, 0xf1, 0xfc, 0x2e, 0x76, 0xba, - 0x8b, 0x3b, 0x21, 0x3c, 0x2e, 0x96, 0x1a, 0xb8, 0x96, 0x9e, 0xe3, 0xac, 0x6d, 0xae, 0xe4, 0xed, - 0x6d, 0x95, 0x9c, 0xc2, 0xe3, 0x1e, 0x50, 0xa7, 0xe8, 0xe5, 0x20, 0x53, 0x02, 0x8f, 0x9a, 0x8e, - 0x5d, 0xab, 0xf7, 0x58, 0x4d, 0xf1, 0x9a, 0x90, 0xef, 0x5a, 0xd5, 0x9f, 0x61, 0x4d, 0x7e, 0xd9, - 0x56, 0x93, 0xdd, 0x21, 0xe8, 0x73, 0x02, 0xee, 0x50, 0xec, 0xaf, 0x10, 0x1e, 0x11, 0xcb, 0x0b, - 0xc0, 0x3a, 0x21, 0x9f, 0x8c, 0x47, 0x74, 0xcb, 0xca, 0x64, 0xf5, 0xdc, 0xaa, 0x07, 0x2b, 0x54, - 0x10, 0x6f, 0x58, 0x8b, 0xea, 0x96, 0x95, 0x0c, 0x64, 0x64, 0x02, 0x8f, 0x06, 0xfa, 0x0c, 0x9f, - 0xe2, 0xb1, 0xbb, 0xe9, 0xc3, 0xe1, 0xc9, 0x88, 0x36, 0x12, 0x48, 0xfd, 0x78, 0x29, 0x51, 0xf1, - 0x3e, 0xd3, 0xce, 0x59, 0x45, 0x03, 0x32, 0x1e, 0xac, 0x80, 0xe7, 0x81, 0x91, 0x31, 0x8d, 0xd8, - 0x3d, 0xe1, 0x70, 0x6f, 0xa0, 0xd3, 0x02, 0xd5, 0xbc, 0x21, 0xdf, 0xef, 0x6f, 0x8c, 0x75, 0x77, - 0x48, 0x71, 0x06, 0x8f, 0x80, 0xcd, 0x9a, 0xd2, 0x09, 0x4f, 0x46, 0x13, 0xfb, 0x15, 0xf1, 0x5d, - 0x54, 0x6a, 0xdf, 0x45, 0x65, 0xd6, 0x2e, 0x6b, 0x51, 0xb0, 0x59, 0x3d, 0xc9, 0x9d, 0xba, 0xf0, - 0xee, 0xbf, 0xdc, 0x85, 0xff, 0x09, 0xea, 0x91, 0x57, 0xf1, 0x20, 0x65, 0x3a, 0x2b, 0xd2, 0xd8, - 0xe7, 0x9f, 0x21, 0x5e, 0xce, 0x17, 0xdb, 0xfb, 0xe1, 0xc6, 0x22, 0xd8, 0x64, 0xf8, 0x61, 0x05, - 0x69, 0x01, 0xbe, 0x53, 0x12, 0xaf, 0x87, 0xf0, 0xa8, 0x58, 0x5e, 0x32, 0x29, 0x67, 0xf1, 0x04, - 0x1e, 0x65, 0x60, 0xeb, 0x36, 0xcb, 0xac, 0x98, 0x16, 0x03, 0xce, 0x11, 0xce, 0x40, 0x21, 0x9d, - 0xe3, 0x42, 0xff, 0x0a, 0x6d, 0xbd, 0x00, 0xd4, 0xd5, 0x73, 0x50, 0x33, 0xbc, 0x23, 0x0c, 0xc7, - 0xea, 0x8a, 0xc0, 0x56, 0xc6, 0x23, 0x96, 0x9e, 0x05, 0xab, 0x66, 0x17, 0x5c, 0x75, 0x94, 0x0b, - 0x03, 0x9b, 0x09, 0x3c, 0xea, 0x81, 0xeb, 0x78, 0xfe, 0xa9, 0x60, 0x19, 0xd4, 0xe7, 0x32, 0x3f, - 0x55, 0x48, 0xe7, 0xb8, 0x70, 0x47, 0xe2, 0x7c, 0x2c, 0x48, 0xbf, 0x8d, 0x38, 0x4f, 0xe9, 0x91, - 0x4f, 0x9e, 0xd6, 0x23, 0x7e, 0xfb, 0xba, 0x7a, 0x1e, 0x32, 0x94, 0xe9, 0x1e, 0x8b, 0xdd, 0x0f, - 0xda, 0xd7, 0x17, 0x2d, 0xfa, 0x92, 0xba, 0xde, 0x32, 0x0b, 0x26, 0x8b, 0x7d, 0xea, 0xeb, 0x07, - 0x84, 0xfe, 0x92, 0x2f, 0x91, 0x7f, 0xef, 0xc7, 0x7b, 0x1b, 0x4a, 0x49, 0xdd, 0x79, 0x06, 0x85, - 0xbf, 0x1d, 0x0a, 0xcf, 0xf9, 0xdd, 0x13, 0xbf, 0xc9, 0xff, 0xf0, 0xa0, 0x20, 0x64, 0xed, 0xfb, - 0x1d, 0x6c, 0xc9, 0x21, 0x1c, 0xa9, 0x13, 0xb0, 0x46, 0xb5, 0x27, 0x12, 0xb2, 0x0f, 0xf7, 0xfb, - 0x1b, 0x31, 0x2b, 0x23, 0x1a, 0xdf, 0x90, 0xb7, 0xf0, 0x20, 0x27, 0x23, 0xf5, 0xd9, 0xe4, 0x47, - 0x95, 0xec, 0x68, 0x20, 0x6e, 0xbb, 0x6d, 0xe5, 0x12, 0xf7, 0x92, 0xb2, 0x99, 0x57, 0xd6, 0x02, - 0x97, 0xf1, 0x97, 0x71, 0xb4, 0x41, 0x4c, 0xc6, 0x71, 0x78, 0x15, 0xca, 0xfc, 0xae, 0x23, 0x9a, - 0xbf, 0x24, 0xfb, 0xf1, 0x40, 0x49, 0xb7, 0x8a, 0xc0, 0x2f, 0x2c, 0xa2, 0x89, 0xcd, 0x4c, 0xe8, - 0x0c, 0xea, 0xb4, 0x89, 0x3f, 0x6a, 0x6e, 0xe2, 0xdd, 0x19, 0xef, 0xfb, 0x70, 0x7f, 0xd1, 0x34, - 0x68, 0xad, 0xab, 0xf9, 0x86, 0x5c, 0xc6, 0x03, 0x26, 0x83, 0x42, 0xf0, 0x59, 0x8a, 0x26, 0x4e, - 0xf7, 0x56, 0x27, 0x4d, 0x78, 0x21, 0x67, 0x1a, 0xc8, 0xcf, 0x2f, 0x24, 0x9a, 0x38, 0xd0, 0xe2, - 0xd1, 0x47, 0xd5, 0x68, 0xda, 0x40, 0xf7, 0x83, 0x38, 0x62, 0xc3, 0x4d, 0x96, 0xf1, 0xdb, 0x4f, - 0x8c, 0x80, 0x88, 0x36, 0xec, 0x4b, 0xae, 0xe8, 0x79, 0x90, 0x8f, 0xd7, 0x9e, 0xe9, 0xe7, 0xc1, - 0x02, 0xd6, 0xc9, 0xcb, 0x50, 0x5e, 0x6a, 0x81, 0xec, 0x4a, 0x11, 0xa7, 0xce, 0xe2, 0x48, 0x5d, - 0x42, 0x86, 0x70, 0x38, 0xb5, 0x70, 0x71, 0xbc, 0x8f, 0x8c, 0xe2, 0x48, 0x2a, 0xbd, 0xb0, 0x34, - 0xb7, 0x70, 0x35, 0x7d, 0x7e, 0x1c, 0x91, 0x28, 0x1e, 0x4a, 0xa5, 0xde, 0x98, 0x5f, 0x5c, 0x5a, - 0x1c, 0x0f, 0x91, 0x11, 0x3c, 0x9c, 0xba, 0x9a, 0xbe, 0x98, 0x5e, 0x78, 0x3d, 0x3d, 0x1e, 0x4e, - 0x7c, 0x1b, 0xc5, 0xe1, 0xd9, 0x2b, 0xf3, 0x64, 0x13, 0xe1, 0x41, 0xf1, 0x93, 0x83, 0x9c, 0xec, - 0xa2, 0xe4, 0xf5, 0x9f, 0x73, 0xf1, 0x1e, 0x50, 0xd4, 0x95, 0x57, 0xdf, 0xff, 0xe1, 0xa7, 0x7b, - 0x21, 0x90, 0x27, 0xd4, 0x36, 0x68, 0x55, 0xa0, 0xe8, 0x0c, 0x9a, 0x5a, 0x9e, 0x91, 0x4f, 0xb5, - 0x35, 0x35, 0x6d, 0xe6, 0x39, 0xfe, 0x24, 0x60, 0xea, 0x0d, 0xcf, 0x64, 0xd0, 0x80, 0x25, 0x7f, - 0x22, 0x3c, 0x14, 0x3c, 0x5b, 0xc9, 0xa9, 0x2e, 0xc2, 0x7d, 0xf2, 0xfc, 0x8f, 0xf7, 0x02, 0xa3, - 0xae, 0xfc, 0x01, 0xe2, 0x79, 0x56, 0xe2, 0xc7, 0x3a, 0xc8, 0x53, 0x7d, 0xef, 0x09, 0x8f, 0x2a, - 0x7e, 0xce, 0x73, 0xf1, 0xd9, 0x5e, 0x72, 0x6e, 0xf5, 0x43, 0x7e, 0x45, 0x38, 0x7c, 0x01, 0x18, - 0x39, 0xde, 0x45, 0x12, 0xe2, 0xe5, 0x19, 0xef, 0x16, 0x42, 0x5d, 0xf9, 0x16, 0x5a, 0xff, 0x26, - 0x24, 0xf2, 0x2e, 0x91, 0xae, 0xf3, 0x5e, 0x4e, 0x92, 0x57, 0x3a, 0x4d, 0xda, 0x03, 0xdd, 0xd8, - 0xc9, 0x07, 0xd9, 0x40, 0xb8, 0xdf, 0x6f, 0x6f, 0x92, 0xe8, 0x76, 0x8a, 0xc0, 0xf5, 0x78, 0xa2, - 0xfb, 0xc9, 0x23, 0x5f, 0xab, 0xa7, 0xfc, 0x36, 0xe9, 0x88, 0xd2, 0xcb, 0xa7, 0xc9, 0xc9, 0x1e, - 0xd2, 0xa4, 0xe4, 0x6b, 0x84, 0xb1, 0x7f, 0xea, 0x22, 0xf3, 0x40, 0x2f, 0x3c, 0xb3, 0x04, 0x4f, - 0xf0, 0xe4, 0xa6, 0xc9, 0x4b, 0x9d, 0x24, 0xa7, 0x52, 0x1e, 0xdc, 0x31, 0x44, 0x7e, 0x43, 0x78, - 0x50, 0x8c, 0xbd, 0xae, 0xa6, 0x4b, 0x7d, 0xb8, 0xc6, 0x7b, 0x40, 0x51, 0x57, 0xae, 0xf0, 0x68, - 0x6f, 0x4c, 0x75, 0xcf, 0xbe, 0x73, 0x53, 0xff, 0xbc, 0xe5, 0xe2, 0xf9, 0x87, 0x6b, 0x08, 0xad, - 0xaf, 0x21, 0xf4, 0xfd, 0x1a, 0xea, 0xe0, 0x2b, 0xbb, 0xb1, 0x86, 0x50, 0x75, 0x0d, 0x4d, 0x76, - 0xfa, 0x5c, 0xf9, 0x63, 0x0d, 0x0d, 0x18, 0x50, 0x70, 0x8e, 0x27, 0xef, 0xa1, 0x47, 0x9b, 0x52, - 0xdf, 0xc6, 0xa6, 0xd4, 0xf7, 0x78, 0x53, 0x42, 0xb7, 0xaa, 0x12, 0xfa, 0xb2, 0x2a, 0xa1, 0xf5, - 0xaa, 0x84, 0x1e, 0x55, 0x25, 0xf4, 0x63, 0x55, 0x42, 0x3f, 0x57, 0xa5, 0xbe, 0xc7, 0x55, 0x09, - 0xdd, 0xde, 0x92, 0xfa, 0x1e, 0x6e, 0x49, 0xe8, 0xd1, 0x96, 0xd4, 0xb7, 0xb1, 0x25, 0xf5, 0x2d, - 0xbf, 0x99, 0x77, 0xdc, 0xd5, 0xbc, 0x52, 0x72, 0xfc, 0x47, 0xb2, 0xa7, 0x2b, 0x45, 0xaa, 0xf2, - 0xc5, 0x8a, 0xe3, 0x15, 0xa6, 0x5d, 0xcf, 0x29, 0x99, 0x06, 0x78, 0xd3, 0x35, 0xb5, 0xea, 0x66, - 0xf3, 0x8e, 0x0a, 0x37, 0x59, 0xf0, 0xcf, 0xbe, 0x76, 0xff, 0x3a, 0xcd, 0x0e, 0xf2, 0xdf, 0x67, - 0x27, 0xfe, 0x0a, 0x00, 0x00, 0xff, 0xff, 0xd4, 0x5b, 0xa4, 0xa1, 0x68, 0x15, 0x00, 0x00, + // 1399 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcd, 0x6f, 0x13, 0xd7, + 0x16, 0xf7, 0xb5, 0x43, 0x12, 0x5f, 0x27, 0xc4, 0x5c, 0x90, 0x9e, 0x9f, 0x81, 0x11, 0x1a, 0x82, + 0x5e, 0x5e, 0x9e, 0x32, 0x03, 0xe6, 0x43, 0xbc, 0x2c, 0x50, 0x13, 0x70, 0x68, 0x04, 0x38, 0x68, + 0x12, 0xfa, 0x91, 0x4a, 0xb8, 0x63, 0xcf, 0x89, 0x99, 0x66, 0x3c, 0x33, 0xcc, 0xbd, 0x36, 0x58, + 0x95, 0x25, 0xd4, 0xae, 0xba, 0xa9, 0xf8, 0x68, 0xa9, 0x84, 0xba, 0xe8, 0xaa, 0x6a, 0xd5, 0x7f, + 0xa0, 0x55, 0x36, 0x2c, 0xa3, 0xae, 0x50, 0xbb, 0xc9, 0xb2, 0x71, 0xba, 0xa8, 0xba, 0xa8, 0x90, + 0xba, 0xe8, 0xaa, 0x52, 0x35, 0xf7, 0x8e, 0x8d, 0xed, 0x04, 0xd7, 0x76, 0x53, 0xa4, 0x4a, 0x6c, + 0xa2, 0x7b, 0xcf, 0x39, 0xbf, 0x73, 0xcf, 0x39, 0xf7, 0x77, 0xce, 0x5c, 0x07, 0x4f, 0x95, 0x81, + 0x2a, 0xa6, 0xa3, 0xd2, 0xfc, 0x0d, 0x28, 0xea, 0x6a, 0xde, 0x72, 0x4a, 0x46, 0x36, 0xef, 0xd8, + 0x36, 0xe4, 0x99, 0x9a, 0xf7, 0x4a, 0x86, 0xee, 0x9a, 0xaa, 0xee, 0x9a, 0x8a, 0xeb, 0x39, 0xcc, + 0x21, 0x47, 0x85, 0xb9, 0x22, 0xcc, 0x95, 0x16, 0x73, 0x25, 0x30, 0x4f, 0x4e, 0x15, 0x4c, 0x76, + 0xa3, 0x94, 0x53, 0xf2, 0x4e, 0x51, 0x2d, 0x38, 0x05, 0x47, 0xe5, 0xd8, 0x5c, 0x69, 0x85, 0xef, + 0xf8, 0x86, 0xaf, 0x84, 0xcf, 0xe4, 0xa1, 0x82, 0xe3, 0x14, 0x2c, 0x50, 0xf9, 0x49, 0xb6, 0xed, + 0x30, 0x9d, 0x99, 0x8e, 0x4d, 0x03, 0xed, 0xbf, 0x03, 0x6d, 0xc3, 0x87, 0x6e, 0x57, 0x02, 0xd5, + 0x44, 0xa7, 0xd8, 0x9d, 0xdc, 0x3b, 0x7e, 0x4c, 0xc2, 0xf2, 0x3f, 0x9d, 0x2c, 0x59, 0xc5, 0x85, + 0xfa, 0x69, 0x07, 0x5b, 0x0d, 0x1d, 0xb7, 0x25, 0x94, 0x56, 0x65, 0x33, 0x4e, 0x6e, 0x55, 0x95, + 0x81, 0x82, 0x5d, 0x6e, 0x85, 0xcb, 0x9f, 0x87, 0xf1, 0xd8, 0x02, 0x8f, 0xea, 0xbc, 0x07, 0x3a, + 0x03, 0x0d, 0x6e, 0x92, 0x39, 0x3c, 0x5c, 0x04, 0xa6, 0x1b, 0x3a, 0xd3, 0x13, 0xe8, 0x08, 0x9a, + 0x88, 0xa5, 0x0e, 0x2b, 0xad, 0x25, 0x16, 0x88, 0x2b, 0xc0, 0xf4, 0xa5, 0x8a, 0x0b, 0xb3, 0xb1, + 0x47, 0xd5, 0x06, 0x42, 0x6b, 0xac, 0xc8, 0xdb, 0x78, 0x8c, 0x56, 0x28, 0x83, 0x62, 0xb6, 0xe1, + 0x2e, 0xcc, 0xdd, 0x1d, 0x6d, 0x73, 0xb7, 0xc8, 0xad, 0xda, 0x9c, 0x92, 0x47, 0xd5, 0x76, 0xb8, + 0xb6, 0x57, 0x08, 0xae, 0xd4, 0x4f, 0x98, 0xc5, 0x03, 0xd4, 0x85, 0x7c, 0x22, 0xc2, 0xdd, 0x1e, + 0x53, 0x3a, 0x11, 0x61, 0xd1, 0x85, 0x3c, 0x77, 0x3c, 0xf4, 0xa8, 0xca, 0x51, 0x1a, 0xff, 0x3b, + 0x7d, 0xec, 0xdb, 0x73, 0x72, 0x27, 0x9c, 0x08, 0x4b, 0xfe, 0x20, 0xd2, 0x56, 0x28, 0xea, 0x92, + 0x19, 0x1c, 0x01, 0xcf, 0x4b, 0xdc, 0xcd, 0x1c, 0x41, 0x13, 0x7b, 0x53, 0x8a, 0xd2, 0x05, 0x0f, + 0x95, 0xb4, 0xe7, 0x39, 0xde, 0x79, 0xc7, 0x00, 0xcd, 0xc7, 0x12, 0x09, 0x63, 0x41, 0x8a, 0x6c, + 0xc9, 0x34, 0x12, 0xf7, 0x7c, 0x4f, 0x51, 0x2d, 0x2a, 0x44, 0xd7, 0x4c, 0xe3, 0xe5, 0x5d, 0xec, + 0x74, 0x17, 0xf7, 0xc2, 0x38, 0x2e, 0x96, 0x1a, 0xb8, 0x96, 0x9e, 0xe7, 0xac, 0x6d, 0xad, 0xe4, + 0xdd, 0x6d, 0x95, 0x9c, 0xc4, 0x71, 0x0f, 0xa8, 0x53, 0xf2, 0xf2, 0x90, 0x2d, 0x83, 0x47, 0x4d, + 0xc7, 0xae, 0xd7, 0x7b, 0xac, 0xae, 0x78, 0x4d, 0xc8, 0x77, 0xad, 0xea, 0x2f, 0xb0, 0x26, 0x3f, + 0x6f, 0xab, 0xc9, 0xee, 0x10, 0xf4, 0x25, 0x01, 0x77, 0x28, 0xf6, 0x97, 0x08, 0x8f, 0x88, 0xe5, + 0x45, 0x60, 0xdd, 0x90, 0x4f, 0xc6, 0x23, 0xba, 0x65, 0x65, 0x73, 0x7a, 0x7e, 0xd5, 0x83, 0x15, + 0x2a, 0x88, 0x37, 0xac, 0xc5, 0x74, 0xcb, 0x9a, 0x0d, 0x64, 0x64, 0x1c, 0x8f, 0x06, 0xfa, 0x2c, + 0x9f, 0xe2, 0x89, 0xfb, 0x99, 0x23, 0x91, 0x89, 0xa8, 0x36, 0x12, 0x48, 0xfd, 0x78, 0x29, 0x51, + 0xf1, 0x7e, 0xd3, 0xce, 0x5b, 0x25, 0x03, 0xb2, 0x1e, 0xac, 0x80, 0xe7, 0x81, 0x91, 0x35, 0x8d, + 0xc4, 0x03, 0xe1, 0x70, 0x5f, 0xa0, 0xd3, 0x02, 0xd5, 0xbc, 0x21, 0x3f, 0x1c, 0x68, 0x8e, 0x75, + 0x77, 0x48, 0x71, 0x16, 0x8f, 0x80, 0xcd, 0x5a, 0xd2, 0x89, 0x4c, 0xc4, 0x52, 0x07, 0x14, 0xf1, + 0x5d, 0x54, 0xea, 0xdf, 0x45, 0x65, 0xc6, 0xae, 0x68, 0x31, 0xb0, 0x59, 0x23, 0xc9, 0x9d, 0xba, + 0xf0, 0xfe, 0xdf, 0xdc, 0x85, 0xff, 0x08, 0xea, 0x91, 0x57, 0xf1, 0x20, 0x65, 0x3a, 0x2b, 0xd1, + 0xc4, 0x67, 0x9f, 0x22, 0x5e, 0xce, 0xff, 0x76, 0xf6, 0xc3, 0x8d, 0x45, 0xb0, 0xb3, 0x91, 0xc7, + 0x55, 0xa4, 0x05, 0xf8, 0x6e, 0x49, 0xbc, 0x1e, 0xc6, 0xa3, 0x62, 0x79, 0xd9, 0xa4, 0x9c, 0xc5, + 0xe3, 0x78, 0x94, 0x81, 0xad, 0xdb, 0x2c, 0xbb, 0x62, 0x5a, 0x0c, 0x38, 0x47, 0x38, 0x03, 0x85, + 0x74, 0x8e, 0x0b, 0xfd, 0x2b, 0xb4, 0xf5, 0x22, 0x50, 0x57, 0xcf, 0x43, 0xdd, 0xf0, 0x9e, 0x30, + 0x1c, 0x6b, 0x28, 0x02, 0x5b, 0x19, 0x8f, 0x58, 0x7a, 0x0e, 0xac, 0xba, 0x5d, 0x70, 0xd5, 0x31, + 0x2e, 0x0c, 0x6c, 0xc6, 0xf1, 0xa8, 0x07, 0xae, 0xe3, 0xf9, 0xa7, 0x82, 0x65, 0x50, 0x9f, 0xcb, + 0xfc, 0x54, 0x21, 0x9d, 0xe3, 0xc2, 0x1d, 0x89, 0xf3, 0x91, 0x20, 0xfd, 0x36, 0xe2, 0x3c, 0xa7, + 0x47, 0x3e, 0x7e, 0x5e, 0x8f, 0xf8, 0xed, 0xeb, 0xea, 0x05, 0xc8, 0x52, 0xa6, 0x7b, 0x2c, 0xf1, + 0x30, 0x68, 0x5f, 0x5f, 0xb4, 0xe8, 0x4b, 0x1a, 0x7a, 0xcb, 0x2c, 0x9a, 0x2c, 0xf1, 0x89, 0xaf, + 0xdf, 0x23, 0xf4, 0x97, 0x7d, 0x89, 0xfc, 0xdb, 0x00, 0xde, 0xd7, 0x54, 0x4a, 0xea, 0xce, 0x33, + 0x28, 0xfe, 0xe9, 0x50, 0x78, 0xc9, 0xef, 0xbe, 0xf8, 0x4d, 0xfe, 0x85, 0x07, 0x05, 0x21, 0xeb, + 0xdf, 0xef, 0x60, 0x4b, 0x0e, 0xe3, 0x68, 0x83, 0x80, 0x75, 0xaa, 0x3d, 0x93, 0x90, 0xfd, 0x78, + 0xc0, 0xdf, 0x88, 0x59, 0x19, 0xd5, 0xf8, 0x86, 0xbc, 0x85, 0x07, 0x39, 0x19, 0xa9, 0xcf, 0x26, + 0x3f, 0xaa, 0xd9, 0xae, 0x06, 0xe2, 0xb6, 0xdb, 0x56, 0x2e, 0x73, 0x2f, 0x69, 0x9b, 0x79, 0x15, + 0x2d, 0x70, 0x99, 0xfc, 0x3f, 0x8e, 0x35, 0x89, 0x49, 0x1c, 0x47, 0x56, 0xa1, 0xc2, 0xef, 0x3a, + 0xaa, 0xf9, 0x4b, 0x72, 0x00, 0xef, 0x29, 0xeb, 0x56, 0x09, 0xf8, 0x85, 0x45, 0x35, 0xb1, 0x99, + 0x0e, 0x9f, 0x45, 0xdd, 0x36, 0xf1, 0x87, 0xad, 0x4d, 0xbc, 0x3b, 0xe3, 0x7d, 0x3f, 0x1e, 0x28, + 0x99, 0x06, 0xad, 0x77, 0x35, 0xdf, 0x90, 0x2b, 0x78, 0x8f, 0xc9, 0xa0, 0x18, 0x7c, 0x96, 0x62, + 0xa9, 0x33, 0xfd, 0xd5, 0x49, 0x13, 0x5e, 0xc8, 0xd9, 0x26, 0xf2, 0xf3, 0x0b, 0x89, 0xa5, 0x0e, + 0xb6, 0x79, 0xf4, 0x51, 0x75, 0x9a, 0x36, 0xd1, 0xfd, 0x10, 0x8e, 0xda, 0x70, 0x9b, 0x65, 0xfd, + 0xf6, 0x13, 0x23, 0x20, 0xaa, 0x0d, 0xfb, 0x92, 0xab, 0x7a, 0x01, 0xe4, 0x13, 0xf5, 0x67, 0xfa, + 0x05, 0xb0, 0x80, 0x75, 0xf3, 0x32, 0x94, 0x97, 0xda, 0x20, 0xbb, 0x52, 0xc4, 0xc9, 0x73, 0x38, + 0xda, 0x90, 0x90, 0x21, 0x1c, 0x49, 0x2f, 0x5c, 0x8a, 0x87, 0xc8, 0x28, 0x8e, 0xa6, 0x33, 0x0b, + 0x4b, 0x73, 0x0b, 0xd7, 0x32, 0x17, 0xe2, 0x88, 0xc4, 0xf0, 0x50, 0x3a, 0xfd, 0xc6, 0xfc, 0xe2, + 0xd2, 0x62, 0x3c, 0x4c, 0x46, 0xf0, 0x70, 0xfa, 0x5a, 0xe6, 0x52, 0x66, 0xe1, 0xf5, 0x4c, 0x3c, + 0x92, 0xfa, 0x26, 0x86, 0x23, 0x33, 0x57, 0xe7, 0xc9, 0x26, 0xc2, 0x83, 0xe2, 0x27, 0x07, 0x39, + 0xd5, 0x43, 0xc9, 0x1b, 0x3f, 0xe7, 0x92, 0x7d, 0xa0, 0xa8, 0x2b, 0xaf, 0xbe, 0xf7, 0xfd, 0x8f, + 0x0f, 0xc2, 0x20, 0x8f, 0xab, 0x1d, 0xd0, 0xaa, 0x40, 0xd1, 0x69, 0x34, 0xb9, 0x3c, 0x2d, 0x9f, + 0xee, 0x68, 0x6a, 0xda, 0xcc, 0x73, 0xfc, 0x49, 0xc0, 0xd4, 0x5b, 0x9e, 0xc9, 0xa0, 0x09, 0x4b, + 0x7e, 0x47, 0x78, 0x28, 0x78, 0xb6, 0x92, 0xd3, 0x3d, 0x84, 0xfb, 0xec, 0xf9, 0x9f, 0xec, 0x07, + 0x46, 0x5d, 0xf9, 0x7d, 0xc4, 0xf3, 0xac, 0x26, 0x8f, 0x77, 0x91, 0xa7, 0xfa, 0xee, 0x33, 0x1e, + 0x55, 0xfd, 0x9c, 0xe7, 0x92, 0x33, 0xfd, 0xe4, 0xdc, 0xee, 0x87, 0xfc, 0x82, 0x70, 0xe4, 0x22, + 0x30, 0x72, 0xa2, 0x87, 0x24, 0xc4, 0xcb, 0x33, 0xd9, 0x2b, 0x84, 0xba, 0xf2, 0x1d, 0xb4, 0xfe, + 0x75, 0x58, 0xe4, 0x5d, 0x26, 0x3d, 0xe7, 0xbd, 0x3c, 0x4b, 0x5e, 0xe9, 0x36, 0x69, 0x0f, 0x74, + 0x63, 0x27, 0x1f, 0x64, 0x03, 0xe1, 0x01, 0xbf, 0xbd, 0x49, 0xaa, 0xd7, 0x29, 0x02, 0x37, 0x93, + 0xa9, 0xde, 0x27, 0x8f, 0x7c, 0xa3, 0x91, 0xf2, 0x75, 0xd2, 0x15, 0xa5, 0x97, 0xcf, 0x90, 0x53, + 0x7d, 0xa4, 0x49, 0xc9, 0x57, 0x08, 0x63, 0xff, 0xd4, 0x45, 0xe6, 0x81, 0x5e, 0x7c, 0x61, 0x09, + 0x9e, 0xe4, 0xc9, 0x4d, 0x91, 0xff, 0x75, 0x93, 0x9c, 0x4a, 0x79, 0x70, 0xc7, 0x11, 0xf9, 0x15, + 0xe1, 0x41, 0x31, 0xf6, 0x7a, 0x9a, 0x2e, 0x8d, 0xe1, 0x9a, 0xec, 0x03, 0x45, 0x5d, 0xb9, 0xca, + 0xa3, 0xbd, 0x35, 0xd9, 0x3b, 0xfb, 0xce, 0x4f, 0xfe, 0xf5, 0x96, 0x4b, 0x5e, 0x7f, 0xbc, 0x86, + 0xd0, 0xfa, 0x1a, 0x42, 0xdf, 0xad, 0xa1, 0x2e, 0xbe, 0xb2, 0x1b, 0x6b, 0x08, 0xd5, 0xd6, 0xd0, + 0x44, 0xd7, 0xcf, 0x95, 0x07, 0xe8, 0xc9, 0xa6, 0x14, 0xda, 0xd8, 0x94, 0x42, 0x4f, 0x37, 0x25, + 0x74, 0xa7, 0x26, 0xa1, 0x2f, 0x6a, 0x12, 0x5a, 0xaf, 0x49, 0xe8, 0x49, 0x4d, 0x42, 0x3f, 0xd4, + 0x24, 0xf4, 0x53, 0x4d, 0x0a, 0x3d, 0xad, 0x49, 0xe8, 0xee, 0x96, 0x14, 0x7a, 0xbc, 0x25, 0xa1, + 0x27, 0x5b, 0x52, 0x68, 0x63, 0x4b, 0x0a, 0x2d, 0xbf, 0x59, 0x70, 0xdc, 0xd5, 0x82, 0x52, 0x76, + 0xfc, 0xb7, 0xb1, 0xa7, 0x2b, 0x25, 0xaa, 0xf2, 0xc5, 0x8a, 0xe3, 0x15, 0xa7, 0x5c, 0xcf, 0x29, + 0x9b, 0x06, 0x78, 0x53, 0x75, 0xb5, 0xea, 0xe6, 0x0a, 0x8e, 0x0a, 0xb7, 0x59, 0xf0, 0x3f, 0xbe, + 0x4e, 0xff, 0x31, 0xcd, 0x0d, 0xf2, 0x9f, 0x65, 0x27, 0xff, 0x08, 0x00, 0x00, 0xff, 0xff, 0xe9, + 0x81, 0x82, 0x78, 0x5f, 0x15, 0x00, 0x00, } func (x ErrorCode) String() string { diff --git a/pbgo/extschema/schema/cloud_connect/crudapi/api.vesapi.go b/pbgo/extschema/schema/cloud_connect/crudapi/api.vesapi.go index 0708adc2c..a7294b113 100644 --- a/pbgo/extschema/schema/cloud_connect/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/cloud_connect/crudapi/api.vesapi.go @@ -1614,7 +1614,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-get" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Get" }, "delete": { @@ -1690,7 +1689,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-delete" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Delete" }, "put": { @@ -1774,7 +1772,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-replace" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Replace" }, "x-displayname": "", @@ -1922,7 +1919,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-list" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.List" }, "post": { @@ -2000,7 +1996,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-create" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Create" }, "x-displayname": "", @@ -2148,7 +2143,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-liststream" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.ListStream" }, "x-displayname": "", @@ -2256,7 +2250,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-get" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Get" }, "x-displayname": "", @@ -2404,7 +2397,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-list" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.List" }, "x-displayname": "", @@ -2487,7 +2479,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-delete" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Delete" }, "put": { @@ -2571,7 +2562,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-replace" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Replace" }, "x-displayname": "", @@ -2656,7 +2646,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-crudapi-api-create" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.crudapi.API.Create" }, "x-displayname": "", @@ -2711,12 +2700,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/cloud_connectAWSRouteTableListType", "x-displayname": "Installed Routes" }, - "state": { - "type": "string", - "description": " Attachment State", - "title": "Attachment State", - "x-displayname": "Attachment State" - }, "subnets": { "type": "array", "description": " Network Interfaces created along with the attachment", @@ -2732,6 +2715,18 @@ var APISwaggerJSON string = `{ "title": "TGW Attachment ID", "x-displayname": "TGW Attachment ID" }, + "vpc_cidr": { + "type": "string", + "description": " VPC CIDR", + "title": "VPC CIDR", + "x-displayname": "VPC CIDR" + }, + "vpc_deployment_state": { + "description": " VPC deployment state", + "title": "Deployment State", + "$ref": "#/definitions/cloud_connectCloudConnectVPCStateType", + "x-displayname": "Deployment State" + }, "vpc_id": { "type": "string", "description": " VPC ID", @@ -2980,6 +2975,264 @@ var APISwaggerJSON string = `{ } } }, + "cloud_connectAzureAttachmentsListStatusType": { + "type": "object", + "description": "Azure VEspokeNT Attachment List Status Type", + "title": "Azure spoke Attachment List Status Type", + "x-displayname": "Azure spoke Attachment List Status Type", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureAttachmentsListStatusType", + "properties": { + "attachment_status": { + "type": "array", + "description": " Azure spoke Attachment Status Type", + "title": "Azure spoke Attachment Status Type", + "items": { + "$ref": "#/definitions/cloud_connectAzureAttachmentsStatusType" + }, + "x-displayname": "Azure spoke Attachment Status" + } + } + }, + "cloud_connectAzureAttachmentsStatusType": { + "type": "object", + "description": "Azure Attachment Status Type", + "title": "Azure Attachment Status Type", + "x-displayname": "Azure Attachment Status Type", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureAttachmentsStatusType", + "properties": { + "creation_time": { + "type": "string", + "description": " Attachment Creation Time", + "title": "Attachment Creation Time", + "format": "date-time", + "x-displayname": "Attachment Creation Time" + }, + "deployment_status": { + "type": "string", + "description": " Attachment Deployment Status", + "title": "Attachment Deployment Status", + "x-displayname": "Attachment Deployment Status" + }, + "hub_owner_subscriptionid": { + "type": "string", + "description": " Hub Owner Subscription", + "title": "Hub Owner subscription", + "x-displayname": "Hub Owner Subscription" + }, + "hub_vnet_name": { + "type": "string", + "description": " Hub VNET Name", + "title": "Hub VNET Name", + "x-displayname": "Hub VNET Name" + }, + "installed_routes": { + "title": "x-displayName: \"Installed Routes\"\nRoutes", + "$ref": "#/definitions/cloud_connectAzureRouteTableWithStaticRouteListType" + }, + "peering_state": { + "type": "string", + "description": " Hub VNET Peering state", + "title": "Hub VNET Peering state", + "x-displayname": "Hub VNET Peering state" + }, + "peering_sync_level": { + "type": "string", + "description": " Hub VNET peering sync level", + "title": "Hub VNET peering sync level", + "x-displayname": "Hub VNET peering sync level" + }, + "provisioning_state": { + "type": "string", + "description": " Hub VNET Provisioning state", + "title": "Hub VNET Provisioning state", + "x-displayname": "Hub VNET Provisioning state" + }, + "spoke_vnet_id": { + "type": "string", + "description": " Spoke VNET ID", + "title": "Spoke VNET ID", + "x-displayname": "Spoke VNET ID" + }, + "subnets": { + "type": "array", + "description": " Network Interfaces created along with the attachment", + "title": "Subnets", + "items": { + "$ref": "#/definitions/cloud_connectSubnetStatusType" + }, + "x-displayname": "Network Interfaces" + }, + "vnet_attachment_id": { + "type": "string", + "description": " VNET Attachment ID", + "title": "VNET Attachment ID", + "x-displayname": "VNET Attachment ID" + } + } + }, + "cloud_connectAzureRouteTableWithStaticRoute": { + "type": "object", + "description": "Azure Route Table with Static Route", + "title": "Azure Route Table", + "x-displayname": "Azure Route Table with Static Route", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRoute", + "properties": { + "route_table_id": { + "type": "string", + "description": " Route table ID\n\nExample: - \"rt-12345678901234567\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n ves.io.schema.rules.string.pattern: ^(rt-)([a-z0-9]{8}|[a-z0-9]{17})$\n", + "title": "Route table ID", + "maxLength": 64, + "x-displayname": "Route table ID", + "x-ves-example": "rt-12345678901234567", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.pattern": "^(rt-)([a-z0-9]{8}|[a-z0-9]{17})$" + } + }, + "static_routes": { + "type": "array", + "description": " List of Static Routes\n\nExample: - \"10.1.1.0/24\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 50\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "static_routes", + "minItems": 1, + "maxItems": 50, + "items": { + "type": "string" + }, + "x-displayname": "Static Routes", + "x-ves-example": "10.1.1.0/24", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "50", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "cloud_connectAzureRouteTableWithStaticRouteListType": { + "type": "object", + "description": "List Azure Route Table with Static Route", + "title": "List Azure Route Table with Static Route", + "x-displayname": "List Azure Route Table with Static Route", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRouteListType", + "properties": { + "route_tables": { + "type": "array", + "description": " Route Tables with static routes\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 200\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "List of route tables with static routes", + "minItems": 1, + "maxItems": 200, + "items": { + "$ref": "#/definitions/cloud_connectAzureRouteTableWithStaticRoute" + }, + "x-displayname": "List of route tables with static routes", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "200", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "cloud_connectAzureVNETAttachmentType": { + "type": "object", + "title": "Azure VNET attachment", + "x-displayname": "Azure VNET Attachment", + "x-ves-oneof-field-routing_choice": "[\"custom_routing\",\"manual_routing\"]", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureVNETAttachmentType", + "properties": { + "custom_routing": { + "description": "Exclusive with [manual_routing]\n Routes for user specified CIDRs towards the CE will be installed for this subnet", + "title": "Advertise Custom CIDRs", + "$ref": "#/definitions/cloud_connectAzureRouteTableWithStaticRouteListType", + "x-displayname": "Advertise Custom CIDRs" + }, + "manual_routing": { + "description": "Exclusive with [custom_routing]\n No route tables will be programmed by F5. User will manage routing", + "title": "Manual Routing", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Manual" + }, + "subscription_id": { + "type": "string", + "description": " Enter the Subscription ID of the VNET to be attached\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Subscription ID", + "maxLength": 64, + "x-displayname": "Subscription ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, + "vnet_id": { + "type": "string", + "description": " Enter the vnet ID of the VNET to be attached\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "VNET ID", + "maxLength": 64, + "x-displayname": "VNET ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + } + } + }, + "cloud_connectAzureVNETSiteType": { + "type": "object", + "description": "Cloud Connect Azure VNET Site Type", + "title": "Cloud Connect Azure VNET Site Type", + "x-displayname": "Azure VNET Site Type", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureVNETSiteType", + "properties": { + "site": { + "description": " Azure VNET Site Reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Azure VNET Site Reference", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Azure VNET Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "vnet_attachments": { + "description": " Spoke VNETs to be attached to the Azure Hub VNET Site\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Spoke VNETs", + "$ref": "#/definitions/cloud_connectAzureVnetAttachmentListType", + "x-displayname": "Spoke VNETs", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "cloud_connectAzureVnetAttachmentListType": { + "type": "object", + "title": "VNET Attachments", + "x-displayname": "VNET Attachments", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureVnetAttachmentListType", + "properties": { + "vnet_list": { + "type": "array", + "description": "\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n", + "title": "vnet_list", + "maxItems": 128, + "items": { + "$ref": "#/definitions/cloud_connectAzureVNETAttachmentType" + }, + "x-displayname": "VNET List", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "128" + } + } + } + }, "cloud_connectCloudConnectState": { "type": "string", "description": "State of the CloudConnect connections\n\n - DOWN: Down\n\nCloudConnect and their corresponding vpc attachments are down\n - DEGRADED: Degraded\n\nSome of vpc attachments with the CloudConnect are down\n - UP: Up\n\nCloudConnect and their corresponding vpc attachments are available and healthy", @@ -2998,17 +3251,38 @@ var APISwaggerJSON string = `{ "description": "Cloud Connect Status", "title": "Cloud Connect Status", "x-displayname": "Status", - "x-ves-oneof-field-cloud_connect_deployment": "[\"cloud_connect_aws_site\"]", + "x-ves-oneof-field-cloud_connect_deployment": "[\"cloud_connect_aws_site\",\"cloud_connect_azure_site\"]", "x-ves-proto-message": "ves.io.schema.cloud_connect.CloudConnectStatusType", "properties": { "cloud_connect_aws_site": { - "description": "Exclusive with []\n Cloud Connect to AWS Sites", + "description": "Exclusive with [cloud_connect_azure_site]\n Cloud Connect to AWS Sites", "title": "Cloud Connect Attached to AWS TGW Site", "$ref": "#/definitions/cloud_connectAWSAttachmentsListStatusType", "x-displayname": "Cloud Connect to AWS TGW Site" + }, + "cloud_connect_azure_site": { + "description": "Exclusive with [cloud_connect_aws_site]\n Cloud Connect to Azure VNET Sites", + "title": "Cloud Connect Attached to Azure VNET Site", + "$ref": "#/definitions/cloud_connectAzureAttachmentsListStatusType", + "x-displayname": "Cloud Connect to AAzure VNET Site" } } }, + "cloud_connectCloudConnectVPCStateType": { + "type": "string", + "description": "Cloud Connect VPC State Type\n\n - AVAILABLE: Available\n\nCloud Connect vpc attachment is in available state.\n - PENDING: Pending\n\nCloud Connect vpc attachment is in flight.\n - FAILED: Failed\n\nCloud Connect vpc attachment has failed.\n - DELETED: Deleted\n\nCloud Connect vpc attachment has been deleted.\n - DELETING: Deleting\n\nCloud Connect vpc attachment is being deleted.", + "title": "Cloud Connect VPC State", + "enum": [ + "AVAILABLE", + "PENDING", + "FAILED", + "DELETED", + "DELETING" + ], + "default": "AVAILABLE", + "x-displayname": "Cloud Connect VPC State", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.CloudConnectVPCStateType" + }, "cloud_connectCloudLinkListType": { "type": "object", "description": "x-displayName: \"CloudLink\"\nList of CloudLink references to be attached", @@ -3039,10 +3313,10 @@ var APISwaggerJSON string = `{ "x-displayname": "All RouteTables" }, "selective_route_tables": { - "description": "Exclusive with [all_route_tables]\n Override default route for selective route tables", - "title": "Override for selective route tables", + "description": "Exclusive with [all_route_tables]\n Override default route for selective route tables for AWS", + "title": "Override for selective route tables for AWS TGW", "$ref": "#/definitions/cloud_connectAWSDefaultRoutesRouteTable", - "x-displayname": "Selective RouteTables" + "x-displayname": "Selective RouteTables for AWS" } } }, @@ -3640,10 +3914,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3987,6 +4265,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/cloud_connectAWSTGWSiteType", "x-displayname": "AWS TGW Site" }, + "azure_vnet_site": { + "title": "Azure VNET Site", + "$ref": "#/definitions/cloud_connectAzureVNETSiteType", + "x-displayname": "Azure VNET Site" + }, "bandwidth_500mbs": { "description": "Exclusive with []\n 500Mbps", "title": "500Mbps", @@ -4056,6 +4339,25 @@ var APISwaggerJSON string = `{ } } } + }, + "siteCoordinates": { + "type": "object", + "description": "x-displayName: \"Site Coordinates\"\nCoordinates of the site which provides the site physical location", + "title": "Site Coordinates", + "properties": { + "latitude": { + "type": "number", + "description": "x-displayName: \"Latitude\"\nx-example: \"10.0\"\nLatitude of the site location", + "title": "latitude", + "format": "float" + }, + "longitude": { + "type": "number", + "description": "x-displayName: \"Longitude\"\nx-example: \"20.0\"\nlongitude of site location", + "title": "longitude", + "format": "float" + } + } } }, "x-displayname": "", diff --git a/pbgo/extschema/schema/cloud_connect/object.pb.go b/pbgo/extschema/schema/cloud_connect/object.pb.go index c32204842..58c567bd9 100644 --- a/pbgo/extschema/schema/cloud_connect/object.pb.go +++ b/pbgo/extschema/schema/cloud_connect/object.pb.go @@ -246,47 +246,47 @@ func init() { } var fileDescriptor_0a4ed3c2fb13cf48 = []byte{ - // 636 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x77, 0x76, 0xd7, 0x85, 0x0c, 0x88, 0xa4, 0x7a, 0xa8, 0xa0, 0x13, 0xb2, 0xc6, 0x48, - 0xa2, 0x6d, 0x23, 0xc4, 0x18, 0x88, 0x11, 0x65, 0x49, 0xb8, 0x40, 0xd0, 0xc5, 0x93, 0x97, 0xcd, - 0x74, 0xfa, 0xb6, 0x54, 0xb7, 0x9d, 0x66, 0x66, 0xba, 0xc2, 0xc1, 0xc4, 0xf8, 0x05, 0xf4, 0xec, - 0x27, 0x30, 0x7e, 0x04, 0x4f, 0xe2, 0xc9, 0x9b, 0x84, 0x78, 0xe0, 0x28, 0xdd, 0x8b, 0x89, 0x17, - 0x3e, 0x82, 0x61, 0x4a, 0x09, 0xc5, 0x75, 0x63, 0xb2, 0xb7, 0x79, 0x7d, 0xff, 0xff, 0xaf, 0xf3, - 0xde, 0xbc, 0x19, 0x3c, 0xdb, 0x05, 0x69, 0x07, 0xdc, 0x91, 0x6c, 0x0b, 0x42, 0xea, 0xb0, 0x0e, - 0x4f, 0xbc, 0x16, 0xe3, 0x51, 0x04, 0x4c, 0x39, 0xdc, 0x7d, 0x01, 0x4c, 0xd9, 0xb1, 0xe0, 0x8a, - 0x1b, 0xd3, 0x99, 0xd2, 0xce, 0x94, 0x76, 0x41, 0x39, 0x65, 0xf9, 0x81, 0xda, 0x4a, 0x5c, 0x9b, - 0xf1, 0xd0, 0xf1, 0xb9, 0xcf, 0x1d, 0xed, 0x71, 0x93, 0xb6, 0x8e, 0x74, 0xa0, 0x57, 0x19, 0x6b, - 0xea, 0xd6, 0xa0, 0xbf, 0xaa, 0x9d, 0x18, 0xe4, 0x89, 0x70, 0xba, 0x28, 0xe4, 0xb1, 0x0a, 0x78, - 0x94, 0x27, 0xaf, 0x16, 0x93, 0x67, 0x7d, 0xf5, 0x62, 0xaa, 0x0b, 0x12, 0xa2, 0x6e, 0xd1, 0x5e, - 0xff, 0x5c, 0xc5, 0xb5, 0x0d, 0x5d, 0xa1, 0xb1, 0x80, 0x47, 0x43, 0x50, 0xd4, 0xa3, 0x8a, 0x9a, - 0x68, 0x06, 0xcd, 0x8e, 0xcd, 0x5d, 0xb7, 0x8b, 0xe5, 0x66, 0xc2, 0x75, 0x50, 0xf4, 0xd9, 0x4e, - 0x0c, 0xcd, 0x53, 0xb9, 0xb1, 0x86, 0x2f, 0xc9, 0x1d, 0xa9, 0x20, 0x6c, 0x9d, 0x12, 0xca, 0x9a, - 0x70, 0xe3, 0x1c, 0x61, 0x53, 0xab, 0xce, 0x71, 0x26, 0x32, 0xef, 0x7a, 0x4e, 0x5b, 0xc0, 0x55, - 0x19, 0x03, 0x33, 0x2b, 0x1a, 0x71, 0xd3, 0x1e, 0xd0, 0x73, 0x7b, 0x33, 0x06, 0xa6, 0x21, 0xda, - 0xb2, 0xf8, 0xbb, 0xfc, 0x76, 0xa9, 0x96, 0xe1, 0x3e, 0x2c, 0x5d, 0xf0, 0x20, 0xe4, 0x77, 0xbf, - 0xee, 0x9a, 0xe5, 0x49, 0xb4, 0xbf, 0x6b, 0x7e, 0x2f, 0xe3, 0x47, 0xb8, 0xb2, 0x0a, 0xca, 0x58, - 0x68, 0xdf, 0xdb, 0x66, 0x96, 0x04, 0x96, 0x08, 0x08, 0x41, 0x6e, 0x59, 0x2e, 0x95, 0x01, 0xb3, - 0x42, 0x1e, 0x05, 0x8a, 0x8b, 0x3b, 0x33, 0x5d, 0x90, 0x56, 0xc0, 0xad, 0x20, 0x6a, 0x0b, 0x2a, - 0x95, 0x48, 0x98, 0x4a, 0x04, 0x58, 0x02, 0xa8, 0x87, 0x97, 0xf1, 0x48, 0x13, 0xe2, 0x0e, 0x65, - 0x60, 0xdc, 0xef, 0x4f, 0x49, 0x24, 0xfc, 0x13, 0xf1, 0x4a, 0x04, 0x0a, 0xf0, 0x63, 0x5c, 0x6b, - 0x08, 0xa0, 0x6a, 0x38, 0xc4, 0x0a, 0x74, 0x60, 0x38, 0x44, 0x75, 0x2d, 0x90, 0xc3, 0x34, 0xa3, - 0xfe, 0x04, 0x8f, 0xe6, 0xfd, 0x37, 0x56, 0xf0, 0x88, 0xcf, 0x5a, 0xfa, 0xdc, 0xb2, 0xe1, 0xb9, - 0x3d, 0xf0, 0xdc, 0x56, 0x3b, 0xdc, 0xa5, 0x9d, 0xd3, 0xd3, 0xab, 0xf9, 0xec, 0x78, 0x5d, 0xff, - 0x51, 0xc6, 0xe3, 0x9b, 0x8a, 0xaa, 0x44, 0xfe, 0xf7, 0x50, 0x66, 0xf2, 0x3e, 0x43, 0xb9, 0x81, - 0xc7, 0xb2, 0xbb, 0xdb, 0x12, 0xd0, 0x96, 0x66, 0x79, 0xa6, 0x32, 0x3b, 0x36, 0x77, 0xad, 0xef, - 0x48, 0x37, 0xa1, 0x7d, 0x6c, 0x5e, 0x9e, 0xfc, 0xf4, 0xfa, 0x62, 0x61, 0x9f, 0x4d, 0xcc, 0x73, - 0x81, 0x34, 0x1e, 0x60, 0xcc, 0x78, 0xe4, 0x05, 0xfa, 0xfe, 0x98, 0x95, 0xbe, 0xbc, 0x46, 0x2e, - 0xd0, 0x9b, 0x39, 0xa3, 0x37, 0x00, 0x5f, 0x29, 0xa0, 0x5b, 0x52, 0x6f, 0xdc, 0xac, 0xea, 0xaa, - 0xe6, 0x07, 0x76, 0xab, 0x71, 0x1c, 0x35, 0xb2, 0x20, 0xab, 0x57, 0xe3, 0x0d, 0xf6, 0xd7, 0xf7, - 0xc5, 0xcb, 0xfb, 0x0f, 0x27, 0xf1, 0x04, 0x1e, 0xcf, 0xdb, 0x60, 0x27, 0x81, 0xb7, 0xfc, 0x0e, - 0xed, 0x1d, 0x92, 0xd2, 0xc1, 0x21, 0x29, 0x1d, 0x1d, 0x12, 0xf4, 0x26, 0x25, 0xe8, 0x63, 0x4a, - 0xd0, 0xb7, 0x94, 0xa0, 0xbd, 0x94, 0xa0, 0x83, 0x94, 0xa0, 0x9f, 0x29, 0x41, 0xbf, 0x52, 0x52, - 0x3a, 0x4a, 0x09, 0x7a, 0xdf, 0x23, 0xa5, 0x2f, 0x3d, 0x82, 0xf6, 0x7a, 0xa4, 0x74, 0xd0, 0x23, - 0xa5, 0xe7, 0x4f, 0x7d, 0x1e, 0xbf, 0xf4, 0xed, 0x2e, 0xef, 0x28, 0x10, 0x82, 0xda, 0x89, 0x74, - 0xf4, 0xa2, 0xcd, 0x45, 0x68, 0xc5, 0x82, 0x77, 0x03, 0x0f, 0x84, 0x95, 0xa7, 0x9d, 0xd8, 0xf5, - 0xb9, 0x03, 0xdb, 0xea, 0xe4, 0xdd, 0xe9, 0xf7, 0xbe, 0xb9, 0x35, 0xfd, 0xfc, 0xcc, 0xff, 0x09, - 0x00, 0x00, 0xff, 0xff, 0x37, 0xa0, 0x05, 0xf8, 0x7b, 0x05, 0x00, 0x00, + // 640 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0x76, 0x71, 0x21, 0x03, 0x22, 0xa9, 0x1e, 0x2a, 0xe8, 0x84, 0xac, 0x31, 0x92, + 0x68, 0xdb, 0x04, 0xe2, 0x01, 0x62, 0x34, 0x61, 0x49, 0xb8, 0x40, 0xd0, 0x85, 0x8b, 0x68, 0xb2, + 0x99, 0x4e, 0xdf, 0x96, 0xca, 0xb6, 0xd3, 0xcc, 0x4c, 0x17, 0x38, 0x98, 0x18, 0xbf, 0x80, 0x7e, + 0x0c, 0xe3, 0xc9, 0x8f, 0x20, 0x9e, 0xbc, 0x98, 0x10, 0xe2, 0x81, 0xa3, 0xdb, 0xbd, 0x78, 0xe4, + 0x23, 0x18, 0xa6, 0x14, 0xe9, 0xba, 0xd9, 0x78, 0xe1, 0x36, 0xaf, 0xef, 0xff, 0x7e, 0x33, 0xef, + 0xf5, 0xbd, 0x87, 0xe7, 0x3a, 0x20, 0xed, 0x80, 0x3b, 0x92, 0xed, 0x40, 0x48, 0x1d, 0xd6, 0xe6, + 0x89, 0xd7, 0x64, 0x3c, 0x8a, 0x80, 0x29, 0x87, 0xbb, 0x6f, 0x80, 0x29, 0x3b, 0x16, 0x5c, 0x71, + 0x63, 0x26, 0x53, 0xda, 0x99, 0xd2, 0x2e, 0x28, 0xa7, 0x2d, 0x3f, 0x50, 0x3b, 0x89, 0x6b, 0x33, + 0x1e, 0x3a, 0x3e, 0xf7, 0xb9, 0xa3, 0x63, 0xdc, 0xa4, 0xa5, 0x2d, 0x6d, 0xe8, 0x53, 0xc6, 0x9a, + 0x7e, 0x30, 0xec, 0x56, 0x75, 0x10, 0x83, 0x3c, 0x17, 0xce, 0x14, 0x85, 0x3c, 0x56, 0x01, 0x8f, + 0x72, 0xe7, 0xed, 0xa2, 0xf3, 0x72, 0x5c, 0xad, 0xe8, 0xea, 0x80, 0x84, 0xa8, 0x53, 0x0c, 0xaf, + 0x7d, 0xb9, 0x86, 0xab, 0x1b, 0x3a, 0x43, 0x63, 0x11, 0x8f, 0x85, 0xa0, 0xa8, 0x47, 0x15, 0x35, + 0xd1, 0x2c, 0x9a, 0x1b, 0x9f, 0xbf, 0x6b, 0x17, 0xd3, 0xcd, 0x84, 0xeb, 0xa0, 0xe8, 0xd6, 0x41, + 0x0c, 0x8d, 0x0b, 0xb9, 0xb1, 0x86, 0x6f, 0xc8, 0x03, 0xa9, 0x20, 0x6c, 0x5e, 0x10, 0xca, 0x9a, + 0x70, 0xaf, 0x8f, 0xb0, 0xa9, 0x55, 0x7d, 0x9c, 0xc9, 0x2c, 0x76, 0x3d, 0xa7, 0x2d, 0xe2, 0x11, + 0x19, 0x03, 0x33, 0x2b, 0x1a, 0x71, 0xdf, 0x1e, 0x52, 0x73, 0x7b, 0x33, 0x06, 0xa6, 0x21, 0x3a, + 0x64, 0xa9, 0x5b, 0x79, 0xff, 0xac, 0x9a, 0xe1, 0xbe, 0x1d, 0x9a, 0xe5, 0x29, 0x74, 0x7c, 0x68, + 0xfe, 0xa8, 0xe0, 0x57, 0xb8, 0xb2, 0x0a, 0xca, 0xd8, 0x6a, 0x3d, 0xde, 0x67, 0x96, 0x04, 0x96, + 0x08, 0x08, 0x41, 0xee, 0x58, 0x2e, 0x95, 0x01, 0xb3, 0x42, 0x1e, 0x05, 0x8a, 0x8b, 0x47, 0xb3, + 0xfd, 0x6e, 0xa9, 0x68, 0xe4, 0x51, 0xe1, 0xfd, 0x55, 0x74, 0x40, 0x5a, 0x01, 0xb7, 0x22, 0x50, + 0x7b, 0x5c, 0xec, 0x5a, 0x02, 0xa8, 0x87, 0xb7, 0xf1, 0x68, 0x03, 0xe2, 0x36, 0x65, 0x60, 0x6c, + 0x0c, 0xbe, 0x20, 0x91, 0x30, 0x8c, 0x9e, 0xb9, 0xfb, 0xd0, 0x7b, 0x22, 0x50, 0x80, 0x5f, 0xe2, + 0x6a, 0x5d, 0x00, 0x55, 0x57, 0x83, 0x5e, 0x81, 0x36, 0x5c, 0x05, 0xfa, 0x35, 0x1e, 0x59, 0x0b, + 0xe4, 0x15, 0xd5, 0xbb, 0xf6, 0x1c, 0x8f, 0xe5, 0x7f, 0xdd, 0x58, 0xc1, 0xa3, 0x3e, 0x6b, 0xea, + 0x6e, 0xc9, 0x5a, 0xf6, 0xe1, 0xd0, 0x6e, 0x59, 0x6d, 0x73, 0x97, 0xb6, 0x2f, 0x7a, 0xa6, 0xea, + 0xb3, 0xb3, 0x73, 0xed, 0x67, 0x19, 0x4f, 0x6c, 0x2a, 0xaa, 0x12, 0xf9, 0xdf, 0xa3, 0x90, 0xc9, + 0x07, 0x8c, 0xc2, 0x06, 0x1e, 0xcf, 0x36, 0x46, 0x53, 0x40, 0x4b, 0x9a, 0xe5, 0xd9, 0xca, 0xdc, + 0xf8, 0xfc, 0x9d, 0x81, 0x83, 0xd4, 0x80, 0xd6, 0x59, 0xf0, 0xf2, 0xd4, 0xe7, 0xb7, 0xd7, 0x0b, + 0xef, 0x6c, 0x60, 0x9e, 0x0b, 0xa4, 0xf1, 0x04, 0x63, 0xc6, 0x23, 0x2f, 0xd0, 0x53, 0x6b, 0x56, + 0x06, 0xf2, 0xea, 0xb9, 0x40, 0x3f, 0xe6, 0x92, 0xde, 0x00, 0x7c, 0xab, 0x80, 0x6e, 0x4a, 0xfd, + 0x70, 0x73, 0x44, 0x67, 0xb5, 0x30, 0xb4, 0x5a, 0xf5, 0x33, 0xab, 0x9e, 0x19, 0x59, 0xbe, 0x1a, + 0x6f, 0xb0, 0x7f, 0xbe, 0x2f, 0xdd, 0x3c, 0x7e, 0x3a, 0x85, 0x27, 0xf1, 0x44, 0x5e, 0x06, 0x3b, + 0x09, 0xbc, 0xe5, 0x0f, 0xe8, 0xa8, 0x4b, 0x4a, 0x27, 0x5d, 0x52, 0x3a, 0xed, 0x12, 0xf4, 0x2e, + 0x25, 0xe8, 0x53, 0x4a, 0xd0, 0xf7, 0x94, 0xa0, 0xa3, 0x94, 0xa0, 0x93, 0x94, 0xa0, 0x5f, 0x29, + 0x41, 0xbf, 0x53, 0x52, 0x3a, 0x4d, 0x09, 0xfa, 0xd8, 0x23, 0xa5, 0xaf, 0x3d, 0x82, 0x8e, 0x7a, + 0xa4, 0x74, 0xd2, 0x23, 0xa5, 0xed, 0x17, 0x3e, 0x8f, 0x77, 0x7d, 0xbb, 0xc3, 0xdb, 0x0a, 0x84, + 0xa0, 0x76, 0x22, 0x1d, 0x7d, 0x68, 0x71, 0x11, 0x5a, 0xb1, 0xe0, 0x9d, 0xc0, 0x03, 0x61, 0xe5, + 0x6e, 0x27, 0x76, 0x7d, 0xee, 0xc0, 0xbe, 0x3a, 0xdf, 0x76, 0x83, 0xb6, 0xaa, 0x5b, 0xd5, 0x4b, + 0x6f, 0xe1, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x54, 0x08, 0x3e, 0x4a, 0xf1, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/cloud_connect/pkg.vespkg.go b/pbgo/extschema/schema/cloud_connect/pkg.vespkg.go index 00384b482..b9fa80592 100644 --- a/pbgo/extschema/schema/cloud_connect/pkg.vespkg.go +++ b/pbgo/extschema/schema/cloud_connect/pkg.vespkg.go @@ -7,6 +7,7 @@ import ( "reflect" "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/server" "gopkg.volterra.us/stdlib/store" "gopkg.volterra.us/stdlib/svcfw" ) @@ -28,6 +29,25 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.cloud_connect.ReplaceRequest"] = ReplaceRequestValidator() vr["ves.io.schema.cloud_connect.ReplaceResponse"] = ReplaceResponseValidator() + vr["ves.io.schema.cloud_connect.GetMetricsRequest"] = GetMetricsRequestValidator() + vr["ves.io.schema.cloud_connect.GetMetricsResponse"] = GetMetricsResponseValidator() + vr["ves.io.schema.cloud_connect.ListMetricsRequest"] = ListMetricsRequestValidator() + vr["ves.io.schema.cloud_connect.ListMetricsResponse"] = ListMetricsResponseValidator() + vr["ves.io.schema.cloud_connect.ListSegmentMetricsRequest"] = ListSegmentMetricsRequestValidator() + vr["ves.io.schema.cloud_connect.ListSegmentMetricsResponse"] = ListSegmentMetricsResponseValidator() + + vr["ves.io.schema.cloud_connect.CredentialsRequest"] = CredentialsRequestValidator() + vr["ves.io.schema.cloud_connect.CredentialsResponse"] = CredentialsResponseValidator() + vr["ves.io.schema.cloud_connect.EdgeListRequest"] = EdgeListRequestValidator() + vr["ves.io.schema.cloud_connect.EdgeListResponse"] = EdgeListResponseValidator() + vr["ves.io.schema.cloud_connect.EdgeSite"] = EdgeSiteValidator() + + vr["ves.io.schema.cloud_connect.DiscoverVPCRequest"] = DiscoverVPCRequestValidator() + vr["ves.io.schema.cloud_connect.DiscoverVPCResponse"] = DiscoverVPCResponseValidator() + vr["ves.io.schema.cloud_connect.DiscoveredVPCType"] = DiscoveredVPCTypeValidator() + vr["ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest"] = ReApplyVPCAttachmentRequestValidator() + vr["ves.io.schema.cloud_connect.ReApplyVPCAttachmentResponse"] = ReApplyVPCAttachmentResponseValidator() + vr["ves.io.schema.cloud_connect.AWSAttachmentsListStatusType"] = AWSAttachmentsListStatusTypeValidator() vr["ves.io.schema.cloud_connect.AWSAttachmentsStatusType"] = AWSAttachmentsStatusTypeValidator() vr["ves.io.schema.cloud_connect.AWSDefaultRoutesRouteTable"] = AWSDefaultRoutesRouteTableValidator() @@ -38,16 +58,30 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.cloud_connect.AWSTGWSiteType"] = AWSTGWSiteTypeValidator() vr["ves.io.schema.cloud_connect.AWSVPCAttachmentListType"] = AWSVPCAttachmentListTypeValidator() vr["ves.io.schema.cloud_connect.AWSVPCAttachmentType"] = AWSVPCAttachmentTypeValidator() + vr["ves.io.schema.cloud_connect.AzureAttachmentsListStatusType"] = AzureAttachmentsListStatusTypeValidator() + vr["ves.io.schema.cloud_connect.AzureAttachmentsStatusType"] = AzureAttachmentsStatusTypeValidator() + vr["ves.io.schema.cloud_connect.AzureRouteTableWithStaticRoute"] = AzureRouteTableWithStaticRouteValidator() + vr["ves.io.schema.cloud_connect.AzureRouteTableWithStaticRouteListType"] = AzureRouteTableWithStaticRouteListTypeValidator() + vr["ves.io.schema.cloud_connect.AzureRouteTables"] = AzureRouteTablesValidator() + vr["ves.io.schema.cloud_connect.AzureVNETAttachmentType"] = AzureVNETAttachmentTypeValidator() + vr["ves.io.schema.cloud_connect.AzureVNETSiteType"] = AzureVNETSiteTypeValidator() + vr["ves.io.schema.cloud_connect.AzureVnetAttachmentListType"] = AzureVnetAttachmentListTypeValidator() vr["ves.io.schema.cloud_connect.CloudConnectStatusType"] = CloudConnectStatusTypeValidator() vr["ves.io.schema.cloud_connect.CloudLinkListType"] = CloudLinkListTypeValidator() vr["ves.io.schema.cloud_connect.CreateSpecType"] = CreateSpecTypeValidator() + vr["ves.io.schema.cloud_connect.CustomerEdge"] = CustomerEdgeValidator() vr["ves.io.schema.cloud_connect.DefaultRoute"] = DefaultRouteValidator() + vr["ves.io.schema.cloud_connect.EdgeData"] = EdgeDataValidator() vr["ves.io.schema.cloud_connect.GetSpecType"] = GetSpecTypeValidator() vr["ves.io.schema.cloud_connect.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.cloud_connect.LabelFilter"] = LabelFilterValidator() + vr["ves.io.schema.cloud_connect.MetricData"] = MetricDataValidator() vr["ves.io.schema.cloud_connect.PeerType"] = PeerTypeValidator() vr["ves.io.schema.cloud_connect.ReplaceAWSREType"] = ReplaceAWSRETypeValidator() vr["ves.io.schema.cloud_connect.ReplaceAWSTGWSiteType"] = ReplaceAWSTGWSiteTypeValidator() + vr["ves.io.schema.cloud_connect.ReplaceAzureVNETSiteType"] = ReplaceAzureVNETSiteTypeValidator() vr["ves.io.schema.cloud_connect.ReplaceSpecType"] = ReplaceSpecTypeValidator() + vr["ves.io.schema.cloud_connect.SegmentationData"] = SegmentationDataValidator() vr["ves.io.schema.cloud_connect.SubnetStatusType"] = SubnetStatusTypeValidator() } @@ -71,10 +105,56 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.aws_re.tgw", } + mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.cloud_connect.API.Create"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + } + + mdr.RPCAvailableInResFieldRegistry["ves.io.schema.cloud_connect.API.Create"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + } + + mdr.RPCAvailableInResFieldRegistry["ves.io.schema.cloud_connect.API.Get"] = []svcfw.EnvironmentField{ + { + FieldPath: "create_form.spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + { + FieldPath: "replace_form.spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + { + FieldPath: "spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + } + + mdr.RPCAvailableInResFieldRegistry["ves.io.schema.cloud_connect.API.List"] = []svcfw.EnvironmentField{ + { + FieldPath: "items.#.get_spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + } + + mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.cloud_connect.API.Replace"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.azure_vnet_site", + AllowedEnvironments: []string{"test"}, + }, + } + } func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { sm["ves.io.schema.cloud_connect.API"] = "config" + sm["ves.io.schema.cloud_connect.CustomAPI"] = "data" + sm["ves.io.schema.cloud_connect.ConfigCustomAPI"] = "config" + sm["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = "sync-cloud-data" } @@ -112,6 +192,66 @@ func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { }() + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + + customCSR.SwaggerRegistry["ves.io.schema.cloud_connect.Object"] = CustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.cloud_connect.CustomAPI"] = NewCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.cloud_connect.CustomAPI"] = NewCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.cloud_connect.CustomAPI"] = RegisterCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.cloud_connect.CustomAPI"] = RegisterGwCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.cloud_connect.CustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewCustomAPIServer(svc) + } + + }() + + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + + customCSR.SwaggerRegistry["ves.io.schema.cloud_connect.Object"] = ConfigCustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.cloud_connect.ConfigCustomAPI"] = NewConfigCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.cloud_connect.ConfigCustomAPI"] = NewConfigCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.cloud_connect.ConfigCustomAPI"] = RegisterConfigCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.cloud_connect.ConfigCustomAPI"] = RegisterGwConfigCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.cloud_connect.ConfigCustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewConfigCustomAPIServer(svc) + } + + }() + + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + + customCSR.SwaggerRegistry["ves.io.schema.cloud_connect.Object"] = CloudDataCustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = NewCloudDataCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = NewCloudDataCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = RegisterCloudDataCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = RegisterGwCloudDataCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewCloudDataCustomAPIServer(svc) + } + + }() + } func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { diff --git a/pbgo/extschema/schema/cloud_connect/public_crudapi.pb.go b/pbgo/extschema/schema/cloud_connect/public_crudapi.pb.go index d1f55a55d..9c154b3f8 100644 --- a/pbgo/extschema/schema/cloud_connect/public_crudapi.pb.go +++ b/pbgo/extschema/schema/cloud_connect/public_crudapi.pb.go @@ -1056,109 +1056,110 @@ func init() { } var fileDescriptor_5280d55b8e293fc2 = []byte{ - // 1629 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x9a, 0x71, 0x09, 0x96, 0x09, - 0x1a, 0x46, 0x31, 0x97, 0xae, 0xda, 0x1a, 0xb1, 0x5b, 0xb8, 0xa5, 0x28, 0x52, 0x95, 0xad, 0x3f, - 0x2f, 0x69, 0xa3, 0x68, 0x0f, 0xdb, 0xe5, 0xf2, 0x91, 0xde, 0x9a, 0xdc, 0xdd, 0xee, 0xcc, 0x52, - 0x21, 0x52, 0x01, 0x45, 0x80, 0x9e, 0x7a, 0x69, 0x91, 0x5b, 0xdb, 0x43, 0x2f, 0x05, 0x7a, 0xe9, - 0xbd, 0x80, 0x80, 0x42, 0x37, 0x07, 0x39, 0x14, 0x46, 0x0a, 0x14, 0x3e, 0x15, 0x15, 0xd5, 0x43, - 0x8e, 0x41, 0x6e, 0xed, 0x29, 0xd8, 0x99, 0x5d, 0x86, 0xa4, 0x68, 0x8a, 0x94, 0x75, 0xe2, 0xce, - 0xbc, 0xf7, 0xbe, 0x79, 0xdf, 0xbc, 0x9f, 0x7d, 0x5c, 0x7c, 0xb3, 0x0b, 0x54, 0x36, 0xac, 0x02, - 0xd5, 0x1f, 0x43, 0x47, 0x2b, 0xe8, 0x6d, 0xcb, 0x6d, 0xa8, 0xba, 0x65, 0x9a, 0xa0, 0xb3, 0x82, - 0xed, 0xd6, 0xdb, 0x86, 0xae, 0xea, 0x8e, 0xdb, 0xd0, 0x6c, 0x43, 0xb6, 0x1d, 0x8b, 0x59, 0xe4, - 0x0d, 0x61, 0x21, 0x0b, 0x0b, 0x79, 0xc4, 0x22, 0x95, 0x6f, 0x19, 0xec, 0xb1, 0x5b, 0x97, 0x75, - 0xab, 0x53, 0x68, 0x59, 0x2d, 0xab, 0xc0, 0x6d, 0xea, 0x6e, 0x93, 0xaf, 0xf8, 0x82, 0x3f, 0x09, - 0xac, 0xd4, 0xf5, 0x96, 0x65, 0xb5, 0xda, 0x50, 0xd0, 0x6c, 0xa3, 0xa0, 0x99, 0xa6, 0xc5, 0x34, - 0x66, 0x58, 0x26, 0xf5, 0xa5, 0x6f, 0xf8, 0xd2, 0x01, 0x06, 0x74, 0x6c, 0xd6, 0xf3, 0x85, 0xb9, - 0x69, 0x8e, 0x5b, 0xf5, 0x9f, 0x83, 0xce, 0x7c, 0xcd, 0xb7, 0xa7, 0x69, 0xb2, 0x9e, 0x0d, 0xc1, - 0x79, 0xa9, 0x51, 0x45, 0x70, 0x1c, 0xcb, 0x19, 0xf8, 0x32, 0x2a, 0xb3, 0xec, 0x61, 0x47, 0xaf, - 0x8d, 0x0a, 0x87, 0x31, 0xb3, 0xa3, 0xa2, 0x2e, 0x50, 0x30, 0xbb, 0x63, 0xe6, 0x99, 0x31, 0x1d, - 0x03, 0xf6, 0xd5, 0x11, 0x8d, 0xec, 0x5f, 0x11, 0xbe, 0x5c, 0x72, 0x40, 0x63, 0xa0, 0xc0, 0x2f, - 0x5c, 0xa0, 0x8c, 0xfc, 0x00, 0xc7, 0x3a, 0xc0, 0xb4, 0x86, 0xc6, 0xb4, 0x24, 0xca, 0xa0, 0x5c, - 0x62, 0xf5, 0x4d, 0x79, 0x34, 0x30, 0xbb, 0xfc, 0x0e, 0x84, 0xd5, 0x36, 0x30, 0xad, 0xd6, 0xb3, - 0x41, 0x19, 0x18, 0x91, 0x3d, 0x1c, 0xa1, 0x36, 0xe8, 0xc9, 0x10, 0x37, 0x7e, 0x57, 0x9e, 0x12, - 0x55, 0x59, 0x80, 0x54, 0x6d, 0xd0, 0x3d, 0x90, 0xb5, 0x2b, 0xbf, 0x3f, 0x58, 0xf2, 0x6c, 0xe5, - 0x96, 0xae, 0x7a, 0xbf, 0x0a, 0x47, 0xba, 0x13, 0xff, 0xe4, 0x6e, 0x54, 0x1c, 0x9a, 0xfd, 0x1f, - 0xc2, 0xcb, 0x81, 0xbf, 0xd4, 0xb6, 0x4c, 0x0a, 0xe4, 0xfb, 0xa7, 0x1c, 0xce, 0x4c, 0x74, 0x78, - 0x03, 0xd8, 0x04, 0x6f, 0x77, 0xf1, 0x15, 0xda, 0xa3, 0x0c, 0x3a, 0xea, 0x00, 0x24, 0xcc, 0x41, - 0xbe, 0x39, 0x06, 0x52, 0xe5, 0x5a, 0xa7, 0xa1, 0x96, 0x85, 0xf9, 0x76, 0x00, 0xb8, 0x3d, 0x42, - 0x3f, 0x37, 0x95, 0xfe, 0x06, 0xb0, 0x39, 0xb8, 0x1f, 0x23, 0xbc, 0xac, 0x80, 0xdd, 0xd6, 0xf4, - 0x41, 0xb0, 0x7e, 0x78, 0x8a, 0xfb, 0x5b, 0x13, 0xb9, 0xfb, 0x66, 0x13, 0xf8, 0x3f, 0x18, 0x71, - 0xf7, 0xc6, 0x54, 0x77, 0x7d, 0x94, 0x33, 0x5c, 0x26, 0x05, 0x2c, 0x39, 0x40, 0x2d, 0xd7, 0xd1, - 0x41, 0xed, 0x82, 0x43, 0x0d, 0xcb, 0xe4, 0x77, 0x1a, 0x5f, 0x8b, 0x7c, 0x76, 0x88, 0x90, 0x72, - 0x25, 0x90, 0x3e, 0x12, 0xc2, 0x61, 0x8e, 0xaf, 0xe0, 0x2b, 0x03, 0x8a, 0x22, 0xbe, 0xd9, 0x3f, - 0x20, 0x8c, 0x37, 0x80, 0x05, 0x94, 0xaf, 0xe3, 0xb8, 0xa9, 0x75, 0x80, 0xda, 0x9a, 0x0e, 0x9c, - 0x73, 0x5c, 0xf9, 0x6a, 0x83, 0x10, 0x1c, 0xf1, 0x16, 0x9c, 0x4e, 0x5c, 0xe1, 0xcf, 0xe4, 0xa7, - 0xd8, 0x3b, 0x91, 0x83, 0xa9, 0x4d, 0xcb, 0xe9, 0x68, 0x8c, 0xbb, 0xb3, 0xbc, 0xba, 0x7a, 0x56, - 0x70, 0x02, 0x1f, 0x2a, 0xdc, 0xaa, 0x64, 0x35, 0x40, 0x59, 0x76, 0x46, 0xf6, 0xb2, 0xbf, 0x8b, - 0xe2, 0xc4, 0x90, 0x26, 0xb9, 0x8f, 0x13, 0x3a, 0xcf, 0x4f, 0x7e, 0x94, 0x7f, 0xad, 0x2b, 0x33, - 0x14, 0x81, 0xcf, 0x4f, 0xc1, 0xc2, 0xdc, 0x83, 0x27, 0x3b, 0x78, 0xc9, 0x11, 0xb7, 0x21, 0xd0, - 0xc2, 0x33, 0x94, 0xd4, 0x68, 0x86, 0x28, 0x09, 0x1f, 0x80, 0xe3, 0x4d, 0x8a, 0x4c, 0x64, 0x4a, - 0x64, 0x46, 0x6a, 0x6b, 0xf1, 0x22, 0x6a, 0xeb, 0xd2, 0x85, 0xd4, 0x56, 0xf4, 0x42, 0x6a, 0x8b, - 0xfc, 0x08, 0x47, 0x29, 0xd3, 0x98, 0x4b, 0x93, 0x7f, 0xfa, 0x23, 0xca, 0x84, 0x73, 0x89, 0xd5, - 0x77, 0xa6, 0x42, 0x56, 0xb9, 0xb2, 0x70, 0x73, 0x2d, 0x7c, 0x74, 0x80, 0x14, 0xdf, 0x9e, 0x6c, - 0xe2, 0x57, 0x1c, 0x68, 0x82, 0xe3, 0x18, 0x66, 0x4b, 0x15, 0xef, 0x08, 0x9a, 0x8c, 0x71, 0xc8, - 0xeb, 0x2f, 0x28, 0xc8, 0x26, 0x67, 0x28, 0x0d, 0xcc, 0xc4, 0x3e, 0x25, 0x8f, 0x70, 0xb2, 0x01, - 0x6d, 0x60, 0xd0, 0x50, 0x85, 0x0c, 0x1a, 0x03, 0xc4, 0xf8, 0x0c, 0x88, 0x57, 0x7d, 0x6b, 0xc5, - 0x37, 0x0e, 0x70, 0x7f, 0x8c, 0xaf, 0x35, 0x0c, 0xaa, 0xd5, 0xdb, 0x93, 0x80, 0xf1, 0x0c, 0xc0, - 0xaf, 0x07, 0xe6, 0x63, 0xc8, 0x43, 0xe5, 0x7b, 0x2f, 0x12, 0x43, 0x52, 0x28, 0xfb, 0x67, 0x84, - 0x13, 0x5b, 0x06, 0x9d, 0xb1, 0x64, 0xbf, 0x81, 0x97, 0xda, 0x5a, 0x1d, 0xda, 0x6a, 0xd3, 0x68, - 0x33, 0x70, 0xfc, 0xd2, 0x4d, 0xf0, 0xbd, 0x0a, 0xdf, 0x22, 0x6f, 0xe2, 0xcb, 0x0e, 0xd8, 0x96, - 0xc3, 0xd4, 0xa6, 0x01, 0xed, 0x06, 0x4d, 0x86, 0x33, 0xe1, 0x5c, 0x5c, 0x59, 0x12, 0x9b, 0x15, - 0xbe, 0x47, 0x6e, 0xe2, 0x57, 0x7d, 0x25, 0x11, 0x94, 0x40, 0x37, 0xc2, 0x75, 0x89, 0x90, 0x89, - 0x10, 0x0a, 0x8b, 0xec, 0x51, 0x14, 0x4b, 0xc2, 0x4f, 0x51, 0xbc, 0x9b, 0x0c, 0x3a, 0xe4, 0x2a, - 0x8e, 0x32, 0x30, 0x35, 0x93, 0xf1, 0x2c, 0x8b, 0x2b, 0xfe, 0xea, 0x1c, 0x7d, 0x47, 0xc2, 0x61, - 0xd7, 0x68, 0x88, 0xd6, 0xa7, 0x78, 0x8f, 0x24, 0x83, 0x13, 0x0d, 0xa0, 0xba, 0x63, 0xf0, 0x77, - 0x70, 0x32, 0x21, 0x98, 0x0e, 0x6d, 0x91, 0x14, 0x8e, 0x05, 0xd7, 0x9c, 0x5c, 0xca, 0xa0, 0x5c, - 0x4c, 0x19, 0xac, 0xc9, 0x03, 0x1c, 0xe5, 0x97, 0x22, 0x28, 0x25, 0x56, 0x6f, 0x4f, 0x4d, 0xd6, - 0x71, 0x62, 0xf2, 0x16, 0xb7, 0x2d, 0x9b, 0xcc, 0xe9, 0x29, 0x3e, 0x10, 0xf9, 0x19, 0x4e, 0x0c, - 0x4d, 0x47, 0x7e, 0x1a, 0xdc, 0x9d, 0x0f, 0xb7, 0xf8, 0x15, 0x80, 0x00, 0x1f, 0x86, 0x24, 0xb7, - 0x31, 0xb6, 0xf6, 0x4d, 0x70, 0x54, 0x6f, 0xf8, 0x48, 0xc6, 0x79, 0xe1, 0xa6, 0xc6, 0x0e, 0x78, - 0x64, 0xc0, 0x7e, 0x90, 0x65, 0x71, 0xae, 0xed, 0xed, 0x8c, 0x34, 0x9f, 0xcb, 0x17, 0xd1, 0x7c, - 0x96, 0x5f, 0xaa, 0xf9, 0x94, 0x70, 0xac, 0x05, 0x8c, 0xf7, 0x0f, 0xbf, 0x8d, 0xcd, 0xdc, 0x80, - 0x94, 0x4b, 0x2d, 0xb1, 0x20, 0xdb, 0x18, 0xfb, 0xd9, 0x49, 0x81, 0xf9, 0x1d, 0x62, 0xde, 0xa6, - 0x13, 0x17, 0x08, 0x55, 0x60, 0xa9, 0xdb, 0x38, 0x31, 0x14, 0x56, 0x2f, 0xe3, 0x9e, 0x40, 0xcf, - 0xcf, 0x4e, 0xef, 0x91, 0xbc, 0x8a, 0x17, 0xbb, 0x5a, 0xdb, 0x0d, 0x12, 0x53, 0x2c, 0xee, 0x84, - 0xde, 0x43, 0xa9, 0xbb, 0x58, 0x1a, 0x8f, 0xdc, 0x3c, 0xf6, 0xf7, 0x22, 0xb1, 0x45, 0x29, 0x9a, - 0xfd, 0x35, 0xc2, 0x4b, 0xc3, 0x19, 0x41, 0x4a, 0x78, 0xd1, 0x60, 0xd0, 0xa1, 0x49, 0xd1, 0x50, - 0xf3, 0x73, 0xe5, 0x92, 0x22, 0x6c, 0xc9, 0x4d, 0x1c, 0x15, 0x33, 0x72, 0x32, 0xc4, 0x51, 0x92, - 0x63, 0x28, 0x65, 0x4f, 0xc8, 0x2f, 0xd6, 0xd7, 0xcb, 0x3e, 0xc1, 0x97, 0xd7, 0x79, 0xdf, 0x3b, - 0xff, 0x98, 0x90, 0xc3, 0x52, 0x53, 0x33, 0xda, 0xaa, 0xd1, 0x1c, 0xf4, 0x47, 0x5e, 0xbb, 0x31, - 0x65, 0xd9, 0xdb, 0xdf, 0x6c, 0x06, 0x7d, 0x6f, 0xe5, 0x0b, 0x84, 0x5f, 0x9b, 0x38, 0x1d, 0x90, - 0x14, 0xbe, 0xba, 0x51, 0xae, 0xa9, 0x4a, 0x75, 0x4f, 0xad, 0xec, 0x2a, 0xdb, 0xc5, 0x9a, 0xba, - 0x5e, 0xae, 0x14, 0x1f, 0x6e, 0xd5, 0xa4, 0x05, 0xf2, 0x75, 0x7c, 0x6d, 0x4c, 0x56, 0xd9, 0x55, - 0xd4, 0x92, 0x52, 0x2e, 0xd6, 0xca, 0x12, 0x22, 0x69, 0x9c, 0x9a, 0x20, 0x56, 0xca, 0x7b, 0x5b, - 0xc5, 0x52, 0x59, 0x0a, 0x91, 0x6b, 0xf8, 0xb5, 0x31, 0x79, 0xb5, 0x56, 0xac, 0x3d, 0xac, 0x4a, - 0x61, 0xf2, 0x3a, 0xfe, 0xda, 0x98, 0x48, 0x29, 0x17, 0xd7, 0xa5, 0x08, 0x79, 0x0b, 0x67, 0x4e, - 0x09, 0x2a, 0x65, 0x45, 0xd9, 0xdc, 0xd9, 0x50, 0x77, 0xd7, 0xee, 0x95, 0x4b, 0xb5, 0xaa, 0xb4, - 0x38, 0x41, 0x6b, 0x4d, 0xd9, 0xbd, 0x5f, 0xde, 0x11, 0xca, 0xe5, 0x9d, 0x52, 0xb9, 0x2a, 0x45, - 0x57, 0xff, 0x1e, 0xc7, 0xe1, 0xe2, 0xde, 0x26, 0xf9, 0x37, 0xc2, 0x51, 0x31, 0xb1, 0x90, 0x39, - 0xc6, 0x9a, 0xd4, 0xbb, 0x33, 0xe9, 0xfa, 0x23, 0xdf, 0x07, 0xfd, 0xa7, 0xc9, 0x5b, 0xcd, 0xef, - 0xbe, 0xaf, 0xe7, 0x29, 0xe8, 0xae, 0x03, 0x1d, 0xa0, 0x8f, 0xf3, 0x75, 0x8d, 0x1a, 0x7a, 0xde, - 0xa5, 0xe0, 0xdc, 0xe8, 0x02, 0xcd, 0x1b, 0x56, 0xde, 0x30, 0x9b, 0x8e, 0x46, 0x99, 0xe3, 0xea, - 0xcc, 0x75, 0x20, 0xbf, 0xef, 0x18, 0x0c, 0x3e, 0xfc, 0xe7, 0x7f, 0x3f, 0x0a, 0x7d, 0x2f, 0x7b, - 0xcb, 0xff, 0x8b, 0x59, 0x18, 0xc4, 0x9c, 0x16, 0x3e, 0x08, 0x1a, 0x81, 0x3c, 0xd8, 0x3c, 0x18, - 0xfd, 0xd3, 0x46, 0xef, 0xa0, 0x15, 0xf2, 0x2f, 0x84, 0xc3, 0x1b, 0xc0, 0xc8, 0xdb, 0x67, 0x4f, - 0x87, 0x82, 0x5a, 0x6e, 0xd6, 0x31, 0x32, 0xfb, 0xcb, 0x8f, 0xff, 0x16, 0x42, 0xfd, 0xa7, 0xc9, - 0xf7, 0x26, 0x73, 0xeb, 0x58, 0xa6, 0xc1, 0xac, 0x17, 0xd1, 0x73, 0x40, 0x6b, 0x70, 0x76, 0xb7, - 0xc8, 0x77, 0x26, 0xb1, 0x7b, 0x21, 0x29, 0x21, 0x3a, 0x20, 0x9f, 0x22, 0x1c, 0xf1, 0x2a, 0x8e, - 0xe4, 0x66, 0x28, 0x4a, 0x41, 0xed, 0x9d, 0x99, 0xcb, 0x37, 0xeb, 0x5e, 0x08, 0xb7, 0x02, 0xc9, - 0xcf, 0xc5, 0x8d, 0x7c, 0x81, 0xf0, 0x25, 0x7f, 0xe4, 0x25, 0xf3, 0x0c, 0xc6, 0xa9, 0x1b, 0xb3, - 0x29, 0xfb, 0xec, 0x7e, 0x83, 0x5e, 0x32, 0x25, 0xef, 0xa7, 0x2a, 0xe7, 0x4b, 0xc9, 0x31, 0x9d, - 0x03, 0x2f, 0x45, 0x9f, 0x22, 0x1c, 0x15, 0xed, 0xee, 0x8c, 0x1a, 0x1c, 0xe9, 0x89, 0xa9, 0xab, - 0xb2, 0xf8, 0xee, 0x21, 0x07, 0xdf, 0x3d, 0xe4, 0x72, 0xc7, 0x66, 0xbd, 0x6c, 0xef, 0x25, 0xb9, - 0xdd, 0x5e, 0x39, 0x57, 0x42, 0xde, 0x41, 0x2b, 0x29, 0xe3, 0xe8, 0x10, 0x85, 0x3e, 0x3d, 0x44, - 0xd9, 0x69, 0x2c, 0xc4, 0xcb, 0xef, 0xf9, 0x21, 0x42, 0xfd, 0x43, 0x94, 0x9b, 0xf5, 0x65, 0xf9, - 0xff, 0x43, 0xb4, 0xd8, 0x80, 0x8e, 0xf5, 0xad, 0x0f, 0xff, 0x91, 0x0c, 0x49, 0x68, 0xed, 0x23, - 0xf4, 0xc9, 0xdd, 0xc5, 0x92, 0xf2, 0x70, 0x7d, 0xeb, 0xd9, 0x71, 0x7a, 0xe1, 0xf9, 0x71, 0x7a, - 0xe1, 0xf3, 0xe3, 0x34, 0xfa, 0x55, 0x3f, 0x8d, 0xfe, 0xd2, 0x4f, 0xa3, 0x8f, 0xfb, 0x69, 0xf4, - 0xac, 0x9f, 0x46, 0xff, 0xe9, 0xa7, 0xd1, 0x67, 0xfd, 0xf4, 0xc2, 0xe7, 0xfd, 0x34, 0xfa, 0xed, - 0x49, 0x7a, 0xe1, 0xe8, 0x24, 0x8d, 0x9e, 0x9d, 0xa4, 0x17, 0x9e, 0x9f, 0xa4, 0x17, 0x7e, 0xf2, - 0xa0, 0x65, 0xd9, 0x4f, 0x5a, 0x72, 0xd7, 0xf2, 0xa6, 0x52, 0x47, 0x93, 0x5d, 0x5a, 0xe0, 0x0f, - 0xde, 0x9f, 0xb3, 0xbc, 0xed, 0x58, 0x5d, 0xa3, 0x01, 0x4e, 0x3e, 0x10, 0x17, 0xec, 0x7a, 0xcb, - 0x2a, 0xc0, 0xfb, 0xcc, 0xff, 0xfc, 0x32, 0xe9, 0x33, 0x51, 0x3d, 0xca, 0x63, 0xf1, 0xed, 0x2f, - 0x03, 0x00, 0x00, 0xff, 0xff, 0xd7, 0x2d, 0x22, 0xaa, 0x2f, 0x13, 0x00, 0x00, + // 1634 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x3d, 0x6c, 0x1b, 0xc9, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xd8, 0x32, 0x45, 0x3b, 0x04, 0x43, 0x1b, + 0x31, 0x2d, 0x9b, 0x4b, 0x43, 0x49, 0x8c, 0x48, 0x09, 0x94, 0x50, 0x14, 0xa9, 0xc8, 0xd6, 0x9f, + 0x97, 0xb4, 0x11, 0x24, 0xc5, 0x7a, 0xb9, 0x1c, 0xd2, 0x1b, 0x91, 0xbb, 0x9b, 0x9d, 0x21, 0x65, + 0x21, 0x10, 0x10, 0x18, 0x48, 0x91, 0x2a, 0x4e, 0x0c, 0xa4, 0x48, 0x52, 0x04, 0x01, 0x02, 0x5c, + 0x73, 0xcd, 0x55, 0x07, 0xa8, 0x51, 0x77, 0x86, 0x8b, 0x83, 0x71, 0xd7, 0xb8, 0xbb, 0x13, 0x75, + 0x85, 0x9b, 0x03, 0x7c, 0x57, 0x1c, 0x70, 0xdd, 0x61, 0x67, 0x76, 0x69, 0x92, 0xa2, 0x29, 0x52, + 0x27, 0x57, 0xdc, 0x99, 0xf7, 0xde, 0x37, 0xef, 0x9b, 0xf7, 0xb3, 0x8f, 0x0b, 0x6f, 0x36, 0x30, + 0x11, 0x35, 0x23, 0x45, 0xd4, 0x87, 0xb8, 0xa6, 0xa4, 0xd4, 0xaa, 0x51, 0x2f, 0xc9, 0xaa, 0xa1, + 0xeb, 0x58, 0xa5, 0x29, 0xb3, 0x5e, 0xac, 0x6a, 0xaa, 0xac, 0x5a, 0xf5, 0x92, 0x62, 0x6a, 0xa2, + 0x69, 0x19, 0xd4, 0x40, 0x17, 0xb9, 0x85, 0xc8, 0x2d, 0xc4, 0x0e, 0x8b, 0x48, 0xb2, 0xa2, 0xd1, + 0x87, 0xf5, 0xa2, 0xa8, 0x1a, 0xb5, 0x54, 0xc5, 0xa8, 0x18, 0x29, 0x66, 0x53, 0xac, 0x97, 0xd9, + 0x8a, 0x2d, 0xd8, 0x13, 0xc7, 0x8a, 0x5c, 0xaa, 0x18, 0x46, 0xa5, 0x8a, 0x53, 0x8a, 0xa9, 0xa5, + 0x14, 0x5d, 0x37, 0xa8, 0x42, 0x35, 0x43, 0x27, 0x8e, 0xf4, 0xa2, 0x23, 0x6d, 0x61, 0xe0, 0x9a, + 0x49, 0x77, 0x1c, 0x61, 0xa2, 0x9f, 0xe3, 0x46, 0xf1, 0x0f, 0x58, 0xa5, 0x8e, 0xe6, 0xd5, 0x7e, + 0x9a, 0x74, 0xc7, 0xc4, 0xee, 0x79, 0x91, 0x4e, 0x45, 0x6c, 0x59, 0x86, 0xd5, 0xf2, 0xa5, 0x53, + 0x66, 0x98, 0xed, 0x8e, 0x4e, 0x77, 0x0a, 0xdb, 0x31, 0xe3, 0x9d, 0xa2, 0x06, 0x26, 0x58, 0x6f, + 0x74, 0x99, 0xc7, 0xba, 0x74, 0x34, 0xbc, 0x2d, 0x77, 0x68, 0xc4, 0xdf, 0x07, 0x70, 0x3c, 0x63, + 0x61, 0x85, 0x62, 0x09, 0xff, 0xb1, 0x8e, 0x09, 0x45, 0xbf, 0x82, 0x81, 0x1a, 0xa6, 0x4a, 0x49, + 0xa1, 0x4a, 0x18, 0xc4, 0x40, 0x22, 0x34, 0x7b, 0x59, 0xec, 0x0c, 0xcc, 0x06, 0xbb, 0x03, 0x6e, + 0xb5, 0x86, 0xa9, 0x52, 0xd8, 0x31, 0xb1, 0xd4, 0x32, 0x42, 0x9b, 0xd0, 0x47, 0x4c, 0xac, 0x86, + 0x3d, 0xcc, 0xf8, 0xba, 0xd8, 0x27, 0xaa, 0x22, 0x07, 0xc9, 0x9b, 0x58, 0xb5, 0x41, 0x16, 0x27, + 0xff, 0xb5, 0x3b, 0x66, 0xdb, 0x8a, 0x15, 0x55, 0xb6, 0x7f, 0x25, 0x86, 0x34, 0x1f, 0x7c, 0xbe, + 0xe0, 0xe7, 0x87, 0xc6, 0xbf, 0x05, 0x70, 0xc2, 0xf5, 0x97, 0x98, 0x86, 0x4e, 0x30, 0xfa, 0xe5, + 0x11, 0x87, 0x63, 0x3d, 0x1d, 0x5e, 0xc6, 0xb4, 0x87, 0xb7, 0x1b, 0x70, 0x92, 0xec, 0x10, 0x8a, + 0x6b, 0x72, 0x0b, 0xc4, 0xcb, 0x40, 0x7e, 0xdc, 0x05, 0x92, 0x67, 0x5a, 0x47, 0xa1, 0x26, 0xb8, + 0xf9, 0x9a, 0x0b, 0xb8, 0xd6, 0x41, 0x3f, 0xd1, 0x97, 0xfe, 0x32, 0xa6, 0x43, 0x70, 0x3f, 0x00, + 0x70, 0x42, 0xc2, 0x66, 0x55, 0x51, 0x5b, 0xc1, 0xfa, 0xf5, 0x11, 0xee, 0x57, 0x7a, 0x72, 0x77, + 0xcc, 0x7a, 0xf0, 0xbf, 0xdb, 0xe1, 0xee, 0x8d, 0xbe, 0xee, 0x3a, 0x28, 0xc7, 0xb8, 0x8c, 0x52, + 0x50, 0xb0, 0x30, 0x31, 0xea, 0x96, 0x8a, 0xe5, 0x06, 0xb6, 0x88, 0x66, 0xe8, 0xec, 0x4e, 0x83, + 0x8b, 0xbe, 0x57, 0x7b, 0x00, 0x48, 0x93, 0xae, 0xf4, 0x3e, 0x17, 0xb6, 0x73, 0x3c, 0x0b, 0x27, + 0x5b, 0x14, 0x79, 0x7c, 0xe3, 0xff, 0x06, 0x10, 0x2e, 0x63, 0xea, 0x52, 0xbe, 0x04, 0x83, 0xba, + 0x52, 0xc3, 0xc4, 0x54, 0x54, 0xcc, 0x38, 0x07, 0xa5, 0x37, 0x1b, 0x08, 0x41, 0x9f, 0xbd, 0x60, + 0x74, 0x82, 0x12, 0x7b, 0x46, 0xbf, 0x87, 0xf6, 0x89, 0x0c, 0x4c, 0x2e, 0x1b, 0x56, 0x4d, 0xa1, + 0xcc, 0x9d, 0x89, 0xd9, 0xd9, 0xe3, 0x82, 0xe3, 0xfa, 0x90, 0x63, 0x56, 0x19, 0xa3, 0x84, 0xa5, + 0x09, 0xab, 0x63, 0x2f, 0xfe, 0x77, 0x3f, 0x0c, 0xb5, 0x69, 0xa2, 0x3b, 0x30, 0xa4, 0xb2, 0xfc, + 0x64, 0x47, 0x39, 0xd7, 0x3a, 0x33, 0x40, 0x11, 0x38, 0xfc, 0x24, 0xc8, 0xcd, 0x6d, 0x78, 0xb4, + 0x0e, 0xc7, 0x2c, 0x7e, 0x1b, 0x1c, 0xcd, 0x3b, 0x40, 0x49, 0x75, 0x66, 0x88, 0x14, 0x72, 0x00, + 0x18, 0x5e, 0xaf, 0xc8, 0xf8, 0xfa, 0x44, 0xa6, 0xa3, 0xb6, 0x46, 0x4f, 0xa3, 0xb6, 0xce, 0x9c, + 0x4a, 0x6d, 0xf9, 0x4f, 0xa5, 0xb6, 0xd0, 0x6f, 0xa0, 0x9f, 0x50, 0x85, 0xd6, 0x49, 0xf8, 0xbf, + 0xff, 0x01, 0x31, 0x6f, 0x22, 0x34, 0x7b, 0xad, 0x2f, 0x64, 0x9e, 0x29, 0x73, 0x37, 0x17, 0xbd, + 0xfb, 0xbb, 0x40, 0x72, 0xec, 0xd1, 0x0a, 0x3c, 0x6b, 0xe1, 0x32, 0xb6, 0x2c, 0x4d, 0xaf, 0xc8, + 0xfc, 0x1d, 0x41, 0xc2, 0x01, 0x06, 0x79, 0xe9, 0x2d, 0x05, 0x59, 0x66, 0x0c, 0x85, 0x96, 0x19, + 0xdf, 0x27, 0xe8, 0x3e, 0x0c, 0x97, 0x70, 0x15, 0x53, 0x5c, 0x92, 0xb9, 0x0c, 0x97, 0x5a, 0x88, + 0xc1, 0x01, 0x10, 0xa7, 0x1c, 0x6b, 0xc9, 0x31, 0x76, 0x71, 0x7f, 0x0b, 0xa7, 0x4b, 0x1a, 0x51, + 0x8a, 0xd5, 0x5e, 0xc0, 0x70, 0x00, 0xe0, 0x0b, 0xae, 0x79, 0x17, 0x72, 0x5b, 0xf9, 0xde, 0xf6, + 0x05, 0x80, 0xe0, 0x89, 0xff, 0x1f, 0xc0, 0xd0, 0xaa, 0x46, 0x06, 0x2c, 0xd9, 0x1f, 0xc1, 0xb1, + 0xaa, 0x52, 0xc4, 0x55, 0xb9, 0xac, 0x55, 0x29, 0xb6, 0x9c, 0xd2, 0x0d, 0xb1, 0xbd, 0x1c, 0xdb, + 0x42, 0x97, 0xe1, 0xb8, 0x85, 0x4d, 0xc3, 0xa2, 0x72, 0x59, 0xc3, 0xd5, 0x12, 0x09, 0x7b, 0x63, + 0xde, 0x44, 0x50, 0x1a, 0xe3, 0x9b, 0x39, 0xb6, 0x87, 0x6e, 0xc2, 0x73, 0x8e, 0x12, 0x0f, 0x8a, + 0xab, 0xeb, 0x63, 0xba, 0x88, 0xcb, 0x78, 0x08, 0xb9, 0x45, 0x7c, 0xdf, 0x0f, 0x05, 0xee, 0x27, + 0x2f, 0xde, 0x15, 0x8a, 0x6b, 0x68, 0x0a, 0xfa, 0x29, 0xd6, 0x15, 0x9d, 0xb2, 0x2c, 0x0b, 0x4a, + 0xce, 0xea, 0x04, 0x7d, 0x47, 0x80, 0xde, 0xba, 0x56, 0xe2, 0xad, 0x4f, 0xb2, 0x1f, 0x51, 0x0c, + 0x86, 0x4a, 0x98, 0xa8, 0x96, 0xc6, 0xde, 0xc1, 0xe1, 0x10, 0x67, 0xda, 0xb6, 0x85, 0x22, 0x30, + 0xe0, 0x5e, 0x73, 0x78, 0x2c, 0x06, 0x12, 0x01, 0xa9, 0xb5, 0x46, 0x77, 0xa1, 0x9f, 0x5d, 0x0a, + 0xa7, 0x14, 0x9a, 0x9d, 0xeb, 0x9b, 0xac, 0xdd, 0xc4, 0xc4, 0x55, 0x66, 0x9b, 0xd5, 0xa9, 0xb5, + 0x23, 0x39, 0x40, 0xe8, 0x01, 0x0c, 0xb5, 0x4d, 0x47, 0x4e, 0x1a, 0x2c, 0x0c, 0x87, 0x9b, 0x7e, + 0x03, 0xc0, 0xc1, 0xdb, 0x21, 0xd1, 0x1c, 0x84, 0xc6, 0xb6, 0x8e, 0x2d, 0xd9, 0x1e, 0x3e, 0xc2, + 0x41, 0x56, 0xb8, 0x91, 0xae, 0x03, 0xee, 0x6b, 0x78, 0xdb, 0xcd, 0xb2, 0x20, 0xd3, 0xb6, 0x77, + 0x3a, 0x9a, 0xcf, 0xf8, 0x69, 0x34, 0x9f, 0x89, 0xef, 0xd5, 0x7c, 0x32, 0x30, 0x50, 0xc1, 0x94, + 0xf5, 0x0f, 0xa7, 0x8d, 0x0d, 0xdc, 0x80, 0xa4, 0x33, 0x15, 0xbe, 0x40, 0x6b, 0x10, 0x3a, 0xd9, + 0x49, 0x30, 0x75, 0x3a, 0xc4, 0xb0, 0x4d, 0x27, 0xc8, 0x11, 0xf2, 0x98, 0x46, 0xe6, 0x60, 0xa8, + 0x2d, 0xac, 0x76, 0xc6, 0x6d, 0xe1, 0x1d, 0x27, 0x3b, 0xed, 0x47, 0x74, 0x0e, 0x8e, 0x36, 0x94, + 0x6a, 0xdd, 0x4d, 0x4c, 0xbe, 0x98, 0xf7, 0xfc, 0x1c, 0x44, 0x16, 0xa0, 0xd0, 0x1d, 0xb9, 0x61, + 0xec, 0x6f, 0xfb, 0x02, 0xa3, 0x82, 0x3f, 0xfe, 0x17, 0x00, 0xc7, 0xda, 0x33, 0x02, 0x65, 0xe0, + 0xa8, 0x46, 0x71, 0x8d, 0x84, 0x79, 0x43, 0x4d, 0x0e, 0x95, 0x4b, 0x12, 0xb7, 0x45, 0x37, 0xa1, + 0x9f, 0xcf, 0xc8, 0x61, 0x0f, 0x43, 0x09, 0x77, 0xa1, 0x64, 0x6d, 0x21, 0xbb, 0x58, 0x47, 0x2f, + 0xbe, 0x05, 0xc7, 0x97, 0x58, 0xdf, 0x3b, 0xf9, 0x98, 0x90, 0x80, 0x42, 0x59, 0xd1, 0xaa, 0xb2, + 0x56, 0x6e, 0xf5, 0x47, 0x56, 0xbb, 0x01, 0x69, 0xc2, 0xde, 0x5f, 0x29, 0xbb, 0x7d, 0x6f, 0xe6, + 0x6b, 0x00, 0xcf, 0xf7, 0x9c, 0x0e, 0x50, 0x04, 0x4e, 0x2d, 0x67, 0x0b, 0xb2, 0x94, 0xdf, 0x94, + 0x73, 0x1b, 0xd2, 0x5a, 0xba, 0x20, 0x2f, 0x65, 0x73, 0xe9, 0x7b, 0xab, 0x05, 0x61, 0x04, 0xfd, + 0x10, 0x4e, 0x77, 0xc9, 0x72, 0x1b, 0x92, 0x9c, 0x91, 0xb2, 0xe9, 0x42, 0x56, 0x00, 0x28, 0x0a, + 0x23, 0x3d, 0xc4, 0x52, 0x76, 0x73, 0x35, 0x9d, 0xc9, 0x0a, 0x1e, 0x34, 0x0d, 0xcf, 0x77, 0xc9, + 0xf3, 0x85, 0x74, 0xe1, 0x5e, 0x5e, 0xf0, 0xa2, 0x0b, 0xf0, 0x07, 0x5d, 0x22, 0x29, 0x9b, 0x5e, + 0x12, 0x7c, 0xe8, 0x0a, 0x8c, 0x1d, 0x11, 0xe4, 0xb2, 0x92, 0xb4, 0xb2, 0xbe, 0x2c, 0x6f, 0x2c, + 0xde, 0xce, 0x66, 0x0a, 0x79, 0x61, 0xb4, 0x87, 0xd6, 0xa2, 0xb4, 0x71, 0x27, 0xbb, 0xce, 0x95, + 0xb3, 0xeb, 0x99, 0x6c, 0x5e, 0xf0, 0xcf, 0x7e, 0x00, 0xa1, 0x37, 0xbd, 0xb9, 0x82, 0xbe, 0x01, + 0xd0, 0xcf, 0x27, 0x16, 0x34, 0xc4, 0x58, 0x13, 0xb9, 0x3e, 0x90, 0xae, 0x33, 0xf2, 0xfd, 0x03, + 0x34, 0x3f, 0x0a, 0xaf, 0x95, 0x7f, 0xf6, 0x48, 0x4d, 0x12, 0xac, 0xd6, 0x2d, 0x5c, 0xc3, 0xe4, + 0x61, 0xb2, 0xa8, 0x10, 0x4d, 0x4d, 0xd6, 0x09, 0xb6, 0x6e, 0x74, 0x8b, 0x08, 0x55, 0xf4, 0x92, + 0x62, 0x95, 0xb8, 0xb4, 0x81, 0x49, 0x52, 0x33, 0x92, 0x3a, 0xa6, 0xdb, 0x86, 0xb5, 0x95, 0xdc, + 0xb6, 0x34, 0x8a, 0x1f, 0x7f, 0xfa, 0xc5, 0x53, 0xcf, 0x2f, 0xe2, 0xb7, 0x9c, 0xbf, 0x9e, 0xa9, + 0x56, 0x2e, 0x90, 0xd4, 0x9f, 0xdc, 0x06, 0x21, 0xb6, 0x36, 0x77, 0x3b, 0xff, 0xcc, 0x91, 0x79, + 0x30, 0x83, 0xbe, 0x02, 0xd0, 0xbb, 0x8c, 0x29, 0xba, 0x7a, 0xfc, 0xd4, 0xc8, 0x29, 0x27, 0x06, + 0x1d, 0x2f, 0xe3, 0xff, 0x04, 0xcf, 0x3e, 0xf4, 0xd8, 0x9c, 0xa5, 0xde, 0x9c, 0x6b, 0x86, 0xae, + 0x51, 0xa3, 0x0f, 0x6d, 0x57, 0xa1, 0x8b, 0xb9, 0x85, 0x95, 0x12, 0x23, 0x7e, 0x0b, 0xfd, 0xb4, + 0x17, 0xf1, 0xb7, 0xf2, 0xe5, 0xa2, 0x5d, 0xf4, 0x25, 0x80, 0x3e, 0xbb, 0x48, 0x51, 0x62, 0x80, + 0x3a, 0xe6, 0xac, 0xaf, 0x0d, 0x5c, 0xf1, 0xf1, 0xbf, 0xbd, 0x6b, 0xda, 0x29, 0x94, 0x1c, 0x8a, + 0x36, 0xfa, 0xab, 0x07, 0x9e, 0x71, 0x06, 0x68, 0x34, 0xcc, 0x98, 0x1d, 0xb9, 0x31, 0x98, 0xb2, + 0x43, 0xfc, 0x7f, 0xef, 0x28, 0xbf, 0xef, 0x44, 0x72, 0x27, 0xcb, 0xef, 0x2e, 0x9d, 0x5d, 0x3b, + 0xdf, 0x3f, 0x03, 0xd0, 0xcf, 0x7b, 0xea, 0x31, 0x85, 0xde, 0xd1, 0x78, 0x23, 0x53, 0x22, 0xff, + 0xb8, 0x22, 0xba, 0x1f, 0x57, 0xc4, 0x6c, 0xcd, 0xa4, 0x3b, 0xf1, 0x27, 0xef, 0x88, 0xf3, 0xdc, + 0xcc, 0x89, 0x52, 0x7b, 0x1e, 0xcc, 0x44, 0x1e, 0xec, 0xef, 0x01, 0xcf, 0x27, 0x7b, 0x20, 0xde, + 0x8f, 0x1d, 0x7f, 0xf3, 0xbe, 0xdc, 0x03, 0xa0, 0xb9, 0x07, 0x12, 0x83, 0xbe, 0xa9, 0x1f, 0x7f, + 0x1c, 0xf6, 0x08, 0x60, 0xf1, 0x29, 0x78, 0xbe, 0x30, 0x9a, 0x91, 0xee, 0x2d, 0xad, 0xbe, 0x38, + 0x88, 0x8e, 0xbc, 0x3c, 0x88, 0x8e, 0xbc, 0x3e, 0x88, 0x82, 0x3f, 0x37, 0xa3, 0xe0, 0xbd, 0x66, + 0x14, 0x3c, 0x6b, 0x46, 0xc1, 0x8b, 0x66, 0x14, 0x7c, 0xde, 0x8c, 0x82, 0x57, 0xcd, 0xe8, 0xc8, + 0xeb, 0x66, 0x14, 0x3c, 0x39, 0x8c, 0x8e, 0xec, 0x1f, 0x46, 0xc1, 0x8b, 0xc3, 0xe8, 0xc8, 0xcb, + 0xc3, 0xe8, 0xc8, 0xef, 0xee, 0x56, 0x0c, 0x73, 0xab, 0x22, 0x36, 0x0c, 0x7b, 0x12, 0xb6, 0x14, + 0xb1, 0x4e, 0x52, 0xec, 0xc1, 0xfe, 0x43, 0x98, 0x34, 0x2d, 0xa3, 0xa1, 0x95, 0xb0, 0x95, 0x74, + 0xc5, 0x29, 0xb3, 0x58, 0x31, 0x52, 0xf8, 0x11, 0x75, 0x3e, 0xf9, 0xf4, 0xfa, 0x34, 0x55, 0xf4, + 0xb3, 0xd0, 0xfc, 0xe4, 0xbb, 0x00, 0x00, 0x00, 0xff, 0xff, 0x90, 0xde, 0x83, 0x28, 0xa3, 0x13, + 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/cloud_connect/public_crudapi.vesapi.go b/pbgo/extschema/schema/cloud_connect/public_crudapi.vesapi.go index c55fa3781..f69909b1c 100644 --- a/pbgo/extschema/schema/cloud_connect/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/cloud_connect/public_crudapi.vesapi.go @@ -1766,7 +1766,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-api-create" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.API.Create" }, "x-displayname": "Cloud Connect", @@ -1867,7 +1866,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-api-replace" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.API.Replace" }, "x-displayname": "Cloud Connect", @@ -1984,7 +1982,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-api-list" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.API.List" }, "x-displayname": "Cloud Connect", @@ -2095,7 +2092,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-api-get" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.API.Get" }, "delete": { @@ -2189,7 +2185,6 @@ var APISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-api-delete" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.cloud_connect.API.Delete" }, "x-displayname": "Cloud Connect", @@ -2242,12 +2237,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/cloud_connectAWSRouteTableListType", "x-displayname": "Installed Routes" }, - "state": { - "type": "string", - "description": " Attachment State", - "title": "Attachment State", - "x-displayname": "Attachment State" - }, "subnets": { "type": "array", "description": " Network Interfaces created along with the attachment", @@ -2263,6 +2252,18 @@ var APISwaggerJSON string = `{ "title": "TGW Attachment ID", "x-displayname": "TGW Attachment ID" }, + "vpc_cidr": { + "type": "string", + "description": " VPC CIDR", + "title": "VPC CIDR", + "x-displayname": "VPC CIDR" + }, + "vpc_deployment_state": { + "description": " VPC deployment state", + "title": "Deployment State", + "$ref": "#/definitions/cloud_connectCloudConnectVPCStateType", + "x-displayname": "Deployment State" + }, "vpc_id": { "type": "string", "description": " VPC ID", @@ -2511,6 +2512,264 @@ var APISwaggerJSON string = `{ } } }, + "cloud_connectAzureAttachmentsListStatusType": { + "type": "object", + "description": "Azure VEspokeNT Attachment List Status Type", + "title": "Azure spoke Attachment List Status Type", + "x-displayname": "Azure spoke Attachment List Status Type", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureAttachmentsListStatusType", + "properties": { + "attachment_status": { + "type": "array", + "description": " Azure spoke Attachment Status Type", + "title": "Azure spoke Attachment Status Type", + "items": { + "$ref": "#/definitions/cloud_connectAzureAttachmentsStatusType" + }, + "x-displayname": "Azure spoke Attachment Status" + } + } + }, + "cloud_connectAzureAttachmentsStatusType": { + "type": "object", + "description": "Azure Attachment Status Type", + "title": "Azure Attachment Status Type", + "x-displayname": "Azure Attachment Status Type", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureAttachmentsStatusType", + "properties": { + "creation_time": { + "type": "string", + "description": " Attachment Creation Time", + "title": "Attachment Creation Time", + "format": "date-time", + "x-displayname": "Attachment Creation Time" + }, + "deployment_status": { + "type": "string", + "description": " Attachment Deployment Status", + "title": "Attachment Deployment Status", + "x-displayname": "Attachment Deployment Status" + }, + "hub_owner_subscriptionid": { + "type": "string", + "description": " Hub Owner Subscription", + "title": "Hub Owner subscription", + "x-displayname": "Hub Owner Subscription" + }, + "hub_vnet_name": { + "type": "string", + "description": " Hub VNET Name", + "title": "Hub VNET Name", + "x-displayname": "Hub VNET Name" + }, + "installed_routes": { + "title": "x-displayName: \"Installed Routes\"\nRoutes", + "$ref": "#/definitions/cloud_connectAzureRouteTableWithStaticRouteListType" + }, + "peering_state": { + "type": "string", + "description": " Hub VNET Peering state", + "title": "Hub VNET Peering state", + "x-displayname": "Hub VNET Peering state" + }, + "peering_sync_level": { + "type": "string", + "description": " Hub VNET peering sync level", + "title": "Hub VNET peering sync level", + "x-displayname": "Hub VNET peering sync level" + }, + "provisioning_state": { + "type": "string", + "description": " Hub VNET Provisioning state", + "title": "Hub VNET Provisioning state", + "x-displayname": "Hub VNET Provisioning state" + }, + "spoke_vnet_id": { + "type": "string", + "description": " Spoke VNET ID", + "title": "Spoke VNET ID", + "x-displayname": "Spoke VNET ID" + }, + "subnets": { + "type": "array", + "description": " Network Interfaces created along with the attachment", + "title": "Subnets", + "items": { + "$ref": "#/definitions/cloud_connectSubnetStatusType" + }, + "x-displayname": "Network Interfaces" + }, + "vnet_attachment_id": { + "type": "string", + "description": " VNET Attachment ID", + "title": "VNET Attachment ID", + "x-displayname": "VNET Attachment ID" + } + } + }, + "cloud_connectAzureRouteTableWithStaticRoute": { + "type": "object", + "description": "Azure Route Table with Static Route", + "title": "Azure Route Table", + "x-displayname": "Azure Route Table with Static Route", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRoute", + "properties": { + "route_table_id": { + "type": "string", + "description": " Route table ID\n\nExample: - \"rt-12345678901234567\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n ves.io.schema.rules.string.pattern: ^(rt-)([a-z0-9]{8}|[a-z0-9]{17})$\n", + "title": "Route table ID", + "maxLength": 64, + "x-displayname": "Route table ID", + "x-ves-example": "rt-12345678901234567", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.pattern": "^(rt-)([a-z0-9]{8}|[a-z0-9]{17})$" + } + }, + "static_routes": { + "type": "array", + "description": " List of Static Routes\n\nExample: - \"10.1.1.0/24\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 50\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "static_routes", + "minItems": 1, + "maxItems": 50, + "items": { + "type": "string" + }, + "x-displayname": "Static Routes", + "x-ves-example": "10.1.1.0/24", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "50", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "cloud_connectAzureRouteTableWithStaticRouteListType": { + "type": "object", + "description": "List Azure Route Table with Static Route", + "title": "List Azure Route Table with Static Route", + "x-displayname": "List Azure Route Table with Static Route", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRouteListType", + "properties": { + "route_tables": { + "type": "array", + "description": " Route Tables with static routes\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 200\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "List of route tables with static routes", + "minItems": 1, + "maxItems": 200, + "items": { + "$ref": "#/definitions/cloud_connectAzureRouteTableWithStaticRoute" + }, + "x-displayname": "List of route tables with static routes", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "200", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "cloud_connectAzureVNETAttachmentType": { + "type": "object", + "title": "Azure VNET attachment", + "x-displayname": "Azure VNET Attachment", + "x-ves-oneof-field-routing_choice": "[\"custom_routing\",\"manual_routing\"]", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureVNETAttachmentType", + "properties": { + "custom_routing": { + "description": "Exclusive with [manual_routing]\n Routes for user specified CIDRs towards the CE will be installed for this subnet", + "title": "Advertise Custom CIDRs", + "$ref": "#/definitions/cloud_connectAzureRouteTableWithStaticRouteListType", + "x-displayname": "Advertise Custom CIDRs" + }, + "manual_routing": { + "description": "Exclusive with [custom_routing]\n No route tables will be programmed by F5. User will manage routing", + "title": "Manual Routing", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Manual" + }, + "subscription_id": { + "type": "string", + "description": " Enter the Subscription ID of the VNET to be attached\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Subscription ID", + "maxLength": 64, + "x-displayname": "Subscription ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, + "vnet_id": { + "type": "string", + "description": " Enter the vnet ID of the VNET to be attached\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "VNET ID", + "maxLength": 64, + "x-displayname": "VNET ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + } + } + }, + "cloud_connectAzureVNETSiteType": { + "type": "object", + "description": "Cloud Connect Azure VNET Site Type", + "title": "Cloud Connect Azure VNET Site Type", + "x-displayname": "Azure VNET Site Type", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureVNETSiteType", + "properties": { + "site": { + "description": " Azure VNET Site Reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Azure VNET Site Reference", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Azure VNET Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "vnet_attachments": { + "description": " Spoke VNETs to be attached to the Azure Hub VNET Site\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Spoke VNETs", + "$ref": "#/definitions/cloud_connectAzureVnetAttachmentListType", + "x-displayname": "Spoke VNETs", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "cloud_connectAzureVnetAttachmentListType": { + "type": "object", + "title": "VNET Attachments", + "x-displayname": "VNET Attachments", + "x-ves-proto-message": "ves.io.schema.cloud_connect.AzureVnetAttachmentListType", + "properties": { + "vnet_list": { + "type": "array", + "description": "\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n", + "title": "vnet_list", + "maxItems": 128, + "items": { + "$ref": "#/definitions/cloud_connectAzureVNETAttachmentType" + }, + "x-displayname": "VNET List", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "128" + } + } + } + }, "cloud_connectCloudConnectState": { "type": "string", "description": "State of the CloudConnect connections\n\n - DOWN: Down\n\nCloudConnect and their corresponding vpc attachments are down\n - DEGRADED: Degraded\n\nSome of vpc attachments with the CloudConnect are down\n - UP: Up\n\nCloudConnect and their corresponding vpc attachments are available and healthy", @@ -2529,17 +2788,38 @@ var APISwaggerJSON string = `{ "description": "Cloud Connect Status", "title": "Cloud Connect Status", "x-displayname": "Status", - "x-ves-oneof-field-cloud_connect_deployment": "[\"cloud_connect_aws_site\"]", + "x-ves-oneof-field-cloud_connect_deployment": "[\"cloud_connect_aws_site\",\"cloud_connect_azure_site\"]", "x-ves-proto-message": "ves.io.schema.cloud_connect.CloudConnectStatusType", "properties": { "cloud_connect_aws_site": { - "description": "Exclusive with []\n Cloud Connect to AWS Sites", + "description": "Exclusive with [cloud_connect_azure_site]\n Cloud Connect to AWS Sites", "title": "Cloud Connect Attached to AWS TGW Site", "$ref": "#/definitions/cloud_connectAWSAttachmentsListStatusType", "x-displayname": "Cloud Connect to AWS TGW Site" + }, + "cloud_connect_azure_site": { + "description": "Exclusive with [cloud_connect_aws_site]\n Cloud Connect to Azure VNET Sites", + "title": "Cloud Connect Attached to Azure VNET Site", + "$ref": "#/definitions/cloud_connectAzureAttachmentsListStatusType", + "x-displayname": "Cloud Connect to AAzure VNET Site" } } }, + "cloud_connectCloudConnectVPCStateType": { + "type": "string", + "description": "Cloud Connect VPC State Type\n\n - AVAILABLE: Available\n\nCloud Connect vpc attachment is in available state.\n - PENDING: Pending\n\nCloud Connect vpc attachment is in flight.\n - FAILED: Failed\n\nCloud Connect vpc attachment has failed.\n - DELETED: Deleted\n\nCloud Connect vpc attachment has been deleted.\n - DELETING: Deleting\n\nCloud Connect vpc attachment is being deleted.", + "title": "Cloud Connect VPC State", + "enum": [ + "AVAILABLE", + "PENDING", + "FAILED", + "DELETED", + "DELETING" + ], + "default": "AVAILABLE", + "x-displayname": "Cloud Connect VPC State", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.CloudConnectVPCStateType" + }, "cloud_connectCloudLinkListType": { "type": "object", "description": "x-displayName: \"CloudLink\"\nList of CloudLink references to be attached", @@ -2571,7 +2851,7 @@ var APISwaggerJSON string = `{ "spec": { "description": " Specification of the desired behavior of the TLS Cloud Connect", "title": "spec", - "$ref": "#/definitions/cloud_connectCreateSpecType", + "$ref": "#/definitions/schemacloud_connectCreateSpecType", "x-displayname": "Spec" } } @@ -2589,7 +2869,7 @@ var APISwaggerJSON string = `{ "spec": { "description": " Specification of the desired behavior of the TLS Cloud Connect", "title": "spec", - "$ref": "#/definitions/cloud_connectGetSpecType", + "$ref": "#/definitions/schemacloud_connectGetSpecType", "x-displayname": "Spec" }, "system_metadata": { @@ -2600,30 +2880,6 @@ var APISwaggerJSON string = `{ } } }, - "cloud_connectCreateSpecType": { - "type": "object", - "description": "Shape of the Cloud Connect specification", - "title": "Create Cloud Connect", - "x-displayname": "Create Cloud Connect", - "x-ves-oneof-field-cloud": "[\"aws_tgw_site\"]", - "x-ves-proto-message": "ves.io.schema.cloud_connect.CreateSpecType", - "properties": { - "aws_tgw_site": { - "description": "Exclusive with []\n", - "$ref": "#/definitions/cloud_connectAWSTGWSiteType", - "x-displayname": "AWS TGW Site" - }, - "segment": { - "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, "cloud_connectDefaultRoute": { "type": "object", "description": "Select Override Default Route Choice", @@ -2639,10 +2895,10 @@ var APISwaggerJSON string = `{ "x-displayname": "All RouteTables" }, "selective_route_tables": { - "description": "Exclusive with [all_route_tables]\n Override default route for selective route tables", - "title": "Override for selective route tables", + "description": "Exclusive with [all_route_tables]\n Override default route for selective route tables for AWS", + "title": "Override for selective route tables for AWS TGW", "$ref": "#/definitions/cloud_connectAWSDefaultRoutesRouteTable", - "x-displayname": "Selective RouteTables" + "x-displayname": "Selective RouteTables for AWS" } } }, @@ -2731,7 +2987,7 @@ var APISwaggerJSON string = `{ "spec": { "description": " Specification of the desired behavior of the TLS Cloud Connect", "title": "spec", - "$ref": "#/definitions/cloud_connectGetSpecType", + "$ref": "#/definitions/schemacloud_connectGetSpecType", "x-displayname": "Spec" }, "status": { @@ -2766,35 +3022,6 @@ var APISwaggerJSON string = `{ ], "default": "GET_RSP_FORMAT_DEFAULT" }, - "cloud_connectGetSpecType": { - "type": "object", - "description": "Shape of the Cloud Connect specification", - "title": "Get Cloud Connect", - "x-displayname": "Get Cloud Connect", - "x-ves-oneof-field-cloud": "[\"aws_tgw_site\"]", - "x-ves-proto-message": "ves.io.schema.cloud_connect.GetSpecType", - "properties": { - "aws_tgw_site": { - "description": "Exclusive with []\n", - "$ref": "#/definitions/cloud_connectAWSTGWSiteType", - "x-displayname": "AWS TGW Site" - }, - "segment": { - "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "state": { - "description": " State of the vpc attachments with the Cloud Connect deployment", - "$ref": "#/definitions/cloud_connectCloudConnectState", - "x-displayname": "Cloud Connect State" - } - } - }, "cloud_connectListResponse": { "type": "object", "description": "This is the output message of 'List' RPC.", @@ -2851,7 +3078,7 @@ var APISwaggerJSON string = `{ "get_spec": { "description": " If ListRequest has any specified report_fields, it will appear in object", "title": "get_spec", - "$ref": "#/definitions/cloud_connectGetSpecType", + "$ref": "#/definitions/schemacloud_connectGetSpecType", "x-displayname": "Get Specification" }, "labels": { @@ -2991,7 +3218,7 @@ var APISwaggerJSON string = `{ "spec": { "description": " Specification of the desired behavior of the TLS Cloud Connect", "title": "spec", - "$ref": "#/definitions/cloud_connectReplaceSpecType", + "$ref": "#/definitions/schemacloud_connectReplaceSpecType", "x-displayname": "Spec" } } @@ -3000,30 +3227,6 @@ var APISwaggerJSON string = `{ "type": "object", "x-ves-proto-message": "ves.io.schema.cloud_connect.ReplaceResponse" }, - "cloud_connectReplaceSpecType": { - "type": "object", - "description": "Shape of the Cloud Connect specification", - "title": "Replace Cloud Connect", - "x-displayname": "Replace Cloud Connect", - "x-ves-oneof-field-cloud": "[\"aws_tgw_site\"]", - "x-ves-proto-message": "ves.io.schema.cloud_connect.ReplaceSpecType", - "properties": { - "aws_tgw_site": { - "description": "Exclusive with []\n", - "$ref": "#/definitions/cloud_connectReplaceAWSTGWSiteType", - "x-displayname": "AWS TGW Site" - }, - "segment": { - "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, "cloud_connectStatusObject": { "type": "object", "description": "Most recently observed status of object", @@ -3399,10 +3602,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3459,10 +3666,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3521,10 +3732,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3796,6 +4011,95 @@ var APISwaggerJSON string = `{ } } }, + "schemacloud_connectCreateSpecType": { + "type": "object", + "description": "Shape of the Cloud Connect specification", + "title": "Create Cloud Connect", + "x-displayname": "Create Cloud Connect", + "x-ves-oneof-field-cloud": "[\"aws_tgw_site\"]", + "x-ves-proto-message": "ves.io.schema.cloud_connect.CreateSpecType", + "properties": { + "aws_tgw_site": { + "description": "Exclusive with []\n", + "$ref": "#/definitions/cloud_connectAWSTGWSiteType", + "x-displayname": "AWS TGW Site" + }, + "azure_vnet_site": { + "$ref": "#/definitions/cloud_connectAzureVNETSiteType", + "x-displayname": "Azure VNET Site" + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "schemacloud_connectGetSpecType": { + "type": "object", + "description": "Shape of the Cloud Connect specification", + "title": "Get Cloud Connect", + "x-displayname": "Get Cloud Connect", + "x-ves-oneof-field-cloud": "[\"aws_tgw_site\"]", + "x-ves-proto-message": "ves.io.schema.cloud_connect.GetSpecType", + "properties": { + "aws_tgw_site": { + "description": "Exclusive with []\n", + "$ref": "#/definitions/cloud_connectAWSTGWSiteType", + "x-displayname": "AWS TGW Site" + }, + "azure_vnet_site": { + "$ref": "#/definitions/cloud_connectAzureVNETSiteType", + "x-displayname": "Azure VNET Site" + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "state": { + "description": " State of the vpc attachments with the Cloud Connect deployment", + "$ref": "#/definitions/cloud_connectCloudConnectState", + "x-displayname": "Cloud Connect State" + } + } + }, + "schemacloud_connectReplaceSpecType": { + "type": "object", + "description": "Shape of the Cloud Connect specification", + "title": "Replace Cloud Connect", + "x-displayname": "Replace Cloud Connect", + "x-ves-oneof-field-cloud": "[\"aws_tgw_site\"]", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ReplaceSpecType", + "properties": { + "aws_tgw_site": { + "description": "Exclusive with []\n", + "$ref": "#/definitions/cloud_connectReplaceAWSTGWSiteType", + "x-displayname": "AWS TGW Site" + }, + "azure_vnet_site": { + "$ref": "#/definitions/cloud_connectAzureVNETSiteType", + "x-displayname": "Azure VNET Site" + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, "schemaviewsObjectRefType": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", @@ -3841,6 +4145,25 @@ var APISwaggerJSON string = `{ } } } + }, + "siteCoordinates": { + "type": "object", + "description": "x-displayName: \"Site Coordinates\"\nCoordinates of the site which provides the site physical location", + "title": "Site Coordinates", + "properties": { + "latitude": { + "type": "number", + "description": "x-displayName: \"Latitude\"\nx-example: \"10.0\"\nLatitude of the site location", + "title": "latitude", + "format": "float" + }, + "longitude": { + "type": "number", + "description": "x-displayName: \"Longitude\"\nx-example: \"20.0\"\nlongitude of site location", + "title": "longitude", + "format": "float" + } + } } }, "x-displayname": "Cloud Connect", diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi.pb.go b/pbgo/extschema/schema/cloud_connect/public_customapi.pb.go new file mode 100644 index 000000000..041f5f25e --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi.pb.go @@ -0,0 +1,3198 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/cloud_connect/public_customapi.proto + +// Cloud Connect +// +// x-displayName: "Cloud Connect" +// Cloud Connect APIs are used to get the data for cloud connect for all customer edges. +// Response includes in/out throughput metrics for all the tenant's Cloud Connect Sites +// It is always scoped by system namespace. + +package cloud_connect + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Get Metrics Request +// +// x-displayName: "Get Metrics Request" +// Request to get cloud connect data +type GetMetricsRequest struct { + // Name + // + // x-displayName: "Name" + // x-required + // x-example: "cloud_connect-1" + // Cloud Connect name + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // field_selector + // + // x-displayName: "Field Selector" + // + // Select fields to be returned in the response. + // field_selector is used to specify the fields to be returned in the response, thereby limiting the + // amount of data returned in the response. + // + // Note: Selecting many/all fields may impact the query latency. + // + // Optional: If not specified, only the following fields are returned in the response. + // METRIC_TYPE_IN_BYTES, METRIC_TYPE_OUT_BYTES + FieldSelector []FieldSelector `protobuf:"varint,2,rep,packed,name=field_selector,json=fieldSelector,proto3,enum=ves.io.schema.cloud_connect.FieldSelector" json:"field_selector,omitempty"` + // start_time + // + // x-displayName: "Start Time" + // x-example: "2019-09-23T12:30:11.733Z" + // + // start time of metric collection from which data will be considered to fetch cloud connect data. + // Format: unix_timestamp|rfc 3339 + // + // Optional: If not specified, then the start_time will be evaluated to end_time-10m + // If end_time is not specified, then the start_time will be evaluated to -10m + StartTime string `protobuf:"bytes,3,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` + // end_time + // + // x-displayName: "End Time" + // x-example: "2019-09-24T12:30:11.733Z" + // + // end time of metric collection from which data will be considered to fetch cloud connect data. + // Format: unix_timestamp|rfc 3339 + // + // Optional: If not specified, then the end_time will be evaluated to start_time+10m + // If start_time is not specified, then the end_time will be evaluated to + EndTime string `protobuf:"bytes,4,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` + // step + // + // x-displayName: "Step" + // x-example: "5m" + // + // step is the resolution width, which determines the number of the data points [x-axis (time)] to be returned in the response. + // The timestamps in the response will be t1=start_time, t2=t1+step, ... tn=tn-1+step, where tn <= end_time. + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + // + // Optional: If not specified, then step size is evaluated to + Step string `protobuf:"bytes,5,opt,name=step,proto3" json:"step,omitempty"` +} + +func (m *GetMetricsRequest) Reset() { *m = GetMetricsRequest{} } +func (*GetMetricsRequest) ProtoMessage() {} +func (*GetMetricsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_f06559f2a0429fbd, []int{0} +} +func (m *GetMetricsRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetMetricsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetMetricsRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetMetricsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetMetricsRequest.Merge(m, src) +} +func (m *GetMetricsRequest) XXX_Size() int { + return m.Size() +} +func (m *GetMetricsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetMetricsRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetMetricsRequest proto.InternalMessageInfo + +func (m *GetMetricsRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *GetMetricsRequest) GetFieldSelector() []FieldSelector { + if m != nil { + return m.FieldSelector + } + return nil +} + +func (m *GetMetricsRequest) GetStartTime() string { + if m != nil { + return m.StartTime + } + return "" +} + +func (m *GetMetricsRequest) GetEndTime() string { + if m != nil { + return m.EndTime + } + return "" +} + +func (m *GetMetricsRequest) GetStep() string { + if m != nil { + return m.Step + } + return "" +} + +// Get Metrics Response +// +// x-displayName: "Get Metrics Response" +// Get Metrics Response +type GetMetricsResponse struct { + // Data + // + // x-displayName: "Data" + // Metric data specified for the cloud connect + Data []*MetricData `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"` + // step + // + // x-displayName: "Step" + // x-example: "30m" + // Actual step size used in the response. It could be higher than the requested step due to metric rollups and the query duration. + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + Step string `protobuf:"bytes,2,opt,name=step,proto3" json:"step,omitempty"` +} + +func (m *GetMetricsResponse) Reset() { *m = GetMetricsResponse{} } +func (*GetMetricsResponse) ProtoMessage() {} +func (*GetMetricsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_f06559f2a0429fbd, []int{1} +} +func (m *GetMetricsResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetMetricsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetMetricsResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetMetricsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetMetricsResponse.Merge(m, src) +} +func (m *GetMetricsResponse) XXX_Size() int { + return m.Size() +} +func (m *GetMetricsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetMetricsResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GetMetricsResponse proto.InternalMessageInfo + +func (m *GetMetricsResponse) GetData() []*MetricData { + if m != nil { + return m.Data + } + return nil +} + +func (m *GetMetricsResponse) GetStep() string { + if m != nil { + return m.Step + } + return "" +} + +// List metrics Request +// +// x-displayName: "List Metrics Request" +// cloud_connect API is used to get the in/out throughput +// for the tenant's customer edges. +type ListMetricsRequest struct { + // label_filter + // + // x-displayName: "Label Filter" + // + // List of label filter expressions of the form "label key" QueryOp "value". + // Response will only contain data that matches all the conditions specified in the label_filter. + // + // Optional: If not specified, connectivity data for all sites will be returned in the response. + LabelFilter []*LabelFilter `protobuf:"bytes,1,rep,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // field_selector + // + // x-displayName: "Field Selector" + // + // Select fields to be returned in the response. + // field_selector is used to specify the fields to be returned in the response, thereby limiting the + // amount of data returned in the response. + // + // Note: Selecting many/all fields may impact the query latency. + // + // Optional: If not specified, only the following fields are returned in the response. + // METRIC_TYPE_IN_BYTES, METRIC_TYPE_OUT_BYTES + FieldSelector []FieldSelector `protobuf:"varint,2,rep,packed,name=field_selector,json=fieldSelector,proto3,enum=ves.io.schema.cloud_connect.FieldSelector" json:"field_selector,omitempty"` + // start_time + // + // x-displayName: "Start Time" + // x-example: "2019-09-23T12:30:11.733Z" + // + // start time of metric collection from which data will be considered to fetch cloud connect data. + // Format: unix_timestamp|rfc 3339 + // + // Optional: If not specified, then the start_time will be evaluated to end_time-10m + // If end_time is not specified, then the start_time will be evaluated to -10m + StartTime string `protobuf:"bytes,3,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` + // end_time + // + // x-displayName: "End Time" + // x-example: "2019-09-24T12:30:11.733Z" + // + // end time of metric collection from which data will be considered to fetch cloud connect data. + // Format: unix_timestamp|rfc 3339 + // + // Optional: If not specified, then the end_time will be evaluated to start_time+10m + // If start_time is not specified, then the end_time will be evaluated to + EndTime string `protobuf:"bytes,4,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` + // step + // + // x-displayName: "Step" + // x-example: "5m" + // + // step is the resolution width, which determines the number of the data points [x-axis (time)] to be returned in the response. + // The timestamps in the response will be t1=start_time, t2=t1+step, ... tn=tn-1+step, where tn <= end_time. + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + // + // Optional: If not specified, then step size is evaluated to + Step string `protobuf:"bytes,5,opt,name=step,proto3" json:"step,omitempty"` +} + +func (m *ListMetricsRequest) Reset() { *m = ListMetricsRequest{} } +func (*ListMetricsRequest) ProtoMessage() {} +func (*ListMetricsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_f06559f2a0429fbd, []int{2} +} +func (m *ListMetricsRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListMetricsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListMetricsRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListMetricsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListMetricsRequest.Merge(m, src) +} +func (m *ListMetricsRequest) XXX_Size() int { + return m.Size() +} +func (m *ListMetricsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ListMetricsRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ListMetricsRequest proto.InternalMessageInfo + +func (m *ListMetricsRequest) GetLabelFilter() []*LabelFilter { + if m != nil { + return m.LabelFilter + } + return nil +} + +func (m *ListMetricsRequest) GetFieldSelector() []FieldSelector { + if m != nil { + return m.FieldSelector + } + return nil +} + +func (m *ListMetricsRequest) GetStartTime() string { + if m != nil { + return m.StartTime + } + return "" +} + +func (m *ListMetricsRequest) GetEndTime() string { + if m != nil { + return m.EndTime + } + return "" +} + +func (m *ListMetricsRequest) GetStep() string { + if m != nil { + return m.Step + } + return "" +} + +// List Metrics Response +// +// x-displayName: "List Metrics Response" +// Response for cloud connect API contains list of customer edges & cloud connects associated with the customer edge. +// Each cloud connect contains throughput data for a given cloud connect. +type ListMetricsResponse struct { + // x-displayName: "Data" + // metric data for the given metric. + Data []*SegmentationData `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"` + // Customer Edges + // + // x-displayName: "Customer Edges" + // Cloud connect data for list of customer edges owned by a tenant. + Edges []*EdgeData `protobuf:"bytes,2,rep,name=edges,proto3" json:"edges,omitempty"` + // step + // + // x-displayName: "Step" + // x-example: "30m" + // Actual step size used in the response. It could be higher than the requested step due to metric rollups and the query duration. + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + Step string `protobuf:"bytes,3,opt,name=step,proto3" json:"step,omitempty"` +} + +func (m *ListMetricsResponse) Reset() { *m = ListMetricsResponse{} } +func (*ListMetricsResponse) ProtoMessage() {} +func (*ListMetricsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_f06559f2a0429fbd, []int{3} +} +func (m *ListMetricsResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListMetricsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListMetricsResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListMetricsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListMetricsResponse.Merge(m, src) +} +func (m *ListMetricsResponse) XXX_Size() int { + return m.Size() +} +func (m *ListMetricsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ListMetricsResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ListMetricsResponse proto.InternalMessageInfo + +func (m *ListMetricsResponse) GetData() []*SegmentationData { + if m != nil { + return m.Data + } + return nil +} + +func (m *ListMetricsResponse) GetEdges() []*EdgeData { + if m != nil { + return m.Edges + } + return nil +} + +func (m *ListMetricsResponse) GetStep() string { + if m != nil { + return m.Step + } + return "" +} + +// List Segment metrics Request +// +// x-displayName: "List Metrics Request" +// cloud_connect API is used to get the in/out throughput +// for the tenant's customer edges. +type ListSegmentMetricsRequest struct { + // label_filter + // + // x-displayName: "Label Filter" + // + // List of label filter expressions of the form "label key" QueryOp "value". + // Response will only contain data that matches all the conditions specified in the label_filter. + // + // Optional: If not specified, connectivity data for all sites will be returned in the response. + LabelFilter []*LabelFilter `protobuf:"bytes,1,rep,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // field_selector + // + // x-displayName: "Field Selector" + // + // Select fields to be returned in the response. + // field_selector is used to specify the fields to be returned in the response, thereby limiting the + // amount of data returned in the response. + // + // Note: Selecting many/all fields may impact the query latency. + // + // Optional: If not specified, only the following fields are returned in the response. + // METRIC_TYPE_IN_BYTES, METRIC_TYPE_OUT_BYTES + FieldSelector []FieldSelector `protobuf:"varint,2,rep,packed,name=field_selector,json=fieldSelector,proto3,enum=ves.io.schema.cloud_connect.FieldSelector" json:"field_selector,omitempty"` + // start_time + // + // x-displayName: "Start Time" + // x-example: "2019-09-23T12:30:11.733Z" + // + // start time of metric collection from which data will be considered to fetch cloud connect data. + // Format: unix_timestamp|rfc 3339 + // + // Optional: If not specified, then the start_time will be evaluated to end_time-10m + // If end_time is not specified, then the start_time will be evaluated to -10m + StartTime string `protobuf:"bytes,3,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` + // end_time + // + // x-displayName: "End Time" + // x-example: "2019-09-24T12:30:11.733Z" + // + // end time of metric collection from which data will be considered to fetch cloud connect data. + // Format: unix_timestamp|rfc 3339 + // + // Optional: If not specified, then the end_time will be evaluated to start_time+10m + // If start_time is not specified, then the end_time will be evaluated to + EndTime string `protobuf:"bytes,4,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` + // step + // + // x-displayName: "Step" + // x-example: "5m" + // + // step is the resolution width, which determines the number of the data points [x-axis (time)] to be returned in the response. + // The timestamps in the response will be t1=start_time, t2=t1+step, ... tn=tn-1+step, where tn <= end_time. + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + // + // Optional: If not specified, then step size is evaluated to + Step string `protobuf:"bytes,5,opt,name=step,proto3" json:"step,omitempty"` +} + +func (m *ListSegmentMetricsRequest) Reset() { *m = ListSegmentMetricsRequest{} } +func (*ListSegmentMetricsRequest) ProtoMessage() {} +func (*ListSegmentMetricsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_f06559f2a0429fbd, []int{4} +} +func (m *ListSegmentMetricsRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListSegmentMetricsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListSegmentMetricsRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListSegmentMetricsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListSegmentMetricsRequest.Merge(m, src) +} +func (m *ListSegmentMetricsRequest) XXX_Size() int { + return m.Size() +} +func (m *ListSegmentMetricsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ListSegmentMetricsRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ListSegmentMetricsRequest proto.InternalMessageInfo + +func (m *ListSegmentMetricsRequest) GetLabelFilter() []*LabelFilter { + if m != nil { + return m.LabelFilter + } + return nil +} + +func (m *ListSegmentMetricsRequest) GetFieldSelector() []FieldSelector { + if m != nil { + return m.FieldSelector + } + return nil +} + +func (m *ListSegmentMetricsRequest) GetStartTime() string { + if m != nil { + return m.StartTime + } + return "" +} + +func (m *ListSegmentMetricsRequest) GetEndTime() string { + if m != nil { + return m.EndTime + } + return "" +} + +func (m *ListSegmentMetricsRequest) GetStep() string { + if m != nil { + return m.Step + } + return "" +} + +// List Segment Metrics Response +// +// x-displayName: "List Metrics Response" +// Response for cloud connect API contains list of customer edges & cloud connects associated with the customer edge. +// Each cloud connect contains throughput data for a given cloud connect. +type ListSegmentMetricsResponse struct { + // x-displayName: "Data" + // metric data for the given metric. + Segment []*SegmentationData `protobuf:"bytes,1,rep,name=segment,proto3" json:"segment,omitempty"` + // Customer Edges + // + // x-displayName: "Customer Edges" + // Cloud connect data for list of customer edges owned by a tenant. + Edges []*EdgeData `protobuf:"bytes,2,rep,name=edges,proto3" json:"edges,omitempty"` + // step + // + // x-displayName: "Step" + // x-example: "30m" + // Actual step size used in the response. It could be higher than the requested step due to metric rollups and the query duration. + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + Step string `protobuf:"bytes,3,opt,name=step,proto3" json:"step,omitempty"` +} + +func (m *ListSegmentMetricsResponse) Reset() { *m = ListSegmentMetricsResponse{} } +func (*ListSegmentMetricsResponse) ProtoMessage() {} +func (*ListSegmentMetricsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_f06559f2a0429fbd, []int{5} +} +func (m *ListSegmentMetricsResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListSegmentMetricsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListSegmentMetricsResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListSegmentMetricsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListSegmentMetricsResponse.Merge(m, src) +} +func (m *ListSegmentMetricsResponse) XXX_Size() int { + return m.Size() +} +func (m *ListSegmentMetricsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ListSegmentMetricsResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ListSegmentMetricsResponse proto.InternalMessageInfo + +func (m *ListSegmentMetricsResponse) GetSegment() []*SegmentationData { + if m != nil { + return m.Segment + } + return nil +} + +func (m *ListSegmentMetricsResponse) GetEdges() []*EdgeData { + if m != nil { + return m.Edges + } + return nil +} + +func (m *ListSegmentMetricsResponse) GetStep() string { + if m != nil { + return m.Step + } + return "" +} + +func init() { + proto.RegisterType((*GetMetricsRequest)(nil), "ves.io.schema.cloud_connect.GetMetricsRequest") + golang_proto.RegisterType((*GetMetricsRequest)(nil), "ves.io.schema.cloud_connect.GetMetricsRequest") + proto.RegisterType((*GetMetricsResponse)(nil), "ves.io.schema.cloud_connect.GetMetricsResponse") + golang_proto.RegisterType((*GetMetricsResponse)(nil), "ves.io.schema.cloud_connect.GetMetricsResponse") + proto.RegisterType((*ListMetricsRequest)(nil), "ves.io.schema.cloud_connect.ListMetricsRequest") + golang_proto.RegisterType((*ListMetricsRequest)(nil), "ves.io.schema.cloud_connect.ListMetricsRequest") + proto.RegisterType((*ListMetricsResponse)(nil), "ves.io.schema.cloud_connect.ListMetricsResponse") + golang_proto.RegisterType((*ListMetricsResponse)(nil), "ves.io.schema.cloud_connect.ListMetricsResponse") + proto.RegisterType((*ListSegmentMetricsRequest)(nil), "ves.io.schema.cloud_connect.ListSegmentMetricsRequest") + golang_proto.RegisterType((*ListSegmentMetricsRequest)(nil), "ves.io.schema.cloud_connect.ListSegmentMetricsRequest") + proto.RegisterType((*ListSegmentMetricsResponse)(nil), "ves.io.schema.cloud_connect.ListSegmentMetricsResponse") + golang_proto.RegisterType((*ListSegmentMetricsResponse)(nil), "ves.io.schema.cloud_connect.ListSegmentMetricsResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/cloud_connect/public_customapi.proto", fileDescriptor_f06559f2a0429fbd) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/cloud_connect/public_customapi.proto", fileDescriptor_f06559f2a0429fbd) +} + +var fileDescriptor_f06559f2a0429fbd = []byte{ + // 856 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x31, 0x8f, 0xdc, 0x44, + 0x14, 0xde, 0xf1, 0xee, 0xe6, 0xb8, 0x59, 0x88, 0xc0, 0x34, 0xce, 0x26, 0xb2, 0x4e, 0x96, 0xa2, + 0x2c, 0x11, 0xb6, 0x4f, 0x8b, 0x42, 0x10, 0x81, 0x22, 0x07, 0x24, 0x42, 0x04, 0x01, 0x0e, 0x15, + 0xcd, 0x6a, 0x6c, 0xbf, 0xf5, 0x0d, 0xb1, 0x3d, 0x8e, 0x67, 0xbc, 0x24, 0x42, 0x48, 0xe8, 0x1a, + 0x90, 0x68, 0x50, 0x10, 0x52, 0x1a, 0x24, 0x1a, 0x24, 0xfe, 0x00, 0x12, 0x22, 0xcd, 0x41, 0xc3, + 0x55, 0xe8, 0x04, 0x4d, 0x4a, 0xce, 0x4b, 0x01, 0xdd, 0xf5, 0x34, 0xc8, 0x63, 0xef, 0xdd, 0xfa, + 0xee, 0x30, 0xcb, 0x49, 0xd7, 0x20, 0xba, 0x19, 0xbf, 0xef, 0x9b, 0xf7, 0xe6, 0x7b, 0xcf, 0xef, + 0x0d, 0x1e, 0x4e, 0x80, 0x5b, 0x94, 0xd9, 0xdc, 0x5b, 0x87, 0x88, 0xd8, 0x5e, 0xc8, 0x32, 0x7f, + 0xe4, 0xb1, 0x38, 0x06, 0x4f, 0xd8, 0x49, 0xe6, 0x86, 0xd4, 0x1b, 0x79, 0x19, 0x17, 0x2c, 0x22, + 0x09, 0xb5, 0x92, 0x94, 0x09, 0xa6, 0x9e, 0x2d, 0x39, 0x56, 0xc9, 0xb1, 0x6a, 0x9c, 0xbe, 0x19, + 0x50, 0xb1, 0x9e, 0xb9, 0x96, 0xc7, 0x22, 0x3b, 0x60, 0x01, 0xb3, 0x25, 0xc7, 0xcd, 0xc6, 0x72, + 0x27, 0x37, 0x72, 0x55, 0x9e, 0xd5, 0x3f, 0x17, 0x30, 0x16, 0x84, 0x60, 0x93, 0x84, 0xda, 0x24, + 0x8e, 0x99, 0x20, 0x82, 0xb2, 0x98, 0x57, 0xd6, 0x0b, 0x4d, 0xd1, 0x89, 0xbb, 0x09, 0xcc, 0x80, + 0x67, 0xeb, 0x40, 0x96, 0xcc, 0x9f, 0x72, 0xae, 0x6e, 0x9c, 0x90, 0x90, 0xfa, 0x44, 0x40, 0x65, + 0x35, 0x0e, 0x58, 0x81, 0x43, 0x3c, 0xa9, 0x9f, 0x60, 0x7c, 0xa4, 0xe0, 0x27, 0xae, 0x83, 0x78, + 0x1d, 0x44, 0x4a, 0x3d, 0xee, 0xc0, 0xed, 0x0c, 0xb8, 0x50, 0x55, 0xdc, 0x89, 0x49, 0x04, 0x1a, + 0x5a, 0x41, 0x83, 0x65, 0x47, 0xae, 0xd5, 0x10, 0x9f, 0x1e, 0x53, 0x08, 0xfd, 0x11, 0x87, 0x10, + 0x3c, 0xc1, 0x52, 0x4d, 0x59, 0x69, 0x0f, 0x4e, 0x0f, 0x2f, 0x5a, 0x0d, 0xa2, 0x59, 0xd7, 0x0a, + 0xca, 0xcd, 0x8a, 0xb1, 0x76, 0xe6, 0xbb, 0x3f, 0x36, 0xdb, 0xf8, 0x1e, 0x5a, 0x32, 0xba, 0x1b, + 0x48, 0x79, 0x1c, 0x15, 0xdb, 0xee, 0x3d, 0xa4, 0x68, 0xc8, 0x79, 0x6c, 0x3c, 0x8f, 0x54, 0x9f, + 0xc2, 0x98, 0x0b, 0x92, 0x8a, 0x91, 0xa0, 0x11, 0x68, 0xed, 0x22, 0x8e, 0x35, 0x2c, 0xe1, 0x69, + 0xfb, 0x7e, 0x07, 0x39, 0xcb, 0xd2, 0xfa, 0x36, 0x8d, 0x40, 0x3d, 0x8f, 0x1f, 0x81, 0xd8, 0x2f, + 0x81, 0x9d, 0x43, 0xc0, 0x25, 0x88, 0x7d, 0x09, 0xd3, 0x71, 0x87, 0x0b, 0x48, 0xb4, 0x6e, 0x0d, + 0xf2, 0x65, 0x07, 0x39, 0xf2, 0xbb, 0x71, 0x1b, 0xab, 0xf3, 0x42, 0xf0, 0x84, 0xc5, 0x1c, 0xd4, + 0x2b, 0xb8, 0xe3, 0x13, 0x41, 0x34, 0xb4, 0xd2, 0x1e, 0xf4, 0x86, 0x17, 0x1a, 0xef, 0x5a, 0x72, + 0x5f, 0x26, 0x82, 0x38, 0x92, 0xb4, 0xe7, 0x52, 0xa9, 0xb9, 0xdc, 0x55, 0x66, 0x2e, 0xbf, 0x57, + 0xb0, 0x7a, 0x83, 0xf2, 0x83, 0xea, 0xbf, 0x86, 0x1f, 0x0d, 0x89, 0x0b, 0xe1, 0x68, 0x4c, 0x43, + 0x01, 0x69, 0xe5, 0x7b, 0xd0, 0xe8, 0xfb, 0x46, 0x41, 0xb8, 0x26, 0xf1, 0x4e, 0x2f, 0xdc, 0xdf, + 0xfc, 0xe7, 0xd3, 0xf6, 0x0d, 0xc2, 0x4f, 0xd6, 0x34, 0xac, 0x12, 0x77, 0xb5, 0x96, 0x38, 0xb3, + 0xf1, 0xb6, 0x37, 0x21, 0x88, 0x20, 0x2e, 0x7f, 0xd0, 0xb9, 0xf4, 0x5d, 0xc1, 0x5d, 0xf0, 0x03, + 0xe0, 0x52, 0xb1, 0xde, 0xf0, 0x7c, 0xe3, 0x19, 0xaf, 0xf8, 0x01, 0x48, 0x6e, 0xc9, 0xd9, 0x8b, + 0xbb, 0xfd, 0x37, 0xb9, 0xdf, 0x52, 0xf0, 0x99, 0x22, 0xee, 0xca, 0xf7, 0xff, 0x25, 0x70, 0xfc, + 0x12, 0xf8, 0x01, 0xe1, 0xfe, 0x51, 0x52, 0x56, 0x95, 0x70, 0x1d, 0x2f, 0xf1, 0xd2, 0x72, 0xbc, + 0x62, 0x98, 0xb1, 0x4f, 0xb4, 0x1e, 0x86, 0x7f, 0x9e, 0xc2, 0xcb, 0x2f, 0xc9, 0x71, 0x74, 0xf5, + 0xcd, 0x57, 0xd5, 0x8f, 0x15, 0xdc, 0x9b, 0xab, 0x6a, 0xd5, 0x6e, 0xce, 0xfc, 0xa1, 0x1e, 0xd2, + 0x5f, 0x5d, 0x9c, 0x50, 0xca, 0x64, 0x7c, 0x8e, 0xb6, 0xbe, 0x55, 0x50, 0xfe, 0xa3, 0xe6, 0x8c, + 0x2f, 0xdd, 0xf1, 0x4c, 0x0e, 0x5e, 0x96, 0x42, 0x04, 0x7c, 0xdd, 0x74, 0x09, 0xa7, 0x9e, 0x19, + 0xb1, 0x98, 0x0a, 0x96, 0x3e, 0x7d, 0xd0, 0xca, 0x05, 0x89, 0x7d, 0x92, 0xfa, 0x7b, 0x80, 0x09, + 0x70, 0x93, 0x32, 0x33, 0x06, 0xf1, 0x1e, 0x4b, 0x6f, 0x99, 0x29, 0x10, 0x7f, 0xe3, 0x97, 0xdf, + 0x3e, 0x53, 0x2e, 0x19, 0xab, 0xd5, 0xdc, 0xb5, 0x8b, 0x81, 0xc2, 0x13, 0xe2, 0x01, 0xb7, 0xf9, + 0x5d, 0x2e, 0x20, 0xaa, 0x0f, 0x40, 0x6e, 0x47, 0x65, 0x70, 0xcf, 0xa3, 0x8b, 0x85, 0x14, 0x78, + 0xbf, 0x31, 0xab, 0x56, 0xe3, 0xc5, 0x0e, 0x8d, 0xb2, 0xbe, 0xbd, 0x30, 0xbe, 0xd2, 0xe1, 0xfe, + 0x49, 0x6a, 0xf0, 0x82, 0x71, 0x79, 0x61, 0x0d, 0xde, 0x2f, 0x10, 0x1f, 0xcc, 0x4b, 0xf1, 0x55, + 0x35, 0x2f, 0xea, 0x85, 0xae, 0x3e, 0xfb, 0x8f, 0xb9, 0x3e, 0xb2, 0xc9, 0xf4, 0x2f, 0xff, 0x6b, + 0x5e, 0x25, 0xd1, 0x17, 0x27, 0x5d, 0x2a, 0x2f, 0x1a, 0xcf, 0x2d, 0x2c, 0x53, 0xf5, 0x77, 0x8e, + 0xf6, 0x75, 0xea, 0xaf, 0x6e, 0x3e, 0x40, 0xed, 0x9f, 0x1f, 0x20, 0xa3, 0xe9, 0x7e, 0x6f, 0xb8, + 0xef, 0x82, 0x27, 0x36, 0x7e, 0xd2, 0x14, 0x0d, 0xad, 0x7d, 0x82, 0xb6, 0x77, 0xf4, 0xd6, 0xc3, + 0x1d, 0xbd, 0xb5, 0xbb, 0xa3, 0xa3, 0x0f, 0x73, 0x1d, 0x7d, 0x9d, 0xeb, 0x68, 0x2b, 0xd7, 0xd1, + 0x76, 0xae, 0xa3, 0x5f, 0x73, 0x1d, 0xfd, 0x9e, 0xeb, 0xad, 0xdd, 0x5c, 0x47, 0x9f, 0x4e, 0xf5, + 0xd6, 0xe6, 0x54, 0x47, 0xdb, 0x53, 0xbd, 0xf5, 0x70, 0xaa, 0xb7, 0xde, 0x79, 0x2b, 0x60, 0xc9, + 0xad, 0xc0, 0x9a, 0xb0, 0xa2, 0xd7, 0xa6, 0xc4, 0xca, 0xb8, 0x2d, 0x17, 0x63, 0x96, 0x46, 0x66, + 0x92, 0xb2, 0x09, 0xf5, 0x21, 0x35, 0x67, 0x66, 0x3b, 0x71, 0x03, 0x66, 0xc3, 0x1d, 0x51, 0x3d, + 0xca, 0x8e, 0x7a, 0xff, 0xb9, 0xa7, 0xe4, 0xdb, 0xec, 0x99, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, + 0x38, 0x85, 0xec, 0xa7, 0xc3, 0x0a, 0x00, 0x00, +} + +func (this *GetMetricsRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetMetricsRequest) + if !ok { + that2, ok := that.(GetMetricsRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Name != that1.Name { + return false + } + if len(this.FieldSelector) != len(that1.FieldSelector) { + return false + } + for i := range this.FieldSelector { + if this.FieldSelector[i] != that1.FieldSelector[i] { + return false + } + } + if this.StartTime != that1.StartTime { + return false + } + if this.EndTime != that1.EndTime { + return false + } + if this.Step != that1.Step { + return false + } + return true +} +func (this *GetMetricsResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetMetricsResponse) + if !ok { + that2, ok := that.(GetMetricsResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Data) != len(that1.Data) { + return false + } + for i := range this.Data { + if !this.Data[i].Equal(that1.Data[i]) { + return false + } + } + if this.Step != that1.Step { + return false + } + return true +} +func (this *ListMetricsRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListMetricsRequest) + if !ok { + that2, ok := that.(ListMetricsRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.LabelFilter) != len(that1.LabelFilter) { + return false + } + for i := range this.LabelFilter { + if !this.LabelFilter[i].Equal(that1.LabelFilter[i]) { + return false + } + } + if len(this.FieldSelector) != len(that1.FieldSelector) { + return false + } + for i := range this.FieldSelector { + if this.FieldSelector[i] != that1.FieldSelector[i] { + return false + } + } + if this.StartTime != that1.StartTime { + return false + } + if this.EndTime != that1.EndTime { + return false + } + if this.Step != that1.Step { + return false + } + return true +} +func (this *ListMetricsResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListMetricsResponse) + if !ok { + that2, ok := that.(ListMetricsResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Data) != len(that1.Data) { + return false + } + for i := range this.Data { + if !this.Data[i].Equal(that1.Data[i]) { + return false + } + } + if len(this.Edges) != len(that1.Edges) { + return false + } + for i := range this.Edges { + if !this.Edges[i].Equal(that1.Edges[i]) { + return false + } + } + if this.Step != that1.Step { + return false + } + return true +} +func (this *ListSegmentMetricsRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListSegmentMetricsRequest) + if !ok { + that2, ok := that.(ListSegmentMetricsRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.LabelFilter) != len(that1.LabelFilter) { + return false + } + for i := range this.LabelFilter { + if !this.LabelFilter[i].Equal(that1.LabelFilter[i]) { + return false + } + } + if len(this.FieldSelector) != len(that1.FieldSelector) { + return false + } + for i := range this.FieldSelector { + if this.FieldSelector[i] != that1.FieldSelector[i] { + return false + } + } + if this.StartTime != that1.StartTime { + return false + } + if this.EndTime != that1.EndTime { + return false + } + if this.Step != that1.Step { + return false + } + return true +} +func (this *ListSegmentMetricsResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListSegmentMetricsResponse) + if !ok { + that2, ok := that.(ListSegmentMetricsResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Segment) != len(that1.Segment) { + return false + } + for i := range this.Segment { + if !this.Segment[i].Equal(that1.Segment[i]) { + return false + } + } + if len(this.Edges) != len(that1.Edges) { + return false + } + for i := range this.Edges { + if !this.Edges[i].Equal(that1.Edges[i]) { + return false + } + } + if this.Step != that1.Step { + return false + } + return true +} +func (this *GetMetricsRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&cloud_connect.GetMetricsRequest{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "FieldSelector: "+fmt.Sprintf("%#v", this.FieldSelector)+",\n") + s = append(s, "StartTime: "+fmt.Sprintf("%#v", this.StartTime)+",\n") + s = append(s, "EndTime: "+fmt.Sprintf("%#v", this.EndTime)+",\n") + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetMetricsResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cloud_connect.GetMetricsResponse{") + if this.Data != nil { + s = append(s, "Data: "+fmt.Sprintf("%#v", this.Data)+",\n") + } + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListMetricsRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&cloud_connect.ListMetricsRequest{") + if this.LabelFilter != nil { + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + } + s = append(s, "FieldSelector: "+fmt.Sprintf("%#v", this.FieldSelector)+",\n") + s = append(s, "StartTime: "+fmt.Sprintf("%#v", this.StartTime)+",\n") + s = append(s, "EndTime: "+fmt.Sprintf("%#v", this.EndTime)+",\n") + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListMetricsResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.ListMetricsResponse{") + if this.Data != nil { + s = append(s, "Data: "+fmt.Sprintf("%#v", this.Data)+",\n") + } + if this.Edges != nil { + s = append(s, "Edges: "+fmt.Sprintf("%#v", this.Edges)+",\n") + } + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListSegmentMetricsRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&cloud_connect.ListSegmentMetricsRequest{") + if this.LabelFilter != nil { + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + } + s = append(s, "FieldSelector: "+fmt.Sprintf("%#v", this.FieldSelector)+",\n") + s = append(s, "StartTime: "+fmt.Sprintf("%#v", this.StartTime)+",\n") + s = append(s, "EndTime: "+fmt.Sprintf("%#v", this.EndTime)+",\n") + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListSegmentMetricsResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.ListSegmentMetricsResponse{") + if this.Segment != nil { + s = append(s, "Segment: "+fmt.Sprintf("%#v", this.Segment)+",\n") + } + if this.Edges != nil { + s = append(s, "Edges: "+fmt.Sprintf("%#v", this.Edges)+",\n") + } + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomAPIClient is the client API for CustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomAPIClient interface { + // All Cloud Connect metrics + // + // x-displayName: "All Cloud Connect Metrics" + // Cloud Connect APIs are used to get the data for cloud connect. + ListMetrics(ctx context.Context, in *ListMetricsRequest, opts ...grpc.CallOption) (*ListMetricsResponse, error) + // Cloud Connect metrics + // + // x-displayName: "Cloud Connect Metrics" + // Cloud Connect Metrics quires metrics for a specified cloud connect. + GetMetrics(ctx context.Context, in *GetMetricsRequest, opts ...grpc.CallOption) (*GetMetricsResponse, error) + // All Cloud Connect Segment metrics + // + // x-displayName: "All Cloud Connect Segment Metrics" + // Cloud Connect APIs are used to get the segment data for cloud connect. + ListSegmentMetrics(ctx context.Context, in *ListSegmentMetricsRequest, opts ...grpc.CallOption) (*ListSegmentMetricsResponse, error) +} + +type customAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { + return &customAPIClient{cc} +} + +func (c *customAPIClient) ListMetrics(ctx context.Context, in *ListMetricsRequest, opts ...grpc.CallOption) (*ListMetricsResponse, error) { + out := new(ListMetricsResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.CustomAPI/ListMetrics", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) GetMetrics(ctx context.Context, in *GetMetricsRequest, opts ...grpc.CallOption) (*GetMetricsResponse, error) { + out := new(GetMetricsResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.CustomAPI/GetMetrics", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) ListSegmentMetrics(ctx context.Context, in *ListSegmentMetricsRequest, opts ...grpc.CallOption) (*ListSegmentMetricsResponse, error) { + out := new(ListSegmentMetricsResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.CustomAPI/ListSegmentMetrics", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CustomAPIServer is the server API for CustomAPI service. +type CustomAPIServer interface { + // All Cloud Connect metrics + // + // x-displayName: "All Cloud Connect Metrics" + // Cloud Connect APIs are used to get the data for cloud connect. + ListMetrics(context.Context, *ListMetricsRequest) (*ListMetricsResponse, error) + // Cloud Connect metrics + // + // x-displayName: "Cloud Connect Metrics" + // Cloud Connect Metrics quires metrics for a specified cloud connect. + GetMetrics(context.Context, *GetMetricsRequest) (*GetMetricsResponse, error) + // All Cloud Connect Segment metrics + // + // x-displayName: "All Cloud Connect Segment Metrics" + // Cloud Connect APIs are used to get the segment data for cloud connect. + ListSegmentMetrics(context.Context, *ListSegmentMetricsRequest) (*ListSegmentMetricsResponse, error) +} + +// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomAPIServer struct { +} + +func (*UnimplementedCustomAPIServer) ListMetrics(ctx context.Context, req *ListMetricsRequest) (*ListMetricsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListMetrics not implemented") +} +func (*UnimplementedCustomAPIServer) GetMetrics(ctx context.Context, req *GetMetricsRequest) (*GetMetricsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetMetrics not implemented") +} +func (*UnimplementedCustomAPIServer) ListSegmentMetrics(ctx context.Context, req *ListSegmentMetricsRequest) (*ListSegmentMetricsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListSegmentMetrics not implemented") +} + +func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { + s.RegisterService(&_CustomAPI_serviceDesc, srv) +} + +func _CustomAPI_ListMetrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListMetricsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).ListMetrics(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.CustomAPI/ListMetrics", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).ListMetrics(ctx, req.(*ListMetricsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_GetMetrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetMetricsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).GetMetrics(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.CustomAPI/GetMetrics", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).GetMetrics(ctx, req.(*GetMetricsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_ListSegmentMetrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListSegmentMetricsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).ListSegmentMetrics(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.CustomAPI/ListSegmentMetrics", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).ListSegmentMetrics(ctx, req.(*ListSegmentMetricsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.cloud_connect.CustomAPI", + HandlerType: (*CustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "ListMetrics", + Handler: _CustomAPI_ListMetrics_Handler, + }, + { + MethodName: "GetMetrics", + Handler: _CustomAPI_GetMetrics_Handler, + }, + { + MethodName: "ListSegmentMetrics", + Handler: _CustomAPI_ListSegmentMetrics_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/cloud_connect/public_customapi.proto", +} + +func (m *GetMetricsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetMetricsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetMetricsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x2a + } + if len(m.EndTime) > 0 { + i -= len(m.EndTime) + copy(dAtA[i:], m.EndTime) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.EndTime))) + i-- + dAtA[i] = 0x22 + } + if len(m.StartTime) > 0 { + i -= len(m.StartTime) + copy(dAtA[i:], m.StartTime) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.StartTime))) + i-- + dAtA[i] = 0x1a + } + if len(m.FieldSelector) > 0 { + dAtA2 := make([]byte, len(m.FieldSelector)*10) + var j1 int + for _, num := range m.FieldSelector { + for num >= 1<<7 { + dAtA2[j1] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j1++ + } + dAtA2[j1] = uint8(num) + j1++ + } + i -= j1 + copy(dAtA[i:], dAtA2[:j1]) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(j1)) + i-- + dAtA[i] = 0x12 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetMetricsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetMetricsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetMetricsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x12 + } + if len(m.Data) > 0 { + for iNdEx := len(m.Data) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Data[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ListMetricsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListMetricsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListMetricsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x2a + } + if len(m.EndTime) > 0 { + i -= len(m.EndTime) + copy(dAtA[i:], m.EndTime) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.EndTime))) + i-- + dAtA[i] = 0x22 + } + if len(m.StartTime) > 0 { + i -= len(m.StartTime) + copy(dAtA[i:], m.StartTime) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.StartTime))) + i-- + dAtA[i] = 0x1a + } + if len(m.FieldSelector) > 0 { + dAtA4 := make([]byte, len(m.FieldSelector)*10) + var j3 int + for _, num := range m.FieldSelector { + for num >= 1<<7 { + dAtA4[j3] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j3++ + } + dAtA4[j3] = uint8(num) + j3++ + } + i -= j3 + copy(dAtA[i:], dAtA4[:j3]) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(j3)) + i-- + dAtA[i] = 0x12 + } + if len(m.LabelFilter) > 0 { + for iNdEx := len(m.LabelFilter) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.LabelFilter[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ListMetricsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListMetricsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListMetricsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x1a + } + if len(m.Edges) > 0 { + for iNdEx := len(m.Edges) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Edges[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Data) > 0 { + for iNdEx := len(m.Data) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Data[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ListSegmentMetricsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListSegmentMetricsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListSegmentMetricsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x2a + } + if len(m.EndTime) > 0 { + i -= len(m.EndTime) + copy(dAtA[i:], m.EndTime) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.EndTime))) + i-- + dAtA[i] = 0x22 + } + if len(m.StartTime) > 0 { + i -= len(m.StartTime) + copy(dAtA[i:], m.StartTime) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.StartTime))) + i-- + dAtA[i] = 0x1a + } + if len(m.FieldSelector) > 0 { + dAtA6 := make([]byte, len(m.FieldSelector)*10) + var j5 int + for _, num := range m.FieldSelector { + for num >= 1<<7 { + dAtA6[j5] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j5++ + } + dAtA6[j5] = uint8(num) + j5++ + } + i -= j5 + copy(dAtA[i:], dAtA6[:j5]) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(j5)) + i-- + dAtA[i] = 0x12 + } + if len(m.LabelFilter) > 0 { + for iNdEx := len(m.LabelFilter) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.LabelFilter[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ListSegmentMetricsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListSegmentMetricsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListSegmentMetricsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x1a + } + if len(m.Edges) > 0 { + for iNdEx := len(m.Edges) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Edges[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Segment) > 0 { + for iNdEx := len(m.Segment) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Segment[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *GetMetricsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.FieldSelector) > 0 { + l = 0 + for _, e := range m.FieldSelector { + l += sovPublicCustomapi(uint64(e)) + } + n += 1 + sovPublicCustomapi(uint64(l)) + l + } + l = len(m.StartTime) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.EndTime) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *GetMetricsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Data) > 0 { + for _, e := range m.Data { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ListMetricsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.LabelFilter) > 0 { + for _, e := range m.LabelFilter { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.FieldSelector) > 0 { + l = 0 + for _, e := range m.FieldSelector { + l += sovPublicCustomapi(uint64(e)) + } + n += 1 + sovPublicCustomapi(uint64(l)) + l + } + l = len(m.StartTime) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.EndTime) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ListMetricsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Data) > 0 { + for _, e := range m.Data { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.Edges) > 0 { + for _, e := range m.Edges { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ListSegmentMetricsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.LabelFilter) > 0 { + for _, e := range m.LabelFilter { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.FieldSelector) > 0 { + l = 0 + for _, e := range m.FieldSelector { + l += sovPublicCustomapi(uint64(e)) + } + n += 1 + sovPublicCustomapi(uint64(l)) + l + } + l = len(m.StartTime) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.EndTime) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ListSegmentMetricsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Segment) > 0 { + for _, e := range m.Segment { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.Edges) > 0 { + for _, e := range m.Edges { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *GetMetricsRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetMetricsRequest{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `FieldSelector:` + fmt.Sprintf("%v", this.FieldSelector) + `,`, + `StartTime:` + fmt.Sprintf("%v", this.StartTime) + `,`, + `EndTime:` + fmt.Sprintf("%v", this.EndTime) + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *GetMetricsResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForData := "[]*MetricData{" + for _, f := range this.Data { + repeatedStringForData += strings.Replace(fmt.Sprintf("%v", f), "MetricData", "MetricData", 1) + "," + } + repeatedStringForData += "}" + s := strings.Join([]string{`&GetMetricsResponse{`, + `Data:` + repeatedStringForData + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *ListMetricsRequest) String() string { + if this == nil { + return "nil" + } + repeatedStringForLabelFilter := "[]*LabelFilter{" + for _, f := range this.LabelFilter { + repeatedStringForLabelFilter += strings.Replace(fmt.Sprintf("%v", f), "LabelFilter", "LabelFilter", 1) + "," + } + repeatedStringForLabelFilter += "}" + s := strings.Join([]string{`&ListMetricsRequest{`, + `LabelFilter:` + repeatedStringForLabelFilter + `,`, + `FieldSelector:` + fmt.Sprintf("%v", this.FieldSelector) + `,`, + `StartTime:` + fmt.Sprintf("%v", this.StartTime) + `,`, + `EndTime:` + fmt.Sprintf("%v", this.EndTime) + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *ListMetricsResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForData := "[]*SegmentationData{" + for _, f := range this.Data { + repeatedStringForData += strings.Replace(fmt.Sprintf("%v", f), "SegmentationData", "SegmentationData", 1) + "," + } + repeatedStringForData += "}" + repeatedStringForEdges := "[]*EdgeData{" + for _, f := range this.Edges { + repeatedStringForEdges += strings.Replace(fmt.Sprintf("%v", f), "EdgeData", "EdgeData", 1) + "," + } + repeatedStringForEdges += "}" + s := strings.Join([]string{`&ListMetricsResponse{`, + `Data:` + repeatedStringForData + `,`, + `Edges:` + repeatedStringForEdges + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *ListSegmentMetricsRequest) String() string { + if this == nil { + return "nil" + } + repeatedStringForLabelFilter := "[]*LabelFilter{" + for _, f := range this.LabelFilter { + repeatedStringForLabelFilter += strings.Replace(fmt.Sprintf("%v", f), "LabelFilter", "LabelFilter", 1) + "," + } + repeatedStringForLabelFilter += "}" + s := strings.Join([]string{`&ListSegmentMetricsRequest{`, + `LabelFilter:` + repeatedStringForLabelFilter + `,`, + `FieldSelector:` + fmt.Sprintf("%v", this.FieldSelector) + `,`, + `StartTime:` + fmt.Sprintf("%v", this.StartTime) + `,`, + `EndTime:` + fmt.Sprintf("%v", this.EndTime) + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *ListSegmentMetricsResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForSegment := "[]*SegmentationData{" + for _, f := range this.Segment { + repeatedStringForSegment += strings.Replace(fmt.Sprintf("%v", f), "SegmentationData", "SegmentationData", 1) + "," + } + repeatedStringForSegment += "}" + repeatedStringForEdges := "[]*EdgeData{" + for _, f := range this.Edges { + repeatedStringForEdges += strings.Replace(fmt.Sprintf("%v", f), "EdgeData", "EdgeData", 1) + "," + } + repeatedStringForEdges += "}" + s := strings.Join([]string{`&ListSegmentMetricsResponse{`, + `Segment:` + repeatedStringForSegment + `,`, + `Edges:` + repeatedStringForEdges + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *GetMetricsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetMetricsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetMetricsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType == 0 { + var v FieldSelector + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= FieldSelector(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FieldSelector = append(m.FieldSelector, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.FieldSelector) == 0 { + m.FieldSelector = make([]FieldSelector, 0, elementCount) + } + for iNdEx < postIndex { + var v FieldSelector + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= FieldSelector(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FieldSelector = append(m.FieldSelector, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field FieldSelector", wireType) + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StartTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EndTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetMetricsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetMetricsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetMetricsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Data = append(m.Data, &MetricData{}) + if err := m.Data[len(m.Data)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListMetricsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListMetricsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListMetricsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = append(m.LabelFilter, &LabelFilter{}) + if err := m.LabelFilter[len(m.LabelFilter)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType == 0 { + var v FieldSelector + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= FieldSelector(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FieldSelector = append(m.FieldSelector, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.FieldSelector) == 0 { + m.FieldSelector = make([]FieldSelector, 0, elementCount) + } + for iNdEx < postIndex { + var v FieldSelector + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= FieldSelector(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FieldSelector = append(m.FieldSelector, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field FieldSelector", wireType) + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StartTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EndTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListMetricsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListMetricsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListMetricsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Data = append(m.Data, &SegmentationData{}) + if err := m.Data[len(m.Data)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Edges", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Edges = append(m.Edges, &EdgeData{}) + if err := m.Edges[len(m.Edges)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListSegmentMetricsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListSegmentMetricsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListSegmentMetricsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = append(m.LabelFilter, &LabelFilter{}) + if err := m.LabelFilter[len(m.LabelFilter)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType == 0 { + var v FieldSelector + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= FieldSelector(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FieldSelector = append(m.FieldSelector, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.FieldSelector) == 0 { + m.FieldSelector = make([]FieldSelector, 0, elementCount) + } + for iNdEx < postIndex { + var v FieldSelector + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= FieldSelector(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FieldSelector = append(m.FieldSelector, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field FieldSelector", wireType) + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StartTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EndTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListSegmentMetricsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListSegmentMetricsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListSegmentMetricsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Segment = append(m.Segment, &SegmentationData{}) + if err := m.Segment[len(m.Segment)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Edges", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Edges = append(m.Edges, &EdgeData{}) + if err := m.Edges[len(m.Edges)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi.pb.gw.go b/pbgo/extschema/schema/cloud_connect/public_customapi.pb.gw.go new file mode 100644 index 000000000..2b8e52b95 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi.pb.gw.go @@ -0,0 +1,352 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/cloud_connect/public_customapi.proto + +/* +Package cloud_connect is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package cloud_connect + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_CustomAPI_ListMetrics_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListMetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.ListMetrics(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_ListMetrics_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListMetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.ListMetrics(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CustomAPI_GetMetrics_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetMetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := client.GetMetrics(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_GetMetrics_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetMetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := server.GetMetrics(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CustomAPI_ListSegmentMetrics_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListSegmentMetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.ListSegmentMetrics(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_ListSegmentMetrics_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListSegmentMetricsRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.ListSegmentMetrics(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCustomAPIHandlerServer registers the http handlers for service CustomAPI to "mux". +// UnaryRPC :call CustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CustomAPIServer) error { + + mux.Handle("POST", pattern_CustomAPI_ListMetrics_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_ListMetrics_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_ListMetrics_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CustomAPI_GetMetrics_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_GetMetrics_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_GetMetrics_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CustomAPI_ListSegmentMetrics_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_ListSegmentMetrics_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_ListSegmentMetrics_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCustomAPIHandlerFromEndpoint is same as RegisterCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCustomAPIHandler(ctx, mux, conn) +} + +// RegisterCustomAPIHandler registers the http handlers for service CustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIClient(conn)) +} + +// RegisterCustomAPIHandlerClient registers the http handlers for service CustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CustomAPIClient" to call the correct interceptors. +func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CustomAPIClient) error { + + mux.Handle("POST", pattern_CustomAPI_ListMetrics_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_ListMetrics_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_ListMetrics_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CustomAPI_GetMetrics_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_GetMetrics_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_GetMetrics_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CustomAPI_ListSegmentMetrics_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_ListSegmentMetrics_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_ListSegmentMetrics_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CustomAPI_ListMetrics_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "cloud_connects", "metrics"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_GetMetrics_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"public", "namespaces", "system", "cloud_connects", "name", "metrics"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_ListSegmentMetrics_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "cloud_connects", "segment_metrics"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_CustomAPI_ListMetrics_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_GetMetrics_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_ListSegmentMetrics_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi.vesapi.go b/pbgo/extschema/schema/cloud_connect/public_customapi.vesapi.go new file mode 100644 index 000000000..f8cc4645e --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi.vesapi.go @@ -0,0 +1,1470 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package cloud_connect + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create CustomAPI GRPC Client satisfying server.CustomClient +type CustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient CustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *CustomAPIGrpcClient) doRPCGetMetrics(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &GetMetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.GetMetricsRequest", yamlReq) + } + rsp, err := c.grpcClient.GetMetrics(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCListMetrics(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &ListMetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.ListMetricsRequest", yamlReq) + } + rsp, err := c.grpcClient.ListMetrics(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCListSegmentMetrics(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &ListSegmentMetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.ListSegmentMetricsRequest", yamlReq) + } + rsp, err := c.grpcClient.ListSegmentMetrics(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &CustomAPIGrpcClient{ + conn: cc, + grpcClient: NewCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["GetMetrics"] = ccl.doRPCGetMetrics + + rpcFns["ListMetrics"] = ccl.doRPCListMetrics + + rpcFns["ListSegmentMetrics"] = ccl.doRPCListSegmentMetrics + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create CustomAPI REST Client satisfying server.CustomClient +type CustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *CustomAPIRestClient) doRPCGetMetrics(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &GetMetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.GetMetricsRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("end_time", fmt.Sprintf("%v", req.EndTime)) + for _, item := range req.FieldSelector { + q.Add("field_selector", fmt.Sprintf("%v", item)) + } + q.Add("name", fmt.Sprintf("%v", req.Name)) + q.Add("start_time", fmt.Sprintf("%v", req.StartTime)) + q.Add("step", fmt.Sprintf("%v", req.Step)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &GetMetricsResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.GetMetricsResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCListMetrics(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &ListMetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.ListMetricsRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("end_time", fmt.Sprintf("%v", req.EndTime)) + for _, item := range req.FieldSelector { + q.Add("field_selector", fmt.Sprintf("%v", item)) + } + for _, item := range req.LabelFilter { + q.Add("label_filter", fmt.Sprintf("%v", item)) + } + q.Add("start_time", fmt.Sprintf("%v", req.StartTime)) + q.Add("step", fmt.Sprintf("%v", req.Step)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &ListMetricsResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.ListMetricsResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCListSegmentMetrics(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &ListSegmentMetricsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.ListSegmentMetricsRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("end_time", fmt.Sprintf("%v", req.EndTime)) + for _, item := range req.FieldSelector { + q.Add("field_selector", fmt.Sprintf("%v", item)) + } + for _, item := range req.LabelFilter { + q.Add("label_filter", fmt.Sprintf("%v", item)) + } + q.Add("start_time", fmt.Sprintf("%v", req.StartTime)) + q.Add("step", fmt.Sprintf("%v", req.Step)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &ListSegmentMetricsResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.ListSegmentMetricsResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["GetMetrics"] = ccl.doRPCGetMetrics + + rpcFns["ListMetrics"] = ccl.doRPCListMetrics + + rpcFns["ListSegmentMetrics"] = ccl.doRPCListSegmentMetrics + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create customAPIInprocClient + +// INPROC Client (satisfying CustomAPIClient interface) +type customAPIInprocClient struct { + CustomAPIServer +} + +func (c *customAPIInprocClient) GetMetrics(ctx context.Context, in *GetMetricsRequest, opts ...grpc.CallOption) (*GetMetricsResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.CustomAPI.GetMetrics") + return c.CustomAPIServer.GetMetrics(ctx, in) +} +func (c *customAPIInprocClient) ListMetrics(ctx context.Context, in *ListMetricsRequest, opts ...grpc.CallOption) (*ListMetricsResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.CustomAPI.ListMetrics") + return c.CustomAPIServer.ListMetrics(ctx, in) +} +func (c *customAPIInprocClient) ListSegmentMetrics(ctx context.Context, in *ListSegmentMetricsRequest, opts ...grpc.CallOption) (*ListSegmentMetricsResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.CustomAPI.ListSegmentMetrics") + return c.CustomAPIServer.ListSegmentMetrics(ctx, in) +} + +func NewCustomAPIInprocClient(svc svcfw.Service) CustomAPIClient { + return &customAPIInprocClient{CustomAPIServer: NewCustomAPIServer(svc)} +} + +// RegisterGwCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIInprocClient(s)) +} + +// Create customAPISrv + +// SERVER (satisfying CustomAPIServer interface) +type customAPISrv struct { + svc svcfw.Service +} + +func (s *customAPISrv) GetMetrics(ctx context.Context, in *GetMetricsRequest) (*GetMetricsResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *GetMetricsResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.GetMetricsRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.GetMetrics' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.CustomAPI.GetMetrics"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.GetMetrics(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.GetMetricsResponse", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) ListMetrics(ctx context.Context, in *ListMetricsRequest) (*ListMetricsResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *ListMetricsResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.ListMetricsRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.ListMetrics' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.CustomAPI.ListMetrics"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.ListMetrics(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.ListMetricsResponse", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) ListSegmentMetrics(ctx context.Context, in *ListSegmentMetricsRequest) (*ListSegmentMetricsResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *ListSegmentMetricsResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.ListSegmentMetricsRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.ListSegmentMetrics' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.CustomAPI.ListSegmentMetrics"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.ListSegmentMetrics(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.ListSegmentMetricsResponse", rsp)...) + + return rsp, nil +} + +func NewCustomAPIServer(svc svcfw.Service) CustomAPIServer { + return &customAPISrv{svc: svc} +} + +var CustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Cloud Connect", + "description": "Cloud Connect APIs are used to get the data for cloud connect for all customer edges.\nResponse includes in/out throughput metrics for all the tenant's Cloud Connect Sites\nIt is always scoped by system namespace.", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/system/cloud_connects/metrics": { + "post": { + "summary": "All Cloud Connect Metrics", + "description": "Cloud Connect APIs are used to get the data for cloud connect.", + "operationId": "ves.io.schema.cloud_connect.CustomAPI.ListMetrics", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectListMetricsResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/cloud_connectListMetricsRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-customapi-listmetrics" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.CustomAPI.ListMetrics" + }, + "x-displayname": "Cloud Connect", + "x-ves-proto-service": "ves.io.schema.cloud_connect.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/system/cloud_connects/segment_metrics": { + "post": { + "summary": "All Cloud Connect Segment Metrics", + "description": "Cloud Connect APIs are used to get the segment data for cloud connect.", + "operationId": "ves.io.schema.cloud_connect.CustomAPI.ListSegmentMetrics", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectListSegmentMetricsResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/cloud_connectListSegmentMetricsRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-customapi-listsegmentmetrics" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.CustomAPI.ListSegmentMetrics" + }, + "x-displayname": "Cloud Connect", + "x-ves-proto-service": "ves.io.schema.cloud_connect.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/system/cloud_connects/{name}/metrics": { + "post": { + "summary": "Cloud Connect Metrics", + "description": "Cloud Connect Metrics quires metrics for a specified cloud connect.", + "operationId": "ves.io.schema.cloud_connect.CustomAPI.GetMetrics", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectGetMetricsResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "name", + "description": "Name\n\nx-required\nx-example: \"cloud_connect-1\"\nCloud Connect name", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/cloud_connectGetMetricsRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-customapi-getmetrics" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.CustomAPI.GetMetrics" + }, + "x-displayname": "Cloud Connect", + "x-ves-proto-service": "ves.io.schema.cloud_connect.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "cloud_connectCustomerEdge": { + "type": "object", + "description": "Customer Edge uniquely identifies customer edge i.e. site.", + "title": "Customer Edge", + "x-displayname": "Customer Edge", + "x-ves-proto-message": "ves.io.schema.cloud_connect.CustomerEdge", + "properties": { + "name": { + "type": "string", + "description": " Name of the customer edge\n\nExample: - \"Customer Edge 1\"-", + "title": "Customer Edge", + "x-displayname": "Customer Edge", + "x-ves-example": "Customer Edge 1" + } + } + }, + "cloud_connectEdgeData": { + "type": "object", + "description": "EdgeData wraps all the response data for a customer edge.", + "title": "Cloud Connect Edge Data", + "x-displayname": "Cloud Connect Edge Data", + "x-ves-proto-message": "ves.io.schema.cloud_connect.EdgeData", + "properties": { + "ce": { + "description": " Identifier for the customer edge", + "title": "CE", + "$ref": "#/definitions/cloud_connectCustomerEdge", + "x-displayname": "CE" + }, + "segments": { + "type": "array", + "description": " Metric data for the segments", + "title": "Metric", + "items": { + "$ref": "#/definitions/cloud_connectSegmentationData" + }, + "x-displayname": "Metric" + } + } + }, + "cloud_connectFieldSelector": { + "type": "string", + "description": "FieldSelector specifies the metrics that can be queried for cloud connect.\n\nIndicates field not being set\nx-unit: \"bytes per second (bps)\"\nThroughput of incoming traffic\nx-unit: \"bytes per second (bps)\"\nThroughput of outgoing traffic", + "title": "Cloud Connect Metric Type", + "enum": [ + "METRIC_TYPE_NONE", + "METRIC_TYPE_IN_BYTES", + "METRIC_TYPE_OUT_BYTES" + ], + "default": "METRIC_TYPE_NONE", + "x-displayname": "Cloud Connect Metric Type", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.FieldSelector" + }, + "cloud_connectGetMetricsRequest": { + "type": "object", + "description": "Request to get cloud connect data", + "title": "Get Metrics Request", + "x-displayname": "Get Metrics Request", + "x-ves-proto-message": "ves.io.schema.cloud_connect.GetMetricsRequest", + "properties": { + "end_time": { + "type": "string", + "description": "\n end time of metric collection from which data will be considered to fetch cloud connect data.\n Format: unix_timestamp|rfc 3339\n\n Optional: If not specified, then the end_time will be evaluated to start_time+10m\n If start_time is not specified, then the end_time will be evaluated to \u003ccurrent time\u003e\n\nExample: - \"2019-09-24T12:30:11.733Z\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_time: true\n", + "title": "end_time", + "x-displayname": "End Time", + "x-ves-example": "2019-09-24T12:30:11.733Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_time": "true" + } + }, + "field_selector": { + "type": "array", + "description": "\n Select fields to be returned in the response.\n field_selector is used to specify the fields to be returned in the response, thereby limiting the\n amount of data returned in the response.\n\n Note: Selecting many/all fields may impact the query latency.\n\n Optional: If not specified, only the following fields are returned in the response.\n METRIC_TYPE_IN_BYTES, METRIC_TYPE_OUT_BYTES\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.unique: true\n", + "title": "field_selector", + "items": { + "$ref": "#/definitions/cloud_connectFieldSelector" + }, + "x-displayname": "Field Selector", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "name": { + "type": "string", + "description": " Cloud Connect name\n\nExample: - \"cloud_connect-1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Name", + "x-displayname": "Name", + "x-ves-example": "cloud_connect-1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "start_time": { + "type": "string", + "description": "\n start time of metric collection from which data will be considered to fetch cloud connect data.\n Format: unix_timestamp|rfc 3339\n\n Optional: If not specified, then the start_time will be evaluated to end_time-10m\n If end_time is not specified, then the start_time will be evaluated to \u003ccurrent time\u003e-10m\n\nExample: - \"2019-09-23T12:30:11.733Z\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_time: true\n", + "title": "start_time", + "x-displayname": "Start Time", + "x-ves-example": "2019-09-23T12:30:11.733Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_time": "true" + } + }, + "step": { + "type": "string", + "description": "\n step is the resolution width, which determines the number of the data points [x-axis (time)] to be returned in the response.\n The timestamps in the response will be t1=start_time, t2=t1+step, ... tn=tn-1+step, where tn \u003c= end_time.\n Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\n\n Optional: If not specified, then step size is evaluated to \u003cend_time - start_time\u003e\n\nExample: - \"5m\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_step: true\n", + "title": "step", + "x-displayname": "Step", + "x-ves-example": "5m", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_step": "true" + } + } + } + }, + "cloud_connectGetMetricsResponse": { + "type": "object", + "description": "Get Metrics Response", + "title": "Get Metrics Response", + "x-displayname": "Get Metrics Response", + "x-ves-proto-message": "ves.io.schema.cloud_connect.GetMetricsResponse", + "properties": { + "data": { + "type": "array", + "description": " Metric data specified for the cloud connect", + "title": "Data", + "items": { + "$ref": "#/definitions/cloud_connectMetricData" + }, + "x-displayname": "Data" + }, + "step": { + "type": "string", + "description": " Actual step size used in the response. It could be higher than the requested step due to metric rollups and the query duration.\n Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\n\nExample: - \"30m\"-\n\nValidation Rules:\n ves.io.schema.rules.string.time_interval: true\n", + "title": "step", + "x-displayname": "Step", + "x-ves-example": "30m", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.time_interval": "true" + } + } + } + }, + "cloud_connectLabelFilter": { + "type": "object", + "description": "Metrics used in the cloud connect are tagged with labels listed in the enum Label.\nLabel Filter is used to filter the timeseries that match the specified label key/value\nand the operator.", + "title": "Label Filter", + "x-displayname": "Label Filter", + "x-ves-proto-message": "ves.io.schema.cloud_connect.LabelFilter", + "properties": { + "label": { + "description": " Label name", + "title": "Label", + "$ref": "#/definitions/schemacloud_connectLabel", + "x-displayname": "Label" + }, + "op": { + "description": " Operator to be applied on the label", + "title": "Operator", + "$ref": "#/definitions/schemaMetricLabelOp", + "x-displayname": "Operator" + }, + "value": { + "type": "string", + "description": " Value of the label\n\nExample: - \"ce01\"-", + "title": "Value", + "x-displayname": "Value", + "x-ves-example": "ce01" + } + } + }, + "cloud_connectListMetricsRequest": { + "type": "object", + "description": "cloud_connect API is used to get the in/out throughput\nfor the tenant's customer edges.", + "title": "List metrics Request", + "x-displayname": "List Metrics Request", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ListMetricsRequest", + "properties": { + "end_time": { + "type": "string", + "description": "\n end time of metric collection from which data will be considered to fetch cloud connect data.\n Format: unix_timestamp|rfc 3339\n\n Optional: If not specified, then the end_time will be evaluated to start_time+10m\n If start_time is not specified, then the end_time will be evaluated to \u003ccurrent time\u003e\n\nExample: - \"2019-09-24T12:30:11.733Z\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_time: true\n", + "title": "end_time", + "x-displayname": "End Time", + "x-ves-example": "2019-09-24T12:30:11.733Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_time": "true" + } + }, + "field_selector": { + "type": "array", + "description": "\n Select fields to be returned in the response.\n field_selector is used to specify the fields to be returned in the response, thereby limiting the\n amount of data returned in the response.\n\n Note: Selecting many/all fields may impact the query latency.\n\n Optional: If not specified, only the following fields are returned in the response.\n METRIC_TYPE_IN_BYTES, METRIC_TYPE_OUT_BYTES\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.unique: true\n", + "title": "field_selector", + "items": { + "$ref": "#/definitions/cloud_connectFieldSelector" + }, + "x-displayname": "Field Selector", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "label_filter": { + "type": "array", + "description": "\n List of label filter expressions of the form \"label key\" QueryOp \"value\".\n Response will only contain data that matches all the conditions specified in the label_filter.\n\n Optional: If not specified, connectivity data for all sites will be returned in the response.", + "title": "label_filter", + "items": { + "$ref": "#/definitions/cloud_connectLabelFilter" + }, + "x-displayname": "Label Filter" + }, + "start_time": { + "type": "string", + "description": "\n start time of metric collection from which data will be considered to fetch cloud connect data.\n Format: unix_timestamp|rfc 3339\n\n Optional: If not specified, then the start_time will be evaluated to end_time-10m\n If end_time is not specified, then the start_time will be evaluated to \u003ccurrent time\u003e-10m\n\nExample: - \"2019-09-23T12:30:11.733Z\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_time: true\n", + "title": "start_time", + "x-displayname": "Start Time", + "x-ves-example": "2019-09-23T12:30:11.733Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_time": "true" + } + }, + "step": { + "type": "string", + "description": "\n step is the resolution width, which determines the number of the data points [x-axis (time)] to be returned in the response.\n The timestamps in the response will be t1=start_time, t2=t1+step, ... tn=tn-1+step, where tn \u003c= end_time.\n Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\n\n Optional: If not specified, then step size is evaluated to \u003cend_time - start_time\u003e\n\nExample: - \"5m\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_step: true\n", + "title": "step", + "x-displayname": "Step", + "x-ves-example": "5m", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_step": "true" + } + } + } + }, + "cloud_connectListMetricsResponse": { + "type": "object", + "description": "Response for cloud connect API contains list of customer edges \u0026 cloud connects associated with the customer edge.\nEach cloud connect contains throughput data for a given cloud connect.", + "title": "List Metrics Response", + "x-displayname": "List Metrics Response", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ListMetricsResponse", + "properties": { + "data": { + "type": "array", + "description": "metric data for the given metric.", + "items": { + "$ref": "#/definitions/cloud_connectSegmentationData" + } + }, + "edges": { + "type": "array", + "description": " Cloud connect data for list of customer edges owned by a tenant.", + "title": "Customer Edges", + "items": { + "$ref": "#/definitions/cloud_connectEdgeData" + }, + "x-displayname": "Customer Edges" + }, + "step": { + "type": "string", + "description": " Actual step size used in the response. It could be higher than the requested step due to metric rollups and the query duration.\n Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\n\nExample: - \"30m\"-\n\nValidation Rules:\n ves.io.schema.rules.string.time_interval: true\n", + "title": "step", + "x-displayname": "Step", + "x-ves-example": "30m", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.time_interval": "true" + } + } + } + }, + "cloud_connectListSegmentMetricsRequest": { + "type": "object", + "description": "cloud_connect API is used to get the in/out throughput\nfor the tenant's customer edges.", + "title": "List Segment metrics Request", + "x-displayname": "List Metrics Request", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ListSegmentMetricsRequest", + "properties": { + "end_time": { + "type": "string", + "description": "\n end time of metric collection from which data will be considered to fetch cloud connect data.\n Format: unix_timestamp|rfc 3339\n\n Optional: If not specified, then the end_time will be evaluated to start_time+10m\n If start_time is not specified, then the end_time will be evaluated to \u003ccurrent time\u003e\n\nExample: - \"2019-09-24T12:30:11.733Z\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_time: true\n", + "title": "end_time", + "x-displayname": "End Time", + "x-ves-example": "2019-09-24T12:30:11.733Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_time": "true" + } + }, + "field_selector": { + "type": "array", + "description": "\n Select fields to be returned in the response.\n field_selector is used to specify the fields to be returned in the response, thereby limiting the\n amount of data returned in the response.\n\n Note: Selecting many/all fields may impact the query latency.\n\n Optional: If not specified, only the following fields are returned in the response.\n METRIC_TYPE_IN_BYTES, METRIC_TYPE_OUT_BYTES\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.unique: true\n", + "title": "field_selector", + "items": { + "$ref": "#/definitions/cloud_connectFieldSelector" + }, + "x-displayname": "Field Selector", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "label_filter": { + "type": "array", + "description": "\n List of label filter expressions of the form \"label key\" QueryOp \"value\".\n Response will only contain data that matches all the conditions specified in the label_filter.\n\n Optional: If not specified, connectivity data for all sites will be returned in the response.", + "title": "label_filter", + "items": { + "$ref": "#/definitions/cloud_connectLabelFilter" + }, + "x-displayname": "Label Filter" + }, + "start_time": { + "type": "string", + "description": "\n start time of metric collection from which data will be considered to fetch cloud connect data.\n Format: unix_timestamp|rfc 3339\n\n Optional: If not specified, then the start_time will be evaluated to end_time-10m\n If end_time is not specified, then the start_time will be evaluated to \u003ccurrent time\u003e-10m\n\nExample: - \"2019-09-23T12:30:11.733Z\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_time: true\n", + "title": "start_time", + "x-displayname": "Start Time", + "x-ves-example": "2019-09-23T12:30:11.733Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_time": "true" + } + }, + "step": { + "type": "string", + "description": "\n step is the resolution width, which determines the number of the data points [x-axis (time)] to be returned in the response.\n The timestamps in the response will be t1=start_time, t2=t1+step, ... tn=tn-1+step, where tn \u003c= end_time.\n Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\n\n Optional: If not specified, then step size is evaluated to \u003cend_time - start_time\u003e\n\nExample: - \"5m\"-\n\nValidation Rules:\n ves.io.schema.rules.string.query_step: true\n", + "title": "step", + "x-displayname": "Step", + "x-ves-example": "5m", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.query_step": "true" + } + } + } + }, + "cloud_connectListSegmentMetricsResponse": { + "type": "object", + "description": "Response for cloud connect API contains list of customer edges \u0026 cloud connects associated with the customer edge.\nEach cloud connect contains throughput data for a given cloud connect.", + "title": "List Segment Metrics Response", + "x-displayname": "List Metrics Response", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ListSegmentMetricsResponse", + "properties": { + "edges": { + "type": "array", + "description": " Cloud connect data for list of customer edges owned by a tenant.", + "title": "Customer Edges", + "items": { + "$ref": "#/definitions/cloud_connectEdgeData" + }, + "x-displayname": "Customer Edges" + }, + "segment": { + "type": "array", + "description": "metric data for the given metric.", + "items": { + "$ref": "#/definitions/cloud_connectSegmentationData" + } + }, + "step": { + "type": "string", + "description": " Actual step size used in the response. It could be higher than the requested step due to metric rollups and the query duration.\n Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\n\nExample: - \"30m\"-\n\nValidation Rules:\n ves.io.schema.rules.string.time_interval: true\n", + "title": "step", + "x-displayname": "Step", + "x-ves-example": "30m", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.time_interval": "true" + } + } + } + }, + "cloud_connectMetricData": { + "type": "object", + "description": "MetricData contains metric type and the corresponding value for a cloud connect", + "title": "Metric Data", + "x-displayname": "Metric Data", + "x-ves-proto-message": "ves.io.schema.cloud_connect.MetricData", + "properties": { + "type": { + "description": " Identifies the metric type", + "title": "Type", + "$ref": "#/definitions/cloud_connectFieldSelector", + "x-displayname": "Type" + }, + "unit": { + "description": " Unit for the metric value", + "title": "Unit", + "$ref": "#/definitions/schemaUnitType", + "x-displayname": "Unit" + }, + "values": { + "type": "array", + "description": " List of metric values. May contain more than one value if timeseries data is requested.", + "title": "Value", + "items": { + "$ref": "#/definitions/schemaMetricValue" + }, + "x-displayname": "Value" + } + } + }, + "cloud_connectSegmentationData": { + "type": "object", + "description": "SegmentationData contains metric type and the corresponding value for a cloud connect", + "title": "Cloud Connect Segmentation Data", + "x-displayname": "Cloud Connect Segmentation Data", + "x-ves-proto-message": "ves.io.schema.cloud_connect.SegmentationData", + "properties": { + "data": { + "type": "array", + "description": " List of metric values. May contain more than one value if timeseries data is requested.", + "title": "Data", + "items": { + "$ref": "#/definitions/cloud_connectMetricData" + }, + "x-displayname": "Data" + }, + "type": { + "description": " Identifies the segment type", + "title": "Type", + "$ref": "#/definitions/cloud_connectTrafficType", + "x-displayname": "Type" + } + } + }, + "cloud_connectTrafficType": { + "type": "string", + "description": "TrafficType specifies the type of traffic.\n\nIntersegment traffic\nIntrasegment traffic\nInternet traffic", + "title": "Traffic Type", + "enum": [ + "TRAFFIC_TYPE_NONE", + "TRAFFIC_TYPE_INTER_SEGMENT", + "TRAFFIC_TYPE_INTRA_SEGMENT", + "TRAFFIC_TYPE_INTERNET" + ], + "default": "TRAFFIC_TYPE_NONE", + "x-displayname": "Traffic Type", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.TrafficType" + }, + "schemaMetricLabelOp": { + "type": "string", + "description": "The operator to use when filtering metrics based on label values.\n", + "title": "Metric Label Operator", + "enum": [ + "EQ", + "NEQ" + ], + "default": "EQ", + "x-displayname": "Metric Label Operator", + "x-ves-proto-enum": "ves.io.schema.MetricLabelOp" + }, + "schemaMetricValue": { + "type": "object", + "description": "Metric data contains timestamp and the value.", + "title": "Metric Value", + "x-displayname": "Metric Value", + "x-ves-proto-message": "ves.io.schema.MetricValue", + "properties": { + "timestamp": { + "type": "number", + "description": " timestamp\n\nExample: - \"1570007981\"-", + "title": "Timestamp", + "format": "double", + "x-displayname": "Timestamp", + "x-ves-example": "1570007981" + }, + "trend_value": { + "description": " trend value for the metric\n\nExample: - \"100.000000\"-", + "title": "Trend value", + "$ref": "#/definitions/schemaTrendValue", + "x-displayname": "Trend Value", + "x-ves-example": "100.000000" + }, + "value": { + "type": "string", + "description": "\n\nExample: - \"15\"-", + "title": "Value", + "x-displayname": "Value", + "x-ves-example": "15" + } + } + }, + "schemaTrendSentiment": { + "type": "string", + "description": "trend sentiment\n\nIndicates trend sentiment is positive\nIndicates trend sentiment is negative.", + "title": "Trend Sentiment", + "enum": [ + "TREND_SENTIMENT_NONE", + "TREND_SENTIMENT_POSITIVE", + "TREND_SENTIMENT_NEGATIVE" + ], + "default": "TREND_SENTIMENT_NONE", + "x-displayname": "Trend Sentiment", + "x-ves-proto-enum": "ves.io.schema.TrendSentiment" + }, + "schemaTrendValue": { + "type": "object", + "description": "Trend value contains trend value, trend sentiment and trend calculation description and window size.", + "title": "Trend Value", + "x-displayname": "Trend Value", + "x-ves-proto-message": "ves.io.schema.TrendValue", + "properties": { + "description": { + "type": "string", + "description": " description of the method used to calculate trend.\n\nExample: - \"Trend was calculated by comparing the avg of window size intervals of end-start Time and last window time interval\"-", + "title": "Description", + "x-displayname": "Description", + "x-ves-example": "Trend was calculated by comparing the avg of window size intervals of end-start Time and last window time interval" + }, + "previous_value": { + "type": "string", + "description": "\n\nExample: - \"200.00\"-", + "title": "Previous Value", + "x-displayname": "Previous Value", + "x-ves-example": "200.00" + }, + "sentiment": { + "description": "\n\nExample: - \"Positive\"-", + "title": "Sentiment", + "$ref": "#/definitions/schemaTrendSentiment", + "x-displayname": "Sentiment", + "x-ves-example": "Positive" + }, + "value": { + "type": "string", + "description": "\n\nExample: - \"-15\"-", + "title": "Value", + "x-displayname": "Value", + "x-ves-example": "-15" + } + } + }, + "schemaUnitType": { + "type": "string", + "description": "UnitType is enumeration of units for scalar fields", + "title": "UnitType", + "enum": [ + "UNIT_MILLISECONDS", + "UNIT_SECONDS", + "UNIT_MINUTES", + "UNIT_HOURS", + "UNIT_DAYS", + "UNIT_BYTES", + "UNIT_KBYTES", + "UNIT_MBYTES", + "UNIT_GBYTES", + "UNIT_TBYTES", + "UNIT_KIBIBYTES", + "UNIT_MIBIBYTES", + "UNIT_GIBIBYTES", + "UNIT_TEBIBYTES", + "UNIT_BITS_PER_SECOND", + "UNIT_BYTES_PER_SECOND", + "UNIT_KBITS_PER_SECOND", + "UNIT_KBYTES_PER_SECOND", + "UNIT_MBITS_PER_SECOND", + "UNIT_MBYTES_PER_SECOND", + "UNIT_CONNECTIONS_PER_SECOND", + "UNIT_ERRORS_PER_SECOND", + "UNIT_PACKETS_PER_SECOND", + "UNIT_REQUESTS_PER_SECOND", + "UNIT_PACKETS", + "UNIT_PERCENTAGE", + "UNIT_COUNT" + ], + "default": "UNIT_MILLISECONDS", + "x-displayname": "Unit", + "x-ves-proto-enum": "ves.io.schema.UnitType" + }, + "schemacloud_connectLabel": { + "type": "string", + "description": "Metrics used to construct the cloud connect dara are tagged with these labels and therefore\nthe metrics can be sliced and diced based on one or more labels.\n\nIndicates the field not being set\nIdentifies a customer edge", + "title": "Label", + "enum": [ + "LABEL_NONE", + "LABEL_CUSTOMER_EDGE" + ], + "default": "LABEL_NONE", + "x-displayname": "Label", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.Label" + } + }, + "x-displayname": "Cloud Connect", + "x-ves-proto-file": "ves.io/schema/cloud_connect/public_customapi.proto" +}` diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi.vesmsg.go b/pbgo/extschema/schema/cloud_connect/public_customapi.vesmsg.go new file mode 100644 index 000000000..43d9ae7e9 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi.vesmsg.go @@ -0,0 +1,1163 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package cloud_connect + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *GetMetricsRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetMetricsRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetMetricsRequest) DeepCopy() *GetMetricsRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetMetricsRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetMetricsRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetMetricsRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetMetricsRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateGetMetricsRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetMetricsRequest) NameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for name") + } + + return validatorFn, nil +} + +func (v *ValidateGetMetricsRequest) FieldSelectorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(FieldSelector) + return int32(i) + } + // FieldSelector_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, FieldSelector_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for field_selector") + } + itemsValidatorFn := func(ctx context.Context, elems []FieldSelector, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for field_selector") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]FieldSelector) + if !ok { + return fmt.Errorf("Repeated validation expected []FieldSelector, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated field_selector") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items field_selector") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGetMetricsRequest) StartTimeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for start_time") + } + + return validatorFn, nil +} + +func (v *ValidateGetMetricsRequest) EndTimeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for end_time") + } + + return validatorFn, nil +} + +func (v *ValidateGetMetricsRequest) StepValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for step") + } + + return validatorFn, nil +} + +func (v *ValidateGetMetricsRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetMetricsRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetMetricsRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["end_time"]; exists { + + vOpts := append(opts, db.WithValidateField("end_time")) + if err := fv(ctx, m.GetEndTime(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["field_selector"]; exists { + vOpts := append(opts, db.WithValidateField("field_selector")) + if err := fv(ctx, m.GetFieldSelector(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["start_time"]; exists { + + vOpts := append(opts, db.WithValidateField("start_time")) + if err := fv(ctx, m.GetStartTime(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["step"]; exists { + + vOpts := append(opts, db.WithValidateField("step")) + if err := fv(ctx, m.GetStep(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetMetricsRequestValidator = func() *ValidateGetMetricsRequest { + v := &ValidateGetMetricsRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhName := v.NameValidationRuleHandler + rulesName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhName(rulesName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetMetricsRequest.name: %s", err) + panic(errMsg) + } + v.FldValidators["name"] = vFn + + vrhFieldSelector := v.FieldSelectorValidationRuleHandler + rulesFieldSelector := map[string]string{ + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFieldSelector(rulesFieldSelector) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetMetricsRequest.field_selector: %s", err) + panic(errMsg) + } + v.FldValidators["field_selector"] = vFn + + vrhStartTime := v.StartTimeValidationRuleHandler + rulesStartTime := map[string]string{ + "ves.io.schema.rules.string.query_time": "true", + } + vFn, err = vrhStartTime(rulesStartTime) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetMetricsRequest.start_time: %s", err) + panic(errMsg) + } + v.FldValidators["start_time"] = vFn + + vrhEndTime := v.EndTimeValidationRuleHandler + rulesEndTime := map[string]string{ + "ves.io.schema.rules.string.query_time": "true", + } + vFn, err = vrhEndTime(rulesEndTime) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetMetricsRequest.end_time: %s", err) + panic(errMsg) + } + v.FldValidators["end_time"] = vFn + + vrhStep := v.StepValidationRuleHandler + rulesStep := map[string]string{ + "ves.io.schema.rules.string.query_step": "true", + } + vFn, err = vrhStep(rulesStep) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetMetricsRequest.step: %s", err) + panic(errMsg) + } + v.FldValidators["step"] = vFn + + return v +}() + +func GetMetricsRequestValidator() db.Validator { + return DefaultGetMetricsRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetMetricsResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetMetricsResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetMetricsResponse) DeepCopy() *GetMetricsResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetMetricsResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetMetricsResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetMetricsResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetMetricsResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateGetMetricsResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetMetricsResponse) StepValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for step") + } + + return validatorFn, nil +} + +func (v *ValidateGetMetricsResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetMetricsResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetMetricsResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["data"]; exists { + + vOpts := append(opts, db.WithValidateField("data")) + for idx, item := range m.GetData() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["step"]; exists { + + vOpts := append(opts, db.WithValidateField("step")) + if err := fv(ctx, m.GetStep(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetMetricsResponseValidator = func() *ValidateGetMetricsResponse { + v := &ValidateGetMetricsResponse{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhStep := v.StepValidationRuleHandler + rulesStep := map[string]string{ + "ves.io.schema.rules.string.time_interval": "true", + } + vFn, err = vrhStep(rulesStep) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetMetricsResponse.step: %s", err) + panic(errMsg) + } + v.FldValidators["step"] = vFn + + return v +}() + +func GetMetricsResponseValidator() db.Validator { + return DefaultGetMetricsResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListMetricsRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListMetricsRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListMetricsRequest) DeepCopy() *ListMetricsRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListMetricsRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListMetricsRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListMetricsRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListMetricsRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateListMetricsRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListMetricsRequest) FieldSelectorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(FieldSelector) + return int32(i) + } + // FieldSelector_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, FieldSelector_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for field_selector") + } + itemsValidatorFn := func(ctx context.Context, elems []FieldSelector, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for field_selector") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]FieldSelector) + if !ok { + return fmt.Errorf("Repeated validation expected []FieldSelector, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated field_selector") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items field_selector") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateListMetricsRequest) StartTimeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for start_time") + } + + return validatorFn, nil +} + +func (v *ValidateListMetricsRequest) EndTimeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for end_time") + } + + return validatorFn, nil +} + +func (v *ValidateListMetricsRequest) StepValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for step") + } + + return validatorFn, nil +} + +func (v *ValidateListMetricsRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListMetricsRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListMetricsRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["end_time"]; exists { + + vOpts := append(opts, db.WithValidateField("end_time")) + if err := fv(ctx, m.GetEndTime(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["field_selector"]; exists { + vOpts := append(opts, db.WithValidateField("field_selector")) + if err := fv(ctx, m.GetFieldSelector(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + for idx, item := range m.GetLabelFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["start_time"]; exists { + + vOpts := append(opts, db.WithValidateField("start_time")) + if err := fv(ctx, m.GetStartTime(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["step"]; exists { + + vOpts := append(opts, db.WithValidateField("step")) + if err := fv(ctx, m.GetStep(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListMetricsRequestValidator = func() *ValidateListMetricsRequest { + v := &ValidateListMetricsRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhFieldSelector := v.FieldSelectorValidationRuleHandler + rulesFieldSelector := map[string]string{ + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFieldSelector(rulesFieldSelector) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListMetricsRequest.field_selector: %s", err) + panic(errMsg) + } + v.FldValidators["field_selector"] = vFn + + vrhStartTime := v.StartTimeValidationRuleHandler + rulesStartTime := map[string]string{ + "ves.io.schema.rules.string.query_time": "true", + } + vFn, err = vrhStartTime(rulesStartTime) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListMetricsRequest.start_time: %s", err) + panic(errMsg) + } + v.FldValidators["start_time"] = vFn + + vrhEndTime := v.EndTimeValidationRuleHandler + rulesEndTime := map[string]string{ + "ves.io.schema.rules.string.query_time": "true", + } + vFn, err = vrhEndTime(rulesEndTime) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListMetricsRequest.end_time: %s", err) + panic(errMsg) + } + v.FldValidators["end_time"] = vFn + + vrhStep := v.StepValidationRuleHandler + rulesStep := map[string]string{ + "ves.io.schema.rules.string.query_step": "true", + } + vFn, err = vrhStep(rulesStep) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListMetricsRequest.step: %s", err) + panic(errMsg) + } + v.FldValidators["step"] = vFn + + return v +}() + +func ListMetricsRequestValidator() db.Validator { + return DefaultListMetricsRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListMetricsResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListMetricsResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListMetricsResponse) DeepCopy() *ListMetricsResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListMetricsResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListMetricsResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListMetricsResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListMetricsResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateListMetricsResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListMetricsResponse) StepValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for step") + } + + return validatorFn, nil +} + +func (v *ValidateListMetricsResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListMetricsResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListMetricsResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["data"]; exists { + + vOpts := append(opts, db.WithValidateField("data")) + for idx, item := range m.GetData() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["edges"]; exists { + + vOpts := append(opts, db.WithValidateField("edges")) + for idx, item := range m.GetEdges() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["step"]; exists { + + vOpts := append(opts, db.WithValidateField("step")) + if err := fv(ctx, m.GetStep(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListMetricsResponseValidator = func() *ValidateListMetricsResponse { + v := &ValidateListMetricsResponse{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhStep := v.StepValidationRuleHandler + rulesStep := map[string]string{ + "ves.io.schema.rules.string.time_interval": "true", + } + vFn, err = vrhStep(rulesStep) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListMetricsResponse.step: %s", err) + panic(errMsg) + } + v.FldValidators["step"] = vFn + + return v +}() + +func ListMetricsResponseValidator() db.Validator { + return DefaultListMetricsResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListSegmentMetricsRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListSegmentMetricsRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListSegmentMetricsRequest) DeepCopy() *ListSegmentMetricsRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListSegmentMetricsRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListSegmentMetricsRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListSegmentMetricsRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListSegmentMetricsRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateListSegmentMetricsRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListSegmentMetricsRequest) FieldSelectorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(FieldSelector) + return int32(i) + } + // FieldSelector_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, FieldSelector_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for field_selector") + } + itemsValidatorFn := func(ctx context.Context, elems []FieldSelector, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for field_selector") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]FieldSelector) + if !ok { + return fmt.Errorf("Repeated validation expected []FieldSelector, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated field_selector") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items field_selector") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateListSegmentMetricsRequest) StartTimeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for start_time") + } + + return validatorFn, nil +} + +func (v *ValidateListSegmentMetricsRequest) EndTimeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for end_time") + } + + return validatorFn, nil +} + +func (v *ValidateListSegmentMetricsRequest) StepValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for step") + } + + return validatorFn, nil +} + +func (v *ValidateListSegmentMetricsRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListSegmentMetricsRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListSegmentMetricsRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["end_time"]; exists { + + vOpts := append(opts, db.WithValidateField("end_time")) + if err := fv(ctx, m.GetEndTime(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["field_selector"]; exists { + vOpts := append(opts, db.WithValidateField("field_selector")) + if err := fv(ctx, m.GetFieldSelector(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + for idx, item := range m.GetLabelFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["start_time"]; exists { + + vOpts := append(opts, db.WithValidateField("start_time")) + if err := fv(ctx, m.GetStartTime(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["step"]; exists { + + vOpts := append(opts, db.WithValidateField("step")) + if err := fv(ctx, m.GetStep(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListSegmentMetricsRequestValidator = func() *ValidateListSegmentMetricsRequest { + v := &ValidateListSegmentMetricsRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhFieldSelector := v.FieldSelectorValidationRuleHandler + rulesFieldSelector := map[string]string{ + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFieldSelector(rulesFieldSelector) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListSegmentMetricsRequest.field_selector: %s", err) + panic(errMsg) + } + v.FldValidators["field_selector"] = vFn + + vrhStartTime := v.StartTimeValidationRuleHandler + rulesStartTime := map[string]string{ + "ves.io.schema.rules.string.query_time": "true", + } + vFn, err = vrhStartTime(rulesStartTime) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListSegmentMetricsRequest.start_time: %s", err) + panic(errMsg) + } + v.FldValidators["start_time"] = vFn + + vrhEndTime := v.EndTimeValidationRuleHandler + rulesEndTime := map[string]string{ + "ves.io.schema.rules.string.query_time": "true", + } + vFn, err = vrhEndTime(rulesEndTime) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListSegmentMetricsRequest.end_time: %s", err) + panic(errMsg) + } + v.FldValidators["end_time"] = vFn + + vrhStep := v.StepValidationRuleHandler + rulesStep := map[string]string{ + "ves.io.schema.rules.string.query_step": "true", + } + vFn, err = vrhStep(rulesStep) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListSegmentMetricsRequest.step: %s", err) + panic(errMsg) + } + v.FldValidators["step"] = vFn + + return v +}() + +func ListSegmentMetricsRequestValidator() db.Validator { + return DefaultListSegmentMetricsRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListSegmentMetricsResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListSegmentMetricsResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListSegmentMetricsResponse) DeepCopy() *ListSegmentMetricsResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListSegmentMetricsResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListSegmentMetricsResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListSegmentMetricsResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListSegmentMetricsResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateListSegmentMetricsResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListSegmentMetricsResponse) StepValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for step") + } + + return validatorFn, nil +} + +func (v *ValidateListSegmentMetricsResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListSegmentMetricsResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListSegmentMetricsResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["edges"]; exists { + + vOpts := append(opts, db.WithValidateField("edges")) + for idx, item := range m.GetEdges() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["segment"]; exists { + + vOpts := append(opts, db.WithValidateField("segment")) + for idx, item := range m.GetSegment() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["step"]; exists { + + vOpts := append(opts, db.WithValidateField("step")) + if err := fv(ctx, m.GetStep(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListSegmentMetricsResponseValidator = func() *ValidateListSegmentMetricsResponse { + v := &ValidateListSegmentMetricsResponse{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhStep := v.StepValidationRuleHandler + rulesStep := map[string]string{ + "ves.io.schema.rules.string.time_interval": "true", + } + vFn, err = vrhStep(rulesStep) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListSegmentMetricsResponse.step: %s", err) + panic(errMsg) + } + v.FldValidators["step"] = vFn + + return v +}() + +func ListSegmentMetricsResponseValidator() db.Validator { + return DefaultListSegmentMetricsResponseValidator +} diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_akar.pb.go b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.pb.go new file mode 100644 index 000000000..8860a91de --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.pb.go @@ -0,0 +1,1636 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/cloud_connect/public_customapi_akar.proto + +// Cloud Connect +// +// x-displayName: "Cloud Connect" +// Cloud Connect related public APIs served by akar. +// It is always scoped by system namespace. + +package cloud_connect + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// EdgeListRequest +// +// x-displayName: "Edge List Request" +// Request body that returns online edge sites both customer edge and cloud edge. +type EdgeListRequest struct { +} + +func (m *EdgeListRequest) Reset() { *m = EdgeListRequest{} } +func (*EdgeListRequest) ProtoMessage() {} +func (*EdgeListRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_18169a6538a880e4, []int{0} +} +func (m *EdgeListRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EdgeListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EdgeListRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EdgeListRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_EdgeListRequest.Merge(m, src) +} +func (m *EdgeListRequest) XXX_Size() int { + return m.Size() +} +func (m *EdgeListRequest) XXX_DiscardUnknown() { + xxx_messageInfo_EdgeListRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_EdgeListRequest proto.InternalMessageInfo + +// EdgeListResponse +// +// x-displayName: "Edge List Response" +// Response body that returns online edge sites both customer edge and cloud edge. +type EdgeListResponse struct { + // Edge Site + // + // x-displayName: "Edge Site" + // Reference to a edge site + EdgeSite []*EdgeSite `protobuf:"bytes,1,rep,name=edge_site,json=edgeSite,proto3" json:"edge_site,omitempty"` +} + +func (m *EdgeListResponse) Reset() { *m = EdgeListResponse{} } +func (*EdgeListResponse) ProtoMessage() {} +func (*EdgeListResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_18169a6538a880e4, []int{1} +} +func (m *EdgeListResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EdgeListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EdgeListResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EdgeListResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_EdgeListResponse.Merge(m, src) +} +func (m *EdgeListResponse) XXX_Size() int { + return m.Size() +} +func (m *EdgeListResponse) XXX_DiscardUnknown() { + xxx_messageInfo_EdgeListResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_EdgeListResponse proto.InternalMessageInfo + +func (m *EdgeListResponse) GetEdgeSite() []*EdgeSite { + if m != nil { + return m.EdgeSite + } + return nil +} + +// Edge Site +// +// x-displayName: "Edge Site" +// Reference to a edge site +type EdgeSite struct { + // Edge Site + // + // x-displayName: "Egde Site Reference" + // Reference to a edge site + EdgeSite *schema.ObjectRefType `protobuf:"bytes,1,opt,name=edge_site,json=edgeSite,proto3" json:"edge_site,omitempty"` + // Region + // + // x-displayName: "Region" + // Edge site region + Region string `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"` + // Provider + // + // x-displayName: "Provider" + // Edge site provider + Provider CloudConnectProviderType `protobuf:"varint,3,opt,name=provider,proto3,enum=ves.io.schema.cloud_connect.CloudConnectProviderType" json:"provider,omitempty"` + // Edge Coordinates + // + // x-displayName: "Edge Coordinates" + // Edge Coordinates + Coordinates *site.Coordinates `protobuf:"bytes,4,opt,name=coordinates,proto3" json:"coordinates,omitempty"` +} + +func (m *EdgeSite) Reset() { *m = EdgeSite{} } +func (*EdgeSite) ProtoMessage() {} +func (*EdgeSite) Descriptor() ([]byte, []int) { + return fileDescriptor_18169a6538a880e4, []int{2} +} +func (m *EdgeSite) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EdgeSite) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EdgeSite.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *EdgeSite) XXX_Merge(src proto.Message) { + xxx_messageInfo_EdgeSite.Merge(m, src) +} +func (m *EdgeSite) XXX_Size() int { + return m.Size() +} +func (m *EdgeSite) XXX_DiscardUnknown() { + xxx_messageInfo_EdgeSite.DiscardUnknown(m) +} + +var xxx_messageInfo_EdgeSite proto.InternalMessageInfo + +func (m *EdgeSite) GetEdgeSite() *schema.ObjectRefType { + if m != nil { + return m.EdgeSite + } + return nil +} + +func (m *EdgeSite) GetRegion() string { + if m != nil { + return m.Region + } + return "" +} + +func (m *EdgeSite) GetProvider() CloudConnectProviderType { + if m != nil { + return m.Provider + } + return AWS +} + +func (m *EdgeSite) GetCoordinates() *site.Coordinates { + if m != nil { + return m.Coordinates + } + return nil +} + +// CredentialsRequest +// +// x-displayName: "Edge Credentials Request" +// Request to return all the credentials for the matching cloud site type. +type CredentialsRequest struct { + // Provider + // + // x-displayName: "Provider" + // Edge site provider + Provider CloudConnectProviderType `protobuf:"varint,3,opt,name=provider,proto3,enum=ves.io.schema.cloud_connect.CloudConnectProviderType" json:"provider,omitempty"` +} + +func (m *CredentialsRequest) Reset() { *m = CredentialsRequest{} } +func (*CredentialsRequest) ProtoMessage() {} +func (*CredentialsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_18169a6538a880e4, []int{3} +} +func (m *CredentialsRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CredentialsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CredentialsRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CredentialsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CredentialsRequest.Merge(m, src) +} +func (m *CredentialsRequest) XXX_Size() int { + return m.Size() +} +func (m *CredentialsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CredentialsRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CredentialsRequest proto.InternalMessageInfo + +func (m *CredentialsRequest) GetProvider() CloudConnectProviderType { + if m != nil { + return m.Provider + } + return AWS +} + +// CredentialsResponse +// +// x-displayName: "CredentialsResponse" +// Response that returns all the credentials for the matching provider. +type CredentialsResponse struct { + // Credentials + // + // x-displayName: "Cloud Credentials" + // Cloud credentials + Cred []*views.ObjectRefType `protobuf:"bytes,1,rep,name=cred,proto3" json:"cred,omitempty"` +} + +func (m *CredentialsResponse) Reset() { *m = CredentialsResponse{} } +func (*CredentialsResponse) ProtoMessage() {} +func (*CredentialsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_18169a6538a880e4, []int{4} +} +func (m *CredentialsResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CredentialsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CredentialsResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CredentialsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CredentialsResponse.Merge(m, src) +} +func (m *CredentialsResponse) XXX_Size() int { + return m.Size() +} +func (m *CredentialsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CredentialsResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_CredentialsResponse proto.InternalMessageInfo + +func (m *CredentialsResponse) GetCred() []*views.ObjectRefType { + if m != nil { + return m.Cred + } + return nil +} + +func init() { + proto.RegisterType((*EdgeListRequest)(nil), "ves.io.schema.cloud_connect.EdgeListRequest") + golang_proto.RegisterType((*EdgeListRequest)(nil), "ves.io.schema.cloud_connect.EdgeListRequest") + proto.RegisterType((*EdgeListResponse)(nil), "ves.io.schema.cloud_connect.EdgeListResponse") + golang_proto.RegisterType((*EdgeListResponse)(nil), "ves.io.schema.cloud_connect.EdgeListResponse") + proto.RegisterType((*EdgeSite)(nil), "ves.io.schema.cloud_connect.EdgeSite") + golang_proto.RegisterType((*EdgeSite)(nil), "ves.io.schema.cloud_connect.EdgeSite") + proto.RegisterType((*CredentialsRequest)(nil), "ves.io.schema.cloud_connect.CredentialsRequest") + golang_proto.RegisterType((*CredentialsRequest)(nil), "ves.io.schema.cloud_connect.CredentialsRequest") + proto.RegisterType((*CredentialsResponse)(nil), "ves.io.schema.cloud_connect.CredentialsResponse") + golang_proto.RegisterType((*CredentialsResponse)(nil), "ves.io.schema.cloud_connect.CredentialsResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/cloud_connect/public_customapi_akar.proto", fileDescriptor_18169a6538a880e4) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/cloud_connect/public_customapi_akar.proto", fileDescriptor_18169a6538a880e4) +} + +var fileDescriptor_18169a6538a880e4 = []byte{ + // 737 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0x31, 0x4f, 0xdb, 0x5a, + 0x14, 0xce, 0x0d, 0x11, 0x02, 0x23, 0x3d, 0xc0, 0xef, 0xe9, 0x29, 0x2f, 0x20, 0x13, 0xf9, 0x09, + 0xbd, 0x0c, 0xd8, 0x46, 0x79, 0x42, 0x8c, 0x15, 0x44, 0x1d, 0x2a, 0x21, 0x15, 0x42, 0xd5, 0xa1, + 0x4b, 0x74, 0x63, 0x9f, 0x98, 0x5b, 0xe2, 0x7b, 0xdd, 0x7b, 0xaf, 0x03, 0xa8, 0x42, 0x42, 0x0c, + 0x5d, 0x3a, 0xb4, 0x52, 0x97, 0xfe, 0x84, 0xaa, 0xbf, 0xa0, 0x12, 0x1d, 0xd8, 0xca, 0x54, 0xa1, + 0x76, 0x61, 0x2c, 0x4e, 0x87, 0x8e, 0xac, 0xdd, 0xaa, 0x38, 0x0e, 0xd8, 0xa6, 0x0a, 0x2c, 0x6c, + 0xf7, 0xf8, 0x3b, 0xe7, 0x3b, 0xe7, 0xbb, 0xe7, 0xf3, 0x55, 0x96, 0x3b, 0x20, 0x4c, 0xc2, 0x2c, + 0x61, 0x6f, 0x81, 0x87, 0x2d, 0xbb, 0xcd, 0x02, 0xa7, 0x61, 0x33, 0x4a, 0xc1, 0x96, 0x96, 0x1f, + 0x34, 0xdb, 0xc4, 0x6e, 0xd8, 0x81, 0x90, 0xcc, 0xc3, 0x3e, 0x69, 0xe0, 0x6d, 0xcc, 0x4d, 0x9f, + 0x33, 0xc9, 0xd4, 0x99, 0x7e, 0xa1, 0xd9, 0x2f, 0x34, 0x53, 0x85, 0x25, 0xc3, 0x25, 0x72, 0x2b, + 0x68, 0x9a, 0x36, 0xf3, 0x2c, 0x97, 0xb9, 0xcc, 0x8a, 0x6a, 0x9a, 0x41, 0x2b, 0x8a, 0xa2, 0x20, + 0x3a, 0xf5, 0xb9, 0x4a, 0xb3, 0x2e, 0x63, 0x6e, 0x1b, 0x2c, 0xec, 0x13, 0x0b, 0x53, 0xca, 0x24, + 0x96, 0x84, 0x51, 0x11, 0xa3, 0xff, 0x0d, 0x1b, 0x51, 0xee, 0xf9, 0x30, 0x48, 0x9c, 0x49, 0x27, + 0x32, 0x3f, 0xc9, 0xa2, 0xa5, 0x41, 0x41, 0x24, 0xa4, 0x8a, 0xff, 0x49, 0xe3, 0x49, 0x68, 0x36, + 0x0d, 0x75, 0x70, 0x9b, 0x38, 0x58, 0x42, 0x8c, 0xea, 0x19, 0x14, 0x04, 0xd0, 0x4e, 0xa6, 0x79, + 0x39, 0x93, 0x43, 0x60, 0xa7, 0x91, 0xce, 0x98, 0xbb, 0x9e, 0x21, 0x92, 0x43, 0xe8, 0xd3, 0xca, + 0xe4, 0x7d, 0xc7, 0x85, 0x35, 0x22, 0x64, 0x1d, 0x9e, 0x05, 0x20, 0xa4, 0xfe, 0x58, 0x99, 0xba, + 0xfa, 0x24, 0x7c, 0x46, 0x05, 0xa8, 0xab, 0xca, 0x38, 0x38, 0x2e, 0x34, 0x7a, 0xfa, 0x8a, 0xa8, + 0x3c, 0x52, 0x99, 0xa8, 0xce, 0x9b, 0x43, 0x56, 0x65, 0xf6, 0x18, 0x36, 0x89, 0x84, 0xfa, 0x18, + 0xc4, 0x27, 0xfd, 0x27, 0x52, 0xc6, 0x06, 0x9f, 0xd5, 0x7b, 0x69, 0x42, 0x54, 0x99, 0xa8, 0xce, + 0x66, 0x08, 0x1f, 0x36, 0x9f, 0x82, 0x2d, 0xeb, 0xd0, 0x7a, 0xb4, 0xe7, 0xc3, 0x6a, 0xe1, 0xe0, + 0x23, 0x42, 0x57, 0x6c, 0xea, 0xdf, 0xca, 0x28, 0x07, 0x97, 0x30, 0x5a, 0xcc, 0x97, 0x51, 0x65, + 0xbc, 0x1e, 0x47, 0xea, 0x86, 0x32, 0xe6, 0x73, 0xd6, 0x21, 0x0e, 0xf0, 0xe2, 0x48, 0x19, 0x55, + 0xfe, 0xa8, 0x2e, 0x0d, 0x1d, 0xb4, 0xd6, 0x8b, 0x6a, 0xfd, 0x60, 0x3d, 0x2e, 0xec, 0x35, 0xac, + 0x5f, 0xd2, 0xa8, 0x2b, 0xca, 0x84, 0xcd, 0x18, 0x77, 0x08, 0xc5, 0x12, 0x44, 0xb1, 0x10, 0x4d, + 0x3b, 0x97, 0x61, 0xed, 0x09, 0x31, 0x6b, 0x57, 0x69, 0xf5, 0x64, 0x8d, 0xee, 0x2a, 0x6a, 0x8d, + 0x83, 0x03, 0x54, 0x12, 0xdc, 0x16, 0xf1, 0x4d, 0xdf, 0xc1, 0xac, 0xba, 0xad, 0xfc, 0x99, 0x6a, + 0x14, 0xef, 0x6f, 0x4d, 0x29, 0xd8, 0x1c, 0x9c, 0x78, 0x75, 0x7a, 0xa6, 0x4b, 0x64, 0x8b, 0xcc, + 0x7d, 0xff, 0xf5, 0x7e, 0x7f, 0x3a, 0xee, 0x9e, 0xe0, 0x8b, 0x58, 0xaa, 0x27, 0x05, 0x65, 0xb2, + 0xc6, 0x68, 0x8b, 0xb8, 0xb5, 0xe8, 0x1f, 0x5e, 0x59, 0x7f, 0xa0, 0x5e, 0xc4, 0xdb, 0xed, 0xd9, + 0x46, 0x5d, 0xb8, 0xd1, 0x1b, 0x09, 0xc3, 0x95, 0x8c, 0x5b, 0x66, 0xf7, 0xb5, 0xe8, 0x2f, 0xd0, + 0xc9, 0x87, 0x3c, 0x0a, 0x3f, 0x15, 0x37, 0x5b, 0x4b, 0xbb, 0xb6, 0x21, 0xc0, 0x0e, 0x38, 0x78, + 0x20, 0xb6, 0x8c, 0x26, 0x16, 0xc4, 0x36, 0x3c, 0x46, 0x89, 0x64, 0x7c, 0xa1, 0x9c, 0x85, 0x85, + 0xc4, 0xd4, 0xc1, 0xdc, 0xb9, 0xcc, 0xe8, 0x80, 0x30, 0x08, 0x33, 0x28, 0xc8, 0x1d, 0xc6, 0xb7, + 0x0d, 0x0e, 0xd8, 0x39, 0xfc, 0xfa, 0xfd, 0x4d, 0x7e, 0x5e, 0xfd, 0x37, 0x7e, 0xa4, 0x2c, 0x8a, + 0x3d, 0x10, 0x3e, 0xb6, 0x41, 0x58, 0x62, 0x4f, 0x48, 0xf0, 0xac, 0xc8, 0xb6, 0xed, 0x9e, 0xca, + 0x57, 0xf9, 0xfe, 0xcf, 0x93, 0xb8, 0x70, 0xd5, 0x1a, 0xbe, 0xc0, 0x6b, 0x1e, 0x28, 0x2d, 0xde, + 0xbe, 0x20, 0xd6, 0xff, 0xf6, 0xce, 0xf5, 0x2f, 0xab, 0x4b, 0x37, 0xe8, 0x4f, 0x78, 0xc2, 0x7a, + 0x3e, 0x30, 0xdf, 0x7e, 0x69, 0xf1, 0xf8, 0x08, 0x8d, 0x7c, 0x39, 0x42, 0xfa, 0x30, 0x4d, 0x7d, + 0x9f, 0x1d, 0x7e, 0x2e, 0xe6, 0xa7, 0xd0, 0xea, 0x4b, 0x74, 0x7a, 0xae, 0xe5, 0xce, 0xce, 0xb5, + 0xdc, 0xc5, 0xb9, 0x86, 0x0e, 0x42, 0x0d, 0xbd, 0x0b, 0x35, 0x74, 0x12, 0x6a, 0xe8, 0x34, 0xd4, + 0xd0, 0xb7, 0x50, 0x43, 0x3f, 0x42, 0x2d, 0x77, 0x11, 0x6a, 0xe8, 0x75, 0x57, 0xcb, 0x1d, 0x77, + 0x35, 0x74, 0xda, 0xd5, 0x72, 0x67, 0x5d, 0x2d, 0xf7, 0x64, 0xc3, 0x65, 0xfe, 0xb6, 0x6b, 0x76, + 0x58, 0x5b, 0x02, 0xe7, 0xd8, 0x0c, 0x84, 0x15, 0x1d, 0x5a, 0x8c, 0x7b, 0xc6, 0x60, 0x26, 0x63, + 0x00, 0x5b, 0x7e, 0xd3, 0x65, 0x16, 0xec, 0xca, 0xc1, 0x4b, 0xfd, 0x9b, 0x67, 0xbf, 0x39, 0x1a, + 0x3d, 0x8a, 0xff, 0xff, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x90, 0xd7, 0x35, 0x56, 0xbf, 0x06, 0x00, + 0x00, +} + +func (this *EdgeListRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EdgeListRequest) + if !ok { + that2, ok := that.(EdgeListRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *EdgeListResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EdgeListResponse) + if !ok { + that2, ok := that.(EdgeListResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.EdgeSite) != len(that1.EdgeSite) { + return false + } + for i := range this.EdgeSite { + if !this.EdgeSite[i].Equal(that1.EdgeSite[i]) { + return false + } + } + return true +} +func (this *EdgeSite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EdgeSite) + if !ok { + that2, ok := that.(EdgeSite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EdgeSite.Equal(that1.EdgeSite) { + return false + } + if this.Region != that1.Region { + return false + } + if this.Provider != that1.Provider { + return false + } + if !this.Coordinates.Equal(that1.Coordinates) { + return false + } + return true +} +func (this *CredentialsRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CredentialsRequest) + if !ok { + that2, ok := that.(CredentialsRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Provider != that1.Provider { + return false + } + return true +} +func (this *CredentialsResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CredentialsResponse) + if !ok { + that2, ok := that.(CredentialsResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Cred) != len(that1.Cred) { + return false + } + for i := range this.Cred { + if !this.Cred[i].Equal(that1.Cred[i]) { + return false + } + } + return true +} +func (this *EdgeListRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&cloud_connect.EdgeListRequest{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *EdgeListResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.EdgeListResponse{") + if this.EdgeSite != nil { + s = append(s, "EdgeSite: "+fmt.Sprintf("%#v", this.EdgeSite)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *EdgeSite) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cloud_connect.EdgeSite{") + if this.EdgeSite != nil { + s = append(s, "EdgeSite: "+fmt.Sprintf("%#v", this.EdgeSite)+",\n") + } + s = append(s, "Region: "+fmt.Sprintf("%#v", this.Region)+",\n") + s = append(s, "Provider: "+fmt.Sprintf("%#v", this.Provider)+",\n") + if this.Coordinates != nil { + s = append(s, "Coordinates: "+fmt.Sprintf("%#v", this.Coordinates)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CredentialsRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.CredentialsRequest{") + s = append(s, "Provider: "+fmt.Sprintf("%#v", this.Provider)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CredentialsResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.CredentialsResponse{") + if this.Cred != nil { + s = append(s, "Cred: "+fmt.Sprintf("%#v", this.Cred)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapiAkar(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// ConfigCustomAPIClient is the client API for ConfigCustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type ConfigCustomAPIClient interface { + // Edge List + // + // x-displayName: "Edge List" + // Returns the online edge sites (Both Customer Edge and Cloud Edge) + EdgeList(ctx context.Context, in *EdgeListRequest, opts ...grpc.CallOption) (*EdgeListResponse, error) + // Cloud Credential + // + // x-displayName: "Cloud Credential" + // Returns the cloud credential for the matching edge type + EdgeCredentials(ctx context.Context, in *CredentialsRequest, opts ...grpc.CallOption) (*CredentialsResponse, error) +} + +type configCustomAPIClient struct { + cc *grpc.ClientConn +} + +func NewConfigCustomAPIClient(cc *grpc.ClientConn) ConfigCustomAPIClient { + return &configCustomAPIClient{cc} +} + +func (c *configCustomAPIClient) EdgeList(ctx context.Context, in *EdgeListRequest, opts ...grpc.CallOption) (*EdgeListResponse, error) { + out := new(EdgeListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.ConfigCustomAPI/EdgeList", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *configCustomAPIClient) EdgeCredentials(ctx context.Context, in *CredentialsRequest, opts ...grpc.CallOption) (*CredentialsResponse, error) { + out := new(CredentialsResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.ConfigCustomAPI/EdgeCredentials", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ConfigCustomAPIServer is the server API for ConfigCustomAPI service. +type ConfigCustomAPIServer interface { + // Edge List + // + // x-displayName: "Edge List" + // Returns the online edge sites (Both Customer Edge and Cloud Edge) + EdgeList(context.Context, *EdgeListRequest) (*EdgeListResponse, error) + // Cloud Credential + // + // x-displayName: "Cloud Credential" + // Returns the cloud credential for the matching edge type + EdgeCredentials(context.Context, *CredentialsRequest) (*CredentialsResponse, error) +} + +// UnimplementedConfigCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedConfigCustomAPIServer struct { +} + +func (*UnimplementedConfigCustomAPIServer) EdgeList(ctx context.Context, req *EdgeListRequest) (*EdgeListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method EdgeList not implemented") +} +func (*UnimplementedConfigCustomAPIServer) EdgeCredentials(ctx context.Context, req *CredentialsRequest) (*CredentialsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method EdgeCredentials not implemented") +} + +func RegisterConfigCustomAPIServer(s *grpc.Server, srv ConfigCustomAPIServer) { + s.RegisterService(&_ConfigCustomAPI_serviceDesc, srv) +} + +func _ConfigCustomAPI_EdgeList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EdgeListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ConfigCustomAPIServer).EdgeList(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.ConfigCustomAPI/EdgeList", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ConfigCustomAPIServer).EdgeList(ctx, req.(*EdgeListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ConfigCustomAPI_EdgeCredentials_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CredentialsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ConfigCustomAPIServer).EdgeCredentials(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.ConfigCustomAPI/EdgeCredentials", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ConfigCustomAPIServer).EdgeCredentials(ctx, req.(*CredentialsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _ConfigCustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.cloud_connect.ConfigCustomAPI", + HandlerType: (*ConfigCustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "EdgeList", + Handler: _ConfigCustomAPI_EdgeList_Handler, + }, + { + MethodName: "EdgeCredentials", + Handler: _ConfigCustomAPI_EdgeCredentials_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/cloud_connect/public_customapi_akar.proto", +} + +func (m *EdgeListRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EdgeListRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EdgeListRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *EdgeListResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EdgeListResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EdgeListResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.EdgeSite) > 0 { + for iNdEx := len(m.EdgeSite) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EdgeSite[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *EdgeSite) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EdgeSite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EdgeSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Coordinates != nil { + { + size, err := m.Coordinates.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.Provider != 0 { + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(m.Provider)) + i-- + dAtA[i] = 0x18 + } + if len(m.Region) > 0 { + i -= len(m.Region) + copy(dAtA[i:], m.Region) + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(len(m.Region))) + i-- + dAtA[i] = 0x12 + } + if m.EdgeSite != nil { + { + size, err := m.EdgeSite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CredentialsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CredentialsRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CredentialsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Provider != 0 { + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(m.Provider)) + i-- + dAtA[i] = 0x18 + } + return len(dAtA) - i, nil +} + +func (m *CredentialsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CredentialsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CredentialsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Cred) > 0 { + for iNdEx := len(m.Cred) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Cred[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiAkar(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapiAkar(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapiAkar(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *EdgeListRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *EdgeListResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.EdgeSite) > 0 { + for _, e := range m.EdgeSite { + l = e.Size() + n += 1 + l + sovPublicCustomapiAkar(uint64(l)) + } + } + return n +} + +func (m *EdgeSite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EdgeSite != nil { + l = m.EdgeSite.Size() + n += 1 + l + sovPublicCustomapiAkar(uint64(l)) + } + l = len(m.Region) + if l > 0 { + n += 1 + l + sovPublicCustomapiAkar(uint64(l)) + } + if m.Provider != 0 { + n += 1 + sovPublicCustomapiAkar(uint64(m.Provider)) + } + if m.Coordinates != nil { + l = m.Coordinates.Size() + n += 1 + l + sovPublicCustomapiAkar(uint64(l)) + } + return n +} + +func (m *CredentialsRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Provider != 0 { + n += 1 + sovPublicCustomapiAkar(uint64(m.Provider)) + } + return n +} + +func (m *CredentialsResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Cred) > 0 { + for _, e := range m.Cred { + l = e.Size() + n += 1 + l + sovPublicCustomapiAkar(uint64(l)) + } + } + return n +} + +func sovPublicCustomapiAkar(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapiAkar(x uint64) (n int) { + return sovPublicCustomapiAkar(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *EdgeListRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EdgeListRequest{`, + `}`, + }, "") + return s +} +func (this *EdgeListResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForEdgeSite := "[]*EdgeSite{" + for _, f := range this.EdgeSite { + repeatedStringForEdgeSite += strings.Replace(f.String(), "EdgeSite", "EdgeSite", 1) + "," + } + repeatedStringForEdgeSite += "}" + s := strings.Join([]string{`&EdgeListResponse{`, + `EdgeSite:` + repeatedStringForEdgeSite + `,`, + `}`, + }, "") + return s +} +func (this *EdgeSite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EdgeSite{`, + `EdgeSite:` + strings.Replace(fmt.Sprintf("%v", this.EdgeSite), "ObjectRefType", "schema.ObjectRefType", 1) + `,`, + `Region:` + fmt.Sprintf("%v", this.Region) + `,`, + `Provider:` + fmt.Sprintf("%v", this.Provider) + `,`, + `Coordinates:` + strings.Replace(fmt.Sprintf("%v", this.Coordinates), "Coordinates", "site.Coordinates", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CredentialsRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CredentialsRequest{`, + `Provider:` + fmt.Sprintf("%v", this.Provider) + `,`, + `}`, + }, "") + return s +} +func (this *CredentialsResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForCred := "[]*ObjectRefType{" + for _, f := range this.Cred { + repeatedStringForCred += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," + } + repeatedStringForCred += "}" + s := strings.Join([]string{`&CredentialsResponse{`, + `Cred:` + repeatedStringForCred + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapiAkar(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *EdgeListRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EdgeListRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EdgeListRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiAkar(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *EdgeListResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EdgeListResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EdgeListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EdgeSite", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EdgeSite = append(m.EdgeSite, &EdgeSite{}) + if err := m.EdgeSite[len(m.EdgeSite)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiAkar(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *EdgeSite) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EdgeSite: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EdgeSite: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EdgeSite", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.EdgeSite == nil { + m.EdgeSite = &schema.ObjectRefType{} + } + if err := m.EdgeSite.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Region = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Provider", wireType) + } + m.Provider = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Provider |= CloudConnectProviderType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Coordinates", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Coordinates == nil { + m.Coordinates = &site.Coordinates{} + } + if err := m.Coordinates.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiAkar(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CredentialsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CredentialsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CredentialsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Provider", wireType) + } + m.Provider = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Provider |= CloudConnectProviderType(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiAkar(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CredentialsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CredentialsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CredentialsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cred", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Cred = append(m.Cred, &views.ObjectRefType{}) + if err := m.Cred[len(m.Cred)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiAkar(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiAkar + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapiAkar(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapiAkar + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapiAkar + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapiAkar + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapiAkar + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapiAkar = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapiAkar = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapiAkar = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_akar.pb.gw.go b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.pb.gw.go new file mode 100644 index 000000000..5bf73dc2c --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.pb.gw.go @@ -0,0 +1,248 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/cloud_connect/public_customapi_akar.proto + +/* +Package cloud_connect is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package cloud_connect + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_ConfigCustomAPI_EdgeList_0(ctx context.Context, marshaler runtime.Marshaler, client ConfigCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq EdgeListRequest + var metadata runtime.ServerMetadata + + msg, err := client.EdgeList(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_ConfigCustomAPI_EdgeList_0(ctx context.Context, marshaler runtime.Marshaler, server ConfigCustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq EdgeListRequest + var metadata runtime.ServerMetadata + + msg, err := server.EdgeList(ctx, &protoReq) + return msg, metadata, err + +} + +func request_ConfigCustomAPI_EdgeCredentials_0(ctx context.Context, marshaler runtime.Marshaler, client ConfigCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CredentialsRequest + var metadata runtime.ServerMetadata + + var ( + val string + e int32 + ok bool + err error + _ = err + ) + + val, ok = pathParams["provider"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "provider") + } + + e, err = runtime.Enum(val, CloudConnectProviderType_value) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "provider", err) + } + + protoReq.Provider = CloudConnectProviderType(e) + + msg, err := client.EdgeCredentials(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_ConfigCustomAPI_EdgeCredentials_0(ctx context.Context, marshaler runtime.Marshaler, server ConfigCustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CredentialsRequest + var metadata runtime.ServerMetadata + + var ( + val string + e int32 + ok bool + err error + _ = err + ) + + val, ok = pathParams["provider"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "provider") + } + + e, err = runtime.Enum(val, CloudConnectProviderType_value) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "provider", err) + } + + protoReq.Provider = CloudConnectProviderType(e) + + msg, err := server.EdgeCredentials(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterConfigCustomAPIHandlerServer registers the http handlers for service ConfigCustomAPI to "mux". +// UnaryRPC :call ConfigCustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterConfigCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ConfigCustomAPIServer) error { + + mux.Handle("GET", pattern_ConfigCustomAPI_EdgeList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_ConfigCustomAPI_EdgeList_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_ConfigCustomAPI_EdgeList_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_ConfigCustomAPI_EdgeCredentials_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_ConfigCustomAPI_EdgeCredentials_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_ConfigCustomAPI_EdgeCredentials_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterConfigCustomAPIHandlerFromEndpoint is same as RegisterConfigCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterConfigCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterConfigCustomAPIHandler(ctx, mux, conn) +} + +// RegisterConfigCustomAPIHandler registers the http handlers for service ConfigCustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterConfigCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterConfigCustomAPIHandlerClient(ctx, mux, NewConfigCustomAPIClient(conn)) +} + +// RegisterConfigCustomAPIHandlerClient registers the http handlers for service ConfigCustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "ConfigCustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "ConfigCustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "ConfigCustomAPIClient" to call the correct interceptors. +func RegisterConfigCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ConfigCustomAPIClient) error { + + mux.Handle("GET", pattern_ConfigCustomAPI_EdgeList_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_ConfigCustomAPI_EdgeList_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_ConfigCustomAPI_EdgeList_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_ConfigCustomAPI_EdgeCredentials_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_ConfigCustomAPI_EdgeCredentials_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_ConfigCustomAPI_EdgeCredentials_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_ConfigCustomAPI_EdgeList_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"public", "namespaces", "system", "edge_list"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_ConfigCustomAPI_EdgeCredentials_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "system", "edge_credentials", "provider"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_ConfigCustomAPI_EdgeList_0 = runtime.ForwardResponseMessage + + forward_ConfigCustomAPI_EdgeCredentials_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_akar.vesapi.go b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.vesapi.go new file mode 100644 index 000000000..55443aa0c --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.vesapi.go @@ -0,0 +1,832 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package cloud_connect + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create ConfigCustomAPI GRPC Client satisfying server.CustomClient +type ConfigCustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient ConfigCustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *ConfigCustomAPIGrpcClient) doRPCEdgeCredentials(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &CredentialsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.CredentialsRequest", yamlReq) + } + rsp, err := c.grpcClient.EdgeCredentials(ctx, req, opts...) + return rsp, err +} + +func (c *ConfigCustomAPIGrpcClient) doRPCEdgeList(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &EdgeListRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.EdgeListRequest", yamlReq) + } + rsp, err := c.grpcClient.EdgeList(ctx, req, opts...) + return rsp, err +} + +func (c *ConfigCustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewConfigCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &ConfigCustomAPIGrpcClient{ + conn: cc, + grpcClient: NewConfigCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["EdgeCredentials"] = ccl.doRPCEdgeCredentials + + rpcFns["EdgeList"] = ccl.doRPCEdgeList + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create ConfigCustomAPI REST Client satisfying server.CustomClient +type ConfigCustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *ConfigCustomAPIRestClient) doRPCEdgeCredentials(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &CredentialsRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.CredentialsRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("provider", fmt.Sprintf("%v", req.Provider)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &CredentialsResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.CredentialsResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *ConfigCustomAPIRestClient) doRPCEdgeList(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &EdgeListRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.EdgeListRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &EdgeListResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.EdgeListResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *ConfigCustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewConfigCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &ConfigCustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["EdgeCredentials"] = ccl.doRPCEdgeCredentials + + rpcFns["EdgeList"] = ccl.doRPCEdgeList + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create configCustomAPIInprocClient + +// INPROC Client (satisfying ConfigCustomAPIClient interface) +type configCustomAPIInprocClient struct { + ConfigCustomAPIServer +} + +func (c *configCustomAPIInprocClient) EdgeCredentials(ctx context.Context, in *CredentialsRequest, opts ...grpc.CallOption) (*CredentialsResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeCredentials") + return c.ConfigCustomAPIServer.EdgeCredentials(ctx, in) +} +func (c *configCustomAPIInprocClient) EdgeList(ctx context.Context, in *EdgeListRequest, opts ...grpc.CallOption) (*EdgeListResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeList") + return c.ConfigCustomAPIServer.EdgeList(ctx, in) +} + +func NewConfigCustomAPIInprocClient(svc svcfw.Service) ConfigCustomAPIClient { + return &configCustomAPIInprocClient{ConfigCustomAPIServer: NewConfigCustomAPIServer(svc)} +} + +// RegisterGwConfigCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwConfigCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterConfigCustomAPIHandlerClient(ctx, mux, NewConfigCustomAPIInprocClient(s)) +} + +// Create configCustomAPISrv + +// SERVER (satisfying ConfigCustomAPIServer interface) +type configCustomAPISrv struct { + svc svcfw.Service +} + +func (s *configCustomAPISrv) EdgeCredentials(ctx context.Context, in *CredentialsRequest) (*CredentialsResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.ConfigCustomAPI") + cah, ok := ah.(ConfigCustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *ConfigCustomAPIServer", ah) + } + + var ( + rsp *CredentialsResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.CredentialsRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'ConfigCustomAPI.EdgeCredentials' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeCredentials"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.EdgeCredentials(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.CredentialsResponse", rsp)...) + + return rsp, nil +} +func (s *configCustomAPISrv) EdgeList(ctx context.Context, in *EdgeListRequest) (*EdgeListResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.ConfigCustomAPI") + cah, ok := ah.(ConfigCustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *ConfigCustomAPIServer", ah) + } + + var ( + rsp *EdgeListResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.EdgeListRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'ConfigCustomAPI.EdgeList' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeList"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.EdgeList(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.EdgeListResponse", rsp)...) + + return rsp, nil +} + +func NewConfigCustomAPIServer(svc svcfw.Service) ConfigCustomAPIServer { + return &configCustomAPISrv{svc: svc} +} + +var ConfigCustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Cloud Connect", + "description": "Cloud Connect related public APIs served by akar.\nIt is always scoped by system namespace.", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/system/edge_credentials/{provider}": { + "get": { + "summary": "Cloud Credential", + "description": "Returns the cloud credential for the matching edge type", + "operationId": "ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeCredentials", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectCredentialsResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "provider", + "description": "Provider\n\nEdge site provider", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "x-displayname": "Provider" + } + ], + "tags": [ + "ConfigCustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-configcustomapi-edgecredentials" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeCredentials" + }, + "x-displayname": "Cloud Connect Akar CustomAPI", + "x-ves-proto-service": "ves.io.schema.cloud_connect.ConfigCustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/system/edge_list": { + "get": { + "summary": "Edge List", + "description": "Returns the online edge sites (Both Customer Edge and Cloud Edge)", + "operationId": "ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeList", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectEdgeListResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "tags": [ + "ConfigCustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-configcustomapi-edgelist" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeList" + }, + "x-displayname": "Cloud Connect Akar CustomAPI", + "x-ves-proto-service": "ves.io.schema.cloud_connect.ConfigCustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "cloud_connectCloudConnectProviderType": { + "type": "string", + "description": "Cloud Connect Provider Type\n\n - AWS: AWS\n\nCloud connects backed by AWS cloud\n - AZURE: AZURE\n\nCloud connects backed by Azure cloud\n - GCP: GCP\n\nCloud connects backed by GCP cloud", + "title": "Cloud Connect Provider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "default": "AWS", + "x-displayname": "Cloud Connect Provider", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.CloudConnectProviderType" + }, + "cloud_connectCredentialsResponse": { + "type": "object", + "description": "Response that returns all the credentials for the matching provider.", + "title": "CredentialsResponse", + "x-displayname": "CredentialsResponse", + "x-ves-proto-message": "ves.io.schema.cloud_connect.CredentialsResponse", + "properties": { + "cred": { + "type": "array", + "description": " Cloud credentials", + "title": "Credentials", + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Cloud Credentials" + } + } + }, + "cloud_connectEdgeListResponse": { + "type": "object", + "description": "Response body that returns online edge sites both customer edge and cloud edge.", + "title": "EdgeListResponse", + "x-displayname": "Edge List Response", + "x-ves-proto-message": "ves.io.schema.cloud_connect.EdgeListResponse", + "properties": { + "edge_site": { + "type": "array", + "description": " Reference to a edge site", + "title": "Edge Site", + "items": { + "$ref": "#/definitions/cloud_connectEdgeSite" + }, + "x-displayname": "Edge Site" + } + } + }, + "cloud_connectEdgeSite": { + "type": "object", + "description": "Reference to a edge site", + "title": "Edge Site", + "x-displayname": "Edge Site", + "x-ves-proto-message": "ves.io.schema.cloud_connect.EdgeSite", + "properties": { + "coordinates": { + "description": " Edge Coordinates", + "title": "Edge Coordinates", + "$ref": "#/definitions/siteCoordinates", + "x-displayname": "Edge Coordinates" + }, + "edge_site": { + "description": " Reference to a edge site", + "title": "Edge Site", + "$ref": "#/definitions/ioschemaObjectRefType", + "x-displayname": "Egde Site Reference" + }, + "provider": { + "description": " Edge site provider", + "title": "Provider", + "$ref": "#/definitions/cloud_connectCloudConnectProviderType", + "x-displayname": "Provider" + }, + "region": { + "type": "string", + "description": " Edge site region", + "title": "Region", + "x-displayname": "Region" + } + } + }, + "ioschemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + }, + "siteCoordinates": { + "type": "object", + "description": "Coordinates of the site which provides the site physical location", + "title": "Site Coordinates", + "x-displayname": "Site Coordinates", + "x-ves-proto-message": "ves.io.schema.site.Coordinates", + "properties": { + "latitude": { + "type": "number", + "description": " Latitude of the site location\n\nExample: - \"10.0\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: -90.0\n ves.io.schema.rules.float.lte: 90.0\n", + "title": "latitude", + "format": "float", + "x-displayname": "Latitude", + "x-ves-example": "10.0", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "-90.0", + "ves.io.schema.rules.float.lte": "90.0" + } + }, + "longitude": { + "type": "number", + "description": " longitude of site location\n\nExample: - \"20.0\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: -180.0\n ves.io.schema.rules.float.lte: 180.0\n", + "title": "longitude", + "format": "float", + "x-displayname": "Longitude", + "x-ves-example": "20.0", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "-180.0", + "ves.io.schema.rules.float.lte": "180.0" + } + } + } + } + }, + "x-displayname": "Cloud Connect", + "x-ves-proto-file": "ves.io/schema/cloud_connect/public_customapi_akar.proto" +}` diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_akar.vesmsg.go b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.vesmsg.go new file mode 100644 index 000000000..9c1e04722 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_akar.vesmsg.go @@ -0,0 +1,511 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package cloud_connect + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CredentialsRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CredentialsRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CredentialsRequest) DeepCopy() *CredentialsRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CredentialsRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CredentialsRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CredentialsRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CredentialsRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateCredentialsRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCredentialsRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CredentialsRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CredentialsRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["provider"]; exists { + + vOpts := append(opts, db.WithValidateField("provider")) + if err := fv(ctx, m.GetProvider(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCredentialsRequestValidator = func() *ValidateCredentialsRequest { + v := &ValidateCredentialsRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func CredentialsRequestValidator() db.Validator { + return DefaultCredentialsRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CredentialsResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CredentialsResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CredentialsResponse) DeepCopy() *CredentialsResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CredentialsResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CredentialsResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CredentialsResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CredentialsResponseValidator().Validate(ctx, m, opts...) +} + +func (m *CredentialsResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCredDRefInfo() + +} + +func (m *CredentialsResponse) GetCredDRefInfo() ([]db.DRefInfo, error) { + vrefs := m.GetCred() + if len(vrefs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(vrefs)) + for i, vref := range vrefs { + if vref == nil { + return nil, fmt.Errorf("CredentialsResponse.cred[%d] has a nil value", i) + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("cloud_credentials.Object") + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "cloud_credentials.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "cred", + Ref: vdRef, + }) + } + return drInfos, nil + +} + +// GetCredDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CredentialsResponse) GetCredDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_credentials.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_credentials") + } + for i, vref := range m.GetCred() { + if vref == nil { + return nil, fmt.Errorf("CredentialsResponse.cred[%d] has a nil value", i) + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "cloud_credentials.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateCredentialsResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCredentialsResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CredentialsResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CredentialsResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cred"]; exists { + + vOpts := append(opts, db.WithValidateField("cred")) + for idx, item := range m.GetCred() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCredentialsResponseValidator = func() *ValidateCredentialsResponse { + v := &ValidateCredentialsResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["cred"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func CredentialsResponseValidator() db.Validator { + return DefaultCredentialsResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *EdgeListRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *EdgeListRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *EdgeListRequest) DeepCopy() *EdgeListRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &EdgeListRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *EdgeListRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *EdgeListRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return EdgeListRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateEdgeListRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateEdgeListRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*EdgeListRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *EdgeListRequest got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultEdgeListRequestValidator = func() *ValidateEdgeListRequest { + v := &ValidateEdgeListRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func EdgeListRequestValidator() db.Validator { + return DefaultEdgeListRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *EdgeListResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *EdgeListResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *EdgeListResponse) DeepCopy() *EdgeListResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &EdgeListResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *EdgeListResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *EdgeListResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return EdgeListResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateEdgeListResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateEdgeListResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*EdgeListResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *EdgeListResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["edge_site"]; exists { + + vOpts := append(opts, db.WithValidateField("edge_site")) + for idx, item := range m.GetEdgeSite() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultEdgeListResponseValidator = func() *ValidateEdgeListResponse { + v := &ValidateEdgeListResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["edge_site"] = EdgeSiteValidator().Validate + + return v +}() + +func EdgeListResponseValidator() db.Validator { + return DefaultEdgeListResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *EdgeSite) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *EdgeSite) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *EdgeSite) DeepCopy() *EdgeSite { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &EdgeSite{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *EdgeSite) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *EdgeSite) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return EdgeSiteValidator().Validate(ctx, m, opts...) +} + +type ValidateEdgeSite struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateEdgeSite) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*EdgeSite) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *EdgeSite got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["coordinates"]; exists { + + vOpts := append(opts, db.WithValidateField("coordinates")) + if err := fv(ctx, m.GetCoordinates(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["edge_site"]; exists { + + vOpts := append(opts, db.WithValidateField("edge_site")) + if err := fv(ctx, m.GetEdgeSite(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["provider"]; exists { + + vOpts := append(opts, db.WithValidateField("provider")) + if err := fv(ctx, m.GetProvider(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["region"]; exists { + + vOpts := append(opts, db.WithValidateField("region")) + if err := fv(ctx, m.GetRegion(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultEdgeSiteValidator = func() *ValidateEdgeSite { + v := &ValidateEdgeSite{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["coordinates"] = ves_io_schema_site.CoordinatesValidator().Validate + + return v +}() + +func EdgeSiteValidator() db.Validator { + return DefaultEdgeSiteValidator +} diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.pb.go b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.pb.go new file mode 100644 index 000000000..64ea74e14 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.pb.go @@ -0,0 +1,1914 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/cloud_connect/public_customapi_lucario.proto + +// Cloud Connect +// +// x-displayName: "Cloud Connect" +// Cloud Connect related public APIs served by lucario. +// It is always scoped by system namespace. + +package cloud_connect + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// DiscoverVPCRequest +// +// x-displayName: "Cloud Connect VPC Discovery Request" +// Request body to discover vpcs for a given cloud provider, region and cred. +type DiscoverVPCRequest struct { + // Cloud Credential + // + // x-displayName: "Cloud Credential" + // Cloud credential. + Cred *views.ObjectRefType `protobuf:"bytes,1,opt,name=cred,proto3" json:"cred,omitempty"` + // Cloud Provider + // + // x-displayName: "Cloud Connect Provider" + // Cloud connect backend provider. + Provider CloudConnectProviderType `protobuf:"varint,2,opt,name=provider,proto3,enum=ves.io.schema.cloud_connect.CloudConnectProviderType" json:"provider,omitempty"` + // Region + // + // x-displayName: "Region" + // Region. + Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"` +} + +func (m *DiscoverVPCRequest) Reset() { *m = DiscoverVPCRequest{} } +func (*DiscoverVPCRequest) ProtoMessage() {} +func (*DiscoverVPCRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_bf781e6c55ca0fa7, []int{0} +} +func (m *DiscoverVPCRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DiscoverVPCRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DiscoverVPCRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DiscoverVPCRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_DiscoverVPCRequest.Merge(m, src) +} +func (m *DiscoverVPCRequest) XXX_Size() int { + return m.Size() +} +func (m *DiscoverVPCRequest) XXX_DiscardUnknown() { + xxx_messageInfo_DiscoverVPCRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_DiscoverVPCRequest proto.InternalMessageInfo + +func (m *DiscoverVPCRequest) GetCred() *views.ObjectRefType { + if m != nil { + return m.Cred + } + return nil +} + +func (m *DiscoverVPCRequest) GetProvider() CloudConnectProviderType { + if m != nil { + return m.Provider + } + return AWS +} + +func (m *DiscoverVPCRequest) GetRegion() string { + if m != nil { + return m.Region + } + return "" +} + +// DiscoverVPCResponse +// +// x-displayName: "Cloud Connect VPC Discovery Response" +// VPC discovery response body for a cloud provider. +type DiscoverVPCResponse struct { + // Discovered VPC + // x-displayName: "Discovered VPC" + // Discovered vpc + DiscoveredVpc []*DiscoveredVPCType `protobuf:"bytes,1,rep,name=discovered_vpc,json=discoveredVpc,proto3" json:"discovered_vpc,omitempty"` +} + +func (m *DiscoverVPCResponse) Reset() { *m = DiscoverVPCResponse{} } +func (*DiscoverVPCResponse) ProtoMessage() {} +func (*DiscoverVPCResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_bf781e6c55ca0fa7, []int{1} +} +func (m *DiscoverVPCResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DiscoverVPCResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DiscoverVPCResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DiscoverVPCResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_DiscoverVPCResponse.Merge(m, src) +} +func (m *DiscoverVPCResponse) XXX_Size() int { + return m.Size() +} +func (m *DiscoverVPCResponse) XXX_DiscardUnknown() { + xxx_messageInfo_DiscoverVPCResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_DiscoverVPCResponse proto.InternalMessageInfo + +func (m *DiscoverVPCResponse) GetDiscoveredVpc() []*DiscoveredVPCType { + if m != nil { + return m.DiscoveredVpc + } + return nil +} + +// DiscoverVPC Type +// +// x-displayName: "Discover VPC" +// Discover VPC Type +type DiscoveredVPCType struct { + // VPC Name + // + // x-displayName: "VPC Name" + // VPC Name + VpcName string `protobuf:"bytes,1,opt,name=vpc_name,json=vpcName,proto3" json:"vpc_name,omitempty"` + // VPC ID + // + // x-displayName: "VPC ID" + // VPC ID + VpcId string `protobuf:"bytes,2,opt,name=vpc_id,json=vpcId,proto3" json:"vpc_id,omitempty"` + // Region + // + // x-displayName: "Region" + // Region + Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"` + // Credential + // + // x-displayName: "Cloud Credential" + // Cloud credential + Cred *views.ObjectRefType `protobuf:"bytes,4,opt,name=cred,proto3" json:"cred,omitempty"` + // Cloud Provider + // + // x-displayName: "Cloud Connect Provider" + // Cloud connect backend provider + Provider CloudConnectProviderType `protobuf:"varint,5,opt,name=provider,proto3,enum=ves.io.schema.cloud_connect.CloudConnectProviderType" json:"provider,omitempty"` +} + +func (m *DiscoveredVPCType) Reset() { *m = DiscoveredVPCType{} } +func (*DiscoveredVPCType) ProtoMessage() {} +func (*DiscoveredVPCType) Descriptor() ([]byte, []int) { + return fileDescriptor_bf781e6c55ca0fa7, []int{2} +} +func (m *DiscoveredVPCType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DiscoveredVPCType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DiscoveredVPCType.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DiscoveredVPCType) XXX_Merge(src proto.Message) { + xxx_messageInfo_DiscoveredVPCType.Merge(m, src) +} +func (m *DiscoveredVPCType) XXX_Size() int { + return m.Size() +} +func (m *DiscoveredVPCType) XXX_DiscardUnknown() { + xxx_messageInfo_DiscoveredVPCType.DiscardUnknown(m) +} + +var xxx_messageInfo_DiscoveredVPCType proto.InternalMessageInfo + +func (m *DiscoveredVPCType) GetVpcName() string { + if m != nil { + return m.VpcName + } + return "" +} + +func (m *DiscoveredVPCType) GetVpcId() string { + if m != nil { + return m.VpcId + } + return "" +} + +func (m *DiscoveredVPCType) GetRegion() string { + if m != nil { + return m.Region + } + return "" +} + +func (m *DiscoveredVPCType) GetCred() *views.ObjectRefType { + if m != nil { + return m.Cred + } + return nil +} + +func (m *DiscoveredVPCType) GetProvider() CloudConnectProviderType { + if m != nil { + return m.Provider + } + return AWS +} + +// ReApplyVPCAttachmentRequest +// +// x-displayName: "ReApplyVPCAttachmentRequest" +// Request of vpc attachment reapply event. +type ReApplyVPCAttachmentRequest struct { + // Cloud Connect reference + // + // x-displayName: "Cloud Connect Reference" + // Reference to a cloud connect object + CloudConnect *views.ObjectRefType `protobuf:"bytes,1,opt,name=cloud_connect,json=cloudConnect,proto3" json:"cloud_connect,omitempty"` + // VPC ID + // + // x-displayName: "VPC ID" + // VPC ID + VpcId string `protobuf:"bytes,2,opt,name=vpc_id,json=vpcId,proto3" json:"vpc_id,omitempty"` + // Cloud Provider + // + // x-displayName: "Cloud Connect Provider" + // Cloud connect backend provider + Provider CloudConnectProviderType `protobuf:"varint,3,opt,name=provider,proto3,enum=ves.io.schema.cloud_connect.CloudConnectProviderType" json:"provider,omitempty"` +} + +func (m *ReApplyVPCAttachmentRequest) Reset() { *m = ReApplyVPCAttachmentRequest{} } +func (*ReApplyVPCAttachmentRequest) ProtoMessage() {} +func (*ReApplyVPCAttachmentRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_bf781e6c55ca0fa7, []int{3} +} +func (m *ReApplyVPCAttachmentRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReApplyVPCAttachmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReApplyVPCAttachmentRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReApplyVPCAttachmentRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReApplyVPCAttachmentRequest.Merge(m, src) +} +func (m *ReApplyVPCAttachmentRequest) XXX_Size() int { + return m.Size() +} +func (m *ReApplyVPCAttachmentRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ReApplyVPCAttachmentRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ReApplyVPCAttachmentRequest proto.InternalMessageInfo + +func (m *ReApplyVPCAttachmentRequest) GetCloudConnect() *views.ObjectRefType { + if m != nil { + return m.CloudConnect + } + return nil +} + +func (m *ReApplyVPCAttachmentRequest) GetVpcId() string { + if m != nil { + return m.VpcId + } + return "" +} + +func (m *ReApplyVPCAttachmentRequest) GetProvider() CloudConnectProviderType { + if m != nil { + return m.Provider + } + return AWS +} + +// ReApplyVPCAttachmentResponse +// +// x-displayName: "ReApplyVPCAttachmentResponse" +// Reponse of vpc attachment reapply event. +type ReApplyVPCAttachmentResponse struct { +} + +func (m *ReApplyVPCAttachmentResponse) Reset() { *m = ReApplyVPCAttachmentResponse{} } +func (*ReApplyVPCAttachmentResponse) ProtoMessage() {} +func (*ReApplyVPCAttachmentResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_bf781e6c55ca0fa7, []int{4} +} +func (m *ReApplyVPCAttachmentResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReApplyVPCAttachmentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReApplyVPCAttachmentResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReApplyVPCAttachmentResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReApplyVPCAttachmentResponse.Merge(m, src) +} +func (m *ReApplyVPCAttachmentResponse) XXX_Size() int { + return m.Size() +} +func (m *ReApplyVPCAttachmentResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ReApplyVPCAttachmentResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ReApplyVPCAttachmentResponse proto.InternalMessageInfo + +func init() { + proto.RegisterType((*DiscoverVPCRequest)(nil), "ves.io.schema.cloud_connect.DiscoverVPCRequest") + golang_proto.RegisterType((*DiscoverVPCRequest)(nil), "ves.io.schema.cloud_connect.DiscoverVPCRequest") + proto.RegisterType((*DiscoverVPCResponse)(nil), "ves.io.schema.cloud_connect.DiscoverVPCResponse") + golang_proto.RegisterType((*DiscoverVPCResponse)(nil), "ves.io.schema.cloud_connect.DiscoverVPCResponse") + proto.RegisterType((*DiscoveredVPCType)(nil), "ves.io.schema.cloud_connect.DiscoveredVPCType") + golang_proto.RegisterType((*DiscoveredVPCType)(nil), "ves.io.schema.cloud_connect.DiscoveredVPCType") + proto.RegisterType((*ReApplyVPCAttachmentRequest)(nil), "ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest") + golang_proto.RegisterType((*ReApplyVPCAttachmentRequest)(nil), "ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest") + proto.RegisterType((*ReApplyVPCAttachmentResponse)(nil), "ves.io.schema.cloud_connect.ReApplyVPCAttachmentResponse") + golang_proto.RegisterType((*ReApplyVPCAttachmentResponse)(nil), "ves.io.schema.cloud_connect.ReApplyVPCAttachmentResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/cloud_connect/public_customapi_lucario.proto", fileDescriptor_bf781e6c55ca0fa7) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/cloud_connect/public_customapi_lucario.proto", fileDescriptor_bf781e6c55ca0fa7) +} + +var fileDescriptor_bf781e6c55ca0fa7 = []byte{ + // 831 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x41, 0x6f, 0xdc, 0x44, + 0x14, 0xde, 0xd9, 0x4d, 0x43, 0x33, 0xa1, 0x95, 0x6a, 0x0a, 0xda, 0x6e, 0xa2, 0x61, 0xe5, 0x03, + 0x44, 0x05, 0xdb, 0x10, 0x54, 0x09, 0x72, 0x40, 0x4a, 0x37, 0x97, 0x4a, 0xa8, 0x6c, 0x0d, 0xe4, + 0x80, 0x84, 0x56, 0xb3, 0xe3, 0x17, 0x67, 0xa8, 0xed, 0x19, 0x66, 0xc6, 0x4e, 0x73, 0x40, 0xaa, + 0x7a, 0x85, 0x03, 0x12, 0x47, 0xfe, 0x00, 0xf0, 0x0b, 0x90, 0xca, 0xa1, 0x37, 0x7a, 0x01, 0x45, + 0x70, 0xe9, 0xb1, 0x71, 0x10, 0xe2, 0xd8, 0x0b, 0x57, 0x40, 0xf6, 0x7a, 0xb7, 0xeb, 0x6d, 0xb2, + 0x0a, 0x28, 0x37, 0x3f, 0x7f, 0xef, 0x7b, 0xfe, 0xde, 0xf7, 0xde, 0x78, 0xf0, 0x46, 0x06, 0xda, + 0xe5, 0xc2, 0xd3, 0x6c, 0x17, 0x62, 0xea, 0xb1, 0x48, 0xa4, 0xc1, 0x80, 0x89, 0x24, 0x01, 0x66, + 0x3c, 0x99, 0x0e, 0x23, 0xce, 0x06, 0x2c, 0xd5, 0x46, 0xc4, 0x54, 0xf2, 0x41, 0x94, 0x32, 0xaa, + 0xb8, 0x70, 0xa5, 0x12, 0x46, 0x58, 0x2b, 0x23, 0xae, 0x3b, 0xe2, 0xba, 0x35, 0x6e, 0xc7, 0x09, + 0xb9, 0xd9, 0x4d, 0x87, 0x2e, 0x13, 0xb1, 0x17, 0x8a, 0x50, 0x78, 0x25, 0x67, 0x98, 0xee, 0x94, + 0x51, 0x19, 0x94, 0x4f, 0xa3, 0x5a, 0x9d, 0xd5, 0x50, 0x88, 0x30, 0x02, 0x8f, 0x4a, 0xee, 0xd1, + 0x24, 0x11, 0x86, 0x1a, 0x2e, 0x12, 0x5d, 0xa1, 0xaf, 0xce, 0x53, 0x69, 0xf6, 0x25, 0x8c, 0x13, + 0x57, 0xea, 0x89, 0x42, 0x4e, 0x57, 0x21, 0x75, 0x50, 0x73, 0x03, 0x35, 0xf2, 0x95, 0x3a, 0x3e, + 0x0d, 0xad, 0xd6, 0xa1, 0x8c, 0x46, 0x3c, 0xa0, 0x06, 0x2a, 0xd4, 0x9e, 0x41, 0x41, 0x43, 0x92, + 0xcd, 0x7c, 0xbc, 0x3b, 0x93, 0xc3, 0x61, 0x6f, 0x50, 0xcf, 0x78, 0xf9, 0xd9, 0x0c, 0x3d, 0x2d, + 0xc2, 0xfe, 0x19, 0x61, 0x6b, 0x8b, 0x6b, 0x26, 0x32, 0x50, 0xdb, 0xfd, 0x9e, 0x0f, 0x9f, 0xa5, + 0xa0, 0x8d, 0xf5, 0x1e, 0x5e, 0x60, 0x0a, 0x82, 0x36, 0xea, 0xa2, 0xb5, 0xe5, 0x75, 0xdb, 0xad, + 0x4f, 0xa5, 0x2c, 0xe3, 0xbe, 0x3f, 0xfc, 0x14, 0x98, 0xf1, 0x61, 0xe7, 0xc3, 0x7d, 0x09, 0xd7, + 0x2f, 0x7f, 0xff, 0xf9, 0xa5, 0xca, 0x43, 0x05, 0x01, 0x24, 0x86, 0xd3, 0x48, 0xfb, 0x65, 0x15, + 0xeb, 0x16, 0x3e, 0x2f, 0x95, 0xc8, 0x78, 0x00, 0xaa, 0xdd, 0xec, 0xa2, 0xb5, 0x8b, 0xeb, 0xd7, + 0xdc, 0x39, 0x73, 0x76, 0x7b, 0x45, 0xd4, 0x1b, 0x05, 0xfd, 0x8a, 0x58, 0x7c, 0xc4, 0x9f, 0x94, + 0xb1, 0x5e, 0xc2, 0x8b, 0x0a, 0x42, 0x2e, 0x92, 0x76, 0xab, 0x8b, 0xd6, 0x96, 0xfc, 0x2a, 0xb2, + 0x23, 0xfc, 0x42, 0xad, 0x1d, 0x2d, 0x45, 0xa2, 0xc1, 0xfa, 0x08, 0x5f, 0x0c, 0xaa, 0xd7, 0x10, + 0x0c, 0x32, 0xc9, 0xda, 0xa8, 0xdb, 0x5a, 0x5b, 0x5e, 0x77, 0xe7, 0xea, 0xd8, 0x9a, 0x50, 0xb6, + 0xfb, 0xbd, 0x52, 0xc0, 0x85, 0xa7, 0x55, 0xb6, 0x25, 0xb3, 0xff, 0x46, 0xf8, 0xd2, 0x33, 0x49, + 0xd6, 0x15, 0x7c, 0x3e, 0x93, 0x6c, 0x90, 0xd0, 0x18, 0x4a, 0x03, 0x97, 0xfc, 0xe7, 0x32, 0xc9, + 0x6e, 0xd2, 0x18, 0xac, 0x17, 0xf1, 0x62, 0x01, 0xf1, 0xa0, 0xf4, 0x61, 0xc9, 0x3f, 0x97, 0x49, + 0x76, 0x23, 0x38, 0xa9, 0x9b, 0xc9, 0x18, 0x16, 0xce, 0x7c, 0x0c, 0xe7, 0xce, 0x64, 0x0c, 0xf6, + 0x1f, 0x08, 0xaf, 0xf8, 0xb0, 0x29, 0x65, 0xb4, 0xbf, 0xdd, 0xef, 0x6d, 0x1a, 0x43, 0xd9, 0x6e, + 0x0c, 0x89, 0x19, 0xef, 0xd1, 0x27, 0xf8, 0x42, 0xad, 0xe6, 0x7f, 0x5b, 0xa8, 0x3a, 0xf7, 0xee, + 0x8f, 0x08, 0xf9, 0xcf, 0xb3, 0x29, 0x51, 0x27, 0xd9, 0x39, 0xdd, 0x68, 0xeb, 0x6c, 0x1a, 0x25, + 0x78, 0xf5, 0xf8, 0x3e, 0x47, 0x0b, 0xb6, 0xfe, 0xd7, 0x02, 0xb6, 0xca, 0x32, 0x5b, 0xd4, 0xd0, + 0x5e, 0xf9, 0x73, 0xdb, 0xec, 0xdf, 0xb0, 0xfe, 0x41, 0x78, 0x79, 0x6a, 0x1f, 0x2d, 0xef, 0x54, + 0xfb, 0xf6, 0xf4, 0x20, 0x76, 0xde, 0x38, 0x3d, 0x61, 0xa4, 0xc4, 0xfe, 0x12, 0x3d, 0xfc, 0xa1, + 0x89, 0xf2, 0x9f, 0xda, 0x1f, 0xec, 0x5c, 0xbb, 0xc3, 0x1c, 0x0d, 0x2c, 0x55, 0x10, 0x83, 0xde, + 0x75, 0x86, 0x54, 0x73, 0xe6, 0xc4, 0x22, 0xe1, 0x46, 0xa8, 0xd7, 0xbb, 0xb3, 0xb0, 0x36, 0x34, + 0x09, 0xa8, 0x0a, 0x26, 0x19, 0x19, 0x68, 0x87, 0x0b, 0x27, 0x01, 0xb3, 0x27, 0xd4, 0x6d, 0x47, + 0x01, 0x0d, 0xee, 0xfd, 0xf6, 0xfb, 0xd7, 0xcd, 0xd7, 0xec, 0x57, 0xaa, 0xdf, 0xb8, 0x57, 0xec, + 0xb8, 0x96, 0x94, 0x81, 0xf6, 0xf4, 0xbe, 0x36, 0x10, 0x7b, 0xe3, 0x03, 0x52, 0x1c, 0xb2, 0x0d, + 0x74, 0xd5, 0xfa, 0xae, 0x89, 0x2f, 0x1f, 0xe7, 0x9c, 0xf5, 0xf6, 0xdc, 0xce, 0xe6, 0x2c, 0x55, + 0xe7, 0x9d, 0xff, 0xc1, 0xac, 0xcc, 0xf9, 0xa6, 0x30, 0xe6, 0xe6, 0xf1, 0xc6, 0xa4, 0x1a, 0xe6, + 0xb9, 0x52, 0xc2, 0x33, 0x96, 0xec, 0x29, 0x6e, 0xa0, 0xf4, 0xa4, 0x67, 0xbf, 0x7b, 0xb2, 0x27, + 0x35, 0x81, 0x03, 0x05, 0xb4, 0x10, 0x58, 0x18, 0x34, 0xa0, 0x13, 0x89, 0x1b, 0xe8, 0x6a, 0xe7, + 0xcd, 0x07, 0xf7, 0x51, 0xeb, 0xd7, 0xfb, 0xc8, 0x9e, 0xd7, 0xdf, 0xe8, 0x94, 0xdc, 0xfb, 0xa5, + 0xdd, 0x7a, 0xdc, 0x44, 0xd7, 0xbf, 0x40, 0x07, 0x87, 0xa4, 0xf1, 0xe8, 0x90, 0x34, 0x9e, 0x1c, + 0x12, 0x74, 0x37, 0x27, 0xe8, 0xdb, 0x9c, 0xa0, 0x87, 0x39, 0x41, 0x07, 0x39, 0x41, 0x8f, 0x73, + 0x82, 0xfe, 0xcc, 0x49, 0xe3, 0x49, 0x4e, 0xd0, 0x57, 0x47, 0xa4, 0xf1, 0xe0, 0x88, 0xa0, 0x83, + 0x23, 0xd2, 0x78, 0x74, 0x44, 0x1a, 0x1f, 0xdf, 0x0a, 0x85, 0xbc, 0x1d, 0xba, 0x99, 0x88, 0x0c, + 0x28, 0x45, 0xdd, 0x54, 0x7b, 0xe5, 0xc3, 0x8e, 0x50, 0xb1, 0x33, 0x5e, 0x7c, 0x67, 0x0c, 0x7b, + 0x72, 0x18, 0x0a, 0x0f, 0xee, 0x98, 0xf1, 0x4d, 0x77, 0xcc, 0xb5, 0x39, 0x5c, 0x2c, 0x2f, 0x95, + 0xb7, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x08, 0x01, 0xd1, 0x5c, 0x02, 0x08, 0x00, 0x00, +} + +func (this *DiscoverVPCRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DiscoverVPCRequest) + if !ok { + that2, ok := that.(DiscoverVPCRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Cred.Equal(that1.Cred) { + return false + } + if this.Provider != that1.Provider { + return false + } + if this.Region != that1.Region { + return false + } + return true +} +func (this *DiscoverVPCResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DiscoverVPCResponse) + if !ok { + that2, ok := that.(DiscoverVPCResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.DiscoveredVpc) != len(that1.DiscoveredVpc) { + return false + } + for i := range this.DiscoveredVpc { + if !this.DiscoveredVpc[i].Equal(that1.DiscoveredVpc[i]) { + return false + } + } + return true +} +func (this *DiscoveredVPCType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DiscoveredVPCType) + if !ok { + that2, ok := that.(DiscoveredVPCType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.VpcName != that1.VpcName { + return false + } + if this.VpcId != that1.VpcId { + return false + } + if this.Region != that1.Region { + return false + } + if !this.Cred.Equal(that1.Cred) { + return false + } + if this.Provider != that1.Provider { + return false + } + return true +} +func (this *ReApplyVPCAttachmentRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReApplyVPCAttachmentRequest) + if !ok { + that2, ok := that.(ReApplyVPCAttachmentRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CloudConnect.Equal(that1.CloudConnect) { + return false + } + if this.VpcId != that1.VpcId { + return false + } + if this.Provider != that1.Provider { + return false + } + return true +} +func (this *ReApplyVPCAttachmentResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReApplyVPCAttachmentResponse) + if !ok { + that2, ok := that.(ReApplyVPCAttachmentResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *DiscoverVPCRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.DiscoverVPCRequest{") + if this.Cred != nil { + s = append(s, "Cred: "+fmt.Sprintf("%#v", this.Cred)+",\n") + } + s = append(s, "Provider: "+fmt.Sprintf("%#v", this.Provider)+",\n") + s = append(s, "Region: "+fmt.Sprintf("%#v", this.Region)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DiscoverVPCResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.DiscoverVPCResponse{") + if this.DiscoveredVpc != nil { + s = append(s, "DiscoveredVpc: "+fmt.Sprintf("%#v", this.DiscoveredVpc)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DiscoveredVPCType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&cloud_connect.DiscoveredVPCType{") + s = append(s, "VpcName: "+fmt.Sprintf("%#v", this.VpcName)+",\n") + s = append(s, "VpcId: "+fmt.Sprintf("%#v", this.VpcId)+",\n") + s = append(s, "Region: "+fmt.Sprintf("%#v", this.Region)+",\n") + if this.Cred != nil { + s = append(s, "Cred: "+fmt.Sprintf("%#v", this.Cred)+",\n") + } + s = append(s, "Provider: "+fmt.Sprintf("%#v", this.Provider)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReApplyVPCAttachmentRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.ReApplyVPCAttachmentRequest{") + if this.CloudConnect != nil { + s = append(s, "CloudConnect: "+fmt.Sprintf("%#v", this.CloudConnect)+",\n") + } + s = append(s, "VpcId: "+fmt.Sprintf("%#v", this.VpcId)+",\n") + s = append(s, "Provider: "+fmt.Sprintf("%#v", this.Provider)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReApplyVPCAttachmentResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&cloud_connect.ReApplyVPCAttachmentResponse{") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapiLucario(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CloudDataCustomAPIClient is the client API for CloudDataCustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CloudDataCustomAPIClient interface { + // Cloud Connect VPC Discovery + // + // x-displayName: "Cloud Connect VPC Discovery" + // Returns all the vpcs for a specified cloud provider, region and cred. + // For AWS it returns all the vpcs which are not attached to any transit gateway in that region. + DiscoverVPC(ctx context.Context, in *DiscoverVPCRequest, opts ...grpc.CallOption) (*DiscoverVPCResponse, error) + // Re-apply VPC attachment + // + // x-displayName: "ReApplyVPCAttachment" + // Re-applies VPC attachment in a cloud connect config. + ReApplyVPCAttachment(ctx context.Context, in *ReApplyVPCAttachmentRequest, opts ...grpc.CallOption) (*ReApplyVPCAttachmentResponse, error) +} + +type cloudDataCustomAPIClient struct { + cc *grpc.ClientConn +} + +func NewCloudDataCustomAPIClient(cc *grpc.ClientConn) CloudDataCustomAPIClient { + return &cloudDataCustomAPIClient{cc} +} + +func (c *cloudDataCustomAPIClient) DiscoverVPC(ctx context.Context, in *DiscoverVPCRequest, opts ...grpc.CallOption) (*DiscoverVPCResponse, error) { + out := new(DiscoverVPCResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.CloudDataCustomAPI/DiscoverVPC", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *cloudDataCustomAPIClient) ReApplyVPCAttachment(ctx context.Context, in *ReApplyVPCAttachmentRequest, opts ...grpc.CallOption) (*ReApplyVPCAttachmentResponse, error) { + out := new(ReApplyVPCAttachmentResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.cloud_connect.CloudDataCustomAPI/ReApplyVPCAttachment", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CloudDataCustomAPIServer is the server API for CloudDataCustomAPI service. +type CloudDataCustomAPIServer interface { + // Cloud Connect VPC Discovery + // + // x-displayName: "Cloud Connect VPC Discovery" + // Returns all the vpcs for a specified cloud provider, region and cred. + // For AWS it returns all the vpcs which are not attached to any transit gateway in that region. + DiscoverVPC(context.Context, *DiscoverVPCRequest) (*DiscoverVPCResponse, error) + // Re-apply VPC attachment + // + // x-displayName: "ReApplyVPCAttachment" + // Re-applies VPC attachment in a cloud connect config. + ReApplyVPCAttachment(context.Context, *ReApplyVPCAttachmentRequest) (*ReApplyVPCAttachmentResponse, error) +} + +// UnimplementedCloudDataCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCloudDataCustomAPIServer struct { +} + +func (*UnimplementedCloudDataCustomAPIServer) DiscoverVPC(ctx context.Context, req *DiscoverVPCRequest) (*DiscoverVPCResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DiscoverVPC not implemented") +} +func (*UnimplementedCloudDataCustomAPIServer) ReApplyVPCAttachment(ctx context.Context, req *ReApplyVPCAttachmentRequest) (*ReApplyVPCAttachmentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReApplyVPCAttachment not implemented") +} + +func RegisterCloudDataCustomAPIServer(s *grpc.Server, srv CloudDataCustomAPIServer) { + s.RegisterService(&_CloudDataCustomAPI_serviceDesc, srv) +} + +func _CloudDataCustomAPI_DiscoverVPC_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DiscoverVPCRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CloudDataCustomAPIServer).DiscoverVPC(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.CloudDataCustomAPI/DiscoverVPC", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CloudDataCustomAPIServer).DiscoverVPC(ctx, req.(*DiscoverVPCRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CloudDataCustomAPI_ReApplyVPCAttachment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReApplyVPCAttachmentRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CloudDataCustomAPIServer).ReApplyVPCAttachment(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.cloud_connect.CloudDataCustomAPI/ReApplyVPCAttachment", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CloudDataCustomAPIServer).ReApplyVPCAttachment(ctx, req.(*ReApplyVPCAttachmentRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CloudDataCustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.cloud_connect.CloudDataCustomAPI", + HandlerType: (*CloudDataCustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "DiscoverVPC", + Handler: _CloudDataCustomAPI_DiscoverVPC_Handler, + }, + { + MethodName: "ReApplyVPCAttachment", + Handler: _CloudDataCustomAPI_ReApplyVPCAttachment_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/cloud_connect/public_customapi_lucario.proto", +} + +func (m *DiscoverVPCRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DiscoverVPCRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DiscoverVPCRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Region) > 0 { + i -= len(m.Region) + copy(dAtA[i:], m.Region) + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(len(m.Region))) + i-- + dAtA[i] = 0x1a + } + if m.Provider != 0 { + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(m.Provider)) + i-- + dAtA[i] = 0x10 + } + if m.Cred != nil { + { + size, err := m.Cred.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DiscoverVPCResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DiscoverVPCResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DiscoverVPCResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.DiscoveredVpc) > 0 { + for iNdEx := len(m.DiscoveredVpc) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DiscoveredVpc[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *DiscoveredVPCType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DiscoveredVPCType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DiscoveredVPCType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Provider != 0 { + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(m.Provider)) + i-- + dAtA[i] = 0x28 + } + if m.Cred != nil { + { + size, err := m.Cred.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if len(m.Region) > 0 { + i -= len(m.Region) + copy(dAtA[i:], m.Region) + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(len(m.Region))) + i-- + dAtA[i] = 0x1a + } + if len(m.VpcId) > 0 { + i -= len(m.VpcId) + copy(dAtA[i:], m.VpcId) + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(len(m.VpcId))) + i-- + dAtA[i] = 0x12 + } + if len(m.VpcName) > 0 { + i -= len(m.VpcName) + copy(dAtA[i:], m.VpcName) + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(len(m.VpcName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReApplyVPCAttachmentRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReApplyVPCAttachmentRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReApplyVPCAttachmentRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Provider != 0 { + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(m.Provider)) + i-- + dAtA[i] = 0x18 + } + if len(m.VpcId) > 0 { + i -= len(m.VpcId) + copy(dAtA[i:], m.VpcId) + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(len(m.VpcId))) + i-- + dAtA[i] = 0x12 + } + if m.CloudConnect != nil { + { + size, err := m.CloudConnect.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapiLucario(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReApplyVPCAttachmentResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReApplyVPCAttachmentResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReApplyVPCAttachmentResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapiLucario(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapiLucario(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *DiscoverVPCRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Cred != nil { + l = m.Cred.Size() + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + if m.Provider != 0 { + n += 1 + sovPublicCustomapiLucario(uint64(m.Provider)) + } + l = len(m.Region) + if l > 0 { + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + return n +} + +func (m *DiscoverVPCResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.DiscoveredVpc) > 0 { + for _, e := range m.DiscoveredVpc { + l = e.Size() + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + } + return n +} + +func (m *DiscoveredVPCType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.VpcName) + if l > 0 { + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + l = len(m.VpcId) + if l > 0 { + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + l = len(m.Region) + if l > 0 { + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + if m.Cred != nil { + l = m.Cred.Size() + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + if m.Provider != 0 { + n += 1 + sovPublicCustomapiLucario(uint64(m.Provider)) + } + return n +} + +func (m *ReApplyVPCAttachmentRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CloudConnect != nil { + l = m.CloudConnect.Size() + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + l = len(m.VpcId) + if l > 0 { + n += 1 + l + sovPublicCustomapiLucario(uint64(l)) + } + if m.Provider != 0 { + n += 1 + sovPublicCustomapiLucario(uint64(m.Provider)) + } + return n +} + +func (m *ReApplyVPCAttachmentResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func sovPublicCustomapiLucario(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapiLucario(x uint64) (n int) { + return sovPublicCustomapiLucario(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *DiscoverVPCRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DiscoverVPCRequest{`, + `Cred:` + strings.Replace(fmt.Sprintf("%v", this.Cred), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `Provider:` + fmt.Sprintf("%v", this.Provider) + `,`, + `Region:` + fmt.Sprintf("%v", this.Region) + `,`, + `}`, + }, "") + return s +} +func (this *DiscoverVPCResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForDiscoveredVpc := "[]*DiscoveredVPCType{" + for _, f := range this.DiscoveredVpc { + repeatedStringForDiscoveredVpc += strings.Replace(f.String(), "DiscoveredVPCType", "DiscoveredVPCType", 1) + "," + } + repeatedStringForDiscoveredVpc += "}" + s := strings.Join([]string{`&DiscoverVPCResponse{`, + `DiscoveredVpc:` + repeatedStringForDiscoveredVpc + `,`, + `}`, + }, "") + return s +} +func (this *DiscoveredVPCType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DiscoveredVPCType{`, + `VpcName:` + fmt.Sprintf("%v", this.VpcName) + `,`, + `VpcId:` + fmt.Sprintf("%v", this.VpcId) + `,`, + `Region:` + fmt.Sprintf("%v", this.Region) + `,`, + `Cred:` + strings.Replace(fmt.Sprintf("%v", this.Cred), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `Provider:` + fmt.Sprintf("%v", this.Provider) + `,`, + `}`, + }, "") + return s +} +func (this *ReApplyVPCAttachmentRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReApplyVPCAttachmentRequest{`, + `CloudConnect:` + strings.Replace(fmt.Sprintf("%v", this.CloudConnect), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `VpcId:` + fmt.Sprintf("%v", this.VpcId) + `,`, + `Provider:` + fmt.Sprintf("%v", this.Provider) + `,`, + `}`, + }, "") + return s +} +func (this *ReApplyVPCAttachmentResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReApplyVPCAttachmentResponse{`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapiLucario(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *DiscoverVPCRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DiscoverVPCRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DiscoverVPCRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cred", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Cred == nil { + m.Cred = &views.ObjectRefType{} + } + if err := m.Cred.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Provider", wireType) + } + m.Provider = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Provider |= CloudConnectProviderType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Region = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiLucario(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DiscoverVPCResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DiscoverVPCResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DiscoverVPCResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DiscoveredVpc", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DiscoveredVpc = append(m.DiscoveredVpc, &DiscoveredVPCType{}) + if err := m.DiscoveredVpc[len(m.DiscoveredVpc)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiLucario(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DiscoveredVPCType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DiscoveredVPCType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DiscoveredVPCType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VpcName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VpcId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Region = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cred", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Cred == nil { + m.Cred = &views.ObjectRefType{} + } + if err := m.Cred.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Provider", wireType) + } + m.Provider = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Provider |= CloudConnectProviderType(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiLucario(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReApplyVPCAttachmentRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReApplyVPCAttachmentRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReApplyVPCAttachmentRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CloudConnect", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CloudConnect == nil { + m.CloudConnect = &views.ObjectRefType{} + } + if err := m.CloudConnect.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VpcId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Provider", wireType) + } + m.Provider = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Provider |= CloudConnectProviderType(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiLucario(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReApplyVPCAttachmentResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReApplyVPCAttachmentResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReApplyVPCAttachmentResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiLucario(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiLucario + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapiLucario(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapiLucario + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapiLucario + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapiLucario + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapiLucario + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapiLucario = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapiLucario = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapiLucario = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.pb.gw.go b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.pb.gw.go new file mode 100644 index 000000000..da811dc01 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.pb.gw.go @@ -0,0 +1,238 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/cloud_connect/public_customapi_lucario.proto + +/* +Package cloud_connect is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package cloud_connect + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_CloudDataCustomAPI_DiscoverVPC_0(ctx context.Context, marshaler runtime.Marshaler, client CloudDataCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DiscoverVPCRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.DiscoverVPC(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CloudDataCustomAPI_DiscoverVPC_0(ctx context.Context, marshaler runtime.Marshaler, server CloudDataCustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DiscoverVPCRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.DiscoverVPC(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CloudDataCustomAPI_ReApplyVPCAttachment_0(ctx context.Context, marshaler runtime.Marshaler, client CloudDataCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReApplyVPCAttachmentRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.ReApplyVPCAttachment(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CloudDataCustomAPI_ReApplyVPCAttachment_0(ctx context.Context, marshaler runtime.Marshaler, server CloudDataCustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReApplyVPCAttachmentRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.ReApplyVPCAttachment(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCloudDataCustomAPIHandlerServer registers the http handlers for service CloudDataCustomAPI to "mux". +// UnaryRPC :call CloudDataCustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterCloudDataCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CloudDataCustomAPIServer) error { + + mux.Handle("POST", pattern_CloudDataCustomAPI_DiscoverVPC_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CloudDataCustomAPI_DiscoverVPC_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CloudDataCustomAPI_DiscoverVPC_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CloudDataCustomAPI_ReApplyVPCAttachment_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CloudDataCustomAPI_ReApplyVPCAttachment_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CloudDataCustomAPI_ReApplyVPCAttachment_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCloudDataCustomAPIHandlerFromEndpoint is same as RegisterCloudDataCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCloudDataCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCloudDataCustomAPIHandler(ctx, mux, conn) +} + +// RegisterCloudDataCustomAPIHandler registers the http handlers for service CloudDataCustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCloudDataCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCloudDataCustomAPIHandlerClient(ctx, mux, NewCloudDataCustomAPIClient(conn)) +} + +// RegisterCloudDataCustomAPIHandlerClient registers the http handlers for service CloudDataCustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CloudDataCustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CloudDataCustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CloudDataCustomAPIClient" to call the correct interceptors. +func RegisterCloudDataCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CloudDataCustomAPIClient) error { + + mux.Handle("POST", pattern_CloudDataCustomAPI_DiscoverVPC_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CloudDataCustomAPI_DiscoverVPC_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CloudDataCustomAPI_DiscoverVPC_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CloudDataCustomAPI_ReApplyVPCAttachment_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CloudDataCustomAPI_ReApplyVPCAttachment_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CloudDataCustomAPI_ReApplyVPCAttachment_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CloudDataCustomAPI_DiscoverVPC_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"public", "namespaces", "system", "discover_vpc"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CloudDataCustomAPI_ReApplyVPCAttachment_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"public", "namespaces", "system", "cloud_connect_reapply_vpc_attachment"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_CloudDataCustomAPI_DiscoverVPC_0 = runtime.ForwardResponseMessage + + forward_CloudDataCustomAPI_ReApplyVPCAttachment_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.vesapi.go b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.vesapi.go new file mode 100644 index 000000000..2d598aab9 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.vesapi.go @@ -0,0 +1,820 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package cloud_connect + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create CloudDataCustomAPI GRPC Client satisfying server.CustomClient +type CloudDataCustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient CloudDataCustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *CloudDataCustomAPIGrpcClient) doRPCDiscoverVPC(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &DiscoverVPCRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.DiscoverVPCRequest", yamlReq) + } + rsp, err := c.grpcClient.DiscoverVPC(ctx, req, opts...) + return rsp, err +} + +func (c *CloudDataCustomAPIGrpcClient) doRPCReApplyVPCAttachment(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &ReApplyVPCAttachmentRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest", yamlReq) + } + rsp, err := c.grpcClient.ReApplyVPCAttachment(ctx, req, opts...) + return rsp, err +} + +func (c *CloudDataCustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewCloudDataCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &CloudDataCustomAPIGrpcClient{ + conn: cc, + grpcClient: NewCloudDataCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["DiscoverVPC"] = ccl.doRPCDiscoverVPC + + rpcFns["ReApplyVPCAttachment"] = ccl.doRPCReApplyVPCAttachment + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create CloudDataCustomAPI REST Client satisfying server.CustomClient +type CloudDataCustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *CloudDataCustomAPIRestClient) doRPCDiscoverVPC(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &DiscoverVPCRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.DiscoverVPCRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("cred", fmt.Sprintf("%v", req.Cred)) + q.Add("provider", fmt.Sprintf("%v", req.Provider)) + q.Add("region", fmt.Sprintf("%v", req.Region)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &DiscoverVPCResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.DiscoverVPCResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CloudDataCustomAPIRestClient) doRPCReApplyVPCAttachment(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &ReApplyVPCAttachmentRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("cloud_connect", fmt.Sprintf("%v", req.CloudConnect)) + q.Add("provider", fmt.Sprintf("%v", req.Provider)) + q.Add("vpc_id", fmt.Sprintf("%v", req.VpcId)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &ReApplyVPCAttachmentResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.cloud_connect.ReApplyVPCAttachmentResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CloudDataCustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCloudDataCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CloudDataCustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["DiscoverVPC"] = ccl.doRPCDiscoverVPC + + rpcFns["ReApplyVPCAttachment"] = ccl.doRPCReApplyVPCAttachment + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create cloudDataCustomAPIInprocClient + +// INPROC Client (satisfying CloudDataCustomAPIClient interface) +type cloudDataCustomAPIInprocClient struct { + CloudDataCustomAPIServer +} + +func (c *cloudDataCustomAPIInprocClient) DiscoverVPC(ctx context.Context, in *DiscoverVPCRequest, opts ...grpc.CallOption) (*DiscoverVPCResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.CloudDataCustomAPI.DiscoverVPC") + return c.CloudDataCustomAPIServer.DiscoverVPC(ctx, in) +} +func (c *cloudDataCustomAPIInprocClient) ReApplyVPCAttachment(ctx context.Context, in *ReApplyVPCAttachmentRequest, opts ...grpc.CallOption) (*ReApplyVPCAttachmentResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.cloud_connect.CloudDataCustomAPI.ReApplyVPCAttachment") + return c.CloudDataCustomAPIServer.ReApplyVPCAttachment(ctx, in) +} + +func NewCloudDataCustomAPIInprocClient(svc svcfw.Service) CloudDataCustomAPIClient { + return &cloudDataCustomAPIInprocClient{CloudDataCustomAPIServer: NewCloudDataCustomAPIServer(svc)} +} + +// RegisterGwCloudDataCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwCloudDataCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterCloudDataCustomAPIHandlerClient(ctx, mux, NewCloudDataCustomAPIInprocClient(s)) +} + +// Create cloudDataCustomAPISrv + +// SERVER (satisfying CloudDataCustomAPIServer interface) +type cloudDataCustomAPISrv struct { + svc svcfw.Service +} + +func (s *cloudDataCustomAPISrv) DiscoverVPC(ctx context.Context, in *DiscoverVPCRequest) (*DiscoverVPCResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.CloudDataCustomAPI") + cah, ok := ah.(CloudDataCustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CloudDataCustomAPIServer", ah) + } + + var ( + rsp *DiscoverVPCResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.DiscoverVPCRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CloudDataCustomAPI.DiscoverVPC' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + if err := s.svc.CustomAPIProcessDRef(ctx, in); err != nil { + return nil, err + } + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.CloudDataCustomAPI.DiscoverVPC"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.DiscoverVPC(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.DiscoverVPCResponse", rsp)...) + + return rsp, nil +} +func (s *cloudDataCustomAPISrv) ReApplyVPCAttachment(ctx context.Context, in *ReApplyVPCAttachmentRequest) (*ReApplyVPCAttachmentResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.cloud_connect.CloudDataCustomAPI") + cah, ok := ah.(CloudDataCustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CloudDataCustomAPIServer", ah) + } + + var ( + rsp *ReApplyVPCAttachmentResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CloudDataCustomAPI.ReApplyVPCAttachment' operation on 'cloud_connect'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + if err := s.svc.CustomAPIProcessDRef(ctx, in); err != nil { + return nil, err + } + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.cloud_connect.CloudDataCustomAPI.ReApplyVPCAttachment"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.ReApplyVPCAttachment(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.cloud_connect.ReApplyVPCAttachmentResponse", rsp)...) + + return rsp, nil +} + +func NewCloudDataCustomAPIServer(svc svcfw.Service) CloudDataCustomAPIServer { + return &cloudDataCustomAPISrv{svc: svc} +} + +var CloudDataCustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Cloud Connect", + "description": "Cloud Connect related public APIs served by lucario.\nIt is always scoped by system namespace.", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/system/cloud_connect_reapply_vpc_attachment": { + "post": { + "summary": "ReApplyVPCAttachment", + "description": "Re-applies VPC attachment in a cloud connect config.", + "operationId": "ves.io.schema.cloud_connect.CloudDataCustomAPI.ReApplyVPCAttachment", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectReApplyVPCAttachmentResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/cloud_connectReApplyVPCAttachmentRequest" + } + } + ], + "tags": [ + "CloudDataCustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-clouddatacustomapi-reapplyvpcattachment" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.CloudDataCustomAPI.ReApplyVPCAttachment" + }, + "x-displayname": "Cloud Connect Lucario CustomAPI", + "x-ves-proto-service": "ves.io.schema.cloud_connect.CloudDataCustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/system/discover_vpc": { + "post": { + "summary": "Cloud Connect VPC Discovery", + "description": "Returns all the vpcs for a specified cloud provider, region and cred.\nFor AWS it returns all the vpcs which are not attached to any transit gateway in that region.", + "operationId": "ves.io.schema.cloud_connect.CloudDataCustomAPI.DiscoverVPC", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/cloud_connectDiscoverVPCResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/cloud_connectDiscoverVPCRequest" + } + } + ], + "tags": [ + "CloudDataCustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-cloud_connect-clouddatacustomapi-discovervpc" + }, + "x-ves-proto-rpc": "ves.io.schema.cloud_connect.CloudDataCustomAPI.DiscoverVPC" + }, + "x-displayname": "Cloud Connect Lucario CustomAPI", + "x-ves-proto-service": "ves.io.schema.cloud_connect.CloudDataCustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "cloud_connectCloudConnectProviderType": { + "type": "string", + "description": "Cloud Connect Provider Type\n\n - AWS: AWS\n\nCloud connects backed by AWS cloud\n - AZURE: AZURE\n\nCloud connects backed by Azure cloud\n - GCP: GCP\n\nCloud connects backed by GCP cloud", + "title": "Cloud Connect Provider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "default": "AWS", + "x-displayname": "Cloud Connect Provider", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.CloudConnectProviderType" + }, + "cloud_connectDiscoverVPCRequest": { + "type": "object", + "description": "Request body to discover vpcs for a given cloud provider, region and cred.", + "title": "DiscoverVPCRequest", + "x-displayname": "Cloud Connect VPC Discovery Request", + "x-ves-proto-message": "ves.io.schema.cloud_connect.DiscoverVPCRequest", + "properties": { + "cred": { + "description": " Cloud credential.", + "title": "Cloud Credential", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Cloud Credential" + }, + "provider": { + "description": " Cloud connect backend provider.", + "title": "Cloud Provider", + "$ref": "#/definitions/cloud_connectCloudConnectProviderType", + "x-displayname": "Cloud Connect Provider" + }, + "region": { + "type": "string", + "description": " Region.", + "title": "Region", + "x-displayname": "Region" + } + } + }, + "cloud_connectDiscoverVPCResponse": { + "type": "object", + "description": "VPC discovery response body for a cloud provider.", + "title": "DiscoverVPCResponse", + "x-displayname": "Cloud Connect VPC Discovery Response", + "x-ves-proto-message": "ves.io.schema.cloud_connect.DiscoverVPCResponse", + "properties": { + "discovered_vpc": { + "type": "array", + "description": " Discovered vpc", + "title": "Discovered VPC\nx-displayName: \"Discovered VPC\"\nDiscovered vpc", + "items": { + "$ref": "#/definitions/cloud_connectDiscoveredVPCType" + }, + "x-displayname": "Discovered VPC" + } + } + }, + "cloud_connectDiscoveredVPCType": { + "type": "object", + "description": "Discover VPC Type", + "title": "DiscoverVPC Type", + "x-displayname": "Discover VPC", + "x-ves-proto-message": "ves.io.schema.cloud_connect.DiscoveredVPCType", + "properties": { + "cred": { + "description": " Cloud credential", + "title": "Credential", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Cloud Credential" + }, + "provider": { + "description": " Cloud connect backend provider", + "title": "Cloud Provider", + "$ref": "#/definitions/cloud_connectCloudConnectProviderType", + "x-displayname": "Cloud Connect Provider" + }, + "region": { + "type": "string", + "description": " Region", + "title": "Region", + "x-displayname": "Region" + }, + "vpc_id": { + "type": "string", + "description": " VPC ID", + "title": "VPC ID", + "x-displayname": "VPC ID" + }, + "vpc_name": { + "type": "string", + "description": " VPC Name", + "title": "VPC Name", + "x-displayname": "VPC Name" + } + } + }, + "cloud_connectReApplyVPCAttachmentRequest": { + "type": "object", + "description": "Request of vpc attachment reapply event.", + "title": "ReApplyVPCAttachmentRequest", + "x-displayname": "ReApplyVPCAttachmentRequest", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest", + "properties": { + "cloud_connect": { + "description": " Reference to a cloud connect object", + "title": "Cloud Connect reference", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Cloud Connect Reference" + }, + "provider": { + "description": " Cloud connect backend provider", + "title": "Cloud Provider", + "$ref": "#/definitions/cloud_connectCloudConnectProviderType", + "x-displayname": "Cloud Connect Provider" + }, + "vpc_id": { + "type": "string", + "description": " VPC ID", + "title": "VPC ID", + "x-displayname": "VPC ID" + } + } + }, + "cloud_connectReApplyVPCAttachmentResponse": { + "type": "object", + "description": "Reponse of vpc attachment reapply event.", + "title": "ReApplyVPCAttachmentResponse", + "x-displayname": "ReApplyVPCAttachmentResponse", + "x-ves-proto-message": "ves.io.schema.cloud_connect.ReApplyVPCAttachmentResponse" + }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + } + }, + "x-displayname": "Cloud Connect", + "x-ves-proto-file": "ves.io/schema/cloud_connect/public_customapi_lucario.proto" +}` diff --git a/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.vesmsg.go b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.vesmsg.go new file mode 100644 index 000000000..62bc3c425 --- /dev/null +++ b/pbgo/extschema/schema/cloud_connect/public_customapi_lucario.vesmsg.go @@ -0,0 +1,695 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package cloud_connect + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *DiscoverVPCRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DiscoverVPCRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DiscoverVPCRequest) DeepCopy() *DiscoverVPCRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DiscoverVPCRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DiscoverVPCRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DiscoverVPCRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DiscoverVPCRequestValidator().Validate(ctx, m, opts...) +} + +func (m *DiscoverVPCRequest) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCredDRefInfo() + +} + +func (m *DiscoverVPCRequest) GetCredDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetCred() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("cloud_credentials.Object") + dri := db.DRefInfo{ + RefdType: "cloud_credentials.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "cred", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetCredDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *DiscoverVPCRequest) GetCredDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_credentials.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_credentials") + } + + vref := m.GetCred() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "cloud_credentials.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateDiscoverVPCRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDiscoverVPCRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DiscoverVPCRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DiscoverVPCRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cred"]; exists { + + vOpts := append(opts, db.WithValidateField("cred")) + if err := fv(ctx, m.GetCred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["provider"]; exists { + + vOpts := append(opts, db.WithValidateField("provider")) + if err := fv(ctx, m.GetProvider(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["region"]; exists { + + vOpts := append(opts, db.WithValidateField("region")) + if err := fv(ctx, m.GetRegion(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDiscoverVPCRequestValidator = func() *ValidateDiscoverVPCRequest { + v := &ValidateDiscoverVPCRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["cred"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func DiscoverVPCRequestValidator() db.Validator { + return DefaultDiscoverVPCRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DiscoverVPCResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DiscoverVPCResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DiscoverVPCResponse) DeepCopy() *DiscoverVPCResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DiscoverVPCResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DiscoverVPCResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DiscoverVPCResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DiscoverVPCResponseValidator().Validate(ctx, m, opts...) +} + +func (m *DiscoverVPCResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetDiscoveredVpcDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *DiscoverVPCResponse) GetDiscoveredVpcDRefInfo() ([]db.DRefInfo, error) { + if m.GetDiscoveredVpc() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetDiscoveredVpc() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDiscoveredVpc() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("discovered_vpc[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateDiscoverVPCResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDiscoverVPCResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DiscoverVPCResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DiscoverVPCResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["discovered_vpc"]; exists { + + vOpts := append(opts, db.WithValidateField("discovered_vpc")) + for idx, item := range m.GetDiscoveredVpc() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDiscoverVPCResponseValidator = func() *ValidateDiscoverVPCResponse { + v := &ValidateDiscoverVPCResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["discovered_vpc"] = DiscoveredVPCTypeValidator().Validate + + return v +}() + +func DiscoverVPCResponseValidator() db.Validator { + return DefaultDiscoverVPCResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DiscoveredVPCType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DiscoveredVPCType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DiscoveredVPCType) DeepCopy() *DiscoveredVPCType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DiscoveredVPCType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DiscoveredVPCType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DiscoveredVPCType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DiscoveredVPCTypeValidator().Validate(ctx, m, opts...) +} + +func (m *DiscoveredVPCType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCredDRefInfo() + +} + +func (m *DiscoveredVPCType) GetCredDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetCred() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("cloud_credentials.Object") + dri := db.DRefInfo{ + RefdType: "cloud_credentials.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "cred", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetCredDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *DiscoveredVPCType) GetCredDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_credentials.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_credentials") + } + + vref := m.GetCred() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "cloud_credentials.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateDiscoveredVPCType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDiscoveredVPCType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DiscoveredVPCType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DiscoveredVPCType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cred"]; exists { + + vOpts := append(opts, db.WithValidateField("cred")) + if err := fv(ctx, m.GetCred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["provider"]; exists { + + vOpts := append(opts, db.WithValidateField("provider")) + if err := fv(ctx, m.GetProvider(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["region"]; exists { + + vOpts := append(opts, db.WithValidateField("region")) + if err := fv(ctx, m.GetRegion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vpc_id"]; exists { + + vOpts := append(opts, db.WithValidateField("vpc_id")) + if err := fv(ctx, m.GetVpcId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vpc_name"]; exists { + + vOpts := append(opts, db.WithValidateField("vpc_name")) + if err := fv(ctx, m.GetVpcName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDiscoveredVPCTypeValidator = func() *ValidateDiscoveredVPCType { + v := &ValidateDiscoveredVPCType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["cred"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func DiscoveredVPCTypeValidator() db.Validator { + return DefaultDiscoveredVPCTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReApplyVPCAttachmentRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReApplyVPCAttachmentRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReApplyVPCAttachmentRequest) DeepCopy() *ReApplyVPCAttachmentRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReApplyVPCAttachmentRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReApplyVPCAttachmentRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReApplyVPCAttachmentRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReApplyVPCAttachmentRequestValidator().Validate(ctx, m, opts...) +} + +func (m *ReApplyVPCAttachmentRequest) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCloudConnectDRefInfo() + +} + +func (m *ReApplyVPCAttachmentRequest) GetCloudConnectDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetCloudConnect() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("cloud_connect.Object") + dri := db.DRefInfo{ + RefdType: "cloud_connect.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "cloud_connect", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetCloudConnectDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ReApplyVPCAttachmentRequest) GetCloudConnectDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_connect.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_connect") + } + + vref := m.GetCloudConnect() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "cloud_connect.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateReApplyVPCAttachmentRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReApplyVPCAttachmentRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReApplyVPCAttachmentRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReApplyVPCAttachmentRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cloud_connect"]; exists { + + vOpts := append(opts, db.WithValidateField("cloud_connect")) + if err := fv(ctx, m.GetCloudConnect(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["provider"]; exists { + + vOpts := append(opts, db.WithValidateField("provider")) + if err := fv(ctx, m.GetProvider(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vpc_id"]; exists { + + vOpts := append(opts, db.WithValidateField("vpc_id")) + if err := fv(ctx, m.GetVpcId(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReApplyVPCAttachmentRequestValidator = func() *ValidateReApplyVPCAttachmentRequest { + v := &ValidateReApplyVPCAttachmentRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["cloud_connect"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func ReApplyVPCAttachmentRequestValidator() db.Validator { + return DefaultReApplyVPCAttachmentRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReApplyVPCAttachmentResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReApplyVPCAttachmentResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReApplyVPCAttachmentResponse) DeepCopy() *ReApplyVPCAttachmentResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReApplyVPCAttachmentResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReApplyVPCAttachmentResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReApplyVPCAttachmentResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReApplyVPCAttachmentResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateReApplyVPCAttachmentResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReApplyVPCAttachmentResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReApplyVPCAttachmentResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReApplyVPCAttachmentResponse got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReApplyVPCAttachmentResponseValidator = func() *ValidateReApplyVPCAttachmentResponse { + v := &ValidateReApplyVPCAttachmentResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ReApplyVPCAttachmentResponseValidator() db.Validator { + return DefaultReApplyVPCAttachmentResponseValidator +} diff --git a/pbgo/extschema/schema/cloud_connect/types.pb.go b/pbgo/extschema/schema/cloud_connect/types.pb.go index af63e8b5c..9b4a2daf5 100644 --- a/pbgo/extschema/schema/cloud_connect/types.pb.go +++ b/pbgo/extschema/schema/cloud_connect/types.pb.go @@ -12,6 +12,7 @@ import ( golang_proto "github.com/golang/protobuf/proto" schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" cloud_re_region "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/cloud_re_region" + site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" io "io" math "math" @@ -73,6 +74,204 @@ func (CloudConnectState) EnumDescriptor() ([]byte, []int) { return fileDescriptor_245b6fb3a531fd11, []int{0} } +// Cloud Connect VPC State +// +// x-displayName: "Cloud Connect VPC State" +// Cloud Connect VPC State Type +type CloudConnectVPCStateType int32 + +const ( + // Available + // + // x-displayName: "Available" + // Cloud Connect vpc attachment is in available state. + AVAILABLE CloudConnectVPCStateType = 0 + // Pending + // + // x-displayName: "Pending" + // Cloud Connect vpc attachment is in flight. + PENDING CloudConnectVPCStateType = 1 + // Failed + // + // x-displayName: "Failed" + // Cloud Connect vpc attachment has failed. + FAILED CloudConnectVPCStateType = 2 + // Deleted + // + // x-displayName: "Deleted" + // Cloud Connect vpc attachment has been deleted. + DELETED CloudConnectVPCStateType = 3 + // Deleting + // + // x-displayName: "Deleting" + // Cloud Connect vpc attachment is being deleted. + DELETING CloudConnectVPCStateType = 4 +) + +var CloudConnectVPCStateType_name = map[int32]string{ + 0: "AVAILABLE", + 1: "PENDING", + 2: "FAILED", + 3: "DELETED", + 4: "DELETING", +} + +var CloudConnectVPCStateType_value = map[string]int32{ + "AVAILABLE": 0, + "PENDING": 1, + "FAILED": 2, + "DELETED": 3, + "DELETING": 4, +} + +func (CloudConnectVPCStateType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{1} +} + +// Cloud Connect Provider +// +// x-displayName: "Cloud Connect Provider" +// Cloud Connect Provider Type +type CloudConnectProviderType int32 + +const ( + // AWS + // + // x-displayName: "AWS" + // Cloud connects backed by AWS cloud + AWS CloudConnectProviderType = 0 + // AZURE + // + // x-displayName: "AZURE" + // Cloud connects backed by Azure cloud + AZURE CloudConnectProviderType = 1 + // GCP + // + // x-displayName: "GCP" + // Cloud connects backed by GCP cloud + GCP CloudConnectProviderType = 2 +) + +var CloudConnectProviderType_name = map[int32]string{ + 0: "AWS", + 1: "AZURE", + 2: "GCP", +} + +var CloudConnectProviderType_value = map[string]int32{ + "AWS": 0, + "AZURE": 1, + "GCP": 2, +} + +func (CloudConnectProviderType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{2} +} + +// Label +// +// x-displayName: "Label" +// Metrics used to construct the cloud connect dara are tagged with these labels and therefore +// the metrics can be sliced and diced based on one or more labels. +type Label int32 + +const ( + // x-displayName: "None" + // Indicates the field not being set + LABEL_NONE Label = 0 + // x-displayName: "Site" + // Identifies a customer edge + LABEL_CUSTOMER_EDGE Label = 1 +) + +var Label_name = map[int32]string{ + 0: "LABEL_NONE", + 1: "LABEL_CUSTOMER_EDGE", +} + +var Label_value = map[string]int32{ + "LABEL_NONE": 0, + "LABEL_CUSTOMER_EDGE": 1, +} + +func (Label) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{3} +} + +// Traffic Type +// +// x-displayName: "Traffic Type" +// TrafficType specifies the type of traffic. +type TrafficType int32 + +const ( + // x-displayName: "None" + TRAFFIC_TYPE_NONE TrafficType = 0 + // x-displayName: "Intersegment" + // Intersegment traffic + TRAFFIC_TYPE_INTER_SEGMENT TrafficType = 1 + // x-displayName: "Intrasegment" + // Intrasegment traffic + TRAFFIC_TYPE_INTRA_SEGMENT TrafficType = 2 + // x-displayName: "Internet" + // Internet traffic + TRAFFIC_TYPE_INTERNET TrafficType = 3 +) + +var TrafficType_name = map[int32]string{ + 0: "TRAFFIC_TYPE_NONE", + 1: "TRAFFIC_TYPE_INTER_SEGMENT", + 2: "TRAFFIC_TYPE_INTRA_SEGMENT", + 3: "TRAFFIC_TYPE_INTERNET", +} + +var TrafficType_value = map[string]int32{ + "TRAFFIC_TYPE_NONE": 0, + "TRAFFIC_TYPE_INTER_SEGMENT": 1, + "TRAFFIC_TYPE_INTRA_SEGMENT": 2, + "TRAFFIC_TYPE_INTERNET": 3, +} + +func (TrafficType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{4} +} + +// Cloud Connect Metric Type +// +// x-displayName: "Cloud Connect Metric Type" +// FieldSelector specifies the metrics that can be queried for cloud connect. +type FieldSelector int32 + +const ( + // x-displayName: "None" + // Indicates field not being set + METRIC_TYPE_NONE FieldSelector = 0 + // x-displayName: "Incoming bytes per second" + // x-unit: "bytes per second (bps)" + // Throughput of incoming traffic + METRIC_TYPE_IN_BYTES FieldSelector = 1 + // x-displayName: "Outgoing bytes per second" + // x-unit: "bytes per second (bps)" + // Throughput of outgoing traffic + METRIC_TYPE_OUT_BYTES FieldSelector = 2 +) + +var FieldSelector_name = map[int32]string{ + 0: "METRIC_TYPE_NONE", + 1: "METRIC_TYPE_IN_BYTES", + 2: "METRIC_TYPE_OUT_BYTES", +} + +var FieldSelector_value = map[string]int32{ + "METRIC_TYPE_NONE": 0, + "METRIC_TYPE_IN_BYTES": 1, + "METRIC_TYPE_OUT_BYTES": 2, +} + +func (FieldSelector) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{5} +} + // Cloud Connect AWS Type // // x-displayName: "AWS" @@ -466,6 +665,167 @@ func (*AWSVPCAttachmentType) XXX_OneofWrappers() []interface{} { } } +// VNET Attachments +// +// x-displayName: "VNET Attachments" +type AzureVnetAttachmentListType struct { + // vnet_list + // + // x-displayName: "VNET List" + VnetList []*AzureVNETAttachmentType `protobuf:"bytes,1,rep,name=vnet_list,json=vnetList,proto3" json:"vnet_list,omitempty"` +} + +func (m *AzureVnetAttachmentListType) Reset() { *m = AzureVnetAttachmentListType{} } +func (*AzureVnetAttachmentListType) ProtoMessage() {} +func (*AzureVnetAttachmentListType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{5} +} +func (m *AzureVnetAttachmentListType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AzureVnetAttachmentListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureVnetAttachmentListType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureVnetAttachmentListType.Merge(m, src) +} +func (m *AzureVnetAttachmentListType) XXX_Size() int { + return m.Size() +} +func (m *AzureVnetAttachmentListType) XXX_DiscardUnknown() { + xxx_messageInfo_AzureVnetAttachmentListType.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureVnetAttachmentListType proto.InternalMessageInfo + +func (m *AzureVnetAttachmentListType) GetVnetList() []*AzureVNETAttachmentType { + if m != nil { + return m.VnetList + } + return nil +} + +// Azure VNET attachment +// +// x-displayName: "Azure VNET Attachment" +type AzureVNETAttachmentType struct { + // Subscription ID + // + // x-displayName: "Subscription ID" + // x-required + // Enter the Subscription ID of the VNET to be attached + SubscriptionId string `protobuf:"bytes,1,opt,name=subscription_id,json=subscriptionId,proto3" json:"subscription_id,omitempty"` + // VNET ID + // + // x-displayName: "VNET ID" + // x-required + // Enter the vnet ID of the VNET to be attached + VnetId string `protobuf:"bytes,2,opt,name=vnet_id,json=vnetId,proto3" json:"vnet_id,omitempty"` + // Routing Choice + // + // x-displayName: "Routing Choice" + // x-required + // Select which traffic should be routed towards the CE + // + // Types that are valid to be assigned to RoutingChoice: + // *AzureVNETAttachmentType_ManualRouting + // *AzureVNETAttachmentType_CustomRouting + RoutingChoice isAzureVNETAttachmentType_RoutingChoice `protobuf_oneof:"routing_choice"` +} + +func (m *AzureVNETAttachmentType) Reset() { *m = AzureVNETAttachmentType{} } +func (*AzureVNETAttachmentType) ProtoMessage() {} +func (*AzureVNETAttachmentType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{6} +} +func (m *AzureVNETAttachmentType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AzureVNETAttachmentType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureVNETAttachmentType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureVNETAttachmentType.Merge(m, src) +} +func (m *AzureVNETAttachmentType) XXX_Size() int { + return m.Size() +} +func (m *AzureVNETAttachmentType) XXX_DiscardUnknown() { + xxx_messageInfo_AzureVNETAttachmentType.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureVNETAttachmentType proto.InternalMessageInfo + +type isAzureVNETAttachmentType_RoutingChoice interface { + isAzureVNETAttachmentType_RoutingChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type AzureVNETAttachmentType_ManualRouting struct { + ManualRouting *schema.Empty `protobuf:"bytes,4,opt,name=manual_routing,json=manualRouting,proto3,oneof" json:"manual_routing,omitempty"` +} +type AzureVNETAttachmentType_CustomRouting struct { + CustomRouting *AzureRouteTableWithStaticRouteListType `protobuf:"bytes,6,opt,name=custom_routing,json=customRouting,proto3,oneof" json:"custom_routing,omitempty"` +} + +func (*AzureVNETAttachmentType_ManualRouting) isAzureVNETAttachmentType_RoutingChoice() {} +func (*AzureVNETAttachmentType_CustomRouting) isAzureVNETAttachmentType_RoutingChoice() {} + +func (m *AzureVNETAttachmentType) GetRoutingChoice() isAzureVNETAttachmentType_RoutingChoice { + if m != nil { + return m.RoutingChoice + } + return nil +} + +func (m *AzureVNETAttachmentType) GetSubscriptionId() string { + if m != nil { + return m.SubscriptionId + } + return "" +} + +func (m *AzureVNETAttachmentType) GetVnetId() string { + if m != nil { + return m.VnetId + } + return "" +} + +func (m *AzureVNETAttachmentType) GetManualRouting() *schema.Empty { + if x, ok := m.GetRoutingChoice().(*AzureVNETAttachmentType_ManualRouting); ok { + return x.ManualRouting + } + return nil +} + +func (m *AzureVNETAttachmentType) GetCustomRouting() *AzureRouteTableWithStaticRouteListType { + if x, ok := m.GetRoutingChoice().(*AzureVNETAttachmentType_CustomRouting); ok { + return x.CustomRouting + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*AzureVNETAttachmentType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*AzureVNETAttachmentType_ManualRouting)(nil), + (*AzureVNETAttachmentType_CustomRouting)(nil), + } +} + // Default Route Override Choice // // x-displayName: "Override Default Route Choice" @@ -485,7 +845,7 @@ type DefaultRoute struct { func (m *DefaultRoute) Reset() { *m = DefaultRoute{} } func (*DefaultRoute) ProtoMessage() {} func (*DefaultRoute) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{5} + return fileDescriptor_245b6fb3a531fd11, []int{7} } func (m *DefaultRoute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -573,7 +933,7 @@ type AWSSubnetIDListType struct { func (m *AWSSubnetIDListType) Reset() { *m = AWSSubnetIDListType{} } func (*AWSSubnetIDListType) ProtoMessage() {} func (*AWSSubnetIDListType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{6} + return fileDescriptor_245b6fb3a531fd11, []int{8} } func (m *AWSSubnetIDListType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -621,7 +981,7 @@ type AWSRouteTableListType struct { func (m *AWSRouteTableListType) Reset() { *m = AWSRouteTableListType{} } func (*AWSRouteTableListType) ProtoMessage() {} func (*AWSRouteTableListType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{7} + return fileDescriptor_245b6fb3a531fd11, []int{9} } func (m *AWSRouteTableListType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -669,7 +1029,7 @@ type AWSDefaultRoutesRouteTable struct { func (m *AWSDefaultRoutesRouteTable) Reset() { *m = AWSDefaultRoutesRouteTable{} } func (*AWSDefaultRoutesRouteTable) ProtoMessage() {} func (*AWSDefaultRoutesRouteTable) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{8} + return fileDescriptor_245b6fb3a531fd11, []int{10} } func (m *AWSDefaultRoutesRouteTable) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -701,35 +1061,28 @@ func (m *AWSDefaultRoutesRouteTable) GetRouteTableId() []string { return nil } -// AWS Route Table +// Azure Route Table // -// x-displayName: "AWS Route Table" -// AWS Route Table -type AWSRouteTableType struct { +// x-displayName: "Azure Route Table" +// Azure Route Table +type AzureRouteTables struct { // Route table ID // // x-displayName: "Route table ID" - // x-example: "rtb-12345678901234567" + // x-example: "rt-12345678901234567" // Route table ID - RouteTableId string `protobuf:"bytes,1,opt,name=route_table_id,json=routeTableId,proto3" json:"route_table_id,omitempty"` - // static_routes - // - // x-displayName: "Static Routes" - // x-example: "10.1.1.0/24" - // x-required - // List of Static Routes - StaticRoutes []string `protobuf:"bytes,108,rep,name=static_routes,json=staticRoutes,proto3" json:"static_routes,omitempty"` + RouteTableId []string `protobuf:"bytes,1,rep,name=route_table_id,json=routeTableId,proto3" json:"route_table_id,omitempty"` } -func (m *AWSRouteTableType) Reset() { *m = AWSRouteTableType{} } -func (*AWSRouteTableType) ProtoMessage() {} -func (*AWSRouteTableType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{9} +func (m *AzureRouteTables) Reset() { *m = AzureRouteTables{} } +func (*AzureRouteTables) ProtoMessage() {} +func (*AzureRouteTables) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{11} } -func (m *AWSRouteTableType) XXX_Unmarshal(b []byte) error { +func (m *AzureRouteTables) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *AWSRouteTableType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *AzureRouteTables) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -737,52 +1090,49 @@ func (m *AWSRouteTableType) XXX_Marshal(b []byte, deterministic bool) ([]byte, e } return b[:n], nil } -func (m *AWSRouteTableType) XXX_Merge(src proto.Message) { - xxx_messageInfo_AWSRouteTableType.Merge(m, src) +func (m *AzureRouteTables) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureRouteTables.Merge(m, src) } -func (m *AWSRouteTableType) XXX_Size() int { +func (m *AzureRouteTables) XXX_Size() int { return m.Size() } -func (m *AWSRouteTableType) XXX_DiscardUnknown() { - xxx_messageInfo_AWSRouteTableType.DiscardUnknown(m) +func (m *AzureRouteTables) XXX_DiscardUnknown() { + xxx_messageInfo_AzureRouteTables.DiscardUnknown(m) } -var xxx_messageInfo_AWSRouteTableType proto.InternalMessageInfo +var xxx_messageInfo_AzureRouteTables proto.InternalMessageInfo -func (m *AWSRouteTableType) GetRouteTableId() string { +func (m *AzureRouteTables) GetRouteTableId() []string { if m != nil { return m.RouteTableId } - return "" -} - -func (m *AWSRouteTableType) GetStaticRoutes() []string { - if m != nil { - return m.StaticRoutes - } return nil } -// Cloud Connect ReplaceAWSREType Type +// List Azure Route Table with Static Route // -// x-displayName: "AWS RE Type" -// Cloud Connect AWS RE Type -type ReplaceAWSREType struct { - // VPC Attachments +// x-displayName: "List Azure Route Table with Static Route" +// List Azure Route Table with Static Route +type AzureRouteTableWithStaticRouteListType struct { + // List of route tables with static routes // - // x-displayName: "VPC Attachments" - VpcAttachments *AWSVPCAttachmentListType `protobuf:"bytes,3,opt,name=vpc_attachments,json=vpcAttachments,proto3" json:"vpc_attachments,omitempty"` + // x-required + // x-displayName: "List of route tables with static routes" + // Route Tables with static routes + RouteTables []*AzureRouteTableWithStaticRoute `protobuf:"bytes,1,rep,name=route_tables,json=routeTables,proto3" json:"route_tables,omitempty"` } -func (m *ReplaceAWSREType) Reset() { *m = ReplaceAWSREType{} } -func (*ReplaceAWSREType) ProtoMessage() {} -func (*ReplaceAWSREType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{10} +func (m *AzureRouteTableWithStaticRouteListType) Reset() { + *m = AzureRouteTableWithStaticRouteListType{} } -func (m *ReplaceAWSREType) XXX_Unmarshal(b []byte) error { +func (*AzureRouteTableWithStaticRouteListType) ProtoMessage() {} +func (*AzureRouteTableWithStaticRouteListType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{12} +} +func (m *AzureRouteTableWithStaticRouteListType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ReplaceAWSREType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *AzureRouteTableWithStaticRouteListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -790,44 +1140,214 @@ func (m *ReplaceAWSREType) XXX_Marshal(b []byte, deterministic bool) ([]byte, er } return b[:n], nil } -func (m *ReplaceAWSREType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplaceAWSREType.Merge(m, src) +func (m *AzureRouteTableWithStaticRouteListType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureRouteTableWithStaticRouteListType.Merge(m, src) } -func (m *ReplaceAWSREType) XXX_Size() int { +func (m *AzureRouteTableWithStaticRouteListType) XXX_Size() int { return m.Size() } -func (m *ReplaceAWSREType) XXX_DiscardUnknown() { - xxx_messageInfo_ReplaceAWSREType.DiscardUnknown(m) +func (m *AzureRouteTableWithStaticRouteListType) XXX_DiscardUnknown() { + xxx_messageInfo_AzureRouteTableWithStaticRouteListType.DiscardUnknown(m) } -var xxx_messageInfo_ReplaceAWSREType proto.InternalMessageInfo +var xxx_messageInfo_AzureRouteTableWithStaticRouteListType proto.InternalMessageInfo -func (m *ReplaceAWSREType) GetVpcAttachments() *AWSVPCAttachmentListType { +func (m *AzureRouteTableWithStaticRouteListType) GetRouteTables() []*AzureRouteTableWithStaticRoute { if m != nil { - return m.VpcAttachments + return m.RouteTables } return nil } -// Cloud Connect AWS TGW Site Type +// Azure Route Table // -// x-displayName: "AWS TGW Site Type" -// Cloud Connect AWS TGW Site Type -type AWSTGWSiteType struct { - // AWS TGW Site Reference +// x-displayName: "Azure Route Table with Static Route" +// Azure Route Table with Static Route +type AzureRouteTableWithStaticRoute struct { + // Route table ID // - // x-displayName: "AWS TGW Site Reference" - // AWS TGW Site Reference - // x-required - Site *views.ObjectRefType `protobuf:"bytes,1,opt,name=site,proto3" json:"site,omitempty"` - // Cloud Credential + // x-displayName: "Route table ID" + // x-example: "rt-12345678901234567" + // Route table ID + RouteTableId string `protobuf:"bytes,1,opt,name=route_table_id,json=routeTableId,proto3" json:"route_table_id,omitempty"` + // static_routes // - // x-displayName: "Credential Reference" - // Reference to cloud credential to deploy resources + // x-displayName: "Static Routes" + // x-example: "10.1.1.0/24" // x-required - Cred *views.ObjectRefType `protobuf:"bytes,2,opt,name=cred,proto3" json:"cred,omitempty"` - // Spoke VPCs - // + // List of Static Routes + StaticRoutes []string `protobuf:"bytes,108,rep,name=static_routes,json=staticRoutes,proto3" json:"static_routes,omitempty"` +} + +func (m *AzureRouteTableWithStaticRoute) Reset() { *m = AzureRouteTableWithStaticRoute{} } +func (*AzureRouteTableWithStaticRoute) ProtoMessage() {} +func (*AzureRouteTableWithStaticRoute) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{13} +} +func (m *AzureRouteTableWithStaticRoute) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AzureRouteTableWithStaticRoute) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureRouteTableWithStaticRoute) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureRouteTableWithStaticRoute.Merge(m, src) +} +func (m *AzureRouteTableWithStaticRoute) XXX_Size() int { + return m.Size() +} +func (m *AzureRouteTableWithStaticRoute) XXX_DiscardUnknown() { + xxx_messageInfo_AzureRouteTableWithStaticRoute.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureRouteTableWithStaticRoute proto.InternalMessageInfo + +func (m *AzureRouteTableWithStaticRoute) GetRouteTableId() string { + if m != nil { + return m.RouteTableId + } + return "" +} + +func (m *AzureRouteTableWithStaticRoute) GetStaticRoutes() []string { + if m != nil { + return m.StaticRoutes + } + return nil +} + +// AWS Route Table +// +// x-displayName: "AWS Route Table" +// AWS Route Table +type AWSRouteTableType struct { + // Route table ID + // + // x-displayName: "Route table ID" + // x-example: "rtb-12345678901234567" + // Route table ID + RouteTableId string `protobuf:"bytes,1,opt,name=route_table_id,json=routeTableId,proto3" json:"route_table_id,omitempty"` + // static_routes + // + // x-displayName: "Static Routes" + // x-example: "10.1.1.0/24" + // x-required + // List of Static Routes + StaticRoutes []string `protobuf:"bytes,108,rep,name=static_routes,json=staticRoutes,proto3" json:"static_routes,omitempty"` +} + +func (m *AWSRouteTableType) Reset() { *m = AWSRouteTableType{} } +func (*AWSRouteTableType) ProtoMessage() {} +func (*AWSRouteTableType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{14} +} +func (m *AWSRouteTableType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AWSRouteTableType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AWSRouteTableType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AWSRouteTableType.Merge(m, src) +} +func (m *AWSRouteTableType) XXX_Size() int { + return m.Size() +} +func (m *AWSRouteTableType) XXX_DiscardUnknown() { + xxx_messageInfo_AWSRouteTableType.DiscardUnknown(m) +} + +var xxx_messageInfo_AWSRouteTableType proto.InternalMessageInfo + +func (m *AWSRouteTableType) GetRouteTableId() string { + if m != nil { + return m.RouteTableId + } + return "" +} + +func (m *AWSRouteTableType) GetStaticRoutes() []string { + if m != nil { + return m.StaticRoutes + } + return nil +} + +// Cloud Connect ReplaceAWSREType Type +// +// x-displayName: "AWS RE Type" +// Cloud Connect AWS RE Type +type ReplaceAWSREType struct { + // VPC Attachments + // + // x-displayName: "VPC Attachments" + VpcAttachments *AWSVPCAttachmentListType `protobuf:"bytes,3,opt,name=vpc_attachments,json=vpcAttachments,proto3" json:"vpc_attachments,omitempty"` +} + +func (m *ReplaceAWSREType) Reset() { *m = ReplaceAWSREType{} } +func (*ReplaceAWSREType) ProtoMessage() {} +func (*ReplaceAWSREType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{15} +} +func (m *ReplaceAWSREType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceAWSREType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReplaceAWSREType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceAWSREType.Merge(m, src) +} +func (m *ReplaceAWSREType) XXX_Size() int { + return m.Size() +} +func (m *ReplaceAWSREType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceAWSREType.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceAWSREType proto.InternalMessageInfo + +func (m *ReplaceAWSREType) GetVpcAttachments() *AWSVPCAttachmentListType { + if m != nil { + return m.VpcAttachments + } + return nil +} + +// Cloud Connect AWS TGW Site Type +// +// x-displayName: "AWS TGW Site Type" +// Cloud Connect AWS TGW Site Type +type AWSTGWSiteType struct { + // AWS TGW Site Reference + // + // x-displayName: "AWS TGW Site Reference" + // AWS TGW Site Reference + // x-required + Site *views.ObjectRefType `protobuf:"bytes,1,opt,name=site,proto3" json:"site,omitempty"` + // Cloud Credential + // + // x-displayName: "Credential Reference" + // Reference to cloud credential to deploy resources + // x-required + Cred *views.ObjectRefType `protobuf:"bytes,2,opt,name=cred,proto3" json:"cred,omitempty"` + // Spoke VPCs + // // x-displayName: "Spoke VPCs" // Spoke VPCs to be attached to the AWS TGW Site // x-required @@ -837,7 +1357,7 @@ type AWSTGWSiteType struct { func (m *AWSTGWSiteType) Reset() { *m = AWSTGWSiteType{} } func (*AWSTGWSiteType) ProtoMessage() {} func (*AWSTGWSiteType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{11} + return fileDescriptor_245b6fb3a531fd11, []int{16} } func (m *AWSTGWSiteType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -898,7 +1418,7 @@ type ReplaceAWSTGWSiteType struct { func (m *ReplaceAWSTGWSiteType) Reset() { *m = ReplaceAWSTGWSiteType{} } func (*ReplaceAWSTGWSiteType) ProtoMessage() {} func (*ReplaceAWSTGWSiteType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{12} + return fileDescriptor_245b6fb3a531fd11, []int{17} } func (m *ReplaceAWSTGWSiteType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -930,6 +1450,127 @@ func (m *ReplaceAWSTGWSiteType) GetVpcAttachments() *AWSVPCAttachmentListType { return nil } +// Cloud Connect Azure VNET Site Type +// +// x-displayName: "Azure VNET Site Type" +// Cloud Connect Azure VNET Site Type +type AzureVNETSiteType struct { + // Azure VNET Site Reference + // + // x-displayName: "Azure VNET Site Reference" + // Azure VNET Site Reference + // x-required + Site *views.ObjectRefType `protobuf:"bytes,1,opt,name=site,proto3" json:"site,omitempty"` + // Cloud Credential + // + // x-displayName: "Credential Reference" + // Reference to cloud credential to deploy resources + // x-required + Cred *views.ObjectRefType `protobuf:"bytes,2,opt,name=cred,proto3" json:"cred,omitempty"` + // Spoke VNETs + // + // x-displayName: "Spoke VNETs" + // Spoke VNETs to be attached to the Azure Hub VNET Site + // x-required + VnetAttachments *AzureVnetAttachmentListType `protobuf:"bytes,5,opt,name=vnet_attachments,json=vnetAttachments,proto3" json:"vnet_attachments,omitempty"` +} + +func (m *AzureVNETSiteType) Reset() { *m = AzureVNETSiteType{} } +func (*AzureVNETSiteType) ProtoMessage() {} +func (*AzureVNETSiteType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{18} +} +func (m *AzureVNETSiteType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AzureVNETSiteType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureVNETSiteType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureVNETSiteType.Merge(m, src) +} +func (m *AzureVNETSiteType) XXX_Size() int { + return m.Size() +} +func (m *AzureVNETSiteType) XXX_DiscardUnknown() { + xxx_messageInfo_AzureVNETSiteType.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureVNETSiteType proto.InternalMessageInfo + +func (m *AzureVNETSiteType) GetSite() *views.ObjectRefType { + if m != nil { + return m.Site + } + return nil +} + +func (m *AzureVNETSiteType) GetCred() *views.ObjectRefType { + if m != nil { + return m.Cred + } + return nil +} + +func (m *AzureVNETSiteType) GetVnetAttachments() *AzureVnetAttachmentListType { + if m != nil { + return m.VnetAttachments + } + return nil +} + +// Replace Cloud Connect AWS TGW Site Type +// +// x-displayName: "AWS TGW Site Type" +// Cloud Connect AWS TGW Site Type +type ReplaceAzureVNETSiteType struct { + // Spoke VPCs + // + // x-displayName: "Spoke VPCs" + // Spoke VPCs to be attached to the AWS TGW Site + VnetAttachments *AzureVnetAttachmentListType `protobuf:"bytes,3,opt,name=vnet_attachments,json=vnetAttachments,proto3" json:"vnet_attachments,omitempty"` +} + +func (m *ReplaceAzureVNETSiteType) Reset() { *m = ReplaceAzureVNETSiteType{} } +func (*ReplaceAzureVNETSiteType) ProtoMessage() {} +func (*ReplaceAzureVNETSiteType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{19} +} +func (m *ReplaceAzureVNETSiteType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceAzureVNETSiteType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReplaceAzureVNETSiteType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceAzureVNETSiteType.Merge(m, src) +} +func (m *ReplaceAzureVNETSiteType) XXX_Size() int { + return m.Size() +} +func (m *ReplaceAzureVNETSiteType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceAzureVNETSiteType.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceAzureVNETSiteType proto.InternalMessageInfo + +func (m *ReplaceAzureVNETSiteType) GetVnetAttachments() *AzureVnetAttachmentListType { + if m != nil { + return m.VnetAttachments + } + return nil +} + // Cloud Connect Status // // x-displayName: "Status" @@ -942,13 +1583,14 @@ type CloudConnectStatusType struct { // // Types that are valid to be assigned to CloudConnectDeployment: // *CloudConnectStatusType_CloudConnectAwsSite + // *CloudConnectStatusType_CloudConnectAzureSite CloudConnectDeployment isCloudConnectStatusType_CloudConnectDeployment `protobuf_oneof:"cloud_connect_deployment"` } func (m *CloudConnectStatusType) Reset() { *m = CloudConnectStatusType{} } func (*CloudConnectStatusType) ProtoMessage() {} func (*CloudConnectStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{13} + return fileDescriptor_245b6fb3a531fd11, []int{20} } func (m *CloudConnectStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -983,9 +1625,14 @@ type isCloudConnectStatusType_CloudConnectDeployment interface { type CloudConnectStatusType_CloudConnectAwsSite struct { CloudConnectAwsSite *AWSAttachmentsListStatusType `protobuf:"bytes,2,opt,name=cloud_connect_aws_site,json=cloudConnectAwsSite,proto3,oneof" json:"cloud_connect_aws_site,omitempty"` } +type CloudConnectStatusType_CloudConnectAzureSite struct { + CloudConnectAzureSite *AzureAttachmentsListStatusType `protobuf:"bytes,3,opt,name=cloud_connect_azure_site,json=cloudConnectAzureSite,proto3,oneof" json:"cloud_connect_azure_site,omitempty"` +} func (*CloudConnectStatusType_CloudConnectAwsSite) isCloudConnectStatusType_CloudConnectDeployment() { } +func (*CloudConnectStatusType_CloudConnectAzureSite) isCloudConnectStatusType_CloudConnectDeployment() { +} func (m *CloudConnectStatusType) GetCloudConnectDeployment() isCloudConnectStatusType_CloudConnectDeployment { if m != nil { @@ -1001,10 +1648,18 @@ func (m *CloudConnectStatusType) GetCloudConnectAwsSite() *AWSAttachmentsListSta return nil } +func (m *CloudConnectStatusType) GetCloudConnectAzureSite() *AzureAttachmentsListStatusType { + if x, ok := m.GetCloudConnectDeployment().(*CloudConnectStatusType_CloudConnectAzureSite); ok { + return x.CloudConnectAzureSite + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CloudConnectStatusType) XXX_OneofWrappers() []interface{} { return []interface{}{ (*CloudConnectStatusType_CloudConnectAwsSite)(nil), + (*CloudConnectStatusType_CloudConnectAzureSite)(nil), } } @@ -1023,7 +1678,7 @@ type AWSAttachmentsListStatusType struct { func (m *AWSAttachmentsListStatusType) Reset() { *m = AWSAttachmentsListStatusType{} } func (*AWSAttachmentsListStatusType) ProtoMessage() {} func (*AWSAttachmentsListStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{14} + return fileDescriptor_245b6fb3a531fd11, []int{21} } func (m *AWSAttachmentsListStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1080,11 +1735,16 @@ type AWSAttachmentsStatusType struct { // x-displayName: "VPC Owner Account" // VPC Owner Account VpcOwnerId string `protobuf:"bytes,5,opt,name=vpc_owner_id,json=vpcOwnerId,proto3" json:"vpc_owner_id,omitempty"` - // Attachment State + // VPC CIDR + // + // x-displayName: "VPC CIDR" + // VPC CIDR + VpcCidr string `protobuf:"bytes,12,opt,name=vpc_cidr,json=vpcCidr,proto3" json:"vpc_cidr,omitempty"` + // Deployment State // - // x-displayName: "Attachment State" - // Attachment State - State string `protobuf:"bytes,6,opt,name=state,proto3" json:"state,omitempty"` + // x-displayName: "Deployment State" + // VPC deployment state + VpcDeploymentState CloudConnectVPCStateType `protobuf:"varint,11,opt,name=vpc_deployment_state,json=vpcDeploymentState,proto3,enum=ves.io.schema.cloud_connect.CloudConnectVPCStateType" json:"vpc_deployment_state,omitempty"` // Attachment Deployment Status // // x-displayName: "Attachment Deployment Status" @@ -1110,7 +1770,7 @@ type AWSAttachmentsStatusType struct { func (m *AWSAttachmentsStatusType) Reset() { *m = AWSAttachmentsStatusType{} } func (*AWSAttachmentsStatusType) ProtoMessage() {} func (*AWSAttachmentsStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{15} + return fileDescriptor_245b6fb3a531fd11, []int{22} } func (m *AWSAttachmentsStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1163,13 +1823,20 @@ func (m *AWSAttachmentsStatusType) GetVpcOwnerId() string { return "" } -func (m *AWSAttachmentsStatusType) GetState() string { +func (m *AWSAttachmentsStatusType) GetVpcCidr() string { if m != nil { - return m.State + return m.VpcCidr } return "" } +func (m *AWSAttachmentsStatusType) GetVpcDeploymentState() CloudConnectVPCStateType { + if m != nil { + return m.VpcDeploymentState + } + return AVAILABLE +} + func (m *AWSAttachmentsStatusType) GetDeploymentStatus() string { if m != nil { return m.DeploymentStatus @@ -1238,7 +1905,7 @@ type SubnetStatusType struct { func (m *SubnetStatusType) Reset() { *m = SubnetStatusType{} } func (*SubnetStatusType) ProtoMessage() {} func (*SubnetStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{16} + return fileDescriptor_245b6fb3a531fd11, []int{23} } func (m *SubnetStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1305,6 +1972,230 @@ func (m *SubnetStatusType) GetStatus() string { return "" } +// Azure spoke Attachment List Status Type +// +// x-displayName: "Azure spoke Attachment List Status Type" +// Azure VEspokeNT Attachment List Status Type +type AzureAttachmentsListStatusType struct { + // Azure spoke Attachment Status Type + // + // x-displayName: "Azure spoke Attachment Status" + // Azure spoke Attachment Status Type + AttachmentStatus []*AzureAttachmentsStatusType `protobuf:"bytes,1,rep,name=attachment_status,json=attachmentStatus,proto3" json:"attachment_status,omitempty"` +} + +func (m *AzureAttachmentsListStatusType) Reset() { *m = AzureAttachmentsListStatusType{} } +func (*AzureAttachmentsListStatusType) ProtoMessage() {} +func (*AzureAttachmentsListStatusType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{24} +} +func (m *AzureAttachmentsListStatusType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AzureAttachmentsListStatusType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureAttachmentsListStatusType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureAttachmentsListStatusType.Merge(m, src) +} +func (m *AzureAttachmentsListStatusType) XXX_Size() int { + return m.Size() +} +func (m *AzureAttachmentsListStatusType) XXX_DiscardUnknown() { + xxx_messageInfo_AzureAttachmentsListStatusType.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureAttachmentsListStatusType proto.InternalMessageInfo + +func (m *AzureAttachmentsListStatusType) GetAttachmentStatus() []*AzureAttachmentsStatusType { + if m != nil { + return m.AttachmentStatus + } + return nil +} + +// Azure Attachment Status Type +// +// x-displayName: "Azure Attachment Status Type" +// Azure Attachment Status Type +type AzureAttachmentsStatusType struct { + // VNET Attachment ID + // + // x-displayName: "VNET Attachment ID" + // VNET Attachment ID + VnetAttachmentId string `protobuf:"bytes,2,opt,name=vnet_attachment_id,json=vnetAttachmentId,proto3" json:"vnet_attachment_id,omitempty"` + // Attachment Creation Time + // + // x-displayName: "Attachment Creation Time" + // Attachment Creation Time + CreationTime *types.Timestamp `protobuf:"bytes,1,opt,name=creation_time,json=creationTime,proto3" json:"creation_time,omitempty"` + // Spoke VNET ID + // + // x-displayName: "Spoke VNET ID" + // Spoke VNET ID + SpokeVnetId string `protobuf:"bytes,3,opt,name=spoke_vnet_id,json=spokeVnetId,proto3" json:"spoke_vnet_id,omitempty"` + // Hub VNET Name + // + // x-displayName: "Hub VNET Name" + // Hub VNET Name + HubVnetName string `protobuf:"bytes,4,opt,name=hub_vnet_name,json=hubVnetName,proto3" json:"hub_vnet_name,omitempty"` + // Hub Owner subscription + // + // x-displayName: "Hub Owner Subscription" + // Hub Owner Subscription + HubOwnerSubscriptionid string `protobuf:"bytes,5,opt,name=hub_owner_subscriptionid,json=hubOwnerSubscriptionid,proto3" json:"hub_owner_subscriptionid,omitempty"` + // Hub VNET Peering state + // + // x-displayName: "Hub VNET Peering state" + // Hub VNET Peering state + PeeringState string `protobuf:"bytes,6,opt,name=peering_state,json=peeringState,proto3" json:"peering_state,omitempty"` + // Hub VNET Provisioning state + // + // x-displayName: "Hub VNET Provisioning state" + // Hub VNET Provisioning state + ProvisioningState string `protobuf:"bytes,7,opt,name=provisioning_state,json=provisioningState,proto3" json:"provisioning_state,omitempty"` + // Attachment Deployment Status + // + // x-displayName: "Attachment Deployment Status" + // Attachment Deployment Status + DeploymentStatus string `protobuf:"bytes,8,opt,name=deployment_status,json=deploymentStatus,proto3" json:"deployment_status,omitempty"` + // Hub VNET peering sync level + // + // x-displayName: "Hub VNET peering sync level" + // Hub VNET peering sync level + PeeringSyncLevel string `protobuf:"bytes,9,opt,name=peering_sync_level,json=peeringSyncLevel,proto3" json:"peering_sync_level,omitempty"` + // Attachment Tags + // + // x-displayName: "Attachment Tags" + // Attachment Tags + Tags map[string]string `protobuf:"bytes,10,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Subnets + // + // x-displayName: "Network Interfaces" + // Network Interfaces created along with the attachment + Subnets []*SubnetStatusType `protobuf:"bytes,11,rep,name=subnets,proto3" json:"subnets,omitempty"` + // x-displayName: "Installed Routes" + // Routes + InstalledRoutes *AzureRouteTableWithStaticRouteListType `protobuf:"bytes,12,opt,name=installed_routes,json=installedRoutes,proto3" json:"installed_routes,omitempty"` +} + +func (m *AzureAttachmentsStatusType) Reset() { *m = AzureAttachmentsStatusType{} } +func (*AzureAttachmentsStatusType) ProtoMessage() {} +func (*AzureAttachmentsStatusType) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{25} +} +func (m *AzureAttachmentsStatusType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AzureAttachmentsStatusType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureAttachmentsStatusType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureAttachmentsStatusType.Merge(m, src) +} +func (m *AzureAttachmentsStatusType) XXX_Size() int { + return m.Size() +} +func (m *AzureAttachmentsStatusType) XXX_DiscardUnknown() { + xxx_messageInfo_AzureAttachmentsStatusType.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureAttachmentsStatusType proto.InternalMessageInfo + +func (m *AzureAttachmentsStatusType) GetVnetAttachmentId() string { + if m != nil { + return m.VnetAttachmentId + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetCreationTime() *types.Timestamp { + if m != nil { + return m.CreationTime + } + return nil +} + +func (m *AzureAttachmentsStatusType) GetSpokeVnetId() string { + if m != nil { + return m.SpokeVnetId + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetHubVnetName() string { + if m != nil { + return m.HubVnetName + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetHubOwnerSubscriptionid() string { + if m != nil { + return m.HubOwnerSubscriptionid + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetPeeringState() string { + if m != nil { + return m.PeeringState + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetProvisioningState() string { + if m != nil { + return m.ProvisioningState + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetDeploymentStatus() string { + if m != nil { + return m.DeploymentStatus + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetPeeringSyncLevel() string { + if m != nil { + return m.PeeringSyncLevel + } + return "" +} + +func (m *AzureAttachmentsStatusType) GetTags() map[string]string { + if m != nil { + return m.Tags + } + return nil +} + +func (m *AzureAttachmentsStatusType) GetSubnets() []*SubnetStatusType { + if m != nil { + return m.Subnets + } + return nil +} + +func (m *AzureAttachmentsStatusType) GetInstalledRoutes() *AzureRouteTableWithStaticRouteListType { + if m != nil { + return m.InstalledRoutes + } + return nil +} + // Cloud Connect specification // // x-displayName: "Specification" @@ -1318,6 +2209,7 @@ type GlobalSpecType struct { // Types that are valid to be assigned to Cloud: // *GlobalSpecType_AwsRe // *GlobalSpecType_AwsTgwSite + // *GlobalSpecType_AzureVnetSite Cloud isGlobalSpecType_Cloud `protobuf_oneof:"cloud"` // Segment // @@ -1346,12 +2238,22 @@ type GlobalSpecType struct { // x-displayName: "Cloud Connect State" // State of the vpc attachments with the Cloud Connect deployment State CloudConnectState `protobuf:"varint,15,opt,name=state,proto3,enum=ves.io.schema.cloud_connect.CloudConnectState" json:"state,omitempty"` + // Onboared VPC Count + // + // x-displayName: "onboarded_vpc" + // Number of vpc that have been onboarded onto the cloud from this config. + OnboardedVpc uint32 `protobuf:"varint,17,opt,name=onboarded_vpc,json=onboardedVpc,proto3" json:"onboarded_vpc,omitempty"` + // CloudConnect Connection Coordinates + // + // x-displayName: "CloudConnect Coordinates" + // Coordinates of the attached site with this cloud connect. + Coordinates *site.Coordinates `protobuf:"bytes,18,opt,name=coordinates,proto3" json:"coordinates,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } func (*GlobalSpecType) ProtoMessage() {} func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{17} + return fileDescriptor_245b6fb3a531fd11, []int{26} } func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1395,12 +2297,16 @@ type GlobalSpecType_AwsRe struct { type GlobalSpecType_AwsTgwSite struct { AwsTgwSite *AWSTGWSiteType `protobuf:"bytes,7,opt,name=aws_tgw_site,json=awsTgwSite,proto3,oneof" json:"aws_tgw_site,omitempty"` } +type GlobalSpecType_AzureVnetSite struct { + AzureVnetSite *AzureVNETSiteType `protobuf:"bytes,16,opt,name=azure_vnet_site,json=azureVnetSite,proto3,oneof" json:"azure_vnet_site,omitempty"` +} type GlobalSpecType_Bandwidth_500Mbs struct { Bandwidth_500Mbs *schema.Empty `protobuf:"bytes,9,opt,name=bandwidth_500mbs,json=bandwidth500mbs,proto3,oneof" json:"bandwidth_500mbs,omitempty"` } func (*GlobalSpecType_AwsRe) isGlobalSpecType_Cloud() {} func (*GlobalSpecType_AwsTgwSite) isGlobalSpecType_Cloud() {} +func (*GlobalSpecType_AzureVnetSite) isGlobalSpecType_Cloud() {} func (*GlobalSpecType_Bandwidth_500Mbs) isGlobalSpecType_BandwidthOption() {} func (m *GlobalSpecType) GetCloud() isGlobalSpecType_Cloud { @@ -1430,6 +2336,13 @@ func (m *GlobalSpecType) GetAwsTgwSite() *AWSTGWSiteType { return nil } +func (m *GlobalSpecType) GetAzureVnetSite() *AzureVNETSiteType { + if x, ok := m.GetCloud().(*GlobalSpecType_AzureVnetSite); ok { + return x.AzureVnetSite + } + return nil +} + func (m *GlobalSpecType) GetSegment() *views.ObjectRefType { if m != nil { return m.Segment @@ -1465,11 +2378,26 @@ func (m *GlobalSpecType) GetState() CloudConnectState { return DOWN } +func (m *GlobalSpecType) GetOnboardedVpc() uint32 { + if m != nil { + return m.OnboardedVpc + } + return 0 +} + +func (m *GlobalSpecType) GetCoordinates() *site.Coordinates { + if m != nil { + return m.Coordinates + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ (*GlobalSpecType_AwsRe)(nil), (*GlobalSpecType_AwsTgwSite)(nil), + (*GlobalSpecType_AzureVnetSite)(nil), (*GlobalSpecType_Bandwidth_500Mbs)(nil), } } @@ -1482,6 +2410,7 @@ type CreateSpecType struct { // Types that are valid to be assigned to Cloud: // *CreateSpecType_AwsRe // *CreateSpecType_AwsTgwSite + // *CreateSpecType_AzureVnetSite Cloud isCreateSpecType_Cloud `protobuf_oneof:"cloud"` Segment *views.ObjectRefType `protobuf:"bytes,13,opt,name=segment,proto3" json:"segment,omitempty"` } @@ -1489,7 +2418,7 @@ type CreateSpecType struct { func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } func (*CreateSpecType) ProtoMessage() {} func (*CreateSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{18} + return fileDescriptor_245b6fb3a531fd11, []int{27} } func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1527,9 +2456,13 @@ type CreateSpecType_AwsRe struct { type CreateSpecType_AwsTgwSite struct { AwsTgwSite *AWSTGWSiteType `protobuf:"bytes,7,opt,name=aws_tgw_site,json=awsTgwSite,proto3,oneof" json:"aws_tgw_site,omitempty"` } +type CreateSpecType_AzureVnetSite struct { + AzureVnetSite *AzureVNETSiteType `protobuf:"bytes,16,opt,name=azure_vnet_site,json=azureVnetSite,proto3,oneof" json:"azure_vnet_site,omitempty"` +} -func (*CreateSpecType_AwsRe) isCreateSpecType_Cloud() {} -func (*CreateSpecType_AwsTgwSite) isCreateSpecType_Cloud() {} +func (*CreateSpecType_AwsRe) isCreateSpecType_Cloud() {} +func (*CreateSpecType_AwsTgwSite) isCreateSpecType_Cloud() {} +func (*CreateSpecType_AzureVnetSite) isCreateSpecType_Cloud() {} func (m *CreateSpecType) GetCloud() isCreateSpecType_Cloud { if m != nil { @@ -1552,6 +2485,13 @@ func (m *CreateSpecType) GetAwsTgwSite() *AWSTGWSiteType { return nil } +func (m *CreateSpecType) GetAzureVnetSite() *AzureVNETSiteType { + if x, ok := m.GetCloud().(*CreateSpecType_AzureVnetSite); ok { + return x.AzureVnetSite + } + return nil +} + func (m *CreateSpecType) GetSegment() *views.ObjectRefType { if m != nil { return m.Segment @@ -1564,6 +2504,7 @@ func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ (*CreateSpecType_AwsRe)(nil), (*CreateSpecType_AwsTgwSite)(nil), + (*CreateSpecType_AzureVnetSite)(nil), } } @@ -1575,6 +2516,7 @@ type ReplaceSpecType struct { // Types that are valid to be assigned to Cloud: // *ReplaceSpecType_AwsRe // *ReplaceSpecType_AwsTgwSite + // *ReplaceSpecType_AzureVnetSite Cloud isReplaceSpecType_Cloud `protobuf_oneof:"cloud"` Segment *views.ObjectRefType `protobuf:"bytes,13,opt,name=segment,proto3" json:"segment,omitempty"` } @@ -1582,7 +2524,7 @@ type ReplaceSpecType struct { func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } func (*ReplaceSpecType) ProtoMessage() {} func (*ReplaceSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{19} + return fileDescriptor_245b6fb3a531fd11, []int{28} } func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1620,9 +2562,13 @@ type ReplaceSpecType_AwsRe struct { type ReplaceSpecType_AwsTgwSite struct { AwsTgwSite *ReplaceAWSTGWSiteType `protobuf:"bytes,7,opt,name=aws_tgw_site,json=awsTgwSite,proto3,oneof" json:"aws_tgw_site,omitempty"` } +type ReplaceSpecType_AzureVnetSite struct { + AzureVnetSite *AzureVNETSiteType `protobuf:"bytes,16,opt,name=azure_vnet_site,json=azureVnetSite,proto3,oneof" json:"azure_vnet_site,omitempty"` +} -func (*ReplaceSpecType_AwsRe) isReplaceSpecType_Cloud() {} -func (*ReplaceSpecType_AwsTgwSite) isReplaceSpecType_Cloud() {} +func (*ReplaceSpecType_AwsRe) isReplaceSpecType_Cloud() {} +func (*ReplaceSpecType_AwsTgwSite) isReplaceSpecType_Cloud() {} +func (*ReplaceSpecType_AzureVnetSite) isReplaceSpecType_Cloud() {} func (m *ReplaceSpecType) GetCloud() isReplaceSpecType_Cloud { if m != nil { @@ -1645,6 +2591,13 @@ func (m *ReplaceSpecType) GetAwsTgwSite() *ReplaceAWSTGWSiteType { return nil } +func (m *ReplaceSpecType) GetAzureVnetSite() *AzureVNETSiteType { + if x, ok := m.GetCloud().(*ReplaceSpecType_AzureVnetSite); ok { + return x.AzureVnetSite + } + return nil +} + func (m *ReplaceSpecType) GetSegment() *views.ObjectRefType { if m != nil { return m.Segment @@ -1657,6 +2610,7 @@ func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ (*ReplaceSpecType_AwsRe)(nil), (*ReplaceSpecType_AwsTgwSite)(nil), + (*ReplaceSpecType_AzureVnetSite)(nil), } } @@ -1668,15 +2622,18 @@ type GetSpecType struct { // Types that are valid to be assigned to Cloud: // *GetSpecType_AwsRe // *GetSpecType_AwsTgwSite - Cloud isGetSpecType_Cloud `protobuf_oneof:"cloud"` - Segment *views.ObjectRefType `protobuf:"bytes,13,opt,name=segment,proto3" json:"segment,omitempty"` - State CloudConnectState `protobuf:"varint,15,opt,name=state,proto3,enum=ves.io.schema.cloud_connect.CloudConnectState" json:"state,omitempty"` + // *GetSpecType_AzureVnetSite + Cloud isGetSpecType_Cloud `protobuf_oneof:"cloud"` + Segment *views.ObjectRefType `protobuf:"bytes,13,opt,name=segment,proto3" json:"segment,omitempty"` + State CloudConnectState `protobuf:"varint,15,opt,name=state,proto3,enum=ves.io.schema.cloud_connect.CloudConnectState" json:"state,omitempty"` + OnboardedVpc uint32 `protobuf:"varint,17,opt,name=onboarded_vpc,json=onboardedVpc,proto3" json:"onboarded_vpc,omitempty"` + Coordinates *site.Coordinates `protobuf:"bytes,18,opt,name=coordinates,proto3" json:"coordinates,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } func (*GetSpecType) ProtoMessage() {} func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_245b6fb3a531fd11, []int{20} + return fileDescriptor_245b6fb3a531fd11, []int{29} } func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1714,9 +2671,13 @@ type GetSpecType_AwsRe struct { type GetSpecType_AwsTgwSite struct { AwsTgwSite *AWSTGWSiteType `protobuf:"bytes,7,opt,name=aws_tgw_site,json=awsTgwSite,proto3,oneof" json:"aws_tgw_site,omitempty"` } +type GetSpecType_AzureVnetSite struct { + AzureVnetSite *AzureVNETSiteType `protobuf:"bytes,16,opt,name=azure_vnet_site,json=azureVnetSite,proto3,oneof" json:"azure_vnet_site,omitempty"` +} -func (*GetSpecType_AwsRe) isGetSpecType_Cloud() {} -func (*GetSpecType_AwsTgwSite) isGetSpecType_Cloud() {} +func (*GetSpecType_AwsRe) isGetSpecType_Cloud() {} +func (*GetSpecType_AwsTgwSite) isGetSpecType_Cloud() {} +func (*GetSpecType_AzureVnetSite) isGetSpecType_Cloud() {} func (m *GetSpecType) GetCloud() isGetSpecType_Cloud { if m != nil { @@ -1739,6 +2700,13 @@ func (m *GetSpecType) GetAwsTgwSite() *AWSTGWSiteType { return nil } +func (m *GetSpecType) GetAzureVnetSite() *AzureVNETSiteType { + if x, ok := m.GetCloud().(*GetSpecType_AzureVnetSite); ok { + return x.AzureVnetSite + } + return nil +} + func (m *GetSpecType) GetSegment() *views.ObjectRefType { if m != nil { return m.Segment @@ -1753,230 +2721,673 @@ func (m *GetSpecType) GetState() CloudConnectState { return DOWN } +func (m *GetSpecType) GetOnboardedVpc() uint32 { + if m != nil { + return m.OnboardedVpc + } + return 0 +} + +func (m *GetSpecType) GetCoordinates() *site.Coordinates { + if m != nil { + return m.Coordinates + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ (*GetSpecType_AwsRe)(nil), (*GetSpecType_AwsTgwSite)(nil), + (*GetSpecType_AzureVnetSite)(nil), } } -func init() { - proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectState", CloudConnectState_name, CloudConnectState_value) - golang_proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectState", CloudConnectState_name, CloudConnectState_value) - proto.RegisterType((*AWSREType)(nil), "ves.io.schema.cloud_connect.AWSREType") - golang_proto.RegisterType((*AWSREType)(nil), "ves.io.schema.cloud_connect.AWSREType") - proto.RegisterType((*PeerType)(nil), "ves.io.schema.cloud_connect.PeerType") - golang_proto.RegisterType((*PeerType)(nil), "ves.io.schema.cloud_connect.PeerType") - proto.RegisterType((*CloudLinkListType)(nil), "ves.io.schema.cloud_connect.CloudLinkListType") - golang_proto.RegisterType((*CloudLinkListType)(nil), "ves.io.schema.cloud_connect.CloudLinkListType") - proto.RegisterType((*AWSVPCAttachmentListType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentListType") - golang_proto.RegisterType((*AWSVPCAttachmentListType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentListType") - proto.RegisterType((*AWSVPCAttachmentType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentType") - golang_proto.RegisterType((*AWSVPCAttachmentType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentType") - proto.RegisterType((*DefaultRoute)(nil), "ves.io.schema.cloud_connect.DefaultRoute") - golang_proto.RegisterType((*DefaultRoute)(nil), "ves.io.schema.cloud_connect.DefaultRoute") - proto.RegisterType((*AWSSubnetIDListType)(nil), "ves.io.schema.cloud_connect.AWSSubnetIDListType") - golang_proto.RegisterType((*AWSSubnetIDListType)(nil), "ves.io.schema.cloud_connect.AWSSubnetIDListType") - proto.RegisterType((*AWSRouteTableListType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableListType") - golang_proto.RegisterType((*AWSRouteTableListType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableListType") - proto.RegisterType((*AWSDefaultRoutesRouteTable)(nil), "ves.io.schema.cloud_connect.AWSDefaultRoutesRouteTable") - golang_proto.RegisterType((*AWSDefaultRoutesRouteTable)(nil), "ves.io.schema.cloud_connect.AWSDefaultRoutesRouteTable") - proto.RegisterType((*AWSRouteTableType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableType") - golang_proto.RegisterType((*AWSRouteTableType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableType") - proto.RegisterType((*ReplaceAWSREType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSREType") - golang_proto.RegisterType((*ReplaceAWSREType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSREType") - proto.RegisterType((*AWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.AWSTGWSiteType") - golang_proto.RegisterType((*AWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.AWSTGWSiteType") - proto.RegisterType((*ReplaceAWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSTGWSiteType") - golang_proto.RegisterType((*ReplaceAWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSTGWSiteType") - proto.RegisterType((*CloudConnectStatusType)(nil), "ves.io.schema.cloud_connect.CloudConnectStatusType") - golang_proto.RegisterType((*CloudConnectStatusType)(nil), "ves.io.schema.cloud_connect.CloudConnectStatusType") - proto.RegisterType((*AWSAttachmentsListStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsListStatusType") - golang_proto.RegisterType((*AWSAttachmentsListStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsListStatusType") - proto.RegisterType((*AWSAttachmentsStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType") - golang_proto.RegisterType((*AWSAttachmentsStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType.TagsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType.TagsEntry") - proto.RegisterType((*SubnetStatusType)(nil), "ves.io.schema.cloud_connect.SubnetStatusType") - golang_proto.RegisterType((*SubnetStatusType)(nil), "ves.io.schema.cloud_connect.SubnetStatusType") - proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.cloud_connect.GlobalSpecType") - golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.cloud_connect.GlobalSpecType") - proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.cloud_connect.CreateSpecType") - golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.cloud_connect.CreateSpecType") - proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.cloud_connect.ReplaceSpecType") - golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.cloud_connect.ReplaceSpecType") - proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.cloud_connect.GetSpecType") - golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.cloud_connect.GetSpecType") +// Label Filter +// +// x-displayName: "Label Filter" +// Metrics used in the cloud connect are tagged with labels listed in the enum Label. +// Label Filter is used to filter the timeseries that match the specified label key/value +// and the operator. +type LabelFilter struct { + // Label + // + // x-displayName: "Label" + // Label name + Label Label `protobuf:"varint,1,opt,name=label,proto3,enum=ves.io.schema.cloud_connect.Label" json:"label,omitempty"` + // Operator + // + // x-displayName: "Operator" + // Operator to be applied on the label + Op schema.MetricLabelOp `protobuf:"varint,2,opt,name=op,proto3,enum=ves.io.schema.MetricLabelOp" json:"op,omitempty"` + // Value + // + // x-displayName: "Value" + // x-example: "ce01" + // Value of the label + Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` } -func init() { - proto.RegisterFile("ves.io/schema/cloud_connect/types.proto", fileDescriptor_245b6fb3a531fd11) +func (m *LabelFilter) Reset() { *m = LabelFilter{} } +func (*LabelFilter) ProtoMessage() {} +func (*LabelFilter) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{30} } -func init() { - golang_proto.RegisterFile("ves.io/schema/cloud_connect/types.proto", fileDescriptor_245b6fb3a531fd11) +func (m *LabelFilter) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -var fileDescriptor_245b6fb3a531fd11 = []byte{ - // 2521 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x59, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xe6, 0xf0, 0x4f, 0xe4, 0x93, 0x44, 0xad, 0xc6, 0xb2, 0x43, 0xcb, 0x06, 0xbd, 0xdd, 0xda, - 0x89, 0x6c, 0x4b, 0x94, 0x44, 0x3b, 0x75, 0xac, 0xb6, 0x49, 0x48, 0x51, 0xb5, 0x28, 0x18, 0xb6, - 0xba, 0x72, 0xec, 0x26, 0x41, 0xcc, 0x2e, 0x77, 0x47, 0xf4, 0xd6, 0xab, 0xdd, 0xc5, 0xee, 0x92, - 0xac, 0xd2, 0xaa, 0x70, 0x73, 0xc8, 0x21, 0x97, 0x06, 0x3e, 0xf7, 0x50, 0x14, 0x28, 0x10, 0x18, - 0x28, 0x7a, 0x69, 0x03, 0xd4, 0x74, 0x01, 0x23, 0xa7, 0xc0, 0xe8, 0x41, 0x47, 0x1f, 0x7a, 0xa8, - 0xe5, 0x8b, 0x7b, 0x0b, 0x7a, 0x0a, 0x72, 0x2a, 0x66, 0x66, 0x77, 0xf9, 0x63, 0x9a, 0xfe, 0xa9, - 0x0b, 0x14, 0xb9, 0xed, 0xee, 0xcc, 0xfb, 0xde, 0x7b, 0xdf, 0x7b, 0xf3, 0xe6, 0x3d, 0x12, 0x5e, - 0x6b, 0x12, 0x37, 0xaf, 0x5b, 0xf3, 0xae, 0x7a, 0x8d, 0x6c, 0x29, 0xf3, 0xaa, 0x61, 0x35, 0xb4, - 0xaa, 0x6a, 0x99, 0x26, 0x51, 0xbd, 0x79, 0x6f, 0xdb, 0x26, 0x6e, 0xde, 0x76, 0x2c, 0xcf, 0xc2, - 0x87, 0xf8, 0xc6, 0x3c, 0xdf, 0x98, 0xef, 0xd9, 0x38, 0x3d, 0x57, 0xd7, 0xbd, 0x6b, 0x8d, 0x5a, - 0x5e, 0xb5, 0xb6, 0xe6, 0xeb, 0x56, 0xdd, 0x9a, 0x67, 0x32, 0xb5, 0xc6, 0x26, 0x7b, 0x63, 0x2f, - 0xec, 0x89, 0x63, 0x4d, 0x1f, 0xa9, 0x5b, 0x56, 0xdd, 0x20, 0x9d, 0x5d, 0x9e, 0xbe, 0x45, 0x5c, - 0x4f, 0xd9, 0xb2, 0xfd, 0x0d, 0xc7, 0x07, 0x59, 0xe5, 0x90, 0xaa, 0x43, 0xea, 0xba, 0x65, 0x76, - 0xdb, 0x35, 0x7d, 0xa8, 0x77, 0xab, 0x65, 0x7b, 0xba, 0x65, 0x06, 0x8b, 0x07, 0x7b, 0x17, 0xbb, - 0xe5, 0x0e, 0xf7, 0x2e, 0x35, 0x15, 0x43, 0xd7, 0x14, 0x8f, 0xf8, 0xab, 0x62, 0xdf, 0xaa, 0x4e, - 0x5a, 0xd5, 0x5e, 0xe8, 0x23, 0x8f, 0xef, 0x70, 0xbb, 0x15, 0x48, 0x9f, 0xc4, 0x21, 0x5d, 0xbc, - 0xb2, 0x21, 0xaf, 0x5c, 0xda, 0xb6, 0x09, 0x56, 0x20, 0xc9, 0x8d, 0xcf, 0x22, 0x11, 0xcd, 0x8c, - 0x16, 0xa4, 0x7c, 0x2f, 0x9f, 0x4c, 0x3e, 0x7f, 0xb1, 0xf6, 0x33, 0xa2, 0x7a, 0x32, 0xd9, 0xa4, - 0x32, 0xa5, 0x63, 0xb7, 0x76, 0xc6, 0x02, 0xd7, 0xa9, 0xe8, 0x8d, 0x3b, 0x08, 0xdd, 0xbe, 0x83, - 0x32, 0x29, 0x34, 0x83, 0x16, 0xd0, 0x52, 0x52, 0xb5, 0xcc, 0x4d, 0xbd, 0x2e, 0xfb, 0xc0, 0xf8, - 0x2a, 0xc4, 0x55, 0x87, 0x68, 0xd9, 0xe8, 0x33, 0x2b, 0x78, 0xf5, 0xd6, 0xce, 0xa4, 0x1f, 0x48, - 0x87, 0x68, 0xc4, 0xf4, 0x74, 0xc5, 0x70, 0x07, 0x68, 0x60, 0xb8, 0x58, 0x83, 0x89, 0xa6, 0xad, - 0x56, 0x15, 0xcf, 0x53, 0xd4, 0x6b, 0x5b, 0xc4, 0xf4, 0xdc, 0x6c, 0x8c, 0xa9, 0x7a, 0x3d, 0x3f, - 0x24, 0x37, 0xf2, 0xc5, 0x2b, 0x1b, 0x97, 0xd7, 0x97, 0x8b, 0xa1, 0xd4, 0x79, 0xdd, 0xf5, 0x98, - 0xf6, 0xf8, 0x57, 0x6d, 0x84, 0xe4, 0x4c, 0xd3, 0x56, 0x3b, 0x8b, 0x2e, 0x7e, 0x07, 0x46, 0xb9, - 0xbc, 0xa1, 0x9b, 0xd7, 0xdd, 0x6c, 0x9c, 0x69, 0xc8, 0x0f, 0xd5, 0xb0, 0x4c, 0xdf, 0xce, 0xeb, - 0xe6, 0xf5, 0x3e, 0x68, 0x50, 0x83, 0x05, 0x17, 0x1f, 0x84, 0x98, 0x57, 0x6f, 0x65, 0x13, 0x22, - 0x9a, 0x49, 0x97, 0x46, 0xee, 0xef, 0xa0, 0x47, 0x74, 0x07, 0xfd, 0x86, 0xcb, 0x90, 0xb0, 0x09, - 0x71, 0xdc, 0x6c, 0x5a, 0x8c, 0xcd, 0x8c, 0x16, 0x8e, 0x0d, 0xd5, 0xb5, 0x4e, 0x88, 0xc3, 0x54, - 0x84, 0x18, 0x5c, 0x78, 0x09, 0xfe, 0xfd, 0xe6, 0xc8, 0xe2, 0x6c, 0x61, 0xf6, 0xd4, 0xec, 0xe9, - 0xb5, 0x78, 0x2a, 0x29, 0x8c, 0xac, 0xc5, 0x53, 0x23, 0x42, 0x6a, 0x2d, 0x9e, 0x4a, 0x09, 0x69, - 0xe9, 0x4f, 0x08, 0x52, 0x81, 0x28, 0x3e, 0x02, 0xa3, 0x5e, 0xbd, 0x55, 0x55, 0x34, 0xcd, 0x21, - 0xae, 0xcb, 0x12, 0x22, 0x2d, 0x83, 0x57, 0x6f, 0x15, 0xf9, 0x17, 0x7c, 0x10, 0x52, 0x14, 0xb4, - 0xaa, 0xb8, 0x26, 0x8b, 0x66, 0x4c, 0x1e, 0xa1, 0xef, 0x45, 0xd7, 0xc4, 0xdf, 0x87, 0xb8, 0x69, - 0x69, 0xc4, 0x67, 0xfe, 0xb5, 0x81, 0xb6, 0x86, 0x07, 0x25, 0x7f, 0xc1, 0xd2, 0x08, 0x55, 0x29, - 0x33, 0x21, 0x7c, 0x02, 0x26, 0x75, 0xd3, 0xd5, 0x35, 0x52, 0xad, 0x3b, 0xa4, 0xea, 0x36, 0x6a, - 0x26, 0xf1, 0x18, 0xc3, 0x69, 0x79, 0x82, 0x2f, 0x9c, 0x73, 0xc8, 0x06, 0xfb, 0x2c, 0xfd, 0x1a, - 0xc1, 0xe4, 0x63, 0xc4, 0x62, 0x03, 0xa0, 0x13, 0x9d, 0x2c, 0x62, 0x84, 0x3d, 0x4b, 0xa6, 0x1d, - 0xbf, 0xb5, 0xd3, 0x25, 0xf8, 0x78, 0x8a, 0xdd, 0xfe, 0xd7, 0xdd, 0x58, 0xe2, 0x26, 0x8a, 0x0a, - 0x48, 0x4e, 0x87, 0x51, 0x93, 0x1a, 0x90, 0x7d, 0x52, 0xf6, 0xe0, 0x77, 0x21, 0x45, 0xb3, 0xd1, - 0xd0, 0x5d, 0xcf, 0xb7, 0x63, 0xf1, 0xb9, 0xd2, 0x90, 0x99, 0x35, 0x4a, 0xf5, 0x26, 0x6f, 0xa2, - 0x98, 0x70, 0x03, 0xc9, 0x23, 0x4d, 0x5b, 0xa5, 0xf0, 0xd2, 0xef, 0x93, 0x30, 0x35, 0x68, 0x3b, - 0x56, 0x21, 0x49, 0x75, 0xea, 0x1a, 0x8f, 0x59, 0xe9, 0xfc, 0xd7, 0x6d, 0x14, 0xb9, 0x7d, 0x07, - 0x09, 0x29, 0xea, 0x0a, 0x77, 0x70, 0x4e, 0x53, 0x3c, 0x85, 0xc2, 0xc6, 0x9d, 0x68, 0xf6, 0x6d, - 0xfa, 0xf0, 0xaa, 0x73, 0xb4, 0x20, 0x5d, 0x9d, 0x69, 0xda, 0xea, 0xdc, 0xf1, 0x99, 0xf7, 0x95, - 0xb9, 0x0f, 0x17, 0xe6, 0xce, 0x7e, 0xf0, 0x8b, 0x37, 0x76, 0x7e, 0x19, 0x3e, 0x2f, 0x9e, 0xd9, - 0x39, 0x7e, 0x54, 0x4e, 0x34, 0x6d, 0xb5, 0xa2, 0xe1, 0x1f, 0x42, 0x66, 0x4b, 0x31, 0x1b, 0x8a, - 0x51, 0x75, 0xac, 0x86, 0xa7, 0x9b, 0xf5, 0x6c, 0x92, 0xc5, 0x7a, 0xaa, 0xcf, 0xbd, 0x95, 0x2d, - 0xdb, 0xdb, 0x5e, 0x8d, 0xc8, 0xe3, 0x7c, 0xb7, 0xcc, 0x37, 0xe3, 0x75, 0x18, 0xd7, 0xc8, 0xa6, - 0xd2, 0x30, 0x3c, 0x26, 0x4f, 0xb2, 0x69, 0x26, 0x7d, 0x7c, 0x28, 0x39, 0x65, 0x2e, 0x41, 0x31, - 0xc8, 0x6a, 0x44, 0x1e, 0xd3, 0xba, 0xde, 0xf1, 0xfb, 0x90, 0x51, 0x1b, 0xae, 0x67, 0x6d, 0x85, - 0x06, 0x01, 0x83, 0x2c, 0x3c, 0x8d, 0x6f, 0x26, 0x7e, 0x49, 0xa9, 0x19, 0x24, 0x88, 0x1a, 0x35, - 0x97, 0x63, 0xf9, 0xe6, 0x2e, 0x3d, 0x8a, 0xde, 0x6b, 0xa3, 0x87, 0x51, 0xc0, 0x90, 0xbc, 0xbc, - 0xbe, 0x2c, 0x56, 0xca, 0xd3, 0xa9, 0x80, 0x64, 0xf8, 0x7b, 0x14, 0x32, 0xfe, 0x3e, 0x71, 0xf9, - 0x9a, 0xa5, 0xab, 0xe4, 0xc4, 0x5f, 0xa3, 0xf0, 0x79, 0x14, 0xe6, 0xfa, 0x29, 0x2a, 0x1c, 0xba, - 0x60, 0x89, 0xcc, 0x5d, 0x57, 0x6c, 0xe9, 0x86, 0x21, 0xd6, 0x88, 0xa8, 0x9b, 0xae, 0xa7, 0x18, - 0x06, 0xd1, 0xe0, 0x3c, 0xe4, 0x7a, 0x28, 0xc9, 0x2b, 0x06, 0x97, 0x24, 0x55, 0x8f, 0x5a, 0xe7, - 0x16, 0x4e, 0x5c, 0x6c, 0x12, 0xc7, 0xd1, 0x35, 0x22, 0xfa, 0x4c, 0x88, 0xcc, 0x76, 0x71, 0xd3, - 0x72, 0x44, 0xc5, 0x30, 0xc4, 0x8e, 0x27, 0x2e, 0x5c, 0x87, 0x53, 0xbd, 0x68, 0x2e, 0x31, 0x88, - 0xea, 0xe9, 0x4d, 0xd2, 0x83, 0x99, 0xef, 0x7a, 0xa9, 0xea, 0x9a, 0x74, 0x5a, 0x48, 0x9c, 0x58, - 0x18, 0xa2, 0x66, 0x23, 0x40, 0xe9, 0x51, 0xb6, 0x06, 0x87, 0x7a, 0xb9, 0xef, 0x86, 0x75, 0xa5, - 0x93, 0x42, 0x42, 0xca, 0xf4, 0x2a, 0x3a, 0xf1, 0xca, 0x32, 0x13, 0x10, 0x97, 0x2b, 0x65, 0xd9, - 0xed, 0x02, 0x2b, 0xcd, 0x40, 0xc6, 0x07, 0xa9, 0xaa, 0x8c, 0x4d, 0x7c, 0xe0, 0x6e, 0x1b, 0x25, - 0x77, 0xdb, 0x28, 0xb1, 0xd7, 0x46, 0xc9, 0xef, 0xcd, 0x9e, 0x9d, 0x5d, 0x5c, 0xf8, 0xdd, 0x1d, - 0x84, 0xd6, 0xe2, 0xa9, 0xa8, 0x10, 0x5b, 0x8b, 0xa7, 0x62, 0x42, 0x7c, 0x2d, 0x9e, 0x8a, 0x0b, - 0x89, 0xb5, 0x78, 0x2a, 0x21, 0x24, 0x7b, 0x2a, 0xda, 0x37, 0x08, 0xc6, 0xba, 0xd3, 0x06, 0xbf, - 0x0d, 0x42, 0x3f, 0xaf, 0xfe, 0x5d, 0xf7, 0xa4, 0xcc, 0xcd, 0x28, 0x86, 0xd1, 0xe5, 0x2c, 0xb6, - 0xe0, 0xc0, 0x60, 0x2e, 0xfd, 0x5b, 0xe0, 0xcc, 0xd3, 0x12, 0xae, 0xdb, 0x1e, 0xb7, 0x83, 0xbc, - 0x1a, 0x91, 0xa7, 0x42, 0xe0, 0x2e, 0x85, 0xa5, 0x93, 0x30, 0xd5, 0x13, 0xca, 0x80, 0x97, 0x7d, - 0x77, 0xdb, 0x08, 0xed, 0xb6, 0x51, 0x6c, 0xaf, 0x8d, 0x62, 0x8b, 0xb3, 0xa7, 0xfb, 0x49, 0x91, - 0xfe, 0x82, 0x60, 0x5f, 0xf1, 0xca, 0x06, 0x2f, 0x95, 0x95, 0x72, 0x58, 0x94, 0x3e, 0x46, 0x00, - 0xbc, 0xac, 0x56, 0x75, 0xcd, 0x65, 0x75, 0x29, 0x5d, 0xaa, 0xdf, 0xbe, 0x83, 0xb0, 0x5f, 0xee, - 0xfa, 0x6a, 0x44, 0xfe, 0x26, 0x3a, 0x29, 0x1d, 0x77, 0x5e, 0x2b, 0x1c, 0xbb, 0x3a, 0xc3, 0xe5, - 0x86, 0x96, 0x88, 0xb0, 0x4a, 0xc6, 0x83, 0xa7, 0x14, 0x0a, 0x9e, 0xb2, 0x48, 0x4e, 0x73, 0x88, - 0x8a, 0xe6, 0x2e, 0xed, 0xff, 0xa2, 0x8d, 0x26, 0x61, 0x02, 0x80, 0x9b, 0x28, 0x56, 0xca, 0x2e, - 0x46, 0x8b, 0xd2, 0x67, 0x08, 0xf6, 0x0f, 0x3c, 0x98, 0xd8, 0x81, 0xb1, 0xbe, 0xc8, 0xc5, 0x9e, - 0x7a, 0xef, 0xf6, 0x20, 0xb1, 0x7a, 0x7a, 0x24, 0xac, 0xa7, 0x5f, 0xa2, 0x81, 0x26, 0x8e, 0x3a, - 0x1d, 0xfa, 0x97, 0x0e, 0x7d, 0xd1, 0x46, 0xaf, 0xc0, 0xfe, 0xce, 0x21, 0xf7, 0xf3, 0x00, 0x2d, - 0xce, 0x20, 0xe9, 0xb7, 0x08, 0xa6, 0x9f, 0x1c, 0x52, 0xfc, 0x2b, 0xe8, 0xcb, 0x7b, 0x9f, 0xec, - 0x9f, 0xf8, 0x25, 0xf9, 0x09, 0x84, 0x73, 0x33, 0x06, 0x95, 0x67, 0xc7, 0xab, 0x0d, 0x2f, 0xcf, - 0x63, 0x1d, 0xd3, 0x2b, 0x9a, 0xf4, 0xc7, 0x28, 0x4c, 0x3e, 0xe6, 0x3f, 0xf6, 0x06, 0x58, 0x45, - 0x2f, 0x8a, 0x0b, 0xc3, 0xad, 0xfa, 0xef, 0x6c, 0xc1, 0x32, 0x8c, 0xbb, 0x9e, 0xe2, 0xe9, 0x2a, - 0xcf, 0x62, 0x37, 0x6b, 0x30, 0x2a, 0xe6, 0x28, 0x22, 0xdc, 0x44, 0x23, 0x52, 0xc2, 0x89, 0x7d, - 0x8d, 0xc2, 0x30, 0x08, 0x85, 0x81, 0xa1, 0x19, 0xe3, 0x18, 0x9c, 0xe9, 0xa5, 0x0b, 0xf7, 0xda, - 0x68, 0x0d, 0x8e, 0x82, 0xd0, 0x13, 0x1b, 0x5a, 0x9f, 0x85, 0x7e, 0x1f, 0x41, 0x82, 0xf1, 0x0d, - 0x26, 0xcb, 0xab, 0x8d, 0x5b, 0x9a, 0xec, 0x33, 0x48, 0x00, 0xe9, 0x06, 0x02, 0x41, 0x26, 0xb6, - 0xa1, 0xa8, 0xa4, 0xd3, 0x14, 0x5f, 0x7d, 0xb9, 0x1d, 0x65, 0x7f, 0x2f, 0xb9, 0x34, 0x76, 0xef, - 0xcd, 0x4e, 0x0b, 0x2e, 0xb5, 0xa3, 0x90, 0x29, 0x5e, 0xd9, 0xb8, 0x74, 0xee, 0xca, 0x86, 0xee, - 0xf1, 0x78, 0x7d, 0x00, 0x71, 0x57, 0xf7, 0xc8, 0x73, 0xf6, 0xe4, 0x4a, 0xcb, 0xad, 0xd2, 0x06, - 0x8e, 0x8a, 0x3e, 0xa1, 0x27, 0x67, 0xb0, 0xdf, 0x8e, 0x8e, 0x9c, 0xdf, 0x00, 0xd2, 0xa7, 0x08, - 0xf6, 0x77, 0x02, 0xd8, 0x4d, 0xe2, 0x4b, 0xb7, 0x62, 0x77, 0x80, 0x15, 0x4b, 0x93, 0xf7, 0xde, - 0xec, 0x8b, 0x9e, 0xf4, 0x39, 0x82, 0x03, 0xac, 0x45, 0x5d, 0xe6, 0x90, 0x34, 0x09, 0x1b, 0x2e, - 0xb3, 0xc9, 0x86, 0x03, 0x3d, 0xda, 0xaa, 0x34, 0x66, 0x2c, 0xd4, 0x3c, 0x16, 0x67, 0x9f, 0x66, - 0x5a, 0x97, 0x6a, 0x6a, 0x58, 0x07, 0x7a, 0x35, 0x22, 0xef, 0x53, 0xbb, 0x94, 0x16, 0x5b, 0x2e, - 0x35, 0xa8, 0x74, 0x14, 0xb2, 0xbd, 0x1a, 0x35, 0x62, 0x1b, 0xd6, 0x36, 0x45, 0xc0, 0x29, 0xea, - 0x91, 0x7f, 0x89, 0x20, 0x21, 0x2a, 0x7d, 0x84, 0xe0, 0xf0, 0x30, 0x1d, 0xb8, 0x06, 0x93, 0x1d, - 0x3a, 0xab, 0x2e, 0x5b, 0xf0, 0x4b, 0xf2, 0xeb, 0xcf, 0x61, 0x79, 0x07, 0x51, 0x16, 0x3a, 0x78, - 0xfc, 0xab, 0xf4, 0x49, 0x92, 0x75, 0xd7, 0x03, 0xb7, 0xd3, 0x49, 0x81, 0x8d, 0x28, 0x1d, 0x23, - 0x74, 0x9e, 0xc6, 0x69, 0x79, 0x82, 0x0e, 0x2a, 0xe1, 0xf7, 0x8a, 0x86, 0xdf, 0x82, 0x71, 0xd5, - 0x21, 0x0a, 0x1d, 0x8e, 0xab, 0x74, 0x90, 0xf7, 0x4f, 0xd3, 0x74, 0x9e, 0x4f, 0xf9, 0xf9, 0x60, - 0xca, 0xcf, 0x5f, 0x0a, 0xa6, 0x7c, 0x79, 0x2c, 0x10, 0xa0, 0x9f, 0xf0, 0xfe, 0xb0, 0xad, 0xe6, - 0xb3, 0x88, 0xdf, 0x08, 0x8b, 0x30, 0x46, 0x3f, 0x5b, 0x2d, 0x93, 0x38, 0x74, 0x31, 0xc1, 0xe7, - 0xa4, 0xa6, 0xad, 0x5e, 0xa4, 0x9f, 0x2a, 0x1a, 0x9e, 0x82, 0x04, 0xe5, 0x86, 0xb0, 0x0e, 0x39, - 0x2d, 0xf3, 0x17, 0x7c, 0x12, 0x26, 0x3b, 0xdc, 0x07, 0xe4, 0x8d, 0xb0, 0x1d, 0x42, 0x67, 0x81, - 0x3b, 0x8b, 0xdf, 0x85, 0xb8, 0xa7, 0xd4, 0xdd, 0x6c, 0x8a, 0x91, 0xfb, 0xd6, 0x0b, 0x91, 0x9b, - 0xbf, 0xa4, 0xd4, 0xdd, 0x15, 0xd3, 0x73, 0xb6, 0x4b, 0x71, 0x36, 0x12, 0x32, 0x48, 0x7c, 0x0e, - 0x46, 0xf8, 0x85, 0xec, 0x66, 0x81, 0xa1, 0xcf, 0x0d, 0x45, 0xe7, 0x37, 0x75, 0x57, 0xc8, 0x02, - 0x69, 0xfc, 0x01, 0x08, 0x61, 0x33, 0x1b, 0x94, 0xf8, 0xf4, 0x8b, 0xb6, 0xe0, 0x6c, 0xd2, 0xe3, - 0x58, 0xbc, 0x5a, 0x4f, 0x9f, 0x81, 0x74, 0xe8, 0x00, 0x16, 0x20, 0x76, 0x9d, 0x6c, 0xfb, 0x33, - 0x29, 0x7d, 0xa4, 0x24, 0x37, 0x15, 0xa3, 0x41, 0xfc, 0xf0, 0xf3, 0x97, 0xa5, 0xe8, 0x1b, 0x68, - 0xe9, 0x0b, 0x74, 0xaf, 0x8d, 0xfe, 0x86, 0x06, 0xf6, 0xee, 0x47, 0x61, 0xbc, 0xc3, 0x15, 0x5d, - 0xda, 0x37, 0x20, 0xa3, 0x40, 0x84, 0xf1, 0x65, 0x3f, 0x13, 0x44, 0x9a, 0x0a, 0xd3, 0x13, 0x7d, - 0xb9, 0x04, 0xdf, 0x85, 0x49, 0x8a, 0xcd, 0x22, 0x2e, 0x16, 0x55, 0xd5, 0x6a, 0x98, 0xde, 0x74, - 0xa6, 0x37, 0x33, 0x40, 0x80, 0x04, 0xe5, 0x8d, 0x4c, 0x8f, 0xf8, 0x09, 0x01, 0x33, 0x30, 0x59, - 0x0e, 0x43, 0x2d, 0x72, 0x52, 0xa9, 0x09, 0x8f, 0x25, 0x86, 0xdf, 0xd0, 0x3d, 0x8c, 0x81, 0xd0, - 0x1f, 0x00, 0xbc, 0x00, 0x53, 0x26, 0xf1, 0x5a, 0x96, 0x73, 0xbd, 0xaa, 0x9b, 0x1e, 0x71, 0x36, - 0x15, 0xb5, 0x73, 0xa7, 0xcb, 0xd8, 0x5f, 0xab, 0x04, 0x4b, 0x15, 0x0d, 0x1f, 0x83, 0x4c, 0x67, - 0xa7, 0xb7, 0x6d, 0x07, 0xa4, 0x8d, 0x87, 0x5f, 0x03, 0x60, 0xdb, 0xd1, 0x9b, 0x8a, 0x47, 0xaa, - 0xba, 0xdd, 0x3c, 0x1d, 0xfe, 0x12, 0x10, 0xe3, 0xc0, 0xfe, 0x5a, 0xc5, 0x6e, 0x9e, 0x0e, 0x7e, - 0x11, 0x38, 0x09, 0x93, 0x4a, 0x53, 0xd1, 0x0d, 0xa5, 0xa6, 0x1b, 0xba, 0xb7, 0x5d, 0xfd, 0xd0, - 0x32, 0x89, 0x7f, 0x5a, 0x84, 0xee, 0x85, 0xf7, 0x2c, 0x93, 0xe0, 0x43, 0x90, 0x0e, 0x9b, 0x50, - 0xff, 0xd4, 0xa4, 0x82, 0xd6, 0x10, 0x1f, 0x80, 0xa4, 0x7f, 0x24, 0xf8, 0xa1, 0xf1, 0xdf, 0x96, - 0x1e, 0xd0, 0x60, 0xfe, 0x03, 0x41, 0x1e, 0xa6, 0x2e, 0x70, 0xc7, 0xc4, 0xd0, 0x33, 0x1a, 0xbf, - 0x03, 0x83, 0xc9, 0x00, 0x09, 0x32, 0x9d, 0x7d, 0xd4, 0x3b, 0xda, 0x20, 0xf4, 0x92, 0x40, 0x31, - 0xd7, 0xb9, 0x4f, 0x62, 0x65, 0xfd, 0xf2, 0x69, 0xd1, 0xf7, 0x8a, 0x62, 0x0e, 0xe2, 0x81, 0x46, - 0xaf, 0xd8, 0xe5, 0x94, 0x48, 0xbd, 0xa2, 0xd1, 0x7b, 0x8c, 0x02, 0xc8, 0x42, 0x3a, 0xec, 0x70, - 0xa7, 0x47, 0xbb, 0xfc, 0xa6, 0x49, 0xe9, 0x87, 0x3d, 0x15, 0x78, 0x2c, 0x7d, 0x9c, 0x80, 0xcc, - 0x39, 0xc3, 0xaa, 0x29, 0xc6, 0x86, 0x4d, 0x54, 0x16, 0x8a, 0x15, 0x48, 0xd2, 0xab, 0xc1, 0x09, - 0x2e, 0x86, 0x57, 0x9f, 0x7a, 0xa2, 0x56, 0xf8, 0x25, 0x45, 0x0f, 0xfa, 0x6a, 0x44, 0x4e, 0x28, - 0x2d, 0x57, 0x26, 0xf8, 0x22, 0xf4, 0x74, 0x05, 0xac, 0xdc, 0x8c, 0x16, 0x4e, 0x3e, 0x0d, 0xac, - 0xeb, 0x36, 0x5b, 0x8d, 0xc8, 0xa0, 0xb4, 0xdc, 0x4b, 0xf5, 0x16, 0xfd, 0x82, 0x57, 0x61, 0xc4, - 0x25, 0x75, 0x9a, 0xa8, 0xd9, 0xf1, 0x67, 0xee, 0x1e, 0xe0, 0xd6, 0x4e, 0x20, 0x25, 0x07, 0x0f, - 0xb8, 0x08, 0x42, 0x4d, 0x31, 0xb5, 0x96, 0xae, 0x79, 0xd7, 0xaa, 0xaf, 0x2f, 0x2c, 0x6c, 0xd5, - 0x82, 0xea, 0x31, 0x78, 0x2e, 0x43, 0xf2, 0x44, 0xb8, 0x9f, 0x6f, 0xc7, 0x25, 0x48, 0x50, 0xaf, - 0xdc, 0xec, 0x18, 0xab, 0x63, 0x87, 0xfb, 0xe4, 0x7a, 0x8d, 0xc8, 0xdc, 0xda, 0x61, 0xdd, 0x4f, - 0xf8, 0xfb, 0x18, 0x13, 0xc5, 0x3f, 0x85, 0x89, 0xa6, 0xee, 0x78, 0x74, 0x68, 0xf7, 0xf3, 0x28, - 0x9b, 0x79, 0x06, 0xb4, 0x83, 0xb7, 0x76, 0xfa, 0xe5, 0x02, 0xe0, 0x8c, 0xff, 0xdd, 0x4f, 0x57, - 0x5c, 0x0e, 0x6e, 0x83, 0x09, 0x11, 0xcd, 0x64, 0x9e, 0xe5, 0x37, 0xc3, 0xae, 0xbe, 0x81, 0xf8, - 0xb7, 0x47, 0xe9, 0x30, 0x24, 0xd8, 0x4e, 0x36, 0x04, 0x46, 0xe9, 0xc5, 0x4d, 0x87, 0xc0, 0xc2, - 0xec, 0x19, 0xaa, 0xb3, 0xf4, 0x9d, 0x6e, 0x32, 0xf9, 0x0f, 0xc2, 0x78, 0xfc, 0x6e, 0x1b, 0xa5, - 0x77, 0xdb, 0x28, 0xb5, 0xd7, 0x46, 0xe8, 0x2c, 0xbf, 0xe2, 0x07, 0x0e, 0xcf, 0xfc, 0x47, 0x41, - 0x3a, 0x3c, 0xff, 0x21, 0x0a, 0x19, 0x56, 0xf8, 0x48, 0x98, 0x88, 0x6f, 0xbd, 0x58, 0x22, 0xfe, - 0x0f, 0x53, 0xf0, 0x07, 0x2f, 0x90, 0x82, 0x61, 0xda, 0xb1, 0x7e, 0xad, 0xf7, 0xac, 0x95, 0x70, - 0x40, 0x6d, 0xfa, 0xa3, 0x6f, 0x10, 0x7f, 0x1c, 0xce, 0x96, 0xf4, 0xe7, 0x28, 0x4c, 0xf8, 0x4d, - 0x67, 0x48, 0xd4, 0x8f, 0xfa, 0x88, 0x1a, 0x7e, 0xab, 0xf6, 0xcf, 0x1c, 0x1d, 0xbe, 0x2e, 0x0f, - 0xe4, 0xab, 0xf0, 0x8c, 0x68, 0xff, 0xd7, 0xb4, 0x3d, 0x8a, 0xc2, 0xe8, 0x39, 0xe2, 0x7d, 0x5b, - 0x73, 0xeb, 0xe5, 0x9c, 0xf4, 0x97, 0x42, 0xf5, 0x89, 0x53, 0xfe, 0xaf, 0xe4, 0xdd, 0x0a, 0x70, - 0x0a, 0xe2, 0xe5, 0x8b, 0x57, 0x2e, 0x08, 0x11, 0x3c, 0x06, 0xa9, 0xf2, 0xca, 0x39, 0xb9, 0x58, - 0x5e, 0x29, 0x0b, 0x08, 0x27, 0x21, 0xfa, 0xce, 0xba, 0x10, 0x2d, 0xfd, 0x06, 0xed, 0x3e, 0xc8, - 0x45, 0xee, 0x3f, 0xc8, 0x45, 0xbe, 0x7a, 0x90, 0x43, 0x37, 0xf6, 0x72, 0xe8, 0xb3, 0xbd, 0x1c, - 0xfa, 0x72, 0x2f, 0x87, 0x76, 0xf7, 0x72, 0xe8, 0xfe, 0x5e, 0x0e, 0xfd, 0x73, 0x2f, 0x87, 0x1e, - 0xed, 0xe5, 0x22, 0x5f, 0xed, 0xe5, 0xd0, 0xa7, 0x0f, 0x73, 0x91, 0xbb, 0x0f, 0x73, 0x68, 0xf7, - 0x61, 0x2e, 0x72, 0xff, 0x61, 0x2e, 0xf2, 0xde, 0x8f, 0xeb, 0x96, 0x7d, 0xbd, 0x9e, 0x6f, 0x5a, - 0x86, 0x47, 0x1c, 0x47, 0xc9, 0x37, 0xdc, 0x79, 0xf6, 0xb0, 0x69, 0x39, 0x5b, 0x73, 0xb6, 0x63, - 0x35, 0x75, 0x8d, 0x38, 0x73, 0xc1, 0xf2, 0xbc, 0x5d, 0xab, 0x5b, 0xf3, 0xe4, 0xe7, 0x9e, 0xff, - 0x4f, 0xd5, 0xa0, 0x7f, 0xfa, 0x6a, 0x49, 0xd6, 0xa4, 0x9f, 0xfa, 0x4f, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x75, 0x36, 0x94, 0x8a, 0x0f, 0x1c, 0x00, 0x00, +func (m *LabelFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *LabelFilter) XXX_Merge(src proto.Message) { + xxx_messageInfo_LabelFilter.Merge(m, src) +} +func (m *LabelFilter) XXX_Size() int { + return m.Size() +} +func (m *LabelFilter) XXX_DiscardUnknown() { + xxx_messageInfo_LabelFilter.DiscardUnknown(m) +} + +var xxx_messageInfo_LabelFilter proto.InternalMessageInfo + +func (m *LabelFilter) GetLabel() Label { + if m != nil { + return m.Label + } + return LABEL_NONE +} + +func (m *LabelFilter) GetOp() schema.MetricLabelOp { + if m != nil { + return m.Op + } + return schema.EQ +} + +func (m *LabelFilter) GetValue() string { + if m != nil { + return m.Value + } + return "" +} + +// Customer Edge +// +// x-displayName: "Customer Edge" +// Customer Edge uniquely identifies customer edge i.e. site. +type CustomerEdge struct { + // Customer Edge + // + // x-displayName: "Customer Edge" + // x-example: "Customer Edge 1" + // Name of the customer edge + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (m *CustomerEdge) Reset() { *m = CustomerEdge{} } +func (*CustomerEdge) ProtoMessage() {} +func (*CustomerEdge) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{31} +} +func (m *CustomerEdge) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CustomerEdge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CustomerEdge) XXX_Merge(src proto.Message) { + xxx_messageInfo_CustomerEdge.Merge(m, src) +} +func (m *CustomerEdge) XXX_Size() int { + return m.Size() +} +func (m *CustomerEdge) XXX_DiscardUnknown() { + xxx_messageInfo_CustomerEdge.DiscardUnknown(m) +} + +var xxx_messageInfo_CustomerEdge proto.InternalMessageInfo + +func (m *CustomerEdge) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +// Metric Data +// +// x-displayName: "Metric Data" +// MetricData contains metric type and the corresponding value for a cloud connect +type MetricData struct { + // Type + // + // x-displayName: "Type" + // Identifies the metric type + Type FieldSelector `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.cloud_connect.FieldSelector" json:"type,omitempty"` + // Unit + // + // x-displayName: "Unit" + // Unit for the metric value + Unit schema.UnitType `protobuf:"varint,2,opt,name=unit,proto3,enum=ves.io.schema.UnitType" json:"unit,omitempty"` + // Value + // + // x-displayName: "Value" + // List of metric values. May contain more than one value if timeseries data is requested. + Values []*schema.MetricValue `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty"` +} + +func (m *MetricData) Reset() { *m = MetricData{} } +func (*MetricData) ProtoMessage() {} +func (*MetricData) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{32} +} +func (m *MetricData) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MetricData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *MetricData) XXX_Merge(src proto.Message) { + xxx_messageInfo_MetricData.Merge(m, src) +} +func (m *MetricData) XXX_Size() int { + return m.Size() +} +func (m *MetricData) XXX_DiscardUnknown() { + xxx_messageInfo_MetricData.DiscardUnknown(m) +} + +var xxx_messageInfo_MetricData proto.InternalMessageInfo + +func (m *MetricData) GetType() FieldSelector { + if m != nil { + return m.Type + } + return METRIC_TYPE_NONE +} + +func (m *MetricData) GetUnit() schema.UnitType { + if m != nil { + return m.Unit + } + return schema.UNIT_MILLISECONDS +} + +func (m *MetricData) GetValues() []*schema.MetricValue { + if m != nil { + return m.Values + } + return nil +} + +// Cloud Connect Segmentation Data +// +// x-displayName: "Cloud Connect Segmentation Data" +// SegmentationData contains metric type and the corresponding value for a cloud connect +type SegmentationData struct { + // Type + // + // x-displayName: "Type" + // Identifies the segment type + Type TrafficType `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.cloud_connect.TrafficType" json:"type,omitempty"` + // Data + // + // x-displayName: "Data" + // List of metric values. May contain more than one value if timeseries data is requested. + Data []*MetricData `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"` +} + +func (m *SegmentationData) Reset() { *m = SegmentationData{} } +func (*SegmentationData) ProtoMessage() {} +func (*SegmentationData) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{33} +} +func (m *SegmentationData) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SegmentationData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SegmentationData) XXX_Merge(src proto.Message) { + xxx_messageInfo_SegmentationData.Merge(m, src) +} +func (m *SegmentationData) XXX_Size() int { + return m.Size() +} +func (m *SegmentationData) XXX_DiscardUnknown() { + xxx_messageInfo_SegmentationData.DiscardUnknown(m) +} + +var xxx_messageInfo_SegmentationData proto.InternalMessageInfo + +func (m *SegmentationData) GetType() TrafficType { + if m != nil { + return m.Type + } + return TRAFFIC_TYPE_NONE +} + +func (m *SegmentationData) GetData() []*MetricData { + if m != nil { + return m.Data + } + return nil +} + +// Cloud Connect Edge Data +// +// x-displayName: "Cloud Connect Edge Data" +// EdgeData wraps all the response data for a customer edge. +type EdgeData struct { + // CE + // + // x-displayName: "CE" + // Identifier for the customer edge + Ce *CustomerEdge `protobuf:"bytes,1,opt,name=ce,proto3" json:"ce,omitempty"` + // Metric + // + // x-displayName: "Metric" + // Metric data for the segments + Segments []*SegmentationData `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"` +} + +func (m *EdgeData) Reset() { *m = EdgeData{} } +func (*EdgeData) ProtoMessage() {} +func (*EdgeData) Descriptor() ([]byte, []int) { + return fileDescriptor_245b6fb3a531fd11, []int{34} +} +func (m *EdgeData) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EdgeData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *EdgeData) XXX_Merge(src proto.Message) { + xxx_messageInfo_EdgeData.Merge(m, src) +} +func (m *EdgeData) XXX_Size() int { + return m.Size() +} +func (m *EdgeData) XXX_DiscardUnknown() { + xxx_messageInfo_EdgeData.DiscardUnknown(m) +} + +var xxx_messageInfo_EdgeData proto.InternalMessageInfo + +func (m *EdgeData) GetCe() *CustomerEdge { + if m != nil { + return m.Ce + } + return nil +} + +func (m *EdgeData) GetSegments() []*SegmentationData { + if m != nil { + return m.Segments + } + return nil +} + +func init() { + proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectState", CloudConnectState_name, CloudConnectState_value) + golang_proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectState", CloudConnectState_name, CloudConnectState_value) + proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectVPCStateType", CloudConnectVPCStateType_name, CloudConnectVPCStateType_value) + golang_proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectVPCStateType", CloudConnectVPCStateType_name, CloudConnectVPCStateType_value) + proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectProviderType", CloudConnectProviderType_name, CloudConnectProviderType_value) + golang_proto.RegisterEnum("ves.io.schema.cloud_connect.CloudConnectProviderType", CloudConnectProviderType_name, CloudConnectProviderType_value) + proto.RegisterEnum("ves.io.schema.cloud_connect.Label", Label_name, Label_value) + golang_proto.RegisterEnum("ves.io.schema.cloud_connect.Label", Label_name, Label_value) + proto.RegisterEnum("ves.io.schema.cloud_connect.TrafficType", TrafficType_name, TrafficType_value) + golang_proto.RegisterEnum("ves.io.schema.cloud_connect.TrafficType", TrafficType_name, TrafficType_value) + proto.RegisterEnum("ves.io.schema.cloud_connect.FieldSelector", FieldSelector_name, FieldSelector_value) + golang_proto.RegisterEnum("ves.io.schema.cloud_connect.FieldSelector", FieldSelector_name, FieldSelector_value) + proto.RegisterType((*AWSREType)(nil), "ves.io.schema.cloud_connect.AWSREType") + golang_proto.RegisterType((*AWSREType)(nil), "ves.io.schema.cloud_connect.AWSREType") + proto.RegisterType((*PeerType)(nil), "ves.io.schema.cloud_connect.PeerType") + golang_proto.RegisterType((*PeerType)(nil), "ves.io.schema.cloud_connect.PeerType") + proto.RegisterType((*CloudLinkListType)(nil), "ves.io.schema.cloud_connect.CloudLinkListType") + golang_proto.RegisterType((*CloudLinkListType)(nil), "ves.io.schema.cloud_connect.CloudLinkListType") + proto.RegisterType((*AWSVPCAttachmentListType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentListType") + golang_proto.RegisterType((*AWSVPCAttachmentListType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentListType") + proto.RegisterType((*AWSVPCAttachmentType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentType") + golang_proto.RegisterType((*AWSVPCAttachmentType)(nil), "ves.io.schema.cloud_connect.AWSVPCAttachmentType") + proto.RegisterType((*AzureVnetAttachmentListType)(nil), "ves.io.schema.cloud_connect.AzureVnetAttachmentListType") + golang_proto.RegisterType((*AzureVnetAttachmentListType)(nil), "ves.io.schema.cloud_connect.AzureVnetAttachmentListType") + proto.RegisterType((*AzureVNETAttachmentType)(nil), "ves.io.schema.cloud_connect.AzureVNETAttachmentType") + golang_proto.RegisterType((*AzureVNETAttachmentType)(nil), "ves.io.schema.cloud_connect.AzureVNETAttachmentType") + proto.RegisterType((*DefaultRoute)(nil), "ves.io.schema.cloud_connect.DefaultRoute") + golang_proto.RegisterType((*DefaultRoute)(nil), "ves.io.schema.cloud_connect.DefaultRoute") + proto.RegisterType((*AWSSubnetIDListType)(nil), "ves.io.schema.cloud_connect.AWSSubnetIDListType") + golang_proto.RegisterType((*AWSSubnetIDListType)(nil), "ves.io.schema.cloud_connect.AWSSubnetIDListType") + proto.RegisterType((*AWSRouteTableListType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableListType") + golang_proto.RegisterType((*AWSRouteTableListType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableListType") + proto.RegisterType((*AWSDefaultRoutesRouteTable)(nil), "ves.io.schema.cloud_connect.AWSDefaultRoutesRouteTable") + golang_proto.RegisterType((*AWSDefaultRoutesRouteTable)(nil), "ves.io.schema.cloud_connect.AWSDefaultRoutesRouteTable") + proto.RegisterType((*AzureRouteTables)(nil), "ves.io.schema.cloud_connect.AzureRouteTables") + golang_proto.RegisterType((*AzureRouteTables)(nil), "ves.io.schema.cloud_connect.AzureRouteTables") + proto.RegisterType((*AzureRouteTableWithStaticRouteListType)(nil), "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRouteListType") + golang_proto.RegisterType((*AzureRouteTableWithStaticRouteListType)(nil), "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRouteListType") + proto.RegisterType((*AzureRouteTableWithStaticRoute)(nil), "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRoute") + golang_proto.RegisterType((*AzureRouteTableWithStaticRoute)(nil), "ves.io.schema.cloud_connect.AzureRouteTableWithStaticRoute") + proto.RegisterType((*AWSRouteTableType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableType") + golang_proto.RegisterType((*AWSRouteTableType)(nil), "ves.io.schema.cloud_connect.AWSRouteTableType") + proto.RegisterType((*ReplaceAWSREType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSREType") + golang_proto.RegisterType((*ReplaceAWSREType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSREType") + proto.RegisterType((*AWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.AWSTGWSiteType") + golang_proto.RegisterType((*AWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.AWSTGWSiteType") + proto.RegisterType((*ReplaceAWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSTGWSiteType") + golang_proto.RegisterType((*ReplaceAWSTGWSiteType)(nil), "ves.io.schema.cloud_connect.ReplaceAWSTGWSiteType") + proto.RegisterType((*AzureVNETSiteType)(nil), "ves.io.schema.cloud_connect.AzureVNETSiteType") + golang_proto.RegisterType((*AzureVNETSiteType)(nil), "ves.io.schema.cloud_connect.AzureVNETSiteType") + proto.RegisterType((*ReplaceAzureVNETSiteType)(nil), "ves.io.schema.cloud_connect.ReplaceAzureVNETSiteType") + golang_proto.RegisterType((*ReplaceAzureVNETSiteType)(nil), "ves.io.schema.cloud_connect.ReplaceAzureVNETSiteType") + proto.RegisterType((*CloudConnectStatusType)(nil), "ves.io.schema.cloud_connect.CloudConnectStatusType") + golang_proto.RegisterType((*CloudConnectStatusType)(nil), "ves.io.schema.cloud_connect.CloudConnectStatusType") + proto.RegisterType((*AWSAttachmentsListStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsListStatusType") + golang_proto.RegisterType((*AWSAttachmentsListStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsListStatusType") + proto.RegisterType((*AWSAttachmentsStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType") + golang_proto.RegisterType((*AWSAttachmentsStatusType)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType.TagsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cloud_connect.AWSAttachmentsStatusType.TagsEntry") + proto.RegisterType((*SubnetStatusType)(nil), "ves.io.schema.cloud_connect.SubnetStatusType") + golang_proto.RegisterType((*SubnetStatusType)(nil), "ves.io.schema.cloud_connect.SubnetStatusType") + proto.RegisterType((*AzureAttachmentsListStatusType)(nil), "ves.io.schema.cloud_connect.AzureAttachmentsListStatusType") + golang_proto.RegisterType((*AzureAttachmentsListStatusType)(nil), "ves.io.schema.cloud_connect.AzureAttachmentsListStatusType") + proto.RegisterType((*AzureAttachmentsStatusType)(nil), "ves.io.schema.cloud_connect.AzureAttachmentsStatusType") + golang_proto.RegisterType((*AzureAttachmentsStatusType)(nil), "ves.io.schema.cloud_connect.AzureAttachmentsStatusType") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cloud_connect.AzureAttachmentsStatusType.TagsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cloud_connect.AzureAttachmentsStatusType.TagsEntry") + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.cloud_connect.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.cloud_connect.GlobalSpecType") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.cloud_connect.CreateSpecType") + golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.cloud_connect.CreateSpecType") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.cloud_connect.ReplaceSpecType") + golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.cloud_connect.ReplaceSpecType") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.cloud_connect.GetSpecType") + golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.cloud_connect.GetSpecType") + proto.RegisterType((*LabelFilter)(nil), "ves.io.schema.cloud_connect.LabelFilter") + golang_proto.RegisterType((*LabelFilter)(nil), "ves.io.schema.cloud_connect.LabelFilter") + proto.RegisterType((*CustomerEdge)(nil), "ves.io.schema.cloud_connect.CustomerEdge") + golang_proto.RegisterType((*CustomerEdge)(nil), "ves.io.schema.cloud_connect.CustomerEdge") + proto.RegisterType((*MetricData)(nil), "ves.io.schema.cloud_connect.MetricData") + golang_proto.RegisterType((*MetricData)(nil), "ves.io.schema.cloud_connect.MetricData") + proto.RegisterType((*SegmentationData)(nil), "ves.io.schema.cloud_connect.SegmentationData") + golang_proto.RegisterType((*SegmentationData)(nil), "ves.io.schema.cloud_connect.SegmentationData") + proto.RegisterType((*EdgeData)(nil), "ves.io.schema.cloud_connect.EdgeData") + golang_proto.RegisterType((*EdgeData)(nil), "ves.io.schema.cloud_connect.EdgeData") +} + +func init() { + proto.RegisterFile("ves.io/schema/cloud_connect/types.proto", fileDescriptor_245b6fb3a531fd11) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/cloud_connect/types.proto", fileDescriptor_245b6fb3a531fd11) +} + +var fileDescriptor_245b6fb3a531fd11 = []byte{ + // 3747 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7a, 0x4f, 0x6c, 0x1b, 0x57, + 0x7a, 0xb8, 0x1e, 0xff, 0x89, 0xfc, 0x24, 0x52, 0xa3, 0x67, 0xd9, 0xa6, 0xe5, 0x80, 0x66, 0x26, + 0x76, 0x22, 0xcb, 0x12, 0x6d, 0x2b, 0x4e, 0x6c, 0x2b, 0xfb, 0x4b, 0x96, 0x14, 0x69, 0x99, 0x82, + 0x2c, 0xeb, 0x37, 0xa2, 0xe5, 0xc6, 0x41, 0xcc, 0x1d, 0xce, 0x3c, 0x53, 0x53, 0x8f, 0x66, 0x88, + 0x99, 0x21, 0x55, 0x65, 0xab, 0xae, 0x77, 0x0f, 0x8b, 0xa2, 0x45, 0x91, 0x34, 0x28, 0xd0, 0x1e, + 0x7a, 0x28, 0xf6, 0xb4, 0x30, 0xb0, 0xed, 0xa9, 0x05, 0x36, 0x34, 0x50, 0x63, 0x81, 0x16, 0x0b, + 0xa3, 0x28, 0x0c, 0xf4, 0xd0, 0x1c, 0x7a, 0x68, 0xe4, 0x4b, 0xda, 0x53, 0xb0, 0xa7, 0x45, 0x4f, + 0xc5, 0x7b, 0x6f, 0x86, 0x1c, 0x52, 0x23, 0x4a, 0x72, 0x7c, 0x49, 0xdb, 0x1b, 0x67, 0xbe, 0xbf, + 0xef, 0xfb, 0xf7, 0xbe, 0xef, 0xe3, 0xc0, 0x5b, 0x2d, 0x62, 0xe7, 0x34, 0xf3, 0xa2, 0xad, 0x6c, + 0x90, 0x4d, 0xf9, 0xa2, 0xa2, 0x9b, 0x4d, 0xb5, 0xaa, 0x98, 0x86, 0x41, 0x14, 0xe7, 0xa2, 0xb3, + 0xdd, 0x20, 0x76, 0xae, 0x61, 0x99, 0x8e, 0x89, 0x4f, 0x73, 0xc4, 0x1c, 0x47, 0xcc, 0xf5, 0x20, + 0x4e, 0xce, 0xd6, 0x35, 0x67, 0xa3, 0x59, 0xcb, 0x29, 0xe6, 0xe6, 0xc5, 0xba, 0x59, 0x37, 0x2f, + 0x32, 0x9a, 0x5a, 0xf3, 0x01, 0x7b, 0x62, 0x0f, 0xec, 0x17, 0xe7, 0x35, 0x79, 0xa6, 0x6e, 0x9a, + 0x75, 0x9d, 0x74, 0xb1, 0x1c, 0x6d, 0x93, 0xd8, 0x8e, 0xbc, 0xd9, 0x70, 0x11, 0xce, 0x07, 0x69, + 0x65, 0x91, 0xaa, 0x45, 0xea, 0x9a, 0x69, 0xf8, 0xf5, 0x9a, 0x3c, 0xdd, 0x8b, 0x6a, 0x36, 0x1c, + 0xcd, 0x34, 0x3c, 0x60, 0xa6, 0x17, 0x68, 0x6b, 0x0e, 0xe9, 0x21, 0x3e, 0xd5, 0x0b, 0xf7, 0x83, + 0x5e, 0xeb, 0x05, 0xb5, 0x64, 0x5d, 0x53, 0x65, 0x87, 0xb8, 0xd0, 0x6c, 0x1f, 0x54, 0x23, 0x5b, + 0xd5, 0x5e, 0xd1, 0x67, 0xf6, 0x62, 0xd8, 0x7e, 0x01, 0xe2, 0x1f, 0x45, 0x20, 0x91, 0xbf, 0xbb, + 0x26, 0x95, 0x2a, 0xdb, 0x0d, 0x82, 0x65, 0x88, 0xf1, 0xc3, 0xa5, 0x51, 0x16, 0x4d, 0x8d, 0xcc, + 0x89, 0xb9, 0x5e, 0x7b, 0x33, 0xfa, 0xdc, 0xed, 0xda, 0xef, 0x12, 0xc5, 0x91, 0xc8, 0x03, 0x4a, + 0x53, 0x38, 0xf7, 0x78, 0x67, 0xd4, 0x33, 0x0d, 0x25, 0x7d, 0xf4, 0x04, 0xa1, 0x2f, 0x9e, 0xa0, + 0x54, 0x1c, 0x4d, 0xa1, 0x4b, 0x68, 0x3e, 0xa6, 0x98, 0xc6, 0x03, 0xad, 0x2e, 0xb9, 0x8c, 0xf1, + 0x7d, 0x88, 0x28, 0x16, 0x51, 0xd3, 0xa1, 0x43, 0x0b, 0x78, 0xf3, 0xf1, 0xce, 0xb8, 0xeb, 0x68, + 0x8b, 0xa8, 0xc4, 0x70, 0x34, 0x59, 0xb7, 0x03, 0x24, 0x30, 0xbe, 0x58, 0x85, 0xb1, 0x56, 0x43, + 0xa9, 0xca, 0x8e, 0x23, 0x2b, 0x1b, 0x9b, 0xc4, 0x70, 0xec, 0x74, 0x98, 0x89, 0x7a, 0x27, 0x37, + 0x20, 0x76, 0x72, 0xf9, 0xbb, 0x6b, 0xeb, 0xab, 0x0b, 0xf9, 0x0e, 0xd5, 0xb2, 0x66, 0x3b, 0x4c, + 0x7a, 0xe4, 0x9b, 0x36, 0x42, 0x52, 0xaa, 0xd5, 0x50, 0xba, 0x40, 0x1b, 0xdf, 0x81, 0x11, 0x4e, + 0xaf, 0x6b, 0xc6, 0x43, 0x3b, 0x1d, 0x61, 0x12, 0x72, 0x03, 0x25, 0x2c, 0xd0, 0xa7, 0x65, 0xcd, + 0x78, 0xd8, 0xc7, 0x1a, 0x14, 0x0f, 0x60, 0xe3, 0x53, 0x10, 0x76, 0xea, 0x5b, 0xe9, 0x68, 0x16, + 0x4d, 0x25, 0x0a, 0xc3, 0x5f, 0xee, 0xa0, 0xaf, 0x29, 0x06, 0x7d, 0x87, 0x8b, 0x10, 0x6d, 0x10, + 0x62, 0xd9, 0xe9, 0x44, 0x36, 0x3c, 0x35, 0x32, 0x77, 0x6e, 0xa0, 0xac, 0x55, 0x42, 0x2c, 0x26, + 0xa2, 0xc3, 0x83, 0x13, 0xcf, 0xc3, 0x6f, 0xde, 0x1f, 0xbe, 0x3c, 0x33, 0x37, 0xf3, 0xf6, 0xcc, + 0x95, 0xa5, 0x48, 0x3c, 0x26, 0x0c, 0x2f, 0x45, 0xe2, 0xc3, 0x42, 0x7c, 0x29, 0x12, 0x8f, 0x0b, + 0x09, 0xf1, 0x6f, 0x10, 0xc4, 0x3d, 0x52, 0x7c, 0x06, 0x46, 0x9c, 0xfa, 0x56, 0x55, 0x56, 0x55, + 0x8b, 0xd8, 0x36, 0x0b, 0x88, 0x84, 0x04, 0x4e, 0x7d, 0x2b, 0xcf, 0xdf, 0xe0, 0x53, 0x10, 0xa7, + 0x4c, 0xab, 0xb2, 0x6d, 0x30, 0x6f, 0x86, 0xa5, 0x61, 0xfa, 0x9c, 0xb7, 0x0d, 0xfc, 0x1e, 0x44, + 0x0c, 0x53, 0x25, 0xae, 0xe5, 0xdf, 0x0a, 0xd4, 0xb5, 0x93, 0x48, 0xb9, 0x15, 0x53, 0x25, 0x54, + 0xa4, 0xc4, 0x88, 0xf0, 0x34, 0x8c, 0x6b, 0x86, 0xad, 0xa9, 0xa4, 0x5a, 0xb7, 0x48, 0xd5, 0x6e, + 0xd6, 0x0c, 0xe2, 0x30, 0x0b, 0x27, 0xa4, 0x31, 0x0e, 0x58, 0xb4, 0xc8, 0x1a, 0x7b, 0x2d, 0xfe, + 0x18, 0xc1, 0xf8, 0x1e, 0xc3, 0x62, 0x1d, 0xa0, 0xeb, 0x9d, 0x34, 0x62, 0x06, 0x3b, 0x4c, 0xa4, + 0x9d, 0x7f, 0xbc, 0xe3, 0x23, 0xdc, 0x1b, 0x62, 0x5f, 0xfc, 0xc7, 0xd3, 0x70, 0xf4, 0x73, 0x14, + 0x12, 0x90, 0x94, 0xe8, 0x78, 0x4d, 0x6c, 0x42, 0x7a, 0xbf, 0xe8, 0xc1, 0x1f, 0x42, 0x9c, 0x46, + 0xa3, 0xae, 0xd9, 0x8e, 0xab, 0xc7, 0xe5, 0x23, 0x85, 0x21, 0x53, 0x6b, 0x84, 0xca, 0x8d, 0x7d, + 0x8e, 0xc2, 0xc2, 0x23, 0x24, 0x0d, 0xb7, 0x1a, 0x0a, 0x65, 0x2f, 0xfe, 0x2c, 0x06, 0x13, 0x41, + 0xe8, 0x58, 0x81, 0x18, 0x95, 0xa9, 0xa9, 0xdc, 0x67, 0x85, 0xe5, 0xdf, 0xb6, 0xd1, 0xd0, 0x17, + 0x4f, 0x90, 0x10, 0xa7, 0x47, 0xe1, 0x07, 0x9c, 0x55, 0x65, 0x47, 0xa6, 0x6c, 0x23, 0x56, 0x28, + 0xfd, 0x7d, 0xfa, 0xe3, 0x4d, 0xeb, 0xec, 0x9c, 0x78, 0x7f, 0xaa, 0xd5, 0x50, 0x66, 0xcf, 0x4f, + 0x7d, 0x24, 0xcf, 0x7e, 0x72, 0x69, 0xf6, 0xfa, 0xc7, 0x3f, 0xbc, 0xb6, 0xf3, 0xfb, 0x9d, 0xdf, + 0x97, 0xaf, 0xee, 0x9c, 0x3f, 0x2b, 0x45, 0x5b, 0x0d, 0xa5, 0xac, 0xe2, 0xff, 0x07, 0xa9, 0x4d, + 0xd9, 0x68, 0xca, 0x7a, 0xd5, 0x32, 0x9b, 0x8e, 0x66, 0xd4, 0xd3, 0x31, 0xe6, 0xeb, 0x89, 0xbe, + 0xe3, 0x95, 0x36, 0x1b, 0xce, 0xf6, 0xcd, 0x21, 0x29, 0xc9, 0xb1, 0x25, 0x8e, 0x8c, 0x57, 0x21, + 0xa9, 0x92, 0x07, 0x72, 0x53, 0x77, 0x18, 0x3d, 0x49, 0x27, 0x18, 0xf5, 0xf9, 0x81, 0xc6, 0x29, + 0x72, 0x0a, 0xca, 0x83, 0xdc, 0x1c, 0x92, 0x46, 0x55, 0xdf, 0x33, 0xfe, 0x08, 0x52, 0x4a, 0xd3, + 0x76, 0xcc, 0xcd, 0x8e, 0x42, 0xc0, 0x58, 0xce, 0x1d, 0x64, 0x6f, 0x46, 0x5e, 0x91, 0x6b, 0x3a, + 0xf1, 0xbc, 0x46, 0xd5, 0xe5, 0xbc, 0x5c, 0x75, 0xe7, 0xbf, 0x0e, 0x3d, 0x6b, 0xa3, 0x17, 0x21, + 0xc0, 0x10, 0x5b, 0x5f, 0x5d, 0xc8, 0x96, 0x8b, 0x93, 0x71, 0xcf, 0xc8, 0xf0, 0x4f, 0x21, 0x48, + 0xb9, 0x78, 0xd9, 0x85, 0x0d, 0x53, 0x53, 0xc8, 0xf4, 0x2f, 0x43, 0xf0, 0x77, 0x21, 0x98, 0xed, + 0x37, 0xd1, 0xdc, 0xe9, 0x15, 0x33, 0xcb, 0x8e, 0x6b, 0x67, 0xb7, 0x34, 0x5d, 0xcf, 0xd6, 0x48, + 0x56, 0x33, 0x6c, 0x47, 0xd6, 0x75, 0xa2, 0xc2, 0x32, 0x64, 0x7a, 0x4c, 0x92, 0x93, 0x75, 0x4e, + 0x49, 0xaa, 0x0e, 0xd5, 0xce, 0x9e, 0x9b, 0xbe, 0xdd, 0x22, 0x96, 0xa5, 0xa9, 0x24, 0xeb, 0x5a, + 0x22, 0xcb, 0x74, 0xcf, 0x3e, 0x30, 0xad, 0xac, 0xac, 0xeb, 0xd9, 0xee, 0x49, 0x6c, 0x78, 0x08, + 0x6f, 0xf7, 0x72, 0xb3, 0x89, 0x4e, 0x14, 0x47, 0x6b, 0x91, 0x1e, 0x9e, 0x39, 0xdf, 0x43, 0x55, + 0x53, 0xc5, 0x2b, 0x42, 0x74, 0xfa, 0xd2, 0x00, 0x31, 0x6b, 0x1e, 0x97, 0x1e, 0x61, 0x4b, 0x70, + 0xba, 0xd7, 0xf6, 0x7e, 0xb6, 0xb6, 0x78, 0x41, 0x88, 0x8a, 0xa9, 0x5e, 0x41, 0xd3, 0x27, 0x17, + 0x18, 0x41, 0x76, 0xa1, 0x5c, 0x94, 0x6c, 0x1f, 0xb3, 0xc2, 0x14, 0xa4, 0x5c, 0x26, 0x55, 0x85, + 0x59, 0x13, 0x9f, 0x78, 0xda, 0x46, 0xb1, 0xe7, 0x6d, 0x14, 0xdd, 0x6d, 0xa3, 0xd8, 0xbb, 0x33, + 0xd7, 0x67, 0x2e, 0x5f, 0xfa, 0xab, 0x27, 0x08, 0x2d, 0x45, 0xe2, 0x21, 0x21, 0xbc, 0x14, 0x89, + 0x87, 0x85, 0xc8, 0x52, 0x24, 0x1e, 0x11, 0xa2, 0x4b, 0x91, 0x78, 0x54, 0x88, 0xf5, 0x54, 0xb4, + 0x1d, 0x38, 0x9d, 0xff, 0xa4, 0x69, 0x91, 0x75, 0x83, 0x38, 0x01, 0xe9, 0x79, 0x1f, 0x12, 0x2d, + 0x83, 0x38, 0xfe, 0xfc, 0xbc, 0x32, 0x38, 0x5e, 0x18, 0xb3, 0x95, 0x52, 0x65, 0x50, 0x8a, 0xc6, + 0x29, 0x4f, 0x96, 0xa3, 0xff, 0x1a, 0x81, 0x93, 0xfb, 0x90, 0xe0, 0x25, 0x18, 0xb3, 0x9b, 0x35, + 0x5b, 0xb1, 0x34, 0x76, 0x63, 0x77, 0xf3, 0xf5, 0xf5, 0x03, 0xf3, 0x55, 0x4a, 0xf9, 0x29, 0xcb, + 0x2a, 0x9e, 0x87, 0x61, 0x76, 0x0e, 0x8d, 0xdf, 0xab, 0x87, 0xe2, 0x11, 0xa3, 0x14, 0x81, 0x99, + 0x1c, 0x39, 0x4a, 0x26, 0xeb, 0x7b, 0xf2, 0x8e, 0x17, 0x82, 0x85, 0x83, 0xed, 0xd8, 0xf5, 0xfa, + 0x5d, 0xcd, 0xd9, 0x58, 0x73, 0x64, 0x47, 0x53, 0xd8, 0xbb, 0xfd, 0x13, 0xf1, 0x5f, 0xd0, 0xb3, + 0x36, 0xfa, 0x67, 0x04, 0x67, 0x61, 0x6c, 0xcd, 0x67, 0x02, 0x9a, 0x91, 0xe3, 0x7b, 0xec, 0x09, + 0x13, 0x30, 0x4c, 0x0d, 0x4f, 0xa1, 0x89, 0x8e, 0x85, 0xe0, 0x53, 0xb4, 0x27, 0x61, 0x77, 0xe0, + 0x87, 0x47, 0x4d, 0xd7, 0x57, 0x19, 0xf3, 0xe7, 0xf6, 0xc4, 0xfc, 0xb1, 0xa7, 0x6d, 0x14, 0x79, + 0xde, 0x46, 0xe1, 0xdd, 0x36, 0x0a, 0x5f, 0x99, 0x79, 0xd7, 0x0d, 0x78, 0x1e, 0xea, 0x51, 0x21, + 0x26, 0x3e, 0x0a, 0xc1, 0xa8, 0xbf, 0x1e, 0xe2, 0xef, 0x83, 0xd0, 0x5f, 0x30, 0xdc, 0x26, 0x6e, + 0x3f, 0x47, 0xa6, 0x64, 0x5d, 0xf7, 0x65, 0x31, 0x36, 0xe1, 0x44, 0x70, 0x91, 0x70, 0x03, 0xe2, + 0xea, 0x41, 0x95, 0xd4, 0xaf, 0x8f, 0xdd, 0xe5, 0x7c, 0x73, 0x48, 0x9a, 0xe8, 0x30, 0xf6, 0x09, + 0x2c, 0x5c, 0x80, 0x89, 0x9e, 0x1a, 0xe5, 0x3f, 0x3c, 0xf2, 0x0e, 0x7f, 0x79, 0xe6, 0x4a, 0x40, + 0xb6, 0x53, 0x13, 0xfc, 0x2d, 0x82, 0x63, 0xf9, 0xbb, 0x6b, 0xbc, 0x13, 0x28, 0x17, 0x3b, 0x49, + 0xfd, 0x53, 0x04, 0xc0, 0xbb, 0x86, 0xaa, 0xa6, 0xda, 0x2c, 0xad, 0x13, 0x85, 0xfa, 0x17, 0x4f, + 0x10, 0x76, 0x6f, 0xf3, 0xbe, 0x74, 0xc8, 0x7d, 0x8e, 0x2e, 0x88, 0xe7, 0xad, 0xb7, 0xe6, 0xce, + 0xdd, 0x9f, 0xe2, 0x74, 0x03, 0x6f, 0xc0, 0x4e, 0x13, 0x10, 0xf1, 0x7e, 0xc5, 0x91, 0xf7, 0x2b, + 0x8d, 0xa4, 0x04, 0x67, 0x51, 0x56, 0xed, 0xf9, 0xe3, 0xbf, 0x6a, 0xa3, 0x71, 0x18, 0x03, 0xe0, + 0x2a, 0x66, 0xcb, 0x45, 0x1b, 0xa3, 0xcb, 0xe2, 0xcf, 0x11, 0x1c, 0x0f, 0xbc, 0x77, 0xb0, 0x05, + 0xa3, 0x7d, 0xfe, 0x0b, 0x1f, 0xd8, 0x56, 0xf6, 0x70, 0x62, 0xb5, 0xe8, 0x4c, 0xa7, 0x16, 0xfd, + 0x1a, 0x05, 0xaa, 0x38, 0x62, 0x75, 0x9d, 0x30, 0x7f, 0xfa, 0x57, 0x6d, 0x74, 0x12, 0x8e, 0x77, + 0x53, 0xc2, 0x8d, 0x06, 0x74, 0x79, 0x0a, 0x89, 0x7f, 0x89, 0x60, 0x72, 0x7f, 0xc7, 0xe2, 0x3f, + 0x80, 0xbe, 0x10, 0x77, 0x8d, 0xfd, 0x3b, 0x6e, 0xf5, 0xd9, 0xc7, 0xe0, 0x5c, 0x8d, 0xa0, 0xee, + 0xc3, 0x72, 0x6a, 0x83, 0xbb, 0x8f, 0xd1, 0xae, 0xea, 0x65, 0x55, 0xfc, 0x53, 0x04, 0x42, 0x5f, + 0x25, 0xb1, 0xf1, 0xce, 0x3e, 0x4a, 0xdd, 0x3d, 0xb2, 0x52, 0xe7, 0xac, 0x37, 0xe6, 0x5e, 0xa7, + 0x4a, 0x1d, 0x45, 0xa7, 0x7f, 0x44, 0xf0, 0xe6, 0xe1, 0xaa, 0x1b, 0xfe, 0x51, 0xa0, 0xbb, 0xdf, + 0xfb, 0x16, 0x85, 0xf3, 0x55, 0xfa, 0xfe, 0x97, 0x21, 0xc8, 0x0c, 0x96, 0x86, 0xed, 0x00, 0x53, + 0xd3, 0xdb, 0xe7, 0xd6, 0x60, 0x53, 0x7f, 0x2b, 0x03, 0x63, 0x09, 0x92, 0x36, 0xd3, 0x81, 0x17, + 0x0d, 0x3b, 0xad, 0x33, 0xf7, 0xce, 0x52, 0x86, 0xf0, 0x39, 0x1a, 0x16, 0xa3, 0x56, 0xf8, 0xb7, + 0xa8, 0x73, 0x66, 0x61, 0x2e, 0xd0, 0x0e, 0xa3, 0x76, 0xf7, 0x1c, 0xf6, 0xfc, 0xca, 0xb3, 0x36, + 0x5a, 0x82, 0xb3, 0x20, 0xf4, 0x18, 0x82, 0xde, 0x1b, 0x42, 0xff, 0x11, 0x41, 0x84, 0x24, 0xb7, + 0x01, 0xaf, 0xe0, 0x76, 0x61, 0xbc, 0x4f, 0x21, 0x01, 0xc4, 0x5f, 0x84, 0x60, 0x7c, 0x4f, 0x62, + 0x62, 0x67, 0x1f, 0x73, 0xad, 0x1c, 0xd2, 0x5c, 0x2f, 0x95, 0x24, 0xdf, 0x09, 0x7b, 0x3d, 0x42, + 0x20, 0x48, 0xa4, 0xa1, 0xcb, 0x0a, 0xe9, 0x2e, 0x23, 0xee, 0xbf, 0xda, 0x49, 0xbe, 0x7f, 0x86, + 0x9f, 0x1f, 0x7d, 0xf6, 0x7e, 0x77, 0xf5, 0x21, 0xb6, 0x43, 0x90, 0xca, 0xdf, 0x5d, 0xab, 0x2c, + 0xde, 0x5d, 0xd3, 0x1c, 0xee, 0xaf, 0x8f, 0x21, 0x62, 0x6b, 0x0e, 0x39, 0xe2, 0x2e, 0x44, 0xde, + 0xb2, 0xab, 0x74, 0x70, 0xa6, 0xa4, 0xfb, 0xec, 0x42, 0x18, 0xdb, 0xff, 0x19, 0x9b, 0x10, 0xde, + 0x79, 0x8b, 0x9f, 0x21, 0x38, 0xde, 0x75, 0xa0, 0xdf, 0x88, 0xaf, 0x5c, 0x8b, 0xe7, 0x01, 0x5a, + 0xcc, 0x8f, 0x3f, 0x7b, 0xbf, 0xcf, 0x7b, 0xe2, 0x33, 0x9a, 0x83, 0x5e, 0xef, 0xdd, 0x51, 0xe7, + 0x07, 0x47, 0xf6, 0xe9, 0xd4, 0xe3, 0x9d, 0x31, 0x99, 0xf2, 0xa9, 0xb2, 0x06, 0xf2, 0x40, 0xb7, + 0xd6, 0x8e, 0xec, 0xd6, 0xe9, 0x20, 0xb7, 0x7e, 0xdd, 0x0e, 0x96, 0xc1, 0x5c, 0xab, 0x81, 0xc0, + 0x94, 0xf1, 0x5b, 0x35, 0xca, 0xe4, 0x5d, 0x3b, 0xc4, 0xf8, 0x12, 0x38, 0x0b, 0xb9, 0xee, 0x1d, + 0x6b, 0xf5, 0x40, 0x3d, 0xff, 0xfe, 0x05, 0x82, 0xb4, 0xe7, 0xdf, 0x3d, 0x36, 0x0d, 0xd2, 0x26, + 0xfc, 0x6d, 0xb5, 0x79, 0x1e, 0xa4, 0x4d, 0x90, 0x9f, 0xff, 0x3a, 0x04, 0x27, 0xd8, 0x0a, 0x68, + 0x81, 0xb3, 0xa5, 0xc5, 0xa6, 0x69, 0x33, 0xc5, 0x1a, 0x70, 0xa2, 0x47, 0x62, 0x95, 0xe6, 0x26, + 0x73, 0x3f, 0x77, 0xce, 0xf5, 0x83, 0x42, 0xd0, 0x27, 0x9a, 0x6a, 0xd6, 0x65, 0x7d, 0x73, 0x48, + 0x3a, 0xa6, 0xf8, 0x84, 0xe6, 0xb7, 0x6c, 0xaa, 0x10, 0x6e, 0x41, 0xba, 0x4f, 0x22, 0x8b, 0x1c, + 0x26, 0x93, 0x9b, 0xe4, 0x10, 0xd7, 0xfb, 0x20, 0xa9, 0xc7, 0x7b, 0xa4, 0x52, 0x6c, 0x2a, 0xb7, + 0x70, 0xb6, 0x5f, 0xae, 0x4a, 0x1a, 0xba, 0xb9, 0x4d, 0x79, 0xe0, 0x38, 0x35, 0xa5, 0xdb, 0x43, + 0x23, 0x21, 0x24, 0xfe, 0x04, 0xc1, 0x6b, 0x83, 0xce, 0x86, 0x6b, 0x30, 0xde, 0x75, 0x65, 0xd5, + 0x66, 0x00, 0xb7, 0x39, 0x79, 0xe7, 0x08, 0x16, 0xeb, 0x72, 0x94, 0x84, 0x2e, 0x3f, 0xfe, 0x56, + 0xfc, 0xf1, 0x30, 0xdb, 0x9a, 0x05, 0xa2, 0xe3, 0x69, 0x18, 0x67, 0xab, 0xc7, 0xae, 0x12, 0xde, + 0x60, 0x2b, 0x8d, 0x39, 0xf5, 0xad, 0x2e, 0x51, 0x59, 0xc5, 0x1f, 0x40, 0x52, 0xb1, 0x88, 0xcc, + 0x46, 0x3e, 0x47, 0xdb, 0xf4, 0x32, 0x7b, 0x32, 0xc7, 0xb7, 0xfb, 0x39, 0x6f, 0xbb, 0x9f, 0xab, + 0x78, 0xdb, 0x7d, 0x69, 0xd4, 0x23, 0xa0, 0xaf, 0xf0, 0xf1, 0xce, 0xba, 0x8c, 0xef, 0x18, 0xdd, + 0x05, 0x57, 0x16, 0x46, 0xe9, 0x6b, 0x73, 0xcb, 0x20, 0x16, 0x05, 0x46, 0xf9, 0xfe, 0xb3, 0xd5, + 0x50, 0x6e, 0xd3, 0x57, 0x65, 0x15, 0x9f, 0xe2, 0xbb, 0x3d, 0x45, 0x53, 0xad, 0xf4, 0x28, 0x83, + 0x0e, 0xb7, 0x1a, 0xca, 0x82, 0xa6, 0x5a, 0xb8, 0x0e, 0x13, 0x14, 0xd4, 0x75, 0x02, 0xb3, 0x22, + 0x49, 0x8f, 0x64, 0xd1, 0x54, 0xea, 0x00, 0x23, 0xfa, 0x63, 0x79, 0x7d, 0x75, 0x81, 0x9a, 0x85, + 0x6f, 0x47, 0x71, 0xab, 0xa1, 0x14, 0x3b, 0x1c, 0xd9, 0x7b, 0x7c, 0x01, 0xc6, 0xfb, 0x84, 0x34, + 0xed, 0xf4, 0x30, 0x53, 0x46, 0x50, 0x7b, 0x70, 0x9b, 0x36, 0xfe, 0x10, 0x22, 0x8e, 0x5c, 0xb7, + 0xd3, 0x71, 0xe6, 0xca, 0x0f, 0x5e, 0xca, 0x95, 0xb9, 0x8a, 0x5c, 0xb7, 0x4b, 0x86, 0x63, 0x6d, + 0x17, 0x22, 0x6c, 0xb1, 0xcc, 0x58, 0xe2, 0x45, 0x18, 0xe6, 0x73, 0x8f, 0x9d, 0x06, 0xc6, 0x7d, + 0x76, 0x20, 0x77, 0x3e, 0x10, 0xf9, 0x02, 0xc4, 0xa3, 0xc6, 0x1f, 0x83, 0xd0, 0x99, 0xb1, 0xbd, + 0x86, 0x25, 0xf1, 0xb2, 0x8b, 0x3c, 0xb6, 0x2f, 0xe6, 0xbc, 0x78, 0xef, 0x31, 0x79, 0x15, 0x12, + 0x9d, 0x03, 0x60, 0x01, 0xc2, 0x0f, 0xc9, 0xb6, 0xbb, 0xd9, 0xa6, 0x3f, 0xf1, 0x04, 0x44, 0x5b, + 0xb2, 0xde, 0x24, 0x6e, 0xb0, 0xf1, 0x87, 0xf9, 0xd0, 0x35, 0x34, 0xff, 0x0f, 0xe8, 0x59, 0x1b, + 0x3d, 0x45, 0x81, 0x1b, 0xc0, 0xb3, 0x90, 0xec, 0xda, 0x8a, 0x82, 0x8e, 0x05, 0xc4, 0x2f, 0x60, + 0x88, 0xd0, 0xc1, 0x7f, 0x12, 0xba, 0x61, 0x03, 0x6f, 0xc0, 0x38, 0xe5, 0xc6, 0x22, 0x2a, 0x9b, + 0x57, 0x14, 0xb3, 0x69, 0x38, 0x93, 0xa9, 0xde, 0xc8, 0x83, 0xd7, 0x21, 0xca, 0x9c, 0x3d, 0x99, + 0x0e, 0x8e, 0xaa, 0x2c, 0x82, 0x29, 0x18, 0xef, 0x46, 0x46, 0x96, 0xdb, 0x95, 0x6a, 0xb1, 0x27, + 0x36, 0x3a, 0x03, 0x74, 0x4c, 0x18, 0x16, 0x5f, 0x84, 0x41, 0xe8, 0xf7, 0x04, 0xbe, 0x04, 0x13, + 0x06, 0x71, 0xb6, 0x4c, 0xeb, 0x61, 0x55, 0x33, 0x1c, 0x62, 0x3d, 0x90, 0x95, 0x6e, 0xab, 0x2a, + 0x61, 0x17, 0x56, 0xf6, 0x40, 0x65, 0x15, 0x9f, 0x83, 0x54, 0x17, 0xd3, 0xd9, 0x6e, 0x78, 0xd6, + 0x4b, 0x76, 0xde, 0x7a, 0x8c, 0x1b, 0x96, 0xd6, 0x92, 0x1d, 0x52, 0xd5, 0x1a, 0xad, 0x2b, 0x9d, + 0x3f, 0x16, 0xc2, 0x9c, 0xb1, 0x0b, 0x2b, 0x37, 0x5a, 0x57, 0xbc, 0x3f, 0x18, 0x2e, 0xc0, 0xb8, + 0xdc, 0x92, 0x35, 0x5d, 0xae, 0x69, 0xba, 0xe6, 0x6c, 0x57, 0x3f, 0x31, 0x0d, 0xe2, 0x26, 0xa9, + 0xe0, 0x07, 0xdc, 0x33, 0x0d, 0x82, 0x4f, 0x43, 0xa2, 0x33, 0xf4, 0xbb, 0xc9, 0x1a, 0xf7, 0x46, + 0x71, 0x7c, 0x02, 0x62, 0x6e, 0x6e, 0xc4, 0x18, 0xc4, 0x7d, 0x9a, 0xff, 0x8a, 0x7a, 0xf5, 0xdf, + 0x10, 0xe4, 0x60, 0x62, 0x85, 0x1f, 0x2c, 0xdb, 0x39, 0x19, 0x75, 0xe4, 0x89, 0x60, 0x63, 0x80, + 0x08, 0xa9, 0x2e, 0x1e, 0x3d, 0x1d, 0xed, 0x7b, 0x7b, 0x8d, 0x40, 0x79, 0xae, 0xf2, 0x33, 0x65, + 0xcb, 0xab, 0xeb, 0x57, 0xb2, 0xee, 0xa9, 0x28, 0xcf, 0x20, 0x3b, 0x50, 0x1f, 0xe6, 0x7d, 0x87, + 0xca, 0xd2, 0x53, 0x51, 0x1f, 0xee, 0x31, 0x01, 0xa4, 0x21, 0xd1, 0xd9, 0x28, 0x4c, 0x8e, 0xf8, + 0xce, 0x4d, 0xa3, 0xd3, 0x75, 0x7e, 0xdc, 0x3b, 0xb1, 0xf8, 0x53, 0xe4, 0xce, 0x71, 0xfb, 0x17, + 0x7c, 0x75, 0xff, 0x82, 0x7f, 0xf5, 0x48, 0xd7, 0xd5, 0xc0, 0x92, 0xff, 0xb3, 0x38, 0x4c, 0xee, + 0x4f, 0x80, 0x67, 0x00, 0xf7, 0x75, 0x11, 0xdd, 0xaa, 0x2f, 0xf4, 0xf6, 0x01, 0xaf, 0xa2, 0xec, + 0x8b, 0x90, 0xb4, 0x1b, 0xe6, 0x43, 0xb7, 0xab, 0xd3, 0x54, 0x37, 0x0e, 0x47, 0xd8, 0xcb, 0x75, + 0x1e, 0x36, 0x22, 0x24, 0x37, 0x9a, 0x35, 0x8e, 0x61, 0xc8, 0x9b, 0x5e, 0xf0, 0x8d, 0x6c, 0x34, + 0x6b, 0x14, 0x63, 0x45, 0xde, 0x24, 0xf8, 0x1a, 0xa4, 0x29, 0x0e, 0xcf, 0x56, 0xff, 0x02, 0xb2, + 0x13, 0x86, 0x27, 0x36, 0x9a, 0x35, 0x96, 0xe1, 0x6b, 0x3d, 0x50, 0xfc, 0x06, 0x24, 0x1b, 0x84, + 0x58, 0x9a, 0x51, 0x77, 0x6f, 0x07, 0x1e, 0x9b, 0xa3, 0xee, 0x4b, 0x5e, 0xe0, 0x67, 0x01, 0x37, + 0x2c, 0xb3, 0xa5, 0xd9, 0x94, 0xa6, 0x83, 0xc9, 0x2b, 0xfc, 0xb8, 0x1f, 0x32, 0xe0, 0x3e, 0x88, + 0xef, 0x73, 0x1f, 0xcc, 0x00, 0xee, 0x28, 0xb0, 0x6d, 0x28, 0x55, 0x9d, 0xb4, 0x88, 0xce, 0xaa, + 0x6d, 0x42, 0x12, 0x3c, 0x2d, 0xb6, 0x0d, 0x65, 0x99, 0xbe, 0xc7, 0x1f, 0xb9, 0xb7, 0x07, 0xaf, + 0xef, 0xf9, 0x97, 0x8c, 0x8b, 0x83, 0xef, 0x8f, 0x91, 0x6f, 0x75, 0x7f, 0x18, 0x01, 0xf7, 0xc7, + 0xe8, 0x2b, 0x5b, 0x48, 0xbf, 0xc2, 0x0b, 0xe5, 0xcf, 0x42, 0xcf, 0xda, 0xe8, 0xd3, 0x10, 0x64, + 0x21, 0xb9, 0x46, 0x43, 0x2e, 0xeb, 0x6d, 0xaa, 0xc7, 0xfa, 0x02, 0x13, 0xce, 0xf5, 0x5f, 0x2f, + 0x13, 0x41, 0x99, 0x42, 0x19, 0x2d, 0xb8, 0x01, 0x9e, 0xa5, 0x11, 0x4e, 0x19, 0xf5, 0xa4, 0x08, + 0xc5, 0x58, 0xe5, 0x5e, 0xcd, 0xf2, 0x0b, 0x65, 0xac, 0x2f, 0x02, 0x61, 0x1a, 0xf0, 0xaa, 0x2f, + 0xa6, 0x5c, 0xb4, 0x89, 0xa0, 0x18, 0x64, 0xb8, 0x1e, 0xb7, 0x6d, 0x43, 0xc9, 0xb2, 0x28, 0x61, + 0xb8, 0x7b, 0x62, 0xea, 0xf0, 0xf7, 0x93, 0xf8, 0x9b, 0x18, 0xa4, 0x16, 0x75, 0xb3, 0x26, 0xeb, + 0x6b, 0x0d, 0xa2, 0xb0, 0xc2, 0x50, 0x82, 0x18, 0xed, 0xdb, 0x2d, 0xaf, 0x6b, 0x7f, 0xf3, 0xc0, + 0x46, 0xa0, 0xc4, 0x47, 0x08, 0x1a, 0x5f, 0x37, 0x87, 0xa4, 0xa8, 0xbc, 0x65, 0x4b, 0x04, 0xdf, + 0x86, 0x9e, 0xd1, 0x9c, 0xe5, 0xd0, 0xc8, 0xdc, 0x85, 0x83, 0x98, 0xf9, 0x46, 0x8d, 0x9b, 0x43, + 0x12, 0xc8, 0x5b, 0x76, 0xa5, 0xbe, 0xc5, 0x7a, 0x7d, 0x19, 0xfa, 0xe7, 0xc2, 0xb4, 0x70, 0x88, + 0xef, 0x00, 0xf6, 0xcc, 0x4f, 0x85, 0xe1, 0xff, 0xdc, 0x89, 0x38, 0xc4, 0x76, 0x6e, 0x0e, 0x49, + 0x49, 0xd9, 0x9b, 0x89, 0x98, 0x88, 0x7b, 0x30, 0x6c, 0x93, 0x3a, 0xb5, 0x4f, 0x3a, 0x79, 0xe8, + 0x71, 0xf2, 0xb5, 0xc7, 0x3b, 0x1e, 0x55, 0xc0, 0x00, 0xe9, 0x81, 0x70, 0x1e, 0x84, 0x9a, 0x6c, + 0xa8, 0x5b, 0x9a, 0xea, 0x6c, 0x54, 0xdf, 0xb9, 0x74, 0x69, 0xb3, 0xe6, 0x75, 0x5a, 0xc1, 0x7f, + 0x18, 0x20, 0x69, 0xac, 0x83, 0xcf, 0xd1, 0x71, 0x01, 0xa2, 0xf4, 0xd8, 0x34, 0xc3, 0x68, 0xce, + 0xbe, 0xd6, 0x47, 0xd7, 0xab, 0x56, 0xea, 0xf1, 0x0e, 0x1b, 0x90, 0x3b, 0x5f, 0x24, 0x30, 0x52, + 0xfc, 0x03, 0x18, 0x6b, 0x69, 0x96, 0xd3, 0x94, 0xf5, 0xaa, 0x7b, 0xd5, 0xa6, 0x53, 0x87, 0xe0, + 0x76, 0xea, 0xf1, 0x4e, 0x3f, 0x9d, 0xc7, 0x38, 0xe5, 0xbe, 0x77, 0x6f, 0x74, 0x5c, 0x84, 0x28, + 0xaf, 0x9a, 0x63, 0xac, 0xfb, 0xce, 0x1d, 0xba, 0xfb, 0x66, 0xd1, 0x2f, 0x71, 0x62, 0x7c, 0x1e, + 0x92, 0xa6, 0x51, 0x33, 0x65, 0x4b, 0x25, 0x6a, 0xb5, 0xd5, 0x50, 0xd2, 0xe3, 0x59, 0x34, 0x95, + 0x74, 0x8b, 0xd8, 0x68, 0x07, 0xb4, 0xde, 0x50, 0xf0, 0x22, 0x8c, 0x28, 0xa6, 0x69, 0xa9, 0x9a, + 0x21, 0x53, 0xe3, 0x60, 0x66, 0xd4, 0x33, 0x7d, 0x62, 0xe9, 0xe9, 0x73, 0x0b, 0x5d, 0x34, 0x97, + 0x93, 0x9f, 0xb2, 0x70, 0x06, 0xa2, 0x4c, 0x3b, 0xf6, 0x17, 0x68, 0x88, 0x8e, 0x71, 0xbb, 0x6d, + 0x14, 0x9b, 0x9b, 0xb9, 0x3a, 0x73, 0xf9, 0x5d, 0x8a, 0x5d, 0x78, 0xdd, 0xef, 0x43, 0xfe, 0xe5, + 0x0f, 0x4e, 0x3e, 0x6d, 0xa3, 0xc4, 0xf3, 0x36, 0x8a, 0xef, 0xb6, 0x11, 0xba, 0xce, 0x67, 0xbe, + 0xc0, 0x7f, 0x49, 0xf9, 0xd7, 0x1f, 0x71, 0x21, 0x21, 0xfe, 0x61, 0x18, 0x52, 0xac, 0x76, 0x90, + 0x4e, 0xd2, 0x7d, 0xf0, 0x72, 0x49, 0xf7, 0xdd, 0x4e, 0xb7, 0xef, 0xbd, 0x44, 0xba, 0x75, 0x12, + 0x8a, 0xed, 0x26, 0x7a, 0x4b, 0x57, 0x01, 0x7b, 0x0e, 0x4c, 0xfc, 0xe4, 0xbf, 0x10, 0xff, 0x39, + 0xd8, 0x21, 0xe2, 0x9f, 0x87, 0x61, 0xcc, 0x5d, 0xb4, 0x74, 0x7c, 0x71, 0xa3, 0xcf, 0x17, 0x83, + 0xef, 0xc6, 0xfe, 0x3d, 0x6a, 0xd7, 0x25, 0xeb, 0x81, 0x2e, 0x99, 0x3b, 0x24, 0xb7, 0xff, 0xed, + 0x9e, 0xf9, 0xfb, 0x08, 0x8c, 0x2c, 0x12, 0xe7, 0xff, 0x32, 0xe4, 0xa5, 0xfd, 0xf0, 0xdd, 0xad, + 0xc4, 0xaf, 0x26, 0x82, 0xfe, 0x18, 0xc1, 0xc8, 0xb2, 0x5c, 0x23, 0xfa, 0x0d, 0x4d, 0x77, 0x88, + 0x85, 0xaf, 0x41, 0x54, 0xa7, 0x8f, 0xac, 0x61, 0x4c, 0xed, 0x31, 0x65, 0xaf, 0x39, 0x18, 0xa1, + 0xc4, 0x09, 0xf0, 0x0c, 0x84, 0xcc, 0x06, 0x8b, 0xbb, 0xd4, 0x9e, 0x7b, 0xf2, 0x16, 0x71, 0x2c, + 0x4d, 0x61, 0xe8, 0xb7, 0x1b, 0x52, 0xc8, 0x6c, 0x74, 0x9b, 0xd0, 0xb0, 0xaf, 0x09, 0x15, 0x45, + 0x18, 0xe5, 0xdf, 0x23, 0x10, 0xab, 0xa4, 0xd6, 0x09, 0xc6, 0x10, 0x61, 0x33, 0x0e, 0xef, 0x5e, + 0xd9, 0x6f, 0xf1, 0x17, 0x08, 0x80, 0xf3, 0x2b, 0xca, 0x8e, 0x8c, 0xdf, 0x87, 0x08, 0x9b, 0xef, + 0xb9, 0xbe, 0xd3, 0x03, 0xf5, 0xbd, 0xa1, 0x11, 0x5d, 0xe5, 0x9f, 0x0b, 0x99, 0x96, 0xc4, 0xe8, + 0xf0, 0x05, 0x88, 0x34, 0x0d, 0xcd, 0x71, 0x15, 0x3f, 0xd9, 0x47, 0x7f, 0xc7, 0xd0, 0x78, 0x93, + 0xcd, 0x90, 0xf0, 0x1c, 0xc4, 0x98, 0xa2, 0x76, 0x3a, 0xcc, 0xfa, 0x81, 0xc9, 0xc0, 0x73, 0xae, + 0x53, 0x14, 0xc9, 0xc5, 0x14, 0xff, 0x04, 0x81, 0xb0, 0xc6, 0x83, 0x8d, 0xf5, 0xbd, 0x4c, 0xeb, + 0xef, 0xf5, 0x68, 0x3d, 0x35, 0x50, 0xeb, 0x8a, 0x25, 0x3f, 0x78, 0xa0, 0x29, 0x5c, 0x0d, 0xa6, + 0xf3, 0x7b, 0x10, 0x51, 0x65, 0x47, 0x4e, 0x87, 0x98, 0x12, 0x6f, 0x0d, 0xa4, 0xee, 0x9a, 0x4a, + 0x62, 0x44, 0xe2, 0x67, 0x08, 0xe2, 0xd4, 0xb8, 0x4c, 0x8f, 0xeb, 0x10, 0x52, 0xbc, 0x39, 0x75, + 0xf0, 0x87, 0x6e, 0x7e, 0xbf, 0x48, 0x21, 0x85, 0xe0, 0x32, 0xc4, 0xdd, 0x1c, 0xb2, 0x5d, 0x45, + 0x0e, 0x98, 0x8f, 0xfa, 0x6c, 0x20, 0x75, 0xc8, 0xa7, 0xdf, 0x76, 0x3f, 0x98, 0xf4, 0x67, 0x16, + 0x8e, 0x43, 0xa4, 0x78, 0xfb, 0xee, 0x8a, 0x30, 0x84, 0x47, 0x21, 0x5e, 0x2c, 0x2d, 0x4a, 0xf9, + 0x62, 0xa9, 0x28, 0x20, 0x1c, 0x83, 0xd0, 0x9d, 0x55, 0x21, 0x34, 0xfd, 0x31, 0xa4, 0xf7, 0x5b, + 0x4b, 0xe2, 0x24, 0x24, 0xf2, 0xeb, 0xf9, 0xf2, 0x72, 0xbe, 0xb0, 0x5c, 0x12, 0x86, 0xf0, 0x08, + 0x0c, 0xaf, 0x96, 0x56, 0x8a, 0xe5, 0x95, 0x45, 0x01, 0x61, 0x80, 0xd8, 0x8d, 0x7c, 0x79, 0xb9, + 0x54, 0x14, 0x42, 0x14, 0x50, 0x2c, 0x2d, 0x97, 0x2a, 0xa5, 0xa2, 0x10, 0xe6, 0x62, 0x96, 0x4b, + 0x15, 0x8a, 0x16, 0x99, 0xbe, 0xda, 0xcb, 0x9e, 0x8d, 0x20, 0xaa, 0xfb, 0x19, 0xea, 0x30, 0x84, + 0xf3, 0x77, 0xd7, 0x84, 0x21, 0x9c, 0x80, 0x68, 0xfe, 0xde, 0x1d, 0xa9, 0x24, 0x20, 0xfa, 0x6e, + 0x71, 0x81, 0xea, 0x75, 0x09, 0xa2, 0x2c, 0xd0, 0x71, 0x0a, 0x60, 0x39, 0x5f, 0x28, 0x2d, 0x57, + 0x57, 0x6e, 0xaf, 0x50, 0x2d, 0x4e, 0xc2, 0x31, 0xfe, 0xbc, 0x70, 0x67, 0xad, 0x72, 0xfb, 0x56, + 0x49, 0xaa, 0x96, 0x8a, 0x8b, 0x25, 0x01, 0x4d, 0xff, 0x08, 0x46, 0x7c, 0x3e, 0xc6, 0xc7, 0x61, + 0xbc, 0x22, 0xe5, 0x6f, 0xdc, 0x28, 0x2f, 0x54, 0x2b, 0x1f, 0xae, 0x96, 0x3c, 0xf2, 0x0c, 0x4c, + 0xf6, 0xbc, 0x2e, 0xaf, 0x54, 0x4a, 0x52, 0x75, 0xad, 0xb4, 0x78, 0xab, 0xb4, 0x52, 0x11, 0x50, + 0x10, 0x5c, 0xca, 0x77, 0xe0, 0x21, 0x7c, 0x0a, 0x8e, 0xef, 0xa5, 0x5f, 0x29, 0x55, 0x84, 0xf0, + 0xf4, 0x3d, 0x48, 0xf6, 0xa4, 0x06, 0x9e, 0x00, 0xe1, 0x56, 0xa9, 0x22, 0xf5, 0x69, 0x90, 0x86, + 0x09, 0xff, 0xdb, 0xf2, 0x4a, 0xb5, 0xf0, 0x61, 0xa5, 0xb4, 0x26, 0x20, 0xca, 0xdb, 0x0f, 0xb9, + 0x7d, 0xa7, 0xe2, 0x82, 0x42, 0x85, 0x4f, 0xd1, 0xf3, 0xaf, 0x32, 0x43, 0x5f, 0x7e, 0x95, 0x19, + 0xfa, 0xe6, 0xab, 0x0c, 0x7a, 0xb4, 0x9b, 0x41, 0x3f, 0xdf, 0xcd, 0xa0, 0x5f, 0xef, 0x66, 0xd0, + 0xf3, 0xdd, 0x0c, 0xfa, 0x72, 0x37, 0x83, 0xfe, 0x7d, 0x37, 0x83, 0xbe, 0xde, 0xcd, 0x0c, 0x7d, + 0xb3, 0x9b, 0x41, 0x9f, 0xbd, 0xc8, 0x0c, 0x3d, 0x7d, 0x91, 0x41, 0xcf, 0x5f, 0x64, 0x86, 0xbe, + 0x7c, 0x91, 0x19, 0xba, 0xf7, 0xff, 0xeb, 0x66, 0xe3, 0x61, 0x3d, 0xd7, 0x32, 0x69, 0x75, 0xb2, + 0xe4, 0x5c, 0xd3, 0xbe, 0xc8, 0x7e, 0x3c, 0x30, 0xad, 0xcd, 0xd9, 0x86, 0xeb, 0x94, 0x59, 0x0f, + 0x7c, 0xb1, 0x51, 0xab, 0x9b, 0x17, 0xc9, 0xef, 0x39, 0xde, 0x67, 0xed, 0x01, 0xdf, 0xee, 0xd7, + 0x62, 0x6c, 0x0f, 0xf3, 0xf6, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x0a, 0xce, 0xe2, 0x13, 0xe1, + 0x2f, 0x00, 0x00, } func (x CloudConnectState) String() string { @@ -1986,6 +3397,41 @@ func (x CloudConnectState) String() string { } return strconv.Itoa(int(x)) } +func (x CloudConnectVPCStateType) String() string { + s, ok := CloudConnectVPCStateType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x CloudConnectProviderType) String() string { + s, ok := CloudConnectProviderType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x Label) String() string { + s, ok := Label_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x TrafficType) String() string { + s, ok := TrafficType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x FieldSelector) String() string { + s, ok := FieldSelector_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} func (this *AWSREType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2226,14 +3672,14 @@ func (this *AWSVPCAttachmentType_CustomRouting) Equal(that interface{}) bool { } return true } -func (this *DefaultRoute) Equal(that interface{}) bool { +func (this *AzureVnetAttachmentListType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultRoute) + that1, ok := that.(*AzureVnetAttachmentListType) if !ok { - that2, ok := that.(DefaultRoute) + that2, ok := that.(AzureVnetAttachmentListType) if ok { that1 = &that2 } else { @@ -2245,25 +3691,24 @@ func (this *DefaultRoute) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.DefaultRouteChoice == nil { - if this.DefaultRouteChoice != nil { + if len(this.VnetList) != len(that1.VnetList) { + return false + } + for i := range this.VnetList { + if !this.VnetList[i].Equal(that1.VnetList[i]) { return false } - } else if this.DefaultRouteChoice == nil { - return false - } else if !this.DefaultRouteChoice.Equal(that1.DefaultRouteChoice) { - return false } return true } -func (this *DefaultRoute_AllRouteTables) Equal(that interface{}) bool { +func (this *AzureVNETAttachmentType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultRoute_AllRouteTables) + that1, ok := that.(*AzureVNETAttachmentType) if !ok { - that2, ok := that.(DefaultRoute_AllRouteTables) + that2, ok := that.(AzureVNETAttachmentType) if ok { that1 = &that2 } else { @@ -2275,19 +3720,31 @@ func (this *DefaultRoute_AllRouteTables) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AllRouteTables.Equal(that1.AllRouteTables) { + if this.SubscriptionId != that1.SubscriptionId { + return false + } + if this.VnetId != that1.VnetId { + return false + } + if that1.RoutingChoice == nil { + if this.RoutingChoice != nil { + return false + } + } else if this.RoutingChoice == nil { + return false + } else if !this.RoutingChoice.Equal(that1.RoutingChoice) { return false } return true } -func (this *DefaultRoute_SelectiveRouteTables) Equal(that interface{}) bool { +func (this *AzureVNETAttachmentType_ManualRouting) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultRoute_SelectiveRouteTables) + that1, ok := that.(*AzureVNETAttachmentType_ManualRouting) if !ok { - that2, ok := that.(DefaultRoute_SelectiveRouteTables) + that2, ok := that.(AzureVNETAttachmentType_ManualRouting) if ok { that1 = &that2 } else { @@ -2299,19 +3756,19 @@ func (this *DefaultRoute_SelectiveRouteTables) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SelectiveRouteTables.Equal(that1.SelectiveRouteTables) { + if !this.ManualRouting.Equal(that1.ManualRouting) { return false } return true } -func (this *AWSSubnetIDListType) Equal(that interface{}) bool { +func (this *AzureVNETAttachmentType_CustomRouting) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AWSSubnetIDListType) + that1, ok := that.(*AzureVNETAttachmentType_CustomRouting) if !ok { - that2, ok := that.(AWSSubnetIDListType) + that2, ok := that.(AzureVNETAttachmentType_CustomRouting) if ok { that1 = &that2 } else { @@ -2323,10 +3780,112 @@ func (this *AWSSubnetIDListType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.SubnetIds) != len(that1.SubnetIds) { + if !this.CustomRouting.Equal(that1.CustomRouting) { return false } - for i := range this.SubnetIds { + return true +} +func (this *DefaultRoute) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DefaultRoute) + if !ok { + that2, ok := that.(DefaultRoute) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.DefaultRouteChoice == nil { + if this.DefaultRouteChoice != nil { + return false + } + } else if this.DefaultRouteChoice == nil { + return false + } else if !this.DefaultRouteChoice.Equal(that1.DefaultRouteChoice) { + return false + } + return true +} +func (this *DefaultRoute_AllRouteTables) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DefaultRoute_AllRouteTables) + if !ok { + that2, ok := that.(DefaultRoute_AllRouteTables) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AllRouteTables.Equal(that1.AllRouteTables) { + return false + } + return true +} +func (this *DefaultRoute_SelectiveRouteTables) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DefaultRoute_SelectiveRouteTables) + if !ok { + that2, ok := that.(DefaultRoute_SelectiveRouteTables) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SelectiveRouteTables.Equal(that1.SelectiveRouteTables) { + return false + } + return true +} +func (this *AWSSubnetIDListType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AWSSubnetIDListType) + if !ok { + that2, ok := that.(AWSSubnetIDListType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.SubnetIds) != len(that1.SubnetIds) { + return false + } + for i := range this.SubnetIds { if this.SubnetIds[i] != that1.SubnetIds[i] { return false } @@ -2391,6 +3950,96 @@ func (this *AWSDefaultRoutesRouteTable) Equal(that interface{}) bool { } return true } +func (this *AzureRouteTables) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AzureRouteTables) + if !ok { + that2, ok := that.(AzureRouteTables) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.RouteTableId) != len(that1.RouteTableId) { + return false + } + for i := range this.RouteTableId { + if this.RouteTableId[i] != that1.RouteTableId[i] { + return false + } + } + return true +} +func (this *AzureRouteTableWithStaticRouteListType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AzureRouteTableWithStaticRouteListType) + if !ok { + that2, ok := that.(AzureRouteTableWithStaticRouteListType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.RouteTables) != len(that1.RouteTables) { + return false + } + for i := range this.RouteTables { + if !this.RouteTables[i].Equal(that1.RouteTables[i]) { + return false + } + } + return true +} +func (this *AzureRouteTableWithStaticRoute) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AzureRouteTableWithStaticRoute) + if !ok { + that2, ok := that.(AzureRouteTableWithStaticRoute) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.RouteTableId != that1.RouteTableId { + return false + } + if len(this.StaticRoutes) != len(that1.StaticRoutes) { + return false + } + for i := range this.StaticRoutes { + if this.StaticRoutes[i] != that1.StaticRoutes[i] { + return false + } + } + return true +} func (this *AWSRouteTableType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2501,6 +4150,60 @@ func (this *ReplaceAWSTGWSiteType) Equal(that interface{}) bool { } return true } +func (this *AzureVNETSiteType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AzureVNETSiteType) + if !ok { + that2, ok := that.(AzureVNETSiteType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Site.Equal(that1.Site) { + return false + } + if !this.Cred.Equal(that1.Cred) { + return false + } + if !this.VnetAttachments.Equal(that1.VnetAttachments) { + return false + } + return true +} +func (this *ReplaceAzureVNETSiteType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceAzureVNETSiteType) + if !ok { + that2, ok := that.(ReplaceAzureVNETSiteType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.VnetAttachments.Equal(that1.VnetAttachments) { + return false + } + return true +} func (this *CloudConnectStatusType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2555,6 +4258,30 @@ func (this *CloudConnectStatusType_CloudConnectAwsSite) Equal(that interface{}) } return true } +func (this *CloudConnectStatusType_CloudConnectAzureSite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CloudConnectStatusType_CloudConnectAzureSite) + if !ok { + that2, ok := that.(CloudConnectStatusType_CloudConnectAzureSite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CloudConnectAzureSite.Equal(that1.CloudConnectAzureSite) { + return false + } + return true +} func (this *AWSAttachmentsListStatusType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2615,7 +4342,10 @@ func (this *AWSAttachmentsStatusType) Equal(that interface{}) bool { if this.VpcOwnerId != that1.VpcOwnerId { return false } - if this.State != that1.State { + if this.VpcCidr != that1.VpcCidr { + return false + } + if this.VpcDeploymentState != that1.VpcDeploymentState { return false } if this.DeploymentStatus != that1.DeploymentStatus { @@ -2681,14 +4411,110 @@ func (this *SubnetStatusType) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType) Equal(that interface{}) bool { +func (this *AzureAttachmentsListStatusType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType) + that1, ok := that.(*AzureAttachmentsListStatusType) if !ok { - that2, ok := that.(GlobalSpecType) + that2, ok := that.(AzureAttachmentsListStatusType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.AttachmentStatus) != len(that1.AttachmentStatus) { + return false + } + for i := range this.AttachmentStatus { + if !this.AttachmentStatus[i].Equal(that1.AttachmentStatus[i]) { + return false + } + } + return true +} +func (this *AzureAttachmentsStatusType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AzureAttachmentsStatusType) + if !ok { + that2, ok := that.(AzureAttachmentsStatusType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.VnetAttachmentId != that1.VnetAttachmentId { + return false + } + if !this.CreationTime.Equal(that1.CreationTime) { + return false + } + if this.SpokeVnetId != that1.SpokeVnetId { + return false + } + if this.HubVnetName != that1.HubVnetName { + return false + } + if this.HubOwnerSubscriptionid != that1.HubOwnerSubscriptionid { + return false + } + if this.PeeringState != that1.PeeringState { + return false + } + if this.ProvisioningState != that1.ProvisioningState { + return false + } + if this.DeploymentStatus != that1.DeploymentStatus { + return false + } + if this.PeeringSyncLevel != that1.PeeringSyncLevel { + return false + } + if len(this.Tags) != len(that1.Tags) { + return false + } + for i := range this.Tags { + if this.Tags[i] != that1.Tags[i] { + return false + } + } + if len(this.Subnets) != len(that1.Subnets) { + return false + } + for i := range this.Subnets { + if !this.Subnets[i].Equal(that1.Subnets[i]) { + return false + } + } + if !this.InstalledRoutes.Equal(that1.InstalledRoutes) { + return false + } + return true +} +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) if ok { that1 = &that2 } else { @@ -2740,6 +4566,12 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if this.State != that1.State { return false } + if this.OnboardedVpc != that1.OnboardedVpc { + return false + } + if !this.Coordinates.Equal(that1.Coordinates) { + return false + } return true } func (this *GlobalSpecType_AwsRe) Equal(that interface{}) bool { @@ -2790,6 +4622,30 @@ func (this *GlobalSpecType_AwsTgwSite) Equal(that interface{}) bool { } return true } +func (this *GlobalSpecType_AzureVnetSite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_AzureVnetSite) + if !ok { + that2, ok := that.(GlobalSpecType_AzureVnetSite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AzureVnetSite.Equal(that1.AzureVnetSite) { + return false + } + return true +} func (this *GlobalSpecType_Bandwidth_500Mbs) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2895,6 +4751,30 @@ func (this *CreateSpecType_AwsTgwSite) Equal(that interface{}) bool { } return true } +func (this *CreateSpecType_AzureVnetSite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType_AzureVnetSite) + if !ok { + that2, ok := that.(CreateSpecType_AzureVnetSite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AzureVnetSite.Equal(that1.AzureVnetSite) { + return false + } + return true +} func (this *ReplaceSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2976,6 +4856,30 @@ func (this *ReplaceSpecType_AwsTgwSite) Equal(that interface{}) bool { } return true } +func (this *ReplaceSpecType_AzureVnetSite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_AzureVnetSite) + if !ok { + that2, ok := that.(ReplaceSpecType_AzureVnetSite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AzureVnetSite.Equal(that1.AzureVnetSite) { + return false + } + return true +} func (this *GetSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -3010,6 +4914,12 @@ func (this *GetSpecType) Equal(that interface{}) bool { if this.State != that1.State { return false } + if this.OnboardedVpc != that1.OnboardedVpc { + return false + } + if !this.Coordinates.Equal(that1.Coordinates) { + return false + } return true } func (this *GetSpecType_AwsRe) Equal(that interface{}) bool { @@ -3060,81 +4970,258 @@ func (this *GetSpecType_AwsTgwSite) Equal(that interface{}) bool { } return true } -func (this *AWSREType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&cloud_connect.AWSREType{") - if this.Region != nil { - s = append(s, "Region: "+fmt.Sprintf("%#v", this.Region)+",\n") - } - if this.Cred != nil { - s = append(s, "Cred: "+fmt.Sprintf("%#v", this.Cred)+",\n") +func (this *GetSpecType_AzureVnetSite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if this.VpcAttachments != nil { - s = append(s, "VpcAttachments: "+fmt.Sprintf("%#v", this.VpcAttachments)+",\n") + + that1, ok := that.(*GetSpecType_AzureVnetSite) + if !ok { + that2, ok := that.(GetSpecType_AzureVnetSite) + if ok { + that1 = &that2 + } else { + return false + } } - if this.CloudLinks != nil { - s = append(s, "CloudLinks: "+fmt.Sprintf("%#v", this.CloudLinks)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "Tgw: "+fmt.Sprintf("%#v", this.Tgw)+",\n") - if this.Peers != nil { - s = append(s, "Peers: "+fmt.Sprintf("%#v", this.Peers)+",\n") + if !this.AzureVnetSite.Equal(that1.AzureVnetSite) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *PeerType) GoString() string { - if this == nil { - return "nil" +func (this *LabelFilter) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 8) - s = append(s, "&cloud_connect.PeerType{") - s = append(s, "TgwAddress: "+fmt.Sprintf("%#v", this.TgwAddress)+",\n") - s = append(s, "PeerAsn: "+fmt.Sprintf("%#v", this.PeerAsn)+",\n") - if this.Node != nil { - s = append(s, "Node: "+fmt.Sprintf("%#v", this.Node)+",\n") + + that1, ok := that.(*LabelFilter) + if !ok { + that2, ok := that.(LabelFilter) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "InsideGreSubnet: "+fmt.Sprintf("%#v", this.InsideGreSubnet)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CloudLinkListType) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 5) - s = append(s, "&cloud_connect.CloudLinkListType{") - if this.CloudLink != nil { - s = append(s, "CloudLink: "+fmt.Sprintf("%#v", this.CloudLink)+",\n") + if this.Label != that1.Label { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AWSVPCAttachmentListType) GoString() string { - if this == nil { - return "nil" + if this.Op != that1.Op { + return false } - s := make([]string, 0, 5) - s = append(s, "&cloud_connect.AWSVPCAttachmentListType{") - if this.VpcList != nil { - s = append(s, "VpcList: "+fmt.Sprintf("%#v", this.VpcList)+",\n") + if this.Value != that1.Value { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *AWSVPCAttachmentType) GoString() string { - if this == nil { - return "nil" +func (this *CustomerEdge) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 8) - s = append(s, "&cloud_connect.AWSVPCAttachmentType{") - s = append(s, "VpcId: "+fmt.Sprintf("%#v", this.VpcId)+",\n") - if this.RoutingChoice != nil { - s = append(s, "RoutingChoice: "+fmt.Sprintf("%#v", this.RoutingChoice)+",\n") + + that1, ok := that.(*CustomerEdge) + if !ok { + that2, ok := that.(CustomerEdge) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Name != that1.Name { + return false + } + return true +} +func (this *MetricData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*MetricData) + if !ok { + that2, ok := that.(MetricData) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Type != that1.Type { + return false + } + if this.Unit != that1.Unit { + return false + } + if len(this.Values) != len(that1.Values) { + return false + } + for i := range this.Values { + if !this.Values[i].Equal(that1.Values[i]) { + return false + } + } + return true +} +func (this *SegmentationData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SegmentationData) + if !ok { + that2, ok := that.(SegmentationData) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Type != that1.Type { + return false + } + if len(this.Data) != len(that1.Data) { + return false + } + for i := range this.Data { + if !this.Data[i].Equal(that1.Data[i]) { + return false + } + } + return true +} +func (this *EdgeData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EdgeData) + if !ok { + that2, ok := that.(EdgeData) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Ce.Equal(that1.Ce) { + return false + } + if len(this.Segments) != len(that1.Segments) { + return false + } + for i := range this.Segments { + if !this.Segments[i].Equal(that1.Segments[i]) { + return false + } + } + return true +} +func (this *AWSREType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&cloud_connect.AWSREType{") + if this.Region != nil { + s = append(s, "Region: "+fmt.Sprintf("%#v", this.Region)+",\n") + } + if this.Cred != nil { + s = append(s, "Cred: "+fmt.Sprintf("%#v", this.Cred)+",\n") + } + if this.VpcAttachments != nil { + s = append(s, "VpcAttachments: "+fmt.Sprintf("%#v", this.VpcAttachments)+",\n") + } + if this.CloudLinks != nil { + s = append(s, "CloudLinks: "+fmt.Sprintf("%#v", this.CloudLinks)+",\n") + } + s = append(s, "Tgw: "+fmt.Sprintf("%#v", this.Tgw)+",\n") + if this.Peers != nil { + s = append(s, "Peers: "+fmt.Sprintf("%#v", this.Peers)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *PeerType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cloud_connect.PeerType{") + s = append(s, "TgwAddress: "+fmt.Sprintf("%#v", this.TgwAddress)+",\n") + s = append(s, "PeerAsn: "+fmt.Sprintf("%#v", this.PeerAsn)+",\n") + if this.Node != nil { + s = append(s, "Node: "+fmt.Sprintf("%#v", this.Node)+",\n") + } + s = append(s, "InsideGreSubnet: "+fmt.Sprintf("%#v", this.InsideGreSubnet)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CloudLinkListType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.CloudLinkListType{") + if this.CloudLink != nil { + s = append(s, "CloudLink: "+fmt.Sprintf("%#v", this.CloudLink)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AWSVPCAttachmentListType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.AWSVPCAttachmentListType{") + if this.VpcList != nil { + s = append(s, "VpcList: "+fmt.Sprintf("%#v", this.VpcList)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AWSVPCAttachmentType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cloud_connect.AWSVPCAttachmentType{") + s = append(s, "VpcId: "+fmt.Sprintf("%#v", this.VpcId)+",\n") + if this.RoutingChoice != nil { + s = append(s, "RoutingChoice: "+fmt.Sprintf("%#v", this.RoutingChoice)+",\n") + } + s = append(s, "}") return strings.Join(s, "") } func (this *AWSVPCAttachmentType_ManualRouting) GoString() string { @@ -3161,6 +5248,48 @@ func (this *AWSVPCAttachmentType_CustomRouting) GoString() string { `CustomRouting:` + fmt.Sprintf("%#v", this.CustomRouting) + `}`}, ", ") return s } +func (this *AzureVnetAttachmentListType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.AzureVnetAttachmentListType{") + if this.VnetList != nil { + s = append(s, "VnetList: "+fmt.Sprintf("%#v", this.VnetList)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AzureVNETAttachmentType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cloud_connect.AzureVNETAttachmentType{") + s = append(s, "SubscriptionId: "+fmt.Sprintf("%#v", this.SubscriptionId)+",\n") + s = append(s, "VnetId: "+fmt.Sprintf("%#v", this.VnetId)+",\n") + if this.RoutingChoice != nil { + s = append(s, "RoutingChoice: "+fmt.Sprintf("%#v", this.RoutingChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AzureVNETAttachmentType_ManualRouting) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.AzureVNETAttachmentType_ManualRouting{` + + `ManualRouting:` + fmt.Sprintf("%#v", this.ManualRouting) + `}`}, ", ") + return s +} +func (this *AzureVNETAttachmentType_CustomRouting) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.AzureVNETAttachmentType_CustomRouting{` + + `CustomRouting:` + fmt.Sprintf("%#v", this.CustomRouting) + `}`}, ", ") + return s +} func (this *DefaultRoute) GoString() string { if this == nil { return "nil" @@ -3221,6 +5350,39 @@ func (this *AWSDefaultRoutesRouteTable) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *AzureRouteTables) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.AzureRouteTables{") + s = append(s, "RouteTableId: "+fmt.Sprintf("%#v", this.RouteTableId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AzureRouteTableWithStaticRouteListType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.AzureRouteTableWithStaticRouteListType{") + if this.RouteTables != nil { + s = append(s, "RouteTables: "+fmt.Sprintf("%#v", this.RouteTables)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AzureRouteTableWithStaticRoute) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cloud_connect.AzureRouteTableWithStaticRoute{") + s = append(s, "RouteTableId: "+fmt.Sprintf("%#v", this.RouteTableId)+",\n") + s = append(s, "StaticRoutes: "+fmt.Sprintf("%#v", this.StaticRoutes)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} func (this *AWSRouteTableType) GoString() string { if this == nil { return "nil" @@ -3274,11 +5436,41 @@ func (this *ReplaceAWSTGWSiteType) GoString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *CloudConnectStatusType) GoString() string { +func (this *AzureVNETSiteType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.AzureVNETSiteType{") + if this.Site != nil { + s = append(s, "Site: "+fmt.Sprintf("%#v", this.Site)+",\n") + } + if this.Cred != nil { + s = append(s, "Cred: "+fmt.Sprintf("%#v", this.Cred)+",\n") + } + if this.VnetAttachments != nil { + s = append(s, "VnetAttachments: "+fmt.Sprintf("%#v", this.VnetAttachments)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceAzureVNETSiteType) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 5) + s = append(s, "&cloud_connect.ReplaceAzureVNETSiteType{") + if this.VnetAttachments != nil { + s = append(s, "VnetAttachments: "+fmt.Sprintf("%#v", this.VnetAttachments)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CloudConnectStatusType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) s = append(s, "&cloud_connect.CloudConnectStatusType{") if this.CloudConnectDeployment != nil { s = append(s, "CloudConnectDeployment: "+fmt.Sprintf("%#v", this.CloudConnectDeployment)+",\n") @@ -3294,6 +5486,14 @@ func (this *CloudConnectStatusType_CloudConnectAwsSite) GoString() string { `CloudConnectAwsSite:` + fmt.Sprintf("%#v", this.CloudConnectAwsSite) + `}`}, ", ") return s } +func (this *CloudConnectStatusType_CloudConnectAzureSite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.CloudConnectStatusType_CloudConnectAzureSite{` + + `CloudConnectAzureSite:` + fmt.Sprintf("%#v", this.CloudConnectAzureSite) + `}`}, ", ") + return s +} func (this *AWSAttachmentsListStatusType) GoString() string { if this == nil { return "nil" @@ -3310,7 +5510,7 @@ func (this *AWSAttachmentsStatusType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 13) + s := make([]string, 0, 14) s = append(s, "&cloud_connect.AWSAttachmentsStatusType{") s = append(s, "TgwAttachmentId: "+fmt.Sprintf("%#v", this.TgwAttachmentId)+",\n") if this.CreationTime != nil { @@ -3318,7 +5518,8 @@ func (this *AWSAttachmentsStatusType) GoString() string { } s = append(s, "VpcId: "+fmt.Sprintf("%#v", this.VpcId)+",\n") s = append(s, "VpcOwnerId: "+fmt.Sprintf("%#v", this.VpcOwnerId)+",\n") - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "VpcCidr: "+fmt.Sprintf("%#v", this.VpcCidr)+",\n") + s = append(s, "VpcDeploymentState: "+fmt.Sprintf("%#v", this.VpcDeploymentState)+",\n") s = append(s, "DeploymentStatus: "+fmt.Sprintf("%#v", this.DeploymentStatus)+",\n") keysForTags := make([]string, 0, len(this.Tags)) for k, _ := range this.Tags { @@ -3357,14 +5558,65 @@ func (this *SubnetStatusType) GoString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *GlobalSpecType) GoString() string { +func (this *AzureAttachmentsListStatusType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 11) - s = append(s, "&cloud_connect.GlobalSpecType{") - if this.Cloud != nil { - s = append(s, "Cloud: "+fmt.Sprintf("%#v", this.Cloud)+",\n") + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.AzureAttachmentsListStatusType{") + if this.AttachmentStatus != nil { + s = append(s, "AttachmentStatus: "+fmt.Sprintf("%#v", this.AttachmentStatus)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AzureAttachmentsStatusType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 16) + s = append(s, "&cloud_connect.AzureAttachmentsStatusType{") + s = append(s, "VnetAttachmentId: "+fmt.Sprintf("%#v", this.VnetAttachmentId)+",\n") + if this.CreationTime != nil { + s = append(s, "CreationTime: "+fmt.Sprintf("%#v", this.CreationTime)+",\n") + } + s = append(s, "SpokeVnetId: "+fmt.Sprintf("%#v", this.SpokeVnetId)+",\n") + s = append(s, "HubVnetName: "+fmt.Sprintf("%#v", this.HubVnetName)+",\n") + s = append(s, "HubOwnerSubscriptionid: "+fmt.Sprintf("%#v", this.HubOwnerSubscriptionid)+",\n") + s = append(s, "PeeringState: "+fmt.Sprintf("%#v", this.PeeringState)+",\n") + s = append(s, "ProvisioningState: "+fmt.Sprintf("%#v", this.ProvisioningState)+",\n") + s = append(s, "DeploymentStatus: "+fmt.Sprintf("%#v", this.DeploymentStatus)+",\n") + s = append(s, "PeeringSyncLevel: "+fmt.Sprintf("%#v", this.PeeringSyncLevel)+",\n") + keysForTags := make([]string, 0, len(this.Tags)) + for k, _ := range this.Tags { + keysForTags = append(keysForTags, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + mapStringForTags := "map[string]string{" + for _, k := range keysForTags { + mapStringForTags += fmt.Sprintf("%#v: %#v,", k, this.Tags[k]) + } + mapStringForTags += "}" + if this.Tags != nil { + s = append(s, "Tags: "+mapStringForTags+",\n") + } + if this.Subnets != nil { + s = append(s, "Subnets: "+fmt.Sprintf("%#v", this.Subnets)+",\n") + } + if this.InstalledRoutes != nil { + s = append(s, "InstalledRoutes: "+fmt.Sprintf("%#v", this.InstalledRoutes)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 14) + s = append(s, "&cloud_connect.GlobalSpecType{") + if this.Cloud != nil { + s = append(s, "Cloud: "+fmt.Sprintf("%#v", this.Cloud)+",\n") } if this.Segment != nil { s = append(s, "Segment: "+fmt.Sprintf("%#v", this.Segment)+",\n") @@ -3379,6 +5631,10 @@ func (this *GlobalSpecType) GoString() string { s = append(s, "VirtualNetwork: "+fmt.Sprintf("%#v", this.VirtualNetwork)+",\n") } s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "OnboardedVpc: "+fmt.Sprintf("%#v", this.OnboardedVpc)+",\n") + if this.Coordinates != nil { + s = append(s, "Coordinates: "+fmt.Sprintf("%#v", this.Coordinates)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3398,6 +5654,14 @@ func (this *GlobalSpecType_AwsTgwSite) GoString() string { `AwsTgwSite:` + fmt.Sprintf("%#v", this.AwsTgwSite) + `}`}, ", ") return s } +func (this *GlobalSpecType_AzureVnetSite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.GlobalSpecType_AzureVnetSite{` + + `AzureVnetSite:` + fmt.Sprintf("%#v", this.AzureVnetSite) + `}`}, ", ") + return s +} func (this *GlobalSpecType_Bandwidth_500Mbs) GoString() string { if this == nil { return "nil" @@ -3410,7 +5674,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 7) + s := make([]string, 0, 8) s = append(s, "&cloud_connect.CreateSpecType{") if this.Cloud != nil { s = append(s, "Cloud: "+fmt.Sprintf("%#v", this.Cloud)+",\n") @@ -3437,11 +5701,19 @@ func (this *CreateSpecType_AwsTgwSite) GoString() string { `AwsTgwSite:` + fmt.Sprintf("%#v", this.AwsTgwSite) + `}`}, ", ") return s } +func (this *CreateSpecType_AzureVnetSite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.CreateSpecType_AzureVnetSite{` + + `AzureVnetSite:` + fmt.Sprintf("%#v", this.AzureVnetSite) + `}`}, ", ") + return s +} func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 7) + s := make([]string, 0, 8) s = append(s, "&cloud_connect.ReplaceSpecType{") if this.Cloud != nil { s = append(s, "Cloud: "+fmt.Sprintf("%#v", this.Cloud)+",\n") @@ -3468,11 +5740,19 @@ func (this *ReplaceSpecType_AwsTgwSite) GoString() string { `AwsTgwSite:` + fmt.Sprintf("%#v", this.AwsTgwSite) + `}`}, ", ") return s } +func (this *ReplaceSpecType_AzureVnetSite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.ReplaceSpecType_AzureVnetSite{` + + `AzureVnetSite:` + fmt.Sprintf("%#v", this.AzureVnetSite) + `}`}, ", ") + return s +} func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 8) + s := make([]string, 0, 11) s = append(s, "&cloud_connect.GetSpecType{") if this.Cloud != nil { s = append(s, "Cloud: "+fmt.Sprintf("%#v", this.Cloud)+",\n") @@ -3481,6 +5761,10 @@ func (this *GetSpecType) GoString() string { s = append(s, "Segment: "+fmt.Sprintf("%#v", this.Segment)+",\n") } s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "OnboardedVpc: "+fmt.Sprintf("%#v", this.OnboardedVpc)+",\n") + if this.Coordinates != nil { + s = append(s, "Coordinates: "+fmt.Sprintf("%#v", this.Coordinates)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3500,6 +5784,78 @@ func (this *GetSpecType_AwsTgwSite) GoString() string { `AwsTgwSite:` + fmt.Sprintf("%#v", this.AwsTgwSite) + `}`}, ", ") return s } +func (this *GetSpecType_AzureVnetSite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cloud_connect.GetSpecType_AzureVnetSite{` + + `AzureVnetSite:` + fmt.Sprintf("%#v", this.AzureVnetSite) + `}`}, ", ") + return s +} +func (this *LabelFilter) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.LabelFilter{") + s = append(s, "Label: "+fmt.Sprintf("%#v", this.Label)+",\n") + s = append(s, "Op: "+fmt.Sprintf("%#v", this.Op)+",\n") + s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CustomerEdge) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cloud_connect.CustomerEdge{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *MetricData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cloud_connect.MetricData{") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") + if this.Values != nil { + s = append(s, "Values: "+fmt.Sprintf("%#v", this.Values)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SegmentationData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cloud_connect.SegmentationData{") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + if this.Data != nil { + s = append(s, "Data: "+fmt.Sprintf("%#v", this.Data)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *EdgeData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cloud_connect.EdgeData{") + if this.Ce != nil { + s = append(s, "Ce: "+fmt.Sprintf("%#v", this.Ce)+",\n") + } + if this.Segments != nil { + s = append(s, "Segments: "+fmt.Sprintf("%#v", this.Segments)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} func valueToGoStringTypes(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -3830,6 +6186,131 @@ func (m *AWSVPCAttachmentType_CustomRouting) MarshalToSizedBuffer(dAtA []byte) ( } return len(dAtA) - i, nil } +func (m *AzureVnetAttachmentListType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AzureVnetAttachmentListType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureVnetAttachmentListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.VnetList) > 0 { + for iNdEx := len(m.VnetList) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.VnetList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *AzureVNETAttachmentType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AzureVNETAttachmentType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureVNETAttachmentType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.RoutingChoice != nil { + { + size := m.RoutingChoice.Size() + i -= size + if _, err := m.RoutingChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.VnetId) > 0 { + i -= len(m.VnetId) + copy(dAtA[i:], m.VnetId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.VnetId))) + i-- + dAtA[i] = 0x12 + } + if len(m.SubscriptionId) > 0 { + i -= len(m.SubscriptionId) + copy(dAtA[i:], m.SubscriptionId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SubscriptionId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *AzureVNETAttachmentType_ManualRouting) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureVNETAttachmentType_ManualRouting) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ManualRouting != nil { + { + size, err := m.ManualRouting.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *AzureVNETAttachmentType_CustomRouting) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureVNETAttachmentType_CustomRouting) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CustomRouting != nil { + { + size, err := m.CustomRouting.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} func (m *DefaultRoute) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4005,7 +6486,7 @@ func (m *AWSDefaultRoutesRouteTable) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *AWSRouteTableType) Marshal() (dAtA []byte, err error) { +func (m *AzureRouteTables) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -4015,38 +6496,29 @@ func (m *AWSRouteTableType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *AWSRouteTableType) MarshalTo(dAtA []byte) (int, error) { +func (m *AzureRouteTables) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AWSRouteTableType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AzureRouteTables) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.StaticRoutes) > 0 { - for iNdEx := len(m.StaticRoutes) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.StaticRoutes[iNdEx]) - copy(dAtA[i:], m.StaticRoutes[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.StaticRoutes[iNdEx]))) - i-- - dAtA[i] = 0x6 + if len(m.RouteTableId) > 0 { + for iNdEx := len(m.RouteTableId) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.RouteTableId[iNdEx]) + copy(dAtA[i:], m.RouteTableId[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RouteTableId[iNdEx]))) i-- - dAtA[i] = 0xe2 + dAtA[i] = 0xa } } - if len(m.RouteTableId) > 0 { - i -= len(m.RouteTableId) - copy(dAtA[i:], m.RouteTableId) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RouteTableId))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *ReplaceAWSREType) Marshal() (dAtA []byte, err error) { +func (m *AzureRouteTableWithStaticRouteListType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -4056,24 +6528,143 @@ func (m *ReplaceAWSREType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *ReplaceAWSREType) MarshalTo(dAtA []byte) (int, error) { +func (m *AzureRouteTableWithStaticRouteListType) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceAWSREType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AzureRouteTableWithStaticRouteListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.VpcAttachments != nil { - { - size, err := m.VpcAttachments.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.RouteTables) > 0 { + for iNdEx := len(m.RouteTables) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RouteTables[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *AzureRouteTableWithStaticRoute) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AzureRouteTableWithStaticRoute) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureRouteTableWithStaticRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.StaticRoutes) > 0 { + for iNdEx := len(m.StaticRoutes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.StaticRoutes[iNdEx]) + copy(dAtA[i:], m.StaticRoutes[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.StaticRoutes[iNdEx]))) + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xe2 + } + } + if len(m.RouteTableId) > 0 { + i -= len(m.RouteTableId) + copy(dAtA[i:], m.RouteTableId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RouteTableId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *AWSRouteTableType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AWSRouteTableType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AWSRouteTableType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.StaticRoutes) > 0 { + for iNdEx := len(m.StaticRoutes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.StaticRoutes[iNdEx]) + copy(dAtA[i:], m.StaticRoutes[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.StaticRoutes[iNdEx]))) + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xe2 + } + } + if len(m.RouteTableId) > 0 { + i -= len(m.RouteTableId) + copy(dAtA[i:], m.RouteTableId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RouteTableId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceAWSREType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceAWSREType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceAWSREType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.VpcAttachments != nil { + { + size, err := m.VpcAttachments.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x1a @@ -4175,6 +6766,100 @@ func (m *ReplaceAWSTGWSiteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *AzureVNETSiteType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AzureVNETSiteType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureVNETSiteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.VnetAttachments != nil { + { + size, err := m.VnetAttachments.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if m.Cred != nil { + { + size, err := m.Cred.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Site != nil { + { + size, err := m.Site.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceAzureVNETSiteType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceAzureVNETSiteType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceAzureVNETSiteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.VnetAttachments != nil { + { + size, err := m.VnetAttachments.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} + func (m *CloudConnectStatusType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4228,6 +6913,27 @@ func (m *CloudConnectStatusType_CloudConnectAwsSite) MarshalToSizedBuffer(dAtA [ } return len(dAtA) - i, nil } +func (m *CloudConnectStatusType_CloudConnectAzureSite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CloudConnectStatusType_CloudConnectAzureSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CloudConnectAzureSite != nil { + { + size, err := m.CloudConnectAzureSite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} func (m *AWSAttachmentsListStatusType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4285,6 +6991,18 @@ func (m *AWSAttachmentsStatusType) MarshalToSizedBuffer(dAtA []byte) (int, error _ = i var l int _ = l + if len(m.VpcCidr) > 0 { + i -= len(m.VpcCidr) + copy(dAtA[i:], m.VpcCidr) + i = encodeVarintTypes(dAtA, i, uint64(len(m.VpcCidr))) + i-- + dAtA[i] = 0x62 + } + if m.VpcDeploymentState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.VpcDeploymentState)) + i-- + dAtA[i] = 0x58 + } if len(m.Subnets) > 0 { for iNdEx := len(m.Subnets) - 1; iNdEx >= 0; iNdEx-- { { @@ -4342,13 +7060,6 @@ func (m *AWSAttachmentsStatusType) MarshalToSizedBuffer(dAtA []byte) (int, error i-- dAtA[i] = 0x3a } - if len(m.State) > 0 { - i -= len(m.State) - copy(dAtA[i:], m.State) - i = encodeVarintTypes(dAtA, i, uint64(len(m.State))) - i-- - dAtA[i] = 0x32 - } if len(m.VpcOwnerId) > 0 { i -= len(m.VpcOwnerId) copy(dAtA[i:], m.VpcOwnerId) @@ -4450,7 +7161,7 @@ func (m *SubnetStatusType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { +func (m *AzureAttachmentsListStatusType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -4460,25 +7171,20 @@ func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { +func (m *AzureAttachmentsListStatusType) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AzureAttachmentsListStatusType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.State != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x78 - } - if len(m.VirtualNetwork) > 0 { - for iNdEx := len(m.VirtualNetwork) - 1; iNdEx >= 0; iNdEx-- { + if len(m.AttachmentStatus) > 0 { + for iNdEx := len(m.AttachmentStatus) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.VirtualNetwork[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.AttachmentStatus[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4486,25 +7192,48 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x72 + dAtA[i] = 0xa } } - if m.Segment != nil { - { - size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a + return len(dAtA) - i, nil +} + +func (m *AzureAttachmentsStatusType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - if len(m.Sites) > 0 { - for iNdEx := len(m.Sites) - 1; iNdEx >= 0; iNdEx-- { + return dAtA[:n], nil +} + +func (m *AzureAttachmentsStatusType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureAttachmentsStatusType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.InstalledRoutes != nil { + { + size, err := m.InstalledRoutes.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 + } + if len(m.Subnets) > 0 { + for iNdEx := len(m.Subnets) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.Sites[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Subnets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4512,17 +7241,144 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x62 + dAtA[i] = 0x5a } } - if m.BandwidthOption != nil { + if len(m.Tags) > 0 { + keysForTags := make([]string, 0, len(m.Tags)) + for k := range m.Tags { + keysForTags = append(keysForTags, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + for iNdEx := len(keysForTags) - 1; iNdEx >= 0; iNdEx-- { + v := m.Tags[string(keysForTags[iNdEx])] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintTypes(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(keysForTags[iNdEx]) + copy(dAtA[i:], keysForTags[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForTags[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x52 + } + } + if len(m.PeeringSyncLevel) > 0 { + i -= len(m.PeeringSyncLevel) + copy(dAtA[i:], m.PeeringSyncLevel) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PeeringSyncLevel))) + i-- + dAtA[i] = 0x4a + } + if len(m.DeploymentStatus) > 0 { + i -= len(m.DeploymentStatus) + copy(dAtA[i:], m.DeploymentStatus) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DeploymentStatus))) + i-- + dAtA[i] = 0x42 + } + if len(m.ProvisioningState) > 0 { + i -= len(m.ProvisioningState) + copy(dAtA[i:], m.ProvisioningState) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ProvisioningState))) + i-- + dAtA[i] = 0x3a + } + if len(m.PeeringState) > 0 { + i -= len(m.PeeringState) + copy(dAtA[i:], m.PeeringState) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PeeringState))) + i-- + dAtA[i] = 0x32 + } + if len(m.HubOwnerSubscriptionid) > 0 { + i -= len(m.HubOwnerSubscriptionid) + copy(dAtA[i:], m.HubOwnerSubscriptionid) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HubOwnerSubscriptionid))) + i-- + dAtA[i] = 0x2a + } + if len(m.HubVnetName) > 0 { + i -= len(m.HubVnetName) + copy(dAtA[i:], m.HubVnetName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HubVnetName))) + i-- + dAtA[i] = 0x22 + } + if len(m.SpokeVnetId) > 0 { + i -= len(m.SpokeVnetId) + copy(dAtA[i:], m.SpokeVnetId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SpokeVnetId))) + i-- + dAtA[i] = 0x1a + } + if len(m.VnetAttachmentId) > 0 { + i -= len(m.VnetAttachmentId) + copy(dAtA[i:], m.VnetAttachmentId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.VnetAttachmentId))) + i-- + dAtA[i] = 0x12 + } + if m.CreationTime != nil { { - size := m.BandwidthOption.Size() + size, err := m.CreationTime.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } i -= size - if _, err := m.BandwidthOption.MarshalTo(dAtA[i:]); err != nil { + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Coordinates != nil { + { + size, err := m.Coordinates.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { return 0, err } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 + } + if m.OnboardedVpc != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.OnboardedVpc)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x88 } if m.Cloud != nil { { @@ -4533,6 +7389,60 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x78 + } + if len(m.VirtualNetwork) > 0 { + for iNdEx := len(m.VirtualNetwork) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.VirtualNetwork[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + } + if m.Segment != nil { + { + size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + if len(m.Sites) > 0 { + for iNdEx := len(m.Sites) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Sites[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 + } + } + if m.BandwidthOption != nil { + { + size := m.BandwidthOption.Size() + i -= size + if _, err := m.BandwidthOption.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } return len(dAtA) - i, nil } @@ -4599,6 +7509,29 @@ func (m *GlobalSpecType_Bandwidth_500Mbs) MarshalToSizedBuffer(dAtA []byte) (int } return len(dAtA) - i, nil } +func (m *GlobalSpecType_AzureVnetSite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_AzureVnetSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AzureVnetSite != nil { + { + size, err := m.AzureVnetSite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4619,6 +7552,15 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Cloud != nil { + { + size := m.Cloud.Size() + i -= size + if _, err := m.Cloud.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.Segment != nil { { size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) @@ -4631,15 +7573,6 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x6a } - if m.Cloud != nil { - { - size := m.Cloud.Size() - i -= size - if _, err := m.Cloud.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } return len(dAtA) - i, nil } @@ -4685,6 +7618,29 @@ func (m *CreateSpecType_AwsTgwSite) MarshalToSizedBuffer(dAtA []byte) (int, erro } return len(dAtA) - i, nil } +func (m *CreateSpecType_AzureVnetSite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType_AzureVnetSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AzureVnetSite != nil { + { + size, err := m.AzureVnetSite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4705,6 +7661,15 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Cloud != nil { + { + size := m.Cloud.Size() + i -= size + if _, err := m.Cloud.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.Segment != nil { { size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) @@ -4717,15 +7682,6 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x6a } - if m.Cloud != nil { - { - size := m.Cloud.Size() - i -= size - if _, err := m.Cloud.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } return len(dAtA) - i, nil } @@ -4771,14 +7727,37 @@ func (m *ReplaceSpecType_AwsTgwSite) MarshalToSizedBuffer(dAtA []byte) (int, err } return len(dAtA) - i, nil } -func (m *GetSpecType) Marshal() (dAtA []byte, err error) { +func (m *ReplaceSpecType_AzureVnetSite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_AzureVnetSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AzureVnetSite != nil { + { + size, err := m.AzureVnetSite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil } func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { @@ -4791,14 +7770,9 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.State != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x78 - } - if m.Segment != nil { + if m.Coordinates != nil { { - size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Coordinates.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4806,7 +7780,16 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x6a + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 + } + if m.OnboardedVpc != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.OnboardedVpc)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x88 } if m.Cloud != nil { { @@ -4817,6 +7800,23 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x78 + } + if m.Segment != nil { + { + size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } return len(dAtA) - i, nil } @@ -4862,6 +7862,237 @@ func (m *GetSpecType_AwsTgwSite) MarshalToSizedBuffer(dAtA []byte) (int, error) } return len(dAtA) - i, nil } +func (m *GetSpecType_AzureVnetSite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_AzureVnetSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AzureVnetSite != nil { + { + size, err := m.AzureVnetSite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} +func (m *LabelFilter) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LabelFilter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LabelFilter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Value) > 0 { + i -= len(m.Value) + copy(dAtA[i:], m.Value) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Value))) + i-- + dAtA[i] = 0x1a + } + if m.Op != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Op)) + i-- + dAtA[i] = 0x10 + } + if m.Label != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Label)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *CustomerEdge) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CustomerEdge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CustomerEdge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MetricData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MetricData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MetricData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Values) > 0 { + for iNdEx := len(m.Values) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Values[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if m.Unit != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Unit)) + i-- + dAtA[i] = 0x10 + } + if m.Type != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *SegmentationData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SegmentationData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SegmentationData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Data) > 0 { + for iNdEx := len(m.Data) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Data[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Type != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *EdgeData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EdgeData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EdgeData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Segments) > 0 { + for iNdEx := len(m.Segments) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Segments[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Ce != nil { + { + size, err := m.Ce.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { offset -= sovTypes(v) base := offset @@ -5014,52 +8245,111 @@ func (m *AWSVPCAttachmentType_CustomRouting) Size() (n int) { } return n } -func (m *DefaultRoute) Size() (n int) { +func (m *AzureVnetAttachmentListType) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.DefaultRouteChoice != nil { - n += m.DefaultRouteChoice.Size() + if len(m.VnetList) > 0 { + for _, e := range m.VnetList { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } } return n } -func (m *DefaultRoute_AllRouteTables) Size() (n int) { +func (m *AzureVNETAttachmentType) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.AllRouteTables != nil { - l = m.AllRouteTables.Size() + l = len(m.SubscriptionId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.VnetId) + if l > 0 { n += 1 + l + sovTypes(uint64(l)) } + if m.RoutingChoice != nil { + n += m.RoutingChoice.Size() + } return n } -func (m *DefaultRoute_SelectiveRouteTables) Size() (n int) { + +func (m *AzureVNETAttachmentType_ManualRouting) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SelectiveRouteTables != nil { - l = m.SelectiveRouteTables.Size() + if m.ManualRouting != nil { + l = m.ManualRouting.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *AWSSubnetIDListType) Size() (n int) { +func (m *AzureVNETAttachmentType_CustomRouting) Size() (n int) { if m == nil { return 0 } var l int _ = l - if len(m.SubnetIds) > 0 { - for _, s := range m.SubnetIds { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + if m.CustomRouting != nil { + l = m.CustomRouting.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *DefaultRoute) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultRouteChoice != nil { + n += m.DefaultRouteChoice.Size() + } + return n +} + +func (m *DefaultRoute_AllRouteTables) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllRouteTables != nil { + l = m.AllRouteTables.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *DefaultRoute_SelectiveRouteTables) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SelectiveRouteTables != nil { + l = m.SelectiveRouteTables.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *AWSSubnetIDListType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.SubnetIds) > 0 { + for _, s := range m.SubnetIds { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } } return n @@ -5095,6 +8385,55 @@ func (m *AWSDefaultRoutesRouteTable) Size() (n int) { return n } +func (m *AzureRouteTables) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RouteTableId) > 0 { + for _, s := range m.RouteTableId { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *AzureRouteTableWithStaticRouteListType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RouteTables) > 0 { + for _, e := range m.RouteTables { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *AzureRouteTableWithStaticRoute) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.RouteTableId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.StaticRoutes) > 0 { + for _, s := range m.StaticRoutes { + l = len(s) + n += 2 + l + sovTypes(uint64(l)) + } + } + return n +} + func (m *AWSRouteTableType) Size() (n int) { if m == nil { return 0 @@ -5161,6 +8500,40 @@ func (m *ReplaceAWSTGWSiteType) Size() (n int) { return n } +func (m *AzureVNETSiteType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Site != nil { + l = m.Site.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Cred != nil { + l = m.Cred.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.VnetAttachments != nil { + l = m.VnetAttachments.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ReplaceAzureVNETSiteType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.VnetAttachments != nil { + l = m.VnetAttachments.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + func (m *CloudConnectStatusType) Size() (n int) { if m == nil { return 0 @@ -5185,6 +8558,18 @@ func (m *CloudConnectStatusType_CloudConnectAwsSite) Size() (n int) { } return n } +func (m *CloudConnectStatusType_CloudConnectAzureSite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CloudConnectAzureSite != nil { + l = m.CloudConnectAzureSite.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *AWSAttachmentsListStatusType) Size() (n int) { if m == nil { return 0 @@ -5222,10 +8607,6 @@ func (m *AWSAttachmentsStatusType) Size() (n int) { if l > 0 { n += 1 + l + sovTypes(uint64(l)) } - l = len(m.State) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } l = len(m.DeploymentStatus) if l > 0 { n += 1 + l + sovTypes(uint64(l)) @@ -5248,6 +8629,13 @@ func (m *AWSAttachmentsStatusType) Size() (n int) { n += 1 + l + sovTypes(uint64(l)) } } + if m.VpcDeploymentState != 0 { + n += 1 + sovTypes(uint64(m.VpcDeploymentState)) + } + l = len(m.VpcCidr) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } return n } @@ -5284,6 +8672,84 @@ func (m *SubnetStatusType) Size() (n int) { return n } +func (m *AzureAttachmentsListStatusType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.AttachmentStatus) > 0 { + for _, e := range m.AttachmentStatus { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *AzureAttachmentsStatusType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CreationTime != nil { + l = m.CreationTime.Size() + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.VnetAttachmentId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.SpokeVnetId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.HubVnetName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.HubOwnerSubscriptionid) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.PeeringState) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.ProvisioningState) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.DeploymentStatus) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.PeeringSyncLevel) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Tags) > 0 { + for k, v := range m.Tags { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + 1 + len(v) + sovTypes(uint64(len(v))) + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) + } + } + if len(m.Subnets) > 0 { + for _, e := range m.Subnets { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.InstalledRoutes != nil { + l = m.InstalledRoutes.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + func (m *GlobalSpecType) Size() (n int) { if m == nil { return 0 @@ -5315,6 +8781,13 @@ func (m *GlobalSpecType) Size() (n int) { if m.State != 0 { n += 1 + sovTypes(uint64(m.State)) } + if m.OnboardedVpc != 0 { + n += 2 + sovTypes(uint64(m.OnboardedVpc)) + } + if m.Coordinates != nil { + l = m.Coordinates.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -5354,6 +8827,18 @@ func (m *GlobalSpecType_Bandwidth_500Mbs) Size() (n int) { } return n } +func (m *GlobalSpecType_AzureVnetSite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AzureVnetSite != nil { + l = m.AzureVnetSite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *CreateSpecType) Size() (n int) { if m == nil { return 0 @@ -5394,6 +8879,18 @@ func (m *CreateSpecType_AwsTgwSite) Size() (n int) { } return n } +func (m *CreateSpecType_AzureVnetSite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AzureVnetSite != nil { + l = m.AzureVnetSite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *ReplaceSpecType) Size() (n int) { if m == nil { return 0 @@ -5434,6 +8931,18 @@ func (m *ReplaceSpecType_AwsTgwSite) Size() (n int) { } return n } +func (m *ReplaceSpecType_AzureVnetSite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AzureVnetSite != nil { + l = m.AzureVnetSite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *GetSpecType) Size() (n int) { if m == nil { return 0 @@ -5450,6 +8959,13 @@ func (m *GetSpecType) Size() (n int) { if m.State != 0 { n += 1 + sovTypes(uint64(m.State)) } + if m.OnboardedVpc != 0 { + n += 2 + sovTypes(uint64(m.OnboardedVpc)) + } + if m.Coordinates != nil { + l = m.Coordinates.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -5477,20 +8993,121 @@ func (m *GetSpecType_AwsTgwSite) Size() (n int) { } return n } - -func sovTypes(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozTypes(x uint64) (n int) { - return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *AWSREType) String() string { - if this == nil { - return "nil" +func (m *GetSpecType_AzureVnetSite) Size() (n int) { + if m == nil { + return 0 } - repeatedStringForPeers := "[]*PeerType{" - for _, f := range this.Peers { - repeatedStringForPeers += strings.Replace(f.String(), "PeerType", "PeerType", 1) + "," + var l int + _ = l + if m.AzureVnetSite != nil { + l = m.AzureVnetSite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *LabelFilter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Label != 0 { + n += 1 + sovTypes(uint64(m.Label)) + } + if m.Op != 0 { + n += 1 + sovTypes(uint64(m.Op)) + } + l = len(m.Value) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CustomerEdge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *MetricData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Type != 0 { + n += 1 + sovTypes(uint64(m.Type)) + } + if m.Unit != 0 { + n += 1 + sovTypes(uint64(m.Unit)) + } + if len(m.Values) > 0 { + for _, e := range m.Values { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *SegmentationData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Type != 0 { + n += 1 + sovTypes(uint64(m.Type)) + } + if len(m.Data) > 0 { + for _, e := range m.Data { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *EdgeData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Ce != nil { + l = m.Ce.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Segments) > 0 { + for _, e := range m.Segments { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *AWSREType) String() string { + if this == nil { + return "nil" + } + repeatedStringForPeers := "[]*PeerType{" + for _, f := range this.Peers { + repeatedStringForPeers += strings.Replace(f.String(), "PeerType", "PeerType", 1) + "," } repeatedStringForPeers += "}" s := strings.Join([]string{`&AWSREType{`, @@ -5588,6 +9205,53 @@ func (this *AWSVPCAttachmentType_CustomRouting) String() string { }, "") return s } +func (this *AzureVnetAttachmentListType) String() string { + if this == nil { + return "nil" + } + repeatedStringForVnetList := "[]*AzureVNETAttachmentType{" + for _, f := range this.VnetList { + repeatedStringForVnetList += strings.Replace(f.String(), "AzureVNETAttachmentType", "AzureVNETAttachmentType", 1) + "," + } + repeatedStringForVnetList += "}" + s := strings.Join([]string{`&AzureVnetAttachmentListType{`, + `VnetList:` + repeatedStringForVnetList + `,`, + `}`, + }, "") + return s +} +func (this *AzureVNETAttachmentType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureVNETAttachmentType{`, + `SubscriptionId:` + fmt.Sprintf("%v", this.SubscriptionId) + `,`, + `VnetId:` + fmt.Sprintf("%v", this.VnetId) + `,`, + `RoutingChoice:` + fmt.Sprintf("%v", this.RoutingChoice) + `,`, + `}`, + }, "") + return s +} +func (this *AzureVNETAttachmentType_ManualRouting) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureVNETAttachmentType_ManualRouting{`, + `ManualRouting:` + strings.Replace(fmt.Sprintf("%v", this.ManualRouting), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AzureVNETAttachmentType_CustomRouting) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureVNETAttachmentType_CustomRouting{`, + `CustomRouting:` + strings.Replace(fmt.Sprintf("%v", this.CustomRouting), "AzureRouteTableWithStaticRouteListType", "AzureRouteTableWithStaticRouteListType", 1) + `,`, + `}`, + }, "") + return s +} func (this *DefaultRoute) String() string { if this == nil { return "nil" @@ -5653,6 +9317,42 @@ func (this *AWSDefaultRoutesRouteTable) String() string { }, "") return s } +func (this *AzureRouteTables) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureRouteTables{`, + `RouteTableId:` + fmt.Sprintf("%v", this.RouteTableId) + `,`, + `}`, + }, "") + return s +} +func (this *AzureRouteTableWithStaticRouteListType) String() string { + if this == nil { + return "nil" + } + repeatedStringForRouteTables := "[]*AzureRouteTableWithStaticRoute{" + for _, f := range this.RouteTables { + repeatedStringForRouteTables += strings.Replace(f.String(), "AzureRouteTableWithStaticRoute", "AzureRouteTableWithStaticRoute", 1) + "," + } + repeatedStringForRouteTables += "}" + s := strings.Join([]string{`&AzureRouteTableWithStaticRouteListType{`, + `RouteTables:` + repeatedStringForRouteTables + `,`, + `}`, + }, "") + return s +} +func (this *AzureRouteTableWithStaticRoute) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureRouteTableWithStaticRoute{`, + `RouteTableId:` + fmt.Sprintf("%v", this.RouteTableId) + `,`, + `StaticRoutes:` + fmt.Sprintf("%v", this.StaticRoutes) + `,`, + `}`, + }, "") + return s +} func (this *AWSRouteTableType) String() string { if this == nil { return "nil" @@ -5696,6 +9396,28 @@ func (this *ReplaceAWSTGWSiteType) String() string { }, "") return s } +func (this *AzureVNETSiteType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureVNETSiteType{`, + `Site:` + strings.Replace(fmt.Sprintf("%v", this.Site), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `Cred:` + strings.Replace(fmt.Sprintf("%v", this.Cred), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `VnetAttachments:` + strings.Replace(this.VnetAttachments.String(), "AzureVnetAttachmentListType", "AzureVnetAttachmentListType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceAzureVNETSiteType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceAzureVNETSiteType{`, + `VnetAttachments:` + strings.Replace(this.VnetAttachments.String(), "AzureVnetAttachmentListType", "AzureVnetAttachmentListType", 1) + `,`, + `}`, + }, "") + return s +} func (this *CloudConnectStatusType) String() string { if this == nil { return "nil" @@ -5716,6 +9438,16 @@ func (this *CloudConnectStatusType_CloudConnectAwsSite) String() string { }, "") return s } +func (this *CloudConnectStatusType_CloudConnectAzureSite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CloudConnectStatusType_CloudConnectAzureSite{`, + `CloudConnectAzureSite:` + strings.Replace(fmt.Sprintf("%v", this.CloudConnectAzureSite), "AzureAttachmentsListStatusType", "AzureAttachmentsListStatusType", 1) + `,`, + `}`, + }, "") + return s +} func (this *AWSAttachmentsListStatusType) String() string { if this == nil { return "nil" @@ -5755,11 +9487,12 @@ func (this *AWSAttachmentsStatusType) String() string { `TgwAttachmentId:` + fmt.Sprintf("%v", this.TgwAttachmentId) + `,`, `VpcId:` + fmt.Sprintf("%v", this.VpcId) + `,`, `VpcOwnerId:` + fmt.Sprintf("%v", this.VpcOwnerId) + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, `DeploymentStatus:` + fmt.Sprintf("%v", this.DeploymentStatus) + `,`, `Tags:` + mapStringForTags + `,`, `InstalledRoutes:` + strings.Replace(this.InstalledRoutes.String(), "AWSRouteTableListType", "AWSRouteTableListType", 1) + `,`, `Subnets:` + repeatedStringForSubnets + `,`, + `VpcDeploymentState:` + fmt.Sprintf("%v", this.VpcDeploymentState) + `,`, + `VpcCidr:` + fmt.Sprintf("%v", this.VpcCidr) + `,`, `}`, }, "") return s @@ -5779,6 +9512,57 @@ func (this *SubnetStatusType) String() string { }, "") return s } +func (this *AzureAttachmentsListStatusType) String() string { + if this == nil { + return "nil" + } + repeatedStringForAttachmentStatus := "[]*AzureAttachmentsStatusType{" + for _, f := range this.AttachmentStatus { + repeatedStringForAttachmentStatus += strings.Replace(f.String(), "AzureAttachmentsStatusType", "AzureAttachmentsStatusType", 1) + "," + } + repeatedStringForAttachmentStatus += "}" + s := strings.Join([]string{`&AzureAttachmentsListStatusType{`, + `AttachmentStatus:` + repeatedStringForAttachmentStatus + `,`, + `}`, + }, "") + return s +} +func (this *AzureAttachmentsStatusType) String() string { + if this == nil { + return "nil" + } + repeatedStringForSubnets := "[]*SubnetStatusType{" + for _, f := range this.Subnets { + repeatedStringForSubnets += strings.Replace(f.String(), "SubnetStatusType", "SubnetStatusType", 1) + "," + } + repeatedStringForSubnets += "}" + keysForTags := make([]string, 0, len(this.Tags)) + for k, _ := range this.Tags { + keysForTags = append(keysForTags, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + mapStringForTags := "map[string]string{" + for _, k := range keysForTags { + mapStringForTags += fmt.Sprintf("%v: %v,", k, this.Tags[k]) + } + mapStringForTags += "}" + s := strings.Join([]string{`&AzureAttachmentsStatusType{`, + `CreationTime:` + strings.Replace(fmt.Sprintf("%v", this.CreationTime), "Timestamp", "types.Timestamp", 1) + `,`, + `VnetAttachmentId:` + fmt.Sprintf("%v", this.VnetAttachmentId) + `,`, + `SpokeVnetId:` + fmt.Sprintf("%v", this.SpokeVnetId) + `,`, + `HubVnetName:` + fmt.Sprintf("%v", this.HubVnetName) + `,`, + `HubOwnerSubscriptionid:` + fmt.Sprintf("%v", this.HubOwnerSubscriptionid) + `,`, + `PeeringState:` + fmt.Sprintf("%v", this.PeeringState) + `,`, + `ProvisioningState:` + fmt.Sprintf("%v", this.ProvisioningState) + `,`, + `DeploymentStatus:` + fmt.Sprintf("%v", this.DeploymentStatus) + `,`, + `PeeringSyncLevel:` + fmt.Sprintf("%v", this.PeeringSyncLevel) + `,`, + `Tags:` + mapStringForTags + `,`, + `Subnets:` + repeatedStringForSubnets + `,`, + `InstalledRoutes:` + strings.Replace(this.InstalledRoutes.String(), "AzureRouteTableWithStaticRouteListType", "AzureRouteTableWithStaticRouteListType", 1) + `,`, + `}`, + }, "") + return s +} func (this *GlobalSpecType) String() string { if this == nil { return "nil" @@ -5800,6 +9584,8 @@ func (this *GlobalSpecType) String() string { `Segment:` + strings.Replace(fmt.Sprintf("%v", this.Segment), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `VirtualNetwork:` + repeatedStringForVirtualNetwork + `,`, `State:` + fmt.Sprintf("%v", this.State) + `,`, + `OnboardedVpc:` + fmt.Sprintf("%v", this.OnboardedVpc) + `,`, + `Coordinates:` + strings.Replace(fmt.Sprintf("%v", this.Coordinates), "Coordinates", "site.Coordinates", 1) + `,`, `}`, }, "") return s @@ -5834,6 +9620,16 @@ func (this *GlobalSpecType_Bandwidth_500Mbs) String() string { }, "") return s } +func (this *GlobalSpecType_AzureVnetSite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_AzureVnetSite{`, + `AzureVnetSite:` + strings.Replace(fmt.Sprintf("%v", this.AzureVnetSite), "AzureVNETSiteType", "AzureVNETSiteType", 1) + `,`, + `}`, + }, "") + return s +} func (this *CreateSpecType) String() string { if this == nil { return "nil" @@ -5865,6 +9661,16 @@ func (this *CreateSpecType_AwsTgwSite) String() string { }, "") return s } +func (this *CreateSpecType_AzureVnetSite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_AzureVnetSite{`, + `AzureVnetSite:` + strings.Replace(fmt.Sprintf("%v", this.AzureVnetSite), "AzureVNETSiteType", "AzureVNETSiteType", 1) + `,`, + `}`, + }, "") + return s +} func (this *ReplaceSpecType) String() string { if this == nil { return "nil" @@ -5896,6 +9702,16 @@ func (this *ReplaceSpecType_AwsTgwSite) String() string { }, "") return s } +func (this *ReplaceSpecType_AzureVnetSite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_AzureVnetSite{`, + `AzureVnetSite:` + strings.Replace(fmt.Sprintf("%v", this.AzureVnetSite), "AzureVNETSiteType", "AzureVNETSiteType", 1) + `,`, + `}`, + }, "") + return s +} func (this *GetSpecType) String() string { if this == nil { return "nil" @@ -5904,6 +9720,8 @@ func (this *GetSpecType) String() string { `Cloud:` + fmt.Sprintf("%v", this.Cloud) + `,`, `Segment:` + strings.Replace(fmt.Sprintf("%v", this.Segment), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `State:` + fmt.Sprintf("%v", this.State) + `,`, + `OnboardedVpc:` + fmt.Sprintf("%v", this.OnboardedVpc) + `,`, + `Coordinates:` + strings.Replace(fmt.Sprintf("%v", this.Coordinates), "Coordinates", "site.Coordinates", 1) + `,`, `}`, }, "") return s @@ -5928,39 +9746,120 @@ func (this *GetSpecType_AwsTgwSite) String() string { }, "") return s } -func valueToStringTypes(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { +func (this *GetSpecType_AzureVnetSite) String() string { + if this == nil { return "nil" } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) + s := strings.Join([]string{`&GetSpecType_AzureVnetSite{`, + `AzureVnetSite:` + strings.Replace(fmt.Sprintf("%v", this.AzureVnetSite), "AzureVNETSiteType", "AzureVNETSiteType", 1) + `,`, + `}`, + }, "") + return s } -func (m *AWSREType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AWSREType: wiretype end group for non-group") - } +func (this *LabelFilter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LabelFilter{`, + `Label:` + fmt.Sprintf("%v", this.Label) + `,`, + `Op:` + fmt.Sprintf("%v", this.Op) + `,`, + `Value:` + fmt.Sprintf("%v", this.Value) + `,`, + `}`, + }, "") + return s +} +func (this *CustomerEdge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CustomerEdge{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `}`, + }, "") + return s +} +func (this *MetricData) String() string { + if this == nil { + return "nil" + } + repeatedStringForValues := "[]*MetricValue{" + for _, f := range this.Values { + repeatedStringForValues += strings.Replace(fmt.Sprintf("%v", f), "MetricValue", "schema.MetricValue", 1) + "," + } + repeatedStringForValues += "}" + s := strings.Join([]string{`&MetricData{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, + `Values:` + repeatedStringForValues + `,`, + `}`, + }, "") + return s +} +func (this *SegmentationData) String() string { + if this == nil { + return "nil" + } + repeatedStringForData := "[]*MetricData{" + for _, f := range this.Data { + repeatedStringForData += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForData += "}" + s := strings.Join([]string{`&SegmentationData{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Data:` + repeatedStringForData + `,`, + `}`, + }, "") + return s +} +func (this *EdgeData) String() string { + if this == nil { + return "nil" + } + repeatedStringForSegments := "[]*SegmentationData{" + for _, f := range this.Segments { + repeatedStringForSegments += strings.Replace(f.String(), "SegmentationData", "SegmentationData", 1) + "," + } + repeatedStringForSegments += "}" + s := strings.Join([]string{`&EdgeData{`, + `Ce:` + strings.Replace(this.Ce.String(), "CustomerEdge", "CustomerEdge", 1) + `,`, + `Segments:` + repeatedStringForSegments + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *AWSREType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AWSREType: wiretype end group for non-group") + } if fieldNum <= 0 { return fmt.Errorf("proto: AWSREType: illegal tag %d (wire type %d)", fieldNum, wire) } @@ -6735,7 +10634,7 @@ func (m *AWSVPCAttachmentType) Unmarshal(dAtA []byte) error { } return nil } -func (m *DefaultRoute) Unmarshal(dAtA []byte) error { +func (m *AzureVnetAttachmentListType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -6758,50 +10657,15 @@ func (m *DefaultRoute) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DefaultRoute: wiretype end group for non-group") + return fmt.Errorf("proto: AzureVnetAttachmentListType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DefaultRoute: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AzureVnetAttachmentListType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllRouteTables", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DefaultRouteChoice = &DefaultRoute_AllRouteTables{v} - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SelectiveRouteTables", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VnetList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -6828,11 +10692,10 @@ func (m *DefaultRoute) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &AWSDefaultRoutesRouteTable{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.VnetList = append(m.VnetList, &AzureVNETAttachmentType{}) + if err := m.VnetList[len(m.VnetList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DefaultRouteChoice = &DefaultRoute_SelectiveRouteTables{v} iNdEx = postIndex default: iNdEx = preIndex @@ -6858,7 +10721,7 @@ func (m *DefaultRoute) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSSubnetIDListType) Unmarshal(dAtA []byte) error { +func (m *AzureVNETAttachmentType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -6881,15 +10744,15 @@ func (m *AWSSubnetIDListType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSSubnetIDListType: wiretype end group for non-group") + return fmt.Errorf("proto: AzureVNETAttachmentType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSSubnetIDListType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AzureVNETAttachmentType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubnetIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubscriptionId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -6917,64 +10780,78 @@ func (m *AWSSubnetIDListType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubnetIds = append(m.SubnetIds, string(dAtA[iNdEx:postIndex])) + m.SubscriptionId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VnetId", wireType) } - if skippy < 0 { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + intStringLen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AWSRouteTableListType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes + m.VnetId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ManualRouting", wireType) } - if iNdEx >= l { + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AWSRouteTableListType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AWSRouteTableListType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.RoutingChoice = &AzureVNETAttachmentType_ManualRouting{v} + iNdEx = postIndex + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteTables", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CustomRouting", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -7001,10 +10878,11 @@ func (m *AWSRouteTableListType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RouteTables = append(m.RouteTables, &AWSRouteTableType{}) - if err := m.RouteTables[len(m.RouteTables)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &AzureRouteTableWithStaticRouteListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.RoutingChoice = &AzureVNETAttachmentType_CustomRouting{v} iNdEx = postIndex default: iNdEx = preIndex @@ -7030,7 +10908,7 @@ func (m *AWSRouteTableListType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSDefaultRoutesRouteTable) Unmarshal(dAtA []byte) error { +func (m *DefaultRoute) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7053,17 +10931,17 @@ func (m *AWSDefaultRoutesRouteTable) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSDefaultRoutesRouteTable: wiretype end group for non-group") + return fmt.Errorf("proto: DefaultRoute: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSDefaultRoutesRouteTable: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: DefaultRoute: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteTableId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AllRouteTables", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7073,37 +10951,75 @@ func (m *AWSDefaultRoutesRouteTable) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.RouteTableId = append(m.RouteTableId, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes + m.DefaultRouteChoice = &DefaultRoute_AllRouteTables{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SelectiveRouteTables", wireType) } - if (iNdEx + skippy) > l { + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AWSDefaultRoutesRouteTable{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DefaultRouteChoice = &DefaultRoute_SelectiveRouteTables{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } iNdEx += skippy @@ -7115,7 +11031,7 @@ func (m *AWSDefaultRoutesRouteTable) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSRouteTableType) Unmarshal(dAtA []byte) error { +func (m *AWSSubnetIDListType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7138,47 +11054,15 @@ func (m *AWSRouteTableType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSRouteTableType: wiretype end group for non-group") + return fmt.Errorf("proto: AWSSubnetIDListType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSRouteTableType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AWSSubnetIDListType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteTableId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RouteTableId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 108: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field StaticRoutes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubnetIds", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -7206,7 +11090,7 @@ func (m *AWSRouteTableType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.StaticRoutes = append(m.StaticRoutes, string(dAtA[iNdEx:postIndex])) + m.SubnetIds = append(m.SubnetIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -7232,7 +11116,7 @@ func (m *AWSRouteTableType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ReplaceAWSREType) Unmarshal(dAtA []byte) error { +func (m *AWSRouteTableListType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7255,15 +11139,15 @@ func (m *ReplaceAWSREType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ReplaceAWSREType: wiretype end group for non-group") + return fmt.Errorf("proto: AWSRouteTableListType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ReplaceAWSREType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AWSRouteTableListType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 3: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VpcAttachments", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTables", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -7290,10 +11174,8 @@ func (m *ReplaceAWSREType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.VpcAttachments == nil { - m.VpcAttachments = &AWSVPCAttachmentListType{} - } - if err := m.VpcAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RouteTables = append(m.RouteTables, &AWSRouteTableType{}) + if err := m.RouteTables[len(m.RouteTables)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -7321,7 +11203,7 @@ func (m *ReplaceAWSREType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSTGWSiteType) Unmarshal(dAtA []byte) error { +func (m *AWSDefaultRoutesRouteTable) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7344,89 +11226,17 @@ func (m *AWSTGWSiteType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSTGWSiteType: wiretype end group for non-group") + return fmt.Errorf("proto: AWSDefaultRoutesRouteTable: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSTGWSiteType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AWSDefaultRoutesRouteTable: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Site == nil { - m.Site = &views.ObjectRefType{} - } - if err := m.Site.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cred", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Cred == nil { - m.Cred = &views.ObjectRefType{} - } - if err := m.Cred.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VpcAttachments", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7436,27 +11246,23 @@ func (m *AWSTGWSiteType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.VpcAttachments == nil { - m.VpcAttachments = &AWSVPCAttachmentListType{} - } - if err := m.VpcAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.RouteTableId = append(m.RouteTableId, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -7482,7 +11288,7 @@ func (m *AWSTGWSiteType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ReplaceAWSTGWSiteType) Unmarshal(dAtA []byte) error { +func (m *AzureRouteTables) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7505,17 +11311,17 @@ func (m *ReplaceAWSTGWSiteType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ReplaceAWSTGWSiteType: wiretype end group for non-group") + return fmt.Errorf("proto: AzureRouteTables: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ReplaceAWSTGWSiteType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AzureRouteTables: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 3: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VpcAttachments", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7525,27 +11331,23 @@ func (m *ReplaceAWSTGWSiteType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.VpcAttachments == nil { - m.VpcAttachments = &AWSVPCAttachmentListType{} - } - if err := m.VpcAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.RouteTableId = append(m.RouteTableId, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -7571,7 +11373,7 @@ func (m *ReplaceAWSTGWSiteType) Unmarshal(dAtA []byte) error { } return nil } -func (m *CloudConnectStatusType) Unmarshal(dAtA []byte) error { +func (m *AzureRouteTableWithStaticRouteListType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7594,15 +11396,15 @@ func (m *CloudConnectStatusType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CloudConnectStatusType: wiretype end group for non-group") + return fmt.Errorf("proto: AzureRouteTableWithStaticRouteListType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CloudConnectStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AzureRouteTableWithStaticRouteListType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CloudConnectAwsSite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTables", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -7629,11 +11431,10 @@ func (m *CloudConnectStatusType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &AWSAttachmentsListStatusType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RouteTables = append(m.RouteTables, &AzureRouteTableWithStaticRoute{}) + if err := m.RouteTables[len(m.RouteTables)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.CloudConnectDeployment = &CloudConnectStatusType_CloudConnectAwsSite{v} iNdEx = postIndex default: iNdEx = preIndex @@ -7659,7 +11460,7 @@ func (m *CloudConnectStatusType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSAttachmentsListStatusType) Unmarshal(dAtA []byte) error { +func (m *AzureRouteTableWithStaticRoute) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7682,17 +11483,17 @@ func (m *AWSAttachmentsListStatusType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSAttachmentsListStatusType: wiretype end group for non-group") + return fmt.Errorf("proto: AzureRouteTableWithStaticRoute: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSAttachmentsListStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AzureRouteTableWithStaticRoute: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AttachmentStatus", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7702,31 +11503,61 @@ func (m *AWSAttachmentsListStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.AttachmentStatus = append(m.AttachmentStatus, &AWSAttachmentsStatusType{}) - if err := m.AttachmentStatus[len(m.AttachmentStatus)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.RouteTableId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 108: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StaticRoutes", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StaticRoutes = append(m.StaticRoutes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } if skippy < 0 { return ErrInvalidLengthTypes @@ -7746,7 +11577,7 @@ func (m *AWSAttachmentsListStatusType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { +func (m *AWSRouteTableType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7769,17 +11600,17 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSAttachmentsStatusType: wiretype end group for non-group") + return fmt.Errorf("proto: AWSRouteTableType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSAttachmentsStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AWSRouteTableType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CreationTime", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7789,31 +11620,27 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.CreationTime == nil { - m.CreationTime = &types.Timestamp{} - } - if err := m.CreationTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.RouteTableId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 2: + case 108: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TgwAttachmentId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field StaticRoutes", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -7841,45 +11668,66 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TgwAttachmentId = string(dAtA[iNdEx:postIndex]) + m.StaticRoutes = append(m.StaticRoutes, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VpcId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } - intStringLen := int(stringLen) - if intStringLen < 0 { + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.VpcId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceAWSREType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceAWSREType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceAWSREType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VpcOwnerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VpcAttachments", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7889,29 +11737,86 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.VpcOwnerId = string(dAtA[iNdEx:postIndex]) + if m.VpcAttachments == nil { + m.VpcAttachments = &AWSVPCAttachmentListType{} + } + if err := m.VpcAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 6: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AWSTGWSiteType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AWSTGWSiteType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AWSTGWSiteType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7921,29 +11826,33 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.State = string(dAtA[iNdEx:postIndex]) + if m.Site == nil { + m.Site = &views.ObjectRefType{} + } + if err := m.Site.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 7: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DeploymentStatus", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Cred", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -7953,27 +11862,31 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.DeploymentStatus = string(dAtA[iNdEx:postIndex]) + if m.Cred == nil { + m.Cred = &views.ObjectRefType{} + } + if err := m.Cred.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 8: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VpcAttachments", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8000,107 +11913,2185 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Tags == nil { - m.Tags = make(map[string]string) + if m.VpcAttachments == nil { + m.VpcAttachments = &AWSVPCAttachmentListType{} + } + if err := m.VpcAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceAWSTGWSiteType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceAWSTGWSiteType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceAWSTGWSiteType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcAttachments", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.VpcAttachments == nil { + m.VpcAttachments = &AWSVPCAttachmentListType{} + } + if err := m.VpcAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AzureVNETSiteType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AzureVNETSiteType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AzureVNETSiteType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Site == nil { + m.Site = &views.ObjectRefType{} + } + if err := m.Site.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cred", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Cred == nil { + m.Cred = &views.ObjectRefType{} + } + if err := m.Cred.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VnetAttachments", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.VnetAttachments == nil { + m.VnetAttachments = &AzureVnetAttachmentListType{} + } + if err := m.VnetAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceAzureVNETSiteType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceAzureVNETSiteType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceAzureVNETSiteType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VnetAttachments", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.VnetAttachments == nil { + m.VnetAttachments = &AzureVnetAttachmentListType{} + } + if err := m.VnetAttachments.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CloudConnectStatusType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CloudConnectStatusType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CloudConnectStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CloudConnectAwsSite", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AWSAttachmentsListStatusType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CloudConnectDeployment = &CloudConnectStatusType_CloudConnectAwsSite{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CloudConnectAzureSite", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AzureAttachmentsListStatusType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CloudConnectDeployment = &CloudConnectStatusType_CloudConnectAzureSite{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AWSAttachmentsListStatusType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AWSAttachmentsListStatusType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AWSAttachmentsListStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AttachmentStatus", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AttachmentStatus = append(m.AttachmentStatus, &AWSAttachmentsStatusType{}) + if err := m.AttachmentStatus[len(m.AttachmentStatus)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AWSAttachmentsStatusType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AWSAttachmentsStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CreationTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CreationTime == nil { + m.CreationTime = &types.Timestamp{} + } + if err := m.CreationTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TgwAttachmentId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TgwAttachmentId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VpcId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcOwnerId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VpcOwnerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DeploymentStatus", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DeploymentStatus = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Tags == nil { + m.Tags = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Tags[mapkey] = mapvalue + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InstalledRoutes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.InstalledRoutes == nil { + m.InstalledRoutes = &AWSRouteTableListType{} + } + if err := m.InstalledRoutes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Subnets", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Subnets = append(m.Subnets, &SubnetStatusType{}) + if err := m.Subnets[len(m.Subnets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcDeploymentState", wireType) + } + m.VpcDeploymentState = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.VpcDeploymentState |= CloudConnectVPCStateType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcCidr", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VpcCidr = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubnetStatusType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubnetStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NetworkInterfaceId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NetworkInterfaceId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InterfaceType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InterfaceType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PrivateIpv4Address", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PrivateIpv4Address = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AvailabilityZone", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AvailabilityZone = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubnetId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubnetId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AzureAttachmentsListStatusType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AzureAttachmentsListStatusType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AzureAttachmentsListStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AttachmentStatus", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AttachmentStatus = append(m.AttachmentStatus, &AzureAttachmentsStatusType{}) + if err := m.AttachmentStatus[len(m.AttachmentStatus)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AzureAttachmentsStatusType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AzureAttachmentsStatusType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AzureAttachmentsStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CreationTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CreationTime == nil { + m.CreationTime = &types.Timestamp{} + } + if err := m.CreationTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VnetAttachmentId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VnetAttachmentId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpokeVnetId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SpokeVnetId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HubVnetName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.HubVnetName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HubOwnerSubscriptionid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.HubOwnerSubscriptionid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PeeringState", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PeeringState = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProvisioningState", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProvisioningState = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DeploymentStatus", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DeploymentStatus = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PeeringSyncLevel", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PeeringSyncLevel = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Tags == nil { + m.Tags = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Tags[mapkey] = mapvalue + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Subnets", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Subnets = append(m.Subnets, &SubnetStatusType{}) + if err := m.Subnets[len(m.Subnets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InstalledRoutes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.InstalledRoutes == nil { + m.InstalledRoutes = &AzureRouteTableWithStaticRouteListType{} + } + if err := m.InstalledRoutes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AwsRe", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AWSREType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &GlobalSpecType_AwsRe{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AwsTgwSite", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AWSTGWSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &GlobalSpecType_AwsTgwSite{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Bandwidth_500Mbs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.BandwidthOption = &GlobalSpecType_Bandwidth_500Mbs{v} + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sites", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sites = append(m.Sites, &schema.ObjectRefType{}) + if err := m.Sites[len(m.Sites)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Segment == nil { + m.Segment = &views.ObjectRefType{} + } + if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VirtualNetwork", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } } - m.Tags[mapkey] = mapvalue + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VirtualNetwork = append(m.VirtualNetwork, &schema.ObjectRefType{}) + if err := m.VirtualNetwork[len(m.VirtualNetwork)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 9: + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + } + m.State = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.State |= CloudConnectState(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InstalledRoutes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureVnetSite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8127,16 +14118,34 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.InstalledRoutes == nil { - m.InstalledRoutes = &AWSRouteTableListType{} - } - if err := m.InstalledRoutes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &AzureVNETSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Cloud = &GlobalSpecType_AzureVnetSite{v} iNdEx = postIndex - case 10: + case 17: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field OnboardedVpc", wireType) + } + m.OnboardedVpc = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.OnboardedVpc |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Subnets", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Coordinates", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8163,8 +14172,10 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Subnets = append(m.Subnets, &SubnetStatusType{}) - if err := m.Subnets[len(m.Subnets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Coordinates == nil { + m.Coordinates = &site.Coordinates{} + } + if err := m.Coordinates.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -8192,7 +14203,7 @@ func (m *AWSAttachmentsStatusType) Unmarshal(dAtA []byte) error { } return nil } -func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { +func (m *CreateSpecType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8215,17 +14226,17 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SubnetStatusType: wiretype end group for non-group") + return fmt.Errorf("proto: CreateSpecType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SubnetStatusType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CreateSpecType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NetworkInterfaceId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AwsRe", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8235,29 +14246,32 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.NetworkInterfaceId = string(dAtA[iNdEx:postIndex]) + v := &AWSREType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &CreateSpecType_AwsRe{v} iNdEx = postIndex - case 2: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InterfaceType", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AwsTgwSite", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8267,29 +14281,32 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.InterfaceType = string(dAtA[iNdEx:postIndex]) + v := &AWSTGWSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &CreateSpecType_AwsTgwSite{v} iNdEx = postIndex - case 3: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PrivateIpv4Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8299,29 +14316,156 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.PrivateIpv4Address = string(dAtA[iNdEx:postIndex]) + if m.Segment == nil { + m.Segment = &views.ObjectRefType{} + } + if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 4: + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AvailabilityZone", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureVnetSite", wireType) } - var stringLen uint64 + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AzureVNETSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &CreateSpecType_AzureVnetSite{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AwsRe", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ReplaceAWSREType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &ReplaceSpecType_AwsRe{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AwsTgwSite", wireType) + } + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8331,29 +14475,32 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.AvailabilityZone = string(dAtA[iNdEx:postIndex]) + v := &ReplaceAWSTGWSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &ReplaceSpecType_AwsTgwSite{v} iNdEx = postIndex - case 5: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubnetId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8363,29 +14510,33 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubnetId = string(dAtA[iNdEx:postIndex]) + if m.Segment == nil { + m.Segment = &views.ObjectRefType{} + } + if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 6: + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureVnetSite", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8395,23 +14546,26 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Status = string(dAtA[iNdEx:postIndex]) + v := &AzureVNETSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Cloud = &ReplaceSpecType_AzureVnetSite{v} iNdEx = postIndex default: iNdEx = preIndex @@ -8437,7 +14591,7 @@ func (m *SubnetStatusType) Unmarshal(dAtA []byte) error { } return nil } -func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { +func (m *GetSpecType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8460,10 +14614,10 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + return fmt.Errorf("proto: GetSpecType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetSpecType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 2: @@ -8499,7 +14653,7 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Cloud = &GlobalSpecType_AwsRe{v} + m.Cloud = &GetSpecType_AwsRe{v} iNdEx = postIndex case 7: if wireType != 2 { @@ -8534,11 +14688,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Cloud = &GlobalSpecType_AwsTgwSite{v} + m.Cloud = &GetSpecType_AwsTgwSite{v} iNdEx = postIndex - case 9: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Bandwidth_500Mbs", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8565,15 +14719,35 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Segment == nil { + m.Segment = &views.ObjectRefType{} + } + if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BandwidthOption = &GlobalSpecType_Bandwidth_500Mbs{v} iNdEx = postIndex - case 12: + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + } + m.State = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.State |= CloudConnectState(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sites", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureVnetSite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8600,14 +14774,34 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Sites = append(m.Sites, &schema.ObjectRefType{}) - if err := m.Sites[len(m.Sites)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &AzureVNETSiteType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Cloud = &GetSpecType_AzureVnetSite{v} iNdEx = postIndex - case 13: + case 17: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field OnboardedVpc", wireType) + } + m.OnboardedVpc = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.OnboardedVpc |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Coordinates", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8631,21 +14825,197 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Coordinates == nil { + m.Coordinates = &site.Coordinates{} + } + if err := m.Coordinates.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *LabelFilter) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LabelFilter: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LabelFilter: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Label", wireType) + } + m.Label = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Label |= Label(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Op", wireType) + } + m.Op = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Op |= schema.MetricLabelOp(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Value = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CustomerEdge) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { return io.ErrUnexpectedEOF } - if m.Segment == nil { - m.Segment = &views.ObjectRefType{} - } - if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - iNdEx = postIndex - case 14: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CustomerEdge: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CustomerEdge: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VirtualNetwork", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8655,45 +15025,24 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.VirtualNetwork = append(m.VirtualNetwork, &schema.ObjectRefType{}) - if err := m.VirtualNetwork[len(m.VirtualNetwork)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 15: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) - } - m.State = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.State |= CloudConnectState(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -8718,7 +15067,7 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } return nil } -func (m *CreateSpecType) Unmarshal(dAtA []byte) error { +func (m *MetricData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8741,17 +15090,17 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CreateSpecType: wiretype end group for non-group") + return fmt.Errorf("proto: MetricData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CreateSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MetricData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AwsRe", wireType) + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) } - var msglen int + m.Type = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8761,32 +15110,16 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.Type |= FieldSelector(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &AWSREType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Cloud = &CreateSpecType_AwsRe{v} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AwsTgwSite", wireType) + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Unit", wireType) } - var msglen int + m.Unit = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8796,30 +15129,14 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.Unit |= schema.UnitType(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &AWSTGWSiteType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Cloud = &CreateSpecType_AwsTgwSite{v} - iNdEx = postIndex - case 13: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8846,10 +15163,8 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Segment == nil { - m.Segment = &views.ObjectRefType{} - } - if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Values = append(m.Values, &schema.MetricValue{}) + if err := m.Values[len(m.Values)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -8877,7 +15192,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { +func (m *SegmentationData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8900,52 +15215,17 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + return fmt.Errorf("proto: SegmentationData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SegmentationData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AwsRe", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &ReplaceAWSREType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Cloud = &ReplaceSpecType_AwsRe{v} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AwsTgwSite", wireType) + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) } - var msglen int + m.Type = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8955,30 +15235,14 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.Type |= TrafficType(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &ReplaceAWSTGWSiteType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Cloud = &ReplaceSpecType_AwsTgwSite{v} - iNdEx = postIndex - case 13: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9005,10 +15269,8 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Segment == nil { - m.Segment = &views.ObjectRefType{} - } - if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Data = append(m.Data, &MetricData{}) + if err := m.Data[len(m.Data)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -9036,7 +15298,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } return nil } -func (m *GetSpecType) Unmarshal(dAtA []byte) error { +func (m *EdgeData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9059,15 +15321,15 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetSpecType: wiretype end group for non-group") + return fmt.Errorf("proto: EdgeData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EdgeData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AwsRe", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Ce", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9094,50 +15356,16 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &AWSREType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Cloud = &GetSpecType_AwsRe{v} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AwsTgwSite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF + if m.Ce == nil { + m.Ce = &CustomerEdge{} } - v := &AWSTGWSiteType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Ce.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Cloud = &GetSpecType_AwsTgwSite{v} iNdEx = postIndex - case 13: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Segments", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9164,32 +15392,11 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Segment == nil { - m.Segment = &views.ObjectRefType{} - } - if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Segments = append(m.Segments, &SegmentationData{}) + if err := m.Segments[len(m.Segments)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 15: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) - } - m.State = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.State |= CloudConnectState(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/cloud_connect/types.vesmsg.go b/pbgo/extschema/schema/cloud_connect/types.vesmsg.go index f7e92eb4c..2a6224b20 100644 --- a/pbgo/extschema/schema/cloud_connect/types.vesmsg.go +++ b/pbgo/extschema/schema/cloud_connect/types.vesmsg.go @@ -16,6 +16,7 @@ import ( ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_cloud_re_region "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/cloud_re_region" + ves_io_schema_site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" ) @@ -191,15 +192,6 @@ func (v *ValidateAWSAttachmentsStatusType) Validate(ctx context.Context, pm inte } - if fv, exists := v.FldValidators["state"]; exists { - - vOpts := append(opts, db.WithValidateField("state")) - if err := fv(ctx, m.GetState(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["subnets"]; exists { vOpts := append(opts, db.WithValidateField("subnets")) @@ -233,6 +225,24 @@ func (v *ValidateAWSAttachmentsStatusType) Validate(ctx context.Context, pm inte } + if fv, exists := v.FldValidators["vpc_cidr"]; exists { + + vOpts := append(opts, db.WithValidateField("vpc_cidr")) + if err := fv(ctx, m.GetVpcCidr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vpc_deployment_state"]; exists { + + vOpts := append(opts, db.WithValidateField("vpc_deployment_state")) + if err := fv(ctx, m.GetVpcDeploymentState(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["vpc_id"]; exists { vOpts := append(opts, db.WithValidateField("vpc_id")) @@ -1889,15 +1899,15 @@ func AWSVPCAttachmentTypeValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *CloudConnectStatusType) ToJSON() (string, error) { +func (m *AzureAttachmentsListStatusType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *CloudConnectStatusType) ToYAML() (string, error) { +func (m *AzureAttachmentsListStatusType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *CloudConnectStatusType) DeepCopy() *CloudConnectStatusType { +func (m *AzureAttachmentsListStatusType) DeepCopy() *AzureAttachmentsListStatusType { if m == nil { return nil } @@ -1905,7 +1915,7 @@ func (m *CloudConnectStatusType) DeepCopy() *CloudConnectStatusType { if err != nil { return nil } - c := &CloudConnectStatusType{} + c := &AzureAttachmentsListStatusType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1913,44 +1923,41 @@ func (m *CloudConnectStatusType) DeepCopy() *CloudConnectStatusType { return c } -func (m *CloudConnectStatusType) DeepCopyProto() proto.Message { +func (m *AzureAttachmentsListStatusType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *CloudConnectStatusType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CloudConnectStatusTypeValidator().Validate(ctx, m, opts...) +func (m *AzureAttachmentsListStatusType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureAttachmentsListStatusTypeValidator().Validate(ctx, m, opts...) } -type ValidateCloudConnectStatusType struct { +type ValidateAzureAttachmentsListStatusType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateCloudConnectStatusType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CloudConnectStatusType) +func (v *ValidateAzureAttachmentsListStatusType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureAttachmentsListStatusType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *CloudConnectStatusType got type %s", t) + return fmt.Errorf("Expected type *AzureAttachmentsListStatusType got type %s", t) } } if m == nil { return nil } - switch m.GetCloudConnectDeployment().(type) { - case *CloudConnectStatusType_CloudConnectAwsSite: - if fv, exists := v.FldValidators["cloud_connect_deployment.cloud_connect_aws_site"]; exists { - val := m.GetCloudConnectDeployment().(*CloudConnectStatusType_CloudConnectAwsSite).CloudConnectAwsSite - vOpts := append(opts, - db.WithValidateField("cloud_connect_deployment"), - db.WithValidateField("cloud_connect_aws_site"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["attachment_status"]; exists { + + vOpts := append(opts, db.WithValidateField("attachment_status")) + for idx, item := range m.GetAttachmentStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { return err } } @@ -1961,29 +1968,29 @@ func (v *ValidateCloudConnectStatusType) Validate(ctx context.Context, pm interf } // Well-known symbol for default validator implementation -var DefaultCloudConnectStatusTypeValidator = func() *ValidateCloudConnectStatusType { - v := &ValidateCloudConnectStatusType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultAzureAttachmentsListStatusTypeValidator = func() *ValidateAzureAttachmentsListStatusType { + v := &ValidateAzureAttachmentsListStatusType{FldValidators: map[string]db.ValidatorFunc{}} - v.FldValidators["cloud_connect_deployment.cloud_connect_aws_site"] = AWSAttachmentsListStatusTypeValidator().Validate + v.FldValidators["attachment_status"] = AzureAttachmentsStatusTypeValidator().Validate return v }() -func CloudConnectStatusTypeValidator() db.Validator { - return DefaultCloudConnectStatusTypeValidator +func AzureAttachmentsListStatusTypeValidator() db.Validator { + return DefaultAzureAttachmentsListStatusTypeValidator } // augmented methods on protoc/std generated struct -func (m *CloudLinkListType) ToJSON() (string, error) { +func (m *AzureAttachmentsStatusType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *CloudLinkListType) ToYAML() (string, error) { +func (m *AzureAttachmentsStatusType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *CloudLinkListType) DeepCopy() *CloudLinkListType { +func (m *AzureAttachmentsStatusType) DeepCopy() *AzureAttachmentsStatusType { if m == nil { return nil } @@ -1991,7 +1998,7 @@ func (m *CloudLinkListType) DeepCopy() *CloudLinkListType { if err != nil { return nil } - c := &CloudLinkListType{} + c := &AzureAttachmentsStatusType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1999,150 +2006,144 @@ func (m *CloudLinkListType) DeepCopy() *CloudLinkListType { return c } -func (m *CloudLinkListType) DeepCopyProto() proto.Message { +func (m *AzureAttachmentsStatusType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *CloudLinkListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CloudLinkListTypeValidator().Validate(ctx, m, opts...) +func (m *AzureAttachmentsStatusType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureAttachmentsStatusTypeValidator().Validate(ctx, m, opts...) } -func (m *CloudLinkListType) GetDRefInfo() ([]db.DRefInfo, error) { +type ValidateAzureAttachmentsStatusType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureAttachmentsStatusType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureAttachmentsStatusType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureAttachmentsStatusType got type %s", t) + } + } if m == nil { - return nil, nil + return nil } - return m.GetCloudLinkDRefInfo() + if fv, exists := v.FldValidators["creation_time"]; exists { -} + vOpts := append(opts, db.WithValidateField("creation_time")) + if err := fv(ctx, m.GetCreationTime(), vOpts...); err != nil { + return err + } -func (m *CloudLinkListType) GetCloudLinkDRefInfo() ([]db.DRefInfo, error) { - vrefs := m.GetCloudLink() - if len(vrefs) == 0 { - return nil, nil } - drInfos := make([]db.DRefInfo, 0, len(vrefs)) - for i, vref := range vrefs { - if vref == nil { - return nil, fmt.Errorf("CloudLinkListType.cloud_link[%d] has a nil value", i) + + if fv, exists := v.FldValidators["deployment_status"]; exists { + + vOpts := append(opts, db.WithValidateField("deployment_status")) + if err := fv(ctx, m.GetDeploymentStatus(), vOpts...); err != nil { + return err } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("cloud_link.Object") - // resolve kind to type if needed at DBObject.GetDRefInfo() - drInfos = append(drInfos, db.DRefInfo{ - RefdType: "cloud_link.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "cloud_link", - Ref: vdRef, - }) + } - return drInfos, nil -} + if fv, exists := v.FldValidators["hub_owner_subscriptionid"]; exists { -// GetCloudLinkDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *CloudLinkListType) GetCloudLinkDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "cloud_link.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: cloud_link") - } - for i, vref := range m.GetCloudLink() { - if vref == nil { - return nil, fmt.Errorf("CloudLinkListType.cloud_link[%d] has a nil value", i) - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "cloud_link.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + vOpts := append(opts, db.WithValidateField("hub_owner_subscriptionid")) + if err := fv(ctx, m.GetHubOwnerSubscriptionid(), vOpts...); err != nil { + return err } - if refdEnt != nil { - entries = append(entries, refdEnt) + + } + + if fv, exists := v.FldValidators["hub_vnet_name"]; exists { + + vOpts := append(opts, db.WithValidateField("hub_vnet_name")) + if err := fv(ctx, m.GetHubVnetName(), vOpts...); err != nil { + return err } + } - return entries, nil -} + if fv, exists := v.FldValidators["installed_routes"]; exists { -type ValidateCloudLinkListType struct { - FldValidators map[string]db.ValidatorFunc -} + vOpts := append(opts, db.WithValidateField("installed_routes")) + if err := fv(ctx, m.GetInstalledRoutes(), vOpts...); err != nil { + return err + } -func (v *ValidateCloudLinkListType) CloudLinkValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + } + + if fv, exists := v.FldValidators["peering_state"]; exists { + + vOpts := append(opts, db.WithValidateField("peering_state")) + if err := fv(ctx, m.GetPeeringState(), vOpts...); err != nil { + return err + } - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for cloud_link") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } + + if fv, exists := v.FldValidators["peering_sync_level"]; exists { + + vOpts := append(opts, db.WithValidateField("peering_sync_level")) + if err := fv(ctx, m.GetPeeringSyncLevel(), vOpts...); err != nil { + return err } - return nil + } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for cloud_link") + + if fv, exists := v.FldValidators["provisioning_state"]; exists { + + vOpts := append(opts, db.WithValidateField("provisioning_state")) + if err := fv(ctx, m.GetProvisioningState(), vOpts...); err != nil { + return err + } + } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.ObjectRefType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + if fv, exists := v.FldValidators["spoke_vnet_id"]; exists { + + vOpts := append(opts, db.WithValidateField("spoke_vnet_id")) + if err := fv(ctx, m.GetSpokeVnetId(), vOpts...); err != nil { + return err } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) + + } + + if fv, exists := v.FldValidators["subnets"]; exists { + + vOpts := append(opts, db.WithValidateField("subnets")) + for idx, item := range m.GetSubnets() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated cloud_link") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items cloud_link") } - return nil + } - return validatorFn, nil -} + if fv, exists := v.FldValidators["tags"]; exists { -func (v *ValidateCloudLinkListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CloudLinkListType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CloudLinkListType got type %s", t) + vOpts := append(opts, db.WithValidateField("tags")) + for key, value := range m.GetTags() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } } - } - if m == nil { - return nil + } - if fv, exists := v.FldValidators["cloud_link"]; exists { - vOpts := append(opts, db.WithValidateField("cloud_link")) - if err := fv(ctx, m.GetCloudLink(), vOpts...); err != nil { + if fv, exists := v.FldValidators["vnet_attachment_id"]; exists { + + vOpts := append(opts, db.WithValidateField("vnet_attachment_id")) + if err := fv(ctx, m.GetVnetAttachmentId(), vOpts...); err != nil { return err } @@ -2152,42 +2153,1451 @@ func (v *ValidateCloudLinkListType) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultCloudLinkListTypeValidator = func() *ValidateCloudLinkListType { - v := &ValidateCloudLinkListType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +var DefaultAzureAttachmentsStatusTypeValidator = func() *ValidateAzureAttachmentsStatusType { + v := &ValidateAzureAttachmentsStatusType{FldValidators: map[string]db.ValidatorFunc{}} - vrhCloudLink := v.CloudLinkValidationRuleHandler - rulesCloudLink := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "1", - } - vFn, err = vrhCloudLink(rulesCloudLink) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CloudLinkListType.cloud_link: %s", err) - panic(errMsg) - } - v.FldValidators["cloud_link"] = vFn + v.FldValidators["installed_routes"] = AzureRouteTableWithStaticRouteListTypeValidator().Validate return v }() -func CloudLinkListTypeValidator() db.Validator { - return DefaultCloudLinkListTypeValidator +func AzureAttachmentsStatusTypeValidator() db.Validator { + return DefaultAzureAttachmentsStatusTypeValidator } // augmented methods on protoc/std generated struct -func (m *CreateSpecType) ToJSON() (string, error) { +func (m *AzureRouteTableWithStaticRoute) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *CreateSpecType) ToYAML() (string, error) { +func (m *AzureRouteTableWithStaticRoute) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureRouteTableWithStaticRoute) DeepCopy() *AzureRouteTableWithStaticRoute { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureRouteTableWithStaticRoute{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureRouteTableWithStaticRoute) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureRouteTableWithStaticRoute) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureRouteTableWithStaticRouteValidator().Validate(ctx, m, opts...) +} + +type ValidateAzureRouteTableWithStaticRoute struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureRouteTableWithStaticRoute) RouteTableIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for route_table_id") + } + + return validatorFn, nil +} + +func (v *ValidateAzureRouteTableWithStaticRoute) StaticRoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for static_routes") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for static_routes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated static_routes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items static_routes") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureRouteTableWithStaticRoute) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureRouteTableWithStaticRoute) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureRouteTableWithStaticRoute got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["route_table_id"]; exists { + + vOpts := append(opts, db.WithValidateField("route_table_id")) + if err := fv(ctx, m.GetRouteTableId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["static_routes"]; exists { + vOpts := append(opts, db.WithValidateField("static_routes")) + if err := fv(ctx, m.GetStaticRoutes(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureRouteTableWithStaticRouteValidator = func() *ValidateAzureRouteTableWithStaticRoute { + v := &ValidateAzureRouteTableWithStaticRoute{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRouteTableId := v.RouteTableIdValidationRuleHandler + rulesRouteTableId := map[string]string{ + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.pattern": "^(rt-)([a-z0-9]{8}|[a-z0-9]{17})$", + } + vFn, err = vrhRouteTableId(rulesRouteTableId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureRouteTableWithStaticRoute.route_table_id: %s", err) + panic(errMsg) + } + v.FldValidators["route_table_id"] = vFn + + vrhStaticRoutes := v.StaticRoutesValidationRuleHandler + rulesStaticRoutes := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "50", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhStaticRoutes(rulesStaticRoutes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureRouteTableWithStaticRoute.static_routes: %s", err) + panic(errMsg) + } + v.FldValidators["static_routes"] = vFn + + return v +}() + +func AzureRouteTableWithStaticRouteValidator() db.Validator { + return DefaultAzureRouteTableWithStaticRouteValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AzureRouteTableWithStaticRouteListType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AzureRouteTableWithStaticRouteListType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureRouteTableWithStaticRouteListType) DeepCopy() *AzureRouteTableWithStaticRouteListType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureRouteTableWithStaticRouteListType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureRouteTableWithStaticRouteListType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureRouteTableWithStaticRouteListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureRouteTableWithStaticRouteListTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateAzureRouteTableWithStaticRouteListType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureRouteTableWithStaticRouteListType) RouteTablesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for route_tables") + } + itemsValidatorFn := func(ctx context.Context, elems []*AzureRouteTableWithStaticRoute, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := AzureRouteTableWithStaticRouteValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for route_tables") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*AzureRouteTableWithStaticRoute) + if !ok { + return fmt.Errorf("Repeated validation expected []*AzureRouteTableWithStaticRoute, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated route_tables") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items route_tables") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureRouteTableWithStaticRouteListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureRouteTableWithStaticRouteListType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureRouteTableWithStaticRouteListType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["route_tables"]; exists { + vOpts := append(opts, db.WithValidateField("route_tables")) + if err := fv(ctx, m.GetRouteTables(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureRouteTableWithStaticRouteListTypeValidator = func() *ValidateAzureRouteTableWithStaticRouteListType { + v := &ValidateAzureRouteTableWithStaticRouteListType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRouteTables := v.RouteTablesValidationRuleHandler + rulesRouteTables := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "200", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRouteTables(rulesRouteTables) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureRouteTableWithStaticRouteListType.route_tables: %s", err) + panic(errMsg) + } + v.FldValidators["route_tables"] = vFn + + return v +}() + +func AzureRouteTableWithStaticRouteListTypeValidator() db.Validator { + return DefaultAzureRouteTableWithStaticRouteListTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AzureRouteTables) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AzureRouteTables) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureRouteTables) DeepCopy() *AzureRouteTables { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureRouteTables{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureRouteTables) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureRouteTables) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureRouteTablesValidator().Validate(ctx, m, opts...) +} + +type ValidateAzureRouteTables struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureRouteTables) RouteTableIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for route_table_id") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for route_table_id") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated route_table_id") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items route_table_id") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureRouteTables) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureRouteTables) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureRouteTables got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["route_table_id"]; exists { + vOpts := append(opts, db.WithValidateField("route_table_id")) + if err := fv(ctx, m.GetRouteTableId(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureRouteTablesValidator = func() *ValidateAzureRouteTables { + v := &ValidateAzureRouteTables{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRouteTableId := v.RouteTableIdValidationRuleHandler + rulesRouteTableId := map[string]string{ + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.pattern": "^(rt-)([a-z0-9]{8}|[a-z0-9]{17})$", + } + vFn, err = vrhRouteTableId(rulesRouteTableId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureRouteTables.route_table_id: %s", err) + panic(errMsg) + } + v.FldValidators["route_table_id"] = vFn + + return v +}() + +func AzureRouteTablesValidator() db.Validator { + return DefaultAzureRouteTablesValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AzureVNETAttachmentType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AzureVNETAttachmentType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureVNETAttachmentType) DeepCopy() *AzureVNETAttachmentType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureVNETAttachmentType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureVNETAttachmentType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureVNETAttachmentType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureVNETAttachmentTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateAzureVNETAttachmentType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureVNETAttachmentType) RoutingChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for routing_choice") + } + return validatorFn, nil +} + +func (v *ValidateAzureVNETAttachmentType) SubscriptionIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for subscription_id") + } + + return validatorFn, nil +} + +func (v *ValidateAzureVNETAttachmentType) VnetIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for vnet_id") + } + + return validatorFn, nil +} + +func (v *ValidateAzureVNETAttachmentType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureVNETAttachmentType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureVNETAttachmentType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["routing_choice"]; exists { + val := m.GetRoutingChoice() + vOpts := append(opts, + db.WithValidateField("routing_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetRoutingChoice().(type) { + case *AzureVNETAttachmentType_ManualRouting: + if fv, exists := v.FldValidators["routing_choice.manual_routing"]; exists { + val := m.GetRoutingChoice().(*AzureVNETAttachmentType_ManualRouting).ManualRouting + vOpts := append(opts, + db.WithValidateField("routing_choice"), + db.WithValidateField("manual_routing"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AzureVNETAttachmentType_CustomRouting: + if fv, exists := v.FldValidators["routing_choice.custom_routing"]; exists { + val := m.GetRoutingChoice().(*AzureVNETAttachmentType_CustomRouting).CustomRouting + vOpts := append(opts, + db.WithValidateField("routing_choice"), + db.WithValidateField("custom_routing"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["subscription_id"]; exists { + + vOpts := append(opts, db.WithValidateField("subscription_id")) + if err := fv(ctx, m.GetSubscriptionId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vnet_id"]; exists { + + vOpts := append(opts, db.WithValidateField("vnet_id")) + if err := fv(ctx, m.GetVnetId(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureVNETAttachmentTypeValidator = func() *ValidateAzureVNETAttachmentType { + v := &ValidateAzureVNETAttachmentType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRoutingChoice := v.RoutingChoiceValidationRuleHandler + rulesRoutingChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRoutingChoice(rulesRoutingChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVNETAttachmentType.routing_choice: %s", err) + panic(errMsg) + } + v.FldValidators["routing_choice"] = vFn + + vrhSubscriptionId := v.SubscriptionIdValidationRuleHandler + rulesSubscriptionId := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhSubscriptionId(rulesSubscriptionId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVNETAttachmentType.subscription_id: %s", err) + panic(errMsg) + } + v.FldValidators["subscription_id"] = vFn + + vrhVnetId := v.VnetIdValidationRuleHandler + rulesVnetId := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhVnetId(rulesVnetId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVNETAttachmentType.vnet_id: %s", err) + panic(errMsg) + } + v.FldValidators["vnet_id"] = vFn + + v.FldValidators["routing_choice.custom_routing"] = AzureRouteTableWithStaticRouteListTypeValidator().Validate + + return v +}() + +func AzureVNETAttachmentTypeValidator() db.Validator { + return DefaultAzureVNETAttachmentTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AzureVNETSiteType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AzureVNETSiteType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureVNETSiteType) DeepCopy() *AzureVNETSiteType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureVNETSiteType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureVNETSiteType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureVNETSiteType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureVNETSiteTypeValidator().Validate(ctx, m, opts...) +} + +func (m *AzureVNETSiteType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetCredDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetCredDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSiteDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSiteDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +func (m *AzureVNETSiteType) GetCredDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetCred() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("cloud_credentials.Object") + dri := db.DRefInfo{ + RefdType: "cloud_credentials.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "cred", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetCredDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *AzureVNETSiteType) GetCredDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_credentials.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_credentials") + } + + vref := m.GetCred() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "cloud_credentials.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +func (m *AzureVNETSiteType) GetSiteDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetSite() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("azure_vnet_site.Object") + dri := db.DRefInfo{ + RefdType: "azure_vnet_site.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "site", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetSiteDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *AzureVNETSiteType) GetSiteDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "azure_vnet_site.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: azure_vnet_site") + } + + vref := m.GetSite() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "azure_vnet_site.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateAzureVNETSiteType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureVNETSiteType) SiteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for site") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureVNETSiteType) CredValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for cred") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureVNETSiteType) VnetAttachmentsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for vnet_attachments") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := AzureVnetAttachmentListTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureVNETSiteType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureVNETSiteType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureVNETSiteType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cred"]; exists { + + vOpts := append(opts, db.WithValidateField("cred")) + if err := fv(ctx, m.GetCred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["site"]; exists { + + vOpts := append(opts, db.WithValidateField("site")) + if err := fv(ctx, m.GetSite(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vnet_attachments"]; exists { + + vOpts := append(opts, db.WithValidateField("vnet_attachments")) + if err := fv(ctx, m.GetVnetAttachments(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureVNETSiteTypeValidator = func() *ValidateAzureVNETSiteType { + v := &ValidateAzureVNETSiteType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhSite := v.SiteValidationRuleHandler + rulesSite := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhSite(rulesSite) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVNETSiteType.site: %s", err) + panic(errMsg) + } + v.FldValidators["site"] = vFn + + vrhCred := v.CredValidationRuleHandler + rulesCred := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhCred(rulesCred) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVNETSiteType.cred: %s", err) + panic(errMsg) + } + v.FldValidators["cred"] = vFn + + vrhVnetAttachments := v.VnetAttachmentsValidationRuleHandler + rulesVnetAttachments := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhVnetAttachments(rulesVnetAttachments) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVNETSiteType.vnet_attachments: %s", err) + panic(errMsg) + } + v.FldValidators["vnet_attachments"] = vFn + + return v +}() + +func AzureVNETSiteTypeValidator() db.Validator { + return DefaultAzureVNETSiteTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AzureVnetAttachmentListType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AzureVnetAttachmentListType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureVnetAttachmentListType) DeepCopy() *AzureVnetAttachmentListType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureVnetAttachmentListType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureVnetAttachmentListType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureVnetAttachmentListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureVnetAttachmentListTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateAzureVnetAttachmentListType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureVnetAttachmentListType) VnetListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for vnet_list") + } + itemsValidatorFn := func(ctx context.Context, elems []*AzureVNETAttachmentType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := AzureVNETAttachmentTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for vnet_list") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*AzureVNETAttachmentType) + if !ok { + return fmt.Errorf("Repeated validation expected []*AzureVNETAttachmentType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated vnet_list") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items vnet_list") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAzureVnetAttachmentListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureVnetAttachmentListType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureVnetAttachmentListType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["vnet_list"]; exists { + vOpts := append(opts, db.WithValidateField("vnet_list")) + if err := fv(ctx, m.GetVnetList(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureVnetAttachmentListTypeValidator = func() *ValidateAzureVnetAttachmentListType { + v := &ValidateAzureVnetAttachmentListType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhVnetList := v.VnetListValidationRuleHandler + rulesVnetList := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "128", + } + vFn, err = vrhVnetList(rulesVnetList) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AzureVnetAttachmentListType.vnet_list: %s", err) + panic(errMsg) + } + v.FldValidators["vnet_list"] = vFn + + return v +}() + +func AzureVnetAttachmentListTypeValidator() db.Validator { + return DefaultAzureVnetAttachmentListTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CloudConnectStatusType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CloudConnectStatusType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CloudConnectStatusType) DeepCopy() *CloudConnectStatusType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CloudConnectStatusType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CloudConnectStatusType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CloudConnectStatusType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CloudConnectStatusTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateCloudConnectStatusType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCloudConnectStatusType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CloudConnectStatusType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CloudConnectStatusType got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetCloudConnectDeployment().(type) { + case *CloudConnectStatusType_CloudConnectAwsSite: + if fv, exists := v.FldValidators["cloud_connect_deployment.cloud_connect_aws_site"]; exists { + val := m.GetCloudConnectDeployment().(*CloudConnectStatusType_CloudConnectAwsSite).CloudConnectAwsSite + vOpts := append(opts, + db.WithValidateField("cloud_connect_deployment"), + db.WithValidateField("cloud_connect_aws_site"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CloudConnectStatusType_CloudConnectAzureSite: + if fv, exists := v.FldValidators["cloud_connect_deployment.cloud_connect_azure_site"]; exists { + val := m.GetCloudConnectDeployment().(*CloudConnectStatusType_CloudConnectAzureSite).CloudConnectAzureSite + vOpts := append(opts, + db.WithValidateField("cloud_connect_deployment"), + db.WithValidateField("cloud_connect_azure_site"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCloudConnectStatusTypeValidator = func() *ValidateCloudConnectStatusType { + v := &ValidateCloudConnectStatusType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["cloud_connect_deployment.cloud_connect_aws_site"] = AWSAttachmentsListStatusTypeValidator().Validate + v.FldValidators["cloud_connect_deployment.cloud_connect_azure_site"] = AzureAttachmentsListStatusTypeValidator().Validate + + return v +}() + +func CloudConnectStatusTypeValidator() db.Validator { + return DefaultCloudConnectStatusTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CloudLinkListType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CloudLinkListType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CloudLinkListType) DeepCopy() *CloudLinkListType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CloudLinkListType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CloudLinkListType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CloudLinkListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CloudLinkListTypeValidator().Validate(ctx, m, opts...) +} + +func (m *CloudLinkListType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCloudLinkDRefInfo() + +} + +func (m *CloudLinkListType) GetCloudLinkDRefInfo() ([]db.DRefInfo, error) { + vrefs := m.GetCloudLink() + if len(vrefs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(vrefs)) + for i, vref := range vrefs { + if vref == nil { + return nil, fmt.Errorf("CloudLinkListType.cloud_link[%d] has a nil value", i) + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("cloud_link.Object") + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "cloud_link.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "cloud_link", + Ref: vdRef, + }) + } + return drInfos, nil + +} + +// GetCloudLinkDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CloudLinkListType) GetCloudLinkDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_link.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_link") + } + for i, vref := range m.GetCloudLink() { + if vref == nil { + return nil, fmt.Errorf("CloudLinkListType.cloud_link[%d] has a nil value", i) + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "cloud_link.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateCloudLinkListType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCloudLinkListType) CloudLinkValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for cloud_link") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for cloud_link") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated cloud_link") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items cloud_link") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateCloudLinkListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CloudLinkListType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CloudLinkListType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cloud_link"]; exists { + vOpts := append(opts, db.WithValidateField("cloud_link")) + if err := fv(ctx, m.GetCloudLink(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCloudLinkListTypeValidator = func() *ValidateCloudLinkListType { + v := &ValidateCloudLinkListType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCloudLink := v.CloudLinkValidationRuleHandler + rulesCloudLink := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "1", + } + vFn, err = vrhCloudLink(rulesCloudLink) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CloudLinkListType.cloud_link: %s", err) + panic(errMsg) + } + v.FldValidators["cloud_link"] = vFn + + return v +}() + +func CloudLinkListTypeValidator() db.Validator { + return DefaultCloudLinkListTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CreateSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateSpecType) ToYAML() (string, error) { return codec.ToYAML(m) } @@ -2270,6 +3680,18 @@ func (m *CreateSpecType) GetCloudDRefInfo() ([]db.DRefInfo, error) { } return drInfos, err + case *CreateSpecType_AzureVnetSite: + + drInfos, err := m.GetAzureVnetSite().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAzureVnetSite().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "azure_vnet_site." + dri.DRField + } + return drInfos, err + default: return nil, nil } @@ -2405,6 +3827,17 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o return err } } + case *CreateSpecType_AzureVnetSite: + if fv, exists := v.FldValidators["cloud.azure_vnet_site"]; exists { + val := m.GetCloud().(*CreateSpecType_AzureVnetSite).AzureVnetSite + vOpts := append(opts, + db.WithValidateField("cloud"), + db.WithValidateField("azure_vnet_site"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -2454,27 +3887,203 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { } v.FldValidators["segment"] = vFn - v.FldValidators["cloud.aws_re"] = AWSRETypeValidator().Validate - v.FldValidators["cloud.aws_tgw_site"] = AWSTGWSiteTypeValidator().Validate + v.FldValidators["cloud.aws_re"] = AWSRETypeValidator().Validate + v.FldValidators["cloud.aws_tgw_site"] = AWSTGWSiteTypeValidator().Validate + v.FldValidators["cloud.azure_vnet_site"] = AzureVNETSiteTypeValidator().Validate + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CustomerEdge) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CustomerEdge) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CustomerEdge) DeepCopy() *CustomerEdge { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CustomerEdge{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CustomerEdge) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CustomerEdge) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CustomerEdgeValidator().Validate(ctx, m, opts...) +} + +type ValidateCustomerEdge struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCustomerEdge) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CustomerEdge) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CustomerEdge got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCustomerEdgeValidator = func() *ValidateCustomerEdge { + v := &ValidateCustomerEdge{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func CustomerEdgeValidator() db.Validator { + return DefaultCustomerEdgeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DefaultRoute) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DefaultRoute) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DefaultRoute) DeepCopy() *DefaultRoute { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DefaultRoute{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DefaultRoute) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DefaultRoute) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DefaultRouteValidator().Validate(ctx, m, opts...) +} + +type ValidateDefaultRoute struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDefaultRoute) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DefaultRoute) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DefaultRoute got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetDefaultRouteChoice().(type) { + case *DefaultRoute_AllRouteTables: + if fv, exists := v.FldValidators["default_route_choice.all_route_tables"]; exists { + val := m.GetDefaultRouteChoice().(*DefaultRoute_AllRouteTables).AllRouteTables + vOpts := append(opts, + db.WithValidateField("default_route_choice"), + db.WithValidateField("all_route_tables"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *DefaultRoute_SelectiveRouteTables: + if fv, exists := v.FldValidators["default_route_choice.selective_route_tables"]; exists { + val := m.GetDefaultRouteChoice().(*DefaultRoute_SelectiveRouteTables).SelectiveRouteTables + vOpts := append(opts, + db.WithValidateField("default_route_choice"), + db.WithValidateField("selective_route_tables"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDefaultRouteValidator = func() *ValidateDefaultRoute { + v := &ValidateDefaultRoute{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["default_route_choice.selective_route_tables"] = AWSDefaultRoutesRouteTableValidator().Validate return v }() -func CreateSpecTypeValidator() db.Validator { - return DefaultCreateSpecTypeValidator +func DefaultRouteValidator() db.Validator { + return DefaultDefaultRouteValidator } // augmented methods on protoc/std generated struct -func (m *DefaultRoute) ToJSON() (string, error) { +func (m *EdgeData) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *DefaultRoute) ToYAML() (string, error) { +func (m *EdgeData) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *DefaultRoute) DeepCopy() *DefaultRoute { +func (m *EdgeData) DeepCopy() *EdgeData { if m == nil { return nil } @@ -2482,7 +4091,7 @@ func (m *DefaultRoute) DeepCopy() *DefaultRoute { if err != nil { return nil } - c := &DefaultRoute{} + c := &EdgeData{} err = c.Unmarshal(ser) if err != nil { return nil @@ -2490,55 +4099,50 @@ func (m *DefaultRoute) DeepCopy() *DefaultRoute { return c } -func (m *DefaultRoute) DeepCopyProto() proto.Message { +func (m *EdgeData) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *DefaultRoute) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return DefaultRouteValidator().Validate(ctx, m, opts...) +func (m *EdgeData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return EdgeDataValidator().Validate(ctx, m, opts...) } -type ValidateDefaultRoute struct { +type ValidateEdgeData struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateDefaultRoute) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*DefaultRoute) +func (v *ValidateEdgeData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*EdgeData) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *DefaultRoute got type %s", t) + return fmt.Errorf("Expected type *EdgeData got type %s", t) } } if m == nil { return nil } - switch m.GetDefaultRouteChoice().(type) { - case *DefaultRoute_AllRouteTables: - if fv, exists := v.FldValidators["default_route_choice.all_route_tables"]; exists { - val := m.GetDefaultRouteChoice().(*DefaultRoute_AllRouteTables).AllRouteTables - vOpts := append(opts, - db.WithValidateField("default_route_choice"), - db.WithValidateField("all_route_tables"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["ce"]; exists { + + vOpts := append(opts, db.WithValidateField("ce")) + if err := fv(ctx, m.GetCe(), vOpts...); err != nil { + return err } - case *DefaultRoute_SelectiveRouteTables: - if fv, exists := v.FldValidators["default_route_choice.selective_route_tables"]; exists { - val := m.GetDefaultRouteChoice().(*DefaultRoute_SelectiveRouteTables).SelectiveRouteTables - vOpts := append(opts, - db.WithValidateField("default_route_choice"), - db.WithValidateField("selective_route_tables"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + + } + + if fv, exists := v.FldValidators["segments"]; exists { + + vOpts := append(opts, db.WithValidateField("segments")) + for idx, item := range m.GetSegments() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { return err } } @@ -2549,16 +4153,14 @@ func (v *ValidateDefaultRoute) Validate(ctx context.Context, pm interface{}, opt } // Well-known symbol for default validator implementation -var DefaultDefaultRouteValidator = func() *ValidateDefaultRoute { - v := &ValidateDefaultRoute{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["default_route_choice.selective_route_tables"] = AWSDefaultRoutesRouteTableValidator().Validate +var DefaultEdgeDataValidator = func() *ValidateEdgeData { + v := &ValidateEdgeData{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func DefaultRouteValidator() db.Validator { - return DefaultDefaultRouteValidator +func EdgeDataValidator() db.Validator { + return DefaultEdgeDataValidator } // augmented methods on protoc/std generated struct @@ -2650,6 +4252,18 @@ func (m *GetSpecType) GetCloudDRefInfo() ([]db.DRefInfo, error) { } return drInfos, err + case *GetSpecType_AzureVnetSite: + + drInfos, err := m.GetAzureVnetSite().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAzureVnetSite().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "azure_vnet_site." + dri.DRField + } + return drInfos, err + default: return nil, nil } @@ -2785,6 +4399,35 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts return err } } + case *GetSpecType_AzureVnetSite: + if fv, exists := v.FldValidators["cloud.azure_vnet_site"]; exists { + val := m.GetCloud().(*GetSpecType_AzureVnetSite).AzureVnetSite + vOpts := append(opts, + db.WithValidateField("cloud"), + db.WithValidateField("azure_vnet_site"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["coordinates"]; exists { + + vOpts := append(opts, db.WithValidateField("coordinates")) + if err := fv(ctx, m.GetCoordinates(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["onboarded_vpc"]; exists { + + vOpts := append(opts, db.WithValidateField("onboarded_vpc")) + if err := fv(ctx, m.GetOnboardedVpc(), vOpts...); err != nil { + return err + } } @@ -2845,6 +4488,9 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["cloud.aws_re"] = AWSRETypeValidator().Validate v.FldValidators["cloud.aws_tgw_site"] = AWSTGWSiteTypeValidator().Validate + v.FldValidators["cloud.azure_vnet_site"] = AzureVNETSiteTypeValidator().Validate + + v.FldValidators["coordinates"] = ves_io_schema_site.CoordinatesValidator().Validate return v }() @@ -2954,6 +4600,18 @@ func (m *GlobalSpecType) GetCloudDRefInfo() ([]db.DRefInfo, error) { } return drInfos, err + case *GlobalSpecType_AzureVnetSite: + + drInfos, err := m.GetAzureVnetSite().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAzureVnetSite().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "azure_vnet_site." + dri.DRField + } + return drInfos, err + default: return nil, nil } @@ -3212,6 +4870,35 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o return err } } + case *GlobalSpecType_AzureVnetSite: + if fv, exists := v.FldValidators["cloud.azure_vnet_site"]; exists { + val := m.GetCloud().(*GlobalSpecType_AzureVnetSite).AzureVnetSite + vOpts := append(opts, + db.WithValidateField("cloud"), + db.WithValidateField("azure_vnet_site"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["coordinates"]; exists { + + vOpts := append(opts, db.WithValidateField("coordinates")) + if err := fv(ctx, m.GetCoordinates(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["onboarded_vpc"]; exists { + + vOpts := append(opts, db.WithValidateField("onboarded_vpc")) + if err := fv(ctx, m.GetOnboardedVpc(), vOpts...); err != nil { + return err + } } @@ -3281,38 +4968,236 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.bandwidth_option: %s", err) panic(errMsg) } - v.FldValidators["bandwidth_option"] = vFn - - vrhCloud := v.CloudValidationRuleHandler - rulesCloud := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + v.FldValidators["bandwidth_option"] = vFn + + vrhCloud := v.CloudValidationRuleHandler + rulesCloud := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhCloud(rulesCloud) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.cloud: %s", err) + panic(errMsg) + } + v.FldValidators["cloud"] = vFn + + vrhSegment := v.SegmentValidationRuleHandler + rulesSegment := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhSegment(rulesSegment) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.segment: %s", err) + panic(errMsg) + } + v.FldValidators["segment"] = vFn + + v.FldValidators["cloud.aws_re"] = AWSRETypeValidator().Validate + v.FldValidators["cloud.aws_tgw_site"] = AWSTGWSiteTypeValidator().Validate + v.FldValidators["cloud.azure_vnet_site"] = AzureVNETSiteTypeValidator().Validate + + v.FldValidators["coordinates"] = ves_io_schema_site.CoordinatesValidator().Validate + + return v +}() + +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *LabelFilter) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *LabelFilter) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *LabelFilter) DeepCopy() *LabelFilter { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &LabelFilter{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *LabelFilter) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *LabelFilter) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LabelFilterValidator().Validate(ctx, m, opts...) +} + +type ValidateLabelFilter struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateLabelFilter) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LabelFilter) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *LabelFilter got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["label"]; exists { + + vOpts := append(opts, db.WithValidateField("label")) + if err := fv(ctx, m.GetLabel(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["op"]; exists { + + vOpts := append(opts, db.WithValidateField("op")) + if err := fv(ctx, m.GetOp(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["value"]; exists { + + vOpts := append(opts, db.WithValidateField("value")) + if err := fv(ctx, m.GetValue(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultLabelFilterValidator = func() *ValidateLabelFilter { + v := &ValidateLabelFilter{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func LabelFilterValidator() db.Validator { + return DefaultLabelFilterValidator +} + +// augmented methods on protoc/std generated struct + +func (m *MetricData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *MetricData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *MetricData) DeepCopy() *MetricData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &MetricData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *MetricData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *MetricData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return MetricDataValidator().Validate(ctx, m, opts...) +} + +type ValidateMetricData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateMetricData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*MetricData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *MetricData got type %s", t) + } + } + if m == nil { + return nil } - vFn, err = vrhCloud(rulesCloud) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.cloud: %s", err) - panic(errMsg) + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + } - v.FldValidators["cloud"] = vFn - vrhSegment := v.SegmentValidationRuleHandler - rulesSegment := map[string]string{ - "ves.io.schema.rules.message.required": "true", + if fv, exists := v.FldValidators["unit"]; exists { + + vOpts := append(opts, db.WithValidateField("unit")) + if err := fv(ctx, m.GetUnit(), vOpts...); err != nil { + return err + } + } - vFn, err = vrhSegment(rulesSegment) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.segment: %s", err) - panic(errMsg) + + if fv, exists := v.FldValidators["values"]; exists { + + vOpts := append(opts, db.WithValidateField("values")) + for idx, item := range m.GetValues() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + } - v.FldValidators["segment"] = vFn - v.FldValidators["cloud.aws_re"] = AWSRETypeValidator().Validate - v.FldValidators["cloud.aws_tgw_site"] = AWSTGWSiteTypeValidator().Validate + return nil +} + +// Well-known symbol for default validator implementation +var DefaultMetricDataValidator = func() *ValidateMetricData { + v := &ValidateMetricData{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func GlobalSpecTypeValidator() db.Validator { - return DefaultGlobalSpecTypeValidator +func MetricDataValidator() db.Validator { + return DefaultMetricDataValidator } // augmented methods on protoc/std generated struct @@ -3611,6 +5496,86 @@ func ReplaceAWSTGWSiteTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *ReplaceAzureVNETSiteType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceAzureVNETSiteType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceAzureVNETSiteType) DeepCopy() *ReplaceAzureVNETSiteType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceAzureVNETSiteType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceAzureVNETSiteType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceAzureVNETSiteType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceAzureVNETSiteTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceAzureVNETSiteType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceAzureVNETSiteType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceAzureVNETSiteType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceAzureVNETSiteType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["vnet_attachments"]; exists { + + vOpts := append(opts, db.WithValidateField("vnet_attachments")) + if err := fv(ctx, m.GetVnetAttachments(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceAzureVNETSiteTypeValidator = func() *ValidateReplaceAzureVNETSiteType { + v := &ValidateReplaceAzureVNETSiteType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["vnet_attachments"] = AzureVnetAttachmentListTypeValidator().Validate + + return v +}() + +func ReplaceAzureVNETSiteTypeValidator() db.Validator { + return DefaultReplaceAzureVNETSiteTypeValidator +} + +// augmented methods on protoc/std generated struct + func (m *ReplaceSpecType) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -3651,7 +5616,52 @@ func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { return nil, nil } - return m.GetSegmentDRefInfo() + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetCloudDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetCloudDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSegmentDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSegmentDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetCloudDRefInfo() ([]db.DRefInfo, error) { + if m.GetCloud() == nil { + return nil, nil + } + switch m.GetCloud().(type) { + case *ReplaceSpecType_AwsRe: + + return nil, nil + + case *ReplaceSpecType_AwsTgwSite: + + return nil, nil + + case *ReplaceSpecType_AzureVnetSite: + + drInfos, err := m.GetAzureVnetSite().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAzureVnetSite().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "azure_vnet_site." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } } @@ -3784,6 +5794,17 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, return err } } + case *ReplaceSpecType_AzureVnetSite: + if fv, exists := v.FldValidators["cloud.azure_vnet_site"]; exists { + val := m.GetCloud().(*ReplaceSpecType_AzureVnetSite).AzureVnetSite + vOpts := append(opts, + db.WithValidateField("cloud"), + db.WithValidateField("azure_vnet_site"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -3835,6 +5856,7 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["cloud.aws_re"] = ReplaceAWSRETypeValidator().Validate v.FldValidators["cloud.aws_tgw_site"] = ReplaceAWSTGWSiteTypeValidator().Validate + v.FldValidators["cloud.azure_vnet_site"] = AzureVNETSiteTypeValidator().Validate return v }() @@ -3845,6 +5867,96 @@ func ReplaceSpecTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *SegmentationData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SegmentationData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SegmentationData) DeepCopy() *SegmentationData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SegmentationData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SegmentationData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SegmentationData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SegmentationDataValidator().Validate(ctx, m, opts...) +} + +type ValidateSegmentationData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSegmentationData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SegmentationData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SegmentationData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["data"]; exists { + + vOpts := append(opts, db.WithValidateField("data")) + for idx, item := range m.GetData() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSegmentationDataValidator = func() *ValidateSegmentationData { + v := &ValidateSegmentationData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SegmentationDataValidator() db.Validator { + return DefaultSegmentationDataValidator +} + +// augmented methods on protoc/std generated struct + func (m *SubnetStatusType) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -3978,6 +6090,9 @@ func (r *CreateSpecType) SetCloudToGlobalSpecType(o *GlobalSpecType) error { case *CreateSpecType_AwsTgwSite: o.Cloud = &GlobalSpecType_AwsTgwSite{AwsTgwSite: of.AwsTgwSite} + case *CreateSpecType_AzureVnetSite: + o.Cloud = &GlobalSpecType_AzureVnetSite{AzureVnetSite: of.AzureVnetSite} + default: return fmt.Errorf("Unknown oneof field %T", of) } @@ -3995,6 +6110,9 @@ func (r *CreateSpecType) GetCloudFromGlobalSpecType(o *GlobalSpecType) error { case *GlobalSpecType_AwsTgwSite: r.Cloud = &CreateSpecType_AwsTgwSite{AwsTgwSite: of.AwsTgwSite} + case *GlobalSpecType_AzureVnetSite: + r.Cloud = &CreateSpecType_AzureVnetSite{AzureVnetSite: of.AzureVnetSite} + default: return fmt.Errorf("Unknown oneof field %T", of) } @@ -4048,6 +6166,9 @@ func (r *GetSpecType) SetCloudToGlobalSpecType(o *GlobalSpecType) error { case *GetSpecType_AwsTgwSite: o.Cloud = &GlobalSpecType_AwsTgwSite{AwsTgwSite: of.AwsTgwSite} + case *GetSpecType_AzureVnetSite: + o.Cloud = &GlobalSpecType_AzureVnetSite{AzureVnetSite: of.AzureVnetSite} + default: return fmt.Errorf("Unknown oneof field %T", of) } @@ -4065,6 +6186,9 @@ func (r *GetSpecType) GetCloudFromGlobalSpecType(o *GlobalSpecType) error { case *GlobalSpecType_AwsTgwSite: r.Cloud = &GetSpecType_AwsTgwSite{AwsTgwSite: of.AwsTgwSite} + case *GlobalSpecType_AzureVnetSite: + r.Cloud = &GetSpecType_AzureVnetSite{AzureVnetSite: of.AzureVnetSite} + default: return fmt.Errorf("Unknown oneof field %T", of) } @@ -4076,6 +6200,8 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { return } m.GetCloudFromGlobalSpecType(f) + m.Coordinates = f.GetCoordinates() + m.OnboardedVpc = f.GetOnboardedVpc() m.Segment = f.GetSegment() m.State = f.GetState() } @@ -4096,6 +6222,8 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { _ = m1 m1.SetCloudToGlobalSpecType(f) + f.Coordinates = m1.Coordinates + f.OnboardedVpc = m1.OnboardedVpc f.Segment = m1.Segment f.State = m1.State } @@ -4174,6 +6302,38 @@ func (m *ReplaceAWSTGWSiteType) ToAWSTGWSiteTypeWithoutDeepCopy(f *AWSTGWSiteTyp m.toAWSTGWSiteType(f, false) } +func (m *ReplaceAzureVNETSiteType) fromAWSTGWSiteType(f *AWSTGWSiteType, withDeepCopy bool) { + if f == nil { + return + } + +} + +func (m *ReplaceAzureVNETSiteType) FromAWSTGWSiteType(f *AWSTGWSiteType) { + m.fromAWSTGWSiteType(f, true) +} + +func (m *ReplaceAzureVNETSiteType) FromAWSTGWSiteTypeWithoutDeepCopy(f *AWSTGWSiteType) { + m.fromAWSTGWSiteType(f, false) +} + +func (m *ReplaceAzureVNETSiteType) toAWSTGWSiteType(f *AWSTGWSiteType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + +} + +func (m *ReplaceAzureVNETSiteType) ToAWSTGWSiteType(f *AWSTGWSiteType) { + m.toAWSTGWSiteType(f, true) +} + +func (m *ReplaceAzureVNETSiteType) ToAWSTGWSiteTypeWithoutDeepCopy(f *AWSTGWSiteType) { + m.toAWSTGWSiteType(f, false) +} + // create setters in ReplaceSpecType from GlobalSpecType for oneof fields func (r *ReplaceSpecType) SetCloudToGlobalSpecType(o *GlobalSpecType) error { switch of := r.Cloud.(type) { @@ -4198,6 +6358,9 @@ func (r *ReplaceSpecType) SetCloudToGlobalSpecType(o *GlobalSpecType) error { of.AwsTgwSite.ToAWSTGWSiteTypeWithoutDeepCopy(f1) o.Cloud = &GlobalSpecType_AwsTgwSite{AwsTgwSite: f1} + case *ReplaceSpecType_AzureVnetSite: + o.Cloud = &GlobalSpecType_AzureVnetSite{AzureVnetSite: of.AzureVnetSite} + default: return fmt.Errorf("Unknown oneof field %T", of) } @@ -4221,6 +6384,9 @@ func (r *ReplaceSpecType) GetCloudFromGlobalSpecType(o *GlobalSpecType) error { f1.FromAWSTGWSiteTypeWithoutDeepCopy(of.AwsTgwSite) r.Cloud = &ReplaceSpecType_AwsTgwSite{AwsTgwSite: f1} + case *GlobalSpecType_AzureVnetSite: + r.Cloud = &ReplaceSpecType_AzureVnetSite{AzureVnetSite: of.AzureVnetSite} + default: return fmt.Errorf("Unknown oneof field %T", of) } diff --git a/pbgo/extschema/schema/cloud_credentials/crudapi/api.vesapi.go b/pbgo/extschema/schema/cloud_credentials/crudapi/api.vesapi.go index 8e1a0f097..fcabaf92e 100644 --- a/pbgo/extschema/schema/cloud_credentials/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/cloud_credentials/crudapi/api.vesapi.go @@ -3447,10 +3447,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cloud_credentials/object.pb.go b/pbgo/extschema/schema/cloud_credentials/object.pb.go index bf07b7dad..eab99d177 100644 --- a/pbgo/extschema/schema/cloud_credentials/object.pb.go +++ b/pbgo/extschema/schema/cloud_credentials/object.pb.go @@ -235,53 +235,54 @@ func init() { } var fileDescriptor_b3d3e0f702922184 = []byte{ - // 731 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x95, 0x41, 0x4f, 0xdc, 0x46, - 0x14, 0xc7, 0xd7, 0xbb, 0x68, 0x41, 0x03, 0xa2, 0xd4, 0xed, 0x61, 0x4b, 0x5b, 0x17, 0x6d, 0x2f, - 0x54, 0xc5, 0xe3, 0x16, 0x8a, 0xaa, 0xa2, 0x16, 0x2a, 0xa8, 0x44, 0x0f, 0xa0, 0x4a, 0xbb, 0xf4, - 0x92, 0x8b, 0x35, 0x3b, 0x7e, 0x36, 0x13, 0x6c, 0x8f, 0x35, 0x33, 0xde, 0x65, 0x23, 0x45, 0x8a, - 0x92, 0x2f, 0x10, 0x29, 0x9f, 0x21, 0x52, 0x94, 0x4f, 0x11, 0x22, 0x45, 0xca, 0x11, 0x71, 0x88, - 0x50, 0x4e, 0xc1, 0x7b, 0xc9, 0x91, 0x7c, 0x83, 0x68, 0xc7, 0xbb, 0xc0, 0xc2, 0x12, 0xa2, 0xe5, - 0xe4, 0x19, 0xbd, 0xff, 0xfb, 0xfd, 0xdf, 0x8c, 0xfd, 0x9e, 0xd1, 0x42, 0x13, 0x24, 0x66, 0xdc, - 0x91, 0x74, 0x17, 0x22, 0xe2, 0xd0, 0x90, 0xa7, 0x9e, 0x4b, 0x05, 0x78, 0x10, 0x2b, 0x46, 0x42, - 0xe9, 0xf0, 0xc6, 0x5d, 0xa0, 0x0a, 0x27, 0x82, 0x2b, 0x6e, 0xfe, 0x90, 0xab, 0x71, 0xae, 0xc6, - 0x57, 0xd4, 0xb3, 0x76, 0xc0, 0xd4, 0x6e, 0xda, 0xc0, 0x94, 0x47, 0x4e, 0xc0, 0x03, 0xee, 0xe8, - 0xbc, 0x46, 0xea, 0xeb, 0x9d, 0xde, 0xe8, 0x55, 0xce, 0x9b, 0xfd, 0xf9, 0x26, 0x77, 0xd5, 0x4e, - 0x40, 0xf6, 0xc4, 0xdf, 0x0e, 0x8a, 0x79, 0xa2, 0x18, 0x8f, 0xfb, 0xc1, 0x6f, 0x06, 0x83, 0x17, - 0xf3, 0xaa, 0x83, 0xa1, 0x26, 0x48, 0x88, 0x9b, 0x83, 0xe9, 0xd5, 0x37, 0xe3, 0xa8, 0xfc, 0x9f, - 0x3e, 0xa9, 0xf9, 0x07, 0x9a, 0x88, 0x40, 0x11, 0x8f, 0x28, 0x52, 0x31, 0xe6, 0x8c, 0xf9, 0xc9, - 0xc5, 0xef, 0xf1, 0xe0, 0xb1, 0x73, 0xe1, 0x36, 0x28, 0xb2, 0xd3, 0x4e, 0xa0, 0x76, 0x26, 0x37, - 0xb7, 0xd0, 0x17, 0xb2, 0x2d, 0x15, 0x44, 0xee, 0x19, 0xa1, 0xa8, 0x09, 0x3f, 0x5e, 0x22, 0xd4, - 0xb5, 0xea, 0x12, 0x67, 0x3a, 0xcf, 0xdd, 0xee, 0xd3, 0xfe, 0x42, 0x63, 0x32, 0x01, 0x5a, 0x29, - 0x69, 0xc4, 0x4f, 0xf8, 0x86, 0xbb, 0xc7, 0xf5, 0x04, 0xa8, 0x06, 0xe9, 0xb4, 0x95, 0x47, 0xe5, - 0x87, 0x6b, 0xe5, 0x1c, 0xf9, 0xf2, 0xa0, 0x52, 0x9c, 0x31, 0x8e, 0x0e, 0x2a, 0xaf, 0x8a, 0x68, - 0x15, 0x95, 0x36, 0x41, 0x99, 0xbf, 0xfb, 0xcb, 0xfb, 0xd4, 0x96, 0x4c, 0x81, 0x1d, 0x91, 0x98, - 0x04, 0x10, 0x41, 0xac, 0xec, 0x06, 0x91, 0x8c, 0xda, 0x11, 0x8f, 0x99, 0xe2, 0x62, 0x61, 0xae, - 0x09, 0xd2, 0x66, 0xdc, 0x0e, 0x20, 0x06, 0x41, 0x42, 0x5b, 0x00, 0xf1, 0xd0, 0xdf, 0x68, 0xbc, - 0x06, 0x49, 0x48, 0x28, 0x98, 0xcb, 0x9f, 0x60, 0xa4, 0x12, 0xae, 0x02, 0x5a, 0x82, 0x29, 0x40, - 0x6b, 0xa8, 0xbc, 0x21, 0x80, 0xa8, 0xdb, 0x00, 0xfe, 0x81, 0x10, 0x6e, 0x03, 0x18, 0xdb, 0x62, - 0x72, 0xf4, 0x4b, 0x78, 0x7b, 0x50, 0x79, 0x5a, 0x42, 0x14, 0x2d, 0x74, 0x2f, 0x1a, 0x07, 0xd4, - 0xd5, 0x4f, 0xfd, 0x46, 0x30, 0x69, 0x49, 0x57, 0x02, 0x15, 0xa0, 0xdc, 0x3d, 0x68, 0xe3, 0xf3, - 0xa5, 0xb9, 0xd4, 0x23, 0x35, 0x19, 0xb4, 0x72, 0xd3, 0x6e, 0x9a, 0x1d, 0xd0, 0xfc, 0xe9, 0x41, - 0x12, 0xf2, 0xb6, 0xae, 0x40, 0x93, 0xec, 0xee, 0xbb, 0x45, 0xbb, 0xe8, 0xd7, 0x61, 0x26, 0xf7, - 0x52, 0x01, 0x6e, 0xe2, 0xef, 0xbb, 0x14, 0x84, 0x62, 0x3e, 0xa3, 0x44, 0x01, 0x4e, 0x88, 0x94, - 0x2d, 0x2e, 0xbc, 0xd1, 0x9c, 0xf6, 0xd0, 0x6f, 0xd7, 0x3a, 0xd1, 0x90, 0x41, 0xac, 0x7a, 0xe7, - 0xc2, 0x03, 0xbb, 0xd1, 0xcc, 0x02, 0xf4, 0xcb, 0x10, 0xb3, 0x80, 0x26, 0xfa, 0x8b, 0x76, 0x7d, - 0x16, 0x02, 0x3e, 0xff, 0xb6, 0xf5, 0x7e, 0x24, 0xa3, 0xea, 0x0e, 0x9a, 0xe8, 0xf7, 0x85, 0xf9, - 0x2f, 0x1a, 0xef, 0xf9, 0xf5, 0xda, 0xd2, 0xb9, 0xb1, 0xa7, 0x36, 0x43, 0xde, 0x20, 0xe1, 0x59, - 0x67, 0x95, 0x03, 0xda, 0x5d, 0x57, 0x3f, 0x18, 0x68, 0xaa, 0xae, 0x88, 0x4a, 0xe5, 0x67, 0x0f, - 0x8d, 0x5c, 0x3e, 0x64, 0x68, 0xd4, 0xd1, 0x64, 0x3e, 0x63, 0x5d, 0x01, 0xbe, 0xac, 0x14, 0xe7, - 0x4a, 0xf3, 0x93, 0x8b, 0xdf, 0x0d, 0x1d, 0x39, 0x35, 0xf0, 0xbb, 0xc9, 0xeb, 0x5f, 0x3f, 0xbf, - 0xff, 0xe5, 0x95, 0x5a, 0x6b, 0x88, 0xf7, 0x45, 0xd2, 0xfc, 0x13, 0x21, 0xca, 0x63, 0x8f, 0xe9, - 0x19, 0x57, 0x19, 0x1b, 0xca, 0xdc, 0xe8, 0x0b, 0x74, 0x41, 0x17, 0xf4, 0x2b, 0x5f, 0x1d, 0xad, - 0xce, 0xa0, 0x69, 0x34, 0xd5, 0xaf, 0x11, 0xa7, 0xcc, 0x5b, 0x7f, 0x62, 0x1c, 0x9e, 0x58, 0x85, - 0xe3, 0x13, 0xab, 0x70, 0x7a, 0x62, 0x19, 0x0f, 0x32, 0xcb, 0x78, 0x96, 0x59, 0xc6, 0xeb, 0xcc, - 0x32, 0x0e, 0x33, 0xcb, 0x38, 0xce, 0x2c, 0xe3, 0x5d, 0x66, 0x19, 0xef, 0x33, 0xab, 0x70, 0x9a, - 0x59, 0xc6, 0xe3, 0x8e, 0x55, 0x78, 0xd1, 0xb1, 0x8c, 0xc3, 0x8e, 0x55, 0x38, 0xee, 0x58, 0x85, - 0x3b, 0xff, 0x07, 0x3c, 0xd9, 0x0b, 0x70, 0x93, 0x87, 0x0a, 0x84, 0x20, 0x38, 0x95, 0x8e, 0x5e, - 0xf8, 0x5c, 0x44, 0x76, 0x22, 0x78, 0x93, 0x79, 0x20, 0xec, 0x7e, 0xd8, 0x49, 0x1a, 0x01, 0x77, - 0x60, 0x5f, 0xf5, 0x86, 0xf6, 0x75, 0x3f, 0x88, 0x46, 0x59, 0xcf, 0xef, 0xa5, 0x8f, 0x01, 0x00, - 0x00, 0xff, 0xff, 0xe3, 0x4e, 0xf1, 0x7c, 0xc8, 0x06, 0x00, 0x00, + // 746 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x95, 0xcf, 0x4f, 0xdb, 0x48, + 0x14, 0xc7, 0x63, 0x82, 0x02, 0x3b, 0x20, 0x96, 0xf5, 0xee, 0x21, 0xcb, 0xee, 0x7a, 0x51, 0xf6, + 0xc2, 0x6a, 0xf1, 0x78, 0x17, 0xb6, 0x87, 0xa2, 0xfe, 0x90, 0xa0, 0x12, 0x3d, 0x80, 0x2a, 0x25, + 0xf4, 0xd0, 0x1e, 0x6a, 0x4d, 0xc6, 0xcf, 0x66, 0x8a, 0xed, 0xb1, 0x66, 0xc6, 0x09, 0xa9, 0x54, + 0xa9, 0xea, 0x5f, 0x80, 0xd4, 0xbf, 0xa1, 0x52, 0xd5, 0xff, 0xa1, 0x52, 0xe9, 0xa9, 0x47, 0xc4, + 0x09, 0xf5, 0x54, 0x9c, 0x4b, 0x8f, 0xf4, 0x2f, 0x68, 0x95, 0x71, 0x02, 0x04, 0x42, 0x53, 0x21, + 0x71, 0xf2, 0x8c, 0xde, 0xe7, 0x7d, 0xbf, 0x6f, 0x92, 0x99, 0xf7, 0xd0, 0x7c, 0x03, 0x24, 0x66, + 0xdc, 0x91, 0x74, 0x13, 0x22, 0xe2, 0xd0, 0x90, 0xa7, 0x9e, 0x4b, 0x05, 0x78, 0x10, 0x2b, 0x46, + 0x42, 0xe9, 0xf0, 0xfa, 0x63, 0xa0, 0x0a, 0x27, 0x82, 0x2b, 0x6e, 0xfe, 0x99, 0xd3, 0x38, 0xa7, + 0xf1, 0x39, 0x7a, 0xc6, 0x0e, 0x98, 0xda, 0x4c, 0xeb, 0x98, 0xf2, 0xc8, 0x09, 0x78, 0xc0, 0x1d, + 0x9d, 0x57, 0x4f, 0x7d, 0xbd, 0xd3, 0x1b, 0xbd, 0xca, 0xf5, 0x66, 0xfe, 0x19, 0xe6, 0xae, 0x5a, + 0x09, 0xc8, 0x2e, 0xfc, 0x5b, 0x3f, 0xcc, 0x13, 0xc5, 0x78, 0xdc, 0x0b, 0xfe, 0xda, 0x1f, 0x3c, + 0x9d, 0x57, 0xe9, 0x0f, 0x35, 0x40, 0x42, 0xdc, 0xe8, 0x4f, 0xaf, 0xec, 0xfc, 0x80, 0x4a, 0xf7, + 0xf4, 0x49, 0xcd, 0xeb, 0x68, 0x3c, 0x02, 0x45, 0x3c, 0xa2, 0x48, 0xd9, 0x98, 0x35, 0xe6, 0x26, + 0x16, 0xfe, 0xc0, 0xfd, 0xc7, 0xce, 0xc1, 0x75, 0x50, 0x64, 0xa3, 0x95, 0x40, 0xf5, 0x18, 0x37, + 0xd7, 0xd0, 0x8f, 0xb2, 0x25, 0x15, 0x44, 0xee, 0xb1, 0xc2, 0x88, 0x56, 0xf8, 0xeb, 0x8c, 0x42, + 0x4d, 0x53, 0x67, 0x74, 0xa6, 0xf2, 0xdc, 0xf5, 0x9e, 0xda, 0x4d, 0x34, 0x2a, 0x13, 0xa0, 0xe5, + 0xa2, 0x96, 0xf8, 0x1b, 0x0f, 0xf9, 0xed, 0x71, 0x2d, 0x01, 0xaa, 0x85, 0x74, 0xda, 0xd2, 0x9b, + 0xb1, 0xe7, 0xb7, 0x4b, 0xb9, 0xe4, 0xbb, 0xdd, 0xf2, 0xc8, 0xb4, 0xb1, 0xbf, 0x5b, 0xfe, 0x52, + 0x44, 0x80, 0x8a, 0xab, 0xa0, 0xcc, 0x47, 0xfe, 0xb5, 0x6d, 0x6a, 0x4b, 0xa6, 0xc0, 0x8e, 0x48, + 0x4c, 0x02, 0x88, 0x20, 0x56, 0x76, 0x9d, 0x48, 0x46, 0xed, 0x88, 0xc7, 0x4c, 0x71, 0x31, 0x3f, + 0x3b, 0x90, 0x91, 0x8a, 0xc4, 0x1e, 0x11, 0xde, 0x09, 0xd6, 0x00, 0x69, 0x33, 0x6e, 0x07, 0x10, + 0x83, 0x20, 0xa1, 0x2d, 0x80, 0x78, 0xc8, 0x43, 0x63, 0x55, 0x48, 0x42, 0x42, 0xc1, 0x7c, 0xf0, + 0x0d, 0xab, 0x54, 0xc2, 0x50, 0x9f, 0x9c, 0x39, 0x63, 0xd2, 0x14, 0x4c, 0x01, 0xa2, 0xa8, 0xb4, + 0x22, 0x80, 0xa8, 0xab, 0x36, 0xb9, 0x03, 0x21, 0x5c, 0xad, 0x89, 0x8f, 0x46, 0xd7, 0x98, 0xbc, + 0xf2, 0xff, 0xe5, 0xc3, 0x6e, 0xf9, 0x65, 0x11, 0x51, 0x34, 0xdf, 0xb9, 0x22, 0x38, 0xa0, 0xae, + 0xfe, 0xea, 0xbb, 0x84, 0x49, 0x53, 0xba, 0x12, 0xa8, 0x00, 0xe5, 0x6e, 0x41, 0x0b, 0x9f, 0x2c, + 0xcd, 0xc5, 0xae, 0x52, 0x83, 0x41, 0x33, 0xf7, 0xed, 0xa4, 0xd9, 0x01, 0xcd, 0xbf, 0x1e, 0x24, + 0x21, 0x6f, 0xe9, 0x22, 0xb4, 0x92, 0xdd, 0xb9, 0x95, 0x68, 0x13, 0xfd, 0x37, 0xc8, 0xe4, 0x49, + 0x2a, 0xc0, 0x4d, 0xfc, 0x6d, 0x97, 0x82, 0x50, 0xcc, 0x67, 0x94, 0x28, 0xc0, 0x09, 0x91, 0xb2, + 0xc9, 0x85, 0x77, 0x39, 0xa7, 0x2d, 0xf4, 0xff, 0x85, 0x4e, 0x34, 0x64, 0x10, 0xab, 0xee, 0xb9, + 0x70, 0xdf, 0xee, 0x72, 0x66, 0x01, 0xfa, 0x77, 0x80, 0x59, 0x40, 0x13, 0xfd, 0x16, 0x5d, 0x9f, + 0x85, 0x80, 0x4f, 0x5e, 0xa5, 0xde, 0x5f, 0xca, 0xa8, 0xb2, 0x81, 0xc6, 0x7b, 0x2f, 0xda, 0xbc, + 0x8b, 0xc6, 0xba, 0x7e, 0xdd, 0x86, 0xe2, 0x0c, 0xed, 0x06, 0xab, 0x21, 0xaf, 0x93, 0xf0, 0xb8, + 0x27, 0x94, 0x02, 0xda, 0x59, 0x57, 0x3e, 0x1b, 0x68, 0xb2, 0xa6, 0x88, 0x4a, 0xe5, 0x77, 0xb7, + 0xbb, 0x1c, 0x1f, 0xd0, 0xee, 0x6a, 0x68, 0x22, 0x9f, 0x0e, 0xae, 0x00, 0x5f, 0x96, 0x47, 0x66, + 0x8b, 0x73, 0x13, 0x0b, 0xbf, 0x0f, 0x6c, 0x96, 0x55, 0xf0, 0x3b, 0xc9, 0xcb, 0xbf, 0xbc, 0x7e, + 0xfa, 0xd3, 0xb9, 0x5a, 0xab, 0x88, 0xf7, 0x20, 0x69, 0xde, 0x40, 0x88, 0xf2, 0xd8, 0x63, 0xba, + 0x3b, 0x97, 0x47, 0x07, 0x6a, 0xae, 0xf4, 0x00, 0x5d, 0xd0, 0x29, 0x7e, 0xe9, 0xe7, 0xfd, 0x5b, + 0xd3, 0x68, 0x0a, 0x4d, 0xf6, 0x6a, 0xc4, 0x29, 0xf3, 0x96, 0x5f, 0x18, 0x7b, 0x87, 0x56, 0xe1, + 0xe0, 0xd0, 0x2a, 0x1c, 0x1d, 0x5a, 0xc6, 0xb3, 0xcc, 0x32, 0x5e, 0x65, 0x96, 0xf1, 0x3e, 0xb3, + 0x8c, 0xbd, 0xcc, 0x32, 0x0e, 0x32, 0xcb, 0xf8, 0x98, 0x59, 0xc6, 0xa7, 0xcc, 0x2a, 0x1c, 0x65, + 0x96, 0xb1, 0xd3, 0xb6, 0x0a, 0x6f, 0xdb, 0x96, 0xb1, 0xd7, 0xb6, 0x0a, 0x07, 0x6d, 0xab, 0xf0, + 0xf0, 0x7e, 0xc0, 0x93, 0xad, 0x00, 0x37, 0x78, 0xa8, 0x40, 0x08, 0x82, 0x53, 0xe9, 0xe8, 0x85, + 0xcf, 0x45, 0x64, 0x27, 0x82, 0x37, 0x98, 0x07, 0xc2, 0xee, 0x85, 0x9d, 0xa4, 0x1e, 0x70, 0x07, + 0xb6, 0x55, 0x77, 0xdc, 0x5c, 0x34, 0xda, 0xea, 0x25, 0x3d, 0x79, 0x16, 0xbf, 0x06, 0x00, 0x00, + 0xff, 0xff, 0xe8, 0x35, 0x69, 0x15, 0x82, 0x07, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/cloud_credentials/public_crudapi.pb.go b/pbgo/extschema/schema/cloud_credentials/public_crudapi.pb.go index f476cbfd6..4b1f4f569 100644 --- a/pbgo/extschema/schema/cloud_credentials/public_crudapi.pb.go +++ b/pbgo/extschema/schema/cloud_credentials/public_crudapi.pb.go @@ -1059,109 +1059,110 @@ func init() { } var fileDescriptor_e83989bd2ec24641 = []byte{ - // 1623 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x6c, 0x13, 0xd9, - 0x19, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0xcf, 0xf0, 0x0a, 0xc1, 0x71, 0xa9, 0xeb, 0x1a, 0x84, - 0xa2, 0x10, 0x8f, 0x43, 0xa0, 0x08, 0xa2, 0x02, 0x75, 0x12, 0xc7, 0x4a, 0x1a, 0x30, 0x8c, 0x1d, - 0x54, 0xf5, 0x32, 0x1a, 0x8f, 0x3f, 0x9b, 0x29, 0xf6, 0xcc, 0x74, 0xe6, 0x39, 0x21, 0x42, 0xa9, - 0x2a, 0x6e, 0x3d, 0x54, 0xaa, 0xd4, 0x43, 0xa5, 0xaa, 0x52, 0xdb, 0x43, 0xa5, 0xbd, 0xee, 0x6d, - 0xa5, 0x5c, 0xb8, 0x81, 0x90, 0x76, 0x15, 0xed, 0x5e, 0x38, 0xec, 0x01, 0x9c, 0x5d, 0x09, 0x69, - 0x2f, 0x68, 0xcf, 0xbb, 0xd2, 0x6a, 0xde, 0x9b, 0x31, 0xb6, 0x63, 0xb0, 0x1d, 0x72, 0xf2, 0xbc, - 0xf7, 0x7d, 0xdf, 0xef, 0x7d, 0xbf, 0xf7, 0xfd, 0xf1, 0x37, 0x83, 0xaf, 0x6c, 0x81, 0x2d, 0x6a, - 0x46, 0xda, 0x56, 0x1f, 0x40, 0x5d, 0x49, 0xab, 0x35, 0xa3, 0x51, 0x96, 0x55, 0x0b, 0xca, 0xa0, - 0x53, 0x4d, 0xa9, 0xd9, 0x69, 0xb3, 0x51, 0xaa, 0x69, 0xaa, 0xac, 0x5a, 0x8d, 0xb2, 0x62, 0x6a, - 0xa2, 0x69, 0x19, 0xd4, 0x20, 0xbf, 0xe4, 0x56, 0x22, 0xb7, 0x12, 0x0f, 0x59, 0xc5, 0x52, 0x55, - 0x8d, 0x3e, 0x68, 0x94, 0x44, 0xd5, 0xa8, 0xa7, 0xab, 0x46, 0xd5, 0x48, 0x33, 0xbb, 0x52, 0xa3, - 0xc2, 0x56, 0x6c, 0xc1, 0x9e, 0x38, 0x5e, 0xec, 0x6c, 0xd5, 0x30, 0xaa, 0x35, 0x48, 0x2b, 0xa6, - 0x96, 0x56, 0x74, 0xdd, 0xa0, 0x0a, 0xd5, 0x0c, 0xdd, 0x76, 0xa5, 0x3f, 0x77, 0xa5, 0x2d, 0x0c, - 0xa8, 0x9b, 0x74, 0xc7, 0x15, 0xce, 0xf5, 0x23, 0x60, 0x94, 0xfe, 0x08, 0x2a, 0x75, 0xb5, 0x2f, - 0xf6, 0xd3, 0xa6, 0x3b, 0x26, 0x78, 0xe7, 0xc6, 0x3a, 0x95, 0xc1, 0xb2, 0x0c, 0xab, 0xe5, 0x53, - 0xa7, 0xcc, 0x30, 0xdb, 0x1d, 0x9e, 0xee, 0x14, 0xb6, 0x63, 0x26, 0x3b, 0x45, 0x5b, 0x60, 0x83, - 0xbe, 0xd5, 0x65, 0x9e, 0xe8, 0xd2, 0xd1, 0x60, 0x5b, 0xee, 0xd0, 0x48, 0x7e, 0x8a, 0xf0, 0xf8, - 0xb2, 0x05, 0x0a, 0x05, 0x09, 0xfe, 0xd4, 0x00, 0x9b, 0x92, 0x5b, 0x38, 0x54, 0x07, 0xaa, 0x94, - 0x15, 0xaa, 0x44, 0x51, 0x02, 0xcd, 0x44, 0x16, 0xce, 0x89, 0x9d, 0x41, 0xca, 0xb3, 0x7b, 0xe0, - 0x56, 0xb7, 0x81, 0x2a, 0xc5, 0x1d, 0x13, 0xa4, 0x96, 0x11, 0x29, 0xe2, 0x80, 0x6d, 0x82, 0x1a, - 0xf5, 0x31, 0xe3, 0xb4, 0xd8, 0x27, 0xc2, 0x22, 0x07, 0x2a, 0x98, 0xa0, 0x3a, 0x40, 0x4b, 0x93, - 0xff, 0xda, 0x1d, 0x73, 0xec, 0xc5, 0xaa, 0x2a, 0x3b, 0xbf, 0x12, 0x43, 0x5b, 0x0c, 0xbf, 0xb8, - 0x19, 0xe4, 0x07, 0x27, 0x7f, 0x44, 0x78, 0xc2, 0xf3, 0xd9, 0x36, 0x0d, 0xdd, 0x06, 0xf2, 0x9b, - 0x43, 0x4e, 0x27, 0x7a, 0x3a, 0x9d, 0x03, 0xda, 0xc3, 0xe3, 0x3c, 0x9e, 0xb4, 0x77, 0x6c, 0x0a, - 0x75, 0xb9, 0x05, 0xe2, 0x67, 0x20, 0x17, 0xba, 0x40, 0x0a, 0x4c, 0xeb, 0x30, 0xd4, 0x04, 0x37, - 0xbf, 0xed, 0x01, 0xde, 0xeb, 0xb8, 0x82, 0xb9, 0xbe, 0x57, 0x90, 0x03, 0x3a, 0x04, 0xff, 0x6f, - 0x11, 0x9e, 0x90, 0xc0, 0xac, 0x29, 0x6a, 0x2b, 0x68, 0xbf, 0x3d, 0xc4, 0xff, 0x7c, 0x4f, 0xfe, - 0xae, 0x59, 0x8f, 0x3b, 0xd8, 0xec, 0x70, 0x79, 0xbe, 0xaf, 0xcb, 0x2e, 0x52, 0x1f, 0xb7, 0x49, - 0x1a, 0x0b, 0x16, 0xd8, 0x46, 0xc3, 0x52, 0x41, 0xde, 0x02, 0xcb, 0xd6, 0x0c, 0x9d, 0xdd, 0x6d, - 0x78, 0x29, 0xf0, 0x66, 0x0f, 0x21, 0x69, 0xd2, 0x93, 0xde, 0xe7, 0xc2, 0x76, 0x9e, 0x27, 0xf1, - 0x64, 0x8b, 0x26, 0x8f, 0x73, 0xf2, 0x3f, 0x08, 0xe3, 0x1c, 0x50, 0x8f, 0xf6, 0x59, 0x1c, 0xd6, - 0x95, 0x3a, 0xd8, 0xa6, 0xa2, 0x02, 0xe3, 0x1d, 0x96, 0xde, 0x6d, 0x10, 0x82, 0x03, 0xce, 0x82, - 0x51, 0x0a, 0x4b, 0xec, 0x99, 0xc8, 0xd8, 0x39, 0x91, 0x81, 0xc9, 0x15, 0xc3, 0xaa, 0x2b, 0x94, - 0xb9, 0x33, 0xb1, 0x70, 0x75, 0x90, 0x20, 0x79, 0x7e, 0xac, 0x32, 0xcb, 0x65, 0xa3, 0x0c, 0xd2, - 0x84, 0xd5, 0xb1, 0x97, 0xfc, 0x5f, 0x10, 0x47, 0xda, 0x34, 0x49, 0x1e, 0x47, 0x54, 0x96, 0xab, - 0xec, 0x38, 0xf7, 0x7a, 0xc5, 0x01, 0x8b, 0xc2, 0xe5, 0x29, 0x61, 0x0e, 0xe1, 0x1c, 0x41, 0x24, - 0x3c, 0x66, 0xf1, 0x5b, 0xe1, 0x88, 0xfe, 0x01, 0xcb, 0xac, 0x33, 0x63, 0xa4, 0x88, 0x0b, 0xc2, - 0x30, 0x7b, 0x45, 0x29, 0xf0, 0x81, 0x28, 0x75, 0xd4, 0xdb, 0xe8, 0x71, 0xd4, 0xdb, 0x89, 0x63, - 0xa9, 0xb7, 0xe0, 0xb1, 0xd5, 0x1b, 0xd9, 0xc0, 0x41, 0x9b, 0x2a, 0xb4, 0x61, 0x47, 0xff, 0xfb, - 0x6f, 0x94, 0xf0, 0xcf, 0x44, 0x16, 0x52, 0x7d, 0x61, 0x0b, 0xcc, 0x80, 0xbb, 0xbb, 0xe4, 0x7f, - 0xba, 0x8b, 0x24, 0x17, 0x83, 0xac, 0xe1, 0x93, 0x16, 0x54, 0xc0, 0xb2, 0x34, 0xbd, 0x2a, 0xf3, - 0xff, 0x11, 0x3b, 0x1a, 0x62, 0xb0, 0x67, 0xdf, 0x53, 0xa8, 0x15, 0xc6, 0x54, 0x68, 0x99, 0xf1, - 0x7d, 0x9b, 0xdc, 0xc7, 0xd1, 0x32, 0xd4, 0x80, 0x42, 0x59, 0xe6, 0x32, 0x28, 0xb7, 0x10, 0xc3, - 0x03, 0x20, 0x4e, 0xb9, 0xd6, 0x92, 0x6b, 0xec, 0xe1, 0xfe, 0x1e, 0x4f, 0x97, 0x35, 0x5b, 0x29, - 0xd5, 0x7a, 0x01, 0xe3, 0x01, 0x80, 0xcf, 0x78, 0xe6, 0x5d, 0xc8, 0x6d, 0x25, 0xbd, 0x1e, 0x08, - 0x21, 0xc1, 0x97, 0xfc, 0x3f, 0xc2, 0x91, 0x0d, 0xcd, 0x1e, 0xb0, 0x8c, 0x7f, 0x85, 0xc7, 0x6a, - 0x4a, 0x09, 0x6a, 0x72, 0x45, 0xab, 0x51, 0xb0, 0xdc, 0x72, 0x8e, 0xb0, 0xbd, 0x55, 0xb6, 0x45, - 0xce, 0xe1, 0x71, 0x0b, 0x4c, 0xc3, 0xa2, 0x72, 0x45, 0x83, 0x5a, 0xd9, 0x8e, 0xfa, 0x13, 0xfe, - 0x99, 0xb0, 0x34, 0xc6, 0x37, 0x57, 0xd9, 0x1e, 0x99, 0xc7, 0xa7, 0x5c, 0x25, 0x1e, 0x14, 0x4f, - 0x37, 0xc0, 0x74, 0x09, 0x97, 0xf1, 0x10, 0x72, 0x8b, 0xe4, 0x7e, 0x10, 0x0b, 0xdc, 0x4f, 0x5e, - 0xcc, 0x6b, 0x14, 0xea, 0x64, 0x0a, 0x07, 0x29, 0xe8, 0x8a, 0x4e, 0x59, 0xb6, 0x85, 0x25, 0x77, - 0x75, 0x84, 0x5e, 0x24, 0x60, 0x7f, 0x43, 0x2b, 0xf3, 0x76, 0x28, 0x39, 0x8f, 0x24, 0x81, 0x23, - 0x65, 0xb0, 0x55, 0x4b, 0x63, 0xff, 0xd1, 0xd1, 0x08, 0x67, 0xda, 0xb6, 0x45, 0x62, 0x38, 0xe4, - 0x5d, 0x73, 0x74, 0x2c, 0x81, 0x66, 0x42, 0x52, 0x6b, 0x4d, 0x36, 0x71, 0x90, 0x5d, 0x0a, 0xa7, - 0x14, 0x59, 0xb8, 0xd1, 0x37, 0x61, 0xbb, 0xc9, 0x89, 0x1b, 0xcc, 0x3e, 0xab, 0x53, 0x6b, 0x47, - 0x72, 0xc1, 0x48, 0x19, 0x47, 0xda, 0x26, 0x29, 0x37, 0x15, 0x96, 0x86, 0xc7, 0xce, 0xbc, 0x03, - 0xe1, 0x07, 0xb4, 0xc3, 0x92, 0xeb, 0x18, 0x1b, 0xdb, 0x3a, 0x58, 0xb2, 0x33, 0xa4, 0x44, 0xc3, - 0xac, 0x90, 0x63, 0x5d, 0x87, 0xdc, 0xd7, 0x60, 0xdb, 0xcb, 0xb6, 0x30, 0xd3, 0x76, 0x76, 0x3a, - 0x9a, 0xd1, 0xf8, 0x71, 0x34, 0xa3, 0x89, 0x8f, 0x6a, 0x46, 0x39, 0x1c, 0xaa, 0x02, 0x65, 0xbd, - 0xc4, 0x6d, 0x6b, 0x43, 0x35, 0x24, 0xe9, 0x44, 0x95, 0x2f, 0xc8, 0x3d, 0x8c, 0xdd, 0x4c, 0xb5, - 0x81, 0xba, 0xdd, 0xe2, 0x28, 0x4d, 0x28, 0xcc, 0x51, 0x0a, 0x40, 0x63, 0xd7, 0x71, 0xa4, 0x2d, - 0xc4, 0x4e, 0x06, 0x3e, 0x84, 0x1d, 0x37, 0x5b, 0x9d, 0x47, 0x72, 0x0a, 0x8f, 0x6e, 0x29, 0xb5, - 0x86, 0x97, 0xa8, 0x7c, 0xb1, 0xe8, 0xbb, 0x86, 0x62, 0x37, 0xb1, 0xd0, 0x1d, 0xc1, 0x61, 0xec, - 0xd7, 0x03, 0xa1, 0x51, 0x21, 0x98, 0xfc, 0x2b, 0xc2, 0x63, 0xed, 0x99, 0x41, 0x72, 0x78, 0x54, - 0xa3, 0x50, 0xb7, 0xa3, 0xbc, 0xc9, 0x5e, 0x1a, 0x3a, 0xaf, 0x24, 0x6e, 0x4f, 0xe6, 0x71, 0x90, - 0xcf, 0xd5, 0x51, 0x1f, 0x43, 0x8a, 0x76, 0x21, 0x65, 0x1d, 0x21, 0xbb, 0x60, 0x57, 0x2f, 0xf9, - 0x10, 0x8f, 0xaf, 0xb0, 0x5e, 0x78, 0xf4, 0x71, 0x62, 0x06, 0x0b, 0x15, 0x45, 0xab, 0xc9, 0x5a, - 0xa5, 0xd5, 0x33, 0x59, 0x3d, 0x87, 0xa4, 0x09, 0x67, 0x7f, 0xad, 0xe2, 0xf5, 0xc2, 0xd9, 0xef, - 0x11, 0x3e, 0xdd, 0x73, 0x82, 0x20, 0x31, 0x3c, 0x95, 0xcb, 0x16, 0x65, 0xa9, 0x70, 0x57, 0x5e, - 0xcd, 0x4b, 0xb7, 0x33, 0x45, 0x79, 0x25, 0xbb, 0x9a, 0xd9, 0xdc, 0x28, 0x0a, 0x23, 0xe4, 0x17, - 0x78, 0xba, 0x4b, 0xb6, 0x9a, 0x97, 0xe4, 0x65, 0x29, 0x9b, 0x29, 0x66, 0x05, 0x44, 0xe2, 0x38, - 0xd6, 0x43, 0x2c, 0x65, 0xef, 0x6e, 0x64, 0x96, 0xb3, 0x82, 0x8f, 0x4c, 0xe3, 0xd3, 0x5d, 0xf2, - 0x42, 0x31, 0x53, 0xdc, 0x2c, 0x08, 0x7e, 0x72, 0x06, 0xff, 0xac, 0x4b, 0x24, 0x65, 0x33, 0x2b, - 0x42, 0x80, 0x9c, 0xc7, 0x89, 0x43, 0x82, 0xd5, 0xac, 0x24, 0xad, 0xdd, 0xc9, 0xc9, 0xf9, 0xa5, - 0xf5, 0xec, 0x72, 0xb1, 0x20, 0x8c, 0xf6, 0xd0, 0x5a, 0x92, 0xf2, 0xbf, 0xcb, 0xde, 0xe1, 0xca, - 0xd9, 0x3b, 0xcb, 0xd9, 0x82, 0x10, 0x5c, 0xf8, 0x2e, 0x8c, 0xfd, 0x99, 0xbb, 0x6b, 0xe4, 0x0d, - 0xc2, 0x41, 0x3e, 0xd1, 0x90, 0x21, 0x47, 0x9f, 0x58, 0x7a, 0x60, 0x7d, 0x77, 0x44, 0xdc, 0x6d, - 0x3e, 0x8b, 0x5e, 0xa9, 0xfc, 0xfa, 0x91, 0x9a, 0xb2, 0x35, 0x0a, 0xa9, 0xba, 0xa2, 0x2b, 0x55, - 0xa8, 0x83, 0x4e, 0x53, 0x25, 0xc5, 0xd6, 0xd4, 0x54, 0xc3, 0x06, 0xcb, 0x79, 0xd5, 0x4b, 0x69, - 0x46, 0xaa, 0x0a, 0x3a, 0x58, 0x4a, 0x2d, 0xb5, 0x6d, 0x69, 0x14, 0x9e, 0x7c, 0xf5, 0xcd, 0x3f, - 0x7c, 0xb7, 0x92, 0x8b, 0xee, 0x8b, 0x6a, 0xba, 0x15, 0x79, 0x3b, 0xfd, 0xd8, 0x6b, 0x0d, 0x62, - 0x6b, 0x73, 0xf7, 0xf0, 0x2b, 0x9f, 0xbd, 0x88, 0x66, 0xc9, 0x2b, 0x84, 0xfd, 0x39, 0xa0, 0xe4, - 0xe2, 0x60, 0xf3, 0x24, 0x27, 0x39, 0x37, 0xcc, 0xf0, 0x99, 0xfc, 0xf3, 0xf3, 0xcf, 0x7c, 0xa8, - 0xf9, 0x2c, 0x7a, 0xf5, 0x03, 0x2c, 0xeb, 0x86, 0xae, 0x51, 0xe3, 0x10, 0x51, 0x0b, 0x94, 0x32, - 0xe3, 0xb9, 0x48, 0xae, 0xf5, 0xe2, 0xf9, 0x41, 0x7a, 0x5c, 0xbc, 0x4b, 0xbe, 0x46, 0x38, 0xe0, - 0x54, 0x21, 0x99, 0x1b, 0xb0, 0x58, 0x39, 0xc9, 0xd4, 0x50, 0xa5, 0x9d, 0xdc, 0x3e, 0x06, 0x96, - 0x97, 0xc9, 0xa5, 0xa1, 0x59, 0x92, 0x1f, 0x10, 0x3e, 0xe1, 0x0e, 0xcb, 0x64, 0xd8, 0xb1, 0x3a, - 0x36, 0x3f, 0xb8, 0x81, 0xcb, 0xf3, 0x6f, 0xe8, 0xa3, 0x12, 0x36, 0x1f, 0x5b, 0x3f, 0x7a, 0xc2, - 0x76, 0xe9, 0xed, 0x3a, 0x09, 0xfc, 0x39, 0xc2, 0x41, 0xde, 0x16, 0x07, 0xa8, 0xd5, 0x8e, 0xfe, - 0x19, 0x9b, 0x12, 0xf9, 0xf7, 0x15, 0xd1, 0xfb, 0xbe, 0x22, 0x66, 0xeb, 0x26, 0xdd, 0x49, 0x3e, - 0xfe, 0x28, 0x86, 0x37, 0x66, 0x8f, 0x9c, 0xaa, 0x8b, 0x68, 0x36, 0xf6, 0xe0, 0xe9, 0x1e, 0xf2, - 0x7d, 0xb9, 0x87, 0x2e, 0xf4, 0xe3, 0xc2, 0xff, 0x32, 0x5f, 0xee, 0x21, 0xd4, 0xdc, 0x43, 0x73, - 0xc3, 0xfc, 0xcd, 0x3e, 0xf9, 0x22, 0xea, 0x13, 0xd0, 0xd2, 0x3f, 0xd1, 0x8b, 0x9b, 0xa3, 0xcb, - 0xd2, 0xe6, 0xca, 0xc6, 0xfe, 0xeb, 0xf8, 0xc8, 0xcb, 0xd7, 0xf1, 0x91, 0xb7, 0xaf, 0xe3, 0xe8, - 0x2f, 0xcd, 0x38, 0xfa, 0xa4, 0x19, 0x47, 0xcf, 0x9b, 0x71, 0xb4, 0xdf, 0x8c, 0xa3, 0x57, 0xcd, - 0x38, 0x7a, 0xd3, 0x8c, 0x8f, 0xbc, 0x6d, 0xc6, 0xd1, 0xdf, 0x0f, 0xe2, 0x23, 0x4f, 0x0f, 0xe2, - 0x68, 0xff, 0x20, 0x3e, 0xf2, 0xf2, 0x20, 0x3e, 0xf2, 0x87, 0xcd, 0xaa, 0x61, 0x3e, 0xac, 0x8a, - 0x5b, 0x86, 0x33, 0xd6, 0x5a, 0x8a, 0xd8, 0xb0, 0xd3, 0xec, 0xc1, 0x79, 0xd3, 0x4b, 0x99, 0x96, - 0xb1, 0xa5, 0x95, 0xc1, 0x4a, 0x79, 0xe2, 0xb4, 0x59, 0xaa, 0x1a, 0x69, 0x78, 0x44, 0xdd, 0xef, - 0x3b, 0xef, 0xfb, 0x16, 0x55, 0x0a, 0xb2, 0x80, 0x5c, 0xfe, 0x29, 0x00, 0x00, 0xff, 0xff, 0x2d, - 0xe7, 0x27, 0xa3, 0xa4, 0x13, 0x00, 0x00, + // 1644 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x23, 0x49, + 0x15, 0x4e, 0xd9, 0x8e, 0xc7, 0x2e, 0xe7, 0xa7, 0xb7, 0xd8, 0xcd, 0x3a, 0x66, 0x30, 0xc6, 0xbb, + 0x5a, 0x45, 0xd9, 0xb8, 0x9d, 0xcd, 0x02, 0xda, 0x8d, 0xd8, 0x59, 0x9c, 0xc4, 0xb1, 0x12, 0x32, + 0xe3, 0xd9, 0xb6, 0x33, 0x20, 0x84, 0xd4, 0x6a, 0x77, 0x3f, 0x7b, 0x9a, 0xb1, 0xbb, 0x9b, 0xae, + 0xb2, 0xb3, 0x11, 0x8a, 0x84, 0x96, 0x03, 0x42, 0xe2, 0x80, 0xc4, 0x01, 0x09, 0x01, 0xbb, 0x48, + 0x8b, 0xc4, 0x11, 0x6e, 0x48, 0xb9, 0xcc, 0x8d, 0xd5, 0x1c, 0x50, 0x04, 0x97, 0x39, 0x32, 0x0e, + 0x48, 0x73, 0x1c, 0xb8, 0x23, 0xa1, 0xae, 0xea, 0xf6, 0xd8, 0x8e, 0x67, 0x6c, 0x87, 0xcc, 0x9e, + 0xdc, 0x55, 0xef, 0xbd, 0xaf, 0xde, 0xfb, 0xea, 0xbd, 0xe7, 0xd7, 0x8d, 0xbf, 0xda, 0x01, 0x2a, + 0x9b, 0x76, 0x9e, 0xea, 0x77, 0xa1, 0xa5, 0xe5, 0xf5, 0xa6, 0xdd, 0x36, 0x54, 0xdd, 0x05, 0x03, + 0x2c, 0x66, 0x6a, 0x4d, 0x9a, 0x77, 0xda, 0xb5, 0xa6, 0xa9, 0xab, 0xba, 0xdb, 0x36, 0x34, 0xc7, + 0x94, 0x1d, 0xd7, 0x66, 0x36, 0xf9, 0xb2, 0xb0, 0x92, 0x85, 0x95, 0x7c, 0xc1, 0x2a, 0x95, 0x6b, + 0x98, 0xec, 0x6e, 0xbb, 0x26, 0xeb, 0x76, 0x2b, 0xdf, 0xb0, 0x1b, 0x76, 0x9e, 0xdb, 0xd5, 0xda, + 0x75, 0xbe, 0xe2, 0x0b, 0xfe, 0x24, 0xf0, 0x52, 0xd7, 0x1b, 0xb6, 0xdd, 0x68, 0x42, 0x5e, 0x73, + 0xcc, 0xbc, 0x66, 0x59, 0x36, 0xd3, 0x98, 0x69, 0x5b, 0xd4, 0x97, 0x7e, 0xd1, 0x97, 0xf6, 0x30, + 0xa0, 0xe5, 0xb0, 0x63, 0x5f, 0xb8, 0x36, 0x2e, 0x00, 0xbb, 0xf6, 0x7d, 0xd0, 0x99, 0xaf, 0xfd, + 0xe6, 0x38, 0x6d, 0x76, 0xec, 0x40, 0x70, 0x6e, 0x6a, 0x50, 0x19, 0x5c, 0xd7, 0x76, 0x7b, 0x3e, + 0x0d, 0xca, 0x6c, 0xa7, 0xdf, 0xe1, 0xe5, 0x41, 0x61, 0x3f, 0x66, 0x76, 0x50, 0xd4, 0x01, 0x0a, + 0x56, 0x67, 0xc8, 0x3c, 0x33, 0xa4, 0x63, 0xc2, 0x91, 0x3a, 0xa0, 0x91, 0xfd, 0x13, 0xc2, 0xf3, + 0xdb, 0x2e, 0x68, 0x0c, 0x14, 0xf8, 0x41, 0x1b, 0x28, 0x23, 0xef, 0xe3, 0x58, 0x0b, 0x98, 0x66, + 0x68, 0x4c, 0x4b, 0xa2, 0x0c, 0x5a, 0x49, 0x6c, 0xbc, 0x26, 0x0f, 0x5e, 0x52, 0x99, 0xf3, 0x20, + 0xac, 0x6e, 0x02, 0xd3, 0xaa, 0xc7, 0x0e, 0x28, 0x3d, 0x23, 0x52, 0xc5, 0x11, 0xea, 0x80, 0x9e, + 0x0c, 0x71, 0xe3, 0xbc, 0x3c, 0xe6, 0x86, 0x65, 0x01, 0x54, 0x71, 0x40, 0xf7, 0x80, 0xb6, 0x16, + 0x7f, 0x75, 0x32, 0xe7, 0xd9, 0xcb, 0x0d, 0x5d, 0xf5, 0x7e, 0x15, 0x8e, 0xb6, 0x19, 0x7f, 0x70, + 0x23, 0x2a, 0x0e, 0xce, 0xfe, 0x17, 0xe1, 0x85, 0xc0, 0x67, 0xea, 0xd8, 0x16, 0x05, 0xf2, 0x8d, + 0x0b, 0x4e, 0x67, 0x46, 0x3a, 0x5d, 0x02, 0x36, 0xc2, 0xe3, 0x32, 0x5e, 0xa4, 0xc7, 0x94, 0x41, + 0x4b, 0xed, 0x81, 0x84, 0x39, 0xc8, 0x1b, 0x43, 0x20, 0x15, 0xae, 0x75, 0x11, 0x6a, 0x41, 0x98, + 0xdf, 0x0c, 0x00, 0x3f, 0x18, 0xa0, 0x60, 0x6d, 0x2c, 0x05, 0x25, 0x60, 0x53, 0xc4, 0xff, 0x2f, + 0x84, 0x17, 0x14, 0x70, 0x9a, 0x9a, 0xde, 0xbb, 0xb4, 0x6f, 0x5e, 0x88, 0xff, 0xf5, 0x91, 0xf1, + 0xfb, 0x66, 0x23, 0x38, 0x38, 0x1c, 0x70, 0x79, 0x7d, 0xac, 0xcb, 0x3e, 0xd2, 0x18, 0xb7, 0x49, + 0x1e, 0x4b, 0x2e, 0x50, 0xbb, 0xed, 0xea, 0xa0, 0x76, 0xc0, 0xa5, 0xa6, 0x6d, 0x71, 0x6e, 0xe3, + 0x5b, 0x91, 0xc7, 0xa7, 0x08, 0x29, 0x8b, 0x81, 0xf4, 0x8e, 0x10, 0xf6, 0xc7, 0xf9, 0x12, 0x5e, + 0xec, 0x85, 0x29, 0xee, 0x39, 0xfb, 0x31, 0xc2, 0xb8, 0x04, 0x2c, 0x08, 0xfb, 0x3a, 0x8e, 0x5b, + 0x5a, 0x0b, 0xa8, 0xa3, 0xe9, 0xc0, 0xe3, 0x8e, 0x2b, 0x4f, 0x37, 0x08, 0xc1, 0x11, 0x6f, 0xc1, + 0x43, 0x8a, 0x2b, 0xfc, 0x99, 0xa8, 0xd8, 0x3b, 0x91, 0x83, 0xa9, 0x75, 0xdb, 0x6d, 0x69, 0x8c, + 0xbb, 0xb3, 0xb0, 0xf1, 0xf5, 0x49, 0x2e, 0x29, 0xf0, 0x63, 0x97, 0x5b, 0x6e, 0xdb, 0x06, 0x28, + 0x0b, 0xee, 0xc0, 0x5e, 0xf6, 0x77, 0x51, 0x9c, 0xe8, 0xd3, 0x24, 0x65, 0x9c, 0xd0, 0x79, 0xae, + 0xf2, 0xe3, 0x7c, 0x7a, 0xe5, 0x09, 0x8b, 0xc2, 0x8f, 0x53, 0xc1, 0x02, 0xc2, 0x3b, 0x82, 0x28, + 0x78, 0xce, 0x15, 0xac, 0x08, 0xc4, 0xf0, 0x84, 0x65, 0x36, 0x98, 0x31, 0x4a, 0xc2, 0x07, 0xe1, + 0x98, 0xa3, 0x6e, 0x29, 0xf2, 0x9c, 0x5b, 0x1a, 0xa8, 0xb7, 0xd9, 0xab, 0xa8, 0xb7, 0x6b, 0x57, + 0x52, 0x6f, 0xd1, 0x2b, 0xab, 0x37, 0x72, 0x80, 0xa3, 0x94, 0x69, 0xac, 0x4d, 0x93, 0x9f, 0xfc, + 0x1a, 0x65, 0xc2, 0x2b, 0x89, 0x8d, 0xdc, 0x58, 0xd8, 0x0a, 0x37, 0x10, 0xee, 0x6e, 0x85, 0xef, + 0x9f, 0x20, 0xc5, 0xc7, 0x20, 0x7b, 0xf8, 0x25, 0x17, 0xea, 0xe0, 0xba, 0xa6, 0xd5, 0x50, 0xc5, + 0xff, 0x08, 0x4d, 0xc6, 0x38, 0xec, 0xf5, 0x67, 0x14, 0x6a, 0x9d, 0x47, 0x2a, 0xf5, 0xcc, 0xc4, + 0x3e, 0x25, 0x77, 0x70, 0xd2, 0x80, 0x26, 0x30, 0x30, 0x54, 0x21, 0x03, 0xa3, 0x87, 0x18, 0x9f, + 0x00, 0x71, 0xc9, 0xb7, 0x56, 0x7c, 0xe3, 0x00, 0xf7, 0x3b, 0x78, 0xd9, 0x30, 0xa9, 0x56, 0x6b, + 0x8e, 0x02, 0xc6, 0x13, 0x00, 0xbf, 0x1a, 0x98, 0x0f, 0x21, 0xf7, 0x95, 0xf4, 0x7e, 0x24, 0x86, + 0xa4, 0x50, 0xf6, 0xf7, 0x08, 0x27, 0x0e, 0x4c, 0x3a, 0x61, 0x19, 0x7f, 0x05, 0xcf, 0x35, 0xb5, + 0x1a, 0x34, 0xd5, 0xba, 0xd9, 0x64, 0xe0, 0xfa, 0xe5, 0x9c, 0xe0, 0x7b, 0xbb, 0x7c, 0x8b, 0xbc, + 0x86, 0xe7, 0x5d, 0x70, 0x6c, 0x97, 0xa9, 0x75, 0x13, 0x9a, 0x06, 0x4d, 0x86, 0x33, 0xe1, 0x95, + 0xb8, 0x32, 0x27, 0x36, 0x77, 0xf9, 0x1e, 0x59, 0xc7, 0x2f, 0xfb, 0x4a, 0xe2, 0x52, 0x02, 0xdd, + 0x08, 0xd7, 0x25, 0x42, 0x26, 0xae, 0x50, 0x58, 0x64, 0xcf, 0xa2, 0x58, 0x12, 0x7e, 0x8a, 0x62, + 0xde, 0x63, 0xd0, 0x22, 0x4b, 0x38, 0xca, 0xc0, 0xd2, 0x2c, 0xc6, 0xb3, 0x2d, 0xae, 0xf8, 0xab, + 0x4b, 0xf4, 0x22, 0x09, 0x87, 0xdb, 0xa6, 0x21, 0xda, 0xa1, 0xe2, 0x3d, 0x92, 0x0c, 0x4e, 0x18, + 0x40, 0x75, 0xd7, 0xe4, 0xff, 0xd1, 0xc9, 0x84, 0x88, 0xb4, 0x6f, 0x8b, 0xa4, 0x70, 0x2c, 0xa0, + 0x39, 0x39, 0x97, 0x41, 0x2b, 0x31, 0xa5, 0xb7, 0x26, 0x87, 0x38, 0xca, 0x49, 0x11, 0x21, 0x25, + 0x36, 0xde, 0x1b, 0x9b, 0xb0, 0xc3, 0xc1, 0xc9, 0x07, 0xdc, 0xbe, 0x68, 0x31, 0xf7, 0x58, 0xf1, + 0xc1, 0x88, 0x81, 0x13, 0x7d, 0x93, 0x94, 0x9f, 0x0a, 0x5b, 0xd3, 0x63, 0x17, 0x9e, 0x82, 0x88, + 0x03, 0xfa, 0x61, 0xc9, 0xbb, 0x18, 0xdb, 0x47, 0x16, 0xb8, 0xaa, 0x37, 0xa4, 0x24, 0xe3, 0xbc, + 0x90, 0x53, 0x43, 0x87, 0xdc, 0x31, 0xe1, 0x28, 0xc8, 0xb6, 0x38, 0xd7, 0xf6, 0x76, 0x06, 0x9a, + 0xd1, 0xfc, 0x55, 0x34, 0xa3, 0x85, 0xff, 0xab, 0x19, 0x95, 0x70, 0xac, 0x01, 0x8c, 0xf7, 0x12, + 0xbf, 0xad, 0x4d, 0xd5, 0x90, 0x94, 0x6b, 0x0d, 0xb1, 0x20, 0x1f, 0x60, 0xec, 0x67, 0x2a, 0x05, + 0xe6, 0x77, 0x8b, 0xcb, 0x34, 0xa1, 0xb8, 0x40, 0xa9, 0x00, 0x4b, 0xbd, 0x8b, 0x13, 0x7d, 0x57, + 0xec, 0x65, 0xe0, 0x3d, 0x38, 0xf6, 0xb3, 0xd5, 0x7b, 0x24, 0x2f, 0xe3, 0xd9, 0x8e, 0xd6, 0x6c, + 0x07, 0x89, 0x2a, 0x16, 0x9b, 0xa1, 0x77, 0x50, 0xea, 0x06, 0x96, 0x86, 0x6f, 0x70, 0x1a, 0xfb, + 0xfd, 0x48, 0x6c, 0x56, 0x8a, 0x66, 0x7f, 0x8a, 0xf0, 0x5c, 0x7f, 0x66, 0x90, 0x12, 0x9e, 0x35, + 0x19, 0xb4, 0x68, 0x52, 0x34, 0xd9, 0xb7, 0xa6, 0xce, 0x2b, 0x45, 0xd8, 0x93, 0x75, 0x1c, 0x15, + 0x73, 0x75, 0x32, 0xc4, 0x91, 0x92, 0x43, 0x48, 0x45, 0x4f, 0xc8, 0x09, 0xf6, 0xf5, 0xb2, 0xf7, + 0xf0, 0xfc, 0x0e, 0xef, 0x85, 0x97, 0x1f, 0x27, 0x56, 0xb0, 0x54, 0xd7, 0xcc, 0xa6, 0x6a, 0xd6, + 0x7b, 0x3d, 0x93, 0xd7, 0x73, 0x4c, 0x59, 0xf0, 0xf6, 0xf7, 0xea, 0x41, 0x2f, 0x5c, 0xfd, 0x0f, + 0xc2, 0xaf, 0x8c, 0x9c, 0x20, 0x48, 0x0a, 0x2f, 0x95, 0x8a, 0x55, 0x55, 0xa9, 0xdc, 0x56, 0x77, + 0xcb, 0xca, 0xcd, 0x42, 0x55, 0xdd, 0x29, 0xee, 0x16, 0x0e, 0x0f, 0xaa, 0xd2, 0x0c, 0xf9, 0x12, + 0x5e, 0x1e, 0x92, 0xed, 0x96, 0x15, 0x75, 0x5b, 0x29, 0x16, 0xaa, 0x45, 0x09, 0x91, 0x34, 0x4e, + 0x8d, 0x10, 0x2b, 0xc5, 0xdb, 0x07, 0x85, 0xed, 0xa2, 0x14, 0x22, 0xcb, 0xf8, 0x95, 0x21, 0x79, + 0xa5, 0x5a, 0xa8, 0x1e, 0x56, 0xa4, 0x30, 0x79, 0x15, 0x7f, 0x61, 0x48, 0xa4, 0x14, 0x0b, 0x3b, + 0x52, 0x84, 0xbc, 0x8e, 0x33, 0x17, 0x04, 0xbb, 0x45, 0x45, 0xd9, 0xbb, 0x55, 0x52, 0xcb, 0x5b, + 0xfb, 0xc5, 0xed, 0x6a, 0x45, 0x9a, 0x1d, 0xa1, 0xb5, 0xa5, 0x94, 0xbf, 0x55, 0xbc, 0x25, 0x94, + 0x8b, 0xb7, 0xb6, 0x8b, 0x15, 0x29, 0xba, 0xf1, 0x69, 0x02, 0x87, 0x0b, 0xb7, 0xf7, 0xc8, 0xcf, + 0x42, 0x38, 0x2a, 0x26, 0x1a, 0x32, 0xe5, 0xe8, 0x93, 0xca, 0x4f, 0xac, 0xef, 0x8f, 0x88, 0x9f, + 0xa0, 0xee, 0x5f, 0x92, 0xdf, 0xae, 0x7f, 0xed, 0x43, 0x3d, 0x47, 0x4d, 0x06, 0xb9, 0x96, 0x66, + 0x69, 0x0d, 0x68, 0x81, 0xc5, 0x72, 0x35, 0x8d, 0x9a, 0x7a, 0xae, 0x4d, 0xc1, 0x5d, 0x1b, 0x29, + 0xa7, 0x4c, 0xb3, 0x0c, 0xcd, 0x35, 0x84, 0x4a, 0x07, 0x68, 0xce, 0xb4, 0x73, 0x0d, 0xb0, 0xc0, + 0xd5, 0x9a, 0xb9, 0x23, 0xd7, 0x64, 0xf0, 0xd1, 0xdf, 0xff, 0xf9, 0x8b, 0xd0, 0xfb, 0xd9, 0x4d, + 0xff, 0x65, 0x36, 0xdf, 0xcb, 0x0e, 0x9a, 0xff, 0x61, 0xd0, 0x3e, 0xe4, 0xde, 0xe6, 0xc9, 0xc5, + 0xd7, 0x42, 0xba, 0x89, 0x56, 0xc9, 0x4f, 0x42, 0x38, 0x5c, 0x02, 0x46, 0xde, 0x9c, 0x6c, 0xe6, + 0x14, 0x44, 0xac, 0x4d, 0x33, 0xa0, 0x66, 0x3f, 0x45, 0x9f, 0xfd, 0x39, 0xe4, 0x31, 0xf1, 0xbd, + 0xe7, 0x30, 0xd1, 0xb2, 0x2d, 0x93, 0xd9, 0xe3, 0xc8, 0x08, 0xb4, 0x86, 0xf8, 0x70, 0x41, 0x33, + 0x38, 0x1d, 0x9b, 0xe4, 0x9d, 0x51, 0x74, 0x3c, 0x97, 0x05, 0x21, 0x3e, 0x21, 0x3f, 0x0e, 0xe1, + 0x88, 0x57, 0xd0, 0x64, 0x6d, 0xc2, 0xba, 0x17, 0x5c, 0xe4, 0xa6, 0xea, 0x12, 0xd9, 0xdf, 0x7c, + 0x7e, 0x64, 0xbc, 0x4d, 0xde, 0x9a, 0x9a, 0x0c, 0xf2, 0x71, 0x08, 0x5f, 0xf3, 0xc7, 0x73, 0x32, + 0xed, 0x20, 0x9f, 0x5a, 0x9f, 0xdc, 0xc0, 0xa7, 0xe3, 0x8f, 0x2f, 0xbc, 0x42, 0xca, 0xa9, 0xfd, + 0xcb, 0x57, 0xc8, 0x90, 0xde, 0x89, 0x57, 0x31, 0xff, 0x46, 0x38, 0x2a, 0x7a, 0xf5, 0x04, 0x0d, + 0x64, 0xa0, 0xa9, 0xa7, 0x96, 0x64, 0xf1, 0xd1, 0x47, 0x0e, 0x3e, 0xfa, 0xc8, 0xc5, 0x96, 0xc3, + 0x8e, 0xb3, 0xbf, 0x7d, 0xe1, 0x2c, 0xbc, 0xb7, 0x7a, 0xe9, 0xc2, 0xd8, 0x44, 0xab, 0xa9, 0xbb, + 0xf7, 0x4f, 0x51, 0xe8, 0x6f, 0xa7, 0xe8, 0x8d, 0x71, 0xf1, 0x8a, 0xff, 0xfa, 0x87, 0xa7, 0x08, + 0x75, 0x4f, 0xd1, 0xda, 0x34, 0xf3, 0xc1, 0x47, 0x7f, 0x4d, 0x86, 0x24, 0xb4, 0xf5, 0x4b, 0xf4, + 0xe0, 0xc6, 0xec, 0xb6, 0x72, 0xb8, 0x73, 0x70, 0xf6, 0x28, 0x3d, 0xf3, 0xf0, 0x51, 0x7a, 0xe6, + 0xc9, 0xa3, 0x34, 0xfa, 0x51, 0x37, 0x8d, 0xfe, 0xd0, 0x4d, 0xa3, 0xcf, 0xba, 0x69, 0x74, 0xd6, + 0x4d, 0xa3, 0x7f, 0x74, 0xd3, 0xe8, 0x71, 0x37, 0x3d, 0xf3, 0xa4, 0x9b, 0x46, 0x3f, 0x3f, 0x4f, + 0xcf, 0xdc, 0x3f, 0x4f, 0xa3, 0xb3, 0xf3, 0xf4, 0xcc, 0xc3, 0xf3, 0xf4, 0xcc, 0x77, 0x0f, 0x1b, + 0xb6, 0x73, 0xaf, 0x21, 0x77, 0x6c, 0x6f, 0x1e, 0x77, 0x35, 0xb9, 0x4d, 0xf3, 0xfc, 0xc1, 0x7b, + 0x45, 0xcd, 0x39, 0xae, 0xdd, 0x31, 0x0d, 0x70, 0x73, 0x81, 0x38, 0xef, 0xd4, 0x1a, 0x76, 0x1e, + 0x3e, 0x64, 0xfe, 0x87, 0xa9, 0x67, 0x7d, 0x44, 0xab, 0x45, 0xf9, 0xa5, 0xbd, 0xfd, 0xbf, 0x00, + 0x00, 0x00, 0xff, 0xff, 0xdf, 0x72, 0xcf, 0x83, 0x5d, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/cloud_credentials/public_crudapi.vesapi.go b/pbgo/extschema/schema/cloud_credentials/public_crudapi.vesapi.go index 72279cbf6..9ebdff63f 100644 --- a/pbgo/extschema/schema/cloud_credentials/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/cloud_credentials/public_crudapi.vesapi.go @@ -3169,10 +3169,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3229,10 +3233,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3335,10 +3343,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cloud_link/crudapi/api.vesapi.go b/pbgo/extschema/schema/cloud_link/crudapi/api.vesapi.go index 699756edc..57cced916 100644 --- a/pbgo/extschema/schema/cloud_link/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/cloud_link/crudapi/api.vesapi.go @@ -4306,10 +4306,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cloud_link/object.pb.go b/pbgo/extschema/schema/cloud_link/object.pb.go index 81c288afd..c1fa63459 100644 --- a/pbgo/extschema/schema/cloud_link/object.pb.go +++ b/pbgo/extschema/schema/cloud_link/object.pb.go @@ -1615,179 +1615,180 @@ func init() { } var fileDescriptor_c87a7a97fd6ae754 = []byte{ - // 2748 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcb, 0x6f, 0x1b, 0xc7, - 0x19, 0xf7, 0x8a, 0x94, 0x48, 0x7e, 0x12, 0x45, 0x72, 0x2c, 0x2b, 0x6b, 0xc6, 0xa6, 0x15, 0x26, - 0x71, 0x94, 0x44, 0xa4, 0x6c, 0x47, 0x49, 0x63, 0xa5, 0x4d, 0x21, 0x3e, 0xa2, 0xd0, 0xb0, 0x65, - 0x75, 0x24, 0xdb, 0x48, 0xd1, 0x76, 0x3b, 0xdc, 0x1d, 0xad, 0x36, 0x22, 0x77, 0xb7, 0xb3, 0x4b, - 0x2a, 0x0c, 0x50, 0xa0, 0x40, 0x81, 0x36, 0x05, 0x8a, 0x3e, 0x2e, 0x45, 0x0f, 0x05, 0x8a, 0xe6, - 0xd2, 0xa2, 0xe8, 0x5f, 0xd0, 0x5c, 0x92, 0x00, 0x05, 0x8a, 0x9e, 0x8c, 0x9c, 0x82, 0x9e, 0x12, - 0xb9, 0x87, 0xf6, 0x16, 0xe4, 0xd2, 0x5b, 0x51, 0xcc, 0xcc, 0x2e, 0xb9, 0x7c, 0xd9, 0xae, 0xdd, - 0x8b, 0xb4, 0xfb, 0xbd, 0x76, 0xe6, 0x7b, 0xfc, 0xbe, 0x6f, 0x86, 0xf0, 0x6c, 0x97, 0x7a, 0x65, - 0xcb, 0x59, 0xf7, 0xf4, 0x43, 0xda, 0x26, 0xeb, 0x7a, 0xcb, 0xe9, 0x18, 0x5a, 0xcb, 0xb2, 0x8f, - 0xd6, 0x9d, 0xe6, 0xdb, 0x54, 0xf7, 0xcb, 0x2e, 0x73, 0x7c, 0x07, 0xa9, 0x52, 0xac, 0x2c, 0xc5, - 0xca, 0x03, 0xb1, 0x7c, 0xc9, 0xb4, 0xfc, 0xc3, 0x4e, 0xb3, 0xac, 0x3b, 0xed, 0x75, 0xd3, 0x31, - 0x9d, 0x75, 0xa1, 0xd0, 0xec, 0x1c, 0x88, 0x37, 0xf1, 0x22, 0x9e, 0xa4, 0xa1, 0xfc, 0x33, 0x53, - 0xbf, 0xe7, 0xf7, 0x5c, 0xea, 0x05, 0x52, 0x4f, 0x0e, 0x4b, 0x39, 0xae, 0x6f, 0x39, 0x76, 0xc8, - 0x3c, 0x3b, 0xcc, 0x8c, 0xea, 0x9d, 0x1b, 0x66, 0x75, 0x49, 0xcb, 0x32, 0x88, 0x4f, 0x03, 0x6e, - 0x71, 0x84, 0x4b, 0x3d, 0x6a, 0x77, 0x47, 0x8c, 0xaf, 0x8c, 0xc8, 0x58, 0xf4, 0x58, 0x1b, 0x96, - 0xb8, 0x30, 0x2e, 0xe1, 0x45, 0x17, 0x51, 0xfc, 0xe5, 0x2c, 0xcc, 0xdd, 0x14, 0xce, 0x43, 0x57, - 0x21, 0xd9, 0xa6, 0x3e, 0x31, 0x88, 0x4f, 0x54, 0x65, 0x45, 0x59, 0x9d, 0xbf, 0x72, 0xbe, 0x3c, - 0xec, 0x49, 0x29, 0x78, 0x83, 0xfa, 0x64, 0xbf, 0xe7, 0x52, 0xdc, 0x17, 0x47, 0xd7, 0x21, 0xe3, - 0xf5, 0x3c, 0x9f, 0xb6, 0xb5, 0xbe, 0x85, 0x19, 0x61, 0xe1, 0xe9, 0x11, 0x0b, 0x7b, 0x42, 0x6a, - 0xc4, 0xce, 0xa2, 0xd4, 0xbd, 0x11, 0x5a, 0x7b, 0x05, 0xe2, 0x9e, 0x4b, 0x75, 0x35, 0x26, 0x4c, - 0x14, 0xcb, 0xd3, 0xc2, 0x59, 0xde, 0x73, 0xa9, 0x2e, 0x2c, 0x08, 0xf9, 0xcd, 0xbf, 0xc4, 0xde, - 0xfb, 0xba, 0xf2, 0xf1, 0x47, 0xea, 0x4c, 0x56, 0xf9, 0xe4, 0x23, 0xf5, 0x4f, 0x33, 0x70, 0x15, - 0x62, 0xdb, 0xd4, 0x47, 0x57, 0x0e, 0x5e, 0x7e, 0x47, 0x2f, 0x79, 0x54, 0xef, 0x30, 0xda, 0xa6, - 0xde, 0x61, 0xa9, 0x49, 0x3c, 0x4b, 0x2f, 0xb5, 0x1d, 0xdb, 0xf2, 0x1d, 0xb6, 0xc6, 0xbd, 0x58, - 0xb2, 0x9c, 0x92, 0x4d, 0xfd, 0x63, 0x87, 0x1d, 0x95, 0x18, 0x25, 0x06, 0xbc, 0x06, 0x09, 0x4c, - 0xdd, 0x16, 0xd1, 0x29, 0xba, 0x34, 0x59, 0xbd, 0xe3, 0xd1, 0x71, 0xdd, 0x63, 0x66, 0xf9, 0x14, - 0x36, 0x61, 0xae, 0xca, 0x28, 0xf1, 0x1f, 0x51, 0xb7, 0x46, 0x5b, 0xf4, 0x11, 0x75, 0xe3, 0xd7, - 0x2d, 0xef, 0x91, 0x36, 0xfc, 0xf7, 0x8f, 0xd4, 0x1f, 0x29, 0xf0, 0x43, 0x05, 0x1a, 0xdc, 0x95, - 0x65, 0x53, 0xd7, 0xc4, 0x7f, 0xe9, 0x6c, 0x97, 0x39, 0x5d, 0xcb, 0xa0, 0xac, 0x4c, 0x8e, 0xbd, - 0x88, 0xff, 0x35, 0x9e, 0x48, 0xe5, 0x66, 0xcf, 0xd1, 0xcb, 0xba, 0x63, 0xdb, 0x54, 0x97, 0x99, - 0x47, 0x3a, 0xfe, 0xa1, 0x76, 0x44, 0x7b, 0xe8, 0x95, 0xe0, 0x3b, 0x42, 0xa3, 0xc4, 0x35, 0x4a, - 0xdc, 0x68, 0xc9, 0xd4, 0xe5, 0x7f, 0x72, 0xec, 0x95, 0xb8, 0x76, 0xa9, 0x69, 0xba, 0x25, 0xae, - 0x55, 0xf2, 0x9d, 0x23, 0x6a, 0x17, 0x6f, 0x40, 0x32, 0x8c, 0x2c, 0xda, 0x82, 0x44, 0xb0, 0x96, - 0x20, 0xa3, 0x56, 0xa7, 0xa7, 0xc3, 0x76, 0xcb, 0x69, 0x92, 0x56, 0x3f, 0x29, 0xe6, 0x4c, 0x9d, - 0x3f, 0x17, 0xff, 0x1d, 0x83, 0x85, 0x3d, 0x9f, 0xf8, 0x1d, 0xef, 0xa1, 0x13, 0x5d, 0x8a, 0x4f, - 0x4c, 0xf4, 0x79, 0x09, 0x35, 0x1a, 0xa3, 0x07, 0x9e, 0x3a, 0xb3, 0x12, 0x5b, 0x9d, 0xbf, 0x72, - 0x6e, 0x62, 0x99, 0x60, 0x7a, 0xc0, 0x95, 0x2b, 0xe9, 0x3f, 0x7e, 0x1f, 0x06, 0x8b, 0xc4, 0xe0, - 0x84, 0x5c, 0x0f, 0x7d, 0x15, 0x40, 0x77, 0x6c, 0xc3, 0x12, 0x7e, 0x53, 0x63, 0x13, 0x8d, 0x55, - 0x43, 0x01, 0xb1, 0x92, 0x88, 0x3c, 0x7a, 0x13, 0x80, 0x1c, 0x7b, 0x9a, 0x27, 0xd6, 0xaa, 0xce, - 0x8a, 0x8d, 0x3c, 0x37, 0xdd, 0x3b, 0x5b, 0x77, 0xf6, 0xe4, 0xb6, 0xb8, 0xa1, 0x37, 0x4f, 0xe1, - 0x14, 0x39, 0xf6, 0x24, 0x01, 0xed, 0xc0, 0x02, 0x79, 0xb7, 0xc3, 0x68, 0x68, 0x6b, 0x4e, 0xd8, - 0x7a, 0xfe, 0x3e, 0xb6, 0xb8, 0xf4, 0x90, 0xb5, 0x79, 0x32, 0x20, 0xf1, 0x95, 0x99, 0xba, 0x1b, - 0x5a, 0x4b, 0x3c, 0x68, 0x65, 0xdb, 0xd5, 0xdd, 0xe1, 0x95, 0x99, 0xba, 0x2b, 0x09, 0x9b, 0x4f, - 0x7e, 0xf2, 0x7a, 0x16, 0x16, 0x61, 0x21, 0x0c, 0x40, 0xb9, 0x63, 0x19, 0x5f, 0xbe, 0x3e, 0x7b, - 0x79, 0xed, 0xa5, 0xb5, 0x8d, 0xca, 0x59, 0xc8, 0x45, 0x92, 0x51, 0x7e, 0x0d, 0xc5, 0xef, 0x7e, - 0xa0, 0xc4, 0xaf, 0xc5, 0x93, 0xf1, 0xec, 0x6c, 0xf1, 0xb7, 0x31, 0x48, 0x0f, 0x6d, 0x1b, 0x1d, - 0x42, 0x6e, 0x90, 0xaa, 0xe1, 0x02, 0x65, 0x14, 0x5f, 0x9b, 0xbe, 0xc0, 0x9a, 0xc5, 0xa8, 0xee, - 0x57, 0xa5, 0x62, 0xb5, 0xaf, 0x3f, 0xb0, 0x8b, 0xb3, 0xfa, 0x08, 0x15, 0x3d, 0x0f, 0x59, 0xaf, - 0x63, 0x9a, 0xd4, 0xf3, 0xa9, 0xa1, 0x11, 0xc1, 0x11, 0x31, 0x4a, 0xe1, 0x4c, 0x9f, 0xbe, 0x25, - 0xc8, 0xe8, 0x45, 0xc8, 0x51, 0xc6, 0x1c, 0xa6, 0x19, 0xd4, 0xd3, 0x99, 0x25, 0x00, 0x5c, 0xc4, - 0x20, 0x85, 0xb3, 0x82, 0x51, 0x1b, 0xd0, 0xd1, 0x36, 0x64, 0x47, 0x36, 0x4d, 0x85, 0x87, 0x17, - 0xc7, 0x92, 0xb8, 0xca, 0xc5, 0xae, 0x5b, 0xf6, 0x11, 0x5f, 0x11, 0xc5, 0x8b, 0xfa, 0xd0, 0x3b, - 0xfa, 0x2e, 0xe4, 0x0c, 0xea, 0xb6, 0x9c, 0x5e, 0x9b, 0xda, 0x7e, 0xe8, 0x8a, 0xa4, 0xb0, 0xf4, - 0xd2, 0x74, 0x57, 0xf4, 0x8d, 0xd6, 0xfa, 0xba, 0x72, 0xc3, 0x38, 0x6b, 0x8c, 0x50, 0x36, 0xcf, - 0x7c, 0xfc, 0x81, 0x92, 0x83, 0x0c, 0xc0, 0xd6, 0x9d, 0xbd, 0x95, 0xc0, 0x2d, 0xca, 0x95, 0x6b, - 0xf1, 0x64, 0x2c, 0x1b, 0x46, 0xe8, 0x1f, 0x49, 0x78, 0xea, 0x81, 0xde, 0x45, 0xe7, 0x20, 0xd5, - 0x24, 0xb6, 0x71, 0x6c, 0x19, 0xfe, 0xa1, 0xa8, 0xd8, 0x14, 0x1e, 0x10, 0xd0, 0xd3, 0x90, 0x8e, - 0xc4, 0xd4, 0x32, 0x04, 0x50, 0xa4, 0xf0, 0xc2, 0x80, 0xd8, 0x30, 0xd0, 0x73, 0x90, 0x89, 0x08, - 0xd9, 0xa4, 0x4d, 0x45, 0x7b, 0x49, 0xe1, 0xc5, 0x01, 0x79, 0x87, 0xb4, 0x29, 0xfa, 0xb1, 0x02, - 0xd9, 0x91, 0x14, 0xa1, 0x6a, 0x9c, 0x8b, 0x56, 0xbe, 0xf5, 0xe7, 0x7f, 0x7d, 0x18, 0xbb, 0xc3, - 0x6e, 0xe1, 0xa4, 0xc3, 0x0c, 0xca, 0x2c, 0xdb, 0xc4, 0x29, 0x46, 0xbf, 0xd7, 0x11, 0xb1, 0xc4, - 0x09, 0x97, 0xda, 0x86, 0xa0, 0x91, 0x2e, 0xb1, 0x5a, 0xa4, 0xd9, 0xa2, 0x38, 0x6e, 0x38, 0xc7, - 0x36, 0x4e, 0x1a, 0x1c, 0xd0, 0x39, 0x2b, 0x21, 0x9e, 0xa8, 0x81, 0x93, 0x8c, 0x72, 0x14, 0xe0, - 0x6a, 0x1d, 0xfb, 0xc8, 0xe6, 0x52, 0x99, 0xe1, 0x14, 0xa2, 0xe8, 0x26, 0x2c, 0x1f, 0x12, 0x4f, - 0x6b, 0x39, 0xa6, 0xa5, 0x93, 0x96, 0xc6, 0xa8, 0xd1, 0xb1, 0x0d, 0x62, 0xeb, 0x3d, 0x99, 0x47, - 0x95, 0xb3, 0x7c, 0x39, 0x4b, 0x0c, 0x0d, 0x4c, 0xc4, 0x7a, 0xd4, 0xc3, 0x33, 0xb6, 0x83, 0x97, - 0x0e, 0x89, 0x77, 0x5d, 0xea, 0xe1, 0xbe, 0x1a, 0xca, 0x43, 0xb2, 0xe5, 0xe8, 0x24, 0x92, 0x5e, - 0xfd, 0x77, 0xf4, 0x14, 0x2c, 0xb8, 0x84, 0xf9, 0x36, 0x65, 0xd2, 0x39, 0x09, 0xc1, 0x9f, 0x0f, - 0x68, 0xc2, 0x33, 0x4f, 0x43, 0x3a, 0x6c, 0x04, 0x52, 0x26, 0x29, 0xfd, 0x1c, 0x12, 0x85, 0xd0, - 0x32, 0xcc, 0x31, 0x6a, 0xf2, 0x2f, 0xa4, 0x04, 0x37, 0x78, 0x43, 0x6f, 0x41, 0xdc, 0x27, 0xa6, - 0xa7, 0x82, 0xa8, 0xb5, 0xfa, 0x63, 0xd4, 0x5a, 0x79, 0x9f, 0x98, 0x5e, 0xdd, 0xf6, 0x59, 0x0f, - 0x0b, 0x93, 0x08, 0x41, 0xbc, 0xdb, 0x22, 0xb6, 0x3a, 0xbf, 0xa2, 0xac, 0xa6, 0xb1, 0x78, 0x46, - 0x65, 0x38, 0xfd, 0x76, 0xa7, 0xdd, 0x74, 0xb4, 0x03, 0x46, 0xda, 0x54, 0xd3, 0x89, 0xcb, 0xe3, - 0xa1, 0x2e, 0xac, 0x28, 0xab, 0x49, 0x9c, 0x13, 0xac, 0x37, 0x38, 0xa7, 0x2a, 0x19, 0x7c, 0x6f, - 0xce, 0x31, 0xdf, 0x3c, 0xd1, 0x75, 0xa7, 0x63, 0xfb, 0x6a, 0x5a, 0xee, 0x4d, 0x10, 0xb7, 0x24, - 0x0d, 0xed, 0x01, 0x74, 0xad, 0x83, 0xb0, 0x54, 0x16, 0x05, 0xac, 0x6d, 0x4c, 0xdf, 0xc9, 0x6d, - 0x8b, 0xf9, 0x1d, 0xd2, 0x6a, 0xd8, 0x3e, 0x65, 0x07, 0x44, 0x8f, 0xe0, 0x25, 0x4e, 0x75, 0xad, - 0x83, 0xa0, 0x20, 0x34, 0x58, 0x34, 0x89, 0x4f, 0x8f, 0x49, 0x2f, 0x34, 0x9c, 0x11, 0x86, 0x5f, - 0x7d, 0x48, 0x17, 0x6d, 0x4b, 0xe5, 0x88, 0xf1, 0xb4, 0x19, 0x25, 0xa1, 0xb3, 0x90, 0xe4, 0x6d, - 0xc2, 0x25, 0xfe, 0xa1, 0x9a, 0x13, 0xbb, 0x4a, 0x90, 0x63, 0x6f, 0x97, 0xf8, 0x87, 0xf9, 0xaf, - 0x40, 0xaa, 0xef, 0x4c, 0x94, 0x85, 0xd8, 0x11, 0xed, 0x05, 0xe5, 0xc5, 0x1f, 0xd1, 0x12, 0xcc, - 0x76, 0x49, 0xab, 0x43, 0x83, 0x82, 0x92, 0x2f, 0x9b, 0x33, 0xaf, 0x2a, 0x9b, 0xbf, 0x57, 0xfe, - 0xf6, 0x81, 0xf2, 0xbe, 0x02, 0x2b, 0x90, 0x1e, 0x84, 0x68, 0xa5, 0x51, 0xcb, 0x67, 0x46, 0x6a, - 0x11, 0x9e, 0x81, 0x4c, 0x44, 0x82, 0xa7, 0x48, 0x3e, 0x37, 0x56, 0x8a, 0x70, 0x11, 0xb2, 0x11, - 0x29, 0x91, 0xfe, 0x79, 0x34, 0x5e, 0x87, 0xa0, 0x42, 0xaa, 0x12, 0xd6, 0x7d, 0x7e, 0x3e, 0x82, - 0x0a, 0xb0, 0x0c, 0xc9, 0xeb, 0x41, 0x2e, 0xe7, 0x61, 0x90, 0xe7, 0xd7, 0xe2, 0xc9, 0x6c, 0x36, - 0x57, 0x7c, 0x0f, 0x20, 0x3f, 0x3d, 0x1c, 0x68, 0x13, 0x16, 0x89, 0x61, 0x30, 0xea, 0x79, 0xda, - 0x01, 0x69, 0x5b, 0xad, 0xc0, 0x0b, 0x95, 0xd3, 0xbc, 0xc2, 0x16, 0xd9, 0x02, 0x8e, 0x5b, 0x6e, - 0x77, 0x43, 0xfc, 0x7d, 0x05, 0xa7, 0x03, 0xd1, 0x37, 0x84, 0x24, 0x7a, 0x16, 0x16, 0x49, 0x9b, - 0xbc, 0xeb, 0xd8, 0x5a, 0x40, 0x0f, 0xbc, 0x95, 0x96, 0xd4, 0x2d, 0x49, 0x44, 0xe7, 0x01, 0x42, - 0x31, 0xcf, 0x16, 0xd0, 0x13, 0xc7, 0xa9, 0x40, 0xc4, 0xb3, 0xd1, 0x13, 0x90, 0x68, 0x9a, 0xae, - 0xe0, 0xc5, 0x45, 0x1a, 0xcf, 0x35, 0x4d, 0x97, 0x33, 0xc6, 0xc0, 0x6d, 0x76, 0x02, 0xb8, 0x5d, - 0x85, 0xb3, 0x86, 0xc8, 0x09, 0x2d, 0x20, 0x6b, 0x61, 0x4a, 0x59, 0x46, 0x50, 0xe9, 0xcb, 0xc6, - 0x84, 0xa4, 0x69, 0x18, 0xe8, 0x6b, 0xf0, 0xe4, 0x14, 0xd5, 0x08, 0x0c, 0xa8, 0x93, 0x94, 0x45, - 0xb9, 0xff, 0x4a, 0x81, 0x27, 0xba, 0xd2, 0xb1, 0x9a, 0x15, 0x7a, 0x36, 0x00, 0x4d, 0x01, 0x0f, - 0x95, 0xef, 0x70, 0x1f, 0xbe, 0xc5, 0xee, 0x88, 0xd1, 0xe5, 0xc0, 0x62, 0x6d, 0x01, 0x91, 0x5d, - 0xca, 0xac, 0x83, 0x9e, 0x80, 0xc4, 0xc7, 0x84, 0xcd, 0x33, 0xdd, 0x09, 0x71, 0xa5, 0x43, 0x58, - 0x97, 0x1a, 0xc1, 0xba, 0x01, 0x46, 0xc1, 0x10, 0x46, 0xe1, 0x00, 0xa3, 0xe6, 0x05, 0x46, 0xbd, - 0xfe, 0x28, 0x95, 0x3d, 0x15, 0x9c, 0x16, 0x22, 0xe0, 0x74, 0x09, 0x96, 0xc6, 0x7d, 0x66, 0x19, - 0x01, 0xe6, 0xa0, 0xd1, 0x0d, 0x35, 0x0c, 0xb4, 0x01, 0xcb, 0xe3, 0x1a, 0x22, 0x40, 0x8b, 0x42, - 0x67, 0x69, 0x54, 0x47, 0x04, 0xe7, 0xce, 0x24, 0x2d, 0x3e, 0xb3, 0x0b, 0x88, 0x49, 0x55, 0x9e, - 0xe2, 0xa1, 0x39, 0xc7, 0xf2, 0x38, 0xe1, 0x32, 0xab, 0xcb, 0x67, 0x84, 0x39, 0xb7, 0xd3, 0x6c, - 0x59, 0x3a, 0x4e, 0xf8, 0x8c, 0xd8, 0x9e, 0xe5, 0x8f, 0x1b, 0x16, 0xf5, 0x52, 0x81, 0x14, 0xcf, - 0x56, 0x97, 0x52, 0xe6, 0xa9, 0x59, 0xe1, 0xad, 0x67, 0xa7, 0x7b, 0xab, 0xb2, 0xbd, 0xbb, 0x4b, - 0x29, 0x93, 0x93, 0x74, 0xd3, 0x74, 0xf9, 0x8b, 0x37, 0x0d, 0xa1, 0x73, 0xd3, 0x10, 0x3a, 0x0b, - 0xb1, 0xb6, 0xdf, 0x51, 0x91, 0xf0, 0x23, 0x7f, 0x1c, 0xc7, 0xec, 0xd3, 0x13, 0x30, 0xfb, 0x1d, - 0xb8, 0x30, 0x92, 0xdf, 0xc4, 0xf7, 0x89, 0x7e, 0xd8, 0x1f, 0x7a, 0xa8, 0xba, 0x24, 0x9c, 0x71, - 0x99, 0x3b, 0x63, 0x8d, 0xbd, 0x80, 0x53, 0x52, 0x80, 0xe7, 0x5d, 0x52, 0x3e, 0x52, 0x03, 0xa7, - 0x0c, 0xda, 0x27, 0xca, 0x47, 0x6a, 0xe0, 0x73, 0x43, 0x65, 0xb1, 0xd5, 0xb7, 0x2b, 0x33, 0x70, - 0x0b, 0xce, 0x8f, 0x7e, 0x4a, 0xd3, 0x0f, 0x89, 0x6d, 0x52, 0x4d, 0x0c, 0x75, 0xea, 0x19, 0xb1, - 0xdc, 0x3c, 0x19, 0xd6, 0xab, 0x0a, 0x91, 0x3a, 0x97, 0x18, 0x82, 0xee, 0xe5, 0xff, 0x0f, 0x74, - 0x17, 0xdf, 0x8f, 0xc3, 0x7c, 0x24, 0x22, 0x8f, 0x85, 0x7d, 0x1b, 0xb0, 0x3c, 0x7c, 0x40, 0xec, - 0x63, 0xa0, 0x1c, 0x0d, 0x96, 0x04, 0x77, 0x37, 0x60, 0x86, 0x50, 0x98, 0x85, 0x58, 0x88, 0x81, - 0x69, 0xcc, 0x1f, 0x51, 0x01, 0xe6, 0xc3, 0x7c, 0xe2, 0x75, 0x10, 0x0f, 0x26, 0x3c, 0x99, 0x2a, - 0x0d, 0x83, 0xf7, 0xc8, 0x3e, 0x5f, 0xc6, 0x4c, 0x4e, 0x40, 0x57, 0xf9, 0x1a, 0x37, 0xd8, 0x95, - 0x07, 0xe1, 0xc9, 0x04, 0x24, 0x59, 0x08, 0xac, 0xcb, 0x58, 0x5d, 0x05, 0xe0, 0x1f, 0x88, 0x1c, - 0x7f, 0x52, 0x95, 0x3c, 0x37, 0x7e, 0x86, 0x9d, 0xc6, 0x33, 0x1d, 0x37, 0x40, 0xa4, 0x3e, 0xe8, - 0xf0, 0xb5, 0x0d, 0xe6, 0x7c, 0xbd, 0xe3, 0xf9, 0x4e, 0x3b, 0xb2, 0x7b, 0x89, 0x9a, 0x99, 0x90, - 0x1e, 0x6c, 0x7c, 0xf3, 0x77, 0xbc, 0x6b, 0xfe, 0x46, 0x81, 0x2b, 0xb0, 0x2c, 0xc6, 0xe8, 0x95, - 0xd0, 0x33, 0x2b, 0x81, 0x44, 0x5e, 0x9d, 0xe6, 0x50, 0xd1, 0x21, 0x03, 0x73, 0x7d, 0x69, 0x34, - 0xfe, 0x69, 0x28, 0xc2, 0x62, 0x65, 0x7b, 0x77, 0x85, 0x6f, 0x2d, 0xe8, 0xa3, 0xd9, 0x51, 0xe7, - 0x41, 0x1e, 0x80, 0xcb, 0xc8, 0x0d, 0xe4, 0x17, 0xa2, 0x7b, 0xbf, 0x16, 0x4f, 0xce, 0x64, 0x63, - 0xc5, 0x5f, 0xc7, 0xa0, 0x70, 0xff, 0x29, 0x63, 0xa4, 0xa1, 0x29, 0xa3, 0x0d, 0xed, 0xbe, 0x2d, - 0x69, 0xe6, 0x71, 0x5a, 0x52, 0xec, 0x01, 0x2d, 0xc9, 0x81, 0x73, 0x53, 0xd4, 0xa3, 0xb3, 0x7c, - 0x99, 0x47, 0xf7, 0x79, 0xf6, 0xdc, 0xc3, 0xe6, 0xcb, 0x59, 0x63, 0x8a, 0x3b, 0x28, 0x5a, 0x03, - 0x34, 0xa1, 0xba, 0x83, 0xf3, 0x9b, 0x37, 0x5a, 0xd3, 0x63, 0xa8, 0x95, 0x98, 0x80, 0x5a, 0xd1, - 0xc2, 0x4f, 0x0e, 0x15, 0x7e, 0x31, 0x07, 0x99, 0x91, 0xd3, 0x77, 0xf1, 0x4b, 0x80, 0xd5, 0xed, - 0xea, 0xae, 0xc8, 0x29, 0x01, 0xd4, 0xfa, 0x24, 0x44, 0x0a, 0xe2, 0x86, 0x20, 0x2e, 0xdc, 0x28, - 0xc1, 0x42, 0x3c, 0xf3, 0x35, 0x11, 0xa3, 0x6d, 0xd9, 0x1a, 0xb5, 0xf9, 0xfe, 0x65, 0x80, 0x92, - 0x78, 0x41, 0x10, 0xeb, 0x92, 0x86, 0x4a, 0x80, 0x1c, 0x97, 0x32, 0xd1, 0x42, 0x49, 0x2b, 0xac, - 0x15, 0x19, 0x8d, 0x5c, 0x84, 0x13, 0xd4, 0xc5, 0x16, 0xc4, 0x45, 0xab, 0x91, 0xee, 0x2e, 0x71, - 0x77, 0xaf, 0xb2, 0x8b, 0x38, 0x55, 0xab, 0xd7, 0x1a, 0xd5, 0xad, 0xfd, 0x7a, 0x0d, 0x27, 0x76, - 0xb7, 0xf0, 0xfe, 0x4e, 0x1d, 0xe3, 0x6c, 0xf0, 0xa0, 0xed, 0xe2, 0x9b, 0xb7, 0x1b, 0xb5, 0x3a, - 0xc6, 0x42, 0x55, 0xf4, 0x69, 0xa7, 0xe3, 0x53, 0x16, 0x0c, 0x3d, 0xc1, 0x1b, 0x2a, 0xc2, 0x82, - 0x15, 0xd9, 0x66, 0xe0, 0xea, 0x21, 0xda, 0xf0, 0x91, 0x31, 0x31, 0x7a, 0x64, 0xdc, 0x00, 0xa0, - 0xb6, 0xce, 0x7a, 0xf2, 0xa8, 0x2d, 0x07, 0x95, 0x25, 0xbe, 0xc4, 0x0c, 0x4b, 0xe3, 0xf8, 0xce, - 0xcd, 0x9d, 0x3a, 0x9e, 0x6d, 0xec, 0xee, 0xd5, 0xab, 0x38, 0x22, 0x87, 0x56, 0x82, 0x5e, 0xce, - 0xe7, 0x89, 0x74, 0x65, 0x81, 0xcb, 0x27, 0x5e, 0x98, 0x55, 0xff, 0x73, 0x61, 0x55, 0x09, 0x3a, - 0xfb, 0x33, 0xb2, 0x49, 0x81, 0x10, 0x40, 0x5c, 0x20, 0xfd, 0xc2, 0x7c, 0x25, 0x75, 0x79, 0x63, - 0xe3, 0xd2, 0xda, 0xe5, 0x97, 0x2f, 0x5d, 0x92, 0x8d, 0xeb, 0x3c, 0x80, 0xe7, 0x13, 0x5d, 0xde, - 0x9f, 0x89, 0x63, 0x4b, 0x0a, 0xa7, 0x04, 0x45, 0x44, 0xe8, 0x22, 0x64, 0x24, 0x08, 0xc8, 0xed, - 0x6a, 0x96, 0x2b, 0xa6, 0x87, 0x14, 0x4e, 0x0b, 0x32, 0x16, 0xd4, 0x86, 0xcb, 0xf3, 0xae, 0x5f, - 0xfe, 0x03, 0x51, 0x39, 0x44, 0xf4, 0x81, 0xa1, 0x2f, 0xbd, 0x0e, 0xa7, 0x83, 0x04, 0xb7, 0x5a, - 0x96, 0xdf, 0xd3, 0x0c, 0xa7, 0x4d, 0x2c, 0x3b, 0x98, 0x1f, 0x50, 0x94, 0x55, 0x13, 0x1c, 0x74, - 0x07, 0xb2, 0xe1, 0x89, 0xb0, 0x7f, 0x5b, 0x26, 0x8f, 0x26, 0x6b, 0xf7, 0xbd, 0xca, 0xd9, 0x95, - 0x4a, 0xe1, 0x6d, 0x2e, 0xce, 0xb8, 0xc3, 0x04, 0x74, 0x01, 0xc2, 0x63, 0xa5, 0x80, 0x8e, 0xac, - 0xe8, 0x03, 0x10, 0x90, 0x38, 0x76, 0xfc, 0x5c, 0x81, 0xec, 0x58, 0x97, 0x16, 0x47, 0x97, 0x8a, - 0xc1, 0x7d, 0xaa, 0xb1, 0x6f, 0xe3, 0xb9, 0xad, 0xea, 0x7e, 0xe3, 0x76, 0x1d, 0xa7, 0x6f, 0xed, - 0x88, 0xac, 0xd9, 0x6b, 0xdc, 0xdc, 0xa9, 0xd7, 0x70, 0x66, 0xb7, 0xbe, 0x53, 0x6b, 0xec, 0x6c, - 0x6b, 0x61, 0x6e, 0xa9, 0x61, 0x6e, 0xe1, 0xfa, 0x37, 0x6e, 0xd5, 0xf7, 0xf6, 0x35, 0x5c, 0xaf, - 0xd6, 0x1b, 0xb7, 0xeb, 0x35, 0x9c, 0x0d, 0x45, 0xab, 0xb7, 0xf6, 0xf6, 0x6f, 0xde, 0xa8, 0x63, - 0x9c, 0xa8, 0xd5, 0xdf, 0xb8, 0xb5, 0x53, 0xdd, 0xc7, 0x99, 0x91, 0x9e, 0x8c, 0x5e, 0x84, 0x1c, - 0x5f, 0xba, 0xdb, 0x22, 0x36, 0xd5, 0xba, 0x94, 0x79, 0x3c, 0x6d, 0xf8, 0x28, 0x32, 0x8b, 0xb3, - 0x7d, 0xc6, 0x6d, 0x49, 0x1f, 0x9e, 0x8e, 0x4e, 0x3f, 0xda, 0x74, 0x74, 0x00, 0x73, 0x2d, 0xd2, - 0xa4, 0x2d, 0x4f, 0x5d, 0x12, 0x06, 0x76, 0xee, 0xeb, 0xf2, 0x87, 0xaa, 0xfc, 0xf2, 0x75, 0x61, - 0x50, 0x0e, 0xa7, 0x81, 0x75, 0x0e, 0x34, 0xa6, 0xee, 0x4a, 0xa0, 0x91, 0xf3, 0x48, 0xc2, 0xd4, - 0x5d, 0x0e, 0x34, 0x3c, 0x4c, 0x5d, 0x57, 0xd7, 0x82, 0x4b, 0xe2, 0x60, 0xfe, 0x80, 0xae, 0xab, - 0xef, 0x48, 0x4a, 0x64, 0x8c, 0x7e, 0x62, 0x68, 0x8c, 0x56, 0x21, 0xe1, 0x32, 0x87, 0xcf, 0xe9, - 0xaa, 0x2a, 0x4d, 0x06, 0xaf, 0xf9, 0xab, 0x30, 0x1f, 0x59, 0xc4, 0xff, 0x74, 0xe2, 0xfc, 0x19, - 0xef, 0x9d, 0x3f, 0x51, 0xe0, 0x22, 0x9c, 0x8b, 0x6e, 0x74, 0x65, 0xb0, 0x53, 0x79, 0xb8, 0x9c, - 0x93, 0xf0, 0x06, 0xe7, 0x21, 0x27, 0x7b, 0xac, 0x2c, 0x00, 0xc9, 0x4c, 0x86, 0x80, 0xc2, 0xdb, - 0x69, 0x44, 0xb3, 0x7f, 0xe0, 0x1c, 0xcd, 0xba, 0xe9, 0x07, 0xce, 0xe2, 0x67, 0x0a, 0xa4, 0x87, - 0x2e, 0x2e, 0x91, 0x33, 0xfd, 0x6e, 0xb1, 0xf2, 0xf8, 0xe1, 0x9b, 0x70, 0xc5, 0x38, 0xe9, 0x2a, - 0x30, 0xf6, 0x08, 0x57, 0x81, 0x83, 0x8b, 0xba, 0xed, 0xea, 0xee, 0xe0, 0xa2, 0xae, 0xf2, 0x53, - 0xe5, 0xee, 0xe7, 0x85, 0x53, 0x9f, 0x7e, 0x5e, 0x38, 0xf5, 0xc5, 0xe7, 0x05, 0xe5, 0x07, 0x27, - 0x05, 0xe5, 0x0f, 0x27, 0x05, 0xe5, 0xaf, 0x27, 0x05, 0xe5, 0xee, 0x49, 0x41, 0xf9, 0xf4, 0xa4, - 0xa0, 0x7c, 0x76, 0x52, 0x50, 0xfe, 0x79, 0x52, 0x38, 0xf5, 0xc5, 0x49, 0x41, 0xf9, 0xc5, 0xbd, - 0xc2, 0xa9, 0x0f, 0xef, 0x15, 0x94, 0xbb, 0xf7, 0x0a, 0xa7, 0x3e, 0xbd, 0x57, 0x38, 0xf5, 0xcd, - 0x1d, 0xd3, 0x71, 0x8f, 0xcc, 0x72, 0xd7, 0x69, 0xf9, 0x94, 0x31, 0x52, 0xee, 0x78, 0xeb, 0xe2, - 0xe1, 0xc0, 0x61, 0xed, 0x52, 0x38, 0xe0, 0x94, 0x42, 0xf6, 0xba, 0xdb, 0x34, 0x9d, 0x75, 0xfa, - 0x8e, 0x1f, 0xfc, 0x54, 0x35, 0xf6, 0x9b, 0x5b, 0x73, 0x4e, 0xfc, 0x62, 0xf5, 0xd2, 0x7f, 0x03, - 0x00, 0x00, 0xff, 0xff, 0x51, 0x4b, 0x61, 0xea, 0x06, 0x1c, 0x00, 0x00, + // 2767 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x59, 0x4f, 0x6c, 0x23, 0x57, + 0x19, 0xcf, 0xc4, 0x4e, 0x6c, 0x7f, 0x89, 0x63, 0xfb, 0x6d, 0x36, 0x9d, 0x75, 0xb3, 0x5e, 0xd7, + 0x6d, 0xb7, 0x69, 0x1b, 0x3b, 0xbb, 0xdb, 0xb4, 0x74, 0x03, 0x14, 0xc5, 0x7f, 0x9a, 0x7a, 0xb5, + 0x9b, 0x84, 0x97, 0xec, 0xae, 0x5a, 0x0a, 0xc3, 0xf3, 0xcc, 0x8b, 0x33, 0x8d, 0x3d, 0x33, 0xbc, + 0x19, 0x3b, 0x75, 0x25, 0x24, 0x24, 0x24, 0x28, 0x12, 0x02, 0x4e, 0x88, 0x03, 0x12, 0xa2, 0x17, + 0x10, 0x47, 0x8e, 0xf4, 0xd2, 0xf6, 0x84, 0x90, 0x90, 0x56, 0x3d, 0x55, 0x9c, 0xda, 0x2c, 0x42, + 0x70, 0xab, 0x7a, 0xe1, 0x86, 0xd0, 0x7b, 0x6f, 0xc6, 0x1e, 0x3b, 0xf6, 0xee, 0xd2, 0x65, 0x2f, + 0xc9, 0xcc, 0xf7, 0x6f, 0xde, 0xfb, 0xfe, 0xfc, 0xbe, 0xef, 0x3d, 0xc3, 0xd3, 0x5d, 0xea, 0x96, + 0x4c, 0x7b, 0xcd, 0xd5, 0x0f, 0x69, 0x9b, 0xac, 0xe9, 0x2d, 0xbb, 0x63, 0x68, 0x2d, 0xd3, 0x3a, + 0x5a, 0xb3, 0x1b, 0x6f, 0x51, 0xdd, 0x2b, 0x39, 0xcc, 0xf6, 0x6c, 0xa4, 0x4a, 0xb1, 0x92, 0x14, + 0x2b, 0x0d, 0xc4, 0xb2, 0xc5, 0xa6, 0xe9, 0x1d, 0x76, 0x1a, 0x25, 0xdd, 0x6e, 0xaf, 0x35, 0xed, + 0xa6, 0xbd, 0x26, 0x14, 0x1a, 0x9d, 0x03, 0xf1, 0x26, 0x5e, 0xc4, 0x93, 0x34, 0x94, 0x7d, 0x6a, + 0xe2, 0xf7, 0xbc, 0x9e, 0x43, 0x5d, 0x5f, 0xea, 0xf1, 0x61, 0x29, 0xdb, 0xf1, 0x4c, 0xdb, 0x0a, + 0x98, 0xe7, 0x86, 0x99, 0x61, 0xbd, 0xe5, 0x61, 0x56, 0x97, 0xb4, 0x4c, 0x83, 0x78, 0xd4, 0xe7, + 0x16, 0x46, 0xb8, 0xd4, 0xa5, 0x56, 0x77, 0xc4, 0x78, 0x7e, 0x44, 0xc6, 0xa4, 0xc7, 0xda, 0xb0, + 0xc4, 0x85, 0xd3, 0x12, 0x6e, 0x78, 0x11, 0x85, 0x3f, 0xce, 0xc2, 0xec, 0x8e, 0x70, 0x1e, 0xba, + 0x0a, 0xf1, 0x36, 0xf5, 0x88, 0x41, 0x3c, 0xa2, 0x2a, 0x79, 0x65, 0x65, 0xee, 0xca, 0xf9, 0xd2, + 0xb0, 0x27, 0xa5, 0xe0, 0x0d, 0xea, 0x91, 0xfd, 0x9e, 0x43, 0x71, 0x5f, 0x1c, 0x5d, 0x87, 0x94, + 0xdb, 0x73, 0x3d, 0xda, 0xd6, 0xfa, 0x16, 0xa6, 0x85, 0x85, 0x27, 0x47, 0x2c, 0xec, 0x09, 0xa9, + 0x11, 0x3b, 0x0b, 0x52, 0xf7, 0x46, 0x60, 0xed, 0x25, 0x88, 0xba, 0x0e, 0xd5, 0xd5, 0x88, 0x30, + 0x51, 0x28, 0x4d, 0x0a, 0x67, 0x69, 0xcf, 0xa1, 0xba, 0xb0, 0x20, 0xe4, 0x37, 0xfe, 0x11, 0x7d, + 0xf7, 0x1b, 0xca, 0x47, 0x1f, 0xaa, 0xd3, 0x69, 0xe5, 0xe3, 0x0f, 0xd5, 0xbf, 0x46, 0xe0, 0x5b, + 0x10, 0xd9, 0xa2, 0x1e, 0xda, 0x3f, 0x78, 0xf1, 0x6d, 0xbd, 0xe8, 0x52, 0xbd, 0xc3, 0x68, 0x9b, + 0xba, 0x87, 0xc5, 0x06, 0x71, 0x4d, 0xbd, 0xd8, 0xb6, 0x2d, 0xd3, 0xb3, 0xd9, 0x6a, 0x7e, 0x94, + 0xed, 0x7a, 0xc4, 0x32, 0x08, 0x33, 0x06, 0x12, 0x5d, 0xea, 0x16, 0x4d, 0xbb, 0x68, 0x51, 0xef, + 0xd8, 0x66, 0x47, 0x45, 0x46, 0x89, 0x01, 0x6f, 0x40, 0x0c, 0x53, 0xa7, 0x45, 0x74, 0x8a, 0x76, + 0xc6, 0x7f, 0xa0, 0xe3, 0xd2, 0x7b, 0x59, 0x97, 0xec, 0x11, 0xd3, 0xc7, 0xcc, 0xf4, 0x28, 0xbc, + 0x0e, 0xb3, 0x15, 0x46, 0x89, 0xf7, 0x68, 0x4c, 0x57, 0x69, 0x8b, 0x3e, 0x0a, 0xd3, 0x6f, 0x42, + 0xf4, 0xba, 0xe9, 0x3e, 0x22, 0x7f, 0xff, 0xed, 0x43, 0xf5, 0x47, 0x0a, 0xfc, 0x50, 0x81, 0x3a, + 0x8f, 0x75, 0xa9, 0xa9, 0x6b, 0xe2, 0xbf, 0xcc, 0x06, 0x87, 0xd9, 0x5d, 0xd3, 0xa0, 0xac, 0x44, + 0x8e, 0xdd, 0x50, 0x82, 0x68, 0x3c, 0xd3, 0x4b, 0x8d, 0x9e, 0xad, 0x97, 0x74, 0xdb, 0xb2, 0xa8, + 0x2e, 0x4b, 0x83, 0x74, 0xbc, 0x43, 0xed, 0x88, 0xf6, 0xd0, 0x4b, 0xfe, 0x77, 0x84, 0x46, 0x91, + 0x6b, 0x14, 0xb9, 0xd1, 0x62, 0x53, 0x97, 0xff, 0xc9, 0xb1, 0x5b, 0xe4, 0xda, 0xc5, 0x46, 0xd3, + 0x29, 0x72, 0xad, 0xa2, 0x67, 0x1f, 0x51, 0xab, 0x70, 0x03, 0xe2, 0x41, 0xea, 0xa1, 0x4d, 0x88, + 0xf9, 0x6b, 0xf1, 0x53, 0x7e, 0x65, 0x72, 0xbe, 0x6e, 0xb5, 0xec, 0x06, 0x69, 0xf5, 0xb3, 0x76, + 0xb6, 0xa9, 0xf3, 0xe7, 0xc2, 0xbf, 0x23, 0x30, 0xbf, 0xe7, 0x11, 0xaf, 0xe3, 0x3e, 0x70, 0x25, + 0x4a, 0xf1, 0xb1, 0x95, 0x38, 0x27, 0xb1, 0x50, 0x63, 0xf4, 0xc0, 0x55, 0xa7, 0xf3, 0x91, 0x95, + 0xb9, 0x2b, 0xcb, 0x63, 0xeb, 0x18, 0xd3, 0x03, 0xae, 0x5c, 0x4e, 0xfe, 0xe1, 0xfb, 0x30, 0x58, + 0x24, 0x06, 0x3b, 0xe0, 0xba, 0xe8, 0x6b, 0x00, 0xba, 0x6d, 0x19, 0xa6, 0xf0, 0x9b, 0x1a, 0x19, + 0x6b, 0xac, 0x12, 0x08, 0x88, 0x95, 0x84, 0xe4, 0xd1, 0x6b, 0x00, 0xe4, 0xd8, 0xd5, 0x5c, 0xb1, + 0x56, 0x75, 0x46, 0x6c, 0xe4, 0x99, 0xc9, 0xde, 0xd9, 0xbc, 0xbd, 0x27, 0xb7, 0xc5, 0x0d, 0xbd, + 0x36, 0x85, 0x13, 0xe4, 0xd8, 0x95, 0x04, 0xb4, 0x0d, 0xf3, 0xe4, 0x9d, 0x0e, 0xa3, 0x81, 0xad, + 0x59, 0x61, 0xeb, 0xd9, 0x7b, 0xd8, 0xe2, 0xd2, 0x43, 0xd6, 0xe6, 0xc8, 0x80, 0xc4, 0x57, 0xd6, + 0xd4, 0x9d, 0xc0, 0x5a, 0xec, 0x7e, 0x2b, 0xdb, 0xaa, 0xec, 0x0e, 0xaf, 0xac, 0xa9, 0x3b, 0x92, + 0xb0, 0xf1, 0xf8, 0xc7, 0xaf, 0xa4, 0x61, 0x01, 0xe6, 0x83, 0x00, 0x94, 0x3a, 0xa6, 0xf1, 0xc5, + 0x2b, 0x33, 0x97, 0x57, 0x5f, 0x58, 0x5d, 0x2f, 0x9f, 0x83, 0x4c, 0x28, 0x19, 0xe5, 0xd7, 0x50, + 0xf4, 0xce, 0xfb, 0x4a, 0xf4, 0x5a, 0x34, 0x1e, 0x4d, 0xcf, 0x14, 0x7e, 0x13, 0x81, 0xe4, 0xd0, + 0xb6, 0xd1, 0x21, 0x64, 0x06, 0xa9, 0x1a, 0x2c, 0x50, 0x46, 0xf1, 0xab, 0x93, 0x17, 0x58, 0x35, + 0x19, 0xd5, 0xbd, 0x8a, 0x54, 0xac, 0xf4, 0xf5, 0x07, 0x76, 0x71, 0x5a, 0x1f, 0xa1, 0xa2, 0x67, + 0x21, 0xed, 0x76, 0x9a, 0x4d, 0xea, 0x7a, 0xd4, 0xd0, 0x88, 0xe0, 0x88, 0x18, 0x25, 0x70, 0xaa, + 0x4f, 0xdf, 0x14, 0x64, 0xf4, 0x3c, 0x64, 0x28, 0x63, 0x36, 0xd3, 0x0c, 0xea, 0xea, 0xcc, 0x14, + 0x1d, 0x46, 0xc4, 0x20, 0x81, 0xd3, 0x82, 0x51, 0x1d, 0xd0, 0xd1, 0x16, 0xa4, 0x47, 0x36, 0x4d, + 0x85, 0x87, 0x17, 0x4e, 0x25, 0x71, 0x85, 0x8b, 0x5d, 0x37, 0xad, 0x23, 0xbe, 0x22, 0x8a, 0x17, + 0xf4, 0xa1, 0x77, 0xf4, 0x5d, 0xc8, 0x18, 0xd4, 0x69, 0xd9, 0xbd, 0x36, 0xb5, 0xbc, 0xc0, 0x15, + 0x71, 0x61, 0xe9, 0x85, 0xc9, 0xae, 0xe8, 0x1b, 0xad, 0xf6, 0x75, 0xe5, 0x86, 0x71, 0xda, 0x18, + 0xa1, 0x6c, 0x9c, 0xfd, 0xe8, 0x7d, 0x25, 0x03, 0x29, 0x80, 0xcd, 0xdb, 0x7b, 0x79, 0xdf, 0x2d, + 0xca, 0x95, 0x6b, 0xd1, 0x78, 0x24, 0x1d, 0x44, 0xe8, 0xef, 0x71, 0x78, 0xe2, 0xbe, 0xde, 0x45, + 0xcb, 0x90, 0x68, 0x10, 0xcb, 0x38, 0x36, 0x0d, 0xef, 0x50, 0x54, 0x6c, 0x02, 0x0f, 0x08, 0xe8, + 0x49, 0x48, 0x86, 0x62, 0x6a, 0x1a, 0x02, 0x28, 0x12, 0x78, 0x7e, 0x40, 0xac, 0x1b, 0xe8, 0x19, + 0x48, 0x85, 0x84, 0x2c, 0xd2, 0xa6, 0xa2, 0xff, 0x25, 0xf0, 0xc2, 0x80, 0xbc, 0x4d, 0xda, 0x14, + 0xfd, 0x58, 0x81, 0xf4, 0x48, 0x8a, 0x50, 0x35, 0xca, 0x45, 0xcb, 0x6f, 0xfe, 0xe9, 0x5f, 0x1f, + 0x44, 0x6e, 0xb3, 0x9b, 0x38, 0x6e, 0x33, 0x83, 0x32, 0xd3, 0x6a, 0xe2, 0x04, 0xa3, 0xdf, 0xeb, + 0x88, 0x58, 0xe2, 0x98, 0x43, 0x2d, 0x43, 0xd0, 0x48, 0x97, 0x98, 0x2d, 0xd2, 0x68, 0x51, 0x1c, + 0x35, 0xec, 0x63, 0x0b, 0xc7, 0x0d, 0xde, 0x11, 0x38, 0x2b, 0x26, 0x9e, 0xa8, 0x81, 0xe3, 0x8c, + 0x72, 0x14, 0xe0, 0x6a, 0x1d, 0xeb, 0xc8, 0xe2, 0x52, 0xa9, 0xe1, 0x14, 0xa2, 0x68, 0x07, 0x96, + 0x0e, 0x89, 0xab, 0xb5, 0xec, 0xa6, 0xa9, 0x93, 0x96, 0xc6, 0xa8, 0xd1, 0xb1, 0x0c, 0x62, 0xe9, + 0x3d, 0x99, 0x47, 0xe5, 0x73, 0x7c, 0x39, 0x8b, 0x0c, 0x0d, 0x4c, 0x44, 0x7a, 0xd4, 0xc5, 0xd3, + 0x96, 0x8d, 0x17, 0x0f, 0x89, 0x7b, 0x5d, 0xea, 0xe1, 0xbe, 0x1a, 0xca, 0x42, 0xbc, 0x65, 0xeb, + 0x24, 0x94, 0x5e, 0xfd, 0x77, 0xf4, 0x04, 0xcc, 0x3b, 0x84, 0x79, 0x16, 0x65, 0xd2, 0x39, 0x31, + 0xc1, 0x9f, 0xf3, 0x69, 0xc2, 0x33, 0x4f, 0x42, 0x32, 0x68, 0x04, 0x52, 0x26, 0x2e, 0xfd, 0x1c, + 0x10, 0x85, 0xd0, 0x12, 0xcc, 0x32, 0xda, 0xe4, 0x5f, 0x48, 0x08, 0xae, 0xff, 0x86, 0x5e, 0x87, + 0xa8, 0x47, 0x9a, 0xae, 0x0a, 0xa2, 0xd6, 0x6a, 0x0f, 0x51, 0x6b, 0xa5, 0x7d, 0xd2, 0x74, 0x6b, + 0x96, 0xc7, 0x7a, 0x58, 0x98, 0x44, 0x08, 0xa2, 0xdd, 0x16, 0xb1, 0xd4, 0xb9, 0xbc, 0xb2, 0x92, + 0xc4, 0xe2, 0x19, 0x95, 0xe0, 0xcc, 0x5b, 0x9d, 0x76, 0xc3, 0xd6, 0x0e, 0x18, 0x69, 0x53, 0x4d, + 0x27, 0x0e, 0x8f, 0x87, 0x3a, 0x9f, 0x57, 0x56, 0xe2, 0x38, 0x23, 0x58, 0xaf, 0x72, 0x4e, 0x45, + 0x32, 0xf8, 0xde, 0xec, 0x63, 0xbe, 0x79, 0xa2, 0xeb, 0x76, 0xc7, 0xf2, 0xd4, 0xa4, 0xdc, 0x9b, + 0x20, 0x6e, 0x4a, 0x1a, 0xda, 0x03, 0xe8, 0x9a, 0x07, 0x41, 0xa9, 0x2c, 0x08, 0x58, 0x5b, 0x9f, + 0xbc, 0x93, 0x5b, 0x26, 0xf3, 0x3a, 0xa4, 0x55, 0xb7, 0x3c, 0xca, 0x0e, 0x88, 0x1e, 0xc2, 0x4b, + 0x9c, 0xe8, 0x9a, 0x07, 0x7e, 0x41, 0x68, 0xb0, 0xd0, 0x24, 0x1e, 0x3d, 0x26, 0xbd, 0xc0, 0x70, + 0x4a, 0x18, 0x7e, 0xf9, 0x01, 0x5d, 0xb4, 0x25, 0x95, 0x43, 0xc6, 0x93, 0xcd, 0x30, 0x09, 0x9d, + 0x83, 0x38, 0x6f, 0x13, 0x0e, 0xf1, 0x0e, 0xd5, 0x8c, 0xd8, 0x55, 0x8c, 0x1c, 0xbb, 0xbb, 0xc4, + 0x3b, 0xcc, 0x7e, 0x05, 0x12, 0x7d, 0x67, 0xa2, 0x34, 0x44, 0x8e, 0x68, 0xcf, 0x2f, 0x2f, 0xfe, + 0x88, 0x16, 0x61, 0xa6, 0x4b, 0x5a, 0x1d, 0xea, 0x17, 0x94, 0x7c, 0xd9, 0x98, 0x7e, 0x59, 0xd9, + 0xf8, 0x9d, 0xf2, 0x97, 0xf7, 0x95, 0xf7, 0x14, 0xc8, 0x43, 0x72, 0x10, 0xa2, 0x7c, 0xbd, 0x9a, + 0x4d, 0x8d, 0xd4, 0x22, 0x3c, 0x05, 0xa9, 0x90, 0x04, 0x4f, 0x91, 0x6c, 0xe6, 0x54, 0x29, 0xc2, + 0x45, 0x48, 0x87, 0xa4, 0x44, 0xfa, 0x67, 0xd1, 0xe9, 0x3a, 0x04, 0x15, 0x12, 0xe5, 0xa0, 0xee, + 0xb3, 0x73, 0x21, 0x54, 0x80, 0x25, 0x88, 0x5f, 0xf7, 0x73, 0x39, 0x0b, 0x83, 0x3c, 0xbf, 0x16, + 0x8d, 0xa7, 0xd3, 0x99, 0xc2, 0xbb, 0x00, 0xd9, 0xc9, 0xe1, 0x40, 0x1b, 0xb0, 0x40, 0x0c, 0x83, + 0x51, 0xd7, 0xd5, 0x0e, 0x48, 0xdb, 0x6c, 0xf9, 0x5e, 0x28, 0x9f, 0xe1, 0x15, 0xb6, 0xc0, 0xe6, + 0x71, 0xd4, 0x74, 0xba, 0xeb, 0xe2, 0xef, 0x4b, 0x38, 0xe9, 0x8b, 0xbe, 0x2a, 0x24, 0xd1, 0xd3, + 0xb0, 0x40, 0xda, 0xe4, 0x1d, 0xdb, 0xd2, 0x7c, 0xba, 0xef, 0xad, 0xa4, 0xa4, 0x6e, 0x4a, 0x22, + 0x3a, 0x0f, 0x10, 0x88, 0xb9, 0x96, 0x80, 0x9e, 0x28, 0x4e, 0xf8, 0x22, 0xae, 0x85, 0x1e, 0x83, + 0x58, 0xa3, 0xe9, 0x08, 0x5e, 0x54, 0xa4, 0xf1, 0x6c, 0xa3, 0xe9, 0x70, 0xc6, 0x29, 0x70, 0x9b, + 0x19, 0x03, 0x6e, 0x57, 0xe1, 0x9c, 0x21, 0x72, 0x42, 0xf3, 0xc9, 0x5a, 0x90, 0x52, 0xa6, 0xe1, + 0x57, 0xfa, 0x92, 0x31, 0x26, 0x69, 0xea, 0x06, 0xfa, 0x3a, 0x3c, 0x3e, 0x41, 0x35, 0x04, 0x03, + 0xea, 0x38, 0x65, 0x51, 0xee, 0xbf, 0x54, 0xe0, 0xb1, 0xae, 0x74, 0xac, 0x66, 0x06, 0x9e, 0xf5, + 0x41, 0x53, 0xc0, 0x43, 0xf9, 0x3b, 0xdc, 0x87, 0xaf, 0xb3, 0xdb, 0x62, 0x74, 0x39, 0x30, 0x59, + 0x5b, 0x40, 0x64, 0x97, 0x32, 0xf3, 0xa0, 0x27, 0x20, 0xf1, 0x21, 0x61, 0xf3, 0x6c, 0x77, 0x4c, + 0x5c, 0xe9, 0x10, 0xd6, 0x25, 0x46, 0xb0, 0x6e, 0x80, 0x51, 0x30, 0x84, 0x51, 0xd8, 0xc7, 0xa8, + 0x39, 0x81, 0x51, 0xaf, 0x7c, 0x99, 0xca, 0x9e, 0x08, 0x4e, 0xf3, 0x21, 0x70, 0xba, 0x04, 0x8b, + 0xa7, 0x7d, 0x66, 0x1a, 0x3e, 0xe6, 0xa0, 0xd1, 0x0d, 0xd5, 0x0d, 0xb4, 0x0e, 0x4b, 0xa7, 0x35, + 0x44, 0x80, 0x16, 0x84, 0xce, 0xe2, 0xa8, 0x8e, 0x08, 0xce, 0xed, 0x71, 0x5a, 0x7c, 0x66, 0x17, + 0x10, 0x93, 0x28, 0x3f, 0xc1, 0x43, 0xb3, 0xcc, 0xb2, 0x38, 0xe6, 0x30, 0xb3, 0xcb, 0x67, 0x84, + 0x59, 0xa7, 0xd3, 0x68, 0x99, 0x3a, 0x8e, 0x79, 0x8c, 0x58, 0xae, 0xe9, 0x9d, 0x36, 0x2c, 0xea, + 0xa5, 0x0c, 0x09, 0x9e, 0xad, 0x0e, 0xa5, 0xcc, 0x55, 0xd3, 0xc2, 0x5b, 0x4f, 0x4f, 0xf6, 0x56, + 0x79, 0x6b, 0x77, 0x97, 0x52, 0x26, 0x27, 0xe9, 0x46, 0xd3, 0xe1, 0x2f, 0xee, 0x24, 0x84, 0xce, + 0x4c, 0x42, 0xe8, 0x34, 0x44, 0xda, 0x5e, 0x47, 0x45, 0xc2, 0x8f, 0xfc, 0xf1, 0x34, 0x66, 0x9f, + 0x19, 0x83, 0xd9, 0x6f, 0xc3, 0x85, 0x91, 0xfc, 0x26, 0x9e, 0x47, 0xf4, 0xc3, 0xfe, 0xd0, 0x43, + 0xd5, 0x45, 0xe1, 0x8c, 0xcb, 0xdc, 0x19, 0xab, 0xec, 0x39, 0x9c, 0x90, 0x02, 0x3c, 0xef, 0xe2, + 0xf2, 0x91, 0x1a, 0x38, 0x61, 0xd0, 0x3e, 0x51, 0x3e, 0x52, 0x03, 0x2f, 0x0f, 0x95, 0xc5, 0x66, + 0xdf, 0xae, 0xcc, 0xc0, 0x4d, 0x38, 0x3f, 0xfa, 0x29, 0x4d, 0x3f, 0x24, 0x56, 0x93, 0x6a, 0x62, + 0xa8, 0x53, 0xcf, 0x8a, 0xe5, 0x66, 0xc9, 0xb0, 0x5e, 0x45, 0x88, 0xd4, 0xb8, 0xc4, 0x10, 0x74, + 0x2f, 0xfd, 0x7f, 0xa0, 0xbb, 0xf0, 0x5e, 0x14, 0xe6, 0x42, 0x11, 0x79, 0x28, 0xec, 0x5b, 0x87, + 0xa5, 0xe1, 0x03, 0x62, 0x1f, 0x03, 0xe5, 0x68, 0xb0, 0x28, 0xb8, 0xbb, 0x3e, 0x33, 0x80, 0xc2, + 0x34, 0x44, 0x02, 0x0c, 0x4c, 0x62, 0xfe, 0x88, 0x72, 0x30, 0x17, 0xe4, 0x13, 0xaf, 0x83, 0xa8, + 0x3f, 0xe1, 0xc9, 0x54, 0xa9, 0x1b, 0xbc, 0x47, 0xf6, 0xf9, 0x32, 0x66, 0x72, 0x02, 0xba, 0xca, + 0xd7, 0xb8, 0xce, 0xae, 0xdc, 0x0f, 0x4f, 0xc6, 0x20, 0xc9, 0xbc, 0x6f, 0x5d, 0xc6, 0xea, 0x2a, + 0x00, 0xff, 0x40, 0xe8, 0xf8, 0x93, 0x28, 0x67, 0xb9, 0xf1, 0xb3, 0xec, 0x0c, 0x9e, 0xee, 0x38, + 0x3e, 0x22, 0xf5, 0x41, 0x87, 0xaf, 0x6d, 0x30, 0xe7, 0xeb, 0x1d, 0xd7, 0xb3, 0xdb, 0xa1, 0xdd, + 0x4b, 0xd4, 0x4c, 0x05, 0x74, 0x7f, 0xe3, 0x1b, 0xbf, 0xe5, 0x5d, 0xf3, 0xd7, 0x0a, 0x5c, 0x81, + 0x25, 0x31, 0x46, 0xe7, 0x03, 0xcf, 0xe4, 0x7d, 0x89, 0xac, 0x3a, 0xc9, 0xa1, 0xa2, 0x43, 0xfa, + 0xe6, 0xfa, 0xd2, 0xe8, 0xf4, 0xa7, 0xa1, 0x00, 0x0b, 0xe5, 0xad, 0xdd, 0x3c, 0xdf, 0x9a, 0xdf, + 0x47, 0xd3, 0xa3, 0xce, 0x83, 0x2c, 0x00, 0x97, 0x91, 0x1b, 0xc8, 0xce, 0x87, 0xf7, 0x7e, 0x2d, + 0x1a, 0x9f, 0x4e, 0x47, 0x0a, 0xbf, 0x8a, 0x40, 0xee, 0xde, 0x53, 0xc6, 0x48, 0x43, 0x53, 0x46, + 0x1b, 0xda, 0x3d, 0x5b, 0xd2, 0xf4, 0xc3, 0xb4, 0xa4, 0xc8, 0x7d, 0x5a, 0x92, 0x0d, 0xcb, 0x13, + 0xd4, 0xc3, 0xb3, 0x7c, 0x89, 0x47, 0xf7, 0x59, 0xf6, 0xcc, 0x83, 0xe6, 0xcb, 0x39, 0x63, 0x82, + 0x3b, 0x28, 0x5a, 0x05, 0x34, 0xa6, 0xba, 0xfd, 0xf3, 0x9b, 0x3b, 0x5a, 0xd3, 0xa7, 0x50, 0x2b, + 0x36, 0x06, 0xb5, 0xc2, 0x85, 0x1f, 0x1f, 0x2a, 0xfc, 0x42, 0x06, 0x52, 0x23, 0xa7, 0xef, 0xc2, + 0x17, 0x00, 0x2b, 0x5b, 0x95, 0x5d, 0x91, 0x53, 0x02, 0xa8, 0xf5, 0x71, 0x88, 0xe4, 0xc7, 0x0d, + 0x41, 0x54, 0xb8, 0x51, 0x82, 0x85, 0x78, 0xe6, 0x6b, 0x22, 0x46, 0xdb, 0xb4, 0x34, 0x6a, 0xf1, + 0xfd, 0xcb, 0x00, 0xc5, 0xf1, 0xbc, 0x20, 0xd6, 0x24, 0x0d, 0x15, 0x01, 0xd9, 0x0e, 0x65, 0xa2, + 0x85, 0x92, 0x56, 0x50, 0x2b, 0x32, 0x1a, 0x99, 0x10, 0xc7, 0xaf, 0x8b, 0x4d, 0x88, 0x8a, 0x56, + 0x23, 0xdd, 0x5d, 0xe4, 0xee, 0x5e, 0x61, 0x17, 0x71, 0xa2, 0x5a, 0xab, 0xd6, 0x2b, 0x9b, 0xfb, + 0xb5, 0x2a, 0x8e, 0xed, 0x6e, 0xe2, 0xfd, 0xed, 0x1a, 0xc6, 0x69, 0xff, 0x41, 0xdb, 0xc5, 0x3b, + 0xb7, 0xea, 0xd5, 0x1a, 0xc6, 0x42, 0x55, 0xf4, 0x69, 0xbb, 0xe3, 0x51, 0xe6, 0x0f, 0x3d, 0xfe, + 0x1b, 0x2a, 0xc0, 0xbc, 0x19, 0xda, 0xa6, 0xef, 0xea, 0x21, 0xda, 0xf0, 0x91, 0x31, 0x36, 0x7a, + 0x64, 0x5c, 0x07, 0xa0, 0x96, 0xce, 0x7a, 0xf2, 0xa8, 0x2d, 0x07, 0x95, 0x45, 0xbe, 0xc4, 0x14, + 0x4b, 0xe2, 0xe8, 0xf6, 0xce, 0x76, 0x0d, 0xcf, 0xd4, 0x77, 0xf7, 0x6a, 0x15, 0x1c, 0x92, 0x43, + 0x79, 0xbf, 0x97, 0xf3, 0x79, 0x22, 0x59, 0x9e, 0xe7, 0xf2, 0xb1, 0xe7, 0x66, 0xd4, 0xff, 0x5c, + 0x58, 0x51, 0xfc, 0xce, 0xfe, 0x94, 0x6c, 0x52, 0x20, 0x04, 0x10, 0x17, 0x48, 0x3e, 0x37, 0x57, + 0x4e, 0x5c, 0x5e, 0x5f, 0xbf, 0xb4, 0x7a, 0xf9, 0xc5, 0x4b, 0x97, 0x64, 0xe3, 0x3a, 0x0f, 0xe0, + 0x7a, 0x44, 0x97, 0xf7, 0x67, 0xe2, 0xd8, 0x92, 0xc0, 0x09, 0x41, 0x11, 0x11, 0xba, 0x08, 0x29, + 0x09, 0x02, 0x72, 0xbb, 0x9a, 0xe9, 0x88, 0xe9, 0x21, 0x81, 0x93, 0x82, 0x8c, 0x05, 0xb5, 0xee, + 0xf0, 0xbc, 0xeb, 0x97, 0xff, 0x40, 0x54, 0x0e, 0x11, 0x7d, 0x60, 0xe8, 0x4b, 0xaf, 0xc1, 0x19, + 0x3f, 0xc1, 0xcd, 0x96, 0xe9, 0xf5, 0x34, 0xc3, 0x6e, 0x13, 0xd3, 0xf2, 0xe7, 0x07, 0x14, 0x66, + 0x55, 0x05, 0x07, 0xdd, 0x86, 0x74, 0x70, 0x22, 0xec, 0xdf, 0x96, 0xc9, 0xa3, 0xc9, 0xea, 0x3d, + 0xaf, 0x72, 0x76, 0xa5, 0x52, 0x70, 0xdd, 0x8c, 0x53, 0xce, 0x30, 0x01, 0x5d, 0x80, 0xe0, 0x58, + 0x29, 0xa0, 0x23, 0x2d, 0xfa, 0x00, 0xf8, 0x24, 0x8e, 0x1d, 0x3f, 0x57, 0x20, 0x7d, 0xaa, 0x4b, + 0x8b, 0xa3, 0x4b, 0xd9, 0xe0, 0x3e, 0xd5, 0xd8, 0xb7, 0xf1, 0xec, 0x66, 0x65, 0xbf, 0x7e, 0xab, + 0x86, 0x93, 0x37, 0xb7, 0x45, 0xd6, 0xec, 0xd5, 0x77, 0xb6, 0x6b, 0x55, 0x9c, 0xda, 0xad, 0x6d, + 0x57, 0xeb, 0xdb, 0x5b, 0x5a, 0x90, 0x5b, 0x6a, 0x90, 0x5b, 0xb8, 0xf6, 0xcd, 0x9b, 0xb5, 0xbd, + 0x7d, 0x0d, 0xd7, 0x2a, 0xb5, 0xfa, 0xad, 0x5a, 0x15, 0xa7, 0x03, 0xd1, 0xca, 0xcd, 0xbd, 0xfd, + 0x9d, 0x1b, 0x35, 0x8c, 0x63, 0xd5, 0xda, 0xab, 0x37, 0xb7, 0x2b, 0xfb, 0x38, 0x35, 0xd2, 0x93, + 0xd1, 0xf3, 0x90, 0xe1, 0x4b, 0x77, 0x5a, 0xc4, 0xa2, 0x5a, 0x97, 0x32, 0x97, 0xa7, 0x0d, 0x1f, + 0x45, 0x66, 0x70, 0xba, 0xcf, 0xb8, 0x25, 0xe9, 0xc3, 0xd3, 0xd1, 0x99, 0x2f, 0x37, 0x1d, 0x1d, + 0xc0, 0x6c, 0x8b, 0x34, 0x68, 0xcb, 0x55, 0x17, 0x85, 0x81, 0xed, 0x7b, 0xba, 0xfc, 0x81, 0x2a, + 0xbf, 0x74, 0x5d, 0x18, 0x94, 0xc3, 0xa9, 0x6f, 0x9d, 0x03, 0x4d, 0x53, 0x77, 0x24, 0xd0, 0xc8, + 0x79, 0x24, 0xd6, 0xd4, 0x1d, 0x0e, 0x34, 0x3c, 0x4c, 0x5d, 0x47, 0xd7, 0xfc, 0x4b, 0x62, 0x7f, + 0xfe, 0x80, 0xae, 0xa3, 0x6f, 0x4b, 0x4a, 0x68, 0x8c, 0x7e, 0x6c, 0x68, 0x8c, 0x56, 0x21, 0xe6, + 0x30, 0x9b, 0xcf, 0xe9, 0xaa, 0x2a, 0x4d, 0xfa, 0xaf, 0xd9, 0xab, 0x30, 0x17, 0x5a, 0xc4, 0xff, + 0x74, 0xe2, 0xfc, 0x19, 0xef, 0x9d, 0x3f, 0x51, 0xe0, 0x22, 0x2c, 0x87, 0x37, 0x9a, 0x1f, 0xec, + 0x54, 0x1e, 0x2e, 0x67, 0x25, 0xbc, 0xc1, 0x79, 0xc8, 0xc8, 0x1e, 0x2b, 0x0b, 0x40, 0x32, 0xe3, + 0x01, 0xa0, 0xf0, 0x76, 0x1a, 0xd2, 0xec, 0x1f, 0x38, 0x47, 0xb3, 0x6e, 0xf2, 0x81, 0xb3, 0xf0, + 0xa9, 0x02, 0xc9, 0xa1, 0x8b, 0x4b, 0x64, 0x4f, 0xbe, 0x5b, 0x2c, 0x3f, 0x7c, 0xf8, 0xc6, 0x5c, + 0x31, 0x8e, 0xbb, 0x0a, 0x8c, 0x7c, 0x89, 0xab, 0xc0, 0xc1, 0x45, 0xdd, 0x56, 0x65, 0x77, 0x70, + 0x51, 0x57, 0xfe, 0xa9, 0x72, 0xe7, 0xb3, 0xdc, 0xd4, 0x27, 0x9f, 0xe5, 0xa6, 0x3e, 0xff, 0x2c, + 0xa7, 0xfc, 0xe0, 0x24, 0xa7, 0xfc, 0xfe, 0x24, 0xa7, 0xfc, 0xf9, 0x24, 0xa7, 0xdc, 0x39, 0xc9, + 0x29, 0x9f, 0x9c, 0xe4, 0x94, 0x4f, 0x4f, 0x72, 0xca, 0x3f, 0x4f, 0x72, 0x53, 0x9f, 0x9f, 0xe4, + 0x94, 0x5f, 0xdc, 0xcd, 0x4d, 0x7d, 0x70, 0x37, 0xa7, 0xdc, 0xb9, 0x9b, 0x9b, 0xfa, 0xe4, 0x6e, + 0x6e, 0xea, 0x8d, 0xed, 0xa6, 0xed, 0x1c, 0x35, 0x4b, 0x5d, 0xbb, 0xe5, 0x51, 0xc6, 0x48, 0xa9, + 0xe3, 0xae, 0x89, 0x87, 0x03, 0x9b, 0xb5, 0x8b, 0xc1, 0x80, 0x53, 0x0c, 0xd8, 0x6b, 0x4e, 0xa3, + 0x69, 0xaf, 0xd1, 0xb7, 0x3d, 0xff, 0xb7, 0xb4, 0x53, 0x3f, 0x0a, 0x36, 0x66, 0xc5, 0x4f, 0x6a, + 0x2f, 0xfc, 0x37, 0x00, 0x00, 0xff, 0xff, 0x7d, 0xe3, 0xd6, 0x79, 0xa7, 0x1c, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/cloud_link/public_crudapi.pb.go b/pbgo/extschema/schema/cloud_link/public_crudapi.pb.go index e4fbe4c09..822566e2c 100644 --- a/pbgo/extschema/schema/cloud_link/public_crudapi.pb.go +++ b/pbgo/extschema/schema/cloud_link/public_crudapi.pb.go @@ -1058,109 +1058,110 @@ func init() { } var fileDescriptor_0e9ca102fdf39b47 = []byte{ - // 1626 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0x49, - 0x16, 0x4e, 0xd9, 0x8e, 0xb1, 0xcb, 0xf9, 0x69, 0x6a, 0x21, 0x74, 0xbc, 0x59, 0xe3, 0x35, 0x09, - 0x1b, 0x22, 0xdc, 0x86, 0xa0, 0x45, 0x90, 0x5d, 0xb1, 0x38, 0x4e, 0x27, 0x24, 0xe4, 0x07, 0xb5, - 0x0d, 0x42, 0x48, 0xab, 0x56, 0xbb, 0x5d, 0x36, 0xbd, 0xb1, 0xdd, 0x4d, 0x57, 0xd9, 0x21, 0x5a, - 0x45, 0xda, 0x45, 0xda, 0x3b, 0xd2, 0x5e, 0x46, 0xa3, 0x39, 0xcc, 0x65, 0xa4, 0xd1, 0x9c, 0xe7, - 0x30, 0x9a, 0x5c, 0xd0, 0x1c, 0x06, 0xc4, 0x01, 0xa1, 0x99, 0x0b, 0xa7, 0xd1, 0xe0, 0xcc, 0x81, - 0x23, 0x9a, 0xc3, 0x9c, 0x47, 0x5d, 0xd5, 0x6d, 0x6c, 0xc7, 0x26, 0x4e, 0xe0, 0xe4, 0xaa, 0xf7, - 0xf3, 0xf5, 0xfb, 0xaa, 0xde, 0x7b, 0xfd, 0xdc, 0x30, 0x59, 0xc7, 0x44, 0x32, 0xcc, 0x14, 0xd1, - 0xef, 0xe3, 0x8a, 0x96, 0xd2, 0xcb, 0x66, 0xad, 0xa0, 0x96, 0x8d, 0xea, 0x66, 0xca, 0xaa, 0xe5, - 0xcb, 0x86, 0xae, 0xea, 0x76, 0xad, 0xa0, 0x59, 0x86, 0x64, 0xd9, 0x26, 0x35, 0x91, 0xc8, 0xcd, - 0x25, 0x6e, 0x2e, 0xbd, 0x33, 0x8f, 0x26, 0x4b, 0x06, 0xbd, 0x5f, 0xcb, 0x4b, 0xba, 0x59, 0x49, - 0x95, 0xcc, 0x92, 0x99, 0x62, 0x0e, 0xf9, 0x5a, 0x91, 0xed, 0xd8, 0x86, 0xad, 0x38, 0x50, 0x74, - 0xa2, 0x64, 0x9a, 0xa5, 0x32, 0x4e, 0x69, 0x96, 0x91, 0xd2, 0xaa, 0x55, 0x93, 0x6a, 0xd4, 0x30, - 0xab, 0xc4, 0xd5, 0xfe, 0xd1, 0xd5, 0x36, 0x31, 0x70, 0xc5, 0xa2, 0xdb, 0xae, 0x72, 0xaa, 0x67, - 0xc8, 0x66, 0xfe, 0x5f, 0x58, 0xa7, 0xae, 0xd9, 0x64, 0x4f, 0x33, 0xba, 0x6d, 0x61, 0xef, 0x49, - 0xd1, 0x76, 0x2b, 0x6c, 0xdb, 0xa6, 0xdd, 0x8c, 0xa2, 0x5d, 0x67, 0x5a, 0xad, 0x21, 0x8e, 0xb7, - 0x2b, 0x5b, 0x31, 0x27, 0xda, 0x55, 0x75, 0xad, 0x6c, 0x14, 0x34, 0x8a, 0x5d, 0x6d, 0xa2, 0x43, - 0x8b, 0x09, 0xae, 0xd6, 0x3b, 0xc0, 0xe3, 0x1d, 0x36, 0x06, 0xde, 0x52, 0xdb, 0x2d, 0x4e, 0xef, - 0xb7, 0x20, 0xad, 0x41, 0x24, 0xbe, 0x02, 0x70, 0x38, 0x63, 0x63, 0x8d, 0x62, 0x05, 0x3f, 0xa8, - 0x61, 0x42, 0xd1, 0x3f, 0x60, 0xa8, 0x82, 0xa9, 0x56, 0xd0, 0xa8, 0x26, 0x82, 0x38, 0x98, 0x8e, - 0xcc, 0x9e, 0x91, 0xda, 0xaf, 0x73, 0x83, 0x9d, 0x1f, 0xf7, 0x5a, 0xc3, 0x54, 0xcb, 0x6d, 0x5b, - 0x58, 0x69, 0x3a, 0xa1, 0x35, 0x18, 0x20, 0x16, 0xd6, 0x45, 0x1f, 0x73, 0x9e, 0x96, 0x7a, 0xe5, - 0x82, 0xc4, 0x11, 0xb2, 0x16, 0xd6, 0x1d, 0x84, 0xf9, 0xd1, 0x4f, 0x77, 0x86, 0x1c, 0x47, 0xa9, - 0xa4, 0xab, 0xce, 0xaf, 0xc2, 0x60, 0xe6, 0xc2, 0xcf, 0xaf, 0x05, 0xf9, 0x13, 0x13, 0xbf, 0x01, - 0x38, 0xe2, 0x05, 0x4b, 0x2c, 0xb3, 0x4a, 0x30, 0xfa, 0xfb, 0xbe, 0x68, 0xe3, 0x5d, 0xa3, 0x5d, - 0xc2, 0xb4, 0x4b, 0xa8, 0x1b, 0x70, 0x94, 0x6c, 0x13, 0x8a, 0x2b, 0x6a, 0x13, 0xc4, 0xcf, 0x40, - 0xce, 0x76, 0x80, 0x64, 0x99, 0xd5, 0x7e, 0xa8, 0x11, 0xee, 0xbe, 0xe6, 0x01, 0xae, 0xb4, 0x71, - 0x9f, 0xea, 0xcd, 0x7d, 0x09, 0xd3, 0x43, 0x10, 0xff, 0x09, 0xc0, 0x11, 0x05, 0x5b, 0x65, 0x4d, - 0x6f, 0x5e, 0xd3, 0xf5, 0x7d, 0xc4, 0x27, 0xbb, 0x12, 0x77, 0xdd, 0xba, 0x90, 0x5f, 0x6f, 0x8b, - 0xf5, 0x5c, 0xef, 0x58, 0x5d, 0x88, 0x03, 0xe2, 0x45, 0x29, 0x28, 0xd8, 0x98, 0x98, 0x35, 0x5b, - 0xc7, 0x6a, 0x1d, 0xdb, 0xc4, 0x30, 0xab, 0xec, 0x34, 0xc3, 0xf3, 0x81, 0x37, 0xbb, 0x00, 0x28, - 0xa3, 0x9e, 0xf6, 0x0e, 0x57, 0xb6, 0x12, 0x3c, 0x0e, 0x47, 0x9b, 0xfc, 0xf8, 0xcd, 0x26, 0x3e, - 0x01, 0x10, 0x2e, 0x61, 0xea, 0xf1, 0x9d, 0x80, 0xe1, 0xaa, 0x56, 0xc1, 0xc4, 0xd2, 0x74, 0xcc, - 0x08, 0x87, 0x95, 0x77, 0x02, 0x84, 0x60, 0xc0, 0xd9, 0x30, 0x2e, 0x61, 0x85, 0xad, 0xd1, 0x5d, - 0xe8, 0x3c, 0x91, 0x81, 0xa9, 0x45, 0xd3, 0xae, 0x68, 0x94, 0x85, 0x33, 0x32, 0x9b, 0x7a, 0xef, - 0xb5, 0x78, 0x01, 0x2c, 0x32, 0x97, 0x8c, 0x59, 0xc0, 0xca, 0x88, 0xdd, 0x26, 0x4b, 0xfc, 0x2f, - 0x08, 0x23, 0x2d, 0x96, 0xe8, 0x06, 0x8c, 0xe8, 0x2c, 0x2d, 0xd9, 0x73, 0xdc, 0x03, 0xfd, 0xcb, - 0x41, 0x89, 0xef, 0x32, 0x53, 0x20, 0xf7, 0x75, 0xb0, 0xd1, 0x4d, 0x38, 0x64, 0xf3, 0x73, 0xe0, - 0x50, 0xfe, 0x83, 0x6a, 0xa8, 0x3d, 0x2b, 0x94, 0x88, 0xeb, 0xcd, 0xc0, 0xba, 0x5d, 0x48, 0xe0, - 0x3d, 0x17, 0xd2, 0x56, 0x4c, 0x83, 0x1f, 0xa3, 0x98, 0x8e, 0x7d, 0x94, 0x62, 0x0a, 0x7e, 0x78, - 0x31, 0x21, 0x19, 0x06, 0x09, 0xd5, 0x68, 0x8d, 0x88, 0x9f, 0x7f, 0x06, 0xe2, 0xfe, 0x2e, 0x51, - 0xb5, 0xe0, 0x65, 0x99, 0x25, 0x0f, 0x70, 0xde, 0xff, 0x64, 0x07, 0x28, 0xae, 0x33, 0x5a, 0x86, - 0xc7, 0x6d, 0x5c, 0xc4, 0xb6, 0x6d, 0x54, 0x4b, 0x2a, 0x7f, 0x8f, 0x10, 0x31, 0xc4, 0xf0, 0x26, - 0x7a, 0x94, 0x5f, 0x91, 0x71, 0x13, 0x9a, 0x6e, 0x5c, 0x4e, 0xd0, 0x1d, 0x28, 0x16, 0x70, 0x19, - 0x53, 0x5c, 0x50, 0xb9, 0x0e, 0x17, 0x9a, 0x88, 0xe1, 0x3e, 0x10, 0xc7, 0x5c, 0x6f, 0xc5, 0x75, - 0xf6, 0x70, 0xef, 0xc2, 0xf1, 0x82, 0x41, 0xb4, 0x7c, 0xb9, 0x1b, 0x30, 0xec, 0x03, 0xf8, 0x94, - 0xe7, 0xde, 0x81, 0xdc, 0x52, 0xaf, 0x2b, 0x81, 0x10, 0x10, 0x7c, 0x89, 0x2f, 0x00, 0x8c, 0xac, - 0x1a, 0xa4, 0xcf, 0x1a, 0xfd, 0x33, 0x1c, 0x2a, 0x6b, 0x79, 0x5c, 0x56, 0x8b, 0x46, 0x99, 0x62, - 0xdb, 0xad, 0xd5, 0x08, 0x93, 0x2d, 0x32, 0x11, 0x3a, 0x03, 0x87, 0x6d, 0x6c, 0x99, 0x36, 0x55, - 0x8b, 0x06, 0x2e, 0x17, 0x88, 0xe8, 0x8f, 0xfb, 0xa7, 0xc3, 0xca, 0x10, 0x17, 0x2e, 0x32, 0x19, - 0xba, 0x00, 0x4f, 0xb8, 0x46, 0xfc, 0x52, 0x3c, 0xdb, 0x00, 0xb3, 0x45, 0x5c, 0xc7, 0xaf, 0x90, - 0x7b, 0x24, 0xbe, 0x0e, 0x42, 0x81, 0xc7, 0xc9, 0x0b, 0x76, 0x99, 0xe2, 0x0a, 0x1a, 0x83, 0x41, - 0x8a, 0xab, 0x5a, 0x95, 0xb2, 0xfc, 0x0a, 0x2b, 0xee, 0xee, 0x08, 0x8d, 0x46, 0x80, 0xfe, 0x9a, - 0x51, 0xe0, 0xbd, 0x4e, 0x71, 0x96, 0x28, 0x0e, 0x23, 0x05, 0x4c, 0x74, 0xdb, 0x60, 0x2f, 0x63, - 0x31, 0xc2, 0x99, 0xb6, 0x88, 0x50, 0x14, 0x86, 0xbc, 0x63, 0x16, 0x87, 0xe2, 0x60, 0x3a, 0xa4, - 0x34, 0xf7, 0x68, 0x1d, 0x06, 0xd9, 0xa1, 0x70, 0x4a, 0x91, 0xd9, 0xcb, 0xbd, 0x33, 0xb5, 0x93, - 0x95, 0xb4, 0xca, 0x1c, 0xe5, 0x2a, 0xb5, 0xb7, 0x15, 0x17, 0x05, 0xfd, 0x13, 0x46, 0x5a, 0x66, - 0x27, 0x37, 0x07, 0xfe, 0x76, 0x08, 0xd0, 0xf4, 0x3b, 0x6f, 0x8e, 0xdc, 0x8a, 0x87, 0xae, 0x42, - 0x68, 0x6e, 0x55, 0xb1, 0xad, 0x3a, 0xd3, 0x85, 0x18, 0x66, 0xc5, 0x1a, 0xed, 0x40, 0xbf, 0x63, - 0xe0, 0x2d, 0x2f, 0xbf, 0xc2, 0xcc, 0xda, 0x91, 0xb4, 0x35, 0x9c, 0xe1, 0x8f, 0xd1, 0x70, 0x46, - 0x3e, 0xa8, 0xe1, 0x5c, 0x87, 0xa1, 0x12, 0xa6, 0xac, 0x6d, 0xb8, 0xad, 0xab, 0xbf, 0xa6, 0xa3, - 0x1c, 0x2b, 0xf1, 0x0d, 0x5a, 0x81, 0xd0, 0x4d, 0x4a, 0x82, 0xa9, 0xdb, 0x18, 0x0e, 0xd5, 0x68, - 0xc2, 0xdc, 0x3d, 0x8b, 0x69, 0xf4, 0x2a, 0x8c, 0xb4, 0xdc, 0xa6, 0x93, 0x65, 0x9b, 0x78, 0xdb, - 0xcd, 0x48, 0x67, 0x89, 0x4e, 0xc0, 0xc1, 0xba, 0x56, 0xae, 0x79, 0xc9, 0xc8, 0x37, 0x73, 0xbe, - 0x2b, 0x20, 0x7a, 0x0d, 0x0a, 0x9d, 0x77, 0x76, 0x18, 0xff, 0x95, 0x40, 0x68, 0x50, 0x08, 0x26, - 0x1e, 0x01, 0x38, 0xd4, 0x9a, 0x0b, 0xe8, 0x3a, 0x1c, 0x34, 0x28, 0xae, 0x10, 0x91, 0x77, 0xd0, - 0x99, 0xfe, 0x53, 0x48, 0xe1, 0x8e, 0xe8, 0x02, 0x0c, 0xf2, 0xd9, 0x59, 0xf4, 0x31, 0x08, 0xb1, - 0x03, 0x42, 0x76, 0x94, 0xec, 0x48, 0x5d, 0xbb, 0xc4, 0x26, 0x1c, 0x5e, 0x60, 0x8d, 0xee, 0xe8, - 0x83, 0xc0, 0x34, 0x14, 0x8a, 0x9a, 0x51, 0x56, 0x8d, 0x62, 0xb3, 0x21, 0xb2, 0x62, 0x0d, 0x29, - 0x23, 0x8e, 0x7c, 0xb9, 0xe8, 0x35, 0xba, 0x99, 0x5f, 0x01, 0x3c, 0xd9, 0x75, 0x04, 0x40, 0x51, - 0x38, 0xb6, 0x24, 0xe7, 0x54, 0x25, 0x7b, 0x4b, 0x5d, 0xdc, 0x50, 0xd6, 0xd2, 0x39, 0x75, 0x41, - 0x5e, 0x4c, 0xdf, 0x5e, 0xcd, 0x09, 0x03, 0xe8, 0x4f, 0x70, 0xbc, 0x43, 0xb7, 0xb8, 0xa1, 0xa8, - 0x19, 0x45, 0x4e, 0xe7, 0x64, 0x01, 0xa0, 0x18, 0x8c, 0x76, 0x51, 0x2b, 0xf2, 0xad, 0xd5, 0x74, - 0x46, 0x16, 0x7c, 0x68, 0x1c, 0x9e, 0xec, 0xd0, 0x67, 0x73, 0xe9, 0xdc, 0xed, 0xac, 0xe0, 0x47, - 0xa7, 0xe0, 0x1f, 0x3a, 0x54, 0x8a, 0x9c, 0x5e, 0x10, 0x02, 0x68, 0x12, 0xc6, 0xf7, 0x29, 0x16, - 0x65, 0x45, 0x59, 0x5e, 0x5f, 0x52, 0x37, 0xe6, 0x57, 0xe4, 0x4c, 0x2e, 0x2b, 0x0c, 0x76, 0xb1, - 0x9a, 0x57, 0x36, 0x6e, 0xca, 0xeb, 0xdc, 0x58, 0x5e, 0xcf, 0xc8, 0x59, 0x21, 0x38, 0xdb, 0x08, - 0x41, 0x7f, 0xfa, 0xd6, 0x32, 0x7a, 0x01, 0x60, 0x90, 0x4f, 0x26, 0xa8, 0xdf, 0xd9, 0x25, 0x3a, - 0x7d, 0xb0, 0xa1, 0x3b, 0xce, 0x3d, 0x68, 0x3c, 0x15, 0x53, 0xc5, 0xbf, 0x3e, 0xd4, 0x93, 0x04, - 0xeb, 0x35, 0x1b, 0x57, 0x30, 0xb9, 0x9f, 0xcc, 0x6b, 0xc4, 0xd0, 0x93, 0x35, 0x82, 0xed, 0xf3, - 0x75, 0x4c, 0x92, 0x86, 0x99, 0xac, 0x62, 0xba, 0x65, 0xda, 0x9b, 0xc9, 0x2d, 0xdb, 0xa0, 0xf8, - 0xd1, 0x8f, 0xbf, 0xfc, 0xdf, 0x77, 0x25, 0x71, 0xc9, 0xfd, 0x93, 0x99, 0x6a, 0x5e, 0x33, 0x49, - 0xfd, 0xdb, 0x2b, 0x79, 0xa9, 0x29, 0xdc, 0x69, 0xf9, 0xf3, 0x46, 0xe6, 0xc0, 0x0c, 0xfa, 0x1e, - 0x40, 0xff, 0x12, 0xa6, 0x68, 0xf2, 0x80, 0x79, 0x8f, 0x53, 0x99, 0xea, 0x6b, 0x2a, 0x4c, 0xd8, - 0xcf, 0xbe, 0xf1, 0x81, 0xc6, 0x53, 0xf1, 0x62, 0x77, 0x2e, 0x15, 0xb3, 0x6a, 0x50, 0x73, 0x1f, - 0x1d, 0x1b, 0x6b, 0x05, 0xc6, 0xe6, 0x12, 0xba, 0xd8, 0x8d, 0x4d, 0x77, 0x12, 0x5c, 0xbe, 0x83, - 0xbe, 0x03, 0x30, 0xe0, 0x54, 0x14, 0x9a, 0x3a, 0xa8, 0xe2, 0x38, 0x95, 0xb3, 0xfd, 0x15, 0x66, - 0x62, 0xf3, 0xc3, 0xb8, 0x9c, 0x47, 0x33, 0xfd, 0x73, 0x41, 0x0d, 0x00, 0x8f, 0xb9, 0xd3, 0x2a, - 0xea, 0x7b, 0xa0, 0x8d, 0x9e, 0xeb, 0xc3, 0xd2, 0x65, 0xf3, 0x5f, 0x70, 0xd4, 0x14, 0xbb, 0x11, - 0xcd, 0x1c, 0x21, 0xc5, 0x3a, 0x0c, 0x76, 0x9c, 0x94, 0xfb, 0x16, 0xc0, 0x20, 0x6f, 0x57, 0xef, - 0xab, 0xa1, 0xb6, 0x86, 0x16, 0x1d, 0x93, 0xf8, 0x67, 0x0c, 0xc9, 0xfb, 0x8c, 0x21, 0xc9, 0x15, - 0x8b, 0x6e, 0x27, 0xcc, 0xa3, 0xd2, 0xb9, 0x3c, 0x73, 0xf8, 0x1c, 0x9b, 0x03, 0x33, 0xd1, 0x7b, - 0x4f, 0x76, 0x81, 0xef, 0x87, 0x5d, 0x70, 0xba, 0x67, 0xe0, 0xfc, 0x4d, 0xf5, 0x6a, 0x17, 0x80, - 0xc6, 0x2e, 0x98, 0xea, 0xeb, 0xb5, 0xf6, 0xe8, 0x85, 0xe8, 0x13, 0xc0, 0xfc, 0x63, 0xf0, 0xfc, - 0xda, 0x60, 0x46, 0xb9, 0xbd, 0xb0, 0xfa, 0xf2, 0x75, 0x6c, 0xe0, 0xd5, 0xeb, 0xd8, 0xc0, 0xdb, - 0xd7, 0x31, 0xf0, 0x9f, 0x46, 0x0c, 0x7c, 0xd9, 0x88, 0x81, 0x67, 0x8d, 0x18, 0x78, 0xd9, 0x88, - 0x81, 0x9f, 0x1b, 0x31, 0xf0, 0xa6, 0x11, 0x1b, 0x78, 0xdb, 0x88, 0x81, 0xc7, 0x7b, 0xb1, 0x81, - 0x27, 0x7b, 0x31, 0xf0, 0x72, 0x2f, 0x36, 0xf0, 0x6a, 0x2f, 0x36, 0x70, 0x6f, 0xbd, 0x64, 0x5a, - 0x9b, 0x25, 0xa9, 0x6e, 0x3a, 0xa3, 0xa2, 0xad, 0x49, 0x35, 0x92, 0x62, 0x0b, 0xe7, 0x8f, 0x52, - 0xd2, 0xb2, 0xcd, 0xba, 0x51, 0xc0, 0x76, 0xd2, 0x53, 0xa7, 0xac, 0x7c, 0xc9, 0x4c, 0xe1, 0x87, - 0xd4, 0xfd, 0xf4, 0xb1, 0xef, 0xfb, 0x4e, 0x3e, 0xc8, 0xce, 0xfb, 0xd2, 0xef, 0x01, 0x00, 0x00, - 0xff, 0xff, 0xb5, 0x42, 0x6e, 0x2e, 0xdc, 0x12, 0x00, 0x00, + // 1642 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1b, 0x4f, + 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0xff, 0xe1, 0xdf, 0xd4, 0x31, 0xc1, 0x35, 0x6e, + 0x52, 0xd2, 0xa8, 0x5e, 0x97, 0x54, 0x54, 0x6d, 0x40, 0xa5, 0x8e, 0xb3, 0x49, 0x93, 0xe6, 0xa3, + 0x5a, 0xbb, 0x55, 0x55, 0x09, 0xad, 0xd6, 0xbb, 0x63, 0x77, 0x89, 0xbd, 0xbb, 0xec, 0x8c, 0x9d, + 0x46, 0x28, 0x52, 0x15, 0x89, 0x1b, 0x88, 0x4a, 0xbd, 0x20, 0x84, 0x04, 0x17, 0x24, 0xc4, 0x99, + 0x03, 0x52, 0x2e, 0xbd, 0x51, 0xf5, 0x80, 0x2a, 0xb8, 0x94, 0x0b, 0xa2, 0x4e, 0x0f, 0xbd, 0x20, + 0x55, 0x1c, 0x38, 0xff, 0xb5, 0x33, 0xbb, 0xae, 0xed, 0xd8, 0x89, 0xd3, 0x8f, 0x93, 0x67, 0xde, + 0xc7, 0x6f, 0xdf, 0x6f, 0xe6, 0xbd, 0xb7, 0xcf, 0x0b, 0x33, 0x0d, 0x4c, 0x44, 0xc3, 0xca, 0x12, + 0xed, 0x11, 0xae, 0xa9, 0x59, 0xad, 0x6a, 0xd5, 0x75, 0xa5, 0x6a, 0x98, 0xdb, 0x59, 0xbb, 0x5e, + 0xaa, 0x1a, 0x9a, 0xa2, 0x39, 0x75, 0x5d, 0xb5, 0x0d, 0xd1, 0x76, 0x2c, 0x6a, 0xa1, 0x38, 0x37, + 0x17, 0xb9, 0xb9, 0xf8, 0xc1, 0x3c, 0x91, 0xa9, 0x18, 0xf4, 0x51, 0xbd, 0x24, 0x6a, 0x56, 0x2d, + 0x5b, 0xb1, 0x2a, 0x56, 0x96, 0x39, 0x94, 0xea, 0x65, 0xb6, 0x63, 0x1b, 0xb6, 0xe2, 0x40, 0x89, + 0xa9, 0x8a, 0x65, 0x55, 0xaa, 0x38, 0xab, 0xda, 0x46, 0x56, 0x35, 0x4d, 0x8b, 0xaa, 0xd4, 0xb0, + 0x4c, 0xe2, 0x69, 0xbf, 0xed, 0x69, 0x5b, 0x18, 0xb8, 0x66, 0xd3, 0x5d, 0x4f, 0x39, 0xd3, 0x37, + 0x64, 0xab, 0xf4, 0x53, 0xac, 0x51, 0xcf, 0x6c, 0xba, 0xaf, 0x19, 0xdd, 0xb5, 0xb1, 0xff, 0xa4, + 0x44, 0xa7, 0x15, 0x76, 0x1c, 0xcb, 0x69, 0x45, 0xd1, 0xa9, 0xb3, 0xec, 0xf6, 0x10, 0x27, 0x3b, + 0x95, 0xed, 0x98, 0x53, 0x9d, 0xaa, 0x86, 0x5a, 0x35, 0x74, 0x95, 0x62, 0x4f, 0x9b, 0xee, 0xd2, + 0x62, 0x82, 0xcd, 0x46, 0x17, 0x78, 0xaa, 0xcb, 0xc6, 0xc0, 0x3b, 0x4a, 0xa7, 0xc5, 0xf9, 0xa3, + 0x16, 0xa4, 0x3d, 0x88, 0xf4, 0x9f, 0x01, 0x1c, 0xcd, 0x3b, 0x58, 0xa5, 0x58, 0xc6, 0x3f, 0xab, + 0x63, 0x42, 0xd1, 0x8f, 0x61, 0xa4, 0x86, 0xa9, 0xaa, 0xab, 0x54, 0x8d, 0x83, 0x14, 0x98, 0x8d, + 0xcd, 0x5f, 0x10, 0x3b, 0xaf, 0x73, 0x8b, 0x9d, 0x1f, 0xf7, 0xda, 0xc0, 0x54, 0x2d, 0xee, 0xda, + 0x58, 0x6e, 0x39, 0xa1, 0x0d, 0x18, 0x22, 0x36, 0xd6, 0xe2, 0x01, 0xe6, 0x3c, 0x2b, 0xf6, 0xcb, + 0x05, 0x91, 0x23, 0x14, 0x6c, 0xac, 0xb9, 0x08, 0x8b, 0xe3, 0xbf, 0xdd, 0x1b, 0x71, 0x1d, 0xc5, + 0x8a, 0xa6, 0xb8, 0xbf, 0x32, 0x83, 0x59, 0x88, 0xbe, 0xbc, 0x19, 0xe6, 0x4f, 0x4c, 0xff, 0x1f, + 0xc0, 0x31, 0x3f, 0x58, 0x62, 0x5b, 0x26, 0xc1, 0xe8, 0x47, 0x47, 0xa2, 0x4d, 0xf5, 0x8c, 0x76, + 0x05, 0xd3, 0x1e, 0xa1, 0x6e, 0xc1, 0x71, 0xb2, 0x4b, 0x28, 0xae, 0x29, 0x2d, 0x90, 0x20, 0x03, + 0xb9, 0xd8, 0x05, 0x52, 0x60, 0x56, 0x47, 0xa1, 0xc6, 0xb8, 0xfb, 0x86, 0x0f, 0xb8, 0xd6, 0xc1, + 0x7d, 0xa6, 0x3f, 0xf7, 0x15, 0x4c, 0x4f, 0x41, 0xfc, 0xdf, 0x00, 0x8e, 0xc9, 0xd8, 0xae, 0xaa, + 0x5a, 0xeb, 0x9a, 0x6e, 0x1d, 0x21, 0x3e, 0xdd, 0x93, 0xb8, 0xe7, 0xd6, 0x83, 0xfc, 0x66, 0x47, + 0xac, 0x97, 0xfa, 0xc7, 0xea, 0x41, 0x9c, 0x10, 0x2f, 0xca, 0x42, 0xc1, 0xc1, 0xc4, 0xaa, 0x3b, + 0x1a, 0x56, 0x1a, 0xd8, 0x21, 0x86, 0x65, 0xb2, 0xd3, 0x8c, 0x2e, 0x86, 0xde, 0x1d, 0x00, 0x20, + 0x8f, 0xfb, 0xda, 0xfb, 0x5c, 0xd9, 0x4e, 0xf0, 0x2b, 0x38, 0xde, 0xe2, 0xc7, 0x6f, 0x36, 0xfd, + 0x1b, 0x00, 0xe1, 0x0a, 0xa6, 0x3e, 0xdf, 0x29, 0x18, 0x35, 0xd5, 0x1a, 0x26, 0xb6, 0xaa, 0x61, + 0x46, 0x38, 0x2a, 0x7f, 0x10, 0x20, 0x04, 0x43, 0xee, 0x86, 0x71, 0x89, 0xca, 0x6c, 0x8d, 0x1e, + 0x40, 0xf7, 0x89, 0x0c, 0x4c, 0x29, 0x5b, 0x4e, 0x4d, 0xa5, 0x2c, 0x9c, 0xb1, 0xf9, 0xec, 0xb1, + 0xd7, 0xe2, 0x07, 0xb0, 0xcc, 0x5c, 0xf2, 0x96, 0x8e, 0xe5, 0x31, 0xa7, 0x43, 0x96, 0xfe, 0x45, + 0x18, 0xc6, 0xda, 0x2c, 0xd1, 0x6d, 0x18, 0xd3, 0x58, 0x5a, 0xb2, 0xe7, 0x78, 0x07, 0xfa, 0xbd, + 0x93, 0x12, 0xdf, 0x63, 0x26, 0x43, 0xee, 0xeb, 0x62, 0xa3, 0x3b, 0x70, 0xc4, 0xe1, 0xe7, 0xc0, + 0xa1, 0x82, 0x27, 0xd5, 0x50, 0x67, 0x56, 0xc8, 0x31, 0xcf, 0x9b, 0x81, 0xf5, 0xba, 0x90, 0xd0, + 0x31, 0x17, 0xd2, 0x51, 0x4c, 0xc3, 0x9f, 0xa3, 0x98, 0xce, 0x7c, 0x96, 0x62, 0x0a, 0x7f, 0x7a, + 0x31, 0x21, 0x09, 0x86, 0x09, 0x55, 0x69, 0x9d, 0xc4, 0xff, 0xf0, 0x3b, 0x90, 0x0a, 0xf6, 0x88, + 0xaa, 0x0d, 0xaf, 0xc0, 0x2c, 0x79, 0x80, 0x8b, 0xc1, 0xe7, 0x7b, 0x40, 0xf6, 0x9c, 0xd1, 0x2a, + 0xfc, 0xca, 0xc1, 0x65, 0xec, 0x38, 0x86, 0x59, 0x51, 0xf8, 0x7b, 0x84, 0xc4, 0x23, 0x0c, 0x6f, + 0xaa, 0x4f, 0xf9, 0x95, 0x19, 0x37, 0xa1, 0xe5, 0xc6, 0xe5, 0x04, 0xdd, 0x87, 0x71, 0x1d, 0x57, + 0x31, 0xc5, 0xba, 0xc2, 0x75, 0x58, 0x6f, 0x21, 0x46, 0x07, 0x40, 0x9c, 0xf0, 0xbc, 0x65, 0xcf, + 0xd9, 0xc7, 0x7d, 0x00, 0x27, 0x75, 0x83, 0xa8, 0xa5, 0x6a, 0x2f, 0x60, 0x38, 0x00, 0xf0, 0x39, + 0xdf, 0xbd, 0x0b, 0xb9, 0xad, 0x5e, 0xd7, 0x42, 0x11, 0x20, 0x04, 0xd2, 0x7f, 0x04, 0x30, 0xb6, + 0x6e, 0x90, 0x01, 0x6b, 0xf4, 0xbb, 0x70, 0xa4, 0xaa, 0x96, 0x70, 0x55, 0x29, 0x1b, 0x55, 0x8a, + 0x1d, 0xaf, 0x56, 0x63, 0x4c, 0xb6, 0xcc, 0x44, 0xe8, 0x02, 0x1c, 0x75, 0xb0, 0x6d, 0x39, 0x54, + 0x29, 0x1b, 0xb8, 0xaa, 0x93, 0x78, 0x30, 0x15, 0x9c, 0x8d, 0xca, 0x23, 0x5c, 0xb8, 0xcc, 0x64, + 0xe8, 0x0a, 0xfc, 0xda, 0x33, 0xe2, 0x97, 0xe2, 0xdb, 0x86, 0x98, 0x2d, 0xe2, 0x3a, 0x7e, 0x85, + 0xdc, 0x23, 0xfd, 0x97, 0x30, 0x14, 0x78, 0x9c, 0xbc, 0x60, 0x57, 0x29, 0xae, 0xa1, 0x09, 0x18, + 0xa6, 0xd8, 0x54, 0x4d, 0xca, 0xf2, 0x2b, 0x2a, 0x7b, 0xbb, 0x8f, 0x68, 0x34, 0x02, 0x0c, 0xd6, + 0x0d, 0x9d, 0xf7, 0x3a, 0xd9, 0x5d, 0xa2, 0x14, 0x8c, 0xe9, 0x98, 0x68, 0x8e, 0xc1, 0x5e, 0xc6, + 0xf1, 0x18, 0x67, 0xda, 0x26, 0x42, 0x09, 0x18, 0xf1, 0x8f, 0x39, 0x3e, 0x92, 0x02, 0xb3, 0x11, + 0xb9, 0xb5, 0x47, 0x9b, 0x30, 0xcc, 0x0e, 0x85, 0x53, 0x8a, 0xcd, 0x5f, 0xeb, 0x9f, 0xa9, 0xdd, + 0xac, 0xc4, 0x75, 0xe6, 0x28, 0x99, 0xd4, 0xd9, 0x95, 0x3d, 0x14, 0xf4, 0x13, 0x18, 0x6b, 0x9b, + 0x9d, 0xbc, 0x1c, 0xf8, 0xe1, 0x29, 0x40, 0x73, 0x1f, 0xbc, 0x39, 0x72, 0x3b, 0x1e, 0xba, 0x01, + 0xa1, 0xb5, 0x63, 0x62, 0x47, 0x71, 0xa7, 0x8b, 0x78, 0x94, 0x15, 0x6b, 0xa2, 0x0b, 0xfd, 0xbe, + 0x81, 0x77, 0xfc, 0xfc, 0x8a, 0x32, 0x6b, 0x57, 0xd2, 0xd1, 0x70, 0x46, 0x3f, 0x47, 0xc3, 0x19, + 0xfb, 0xa4, 0x86, 0x73, 0x0b, 0x46, 0x2a, 0x98, 0xb2, 0xb6, 0xe1, 0xb5, 0xae, 0xc1, 0x9a, 0x8e, + 0x7c, 0xa6, 0xc2, 0x37, 0x68, 0x0d, 0x42, 0x2f, 0x29, 0x09, 0xa6, 0x5e, 0x63, 0x38, 0x55, 0xa3, + 0x89, 0x72, 0xf7, 0x02, 0xa6, 0x89, 0x1b, 0x30, 0xd6, 0x76, 0x9b, 0x6e, 0x96, 0x6d, 0xe3, 0x5d, + 0x2f, 0x23, 0xdd, 0x25, 0xfa, 0x1a, 0x0e, 0x37, 0xd4, 0x6a, 0xdd, 0x4f, 0x46, 0xbe, 0x59, 0x08, + 0x5c, 0x07, 0x89, 0x9b, 0x50, 0xe8, 0xbe, 0xb3, 0xd3, 0xf8, 0xaf, 0x85, 0x22, 0xc3, 0x42, 0x38, + 0xbd, 0x0f, 0xe0, 0x48, 0x7b, 0x2e, 0xa0, 0x5b, 0x70, 0xd8, 0xa0, 0xb8, 0x46, 0xe2, 0xbc, 0x83, + 0xce, 0x0d, 0x9e, 0x42, 0x32, 0x77, 0x44, 0x57, 0x60, 0x98, 0xcf, 0xce, 0xf1, 0x00, 0x83, 0x88, + 0x77, 0x41, 0x48, 0xae, 0x92, 0x1d, 0xa9, 0x67, 0x97, 0xde, 0x86, 0xa3, 0x4b, 0xac, 0xd1, 0x7d, + 0xfc, 0x20, 0x30, 0x0b, 0x85, 0xb2, 0x6a, 0x54, 0x15, 0xa3, 0xdc, 0x6a, 0x88, 0xac, 0x58, 0x23, + 0xf2, 0x98, 0x2b, 0x5f, 0x2d, 0xfb, 0x8d, 0x6e, 0xee, 0x7f, 0x00, 0x9e, 0xed, 0x39, 0x02, 0xa0, + 0x04, 0x9c, 0x58, 0x91, 0x8a, 0x8a, 0x5c, 0xb8, 0xab, 0x2c, 0x6f, 0xc9, 0x1b, 0xb9, 0xa2, 0xb2, + 0x24, 0x2d, 0xe7, 0xee, 0xad, 0x17, 0x85, 0x21, 0xf4, 0x1d, 0x38, 0xd9, 0xa5, 0x5b, 0xde, 0x92, + 0x95, 0xbc, 0x2c, 0xe5, 0x8a, 0x92, 0x00, 0x50, 0x12, 0x26, 0x7a, 0xa8, 0x65, 0xe9, 0xee, 0x7a, + 0x2e, 0x2f, 0x09, 0x01, 0x34, 0x09, 0xcf, 0x76, 0xe9, 0x0b, 0xc5, 0x5c, 0xf1, 0x5e, 0x41, 0x08, + 0xa2, 0x73, 0xf0, 0x5b, 0x5d, 0x2a, 0x59, 0xca, 0x2d, 0x09, 0x21, 0x34, 0x0d, 0x53, 0x47, 0x14, + 0xcb, 0x92, 0x2c, 0xaf, 0x6e, 0xae, 0x28, 0x5b, 0x8b, 0x6b, 0x52, 0xbe, 0x58, 0x10, 0x86, 0x7b, + 0x58, 0x2d, 0xca, 0x5b, 0x77, 0xa4, 0x4d, 0x6e, 0x2c, 0x6d, 0xe6, 0xa5, 0x82, 0x10, 0x9e, 0xdf, + 0x87, 0x30, 0x98, 0xbb, 0xbb, 0x8a, 0xfe, 0x0b, 0x60, 0x98, 0x4f, 0x26, 0x68, 0xd0, 0xd9, 0x25, + 0x31, 0x7b, 0xb2, 0xa1, 0x37, 0xce, 0xfd, 0x1a, 0x34, 0xff, 0x16, 0xdf, 0x28, 0xff, 0xe0, 0xb1, + 0x96, 0x21, 0x58, 0xab, 0x3b, 0xb8, 0x86, 0xc9, 0xa3, 0x4c, 0x49, 0x25, 0x86, 0x96, 0xa9, 0x13, + 0xec, 0x5c, 0xee, 0x56, 0x11, 0xaa, 0x9a, 0xba, 0xea, 0xe8, 0x5c, 0xdb, 0xc0, 0x24, 0x63, 0x58, + 0x19, 0x13, 0xd3, 0x1d, 0xcb, 0xd9, 0xce, 0xec, 0x38, 0x06, 0xc5, 0xfb, 0xff, 0x7c, 0xfb, 0x2c, + 0x70, 0x3d, 0x7d, 0xd5, 0xfb, 0x0f, 0x9a, 0x6d, 0x65, 0x01, 0xc9, 0xfe, 0xdc, 0xef, 0x08, 0x62, + 0x4b, 0xb8, 0xd7, 0xf6, 0xdf, 0x8e, 0x2c, 0x80, 0x39, 0xf4, 0x0e, 0xc0, 0xe0, 0x0a, 0xa6, 0x68, + 0xfa, 0x84, 0x71, 0x90, 0x33, 0x9d, 0x19, 0x68, 0x68, 0x4c, 0x3f, 0x03, 0x2f, 0xfe, 0x1a, 0x70, + 0xa9, 0xca, 0xbd, 0xa9, 0xd6, 0x2c, 0xd3, 0xa0, 0xd6, 0x31, 0x6c, 0x7d, 0x83, 0x2e, 0xc2, 0x0e, + 0x56, 0x75, 0xc6, 0xf7, 0x2a, 0xfa, 0x7e, 0x2f, 0xbe, 0xbd, 0x69, 0x72, 0xf9, 0x1e, 0x7a, 0x0b, + 0x60, 0xc8, 0x2d, 0x49, 0x34, 0x73, 0x52, 0xc9, 0x72, 0xb2, 0x17, 0x07, 0xab, 0xec, 0xf4, 0x2f, + 0xbf, 0x34, 0xdb, 0xcb, 0x68, 0x6e, 0x70, 0xb6, 0xe8, 0x49, 0x00, 0x9e, 0xf1, 0x06, 0x62, 0x34, + 0xf0, 0xcc, 0x9c, 0xb8, 0x34, 0x80, 0xa5, 0xc7, 0xf7, 0xf7, 0x5f, 0x28, 0x89, 0x6f, 0x27, 0xf2, + 0x1f, 0x91, 0xc4, 0x5d, 0x06, 0x7b, 0x6e, 0x52, 0xff, 0x0b, 0xc0, 0x30, 0xef, 0x97, 0xc7, 0x15, + 0x71, 0x47, 0x47, 0x4d, 0x4c, 0x88, 0xfc, 0x3b, 0x8a, 0xe8, 0x7f, 0x47, 0x11, 0xa5, 0x9a, 0x4d, + 0x77, 0xd3, 0xbf, 0xfa, 0x42, 0x6c, 0xaf, 0xcd, 0x9d, 0x3e, 0x85, 0x17, 0xc0, 0x5c, 0xe2, 0xe1, + 0xf3, 0x03, 0x10, 0xf8, 0xc7, 0x01, 0x38, 0xdf, 0x97, 0x17, 0x7f, 0x93, 0xbe, 0x3e, 0x00, 0xa0, + 0x79, 0x00, 0x66, 0x06, 0x7a, 0xed, 0xee, 0xff, 0x3d, 0x1e, 0x10, 0xc0, 0xe2, 0x53, 0xf0, 0xf2, + 0xe6, 0x70, 0x5e, 0xbe, 0xb7, 0xb4, 0xfe, 0xea, 0x4d, 0x72, 0xe8, 0xf5, 0x9b, 0xe4, 0xd0, 0xfb, + 0x37, 0x49, 0xf0, 0xa4, 0x99, 0x04, 0x7f, 0x6a, 0x26, 0xc1, 0x8b, 0x66, 0x12, 0xbc, 0x6a, 0x26, + 0xc1, 0x7f, 0x9a, 0x49, 0xf0, 0xae, 0x99, 0x1c, 0x7a, 0xdf, 0x4c, 0x82, 0xa7, 0x87, 0xc9, 0xa1, + 0xe7, 0x87, 0x49, 0xf0, 0xea, 0x30, 0x39, 0xf4, 0xfa, 0x30, 0x39, 0xf4, 0x70, 0xb3, 0x62, 0xd9, + 0xdb, 0x15, 0xb1, 0x61, 0xb9, 0xa3, 0xac, 0xa3, 0x8a, 0x75, 0x92, 0x65, 0x0b, 0xf7, 0x8f, 0x5c, + 0xc6, 0x76, 0xac, 0x86, 0xa1, 0x63, 0x27, 0xe3, 0xab, 0xb3, 0x76, 0xa9, 0x62, 0x65, 0xf1, 0x63, + 0xea, 0x7d, 0x9a, 0x39, 0xf2, 0xfd, 0xa9, 0x14, 0x66, 0xd7, 0x71, 0xf5, 0x9b, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x8b, 0x40, 0x23, 0x49, 0x7c, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/cloud_link/public_crudapi.vesapi.go b/pbgo/extschema/schema/cloud_link/public_crudapi.vesapi.go index 64a235c96..42556b88c 100644 --- a/pbgo/extschema/schema/cloud_link/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/cloud_link/public_crudapi.vesapi.go @@ -3964,10 +3964,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4024,10 +4028,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4086,10 +4094,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cloud_link/public_custom_api.pb.go b/pbgo/extschema/schema/cloud_link/public_custom_api.pb.go index 60fdcd3bc..c66e817be 100644 --- a/pbgo/extschema/schema/cloud_link/public_custom_api.pb.go +++ b/pbgo/extschema/schema/cloud_link/public_custom_api.pb.go @@ -146,38 +146,39 @@ func init() { } var fileDescriptor_cc9d11a2d081fbcb = []byte{ - // 492 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x31, 0x8b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0xa2, 0x08, 0x2e, 0x1c, 0x48, 0x50, 0x8c, 0xf1, 0x98, 0x93, 0x54, 0x72, 0xb8, - 0x3b, 0xa2, 0xd8, 0x68, 0xa3, 0x9e, 0x8d, 0x8d, 0x4a, 0x4a, 0x9b, 0x30, 0x3b, 0x79, 0xd9, 0x8c, - 0xd9, 0xdd, 0x37, 0xce, 0x9b, 0xdd, 0x5c, 0x10, 0x41, 0xae, 0xb2, 0x14, 0xfc, 0x12, 0x16, 0x7e, - 0x83, 0x6b, 0xae, 0xd3, 0x4a, 0x82, 0x36, 0x57, 0x9a, 0x8d, 0x85, 0x60, 0x73, 0x1f, 0x41, 0x6e, - 0x37, 0x87, 0x49, 0xf4, 0xc0, 0xee, 0x0d, 0xbf, 0xff, 0x7f, 0xde, 0x7f, 0xdf, 0xbe, 0xf1, 0x6f, - 0x16, 0x40, 0xa1, 0x46, 0x41, 0x6a, 0x08, 0xa9, 0x14, 0x2a, 0xc1, 0xbc, 0xdf, 0x4b, 0x74, 0x36, - 0x12, 0x26, 0x8f, 0x12, 0xad, 0x7a, 0x2a, 0x27, 0x87, 0x69, 0x4f, 0x1a, 0x1d, 0x1a, 0x8b, 0x0e, - 0x9b, 0xad, 0xda, 0x11, 0xd6, 0x8e, 0xf0, 0x8f, 0xa3, 0x1d, 0xc4, 0xda, 0x0d, 0xf3, 0x28, 0x54, - 0x98, 0x8a, 0x18, 0x63, 0x14, 0x95, 0x21, 0xca, 0x07, 0xd5, 0xa9, 0x3a, 0x54, 0x55, 0x7d, 0x51, - 0x7b, 0x33, 0x46, 0x8c, 0x13, 0x10, 0xd2, 0x68, 0x21, 0xb3, 0x0c, 0x9d, 0x74, 0x1a, 0x33, 0x5a, - 0xd0, 0xab, 0xab, 0xc1, 0xd0, 0x2c, 0xc3, 0x2b, 0xab, 0xd0, 0x4d, 0x0c, 0x9c, 0xa0, 0xcd, 0x55, - 0x54, 0xc8, 0x44, 0xf7, 0xa5, 0x83, 0x05, 0xed, 0xac, 0x51, 0x20, 0xc8, 0x8a, 0xb5, 0xcb, 0xb7, - 0xd6, 0x34, 0x1a, 0xc6, 0xb4, 0xdc, 0xa2, 0xb3, 0xed, 0x5f, 0xec, 0x82, 0x34, 0x26, 0x99, 0xec, - 0x60, 0x36, 0xd0, 0x71, 0x17, 0x5e, 0xe6, 0x40, 0xae, 0xd9, 0xf4, 0xcf, 0x66, 0x32, 0x85, 0x16, - 0xbb, 0xc6, 0xae, 0x9f, 0xef, 0x56, 0x75, 0xe7, 0xb2, 0x7f, 0x69, 0x4d, 0x4b, 0x06, 0x33, 0x82, - 0x5b, 0x1f, 0x1b, 0xfe, 0xc6, 0x4e, 0x35, 0xdb, 0x47, 0xd2, 0xc9, 0x07, 0xcf, 0x1e, 0x37, 0x7f, - 0x31, 0x7f, 0x63, 0x45, 0xdb, 0x0c, 0xc3, 0xd3, 0x66, 0x1d, 0xfe, 0x2b, 0x40, 0x5b, 0xfc, 0xb7, - 0xbe, 0x0e, 0xd1, 0x99, 0x94, 0x9f, 0x5a, 0x62, 0x70, 0x67, 0x57, 0x05, 0x04, 0x2a, 0xb7, 0x90, - 0x02, 0x0d, 0x83, 0x48, 0x92, 0x56, 0x41, 0x4e, 0x60, 0x6f, 0x14, 0x40, 0x81, 0xc6, 0x20, 0x03, - 0x37, 0x46, 0x3b, 0x0a, 0xc6, 0x56, 0x3b, 0xd8, 0xfb, 0xf6, 0xe3, 0x7d, 0xe3, 0x7e, 0xe7, 0xde, - 0x62, 0x41, 0xc4, 0xf1, 0x67, 0x92, 0x91, 0x0a, 0x48, 0xd0, 0x84, 0x1c, 0xa4, 0x4b, 0x4b, 0x44, - 0xe2, 0xd5, 0x31, 0x7e, 0x2d, 0x6c, 0xdd, 0xbe, 0xa7, 0xaa, 0xfe, 0x77, 0xd9, 0x76, 0x3b, 0x38, - 0xd8, 0x67, 0x67, 0xbe, 0xee, 0xb3, 0xad, 0x53, 0x23, 0x3f, 0x8d, 0x5e, 0x80, 0x72, 0x7b, 0x5f, - 0x5a, 0x8d, 0x0b, 0xec, 0xe1, 0x5b, 0x36, 0x9d, 0x71, 0xef, 0x70, 0xc6, 0xbd, 0xa3, 0x19, 0x67, - 0x6f, 0x4a, 0xce, 0x3e, 0x94, 0x9c, 0x7d, 0x2e, 0x39, 0x9b, 0x96, 0x9c, 0x7d, 0x2f, 0x39, 0xfb, - 0x59, 0x72, 0xef, 0xa8, 0xe4, 0xec, 0xdd, 0x9c, 0x7b, 0x07, 0x73, 0xce, 0xa6, 0x73, 0xee, 0x1d, - 0xce, 0xb9, 0xf7, 0xfc, 0x49, 0x8c, 0x66, 0x14, 0x87, 0x05, 0x26, 0x0e, 0xac, 0x95, 0x61, 0x4e, - 0xa2, 0x2a, 0x06, 0x68, 0xd3, 0xc0, 0x58, 0x2c, 0x74, 0x1f, 0x6c, 0x70, 0x82, 0x85, 0x89, 0x62, - 0x14, 0xb0, 0xeb, 0x16, 0xbf, 0xff, 0xaf, 0x87, 0x11, 0x9d, 0xab, 0xb6, 0xe0, 0xf6, 0xef, 0x00, - 0x00, 0x00, 0xff, 0xff, 0xf3, 0x68, 0x71, 0xb0, 0x3b, 0x03, 0x00, 0x00, + // 505 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x31, 0x8b, 0x13, 0x4f, + 0x18, 0xc6, 0x77, 0xf2, 0xff, 0x23, 0xb8, 0x70, 0x20, 0x41, 0x31, 0xc6, 0x63, 0xee, 0x48, 0x25, + 0x87, 0xbb, 0x23, 0x8a, 0x8d, 0x36, 0xea, 0xd9, 0xd8, 0x9c, 0x72, 0xa5, 0x4d, 0x98, 0x9d, 0xbc, + 0xd9, 0x8c, 0xd9, 0xdd, 0x77, 0x9c, 0x77, 0x76, 0x73, 0x41, 0x04, 0xb9, 0x4a, 0xb0, 0x11, 0x6c, + 0xfc, 0x08, 0x7e, 0x87, 0x6b, 0xae, 0xd3, 0x42, 0x24, 0x68, 0x73, 0xa5, 0xd9, 0x58, 0x58, 0xde, + 0x47, 0x90, 0xdb, 0xcd, 0x61, 0x12, 0x3d, 0xb0, 0x7b, 0x87, 0xdf, 0xf3, 0xcc, 0x3e, 0xfb, 0xf2, + 0x8c, 0x7f, 0xa3, 0x00, 0x0a, 0x35, 0x0a, 0x52, 0x03, 0x48, 0xa5, 0x50, 0x09, 0xe6, 0xbd, 0x6e, + 0xa2, 0xb3, 0xa1, 0x30, 0x79, 0x94, 0x68, 0xd5, 0x55, 0x39, 0x39, 0x4c, 0xbb, 0xd2, 0xe8, 0xd0, + 0x58, 0x74, 0xd8, 0x6c, 0xd5, 0x8e, 0xb0, 0x76, 0x84, 0xbf, 0x1d, 0xed, 0x20, 0xd6, 0x6e, 0x90, + 0x47, 0xa1, 0xc2, 0x54, 0xc4, 0x18, 0xa3, 0xa8, 0x0c, 0x51, 0xde, 0xaf, 0x4e, 0xd5, 0xa1, 0x9a, + 0xea, 0x8b, 0xda, 0xeb, 0x31, 0x62, 0x9c, 0x80, 0x90, 0x46, 0x0b, 0x99, 0x65, 0xe8, 0xa4, 0xd3, + 0x98, 0xd1, 0x9c, 0x5e, 0x5d, 0x0e, 0x86, 0x66, 0x11, 0x5e, 0x59, 0x86, 0x6e, 0x6c, 0xe0, 0x14, + 0xad, 0x2f, 0xa3, 0x42, 0x26, 0xba, 0x27, 0x1d, 0xcc, 0x69, 0x67, 0x85, 0x02, 0x41, 0x56, 0xac, + 0x5c, 0xbe, 0xb1, 0xa2, 0xd1, 0x30, 0xa2, 0xc5, 0x4f, 0x74, 0xb6, 0xfc, 0x8b, 0xbb, 0x20, 0x8d, + 0x49, 0xc6, 0xdb, 0x98, 0xf5, 0x75, 0xbc, 0x0b, 0xcf, 0x73, 0x20, 0xd7, 0x6c, 0xfa, 0xff, 0x67, + 0x32, 0x85, 0x16, 0xdb, 0x64, 0xd7, 0xce, 0xef, 0x56, 0x73, 0xe7, 0xb2, 0x7f, 0x69, 0x45, 0x4b, + 0x06, 0x33, 0x82, 0x9b, 0x9f, 0x1b, 0xfe, 0xda, 0x76, 0xb5, 0xdb, 0x87, 0xd2, 0xc9, 0xfb, 0x4f, + 0x1e, 0x35, 0xdf, 0x34, 0xfc, 0xb5, 0x25, 0x6d, 0x33, 0x0c, 0xcf, 0xda, 0x75, 0xf8, 0xb7, 0x00, + 0x6d, 0xf1, 0xcf, 0xfa, 0x3a, 0x44, 0xe7, 0x3d, 0x2b, 0x3f, 0xb6, 0x76, 0xfa, 0xb7, 0xf7, 0x54, + 0x40, 0xa0, 0x72, 0x0b, 0x29, 0xd0, 0x20, 0x88, 0x24, 0x69, 0x15, 0xe4, 0x04, 0xf6, 0xfa, 0xe6, + 0x2a, 0x23, 0x27, 0xb3, 0x9e, 0xb4, 0xbd, 0x1a, 0x17, 0x40, 0x81, 0xc6, 0x20, 0x03, 0x37, 0x42, + 0x3b, 0x0c, 0x46, 0x56, 0x3b, 0xd8, 0xff, 0xf6, 0xe3, 0x5d, 0xe3, 0x5e, 0xe7, 0xee, 0xbc, 0x40, + 0xe2, 0x64, 0x0d, 0x64, 0xa4, 0x02, 0x12, 0x34, 0x26, 0x07, 0xe9, 0x42, 0xc9, 0x48, 0xbc, 0x38, + 0xc1, 0x2f, 0x85, 0xad, 0xe3, 0x75, 0x55, 0x95, 0xef, 0x0e, 0xdb, 0x6a, 0x07, 0x87, 0x07, 0xec, + 0xbf, 0xaf, 0x07, 0x6c, 0xe3, 0xcc, 0x5f, 0x7a, 0x1c, 0x3d, 0x03, 0xe5, 0xf6, 0xbf, 0xb4, 0x1a, + 0x17, 0xd8, 0x83, 0xd7, 0x6c, 0x32, 0xe5, 0xde, 0xd1, 0x94, 0x7b, 0xc7, 0x53, 0xce, 0x5e, 0x95, + 0x9c, 0x7d, 0x28, 0x39, 0xfb, 0x54, 0x72, 0x36, 0x29, 0x39, 0xfb, 0x5e, 0x72, 0xf6, 0xb3, 0xe4, + 0xde, 0x71, 0xc9, 0xd9, 0xdb, 0x19, 0xf7, 0x0e, 0x67, 0x9c, 0x4d, 0x66, 0xdc, 0x3b, 0x9a, 0x71, + 0xef, 0xe9, 0x4e, 0x8c, 0x66, 0x18, 0x87, 0x05, 0x26, 0x0e, 0xac, 0x95, 0x61, 0x4e, 0xa2, 0x1a, + 0xfa, 0x68, 0xd3, 0xc0, 0x58, 0x2c, 0x74, 0x0f, 0x6c, 0x70, 0x8a, 0x85, 0x89, 0x62, 0x14, 0xb0, + 0xe7, 0xe6, 0xf5, 0xf8, 0xe3, 0xe1, 0x44, 0xe7, 0xaa, 0x96, 0xdc, 0xfa, 0x15, 0x00, 0x00, 0xff, + 0xff, 0xca, 0x23, 0xd7, 0xaf, 0x5b, 0x03, 0x00, 0x00, } func (this *ReapplyConfigRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/cloud_re_region/crudapi/api.vesapi.go b/pbgo/extschema/schema/cloud_re_region/crudapi/api.vesapi.go index 22d71bba8..292590f91 100644 --- a/pbgo/extschema/schema/cloud_re_region/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/cloud_re_region/crudapi/api.vesapi.go @@ -3362,10 +3362,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cluster/crudapi/api.vesapi.go b/pbgo/extschema/schema/cluster/crudapi/api.vesapi.go index 44a45b1ba..8b7529665 100644 --- a/pbgo/extschema/schema/cluster/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/cluster/crudapi/api.vesapi.go @@ -2786,8 +2786,9 @@ var APISwaggerJSON string = `{ "title": "GlobalSpecType", "x-displayname": "Global Configuration Specification", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", - "x-ves-oneof-field-lb_source_ip_persistance_choice": "[]", + "x-ves-oneof-field-lb_source_ip_persistance_choice": "[\"disable_lb_source_ip_persistance\",\"enable_lb_source_ip_persistance\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_type": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-proto-message": "ves.io.schema.cluster.GlobalSpecType", "properties": { "auto_http_config": { @@ -2823,6 +2824,18 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.map.max_pairs": "32" } }, + "disable_lb_source_ip_persistance": { + "description": "Exclusive with [enable_lb_source_ip_persistance]\n Disable LB source IP persistence", + "title": "disable_lb_source_ip_persistence", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable LB Source IP persistence" + }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "title": "disable_proxy_protocol", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "dns_discovery_type": { "description": " Specifies how DNS resolution has to be done on members of cluster", "title": "dns_discovery_type", @@ -2835,6 +2848,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/clusterDnsLookupType", "x-displayname": "DNS Lookup Family" }, + "enable_lb_source_ip_persistance": { + "description": "Exclusive with [disable_lb_source_ip_persistance]\n Enable LB source IP persistence", + "title": "enable_lb_source_ip_persistence", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable LB Source IP persistence" + }, "endpoint_selection": { "description": " Policy for selection of endpoints from local site or remote site or both", "title": "endpoint_selection", @@ -2873,12 +2892,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/clusterSubsetFallbackPolicy", "x-displayname": "Fallback Policy" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "title": "Header transformation", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "health_checks": { "type": "array", "description": " List of references to healthcheck object for this cluster.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 4\n", @@ -2895,7 +2908,7 @@ var APISwaggerJSON string = `{ "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", "title": "http1_config", - "$ref": "#/definitions/schemaEmpty", + "$ref": "#/definitions/clusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -2943,6 +2956,18 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "100" } }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol V1 for upstream connections", + "title": "proxy_protocol_v1", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol V2 for upstream connections", + "title": "proxy_protocol_v2", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proxy Protocol V2" + }, "tls_parameters": { "description": " TLS parameters to access upstream endpoints for this cluster", "title": "tls_parameters", @@ -2951,6 +2976,21 @@ var APISwaggerJSON string = `{ } } }, + "clusterHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for upstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.cluster.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to the upstream request headers and when a\n Stateful formatter is selected, it applies to response headers sent to the client.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on http load balancer. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "clusterHttp2ProtocolOptions": { "type": "object", "description": "Http2 Protocol options for upstream connections", @@ -3513,23 +3553,29 @@ var APISwaggerJSON string = `{ "title": "HeaderTransformationType", "x-displayname": "Header Transformation", "x-ves-displayorder": "1", - "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "Exclusive with [preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Default" }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Legacy" + }, "preserve_case_header_transformation": { - "description": "Exclusive with [default_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "Exclusive with [default_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Proper Case" @@ -3604,10 +3650,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4163,7 +4213,22 @@ var APISwaggerJSON string = `{ "description": "Reference to Root CA Certificate", "title": "Root CA Certificate", "x-displayname": "Root CA Certificate Reference", - "x-ves-proto-message": "ves.io.schema.TrustedCAList" + "x-ves-proto-message": "ves.io.schema.TrustedCAList", + "properties": { + "trusted_ca_list": { + "type": "array", + "description": " Reference to Root CA Certificate\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Root CA Certificate", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Root CA Certificate Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } }, "schemaUpstreamCertificateParamsType": { "type": "object", diff --git a/pbgo/extschema/schema/cluster/object.pb.go b/pbgo/extschema/schema/cluster/object.pb.go index beaed01b6..9f9aeee3c 100644 --- a/pbgo/extschema/schema/cluster/object.pb.go +++ b/pbgo/extschema/schema/cluster/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_f750cb46b73ee3a4 = []byte{ - // 581 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xc1, 0x6b, 0xd4, 0x4e, - 0x14, 0xc7, 0x33, 0xbb, 0x65, 0x5b, 0xa6, 0xa5, 0xbf, 0x92, 0x1f, 0x42, 0xac, 0x3a, 0xd6, 0x15, - 0xa1, 0x07, 0x33, 0x91, 0x16, 0xd1, 0x16, 0xe9, 0xa1, 0x15, 0x8a, 0xda, 0x22, 0x6c, 0x3d, 0x79, - 0x29, 0x93, 0xd9, 0xb7, 0x69, 0x34, 0xd9, 0x09, 0x33, 0x93, 0xd8, 0x3d, 0x08, 0x5e, 0xbd, 0xf9, - 0x37, 0x78, 0x12, 0xc1, 0xff, 0xc1, 0x7a, 0xf2, 0x58, 0x7a, 0xea, 0xd1, 0x66, 0x0f, 0x7a, 0xec, - 0xc9, 0xb3, 0x74, 0xb2, 0x59, 0xba, 0x4b, 0x04, 0xd9, 0xdb, 0x0c, 0xef, 0xf3, 0xfd, 0xe6, 0xbd, - 0x37, 0xef, 0x05, 0x37, 0x33, 0x50, 0x34, 0x14, 0x9e, 0xe2, 0x07, 0x10, 0x33, 0x8f, 0x47, 0xa9, - 0xd2, 0x20, 0x3d, 0xe1, 0xbf, 0x02, 0xae, 0x69, 0x22, 0x85, 0x16, 0xf6, 0x95, 0x82, 0xa1, 0x05, - 0x43, 0x07, 0xcc, 0xa2, 0x1b, 0x84, 0xfa, 0x20, 0xf5, 0x29, 0x17, 0xb1, 0x17, 0x88, 0x40, 0x78, - 0x86, 0xf6, 0xd3, 0x8e, 0xb9, 0x99, 0x8b, 0x39, 0x15, 0x2e, 0x8b, 0xb7, 0xaa, 0xbf, 0xa4, 0x7b, - 0x09, 0xa8, 0x01, 0x72, 0x6d, 0x14, 0x11, 0x89, 0x0e, 0x45, 0xb7, 0x0c, 0x5e, 0x1d, 0x0d, 0x5e, - 0xd6, 0x8d, 0x15, 0x91, 0x81, 0x82, 0x6e, 0x36, 0x2a, 0x6f, 0xfe, 0xae, 0xe3, 0xc6, 0x73, 0x53, - 0x95, 0xbd, 0x86, 0x67, 0x62, 0xd0, 0xac, 0xcd, 0x34, 0x73, 0xd0, 0x12, 0x5a, 0x9e, 0x5d, 0xb9, - 0x41, 0x47, 0x4b, 0x2c, 0xc0, 0x5d, 0xd0, 0xec, 0x45, 0x2f, 0x81, 0xd6, 0x10, 0xb7, 0x77, 0xf0, - 0x7f, 0xaa, 0xa7, 0x34, 0xc4, 0xfb, 0x43, 0x87, 0x9a, 0x71, 0xb8, 0x3d, 0xe6, 0xb0, 0x67, 0xa8, - 0x31, 0x9f, 0xf9, 0x42, 0xbb, 0x5b, 0xba, 0xad, 0xe2, 0x29, 0x95, 0x00, 0x77, 0xea, 0xc6, 0xe2, - 0x26, 0xad, 0xec, 0x33, 0xdd, 0x4b, 0x80, 0x1b, 0xb9, 0x81, 0xd7, 0xbf, 0xd4, 0xbe, 0x1d, 0x39, - 0xb5, 0x05, 0x74, 0x72, 0xe4, 0x7c, 0xac, 0xe1, 0x07, 0xb8, 0xbe, 0x0d, 0xda, 0xbe, 0xd7, 0xb9, - 0x7f, 0xc8, 0x5d, 0x05, 0x3c, 0x95, 0x10, 0x83, 0x3a, 0x70, 0x7d, 0xa6, 0x42, 0xee, 0xc6, 0xa2, - 0x1b, 0x6a, 0x21, 0xef, 0x2e, 0x65, 0xa0, 0xdc, 0x50, 0xb8, 0x89, 0x14, 0x87, 0x3d, 0x57, 0x02, - 0x6b, 0xe3, 0x35, 0x3c, 0xdd, 0x82, 0x24, 0x62, 0x1c, 0x6c, 0x5a, 0x2d, 0x4e, 0x15, 0x8c, 0x2b, - 0xdf, 0xc8, 0x50, 0x03, 0x7e, 0x88, 0x1b, 0x5b, 0x12, 0x98, 0x9e, 0x48, 0xf9, 0x18, 0x22, 0x98, - 0x48, 0x39, 0xb5, 0x13, 0xaa, 0x09, 0x0a, 0x6d, 0x3e, 0xc5, 0x33, 0x65, 0x07, 0xed, 0x0d, 0x3c, - 0x1d, 0xf0, 0x7d, 0xd3, 0xf3, 0xe2, 0xd9, 0xee, 0xfc, 0xa5, 0xe7, 0xdb, 0x91, 0xf0, 0x59, 0x34, - 0xec, 0x7c, 0x23, 0xe0, 0x17, 0xe7, 0xe6, 0x4f, 0x84, 0xe7, 0xf6, 0x34, 0xd3, 0xa9, 0xfa, 0xe7, - 0x51, 0x2a, 0xf0, 0x8a, 0x51, 0x7a, 0x82, 0x67, 0x8b, 0x2d, 0xdb, 0x97, 0xd0, 0x51, 0x4e, 0x6d, - 0xa9, 0xbe, 0x3c, 0xbb, 0x72, 0xbd, 0x72, 0x10, 0x5b, 0xd0, 0xb9, 0x10, 0x6f, 0xe2, 0xcf, 0x6f, - 0xa7, 0x07, 0x19, 0xb6, 0xb0, 0x28, 0x43, 0xca, 0x7e, 0x84, 0x31, 0x17, 0xdd, 0x76, 0x68, 0xe6, - 0xdd, 0xa9, 0x57, 0x3a, 0x6d, 0x95, 0x80, 0x49, 0xe3, 0x12, 0xbf, 0xfe, 0xff, 0xc9, 0xc6, 0x02, - 0x9e, 0xc7, 0x73, 0x65, 0x66, 0x34, 0x0d, 0xdb, 0x9b, 0xef, 0xd1, 0xf1, 0x19, 0xb1, 0x4e, 0xcf, - 0x88, 0x75, 0x7e, 0x46, 0xd0, 0xbb, 0x9c, 0xa0, 0x4f, 0x39, 0x41, 0xdf, 0x73, 0x82, 0x8e, 0x73, - 0x82, 0x4e, 0x73, 0x82, 0x7e, 0xe4, 0x04, 0xfd, 0xca, 0x89, 0x75, 0x9e, 0x13, 0xf4, 0xa1, 0x4f, - 0xac, 0xaf, 0x7d, 0x82, 0x8e, 0xfb, 0xc4, 0x3a, 0xed, 0x13, 0xeb, 0xe5, 0xb3, 0x40, 0x24, 0xaf, - 0x03, 0x9a, 0x89, 0x48, 0x83, 0x94, 0x8c, 0xa6, 0xca, 0x33, 0x87, 0x8e, 0x90, 0xf1, 0xc5, 0xe3, - 0x64, 0x61, 0x1b, 0xa4, 0x5b, 0x86, 0xbd, 0xc4, 0x0f, 0x84, 0x07, 0x87, 0x7a, 0xb0, 0xc0, 0xa3, - 0xbf, 0x08, 0xbf, 0x61, 0x36, 0x78, 0xf5, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x43, 0xf2, 0xb5, - 0x5e, 0xac, 0x04, 0x00, 0x00, + // 598 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x4e, + 0x14, 0xc0, 0x77, 0x28, 0xff, 0x85, 0x0c, 0x84, 0x3f, 0xa9, 0x31, 0xa9, 0xa8, 0x23, 0xae, 0x31, + 0xe1, 0x60, 0xdb, 0x04, 0xe2, 0x41, 0x62, 0x38, 0x80, 0x09, 0x51, 0x21, 0x26, 0x8b, 0x89, 0xca, + 0x85, 0x4c, 0xa7, 0x6f, 0x4b, 0xb5, 0xdd, 0x69, 0x66, 0xa6, 0x95, 0x3d, 0x98, 0x78, 0xf5, 0xe6, + 0xcd, 0xaf, 0x60, 0xfc, 0x14, 0xa2, 0x17, 0x4f, 0x86, 0x70, 0xe2, 0x28, 0xdd, 0x83, 0x1e, 0xf9, + 0x08, 0x86, 0xe9, 0x76, 0xa5, 0x9b, 0x6a, 0x3c, 0xc8, 0x6d, 0x9a, 0xf7, 0x7b, 0xbf, 0xce, 0x9b, + 0x79, 0xf3, 0x70, 0x2b, 0x03, 0xe9, 0x84, 0xdc, 0x95, 0x6c, 0x17, 0x62, 0xea, 0xb2, 0x28, 0x95, + 0x0a, 0x84, 0xcb, 0xbd, 0xe7, 0xc0, 0x94, 0x93, 0x08, 0xae, 0xb8, 0x79, 0xb1, 0x60, 0x9c, 0x82, + 0x71, 0x06, 0xcc, 0x9c, 0x1d, 0x84, 0x6a, 0x37, 0xf5, 0x1c, 0xc6, 0x63, 0x37, 0xe0, 0x01, 0x77, + 0x35, 0xed, 0xa5, 0x1d, 0xfd, 0xa5, 0x3f, 0xf4, 0xaa, 0xb0, 0xcc, 0x5d, 0xaf, 0xff, 0x93, 0xea, + 0x25, 0x20, 0x07, 0xc8, 0xe5, 0x2a, 0xc2, 0x13, 0x15, 0xf2, 0x6e, 0x19, 0xbc, 0x54, 0x0d, 0x9e, + 0xcd, 0x1b, 0x29, 0x22, 0x03, 0x09, 0xdd, 0xac, 0x9a, 0xde, 0x7a, 0xf7, 0x1f, 0x6e, 0x3e, 0xd2, + 0x55, 0x99, 0x77, 0xf0, 0x64, 0x0c, 0x8a, 0xfa, 0x54, 0x51, 0x0b, 0xcd, 0xa3, 0x85, 0xa9, 0xc5, + 0xab, 0x4e, 0xb5, 0xc4, 0x02, 0xdc, 0x04, 0x45, 0x1f, 0xf7, 0x12, 0x68, 0x0f, 0x71, 0x73, 0x03, + 0xff, 0x2f, 0x7b, 0x52, 0x41, 0xbc, 0x33, 0x34, 0x8c, 0x69, 0xc3, 0x8d, 0x11, 0xc3, 0x96, 0xa6, + 0x46, 0x3c, 0x33, 0x45, 0xee, 0x66, 0x69, 0x5b, 0xc2, 0xe3, 0x32, 0x01, 0x66, 0x19, 0x5a, 0x71, + 0xcd, 0xa9, 0x3d, 0x67, 0x67, 0x2b, 0x01, 0xa6, 0xd3, 0x35, 0xbc, 0xfc, 0xd5, 0xf8, 0xb4, 0x6f, + 0x8d, 0xcd, 0xa2, 0xc3, 0x7d, 0xeb, 0xb3, 0x81, 0x9f, 0x61, 0x63, 0x1d, 0x94, 0xd9, 0xee, 0xdc, + 0xde, 0x63, 0xb6, 0x04, 0x96, 0x0a, 0x88, 0x41, 0xee, 0xda, 0x1e, 0x95, 0x21, 0xb3, 0x63, 0xde, + 0x0d, 0x15, 0x17, 0xb7, 0xe6, 0x47, 0xc3, 0x52, 0xd1, 0xae, 0x4f, 0x85, 0xff, 0x8b, 0xc8, 0x40, + 0xda, 0x21, 0xb7, 0x13, 0xc1, 0xf7, 0x7a, 0xb6, 0x00, 0xea, 0xe3, 0xa7, 0x78, 0xa2, 0x0d, 0x49, + 0x44, 0x19, 0x98, 0x9b, 0xf5, 0xfa, 0x54, 0xc2, 0x9f, 0xdc, 0x45, 0xb8, 0x22, 0x7e, 0x29, 0x42, + 0x05, 0xf8, 0x09, 0x6e, 0xae, 0x09, 0xa0, 0xea, 0x3c, 0xc4, 0xf7, 0x20, 0x82, 0x7f, 0x2f, 0xde, + 0xc6, 0xe3, 0x1b, 0xa1, 0x3c, 0x97, 0x73, 0x6e, 0x3d, 0xc0, 0x93, 0xe5, 0x15, 0x9b, 0x2b, 0x78, + 0x22, 0x60, 0x3b, 0xba, 0x29, 0x8a, 0xbe, 0xba, 0xf9, 0x9b, 0xa6, 0x58, 0x8f, 0xb8, 0x47, 0xa3, + 0x61, 0x6b, 0x34, 0x03, 0x76, 0xba, 0x6e, 0x7d, 0x47, 0x78, 0x7a, 0x4b, 0x51, 0x95, 0xca, 0xbf, + 0xee, 0xf5, 0x02, 0xaf, 0xe9, 0xf5, 0xfb, 0x78, 0xaa, 0x18, 0x03, 0x3b, 0x02, 0x3a, 0xd2, 0x1a, + 0x9b, 0x37, 0x16, 0xa6, 0x16, 0xaf, 0xd4, 0xbe, 0x94, 0x36, 0x74, 0x4e, 0x93, 0x57, 0xf1, 0x87, + 0x57, 0x13, 0x83, 0x1d, 0xb6, 0x31, 0x2f, 0x43, 0xd2, 0xbc, 0x8b, 0x31, 0xe3, 0x5d, 0x3f, 0xd4, + 0x0f, 0xd2, 0x32, 0x6a, 0x4d, 0x6b, 0x25, 0xa0, 0xb7, 0x71, 0x86, 0x5f, 0xbe, 0x70, 0xb8, 0x32, + 0x8b, 0x67, 0xf0, 0x74, 0xb9, 0x33, 0x27, 0x0d, 0xfd, 0xd5, 0x37, 0xe8, 0xe0, 0x98, 0x34, 0x8e, + 0x8e, 0x49, 0xe3, 0xe4, 0x98, 0xa0, 0xd7, 0x39, 0x41, 0xef, 0x73, 0x82, 0xbe, 0xe4, 0x04, 0x1d, + 0xe4, 0x04, 0x1d, 0xe5, 0x04, 0x7d, 0xcb, 0x09, 0xfa, 0x91, 0x93, 0xc6, 0x49, 0x4e, 0xd0, 0xdb, + 0x3e, 0x69, 0x7c, 0xec, 0x13, 0x74, 0xd0, 0x27, 0x8d, 0xa3, 0x3e, 0x69, 0x6c, 0x3f, 0x0c, 0x78, + 0xf2, 0x22, 0x70, 0x32, 0x1e, 0x29, 0x10, 0x82, 0x3a, 0xa9, 0x74, 0xf5, 0xa2, 0xc3, 0x45, 0x7c, + 0x7a, 0x39, 0x59, 0xe8, 0x83, 0xb0, 0xcb, 0xb0, 0x9b, 0x78, 0x01, 0x77, 0x61, 0x4f, 0x0d, 0x26, + 0x4c, 0x75, 0x86, 0x79, 0x4d, 0x3d, 0x62, 0x96, 0x7e, 0x06, 0x00, 0x00, 0xff, 0xff, 0x51, 0x9a, + 0x39, 0xca, 0x4d, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/cluster/pkg.vespkg.go b/pbgo/extschema/schema/cluster/pkg.vespkg.go index b38756ae0..e22a604d2 100644 --- a/pbgo/extschema/schema/cluster/pkg.vespkg.go +++ b/pbgo/extschema/schema/cluster/pkg.vespkg.go @@ -33,6 +33,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.cluster.EndpointSubsetSelectorType"] = EndpointSubsetSelectorTypeValidator() vr["ves.io.schema.cluster.GetSpecType"] = GetSpecTypeValidator() vr["ves.io.schema.cluster.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.cluster.Http1ProtocolOptions"] = Http1ProtocolOptionsValidator() vr["ves.io.schema.cluster.Http2ProtocolOptions"] = Http2ProtocolOptionsValidator() vr["ves.io.schema.cluster.OutlierDetectionType"] = OutlierDetectionTypeValidator() vr["ves.io.schema.cluster.ReplaceSpecType"] = ReplaceSpecTypeValidator() @@ -54,6 +55,7 @@ func initializeEntryRegistry(mdr *svcfw.MDRegistry) { func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.cluster.API.Create"] = []string{ + "spec.header_transformation_type", "spec.tls_parameters.cert_params.validation_params.use_volterra_trusted_ca_url", "spec.tls_parameters.common_params.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.tls_parameters.common_params.tls_certificates.#.private_key.secret_encoding_type", @@ -66,6 +68,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCConfidentialRequestRegistry["ves.io.schema.cluster.API.Create"] = "ves.io.schema.cluster.CreateRequest" mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.cluster.API.Replace"] = []string{ + "spec.header_transformation_type", "spec.tls_parameters.cert_params.validation_params.use_volterra_trusted_ca_url", "spec.tls_parameters.common_params.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.tls_parameters.common_params.tls_certificates.#.private_key.secret_encoding_type", diff --git a/pbgo/extschema/schema/cluster/public_crudapi.pb.go b/pbgo/extschema/schema/cluster/public_crudapi.pb.go index 6aa97cb9e..22a1e0ba6 100644 --- a/pbgo/extschema/schema/cluster/public_crudapi.pb.go +++ b/pbgo/extschema/schema/cluster/public_crudapi.pb.go @@ -1067,107 +1067,108 @@ func init() { } var fileDescriptor_718488236c6c0443 = []byte{ - // 1600 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0x49, - 0x16, 0x4e, 0xd9, 0x8e, 0xb1, 0xcb, 0xf9, 0x69, 0x6a, 0x21, 0x38, 0xde, 0xac, 0x65, 0x9a, 0xbf, - 0x6c, 0x84, 0xdb, 0x51, 0x10, 0x12, 0x44, 0x0b, 0x8b, 0x93, 0x74, 0xbc, 0xf9, 0x81, 0xa0, 0xb6, - 0x83, 0x56, 0x5c, 0x5a, 0xed, 0x76, 0xd9, 0x34, 0xd8, 0xee, 0xde, 0xae, 0xb2, 0x83, 0xb5, 0x1b, - 0xed, 0x8a, 0xfb, 0x4a, 0x2b, 0xad, 0xf6, 0xb2, 0xda, 0xc3, 0x5e, 0x46, 0x70, 0x9e, 0xcb, 0x8c, - 0x94, 0x0b, 0xd2, 0x1c, 0x40, 0x1c, 0x46, 0x68, 0x46, 0x1a, 0x21, 0xcd, 0x65, 0x70, 0xe6, 0xc0, - 0x11, 0xcd, 0x9c, 0xe6, 0x36, 0xea, 0xaa, 0x6e, 0x63, 0x3b, 0x9d, 0xc4, 0x09, 0x9c, 0xdc, 0x55, - 0xef, 0x7d, 0x5f, 0xbd, 0xaf, 0xea, 0xbd, 0xd7, 0xe5, 0x86, 0x33, 0x4d, 0x4c, 0x24, 0xc3, 0xcc, - 0x10, 0xfd, 0x01, 0xae, 0x69, 0x19, 0xbd, 0xda, 0x20, 0x14, 0xdb, 0x19, 0xab, 0x51, 0xac, 0x1a, - 0xba, 0xaa, 0xdb, 0x8d, 0x92, 0x66, 0x19, 0x92, 0x65, 0x9b, 0xd4, 0x44, 0xa7, 0xb9, 0xaf, 0xc4, - 0x7d, 0x25, 0xd7, 0x37, 0x91, 0xae, 0x18, 0xf4, 0x41, 0xa3, 0x28, 0xe9, 0x66, 0x2d, 0x53, 0x31, - 0x2b, 0x66, 0x86, 0x79, 0x17, 0x1b, 0x65, 0x36, 0x62, 0x03, 0xf6, 0xc4, 0x59, 0x12, 0x53, 0x15, - 0xd3, 0xac, 0x54, 0x71, 0x46, 0xb3, 0x8c, 0x8c, 0x56, 0xaf, 0x9b, 0x54, 0xa3, 0x86, 0x59, 0x27, - 0xae, 0xf5, 0xb7, 0xae, 0xb5, 0xc3, 0x81, 0x6b, 0x16, 0x6d, 0xb9, 0x46, 0xd1, 0x3f, 0x58, 0xb3, - 0xf8, 0x10, 0xeb, 0xd4, 0xf5, 0x39, 0xeb, 0xef, 0x43, 0x5b, 0x16, 0xf6, 0xd6, 0x48, 0xf4, 0xba, - 0x60, 0xdb, 0x36, 0xed, 0xce, 0xfa, 0xbd, 0x36, 0xd3, 0xea, 0x0e, 0x6e, 0xb2, 0xd7, 0xd8, 0xcd, - 0xd9, 0x17, 0x5a, 0x13, 0x13, 0x5c, 0x6f, 0xf6, 0xc1, 0x53, 0x7d, 0x3e, 0x06, 0xde, 0x52, 0x7b, - 0x3c, 0xc4, 0xa7, 0x00, 0x8e, 0x2e, 0xda, 0x58, 0xa3, 0x58, 0xc1, 0x7f, 0x69, 0x60, 0x42, 0xd1, - 0x1f, 0x61, 0xa4, 0x86, 0xa9, 0x56, 0xd2, 0xa8, 0x16, 0x07, 0x29, 0x30, 0x1d, 0x9b, 0x3b, 0x27, - 0xf5, 0x1e, 0xc3, 0x06, 0x53, 0xcf, 0x51, 0xb7, 0x31, 0xd5, 0x0a, 0x2d, 0x0b, 0x2b, 0x1d, 0x10, - 0x5a, 0x85, 0x21, 0x62, 0x61, 0x3d, 0x1e, 0x60, 0xe0, 0x0b, 0x92, 0xef, 0x19, 0x4a, 0x1c, 0x9e, - 0xb7, 0xb0, 0xee, 0xc0, 0x17, 0xc6, 0xff, 0xbb, 0x3d, 0xe2, 0xa0, 0xa4, 0x8a, 0xae, 0x3a, 0xbf, - 0x0a, 0xe3, 0x98, 0x8f, 0xbe, 0xba, 0x19, 0xe6, 0xcb, 0x89, 0x3f, 0x03, 0x38, 0xe6, 0x45, 0x4a, - 0x2c, 0xb3, 0x4e, 0x30, 0xfa, 0xc3, 0x9e, 0x50, 0x53, 0xbe, 0xa1, 0xe6, 0x30, 0xf5, 0x89, 0x73, - 0x03, 0x8e, 0x93, 0x16, 0xa1, 0xb8, 0xa6, 0x76, 0x48, 0x82, 0x8c, 0xe4, 0x62, 0x1f, 0x49, 0x9e, - 0x79, 0xed, 0xa5, 0x1a, 0xe3, 0xf0, 0xdb, 0x1e, 0x61, 0xae, 0x47, 0xb8, 0xb8, 0x8f, 0xf0, 0x1c, - 0xa6, 0x47, 0x50, 0xfd, 0x3d, 0x80, 0x63, 0x0a, 0xb6, 0xaa, 0x9a, 0xde, 0x39, 0xa0, 0x5b, 0x7b, - 0x54, 0x9f, 0xf7, 0x55, 0xed, 0xc2, 0x7c, 0x94, 0xaf, 0xf5, 0x04, 0x7a, 0x71, 0x9f, 0x40, 0x5d, - 0xfc, 0x21, 0xc1, 0xa2, 0x0c, 0x14, 0x6c, 0x4c, 0xcc, 0x86, 0xad, 0x63, 0xb5, 0x89, 0x6d, 0x62, - 0x98, 0x75, 0xb6, 0x8f, 0xd1, 0x85, 0xd0, 0xbb, 0x1d, 0x00, 0x94, 0x71, 0xcf, 0x7a, 0x8f, 0x1b, - 0xbb, 0xd5, 0x9d, 0x84, 0xe3, 0x1d, 0x71, 0xfc, 0x4c, 0xc5, 0xff, 0x00, 0x08, 0x73, 0x98, 0x7a, - 0x62, 0xa7, 0x60, 0xb4, 0xae, 0xd5, 0x30, 0xb1, 0x34, 0x1d, 0x33, 0xb5, 0x51, 0xe5, 0xc3, 0x04, - 0x42, 0x30, 0xe4, 0x0c, 0x98, 0x90, 0xa8, 0xc2, 0x9e, 0xd1, 0x26, 0x74, 0x56, 0x64, 0x64, 0x6a, - 0xd9, 0xb4, 0x6b, 0x1a, 0x65, 0xe1, 0x8c, 0xcd, 0x5d, 0xde, 0xff, 0x40, 0xbc, 0xd5, 0x97, 0x99, - 0xff, 0xa2, 0x59, 0xc2, 0xca, 0x98, 0xdd, 0x33, 0x27, 0xfe, 0x32, 0x0c, 0x63, 0x5d, 0x9e, 0x48, - 0x86, 0x31, 0x9d, 0x65, 0x23, 0x5b, 0xc4, 0xdd, 0xca, 0xf3, 0x07, 0x26, 0xbb, 0xab, 0x49, 0x81, - 0x1c, 0xe8, 0x10, 0xa3, 0x3f, 0xc1, 0x11, 0x9b, 0xef, 0x00, 0xe7, 0x09, 0x1e, 0x58, 0x34, 0xbd, - 0x99, 0xa0, 0xc4, 0x5c, 0x28, 0x63, 0xf2, 0x3b, 0x87, 0xd0, 0x01, 0xe7, 0xd0, 0x53, 0x3d, 0xc3, - 0x9f, 0xa2, 0x7a, 0x4e, 0x7c, 0x92, 0xea, 0x09, 0x7f, 0x64, 0xf5, 0xa0, 0x05, 0x18, 0x26, 0x54, - 0xa3, 0x0d, 0x12, 0xff, 0xff, 0xff, 0x40, 0x2a, 0xe8, 0xd3, 0xc0, 0x3c, 0xb2, 0x3c, 0x73, 0xe3, - 0xa1, 0x2d, 0x04, 0x9f, 0x6f, 0x03, 0xc5, 0x45, 0xa2, 0x15, 0x78, 0xd2, 0xc6, 0x65, 0x6c, 0xdb, - 0x46, 0xbd, 0xa2, 0xf2, 0x6e, 0x4f, 0xe2, 0x11, 0x46, 0x36, 0xb5, 0x4f, 0xb1, 0x95, 0x99, 0x2a, - 0xa1, 0x03, 0xe3, 0xf3, 0x04, 0xdd, 0x83, 0xf1, 0x12, 0xae, 0x62, 0x8a, 0x4b, 0x2a, 0xb7, 0xe1, - 0x52, 0x87, 0x31, 0x3a, 0x00, 0xe3, 0x84, 0x8b, 0x56, 0x5c, 0xb0, 0xc7, 0xfb, 0x67, 0x38, 0x59, - 0x32, 0x88, 0x56, 0xac, 0xfa, 0x11, 0xc3, 0x01, 0x88, 0xcf, 0x78, 0xf0, 0x3e, 0xe6, 0xae, 0x02, - 0x5d, 0x0d, 0x45, 0x80, 0x10, 0x10, 0x3f, 0x03, 0x30, 0xb6, 0x6e, 0x90, 0x01, 0x8b, 0xf2, 0x2c, - 0x1c, 0xa9, 0x6a, 0x45, 0x5c, 0x55, 0xcb, 0x46, 0x95, 0x62, 0xdb, 0x2d, 0xce, 0x18, 0x9b, 0x5b, - 0x66, 0x53, 0xe8, 0x1c, 0x1c, 0xb5, 0xb1, 0x65, 0xda, 0x54, 0x2d, 0x1b, 0xb8, 0x5a, 0x22, 0xf1, - 0x60, 0x2a, 0x38, 0x1d, 0x55, 0x46, 0xf8, 0xe4, 0x32, 0x9b, 0x43, 0xb3, 0xf0, 0x94, 0xeb, 0xc4, - 0x0f, 0xc5, 0xf3, 0x0d, 0x31, 0x5f, 0xc4, 0x6d, 0xfc, 0x08, 0x39, 0x42, 0x7c, 0x16, 0x86, 0x02, - 0x8f, 0x93, 0x17, 0xe9, 0x0a, 0xc5, 0x35, 0x34, 0x01, 0xc3, 0x14, 0xd7, 0xb5, 0x3a, 0x65, 0x99, - 0x15, 0x55, 0xdc, 0xd1, 0x31, 0x3a, 0x8b, 0x00, 0x83, 0x0d, 0xa3, 0xc4, 0x9b, 0x9b, 0xe2, 0x3c, - 0xa2, 0x14, 0x8c, 0x95, 0x30, 0xd1, 0x6d, 0x83, 0xbd, 0x53, 0xe3, 0x31, 0xae, 0xb4, 0x6b, 0x0a, - 0x25, 0x60, 0xc4, 0xdb, 0xe6, 0xf8, 0x48, 0x0a, 0x4c, 0x47, 0x94, 0xce, 0x18, 0xad, 0xc1, 0x30, - 0xdb, 0x14, 0x2e, 0x29, 0x36, 0x77, 0x65, 0x9f, 0x34, 0xed, 0x97, 0x24, 0xad, 0x33, 0x94, 0x5c, - 0xa7, 0x76, 0x4b, 0x71, 0x29, 0xd0, 0x7d, 0x18, 0xeb, 0xba, 0xdb, 0xb8, 0x09, 0x70, 0x6d, 0x50, - 0xc6, 0xec, 0x07, 0x28, 0xa7, 0xed, 0x26, 0x43, 0xd7, 0x21, 0x34, 0xb7, 0xea, 0xd8, 0x56, 0x9d, - 0x0b, 0x44, 0x3c, 0xca, 0x0a, 0x34, 0xd1, 0x47, 0x7d, 0xcf, 0xc0, 0x5b, 0x5e, 0x66, 0x45, 0x99, - 0xb7, 0x33, 0xd3, 0xd3, 0x64, 0x46, 0x3f, 0x45, 0x93, 0x19, 0xfb, 0xa8, 0x26, 0x73, 0x03, 0x46, - 0x2a, 0x98, 0xb2, 0x6e, 0xe1, 0xb6, 0xab, 0x01, 0x1a, 0x8d, 0x72, 0xa2, 0xc2, 0x07, 0x28, 0x07, - 0xa1, 0x9b, 0x8b, 0x04, 0x53, 0xb7, 0x1f, 0x0c, 0xde, 0x5c, 0xa2, 0x1c, 0x9b, 0xc7, 0x34, 0x71, - 0x1d, 0xc6, 0xba, 0x0e, 0xd1, 0xc9, 0xac, 0x47, 0xb8, 0xe5, 0x66, 0xa1, 0xf3, 0x88, 0x4e, 0xc1, - 0xe1, 0xa6, 0x56, 0x6d, 0x78, 0x09, 0xc8, 0x07, 0xf3, 0x81, 0x6b, 0x20, 0x71, 0x13, 0x0a, 0xfd, - 0xa7, 0x75, 0x14, 0xfc, 0x6a, 0x28, 0x32, 0x2c, 0x84, 0xc5, 0xbf, 0xc3, 0x91, 0xee, 0x24, 0x40, - 0x37, 0xe0, 0xb0, 0x41, 0x71, 0x8d, 0xc4, 0x79, 0xc7, 0xbc, 0x34, 0x60, 0xe2, 0x28, 0x1c, 0x85, - 0x66, 0x61, 0x98, 0x5f, 0x6a, 0xe3, 0x01, 0x86, 0x8f, 0xf7, 0xe1, 0x65, 0xc7, 0xc8, 0xf6, 0xd2, - 0xf5, 0x13, 0x1f, 0xc1, 0xd1, 0x25, 0xd6, 0xd8, 0x8e, 0xff, 0xa6, 0x9f, 0x86, 0x42, 0x59, 0x33, - 0xaa, 0xaa, 0x51, 0xee, 0x34, 0x40, 0x56, 0x9c, 0x11, 0x65, 0xcc, 0x99, 0x5f, 0x29, 0x7b, 0x8d, - 0x6d, 0xe6, 0x27, 0x00, 0x4f, 0xfb, 0xbe, 0xe6, 0x51, 0x02, 0x4e, 0xe4, 0xe4, 0x82, 0xaa, 0xe4, - 0xef, 0xaa, 0xcb, 0x1b, 0xca, 0xed, 0x6c, 0x41, 0x5d, 0x92, 0x97, 0xb3, 0x9b, 0xeb, 0x05, 0x61, - 0x08, 0xfd, 0x0e, 0x4e, 0xf6, 0xd9, 0x96, 0x37, 0x14, 0x75, 0x51, 0x91, 0xb3, 0x05, 0x59, 0x00, - 0x28, 0x09, 0x13, 0x3e, 0x66, 0x45, 0xbe, 0xbb, 0x9e, 0x5d, 0x94, 0x85, 0x00, 0x9a, 0x84, 0xa7, - 0xfb, 0xec, 0xf9, 0x42, 0xb6, 0xb0, 0x99, 0x17, 0x82, 0xe8, 0x0c, 0xfc, 0x4d, 0x9f, 0x49, 0x91, - 0xb3, 0x4b, 0x42, 0x08, 0x9d, 0x87, 0xa9, 0x3d, 0x86, 0x65, 0x59, 0x51, 0x56, 0xee, 0xe4, 0xd4, - 0x8d, 0x85, 0x55, 0x79, 0xb1, 0x90, 0x17, 0x86, 0x7d, 0xbc, 0x16, 0x94, 0x8d, 0x35, 0xf9, 0x0e, - 0x77, 0x96, 0xef, 0x2c, 0xca, 0x79, 0x21, 0x3c, 0xf7, 0x34, 0x02, 0x83, 0xd9, 0xbb, 0x2b, 0xe8, - 0x2b, 0x00, 0xc3, 0xfc, 0x02, 0x82, 0x06, 0xba, 0x9f, 0x24, 0x2e, 0x1c, 0xe2, 0xe5, 0xde, 0xd4, - 0xaa, 0xed, 0x17, 0xf1, 0x74, 0xf9, 0xea, 0x63, 0x3d, 0x4d, 0xb0, 0xde, 0xb0, 0x71, 0x0d, 0x93, - 0x07, 0xe9, 0xa2, 0x46, 0x0c, 0x3d, 0xdd, 0x20, 0xd8, 0xbe, 0xdc, 0xc4, 0x24, 0x6d, 0x98, 0x69, - 0xcb, 0x36, 0x1f, 0xb7, 0xd2, 0x5b, 0xb6, 0x41, 0xf1, 0x93, 0x6f, 0x7f, 0xfc, 0x77, 0xe0, 0xaa, - 0x38, 0xeb, 0xfe, 0xd9, 0xcb, 0x74, 0x8e, 0x97, 0x64, 0xfe, 0xea, 0x15, 0xb8, 0xd4, 0x99, 0xdc, - 0xf6, 0xfe, 0x4a, 0x91, 0x79, 0x30, 0x83, 0x76, 0x00, 0x0c, 0xe6, 0x30, 0x45, 0x67, 0x0f, 0xba, - 0xc5, 0xf1, 0xf8, 0xc5, 0xc3, 0x2f, 0x7a, 0x62, 0xed, 0xe5, 0x97, 0x01, 0xd0, 0x7e, 0x11, 0xcf, - 0xf8, 0x0b, 0xa8, 0x99, 0x75, 0x83, 0x9a, 0x7d, 0x1a, 0x6c, 0xac, 0x95, 0x98, 0x84, 0x59, 0x24, - 0xf9, 0x49, 0xf0, 0x89, 0x9c, 0x4f, 0x6e, 0xa3, 0x2f, 0x00, 0x0c, 0x39, 0xb5, 0x83, 0xc4, 0x03, - 0x0b, 0x8b, 0xc7, 0x7f, 0x6e, 0x80, 0xe2, 0x13, 0xcb, 0x1f, 0x23, 0xe0, 0xf7, 0xe8, 0xd2, 0x80, - 0x02, 0xd0, 0x77, 0x00, 0x9e, 0x70, 0xaf, 0x9d, 0x68, 0xb0, 0x6b, 0x69, 0xe2, 0xe2, 0x61, 0x6e, - 0xae, 0x84, 0xbf, 0x1d, 0x2f, 0x81, 0xe4, 0xc4, 0xad, 0xa3, 0x26, 0x50, 0x9f, 0x75, 0xdb, 0x49, - 0xa8, 0xcf, 0x01, 0x0c, 0xf3, 0x0e, 0xb4, 0x6f, 0x59, 0xf4, 0x34, 0xa8, 0xc4, 0x84, 0xc4, 0xbf, - 0x14, 0x48, 0xde, 0x97, 0x02, 0x49, 0xae, 0x59, 0xb4, 0x25, 0x3e, 0x3c, 0x9e, 0x8c, 0x2b, 0x33, - 0x47, 0x4c, 0xa2, 0x79, 0x30, 0x93, 0x28, 0x3c, 0xdf, 0x01, 0x81, 0x6f, 0x76, 0xc0, 0x94, 0x7f, - 0xc0, 0xfc, 0x6d, 0xf3, 0x66, 0x07, 0x80, 0xf6, 0x0e, 0x10, 0x0f, 0x7f, 0x2f, 0x3d, 0xf9, 0x3a, - 0x1e, 0x10, 0xc0, 0xc2, 0x3f, 0xc1, 0xab, 0x9b, 0xc3, 0x8b, 0xca, 0xe6, 0xd2, 0xfa, 0xeb, 0xb7, - 0xc9, 0xa1, 0x37, 0x6f, 0x93, 0x43, 0xef, 0xdf, 0x26, 0xc1, 0x3f, 0xda, 0x49, 0xf0, 0xac, 0x9d, - 0x04, 0x2f, 0xdb, 0x49, 0xf0, 0xba, 0x9d, 0x04, 0x3f, 0xb4, 0x93, 0xe0, 0x5d, 0x3b, 0x39, 0xf4, - 0xbe, 0x9d, 0x04, 0xff, 0xda, 0x4d, 0x0e, 0x3d, 0xdf, 0x4d, 0x82, 0xd7, 0xbb, 0xc9, 0xa1, 0x37, - 0xbb, 0xc9, 0xa1, 0xfb, 0x6b, 0x15, 0xd3, 0x7a, 0x54, 0x91, 0x9a, 0xa6, 0x73, 0xbf, 0xb3, 0x35, - 0xa9, 0x41, 0x32, 0xec, 0xc1, 0xf9, 0x53, 0xe3, 0x48, 0x6f, 0x1a, 0x25, 0x6c, 0xa7, 0x3d, 0x73, - 0xc6, 0x2a, 0x56, 0xcc, 0x0c, 0x7e, 0x4c, 0xdd, 0x0f, 0x13, 0xbd, 0x9f, 0x4e, 0x8a, 0x61, 0xb6, - 0xc3, 0x57, 0x7e, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xb3, 0x4f, 0x22, 0x65, 0x2b, 0x12, 0x00, 0x00, + // 1616 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcb, 0x6f, 0xdb, 0xc8, + 0x19, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x60, 0xa6, 0x89, 0x23, 0xab, 0xae, 0xa0, 0x30, 0x2f, + 0xd7, 0x88, 0x28, 0xc3, 0x41, 0x80, 0xc4, 0x68, 0xd2, 0xc8, 0x36, 0xad, 0xfa, 0x91, 0xd8, 0xa0, + 0xe4, 0xa0, 0xc8, 0x85, 0xa0, 0xa8, 0x91, 0xc2, 0x46, 0x12, 0x59, 0xce, 0x48, 0x8e, 0x50, 0x18, + 0x2d, 0x72, 0x69, 0x51, 0xa0, 0x45, 0x81, 0xa2, 0x97, 0xa0, 0x87, 0x5e, 0x8a, 0xe6, 0x4f, 0x28, + 0xe0, 0x4b, 0x6e, 0x1b, 0xe4, 0xb0, 0xc8, 0xee, 0x5e, 0xb2, 0x58, 0x2c, 0xb0, 0x91, 0xf7, 0x90, + 0x63, 0xb0, 0x8b, 0x3d, 0xec, 0x6d, 0xc1, 0x19, 0x52, 0x91, 0x64, 0xda, 0x96, 0xf3, 0x38, 0x89, + 0x33, 0xdf, 0xf7, 0xfb, 0xf1, 0xfb, 0xf1, 0x7b, 0x70, 0x44, 0x38, 0xd3, 0xc4, 0x44, 0x32, 0xcc, + 0x0c, 0xd1, 0xef, 0xe3, 0x9a, 0x96, 0xd1, 0xab, 0x0d, 0x42, 0xb1, 0x9d, 0xb1, 0x1a, 0xc5, 0xaa, + 0xa1, 0xab, 0xba, 0xdd, 0x28, 0x69, 0x96, 0x21, 0x59, 0xb6, 0x49, 0x4d, 0x74, 0x9a, 0xfb, 0x4a, + 0xdc, 0x57, 0x72, 0x7d, 0x13, 0xe9, 0x8a, 0x41, 0xef, 0x37, 0x8a, 0x92, 0x6e, 0xd6, 0x32, 0x15, + 0xb3, 0x62, 0x66, 0x98, 0x77, 0xb1, 0x51, 0x66, 0x2b, 0xb6, 0x60, 0x57, 0x9c, 0x25, 0x31, 0x55, + 0x31, 0xcd, 0x4a, 0x15, 0x67, 0x34, 0xcb, 0xc8, 0x68, 0xf5, 0xba, 0x49, 0x35, 0x6a, 0x98, 0x75, + 0xe2, 0x5a, 0x7f, 0xee, 0x5a, 0x3b, 0x1c, 0xb8, 0x66, 0xd1, 0x96, 0x6b, 0x14, 0xfd, 0x83, 0x35, + 0x8b, 0xbf, 0xc3, 0x3a, 0x75, 0x7d, 0xce, 0xfa, 0xfb, 0xd0, 0x96, 0x85, 0xbd, 0x7b, 0x24, 0x7a, + 0x5d, 0xb0, 0x6d, 0x9b, 0x76, 0xe7, 0xfe, 0xbd, 0x36, 0xd3, 0xea, 0x0e, 0x6e, 0xb2, 0xd7, 0xd8, + 0xcd, 0xd9, 0x17, 0x5a, 0x13, 0x13, 0x5c, 0x6f, 0xf6, 0xc1, 0x53, 0x7d, 0x3e, 0x06, 0xde, 0x56, + 0x7b, 0x3c, 0xc4, 0xff, 0x01, 0x38, 0xba, 0x68, 0x63, 0x8d, 0x62, 0x05, 0xff, 0xbe, 0x81, 0x09, + 0x45, 0xbf, 0x86, 0x91, 0x1a, 0xa6, 0x5a, 0x49, 0xa3, 0x5a, 0x1c, 0xa4, 0xc0, 0x74, 0x6c, 0xee, + 0x9c, 0xd4, 0x9b, 0x86, 0x0d, 0xa6, 0x9e, 0xa3, 0x6e, 0x63, 0xaa, 0x15, 0x5a, 0x16, 0x56, 0x3a, + 0x20, 0xb4, 0x0a, 0x43, 0xc4, 0xc2, 0x7a, 0x3c, 0xc0, 0xc0, 0x17, 0x24, 0xdf, 0x1c, 0x4a, 0x1c, + 0x9e, 0xb7, 0xb0, 0xee, 0xc0, 0x17, 0xc6, 0x1f, 0xef, 0x8c, 0x38, 0x28, 0xa9, 0xa2, 0xab, 0xce, + 0xaf, 0xc2, 0x38, 0xe6, 0xa3, 0xcf, 0x6f, 0x86, 0xf9, 0xed, 0xc4, 0xef, 0x01, 0x1c, 0xf3, 0x22, + 0x25, 0x96, 0x59, 0x27, 0x18, 0xfd, 0x6a, 0x5f, 0xa8, 0x29, 0xdf, 0x50, 0x73, 0x98, 0xfa, 0xc4, + 0xb9, 0x01, 0xc7, 0x49, 0x8b, 0x50, 0x5c, 0x53, 0x3b, 0x24, 0x41, 0x46, 0x72, 0xb1, 0x8f, 0x24, + 0xcf, 0xbc, 0xf6, 0x53, 0x8d, 0x71, 0xf8, 0x6d, 0x8f, 0x30, 0xd7, 0x23, 0x5c, 0x3c, 0x40, 0x78, + 0x0e, 0xd3, 0x63, 0xa8, 0xfe, 0x0a, 0xc0, 0x31, 0x05, 0x5b, 0x55, 0x4d, 0xef, 0x24, 0xe8, 0xd6, + 0x3e, 0xd5, 0xe7, 0x7d, 0x55, 0xbb, 0x30, 0x1f, 0xe5, 0x6b, 0x3d, 0x81, 0x5e, 0x3c, 0x20, 0x50, + 0x17, 0x7f, 0x44, 0xb0, 0x28, 0x03, 0x05, 0x1b, 0x13, 0xb3, 0x61, 0xeb, 0x58, 0x6d, 0x62, 0x9b, + 0x18, 0x66, 0x9d, 0x3d, 0xc7, 0xe8, 0x42, 0xe8, 0xf5, 0x2e, 0x00, 0xca, 0xb8, 0x67, 0xbd, 0xcb, + 0x8d, 0xdd, 0xea, 0x4e, 0xc2, 0xf1, 0x8e, 0x38, 0x9e, 0x53, 0xf1, 0x5f, 0x00, 0xc2, 0x1c, 0xa6, + 0x9e, 0xd8, 0x29, 0x18, 0xad, 0x6b, 0x35, 0x4c, 0x2c, 0x4d, 0xc7, 0x4c, 0x6d, 0x54, 0x79, 0xbb, + 0x81, 0x10, 0x0c, 0x39, 0x0b, 0x26, 0x24, 0xaa, 0xb0, 0x6b, 0xb4, 0x05, 0x9d, 0x3b, 0x32, 0x32, + 0xb5, 0x6c, 0xda, 0x35, 0x8d, 0xb2, 0x70, 0xc6, 0xe6, 0x2e, 0x1f, 0x9c, 0x10, 0xef, 0xee, 0xcb, + 0xcc, 0x7f, 0xd1, 0x2c, 0x61, 0x65, 0xcc, 0xee, 0xd9, 0x13, 0x7f, 0x1c, 0x86, 0xb1, 0x2e, 0x4f, + 0x24, 0xc3, 0x98, 0xce, 0xaa, 0x91, 0xdd, 0xc4, 0x7d, 0x94, 0xe7, 0x0f, 0x2d, 0x76, 0x57, 0x93, + 0x02, 0x39, 0xd0, 0x21, 0x46, 0xbf, 0x81, 0x23, 0x36, 0x7f, 0x02, 0x9c, 0x27, 0x78, 0x68, 0xd3, + 0xf4, 0x56, 0x82, 0x12, 0x73, 0xa1, 0x8c, 0xc9, 0x2f, 0x0f, 0xa1, 0x43, 0xf2, 0xd0, 0xd3, 0x3d, + 0xc3, 0x1f, 0xa2, 0x7b, 0x4e, 0x7c, 0x90, 0xee, 0x09, 0xbf, 0x67, 0xf7, 0xa0, 0x05, 0x18, 0x26, + 0x54, 0xa3, 0x0d, 0x12, 0xff, 0xcf, 0xbf, 0x41, 0x2a, 0xe8, 0x33, 0xc0, 0x3c, 0xb2, 0x3c, 0x73, + 0xe3, 0xa1, 0x2d, 0x04, 0x9f, 0xee, 0x00, 0xc5, 0x45, 0xa2, 0x15, 0x78, 0xd2, 0xc6, 0x65, 0x6c, + 0xdb, 0x46, 0xbd, 0xa2, 0xf2, 0x69, 0x4f, 0xe2, 0x11, 0x46, 0x36, 0x75, 0x40, 0xb3, 0x95, 0x99, + 0x2a, 0xa1, 0x03, 0xe3, 0xfb, 0x04, 0xdd, 0x85, 0xf1, 0x12, 0xae, 0x62, 0x8a, 0x4b, 0x2a, 0xb7, + 0xe1, 0x52, 0x87, 0x31, 0x3a, 0x00, 0xe3, 0x84, 0x8b, 0x56, 0x5c, 0xb0, 0xc7, 0xfb, 0x5b, 0x38, + 0x59, 0x32, 0x88, 0x56, 0xac, 0xfa, 0x11, 0xc3, 0x01, 0x88, 0xcf, 0x78, 0xf0, 0x3e, 0xe6, 0xae, + 0x06, 0x5d, 0x0d, 0x45, 0x80, 0x10, 0x10, 0xff, 0x0b, 0x60, 0x6c, 0xdd, 0x20, 0x03, 0x36, 0xe5, + 0x59, 0x38, 0x52, 0xd5, 0x8a, 0xb8, 0xaa, 0x96, 0x8d, 0x2a, 0xc5, 0xb6, 0xdb, 0x9c, 0x31, 0xb6, + 0xb7, 0xcc, 0xb6, 0xd0, 0x39, 0x38, 0x6a, 0x63, 0xcb, 0xb4, 0xa9, 0x5a, 0x36, 0x70, 0xb5, 0x44, + 0xe2, 0xc1, 0x54, 0x70, 0x3a, 0xaa, 0x8c, 0xf0, 0xcd, 0x65, 0xb6, 0x87, 0x66, 0xe1, 0x29, 0xd7, + 0x89, 0x27, 0xc5, 0xf3, 0x0d, 0x31, 0x5f, 0xc4, 0x6d, 0x3c, 0x85, 0x1c, 0x21, 0x3e, 0x09, 0x43, + 0x81, 0xc7, 0xc9, 0x9b, 0x74, 0x85, 0xe2, 0x1a, 0x9a, 0x80, 0x61, 0x8a, 0xeb, 0x5a, 0x9d, 0xb2, + 0xca, 0x8a, 0x2a, 0xee, 0xea, 0x1d, 0x26, 0x8b, 0x00, 0x83, 0x0d, 0xa3, 0xc4, 0x87, 0x9b, 0xe2, + 0x5c, 0xa2, 0x14, 0x8c, 0x95, 0x30, 0xd1, 0x6d, 0x83, 0xbd, 0x53, 0xe3, 0x31, 0xae, 0xb4, 0x6b, + 0x0b, 0x25, 0x60, 0xc4, 0x7b, 0xcc, 0xf1, 0x91, 0x14, 0x98, 0x8e, 0x28, 0x9d, 0x35, 0x5a, 0x83, + 0x61, 0xf6, 0x50, 0xb8, 0xa4, 0xd8, 0xdc, 0x95, 0x03, 0xca, 0xb4, 0x5f, 0x92, 0xb4, 0xce, 0x50, + 0x72, 0x9d, 0xda, 0x2d, 0xc5, 0xa5, 0x40, 0xf7, 0x60, 0xac, 0xeb, 0x6c, 0xe3, 0x16, 0xc0, 0xb5, + 0x41, 0x19, 0xb3, 0x6f, 0xa1, 0x9c, 0xb6, 0x9b, 0x0c, 0x5d, 0x87, 0xd0, 0xdc, 0xae, 0x63, 0x5b, + 0x75, 0x0e, 0x10, 0xf1, 0x28, 0x6b, 0xd0, 0x44, 0x1f, 0xf5, 0x5d, 0x03, 0x6f, 0x7b, 0x95, 0x15, + 0x65, 0xde, 0xce, 0x4e, 0xcf, 0x90, 0x19, 0xfd, 0x10, 0x43, 0x66, 0xec, 0xbd, 0x86, 0xcc, 0x0d, + 0x18, 0xa9, 0x60, 0xca, 0xa6, 0x85, 0x3b, 0xae, 0x06, 0x18, 0x34, 0xca, 0x89, 0x0a, 0x5f, 0xa0, + 0x1c, 0x84, 0x6e, 0x2d, 0x12, 0x4c, 0xdd, 0x79, 0x30, 0xf8, 0x70, 0x89, 0x72, 0x6c, 0x1e, 0xd3, + 0xc4, 0x75, 0x18, 0xeb, 0x4a, 0xa2, 0x53, 0x59, 0x0f, 0x70, 0xcb, 0xad, 0x42, 0xe7, 0x12, 0x9d, + 0x82, 0xc3, 0x4d, 0xad, 0xda, 0xf0, 0x0a, 0x90, 0x2f, 0xe6, 0x03, 0xd7, 0x40, 0xe2, 0x26, 0x14, + 0xfa, 0xb3, 0x75, 0x1c, 0xfc, 0x6a, 0x28, 0x32, 0x2c, 0x84, 0xc5, 0x3f, 0xc2, 0x91, 0xee, 0x22, + 0x40, 0x37, 0xe0, 0xb0, 0x41, 0x71, 0x8d, 0xc4, 0xf9, 0xc4, 0xbc, 0x34, 0x60, 0xe1, 0x28, 0x1c, + 0x85, 0x66, 0x61, 0x98, 0x1f, 0x6a, 0xe3, 0x01, 0x86, 0x8f, 0xf7, 0xe1, 0x65, 0xc7, 0xc8, 0x9e, + 0xa5, 0xeb, 0x27, 0x3e, 0x80, 0xa3, 0x4b, 0x6c, 0xb0, 0xbd, 0xfb, 0x9b, 0x7e, 0x1a, 0x0a, 0x65, + 0xcd, 0xa8, 0xaa, 0x46, 0xb9, 0x33, 0x00, 0x59, 0x73, 0x46, 0x94, 0x31, 0x67, 0x7f, 0xa5, 0xec, + 0x0d, 0xb6, 0x99, 0xef, 0x00, 0x3c, 0xed, 0xfb, 0x9a, 0x47, 0x09, 0x38, 0x91, 0x93, 0x0b, 0xaa, + 0x92, 0xdf, 0x54, 0x97, 0x37, 0x94, 0xdb, 0xd9, 0x82, 0xba, 0x24, 0x2f, 0x67, 0xb7, 0xd6, 0x0b, + 0xc2, 0x10, 0xfa, 0x05, 0x9c, 0xec, 0xb3, 0x2d, 0x6f, 0x28, 0xea, 0xa2, 0x22, 0x67, 0x0b, 0xb2, + 0x00, 0x50, 0x12, 0x26, 0x7c, 0xcc, 0x8a, 0xbc, 0xb9, 0x9e, 0x5d, 0x94, 0x85, 0x00, 0x9a, 0x84, + 0xa7, 0xfb, 0xec, 0xf9, 0x42, 0xb6, 0xb0, 0x95, 0x17, 0x82, 0xe8, 0x0c, 0xfc, 0x59, 0x9f, 0x49, + 0x91, 0xb3, 0x4b, 0x42, 0x08, 0x9d, 0x87, 0xa9, 0x7d, 0x86, 0x65, 0x59, 0x51, 0x56, 0xee, 0xe4, + 0xd4, 0x8d, 0x85, 0x55, 0x79, 0xb1, 0x90, 0x17, 0x86, 0x7d, 0xbc, 0x16, 0x94, 0x8d, 0x35, 0xf9, + 0x0e, 0x77, 0x96, 0xef, 0x2c, 0xca, 0x79, 0x21, 0x3c, 0xf7, 0x2c, 0x0a, 0x83, 0xd9, 0xcd, 0x15, + 0xd4, 0x06, 0x30, 0xcc, 0x0f, 0x20, 0x68, 0xa0, 0xf3, 0x49, 0xe2, 0xc2, 0x11, 0x5e, 0xee, 0x49, + 0xed, 0xaf, 0xa0, 0xfd, 0x49, 0x7c, 0xad, 0x7c, 0xf5, 0xa1, 0x9e, 0x26, 0x58, 0x6f, 0xd8, 0xb8, + 0x86, 0xc9, 0xfd, 0x74, 0x51, 0x23, 0x86, 0x9e, 0x6e, 0x10, 0x6c, 0x5f, 0xee, 0x37, 0x11, 0xaa, + 0xd5, 0x4b, 0x9a, 0x5d, 0xe2, 0xd6, 0x26, 0x26, 0x69, 0xc3, 0x4c, 0x5b, 0xb6, 0xf9, 0xb0, 0x95, + 0xde, 0xb6, 0x0d, 0x8a, 0x1f, 0x7d, 0xf1, 0xed, 0x3f, 0x03, 0x57, 0xc5, 0x59, 0xf7, 0xbf, 0x60, + 0xa6, 0x93, 0x7d, 0x92, 0xf9, 0x83, 0xd7, 0xff, 0x52, 0x67, 0x73, 0xc7, 0xfb, 0xa7, 0x45, 0xe6, + 0xc1, 0x0c, 0xfa, 0x1a, 0xc0, 0x60, 0x0e, 0x53, 0x74, 0xf6, 0xb0, 0x43, 0x1e, 0x97, 0x27, 0x1e, + 0x7d, 0x0e, 0x14, 0xff, 0x0e, 0x9e, 0xfd, 0x3f, 0xe0, 0xe8, 0xdb, 0xf4, 0xd7, 0x57, 0x33, 0xeb, + 0x06, 0x35, 0x0f, 0x91, 0xe8, 0x39, 0xf4, 0xa8, 0xb4, 0xb1, 0x56, 0x62, 0x22, 0x67, 0x91, 0xe4, + 0x27, 0xd2, 0x47, 0x1b, 0xdf, 0xdc, 0x41, 0x5f, 0x02, 0x18, 0x72, 0x9a, 0x0f, 0x89, 0x87, 0x76, + 0x26, 0x57, 0x78, 0x6e, 0x80, 0xee, 0x15, 0xff, 0xfc, 0x71, 0x25, 0xfe, 0x12, 0x5d, 0x1a, 0x50, + 0x22, 0xfa, 0x01, 0xc0, 0x13, 0xee, 0xc9, 0x16, 0x0d, 0x76, 0xf2, 0x4d, 0x5c, 0x3c, 0xca, 0xcd, + 0x15, 0xf9, 0xf8, 0xa3, 0xd4, 0xa8, 0x9c, 0xb8, 0x75, 0xdc, 0x1a, 0xed, 0xb3, 0xee, 0x38, 0x35, + 0xfb, 0x19, 0x80, 0x61, 0x3e, 0x03, 0x0f, 0x6c, 0xcc, 0x9e, 0x11, 0x99, 0x98, 0x90, 0xf8, 0xb7, + 0x0a, 0xc9, 0xfb, 0x56, 0x21, 0xc9, 0x35, 0x8b, 0xb6, 0xc4, 0xbf, 0x7c, 0x14, 0x95, 0x57, 0x66, + 0x8e, 0x59, 0xa4, 0xf3, 0x60, 0x26, 0x51, 0x78, 0xba, 0x0b, 0x02, 0x9f, 0xef, 0x82, 0x29, 0x7f, + 0x3d, 0xfc, 0x75, 0xf8, 0x72, 0x17, 0x80, 0xf6, 0x2e, 0x10, 0x8f, 0x7e, 0x71, 0x3e, 0xfa, 0x34, + 0x1e, 0x10, 0xc0, 0xc2, 0xdf, 0xc0, 0xf3, 0x9b, 0xc3, 0x8b, 0xca, 0xd6, 0xd2, 0xfa, 0x8b, 0x57, + 0xc9, 0xa1, 0x97, 0xaf, 0x92, 0x43, 0x6f, 0x5e, 0x25, 0xc1, 0x9f, 0xda, 0x49, 0xf0, 0xa4, 0x9d, + 0x04, 0xcf, 0xda, 0x49, 0xf0, 0xa2, 0x9d, 0x04, 0xdf, 0xb4, 0x93, 0xe0, 0x75, 0x3b, 0x39, 0xf4, + 0xa6, 0x9d, 0x04, 0xff, 0xd8, 0x4b, 0x0e, 0x3d, 0xdd, 0x4b, 0x82, 0x17, 0x7b, 0xc9, 0xa1, 0x97, + 0x7b, 0xc9, 0xa1, 0x7b, 0x6b, 0x15, 0xd3, 0x7a, 0x50, 0x91, 0x9a, 0xa6, 0x73, 0x00, 0xb5, 0x35, + 0xa9, 0x41, 0x32, 0xec, 0xc2, 0xf9, 0xd7, 0xe5, 0x48, 0x6f, 0x1a, 0x25, 0x6c, 0xa7, 0x3d, 0x73, + 0xc6, 0x2a, 0x56, 0xcc, 0x0c, 0x7e, 0x48, 0xdd, 0x2f, 0x27, 0xbd, 0xdf, 0x76, 0x8a, 0x61, 0x96, + 0x80, 0x2b, 0x3f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x9e, 0x26, 0xe9, 0xab, 0xcc, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/cluster/public_crudapi.vesapi.go b/pbgo/extschema/schema/cluster/public_crudapi.vesapi.go index faca42f43..40e6ced01 100644 --- a/pbgo/extschema/schema/cluster/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/cluster/public_crudapi.vesapi.go @@ -2305,6 +2305,7 @@ var APISwaggerJSON string = `{ "x-displayname": "Create Cluster", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_type": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-proto-message": "ves.io.schema.cluster.CreateSpecType", "properties": { "auto_http_config": { @@ -2336,6 +2337,11 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.map.max_pairs": "32" } }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "endpoint_selection": { "description": " Policy for selection of endpoints from local site or remote site or both", "$ref": "#/definitions/clusterEndpointSelectionPolicy", @@ -2370,11 +2376,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/clusterSubsetFallbackPolicy", "x-displayname": "Fallback Policy" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "health_checks": { "type": "array", "description": " List of references to healthcheck object for this cluster.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 4\n", @@ -2389,7 +2390,7 @@ var APISwaggerJSON string = `{ }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", - "$ref": "#/definitions/ioschemaEmpty", + "$ref": "#/definitions/clusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -2431,6 +2432,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "100" } }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol V1 for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol V2 for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V2" + }, "tls_parameters": { "description": " TLS parameters to access upstream endpoints for this cluster", "$ref": "#/definitions/schemaUpstreamTlsParamsType", @@ -2603,8 +2614,9 @@ var APISwaggerJSON string = `{ "title": "Get cluster", "x-displayname": "Get Cluster", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", - "x-ves-oneof-field-lb_source_ip_persistance_choice": "[]", + "x-ves-oneof-field-lb_source_ip_persistance_choice": "[\"disable_lb_source_ip_persistance\",\"enable_lb_source_ip_persistance\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_type": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-proto-message": "ves.io.schema.cluster.GetSpecType", "properties": { "auto_http_config": { @@ -2636,6 +2648,21 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.map.max_pairs": "32" } }, + "disable_lb_source_ip_persistance": { + "description": "Exclusive with [enable_lb_source_ip_persistance]\n Disable LB source IP persistence", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable LB Source IP persistence" + }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, + "enable_lb_source_ip_persistance": { + "description": "Exclusive with [disable_lb_source_ip_persistance]\n Enable LB source IP persistence", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable LB Source IP persistence" + }, "endpoint_selection": { "description": " Policy for selection of endpoints from local site or remote site or both", "$ref": "#/definitions/clusterEndpointSelectionPolicy", @@ -2670,11 +2697,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/clusterSubsetFallbackPolicy", "x-displayname": "Fallback Policy" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "health_checks": { "type": "array", "description": " List of references to healthcheck object for this cluster.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 4\n", @@ -2689,7 +2711,7 @@ var APISwaggerJSON string = `{ }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", - "$ref": "#/definitions/ioschemaEmpty", + "$ref": "#/definitions/clusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -2731,6 +2753,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "100" } }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol V1 for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol V2 for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V2" + }, "tls_parameters": { "description": " TLS parameters to access upstream endpoints for this cluster", "$ref": "#/definitions/schemaUpstreamTlsParamsType", @@ -2738,6 +2770,21 @@ var APISwaggerJSON string = `{ } } }, + "clusterHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for upstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.cluster.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to the upstream request headers and when a\n Stateful formatter is selected, it applies to response headers sent to the client.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on http load balancer. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "clusterHttp2ProtocolOptions": { "type": "object", "description": "Http2 Protocol options for upstream connections", @@ -2988,6 +3035,7 @@ var APISwaggerJSON string = `{ "x-displayname": "Replace Cluster", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_type": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-proto-message": "ves.io.schema.cluster.ReplaceSpecType", "properties": { "auto_http_config": { @@ -3019,6 +3067,11 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.map.max_pairs": "32" } }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "endpoint_selection": { "description": " Policy for selection of endpoints from local site or remote site or both", "$ref": "#/definitions/clusterEndpointSelectionPolicy", @@ -3053,11 +3106,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/clusterSubsetFallbackPolicy", "x-displayname": "Fallback Policy" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "health_checks": { "type": "array", "description": " List of references to healthcheck object for this cluster.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 4\n", @@ -3072,7 +3120,7 @@ var APISwaggerJSON string = `{ }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", - "$ref": "#/definitions/ioschemaEmpty", + "$ref": "#/definitions/clusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -3114,6 +3162,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "100" } }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol V1 for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol V2 for upstream connections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V2" + }, "tls_parameters": { "description": " TLS parameters to access upstream endpoints for this cluster", "$ref": "#/definitions/schemaUpstreamTlsParamsType", @@ -3404,23 +3462,29 @@ var APISwaggerJSON string = `{ "title": "HeaderTransformationType", "x-displayname": "Header Transformation", "x-ves-displayorder": "1", - "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "Exclusive with [preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Default" }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Legacy" + }, "preserve_case_header_transformation": { - "description": "Exclusive with [default_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "Exclusive with [default_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Proper Case" @@ -3487,10 +3551,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3547,10 +3615,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3653,10 +3725,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4111,7 +4187,22 @@ var APISwaggerJSON string = `{ "description": "Reference to Root CA Certificate", "title": "Root CA Certificate", "x-displayname": "Root CA Certificate Reference", - "x-ves-proto-message": "ves.io.schema.TrustedCAList" + "x-ves-proto-message": "ves.io.schema.TrustedCAList", + "properties": { + "trusted_ca_list": { + "type": "array", + "description": " Reference to Root CA Certificate\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Root CA Certificate", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Root CA Certificate Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } }, "schemaUpstreamCertificateParamsType": { "type": "object", diff --git a/pbgo/extschema/schema/cluster/types.pb.go b/pbgo/extschema/schema/cluster/types.pb.go index dacada5d1..3769204bd 100644 --- a/pbgo/extschema/schema/cluster/types.pb.go +++ b/pbgo/extschema/schema/cluster/types.pb.go @@ -579,6 +579,59 @@ func (m *Http2ProtocolOptions) GetEnabled() bool { return false } +// Http1ProtocolOptions +// +// x-displayName: "HTTP/1.1 Protocol Options" +// HTTP/1.1 Protocol options for upstream connections +type Http1ProtocolOptions struct { + // Header transformation + // + // x-displayName: "Header Transformation Configuration" + // Two mutually exclusive types of header key formatters are supported: Stateless + // (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless + // formatter is selected, it applies to the upstream request headers and when a + // Stateful formatter is selected, it applies to response headers sent to the client. + // It's essential to ensure that the same formatter type (either stateless or stateful) + // is applied on http load balancer. If different formatter types are applied, only + // the stateful formatter will take effect, and the stateless formatter will be disregarded. + HeaderTransformation *schema.HeaderTransformationType `protobuf:"bytes,1,opt,name=header_transformation,json=headerTransformation,proto3" json:"header_transformation,omitempty"` +} + +func (m *Http1ProtocolOptions) Reset() { *m = Http1ProtocolOptions{} } +func (*Http1ProtocolOptions) ProtoMessage() {} +func (*Http1ProtocolOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_f4ccbbce2db2b210, []int{4} +} +func (m *Http1ProtocolOptions) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Http1ProtocolOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Http1ProtocolOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_Http1ProtocolOptions.Merge(m, src) +} +func (m *Http1ProtocolOptions) XXX_Size() int { + return m.Size() +} +func (m *Http1ProtocolOptions) XXX_DiscardUnknown() { + xxx_messageInfo_Http1ProtocolOptions.DiscardUnknown(m) +} + +var xxx_messageInfo_Http1ProtocolOptions proto.InternalMessageInfo + +func (m *Http1ProtocolOptions) GetHeaderTransformation() *schema.HeaderTransformationType { + if m != nil { + return m.HeaderTransformation + } + return nil +} + // GlobalSpecType // // x-displayName: "Global Configuration Specification" @@ -774,22 +827,32 @@ type GlobalSpecType struct { // // x-displayName: "Header Transformation Configuration" // Settings to normalize the headers of upstream requests. - HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,20,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` - // Loadbalancer source IP persistance + HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,20,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` // Deprecated: Do not use. + // Loadbalancer source IP persistence // - // x-displayName: "LB source IP persistance" + // x-displayName: "LB source IP persistence" // Enable/Disable stickiness of source IP used by LB while connecting to origin server // // Types that are valid to be assigned to LbSourceIpPersistanceChoice: // *GlobalSpecType_EnableLbSourceIpPersistance // *GlobalSpecType_DisableLbSourceIpPersistance LbSourceIpPersistanceChoice isGlobalSpecType_LbSourceIpPersistanceChoice `protobuf_oneof:"lb_source_ip_persistance_choice"` + // Proxy Protocol Configuration + // + // x-displayName: "Proxy Protocol Configuration" + // Proxy protocol configuration options for upstream connections + // + // Types that are valid to be assigned to ProxyProtocolType: + // *GlobalSpecType_DisableProxyProtocol + // *GlobalSpecType_ProxyProtocolV1 + // *GlobalSpecType_ProxyProtocolV2 + ProxyProtocolType isGlobalSpecType_ProxyProtocolType `protobuf_oneof:"proxy_protocol_type"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } func (*GlobalSpecType) ProtoMessage() {} func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_f4ccbbce2db2b210, []int{4} + return fileDescriptor_f4ccbbce2db2b210, []int{5} } func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -832,9 +895,15 @@ type isGlobalSpecType_LbSourceIpPersistanceChoice interface { MarshalTo([]byte) (int, error) Size() int } +type isGlobalSpecType_ProxyProtocolType interface { + isGlobalSpecType_ProxyProtocolType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type GlobalSpecType_Http1Config struct { - Http1Config *schema.Empty `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` + Http1Config *Http1ProtocolOptions `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` } type GlobalSpecType_Http2Options struct { Http2Options *Http2ProtocolOptions `protobuf:"bytes,16,opt,name=http2_options,json=http2Options,proto3,oneof" json:"http2_options,omitempty"` @@ -854,6 +923,15 @@ type GlobalSpecType_EnableLbSourceIpPersistance struct { type GlobalSpecType_DisableLbSourceIpPersistance struct { DisableLbSourceIpPersistance *schema.Empty `protobuf:"bytes,26,opt,name=disable_lb_source_ip_persistance,json=disableLbSourceIpPersistance,proto3,oneof" json:"disable_lb_source_ip_persistance,omitempty"` } +type GlobalSpecType_DisableProxyProtocol struct { + DisableProxyProtocol *schema.Empty `protobuf:"bytes,28,opt,name=disable_proxy_protocol,json=disableProxyProtocol,proto3,oneof" json:"disable_proxy_protocol,omitempty"` +} +type GlobalSpecType_ProxyProtocolV1 struct { + ProxyProtocolV1 *schema.Empty `protobuf:"bytes,29,opt,name=proxy_protocol_v1,json=proxyProtocolV1,proto3,oneof" json:"proxy_protocol_v1,omitempty"` +} +type GlobalSpecType_ProxyProtocolV2 struct { + ProxyProtocolV2 *schema.Empty `protobuf:"bytes,30,opt,name=proxy_protocol_v2,json=proxyProtocolV2,proto3,oneof" json:"proxy_protocol_v2,omitempty"` +} func (*GlobalSpecType_Http1Config) isGlobalSpecType_HttpProtocolType() {} func (*GlobalSpecType_Http2Options) isGlobalSpecType_HttpProtocolType() {} @@ -862,6 +940,9 @@ func (*GlobalSpecType_NoPanicThreshold) isGlobalSpecType_PanicThresholdType() func (*GlobalSpecType_PanicThreshold) isGlobalSpecType_PanicThresholdType() {} func (*GlobalSpecType_EnableLbSourceIpPersistance) isGlobalSpecType_LbSourceIpPersistanceChoice() {} func (*GlobalSpecType_DisableLbSourceIpPersistance) isGlobalSpecType_LbSourceIpPersistanceChoice() {} +func (*GlobalSpecType_DisableProxyProtocol) isGlobalSpecType_ProxyProtocolType() {} +func (*GlobalSpecType_ProxyProtocolV1) isGlobalSpecType_ProxyProtocolType() {} +func (*GlobalSpecType_ProxyProtocolV2) isGlobalSpecType_ProxyProtocolType() {} func (m *GlobalSpecType) GetHttpProtocolType() isGlobalSpecType_HttpProtocolType { if m != nil { @@ -881,6 +962,12 @@ func (m *GlobalSpecType) GetLbSourceIpPersistanceChoice() isGlobalSpecType_LbSou } return nil } +func (m *GlobalSpecType) GetProxyProtocolType() isGlobalSpecType_ProxyProtocolType { + if m != nil { + return m.ProxyProtocolType + } + return nil +} func (m *GlobalSpecType) GetEndpoints() []*schema.ObjectRefType { if m != nil { @@ -980,7 +1067,7 @@ func (m *GlobalSpecType) GetDnsDiscoveryType() DnsDiscoveryType { return STRICT_DNS } -func (m *GlobalSpecType) GetHttp1Config() *schema.Empty { +func (m *GlobalSpecType) GetHttp1Config() *Http1ProtocolOptions { if x, ok := m.GetHttpProtocolType().(*GlobalSpecType_Http1Config); ok { return x.Http1Config } @@ -1015,6 +1102,7 @@ func (m *GlobalSpecType) GetPanicThreshold() uint32 { return 0 } +// Deprecated: Do not use. func (m *GlobalSpecType) GetHeaderTransformationType() *schema.HeaderTransformationType { if m != nil { return m.HeaderTransformationType @@ -1036,6 +1124,27 @@ func (m *GlobalSpecType) GetDisableLbSourceIpPersistance() *schema.Empty { return nil } +func (m *GlobalSpecType) GetDisableProxyProtocol() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*GlobalSpecType_DisableProxyProtocol); ok { + return x.DisableProxyProtocol + } + return nil +} + +func (m *GlobalSpecType) GetProxyProtocolV1() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*GlobalSpecType_ProxyProtocolV1); ok { + return x.ProxyProtocolV1 + } + return nil +} + +func (m *GlobalSpecType) GetProxyProtocolV2() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*GlobalSpecType_ProxyProtocolV2); ok { + return x.ProxyProtocolV2 + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1046,6 +1155,9 @@ func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { (*GlobalSpecType_PanicThreshold)(nil), (*GlobalSpecType_EnableLbSourceIpPersistance)(nil), (*GlobalSpecType_DisableLbSourceIpPersistance)(nil), + (*GlobalSpecType_DisableProxyProtocol)(nil), + (*GlobalSpecType_ProxyProtocolV1)(nil), + (*GlobalSpecType_ProxyProtocolV2)(nil), } } @@ -1076,12 +1188,17 @@ type CreateSpecType struct { // *CreateSpecType_PanicThreshold PanicThresholdType isCreateSpecType_PanicThresholdType `protobuf_oneof:"panic_threshold_type"` HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,20,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` + // Types that are valid to be assigned to ProxyProtocolType: + // *CreateSpecType_DisableProxyProtocol + // *CreateSpecType_ProxyProtocolV1 + // *CreateSpecType_ProxyProtocolV2 + ProxyProtocolType isCreateSpecType_ProxyProtocolType `protobuf_oneof:"proxy_protocol_type"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } func (*CreateSpecType) ProtoMessage() {} func (*CreateSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_f4ccbbce2db2b210, []int{5} + return fileDescriptor_f4ccbbce2db2b210, []int{6} } func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1118,9 +1235,15 @@ type isCreateSpecType_PanicThresholdType interface { MarshalTo([]byte) (int, error) Size() int } +type isCreateSpecType_ProxyProtocolType interface { + isCreateSpecType_ProxyProtocolType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type CreateSpecType_Http1Config struct { - Http1Config *schema.Empty `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` + Http1Config *Http1ProtocolOptions `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` } type CreateSpecType_Http2Options struct { Http2Options *Http2ProtocolOptions `protobuf:"bytes,16,opt,name=http2_options,json=http2Options,proto3,oneof" json:"http2_options,omitempty"` @@ -1134,12 +1257,24 @@ type CreateSpecType_NoPanicThreshold struct { type CreateSpecType_PanicThreshold struct { PanicThreshold uint32 `protobuf:"varint,19,opt,name=panic_threshold,json=panicThreshold,proto3,oneof" json:"panic_threshold,omitempty"` } +type CreateSpecType_DisableProxyProtocol struct { + DisableProxyProtocol *schema.Empty `protobuf:"bytes,28,opt,name=disable_proxy_protocol,json=disableProxyProtocol,proto3,oneof" json:"disable_proxy_protocol,omitempty"` +} +type CreateSpecType_ProxyProtocolV1 struct { + ProxyProtocolV1 *schema.Empty `protobuf:"bytes,29,opt,name=proxy_protocol_v1,json=proxyProtocolV1,proto3,oneof" json:"proxy_protocol_v1,omitempty"` +} +type CreateSpecType_ProxyProtocolV2 struct { + ProxyProtocolV2 *schema.Empty `protobuf:"bytes,30,opt,name=proxy_protocol_v2,json=proxyProtocolV2,proto3,oneof" json:"proxy_protocol_v2,omitempty"` +} -func (*CreateSpecType_Http1Config) isCreateSpecType_HttpProtocolType() {} -func (*CreateSpecType_Http2Options) isCreateSpecType_HttpProtocolType() {} -func (*CreateSpecType_AutoHttpConfig) isCreateSpecType_HttpProtocolType() {} -func (*CreateSpecType_NoPanicThreshold) isCreateSpecType_PanicThresholdType() {} -func (*CreateSpecType_PanicThreshold) isCreateSpecType_PanicThresholdType() {} +func (*CreateSpecType_Http1Config) isCreateSpecType_HttpProtocolType() {} +func (*CreateSpecType_Http2Options) isCreateSpecType_HttpProtocolType() {} +func (*CreateSpecType_AutoHttpConfig) isCreateSpecType_HttpProtocolType() {} +func (*CreateSpecType_NoPanicThreshold) isCreateSpecType_PanicThresholdType() {} +func (*CreateSpecType_PanicThreshold) isCreateSpecType_PanicThresholdType() {} +func (*CreateSpecType_DisableProxyProtocol) isCreateSpecType_ProxyProtocolType() {} +func (*CreateSpecType_ProxyProtocolV1) isCreateSpecType_ProxyProtocolType() {} +func (*CreateSpecType_ProxyProtocolV2) isCreateSpecType_ProxyProtocolType() {} func (m *CreateSpecType) GetHttpProtocolType() isCreateSpecType_HttpProtocolType { if m != nil { @@ -1153,6 +1288,12 @@ func (m *CreateSpecType) GetPanicThresholdType() isCreateSpecType_PanicThreshold } return nil } +func (m *CreateSpecType) GetProxyProtocolType() isCreateSpecType_ProxyProtocolType { + if m != nil { + return m.ProxyProtocolType + } + return nil +} func (m *CreateSpecType) GetEndpoints() []*schema.ObjectRefType { if m != nil { @@ -1238,7 +1379,7 @@ func (m *CreateSpecType) GetEndpointSelection() EndpointSelectionPolicy { return DISTRIBUTED } -func (m *CreateSpecType) GetHttp1Config() *schema.Empty { +func (m *CreateSpecType) GetHttp1Config() *Http1ProtocolOptions { if x, ok := m.GetHttpProtocolType().(*CreateSpecType_Http1Config); ok { return x.Http1Config } @@ -1280,6 +1421,27 @@ func (m *CreateSpecType) GetHeaderTransformationType() *schema.HeaderTransformat return nil } +func (m *CreateSpecType) GetDisableProxyProtocol() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*CreateSpecType_DisableProxyProtocol); ok { + return x.DisableProxyProtocol + } + return nil +} + +func (m *CreateSpecType) GetProxyProtocolV1() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*CreateSpecType_ProxyProtocolV1); ok { + return x.ProxyProtocolV1 + } + return nil +} + +func (m *CreateSpecType) GetProxyProtocolV2() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*CreateSpecType_ProxyProtocolV2); ok { + return x.ProxyProtocolV2 + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1288,6 +1450,9 @@ func (*CreateSpecType) XXX_OneofWrappers() []interface{} { (*CreateSpecType_AutoHttpConfig)(nil), (*CreateSpecType_NoPanicThreshold)(nil), (*CreateSpecType_PanicThreshold)(nil), + (*CreateSpecType_DisableProxyProtocol)(nil), + (*CreateSpecType_ProxyProtocolV1)(nil), + (*CreateSpecType_ProxyProtocolV2)(nil), } } @@ -1319,12 +1484,17 @@ type ReplaceSpecType struct { // *ReplaceSpecType_PanicThreshold PanicThresholdType isReplaceSpecType_PanicThresholdType `protobuf_oneof:"panic_threshold_type"` HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,20,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` + // Types that are valid to be assigned to ProxyProtocolType: + // *ReplaceSpecType_DisableProxyProtocol + // *ReplaceSpecType_ProxyProtocolV1 + // *ReplaceSpecType_ProxyProtocolV2 + ProxyProtocolType isReplaceSpecType_ProxyProtocolType `protobuf_oneof:"proxy_protocol_type"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } func (*ReplaceSpecType) ProtoMessage() {} func (*ReplaceSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_f4ccbbce2db2b210, []int{6} + return fileDescriptor_f4ccbbce2db2b210, []int{7} } func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1361,9 +1531,15 @@ type isReplaceSpecType_PanicThresholdType interface { MarshalTo([]byte) (int, error) Size() int } +type isReplaceSpecType_ProxyProtocolType interface { + isReplaceSpecType_ProxyProtocolType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type ReplaceSpecType_Http1Config struct { - Http1Config *schema.Empty `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` + Http1Config *Http1ProtocolOptions `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` } type ReplaceSpecType_Http2Options struct { Http2Options *Http2ProtocolOptions `protobuf:"bytes,16,opt,name=http2_options,json=http2Options,proto3,oneof" json:"http2_options,omitempty"` @@ -1377,12 +1553,24 @@ type ReplaceSpecType_NoPanicThreshold struct { type ReplaceSpecType_PanicThreshold struct { PanicThreshold uint32 `protobuf:"varint,19,opt,name=panic_threshold,json=panicThreshold,proto3,oneof" json:"panic_threshold,omitempty"` } +type ReplaceSpecType_DisableProxyProtocol struct { + DisableProxyProtocol *schema.Empty `protobuf:"bytes,28,opt,name=disable_proxy_protocol,json=disableProxyProtocol,proto3,oneof" json:"disable_proxy_protocol,omitempty"` +} +type ReplaceSpecType_ProxyProtocolV1 struct { + ProxyProtocolV1 *schema.Empty `protobuf:"bytes,29,opt,name=proxy_protocol_v1,json=proxyProtocolV1,proto3,oneof" json:"proxy_protocol_v1,omitempty"` +} +type ReplaceSpecType_ProxyProtocolV2 struct { + ProxyProtocolV2 *schema.Empty `protobuf:"bytes,30,opt,name=proxy_protocol_v2,json=proxyProtocolV2,proto3,oneof" json:"proxy_protocol_v2,omitempty"` +} -func (*ReplaceSpecType_Http1Config) isReplaceSpecType_HttpProtocolType() {} -func (*ReplaceSpecType_Http2Options) isReplaceSpecType_HttpProtocolType() {} -func (*ReplaceSpecType_AutoHttpConfig) isReplaceSpecType_HttpProtocolType() {} -func (*ReplaceSpecType_NoPanicThreshold) isReplaceSpecType_PanicThresholdType() {} -func (*ReplaceSpecType_PanicThreshold) isReplaceSpecType_PanicThresholdType() {} +func (*ReplaceSpecType_Http1Config) isReplaceSpecType_HttpProtocolType() {} +func (*ReplaceSpecType_Http2Options) isReplaceSpecType_HttpProtocolType() {} +func (*ReplaceSpecType_AutoHttpConfig) isReplaceSpecType_HttpProtocolType() {} +func (*ReplaceSpecType_NoPanicThreshold) isReplaceSpecType_PanicThresholdType() {} +func (*ReplaceSpecType_PanicThreshold) isReplaceSpecType_PanicThresholdType() {} +func (*ReplaceSpecType_DisableProxyProtocol) isReplaceSpecType_ProxyProtocolType() {} +func (*ReplaceSpecType_ProxyProtocolV1) isReplaceSpecType_ProxyProtocolType() {} +func (*ReplaceSpecType_ProxyProtocolV2) isReplaceSpecType_ProxyProtocolType() {} func (m *ReplaceSpecType) GetHttpProtocolType() isReplaceSpecType_HttpProtocolType { if m != nil { @@ -1396,6 +1584,12 @@ func (m *ReplaceSpecType) GetPanicThresholdType() isReplaceSpecType_PanicThresho } return nil } +func (m *ReplaceSpecType) GetProxyProtocolType() isReplaceSpecType_ProxyProtocolType { + if m != nil { + return m.ProxyProtocolType + } + return nil +} func (m *ReplaceSpecType) GetEndpoints() []*schema.ObjectRefType { if m != nil { @@ -1481,7 +1675,7 @@ func (m *ReplaceSpecType) GetEndpointSelection() EndpointSelectionPolicy { return DISTRIBUTED } -func (m *ReplaceSpecType) GetHttp1Config() *schema.Empty { +func (m *ReplaceSpecType) GetHttp1Config() *Http1ProtocolOptions { if x, ok := m.GetHttpProtocolType().(*ReplaceSpecType_Http1Config); ok { return x.Http1Config } @@ -1523,6 +1717,27 @@ func (m *ReplaceSpecType) GetHeaderTransformationType() *schema.HeaderTransforma return nil } +func (m *ReplaceSpecType) GetDisableProxyProtocol() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*ReplaceSpecType_DisableProxyProtocol); ok { + return x.DisableProxyProtocol + } + return nil +} + +func (m *ReplaceSpecType) GetProxyProtocolV1() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*ReplaceSpecType_ProxyProtocolV1); ok { + return x.ProxyProtocolV1 + } + return nil +} + +func (m *ReplaceSpecType) GetProxyProtocolV2() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*ReplaceSpecType_ProxyProtocolV2); ok { + return x.ProxyProtocolV2 + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1531,6 +1746,9 @@ func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { (*ReplaceSpecType_AutoHttpConfig)(nil), (*ReplaceSpecType_NoPanicThreshold)(nil), (*ReplaceSpecType_PanicThreshold)(nil), + (*ReplaceSpecType_DisableProxyProtocol)(nil), + (*ReplaceSpecType_ProxyProtocolV1)(nil), + (*ReplaceSpecType_ProxyProtocolV2)(nil), } } @@ -1565,12 +1783,17 @@ type GetSpecType struct { // *GetSpecType_EnableLbSourceIpPersistance // *GetSpecType_DisableLbSourceIpPersistance LbSourceIpPersistanceChoice isGetSpecType_LbSourceIpPersistanceChoice `protobuf_oneof:"lb_source_ip_persistance_choice"` + // Types that are valid to be assigned to ProxyProtocolType: + // *GetSpecType_DisableProxyProtocol + // *GetSpecType_ProxyProtocolV1 + // *GetSpecType_ProxyProtocolV2 + ProxyProtocolType isGetSpecType_ProxyProtocolType `protobuf_oneof:"proxy_protocol_type"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } func (*GetSpecType) ProtoMessage() {} func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_f4ccbbce2db2b210, []int{7} + return fileDescriptor_f4ccbbce2db2b210, []int{8} } func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1613,9 +1836,15 @@ type isGetSpecType_LbSourceIpPersistanceChoice interface { MarshalTo([]byte) (int, error) Size() int } +type isGetSpecType_ProxyProtocolType interface { + isGetSpecType_ProxyProtocolType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type GetSpecType_Http1Config struct { - Http1Config *schema.Empty `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` + Http1Config *Http1ProtocolOptions `protobuf:"bytes,22,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` } type GetSpecType_Http2Options struct { Http2Options *Http2ProtocolOptions `protobuf:"bytes,16,opt,name=http2_options,json=http2Options,proto3,oneof" json:"http2_options,omitempty"` @@ -1635,6 +1864,15 @@ type GetSpecType_EnableLbSourceIpPersistance struct { type GetSpecType_DisableLbSourceIpPersistance struct { DisableLbSourceIpPersistance *schema.Empty `protobuf:"bytes,26,opt,name=disable_lb_source_ip_persistance,json=disableLbSourceIpPersistance,proto3,oneof" json:"disable_lb_source_ip_persistance,omitempty"` } +type GetSpecType_DisableProxyProtocol struct { + DisableProxyProtocol *schema.Empty `protobuf:"bytes,28,opt,name=disable_proxy_protocol,json=disableProxyProtocol,proto3,oneof" json:"disable_proxy_protocol,omitempty"` +} +type GetSpecType_ProxyProtocolV1 struct { + ProxyProtocolV1 *schema.Empty `protobuf:"bytes,29,opt,name=proxy_protocol_v1,json=proxyProtocolV1,proto3,oneof" json:"proxy_protocol_v1,omitempty"` +} +type GetSpecType_ProxyProtocolV2 struct { + ProxyProtocolV2 *schema.Empty `protobuf:"bytes,30,opt,name=proxy_protocol_v2,json=proxyProtocolV2,proto3,oneof" json:"proxy_protocol_v2,omitempty"` +} func (*GetSpecType_Http1Config) isGetSpecType_HttpProtocolType() {} func (*GetSpecType_Http2Options) isGetSpecType_HttpProtocolType() {} @@ -1643,6 +1881,9 @@ func (*GetSpecType_NoPanicThreshold) isGetSpecType_PanicThresholdType() func (*GetSpecType_PanicThreshold) isGetSpecType_PanicThresholdType() {} func (*GetSpecType_EnableLbSourceIpPersistance) isGetSpecType_LbSourceIpPersistanceChoice() {} func (*GetSpecType_DisableLbSourceIpPersistance) isGetSpecType_LbSourceIpPersistanceChoice() {} +func (*GetSpecType_DisableProxyProtocol) isGetSpecType_ProxyProtocolType() {} +func (*GetSpecType_ProxyProtocolV1) isGetSpecType_ProxyProtocolType() {} +func (*GetSpecType_ProxyProtocolV2) isGetSpecType_ProxyProtocolType() {} func (m *GetSpecType) GetHttpProtocolType() isGetSpecType_HttpProtocolType { if m != nil { @@ -1662,6 +1903,12 @@ func (m *GetSpecType) GetLbSourceIpPersistanceChoice() isGetSpecType_LbSourceIpP } return nil } +func (m *GetSpecType) GetProxyProtocolType() isGetSpecType_ProxyProtocolType { + if m != nil { + return m.ProxyProtocolType + } + return nil +} func (m *GetSpecType) GetEndpoints() []*schema.ObjectRefType { if m != nil { @@ -1747,7 +1994,7 @@ func (m *GetSpecType) GetEndpointSelection() EndpointSelectionPolicy { return DISTRIBUTED } -func (m *GetSpecType) GetHttp1Config() *schema.Empty { +func (m *GetSpecType) GetHttp1Config() *Http1ProtocolOptions { if x, ok := m.GetHttpProtocolType().(*GetSpecType_Http1Config); ok { return x.Http1Config } @@ -1803,6 +2050,27 @@ func (m *GetSpecType) GetDisableLbSourceIpPersistance() *schema.Empty { return nil } +func (m *GetSpecType) GetDisableProxyProtocol() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*GetSpecType_DisableProxyProtocol); ok { + return x.DisableProxyProtocol + } + return nil +} + +func (m *GetSpecType) GetProxyProtocolV1() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*GetSpecType_ProxyProtocolV1); ok { + return x.ProxyProtocolV1 + } + return nil +} + +func (m *GetSpecType) GetProxyProtocolV2() *schema.Empty { + if x, ok := m.GetProxyProtocolType().(*GetSpecType_ProxyProtocolV2); ok { + return x.ProxyProtocolV2 + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1813,6 +2081,9 @@ func (*GetSpecType) XXX_OneofWrappers() []interface{} { (*GetSpecType_PanicThreshold)(nil), (*GetSpecType_EnableLbSourceIpPersistance)(nil), (*GetSpecType_DisableLbSourceIpPersistance)(nil), + (*GetSpecType_DisableProxyProtocol)(nil), + (*GetSpecType_ProxyProtocolV1)(nil), + (*GetSpecType_ProxyProtocolV2)(nil), } } @@ -1835,6 +2106,8 @@ func init() { golang_proto.RegisterType((*CircuitBreaker)(nil), "ves.io.schema.cluster.CircuitBreaker") proto.RegisterType((*Http2ProtocolOptions)(nil), "ves.io.schema.cluster.Http2ProtocolOptions") golang_proto.RegisterType((*Http2ProtocolOptions)(nil), "ves.io.schema.cluster.Http2ProtocolOptions") + proto.RegisterType((*Http1ProtocolOptions)(nil), "ves.io.schema.cluster.Http1ProtocolOptions") + golang_proto.RegisterType((*Http1ProtocolOptions)(nil), "ves.io.schema.cluster.Http1ProtocolOptions") proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.cluster.GlobalSpecType") golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.cluster.GlobalSpecType") proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.cluster.GlobalSpecType.DefaultSubsetEntry") @@ -1859,152 +2132,161 @@ func init() { } var fileDescriptor_f4ccbbce2db2b210 = []byte{ - // 2310 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xdf, 0x6f, 0xdb, 0xd6, - 0x15, 0xd6, 0x95, 0x65, 0x5b, 0xbe, 0xb6, 0x25, 0xfa, 0xc6, 0x4e, 0x68, 0x27, 0x55, 0x55, 0x2f, - 0xc3, 0x12, 0x97, 0x91, 0x23, 0x39, 0x4e, 0x1c, 0x03, 0x6b, 0x62, 0x5a, 0xf2, 0x8f, 0x44, 0x95, - 0x1c, 0x4a, 0x2e, 0xd6, 0x2e, 0x2b, 0x4b, 0x51, 0x57, 0x12, 0x67, 0x8a, 0xe4, 0x48, 0xca, 0xb5, - 0x31, 0x04, 0x08, 0xf2, 0x30, 0xa0, 0x7b, 0x1a, 0xf2, 0x32, 0xa0, 0xd8, 0x1f, 0x30, 0xf4, 0x4f, - 0x98, 0xf2, 0xe0, 0x75, 0x18, 0x56, 0xf4, 0x65, 0x79, 0x5b, 0xd0, 0xa7, 0x46, 0x79, 0xe9, 0x5e, - 0x86, 0x60, 0x4f, 0x43, 0x9e, 0x86, 0x7b, 0x49, 0xda, 0x92, 0x2c, 0xe6, 0xc7, 0x6c, 0x74, 0x28, - 0xe0, 0x37, 0x91, 0xe7, 0x7c, 0xdf, 0xb9, 0xbc, 0xe7, 0x5c, 0x7e, 0x5f, 0x18, 0xc3, 0x77, 0xb6, - 0xb1, 0x95, 0x50, 0xf4, 0x59, 0x4b, 0xae, 0xe1, 0xba, 0x34, 0x2b, 0xab, 0x0d, 0xcb, 0xc6, 0xe6, - 0xac, 0xbd, 0x6b, 0x60, 0x2b, 0x61, 0x98, 0xba, 0xad, 0xa3, 0x09, 0x27, 0x25, 0xe1, 0xa4, 0x24, - 0xdc, 0x94, 0xa9, 0x4b, 0x55, 0xc5, 0xae, 0x35, 0x4a, 0x09, 0x59, 0xaf, 0xcf, 0x56, 0xf5, 0xaa, - 0x3e, 0x4b, 0xb3, 0x4b, 0x8d, 0x0a, 0xbd, 0xa2, 0x17, 0xf4, 0x97, 0xc3, 0x32, 0x15, 0xeb, 0x2a, - 0x84, 0x4d, 0x5b, 0x6c, 0xab, 0x32, 0x75, 0xb6, 0x33, 0xae, 0x1b, 0xb6, 0xa2, 0x6b, 0x5e, 0x70, - 0xb2, 0x33, 0xd8, 0x8e, 0x3b, 0xd7, 0x19, 0xda, 0x96, 0x54, 0xa5, 0x2c, 0xd9, 0xd8, 0x8d, 0xc6, - 0xbb, 0xa2, 0x0a, 0xfe, 0x54, 0xec, 0xa0, 0x9e, 0xfe, 0x26, 0x08, 0xc7, 0xf3, 0x0d, 0x5b, 0x55, - 0xb0, 0x99, 0xc6, 0x36, 0x96, 0x49, 0xac, 0xb8, 0x6b, 0x60, 0x74, 0x0d, 0x46, 0x65, 0x5d, 0xb3, - 0xb0, 0xdc, 0xb0, 0x95, 0x6d, 0x2c, 0xce, 0xef, 0xec, 0xb0, 0x20, 0x0e, 0x2e, 0x8c, 0xf2, 0x91, - 0xff, 0x34, 0x41, 0xe0, 0x4f, 0xff, 0xdc, 0xeb, 0xeb, 0x9f, 0xe9, 0x63, 0xef, 0x87, 0x85, 0x48, - 0x5b, 0xda, 0xfc, 0xce, 0x0e, 0x7a, 0x17, 0x86, 0x15, 0xcd, 0xc6, 0xe6, 0xb6, 0xa4, 0xb2, 0x41, - 0x8a, 0x88, 0x7a, 0x88, 0x81, 0x99, 0x10, 0xbb, 0xf7, 0xf7, 0xf3, 0xc2, 0x7e, 0x02, 0xfa, 0x29, - 0x44, 0x25, 0xc9, 0xc2, 0x22, 0xfe, 0xa5, 0x53, 0x5a, 0xb4, 0x95, 0x3a, 0x66, 0xfb, 0x7a, 0xc0, - 0xfe, 0x55, 0x17, 0x18, 0x92, 0x9a, 0x71, 0x33, 0x8b, 0x4a, 0x1d, 0xa3, 0x1b, 0x70, 0xbc, 0x2e, - 0xed, 0x1c, 0xa0, 0x0d, 0x6c, 0xca, 0x58, 0xb3, 0xd9, 0x10, 0x25, 0x18, 0xf5, 0x08, 0x42, 0x33, - 0x41, 0xb6, 0x2c, 0xa0, 0xba, 0xb4, 0xe3, 0xa1, 0x37, 0x9c, 0x44, 0x94, 0x83, 0x67, 0xdb, 0x9f, - 0xb2, 0x2a, 0xd9, 0xf8, 0x53, 0x69, 0x57, 0xac, 0x48, 0x8a, 0xda, 0x30, 0x31, 0xdb, 0xdf, 0xf3, - 0x89, 0x27, 0xdb, 0x20, 0xab, 0x0e, 0x62, 0xc5, 0x01, 0x2c, 0x8e, 0xfc, 0xfb, 0xbd, 0xa1, 0x24, - 0x97, 0xe2, 0xe6, 0xb8, 0x2b, 0xdc, 0xfc, 0xf4, 0x67, 0x00, 0x4e, 0x65, 0xb4, 0xb2, 0xa1, 0x2b, - 0x9a, 0x5d, 0x68, 0x94, 0x2c, 0x6c, 0x17, 0xb0, 0x8a, 0x65, 0x5b, 0x37, 0xe9, 0x16, 0x27, 0x61, - 0x68, 0x0b, 0xef, 0x5a, 0x2c, 0x88, 0xf7, 0x5d, 0x18, 0xe2, 0xdf, 0xf2, 0xaa, 0xc0, 0x87, 0x60, - 0x70, 0xba, 0xdf, 0xec, 0x7b, 0x02, 0x00, 0x2d, 0xfa, 0x10, 0x04, 0x19, 0x46, 0xa0, 0xa9, 0x8b, - 0x0b, 0x5f, 0x36, 0x41, 0x0c, 0x9e, 0x83, 0x67, 0xb2, 0x8a, 0x65, 0xc7, 0xf5, 0x4a, 0x9c, 0xdc, - 0x8d, 0x57, 0x74, 0x33, 0xee, 0xf0, 0x23, 0x90, 0xfc, 0xba, 0x09, 0x10, 0x64, 0x60, 0xe8, 0x36, - 0xde, 0xb5, 0xf8, 0xb0, 0x53, 0x82, 0xe9, 0x9f, 0xfe, 0x47, 0x10, 0x46, 0x96, 0x15, 0x53, 0x6e, - 0x28, 0x36, 0x6f, 0x62, 0x69, 0x0b, 0x9b, 0xe8, 0x26, 0x0c, 0x1b, 0xa6, 0xa2, 0x9b, 0x8a, 0xbd, - 0x4b, 0x7b, 0x1b, 0x49, 0xc5, 0x12, 0x9d, 0xc3, 0x2e, 0xe8, 0x0d, 0x5b, 0xd1, 0xaa, 0x1b, 0x6e, - 0x16, 0x1f, 0x22, 0x6b, 0x14, 0xf6, 0x51, 0x88, 0x87, 0x8c, 0xac, 0x6b, 0x9a, 0xbb, 0xfb, 0xaa, - 0x52, 0x57, 0x6c, 0xb7, 0xe7, 0x67, 0xbe, 0x69, 0x82, 0x50, 0xf2, 0x72, 0xea, 0x4a, 0x7b, 0x13, - 0xef, 0xdf, 0x0f, 0x0a, 0xd1, 0x03, 0x40, 0x96, 0xe4, 0x13, 0x0e, 0x03, 0x6b, 0x65, 0x45, 0xab, - 0x8a, 0x26, 0xfe, 0x55, 0x03, 0x5b, 0xb6, 0xe5, 0x0e, 0x80, 0x3f, 0x87, 0x0b, 0x10, 0xdc, 0x7c, - 0x94, 0x84, 0x83, 0x26, 0xb6, 0x4d, 0x05, 0x5b, 0x6e, 0xeb, 0x7d, 0xa1, 0x5e, 0x1e, 0x5a, 0x84, - 0x23, 0x64, 0x74, 0xf6, 0x4b, 0xf6, 0xbf, 0x1c, 0x37, 0x5c, 0x97, 0x76, 0xbc, 0x72, 0x5d, 0x5d, - 0x5e, 0x84, 0xe3, 0x6b, 0xb6, 0x6d, 0xa4, 0x36, 0xc8, 0x81, 0x92, 0x75, 0x35, 0xef, 0x1c, 0x30, - 0x34, 0x0d, 0x07, 0xb1, 0x26, 0x95, 0x54, 0x5c, 0xa6, 0xbb, 0x1b, 0xe6, 0xc3, 0x84, 0xdc, 0x36, - 0x1b, 0x58, 0xf0, 0x02, 0xd3, 0xbf, 0x39, 0x05, 0x23, 0xab, 0xaa, 0x5e, 0x92, 0xd4, 0x82, 0x81, - 0x65, 0x3a, 0x15, 0x77, 0xe0, 0x10, 0x76, 0x67, 0xc6, 0x19, 0x8d, 0xe1, 0xd4, 0xb9, 0xae, 0xb6, - 0xe4, 0x4b, 0x64, 0x8c, 0x05, 0x5c, 0x21, 0x00, 0x7e, 0xe2, 0x8b, 0x7b, 0x61, 0x0f, 0xb1, 0x3f, - 0x30, 0x71, 0xe1, 0x80, 0x05, 0xfd, 0x1c, 0x8e, 0xd6, 0xb0, 0xa4, 0xda, 0x35, 0x51, 0xae, 0x61, - 0x79, 0xcb, 0x62, 0x83, 0xaf, 0x41, 0xcb, 0x7e, 0x71, 0x6f, 0xd8, 0x41, 0x51, 0xd0, 0x3e, 0x73, - 0x48, 0x18, 0x71, 0x6e, 0x2f, 0x53, 0x2e, 0xa4, 0xc0, 0xd3, 0xaa, 0x2e, 0x95, 0x4b, 0x92, 0x2a, - 0x69, 0x32, 0x36, 0x45, 0x49, 0xad, 0x92, 0xe1, 0xa8, 0xd5, 0x69, 0x17, 0x23, 0x29, 0x2e, 0xd1, - 0xf3, 0x05, 0x9a, 0xc8, 0xb6, 0x81, 0x96, 0x3c, 0x8c, 0x3b, 0x61, 0x13, 0x6a, 0xaf, 0x20, 0x2a, - 0xc2, 0xa8, 0xec, 0x8c, 0xb0, 0x58, 0x72, 0x66, 0x98, 0xb6, 0x7b, 0x38, 0xf5, 0x63, 0x9f, 0x1a, - 0x9d, 0x03, 0xcf, 0x87, 0xf6, 0x9a, 0x00, 0x08, 0x11, 0xb9, 0xf3, 0x18, 0xfc, 0x1a, 0x32, 0xde, - 0x56, 0x89, 0x16, 0x3d, 0x45, 0x64, 0x1a, 0xc8, 0x06, 0x25, 0x7d, 0x68, 0xfd, 0xcf, 0x34, 0xff, - 0x16, 0x29, 0xf1, 0xb8, 0xd9, 0x76, 0x74, 0xe3, 0xad, 0x6f, 0xff, 0xda, 0x37, 0xf0, 0xf0, 0x11, - 0x08, 0x32, 0x40, 0x88, 0xe2, 0x0e, 0xa8, 0x85, 0x1e, 0x00, 0x18, 0x29, 0xe3, 0x8a, 0xd4, 0x50, - 0xbd, 0xe2, 0xec, 0x00, 0xad, 0xbd, 0xe0, 0x53, 0xbb, 0x73, 0x5a, 0x12, 0x69, 0x07, 0xeb, 0xd0, - 0x65, 0x34, 0xdb, 0xdc, 0xe5, 0xdf, 0x21, 0x4b, 0xf8, 0xfc, 0x11, 0x08, 0xc1, 0x60, 0xc0, 0x59, - 0xc6, 0xe7, 0xfb, 0xcb, 0xf8, 0xed, 0x23, 0x10, 0x0c, 0x07, 0x84, 0xd1, 0x72, 0x3b, 0x0c, 0x95, - 0x60, 0xb4, 0x22, 0xa9, 0x6a, 0x49, 0x92, 0xb7, 0x44, 0x43, 0x57, 0x15, 0x79, 0x97, 0x1d, 0xa4, - 0xbd, 0x7b, 0xd7, 0x67, 0x11, 0x0e, 0x6e, 0xc5, 0xc5, 0x6c, 0x50, 0x08, 0x3f, 0xe2, 0x3d, 0x3a, - 0x6d, 0x61, 0xa4, 0xd2, 0x11, 0x45, 0x77, 0x60, 0xc4, 0x56, 0x2d, 0xd1, 0x90, 0x4c, 0xa9, 0x8e, - 0x6d, 0x6c, 0x5a, 0x6c, 0x98, 0xb6, 0xee, 0x7c, 0x57, 0x89, 0x4d, 0xc3, 0xb2, 0x4d, 0x2c, 0xd5, - 0x8b, 0xaa, 0xb5, 0x41, 0x72, 0x2d, 0xba, 0xad, 0x21, 0xc2, 0x2b, 0x8c, 0xda, 0xee, 0x4d, 0x4a, - 0x80, 0x78, 0x88, 0xda, 0xde, 0x3e, 0x44, 0x39, 0xf4, 0x86, 0xcd, 0x0e, 0xd1, 0x83, 0x7c, 0x6a, - 0xcf, 0x5d, 0x48, 0xbb, 0xee, 0x8c, 0x1d, 0xa4, 0x17, 0x9d, 0x6c, 0x74, 0x03, 0x8e, 0xd5, 0x6c, - 0xdb, 0x10, 0x95, 0xb2, 0x8a, 0xf7, 0x29, 0xa0, 0x3f, 0x45, 0x94, 0x64, 0xaf, 0x97, 0x55, 0xec, - 0x11, 0x7c, 0x0c, 0xc7, 0x74, 0x47, 0x3f, 0xc5, 0xb2, 0x27, 0xa0, 0xec, 0x08, 0x7d, 0x34, 0xbf, - 0xdd, 0xeb, 0xa5, 0xb7, 0xee, 0x6c, 0x32, 0x7a, 0x57, 0x0c, 0xc9, 0x10, 0x1d, 0x4c, 0x27, 0x9d, - 0x34, 0x52, 0x60, 0x94, 0xb6, 0x27, 0xf1, 0xaa, 0xf9, 0xf4, 0xf2, 0xdd, 0x0e, 0x39, 0x87, 0x6b, - 0x0c, 0x77, 0x87, 0xd1, 0x47, 0x70, 0xac, 0xac, 0x59, 0xa2, 0xaa, 0xeb, 0x5b, 0x0d, 0x43, 0xac, - 0x48, 0x75, 0x45, 0xdd, 0x65, 0x23, 0xb4, 0xc6, 0x79, 0x9f, 0x1a, 0x69, 0xcd, 0xca, 0xd2, 0x74, - 0xba, 0xfa, 0xb0, 0xb7, 0x57, 0x42, 0xb4, 0xec, 0x05, 0x56, 0x28, 0x0d, 0x12, 0x21, 0x22, 0xdc, - 0x65, 0xc5, 0x92, 0xf5, 0x6d, 0x6c, 0xee, 0x52, 0xdb, 0xc3, 0x46, 0x29, 0xf9, 0x4f, 0xfc, 0xc9, - 0xd3, 0x5e, 0x7e, 0x17, 0x3f, 0x53, 0xee, 0x8a, 0xa1, 0x1b, 0x70, 0x84, 0x34, 0x25, 0x29, 0xca, - 0xba, 0x56, 0x51, 0xaa, 0xec, 0x69, 0xba, 0xf9, 0xe3, 0x5d, 0xd4, 0x99, 0xba, 0x41, 0x04, 0x8c, - 0xf0, 0xac, 0x05, 0x84, 0x61, 0x8a, 0x58, 0xa6, 0x00, 0xf4, 0x09, 0x1c, 0x25, 0x97, 0x29, 0xcf, - 0x1a, 0xb1, 0xcc, 0x4b, 0xdb, 0xd7, 0xeb, 0x65, 0xef, 0x0c, 0xff, 0x73, 0x77, 0x91, 0x6b, 0x01, - 0x81, 0x2e, 0x29, 0xe5, 0x49, 0xc1, 0x0a, 0x64, 0xa4, 0x86, 0xad, 0x8b, 0x74, 0xd4, 0xdc, 0x65, - 0x9e, 0x79, 0x8d, 0x65, 0x46, 0x08, 0x8a, 0xd4, 0x73, 0x57, 0x7a, 0x0b, 0x22, 0x4d, 0x17, 0x0d, - 0x49, 0x53, 0x64, 0xd1, 0xae, 0x99, 0xd8, 0xaa, 0xe9, 0x6a, 0x99, 0x45, 0xaf, 0x64, 0x02, 0x02, - 0xa3, 0xe9, 0x1b, 0x04, 0x56, 0xf4, 0x50, 0x68, 0x01, 0x46, 0xbb, 0x89, 0x4e, 0x39, 0xb6, 0x69, - 0xcf, 0x7d, 0x7d, 0x51, 0xdb, 0xb4, 0x06, 0x84, 0x88, 0xd1, 0x89, 0xd4, 0xe1, 0x54, 0x0d, 0x4b, - 0x65, 0x6c, 0x8a, 0xb6, 0x29, 0x69, 0x56, 0x45, 0x37, 0xeb, 0x92, 0x73, 0x04, 0x49, 0x67, 0xc7, - 0xe9, 0x6a, 0xba, 0x3b, 0xbb, 0x46, 0x01, 0xc5, 0x8e, 0xfc, 0x83, 0xce, 0x92, 0x8d, 0x13, 0xd8, - 0x9a, 0x4f, 0x0e, 0xc2, 0xf0, 0x6d, 0x47, 0x30, 0x45, 0xb5, 0x24, 0x5a, 0x7a, 0xc3, 0x94, 0xb1, - 0xa8, 0x18, 0xc4, 0xed, 0x59, 0x8a, 0x65, 0x13, 0x91, 0x60, 0x27, 0x5f, 0xb2, 0x07, 0x83, 0x4f, - 0xee, 0x81, 0xef, 0xc8, 0x36, 0x04, 0x85, 0xb3, 0x0e, 0x4f, 0xb6, 0x54, 0xa0, 0x2c, 0xeb, 0xc6, - 0xc6, 0x01, 0x07, 0xaa, 0xc2, 0x78, 0x59, 0xb1, 0x5e, 0x5e, 0x67, 0xea, 0xf5, 0xea, 0x9c, 0x73, - 0x89, 0x7a, 0x16, 0x9a, 0xba, 0x09, 0xd1, 0xe1, 0xf7, 0x36, 0x62, 0x60, 0xdf, 0x16, 0x76, 0x9c, - 0xd8, 0x90, 0x40, 0x7e, 0xa2, 0x71, 0xd8, 0xbf, 0x2d, 0xa9, 0x0d, 0x4c, 0x3d, 0xd5, 0x90, 0xe0, - 0x5c, 0x2c, 0x06, 0x17, 0xc0, 0xe2, 0x1f, 0xc0, 0x97, 0x4d, 0xf0, 0x7b, 0x00, 0x63, 0x70, 0x32, - 0x6f, 0x2a, 0x55, 0x45, 0x8b, 0x17, 0xb0, 0xb9, 0x8d, 0x4d, 0xeb, 0x82, 0x77, 0xf6, 0xad, 0x8b, - 0x08, 0x24, 0xe1, 0x4d, 0x18, 0x77, 0xe3, 0x1b, 0xba, 0xae, 0x5e, 0x70, 0x47, 0xf8, 0x62, 0xfc, - 0xe0, 0x2d, 0x1a, 0x47, 0xe7, 0xe6, 0xb8, 0x14, 0x97, 0x9c, 0xe3, 0x16, 0xb8, 0xeb, 0x5c, 0xf2, - 0x32, 0x97, 0xbc, 0xc2, 0x25, 0xe7, 0xb9, 0x54, 0x92, 0x4b, 0x5e, 0xe3, 0x52, 0x97, 0x21, 0x0b, - 0x19, 0x57, 0x45, 0xe3, 0xae, 0x60, 0x5a, 0x28, 0x74, 0x85, 0x4b, 0xa6, 0xe0, 0x24, 0x64, 0xbc, - 0x62, 0x71, 0x4f, 0xce, 0xfa, 0xe7, 0xb9, 0xab, 0xdc, 0x35, 0x3e, 0x01, 0x11, 0x1d, 0x75, 0xc3, - 0x3d, 0x25, 0x74, 0x32, 0x10, 0xbb, 0xd7, 0x04, 0x67, 0xbe, 0x72, 0x44, 0x62, 0xa2, 0xd5, 0x04, - 0xe1, 0xd4, 0x1c, 0x97, 0xbc, 0xca, 0xa5, 0x52, 0xfc, 0x25, 0x38, 0xde, 0x35, 0x8b, 0x0e, 0x62, - 0x62, 0xaf, 0x09, 0x90, 0x8b, 0x18, 0x6b, 0x35, 0x41, 0x7f, 0x72, 0x81, 0x4b, 0x5e, 0xe7, 0xaf, - 0xc3, 0xb7, 0xfd, 0x1a, 0x24, 0xca, 0x35, 0x5d, 0x91, 0x31, 0x3a, 0xbd, 0xd7, 0x04, 0x53, 0x8f, - 0x9b, 0x80, 0x6d, 0x35, 0xc1, 0x40, 0x6a, 0x9e, 0x8b, 0xa7, 0xae, 0x92, 0x21, 0xbb, 0x15, 0x0a, - 0x0f, 0x33, 0x23, 0xb7, 0x42, 0xe1, 0x09, 0xe6, 0xf4, 0xad, 0x50, 0x78, 0x8c, 0x41, 0xb7, 0x42, - 0x61, 0x96, 0x99, 0x9c, 0xfe, 0xf3, 0x08, 0x8c, 0x2c, 0x9b, 0x58, 0xb2, 0xf1, 0xbe, 0x11, 0x5b, - 0x7d, 0x53, 0x23, 0x36, 0xdc, 0x66, 0xc4, 0xda, 0xed, 0xd7, 0x9d, 0xff, 0xc5, 0x7e, 0x45, 0x3a, - 0xed, 0x57, 0x97, 0xe9, 0x92, 0x8f, 0xd3, 0x74, 0xf9, 0xd9, 0xad, 0xdc, 0xd1, 0xec, 0xd6, 0x21, - 0xa3, 0x75, 0xf7, 0x18, 0x8d, 0xd6, 0x61, 0x27, 0x25, 0xbe, 0xa1, 0x91, 0xea, 0xec, 0x76, 0x0f, - 0x23, 0xd5, 0xed, 0x92, 0x8a, 0xc7, 0xe1, 0x92, 0x0e, 0xf9, 0xa2, 0xdb, 0x47, 0xf1, 0x45, 0xdd, - 0x8e, 0xe8, 0x92, 0xbf, 0x23, 0xea, 0x65, 0x7e, 0x66, 0x7c, 0xcd, 0xcf, 0x61, 0x9f, 0xf3, 0xb3, - 0xe3, 0xf1, 0x39, 0x3d, 0x1c, 0xce, 0x2f, 0x8e, 0xcf, 0xe1, 0xf4, 0xf2, 0x36, 0xd7, 0x5f, 0xdf, - 0x1e, 0x74, 0x1b, 0x03, 0xe1, 0xe8, 0xc6, 0xe0, 0x90, 0x15, 0xb8, 0xf9, 0x66, 0x56, 0xa0, 0x87, - 0x09, 0x48, 0xbf, 0xa9, 0x09, 0xe8, 0x29, 0xff, 0x17, 0x7d, 0xe4, 0xbf, 0x87, 0xde, 0xe3, 0x63, - 0xd4, 0x7b, 0x7f, 0x95, 0x3f, 0x06, 0x55, 0x1c, 0xfb, 0xfa, 0xbd, 0xae, 0x7f, 0x4d, 0xf3, 0x5c, - 0x4f, 0x25, 0x3a, 0xfd, 0xe0, 0x05, 0xe8, 0x71, 0x9f, 0xbf, 0xec, 0xa3, 0x43, 0xec, 0x83, 0x17, - 0xa0, 0x67, 0xa4, 0x5d, 0x49, 0xa6, 0xff, 0x32, 0x02, 0xa3, 0x02, 0x36, 0x54, 0x49, 0x3e, 0x11, - 0x91, 0x1f, 0xa8, 0x88, 0x7c, 0xe2, 0x23, 0x22, 0xd7, 0x7d, 0xb8, 0xbb, 0xda, 0x7d, 0xa2, 0x22, - 0x27, 0x2a, 0x72, 0xa2, 0x22, 0x27, 0x2a, 0x72, 0x14, 0x15, 0xf9, 0x5b, 0x04, 0x0e, 0xaf, 0x62, - 0xfb, 0x44, 0x41, 0x7e, 0x98, 0x0a, 0x72, 0xd7, 0x47, 0x41, 0xe6, 0xfd, 0xbe, 0xe7, 0x1e, 0xb4, - 0xfa, 0x44, 0x3d, 0x4e, 0xd4, 0xe3, 0x44, 0x3d, 0xfe, 0x9f, 0xea, 0x81, 0xee, 0x1e, 0xe9, 0x4b, - 0xe3, 0xab, 0x3e, 0x30, 0x7e, 0x7c, 0xb4, 0x0f, 0x8c, 0xdf, 0xc3, 0x77, 0xc5, 0xef, 0x5f, 0xfb, - 0xf8, 0x95, 0x57, 0x7f, 0xcc, 0xfb, 0xd1, 0x83, 0x17, 0xe0, 0x55, 0x49, 0x87, 0xbf, 0xe9, 0xcd, - 0xd4, 0xe1, 0x44, 0x4f, 0xa1, 0x41, 0x51, 0x38, 0x2c, 0xe4, 0x37, 0x73, 0x69, 0x51, 0xc8, 0xf3, - 0xeb, 0x39, 0x26, 0x80, 0xc6, 0xe0, 0x68, 0x36, 0xb3, 0x54, 0x28, 0x8a, 0x42, 0xe6, 0xce, 0x66, - 0xa6, 0x50, 0x64, 0x00, 0x1a, 0x85, 0x43, 0xc2, 0x7a, 0x6e, 0x55, 0x5c, 0x5b, 0x2a, 0xac, 0x31, - 0x41, 0x04, 0xe1, 0x80, 0xb0, 0x94, 0x4b, 0xe7, 0xdf, 0x67, 0xfa, 0x08, 0x3c, 0xcb, 0x8b, 0xf9, - 0x0f, 0x32, 0x82, 0xb0, 0x9e, 0xce, 0x30, 0xa1, 0xa9, 0xd0, 0x5e, 0x13, 0x84, 0x66, 0xe6, 0x20, - 0xd3, 0xfd, 0xff, 0x16, 0x28, 0x02, 0x61, 0xa1, 0x28, 0xac, 0x2f, 0x17, 0xc5, 0x74, 0xae, 0xc0, - 0x04, 0x28, 0x34, 0xbf, 0xba, 0xbe, 0xbc, 0x94, 0xa5, 0x37, 0xc0, 0xcc, 0x1c, 0x1c, 0xed, 0xf8, - 0x9f, 0x14, 0x14, 0x86, 0xa1, 0xa5, 0xcd, 0x62, 0x9e, 0x09, 0xa0, 0x61, 0x38, 0xf8, 0xc1, 0x15, - 0x31, 0x9f, 0xcb, 0x7e, 0xc8, 0x00, 0x7a, 0x71, 0xd5, 0xb9, 0x08, 0xce, 0xbc, 0x0f, 0xc7, 0x7b, - 0xbd, 0xd7, 0x09, 0x7b, 0x2e, 0x2f, 0xae, 0x2c, 0x65, 0xb3, 0xfc, 0xd2, 0xf2, 0x6d, 0x26, 0x80, - 0x18, 0x38, 0xb2, 0x94, 0xfb, 0x50, 0xcc, 0xe4, 0xd2, 0x1b, 0xf9, 0xf5, 0x1c, 0x79, 0x2c, 0x04, - 0x23, 0xe9, 0xcc, 0xca, 0xd2, 0x66, 0xb6, 0x28, 0x16, 0x36, 0xf9, 0x42, 0xa6, 0xc8, 0x04, 0x67, - 0x36, 0xe1, 0x19, 0x9f, 0x77, 0x19, 0x61, 0x4c, 0xaf, 0x93, 0x27, 0xe0, 0x37, 0x8b, 0x99, 0x34, - 0x13, 0x20, 0x0f, 0x94, 0xcd, 0x93, 0xe5, 0xbb, 0xeb, 0x3a, 0x05, 0xa3, 0xce, 0xf5, 0x86, 0x90, - 0x59, 0xc9, 0x08, 0x42, 0x26, 0xcd, 0x04, 0xe9, 0x7e, 0x04, 0xf9, 0xcf, 0xc0, 0xe3, 0xa7, 0xb1, - 0xc0, 0x93, 0xa7, 0xb1, 0xc0, 0xf3, 0xa7, 0x31, 0x70, 0xbf, 0x15, 0x03, 0x7f, 0x6c, 0xc5, 0xc0, - 0x57, 0xad, 0x18, 0x78, 0xdc, 0x8a, 0x81, 0x27, 0xad, 0x18, 0xf8, 0xb6, 0x15, 0x03, 0xdf, 0xb5, - 0x62, 0x81, 0xe7, 0xad, 0x18, 0xf8, 0xdd, 0xb3, 0x58, 0x60, 0xef, 0x59, 0x0c, 0x3c, 0x7e, 0x16, - 0x0b, 0x3c, 0x79, 0x16, 0x0b, 0x7c, 0x74, 0xbb, 0xaa, 0x1b, 0x5b, 0xd5, 0xc4, 0xb6, 0xae, 0xda, - 0xd8, 0x34, 0xa5, 0x44, 0xc3, 0x9a, 0xa5, 0x3f, 0xc8, 0x81, 0xbd, 0x64, 0x98, 0xfa, 0xb6, 0x52, - 0xc6, 0xe6, 0x25, 0x2f, 0x3c, 0x6b, 0x94, 0xaa, 0xfa, 0x2c, 0xde, 0xb1, 0xdd, 0x3f, 0x75, 0xe9, - 0xfc, 0x83, 0x9e, 0xd2, 0x00, 0x9d, 0xd2, 0xb9, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x25, 0x43, - 0xcd, 0x34, 0xf0, 0x23, 0x00, 0x00, + // 2456 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0x4f, 0x6c, 0xdb, 0xd6, + 0xfd, 0xd7, 0x93, 0x64, 0x47, 0x7e, 0xb6, 0x25, 0xfa, 0xc5, 0x8e, 0x69, 0xc7, 0x55, 0x55, 0xff, + 0xfa, 0x43, 0x53, 0x97, 0x91, 0x23, 0x39, 0x4e, 0x1c, 0x03, 0x6b, 0x6b, 0x5a, 0xf2, 0xbf, 0xa8, + 0x92, 0x42, 0xc9, 0xc1, 0xda, 0x65, 0x65, 0x29, 0xea, 0x59, 0xe2, 0x4c, 0x89, 0x1c, 0x49, 0xb9, + 0x36, 0x86, 0x02, 0x41, 0x6e, 0xdd, 0x69, 0xc8, 0x31, 0x97, 0x5d, 0x87, 0x1e, 0x77, 0x9c, 0x72, + 0x30, 0x0a, 0x0c, 0x28, 0x7a, 0x59, 0x6e, 0x0b, 0x7a, 0x6a, 0x94, 0x61, 0xe8, 0x76, 0x18, 0x82, + 0x9d, 0x86, 0x9c, 0x06, 0x3e, 0x92, 0xb6, 0x44, 0x93, 0x71, 0x9d, 0x78, 0xc0, 0x32, 0xf8, 0x66, + 0xea, 0xfb, 0xfd, 0x7c, 0xbe, 0x8f, 0xef, 0xfb, 0x7d, 0xef, 0xf3, 0x81, 0x64, 0xf8, 0xd6, 0x0e, + 0xd6, 0x93, 0x92, 0x32, 0xab, 0x8b, 0x75, 0xdc, 0x10, 0x66, 0x45, 0xb9, 0xa5, 0x1b, 0x58, 0x9b, + 0x35, 0xf6, 0x54, 0xac, 0x27, 0x55, 0x4d, 0x31, 0x14, 0x34, 0x66, 0xa5, 0x24, 0xad, 0x94, 0xa4, + 0x9d, 0x32, 0x79, 0xb9, 0x26, 0x19, 0xf5, 0x56, 0x25, 0x29, 0x2a, 0x8d, 0xd9, 0x9a, 0x52, 0x53, + 0x66, 0x49, 0x76, 0xa5, 0xb5, 0x45, 0x9e, 0xc8, 0x03, 0xf9, 0xcb, 0x62, 0x99, 0x8c, 0xbb, 0x0a, + 0x61, 0xcd, 0xe0, 0xbb, 0xaa, 0x4c, 0x5e, 0xec, 0x8d, 0x2b, 0xaa, 0x21, 0x29, 0x4d, 0x27, 0x38, + 0xd1, 0x1b, 0xec, 0xc6, 0x4d, 0xf5, 0x86, 0x76, 0x04, 0x59, 0xaa, 0x0a, 0x06, 0xb6, 0xa3, 0x09, + 0x57, 0x54, 0xc2, 0x9f, 0xf3, 0x3d, 0xd4, 0xd3, 0xdf, 0x05, 0xe1, 0x68, 0xa1, 0x65, 0xc8, 0x12, + 0xd6, 0x32, 0xd8, 0xc0, 0xa2, 0x19, 0x2b, 0xef, 0xa9, 0x18, 0x5d, 0x87, 0x31, 0x51, 0x69, 0xea, + 0x58, 0x6c, 0x19, 0xd2, 0x0e, 0xe6, 0xe7, 0x77, 0x77, 0x69, 0x90, 0x00, 0x97, 0x86, 0xd9, 0xe8, + 0xbf, 0xda, 0x20, 0xf0, 0x87, 0xbf, 0xed, 0x87, 0xfa, 0x66, 0x42, 0xf4, 0xdd, 0x08, 0x17, 0xed, + 0x4a, 0x9b, 0xdf, 0xdd, 0x45, 0xef, 0xc1, 0x88, 0xd4, 0x34, 0xb0, 0xb6, 0x23, 0xc8, 0x74, 0x90, + 0x20, 0x62, 0x0e, 0xa2, 0x7f, 0x26, 0x4c, 0xef, 0xff, 0xe9, 0x6d, 0xee, 0x20, 0x01, 0xfd, 0x04, + 0xa2, 0x8a, 0xa0, 0x63, 0x1e, 0xff, 0xc2, 0x2a, 0xcd, 0x1b, 0x52, 0x03, 0xd3, 0x21, 0x0f, 0xd8, + 0x3f, 0x1a, 0x1c, 0x65, 0xa6, 0x66, 0xed, 0xcc, 0xb2, 0xd4, 0xc0, 0xe8, 0x03, 0x38, 0xda, 0x10, + 0x76, 0x0f, 0xd1, 0x2a, 0xd6, 0x44, 0xdc, 0x34, 0xe8, 0x30, 0x21, 0x18, 0x76, 0x08, 0xc2, 0x33, + 0x41, 0xba, 0xca, 0xa1, 0x86, 0xb0, 0xeb, 0xa0, 0x8b, 0x56, 0x22, 0xca, 0xc3, 0x8b, 0xdd, 0x6f, + 0x59, 0x13, 0x0c, 0xfc, 0xb9, 0xb0, 0xc7, 0x6f, 0x09, 0x92, 0xdc, 0xd2, 0x30, 0xdd, 0xe7, 0xf9, + 0xc6, 0x13, 0x5d, 0x90, 0x55, 0x0b, 0xb1, 0x62, 0x01, 0x16, 0x87, 0xfe, 0xf9, 0xfe, 0x40, 0x8a, + 0x49, 0x33, 0x73, 0xcc, 0x55, 0x66, 0x7e, 0xfa, 0x4b, 0x00, 0x27, 0xb3, 0xcd, 0xaa, 0xaa, 0x48, + 0x4d, 0xa3, 0xd4, 0xaa, 0xe8, 0xd8, 0x28, 0x61, 0x19, 0x8b, 0x86, 0xa2, 0x91, 0x2d, 0x4e, 0xc1, + 0xf0, 0x36, 0xde, 0xd3, 0x69, 0x90, 0x08, 0x5d, 0x1a, 0x60, 0xdf, 0x70, 0xaa, 0xc0, 0xfb, 0xe0, + 0xdc, 0x74, 0x9f, 0x16, 0x7a, 0x0c, 0x00, 0x29, 0x7a, 0x1f, 0x04, 0x29, 0x8a, 0x23, 0xa9, 0x8b, + 0x0b, 0x5f, 0xb7, 0x41, 0x1c, 0x4e, 0xc1, 0xf1, 0x9c, 0xa4, 0x1b, 0x09, 0x65, 0x2b, 0x61, 0x7e, + 0x9a, 0xd8, 0x52, 0xb4, 0x84, 0xc5, 0x8f, 0x40, 0xea, 0xdb, 0x36, 0x40, 0x90, 0x82, 0xe1, 0x9b, + 0x78, 0x4f, 0x67, 0x23, 0x56, 0x09, 0xaa, 0x6f, 0xfa, 0xcf, 0x41, 0x18, 0x5d, 0x96, 0x34, 0xb1, + 0x25, 0x19, 0xac, 0x86, 0x85, 0x6d, 0xac, 0xa1, 0x0f, 0x61, 0x44, 0xd5, 0x24, 0x45, 0x93, 0x8c, + 0x3d, 0xd2, 0xdb, 0x68, 0x3a, 0x9e, 0xec, 0x1d, 0x76, 0x4e, 0x69, 0x19, 0x52, 0xb3, 0x56, 0xb4, + 0xb3, 0xd8, 0xb0, 0xb9, 0x46, 0xee, 0x00, 0x85, 0x58, 0x48, 0x89, 0x4a, 0xb3, 0x69, 0xef, 0xbe, + 0x2c, 0x35, 0x24, 0xc3, 0xee, 0xf9, 0xf8, 0x77, 0x6d, 0x10, 0x4e, 0x5d, 0x49, 0x5f, 0xed, 0x6e, + 0xe2, 0xdd, 0xbb, 0x41, 0x2e, 0x76, 0x08, 0xc8, 0x99, 0xf9, 0x26, 0x87, 0x8a, 0x9b, 0x55, 0xa9, + 0x59, 0xe3, 0x35, 0xfc, 0xcb, 0x16, 0xd6, 0x0d, 0xdd, 0x1e, 0x00, 0x7f, 0x0e, 0x1b, 0xc0, 0xd9, + 0xf9, 0x28, 0x05, 0xcf, 0x69, 0xd8, 0xd0, 0x24, 0xac, 0xdb, 0xad, 0xf7, 0x85, 0x3a, 0x79, 0x68, + 0x11, 0x0e, 0x99, 0xa3, 0x73, 0x50, 0xb2, 0xef, 0xc5, 0xb8, 0xc1, 0x86, 0xb0, 0xeb, 0x94, 0x73, + 0x75, 0x79, 0x11, 0x8e, 0xae, 0x19, 0x86, 0x9a, 0x2e, 0x9a, 0x07, 0x4a, 0x54, 0xe4, 0x82, 0x75, + 0xc0, 0xd0, 0x34, 0x3c, 0x87, 0x9b, 0x42, 0x45, 0xc6, 0x55, 0xb2, 0xbb, 0x11, 0x36, 0x62, 0x92, + 0x1b, 0x5a, 0x0b, 0x73, 0x4e, 0x60, 0xda, 0xb0, 0xb0, 0x29, 0x37, 0xf6, 0x0e, 0x1c, 0xab, 0x63, + 0xa1, 0x8a, 0x35, 0xde, 0xd0, 0x84, 0xa6, 0xbe, 0xa5, 0x68, 0x0d, 0xc1, 0x8c, 0x10, 0xa6, 0xc1, + 0xf4, 0x3b, 0xae, 0x3e, 0xad, 0x91, 0xdc, 0x72, 0x4f, 0xaa, 0x39, 0x62, 0xdc, 0x68, 0xdd, 0x23, + 0x32, 0xfd, 0xfb, 0x31, 0x18, 0x5d, 0x95, 0x95, 0x8a, 0x20, 0x97, 0x54, 0x2c, 0x92, 0x59, 0xbc, + 0x05, 0x07, 0xb0, 0x3d, 0xa9, 0xd6, 0x40, 0x0e, 0xa6, 0xa7, 0x5c, 0x45, 0x0a, 0x15, 0xf3, 0xf0, + 0x70, 0x78, 0xcb, 0x04, 0xb0, 0x63, 0x5f, 0x7d, 0x11, 0x71, 0x10, 0x07, 0x63, 0x9a, 0xe0, 0x0e, + 0x59, 0xd0, 0xcf, 0xe0, 0x70, 0x1d, 0x0b, 0xb2, 0x51, 0xe7, 0xc5, 0x3a, 0x16, 0xb7, 0x75, 0x3a, + 0xf8, 0x23, 0x68, 0xe9, 0xaf, 0xbe, 0x18, 0xb4, 0x50, 0x04, 0x74, 0xc0, 0x1c, 0xe6, 0x86, 0xac, + 0x8f, 0x97, 0x09, 0x17, 0x92, 0xe0, 0x05, 0x59, 0x11, 0xaa, 0x15, 0x41, 0x16, 0x9a, 0x22, 0xd6, + 0x78, 0x41, 0xae, 0x99, 0x23, 0x59, 0x6f, 0x90, 0xd9, 0x89, 0xa6, 0x99, 0xa4, 0xe7, 0xb5, 0x9d, + 0xcc, 0x75, 0x81, 0x96, 0x1c, 0x8c, 0x3d, 0xd7, 0x63, 0xb2, 0x57, 0x10, 0x95, 0x61, 0x4c, 0xb4, + 0x0e, 0x0e, 0x5f, 0xb1, 0x4e, 0x0e, 0x19, 0xb2, 0xc1, 0xf4, 0xff, 0xfb, 0xd4, 0xe8, 0x3d, 0x66, + 0x6c, 0x78, 0xbf, 0x0d, 0x00, 0x17, 0x15, 0x7b, 0x0f, 0xdf, 0xaf, 0x20, 0xe5, 0x6c, 0x15, 0xaf, + 0x93, 0xb3, 0x6b, 0xce, 0xa0, 0xb9, 0x41, 0x29, 0x1f, 0x5a, 0xff, 0x9b, 0x84, 0x7d, 0xc3, 0x2c, + 0xf1, 0xa8, 0xdd, 0x75, 0x61, 0x24, 0x3a, 0xdf, 0xff, 0x31, 0xd4, 0x7f, 0xff, 0x21, 0x08, 0x52, + 0x80, 0x8b, 0xe1, 0x1e, 0xa8, 0x8e, 0xee, 0x01, 0x18, 0xad, 0xe2, 0x2d, 0xa1, 0x25, 0x3b, 0xc5, + 0xe9, 0x7e, 0x52, 0x7b, 0xc1, 0xa7, 0x76, 0xef, 0xb4, 0x24, 0x33, 0x16, 0xd6, 0xa2, 0xcb, 0x36, + 0x0d, 0x6d, 0x8f, 0x7d, 0xcb, 0x5c, 0xc2, 0x83, 0x87, 0x20, 0x0c, 0x83, 0x01, 0x6b, 0x19, 0x0f, + 0x0e, 0x96, 0xf1, 0xeb, 0x87, 0x20, 0x18, 0x09, 0x70, 0xc3, 0xd5, 0x6e, 0x18, 0xaa, 0xc0, 0xd8, + 0x96, 0x20, 0xcb, 0x15, 0x41, 0xdc, 0xe6, 0x55, 0x45, 0x96, 0xc4, 0x3d, 0xfa, 0x1c, 0xe9, 0xdd, + 0x7b, 0x3e, 0x8b, 0xb0, 0x70, 0x2b, 0x36, 0xa6, 0x48, 0x20, 0xec, 0x90, 0xf3, 0xea, 0xa4, 0x85, + 0xd1, 0xad, 0x9e, 0x28, 0xba, 0x05, 0xa3, 0x86, 0xac, 0xf3, 0xaa, 0xa0, 0x09, 0x0d, 0x6c, 0x60, + 0x4d, 0xa7, 0x23, 0xa4, 0x75, 0x6f, 0xbb, 0x4a, 0x6c, 0xaa, 0xba, 0xa1, 0x61, 0xa1, 0x51, 0x96, + 0xf5, 0xa2, 0x99, 0xab, 0x93, 0x6d, 0x0d, 0x9b, 0xbc, 0xdc, 0xb0, 0x61, 0x7f, 0x48, 0x08, 0x10, + 0x0b, 0x51, 0xd7, 0x9d, 0x67, 0xea, 0x95, 0xd2, 0x32, 0xe8, 0x01, 0x72, 0x7d, 0x9c, 0xdf, 0xb7, + 0x17, 0xd2, 0xad, 0x76, 0x23, 0x87, 0xe9, 0x65, 0x2b, 0x1b, 0x7d, 0x00, 0x47, 0xea, 0x86, 0xa1, + 0xf2, 0x52, 0x55, 0xc6, 0x07, 0x14, 0xd0, 0x9f, 0x22, 0x66, 0x66, 0xaf, 0x57, 0x65, 0xec, 0x10, + 0x7c, 0x0a, 0x47, 0x14, 0x4b, 0xb5, 0xf9, 0xaa, 0x23, 0xdb, 0xf4, 0x10, 0x79, 0x35, 0xbf, 0xdd, + 0xf3, 0x52, 0x79, 0x7b, 0x36, 0x29, 0xc5, 0x15, 0x43, 0x22, 0x44, 0x87, 0xd3, 0x49, 0x26, 0xcd, + 0x2c, 0x30, 0x4c, 0xda, 0x93, 0x3c, 0x6e, 0x3e, 0x9d, 0x7c, 0xbb, 0x43, 0xd6, 0xe1, 0x1a, 0xc1, + 0xee, 0x30, 0xfa, 0x04, 0x8e, 0x54, 0x9b, 0x3a, 0x2f, 0x2b, 0xca, 0x76, 0x4b, 0xe5, 0xb7, 0x84, + 0x86, 0x24, 0xef, 0xd1, 0x51, 0x52, 0xe3, 0x6d, 0x9f, 0x1a, 0x99, 0xa6, 0x9e, 0x23, 0xe9, 0x64, + 0xf5, 0x11, 0x67, 0xaf, 0xb8, 0x58, 0xd5, 0x09, 0xac, 0x10, 0x1a, 0xc4, 0x43, 0x64, 0x72, 0x57, + 0x25, 0x5d, 0x54, 0x76, 0xb0, 0xb6, 0x47, 0xcc, 0x16, 0x1d, 0x23, 0xe4, 0xef, 0xf8, 0x93, 0x67, + 0x9c, 0x7c, 0x17, 0x3f, 0x55, 0x75, 0xc5, 0xd0, 0x6d, 0x38, 0x64, 0x36, 0x25, 0xc5, 0x8b, 0x4a, + 0x73, 0x4b, 0xaa, 0xd1, 0x17, 0x5e, 0xb8, 0xf9, 0x5e, 0x97, 0xbc, 0xb5, 0xf9, 0x6b, 0x01, 0x6e, + 0x90, 0x10, 0x2d, 0x13, 0x1e, 0xf4, 0x19, 0x1c, 0x36, 0x1f, 0xd3, 0x8e, 0x4f, 0xa3, 0xa9, 0x63, + 0x89, 0xdd, 0xca, 0x63, 0x9d, 0x89, 0x67, 0xf6, 0xda, 0xd7, 0x02, 0x1c, 0x59, 0x69, 0xda, 0xd1, + 0x96, 0x15, 0x48, 0x09, 0x2d, 0x43, 0xe1, 0xc9, 0x04, 0xda, 0xab, 0x1f, 0x27, 0x45, 0x46, 0x5d, + 0x45, 0xb2, 0x0d, 0xd5, 0x14, 0x7d, 0x7b, 0x99, 0x51, 0x13, 0x65, 0xd6, 0xb3, 0x57, 0xba, 0x01, + 0x51, 0x53, 0xe1, 0x55, 0xa1, 0x29, 0x89, 0xbc, 0x51, 0xd7, 0xb0, 0x5e, 0x57, 0xe4, 0x2a, 0x8d, + 0x8e, 0x65, 0x02, 0x1c, 0xd5, 0x54, 0x8a, 0x26, 0xac, 0xec, 0xa0, 0xd0, 0x02, 0x8c, 0xb9, 0x89, + 0xce, 0x5b, 0x1e, 0x6e, 0xdf, 0xbe, 0xd5, 0x88, 0x87, 0x5b, 0x03, 0x5c, 0x54, 0xed, 0x45, 0xee, + 0xc2, 0x49, 0x4f, 0xa5, 0xb4, 0x1a, 0x3e, 0x7a, 0x22, 0xb9, 0x64, 0x47, 0x1e, 0x7f, 0x01, 0xcc, + 0x82, 0x3f, 0xd8, 0xfb, 0x47, 0x03, 0x8e, 0xae, 0xfb, 0x24, 0xa3, 0x3b, 0xf0, 0x4d, 0x4b, 0xc6, + 0x79, 0xb9, 0xc2, 0xeb, 0x4a, 0x4b, 0x13, 0x31, 0x2f, 0xa9, 0xa6, 0x07, 0xd5, 0x25, 0xdd, 0x30, + 0x45, 0x84, 0x9e, 0xf0, 0xdf, 0x8c, 0xb5, 0x20, 0x77, 0xd1, 0x82, 0xe7, 0x2a, 0x25, 0x02, 0x5e, + 0x57, 0x8b, 0x87, 0x50, 0xf4, 0x29, 0x4c, 0x54, 0x25, 0xfd, 0xc5, 0xf4, 0x93, 0x2f, 0xa4, 0x9f, + 0xb2, 0xf1, 0xde, 0xfc, 0x1c, 0xbc, 0xe0, 0xf0, 0xab, 0x9a, 0xb2, 0xbb, 0xc7, 0xab, 0xf6, 0x10, + 0xd1, 0x53, 0xc7, 0x76, 0x30, 0xc4, 0x8d, 0xda, 0xd8, 0xa2, 0x09, 0x75, 0xc6, 0x0f, 0xad, 0xc1, + 0x91, 0x5e, 0x2e, 0x7e, 0x27, 0x45, 0xbf, 0xf1, 0x23, 0xe8, 0x62, 0x6a, 0x37, 0xcf, 0xed, 0x94, + 0x17, 0x53, 0x9a, 0x8e, 0x9f, 0x9c, 0x29, 0x3d, 0xf9, 0x21, 0x44, 0x47, 0xd5, 0x0a, 0x51, 0x30, + 0xb4, 0x8d, 0x2d, 0xd7, 0x3b, 0xc0, 0x99, 0x7f, 0xa2, 0x51, 0xd8, 0xb7, 0x23, 0xc8, 0x2d, 0x4c, + 0xfc, 0xeb, 0x00, 0x67, 0x3d, 0x2c, 0x06, 0x17, 0xc0, 0xe2, 0x6f, 0xc1, 0xd7, 0x6d, 0xf0, 0x00, + 0xc0, 0x38, 0x9c, 0x28, 0x68, 0x52, 0x4d, 0x6a, 0x26, 0x4a, 0x58, 0xdb, 0xc1, 0x9a, 0x7e, 0xc9, + 0xb9, 0xf1, 0xf4, 0x77, 0x11, 0x48, 0xc1, 0x65, 0x98, 0xb0, 0xe3, 0x45, 0x45, 0x91, 0x2f, 0xd9, + 0x27, 0xf4, 0xdd, 0xc4, 0xa1, 0x76, 0x24, 0xd0, 0x9b, 0x73, 0x4c, 0x9a, 0x49, 0xcd, 0x31, 0x0b, + 0xcc, 0x0d, 0x26, 0x75, 0x85, 0x49, 0x5d, 0x65, 0x52, 0xf3, 0x4c, 0x3a, 0xc5, 0xa4, 0xae, 0x33, + 0xe9, 0x2b, 0x4c, 0xfa, 0x3a, 0xa4, 0x21, 0x65, 0xdb, 0x87, 0x84, 0xed, 0x14, 0x74, 0x14, 0xbe, + 0xca, 0xa4, 0xd2, 0x70, 0x02, 0x52, 0x4e, 0xbd, 0x84, 0xa3, 0xe3, 0x7d, 0xf3, 0xcc, 0x35, 0xe6, + 0x3a, 0x9b, 0x84, 0x88, 0x1c, 0xe6, 0x83, 0xcd, 0x32, 0x67, 0x1f, 0xd1, 0xfb, 0x6d, 0x30, 0xfe, + 0x8d, 0xa5, 0x8e, 0x63, 0x9d, 0x36, 0x88, 0xa4, 0xe7, 0x98, 0xd4, 0x35, 0x26, 0x9d, 0x66, 0x2f, + 0xc3, 0x51, 0xd7, 0x69, 0xb3, 0x10, 0x63, 0xfb, 0x6d, 0x80, 0x6c, 0xc4, 0x48, 0xa7, 0x0d, 0xfa, + 0x52, 0x0b, 0x4c, 0xea, 0x06, 0x3b, 0x0f, 0xdf, 0xf4, 0x1b, 0x41, 0x5e, 0xac, 0x2b, 0x92, 0x88, + 0x11, 0xda, 0x6f, 0x83, 0xc9, 0x47, 0x6d, 0x40, 0x77, 0xda, 0xa0, 0x3f, 0x3d, 0xcf, 0x24, 0xd2, + 0xd7, 0xd8, 0x59, 0x78, 0xde, 0xd5, 0xc3, 0x83, 0x65, 0x4d, 0xd9, 0x45, 0x2e, 0x92, 0x65, 0x2d, + 0x30, 0xe9, 0x1b, 0xcc, 0xdc, 0x95, 0x8d, 0x70, 0x64, 0x90, 0x1a, 0xda, 0x08, 0x47, 0xc6, 0xa8, + 0x0b, 0x1b, 0xe1, 0xc8, 0x08, 0x85, 0x36, 0xc2, 0x11, 0x9a, 0x9a, 0xd8, 0x08, 0x47, 0x2e, 0x52, + 0x53, 0xd3, 0x7f, 0x89, 0xc2, 0xe8, 0xb2, 0x86, 0x05, 0x03, 0x1f, 0x98, 0xd6, 0xd5, 0x93, 0x9a, + 0xd6, 0xc1, 0x2e, 0xd3, 0xda, 0x6d, 0x55, 0x6f, 0xbd, 0x8c, 0x55, 0x8d, 0xf6, 0x5a, 0x55, 0x97, + 0x41, 0x15, 0x4f, 0xd3, 0xa0, 0xfa, 0x59, 0xd3, 0xfc, 0xab, 0x59, 0xd3, 0x23, 0xa6, 0xf4, 0xce, + 0x29, 0x9a, 0xd2, 0xa3, 0xae, 0x93, 0x3f, 0xa1, 0xe9, 0xec, 0xed, 0xb6, 0x87, 0xe9, 0x74, 0x3b, + 0xca, 0xf2, 0x69, 0x38, 0xca, 0x23, 0x1e, 0xf2, 0xe6, 0xab, 0x78, 0x48, 0xb7, 0x7b, 0xbc, 0xec, + 0xef, 0x1e, 0xbd, 0x8c, 0xe2, 0x8c, 0xaf, 0x51, 0x3c, 0xea, 0x09, 0x7f, 0x7a, 0x3a, 0x9e, 0xd0, + 0xc3, 0x0d, 0xfe, 0xfc, 0xf4, 0xdc, 0xa0, 0x97, 0x0f, 0x2c, 0xbe, 0xb2, 0x95, 0x72, 0x9b, 0x28, + 0xee, 0xd5, 0x4d, 0xd4, 0x11, 0xdb, 0xf4, 0xe1, 0xc9, 0x6c, 0x93, 0x87, 0x61, 0xca, 0x9c, 0xd4, + 0x30, 0x79, 0x5a, 0xa5, 0x77, 0x7d, 0xac, 0x92, 0x87, 0x37, 0xc2, 0xa7, 0xe8, 0x8d, 0x5e, 0x60, + 0x84, 0x72, 0x2f, 0x63, 0x25, 0xd6, 0x82, 0x3e, 0x26, 0x82, 0x3d, 0xa1, 0x89, 0x58, 0x0b, 0x1e, + 0xb5, 0x0f, 0xec, 0x09, 0xed, 0xc3, 0x51, 0x8e, 0xd3, 0x30, 0x0e, 0x23, 0xdf, 0xbe, 0xef, 0xfa, + 0x9a, 0x85, 0x65, 0x3c, 0x95, 0xfa, 0xc2, 0xbd, 0xe7, 0xc0, 0xe3, 0x73, 0xf6, 0x8a, 0x8f, 0x4e, + 0xd3, 0xf7, 0x9e, 0x03, 0xcf, 0x08, 0x9b, 0xf4, 0xd6, 0xdc, 0xf1, 0x7b, 0xcf, 0x81, 0x57, 0xc0, + 0x25, 0xb6, 0xa6, 0xcc, 0xfe, 0x35, 0x0a, 0x63, 0x1c, 0x56, 0x65, 0x41, 0x3c, 0xd3, 0xd9, 0xd7, + 0x54, 0x67, 0x3f, 0xf3, 0xd1, 0xd9, 0x1b, 0x3e, 0xdc, 0xae, 0x76, 0x9f, 0x09, 0xed, 0x99, 0xd0, + 0x9e, 0x09, 0xed, 0x99, 0xd0, 0x9e, 0x09, 0xed, 0x7f, 0x54, 0x68, 0xff, 0x4e, 0xc1, 0xc1, 0x55, + 0x6c, 0x9c, 0x89, 0xec, 0xeb, 0x29, 0xb2, 0x77, 0x7c, 0x44, 0x76, 0xde, 0xef, 0x17, 0x94, 0xc3, + 0x56, 0x9f, 0x09, 0xec, 0x99, 0xc0, 0x9e, 0x09, 0xec, 0x7f, 0xa3, 0xc0, 0xbe, 0xde, 0x5f, 0xe9, + 0xbf, 0x9c, 0x3d, 0x08, 0x9d, 0x96, 0x3d, 0x08, 0x9d, 0x82, 0x3d, 0x08, 0xfd, 0x8f, 0xd8, 0x83, + 0x95, 0xe3, 0xbf, 0x32, 0xff, 0xbf, 0x7b, 0xcf, 0xc1, 0x71, 0x49, 0xaf, 0x68, 0x33, 0x0e, 0xbe, + 0x3c, 0x9f, 0x69, 0xc0, 0x31, 0x4f, 0x2d, 0x46, 0x31, 0x38, 0xc8, 0x15, 0x36, 0xf3, 0x19, 0x9e, + 0x2b, 0xb0, 0xeb, 0x79, 0x2a, 0x80, 0x46, 0xe0, 0x70, 0x2e, 0xbb, 0x54, 0x2a, 0xf3, 0x5c, 0xf6, + 0xd6, 0x66, 0xb6, 0x54, 0xa6, 0x00, 0x1a, 0x86, 0x03, 0xdc, 0x7a, 0x7e, 0x95, 0x5f, 0x5b, 0x2a, + 0xad, 0x51, 0x41, 0x04, 0x61, 0x3f, 0xb7, 0x94, 0xcf, 0x14, 0x3e, 0xa2, 0x42, 0x26, 0x3c, 0xc7, + 0xf2, 0x85, 0xdb, 0x59, 0x8e, 0x5b, 0xcf, 0x64, 0xa9, 0xf0, 0x64, 0x78, 0xbf, 0x0d, 0xc2, 0x33, + 0x73, 0x90, 0x72, 0xff, 0x98, 0x8a, 0xa2, 0x10, 0x96, 0xca, 0xdc, 0xfa, 0x72, 0x99, 0xcf, 0xe4, + 0x4b, 0x54, 0x80, 0x40, 0x0b, 0xab, 0xeb, 0xcb, 0x4b, 0x39, 0xf2, 0x01, 0x98, 0x99, 0x83, 0xc3, + 0x3d, 0x3f, 0xef, 0xa2, 0x08, 0x0c, 0x2f, 0x6d, 0x96, 0x0b, 0x54, 0x00, 0x0d, 0xc2, 0x73, 0xb7, + 0xaf, 0xf2, 0x85, 0x7c, 0xee, 0x63, 0x0a, 0x90, 0x87, 0x6b, 0xd6, 0x43, 0x70, 0xe6, 0x23, 0x38, + 0xea, 0x25, 0x7d, 0x26, 0x7b, 0xbe, 0xc0, 0xaf, 0x2c, 0xe5, 0x72, 0xec, 0xd2, 0xf2, 0x4d, 0x2a, + 0x80, 0x28, 0x38, 0xb4, 0x94, 0xff, 0x98, 0xcf, 0xe6, 0x33, 0xc5, 0xc2, 0x7a, 0xde, 0x7c, 0x2d, + 0x04, 0xa3, 0x99, 0xec, 0xca, 0xd2, 0x66, 0xae, 0xcc, 0x97, 0x36, 0xd9, 0x52, 0xb6, 0x4c, 0x05, + 0x67, 0x36, 0xe1, 0xb8, 0xcf, 0x75, 0x6f, 0x32, 0x66, 0xd6, 0xcd, 0x37, 0x60, 0x37, 0xcb, 0xd9, + 0x0c, 0x15, 0x30, 0x5f, 0x28, 0x57, 0x30, 0x97, 0x6f, 0xaf, 0xeb, 0x3c, 0x8c, 0x59, 0xcf, 0x45, + 0x2e, 0xbb, 0x92, 0xe5, 0xb8, 0x6c, 0x86, 0x0a, 0x92, 0xfd, 0x08, 0xb2, 0x5f, 0x82, 0x47, 0x4f, + 0xe2, 0x81, 0xc7, 0x4f, 0xe2, 0x81, 0x67, 0x4f, 0xe2, 0xe0, 0x6e, 0x27, 0x0e, 0x7e, 0xd7, 0x89, + 0x83, 0x6f, 0x3a, 0x71, 0xf0, 0xa8, 0x13, 0x07, 0x8f, 0x3b, 0x71, 0xf0, 0x7d, 0x27, 0x0e, 0x7e, + 0xe8, 0xc4, 0x03, 0xcf, 0x3a, 0x71, 0xf0, 0x9b, 0xa7, 0xf1, 0xc0, 0xfe, 0xd3, 0x38, 0x78, 0xf4, + 0x34, 0x1e, 0x78, 0xfc, 0x34, 0x1e, 0xf8, 0xe4, 0x66, 0x4d, 0x51, 0xb7, 0x6b, 0xc9, 0x1d, 0x45, + 0x36, 0xb0, 0xa6, 0x09, 0xc9, 0x96, 0x3e, 0x4b, 0xfe, 0x30, 0x2f, 0xaf, 0xcb, 0xaa, 0xa6, 0xec, + 0x48, 0x55, 0xac, 0x5d, 0x76, 0xc2, 0xb3, 0x6a, 0xa5, 0xa6, 0xcc, 0xe2, 0x5d, 0xc3, 0xfe, 0xaf, + 0xbf, 0xde, 0xff, 0x6d, 0xac, 0xf4, 0x93, 0x89, 0x99, 0xfb, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x61, 0x27, 0x6c, 0xab, 0xfb, 0x28, 0x00, 0x00, } func (x LoadbalancerAlgorithm) String() string { @@ -2167,6 +2449,30 @@ func (this *Http2ProtocolOptions) Equal(that interface{}) bool { } return true } +func (this *Http1ProtocolOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Http1ProtocolOptions) + if !ok { + that2, ok := that.(Http1ProtocolOptions) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.HeaderTransformation.Equal(that1.HeaderTransformation) { + return false + } + return true +} func (this *GlobalSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2278,6 +2584,15 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.LbSourceIpPersistanceChoice.Equal(that1.LbSourceIpPersistanceChoice) { return false } + if that1.ProxyProtocolType == nil { + if this.ProxyProtocolType != nil { + return false + } + } else if this.ProxyProtocolType == nil { + return false + } else if !this.ProxyProtocolType.Equal(that1.ProxyProtocolType) { + return false + } return true } func (this *GlobalSpecType_Http1Config) Equal(that interface{}) bool { @@ -2448,6 +2763,78 @@ func (this *GlobalSpecType_DisableLbSourceIpPersistance) Equal(that interface{}) } return true } +func (this *GlobalSpecType_DisableProxyProtocol) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_DisableProxyProtocol) + if !ok { + that2, ok := that.(GlobalSpecType_DisableProxyProtocol) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableProxyProtocol.Equal(that1.DisableProxyProtocol) { + return false + } + return true +} +func (this *GlobalSpecType_ProxyProtocolV1) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_ProxyProtocolV1) + if !ok { + that2, ok := that.(GlobalSpecType_ProxyProtocolV1) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV1.Equal(that1.ProxyProtocolV1) { + return false + } + return true +} +func (this *GlobalSpecType_ProxyProtocolV2) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_ProxyProtocolV2) + if !ok { + that2, ok := that.(GlobalSpecType_ProxyProtocolV2) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV2.Equal(that1.ProxyProtocolV2) { + return false + } + return true +} func (this *CreateSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2544,6 +2931,15 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.HeaderTransformationType.Equal(that1.HeaderTransformationType) { return false } + if that1.ProxyProtocolType == nil { + if this.ProxyProtocolType != nil { + return false + } + } else if this.ProxyProtocolType == nil { + return false + } else if !this.ProxyProtocolType.Equal(that1.ProxyProtocolType) { + return false + } return true } func (this *CreateSpecType_Http1Config) Equal(that interface{}) bool { @@ -2666,14 +3062,14 @@ func (this *CreateSpecType_PanicThreshold) Equal(that interface{}) bool { } return true } -func (this *ReplaceSpecType) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableProxyProtocol) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ReplaceSpecType) + that1, ok := that.(*CreateSpecType_DisableProxyProtocol) if !ok { - that2, ok := that.(ReplaceSpecType) + that2, ok := that.(CreateSpecType_DisableProxyProtocol) if ok { that1 = &that2 } else { @@ -2685,23 +3081,95 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Endpoints) != len(that1.Endpoints) { + if !this.DisableProxyProtocol.Equal(that1.DisableProxyProtocol) { return false } - for i := range this.Endpoints { - if !this.Endpoints[i].Equal(that1.Endpoints[i]) { + return true +} +func (this *CreateSpecType_ProxyProtocolV1) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType_ProxyProtocolV1) + if !ok { + that2, ok := that.(CreateSpecType_ProxyProtocolV1) + if ok { + that1 = &that2 + } else { return false } } - if len(this.HealthChecks) != len(that1.HealthChecks) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - for i := range this.HealthChecks { - if !this.HealthChecks[i].Equal(that1.HealthChecks[i]) { + if !this.ProxyProtocolV1.Equal(that1.ProxyProtocolV1) { + return false + } + return true +} +func (this *CreateSpecType_ProxyProtocolV2) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType_ProxyProtocolV2) + if !ok { + that2, ok := that.(CreateSpecType_ProxyProtocolV2) + if ok { + that1 = &that2 + } else { return false } } - if this.LoadbalancerAlgorithm != that1.LoadbalancerAlgorithm { + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV2.Equal(that1.ProxyProtocolV2) { + return false + } + return true +} +func (this *ReplaceSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType) + if !ok { + that2, ok := that.(ReplaceSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Endpoints) != len(that1.Endpoints) { + return false + } + for i := range this.Endpoints { + if !this.Endpoints[i].Equal(that1.Endpoints[i]) { + return false + } + } + if len(this.HealthChecks) != len(that1.HealthChecks) { + return false + } + for i := range this.HealthChecks { + if !this.HealthChecks[i].Equal(that1.HealthChecks[i]) { + return false + } + } + if this.LoadbalancerAlgorithm != that1.LoadbalancerAlgorithm { return false } if !this.CircuitBreaker.Equal(that1.CircuitBreaker) { @@ -2762,6 +3230,15 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.HeaderTransformationType.Equal(that1.HeaderTransformationType) { return false } + if that1.ProxyProtocolType == nil { + if this.ProxyProtocolType != nil { + return false + } + } else if this.ProxyProtocolType == nil { + return false + } else if !this.ProxyProtocolType.Equal(that1.ProxyProtocolType) { + return false + } return true } func (this *ReplaceSpecType_Http1Config) Equal(that interface{}) bool { @@ -2884,6 +3361,78 @@ func (this *ReplaceSpecType_PanicThreshold) Equal(that interface{}) bool { } return true } +func (this *ReplaceSpecType_DisableProxyProtocol) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_DisableProxyProtocol) + if !ok { + that2, ok := that.(ReplaceSpecType_DisableProxyProtocol) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableProxyProtocol.Equal(that1.DisableProxyProtocol) { + return false + } + return true +} +func (this *ReplaceSpecType_ProxyProtocolV1) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_ProxyProtocolV1) + if !ok { + that2, ok := that.(ReplaceSpecType_ProxyProtocolV1) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV1.Equal(that1.ProxyProtocolV1) { + return false + } + return true +} +func (this *ReplaceSpecType_ProxyProtocolV2) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_ProxyProtocolV2) + if !ok { + that2, ok := that.(ReplaceSpecType_ProxyProtocolV2) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV2.Equal(that1.ProxyProtocolV2) { + return false + } + return true +} func (this *GetSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2989,6 +3538,15 @@ func (this *GetSpecType) Equal(that interface{}) bool { } else if !this.LbSourceIpPersistanceChoice.Equal(that1.LbSourceIpPersistanceChoice) { return false } + if that1.ProxyProtocolType == nil { + if this.ProxyProtocolType != nil { + return false + } + } else if this.ProxyProtocolType == nil { + return false + } else if !this.ProxyProtocolType.Equal(that1.ProxyProtocolType) { + return false + } return true } func (this *GetSpecType_Http1Config) Equal(that interface{}) bool { @@ -3159,6 +3717,78 @@ func (this *GetSpecType_DisableLbSourceIpPersistance) Equal(that interface{}) bo } return true } +func (this *GetSpecType_DisableProxyProtocol) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType_DisableProxyProtocol) + if !ok { + that2, ok := that.(GetSpecType_DisableProxyProtocol) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableProxyProtocol.Equal(that1.DisableProxyProtocol) { + return false + } + return true +} +func (this *GetSpecType_ProxyProtocolV1) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType_ProxyProtocolV1) + if !ok { + that2, ok := that.(GetSpecType_ProxyProtocolV1) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV1.Equal(that1.ProxyProtocolV1) { + return false + } + return true +} +func (this *GetSpecType_ProxyProtocolV2) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType_ProxyProtocolV2) + if !ok { + that2, ok := that.(GetSpecType_ProxyProtocolV2) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV2.Equal(that1.ProxyProtocolV2) { + return false + } + return true +} func (this *OutlierDetectionType) GoString() string { if this == nil { return "nil" @@ -3207,11 +3837,23 @@ func (this *Http2ProtocolOptions) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *Http1ProtocolOptions) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cluster.Http1ProtocolOptions{") + if this.HeaderTransformation != nil { + s = append(s, "HeaderTransformation: "+fmt.Sprintf("%#v", this.HeaderTransformation)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 26) + s := make([]string, 0, 29) s = append(s, "&cluster.GlobalSpecType{") if this.Endpoints != nil { s = append(s, "Endpoints: "+fmt.Sprintf("%#v", this.Endpoints)+",\n") @@ -3263,6 +3905,9 @@ func (this *GlobalSpecType) GoString() string { if this.LbSourceIpPersistanceChoice != nil { s = append(s, "LbSourceIpPersistanceChoice: "+fmt.Sprintf("%#v", this.LbSourceIpPersistanceChoice)+",\n") } + if this.ProxyProtocolType != nil { + s = append(s, "ProxyProtocolType: "+fmt.Sprintf("%#v", this.ProxyProtocolType)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3322,11 +3967,35 @@ func (this *GlobalSpecType_DisableLbSourceIpPersistance) GoString() string { `DisableLbSourceIpPersistance:` + fmt.Sprintf("%#v", this.DisableLbSourceIpPersistance) + `}`}, ", ") return s } +func (this *GlobalSpecType_DisableProxyProtocol) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.GlobalSpecType_DisableProxyProtocol{` + + `DisableProxyProtocol:` + fmt.Sprintf("%#v", this.DisableProxyProtocol) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ProxyProtocolV1) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.GlobalSpecType_ProxyProtocolV1{` + + `ProxyProtocolV1:` + fmt.Sprintf("%#v", this.ProxyProtocolV1) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ProxyProtocolV2) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.GlobalSpecType_ProxyProtocolV2{` + + `ProxyProtocolV2:` + fmt.Sprintf("%#v", this.ProxyProtocolV2) + `}`}, ", ") + return s +} func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 22) + s := make([]string, 0, 25) s = append(s, "&cluster.CreateSpecType{") if this.Endpoints != nil { s = append(s, "Endpoints: "+fmt.Sprintf("%#v", this.Endpoints)+",\n") @@ -3373,6 +4042,9 @@ func (this *CreateSpecType) GoString() string { if this.HeaderTransformationType != nil { s = append(s, "HeaderTransformationType: "+fmt.Sprintf("%#v", this.HeaderTransformationType)+",\n") } + if this.ProxyProtocolType != nil { + s = append(s, "ProxyProtocolType: "+fmt.Sprintf("%#v", this.ProxyProtocolType)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3416,11 +4088,35 @@ func (this *CreateSpecType_PanicThreshold) GoString() string { `PanicThreshold:` + fmt.Sprintf("%#v", this.PanicThreshold) + `}`}, ", ") return s } +func (this *CreateSpecType_DisableProxyProtocol) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.CreateSpecType_DisableProxyProtocol{` + + `DisableProxyProtocol:` + fmt.Sprintf("%#v", this.DisableProxyProtocol) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ProxyProtocolV1) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.CreateSpecType_ProxyProtocolV1{` + + `ProxyProtocolV1:` + fmt.Sprintf("%#v", this.ProxyProtocolV1) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ProxyProtocolV2) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.CreateSpecType_ProxyProtocolV2{` + + `ProxyProtocolV2:` + fmt.Sprintf("%#v", this.ProxyProtocolV2) + `}`}, ", ") + return s +} func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 22) + s := make([]string, 0, 25) s = append(s, "&cluster.ReplaceSpecType{") if this.Endpoints != nil { s = append(s, "Endpoints: "+fmt.Sprintf("%#v", this.Endpoints)+",\n") @@ -3467,6 +4163,9 @@ func (this *ReplaceSpecType) GoString() string { if this.HeaderTransformationType != nil { s = append(s, "HeaderTransformationType: "+fmt.Sprintf("%#v", this.HeaderTransformationType)+",\n") } + if this.ProxyProtocolType != nil { + s = append(s, "ProxyProtocolType: "+fmt.Sprintf("%#v", this.ProxyProtocolType)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3510,11 +4209,35 @@ func (this *ReplaceSpecType_PanicThreshold) GoString() string { `PanicThreshold:` + fmt.Sprintf("%#v", this.PanicThreshold) + `}`}, ", ") return s } +func (this *ReplaceSpecType_DisableProxyProtocol) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.ReplaceSpecType_DisableProxyProtocol{` + + `DisableProxyProtocol:` + fmt.Sprintf("%#v", this.DisableProxyProtocol) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ProxyProtocolV1) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.ReplaceSpecType_ProxyProtocolV1{` + + `ProxyProtocolV1:` + fmt.Sprintf("%#v", this.ProxyProtocolV1) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ProxyProtocolV2) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.ReplaceSpecType_ProxyProtocolV2{` + + `ProxyProtocolV2:` + fmt.Sprintf("%#v", this.ProxyProtocolV2) + `}`}, ", ") + return s +} func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 24) + s := make([]string, 0, 27) s = append(s, "&cluster.GetSpecType{") if this.Endpoints != nil { s = append(s, "Endpoints: "+fmt.Sprintf("%#v", this.Endpoints)+",\n") @@ -3564,6 +4287,9 @@ func (this *GetSpecType) GoString() string { if this.LbSourceIpPersistanceChoice != nil { s = append(s, "LbSourceIpPersistanceChoice: "+fmt.Sprintf("%#v", this.LbSourceIpPersistanceChoice)+",\n") } + if this.ProxyProtocolType != nil { + s = append(s, "ProxyProtocolType: "+fmt.Sprintf("%#v", this.ProxyProtocolType)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3623,6 +4349,30 @@ func (this *GetSpecType_DisableLbSourceIpPersistance) GoString() string { `DisableLbSourceIpPersistance:` + fmt.Sprintf("%#v", this.DisableLbSourceIpPersistance) + `}`}, ", ") return s } +func (this *GetSpecType_DisableProxyProtocol) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.GetSpecType_DisableProxyProtocol{` + + `DisableProxyProtocol:` + fmt.Sprintf("%#v", this.DisableProxyProtocol) + `}`}, ", ") + return s +} +func (this *GetSpecType_ProxyProtocolV1) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.GetSpecType_ProxyProtocolV1{` + + `ProxyProtocolV1:` + fmt.Sprintf("%#v", this.ProxyProtocolV1) + `}`}, ", ") + return s +} +func (this *GetSpecType_ProxyProtocolV2) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cluster.GetSpecType_ProxyProtocolV2{` + + `ProxyProtocolV2:` + fmt.Sprintf("%#v", this.ProxyProtocolV2) + `}`}, ", ") + return s +} func valueToGoStringTypes(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -3792,6 +4542,41 @@ func (m *Http2ProtocolOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *Http1ProtocolOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Http1ProtocolOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Http1ProtocolOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.HeaderTransformation != nil { + { + size, err := m.HeaderTransformation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -3812,6 +4597,15 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.ProxyProtocolType != nil { + { + size := m.ProxyProtocolType.Size() + i -= size + if _, err := m.ProxyProtocolType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.LbSourceIpPersistanceChoice != nil { { size := m.LbSourceIpPersistanceChoice.Size() @@ -4053,16 +4847,85 @@ func (m *GlobalSpecType_PanicThreshold) MarshalToSizedBuffer(dAtA []byte) (int, dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *GlobalSpecType_Http1Config) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_Http1Config) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_Http1Config) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http1Config != nil { + { + size, err := m.Http1Config.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType_AutoHttpConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_AutoHttpConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AutoHttpConfig != nil { + { + size, err := m.AutoHttpConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType_EnableLbSourceIpPersistance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_EnableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableLbSourceIpPersistance != nil { + { + size, err := m.EnableLbSourceIpPersistance.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xca + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType_DisableLbSourceIpPersistance) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_Http1Config) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_DisableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Http1Config != nil { + if m.DisableLbSourceIpPersistance != nil { { - size, err := m.Http1Config.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableLbSourceIpPersistance.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4072,20 +4935,20 @@ func (m *GlobalSpecType_Http1Config) MarshalToSizedBuffer(dAtA []byte) (int, err i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xb2 + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } -func (m *GlobalSpecType_AutoHttpConfig) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_DisableProxyProtocol) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_AutoHttpConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_DisableProxyProtocol) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AutoHttpConfig != nil { + if m.DisableProxyProtocol != nil { { - size, err := m.AutoHttpConfig.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableProxyProtocol.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4095,20 +4958,20 @@ func (m *GlobalSpecType_AutoHttpConfig) MarshalToSizedBuffer(dAtA []byte) (int, i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xba + dAtA[i] = 0xe2 } return len(dAtA) - i, nil } -func (m *GlobalSpecType_EnableLbSourceIpPersistance) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_ProxyProtocolV1) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_EnableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_ProxyProtocolV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.EnableLbSourceIpPersistance != nil { + if m.ProxyProtocolV1 != nil { { - size, err := m.EnableLbSourceIpPersistance.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ProxyProtocolV1.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4118,20 +4981,20 @@ func (m *GlobalSpecType_EnableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA [ i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xca + dAtA[i] = 0xea } return len(dAtA) - i, nil } -func (m *GlobalSpecType_DisableLbSourceIpPersistance) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_ProxyProtocolV2) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_DisableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_ProxyProtocolV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableLbSourceIpPersistance != nil { + if m.ProxyProtocolV2 != nil { { - size, err := m.DisableLbSourceIpPersistance.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ProxyProtocolV2.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -4141,7 +5004,7 @@ func (m *GlobalSpecType_DisableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xd2 + dAtA[i] = 0xf2 } return len(dAtA) - i, nil } @@ -4165,6 +5028,15 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.ProxyProtocolType != nil { + { + size := m.ProxyProtocolType.Size() + i -= size + if _, err := m.ProxyProtocolType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.HttpProtocolType != nil { { size := m.HttpProtocolType.Size() @@ -4433,6 +5305,75 @@ func (m *CreateSpecType_AutoHttpConfig) MarshalToSizedBuffer(dAtA []byte) (int, } return len(dAtA) - i, nil } +func (m *CreateSpecType_DisableProxyProtocol) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType_DisableProxyProtocol) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableProxyProtocol != nil { + { + size, err := m.DisableProxyProtocol.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xe2 + } + return len(dAtA) - i, nil +} +func (m *CreateSpecType_ProxyProtocolV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType_ProxyProtocolV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV1 != nil { + { + size, err := m.ProxyProtocolV1.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xea + } + return len(dAtA) - i, nil +} +func (m *CreateSpecType_ProxyProtocolV2) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType_ProxyProtocolV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV2 != nil { + { + size, err := m.ProxyProtocolV2.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xf2 + } + return len(dAtA) - i, nil +} func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4453,6 +5394,15 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.ProxyProtocolType != nil { + { + size := m.ProxyProtocolType.Size() + i -= size + if _, err := m.ProxyProtocolType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.HttpProtocolType != nil { { size := m.HttpProtocolType.Size() @@ -4721,6 +5671,75 @@ func (m *ReplaceSpecType_AutoHttpConfig) MarshalToSizedBuffer(dAtA []byte) (int, } return len(dAtA) - i, nil } +func (m *ReplaceSpecType_DisableProxyProtocol) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_DisableProxyProtocol) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableProxyProtocol != nil { + { + size, err := m.DisableProxyProtocol.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xe2 + } + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_ProxyProtocolV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_ProxyProtocolV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV1 != nil { + { + size, err := m.ProxyProtocolV1.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xea + } + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_ProxyProtocolV2) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_ProxyProtocolV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV2 != nil { + { + size, err := m.ProxyProtocolV2.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xf2 + } + return len(dAtA) - i, nil +} func (m *GetSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4741,6 +5760,15 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.ProxyProtocolType != nil { + { + size := m.ProxyProtocolType.Size() + i -= size + if _, err := m.ProxyProtocolType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.LbSourceIpPersistanceChoice != nil { { size := m.LbSourceIpPersistanceChoice.Size() @@ -5064,6 +6092,75 @@ func (m *GetSpecType_DisableLbSourceIpPersistance) MarshalToSizedBuffer(dAtA []b } return len(dAtA) - i, nil } +func (m *GetSpecType_DisableProxyProtocol) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_DisableProxyProtocol) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableProxyProtocol != nil { + { + size, err := m.DisableProxyProtocol.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xe2 + } + return len(dAtA) - i, nil +} +func (m *GetSpecType_ProxyProtocolV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_ProxyProtocolV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV1 != nil { + { + size, err := m.ProxyProtocolV1.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xea + } + return len(dAtA) - i, nil +} +func (m *GetSpecType_ProxyProtocolV2) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_ProxyProtocolV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV2 != nil { + { + size, err := m.ProxyProtocolV2.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xf2 + } + return len(dAtA) - i, nil +} func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { offset -= sovTypes(v) base := offset @@ -5150,6 +6247,19 @@ func (m *Http2ProtocolOptions) Size() (n int) { return n } +func (m *Http1ProtocolOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HeaderTransformation != nil { + l = m.HeaderTransformation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + func (m *GlobalSpecType) Size() (n int) { if m == nil { return 0 @@ -5228,6 +6338,9 @@ func (m *GlobalSpecType) Size() (n int) { if m.LbSourceIpPersistanceChoice != nil { n += m.LbSourceIpPersistanceChoice.Size() } + if m.ProxyProtocolType != nil { + n += m.ProxyProtocolType.Size() + } return n } @@ -5276,38 +6389,74 @@ func (m *GlobalSpecType_Http1Config) Size() (n int) { } return n } -func (m *GlobalSpecType_AutoHttpConfig) Size() (n int) { +func (m *GlobalSpecType_AutoHttpConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AutoHttpConfig != nil { + l = m.AutoHttpConfig.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType_EnableLbSourceIpPersistance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableLbSourceIpPersistance != nil { + l = m.EnableLbSourceIpPersistance.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType_DisableLbSourceIpPersistance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableLbSourceIpPersistance != nil { + l = m.DisableLbSourceIpPersistance.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType_DisableProxyProtocol) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.AutoHttpConfig != nil { - l = m.AutoHttpConfig.Size() + if m.DisableProxyProtocol != nil { + l = m.DisableProxyProtocol.Size() n += 2 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_EnableLbSourceIpPersistance) Size() (n int) { +func (m *GlobalSpecType_ProxyProtocolV1) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.EnableLbSourceIpPersistance != nil { - l = m.EnableLbSourceIpPersistance.Size() + if m.ProxyProtocolV1 != nil { + l = m.ProxyProtocolV1.Size() n += 2 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_DisableLbSourceIpPersistance) Size() (n int) { +func (m *GlobalSpecType_ProxyProtocolV2) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.DisableLbSourceIpPersistance != nil { - l = m.DisableLbSourceIpPersistance.Size() + if m.ProxyProtocolV2 != nil { + l = m.ProxyProtocolV2.Size() n += 2 + l + sovTypes(uint64(l)) } return n @@ -5381,6 +6530,9 @@ func (m *CreateSpecType) Size() (n int) { l = m.HeaderTransformationType.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.ProxyProtocolType != nil { + n += m.ProxyProtocolType.Size() + } return n } @@ -5441,6 +6593,42 @@ func (m *CreateSpecType_AutoHttpConfig) Size() (n int) { } return n } +func (m *CreateSpecType_DisableProxyProtocol) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableProxyProtocol != nil { + l = m.DisableProxyProtocol.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CreateSpecType_ProxyProtocolV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV1 != nil { + l = m.ProxyProtocolV1.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CreateSpecType_ProxyProtocolV2) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV2 != nil { + l = m.ProxyProtocolV2.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *ReplaceSpecType) Size() (n int) { if m == nil { return 0 @@ -5510,6 +6698,9 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.HeaderTransformationType.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.ProxyProtocolType != nil { + n += m.ProxyProtocolType.Size() + } return n } @@ -5570,6 +6761,42 @@ func (m *ReplaceSpecType_AutoHttpConfig) Size() (n int) { } return n } +func (m *ReplaceSpecType_DisableProxyProtocol) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableProxyProtocol != nil { + l = m.DisableProxyProtocol.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ReplaceSpecType_ProxyProtocolV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV1 != nil { + l = m.ProxyProtocolV1.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ReplaceSpecType_ProxyProtocolV2) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV2 != nil { + l = m.ProxyProtocolV2.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *GetSpecType) Size() (n int) { if m == nil { return 0 @@ -5642,6 +6869,9 @@ func (m *GetSpecType) Size() (n int) { if m.LbSourceIpPersistanceChoice != nil { n += m.LbSourceIpPersistanceChoice.Size() } + if m.ProxyProtocolType != nil { + n += m.ProxyProtocolType.Size() + } return n } @@ -5726,6 +6956,42 @@ func (m *GetSpecType_DisableLbSourceIpPersistance) Size() (n int) { } return n } +func (m *GetSpecType_DisableProxyProtocol) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableProxyProtocol != nil { + l = m.DisableProxyProtocol.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GetSpecType_ProxyProtocolV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV1 != nil { + l = m.ProxyProtocolV1.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GetSpecType_ProxyProtocolV2) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV2 != nil { + l = m.ProxyProtocolV2.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func sovTypes(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 @@ -5781,6 +7047,16 @@ func (this *Http2ProtocolOptions) String() string { }, "") return s } +func (this *Http1ProtocolOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Http1ProtocolOptions{`, + `HeaderTransformation:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformation), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, + `}`, + }, "") + return s +} func (this *GlobalSpecType) String() string { if this == nil { return "nil" @@ -5829,6 +7105,7 @@ func (this *GlobalSpecType) String() string { `PanicThresholdType:` + fmt.Sprintf("%v", this.PanicThresholdType) + `,`, `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, `LbSourceIpPersistanceChoice:` + fmt.Sprintf("%v", this.LbSourceIpPersistanceChoice) + `,`, + `ProxyProtocolType:` + fmt.Sprintf("%v", this.ProxyProtocolType) + `,`, `}`, }, "") return s @@ -5868,7 +7145,7 @@ func (this *GlobalSpecType_Http1Config) String() string { return "nil" } s := strings.Join([]string{`&GlobalSpecType_Http1Config{`, - `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Empty", "schema.Empty", 1) + `,`, + `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Http1ProtocolOptions", "Http1ProtocolOptions", 1) + `,`, `}`, }, "") return s @@ -5903,6 +7180,36 @@ func (this *GlobalSpecType_DisableLbSourceIpPersistance) String() string { }, "") return s } +func (this *GlobalSpecType_DisableProxyProtocol) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_DisableProxyProtocol{`, + `DisableProxyProtocol:` + strings.Replace(fmt.Sprintf("%v", this.DisableProxyProtocol), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_ProxyProtocolV1) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_ProxyProtocolV1{`, + `ProxyProtocolV1:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV1), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_ProxyProtocolV2) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_ProxyProtocolV2{`, + `ProxyProtocolV2:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV2), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} func (this *CreateSpecType) String() string { if this == nil { return "nil" @@ -5948,6 +7255,7 @@ func (this *CreateSpecType) String() string { `HttpProtocolType:` + fmt.Sprintf("%v", this.HttpProtocolType) + `,`, `PanicThresholdType:` + fmt.Sprintf("%v", this.PanicThresholdType) + `,`, `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, + `ProxyProtocolType:` + fmt.Sprintf("%v", this.ProxyProtocolType) + `,`, `}`, }, "") return s @@ -5987,7 +7295,7 @@ func (this *CreateSpecType_Http1Config) String() string { return "nil" } s := strings.Join([]string{`&CreateSpecType_Http1Config{`, - `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Empty", "schema.Empty", 1) + `,`, + `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Http1ProtocolOptions", "Http1ProtocolOptions", 1) + `,`, `}`, }, "") return s @@ -6002,6 +7310,36 @@ func (this *CreateSpecType_AutoHttpConfig) String() string { }, "") return s } +func (this *CreateSpecType_DisableProxyProtocol) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_DisableProxyProtocol{`, + `DisableProxyProtocol:` + strings.Replace(fmt.Sprintf("%v", this.DisableProxyProtocol), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_ProxyProtocolV1) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_ProxyProtocolV1{`, + `ProxyProtocolV1:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV1), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_ProxyProtocolV2) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_ProxyProtocolV2{`, + `ProxyProtocolV2:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV2), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} func (this *ReplaceSpecType) String() string { if this == nil { return "nil" @@ -6047,6 +7385,7 @@ func (this *ReplaceSpecType) String() string { `HttpProtocolType:` + fmt.Sprintf("%v", this.HttpProtocolType) + `,`, `PanicThresholdType:` + fmt.Sprintf("%v", this.PanicThresholdType) + `,`, `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, + `ProxyProtocolType:` + fmt.Sprintf("%v", this.ProxyProtocolType) + `,`, `}`, }, "") return s @@ -6086,7 +7425,7 @@ func (this *ReplaceSpecType_Http1Config) String() string { return "nil" } s := strings.Join([]string{`&ReplaceSpecType_Http1Config{`, - `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Empty", "schema.Empty", 1) + `,`, + `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Http1ProtocolOptions", "Http1ProtocolOptions", 1) + `,`, `}`, }, "") return s @@ -6101,6 +7440,36 @@ func (this *ReplaceSpecType_AutoHttpConfig) String() string { }, "") return s } +func (this *ReplaceSpecType_DisableProxyProtocol) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_DisableProxyProtocol{`, + `DisableProxyProtocol:` + strings.Replace(fmt.Sprintf("%v", this.DisableProxyProtocol), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_ProxyProtocolV1) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_ProxyProtocolV1{`, + `ProxyProtocolV1:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV1), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_ProxyProtocolV2) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_ProxyProtocolV2{`, + `ProxyProtocolV2:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV2), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} func (this *GetSpecType) String() string { if this == nil { return "nil" @@ -6147,6 +7516,7 @@ func (this *GetSpecType) String() string { `PanicThresholdType:` + fmt.Sprintf("%v", this.PanicThresholdType) + `,`, `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, `LbSourceIpPersistanceChoice:` + fmt.Sprintf("%v", this.LbSourceIpPersistanceChoice) + `,`, + `ProxyProtocolType:` + fmt.Sprintf("%v", this.ProxyProtocolType) + `,`, `}`, }, "") return s @@ -6186,7 +7556,7 @@ func (this *GetSpecType_Http1Config) String() string { return "nil" } s := strings.Join([]string{`&GetSpecType_Http1Config{`, - `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Empty", "schema.Empty", 1) + `,`, + `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Http1ProtocolOptions", "Http1ProtocolOptions", 1) + `,`, `}`, }, "") return s @@ -6221,6 +7591,36 @@ func (this *GetSpecType_DisableLbSourceIpPersistance) String() string { }, "") return s } +func (this *GetSpecType_DisableProxyProtocol) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_DisableProxyProtocol{`, + `DisableProxyProtocol:` + strings.Replace(fmt.Sprintf("%v", this.DisableProxyProtocol), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType_ProxyProtocolV1) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_ProxyProtocolV1{`, + `ProxyProtocolV1:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV1), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType_ProxyProtocolV2) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_ProxyProtocolV2{`, + `ProxyProtocolV2:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV2), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} func valueToStringTypes(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -6548,30 +7948,102 @@ func (m *CircuitBreaker) Unmarshal(dAtA []byte) error { break } } - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Retries", wireType) + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Retries", wireType) + } + m.Retries = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Retries |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxRequests", wireType) + } + m.MaxRequests = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.MaxRequests |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Http2ProtocolOptions) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF } - m.Retries = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Retries |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - case 5: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Http2ProtocolOptions: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Http2ProtocolOptions: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MaxRequests", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) } - m.MaxRequests = 0 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -6581,11 +8053,12 @@ func (m *CircuitBreaker) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.MaxRequests |= uint32(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } + m.Enabled = bool(v != 0) default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -6610,7 +8083,7 @@ func (m *CircuitBreaker) Unmarshal(dAtA []byte) error { } return nil } -func (m *Http2ProtocolOptions) Unmarshal(dAtA []byte) error { +func (m *Http1ProtocolOptions) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -6633,17 +8106,17 @@ func (m *Http2ProtocolOptions) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: Http2ProtocolOptions: wiretype end group for non-group") + return fmt.Errorf("proto: Http1ProtocolOptions: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: Http2ProtocolOptions: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: Http1ProtocolOptions: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformation", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -6653,12 +8126,28 @@ func (m *Http2ProtocolOptions) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.Enabled = bool(v != 0) + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.HeaderTransformation == nil { + m.HeaderTransformation = &schema.HeaderTransformationType{} + } + if err := m.HeaderTransformation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -7337,7 +8826,7 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &Http1ProtocolOptions{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -7448,6 +8937,111 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.LbSourceIpPersistanceChoice = &GlobalSpecType_DisableLbSourceIpPersistance{v} iNdEx = postIndex + case 28: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableProxyProtocol", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &GlobalSpecType_DisableProxyProtocol{v} + iNdEx = postIndex + case 29: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV1", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV1{v} + iNdEx = postIndex + case 30: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV2", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV2{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -7928,14 +9522,104 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.EndpointSelection |= EndpointSelectionPolicy(b&0x7F) << shift + m.EndpointSelection |= EndpointSelectionPolicy(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 16: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Http2Options", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &Http2ProtocolOptions{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.HttpProtocolType = &CreateSpecType_Http2Options{v} + iNdEx = postIndex + case 18: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoPanicThreshold", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.PanicThresholdType = &CreateSpecType_NoPanicThreshold{v} + iNdEx = postIndex + case 19: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PanicThreshold", wireType) + } + var v uint32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint32(b&0x7F) << shift if b < 0x80 { break } } - case 16: + m.PanicThresholdType = &CreateSpecType_PanicThreshold{v} + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Http2Options", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformationType", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -7962,15 +9646,16 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &Http2ProtocolOptions{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.HeaderTransformationType == nil { + m.HeaderTransformationType = &schema.HeaderTransformationType{} + } + if err := m.HeaderTransformationType.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HttpProtocolType = &CreateSpecType_Http2Options{v} iNdEx = postIndex - case 18: + case 22: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoPanicThreshold", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Http1Config", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -7997,17 +9682,17 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &Http1ProtocolOptions{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.PanicThresholdType = &CreateSpecType_NoPanicThreshold{v} + m.HttpProtocolType = &CreateSpecType_Http1Config{v} iNdEx = postIndex - case 19: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PanicThreshold", wireType) + case 23: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AutoHttpConfig", wireType) } - var v uint32 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8017,15 +9702,30 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= uint32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.PanicThresholdType = &CreateSpecType_PanicThreshold{v} - case 20: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.HttpProtocolType = &CreateSpecType_AutoHttpConfig{v} + iNdEx = postIndex + case 28: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformationType", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableProxyProtocol", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8052,16 +9752,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.HeaderTransformationType == nil { - m.HeaderTransformationType = &schema.HeaderTransformationType{} - } - if err := m.HeaderTransformationType.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ProxyProtocolType = &CreateSpecType_DisableProxyProtocol{v} iNdEx = postIndex - case 22: + case 29: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Http1Config", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV1", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8092,11 +9791,11 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HttpProtocolType = &CreateSpecType_Http1Config{v} + m.ProxyProtocolType = &CreateSpecType_ProxyProtocolV1{v} iNdEx = postIndex - case 23: + case 30: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoHttpConfig", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV2", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8127,7 +9826,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HttpProtocolType = &CreateSpecType_AutoHttpConfig{v} + m.ProxyProtocolType = &CreateSpecType_ProxyProtocolV2{v} iNdEx = postIndex default: iNdEx = preIndex @@ -8769,7 +10468,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &Http1ProtocolOptions{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -8810,6 +10509,111 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.HttpProtocolType = &ReplaceSpecType_AutoHttpConfig{v} iNdEx = postIndex + case 28: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableProxyProtocol", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &ReplaceSpecType_DisableProxyProtocol{v} + iNdEx = postIndex + case 29: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV1", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &ReplaceSpecType_ProxyProtocolV1{v} + iNdEx = postIndex + case 30: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV2", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &ReplaceSpecType_ProxyProtocolV2{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -9450,7 +11254,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &Http1ProtocolOptions{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -9561,6 +11365,111 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.LbSourceIpPersistanceChoice = &GetSpecType_DisableLbSourceIpPersistance{v} iNdEx = postIndex + case 28: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableProxyProtocol", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &GetSpecType_DisableProxyProtocol{v} + iNdEx = postIndex + case 29: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV1", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &GetSpecType_ProxyProtocolV1{v} + iNdEx = postIndex + case 30: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV2", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolType = &GetSpecType_ProxyProtocolV2{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/cluster/types.vesmsg.go b/pbgo/extschema/schema/cluster/types.vesmsg.go index 3ce095797..0b6fb7b41 100644 --- a/pbgo/extschema/schema/cluster/types.vesmsg.go +++ b/pbgo/extschema/schema/cluster/types.vesmsg.go @@ -819,6 +819,43 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + switch m.GetProxyProtocolType().(type) { + case *CreateSpecType_DisableProxyProtocol: + if fv, exists := v.FldValidators["proxy_protocol_type.disable_proxy_protocol"]; exists { + val := m.GetProxyProtocolType().(*CreateSpecType_DisableProxyProtocol).DisableProxyProtocol + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("disable_proxy_protocol"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_ProxyProtocolV1: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v1"]; exists { + val := m.GetProxyProtocolType().(*CreateSpecType_ProxyProtocolV1).ProxyProtocolV1 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v1"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_ProxyProtocolV2: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v2"]; exists { + val := m.GetProxyProtocolType().(*CreateSpecType_ProxyProtocolV2).ProxyProtocolV2 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v2"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["tls_parameters"]; exists { vOpts := append(opts, db.WithValidateField("tls_parameters")) @@ -921,6 +958,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { } v.FldValidators["http_idle_timeout"] = vFn + v.FldValidators["http_protocol_type.http1_config"] = Http1ProtocolOptionsValidator().Validate + v.FldValidators["circuit_breaker"] = CircuitBreakerValidator().Validate v.FldValidators["tls_parameters"] = ves_io_schema.UpstreamTlsParamsTypeValidator().Validate @@ -1691,6 +1730,43 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + switch m.GetProxyProtocolType().(type) { + case *GetSpecType_DisableProxyProtocol: + if fv, exists := v.FldValidators["proxy_protocol_type.disable_proxy_protocol"]; exists { + val := m.GetProxyProtocolType().(*GetSpecType_DisableProxyProtocol).DisableProxyProtocol + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("disable_proxy_protocol"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_ProxyProtocolV1: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v1"]; exists { + val := m.GetProxyProtocolType().(*GetSpecType_ProxyProtocolV1).ProxyProtocolV1 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v1"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_ProxyProtocolV2: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v2"]; exists { + val := m.GetProxyProtocolType().(*GetSpecType_ProxyProtocolV2).ProxyProtocolV2 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v2"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["tls_parameters"]; exists { vOpts := append(opts, db.WithValidateField("tls_parameters")) @@ -1793,6 +1869,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { } v.FldValidators["http_idle_timeout"] = vFn + v.FldValidators["http_protocol_type.http1_config"] = Http1ProtocolOptionsValidator().Validate + v.FldValidators["circuit_breaker"] = CircuitBreakerValidator().Validate v.FldValidators["tls_parameters"] = ves_io_schema.UpstreamTlsParamsTypeValidator().Validate @@ -2441,6 +2519,43 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + switch m.GetProxyProtocolType().(type) { + case *GlobalSpecType_DisableProxyProtocol: + if fv, exists := v.FldValidators["proxy_protocol_type.disable_proxy_protocol"]; exists { + val := m.GetProxyProtocolType().(*GlobalSpecType_DisableProxyProtocol).DisableProxyProtocol + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("disable_proxy_protocol"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_ProxyProtocolV1: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v1"]; exists { + val := m.GetProxyProtocolType().(*GlobalSpecType_ProxyProtocolV1).ProxyProtocolV1 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v1"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_ProxyProtocolV2: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v2"]; exists { + val := m.GetProxyProtocolType().(*GlobalSpecType_ProxyProtocolV2).ProxyProtocolV2 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v2"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["tls_parameters"]; exists { vOpts := append(opts, db.WithValidateField("tls_parameters")) @@ -2543,6 +2658,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { } v.FldValidators["http_idle_timeout"] = vFn + v.FldValidators["http_protocol_type.http1_config"] = Http1ProtocolOptionsValidator().Validate + v.FldValidators["circuit_breaker"] = CircuitBreakerValidator().Validate v.FldValidators["tls_parameters"] = ves_io_schema.UpstreamTlsParamsTypeValidator().Validate @@ -2560,6 +2677,86 @@ func GlobalSpecTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *Http1ProtocolOptions) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Http1ProtocolOptions) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Http1ProtocolOptions) DeepCopy() *Http1ProtocolOptions { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Http1ProtocolOptions{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Http1ProtocolOptions) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Http1ProtocolOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return Http1ProtocolOptionsValidator().Validate(ctx, m, opts...) +} + +type ValidateHttp1ProtocolOptions struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateHttp1ProtocolOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Http1ProtocolOptions) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Http1ProtocolOptions got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["header_transformation"]; exists { + + vOpts := append(opts, db.WithValidateField("header_transformation")) + if err := fv(ctx, m.GetHeaderTransformation(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultHttp1ProtocolOptionsValidator = func() *ValidateHttp1ProtocolOptions { + v := &ValidateHttp1ProtocolOptions{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["header_transformation"] = ves_io_schema.HeaderTransformationTypeValidator().Validate + + return v +}() + +func Http1ProtocolOptionsValidator() db.Validator { + return DefaultHttp1ProtocolOptionsValidator +} + +// augmented methods on protoc/std generated struct + func (m *Http2ProtocolOptions) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -3452,6 +3649,43 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + switch m.GetProxyProtocolType().(type) { + case *ReplaceSpecType_DisableProxyProtocol: + if fv, exists := v.FldValidators["proxy_protocol_type.disable_proxy_protocol"]; exists { + val := m.GetProxyProtocolType().(*ReplaceSpecType_DisableProxyProtocol).DisableProxyProtocol + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("disable_proxy_protocol"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_ProxyProtocolV1: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v1"]; exists { + val := m.GetProxyProtocolType().(*ReplaceSpecType_ProxyProtocolV1).ProxyProtocolV1 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v1"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_ProxyProtocolV2: + if fv, exists := v.FldValidators["proxy_protocol_type.proxy_protocol_v2"]; exists { + val := m.GetProxyProtocolType().(*ReplaceSpecType_ProxyProtocolV2).ProxyProtocolV2 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_type"), + db.WithValidateField("proxy_protocol_v2"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["tls_parameters"]; exists { vOpts := append(opts, db.WithValidateField("tls_parameters")) @@ -3554,6 +3788,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { } v.FldValidators["http_idle_timeout"] = vFn + v.FldValidators["http_protocol_type.http1_config"] = Http1ProtocolOptionsValidator().Validate + v.FldValidators["circuit_breaker"] = CircuitBreakerValidator().Validate v.FldValidators["tls_parameters"] = ves_io_schema.UpstreamTlsParamsTypeValidator().Validate @@ -3645,6 +3881,47 @@ func (r *CreateSpecType) GetPanicThresholdTypeFromGlobalSpecType(o *GlobalSpecTy return nil } +// create setters in CreateSpecType from GlobalSpecType for oneof fields +func (r *CreateSpecType) SetProxyProtocolTypeToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.ProxyProtocolType.(type) { + case nil: + o.ProxyProtocolType = nil + + case *CreateSpecType_DisableProxyProtocol: + o.ProxyProtocolType = &GlobalSpecType_DisableProxyProtocol{DisableProxyProtocol: of.DisableProxyProtocol} + + case *CreateSpecType_ProxyProtocolV1: + o.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV1{ProxyProtocolV1: of.ProxyProtocolV1} + + case *CreateSpecType_ProxyProtocolV2: + o.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV2{ProxyProtocolV2: of.ProxyProtocolV2} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *CreateSpecType) GetProxyProtocolTypeFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.ProxyProtocolType.(type) { + case nil: + r.ProxyProtocolType = nil + + case *GlobalSpecType_DisableProxyProtocol: + r.ProxyProtocolType = &CreateSpecType_DisableProxyProtocol{DisableProxyProtocol: of.DisableProxyProtocol} + + case *GlobalSpecType_ProxyProtocolV1: + r.ProxyProtocolType = &CreateSpecType_ProxyProtocolV1{ProxyProtocolV1: of.ProxyProtocolV1} + + case *GlobalSpecType_ProxyProtocolV2: + r.ProxyProtocolType = &CreateSpecType_ProxyProtocolV2{ProxyProtocolV2: of.ProxyProtocolV2} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { if f == nil { return @@ -3663,6 +3940,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.LoadbalancerAlgorithm = f.GetLoadbalancerAlgorithm() m.OutlierDetection = f.GetOutlierDetection() m.GetPanicThresholdTypeFromGlobalSpecType(f) + m.GetProxyProtocolTypeFromGlobalSpecType(f) m.TlsParameters = f.GetTlsParameters() } @@ -3695,6 +3973,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.LoadbalancerAlgorithm = m1.LoadbalancerAlgorithm f.OutlierDetection = m1.OutlierDetection m1.SetPanicThresholdTypeToGlobalSpecType(f) + m1.SetProxyProtocolTypeToGlobalSpecType(f) f.TlsParameters = m1.TlsParameters } @@ -3817,6 +4096,47 @@ func (r *GetSpecType) GetPanicThresholdTypeFromGlobalSpecType(o *GlobalSpecType) return nil } +// create setters in GetSpecType from GlobalSpecType for oneof fields +func (r *GetSpecType) SetProxyProtocolTypeToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.ProxyProtocolType.(type) { + case nil: + o.ProxyProtocolType = nil + + case *GetSpecType_DisableProxyProtocol: + o.ProxyProtocolType = &GlobalSpecType_DisableProxyProtocol{DisableProxyProtocol: of.DisableProxyProtocol} + + case *GetSpecType_ProxyProtocolV1: + o.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV1{ProxyProtocolV1: of.ProxyProtocolV1} + + case *GetSpecType_ProxyProtocolV2: + o.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV2{ProxyProtocolV2: of.ProxyProtocolV2} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *GetSpecType) GetProxyProtocolTypeFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.ProxyProtocolType.(type) { + case nil: + r.ProxyProtocolType = nil + + case *GlobalSpecType_DisableProxyProtocol: + r.ProxyProtocolType = &GetSpecType_DisableProxyProtocol{DisableProxyProtocol: of.DisableProxyProtocol} + + case *GlobalSpecType_ProxyProtocolV1: + r.ProxyProtocolType = &GetSpecType_ProxyProtocolV1{ProxyProtocolV1: of.ProxyProtocolV1} + + case *GlobalSpecType_ProxyProtocolV2: + r.ProxyProtocolType = &GetSpecType_ProxyProtocolV2{ProxyProtocolV2: of.ProxyProtocolV2} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { if f == nil { return @@ -3836,6 +4156,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.LoadbalancerAlgorithm = f.GetLoadbalancerAlgorithm() m.OutlierDetection = f.GetOutlierDetection() m.GetPanicThresholdTypeFromGlobalSpecType(f) + m.GetProxyProtocolTypeFromGlobalSpecType(f) m.TlsParameters = f.GetTlsParameters() } @@ -3869,6 +4190,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.LoadbalancerAlgorithm = m1.LoadbalancerAlgorithm f.OutlierDetection = m1.OutlierDetection m1.SetPanicThresholdTypeToGlobalSpecType(f) + m1.SetProxyProtocolTypeToGlobalSpecType(f) f.TlsParameters = m1.TlsParameters } @@ -3956,6 +4278,47 @@ func (r *ReplaceSpecType) GetPanicThresholdTypeFromGlobalSpecType(o *GlobalSpecT return nil } +// create setters in ReplaceSpecType from GlobalSpecType for oneof fields +func (r *ReplaceSpecType) SetProxyProtocolTypeToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.ProxyProtocolType.(type) { + case nil: + o.ProxyProtocolType = nil + + case *ReplaceSpecType_DisableProxyProtocol: + o.ProxyProtocolType = &GlobalSpecType_DisableProxyProtocol{DisableProxyProtocol: of.DisableProxyProtocol} + + case *ReplaceSpecType_ProxyProtocolV1: + o.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV1{ProxyProtocolV1: of.ProxyProtocolV1} + + case *ReplaceSpecType_ProxyProtocolV2: + o.ProxyProtocolType = &GlobalSpecType_ProxyProtocolV2{ProxyProtocolV2: of.ProxyProtocolV2} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ReplaceSpecType) GetProxyProtocolTypeFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.ProxyProtocolType.(type) { + case nil: + r.ProxyProtocolType = nil + + case *GlobalSpecType_DisableProxyProtocol: + r.ProxyProtocolType = &ReplaceSpecType_DisableProxyProtocol{DisableProxyProtocol: of.DisableProxyProtocol} + + case *GlobalSpecType_ProxyProtocolV1: + r.ProxyProtocolType = &ReplaceSpecType_ProxyProtocolV1{ProxyProtocolV1: of.ProxyProtocolV1} + + case *GlobalSpecType_ProxyProtocolV2: + r.ProxyProtocolType = &ReplaceSpecType_ProxyProtocolV2{ProxyProtocolV2: of.ProxyProtocolV2} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { if f == nil { return @@ -3974,6 +4337,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.LoadbalancerAlgorithm = f.GetLoadbalancerAlgorithm() m.OutlierDetection = f.GetOutlierDetection() m.GetPanicThresholdTypeFromGlobalSpecType(f) + m.GetProxyProtocolTypeFromGlobalSpecType(f) m.TlsParameters = f.GetTlsParameters() } @@ -4006,6 +4370,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.LoadbalancerAlgorithm = m1.LoadbalancerAlgorithm f.OutlierDetection = m1.OutlierDetection m1.SetPanicThresholdTypeToGlobalSpecType(f) + m1.SetProxyProtocolTypeToGlobalSpecType(f) f.TlsParameters = m1.TlsParameters } diff --git a/pbgo/extschema/schema/cminstance/crudapi/api.vesapi.go b/pbgo/extschema/schema/cminstance/crudapi/api.vesapi.go index e7f1b3803..050997ed4 100644 --- a/pbgo/extschema/schema/cminstance/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/cminstance/crudapi/api.vesapi.go @@ -3212,10 +3212,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/cminstance/public_crudapi.vesapi.go b/pbgo/extschema/schema/cminstance/public_crudapi.vesapi.go index aedc4387d..6c3393478 100644 --- a/pbgo/extschema/schema/cminstance/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/cminstance/public_crudapi.vesapi.go @@ -2999,10 +2999,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3059,10 +3063,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3165,10 +3173,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/combined/combined.ves.go b/pbgo/extschema/schema/combined/combined.ves.go index c95ea7844..3157c7821 100644 --- a/pbgo/extschema/schema/combined/combined.ves.go +++ b/pbgo/extschema/schema/combined/combined.ves.go @@ -20,6 +20,10 @@ import ( ves_io_schema_address_allocator_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/address_allocator/crudapi" ves_io_schema_advertise_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/advertise_policy" ves_io_schema_advertise_policy_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/advertise_policy/crudapi" + ves_io_schema_ai_assistant "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant" + ves_io_schema_ai_assistant_common "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/common" + ves_io_schema_ai_assistant_explain_log_record "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/explain_log_record" + ves_io_schema_ai_assistant_gen_dashboard_filter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter" ves_io_schema_alert_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy" ves_io_schema_alert_policy_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy/crudapi" ves_io_schema_alert_policy_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy_set" @@ -89,6 +93,7 @@ import ( ves_io_schema_dns_load_balancer_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_load_balancer/crudapi" ves_io_schema_dns_zone "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone" ves_io_schema_dns_zone_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/crudapi" + ves_io_schema_dns_zone_rrset "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/rrset" ves_io_schema_dos_mitigation "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dos_mitigation" ves_io_schema_dos_mitigation_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dos_mitigation/crudapi" ves_io_schema_downstream_cos "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/downstream_cos" @@ -101,6 +106,8 @@ import ( ves_io_schema_fast_acl_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl/crudapi" ves_io_schema_fast_acl_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl_rule" ves_io_schema_fast_acl_rule_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl_rule/crudapi" + ves_io_schema_filter_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" + ves_io_schema_filter_set_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set/crudapi" ves_io_schema_fleet "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet" ves_io_schema_fleet_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet/crudapi" ves_io_schema_flow_exporter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/flow_exporter" @@ -157,6 +164,8 @@ import ( ves_io_schema_malicious_user_mitigation_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/malicious_user_mitigation/crudapi" ves_io_schema_marketplace_aws_account "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/aws_account" ves_io_schema_marketplace_aws_account_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/aws_account/crudapi" + ves_io_schema_marketplace_xc_saas_asb_message "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message" + ves_io_schema_marketplace_xc_saas_asb_message_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi" ves_io_schema_namespace "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace" ves_io_schema_namespace_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace/crudapi" ves_io_schema_network_connector "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/network_connector" @@ -209,6 +218,8 @@ import ( ves_io_schema_site_mesh_group_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site_mesh_group/crudapi" ves_io_schema_stored_object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/stored_object" ves_io_schema_stored_object_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/stored_object/crudapi" + ves_io_schema_subscription "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription" + ves_io_schema_subscription_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription/crudapi" ves_io_schema_tenant "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant" ves_io_schema_tenant_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant/crudapi" ves_io_schema_token "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/token" @@ -270,6 +281,7 @@ import ( ves_io_schema_views_cdn_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer" ves_io_schema_views_cdn_loadbalancer_access_log "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer/access_log" ves_io_schema_views_cdn_loadbalancer_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" ves_io_schema_views_forward_proxy_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/forward_proxy_policy" ves_io_schema_views_forward_proxy_policy_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/forward_proxy_policy/crudapi" ves_io_schema_views_gcp_vpc_site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/gcp_vpc_site" @@ -307,6 +319,10 @@ import ( ves_io_schema_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/waf" ves_io_schema_waf_signatures_changelog "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/waf_signatures_changelog" ves_io_schema_waf_signatures_changelog_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/waf_signatures_changelog/crudapi" + ves_io_schema_ztna "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" + ves_io_schema_ztna_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna/crudapi" + ves_io_schema_ztna_application "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" + ves_io_schema_ztna_application_crudapi "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application/crudapi" ) var ( @@ -341,6 +357,10 @@ func init() { ves_io_schema_address_allocator_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_advertise_policy.InitializeMDRegistry(MDR, false) ves_io_schema_advertise_policy_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_ai_assistant.InitializeMDRegistry(MDR, false) + ves_io_schema_ai_assistant_common.InitializeMDRegistry(MDR, false) + ves_io_schema_ai_assistant_explain_log_record.InitializeMDRegistry(MDR, false) + ves_io_schema_ai_assistant_gen_dashboard_filter.InitializeMDRegistry(MDR, false) ves_io_schema_alert_policy.InitializeMDRegistry(MDR, false) ves_io_schema_alert_policy_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_alert_policy_set.InitializeMDRegistry(MDR, false) @@ -410,6 +430,7 @@ func init() { ves_io_schema_dns_load_balancer_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_dns_zone.InitializeMDRegistry(MDR, false) ves_io_schema_dns_zone_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_dns_zone_rrset.InitializeMDRegistry(MDR, false) ves_io_schema_dos_mitigation.InitializeMDRegistry(MDR, false) ves_io_schema_dos_mitigation_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_downstream_cos.InitializeMDRegistry(MDR, false) @@ -422,6 +443,8 @@ func init() { ves_io_schema_fast_acl_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_fast_acl_rule.InitializeMDRegistry(MDR, false) ves_io_schema_fast_acl_rule_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_filter_set.InitializeMDRegistry(MDR, false) + ves_io_schema_filter_set_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_fleet.InitializeMDRegistry(MDR, false) ves_io_schema_fleet_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_flow_exporter.InitializeMDRegistry(MDR, false) @@ -478,6 +501,8 @@ func init() { ves_io_schema_malicious_user_mitigation_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_marketplace_aws_account.InitializeMDRegistry(MDR, false) ves_io_schema_marketplace_aws_account_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_marketplace_xc_saas_asb_message.InitializeMDRegistry(MDR, false) + ves_io_schema_marketplace_xc_saas_asb_message_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_namespace.InitializeMDRegistry(MDR, false) ves_io_schema_namespace_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_network_connector.InitializeMDRegistry(MDR, false) @@ -530,6 +555,8 @@ func init() { ves_io_schema_site_mesh_group_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_stored_object.InitializeMDRegistry(MDR, false) ves_io_schema_stored_object_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_subscription.InitializeMDRegistry(MDR, false) + ves_io_schema_subscription_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_tenant.InitializeMDRegistry(MDR, false) ves_io_schema_tenant_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_token.InitializeMDRegistry(MDR, false) @@ -591,6 +618,7 @@ func init() { ves_io_schema_views_cdn_loadbalancer.InitializeMDRegistry(MDR, false) ves_io_schema_views_cdn_loadbalancer_access_log.InitializeMDRegistry(MDR, false) ves_io_schema_views_cdn_loadbalancer_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_views_common_waf.InitializeMDRegistry(MDR, false) ves_io_schema_views_forward_proxy_policy.InitializeMDRegistry(MDR, false) ves_io_schema_views_forward_proxy_policy_crudapi.InitializeMDRegistry(MDR, false) ves_io_schema_views_gcp_vpc_site.InitializeMDRegistry(MDR, false) @@ -628,6 +656,10 @@ func init() { ves_io_schema_waf.InitializeMDRegistry(MDR, false) ves_io_schema_waf_signatures_changelog.InitializeMDRegistry(MDR, false) ves_io_schema_waf_signatures_changelog_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_ztna.InitializeMDRegistry(MDR, false) + ves_io_schema_ztna_crudapi.InitializeMDRegistry(MDR, false) + ves_io_schema_ztna_application.InitializeMDRegistry(MDR, false) + ves_io_schema_ztna_application_crudapi.InitializeMDRegistry(MDR, false) MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.address_allocator.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} @@ -1680,6 +1712,10 @@ func init() { FieldPath: "ves.io.schema.cloud_connect.CreateRequest.spec.cloud.aws_tgw_site.vpc_attachments.vpc_list.routing_choice.manual_routing", GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AWSVPCAttachmentType_ManualRouting{}), }, + { + FieldPath: "ves.io.schema.cloud_connect.CreateRequest.spec.cloud.azure_vnet_site.vnet_attachments.vnet_list.routing_choice.manual_routing", + GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AzureVNETAttachmentType_ManualRouting{}), + }, } MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.cloud_connect.API.Replace"] = []svcfw.OneofDefaultChoiceField{ @@ -1691,6 +1727,10 @@ func init() { FieldPath: "ves.io.schema.cloud_connect.ReplaceRequest.spec.cloud.aws_tgw_site.vpc_attachments.vpc_list.routing_choice.manual_routing", GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AWSVPCAttachmentType_ManualRouting{}), }, + { + FieldPath: "ves.io.schema.cloud_connect.ReplaceRequest.spec.cloud.azure_vnet_site.vnet_attachments.vnet_list.routing_choice.manual_routing", + GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AzureVNETAttachmentType_ManualRouting{}), + }, } MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.cloud_connect.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} @@ -1708,6 +1748,10 @@ func init() { FieldPath: "ves.io.schema.cloud_connect.crudapi.ObjectCreateReq.spec.gc_spec.cloud.aws_tgw_site.vpc_attachments.vpc_list.routing_choice.manual_routing", GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AWSVPCAttachmentType_ManualRouting{}), }, + { + FieldPath: "ves.io.schema.cloud_connect.crudapi.ObjectCreateReq.spec.gc_spec.cloud.azure_vnet_site.vnet_attachments.vnet_list.routing_choice.manual_routing", + GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AzureVNETAttachmentType_ManualRouting{}), + }, } MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.cloud_connect.crudapi.API.Replace"] = []svcfw.OneofDefaultChoiceField{ @@ -1723,6 +1767,10 @@ func init() { FieldPath: "ves.io.schema.cloud_connect.crudapi.ObjectReplaceReq.spec.gc_spec.cloud.aws_tgw_site.vpc_attachments.vpc_list.routing_choice.manual_routing", GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AWSVPCAttachmentType_ManualRouting{}), }, + { + FieldPath: "ves.io.schema.cloud_connect.crudapi.ObjectReplaceReq.spec.gc_spec.cloud.azure_vnet_site.vnet_attachments.vnet_list.routing_choice.manual_routing", + GoType: reflect.TypeOf(ves_io_schema_cloud_connect.AzureVNETAttachmentType_ManualRouting{}), + }, } MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.cloud_credentials.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} @@ -1827,15 +1875,23 @@ func init() { MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.cluster.API.Create"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.cluster.CreateRequest.spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.cluster.CreateRequest.spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.cluster.CreateRequest.spec.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, } MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.cluster.API.Replace"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.cluster.ReplaceRequest.spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.cluster.ReplaceRequest.spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.cluster.ReplaceRequest.spec.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, } @@ -1843,15 +1899,23 @@ func init() { MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.cluster.crudapi.API.Create"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.cluster.crudapi.ObjectCreateReq.spec.gc_spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.cluster.crudapi.ObjectCreateReq.spec.gc_spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.cluster.crudapi.ObjectCreateReq.spec.gc_spec.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, } MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.cluster.crudapi.API.Replace"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.cluster.crudapi.ObjectReplaceReq.spec.gc_spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.cluster.crudapi.ObjectReplaceReq.spec.gc_spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.cluster.crudapi.ObjectReplaceReq.spec.gc_spec.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, } @@ -2355,6 +2419,10 @@ func init() { MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.fast_acl_rule.Object"] = nil + MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.filter_set.Object"] = nil + + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.filter_set.Object"] = nil + MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.fleet.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.fleet.API.Create"] = []svcfw.OneofDefaultChoiceField{ @@ -2374,6 +2442,14 @@ func init() { FieldPath: "ves.io.schema.fleet.CreateRequest.spec.interface_choice.default_config", GoType: reflect.TypeOf(ves_io_schema_fleet.CreateSpecType_DefaultConfig{}), }, + { + FieldPath: "ves.io.schema.fleet.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.fleet.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.fleet.CreateRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_fleet.CreateSpecType_LogsStreamingDisabled{}), @@ -2445,6 +2521,14 @@ func init() { FieldPath: "ves.io.schema.fleet.ReplaceRequest.spec.interface_choice.default_config", GoType: reflect.TypeOf(ves_io_schema_fleet.ReplaceSpecType_DefaultConfig{}), }, + { + FieldPath: "ves.io.schema.fleet.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.fleet.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.fleet.ReplaceRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_fleet.ReplaceSpecType_LogsStreamingDisabled{}), @@ -2518,6 +2602,14 @@ func init() { FieldPath: "ves.io.schema.fleet.crudapi.ObjectCreateReq.spec.gc_spec.interface_choice.default_interfaces", GoType: reflect.TypeOf(ves_io_schema_fleet.GlobalSpecType_DefaultInterfaces{}), }, + { + FieldPath: "ves.io.schema.fleet.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.fleet.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.fleet.crudapi.ObjectCreateReq.spec.gc_spec.local_control_plane.bgp_config.peers.passive_choice.passive_mode_disabled", GoType: reflect.TypeOf(ves_io_schema_bgp.Peer_PassiveModeDisabled{}), @@ -2629,6 +2721,14 @@ func init() { FieldPath: "ves.io.schema.fleet.crudapi.ObjectReplaceReq.spec.gc_spec.interface_choice.default_interfaces", GoType: reflect.TypeOf(ves_io_schema_fleet.GlobalSpecType_DefaultInterfaces{}), }, + { + FieldPath: "ves.io.schema.fleet.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.fleet.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.fleet.crudapi.ObjectReplaceReq.spec.gc_spec.local_control_plane.bgp_config.peers.passive_choice.passive_mode_disabled", GoType: reflect.TypeOf(ves_io_schema_bgp.Peer_PassiveModeDisabled{}), @@ -4033,6 +4133,8 @@ func init() { MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.marketplace.aws_account.Object"] = nil + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = nil + MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.namespace.Object"] = nil MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.namespace.Object"] = nil @@ -5127,7 +5229,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy.CreateRequest.spec.rule_choice.rule_list.rules.spec.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy.CreateRequest.spec.rule_choice.rule_list.rules.spec.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5230,7 +5332,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.spec.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.spec.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5335,7 +5437,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.rule_list.rules.spec.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.rule_list.rules.spec.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5415,7 +5517,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy.crudapi.ObjectCreateReq.spec.gc_spec.simple_rules.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy.crudapi.ObjectCreateReq.spec.gc_spec.simple_rules.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5514,7 +5616,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy.crudapi.ObjectReplaceReq.spec.gc_spec.rule_choice.rule_list.rules.spec.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy.crudapi.ObjectReplaceReq.spec.gc_spec.rule_choice.rule_list.rules.spec.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5594,7 +5696,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy.crudapi.ObjectReplaceReq.spec.gc_spec.simple_rules.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy.crudapi.ObjectReplaceReq.spec.gc_spec.simple_rules.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5855,7 +5957,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy_rule.crudapi.ObjectCreateReq.spec.gc_spec.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy_rule.crudapi.ObjectCreateReq.spec.gc_spec.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -5946,7 +6048,7 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_policy.RequestConstraintType_MaxUrlSizeNone{}), }, { - FieldPath: "ves.io.schema.service_policy_rule.crudapi.ObjectReplaceReq.spec.gc_spec.threat_intelligence_action.action_type.default", + FieldPath: "ves.io.schema.service_policy_rule.crudapi.ObjectReplaceReq.spec.gc_spec.threat_mesh_action.action_type.default", GoType: reflect.TypeOf(ves_io_schema_policy.ModifyAction_Default{}), }, { @@ -6049,6 +6151,14 @@ func init() { FieldPath: "ves.io.schema.site.crudapi.ObjectCreateReq.spec.gc_spec.default_underlay_network.private_access_choice.site_local_outside", GoType: reflect.TypeOf(ves_io_schema_site.DefaultUnderlayNetworkType_SiteLocalOutside{}), }, + { + FieldPath: "ves.io.schema.site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, } MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.site.crudapi.API.Replace"] = []svcfw.OneofDefaultChoiceField{ @@ -6056,6 +6166,14 @@ func init() { FieldPath: "ves.io.schema.site.crudapi.ObjectReplaceReq.spec.gc_spec.default_underlay_network.private_access_choice.site_local_outside", GoType: reflect.TypeOf(ves_io_schema_site.DefaultUnderlayNetworkType_SiteLocalOutside{}), }, + { + FieldPath: "ves.io.schema.site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, } MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.site_mesh_group.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} @@ -6064,6 +6182,8 @@ func init() { MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.stored_object.Object"] = nil + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.subscription.Object"] = nil + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.tenant.Object"] = nil MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.token.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} @@ -6274,6 +6394,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_tgw_site.CreateRequest.spec.direct_connect_choice.direct_connect_enabled.vif_choice.hosted_vifs.vif_list.vif_region_choice.same_as_site_region", GoType: reflect.TypeOf(ves_io_schema_views.VifRegionConfig_SameAsSiteRegion{}), }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_tgw_site.CreateRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.CreateSpecType_LogsStreamingDisabled{}), @@ -6345,10 +6473,26 @@ func init() { } MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.aws_tgw_site.API.Replace"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.aws_parameters.az_nodes.choice.reserved_inside_subnet", + GoType: reflect.TypeOf(ves_io_schema_views.AWSVPCTwoInterfaceNodeType_ReservedInsideSubnet{}), + }, { FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.aws_parameters.internet_vip_choice.disable_internet_vip", GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_DisableInternetVip{}), }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.aws_parameters.security_group_choice.f5xc_security_group", + GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_F5XcSecurityGroup{}), + }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.aws_parameters.service_vpc_choice.new_vpc.name_choice.autogenerate", + GoType: reflect.TypeOf(ves_io_schema_views.AWSVPCParamsType_Autogenerate{}), + }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.aws_parameters.tgw_choice.new_tgw.asn_choice.system_generated", + GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.TGWParamsType_SystemGenerated{}), + }, { FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.aws_parameters.worker_nodes.no_worker_nodes", GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NoWorkerNodes{}), @@ -6369,6 +6513,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.direct_connect_choice.direct_connect_enabled.vif_choice.hosted_vifs.vif_list.vif_region_choice.same_as_site_region", GoType: reflect.TypeOf(ves_io_schema_views.VifRegionConfig_SameAsSiteRegion{}), }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_tgw_site.ReplaceRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.ReplaceSpecType_LogsStreamingDisabled{}), @@ -6474,6 +6626,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectCreateReq.spec.gc_spec.direct_connect_choice.direct_connect_enabled.vif_choice.hosted_vifs.vif_list.vif_region_choice.same_as_site_region", GoType: reflect.TypeOf(ves_io_schema_views.VifRegionConfig_SameAsSiteRegion{}), }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectCreateReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -6585,6 +6745,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectReplaceReq.spec.gc_spec.direct_connect_choice.direct_connect_enabled.vif_choice.hosted_vifs.vif_list.vif_region_choice.same_as_site_region", GoType: reflect.TypeOf(ves_io_schema_views.VifRegionConfig_SameAsSiteRegion{}), }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_tgw_site.crudapi.ObjectReplaceReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_tgw_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -6682,6 +6850,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_vpc_site.CreateRequest.spec.internet_vip_choice.disable_internet_vip", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.CreateSpecType_DisableInternetVip{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.CreateRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.CreateSpecType_LogsStreamingDisabled{}), @@ -6833,10 +7009,22 @@ func init() { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.direct_connect_choice.direct_connect_enabled.vif_choice.hosted_vifs.vif_list.vif_region_choice.same_as_site_region", GoType: reflect.TypeOf(ves_io_schema_views.VifRegionConfig_SameAsSiteRegion{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.egress_gateway_choice.egress_gateway_default", + GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.ReplaceSpecType_EgressGatewayDefault{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.internet_vip_choice.disable_internet_vip", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.ReplaceSpecType_DisableInternetVip{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.ReplaceSpecType_LogsStreamingDisabled{}), @@ -6845,6 +7033,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.offline_survivability_mode.offline_survivability_mode_choice.no_offline_survivability_mode", GoType: reflect.TypeOf(ves_io_schema_views.OfflineSurvivabilityModeType_NoOfflineSurvivabilityMode{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.security_group_choice.f5xc_security_group", + GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.ReplaceSpecType_F5XcSecurityGroup{}), + }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.site_type.ingress_egress_gw.az_nodes.choice.reserved_inside_subnet", + GoType: reflect.TypeOf(ves_io_schema_views.AWSVPCTwoInterfaceNodeType_ReservedInsideSubnet{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.site_type.ingress_egress_gw.dc_cluster_group_choice.no_dc_cluster_group", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.AWSVPCIngressEgressGwReplaceType_NoDcClusterGroup{}), @@ -6937,6 +7133,10 @@ func init() { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.site_type.voltstack_cluster.site_mesh_group_choice.sm_connection_public_ip", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.AWSVPCVoltstackClusterReplaceType_SmConnectionPublicIp{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.vpc.choice.new_vpc.name_choice.autogenerate", + GoType: reflect.TypeOf(ves_io_schema_views.AWSVPCParamsType_Autogenerate{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.ReplaceRequest.spec.worker_nodes.no_worker_nodes", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.ReplaceSpecType_NoWorkerNodes{}), @@ -6970,6 +7170,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.internet_vip_choice.disable_internet_vip", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.GlobalSpecType_DisableInternetVip{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -7129,6 +7337,14 @@ func init() { FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.internet_vip_choice.disable_internet_vip", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.GlobalSpecType_DisableInternetVip{}), }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.aws_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_aws_vpc_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -7270,6 +7486,14 @@ func init() { FieldPath: "ves.io.schema.views.azure_vnet_site.CreateRequest.spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.CreateSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.azure_vnet_site.CreateRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.CreateSpecType_LogsStreamingDisabled{}), @@ -7573,6 +7797,14 @@ func init() { FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.ReplaceSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.ReplaceSpecType_LogsStreamingDisabled{}), @@ -7797,6 +8029,10 @@ func init() { FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.site_type.voltstack_cluster_ar.site_mesh_group_choice.sm_connection_public_ip", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.AzureVnetVoltstackClusterARReplaceType_SmConnectionPublicIp{}), }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.vnet.choice.new_vnet.name_choice.autogenerate", + GoType: reflect.TypeOf(ves_io_schema_views.AzureVnetParamsType_Autogenerate{}), + }, { FieldPath: "ves.io.schema.views.azure_vnet_site.ReplaceRequest.spec.worker_nodes.no_worker_nodes", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.ReplaceSpecType_NoWorkerNodes{}), @@ -7810,6 +8046,14 @@ func init() { FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectCreateReq.spec.gc_spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.GlobalSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectCreateReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -8113,6 +8357,14 @@ func init() { FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectReplaceReq.spec.gc_spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.GlobalSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.azure_vnet_site.crudapi.ObjectReplaceReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_azure_vnet_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -8431,235 +8683,1615 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", - GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, - } - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Replace"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https.tls_parameters.tls_config.choice.tls_12_plus", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https_auto_cert.tls_config.choice.tls_12_plus", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.cache_options.cache_rules.cache_actions.cache_bypass", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", - GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, - } - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.CustomAPI.CDNCachePurge"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.LilacCDNCachePurgeRequest.purge_type.soft_purge", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.LilacCDNCachePurgeRequest_SoftPurge{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, - } - - MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.views.cdn_loadbalancer.Object"] = nil - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Create"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https.tls_parameters.tls_config.choice.tls_12_plus", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https_auto_cert.tls_config.choice.tls_12_plus", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.cache_options.cache_rules.cache_actions.cache_bypass", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", - GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, - } - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Replace"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https.tls_parameters.tls_config.choice.tls_12_plus", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https_auto_cert.tls_config.choice.tls_12_plus", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.cache_options.cache_rules.cache_actions.cache_bypass", - GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", - GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { - FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", - GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), }, - } - - MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.views.forward_proxy_policy.Object"] = nil - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.forward_proxy_policy.API.Create"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.proxy_choice.any_proxy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.CreateSpecType_AnyProxy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.allow_all", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.CreateSpecType_AllowAll{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.allow_list.default_action_choice.default_action_next_policy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.allow_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.deny_list.default_action_choice.default_action_next_policy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.deny_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.rule_list.rules.destination_choice.all_destinations", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllDestinations{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.disable_api_definition", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDefinition{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.rule_list.rules.destination_choice.http_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.rule_list.rules.source_choice.all_sources", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllSources{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), }, - } - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.forward_proxy_policy.API.Replace"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.proxy_choice.any_proxy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ReplaceSpecType_AnyProxy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.allow_all", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ReplaceSpecType_AllowAll{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.allow_list.default_action_choice.default_action_next_policy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.disable_api_discovery", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDiscovery{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.allow_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.deny_list.default_action_choice.default_action_next_policy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.deny_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.destination_choice.all_destinations", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllDestinations{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.destination_choice.http_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.source_choice.all_sources", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllSources{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), }, - } - - MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.views.forward_proxy_policy.Object"] = nil - - MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.forward_proxy_policy.crudapi.API.Create"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.proxy_choice.any_proxy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.GlobalSpecType_AnyProxy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.allow_all", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.GlobalSpecType_AllowAll{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.allow_list.default_action_choice.default_action_next_policy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.allow_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.deny_list.default_action_choice.default_action_next_policy", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.deny_list.http_list.path_choice.any_path", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), }, { - FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.rule_list.rules.destination_choice.all_destinations", - GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllDestinations{}), + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.jwt_validation.action.action_choice.block", + GoType: reflect.TypeOf(ves_io_schema.Action_Block{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.jwt_validation.reserved_claims.validate_period.validate_period_enable", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.jwt_validation.target.target.all_endpoint", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.jwt_validation.token_location.token_location.bearer_token", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.challenge_type.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.challenge_choice.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", + GoType: reflect.TypeOf(ves_io_schema_service_policy_rule.ChallengeRuleSpec_DisableChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.disable_malicious_user_detection", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.disable_rate_limit", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.policy_choice.no_policies", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.service_policy_choice.service_policies_from_namespace", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.user_id_choice.user_id_client_ip", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.csrf_policy.allowed_domains.all_load_balancer_domains", + GoType: reflect.TypeOf(ves_io_schema.CsrfPolicy_AllLoadBalancerDomains{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.data_guard_rules.action_choice.apply_data_guard", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_ApplyDataGuard{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.data_guard_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.graphql_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.graphql_rules.graphql_settings.allow_introspection_queries_choice.disable_introspection", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLSettingsType_DisableIntrospection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.graphql_rules.method_choice.method_get", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_MethodGet{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.protected_cookies.cookie_tampering.disable_tampering_protection", + GoType: reflect.TypeOf(ves_io_schema.CookieManipulationOptionType_DisableTamperingProtection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.waf_choice.disable_waf", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_DisableWaf{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", + GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + }, + } + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Replace"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https.tls_parameters.tls_config.choice.tls_12_plus", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https_auto_cert.tls_config.choice.tls_12_plus", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.cache_options.cache_rules.cache_actions.cache_bypass", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.disable_api_definition", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDefinition{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.disable_api_discovery", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDiscovery{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.jwt_validation.action.action_choice.block", + GoType: reflect.TypeOf(ves_io_schema.Action_Block{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.jwt_validation.reserved_claims.validate_period.validate_period_enable", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.jwt_validation.target.target.all_endpoint", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.jwt_validation.token_location.token_location.bearer_token", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.challenge_type.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.challenge_choice.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", + GoType: reflect.TypeOf(ves_io_schema_service_policy_rule.ChallengeRuleSpec_DisableChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.disable_malicious_user_detection", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.disable_rate_limit", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.policy_choice.no_policies", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.service_policy_choice.service_policies_from_namespace", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.user_id_choice.user_id_client_ip", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.csrf_policy.allowed_domains.all_load_balancer_domains", + GoType: reflect.TypeOf(ves_io_schema.CsrfPolicy_AllLoadBalancerDomains{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.data_guard_rules.action_choice.apply_data_guard", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_ApplyDataGuard{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.data_guard_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.graphql_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.graphql_rules.graphql_settings.allow_introspection_queries_choice.disable_introspection", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLSettingsType_DisableIntrospection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.graphql_rules.method_choice.method_get", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_MethodGet{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.protected_cookies.cookie_tampering.disable_tampering_protection", + GoType: reflect.TypeOf(ves_io_schema.CookieManipulationOptionType_DisableTamperingProtection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.waf_choice.disable_waf", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_DisableWaf{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", + GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + }, + } + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.CustomAPI.CDNCachePurge"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.LilacCDNCachePurgeRequest.pattern_type.purge_all", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.LilacCDNCachePurgeRequest_PurgeAll{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.LilacCDNCachePurgeRequest.purge_type.soft_purge", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.LilacCDNCachePurgeRequest_SoftPurge{}), + }, + } + + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.views.cdn_loadbalancer.Object"] = nil + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Create"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https.tls_parameters.tls_config.choice.tls_12_plus", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https_auto_cert.tls_config.choice.tls_12_plus", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.cache_options.cache_rules.cache_actions.cache_bypass", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.disable_api_definition", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDefinition{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.disable_api_discovery", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDiscovery{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.action.action_choice.block", + GoType: reflect.TypeOf(ves_io_schema.Action_Block{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.reserved_claims.validate_period.validate_period_enable", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.target.target.all_endpoint", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.token_location.token_location.bearer_token", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.challenge_type.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.challenge_choice.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", + GoType: reflect.TypeOf(ves_io_schema_service_policy_rule.ChallengeRuleSpec_DisableChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.disable_malicious_user_detection", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.disable_rate_limit", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.policy_choice.no_policies", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.service_policy_choice.service_policies_from_namespace", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.common_security_controls.user_id_choice.user_id_client_ip", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.csrf_policy.allowed_domains.all_load_balancer_domains", + GoType: reflect.TypeOf(ves_io_schema.CsrfPolicy_AllLoadBalancerDomains{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.data_guard_rules.action_choice.apply_data_guard", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_ApplyDataGuard{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.data_guard_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.graphql_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.graphql_rules.graphql_settings.allow_introspection_queries_choice.disable_introspection", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLSettingsType_DisableIntrospection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.graphql_rules.method_choice.method_get", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_MethodGet{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.protected_cookies.cookie_tampering.disable_tampering_protection", + GoType: reflect.TypeOf(ves_io_schema.CookieManipulationOptionType_DisableTamperingProtection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.waf_choice.disable_waf", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_DisableWaf{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", + GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + }, + } + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Replace"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https.tls_parameters.tls_config.choice.tls_12_plus", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https_auto_cert.tls_config.choice.tls_12_plus", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.cache_options.cache_rules.cache_actions.cache_bypass", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss.validation_target_choice.validation_disabled", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_definition_choice.disable_api_definition", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDefinition{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.disable_api_discovery", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDiscovery{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.section_choice.all_sections", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AllSections{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", + GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.action.action.allow", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.action.action_choice.block", + GoType: reflect.TypeOf(ves_io_schema.Action_Block{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.reserved_claims.validate_period.validate_period_enable", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.target.target.all_endpoint", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.token_location.token_location.bearer_token", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.challenge_type.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.challenge_choice.no_challenge", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", + GoType: reflect.TypeOf(ves_io_schema_service_policy_rule.ChallengeRuleSpec_DisableChallenge{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.disable_malicious_user_detection", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyClient{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.ip_asn_choice.any_ip", + GoType: reflect.TypeOf(ves_io_schema_policy.ClientMatcher_AnyIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.disable_rate_limit", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.rate_limit_choice.rate_limit.policy_choice.no_policies", + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.service_policy_choice.service_policies_from_namespace", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.common_security_controls.user_id_choice.user_id_client_ip", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.csrf_policy.allowed_domains.all_load_balancer_domains", + GoType: reflect.TypeOf(ves_io_schema.CsrfPolicy_AllLoadBalancerDomains{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.data_guard_rules.action_choice.apply_data_guard", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_ApplyDataGuard{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.data_guard_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.graphql_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.graphql_rules.graphql_settings.allow_introspection_queries_choice.disable_introspection", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLSettingsType_DisableIntrospection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.graphql_rules.method_choice.method_get", + GoType: reflect.TypeOf(ves_io_schema_policy.GraphQLRule_MethodGet{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.protected_cookies.cookie_tampering.disable_tampering_protection", + GoType: reflect.TypeOf(ves_io_schema.CookieManipulationOptionType_DisableTamperingProtection{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.waf_choice.disable_waf", + GoType: reflect.TypeOf(ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_DisableWaf{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.domain_choice.any_domain", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyDomain{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_policy.SimpleWafExclusionRule_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.mtls_choice.no_mtls", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.server_validation_choice.volterra_trusted_ca", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.sni_choice.use_host_header_as_sni", + GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{}), + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool.tls_choice.use_tls.tls_config.choice.default_security", + GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), + }, + } + + MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.views.forward_proxy_policy.Object"] = nil + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.forward_proxy_policy.API.Create"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.proxy_choice.any_proxy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.CreateSpecType_AnyProxy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.allow_all", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.CreateSpecType_AllowAll{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.allow_list.default_action_choice.default_action_next_policy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.allow_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.deny_list.default_action_choice.default_action_next_policy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.deny_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.rule_list.rules.destination_choice.all_destinations", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllDestinations{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.rule_list.rules.destination_choice.http_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.CreateRequest.spec.rule_choice.rule_list.rules.source_choice.all_sources", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllSources{}), + }, + } + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.forward_proxy_policy.API.Replace"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.proxy_choice.any_proxy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ReplaceSpecType_AnyProxy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.allow_all", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ReplaceSpecType_AllowAll{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.allow_list.default_action_choice.default_action_next_policy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.allow_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.deny_list.default_action_choice.default_action_next_policy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.deny_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.destination_choice.all_destinations", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllDestinations{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.destination_choice.http_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.ReplaceRequest.spec.rule_choice.rule_list.rules.source_choice.all_sources", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllSources{}), + }, + } + + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.views.forward_proxy_policy.Object"] = nil + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.forward_proxy_policy.crudapi.API.Create"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.proxy_choice.any_proxy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.GlobalSpecType_AnyProxy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.allow_all", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.GlobalSpecType_AllowAll{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.allow_list.default_action_choice.default_action_next_policy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.allow_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.deny_list.default_action_choice.default_action_next_policy", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxySimpleRuleType_DefaultActionNextPolicy{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.deny_list.http_list.path_choice.any_path", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.URLType_AnyPath{}), + }, + { + FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.rule_list.rules.destination_choice.all_destinations", + GoType: reflect.TypeOf(ves_io_schema_views_forward_proxy_policy.ForwardProxyAdvancedRuleType_AllDestinations{}), }, { FieldPath: "ves.io.schema.views.forward_proxy_policy.crudapi.ObjectCreateReq.spec.gc_spec.rule_choice.rule_list.rules.destination_choice.http_list.http_list.path_choice.any_path", @@ -8717,6 +10349,14 @@ func init() { FieldPath: "ves.io.schema.views.gcp_vpc_site.CreateRequest.spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.CreateSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.gcp_vpc_site.CreateRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.CreateSpecType_LogsStreamingDisabled{}), @@ -8841,8 +10481,16 @@ func init() { MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.views.gcp_vpc_site.API.Replace"] = []svcfw.OneofDefaultChoiceField{ { - FieldPath: "ves.io.schema.views.gcp_vpc_site.ReplaceRequest.spec.blocked_services_choice.block_all_services", - GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.ReplaceSpecType_BlockAllServices{}), + FieldPath: "ves.io.schema.views.gcp_vpc_site.ReplaceRequest.spec.blocked_services_choice.block_all_services", + GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.ReplaceSpecType_BlockAllServices{}), + }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), }, { FieldPath: "ves.io.schema.views.gcp_vpc_site.ReplaceRequest.spec.logs_receiver_choice.logs_streaming_disabled", @@ -8957,6 +10605,14 @@ func init() { FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.GlobalSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectCreateReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -9084,6 +10740,14 @@ func init() { FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.blocked_services_choice.block_all_services", GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.GlobalSpecType_BlockAllServices{}), }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.gcp_vpc_site.crudapi.ObjectReplaceReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_gcp_vpc_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -9219,67 +10883,67 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_disabled", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationDisabled{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.disable_api_definition", @@ -9291,7 +10955,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -9307,7 +10971,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_protection_rules.api_endpoint_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", @@ -9319,11 +10983,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_protection_rules.api_groups_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", @@ -9335,7 +10999,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_protection_rules.api_groups_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.bot_defense_choice.bot_defense.cors_support_choice.disable_cors_support", @@ -9387,7 +11051,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.challenge_type.policy_based_challenge.challenge_choice.no_challenge", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_NoChallenge{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", @@ -9421,14 +11085,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.data_guard_rules.domain_choice.any_domain", GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ddos_detection_choice.disable_ddos_detection", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.CreateSpecType_DisableDdosDetection{}), - }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ddos_mitigation_rules.mitigation_action.block", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.DDoSMitigationRule_Block{}), @@ -9455,23 +11111,27 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.jwt_validation.reserved_claims.validate_period.validate_period_enable", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodEnable{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.jwt_validation.target.target.all_endpoint", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.Target_AllEndpoint{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.jwt_validation.token_location.token_location.bearer_token", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.TokenLocation_BearerToken{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.l7_ddos_auto_mitigation_action.l7_ddos_action_default", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.CreateSpecType_L7DdosActionDefault{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -9498,8 +11158,12 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -9523,7 +11187,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -9537,10 +11201,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ml_config_choice.single_lb_app.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ml_config_choice.single_lb_app.malicious_user_detection_choice.enable_malicious_user_detection", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{}), @@ -9554,13 +11214,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.origin_pool_choice.default_pool.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -9639,11 +11303,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiEndpointRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", @@ -9655,15 +11319,15 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyUrl{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIRateLimit_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", @@ -9675,11 +11339,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ServerUrlRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.disable_rate_limit", @@ -9687,11 +11351,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.rate_limit_choice.rate_limit.policy_choice.no_policies", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoPolicies{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.routes.choice.simple_route.advanced_options.buffer_choice.common_buffering", @@ -9738,8 +11402,8 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.CreateSpecType_ServicePoliciesFromNamespace{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.threat_intelligence_choice.disable_threat_intelligence", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.CreateSpecType_DisableThreatIntelligence{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.threat_mesh_choice.disable_threat_mesh", + GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.CreateSpecType_DisableThreatMesh{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.trust_client_ip_headers_choice.disable_trust_client_ip_headers", @@ -9774,67 +11438,67 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification.validation_target_choice.validation_disabled", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationDisabled{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.disable_api_definition", @@ -9846,7 +11510,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -9862,7 +11526,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_protection_rules.api_endpoint_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", @@ -9874,11 +11538,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_protection_rules.api_groups_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", @@ -9890,7 +11554,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_protection_rules.api_groups_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.bot_defense_choice.bot_defense.cors_support_choice.disable_cors_support", @@ -9942,7 +11606,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.challenge_type.policy_based_challenge.challenge_choice.no_challenge", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_NoChallenge{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", @@ -9976,14 +11640,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.data_guard_rules.domain_choice.any_domain", GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ddos_detection_choice.disable_ddos_detection", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReplaceSpecType_DisableDdosDetection{}), - }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ddos_mitigation_rules.mitigation_action.block", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.DDoSMitigationRule_Block{}), @@ -10010,23 +11666,27 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.jwt_validation.reserved_claims.validate_period.validate_period_enable", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodEnable{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.jwt_validation.target.target.all_endpoint", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.Target_AllEndpoint{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.jwt_validation.token_location.token_location.bearer_token", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.TokenLocation_BearerToken{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.l7_ddos_auto_mitigation_action.l7_ddos_action_default", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReplaceSpecType_L7DdosActionDefault{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -10053,8 +11713,12 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -10078,7 +11742,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -10092,10 +11756,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ml_config_choice.single_lb_app.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ml_config_choice.single_lb_app.malicious_user_detection_choice.enable_malicious_user_detection", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{}), @@ -10109,13 +11769,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.origin_pool_choice.default_pool.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -10194,11 +11858,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiEndpointRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", @@ -10210,15 +11874,15 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyUrl{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIRateLimit_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", @@ -10230,11 +11894,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ServerUrlRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.disable_rate_limit", @@ -10242,11 +11906,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.rate_limit_choice.rate_limit.policy_choice.no_policies", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoPolicies{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.routes.choice.simple_route.advanced_options.buffer_choice.common_buffering", @@ -10293,8 +11957,8 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReplaceSpecType_ServicePoliciesFromNamespace{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.threat_intelligence_choice.disable_threat_intelligence", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReplaceSpecType_DisableThreatIntelligence{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.threat_mesh_choice.disable_threat_mesh", + GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReplaceSpecType_DisableThreatMesh{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.trust_client_ip_headers_choice.disable_trust_client_ip_headers", @@ -10331,67 +11995,67 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_disabled", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationDisabled{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_definition_choice.disable_api_definition", @@ -10403,7 +12067,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -10419,7 +12083,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_protection_rules.api_endpoint_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", @@ -10431,11 +12095,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_protection_rules.api_groups_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", @@ -10447,7 +12111,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.api_protection_rules.api_groups_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.bot_defense_choice.bot_defense.cors_support_choice.disable_cors_support", @@ -10499,7 +12163,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.challenge_type.policy_based_challenge.challenge_choice.no_challenge", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_NoChallenge{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", @@ -10533,14 +12197,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.data_guard_rules.domain_choice.any_domain", GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ddos_detection_choice.disable_ddos_detection", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_DisableDdosDetection{}), - }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ddos_mitigation_rules.mitigation_action.block", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.DDoSMitigationRule_Block{}), @@ -10567,23 +12223,27 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.jwt_validation.reserved_claims.validate_period.validate_period_enable", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodEnable{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.jwt_validation.target.target.all_endpoint", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.Target_AllEndpoint{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.jwt_validation.token_location.token_location.bearer_token", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.TokenLocation_BearerToken{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.l7_ddos_auto_mitigation_action.l7_ddos_action_default", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_L7DdosActionDefault{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -10610,8 +12270,12 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -10635,7 +12299,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -10649,10 +12313,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ml_config_choice.single_lb_app.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.ml_config_choice.single_lb_app.malicious_user_detection_choice.enable_malicious_user_detection", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{}), @@ -10666,13 +12326,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -10751,11 +12415,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiEndpointRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", @@ -10767,15 +12431,15 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyUrl{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIRateLimit_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", @@ -10787,11 +12451,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ServerUrlRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.disable_rate_limit", @@ -10799,11 +12463,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.rate_limit_choice.rate_limit.policy_choice.no_policies", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoPolicies{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.routes.choice.simple_route.advanced_options.buffer_choice.common_buffering", @@ -10850,8 +12514,8 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_ServicePoliciesFromNamespace{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.threat_intelligence_choice.disable_threat_intelligence", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_DisableThreatIntelligence{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.threat_mesh_choice.disable_threat_mesh", + GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_DisableThreatMesh{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq.spec.gc_spec.trust_client_ip_headers_choice.disable_trust_client_ip_headers", @@ -10886,67 +12550,67 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_all_spec_endpoints.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.fall_through_mode.fall_through_mode_choice.fall_through_mode_custom.open_api_validation_rules.action_choice.action_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.FallThroughRule_ActionReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.response_validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.response_validation_mode_choice.skip_response_validation", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.open_api_validation_rules.validation_mode.validation_mode_choice.validation_mode_active.validation_enforcement_type.enforcement_report", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.headers.additional_headers_choice.allow_additional_headers", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_custom_list.settings.property_validation_settings_choice.property_validation_settings_custom.queryParameters.additional_parameters_choice.allow_additional_parameters", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.api_specification.validation_target_choice.validation_disabled", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationDisabled{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_definition_choice.disable_api_definition", @@ -10958,7 +12622,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_discovery_choice.enable_api_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_discovery_choice.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -10974,7 +12638,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_protection_rules.api_endpoint_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_protection_rules.api_endpoint_rules.client_matcher.client_choice.any_client", @@ -10986,11 +12650,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_protection_rules.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_protection_rules.api_groups_rules.action.action.allow", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_protection_rules.api_groups_rules.client_matcher.client_choice.any_client", @@ -11002,7 +12666,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.api_protection_rules.api_groups_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.bot_defense_choice.bot_defense.cors_support_choice.disable_cors_support", @@ -11054,7 +12718,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.challenge_type.policy_based_challenge.challenge_choice.no_challenge", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_NoChallenge{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.challenge_type.policy_based_challenge.rule_list.rules.spec.challenge_action.disable_challenge", @@ -11088,14 +12752,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.data_guard_rules.domain_choice.any_domain", GoType: reflect.TypeOf(ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ddos_detection_choice.disable_ddos_detection", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_DisableDdosDetection{}), - }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ddos_mitigation_rules.mitigation_action.block", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.DDoSMitigationRule_Block{}), @@ -11122,23 +12778,27 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.jwt_validation.reserved_claims.validate_period.validate_period_enable", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodEnable{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.jwt_validation.target.target.all_endpoint", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.Target_AllEndpoint{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.Target_AllEndpoint{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.jwt_validation.token_location.token_location.bearer_token", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.TokenLocation_BearerToken{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.TokenLocation_BearerToken{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.l7_ddos_auto_mitigation_action.l7_ddos_action_default", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_L7DdosActionDefault{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -11165,8 +12825,12 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views.TlsConfig_DefaultSecurity{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https_auto_cert.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.loadbalancer_type.https_auto_cert.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -11190,7 +12854,7 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.learn_from_redirect_traffic.disable_learn_from_redirect_traffic", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.domain_choice.any_domain", @@ -11204,10 +12868,6 @@ func init() { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ml_config_choice.single_lb_app.api_discovery_choice.enable_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.sensitive_data_detection_config.target_choice.any_target", GoType: reflect.TypeOf(ves_io_schema_app_type.CustomDataDetectionConfig_AnyTarget{}), }, - { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ml_config_choice.single_lb_app.ddos_detection_choice.enable_ddos_detection.auto_mitigation_choice.enable_auto_mitigation.action.block", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{}), - }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.ml_config_choice.single_lb_app.malicious_user_detection_choice.enable_malicious_user_detection", GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{}), @@ -11221,13 +12881,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.origin_pool_choice.default_pool.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -11306,11 +12970,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ApiEndpointRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.api_endpoint_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.client_matcher.client_choice.any_client", @@ -11322,15 +12986,15 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.destination_type.any_url", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyUrl{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.bypass_rate_limiting_rules.bypass_rate_limiting_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.APIRateLimit_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.server_url_rules.client_matcher.client_choice.any_client", @@ -11342,11 +13006,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.server_url_rules.domain_choice.any_domain", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.ServerUrlRule_AnyDomain{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.api_rate_limit.server_url_rules.rate_limiter_choice.inline_rate_limiter.count_by_choice.use_http_lb_user_id", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.disable_rate_limit", @@ -11354,11 +13018,11 @@ func init() { }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.rate_limit.ip_allowed_list_choice.no_ip_allowed_list", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoIpAllowedList{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.rate_limit_choice.rate_limit.policy_choice.no_policies", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoPolicies{}), + GoType: reflect.TypeOf(ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.routes.choice.simple_route.advanced_options.buffer_choice.common_buffering", @@ -11405,8 +13069,8 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_ServicePoliciesFromNamespace{}), }, { - FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.threat_intelligence_choice.disable_threat_intelligence", - GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_DisableThreatIntelligence{}), + FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.threat_mesh_choice.disable_threat_mesh", + GoType: reflect.TypeOf(ves_io_schema_views_http_loadbalancer.GlobalSpecType_DisableThreatMesh{}), }, { FieldPath: "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq.spec.gc_spec.trust_client_ip_headers_choice.disable_trust_client_ip_headers", @@ -11444,13 +13108,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.origin_pool.CreateRequest.spec.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.origin_pool.CreateRequest.spec.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.origin_pool.CreateRequest.spec.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.origin_pool.CreateRequest.spec.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.origin_pool.CreateRequest.spec.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -11511,13 +13179,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.origin_pool.ReplaceRequest.spec.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.origin_pool.ReplaceRequest.spec.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.origin_pool.ReplaceRequest.spec.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.origin_pool.ReplaceRequest.spec.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.origin_pool.ReplaceRequest.spec.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -11580,13 +13252,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectCreateReq.spec.gc_spec.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectCreateReq.spec.gc_spec.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectCreateReq.spec.gc_spec.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectCreateReq.spec.gc_spec.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectCreateReq.spec.gc_spec.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -11647,13 +13323,17 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DefaultCircuitBreaker{}), }, { - FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectReplaceReq.spec.gc_spec.advanced_options.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectReplaceReq.spec.gc_spec.advanced_options.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectReplaceReq.spec.gc_spec.advanced_options.http_protocol_type.auto_http_config", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_AutoHttpConfig{}), }, + { + FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectReplaceReq.spec.gc_spec.advanced_options.http_protocol_type.http1_config.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, { FieldPath: "ves.io.schema.views.origin_pool.crudapi.ObjectReplaceReq.spec.gc_spec.advanced_options.outlier_detection_choice.disable_outlier_detection", GoType: reflect.TypeOf(ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableOutlierDetection{}), @@ -11767,6 +13447,14 @@ func init() { FieldPath: "ves.io.schema.views.securemesh_site.CreateRequest.spec.bond_choice.no_bond_devices", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.CreateSpecType_NoBondDevices{}), }, + { + FieldPath: "ves.io.schema.views.securemesh_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.securemesh_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.securemesh_site.CreateRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.CreateSpecType_LogsStreamingDisabled{}), @@ -11950,6 +13638,14 @@ func init() { FieldPath: "ves.io.schema.views.securemesh_site.ReplaceRequest.spec.bond_choice.no_bond_devices", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.ReplaceSpecType_NoBondDevices{}), }, + { + FieldPath: "ves.io.schema.views.securemesh_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.securemesh_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.securemesh_site.ReplaceRequest.spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.ReplaceSpecType_LogsStreamingDisabled{}), @@ -12135,6 +13831,14 @@ func init() { FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectCreateReq.spec.gc_spec.bond_choice.no_bond_devices", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.GlobalSpecType_NoBondDevices{}), }, + { + FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectCreateReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -12318,6 +14022,14 @@ func init() { FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectReplaceReq.spec.gc_spec.bond_choice.no_bond_devices", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.GlobalSpecType_NoBondDevices{}), }, + { + FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.securemesh_site.crudapi.ObjectReplaceReq.spec.gc_spec.logs_receiver_choice.logs_streaming_disabled", GoType: reflect.TypeOf(ves_io_schema_views_securemesh_site.GlobalSpecType_LogsStreamingDisabled{}), @@ -12743,6 +14455,14 @@ func init() { FieldPath: "ves.io.schema.views.voltstack_site.CreateRequest.spec.k8s_cluster_choice.no_k8s_cluster", GoType: reflect.TypeOf(ves_io_schema_views_voltstack_site.CreateSpecType_NoK8SCluster{}), }, + { + FieldPath: "ves.io.schema.views.voltstack_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.voltstack_site.CreateRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.voltstack_site.CreateRequest.spec.local_control_plane_choice.local_control_plane.bgp_config.peers.passive_choice.passive_mode_disabled", GoType: reflect.TypeOf(ves_io_schema_bgp.Peer_PassiveModeDisabled{}), @@ -13050,6 +14770,14 @@ func init() { FieldPath: "ves.io.schema.views.voltstack_site.ReplaceRequest.spec.k8s_cluster_choice.no_k8s_cluster", GoType: reflect.TypeOf(ves_io_schema_views_voltstack_site.ReplaceSpecType_NoK8SCluster{}), }, + { + FieldPath: "ves.io.schema.views.voltstack_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.voltstack_site.ReplaceRequest.spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.voltstack_site.ReplaceRequest.spec.local_control_plane_choice.local_control_plane.bgp_config.peers.passive_choice.passive_mode_disabled", GoType: reflect.TypeOf(ves_io_schema_bgp.Peer_PassiveModeDisabled{}), @@ -13359,6 +15087,14 @@ func init() { FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectCreateReq.spec.gc_spec.k8s_cluster_choice.no_k8s_cluster", GoType: reflect.TypeOf(ves_io_schema_views_voltstack_site.GlobalSpecType_NoK8SCluster{}), }, + { + FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectCreateReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectCreateReq.spec.gc_spec.local_control_plane_choice.local_control_plane.bgp_config.peers.passive_choice.passive_mode_disabled", GoType: reflect.TypeOf(ves_io_schema_bgp.Peer_PassiveModeDisabled{}), @@ -13666,6 +15402,14 @@ func init() { FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectReplaceReq.spec.gc_spec.k8s_cluster_choice.no_k8s_cluster", GoType: reflect.TypeOf(ves_io_schema_views_voltstack_site.GlobalSpecType_NoK8SCluster{}), }, + { + FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{}), + }, + { + FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectReplaceReq.spec.gc_spec.kubernetes_upgrade_drain.kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain.vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode", + GoType: reflect.TypeOf(ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{}), + }, { FieldPath: "ves.io.schema.views.voltstack_site.crudapi.ObjectReplaceReq.spec.gc_spec.local_control_plane_choice.local_control_plane.bgp_config.peers.passive_choice.passive_mode_disabled", GoType: reflect.TypeOf(ves_io_schema_bgp.Peer_PassiveModeDisabled{}), @@ -13980,8 +15724,16 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_virtual_host.DNSCacheProfile_DisableCacheProfile{}), }, { - FieldPath: "ves.io.schema.virtual_host.CreateRequest.spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.virtual_host.CreateRequest.spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.virtual_host.CreateRequest.spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.virtual_host.CreateRequest.spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", + GoType: reflect.TypeOf(ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1V2{}), }, } @@ -14007,8 +15759,16 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_virtual_host.DNSCacheProfile_DisableCacheProfile{}), }, { - FieldPath: "ves.io.schema.virtual_host.ReplaceRequest.spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.virtual_host.ReplaceRequest.spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.virtual_host.ReplaceRequest.spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.virtual_host.ReplaceRequest.spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", + GoType: reflect.TypeOf(ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1V2{}), }, } @@ -14044,8 +15804,12 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_virtual_host.DNSCacheProfile_DisableCacheProfile{}), }, { - FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectCreateReq.spec.gc_spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectCreateReq.spec.gc_spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectCreateReq.spec.gc_spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectCreateReq.spec.gc_spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -14099,8 +15863,12 @@ func init() { GoType: reflect.TypeOf(ves_io_schema_virtual_host.DNSCacheProfile_DisableCacheProfile{}), }, { - FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectReplaceReq.spec.gc_spec.header_transformation_type.header_transformation_choice.default_header_transformation", - GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{}), + FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectReplaceReq.spec.gc_spec.header_transformation_type.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), + }, + { + FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectReplaceReq.spec.gc_spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_only.header_transformation.header_transformation_choice.legacy_header_transformation", + GoType: reflect.TypeOf(ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{}), }, { FieldPath: "ves.io.schema.virtual_host.crudapi.ObjectReplaceReq.spec.gc_spec.http_protocol_options.http_protocol_choice.http_protocol_enable_v1_v2", @@ -14240,6 +16008,58 @@ func init() { MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.waf_signatures_changelog.Object"] = []svcfw.NamespaceType{svcfw.SystemNSType} + MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.ztna.Object"] = nil + + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.ztna.Object"] = nil + + MDR.PubCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.ztna_application.Object"] = nil + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.ztna_application.API.Create"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.ztna_application.CreateRequest.spec.proxy_advertisement.advertise_choice.advertise_custom.advertise_where.port_choice.use_default_port", + GoType: reflect.TypeOf(ves_io_schema_views.WhereType_UseDefaultPort{}), + }, + { + FieldPath: "ves.io.schema.ztna_application.CreateRequest.spec.proxy_advertisement.advertise_choice.do_not_advertise", + GoType: reflect.TypeOf(ves_io_schema_ztna_application.ProxyAdvertisementType_DoNotAdvertise{}), + }, + } + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.ztna_application.API.Replace"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.ztna_application.ReplaceRequest.spec.proxy_advertisement.advertise_choice.advertise_custom.advertise_where.port_choice.use_default_port", + GoType: reflect.TypeOf(ves_io_schema_views.WhereType_UseDefaultPort{}), + }, + { + FieldPath: "ves.io.schema.ztna_application.ReplaceRequest.spec.proxy_advertisement.advertise_choice.do_not_advertise", + GoType: reflect.TypeOf(ves_io_schema_ztna_application.ProxyAdvertisementType_DoNotAdvertise{}), + }, + } + + MDR.PvtCRUDServiceRegistry.AllowedInNSTypes["ves.io.schema.ztna_application.Object"] = nil + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.ztna_application.crudapi.API.Create"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.ztna_application.crudapi.ObjectCreateReq.spec.gc_spec.proxy_advertisement.advertise_choice.advertise_custom.advertise_where.port_choice.use_default_port", + GoType: reflect.TypeOf(ves_io_schema_views.WhereType_UseDefaultPort{}), + }, + { + FieldPath: "ves.io.schema.ztna_application.crudapi.ObjectCreateReq.spec.gc_spec.proxy_advertisement.advertise_choice.do_not_advertise", + GoType: reflect.TypeOf(ves_io_schema_ztna_application.ProxyAdvertisementType_DoNotAdvertise{}), + }, + } + + MDR.RPCOneofDefaultChoiceFieldsRegistry["ves.io.schema.ztna_application.crudapi.API.Replace"] = []svcfw.OneofDefaultChoiceField{ + { + FieldPath: "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq.spec.gc_spec.proxy_advertisement.advertise_choice.advertise_custom.advertise_where.port_choice.use_default_port", + GoType: reflect.TypeOf(ves_io_schema_views.WhereType_UseDefaultPort{}), + }, + { + FieldPath: "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq.spec.gc_spec.proxy_advertisement.advertise_choice.do_not_advertise", + GoType: reflect.TypeOf(ves_io_schema_ztna_application.ProxyAdvertisementType_DoNotAdvertise{}), + }, + } + // Set singleton functions in MDRegistry MDR.GetEntryDepsFn = GetEntryDeps if err := isStructField(MDR, "GetEntryDepsSummaryFn"); err == nil { @@ -14323,6 +16143,18 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.ai_assistant.SahayaAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_ai_assistant.SahayaAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_ai_assistant.SahayaAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_ai_assistant.SahayaAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_ai_assistant.SahayaAPIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.alert_policy.API": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_alert_policy.APIServer)) @@ -14335,6 +16167,18 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.alert_policy.CustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_alert_policy.CustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_alert_policy.CustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_alert_policy.CustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_alert_policy.CustomAPIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.alert_policy.crudapi.API": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_alert_policy_crudapi.APIServer)) @@ -14815,6 +16659,42 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.cloud_connect.CustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_cloud_connect.CustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_cloud_connect.CustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_cloud_connect.CustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_cloud_connect.CustomAPIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.cloud_connect.ConfigCustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_cloud_connect.ConfigCustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_cloud_connect.ConfigCustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_cloud_connect.ConfigCustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_cloud_connect.ConfigCustomAPIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.cloud_connect.CloudDataCustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_cloud_connect.CloudDataCustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_cloud_connect.CloudDataCustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_cloud_connect.CloudDataCustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_cloud_connect.CloudDataCustomAPIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.cloud_connect.crudapi.API": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_cloud_connect_crudapi.APIServer)) @@ -15283,6 +17163,18 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.dns_zone.rrset.CustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_dns_zone_rrset.CustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_dns_zone_rrset.CustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_dns_zone_rrset.CustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_dns_zone_rrset.CustomAPIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.dos_mitigation.PrivateDosMitigationAPI": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_dos_mitigation.PrivateDosMitigationAPIServer)) @@ -15439,6 +17331,42 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.filter_set.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_filter_set.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_filter_set.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_filter_set.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_filter_set.APIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.filter_set.CustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_filter_set.CustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_filter_set.CustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_filter_set.CustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_filter_set.CustomAPIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.filter_set.crudapi.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_filter_set_crudapi.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_filter_set_crudapi.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_filter_set_crudapi.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_filter_set_crudapi.APIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.fleet.API": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_fleet.APIServer)) @@ -15991,6 +17919,18 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_marketplace_xc_saas_asb_message_crudapi.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_marketplace_xc_saas_asb_message_crudapi.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_marketplace_xc_saas_asb_message_crudapi.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_marketplace_xc_saas_asb_message_crudapi.APIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.namespace.API": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_namespace.APIServer)) @@ -16855,6 +18795,30 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.subscription.CustomAPI": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_subscription.CustomAPIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_subscription.CustomAPIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_subscription.CustomAPIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_subscription.CustomAPIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.subscription.crudapi.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_subscription_crudapi.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_subscription_crudapi.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_subscription_crudapi.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_subscription_crudapi.APIServer", srv)) + } + h(gSrv, s) + case "ves.io.schema.tenant.CustomAPI": gh, _ := MDR.SvcRegisterHandlers[api] h, ok := gh.(func(*grpc.Server, ves_io_schema_tenant.CustomAPIServer)) @@ -18186,6 +20150,54 @@ func RegisterGrpcAPI(api string, gSrv *grpc.Server, srv interface{}) error { } h(gSrv, s) + case "ves.io.schema.ztna.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_ztna.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_ztna.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_ztna.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_ztna.APIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.ztna.crudapi.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_ztna_crudapi.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_ztna_crudapi.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_ztna_crudapi.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_ztna_crudapi.APIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.ztna_application.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_ztna_application.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_ztna_application.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_ztna_application.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_ztna_application.APIServer", srv)) + } + h(gSrv, s) + + case "ves.io.schema.ztna_application.crudapi.API": + gh, _ := MDR.SvcRegisterHandlers[api] + h, ok := gh.(func(*grpc.Server, ves_io_schema_ztna_application_crudapi.APIServer)) + if !ok { + return fmt.Errorf("gRPC API reg expected func(*grpc.Server, ves_io_schema_ztna_application_crudapi.APIServer), got %T", gh) + } + s, ok := srv.(ves_io_schema_ztna_application_crudapi.APIServer) + if !ok { + panic(fmt.Sprintf("%T does not satisfy interface ves_io_schema_ztna_application_crudapi.APIServer", srv)) + } + h(gSrv, s) + default: err = fmt.Errorf("gRPC API %s reg func not handled", api) } diff --git a/pbgo/extschema/schema/combined/data.ves.go b/pbgo/extschema/schema/combined/data.ves.go index 38c69de94..b5ed3bfa4 100644 --- a/pbgo/extschema/schema/combined/data.ves.go +++ b/pbgo/extschema/schema/combined/data.ves.go @@ -264,6 +264,41 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.advertise_policy.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant", false) + mdr.PkgsInfo["ves.io.schema.ai_assistant"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("SahayaAPI", "CUSTOM_PUBLIC", "", false) + + rpcInfo = svcfw.NewRPCInfo("AIAssistantQuery", "ves.io.schema.ai_assistant.AIAssistantQueryRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/query"}} + + aInfo.RPCsInfo[svcfw.RPCName("AIAssistantQuery")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ai_assistant.SahayaAPI.AIAssistantQuery"] = rpcInfo + + fInfo.APIsInfo["SahayaAPI"] = aInfo + mdr.APIIdx["ves.io.schema.ai_assistant.SahayaAPI"] = aInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant.common", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/common", false) + mdr.PkgsInfo["ves.io.schema.ai_assistant.common"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/common/link.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/common/link.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant.explain_log_record", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/explain_log_record", false) + mdr.PkgsInfo["ves.io.schema.ai_assistant.explain_log_record"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/explain_log_record/explain_log_record.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/explain_log_record/explain_log_record.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ai_assistant.gen_dashboard_filter", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ai_assistant/gen_dashboard_filter", false) + mdr.PkgsInfo["ves.io.schema.ai_assistant.gen_dashboard_filter"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.proto") + pInfo.FilesInfo["ves.io/schema/ai_assistant/gen_dashboard_filter/gen_dashboard_filter.proto"] = fInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.alert_policy", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy", false) mdr.PkgsInfo["ves.io.schema.alert_policy"] = pInfo @@ -328,6 +363,20 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { mInfo = svcfw.NewMsgInfo("ReplaceRequest") mdr.MsgIdx["ves.io.schema.alert_policy.ReplaceRequest"] = mInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/alert_policy/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/alert_policy/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.alert_policy.Object", false) + + rpcInfo = svcfw.NewRPCInfo("GetAlertPolicyMatch", "ves.io.schema.alert_policy.AlertPolicyMatchRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/alert_policy/match"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetAlertPolicyMatch")] = rpcInfo + mdr.RPCIdx["ves.io.schema.alert_policy.CustomAPI.GetAlertPolicyMatch"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.alert_policy.CustomAPI"] = aInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/alert_policy/types.proto") pInfo.FilesInfo["ves.io/schema/alert_policy/types.proto"] = fInfo @@ -532,11 +581,6 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("ConfirmAlertReceiver")] = rpcInfo mdr.RPCIdx["ves.io.schema.alert_receiver.CustomAPI.ConfirmAlertReceiver"] = rpcInfo - rpcInfo = svcfw.NewRPCInfo("GetAlertPolicyMatch", "ves.io.schema.alert_receiver.AlertPolicyMatchRequest", false, false) - rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/alert_policy/match"}} - - aInfo.RPCsInfo[svcfw.RPCName("GetAlertPolicyMatch")] = rpcInfo - mdr.RPCIdx["ves.io.schema.alert_receiver.CustomAPI.GetAlertPolicyMatch"] = rpcInfo rpcInfo = svcfw.NewRPCInfo("TestAlertReceiver", "ves.io.schema.alert_receiver.TestAlertReceiverRequest", false, false) rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/alert_receivers/{name}/test"}} @@ -920,6 +964,11 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("Metrics")] = rpcInfo mdr.RPCIdx["ves.io.schema.app_firewall.CustomDataAPI.Metrics"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("MetricsAllNamespaces", "ves.io.schema.app_firewall.MetricsRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/app_firewall/all_ns_metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("MetricsAllNamespaces")] = rpcInfo + mdr.RPCIdx["ves.io.schema.app_firewall.CustomDataAPI.MetricsAllNamespaces"] = rpcInfo fInfo.APIsInfo["CustomDataAPI"] = aInfo mdr.APIIdx["ves.io.schema.app_firewall.CustomDataAPI"] = aInfo @@ -2248,6 +2297,68 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { mInfo = svcfw.NewMsgInfo("ReplaceRequest") mdr.MsgIdx["ves.io.schema.cloud_connect.ReplaceRequest"] = mInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/cloud_connect/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.cloud_connect.Object", false) + + rpcInfo = svcfw.NewRPCInfo("GetMetrics", "ves.io.schema.cloud_connect.GetMetricsRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connects/{name}/metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetMetrics")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CustomAPI.GetMetrics"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListMetrics", "ves.io.schema.cloud_connect.ListMetricsRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connects/metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListMetrics")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CustomAPI.ListMetrics"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListSegmentMetrics", "ves.io.schema.cloud_connect.ListSegmentMetricsRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connects/segment_metrics"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListSegmentMetrics")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CustomAPI.ListSegmentMetrics"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.cloud_connect.CustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/public_customapi_akar.proto") + pInfo.FilesInfo["ves.io/schema/cloud_connect/public_customapi_akar.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("ConfigCustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.cloud_connect.Object", false) + + rpcInfo = svcfw.NewRPCInfo("EdgeCredentials", "ves.io.schema.cloud_connect.CredentialsRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/edge_credentials/{provider}"}} + + aInfo.RPCsInfo[svcfw.RPCName("EdgeCredentials")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeCredentials"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("EdgeList", "ves.io.schema.cloud_connect.EdgeListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/edge_list"}} + + aInfo.RPCsInfo[svcfw.RPCName("EdgeList")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.ConfigCustomAPI.EdgeList"] = rpcInfo + + fInfo.APIsInfo["ConfigCustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.cloud_connect.ConfigCustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/public_customapi_lucario.proto") + pInfo.FilesInfo["ves.io/schema/cloud_connect/public_customapi_lucario.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CloudDataCustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.cloud_connect.Object", false) + + rpcInfo = svcfw.NewRPCInfo("DiscoverVPC", "ves.io.schema.cloud_connect.DiscoverVPCRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/discover_vpc"}} + + aInfo.RPCsInfo[svcfw.RPCName("DiscoverVPC")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CloudDataCustomAPI.DiscoverVPC"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ReApplyVPCAttachment", "ves.io.schema.cloud_connect.ReApplyVPCAttachmentRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/cloud_connect_reapply_vpc_attachment"}} + + aInfo.RPCsInfo[svcfw.RPCName("ReApplyVPCAttachment")] = rpcInfo + mdr.RPCIdx["ves.io.schema.cloud_connect.CloudDataCustomAPI.ReApplyVPCAttachment"] = rpcInfo + + fInfo.APIsInfo["CloudDataCustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.cloud_connect.CloudDataCustomAPI"] = aInfo + fInfo = svcfw.NewFileInfo("ves.io/schema/cloud_connect/types.proto") pInfo.FilesInfo["ves.io/schema/cloud_connect/types.proto"] = fInfo @@ -3942,7 +4053,7 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.dns_load_balancer.Object", false) rpcInfo = svcfw.NewRPCInfo("SuggestValues", "ves.io.schema.dns_load_balancer.SuggestValuesReq", true, false) - rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/dns_load_balancer/suggest-values"}} + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/suggest-values"}} aInfo.RPCsInfo[svcfw.RPCName("SuggestValues")] = rpcInfo mdr.RPCIdx["ves.io.schema.dns_load_balancer.CustomAPI.SuggestValues"] = rpcInfo @@ -4170,6 +4281,50 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.dns_zone.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.dns_zone.rrset", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/rrset", false) + mdr.PkgsInfo["ves.io.schema.dns_zone.rrset"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/dns_zone/rrset/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/dns_zone/rrset/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.dns_zone.rrset.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.dns_zone.rrset.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.dns_zone.rrset.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.dns_zone.rrset.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.dns_zone.rrset.CustomAPI.Replace"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.dns_zone.rrset.CustomAPI"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.dns_zone.rrset.ReplaceRequest"] = mInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.dos_mitigation", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dos_mitigation", false) mdr.PkgsInfo["ves.io.schema.dos_mitigation"] = pInfo @@ -4773,6 +4928,129 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.fast_acl_rule.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.filter_set", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set", false) + mdr.PkgsInfo["ves.io.schema.filter_set"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/object.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.filter_set.Object"] = oInfo + oInfo = svcfw.NewObjInfo("StatusObject", false) + + fInfo.ObjsInfo[svcfw.ObjType("StatusObject")] = oInfo + mdr.ObjIdx["ves.io.schema.filter_set.StatusObject"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/public_crudapi.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/public_crudapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD_PUBLIC", "ves.io.schema.filter_set.Object", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.filter_set.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{metadata.namespace}/filter_sets"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.filter_set.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/{namespace}/filter_sets/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.filter_set.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/filter_sets/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.filter_set.ListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/filter_sets"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.filter_set.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/{metadata.namespace}/filter_sets/{metadata.name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.filter_set.API"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.filter_set.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.filter_set.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.filter_set.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ListRequest") + mdr.MsgIdx["ves.io.schema.filter_set.ListRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.filter_set.ReplaceRequest"] = mInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "ves.io.schema.filter_set.Object", false) + + rpcInfo = svcfw.NewRPCInfo("FindFilterSets", "ves.io.schema.filter_set.FindFilterSetsReq", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/filter_sets/find"}} + + aInfo.RPCsInfo[svcfw.RPCName("FindFilterSets")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.CustomAPI.FindFilterSets"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.filter_set.CustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/types.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.filter_set.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set/crudapi", false) + mdr.PkgsInfo["ves.io.schema.filter_set.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/filter_set/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/filter_set/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.filter_set.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.filter_set.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.filter_set/Objects", "/ves.io.schema.filter_set/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.filter_set.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.filter_set/Object/{object_uid}", "/ves.io.schema.filter_set/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.filter_set.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.filter_set/Object/{object_uid}", "/ves.io.schema.filter_set/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.filter_set.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.filter_set/Objects", "/ves.io.schema.filter_set/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.filter_set.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.filter_set/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.filter_set.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.filter_set/Object/{object_uid}", "/ves.io.schema.filter_set/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.filter_set.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.filter_set.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.fleet", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet", false) mdr.PkgsInfo["ves.io.schema.fleet"] = pInfo @@ -7208,6 +7486,62 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.marketplace.aws_account.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.marketplace.xc_saas.asb.message", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message", false) + mdr.PkgsInfo["ves.io.schema.marketplace.xc_saas.asb.message"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/marketplace/xc_saas/asb/message/object.proto") + pInfo.FilesInfo["ves.io/schema/marketplace/xc_saas/asb/message/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/marketplace/xc_saas/asb/message/types.proto") + pInfo.FilesInfo["ves.io/schema/marketplace/xc_saas/asb/message/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi", false) + mdr.PkgsInfo["ves.io.schema.marketplace.xc_saas.asb.message.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.marketplace.xc_saas.asb.message.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Objects", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Objects", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}", "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.namespace", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace", false) mdr.PkgsInfo["ves.io.schema.namespace"] = pInfo @@ -7397,6 +7731,16 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("GetApiEndpointsStats")] = rpcInfo mdr.RPCIdx["ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStats"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("GetApiEndpointsStatsAllNamespaces", "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/api_endpoints/all_ns_stats"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetApiEndpointsStatsAllNamespaces")] = rpcInfo + mdr.RPCIdx["ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("SuggestValues", "ves.io.schema.namespace.SuggestValuesReq", true, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{namespace}/suggest-values"}} + + aInfo.RPCsInfo[svcfw.RPCName("SuggestValues")] = rpcInfo + mdr.RPCIdx["ves.io.schema.namespace.NamespaceMLCustomAPI.SuggestValues"] = rpcInfo fInfo.APIsInfo["NamespaceMLCustomAPI"] = aInfo mdr.APIIdx["ves.io.schema.namespace.NamespaceMLCustomAPI"] = aInfo @@ -10407,6 +10751,66 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.stored_object.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.subscription", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription", false) + mdr.PkgsInfo["ves.io.schema.subscription"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/object.proto") + pInfo.FilesInfo["ves.io/schema/subscription/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.subscription.Object"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/public_customapi.proto") + pInfo.FilesInfo["ves.io/schema/subscription/public_customapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("CustomAPI", "CUSTOM_PUBLIC", "", false) + + rpcInfo = svcfw.NewRPCInfo("Subscribe", "ves.io.schema.subscription.SubscribeRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/addon/subscribe"}} + + aInfo.RPCsInfo[svcfw.RPCName("Subscribe")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.CustomAPI.Subscribe"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Unsubscribe", "ves.io.schema.subscription.UnsubscribeRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/system/addon/unsubscribe"}} + + aInfo.RPCsInfo[svcfw.RPCName("Unsubscribe")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.CustomAPI.Unsubscribe"] = rpcInfo + + fInfo.APIsInfo["CustomAPI"] = aInfo + mdr.APIIdx["ves.io.schema.subscription.CustomAPI"] = aInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/types.proto") + pInfo.FilesInfo["ves.io/schema/subscription/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.subscription.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription/crudapi", false) + mdr.PkgsInfo["ves.io.schema.subscription.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/subscription/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/subscription/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.subscription.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.subscription.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.subscription/Object/{object_uid}", "/ves.io.schema.subscription/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.subscription.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.subscription/Objects", "/ves.io.schema.subscription/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.subscription.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.subscription/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.subscription.crudapi.API.ListStream"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.subscription.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.tenant", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant", false) mdr.PkgsInfo["ves.io.schema.tenant"] = pInfo @@ -10771,11 +11175,21 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { aInfo.RPCsInfo[svcfw.RPCName("DCClusterTopology")] = rpcInfo mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.DCClusterTopology"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("GetNetworkRouteTables", "ves.io.schema.topology.NetworkRouteTablesRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/network/{id}/route_tables"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetNetworkRouteTables")] = rpcInfo + mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.GetNetworkRouteTables"] = rpcInfo rpcInfo = svcfw.NewRPCInfo("GetRouteTable", "ves.io.schema.topology.RouteTableRequest", false, false) rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/route_table/{name}"}} aInfo.RPCsInfo[svcfw.RPCName("GetRouteTable")] = rpcInfo mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.GetRouteTable"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("GetSiteNetworks", "ves.io.schema.topology.SiteNetworksRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/site/{name}/networks"}} + + aInfo.RPCsInfo[svcfw.RPCName("GetSiteNetworks")] = rpcInfo + mdr.RPCIdx["ves.io.schema.topology.CustomDataAPI.GetSiteNetworks"] = rpcInfo rpcInfo = svcfw.NewRPCInfo("SiteMeshGroupsSummary", "ves.io.schema.topology.SiteMeshGroupsSummaryRequest", false, false) rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/system/topology/site_mesh_groups"}} @@ -13460,6 +13874,12 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.views.cdn_loadbalancer.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.views.common_waf", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf", false) + mdr.PkgsInfo["ves.io.schema.views.common_waf"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/views/common_waf/common_waf_types.proto") + pInfo.FilesInfo["ves.io/schema/views/common_waf/common_waf_types.proto"] = fInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.views.forward_proxy_policy", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/forward_proxy_policy", false) mdr.PkgsInfo["ves.io.schema.views.forward_proxy_policy"] = pInfo @@ -15609,4 +16029,222 @@ func GetSchemaData(mdr *svcfw.MDRegistry) { fInfo.APIsInfo["API"] = aInfo mdr.APIIdx["ves.io.schema.waf_signatures_changelog.crudapi.API"] = aInfo + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna", false) + mdr.PkgsInfo["ves.io.schema.ztna"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/object.proto") + pInfo.FilesInfo["ves.io/schema/ztna/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna.Object"] = oInfo + oInfo = svcfw.NewObjInfo("StatusObject", false) + + fInfo.ObjsInfo[svcfw.ObjType("StatusObject")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna.StatusObject"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/public_crudapi.proto") + pInfo.FilesInfo["ves.io/schema/ztna/public_crudapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD_PUBLIC", "ves.io.schema.ztna.Object", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{metadata.namespace}/ztnas"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/{namespace}/ztnas/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztnas/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna.ListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztnas"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/{metadata.namespace}/ztnas/{metadata.name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna.API"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.ztna.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.ztna.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.ztna.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ListRequest") + mdr.MsgIdx["ves.io.schema.ztna.ListRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.ztna.ReplaceRequest"] = mInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/types.proto") + pInfo.FilesInfo["ves.io/schema/ztna/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna/crudapi", false) + mdr.PkgsInfo["ves.io.schema.ztna.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/ztna/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.ztna.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.ztna/Objects", "/ves.io.schema.ztna/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.ztna/Object/{object_uid}", "/ves.io.schema.ztna/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna/Object/{object_uid}", "/ves.io.schema.ztna/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna/Objects", "/ves.io.schema.ztna/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.ztna.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.ztna/Object/{object_uid}", "/ves.io.schema.ztna/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna.crudapi.API"] = aInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna_application", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application", false) + mdr.PkgsInfo["ves.io.schema.ztna_application"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/object.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/object.proto"] = fInfo + + oInfo = svcfw.NewObjInfo("Object", true) + + fInfo.ObjsInfo[svcfw.ObjType("Object")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna_application.Object"] = oInfo + oInfo = svcfw.NewObjInfo("StatusObject", false) + + fInfo.ObjsInfo[svcfw.ObjType("StatusObject")] = oInfo + mdr.ObjIdx["ves.io.schema.ztna_application.StatusObject"] = oInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/public_crudapi.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/public_crudapi.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD_PUBLIC", "ves.io.schema.ztna_application.Object", false) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna_application.CreateRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/public/namespaces/{metadata.namespace}/ztna_applications"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna_application.DeleteRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/public/namespaces/{namespace}/ztna_applications/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna_application.GetRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztna_applications/{name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna_application.ListRequest", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/public/namespaces/{namespace}/ztna_applications"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna_application.ReplaceRequest", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/public/namespaces/{metadata.namespace}/ztna_applications/{metadata.name}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna_application.API"] = aInfo + + mInfo = svcfw.NewMsgInfo("CreateRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.CreateRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("DeleteRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.DeleteRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("GetRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.GetRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ListRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.ListRequest"] = mInfo + + mInfo = svcfw.NewMsgInfo("ReplaceRequest") + mdr.MsgIdx["ves.io.schema.ztna_application.ReplaceRequest"] = mInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/types.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/types.proto"] = fInfo + + pInfo = svcfw.NewPkgInfo("ves.io.schema.ztna_application.crudapi", "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application/crudapi", false) + mdr.PkgsInfo["ves.io.schema.ztna_application.crudapi"] = pInfo + + fInfo = svcfw.NewFileInfo("ves.io/schema/ztna_application/crudapi/api.proto") + pInfo.FilesInfo["ves.io/schema/ztna_application/crudapi/api.proto"] = fInfo + + aInfo = svcfw.NewAPIInfo("API", "AUTO_CRUD", "ves.io.schema.ztna_application.Object", true) + + rpcInfo = svcfw.NewRPCInfo("Create", "ves.io.schema.ztna_application.crudapi.ObjectCreateReq", false, false) + rpcInfo.RestMappings = map[string][]string{"POST": []string{"/ves.io.schema.ztna_application/Objects", "/ves.io.schema.ztna_application/introspect/write/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("Create")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Create"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Delete", "ves.io.schema.ztna_application.crudapi.ObjectDeleteReq", false, false) + rpcInfo.RestMappings = map[string][]string{"DELETE": []string{"/ves.io.schema.ztna_application/Object/{object_uid}", "/ves.io.schema.ztna_application/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Delete")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Delete"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Get", "ves.io.schema.ztna_application.crudapi.ObjectGetReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna_application/Object/{object_uid}", "/ves.io.schema.ztna_application/introspect/read/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Get")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Get"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("List", "ves.io.schema.ztna_application.crudapi.ObjectListReq", true, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna_application/Objects", "/ves.io.schema.ztna_application/introspect/read/Objects"}} + + aInfo.RPCsInfo[svcfw.RPCName("List")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.List"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("ListStream", "ves.io.schema.ztna_application.crudapi.ObjectListReq", false, false) + rpcInfo.RestMappings = map[string][]string{"GET": []string{"/ves.io.schema.ztna_application/Objects/stream"}} + + aInfo.RPCsInfo[svcfw.RPCName("ListStream")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.ListStream"] = rpcInfo + rpcInfo = svcfw.NewRPCInfo("Replace", "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq", false, false) + rpcInfo.RestMappings = map[string][]string{"PUT": []string{"/ves.io.schema.ztna_application/Object/{object_uid}", "/ves.io.schema.ztna_application/introspect/write/Object/{object_uid}"}} + + aInfo.RPCsInfo[svcfw.RPCName("Replace")] = rpcInfo + mdr.RPCIdx["ves.io.schema.ztna_application.crudapi.API.Replace"] = rpcInfo + + fInfo.APIsInfo["API"] = aInfo + mdr.APIIdx["ves.io.schema.ztna_application.crudapi.API"] = aInfo + } diff --git a/pbgo/extschema/schema/contact/crudapi/api.vesapi.go b/pbgo/extschema/schema/contact/crudapi/api.vesapi.go index c12006eb7..70b90b160 100644 --- a/pbgo/extschema/schema/contact/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/contact/crudapi/api.vesapi.go @@ -3148,10 +3148,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/contact/object.pb.go b/pbgo/extschema/schema/contact/object.pb.go index 5932336a0..a3c5062b3 100644 --- a/pbgo/extschema/schema/contact/object.pb.go +++ b/pbgo/extschema/schema/contact/object.pb.go @@ -234,45 +234,45 @@ func init() { } var fileDescriptor_a3d3968c3932785d = []byte{ - // 593 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x41, 0x6b, 0xd4, 0x40, - 0x14, 0xc7, 0x33, 0x4d, 0xd9, 0x96, 0x69, 0xa9, 0x12, 0x11, 0x62, 0xd5, 0x71, 0x5d, 0x11, 0x7a, - 0x68, 0x12, 0x68, 0xf1, 0x60, 0x91, 0x82, 0xad, 0x50, 0xec, 0xb6, 0x08, 0x5b, 0x4f, 0x5e, 0xca, - 0x64, 0xf6, 0x6d, 0x3a, 0x9a, 0x64, 0x42, 0x66, 0x12, 0xdb, 0x83, 0xa0, 0x47, 0xc1, 0x83, 0x1f, - 0x43, 0xfc, 0x14, 0xd6, 0x93, 0xc7, 0x52, 0x10, 0x7a, 0xb4, 0xd9, 0x83, 0x1e, 0xfb, 0x11, 0x64, - 0x27, 0x9b, 0xa5, 0xbb, 0xae, 0xd0, 0xc3, 0xde, 0xde, 0xe4, 0xfd, 0xde, 0x3f, 0xef, 0xcd, 0x7b, - 0xf3, 0x70, 0x23, 0x07, 0xe9, 0x72, 0xe1, 0x49, 0x76, 0x00, 0x11, 0xf5, 0x98, 0x88, 0x15, 0x65, - 0xca, 0x13, 0xfe, 0x6b, 0x60, 0xca, 0x4d, 0x52, 0xa1, 0x84, 0x75, 0xb3, 0x64, 0xdc, 0x92, 0x71, - 0xfb, 0xcc, 0xa2, 0x13, 0x70, 0x75, 0x90, 0xf9, 0x2e, 0x13, 0x91, 0x17, 0x88, 0x40, 0x78, 0x9a, - 0xf6, 0xb3, 0x8e, 0x3e, 0xe9, 0x83, 0xb6, 0x4a, 0x95, 0xc5, 0xfb, 0xe3, 0xff, 0xa4, 0x8e, 0x12, - 0x90, 0x7d, 0xe4, 0xf6, 0x30, 0x22, 0x12, 0xc5, 0x45, 0x5c, 0x39, 0x6f, 0x0d, 0x3b, 0x2f, 0xc7, - 0x8d, 0x14, 0x91, 0x83, 0x84, 0x38, 0x1f, 0x0e, 0x6f, 0xfc, 0x9c, 0xc6, 0xb5, 0x17, 0xba, 0x2a, - 0xeb, 0x31, 0x9e, 0x8d, 0x40, 0xd1, 0x36, 0x55, 0xd4, 0x46, 0x75, 0xb4, 0x34, 0xb7, 0x72, 0xd7, - 0x1d, 0x2e, 0xb1, 0x04, 0x77, 0x41, 0xd1, 0x97, 0x47, 0x09, 0xb4, 0x06, 0xb8, 0xb5, 0x83, 0xaf, - 0xc9, 0x23, 0xa9, 0x20, 0xda, 0x1f, 0x28, 0x4c, 0x69, 0x85, 0x07, 0x23, 0x0a, 0x7b, 0x9a, 0x1a, - 0xd1, 0x59, 0x28, 0x63, 0x77, 0x2b, 0xb5, 0x55, 0x3c, 0x2d, 0x13, 0x60, 0xb6, 0xa9, 0x25, 0xee, - 0xb9, 0x63, 0xef, 0xd9, 0xdd, 0x4b, 0x80, 0xe9, 0x70, 0x0d, 0xaf, 0x7d, 0x32, 0xbf, 0x1f, 0xdb, - 0x53, 0x07, 0xe8, 0xf4, 0xd8, 0xfe, 0x60, 0xe2, 0x26, 0xae, 0x6d, 0xa6, 0x40, 0x15, 0x58, 0x4f, - 0x3b, 0x8f, 0x0e, 0x99, 0xc3, 0x44, 0x2c, 0x45, 0x08, 0x8e, 0x4f, 0x25, 0x38, 0x99, 0x84, 0x74, - 0xb9, 0xae, 0xbf, 0xf7, 0xce, 0x95, 0xc9, 0xc3, 0x90, 0xc7, 0xc1, 0x72, 0x3d, 0x07, 0xe9, 0x70, - 0xe1, 0x64, 0x34, 0x72, 0xde, 0xa6, 0x5c, 0x01, 0xde, 0xc6, 0xe6, 0x16, 0x28, 0x6b, 0xf3, 0x5f, - 0xa5, 0x48, 0xc4, 0x5c, 0x89, 0x2b, 0x8a, 0xa5, 0x40, 0xdb, 0xb8, 0x89, 0xa7, 0x77, 0xb8, 0x9c, - 0x90, 0xd8, 0x0e, 0x9e, 0x69, 0x41, 0x12, 0x52, 0x36, 0x91, 0x32, 0x9b, 0xb8, 0xf6, 0x0c, 0x42, - 0x98, 0xc8, 0x9d, 0x35, 0xb6, 0xf1, 0x6c, 0xd5, 0x20, 0x6b, 0x1d, 0xcf, 0x04, 0x6c, 0x5f, 0xb7, - 0xb4, 0x9c, 0x8a, 0x87, 0xff, 0x69, 0xe9, 0x56, 0x28, 0x7c, 0x1a, 0x0e, 0x1a, 0x5b, 0x0b, 0x58, - 0xcf, 0x6e, 0xfc, 0x46, 0x78, 0x7e, 0x4f, 0x51, 0x95, 0xc9, 0x2b, 0x4f, 0x6a, 0x89, 0x8f, 0x99, - 0xd4, 0xe7, 0x78, 0xae, 0x7c, 0xc4, 0xfb, 0x29, 0x74, 0xa4, 0x3d, 0x55, 0x37, 0x97, 0xe6, 0x56, - 0xee, 0x8c, 0x9d, 0xf3, 0x16, 0x74, 0x7a, 0xc1, 0x1b, 0xf8, 0xeb, 0xbb, 0x99, 0x7e, 0x86, 0x2d, - 0x2c, 0x2a, 0x97, 0xb4, 0x9e, 0x60, 0xcc, 0x44, 0xdc, 0xe6, 0xfa, 0x39, 0xd9, 0xe6, 0x58, 0xa5, - 0xcd, 0x0a, 0xd0, 0x69, 0x5c, 0xe2, 0xd7, 0x6e, 0x9c, 0xae, 0x5f, 0xc7, 0x0b, 0x78, 0xbe, 0xca, - 0xcc, 0xcd, 0x78, 0x7b, 0xe3, 0x23, 0x3a, 0x39, 0x27, 0xc6, 0xd9, 0x39, 0x31, 0x2e, 0xce, 0x09, - 0x7a, 0x5f, 0x10, 0xf4, 0xa5, 0x20, 0xe8, 0x47, 0x41, 0xd0, 0x49, 0x41, 0xd0, 0x59, 0x41, 0xd0, - 0xaf, 0x82, 0xa0, 0x3f, 0x05, 0x31, 0x2e, 0x0a, 0x82, 0x3e, 0x77, 0x89, 0xf1, 0xad, 0x4b, 0xd0, - 0x49, 0x97, 0x18, 0x67, 0x5d, 0x62, 0xbc, 0x6a, 0x06, 0x22, 0x79, 0x13, 0xb8, 0xb9, 0x08, 0x15, - 0xa4, 0x29, 0x75, 0x33, 0xe9, 0x69, 0xa3, 0x23, 0xd2, 0xc8, 0x49, 0x52, 0x91, 0xf3, 0x36, 0xa4, - 0x4e, 0xe5, 0xf6, 0x12, 0x3f, 0x10, 0x1e, 0x1c, 0xaa, 0xfe, 0x7e, 0x18, 0xde, 0x40, 0x7e, 0x4d, - 0x2f, 0x88, 0xd5, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x42, 0x79, 0x71, 0xa3, 0x0b, 0x05, 0x00, - 0x00, + // 601 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0xb1, 0x6e, 0xd4, 0x4c, + 0x10, 0xc7, 0x6f, 0x73, 0xf7, 0x5d, 0xa2, 0x4d, 0x94, 0x0f, 0x19, 0x21, 0x1d, 0x01, 0x96, 0xe3, + 0x10, 0x52, 0x8a, 0xd8, 0x96, 0x12, 0x51, 0x10, 0xa1, 0x14, 0x09, 0x52, 0x04, 0x24, 0x42, 0xba, + 0x50, 0xa5, 0x39, 0xad, 0xd7, 0x63, 0x67, 0xc1, 0xf6, 0x5a, 0xde, 0xb5, 0x49, 0x0a, 0x24, 0x0a, + 0x1a, 0x2a, 0x78, 0x0c, 0xc4, 0x53, 0x10, 0x2a, 0xca, 0x28, 0xd5, 0x95, 0xc4, 0x57, 0x40, 0x99, + 0x47, 0x40, 0x59, 0x9f, 0xa3, 0xf8, 0x30, 0x82, 0x26, 0x74, 0xb3, 0x9e, 0xdf, 0xfc, 0x67, 0x67, + 0x3d, 0x33, 0xb8, 0x97, 0x81, 0xb4, 0xb8, 0xb0, 0x25, 0xdb, 0x83, 0x90, 0xda, 0x4c, 0x44, 0x8a, + 0x32, 0x65, 0x0b, 0xe7, 0x05, 0x30, 0x65, 0xc5, 0x89, 0x50, 0xc2, 0xb8, 0x56, 0x30, 0x56, 0xc1, + 0x58, 0x63, 0x66, 0xc1, 0xf4, 0xb9, 0xda, 0x4b, 0x1d, 0x8b, 0x89, 0xd0, 0xf6, 0x85, 0x2f, 0x6c, + 0x4d, 0x3b, 0xa9, 0xa7, 0x4f, 0xfa, 0xa0, 0xad, 0x42, 0x65, 0xe1, 0x4e, 0x7d, 0x26, 0x75, 0x10, + 0x83, 0x1c, 0x23, 0x37, 0xaa, 0x88, 0x88, 0x15, 0x17, 0x51, 0xe9, 0xbc, 0x5e, 0x75, 0x5e, 0x8c, + 0x9b, 0x28, 0x22, 0x03, 0x09, 0x51, 0x56, 0x0d, 0xef, 0x0d, 0xff, 0xc3, 0xed, 0x67, 0xba, 0x2a, + 0xe3, 0x01, 0x9e, 0x09, 0x41, 0x51, 0x97, 0x2a, 0xda, 0x41, 0x5d, 0xb4, 0x38, 0xbb, 0x7c, 0xcb, + 0xaa, 0x96, 0x58, 0x80, 0xdb, 0xa0, 0xe8, 0xf3, 0x83, 0x18, 0xfa, 0xe7, 0xb8, 0xb1, 0x85, 0xff, + 0x97, 0x07, 0x52, 0x41, 0x38, 0x38, 0x57, 0x98, 0xd2, 0x0a, 0x77, 0x27, 0x14, 0x76, 0x34, 0x35, + 0xa1, 0x33, 0x5f, 0xc4, 0x6e, 0x97, 0x6a, 0x2b, 0xb8, 0x25, 0x63, 0x60, 0x9d, 0xa6, 0x96, 0xb8, + 0x6d, 0xd5, 0xbe, 0xb3, 0xb5, 0x13, 0x03, 0xd3, 0xe1, 0x1a, 0x5e, 0x7d, 0xdf, 0xfa, 0x72, 0xd8, + 0x99, 0xda, 0x43, 0xc7, 0x87, 0x9d, 0xb7, 0x2d, 0xec, 0xe2, 0xf6, 0x46, 0x02, 0x54, 0x81, 0xb1, + 0xeb, 0xdd, 0xdf, 0x67, 0x26, 0x13, 0x91, 0x14, 0x01, 0x98, 0x0e, 0x95, 0x60, 0xa6, 0x12, 0x92, + 0xa5, 0xee, 0xe4, 0x77, 0xce, 0x2e, 0x3a, 0xce, 0xc0, 0xd2, 0xe4, 0x41, 0xc0, 0x23, 0x7f, 0xa9, + 0x9b, 0x81, 0x34, 0xb9, 0x30, 0x53, 0x1a, 0x9a, 0xaf, 0x12, 0xae, 0x00, 0x7b, 0xb8, 0xb9, 0x09, + 0xca, 0x18, 0xfc, 0x9a, 0x22, 0x14, 0x11, 0x57, 0xa2, 0x3e, 0x4b, 0xd5, 0xf7, 0x87, 0x44, 0x09, + 0x50, 0x17, 0xfb, 0xb8, 0xb5, 0xc5, 0xe5, 0x3f, 0x48, 0x04, 0x78, 0xba, 0x0f, 0x71, 0x40, 0xd9, + 0xe5, 0xbe, 0x9b, 0x8b, 0xdb, 0x8f, 0x20, 0x80, 0xcb, 0xfd, 0x3b, 0xbd, 0x27, 0x78, 0xa6, 0xec, + 0x11, 0x63, 0x0d, 0x4f, 0xfb, 0x6c, 0xa0, 0xbb, 0xaa, 0x68, 0xcc, 0x7b, 0xbf, 0xe9, 0xaa, 0xcd, + 0x40, 0x38, 0x34, 0x38, 0xef, 0xad, 0xb6, 0xcf, 0xce, 0xec, 0xde, 0x77, 0x84, 0xe7, 0x76, 0x14, + 0x55, 0xa9, 0xfc, 0xeb, 0x61, 0x29, 0xf0, 0x9a, 0x61, 0x79, 0x8c, 0x67, 0x8b, 0x3d, 0x32, 0x48, + 0xc0, 0x93, 0x9d, 0xa9, 0x6e, 0x73, 0x71, 0x76, 0xf9, 0x66, 0xed, 0xa8, 0xf5, 0xc1, 0x3b, 0x0b, + 0x5e, 0xc7, 0x9f, 0x5e, 0x4f, 0x8f, 0x6f, 0xd8, 0xc7, 0xa2, 0x74, 0x49, 0xe3, 0x21, 0xc6, 0x4c, + 0x44, 0x2e, 0xd7, 0x13, 0xdd, 0x69, 0xd6, 0x2a, 0x6d, 0x94, 0x80, 0xbe, 0xc6, 0x05, 0x7e, 0xf5, + 0xea, 0xf1, 0xda, 0x15, 0x3c, 0x8f, 0xe7, 0xca, 0x9b, 0x59, 0x29, 0x77, 0xd7, 0xdf, 0xa1, 0xa3, + 0x13, 0xd2, 0x18, 0x9e, 0x90, 0xc6, 0xe9, 0x09, 0x41, 0x6f, 0x72, 0x82, 0x3e, 0xe6, 0x04, 0x7d, + 0xcd, 0x09, 0x3a, 0xca, 0x09, 0x1a, 0xe6, 0x04, 0x7d, 0xcb, 0x09, 0xfa, 0x91, 0x93, 0xc6, 0x69, + 0x4e, 0xd0, 0x87, 0x11, 0x69, 0x7c, 0x1e, 0x11, 0x74, 0x34, 0x22, 0x8d, 0xe1, 0x88, 0x34, 0x76, + 0x9f, 0xfa, 0x22, 0x7e, 0xe9, 0x5b, 0x99, 0x08, 0x14, 0x24, 0x09, 0xb5, 0x52, 0x69, 0x6b, 0xc3, + 0x13, 0x49, 0x68, 0xc6, 0x89, 0xc8, 0xb8, 0x0b, 0x89, 0x59, 0xba, 0xed, 0xd8, 0xf1, 0x85, 0x0d, + 0xfb, 0x6a, 0xbc, 0xa2, 0xaa, 0x4b, 0xd0, 0x69, 0xeb, 0x1d, 0xb5, 0xf2, 0x33, 0x00, 0x00, 0xff, + 0xff, 0x38, 0xb4, 0xe0, 0xd7, 0x8e, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/contact/public_crudapi.pb.go b/pbgo/extschema/schema/contact/public_crudapi.pb.go index c1cb80037..7c780e3dc 100644 --- a/pbgo/extschema/schema/contact/public_crudapi.pb.go +++ b/pbgo/extschema/schema/contact/public_crudapi.pb.go @@ -1061,108 +1061,108 @@ func init() { } var fileDescriptor_fe845b45e1b8eee7 = []byte{ - // 1606 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x13, 0x47, - 0x14, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x30, 0x53, 0x08, 0x8e, 0x9b, 0xae, 0xcc, 0xf2, 0x95, - 0x46, 0x78, 0x1d, 0x05, 0x21, 0x41, 0x54, 0x52, 0x9c, 0x64, 0xe3, 0xe6, 0x03, 0x82, 0xd6, 0x0e, - 0xaa, 0xb8, 0xac, 0xd6, 0xeb, 0xb1, 0xd9, 0x62, 0xef, 0x6e, 0x77, 0xc7, 0x0e, 0x11, 0x4a, 0x5b, - 0x71, 0x47, 0xaa, 0x54, 0xf5, 0x52, 0xf5, 0xd0, 0x4b, 0x55, 0xfe, 0x84, 0x4a, 0xb9, 0x20, 0xf5, - 0x00, 0x42, 0x55, 0x85, 0xda, 0x1e, 0x90, 0x7a, 0x29, 0x4e, 0x0f, 0x1c, 0x51, 0x7b, 0xea, 0xa1, - 0x52, 0xb5, 0x33, 0xbb, 0xc6, 0x76, 0x36, 0x89, 0x03, 0x39, 0x79, 0xe7, 0xbd, 0xf7, 0xfb, 0xed, - 0xfb, 0xed, 0xbc, 0xf7, 0x76, 0xbc, 0x70, 0xa2, 0x81, 0x6d, 0x41, 0x33, 0x32, 0xb6, 0x7a, 0x1b, - 0xd7, 0x94, 0x8c, 0x6a, 0xe8, 0x44, 0x51, 0x49, 0xc6, 0xac, 0x17, 0xab, 0x9a, 0x2a, 0xab, 0x56, - 0xbd, 0xa4, 0x98, 0x9a, 0x60, 0x5a, 0x06, 0x31, 0xd0, 0x71, 0x16, 0x2b, 0xb0, 0x58, 0xc1, 0x8d, - 0x4d, 0xa6, 0x2b, 0x1a, 0xb9, 0x5d, 0x2f, 0x0a, 0xaa, 0x51, 0xcb, 0x54, 0x8c, 0x8a, 0x91, 0xa1, - 0xd1, 0xc5, 0x7a, 0x99, 0xae, 0xe8, 0x82, 0x5e, 0x31, 0x96, 0xe4, 0x58, 0xc5, 0x30, 0x2a, 0x55, - 0x9c, 0x51, 0x4c, 0x2d, 0xa3, 0xe8, 0xba, 0x41, 0x14, 0xa2, 0x19, 0xba, 0xed, 0x7a, 0xdf, 0x75, - 0xbd, 0x2d, 0x0e, 0x5c, 0x33, 0xc9, 0x86, 0xeb, 0xe4, 0xfd, 0x93, 0x35, 0x8a, 0x9f, 0x60, 0x95, - 0xb8, 0x31, 0x27, 0xfd, 0x63, 0xc8, 0x86, 0x89, 0xbd, 0x7b, 0x24, 0x3b, 0x43, 0xb0, 0x65, 0x19, - 0x56, 0xeb, 0xfe, 0x9d, 0x3e, 0xc3, 0x6c, 0x4f, 0x6e, 0xb4, 0xd3, 0xd9, 0xce, 0xd9, 0x95, 0x5a, - 0x03, 0xdb, 0x58, 0x6f, 0x74, 0xc1, 0x53, 0x5d, 0x31, 0x1a, 0x5e, 0x97, 0x3b, 0x22, 0xf8, 0x1f, - 0x00, 0x1c, 0x9c, 0xb3, 0xb0, 0x42, 0xb0, 0x84, 0x3f, 0xad, 0x63, 0x9b, 0xa0, 0x0f, 0x61, 0xa4, - 0x86, 0x89, 0x52, 0x52, 0x88, 0x92, 0x00, 0x29, 0x30, 0x1e, 0x9b, 0x3a, 0x25, 0x74, 0x6e, 0xc3, - 0x2a, 0x55, 0xcf, 0x50, 0xd7, 0x30, 0x51, 0x0a, 0x1b, 0x26, 0x96, 0x5a, 0x20, 0xb4, 0x04, 0x43, - 0xb6, 0x89, 0xd5, 0x44, 0x80, 0x82, 0xcf, 0x08, 0xbe, 0x7b, 0x28, 0x30, 0x78, 0xde, 0xc4, 0xaa, - 0x03, 0x9f, 0x1d, 0xfe, 0x66, 0x73, 0xc0, 0x41, 0x09, 0x15, 0x55, 0x76, 0x7e, 0x25, 0xca, 0x31, - 0x1d, 0x7d, 0x3a, 0x13, 0x66, 0xb7, 0xe3, 0xff, 0x01, 0x70, 0xc8, 0xcb, 0xd4, 0x36, 0x0d, 0xdd, - 0xc6, 0xe8, 0x83, 0x1d, 0xa9, 0xa6, 0x7c, 0x53, 0xcd, 0x61, 0xe2, 0x93, 0xe7, 0x2a, 0x1c, 0xb6, - 0x37, 0x6c, 0x82, 0x6b, 0x72, 0x8b, 0x24, 0x48, 0x49, 0xce, 0x76, 0x91, 0xe4, 0x69, 0xd4, 0x4e, - 0xaa, 0x21, 0x06, 0xbf, 0xe6, 0x11, 0xe6, 0x3a, 0x84, 0xf3, 0xbb, 0x08, 0xcf, 0x61, 0x72, 0x00, - 0xd5, 0x7f, 0x00, 0x38, 0x24, 0x61, 0xb3, 0xaa, 0xa8, 0xad, 0x0d, 0xba, 0xba, 0x43, 0xf5, 0x69, - 0x5f, 0xd5, 0x2e, 0xcc, 0x47, 0xf9, 0x72, 0x47, 0xa2, 0x67, 0x77, 0x49, 0xd4, 0xc5, 0xef, 0x93, - 0x2c, 0xca, 0xc0, 0xb8, 0x85, 0x6d, 0xa3, 0x6e, 0xa9, 0x58, 0x6e, 0x60, 0xcb, 0xd6, 0x0c, 0x9d, - 0x3e, 0xc7, 0xe8, 0x6c, 0xe8, 0xe5, 0x16, 0x00, 0xd2, 0xb0, 0xe7, 0xbd, 0xc9, 0x9c, 0xed, 0xea, - 0x8e, 0xc2, 0xe1, 0x96, 0x38, 0xb6, 0xa7, 0xfc, 0xd7, 0x00, 0xc2, 0x1c, 0x26, 0x9e, 0xd8, 0x31, - 0x18, 0xd5, 0x95, 0x1a, 0xb6, 0x4d, 0x45, 0xc5, 0x54, 0x6d, 0x54, 0x7a, 0x6d, 0x40, 0x08, 0x86, - 0x9c, 0x05, 0x15, 0x12, 0x95, 0xe8, 0x35, 0x5a, 0x83, 0xce, 0x1d, 0x29, 0x99, 0x5c, 0x36, 0xac, - 0x9a, 0x42, 0x68, 0x3a, 0x43, 0x53, 0xe7, 0x77, 0xdf, 0x10, 0xef, 0xee, 0x0b, 0x34, 0x7e, 0xce, - 0x28, 0x61, 0x69, 0xc8, 0xea, 0xb0, 0xf1, 0xff, 0xf6, 0xc3, 0x58, 0x5b, 0x24, 0x12, 0x61, 0x4c, - 0xa5, 0xd5, 0x48, 0x6f, 0xe2, 0x3e, 0xca, 0xd3, 0x7b, 0x16, 0xbb, 0xab, 0x49, 0x82, 0x0c, 0xe8, - 0x10, 0xa3, 0x8f, 0xe0, 0x80, 0xc5, 0x9e, 0x00, 0xe3, 0x09, 0xee, 0xd9, 0x34, 0x9d, 0x95, 0x20, - 0xc5, 0x5c, 0x28, 0x65, 0xf2, 0xdb, 0x87, 0xd0, 0x1e, 0xfb, 0xd0, 0xd1, 0x3d, 0xfd, 0x87, 0xd1, - 0x3d, 0x47, 0x0e, 0xa5, 0x7b, 0xc2, 0x6f, 0xd9, 0x3d, 0x68, 0x16, 0x86, 0x6d, 0xa2, 0x90, 0xba, - 0x9d, 0xf8, 0xee, 0x5b, 0x90, 0x0a, 0xfa, 0x0c, 0x30, 0x8f, 0x2c, 0x4f, 0xc3, 0x58, 0x6a, 0xb3, - 0xc1, 0x47, 0x9b, 0x40, 0x72, 0x91, 0x68, 0x11, 0x1e, 0xb5, 0x70, 0x19, 0x5b, 0x96, 0xa6, 0x57, - 0x64, 0x36, 0xed, 0xed, 0x44, 0x84, 0x92, 0x8d, 0xed, 0xd2, 0x6c, 0x65, 0xaa, 0x2a, 0xde, 0x82, - 0x31, 0xbb, 0x8d, 0x6e, 0xc2, 0x44, 0x09, 0x57, 0x31, 0xc1, 0x25, 0x99, 0xf9, 0x70, 0xa9, 0xc5, - 0x18, 0xed, 0x81, 0x71, 0xc4, 0x45, 0x4b, 0x2e, 0xd8, 0xe3, 0xfd, 0x18, 0x8e, 0x96, 0x34, 0x5b, - 0x29, 0x56, 0xfd, 0x88, 0x61, 0x0f, 0xc4, 0x27, 0x3c, 0x78, 0x17, 0x73, 0x5b, 0x83, 0x2e, 0x85, - 0x22, 0x20, 0x1e, 0xe0, 0xbf, 0x07, 0x30, 0xb6, 0xa2, 0xd9, 0x3d, 0x36, 0xe5, 0x49, 0x38, 0x50, - 0x55, 0x8a, 0xb8, 0x2a, 0x97, 0xb5, 0x2a, 0xc1, 0x96, 0xdb, 0x9c, 0x31, 0x6a, 0x5b, 0xa0, 0x26, - 0x74, 0x0a, 0x0e, 0x5a, 0xd8, 0x34, 0x2c, 0x22, 0x97, 0x35, 0x5c, 0x2d, 0xd9, 0x89, 0x60, 0x2a, - 0x38, 0x1e, 0x95, 0x06, 0x98, 0x71, 0x81, 0xda, 0xd0, 0x24, 0x3c, 0xe6, 0x06, 0xb1, 0x4d, 0xf1, - 0x62, 0x43, 0x34, 0x16, 0x31, 0x1f, 0xdb, 0x42, 0x86, 0xe0, 0x1f, 0x86, 0x61, 0x9c, 0xe5, 0xc9, - 0x9a, 0x74, 0x91, 0xe0, 0x1a, 0x1a, 0x81, 0x61, 0x82, 0x75, 0x45, 0x27, 0xb4, 0xb2, 0xa2, 0x92, - 0xbb, 0x7a, 0x83, 0xc9, 0x12, 0x87, 0xc1, 0xba, 0x56, 0x62, 0xc3, 0x4d, 0x72, 0x2e, 0x51, 0x0a, - 0xc6, 0x4a, 0xd8, 0x56, 0x2d, 0x8d, 0xbe, 0x53, 0x13, 0x31, 0xa6, 0xb4, 0xcd, 0x84, 0x92, 0x30, - 0xe2, 0x3d, 0xe6, 0xc4, 0x40, 0x0a, 0x8c, 0x47, 0xa4, 0xd6, 0x1a, 0x2d, 0xc3, 0x30, 0x7d, 0x28, - 0x4c, 0x52, 0x6c, 0xea, 0xc2, 0x2e, 0x65, 0xda, 0x2d, 0x49, 0x58, 0xa1, 0x28, 0x51, 0x27, 0xd6, - 0x86, 0xe4, 0x52, 0xa0, 0x5b, 0x30, 0xd6, 0x76, 0xb6, 0x71, 0x0b, 0xe0, 0x52, 0xaf, 0x8c, 0xd9, - 0xd7, 0x50, 0x46, 0xdb, 0x4e, 0x86, 0x2e, 0x43, 0x68, 0xac, 0xeb, 0xd8, 0x92, 0x9d, 0x03, 0x44, - 0x22, 0x4a, 0x1b, 0x34, 0xd9, 0x45, 0x7d, 0x53, 0xc3, 0xeb, 0x5e, 0x65, 0x45, 0x69, 0xb4, 0x63, - 0xe9, 0x18, 0x32, 0x83, 0x87, 0x31, 0x64, 0x86, 0xde, 0x6a, 0xc8, 0x5c, 0x81, 0x91, 0x0a, 0x26, - 0x74, 0x5a, 0xb8, 0xe3, 0xaa, 0x87, 0x41, 0x23, 0x1d, 0xa9, 0xb0, 0x05, 0xca, 0x41, 0xe8, 0xd6, - 0xa2, 0x8d, 0x89, 0x3b, 0x0f, 0x7a, 0x1f, 0x2e, 0x51, 0x86, 0xcd, 0x63, 0x92, 0xbc, 0x0c, 0x63, - 0x6d, 0x9b, 0xe8, 0x54, 0xd6, 0x1d, 0xbc, 0xe1, 0x56, 0xa1, 0x73, 0x89, 0x8e, 0xc1, 0xfe, 0x86, - 0x52, 0xad, 0x7b, 0x05, 0xc8, 0x16, 0xd3, 0x81, 0x4b, 0x20, 0x39, 0x03, 0xe3, 0xdd, 0xbb, 0x75, - 0x10, 0xfc, 0x52, 0x28, 0xd2, 0x1f, 0x0f, 0xf3, 0x9f, 0xc3, 0x81, 0xf6, 0x22, 0x40, 0x57, 0x60, - 0xbf, 0x46, 0x70, 0xcd, 0x4e, 0xb0, 0x89, 0x79, 0xae, 0xc7, 0xc2, 0x91, 0x18, 0x0a, 0x4d, 0xc2, - 0x30, 0x3b, 0xd4, 0x26, 0x02, 0x14, 0x9f, 0xe8, 0xc2, 0x8b, 0x8e, 0x93, 0x3e, 0x4b, 0x37, 0x8e, - 0xbf, 0x03, 0x07, 0xe7, 0xe9, 0x60, 0x7b, 0xf3, 0x37, 0xfd, 0x38, 0x8c, 0x97, 0x15, 0xad, 0x2a, - 0x6b, 0xe5, 0xd6, 0x00, 0xa4, 0xcd, 0x19, 0x91, 0x86, 0x1c, 0xfb, 0x62, 0xd9, 0x1b, 0x6c, 0x13, - 0x7f, 0x03, 0x78, 0xdc, 0xf7, 0x35, 0x8f, 0x92, 0x70, 0x24, 0x27, 0x16, 0x64, 0x29, 0x7f, 0x43, - 0x5e, 0x58, 0x95, 0xae, 0x65, 0x0b, 0xf2, 0xbc, 0xb8, 0x90, 0x5d, 0x5b, 0x29, 0xc4, 0xfb, 0xd0, - 0x7b, 0x70, 0xb4, 0xcb, 0xb7, 0xb0, 0x2a, 0xc9, 0x73, 0x92, 0x98, 0x2d, 0x88, 0x71, 0x80, 0x38, - 0x98, 0xf4, 0x71, 0x4b, 0xe2, 0x8d, 0x95, 0xec, 0x9c, 0x18, 0x0f, 0xa0, 0x51, 0x78, 0xbc, 0xcb, - 0x9f, 0x2f, 0x64, 0x0b, 0x6b, 0xf9, 0x78, 0x10, 0x9d, 0x80, 0xef, 0x74, 0xb9, 0x24, 0x31, 0x3b, - 0x1f, 0x0f, 0xa1, 0xd3, 0x30, 0xb5, 0xc3, 0xb1, 0x20, 0x4a, 0xd2, 0xe2, 0xf5, 0x9c, 0xbc, 0x3a, - 0xbb, 0x24, 0xce, 0x15, 0xf2, 0xf1, 0x7e, 0x9f, 0xa8, 0x59, 0x69, 0x75, 0x59, 0xbc, 0xce, 0x82, - 0xc5, 0xeb, 0x73, 0x62, 0x3e, 0x1e, 0x9e, 0xfa, 0x2f, 0x02, 0x83, 0xd9, 0x1b, 0x8b, 0xe8, 0x77, - 0x00, 0xc3, 0xec, 0x00, 0x82, 0x7a, 0x3a, 0x9f, 0x24, 0xcf, 0xec, 0x13, 0xe5, 0x9e, 0xd4, 0x36, - 0x9b, 0x8f, 0x13, 0x33, 0xe5, 0x8b, 0x77, 0xd5, 0xb4, 0x6a, 0xe8, 0xb6, 0x51, 0xc5, 0xe9, 0xa2, - 0x62, 0xe3, 0x74, 0xdd, 0xc6, 0xd6, 0x79, 0x6a, 0x76, 0x96, 0xee, 0x95, 0x56, 0xad, 0x6a, 0x7a, - 0xe5, 0x7c, 0x03, 0xdb, 0x69, 0xcd, 0x48, 0xd7, 0x95, 0x5a, 0x7a, 0xdd, 0xd2, 0x08, 0xbe, 0xff, - 0xdb, 0x5f, 0x5f, 0x05, 0x2e, 0xf2, 0x93, 0xee, 0xbf, 0xbf, 0x4c, 0x6b, 0xbf, 0xed, 0xcc, 0x3d, - 0xaf, 0xe3, 0x85, 0x96, 0x71, 0xd3, 0xfb, 0x6f, 0x65, 0x4f, 0x83, 0x09, 0xf4, 0x33, 0x80, 0xc1, - 0x1c, 0x26, 0xe8, 0xe4, 0x5e, 0xc7, 0x3a, 0x26, 0x88, 0xdf, 0xff, 0xe4, 0xc7, 0x7f, 0xf6, 0xe4, - 0xc7, 0x00, 0x68, 0x3e, 0x4e, 0x5c, 0xdd, 0xa9, 0xa8, 0x66, 0xe8, 0x1a, 0x31, 0x7a, 0x11, 0x65, - 0x61, 0xa5, 0x44, 0x35, 0x4d, 0x22, 0xc1, 0x4f, 0x93, 0x8f, 0x14, 0x66, 0xdc, 0x44, 0x4f, 0x00, - 0x0c, 0x39, 0xdd, 0x85, 0xf8, 0x3d, 0x5b, 0x8f, 0x09, 0x3a, 0xd5, 0x43, 0x7b, 0xf2, 0xeb, 0x87, - 0xaa, 0xe8, 0x7d, 0x74, 0xae, 0x47, 0x45, 0xe8, 0x25, 0x80, 0x47, 0xdc, 0x93, 0x2a, 0xea, 0xed, - 0x24, 0x9b, 0x3c, 0xbb, 0x5f, 0x98, 0xab, 0xe9, 0x01, 0x38, 0xa4, 0xa2, 0x13, 0x93, 0x57, 0x0f, - 0x5a, 0x74, 0x5d, 0xde, 0x4d, 0xa7, 0x08, 0x7f, 0x02, 0x30, 0xcc, 0xc6, 0xd8, 0xae, 0xbd, 0xd5, - 0x31, 0xe5, 0x92, 0x23, 0x02, 0xfb, 0xdc, 0x20, 0x78, 0x9f, 0x1b, 0x04, 0xb1, 0x66, 0x92, 0x0d, - 0xfe, 0xde, 0x21, 0xe9, 0xba, 0x30, 0x71, 0xc0, 0xc2, 0x9b, 0x06, 0x13, 0xc9, 0xc2, 0xa3, 0x2d, - 0x10, 0xf8, 0x75, 0x0b, 0x8c, 0xf9, 0x2b, 0x60, 0xef, 0xb0, 0xe7, 0x5b, 0x00, 0x34, 0xb7, 0x00, - 0xbf, 0xff, 0xdb, 0xee, 0xfe, 0x2f, 0x89, 0xc0, 0x6d, 0x30, 0xfb, 0x00, 0x3c, 0x9d, 0xe9, 0x9f, - 0x93, 0xd6, 0xe6, 0x57, 0x9e, 0xbd, 0xe0, 0xfa, 0x9e, 0xbf, 0xe0, 0xfa, 0x5e, 0xbd, 0xe0, 0xc0, - 0x17, 0x4d, 0x0e, 0x3c, 0x6c, 0x72, 0xe0, 0x49, 0x93, 0x03, 0xcf, 0x9a, 0x1c, 0xf8, 0xb3, 0xc9, - 0x81, 0x97, 0x4d, 0xae, 0xef, 0x55, 0x93, 0x03, 0x5f, 0x6e, 0x73, 0x7d, 0x8f, 0xb6, 0x39, 0xf0, - 0x6c, 0x9b, 0xeb, 0x7b, 0xbe, 0xcd, 0xf5, 0xdd, 0x5a, 0xae, 0x18, 0xe6, 0x9d, 0x8a, 0xd0, 0x30, - 0x9c, 0x53, 0xa3, 0xa5, 0x08, 0x75, 0x3b, 0x43, 0x2f, 0x9c, 0xbf, 0x4a, 0x69, 0xd3, 0x32, 0x1a, - 0x5a, 0x09, 0x5b, 0x69, 0xcf, 0x9d, 0x31, 0x8b, 0x15, 0x23, 0x83, 0xef, 0x12, 0xf7, 0x73, 0x47, - 0xe7, 0x07, 0x99, 0x62, 0x98, 0x3e, 0xf2, 0x0b, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x6e, 0xce, - 0xfc, 0x3c, 0x81, 0x12, 0x00, 0x00, + // 1616 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4b, 0x6f, 0xdb, 0xc6, + 0x16, 0xf6, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x50, 0xe6, 0x26, 0x8e, 0xac, 0xeb, 0x4b, 0x28, 0xcc, + 0xcb, 0xd7, 0x88, 0x28, 0xc3, 0x41, 0x80, 0xc4, 0xb8, 0xc9, 0x8d, 0x6c, 0xd3, 0xaa, 0x1f, 0x89, + 0x03, 0x4a, 0x36, 0x8a, 0x74, 0x41, 0x50, 0xd4, 0x48, 0x61, 0x23, 0x91, 0x2c, 0x39, 0x92, 0x63, + 0x14, 0x46, 0x83, 0xec, 0x0b, 0x14, 0x0d, 0xba, 0x68, 0xd1, 0x45, 0x37, 0x41, 0xf3, 0x13, 0x0a, + 0x78, 0x93, 0x5d, 0x83, 0x2c, 0x8a, 0xa0, 0xdd, 0x04, 0x68, 0x17, 0x8d, 0x9c, 0x45, 0x36, 0x05, + 0x82, 0x76, 0xd5, 0x55, 0x0b, 0xce, 0x90, 0x8a, 0x24, 0xd3, 0xb6, 0x9c, 0x47, 0x57, 0xe2, 0x9c, + 0x73, 0xbe, 0x8f, 0xe7, 0xe3, 0x9c, 0x73, 0x38, 0x22, 0x9c, 0x68, 0x60, 0x5b, 0xd0, 0x8c, 0x8c, + 0xad, 0xde, 0xc4, 0x35, 0x25, 0xa3, 0x1a, 0x3a, 0x51, 0x54, 0x92, 0x31, 0xeb, 0xc5, 0xaa, 0xa6, + 0xca, 0xaa, 0x55, 0x2f, 0x29, 0xa6, 0x26, 0x98, 0x96, 0x41, 0x0c, 0x74, 0x94, 0xc5, 0x0a, 0x2c, + 0x56, 0x70, 0x63, 0x93, 0xe9, 0x8a, 0x46, 0x6e, 0xd6, 0x8b, 0x82, 0x6a, 0xd4, 0x32, 0x15, 0xa3, + 0x62, 0x64, 0x68, 0x74, 0xb1, 0x5e, 0xa6, 0x2b, 0xba, 0xa0, 0x57, 0x8c, 0x25, 0x39, 0x56, 0x31, + 0x8c, 0x4a, 0x15, 0x67, 0x14, 0x53, 0xcb, 0x28, 0xba, 0x6e, 0x10, 0x85, 0x68, 0x86, 0x6e, 0xbb, + 0xde, 0x7f, 0xbb, 0xde, 0x16, 0x07, 0xae, 0x99, 0x64, 0xc3, 0x75, 0xf2, 0xfe, 0xc9, 0x1a, 0xc5, + 0x0f, 0xb1, 0x4a, 0xdc, 0x98, 0xe3, 0xfe, 0x31, 0x64, 0xc3, 0xc4, 0xde, 0x3d, 0x92, 0x9d, 0x21, + 0xd8, 0xb2, 0x0c, 0xab, 0x75, 0xff, 0x4e, 0x9f, 0x61, 0xb6, 0x27, 0x37, 0xda, 0xe9, 0x6c, 0xe7, + 0xec, 0x4a, 0xad, 0x81, 0x6d, 0xac, 0x37, 0xba, 0xe0, 0xa9, 0xae, 0x18, 0x0d, 0xaf, 0xcb, 0x1d, + 0x11, 0xfc, 0xb7, 0x00, 0x0e, 0xce, 0x5a, 0x58, 0x21, 0x58, 0xc2, 0x1f, 0xd5, 0xb1, 0x4d, 0xd0, + 0xff, 0x61, 0xa4, 0x86, 0x89, 0x52, 0x52, 0x88, 0x92, 0x00, 0x29, 0x30, 0x1e, 0x9b, 0x3a, 0x21, + 0x74, 0x6e, 0xc3, 0x0a, 0x55, 0xcf, 0x50, 0x57, 0x31, 0x51, 0x0a, 0x1b, 0x26, 0x96, 0x5a, 0x20, + 0xb4, 0x08, 0x43, 0xb6, 0x89, 0xd5, 0x44, 0x80, 0x82, 0x4f, 0x09, 0xbe, 0x7b, 0x28, 0x30, 0x78, + 0xde, 0xc4, 0xaa, 0x03, 0x9f, 0x19, 0xfe, 0x6a, 0x73, 0xc0, 0x41, 0x09, 0x15, 0x55, 0x76, 0x7e, + 0x25, 0xca, 0x31, 0x1d, 0x7d, 0x7c, 0x39, 0xcc, 0x6e, 0xc7, 0xff, 0x01, 0xe0, 0x90, 0x97, 0xa9, + 0x6d, 0x1a, 0xba, 0x8d, 0xd1, 0xff, 0x76, 0xa4, 0x9a, 0xf2, 0x4d, 0x35, 0x87, 0x89, 0x4f, 0x9e, + 0x2b, 0x70, 0xd8, 0xde, 0xb0, 0x09, 0xae, 0xc9, 0x2d, 0x92, 0x20, 0x25, 0x39, 0xdd, 0x45, 0x92, + 0xa7, 0x51, 0x3b, 0xa9, 0x86, 0x18, 0xfc, 0xaa, 0x47, 0x98, 0xeb, 0x10, 0xce, 0xef, 0x22, 0x3c, + 0x87, 0xc9, 0x01, 0x54, 0xff, 0x0c, 0xe0, 0x90, 0x84, 0xcd, 0xaa, 0xa2, 0xb6, 0x36, 0xe8, 0xca, + 0x0e, 0xd5, 0x27, 0x7d, 0x55, 0xbb, 0x30, 0x1f, 0xe5, 0x4b, 0x1d, 0x89, 0x9e, 0xde, 0x25, 0x51, + 0x17, 0xbf, 0x4f, 0xb2, 0x28, 0x03, 0xe3, 0x16, 0xb6, 0x8d, 0xba, 0xa5, 0x62, 0xb9, 0x81, 0x2d, + 0x5b, 0x33, 0x74, 0xfa, 0x1c, 0xa3, 0x33, 0xa1, 0x17, 0x5b, 0x00, 0x48, 0xc3, 0x9e, 0x77, 0x8d, + 0x39, 0xdb, 0xd5, 0x1d, 0x86, 0xc3, 0x2d, 0x71, 0x6c, 0x4f, 0xf9, 0x2f, 0x00, 0x84, 0x39, 0x4c, + 0x3c, 0xb1, 0x63, 0x30, 0xaa, 0x2b, 0x35, 0x6c, 0x9b, 0x8a, 0x8a, 0xa9, 0xda, 0xa8, 0xf4, 0xca, + 0x80, 0x10, 0x0c, 0x39, 0x0b, 0x2a, 0x24, 0x2a, 0xd1, 0x6b, 0xb4, 0x0a, 0x9d, 0x3b, 0x52, 0x32, + 0xb9, 0x6c, 0x58, 0x35, 0x85, 0xd0, 0x74, 0x86, 0xa6, 0xce, 0xee, 0xbe, 0x21, 0xde, 0xdd, 0xe7, + 0x69, 0xfc, 0xac, 0x51, 0xc2, 0xd2, 0x90, 0xd5, 0x61, 0xe3, 0xff, 0xec, 0x87, 0xb1, 0xb6, 0x48, + 0x24, 0xc2, 0x98, 0x4a, 0xab, 0x91, 0xde, 0xc4, 0x7d, 0x94, 0x27, 0xf7, 0x2c, 0x76, 0x57, 0x93, + 0x04, 0x19, 0xd0, 0x21, 0x46, 0xef, 0xc1, 0x01, 0x8b, 0x3d, 0x01, 0xc6, 0x13, 0xdc, 0xb3, 0x69, + 0x3a, 0x2b, 0x41, 0x8a, 0xb9, 0x50, 0xca, 0xe4, 0xb7, 0x0f, 0xa1, 0x3d, 0xf6, 0xa1, 0xa3, 0x7b, + 0xfa, 0xdf, 0x46, 0xf7, 0x1c, 0x7a, 0x2b, 0xdd, 0x13, 0x7e, 0xc3, 0xee, 0x41, 0x33, 0x30, 0x6c, + 0x13, 0x85, 0xd4, 0xed, 0xc4, 0x37, 0x5f, 0x83, 0x54, 0xd0, 0x67, 0x80, 0x79, 0x64, 0x79, 0x1a, + 0xc6, 0x52, 0x9b, 0x09, 0x3e, 0xdc, 0x04, 0x92, 0x8b, 0x44, 0x0b, 0xf0, 0xb0, 0x85, 0xcb, 0xd8, + 0xb2, 0x34, 0xbd, 0x22, 0xb3, 0x69, 0x6f, 0x27, 0x22, 0x94, 0x6c, 0x6c, 0x97, 0x66, 0x2b, 0x53, + 0x55, 0xf1, 0x16, 0x8c, 0xd9, 0x6d, 0xb4, 0x06, 0x13, 0x25, 0x5c, 0xc5, 0x04, 0x97, 0x64, 0xe6, + 0xc3, 0xa5, 0x16, 0x63, 0xb4, 0x07, 0xc6, 0x11, 0x17, 0x2d, 0xb9, 0x60, 0x8f, 0xf7, 0x7d, 0x38, + 0x5a, 0xd2, 0x6c, 0xa5, 0x58, 0xf5, 0x23, 0x86, 0x3d, 0x10, 0x1f, 0xf3, 0xe0, 0x5d, 0xcc, 0x6d, + 0x0d, 0xba, 0x18, 0x8a, 0x80, 0x78, 0x80, 0xbf, 0x0f, 0x60, 0x6c, 0x59, 0xb3, 0x7b, 0x6c, 0xca, + 0xe3, 0x70, 0xa0, 0xaa, 0x14, 0x71, 0x55, 0x2e, 0x6b, 0x55, 0x82, 0x2d, 0xb7, 0x39, 0x63, 0xd4, + 0x36, 0x4f, 0x4d, 0xe8, 0x04, 0x1c, 0xb4, 0xb0, 0x69, 0x58, 0x44, 0x2e, 0x6b, 0xb8, 0x5a, 0xb2, + 0x13, 0xc1, 0x54, 0x70, 0x3c, 0x2a, 0x0d, 0x30, 0xe3, 0x3c, 0xb5, 0xa1, 0x49, 0x78, 0xc4, 0x0d, + 0x62, 0x9b, 0xe2, 0xc5, 0x86, 0x68, 0x2c, 0x62, 0x3e, 0xb6, 0x85, 0x0c, 0xc1, 0x3f, 0x08, 0xc3, + 0x38, 0xcb, 0x93, 0x35, 0xe9, 0x02, 0xc1, 0x35, 0x34, 0x02, 0xc3, 0x04, 0xeb, 0x8a, 0x4e, 0x68, + 0x65, 0x45, 0x25, 0x77, 0xf5, 0x1a, 0x93, 0x25, 0x0e, 0x83, 0x75, 0xad, 0xc4, 0x86, 0x9b, 0xe4, + 0x5c, 0xa2, 0x14, 0x8c, 0x95, 0xb0, 0xad, 0x5a, 0x1a, 0x7d, 0xa7, 0x26, 0x62, 0x4c, 0x69, 0x9b, + 0x09, 0x25, 0x61, 0xc4, 0x7b, 0xcc, 0x89, 0x81, 0x14, 0x18, 0x8f, 0x48, 0xad, 0x35, 0x5a, 0x82, + 0x61, 0xfa, 0x50, 0x98, 0xa4, 0xd8, 0xd4, 0xb9, 0x5d, 0xca, 0xb4, 0x5b, 0x92, 0xb0, 0x4c, 0x51, + 0xa2, 0x4e, 0xac, 0x0d, 0xc9, 0xa5, 0x40, 0x37, 0x60, 0xac, 0xed, 0x6c, 0xe3, 0x16, 0xc0, 0x85, + 0x5e, 0x19, 0xb3, 0xaf, 0xa0, 0x8c, 0xb6, 0x9d, 0x0c, 0x5d, 0x84, 0xd0, 0x58, 0xd7, 0xb1, 0x25, + 0x3b, 0x07, 0x88, 0x44, 0x94, 0x36, 0x68, 0xb2, 0x8b, 0x7a, 0x4d, 0xc3, 0xeb, 0x5e, 0x65, 0x45, + 0x69, 0xb4, 0x63, 0xe9, 0x18, 0x32, 0x83, 0x6f, 0x63, 0xc8, 0x0c, 0xbd, 0xd1, 0x90, 0xb9, 0x04, + 0x23, 0x15, 0x4c, 0xe8, 0xb4, 0x70, 0xc7, 0x55, 0x0f, 0x83, 0x46, 0x3a, 0x54, 0x61, 0x0b, 0x94, + 0x83, 0xd0, 0xad, 0x45, 0x1b, 0x13, 0x77, 0x1e, 0xf4, 0x3e, 0x5c, 0xa2, 0x0c, 0x9b, 0xc7, 0x24, + 0x79, 0x11, 0xc6, 0xda, 0x36, 0xd1, 0xa9, 0xac, 0x5b, 0x78, 0xc3, 0xad, 0x42, 0xe7, 0x12, 0x1d, + 0x81, 0xfd, 0x0d, 0xa5, 0x5a, 0xf7, 0x0a, 0x90, 0x2d, 0xa6, 0x03, 0x17, 0x40, 0xf2, 0x32, 0x8c, + 0x77, 0xef, 0xd6, 0x41, 0xf0, 0x8b, 0xa1, 0x48, 0x7f, 0x3c, 0xcc, 0x7f, 0x02, 0x07, 0xda, 0x8b, + 0x00, 0x5d, 0x82, 0xfd, 0x1a, 0xc1, 0x35, 0x3b, 0xc1, 0x26, 0xe6, 0x99, 0x1e, 0x0b, 0x47, 0x62, + 0x28, 0x34, 0x09, 0xc3, 0xec, 0x50, 0x9b, 0x08, 0x50, 0x7c, 0xa2, 0x0b, 0x2f, 0x3a, 0x4e, 0xfa, + 0x2c, 0xdd, 0x38, 0xfe, 0x16, 0x1c, 0x9c, 0xa3, 0x83, 0xed, 0xf5, 0xdf, 0xf4, 0xe3, 0x30, 0x5e, + 0x56, 0xb4, 0xaa, 0xac, 0x95, 0x5b, 0x03, 0x90, 0x36, 0x67, 0x44, 0x1a, 0x72, 0xec, 0x0b, 0x65, + 0x6f, 0xb0, 0x4d, 0xfc, 0x0e, 0xe0, 0x51, 0xdf, 0xd7, 0x3c, 0x4a, 0xc2, 0x91, 0x9c, 0x58, 0x90, + 0xa5, 0xfc, 0x75, 0x79, 0x7e, 0x45, 0xba, 0x9a, 0x2d, 0xc8, 0x73, 0xe2, 0x7c, 0x76, 0x75, 0xb9, + 0x10, 0xef, 0x43, 0xff, 0x81, 0xa3, 0x5d, 0xbe, 0xf9, 0x15, 0x49, 0x9e, 0x95, 0xc4, 0x6c, 0x41, + 0x8c, 0x03, 0xc4, 0xc1, 0xa4, 0x8f, 0x5b, 0x12, 0xaf, 0x2f, 0x67, 0x67, 0xc5, 0x78, 0x00, 0x8d, + 0xc2, 0xa3, 0x5d, 0xfe, 0x7c, 0x21, 0x5b, 0x58, 0xcd, 0xc7, 0x83, 0xe8, 0x18, 0xfc, 0x57, 0x97, + 0x4b, 0x12, 0xb3, 0x73, 0xf1, 0x10, 0x3a, 0x09, 0x53, 0x3b, 0x1c, 0xf3, 0xa2, 0x24, 0x2d, 0x5c, + 0xcb, 0xc9, 0x2b, 0x33, 0x8b, 0xe2, 0x6c, 0x21, 0x1f, 0xef, 0xf7, 0x89, 0x9a, 0x91, 0x56, 0x96, + 0xc4, 0x6b, 0x2c, 0x58, 0xbc, 0x36, 0x2b, 0xe6, 0xe3, 0xe1, 0xa9, 0xbf, 0xa2, 0x30, 0x98, 0xbd, + 0xbe, 0x80, 0x7e, 0x03, 0x30, 0xcc, 0x0e, 0x20, 0xa8, 0xa7, 0xf3, 0x49, 0xf2, 0xd4, 0x3e, 0x51, + 0xad, 0x93, 0x5a, 0xf3, 0xfb, 0xc4, 0x5a, 0xf9, 0xfc, 0x6d, 0x35, 0xad, 0x1a, 0xba, 0x6d, 0x54, + 0x71, 0xba, 0xa8, 0xd8, 0x38, 0x5d, 0xb7, 0xb1, 0x75, 0xb6, 0xdb, 0xac, 0xa9, 0x6d, 0x76, 0x27, + 0xcc, 0xbd, 0xd2, 0xaa, 0x55, 0x4d, 0xaf, 0x9c, 0x6d, 0x60, 0x3b, 0xad, 0x19, 0xe9, 0xba, 0x52, + 0x4b, 0xaf, 0x5b, 0x1a, 0xc1, 0x77, 0x7f, 0x7a, 0x7e, 0x2f, 0x70, 0x9e, 0x9f, 0x74, 0xff, 0x16, + 0x66, 0x5a, 0x85, 0x60, 0x67, 0x3e, 0xf6, 0x46, 0x81, 0xd0, 0x32, 0x6e, 0x7a, 0x7f, 0xba, 0xec, + 0x69, 0x30, 0x81, 0x5e, 0x00, 0x18, 0xcc, 0x61, 0x82, 0x8e, 0xef, 0x75, 0xde, 0x63, 0x4a, 0xf9, + 0xfd, 0x8f, 0x84, 0xfc, 0x97, 0xe0, 0xd1, 0x77, 0x01, 0x47, 0xea, 0x07, 0x3b, 0xa5, 0xd6, 0x0c, + 0x5d, 0x23, 0x86, 0xaf, 0xda, 0x0e, 0xd7, 0x9e, 0x82, 0x2d, 0xac, 0x94, 0xa8, 0xde, 0x49, 0x24, + 0xf8, 0xe9, 0xf5, 0x91, 0xc9, 0x8c, 0x9b, 0xe8, 0x39, 0x80, 0x21, 0xa7, 0x25, 0x11, 0xbf, 0x67, + 0xbf, 0x32, 0xb1, 0x27, 0x7a, 0xe8, 0x69, 0xfe, 0xf3, 0x7f, 0x4c, 0xed, 0x7f, 0xd1, 0x99, 0x1e, + 0xd5, 0xa2, 0x3b, 0x01, 0x78, 0xc8, 0x3d, 0xfa, 0xa2, 0xde, 0x8e, 0xc6, 0xc9, 0xd3, 0xfb, 0x85, + 0xb9, 0x7a, 0xef, 0xbf, 0xeb, 0x22, 0x16, 0x93, 0x57, 0x0e, 0x5a, 0xc4, 0x5d, 0xde, 0x4d, 0xa7, + 0xa8, 0x7f, 0x01, 0x30, 0xcc, 0xe6, 0xe5, 0xae, 0x4d, 0xdc, 0x31, 0x4e, 0x93, 0x23, 0x02, 0xfb, + 0xae, 0x21, 0x78, 0xdf, 0x35, 0x04, 0xb1, 0x66, 0x92, 0x0d, 0xfe, 0xde, 0xbb, 0x16, 0x7c, 0x6e, + 0xe2, 0x80, 0x55, 0x3c, 0x0d, 0x26, 0x92, 0x85, 0x87, 0x5b, 0x20, 0xf0, 0xe3, 0x16, 0x18, 0xf3, + 0x97, 0xc6, 0xde, 0xa2, 0x4f, 0xb7, 0x00, 0x68, 0x6e, 0x01, 0x7e, 0xff, 0xf7, 0xed, 0xdd, 0x1f, + 0x12, 0x81, 0x9b, 0x60, 0xe6, 0x53, 0xf0, 0xf8, 0x72, 0xff, 0xac, 0xb4, 0x3a, 0xb7, 0xfc, 0xe4, + 0x19, 0xd7, 0xf7, 0xf4, 0x19, 0xd7, 0xf7, 0xf2, 0x19, 0x07, 0xee, 0x34, 0x39, 0xf0, 0xa0, 0xc9, + 0x81, 0x47, 0x4d, 0x0e, 0x3c, 0x69, 0x72, 0xe0, 0xd7, 0x26, 0x07, 0x5e, 0x34, 0xb9, 0xbe, 0x97, + 0x4d, 0x0e, 0x7c, 0xb6, 0xcd, 0xf5, 0x3d, 0xdc, 0xe6, 0xc0, 0x93, 0x6d, 0xae, 0xef, 0xe9, 0x36, + 0xd7, 0x77, 0x63, 0xa9, 0x62, 0x98, 0xb7, 0x2a, 0x42, 0xc3, 0x70, 0xce, 0xad, 0x96, 0x22, 0xd4, + 0xed, 0x0c, 0xbd, 0x70, 0xfe, 0xac, 0xa5, 0x4d, 0xcb, 0x68, 0x68, 0x25, 0x6c, 0xa5, 0x3d, 0x77, + 0xc6, 0x2c, 0x56, 0x8c, 0x0c, 0xbe, 0x4d, 0xdc, 0x0f, 0x2e, 0x9d, 0x9f, 0x84, 0x8a, 0x61, 0xba, + 0x17, 0xe7, 0xfe, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x26, 0xf4, 0x20, 0xc9, 0x03, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/contact/public_crudapi.vesapi.go b/pbgo/extschema/schema/contact/public_crudapi.vesapi.go index 369e6e52a..093f10340 100644 --- a/pbgo/extschema/schema/contact/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/contact/public_crudapi.vesapi.go @@ -2932,10 +2932,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2992,10 +2996,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3098,10 +3106,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/container_registry/crudapi/api.vesapi.go b/pbgo/extschema/schema/container_registry/crudapi/api.vesapi.go index 18c754b9f..4ae73e8d1 100644 --- a/pbgo/extschema/schema/container_registry/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/container_registry/crudapi/api.vesapi.go @@ -3178,10 +3178,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/container_registry/object.pb.go b/pbgo/extschema/schema/container_registry/object.pb.go index e345dde42..90b196ebe 100644 --- a/pbgo/extschema/schema/container_registry/object.pb.go +++ b/pbgo/extschema/schema/container_registry/object.pb.go @@ -234,47 +234,49 @@ func init() { } var fileDescriptor_4587810e9cd9fb1d = []byte{ - // 637 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x6b, 0x13, 0x41, - 0x18, 0xc6, 0x33, 0x49, 0x49, 0xcb, 0xa4, 0xd4, 0xb2, 0x52, 0x58, 0xab, 0x0e, 0x25, 0x5e, 0x8a, - 0x74, 0x77, 0x4b, 0xc5, 0x43, 0xab, 0x54, 0x68, 0x85, 0xaa, 0xb4, 0x08, 0x69, 0xf5, 0xe0, 0x25, - 0xcc, 0xce, 0xbe, 0xd9, 0x8e, 0x4d, 0x32, 0xcb, 0xcc, 0x24, 0x6d, 0x0e, 0x82, 0xf8, 0x09, 0x04, - 0xfd, 0x10, 0x22, 0x7e, 0x08, 0xeb, 0xc9, 0x63, 0xe9, 0xa9, 0x78, 0xb2, 0x9b, 0x83, 0x1e, 0x8b, - 0x9f, 0x40, 0x76, 0x36, 0x1b, 0x9a, 0x36, 0x52, 0xc9, 0x65, 0x77, 0x86, 0xf7, 0xf7, 0x3c, 0xf3, - 0xe7, 0x99, 0x19, 0xec, 0xb4, 0x41, 0xb9, 0x5c, 0x78, 0x8a, 0xed, 0x42, 0x83, 0x7a, 0x4c, 0x34, - 0x35, 0xe5, 0x4d, 0x90, 0x55, 0x09, 0x21, 0x57, 0x5a, 0x76, 0x3c, 0xe1, 0xbf, 0x06, 0xa6, 0xdd, - 0x48, 0x0a, 0x2d, 0xac, 0xb9, 0x14, 0x77, 0x53, 0xdc, 0xbd, 0x8c, 0xcf, 0x3a, 0x21, 0xd7, 0xbb, - 0x2d, 0xdf, 0x65, 0xa2, 0xe1, 0x85, 0x22, 0x14, 0x9e, 0x11, 0xfa, 0xad, 0x9a, 0xe9, 0x99, 0x8e, - 0x69, 0xa5, 0x86, 0xb3, 0x0b, 0x57, 0x8e, 0xaf, 0x3b, 0x11, 0xa8, 0x1e, 0x7d, 0x73, 0x90, 0x16, - 0x91, 0xe6, 0xa2, 0x99, 0x15, 0x6f, 0x0c, 0x16, 0xcf, 0xeb, 0xca, 0x83, 0xa5, 0x36, 0x28, 0x68, - 0xb6, 0x07, 0xe5, 0xe5, 0x5f, 0x63, 0xb8, 0xf8, 0xdc, 0xac, 0xd5, 0x5a, 0xc6, 0x13, 0x0d, 0xd0, - 0x34, 0xa0, 0x9a, 0xda, 0x68, 0x0e, 0xcd, 0x97, 0x96, 0x6e, 0xbb, 0x83, 0x0b, 0x4f, 0xc1, 0x2d, - 0xd0, 0x74, 0xa7, 0x13, 0x41, 0xa5, 0x8f, 0x5b, 0x9b, 0xf8, 0x9a, 0xea, 0x28, 0x0d, 0x8d, 0x6a, - 0xdf, 0x21, 0x6f, 0x1c, 0xee, 0x5c, 0x70, 0xd8, 0x36, 0xd4, 0x05, 0x9f, 0xa9, 0x54, 0xbb, 0x95, - 0xb9, 0xad, 0xe2, 0x31, 0x15, 0x01, 0xb3, 0x0b, 0xc6, 0xe2, 0xae, 0x7b, 0xd5, 0xee, 0xbb, 0xdb, - 0x11, 0x30, 0xe3, 0x64, 0x74, 0x2b, 0x1f, 0x0a, 0xef, 0x1e, 0x95, 0xd4, 0x2e, 0x95, 0x10, 0x2c, - 0xb4, 0x14, 0xc8, 0x6f, 0x87, 0x76, 0x7e, 0x1a, 0x1d, 0x1f, 0xda, 0x5f, 0xf2, 0x78, 0x19, 0x17, - 0x36, 0x40, 0x5b, 0x4b, 0xb5, 0xfb, 0x07, 0xcc, 0xa1, 0x51, 0xa4, 0x34, 0x65, 0x7b, 0x8e, 0x4f, - 0x15, 0x67, 0x4e, 0x43, 0x34, 0xb9, 0x16, 0x72, 0x21, 0x89, 0xdb, 0xe1, 0xc2, 0xe1, 0x94, 0x2a, - 0x87, 0x25, 0x1f, 0x09, 0x34, 0xc0, 0x0f, 0xf0, 0x78, 0x05, 0xa2, 0x3a, 0x65, 0x60, 0x2d, 0x0e, - 0x93, 0x27, 0x43, 0x0d, 0xd1, 0xee, 0x4b, 0xae, 0x01, 0xaf, 0xe0, 0xe2, 0xba, 0x04, 0xaa, 0x47, - 0xd4, 0x3e, 0x86, 0x3a, 0x8c, 0xa8, 0x1d, 0xdb, 0xe4, 0x6a, 0xa4, 0x05, 0xff, 0x38, 0xb4, 0x9f, - 0xe1, 0x27, 0x78, 0x26, 0xd9, 0x53, 0x37, 0x64, 0x55, 0xf3, 0x8f, 0xa8, 0x52, 0xfb, 0x42, 0x06, - 0x96, 0xd7, 0xd3, 0xf4, 0xe3, 0x70, 0xb2, 0x38, 0x9c, 0x04, 0x74, 0x42, 0x96, 0xfe, 0x33, 0x41, - 0xf9, 0x05, 0x9e, 0xc8, 0x72, 0xb2, 0x9e, 0xe2, 0xf1, 0x9e, 0x61, 0xef, 0xa4, 0x2d, 0x5e, 0x1d, - 0xf2, 0x46, 0x5d, 0xf8, 0xb4, 0xde, 0x8f, 0xba, 0x18, 0xb2, 0xa4, 0x5d, 0xfe, 0x83, 0xf0, 0xe4, - 0xb6, 0xa6, 0xba, 0xa5, 0xfe, 0xfb, 0x18, 0xa7, 0xf8, 0x90, 0x63, 0xbc, 0x83, 0x4b, 0xe9, 0xbd, - 0xaf, 0x4a, 0xa8, 0x29, 0x3b, 0x3f, 0x57, 0x98, 0x2f, 0x2d, 0xdd, 0x1a, 0x7a, 0x09, 0x2a, 0x50, - 0x4b, 0xc4, 0x6b, 0x33, 0x9f, 0xdf, 0x58, 0x97, 0x27, 0x5b, 0xc1, 0x22, 0xa3, 0x94, 0xf5, 0x10, - 0x63, 0x26, 0x9a, 0x01, 0x37, 0xd7, 0xce, 0x2e, 0x0c, 0x35, 0x5d, 0xcf, 0x00, 0x33, 0xa3, 0x73, - 0xfc, 0xca, 0xf5, 0xe3, 0xd5, 0x69, 0x3c, 0x85, 0x27, 0xb3, 0x49, 0xba, 0x2d, 0x1e, 0xac, 0x7d, - 0x44, 0x47, 0xa7, 0x24, 0x77, 0x72, 0x4a, 0x72, 0x67, 0xa7, 0x04, 0xbd, 0x8d, 0x09, 0xfa, 0x14, - 0x13, 0xf4, 0x3d, 0x26, 0xe8, 0x28, 0x26, 0xe8, 0x24, 0x26, 0xe8, 0x67, 0x4c, 0xd0, 0xef, 0x98, - 0xe4, 0xce, 0x62, 0x82, 0xde, 0x77, 0x49, 0xee, 0x6b, 0x97, 0xa0, 0xa3, 0x2e, 0xc9, 0x9d, 0x74, - 0x49, 0xee, 0xd5, 0xcb, 0x50, 0x44, 0x7b, 0xa1, 0xdb, 0x16, 0x75, 0x0d, 0x52, 0x52, 0xb7, 0xa5, - 0x3c, 0xd3, 0xa8, 0x09, 0xd9, 0x70, 0x22, 0x29, 0xda, 0x3c, 0x00, 0xe9, 0x64, 0x65, 0x2f, 0xf2, - 0x43, 0xe1, 0xc1, 0x81, 0xee, 0xbd, 0x23, 0xff, 0x7c, 0xb4, 0xfc, 0xa2, 0x79, 0x53, 0xee, 0xfd, - 0x0d, 0x00, 0x00, 0xff, 0xff, 0xed, 0x52, 0x95, 0xed, 0x5f, 0x05, 0x00, 0x00, + // 660 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xcf, 0x4e, 0x1b, 0x3b, + 0x14, 0xc6, 0x63, 0xc2, 0x0d, 0xc8, 0x41, 0x5c, 0x34, 0x57, 0x48, 0x73, 0xb9, 0xb7, 0x56, 0x94, + 0x6e, 0x50, 0xc5, 0xcc, 0x54, 0x54, 0x5d, 0x14, 0x55, 0x54, 0x82, 0x4a, 0xb4, 0x15, 0xa8, 0x52, + 0xa0, 0xff, 0xd8, 0x44, 0x1e, 0xcf, 0xc9, 0xe0, 0x92, 0x8c, 0x47, 0xb6, 0x13, 0xc8, 0xa2, 0x52, + 0xd5, 0x27, 0xe8, 0xa2, 0x0f, 0x51, 0xf1, 0x14, 0xa5, 0xdd, 0x74, 0x89, 0x58, 0xa1, 0xae, 0xca, + 0x64, 0xd3, 0x25, 0xea, 0x03, 0x54, 0x55, 0x3c, 0x99, 0x94, 0x40, 0x10, 0x5d, 0x94, 0x4d, 0x6c, + 0xeb, 0x7c, 0xdf, 0x2f, 0xc7, 0x9e, 0x73, 0x0e, 0x76, 0x5a, 0xa0, 0x5c, 0x2e, 0x3c, 0xc5, 0xb6, + 0xa0, 0x41, 0x3d, 0x26, 0x22, 0x4d, 0x79, 0x04, 0xb2, 0x2a, 0x21, 0xe4, 0x4a, 0xcb, 0xb6, 0x27, + 0xfc, 0x97, 0xc0, 0xb4, 0x1b, 0x4b, 0xa1, 0x85, 0x55, 0x4a, 0xe5, 0x6e, 0x2a, 0x77, 0xcf, 0xcb, + 0x67, 0x9c, 0x90, 0xeb, 0xad, 0xa6, 0xef, 0x32, 0xd1, 0xf0, 0x42, 0x11, 0x0a, 0xcf, 0x18, 0xfd, + 0x66, 0xcd, 0x9c, 0xcc, 0xc1, 0xec, 0x52, 0xe0, 0xcc, 0xdc, 0xa5, 0xff, 0xaf, 0xdb, 0x31, 0xa8, + 0x9e, 0xfa, 0xbf, 0x41, 0xb5, 0x88, 0x35, 0x17, 0x51, 0x16, 0xfc, 0x77, 0x30, 0x78, 0xda, 0x57, + 0x1e, 0x0c, 0xb5, 0x40, 0x41, 0xd4, 0x1a, 0xb4, 0x97, 0x7f, 0xfc, 0x85, 0x0b, 0x8f, 0xcd, 0x5d, + 0xad, 0x3b, 0x78, 0xbc, 0x01, 0x9a, 0x06, 0x54, 0x53, 0x1b, 0x95, 0xd0, 0x6c, 0x71, 0xfe, 0x9a, + 0x3b, 0x78, 0xf1, 0x54, 0xb8, 0x06, 0x9a, 0x6e, 0xb4, 0x63, 0xa8, 0xf4, 0xe5, 0xd6, 0x2a, 0xfe, + 0x5b, 0xb5, 0x95, 0x86, 0x46, 0xb5, 0x4f, 0x18, 0x31, 0x84, 0xeb, 0x67, 0x08, 0xeb, 0x46, 0x75, + 0x86, 0x33, 0x99, 0x7a, 0xd7, 0x32, 0xda, 0x22, 0x1e, 0x55, 0x31, 0x30, 0x3b, 0x6f, 0x10, 0x37, + 0xdc, 0xcb, 0x5e, 0xdf, 0x5d, 0x8f, 0x81, 0x19, 0x92, 0xf1, 0x2d, 0xec, 0x8d, 0xbe, 0xb9, 0x57, + 0x54, 0x5b, 0x54, 0x42, 0x30, 0xd7, 0x54, 0x20, 0x3f, 0xee, 0xdb, 0x23, 0x53, 0xe8, 0x70, 0xdf, + 0xfe, 0x94, 0xc7, 0x2f, 0x70, 0x7e, 0x05, 0xb4, 0x55, 0xa9, 0xdd, 0xde, 0x65, 0x0e, 0x8d, 0x63, + 0xa5, 0x29, 0xdb, 0x76, 0x7c, 0xaa, 0x38, 0x73, 0x1a, 0x22, 0xe2, 0x5a, 0xc8, 0xb9, 0xd2, 0x60, + 0x50, 0x69, 0x1a, 0x05, 0x54, 0x06, 0xbf, 0xe2, 0x2d, 0x50, 0x0e, 0x17, 0x0e, 0xa7, 0x54, 0x39, + 0xac, 0xfb, 0x23, 0x81, 0x06, 0xf8, 0x39, 0x1e, 0xab, 0x40, 0x5c, 0xa7, 0x0c, 0xac, 0xb5, 0x61, + 0xf8, 0x6e, 0x2a, 0x17, 0xb2, 0xd3, 0xe0, 0x39, 0xf0, 0x8e, 0xe4, 0x1a, 0xf0, 0x33, 0x5c, 0x58, + 0x96, 0x40, 0xf5, 0x55, 0x80, 0xef, 0x43, 0x1d, 0xfe, 0x3c, 0x78, 0x13, 0x8f, 0xae, 0x72, 0x75, + 0x25, 0xef, 0xfc, 0x65, 0xdf, 0x7e, 0x84, 0x1f, 0xe0, 0xe9, 0xee, 0xa7, 0x76, 0x43, 0x56, 0x35, + 0x6b, 0x4c, 0x95, 0xda, 0x11, 0x32, 0xb0, 0xbc, 0x9e, 0xa7, 0x5f, 0x25, 0x4e, 0x56, 0x25, 0x4e, + 0x57, 0xe8, 0x84, 0x2c, 0x5d, 0x33, 0x43, 0xf9, 0x09, 0x1e, 0xcf, 0xca, 0xc7, 0x7a, 0x88, 0xc7, + 0x7a, 0xc0, 0x5e, 0x03, 0xdc, 0xbc, 0xbc, 0xf6, 0x56, 0xea, 0xc2, 0xa7, 0xf5, 0x7e, 0x05, 0x16, + 0x42, 0xd6, 0xdd, 0x97, 0xbf, 0x23, 0x3c, 0xb1, 0xae, 0xa9, 0x6e, 0xaa, 0xdf, 0xee, 0xae, 0x54, + 0x3e, 0xa4, 0xbb, 0x36, 0x70, 0x31, 0x1d, 0x47, 0x55, 0x09, 0x35, 0x65, 0x8f, 0x94, 0xf2, 0xb3, + 0xc5, 0xf9, 0xff, 0x87, 0xf6, 0x66, 0x05, 0x6a, 0x5d, 0xf3, 0xd2, 0xf4, 0xde, 0x2b, 0xeb, 0x7c, + 0xb2, 0x15, 0x2c, 0x32, 0x95, 0xb2, 0xee, 0x62, 0xcc, 0x44, 0x14, 0x70, 0x33, 0x0d, 0xec, 0xfc, + 0x50, 0xe8, 0x72, 0x26, 0x30, 0x19, 0x9d, 0xd2, 0x2f, 0xfc, 0x73, 0xb8, 0x38, 0x85, 0x27, 0xf1, + 0x44, 0x96, 0xa4, 0xdb, 0xe4, 0xc1, 0xd2, 0x3b, 0x74, 0x70, 0x4c, 0x72, 0x47, 0xc7, 0x24, 0x77, + 0x72, 0x4c, 0xd0, 0xeb, 0x84, 0xa0, 0xf7, 0x09, 0x41, 0x9f, 0x13, 0x82, 0x0e, 0x12, 0x82, 0x8e, + 0x12, 0x82, 0xbe, 0x26, 0x04, 0x7d, 0x4b, 0x48, 0xee, 0x24, 0x21, 0xe8, 0x6d, 0x87, 0xe4, 0x3e, + 0x74, 0x08, 0x3a, 0xe8, 0x90, 0xdc, 0x51, 0x87, 0xe4, 0x36, 0x9f, 0x86, 0x22, 0xde, 0x0e, 0xdd, + 0x96, 0xa8, 0x6b, 0x90, 0x92, 0xba, 0x4d, 0xe5, 0x99, 0x4d, 0x4d, 0xc8, 0x86, 0x13, 0x4b, 0xd1, + 0xe2, 0x01, 0x48, 0x27, 0x0b, 0x7b, 0xb1, 0x1f, 0x0a, 0x0f, 0x76, 0x75, 0x6f, 0xbc, 0x5d, 0x38, + 0x4b, 0xfd, 0x82, 0x19, 0x75, 0xb7, 0x7e, 0x06, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x07, 0x8e, 0xf1, + 0xf6, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/container_registry/public_crudapi.pb.go b/pbgo/extschema/schema/container_registry/public_crudapi.pb.go index 8f9ee397e..1da0129bd 100644 --- a/pbgo/extschema/schema/container_registry/public_crudapi.pb.go +++ b/pbgo/extschema/schema/container_registry/public_crudapi.pb.go @@ -1056,108 +1056,110 @@ func init() { } var fileDescriptor_92c70e0b8b6ea615 = []byte{ - // 1611 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0xc7, - 0x1e, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x58, 0xe6, 0x41, 0x70, 0xfc, 0x78, 0x96, 0x9f, 0x41, - 0xef, 0x45, 0x11, 0x5e, 0x87, 0xbc, 0x87, 0xde, 0x23, 0x54, 0x29, 0x8e, 0xe3, 0x84, 0x40, 0x42, - 0xa2, 0xb1, 0x13, 0x55, 0xbd, 0x6c, 0xd7, 0xeb, 0xb1, 0x59, 0x62, 0x7b, 0xb7, 0x3b, 0xe3, 0x04, - 0xb7, 0x8a, 0x54, 0x71, 0x6b, 0x4f, 0x95, 0x7a, 0xa9, 0xaa, 0x1e, 0xb8, 0x20, 0xf5, 0xdc, 0x53, - 0xa5, 0x5c, 0xb8, 0x81, 0x38, 0x54, 0xa8, 0xed, 0x01, 0xf5, 0x50, 0x15, 0xa7, 0x42, 0x1c, 0x51, - 0x8f, 0x3d, 0x54, 0xd5, 0xce, 0xec, 0x1a, 0xdb, 0x31, 0xd8, 0x0e, 0xb9, 0x24, 0x3b, 0xff, 0x8f, - 0xdf, 0xfc, 0xbf, 0xfd, 0xdf, 0x85, 0x97, 0x76, 0x08, 0x95, 0x75, 0x23, 0x49, 0xb5, 0x5b, 0xa4, - 0xa2, 0x26, 0x35, 0xa3, 0xca, 0x54, 0xbd, 0x4a, 0x2c, 0xc5, 0x22, 0x25, 0x9d, 0x32, 0xab, 0x9e, - 0x34, 0x6b, 0xf9, 0xb2, 0xae, 0x29, 0x9a, 0x55, 0x2b, 0xa8, 0xa6, 0x2e, 0x9b, 0x96, 0xc1, 0x0c, - 0x14, 0x13, 0x6a, 0xb2, 0x50, 0x93, 0x0f, 0xab, 0x45, 0x12, 0x25, 0x9d, 0xdd, 0xaa, 0xe5, 0x65, - 0xcd, 0xa8, 0x24, 0x4b, 0x46, 0xc9, 0x48, 0x72, 0xc5, 0x7c, 0xad, 0xc8, 0x4f, 0xfc, 0xc0, 0x9f, - 0x04, 0x60, 0xe4, 0x6c, 0xc9, 0x30, 0x4a, 0x65, 0x92, 0x54, 0x4d, 0x3d, 0xa9, 0x56, 0xab, 0x06, - 0x53, 0x99, 0x6e, 0x54, 0xa9, 0xc3, 0xfd, 0xbb, 0xc3, 0x6d, 0x62, 0x90, 0x8a, 0xc9, 0xea, 0x0e, - 0x33, 0xd1, 0xd3, 0x05, 0x23, 0x7f, 0x9b, 0x68, 0xcc, 0x11, 0xbf, 0xd0, 0x53, 0x9c, 0xd5, 0x4d, - 0xe2, 0xde, 0x1c, 0x69, 0x97, 0x26, 0x96, 0x65, 0x58, 0x4d, 0xab, 0xda, 0x79, 0x86, 0xd9, 0x6a, - 0xf2, 0x64, 0x3b, 0xb3, 0x15, 0x33, 0xde, 0xce, 0xda, 0x21, 0x94, 0x54, 0x77, 0x3a, 0xd4, 0x63, - 0x1d, 0x32, 0x3a, 0xd9, 0x55, 0xda, 0x24, 0xe2, 0xdf, 0x02, 0x38, 0x9a, 0xb6, 0x88, 0xca, 0x08, - 0x26, 0x1f, 0xd6, 0x08, 0x65, 0xe8, 0x5d, 0x18, 0xa8, 0x10, 0xa6, 0x16, 0x54, 0xa6, 0x86, 0x41, - 0x0c, 0x4c, 0x85, 0x66, 0xcf, 0xc9, 0xed, 0x79, 0x5a, 0xe7, 0x81, 0x10, 0x5a, 0x6b, 0x84, 0xa9, - 0xb9, 0xba, 0x49, 0x70, 0x53, 0x09, 0x6d, 0x42, 0x1f, 0x35, 0x89, 0x16, 0xf6, 0x70, 0xe5, 0x19, - 0xb9, 0x57, 0x92, 0x65, 0x81, 0x94, 0x35, 0x89, 0x66, 0x23, 0x2d, 0x8c, 0x7f, 0xb5, 0x37, 0x62, - 0x03, 0xc8, 0x25, 0x4d, 0xb1, 0xff, 0x63, 0x0e, 0x37, 0x17, 0x7c, 0x3c, 0xef, 0x17, 0x37, 0xc7, - 0xff, 0x04, 0x70, 0xcc, 0x35, 0x9a, 0x9a, 0x46, 0x95, 0x12, 0xf4, 0xce, 0x21, 0xab, 0x63, 0x5d, - 0xad, 0x5e, 0x26, 0xac, 0x8b, 0xc9, 0xeb, 0x70, 0x9c, 0xd6, 0x29, 0x23, 0x15, 0xa5, 0x09, 0xe2, - 0xe5, 0x20, 0xff, 0xea, 0x00, 0xc9, 0x72, 0xa9, 0xc3, 0x50, 0x63, 0x42, 0x7d, 0xcd, 0x05, 0xc4, - 0x6d, 0x31, 0x48, 0xf4, 0x8e, 0xc1, 0x32, 0x61, 0x03, 0x04, 0xe0, 0x39, 0x80, 0x63, 0x98, 0x98, - 0x65, 0x55, 0x6b, 0xa6, 0xed, 0xea, 0xa1, 0x00, 0x9c, 0xef, 0x1a, 0x00, 0x47, 0xad, 0x4b, 0x10, - 0xb6, 0xda, 0x6c, 0xbe, 0xd8, 0xdb, 0x66, 0x07, 0xaa, 0x87, 0xdd, 0x28, 0x09, 0x25, 0x8b, 0x50, - 0xa3, 0x66, 0x69, 0x44, 0xd9, 0x21, 0x16, 0xd5, 0x8d, 0x2a, 0x8f, 0x6e, 0x70, 0xc1, 0xf7, 0x62, - 0x1f, 0x00, 0x3c, 0xee, 0x72, 0xb7, 0x04, 0xb3, 0xd5, 0xd1, 0x93, 0x70, 0xbc, 0xe9, 0xa7, 0xc8, - 0x74, 0xfc, 0x1e, 0x80, 0x70, 0x99, 0x30, 0xd7, 0xef, 0xb3, 0x30, 0x58, 0x55, 0x2b, 0x84, 0x9a, - 0xaa, 0x46, 0xb8, 0xe3, 0x41, 0xfc, 0x8a, 0x80, 0x10, 0xf4, 0xd9, 0x07, 0xee, 0x53, 0x10, 0xf3, - 0x67, 0xf4, 0x01, 0xb4, 0x6f, 0xe4, 0x60, 0x4a, 0xd1, 0xb0, 0x2a, 0x2a, 0xe3, 0xe6, 0x8c, 0xcd, - 0xfe, 0xaf, 0xaf, 0x34, 0xb9, 0x86, 0x2c, 0x71, 0xd5, 0xb4, 0x51, 0x20, 0x78, 0xcc, 0x6a, 0xa3, - 0xc5, 0xef, 0xfb, 0x61, 0xa8, 0x45, 0x12, 0x6d, 0xc0, 0x90, 0xc6, 0xcb, 0x95, 0xdf, 0xe7, 0x04, - 0x38, 0xd9, 0x6f, 0x63, 0x38, 0x9e, 0x62, 0x28, 0x30, 0xec, 0x3b, 0x50, 0x16, 0x8e, 0x58, 0x22, - 0x2e, 0x02, 0xd2, 0xdb, 0x6f, 0xaf, 0xb5, 0x57, 0x0d, 0x0e, 0x39, 0x28, 0x1c, 0xb4, 0x5b, 0xa2, - 0x7c, 0x6f, 0x48, 0x54, 0x5b, 0xd3, 0x0d, 0x1f, 0x47, 0xd3, 0x9d, 0x38, 0x96, 0xa6, 0xf3, 0x1f, - 0x5f, 0xd3, 0xa1, 0x35, 0xe8, 0xa7, 0x4c, 0x65, 0x35, 0x1a, 0xbe, 0xf7, 0x35, 0x88, 0x79, 0xa7, - 0x42, 0xb3, 0x72, 0x6f, 0xdc, 0x2c, 0xd7, 0x10, 0x06, 0x2f, 0x78, 0x1f, 0xec, 0x01, 0xec, 0x80, - 0xa0, 0x15, 0x78, 0xd2, 0x22, 0x45, 0x62, 0x59, 0x7a, 0xb5, 0xa4, 0x88, 0x1f, 0x14, 0x1a, 0x0e, - 0x70, 0xdc, 0xb3, 0xaf, 0x69, 0xd7, 0x22, 0xf7, 0x55, 0x6a, 0xaa, 0x09, 0x3a, 0x45, 0x5b, 0x30, - 0x5c, 0x20, 0x65, 0xc2, 0x48, 0x41, 0x11, 0x3c, 0x52, 0x68, 0x22, 0x06, 0xfb, 0x40, 0x9c, 0x70, - 0xb4, 0xb1, 0xa3, 0xec, 0xe2, 0xbe, 0x07, 0x27, 0x0b, 0x3a, 0x55, 0xf3, 0xe5, 0x6e, 0xc0, 0xb0, - 0x0f, 0xe0, 0x33, 0xae, 0x7a, 0x07, 0x72, 0x4b, 0x5f, 0x5f, 0xf7, 0x05, 0x80, 0xe4, 0x89, 0xdf, - 0x07, 0x30, 0xb4, 0xaa, 0xd3, 0x3e, 0x7b, 0xf9, 0x9f, 0x70, 0xa4, 0xac, 0xe6, 0x49, 0x59, 0x29, - 0xea, 0x65, 0x46, 0x2c, 0xa7, 0xa7, 0x43, 0x9c, 0xb6, 0xc4, 0x49, 0xe8, 0x1c, 0x1c, 0xb5, 0x88, - 0x69, 0x58, 0x4c, 0x29, 0xea, 0xa4, 0x5c, 0xa0, 0x61, 0x6f, 0xcc, 0x3b, 0x15, 0xc4, 0x23, 0x82, - 0xb8, 0xc4, 0x69, 0x68, 0x06, 0x9e, 0x72, 0x84, 0x44, 0x52, 0x5c, 0x59, 0x1f, 0x97, 0x45, 0x82, - 0x27, 0x52, 0x28, 0x34, 0xe2, 0x3f, 0xf9, 0xa1, 0x24, 0xec, 0x14, 0x0d, 0xbd, 0xc2, 0x48, 0x05, - 0x4d, 0x40, 0x3f, 0x23, 0x55, 0xb5, 0xca, 0x78, 0xbd, 0x05, 0xb1, 0x73, 0x3a, 0xc2, 0x40, 0x92, - 0xa0, 0xb7, 0xa6, 0x17, 0xc4, 0x4c, 0xc4, 0xf6, 0x23, 0x8a, 0xc1, 0x50, 0x81, 0x50, 0xcd, 0xd2, - 0xf9, 0x6f, 0x75, 0x38, 0x24, 0x3c, 0x6d, 0x21, 0xa1, 0x08, 0x0c, 0xb8, 0x61, 0x0e, 0x8f, 0xc4, - 0xc0, 0x54, 0x00, 0x37, 0xcf, 0x68, 0x0b, 0xfa, 0x79, 0x50, 0x84, 0x4b, 0xa1, 0xd9, 0xf9, 0xde, - 0x15, 0xdb, 0xe9, 0x9d, 0xbc, 0xca, 0x01, 0x32, 0x55, 0x66, 0xd5, 0xb1, 0x83, 0x86, 0x08, 0x0c, - 0xb5, 0x2c, 0x55, 0x4e, 0x2d, 0xa4, 0x8f, 0x00, 0x9e, 0x7a, 0x85, 0x22, 0x6e, 0x68, 0xc5, 0x45, - 0x97, 0x21, 0x34, 0x76, 0x6d, 0x00, 0x7b, 0x5d, 0x09, 0x07, 0x79, 0x33, 0x47, 0x3a, 0x6e, 0xd9, - 0xd2, 0xc9, 0xae, 0x5b, 0x6f, 0x41, 0x2e, 0x6d, 0x53, 0xda, 0x06, 0xd2, 0xe8, 0x71, 0x0c, 0xa4, - 0xb1, 0xb7, 0x1a, 0x48, 0xd7, 0x60, 0xa0, 0x44, 0x18, 0x1f, 0x27, 0xce, 0x68, 0x1b, 0x6c, 0x28, - 0xe1, 0x13, 0x25, 0x71, 0x40, 0x18, 0x42, 0xa7, 0x58, 0x29, 0x61, 0xce, 0xc0, 0x38, 0xd2, 0x20, - 0x0a, 0x0a, 0x98, 0x2c, 0x61, 0x91, 0xcb, 0x30, 0xd4, 0x92, 0x65, 0xbb, 0x0a, 0xb7, 0x49, 0xdd, - 0xa9, 0x58, 0xfb, 0x11, 0x9d, 0x82, 0xc3, 0x3b, 0x6a, 0xb9, 0xe6, 0x16, 0xab, 0x38, 0xcc, 0x79, - 0xfe, 0x0f, 0x22, 0xf3, 0x50, 0xea, 0xcc, 0xe1, 0x20, 0xfa, 0xd7, 0x7d, 0x81, 0x61, 0xc9, 0x1f, - 0xff, 0x0c, 0xc0, 0x91, 0xd6, 0xda, 0x40, 0xd7, 0xe0, 0xb0, 0xce, 0x48, 0x85, 0x86, 0xc5, 0xa4, - 0x9d, 0x1d, 0xbc, 0xb4, 0xb0, 0x00, 0x40, 0x33, 0xd0, 0x2f, 0x96, 0xec, 0xb0, 0x87, 0x43, 0x85, - 0x3b, 0xa0, 0x32, 0x36, 0x93, 0x87, 0xd8, 0x91, 0x8b, 0x6f, 0xc3, 0xd1, 0x45, 0x3e, 0x10, 0x8f, - 0xbe, 0x58, 0x4c, 0x41, 0xa9, 0xa8, 0xea, 0x65, 0x45, 0x2f, 0x36, 0x07, 0x27, 0x6f, 0xea, 0x00, - 0x1e, 0xb3, 0xe9, 0x2b, 0x45, 0x77, 0x20, 0x4e, 0xff, 0x0e, 0xe0, 0xe9, 0xae, 0xab, 0x04, 0x8a, - 0xc0, 0x89, 0xe5, 0x4c, 0x4e, 0xc1, 0xd9, 0x0d, 0x65, 0x69, 0x1d, 0xaf, 0xa5, 0x72, 0xca, 0x62, - 0x66, 0x29, 0xb5, 0xb9, 0x9a, 0x93, 0x86, 0xd0, 0x3f, 0xe0, 0x64, 0x07, 0x6f, 0x69, 0x1d, 0x2b, - 0x69, 0x9c, 0x49, 0xe5, 0x32, 0x12, 0x40, 0x51, 0x18, 0xe9, 0xc2, 0xc6, 0x99, 0x8d, 0xd5, 0x54, - 0x3a, 0x23, 0x79, 0xd0, 0x24, 0x3c, 0xdd, 0xc1, 0xcf, 0xe6, 0x52, 0xb9, 0xcd, 0xac, 0xe4, 0x45, - 0x67, 0xe0, 0xdf, 0x3a, 0x58, 0x38, 0x93, 0x5a, 0x94, 0x7c, 0xe8, 0x3c, 0x8c, 0x1d, 0x62, 0x2c, - 0x65, 0x30, 0x5e, 0xb9, 0xb9, 0xac, 0xac, 0x2f, 0x5c, 0xcf, 0xa4, 0x73, 0x59, 0x69, 0xb8, 0x8b, - 0xd4, 0x02, 0x5e, 0xbf, 0x91, 0xb9, 0x29, 0x84, 0x33, 0x37, 0xd3, 0x99, 0xac, 0xe4, 0x9f, 0x6d, - 0x04, 0xa1, 0x37, 0xb5, 0xb1, 0x82, 0x9e, 0x03, 0xe8, 0x17, 0x9b, 0x0d, 0x1a, 0x74, 0x07, 0x8a, - 0xcc, 0xf4, 0xaf, 0xe0, 0xac, 0x8b, 0xf5, 0xc6, 0xc3, 0x70, 0xb2, 0x78, 0xe9, 0x8e, 0x96, 0x50, - 0x4d, 0x93, 0x32, 0x55, 0xdb, 0x4e, 0xe4, 0x55, 0xaa, 0x6b, 0x89, 0x1a, 0x25, 0x96, 0xfd, 0x16, - 0x97, 0xd0, 0x8d, 0x84, 0xae, 0xaa, 0x34, 0xa1, 0xd9, 0x7f, 0x76, 0x2d, 0x9d, 0x91, 0xbb, 0x3f, - 0xfe, 0xf6, 0x85, 0xe7, 0x6a, 0xfc, 0x8a, 0xf3, 0xd6, 0x9a, 0x6c, 0xa6, 0x9d, 0x26, 0x3f, 0x76, - 0x47, 0x83, 0xdc, 0x24, 0xee, 0x75, 0x79, 0xfb, 0xa3, 0x73, 0x60, 0x1a, 0xfd, 0x02, 0xa0, 0x77, - 0x99, 0x30, 0x74, 0xa1, 0xcf, 0xbd, 0x52, 0xb8, 0x98, 0x18, 0x68, 0x0b, 0x8d, 0x7f, 0xf4, 0xe8, - 0x3b, 0x0f, 0x68, 0x3c, 0x0c, 0x5f, 0xec, 0xe6, 0x63, 0xc5, 0xa8, 0xea, 0xcc, 0xe8, 0xe2, 0xa6, - 0x45, 0xd4, 0x02, 0xf7, 0xf2, 0x0a, 0xba, 0xdc, 0xcd, 0xcb, 0x37, 0x3b, 0x27, 0xf8, 0x7b, 0xe8, - 0x67, 0x00, 0x7d, 0x76, 0x07, 0xa2, 0x44, 0xbf, 0x9d, 0x2a, 0x5c, 0x94, 0x07, 0x6b, 0xec, 0x38, - 0x7d, 0x3b, 0x1f, 0xff, 0x8b, 0x66, 0x07, 0xf7, 0x11, 0xfd, 0x01, 0xe0, 0x09, 0x67, 0x5b, 0x46, - 0x03, 0x2f, 0xd6, 0x91, 0x8b, 0x03, 0x68, 0x38, 0x5e, 0x7e, 0x0a, 0x8e, 0x5a, 0xaa, 0x1b, 0x91, - 0x1b, 0x6f, 0x51, 0xaa, 0x1d, 0x82, 0x7b, 0x76, 0xe9, 0x3e, 0x06, 0xd0, 0x2f, 0xc6, 0x61, 0x3f, - 0x3d, 0xda, 0x36, 0x38, 0x23, 0x13, 0xb2, 0xf8, 0xce, 0x22, 0xbb, 0xdf, 0x59, 0xe4, 0x4c, 0xc5, - 0x64, 0xf5, 0xf8, 0xee, 0x51, 0xdd, 0x9b, 0x9f, 0x3e, 0x7a, 0x8d, 0xce, 0x81, 0xe9, 0xc8, 0xed, - 0x07, 0xfb, 0xc0, 0xf3, 0xc3, 0x3e, 0xf8, 0x77, 0x4f, 0x47, 0xc4, 0x2f, 0xe5, 0xd3, 0x7d, 0x00, - 0x1a, 0xfb, 0x20, 0x31, 0xd0, 0xcf, 0xeb, 0xdd, 0xef, 0xc3, 0x1e, 0x09, 0x2c, 0x7c, 0x09, 0x1e, - 0xcf, 0x0f, 0xa7, 0xf1, 0xe6, 0xe2, 0xea, 0x93, 0x67, 0xd1, 0xa1, 0xa7, 0xcf, 0xa2, 0x43, 0x2f, - 0x9f, 0x45, 0xc1, 0x27, 0x8d, 0x28, 0xf8, 0xa6, 0x11, 0x05, 0x8f, 0x1a, 0x51, 0xf0, 0xa4, 0x11, - 0x05, 0xbf, 0x36, 0xa2, 0xe0, 0x45, 0x23, 0x3a, 0xf4, 0xb2, 0x11, 0x05, 0x9f, 0x1f, 0x44, 0x87, - 0x1e, 0x1c, 0x44, 0xc1, 0x93, 0x83, 0xe8, 0xd0, 0xd3, 0x83, 0xe8, 0xd0, 0xfb, 0x5b, 0x25, 0xc3, - 0xdc, 0x2e, 0xc9, 0x3b, 0x86, 0xbd, 0xd2, 0x5a, 0xaa, 0x5c, 0xa3, 0x49, 0xfe, 0x60, 0xbf, 0xe8, - 0x25, 0x4c, 0xcb, 0xd8, 0xd1, 0x0b, 0xc4, 0x4a, 0xb8, 0xec, 0xa4, 0x99, 0x2f, 0x19, 0x49, 0x72, - 0x87, 0x39, 0xdf, 0x78, 0x5e, 0xfb, 0x41, 0x2a, 0xef, 0xe7, 0xf9, 0xf8, 0xcf, 0x5f, 0x01, 0x00, - 0x00, 0xff, 0xff, 0x37, 0xbd, 0xfb, 0xc9, 0xad, 0x13, 0x00, 0x00, + // 1635 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x3d, 0x6c, 0x1b, 0xc9, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xd8, 0x32, 0xc5, 0x38, 0x04, 0x43, 0x1b, + 0x89, 0x20, 0x98, 0x4b, 0x59, 0x89, 0x91, 0x58, 0x0e, 0x14, 0x53, 0x14, 0x25, 0xcb, 0x96, 0x2c, + 0x61, 0x48, 0x09, 0x41, 0x9a, 0xcd, 0x72, 0x39, 0xa4, 0xd7, 0x22, 0xb9, 0x9b, 0x9d, 0x21, 0x65, + 0x22, 0x10, 0x10, 0x38, 0x5d, 0xaa, 0x20, 0x46, 0x82, 0x24, 0x48, 0xe1, 0xc6, 0xc0, 0xd5, 0x57, + 0x1d, 0xa0, 0xc6, 0xdd, 0x19, 0x2e, 0x0e, 0xc6, 0xdd, 0x15, 0x2e, 0xcf, 0xd4, 0xe1, 0xce, 0xa5, + 0x71, 0xd5, 0xe1, 0x0a, 0xe3, 0xb0, 0x33, 0xbb, 0x34, 0x49, 0xd1, 0x26, 0x29, 0xcb, 0x8d, 0xb4, + 0x33, 0xef, 0xbd, 0x6f, 0xde, 0xfb, 0xe6, 0xbd, 0xb7, 0x8f, 0x0b, 0xaf, 0xd4, 0x09, 0x95, 0x75, + 0x23, 0x49, 0xb5, 0x3b, 0xa4, 0xa2, 0x26, 0x35, 0xa3, 0xca, 0x54, 0xbd, 0x4a, 0x2c, 0xc5, 0x22, + 0x25, 0x9d, 0x32, 0xab, 0x91, 0x34, 0x6b, 0xf9, 0xb2, 0xae, 0x29, 0x9a, 0x55, 0x2b, 0xa8, 0xa6, + 0x2e, 0x9b, 0x96, 0xc1, 0x0c, 0x14, 0x13, 0x66, 0xb2, 0x30, 0x93, 0x8f, 0x9a, 0x45, 0x12, 0x25, + 0x9d, 0xdd, 0xa9, 0xe5, 0x65, 0xcd, 0xa8, 0x24, 0x4b, 0x46, 0xc9, 0x48, 0x72, 0xc3, 0x7c, 0xad, + 0xc8, 0x57, 0x7c, 0xc1, 0x9f, 0x04, 0x60, 0xe4, 0x7c, 0xc9, 0x30, 0x4a, 0x65, 0x92, 0x54, 0x4d, + 0x3d, 0xa9, 0x56, 0xab, 0x06, 0x53, 0x99, 0x6e, 0x54, 0xa9, 0x23, 0xfd, 0xa9, 0x23, 0x6d, 0x61, + 0x90, 0x8a, 0xc9, 0x1a, 0x8e, 0x30, 0xd1, 0x37, 0x04, 0x23, 0x7f, 0x97, 0x68, 0xcc, 0x51, 0xbf, + 0xd4, 0x57, 0x9d, 0x35, 0x4c, 0xe2, 0x9e, 0x1c, 0xe9, 0xd4, 0x26, 0x96, 0x65, 0x58, 0x2d, 0xaf, + 0x3a, 0x65, 0x86, 0xd9, 0xee, 0xf2, 0x74, 0xa7, 0xb0, 0x1d, 0x33, 0xde, 0x29, 0xaa, 0x13, 0x4a, + 0xaa, 0xf5, 0x2e, 0xf3, 0x58, 0x97, 0x8e, 0x4e, 0xf6, 0x94, 0x0e, 0x8d, 0xf8, 0xc7, 0x00, 0x8e, + 0xa7, 0x2d, 0xa2, 0x32, 0x82, 0xc9, 0x9f, 0x6b, 0x84, 0x32, 0xf4, 0x7b, 0x18, 0xa8, 0x10, 0xa6, + 0x16, 0x54, 0xa6, 0x86, 0x41, 0x0c, 0xcc, 0x84, 0xe6, 0x2f, 0xc8, 0x9d, 0xf7, 0xb4, 0xc9, 0x89, + 0x10, 0x56, 0x1b, 0x84, 0xa9, 0xb9, 0x86, 0x49, 0x70, 0xcb, 0x08, 0x6d, 0x43, 0x1f, 0x35, 0x89, + 0x16, 0xf6, 0x70, 0xe3, 0x39, 0xb9, 0xdf, 0x25, 0xcb, 0x02, 0x29, 0x6b, 0x12, 0xcd, 0x46, 0x5a, + 0x9a, 0xfc, 0xdf, 0xfe, 0x98, 0x0d, 0x20, 0x97, 0x34, 0xc5, 0xfe, 0x8f, 0x39, 0xdc, 0x42, 0xf0, + 0xe9, 0xa2, 0x5f, 0x9c, 0x1c, 0x7f, 0x0d, 0xe0, 0x84, 0xeb, 0x34, 0x35, 0x8d, 0x2a, 0x25, 0xe8, + 0x77, 0x47, 0xbc, 0x8e, 0xf5, 0xf4, 0x7a, 0x95, 0xb0, 0x1e, 0x2e, 0x6f, 0xc2, 0x49, 0xda, 0xa0, + 0x8c, 0x54, 0x94, 0x16, 0x88, 0x97, 0x83, 0xfc, 0xa2, 0x0b, 0x24, 0xcb, 0xb5, 0x8e, 0x42, 0x4d, + 0x08, 0xf3, 0x0d, 0x17, 0x10, 0x77, 0x70, 0x90, 0xe8, 0xcf, 0xc1, 0x2a, 0x61, 0x43, 0x10, 0xf0, + 0x0d, 0x80, 0x13, 0x98, 0x98, 0x65, 0x55, 0x6b, 0x5d, 0xdb, 0xf5, 0x23, 0x04, 0x5c, 0xec, 0x49, + 0x80, 0x63, 0xd6, 0x83, 0x84, 0x9d, 0x0e, 0x9f, 0x2f, 0xf7, 0xf7, 0xd9, 0x81, 0xea, 0xe3, 0x37, + 0x4a, 0x42, 0xc9, 0x22, 0xd4, 0xa8, 0x59, 0x1a, 0x51, 0xea, 0xc4, 0xa2, 0xba, 0x51, 0xe5, 0xec, + 0x06, 0x97, 0x7c, 0x2f, 0x0f, 0x00, 0xc0, 0x93, 0xae, 0x74, 0x47, 0x08, 0xdb, 0x03, 0x3d, 0x0d, + 0x27, 0x5b, 0x71, 0x8a, 0x9b, 0x8e, 0x3f, 0x04, 0x10, 0xae, 0x12, 0xe6, 0xc6, 0x7d, 0x1e, 0x06, + 0xab, 0x6a, 0x85, 0x50, 0x53, 0xd5, 0x08, 0x0f, 0x3c, 0x88, 0xdf, 0x6c, 0x20, 0x04, 0x7d, 0xf6, + 0x82, 0xc7, 0x14, 0xc4, 0xfc, 0x19, 0xfd, 0x09, 0xda, 0x27, 0x72, 0x30, 0xa5, 0x68, 0x58, 0x15, + 0x95, 0x71, 0x77, 0x26, 0xe6, 0x7f, 0x33, 0xd0, 0x35, 0xb9, 0x8e, 0xac, 0x70, 0xd3, 0xb4, 0x51, + 0x20, 0x78, 0xc2, 0xea, 0xd8, 0x8b, 0x3f, 0xf2, 0xc3, 0x50, 0x9b, 0x26, 0xda, 0x82, 0x21, 0x8d, + 0xa7, 0x2b, 0x3f, 0xcf, 0x21, 0x38, 0x39, 0x68, 0x61, 0x38, 0x91, 0x62, 0x28, 0x30, 0xec, 0x33, + 0x50, 0x16, 0x8e, 0x59, 0x82, 0x17, 0x01, 0xe9, 0x1d, 0xb4, 0xd6, 0x3a, 0xb3, 0x06, 0x87, 0x1c, + 0x14, 0x0e, 0xda, 0xeb, 0xa2, 0x7c, 0xef, 0xb8, 0xa8, 0x8e, 0xa2, 0x1b, 0x3d, 0x89, 0xa2, 0x3b, + 0x75, 0x22, 0x45, 0xe7, 0x3f, 0xb9, 0xa2, 0x43, 0x1b, 0xd0, 0x4f, 0x99, 0xca, 0x6a, 0x34, 0xfc, + 0xf0, 0xff, 0x20, 0xe6, 0x9d, 0x09, 0xcd, 0xcb, 0xfd, 0x71, 0xb3, 0xdc, 0x42, 0x38, 0xbc, 0xe4, + 0x7d, 0xbc, 0x0f, 0xb0, 0x03, 0x82, 0xd6, 0xe0, 0x69, 0x8b, 0x14, 0x89, 0x65, 0xe9, 0xd5, 0x92, + 0x22, 0x5e, 0x28, 0x34, 0x1c, 0xe0, 0xb8, 0xe7, 0xdf, 0x52, 0xae, 0x45, 0x1e, 0xab, 0xd4, 0x32, + 0x13, 0xfb, 0x14, 0xed, 0xc0, 0x70, 0x81, 0x94, 0x09, 0x23, 0x05, 0x45, 0xc8, 0x48, 0xa1, 0x85, + 0x18, 0x1c, 0x00, 0x71, 0xca, 0xb1, 0xc6, 0x8e, 0xb1, 0x8b, 0xfb, 0x07, 0x38, 0x5d, 0xd0, 0xa9, + 0x9a, 0x2f, 0xf7, 0x02, 0x86, 0x03, 0x00, 0x9f, 0x73, 0xcd, 0xbb, 0x90, 0xdb, 0xea, 0xfa, 0xa6, + 0x2f, 0x00, 0x24, 0x4f, 0xfc, 0x11, 0x80, 0xa1, 0x75, 0x9d, 0x0e, 0x58, 0xcb, 0x3f, 0x87, 0x63, + 0x65, 0x35, 0x4f, 0xca, 0x4a, 0x51, 0x2f, 0x33, 0x62, 0x39, 0x35, 0x1d, 0xe2, 0x7b, 0x2b, 0x7c, + 0x0b, 0x5d, 0x80, 0xe3, 0x16, 0x31, 0x0d, 0x8b, 0x29, 0x45, 0x9d, 0x94, 0x0b, 0x34, 0xec, 0x8d, + 0x79, 0x67, 0x82, 0x78, 0x4c, 0x6c, 0xae, 0xf0, 0x3d, 0x34, 0x07, 0xcf, 0x38, 0x4a, 0xe2, 0x52, + 0x5c, 0x5d, 0x1f, 0xd7, 0x45, 0x42, 0x26, 0xae, 0x50, 0x58, 0xc4, 0xbf, 0xf4, 0x43, 0x49, 0xf8, + 0x29, 0x0a, 0x7a, 0x8d, 0x91, 0x0a, 0x9a, 0x82, 0x7e, 0x46, 0xaa, 0x6a, 0x95, 0xf1, 0x7c, 0x0b, + 0x62, 0x67, 0x75, 0x8c, 0x86, 0x24, 0x41, 0x6f, 0x4d, 0x2f, 0x88, 0x9e, 0x88, 0xed, 0x47, 0x14, + 0x83, 0xa1, 0x02, 0xa1, 0x9a, 0xa5, 0xf3, 0x77, 0x75, 0x38, 0x24, 0x22, 0x6d, 0xdb, 0x42, 0x11, + 0x18, 0x70, 0x69, 0x0e, 0x8f, 0xc5, 0xc0, 0x4c, 0x00, 0xb7, 0xd6, 0x68, 0x07, 0xfa, 0x39, 0x29, + 0x22, 0xa4, 0xd0, 0xfc, 0x62, 0xff, 0x8c, 0xed, 0x8e, 0x4e, 0x5e, 0xe7, 0x00, 0x99, 0x2a, 0xb3, + 0x1a, 0xd8, 0x41, 0x43, 0x04, 0x86, 0xda, 0x86, 0x2a, 0x27, 0x17, 0xd2, 0xc7, 0x00, 0x4f, 0xbd, + 0x41, 0x11, 0x27, 0xb4, 0xe3, 0xa2, 0xab, 0x10, 0x1a, 0x7b, 0x36, 0x80, 0x3d, 0xae, 0x84, 0x83, + 0xbc, 0x98, 0x23, 0x5d, 0xa7, 0xec, 0xe8, 0x64, 0xcf, 0xcd, 0xb7, 0x20, 0xd7, 0xb6, 0x77, 0x3a, + 0x1a, 0xd2, 0xf8, 0x49, 0x34, 0xa4, 0x89, 0xf7, 0x6a, 0x48, 0x37, 0x60, 0xa0, 0x44, 0x18, 0x6f, + 0x27, 0x4e, 0x6b, 0x1b, 0xae, 0x29, 0xe1, 0x53, 0x25, 0xb1, 0x40, 0x18, 0x42, 0x27, 0x59, 0x29, + 0x61, 0x4e, 0xc3, 0x38, 0x56, 0x23, 0x0a, 0x0a, 0x98, 0x2c, 0x61, 0x91, 0xab, 0x30, 0xd4, 0x76, + 0xcb, 0x76, 0x16, 0xee, 0x92, 0x86, 0x93, 0xb1, 0xf6, 0x23, 0x3a, 0x03, 0x47, 0xeb, 0x6a, 0xb9, + 0xe6, 0x26, 0xab, 0x58, 0x2c, 0x78, 0x7e, 0x0b, 0x22, 0x8b, 0x50, 0xea, 0xbe, 0xc3, 0x61, 0xec, + 0x6f, 0xfa, 0x02, 0xa3, 0x92, 0x3f, 0xfe, 0x77, 0x00, 0xc7, 0xda, 0x73, 0x03, 0xdd, 0x80, 0xa3, + 0x3a, 0x23, 0x15, 0x1a, 0x16, 0x9d, 0x76, 0x7e, 0xf8, 0xd4, 0xc2, 0x02, 0x00, 0xcd, 0x41, 0xbf, + 0x18, 0xb2, 0xc3, 0x1e, 0x0e, 0x15, 0xee, 0x82, 0xca, 0xd8, 0x42, 0x4e, 0xb1, 0xa3, 0x17, 0xdf, + 0x85, 0xe3, 0xcb, 0xbc, 0x21, 0x1e, 0x7f, 0xb0, 0x98, 0x81, 0x52, 0x51, 0xd5, 0xcb, 0x8a, 0x5e, + 0x6c, 0x35, 0x4e, 0x5e, 0xd4, 0x01, 0x3c, 0x61, 0xef, 0xaf, 0x15, 0xdd, 0x86, 0x38, 0xfb, 0x1d, + 0x80, 0x67, 0x7b, 0x8e, 0x12, 0x28, 0x02, 0xa7, 0x56, 0x33, 0x39, 0x05, 0x67, 0xb7, 0x94, 0x95, + 0x4d, 0xbc, 0x91, 0xca, 0x29, 0xcb, 0x99, 0x95, 0xd4, 0xf6, 0x7a, 0x4e, 0x1a, 0x41, 0x3f, 0x83, + 0xd3, 0x5d, 0xb2, 0x95, 0x4d, 0xac, 0xa4, 0x71, 0x26, 0x95, 0xcb, 0x48, 0x00, 0x45, 0x61, 0xa4, + 0x87, 0x18, 0x67, 0xb6, 0xd6, 0x53, 0xe9, 0x8c, 0xe4, 0x41, 0xd3, 0xf0, 0x6c, 0x97, 0x3c, 0x9b, + 0x4b, 0xe5, 0xb6, 0xb3, 0x92, 0x17, 0x9d, 0x83, 0x3f, 0xe9, 0x12, 0xe1, 0x4c, 0x6a, 0x59, 0xf2, + 0xa1, 0x8b, 0x30, 0x76, 0x44, 0xb0, 0x92, 0xc1, 0x78, 0xed, 0xf6, 0xaa, 0xb2, 0xb9, 0x74, 0x33, + 0x93, 0xce, 0x65, 0xa5, 0xd1, 0x1e, 0x5a, 0x4b, 0x78, 0xf3, 0x56, 0xe6, 0xb6, 0x50, 0xce, 0xdc, + 0x4e, 0x67, 0xb2, 0x92, 0x7f, 0xfe, 0x7b, 0x08, 0xbd, 0xa9, 0xad, 0x35, 0xf4, 0x37, 0x0f, 0xf4, + 0x8b, 0xc9, 0x06, 0x0d, 0x3b, 0x03, 0x45, 0xe6, 0x06, 0x37, 0x70, 0xc6, 0xc5, 0x7f, 0x81, 0xe6, + 0xa7, 0xe1, 0x5b, 0xc5, 0x2b, 0xf7, 0xb4, 0x84, 0x6a, 0x9a, 0x94, 0xa9, 0xda, 0x6e, 0x22, 0xaf, + 0x52, 0x5d, 0x4b, 0xd4, 0x28, 0xb1, 0x2e, 0x75, 0x0a, 0x28, 0x53, 0xab, 0x05, 0xd5, 0x2a, 0x08, + 0x59, 0x9d, 0xd0, 0x84, 0x6e, 0x24, 0x74, 0x55, 0xa5, 0x09, 0xcd, 0xfe, 0xb3, 0x67, 0xe9, 0x8c, + 0xdc, 0xff, 0xe2, 0xeb, 0x07, 0x9e, 0xeb, 0xf1, 0x6b, 0xce, 0x4f, 0xda, 0x64, 0x2b, 0x27, 0x68, + 0xf2, 0x2f, 0x6e, 0xdf, 0x90, 0x5b, 0x9b, 0xfb, 0x3d, 0x7e, 0x1a, 0xd2, 0x05, 0x30, 0x8b, 0x5e, + 0x03, 0xe8, 0x5d, 0x25, 0x0c, 0x5d, 0x1a, 0x70, 0xe8, 0x14, 0xf1, 0x27, 0x86, 0x1a, 0x51, 0xe3, + 0xff, 0x05, 0x4f, 0x3e, 0xf1, 0xd8, 0x04, 0x6c, 0xf5, 0x22, 0xa0, 0x62, 0x54, 0x75, 0x66, 0xbc, + 0x95, 0x03, 0x57, 0x7c, 0x84, 0x06, 0x8b, 0xa8, 0x05, 0xce, 0xc2, 0x35, 0x74, 0xb5, 0x17, 0x0b, + 0xef, 0x0e, 0x5e, 0xc8, 0xf7, 0xd1, 0x0f, 0x00, 0xfa, 0xec, 0xf2, 0x45, 0x89, 0x41, 0xcb, 0x5c, + 0x50, 0x20, 0x0f, 0xd7, 0x15, 0xe2, 0xff, 0xfc, 0xb0, 0x1c, 0xfc, 0x1a, 0xcd, 0x0f, 0xcf, 0x01, + 0xfa, 0xb7, 0x07, 0x9e, 0x72, 0x46, 0x71, 0x34, 0xf4, 0xd4, 0x1e, 0xb9, 0x3c, 0x84, 0x85, 0xc3, + 0xc2, 0xa3, 0x0f, 0x52, 0x06, 0x5b, 0x91, 0x5b, 0xef, 0x51, 0x06, 0x5d, 0x8a, 0xfb, 0x76, 0x59, + 0x7c, 0x0b, 0xa0, 0x5f, 0xf4, 0xe1, 0x41, 0x9a, 0x43, 0x47, 0xc7, 0x8e, 0x4c, 0xc9, 0xe2, 0x03, + 0x8f, 0xec, 0x7e, 0xe0, 0x91, 0x33, 0x15, 0x93, 0x35, 0xe2, 0x0f, 0x3e, 0x48, 0xec, 0x8b, 0xb3, + 0xc7, 0x4f, 0xfe, 0x05, 0x30, 0x1b, 0xb9, 0xfb, 0xf8, 0x00, 0x78, 0x3e, 0x3f, 0x00, 0xbf, 0xec, + 0x1b, 0xa5, 0x78, 0x7f, 0x3f, 0x3f, 0x00, 0xa0, 0x79, 0x00, 0x12, 0x43, 0xbd, 0xf4, 0xef, 0x7f, + 0x16, 0xf6, 0x48, 0x60, 0xe9, 0x3f, 0xe0, 0xe9, 0xe2, 0x68, 0x1a, 0x6f, 0x2f, 0xaf, 0x3f, 0x7b, + 0x11, 0x1d, 0x79, 0xfe, 0x22, 0x3a, 0xf2, 0xea, 0x45, 0x14, 0xfc, 0xb5, 0x19, 0x05, 0x1f, 0x35, + 0xa3, 0xe0, 0x49, 0x33, 0x0a, 0x9e, 0x35, 0xa3, 0xe0, 0xab, 0x66, 0x14, 0xbc, 0x6c, 0x46, 0x47, + 0x5e, 0x35, 0xa3, 0xe0, 0x1f, 0x87, 0xd1, 0x91, 0xc7, 0x87, 0x51, 0xf0, 0xec, 0x30, 0x3a, 0xf2, + 0xfc, 0x30, 0x3a, 0xf2, 0xc7, 0x9d, 0x92, 0x61, 0xee, 0x96, 0xe4, 0xba, 0x61, 0x0f, 0xda, 0x96, + 0x2a, 0xd7, 0x68, 0x92, 0x3f, 0xd8, 0x3f, 0x3f, 0x13, 0xa6, 0x65, 0xd4, 0xf5, 0x02, 0xb1, 0x12, + 0xae, 0x38, 0x69, 0xe6, 0x4b, 0x46, 0x92, 0xdc, 0x63, 0xce, 0x97, 0xa7, 0xb7, 0x7e, 0x26, 0xcb, + 0xfb, 0xf9, 0x65, 0xfd, 0xea, 0xc7, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x0d, 0x4a, 0x76, 0x43, + 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/container_registry/public_crudapi.vesapi.go b/pbgo/extschema/schema/container_registry/public_crudapi.vesapi.go index 888ed643d..01c159564 100644 --- a/pbgo/extschema/schema/container_registry/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/container_registry/public_crudapi.vesapi.go @@ -2932,10 +2932,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2992,10 +2996,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3098,10 +3106,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/crl/crudapi/api.vesapi.go b/pbgo/extschema/schema/crl/crudapi/api.vesapi.go index a12acb816..04dc06c4b 100644 --- a/pbgo/extschema/schema/crl/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/crl/crudapi/api.vesapi.go @@ -3144,10 +3144,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/crl/object.pb.go b/pbgo/extschema/schema/crl/object.pb.go index eb2829303..0e72e9e58 100644 --- a/pbgo/extschema/schema/crl/object.pb.go +++ b/pbgo/extschema/schema/crl/object.pb.go @@ -233,43 +233,45 @@ func init() { } var fileDescriptor_2fe77017ca99657a = []byte{ - // 574 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xbf, 0x6f, 0xd3, 0x4e, - 0x14, 0xf7, 0x25, 0x55, 0x5a, 0x5d, 0xab, 0x7e, 0xfb, 0x35, 0x8b, 0x69, 0xe9, 0xa9, 0x84, 0xa5, - 0x03, 0x3e, 0xa3, 0x22, 0x04, 0xad, 0x10, 0x43, 0x0b, 0x74, 0x69, 0x85, 0x94, 0x32, 0xb1, 0x54, - 0xe7, 0xcb, 0x8b, 0x6b, 0xb0, 0x73, 0xd6, 0xdd, 0xd9, 0x34, 0x03, 0x12, 0x0b, 0x3b, 0x7f, 0x03, - 0x13, 0x42, 0xe2, 0x7f, 0xa0, 0x4c, 0x8c, 0x51, 0xa7, 0x8c, 0xc4, 0x59, 0x18, 0x2b, 0xfe, 0x02, - 0x94, 0x73, 0x1d, 0x9a, 0x34, 0x03, 0xca, 0xf6, 0x2e, 0x9f, 0x1f, 0xb9, 0xf7, 0xb9, 0xf7, 0x8c, - 0x49, 0x06, 0x8a, 0x86, 0xc2, 0x53, 0xfc, 0x04, 0x62, 0xe6, 0x71, 0x19, 0x79, 0xc2, 0x7f, 0x0d, - 0x5c, 0xd3, 0x44, 0x0a, 0x2d, 0xec, 0xff, 0x0b, 0x9c, 0x16, 0x38, 0xe5, 0x32, 0x5a, 0x75, 0x83, - 0x50, 0x9f, 0xa4, 0x3e, 0xe5, 0x22, 0xf6, 0x02, 0x11, 0x08, 0xcf, 0x30, 0xfd, 0xb4, 0x65, 0x4e, - 0xe6, 0x60, 0xaa, 0xc2, 0x61, 0x75, 0xfd, 0xfa, 0x3f, 0xe8, 0x4e, 0x02, 0xea, 0x12, 0x5e, 0x1b, - 0x87, 0x45, 0xa2, 0x43, 0xd1, 0x2e, 0xc1, 0x9b, 0xe3, 0xe0, 0x55, 0x5d, 0x7d, 0x1c, 0xca, 0x40, - 0x41, 0x3b, 0x1b, 0x97, 0xd7, 0x7f, 0x57, 0x71, 0xed, 0x85, 0xe9, 0xc6, 0xde, 0xc6, 0x0b, 0x31, - 0x68, 0xd6, 0x64, 0x9a, 0x39, 0x68, 0x03, 0x6d, 0x2e, 0x6e, 0xad, 0xd3, 0xf1, 0xd6, 0x0a, 0xe2, - 0x21, 0x68, 0xf6, 0xb2, 0x93, 0x40, 0x63, 0x44, 0xb7, 0x0f, 0xf0, 0x7f, 0xaa, 0xa3, 0x34, 0xc4, - 0xc7, 0x23, 0x87, 0x8a, 0x71, 0xb8, 0x33, 0xe1, 0x70, 0x64, 0x58, 0x13, 0x3e, 0xcb, 0x85, 0xf6, - 0xb0, 0x74, 0xf3, 0xf0, 0x9c, 0x4a, 0x80, 0x3b, 0x55, 0x63, 0xb1, 0x46, 0xaf, 0xe5, 0x4b, 0x8f, - 0x12, 0xe0, 0x46, 0x6a, 0x88, 0x3b, 0x5f, 0x2b, 0xdf, 0xcf, 0x9c, 0xca, 0x0a, 0x3a, 0x3f, 0x73, - 0x3e, 0x55, 0xf0, 0x43, 0x5c, 0xdd, 0x07, 0x6d, 0xdf, 0x6b, 0x3d, 0x38, 0xe5, 0xae, 0x02, 0x9e, - 0x4a, 0x88, 0x41, 0x9d, 0xb8, 0x3e, 0x53, 0x21, 0x77, 0x63, 0xd1, 0x0e, 0xb5, 0x90, 0x77, 0x37, - 0x32, 0x50, 0x6e, 0x28, 0xdc, 0x44, 0x8a, 0xd3, 0x8e, 0x2b, 0x81, 0x35, 0xf1, 0x36, 0x9e, 0x6f, - 0x40, 0x12, 0x31, 0x0e, 0x36, 0x9d, 0x2e, 0x4e, 0x15, 0x4c, 0x2a, 0xdf, 0xca, 0x50, 0x03, 0x7e, - 0x84, 0x6b, 0x7b, 0x12, 0x98, 0x9e, 0x49, 0xf9, 0x14, 0x22, 0x98, 0x49, 0x39, 0x77, 0x10, 0xaa, - 0x19, 0x1a, 0xad, 0x3f, 0xc7, 0x0b, 0x65, 0x82, 0xf6, 0x0e, 0x9e, 0x0f, 0xf8, 0xb1, 0xc9, 0xbb, - 0x78, 0xb2, 0xdb, 0x53, 0xf2, 0xde, 0x8f, 0x84, 0xcf, 0xa2, 0x51, 0xea, 0xb5, 0x80, 0x0f, 0xeb, - 0xfa, 0x00, 0xe1, 0xa5, 0x23, 0xcd, 0x74, 0xaa, 0xfe, 0x79, 0x84, 0x0a, 0xfa, 0x94, 0x11, 0x7a, - 0x86, 0x17, 0x8b, 0xad, 0x3a, 0x96, 0xd0, 0x52, 0x4e, 0x65, 0xa3, 0xba, 0xb9, 0xb8, 0x75, 0x6b, - 0xea, 0x00, 0x36, 0xa0, 0x35, 0x14, 0xef, 0xd6, 0xbe, 0xbc, 0xab, 0x72, 0x19, 0x35, 0xb0, 0x28, - 0x7f, 0x56, 0xf6, 0x63, 0x8c, 0xb9, 0x68, 0x37, 0x43, 0x33, 0xe3, 0xce, 0xdc, 0x54, 0x97, 0xbd, - 0x92, 0x60, 0xae, 0x70, 0x85, 0xbf, 0x73, 0xe3, 0xfc, 0xc9, 0x0a, 0x5e, 0xc6, 0x4b, 0xe5, 0xad, - 0x68, 0x1a, 0x36, 0x77, 0x3f, 0xa0, 0x6e, 0x9f, 0x58, 0xbd, 0x3e, 0xb1, 0x2e, 0xfa, 0x04, 0xbd, - 0xcf, 0x09, 0xfa, 0x9c, 0x13, 0xf4, 0x23, 0x27, 0xa8, 0x9b, 0x13, 0xd4, 0xcb, 0x09, 0xfa, 0x99, - 0x13, 0xf4, 0x2b, 0x27, 0xd6, 0x45, 0x4e, 0xd0, 0xc7, 0x01, 0xb1, 0xbe, 0x0d, 0x08, 0xea, 0x0e, - 0x88, 0xd5, 0x1b, 0x10, 0xeb, 0xd5, 0x7e, 0x20, 0x92, 0x37, 0x01, 0xcd, 0x44, 0xa4, 0x41, 0x4a, - 0x46, 0x53, 0xe5, 0x99, 0xa2, 0x25, 0x64, 0x3c, 0x7c, 0x94, 0x2c, 0x6c, 0x82, 0x74, 0x4b, 0xd8, - 0x4b, 0xfc, 0x40, 0x78, 0x70, 0xaa, 0x2f, 0x97, 0xf6, 0xef, 0x27, 0xc1, 0xaf, 0x99, 0x8d, 0xbd, - 0xff, 0x27, 0x00, 0x00, 0xff, 0xff, 0x88, 0x9a, 0x95, 0x40, 0x90, 0x04, 0x00, 0x00, + // 593 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4f, 0x4f, 0xd4, 0x4e, + 0x18, 0xc7, 0x3b, 0x94, 0xdf, 0x42, 0x06, 0xc2, 0x0f, 0xeb, 0xa5, 0x82, 0x4c, 0x70, 0xbd, 0x70, + 0xb0, 0x6d, 0x82, 0xf1, 0x20, 0x31, 0x1e, 0x40, 0xe5, 0x02, 0x31, 0x59, 0x4c, 0x54, 0x2e, 0x64, + 0x3a, 0x7d, 0xb6, 0x54, 0xdb, 0x9d, 0x66, 0x66, 0x5a, 0xd9, 0x83, 0x89, 0x17, 0xef, 0x26, 0xbe, + 0x09, 0xe3, 0xab, 0x10, 0xbd, 0x78, 0x32, 0x84, 0x13, 0x47, 0xb7, 0x7b, 0xf1, 0xc8, 0x4b, 0x30, + 0x3b, 0xa5, 0x0b, 0x5d, 0x36, 0xc6, 0x83, 0xdc, 0x66, 0xfa, 0xfd, 0x3e, 0x9f, 0xce, 0x9f, 0xef, + 0x3c, 0x98, 0xe4, 0x20, 0xdd, 0x88, 0x7b, 0x92, 0xed, 0x43, 0x42, 0x3d, 0x26, 0x62, 0x8f, 0xfb, + 0xaf, 0x80, 0x29, 0x37, 0x15, 0x5c, 0x71, 0xeb, 0x5a, 0xa9, 0xbb, 0xa5, 0xee, 0x32, 0x11, 0x2f, + 0x38, 0x61, 0xa4, 0xf6, 0x33, 0xdf, 0x65, 0x3c, 0xf1, 0x42, 0x1e, 0x72, 0x4f, 0x3b, 0xfd, 0xac, + 0xad, 0x67, 0x7a, 0xa2, 0x47, 0x25, 0x61, 0x61, 0xe9, 0xf2, 0x1f, 0x54, 0x37, 0x05, 0x79, 0x26, + 0x2f, 0xd6, 0x65, 0x9e, 0xaa, 0x88, 0x77, 0x2a, 0xf1, 0x46, 0x5d, 0xbc, 0x58, 0xd7, 0xac, 0x4b, + 0x39, 0x48, 0xe8, 0xe4, 0xf5, 0xf2, 0xe6, 0xc7, 0xff, 0x70, 0xe3, 0xa9, 0xde, 0x8d, 0x75, 0x1f, + 0x4f, 0x27, 0xa0, 0x68, 0x40, 0x15, 0xb5, 0xd1, 0x32, 0x5a, 0x99, 0x59, 0x5d, 0x72, 0xeb, 0x5b, + 0x2b, 0x8d, 0xdb, 0xa0, 0xe8, 0xb3, 0x6e, 0x0a, 0xad, 0xa1, 0xdd, 0xda, 0xc2, 0xff, 0xcb, 0xae, + 0x54, 0x90, 0xec, 0x0d, 0x09, 0x13, 0x9a, 0x70, 0x7b, 0x84, 0xb0, 0xa3, 0x5d, 0x23, 0x9c, 0xb9, + 0xb2, 0x76, 0xbb, 0xa2, 0x79, 0x78, 0x52, 0xa6, 0xc0, 0x6c, 0x53, 0x23, 0x16, 0xdd, 0x4b, 0xe7, + 0xeb, 0xee, 0xa4, 0xc0, 0x74, 0xa9, 0x36, 0xae, 0xfd, 0x30, 0xbf, 0x1e, 0xda, 0x13, 0xf3, 0xe8, + 0xf8, 0xd0, 0xfe, 0x66, 0xe2, 0x97, 0xd8, 0xdc, 0x04, 0x65, 0xb5, 0xda, 0xf7, 0x0e, 0x98, 0x23, + 0x81, 0x65, 0x02, 0x12, 0x90, 0xfb, 0x8e, 0x4f, 0x65, 0xc4, 0x9c, 0x84, 0x77, 0x22, 0xc5, 0xc5, + 0x9d, 0xe5, 0x51, 0x59, 0x2a, 0xda, 0x09, 0xa8, 0x08, 0xce, 0x1d, 0x39, 0x48, 0x27, 0xe2, 0x4e, + 0x2a, 0xf8, 0x41, 0xd7, 0x11, 0x40, 0x03, 0xfc, 0x02, 0x4f, 0xb5, 0x20, 0x8d, 0x29, 0x03, 0x6b, + 0x7b, 0x3c, 0x3e, 0x93, 0xf0, 0x27, 0x76, 0x29, 0xd7, 0xc0, 0x6f, 0x44, 0xa4, 0x00, 0x3f, 0xc7, + 0x8d, 0x0d, 0x01, 0x54, 0x5d, 0x05, 0xf8, 0x11, 0xc4, 0xf0, 0xef, 0xc1, 0xbb, 0x78, 0x72, 0x2b, + 0x92, 0x57, 0x72, 0xce, 0xcd, 0x27, 0x78, 0xba, 0xba, 0x62, 0x6b, 0x0d, 0x4f, 0x85, 0x6c, 0x4f, + 0x07, 0xa2, 0xcc, 0xd4, 0xad, 0x31, 0x81, 0xd8, 0x8c, 0xb9, 0x4f, 0xe3, 0x61, 0x2c, 0x1a, 0x21, + 0x1b, 0x8c, 0x9b, 0x7d, 0x84, 0x67, 0x77, 0x14, 0x55, 0x99, 0xfc, 0xeb, 0x8c, 0x97, 0xf6, 0x31, + 0x19, 0x7f, 0x8c, 0x67, 0xca, 0x67, 0xbf, 0x27, 0xa0, 0x2d, 0xed, 0x89, 0x65, 0x73, 0x65, 0x66, + 0xf5, 0xe6, 0xd8, 0x17, 0xd2, 0x82, 0xf6, 0xa0, 0x78, 0xbd, 0xf1, 0xf9, 0xad, 0xc9, 0x44, 0xdc, + 0xc2, 0xbc, 0xfa, 0x2c, 0xad, 0x07, 0x18, 0x33, 0xde, 0x09, 0x22, 0xfd, 0x08, 0xed, 0xc9, 0xb1, + 0x94, 0x8d, 0xca, 0xa0, 0x97, 0x70, 0xc1, 0xbf, 0x76, 0xfd, 0xf8, 0xe1, 0x3c, 0x9e, 0xc3, 0xb3, + 0xd5, 0xaa, 0xdc, 0x2c, 0x0a, 0xd6, 0xdf, 0xa3, 0xa3, 0x1e, 0x31, 0x4e, 0x7a, 0xc4, 0x38, 0xed, + 0x11, 0xf4, 0xae, 0x20, 0xe8, 0x53, 0x41, 0xd0, 0xf7, 0x82, 0xa0, 0xa3, 0x82, 0xa0, 0x93, 0x82, + 0xa0, 0x9f, 0x05, 0x41, 0xbf, 0x0a, 0x62, 0x9c, 0x16, 0x04, 0x7d, 0xe8, 0x13, 0xe3, 0x4b, 0x9f, + 0xa0, 0xa3, 0x3e, 0x31, 0x4e, 0xfa, 0xc4, 0xd8, 0xdd, 0x0c, 0x79, 0xfa, 0x3a, 0x74, 0x73, 0x1e, + 0x2b, 0x10, 0x82, 0xba, 0x99, 0xf4, 0xf4, 0xa0, 0xcd, 0x45, 0x32, 0xb8, 0x94, 0x3c, 0x0a, 0x40, + 0x38, 0x95, 0xec, 0xa5, 0x7e, 0xc8, 0x3d, 0x38, 0x50, 0x67, 0x5d, 0xe5, 0xbc, 0x67, 0xf9, 0x0d, + 0xdd, 0x52, 0xee, 0xfe, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x34, 0x92, 0xb6, 0xf7, 0x31, 0x05, 0x00, + 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/crl/public_crudapi.pb.go b/pbgo/extschema/schema/crl/public_crudapi.pb.go index e2b77367c..37a35bea5 100644 --- a/pbgo/extschema/schema/crl/public_crudapi.pb.go +++ b/pbgo/extschema/schema/crl/public_crudapi.pb.go @@ -1062,107 +1062,108 @@ func init() { } var fileDescriptor_4a47c431b87d8c98 = []byte{ - // 1592 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1b, 0x45, - 0x1b, 0xcf, 0xd8, 0x8e, 0x63, 0x8f, 0xf3, 0xb1, 0x9d, 0xb7, 0x4d, 0x37, 0x7e, 0xdb, 0xad, 0xeb, - 0xf4, 0xad, 0xa2, 0xa8, 0xde, 0xed, 0x1b, 0x40, 0x22, 0x51, 0x15, 0x70, 0x1c, 0xdb, 0x4a, 0x49, - 0x9b, 0xb2, 0x76, 0x23, 0xc4, 0x65, 0xb5, 0x5e, 0x8f, 0x9d, 0xa5, 0xb6, 0x77, 0xd9, 0x1d, 0x3b, - 0x89, 0xaa, 0x48, 0xa8, 0x37, 0x6e, 0x20, 0x2e, 0x08, 0x71, 0x40, 0x42, 0x48, 0x08, 0x0e, 0x1c, - 0x41, 0xca, 0xa5, 0xb7, 0x56, 0x3d, 0xa0, 0x0a, 0x0e, 0xf4, 0x48, 0x1d, 0x24, 0xca, 0x89, 0x8a, - 0xbf, 0x00, 0xed, 0xcc, 0xae, 0xeb, 0x8f, 0xcd, 0x67, 0x7b, 0xf2, 0xce, 0x3c, 0xcf, 0xef, 0xb7, - 0xbf, 0x67, 0xe6, 0x79, 0x9e, 0x9d, 0x31, 0xbc, 0xdc, 0xc2, 0xb6, 0xa8, 0x1b, 0x92, 0xad, 0x6d, - 0xe0, 0xba, 0x2a, 0x69, 0x56, 0x4d, 0x32, 0x9b, 0xa5, 0x9a, 0xae, 0x29, 0x9a, 0xd5, 0x2c, 0xab, - 0xa6, 0x2e, 0x9a, 0x96, 0x41, 0x0c, 0x74, 0x8a, 0xf9, 0x89, 0xcc, 0x4f, 0xd4, 0xac, 0x5a, 0x3c, - 0x55, 0xd5, 0xc9, 0x46, 0xb3, 0x24, 0x6a, 0x46, 0x5d, 0xaa, 0x1a, 0x55, 0x43, 0xa2, 0x9e, 0xa5, - 0x66, 0x85, 0x8e, 0xe8, 0x80, 0x3e, 0x31, 0x86, 0xf8, 0xb9, 0xaa, 0x61, 0x54, 0x6b, 0x58, 0x52, - 0x4d, 0x5d, 0x52, 0x1b, 0x0d, 0x83, 0xa8, 0x44, 0x37, 0x1a, 0xb6, 0x6b, 0xfd, 0xaf, 0x6b, 0xed, - 0x70, 0xe0, 0xba, 0x49, 0xb6, 0x5d, 0xa3, 0x30, 0x28, 0xd2, 0x28, 0x7d, 0x80, 0x35, 0xe2, 0xda, - 0xcf, 0x0f, 0xda, 0xc9, 0xb6, 0x89, 0x3d, 0xee, 0x78, 0xaf, 0x19, 0x5b, 0x96, 0x61, 0x75, 0xde, - 0xdb, 0x6b, 0x33, 0xcc, 0x6e, 0x51, 0x53, 0xbd, 0xc6, 0x6e, 0xce, 0x64, 0xaf, 0xa9, 0x85, 0x6d, - 0xdc, 0x68, 0xf5, 0xc1, 0x13, 0x7d, 0x3e, 0x3a, 0xde, 0x54, 0x7a, 0x3c, 0x92, 0x5f, 0x03, 0x38, - 0x96, 0xb1, 0xb0, 0x4a, 0xb0, 0x8c, 0x3f, 0x6c, 0x62, 0x9b, 0xa0, 0xb7, 0x60, 0xa4, 0x8e, 0x89, - 0x5a, 0x56, 0x89, 0xca, 0x83, 0x04, 0x98, 0x89, 0xcd, 0x4d, 0x8b, 0xbd, 0x4b, 0xbf, 0x46, 0x23, - 0x67, 0xa8, 0x1b, 0x98, 0xa8, 0xc5, 0x6d, 0x13, 0xcb, 0x1d, 0x10, 0xca, 0xc1, 0x90, 0x6d, 0x62, - 0x8d, 0x0f, 0x50, 0xf0, 0x45, 0x71, 0x60, 0xdf, 0x44, 0x06, 0x2d, 0x98, 0x58, 0x73, 0xa0, 0x4b, - 0x13, 0x5f, 0xec, 0x8c, 0x3a, 0x08, 0xb1, 0xaa, 0x29, 0xce, 0xaf, 0x4c, 0xf1, 0x0b, 0xd1, 0x47, - 0x8b, 0x61, 0xf6, 0xaa, 0xe4, 0xdf, 0x00, 0x8e, 0x7b, 0x2a, 0x6d, 0xd3, 0x68, 0xd8, 0x18, 0x5d, - 0x1b, 0x90, 0x99, 0xf0, 0x95, 0x99, 0xc7, 0xc4, 0x47, 0xe3, 0x1a, 0x9c, 0xb0, 0xb7, 0x6d, 0x82, - 0xeb, 0x4a, 0x87, 0x24, 0x48, 0x49, 0x2e, 0xf7, 0x91, 0x14, 0xa8, 0xd7, 0x20, 0xd5, 0x38, 0x83, - 0xdf, 0xf0, 0x08, 0x33, 0x3d, 0x41, 0x0b, 0x3e, 0x41, 0xe7, 0x31, 0x39, 0x46, 0xc4, 0xbf, 0x01, - 0x38, 0x2e, 0x63, 0xb3, 0xa6, 0x6a, 0x9d, 0x8d, 0x79, 0x7b, 0x20, 0xe2, 0x4b, 0xbe, 0x11, 0xbb, - 0x30, 0x9f, 0xa8, 0xf3, 0x3d, 0x22, 0x93, 0x3e, 0x22, 0x5d, 0xec, 0x21, 0x42, 0x91, 0x04, 0x39, - 0x0b, 0xdb, 0x46, 0xd3, 0xd2, 0xb0, 0xd2, 0xc2, 0x96, 0xad, 0x1b, 0x0d, 0xba, 0x7e, 0xd1, 0xa5, - 0xd0, 0xb3, 0x5d, 0x00, 0xe4, 0x09, 0xcf, 0xba, 0xce, 0x8c, 0xdd, 0x91, 0x9d, 0x82, 0x13, 0x9d, - 0xc0, 0xd8, 0x5e, 0x26, 0x3f, 0x05, 0x10, 0xe6, 0x31, 0xf1, 0x02, 0x3d, 0x07, 0xa3, 0x0d, 0xb5, - 0x8e, 0x6d, 0x53, 0xd5, 0x30, 0x8d, 0x34, 0x2a, 0xbf, 0x98, 0x40, 0x08, 0x86, 0x9c, 0x01, 0x0d, - 0x22, 0x2a, 0xd3, 0x67, 0xf4, 0x2e, 0x74, 0xde, 0x48, 0xc9, 0x94, 0x8a, 0x61, 0xd5, 0x55, 0x42, - 0xe5, 0x8c, 0xcf, 0xcd, 0xf8, 0x6f, 0x84, 0xf7, 0xe6, 0x1c, 0xf5, 0xcd, 0x18, 0x65, 0x2c, 0x8f, - 0x5b, 0x3d, 0x73, 0xc9, 0xbf, 0x86, 0x61, 0xac, 0xcb, 0x13, 0xa5, 0x61, 0x4c, 0xa3, 0x19, 0x48, - 0x5f, 0xe0, 0x2e, 0x61, 0x62, 0xdf, 0xe4, 0x76, 0x63, 0x91, 0x21, 0x03, 0x39, 0xa4, 0x68, 0x19, - 0x8e, 0x5a, 0x2c, 0x72, 0xc6, 0x11, 0xdc, 0xb7, 0x40, 0x7a, 0x77, 0x5e, 0x8e, 0xb9, 0x30, 0xca, - 0xe2, 0xb7, 0xf6, 0xa1, 0x03, 0xd6, 0xbe, 0xa7, 0x52, 0x86, 0x5f, 0x45, 0xa5, 0x8c, 0xbc, 0x92, - 0x4a, 0x09, 0xbf, 0x44, 0xa5, 0xa0, 0x45, 0x18, 0xb6, 0x89, 0x4a, 0x9a, 0x36, 0xff, 0xd5, 0x97, - 0x20, 0x11, 0x9c, 0x89, 0xcd, 0x5d, 0xf0, 0x21, 0x2a, 0x50, 0x17, 0x26, 0x69, 0x29, 0x78, 0x7f, - 0x07, 0xc8, 0x2e, 0x0a, 0xad, 0xc0, 0x53, 0x16, 0xae, 0x60, 0xcb, 0xd2, 0x1b, 0x55, 0x85, 0x75, - 0x72, 0x9b, 0x8f, 0x50, 0xa2, 0x73, 0xfb, 0x14, 0x55, 0x85, 0x46, 0xc3, 0x75, 0x60, 0x6c, 0xde, - 0x46, 0xeb, 0x90, 0x2f, 0xe3, 0x1a, 0x26, 0xb8, 0xac, 0x30, 0x1b, 0x2e, 0x77, 0x18, 0xa3, 0x47, - 0x60, 0x9c, 0x74, 0xd1, 0xb2, 0x0b, 0xf6, 0x78, 0xdf, 0x83, 0x53, 0x65, 0xdd, 0x56, 0x4b, 0x35, - 0x3f, 0x62, 0x78, 0x04, 0xe2, 0xb3, 0x1e, 0xbc, 0x8f, 0xb9, 0xab, 0x18, 0xaf, 0x87, 0x22, 0x80, - 0x0b, 0x24, 0xbf, 0x01, 0x30, 0xb6, 0xaa, 0xdb, 0x47, 0x2c, 0xc0, 0x8b, 0x70, 0xb4, 0xa6, 0x96, - 0x70, 0x4d, 0xa9, 0xe8, 0x35, 0x82, 0x2d, 0xb7, 0x10, 0x63, 0x74, 0x2e, 0x47, 0xa7, 0xd0, 0x34, - 0x1c, 0xb3, 0xb0, 0x69, 0x58, 0x44, 0xa9, 0xe8, 0xb8, 0x56, 0xb6, 0xf9, 0x60, 0x22, 0x38, 0x13, - 0x95, 0x47, 0xd9, 0x64, 0x8e, 0xce, 0xa1, 0xab, 0xf0, 0xb4, 0xeb, 0xc4, 0x36, 0xc5, 0xf3, 0x0d, - 0x51, 0x5f, 0xc4, 0x6c, 0x6c, 0x0b, 0x19, 0x22, 0xf9, 0x79, 0x18, 0x72, 0x4c, 0x27, 0x2b, 0xca, - 0x15, 0x82, 0xeb, 0x68, 0x12, 0x86, 0x09, 0x6e, 0xa8, 0x0d, 0x42, 0x33, 0x2a, 0x2a, 0xbb, 0xa3, - 0x13, 0x74, 0x11, 0x0e, 0x06, 0x9b, 0x7a, 0x99, 0x35, 0x32, 0xd9, 0x79, 0x44, 0x09, 0x18, 0x2b, - 0x63, 0x5b, 0xb3, 0x74, 0xfa, 0xcd, 0xe4, 0x63, 0x2c, 0xd2, 0xae, 0x29, 0x14, 0x87, 0x11, 0x6f, - 0x99, 0xf9, 0xd1, 0x04, 0x98, 0x89, 0xc8, 0x9d, 0x31, 0xca, 0xc3, 0x30, 0x5d, 0x14, 0x16, 0x52, - 0x6c, 0x4e, 0xf2, 0x49, 0xd1, 0xfe, 0x70, 0xc4, 0x55, 0x8a, 0xc8, 0x36, 0x88, 0xb5, 0x2d, 0xbb, - 0x70, 0xb4, 0x0e, 0x63, 0x5d, 0xe7, 0x15, 0x77, 0xf3, 0x5f, 0x3f, 0x0a, 0x5b, 0xfa, 0x05, 0x8c, - 0x51, 0x76, 0x13, 0xa1, 0x79, 0x08, 0x8d, 0xcd, 0x06, 0xb6, 0x14, 0xe7, 0x60, 0xc0, 0x47, 0x69, - 0x41, 0xc6, 0xfb, 0x68, 0xd7, 0x75, 0xbc, 0xe9, 0x65, 0x54, 0x94, 0x7a, 0x3b, 0x33, 0x3d, 0x4d, - 0x65, 0xec, 0x55, 0x34, 0x95, 0xf1, 0x97, 0x6a, 0x2a, 0xf3, 0x30, 0x52, 0xc5, 0x84, 0x76, 0x08, - 0xb7, 0x3d, 0x1d, 0xd2, 0x58, 0xe4, 0x91, 0x2a, 0x1b, 0xa0, 0x0c, 0x84, 0x6e, 0xfe, 0xd9, 0x98, - 0xb8, 0x3d, 0xe0, 0x68, 0xcd, 0x24, 0xca, 0x70, 0x05, 0x4c, 0xe2, 0xf3, 0x30, 0xd6, 0xb5, 0x71, - 0x4e, 0x26, 0xdd, 0xc1, 0xdb, 0x6e, 0xd6, 0x39, 0x8f, 0xe8, 0x34, 0x1c, 0x6e, 0xa9, 0xb5, 0xa6, - 0x97, 0x70, 0x6c, 0xb0, 0x10, 0x78, 0x13, 0xc4, 0x17, 0x21, 0xd7, 0xbf, 0x4b, 0xc7, 0xc1, 0x5f, - 0x0f, 0x45, 0x86, 0xb9, 0x70, 0xf2, 0x2e, 0x1c, 0xed, 0xde, 0x7c, 0x34, 0x0f, 0x87, 0x75, 0x82, - 0xeb, 0x36, 0xcf, 0xba, 0xe3, 0xf4, 0x11, 0x92, 0x45, 0x66, 0x08, 0x74, 0x15, 0x86, 0xd9, 0x01, - 0x95, 0x0f, 0x50, 0x2c, 0xdf, 0x87, 0xcd, 0x3a, 0x46, 0xba, 0x86, 0xae, 0x5f, 0xf2, 0x0e, 0x1c, - 0x5b, 0xa6, 0x4d, 0xec, 0xe4, 0x5f, 0xf0, 0x19, 0xc8, 0x55, 0x54, 0xbd, 0xa6, 0xe8, 0x95, 0x4e, - 0xb3, 0xa3, 0x85, 0x18, 0x91, 0xc7, 0x9d, 0xf9, 0x95, 0x8a, 0xd7, 0xc4, 0x66, 0xff, 0x01, 0xf0, - 0x8c, 0xef, 0x27, 0x1c, 0xc5, 0xe1, 0x64, 0x3e, 0x5b, 0x54, 0xe4, 0xc2, 0x2d, 0x25, 0xb7, 0x26, - 0xdf, 0x48, 0x17, 0x95, 0xe5, 0x6c, 0x2e, 0x7d, 0x7b, 0xb5, 0xc8, 0x0d, 0xa1, 0xf3, 0x70, 0xaa, - 0xcf, 0x96, 0x5b, 0x93, 0x95, 0x8c, 0x9c, 0x4d, 0x17, 0xb3, 0x1c, 0x40, 0x02, 0x8c, 0xfb, 0x98, - 0xe5, 0xec, 0xad, 0xd5, 0x74, 0x26, 0xcb, 0x05, 0xd0, 0x14, 0x3c, 0xd3, 0x67, 0x2f, 0x14, 0xd3, - 0xc5, 0xdb, 0x05, 0x2e, 0x88, 0xce, 0xc2, 0xff, 0xf4, 0x99, 0xe4, 0x6c, 0x7a, 0x99, 0x0b, 0xa1, - 0x4b, 0x30, 0x31, 0x60, 0xc8, 0x65, 0x65, 0x79, 0xe5, 0x66, 0x5e, 0x59, 0x5b, 0xba, 0x9e, 0xcd, - 0x14, 0x0b, 0xdc, 0xb0, 0x8f, 0xd7, 0x92, 0xbc, 0xf6, 0x4e, 0xf6, 0x26, 0x73, 0xce, 0xde, 0xcc, - 0x64, 0x0b, 0x5c, 0x78, 0xee, 0xcf, 0x11, 0x18, 0x4c, 0xdf, 0x5a, 0x41, 0x3f, 0x02, 0x18, 0x66, - 0x07, 0x0c, 0x74, 0xe8, 0xd9, 0x23, 0x7e, 0xf1, 0x00, 0x0f, 0xf7, 0xe4, 0xb5, 0xd1, 0x7e, 0xc0, - 0xa7, 0x2a, 0x6f, 0x6c, 0x69, 0x29, 0x1b, 0x6b, 0x4d, 0x0b, 0xd7, 0xb1, 0xbd, 0x91, 0x2a, 0xa9, - 0xb6, 0xae, 0xa5, 0x9a, 0x36, 0xb6, 0xae, 0xb4, 0xb0, 0x9d, 0xd2, 0x8d, 0x94, 0x69, 0x19, 0x5b, - 0xdb, 0xa9, 0x4d, 0x4b, 0x27, 0xf8, 0xde, 0xaf, 0x7f, 0x7c, 0x16, 0xf8, 0x7f, 0xf2, 0x8a, 0x7b, - 0x49, 0x93, 0x3a, 0xdb, 0x6a, 0x4b, 0x77, 0xbd, 0x62, 0x16, 0x3b, 0x93, 0x3b, 0xce, 0x55, 0xc8, - 0x5e, 0x00, 0xb3, 0xe8, 0x07, 0x00, 0x83, 0x79, 0x4c, 0xd0, 0xf9, 0xfd, 0x4e, 0x64, 0x4c, 0xb3, - 0x70, 0xf0, 0x81, 0x2d, 0xa9, 0x3f, 0xfc, 0x29, 0x00, 0xda, 0x0f, 0x78, 0xc9, 0x5f, 0x74, 0xdd, - 0x68, 0xe8, 0xc4, 0xe8, 0xd3, 0x6d, 0x61, 0xb5, 0x4c, 0x65, 0x5f, 0x41, 0xb3, 0x7e, 0xb2, 0xfb, - 0xd4, 0xb2, 0x89, 0x1d, 0xf4, 0x3d, 0x80, 0x21, 0xa7, 0x46, 0x90, 0xb0, 0x6f, 0xf1, 0x30, 0xcd, - 0x17, 0x0e, 0x29, 0xae, 0x64, 0xe9, 0x65, 0x44, 0xff, 0x0f, 0x4d, 0x1f, 0x41, 0x34, 0x7a, 0x04, - 0xe0, 0x88, 0x7b, 0x6c, 0x44, 0x87, 0x1f, 0x29, 0xe3, 0xc9, 0x83, 0x5c, 0x5c, 0xd9, 0x5b, 0x27, - 0x4b, 0x8e, 0x74, 0xfc, 0xda, 0x71, 0x92, 0xa3, 0xcf, 0xb2, 0xe3, 0x24, 0xcb, 0x77, 0x00, 0x86, - 0x59, 0x47, 0xf1, 0x4d, 0xf3, 0x9e, 0x66, 0x13, 0x9f, 0x14, 0xd9, 0xcd, 0x5d, 0xf4, 0x6e, 0xee, - 0x62, 0xd6, 0xb9, 0xb9, 0x27, 0x2b, 0x27, 0x93, 0x2f, 0xcd, 0x1e, 0x23, 0x49, 0x16, 0xc0, 0x6c, - 0x7c, 0xf5, 0xfe, 0x2e, 0x08, 0xfc, 0xb2, 0x0b, 0xf8, 0x41, 0xa1, 0xec, 0x6b, 0xf1, 0x64, 0x17, - 0x80, 0xf6, 0x2e, 0x10, 0x0e, 0xfe, 0xa6, 0xdc, 0xfb, 0x99, 0x0f, 0x70, 0x60, 0xe9, 0x63, 0xf0, - 0x68, 0x71, 0x38, 0x23, 0xdf, 0x5e, 0x5e, 0x7d, 0xfc, 0x54, 0x18, 0x7a, 0xf2, 0x54, 0x18, 0x7a, - 0xfe, 0x54, 0x00, 0x1f, 0xb5, 0x05, 0xf0, 0x6d, 0x5b, 0x00, 0x0f, 0xdb, 0x02, 0x78, 0xdc, 0x16, - 0xc0, 0xef, 0x6d, 0x01, 0x3c, 0x6b, 0x0b, 0x43, 0xcf, 0xdb, 0x02, 0xf8, 0x64, 0x4f, 0x18, 0xba, - 0xbf, 0x27, 0x80, 0xc7, 0x7b, 0xc2, 0xd0, 0x93, 0x3d, 0x61, 0xe8, 0xfd, 0x7c, 0xd5, 0x30, 0xef, - 0x54, 0xc5, 0x96, 0xe1, 0x9c, 0xc5, 0x2c, 0x55, 0x6c, 0xda, 0x12, 0x7d, 0x70, 0x2e, 0x1d, 0x4e, - 0xb8, 0x2d, 0xbd, 0x8c, 0xad, 0x94, 0x67, 0x96, 0xcc, 0x52, 0xd5, 0x90, 0xf0, 0x16, 0x71, 0xff, - 0x24, 0x78, 0xf1, 0x17, 0x46, 0x29, 0x4c, 0x57, 0xf4, 0xb5, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, - 0x83, 0x2a, 0xc7, 0xce, 0xa3, 0x11, 0x00, 0x00, + // 1612 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcb, 0x6f, 0xdb, 0x46, + 0x1a, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x60, 0x66, 0x13, 0x47, 0xd6, 0x26, 0x8c, 0x22, 0x67, + 0x03, 0xc3, 0x88, 0xa8, 0xac, 0x77, 0x17, 0x58, 0x1b, 0x81, 0x77, 0x65, 0x59, 0x12, 0x9c, 0x38, + 0xb1, 0x97, 0x52, 0x8c, 0xc5, 0x5e, 0x08, 0x8a, 0x1a, 0x29, 0xdc, 0x48, 0x22, 0x97, 0x33, 0x92, + 0x23, 0x04, 0x06, 0x16, 0x69, 0x51, 0xb4, 0x3d, 0xb5, 0x28, 0x50, 0x14, 0x45, 0x0f, 0x05, 0x8a, + 0x02, 0xfd, 0x13, 0x0a, 0xf8, 0x92, 0x5b, 0xd3, 0x00, 0x2d, 0xd2, 0x16, 0x68, 0x73, 0x6c, 0xe4, + 0x1e, 0x92, 0x53, 0x83, 0xfe, 0x05, 0x05, 0x67, 0x48, 0x45, 0x0f, 0xfa, 0x95, 0xc7, 0x49, 0xe4, + 0x7c, 0xdf, 0xef, 0xc7, 0xef, 0x37, 0xdf, 0x83, 0x23, 0xc2, 0x0b, 0x2d, 0x4c, 0x24, 0xdd, 0x48, + 0x11, 0xed, 0x26, 0xae, 0xab, 0x29, 0xcd, 0xaa, 0xa5, 0xcc, 0x66, 0xa9, 0xa6, 0x6b, 0x8a, 0x66, + 0x35, 0xcb, 0xaa, 0xa9, 0x4b, 0xa6, 0x65, 0x50, 0x03, 0x1d, 0xe7, 0x7e, 0x12, 0xf7, 0x93, 0x34, + 0xab, 0x16, 0x4b, 0x56, 0x75, 0x7a, 0xb3, 0x59, 0x92, 0x34, 0xa3, 0x9e, 0xaa, 0x1a, 0x55, 0x23, + 0xc5, 0x3c, 0x4b, 0xcd, 0x0a, 0xbb, 0x63, 0x37, 0xec, 0x8a, 0x33, 0xc4, 0x4e, 0x57, 0x0d, 0xa3, + 0x5a, 0xc3, 0x29, 0xd5, 0xd4, 0x53, 0x6a, 0xa3, 0x61, 0x50, 0x95, 0xea, 0x46, 0x83, 0x38, 0xd6, + 0x3f, 0x3a, 0xd6, 0x2e, 0x07, 0xae, 0x9b, 0xb4, 0xed, 0x18, 0xc5, 0xe1, 0x20, 0x8d, 0xd2, 0x7f, + 0xb1, 0x46, 0x1d, 0xfb, 0x99, 0x61, 0x3b, 0x6d, 0x9b, 0xd8, 0xe5, 0x8e, 0xf5, 0x9b, 0xb1, 0x65, + 0x19, 0x56, 0xf7, 0xb9, 0xfd, 0x36, 0xc3, 0xec, 0x0d, 0x6a, 0xba, 0xdf, 0xd8, 0xcb, 0x99, 0xe8, + 0x37, 0xb5, 0x30, 0xc1, 0x8d, 0xd6, 0x00, 0x3c, 0x3e, 0xe0, 0xa3, 0xe3, 0x2d, 0xa5, 0xcf, 0x23, + 0xf1, 0x19, 0x80, 0xe3, 0x19, 0x0b, 0xab, 0x14, 0xcb, 0xf8, 0x7f, 0x4d, 0x4c, 0x28, 0xfa, 0x07, + 0x0c, 0xd5, 0x31, 0x55, 0xcb, 0x2a, 0x55, 0xa3, 0x20, 0x0e, 0x66, 0x23, 0xf3, 0x33, 0x52, 0xff, + 0xd6, 0xaf, 0x33, 0xe5, 0x1c, 0x75, 0x0d, 0x53, 0xb5, 0xd8, 0x36, 0xb1, 0xdc, 0x05, 0xa1, 0x1c, + 0x0c, 0x10, 0x13, 0x6b, 0x51, 0x1f, 0x03, 0x9f, 0x93, 0x86, 0xf2, 0x26, 0x71, 0x68, 0xc1, 0xc4, + 0x9a, 0x0d, 0x5d, 0x9e, 0xfc, 0x78, 0x7b, 0xcc, 0x46, 0x48, 0x55, 0x4d, 0xb1, 0x7f, 0x65, 0x86, + 0x5f, 0x0c, 0x3f, 0x58, 0x0a, 0xf2, 0x47, 0x25, 0x7e, 0x05, 0x70, 0xc2, 0x8d, 0x92, 0x98, 0x46, + 0x83, 0x60, 0x74, 0x79, 0x28, 0xcc, 0xb8, 0x67, 0x98, 0x79, 0x4c, 0x3d, 0x62, 0x5c, 0x87, 0x93, + 0xa4, 0x4d, 0x28, 0xae, 0x2b, 0x5d, 0x12, 0x3f, 0x23, 0xb9, 0x30, 0x40, 0x52, 0x60, 0x5e, 0xc3, + 0x54, 0x13, 0x1c, 0x7e, 0xcd, 0x25, 0xcc, 0xf4, 0x89, 0x16, 0x3d, 0x44, 0xe7, 0x31, 0x3d, 0x82, + 0xe2, 0x9f, 0x00, 0x9c, 0x90, 0xb1, 0x59, 0x53, 0xb5, 0x6e, 0x62, 0xfe, 0x39, 0xa4, 0xf8, 0xbc, + 0xa7, 0x62, 0x07, 0xe6, 0xa1, 0x3a, 0xdf, 0x17, 0x64, 0xc2, 0x23, 0x48, 0x07, 0x7b, 0x40, 0xa0, + 0x28, 0x05, 0x05, 0x0b, 0x13, 0xa3, 0x69, 0x69, 0x58, 0x69, 0x61, 0x8b, 0xe8, 0x46, 0x83, 0xed, + 0x5f, 0x78, 0x39, 0xf0, 0x64, 0x07, 0x00, 0x79, 0xd2, 0xb5, 0x6e, 0x72, 0x63, 0xaf, 0xb2, 0xe3, + 0x70, 0xb2, 0x2b, 0x8c, 0xe7, 0x32, 0xf1, 0x3e, 0x80, 0x30, 0x8f, 0xa9, 0x2b, 0xf4, 0x34, 0x0c, + 0x37, 0xd4, 0x3a, 0x26, 0xa6, 0xaa, 0x61, 0xa6, 0x34, 0x2c, 0x3f, 0x5f, 0x40, 0x08, 0x06, 0xec, + 0x1b, 0x26, 0x22, 0x2c, 0xb3, 0x6b, 0xf4, 0x2f, 0x68, 0x3f, 0x91, 0x91, 0x29, 0x15, 0xc3, 0xaa, + 0xab, 0x94, 0x85, 0x33, 0x31, 0x3f, 0xeb, 0x9d, 0x08, 0xf7, 0xc9, 0x39, 0xe6, 0x9b, 0x31, 0xca, + 0x58, 0x9e, 0xb0, 0xfa, 0xd6, 0x12, 0x4f, 0x47, 0x61, 0xa4, 0xc7, 0x13, 0xa5, 0x61, 0x44, 0x63, + 0x15, 0xc8, 0x1e, 0xe0, 0x6c, 0x61, 0x7c, 0xcf, 0xe2, 0x76, 0xb4, 0xc8, 0x90, 0x83, 0x6c, 0x52, + 0xb4, 0x02, 0xc7, 0x2c, 0xae, 0x9c, 0x73, 0xf8, 0xf7, 0x6c, 0x90, 0xfe, 0xcc, 0xcb, 0x11, 0x07, + 0xc6, 0x58, 0xbc, 0xf6, 0x3e, 0xb0, 0xcf, 0xde, 0xf7, 0x75, 0xca, 0xe8, 0xab, 0xe8, 0x94, 0x63, + 0xaf, 0xa4, 0x53, 0x82, 0x2f, 0xd1, 0x29, 0x68, 0x09, 0x06, 0x09, 0x55, 0x69, 0x93, 0x44, 0x3f, + 0xfd, 0x04, 0xc4, 0xfd, 0xb3, 0x91, 0xf9, 0xb3, 0x1e, 0x44, 0x05, 0xe6, 0xc2, 0x43, 0x5a, 0xf6, + 0xdf, 0xdb, 0x06, 0xb2, 0x83, 0x42, 0xab, 0xf0, 0xb8, 0x85, 0x2b, 0xd8, 0xb2, 0xf4, 0x46, 0x55, + 0xe1, 0x93, 0x9c, 0x44, 0x43, 0x8c, 0xe8, 0xf4, 0x1e, 0x4d, 0x55, 0x61, 0x6a, 0x84, 0x2e, 0x8c, + 0xaf, 0x13, 0xb4, 0x09, 0xa3, 0x65, 0x5c, 0xc3, 0x14, 0x97, 0x15, 0x6e, 0xc3, 0xe5, 0x2e, 0x63, + 0xf8, 0x10, 0x8c, 0x53, 0x0e, 0x5a, 0x76, 0xc0, 0x2e, 0xef, 0xbf, 0xe1, 0x74, 0x59, 0x27, 0x6a, + 0xa9, 0xe6, 0x45, 0x0c, 0x0f, 0x41, 0x7c, 0xca, 0x85, 0x0f, 0x30, 0xf7, 0x34, 0xe3, 0x95, 0x40, + 0x08, 0x08, 0xbe, 0xc4, 0xe7, 0x00, 0x46, 0xd6, 0x74, 0x72, 0xc8, 0x06, 0x3c, 0x07, 0xc7, 0x6a, + 0x6a, 0x09, 0xd7, 0x94, 0x8a, 0x5e, 0xa3, 0xd8, 0x72, 0x1a, 0x31, 0xc2, 0xd6, 0x72, 0x6c, 0x09, + 0xcd, 0xc0, 0x71, 0x0b, 0x9b, 0x86, 0x45, 0x95, 0x8a, 0x8e, 0x6b, 0x65, 0x12, 0xf5, 0xc7, 0xfd, + 0xb3, 0x61, 0x79, 0x8c, 0x2f, 0xe6, 0xd8, 0x1a, 0xba, 0x04, 0x4f, 0x38, 0x4e, 0x3c, 0x29, 0xae, + 0x6f, 0x80, 0xf9, 0x22, 0x6e, 0xe3, 0x29, 0xe4, 0x88, 0xc4, 0x47, 0x41, 0x28, 0xf0, 0x38, 0x79, + 0x53, 0xae, 0x52, 0x5c, 0x47, 0x53, 0x30, 0x48, 0x71, 0x43, 0x6d, 0x50, 0x56, 0x51, 0x61, 0xd9, + 0xb9, 0x7b, 0x81, 0x29, 0x22, 0x40, 0x7f, 0x53, 0x2f, 0xf3, 0x41, 0x26, 0xdb, 0x97, 0x28, 0x0e, + 0x23, 0x65, 0x4c, 0x34, 0x4b, 0x67, 0xef, 0xcc, 0x68, 0x84, 0x2b, 0xed, 0x59, 0x42, 0x31, 0x18, + 0x72, 0xb7, 0x39, 0x3a, 0x16, 0x07, 0xb3, 0x21, 0xb9, 0x7b, 0x8f, 0xf2, 0x30, 0xc8, 0x36, 0x85, + 0x4b, 0x8a, 0xcc, 0xa7, 0x3c, 0x4a, 0x74, 0x50, 0x8e, 0xb4, 0xc6, 0x10, 0xd9, 0x06, 0xb5, 0xda, + 0xb2, 0x03, 0x47, 0x9b, 0x30, 0xd2, 0x73, 0x5e, 0x71, 0x92, 0xff, 0xd7, 0xc3, 0xb0, 0xa5, 0x9f, + 0xc3, 0x38, 0x65, 0x2f, 0x11, 0x5a, 0x80, 0xd0, 0xd8, 0x6a, 0x60, 0x4b, 0xb1, 0x0f, 0x06, 0xd1, + 0x30, 0x6b, 0xc8, 0xd8, 0x00, 0xed, 0xa6, 0x8e, 0xb7, 0xdc, 0x8a, 0x0a, 0x33, 0x6f, 0x7b, 0xa5, + 0x6f, 0xa8, 0x8c, 0xbf, 0x8a, 0xa1, 0x32, 0xf1, 0x52, 0x43, 0x65, 0x01, 0x86, 0xaa, 0x98, 0xb2, + 0x09, 0xe1, 0x8c, 0xa7, 0x03, 0x06, 0x8b, 0x7c, 0xac, 0xca, 0x6f, 0x50, 0x06, 0x42, 0xa7, 0xfe, + 0x08, 0xa6, 0xce, 0x0c, 0x38, 0xdc, 0x30, 0x09, 0x73, 0x5c, 0x01, 0xd3, 0xd8, 0x02, 0x8c, 0xf4, + 0x24, 0xce, 0xae, 0xa4, 0x5b, 0xb8, 0xed, 0x54, 0x9d, 0x7d, 0x89, 0x4e, 0xc0, 0xd1, 0x96, 0x5a, + 0x6b, 0xba, 0x05, 0xc7, 0x6f, 0x16, 0x7d, 0x7f, 0x07, 0xb1, 0x25, 0x28, 0x0c, 0x66, 0xe9, 0x28, + 0xf8, 0x2b, 0x81, 0xd0, 0xa8, 0x10, 0x4c, 0xdc, 0x81, 0x63, 0xbd, 0xc9, 0x47, 0x0b, 0x70, 0x54, + 0xa7, 0xb8, 0x4e, 0xa2, 0x7c, 0x3a, 0xce, 0x1c, 0xa2, 0x58, 0x64, 0x8e, 0x40, 0x97, 0x60, 0x90, + 0x1f, 0x50, 0xa3, 0x3e, 0x86, 0x8d, 0x0e, 0x60, 0xb3, 0xb6, 0x91, 0xed, 0xa1, 0xe3, 0x97, 0xb8, + 0x05, 0xc7, 0x57, 0xd8, 0x10, 0x7b, 0xf1, 0x37, 0xf8, 0x2c, 0x14, 0x2a, 0xaa, 0x5e, 0x53, 0xf4, + 0x4a, 0x77, 0xd8, 0xb1, 0x46, 0x0c, 0xc9, 0x13, 0xf6, 0xfa, 0x6a, 0xc5, 0x1d, 0x62, 0x73, 0xbf, + 0x01, 0x78, 0xd2, 0xf3, 0x15, 0x8e, 0x62, 0x70, 0x2a, 0x9f, 0x2d, 0x2a, 0x72, 0x61, 0x43, 0xc9, + 0xad, 0xcb, 0xd7, 0xd2, 0x45, 0x65, 0x25, 0x9b, 0x4b, 0xdf, 0x58, 0x2b, 0x0a, 0x23, 0xe8, 0x0c, + 0x9c, 0x1e, 0xb0, 0xe5, 0xd6, 0x65, 0x25, 0x23, 0x67, 0xd3, 0xc5, 0xac, 0x00, 0x90, 0x08, 0x63, + 0x1e, 0x66, 0x39, 0xbb, 0xb1, 0x96, 0xce, 0x64, 0x05, 0x1f, 0x9a, 0x86, 0x27, 0x07, 0xec, 0x85, + 0x62, 0xba, 0x78, 0xa3, 0x20, 0xf8, 0xd1, 0x29, 0xf8, 0x87, 0x01, 0x93, 0x9c, 0x4d, 0xaf, 0x08, + 0x01, 0x74, 0x1e, 0xc6, 0x87, 0x0c, 0xb9, 0xac, 0x2c, 0xaf, 0x5e, 0xcf, 0x2b, 0xeb, 0xcb, 0x57, + 0xb2, 0x99, 0x62, 0x41, 0x18, 0xf5, 0xf0, 0x5a, 0x96, 0xd7, 0xaf, 0x66, 0xaf, 0x73, 0xe7, 0xec, + 0xf5, 0x4c, 0xb6, 0x20, 0x04, 0xe7, 0xdf, 0x0e, 0x43, 0x7f, 0x7a, 0x63, 0x15, 0xfd, 0x08, 0x60, + 0x90, 0x1f, 0x30, 0xd0, 0x81, 0x67, 0x8f, 0xd8, 0xb9, 0x7d, 0x3c, 0x9c, 0x93, 0xd7, 0x5b, 0xa0, + 0xf3, 0x55, 0xf4, 0x6a, 0xe5, 0x6f, 0xb7, 0xb5, 0x24, 0xc1, 0x5a, 0xd3, 0xc2, 0x75, 0x4c, 0x6e, + 0x26, 0x4b, 0x2a, 0xd1, 0xb5, 0x64, 0x93, 0x60, 0xeb, 0xe2, 0xa0, 0x89, 0x50, 0xb5, 0x51, 0x56, + 0xad, 0x32, 0xb7, 0xb6, 0x30, 0x49, 0xea, 0x46, 0xd2, 0xb4, 0x8c, 0xdb, 0xed, 0xe4, 0x96, 0xa5, + 0x53, 0x7c, 0xf7, 0x87, 0x5f, 0x3e, 0xf0, 0xfd, 0x39, 0x71, 0xd1, 0xf9, 0x0f, 0x97, 0xea, 0x66, + 0x9d, 0xa4, 0xee, 0xb8, 0xbd, 0x2e, 0x75, 0x17, 0xb7, 0xed, 0x7f, 0x4a, 0x64, 0x11, 0xcc, 0xa1, + 0xef, 0x00, 0xf4, 0xe7, 0x31, 0x45, 0x67, 0xf6, 0x3a, 0xb0, 0x71, 0x49, 0xe2, 0xfe, 0xe7, 0xb9, + 0xc4, 0xbb, 0xe0, 0xfe, 0x97, 0x3e, 0x5b, 0xd3, 0x86, 0xb7, 0xa6, 0xba, 0xd1, 0xd0, 0xa9, 0xb1, + 0x8f, 0x2c, 0xd7, 0xa1, 0x4f, 0x99, 0x85, 0xd5, 0x32, 0x13, 0x76, 0x11, 0xcd, 0x79, 0x09, 0x1b, + 0xd0, 0xc3, 0x17, 0xb6, 0xd1, 0x37, 0x00, 0x06, 0xec, 0x26, 0x43, 0xe2, 0x9e, 0xdd, 0xc7, 0x55, + 0x9d, 0x3d, 0xa0, 0x3b, 0x13, 0x6f, 0xbc, 0x5e, 0x59, 0x7f, 0x42, 0x33, 0x87, 0x90, 0x85, 0x9e, + 0x02, 0x78, 0xcc, 0x39, 0x99, 0xa2, 0x83, 0x4f, 0xad, 0xb1, 0xc4, 0x7e, 0x2e, 0x8e, 0xb0, 0x0f, + 0x5f, 0x4b, 0xfd, 0xa5, 0x63, 0x97, 0x8f, 0x52, 0x7f, 0x03, 0x96, 0x6d, 0xbb, 0x1e, 0xbf, 0x06, + 0x30, 0xc8, 0x67, 0x9a, 0x67, 0xa3, 0xf5, 0x8d, 0xbb, 0xd8, 0x94, 0xc4, 0xbf, 0x1d, 0x48, 0xee, + 0xb7, 0x03, 0x29, 0x5b, 0x37, 0x69, 0x3b, 0xf1, 0xe6, 0x6b, 0x51, 0x97, 0x9a, 0x3b, 0x42, 0x11, + 0x2e, 0x82, 0xb9, 0xd8, 0xda, 0xbd, 0x1d, 0xe0, 0xfb, 0x7e, 0x07, 0x44, 0x87, 0x75, 0xf0, 0xd7, + 0xd9, 0xa3, 0x1d, 0x00, 0x3a, 0x3b, 0x40, 0xdc, 0xff, 0xa5, 0x77, 0xf7, 0xdb, 0xa8, 0x4f, 0x00, + 0xcb, 0xef, 0x80, 0x07, 0x4b, 0xa3, 0x19, 0xf9, 0xc6, 0xca, 0xda, 0xc3, 0xc7, 0xe2, 0xc8, 0xa3, + 0xc7, 0xe2, 0xc8, 0xb3, 0xc7, 0x22, 0xf8, 0x7f, 0x47, 0x04, 0x5f, 0x74, 0x44, 0x70, 0xbf, 0x23, + 0x82, 0x87, 0x1d, 0x11, 0xfc, 0xdc, 0x11, 0xc1, 0x93, 0x8e, 0x38, 0xf2, 0xac, 0x23, 0x82, 0xf7, + 0x76, 0xc5, 0x91, 0x7b, 0xbb, 0x22, 0x78, 0xb8, 0x2b, 0x8e, 0x3c, 0xda, 0x15, 0x47, 0xfe, 0x93, + 0xaf, 0x1a, 0xe6, 0xad, 0xaa, 0xd4, 0x32, 0xec, 0xc3, 0xa2, 0xa5, 0x4a, 0x4d, 0x92, 0x62, 0x17, + 0xf6, 0xbf, 0x22, 0x5b, 0x6e, 0x4b, 0x2f, 0x63, 0x2b, 0xe9, 0x9a, 0x53, 0x66, 0xa9, 0x6a, 0xa4, + 0xf0, 0x6d, 0xea, 0x7c, 0xc5, 0x78, 0xfe, 0x8d, 0xa5, 0x14, 0x64, 0x1b, 0xfe, 0x97, 0xdf, 0x03, + 0x00, 0x00, 0xff, 0xff, 0x42, 0x67, 0x76, 0xb6, 0x44, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/crl/public_crudapi.vesapi.go b/pbgo/extschema/schema/crl/public_crudapi.vesapi.go index 9829baa39..6a3e7c178 100644 --- a/pbgo/extschema/schema/crl/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/crl/public_crudapi.vesapi.go @@ -2918,10 +2918,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2978,10 +2982,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3084,10 +3092,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dc_cluster_group/crudapi/api.vesapi.go b/pbgo/extschema/schema/dc_cluster_group/crudapi/api.vesapi.go index ebdedd1b1..807374438 100644 --- a/pbgo/extschema/schema/dc_cluster_group/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dc_cluster_group/crudapi/api.vesapi.go @@ -3129,10 +3129,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dc_cluster_group/object.pb.go b/pbgo/extschema/schema/dc_cluster_group/object.pb.go index 9b393a730..a2ea74b8c 100644 --- a/pbgo/extschema/schema/dc_cluster_group/object.pb.go +++ b/pbgo/extschema/schema/dc_cluster_group/object.pb.go @@ -246,47 +246,48 @@ func init() { } var fileDescriptor_8247ec486da45cb4 = []byte{ - // 636 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x4f, 0xdb, 0x3e, - 0x18, 0xc6, 0xeb, 0xb6, 0x14, 0x64, 0x10, 0xff, 0x2a, 0xfc, 0xa5, 0x65, 0x6c, 0x58, 0xa8, 0xbb, - 0xa0, 0x6d, 0x49, 0x26, 0xa6, 0x1d, 0x60, 0x68, 0x93, 0x00, 0xa9, 0xd2, 0x04, 0x9a, 0xd4, 0x72, - 0xe2, 0x12, 0x25, 0xce, 0xdb, 0x90, 0xd1, 0xd4, 0x96, 0xed, 0x04, 0x38, 0x4c, 0x9a, 0xf6, 0x09, - 0x26, 0x3e, 0xc5, 0x34, 0xed, 0x43, 0xc0, 0x4e, 0x3b, 0x22, 0x4e, 0x1c, 0x47, 0x7a, 0xd9, 0x91, - 0x8f, 0x30, 0xe1, 0x10, 0x44, 0xbb, 0x6e, 0x4c, 0xdc, 0xec, 0x3c, 0xbf, 0xe7, 0x89, 0xed, 0xd7, - 0x7e, 0xf1, 0x93, 0x14, 0xa4, 0x1d, 0x31, 0x47, 0xd2, 0x1d, 0x88, 0x3d, 0x27, 0xa0, 0x2e, 0xed, - 0x26, 0x52, 0x81, 0x70, 0x43, 0xc1, 0x12, 0xee, 0x30, 0xff, 0x1d, 0x50, 0x65, 0x73, 0xc1, 0x14, - 0x33, 0x48, 0x0e, 0xdb, 0x39, 0x6c, 0x0f, 0xc3, 0xb3, 0x56, 0x18, 0xa9, 0x9d, 0xc4, 0xb7, 0x29, - 0x8b, 0x9d, 0x90, 0x85, 0xcc, 0xd1, 0x36, 0x3f, 0xe9, 0xe8, 0x99, 0x9e, 0xe8, 0x51, 0x1e, 0x37, - 0xfb, 0xf8, 0x96, 0x7f, 0xab, 0x03, 0x0e, 0xf2, 0x8a, 0x7d, 0x30, 0xc8, 0x32, 0xae, 0x22, 0xd6, - 0x2b, 0xc4, 0xb9, 0x41, 0x91, 0xa7, 0xca, 0xbd, 0xe9, 0xbd, 0x3f, 0x28, 0xdf, 0x94, 0x1a, 0x83, - 0x52, 0x0a, 0x12, 0x7a, 0xe9, 0x60, 0x7a, 0xe3, 0xb0, 0x8a, 0x6b, 0x6f, 0xf5, 0x31, 0x18, 0x4b, - 0x78, 0x22, 0x06, 0xe5, 0x05, 0x9e, 0xf2, 0x4c, 0x34, 0x8f, 0x16, 0x26, 0x17, 0xe7, 0xec, 0xc1, - 0x33, 0xc9, 0xc1, 0x4d, 0x50, 0xde, 0xd6, 0x01, 0x87, 0xd6, 0x35, 0x6e, 0x6c, 0xe0, 0xff, 0xe4, - 0x81, 0x54, 0x10, 0xbb, 0xd7, 0x09, 0x65, 0x9d, 0xf0, 0x68, 0x28, 0xa1, 0xad, 0xa9, 0xa1, 0x9c, - 0xe9, 0xdc, 0xbb, 0x59, 0xa4, 0xad, 0xe0, 0xaa, 0xe4, 0x40, 0xcd, 0x8a, 0x8e, 0x58, 0xb0, 0xff, - 0x5e, 0x18, 0xbb, 0xcd, 0x81, 0xea, 0x1c, 0xed, 0x5a, 0x3e, 0x2a, 0x7f, 0x7c, 0x5d, 0xcb, 0x13, - 0xbf, 0x1d, 0x9b, 0xe5, 0x3a, 0x3a, 0x3d, 0x36, 0xbf, 0x96, 0xf1, 0x12, 0xae, 0x34, 0x41, 0x19, - 0x8b, 0x9d, 0x17, 0xfb, 0xd4, 0x92, 0x40, 0x13, 0x01, 0x31, 0xc8, 0x1d, 0xcb, 0xf7, 0x64, 0x44, - 0xad, 0x98, 0xf5, 0x22, 0xc5, 0xc4, 0xd3, 0xf9, 0x14, 0xa4, 0x15, 0x31, 0xab, 0x07, 0x6a, 0x8f, - 0x89, 0x5d, 0x4b, 0x80, 0x17, 0xe0, 0x97, 0x78, 0xbc, 0x05, 0xbc, 0xeb, 0x51, 0x30, 0x9e, 0x8d, - 0xb6, 0x27, 0x12, 0x7e, 0xf7, 0xee, 0x89, 0x48, 0x01, 0x5e, 0xc6, 0xb5, 0x35, 0x01, 0x9e, 0xba, - 0xa3, 0x77, 0x1d, 0xba, 0x70, 0x47, 0x6f, 0x75, 0x23, 0x92, 0x77, 0xda, 0x70, 0xa3, 0x8d, 0x27, - 0x8a, 0x43, 0x35, 0x9a, 0x78, 0x3c, 0xa4, 0xae, 0xae, 0x47, 0x5e, 0x52, 0xfb, 0xb6, 0x7a, 0x34, - 0xbb, 0xcc, 0xf7, 0xba, 0xd7, 0x55, 0xa9, 0x85, 0xf4, 0x72, 0xdc, 0x38, 0x2d, 0xe3, 0xa9, 0xb6, - 0xf2, 0x54, 0x22, 0xff, 0xf9, 0xbe, 0xe5, 0xf8, 0x88, 0xfb, 0xd6, 0xc2, 0x93, 0xf9, 0xdb, 0x75, - 0x05, 0x74, 0xa4, 0x59, 0x9e, 0xaf, 0x2c, 0x4c, 0x2e, 0x3e, 0x1c, 0x79, 0x5b, 0x5b, 0xd0, 0xb9, - 0x34, 0xaf, 0xce, 0x7c, 0x79, 0x5f, 0x1f, 0x5e, 0x6a, 0x0b, 0xb3, 0x82, 0x91, 0xc6, 0x0a, 0xc6, - 0x94, 0xf5, 0x82, 0x48, 0xbf, 0x0e, 0xb3, 0x32, 0x32, 0x72, 0xad, 0x00, 0xf4, 0x7a, 0x6e, 0xf0, - 0xc6, 0x36, 0xbe, 0x37, 0x9c, 0xee, 0x4a, 0xbd, 0x7c, 0x73, 0x6c, 0xe4, 0x4b, 0x58, 0xa7, 0x6b, - 0x39, 0xdc, 0xbc, 0x64, 0xf3, 0x9d, 0xb6, 0xfe, 0x0f, 0x46, 0x7c, 0x5d, 0x9e, 0x39, 0x7d, 0x55, - 0xc7, 0xd3, 0x78, 0xaa, 0xd8, 0xbe, 0x9d, 0x44, 0xc1, 0x9b, 0xea, 0x44, 0xb5, 0x3e, 0xb6, 0x7a, - 0x88, 0x4e, 0xce, 0x49, 0xe9, 0xec, 0x9c, 0x94, 0x2e, 0xce, 0x09, 0xfa, 0x90, 0x11, 0xf4, 0x39, - 0x23, 0xe8, 0x7b, 0x46, 0xd0, 0x49, 0x46, 0xd0, 0x59, 0x46, 0xd0, 0x8f, 0x8c, 0xa0, 0x9f, 0x19, - 0x29, 0x5d, 0x64, 0x04, 0x7d, 0xea, 0x93, 0xd2, 0x51, 0x9f, 0xa0, 0x93, 0x3e, 0x29, 0x9d, 0xf5, - 0x49, 0x69, 0x7b, 0x2b, 0x64, 0x7c, 0x37, 0xb4, 0x53, 0xd6, 0x55, 0x20, 0x84, 0x67, 0x27, 0xd2, - 0xd1, 0x83, 0x0e, 0x13, 0xb1, 0xc5, 0x05, 0x4b, 0xa3, 0x00, 0x84, 0x55, 0xc8, 0x0e, 0xf7, 0x43, - 0xe6, 0xc0, 0xbe, 0xba, 0x6a, 0x28, 0x7f, 0x68, 0x6d, 0x7e, 0x4d, 0xb7, 0x96, 0xe7, 0xbf, 0x02, - 0x00, 0x00, 0xff, 0xff, 0x8a, 0xe8, 0x84, 0xf5, 0x7f, 0x05, 0x00, 0x00, + // 653 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4e, 0xd4, 0x40, + 0x18, 0xc7, 0xb7, 0xbb, 0xcb, 0x42, 0x06, 0x82, 0x9b, 0x62, 0x62, 0x45, 0x99, 0x90, 0xf5, 0x42, + 0xd4, 0xb6, 0x09, 0xc6, 0x83, 0x84, 0x68, 0x02, 0x24, 0x9b, 0x18, 0x08, 0xc9, 0x2e, 0x17, 0xd1, + 0xa4, 0x99, 0x4e, 0xbf, 0x2d, 0x95, 0xed, 0x4e, 0x33, 0x33, 0x2d, 0x70, 0x30, 0x31, 0x3e, 0x81, + 0xf1, 0x29, 0x8c, 0x57, 0x5f, 0x40, 0x3c, 0x79, 0x31, 0x21, 0x9c, 0x38, 0xba, 0xdd, 0x8b, 0x47, + 0x1e, 0xc1, 0x30, 0xa5, 0xc8, 0x36, 0x2b, 0x78, 0xe1, 0x36, 0xed, 0xff, 0xf7, 0xfd, 0x3a, 0x9d, + 0x99, 0x6f, 0xd0, 0xa3, 0x04, 0x84, 0x15, 0x30, 0x5b, 0xd0, 0x1d, 0x08, 0x89, 0xed, 0x51, 0x87, + 0x76, 0x63, 0x21, 0x81, 0x3b, 0x3e, 0x67, 0x71, 0x64, 0x33, 0xf7, 0x2d, 0x50, 0x69, 0x45, 0x9c, + 0x49, 0xa6, 0xe3, 0x0c, 0xb6, 0x32, 0xd8, 0x2a, 0xc2, 0xb3, 0xa6, 0x1f, 0xc8, 0x9d, 0xd8, 0xb5, + 0x28, 0x0b, 0x6d, 0x9f, 0xf9, 0xcc, 0x56, 0x65, 0x6e, 0xdc, 0x51, 0x4f, 0xea, 0x41, 0x8d, 0x32, + 0xdd, 0xec, 0xc3, 0x6b, 0xbe, 0x2d, 0x0f, 0x22, 0x10, 0xe7, 0xec, 0xbd, 0x61, 0x96, 0x45, 0x32, + 0x60, 0xbd, 0x3c, 0x9c, 0x1b, 0x0e, 0xa3, 0x44, 0x3a, 0x97, 0x6b, 0xef, 0x0e, 0xc7, 0x97, 0xa3, + 0xc6, 0x70, 0x94, 0x80, 0x80, 0x5e, 0x32, 0x6c, 0x6f, 0x7c, 0x1d, 0x43, 0xb5, 0x4d, 0xb5, 0x0c, + 0xfa, 0x33, 0x34, 0x11, 0x82, 0x24, 0x1e, 0x91, 0xc4, 0xd0, 0xe6, 0xb5, 0x85, 0xc9, 0xc5, 0x39, + 0x6b, 0x78, 0x4d, 0x32, 0x70, 0x03, 0x24, 0xd9, 0x3a, 0x88, 0xa0, 0x75, 0x81, 0xeb, 0xeb, 0xe8, + 0x96, 0x38, 0x10, 0x12, 0x42, 0xe7, 0xc2, 0x50, 0x56, 0x86, 0x07, 0x05, 0x43, 0x5b, 0x51, 0x05, + 0xcf, 0x74, 0x56, 0xbb, 0x91, 0xdb, 0x96, 0x51, 0x55, 0x44, 0x40, 0x8d, 0x8a, 0x52, 0x2c, 0x58, + 0x57, 0x6f, 0x8c, 0xd5, 0x8e, 0x80, 0x2a, 0x8f, 0xaa, 0x5a, 0xea, 0x57, 0x3e, 0xbc, 0xa8, 0x65, + 0xc6, 0xef, 0x87, 0x46, 0xb9, 0xae, 0x1d, 0x1f, 0x1a, 0x3f, 0x2b, 0xe8, 0x35, 0xaa, 0x34, 0x41, + 0xea, 0x5b, 0x9d, 0xa7, 0xfb, 0xd4, 0x14, 0x40, 0x63, 0x0e, 0x21, 0x88, 0x1d, 0xd3, 0x25, 0x22, + 0xa0, 0x66, 0xc8, 0x7a, 0x81, 0x64, 0xfc, 0xf1, 0x7c, 0x31, 0x16, 0x92, 0xf4, 0x3c, 0xc2, 0xbd, + 0xbf, 0x44, 0x02, 0xc2, 0x0c, 0x98, 0xd9, 0x03, 0xb9, 0xc7, 0xf8, 0xae, 0xc9, 0x81, 0x78, 0x68, + 0x1b, 0x8d, 0xb7, 0x20, 0xea, 0x12, 0x0a, 0xfa, 0xe6, 0xe8, 0x0f, 0xc4, 0x02, 0xae, 0xb2, 0x67, + 0x71, 0x41, 0xbd, 0xc7, 0x03, 0x09, 0xe8, 0x15, 0xaa, 0xad, 0x72, 0x20, 0xf2, 0x66, 0xd4, 0x6b, + 0xd0, 0x85, 0x9b, 0x50, 0xbf, 0x41, 0xd5, 0xf5, 0x40, 0xdc, 0xd0, 0x7a, 0x37, 0xda, 0x68, 0x22, + 0xdf, 0x75, 0xbd, 0x89, 0xc6, 0x7d, 0xea, 0xa8, 0x03, 0x93, 0x9d, 0x39, 0xeb, 0xba, 0x03, 0xd3, + 0xec, 0x32, 0x97, 0x74, 0x2f, 0x8e, 0x4d, 0xcd, 0xa7, 0x67, 0xe3, 0xc6, 0x71, 0x19, 0x4d, 0xb5, + 0x25, 0x91, 0xb1, 0xf8, 0xef, 0x86, 0xc8, 0xf0, 0x11, 0x0d, 0xd1, 0x42, 0x93, 0xd9, 0xe5, 0xe2, + 0x70, 0xe8, 0x08, 0xa3, 0x3c, 0x5f, 0x59, 0x98, 0x5c, 0xbc, 0x3f, 0xb2, 0x9d, 0x5a, 0xd0, 0x39, + 0x2b, 0x5e, 0x99, 0xf9, 0xf2, 0xae, 0x5e, 0x9c, 0x6a, 0x0b, 0xb1, 0x9c, 0x11, 0xfa, 0x32, 0x42, + 0x94, 0xf5, 0xbc, 0x40, 0xb5, 0xaf, 0x51, 0x19, 0xa9, 0x5c, 0xcd, 0x01, 0x35, 0x9f, 0x4b, 0xbc, + 0xbe, 0x8d, 0xee, 0x14, 0xed, 0x8e, 0x50, 0xd3, 0x37, 0xc6, 0x46, 0xb6, 0xea, 0x1a, 0x5d, 0xcd, + 0xe0, 0xe6, 0x19, 0x9b, 0xfd, 0x69, 0xeb, 0xb6, 0x37, 0xe2, 0xed, 0xd2, 0xcc, 0xf1, 0xf3, 0x3a, + 0x9a, 0x46, 0x53, 0xf9, 0xef, 0x5b, 0x71, 0xe0, 0xbd, 0xac, 0x4e, 0x54, 0xeb, 0x63, 0x2b, 0x9f, + 0xb4, 0xa3, 0x3e, 0x2e, 0x9d, 0xf4, 0x71, 0xe9, 0xb4, 0x8f, 0xb5, 0xf7, 0x29, 0xd6, 0x3e, 0xa7, + 0x58, 0xfb, 0x91, 0x62, 0xed, 0x28, 0xc5, 0xda, 0x49, 0x8a, 0xb5, 0x5f, 0x29, 0xd6, 0x7e, 0xa7, + 0xb8, 0x74, 0x9a, 0x62, 0xed, 0xe3, 0x00, 0x97, 0xbe, 0x0d, 0xb0, 0x76, 0x34, 0xc0, 0xa5, 0x93, + 0x01, 0x2e, 0x6d, 0x6f, 0xf9, 0x2c, 0xda, 0xf5, 0xad, 0x84, 0x75, 0x25, 0x70, 0x4e, 0xac, 0x58, + 0xd8, 0x6a, 0xd0, 0x61, 0x3c, 0x34, 0x23, 0xce, 0x92, 0xc0, 0x03, 0x6e, 0xe6, 0xb1, 0x1d, 0xb9, + 0x3e, 0xb3, 0x61, 0x5f, 0x9e, 0xdf, 0x78, 0xff, 0xb8, 0x7b, 0xdd, 0x9a, 0xba, 0xfb, 0x9e, 0xfc, + 0x09, 0x00, 0x00, 0xff, 0xff, 0xa5, 0x33, 0xdd, 0xc9, 0x20, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/dc_cluster_group/public_crudapi.pb.go b/pbgo/extschema/schema/dc_cluster_group/public_crudapi.pb.go index 0f13b32da..181ed17d3 100644 --- a/pbgo/extschema/schema/dc_cluster_group/public_crudapi.pb.go +++ b/pbgo/extschema/schema/dc_cluster_group/public_crudapi.pb.go @@ -1058,109 +1058,110 @@ func init() { } var fileDescriptor_68ff14bdb8f76378 = []byte{ - // 1624 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0xdb, 0x46, - 0x16, 0xf6, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xc3, 0xcc, 0x26, 0x8e, 0xac, 0x4d, 0x08, 0xad, 0x92, - 0x5d, 0x18, 0x76, 0x44, 0x7a, 0x1d, 0x04, 0xbb, 0x36, 0x02, 0xef, 0xca, 0xb6, 0x64, 0x38, 0x71, - 0x6c, 0x2f, 0xa5, 0x04, 0x8b, 0x1e, 0x4a, 0x50, 0xd4, 0x48, 0x61, 0x2d, 0x89, 0x0c, 0x67, 0x24, - 0xc7, 0x28, 0x0c, 0x14, 0xb9, 0xb4, 0xc7, 0x02, 0x05, 0x7a, 0x28, 0xda, 0xa2, 0x97, 0x02, 0x3d, - 0xf6, 0x58, 0xc0, 0x97, 0xa0, 0x87, 0x26, 0x08, 0x8a, 0x22, 0x68, 0x7b, 0xf0, 0x31, 0x91, 0x73, - 0xc8, 0x31, 0x28, 0x7a, 0xec, 0xa1, 0xe0, 0x0c, 0xa9, 0x48, 0xb2, 0x12, 0x49, 0x8e, 0x4f, 0xe2, - 0xcc, 0x7b, 0xef, 0x9b, 0xf7, 0xcd, 0xfb, 0xe1, 0x13, 0xe1, 0x95, 0x3a, 0x26, 0x92, 0x61, 0xca, - 0x44, 0xbf, 0x83, 0x2b, 0x9a, 0x5c, 0xd0, 0x55, 0xbd, 0x5c, 0x23, 0x14, 0xdb, 0x6a, 0xc9, 0x36, - 0x6b, 0x96, 0x6c, 0xd5, 0xf2, 0x65, 0x43, 0x57, 0x75, 0xbb, 0x56, 0xd0, 0x2c, 0x43, 0xb2, 0x6c, - 0x93, 0x9a, 0x48, 0xe4, 0x46, 0x12, 0x37, 0x92, 0x3a, 0x8d, 0x62, 0xc9, 0x92, 0x41, 0xef, 0xd4, - 0xf2, 0x92, 0x6e, 0x56, 0xe4, 0x92, 0x59, 0x32, 0x65, 0x66, 0x96, 0xaf, 0x15, 0xd9, 0x8a, 0x2d, - 0xd8, 0x13, 0x87, 0x8b, 0x9d, 0x2f, 0x99, 0x66, 0xa9, 0x8c, 0x65, 0xcd, 0x32, 0x64, 0xad, 0x5a, - 0x35, 0xa9, 0x46, 0x0d, 0xb3, 0x4a, 0x5c, 0xe9, 0x5f, 0x5d, 0x69, 0x13, 0x03, 0x57, 0x2c, 0xba, - 0xeb, 0x0a, 0x67, 0x7a, 0xb8, 0x6f, 0xe6, 0xdf, 0xc3, 0x3a, 0x75, 0x95, 0xa7, 0x7b, 0x28, 0xd3, - 0x5d, 0x0b, 0x7b, 0xa7, 0xc6, 0xda, 0x75, 0xb1, 0x6d, 0x9b, 0x76, 0xd3, 0xa3, 0x76, 0x99, 0x69, - 0xb5, 0xba, 0x7b, 0xa1, 0x5d, 0x68, 0xd5, 0xa9, 0xda, 0x8a, 0x3b, 0xd9, 0x2e, 0x6e, 0x15, 0x25, - 0xda, 0x45, 0x75, 0x4c, 0x70, 0xb5, 0xde, 0x81, 0x1e, 0xef, 0xd0, 0x31, 0xf0, 0x8e, 0xda, 0xa6, - 0x91, 0xf8, 0x16, 0xc0, 0xd1, 0x65, 0x1b, 0x6b, 0x14, 0x2b, 0xf8, 0x6e, 0x0d, 0x13, 0x8a, 0xfe, - 0x03, 0x43, 0x15, 0x4c, 0xb5, 0x82, 0x46, 0xb5, 0x28, 0x88, 0x83, 0xa9, 0xc8, 0xdc, 0x45, 0xa9, - 0x3d, 0x80, 0x9b, 0xec, 0x96, 0xb8, 0xd5, 0x4d, 0x4c, 0xb5, 0xdc, 0xae, 0x85, 0x95, 0xa6, 0x11, - 0xca, 0xc2, 0x00, 0xb1, 0xb0, 0x1e, 0xf5, 0x31, 0x63, 0x49, 0x7a, 0x73, 0xf4, 0x25, 0x8e, 0x93, - 0xb5, 0xb0, 0xee, 0xe0, 0x2c, 0x8d, 0x7f, 0xb6, 0x37, 0xe2, 0x98, 0x4b, 0x25, 0x5d, 0x75, 0x7e, - 0x15, 0x06, 0xb6, 0x10, 0x7e, 0xbc, 0x18, 0xe4, 0xe7, 0x26, 0xfe, 0x00, 0x70, 0xcc, 0x73, 0x99, - 0x58, 0x66, 0x95, 0x60, 0x74, 0xed, 0x88, 0xcf, 0xf1, 0xae, 0x3e, 0xaf, 0x62, 0xda, 0xc5, 0xe1, - 0x4d, 0x38, 0x4e, 0x76, 0x09, 0xc5, 0x15, 0xb5, 0x09, 0xe2, 0x67, 0x20, 0xff, 0xe8, 0x00, 0xc9, - 0x32, 0xad, 0xa3, 0x50, 0x63, 0xdc, 0xfc, 0xa6, 0x07, 0xb8, 0xd5, 0x76, 0x03, 0x33, 0xbd, 0x6e, - 0x60, 0x15, 0xd3, 0x01, 0xe8, 0x3f, 0x07, 0x70, 0x4c, 0xc1, 0x56, 0x59, 0xd3, 0x9b, 0x21, 0xfb, - 0xef, 0x11, 0xfa, 0x97, 0xba, 0xd2, 0x77, 0xcd, 0xba, 0x5c, 0x41, 0xae, 0xcd, 0x63, 0xb9, 0x97, - 0xc7, 0x2e, 0x50, 0x0f, 0xaf, 0x91, 0x0c, 0x05, 0x1b, 0x13, 0xb3, 0x66, 0xeb, 0x58, 0xad, 0x63, - 0x9b, 0x18, 0x66, 0x95, 0xdd, 0x6c, 0x78, 0x29, 0xf0, 0x62, 0x1f, 0x00, 0x65, 0xdc, 0x93, 0xde, - 0xe6, 0xc2, 0x56, 0x9a, 0xa7, 0xe1, 0x78, 0x93, 0x25, 0x8f, 0x72, 0xe2, 0x4b, 0x00, 0xe1, 0x2a, - 0xa6, 0x1e, 0xeb, 0xf3, 0x30, 0x5c, 0xd5, 0x2a, 0x98, 0x58, 0x9a, 0x8e, 0x19, 0xed, 0xb0, 0xf2, - 0x6a, 0x03, 0x21, 0x18, 0x70, 0x16, 0x8c, 0x51, 0x58, 0x61, 0xcf, 0xe8, 0x5d, 0xe8, 0x9c, 0xc8, - 0xc0, 0xd4, 0xa2, 0x69, 0x57, 0x34, 0xca, 0xdc, 0x19, 0x9b, 0xbb, 0xda, 0x47, 0x88, 0x3c, 0x37, - 0x32, 0xcc, 0x70, 0xd9, 0x2c, 0x60, 0x65, 0xcc, 0x6e, 0xdb, 0x4b, 0x7c, 0x11, 0x84, 0x91, 0x16, - 0x4d, 0xb4, 0x01, 0x23, 0x3a, 0x4b, 0x54, 0x76, 0x9a, 0x7b, 0xb9, 0xc9, 0xfe, 0x0a, 0xc2, 0x65, - 0xa9, 0x40, 0x8e, 0xe0, 0x9c, 0x80, 0xfe, 0x07, 0x47, 0x6c, 0x7e, 0x27, 0x1c, 0xd0, 0xdf, 0x5f, - 0x85, 0xb5, 0x67, 0x8b, 0x12, 0x71, 0x31, 0x18, 0x64, 0xb7, 0x10, 0x05, 0xde, 0x10, 0xa2, 0xb6, - 0x52, 0x1b, 0x3e, 0x89, 0x52, 0x3b, 0x75, 0x22, 0xa5, 0x16, 0x3c, 0xa9, 0x52, 0x43, 0x37, 0x60, - 0x90, 0x50, 0x8d, 0xd6, 0x48, 0xf4, 0xab, 0xcf, 0x41, 0xdc, 0x3f, 0x15, 0x99, 0xbb, 0xdc, 0x0b, - 0x35, 0xcb, 0xf4, 0xb9, 0xb3, 0x4b, 0xfe, 0x07, 0x7b, 0x40, 0x71, 0x21, 0xd0, 0x1a, 0x3c, 0x6d, - 0xe3, 0x22, 0xb6, 0x6d, 0xa3, 0x5a, 0x52, 0xf9, 0xdb, 0x85, 0x44, 0x43, 0x0c, 0xf5, 0xfc, 0x6b, - 0x4a, 0xb4, 0xc8, 0x78, 0x0a, 0x4d, 0x33, 0xbe, 0x4f, 0xd0, 0x6d, 0x18, 0x2d, 0xe0, 0x32, 0xa6, - 0xb8, 0xa0, 0x72, 0x19, 0x2e, 0x34, 0x11, 0xc3, 0x7d, 0x20, 0x4e, 0xb8, 0xd6, 0x8a, 0x6b, 0xec, - 0xe1, 0xfe, 0x1f, 0x4e, 0x16, 0x0c, 0xa2, 0xe5, 0xcb, 0xdd, 0x80, 0x61, 0x1f, 0xc0, 0xe7, 0x3c, - 0xf3, 0x0e, 0xe4, 0x96, 0x6a, 0xbe, 0x1e, 0x08, 0x01, 0xc1, 0x97, 0xf8, 0x1a, 0xc0, 0xc8, 0xba, - 0x41, 0xfa, 0xac, 0xe0, 0xbf, 0xc1, 0x91, 0xb2, 0x96, 0xc7, 0x65, 0xb5, 0x68, 0x94, 0x29, 0xb6, - 0xdd, 0x4a, 0x8e, 0xb0, 0xbd, 0x0c, 0xdb, 0x42, 0x17, 0xe1, 0xa8, 0x8d, 0x2d, 0xd3, 0xa6, 0x6a, - 0xd1, 0xc0, 0xe5, 0x02, 0x89, 0xfa, 0xe3, 0xfe, 0xa9, 0xb0, 0x32, 0xc2, 0x37, 0x33, 0x6c, 0x0f, - 0xcd, 0xc2, 0x33, 0xae, 0x12, 0x0f, 0x8a, 0xa7, 0x1b, 0x60, 0xba, 0x88, 0xcb, 0x78, 0x08, 0xb9, - 0x45, 0xe2, 0xc7, 0x20, 0x14, 0xb8, 0x9f, 0xbc, 0x90, 0xd7, 0x28, 0xae, 0xa0, 0x09, 0x18, 0xa4, - 0xb8, 0xaa, 0x55, 0x29, 0xcb, 0xb5, 0xb0, 0xe2, 0xae, 0x8e, 0xd1, 0x86, 0x04, 0xe8, 0xaf, 0x19, - 0x05, 0xde, 0x09, 0x15, 0xe7, 0x11, 0xc5, 0x61, 0xa4, 0x80, 0x89, 0x6e, 0x1b, 0xec, 0xdd, 0x1c, - 0x8d, 0x70, 0xa6, 0x2d, 0x5b, 0x28, 0x06, 0x43, 0xde, 0x35, 0x47, 0x47, 0xe2, 0x60, 0x2a, 0xa4, - 0x34, 0xd7, 0x28, 0x07, 0x83, 0xec, 0x52, 0x38, 0xa5, 0xc8, 0xdc, 0xb5, 0x5e, 0xf9, 0xda, 0xc9, - 0x4d, 0x5a, 0x67, 0xe6, 0xe9, 0x2a, 0xb5, 0x77, 0x15, 0x17, 0x0b, 0xe9, 0x30, 0xd2, 0x32, 0x5d, - 0xb9, 0x99, 0x90, 0x1a, 0x18, 0x3a, 0xf5, 0x0a, 0x83, 0xe3, 0xb7, 0xa2, 0xa2, 0x79, 0x08, 0xcd, - 0x9d, 0x2a, 0xb6, 0x55, 0x67, 0x34, 0x89, 0x86, 0x59, 0x11, 0xc7, 0x3a, 0xce, 0xb8, 0x6d, 0xe0, - 0x1d, 0x2f, 0xd7, 0xc2, 0x4c, 0xdb, 0xd9, 0x69, 0x6b, 0x44, 0xa3, 0x27, 0xd1, 0x88, 0xc6, 0xde, - 0xaa, 0x11, 0x65, 0x60, 0xa8, 0x84, 0x29, 0x6b, 0x24, 0x6e, 0x4b, 0x1b, 0xa4, 0x19, 0x29, 0xa7, - 0x4a, 0x7c, 0x81, 0xb6, 0x20, 0x74, 0xd3, 0x94, 0x60, 0xea, 0xb6, 0x8a, 0x63, 0x34, 0xa0, 0x30, - 0x07, 0xc9, 0x62, 0x1a, 0x9b, 0x87, 0x91, 0x96, 0xf8, 0x3a, 0xd9, 0xb7, 0x8d, 0x77, 0xdd, 0x4c, - 0x75, 0x1e, 0xd1, 0x19, 0x38, 0x5c, 0xd7, 0xca, 0x35, 0x2f, 0x49, 0xf9, 0x62, 0xc1, 0xf7, 0x6f, - 0x10, 0x5b, 0x84, 0x42, 0x67, 0xfc, 0x06, 0xb1, 0xbf, 0x1e, 0x08, 0x0d, 0x0b, 0xc1, 0xc4, 0x47, - 0x00, 0x8e, 0xb4, 0xe6, 0x05, 0xca, 0xc0, 0x61, 0x83, 0xe2, 0x0a, 0x89, 0xf2, 0xfe, 0x3a, 0x3b, - 0x68, 0x52, 0x29, 0xdc, 0x1c, 0xcd, 0xc2, 0x20, 0x9f, 0xb4, 0xa3, 0x3e, 0x06, 0x14, 0xed, 0x00, - 0x4a, 0x3b, 0x42, 0x76, 0xbd, 0xae, 0x5e, 0x62, 0x1b, 0x8e, 0xae, 0xb0, 0x36, 0x78, 0xfc, 0x21, - 0x62, 0x0a, 0x0a, 0x45, 0xcd, 0x28, 0xab, 0x46, 0xb1, 0xd9, 0x2e, 0x59, 0x29, 0x87, 0x94, 0x31, - 0x67, 0x7f, 0xad, 0xe8, 0xb5, 0xc1, 0xe9, 0xdf, 0x00, 0x3c, 0xdb, 0x75, 0x70, 0x40, 0x31, 0x38, - 0xb1, 0x9a, 0xce, 0xa9, 0x4a, 0x76, 0x4b, 0xcd, 0x6c, 0x2a, 0x37, 0x53, 0x39, 0x75, 0x25, 0x9d, - 0x49, 0xdd, 0x5a, 0xcf, 0x09, 0x43, 0xe8, 0x02, 0x9c, 0xec, 0x90, 0x65, 0x36, 0x15, 0x75, 0x59, - 0x49, 0xa7, 0x72, 0x69, 0x01, 0x20, 0x11, 0xc6, 0xba, 0x88, 0x95, 0xf4, 0xd6, 0x7a, 0x6a, 0x39, - 0x2d, 0xf8, 0xd0, 0x24, 0x3c, 0xdb, 0x21, 0xcf, 0xe6, 0x52, 0xb9, 0x5b, 0x59, 0xc1, 0x8f, 0xce, - 0xc1, 0xbf, 0x74, 0x88, 0x94, 0x74, 0x6a, 0x45, 0x08, 0xa0, 0x4b, 0x30, 0x7e, 0x44, 0x90, 0x49, - 0x2b, 0xca, 0xda, 0xc6, 0xaa, 0xba, 0xb9, 0x74, 0x3d, 0xbd, 0x9c, 0xcb, 0x0a, 0xc3, 0x5d, 0xb4, - 0x96, 0x94, 0xcd, 0x1b, 0xe9, 0x0d, 0xae, 0x9c, 0xde, 0x58, 0x4e, 0x67, 0x85, 0xe0, 0xdc, 0xf7, - 0x61, 0xe8, 0x4f, 0x6d, 0xad, 0xa1, 0xa7, 0x00, 0x06, 0xf9, 0x24, 0x83, 0x06, 0x9b, 0x78, 0x62, - 0x52, 0xbf, 0xea, 0xee, 0x58, 0xb8, 0xd3, 0x78, 0x18, 0x95, 0x8b, 0x57, 0xef, 0xe9, 0x49, 0x82, - 0xf5, 0x9a, 0x8d, 0x2b, 0x98, 0xdc, 0x49, 0xe6, 0x35, 0x62, 0xe8, 0xc9, 0x1a, 0xc1, 0xf6, 0xe5, - 0x3a, 0x26, 0x49, 0xc3, 0x4c, 0x56, 0x31, 0xdd, 0x31, 0xed, 0xed, 0xe4, 0x8e, 0x6d, 0x50, 0x7c, - 0xff, 0x97, 0xe7, 0x9f, 0xf8, 0x16, 0x13, 0xf3, 0xee, 0x1f, 0x56, 0xb9, 0x19, 0x72, 0x22, 0xbf, - 0xef, 0x35, 0x04, 0xa9, 0xb9, 0xb9, 0x77, 0xe4, 0xcf, 0x1f, 0x59, 0x00, 0xd3, 0xe8, 0x00, 0x40, - 0xff, 0x2a, 0xa6, 0x68, 0xba, 0xaf, 0xe9, 0x91, 0x93, 0x9b, 0x19, 0x60, 0xd2, 0x4c, 0xdc, 0x7b, - 0xf4, 0x9d, 0x0f, 0x34, 0x1e, 0x46, 0xff, 0xd9, 0x9d, 0x5d, 0xc5, 0xac, 0x1a, 0xd4, 0x3c, 0x42, - 0xd0, 0xc6, 0x5a, 0x81, 0xf1, 0x9b, 0x47, 0xff, 0xea, 0xc6, 0xef, 0x4d, 0xb4, 0xb8, 0x74, 0x0f, - 0xfd, 0x0a, 0x60, 0xc0, 0xa9, 0x3a, 0x34, 0xd3, 0x5f, 0x6d, 0x72, 0x72, 0x97, 0x07, 0x29, 0xe4, - 0xc4, 0xdd, 0xb7, 0x63, 0x37, 0x87, 0x66, 0x07, 0x65, 0x87, 0x7e, 0x07, 0xf0, 0x94, 0x3b, 0x0d, - 0xa3, 0x01, 0xc7, 0xe6, 0x98, 0xdc, 0xb7, 0xbe, 0xcb, 0xef, 0x43, 0x70, 0xdc, 0xc4, 0xdc, 0x88, - 0xad, 0x1d, 0x3b, 0x31, 0x3b, 0xd4, 0xf6, 0x9c, 0x44, 0xfd, 0x01, 0xc0, 0x20, 0x6f, 0x7b, 0xbd, - 0x6b, 0xb1, 0xad, 0x3d, 0xc6, 0x26, 0x24, 0xfe, 0x39, 0x45, 0xf2, 0x3e, 0xa7, 0x48, 0xe9, 0x8a, - 0x45, 0x77, 0x13, 0xb5, 0xe3, 0x52, 0xbb, 0x36, 0x7d, 0xdc, 0x9c, 0x5c, 0x00, 0xd3, 0xb1, 0xe2, - 0x83, 0x7d, 0xe0, 0xfb, 0x79, 0x1f, 0xfc, 0xbd, 0x07, 0x09, 0xfe, 0x26, 0x3c, 0xd8, 0x07, 0xa0, - 0xb1, 0x0f, 0x66, 0x06, 0x78, 0x79, 0xde, 0xff, 0x29, 0xea, 0x13, 0xc0, 0xd2, 0xa7, 0xe0, 0xf1, - 0xe2, 0xf0, 0xb2, 0x72, 0x6b, 0x65, 0xfd, 0xc9, 0x33, 0x71, 0xe8, 0xe0, 0x99, 0x38, 0xf4, 0xf2, - 0x99, 0x08, 0x3e, 0x68, 0x88, 0xe0, 0x9b, 0x86, 0x08, 0x1e, 0x35, 0x44, 0xf0, 0xa4, 0x21, 0x82, - 0xa7, 0x0d, 0x11, 0xbc, 0x68, 0x88, 0x43, 0x2f, 0x1b, 0x22, 0xf8, 0xf8, 0x50, 0x1c, 0x7a, 0x70, - 0x28, 0x82, 0x27, 0x87, 0xe2, 0xd0, 0xc1, 0xa1, 0x38, 0xf4, 0x4e, 0xae, 0x64, 0x5a, 0xdb, 0x25, - 0xa9, 0x6e, 0x3a, 0x83, 0xaa, 0xad, 0x49, 0x35, 0x22, 0xb3, 0x07, 0xe7, 0x8f, 0x5b, 0xd2, 0xb2, - 0xcd, 0xba, 0x51, 0xc0, 0x76, 0xd2, 0x13, 0xcb, 0x56, 0xbe, 0x64, 0xca, 0xf8, 0x1e, 0x75, 0xbf, - 0xd4, 0xbc, 0xe6, 0x9b, 0x53, 0x3e, 0xc8, 0xe2, 0x70, 0xe5, 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, - 0xea, 0xdf, 0x65, 0xd0, 0x88, 0x13, 0x00, 0x00, + // 1639 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x68, 0x1b, 0xcd, + 0x15, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x67, 0x33, 0x4d, 0x1c, 0x59, 0x4d, 0x16, 0x55, 0x49, + 0x8b, 0xb1, 0xa3, 0x95, 0x71, 0x08, 0xad, 0x4d, 0x70, 0x2b, 0xdb, 0x92, 0x71, 0xe2, 0x7f, 0x5d, + 0x29, 0xa1, 0xf4, 0xd0, 0x65, 0xb5, 0x1a, 0x29, 0x5b, 0x4b, 0xda, 0xed, 0xcc, 0x48, 0x8e, 0x29, + 0x86, 0x92, 0x53, 0x8f, 0x25, 0xa1, 0x85, 0x96, 0xb6, 0xf4, 0x12, 0xe8, 0xb1, 0xc7, 0x82, 0x2f, + 0xb9, 0x35, 0x84, 0x52, 0x42, 0x7b, 0xc9, 0xb1, 0x91, 0xf3, 0x41, 0x8e, 0xe1, 0x3b, 0x7c, 0x87, + 0x8f, 0x0f, 0xbe, 0x8f, 0x9d, 0xd9, 0x55, 0x24, 0x59, 0xb1, 0x24, 0x7f, 0xce, 0x49, 0x3b, 0xf3, + 0xde, 0xfb, 0xcd, 0xfb, 0xbd, 0x79, 0xef, 0xed, 0xd3, 0xc2, 0x5b, 0x0d, 0x4c, 0x15, 0xd3, 0x4a, + 0x51, 0xe3, 0x21, 0xae, 0xea, 0xa9, 0xa2, 0xa1, 0x19, 0x95, 0x3a, 0x65, 0x98, 0x68, 0x65, 0x62, + 0xd5, 0xed, 0x94, 0x5d, 0x2f, 0x54, 0x4c, 0x43, 0x33, 0x48, 0xbd, 0xa8, 0xdb, 0xa6, 0x62, 0x13, + 0x8b, 0x59, 0x48, 0x16, 0x46, 0x8a, 0x30, 0x52, 0xba, 0x8d, 0x62, 0xc9, 0xb2, 0xc9, 0x1e, 0xd6, + 0x0b, 0x8a, 0x61, 0x55, 0x53, 0x65, 0xab, 0x6c, 0xa5, 0xb8, 0x59, 0xa1, 0x5e, 0xe2, 0x2b, 0xbe, + 0xe0, 0x4f, 0x02, 0x2e, 0x76, 0xb5, 0x6c, 0x59, 0xe5, 0x0a, 0x4e, 0xe9, 0xb6, 0x99, 0xd2, 0x6b, + 0x35, 0x8b, 0xe9, 0xcc, 0xb4, 0x6a, 0xd4, 0x95, 0x7e, 0xd7, 0x95, 0xb6, 0x30, 0x70, 0xd5, 0x66, + 0x07, 0xae, 0x70, 0xae, 0x8f, 0xfb, 0x56, 0xe1, 0x97, 0xd8, 0x60, 0xae, 0xf2, 0x6c, 0x1f, 0x65, + 0x76, 0x60, 0x63, 0xef, 0xd4, 0x58, 0xa7, 0x2e, 0x26, 0xc4, 0x22, 0x2d, 0x8f, 0x3a, 0x65, 0x96, + 0xdd, 0xee, 0xee, 0xb5, 0x4e, 0xa1, 0xdd, 0x60, 0x5a, 0x3b, 0xee, 0x74, 0xa7, 0xb8, 0x5d, 0x94, + 0xe8, 0x14, 0x35, 0x30, 0xc5, 0xb5, 0x46, 0x17, 0x7a, 0xbc, 0x4b, 0xc7, 0xc4, 0xfb, 0x5a, 0x87, + 0x46, 0xe2, 0x1f, 0x00, 0x8e, 0xaf, 0x12, 0xac, 0x33, 0xac, 0xe2, 0x5f, 0xd5, 0x31, 0x65, 0xe8, + 0xc7, 0x30, 0x54, 0xc5, 0x4c, 0x2f, 0xea, 0x4c, 0x8f, 0x82, 0x38, 0x98, 0x89, 0x2c, 0x5c, 0x57, + 0x3a, 0x2f, 0x70, 0x87, 0x47, 0x49, 0x58, 0x6d, 0x61, 0xa6, 0xe7, 0x0f, 0x6c, 0xac, 0xb6, 0x8c, + 0x50, 0x0e, 0x06, 0xa8, 0x8d, 0x8d, 0xa8, 0x8f, 0x1b, 0x2b, 0xca, 0xe9, 0xb7, 0xaf, 0x08, 0x9c, + 0x9c, 0x8d, 0x0d, 0x07, 0x67, 0x65, 0xf2, 0x4f, 0x87, 0x63, 0x8e, 0xb9, 0x52, 0x36, 0x34, 0xe7, + 0x57, 0xe5, 0x60, 0x4b, 0xe1, 0x97, 0xcb, 0x41, 0x71, 0x6e, 0xe2, 0x2b, 0x00, 0x27, 0x3c, 0x97, + 0xa9, 0x6d, 0xd5, 0x28, 0x46, 0x77, 0x4e, 0xf8, 0x1c, 0xef, 0xe9, 0xf3, 0x3a, 0x66, 0x3d, 0x1c, + 0xde, 0x81, 0x93, 0xf4, 0x80, 0x32, 0x5c, 0xd5, 0x5a, 0x20, 0x7e, 0x0e, 0xf2, 0x83, 0x2e, 0x90, + 0x1c, 0xd7, 0x3a, 0x09, 0x35, 0x21, 0xcc, 0xb7, 0x3c, 0xc0, 0xdd, 0x8e, 0x08, 0xcc, 0xf5, 0x8b, + 0xc0, 0x3a, 0x66, 0x43, 0xd0, 0x7f, 0x0b, 0xe0, 0x84, 0x8a, 0xed, 0x8a, 0x6e, 0xb4, 0xae, 0xec, + 0x27, 0x27, 0xe8, 0xdf, 0xe8, 0x49, 0xdf, 0x35, 0xeb, 0x11, 0x82, 0x7c, 0x87, 0xc7, 0xa9, 0x7e, + 0x1e, 0xbb, 0x40, 0x7d, 0xbc, 0x46, 0x29, 0x28, 0x11, 0x4c, 0xad, 0x3a, 0x31, 0xb0, 0xd6, 0xc0, + 0x84, 0x9a, 0x56, 0x8d, 0x47, 0x36, 0xbc, 0x12, 0x78, 0x77, 0x04, 0x80, 0x3a, 0xe9, 0x49, 0x1f, + 0x08, 0x61, 0x3b, 0xcd, 0x8b, 0x70, 0xb2, 0xc5, 0x52, 0xdc, 0x72, 0xe2, 0xaf, 0x00, 0xc2, 0x75, + 0xcc, 0x3c, 0xd6, 0x57, 0x61, 0xb8, 0xa6, 0x57, 0x31, 0xb5, 0x75, 0x03, 0x73, 0xda, 0x61, 0xf5, + 0xc3, 0x06, 0x42, 0x30, 0xe0, 0x2c, 0x38, 0xa3, 0xb0, 0xca, 0x9f, 0xd1, 0x2f, 0xa0, 0x73, 0x22, + 0x07, 0xd3, 0x4a, 0x16, 0xa9, 0xea, 0x8c, 0xbb, 0x33, 0xb1, 0x70, 0x7b, 0x80, 0x2b, 0xf2, 0xdc, + 0xc8, 0x72, 0xc3, 0x55, 0xab, 0x88, 0xd5, 0x09, 0xd2, 0xb1, 0x97, 0xf8, 0x4b, 0x10, 0x46, 0xda, + 0x34, 0xd1, 0x36, 0x8c, 0x18, 0x3c, 0x51, 0xf9, 0x69, 0x6e, 0x70, 0x93, 0x83, 0x15, 0x84, 0xcb, + 0x52, 0x85, 0x02, 0xc1, 0x39, 0x01, 0xfd, 0x14, 0x8e, 0x11, 0x11, 0x13, 0x01, 0xe8, 0x1f, 0xac, + 0xc2, 0x3a, 0xb3, 0x45, 0x8d, 0xb8, 0x18, 0x1c, 0xb2, 0xd7, 0x15, 0x05, 0x4e, 0xb9, 0xa2, 0x8e, + 0x52, 0x1b, 0x3d, 0x8f, 0x52, 0xbb, 0x70, 0x2e, 0xa5, 0x16, 0x3c, 0xaf, 0x52, 0x43, 0xf7, 0x60, + 0x90, 0x32, 0x9d, 0xd5, 0x69, 0xf4, 0x6f, 0x7f, 0x06, 0x71, 0xff, 0x4c, 0x64, 0xe1, 0x66, 0x3f, + 0xd4, 0x1c, 0xd7, 0x17, 0xce, 0xae, 0xf8, 0x9f, 0x1f, 0x02, 0xd5, 0x85, 0x40, 0x1b, 0xf0, 0x22, + 0xc1, 0x25, 0x4c, 0x88, 0x59, 0x2b, 0x6b, 0xe2, 0xed, 0x42, 0xa3, 0x21, 0x8e, 0x7a, 0xf5, 0x23, + 0x25, 0x5a, 0xe2, 0x3c, 0xa5, 0x96, 0x99, 0xd8, 0xa7, 0xe8, 0x01, 0x8c, 0x16, 0x71, 0x05, 0x33, + 0x5c, 0xd4, 0x84, 0x0c, 0x17, 0x5b, 0x88, 0xe1, 0x01, 0x10, 0xa7, 0x5c, 0x6b, 0xd5, 0x35, 0xf6, + 0x70, 0x7f, 0x06, 0xa7, 0x8b, 0x26, 0xd5, 0x0b, 0x95, 0x5e, 0xc0, 0x70, 0x00, 0xe0, 0x2b, 0x9e, + 0x79, 0x17, 0x72, 0x5b, 0x35, 0xdf, 0x0d, 0x84, 0x80, 0xe4, 0x4b, 0x3c, 0x03, 0x30, 0xb2, 0x69, + 0xd2, 0x01, 0x2b, 0xf8, 0x7b, 0x70, 0xac, 0xa2, 0x17, 0x70, 0x45, 0x2b, 0x99, 0x15, 0x86, 0x89, + 0x5b, 0xc9, 0x11, 0xbe, 0x97, 0xe5, 0x5b, 0xe8, 0x3a, 0x1c, 0x27, 0xd8, 0xb6, 0x08, 0xd3, 0x4a, + 0x26, 0xae, 0x14, 0x69, 0xd4, 0x1f, 0xf7, 0xcf, 0x84, 0xd5, 0x31, 0xb1, 0x99, 0xe5, 0x7b, 0x68, + 0x1e, 0x5e, 0x72, 0x95, 0xc4, 0xa5, 0x78, 0xba, 0x01, 0xae, 0x8b, 0x84, 0x4c, 0x5c, 0xa1, 0xb0, + 0x48, 0xfc, 0x3b, 0x08, 0x25, 0xe1, 0xa7, 0x28, 0xe4, 0x0d, 0x86, 0xab, 0x68, 0x0a, 0x06, 0x19, + 0xae, 0xe9, 0x35, 0xc6, 0x73, 0x2d, 0xac, 0xba, 0xab, 0x33, 0xb4, 0x21, 0x09, 0xfa, 0xeb, 0x66, + 0x51, 0x74, 0x42, 0xd5, 0x79, 0x44, 0x71, 0x18, 0x29, 0x62, 0x6a, 0x10, 0x93, 0xbf, 0x9b, 0xa3, + 0x11, 0xc1, 0xb4, 0x6d, 0x0b, 0xc5, 0x60, 0xc8, 0x0b, 0x73, 0x74, 0x2c, 0x0e, 0x66, 0x42, 0x6a, + 0x6b, 0x8d, 0xf2, 0x30, 0xc8, 0x83, 0x22, 0x28, 0x45, 0x16, 0xee, 0xf4, 0xcb, 0xd7, 0x6e, 0x6e, + 0xca, 0x26, 0x37, 0xcf, 0xd4, 0x18, 0x39, 0x50, 0x5d, 0x2c, 0x64, 0xc0, 0x48, 0xdb, 0x74, 0xe5, + 0x66, 0x42, 0x7a, 0x68, 0xe8, 0xf4, 0x07, 0x0c, 0x81, 0xdf, 0x8e, 0x8a, 0x16, 0x21, 0xb4, 0xf6, + 0x6b, 0x98, 0x68, 0xce, 0x68, 0x12, 0x0d, 0xf3, 0x22, 0x8e, 0x75, 0x9d, 0xf1, 0xc0, 0xc4, 0xfb, + 0x5e, 0xae, 0x85, 0xb9, 0xb6, 0xb3, 0xd3, 0xd1, 0x88, 0xc6, 0xcf, 0xa3, 0x11, 0x4d, 0x7c, 0xab, + 0x46, 0x94, 0x85, 0xa1, 0x32, 0x66, 0xbc, 0x91, 0xb8, 0x2d, 0x6d, 0x98, 0x66, 0xa4, 0x5e, 0x28, + 0x8b, 0x05, 0xda, 0x85, 0xd0, 0x4d, 0x53, 0x8a, 0x99, 0xdb, 0x2a, 0xce, 0xd0, 0x80, 0xc2, 0x02, + 0x24, 0x87, 0x59, 0x6c, 0x11, 0x46, 0xda, 0xee, 0xd7, 0xc9, 0xbe, 0x3d, 0x7c, 0xe0, 0x66, 0xaa, + 0xf3, 0x88, 0x2e, 0xc1, 0xd1, 0x86, 0x5e, 0xa9, 0x7b, 0x49, 0x2a, 0x16, 0x4b, 0xbe, 0x1f, 0x81, + 0xd8, 0x32, 0x94, 0xba, 0xef, 0x6f, 0x18, 0xfb, 0xbb, 0x81, 0xd0, 0xa8, 0x14, 0x4c, 0xfc, 0x16, + 0xc0, 0xb1, 0xf6, 0xbc, 0x40, 0x59, 0x38, 0x6a, 0x32, 0x5c, 0xa5, 0x51, 0xd1, 0x5f, 0xe7, 0x87, + 0x4d, 0x2a, 0x55, 0x98, 0xa3, 0x79, 0x18, 0x14, 0x93, 0x76, 0xd4, 0xc7, 0x81, 0xa2, 0x5d, 0x40, + 0x19, 0x47, 0xc8, 0xc3, 0xeb, 0xea, 0x25, 0xf6, 0xe0, 0xf8, 0x1a, 0x6f, 0x83, 0x67, 0x1f, 0x22, + 0x66, 0xa0, 0x54, 0xd2, 0xcd, 0x8a, 0x66, 0x96, 0x5a, 0xed, 0x92, 0x97, 0x72, 0x48, 0x9d, 0x70, + 0xf6, 0x37, 0x4a, 0x5e, 0x1b, 0x9c, 0xfd, 0x1c, 0xc0, 0xcb, 0x3d, 0x07, 0x07, 0x14, 0x83, 0x53, + 0xeb, 0x99, 0xbc, 0xa6, 0xe6, 0x76, 0xb5, 0xec, 0x8e, 0xba, 0x95, 0xce, 0x6b, 0x6b, 0x99, 0x6c, + 0xfa, 0xfe, 0x66, 0x5e, 0x1a, 0x41, 0xd7, 0xe0, 0x74, 0x97, 0x2c, 0xbb, 0xa3, 0x6a, 0xab, 0x6a, + 0x26, 0x9d, 0xcf, 0x48, 0x00, 0xc9, 0x30, 0xd6, 0x43, 0xac, 0x66, 0x76, 0x37, 0xd3, 0xab, 0x19, + 0xc9, 0x87, 0xa6, 0xe1, 0xe5, 0x2e, 0x79, 0x2e, 0x9f, 0xce, 0xdf, 0xcf, 0x49, 0x7e, 0x74, 0x05, + 0x7e, 0xa7, 0x4b, 0xa4, 0x66, 0xd2, 0x6b, 0x52, 0x00, 0xdd, 0x80, 0xf1, 0x13, 0x82, 0x6c, 0x46, + 0x55, 0x37, 0xb6, 0xd7, 0xb5, 0x9d, 0x95, 0xbb, 0x99, 0xd5, 0x7c, 0x4e, 0x1a, 0xed, 0xa1, 0xb5, + 0xa2, 0xee, 0xdc, 0xcb, 0x6c, 0x0b, 0xe5, 0xcc, 0xf6, 0x6a, 0x26, 0x27, 0x05, 0x17, 0x9a, 0x10, + 0xfa, 0xd3, 0xbb, 0x1b, 0xe8, 0x6b, 0x00, 0x83, 0x62, 0x92, 0x41, 0xc3, 0x4d, 0x3c, 0x31, 0x65, + 0x50, 0x75, 0x77, 0x2c, 0xfc, 0x3d, 0x68, 0xfe, 0x2b, 0xba, 0x55, 0xba, 0xfd, 0xc8, 0x48, 0x52, + 0x6c, 0xd4, 0x09, 0xae, 0x62, 0xfa, 0x30, 0x59, 0xd0, 0xa9, 0x69, 0x24, 0xeb, 0x14, 0x93, 0x9b, + 0xdd, 0x22, 0xca, 0xf4, 0x5a, 0x51, 0x27, 0x45, 0x21, 0x6d, 0x60, 0x9a, 0x34, 0xad, 0x64, 0x0d, + 0xb3, 0x7d, 0x8b, 0xec, 0x25, 0xf7, 0x89, 0xc9, 0xf0, 0xe3, 0xff, 0xbd, 0x7d, 0xea, 0x5b, 0x4e, + 0x2c, 0xba, 0xff, 0x67, 0x53, 0xad, 0x8c, 0xa0, 0xa9, 0x5f, 0x7b, 0xfd, 0x42, 0x69, 0x6d, 0x1e, + 0x9e, 0xf8, 0x6f, 0x48, 0x97, 0xc0, 0x2c, 0xfa, 0x12, 0x40, 0xff, 0x3a, 0x66, 0x68, 0x76, 0xa0, + 0xe1, 0x52, 0x70, 0x9f, 0x1b, 0x62, 0x10, 0x4d, 0xfc, 0x11, 0xbc, 0xf8, 0xa7, 0xcf, 0x21, 0xaf, + 0xf6, 0x26, 0x5f, 0xb5, 0x6a, 0x26, 0xb3, 0x4e, 0xe1, 0xef, 0x29, 0x74, 0x85, 0x80, 0x60, 0xbd, + 0xc8, 0x23, 0xb0, 0x88, 0x7e, 0xd8, 0x2b, 0x02, 0xa7, 0x11, 0x17, 0xd2, 0x43, 0xf4, 0x05, 0x80, + 0x01, 0xa7, 0x6c, 0xd1, 0xdc, 0x60, 0xc5, 0x2d, 0xe8, 0xdf, 0x1c, 0xa6, 0x13, 0x24, 0x9e, 0x7c, + 0x6a, 0xfe, 0x0b, 0x68, 0x7e, 0x58, 0xfe, 0xe8, 0x89, 0x0f, 0x5e, 0x70, 0x07, 0x6e, 0x34, 0xe4, + 0x64, 0x1e, 0x4b, 0x0d, 0xac, 0xef, 0x46, 0xe0, 0xd9, 0x27, 0x4a, 0xfd, 0xed, 0xd8, 0xc6, 0x99, + 0x53, 0xbf, 0x4b, 0xed, 0xd0, 0x29, 0x85, 0xcf, 0x00, 0x0c, 0x8a, 0xbe, 0xdb, 0xbf, 0x19, 0x74, + 0xf4, 0xe7, 0xd8, 0x94, 0x22, 0xbe, 0xe7, 0x28, 0xde, 0xf7, 0x1c, 0x25, 0x53, 0xb5, 0xd9, 0x41, + 0xe2, 0xe9, 0x27, 0x62, 0x7e, 0x67, 0xf6, 0xac, 0x29, 0xbf, 0x04, 0x66, 0x63, 0xa5, 0xe7, 0x47, + 0xc0, 0xf7, 0xdf, 0x23, 0xf0, 0xfd, 0x3e, 0x1c, 0xc5, 0x9b, 0xfa, 0xf5, 0x11, 0x00, 0xcd, 0x23, + 0x30, 0x37, 0xc4, 0xcb, 0xfd, 0xf1, 0x7f, 0xa2, 0x3e, 0x09, 0xac, 0xfc, 0x01, 0xbc, 0x5c, 0x1e, + 0x5d, 0x55, 0xef, 0xaf, 0x6d, 0xbe, 0x7a, 0x23, 0x8f, 0xbc, 0x7e, 0x23, 0x8f, 0xbc, 0x7f, 0x23, + 0x83, 0xdf, 0x34, 0x65, 0xf0, 0xf7, 0xa6, 0x0c, 0x5e, 0x34, 0x65, 0xf0, 0xaa, 0x29, 0x83, 0xff, + 0x37, 0x65, 0xf0, 0xae, 0x29, 0x8f, 0xbc, 0x6f, 0xca, 0xe0, 0x77, 0xc7, 0xf2, 0xc8, 0xf3, 0x63, + 0x19, 0xbc, 0x3a, 0x96, 0x47, 0x5e, 0x1f, 0xcb, 0x23, 0x3f, 0xcf, 0x97, 0x2d, 0x7b, 0xaf, 0xac, + 0x34, 0x2c, 0x67, 0x90, 0x26, 0xba, 0x52, 0xa7, 0x29, 0xfe, 0xe0, 0xfc, 0xb1, 0x4c, 0xda, 0xc4, + 0x6a, 0x98, 0x45, 0x4c, 0x92, 0x9e, 0x38, 0x65, 0x17, 0xca, 0x56, 0x0a, 0x3f, 0x62, 0xee, 0x97, + 0xa4, 0x8f, 0x7c, 0x13, 0x2b, 0x04, 0xf9, 0x35, 0xdd, 0xfa, 0x26, 0x00, 0x00, 0xff, 0xff, 0x75, + 0x40, 0x3d, 0xa0, 0x28, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/dc_cluster_group/public_crudapi.vesapi.go b/pbgo/extschema/schema/dc_cluster_group/public_crudapi.vesapi.go index a1d900df1..2628eca6c 100644 --- a/pbgo/extschema/schema/dc_cluster_group/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dc_cluster_group/public_crudapi.vesapi.go @@ -2817,10 +2817,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2877,10 +2881,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2983,10 +2991,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dc_cluster_group/public_custom_data_api.pb.go b/pbgo/extschema/schema/dc_cluster_group/public_custom_data_api.pb.go index 600f1e648..e16f731aa 100644 --- a/pbgo/extschema/schema/dc_cluster_group/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/dc_cluster_group/public_custom_data_api.pb.go @@ -494,64 +494,64 @@ func init() { } var fileDescriptor_2307ac15b290439f = []byte{ - // 900 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xac, 0xf3, 0xc3, 0x99, 0xb6, 0xc1, 0x1a, 0x0a, 0x6c, 0x4d, 0xb4, 0x8a, 0x2c, 0x55, - 0x0a, 0x01, 0xef, 0xa2, 0x54, 0x40, 0x55, 0xc4, 0x8f, 0xda, 0x31, 0x6d, 0xd4, 0xa2, 0x44, 0xeb, - 0x0d, 0x02, 0x2e, 0xab, 0xf1, 0xfa, 0x79, 0xb3, 0xc4, 0xbb, 0xb3, 0x99, 0x99, 0x35, 0xb5, 0x50, - 0x25, 0xd4, 0x3f, 0x00, 0x55, 0x70, 0x80, 0x23, 0x47, 0x8e, 0x1c, 0x11, 0xbd, 0xe4, 0x82, 0xe8, - 0x09, 0x45, 0x70, 0xe9, 0x91, 0x38, 0x1c, 0xe8, 0x2d, 0x7f, 0x02, 0xda, 0xd9, 0xdd, 0xa4, 0x4e, - 0x05, 0xb8, 0xb7, 0x79, 0xef, 0x7b, 0xdf, 0x37, 0xdf, 0x3c, 0xbf, 0x7d, 0xc6, 0x6f, 0x0f, 0x41, - 0x98, 0x01, 0xb3, 0x84, 0xb7, 0x03, 0x21, 0xb5, 0x7a, 0x9e, 0xeb, 0x0d, 0x12, 0x21, 0x81, 0xbb, - 0x3e, 0x67, 0x49, 0x6c, 0xc5, 0x49, 0x77, 0x10, 0x78, 0xae, 0x97, 0x08, 0xc9, 0x42, 0xb7, 0x47, - 0x25, 0x75, 0x69, 0x1c, 0x98, 0x31, 0x67, 0x92, 0x11, 0x23, 0x23, 0x9b, 0x19, 0xd9, 0x3c, 0x4b, - 0xae, 0x35, 0xfc, 0x40, 0xee, 0x24, 0x5d, 0xd3, 0x63, 0xa1, 0xe5, 0x33, 0x9f, 0x59, 0x8a, 0xd6, - 0x4d, 0xfa, 0x2a, 0x52, 0x81, 0x3a, 0x65, 0x72, 0xb5, 0x25, 0x9f, 0x31, 0x7f, 0x00, 0x16, 0x8d, - 0x03, 0x8b, 0x46, 0x11, 0x93, 0x54, 0x06, 0x2c, 0x12, 0x39, 0xfa, 0xf2, 0xa4, 0x53, 0x16, 0x3f, - 0x09, 0x5e, 0x9a, 0x04, 0xe5, 0x28, 0x86, 0x02, 0x5a, 0x9a, 0x84, 0x86, 0x74, 0x10, 0xf4, 0xa8, - 0x84, 0x1c, 0xad, 0x9f, 0x41, 0x41, 0x40, 0x34, 0x9c, 0x14, 0xaf, 0x7f, 0x5b, 0xc6, 0x8b, 0x1f, - 0x82, 0xe4, 0x81, 0x27, 0x6c, 0xd8, 0x4b, 0x40, 0x48, 0xb2, 0x84, 0x17, 0x22, 0x1a, 0x82, 0x88, - 0xa9, 0x07, 0x3a, 0x5a, 0x46, 0x2b, 0x0b, 0xf6, 0x69, 0x82, 0xbc, 0x88, 0xe7, 0xfa, 0xc1, 0x40, - 0x02, 0xd7, 0x35, 0x05, 0xe5, 0x11, 0xf9, 0x00, 0x57, 0x54, 0x63, 0xdc, 0xee, 0x48, 0x2f, 0x2f, - 0x97, 0x57, 0x16, 0xd7, 0x5e, 0x35, 0xff, 0xbb, 0x85, 0x66, 0x76, 0xef, 0x6d, 0xda, 0x85, 0x81, - 0x3d, 0xaf, 0x52, 0xcd, 0x11, 0xd9, 0xc3, 0x8b, 0xfd, 0x00, 0x06, 0x3d, 0x57, 0xc0, 0x00, 0x3c, - 0xc9, 0xb8, 0x3e, 0xa3, 0xd4, 0x56, 0xa7, 0x53, 0x73, 0x46, 0x31, 0x34, 0x8d, 0x9f, 0x1f, 0xef, - 0x97, 0x67, 0xbf, 0x46, 0x5a, 0xb5, 0x52, 0x9c, 0x2a, 0xa8, 0x38, 0xe9, 0xc8, 0xbe, 0xa0, 0x6e, - 0xe8, 0xe4, 0x17, 0x90, 0x57, 0x30, 0x16, 0x92, 0x72, 0xe9, 0xca, 0x20, 0x04, 0x7d, 0x36, 0x7d, - 0x56, 0x13, 0xab, 0x72, 0x5e, 0xfe, 0x6e, 0x06, 0xd9, 0x0b, 0x0a, 0x75, 0x82, 0x10, 0xc8, 0x65, - 0x5c, 0x81, 0xa8, 0x97, 0x15, 0xce, 0x3d, 0x55, 0x38, 0x0f, 0x51, 0x4f, 0x95, 0x19, 0x78, 0x46, - 0x48, 0x88, 0xf5, 0xf9, 0x89, 0x92, 0xef, 0x67, 0x90, 0xad, 0xf2, 0xa4, 0x8e, 0x67, 0x39, 0x8d, - 0x7c, 0xd0, 0x2b, 0xaa, 0xe0, 0x7c, 0x5e, 0x70, 0xac, 0x21, 0x1d, 0xd9, 0x19, 0x54, 0xdf, 0xc3, - 0xcf, 0x9d, 0xfc, 0x30, 0x22, 0x66, 0x91, 0x00, 0xf2, 0x2e, 0x9e, 0x49, 0xa7, 0x54, 0x47, 0xcb, - 0xe5, 0x95, 0x73, 0xd3, 0x76, 0x64, 0x9d, 0x4a, 0x6a, 0x2b, 0xde, 0x89, 0x2d, 0x6d, 0xc2, 0xd6, - 0xb1, 0x96, 0xdb, 0xaa, 0xff, 0x82, 0x8a, 0x61, 0x48, 0xdb, 0x98, 0x12, 0xc9, 0x06, 0x2e, 0xef, - 0xc2, 0x28, 0xbf, 0xf1, 0xad, 0xe9, 0x7f, 0x83, 0x94, 0x6c, 0xde, 0x82, 0x51, 0x3b, 0x92, 0x7c, - 0x64, 0xa7, 0x1a, 0xe4, 0x75, 0x3c, 0x3b, 0xa4, 0x83, 0x04, 0x74, 0x4d, 0x89, 0xd5, 0xce, 0x88, - 0x65, 0xdc, 0x8f, 0xd2, 0x0a, 0x3b, 0x2b, 0xac, 0xbd, 0x89, 0x2b, 0x85, 0x04, 0xa9, 0x16, 0x46, - 0xd2, 0xa1, 0x53, 0x7a, 0x17, 0x4f, 0xf5, 0xd2, 0x5c, 0x16, 0x5c, 0xd3, 0xae, 0xa2, 0xfa, 0x7d, - 0x84, 0xf1, 0xe9, 0xe3, 0xd3, 0xb6, 0xa5, 0x1f, 0x8d, 0xe2, 0x3e, 0xd3, 0x20, 0xd9, 0x8a, 0x47, - 0x9a, 0x79, 0xdb, 0x33, 0xdf, 0xe6, 0xb3, 0x35, 0x21, 0x6b, 0xfd, 0xea, 0xfb, 0x85, 0xa3, 0x34, - 0x4f, 0x5e, 0xc2, 0xcf, 0x3b, 0x1f, 0xbb, 0xce, 0x4d, 0x7b, 0x73, 0xfb, 0xc6, 0xcd, 0xad, 0x6d, - 0xc7, 0x6d, 0x7e, 0xe2, 0xb4, 0x3b, 0xd5, 0x12, 0xb9, 0x84, 0x5f, 0x98, 0x04, 0xb6, 0xae, 0xb7, - 0x6e, 0xb5, 0x9d, 0x4e, 0x15, 0xad, 0xbe, 0x87, 0xcf, 0x3d, 0xf1, 0xc1, 0x90, 0x8b, 0xb8, 0xba, - 0xde, 0x72, 0x5b, 0xb7, 0xb7, 0x3b, 0x4e, 0xdb, 0x76, 0x6f, 0xd8, 0x9b, 0xdb, 0x5b, 0xd5, 0x12, - 0x39, 0x8f, 0x2b, 0x1d, 0xbb, 0xe5, 0x76, 0x36, 0x9c, 0x76, 0x15, 0xa5, 0xd1, 0x7a, 0xc7, 0xc9, - 0x22, 0x6d, 0xed, 0x47, 0x0d, 0x5f, 0x68, 0xa9, 0x5d, 0x97, 0xfa, 0xba, 0xbe, 0xb5, 0x41, 0x1e, - 0x23, 0x3c, 0x9f, 0xcf, 0x18, 0x99, 0xf2, 0x59, 0xc5, 0x96, 0xa8, 0x59, 0x53, 0xd7, 0x67, 0xc3, - 0x5b, 0xbf, 0xfb, 0xf0, 0x27, 0x0d, 0x8d, 0x7f, 0xd5, 0xd7, 0xfa, 0x6f, 0xdc, 0xf1, 0x1a, 0x02, - 0xbc, 0x84, 0x43, 0x08, 0x62, 0xa7, 0xd1, 0xa5, 0x22, 0xf0, 0x1a, 0x21, 0x8b, 0x02, 0xc9, 0xf8, - 0x6b, 0xcb, 0x43, 0x10, 0x8d, 0x80, 0x35, 0x22, 0x90, 0x9f, 0x33, 0xbe, 0xdb, 0xe0, 0x40, 0x7b, - 0xf7, 0xfe, 0xf8, 0xeb, 0x1b, 0xed, 0x9d, 0xfa, 0xd5, 0x7c, 0x63, 0x5b, 0x27, 0xdb, 0x48, 0x58, - 0x5f, 0x9c, 0x9c, 0xef, 0x3e, 0xb5, 0xe0, 0x85, 0x15, 0x66, 0x1e, 0xae, 0xa1, 0xd5, 0xda, 0x95, - 0xfd, 0x07, 0xa8, 0xfc, 0xfb, 0x03, 0x74, 0xf9, 0x7f, 0x6c, 0x6f, 0x76, 0x3f, 0x03, 0x4f, 0xde, - 0xfb, 0x4d, 0xd7, 0x74, 0xd4, 0xfc, 0x0a, 0x1d, 0x1c, 0x1a, 0xa5, 0x47, 0x87, 0x46, 0xe9, 0xf8, - 0xd0, 0x40, 0x5f, 0x8e, 0x0d, 0xf4, 0xc3, 0xd8, 0x40, 0x0f, 0xc7, 0x06, 0x3a, 0x18, 0x1b, 0xe8, - 0xcf, 0xb1, 0x81, 0xfe, 0x1e, 0x1b, 0xa5, 0xe3, 0xb1, 0x81, 0xee, 0x1f, 0x19, 0xa5, 0xfd, 0x23, - 0x03, 0x1d, 0x1c, 0x19, 0xa5, 0x47, 0x47, 0x46, 0xe9, 0x53, 0xc7, 0x67, 0xf1, 0xae, 0x6f, 0x0e, - 0x59, 0xba, 0x1d, 0x39, 0x35, 0x13, 0x61, 0xa9, 0x43, 0x9f, 0xf1, 0xb0, 0x11, 0x73, 0x36, 0x0c, - 0x7a, 0xc0, 0x1b, 0x05, 0x6c, 0xc5, 0x5d, 0x9f, 0x59, 0x70, 0x47, 0xe6, 0xbb, 0xfa, 0x5f, 0xfe, - 0xb2, 0xba, 0x73, 0x6a, 0x6b, 0x5f, 0xf9, 0x27, 0x00, 0x00, 0xff, 0xff, 0x62, 0xaa, 0x8e, 0xa5, - 0xdb, 0x06, 0x00, 0x00, + // 909 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0x4f, 0x6f, 0x1b, 0x45, + 0x14, 0xf7, 0xac, 0x9d, 0xc6, 0x99, 0xb6, 0xc1, 0x1a, 0x0a, 0x6c, 0x4d, 0xb4, 0x8a, 0x2c, 0x55, + 0x0a, 0x01, 0xef, 0xa2, 0x56, 0x40, 0x55, 0xc4, 0x9f, 0xda, 0x31, 0x6d, 0xd4, 0xa2, 0x44, 0xeb, + 0x0d, 0x02, 0x2e, 0xab, 0xf1, 0xee, 0xf3, 0x66, 0x89, 0x77, 0x67, 0x33, 0x33, 0x6b, 0x6a, 0x21, + 0x24, 0xd4, 0x33, 0x42, 0x15, 0x1c, 0xe0, 0x06, 0x47, 0x3e, 0x02, 0xa2, 0x97, 0x5c, 0x10, 0x3d, + 0xa1, 0x88, 0x5e, 0x7a, 0x24, 0x0e, 0x07, 0xb8, 0xe5, 0x23, 0xa0, 0x9d, 0x5d, 0x27, 0x75, 0x2a, + 0xc0, 0xbd, 0xcd, 0x9b, 0xdf, 0x9f, 0x79, 0xf3, 0xf6, 0xed, 0x1b, 0xfc, 0xe6, 0x10, 0x84, 0x19, + 0x32, 0x4b, 0x78, 0xdb, 0x10, 0x51, 0xcb, 0xf7, 0x5c, 0x6f, 0x90, 0x0a, 0x09, 0xdc, 0x0d, 0x38, + 0x4b, 0x13, 0x2b, 0x49, 0x7b, 0x83, 0xd0, 0x73, 0xbd, 0x54, 0x48, 0x16, 0xb9, 0x3e, 0x95, 0xd4, + 0xa5, 0x49, 0x68, 0x26, 0x9c, 0x49, 0x46, 0x8c, 0x5c, 0x6c, 0xe6, 0x62, 0xf3, 0xb4, 0xb8, 0xde, + 0x0c, 0x42, 0xb9, 0x9d, 0xf6, 0x4c, 0x8f, 0x45, 0x56, 0xc0, 0x02, 0x66, 0x29, 0x59, 0x2f, 0xed, + 0xab, 0x48, 0x05, 0x6a, 0x95, 0xdb, 0xd5, 0x97, 0x02, 0xc6, 0x82, 0x01, 0x58, 0x34, 0x09, 0x2d, + 0x1a, 0xc7, 0x4c, 0x52, 0x19, 0xb2, 0x58, 0x14, 0xe8, 0x8b, 0xd3, 0x99, 0xb2, 0xe4, 0x71, 0xf0, + 0xe2, 0x34, 0x28, 0x47, 0x09, 0x4c, 0xa0, 0xa5, 0x69, 0x68, 0x48, 0x07, 0xa1, 0x4f, 0x25, 0x14, + 0x68, 0xe3, 0x14, 0x0a, 0x02, 0xe2, 0xe1, 0xb4, 0x79, 0xe3, 0xdb, 0x32, 0x5e, 0x7c, 0x1f, 0x24, + 0x0f, 0x3d, 0x61, 0xc3, 0x6e, 0x0a, 0x42, 0x92, 0x25, 0xbc, 0x10, 0xd3, 0x08, 0x44, 0x42, 0x3d, + 0xd0, 0xd1, 0x32, 0x5a, 0x59, 0xb0, 0x4f, 0x36, 0xc8, 0xf3, 0xf8, 0x4c, 0x3f, 0x1c, 0x48, 0xe0, + 0xba, 0xa6, 0xa0, 0x22, 0x22, 0xef, 0xe1, 0xaa, 0x2a, 0x8c, 0xdb, 0x1b, 0xe9, 0xe5, 0xe5, 0xf2, + 0xca, 0xe2, 0xe5, 0x97, 0xcd, 0xff, 0x2e, 0xa1, 0x99, 0x9f, 0x7b, 0x9b, 0xf6, 0x60, 0x60, 0xcf, + 0xab, 0xad, 0xd6, 0x88, 0xec, 0xe2, 0xc5, 0x7e, 0x08, 0x03, 0xdf, 0x15, 0x30, 0x00, 0x4f, 0x32, + 0xae, 0x57, 0x94, 0xdb, 0xea, 0x6c, 0x6e, 0xce, 0x28, 0x81, 0x96, 0xf1, 0xf3, 0xdf, 0x7b, 0xe5, + 0xb9, 0xaf, 0x91, 0x56, 0xab, 0x4e, 0x56, 0x55, 0x34, 0x59, 0xe9, 0xc8, 0x3e, 0xaf, 0x4e, 0xe8, + 0x16, 0x07, 0x90, 0x97, 0x30, 0x16, 0x92, 0x72, 0xe9, 0xca, 0x30, 0x02, 0x7d, 0x2e, 0xbb, 0x56, + 0x0b, 0x2b, 0x3a, 0x2f, 0x7f, 0x57, 0x41, 0xf6, 0x82, 0x42, 0x9d, 0x30, 0x02, 0x72, 0x09, 0x57, + 0x21, 0xf6, 0x73, 0xe2, 0x99, 0x27, 0x88, 0xf3, 0x10, 0xfb, 0x8a, 0x66, 0xe0, 0x8a, 0x90, 0x90, + 0xe8, 0xf3, 0x53, 0x94, 0x1f, 0x2a, 0xc8, 0x56, 0xfb, 0xa4, 0x81, 0xe7, 0x38, 0x8d, 0x03, 0xd0, + 0xab, 0x8a, 0x70, 0xae, 0x20, 0x1c, 0x69, 0x48, 0x47, 0x76, 0x0e, 0x35, 0x76, 0xf1, 0x33, 0xc7, + 0x1f, 0x46, 0x24, 0x2c, 0x16, 0x40, 0xde, 0xc6, 0x95, 0xac, 0x4b, 0x75, 0xb4, 0x5c, 0x5e, 0x39, + 0x3b, 0x6b, 0x45, 0xd6, 0xa8, 0xa4, 0xb6, 0xd2, 0x1d, 0xa7, 0xa5, 0x4d, 0xa5, 0x75, 0xa4, 0x15, + 0x69, 0x35, 0x7e, 0x41, 0x93, 0x66, 0xc8, 0xca, 0x98, 0x09, 0xc9, 0x3a, 0x2e, 0xef, 0xc0, 0xa8, + 0x38, 0xf1, 0x8d, 0xd9, 0xbf, 0x41, 0x26, 0x36, 0x6f, 0xc1, 0xa8, 0x13, 0x4b, 0x3e, 0xb2, 0x33, + 0x0f, 0xf2, 0x2a, 0x9e, 0x1b, 0xd2, 0x41, 0x0a, 0xba, 0xa6, 0xcc, 0xea, 0xa7, 0xcc, 0x72, 0xed, + 0x07, 0x19, 0xc3, 0xce, 0x89, 0xf5, 0xd7, 0x71, 0x75, 0x62, 0x41, 0x6a, 0x93, 0x44, 0xb2, 0xa6, + 0x53, 0x7e, 0x17, 0x4e, 0xfc, 0xb2, 0xbd, 0x3c, 0xb8, 0xa6, 0x5d, 0x45, 0x8d, 0x7b, 0x08, 0xe3, + 0x93, 0xcb, 0x67, 0x65, 0xcb, 0x7e, 0x1a, 0xa5, 0x7d, 0xaa, 0x46, 0xb2, 0x95, 0x8e, 0xb4, 0x8a, + 0xb2, 0xe7, 0x79, 0x9b, 0x4f, 0x57, 0x84, 0xbc, 0xf4, 0xab, 0xef, 0x4e, 0x32, 0xca, 0xf6, 0xc9, + 0x0b, 0xf8, 0x59, 0xe7, 0x43, 0xd7, 0xb9, 0x69, 0x6f, 0x6c, 0xdd, 0xb8, 0xb9, 0xb9, 0xe5, 0xb8, + 0xad, 0x8f, 0x9c, 0x4e, 0xb7, 0x56, 0x22, 0x17, 0xf1, 0x73, 0xd3, 0xc0, 0xe6, 0xf5, 0xf6, 0xad, + 0x8e, 0xd3, 0xad, 0xa1, 0xd5, 0x77, 0xf0, 0xd9, 0xc7, 0x7e, 0x18, 0x72, 0x01, 0xd7, 0xd6, 0xda, + 0x6e, 0xfb, 0xf6, 0x56, 0xd7, 0xe9, 0xd8, 0xee, 0x0d, 0x7b, 0x63, 0x6b, 0xb3, 0x56, 0x22, 0xe7, + 0x70, 0xb5, 0x6b, 0xb7, 0xdd, 0xee, 0xba, 0xd3, 0xa9, 0xa1, 0x2c, 0x5a, 0xeb, 0x3a, 0x79, 0xa4, + 0x5d, 0x7e, 0xa8, 0xe1, 0xf3, 0x6d, 0x35, 0xeb, 0xb2, 0xbc, 0xae, 0x6f, 0xae, 0x93, 0x2f, 0x35, + 0x3c, 0x5f, 0xf4, 0x18, 0x99, 0xf1, 0x5a, 0x93, 0x29, 0x51, 0xb7, 0x66, 0xe6, 0xe7, 0xcd, 0xdb, + 0xf8, 0x1e, 0x3d, 0xf8, 0x49, 0x43, 0xe3, 0x5f, 0x75, 0xa7, 0xff, 0xda, 0x1d, 0xaf, 0x29, 0xc0, + 0x4b, 0x39, 0x44, 0x20, 0xb6, 0x9b, 0x3d, 0x2a, 0x42, 0xaf, 0x19, 0xb1, 0x38, 0x94, 0x8c, 0xbf, + 0xb2, 0x7c, 0x1a, 0x16, 0x92, 0xc6, 0x3e, 0xe5, 0xfe, 0x09, 0x63, 0x08, 0xa2, 0x19, 0xb2, 0x66, + 0x0c, 0xf2, 0x53, 0xc6, 0x77, 0x9a, 0x1c, 0xa8, 0x7f, 0xf7, 0xe1, 0x9f, 0xdf, 0x68, 0x6f, 0x35, + 0xae, 0x16, 0x43, 0xdd, 0x3a, 0x1e, 0x58, 0xc2, 0xfa, 0xec, 0x78, 0xfd, 0xf9, 0x13, 0x6f, 0x80, + 0xb0, 0xa2, 0x3c, 0xcd, 0x6b, 0x68, 0xb5, 0x7e, 0x65, 0xef, 0x3e, 0x2a, 0xff, 0x7e, 0x1f, 0x5d, + 0xfa, 0x9f, 0x9b, 0x6d, 0xf4, 0x3e, 0x01, 0x4f, 0xde, 0xfd, 0x4d, 0xd7, 0x74, 0xd4, 0xfa, 0x0a, + 0xed, 0x1f, 0x18, 0xa5, 0x47, 0x07, 0x46, 0xe9, 0xe8, 0xc0, 0x40, 0x5f, 0x8c, 0x0d, 0xf4, 0xe3, + 0xd8, 0x40, 0x0f, 0xc6, 0x06, 0xda, 0x1f, 0x1b, 0xe8, 0x8f, 0xb1, 0x81, 0xfe, 0x1a, 0x1b, 0xa5, + 0xa3, 0xb1, 0x81, 0xee, 0x1d, 0x1a, 0xa5, 0xbd, 0x43, 0x03, 0xed, 0x1f, 0x1a, 0xa5, 0x47, 0x87, + 0x46, 0xe9, 0x63, 0x27, 0x60, 0xc9, 0x4e, 0x60, 0x0e, 0x59, 0x36, 0x40, 0x39, 0x35, 0x53, 0x61, + 0xa9, 0x45, 0x9f, 0xf1, 0xa8, 0x99, 0x70, 0x36, 0x0c, 0x7d, 0xe0, 0xcd, 0x09, 0x6c, 0x25, 0xbd, + 0x80, 0x59, 0x70, 0x47, 0x16, 0xe3, 0xfc, 0x5f, 0x5e, 0xb5, 0xde, 0x19, 0x35, 0xd8, 0xaf, 0xfc, + 0x13, 0x00, 0x00, 0xff, 0xff, 0xb6, 0x9d, 0x37, 0x8c, 0xfe, 0x06, 0x00, 0x00, } func (x MetricType) String() string { diff --git a/pbgo/extschema/schema/discovery/crudapi/api.vesapi.go b/pbgo/extschema/schema/discovery/crudapi/api.vesapi.go index 8f978eb9f..f7e688c50 100644 --- a/pbgo/extschema/schema/discovery/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/discovery/crudapi/api.vesapi.go @@ -3834,10 +3834,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/discovery/object.pb.go b/pbgo/extschema/schema/discovery/object.pb.go index 13ad6555c..4fa148825 100644 --- a/pbgo/extschema/schema/discovery/object.pb.go +++ b/pbgo/extschema/schema/discovery/object.pb.go @@ -248,46 +248,47 @@ func init() { } var fileDescriptor_56065040c22ef933 = []byte{ - // 619 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x4f, 0x4f, 0xd4, 0x4c, - 0x18, 0xc0, 0x77, 0x96, 0xcd, 0x02, 0x03, 0xe1, 0x25, 0x7d, 0x0f, 0x56, 0xd4, 0x09, 0x2e, 0x46, - 0x39, 0xd8, 0x36, 0xc1, 0x10, 0x03, 0x31, 0x8a, 0xa0, 0xe1, 0x20, 0xc4, 0x64, 0x31, 0x1e, 0xbc, - 0x6c, 0xa6, 0xd3, 0xa7, 0x65, 0x74, 0xbb, 0xd3, 0xcc, 0x4c, 0x2b, 0x7b, 0x30, 0x31, 0x5e, 0xbd, - 0xf8, 0x31, 0x8c, 0x07, 0xe3, 0x47, 0x10, 0x4f, 0xde, 0x24, 0x9c, 0x38, 0x4a, 0xf7, 0xe2, 0x91, - 0x8f, 0x60, 0x98, 0xd2, 0x0d, 0x4b, 0x76, 0x13, 0x13, 0x6e, 0x33, 0x79, 0x7e, 0xf3, 0xeb, 0x3c, - 0x7f, 0x3a, 0xf8, 0x56, 0x06, 0xca, 0xe5, 0xc2, 0x53, 0x6c, 0x17, 0x62, 0xea, 0x05, 0x5c, 0x31, - 0x91, 0x81, 0xec, 0x7a, 0xc2, 0x7f, 0x0d, 0x4c, 0xbb, 0x89, 0x14, 0x5a, 0x58, 0x57, 0x0a, 0xca, - 0x2d, 0x28, 0xb7, 0x4f, 0xcd, 0x39, 0x11, 0xd7, 0xbb, 0xa9, 0xef, 0x32, 0x11, 0x7b, 0x91, 0x88, - 0x84, 0x67, 0x78, 0x3f, 0x0d, 0xcd, 0xce, 0x6c, 0xcc, 0xaa, 0xf0, 0xcc, 0x2d, 0x8c, 0xfa, 0x9a, - 0xee, 0x26, 0xa0, 0xce, 0xa0, 0x6b, 0x83, 0x90, 0x48, 0x34, 0x17, 0x9d, 0x32, 0x78, 0x75, 0x30, - 0x78, 0xfe, 0x5c, 0x63, 0x30, 0x94, 0x81, 0x82, 0x4e, 0x36, 0x78, 0xbc, 0xf1, 0xb5, 0x86, 0xeb, - 0xcf, 0x4d, 0x66, 0xd6, 0x0a, 0x9e, 0x88, 0x41, 0xd3, 0x80, 0x6a, 0x6a, 0xa3, 0x79, 0xb4, 0x38, - 0xb5, 0x74, 0xc3, 0x1d, 0x4c, 0xb3, 0x00, 0xb7, 0x41, 0xd3, 0x17, 0xdd, 0x04, 0x9a, 0x7d, 0xdc, - 0xda, 0xc2, 0xff, 0xa9, 0xae, 0xd2, 0x10, 0xb7, 0xfa, 0x86, 0xaa, 0x31, 0x2c, 0x5c, 0x30, 0xec, - 0x18, 0xea, 0x82, 0x67, 0xa6, 0x38, 0xbb, 0x5d, 0xda, 0x96, 0x71, 0x4d, 0x25, 0xc0, 0xec, 0x31, - 0xa3, 0xb8, 0xe9, 0x8e, 0xa8, 0xb5, 0xbb, 0x93, 0x00, 0x33, 0x02, 0x83, 0xaf, 0xf6, 0xaa, 0x1f, - 0x1e, 0xd5, 0x0b, 0xd5, 0x8f, 0x7d, 0xbb, 0x3a, 0x8b, 0x0e, 0xf7, 0xed, 0x5f, 0x55, 0xbc, 0x86, - 0xc7, 0x36, 0x41, 0x5b, 0x2b, 0xe1, 0xf2, 0x1e, 0x73, 0x14, 0xb0, 0x54, 0x42, 0x0c, 0x6a, 0xd7, - 0xf1, 0xa9, 0xe2, 0xcc, 0x89, 0x45, 0x87, 0x6b, 0x21, 0xef, 0xce, 0x67, 0xa0, 0x1c, 0x2e, 0x1c, - 0xde, 0x09, 0x25, 0x55, 0x5a, 0xa6, 0x4c, 0xa7, 0x12, 0x1c, 0x09, 0x34, 0xc0, 0xeb, 0x78, 0xbc, - 0x09, 0x49, 0x9b, 0x32, 0xb0, 0xee, 0x0f, 0xb7, 0xa4, 0x0a, 0x46, 0x2a, 0xde, 0x4a, 0xae, 0x01, - 0x3f, 0xc6, 0xf5, 0x0d, 0x09, 0x54, 0x5f, 0x4e, 0xf1, 0x04, 0xda, 0x70, 0x39, 0x45, 0x6d, 0x8b, - 0xab, 0xcb, 0x14, 0xa3, 0xb1, 0x85, 0x27, 0xca, 0xba, 0x5b, 0x6b, 0x78, 0x3c, 0x62, 0x2d, 0xd3, - 0xab, 0xa2, 0xdd, 0x77, 0x46, 0xf6, 0x6a, 0xb3, 0x2d, 0x7c, 0xda, 0xee, 0x77, 0xac, 0x1e, 0xb1, - 0xd3, 0x75, 0xe3, 0x5b, 0x15, 0x4f, 0xef, 0x68, 0xaa, 0x53, 0xf5, 0xcf, 0x43, 0x58, 0xe0, 0x43, - 0x86, 0xf0, 0x19, 0x9e, 0x2a, 0xfe, 0xd1, 0x96, 0x84, 0x50, 0xd9, 0xd5, 0xf9, 0xb1, 0xc5, 0xa9, - 0xa5, 0xeb, 0x43, 0x47, 0xb8, 0x09, 0xe1, 0xe9, 0xe1, 0xf5, 0xe9, 0x2f, 0xef, 0x26, 0xfb, 0x77, - 0x6c, 0x62, 0x51, 0x06, 0x95, 0xf5, 0x00, 0x63, 0x26, 0x3a, 0x01, 0x37, 0xff, 0x8a, 0x5d, 0x1b, - 0xea, 0xda, 0x28, 0x01, 0x73, 0x91, 0x73, 0xbc, 0xf5, 0x14, 0xe3, 0x0c, 0x64, 0x4b, 0x99, 0xab, - 0x9e, 0xcd, 0xf1, 0xed, 0x91, 0xb5, 0x79, 0x09, 0xb2, 0x48, 0xca, 0x78, 0x26, 0xb3, 0x72, 0xbb, - 0xfa, 0xff, 0xe1, 0xc3, 0x59, 0x3c, 0x83, 0xa7, 0xcb, 0x14, 0xdd, 0x94, 0x07, 0xeb, 0x1f, 0xd1, - 0xc1, 0x31, 0xa9, 0x1c, 0x1d, 0x93, 0xca, 0xc9, 0x31, 0x41, 0xef, 0x73, 0x82, 0x3e, 0xe7, 0x04, - 0xfd, 0xcc, 0x09, 0x3a, 0xc8, 0x09, 0x3a, 0xca, 0x09, 0xfa, 0x9d, 0x13, 0xf4, 0x27, 0x27, 0x95, - 0x93, 0x9c, 0xa0, 0x4f, 0x3d, 0x52, 0xf9, 0xde, 0x23, 0xe8, 0xa0, 0x47, 0x2a, 0x47, 0x3d, 0x52, - 0x79, 0xb5, 0x1d, 0x89, 0xe4, 0x4d, 0xe4, 0x66, 0xa2, 0xad, 0x41, 0x4a, 0xea, 0xa6, 0xca, 0x33, - 0x8b, 0x50, 0xc8, 0xd8, 0x49, 0xa4, 0xc8, 0x78, 0x00, 0xd2, 0x29, 0xc3, 0x5e, 0xe2, 0x47, 0xc2, - 0x83, 0x3d, 0x7d, 0xf6, 0x86, 0x5c, 0x7c, 0xa7, 0xfc, 0xba, 0x79, 0x46, 0xee, 0xfd, 0x0d, 0x00, - 0x00, 0xff, 0xff, 0x42, 0x2c, 0x23, 0xdb, 0x37, 0x05, 0x00, 0x00, + // 637 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xb1, 0x6f, 0xd3, 0x4e, + 0x14, 0xc7, 0x73, 0x49, 0x7e, 0x69, 0x7b, 0xad, 0xfa, 0xab, 0xcc, 0x40, 0x28, 0x70, 0x2a, 0x29, + 0x82, 0x0e, 0xd8, 0x96, 0x8a, 0x3a, 0x50, 0x21, 0x40, 0x2d, 0xa8, 0x03, 0xad, 0x90, 0x52, 0xd4, + 0x01, 0x86, 0x70, 0x3e, 0xbf, 0xb8, 0x07, 0x71, 0xce, 0xba, 0x3b, 0x9b, 0x66, 0x40, 0x42, 0x88, + 0x8d, 0x85, 0x3f, 0x03, 0x31, 0xf1, 0x27, 0x50, 0x26, 0x36, 0xaa, 0x4e, 0x1d, 0xa9, 0xb3, 0x30, + 0xf6, 0x4f, 0x40, 0x3d, 0xd7, 0xa1, 0x89, 0x12, 0xc4, 0x92, 0xed, 0x4e, 0xdf, 0xcf, 0xfb, 0xbe, + 0x7b, 0xf6, 0x7b, 0x0f, 0x5f, 0x4f, 0x40, 0x39, 0x5c, 0xb8, 0x8a, 0xed, 0x42, 0x48, 0x5d, 0x9f, + 0x2b, 0x26, 0x12, 0x90, 0x1d, 0x57, 0x78, 0x2f, 0x81, 0x69, 0x27, 0x92, 0x42, 0x0b, 0xeb, 0x62, + 0x46, 0x39, 0x19, 0xe5, 0xf4, 0xa8, 0x79, 0x3b, 0xe0, 0x7a, 0x37, 0xf6, 0x1c, 0x26, 0x42, 0x37, + 0x10, 0x81, 0x70, 0x0d, 0xef, 0xc5, 0x4d, 0x73, 0x33, 0x17, 0x73, 0xca, 0x7c, 0xe6, 0x17, 0x47, + 0x65, 0xd3, 0x9d, 0x08, 0xd4, 0x19, 0x74, 0xb9, 0x1f, 0x12, 0x91, 0xe6, 0xa2, 0x9d, 0x8b, 0x97, + 0xfa, 0xc5, 0xf3, 0x71, 0xb5, 0x7e, 0x29, 0x01, 0x05, 0xed, 0xa4, 0x3f, 0xbc, 0xf6, 0xe3, 0x3f, + 0x5c, 0x79, 0x62, 0x2a, 0xb3, 0xee, 0xe0, 0xc9, 0x10, 0x34, 0xf5, 0xa9, 0xa6, 0x55, 0xb4, 0x80, + 0x96, 0xa6, 0x97, 0xaf, 0x3a, 0xfd, 0x65, 0x66, 0xe0, 0x16, 0x68, 0xfa, 0xb4, 0x13, 0x41, 0xbd, + 0x87, 0x5b, 0x9b, 0xf8, 0x7f, 0xd5, 0x51, 0x1a, 0xc2, 0x46, 0xcf, 0xa1, 0x68, 0x1c, 0x16, 0x07, + 0x1c, 0xb6, 0x0d, 0x35, 0xe0, 0x33, 0x9b, 0xc5, 0x6e, 0xe5, 0x6e, 0x2b, 0xb8, 0xac, 0x22, 0x60, + 0xd5, 0x92, 0xb1, 0xb8, 0xe6, 0x8c, 0xf8, 0xd6, 0xce, 0x76, 0x04, 0xcc, 0x18, 0x18, 0x7c, 0xf5, + 0x7d, 0xf9, 0xdd, 0xfd, 0x4a, 0x66, 0xf5, 0x6d, 0xbf, 0x5a, 0x9c, 0x43, 0x87, 0xfb, 0xd5, 0x93, + 0x12, 0xf6, 0x70, 0x69, 0x03, 0xb4, 0xf5, 0xbc, 0xb9, 0xb2, 0xc7, 0x6c, 0x05, 0x2c, 0x96, 0x10, + 0x82, 0xda, 0xb5, 0x3d, 0xaa, 0x38, 0xb3, 0x43, 0xd1, 0xe6, 0x5a, 0xc8, 0x5b, 0x0b, 0x83, 0xb2, + 0xd2, 0xb4, 0xed, 0x53, 0xe9, 0xff, 0x21, 0x12, 0x50, 0x36, 0x17, 0x36, 0x6f, 0x37, 0x25, 0x55, + 0x5a, 0xc6, 0x4c, 0xc7, 0x12, 0x6c, 0x09, 0xd4, 0xc7, 0x14, 0x4f, 0xd4, 0x21, 0x6a, 0x51, 0x06, + 0xd6, 0xce, 0xf0, 0x3c, 0xb1, 0x82, 0xbf, 0x25, 0xc9, 0xe4, 0xe1, 0x19, 0x5e, 0x4b, 0xae, 0x01, + 0xbf, 0xc0, 0x95, 0x75, 0x09, 0x54, 0x8f, 0x35, 0xc3, 0x43, 0x68, 0xc1, 0x18, 0x33, 0x30, 0x5c, + 0xde, 0xe4, 0x6a, 0xbc, 0xff, 0xa2, 0xb6, 0x89, 0x27, 0xf3, 0xc6, 0xb0, 0x1e, 0xe0, 0x89, 0x80, + 0x35, 0x4c, 0x33, 0x65, 0xfd, 0x78, 0x73, 0x64, 0x33, 0x6d, 0xb4, 0x84, 0x47, 0x5b, 0xbd, 0x96, + 0xaa, 0x04, 0xec, 0xf4, 0x5c, 0xfb, 0x52, 0xc4, 0x33, 0xdb, 0x9a, 0xea, 0x58, 0xfd, 0xf3, 0x94, + 0x64, 0xf8, 0x90, 0x29, 0x79, 0x8c, 0xa7, 0xb3, 0x25, 0xd2, 0x90, 0xd0, 0x54, 0xd5, 0xe2, 0x42, + 0x69, 0x69, 0x7a, 0xf9, 0xca, 0xd0, 0x19, 0xab, 0x43, 0xf3, 0x34, 0x78, 0x6d, 0xe6, 0xf3, 0x9b, + 0xa9, 0xde, 0x1b, 0xeb, 0x58, 0xe4, 0xa2, 0xb2, 0xee, 0x62, 0xcc, 0x44, 0xdb, 0xe7, 0x66, 0x98, + 0xab, 0xe5, 0xa1, 0x5e, 0xeb, 0x39, 0x60, 0x1e, 0x72, 0x8e, 0xb7, 0x1e, 0x61, 0x9c, 0x80, 0x6c, + 0x28, 0xf3, 0xd4, 0xb3, 0x41, 0xbb, 0x31, 0xf2, 0xdb, 0xec, 0x80, 0xcc, 0x8a, 0x32, 0x3e, 0x53, + 0x49, 0x7e, 0x5d, 0xbd, 0x70, 0x78, 0x6f, 0x0e, 0xcf, 0xe2, 0x99, 0xbc, 0x44, 0x27, 0xe6, 0xfe, + 0xda, 0x07, 0x74, 0x70, 0x4c, 0x0a, 0x47, 0xc7, 0xa4, 0x70, 0x72, 0x4c, 0xd0, 0xdb, 0x94, 0xa0, + 0x4f, 0x29, 0x41, 0xdf, 0x53, 0x82, 0x0e, 0x52, 0x82, 0x8e, 0x52, 0x82, 0x7e, 0xa6, 0x04, 0xfd, + 0x4a, 0x49, 0xe1, 0x24, 0x25, 0xe8, 0x63, 0x97, 0x14, 0xbe, 0x76, 0x09, 0x3a, 0xe8, 0x92, 0xc2, + 0x51, 0x97, 0x14, 0x9e, 0x6d, 0x05, 0x22, 0x7a, 0x15, 0x38, 0x89, 0x68, 0x69, 0x90, 0x92, 0x3a, + 0xb1, 0x72, 0xcd, 0xa1, 0x29, 0x64, 0x68, 0x47, 0x52, 0x24, 0xdc, 0x07, 0x69, 0xe7, 0xb2, 0x1b, + 0x79, 0x81, 0x70, 0x61, 0x4f, 0x9f, 0x2d, 0xb9, 0xc1, 0x45, 0xea, 0x55, 0xcc, 0x9e, 0xbb, 0xfd, + 0x3b, 0x00, 0x00, 0xff, 0xff, 0x2b, 0x1b, 0x76, 0x07, 0xd8, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/discovery/public_crudapi.pb.go b/pbgo/extschema/schema/discovery/public_crudapi.pb.go index 5c2675f03..6b0db55b1 100644 --- a/pbgo/extschema/schema/discovery/public_crudapi.pb.go +++ b/pbgo/extschema/schema/discovery/public_crudapi.pb.go @@ -1059,108 +1059,109 @@ func init() { } var fileDescriptor_521bc9dae74ecfa3 = []byte{ - // 1614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0xd9, + // 1630 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x13, 0xd9, 0x1d, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0x63, 0x78, 0x85, 0xe0, 0xb8, 0x74, 0xe4, 0x3a, 0x01, - 0x42, 0x5a, 0x8f, 0x51, 0x2a, 0x5a, 0x88, 0x2a, 0xa8, 0x93, 0x38, 0x56, 0xd2, 0x84, 0xa0, 0xb1, - 0xa1, 0xa8, 0xaa, 0x34, 0x1a, 0x8f, 0x9f, 0xcd, 0x14, 0xdb, 0x33, 0xbc, 0xf7, 0xec, 0x60, 0x55, - 0x91, 0x0a, 0x97, 0x1e, 0x5b, 0xa9, 0x87, 0x4a, 0x55, 0x0f, 0xbd, 0xac, 0xb4, 0x7b, 0xdb, 0xe3, - 0x4a, 0x39, 0x2c, 0xa7, 0x05, 0x71, 0x58, 0x21, 0xf6, 0xc2, 0x65, 0xa5, 0xc5, 0x59, 0xad, 0x38, - 0xa2, 0x95, 0xb8, 0xaf, 0xe6, 0xbd, 0x19, 0x63, 0x3b, 0x76, 0xe2, 0x90, 0x9c, 0x3c, 0xef, 0xff, - 0xf1, 0x9b, 0xff, 0xef, 0xfd, 0x3f, 0xde, 0xf3, 0xc0, 0x5f, 0x37, 0x30, 0x55, 0x4c, 0x2b, 0x45, - 0x8d, 0xfb, 0xb8, 0xaa, 0xa7, 0x8a, 0x26, 0x35, 0xac, 0x06, 0x26, 0xcd, 0x94, 0x5d, 0x2f, 0x54, - 0x4c, 0x43, 0x33, 0x48, 0xbd, 0xa8, 0xdb, 0xa6, 0x62, 0x13, 0x8b, 0x59, 0xe8, 0x9c, 0xb0, 0x56, - 0x84, 0xb5, 0xd2, 0xb6, 0x8e, 0x25, 0xcb, 0x26, 0xbb, 0x5f, 0x2f, 0x28, 0x86, 0x55, 0x4d, 0x95, - 0xad, 0xb2, 0x95, 0xe2, 0xf6, 0x85, 0x7a, 0x89, 0xaf, 0xf8, 0x82, 0x3f, 0x09, 0x9c, 0xd8, 0xf9, - 0xb2, 0x65, 0x95, 0x2b, 0x38, 0xa5, 0xdb, 0x66, 0x4a, 0xaf, 0xd5, 0x2c, 0xa6, 0x33, 0xd3, 0xaa, - 0x51, 0x57, 0xfb, 0x73, 0x57, 0xdb, 0xc6, 0xc0, 0x55, 0x9b, 0x35, 0x5d, 0xe5, 0xec, 0xa0, 0x80, - 0xad, 0xc2, 0x5f, 0xb1, 0xc1, 0x5c, 0xab, 0x99, 0x41, 0x56, 0xac, 0x69, 0x63, 0xef, 0x3d, 0xb1, - 0x6e, 0x23, 0x4c, 0x88, 0x45, 0xda, 0x31, 0x74, 0xeb, 0x2c, 0xbb, 0x33, 0xc0, 0xe9, 0x6e, 0x65, - 0x27, 0x66, 0xa2, 0x5b, 0xd5, 0xc0, 0x14, 0xd7, 0x1a, 0x3d, 0xee, 0xf1, 0x1e, 0x1b, 0x13, 0x6f, - 0x6b, 0x5d, 0x16, 0x89, 0xcf, 0x00, 0x1c, 0x5f, 0x26, 0x58, 0x67, 0x58, 0xc5, 0x0f, 0xeb, 0x98, - 0x32, 0x74, 0x13, 0x86, 0xaa, 0x98, 0xe9, 0x45, 0x9d, 0xe9, 0x51, 0x10, 0x07, 0x73, 0x91, 0x85, - 0x19, 0xa5, 0x3b, 0x19, 0x5b, 0x9c, 0xbf, 0xf0, 0xda, 0xc4, 0x4c, 0xcf, 0x37, 0x6d, 0xac, 0xb6, - 0x9d, 0xd0, 0x06, 0x0c, 0x50, 0x1b, 0x1b, 0x51, 0x1f, 0x77, 0xbe, 0xa4, 0x0c, 0xc8, 0xa4, 0x22, - 0x00, 0x72, 0x36, 0x36, 0x1c, 0x80, 0xa5, 0xc9, 0xff, 0xee, 0x8c, 0x39, 0x7e, 0x4a, 0xd9, 0xd0, - 0x9c, 0x5f, 0x95, 0xa3, 0x2c, 0x86, 0x5f, 0xdc, 0x08, 0x8a, 0x17, 0x26, 0xde, 0x03, 0x38, 0xe1, - 0xc5, 0x4a, 0x6d, 0xab, 0x46, 0x31, 0xfa, 0xfd, 0xbe, 0x60, 0xe3, 0x7d, 0x83, 0xcd, 0x62, 0xd6, - 0x27, 0xd2, 0x2d, 0x38, 0x49, 0x9b, 0x94, 0xe1, 0xaa, 0xd6, 0x06, 0xf1, 0x73, 0x90, 0x8b, 0x3d, - 0x20, 0x39, 0x6e, 0xb5, 0x1f, 0x6a, 0x42, 0xb8, 0x6f, 0x7a, 0x80, 0x6b, 0x5d, 0xd4, 0x67, 0x07, - 0x52, 0xcf, 0x62, 0x76, 0x04, 0xde, 0xdf, 0x02, 0x38, 0xa1, 0x62, 0xbb, 0xa2, 0x1b, 0xed, 0x24, - 0xfd, 0x61, 0x1f, 0xef, 0xd9, 0xbe, 0xbc, 0x5d, 0xb7, 0x3e, 0xdc, 0x37, 0xbb, 0x42, 0x9d, 0x1b, - 0x18, 0xaa, 0x8b, 0x70, 0x48, 0xb8, 0x28, 0x05, 0x25, 0x82, 0xa9, 0x55, 0x27, 0x06, 0xd6, 0x1a, - 0x98, 0x50, 0xd3, 0xaa, 0xf1, 0xbd, 0x0c, 0x2f, 0x05, 0xde, 0xee, 0x02, 0xa0, 0x4e, 0x7a, 0xda, - 0xbb, 0x42, 0xd9, 0xc9, 0xef, 0x34, 0x9c, 0x6c, 0xd3, 0x13, 0x79, 0x4d, 0xfc, 0x07, 0x40, 0x98, - 0xc5, 0xcc, 0xa3, 0x7b, 0x1e, 0x86, 0x6b, 0x7a, 0x15, 0x53, 0x5b, 0x37, 0x30, 0xe7, 0x1b, 0x56, - 0x3f, 0x08, 0x10, 0x82, 0x01, 0x67, 0xc1, 0xa9, 0x84, 0x55, 0xfe, 0x8c, 0xfe, 0x04, 0x9d, 0x37, - 0x72, 0x30, 0xad, 0x64, 0x91, 0xaa, 0xce, 0x78, 0x38, 0x13, 0x0b, 0xca, 0x41, 0x49, 0xf1, 0xde, - 0xbf, 0xca, 0x3d, 0x96, 0xad, 0x22, 0x56, 0x27, 0x48, 0x97, 0x2c, 0xf1, 0x38, 0x08, 0x23, 0x1d, - 0x96, 0x28, 0x0b, 0x23, 0x06, 0xaf, 0x49, 0xfe, 0x1a, 0x77, 0x3b, 0x2f, 0x1e, 0x52, 0xf4, 0x2e, - 0x2f, 0x15, 0x0a, 0x57, 0x07, 0x1a, 0xad, 0xc3, 0x31, 0x22, 0x76, 0x41, 0x20, 0xf9, 0x0f, 0x69, - 0x9f, 0xee, 0x8a, 0x50, 0x23, 0xae, 0x33, 0xc7, 0xea, 0x97, 0x8d, 0xc0, 0x01, 0xd9, 0xe8, 0xea, - 0xa3, 0xd1, 0x93, 0xe8, 0xa3, 0x53, 0x27, 0xd2, 0x47, 0xc1, 0x63, 0xf7, 0x11, 0x5a, 0x81, 0x41, - 0xca, 0x74, 0x56, 0xa7, 0xd1, 0xff, 0xff, 0x0f, 0xc4, 0xfd, 0x73, 0x91, 0x85, 0x0b, 0x03, 0xe1, - 0x72, 0xdc, 0x50, 0x84, 0xb7, 0xe4, 0x7f, 0xba, 0x03, 0x54, 0xd7, 0x17, 0xad, 0xc1, 0xd3, 0x04, - 0x97, 0x30, 0x21, 0x66, 0xad, 0xac, 0x89, 0xf9, 0x4f, 0xa3, 0x21, 0x0e, 0x77, 0x7e, 0x40, 0xe3, - 0x95, 0x38, 0x33, 0xa9, 0xed, 0x26, 0xe4, 0x14, 0xdd, 0x85, 0xd1, 0x22, 0xae, 0x60, 0x86, 0x8b, - 0x9a, 0xd0, 0xe1, 0x62, 0x1b, 0x31, 0x3c, 0x04, 0xe2, 0x94, 0xeb, 0xad, 0xba, 0xce, 0x1e, 0xee, - 0x3d, 0x38, 0x5d, 0x34, 0xa9, 0x5e, 0xa8, 0xf4, 0x03, 0x86, 0x43, 0x00, 0x9f, 0xf3, 0xdc, 0x7b, - 0x90, 0x3b, 0x5a, 0x75, 0x3d, 0x10, 0x02, 0x92, 0x2f, 0xf1, 0x09, 0x80, 0x91, 0x0d, 0x93, 0x0e, - 0xd9, 0x9e, 0xbf, 0x84, 0x63, 0x15, 0xbd, 0x80, 0x2b, 0x5a, 0xc9, 0xac, 0x30, 0x4c, 0xdc, 0x36, - 0x8d, 0x70, 0xd9, 0x2a, 0x17, 0xa1, 0x19, 0x38, 0x4e, 0xb0, 0x6d, 0x11, 0xa6, 0x95, 0x4c, 0x5c, - 0x29, 0xd2, 0xa8, 0x3f, 0xee, 0x9f, 0x0b, 0xab, 0x63, 0x42, 0xb8, 0xca, 0x65, 0xe8, 0x0a, 0x3c, - 0xe3, 0x1a, 0x89, 0xa4, 0x78, 0xb6, 0x01, 0x6e, 0x8b, 0x84, 0x4e, 0xa4, 0x50, 0x78, 0x24, 0x3e, - 0x0f, 0x42, 0x49, 0xc4, 0x29, 0x9a, 0x75, 0x8d, 0xe1, 0x2a, 0x9a, 0x82, 0x41, 0x86, 0x6b, 0x7a, - 0x8d, 0xf1, 0xea, 0x0a, 0xab, 0xee, 0xea, 0x23, 0x66, 0x8c, 0x04, 0xfd, 0x75, 0xb3, 0x28, 0xc6, - 0x9c, 0xea, 0x3c, 0xa2, 0x38, 0x8c, 0x14, 0x31, 0x35, 0x88, 0xc9, 0xcf, 0xd8, 0x68, 0x44, 0x30, - 0xed, 0x10, 0xa1, 0x18, 0x0c, 0x79, 0xdb, 0x1c, 0x1d, 0x8b, 0x83, 0xb9, 0x90, 0xda, 0x5e, 0xa3, - 0x4d, 0x18, 0xe4, 0x9b, 0x22, 0x28, 0x45, 0x16, 0xae, 0x0e, 0x2c, 0xd4, 0x5e, 0x52, 0xca, 0x06, - 0xf7, 0xcb, 0xd4, 0x18, 0x69, 0xaa, 0x2e, 0x08, 0xfa, 0x0b, 0x8c, 0x74, 0xdc, 0x78, 0xdc, 0x12, - 0x58, 0x1c, 0x1e, 0x33, 0xfd, 0xc1, 0x59, 0x00, 0x77, 0xc2, 0xa1, 0xeb, 0x10, 0x5a, 0xdb, 0x35, - 0x4c, 0x34, 0xe7, 0x52, 0x11, 0x0d, 0xf3, 0x46, 0x8d, 0xf5, 0x80, 0xdf, 0x35, 0xf1, 0xb6, 0x57, - 0x5d, 0x61, 0x6e, 0xed, 0x48, 0xba, 0x86, 0xcd, 0xf8, 0x49, 0x0c, 0x9b, 0x89, 0x63, 0x0d, 0x9b, - 0x9b, 0x30, 0x54, 0xc6, 0x8c, 0xcf, 0x0c, 0x77, 0x6c, 0x0d, 0x35, 0x70, 0xd4, 0x53, 0x65, 0xb1, - 0x40, 0x6b, 0x10, 0xba, 0x15, 0x49, 0x31, 0x73, 0xa7, 0xc2, 0x51, 0x86, 0x4c, 0x58, 0x78, 0xe7, - 0x30, 0x8b, 0x5d, 0x87, 0x91, 0x8e, 0x54, 0x3a, 0x15, 0xf6, 0x00, 0x37, 0xdd, 0x6a, 0x74, 0x1e, - 0xd1, 0x19, 0x38, 0xda, 0xd0, 0x2b, 0x75, 0xaf, 0x10, 0xc5, 0x62, 0xd1, 0x77, 0x0d, 0xc4, 0x6e, - 0x40, 0xa9, 0x37, 0x63, 0x47, 0xf1, 0x5f, 0x0f, 0x84, 0x46, 0xa5, 0x60, 0xe2, 0x31, 0x80, 0x63, - 0x9d, 0x95, 0x80, 0x6e, 0xc2, 0x51, 0x93, 0xe1, 0x2a, 0x8d, 0x8a, 0xe1, 0x79, 0x79, 0xe8, 0xfa, - 0x51, 0x85, 0x1f, 0xba, 0x02, 0x83, 0xe2, 0xbe, 0x1b, 0xf5, 0x71, 0x84, 0x68, 0x0f, 0x42, 0xc6, - 0x51, 0xf2, 0x0d, 0x75, 0xed, 0x12, 0x0f, 0xe0, 0xf8, 0x0a, 0x9f, 0x71, 0x1f, 0x7f, 0xfc, 0xcf, - 0x41, 0xa9, 0xa4, 0x9b, 0x15, 0xcd, 0x2c, 0xb5, 0x67, 0x21, 0xef, 0xd3, 0x90, 0x3a, 0xe1, 0xc8, - 0xd7, 0x4a, 0xde, 0x8c, 0x9b, 0xff, 0x11, 0xc0, 0xb3, 0x7d, 0x4f, 0x7e, 0x14, 0x83, 0x53, 0xd9, - 0x4c, 0x5e, 0x53, 0x73, 0xb7, 0xb5, 0xd5, 0x2d, 0x75, 0x33, 0x9d, 0xd7, 0x56, 0x32, 0xab, 0xe9, - 0x3b, 0x1b, 0x79, 0x69, 0x04, 0xfd, 0x02, 0x4e, 0xf7, 0xe8, 0x56, 0xb7, 0x54, 0x6d, 0x59, 0xcd, - 0xa4, 0xf3, 0x19, 0x09, 0x20, 0x19, 0xc6, 0xfa, 0xa8, 0xd5, 0xcc, 0xed, 0x8d, 0xf4, 0x72, 0x46, - 0xf2, 0xa1, 0x69, 0x78, 0xb6, 0x47, 0x9f, 0xcb, 0xa7, 0xf3, 0x77, 0x72, 0x92, 0x1f, 0x9d, 0x83, - 0x3f, 0xeb, 0x51, 0xa9, 0x99, 0xf4, 0x8a, 0x14, 0x40, 0xb3, 0x30, 0xbe, 0x4f, 0xb1, 0x9a, 0x51, - 0xd5, 0xb5, 0x5b, 0x59, 0x6d, 0x6b, 0x69, 0x3d, 0xb3, 0x9c, 0xcf, 0x49, 0xa3, 0x7d, 0xac, 0x96, - 0xd4, 0xad, 0x3f, 0x66, 0x6e, 0x09, 0xe3, 0xcc, 0xad, 0xe5, 0x4c, 0x4e, 0x0a, 0x2e, 0xbc, 0x0f, - 0x41, 0x7f, 0xfa, 0xf6, 0x1a, 0x7a, 0x05, 0x60, 0x50, 0xdc, 0x48, 0xd0, 0x90, 0x57, 0x96, 0xd8, - 0xa5, 0x43, 0xed, 0xdc, 0x2b, 0xdc, 0x76, 0xeb, 0x59, 0xf4, 0xb7, 0xa5, 0xab, 0x8f, 0x8c, 0x24, - 0xc5, 0x46, 0x9d, 0xe0, 0x2a, 0xa6, 0xf7, 0x93, 0x05, 0x9d, 0x9a, 0x46, 0xb2, 0x4e, 0x31, 0x71, - 0xfe, 0x0e, 0x26, 0x4d, 0x2b, 0x69, 0xd6, 0x4a, 0x44, 0xa7, 0x8c, 0xd4, 0x0d, 0x56, 0x27, 0x38, - 0xb9, 0x4d, 0x4c, 0x86, 0x9f, 0x7c, 0xf3, 0xfd, 0xbf, 0x7d, 0xbf, 0x4b, 0x2c, 0xb8, 0x7f, 0x0d, - 0x53, 0xed, 0x5c, 0xd3, 0xd4, 0xdf, 0xbc, 0xa6, 0x57, 0xda, 0xc2, 0x9d, 0x0f, 0x7f, 0xba, 0xe8, - 0x22, 0x98, 0x47, 0x2f, 0x00, 0xf4, 0x67, 0x31, 0x43, 0x33, 0x07, 0xdf, 0xf4, 0x04, 0x9d, 0xd9, - 0x61, 0xae, 0x83, 0x89, 0x47, 0xcf, 0xbf, 0xf0, 0x81, 0xd6, 0xb3, 0xe8, 0xb5, 0xfe, 0x7c, 0xaa, - 0x56, 0xcd, 0x64, 0xd6, 0x20, 0x4a, 0x04, 0xeb, 0x45, 0xce, 0x68, 0x01, 0x5d, 0xe9, 0xc7, 0xa8, - 0x2f, 0x11, 0x21, 0xde, 0x41, 0x5f, 0x01, 0x18, 0x70, 0x3a, 0x0b, 0xcd, 0x1e, 0xd2, 0x78, 0x82, - 0xce, 0x85, 0xa1, 0xda, 0x33, 0xf1, 0xf0, 0x44, 0xf8, 0xfc, 0x0a, 0x5d, 0x1e, 0x9a, 0x0f, 0xfa, - 0x01, 0xc0, 0x53, 0xee, 0x95, 0x15, 0x0d, 0x7b, 0xa9, 0x8d, 0xcd, 0x1d, 0x6e, 0xe8, 0x32, 0xfa, - 0x07, 0x38, 0x66, 0xb9, 0x65, 0x63, 0x4b, 0x47, 0x2f, 0xb7, 0x1e, 0xfd, 0x8e, 0x53, 0x7e, 0x5f, - 0x02, 0x18, 0x14, 0xe3, 0xeb, 0x80, 0x9e, 0xea, 0x9a, 0x6f, 0xb1, 0x29, 0x45, 0x7c, 0x87, 0x50, - 0xbc, 0xef, 0x10, 0x4a, 0xa6, 0x6a, 0xb3, 0x66, 0xa2, 0x7e, 0x4c, 0x4e, 0x57, 0xe7, 0x8f, 0x5c, - 0x70, 0x8b, 0x60, 0x3e, 0x76, 0xef, 0xe9, 0x2e, 0xf0, 0xbd, 0xda, 0x05, 0xf2, 0xa0, 0xe8, 0xc5, - 0xe1, 0xf5, 0x7a, 0x17, 0x80, 0xd6, 0x2e, 0x98, 0x1d, 0xe6, 0xa0, 0x7b, 0xf2, 0x75, 0xd4, 0x27, - 0x81, 0xa5, 0x7f, 0x82, 0x17, 0x37, 0x46, 0x97, 0xd5, 0x3b, 0x2b, 0x1b, 0x2f, 0xdf, 0xc8, 0x23, - 0xaf, 0xdf, 0xc8, 0x23, 0xef, 0xde, 0xc8, 0xe0, 0xef, 0x2d, 0x19, 0x7c, 0xda, 0x92, 0xc1, 0xf3, - 0x96, 0x0c, 0x5e, 0xb6, 0x64, 0xf0, 0x5d, 0x4b, 0x06, 0x6f, 0x5b, 0xf2, 0xc8, 0xbb, 0x96, 0x0c, - 0xfe, 0xb5, 0x27, 0x8f, 0x3c, 0xdd, 0x93, 0xc1, 0xcb, 0x3d, 0x79, 0xe4, 0xf5, 0x9e, 0x3c, 0xf2, - 0xe7, 0xcd, 0xb2, 0x65, 0x3f, 0x28, 0x2b, 0x0d, 0xcb, 0xb9, 0x38, 0x12, 0x5d, 0xa9, 0xd3, 0x14, - 0x7f, 0x70, 0xfe, 0x33, 0x25, 0x6d, 0x62, 0x35, 0xcc, 0x22, 0x26, 0x49, 0x4f, 0x9d, 0xb2, 0x0b, - 0x65, 0x2b, 0x85, 0x1f, 0x31, 0xf7, 0x0b, 0x48, 0xef, 0x57, 0x9a, 0x42, 0x90, 0x6f, 0xf9, 0x6f, - 0x7e, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x63, 0x14, 0xe0, 0x0b, 0x9e, 0x12, 0x00, 0x00, + 0x42, 0x8a, 0xc7, 0x28, 0x15, 0x6a, 0x89, 0x2a, 0xa8, 0x93, 0x38, 0x56, 0xd2, 0x84, 0xa0, 0xb1, + 0xa1, 0xb4, 0xaa, 0x34, 0x1a, 0x8f, 0x9f, 0xcd, 0x14, 0xdb, 0x33, 0x7d, 0xef, 0xd9, 0xc1, 0xaa, + 0x22, 0x15, 0xd4, 0x7b, 0xab, 0x22, 0x54, 0xb5, 0xea, 0xa1, 0x17, 0xa4, 0xdd, 0xdb, 0x1e, 0x57, + 0xca, 0x85, 0xdb, 0x22, 0x0e, 0x2b, 0xb4, 0x7b, 0xe1, 0xb2, 0xab, 0xc5, 0xd9, 0x03, 0x87, 0x3d, + 0xb0, 0x2b, 0xed, 0x7d, 0x35, 0xef, 0xcd, 0x18, 0xdb, 0xb1, 0x13, 0x87, 0x8f, 0x3d, 0x79, 0xde, + 0xff, 0xe3, 0x37, 0xff, 0xdf, 0xfc, 0x3f, 0xe6, 0xef, 0x81, 0x17, 0x1a, 0x98, 0x2a, 0xa6, 0x95, + 0xa2, 0xc6, 0x6d, 0x5c, 0xd5, 0x53, 0x45, 0x93, 0x1a, 0x56, 0x03, 0x93, 0x66, 0xca, 0xae, 0x17, + 0x2a, 0xa6, 0xa1, 0x19, 0xa4, 0x5e, 0xd4, 0x6d, 0x53, 0xb1, 0x89, 0xc5, 0x2c, 0x74, 0x4a, 0x58, + 0x2b, 0xc2, 0x5a, 0x69, 0x5b, 0xc7, 0x92, 0x65, 0x93, 0xdd, 0xae, 0x17, 0x14, 0xc3, 0xaa, 0xa6, + 0xca, 0x56, 0xd9, 0x4a, 0x71, 0xfb, 0x42, 0xbd, 0xc4, 0x4f, 0xfc, 0xc0, 0xaf, 0x04, 0x4e, 0xec, + 0x74, 0xd9, 0xb2, 0xca, 0x15, 0x9c, 0xd2, 0x6d, 0x33, 0xa5, 0xd7, 0x6a, 0x16, 0xd3, 0x99, 0x69, + 0xd5, 0xa8, 0xab, 0xfd, 0xa9, 0xab, 0x6d, 0x63, 0xe0, 0xaa, 0xcd, 0x9a, 0xae, 0x72, 0x76, 0x50, + 0xc0, 0x56, 0xe1, 0xcf, 0xd8, 0x60, 0xae, 0xd5, 0xcc, 0x20, 0x2b, 0xd6, 0xb4, 0xb1, 0x77, 0x9f, + 0x58, 0xb7, 0x11, 0x26, 0xc4, 0x22, 0xed, 0x18, 0xba, 0x75, 0x96, 0xdd, 0x19, 0xe0, 0x74, 0xb7, + 0xb2, 0x13, 0x33, 0xd1, 0xad, 0x6a, 0x60, 0x8a, 0x6b, 0x8d, 0x1e, 0xf7, 0x78, 0x8f, 0x8d, 0x89, + 0xb7, 0xb5, 0x2e, 0x8b, 0xc4, 0x87, 0x00, 0x8e, 0x2f, 0x13, 0xac, 0x33, 0xac, 0xe2, 0xbf, 0xd4, + 0x31, 0x65, 0xe8, 0x2a, 0x0c, 0x55, 0x31, 0xd3, 0x8b, 0x3a, 0xd3, 0xa3, 0x20, 0x0e, 0xe6, 0x22, + 0x0b, 0x33, 0x4a, 0x77, 0x32, 0xb6, 0x38, 0x7f, 0xe1, 0xb5, 0x89, 0x99, 0x9e, 0x6f, 0xda, 0x58, + 0x6d, 0x3b, 0xa1, 0x0d, 0x18, 0xa0, 0x36, 0x36, 0xa2, 0x3e, 0xee, 0x7c, 0x4e, 0x19, 0x90, 0x49, + 0x45, 0x00, 0xe4, 0x6c, 0x6c, 0x38, 0x00, 0x4b, 0x93, 0xff, 0xdd, 0x19, 0x73, 0xfc, 0x94, 0xb2, + 0xa1, 0x39, 0xbf, 0x2a, 0x47, 0x59, 0x0c, 0x3f, 0xbd, 0x12, 0x14, 0x37, 0x4c, 0x7c, 0x0f, 0xe0, + 0x84, 0x17, 0x2b, 0xb5, 0xad, 0x1a, 0xc5, 0xe8, 0x37, 0xfb, 0x82, 0x8d, 0xf7, 0x0d, 0x36, 0x8b, + 0x59, 0x9f, 0x48, 0xb7, 0xe0, 0x24, 0x6d, 0x52, 0x86, 0xab, 0x5a, 0x1b, 0xc4, 0xcf, 0x41, 0xce, + 0xf6, 0x80, 0xe4, 0xb8, 0xd5, 0x7e, 0xa8, 0x09, 0xe1, 0xbe, 0xe9, 0x01, 0xae, 0x75, 0x51, 0x9f, + 0x1d, 0x48, 0x3d, 0x8b, 0xd9, 0x11, 0x78, 0x7f, 0x01, 0xe0, 0x84, 0x8a, 0xed, 0x8a, 0x6e, 0xb4, + 0x93, 0xf4, 0xdb, 0x7d, 0xbc, 0x67, 0xfb, 0xf2, 0x76, 0xdd, 0xfa, 0x70, 0xdf, 0xec, 0x0a, 0x75, + 0x6e, 0x60, 0xa8, 0x2e, 0xc2, 0x21, 0xe1, 0xa2, 0x14, 0x94, 0x08, 0xa6, 0x56, 0x9d, 0x18, 0x58, + 0x6b, 0x60, 0x42, 0x4d, 0xab, 0xc6, 0x9f, 0x65, 0x78, 0x29, 0xf0, 0x72, 0x17, 0x00, 0x75, 0xd2, + 0xd3, 0xde, 0x14, 0xca, 0x4e, 0x7e, 0xc7, 0xe1, 0x64, 0x9b, 0x9e, 0xc8, 0x6b, 0xe2, 0xdf, 0x00, + 0xc2, 0x2c, 0x66, 0x1e, 0xdd, 0xd3, 0x30, 0x5c, 0xd3, 0xab, 0x98, 0xda, 0xba, 0x81, 0x39, 0xdf, + 0xb0, 0xfa, 0x5a, 0x80, 0x10, 0x0c, 0x38, 0x07, 0x4e, 0x25, 0xac, 0xf2, 0x6b, 0xf4, 0x7b, 0xe8, + 0xdc, 0x91, 0x83, 0x69, 0x25, 0x8b, 0x54, 0x75, 0xc6, 0xc3, 0x99, 0x58, 0x50, 0x0e, 0x4a, 0x8a, + 0x77, 0xff, 0x55, 0xee, 0xb1, 0x6c, 0x15, 0xb1, 0x3a, 0x41, 0xba, 0x64, 0x89, 0x7b, 0x41, 0x18, + 0xe9, 0xb0, 0x44, 0x59, 0x18, 0x31, 0x78, 0x4d, 0xf2, 0xdb, 0xb8, 0x8f, 0xf3, 0xec, 0x21, 0x45, + 0xef, 0xf2, 0x52, 0xa1, 0x70, 0x75, 0xa0, 0xd1, 0x3a, 0x1c, 0x23, 0xe2, 0x29, 0x08, 0x24, 0xff, + 0x21, 0xed, 0xd3, 0x5d, 0x11, 0x6a, 0xc4, 0x75, 0xe6, 0x58, 0xfd, 0xb2, 0x11, 0x38, 0x20, 0x1b, + 0x5d, 0x7d, 0x34, 0xfa, 0x2e, 0xfa, 0xe8, 0xd8, 0x3b, 0xe9, 0xa3, 0xe0, 0x5b, 0xf7, 0x11, 0x5a, + 0x81, 0x41, 0xca, 0x74, 0x56, 0xa7, 0xd1, 0xff, 0xff, 0x0f, 0xc4, 0xfd, 0x73, 0x91, 0x85, 0x33, + 0x03, 0xe1, 0x72, 0xdc, 0x50, 0x84, 0xb7, 0xe4, 0x7f, 0xbc, 0x03, 0x54, 0xd7, 0x17, 0xad, 0xc1, + 0xe3, 0x04, 0x97, 0x30, 0x21, 0x66, 0xad, 0xac, 0x89, 0xf9, 0x4f, 0xa3, 0x21, 0x0e, 0x77, 0x7a, + 0x40, 0xe3, 0x95, 0x38, 0x33, 0xa9, 0xed, 0x26, 0xe4, 0x14, 0xdd, 0x84, 0xd1, 0x22, 0xae, 0x60, + 0x86, 0x8b, 0x9a, 0xd0, 0xe1, 0x62, 0x1b, 0x31, 0x3c, 0x04, 0xe2, 0x94, 0xeb, 0xad, 0xba, 0xce, + 0x1e, 0xee, 0x2d, 0x38, 0x5d, 0x34, 0xa9, 0x5e, 0xa8, 0xf4, 0x03, 0x86, 0x43, 0x00, 0x9f, 0xf2, + 0xdc, 0x7b, 0x90, 0x3b, 0x5a, 0x75, 0x3d, 0x10, 0x02, 0x92, 0x2f, 0xf1, 0x08, 0xc0, 0xc8, 0x86, + 0x49, 0x87, 0x6c, 0xcf, 0x9f, 0xc3, 0xb1, 0x8a, 0x5e, 0xc0, 0x15, 0xad, 0x64, 0x56, 0x18, 0x26, + 0x6e, 0x9b, 0x46, 0xb8, 0x6c, 0x95, 0x8b, 0xd0, 0x0c, 0x1c, 0x27, 0xd8, 0xb6, 0x08, 0xd3, 0x4a, + 0x26, 0xae, 0x14, 0x69, 0xd4, 0x1f, 0xf7, 0xcf, 0x85, 0xd5, 0x31, 0x21, 0x5c, 0xe5, 0x32, 0x74, + 0x11, 0x9e, 0x70, 0x8d, 0x44, 0x52, 0x3c, 0xdb, 0x00, 0xb7, 0x45, 0x42, 0x27, 0x52, 0x28, 0x3c, + 0x12, 0x1f, 0x05, 0xa1, 0x24, 0xe2, 0x14, 0xcd, 0xba, 0xc6, 0x70, 0x15, 0x4d, 0xc1, 0x20, 0xc3, + 0x35, 0xbd, 0xc6, 0x78, 0x75, 0x85, 0x55, 0xf7, 0xf4, 0x06, 0x33, 0x46, 0x82, 0xfe, 0xba, 0x59, + 0x14, 0x63, 0x4e, 0x75, 0x2e, 0x51, 0x1c, 0x46, 0x8a, 0x98, 0x1a, 0xc4, 0xe4, 0xef, 0xd8, 0x68, + 0x44, 0x30, 0xed, 0x10, 0xa1, 0x18, 0x0c, 0x79, 0x8f, 0x39, 0x3a, 0x16, 0x07, 0x73, 0x21, 0xb5, + 0x7d, 0x46, 0x9b, 0x30, 0xc8, 0x1f, 0x8a, 0xa0, 0x14, 0x59, 0xb8, 0x34, 0xb0, 0x50, 0x7b, 0x49, + 0x29, 0x1b, 0xdc, 0x2f, 0x53, 0x63, 0xa4, 0xa9, 0xba, 0x20, 0xe8, 0x4f, 0x30, 0xd2, 0xb1, 0xf1, + 0xb8, 0x25, 0xb0, 0x38, 0x3c, 0x66, 0xfa, 0xb5, 0xb3, 0x00, 0xee, 0x84, 0x43, 0x97, 0x21, 0xb4, + 0xb6, 0x6b, 0x98, 0x68, 0xce, 0x52, 0x11, 0x0d, 0xf3, 0x46, 0x8d, 0xf5, 0x80, 0xdf, 0x34, 0xf1, + 0xb6, 0x57, 0x5d, 0x61, 0x6e, 0xed, 0x48, 0xba, 0x86, 0xcd, 0xf8, 0xbb, 0x18, 0x36, 0x13, 0x6f, + 0x35, 0x6c, 0xae, 0xc2, 0x50, 0x19, 0x33, 0x3e, 0x33, 0xdc, 0xb1, 0x35, 0xd4, 0xc0, 0x51, 0x8f, + 0x95, 0xc5, 0x01, 0xad, 0x41, 0xe8, 0x56, 0x24, 0xc5, 0xcc, 0x9d, 0x0a, 0x47, 0x19, 0x32, 0x61, + 0xe1, 0x9d, 0xc3, 0x2c, 0x76, 0x19, 0x46, 0x3a, 0x52, 0xe9, 0x54, 0xd8, 0x1d, 0xdc, 0x74, 0xab, + 0xd1, 0xb9, 0x44, 0x27, 0xe0, 0x68, 0x43, 0xaf, 0xd4, 0xbd, 0x42, 0x14, 0x87, 0x45, 0xdf, 0xaf, + 0x41, 0xec, 0x0a, 0x94, 0x7a, 0x33, 0x76, 0x14, 0xff, 0xf5, 0x40, 0x68, 0x54, 0x0a, 0x26, 0xee, + 0x01, 0x38, 0xd6, 0x59, 0x09, 0xe8, 0x2a, 0x1c, 0x35, 0x19, 0xae, 0xd2, 0xa8, 0x18, 0x9e, 0xe7, + 0x87, 0xae, 0x1f, 0x55, 0xf8, 0xa1, 0x8b, 0x30, 0x28, 0xf6, 0xdd, 0xa8, 0x8f, 0x23, 0x44, 0x7b, + 0x10, 0x32, 0x8e, 0x92, 0x3f, 0x50, 0xd7, 0x2e, 0x71, 0x07, 0x8e, 0xaf, 0xf0, 0x19, 0xf7, 0xe6, + 0xaf, 0xff, 0x39, 0x28, 0x95, 0x74, 0xb3, 0xa2, 0x99, 0xa5, 0xf6, 0x2c, 0xe4, 0x7d, 0x1a, 0x52, + 0x27, 0x1c, 0xf9, 0x5a, 0xc9, 0x9b, 0x71, 0xf3, 0xdf, 0x01, 0x78, 0xb2, 0xef, 0x9b, 0x1f, 0xc5, + 0xe0, 0x54, 0x36, 0x93, 0xd7, 0xd4, 0xdc, 0x75, 0x6d, 0x75, 0x4b, 0xdd, 0x4c, 0xe7, 0xb5, 0x95, + 0xcc, 0x6a, 0xfa, 0xc6, 0x46, 0x5e, 0x1a, 0x41, 0x3f, 0x83, 0xd3, 0x3d, 0xba, 0xd5, 0x2d, 0x55, + 0x5b, 0x56, 0x33, 0xe9, 0x7c, 0x46, 0x02, 0x48, 0x86, 0xb1, 0x3e, 0x6a, 0x35, 0x73, 0x7d, 0x23, + 0xbd, 0x9c, 0x91, 0x7c, 0x68, 0x1a, 0x9e, 0xec, 0xd1, 0xe7, 0xf2, 0xe9, 0xfc, 0x8d, 0x9c, 0xe4, + 0x47, 0xa7, 0xe0, 0x4f, 0x7a, 0x54, 0x6a, 0x26, 0xbd, 0x22, 0x05, 0xd0, 0x2c, 0x8c, 0xef, 0x53, + 0xac, 0x66, 0x54, 0x75, 0xed, 0x5a, 0x56, 0xdb, 0x5a, 0x5a, 0xcf, 0x2c, 0xe7, 0x73, 0xd2, 0x68, + 0x1f, 0xab, 0x25, 0x75, 0xeb, 0x77, 0x99, 0x6b, 0xc2, 0x38, 0x73, 0x6d, 0x39, 0x93, 0x93, 0x82, + 0x0b, 0x0f, 0x21, 0xf4, 0xa7, 0xaf, 0xaf, 0xa1, 0x6f, 0x01, 0x0c, 0x8a, 0x8d, 0x04, 0x0d, 0xb9, + 0xb2, 0xc4, 0xce, 0x1d, 0x6a, 0xe7, 0xae, 0x70, 0x0f, 0x41, 0xeb, 0x93, 0x68, 0xbe, 0x74, 0xe9, + 0xae, 0x91, 0xa4, 0xd8, 0xa8, 0x13, 0x5c, 0xc5, 0xf4, 0x76, 0xb2, 0xa0, 0x53, 0xd3, 0x48, 0xd6, + 0x29, 0x26, 0x17, 0x7a, 0x55, 0x94, 0xe9, 0xb5, 0xa2, 0x4e, 0x8a, 0x42, 0xdb, 0xc0, 0x34, 0x69, + 0x5a, 0x49, 0xb3, 0x56, 0x22, 0x3a, 0x65, 0xa4, 0x6e, 0xb0, 0x3a, 0xc1, 0xc9, 0x6d, 0x62, 0x32, + 0x7c, 0xff, 0xf3, 0xaf, 0x1f, 0xf8, 0x7e, 0x95, 0x58, 0x70, 0xff, 0x39, 0xa6, 0xda, 0xa5, 0x40, + 0x53, 0x7f, 0xf5, 0x66, 0x82, 0xd2, 0x16, 0xee, 0xbc, 0xfe, 0x4f, 0x46, 0x17, 0xc1, 0x3c, 0xfa, + 0x06, 0x40, 0x7f, 0x16, 0x33, 0x34, 0x73, 0xf0, 0x22, 0x28, 0xd8, 0xce, 0x0e, 0xb3, 0x2d, 0x26, + 0xfe, 0x03, 0x9e, 0x7c, 0xec, 0x73, 0xe8, 0xfe, 0xa1, 0x3f, 0xdd, 0xaa, 0x55, 0x33, 0x99, 0x75, + 0x00, 0x63, 0xcf, 0xa0, 0x3f, 0x69, 0x82, 0xf5, 0x22, 0xe7, 0xbc, 0x80, 0x2e, 0xf6, 0xe3, 0xdc, + 0x97, 0xaa, 0x10, 0xef, 0xa0, 0x97, 0x00, 0x06, 0x9c, 0xd6, 0x44, 0xb3, 0x87, 0x74, 0xae, 0x20, + 0x7c, 0x66, 0xa8, 0xfe, 0x4e, 0xfc, 0xeb, 0x47, 0x62, 0xfc, 0x0b, 0x74, 0x7e, 0x68, 0xc6, 0xe8, + 0xef, 0x3e, 0x78, 0xcc, 0xdd, 0x8a, 0xd1, 0xb0, 0x7b, 0x73, 0x6c, 0xee, 0x70, 0x43, 0x97, 0xf3, + 0xa3, 0xf7, 0x5b, 0xd0, 0xd9, 0xd8, 0xd2, 0xd1, 0x0b, 0xba, 0x47, 0xbf, 0xe3, 0x14, 0xf8, 0x97, + 0x00, 0x06, 0xc5, 0xfc, 0x3c, 0xa0, 0xa9, 0xbb, 0x06, 0x6c, 0x6c, 0x4a, 0x11, 0x1f, 0x42, 0x14, + 0xef, 0x43, 0x88, 0x92, 0xa9, 0xda, 0xac, 0x99, 0x78, 0xf0, 0x7e, 0x29, 0x5f, 0x9a, 0x3f, 0x72, + 0x3d, 0x2f, 0x82, 0xf9, 0xd8, 0xad, 0xc7, 0xbb, 0xc0, 0xf7, 0xd9, 0x2e, 0x90, 0x07, 0x91, 0x13, + 0x2f, 0xd7, 0xe7, 0xbb, 0x00, 0xb4, 0x76, 0xc1, 0xec, 0x30, 0x2f, 0xe2, 0xfb, 0x9f, 0x46, 0x7d, + 0x12, 0x58, 0xfa, 0x07, 0x78, 0x7a, 0x65, 0x74, 0x59, 0xbd, 0xb1, 0xb2, 0xf1, 0xec, 0x85, 0x3c, + 0xf2, 0xfc, 0x85, 0x3c, 0xf2, 0xea, 0x85, 0x0c, 0xfe, 0xd6, 0x92, 0xc1, 0x07, 0x2d, 0x19, 0x3c, + 0x69, 0xc9, 0xe0, 0x59, 0x4b, 0x06, 0x5f, 0xb5, 0x64, 0xf0, 0xb2, 0x25, 0x8f, 0xbc, 0x6a, 0xc9, + 0xe0, 0x9f, 0x7b, 0xf2, 0xc8, 0xe3, 0x3d, 0x19, 0x3c, 0xdb, 0x93, 0x47, 0x9e, 0xef, 0xc9, 0x23, + 0x7f, 0xdc, 0x2c, 0x5b, 0xf6, 0x9d, 0xb2, 0xd2, 0xb0, 0x9c, 0xc5, 0x96, 0xe8, 0x4a, 0x9d, 0xa6, + 0xf8, 0x85, 0xf3, 0x9f, 0x2e, 0x69, 0x13, 0xab, 0x61, 0x16, 0x31, 0x49, 0x7a, 0xea, 0x94, 0x5d, + 0x28, 0x5b, 0x29, 0x7c, 0x97, 0xb9, 0x5f, 0x68, 0x7a, 0xbf, 0x22, 0x15, 0x82, 0x3c, 0x23, 0xbf, + 0xfc, 0x21, 0x00, 0x00, 0xff, 0xff, 0x7a, 0xbe, 0xe8, 0x47, 0x3e, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/discovery/public_crudapi.vesapi.go b/pbgo/extschema/schema/discovery/public_crudapi.vesapi.go index f088bcf8a..565456fd8 100644 --- a/pbgo/extschema/schema/discovery/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/discovery/public_crudapi.vesapi.go @@ -3573,10 +3573,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3633,10 +3637,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3739,10 +3747,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_compliance_checks/crudapi/api.vesapi.go b/pbgo/extschema/schema/dns_compliance_checks/crudapi/api.vesapi.go index cee9002db..feceeca50 100644 --- a/pbgo/extschema/schema/dns_compliance_checks/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dns_compliance_checks/crudapi/api.vesapi.go @@ -3308,10 +3308,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_compliance_checks/public_crudapi.vesapi.go b/pbgo/extschema/schema/dns_compliance_checks/public_crudapi.vesapi.go index 8813d489e..b007bb8db 100644 --- a/pbgo/extschema/schema/dns_compliance_checks/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dns_compliance_checks/public_crudapi.vesapi.go @@ -3066,10 +3066,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3126,10 +3130,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3188,10 +3196,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_domain/crudapi/api.vesapi.go b/pbgo/extschema/schema/dns_domain/crudapi/api.vesapi.go index 9f77b6f8f..19bc801e1 100644 --- a/pbgo/extschema/schema/dns_domain/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dns_domain/crudapi/api.vesapi.go @@ -3267,10 +3267,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_domain/object.pb.go b/pbgo/extschema/schema/dns_domain/object.pb.go index 4afa9f41f..39d587c02 100644 --- a/pbgo/extschema/schema/dns_domain/object.pb.go +++ b/pbgo/extschema/schema/dns_domain/object.pb.go @@ -489,60 +489,66 @@ func init() { } var fileDescriptor_96fdda59be23e7e7 = []byte{ - // 840 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0x4d, 0x6f, 0x1b, 0x45, - 0x18, 0xf6, 0x38, 0xa9, 0x93, 0xbc, 0xf9, 0xa8, 0x35, 0x29, 0xb0, 0x2d, 0xed, 0x34, 0x72, 0x0b, - 0x32, 0x48, 0x5e, 0x8b, 0x54, 0x42, 0x50, 0x21, 0x50, 0x6a, 0xbb, 0x95, 0xd5, 0x7a, 0x83, 0x76, - 0x43, 0x0f, 0xbd, 0xac, 0xc6, 0xbb, 0xe3, 0xcd, 0x12, 0xaf, 0x67, 0xb5, 0x33, 0x5e, 0xe1, 0x03, - 0x12, 0xe2, 0x86, 0xc4, 0x81, 0x9f, 0x81, 0xf8, 0x15, 0x94, 0x03, 0x42, 0x9c, 0x22, 0x4e, 0x39, - 0x92, 0xcd, 0x85, 0x63, 0x25, 0x0e, 0x1c, 0x41, 0x9e, 0xf1, 0xc6, 0x76, 0x1b, 0x97, 0xdc, 0xde, - 0x8f, 0xe7, 0x79, 0xde, 0x8f, 0x99, 0xd9, 0x85, 0x77, 0x52, 0x26, 0xcc, 0x90, 0xd7, 0x85, 0x77, - 0xc8, 0x22, 0x5a, 0xf7, 0x07, 0xc2, 0xf5, 0x79, 0x44, 0xc3, 0x41, 0x9d, 0x77, 0xbf, 0x64, 0x9e, - 0x34, 0xe3, 0x84, 0x4b, 0x8e, 0x0d, 0x0d, 0x33, 0x35, 0xcc, 0x9c, 0xc2, 0x6e, 0xd4, 0x82, 0x50, - 0x1e, 0x0e, 0xbb, 0xa6, 0xc7, 0xa3, 0x7a, 0xc0, 0x03, 0x5e, 0x57, 0x84, 0xee, 0xb0, 0xa7, 0x3c, - 0xe5, 0x28, 0x4b, 0x0b, 0xdd, 0xb8, 0xbb, 0xb0, 0x9e, 0x1c, 0xc5, 0x4c, 0x4c, 0x50, 0x6f, 0xcf, - 0xa3, 0x78, 0x2c, 0x43, 0x3e, 0xc8, 0x93, 0xd7, 0xe7, 0x93, 0xb3, 0xbc, 0xca, 0x7c, 0x2a, 0x65, - 0x82, 0x0d, 0xd2, 0x79, 0x7a, 0xe5, 0x6f, 0x04, 0xa5, 0x7d, 0x35, 0x1b, 0xfe, 0x18, 0x56, 0x23, - 0x26, 0xa9, 0x4f, 0x25, 0x35, 0xd0, 0x0e, 0xaa, 0xae, 0xef, 0xde, 0x32, 0xe7, 0x07, 0xd5, 0xc0, - 0x0e, 0x93, 0xf4, 0x60, 0x14, 0x33, 0xfb, 0x1c, 0x8e, 0x9f, 0xc0, 0x55, 0x31, 0x12, 0x92, 0x45, - 0xee, 0xb9, 0x42, 0x51, 0x29, 0xdc, 0x79, 0x49, 0xc1, 0x51, 0xa8, 0x97, 0x74, 0xb6, 0x34, 0xb7, - 0x93, 0xab, 0x7d, 0x08, 0xcb, 0x22, 0x66, 0x9e, 0xb1, 0xa4, 0x24, 0x2a, 0xe6, 0xa2, 0x6d, 0x9b, - 0x4e, 0xcc, 0x3c, 0xa5, 0xa0, 0xf0, 0xf7, 0xab, 0xdf, 0x7e, 0x56, 0xd2, 0x52, 0xbf, 0x3c, 0x37, - 0x8a, 0x65, 0xf4, 0xfb, 0x73, 0xe3, 0x8d, 0x94, 0x89, 0x5a, 0xc8, 0x6b, 0xe1, 0xa0, 0x97, 0x50, - 0x21, 0x93, 0xa1, 0x27, 0x87, 0x09, 0xab, 0x74, 0x60, 0x35, 0xe7, 0xe2, 0x3d, 0x58, 0x09, 0x3c, - 0x57, 0x15, 0xd4, 0x3d, 0x57, 0x17, 0x17, 0x7c, 0xd4, 0xe7, 0x5d, 0xda, 0x3f, 0x2f, 0x5b, 0x0a, - 0xbc, 0xb1, 0x5d, 0xf9, 0x17, 0xc1, 0x46, 0xd3, 0x72, 0x9c, 0x56, 0xc3, 0x91, 0x54, 0x0e, 0x05, - 0xfe, 0x08, 0x96, 0x23, 0xee, 0x33, 0xb5, 0xc6, 0xad, 0xdd, 0xbb, 0x8b, 0x05, 0x35, 0xab, 0xc3, - 0x7d, 0x66, 0x2b, 0x06, 0x7e, 0x0b, 0x56, 0x8e, 0xd8, 0xc8, 0x95, 0x34, 0x50, 0xdd, 0xac, 0xd9, - 0xa5, 0x23, 0x36, 0x3a, 0xa0, 0x01, 0xbe, 0x09, 0x6b, 0xb4, 0x1f, 0xf0, 0x24, 0x94, 0x87, 0x91, - 0xda, 0xcc, 0x9a, 0x3d, 0x0d, 0xe0, 0x6b, 0x70, 0xa5, 0xd7, 0xa7, 0x81, 0x30, 0x96, 0x55, 0x46, - 0x3b, 0xf8, 0x36, 0xac, 0xfb, 0x61, 0xc0, 0x84, 0x74, 0xc7, 0xd7, 0xc2, 0xb8, 0xa2, 0x72, 0xa0, - 0x43, 0x6a, 0xf6, 0x37, 0xa1, 0xa4, 0x3d, 0xa3, 0xa4, 0x8b, 0x69, 0x0f, 0xdf, 0x02, 0x88, 0x87, - 0xdd, 0x7e, 0xe8, 0xb9, 0x47, 0x6c, 0x64, 0xac, 0xe8, 0x6a, 0x3a, 0xf2, 0x98, 0x8d, 0x70, 0x19, - 0x96, 0xa4, 0xec, 0x1b, 0xab, 0x3b, 0xa8, 0xba, 0x69, 0x8f, 0xcd, 0xca, 0x3f, 0x08, 0xae, 0x36, - 0x2d, 0xa7, 0xa9, 0xa6, 0x9a, 0x2c, 0xc1, 0x87, 0x6d, 0x3d, 0xa5, 0x9b, 0xb2, 0x24, 0xec, 0x85, - 0x1e, 0x1d, 0x5f, 0xbc, 0xc9, 0x4e, 0xee, 0xbd, 0x76, 0x27, 0x5a, 0xe7, 0xe9, 0x0c, 0x4d, 0xed, - 0x1b, 0xfb, 0xaf, 0xc4, 0xf1, 0x07, 0x70, 0x2d, 0xe5, 0x7d, 0xc9, 0x92, 0x84, 0xba, 0x03, 0x1a, - 0x31, 0xc1, 0x92, 0x94, 0x25, 0xc2, 0x28, 0xee, 0x2c, 0x55, 0xd7, 0xec, 0xed, 0x3c, 0x67, 0x4d, - 0x53, 0xf8, 0x31, 0x6c, 0xfa, 0x03, 0x21, 0x98, 0xe7, 0x0a, 0xd5, 0xe9, 0xe4, 0xa2, 0xbd, 0xfb, - 0x7f, 0xc7, 0xa4, 0xe7, 0xb2, 0x37, 0x34, 0x59, 0x7b, 0x95, 0x5f, 0x8b, 0xb0, 0xa1, 0xcd, 0x4b, - 0x3f, 0x23, 0x0d, 0xbf, 0xf0, 0x19, 0xad, 0xeb, 0xef, 0x8c, 0x9b, 0xb0, 0x9e, 0x1e, 0x61, 0x7d, - 0xf7, 0xe6, 0x85, 0x8f, 0xd0, 0x66, 0xbd, 0x31, 0xf9, 0xc1, 0xe6, 0x4f, 0x5f, 0xc3, 0xb4, 0x51, - 0x1b, 0x78, 0x9e, 0x15, 0xf8, 0x13, 0x00, 0x8f, 0x0f, 0xfc, 0x50, 0x3d, 0x77, 0x63, 0xe9, 0x42, - 0xb1, 0x46, 0x0e, 0x50, 0x9d, 0xcc, 0xe0, 0xf1, 0x33, 0xd8, 0x9e, 0x3d, 0xb6, 0x7c, 0x55, 0xcb, - 0x6a, 0xa2, 0xf7, 0x2e, 0x71, 0x7a, 0x93, 0x6d, 0xe1, 0x59, 0x15, 0x1d, 0xbb, 0xbf, 0xfd, 0xc7, - 0xa7, 0x65, 0xd8, 0x82, 0x8d, 0x7c, 0x70, 0x73, 0x18, 0xfa, 0xef, 0x7f, 0x87, 0xe0, 0xfa, 0xc2, - 0xa3, 0xc7, 0x77, 0xe0, 0x76, 0xd3, 0x72, 0xdc, 0xe6, 0x7e, 0x67, 0xaf, 0x6d, 0xb9, 0x4f, 0x5b, - 0x76, 0xfb, 0x61, 0xbb, 0xb1, 0x77, 0xd0, 0xde, 0xb7, 0xdc, 0xcf, 0x5b, 0x56, 0xb3, 0x6d, 0x3d, - 0x2a, 0x17, 0x5e, 0x07, 0x72, 0xbe, 0x68, 0x34, 0x5a, 0x8e, 0x53, 0x46, 0xb8, 0x02, 0x64, 0x11, - 0xe8, 0xe1, 0x5e, 0xfb, 0x49, 0xab, 0x59, 0x2e, 0x3e, 0xf8, 0x1e, 0x1d, 0x9f, 0x92, 0xc2, 0xc9, - 0x29, 0x29, 0xbc, 0x38, 0x25, 0xe8, 0x9b, 0x8c, 0xa0, 0x1f, 0x33, 0x82, 0x7e, 0xcb, 0x08, 0x3a, - 0xce, 0x08, 0x3a, 0xc9, 0x08, 0xfa, 0x33, 0x23, 0xe8, 0xaf, 0x8c, 0x14, 0x5e, 0x64, 0x04, 0xfd, - 0x70, 0x46, 0x0a, 0x3f, 0x9f, 0x11, 0x74, 0x7c, 0x46, 0x0a, 0x27, 0x67, 0xa4, 0xf0, 0xcc, 0x0a, - 0x78, 0x7c, 0x14, 0x98, 0xf9, 0xdd, 0x33, 0x87, 0xa2, 0xae, 0x8c, 0x1e, 0x4f, 0xa2, 0x5a, 0x9c, - 0xf0, 0x34, 0xf4, 0x59, 0x52, 0xcb, 0xd3, 0xf5, 0xb8, 0x1b, 0xf0, 0x3a, 0xfb, 0x4a, 0x4e, 0xbe, - 0xd3, 0xaf, 0xfc, 0x0c, 0xba, 0x25, 0xf5, 0xad, 0xbe, 0xf7, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, - 0xf9, 0x8e, 0x51, 0x58, 0x9f, 0x06, 0x00, 0x00, + // 939 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xf7, 0xc6, 0x8e, 0x93, 0xbc, 0xfc, 0xa8, 0x35, 0xa9, 0xbe, 0xdf, 0x6d, 0x69, 0xb7, 0x91, + 0x5b, 0x50, 0x40, 0x78, 0x2d, 0x52, 0x81, 0xa0, 0x42, 0xa0, 0xd4, 0x4e, 0x23, 0xab, 0x89, 0x83, + 0xd6, 0x21, 0x87, 0x72, 0x58, 0xc6, 0xbb, 0xcf, 0x9b, 0x25, 0xde, 0x9d, 0xd5, 0xcc, 0xac, 0xa9, + 0x0f, 0x48, 0x08, 0x71, 0x41, 0xe2, 0xc0, 0x9f, 0x81, 0xf8, 0x2b, 0x28, 0x07, 0xc4, 0x31, 0xea, + 0x29, 0x47, 0xe2, 0x5c, 0x38, 0xe6, 0xc6, 0x11, 0x94, 0x19, 0x6f, 0x7e, 0xd5, 0x0e, 0xbd, 0xe4, + 0x36, 0x6f, 0x3e, 0x9f, 0xf7, 0x79, 0xf3, 0xde, 0xbc, 0x79, 0x03, 0x6f, 0xf6, 0x50, 0xd8, 0x21, + 0xab, 0x0a, 0x6f, 0x17, 0x23, 0x5a, 0xf5, 0x63, 0xe1, 0xfa, 0x2c, 0xa2, 0x61, 0x5c, 0x65, 0xed, + 0xaf, 0xd0, 0x93, 0x76, 0xc2, 0x99, 0x64, 0xc4, 0xd4, 0x34, 0x5b, 0xd3, 0xec, 0x33, 0xda, 0xed, + 0x4a, 0x10, 0xca, 0xdd, 0xb4, 0x6d, 0x7b, 0x2c, 0xaa, 0x06, 0x2c, 0x60, 0x55, 0xe5, 0xd0, 0x4e, + 0x3b, 0xca, 0x52, 0x86, 0x5a, 0x69, 0xa1, 0xdb, 0x0f, 0xc6, 0xc6, 0x93, 0xfd, 0x04, 0xc5, 0x90, + 0xf5, 0xc6, 0x45, 0x16, 0x4b, 0x64, 0xc8, 0xe2, 0x0c, 0xbc, 0x75, 0x11, 0x3c, 0xef, 0x57, 0xbe, + 0x08, 0xf5, 0x50, 0x60, 0xdc, 0xbb, 0xe8, 0x5e, 0xde, 0x9f, 0x84, 0xe2, 0x96, 0xca, 0x8d, 0x7c, + 0x04, 0xd3, 0x11, 0x4a, 0xea, 0x53, 0x49, 0x4d, 0x63, 0xc9, 0x58, 0x9e, 0x5d, 0xb9, 0x6b, 0x5f, + 0x4c, 0x54, 0x13, 0x37, 0x51, 0xd2, 0xed, 0x7e, 0x82, 0xce, 0x29, 0x9d, 0x6c, 0xc0, 0x0d, 0xd1, + 0x17, 0x12, 0x23, 0xf7, 0x54, 0x61, 0x42, 0x29, 0xdc, 0xbf, 0xa4, 0xd0, 0x52, 0xac, 0x4b, 0x3a, + 0x0b, 0xda, 0x77, 0x33, 0x53, 0xfb, 0x00, 0x0a, 0x22, 0x41, 0xcf, 0xcc, 0x2b, 0x89, 0xb2, 0x3d, + 0xae, 0xda, 0x76, 0x2b, 0x41, 0x4f, 0x29, 0x28, 0xfe, 0xa3, 0xef, 0x0b, 0xdf, 0x7d, 0x5a, 0xd4, + 0x5a, 0xbf, 0xbd, 0x30, 0x27, 0x4a, 0xc6, 0xcb, 0x17, 0xe6, 0x71, 0x1e, 0xda, 0x90, 0x5f, 0x47, + 0x49, 0xbe, 0xe8, 0xbc, 0xff, 0xdc, 0xab, 0x08, 0xf4, 0x52, 0x8e, 0x11, 0x8a, 0xdd, 0x4a, 0x9b, + 0x8a, 0xd0, 0xab, 0x44, 0x2c, 0x0e, 0x25, 0xe3, 0xef, 0x2e, 0x5d, 0x86, 0x85, 0xa4, 0xb1, 0x4f, + 0xb9, 0x7f, 0xc6, 0xe8, 0xa1, 0xa8, 0x84, 0xac, 0x12, 0xc6, 0x1d, 0x4e, 0x85, 0xe4, 0xa9, 0x27, + 0x53, 0x8e, 0x15, 0x8e, 0xd4, 0x07, 0x0a, 0x53, 0x0e, 0x26, 0x5d, 0xea, 0x21, 0xd9, 0x19, 0x1d, + 0x27, 0x15, 0x78, 0x55, 0x10, 0x0d, 0x8f, 0x8e, 0xf0, 0x35, 0x0f, 0x25, 0xc2, 0x97, 0x50, 0xac, + 0x71, 0xa4, 0xf2, 0x5a, 0x23, 0xd4, 0xb1, 0x8b, 0xd7, 0x18, 0xc1, 0x83, 0xc2, 0x46, 0x28, 0xae, + 0xf7, 0x2e, 0xca, 0x9b, 0x30, 0x9d, 0x35, 0x06, 0x59, 0x85, 0xa9, 0xc0, 0x73, 0x55, 0x37, 0xe9, + 0x86, 0x5c, 0x1e, 0xdf, 0x4d, 0xeb, 0x5d, 0xd6, 0xa6, 0xdd, 0xd3, 0x9e, 0x2a, 0x06, 0xde, 0xc9, + 0xba, 0xfc, 0x8f, 0x01, 0x73, 0xf5, 0x66, 0xab, 0xb5, 0x56, 0x6b, 0x49, 0x2a, 0x53, 0x41, 0x3e, + 0x84, 0x42, 0xc4, 0x7c, 0x54, 0x6f, 0x64, 0x61, 0xe5, 0xc1, 0x78, 0x41, 0xed, 0xb5, 0xc9, 0x7c, + 0x74, 0x94, 0x07, 0xf9, 0x3f, 0x4c, 0xed, 0x61, 0xdf, 0x95, 0x34, 0x50, 0xa7, 0x99, 0x71, 0x8a, + 0x7b, 0xd8, 0xdf, 0xa6, 0x01, 0xb9, 0x03, 0x33, 0xb4, 0x1b, 0x30, 0x1e, 0xca, 0xdd, 0x48, 0xb5, + 0xfd, 0x8c, 0x73, 0xb6, 0x41, 0x6e, 0xc2, 0x64, 0xa7, 0x4b, 0x03, 0x61, 0x16, 0x14, 0xa2, 0x0d, + 0x72, 0x0f, 0x66, 0xfd, 0x30, 0x40, 0x21, 0xdd, 0x93, 0x37, 0x6f, 0x4e, 0x2a, 0x0c, 0xf4, 0x96, + 0xca, 0xfd, 0x7f, 0x50, 0xd4, 0x96, 0x59, 0xd4, 0xc1, 0xb4, 0x45, 0xee, 0x02, 0x24, 0x69, 0xbb, + 0x1b, 0x7a, 0xee, 0x1e, 0xf6, 0xcd, 0x29, 0x1d, 0x4d, 0xef, 0x3c, 0xc5, 0x3e, 0x29, 0x41, 0x5e, + 0xca, 0xae, 0x39, 0xbd, 0x64, 0x2c, 0xcf, 0x3b, 0x27, 0xcb, 0xf2, 0xdf, 0x06, 0xdc, 0xa8, 0x37, + 0x5b, 0x75, 0x95, 0xd5, 0xb0, 0x08, 0x3e, 0x2c, 0xea, 0x2c, 0xdd, 0x1e, 0xf2, 0xb0, 0x13, 0x7a, + 0xf4, 0x64, 0xaa, 0x0c, 0x6b, 0xf2, 0xf0, 0xca, 0x9a, 0x68, 0x9d, 0x9d, 0x73, 0x6e, 0xaa, 0xde, + 0xc4, 0x7f, 0x65, 0x9f, 0xbc, 0x07, 0x37, 0x7b, 0xac, 0x2b, 0x91, 0x73, 0xea, 0xc6, 0x34, 0x42, + 0x81, 0xbc, 0x87, 0x5c, 0x98, 0x13, 0x4b, 0xf9, 0xe5, 0x19, 0x67, 0x31, 0xc3, 0x9a, 0x67, 0x10, + 0x79, 0x0a, 0xf3, 0x7e, 0x2c, 0x04, 0x7a, 0xae, 0x50, 0x27, 0x1d, 0x4e, 0x91, 0xb7, 0xfe, 0xeb, + 0x9a, 0x74, 0x5e, 0xce, 0x9c, 0x76, 0xd6, 0x56, 0xf9, 0xf7, 0x09, 0x98, 0xd3, 0xcb, 0xd7, 0x9e, + 0x91, 0x9a, 0x3e, 0x72, 0x46, 0xce, 0xea, 0x4f, 0xc4, 0xe5, 0xd8, 0xd1, 0x29, 0xcc, 0xae, 0xdc, + 0x19, 0x39, 0x61, 0x1d, 0xec, 0x9c, 0x38, 0x3f, 0x9e, 0xff, 0xe5, 0x1b, 0x38, 0x3b, 0xa8, 0x03, + 0x2c, 0x43, 0x05, 0xf9, 0x18, 0xc0, 0x63, 0xb1, 0x1f, 0xaa, 0x59, 0x6e, 0xe6, 0x47, 0x8a, 0xd5, + 0x32, 0x82, 0x3a, 0xc9, 0x39, 0x3e, 0x79, 0x06, 0x8b, 0xe7, 0xaf, 0x2d, 0x2b, 0x55, 0x41, 0x65, + 0xf4, 0xf6, 0x6b, 0xdc, 0xde, 0xb0, 0x5a, 0xe4, 0xbc, 0x8a, 0xde, 0x7b, 0xb4, 0xf8, 0xf2, 0x93, + 0x12, 0x2c, 0xc0, 0x5c, 0x96, 0xb8, 0x9d, 0x86, 0xfe, 0x3b, 0x3f, 0x18, 0x70, 0x6b, 0xec, 0xd5, + 0x93, 0xfb, 0x70, 0xaf, 0xde, 0x6c, 0xb9, 0xf5, 0xad, 0xcd, 0xd5, 0x46, 0xd3, 0xdd, 0x59, 0x73, + 0x1a, 0x4f, 0x1a, 0xb5, 0xd5, 0xed, 0xc6, 0x56, 0xd3, 0xfd, 0x6c, 0xad, 0x59, 0x6f, 0x34, 0xd7, + 0x4b, 0xb9, 0xab, 0x48, 0xad, 0xcf, 0x6b, 0xb5, 0xb5, 0x56, 0xab, 0x64, 0x90, 0x32, 0x58, 0xe3, + 0x48, 0x4f, 0x56, 0x1b, 0x1b, 0x6b, 0xf5, 0xd2, 0xc4, 0xe3, 0x1f, 0x8d, 0xfd, 0x43, 0x2b, 0x77, + 0x70, 0x68, 0xe5, 0x8e, 0x0f, 0x2d, 0xe3, 0xdb, 0x81, 0x65, 0xfc, 0x3c, 0xb0, 0x8c, 0x3f, 0x06, + 0x96, 0xb1, 0x3f, 0xb0, 0x8c, 0x83, 0x81, 0x65, 0xfc, 0x39, 0xb0, 0x8c, 0xbf, 0x06, 0x56, 0xee, + 0x78, 0x60, 0x19, 0x3f, 0x1d, 0x59, 0xb9, 0x5f, 0x8f, 0x2c, 0x63, 0xff, 0xc8, 0xca, 0x1d, 0x1c, + 0x59, 0xb9, 0x67, 0xcd, 0x80, 0x25, 0x7b, 0x81, 0x9d, 0xf5, 0x9e, 0x9d, 0x8a, 0xaa, 0x5a, 0x74, + 0x18, 0x8f, 0x2a, 0x09, 0x67, 0xbd, 0xd0, 0x47, 0x5e, 0xc9, 0xe0, 0x6a, 0xd2, 0x0e, 0x58, 0x15, + 0x9f, 0xcb, 0xe1, 0x27, 0xfc, 0xca, 0x4f, 0xdf, 0x2e, 0xaa, 0x8f, 0xf8, 0xe1, 0xbf, 0x01, 0x00, + 0x00, 0xff, 0xff, 0xcc, 0xc0, 0x8a, 0x1a, 0x7c, 0x08, 0x00, 0x00, } func (x DNSDomainVerificationType) String() string { diff --git a/pbgo/extschema/schema/dns_domain/public_crudapi.pb.go b/pbgo/extschema/schema/dns_domain/public_crudapi.pb.go index 828e0392c..1a86ed30c 100644 --- a/pbgo/extschema/schema/dns_domain/public_crudapi.pb.go +++ b/pbgo/extschema/schema/dns_domain/public_crudapi.pb.go @@ -1073,106 +1073,110 @@ func init() { } var fileDescriptor_dc3d3724ada92f65 = []byte{ - // 1583 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4b, 0x6c, 0x13, 0x57, - 0x17, 0xce, 0xb5, 0x1d, 0xc7, 0x3e, 0xce, 0x63, 0xb8, 0x3f, 0x84, 0x89, 0x7f, 0x7e, 0xff, 0xae, - 0x49, 0x68, 0x88, 0x9a, 0x31, 0x0d, 0x12, 0x82, 0xb4, 0xa2, 0x38, 0xce, 0x24, 0x24, 0xe4, 0x81, - 0xc6, 0x06, 0x21, 0x10, 0x1a, 0x8d, 0xed, 0x6b, 0x33, 0xc5, 0xf6, 0x4c, 0x67, 0xae, 0x93, 0x46, - 0x55, 0xa4, 0x0a, 0xa9, 0x7b, 0xa4, 0x6e, 0xaa, 0xaa, 0x8b, 0x6e, 0x5a, 0x55, 0xed, 0xa2, 0x9b, - 0x2e, 0xaa, 0x66, 0xc3, 0x0e, 0x84, 0xd4, 0x0a, 0xb5, 0x1b, 0x56, 0x55, 0x71, 0xba, 0x60, 0x89, - 0xba, 0x68, 0xb7, 0xd5, 0xdc, 0x3b, 0x63, 0x6c, 0xc7, 0x26, 0x0e, 0xb0, 0xf2, 0xcc, 0x79, 0x7c, - 0xfe, 0xce, 0x3d, 0x8f, 0x39, 0x33, 0x30, 0xbd, 0x41, 0x6c, 0x49, 0x37, 0x92, 0x76, 0xfe, 0x16, - 0xa9, 0x68, 0xc9, 0x42, 0xd5, 0x56, 0x0b, 0x46, 0x45, 0xd3, 0xab, 0x49, 0xb3, 0x96, 0x2b, 0xeb, - 0x79, 0x35, 0x6f, 0xd5, 0x0a, 0x9a, 0xa9, 0x4b, 0xa6, 0x65, 0x50, 0x03, 0x8b, 0xdc, 0x5c, 0xe2, - 0xe6, 0xd2, 0x73, 0xf3, 0xe8, 0x74, 0x49, 0xa7, 0xb7, 0x6a, 0x39, 0x29, 0x6f, 0x54, 0x92, 0x25, - 0xa3, 0x64, 0x24, 0x99, 0x43, 0xae, 0x56, 0x64, 0x77, 0xec, 0x86, 0x5d, 0x71, 0xa0, 0xe8, 0xb1, - 0x92, 0x61, 0x94, 0xca, 0x24, 0xa9, 0x99, 0x7a, 0x52, 0xab, 0x56, 0x0d, 0xaa, 0x51, 0xdd, 0xa8, - 0xda, 0xae, 0xf6, 0xbf, 0xae, 0xb6, 0x81, 0x41, 0x2a, 0x26, 0xdd, 0x72, 0x95, 0x13, 0x5d, 0x29, - 0x1b, 0xb9, 0xf7, 0x49, 0x9e, 0xba, 0x66, 0xe3, 0x5d, 0xcd, 0xe8, 0x96, 0x49, 0xbc, 0x7f, 0x8a, - 0xb6, 0x5a, 0x11, 0xcb, 0x32, 0xac, 0x06, 0x8b, 0x56, 0x9d, 0x61, 0x36, 0x53, 0x1c, 0x6b, 0x55, - 0x36, 0x63, 0x26, 0x5a, 0x55, 0x1b, 0xc4, 0x26, 0xd5, 0x8d, 0x36, 0xf7, 0x78, 0x9b, 0x8d, 0x4e, - 0x36, 0xd5, 0x16, 0x8b, 0xc4, 0xb7, 0x08, 0x86, 0xd2, 0x16, 0xd1, 0x28, 0x51, 0xc8, 0x07, 0x35, - 0x62, 0x53, 0xfc, 0x1e, 0x84, 0x2a, 0x84, 0x6a, 0x05, 0x8d, 0x6a, 0x22, 0x8a, 0xa3, 0xc9, 0xc8, - 0xcc, 0x71, 0xa9, 0x35, 0x1f, 0xeb, 0xec, 0x00, 0xb8, 0xd7, 0x2a, 0xa1, 0x5a, 0x76, 0xcb, 0x24, - 0x4a, 0xc3, 0x09, 0xaf, 0x42, 0xc0, 0x36, 0x49, 0x5e, 0xf4, 0x31, 0xe7, 0x49, 0xa9, 0x5b, 0x32, - 0x25, 0x8e, 0x90, 0x31, 0x49, 0xde, 0x41, 0x98, 0x1b, 0xf9, 0x7c, 0x7b, 0xd0, 0x71, 0x94, 0x4a, - 0x79, 0xd5, 0xf9, 0x55, 0x18, 0xcc, 0x6c, 0xf8, 0xe1, 0xf9, 0x20, 0xff, 0xc7, 0xc4, 0xdf, 0x08, - 0x86, 0x3d, 0xb2, 0xb6, 0x69, 0x54, 0x6d, 0x82, 0xdf, 0xdd, 0xc3, 0x36, 0xde, 0x91, 0xed, 0x22, - 0xa1, 0x1d, 0xa8, 0xae, 0xc3, 0x88, 0xbd, 0x65, 0x53, 0x52, 0x51, 0x1b, 0x20, 0x7e, 0x06, 0x72, - 0xa2, 0x0d, 0x24, 0xc3, 0xac, 0xf6, 0x42, 0x0d, 0x73, 0xf7, 0x55, 0x0f, 0x70, 0xb9, 0x25, 0xf6, - 0x89, 0xee, 0xb1, 0x2f, 0x12, 0x7a, 0x80, 0xc0, 0x7f, 0x47, 0x30, 0xac, 0x10, 0xb3, 0xac, 0xe5, - 0x1b, 0x69, 0xba, 0xb0, 0x27, 0xf0, 0xf1, 0x8e, 0x81, 0xbb, 0x6e, 0x1d, 0x82, 0x5f, 0x6b, 0xe1, - 0x7a, 0xb2, 0x3b, 0x57, 0x17, 0x62, 0x1f, 0xbe, 0x38, 0x09, 0x82, 0x45, 0x6c, 0xa3, 0x66, 0xe5, - 0x89, 0xba, 0x41, 0x2c, 0x5b, 0x37, 0xaa, 0xec, 0x34, 0xc3, 0x73, 0x81, 0xa7, 0x3b, 0x08, 0x29, - 0x23, 0x9e, 0xf6, 0x2a, 0x57, 0x36, 0x07, 0x78, 0x08, 0x46, 0x1a, 0xf1, 0xf1, 0xcc, 0x26, 0x3e, - 0x43, 0x00, 0x8b, 0x84, 0x7a, 0xf1, 0x1e, 0x83, 0x70, 0x55, 0xab, 0x10, 0xdb, 0xd4, 0xf2, 0x84, - 0x05, 0x1c, 0x56, 0x9e, 0x0b, 0x30, 0x86, 0x80, 0x73, 0xc3, 0x62, 0x09, 0x2b, 0xec, 0x1a, 0x5f, - 0x03, 0xe7, 0x1f, 0x19, 0x98, 0x5a, 0x34, 0xac, 0x8a, 0x46, 0x19, 0x9d, 0xe1, 0x99, 0xe4, 0x0b, - 0xd3, 0xe2, 0x11, 0x58, 0x60, 0x2e, 0x69, 0xa3, 0x40, 0x94, 0x61, 0xab, 0x45, 0x96, 0xf8, 0x24, - 0x08, 0x91, 0x26, 0x4b, 0x7c, 0x11, 0x22, 0x79, 0x56, 0x96, 0xec, 0x7f, 0xdc, 0x03, 0x7d, 0x73, - 0xbf, 0xc2, 0x77, 0x23, 0x53, 0x80, 0xfb, 0x3a, 0xd8, 0xf8, 0x12, 0x0c, 0x5a, 0xfc, 0x1c, 0x38, - 0x94, 0x7f, 0xbf, 0x1e, 0x6a, 0xad, 0x0a, 0x25, 0xe2, 0x7a, 0x33, 0xb0, 0x4e, 0x09, 0x09, 0xbc, - 0x20, 0x21, 0x2d, 0xcd, 0xd4, 0xff, 0x3a, 0x9a, 0x69, 0xe0, 0xb5, 0x34, 0x53, 0xf0, 0xd5, 0x9b, - 0x09, 0xcb, 0x10, 0xb4, 0xa9, 0x46, 0x6b, 0xb6, 0xf8, 0xe5, 0x17, 0x28, 0xee, 0xef, 0xc0, 0xaa, - 0x09, 0x2f, 0xc3, 0x2c, 0x39, 0xc1, 0x39, 0xff, 0xbd, 0x6d, 0xa4, 0xb8, 0xce, 0x78, 0x09, 0x0e, - 0x59, 0xa4, 0x48, 0x2c, 0x4b, 0xaf, 0x96, 0x54, 0xfe, 0x20, 0xb0, 0xc5, 0x10, 0xc3, 0x3b, 0xd6, - 0xa5, 0xfd, 0x8a, 0x2c, 0x36, 0xa1, 0xe1, 0xc6, 0xe5, 0x36, 0xbe, 0x0a, 0x62, 0x81, 0x94, 0x09, - 0x25, 0x05, 0x95, 0xeb, 0x48, 0xa1, 0x81, 0x18, 0xee, 0x01, 0x71, 0xd4, 0xf5, 0x56, 0x5c, 0x67, - 0x0f, 0xf7, 0x1a, 0x8c, 0x15, 0x74, 0x5b, 0xcb, 0x95, 0x3b, 0x01, 0x43, 0x0f, 0xc0, 0x47, 0x3d, - 0xf7, 0x36, 0xe4, 0xa6, 0x7e, 0x5d, 0x0e, 0x84, 0x90, 0xe0, 0x4b, 0x7c, 0x85, 0x20, 0xb2, 0xa2, - 0xdb, 0x3d, 0xf6, 0xe8, 0x1b, 0x30, 0x58, 0xd6, 0x72, 0xa4, 0xac, 0x16, 0xf5, 0x32, 0x25, 0x96, - 0xdb, 0xab, 0x11, 0x26, 0x5b, 0x60, 0x22, 0x7c, 0x1c, 0x86, 0x2c, 0x62, 0x1a, 0x16, 0x55, 0x8b, - 0x3a, 0x29, 0x17, 0x6c, 0xd1, 0x1f, 0xf7, 0x4f, 0x86, 0x95, 0x41, 0x2e, 0x5c, 0x60, 0x32, 0x7c, - 0x0a, 0x0e, 0xbb, 0x46, 0x3c, 0x29, 0x9e, 0x6d, 0x80, 0xd9, 0x62, 0xae, 0xe3, 0x29, 0xe4, 0x1e, - 0x89, 0x1f, 0x82, 0x20, 0x70, 0x9e, 0xbc, 0x61, 0x97, 0x28, 0xa9, 0xe0, 0x51, 0x08, 0x52, 0x52, - 0xd5, 0xaa, 0x94, 0xd5, 0x57, 0x58, 0x71, 0xef, 0x5e, 0x62, 0xd0, 0x08, 0xe0, 0xaf, 0xe9, 0x05, - 0x3e, 0xeb, 0x14, 0xe7, 0x12, 0xc7, 0x21, 0x52, 0x20, 0x76, 0xde, 0xd2, 0xd9, 0xb3, 0x56, 0x8c, - 0xf0, 0x48, 0x9b, 0x44, 0x38, 0x0a, 0x21, 0xef, 0x98, 0xc5, 0xc1, 0x38, 0x9a, 0x0c, 0x29, 0x8d, - 0x7b, 0xbc, 0x06, 0x41, 0x76, 0x28, 0x3c, 0xa4, 0xc8, 0xcc, 0x99, 0xee, 0x95, 0xda, 0x1e, 0x95, - 0xb4, 0xc2, 0x1c, 0xe5, 0x2a, 0xb5, 0xb6, 0x14, 0x17, 0x05, 0xdf, 0x84, 0x48, 0xd3, 0xf2, 0xe3, - 0xd6, 0xc0, 0x3b, 0x07, 0x00, 0x4d, 0x3d, 0xf7, 0xe6, 0xc8, 0xcd, 0x78, 0xf8, 0x1c, 0x80, 0xb1, - 0x59, 0x25, 0x96, 0xea, 0xac, 0x17, 0x62, 0x98, 0x35, 0x6b, 0xb4, 0x0d, 0xfd, 0xaa, 0x4e, 0x36, - 0xbd, 0xfa, 0x0a, 0x33, 0x6b, 0x47, 0xd2, 0x32, 0x70, 0x86, 0x5e, 0xc7, 0xc0, 0x19, 0x7e, 0xa5, - 0x81, 0x73, 0x01, 0x42, 0x25, 0x42, 0xd9, 0xd8, 0x70, 0x47, 0x57, 0x6f, 0x43, 0x47, 0x19, 0x28, - 0xf1, 0x1b, 0xbc, 0x0c, 0xe0, 0x16, 0xa5, 0x4d, 0xa8, 0x3b, 0x18, 0x0e, 0x34, 0x68, 0xc2, 0xdc, - 0x3d, 0x43, 0x68, 0xf4, 0x1c, 0x44, 0x9a, 0xb2, 0xe9, 0x54, 0xd9, 0x6d, 0xb2, 0xe5, 0x56, 0xa4, - 0x73, 0x89, 0x0f, 0x43, 0xff, 0x86, 0x56, 0xae, 0x79, 0xc5, 0xc8, 0x6f, 0x66, 0x7d, 0x67, 0x51, - 0xf4, 0x3c, 0x08, 0xed, 0x39, 0x3b, 0x88, 0xff, 0x72, 0x20, 0xd4, 0x2f, 0x04, 0x13, 0x77, 0x10, - 0x0c, 0x36, 0xd7, 0x02, 0xbe, 0x00, 0xfd, 0x3a, 0x25, 0x15, 0x5b, 0xe4, 0x13, 0x74, 0xaa, 0xf7, - 0x12, 0x52, 0xb8, 0x23, 0x3e, 0x05, 0x41, 0xbe, 0xfc, 0x8a, 0x3e, 0x06, 0x21, 0xb6, 0x41, 0xc8, - 0x8e, 0x92, 0x1d, 0xa9, 0x6b, 0x97, 0xb8, 0x0d, 0x43, 0xf3, 0x6c, 0xd0, 0xbd, 0xfc, 0x22, 0x30, - 0x09, 0x42, 0x51, 0xd3, 0xcb, 0xaa, 0x5e, 0x6c, 0x0c, 0x44, 0xd6, 0xac, 0x21, 0x65, 0xd8, 0x91, - 0x2f, 0x15, 0xbd, 0x41, 0x37, 0xf5, 0x17, 0x82, 0x23, 0x1d, 0x57, 0x00, 0x1c, 0x85, 0xd1, 0x45, - 0x39, 0xab, 0x2a, 0x99, 0xcb, 0xea, 0xc2, 0xba, 0xb2, 0x9a, 0xca, 0xaa, 0xf3, 0xf2, 0x42, 0xea, - 0xca, 0x4a, 0x56, 0xe8, 0xc3, 0xff, 0x83, 0xb1, 0x36, 0xdd, 0xc2, 0xba, 0xa2, 0xa6, 0x15, 0x39, - 0x95, 0x95, 0x05, 0x84, 0x63, 0x10, 0xed, 0xa0, 0x56, 0xe4, 0xcb, 0x2b, 0xa9, 0xb4, 0x2c, 0xf8, - 0xf0, 0x18, 0x1c, 0x69, 0xd3, 0x67, 0xb2, 0xa9, 0xec, 0x95, 0x8c, 0xe0, 0xc7, 0x47, 0xe1, 0x3f, - 0x6d, 0x2a, 0x45, 0x4e, 0xcd, 0x0b, 0x01, 0x3c, 0x0e, 0xf1, 0x3d, 0x8a, 0x05, 0x59, 0x51, 0x96, - 0xd6, 0x16, 0xd5, 0xf5, 0xb9, 0x65, 0x39, 0x9d, 0xcd, 0x08, 0xfd, 0x1d, 0xac, 0xe6, 0x94, 0xf5, - 0x4b, 0xf2, 0x1a, 0x37, 0x96, 0xd7, 0xd2, 0x72, 0x46, 0x08, 0xce, 0xfc, 0x33, 0x00, 0xfe, 0xd4, - 0xe5, 0x25, 0xfc, 0x13, 0x82, 0x20, 0xdf, 0x4c, 0x70, 0xaf, 0xbb, 0x4b, 0x74, 0x72, 0x7f, 0x43, - 0x77, 0x9d, 0xbb, 0x59, 0xbf, 0x2f, 0x3a, 0xaf, 0x3a, 0xd3, 0xba, 0x31, 0xad, 0x57, 0x8b, 0x96, - 0x66, 0x53, 0xab, 0x96, 0xa7, 0x35, 0x8b, 0x4c, 0x6f, 0x5a, 0x3a, 0x25, 0x77, 0x7e, 0xfb, 0xf3, - 0x53, 0xdf, 0xd9, 0xc4, 0x69, 0xf7, 0x8d, 0x30, 0xd9, 0x48, 0xa9, 0x9d, 0xfc, 0xc8, 0x6b, 0x6f, - 0xa9, 0x21, 0xdc, 0x6e, 0x7a, 0xd3, 0xb2, 0x67, 0xd1, 0x14, 0xfe, 0x1e, 0x81, 0x7f, 0x91, 0x50, - 0x3c, 0xbe, 0xcf, 0x6e, 0xc7, 0x69, 0x4f, 0xf4, 0xb4, 0x01, 0x26, 0x6e, 0x3c, 0xf8, 0xd1, 0x87, - 0xea, 0xf7, 0xc5, 0x68, 0x67, 0xde, 0x16, 0xd1, 0x0a, 0x8c, 0xf6, 0x69, 0xfc, 0x76, 0x27, 0xda, - 0x9d, 0xd9, 0x72, 0xf9, 0x36, 0xfe, 0x0e, 0x41, 0xc0, 0x69, 0x13, 0x3c, 0xb1, 0x5f, 0x1b, 0x71, - 0xce, 0x27, 0x7a, 0xeb, 0xb6, 0x44, 0xb6, 0x47, 0xd2, 0x6f, 0xe1, 0xa9, 0xde, 0x49, 0xe3, 0x9f, - 0x11, 0x0c, 0xb8, 0xbb, 0x26, 0xee, 0x79, 0x1d, 0x8d, 0x9e, 0xec, 0xc1, 0xd2, 0xa5, 0x5d, 0xe9, - 0xa5, 0x3e, 0x2e, 0x46, 0xd3, 0x2f, 0x51, 0x1f, 0x6d, 0x06, 0xdb, 0x4e, 0xbd, 0x7c, 0x8d, 0x20, - 0xc8, 0xe7, 0xca, 0x8b, 0x8a, 0xbd, 0x65, 0xf2, 0x44, 0x47, 0x25, 0xfe, 0xc1, 0x40, 0xf2, 0x3e, - 0x18, 0x48, 0x72, 0xc5, 0xa4, 0x5b, 0x89, 0x1b, 0xbd, 0x50, 0x3f, 0x33, 0x75, 0xf0, 0x1a, 0x99, - 0x45, 0x53, 0xd1, 0xeb, 0xf7, 0x76, 0x90, 0xef, 0xd7, 0x1d, 0xf4, 0xff, 0xae, 0x24, 0xf9, 0xe3, - 0xe3, 0xf1, 0x0e, 0x42, 0xf5, 0x1d, 0x34, 0xd1, 0xd3, 0xb3, 0xe6, 0xce, 0x2f, 0xa2, 0x4f, 0x40, - 0x73, 0x77, 0xd1, 0xc3, 0xf3, 0xfd, 0x69, 0xe5, 0xca, 0xfc, 0xca, 0xa3, 0x27, 0xb1, 0xbe, 0xc7, - 0x4f, 0x62, 0x7d, 0xcf, 0x9e, 0xc4, 0xd0, 0xc7, 0xf5, 0x18, 0xfa, 0xa6, 0x1e, 0x43, 0x0f, 0xea, - 0x31, 0xf4, 0xa8, 0x1e, 0x43, 0x7f, 0xd4, 0x63, 0xe8, 0x69, 0x3d, 0xd6, 0xf7, 0xac, 0x1e, 0x43, - 0x77, 0x77, 0x63, 0x7d, 0xf7, 0x76, 0x63, 0xe8, 0xd1, 0x6e, 0xac, 0xef, 0xf1, 0x6e, 0xac, 0xef, - 0xfa, 0x5a, 0xc9, 0x30, 0x6f, 0x97, 0xa4, 0x0d, 0xc3, 0xd9, 0xdf, 0x2c, 0x4d, 0xaa, 0xd9, 0x49, - 0x76, 0xe1, 0xbc, 0xbd, 0x4c, 0x9b, 0x96, 0xb1, 0xa1, 0x17, 0x88, 0x35, 0xed, 0xa9, 0x93, 0x66, - 0xae, 0x64, 0x24, 0xc9, 0x87, 0xd4, 0xfd, 0x20, 0xb1, 0xe7, 0xab, 0x49, 0x2e, 0xc8, 0xce, 0xf6, - 0xf4, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x55, 0xdb, 0xb3, 0x11, 0x32, 0x12, 0x00, 0x00, + // 1633 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x1b, 0x59, + 0x1d, 0xcf, 0xb3, 0x1d, 0xd7, 0x7e, 0xce, 0xc7, 0xec, 0x63, 0x37, 0xeb, 0x98, 0x62, 0x8c, 0x37, + 0x59, 0xb2, 0xd1, 0x7a, 0xbc, 0xa4, 0x62, 0xb5, 0x1b, 0x50, 0xa9, 0xe3, 0x4c, 0xb2, 0x49, 0xf3, + 0x51, 0x8d, 0xdd, 0xaa, 0x54, 0x42, 0xa3, 0xf1, 0xcc, 0xb3, 0x3b, 0xd4, 0x9e, 0x19, 0xde, 0x7b, + 0x76, 0x1a, 0xa1, 0x48, 0xa8, 0x12, 0xe2, 0x5a, 0xa9, 0x08, 0xa1, 0x8a, 0x03, 0x97, 0x22, 0xc4, + 0x99, 0x03, 0x52, 0x2e, 0xbd, 0x51, 0xf5, 0x80, 0x2a, 0xb8, 0xf4, 0x84, 0x5a, 0x87, 0x43, 0x25, + 0x0e, 0x54, 0x08, 0x71, 0x46, 0xf3, 0xde, 0x8c, 0x6b, 0x3b, 0x76, 0xe2, 0xf4, 0x83, 0x93, 0x67, + 0xfe, 0x1f, 0xbf, 0xf9, 0xff, 0xde, 0xff, 0x63, 0xfe, 0x1e, 0x98, 0x6b, 0x61, 0x2a, 0x5b, 0x4e, + 0x9e, 0x1a, 0x37, 0x71, 0x43, 0xcf, 0x9b, 0x36, 0xd5, 0x4c, 0xa7, 0xa1, 0x5b, 0x76, 0xde, 0x6d, + 0x56, 0xea, 0x96, 0xa1, 0x19, 0xa4, 0x69, 0xea, 0xae, 0x25, 0xbb, 0xc4, 0x61, 0x0e, 0x4a, 0x0a, + 0x73, 0x59, 0x98, 0xcb, 0xaf, 0xcc, 0x53, 0xb9, 0x9a, 0xc5, 0x6e, 0x36, 0x2b, 0xb2, 0xe1, 0x34, + 0xf2, 0x35, 0xa7, 0xe6, 0xe4, 0xb9, 0x43, 0xa5, 0x59, 0xe5, 0x77, 0xfc, 0x86, 0x5f, 0x09, 0xa0, + 0xd4, 0xf9, 0x9a, 0xe3, 0xd4, 0xea, 0x38, 0xaf, 0xbb, 0x56, 0x5e, 0xb7, 0x6d, 0x87, 0xe9, 0xcc, + 0x72, 0x6c, 0xea, 0x6b, 0xbf, 0xee, 0x6b, 0x3b, 0x18, 0xb8, 0xe1, 0xb2, 0x7d, 0x5f, 0x39, 0x3f, + 0x34, 0x64, 0xa7, 0xf2, 0x63, 0x6c, 0x30, 0xdf, 0x6c, 0x6e, 0xa8, 0x19, 0xdb, 0x77, 0x71, 0xf0, + 0xa4, 0x54, 0xaf, 0x15, 0x26, 0xc4, 0x21, 0x9d, 0x28, 0x7a, 0x75, 0x8e, 0xdb, 0x1d, 0xe2, 0x6c, + 0xaf, 0xb2, 0x1b, 0x33, 0xdb, 0xab, 0x6a, 0x61, 0x8a, 0xed, 0x56, 0x9f, 0x7b, 0xa6, 0xcf, 0xc6, + 0xc2, 0x7b, 0x5a, 0x8f, 0x45, 0xf6, 0x0f, 0x00, 0x4e, 0x16, 0x09, 0xd6, 0x19, 0x56, 0xf1, 0x4f, + 0x9a, 0x98, 0x32, 0xf4, 0x03, 0x18, 0x6b, 0x60, 0xa6, 0x9b, 0x3a, 0xd3, 0x93, 0x20, 0x03, 0x16, + 0x12, 0x4b, 0x1f, 0xc9, 0xbd, 0xf9, 0xd8, 0xe5, 0x07, 0x20, 0xbc, 0xb6, 0x31, 0xd3, 0xcb, 0xfb, + 0x2e, 0x56, 0x3b, 0x4e, 0x68, 0x1b, 0x46, 0xa8, 0x8b, 0x8d, 0x64, 0x88, 0x3b, 0x2f, 0xc8, 0xc3, + 0x92, 0x29, 0x0b, 0x84, 0x92, 0x8b, 0x0d, 0x0f, 0x61, 0x65, 0xfa, 0xfe, 0xc1, 0x84, 0xe7, 0x28, + 0xd7, 0x0c, 0xcd, 0xfb, 0x55, 0x39, 0xcc, 0x72, 0xfc, 0xf1, 0xc5, 0xa8, 0x78, 0x62, 0xf6, 0xbf, + 0x00, 0x4e, 0x05, 0xc1, 0x52, 0xd7, 0xb1, 0x29, 0x46, 0xdf, 0x3f, 0x16, 0x6d, 0x66, 0x60, 0xb4, + 0xeb, 0x98, 0x0d, 0x08, 0x75, 0x17, 0x4e, 0xd3, 0x7d, 0xca, 0x70, 0x43, 0xeb, 0x80, 0x84, 0x39, + 0xc8, 0xc7, 0x7d, 0x20, 0x25, 0x6e, 0x75, 0x1c, 0x6a, 0x4a, 0xb8, 0x6f, 0x07, 0x80, 0x9b, 0x3d, + 0xdc, 0xe7, 0x87, 0x73, 0x5f, 0xc7, 0xec, 0x0c, 0xc4, 0xff, 0x0e, 0xe0, 0x94, 0x8a, 0xdd, 0xba, + 0x6e, 0x74, 0xd2, 0x74, 0xe9, 0x18, 0xf1, 0xb9, 0x81, 0xc4, 0x7d, 0xb7, 0x01, 0xe4, 0x77, 0x7a, + 0x62, 0xfd, 0x64, 0x78, 0xac, 0x3e, 0xc4, 0x29, 0xf1, 0xa2, 0x3c, 0x94, 0x08, 0xa6, 0x4e, 0x93, + 0x18, 0x58, 0x6b, 0x61, 0x42, 0x2d, 0xc7, 0xe6, 0xa7, 0x19, 0x5f, 0x89, 0xbc, 0x38, 0x04, 0x40, + 0x9d, 0x0e, 0xb4, 0xd7, 0x84, 0xb2, 0x9b, 0xe0, 0x7b, 0x70, 0xba, 0xc3, 0x4f, 0x64, 0x36, 0xfb, + 0x6b, 0x00, 0xe1, 0x3a, 0x66, 0x01, 0xdf, 0xf3, 0x30, 0x6e, 0xeb, 0x0d, 0x4c, 0x5d, 0xdd, 0xc0, + 0x9c, 0x70, 0x5c, 0x7d, 0x25, 0x40, 0x08, 0x46, 0xbc, 0x1b, 0xce, 0x25, 0xae, 0xf2, 0x6b, 0x74, + 0x1d, 0x7a, 0x4f, 0xe4, 0x60, 0x5a, 0xd5, 0x21, 0x0d, 0x9d, 0xf1, 0x70, 0xa6, 0x96, 0xf2, 0x27, + 0xa6, 0x25, 0x08, 0x60, 0x8d, 0xbb, 0x14, 0x1d, 0x13, 0xab, 0x53, 0xa4, 0x47, 0x96, 0xfd, 0x79, + 0x14, 0x26, 0xba, 0x2c, 0xd1, 0x57, 0x30, 0x61, 0xf0, 0xb2, 0xe4, 0xcf, 0xf1, 0x0f, 0xf4, 0xdb, + 0xa7, 0x15, 0xbe, 0xcf, 0x4c, 0x85, 0xc2, 0xd7, 0xc3, 0x46, 0x97, 0xe1, 0x04, 0x11, 0xe7, 0x20, + 0xa0, 0xc2, 0xa7, 0xf5, 0x50, 0x6f, 0x55, 0xa8, 0x09, 0xdf, 0x9b, 0x83, 0x0d, 0x4a, 0x48, 0xe4, + 0x84, 0x84, 0xf4, 0x34, 0xd3, 0xf8, 0xdb, 0x68, 0xa6, 0x73, 0x6f, 0xa5, 0x99, 0xa2, 0x6f, 0xde, + 0x4c, 0x48, 0x81, 0x51, 0xca, 0x74, 0xd6, 0xa4, 0xc9, 0xdf, 0xfe, 0x06, 0x64, 0xc2, 0x03, 0xa2, + 0xea, 0xc2, 0x2b, 0x71, 0x4b, 0x11, 0xe0, 0x4a, 0xf8, 0xe1, 0x01, 0x50, 0x7d, 0x67, 0xb4, 0x01, + 0xdf, 0x23, 0xb8, 0x8a, 0x09, 0xb1, 0xec, 0x9a, 0x26, 0x5e, 0x04, 0x34, 0x19, 0xe3, 0x78, 0xe7, + 0x87, 0xb4, 0x5f, 0x95, 0x73, 0x93, 0x3a, 0x6e, 0x42, 0x4e, 0xd1, 0x35, 0x98, 0x34, 0x71, 0x1d, + 0x33, 0x6c, 0x6a, 0x42, 0x87, 0xcd, 0x0e, 0x62, 0x7c, 0x04, 0xc4, 0x19, 0xdf, 0x5b, 0xf5, 0x9d, + 0x03, 0xdc, 0xeb, 0x70, 0xd6, 0xb4, 0xa8, 0x5e, 0xa9, 0x0f, 0x02, 0x86, 0x23, 0x00, 0x7f, 0x18, + 0xb8, 0xf7, 0x21, 0x77, 0xf5, 0xeb, 0x66, 0x24, 0x06, 0xa4, 0x50, 0xf6, 0x01, 0x80, 0x89, 0x2d, + 0x8b, 0x8e, 0xd8, 0xa3, 0xdf, 0x82, 0x13, 0x75, 0xbd, 0x82, 0xeb, 0x5a, 0xd5, 0xaa, 0x33, 0x4c, + 0xfc, 0x5e, 0x4d, 0x70, 0xd9, 0x1a, 0x17, 0xa1, 0x8f, 0xe0, 0x24, 0xc1, 0xae, 0x43, 0x98, 0x56, + 0xb5, 0x70, 0xdd, 0xa4, 0xc9, 0x70, 0x26, 0xbc, 0x10, 0x57, 0x27, 0x84, 0x70, 0x8d, 0xcb, 0xd0, + 0x67, 0xf0, 0x7d, 0xdf, 0x48, 0x24, 0x25, 0xb0, 0x8d, 0x70, 0x5b, 0x24, 0x74, 0x22, 0x85, 0xc2, + 0x23, 0xfb, 0xc7, 0x28, 0x94, 0x44, 0x9c, 0xa2, 0x61, 0x37, 0x18, 0x6e, 0xa0, 0x19, 0x18, 0x65, + 0xd8, 0xd6, 0x6d, 0xc6, 0xeb, 0x2b, 0xae, 0xfa, 0x77, 0xaf, 0x31, 0x68, 0x24, 0x18, 0x6e, 0x5a, + 0xa6, 0x98, 0x75, 0xaa, 0x77, 0x89, 0x32, 0x30, 0x61, 0x62, 0x6a, 0x10, 0x8b, 0xbf, 0x6b, 0x93, + 0x09, 0xc1, 0xb4, 0x4b, 0x84, 0x52, 0x30, 0x16, 0x1c, 0x73, 0x72, 0x22, 0x03, 0x16, 0x62, 0x6a, + 0xe7, 0x1e, 0xed, 0xc0, 0x28, 0x3f, 0x14, 0x41, 0x29, 0xb1, 0xf4, 0xf9, 0xf0, 0x4a, 0xed, 0x67, + 0x25, 0x6f, 0x71, 0x47, 0xc5, 0x66, 0x64, 0x5f, 0xf5, 0x51, 0xd0, 0x8f, 0x60, 0xa2, 0x6b, 0xf9, + 0xf1, 0x6b, 0xe0, 0x7b, 0x67, 0x00, 0x2d, 0xbc, 0xf2, 0x16, 0xc8, 0xdd, 0x78, 0xe8, 0x4b, 0x08, + 0x9d, 0x3d, 0x1b, 0x13, 0xcd, 0x5b, 0x2f, 0x92, 0x71, 0xde, 0xac, 0xa9, 0x3e, 0xf4, 0x6b, 0x16, + 0xde, 0x0b, 0xea, 0x2b, 0xce, 0xad, 0x3d, 0x49, 0xcf, 0xc0, 0x99, 0x7c, 0x1b, 0x03, 0x67, 0xea, + 0x8d, 0x06, 0xce, 0x25, 0x18, 0xab, 0x61, 0xc6, 0xc7, 0x86, 0x3f, 0xba, 0x46, 0x1b, 0x3a, 0xea, + 0xb9, 0x9a, 0xb8, 0x41, 0x9b, 0x10, 0xfa, 0x45, 0x49, 0x31, 0xf3, 0x07, 0xc3, 0x99, 0x06, 0x4d, + 0x5c, 0xb8, 0x97, 0x30, 0x4b, 0x7d, 0x09, 0x13, 0x5d, 0xd9, 0xf4, 0xaa, 0xec, 0x16, 0xde, 0xf7, + 0x2b, 0xd2, 0xbb, 0x44, 0xef, 0xc3, 0xf1, 0x96, 0x5e, 0x6f, 0x06, 0xc5, 0x28, 0x6e, 0x96, 0x43, + 0x5f, 0x80, 0xd4, 0x45, 0x28, 0xf5, 0xe7, 0xec, 0x2c, 0xfe, 0x9b, 0x91, 0xd8, 0xb8, 0x14, 0xcd, + 0xde, 0x01, 0x70, 0xa2, 0xbb, 0x16, 0xd0, 0x25, 0x38, 0x6e, 0x31, 0xdc, 0xa0, 0x49, 0x31, 0x41, + 0x17, 0x47, 0x2f, 0x21, 0x55, 0x38, 0xa2, 0xcf, 0x60, 0x54, 0x2c, 0xbf, 0xc9, 0x10, 0x87, 0x48, + 0xf6, 0x41, 0x28, 0x9e, 0x92, 0x1f, 0xa9, 0x6f, 0x97, 0xbd, 0x05, 0x27, 0x57, 0xf9, 0xa0, 0x7b, + 0xfd, 0x45, 0x60, 0x01, 0x4a, 0x55, 0xdd, 0xaa, 0x6b, 0x56, 0xb5, 0x33, 0x10, 0x79, 0xb3, 0xc6, + 0xd4, 0x29, 0x4f, 0xbe, 0x51, 0x0d, 0x06, 0xdd, 0xe2, 0xbf, 0x01, 0xfc, 0x60, 0xe0, 0x0a, 0x80, + 0x52, 0x70, 0x66, 0x5d, 0x29, 0x6b, 0x6a, 0xe9, 0x8a, 0xb6, 0xb6, 0xab, 0x6e, 0x17, 0xca, 0xda, + 0xaa, 0xb2, 0x56, 0xb8, 0xba, 0x55, 0x96, 0xc6, 0xd0, 0x37, 0xe0, 0x6c, 0x9f, 0x6e, 0x6d, 0x57, + 0xd5, 0x8a, 0xaa, 0x52, 0x28, 0x2b, 0x12, 0x40, 0x69, 0x98, 0x1a, 0xa0, 0x56, 0x95, 0x2b, 0x5b, + 0x85, 0xa2, 0x22, 0x85, 0xd0, 0x2c, 0xfc, 0xa0, 0x4f, 0x5f, 0x2a, 0x17, 0xca, 0x57, 0x4b, 0x52, + 0x18, 0x7d, 0x08, 0xbf, 0xd6, 0xa7, 0x52, 0x95, 0xc2, 0xaa, 0x14, 0x41, 0x73, 0x30, 0x73, 0x4c, + 0xb1, 0xa6, 0xa8, 0xea, 0xc6, 0xce, 0xba, 0xb6, 0xbb, 0xb2, 0xa9, 0x14, 0xcb, 0x25, 0x69, 0x7c, + 0x80, 0xd5, 0x8a, 0xba, 0x7b, 0x59, 0xd9, 0x11, 0xc6, 0xca, 0x4e, 0x51, 0x29, 0x49, 0xd1, 0xa5, + 0x07, 0x10, 0x86, 0x0b, 0x57, 0x36, 0xd0, 0x7f, 0x00, 0x8c, 0x8a, 0xcd, 0x04, 0x8d, 0xba, 0xbb, + 0xa4, 0x16, 0x4e, 0x37, 0xf4, 0xd7, 0xb9, 0x5f, 0x81, 0xf6, 0x9f, 0x93, 0xe5, 0xea, 0x77, 0x6f, + 0x1b, 0x39, 0x8a, 0x8d, 0x26, 0xc1, 0x0d, 0x4c, 0x6f, 0xe6, 0x2a, 0x3a, 0xb5, 0x8c, 0x5c, 0x93, + 0x62, 0xf2, 0x69, 0xbf, 0x8a, 0x32, 0xdd, 0x36, 0x75, 0x62, 0x0a, 0x6d, 0x0b, 0xd3, 0x9c, 0xe5, + 0xe4, 0x2c, 0xbb, 0x4a, 0x74, 0xca, 0x48, 0xd3, 0x60, 0x4d, 0x82, 0x73, 0x7b, 0xc4, 0x62, 0xf8, + 0xce, 0xdf, 0xfe, 0x71, 0x2f, 0xf4, 0x45, 0xf6, 0x82, 0xff, 0x5f, 0x32, 0xdf, 0x29, 0x06, 0x9a, + 0xff, 0x69, 0x30, 0x18, 0xe4, 0x8e, 0xf0, 0xa0, 0xeb, 0x3f, 0x1a, 0x5d, 0x06, 0x8b, 0xe8, 0x5f, + 0x00, 0x86, 0xd7, 0x31, 0x43, 0x73, 0xa7, 0x6c, 0x85, 0x82, 0xf0, 0xfc, 0x48, 0xbb, 0x63, 0xf6, + 0x3e, 0x78, 0xf4, 0xa7, 0x90, 0xc7, 0xf8, 0x87, 0x83, 0x19, 0x37, 0x1c, 0xdb, 0x62, 0xce, 0x09, + 0xa4, 0x03, 0x83, 0xc1, 0xbc, 0x09, 0xd6, 0x4d, 0x4e, 0xfb, 0x02, 0xfa, 0xce, 0x20, 0xda, 0x83, + 0xd9, 0x0a, 0xf9, 0x01, 0xfa, 0x27, 0x80, 0x11, 0xaf, 0x41, 0xd1, 0xfc, 0x69, 0x0d, 0x2c, 0x38, + 0x7f, 0x3c, 0x5a, 0x9f, 0x67, 0xef, 0xfd, 0x9f, 0x48, 0x7f, 0x8a, 0x16, 0x47, 0x27, 0x8d, 0x7e, + 0x11, 0x82, 0xe7, 0xfc, 0x2d, 0x19, 0x8d, 0xbc, 0x48, 0xa7, 0x3e, 0x19, 0xc1, 0xd2, 0xa7, 0xfd, + 0xbb, 0x77, 0x5b, 0xd9, 0x5f, 0xa5, 0x8a, 0xaf, 0x51, 0xd9, 0x7d, 0x06, 0x07, 0x5e, 0xa5, 0x3f, + 0x03, 0x30, 0x2a, 0x66, 0xe9, 0x49, 0x0d, 0xde, 0x33, 0x6d, 0x53, 0x33, 0xb2, 0xf8, 0x48, 0x22, + 0x07, 0x1f, 0x49, 0x64, 0xa5, 0xe1, 0xb2, 0xfd, 0xec, 0x2f, 0xdf, 0x2d, 0xe9, 0xcf, 0x17, 0xcf, + 0x5e, 0xd7, 0xcb, 0x60, 0x31, 0x75, 0xe3, 0xe1, 0x21, 0x08, 0xfd, 0xf5, 0x10, 0x7c, 0x73, 0x28, + 0x3d, 0xf1, 0xb2, 0x7d, 0x7a, 0x08, 0x40, 0xfb, 0x10, 0xcc, 0x8f, 0xf4, 0x66, 0xbe, 0xf3, 0x97, + 0x64, 0x48, 0x02, 0x2b, 0x77, 0xc1, 0xe3, 0x8b, 0xe3, 0x45, 0xf5, 0xea, 0xea, 0xd6, 0x93, 0xe7, + 0xe9, 0xb1, 0xa7, 0xcf, 0xd3, 0x63, 0x2f, 0x9f, 0xa7, 0xc1, 0xcf, 0xda, 0x69, 0xf0, 0xfb, 0x76, + 0x1a, 0x3c, 0x6a, 0xa7, 0xc1, 0x93, 0x76, 0x1a, 0x3c, 0x6b, 0xa7, 0xc1, 0x8b, 0x76, 0x7a, 0xec, + 0x65, 0x3b, 0x0d, 0xee, 0x1e, 0xa5, 0xc7, 0x1e, 0x1e, 0xa5, 0xc1, 0x93, 0xa3, 0xf4, 0xd8, 0xd3, + 0xa3, 0xf4, 0xd8, 0x8d, 0x9d, 0x9a, 0xe3, 0xde, 0xaa, 0xc9, 0x2d, 0xc7, 0xdb, 0x76, 0x89, 0x2e, + 0x37, 0x69, 0x9e, 0x5f, 0x78, 0xff, 0xf5, 0x72, 0x2e, 0x71, 0x5a, 0x96, 0x89, 0x49, 0x2e, 0x50, + 0xe7, 0xdd, 0x4a, 0xcd, 0xc9, 0xe3, 0xdb, 0xcc, 0xff, 0x7c, 0x73, 0xec, 0x1b, 0x53, 0x25, 0xca, + 0xb3, 0x72, 0xe1, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x08, 0xbb, 0x0d, 0xf4, 0x60, 0x13, 0x00, + 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/dns_domain/public_crudapi.vesapi.go b/pbgo/extschema/schema/dns_domain/public_crudapi.vesapi.go index 73ecfd387..d5e1cfa6b 100644 --- a/pbgo/extschema/schema/dns_domain/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dns_domain/public_crudapi.vesapi.go @@ -2965,10 +2965,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3025,10 +3029,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3087,10 +3095,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_domain/public_customapi.pb.go b/pbgo/extschema/schema/dns_domain/public_customapi.pb.go index df4cb37e6..cc746b0fb 100644 --- a/pbgo/extschema/schema/dns_domain/public_customapi.pb.go +++ b/pbgo/extschema/schema/dns_domain/public_customapi.pb.go @@ -158,36 +158,38 @@ func init() { } var fileDescriptor_fc937e91d9921f51 = []byte{ - // 460 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x52, 0x3d, 0x8f, 0xd4, 0x30, - 0x10, 0x8d, 0x17, 0x84, 0xb4, 0x69, 0x40, 0x29, 0x20, 0x84, 0x95, 0x41, 0xa9, 0x10, 0x52, 0x6c, - 0x3e, 0x0a, 0x24, 0x44, 0x03, 0x5c, 0x03, 0x05, 0xa0, 0x2b, 0x28, 0x68, 0x0e, 0x27, 0x99, 0xcd, - 0x19, 0x36, 0x1e, 0x63, 0x3b, 0x11, 0x08, 0x9d, 0x84, 0xae, 0xa2, 0x44, 0x42, 0xfc, 0x07, 0xfe, - 0xc3, 0x35, 0xd7, 0x41, 0x85, 0x56, 0xd0, 0x6c, 0xc9, 0x66, 0x29, 0x28, 0xef, 0x27, 0x20, 0xbc, - 0xcb, 0xdd, 0xed, 0x1d, 0x5b, 0xd0, 0xbd, 0x99, 0xe7, 0x37, 0x7e, 0x1e, 0xbf, 0x90, 0xb7, 0x60, - 0x99, 0x44, 0x6e, 0x8b, 0x4d, 0xa8, 0x05, 0x2f, 0x95, 0xdd, 0x28, 0xb1, 0x16, 0x52, 0x71, 0xdd, - 0xe4, 0x23, 0x59, 0x6c, 0x14, 0x8d, 0x75, 0x58, 0x0b, 0x2d, 0x99, 0x36, 0xe8, 0x30, 0x8a, 0xe7, - 0x02, 0x36, 0x17, 0xb0, 0x03, 0x41, 0x92, 0x55, 0xd2, 0x6d, 0x36, 0x39, 0x2b, 0xb0, 0xe6, 0x15, - 0x56, 0xc8, 0xbd, 0x20, 0x6f, 0x86, 0xbe, 0xf2, 0x85, 0x47, 0xf3, 0x41, 0xc9, 0xa0, 0x42, 0xac, - 0x46, 0xc0, 0x85, 0x96, 0x5c, 0x28, 0x85, 0x4e, 0x38, 0x89, 0xca, 0x2e, 0xd8, 0x0b, 0xcb, 0xbe, - 0x50, 0x1f, 0x26, 0x07, 0xcb, 0x64, 0x2b, 0x46, 0xb2, 0x14, 0x0e, 0x16, 0x6c, 0x7a, 0x84, 0x05, - 0x0b, 0xaa, 0x5d, 0x9e, 0x90, 0x3e, 0x08, 0xcf, 0x3e, 0x01, 0x23, 0x87, 0xaf, 0xd7, 0x94, 0x5d, - 0xf3, 0xf6, 0xd7, 0xe1, 0x65, 0x03, 0xd6, 0x45, 0x83, 0xb0, 0xaf, 0x44, 0x0d, 0x56, 0x8b, 0x02, - 0x62, 0x72, 0x89, 0x5c, 0xee, 0xaf, 0x1f, 0x34, 0xa2, 0x28, 0x3c, 0xf9, 0xa7, 0x88, 0x7b, 0x9e, - 0xf0, 0x38, 0x3d, 0x1f, 0x9e, 0x3b, 0x36, 0xcb, 0x6a, 0x54, 0x16, 0xae, 0x7f, 0xec, 0x85, 0xfd, - 0x7b, 0x7e, 0x81, 0x77, 0x1e, 0xdf, 0x8f, 0x26, 0x24, 0x3c, 0x7d, 0xe4, 0x64, 0x74, 0x95, 0xad, - 0xda, 0x27, 0xfb, 0xb7, 0xc1, 0xe4, 0xda, 0x7f, 0x28, 0xe6, 0x36, 0xd2, 0x67, 0xdd, 0xe7, 0x38, - 0x69, 0xc1, 0x66, 0x12, 0x33, 0xa9, 0x86, 0x46, 0x58, 0x67, 0x9a, 0xc2, 0x35, 0x06, 0x32, 0x03, - 0xa2, 0xdc, 0xfe, 0xfe, 0xf3, 0x43, 0xef, 0x76, 0x7a, 0x73, 0xf1, 0xe5, 0x7c, 0xff, 0xb9, 0x96, - 0xbf, 0xd9, 0xc7, 0x5b, 0x87, 0xb3, 0xe1, 0xdb, 0x5b, 0xbc, 0xf5, 0xf7, 0xdd, 0x22, 0x57, 0x92, - 0x6c, 0x77, 0x87, 0x9c, 0xf8, 0xb6, 0x43, 0x2e, 0xae, 0xf4, 0xf6, 0x28, 0x7f, 0x0e, 0x85, 0xdb, - 0xfe, 0x1a, 0xf7, 0xce, 0x90, 0xbb, 0xef, 0xc8, 0x78, 0x4a, 0x83, 0xc9, 0x94, 0x06, 0x7b, 0x53, - 0x4a, 0xde, 0x76, 0x94, 0x7c, 0xea, 0x28, 0xf9, 0xd2, 0x51, 0x32, 0xee, 0x28, 0xf9, 0xd1, 0x51, - 0xf2, 0xab, 0xa3, 0xc1, 0x5e, 0x47, 0xc9, 0xfb, 0x19, 0x0d, 0x76, 0x67, 0x94, 0x8c, 0x67, 0x34, - 0x98, 0xcc, 0x68, 0xf0, 0xf4, 0x61, 0x85, 0xfa, 0x45, 0xc5, 0x5a, 0x1c, 0x39, 0x30, 0x46, 0xb0, - 0xc6, 0x72, 0x0f, 0x86, 0x68, 0xea, 0x4c, 0x1b, 0x6c, 0x65, 0x09, 0x26, 0xfb, 0x4b, 0x73, 0x9d, - 0x57, 0xc8, 0xe1, 0x95, 0x5b, 0x84, 0xe1, 0x58, 0xcc, 0xf3, 0x53, 0x3e, 0x10, 0x37, 0x7e, 0x07, - 0x00, 0x00, 0xff, 0xff, 0x89, 0xfc, 0x02, 0x03, 0x09, 0x03, 0x00, 0x00, + // 496 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x93, 0xbf, 0x6f, 0xd3, 0x40, + 0x14, 0xc7, 0x7d, 0x01, 0x21, 0xc5, 0x0b, 0xc8, 0x03, 0x84, 0x10, 0x1d, 0x55, 0x26, 0x84, 0xb0, + 0x8f, 0x1f, 0x42, 0x48, 0x88, 0x05, 0xe8, 0x02, 0x03, 0xa0, 0x0e, 0x0c, 0x30, 0x54, 0xe7, 0xf3, + 0xb3, 0x73, 0x10, 0xdf, 0x3b, 0xee, 0xce, 0x56, 0x11, 0xaa, 0x84, 0x3a, 0x31, 0x22, 0xb1, 0xb1, + 0xb1, 0xf1, 0x3f, 0x74, 0xe9, 0x06, 0x13, 0x8a, 0x60, 0xa0, 0x23, 0x71, 0x18, 0x18, 0xfb, 0x27, + 0x20, 0x2e, 0xa1, 0x69, 0x52, 0x3a, 0xb0, 0xbd, 0x77, 0x9f, 0xf7, 0x7d, 0xfa, 0xfa, 0xe9, 0xeb, + 0x90, 0xd5, 0x60, 0x13, 0x89, 0xcc, 0x8a, 0x01, 0x94, 0x9c, 0x65, 0xca, 0xae, 0x67, 0x58, 0x72, + 0xa9, 0x98, 0xae, 0xd2, 0xa1, 0x14, 0xeb, 0xa2, 0xb2, 0x0e, 0x4b, 0xae, 0x65, 0xa2, 0x0d, 0x3a, + 0x8c, 0x3a, 0x53, 0x41, 0x32, 0x15, 0x24, 0x73, 0x41, 0x37, 0x2e, 0xa4, 0x1b, 0x54, 0x69, 0x22, + 0xb0, 0x64, 0x05, 0x16, 0xc8, 0xbc, 0x20, 0xad, 0x72, 0xdf, 0xf9, 0xc6, 0x57, 0xd3, 0x45, 0xdd, + 0x5e, 0x81, 0x58, 0x0c, 0x81, 0x71, 0x2d, 0x19, 0x57, 0x0a, 0x1d, 0x77, 0x12, 0x95, 0x9d, 0xd1, + 0x73, 0x8b, 0xbe, 0x50, 0x1f, 0x84, 0xbd, 0x45, 0x58, 0xf3, 0xa1, 0xcc, 0xb8, 0x83, 0x19, 0xed, + 0x2f, 0x51, 0xb0, 0xa0, 0xea, 0xc5, 0x0d, 0xfd, 0xfb, 0xe1, 0xe9, 0xc7, 0x60, 0x64, 0xfe, 0x72, + 0x55, 0xd9, 0x55, 0x6f, 0x7f, 0x0d, 0x5e, 0x54, 0x60, 0x5d, 0xd4, 0x0b, 0xdb, 0x8a, 0x97, 0x60, + 0x35, 0x17, 0xd0, 0x21, 0x2b, 0xe4, 0x42, 0x7b, 0x6d, 0xfe, 0x10, 0x45, 0xe1, 0xf1, 0x3f, 0x4d, + 0xa7, 0xe5, 0x81, 0xaf, 0xfb, 0x67, 0xc3, 0x33, 0x87, 0x76, 0x59, 0x8d, 0xca, 0xc2, 0xd5, 0xef, + 0xad, 0xb0, 0x7d, 0xd7, 0x1f, 0xf0, 0xf6, 0xa3, 0x7b, 0xd1, 0xfb, 0x56, 0x78, 0x72, 0x69, 0x32, + 0xba, 0x9c, 0x1c, 0x75, 0xcf, 0xe4, 0xdf, 0x06, 0xbb, 0x57, 0xfe, 0x43, 0x31, 0xb5, 0xd1, 0xff, + 0x40, 0x9a, 0x4f, 0x9d, 0xa7, 0xf9, 0xf5, 0x0d, 0x11, 0x5b, 0x10, 0x95, 0x81, 0x12, 0xec, 0x20, + 0x4e, 0xb9, 0x95, 0x22, 0x2e, 0x51, 0x49, 0x87, 0xe6, 0xd2, 0xca, 0x32, 0xb6, 0x8e, 0xab, 0x8c, + 0x9b, 0x6c, 0x3e, 0x51, 0x83, 0x8d, 0x25, 0xc6, 0x52, 0xe5, 0x86, 0x5b, 0x67, 0x2a, 0xe1, 0x2a, + 0x03, 0xb1, 0x01, 0x9e, 0x6d, 0x7d, 0xfb, 0xf9, 0xae, 0x75, 0xab, 0x7f, 0x63, 0x16, 0x1a, 0xb6, + 0x7f, 0x30, 0xcb, 0x5e, 0xed, 0xd7, 0x9b, 0x07, 0xd3, 0xe5, 0x9f, 0x37, 0x59, 0xed, 0x1d, 0xdf, + 0x24, 0x17, 0xbb, 0xf1, 0xce, 0x36, 0x39, 0xf6, 0x75, 0x9b, 0x9c, 0x3f, 0xf2, 0xeb, 0x1e, 0xa6, + 0xcf, 0x40, 0xb8, 0xad, 0x2f, 0x9d, 0xd6, 0x29, 0x72, 0xe7, 0x0d, 0x19, 0x8d, 0x69, 0xb0, 0x3b, + 0xa6, 0xc1, 0xde, 0x98, 0x92, 0xd7, 0x0d, 0x25, 0x1f, 0x1b, 0x4a, 0x3e, 0x37, 0x94, 0x8c, 0x1a, + 0x4a, 0x7e, 0x34, 0x94, 0xfc, 0x6a, 0x68, 0xb0, 0xd7, 0x50, 0xf2, 0x76, 0x42, 0x83, 0x9d, 0x09, + 0x25, 0xa3, 0x09, 0x0d, 0x76, 0x27, 0x34, 0x78, 0xf2, 0xa0, 0x40, 0xfd, 0xbc, 0x48, 0x6a, 0x1c, + 0x3a, 0x30, 0x86, 0x27, 0x95, 0x65, 0xbe, 0xc8, 0xd1, 0x94, 0xb1, 0x36, 0x58, 0xcb, 0x0c, 0x4c, + 0xfc, 0x17, 0x33, 0x9d, 0x16, 0xc8, 0x60, 0xc3, 0xcd, 0xe2, 0x74, 0xe8, 0x47, 0x49, 0x4f, 0xf8, + 0x48, 0x5d, 0xfb, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x33, 0x20, 0x4d, 0x91, 0x4b, 0x03, 0x00, 0x00, } func (this *VerifyDnsDomainRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/dns_lb_health_check/crudapi/api.vesapi.go b/pbgo/extschema/schema/dns_lb_health_check/crudapi/api.vesapi.go index 81a4ce532..cfdd4980c 100644 --- a/pbgo/extschema/schema/dns_lb_health_check/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dns_lb_health_check/crudapi/api.vesapi.go @@ -3353,10 +3353,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_lb_health_check/object.pb.go b/pbgo/extschema/schema/dns_lb_health_check/object.pb.go index b4a8273aa..9701e9891 100644 --- a/pbgo/extschema/schema/dns_lb_health_check/object.pb.go +++ b/pbgo/extschema/schema/dns_lb_health_check/object.pb.go @@ -234,46 +234,47 @@ func init() { } var fileDescriptor_426bea6345c5e4bf = []byte{ - // 620 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4d, 0x6b, 0x14, 0x4b, - 0x14, 0x86, 0xa7, 0x66, 0xc2, 0x24, 0x54, 0x42, 0xee, 0xa5, 0x03, 0x97, 0xb9, 0xb9, 0xd7, 0x62, - 0x1c, 0x37, 0x01, 0xed, 0x6e, 0x8d, 0xb8, 0x48, 0x14, 0x07, 0x12, 0x21, 0x20, 0x09, 0xc2, 0xc4, - 0x0f, 0x70, 0xd3, 0x54, 0x57, 0x9f, 0xe9, 0x29, 0xd3, 0xd3, 0xd5, 0x54, 0x55, 0x4f, 0x92, 0x85, - 0x20, 0xae, 0x5c, 0xba, 0x71, 0xe7, 0xc2, 0x65, 0x10, 0x7f, 0x84, 0x71, 0xa3, 0xcb, 0x90, 0x55, - 0x96, 0xa6, 0x67, 0xe3, 0x32, 0xe0, 0x1f, 0x90, 0x54, 0xa7, 0x43, 0x66, 0x1c, 0x49, 0xc8, 0xee, - 0x34, 0xe7, 0x79, 0x5f, 0x4e, 0x9f, 0x8f, 0xc2, 0x4e, 0x0f, 0x94, 0xc3, 0x85, 0xab, 0x58, 0x07, - 0xba, 0xd4, 0x0d, 0x62, 0xe5, 0x45, 0xbe, 0xd7, 0x01, 0x1a, 0xe9, 0x8e, 0xc7, 0x3a, 0xc0, 0x36, - 0x5c, 0xe1, 0xbf, 0x00, 0xa6, 0x9d, 0x44, 0x0a, 0x2d, 0xac, 0xab, 0x39, 0xef, 0xe4, 0xbc, 0x33, - 0x82, 0x9f, 0xb5, 0x43, 0xae, 0x3b, 0xa9, 0xef, 0x30, 0xd1, 0x75, 0x43, 0x11, 0x0a, 0xd7, 0x28, - 0xfd, 0xb4, 0x6d, 0xbe, 0xcc, 0x87, 0x89, 0x72, 0xc7, 0x59, 0xfb, 0xfc, 0x0a, 0xf4, 0x76, 0x02, - 0xea, 0x04, 0xff, 0x6f, 0x10, 0x17, 0x89, 0xe6, 0x22, 0x2e, 0x92, 0xff, 0x0e, 0x26, 0xcf, 0xea, - 0x1a, 0x83, 0xa9, 0x1e, 0x28, 0x88, 0x7b, 0x43, 0xf2, 0xfa, 0x10, 0xc3, 0x61, 0xd3, 0x1b, 0x20, - 0x1a, 0xef, 0xc7, 0x70, 0xf5, 0x91, 0xe9, 0x87, 0xb5, 0x80, 0x27, 0xba, 0xa0, 0x69, 0x40, 0x35, - 0xad, 0xa1, 0x3a, 0x9a, 0x9b, 0x9c, 0xbf, 0xe2, 0x0c, 0x36, 0x27, 0x07, 0xd7, 0x40, 0xd3, 0xc7, - 0xdb, 0x09, 0xb4, 0x4e, 0x71, 0x6b, 0x15, 0xff, 0xa5, 0xb6, 0x95, 0x86, 0xae, 0x77, 0xea, 0x50, - 0x36, 0x0e, 0xd7, 0x86, 0x1c, 0xd6, 0x0d, 0x35, 0xe4, 0x33, 0x9d, 0x6b, 0xd7, 0x0a, 0xb7, 0x26, - 0x1e, 0x53, 0x09, 0xb0, 0x5a, 0xc5, 0x58, 0x5c, 0x77, 0xce, 0x9d, 0x90, 0xb3, 0x9e, 0x00, 0x33, - 0x56, 0x46, 0xb8, 0xf8, 0xb5, 0xfc, 0xba, 0x59, 0xcd, 0x4d, 0xdf, 0x34, 0xd1, 0x4e, 0x13, 0x7d, - 0xd9, 0xad, 0x55, 0x3e, 0x20, 0xb4, 0xbf, 0x5b, 0xfb, 0x54, 0xc6, 0x0b, 0xb8, 0xb2, 0x02, 0xda, - 0x9a, 0xef, 0x81, 0xb2, 0xb9, 0xb0, 0x79, 0xdc, 0x96, 0x54, 0x69, 0x99, 0x32, 0x9d, 0x4a, 0xb0, - 0x25, 0xd0, 0xe0, 0x46, 0xbd, 0x7d, 0x67, 0x8b, 0xd9, 0x41, 0xac, 0x6c, 0x9f, 0x2a, 0xce, 0xec, - 0xae, 0x88, 0xb9, 0x16, 0x12, 0xdf, 0xc5, 0xe3, 0x2d, 0x48, 0x22, 0xca, 0xc0, 0xba, 0x39, 0x5a, - 0xbe, 0x29, 0xb9, 0x86, 0xdf, 0xf4, 0xa9, 0x02, 0x89, 0x17, 0x71, 0x75, 0x59, 0x02, 0xd5, 0x97, - 0xd4, 0x3e, 0x80, 0x08, 0x2e, 0xa9, 0x1d, 0x5b, 0xe5, 0xea, 0x52, 0x3f, 0xdc, 0x78, 0x8a, 0x27, - 0x8a, 0xde, 0x5a, 0x0f, 0xf1, 0x78, 0xc8, 0x3c, 0x33, 0x99, 0x7c, 0xb8, 0xb7, 0x2e, 0x30, 0x99, - 0x95, 0x48, 0xf8, 0x34, 0x3a, 0x9d, 0x4f, 0x35, 0x64, 0xc7, 0x71, 0xe3, 0x27, 0xc2, 0x53, 0xeb, - 0x9a, 0xea, 0x54, 0x5d, 0x78, 0xf9, 0x72, 0x7c, 0xc4, 0xf2, 0x3d, 0xc1, 0x93, 0xf9, 0x45, 0x7b, - 0x12, 0xda, 0xaa, 0x56, 0xae, 0x57, 0xe6, 0x26, 0xe7, 0xff, 0x1f, 0xb9, 0xba, 0x2d, 0x68, 0x1f, - 0x8b, 0x97, 0xfe, 0xf9, 0xf8, 0x72, 0x66, 0x44, 0xb5, 0x2d, 0x2c, 0x0a, 0x4c, 0x59, 0xf7, 0x30, - 0x66, 0x22, 0x0e, 0xb8, 0xb9, 0x96, 0x5a, 0x65, 0xa4, 0xeb, 0x72, 0x01, 0x98, 0x92, 0xce, 0xf0, - 0x8b, 0x33, 0xfb, 0xf7, 0xff, 0xc6, 0xd3, 0x78, 0xaa, 0xa8, 0xd2, 0x49, 0x79, 0xb0, 0xf4, 0x0e, - 0xed, 0x1d, 0x92, 0xd2, 0xc1, 0x21, 0x29, 0x1d, 0x1d, 0x12, 0xf4, 0x2a, 0x23, 0x68, 0x27, 0x23, - 0xe8, 0x5b, 0x46, 0xd0, 0x5e, 0x46, 0xd0, 0x41, 0x46, 0xd0, 0xf7, 0x8c, 0xa0, 0x1f, 0x19, 0x29, - 0x1d, 0x65, 0x04, 0xbd, 0xed, 0x93, 0xd2, 0xe7, 0x3e, 0x41, 0x7b, 0x7d, 0x52, 0x3a, 0xe8, 0x93, - 0xd2, 0xf3, 0x67, 0xa1, 0x48, 0x36, 0x42, 0xa7, 0x27, 0x22, 0x0d, 0x52, 0x52, 0x27, 0x55, 0xae, - 0x09, 0xda, 0x42, 0x76, 0xed, 0x44, 0x8a, 0x1e, 0x0f, 0x40, 0xda, 0x45, 0xda, 0x4d, 0xfc, 0x50, - 0xb8, 0xb0, 0xa5, 0x4f, 0x8e, 0xff, 0xcf, 0xcf, 0x91, 0x5f, 0x35, 0x6f, 0xc1, 0xed, 0x5f, 0x01, - 0x00, 0x00, 0xff, 0xff, 0xed, 0x14, 0x7f, 0xda, 0x3c, 0x05, 0x00, 0x00, + // 631 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x31, 0x6b, 0x14, 0x41, + 0x14, 0x80, 0x6f, 0x72, 0xf1, 0x12, 0x26, 0x21, 0xca, 0x06, 0xe4, 0x8c, 0x3a, 0x9c, 0x67, 0x13, + 0xd0, 0xdd, 0xc5, 0x88, 0x85, 0x41, 0x3c, 0x48, 0x84, 0x88, 0x24, 0x08, 0x77, 0x89, 0x82, 0xcd, + 0x32, 0x3b, 0xfb, 0x6e, 0x6f, 0xcd, 0xde, 0xce, 0x32, 0x33, 0x7b, 0x49, 0x0a, 0x41, 0xac, 0x2c, + 0x6d, 0x6c, 0xac, 0x2c, 0x43, 0x7e, 0x85, 0x11, 0x04, 0xcb, 0x90, 0x2a, 0xa5, 0xd9, 0x6b, 0x2c, + 0x03, 0xfe, 0x01, 0xc9, 0x6c, 0x36, 0xe4, 0xce, 0x95, 0xa4, 0x48, 0x37, 0x33, 0xef, 0x7b, 0x1f, + 0x8f, 0x99, 0x37, 0x0f, 0x5b, 0x3d, 0x90, 0x56, 0xc0, 0x6d, 0xc9, 0x3a, 0xd0, 0xa5, 0xb6, 0x17, + 0x49, 0x27, 0x74, 0x9d, 0x0e, 0xd0, 0x50, 0x75, 0x1c, 0xd6, 0x01, 0xb6, 0x6e, 0x73, 0xf7, 0x2d, + 0x30, 0x65, 0xc5, 0x82, 0x2b, 0x6e, 0xdc, 0xc9, 0x78, 0x2b, 0xe3, 0xad, 0x02, 0x7e, 0xc6, 0xf4, + 0x03, 0xd5, 0x49, 0x5c, 0x8b, 0xf1, 0xae, 0xed, 0x73, 0x9f, 0xdb, 0x3a, 0xd3, 0x4d, 0xda, 0x7a, + 0xa7, 0x37, 0x7a, 0x95, 0x19, 0x67, 0xcc, 0xf3, 0x2b, 0x50, 0x5b, 0x31, 0xc8, 0x13, 0xfc, 0xe6, + 0x20, 0xce, 0x63, 0x15, 0xf0, 0x28, 0x0f, 0xde, 0x18, 0x0c, 0x9e, 0xcd, 0xab, 0x0f, 0x86, 0x7a, + 0x20, 0x21, 0xea, 0x0d, 0xa5, 0xd7, 0x86, 0x98, 0x00, 0x36, 0x9c, 0x01, 0xa2, 0xfe, 0xe5, 0x0a, + 0xae, 0xbc, 0xd4, 0xf7, 0x61, 0x3c, 0xc6, 0xe3, 0x5d, 0x50, 0xd4, 0xa3, 0x8a, 0x56, 0x51, 0x0d, + 0xcd, 0x4e, 0xcc, 0xdd, 0xb6, 0x06, 0x2f, 0x27, 0x03, 0x57, 0x40, 0xd1, 0xd5, 0xad, 0x18, 0x9a, + 0xa7, 0xb8, 0xb1, 0x8c, 0xaf, 0xca, 0x2d, 0xa9, 0xa0, 0xeb, 0x9c, 0x1a, 0x46, 0xb4, 0xe1, 0xee, + 0x90, 0xa1, 0xa5, 0xa9, 0x21, 0xcf, 0x54, 0x96, 0xbb, 0x92, 0xdb, 0x1a, 0x78, 0x54, 0xc6, 0xc0, + 0xaa, 0x65, 0xad, 0xb8, 0x67, 0x9d, 0xfb, 0x42, 0x56, 0x2b, 0x06, 0xa6, 0x55, 0x3a, 0x71, 0xfe, + 0x47, 0xf9, 0x43, 0xa3, 0x92, 0x49, 0x3f, 0x36, 0xd0, 0x76, 0x03, 0x7d, 0xdf, 0xad, 0x96, 0xbf, + 0x22, 0xb4, 0xbf, 0x5b, 0xdd, 0x29, 0xe3, 0x55, 0x5c, 0x5e, 0x02, 0x65, 0xac, 0xf4, 0x40, 0x9a, + 0x01, 0x37, 0x83, 0xa8, 0x2d, 0xa8, 0x54, 0x22, 0x61, 0x2a, 0x11, 0x60, 0x0a, 0xa0, 0xde, 0xfd, + 0x5a, 0xfb, 0xd1, 0x26, 0x33, 0xbd, 0x48, 0x9a, 0x2e, 0x95, 0x01, 0x33, 0xbb, 0x3c, 0x0a, 0x14, + 0x17, 0x67, 0xce, 0xa5, 0xa2, 0x91, 0x47, 0x85, 0x97, 0x87, 0x70, 0x0b, 0x8f, 0x35, 0x21, 0x0e, + 0x29, 0x03, 0xe3, 0x79, 0xb1, 0x79, 0x43, 0x04, 0x0a, 0xfe, 0x51, 0x27, 0x12, 0x0a, 0xbd, 0xc7, + 0xe7, 0xb8, 0x89, 0x2b, 0x8b, 0x02, 0xa8, 0xba, 0x64, 0xe7, 0x33, 0x08, 0xe1, 0x52, 0x9d, 0x6b, + 0x78, 0x74, 0x39, 0x90, 0x97, 0x7d, 0xa7, 0xf5, 0x57, 0x78, 0x3c, 0x7f, 0x59, 0xe3, 0x05, 0x1e, + 0xf3, 0x99, 0xa3, 0xfb, 0x22, 0x6b, 0xad, 0x07, 0x17, 0xe8, 0x8b, 0xa5, 0x90, 0xbb, 0x34, 0x3c, + 0xed, 0x8e, 0x8a, 0xcf, 0x8e, 0xd7, 0xf5, 0x3f, 0x08, 0x4f, 0xb6, 0x14, 0x55, 0x89, 0xbc, 0x70, + 0xeb, 0x67, 0x78, 0x41, 0xeb, 0xaf, 0xe1, 0x89, 0x6c, 0x9e, 0x38, 0x02, 0xda, 0xb2, 0x3a, 0x52, + 0x2b, 0xcf, 0x4e, 0xcc, 0xdd, 0x2a, 0xfc, 0x38, 0x4d, 0x68, 0x1f, 0x27, 0x2f, 0x5c, 0xdf, 0x79, + 0x37, 0x5d, 0x50, 0x6d, 0x13, 0xf3, 0x1c, 0x93, 0xc6, 0x13, 0x8c, 0x19, 0x8f, 0xbc, 0x40, 0xff, + 0xd5, 0x6a, 0xb9, 0xd0, 0xba, 0x98, 0x03, 0xba, 0xa4, 0x33, 0xfc, 0xfc, 0xf4, 0xfe, 0xd3, 0x6b, + 0x78, 0x0a, 0x4f, 0xe6, 0x55, 0x5a, 0x49, 0xe0, 0x2d, 0x7c, 0x46, 0x7b, 0x87, 0xa4, 0x74, 0x70, + 0x48, 0x4a, 0x47, 0x87, 0x04, 0xbd, 0x4f, 0x09, 0xda, 0x4e, 0x09, 0xfa, 0x99, 0x12, 0xb4, 0x97, + 0x12, 0x74, 0x90, 0x12, 0xf4, 0x2b, 0x25, 0xe8, 0x77, 0x4a, 0x4a, 0x47, 0x29, 0x41, 0x9f, 0xfa, + 0xa4, 0xf4, 0xad, 0x4f, 0xd0, 0x5e, 0x9f, 0x94, 0x0e, 0xfa, 0xa4, 0xf4, 0xe6, 0xb5, 0xcf, 0xe3, + 0x75, 0xdf, 0xea, 0xf1, 0x50, 0x81, 0x10, 0xd4, 0x4a, 0xa4, 0xad, 0x17, 0x6d, 0x2e, 0xba, 0x66, + 0x2c, 0x78, 0x2f, 0xf0, 0x40, 0x98, 0x79, 0xd8, 0x8e, 0x5d, 0x9f, 0xdb, 0xb0, 0xa9, 0x4e, 0x46, + 0xcf, 0xff, 0x87, 0xa1, 0x5b, 0xd1, 0x93, 0xe8, 0xe1, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x27, + 0x5b, 0x4a, 0xab, 0xba, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.pb.go b/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.pb.go index 988abb71d..6b5e1720a 100644 --- a/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.pb.go +++ b/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_b2e14cfc5914b032 = []byte{ - // 1615 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0xc7, - 0x1e, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x30, 0xf3, 0x20, 0x38, 0x7e, 0x3c, 0xcb, 0x18, 0xf4, - 0x14, 0x45, 0xcf, 0x6b, 0x08, 0xe2, 0x09, 0x22, 0x04, 0xcf, 0x49, 0x36, 0x51, 0x78, 0x21, 0x81, - 0xb5, 0x09, 0x55, 0x2f, 0xab, 0xf5, 0x7a, 0xec, 0x6c, 0x63, 0xef, 0x6e, 0x67, 0xc6, 0x09, 0x29, - 0x8a, 0x54, 0x71, 0x6c, 0x2f, 0x95, 0x7a, 0x6a, 0xd5, 0x03, 0x3d, 0x54, 0x6a, 0xcf, 0xbd, 0x54, - 0xca, 0x85, 0x1b, 0x08, 0x55, 0x15, 0x6a, 0x2f, 0xb9, 0x54, 0x6a, 0x9c, 0x4a, 0xa5, 0x37, 0xd4, - 0x9e, 0xab, 0x56, 0x3b, 0xb3, 0x6b, 0x6c, 0xc7, 0x34, 0xb6, 0x93, 0x93, 0x77, 0xfe, 0x1f, 0xbf, - 0xf9, 0x7f, 0xfb, 0xbf, 0x0b, 0xff, 0xbb, 0x81, 0xa9, 0x64, 0x58, 0x19, 0xaa, 0xaf, 0xe1, 0xaa, - 0x96, 0x29, 0x9a, 0x54, 0xad, 0x14, 0xd4, 0x35, 0xac, 0x55, 0xd8, 0x9a, 0xaa, 0xaf, 0x61, 0x7d, - 0x3d, 0x63, 0xd7, 0x0a, 0x15, 0x43, 0x57, 0x75, 0x52, 0x2b, 0x6a, 0xb6, 0x21, 0xd9, 0xc4, 0x62, - 0x16, 0x3a, 0x27, 0xf4, 0x24, 0xa1, 0x27, 0x75, 0xd0, 0x8b, 0xa7, 0xcb, 0x06, 0x5b, 0xab, 0x15, - 0x24, 0xdd, 0xaa, 0x66, 0xca, 0x56, 0xd9, 0xca, 0x70, 0xcd, 0x42, 0xad, 0xc4, 0x4f, 0xfc, 0xc0, - 0x9f, 0x04, 0x62, 0xfc, 0x6c, 0xd9, 0xb2, 0xca, 0x15, 0x9c, 0xd1, 0x6c, 0x23, 0xa3, 0x99, 0xa6, - 0xc5, 0x34, 0x66, 0x58, 0x26, 0x75, 0xb9, 0xff, 0x74, 0xb9, 0x0d, 0x0c, 0x5c, 0xb5, 0xd9, 0x96, - 0xcb, 0x94, 0x0e, 0x77, 0xc2, 0x2a, 0xbc, 0x83, 0x75, 0xe6, 0xca, 0xa7, 0x0f, 0x97, 0x67, 0x5b, - 0x36, 0xf6, 0xee, 0x8e, 0xb7, 0x8a, 0x63, 0x42, 0x2c, 0xd2, 0xb0, 0xab, 0x95, 0x67, 0xd9, 0xcd, - 0x46, 0x8f, 0xb7, 0x32, 0x9b, 0x31, 0x53, 0xad, 0xac, 0x0d, 0x4c, 0xb1, 0xb9, 0xd1, 0xa6, 0x9e, - 0x6c, 0x93, 0x31, 0xf0, 0xa6, 0xda, 0x22, 0x91, 0xfa, 0x1a, 0xc0, 0xe1, 0x59, 0x82, 0x35, 0x86, - 0x15, 0xfc, 0x6e, 0x0d, 0x53, 0x86, 0x6e, 0xc2, 0x50, 0x15, 0x33, 0xad, 0xa8, 0x31, 0x2d, 0x06, - 0x92, 0x60, 0x22, 0x32, 0x75, 0x5e, 0x6a, 0x4d, 0xd5, 0x0a, 0x8f, 0x84, 0xd0, 0xba, 0x8d, 0x99, - 0x96, 0xdf, 0xb2, 0xb1, 0xd2, 0x50, 0x42, 0xab, 0x30, 0x40, 0x6d, 0xac, 0xc7, 0x7c, 0x5c, 0xf9, - 0x92, 0x74, 0x68, 0x9e, 0x25, 0x01, 0x95, 0xb3, 0xb1, 0xee, 0x40, 0xcd, 0x8c, 0x7e, 0xba, 0x3d, - 0xe4, 0x20, 0x48, 0x65, 0x5d, 0x75, 0x7e, 0x15, 0x8e, 0x37, 0x1d, 0x7e, 0x7e, 0x23, 0x28, 0xae, - 0x4e, 0xfd, 0x09, 0xe0, 0x88, 0x67, 0x35, 0xb5, 0x2d, 0x93, 0x62, 0x74, 0xfd, 0x80, 0xd9, 0xc9, - 0x8e, 0x66, 0x2f, 0x60, 0xd6, 0xc1, 0xe6, 0x15, 0x38, 0x4a, 0xb7, 0x28, 0xc3, 0x55, 0xb5, 0x01, - 0xe2, 0xe7, 0x20, 0xff, 0x6e, 0x03, 0xc9, 0x71, 0xa9, 0x83, 0x50, 0x23, 0x42, 0xfd, 0xb6, 0x07, - 0x98, 0x6b, 0x09, 0x82, 0xd4, 0x45, 0x10, 0x16, 0x30, 0xeb, 0x21, 0x02, 0xbf, 0x00, 0x38, 0xa2, - 0x60, 0xbb, 0xa2, 0xe9, 0x8d, 0xc4, 0xfd, 0xef, 0x40, 0x04, 0x2e, 0x74, 0x8c, 0x80, 0xab, 0xd6, - 0x21, 0x0a, 0xf7, 0x5b, 0x8c, 0x9e, 0xea, 0xc2, 0x68, 0x17, 0xeb, 0x10, 0xc3, 0x51, 0x06, 0x46, - 0x09, 0xa6, 0x56, 0x8d, 0xe8, 0x58, 0xdd, 0xc0, 0x84, 0x1a, 0x96, 0xc9, 0xe3, 0x1b, 0x9e, 0x09, - 0xbc, 0xdc, 0x01, 0x40, 0x19, 0xf5, 0xb8, 0xab, 0x82, 0xd9, 0xec, 0xe9, 0x49, 0x38, 0xda, 0x70, - 0x54, 0xe4, 0x3a, 0xf5, 0x39, 0x80, 0x70, 0x01, 0x33, 0xcf, 0xf1, 0xb3, 0x30, 0x6c, 0x6a, 0x55, - 0x4c, 0x6d, 0x4d, 0xc7, 0xdc, 0xf3, 0xb0, 0xf2, 0x9a, 0x80, 0x10, 0x0c, 0x38, 0x07, 0xee, 0x54, - 0x58, 0xe1, 0xcf, 0x48, 0x83, 0xce, 0x8d, 0x1c, 0x4c, 0x2d, 0x59, 0xa4, 0xaa, 0x31, 0x6e, 0xce, - 0xc8, 0xd4, 0xd5, 0xee, 0x12, 0xe5, 0x59, 0x32, 0xcf, 0x75, 0x67, 0xad, 0x22, 0x56, 0x46, 0x48, - 0x0b, 0x2d, 0xf5, 0x55, 0x10, 0x46, 0x9a, 0x24, 0xd1, 0x5d, 0x18, 0xd1, 0x79, 0xc5, 0xf2, 0x0b, - 0xdd, 0x10, 0x5f, 0xec, 0xba, 0x39, 0x5c, 0x5f, 0x15, 0x28, 0x40, 0x9c, 0x4b, 0x50, 0x1e, 0x0e, - 0x11, 0x11, 0x19, 0x81, 0xe9, 0xef, 0xba, 0xe1, 0x5a, 0x2b, 0x47, 0x89, 0xb8, 0x30, 0x1c, 0xb5, - 0x53, 0xae, 0x02, 0x7f, 0x93, 0xab, 0x96, 0xce, 0x1b, 0x3c, 0x8e, 0xce, 0x3b, 0x71, 0x2c, 0x9d, - 0x17, 0x3c, 0xc6, 0xce, 0x43, 0xcb, 0x30, 0x48, 0x99, 0xc6, 0x6a, 0x34, 0xf6, 0xf8, 0x33, 0x90, - 0xf4, 0x4f, 0x44, 0xa6, 0x32, 0x5d, 0x00, 0xe7, 0xb8, 0x8a, 0x30, 0x79, 0xc6, 0xff, 0x64, 0x1b, - 0x28, 0x2e, 0x0a, 0x5a, 0x84, 0x27, 0x09, 0x2e, 0x61, 0x42, 0x0c, 0xb3, 0xac, 0x8a, 0x7f, 0x16, - 0x1a, 0x0b, 0x71, 0xe0, 0xb3, 0x6f, 0x68, 0xda, 0x12, 0xf7, 0x36, 0xda, 0x50, 0x13, 0x74, 0x8a, - 0x56, 0x61, 0xac, 0x88, 0x2b, 0x98, 0xe1, 0xa2, 0x2a, 0x78, 0xb8, 0xd8, 0x40, 0x0c, 0x77, 0x81, - 0x38, 0xe6, 0x6a, 0x2b, 0xae, 0xb2, 0x87, 0xfb, 0x16, 0x1c, 0x2f, 0x1a, 0x54, 0x2b, 0x54, 0x3a, - 0x01, 0xc3, 0x2e, 0x80, 0xcf, 0x78, 0xea, 0x6d, 0xc8, 0x4d, 0xcd, 0x7d, 0x2b, 0x10, 0x02, 0x51, - 0x5f, 0xea, 0x0b, 0x00, 0x23, 0x4b, 0x06, 0xed, 0xb2, 0xa1, 0xcf, 0xc1, 0xa1, 0x8a, 0x56, 0xc0, - 0x15, 0xb5, 0x64, 0x54, 0x18, 0x26, 0x6e, 0x63, 0x47, 0x38, 0x6d, 0x9e, 0x93, 0xd0, 0x79, 0x38, - 0x4c, 0xb0, 0x6d, 0x11, 0xa6, 0x96, 0x0c, 0x5c, 0x29, 0xd2, 0x98, 0x3f, 0xe9, 0x9f, 0x08, 0x2b, - 0x43, 0x82, 0x38, 0xcf, 0x69, 0xe8, 0x22, 0x3c, 0xe5, 0x0a, 0x89, 0xa4, 0x78, 0xb2, 0x01, 0x2e, - 0x8b, 0x04, 0x4f, 0xa4, 0x50, 0x68, 0xa4, 0x76, 0x83, 0x30, 0x2a, 0xec, 0x14, 0x4d, 0xbd, 0xc8, - 0x70, 0x15, 0x8d, 0xc1, 0x20, 0xc3, 0xa6, 0x66, 0x32, 0x5e, 0x71, 0x61, 0xc5, 0x3d, 0xf5, 0x31, - 0x95, 0xa2, 0xd0, 0x5f, 0x33, 0x8a, 0x62, 0x30, 0x2a, 0xce, 0x23, 0x4a, 0xc2, 0x48, 0x11, 0x53, - 0x9d, 0x18, 0xfc, 0x3f, 0x3b, 0x16, 0x11, 0x9e, 0x36, 0x91, 0x50, 0x1c, 0x86, 0xbc, 0x30, 0xc7, - 0x86, 0x92, 0x60, 0x22, 0xa4, 0x34, 0xce, 0xe8, 0x3e, 0x0c, 0xf2, 0xa0, 0x08, 0x97, 0x22, 0x53, - 0x37, 0xbb, 0x28, 0xd9, 0x76, 0xf7, 0xa4, 0x25, 0x8e, 0x20, 0x9b, 0x8c, 0x6c, 0x29, 0x2e, 0x1c, - 0x2a, 0xc1, 0x48, 0xd3, 0x7e, 0xe5, 0x16, 0xc3, 0x5c, 0x3f, 0xe8, 0xd9, 0xd7, 0x30, 0xe2, 0x8a, - 0x66, 0x60, 0x74, 0x0d, 0x42, 0x6b, 0xd3, 0xc4, 0x44, 0x75, 0x16, 0x97, 0x58, 0x98, 0x37, 0x74, - 0xbc, 0xed, 0x9a, 0x55, 0x03, 0x6f, 0x7a, 0x15, 0x17, 0xe6, 0xd2, 0x0e, 0xa5, 0x65, 0x28, 0x0d, - 0x1f, 0xc7, 0x50, 0x1a, 0x39, 0xd2, 0x50, 0x5a, 0x84, 0xa1, 0x32, 0x66, 0x7c, 0xa2, 0xb8, 0xe3, - 0xad, 0xc7, 0xc1, 0xa4, 0x9c, 0x28, 0x8b, 0x03, 0xca, 0x41, 0xe8, 0xd6, 0x2b, 0xc5, 0xcc, 0x9d, - 0x19, 0xfd, 0x0d, 0xa3, 0xb0, 0xc0, 0xc9, 0x61, 0x16, 0xbf, 0x06, 0x23, 0x4d, 0x89, 0x76, 0x2a, - 0x71, 0x1d, 0x6f, 0xb9, 0x55, 0xeb, 0x3c, 0xa2, 0x53, 0x70, 0x70, 0x43, 0xab, 0xd4, 0xbc, 0x82, - 0x15, 0x87, 0x69, 0xdf, 0x55, 0x10, 0xbf, 0x01, 0xa3, 0xed, 0x59, 0xec, 0x45, 0xff, 0x56, 0x20, - 0x34, 0x18, 0x0d, 0xa6, 0x3e, 0x04, 0x70, 0xa8, 0xb9, 0x3a, 0xd0, 0x22, 0x1c, 0x34, 0x18, 0xae, - 0xd2, 0x98, 0x18, 0xb7, 0x97, 0xfb, 0xa8, 0x2e, 0x45, 0x20, 0xa0, 0x8b, 0x30, 0x28, 0x36, 0xee, - 0x98, 0x8f, 0x63, 0xc5, 0xda, 0xb0, 0x64, 0x87, 0xc9, 0x83, 0xec, 0xca, 0xa5, 0xd6, 0xe1, 0xf0, - 0x1c, 0x9f, 0x8a, 0xfd, 0xaf, 0x18, 0x13, 0x30, 0x5a, 0xd2, 0x8c, 0x8a, 0x6a, 0x94, 0x1a, 0xd3, - 0x93, 0x77, 0x76, 0x48, 0x19, 0x71, 0xe8, 0x8b, 0x25, 0x6f, 0x2a, 0x4e, 0xfe, 0x06, 0xe0, 0xe9, - 0x8e, 0x3b, 0x05, 0x8a, 0xc3, 0xb1, 0x05, 0x39, 0xaf, 0x2a, 0xb9, 0x3b, 0xea, 0xfc, 0x8a, 0x72, - 0x3b, 0x9b, 0x57, 0xe7, 0xe4, 0xf9, 0xec, 0xbd, 0xa5, 0x7c, 0x74, 0x00, 0xfd, 0x0b, 0x8e, 0xb7, - 0xf1, 0xe6, 0x57, 0x14, 0x75, 0x56, 0x91, 0xb3, 0x79, 0x39, 0x0a, 0x50, 0x02, 0xc6, 0x3b, 0xb0, - 0x15, 0xf9, 0xce, 0x52, 0x76, 0x56, 0x8e, 0xfa, 0xd0, 0x38, 0x3c, 0xdd, 0xc6, 0xcf, 0xe5, 0xb3, - 0xf9, 0x7b, 0xb9, 0xa8, 0x1f, 0x9d, 0x81, 0xff, 0x68, 0x63, 0x29, 0x72, 0x76, 0x2e, 0x1a, 0x40, - 0x17, 0x60, 0xf2, 0x00, 0x63, 0x5e, 0x56, 0x94, 0xc5, 0xe5, 0x05, 0x75, 0x65, 0xe6, 0x96, 0x3c, - 0x9b, 0xcf, 0x45, 0x07, 0x3b, 0x48, 0xcd, 0x28, 0x2b, 0xff, 0x97, 0x97, 0x85, 0xb0, 0xbc, 0x3c, - 0x2b, 0xe7, 0xa2, 0xc1, 0xa9, 0xdf, 0xc3, 0xd0, 0x9f, 0xbd, 0xb3, 0x88, 0x7e, 0x05, 0x30, 0x28, - 0x36, 0x1c, 0xd4, 0xf3, 0x32, 0x14, 0xbf, 0xd4, 0x83, 0x86, 0xbb, 0x3a, 0xbe, 0x57, 0x7f, 0x1a, - 0x73, 0xde, 0x95, 0xd2, 0x86, 0x95, 0x36, 0xcc, 0x12, 0xd1, 0x28, 0x23, 0x35, 0x9d, 0xd5, 0x08, - 0x4e, 0x6f, 0x12, 0x83, 0xe1, 0xff, 0x94, 0xae, 0x3c, 0xd0, 0xd3, 0x45, 0x93, 0xa6, 0x0b, 0x1a, - 0x35, 0xf4, 0x74, 0x8d, 0x62, 0xf2, 0xe8, 0x87, 0x9f, 0x3f, 0xf6, 0x65, 0x53, 0xd7, 0xdd, 0xf7, - 0xd8, 0x4c, 0x23, 0xf1, 0x34, 0xf3, 0xd0, 0x9b, 0x0f, 0x52, 0x83, 0xb8, 0xdd, 0xe9, 0x6d, 0x90, - 0x4e, 0x83, 0x49, 0xb4, 0x07, 0xa0, 0x7f, 0x01, 0x33, 0x94, 0xee, 0x76, 0xc9, 0x14, 0x5e, 0x4a, - 0xbd, 0xed, 0xa4, 0xa9, 0x87, 0xcf, 0xbe, 0xf1, 0x81, 0xfa, 0xd3, 0xd8, 0xa5, 0xce, 0x6e, 0x12, - 0xac, 0x15, 0xdb, 0xbd, 0xac, 0x5a, 0xa6, 0xc1, 0x2c, 0xe1, 0xe8, 0x75, 0x34, 0xdd, 0xc9, 0xd1, - 0x43, 0xfc, 0x13, 0x02, 0xdb, 0xe8, 0x47, 0x00, 0x03, 0x4e, 0x1f, 0x22, 0xa9, 0xeb, 0x86, 0x15, - 0x5e, 0x66, 0x7a, 0x6c, 0xf0, 0x14, 0x3b, 0x9a, 0x9b, 0x57, 0xd0, 0xe5, 0x3e, 0xdc, 0x44, 0x7f, - 0x00, 0x78, 0xc2, 0xdd, 0x9e, 0x51, 0xef, 0x9b, 0x76, 0x7c, 0xaa, 0x17, 0x15, 0xd7, 0xd1, 0x0f, - 0x40, 0xbf, 0x35, 0x7b, 0x37, 0xbe, 0x74, 0x94, 0x9a, 0x6d, 0x93, 0xdc, 0x76, 0x6a, 0xf8, 0x5b, - 0x00, 0x83, 0x62, 0x34, 0x76, 0xd5, 0xaf, 0x2d, 0x53, 0x34, 0x3e, 0x26, 0x89, 0x6f, 0x30, 0x92, - 0xf7, 0x0d, 0x46, 0x92, 0xab, 0x36, 0xdb, 0x4a, 0x3d, 0xe8, 0xd7, 0xc1, 0x9b, 0x93, 0x47, 0xa8, - 0xd5, 0x69, 0x30, 0x19, 0xaf, 0x3e, 0xd9, 0x01, 0xbe, 0xef, 0x77, 0xc0, 0xc4, 0xe1, 0xae, 0x88, - 0x7f, 0xce, 0xdd, 0x1d, 0x00, 0xea, 0x3b, 0xa0, 0xc7, 0xff, 0xdb, 0x47, 0xdf, 0xc5, 0xfc, 0x8f, - 0x01, 0x98, 0xf9, 0x04, 0x3c, 0xbf, 0x31, 0x38, 0xab, 0xdc, 0x9b, 0x5b, 0x7a, 0xb1, 0x97, 0x18, - 0xd8, 0xdd, 0x4b, 0x0c, 0xbc, 0xda, 0x4b, 0x80, 0xf7, 0xeb, 0x09, 0xf0, 0x65, 0x3d, 0x01, 0x9e, - 0xd5, 0x13, 0xe0, 0x45, 0x3d, 0x01, 0x7e, 0xaa, 0x27, 0xc0, 0xcb, 0x7a, 0x62, 0xe0, 0x55, 0x3d, - 0x01, 0x3e, 0xda, 0x4f, 0x0c, 0x3c, 0xd9, 0x4f, 0x80, 0x17, 0xfb, 0x89, 0x81, 0xdd, 0xfd, 0xc4, - 0xc0, 0xdb, 0xf7, 0xcb, 0x96, 0xbd, 0x5e, 0x96, 0x36, 0x2c, 0x67, 0xd1, 0x25, 0x9a, 0x54, 0xa3, - 0x19, 0xfe, 0xe0, 0xbc, 0x01, 0xa6, 0x6d, 0x62, 0x6d, 0x18, 0x45, 0x4c, 0xd2, 0x1e, 0x3b, 0x63, - 0x17, 0xca, 0x56, 0x06, 0x3f, 0x60, 0xee, 0x17, 0xa0, 0x37, 0x7f, 0xaf, 0x2a, 0x04, 0x79, 0x52, - 0x2e, 0xff, 0x15, 0x00, 0x00, 0xff, 0xff, 0x1a, 0x98, 0xf9, 0xbc, 0xd0, 0x13, 0x00, 0x00, + // 1632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x13, 0x57, + 0x1e, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0xc3, 0xbc, 0x85, 0xe0, 0x78, 0x59, 0xcb, 0x18, 0xb4, + 0x8a, 0xa2, 0xf5, 0x18, 0x82, 0x58, 0x41, 0x84, 0x60, 0x9d, 0xc4, 0x8e, 0x02, 0x21, 0x81, 0xb1, + 0x09, 0xab, 0xbd, 0x8c, 0xc6, 0x33, 0xcf, 0xce, 0x6c, 0xec, 0x99, 0xd9, 0xf7, 0x9e, 0x1d, 0xa2, + 0x55, 0xa4, 0x96, 0x6b, 0xa5, 0x7e, 0xa8, 0xed, 0xa1, 0x55, 0x0f, 0xf4, 0x50, 0xa9, 0x3d, 0xf7, + 0x52, 0x29, 0x17, 0x6e, 0x45, 0x1c, 0x2a, 0xd4, 0x5e, 0x72, 0x2c, 0x0e, 0x52, 0x39, 0xa2, 0x9e, + 0x7a, 0xa8, 0xd4, 0x6a, 0xde, 0x9b, 0x31, 0xb6, 0x63, 0x1a, 0x3b, 0xa4, 0x27, 0xcf, 0xfb, 0x7f, + 0xfc, 0xde, 0xff, 0xdb, 0xff, 0x19, 0xf8, 0xcf, 0x06, 0xa6, 0x92, 0x61, 0x65, 0xa8, 0xb6, 0x8e, + 0x6b, 0x6a, 0x46, 0x37, 0xa9, 0x52, 0x2d, 0x29, 0xeb, 0x58, 0xad, 0xb2, 0x75, 0x45, 0x5b, 0xc7, + 0xda, 0x46, 0xc6, 0xae, 0x97, 0xaa, 0x86, 0xa6, 0x68, 0xa4, 0xae, 0xab, 0xb6, 0x21, 0xd9, 0xc4, + 0x62, 0x16, 0x3a, 0x23, 0xf4, 0x24, 0xa1, 0x27, 0xf5, 0xd0, 0x8b, 0xa7, 0x2b, 0x06, 0x5b, 0xaf, + 0x97, 0x24, 0xcd, 0xaa, 0x65, 0x2a, 0x56, 0xc5, 0xca, 0x70, 0xcd, 0x52, 0xbd, 0xcc, 0x4f, 0xfc, + 0xc0, 0x9f, 0x04, 0x62, 0xfc, 0x74, 0xc5, 0xb2, 0x2a, 0x55, 0x9c, 0x51, 0x6d, 0x23, 0xa3, 0x9a, + 0xa6, 0xc5, 0x54, 0x66, 0x58, 0x26, 0x75, 0xb9, 0x7f, 0x75, 0xb9, 0x2d, 0x0c, 0x5c, 0xb3, 0xd9, + 0x96, 0xcb, 0x94, 0x0e, 0x76, 0xc2, 0x2a, 0xfd, 0x17, 0x6b, 0xcc, 0x95, 0x4f, 0x1f, 0x2c, 0xcf, + 0xb6, 0x6c, 0xec, 0xdd, 0x1d, 0xef, 0x14, 0xc7, 0x84, 0x58, 0xa4, 0x65, 0x57, 0x27, 0xcf, 0xb2, + 0xdb, 0x8d, 0x9e, 0xec, 0x64, 0xb6, 0x63, 0xa6, 0x3a, 0x59, 0x0d, 0x4c, 0xb1, 0xd9, 0xe8, 0x52, + 0x4f, 0x76, 0xc9, 0x18, 0x78, 0x53, 0xe9, 0x90, 0x48, 0x7d, 0x0d, 0xe0, 0xe8, 0x3c, 0xc1, 0x2a, + 0xc3, 0x32, 0xfe, 0x5f, 0x1d, 0x53, 0x86, 0xae, 0xc3, 0x50, 0x0d, 0x33, 0x55, 0x57, 0x99, 0x1a, + 0x03, 0x49, 0x30, 0x15, 0x99, 0x39, 0x2b, 0x75, 0xa6, 0x6a, 0x95, 0x47, 0x42, 0x68, 0xdd, 0xc2, + 0x4c, 0x2d, 0x6e, 0xd9, 0x58, 0x6e, 0x29, 0xa1, 0x35, 0x18, 0xa0, 0x36, 0xd6, 0x62, 0x3e, 0xae, + 0x7c, 0x41, 0x3a, 0x30, 0xcf, 0x92, 0x80, 0x2a, 0xd8, 0x58, 0x73, 0xa0, 0xe6, 0xc6, 0x3f, 0xdd, + 0x1e, 0x71, 0x10, 0xa4, 0x8a, 0xa6, 0x38, 0xbf, 0x32, 0xc7, 0x9b, 0x0d, 0x3f, 0xb9, 0x16, 0x14, + 0x57, 0xa7, 0x7e, 0x03, 0x70, 0xcc, 0xb3, 0x9a, 0xda, 0x96, 0x49, 0x31, 0xba, 0xba, 0xcf, 0xec, + 0x64, 0x4f, 0xb3, 0x17, 0x31, 0xeb, 0x61, 0xf3, 0x2a, 0x1c, 0xa7, 0x5b, 0x94, 0xe1, 0x9a, 0xd2, + 0x02, 0xf1, 0x73, 0x90, 0xbf, 0x77, 0x81, 0x14, 0xb8, 0xd4, 0x7e, 0xa8, 0x31, 0xa1, 0x7e, 0xcb, + 0x03, 0x2c, 0x74, 0x04, 0x41, 0xea, 0x23, 0x08, 0x8b, 0x98, 0x0d, 0x10, 0x81, 0x9f, 0x00, 0x1c, + 0x93, 0xb1, 0x5d, 0x55, 0xb5, 0x56, 0xe2, 0xfe, 0xb5, 0x2f, 0x02, 0xe7, 0x7a, 0x46, 0xc0, 0x55, + 0xeb, 0x11, 0x85, 0x7b, 0x1d, 0x46, 0xcf, 0xf4, 0x61, 0xb4, 0x8b, 0x75, 0x80, 0xe1, 0x28, 0x03, + 0xa3, 0x04, 0x53, 0xab, 0x4e, 0x34, 0xac, 0x34, 0x30, 0xa1, 0x86, 0x65, 0xf2, 0xf8, 0x86, 0xe7, + 0x02, 0x2f, 0x76, 0x00, 0x90, 0xc7, 0x3d, 0xee, 0x9a, 0x60, 0xb6, 0x7b, 0x7a, 0x1c, 0x8e, 0xb7, + 0x1c, 0x15, 0xb9, 0x4e, 0x7d, 0x0e, 0x20, 0x5c, 0xc4, 0xcc, 0x73, 0xfc, 0x34, 0x0c, 0x9b, 0x6a, + 0x0d, 0x53, 0x5b, 0xd5, 0x30, 0xf7, 0x3c, 0x2c, 0xbf, 0x22, 0x20, 0x04, 0x03, 0xce, 0x81, 0x3b, + 0x15, 0x96, 0xf9, 0x33, 0x52, 0xa1, 0x73, 0x23, 0x07, 0x53, 0xca, 0x16, 0xa9, 0xa9, 0x8c, 0x9b, + 0x33, 0x36, 0x73, 0xb9, 0xbf, 0x44, 0x79, 0x96, 0xe4, 0xb9, 0xee, 0xbc, 0xa5, 0x63, 0x79, 0x8c, + 0x74, 0xd0, 0x52, 0x5f, 0x05, 0x61, 0xa4, 0x4d, 0x12, 0xdd, 0x81, 0x11, 0x8d, 0x57, 0x2c, 0xbf, + 0xd0, 0x0d, 0xf1, 0xf9, 0xbe, 0x9b, 0xc3, 0xf5, 0x55, 0x86, 0x02, 0xc4, 0xb9, 0x04, 0x15, 0xe1, + 0x08, 0x11, 0x91, 0x11, 0x98, 0xfe, 0xbe, 0x1b, 0xae, 0xb3, 0x72, 0xe4, 0x88, 0x0b, 0xc3, 0x51, + 0x7b, 0xe5, 0x2a, 0xf0, 0x07, 0xb9, 0xea, 0xe8, 0xbc, 0xe1, 0xa3, 0xe8, 0xbc, 0x63, 0x47, 0xd2, + 0x79, 0xc1, 0x23, 0xec, 0x3c, 0xb4, 0x02, 0x83, 0x94, 0xa9, 0xac, 0x4e, 0x63, 0x0f, 0x3f, 0x03, + 0x49, 0xff, 0x54, 0x64, 0x26, 0xd3, 0x07, 0x70, 0x81, 0xab, 0x08, 0x93, 0xe7, 0xfc, 0x8f, 0xb6, + 0x81, 0xec, 0xa2, 0xa0, 0x25, 0x78, 0x9c, 0xe0, 0x32, 0x26, 0xc4, 0x30, 0x2b, 0x8a, 0xf8, 0x67, + 0xa1, 0xb1, 0x10, 0x07, 0x3e, 0xfd, 0x9a, 0xa6, 0x2d, 0x73, 0x6f, 0xa3, 0x2d, 0x35, 0x41, 0xa7, + 0x68, 0x0d, 0xc6, 0x74, 0x5c, 0xc5, 0x0c, 0xeb, 0x8a, 0xe0, 0x61, 0xbd, 0x85, 0x18, 0xee, 0x03, + 0x71, 0xc2, 0xd5, 0x96, 0x5d, 0x65, 0x0f, 0xf7, 0xdf, 0x70, 0x52, 0x37, 0xa8, 0x5a, 0xaa, 0xf6, + 0x02, 0x86, 0x7d, 0x00, 0x9f, 0xf2, 0xd4, 0xbb, 0x90, 0xdb, 0x9a, 0xfb, 0x46, 0x20, 0x04, 0xa2, + 0xbe, 0xd4, 0x17, 0x00, 0x46, 0x96, 0x0d, 0xda, 0x67, 0x43, 0x9f, 0x81, 0x23, 0x55, 0xb5, 0x84, + 0xab, 0x4a, 0xd9, 0xa8, 0x32, 0x4c, 0xdc, 0xc6, 0x8e, 0x70, 0x5a, 0x9e, 0x93, 0xd0, 0x59, 0x38, + 0x4a, 0xb0, 0x6d, 0x11, 0xa6, 0x94, 0x0d, 0x5c, 0xd5, 0x69, 0xcc, 0x9f, 0xf4, 0x4f, 0x85, 0xe5, + 0x11, 0x41, 0xcc, 0x73, 0x1a, 0x3a, 0x0f, 0x4f, 0xb8, 0x42, 0x22, 0x29, 0x9e, 0x6c, 0x80, 0xcb, + 0x22, 0xc1, 0x13, 0x29, 0x14, 0x1a, 0xa9, 0xdd, 0x20, 0x8c, 0x0a, 0x3b, 0x45, 0x53, 0x2f, 0x31, + 0x5c, 0x43, 0x13, 0x30, 0xc8, 0xb0, 0xa9, 0x9a, 0x8c, 0x57, 0x5c, 0x58, 0x76, 0x4f, 0x87, 0x98, + 0x4a, 0x51, 0xe8, 0xaf, 0x1b, 0xba, 0x18, 0x8c, 0xb2, 0xf3, 0x88, 0x92, 0x30, 0xa2, 0x63, 0xaa, + 0x11, 0x83, 0xff, 0x67, 0xc7, 0x22, 0xc2, 0xd3, 0x36, 0x12, 0x8a, 0xc3, 0x90, 0x17, 0xe6, 0xd8, + 0x48, 0x12, 0x4c, 0x85, 0xe4, 0xd6, 0x19, 0xdd, 0x83, 0x41, 0x1e, 0x14, 0xe1, 0x52, 0x64, 0xe6, + 0x7a, 0x1f, 0x25, 0xdb, 0xed, 0x9e, 0xb4, 0xcc, 0x11, 0x72, 0x26, 0x23, 0x5b, 0xb2, 0x0b, 0x87, + 0xca, 0x30, 0xd2, 0xb6, 0x5f, 0xb9, 0xc5, 0xb0, 0x70, 0x18, 0xf4, 0xec, 0x2b, 0x18, 0x71, 0x45, + 0x3b, 0x30, 0xba, 0x02, 0xa1, 0xb5, 0x69, 0x62, 0xa2, 0x38, 0x8b, 0x4b, 0x2c, 0xcc, 0x1b, 0x3a, + 0xde, 0x75, 0xcd, 0x9a, 0x81, 0x37, 0xbd, 0x8a, 0x0b, 0x73, 0x69, 0x87, 0xd2, 0x31, 0x94, 0x46, + 0x8f, 0x62, 0x28, 0x8d, 0xbd, 0xd1, 0x50, 0x5a, 0x82, 0xa1, 0x0a, 0x66, 0x7c, 0xa2, 0xb8, 0xe3, + 0x6d, 0xc0, 0xc1, 0x24, 0x1f, 0xab, 0x88, 0x03, 0x2a, 0x40, 0xe8, 0xd6, 0x2b, 0xc5, 0xcc, 0x9d, + 0x19, 0x87, 0x1b, 0x46, 0x61, 0x81, 0x53, 0xc0, 0x2c, 0x7e, 0x05, 0x46, 0xda, 0x12, 0xed, 0x54, + 0xe2, 0x06, 0xde, 0x72, 0xab, 0xd6, 0x79, 0x44, 0x27, 0xe0, 0x70, 0x43, 0xad, 0xd6, 0xbd, 0x82, + 0x15, 0x87, 0x59, 0xdf, 0x65, 0x10, 0xbf, 0x06, 0xa3, 0xdd, 0x59, 0x1c, 0x44, 0xff, 0x46, 0x20, + 0x34, 0x1c, 0x0d, 0xa6, 0xde, 0x01, 0x70, 0xa4, 0xbd, 0x3a, 0xd0, 0x12, 0x1c, 0x36, 0x18, 0xae, + 0xd1, 0x98, 0x18, 0xb7, 0x17, 0x0f, 0x51, 0x5d, 0xb2, 0x40, 0x40, 0xe7, 0x61, 0x50, 0x6c, 0xdc, + 0x31, 0x1f, 0xc7, 0x8a, 0x75, 0x61, 0xe5, 0x1c, 0x26, 0x0f, 0xb2, 0x2b, 0x97, 0xda, 0x80, 0xa3, + 0x0b, 0x7c, 0x2a, 0x1e, 0x7e, 0xc5, 0x98, 0x82, 0xd1, 0xb2, 0x6a, 0x54, 0x15, 0xa3, 0xdc, 0x9a, + 0x9e, 0xbc, 0xb3, 0x43, 0xf2, 0x98, 0x43, 0x5f, 0x2a, 0x7b, 0x53, 0x71, 0xfa, 0x67, 0x00, 0x4f, + 0xf6, 0xdc, 0x29, 0x50, 0x1c, 0x4e, 0x2c, 0xe6, 0x8a, 0x8a, 0x5c, 0xb8, 0xad, 0xe4, 0x57, 0xe5, + 0x5b, 0xd9, 0xa2, 0xb2, 0x90, 0xcb, 0x67, 0xef, 0x2e, 0x17, 0xa3, 0x43, 0xe8, 0x6f, 0x70, 0xb2, + 0x8b, 0x97, 0x5f, 0x95, 0x95, 0x79, 0x39, 0x97, 0x2d, 0xe6, 0xa2, 0x00, 0x25, 0x60, 0xbc, 0x07, + 0x5b, 0xce, 0xdd, 0x5e, 0xce, 0xce, 0xe7, 0xa2, 0x3e, 0x34, 0x09, 0x4f, 0x76, 0xf1, 0x0b, 0xc5, + 0x6c, 0xf1, 0x6e, 0x21, 0xea, 0x47, 0xa7, 0xe0, 0x5f, 0xba, 0x58, 0x72, 0x2e, 0xbb, 0x10, 0x0d, + 0xa0, 0x73, 0x30, 0xb9, 0x8f, 0x91, 0xcf, 0xc9, 0xf2, 0xd2, 0xca, 0xa2, 0xb2, 0x3a, 0x77, 0x23, + 0x37, 0x5f, 0x2c, 0x44, 0x87, 0x7b, 0x48, 0xcd, 0xc9, 0xab, 0x37, 0x73, 0x2b, 0x42, 0x38, 0xb7, + 0x32, 0x9f, 0x2b, 0x44, 0x83, 0x33, 0x2f, 0x21, 0xf4, 0x67, 0x6f, 0x2f, 0xa1, 0xb7, 0x7d, 0x30, + 0x28, 0x36, 0x1c, 0x34, 0xf0, 0x32, 0x14, 0xbf, 0x30, 0x80, 0x86, 0xbb, 0x3a, 0x7e, 0x00, 0x9a, + 0xdf, 0xc6, 0xf2, 0x0d, 0x4c, 0xd3, 0x86, 0x95, 0x36, 0xcc, 0x32, 0x51, 0x29, 0x23, 0x75, 0x8d, + 0xd5, 0x09, 0x4e, 0x6f, 0x12, 0x83, 0xe1, 0x7f, 0x94, 0x2f, 0xdd, 0xd7, 0xd2, 0xba, 0x49, 0xd3, + 0x25, 0x95, 0x1a, 0x5a, 0xba, 0x4e, 0x31, 0x79, 0x45, 0xa3, 0x4c, 0x35, 0x75, 0x95, 0xe8, 0x9c, + 0xfc, 0xe0, 0x87, 0xe7, 0x1f, 0xfa, 0xb2, 0xa9, 0xab, 0xee, 0xfb, 0x6d, 0xa6, 0x55, 0x10, 0x34, + 0xf3, 0x7f, 0x6f, 0x6e, 0x48, 0x2d, 0xe2, 0x76, 0xaf, 0xb7, 0x44, 0x3a, 0x0b, 0xa6, 0xd1, 0xaf, + 0x00, 0xfa, 0x17, 0x31, 0x43, 0xe9, 0x7e, 0x97, 0x4f, 0xe1, 0xbd, 0x34, 0xd8, 0xae, 0x9a, 0xfa, + 0x18, 0x3c, 0xfe, 0xc6, 0xe7, 0xb8, 0x7f, 0xb3, 0xb7, 0xfb, 0x04, 0xab, 0x7a, 0xb7, 0xf7, 0x35, + 0xcb, 0x34, 0x98, 0xd5, 0x2b, 0x00, 0x2e, 0x87, 0xc7, 0xe0, 0x2a, 0x9a, 0xed, 0x15, 0x83, 0x03, + 0x5c, 0x17, 0x02, 0xdb, 0xe8, 0x17, 0x00, 0x03, 0x4e, 0xeb, 0x22, 0xa9, 0xef, 0x1e, 0x17, 0x01, + 0xc8, 0x0c, 0x38, 0x13, 0x52, 0xef, 0xfe, 0x69, 0x11, 0xb8, 0x84, 0x2e, 0x1e, 0x22, 0x02, 0xe8, + 0x23, 0x1f, 0x3c, 0xe6, 0xee, 0xe2, 0x68, 0xf0, 0xbd, 0x3d, 0x3e, 0x33, 0x88, 0x4a, 0xeb, 0xdd, + 0xe9, 0x88, 0x1b, 0xe0, 0x4e, 0x7c, 0xf9, 0x4d, 0x1a, 0xa0, 0x4b, 0x72, 0xdb, 0x69, 0x88, 0xe7, + 0x00, 0x06, 0xc5, 0xfc, 0xed, 0x6b, 0x28, 0x74, 0x8c, 0xea, 0xf8, 0x84, 0x24, 0x3e, 0xf4, 0x48, + 0xde, 0x87, 0x1e, 0x29, 0x57, 0xb3, 0xd9, 0x56, 0xea, 0xbd, 0xa3, 0x76, 0xfc, 0xfa, 0xf4, 0x1b, + 0x54, 0xfd, 0x2c, 0x98, 0x8e, 0xd7, 0x1e, 0xed, 0x00, 0xdf, 0xf7, 0x3b, 0x60, 0xea, 0x60, 0x17, + 0xc5, 0xdf, 0xf6, 0xee, 0x0e, 0x00, 0xcd, 0x1d, 0x30, 0xe0, 0x9f, 0xfd, 0x83, 0xef, 0x62, 0xfe, + 0x87, 0x00, 0xcc, 0x7d, 0x02, 0x9e, 0x5c, 0x1b, 0x9e, 0x97, 0xef, 0x2e, 0x2c, 0x3f, 0x7d, 0x96, + 0x18, 0xda, 0x7d, 0x96, 0x18, 0x7a, 0xf9, 0x2c, 0x01, 0xde, 0x6a, 0x26, 0xc0, 0x97, 0xcd, 0x04, + 0x78, 0xdc, 0x4c, 0x80, 0xa7, 0xcd, 0x04, 0xf8, 0xb1, 0x99, 0x00, 0x2f, 0x9a, 0x89, 0xa1, 0x97, + 0xcd, 0x04, 0x78, 0x7f, 0x2f, 0x31, 0xf4, 0x68, 0x2f, 0x01, 0x9e, 0xee, 0x25, 0x86, 0x76, 0xf7, + 0x12, 0x43, 0xff, 0xb9, 0x57, 0xb1, 0xec, 0x8d, 0x8a, 0xd4, 0xb0, 0x9c, 0x2d, 0x9b, 0xa8, 0x52, + 0x9d, 0x66, 0xf8, 0x83, 0xf3, 0xfa, 0x99, 0xb6, 0x89, 0xd5, 0x30, 0x74, 0x4c, 0xd2, 0x1e, 0x3b, + 0x63, 0x97, 0x2a, 0x56, 0x06, 0xdf, 0x67, 0xee, 0xe7, 0xa7, 0xd7, 0x7f, 0x2c, 0x2b, 0x05, 0x79, + 0xb2, 0x2e, 0xfe, 0x1e, 0x00, 0x00, 0xff, 0xff, 0x0c, 0xa1, 0xda, 0xd8, 0x4d, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.vesapi.go b/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.vesapi.go index 93cf99166..bc139fb77 100644 --- a/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dns_lb_health_check/public_crudapi.vesapi.go @@ -3083,10 +3083,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3143,10 +3147,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3205,10 +3213,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_lb_pool/crudapi/api.vesapi.go b/pbgo/extschema/schema/dns_lb_pool/crudapi/api.vesapi.go index c6da80e05..a87b14bff 100644 --- a/pbgo/extschema/schema/dns_lb_pool/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dns_lb_pool/crudapi/api.vesapi.go @@ -3668,10 +3668,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_lb_pool/object.pb.go b/pbgo/extschema/schema/dns_lb_pool/object.pb.go index d99e84029..16454b909 100644 --- a/pbgo/extschema/schema/dns_lb_pool/object.pb.go +++ b/pbgo/extschema/schema/dns_lb_pool/object.pb.go @@ -234,46 +234,46 @@ func init() { } var fileDescriptor_ac5ad15f79a86b26 = []byte{ - // 609 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x6b, 0x13, 0x4f, - 0x18, 0xc7, 0x33, 0x49, 0x49, 0xcb, 0xa4, 0xf4, 0xf7, 0x63, 0xbd, 0xa4, 0x55, 0x87, 0x10, 0x51, - 0x2a, 0xb8, 0xbb, 0x52, 0x11, 0x69, 0x15, 0x0b, 0xad, 0xd0, 0x4b, 0x6b, 0x21, 0xf5, 0xe4, 0x25, - 0xcc, 0xce, 0x3e, 0xd9, 0x8e, 0x6e, 0x76, 0x96, 0x99, 0xd9, 0x6d, 0x7b, 0x10, 0xc4, 0x93, 0x17, - 0xc1, 0x83, 0x2f, 0xc0, 0x63, 0x11, 0x5f, 0x84, 0xf5, 0xa2, 0xc7, 0xd2, 0x53, 0x8f, 0x76, 0x73, - 0x11, 0xbc, 0xf4, 0x25, 0x48, 0x67, 0xbb, 0x25, 0x49, 0xa3, 0x48, 0x6e, 0x33, 0x3c, 0x9f, 0xef, - 0x77, 0x9f, 0x79, 0xfe, 0x2c, 0xbe, 0x95, 0x82, 0x72, 0xb8, 0x70, 0x15, 0xdb, 0x86, 0x2e, 0x75, - 0xfd, 0x48, 0xb5, 0x43, 0xaf, 0x1d, 0x0b, 0x11, 0xba, 0xc2, 0x7b, 0x01, 0x4c, 0x3b, 0xb1, 0x14, - 0x5a, 0x58, 0xb3, 0x39, 0xe7, 0xe4, 0x9c, 0xd3, 0xc7, 0xcd, 0xd9, 0x01, 0xd7, 0xdb, 0x89, 0xe7, - 0x30, 0xd1, 0x75, 0x03, 0x11, 0x08, 0xd7, 0x28, 0xbc, 0xa4, 0x63, 0x6e, 0xe6, 0x62, 0x4e, 0xb9, - 0xd3, 0xdc, 0xcd, 0x3f, 0x7f, 0x51, 0xef, 0xc5, 0xa0, 0xce, 0xb1, 0xab, 0x83, 0x98, 0x88, 0x35, - 0x17, 0x51, 0x11, 0x9c, 0x1d, 0x0c, 0xf6, 0xeb, 0x9a, 0x83, 0xa1, 0x14, 0x14, 0x44, 0xe9, 0x90, - 0xbc, 0x31, 0xc4, 0x70, 0xd8, 0x69, 0x0f, 0x10, 0xcd, 0x0f, 0x13, 0xb8, 0xba, 0x69, 0xde, 0x6f, - 0x2d, 0xe2, 0xa9, 0x2e, 0x68, 0xea, 0x53, 0x4d, 0xeb, 0xa8, 0x81, 0xe6, 0x6b, 0x0b, 0xd7, 0x9d, - 0xc1, 0x62, 0xe4, 0xe0, 0x06, 0x68, 0xfa, 0x6c, 0x2f, 0x86, 0xd6, 0x05, 0x6e, 0xad, 0xe3, 0xff, - 0xd4, 0x9e, 0xd2, 0xd0, 0x6d, 0x5f, 0x38, 0x94, 0x8d, 0xc3, 0x8d, 0x21, 0x87, 0x2d, 0x43, 0x0d, - 0xf9, 0xcc, 0xe4, 0xda, 0x8d, 0xc2, 0xed, 0x01, 0x9e, 0x50, 0x31, 0xb0, 0x7a, 0x65, 0xa4, 0x45, - 0x5f, 0x1d, 0x9d, 0xad, 0x18, 0x98, 0xb1, 0x30, 0x82, 0xa5, 0x6f, 0xe5, 0x37, 0xcb, 0xd5, 0xdc, - 0xec, 0xed, 0x32, 0xda, 0x5f, 0x46, 0x5f, 0x0f, 0xea, 0x95, 0x8f, 0x08, 0x1d, 0x1d, 0xd4, 0x3f, - 0x97, 0xf1, 0x22, 0xae, 0xac, 0x81, 0xb6, 0x16, 0x52, 0x50, 0x36, 0x17, 0x36, 0x8f, 0x3a, 0x92, - 0x2a, 0x2d, 0x13, 0xa6, 0x13, 0x09, 0xb6, 0x04, 0xea, 0xdf, 0x69, 0x74, 0xee, 0xef, 0x32, 0xdb, - 0x8f, 0x94, 0xed, 0x51, 0xc5, 0x99, 0xdd, 0x15, 0x11, 0xd7, 0x42, 0xe2, 0x87, 0x78, 0xb2, 0x05, - 0x71, 0x48, 0x19, 0x58, 0x77, 0x47, 0xcb, 0x77, 0x24, 0xd7, 0x70, 0x49, 0x9f, 0x28, 0x90, 0x78, - 0x09, 0x57, 0x57, 0x25, 0x50, 0x3d, 0xa6, 0xf6, 0x09, 0x84, 0x30, 0xa6, 0x76, 0x62, 0x9d, 0xab, - 0xb1, 0x1e, 0xdc, 0x7c, 0x8a, 0xa7, 0x8a, 0xda, 0x5a, 0x2b, 0x78, 0x32, 0x60, 0x6d, 0xd3, 0x91, - 0xbc, 0xa9, 0xb7, 0xff, 0xd2, 0x91, 0xb5, 0x50, 0x78, 0x34, 0xbc, 0xe8, 0x4b, 0x35, 0x60, 0x67, - 0xe7, 0xe6, 0x2f, 0x84, 0xa7, 0xb7, 0x34, 0xd5, 0x89, 0xfa, 0xe7, 0x61, 0xcb, 0xf1, 0x11, 0xc3, - 0xb6, 0x81, 0x6b, 0xf9, 0xc6, 0xb6, 0x25, 0x74, 0x54, 0xbd, 0xdc, 0xa8, 0xcc, 0xd7, 0x16, 0xae, - 0x8d, 0x1c, 0xd5, 0x16, 0x74, 0xce, 0xc4, 0x2b, 0x33, 0x9f, 0x5e, 0xd5, 0xfa, 0xb2, 0x6c, 0x61, - 0x51, 0x84, 0x95, 0xf5, 0x08, 0x63, 0x26, 0x22, 0x9f, 0x9b, 0xad, 0xa8, 0x57, 0x46, 0xba, 0xad, - 0x16, 0x80, 0x49, 0xa5, 0x8f, 0x5f, 0xba, 0x72, 0xf4, 0xf8, 0x7f, 0x3c, 0x83, 0xa7, 0x8b, 0xec, - 0x9c, 0x84, 0xfb, 0x2b, 0xef, 0xd0, 0xe1, 0x09, 0x29, 0x1d, 0x9f, 0x90, 0xd2, 0xe9, 0x09, 0x41, - 0xaf, 0x33, 0x82, 0xf6, 0x33, 0x82, 0xbe, 0x67, 0x04, 0x1d, 0x66, 0x04, 0x1d, 0x67, 0x04, 0xfd, - 0xc8, 0x08, 0xfa, 0x99, 0x91, 0xd2, 0x69, 0x46, 0xd0, 0xfb, 0x1e, 0x29, 0x7d, 0xe9, 0x11, 0x74, - 0xd8, 0x23, 0xa5, 0xe3, 0x1e, 0x29, 0x3d, 0xdf, 0x0c, 0x44, 0xfc, 0x32, 0x70, 0x52, 0x11, 0x6a, - 0x90, 0x92, 0x3a, 0x89, 0x72, 0xcd, 0xa1, 0x23, 0x64, 0xd7, 0x8e, 0xa5, 0x48, 0xb9, 0x0f, 0xd2, - 0x2e, 0xc2, 0x6e, 0xec, 0x05, 0xc2, 0x85, 0x5d, 0x7d, 0xbe, 0xe4, 0x97, 0x7f, 0x37, 0x5e, 0xd5, - 0xec, 0xfa, 0xbd, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xca, 0x57, 0xae, 0xb7, 0x04, 0x05, 0x00, - 0x00, + // 623 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x41, 0x6b, 0x13, 0x41, + 0x14, 0x80, 0x33, 0xdd, 0x9a, 0x96, 0x49, 0xa9, 0xb2, 0x5e, 0xd2, 0xaa, 0x43, 0x88, 0x28, 0x15, + 0xdc, 0x5d, 0xa8, 0x88, 0x58, 0xc4, 0x42, 0x2b, 0xd4, 0x43, 0x63, 0x21, 0xa9, 0x17, 0x2f, 0x61, + 0x76, 0xf7, 0x65, 0x3b, 0xba, 0xd9, 0x59, 0x66, 0x66, 0xd3, 0xf6, 0x20, 0x88, 0x27, 0x2f, 0x82, + 0xf8, 0x0b, 0x3c, 0x96, 0xfe, 0x0a, 0x2b, 0x08, 0x1e, 0x4b, 0x4f, 0x3d, 0xda, 0xcd, 0x45, 0xf0, + 0xd2, 0x9f, 0x20, 0x9d, 0xed, 0x96, 0x24, 0x5d, 0xc5, 0x43, 0x6e, 0x33, 0xf3, 0xbe, 0xf7, 0x65, + 0xf2, 0xf6, 0xcd, 0xc3, 0x77, 0x7b, 0x20, 0x6d, 0xc6, 0x1d, 0xe9, 0x6d, 0x41, 0x97, 0x3a, 0x7e, + 0x24, 0xdb, 0xa1, 0xdb, 0x8e, 0x39, 0x0f, 0x1d, 0xee, 0xbe, 0x06, 0x4f, 0xd9, 0xb1, 0xe0, 0x8a, + 0x9b, 0x73, 0x19, 0x67, 0x67, 0x9c, 0x3d, 0xc0, 0xcd, 0x5b, 0x01, 0x53, 0x5b, 0x89, 0x6b, 0x7b, + 0xbc, 0xeb, 0x04, 0x3c, 0xe0, 0x8e, 0xce, 0x70, 0x93, 0x8e, 0xde, 0xe9, 0x8d, 0x5e, 0x65, 0xa6, + 0xf9, 0x3b, 0x7f, 0xff, 0x45, 0xb5, 0x1b, 0x83, 0x3c, 0xc7, 0x6e, 0x0c, 0x63, 0x3c, 0x56, 0x8c, + 0x47, 0x79, 0x70, 0x6e, 0x38, 0x38, 0x98, 0x57, 0x1f, 0x0e, 0xf5, 0x40, 0x42, 0xd4, 0x1b, 0x49, + 0xaf, 0x8d, 0x30, 0x0c, 0xb6, 0xdb, 0x43, 0x44, 0xfd, 0xf3, 0x15, 0x5c, 0xde, 0xd0, 0xff, 0xdf, + 0x7c, 0x8c, 0xa7, 0xbb, 0xa0, 0xa8, 0x4f, 0x15, 0xad, 0xa2, 0x1a, 0x5a, 0xa8, 0x2c, 0xde, 0xb2, + 0x87, 0x8b, 0x91, 0x81, 0x0d, 0x50, 0x74, 0x73, 0x37, 0x86, 0xe6, 0x05, 0x6e, 0xae, 0xe3, 0xab, + 0x72, 0x57, 0x2a, 0xe8, 0xb6, 0x2f, 0x0c, 0x13, 0xda, 0x70, 0x7b, 0xc4, 0xd0, 0xd2, 0xd4, 0x88, + 0x67, 0x36, 0xcb, 0x6d, 0xe4, 0xb6, 0x47, 0x78, 0x52, 0xc6, 0xe0, 0x55, 0x8d, 0x42, 0xc5, 0x40, + 0x1d, 0xed, 0x56, 0x0c, 0x9e, 0x56, 0xe8, 0x84, 0xa5, 0xef, 0xc6, 0xfb, 0xe5, 0x72, 0x26, 0xfb, + 0xb0, 0x8c, 0xf6, 0x96, 0xd1, 0xb7, 0x83, 0xaa, 0xf1, 0x05, 0xa1, 0xa3, 0x83, 0xea, 0xbe, 0x81, + 0x37, 0xb1, 0xb1, 0x06, 0xca, 0x6c, 0xf4, 0x40, 0x5a, 0x8c, 0x5b, 0x2c, 0xea, 0x08, 0x2a, 0x95, + 0x48, 0x3c, 0x95, 0x08, 0xb0, 0x04, 0x50, 0xff, 0x7e, 0xad, 0xf3, 0x70, 0xc7, 0xb3, 0xfc, 0x48, + 0x5a, 0x2e, 0x95, 0xcc, 0xb3, 0xba, 0x3c, 0x62, 0x8a, 0x8b, 0x81, 0x73, 0xa9, 0x68, 0xe4, 0x53, + 0xe1, 0xe7, 0x21, 0xdc, 0xc2, 0x53, 0x4d, 0x88, 0x43, 0xea, 0x81, 0xf9, 0xbc, 0xd8, 0xbc, 0x2d, + 0x98, 0x82, 0x4b, 0xea, 0x44, 0x42, 0xa1, 0xf7, 0xec, 0x1c, 0x37, 0x71, 0x79, 0x55, 0x00, 0x55, + 0x63, 0x76, 0x3e, 0x83, 0x10, 0xc6, 0xea, 0x7c, 0x89, 0x27, 0xd7, 0x99, 0x1c, 0x77, 0x4d, 0xeb, + 0x2f, 0xf0, 0x74, 0xfe, 0x65, 0xcd, 0x15, 0x3c, 0x15, 0x78, 0x6d, 0xdd, 0x0f, 0x59, 0x4b, 0xdd, + 0xfb, 0x47, 0x3f, 0xac, 0x85, 0xdc, 0xa5, 0xe1, 0x45, 0x57, 0x94, 0x03, 0xef, 0x6c, 0x5d, 0xff, + 0x8d, 0xf0, 0x4c, 0x4b, 0x51, 0x95, 0xc8, 0xff, 0x6e, 0xf5, 0x0c, 0x2f, 0x68, 0xf5, 0x06, 0xae, + 0x64, 0xf3, 0xa2, 0x2d, 0xa0, 0x23, 0xab, 0x13, 0x35, 0x63, 0xa1, 0xb2, 0x78, 0xb3, 0xf0, 0xa1, + 0x34, 0xa1, 0x73, 0x96, 0xbc, 0x32, 0xbb, 0xff, 0xb6, 0x32, 0x70, 0xcb, 0x26, 0xe6, 0x79, 0x58, + 0x9a, 0x4f, 0x30, 0xf6, 0x78, 0xe4, 0x33, 0xfd, 0x26, 0xab, 0x46, 0xa1, 0x6d, 0x35, 0x07, 0xf4, + 0x55, 0x06, 0xf8, 0xa5, 0xeb, 0x47, 0x4f, 0xaf, 0xe1, 0x59, 0x3c, 0x93, 0xdf, 0xce, 0x4e, 0x98, + 0xbf, 0xf2, 0x11, 0x1d, 0x9e, 0x90, 0xd2, 0xf1, 0x09, 0x29, 0x9d, 0x9e, 0x10, 0xf4, 0x2e, 0x25, + 0x68, 0x2f, 0x25, 0xe8, 0x47, 0x4a, 0xd0, 0x61, 0x4a, 0xd0, 0x71, 0x4a, 0xd0, 0xcf, 0x94, 0xa0, + 0x5f, 0x29, 0x29, 0x9d, 0xa6, 0x04, 0x7d, 0xea, 0x93, 0xd2, 0xd7, 0x3e, 0x41, 0x87, 0x7d, 0x52, + 0x3a, 0xee, 0x93, 0xd2, 0xab, 0x8d, 0x80, 0xc7, 0x6f, 0x02, 0xbb, 0xc7, 0x43, 0x05, 0x42, 0x50, + 0x3b, 0x91, 0x8e, 0x5e, 0x74, 0xb8, 0xe8, 0x5a, 0xb1, 0xe0, 0x3d, 0xe6, 0x83, 0xb0, 0xf2, 0xb0, + 0x13, 0xbb, 0x01, 0x77, 0x60, 0x47, 0x9d, 0x8f, 0x98, 0xcb, 0xc3, 0xce, 0x2d, 0xeb, 0x49, 0xf3, + 0xe0, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x2f, 0xd9, 0xcb, 0x75, 0x82, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/dns_lb_pool/public_crudapi.pb.go b/pbgo/extschema/schema/dns_lb_pool/public_crudapi.pb.go index 393baae0f..f919e0414 100644 --- a/pbgo/extschema/schema/dns_lb_pool/public_crudapi.pb.go +++ b/pbgo/extschema/schema/dns_lb_pool/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_00fbb1145b5378c9 = []byte{ - // 1607 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1b, 0x45, - 0x14, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xe1, 0x0e, 0x6d, 0xea, 0x98, 0x62, 0x19, 0xb7, 0x4d, - 0xd3, 0x14, 0xaf, 0x4b, 0x28, 0x2a, 0x8d, 0xaa, 0x82, 0x93, 0xd8, 0x51, 0xda, 0x34, 0xae, 0xd6, - 0x6e, 0x05, 0x48, 0xb0, 0x5a, 0xaf, 0xc7, 0xee, 0x52, 0x7b, 0x77, 0x99, 0x19, 0x27, 0x8d, 0x50, - 0x24, 0x54, 0x4e, 0xdc, 0x40, 0x9c, 0x40, 0x1c, 0x7a, 0x41, 0x42, 0xe2, 0x1f, 0xa8, 0x14, 0x0e, - 0xbd, 0xa0, 0x96, 0x1e, 0x50, 0x81, 0x4b, 0x6f, 0x50, 0x07, 0xa4, 0x1e, 0x2b, 0x38, 0x70, 0x45, - 0x3b, 0xb3, 0xeb, 0xda, 0x8e, 0x9d, 0x38, 0x69, 0x4e, 0x9e, 0x99, 0xf7, 0xde, 0xcf, 0xef, 0x37, - 0xef, 0x63, 0xdf, 0x2e, 0x94, 0x56, 0x30, 0x95, 0x74, 0x33, 0x45, 0xb5, 0x1b, 0xb8, 0xa6, 0xa6, - 0x4a, 0x06, 0x55, 0xaa, 0x45, 0xc5, 0x32, 0xcd, 0x6a, 0xca, 0xaa, 0x17, 0xab, 0xba, 0xa6, 0x68, - 0xa4, 0x5e, 0x52, 0x2d, 0x5d, 0xb2, 0x88, 0xc9, 0x4c, 0x34, 0x2e, 0xf4, 0x25, 0xa1, 0x2f, 0xb5, - 0xe8, 0x47, 0x93, 0x15, 0x9d, 0xdd, 0xa8, 0x17, 0x25, 0xcd, 0xac, 0xa5, 0x2a, 0x66, 0xc5, 0x4c, - 0x71, 0x8b, 0x62, 0xbd, 0xcc, 0x77, 0x7c, 0xc3, 0x57, 0x02, 0x29, 0x7a, 0xb4, 0x62, 0x9a, 0x95, - 0x2a, 0x4e, 0xa9, 0x96, 0x9e, 0x52, 0x0d, 0xc3, 0x64, 0x2a, 0xd3, 0x4d, 0x83, 0x3a, 0xd2, 0x97, - 0x1d, 0x69, 0x13, 0x03, 0xd7, 0x2c, 0xb6, 0xe6, 0x08, 0x27, 0x7a, 0x3b, 0x6d, 0x16, 0x3f, 0xc2, - 0x1a, 0x73, 0xf4, 0x4e, 0xf4, 0xd6, 0x63, 0x6b, 0x16, 0x76, 0xff, 0x2b, 0xda, 0xae, 0x86, 0x09, - 0x31, 0x49, 0xd3, 0x8f, 0x76, 0x99, 0x69, 0xb5, 0x3a, 0x39, 0xde, 0x2e, 0x6c, 0xc5, 0x4c, 0xb4, - 0x8b, 0x56, 0x30, 0xc5, 0xc6, 0x4a, 0x87, 0x79, 0xbc, 0x43, 0x47, 0xc7, 0xab, 0x4a, 0x9b, 0x46, - 0xe2, 0x07, 0x00, 0x87, 0xe7, 0x08, 0x56, 0x19, 0x96, 0xf1, 0xc7, 0x75, 0x4c, 0x19, 0x7a, 0x1b, - 0x06, 0x6a, 0x98, 0xa9, 0x25, 0x95, 0xa9, 0x11, 0x10, 0x07, 0x93, 0xa1, 0xe9, 0x63, 0x52, 0x7b, - 0x48, 0x72, 0xfc, 0x06, 0x84, 0xd5, 0x15, 0xcc, 0xd4, 0xc2, 0x9a, 0x85, 0xe5, 0xa6, 0x11, 0x5a, - 0x86, 0x3e, 0x6a, 0x61, 0x2d, 0xe2, 0xe1, 0xc6, 0xa7, 0xa4, 0x9e, 0xf1, 0x94, 0x04, 0x44, 0xde, - 0xc2, 0x9a, 0x0d, 0x31, 0x3b, 0xfa, 0xcd, 0xfa, 0x90, 0x6d, 0x29, 0x55, 0x34, 0xc5, 0xfe, 0x95, - 0x39, 0xce, 0x4c, 0xf0, 0xe1, 0x45, 0xbf, 0xf8, 0xcb, 0xc4, 0x7f, 0x00, 0x8e, 0xb8, 0xde, 0x52, - 0xcb, 0x34, 0x28, 0x46, 0x17, 0xb6, 0xb8, 0x1b, 0xef, 0xea, 0xee, 0x02, 0x66, 0x5d, 0x7c, 0xcd, - 0xc1, 0x51, 0xba, 0x46, 0x19, 0xae, 0x29, 0x4d, 0x10, 0x2f, 0x07, 0x99, 0xe8, 0x00, 0xc9, 0x73, - 0xad, 0xad, 0x50, 0x23, 0xc2, 0xfc, 0x8a, 0x0b, 0x78, 0xb9, 0x8d, 0xfc, 0xc4, 0x36, 0xe4, 0x17, - 0x30, 0xdb, 0x05, 0xf3, 0x3f, 0x00, 0x1c, 0x91, 0xb1, 0x55, 0x55, 0xb5, 0x66, 0xa0, 0xde, 0xd9, - 0xc2, 0xfc, 0x78, 0x57, 0xe6, 0x8e, 0x59, 0x57, 0xf6, 0xad, 0xce, 0x4e, 0x6d, 0xe3, 0xac, 0x83, - 0xb1, 0x83, 0xc3, 0x28, 0x05, 0xc3, 0x04, 0x53, 0xb3, 0x4e, 0x34, 0xac, 0xac, 0x60, 0x42, 0x75, - 0xd3, 0xe0, 0xf7, 0x19, 0x9c, 0xf5, 0x3d, 0xdd, 0x00, 0x40, 0x1e, 0x75, 0xa5, 0xd7, 0x85, 0xb0, - 0x95, 0xe1, 0x41, 0x38, 0xda, 0x24, 0x28, 0x62, 0x9b, 0xf8, 0x1a, 0x40, 0xb8, 0x80, 0x99, 0x4b, - 0xf8, 0x28, 0x0c, 0x1a, 0x6a, 0x0d, 0x53, 0x4b, 0xd5, 0x30, 0x67, 0x1c, 0x94, 0x9f, 0x1f, 0x20, - 0x04, 0x7d, 0xf6, 0x86, 0x93, 0x09, 0xca, 0x7c, 0x8d, 0xde, 0x83, 0xf6, 0x3f, 0x72, 0x30, 0xa5, - 0x6c, 0x92, 0x9a, 0xca, 0xb8, 0x3b, 0x23, 0xd3, 0x67, 0xb6, 0x0f, 0x8c, 0xeb, 0x41, 0x96, 0xdb, - 0xcc, 0x99, 0x25, 0x2c, 0x8f, 0x90, 0xb6, 0xb3, 0xc4, 0xe7, 0x7e, 0x18, 0x6a, 0xd1, 0x44, 0x8b, - 0x30, 0xa4, 0xf1, 0xcc, 0xe4, 0x7f, 0xe4, 0x5c, 0xe9, 0xe4, 0x8e, 0xc9, 0xef, 0x70, 0x93, 0xa1, - 0x30, 0xb6, 0xc1, 0xd1, 0x12, 0x1c, 0x22, 0xe2, 0x26, 0x04, 0x96, 0x77, 0xc7, 0x42, 0x6a, 0xcf, - 0x0c, 0x39, 0xe4, 0x98, 0x73, 0xb4, 0x6e, 0x31, 0xf1, 0x6d, 0x13, 0x93, 0xb6, 0x8a, 0x1a, 0xdc, - 0x8f, 0x8a, 0x3a, 0xb0, 0x2f, 0x15, 0xe5, 0xdf, 0x87, 0x8a, 0x42, 0x59, 0xe8, 0xa7, 0x4c, 0x65, - 0x75, 0x1a, 0xb9, 0xf3, 0x2d, 0x88, 0x7b, 0x27, 0x43, 0xd3, 0x27, 0xb7, 0x01, 0xcc, 0x73, 0x55, - 0xe1, 0xe2, 0xac, 0xf7, 0xde, 0x3a, 0x90, 0x1d, 0x6b, 0xb4, 0x08, 0x0f, 0x12, 0x5c, 0xc6, 0x84, - 0xe8, 0x46, 0x45, 0x11, 0x4f, 0x04, 0x1a, 0x09, 0x70, 0xc0, 0xa3, 0x3d, 0x8a, 0xb0, 0xcc, 0xd9, - 0x85, 0x9b, 0x66, 0xe2, 0x9c, 0xa2, 0xeb, 0x30, 0x52, 0xc2, 0x55, 0xcc, 0x70, 0x49, 0x11, 0x32, - 0x5c, 0x6a, 0x22, 0x06, 0xfb, 0x40, 0x1c, 0x73, 0xac, 0x65, 0xc7, 0xd8, 0xc5, 0x7d, 0x17, 0x8e, - 0x97, 0x74, 0xaa, 0x16, 0xab, 0xdd, 0x80, 0x61, 0x1f, 0xc0, 0x47, 0x5c, 0xf3, 0x0e, 0xe4, 0x96, - 0xa2, 0xbd, 0xe4, 0x0b, 0x80, 0xb0, 0x27, 0xf1, 0x1d, 0x80, 0xa1, 0x25, 0x9d, 0xf6, 0x59, 0xa8, - 0xaf, 0xc2, 0xa1, 0xaa, 0x5a, 0xc4, 0x55, 0xa5, 0xac, 0x57, 0x19, 0x26, 0x4e, 0xc1, 0x86, 0xf8, - 0x59, 0x96, 0x1f, 0xa1, 0x63, 0x70, 0x98, 0x60, 0xcb, 0x24, 0x4c, 0x29, 0xeb, 0xb8, 0x5a, 0xa2, - 0x11, 0x6f, 0xdc, 0x3b, 0x19, 0x94, 0x87, 0xc4, 0x61, 0x96, 0x9f, 0xa1, 0x33, 0xf0, 0x90, 0xa3, - 0x24, 0x82, 0xe2, 0xea, 0xfa, 0xb8, 0x2e, 0x12, 0x32, 0x11, 0x42, 0x61, 0x91, 0xb8, 0xeb, 0x87, - 0x61, 0xe1, 0xa7, 0x28, 0xda, 0x45, 0x86, 0x6b, 0x68, 0x0c, 0xfa, 0x19, 0x36, 0x54, 0x83, 0xf1, - 0x0c, 0x0b, 0xca, 0xce, 0x6e, 0x0f, 0xdd, 0x26, 0x0c, 0xbd, 0x75, 0xbd, 0x24, 0x1a, 0x9e, 0x6c, - 0x2f, 0x51, 0x1c, 0x86, 0x4a, 0x98, 0x6a, 0x44, 0xe7, 0xcf, 0xdc, 0x48, 0x48, 0x30, 0x6d, 0x39, - 0x42, 0x51, 0x18, 0x70, 0xaf, 0x39, 0x32, 0x14, 0x07, 0x93, 0x01, 0xb9, 0xb9, 0x47, 0x39, 0xe8, - 0xe7, 0x97, 0x22, 0x28, 0x85, 0xa6, 0xcf, 0x6d, 0x93, 0xaa, 0x9d, 0xb4, 0xa4, 0x25, 0x6e, 0x99, - 0x31, 0x18, 0x59, 0x93, 0x1d, 0x18, 0xf4, 0x21, 0x0c, 0xb5, 0xcc, 0x41, 0x4e, 0x12, 0x5c, 0xd8, - 0x0d, 0x6a, 0xfa, 0xb9, 0xb9, 0x80, 0x6e, 0x05, 0x44, 0xe7, 0x21, 0x34, 0x57, 0x0d, 0x4c, 0x14, - 0x7b, 0xd0, 0x88, 0x04, 0x79, 0xc1, 0x46, 0x3b, 0xe0, 0xaf, 0xeb, 0x78, 0xd5, 0xcd, 0xb0, 0x20, - 0xd7, 0xb6, 0x4f, 0xda, 0x9a, 0xce, 0xf0, 0x7e, 0x34, 0x9d, 0x91, 0x17, 0x6a, 0x3a, 0x69, 0x18, - 0xa8, 0x60, 0xc6, 0x3b, 0x47, 0x8f, 0xf6, 0xd5, 0xa3, 0xf1, 0xc8, 0x07, 0x2a, 0x62, 0x83, 0x2e, - 0x43, 0xe8, 0xe4, 0x25, 0xc5, 0xcc, 0xe9, 0x0d, 0xbb, 0x6b, 0x36, 0x41, 0x61, 0x9f, 0xc7, 0x2c, - 0x7a, 0x1e, 0x86, 0x5a, 0x02, 0x6a, 0x67, 0xda, 0x4d, 0xbc, 0xe6, 0x64, 0xa5, 0xbd, 0x44, 0x87, - 0xe0, 0xe0, 0x8a, 0x5a, 0xad, 0xbb, 0x09, 0x29, 0x36, 0x33, 0x9e, 0xb7, 0x40, 0xf4, 0x22, 0x0c, - 0x77, 0x46, 0x6d, 0x37, 0xf6, 0x97, 0x7c, 0x81, 0xc1, 0xb0, 0x3f, 0xf1, 0x19, 0x80, 0x43, 0xad, - 0xd9, 0x80, 0xd2, 0x70, 0x50, 0x67, 0xb8, 0x46, 0x23, 0xa2, 0x8d, 0x9e, 0xde, 0x45, 0x16, 0xc9, - 0xc2, 0x12, 0x9d, 0x81, 0x7e, 0x31, 0x09, 0x47, 0x3c, 0x1c, 0x23, 0xd2, 0x81, 0x91, 0xb1, 0x85, - 0xfc, 0x52, 0x1d, 0xbd, 0xc4, 0x4d, 0x38, 0x3c, 0xcf, 0xbb, 0xdd, 0xde, 0x47, 0x82, 0x49, 0x18, - 0x2e, 0xab, 0x7a, 0x55, 0xd1, 0xcb, 0xcd, 0xae, 0xc8, 0x2b, 0x36, 0x20, 0x8f, 0xd8, 0xe7, 0x8b, - 0x65, 0xb7, 0xdb, 0x4d, 0xfd, 0x03, 0xe0, 0xe1, 0xae, 0xb3, 0x00, 0x8a, 0xc2, 0xb1, 0x85, 0x4c, - 0x41, 0x91, 0xf3, 0x57, 0x95, 0x6c, 0x4e, 0xbe, 0x92, 0x2e, 0x28, 0xf3, 0x99, 0x6c, 0xfa, 0xda, - 0x52, 0x21, 0x3c, 0x80, 0x5e, 0x81, 0xe3, 0x1d, 0xb2, 0x6c, 0x4e, 0x56, 0xe6, 0xe4, 0x4c, 0xba, - 0x90, 0x09, 0x03, 0x14, 0x83, 0xd1, 0x2e, 0x62, 0x39, 0x73, 0x75, 0x29, 0x3d, 0x97, 0x09, 0x7b, - 0xd0, 0x38, 0x3c, 0xdc, 0x21, 0xcf, 0x17, 0xd2, 0x85, 0x6b, 0xf9, 0xb0, 0x17, 0x1d, 0x81, 0x2f, - 0x75, 0x88, 0xe4, 0x4c, 0x7a, 0x3e, 0xec, 0x43, 0xc7, 0x61, 0x7c, 0x8b, 0x20, 0x9b, 0x91, 0xe5, - 0xc5, 0xe5, 0x05, 0x25, 0x37, 0x7b, 0x29, 0x33, 0x57, 0xc8, 0x87, 0x07, 0xbb, 0x68, 0xcd, 0xca, - 0xb9, 0xcb, 0x99, 0x65, 0xa1, 0x9c, 0x59, 0x9e, 0xcb, 0xe4, 0xc3, 0xfe, 0xe9, 0x7f, 0x03, 0xd0, - 0x9b, 0xbe, 0xba, 0x88, 0x7e, 0x05, 0xd0, 0x2f, 0x26, 0x14, 0xd4, 0xf7, 0x10, 0x13, 0x3d, 0xd5, - 0x87, 0xa6, 0x33, 0xda, 0x91, 0xc6, 0xfd, 0x88, 0xfd, 0xce, 0x92, 0xd4, 0xcd, 0xa4, 0x6e, 0x94, - 0x89, 0x4a, 0x19, 0xa9, 0x6b, 0xac, 0x4e, 0x70, 0x72, 0x95, 0xe8, 0x0c, 0xbf, 0x56, 0x7e, 0xf3, - 0x96, 0x96, 0x2c, 0x19, 0x34, 0x59, 0x54, 0xa9, 0xae, 0x25, 0xeb, 0x14, 0x93, 0xdb, 0xbf, 0xff, - 0xf5, 0x95, 0xe7, 0x7c, 0xe2, 0xac, 0xf3, 0xde, 0x98, 0x6a, 0x06, 0x9a, 0xa6, 0x3e, 0x71, 0xeb, - 0x5e, 0x6a, 0x1e, 0xae, 0xb7, 0xbe, 0x8d, 0xd1, 0x19, 0x30, 0x85, 0x7e, 0x06, 0xd0, 0xbb, 0x80, - 0x19, 0x3a, 0xb1, 0xd3, 0xf0, 0x27, 0xd8, 0x4c, 0xf4, 0x37, 0x23, 0x26, 0xe8, 0x83, 0xbb, 0x1e, - 0xd0, 0xb8, 0x1f, 0x79, 0xbd, 0x3b, 0x1d, 0x82, 0xd5, 0x52, 0x27, 0x9b, 0x9a, 0x69, 0xe8, 0xcc, - 0x14, 0x84, 0xce, 0xa2, 0xe9, 0x6e, 0x84, 0x7a, 0xf0, 0x10, 0x82, 0x75, 0xf4, 0x13, 0x80, 0x3e, - 0xbb, 0xae, 0xd0, 0xc4, 0x8e, 0x85, 0x27, 0xd8, 0x9c, 0xec, 0xb3, 0x40, 0x13, 0xd5, 0x17, 0xa3, - 0x93, 0x44, 0xa7, 0x77, 0x41, 0x07, 0xfd, 0x0d, 0xe0, 0x01, 0x67, 0x7a, 0x45, 0xfd, 0x4f, 0xb8, - 0xd1, 0xa9, 0x7e, 0x54, 0x1d, 0x42, 0xb7, 0xc1, 0x5e, 0x73, 0x6d, 0x31, 0x3a, 0xbf, 0x97, 0x5c, - 0xeb, 0xd0, 0x58, 0xb7, 0x73, 0xef, 0x47, 0x00, 0xfd, 0xa2, 0x75, 0x6d, 0x5b, 0x4f, 0x6d, 0xdd, - 0x2d, 0x3a, 0x26, 0x89, 0x6f, 0x14, 0x92, 0xfb, 0x8d, 0x42, 0xca, 0xd4, 0x2c, 0xb6, 0x96, 0xb0, - 0xf6, 0x4a, 0xe8, 0xdc, 0xd4, 0x1e, 0x72, 0x6d, 0x06, 0x4c, 0x45, 0x3f, 0xb8, 0xb7, 0x01, 0x3c, - 0xbf, 0x6d, 0x80, 0x78, 0x6f, 0xd7, 0xc5, 0x93, 0xeb, 0xf1, 0x06, 0x00, 0x8d, 0x0d, 0x30, 0xd1, - 0xdf, 0x73, 0xee, 0xf6, 0x2f, 0x11, 0xef, 0x1d, 0x00, 0x66, 0xbf, 0x04, 0x0f, 0x2f, 0x0e, 0xce, - 0xc9, 0xd7, 0xe6, 0x97, 0x1e, 0x3d, 0x89, 0x0d, 0x3c, 0x7e, 0x12, 0x1b, 0x78, 0xf6, 0x24, 0x06, - 0x3e, 0x6d, 0xc4, 0xc0, 0xf7, 0x8d, 0x18, 0x78, 0xd0, 0x88, 0x81, 0x47, 0x8d, 0x18, 0xf8, 0xb3, - 0x11, 0x03, 0x4f, 0x1b, 0xb1, 0x81, 0x67, 0x8d, 0x18, 0xf8, 0x62, 0x33, 0x36, 0x70, 0x6f, 0x33, - 0x06, 0x1e, 0x6d, 0xc6, 0x06, 0x1e, 0x6f, 0xc6, 0x06, 0xde, 0xcf, 0x55, 0x4c, 0xeb, 0x66, 0x45, - 0x5a, 0x31, 0xed, 0x01, 0x92, 0xa8, 0x52, 0x9d, 0xa6, 0xf8, 0xc2, 0x7e, 0x83, 0x4a, 0x5a, 0xc4, - 0x5c, 0xd1, 0x4b, 0x98, 0x24, 0x5d, 0x71, 0xca, 0x2a, 0x56, 0xcc, 0x14, 0xbe, 0xc5, 0x9c, 0x2f, - 0x23, 0x5b, 0xbf, 0xdf, 0x14, 0xfd, 0xfc, 0xd2, 0xdf, 0xf8, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x63, - 0x89, 0xfc, 0x86, 0xc0, 0x12, 0x00, 0x00, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x13, 0xd9, + 0x1d, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0x87, 0x79, 0x85, 0xe0, 0xb8, 0xd4, 0x72, 0x0d, 0x84, + 0x10, 0xea, 0x31, 0x4a, 0xa9, 0x28, 0x11, 0xa2, 0x75, 0x12, 0x3b, 0x0a, 0x09, 0x31, 0x1a, 0x1b, + 0xd4, 0x56, 0x6a, 0x47, 0xe3, 0x99, 0x67, 0x33, 0xc5, 0x9e, 0x99, 0xbe, 0xf7, 0xec, 0x10, 0x55, + 0x91, 0x2a, 0x2a, 0xb5, 0xe2, 0x50, 0xa9, 0x55, 0x4f, 0xad, 0x7a, 0xe0, 0x52, 0x69, 0xa5, 0xfd, + 0x07, 0x90, 0x72, 0xe1, 0xb6, 0x88, 0xc3, 0x0a, 0xed, 0xee, 0x81, 0xdb, 0x82, 0xc3, 0x81, 0xbd, + 0xa1, 0xbd, 0xec, 0x65, 0x0f, 0xab, 0x79, 0x6f, 0xc6, 0xd8, 0x8e, 0x9d, 0x38, 0xd9, 0xec, 0xc9, + 0x33, 0xdf, 0x1f, 0x1f, 0x7f, 0x3f, 0xef, 0xfb, 0x63, 0xbe, 0x33, 0x50, 0x6a, 0x62, 0x2a, 0x19, + 0x56, 0x86, 0x6a, 0xf7, 0x71, 0x5d, 0xcd, 0xe8, 0x26, 0x55, 0x6a, 0x65, 0xc5, 0xb6, 0xac, 0x5a, + 0xc6, 0x6e, 0x94, 0x6b, 0x86, 0xa6, 0x68, 0xa4, 0xa1, 0xab, 0xb6, 0x21, 0xd9, 0xc4, 0x62, 0x16, + 0x9a, 0x16, 0xf6, 0x92, 0xb0, 0x97, 0x3a, 0xec, 0xe3, 0xe9, 0xaa, 0xc1, 0xee, 0x37, 0xca, 0x92, + 0x66, 0xd5, 0x33, 0x55, 0xab, 0x6a, 0x65, 0xb8, 0x47, 0xb9, 0x51, 0xe1, 0x77, 0xfc, 0x86, 0x5f, + 0x09, 0xa4, 0xf8, 0xd9, 0xaa, 0x65, 0x55, 0x6b, 0x38, 0xa3, 0xda, 0x46, 0x46, 0x35, 0x4d, 0x8b, + 0xa9, 0xcc, 0xb0, 0x4c, 0xea, 0x6a, 0x7f, 0xec, 0x6a, 0xdb, 0x18, 0xb8, 0x6e, 0xb3, 0x2d, 0x57, + 0x39, 0x33, 0x38, 0x68, 0xab, 0xfc, 0x47, 0xac, 0x31, 0xd7, 0xee, 0xc2, 0x60, 0x3b, 0xb6, 0x65, + 0x63, 0xef, 0xbf, 0xe2, 0xdd, 0x66, 0x98, 0x10, 0x8b, 0xb4, 0xe3, 0xe8, 0xd6, 0x59, 0x76, 0x67, + 0x90, 0xd3, 0xdd, 0xca, 0x4e, 0xcc, 0x54, 0xb7, 0xaa, 0x89, 0x29, 0x36, 0x9b, 0x3d, 0xee, 0xc9, + 0x1e, 0x1b, 0x03, 0x6f, 0x2a, 0x5d, 0x16, 0xa9, 0x8f, 0x01, 0x1c, 0x5f, 0x22, 0x58, 0x65, 0x58, + 0xc6, 0x7f, 0x6a, 0x60, 0xca, 0xd0, 0xaf, 0x60, 0xa8, 0x8e, 0x99, 0xaa, 0xab, 0x4c, 0x8d, 0x81, + 0x24, 0x98, 0x8d, 0xcc, 0x9f, 0x93, 0xba, 0x53, 0x52, 0xe0, 0x27, 0x20, 0xbc, 0x6e, 0x63, 0xa6, + 0x96, 0xb6, 0x6c, 0x2c, 0xb7, 0x9d, 0xd0, 0x06, 0x0c, 0x50, 0x1b, 0x6b, 0x31, 0x1f, 0x77, 0xbe, + 0x24, 0x0d, 0xcc, 0xa7, 0x24, 0x20, 0x8a, 0x36, 0xd6, 0x1c, 0x88, 0xc5, 0xc9, 0xff, 0x6e, 0x8f, + 0x39, 0x9e, 0x52, 0x55, 0x53, 0x9c, 0x5f, 0x99, 0xe3, 0x2c, 0x84, 0x5f, 0xdc, 0x0c, 0x8a, 0xbf, + 0x4c, 0x7d, 0x03, 0xe0, 0x84, 0x17, 0x2d, 0xb5, 0x2d, 0x93, 0x62, 0x74, 0x63, 0x4f, 0xb8, 0xc9, + 0xbe, 0xe1, 0xae, 0x60, 0xd6, 0x27, 0xd6, 0x02, 0x9c, 0xa4, 0x5b, 0x94, 0xe1, 0xba, 0xd2, 0x06, + 0xf1, 0x73, 0x90, 0x99, 0x1e, 0x90, 0x22, 0xb7, 0xda, 0x0b, 0x35, 0x21, 0xdc, 0x6f, 0x7b, 0x80, + 0x6b, 0x5d, 0xe4, 0x67, 0xf6, 0x21, 0xbf, 0x82, 0xd9, 0x21, 0x98, 0x7f, 0x09, 0xe0, 0x84, 0x8c, + 0xed, 0x9a, 0xaa, 0xb5, 0x13, 0xf5, 0xeb, 0x3d, 0xcc, 0xcf, 0xf7, 0x65, 0xee, 0xba, 0xf5, 0x65, + 0xdf, 0x19, 0xec, 0xdc, 0x3e, 0xc1, 0xba, 0x18, 0x07, 0x04, 0x8c, 0x32, 0x30, 0x4a, 0x30, 0xb5, + 0x1a, 0x44, 0xc3, 0x4a, 0x13, 0x13, 0x6a, 0x58, 0x26, 0x3f, 0xcf, 0xf0, 0x62, 0xe0, 0xdd, 0x0e, + 0x00, 0xf2, 0xa4, 0xa7, 0xbd, 0x27, 0x94, 0x9d, 0x0c, 0x4f, 0xc2, 0xc9, 0x36, 0x41, 0x91, 0xdb, + 0xd4, 0x7f, 0x00, 0x84, 0x2b, 0x98, 0x79, 0x84, 0xcf, 0xc2, 0xb0, 0xa9, 0xd6, 0x31, 0xb5, 0x55, + 0x0d, 0x73, 0xc6, 0x61, 0xf9, 0x83, 0x00, 0x21, 0x18, 0x70, 0x6e, 0x38, 0x99, 0xb0, 0xcc, 0xaf, + 0xd1, 0x6f, 0xa1, 0xf3, 0x8f, 0x1c, 0x4c, 0xa9, 0x58, 0xa4, 0xae, 0x32, 0x1e, 0xce, 0xc4, 0xfc, + 0x95, 0xfd, 0x13, 0xe3, 0x45, 0x90, 0xe7, 0x3e, 0x4b, 0x96, 0x8e, 0xe5, 0x09, 0xd2, 0x25, 0x4b, + 0x3d, 0x0e, 0xc2, 0x48, 0x87, 0x25, 0x5a, 0x85, 0x11, 0x8d, 0x57, 0x26, 0xff, 0x23, 0xf7, 0x48, + 0x67, 0x0f, 0x2c, 0x7e, 0x97, 0x9b, 0x0c, 0x85, 0xb3, 0x03, 0x8e, 0xd6, 0xe1, 0x18, 0x11, 0x27, + 0x21, 0xb0, 0xfc, 0x07, 0x36, 0x52, 0x77, 0x65, 0xc8, 0x11, 0xd7, 0x9d, 0xa3, 0xf5, 0xcb, 0x49, + 0x60, 0x9f, 0x9c, 0x74, 0x75, 0xd4, 0xe8, 0x71, 0x74, 0xd4, 0x89, 0x63, 0xe9, 0xa8, 0xe0, 0x31, + 0x74, 0x14, 0xca, 0xc3, 0x20, 0x65, 0x2a, 0x6b, 0xd0, 0xd8, 0x93, 0xff, 0x81, 0xa4, 0x7f, 0x36, + 0x32, 0x7f, 0x71, 0x1f, 0xc0, 0x22, 0x37, 0x15, 0x21, 0x2e, 0xfa, 0x9f, 0x6d, 0x03, 0xd9, 0xf5, + 0x46, 0xab, 0xf0, 0x24, 0xc1, 0x15, 0x4c, 0x88, 0x61, 0x56, 0x15, 0xf1, 0x44, 0xa0, 0xb1, 0x10, + 0x07, 0x3c, 0x3b, 0xa0, 0x09, 0x2b, 0x9c, 0x5d, 0xb4, 0xed, 0x26, 0xe4, 0x14, 0xdd, 0x83, 0x31, + 0x1d, 0xd7, 0x30, 0xc3, 0xba, 0x22, 0x74, 0x58, 0x6f, 0x23, 0x86, 0x87, 0x40, 0x9c, 0x72, 0xbd, + 0x65, 0xd7, 0xd9, 0xc3, 0xfd, 0x0d, 0x9c, 0xd6, 0x0d, 0xaa, 0x96, 0x6b, 0xfd, 0x80, 0xe1, 0x10, + 0xc0, 0x67, 0x3c, 0xf7, 0x1e, 0xe4, 0x8e, 0xa6, 0xbd, 0x15, 0x08, 0x81, 0xa8, 0x2f, 0xf5, 0x7f, + 0x00, 0x23, 0xeb, 0x06, 0x1d, 0xb2, 0x51, 0x7f, 0x0a, 0xc7, 0x6a, 0x6a, 0x19, 0xd7, 0x94, 0x8a, + 0x51, 0x63, 0x98, 0xb8, 0x0d, 0x1b, 0xe1, 0xb2, 0x3c, 0x17, 0xa1, 0x73, 0x70, 0x9c, 0x60, 0xdb, + 0x22, 0x4c, 0xa9, 0x18, 0xb8, 0xa6, 0xd3, 0x98, 0x3f, 0xe9, 0x9f, 0x0d, 0xcb, 0x63, 0x42, 0x98, + 0xe7, 0x32, 0x74, 0x05, 0x9e, 0x72, 0x8d, 0x44, 0x52, 0x3c, 0xdb, 0x00, 0xb7, 0x45, 0x42, 0x27, + 0x52, 0x28, 0x3c, 0x52, 0x4f, 0x83, 0x30, 0x2a, 0xe2, 0x14, 0x4d, 0xbb, 0xca, 0x70, 0x1d, 0x4d, + 0xc1, 0x20, 0xc3, 0xa6, 0x6a, 0x32, 0x5e, 0x61, 0x61, 0xd9, 0xbd, 0x3b, 0xc2, 0xb4, 0x89, 0x42, + 0x7f, 0xc3, 0xd0, 0xc5, 0xc0, 0x93, 0x9d, 0x4b, 0x94, 0x84, 0x11, 0x1d, 0x53, 0x8d, 0x18, 0xfc, + 0x99, 0x1b, 0x8b, 0x08, 0xa6, 0x1d, 0x22, 0x14, 0x87, 0x21, 0xef, 0x98, 0x63, 0x63, 0x49, 0x30, + 0x1b, 0x92, 0xdb, 0xf7, 0xa8, 0x00, 0x83, 0xfc, 0x50, 0x04, 0xa5, 0xc8, 0xfc, 0xb5, 0x7d, 0x4a, + 0xb5, 0x97, 0x96, 0xb4, 0xce, 0x3d, 0x73, 0x26, 0x23, 0x5b, 0xb2, 0x0b, 0x83, 0xfe, 0x00, 0x23, + 0x1d, 0x7b, 0x90, 0x5b, 0x04, 0x37, 0x0e, 0x83, 0x9a, 0xfd, 0xe0, 0x2e, 0xa0, 0x3b, 0x01, 0xd1, + 0x75, 0x08, 0xad, 0x4d, 0x13, 0x13, 0xc5, 0x59, 0x34, 0x62, 0x61, 0xde, 0xb0, 0xf1, 0x1e, 0xf8, + 0x7b, 0x06, 0xde, 0xf4, 0x2a, 0x2c, 0xcc, 0xad, 0x1d, 0x49, 0xd7, 0xd0, 0x19, 0x3f, 0x8e, 0xa1, + 0x33, 0xf1, 0xbd, 0x86, 0x4e, 0x16, 0x86, 0xaa, 0x98, 0xf1, 0xc9, 0x31, 0x60, 0x7c, 0x0d, 0x18, + 0x3c, 0xf2, 0x89, 0xaa, 0xb8, 0x41, 0x6b, 0x10, 0xba, 0x75, 0x49, 0x31, 0x73, 0x67, 0xc3, 0xe1, + 0x86, 0x4d, 0x58, 0xf8, 0x17, 0x31, 0x8b, 0x5f, 0x87, 0x91, 0x8e, 0x84, 0x3a, 0x95, 0xf6, 0x00, + 0x6f, 0xb9, 0x55, 0xe9, 0x5c, 0xa2, 0x53, 0x70, 0xb4, 0xa9, 0xd6, 0x1a, 0x5e, 0x41, 0x8a, 0x9b, + 0x05, 0xdf, 0x2f, 0x41, 0xfc, 0x26, 0x8c, 0xf6, 0x66, 0xed, 0x30, 0xfe, 0xb7, 0x02, 0xa1, 0xd1, + 0x68, 0x30, 0xf5, 0x57, 0x00, 0xc7, 0x3a, 0xab, 0x01, 0x65, 0xe1, 0xa8, 0xc1, 0x70, 0x9d, 0xc6, + 0xc4, 0x18, 0xbd, 0x7c, 0x88, 0x2a, 0x92, 0x85, 0x27, 0xba, 0x02, 0x83, 0x62, 0x13, 0x8e, 0xf9, + 0x38, 0x46, 0xac, 0x07, 0x23, 0xe7, 0x28, 0xf9, 0xa1, 0xba, 0x76, 0xa9, 0x07, 0x70, 0x7c, 0x99, + 0x4f, 0xbb, 0xa3, 0xaf, 0x04, 0xb3, 0x30, 0x5a, 0x51, 0x8d, 0x9a, 0x62, 0x54, 0xda, 0x53, 0x91, + 0x77, 0x6c, 0x48, 0x9e, 0x70, 0xe4, 0xab, 0x15, 0x6f, 0xda, 0xcd, 0x7d, 0x0d, 0xe0, 0xe9, 0xbe, + 0xbb, 0x00, 0x8a, 0xc3, 0xa9, 0x95, 0x5c, 0x49, 0x91, 0x8b, 0x77, 0x94, 0x7c, 0x41, 0xbe, 0x9d, + 0x2d, 0x29, 0xcb, 0xb9, 0x7c, 0xf6, 0xee, 0x7a, 0x29, 0x3a, 0x82, 0x7e, 0x02, 0xa7, 0x7b, 0x74, + 0xf9, 0x82, 0xac, 0x2c, 0xc9, 0xb9, 0x6c, 0x29, 0x17, 0x05, 0x28, 0x01, 0xe3, 0x7d, 0xd4, 0x72, + 0xee, 0xce, 0x7a, 0x76, 0x29, 0x17, 0xf5, 0xa1, 0x69, 0x78, 0xba, 0x47, 0x5f, 0x2c, 0x65, 0x4b, + 0x77, 0x8b, 0x51, 0x3f, 0x3a, 0x03, 0x7f, 0xd4, 0xa3, 0x92, 0x73, 0xd9, 0xe5, 0x68, 0x00, 0x9d, + 0x87, 0xc9, 0x3d, 0x8a, 0x7c, 0x4e, 0x96, 0x57, 0x37, 0x56, 0x94, 0xc2, 0xe2, 0xad, 0xdc, 0x52, + 0xa9, 0x18, 0x1d, 0xed, 0x63, 0xb5, 0x28, 0x17, 0xd6, 0x72, 0x1b, 0xc2, 0x38, 0xb7, 0xb1, 0x94, + 0x2b, 0x46, 0x83, 0xf3, 0xef, 0xc3, 0xd0, 0x9f, 0xbd, 0xb3, 0x8a, 0xbe, 0x02, 0x30, 0x28, 0x36, + 0x14, 0x34, 0xf4, 0x12, 0x13, 0xbf, 0x34, 0x84, 0xa5, 0xbb, 0xda, 0x3d, 0x06, 0xad, 0x4f, 0x62, + 0xf9, 0x26, 0xa6, 0x69, 0xc3, 0x4a, 0x1b, 0x66, 0x85, 0xa8, 0x94, 0x91, 0x86, 0xc6, 0x1a, 0x04, + 0xa7, 0x37, 0x89, 0xc1, 0xf0, 0xcf, 0x2a, 0xbf, 0x78, 0xa8, 0xa5, 0x75, 0x93, 0xa6, 0xcb, 0x2a, + 0x35, 0xb4, 0x74, 0x83, 0x62, 0xf2, 0x41, 0x46, 0x99, 0x6a, 0xea, 0x2a, 0xd1, 0xb9, 0xf8, 0xd1, + 0xe7, 0x6f, 0xff, 0xed, 0xbb, 0x9e, 0xba, 0xea, 0xbe, 0x4f, 0x66, 0xda, 0x05, 0x40, 0x33, 0x7f, + 0xf6, 0xe6, 0x81, 0xd4, 0x16, 0x6e, 0x77, 0xbe, 0xa5, 0xd1, 0x05, 0x30, 0x87, 0xde, 0x02, 0xe8, + 0x5f, 0xc1, 0x0c, 0x5d, 0x38, 0x68, 0x29, 0x14, 0x2c, 0x67, 0x86, 0xdb, 0x1d, 0x53, 0xff, 0x00, + 0xcf, 0x9f, 0xfa, 0x1c, 0x9a, 0x6b, 0xfd, 0x69, 0x12, 0xac, 0xea, 0xbd, 0x2c, 0xeb, 0x96, 0x69, + 0x30, 0xab, 0x1f, 0x51, 0x57, 0xc3, 0xb9, 0x5e, 0x45, 0xf3, 0xfd, 0xb8, 0x0e, 0xa0, 0x28, 0x14, + 0xdb, 0xe8, 0x35, 0x80, 0x01, 0xa7, 0x15, 0xd1, 0xcc, 0x81, 0xbd, 0x2a, 0x88, 0x5e, 0x1c, 0xb2, + 0xa7, 0x53, 0x7f, 0xfb, 0xc1, 0x98, 0xa6, 0xd1, 0xe5, 0x43, 0x30, 0x45, 0xdf, 0x02, 0x78, 0xc2, + 0xdd, 0x85, 0xd1, 0xf0, 0xfb, 0x72, 0x7c, 0x6e, 0x18, 0xd3, 0xf6, 0x3b, 0xc9, 0x31, 0x17, 0xee, + 0x6a, 0x7c, 0xf9, 0x28, 0x85, 0xdb, 0x63, 0xb1, 0xed, 0x14, 0xf2, 0x17, 0x00, 0x06, 0xc5, 0x7c, + 0xdc, 0xb7, 0x69, 0xbb, 0x46, 0x68, 0x7c, 0x4a, 0x12, 0x1f, 0x42, 0x24, 0xef, 0x43, 0x88, 0x94, + 0xab, 0xdb, 0x6c, 0x2b, 0xf5, 0xf7, 0xe3, 0x26, 0x7a, 0x6d, 0xee, 0x08, 0x55, 0xbb, 0x00, 0xe6, + 0xe2, 0xbf, 0x7f, 0xb6, 0x03, 0x7c, 0x9f, 0xed, 0x80, 0xe4, 0x60, 0x4a, 0xe2, 0xb1, 0xf9, 0x6a, + 0x07, 0x80, 0xd6, 0x0e, 0x98, 0x19, 0xee, 0x21, 0xfb, 0xe8, 0xd3, 0x98, 0xff, 0x09, 0x00, 0x8b, + 0xff, 0x02, 0x2f, 0x6e, 0x8e, 0x2e, 0xc9, 0x77, 0x97, 0xd7, 0x5f, 0xbe, 0x49, 0x8c, 0xbc, 0x7a, + 0x93, 0x18, 0x79, 0xff, 0x26, 0x01, 0xfe, 0xd2, 0x4a, 0x80, 0x8f, 0x5a, 0x09, 0xf0, 0xbc, 0x95, + 0x00, 0x2f, 0x5b, 0x09, 0xf0, 0xba, 0x95, 0x00, 0xef, 0x5a, 0x89, 0x91, 0xf7, 0xad, 0x04, 0xf8, + 0xe7, 0x6e, 0x62, 0xe4, 0xd9, 0x6e, 0x02, 0xbc, 0xdc, 0x4d, 0x8c, 0xbc, 0xda, 0x4d, 0x8c, 0xfc, + 0xae, 0x50, 0xb5, 0xec, 0x07, 0x55, 0xa9, 0x69, 0x39, 0xdb, 0x2b, 0x51, 0xa5, 0x06, 0xcd, 0xf0, + 0x0b, 0xe7, 0xf5, 0x2d, 0x6d, 0x13, 0xab, 0x69, 0xe8, 0x98, 0xa4, 0x3d, 0x75, 0xc6, 0x2e, 0x57, + 0xad, 0x0c, 0x7e, 0xc8, 0xdc, 0xcf, 0x32, 0x7b, 0x3f, 0x1e, 0x95, 0x83, 0x3c, 0x19, 0x3f, 0xff, + 0x2e, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x5a, 0x98, 0x80, 0x3d, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/dns_lb_pool/public_crudapi.vesapi.go b/pbgo/extschema/schema/dns_lb_pool/public_crudapi.vesapi.go index 32739407a..011e5d193 100644 --- a/pbgo/extschema/schema/dns_lb_pool/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dns_lb_pool/public_crudapi.vesapi.go @@ -3438,10 +3438,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3498,10 +3502,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3560,10 +3568,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_load_balancer/crudapi/api.vesapi.go b/pbgo/extschema/schema/dns_load_balancer/crudapi/api.vesapi.go index e967fe9af..4774f4493 100644 --- a/pbgo/extschema/schema/dns_load_balancer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dns_load_balancer/crudapi/api.vesapi.go @@ -2840,27 +2840,45 @@ var APISwaggerJSON string = `{ "title": "DNS Load Balancing Rule", "x-displayname": "Load Balancing Rule", "x-ves-oneof-field-action_choice": "[\"pool\"]", - "x-ves-oneof-field-client_choice": "[\"asn_list\",\"geo_location_label_selector\",\"geo_location_set\"]", + "x-ves-oneof-field-client_choice": "[\"asn_list\",\"asn_matcher\",\"geo_location_label_selector\",\"geo_location_set\",\"ip_prefix_list\",\"ip_prefix_set\"]", "x-ves-proto-message": "ves.io.schema.dns_load_balancer.LoadBalancingRule", "properties": { "asn_list": { - "description": "Exclusive with [geo_location_label_selector geo_location_set]\n List of 4-byte ASN values.\n The rule evaluates to true if the origin ASN is present in the ASN list.", + "description": "Exclusive with [asn_matcher geo_location_label_selector geo_location_set ip_prefix_list ip_prefix_set]\n List of 4-byte ASN values.\n The rule evaluates to true if the origin ASN is present in the ASN list.", "title": "asn list", "$ref": "#/definitions/policyAsnMatchList", "x-displayname": "ASN List" }, + "asn_matcher": { + "description": "Exclusive with [asn_list geo_location_label_selector geo_location_set ip_prefix_list ip_prefix_set]\n List of references to BGP ASN Set objects.\n The rule evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.", + "title": "asn matcher", + "$ref": "#/definitions/policyAsnMatcherType", + "x-displayname": "BGP ASN Sets" + }, "geo_location_label_selector": { - "description": "Exclusive with [asn_list geo_location_set]\n A label selector that decsribes the expected set of geo-geo_locations for the clients. The selected geo_locations are matched\n with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.", + "description": "Exclusive with [asn_list asn_matcher geo_location_set ip_prefix_list ip_prefix_set]\n A label selector that describes the expected set of geo locations for the clients. The selected geo locations are matched\n with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.", "title": "geo_location label selector", "$ref": "#/definitions/schemaLabelSelectorType", "x-displayname": "Geo Locations by label selector" }, "geo_location_set": { - "description": "Exclusive with [asn_list geo_location_label_selector]\n Select the pre-defined geo location set. The selected locations in the geo location set are matched\n with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.", + "description": "Exclusive with [asn_list asn_matcher geo_location_label_selector ip_prefix_list ip_prefix_set]\n Select the pre-defined geo location set. The selected locations in the geo location set are matched\n with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.", "title": "geo_location selector", "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Geo Location Set selector" }, + "ip_prefix_list": { + "description": "Exclusive with [asn_list asn_matcher geo_location_label_selector geo_location_set ip_prefix_set]\n List of IP Prefix values.\n The rule evaluates to true if the EDNS0 client subnet is covered by one or more of the IP prefixes in the\n IP Prefix list.", + "title": "IP prefix list", + "$ref": "#/definitions/policyPrefixMatchList", + "x-displayname": "IP Prefix List" + }, + "ip_prefix_set": { + "description": "Exclusive with [asn_list asn_matcher geo_location_label_selector geo_location_set ip_prefix_list]\n List of references to IP Prefix Set objects.\n The rule evaluates to true if the EDNS0 client subnet is covered by one or more of the IP prefixes in the\n IP Prefix set.", + "title": "IP prefix set", + "$ref": "#/definitions/policyIpMatcherType", + "x-displayname": "IP Prefix Sets" + }, "pool": { "description": "Exclusive with []\n Use this pool for the Load Balancing.", "title": "use pool", @@ -3099,14 +3117,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -3128,15 +3146,105 @@ var APISwaggerJSON string = `{ }, "policyAsnMatcherType": { "type": "object", - "description": "x-displayName: \"ASN Matcher\"\nMatch any AS number contained in the list of bgp_asn_sets.", + "description": "Match any AS number contained in the list of bgp_asn_sets.", "title": "asn matcher type", + "x-displayname": "ASN Matcher", + "x-ves-proto-message": "ves.io.schema.policy.AsnMatcherType", "properties": { "asn_sets": { "type": "array", - "description": "x-displayName: \"BGP ASN Sets\"\nx-required\nA list of references to bgp_asn_set objects.", + "description": " A list of references to bgp_asn_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", "title": "asn_sets", + "maxItems": 4, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "BGP ASN Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" + } + } + } + }, + "policyIpMatcherType": { + "type": "object", + "description": "Match any ip prefix contained in the list of ip_prefix_sets.\nThe result of the match is inverted if invert_matcher is true.", + "title": "ip matcher type", + "x-displayname": "IP Prefix Matcher", + "x-ves-proto-message": "ves.io.schema.policy.IpMatcherType", + "properties": { + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert IP Matcher" + }, + "prefix_sets": { + "type": "array", + "description": " A list of references to ip_prefix_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", + "title": "prefix_sets", + "maxItems": 4, "items": { "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "IP Prefix Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" + } + } + } + }, + "policyPrefixMatchList": { + "type": "object", + "description": "List of IP Prefix strings to match against.", + "title": "IP Prefix Match List", + "x-displayname": "IP Prefix Match List", + "x-ves-proto-message": "ves.io.schema.policy.PrefixMatchList", + "properties": { + "invert_match": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Match Result" + }, + "ip_prefixes": { + "type": "array", + "description": " List of IPv4 prefix strings.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ip prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Prefix List", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "ipv6_prefixes": { + "type": "array", + "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv6 prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Prefix List", + "x-ves-example": "fd48:fa09:d9d4::/48", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" } } } @@ -3341,10 +3449,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_load_balancer/object.pb.go b/pbgo/extschema/schema/dns_load_balancer/object.pb.go index 6621799dc..52cc90367 100644 --- a/pbgo/extschema/schema/dns_load_balancer/object.pb.go +++ b/pbgo/extschema/schema/dns_load_balancer/object.pb.go @@ -234,46 +234,47 @@ func init() { } var fileDescriptor_1b0067946d30a063 = []byte{ - // 614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x3f, 0x4f, 0x14, 0x4f, - 0x18, 0xc7, 0x6f, 0xee, 0xc8, 0x41, 0x06, 0xc2, 0xef, 0xe7, 0x6a, 0x71, 0xa2, 0x8e, 0x97, 0xb3, - 0xc1, 0xc8, 0xee, 0x1a, 0x8c, 0x05, 0xf8, 0x87, 0x04, 0x4c, 0xb0, 0x80, 0x98, 0xdc, 0x61, 0x63, - 0x73, 0x99, 0x9d, 0x7d, 0x6e, 0x19, 0xdd, 0xdb, 0xd9, 0xcc, 0xcc, 0x2e, 0x50, 0x98, 0x18, 0x2b, - 0x4b, 0x13, 0x3b, 0x2b, 0x4b, 0x62, 0x7c, 0x11, 0x62, 0xa3, 0x25, 0xa1, 0xa2, 0x94, 0xbd, 0xc6, - 0x12, 0xdf, 0x81, 0x61, 0x96, 0x25, 0xdc, 0x71, 0x06, 0x43, 0x37, 0x93, 0xe7, 0xf3, 0xfd, 0xee, - 0xb3, 0xcf, 0x9f, 0xc1, 0x33, 0x29, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x75, 0xe8, 0x52, 0xd7, 0x8f, - 0x54, 0x3b, 0x14, 0xd4, 0x6f, 0x7b, 0x34, 0xa4, 0x11, 0x03, 0xe9, 0x0a, 0xef, 0x25, 0x30, 0xed, - 0xc4, 0x52, 0x68, 0x61, 0xdd, 0xcc, 0x69, 0x27, 0xa7, 0x9d, 0x33, 0xf4, 0x94, 0x1d, 0x70, 0xbd, - 0x9e, 0x78, 0x0e, 0x13, 0x5d, 0x37, 0x10, 0x81, 0x70, 0x8d, 0xce, 0x4b, 0x3a, 0xe6, 0x66, 0x2e, - 0xe6, 0x94, 0xfb, 0x4d, 0xdd, 0x39, 0xef, 0xeb, 0x7a, 0x2b, 0x06, 0x75, 0x0c, 0x5f, 0xeb, 0x87, - 0x45, 0xac, 0xb9, 0x88, 0x8a, 0xe0, 0xd5, 0xfe, 0xe0, 0x69, 0x5d, 0xa3, 0x3f, 0x94, 0x82, 0x82, - 0x28, 0x1d, 0x90, 0xd7, 0x07, 0x18, 0x0e, 0x1b, 0xed, 0x3e, 0xa2, 0xf1, 0x71, 0x04, 0x57, 0x9f, - 0x99, 0x5a, 0x58, 0x73, 0x78, 0xac, 0x0b, 0x9a, 0xfa, 0x54, 0xd3, 0x1a, 0xaa, 0xa3, 0xe9, 0xf1, - 0xd9, 0x1b, 0x4e, 0x7f, 0x61, 0x72, 0x70, 0x15, 0x34, 0x5d, 0xdb, 0x8a, 0xa1, 0x79, 0x82, 0x5b, - 0x2b, 0xf8, 0x3f, 0xb5, 0xa5, 0x34, 0x74, 0xdb, 0x27, 0x0e, 0x65, 0xe3, 0x70, 0x6b, 0xc0, 0xa1, - 0x65, 0xa8, 0x01, 0x9f, 0xc9, 0x5c, 0xbb, 0x5a, 0xb8, 0x3d, 0xc2, 0x23, 0x2a, 0x06, 0x56, 0xab, - 0x18, 0x8b, 0xdb, 0xce, 0x39, 0xdd, 0x71, 0x5a, 0x31, 0x30, 0x63, 0x64, 0x64, 0xf3, 0xdf, 0xcb, - 0x6f, 0x17, 0xaa, 0xb9, 0xe5, 0xbb, 0x05, 0xb4, 0xbd, 0x80, 0xbe, 0xed, 0xd4, 0x2a, 0x9f, 0x10, - 0xda, 0xdb, 0xa9, 0x7d, 0x29, 0xe3, 0x39, 0x5c, 0x59, 0x06, 0x6d, 0xcd, 0xa6, 0xa0, 0x6c, 0x2e, - 0x6c, 0x1e, 0x75, 0x24, 0x55, 0x5a, 0x26, 0x4c, 0x27, 0x12, 0x6c, 0x09, 0xd4, 0x9f, 0xa9, 0x77, - 0xee, 0x6f, 0x32, 0xdb, 0x8f, 0x94, 0xed, 0x51, 0xc5, 0x99, 0xdd, 0x15, 0x11, 0xd7, 0x42, 0xe2, - 0x07, 0x78, 0xb4, 0x09, 0x71, 0x48, 0x19, 0x58, 0x77, 0x87, 0xcb, 0x37, 0x24, 0xd7, 0x70, 0x46, - 0x9f, 0x28, 0x90, 0x78, 0x1e, 0x57, 0x97, 0x24, 0x50, 0x7d, 0x41, 0xed, 0x13, 0x08, 0xe1, 0x82, - 0xda, 0x91, 0x15, 0xae, 0x2e, 0xf4, 0xc3, 0x8d, 0x35, 0x3c, 0x56, 0xd4, 0xd6, 0x7a, 0x8a, 0x47, - 0x03, 0xd6, 0x36, 0x7d, 0xc9, 0x5b, 0xeb, 0x9e, 0xdb, 0x97, 0xe5, 0x50, 0x78, 0x34, 0x3c, 0xe9, - 0x4e, 0x35, 0x60, 0x47, 0xe7, 0xc6, 0x6f, 0x84, 0x27, 0x5a, 0x9a, 0xea, 0x44, 0xfd, 0xf3, 0xe0, - 0xe5, 0xf8, 0x90, 0xc1, 0x6b, 0xe1, 0xf1, 0x7c, 0x93, 0xdb, 0x12, 0x3a, 0xaa, 0x56, 0xae, 0x57, - 0xa6, 0xc7, 0x67, 0xaf, 0x0f, 0x1d, 0xdb, 0x26, 0x74, 0x8e, 0xc4, 0x8b, 0x57, 0x3e, 0xbf, 0xbe, - 0x74, 0x26, 0xd7, 0x26, 0x16, 0x05, 0xa4, 0xac, 0x87, 0x18, 0x33, 0x11, 0xf9, 0xdc, 0xec, 0x49, - 0xad, 0x32, 0xd4, 0x73, 0xa9, 0x00, 0x4c, 0x42, 0xa7, 0xf8, 0xf9, 0xcb, 0x7b, 0x8f, 0xff, 0xc7, - 0x93, 0x78, 0xa2, 0xc8, 0xd1, 0x49, 0xb8, 0xbf, 0xf8, 0x01, 0xed, 0x1e, 0x90, 0xd2, 0xfe, 0x01, - 0x29, 0x1d, 0x1e, 0x10, 0xf4, 0x26, 0x23, 0x68, 0x3b, 0x23, 0xe8, 0x47, 0x46, 0xd0, 0x6e, 0x46, - 0xd0, 0x7e, 0x46, 0xd0, 0xcf, 0x8c, 0xa0, 0x5f, 0x19, 0x29, 0x1d, 0x66, 0x04, 0xbd, 0xef, 0x91, - 0xd2, 0xd7, 0x1e, 0x41, 0xbb, 0x3d, 0x52, 0xda, 0xef, 0x91, 0xd2, 0x8b, 0xe7, 0x81, 0x88, 0x5f, - 0x05, 0x4e, 0x2a, 0x42, 0x0d, 0x52, 0x52, 0x27, 0x51, 0xae, 0x39, 0x74, 0x84, 0xec, 0xda, 0xb1, - 0x14, 0x29, 0xf7, 0x41, 0xda, 0x45, 0xd8, 0x8d, 0xbd, 0x40, 0xb8, 0xb0, 0xa9, 0x8f, 0xd7, 0xfe, - 0x6f, 0xcf, 0x90, 0x57, 0x35, 0x6f, 0xc0, 0xbd, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe3, 0xfb, - 0x7c, 0x1b, 0x2e, 0x05, 0x00, 0x00, + // 628 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x31, 0x4f, 0x14, 0x4f, + 0x14, 0xc0, 0x6f, 0x58, 0xfe, 0x07, 0x19, 0x08, 0x7f, 0x5d, 0x2d, 0x4e, 0xd4, 0xf1, 0x72, 0x36, + 0x18, 0xd9, 0xdd, 0x04, 0x63, 0x21, 0x51, 0x49, 0xc0, 0x04, 0x0a, 0x88, 0xc9, 0x1d, 0x34, 0x36, + 0x97, 0xd9, 0xd9, 0x77, 0xcb, 0xe8, 0xde, 0xce, 0x66, 0x66, 0xf6, 0x80, 0xc2, 0xc4, 0x58, 0x59, + 0x9a, 0xd8, 0x58, 0x5a, 0x12, 0x3e, 0x85, 0x98, 0x98, 0x58, 0x12, 0x2a, 0x4a, 0xd9, 0x6b, 0x2c, + 0xf1, 0x1b, 0x18, 0x66, 0x59, 0xc2, 0x1d, 0x67, 0xb0, 0xb8, 0x6e, 0x76, 0xde, 0xef, 0xfd, 0x76, + 0xf2, 0xe6, 0xcd, 0xc3, 0xb3, 0x1d, 0x50, 0x2e, 0x17, 0x9e, 0x62, 0x9b, 0xd0, 0xa6, 0x5e, 0x10, + 0xab, 0x66, 0x24, 0x68, 0xd0, 0xf4, 0x69, 0x44, 0x63, 0x06, 0xd2, 0x13, 0xfe, 0x6b, 0x60, 0xda, + 0x4d, 0xa4, 0xd0, 0xc2, 0xbe, 0x97, 0xd3, 0x6e, 0x4e, 0xbb, 0x97, 0xe8, 0x69, 0x27, 0xe4, 0x7a, + 0x33, 0xf5, 0x5d, 0x26, 0xda, 0x5e, 0x28, 0x42, 0xe1, 0x99, 0x3c, 0x3f, 0x6d, 0x99, 0x2f, 0xf3, + 0x61, 0x56, 0xb9, 0x6f, 0xfa, 0xe1, 0x55, 0x7f, 0xd7, 0x3b, 0x09, 0xa8, 0x33, 0xf8, 0x76, 0x2f, + 0x2c, 0x12, 0xcd, 0x45, 0x5c, 0x04, 0x6f, 0xf5, 0x06, 0x2f, 0xe6, 0xd5, 0x7a, 0x43, 0x1d, 0x50, + 0x10, 0x77, 0xfa, 0xd2, 0xab, 0x7d, 0x0c, 0x87, 0xad, 0x66, 0x0f, 0x51, 0xfb, 0xfc, 0x1f, 0x2e, + 0xbf, 0x34, 0xb5, 0xb0, 0x9f, 0xe0, 0xf1, 0x36, 0x68, 0x1a, 0x50, 0x4d, 0x2b, 0xa8, 0x8a, 0x66, + 0x26, 0xe6, 0xee, 0xba, 0xbd, 0x85, 0xc9, 0xc1, 0x35, 0xd0, 0x74, 0x7d, 0x27, 0x81, 0xfa, 0x39, + 0x6e, 0xaf, 0xe2, 0xff, 0xd5, 0x8e, 0xd2, 0xd0, 0x6e, 0x9e, 0x1b, 0x46, 0x8c, 0xe1, 0x7e, 0x9f, + 0xa1, 0x61, 0xa8, 0x3e, 0xcf, 0x54, 0x9e, 0xbb, 0x56, 0xd8, 0x9e, 0xe1, 0x51, 0x95, 0x00, 0xab, + 0x58, 0x46, 0xf1, 0xc0, 0xbd, 0xe2, 0x76, 0xdc, 0x46, 0x02, 0xcc, 0x88, 0x4c, 0xda, 0xfc, 0x77, + 0xeb, 0xfd, 0x42, 0x39, 0x57, 0x7e, 0x58, 0x40, 0xbb, 0x0b, 0xe8, 0xdb, 0x7e, 0xc5, 0xfa, 0x82, + 0xd0, 0xe1, 0x7e, 0x65, 0xcf, 0xc2, 0xeb, 0xd8, 0x5a, 0x06, 0x6d, 0xaf, 0x75, 0x40, 0x39, 0x5c, + 0x38, 0x3c, 0x6e, 0x49, 0xaa, 0xb4, 0x4c, 0x99, 0x4e, 0x25, 0x38, 0x12, 0x68, 0x30, 0x5b, 0x6d, + 0x3d, 0xde, 0x66, 0x4e, 0x10, 0x2b, 0xc7, 0xa7, 0x8a, 0x33, 0xa7, 0x2d, 0x62, 0xae, 0x85, 0xbc, + 0xb0, 0xaf, 0x34, 0x8d, 0x03, 0x2a, 0x83, 0x22, 0x84, 0x1b, 0x78, 0xac, 0x0e, 0x49, 0x44, 0x19, + 0xd8, 0x2b, 0x83, 0xcd, 0x5b, 0x92, 0x6b, 0xb8, 0xa4, 0x4e, 0x15, 0x0c, 0xf4, 0x9e, 0xee, 0xe3, + 0x3a, 0x2e, 0x2f, 0x49, 0xa0, 0x7a, 0xc8, 0xce, 0x17, 0x10, 0xc1, 0x50, 0x9d, 0x1b, 0x78, 0x74, + 0x95, 0xab, 0x61, 0xd7, 0xb4, 0xb6, 0x8e, 0xc7, 0x8b, 0x9b, 0xb5, 0x57, 0xf0, 0x58, 0xc8, 0x9a, + 0xa6, 0x2b, 0xf2, 0xc6, 0xf2, 0xae, 0xec, 0x8a, 0xe5, 0x48, 0xf8, 0x34, 0x3a, 0xef, 0x8d, 0x72, + 0xc8, 0x4e, 0xd7, 0xb5, 0xdf, 0x08, 0x4f, 0x36, 0x34, 0xd5, 0xa9, 0xfa, 0xe7, 0xb6, 0xcf, 0xf1, + 0x01, 0x6d, 0xdf, 0xc0, 0x13, 0xf9, 0x1c, 0x69, 0x4a, 0x68, 0xa9, 0xca, 0x48, 0xd5, 0x9a, 0x99, + 0x98, 0xbb, 0x33, 0xf0, 0xd1, 0xd4, 0xa1, 0x75, 0x9a, 0xbc, 0x78, 0x73, 0xef, 0xed, 0xf5, 0x4b, + 0x67, 0xad, 0x63, 0x51, 0x40, 0xca, 0x7e, 0x8a, 0x31, 0x13, 0x71, 0xc0, 0xcd, 0x2b, 0xad, 0x58, + 0x03, 0x9d, 0x4b, 0x05, 0x60, 0x0e, 0x74, 0x81, 0x9f, 0xbf, 0x71, 0xf8, 0xfc, 0x1a, 0x9e, 0xc2, + 0x93, 0xc5, 0x19, 0xdd, 0x94, 0x07, 0x8b, 0x9f, 0xd0, 0xc1, 0x31, 0x29, 0x1d, 0x1d, 0x93, 0xd2, + 0xc9, 0x31, 0x41, 0xef, 0x32, 0x82, 0x76, 0x33, 0x82, 0x7e, 0x64, 0x04, 0x1d, 0x64, 0x04, 0x1d, + 0x65, 0x04, 0xfd, 0xcc, 0x08, 0xfa, 0x95, 0x91, 0xd2, 0x49, 0x46, 0xd0, 0xc7, 0x2e, 0x29, 0x7d, + 0xed, 0x12, 0x74, 0xd0, 0x25, 0xa5, 0xa3, 0x2e, 0x29, 0xbd, 0xda, 0x08, 0x45, 0xf2, 0x26, 0x74, + 0x3b, 0x22, 0xd2, 0x20, 0x25, 0x75, 0x53, 0xe5, 0x99, 0x45, 0x4b, 0xc8, 0xb6, 0x93, 0x48, 0xd1, + 0xe1, 0x01, 0x48, 0xa7, 0x08, 0x7b, 0x89, 0x1f, 0x0a, 0x0f, 0xb6, 0xf5, 0xd9, 0xd0, 0xf9, 0xdb, + 0x10, 0xf4, 0xcb, 0x66, 0x02, 0x3d, 0xfa, 0x13, 0x00, 0x00, 0xff, 0xff, 0x10, 0xc5, 0x16, 0xca, + 0xac, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/dns_load_balancer/pkg.vespkg.go b/pbgo/extschema/schema/dns_load_balancer/pkg.vespkg.go index 5bb491f86..8ac612766 100644 --- a/pbgo/extschema/schema/dns_load_balancer/pkg.vespkg.go +++ b/pbgo/extschema/schema/dns_load_balancer/pkg.vespkg.go @@ -70,12 +70,10 @@ func initializeEntryRegistry(mdr *svcfw.MDRegistry) { func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.dns_load_balancer.API.Create"] = []string{ - "spec.rule_list.rules.#.asn_matcher", "spec.rule_list.rules.#.nxdomain", } mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.dns_load_balancer.API.Replace"] = []string{ - "spec.rule_list.rules.#.asn_matcher", "spec.rule_list.rules.#.nxdomain", } diff --git a/pbgo/extschema/schema/dns_load_balancer/public_crudapi.pb.go b/pbgo/extschema/schema/dns_load_balancer/public_crudapi.pb.go index 01460c93c..6fae1c1eb 100644 --- a/pbgo/extschema/schema/dns_load_balancer/public_crudapi.pb.go +++ b/pbgo/extschema/schema/dns_load_balancer/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_b2a26f69c59d8ba3 = []byte{ - // 1614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0xc7, - 0x17, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x30, 0xf3, 0x87, 0xe0, 0xf8, 0x4f, 0x5d, 0xd7, 0x20, - 0x14, 0x85, 0x78, 0x1d, 0x42, 0x5b, 0x41, 0x54, 0xa0, 0x4e, 0xe2, 0x58, 0x49, 0x03, 0x86, 0xb5, - 0x83, 0xaa, 0x5e, 0x56, 0xeb, 0xdd, 0xb1, 0xd9, 0x62, 0xef, 0x6e, 0x67, 0xc7, 0x0e, 0x56, 0x15, - 0xa9, 0xe2, 0xd4, 0xde, 0x2a, 0xf5, 0x50, 0xa9, 0xaa, 0x54, 0x7a, 0xa8, 0xd4, 0x6b, 0x6f, 0x95, - 0x72, 0xe1, 0x06, 0xe2, 0x50, 0x45, 0xe5, 0x50, 0xa4, 0x5e, 0x8a, 0xd3, 0x4a, 0x1c, 0x51, 0x2f, - 0x3d, 0x55, 0xaa, 0x76, 0x66, 0xd7, 0xd8, 0x8e, 0xc1, 0x76, 0xc8, 0xc9, 0x3b, 0xf3, 0xde, 0xfb, - 0xcd, 0xfb, 0xcd, 0xfb, 0xf0, 0xdb, 0x85, 0x6f, 0xd7, 0xb1, 0x25, 0x68, 0x46, 0xca, 0x52, 0x6e, - 0xe1, 0xaa, 0x9c, 0x52, 0x75, 0x4b, 0xaa, 0x18, 0xb2, 0x2a, 0x15, 0xe5, 0x8a, 0xac, 0x2b, 0x98, - 0xa4, 0xcc, 0x5a, 0xb1, 0xa2, 0x29, 0x92, 0x42, 0x6a, 0xaa, 0x6c, 0x6a, 0x82, 0x49, 0x0c, 0x6a, - 0xa0, 0x37, 0xb9, 0x95, 0xc0, 0xad, 0x84, 0x7d, 0x56, 0xd1, 0x64, 0x59, 0xa3, 0xb7, 0x6a, 0x45, - 0x41, 0x31, 0xaa, 0xa9, 0xb2, 0x51, 0x36, 0x52, 0xcc, 0xae, 0x58, 0x2b, 0xb1, 0x15, 0x5b, 0xb0, - 0x27, 0x8e, 0x17, 0x3d, 0x59, 0x36, 0x8c, 0x72, 0x05, 0xa7, 0x64, 0x53, 0x4b, 0xc9, 0xba, 0x6e, - 0x50, 0x99, 0x6a, 0x86, 0x6e, 0x39, 0xd2, 0xff, 0x3b, 0xd2, 0x16, 0x06, 0xae, 0x9a, 0xb4, 0xe1, - 0x08, 0xe7, 0xfa, 0x11, 0x30, 0x8a, 0x1f, 0x63, 0x85, 0x3a, 0xda, 0x67, 0xfb, 0x69, 0xd3, 0x86, - 0x89, 0xdd, 0x73, 0xa3, 0x9d, 0xca, 0x98, 0x10, 0x83, 0xb4, 0x7c, 0xea, 0x94, 0x19, 0x66, 0xbb, - 0xc3, 0xd3, 0x9d, 0xc2, 0x76, 0xcc, 0x44, 0xa7, 0xa8, 0x8e, 0x2d, 0xac, 0xd7, 0xbb, 0xcc, 0xe3, - 0x5d, 0x3a, 0x1a, 0xde, 0x92, 0x3a, 0x34, 0x12, 0x3f, 0x01, 0x38, 0xbe, 0x4c, 0xb0, 0x4c, 0xb1, - 0x88, 0x3f, 0xa9, 0x61, 0x8b, 0xa2, 0x2b, 0x30, 0x50, 0xc5, 0x54, 0x56, 0x65, 0x2a, 0x47, 0x40, - 0x1c, 0xcc, 0x84, 0x16, 0x4e, 0x09, 0x9d, 0x41, 0xca, 0xb1, 0x7b, 0xe0, 0x56, 0x57, 0x31, 0x95, - 0x0b, 0x0d, 0x13, 0x8b, 0x2d, 0x23, 0x54, 0x80, 0x3e, 0xcb, 0xc4, 0x4a, 0xc4, 0xc3, 0x8c, 0x53, - 0x42, 0x9f, 0x08, 0x0b, 0x1c, 0x28, 0x6f, 0x62, 0xc5, 0x06, 0x5a, 0x9a, 0xfc, 0x66, 0x7b, 0xcc, - 0xb6, 0x17, 0xca, 0x8a, 0x64, 0xff, 0x8a, 0x0c, 0x6d, 0x31, 0xf8, 0xe8, 0xb2, 0x9f, 0x1f, 0x9c, - 0xf8, 0x17, 0xc0, 0x09, 0xd7, 0x67, 0xcb, 0x34, 0x74, 0x0b, 0xa3, 0xf7, 0xf6, 0x39, 0x1d, 0xef, - 0xe9, 0x74, 0x16, 0xd3, 0x1e, 0x1e, 0xe7, 0xe0, 0xa4, 0xd5, 0xb0, 0x28, 0xae, 0x4a, 0x2d, 0x10, - 0x2f, 0x03, 0x39, 0xd3, 0x05, 0x92, 0x67, 0x5a, 0xfb, 0xa1, 0x26, 0xb8, 0xf9, 0x55, 0x17, 0xf0, - 0x46, 0xc7, 0x15, 0xcc, 0xf5, 0xbd, 0x82, 0x2c, 0xa6, 0x43, 0xf0, 0xff, 0x0b, 0xc0, 0x09, 0x11, - 0x9b, 0x15, 0x59, 0x69, 0x05, 0xed, 0xfd, 0x7d, 0xfc, 0x4f, 0xf7, 0xe4, 0xef, 0x98, 0xf5, 0xb8, - 0x83, 0xcd, 0x0e, 0x97, 0xe7, 0xfb, 0xba, 0xec, 0x20, 0xf5, 0x71, 0x1b, 0xa5, 0x60, 0x98, 0x60, - 0xcb, 0xa8, 0x11, 0x05, 0x4b, 0x75, 0x4c, 0x2c, 0xcd, 0xd0, 0xd9, 0xdd, 0x06, 0x97, 0x7c, 0xcf, - 0x76, 0x00, 0x10, 0x27, 0x5d, 0xe9, 0x4d, 0x2e, 0x6c, 0xe7, 0x79, 0x14, 0x4e, 0xb6, 0x68, 0xf2, - 0x38, 0x27, 0xbe, 0x03, 0x10, 0x66, 0x31, 0x75, 0x69, 0x9f, 0x84, 0x41, 0x5d, 0xae, 0x62, 0xcb, - 0x94, 0x15, 0xcc, 0x78, 0x07, 0xc5, 0x17, 0x1b, 0x08, 0x41, 0x9f, 0xbd, 0x60, 0x94, 0x82, 0x22, - 0x7b, 0x46, 0x12, 0xb4, 0x4f, 0x64, 0x60, 0x52, 0xc9, 0x20, 0x55, 0x99, 0x32, 0x77, 0x26, 0x16, - 0xde, 0x1d, 0x24, 0x48, 0xae, 0x1f, 0xab, 0xcc, 0x72, 0xd9, 0x50, 0xb1, 0x38, 0x41, 0x3a, 0xf6, - 0x12, 0xdf, 0xfb, 0x61, 0xa8, 0x4d, 0x13, 0xe5, 0x60, 0x48, 0x61, 0xb9, 0xca, 0x8e, 0x73, 0xae, - 0x57, 0x18, 0xb0, 0x28, 0x1c, 0x9e, 0x22, 0xe4, 0x10, 0xf6, 0x11, 0x48, 0x84, 0x63, 0x84, 0xdf, - 0x0a, 0x47, 0xf4, 0x0e, 0x58, 0x66, 0x9d, 0x19, 0x23, 0x86, 0x1c, 0x10, 0x86, 0xd9, 0x2b, 0x4a, - 0xbe, 0x57, 0x44, 0xa9, 0xa3, 0xde, 0x46, 0x0f, 0xa3, 0xde, 0x8e, 0x1c, 0x4a, 0xbd, 0xf9, 0x0f, - 0xad, 0xde, 0xd0, 0x06, 0xf4, 0x5b, 0x54, 0xa6, 0x35, 0x2b, 0x72, 0xef, 0x5b, 0x10, 0xf7, 0xce, - 0x84, 0x16, 0x92, 0x7d, 0x61, 0xf3, 0xcc, 0x80, 0xbb, 0xbb, 0xe4, 0xbd, 0xbf, 0x0d, 0x44, 0x07, - 0x03, 0xad, 0xc1, 0xa3, 0x04, 0x97, 0x30, 0x21, 0x9a, 0x5e, 0x96, 0xf8, 0xff, 0x88, 0x15, 0x09, - 0x30, 0xd8, 0x93, 0x2f, 0x29, 0xd4, 0x12, 0x63, 0x1a, 0x6e, 0x99, 0xf1, 0x7d, 0x0b, 0xdd, 0x84, - 0x11, 0x15, 0x57, 0x30, 0xc5, 0xaa, 0xc4, 0x65, 0x58, 0x6d, 0x21, 0x06, 0x07, 0x40, 0x9c, 0x72, - 0xac, 0x45, 0xc7, 0xd8, 0xc5, 0xfd, 0x10, 0x4e, 0xab, 0x9a, 0x25, 0x17, 0x2b, 0xbd, 0x80, 0xe1, - 0x00, 0xc0, 0x27, 0x5c, 0xf3, 0x2e, 0xe4, 0xb6, 0x92, 0x5e, 0xf7, 0x05, 0x40, 0xd8, 0x93, 0xf8, - 0x01, 0xc0, 0xd0, 0x86, 0x66, 0x0d, 0x58, 0xc6, 0x6f, 0xc1, 0xb1, 0x8a, 0x5c, 0xc4, 0x15, 0xa9, - 0xa4, 0x55, 0x28, 0x26, 0x4e, 0x39, 0x87, 0xd8, 0xde, 0x2a, 0xdb, 0x42, 0xa7, 0xe0, 0x38, 0xc1, - 0xa6, 0x41, 0xa8, 0x54, 0xd2, 0x70, 0x45, 0xb5, 0x22, 0xde, 0xb8, 0x77, 0x26, 0x28, 0x8e, 0xf1, - 0xcd, 0x55, 0xb6, 0x87, 0xe6, 0xe1, 0x31, 0x47, 0x89, 0x07, 0xc5, 0xd5, 0xf5, 0x31, 0x5d, 0xc4, - 0x65, 0x3c, 0x84, 0xdc, 0x22, 0xb1, 0xeb, 0x87, 0x61, 0xee, 0x27, 0x2f, 0xe6, 0x35, 0x8a, 0xab, - 0x68, 0x0a, 0xfa, 0x29, 0xd6, 0x65, 0x9d, 0xb2, 0x6c, 0x0b, 0x8a, 0xce, 0xea, 0x00, 0xbd, 0x28, - 0x0c, 0xbd, 0x35, 0x4d, 0xe5, 0xed, 0x50, 0xb4, 0x1f, 0x51, 0x1c, 0x86, 0x54, 0x6c, 0x29, 0x44, - 0x63, 0xff, 0xd1, 0x91, 0x10, 0x67, 0xda, 0xb6, 0x85, 0xa2, 0x30, 0xe0, 0x5e, 0x73, 0x64, 0x2c, - 0x0e, 0x66, 0x02, 0x62, 0x6b, 0x8d, 0x36, 0xa1, 0x9f, 0x5d, 0x0a, 0xa7, 0x14, 0x5a, 0xb8, 0xd4, - 0x37, 0x61, 0xbb, 0xc9, 0x09, 0x1b, 0xcc, 0x3e, 0xa3, 0x53, 0xd2, 0x10, 0x1d, 0x30, 0xa4, 0xc2, - 0x50, 0xdb, 0x24, 0xe5, 0xa4, 0xc2, 0xd2, 0xf0, 0xd8, 0xe9, 0x17, 0x20, 0xfc, 0x80, 0x76, 0x58, - 0x74, 0x11, 0x42, 0x63, 0x4b, 0xc7, 0x44, 0xb2, 0x87, 0x94, 0x48, 0x90, 0x15, 0x72, 0xb4, 0xeb, - 0x90, 0x9b, 0x1a, 0xde, 0x72, 0xb3, 0x2d, 0xc8, 0xb4, 0xed, 0x9d, 0x8e, 0x66, 0x34, 0x7e, 0x18, - 0xcd, 0x68, 0xe2, 0xb5, 0x9a, 0x51, 0x16, 0x06, 0xca, 0x98, 0xb2, 0x5e, 0xe2, 0xb4, 0xb5, 0xa1, - 0x1a, 0x92, 0x78, 0xa4, 0xcc, 0x17, 0xe8, 0x06, 0x84, 0x4e, 0xa6, 0x5a, 0x98, 0x3a, 0xdd, 0xe2, - 0x20, 0x4d, 0x28, 0xc8, 0x51, 0xf2, 0x98, 0x46, 0x2f, 0xc2, 0x50, 0x5b, 0x88, 0xed, 0x0c, 0xbc, - 0x8d, 0x1b, 0x4e, 0xb6, 0xda, 0x8f, 0xe8, 0x18, 0x1c, 0xad, 0xcb, 0x95, 0x9a, 0x9b, 0xa8, 0x7c, - 0xb1, 0xe8, 0xb9, 0x00, 0xa2, 0x97, 0x61, 0xb8, 0x3b, 0x82, 0xc3, 0xd8, 0xaf, 0xfb, 0x02, 0xa3, - 0x61, 0x7f, 0xe2, 0x0b, 0x00, 0xc7, 0xda, 0x33, 0x03, 0x65, 0xe1, 0xa8, 0x46, 0x71, 0xd5, 0x8a, - 0xf0, 0x26, 0x7b, 0x6e, 0xe8, 0xbc, 0x12, 0xb9, 0x3d, 0x9a, 0x87, 0x7e, 0x3e, 0x57, 0x47, 0x3c, - 0x0c, 0x29, 0xd2, 0x85, 0x94, 0xb1, 0x85, 0xec, 0x82, 0x1d, 0xbd, 0xc4, 0x6d, 0x38, 0xbe, 0xc2, - 0x7a, 0xe1, 0xc1, 0xc7, 0x89, 0x19, 0x18, 0x2e, 0xc9, 0x5a, 0x45, 0xd2, 0x4a, 0xad, 0x9e, 0xc9, - 0xea, 0x39, 0x20, 0x4e, 0xd8, 0xfb, 0x6b, 0x25, 0xb7, 0x17, 0xce, 0xfe, 0x0d, 0xe0, 0xf1, 0x9e, - 0x13, 0x04, 0x8a, 0xc2, 0xa9, 0x6c, 0xa6, 0x20, 0x89, 0xf9, 0xeb, 0xd2, 0x6a, 0x4e, 0xbc, 0x9a, - 0x2e, 0x48, 0x2b, 0x99, 0xd5, 0xf4, 0xe6, 0x46, 0x21, 0x3c, 0x82, 0xde, 0x80, 0xd3, 0x5d, 0xb2, - 0xd5, 0x9c, 0x28, 0x2d, 0x8b, 0x99, 0x74, 0x21, 0x13, 0x06, 0x28, 0x06, 0xa3, 0x3d, 0xc4, 0x62, - 0xe6, 0xfa, 0x46, 0x7a, 0x39, 0x13, 0xf6, 0xa0, 0x69, 0x78, 0xbc, 0x4b, 0x9e, 0x2f, 0xa4, 0x0b, - 0x9b, 0xf9, 0xb0, 0x17, 0x9d, 0x80, 0xff, 0xeb, 0x12, 0x89, 0x99, 0xf4, 0x4a, 0xd8, 0x87, 0x4e, - 0xc3, 0xf8, 0x3e, 0xc1, 0x6a, 0x46, 0x14, 0xd7, 0xae, 0x65, 0xa5, 0xdc, 0xd2, 0x7a, 0x66, 0xb9, - 0x90, 0x0f, 0x8f, 0xf6, 0xd0, 0x5a, 0x12, 0x73, 0x1f, 0x64, 0xae, 0x71, 0xe5, 0xcc, 0xb5, 0xe5, - 0x4c, 0x3e, 0xec, 0x5f, 0x78, 0x1c, 0x84, 0xde, 0xf4, 0xf5, 0x35, 0xb4, 0x07, 0xa0, 0x9f, 0x4f, - 0x34, 0x68, 0xc8, 0xd1, 0x27, 0x9a, 0x1a, 0x58, 0xdf, 0x19, 0x11, 0xef, 0x34, 0x1f, 0x44, 0xec, - 0xb7, 0xa1, 0xa4, 0x66, 0x24, 0x35, 0xbd, 0x44, 0x64, 0x8b, 0x92, 0x9a, 0x42, 0x6b, 0x04, 0x27, - 0xb7, 0x88, 0x46, 0xf1, 0x5c, 0xe9, 0x9d, 0x3b, 0x4a, 0x52, 0xd5, 0xad, 0x64, 0x51, 0xb6, 0x34, - 0x25, 0x59, 0xb3, 0x30, 0xb9, 0xfb, 0xf8, 0xcf, 0xaf, 0x3c, 0x57, 0x12, 0x8b, 0xce, 0x3b, 0x6a, - 0xaa, 0x15, 0x74, 0x2b, 0xf5, 0xa9, 0xdb, 0x15, 0x84, 0xd6, 0xe6, 0xf6, 0xfe, 0xb7, 0x3d, 0x6b, - 0x11, 0xcc, 0xa2, 0xdf, 0x01, 0xf4, 0x66, 0x31, 0x45, 0x67, 0x07, 0x1b, 0x25, 0x39, 0xbf, 0xb9, - 0x61, 0xe6, 0xce, 0x44, 0xe3, 0xe1, 0xcf, 0x1e, 0xd0, 0x7c, 0x10, 0x39, 0xd7, 0x9b, 0x20, 0xc1, - 0xb2, 0xda, 0xcd, 0xaf, 0x6a, 0xe8, 0x1a, 0x35, 0x38, 0xc5, 0x45, 0x74, 0xa1, 0x17, 0xc5, 0x57, - 0x32, 0xe3, 0xe2, 0x6d, 0xf4, 0x1b, 0x80, 0x3e, 0xbb, 0xf6, 0xd0, 0xdc, 0x80, 0x25, 0xca, 0xf9, - 0x25, 0x87, 0x2a, 0xe8, 0x04, 0x79, 0x3d, 0x82, 0xe7, 0xd1, 0xb9, 0xa1, 0x09, 0xa2, 0x7f, 0x00, - 0x3c, 0xe2, 0x4c, 0xc7, 0x68, 0xd8, 0x39, 0x3a, 0x3a, 0x3f, 0xb8, 0x81, 0x43, 0xf1, 0x73, 0x70, - 0xd0, 0x0c, 0xcd, 0x45, 0xd7, 0x0f, 0x9e, 0xa1, 0x5d, 0x7a, 0xdb, 0x76, 0xc6, 0x3e, 0x04, 0xd0, - 0xcf, 0x5b, 0xe0, 0x00, 0x75, 0xd9, 0xd1, 0x2b, 0xa3, 0x53, 0x02, 0xff, 0x96, 0x22, 0xb8, 0xdf, - 0x52, 0x84, 0x4c, 0xd5, 0xa4, 0x8d, 0x44, 0xfd, 0xa0, 0xe4, 0x2e, 0xcd, 0x1e, 0x38, 0x37, 0x17, - 0xc1, 0x6c, 0x54, 0xbb, 0xbf, 0x03, 0x3c, 0xbf, 0xee, 0x80, 0x33, 0xfd, 0x68, 0xf0, 0x7f, 0xc6, - 0x27, 0x3b, 0x00, 0x34, 0x77, 0xc0, 0xdc, 0x30, 0xff, 0xa6, 0x77, 0x7f, 0x89, 0x78, 0xef, 0x01, - 0xb0, 0xf4, 0x35, 0x78, 0x74, 0x79, 0x74, 0x59, 0xdc, 0x5c, 0xd9, 0xd8, 0x7d, 0x1a, 0x1b, 0x79, - 0xf2, 0x34, 0x36, 0xf2, 0xfc, 0x69, 0x0c, 0x7c, 0xd6, 0x8c, 0x81, 0x1f, 0x9b, 0x31, 0xf0, 0xb0, - 0x19, 0x03, 0xbb, 0xcd, 0x18, 0xf8, 0xa3, 0x19, 0x03, 0xcf, 0x9a, 0xb1, 0x91, 0xe7, 0xcd, 0x18, - 0xf8, 0x72, 0x2f, 0x36, 0x72, 0x7f, 0x2f, 0x06, 0x76, 0xf7, 0x62, 0x23, 0x4f, 0xf6, 0x62, 0x23, - 0x1f, 0x6d, 0x96, 0x0d, 0xf3, 0x76, 0x59, 0xa8, 0x1b, 0xf6, 0xf8, 0x4a, 0x64, 0xa1, 0x66, 0xa5, - 0xd8, 0x83, 0xfd, 0x46, 0x97, 0x34, 0x89, 0x51, 0xd7, 0x54, 0x4c, 0x92, 0xae, 0x38, 0x65, 0x16, - 0xcb, 0x46, 0x0a, 0xdf, 0xa1, 0xce, 0x77, 0x9c, 0x97, 0x7d, 0x73, 0x2a, 0xfa, 0x59, 0x30, 0xce, - 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0xbe, 0xd2, 0x0b, 0xc9, 0x8c, 0x13, 0x00, 0x00, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x13, 0xcf, + 0x15, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x30, 0x53, 0x08, 0x8e, 0x4b, 0x5d, 0xd7, 0x20, 0x14, + 0x85, 0x78, 0x1d, 0x42, 0x5b, 0x41, 0x54, 0xa0, 0x4e, 0x62, 0x5b, 0x09, 0x01, 0xc3, 0xda, 0x41, + 0x55, 0x2f, 0xab, 0xf5, 0xee, 0xd8, 0x6c, 0xb1, 0x77, 0xb7, 0x33, 0x63, 0x87, 0xa8, 0x8a, 0x54, + 0x71, 0xab, 0xd4, 0x2f, 0x89, 0x43, 0xa5, 0xaa, 0x52, 0xe9, 0xa1, 0x52, 0xaf, 0xbd, 0x55, 0xca, + 0x85, 0x5b, 0x11, 0x87, 0x2a, 0x6a, 0x2f, 0x1c, 0xc1, 0x69, 0x25, 0x8e, 0x88, 0x43, 0x2f, 0x55, + 0xa5, 0x6a, 0x67, 0x76, 0x8d, 0xed, 0x18, 0x6c, 0xa7, 0xf9, 0x9f, 0xbc, 0xf3, 0x3e, 0x7e, 0xf3, + 0x7e, 0x33, 0xef, 0x3d, 0xbf, 0x5d, 0xf8, 0xed, 0x16, 0xa6, 0x92, 0x61, 0x65, 0xa8, 0xf6, 0x18, + 0x37, 0xd4, 0x8c, 0x6e, 0x52, 0xa5, 0x6e, 0xa9, 0xba, 0x52, 0x51, 0xeb, 0xaa, 0xa9, 0x61, 0x92, + 0xb1, 0x9b, 0x95, 0xba, 0xa1, 0x29, 0x1a, 0x69, 0xea, 0xaa, 0x6d, 0x48, 0x36, 0xb1, 0x98, 0x85, + 0xbe, 0x29, 0xbc, 0x24, 0xe1, 0x25, 0x1d, 0xf3, 0x8a, 0xa7, 0x6b, 0x06, 0x7b, 0xdc, 0xac, 0x48, + 0x9a, 0xd5, 0xc8, 0xd4, 0xac, 0x9a, 0x95, 0xe1, 0x7e, 0x95, 0x66, 0x95, 0xaf, 0xf8, 0x82, 0x3f, + 0x09, 0xbc, 0xf8, 0xc5, 0x9a, 0x65, 0xd5, 0xea, 0x38, 0xa3, 0xda, 0x46, 0x46, 0x35, 0x4d, 0x8b, + 0xa9, 0xcc, 0xb0, 0x4c, 0xea, 0x6a, 0xbf, 0xee, 0x6a, 0x3b, 0x18, 0xb8, 0x61, 0xb3, 0x3d, 0x57, + 0xb9, 0x34, 0x8c, 0x80, 0x55, 0xf9, 0x11, 0xd6, 0x98, 0x6b, 0x7d, 0x75, 0x98, 0x35, 0xdb, 0xb3, + 0xb1, 0xb7, 0x6f, 0xbc, 0xd7, 0x18, 0x13, 0x62, 0x91, 0x4e, 0x4c, 0xbd, 0x3a, 0xcb, 0xee, 0x0e, + 0x78, 0xbe, 0x57, 0xd9, 0x8d, 0x99, 0xea, 0x55, 0xb5, 0x30, 0xc5, 0x66, 0xab, 0xcf, 0x3d, 0xd9, + 0x67, 0x63, 0xe0, 0x5d, 0xa5, 0xc7, 0x22, 0xf5, 0x67, 0x00, 0xa7, 0xd7, 0x09, 0x56, 0x19, 0x96, + 0xf1, 0x8f, 0x9b, 0x98, 0x32, 0x74, 0x07, 0x86, 0x1a, 0x98, 0xa9, 0xba, 0xca, 0xd4, 0x18, 0x48, + 0x82, 0x85, 0xc8, 0xca, 0x25, 0xa9, 0xf7, 0x92, 0x8a, 0xfc, 0x1c, 0x84, 0xd7, 0x3d, 0xcc, 0xd4, + 0xf2, 0x9e, 0x8d, 0xe5, 0x8e, 0x13, 0x2a, 0xc3, 0x00, 0xb5, 0xb1, 0x16, 0xf3, 0x71, 0xe7, 0x8c, + 0x34, 0xe4, 0x86, 0x25, 0x01, 0x54, 0xb2, 0xb1, 0xe6, 0x00, 0xad, 0xcd, 0xfe, 0x76, 0x7f, 0xca, + 0xf1, 0x97, 0x6a, 0x9a, 0xe2, 0xfc, 0xca, 0x1c, 0x6d, 0x35, 0xfc, 0xfa, 0x76, 0x50, 0x6c, 0x9c, + 0xfa, 0x2f, 0x80, 0x33, 0x5e, 0xcc, 0xd4, 0xb6, 0x4c, 0x8a, 0xd1, 0xf7, 0x8e, 0x05, 0x9d, 0x1c, + 0x18, 0x74, 0x01, 0xb3, 0x01, 0x11, 0x17, 0xe1, 0x2c, 0xdd, 0xa3, 0x0c, 0x37, 0x94, 0x0e, 0x88, + 0x9f, 0x83, 0x5c, 0xe9, 0x03, 0x29, 0x71, 0xab, 0xe3, 0x50, 0x33, 0xc2, 0xfd, 0x9e, 0x07, 0xf8, + 0xb0, 0xe7, 0x08, 0x96, 0x86, 0x1e, 0x41, 0x01, 0xb3, 0x31, 0xf8, 0xff, 0x0b, 0xc0, 0x19, 0x19, + 0xdb, 0x75, 0x55, 0xeb, 0x5c, 0xda, 0xf7, 0x8f, 0xf1, 0xbf, 0x3c, 0x90, 0xbf, 0xeb, 0x36, 0xe0, + 0x0c, 0x76, 0x7a, 0x42, 0x5e, 0x1e, 0x1a, 0xb2, 0x8b, 0x34, 0x24, 0x6c, 0x94, 0x81, 0x51, 0x82, + 0xa9, 0xd5, 0x24, 0x1a, 0x56, 0x5a, 0x98, 0x50, 0xc3, 0x32, 0xf9, 0xd9, 0x86, 0xd7, 0x02, 0xef, + 0x0f, 0x00, 0x90, 0x67, 0x3d, 0xed, 0x23, 0xa1, 0xec, 0xe6, 0x79, 0x16, 0xce, 0x76, 0x68, 0x8a, + 0x7b, 0x4e, 0xfd, 0x1e, 0x40, 0x58, 0xc0, 0xcc, 0xa3, 0x7d, 0x11, 0x86, 0x4d, 0xb5, 0x81, 0xa9, + 0xad, 0x6a, 0x98, 0xf3, 0x0e, 0xcb, 0x9f, 0x04, 0x08, 0xc1, 0x80, 0xb3, 0xe0, 0x94, 0xc2, 0x32, + 0x7f, 0x46, 0x0a, 0x74, 0x76, 0xe4, 0x60, 0x4a, 0xd5, 0x22, 0x0d, 0x95, 0xf1, 0x70, 0x66, 0x56, + 0xbe, 0x3b, 0xca, 0x25, 0x79, 0x71, 0xe4, 0xb9, 0xe7, 0xba, 0xa5, 0x63, 0x79, 0x86, 0xf4, 0xc8, + 0x52, 0x7f, 0x08, 0xc2, 0x48, 0x97, 0x25, 0x2a, 0xc2, 0x88, 0xc6, 0x73, 0x95, 0x6f, 0xe7, 0x1e, + 0xaf, 0x34, 0x62, 0x51, 0xb8, 0x3c, 0x65, 0x28, 0x20, 0x9c, 0x2d, 0x90, 0x0c, 0xa7, 0x88, 0x38, + 0x15, 0x81, 0xe8, 0x1f, 0xb1, 0xcc, 0x7a, 0x33, 0x46, 0x8e, 0xb8, 0x20, 0x1c, 0x73, 0xd0, 0x2d, + 0x05, 0xbe, 0x70, 0x4b, 0x3d, 0xf5, 0x36, 0x79, 0x1a, 0xf5, 0x76, 0xe6, 0x54, 0xea, 0x2d, 0x78, + 0x6a, 0xf5, 0x86, 0xb6, 0x61, 0x90, 0x32, 0x95, 0x35, 0x69, 0xec, 0xc5, 0xef, 0x40, 0xd2, 0xbf, + 0x10, 0x59, 0x49, 0x0f, 0x85, 0x2d, 0x71, 0x07, 0x11, 0xee, 0x9a, 0xff, 0xe5, 0x3e, 0x90, 0x5d, + 0x0c, 0xb4, 0x09, 0xcf, 0x12, 0x5c, 0xc5, 0x84, 0x18, 0x66, 0x4d, 0x11, 0xff, 0x23, 0x34, 0x16, + 0xe2, 0xb0, 0x17, 0x3f, 0x53, 0xa8, 0x55, 0xce, 0x34, 0xda, 0x71, 0x13, 0x72, 0x8a, 0x1e, 0xc1, + 0x98, 0x8e, 0xeb, 0x98, 0x61, 0x5d, 0x11, 0x3a, 0xac, 0x77, 0x10, 0xc3, 0x23, 0x20, 0xce, 0xb9, + 0xde, 0xb2, 0xeb, 0xec, 0xe1, 0xfe, 0x00, 0xce, 0xeb, 0x06, 0x55, 0x2b, 0xf5, 0x41, 0xc0, 0x70, + 0x04, 0xe0, 0x0b, 0x9e, 0x7b, 0x1f, 0x72, 0x57, 0x49, 0x6f, 0x05, 0x42, 0x20, 0xea, 0x4b, 0xfd, + 0x11, 0xc0, 0xc8, 0xb6, 0x41, 0x47, 0x2c, 0xe3, 0x6f, 0xc1, 0xa9, 0xba, 0x5a, 0xc1, 0x75, 0xa5, + 0x6a, 0xd4, 0x19, 0x26, 0x6e, 0x39, 0x47, 0xb8, 0x2c, 0xcf, 0x45, 0xe8, 0x12, 0x9c, 0x26, 0xd8, + 0xb6, 0x08, 0x53, 0xaa, 0x06, 0xae, 0xeb, 0x34, 0xe6, 0x4f, 0xfa, 0x17, 0xc2, 0xf2, 0x94, 0x10, + 0xe6, 0xb9, 0x0c, 0x2d, 0xc3, 0x73, 0xae, 0x91, 0xb8, 0x14, 0xcf, 0x36, 0xc0, 0x6d, 0x91, 0xd0, + 0x89, 0x2b, 0x14, 0x1e, 0xa9, 0xc3, 0x20, 0x8c, 0x8a, 0x38, 0x45, 0x31, 0x6f, 0x32, 0xdc, 0x40, + 0x73, 0x30, 0xc8, 0xb0, 0xa9, 0x9a, 0x8c, 0x67, 0x5b, 0x58, 0x76, 0x57, 0x27, 0xe8, 0x45, 0x51, + 0xe8, 0x6f, 0x1a, 0xba, 0x68, 0x87, 0xb2, 0xf3, 0x88, 0x92, 0x30, 0xa2, 0x63, 0xaa, 0x11, 0x83, + 0xff, 0x47, 0xc7, 0x22, 0x82, 0x69, 0x97, 0x08, 0xc5, 0x61, 0xc8, 0x3b, 0xe6, 0xd8, 0x54, 0x12, + 0x2c, 0x84, 0xe4, 0xce, 0x1a, 0xed, 0xc0, 0x20, 0x3f, 0x14, 0x41, 0x29, 0xb2, 0x72, 0x6b, 0x68, + 0xc2, 0xf6, 0x93, 0x93, 0xb6, 0xb9, 0x7f, 0xce, 0x64, 0x64, 0x4f, 0x76, 0xc1, 0x90, 0x0e, 0x23, + 0x5d, 0x93, 0x94, 0x9b, 0x0a, 0x6b, 0xe3, 0x63, 0x67, 0x3f, 0x81, 0x88, 0x0d, 0xba, 0x61, 0xd1, + 0x4d, 0x08, 0xad, 0x5d, 0x13, 0x13, 0xc5, 0x19, 0x52, 0x62, 0x61, 0x5e, 0xc8, 0xf1, 0xbe, 0x4d, + 0x1e, 0x19, 0x78, 0xd7, 0xcb, 0xb6, 0x30, 0xb7, 0x76, 0x24, 0x3d, 0xcd, 0x68, 0xfa, 0x34, 0x9a, + 0xd1, 0xcc, 0xff, 0xd5, 0x8c, 0x0a, 0x30, 0x54, 0xc3, 0x8c, 0xf7, 0x12, 0xb7, 0xad, 0x8d, 0xd5, + 0x90, 0xe4, 0x33, 0x35, 0xb1, 0x40, 0x0f, 0x21, 0x74, 0x33, 0x95, 0x62, 0xe6, 0x76, 0x8b, 0x93, + 0x34, 0xa1, 0xb0, 0x40, 0x29, 0x61, 0x16, 0xbf, 0x09, 0x23, 0x5d, 0x57, 0xec, 0x64, 0xe0, 0x13, + 0xbc, 0xe7, 0x66, 0xab, 0xf3, 0x88, 0xce, 0xc1, 0xc9, 0x96, 0x5a, 0x6f, 0x7a, 0x89, 0x2a, 0x16, + 0xab, 0xbe, 0x1b, 0x20, 0x7e, 0x1b, 0x46, 0xfb, 0x6f, 0x70, 0x1c, 0xff, 0xad, 0x40, 0x68, 0x32, + 0x1a, 0x4c, 0xfd, 0x0c, 0xc0, 0xa9, 0xee, 0xcc, 0x40, 0x05, 0x38, 0x69, 0x30, 0xdc, 0xa0, 0x31, + 0xd1, 0x64, 0xaf, 0x8d, 0x9d, 0x57, 0xb2, 0xf0, 0x47, 0xcb, 0x30, 0x28, 0xe6, 0xea, 0x98, 0x8f, + 0x23, 0xc5, 0xfa, 0x90, 0x72, 0x8e, 0x92, 0x1f, 0xb0, 0x6b, 0x97, 0x7a, 0x02, 0xa7, 0x37, 0x78, + 0x2f, 0x3c, 0xf9, 0x38, 0xb1, 0x00, 0xa3, 0x55, 0xd5, 0xa8, 0x2b, 0x46, 0xb5, 0xd3, 0x33, 0x79, + 0x3d, 0x87, 0xe4, 0x19, 0x47, 0xbe, 0x59, 0xf5, 0x7a, 0xe1, 0xe2, 0x47, 0x00, 0xcf, 0x0f, 0x9c, + 0x20, 0x50, 0x1c, 0xce, 0x15, 0x72, 0x65, 0x45, 0x2e, 0x3d, 0x50, 0xf2, 0x45, 0xf9, 0x5e, 0xb6, + 0xac, 0x6c, 0xe4, 0xf2, 0xd9, 0x9d, 0xed, 0x72, 0x74, 0x02, 0x7d, 0x03, 0xce, 0xf7, 0xe9, 0xf2, + 0x45, 0x59, 0x59, 0x97, 0x73, 0xd9, 0x72, 0x2e, 0x0a, 0x50, 0x02, 0xc6, 0x07, 0xa8, 0xe5, 0xdc, + 0x83, 0xed, 0xec, 0x7a, 0x2e, 0xea, 0x43, 0xf3, 0xf0, 0x7c, 0x9f, 0xbe, 0x54, 0xce, 0x96, 0x77, + 0x4a, 0x51, 0x3f, 0xba, 0x00, 0xbf, 0xd6, 0xa7, 0x92, 0x73, 0xd9, 0x8d, 0x68, 0x00, 0x5d, 0x86, + 0xc9, 0x63, 0x8a, 0x7c, 0x4e, 0x96, 0x37, 0xef, 0x17, 0x94, 0xe2, 0xda, 0x56, 0x6e, 0xbd, 0x5c, + 0x8a, 0x4e, 0x0e, 0xb0, 0x5a, 0x93, 0x8b, 0x77, 0x73, 0xf7, 0x85, 0x71, 0xee, 0xfe, 0x7a, 0xae, + 0x14, 0x0d, 0xae, 0x1c, 0x42, 0xe8, 0xcf, 0x3e, 0xd8, 0x44, 0xff, 0x01, 0x30, 0x28, 0x26, 0x1a, + 0x34, 0xe6, 0xe8, 0x13, 0xcf, 0x8c, 0x6c, 0xef, 0x8e, 0x88, 0xbf, 0x02, 0xed, 0xbf, 0xc6, 0xf2, + 0x2d, 0x4c, 0xd3, 0x86, 0x95, 0x36, 0xcc, 0x2a, 0x51, 0x29, 0x23, 0x4d, 0x8d, 0x35, 0x09, 0x4e, + 0xef, 0x12, 0x83, 0xe1, 0xa5, 0xea, 0x77, 0x9e, 0x6a, 0x69, 0xdd, 0xa4, 0xe9, 0x8a, 0x4a, 0x0d, + 0x2d, 0xdd, 0xa4, 0x98, 0x7c, 0x92, 0x51, 0xa6, 0x9a, 0xba, 0x4a, 0x74, 0x2e, 0x7e, 0xf6, 0x8f, + 0x7f, 0x3e, 0xf7, 0xdd, 0x49, 0xad, 0xba, 0xef, 0xae, 0x99, 0x4e, 0x32, 0xd0, 0xcc, 0x4f, 0xbc, + 0x6e, 0x21, 0x75, 0x84, 0xfb, 0xc7, 0xdf, 0x02, 0xe9, 0x2a, 0x58, 0x44, 0xff, 0x06, 0xd0, 0x5f, + 0xc0, 0x0c, 0x5d, 0x1d, 0x6d, 0xc4, 0x14, 0xbc, 0x97, 0xc6, 0x99, 0x47, 0x53, 0xcf, 0xc1, 0xab, + 0xbf, 0xf8, 0x1c, 0xe2, 0x77, 0x07, 0x13, 0x27, 0x58, 0xd5, 0xfb, 0x79, 0x37, 0x2c, 0xd3, 0x60, + 0xd6, 0x20, 0xea, 0xae, 0x86, 0xb3, 0x5f, 0x45, 0x37, 0x06, 0xb1, 0xff, 0x22, 0x69, 0xa1, 0xde, + 0x47, 0x1f, 0x01, 0x0c, 0x38, 0xe5, 0x8a, 0x96, 0x46, 0xac, 0x6a, 0x41, 0x3d, 0x3d, 0x56, 0x0f, + 0x48, 0xfd, 0xfc, 0x2b, 0xe3, 0x7e, 0x1d, 0x5d, 0x1b, 0x9b, 0x3b, 0xfa, 0xa5, 0x0f, 0x9e, 0x71, + 0x67, 0x6d, 0x34, 0xee, 0x54, 0x1e, 0x5f, 0x1e, 0xdd, 0xa1, 0xf3, 0x46, 0x74, 0xca, 0xe9, 0x5e, + 0x8c, 0x6f, 0x9d, 0x3c, 0xdd, 0xfb, 0xec, 0xf6, 0x9d, 0xf4, 0x7f, 0x0b, 0x60, 0x50, 0xf4, 0xd9, + 0x11, 0x8a, 0xbf, 0xa7, 0x21, 0xc7, 0xe7, 0x24, 0xf1, 0xc1, 0x46, 0xf2, 0x3e, 0xd8, 0x48, 0xb9, + 0x86, 0xcd, 0xf6, 0x52, 0xbf, 0x38, 0x6d, 0xd2, 0xb7, 0x16, 0x4f, 0x9c, 0xe5, 0xab, 0x60, 0x31, + 0x6e, 0xbc, 0x3c, 0x00, 0xbe, 0xbf, 0x1f, 0x80, 0x2b, 0xc3, 0xe8, 0x89, 0xbf, 0xe5, 0x37, 0x07, + 0x00, 0xb4, 0x0f, 0xc0, 0xd2, 0x38, 0x7f, 0xe5, 0xcf, 0xfe, 0x16, 0xf3, 0xbf, 0x00, 0x60, 0xed, + 0x37, 0xe0, 0xf5, 0xed, 0xc9, 0x75, 0x79, 0x67, 0x63, 0xfb, 0xf0, 0x5d, 0x62, 0xe2, 0xcd, 0xbb, + 0xc4, 0xc4, 0x87, 0x77, 0x09, 0xf0, 0xd3, 0x76, 0x02, 0xfc, 0xa9, 0x9d, 0x00, 0xaf, 0xda, 0x09, + 0x70, 0xd8, 0x4e, 0x80, 0xb7, 0xed, 0x04, 0x78, 0xdf, 0x4e, 0x4c, 0x7c, 0x68, 0x27, 0xc0, 0xaf, + 0x8f, 0x12, 0x13, 0x2f, 0x8f, 0x12, 0xe0, 0xf0, 0x28, 0x31, 0xf1, 0xe6, 0x28, 0x31, 0xf1, 0xc3, + 0x9d, 0x9a, 0x65, 0x3f, 0xa9, 0x49, 0x2d, 0xcb, 0x99, 0x9d, 0x89, 0x2a, 0x35, 0x69, 0x86, 0x3f, + 0x38, 0xaf, 0x93, 0x69, 0x9b, 0x58, 0x2d, 0x43, 0xc7, 0x24, 0xed, 0xa9, 0x33, 0x76, 0xa5, 0x66, + 0x65, 0xf0, 0x53, 0xe6, 0x7e, 0x44, 0xfa, 0xdc, 0x07, 0xaf, 0x4a, 0x90, 0x5f, 0xd2, 0xf5, 0xff, + 0x05, 0x00, 0x00, 0xff, 0xff, 0x76, 0x02, 0xb8, 0x47, 0x09, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/dns_load_balancer/public_crudapi.vesapi.go b/pbgo/extschema/schema/dns_load_balancer/public_crudapi.vesapi.go index 0538a5a9f..e99cd3340 100644 --- a/pbgo/extschema/schema/dns_load_balancer/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dns_load_balancer/public_crudapi.vesapi.go @@ -2485,27 +2485,45 @@ var APISwaggerJSON string = `{ "title": "DNS Load Balancing Rule", "x-displayname": "Load Balancing Rule", "x-ves-oneof-field-action_choice": "[\"pool\"]", - "x-ves-oneof-field-client_choice": "[\"asn_list\",\"geo_location_label_selector\",\"geo_location_set\"]", + "x-ves-oneof-field-client_choice": "[\"asn_list\",\"asn_matcher\",\"geo_location_label_selector\",\"geo_location_set\",\"ip_prefix_list\",\"ip_prefix_set\"]", "x-ves-proto-message": "ves.io.schema.dns_load_balancer.LoadBalancingRule", "properties": { "asn_list": { - "description": "Exclusive with [geo_location_label_selector geo_location_set]\n List of 4-byte ASN values.\n The rule evaluates to true if the origin ASN is present in the ASN list.", + "description": "Exclusive with [asn_matcher geo_location_label_selector geo_location_set ip_prefix_list ip_prefix_set]\n List of 4-byte ASN values.\n The rule evaluates to true if the origin ASN is present in the ASN list.", "title": "asn list", "$ref": "#/definitions/policyAsnMatchList", "x-displayname": "ASN List" }, + "asn_matcher": { + "description": "Exclusive with [asn_list geo_location_label_selector geo_location_set ip_prefix_list ip_prefix_set]\n List of references to BGP ASN Set objects.\n The rule evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.", + "title": "asn matcher", + "$ref": "#/definitions/policyAsnMatcherType", + "x-displayname": "BGP ASN Sets" + }, "geo_location_label_selector": { - "description": "Exclusive with [asn_list geo_location_set]\n A label selector that decsribes the expected set of geo-geo_locations for the clients. The selected geo_locations are matched\n with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.", + "description": "Exclusive with [asn_list asn_matcher geo_location_set ip_prefix_list ip_prefix_set]\n A label selector that describes the expected set of geo locations for the clients. The selected geo locations are matched\n with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.", "title": "geo_location label selector", "$ref": "#/definitions/schemaLabelSelectorType", "x-displayname": "Geo Locations by label selector" }, "geo_location_set": { - "description": "Exclusive with [asn_list geo_location_label_selector]\n Select the pre-defined geo location set. The selected locations in the geo location set are matched\n with the translated geo locations derived from incoming EDNS-S0 client-subnet in the DNS request.", + "description": "Exclusive with [asn_list asn_matcher geo_location_label_selector ip_prefix_list ip_prefix_set]\n Select the pre-defined geo location set. The selected locations in the geo location set are matched\n with the translated geo locations derived from incoming EDNS0 client-subnet in the DNS request.", "title": "geo_location selector", "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Geo Location Set selector" }, + "ip_prefix_list": { + "description": "Exclusive with [asn_list asn_matcher geo_location_label_selector geo_location_set ip_prefix_set]\n List of IP Prefix values.\n The rule evaluates to true if the EDNS0 client subnet is covered by one or more of the IP prefixes in the\n IP Prefix list.", + "title": "IP prefix list", + "$ref": "#/definitions/policyPrefixMatchList", + "x-displayname": "IP Prefix List" + }, + "ip_prefix_set": { + "description": "Exclusive with [asn_list asn_matcher geo_location_label_selector geo_location_set ip_prefix_list]\n List of references to IP Prefix Set objects.\n The rule evaluates to true if the EDNS0 client subnet is covered by one or more of the IP prefixes in the\n IP Prefix set.", + "title": "IP prefix set", + "$ref": "#/definitions/policyIpMatcherType", + "x-displayname": "IP Prefix Sets" + }, "pool": { "description": "Exclusive with []\n Use this pool for the Load Balancing.", "title": "use pool", @@ -2736,14 +2754,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -2765,15 +2783,105 @@ var APISwaggerJSON string = `{ }, "policyAsnMatcherType": { "type": "object", - "description": "x-displayName: \"ASN Matcher\"\nMatch any AS number contained in the list of bgp_asn_sets.", + "description": "Match any AS number contained in the list of bgp_asn_sets.", "title": "asn matcher type", + "x-displayname": "ASN Matcher", + "x-ves-proto-message": "ves.io.schema.policy.AsnMatcherType", "properties": { "asn_sets": { "type": "array", - "description": "x-displayName: \"BGP ASN Sets\"\nx-required\nA list of references to bgp_asn_set objects.", + "description": " A list of references to bgp_asn_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", "title": "asn_sets", + "maxItems": 4, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "BGP ASN Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" + } + } + } + }, + "policyIpMatcherType": { + "type": "object", + "description": "Match any ip prefix contained in the list of ip_prefix_sets.\nThe result of the match is inverted if invert_matcher is true.", + "title": "ip matcher type", + "x-displayname": "IP Prefix Matcher", + "x-ves-proto-message": "ves.io.schema.policy.IpMatcherType", + "properties": { + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert IP Matcher" + }, + "prefix_sets": { + "type": "array", + "description": " A list of references to ip_prefix_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", + "title": "prefix_sets", + "maxItems": 4, "items": { "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "IP Prefix Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" + } + } + } + }, + "policyPrefixMatchList": { + "type": "object", + "description": "List of IP Prefix strings to match against.", + "title": "IP Prefix Match List", + "x-displayname": "IP Prefix Match List", + "x-ves-proto-message": "ves.io.schema.policy.PrefixMatchList", + "properties": { + "invert_match": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Match Result" + }, + "ip_prefixes": { + "type": "array", + "description": " List of IPv4 prefix strings.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ip prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Prefix List", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "ipv6_prefixes": { + "type": "array", + "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv6 prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Prefix List", + "x-ves-example": "fd48:fa09:d9d4::/48", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" } } } @@ -2966,10 +3074,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3026,10 +3138,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3088,10 +3204,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_load_balancer/public_custom_data_api.pb.go b/pbgo/extschema/schema/dns_load_balancer/public_custom_data_api.pb.go index f8424d3f9..1da710a93 100644 --- a/pbgo/extschema/schema/dns_load_balancer/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/dns_load_balancer/public_custom_data_api.pb.go @@ -910,114 +910,114 @@ func init() { } var fileDescriptor_fe61b9267aedb241 = []byte{ - // 1697 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcb, 0x93, 0xdb, 0x48, - 0x19, 0x1f, 0x79, 0xf2, 0x60, 0x7a, 0x32, 0x89, 0x46, 0x6c, 0x36, 0x1e, 0x25, 0x6b, 0xb4, 0xa6, - 0x80, 0x90, 0xc5, 0x36, 0x0c, 0xcb, 0x81, 0xad, 0x6c, 0x82, 0xc7, 0xd6, 0x8c, 0x45, 0x3c, 0x9a, - 0x59, 0x4b, 0x5e, 0x92, 0x40, 0x4a, 0xb4, 0xa5, 0xb6, 0x2d, 0xc6, 0x52, 0x7b, 0xbb, 0x5b, 0x93, - 0x99, 0xa2, 0xc4, 0x63, 0x0b, 0xaa, 0x38, 0x01, 0x55, 0x14, 0x07, 0x28, 0x4e, 0x3a, 0x71, 0xe3, - 0x4a, 0xd5, 0x5e, 0xb6, 0xa8, 0xa2, 0xc8, 0x89, 0x4a, 0xc1, 0x65, 0x8b, 0x0b, 0x64, 0xc2, 0x81, - 0xe3, 0xf2, 0x1f, 0x6c, 0xa9, 0x25, 0x3b, 0x7e, 0x4d, 0xc6, 0x93, 0xec, 0xc9, 0x52, 0x7f, 0xcf, - 0xdf, 0xef, 0xfb, 0xba, 0xdb, 0x9f, 0xc0, 0xcd, 0x7d, 0x44, 0x8b, 0x2e, 0x2e, 0x51, 0xbb, 0x8b, - 0x3c, 0x58, 0x72, 0x7c, 0x6a, 0xf5, 0x30, 0x74, 0xac, 0x16, 0xec, 0x41, 0xdf, 0x46, 0xa4, 0xd4, - 0x0f, 0x5a, 0x3d, 0xd7, 0xb6, 0xec, 0x80, 0x32, 0xec, 0x59, 0x0e, 0x64, 0xd0, 0x82, 0x7d, 0xb7, - 0xd8, 0x27, 0x98, 0x61, 0xe9, 0x73, 0x89, 0x75, 0x31, 0xb1, 0x2e, 0x4e, 0x59, 0xcb, 0x85, 0x8e, - 0xcb, 0xba, 0x41, 0xab, 0x68, 0x63, 0xaf, 0xd4, 0xc1, 0x1d, 0x5c, 0xe2, 0x76, 0xad, 0xa0, 0xcd, - 0xdf, 0xf8, 0x0b, 0x7f, 0x4a, 0xfc, 0xc9, 0xd7, 0x3a, 0x18, 0x77, 0x7a, 0xa8, 0x04, 0xfb, 0x6e, - 0x09, 0xfa, 0x3e, 0x66, 0x90, 0xb9, 0xd8, 0xa7, 0xa9, 0xf4, 0xea, 0x78, 0xae, 0xb8, 0x3f, 0x2a, - 0x5c, 0x1b, 0x17, 0xb2, 0xc3, 0x3e, 0x1a, 0x88, 0xae, 0x8d, 0x8b, 0xf6, 0x61, 0xcf, 0x75, 0x20, - 0x43, 0xa9, 0x34, 0x3f, 0x21, 0x45, 0x14, 0xf9, 0xfb, 0xe3, 0xce, 0xf3, 0x37, 0xc1, 0xb5, 0xaa, - 0x6e, 0xd4, 0x37, 0x6a, 0x08, 0xf6, 0x58, 0xd7, 0x60, 0x90, 0x05, 0xb4, 0xee, 0x52, 0xd6, 0x40, - 0xef, 0x05, 0x88, 0x32, 0xe9, 0x1a, 0x58, 0xf2, 0xa1, 0x87, 0x68, 0x1f, 0xda, 0x28, 0x2b, 0x28, - 0xc2, 0xf5, 0xa5, 0xc6, 0xb3, 0x85, 0xfc, 0x21, 0x78, 0xed, 0x18, 0x6b, 0xda, 0xc7, 0x3e, 0x45, - 0xd2, 0x5d, 0x70, 0xd6, 0x65, 0xc8, 0xa3, 0x59, 0x41, 0x59, 0xbc, 0xbe, 0xbc, 0xbe, 0x51, 0x3c, - 0x81, 0xd6, 0xe2, 0x73, 0xdd, 0x69, 0x0c, 0x79, 0x8d, 0xc4, 0x61, 0xbe, 0x0e, 0xb2, 0x53, 0xba, - 0x73, 0x25, 0x2d, 0x49, 0xe0, 0x4c, 0xfc, 0x92, 0xcd, 0x70, 0x01, 0x7f, 0xce, 0xff, 0x45, 0x00, - 0x6b, 0x33, 0xdc, 0xa5, 0x28, 0xd6, 0xc1, 0x39, 0xca, 0x57, 0x52, 0x18, 0xf2, 0x04, 0x8c, 0x6d, - 0xc4, 0x88, 0x6b, 0xbf, 0x0b, 0x7b, 0x01, 0x6a, 0xa4, 0x9a, 0xd2, 0x7b, 0x60, 0x95, 0xa3, 0x6b, - 0x59, 0x7d, 0x8c, 0x7b, 0x56, 0xc2, 0x42, 0x86, 0x9b, 0x6f, 0xce, 0xc7, 0xc2, 0x2e, 0xc6, 0xbd, - 0xe7, 0x32, 0x71, 0xd1, 0xf1, 0x69, 0xbd, 0x15, 0xab, 0x69, 0x9c, 0x92, 0x9f, 0x0b, 0x69, 0x31, - 0x27, 0x2d, 0xe7, 0xe3, 0x25, 0x07, 0x96, 0xd3, 0x8c, 0x47, 0xe8, 0x59, 0xe2, 0x31, 0x74, 0xe8, - 0x21, 0xe9, 0x4b, 0x40, 0x1c, 0x45, 0xc4, 0x95, 0x16, 0xb9, 0xd2, 0xca, 0x30, 0x91, 0x58, 0x31, - 0xff, 0x2f, 0x21, 0x6d, 0x8b, 0xe9, 0x3c, 0x5e, 0x82, 0xd0, 0x9f, 0x09, 0x20, 0x3b, 0x1a, 0xdf, - 0x43, 0x5e, 0x0b, 0x91, 0x31, 0x62, 0xeb, 0xf3, 0x13, 0xbb, 0xcd, 0xad, 0x9f, 0x4b, 0xef, 0x2b, - 0x43, 0x54, 0x89, 0x72, 0x42, 0xf2, 0xbf, 0x05, 0xf0, 0xfa, 0x89, 0x4d, 0x3a, 0xec, 0x31, 0xe1, - 0x59, 0x8f, 0x8d, 0x80, 0xce, 0xcc, 0x0d, 0x9a, 0x80, 0xab, 0x23, 0x98, 0xa9, 0x95, 0x2c, 0x5b, - 0x34, 0xf0, 0x3c, 0x48, 0x0e, 0xb3, 0x8b, 0xdc, 0xd1, 0x9b, 0x27, 0xc2, 0x1e, 0xcd, 0xd5, 0x48, - 0x6c, 0x1b, 0x57, 0x86, 0xf0, 0xe8, 0x98, 0x20, 0xff, 0x87, 0x0c, 0xf8, 0xc2, 0x5c, 0x0d, 0xf8, - 0xa9, 0xa1, 0xfc, 0x31, 0xc8, 0x4f, 0x57, 0xf6, 0x53, 0x05, 0xfb, 0xda, 0x44, 0x2d, 0xc7, 0x21, - 0x4b, 0x37, 0xc0, 0x6a, 0x97, 0x5b, 0x59, 0x76, 0x17, 0xd9, 0x7b, 0x56, 0x7c, 0xc6, 0x66, 0xcf, - 0x70, 0x54, 0x97, 0x12, 0x41, 0x25, 0x5e, 0x37, 0x0f, 0xfb, 0x28, 0xff, 0xbb, 0x0c, 0x78, 0xe3, - 0x14, 0x6d, 0x34, 0x93, 0xa4, 0x99, 0xf1, 0x32, 0x33, 0xe3, 0x8d, 0x10, 0xba, 0x38, 0x37, 0xa1, - 0x1a, 0x00, 0x88, 0x10, 0x4c, 0x2c, 0x1b, 0x3b, 0x09, 0x90, 0x8b, 0xeb, 0x37, 0x4e, 0x24, 0x4e, - 0x8d, 0x4d, 0x2a, 0xd8, 0x41, 0x8d, 0x25, 0x34, 0x78, 0x94, 0xde, 0x00, 0xab, 0x89, 0x2b, 0x07, - 0x51, 0x9b, 0xb8, 0xfc, 0xf2, 0xc8, 0x9e, 0xe5, 0xa9, 0x8a, 0x5c, 0x50, 0x7d, 0xb6, 0x9e, 0xff, - 0xa5, 0x00, 0x3e, 0x3b, 0x83, 0x7e, 0x49, 0x1d, 0xd9, 0xef, 0x71, 0x2e, 0x85, 0x53, 0x15, 0x71, - 0x08, 0xeb, 0xab, 0xe0, 0xac, 0x8d, 0x03, 0x9f, 0xcd, 0xd1, 0x5a, 0x89, 0xe2, 0x8d, 0xff, 0x2f, - 0x83, 0xa5, 0x21, 0x2c, 0x69, 0x0d, 0x9c, 0x57, 0x1b, 0x0d, 0x4b, 0xd7, 0xea, 0xe2, 0x82, 0x7c, - 0x21, 0x0a, 0x97, 0xc0, 0x79, 0x23, 0xb0, 0x6d, 0x44, 0xa9, 0xf4, 0x3a, 0x58, 0x89, 0x45, 0x4d, - 0xbd, 0xaa, 0x6e, 0x6a, 0xba, 0x5a, 0x15, 0x05, 0xf9, 0x62, 0x14, 0x2e, 0x83, 0xa5, 0xa6, 0xef, - 0xa0, 0xb6, 0xeb, 0x23, 0x47, 0x72, 0xc1, 0xd5, 0x58, 0xa5, 0xa1, 0x56, 0x54, 0xed, 0x5d, 0xd5, - 0x32, 0xcc, 0x86, 0xa6, 0x6f, 0x59, 0xdb, 0x9a, 0xb1, 0x5d, 0x36, 0x2b, 0x35, 0x31, 0x23, 0xd7, - 0xa2, 0x50, 0x05, 0x95, 0x06, 0xb2, 0x91, 0xbb, 0x8f, 0x1c, 0x85, 0x32, 0xe2, 0xfa, 0x1d, 0xc5, - 0x71, 0x1d, 0xc5, 0xc7, 0x4c, 0xf1, 0x20, 0xb3, 0xbb, 0x8a, 0x8d, 0xfd, 0xb6, 0xdb, 0x09, 0x08, - 0x72, 0x94, 0xfd, 0x38, 0x51, 0xa5, 0x8d, 0x89, 0xc2, 0xba, 0x48, 0x49, 0xca, 0xae, 0xf0, 0x7e, - 0x90, 0xbe, 0x0b, 0x2e, 0xc4, 0xa1, 0x34, 0xdd, 0x54, 0x1b, 0x7a, 0xb9, 0x2e, 0x2e, 0xca, 0x5a, - 0x14, 0x6e, 0x82, 0xaa, 0xea, 0x73, 0x58, 0x28, 0x36, 0x77, 0xe3, 0x5f, 0x1f, 0xf6, 0x14, 0x5e, - 0x05, 0xee, 0x67, 0xd4, 0x87, 0xd2, 0x26, 0xd8, 0x53, 0x20, 0x53, 0x7a, 0x08, 0x52, 0xa6, 0x60, - 0x1f, 0x29, 0x04, 0x75, 0x5c, 0xec, 0x4b, 0x76, 0xe2, 0x7c, 0xdb, 0xd8, 0xb2, 0x0c, 0x55, 0xaf, - 0x8a, 0x67, 0xe4, 0x77, 0xa2, 0x50, 0x07, 0x75, 0xce, 0x93, 0x82, 0xc6, 0x42, 0x28, 0x14, 0xf9, - 0x4e, 0x8c, 0x02, 0x8e, 0x3b, 0x27, 0xc9, 0x8d, 0x72, 0x7c, 0x10, 0x07, 0x2c, 0xc7, 0x41, 0x4c, - 0x6d, 0x5b, 0xdd, 0x69, 0x9a, 0xe2, 0x59, 0xd9, 0x88, 0xc2, 0x5d, 0xa0, 0x9b, 0xae, 0x87, 0x70, - 0xc0, 0x94, 0x87, 0xd0, 0x65, 0xb1, 0xdb, 0x38, 0x6b, 0x92, 0xee, 0x96, 0x69, 0x08, 0x27, 0x46, - 0x71, 0xc1, 0xa5, 0x01, 0x94, 0xb4, 0x2c, 0xe2, 0x39, 0xd9, 0x8c, 0xc2, 0x77, 0xc0, 0xce, 0x4c, - 0x34, 0x84, 0xd7, 0x66, 0x26, 0x9e, 0x41, 0x0e, 0xc7, 0x85, 0x3a, 0x00, 0x97, 0x79, 0xa8, 0xf2, - 0xdd, 0x61, 0x07, 0x6c, 0xdc, 0x33, 0x55, 0x43, 0x3c, 0x2f, 0x3f, 0x88, 0xc2, 0xfb, 0xe0, 0xae, - 0x7a, 0x60, 0x23, 0xe4, 0x20, 0x47, 0xf1, 0xe0, 0x41, 0xa1, 0x75, 0xc8, 0x10, 0x55, 0xae, 0x7f, - 0x6d, 0x7b, 0xe3, 0xcb, 0xe3, 0x18, 0xc9, 0xa0, 0x3b, 0xe6, 0xaf, 0xd7, 0x83, 0xa4, 0x35, 0xb5, - 0xca, 0xf6, 0xae, 0xb5, 0xab, 0xe9, 0x5b, 0xe2, 0x67, 0xe4, 0x6f, 0x47, 0xe1, 0x16, 0x50, 0xe3, - 0x15, 0xa5, 0xcf, 0x69, 0x84, 0x6e, 0x2f, 0x20, 0x68, 0x7e, 0xa7, 0x0a, 0x41, 0xd0, 0x51, 0x3c, - 0x4c, 0x90, 0xd4, 0x01, 0xaf, 0xc6, 0xee, 0x2b, 0x3b, 0xba, 0xae, 0x56, 0x4c, 0x6d, 0x47, 0xb7, - 0x1a, 0xea, 0x66, 0xd3, 0x50, 0xab, 0xe2, 0x92, 0x7c, 0x27, 0x0a, 0x6b, 0x60, 0xb3, 0x82, 0x7d, - 0x1f, 0xd9, 0x2c, 0x31, 0x6b, 0x07, 0xf4, 0x34, 0xd9, 0x8f, 0x04, 0x7a, 0x30, 0x15, 0xa8, 0xbc, - 0xb1, 0xd3, 0x30, 0xd5, 0xaa, 0x08, 0xe4, 0x72, 0x14, 0xde, 0x02, 0x37, 0x47, 0x02, 0xc1, 0x16, - 0x26, 0xec, 0x54, 0x34, 0xdd, 0x03, 0xaf, 0x4c, 0xe1, 0x30, 0x54, 0x53, 0x5c, 0x96, 0x6f, 0x47, - 0xe1, 0x4d, 0xf0, 0xd6, 0x18, 0x0a, 0x8a, 0xd8, 0x29, 0x5c, 0x7f, 0x2f, 0x71, 0xad, 0xab, 0xa6, - 0xd5, 0x8c, 0xdd, 0x96, 0x2b, 0xb5, 0xf2, 0x46, 0x5d, 0x15, 0x2f, 0xc8, 0x1b, 0x51, 0x78, 0x1b, - 0xbc, 0xad, 0x23, 0xf6, 0x10, 0x93, 0x3d, 0x25, 0xf0, 0x09, 0x82, 0x76, 0x17, 0xb6, 0x7a, 0xa7, - 0x28, 0x85, 0x74, 0x3f, 0xe9, 0xac, 0xda, 0x8e, 0x31, 0xe1, 0x7e, 0x25, 0xcd, 0xbc, 0x86, 0x29, - 0x7b, 0x41, 0xdf, 0x9f, 0x4f, 0xb6, 0x61, 0x53, 0xbf, 0xa3, 0xef, 0x7c, 0x47, 0x17, 0x2f, 0xca, - 0x52, 0x14, 0x5e, 0x02, 0x2b, 0x4d, 0x7f, 0xcf, 0xc7, 0x0f, 0xfd, 0xe4, 0xe8, 0x90, 0xf6, 0xc0, - 0x1a, 0xdf, 0xab, 0x75, 0xc3, 0xaa, 0x95, 0xf5, 0xaa, 0x51, 0x2b, 0xdf, 0x51, 0xad, 0xcd, 0xb2, - 0x56, 0x6f, 0x36, 0x54, 0x51, 0x94, 0xeb, 0x51, 0xa8, 0x81, 0x2d, 0xb3, 0x6e, 0x28, 0x5d, 0xe8, - 0x3b, 0xb4, 0x0b, 0xf7, 0xd0, 0xf1, 0x0d, 0x77, 0xe2, 0x96, 0xfd, 0x3e, 0xb8, 0x32, 0x51, 0xa6, - 0xf8, 0x8c, 0xa8, 0xc6, 0x87, 0xc4, 0xaa, 0x5c, 0x89, 0xc2, 0x6f, 0x81, 0x5b, 0x23, 0x95, 0x62, - 0xae, 0x87, 0x1c, 0x25, 0x3e, 0x31, 0xe6, 0xc6, 0x7c, 0xe3, 0x47, 0xe0, 0xc2, 0xe8, 0xed, 0x21, - 0x5d, 0x05, 0x57, 0x6a, 0x6a, 0xb9, 0x6e, 0xd6, 0x2c, 0xc3, 0x2c, 0x9b, 0x4d, 0xc3, 0x6a, 0xea, - 0xc9, 0xfb, 0x3d, 0x71, 0x41, 0x92, 0xc1, 0xab, 0xe3, 0xc2, 0xaa, 0xba, 0xd5, 0x28, 0x57, 0xe3, - 0x0b, 0x40, 0x5a, 0x03, 0x97, 0xc7, 0x65, 0x03, 0xb3, 0xcc, 0x0c, 0x33, 0xcd, 0x88, 0x6b, 0x56, - 0x15, 0x17, 0xd7, 0xff, 0x7a, 0x1e, 0xac, 0x54, 0xf8, 0x50, 0x59, 0x85, 0x0c, 0x96, 0x77, 0x35, - 0xe9, 0xf7, 0x19, 0x70, 0x79, 0xe6, 0x7f, 0x46, 0xe9, 0xed, 0x17, 0x1d, 0x88, 0x38, 0xcb, 0xf2, - 0xad, 0x97, 0x9b, 0xa7, 0xf2, 0x3f, 0x15, 0x1e, 0xfd, 0x39, 0x23, 0x1c, 0xfd, 0x2d, 0xbb, 0xbe, - 0x8f, 0x68, 0xc1, 0xc5, 0x05, 0xd7, 0x6f, 0x13, 0x48, 0x19, 0x09, 0x6c, 0x16, 0x10, 0x54, 0x88, - 0x37, 0xef, 0x57, 0x94, 0xf6, 0x37, 0x0e, 0xec, 0x82, 0xe3, 0xd3, 0x42, 0x0b, 0x52, 0xd7, 0x2e, - 0x78, 0xd8, 0x77, 0x19, 0x26, 0xef, 0xff, 0xf3, 0xbf, 0xbf, 0xc9, 0x94, 0xa5, 0xdb, 0xe9, 0x1c, - 0x5d, 0x1a, 0x0e, 0x12, 0xb4, 0xf4, 0xc3, 0xe1, 0x73, 0x38, 0x3d, 0x77, 0xd3, 0x52, 0xfa, 0xd7, - 0x27, 0xbd, 0xd4, 0x7f, 0x9b, 0x01, 0xab, 0x53, 0x59, 0x4a, 0xdf, 0x3c, 0x3d, 0xb2, 0x01, 0x29, - 0x6f, 0xbd, 0x88, 0x69, 0x4a, 0xc8, 0x2f, 0x5e, 0x96, 0x90, 0x9a, 0xb4, 0x79, 0x7a, 0x42, 0xb8, - 0x38, 0x9c, 0xe0, 0xe5, 0xd1, 0xa0, 0x69, 0x26, 0xff, 0x86, 0xcf, 0xdb, 0x34, 0xc7, 0x4c, 0x81, - 0xf3, 0x36, 0xcd, 0x71, 0xc3, 0x5b, 0xfe, 0x4f, 0x2f, 0xcb, 0x11, 0x96, 0xbc, 0x17, 0xe0, 0x68, - 0x64, 0x36, 0x4d, 0x15, 0xd2, 0xa1, 0x68, 0x28, 0x1a, 0x8e, 0xa5, 0x13, 0x54, 0xca, 0x6f, 0x7e, - 0xf8, 0x81, 0xb0, 0xf8, 0x8f, 0x0f, 0x84, 0x2f, 0x9e, 0x04, 0x7c, 0xa7, 0xf5, 0x03, 0x64, 0xb3, - 0xf7, 0xff, 0x9e, 0xcd, 0x64, 0x85, 0x8d, 0x5f, 0x09, 0x8f, 0x9f, 0xe4, 0x16, 0x3e, 0x7a, 0x92, - 0x5b, 0xf8, 0xf8, 0x49, 0x4e, 0xf8, 0xc9, 0x51, 0x4e, 0xf8, 0xe3, 0x51, 0x4e, 0x78, 0x74, 0x94, - 0x13, 0x1e, 0x1f, 0xe5, 0x84, 0xff, 0x1c, 0xe5, 0x84, 0xff, 0x1d, 0xe5, 0x16, 0x3e, 0x3e, 0xca, - 0x09, 0xbf, 0x7e, 0x9a, 0x5b, 0xf8, 0xf0, 0x69, 0x4e, 0x78, 0xfc, 0x34, 0xb7, 0xf0, 0xd1, 0xd3, - 0xdc, 0xc2, 0xfd, 0x66, 0x07, 0xf7, 0xf7, 0x3a, 0xc5, 0x7d, 0xdc, 0x63, 0x88, 0x10, 0x58, 0x0c, - 0x68, 0x89, 0x3f, 0xb4, 0x31, 0xf1, 0x0a, 0x7d, 0x82, 0xf7, 0x5d, 0x07, 0x91, 0xc2, 0x40, 0x5c, - 0xea, 0xb7, 0x3a, 0xb8, 0x84, 0x0e, 0x58, 0xfa, 0xa1, 0xe6, 0xb8, 0x2f, 0x56, 0xad, 0x73, 0xfc, - 0x9b, 0xcd, 0xd7, 0x3f, 0x09, 0x00, 0x00, 0xff, 0xff, 0xf7, 0xe4, 0x24, 0xba, 0xdb, 0x12, 0x00, - 0x00, + // 1708 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x8f, 0xdb, 0x58, + 0x1d, 0x1f, 0x67, 0xfa, 0x63, 0xe7, 0x4d, 0xa7, 0xf5, 0x98, 0xed, 0x36, 0xe3, 0x76, 0x83, 0x37, + 0x08, 0x28, 0x5d, 0x92, 0x40, 0x59, 0x0e, 0xac, 0xba, 0x2d, 0x99, 0xc4, 0x33, 0x31, 0x4d, 0x3c, + 0xb3, 0xb1, 0xb3, 0xb4, 0x85, 0xca, 0xbc, 0xd8, 0x2f, 0x89, 0x99, 0xd8, 0x2f, 0xfb, 0xde, 0xf3, + 0x74, 0x46, 0xc8, 0x80, 0x56, 0x70, 0x05, 0x24, 0x24, 0x24, 0xa4, 0x3d, 0x85, 0x0b, 0x47, 0x2e, + 0x48, 0x48, 0x7b, 0x59, 0x71, 0x61, 0xc5, 0x01, 0x55, 0x70, 0x59, 0x71, 0x81, 0xce, 0x70, 0xe0, + 0xb8, 0xfc, 0x07, 0xc8, 0xcf, 0x4e, 0x9a, 0x5f, 0xd3, 0x49, 0xba, 0xdb, 0x53, 0xec, 0xf7, 0xfd, + 0xf9, 0xf9, 0x7c, 0xbf, 0xef, 0xbd, 0x7c, 0x0d, 0x6e, 0xed, 0x23, 0x9a, 0x77, 0x71, 0x81, 0xda, + 0x1d, 0xe4, 0xc1, 0x82, 0xe3, 0x53, 0xab, 0x8b, 0xa1, 0x63, 0x35, 0x61, 0x17, 0xfa, 0x36, 0x22, + 0x85, 0x5e, 0xd0, 0xec, 0xba, 0xb6, 0x65, 0x07, 0x94, 0x61, 0xcf, 0x72, 0x20, 0x83, 0x16, 0xec, + 0xb9, 0xf9, 0x1e, 0xc1, 0x0c, 0x4b, 0x9f, 0x8f, 0xad, 0xf3, 0xb1, 0x75, 0x7e, 0xca, 0x5a, 0xce, + 0xb5, 0x5d, 0xd6, 0x09, 0x9a, 0x79, 0x1b, 0x7b, 0x85, 0x36, 0x6e, 0xe3, 0x02, 0xb7, 0x6b, 0x06, + 0x2d, 0xfe, 0xc6, 0x5f, 0xf8, 0x53, 0xec, 0x4f, 0xbe, 0xd6, 0xc6, 0xb8, 0xdd, 0x45, 0x05, 0xd8, + 0x73, 0x0b, 0xd0, 0xf7, 0x31, 0x83, 0xcc, 0xc5, 0x3e, 0x4d, 0xa4, 0x57, 0xc7, 0x73, 0xc5, 0xbd, + 0x51, 0xe1, 0xc6, 0xb8, 0x90, 0x1d, 0xf6, 0xd0, 0x40, 0x74, 0x6d, 0x5c, 0xb4, 0x0f, 0xbb, 0xae, + 0x03, 0x19, 0x4a, 0xa4, 0xd9, 0x09, 0x29, 0xa2, 0xc8, 0xdf, 0x1f, 0x77, 0x9e, 0xbd, 0x05, 0xae, + 0x95, 0x75, 0xa3, 0xba, 0x59, 0x41, 0xb0, 0xcb, 0x3a, 0x06, 0x83, 0x2c, 0xa0, 0x55, 0x97, 0xb2, + 0x3a, 0x7a, 0x37, 0x40, 0x94, 0x49, 0xd7, 0xc0, 0x8a, 0x0f, 0x3d, 0x44, 0x7b, 0xd0, 0x46, 0x69, + 0x41, 0x11, 0xae, 0xaf, 0xd4, 0x9f, 0x2e, 0x64, 0x0f, 0xc1, 0xab, 0x27, 0x58, 0xd3, 0x1e, 0xf6, + 0x29, 0x92, 0xee, 0x81, 0xb3, 0x2e, 0x43, 0x1e, 0x4d, 0x0b, 0xca, 0xf2, 0xf5, 0xd5, 0x9b, 0x9b, + 0xf9, 0x53, 0x68, 0xcd, 0x3f, 0xd3, 0x9d, 0xc6, 0x90, 0x57, 0x8f, 0x1d, 0x66, 0xab, 0x20, 0x3d, + 0xa5, 0x3b, 0x57, 0xd2, 0x92, 0x04, 0xce, 0x44, 0x2f, 0xe9, 0x14, 0x17, 0xf0, 0xe7, 0xec, 0x9f, + 0x05, 0xb0, 0x31, 0xc3, 0x5d, 0x82, 0xe2, 0x26, 0x38, 0x47, 0xf9, 0x4a, 0x02, 0x43, 0x9e, 0x80, + 0x51, 0x43, 0x8c, 0xb8, 0xf6, 0x3b, 0xb0, 0x1b, 0xa0, 0x7a, 0xa2, 0x29, 0xbd, 0x0b, 0xd6, 0x39, + 0xba, 0xa6, 0xd5, 0xc3, 0xb8, 0x6b, 0xc5, 0x2c, 0xa4, 0xb8, 0xf9, 0xd6, 0x7c, 0x2c, 0xec, 0x62, + 0xdc, 0x7d, 0x26, 0x13, 0x17, 0x1d, 0x9f, 0x56, 0x9b, 0x91, 0x9a, 0xc6, 0x29, 0xf9, 0xb9, 0x90, + 0x14, 0x73, 0xd2, 0x72, 0x3e, 0x5e, 0x32, 0x60, 0x35, 0xc9, 0x78, 0x84, 0x9e, 0x15, 0x1e, 0x43, + 0x87, 0x1e, 0x92, 0xbe, 0x0c, 0xc4, 0x51, 0x44, 0x5c, 0x69, 0x99, 0x2b, 0xad, 0x0d, 0x13, 0x89, + 0x14, 0xb3, 0xff, 0x14, 0x92, 0xb6, 0x98, 0xce, 0xe3, 0x53, 0x10, 0xfa, 0x33, 0x01, 0xa4, 0x47, + 0xe3, 0x7b, 0xc8, 0x6b, 0x22, 0x32, 0x46, 0x6c, 0x75, 0x7e, 0x62, 0x6b, 0xdc, 0xfa, 0x99, 0xf4, + 0xbe, 0x3c, 0x44, 0x15, 0x2b, 0xc7, 0x24, 0xff, 0x4b, 0x00, 0xaf, 0x9d, 0xda, 0xa4, 0xc3, 0x1e, + 0x13, 0x9e, 0xf6, 0xd8, 0x08, 0xe8, 0xd4, 0xdc, 0xa0, 0x09, 0xb8, 0x3a, 0x82, 0x99, 0x5a, 0xf1, + 0xb2, 0x45, 0x03, 0xcf, 0x83, 0xe4, 0x30, 0xbd, 0xcc, 0x1d, 0xbd, 0x71, 0x2a, 0xec, 0xd1, 0x5c, + 0x8d, 0xd8, 0xb6, 0x7e, 0x65, 0x08, 0x8f, 0x8e, 0x09, 0xb2, 0xef, 0xa7, 0xc0, 0x17, 0xe7, 0x6a, + 0xc0, 0xcf, 0x0c, 0xe5, 0x4f, 0x40, 0x76, 0xba, 0xb2, 0x9f, 0x29, 0xd8, 0x57, 0x27, 0x6a, 0x39, + 0x0e, 0x59, 0xba, 0x01, 0xd6, 0x3b, 0xdc, 0xca, 0xb2, 0x3b, 0xc8, 0xde, 0xb3, 0xa2, 0x33, 0x36, + 0x7d, 0x86, 0xa3, 0xba, 0x14, 0x0b, 0x4a, 0xd1, 0xba, 0x79, 0xd8, 0x43, 0xd9, 0xdf, 0xa6, 0xc0, + 0xeb, 0x0b, 0xb4, 0xd1, 0x4c, 0x92, 0x66, 0xc6, 0x4b, 0xcd, 0x8c, 0x37, 0x42, 0xe8, 0xf2, 0xdc, + 0x84, 0x6a, 0x00, 0x20, 0x42, 0x30, 0xb1, 0x6c, 0xec, 0xc4, 0x40, 0x2e, 0xde, 0xbc, 0x71, 0x2a, + 0x71, 0x6a, 0x64, 0x52, 0xc2, 0x0e, 0xaa, 0xaf, 0xa0, 0xc1, 0xa3, 0xf4, 0x3a, 0x58, 0x8f, 0x5d, + 0x39, 0x88, 0xda, 0xc4, 0xe5, 0x97, 0x47, 0xfa, 0x2c, 0x4f, 0x55, 0xe4, 0x82, 0xf2, 0xd3, 0xf5, + 0xec, 0x2f, 0x04, 0xf0, 0xb9, 0x19, 0xf4, 0x4b, 0xea, 0xc8, 0x7e, 0x8f, 0x72, 0xc9, 0x2d, 0x54, + 0xc4, 0x21, 0xac, 0xaf, 0x81, 0xb3, 0x36, 0x0e, 0x7c, 0x36, 0x47, 0x6b, 0xc5, 0x8a, 0x37, 0xfe, + 0xb7, 0x0a, 0x56, 0x86, 0xb0, 0xa4, 0x0d, 0x70, 0x5e, 0xad, 0xd7, 0x2d, 0x5d, 0xab, 0x8a, 0x4b, + 0xf2, 0x85, 0x7e, 0xb8, 0x02, 0xce, 0x1b, 0x81, 0x6d, 0x23, 0x4a, 0xa5, 0xd7, 0xc0, 0x5a, 0x24, + 0x6a, 0xe8, 0x65, 0x75, 0x4b, 0xd3, 0xd5, 0xb2, 0x28, 0xc8, 0x17, 0xfb, 0xe1, 0x2a, 0x58, 0x69, + 0xf8, 0x0e, 0x6a, 0xb9, 0x3e, 0x72, 0x24, 0x17, 0x5c, 0x8d, 0x54, 0xea, 0x6a, 0x49, 0xd5, 0xde, + 0x51, 0x2d, 0xc3, 0xac, 0x6b, 0xfa, 0xb6, 0x55, 0xd3, 0x8c, 0x5a, 0xd1, 0x2c, 0x55, 0xc4, 0x94, + 0x5c, 0xe9, 0x87, 0x2a, 0x28, 0xd5, 0x91, 0x8d, 0xdc, 0x7d, 0xe4, 0x28, 0x94, 0x11, 0xd7, 0x6f, + 0x2b, 0x8e, 0xeb, 0x28, 0x3e, 0x66, 0x8a, 0x07, 0x99, 0xdd, 0x51, 0x6c, 0xec, 0xb7, 0xdc, 0x76, + 0x40, 0x90, 0xa3, 0xec, 0x47, 0x89, 0x2a, 0x2d, 0x4c, 0x14, 0xd6, 0x41, 0x4a, 0x5c, 0x76, 0x85, + 0xf7, 0x83, 0xf4, 0x3d, 0x70, 0x21, 0x0a, 0xa5, 0xe9, 0xa6, 0x5a, 0xd7, 0x8b, 0x55, 0x71, 0x59, + 0xd6, 0xfa, 0xe1, 0x16, 0x28, 0xab, 0x3e, 0x87, 0x85, 0x22, 0x73, 0x37, 0xfa, 0xf5, 0x61, 0x57, + 0xe1, 0x55, 0xe0, 0x7e, 0x46, 0x7d, 0x28, 0x2d, 0x82, 0x3d, 0x05, 0x32, 0xa5, 0x8b, 0x20, 0x65, + 0x0a, 0xf6, 0x91, 0x42, 0x50, 0xdb, 0xc5, 0xbe, 0x64, 0xc7, 0xce, 0x6b, 0xc6, 0xb6, 0x65, 0xa8, + 0x7a, 0x59, 0x3c, 0x23, 0xbf, 0xdd, 0x0f, 0x75, 0x50, 0xe5, 0x3c, 0x29, 0x68, 0x2c, 0x84, 0x42, + 0x91, 0xef, 0x44, 0x28, 0xe0, 0xb8, 0x73, 0x12, 0xdf, 0x28, 0x27, 0x07, 0x71, 0xc0, 0x6a, 0x14, + 0xc4, 0xd4, 0x6a, 0xea, 0x4e, 0xc3, 0x14, 0xcf, 0xca, 0x46, 0x3f, 0xdc, 0x05, 0xba, 0xe9, 0x7a, + 0x08, 0x07, 0x4c, 0x79, 0x04, 0x5d, 0x16, 0xb9, 0x8d, 0xb2, 0x26, 0xc9, 0x6e, 0x99, 0x86, 0x70, + 0x6a, 0x14, 0x17, 0x5c, 0x1a, 0x40, 0x49, 0xca, 0x22, 0x9e, 0x93, 0xcd, 0x7e, 0xf8, 0x36, 0xd8, + 0x99, 0x89, 0x86, 0xf0, 0xda, 0xcc, 0xc4, 0x33, 0xc8, 0xe1, 0xa4, 0x50, 0x07, 0xe0, 0x32, 0x0f, + 0x55, 0xbc, 0x37, 0xec, 0x80, 0xcd, 0xfb, 0xa6, 0x6a, 0x88, 0xe7, 0xe5, 0x87, 0xfd, 0xf0, 0x01, + 0xb8, 0xa7, 0x1e, 0xd8, 0x08, 0x39, 0xc8, 0x51, 0x3c, 0x78, 0x90, 0x6b, 0x1e, 0x32, 0x44, 0x95, + 0xeb, 0x5f, 0xaf, 0x6d, 0x7e, 0x65, 0x1c, 0x23, 0x19, 0x74, 0xc7, 0xfc, 0xf5, 0x7a, 0x18, 0xb7, + 0xa6, 0x56, 0xaa, 0xed, 0x5a, 0xbb, 0x9a, 0xbe, 0x2d, 0xbe, 0x24, 0x7f, 0xa7, 0x1f, 0x6e, 0x03, + 0x35, 0x5a, 0x51, 0x7a, 0x9c, 0x46, 0xe8, 0x76, 0x03, 0x82, 0xe6, 0x77, 0xaa, 0x10, 0x04, 0x1d, + 0xc5, 0xc3, 0x04, 0x49, 0x6d, 0xf0, 0x4a, 0xe4, 0xbe, 0xb4, 0xa3, 0xeb, 0x6a, 0xc9, 0xd4, 0x76, + 0x74, 0xab, 0xae, 0x6e, 0x35, 0x0c, 0xb5, 0x2c, 0xae, 0xc8, 0x77, 0xfb, 0x61, 0x05, 0x6c, 0x95, + 0xb0, 0xef, 0x23, 0x9b, 0xc5, 0x66, 0xad, 0x80, 0x2e, 0x92, 0xfd, 0x48, 0xa0, 0x87, 0x53, 0x81, + 0x8a, 0x9b, 0x3b, 0x75, 0x53, 0x2d, 0x8b, 0x40, 0x2e, 0xf6, 0xc3, 0xdb, 0xe0, 0xd6, 0x48, 0x20, + 0xd8, 0xc4, 0x84, 0x2d, 0x44, 0xd3, 0x7d, 0xf0, 0xf2, 0x14, 0x0e, 0x43, 0x35, 0xc5, 0x55, 0xf9, + 0x4e, 0x3f, 0xbc, 0x05, 0xde, 0x1c, 0x43, 0x41, 0x11, 0x5b, 0xc0, 0xf5, 0xf7, 0x63, 0xd7, 0xba, + 0x6a, 0x5a, 0x8d, 0xc8, 0x6d, 0xb1, 0x54, 0x29, 0x6e, 0x56, 0x55, 0xf1, 0x82, 0xbc, 0xd9, 0x0f, + 0xef, 0x80, 0xb7, 0x74, 0xc4, 0x1e, 0x61, 0xb2, 0xa7, 0x04, 0x3e, 0x41, 0xd0, 0xee, 0xc0, 0x66, + 0x77, 0x81, 0x52, 0x48, 0x0f, 0xe2, 0xce, 0xaa, 0xec, 0x18, 0x13, 0xee, 0xd7, 0x92, 0xcc, 0x2b, + 0x98, 0xb2, 0xe7, 0xf4, 0xfd, 0x85, 0x78, 0x1b, 0x36, 0xf4, 0xbb, 0xfa, 0xce, 0x77, 0x75, 0xf1, + 0xa2, 0x2c, 0xf5, 0xc3, 0x4b, 0x60, 0xad, 0xe1, 0xef, 0xf9, 0xf8, 0x91, 0x1f, 0x1f, 0x1d, 0xd2, + 0x1e, 0xd8, 0xe0, 0x7b, 0xb5, 0x6a, 0x58, 0x95, 0xa2, 0x5e, 0x36, 0x2a, 0xc5, 0xbb, 0xaa, 0xb5, + 0x55, 0xd4, 0xaa, 0x8d, 0xba, 0x2a, 0x8a, 0x72, 0xb5, 0x1f, 0x6a, 0x60, 0xdb, 0xac, 0x1a, 0x4a, + 0x07, 0xfa, 0x0e, 0xed, 0xc0, 0x3d, 0x74, 0x72, 0xc3, 0x9d, 0xba, 0x65, 0x7f, 0x00, 0xae, 0x4c, + 0x94, 0x29, 0x3a, 0x23, 0xca, 0xd1, 0x21, 0xb1, 0x2e, 0x97, 0xfa, 0xe1, 0xb7, 0xc1, 0xed, 0x91, + 0x4a, 0x31, 0xd7, 0x43, 0x8e, 0x12, 0x9d, 0x18, 0x73, 0x63, 0xbe, 0xf1, 0x63, 0x70, 0x61, 0xf4, + 0xf6, 0x90, 0xae, 0x82, 0x2b, 0x15, 0xb5, 0x58, 0x35, 0x2b, 0x96, 0x61, 0x16, 0xcd, 0x86, 0x61, + 0x35, 0xf4, 0xf8, 0xfd, 0xbe, 0xb8, 0x24, 0xc9, 0xe0, 0x95, 0x71, 0x61, 0x59, 0xdd, 0xae, 0x17, + 0xcb, 0xd1, 0x05, 0x20, 0x6d, 0x80, 0xcb, 0xe3, 0xb2, 0x81, 0x59, 0x6a, 0x86, 0x99, 0x66, 0x44, + 0x35, 0x2b, 0x8b, 0xcb, 0x37, 0x7f, 0xf3, 0x12, 0x58, 0x2b, 0xf1, 0xa1, 0xb2, 0x0c, 0x19, 0x2c, + 0xee, 0x6a, 0xd2, 0x1f, 0x53, 0xe0, 0xf2, 0xcc, 0xff, 0x8c, 0xd2, 0x5b, 0xcf, 0x3b, 0x10, 0x71, + 0x96, 0xe5, 0xdb, 0x9f, 0x6e, 0x9e, 0xca, 0xbe, 0x2f, 0x7c, 0xf4, 0xa7, 0x94, 0x70, 0xf4, 0x97, + 0x74, 0x6d, 0x1f, 0xd1, 0x9c, 0x8b, 0x73, 0xae, 0xdf, 0x22, 0x90, 0x32, 0x12, 0xd8, 0x2c, 0x20, + 0x28, 0x17, 0x6d, 0xde, 0xaf, 0x2a, 0xad, 0x6f, 0x1e, 0xd8, 0x39, 0xc7, 0xa7, 0xb9, 0x26, 0xa4, + 0xae, 0x9d, 0xf3, 0xb0, 0xef, 0x32, 0x4c, 0x46, 0xd6, 0x29, 0x83, 0xbe, 0x03, 0x89, 0x33, 0x10, + 0xbd, 0xf7, 0x8f, 0xff, 0xfc, 0x3a, 0x55, 0x94, 0xee, 0x24, 0x23, 0x76, 0x61, 0x38, 0x63, 0xd0, + 0xc2, 0x8f, 0x86, 0xcf, 0xe1, 0xf4, 0x48, 0x4e, 0x0b, 0xc9, 0xbf, 0xa2, 0xe4, 0xbe, 0xff, 0x43, + 0x0a, 0xac, 0x4f, 0x01, 0x90, 0xbe, 0xb5, 0x38, 0xe8, 0x01, 0x5f, 0x6f, 0x3e, 0x8f, 0x69, 0xc2, + 0xd5, 0xef, 0x5e, 0x20, 0x57, 0x15, 0x69, 0x6b, 0x71, 0xae, 0xb8, 0x38, 0x9c, 0xa0, 0xec, 0x78, + 0xd0, 0x6a, 0x93, 0x7f, 0xde, 0xe7, 0x6d, 0xb5, 0x13, 0x66, 0xc7, 0x79, 0x5b, 0xed, 0xa4, 0x91, + 0x2f, 0xfb, 0xd7, 0x17, 0x48, 0x1f, 0x96, 0xbc, 0xe7, 0xa0, 0x6f, 0x64, 0xd8, 0x4d, 0x14, 0x92, + 0x29, 0x6b, 0x28, 0x1a, 0xce, 0xb9, 0x13, 0x2c, 0xcb, 0x6f, 0x7c, 0xf8, 0x81, 0xb0, 0xfc, 0xf7, + 0x0f, 0x84, 0x2f, 0x9d, 0xc6, 0xc9, 0x4e, 0xf3, 0x87, 0xc8, 0x66, 0xef, 0xfd, 0x2d, 0x9d, 0x4a, + 0x0b, 0x9b, 0xbf, 0x14, 0x1e, 0x3f, 0xc9, 0x2c, 0x7d, 0xfc, 0x24, 0xb3, 0xf4, 0xc9, 0x93, 0x8c, + 0xf0, 0xd3, 0xa3, 0x8c, 0xf0, 0xfb, 0xa3, 0x8c, 0xf0, 0xd1, 0x51, 0x46, 0x78, 0x7c, 0x94, 0x11, + 0xfe, 0x7d, 0x94, 0x11, 0xfe, 0x7b, 0x94, 0x59, 0xfa, 0xe4, 0x28, 0x23, 0xfc, 0xea, 0x38, 0xb3, + 0xf4, 0xe1, 0x71, 0x46, 0x78, 0x7c, 0x9c, 0x59, 0xfa, 0xf8, 0x38, 0xb3, 0xf4, 0xa0, 0xd1, 0xc6, + 0xbd, 0xbd, 0x76, 0x7e, 0x1f, 0x77, 0x19, 0x22, 0x04, 0xe6, 0x03, 0x5a, 0xe0, 0x0f, 0x2d, 0x4c, + 0xbc, 0x5c, 0x8f, 0xe0, 0x7d, 0xd7, 0x41, 0x24, 0x37, 0x10, 0x17, 0x7a, 0xcd, 0x36, 0x2e, 0xa0, + 0x03, 0x96, 0x7c, 0xf9, 0x39, 0xe9, 0x13, 0x58, 0xf3, 0x1c, 0xff, 0x08, 0xf4, 0x8d, 0xff, 0x07, + 0x00, 0x00, 0xff, 0xff, 0x42, 0x7f, 0xd2, 0xee, 0x2c, 0x13, 0x00, 0x00, } func (x ErrorCode) String() string { diff --git a/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.go b/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.go index 956593518..6dddf2949 100644 --- a/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.go +++ b/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.go @@ -306,54 +306,54 @@ func init() { } var fileDescriptor_e168a2f9e9350934 = []byte{ - // 738 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0x3f, 0x6f, 0xfb, 0x44, - 0x18, 0xce, 0x25, 0xbf, 0x1f, 0x6a, 0x2e, 0x05, 0x15, 0x8b, 0xc1, 0x84, 0xe2, 0x46, 0x41, 0x42, - 0xe5, 0x8f, 0x6d, 0x11, 0x54, 0x90, 0xba, 0xa0, 0x06, 0x06, 0xca, 0x42, 0x65, 0xfe, 0x48, 0xb0, - 0x58, 0x67, 0xfb, 0xb5, 0x73, 0x60, 0xfb, 0xdc, 0xbb, 0xb3, 0xdb, 0xb0, 0x50, 0xf5, 0x0b, 0x80, - 0xc4, 0x17, 0x60, 0x84, 0x6f, 0x80, 0x28, 0x43, 0x99, 0xe8, 0x84, 0x2a, 0x58, 0x3a, 0x52, 0x87, - 0x01, 0xb6, 0x6e, 0xac, 0x28, 0x67, 0x37, 0x4d, 0xd2, 0x56, 0x85, 0xed, 0xee, 0x9e, 0xf7, 0x79, - 0xde, 0xe7, 0xde, 0x7b, 0xdf, 0xc3, 0x6f, 0x14, 0x20, 0x2c, 0xca, 0x6c, 0xe1, 0x8f, 0x20, 0x21, - 0x76, 0x90, 0x0a, 0x37, 0x66, 0x24, 0x70, 0x3d, 0x12, 0x93, 0xd4, 0x07, 0x6e, 0x67, 0xb9, 0x17, - 0x53, 0xdf, 0xf5, 0x73, 0x21, 0x59, 0x42, 0x32, 0x6a, 0x65, 0x9c, 0x49, 0xa6, 0x6d, 0x54, 0x3c, - 0xab, 0xe2, 0x59, 0xb7, 0x78, 0x5d, 0x33, 0xa2, 0x72, 0x94, 0x7b, 0x96, 0xcf, 0x12, 0x3b, 0x62, - 0x11, 0xb3, 0x15, 0xcf, 0xcb, 0x43, 0xb5, 0x53, 0x1b, 0xb5, 0xaa, 0xf4, 0xba, 0xeb, 0x11, 0x63, - 0x51, 0x0c, 0x36, 0xc9, 0xa8, 0x4d, 0xd2, 0x94, 0x49, 0x22, 0x29, 0x4b, 0x45, 0x8d, 0x3e, 0x5b, - 0xa3, 0x33, 0x0d, 0x92, 0x8e, 0x97, 0x88, 0x33, 0x48, 0x48, 0x9e, 0xfb, 0xb2, 0x46, 0x5f, 0xb8, - 0x7d, 0xbd, 0x2f, 0x58, 0x0a, 0x36, 0xf3, 0x3e, 0x83, 0x59, 0x50, 0xff, 0x9e, 0x20, 0x39, 0xce, - 0xe0, 0xda, 0xc1, 0x73, 0x8b, 0x31, 0x2c, 0x5b, 0xb0, 0xb7, 0x08, 0xce, 0xf3, 0xd6, 0x17, 0xa1, - 0x82, 0xc4, 0x34, 0x20, 0x12, 0xee, 0xce, 0x5c, 0x80, 0x80, 0xb4, 0x58, 0x12, 0xef, 0x2d, 0xc5, - 0x50, 0x38, 0x70, 0x17, 0x23, 0x36, 0x6e, 0x47, 0x88, 0x79, 0x13, 0xfd, 0x9f, 0x11, 0x5e, 0xfb, - 0x20, 0x8f, 0x22, 0x10, 0xf2, 0x63, 0x12, 0xe7, 0x20, 0x1c, 0xd8, 0xd7, 0xd6, 0x71, 0x3b, 0x25, - 0x09, 0x88, 0x8c, 0xf8, 0xa0, 0xa3, 0x1e, 0xda, 0x6c, 0x3b, 0x37, 0x07, 0xda, 0x4b, 0x18, 0x87, - 0x14, 0xe2, 0xc0, 0xcd, 0x88, 0x1c, 0xe9, 0xcd, 0x29, 0x3c, 0xc4, 0x3f, 0xfe, 0x7d, 0xda, 0x7a, - 0xcc, 0x5b, 0xfa, 0xd1, 0x8a, 0xd3, 0x56, 0xe8, 0x1e, 0x91, 0x23, 0xed, 0x4d, 0xbc, 0xca, 0x61, - 0x3f, 0x07, 0x21, 0x5d, 0x8f, 0x05, 0x63, 0xbd, 0xd5, 0x43, 0x9b, 0x9d, 0xc1, 0x33, 0x56, 0xf5, - 0x30, 0xd6, 0xf5, 0xc3, 0x58, 0x3b, 0xe9, 0xd8, 0xe9, 0xd4, 0x91, 0x43, 0x16, 0x8c, 0xb5, 0x57, - 0x70, 0x27, 0x21, 0xd2, 0x1f, 0xb9, 0xc5, 0xd4, 0x94, 0xfe, 0x68, 0x29, 0x49, 0xd3, 0xc1, 0x0a, - 0x56, 0x96, 0xfb, 0xdf, 0x23, 0xfc, 0x64, 0x7d, 0x07, 0x08, 0x76, 0x25, 0x24, 0xda, 0xf3, 0xb8, - 0x2d, 0x24, 0xaf, 0xc9, 0xd3, 0xa4, 0xed, 0x77, 0x1b, 0xce, 0x8a, 0x90, 0x5c, 0x11, 0xb4, 0x1d, - 0xdc, 0xe6, 0x10, 0xce, 0x69, 0x77, 0x06, 0x7d, 0x6b, 0xb1, 0x6b, 0x55, 0xa5, 0xac, 0xf7, 0x55, - 0x2f, 0x38, 0x10, 0x7e, 0x38, 0xce, 0x60, 0x2a, 0xc1, 0x21, 0xac, 0x24, 0x7a, 0xb8, 0x13, 0x80, - 0xf0, 0x39, 0x55, 0xe5, 0xae, 0xaa, 0xe0, 0xcc, 0x1f, 0x0d, 0x9f, 0xc2, 0xab, 0x2a, 0x81, 0xeb, - 0x8f, 0x18, 0xf5, 0xe1, 0xbd, 0x47, 0x2b, 0x68, 0xad, 0xd9, 0xff, 0x04, 0x3f, 0xbd, 0x54, 0x6e, - 0x91, 0x69, 0xef, 0xe0, 0xc7, 0x54, 0x42, 0x22, 0x74, 0xd4, 0x6b, 0x6d, 0x76, 0x06, 0x96, 0xf5, - 0xc0, 0x04, 0x59, 0x0b, 0xb7, 0x75, 0x2a, 0xf2, 0xe0, 0xa7, 0x26, 0x6e, 0xbf, 0xad, 0x66, 0x71, - 0x67, 0x6f, 0x57, 0xfb, 0xe7, 0xa6, 0x28, 0x55, 0x26, 0xed, 0xb5, 0xff, 0x2a, 0x3b, 0x6b, 0x84, - 0xee, 0xe0, 0xff, 0x52, 0x44, 0xd6, 0xff, 0xf2, 0xec, 0x87, 0x26, 0x2a, 0x7f, 0xd1, 0x07, 0x05, - 0x08, 0x93, 0x32, 0x93, 0xa6, 0x21, 0x27, 0xd5, 0xe4, 0xe5, 0x1c, 0xcc, 0x03, 0x4e, 0x25, 0xbc, - 0x1a, 0x6e, 0x1d, 0xfa, 0x66, 0x90, 0x0a, 0xd3, 0x23, 0x82, 0xfa, 0x66, 0xc2, 0x52, 0x2a, 0x19, - 0x3f, 0xfe, 0xfd, 0xcf, 0x6f, 0x9a, 0x6f, 0xf5, 0xb7, 0xeb, 0x9f, 0xc5, 0x9e, 0xf5, 0x9c, 0xb0, - 0xc5, 0x58, 0x48, 0x48, 0xee, 0xf8, 0x84, 0x44, 0x65, 0xc0, 0x54, 0xb5, 0x16, 0xdb, 0xe8, 0xe5, - 0xee, 0xd6, 0xe9, 0x09, 0x6a, 0xfd, 0x76, 0x82, 0x5e, 0x7c, 0xc8, 0x7b, 0xf5, 0xba, 0xc7, 0xbf, - 0xea, 0xad, 0x6f, 0x11, 0x1a, 0x7e, 0x85, 0xce, 0x2f, 0x8d, 0xc6, 0xc5, 0xa5, 0xd1, 0xb8, 0xba, - 0x34, 0xd0, 0x51, 0x69, 0xa0, 0xef, 0x4a, 0x03, 0x9d, 0x95, 0x06, 0x3a, 0x2f, 0x0d, 0xf4, 0x47, - 0x69, 0xa0, 0xbf, 0x4a, 0xa3, 0x71, 0x55, 0x1a, 0xe8, 0xeb, 0x89, 0xd1, 0x38, 0x9d, 0x18, 0xe8, - 0x7c, 0x62, 0x34, 0x2e, 0x26, 0x46, 0xe3, 0xd3, 0x8f, 0x22, 0x96, 0x7d, 0x1e, 0x59, 0x05, 0x8b, - 0x25, 0x70, 0x4e, 0xac, 0x5c, 0xd8, 0x6a, 0x11, 0x32, 0x9e, 0x98, 0x19, 0x67, 0x05, 0x0d, 0x80, - 0x9b, 0xd7, 0xb0, 0x9d, 0x79, 0x11, 0xb3, 0xe1, 0x50, 0xd6, 0x43, 0x79, 0xdf, 0xff, 0xea, 0x3d, - 0xa1, 0xe6, 0xe3, 0xf5, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x85, 0x12, 0xce, 0xaa, 0x89, 0x05, - 0x00, 0x00, + // 745 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0x3d, 0x6f, 0xfb, 0x44, + 0x18, 0xcf, 0x25, 0xff, 0x3f, 0x6a, 0x2e, 0x7f, 0x50, 0xb1, 0x18, 0x4c, 0x28, 0x6e, 0x14, 0x24, + 0x14, 0xa0, 0xb6, 0x45, 0x50, 0x41, 0x62, 0x6b, 0x60, 0xa0, 0x48, 0x88, 0xca, 0xbc, 0x48, 0xb0, + 0x58, 0x67, 0xfb, 0xb1, 0x73, 0x60, 0xfb, 0xdc, 0xbb, 0xb3, 0xdb, 0x30, 0x95, 0x4e, 0x6c, 0x20, + 0xf1, 0x05, 0x18, 0xe1, 0x1b, 0x20, 0xba, 0x94, 0x05, 0x3a, 0xa1, 0x0a, 0x96, 0x8e, 0xd4, 0x61, + 0x80, 0xad, 0x1f, 0x01, 0xe5, 0xec, 0x84, 0x24, 0xa5, 0x2a, 0x6c, 0xf6, 0xfd, 0x5e, 0x9e, 0x97, + 0x7b, 0x9e, 0xc3, 0xaf, 0x16, 0x20, 0x2c, 0xca, 0x6c, 0xe1, 0x8f, 0x21, 0x21, 0x76, 0x90, 0x0a, + 0x37, 0x66, 0x24, 0x70, 0x3d, 0x12, 0x93, 0xd4, 0x07, 0x6e, 0x67, 0xb9, 0x17, 0x53, 0xdf, 0xf5, + 0x73, 0x21, 0x59, 0x42, 0x32, 0x6a, 0x65, 0x9c, 0x49, 0xa6, 0x6d, 0x57, 0x3a, 0xab, 0xd2, 0x59, + 0xb7, 0x74, 0x5d, 0x33, 0xa2, 0x72, 0x9c, 0x7b, 0x96, 0xcf, 0x12, 0x3b, 0x62, 0x11, 0xb3, 0x95, + 0xce, 0xcb, 0x43, 0xf5, 0xa7, 0x7e, 0xd4, 0x57, 0xe5, 0xd7, 0xdd, 0x8a, 0x18, 0x8b, 0x62, 0xb0, + 0x49, 0x46, 0x6d, 0x92, 0xa6, 0x4c, 0x12, 0x49, 0x59, 0x2a, 0x6a, 0xf4, 0xe9, 0x1a, 0x5d, 0x78, + 0x90, 0x74, 0xb2, 0x26, 0x5c, 0x40, 0x42, 0xf2, 0xdc, 0x97, 0x35, 0xfa, 0xdc, 0xed, 0xf2, 0x3e, + 0x63, 0x29, 0xd8, 0xcc, 0xfb, 0x04, 0x16, 0xa4, 0xfe, 0x1d, 0x24, 0x39, 0xc9, 0x60, 0x9e, 0xc1, + 0x33, 0xab, 0x1c, 0x96, 0xad, 0xa4, 0xb7, 0x0a, 0x2e, 0xeb, 0xb6, 0x56, 0xa1, 0x82, 0xc4, 0x34, + 0x20, 0x12, 0xfe, 0x3d, 0x72, 0x01, 0x02, 0xd2, 0x62, 0xcd, 0xbc, 0xb7, 0xc6, 0xa1, 0x70, 0xe4, + 0xae, 0x32, 0xb6, 0x6f, 0x33, 0xc4, 0x72, 0x12, 0xfd, 0x1f, 0x11, 0xde, 0x7c, 0x2f, 0x8f, 0x22, + 0x10, 0xf2, 0x43, 0x12, 0xe7, 0x20, 0x1c, 0x38, 0xd4, 0xb6, 0x70, 0x3b, 0x25, 0x09, 0x88, 0x8c, + 0xf8, 0xa0, 0xa3, 0x1e, 0x1a, 0xb4, 0x9d, 0x7f, 0x0e, 0xb4, 0x17, 0x30, 0x0e, 0x29, 0xc4, 0x81, + 0x9b, 0x11, 0x39, 0xd6, 0x9b, 0x33, 0x78, 0x84, 0x7f, 0xf8, 0xeb, 0xbc, 0xf5, 0x90, 0xb7, 0xf4, + 0x93, 0x0d, 0xa7, 0xad, 0xd0, 0x03, 0x22, 0xc7, 0xda, 0x6b, 0xf8, 0x11, 0x87, 0xc3, 0x1c, 0x84, + 0x74, 0x3d, 0x16, 0x4c, 0xf4, 0x56, 0x0f, 0x0d, 0x3a, 0xc3, 0xa7, 0xac, 0xea, 0x62, 0xac, 0xf9, + 0xc5, 0x58, 0x7b, 0xe9, 0xc4, 0xe9, 0xd4, 0xcc, 0x11, 0x0b, 0x26, 0xda, 0x4b, 0xb8, 0x93, 0x10, + 0xe9, 0x8f, 0xdd, 0x62, 0x96, 0x94, 0xfe, 0x60, 0x2d, 0x48, 0xd3, 0xc1, 0x0a, 0x56, 0x29, 0xf7, + 0xbf, 0x43, 0xf8, 0xf1, 0xba, 0x06, 0x08, 0xf6, 0x25, 0x24, 0xda, 0xb3, 0xb8, 0x2d, 0x24, 0xaf, + 0xc5, 0xb3, 0xa0, 0xed, 0xb7, 0x1a, 0xce, 0x86, 0x90, 0x5c, 0x09, 0xb4, 0x3d, 0xdc, 0xe6, 0x10, + 0x2e, 0x79, 0x77, 0x86, 0x7d, 0x6b, 0x75, 0x6a, 0x55, 0xa7, 0xac, 0x77, 0xd5, 0x2c, 0x38, 0x10, + 0xbe, 0x3f, 0xc9, 0x60, 0x66, 0xc1, 0x21, 0xac, 0x2c, 0x7a, 0xb8, 0x13, 0x80, 0xf0, 0x39, 0x55, + 0xed, 0xae, 0xba, 0xe0, 0x2c, 0x1f, 0x8d, 0x9e, 0xc0, 0x8f, 0x54, 0x00, 0xd7, 0x1f, 0x33, 0xea, + 0xc3, 0xdb, 0x0f, 0x36, 0xd0, 0x66, 0xb3, 0xff, 0x11, 0x7e, 0x72, 0xad, 0xdd, 0x22, 0xd3, 0xde, + 0xc4, 0x0f, 0xa9, 0x84, 0x44, 0xe8, 0xa8, 0xd7, 0x1a, 0x74, 0x86, 0x96, 0x75, 0xcf, 0x06, 0x59, + 0x2b, 0xd5, 0x3a, 0x95, 0x78, 0xf8, 0x53, 0x13, 0xb7, 0xdf, 0x50, 0xbb, 0xb8, 0x77, 0xb0, 0xaf, + 0x7d, 0xde, 0x5c, 0x34, 0xa5, 0x8a, 0xa4, 0xbd, 0xfc, 0x5f, 0x6d, 0x17, 0x83, 0xd0, 0x1d, 0xfe, + 0x5f, 0x89, 0xc8, 0xfa, 0x5f, 0xa0, 0x8b, 0xef, 0x9b, 0xa8, 0xfc, 0x59, 0x7f, 0xa7, 0x00, 0x61, + 0x52, 0x66, 0xd2, 0x34, 0xe4, 0xa4, 0x5a, 0xbd, 0x9c, 0x83, 0x79, 0xc4, 0xa9, 0x84, 0x9d, 0x70, + 0xf7, 0xd8, 0x37, 0x83, 0x54, 0x98, 0x1e, 0x11, 0xd4, 0x37, 0x13, 0x96, 0x52, 0xc9, 0xf8, 0x4e, + 0x6f, 0x71, 0x2e, 0x24, 0x49, 0x03, 0xc2, 0x83, 0x39, 0x74, 0xfa, 0xdb, 0x1f, 0x5f, 0x37, 0xcd, + 0xfe, 0xa0, 0x7e, 0x75, 0xec, 0xc5, 0x3c, 0x0a, 0x5b, 0x4c, 0x84, 0x84, 0xc4, 0x16, 0x55, 0x2a, + 0xa6, 0xea, 0xba, 0x78, 0x1d, 0xbd, 0xd8, 0xdd, 0x3d, 0x3f, 0x43, 0xad, 0x5f, 0xcf, 0xd0, 0xf3, + 0xf7, 0x55, 0x51, 0xdd, 0xf3, 0xe9, 0x2f, 0x7a, 0xeb, 0x1b, 0x84, 0x46, 0x5f, 0xa2, 0xcb, 0x6b, + 0xa3, 0x71, 0x75, 0x6d, 0x34, 0x6e, 0xae, 0x0d, 0x74, 0x52, 0x1a, 0xe8, 0xdb, 0xd2, 0x40, 0x17, + 0xa5, 0x81, 0x2e, 0x4b, 0x03, 0xfd, 0x5e, 0x1a, 0xe8, 0xcf, 0xd2, 0x68, 0xdc, 0x94, 0x06, 0xfa, + 0x6a, 0x6a, 0x34, 0xce, 0xa7, 0x06, 0xba, 0x9c, 0x1a, 0x8d, 0xab, 0xa9, 0xd1, 0xf8, 0xf8, 0x83, + 0x88, 0x65, 0x9f, 0x46, 0x56, 0xc1, 0x62, 0x09, 0x9c, 0x13, 0x2b, 0x17, 0xb6, 0xfa, 0x08, 0x19, + 0x4f, 0xcc, 0x8c, 0xb3, 0x82, 0x06, 0xc0, 0xcd, 0x39, 0x6c, 0x67, 0x5e, 0xc4, 0x6c, 0x38, 0x96, + 0xf5, 0x7a, 0xde, 0xf5, 0xd2, 0x7a, 0x8f, 0xa9, 0x4d, 0x79, 0xe5, 0xef, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xb0, 0xad, 0x6c, 0xf3, 0x93, 0x05, 0x00, 0x00, } func (this *SuggestValuesReq) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.gw.go b/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.gw.go index 7d81f4c3a..e5aca1bba 100644 --- a/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.gw.go +++ b/pbgo/extschema/schema/dns_load_balancer/public_customapi.pb.gw.go @@ -152,7 +152,7 @@ func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, } var ( - pattern_CustomAPI_SuggestValues_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "dns_load_balancer", "suggest-values"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_CustomAPI_SuggestValues_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"public", "namespaces", "system", "suggest-values"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( diff --git a/pbgo/extschema/schema/dns_load_balancer/public_customapi.vesapi.go b/pbgo/extschema/schema/dns_load_balancer/public_customapi.vesapi.go index b86ea839f..a5cbd2b8e 100644 --- a/pbgo/extschema/schema/dns_load_balancer/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/dns_load_balancer/public_customapi.vesapi.go @@ -311,7 +311,7 @@ var CustomAPISwaggerJSON string = `{ ], "tags": [], "paths": { - "/public/namespaces/system/dns_load_balancer/suggest-values": { + "/public/namespaces/system/suggest-values": { "post": { "summary": "Suggest Values", "description": "SuggestValues returns suggested values for the specified field in the given Create/Replace/Custom request.", diff --git a/pbgo/extschema/schema/dns_load_balancer/types.pb.go b/pbgo/extschema/schema/dns_load_balancer/types.pb.go index a73c627c2..2da573f41 100644 --- a/pbgo/extschema/schema/dns_load_balancer/types.pb.go +++ b/pbgo/extschema/schema/dns_load_balancer/types.pb.go @@ -339,14 +339,16 @@ type LoadBalancingRule struct { // // x-displayName: "Client Selection" // x-required - // Selects the clients for which the DNS Load Balancing Rule will be applied. The conditions are limited to the geo location and ASN from - // where the client DNS request originates. This geo location or ASN is derived from the EDNS-S0 client subnet. + // Selects the clients for which the DNS Load Balancing Rule will be applied. The conditions are limited to the geo location, ASN, and IP prefix from + // where the client DNS request originates. This geo location, ASN, and IP prefix is derived from the EDNS0 client subnet. // // Types that are valid to be assigned to ClientChoice: // *LoadBalancingRule_GeoLocationLabelSelector // *LoadBalancingRule_GeoLocationSet // *LoadBalancingRule_AsnList // *LoadBalancingRule_AsnMatcher + // *LoadBalancingRule_IpPrefixList + // *LoadBalancingRule_IpPrefixSet ClientChoice isLoadBalancingRule_ClientChoice `protobuf_oneof:"client_choice"` // action choice // @@ -419,6 +421,12 @@ type LoadBalancingRule_AsnList struct { type LoadBalancingRule_AsnMatcher struct { AsnMatcher *policy.AsnMatcherType `protobuf:"bytes,9,opt,name=asn_matcher,json=asnMatcher,proto3,oneof" json:"asn_matcher,omitempty"` } +type LoadBalancingRule_IpPrefixList struct { + IpPrefixList *policy.PrefixMatchList `protobuf:"bytes,10,opt,name=ip_prefix_list,json=ipPrefixList,proto3,oneof" json:"ip_prefix_list,omitempty"` +} +type LoadBalancingRule_IpPrefixSet struct { + IpPrefixSet *policy.IpMatcherType `protobuf:"bytes,11,opt,name=ip_prefix_set,json=ipPrefixSet,proto3,oneof" json:"ip_prefix_set,omitempty"` +} type LoadBalancingRule_Pool struct { Pool *views.ObjectRefType `protobuf:"bytes,5,opt,name=pool,proto3,oneof" json:"pool,omitempty"` } @@ -430,6 +438,8 @@ func (*LoadBalancingRule_GeoLocationLabelSelector) isLoadBalancingRule_ClientCho func (*LoadBalancingRule_GeoLocationSet) isLoadBalancingRule_ClientChoice() {} func (*LoadBalancingRule_AsnList) isLoadBalancingRule_ClientChoice() {} func (*LoadBalancingRule_AsnMatcher) isLoadBalancingRule_ClientChoice() {} +func (*LoadBalancingRule_IpPrefixList) isLoadBalancingRule_ClientChoice() {} +func (*LoadBalancingRule_IpPrefixSet) isLoadBalancingRule_ClientChoice() {} func (*LoadBalancingRule_Pool) isLoadBalancingRule_ActionChoice() {} func (*LoadBalancingRule_Nxdomain) isLoadBalancingRule_ActionChoice() {} @@ -474,6 +484,20 @@ func (m *LoadBalancingRule) GetAsnMatcher() *policy.AsnMatcherType { return nil } +func (m *LoadBalancingRule) GetIpPrefixList() *policy.PrefixMatchList { + if x, ok := m.GetClientChoice().(*LoadBalancingRule_IpPrefixList); ok { + return x.IpPrefixList + } + return nil +} + +func (m *LoadBalancingRule) GetIpPrefixSet() *policy.IpMatcherType { + if x, ok := m.GetClientChoice().(*LoadBalancingRule_IpPrefixSet); ok { + return x.IpPrefixSet + } + return nil +} + func (m *LoadBalancingRule) GetPool() *views.ObjectRefType { if x, ok := m.GetActionChoice().(*LoadBalancingRule_Pool); ok { return x.Pool @@ -502,6 +526,8 @@ func (*LoadBalancingRule) XXX_OneofWrappers() []interface{} { (*LoadBalancingRule_GeoLocationSet)(nil), (*LoadBalancingRule_AsnList)(nil), (*LoadBalancingRule_AsnMatcher)(nil), + (*LoadBalancingRule_IpPrefixList)(nil), + (*LoadBalancingRule_IpPrefixSet)(nil), (*LoadBalancingRule_Pool)(nil), (*LoadBalancingRule_Nxdomain)(nil), } @@ -818,92 +844,101 @@ func init() { } var fileDescriptor_01361f944871c627 = []byte{ - // 1345 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0xcf, 0x6f, 0x13, 0xc7, - 0x17, 0xdf, 0xf1, 0xef, 0x3c, 0x63, 0xc7, 0x19, 0xf8, 0x2a, 0xc6, 0x7c, 0xb5, 0xec, 0xd7, 0xfa, - 0x56, 0x8a, 0x5c, 0x62, 0xa7, 0x4e, 0x48, 0x11, 0x95, 0xa0, 0x76, 0x8a, 0x12, 0x50, 0x12, 0xd0, - 0x1a, 0x5a, 0x4a, 0x0f, 0xab, 0xf1, 0x7a, 0xe2, 0x6c, 0x59, 0xef, 0xac, 0x76, 0xd7, 0x86, 0x54, - 0x4d, 0xc5, 0xb1, 0xea, 0x09, 0xd1, 0x5b, 0xff, 0x82, 0x8a, 0x63, 0x8f, 0xdd, 0x1c, 0x72, 0x68, - 0xa5, 0x8a, 0x53, 0x2e, 0x55, 0x53, 0x0e, 0x15, 0x38, 0x17, 0x7a, 0x43, 0x55, 0x2b, 0xf5, 0x46, - 0xb5, 0xb3, 0xeb, 0x24, 0x76, 0x12, 0x7e, 0x09, 0x7a, 0xe2, 0x36, 0xe3, 0xf7, 0x3e, 0x9f, 0x37, - 0xf3, 0x79, 0x6f, 0xde, 0xf3, 0xc2, 0xdb, 0x1d, 0x6a, 0x17, 0x35, 0x56, 0xb2, 0xd5, 0x65, 0xda, - 0x22, 0xa5, 0x86, 0x61, 0x2b, 0x3a, 0x23, 0x0d, 0xa5, 0x4e, 0x74, 0x62, 0xa8, 0xd4, 0x2a, 0x39, - 0x2b, 0x26, 0xb5, 0x8b, 0xa6, 0xc5, 0x1c, 0x86, 0x8f, 0xfb, 0xce, 0x45, 0xdf, 0xb9, 0xb8, 0xc7, - 0x39, 0x37, 0xde, 0xd4, 0x9c, 0xe5, 0x76, 0xbd, 0xa8, 0xb2, 0x56, 0xa9, 0xc9, 0x9a, 0xac, 0xc4, - 0x71, 0xf5, 0xf6, 0x12, 0xdf, 0xf1, 0x0d, 0x5f, 0xf9, 0x7c, 0xb9, 0xe3, 0x4d, 0xc6, 0x9a, 0x3a, - 0xdd, 0xf1, 0x72, 0xb4, 0x16, 0xb5, 0x1d, 0xd2, 0x32, 0x03, 0x87, 0xd1, 0xfe, 0xd3, 0x19, 0xd4, - 0x09, 0x0c, 0xc7, 0xfa, 0x0d, 0xcc, 0x74, 0x34, 0x66, 0x04, 0xc7, 0xcc, 0x49, 0xfd, 0x46, 0x93, - 0xe9, 0x9a, 0xba, 0xb2, 0xfb, 0x22, 0xb9, 0xa3, 0xfd, 0x1e, 0xbb, 0x4d, 0xff, 0xed, 0x37, 0x75, - 0x88, 0xae, 0x35, 0x88, 0x43, 0xf7, 0xa7, 0xee, 0x68, 0xf4, 0x86, 0xd2, 0x1f, 0xfc, 0xf8, 0x5e, - 0x0f, 0x7b, 0x77, 0x80, 0xfc, 0x2f, 0x61, 0x48, 0xcf, 0xea, 0xac, 0x4e, 0xf4, 0x9a, 0x49, 0xd5, - 0xcb, 0x2b, 0x26, 0xc5, 0x97, 0x21, 0x69, 0x51, 0x95, 0x59, 0x0d, 0xc5, 0x73, 0xcc, 0x86, 0x24, - 0x34, 0x96, 0x2e, 0x4f, 0x16, 0x9f, 0xa1, 0x76, 0x51, 0xa6, 0x36, 0x6b, 0x5b, 0x2a, 0x95, 0x39, - 0xd6, 0x63, 0x92, 0xc1, 0xda, 0x5e, 0xe3, 0x8f, 0x61, 0xc8, 0x6a, 0xeb, 0x54, 0xd1, 0x35, 0xdb, - 0xc9, 0x86, 0x25, 0x34, 0x96, 0x2c, 0x4f, 0x3f, 0x93, 0x73, 0x9e, 0x91, 0x46, 0x95, 0x6f, 0x34, - 0xa3, 0x29, 0xb7, 0x75, 0x3a, 0xaf, 0xd9, 0x4e, 0x35, 0xf2, 0xd8, 0x45, 0x48, 0x4e, 0x58, 0xc1, - 0x1e, 0x7f, 0x02, 0x69, 0x8b, 0xda, 0x26, 0x33, 0x6c, 0xaa, 0xa8, 0x44, 0x5d, 0xa6, 0xd9, 0x08, - 0xe7, 0x2f, 0x3e, 0xcf, 0x99, 0x39, 0x6c, 0xc6, 0x43, 0x05, 0xbc, 0x29, 0x6b, 0xf7, 0x8f, 0x78, - 0x1e, 0x86, 0x3c, 0xdc, 0x67, 0xcc, 0xa0, 0x76, 0x36, 0x2a, 0x85, 0xc7, 0x92, 0xe5, 0xfc, 0x00, - 0x2f, 0x57, 0xb5, 0x78, 0xb1, 0xfe, 0x29, 0x55, 0x1d, 0x99, 0x2e, 0x79, 0xd7, 0xad, 0x26, 0xef, - 0xae, 0x26, 0x7a, 0x38, 0xd9, 0x5b, 0x5d, 0xf3, 0x08, 0xf0, 0x47, 0x90, 0x5a, 0x22, 0xba, 0x5e, - 0x27, 0xea, 0x75, 0xc5, 0x64, 0x4c, 0xcf, 0xc6, 0xf8, 0x49, 0x9f, 0x87, 0x31, 0x7d, 0x77, 0x35, - 0xc9, 0x6f, 0x50, 0xe7, 0x48, 0xf9, 0x50, 0x8f, 0xe8, 0x12, 0x63, 0xfa, 0x69, 0xf8, 0xe3, 0x4c, - 0xbc, 0x7c, 0x62, 0xf2, 0xc4, 0xd4, 0x89, 0xe9, 0x0b, 0x91, 0x04, 0xca, 0x84, 0xf2, 0xbf, 0x86, - 0x20, 0xd5, 0x77, 0x3f, 0x3c, 0x01, 0xf1, 0x86, 0x66, 0x93, 0xba, 0xee, 0x27, 0x35, 0x59, 0x3e, - 0x32, 0x10, 0xf6, 0x5c, 0xcb, 0x74, 0x56, 0xe6, 0x04, 0xb9, 0xe7, 0x86, 0x09, 0xfc, 0xaf, 0x41, - 0x97, 0x48, 0x5b, 0x77, 0x94, 0x7e, 0x85, 0x15, 0x93, 0x58, 0xa4, 0x45, 0x1d, 0x6a, 0xd9, 0x41, - 0x32, 0x0f, 0xe2, 0x12, 0x03, 0x82, 0xbe, 0xa3, 0x5c, 0xda, 0x46, 0xe3, 0x0e, 0x1c, 0x3d, 0x98, - 0xda, 0xcf, 0xe3, 0xa9, 0x17, 0xcb, 0xe3, 0x0e, 0xf9, 0x9c, 0x20, 0x8f, 0x5a, 0xfb, 0x9b, 0xaa, - 0x27, 0x41, 0x3a, 0x30, 0xae, 0xa2, 0x2e, 0x33, 0x4d, 0xa5, 0x78, 0x64, 0xdd, 0x45, 0xa1, 0x0d, - 0x17, 0xa1, 0xae, 0x8b, 0xa2, 0x5c, 0xdd, 0x40, 0xdb, 0xdb, 0x08, 0xfe, 0xb3, 0x6f, 0x6d, 0xe2, - 0x1b, 0x10, 0xf5, 0xea, 0xd2, 0xce, 0x22, 0x5e, 0x2a, 0xe5, 0x17, 0x2f, 0xf1, 0xea, 0xb8, 0x17, - 0xf1, 0xfb, 0xdf, 0xd7, 0xc3, 0xd1, 0x3b, 0x28, 0x94, 0x79, 0xbf, 0xb7, 0x4a, 0x6c, 0xff, 0x96, - 0x45, 0xdd, 0x07, 0x3f, 0x86, 0x63, 0x77, 0xd6, 0x50, 0x28, 0x83, 0x64, 0x3f, 0x5e, 0xfe, 0xb7, - 0x18, 0x8c, 0xec, 0xe1, 0xc2, 0x0e, 0x1c, 0x6b, 0x52, 0xa6, 0xe8, 0x4c, 0x25, 0x5e, 0x5b, 0x50, - 0x74, 0x52, 0xa7, 0xba, 0x62, 0x53, 0x9d, 0xaa, 0x0e, 0xb3, 0x82, 0x32, 0x90, 0x06, 0x0e, 0x39, - 0xef, 0x39, 0xd5, 0x02, 0x1f, 0x5e, 0x7b, 0x23, 0xdf, 0xac, 0xa1, 0x30, 0xa0, 0x78, 0x77, 0x0d, - 0xc5, 0x20, 0x12, 0x8d, 0xa1, 0xf8, 0x9c, 0x20, 0x67, 0x9b, 0x94, 0xcd, 0x07, 0xc4, 0x7d, 0x10, - 0xac, 0x42, 0xa6, 0x2f, 0xaa, 0x4d, 0x7b, 0x4f, 0xfe, 0x79, 0x0a, 0xfd, 0xf0, 0xdd, 0xd5, 0x3d, - 0xf0, 0x39, 0x41, 0x4e, 0xef, 0x0a, 0x57, 0xa3, 0x0e, 0x3e, 0x0b, 0x09, 0x62, 0x1b, 0x7e, 0x3f, - 0x49, 0xec, 0x4b, 0xee, 0xb7, 0xda, 0x62, 0xc5, 0x36, 0x16, 0x88, 0xa3, 0x2e, 0x7b, 0xf9, 0xf1, - 0x8a, 0x9b, 0xd8, 0x06, 0x4f, 0xd5, 0x25, 0x48, 0x7a, 0x04, 0x2d, 0xcf, 0x46, 0xad, 0xec, 0x10, - 0xe7, 0xf8, 0xff, 0xd3, 0x39, 0xa8, 0xaf, 0x47, 0x7c, 0x73, 0x15, 0x3d, 0x72, 0x11, 0x9a, 0x13, - 0x64, 0x20, 0xdb, 0x26, 0x3c, 0x07, 0x11, 0xfe, 0xa8, 0xa3, 0x2f, 0xfb, 0xa8, 0xe7, 0x90, 0xcc, - 0x19, 0xf0, 0x7b, 0x90, 0x30, 0x6e, 0x36, 0x58, 0x8b, 0x68, 0x46, 0xd0, 0x22, 0xf6, 0x7d, 0x5f, - 0x3b, 0x07, 0x41, 0xf2, 0x36, 0x00, 0x17, 0x20, 0x6a, 0xab, 0xcc, 0xa2, 0xd9, 0xb8, 0x84, 0xc6, - 0x52, 0xd5, 0x23, 0xf7, 0x5d, 0x14, 0x7e, 0x67, 0x62, 0xc2, 0x2b, 0x9f, 0x44, 0x21, 0x96, 0x7d, - 0xf2, 0x04, 0x8d, 0x21, 0xd9, 0x77, 0x39, 0xfd, 0x33, 0xba, 0xe7, 0xa2, 0x0d, 0x04, 0x5f, 0x21, - 0x48, 0xf4, 0xd4, 0x2d, 0x7c, 0x01, 0x9f, 0x43, 0xe9, 0xa9, 0x95, 0x83, 0x33, 0xb9, 0x34, 0xcf, - 0xb9, 0xd4, 0x4b, 0x3a, 0xe4, 0xf7, 0x26, 0x1d, 0xa7, 0x73, 0x87, 0x7a, 0xa4, 0x52, 0x8d, 0x3a, - 0xf0, 0x16, 0x1c, 0xee, 0xe5, 0xac, 0x48, 0x6c, 0xc5, 0x68, 0xb7, 0xea, 0xd4, 0xb2, 0xf3, 0xe9, - 0x4c, 0xb8, 0x00, 0x95, 0x9a, 0xb4, 0xe8, 0xef, 0xa1, 0x04, 0x49, 0xaf, 0x7a, 0xa5, 0x8a, 0xca, - 0x8f, 0x23, 0x81, 0x08, 0x31, 0x5f, 0x5a, 0x38, 0xb2, 0x23, 0x4c, 0x39, 0xb1, 0x78, 0xf5, 0x83, - 0x8b, 0x0b, 0x95, 0xf3, 0x8b, 0x90, 0x81, 0x68, 0xcd, 0xbb, 0x4e, 0x2e, 0x1e, 0x5c, 0xbd, 0x9a, - 0x87, 0x94, 0xaa, 0x6b, 0xd4, 0x70, 0x0e, 0x7c, 0xcb, 0xa7, 0xaa, 0x12, 0xa4, 0x08, 0x8f, 0xd0, - 0xf3, 0x19, 0x5e, 0x77, 0x51, 0x74, 0xc3, 0x45, 0x91, 0xae, 0x8b, 0xc2, 0x27, 0x7b, 0x9d, 0xf4, - 0x42, 0x24, 0x11, 0xc9, 0x44, 0xf3, 0x3f, 0x20, 0x18, 0x3d, 0xa8, 0x89, 0xbd, 0x0b, 0xc3, 0x7e, - 0x0f, 0x51, 0xb5, 0x86, 0xa5, 0x68, 0x66, 0x67, 0x2a, 0x8b, 0xb8, 0xf6, 0xc3, 0xf7, 0x5d, 0x14, - 0x2a, 0x4f, 0x79, 0xd2, 0x47, 0x0a, 0xa1, 0xac, 0x24, 0xa7, 0xb8, 0xdf, 0x8c, 0xd6, 0xb0, 0xce, - 0x9b, 0x9d, 0x29, 0x7c, 0x7a, 0x10, 0x38, 0xcd, 0xdf, 0x64, 0xaa, 0x8a, 0x3d, 0xe0, 0xc9, 0x69, - 0x0f, 0x18, 0x2f, 0x44, 0xb3, 0xb7, 0xbc, 0x94, 0xf5, 0x61, 0xa7, 0xf1, 0x14, 0x0c, 0xf9, 0x58, - 0xc7, 0xd1, 0xf9, 0xf3, 0x4a, 0x55, 0x47, 0xef, 0xbb, 0x28, 0x32, 0x39, 0x3d, 0x31, 0xf1, 0xb7, - 0x8b, 0x84, 0x2f, 0xd7, 0xfc, 0x36, 0x12, 0x2a, 0x08, 0x72, 0x82, 0x7b, 0x5e, 0x76, 0xf4, 0xfc, - 0x9f, 0x21, 0x48, 0xcf, 0x58, 0x94, 0x38, 0xf4, 0x35, 0x0f, 0xfc, 0xda, 0x2b, 0x1b, 0xf8, 0xbb, - 0x46, 0xfd, 0x95, 0x57, 0x33, 0xea, 0x07, 0x87, 0xfc, 0xec, 0x4b, 0x8f, 0xe5, 0x81, 0x31, 0x3c, - 0x72, 0xef, 0xcc, 0xc0, 0xdf, 0xa9, 0x60, 0x62, 0xfc, 0x15, 0x82, 0x61, 0x99, 0x9a, 0x3a, 0x51, - 0xdf, 0xe8, 0xfe, 0x6f, 0xea, 0xfe, 0x5d, 0x18, 0x92, 0xb3, 0xd4, 0x79, 0xa3, 0xf9, 0xb6, 0xe6, - 0x67, 0x5f, 0xea, 0x0f, 0xed, 0xae, 0xff, 0xb0, 0xaf, 0x3d, 0x69, 0x85, 0x59, 0xc0, 0x7b, 0x05, - 0xc7, 0x51, 0x40, 0x95, 0x8c, 0x80, 0x13, 0x10, 0xa9, 0x54, 0x2a, 0x95, 0x0c, 0xc2, 0x31, 0x08, - 0x2d, 0x5c, 0xcd, 0x84, 0xf0, 0x10, 0x44, 0x67, 0x16, 0x2b, 0x0b, 0xe7, 0x32, 0x61, 0x1c, 0x87, - 0x70, 0x4d, 0xfe, 0x30, 0x13, 0xc9, 0x45, 0xd6, 0x5d, 0x24, 0x54, 0xbf, 0x46, 0x1b, 0x0f, 0x45, - 0x61, 0xf3, 0xa1, 0x28, 0x3c, 0x7e, 0x28, 0xa2, 0x5b, 0x5d, 0x11, 0x7d, 0xdb, 0x15, 0xd1, 0x4f, - 0x5d, 0x11, 0x6d, 0x74, 0x45, 0xb4, 0xd9, 0x15, 0xd1, 0x83, 0xae, 0x88, 0x1e, 0x75, 0x45, 0xe1, - 0x71, 0x57, 0x44, 0xb7, 0xb7, 0x44, 0x61, 0x7d, 0x4b, 0x44, 0x1b, 0x5b, 0xa2, 0xb0, 0xb9, 0x25, - 0x0a, 0xd7, 0xae, 0x34, 0x99, 0x79, 0xbd, 0x59, 0xec, 0x30, 0xdd, 0xa1, 0x96, 0x45, 0x8a, 0x6d, - 0xbb, 0xc4, 0x17, 0x4b, 0xcc, 0x6a, 0x8d, 0x9b, 0x16, 0xeb, 0x68, 0x0d, 0x6a, 0x8d, 0xf7, 0xcc, - 0x25, 0xb3, 0xde, 0x64, 0x25, 0x7a, 0xd3, 0x09, 0x3e, 0xb6, 0x0e, 0xfa, 0x88, 0xad, 0xc7, 0xf8, - 0xa7, 0xd7, 0xe4, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x56, 0x93, 0xb6, 0x26, 0xee, 0x0e, 0x00, - 0x00, + // 1502 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0x4b, 0x6f, 0xdb, 0x56, + 0x16, 0xd6, 0x25, 0xf5, 0xf2, 0x91, 0x25, 0xd3, 0x8c, 0x07, 0x96, 0x95, 0x80, 0xd1, 0x68, 0x12, + 0xc0, 0xd0, 0xd8, 0x94, 0x2d, 0x3b, 0x9e, 0x8c, 0x07, 0x48, 0x46, 0xf2, 0x04, 0xb6, 0x03, 0xdb, + 0x31, 0xa8, 0x64, 0x90, 0xc9, 0x00, 0x25, 0x28, 0xea, 0x5a, 0x66, 0x43, 0xe9, 0x12, 0x24, 0xa5, + 0xc4, 0x05, 0x0c, 0x64, 0xd9, 0x6e, 0x8a, 0x20, 0xdd, 0xf5, 0x17, 0x14, 0x59, 0xb6, 0x40, 0x17, + 0x91, 0x17, 0x06, 0xfa, 0x40, 0x91, 0x95, 0x97, 0x6e, 0x56, 0x89, 0xbc, 0x49, 0x17, 0x05, 0x82, + 0xa2, 0x05, 0xba, 0x4b, 0xc1, 0x4b, 0x4a, 0x16, 0xfd, 0xc8, 0x0b, 0x49, 0x57, 0xd9, 0xdd, 0xc7, + 0xf7, 0x7d, 0xf7, 0xf0, 0x9c, 0x4f, 0x87, 0x97, 0x82, 0xbf, 0x37, 0xb1, 0x25, 0x6a, 0x24, 0x67, + 0xa9, 0xeb, 0xb8, 0xa6, 0xe4, 0x2a, 0x75, 0x4b, 0xd6, 0x89, 0x52, 0x91, 0xcb, 0x8a, 0xae, 0xd4, + 0x55, 0x6c, 0xe6, 0xec, 0x0d, 0x03, 0x5b, 0xa2, 0x61, 0x12, 0x9b, 0xf0, 0xa7, 0x5d, 0xb0, 0xe8, + 0x82, 0xc5, 0x43, 0xe0, 0xd4, 0x78, 0x55, 0xb3, 0xd7, 0x1b, 0x65, 0x51, 0x25, 0xb5, 0x5c, 0x95, + 0x54, 0x49, 0x8e, 0xf2, 0xca, 0x8d, 0x35, 0x3a, 0xa3, 0x13, 0x3a, 0x72, 0xf5, 0x52, 0xa7, 0xab, + 0x84, 0x54, 0x75, 0xbc, 0x8f, 0xb2, 0xb5, 0x1a, 0xb6, 0x6c, 0xa5, 0x66, 0x78, 0x80, 0x61, 0x7f, + 0x74, 0x75, 0x6c, 0x7b, 0x1b, 0x27, 0xfd, 0x1b, 0xc4, 0xb0, 0x35, 0x52, 0xf7, 0xc2, 0x4c, 0xa5, + 0xfd, 0x9b, 0x06, 0xd1, 0x35, 0x75, 0xa3, 0xf7, 0x41, 0x52, 0x23, 0x7e, 0x44, 0xef, 0xd6, 0x29, + 0xff, 0x56, 0x53, 0xd1, 0xb5, 0x8a, 0x62, 0xe3, 0xa3, 0xa5, 0x9b, 0x1a, 0xbe, 0x25, 0xfb, 0x0f, + 0x3f, 0x7d, 0x18, 0x61, 0xf5, 0x1e, 0x90, 0xf9, 0x99, 0x85, 0xc4, 0xbc, 0x4e, 0xca, 0x8a, 0x5e, + 0x32, 0xb0, 0x7a, 0x75, 0xc3, 0xc0, 0xfc, 0x55, 0x88, 0x99, 0x58, 0x25, 0x66, 0x45, 0x76, 0x80, + 0x49, 0x26, 0x8d, 0x46, 0x13, 0xf9, 0x29, 0xf1, 0x25, 0xd9, 0x16, 0x25, 0x6c, 0x91, 0x86, 0xa9, + 0x62, 0x89, 0x72, 0x1d, 0x25, 0x09, 0xcc, 0xee, 0x98, 0xff, 0x1f, 0xf4, 0x99, 0x0d, 0x1d, 0xcb, + 0xba, 0x66, 0xd9, 0x49, 0x36, 0x8d, 0x46, 0x63, 0xf9, 0x99, 0x97, 0x6a, 0x2e, 0x11, 0xa5, 0x52, + 0xa4, 0x13, 0xad, 0x5e, 0x95, 0x1a, 0x3a, 0x5e, 0xd2, 0x2c, 0xbb, 0x18, 0x7c, 0xd6, 0x42, 0x48, + 0x8a, 0x9a, 0xde, 0x9c, 0xff, 0x3f, 0x24, 0x4c, 0x6c, 0x19, 0xa4, 0x6e, 0x61, 0x59, 0x55, 0xd4, + 0x75, 0x9c, 0x0c, 0x52, 0x7d, 0xf1, 0x55, 0x62, 0xa6, 0xb4, 0x39, 0x87, 0xe5, 0xe9, 0xc6, 0xcd, + 0xde, 0x45, 0x7e, 0x09, 0xfa, 0x1c, 0xde, 0x47, 0xa4, 0x8e, 0xad, 0x64, 0x28, 0xcd, 0x8e, 0xc6, + 0xf2, 0x99, 0x03, 0xba, 0x34, 0xab, 0xe2, 0x95, 0xf2, 0x87, 0x58, 0xb5, 0x25, 0xbc, 0xe6, 0x3c, + 0x6e, 0x31, 0x76, 0x7f, 0x33, 0xda, 0xe1, 0x49, 0xce, 0xe8, 0x86, 0x23, 0xc0, 0xd7, 0x20, 0xbe, + 0xa6, 0xe8, 0x7a, 0x59, 0x51, 0x6f, 0xca, 0x06, 0x21, 0x7a, 0x32, 0x4c, 0x23, 0x7d, 0x15, 0xc5, + 0x33, 0xf7, 0x37, 0x63, 0xf4, 0x09, 0xca, 0x94, 0xf9, 0x60, 0x0b, 0xf1, 0x51, 0x34, 0x8a, 0x26, + 0xd0, 0x2c, 0xa8, 0xa4, 0xbe, 0xa6, 0x55, 0x9d, 0x9f, 0x8b, 0xd4, 0xdf, 0x91, 0x5f, 0x25, 0x44, + 0x9f, 0x85, 0x5f, 0x2e, 0x44, 0xf2, 0x63, 0x53, 0x63, 0xd3, 0x63, 0x33, 0x97, 0x83, 0x51, 0xc4, + 0x31, 0x99, 0x1f, 0x19, 0x88, 0xfb, 0x9e, 0x9a, 0x9f, 0x80, 0x48, 0x45, 0xb3, 0x94, 0xb2, 0xee, + 0x96, 0x3a, 0x96, 0x1f, 0x3a, 0x10, 0xcc, 0xa5, 0x9a, 0x61, 0x6f, 0x2c, 0x04, 0xa4, 0x0e, 0x8c, + 0x57, 0xe0, 0xaf, 0x15, 0xbc, 0xa6, 0x34, 0x74, 0x5b, 0xf6, 0xe7, 0x5d, 0x36, 0x14, 0x53, 0xa9, + 0x61, 0x1b, 0x9b, 0x96, 0x57, 0xe2, 0xe3, 0xb4, 0x04, 0x4f, 0xc0, 0x17, 0xca, 0x6a, 0x97, 0xcd, + 0x37, 0x61, 0xe4, 0x78, 0x69, 0xb7, 0xba, 0xe7, 0x5f, 0xaf, 0xba, 0xfb, 0xe2, 0x0b, 0x01, 0x69, + 0xd8, 0x3c, 0x7a, 0xab, 0x78, 0x0e, 0xd2, 0xc7, 0x9e, 0x2b, 0xab, 0xeb, 0x44, 0x53, 0x31, 0x3f, + 0xb8, 0xdd, 0x42, 0xcc, 0x4e, 0x0b, 0xa1, 0x76, 0x0b, 0x85, 0x68, 0x76, 0xbd, 0xdc, 0xde, 0x45, + 0xf0, 0x97, 0x23, 0x1d, 0xcb, 0xdf, 0x82, 0x90, 0xe3, 0x56, 0x2b, 0x89, 0xa8, 0x81, 0xf2, 0xaf, + 0x6f, 0xfc, 0xe2, 0xb8, 0x73, 0xe2, 0x83, 0x9f, 0xb6, 0xd9, 0xd0, 0x3d, 0xc4, 0x70, 0xff, 0xee, + 0x8c, 0xa2, 0xdd, 0xb5, 0x24, 0x6a, 0x3f, 0xfe, 0x8e, 0x0d, 0xdf, 0xdb, 0x42, 0x0c, 0x87, 0x24, + 0xf7, 0xbc, 0xcc, 0xf7, 0x7d, 0x30, 0x78, 0x48, 0x8b, 0xb7, 0xe1, 0x64, 0x15, 0x13, 0x59, 0x27, + 0xaa, 0xe2, 0x34, 0x0b, 0x59, 0x57, 0xca, 0x58, 0x97, 0x2d, 0xac, 0x63, 0xd5, 0x26, 0xa6, 0x67, + 0x83, 0xf4, 0x81, 0x20, 0x97, 0x1c, 0x50, 0xc9, 0xc3, 0x50, 0x47, 0x0e, 0x7e, 0xbe, 0x85, 0x58, + 0x40, 0x91, 0xf6, 0x16, 0x0a, 0x43, 0x30, 0x14, 0x46, 0x91, 0x85, 0x80, 0x94, 0xac, 0x62, 0xb2, + 0xe4, 0x09, 0xfb, 0x28, 0xbc, 0x0a, 0x9c, 0xef, 0x54, 0x0b, 0x77, 0x1a, 0xc1, 0xab, 0xd8, 0xff, + 0xc4, 0xfd, 0xcd, 0x43, 0xf4, 0x85, 0x80, 0x94, 0xe8, 0x39, 0xae, 0x84, 0x6d, 0xfe, 0x22, 0x44, + 0x15, 0xab, 0xee, 0x76, 0x99, 0xe8, 0x91, 0xe2, 0x6e, 0x03, 0x16, 0x0b, 0x56, 0x7d, 0x59, 0xb1, + 0xd5, 0x75, 0xa7, 0x3e, 0x8e, 0xb9, 0x15, 0xab, 0x4e, 0x4b, 0x35, 0x0f, 0x31, 0x47, 0xa0, 0xe6, + 0xec, 0x61, 0x33, 0xd9, 0x47, 0x35, 0xce, 0xbc, 0x58, 0x03, 0xd3, 0x7c, 0x2c, 0x04, 0x24, 0x50, + 0xba, 0x2b, 0xfc, 0x32, 0x24, 0x34, 0x43, 0x36, 0x4c, 0xbc, 0xa6, 0xdd, 0x76, 0xe3, 0x01, 0xaa, + 0x75, 0xf6, 0x68, 0xad, 0x55, 0x0a, 0xec, 0x0d, 0xa9, 0x5f, 0x33, 0xdc, 0x45, 0x1a, 0xd7, 0x22, + 0xc4, 0xf7, 0xe5, 0x9c, 0xd4, 0xc5, 0xa8, 0xda, 0xdf, 0x8e, 0x56, 0x5b, 0x34, 0xfc, 0x81, 0xc5, + 0x3a, 0x5a, 0x4e, 0x8e, 0x3e, 0x80, 0x20, 0xed, 0x3d, 0xa1, 0xb7, 0xdb, 0x7b, 0x16, 0x90, 0x44, + 0x75, 0xf9, 0x7f, 0x41, 0xb4, 0x7e, 0xbb, 0x42, 0x6a, 0x8a, 0x56, 0xf7, 0xfa, 0xdb, 0x91, 0x6d, + 0xa0, 0x18, 0xd9, 0xdd, 0x44, 0x4f, 0x5b, 0x08, 0x2d, 0x20, 0xa9, 0x4b, 0xe0, 0xb3, 0x10, 0xb2, + 0x54, 0x62, 0xe2, 0x64, 0x24, 0x8d, 0x46, 0xe3, 0xc5, 0xa1, 0x47, 0x2d, 0xc4, 0x4e, 0x4e, 0x4c, + 0x38, 0x2e, 0x8f, 0x66, 0xc3, 0xc9, 0xe7, 0xcf, 0xd1, 0x28, 0x92, 0x5c, 0xc8, 0xec, 0xa7, 0xec, + 0xc3, 0x16, 0xfa, 0x84, 0x85, 0x6f, 0x18, 0x88, 0x76, 0x4c, 0x90, 0xfd, 0x9a, 0x81, 0xaf, 0x18, + 0xc8, 0xbd, 0xd0, 0xe2, 0x3c, 0x97, 0x4a, 0x50, 0x73, 0xa6, 0x3b, 0xee, 0x84, 0xcc, 0x61, 0x77, + 0xf2, 0x89, 0x54, 0x7f, 0x47, 0x36, 0x5d, 0xc2, 0x36, 0x9c, 0x85, 0x13, 0x1d, 0x73, 0x89, 0x8a, + 0x25, 0xd7, 0x1b, 0xb5, 0x32, 0x36, 0xad, 0x4c, 0x82, 0x63, 0xb3, 0x50, 0x28, 0xa5, 0x57, 0xdc, + 0x39, 0x9c, 0x81, 0xa1, 0x1e, 0x0b, 0x89, 0xce, 0xd8, 0xc2, 0xb6, 0x95, 0xe9, 0xe7, 0xd8, 0x6c, + 0xb4, 0x50, 0x5a, 0x71, 0xb4, 0x2c, 0x18, 0x87, 0x94, 0xdf, 0x1f, 0x62, 0x77, 0x8a, 0xad, 0xcc, + 0x00, 0xc7, 0x66, 0x63, 0x8b, 0xab, 0xe9, 0x55, 0x6f, 0x01, 0x72, 0x70, 0xea, 0x10, 0xbc, 0x39, + 0xf3, 0x42, 0xc2, 0x88, 0xcf, 0x30, 0xe2, 0xfe, 0xd0, 0xca, 0xf0, 0x1c, 0x9b, 0x4d, 0x74, 0xd1, + 0x6e, 0x40, 0x39, 0x88, 0x39, 0xdd, 0x21, 0x5d, 0x50, 0x69, 0x1e, 0xd3, 0x20, 0x40, 0xd8, 0x75, + 0x0a, 0x0c, 0xed, 0x57, 0x34, 0x1f, 0x5d, 0xb9, 0xfe, 0x9f, 0x2b, 0xcb, 0x85, 0xc5, 0x15, 0xe0, + 0x20, 0x54, 0x72, 0xea, 0x90, 0x8a, 0x78, 0x35, 0x2b, 0x66, 0x21, 0xae, 0xea, 0x1a, 0xae, 0xdb, + 0x9d, 0x5e, 0x39, 0xd2, 0xd3, 0x2b, 0xe3, 0x4e, 0xaf, 0x3c, 0x3f, 0xf6, 0xcf, 0xb1, 0xc9, 0x89, + 0xb1, 0xc9, 0xc9, 0x62, 0x1a, 0xe2, 0x0a, 0x3d, 0xa9, 0x83, 0x1d, 0xd8, 0x6e, 0xa1, 0xd0, 0x4e, + 0x0b, 0x05, 0xdb, 0x2d, 0xc4, 0x9e, 0xeb, 0xbc, 0xb1, 0x2e, 0x07, 0xa3, 0x41, 0x2e, 0x94, 0xf9, + 0x16, 0xc1, 0xf0, 0x71, 0x2f, 0x8b, 0x7f, 0xc0, 0x80, 0xdb, 0xab, 0x55, 0xad, 0x62, 0xca, 0x9a, + 0xd1, 0x9c, 0x4e, 0x22, 0x6a, 0x9e, 0x81, 0x47, 0x2d, 0xc4, 0xe4, 0xa7, 0x1d, 0xef, 0x04, 0xb3, + 0x4c, 0x32, 0x2d, 0xc5, 0x29, 0x6e, 0x4e, 0xab, 0x98, 0x8b, 0x46, 0x73, 0x9a, 0x9f, 0x3d, 0x48, + 0x9c, 0xa1, 0xbd, 0x2f, 0x5e, 0xe4, 0x1d, 0xe2, 0xb9, 0x19, 0x87, 0x18, 0xc9, 0x86, 0x92, 0x77, + 0x1c, 0xcf, 0xf9, 0xb8, 0x33, 0xfc, 0x34, 0xf4, 0xb9, 0x5c, 0xdb, 0xd6, 0x69, 0x1b, 0x8b, 0x17, + 0x87, 0x1f, 0xb5, 0x50, 0x70, 0x6a, 0x66, 0x62, 0xe2, 0xf7, 0x16, 0x0a, 0x7c, 0xbc, 0xe5, 0xb6, + 0x6b, 0x26, 0x1b, 0x90, 0xa2, 0x14, 0x79, 0xd5, 0xd6, 0x33, 0xbf, 0x32, 0x90, 0x98, 0x33, 0xb1, + 0x62, 0xe3, 0x77, 0x7c, 0xdd, 0x2a, 0xbd, 0xb5, 0xeb, 0x56, 0xcf, 0x45, 0xeb, 0xda, 0xdb, 0xb9, + 0x68, 0x1d, 0xbc, 0x62, 0xcd, 0xbf, 0xf1, 0xa5, 0xe8, 0xc0, 0x75, 0x67, 0xf0, 0xe1, 0x85, 0x03, + 0x97, 0x59, 0xef, 0xcd, 0xfc, 0x1b, 0x03, 0x03, 0x12, 0x36, 0x74, 0x45, 0x7d, 0x9f, 0xf7, 0x3f, + 0x33, 0xef, 0x5f, 0xb2, 0x10, 0x9b, 0xc7, 0xf6, 0xfb, 0x9c, 0x77, 0x73, 0x7e, 0xf1, 0x8d, 0x3e, + 0x27, 0x7a, 0xbe, 0x20, 0xde, 0x79, 0xd1, 0xb2, 0xf3, 0xc0, 0x1f, 0x4e, 0x38, 0x1f, 0x02, 0x54, + 0xe0, 0x02, 0x7c, 0x14, 0x82, 0x85, 0x42, 0xa1, 0xc0, 0x21, 0x3e, 0x0c, 0xcc, 0xf2, 0x75, 0x8e, + 0xe1, 0xfb, 0x20, 0x34, 0xb7, 0x52, 0x58, 0xbe, 0xc4, 0xb1, 0x7c, 0x04, 0xd8, 0x92, 0xf4, 0x5f, + 0x2e, 0x98, 0x0a, 0x6e, 0xb7, 0x50, 0xa0, 0xf8, 0x19, 0xda, 0x79, 0x22, 0x04, 0x76, 0x9f, 0x08, + 0x81, 0x67, 0x4f, 0x04, 0x74, 0xa7, 0x2d, 0xa0, 0x2f, 0xda, 0x02, 0xfa, 0xa1, 0x2d, 0xa0, 0x9d, + 0xb6, 0x80, 0x76, 0xdb, 0x02, 0x7a, 0xdc, 0x16, 0xd0, 0xd3, 0xb6, 0x10, 0x78, 0xd6, 0x16, 0xd0, + 0xdd, 0x3d, 0x21, 0xb0, 0xbd, 0x27, 0xa0, 0x9d, 0x3d, 0x21, 0xb0, 0xbb, 0x27, 0x04, 0x6e, 0x5c, + 0xab, 0x12, 0xe3, 0x66, 0x55, 0x6c, 0x12, 0xdd, 0xc6, 0xa6, 0xa9, 0x88, 0x0d, 0x2b, 0x47, 0x07, + 0x6b, 0xc4, 0xac, 0x8d, 0x1b, 0x26, 0x69, 0x6a, 0x15, 0x6c, 0x8e, 0x77, 0xb6, 0x73, 0x46, 0xb9, + 0x4a, 0x72, 0xf8, 0xb6, 0xed, 0x7d, 0xea, 0x1e, 0xf7, 0x17, 0x42, 0x39, 0x4c, 0x3f, 0x7c, 0xa7, + 0xfe, 0x08, 0x00, 0x00, 0xff, 0xff, 0xa8, 0xc9, 0x1a, 0x6b, 0x6c, 0x10, 0x00, 0x00, } func (x ResourceRecordType) String() string { @@ -1223,6 +1258,54 @@ func (this *LoadBalancingRule_AsnMatcher) Equal(that interface{}) bool { } return true } +func (this *LoadBalancingRule_IpPrefixList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LoadBalancingRule_IpPrefixList) + if !ok { + that2, ok := that.(LoadBalancingRule_IpPrefixList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.IpPrefixList.Equal(that1.IpPrefixList) { + return false + } + return true +} +func (this *LoadBalancingRule_IpPrefixSet) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LoadBalancingRule_IpPrefixSet) + if !ok { + that2, ok := that.(LoadBalancingRule_IpPrefixSet) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.IpPrefixSet.Equal(that1.IpPrefixSet) { + return false + } + return true +} func (this *LoadBalancingRule_Pool) Equal(that interface{}) bool { if that == nil { return this == nil @@ -1482,7 +1565,7 @@ func (this *LoadBalancingRule) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 11) + s := make([]string, 0, 13) s = append(s, "&dns_load_balancer.LoadBalancingRule{") if this.ClientChoice != nil { s = append(s, "ClientChoice: "+fmt.Sprintf("%#v", this.ClientChoice)+",\n") @@ -1526,6 +1609,22 @@ func (this *LoadBalancingRule_AsnMatcher) GoString() string { `AsnMatcher:` + fmt.Sprintf("%#v", this.AsnMatcher) + `}`}, ", ") return s } +func (this *LoadBalancingRule_IpPrefixList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&dns_load_balancer.LoadBalancingRule_IpPrefixList{` + + `IpPrefixList:` + fmt.Sprintf("%#v", this.IpPrefixList) + `}`}, ", ") + return s +} +func (this *LoadBalancingRule_IpPrefixSet) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&dns_load_balancer.LoadBalancingRule_IpPrefixSet{` + + `IpPrefixSet:` + fmt.Sprintf("%#v", this.IpPrefixSet) + `}`}, ", ") + return s +} func (this *LoadBalancingRule_Pool) GoString() string { if this == nil { return "nil" @@ -2004,6 +2103,48 @@ func (m *LoadBalancingRule_AsnMatcher) MarshalToSizedBuffer(dAtA []byte) (int, e } return len(dAtA) - i, nil } +func (m *LoadBalancingRule_IpPrefixList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LoadBalancingRule_IpPrefixList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IpPrefixList != nil { + { + size, err := m.IpPrefixList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + return len(dAtA) - i, nil +} +func (m *LoadBalancingRule_IpPrefixSet) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LoadBalancingRule_IpPrefixSet) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IpPrefixSet != nil { + { + size, err := m.IpPrefixSet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a + } + return len(dAtA) - i, nil +} func (m *ResponseCacheParameters) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -2442,6 +2583,30 @@ func (m *LoadBalancingRule_AsnMatcher) Size() (n int) { } return n } +func (m *LoadBalancingRule_IpPrefixList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpPrefixList != nil { + l = m.IpPrefixList.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *LoadBalancingRule_IpPrefixSet) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpPrefixSet != nil { + l = m.IpPrefixSet.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *ResponseCacheParameters) Size() (n int) { if m == nil { return 0 @@ -2690,6 +2855,26 @@ func (this *LoadBalancingRule_AsnMatcher) String() string { }, "") return s } +func (this *LoadBalancingRule_IpPrefixList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LoadBalancingRule_IpPrefixList{`, + `IpPrefixList:` + strings.Replace(fmt.Sprintf("%v", this.IpPrefixList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LoadBalancingRule_IpPrefixSet) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LoadBalancingRule_IpPrefixSet{`, + `IpPrefixSet:` + strings.Replace(fmt.Sprintf("%v", this.IpPrefixSet), "IpMatcherType", "policy.IpMatcherType", 1) + `,`, + `}`, + }, "") + return s +} func (this *ResponseCacheParameters) String() string { if this == nil { return "nil" @@ -3472,6 +3657,76 @@ func (m *LoadBalancingRule) Unmarshal(dAtA []byte) error { } m.ClientChoice = &LoadBalancingRule_AsnMatcher{v} iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpPrefixList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &policy.PrefixMatchList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ClientChoice = &LoadBalancingRule_IpPrefixList{v} + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpPrefixSet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &policy.IpMatcherType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ClientChoice = &LoadBalancingRule_IpPrefixSet{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/dns_load_balancer/types.vesmsg.go b/pbgo/extschema/schema/dns_load_balancer/types.vesmsg.go index 7648444e7..534c70261 100644 --- a/pbgo/extschema/schema/dns_load_balancer/types.vesmsg.go +++ b/pbgo/extschema/schema/dns_load_balancer/types.vesmsg.go @@ -1139,6 +1139,22 @@ func (m *LoadBalancingRule) GetClientChoiceDRefInfo() ([]db.DRefInfo, error) { } return drInfos, err + case *LoadBalancingRule_IpPrefixList: + + return nil, nil + + case *LoadBalancingRule_IpPrefixSet: + + drInfos, err := m.GetIpPrefixSet().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetIpPrefixSet().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "ip_prefix_set." + dri.DRField + } + return drInfos, err + default: return nil, nil } @@ -1280,6 +1296,28 @@ func (v *ValidateLoadBalancingRule) Validate(ctx context.Context, pm interface{} return err } } + case *LoadBalancingRule_IpPrefixList: + if fv, exists := v.FldValidators["client_choice.ip_prefix_list"]; exists { + val := m.GetClientChoice().(*LoadBalancingRule_IpPrefixList).IpPrefixList + vOpts := append(opts, + db.WithValidateField("client_choice"), + db.WithValidateField("ip_prefix_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *LoadBalancingRule_IpPrefixSet: + if fv, exists := v.FldValidators["client_choice.ip_prefix_set"]; exists { + val := m.GetClientChoice().(*LoadBalancingRule_IpPrefixSet).IpPrefixSet + vOpts := append(opts, + db.WithValidateField("client_choice"), + db.WithValidateField("ip_prefix_set"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -1347,6 +1385,8 @@ var DefaultLoadBalancingRuleValidator = func() *ValidateLoadBalancingRule { v.FldValidators["client_choice.geo_location_set"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["client_choice.asn_list"] = ves_io_schema_policy.AsnMatchListValidator().Validate v.FldValidators["client_choice.asn_matcher"] = ves_io_schema_policy.AsnMatcherTypeValidator().Validate + v.FldValidators["client_choice.ip_prefix_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate + v.FldValidators["client_choice.ip_prefix_set"] = ves_io_schema_policy.IpMatcherTypeValidator().Validate return v }() diff --git a/pbgo/extschema/schema/dns_zone/crudapi/api.vesapi.go b/pbgo/extschema/schema/dns_zone/crudapi/api.vesapi.go index 295642f29..028fe865c 100644 --- a/pbgo/extschema/schema/dns_zone/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dns_zone/crudapi/api.vesapi.go @@ -5477,10 +5477,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_zone/object.pb.go b/pbgo/extschema/schema/dns_zone/object.pb.go index daab5786c..cdd3cff2a 100644 --- a/pbgo/extschema/schema/dns_zone/object.pb.go +++ b/pbgo/extschema/schema/dns_zone/object.pb.go @@ -360,57 +360,58 @@ func init() { } var fileDescriptor_0b363da65d28addf = []byte{ - // 793 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x6f, 0xe3, 0x44, - 0x14, 0xc7, 0x33, 0x49, 0x94, 0x2d, 0x93, 0xa5, 0x9b, 0x75, 0x16, 0x14, 0x16, 0xb0, 0xa2, 0x2c, - 0xa0, 0x0a, 0xb0, 0x0d, 0x01, 0x0e, 0x5b, 0x10, 0xab, 0x36, 0x0e, 0x55, 0x20, 0x9b, 0x45, 0xf1, - 0x6a, 0x85, 0x7a, 0xb1, 0x1c, 0xfb, 0xc5, 0x6b, 0x88, 0x3d, 0xd6, 0xcc, 0xd8, 0x6d, 0x90, 0x90, - 0x10, 0x47, 0xb8, 0xf0, 0x11, 0x38, 0x22, 0xc4, 0x87, 0x68, 0x39, 0x71, 0xac, 0x7a, 0xaa, 0x38, - 0x51, 0xe7, 0xc2, 0xb1, 0x1f, 0x01, 0x65, 0x1c, 0xa7, 0x4d, 0x48, 0x2a, 0xd4, 0x9b, 0xfd, 0xde, - 0xef, 0xff, 0xf7, 0xbc, 0xf7, 0xfc, 0x06, 0x3f, 0x88, 0x81, 0xa9, 0x1e, 0xd1, 0x98, 0xfd, 0x1c, - 0x7c, 0x4b, 0x73, 0x02, 0x66, 0x7e, 0x4b, 0x02, 0xd0, 0xc8, 0xe0, 0x6b, 0xb0, 0xb9, 0x1a, 0x52, - 0xc2, 0x89, 0xf4, 0x72, 0x0a, 0xa9, 0x29, 0xa4, 0x66, 0xd0, 0x7d, 0xc5, 0xf5, 0xf8, 0xf3, 0x68, - 0xa0, 0xda, 0xc4, 0xd7, 0x5c, 0xe2, 0x12, 0x4d, 0xe0, 0x83, 0x68, 0x28, 0xde, 0xc4, 0x8b, 0x78, - 0x4a, 0x6d, 0xee, 0xaf, 0xfb, 0x96, 0x13, 0x30, 0x06, 0xf6, 0x0c, 0x6a, 0xac, 0x81, 0xf8, 0x38, - 0x04, 0x36, 0x63, 0x5e, 0x5d, 0x64, 0x48, 0xc8, 0x3d, 0x12, 0x64, 0xc9, 0x57, 0x16, 0x93, 0x57, - 0x75, 0x4b, 0xde, 0x31, 0x30, 0x08, 0xe2, 0x25, 0x79, 0x7d, 0x89, 0xf1, 0xe0, 0xc0, 0x5c, 0x20, - 0x1a, 0x3f, 0x15, 0x71, 0xe9, 0x89, 0x68, 0x8f, 0xf4, 0x10, 0x6f, 0xf8, 0xc0, 0x2d, 0xc7, 0xe2, - 0x56, 0x0d, 0xd5, 0xd1, 0x56, 0xb9, 0xf9, 0xba, 0xba, 0xd8, 0xab, 0x14, 0x7c, 0x0c, 0xdc, 0x7a, - 0x3a, 0x0e, 0xa1, 0x3f, 0xc7, 0xa5, 0x2e, 0xbe, 0xc3, 0xc6, 0x8c, 0x83, 0x6f, 0xce, 0x1d, 0xf2, - 0xc2, 0xe1, 0xc1, 0x92, 0x83, 0x21, 0xa8, 0x25, 0x9f, 0xcd, 0x54, 0xfb, 0x38, 0x73, 0xfb, 0x10, - 0x17, 0x59, 0x08, 0x76, 0xad, 0x20, 0x2c, 0xea, 0xea, 0xea, 0x81, 0xa9, 0x46, 0x08, 0xb6, 0xd0, - 0x0b, 0x7a, 0xfb, 0x38, 0xff, 0xc3, 0xa3, 0x52, 0xea, 0xf4, 0xc7, 0x71, 0xad, 0xf0, 0x0b, 0x42, - 0xa7, 0xc7, 0xb5, 0xdf, 0xf3, 0xf8, 0x21, 0x2e, 0xec, 0x01, 0x97, 0x9a, 0x31, 0x30, 0xc5, 0x23, - 0x8a, 0x17, 0x0c, 0xa9, 0xc5, 0x38, 0x8d, 0x6c, 0x1e, 0x51, 0x50, 0x28, 0x58, 0xce, 0xbb, 0xf5, - 0xe1, 0x47, 0x87, 0xb6, 0xe2, 0x04, 0x4c, 0x19, 0x58, 0xcc, 0xb3, 0x15, 0x9f, 0x04, 0x1e, 0x27, - 0x14, 0x7f, 0x8c, 0x6f, 0xf5, 0x21, 0x1c, 0x59, 0x36, 0x48, 0xef, 0xad, 0x96, 0x1f, 0x50, 0x8f, - 0xc3, 0x7f, 0xf4, 0x11, 0x03, 0x8a, 0xb7, 0x71, 0xa9, 0x45, 0xc1, 0xe2, 0x37, 0xd4, 0xea, 0x30, - 0x82, 0x1b, 0x6a, 0x8b, 0x5d, 0x8f, 0xdd, 0xa8, 0xe0, 0xc6, 0x17, 0x78, 0x23, 0xeb, 0xaa, 0xf4, - 0x08, 0xdf, 0x72, 0x6d, 0x53, 0x0c, 0x22, 0x9d, 0xe5, 0x5b, 0xeb, 0x06, 0xb1, 0x37, 0x22, 0x03, - 0x6b, 0x34, 0x1f, 0x47, 0xc9, 0xb5, 0xa7, 0xcf, 0x8d, 0xbf, 0x10, 0x7e, 0x51, 0xef, 0x19, 0xfb, - 0x24, 0x00, 0x83, 0x5b, 0x3c, 0x62, 0xd2, 0xfb, 0xf8, 0x5e, 0x4c, 0x46, 0x1c, 0x28, 0xb5, 0xcc, - 0xc0, 0xf2, 0x81, 0x01, 0x8d, 0x81, 0xb2, 0x1a, 0xaa, 0x17, 0xb6, 0x5e, 0xe8, 0x57, 0xb3, 0x5c, - 0xef, 0x32, 0x25, 0x7d, 0x85, 0xef, 0x3a, 0x10, 0x8e, 0xc8, 0xd8, 0x87, 0x80, 0x9b, 0x4c, 0xf8, - 0x88, 0xf3, 0x6c, 0x36, 0xdf, 0x59, 0x77, 0x1e, 0xbd, 0x67, 0xe8, 0x73, 0x4d, 0xfa, 0xe9, 0x7e, - 0xc5, 0x59, 0x8a, 0x48, 0x9f, 0xe0, 0x52, 0xba, 0xab, 0xb3, 0xff, 0xec, 0x8d, 0x6b, 0xec, 0x8c, - 0x76, 0x6b, 0xe6, 0x33, 0xd3, 0x34, 0x8e, 0xf2, 0xf8, 0x76, 0x1a, 0xfa, 0xdf, 0xdb, 0x93, 0xe2, - 0x2b, 0xb6, 0xe7, 0x73, 0x5c, 0x4e, 0x6f, 0x28, 0x93, 0xc2, 0x70, 0x5a, 0x5d, 0x61, 0xab, 0xdc, - 0x7c, 0x6d, 0xe5, 0xee, 0xf5, 0x61, 0x38, 0x15, 0xef, 0x96, 0x7f, 0xfb, 0x6e, 0x23, 0x3b, 0x60, - 0x1f, 0x93, 0x2c, 0x37, 0xad, 0x0a, 0xdb, 0x24, 0x70, 0x3c, 0xb1, 0xe3, 0xb5, 0xc2, 0x4a, 0xab, - 0x56, 0x06, 0x88, 0x73, 0x5c, 0xe1, 0xa5, 0x67, 0xb8, 0x1a, 0x03, 0xf5, 0x86, 0x9e, 0x6d, 0x4d, - 0x03, 0x59, 0xbf, 0x8b, 0xa2, 0x9e, 0x37, 0xaf, 0x69, 0xd0, 0xe5, 0x90, 0xfb, 0xd2, 0x55, 0x87, - 0x34, 0xb6, 0x5d, 0x3d, 0xfd, 0xb4, 0x82, 0x37, 0xf1, 0xed, 0xac, 0x64, 0x35, 0xf2, 0x9c, 0xb7, - 0x47, 0xb8, 0xba, 0x62, 0x52, 0x52, 0x15, 0xdf, 0xd1, 0x7b, 0x86, 0xb9, 0xff, 0xa4, 0xd7, 0x36, - 0x77, 0x5a, 0x4f, 0x3b, 0xcf, 0xda, 0x95, 0x9c, 0x74, 0x0f, 0x57, 0xe6, 0xc1, 0x2f, 0xdb, 0x3d, - 0xbd, 0xd3, 0xdb, 0xab, 0x20, 0xe9, 0x25, 0x7c, 0x77, 0x1e, 0xd5, 0x3b, 0xc6, 0xce, 0x6e, 0xb7, - 0xad, 0x57, 0xf2, 0x0b, 0x0e, 0x9f, 0xed, 0x74, 0xa6, 0xc1, 0xc2, 0xee, 0x8f, 0xe8, 0xe4, 0x5c, - 0xce, 0x9d, 0x9d, 0xcb, 0xb9, 0x8b, 0x73, 0x19, 0x7d, 0x9f, 0xc8, 0xe8, 0xd7, 0x44, 0x46, 0x7f, - 0x26, 0x32, 0x3a, 0x49, 0x64, 0x74, 0x96, 0xc8, 0xe8, 0xef, 0x44, 0x46, 0xff, 0x24, 0x72, 0xee, - 0x22, 0x91, 0xd1, 0xcf, 0x13, 0x39, 0x77, 0x34, 0x91, 0xd1, 0xc9, 0x44, 0xce, 0x9d, 0x4d, 0xe4, - 0xdc, 0x7e, 0xd7, 0x25, 0xe1, 0x37, 0xae, 0x9a, 0xfd, 0xa2, 0x6a, 0xc4, 0x34, 0xf1, 0x30, 0x24, - 0xd4, 0x57, 0x42, 0x4a, 0x62, 0xcf, 0x01, 0xaa, 0x64, 0x69, 0x2d, 0x1c, 0xb8, 0x44, 0x83, 0x43, - 0x3e, 0xbb, 0x78, 0x97, 0xee, 0xff, 0x41, 0x49, 0x5c, 0xbe, 0x1f, 0xfc, 0x1b, 0x00, 0x00, 0xff, - 0xff, 0x3c, 0x2b, 0xe9, 0xe7, 0xb1, 0x06, 0x00, 0x00, + // 810 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x95, 0x41, 0x8f, 0xdb, 0x44, + 0x14, 0xc7, 0x33, 0xeb, 0x25, 0x5d, 0x66, 0xcb, 0x36, 0x75, 0x0a, 0x0a, 0x05, 0xac, 0x28, 0x05, + 0xb4, 0x02, 0x6c, 0x8b, 0x05, 0x0e, 0x54, 0x88, 0x6a, 0x77, 0x1d, 0x96, 0x85, 0x6c, 0x8a, 0xec, + 0xa5, 0x42, 0x7b, 0xb1, 0x26, 0xf6, 0x8b, 0x6b, 0x88, 0x3d, 0xd6, 0xcc, 0xd8, 0x6d, 0x90, 0x90, + 0x10, 0x37, 0x38, 0xf1, 0x11, 0x38, 0xa2, 0x7e, 0x09, 0x5a, 0x4e, 0x1c, 0x57, 0x3d, 0xad, 0x38, + 0xb1, 0xce, 0x85, 0x63, 0x3f, 0x02, 0xca, 0x38, 0x4e, 0x93, 0x90, 0x54, 0x3d, 0xec, 0x6d, 0xf2, + 0x7f, 0xff, 0xf7, 0xf3, 0xcc, 0x9b, 0x37, 0x2f, 0xf8, 0x46, 0x06, 0xdc, 0x08, 0xa9, 0xc9, 0xbd, + 0xbb, 0x10, 0x11, 0xd3, 0x8f, 0xb9, 0xfb, 0x3d, 0x8d, 0xc1, 0xa4, 0xbd, 0x6f, 0xc1, 0x13, 0x46, + 0xc2, 0xa8, 0xa0, 0xea, 0x2b, 0x85, 0xc9, 0x28, 0x4c, 0x46, 0x69, 0xba, 0xae, 0x07, 0xa1, 0xb8, + 0x9b, 0xf6, 0x0c, 0x8f, 0x46, 0x66, 0x40, 0x03, 0x6a, 0x4a, 0x7b, 0x2f, 0xed, 0xcb, 0x5f, 0xf2, + 0x87, 0x5c, 0x15, 0x98, 0xeb, 0xab, 0xbe, 0xe5, 0xc7, 0x9c, 0x83, 0x37, 0x31, 0xb5, 0x56, 0x98, + 0xc4, 0x30, 0x01, 0x3e, 0xf1, 0xbc, 0x36, 0xef, 0xa1, 0x89, 0x08, 0x69, 0x5c, 0x06, 0x5f, 0x9d, + 0x0f, 0xce, 0xe6, 0x2d, 0xb0, 0x33, 0xe0, 0x10, 0x67, 0x0b, 0xe9, 0xcd, 0x05, 0x4f, 0x08, 0xf7, + 0xdc, 0x39, 0x47, 0xeb, 0xe7, 0x17, 0x70, 0xf5, 0xb6, 0x2c, 0x8f, 0xfa, 0x31, 0xde, 0x88, 0x40, + 0x10, 0x9f, 0x08, 0xd2, 0x40, 0x4d, 0xb4, 0xbd, 0xb9, 0xf3, 0x86, 0x31, 0x5f, 0xab, 0xc2, 0x78, + 0x04, 0x82, 0x1c, 0x0f, 0x13, 0xb0, 0xa7, 0x76, 0xb5, 0x83, 0xaf, 0xf0, 0x21, 0x17, 0x10, 0xb9, + 0x53, 0xc2, 0x9a, 0x24, 0xdc, 0x58, 0x20, 0x38, 0xd2, 0xb5, 0xc0, 0xd9, 0x2a, 0x72, 0x8f, 0x4a, + 0xda, 0x87, 0x78, 0x9d, 0x27, 0xe0, 0x35, 0x14, 0x89, 0x68, 0x1a, 0xcb, 0x2f, 0xcc, 0x70, 0x12, + 0xf0, 0x64, 0xbe, 0x74, 0xdf, 0xfc, 0x43, 0xf9, 0xe9, 0x56, 0xb5, 0x20, 0xfd, 0xf9, 0xa8, 0xa1, + 0xfc, 0x86, 0xd0, 0xe3, 0x47, 0x8d, 0x07, 0x0a, 0x3e, 0xc6, 0xca, 0x01, 0x08, 0xf5, 0x28, 0x03, + 0xae, 0x87, 0x54, 0x0f, 0xe3, 0x3e, 0x23, 0x5c, 0xb0, 0xd4, 0x13, 0x29, 0x03, 0x9d, 0x01, 0xf1, + 0xdf, 0x6b, 0xf6, 0x3f, 0xba, 0xef, 0xe9, 0x7e, 0xcc, 0xf5, 0x1e, 0xe1, 0xa1, 0xa7, 0x47, 0x34, + 0x0e, 0x05, 0x65, 0x33, 0x3a, 0x17, 0x24, 0xf6, 0x09, 0xf3, 0xcb, 0x10, 0x76, 0xf0, 0x25, 0x1b, + 0x92, 0x01, 0xf1, 0x40, 0xfd, 0x7c, 0x39, 0xf9, 0x1e, 0x0b, 0x05, 0xfc, 0x0f, 0x9d, 0x72, 0x58, + 0xca, 0x1d, 0xeb, 0xd8, 0xc6, 0xd5, 0x7d, 0x06, 0x44, 0x5c, 0x30, 0xd3, 0x82, 0x01, 0x5c, 0x28, + 0xf3, 0x6b, 0xbc, 0xde, 0x09, 0xf9, 0x45, 0xd7, 0xb4, 0xf5, 0x25, 0xde, 0x28, 0xef, 0x54, 0xbd, + 0x85, 0x2f, 0x05, 0x9e, 0x2b, 0xdb, 0xa0, 0xe8, 0xa4, 0xb7, 0x57, 0xb5, 0xc1, 0xc1, 0x80, 0xf6, + 0xc8, 0x60, 0xda, 0x0c, 0xd5, 0xc0, 0x1b, 0xaf, 0x5b, 0x7f, 0x23, 0xfc, 0x92, 0xd5, 0x75, 0x4e, + 0x68, 0x0c, 0x8e, 0x20, 0x22, 0xe5, 0xea, 0xfb, 0xf8, 0x5a, 0x46, 0x07, 0x02, 0x18, 0x23, 0x6e, + 0x4c, 0x22, 0xe0, 0xc0, 0x32, 0x60, 0xbc, 0x81, 0x9a, 0xca, 0xf6, 0x8b, 0x76, 0xbd, 0x8c, 0x75, + 0x9f, 0x86, 0xd4, 0x6f, 0xf0, 0x55, 0x1f, 0x92, 0x01, 0x1d, 0x46, 0x10, 0x0b, 0x97, 0x4b, 0x8e, + 0xdc, 0xcf, 0xd6, 0xce, 0xbb, 0xab, 0xf6, 0x63, 0x75, 0x1d, 0x6b, 0x9a, 0x53, 0x7c, 0xda, 0xae, + 0xf9, 0x0b, 0x8a, 0xfa, 0x09, 0xae, 0x16, 0x93, 0x62, 0xd2, 0xe5, 0x6f, 0x3e, 0x03, 0xe7, 0xb4, + 0xf7, 0x27, 0x9c, 0x49, 0x4e, 0xeb, 0xe1, 0x1a, 0xbe, 0x5c, 0x48, 0xcf, 0xfd, 0x76, 0x0b, 0xfb, + 0x92, 0xb7, 0xfb, 0x05, 0xde, 0x2c, 0xe6, 0xa3, 0xcb, 0xa0, 0x3f, 0x3e, 0x9d, 0xb2, 0xbd, 0xb9, + 0xf3, 0xfa, 0xd2, 0x97, 0x6f, 0x43, 0x7f, 0x9c, 0xbc, 0xb7, 0xf9, 0xe0, 0x87, 0x8d, 0x72, 0x83, + 0x36, 0xa6, 0x65, 0x6c, 0x7c, 0x2a, 0xec, 0xd1, 0xd8, 0x0f, 0xe5, 0x84, 0x69, 0x28, 0x4b, 0x51, + 0xfb, 0xa5, 0x41, 0xee, 0x63, 0xc6, 0xaf, 0xde, 0xc1, 0xf5, 0x0c, 0x58, 0xd8, 0x0f, 0x3d, 0x32, + 0x16, 0xca, 0x7a, 0xaf, 0xcb, 0xf3, 0xbc, 0xf5, 0x8c, 0x02, 0x3d, 0xbd, 0x64, 0x5b, 0x9d, 0x25, + 0x14, 0xda, 0xcd, 0xfa, 0xe3, 0x4f, 0x6b, 0x78, 0x0b, 0x5f, 0x2e, 0x8f, 0x6c, 0xa4, 0xa1, 0xff, + 0xce, 0x00, 0xd7, 0x97, 0xdc, 0x94, 0x5a, 0xc7, 0x57, 0xac, 0xae, 0xe3, 0x9e, 0xdc, 0xee, 0xb6, + 0xdd, 0xdd, 0xfd, 0xe3, 0xc3, 0x3b, 0xed, 0x5a, 0x45, 0xbd, 0x86, 0x6b, 0x53, 0xf1, 0xab, 0x76, + 0xd7, 0x3a, 0xec, 0x1e, 0xd4, 0x90, 0xfa, 0x32, 0xbe, 0x3a, 0x55, 0xad, 0x43, 0x67, 0x77, 0xaf, + 0xd3, 0xb6, 0x6a, 0x6b, 0x73, 0x84, 0xcf, 0x76, 0x0f, 0xc7, 0xa2, 0xb2, 0xf7, 0x0b, 0x3a, 0x3d, + 0xd7, 0x2a, 0x67, 0xe7, 0x5a, 0xe5, 0xc9, 0xb9, 0x86, 0x7e, 0xcc, 0x35, 0xf4, 0x7b, 0xae, 0xa1, + 0xbf, 0x72, 0x0d, 0x9d, 0xe6, 0x1a, 0x3a, 0xcb, 0x35, 0xf4, 0x4f, 0xae, 0xa1, 0x7f, 0x73, 0xad, + 0xf2, 0x24, 0xd7, 0xd0, 0xaf, 0x23, 0xad, 0xf2, 0x70, 0xa4, 0xa1, 0xd3, 0x91, 0x56, 0x39, 0x1b, + 0x69, 0x95, 0x93, 0x4e, 0x40, 0x93, 0xef, 0x02, 0xa3, 0x6c, 0x51, 0x23, 0xe5, 0xa6, 0x5c, 0xf4, + 0x29, 0x8b, 0xf4, 0x84, 0xd1, 0x2c, 0xf4, 0x81, 0xe9, 0x65, 0xd8, 0x4c, 0x7a, 0x01, 0x35, 0xe1, + 0xbe, 0x98, 0x8c, 0xfd, 0x85, 0x7f, 0x9f, 0x5e, 0x55, 0x8e, 0xfe, 0x0f, 0xfe, 0x0b, 0x00, 0x00, + 0xff, 0xff, 0x01, 0x30, 0x5b, 0x2a, 0x2f, 0x07, 0x00, 0x00, } func (x DNSDeploymentStatus) String() string { diff --git a/pbgo/extschema/schema/dns_zone/public_crudapi.pb.go b/pbgo/extschema/schema/dns_zone/public_crudapi.pb.go index 556243fa1..1e0e5fc3c 100644 --- a/pbgo/extschema/schema/dns_zone/public_crudapi.pb.go +++ b/pbgo/extschema/schema/dns_zone/public_crudapi.pb.go @@ -1065,108 +1065,109 @@ func init() { } var fileDescriptor_d73e7f6b1055b9df = []byte{ - // 1609 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1b, 0xc5, - 0x1e, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xc3, 0x9d, 0xd7, 0xa6, 0x8e, 0x5f, 0x6b, 0xf9, 0x39, - 0x7d, 0x6d, 0x94, 0xf7, 0xbc, 0x6e, 0x43, 0x41, 0x34, 0x42, 0x01, 0xc7, 0xb1, 0xd3, 0xb4, 0x6e, - 0x53, 0xad, 0xdd, 0x80, 0xe0, 0xb0, 0x5a, 0xaf, 0xc7, 0xee, 0x52, 0x7b, 0x77, 0x99, 0x19, 0x27, - 0x0d, 0x28, 0xa2, 0xea, 0x1f, 0x80, 0x90, 0x90, 0x38, 0x20, 0x0e, 0xbd, 0x20, 0xf5, 0xc0, 0x19, - 0x21, 0x85, 0x43, 0xc4, 0xa5, 0x55, 0x0f, 0xa8, 0x82, 0x4b, 0x25, 0x38, 0x50, 0x87, 0x43, 0x8f, - 0x15, 0xe2, 0x8a, 0x84, 0x76, 0x66, 0xd7, 0xb5, 0x1d, 0x3b, 0x71, 0xd2, 0x9e, 0xbc, 0xf3, 0xfd, - 0xf1, 0xd9, 0xef, 0x67, 0xbe, 0x3f, 0x66, 0xbc, 0xf0, 0x7f, 0x6b, 0x98, 0x4a, 0xba, 0x99, 0xa2, - 0xda, 0x4d, 0x5c, 0x57, 0x53, 0x65, 0x83, 0x2a, 0x1f, 0x9b, 0x06, 0x4e, 0x59, 0x8d, 0x52, 0x4d, - 0xd7, 0x14, 0x8d, 0x34, 0xca, 0xaa, 0xa5, 0x4b, 0x16, 0x31, 0x99, 0x89, 0x26, 0x84, 0xb1, 0x24, - 0x8c, 0x25, 0xd7, 0x38, 0x9a, 0xac, 0xea, 0xec, 0x66, 0xa3, 0x24, 0x69, 0x66, 0x3d, 0x55, 0x35, - 0xab, 0x66, 0x8a, 0x9b, 0x97, 0x1a, 0x15, 0xbe, 0xe2, 0x0b, 0xfe, 0x24, 0x60, 0xa2, 0x27, 0xab, - 0xa6, 0x59, 0xad, 0xe1, 0x94, 0x6a, 0xe9, 0x29, 0xd5, 0x30, 0x4c, 0xa6, 0x32, 0xdd, 0x34, 0xa8, - 0xa3, 0xfd, 0xb7, 0xa3, 0x6d, 0x61, 0xe0, 0xba, 0xc5, 0x36, 0x1c, 0xe5, 0x54, 0x9f, 0x70, 0xcb, - 0x06, 0xa5, 0x58, 0xdb, 0xc7, 0xc8, 0x2c, 0x7d, 0x88, 0x35, 0xe6, 0x18, 0x25, 0xfa, 0x18, 0xb1, - 0x0d, 0x0b, 0xbb, 0xa1, 0x44, 0x3b, 0x6d, 0x30, 0x21, 0x26, 0x69, 0x85, 0xd9, 0xa9, 0x33, 0xad, - 0x76, 0x0e, 0x93, 0x9d, 0xca, 0x76, 0xcc, 0xae, 0xf7, 0xae, 0x61, 0x8a, 0x8d, 0xb5, 0x2e, 0xf7, - 0x78, 0x97, 0x8d, 0x8e, 0xd7, 0x95, 0x0e, 0x8b, 0xc4, 0x7d, 0x00, 0x47, 0x33, 0x04, 0xab, 0x0c, - 0xcb, 0xf8, 0xa3, 0x06, 0xa6, 0x0c, 0xbd, 0x0d, 0x03, 0x75, 0xcc, 0xd4, 0xb2, 0xca, 0xd4, 0x08, - 0x88, 0x83, 0xe9, 0xd0, 0xec, 0x94, 0xd4, 0x99, 0xae, 0x15, 0x4e, 0x5f, 0x78, 0x5d, 0xc5, 0x4c, - 0x2d, 0x6e, 0x58, 0x58, 0x6e, 0x39, 0xa1, 0x2b, 0xd0, 0x47, 0x2d, 0xac, 0x45, 0x3c, 0xdc, 0xf9, - 0x8c, 0xd4, 0x3b, 0xd7, 0x92, 0xf0, 0x2f, 0x58, 0x58, 0xb3, 0xfd, 0x17, 0xc6, 0xbf, 0xda, 0x1c, - 0xb1, 0xdd, 0xa4, 0xaa, 0xa6, 0xd8, 0xbf, 0x32, 0x07, 0x99, 0x0b, 0x3e, 0x9a, 0xf7, 0x8b, 0xf7, - 0x25, 0xfe, 0x02, 0x70, 0xcc, 0x0d, 0x95, 0x5a, 0xa6, 0x41, 0x31, 0x7a, 0x6b, 0x57, 0xac, 0xf1, - 0x9e, 0xb1, 0x2e, 0x61, 0xd6, 0x23, 0xd0, 0x15, 0x38, 0x4e, 0x37, 0x28, 0xc3, 0x75, 0xa5, 0x05, - 0xe2, 0xed, 0x19, 0x73, 0x81, 0x5b, 0xed, 0x86, 0x1a, 0x13, 0xee, 0x57, 0x5d, 0xc0, 0x4b, 0x1d, - 0xcc, 0xa7, 0xfa, 0x31, 0x5f, 0xc2, 0xec, 0x00, 0xb4, 0x7f, 0x03, 0x70, 0x4c, 0xc6, 0x56, 0x4d, - 0xd5, 0x5a, 0x29, 0x7a, 0x67, 0x17, 0xed, 0xd3, 0x3d, 0x69, 0x3b, 0x6e, 0x3d, 0xa8, 0xe7, 0x3b, - 0x22, 0x3d, 0xdb, 0x2f, 0x52, 0x07, 0x60, 0x9f, 0x68, 0x51, 0x0a, 0x86, 0x09, 0xa6, 0x66, 0x83, - 0x68, 0x58, 0x59, 0xc3, 0x84, 0xea, 0xa6, 0xc1, 0x77, 0x32, 0xb8, 0xe0, 0x7b, 0xb6, 0x05, 0x80, - 0x3c, 0xee, 0x6a, 0x57, 0x85, 0xb2, 0x9d, 0xde, 0x51, 0x38, 0xde, 0x62, 0x27, 0xb2, 0x9a, 0xf8, - 0x12, 0x40, 0xb8, 0x84, 0x99, 0xcb, 0xf6, 0x24, 0x0c, 0x1a, 0x6a, 0x1d, 0x53, 0x4b, 0xd5, 0x30, - 0xa7, 0x1b, 0x94, 0x5f, 0x08, 0x10, 0x82, 0x3e, 0x7b, 0xc1, 0x99, 0x04, 0x65, 0xfe, 0x8c, 0x56, - 0xa1, 0xfd, 0x46, 0x0e, 0xa6, 0x54, 0x4c, 0x52, 0x57, 0x19, 0x0f, 0x67, 0x6c, 0x36, 0xb9, 0x47, - 0x4a, 0xdc, 0xd7, 0xe7, 0xb8, 0x43, 0xc6, 0x2c, 0x63, 0x79, 0x8c, 0x74, 0xc8, 0x12, 0x7f, 0x0f, - 0xc3, 0x50, 0x9b, 0x25, 0xca, 0xc1, 0x90, 0xc6, 0x0b, 0x92, 0xbf, 0xc5, 0xd9, 0xcc, 0xff, 0xee, - 0x5d, 0xf0, 0x0e, 0x2b, 0x19, 0x0a, 0x4f, 0x1b, 0x19, 0x2d, 0xc3, 0x11, 0x22, 0xf6, 0x40, 0x00, - 0x79, 0xf7, 0xee, 0x9c, 0xce, 0x6a, 0x90, 0x43, 0x8e, 0x2f, 0x87, 0xea, 0x95, 0x0a, 0xdf, 0x1e, - 0xa9, 0xe8, 0x68, 0xa1, 0xe1, 0x57, 0xd1, 0x42, 0x47, 0x5e, 0x49, 0x0b, 0xf9, 0x5f, 0xb6, 0x85, - 0x50, 0x06, 0xfa, 0x29, 0x53, 0x59, 0x83, 0x46, 0xee, 0x7d, 0x0d, 0xe2, 0xde, 0x1e, 0x4d, 0xd2, - 0x42, 0x2b, 0x70, 0x3b, 0x11, 0xdc, 0x82, 0x77, 0x7b, 0x13, 0xc8, 0x8e, 0x2b, 0x5a, 0x86, 0x47, - 0x09, 0xae, 0x60, 0x42, 0x74, 0xa3, 0xaa, 0x88, 0xb1, 0x4f, 0x23, 0x01, 0x8e, 0x76, 0xb2, 0x4f, - 0xcb, 0x55, 0x38, 0xaf, 0x70, 0xcb, 0x4d, 0xc8, 0x29, 0x5a, 0x85, 0x91, 0x32, 0xae, 0x61, 0x86, - 0xcb, 0x8a, 0xd0, 0xe1, 0x72, 0x0b, 0x31, 0x38, 0x00, 0xe2, 0x84, 0xe3, 0x2d, 0x3b, 0xce, 0x2e, - 0xee, 0x7b, 0x70, 0xb2, 0xac, 0x53, 0xb5, 0x54, 0xeb, 0x05, 0x0c, 0x07, 0x00, 0x3e, 0xe1, 0xba, - 0x77, 0x21, 0xb7, 0x75, 0xe9, 0x65, 0x5f, 0x00, 0x84, 0x3d, 0x89, 0x6f, 0x00, 0x0c, 0xe5, 0x75, - 0x3a, 0x60, 0x67, 0xfe, 0x07, 0x8e, 0xd4, 0xd4, 0x12, 0xae, 0x29, 0x15, 0xbd, 0xc6, 0x30, 0x71, - 0x3a, 0x34, 0xc4, 0x65, 0x39, 0x2e, 0x42, 0x53, 0x70, 0x94, 0x60, 0xcb, 0x24, 0x4c, 0xa9, 0xe8, - 0xb8, 0x56, 0xa6, 0x11, 0x6f, 0xdc, 0x3b, 0x1d, 0x94, 0x47, 0x84, 0x30, 0xc7, 0x65, 0xe8, 0x1c, - 0x3c, 0xe6, 0x18, 0x89, 0xa4, 0xb8, 0xb6, 0x3e, 0x6e, 0x8b, 0x84, 0x4e, 0xa4, 0x50, 0x78, 0x24, - 0xbe, 0xf5, 0xc3, 0xb0, 0x88, 0x53, 0x34, 0xea, 0x32, 0xc3, 0x75, 0x34, 0x01, 0xfd, 0x0c, 0x1b, - 0xaa, 0xc1, 0x78, 0x6d, 0x05, 0x65, 0x67, 0x75, 0x88, 0xf1, 0x12, 0x86, 0xde, 0x86, 0x5e, 0x16, - 0x13, 0x4e, 0xb6, 0x1f, 0x51, 0x1c, 0x86, 0xca, 0x98, 0x6a, 0x44, 0xe7, 0x67, 0x6b, 0x24, 0x24, - 0x98, 0xb6, 0x89, 0x50, 0x14, 0x06, 0xdc, 0x6d, 0x8e, 0x8c, 0xc4, 0xc1, 0x74, 0x40, 0x6e, 0xad, - 0x51, 0x1e, 0xfa, 0xf9, 0xa6, 0x08, 0x4a, 0xa1, 0xd9, 0x0b, 0xfd, 0xea, 0xb4, 0x9b, 0x93, 0x94, - 0xe7, 0x6e, 0x59, 0x83, 0x91, 0x0d, 0xd9, 0xc1, 0x40, 0x1f, 0xc0, 0x50, 0xdb, 0x5d, 0xc8, 0xa9, - 0x80, 0x8b, 0x03, 0x43, 0xa6, 0x5f, 0xf8, 0x0a, 0xdc, 0x76, 0x34, 0x74, 0x11, 0x42, 0x73, 0xdd, - 0xc0, 0x44, 0xb1, 0xaf, 0x12, 0x91, 0x20, 0x6f, 0xd2, 0x68, 0x17, 0xf6, 0xaa, 0x8e, 0xd7, 0xdd, - 0xda, 0x0a, 0x72, 0x6b, 0x5b, 0xd2, 0x31, 0x68, 0x46, 0x5f, 0xc5, 0xa0, 0x19, 0x7b, 0xa9, 0x41, - 0x33, 0x0f, 0x03, 0x55, 0xcc, 0xf8, 0xc0, 0x70, 0x46, 0xd6, 0x20, 0xc3, 0x46, 0x3e, 0x52, 0x15, - 0x0b, 0x74, 0x09, 0x42, 0xa7, 0x1c, 0x29, 0x66, 0xce, 0x48, 0x38, 0xc0, 0x80, 0x09, 0x0a, 0xe7, - 0x02, 0x66, 0xd1, 0x8b, 0x30, 0xd4, 0x96, 0x47, 0xbb, 0xba, 0x6e, 0xe1, 0x0d, 0xa7, 0x12, 0xed, - 0x47, 0x74, 0x0c, 0x0e, 0xaf, 0xa9, 0xb5, 0x86, 0x5b, 0x84, 0x62, 0x31, 0xe7, 0x79, 0x13, 0x44, - 0xe7, 0x61, 0xb8, 0x3b, 0x5f, 0x07, 0xf1, 0xbf, 0xec, 0x0b, 0x0c, 0x87, 0xfd, 0x89, 0x3b, 0x00, - 0x8e, 0xb4, 0xd7, 0x01, 0x9a, 0x87, 0xc3, 0x3a, 0xc3, 0x75, 0x1a, 0x11, 0x73, 0x73, 0x7a, 0xd0, - 0xe2, 0x91, 0x85, 0x1b, 0x3a, 0x07, 0xfd, 0xe2, 0x8a, 0x1b, 0xf1, 0x70, 0x80, 0x48, 0x17, 0x40, - 0xd6, 0x56, 0xf2, 0xed, 0x74, 0xec, 0x12, 0xb7, 0xe0, 0xe8, 0x22, 0x1f, 0x6f, 0x87, 0x3f, 0xf4, - 0xa7, 0x61, 0xb8, 0xa2, 0xea, 0x35, 0x45, 0xaf, 0xb4, 0xc6, 0x20, 0x6f, 0xd1, 0x80, 0x3c, 0x66, - 0xcb, 0x97, 0x2b, 0xee, 0x78, 0x9b, 0xf9, 0x13, 0xc0, 0xe3, 0x3d, 0x0f, 0x7c, 0x14, 0x85, 0x13, - 0x4b, 0xd9, 0xa2, 0x22, 0x17, 0xae, 0x2b, 0xb9, 0x15, 0xf9, 0x6a, 0xba, 0xa8, 0x2c, 0x66, 0x73, - 0xe9, 0x1b, 0xf9, 0x62, 0x78, 0x08, 0x9d, 0x82, 0x93, 0x5d, 0xba, 0xdc, 0x8a, 0xac, 0x64, 0xe4, - 0x6c, 0xba, 0x98, 0x0d, 0x03, 0x14, 0x83, 0xd1, 0x1e, 0x6a, 0x39, 0x7b, 0x3d, 0x9f, 0xce, 0x64, - 0xc3, 0x1e, 0x34, 0x09, 0x8f, 0x77, 0xe9, 0x0b, 0xc5, 0x74, 0xf1, 0x46, 0x21, 0xec, 0x45, 0x27, - 0xe0, 0xbf, 0xba, 0x54, 0x72, 0x36, 0xbd, 0x18, 0xf6, 0xa1, 0xd3, 0x30, 0xbe, 0x4b, 0x91, 0xcb, - 0xca, 0xf2, 0xf2, 0xb5, 0x25, 0x65, 0x65, 0xe1, 0x72, 0x36, 0x53, 0x2c, 0x84, 0x87, 0x7b, 0x58, - 0x2d, 0xc8, 0x2b, 0x57, 0xb2, 0xd7, 0x84, 0x71, 0xf6, 0x5a, 0x26, 0x5b, 0x08, 0xfb, 0x67, 0x7f, - 0x0c, 0x40, 0x6f, 0xfa, 0xfa, 0x32, 0x7a, 0x08, 0xa0, 0x5f, 0xdc, 0x44, 0xd0, 0x60, 0x37, 0x95, - 0xe8, 0x99, 0xfd, 0xcc, 0x9c, 0x6b, 0x9b, 0xd9, 0x7c, 0x10, 0xb1, 0xff, 0x86, 0x24, 0x75, 0x33, - 0xa9, 0x1b, 0x15, 0xa2, 0x52, 0x46, 0x1a, 0x1a, 0x6b, 0x10, 0x9c, 0x5c, 0x27, 0x3a, 0xc3, 0xff, - 0xaf, 0xbc, 0x7e, 0x5b, 0x4b, 0x96, 0x0d, 0x9a, 0x2c, 0xa9, 0x54, 0xd7, 0x92, 0x0d, 0x8a, 0xc9, - 0xdd, 0x5f, 0xfe, 0xf8, 0xc2, 0xf3, 0x46, 0xe2, 0xbc, 0xf3, 0x37, 0x31, 0xd5, 0x4a, 0x31, 0x4d, - 0x7d, 0xe2, 0x36, 0xba, 0xd4, 0x12, 0x6e, 0xb6, 0xfe, 0x5d, 0xd1, 0x39, 0x30, 0x83, 0xb6, 0x01, - 0xf4, 0x2e, 0x61, 0x86, 0x12, 0x7b, 0xde, 0xea, 0x04, 0x89, 0xa9, 0x01, 0x6e, 0x7e, 0x09, 0xeb, - 0xe1, 0xf7, 0x1e, 0xd0, 0x7c, 0x10, 0x39, 0xdf, 0x9b, 0x05, 0xc1, 0x6a, 0xb9, 0x9b, 0x44, 0xdd, - 0x34, 0x74, 0x66, 0x0a, 0x1e, 0xe7, 0x51, 0xaa, 0x17, 0x8f, 0x5e, 0xe1, 0x0b, 0xe9, 0x26, 0xfa, - 0x01, 0x40, 0x9f, 0xdd, 0x45, 0x68, 0x6a, 0xef, 0x1e, 0x13, 0x24, 0x4e, 0x0f, 0xd2, 0x88, 0x09, - 0xfd, 0xe5, 0x58, 0xcc, 0xa0, 0xe9, 0x41, 0x59, 0xa0, 0x5f, 0x01, 0x3c, 0xe2, 0xdc, 0x46, 0xd1, - 0x80, 0xd7, 0xd5, 0xe8, 0xd9, 0x7d, 0xed, 0x1c, 0x1e, 0x9f, 0x1e, 0xb6, 0x9e, 0x72, 0xd1, 0xf4, - 0x81, 0xeb, 0xa9, 0x4b, 0xbd, 0x69, 0xd7, 0xd7, 0x77, 0x00, 0xfa, 0xc5, 0x54, 0xea, 0xdf, 0x2a, - 0x1d, 0x53, 0x2b, 0x3a, 0x21, 0x89, 0x6f, 0x0e, 0x92, 0xfb, 0xcd, 0x41, 0xca, 0xd6, 0x2d, 0xb6, - 0x91, 0xa8, 0x1f, 0x96, 0xca, 0x85, 0x99, 0x83, 0x96, 0xd4, 0x1c, 0x98, 0x89, 0xbe, 0xbb, 0xbd, - 0x05, 0x3c, 0x3f, 0x6f, 0x81, 0x53, 0x7d, 0x82, 0x16, 0x07, 0xd1, 0x93, 0x2d, 0x00, 0x9a, 0x5b, - 0x60, 0x6a, 0x80, 0x33, 0xeb, 0xee, 0x4f, 0x11, 0xef, 0x3d, 0x00, 0x16, 0x3e, 0x03, 0x8f, 0xe6, - 0x87, 0x33, 0xf2, 0x8d, 0xc5, 0xfc, 0xe3, 0xa7, 0xb1, 0xa1, 0x27, 0x4f, 0x63, 0x43, 0xcf, 0x9f, - 0xc6, 0xc0, 0x9d, 0x66, 0x0c, 0xdc, 0x6f, 0xc6, 0xc0, 0xc3, 0x66, 0x0c, 0x3c, 0x6e, 0xc6, 0xc0, - 0xef, 0xcd, 0x18, 0x78, 0xd6, 0x8c, 0x0d, 0x3d, 0x6f, 0xc6, 0xc0, 0xe7, 0x3b, 0xb1, 0xa1, 0xed, - 0x9d, 0x18, 0x78, 0xbc, 0x13, 0x1b, 0x7a, 0xb2, 0x13, 0x1b, 0x7a, 0x3f, 0x5f, 0x35, 0xad, 0x5b, - 0x55, 0x69, 0xcd, 0xb4, 0x2f, 0x80, 0x44, 0x95, 0x1a, 0x34, 0xc5, 0x1f, 0xec, 0x3f, 0x3e, 0x49, - 0x8b, 0x98, 0x6b, 0x7a, 0x19, 0x93, 0xa4, 0xab, 0x4e, 0x59, 0xa5, 0xaa, 0x99, 0xc2, 0xb7, 0x99, - 0xf3, 0x05, 0xa3, 0xeb, 0x23, 0x4b, 0xc9, 0xcf, 0x37, 0xfa, 0xb5, 0x7f, 0x02, 0x00, 0x00, 0xff, - 0xff, 0x30, 0xab, 0xa9, 0x9c, 0x7e, 0x12, 0x00, 0x00, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0xdb, 0xd6, + 0x1d, 0xf7, 0x93, 0x64, 0x45, 0x7a, 0xf2, 0x0f, 0xe5, 0x2d, 0x71, 0x64, 0x2d, 0x11, 0x34, 0x39, + 0x4b, 0x0c, 0x6f, 0xa2, 0x12, 0x2f, 0x1b, 0x16, 0x63, 0xf0, 0x26, 0xcb, 0x92, 0xe3, 0x44, 0x89, + 0x03, 0x4a, 0xf1, 0x86, 0xed, 0x40, 0x50, 0xe4, 0x93, 0xc2, 0x45, 0x22, 0x39, 0xbe, 0x27, 0x39, + 0xde, 0x60, 0x20, 0xc8, 0x8a, 0x1e, 0x7a, 0x28, 0x0a, 0x14, 0xe8, 0xa1, 0xe8, 0x21, 0x97, 0x02, + 0x39, 0xf4, 0x0f, 0x28, 0xe0, 0x8b, 0x6f, 0x0d, 0x72, 0x08, 0x82, 0xf6, 0xd0, 0x00, 0xed, 0x21, + 0x91, 0x7b, 0xc8, 0x31, 0x68, 0x7b, 0x2d, 0x50, 0xf0, 0x3d, 0x52, 0x91, 0x64, 0xca, 0x96, 0x13, + 0xf7, 0x24, 0xbe, 0xef, 0x8f, 0x0f, 0xbf, 0x1f, 0x7e, 0x7f, 0xf0, 0x2b, 0xc2, 0xdf, 0xb5, 0x30, + 0x11, 0x34, 0x23, 0x43, 0x94, 0xdb, 0xb8, 0x21, 0x67, 0x54, 0x9d, 0x48, 0xff, 0x35, 0x74, 0x9c, + 0x31, 0x9b, 0x95, 0xba, 0xa6, 0x48, 0x8a, 0xd5, 0x54, 0x65, 0x53, 0x13, 0x4c, 0xcb, 0xa0, 0x06, + 0x9a, 0xe2, 0xc6, 0x02, 0x37, 0x16, 0x5c, 0xe3, 0x78, 0xba, 0xa6, 0xd1, 0xdb, 0xcd, 0x8a, 0xa0, + 0x18, 0x8d, 0x4c, 0xcd, 0xa8, 0x19, 0x19, 0x66, 0x5e, 0x69, 0x56, 0xd9, 0x89, 0x1d, 0xd8, 0x15, + 0x87, 0x89, 0x9f, 0xae, 0x19, 0x46, 0xad, 0x8e, 0x33, 0xb2, 0xa9, 0x65, 0x64, 0x5d, 0x37, 0xa8, + 0x4c, 0x35, 0x43, 0x27, 0x8e, 0xf6, 0xd7, 0x8e, 0xb6, 0x83, 0x81, 0x1b, 0x26, 0xdd, 0x74, 0x94, + 0x33, 0x03, 0xc2, 0x55, 0x75, 0x42, 0xb0, 0x72, 0x80, 0x91, 0x51, 0xf9, 0x37, 0x56, 0xa8, 0x63, + 0x94, 0x1a, 0x60, 0x44, 0x37, 0x4d, 0xec, 0x86, 0x12, 0xef, 0xb5, 0xc1, 0x96, 0x65, 0x58, 0x9d, + 0x30, 0x7b, 0x75, 0x86, 0xd9, 0xcd, 0x61, 0xba, 0x57, 0xd9, 0x8d, 0xd9, 0x77, 0xdf, 0x16, 0x26, + 0x58, 0x6f, 0xf5, 0xb9, 0x27, 0xfb, 0x6c, 0x34, 0xbc, 0x21, 0xf5, 0x58, 0xa4, 0x1e, 0x02, 0x38, + 0x9e, 0xb3, 0xb0, 0x4c, 0xb1, 0x88, 0xff, 0xd3, 0xc4, 0x84, 0xa2, 0xbf, 0xc2, 0x50, 0x03, 0x53, + 0x59, 0x95, 0xa9, 0x1c, 0x03, 0x49, 0x30, 0x1b, 0x99, 0x9f, 0x11, 0x7a, 0xd3, 0xb5, 0xc6, 0xe8, + 0x73, 0xaf, 0xeb, 0x98, 0xca, 0xe5, 0x4d, 0x13, 0x8b, 0x1d, 0x27, 0x74, 0x0d, 0x06, 0x88, 0x89, + 0x95, 0x98, 0x8f, 0x39, 0x9f, 0x13, 0xbc, 0x73, 0x2d, 0x70, 0xff, 0x92, 0x89, 0x15, 0xdb, 0x7f, + 0x69, 0xf2, 0xe3, 0xad, 0x31, 0xdb, 0x4d, 0xa8, 0x29, 0x92, 0xfd, 0x2b, 0x32, 0x90, 0x85, 0xf0, + 0xe3, 0xc5, 0x20, 0xbf, 0x5f, 0xea, 0x47, 0x00, 0x27, 0xdc, 0x50, 0x89, 0x69, 0xe8, 0x04, 0xa3, + 0xbf, 0xec, 0x89, 0x35, 0xe9, 0x19, 0xeb, 0x0a, 0xa6, 0x1e, 0x81, 0xae, 0xc1, 0x49, 0xb2, 0x49, + 0x28, 0x6e, 0x48, 0x1d, 0x10, 0xbf, 0x67, 0xcc, 0x25, 0x66, 0xb5, 0x17, 0x6a, 0x82, 0xbb, 0x5f, + 0x77, 0x01, 0xaf, 0xf4, 0x30, 0x9f, 0x19, 0xc4, 0x7c, 0x05, 0xd3, 0x43, 0xd0, 0xfe, 0x16, 0xc0, + 0x09, 0x11, 0x9b, 0x75, 0x59, 0xe9, 0xa4, 0xe8, 0x6f, 0x7b, 0x68, 0x9f, 0xf5, 0xa4, 0xed, 0xb8, + 0x79, 0x50, 0x2f, 0xf6, 0x44, 0x7a, 0x7e, 0x50, 0xa4, 0x0e, 0xc0, 0x01, 0xd1, 0xa2, 0x0c, 0x8c, + 0x5a, 0x98, 0x18, 0x4d, 0x4b, 0xc1, 0x52, 0x0b, 0x5b, 0x44, 0x33, 0x74, 0xf6, 0x24, 0xc3, 0x4b, + 0x81, 0x97, 0xdb, 0x00, 0x88, 0x93, 0xae, 0x76, 0x9d, 0x2b, 0xbb, 0xe9, 0x1d, 0x87, 0x93, 0x1d, + 0x76, 0x3c, 0xab, 0xa9, 0x8f, 0x00, 0x84, 0x2b, 0x98, 0xba, 0x6c, 0x4f, 0xc3, 0xb0, 0x2e, 0x37, + 0x30, 0x31, 0x65, 0x05, 0x33, 0xba, 0x61, 0xf1, 0xb5, 0x00, 0x21, 0x18, 0xb0, 0x0f, 0x8c, 0x49, + 0x58, 0x64, 0xd7, 0x68, 0x1d, 0xda, 0x77, 0x64, 0x60, 0x52, 0xd5, 0xb0, 0x1a, 0x32, 0x65, 0xe1, + 0x4c, 0xcc, 0xa7, 0xf7, 0x49, 0x89, 0x7b, 0xfb, 0x02, 0x73, 0xc8, 0x19, 0x2a, 0x16, 0x27, 0xac, + 0x1e, 0x59, 0xea, 0xa7, 0x51, 0x18, 0xe9, 0xb2, 0x44, 0x05, 0x18, 0x51, 0x58, 0x41, 0xb2, 0xbb, + 0x38, 0x0f, 0xf3, 0xb7, 0xfb, 0x17, 0xbc, 0xc3, 0x4a, 0x84, 0xdc, 0xd3, 0x46, 0x46, 0xab, 0x70, + 0xcc, 0xe2, 0xcf, 0x80, 0x03, 0xf9, 0xf7, 0xef, 0x9c, 0xde, 0x6a, 0x10, 0x23, 0x8e, 0x2f, 0x83, + 0xf2, 0x4a, 0x45, 0x60, 0x9f, 0x54, 0xf4, 0xb4, 0xd0, 0xe8, 0x51, 0xb4, 0xd0, 0xb1, 0x23, 0x69, + 0xa1, 0xe0, 0xdb, 0xb6, 0x10, 0xca, 0xc1, 0x20, 0xa1, 0x32, 0x6d, 0x92, 0xd8, 0x83, 0x4f, 0x40, + 0xd2, 0xef, 0xd1, 0x24, 0x1d, 0xb4, 0x12, 0xb3, 0xe3, 0xc1, 0x2d, 0xf9, 0x77, 0xb6, 0x80, 0xe8, + 0xb8, 0xa2, 0x55, 0x78, 0xdc, 0xc2, 0x55, 0x6c, 0x59, 0x9a, 0x5e, 0x93, 0xf8, 0xd8, 0x27, 0xb1, + 0x10, 0x43, 0x3b, 0x3d, 0xa0, 0xe5, 0xaa, 0x8c, 0x57, 0xb4, 0xe3, 0xc6, 0xe5, 0x04, 0xad, 0xc3, + 0x98, 0x8a, 0xeb, 0x98, 0x62, 0x55, 0xe2, 0x3a, 0xac, 0x76, 0x10, 0xc3, 0x43, 0x20, 0x4e, 0x39, + 0xde, 0xa2, 0xe3, 0xec, 0xe2, 0xfe, 0x03, 0x4e, 0xab, 0x1a, 0x91, 0x2b, 0x75, 0x2f, 0x60, 0x38, + 0x04, 0xf0, 0x29, 0xd7, 0xbd, 0x0f, 0xb9, 0xab, 0x4b, 0xaf, 0x06, 0x42, 0x20, 0xea, 0x4b, 0x7d, + 0x0a, 0x60, 0xa4, 0xa8, 0x91, 0x21, 0x3b, 0xf3, 0x37, 0x70, 0xac, 0x2e, 0x57, 0x70, 0x5d, 0xaa, + 0x6a, 0x75, 0x8a, 0x2d, 0xa7, 0x43, 0x23, 0x4c, 0x56, 0x60, 0x22, 0x34, 0x03, 0xc7, 0x2d, 0x6c, + 0x1a, 0x16, 0x95, 0xaa, 0x1a, 0xae, 0xab, 0x24, 0xe6, 0x4f, 0xfa, 0x67, 0xc3, 0xe2, 0x18, 0x17, + 0x16, 0x98, 0x0c, 0x5d, 0x80, 0x27, 0x1c, 0x23, 0x9e, 0x14, 0xd7, 0x36, 0xc0, 0x6c, 0x11, 0xd7, + 0xf1, 0x14, 0x72, 0x8f, 0xd4, 0x67, 0x41, 0x18, 0xe5, 0x71, 0xf2, 0x46, 0x5d, 0xa5, 0xb8, 0x81, + 0xa6, 0x60, 0x90, 0x62, 0x5d, 0xd6, 0x29, 0xab, 0xad, 0xb0, 0xe8, 0x9c, 0xde, 0x60, 0xbc, 0x44, + 0xa1, 0xbf, 0xa9, 0xa9, 0x7c, 0xc2, 0x89, 0xf6, 0x25, 0x4a, 0xc2, 0x88, 0x8a, 0x89, 0x62, 0x69, + 0xec, 0xdd, 0x1a, 0x8b, 0x70, 0xa6, 0x5d, 0x22, 0x14, 0x87, 0x21, 0xf7, 0x31, 0xc7, 0xc6, 0x92, + 0x60, 0x36, 0x24, 0x76, 0xce, 0xa8, 0x08, 0x83, 0xec, 0xa1, 0x70, 0x4a, 0x91, 0xf9, 0x4b, 0x83, + 0xea, 0xb4, 0x9f, 0x93, 0x50, 0x64, 0x6e, 0x79, 0x9d, 0x5a, 0x9b, 0xa2, 0x83, 0x81, 0xfe, 0x05, + 0x23, 0x5d, 0xbb, 0x90, 0x53, 0x01, 0x97, 0x87, 0x86, 0xcc, 0xbe, 0xf6, 0xe5, 0xb8, 0xdd, 0x68, + 0xe8, 0x32, 0x84, 0xc6, 0x86, 0x8e, 0x2d, 0xc9, 0x5e, 0x25, 0x62, 0x61, 0xd6, 0xa4, 0xf1, 0x3e, + 0xec, 0x75, 0x0d, 0x6f, 0xb8, 0xb5, 0x15, 0x66, 0xd6, 0xb6, 0xa4, 0x67, 0xd0, 0x8c, 0x1f, 0xc5, + 0xa0, 0x99, 0x78, 0xab, 0x41, 0xb3, 0x08, 0x43, 0x35, 0x4c, 0xd9, 0xc0, 0x70, 0x46, 0xd6, 0x30, + 0xc3, 0x46, 0x3c, 0x56, 0xe3, 0x07, 0x74, 0x05, 0x42, 0xa7, 0x1c, 0x09, 0xa6, 0xce, 0x48, 0x38, + 0xc4, 0x80, 0x09, 0x73, 0xe7, 0x12, 0xa6, 0xf1, 0xcb, 0x30, 0xd2, 0x95, 0x47, 0xbb, 0xba, 0xee, + 0xe0, 0x4d, 0xa7, 0x12, 0xed, 0x4b, 0x74, 0x02, 0x8e, 0xb6, 0xe4, 0x7a, 0xd3, 0x2d, 0x42, 0x7e, + 0x58, 0xf0, 0xfd, 0x19, 0xc4, 0x17, 0x61, 0xb4, 0x3f, 0x5f, 0x87, 0xf1, 0xbf, 0x1a, 0x08, 0x8d, + 0x46, 0x83, 0xa9, 0x7b, 0x00, 0x8e, 0x75, 0xd7, 0x01, 0x5a, 0x84, 0xa3, 0x1a, 0xc5, 0x0d, 0x12, + 0xe3, 0x73, 0x73, 0x76, 0xd8, 0xe2, 0x11, 0xb9, 0x1b, 0xba, 0x00, 0x83, 0x7c, 0xc5, 0x8d, 0xf9, + 0x18, 0x40, 0xac, 0x0f, 0x20, 0x6f, 0x2b, 0xd9, 0xe3, 0x74, 0xec, 0x52, 0x77, 0xe0, 0xf8, 0x32, + 0x1b, 0x6f, 0x6f, 0xfe, 0xd2, 0x9f, 0x85, 0xd1, 0xaa, 0xac, 0xd5, 0x25, 0xad, 0xda, 0x19, 0x83, + 0xac, 0x45, 0x43, 0xe2, 0x84, 0x2d, 0x5f, 0xad, 0xba, 0xe3, 0x6d, 0xee, 0x7b, 0x00, 0x4f, 0x7a, + 0xbe, 0xf0, 0x51, 0x1c, 0x4e, 0xad, 0xe4, 0xcb, 0x92, 0x58, 0xba, 0x29, 0x15, 0xd6, 0xc4, 0xeb, + 0xd9, 0xb2, 0xb4, 0x9c, 0x2f, 0x64, 0x6f, 0x15, 0xcb, 0xd1, 0x11, 0x74, 0x06, 0x4e, 0xf7, 0xe9, + 0x0a, 0x6b, 0xa2, 0x94, 0x13, 0xf3, 0xd9, 0x72, 0x3e, 0x0a, 0x50, 0x02, 0xc6, 0x3d, 0xd4, 0x62, + 0xfe, 0x66, 0x31, 0x9b, 0xcb, 0x47, 0x7d, 0x68, 0x1a, 0x9e, 0xec, 0xd3, 0x97, 0xca, 0xd9, 0xf2, + 0xad, 0x52, 0xd4, 0x8f, 0x4e, 0xc1, 0x5f, 0xf5, 0xa9, 0xc4, 0x7c, 0x76, 0x39, 0x1a, 0x40, 0x67, + 0x61, 0x72, 0x8f, 0xa2, 0x90, 0x17, 0xc5, 0xd5, 0x1b, 0x2b, 0xd2, 0xda, 0xd2, 0xd5, 0x7c, 0xae, + 0x5c, 0x8a, 0x8e, 0x7a, 0x58, 0x2d, 0x89, 0x6b, 0xd7, 0xf2, 0x37, 0xb8, 0x71, 0xfe, 0x46, 0x2e, + 0x5f, 0x8a, 0x06, 0xe7, 0x77, 0xc2, 0xd0, 0x9f, 0xbd, 0xb9, 0x8a, 0x9e, 0x03, 0x18, 0xe4, 0x9b, + 0x08, 0x1a, 0x6e, 0x53, 0x89, 0x9f, 0x3b, 0xc8, 0xcc, 0x59, 0xdb, 0xde, 0x05, 0xed, 0x2f, 0x62, + 0x85, 0x16, 0x26, 0x69, 0xcd, 0x48, 0x6b, 0x7a, 0xd5, 0x92, 0x09, 0xb5, 0x9a, 0x0a, 0x6d, 0x5a, + 0x38, 0xbd, 0x61, 0x69, 0x14, 0xff, 0xbe, 0xfa, 0xc7, 0xbb, 0x4a, 0x5a, 0xd5, 0x49, 0xba, 0x22, + 0x13, 0x4d, 0x49, 0x37, 0x09, 0xb6, 0x5e, 0xcb, 0x08, 0x95, 0x75, 0x55, 0xb6, 0x54, 0x26, 0xbe, + 0xff, 0xd5, 0x77, 0x1f, 0xfa, 0xfe, 0x94, 0xba, 0xe8, 0xfc, 0x7d, 0xcc, 0x74, 0x52, 0x4f, 0x32, + 0xff, 0x73, 0x07, 0x80, 0xd0, 0x11, 0x6e, 0x75, 0xfe, 0x75, 0x91, 0x05, 0x30, 0x87, 0xbe, 0x01, + 0xd0, 0xbf, 0x82, 0x29, 0x4a, 0xed, 0xbb, 0xed, 0x71, 0x72, 0x33, 0x43, 0x6c, 0x84, 0xa9, 0xf7, + 0xc0, 0xa3, 0xcf, 0x7d, 0x36, 0xbb, 0x6b, 0xde, 0xec, 0x2c, 0x2c, 0xab, 0xfd, 0xe4, 0x1a, 0x86, + 0xae, 0x51, 0xc3, 0x8b, 0x9f, 0xa3, 0x61, 0x14, 0x2f, 0xa2, 0x8c, 0x17, 0x45, 0x2f, 0x66, 0x5c, + 0xba, 0x85, 0xbe, 0x06, 0x30, 0x60, 0x37, 0x1e, 0x9a, 0xd9, 0xbf, 0x2d, 0x39, 0xbf, 0xb3, 0xc3, + 0xf4, 0x6e, 0xea, 0xff, 0xbf, 0x18, 0xc1, 0x39, 0x34, 0x3b, 0x2c, 0x41, 0xf4, 0x03, 0x80, 0xc7, + 0x9c, 0xdd, 0x16, 0x0d, 0xb9, 0xfc, 0xc6, 0xcf, 0x1f, 0x68, 0xd7, 0xf9, 0x53, 0x71, 0xc4, 0xd5, + 0x59, 0x88, 0x67, 0x0f, 0x5d, 0x9d, 0x7d, 0xea, 0x2d, 0xbb, 0x5a, 0x9f, 0x00, 0x18, 0xe4, 0xb3, + 0x6f, 0x70, 0x43, 0xf6, 0xcc, 0xc6, 0xf8, 0x94, 0xc0, 0xbf, 0x6c, 0x08, 0xee, 0x97, 0x0d, 0x21, + 0xdf, 0x30, 0xe9, 0x66, 0xea, 0x9d, 0xa3, 0xa6, 0x78, 0x69, 0xee, 0xb0, 0xd5, 0xb9, 0x00, 0xe6, + 0xe2, 0x7f, 0xdf, 0xd9, 0x06, 0xbe, 0x2f, 0xb7, 0xc1, 0x99, 0x01, 0x64, 0xf8, 0x6b, 0xf0, 0xd9, + 0x36, 0x00, 0xed, 0x6d, 0x30, 0x33, 0xc4, 0x1b, 0xf3, 0xfe, 0x93, 0x98, 0xff, 0x01, 0x00, 0x4b, + 0xef, 0x83, 0xc7, 0x8b, 0xa3, 0x39, 0xf1, 0xd6, 0x72, 0xf1, 0xe9, 0x8b, 0xc4, 0xc8, 0xb3, 0x17, + 0x89, 0x91, 0x57, 0x2f, 0x12, 0xe0, 0x5e, 0x3b, 0x01, 0x1e, 0xb6, 0x13, 0xe0, 0x51, 0x3b, 0x01, + 0x9e, 0xb6, 0x13, 0xe0, 0x79, 0x3b, 0x01, 0x5e, 0xb6, 0x13, 0x23, 0xaf, 0xda, 0x09, 0xf0, 0xc1, + 0x6e, 0x62, 0x64, 0x67, 0x37, 0x01, 0x9e, 0xee, 0x26, 0x46, 0x9e, 0xed, 0x26, 0x46, 0xfe, 0x59, + 0xac, 0x19, 0xe6, 0x9d, 0x9a, 0xd0, 0x32, 0xec, 0xf5, 0xd3, 0x92, 0x85, 0x26, 0xc9, 0xb0, 0x0b, + 0xfb, 0x6f, 0x57, 0xda, 0xb4, 0x8c, 0x96, 0xa6, 0x62, 0x2b, 0xed, 0xaa, 0x33, 0x66, 0xa5, 0x66, + 0x64, 0xf0, 0x5d, 0xea, 0x7c, 0x3f, 0xe9, 0xfb, 0xc4, 0x53, 0x09, 0xb2, 0x04, 0xfc, 0xe1, 0xe7, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x59, 0xa7, 0x5b, 0x98, 0xfc, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/dns_zone/public_crudapi.vesapi.go b/pbgo/extschema/schema/dns_zone/public_crudapi.vesapi.go index 17abf82d6..91b1f3e66 100644 --- a/pbgo/extschema/schema/dns_zone/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/dns_zone/public_crudapi.vesapi.go @@ -5206,10 +5206,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5266,10 +5270,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5328,10 +5336,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_zone/public_custom_data_api.pb.go b/pbgo/extschema/schema/dns_zone/public_custom_data_api.pb.go index 08c2ed3fb..75bcbfac2 100644 --- a/pbgo/extschema/schema/dns_zone/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/dns_zone/public_custom_data_api.pb.go @@ -1332,118 +1332,118 @@ func init() { } var fileDescriptor_7feea21366f27619 = []byte{ - // 1764 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x57, 0xcf, 0x6f, 0x1b, 0xc7, - 0x15, 0xe6, 0x2c, 0x49, 0x49, 0x1c, 0x49, 0xce, 0xcb, 0x36, 0x71, 0x69, 0xc5, 0x62, 0x15, 0xba, - 0x46, 0x15, 0xc5, 0x24, 0x65, 0xc9, 0x72, 0x1c, 0xf5, 0xe7, 0x8a, 0x5c, 0x49, 0x5b, 0x93, 0xcb, - 0xcd, 0xec, 0x52, 0x90, 0x7c, 0x21, 0x96, 0xe4, 0x88, 0xde, 0x98, 0xdc, 0x65, 0x76, 0x97, 0x6a, - 0xd4, 0xa2, 0x80, 0x62, 0x14, 0x3e, 0x07, 0xe8, 0xa5, 0xbd, 0xf5, 0xd8, 0x3f, 0xa1, 0xa8, 0x2f, - 0x06, 0x7a, 0x68, 0x4e, 0x81, 0xd1, 0x5e, 0x82, 0xa2, 0x87, 0x5a, 0x2e, 0x8a, 0xf6, 0xe6, 0x16, - 0xbd, 0xf5, 0x27, 0xde, 0xec, 0x52, 0x11, 0xe5, 0xb8, 0x51, 0xd0, 0xd3, 0xbe, 0x79, 0xef, 0x7b, - 0xdf, 0x9b, 0x79, 0xdf, 0xe3, 0x72, 0x96, 0xae, 0x1e, 0xf0, 0xa0, 0xe8, 0x78, 0xa5, 0xa0, 0x7d, - 0x97, 0xf7, 0xed, 0x52, 0xc7, 0x0d, 0x9a, 0xdf, 0xf7, 0x5c, 0x5e, 0x1a, 0x0c, 0x5b, 0x3d, 0xa7, - 0xdd, 0x6c, 0x0f, 0x83, 0xd0, 0xeb, 0x37, 0x3b, 0x76, 0x68, 0x37, 0xed, 0x81, 0x53, 0x1c, 0xf8, - 0x5e, 0xe8, 0xc9, 0x17, 0xa3, 0xa4, 0x62, 0x94, 0x54, 0x1c, 0x25, 0xcd, 0x15, 0xba, 0x4e, 0x78, - 0x77, 0xd8, 0x2a, 0xb6, 0xbd, 0x7e, 0xa9, 0xeb, 0x75, 0xbd, 0x92, 0x80, 0xb7, 0x86, 0xfb, 0x62, - 0x25, 0x16, 0xc2, 0x8a, 0x68, 0xe6, 0x2e, 0x77, 0x3d, 0xaf, 0xdb, 0xe3, 0x25, 0x7b, 0xe0, 0x94, - 0x6c, 0xd7, 0xf5, 0x42, 0x3b, 0x74, 0x3c, 0x37, 0x88, 0xa3, 0xf3, 0xe3, 0x3b, 0xeb, 0x79, 0xdd, - 0x52, 0x78, 0x38, 0xe0, 0xa3, 0xf0, 0x6b, 0xe3, 0x61, 0x6f, 0x70, 0x3a, 0xf7, 0xd2, 0x78, 0xf0, - 0x74, 0xde, 0xe5, 0xf1, 0xd0, 0x81, 0xdd, 0x73, 0x3a, 0x76, 0xc8, 0xe3, 0x68, 0xfe, 0x4c, 0x94, - 0x07, 0xdc, 0x3d, 0x38, 0x43, 0xbe, 0x70, 0x06, 0xe3, 0xf0, 0xef, 0x35, 0xc7, 0x10, 0xf9, 0x8f, - 0x25, 0xfa, 0x6a, 0xc5, 0x0d, 0xee, 0x78, 0x2e, 0xaf, 0xf1, 0xd0, 0x77, 0xda, 0x01, 0xe3, 0xef, - 0x0d, 0x79, 0x10, 0xca, 0x97, 0x69, 0xc6, 0xb5, 0xfb, 0x3c, 0x18, 0xd8, 0x6d, 0x9e, 0x25, 0x0b, - 0x64, 0x31, 0xc3, 0x3e, 0x75, 0xc8, 0x17, 0xe9, 0xc4, 0xbe, 0xd3, 0x0b, 0xb9, 0x9f, 0x4d, 0x8a, - 0x50, 0xbc, 0x92, 0x6f, 0xd1, 0xa9, 0xae, 0xef, 0x0d, 0x07, 0xcd, 0xd6, 0x61, 0x36, 0xb5, 0x90, - 0x5c, 0xbc, 0xb0, 0x32, 0x5f, 0xfc, 0x6c, 0x09, 0x8a, 0x55, 0xbb, 0xc5, 0x7b, 0x6c, 0x52, 0xc0, - 0x37, 0x0e, 0xe5, 0x37, 0x28, 0x0d, 0x42, 0xdb, 0x0f, 0x9b, 0xa1, 0xd3, 0xe7, 0xd9, 0x09, 0x64, - 0xdd, 0xa0, 0xbf, 0xfc, 0xcb, 0xa3, 0x64, 0xda, 0x4f, 0xfe, 0x24, 0x45, 0x58, 0x46, 0x44, 0x2d, - 0xa7, 0xcf, 0xe5, 0xab, 0x74, 0x8a, 0xbb, 0x9d, 0x08, 0x38, 0xf9, 0x1c, 0x70, 0x92, 0xbb, 0x1d, - 0x01, 0xbb, 0x46, 0x53, 0x81, 0xe7, 0x87, 0xd9, 0xa9, 0x05, 0xb2, 0x78, 0x61, 0x25, 0x7b, 0x66, - 0x1f, 0xa6, 0xe7, 0x87, 0x75, 0xbf, 0xc3, 0x7d, 0x26, 0x50, 0xf2, 0x55, 0x9a, 0xee, 0x39, 0x7d, - 0x27, 0xcc, 0x66, 0x16, 0xc8, 0xe2, 0xec, 0xc6, 0x4b, 0xbf, 0x7b, 0x48, 0xa4, 0xeb, 0xcb, 0xc8, - 0x9b, 0x5a, 0x92, 0xb2, 0x1d, 0x16, 0x45, 0xe5, 0x1c, 0x4d, 0x05, 0x21, 0x1f, 0x64, 0xe9, 0x58, - 0xdd, 0x9f, 0xa5, 0x08, 0x13, 0xfe, 0xfc, 0x87, 0x84, 0x5e, 0x3c, 0xdb, 0xd0, 0x60, 0xe0, 0xb9, - 0x01, 0x97, 0xdf, 0xa2, 0x29, 0x9c, 0xce, 0x2c, 0x59, 0x48, 0x2e, 0x4e, 0xaf, 0x5c, 0x79, 0x51, - 0x5f, 0xe2, 0xb4, 0x8a, 0x1d, 0xda, 0x4c, 0x24, 0x9c, 0xd4, 0x94, 0xc6, 0x6a, 0x3e, 0x93, 0xe2, - 0x9a, 0xf2, 0x3c, 0xa5, 0xa1, 0x17, 0xda, 0xbd, 0xe6, 0x5d, 0x27, 0x0c, 0x84, 0x20, 0x29, 0x96, - 0x11, 0x9e, 0x6d, 0x27, 0x0c, 0xf2, 0x7f, 0x23, 0x34, 0x1b, 0x6f, 0x29, 0x16, 0xb7, 0xea, 0x75, - 0xbf, 0xa8, 0xcc, 0xd2, 0x98, 0xcc, 0xe3, 0x62, 0x25, 0xcf, 0x2b, 0x56, 0xea, 0xf3, 0xc5, 0x4a, - 0x9f, 0x4b, 0xac, 0x85, 0x91, 0x58, 0x13, 0x42, 0xac, 0x88, 0x71, 0x29, 0x99, 0xfd, 0x7b, 0x32, - 0xd6, 0x29, 0xff, 0x80, 0xd0, 0x4b, 0x9f, 0x71, 0xe8, 0x58, 0x8a, 0xef, 0xd2, 0x54, 0xcf, 0xeb, - 0x06, 0xb1, 0x14, 0x37, 0x5f, 0x24, 0xc5, 0x73, 0x04, 0x27, 0x62, 0x46, 0xea, 0x20, 0xc7, 0x99, - 0xee, 0x4b, 0x67, 0xbb, 0xff, 0x2b, 0x42, 0xa7, 0x4f, 0x49, 0x2a, 0x6f, 0xd1, 0x89, 0x1e, 0x4e, - 0xfe, 0xa8, 0x78, 0xe9, 0x1c, 0x73, 0x10, 0xfd, 0x56, 0x02, 0xd5, 0x0d, 0xfd, 0x43, 0x16, 0xa7, - 0xcb, 0xcb, 0x34, 0x7d, 0x60, 0xf7, 0x86, 0x3c, 0x2b, 0x09, 0x9e, 0xb9, 0x33, 0x3c, 0x51, 0xfa, - 0x0e, 0x22, 0x58, 0x04, 0x9c, 0x7b, 0x9b, 0x4e, 0x9f, 0x22, 0x92, 0x81, 0x26, 0xef, 0xf1, 0xc3, - 0x58, 0x74, 0x34, 0xe5, 0x57, 0x3e, 0xa5, 0x44, 0x5f, 0xb4, 0x58, 0x97, 0x6e, 0x91, 0xfc, 0x03, - 0x89, 0xe6, 0xfe, 0x77, 0x37, 0x70, 0x92, 0x50, 0xe4, 0x20, 0xb4, 0xfb, 0x83, 0xd1, 0x24, 0x9d, - 0x38, 0xe4, 0xd7, 0xe9, 0x4c, 0xdb, 0x1b, 0x62, 0xdd, 0x66, 0xdb, 0xeb, 0x8c, 0x2a, 0x4c, 0xc7, - 0xbe, 0xb2, 0xd7, 0x11, 0xc3, 0xd6, 0xf1, 0xfa, 0xb6, 0xe3, 0x8e, 0xde, 0x29, 0xd1, 0x0a, 0x1b, - 0xfc, 0xde, 0x90, 0xfb, 0x87, 0x4d, 0x7c, 0x39, 0x46, 0x33, 0xc4, 0x32, 0xc2, 0x63, 0x1d, 0x0e, - 0xb8, 0x7c, 0x85, 0xce, 0xfa, 0xf1, 0x3e, 0x22, 0xea, 0xb4, 0x40, 0xcc, 0x8c, 0x9c, 0x82, 0xfb, - 0x0a, 0x9d, 0x6d, 0xf7, 0x1c, 0xee, 0x86, 0xcd, 0x60, 0xd8, 0x72, 0x79, 0x34, 0x38, 0x19, 0x36, - 0x13, 0x39, 0x4d, 0xe1, 0x93, 0xf3, 0x74, 0x76, 0xd4, 0xfd, 0x26, 0xfe, 0x06, 0xa2, 0x97, 0x0b, - 0x9b, 0xee, 0x44, 0x07, 0xd7, 0xed, 0x3e, 0x5f, 0x72, 0x69, 0x5a, 0xf4, 0x50, 0x06, 0x3a, 0x53, - 0xae, 0x37, 0x74, 0x8b, 0xed, 0x35, 0xcb, 0xf5, 0x8a, 0x0a, 0x09, 0x99, 0xd2, 0x89, 0x4a, 0xbd, - 0xa6, 0x68, 0x3a, 0x10, 0xf9, 0x02, 0xa5, 0xef, 0x34, 0x54, 0xb6, 0xd7, 0xb4, 0xf6, 0x0c, 0x15, - 0x24, 0xf9, 0x65, 0x3a, 0xcb, 0x54, 0xd3, 0xa8, 0xeb, 0xa6, 0x1a, 0xc1, 0x93, 0xe8, 0xaa, 0xe8, - 0x66, 0xf3, 0x4e, 0x5d, 0x57, 0x9b, 0xba, 0x52, 0x53, 0x21, 0x85, 0xae, 0x72, 0x55, 0x53, 0x75, - 0xab, 0x69, 0x36, 0x36, 0x74, 0xd5, 0x82, 0xf4, 0xd2, 0xef, 0x27, 0x68, 0xe6, 0x9d, 0x93, 0xb3, - 0x4e, 0xd1, 0x94, 0xee, 0xb9, 0x1c, 0x12, 0x72, 0x9a, 0x12, 0x05, 0x88, 0x3c, 0x41, 0x25, 0xdd, - 0x04, 0x09, 0x9f, 0xb5, 0x0a, 0x24, 0xc5, 0x73, 0x13, 0x52, 0x72, 0x86, 0xa6, 0xcb, 0x82, 0x34, - 0x2d, 0x4f, 0xd2, 0xa4, 0x59, 0x57, 0x60, 0x42, 0xc4, 0x36, 0x60, 0x52, 0x3c, 0xb7, 0x60, 0x4a, - 0x3c, 0x19, 0x64, 0x04, 0x69, 0xa3, 0x5a, 0x05, 0x8a, 0x50, 0xc3, 0x62, 0x30, 0x83, 0xe9, 0xdb, - 0x9a, 0xbe, 0x59, 0x87, 0x59, 0x34, 0x6b, 0xc2, 0xbc, 0x20, 0x12, 0x76, 0xe1, 0x25, 0x84, 0x59, - 0xbb, 0x16, 0x00, 0x3a, 0x98, 0x01, 0x2f, 0x23, 0x46, 0xd9, 0x34, 0x2b, 0x1b, 0x20, 0x63, 0x6c, - 0x77, 0x65, 0x0d, 0xbe, 0x84, 0xac, 0x9a, 0x59, 0xd1, 0xe1, 0x15, 0x81, 0xb2, 0xe0, 0x55, 0x79, - 0x9a, 0x4e, 0xea, 0xa6, 0x62, 0x60, 0x85, 0x2f, 0x8b, 0x5d, 0x69, 0x5b, 0x90, 0x45, 0xe3, 0xb6, - 0xba, 0x07, 0x97, 0x10, 0x66, 0xec, 0xc2, 0x1c, 0x26, 0x6e, 0x19, 0x75, 0x13, 0x5e, 0x43, 0x4b, - 0x51, 0x14, 0x05, 0x2e, 0x23, 0xa8, 0x5a, 0x2f, 0xc3, 0x3c, 0x1a, 0xfa, 0xae, 0x05, 0x39, 0x34, - 0x54, 0xad, 0x02, 0x5f, 0xc1, 0xae, 0xeb, 0x5a, 0x0d, 0xa3, 0x0b, 0x82, 0x94, 0xed, 0xc0, 0xeb, - 0x22, 0xd3, 0xaa, 0x29, 0x90, 0xc7, 0xad, 0xe9, 0x0a, 0x96, 0xbc, 0x82, 0x05, 0x6e, 0xef, 0xc2, - 0x57, 0x31, 0x58, 0x56, 0x99, 0x05, 0x57, 0x31, 0x58, 0x11, 0x5d, 0xfa, 0x1a, 0xa6, 0xd6, 0x0d, - 0x0b, 0xde, 0x40, 0x43, 0x31, 0xaa, 0xb0, 0x84, 0xf0, 0x8a, 0x09, 0x6f, 0x22, 0xc8, 0x34, 0xb7, - 0x37, 0x0d, 0xb8, 0x26, 0xcf, 0xd0, 0x29, 0xcd, 0x30, 0xd5, 0x32, 0x6e, 0xb8, 0x80, 0x01, 0xc6, - 0xf0, 0x10, 0x45, 0xd1, 0x42, 0x53, 0x2d, 0x43, 0x49, 0x0c, 0x81, 0x6e, 0x22, 0x60, 0x59, 0xd0, - 0x6f, 0x97, 0xb5, 0x0a, 0x5c, 0x17, 0xdb, 0x30, 0xd5, 0xf2, 0x2a, 0xac, 0xe0, 0x68, 0x08, 0xd3, - 0x50, 0x98, 0x52, 0x83, 0x55, 0xcc, 0xb5, 0xaa, 0xa6, 0x02, 0x37, 0x30, 0xd7, 0xac, 0x69, 0x35, - 0x55, 0x81, 0x35, 0xdc, 0xc6, 0xb6, 0x66, 0xc0, 0x5b, 0x22, 0x53, 0xf4, 0xff, 0x16, 0x22, 0x19, - 0x32, 0xbf, 0x8d, 0x48, 0x4b, 0xa9, 0x6a, 0xfa, 0x6d, 0x58, 0x47, 0x64, 0xb9, 0x62, 0xc2, 0xd7, - 0xb1, 0xbf, 0xe5, 0xb8, 0xf6, 0x37, 0xb0, 0x4a, 0xdd, 0x50, 0x75, 0x63, 0xcb, 0xc0, 0xf5, 0x37, - 0xc5, 0x40, 0x98, 0x7b, 0x7a, 0x19, 0xbe, 0x85, 0xc9, 0x38, 0x74, 0xb5, 0x0a, 0x7c, 0x1b, 0x29, - 0xcd, 0x9d, 0xf2, 0x06, 0x7c, 0x47, 0x48, 0x6e, 0x59, 0x86, 0x09, 0x8a, 0x68, 0xa3, 0xb1, 0x09, - 0x6d, 0xf4, 0x35, 0x44, 0xed, 0x0e, 0xfa, 0x1a, 0x5a, 0x05, 0x38, 0x1a, 0x5b, 0x5a, 0x05, 0xf6, - 0x91, 0xa6, 0xa1, 0x9b, 0x86, 0x5a, 0x86, 0xae, 0x90, 0x45, 0xab, 0xc0, 0x5d, 0x21, 0xd4, 0xea, - 0x0a, 0x38, 0xc2, 0xb8, 0x79, 0x03, 0xde, 0xc5, 0x36, 0x56, 0x0d, 0xb8, 0x87, 0x5c, 0x6a, 0x43, - 0xbb, 0x71, 0x0b, 0x7a, 0xb1, 0x79, 0xf3, 0x06, 0xf4, 0xe5, 0x29, 0x9a, 0x6c, 0x30, 0x0d, 0x8e, - 0x24, 0xb4, 0xca, 0x8a, 0x02, 0x1f, 0x08, 0x4b, 0xd9, 0x29, 0xc3, 0x7d, 0x49, 0x9e, 0xa5, 0x53, - 0x4a, 0xcd, 0x62, 0x6a, 0x55, 0xd9, 0x83, 0x1f, 0x49, 0x72, 0x86, 0xa6, 0xb4, 0xdd, 0x4d, 0x06, - 0xff, 0x20, 0x68, 0x2a, 0x68, 0xfe, 0x93, 0xc8, 0x94, 0xa6, 0x6b, 0x8a, 0x56, 0xdd, 0x80, 0x7f, - 0x9d, 0xd8, 0x0a, 0xfc, 0x9b, 0x08, 0x1a, 0x7d, 0x0f, 0xfe, 0x83, 0x96, 0x64, 0x29, 0x70, 0x74, - 0x84, 0x0c, 0xc9, 0x4a, 0x75, 0x07, 0x3e, 0x38, 0x92, 0xe6, 0x52, 0x8f, 0x1e, 0x92, 0xc4, 0x52, - 0x87, 0xce, 0xb0, 0xd3, 0xef, 0x09, 0x9c, 0xd1, 0xba, 0xca, 0x58, 0x9d, 0x41, 0x02, 0x17, 0x9b, - 0x75, 0x56, 0x53, 0x19, 0x03, 0x82, 0xda, 0x9b, 0x2a, 0xdb, 0xd9, 0x54, 0xb4, 0x2a, 0x48, 0xb8, - 0xd2, 0x77, 0xe3, 0x5f, 0x7b, 0x12, 0x81, 0x4c, 0xdd, 0x6c, 0x98, 0x6a, 0x05, 0xd2, 0x11, 0x85, - 0xa5, 0x34, 0xac, 0x6d, 0xc8, 0x44, 0x55, 0x56, 0x7e, 0x9a, 0xa2, 0xb3, 0x65, 0x71, 0x3f, 0xc5, - 0x37, 0xa5, 0x62, 0x68, 0xf2, 0x9f, 0x08, 0xbd, 0x30, 0x7e, 0x4d, 0x90, 0x0b, 0x9f, 0xf3, 0x2f, - 0x34, 0x7e, 0x3f, 0x9b, 0x2b, 0x9e, 0x17, 0x1e, 0x9d, 0x2e, 0x3f, 0xfc, 0xe8, 0x17, 0x12, 0x39, - 0xfe, 0x75, 0x76, 0xe5, 0x80, 0x07, 0x05, 0xc7, 0x2b, 0x38, 0xee, 0xbe, 0x6f, 0x07, 0xa1, 0x3f, - 0x6c, 0x87, 0x43, 0x9f, 0x17, 0x7c, 0x6e, 0x77, 0xae, 0x2d, 0xec, 0xaf, 0xbd, 0xdf, 0x2e, 0x74, - 0xdc, 0xa0, 0xd0, 0xb2, 0x03, 0xa7, 0x5d, 0xe8, 0x7b, 0xae, 0x13, 0x7a, 0xfe, 0xfd, 0xdf, 0xfe, - 0xf1, 0xc7, 0xd2, 0x5a, 0x7e, 0x39, 0xbe, 0x6a, 0x97, 0x4e, 0xee, 0x07, 0x41, 0xe9, 0x07, 0x27, - 0xf6, 0x0f, 0x4f, 0x6e, 0xe4, 0x41, 0xa9, 0x1f, 0xd5, 0x5e, 0x27, 0x4b, 0xf2, 0x5f, 0x09, 0x95, - 0x9f, 0xff, 0xe3, 0x90, 0x97, 0xcf, 0xfd, 0x97, 0x3b, 0x3a, 0xef, 0xf5, 0x2f, 0x90, 0x11, 0x1f, - 0xf9, 0xe0, 0xff, 0x38, 0xee, 0x7a, 0x7e, 0xed, 0xdc, 0xc7, 0xf5, 0xa3, 0xd2, 0x4d, 0xbc, 0x0e, - 0xac, 0x93, 0xa5, 0xb9, 0x37, 0x1f, 0x3d, 0x24, 0xc9, 0xdf, 0x3c, 0x24, 0xf3, 0x2f, 0xd8, 0x71, - 0xbd, 0xf5, 0x2e, 0x6f, 0x87, 0xf7, 0x3f, 0xce, 0x4a, 0x59, 0xb2, 0xf1, 0x80, 0x3c, 0x7e, 0x92, - 0x4b, 0x7c, 0xf2, 0x24, 0x97, 0x78, 0xf6, 0x24, 0x47, 0x8e, 0x8e, 0x73, 0xe4, 0xe7, 0xc7, 0x39, - 0xf2, 0xd1, 0x71, 0x8e, 0x3c, 0x3e, 0xce, 0x91, 0x3f, 0x1c, 0xe7, 0xc8, 0x9f, 0x8f, 0x73, 0x89, - 0x67, 0xc7, 0x39, 0xf2, 0xe1, 0xd3, 0x5c, 0xe2, 0xd1, 0xd3, 0x1c, 0x79, 0xfc, 0x34, 0x97, 0xf8, - 0xe4, 0x69, 0x2e, 0x71, 0xa7, 0xda, 0xf5, 0x06, 0xf7, 0xba, 0xc5, 0x03, 0x0f, 0xef, 0x64, 0xbe, - 0x5d, 0x1c, 0x06, 0x25, 0x61, 0xec, 0x7b, 0x7e, 0xbf, 0x30, 0xf0, 0xbd, 0x03, 0xa7, 0xc3, 0xfd, - 0xc2, 0x28, 0x5c, 0x1a, 0xb4, 0xba, 0x5e, 0x89, 0xbf, 0x1f, 0xc6, 0x5f, 0x03, 0x67, 0xbe, 0xa3, - 0x5a, 0x13, 0xe2, 0x8b, 0x60, 0xf5, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xbe, 0x46, 0x1d, 0x4d, - 0x68, 0x0d, 0x00, 0x00, + // 1776 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0xcf, 0x73, 0xdb, 0xd6, + 0x11, 0x26, 0x40, 0x52, 0x12, 0x9f, 0x24, 0x67, 0x83, 0x26, 0x29, 0xad, 0x58, 0xac, 0x42, 0xd7, + 0x53, 0x45, 0x31, 0x49, 0x59, 0xb2, 0x1c, 0x47, 0xfd, 0x09, 0x01, 0x90, 0x84, 0x9a, 0x04, 0x91, + 0x07, 0x50, 0x23, 0xf9, 0xc2, 0x01, 0xc9, 0x27, 0x1a, 0x31, 0x09, 0x30, 0x00, 0xa8, 0x46, 0xed, + 0x74, 0x46, 0xf1, 0x74, 0x7c, 0xeb, 0x8c, 0x3b, 0xbd, 0xf4, 0xd8, 0x63, 0xff, 0x84, 0x4e, 0x7d, + 0xf1, 0x4c, 0x0f, 0xcd, 0x29, 0xe3, 0xb6, 0x97, 0x4c, 0xa7, 0x87, 0x5a, 0xee, 0xa1, 0xbd, 0x79, + 0x3a, 0xbd, 0xf5, 0xe7, 0xec, 0x03, 0xa8, 0x88, 0x72, 0xdc, 0x28, 0x87, 0x9e, 0xb0, 0x6f, 0xf7, + 0xdb, 0x6f, 0xdf, 0xdb, 0x6f, 0x09, 0x3e, 0x90, 0xd5, 0x03, 0x16, 0x96, 0x5d, 0xbf, 0x12, 0xb6, + 0xef, 0xb0, 0xbe, 0x53, 0xe9, 0x78, 0x61, 0xf3, 0xfb, 0xbe, 0xc7, 0x2a, 0x83, 0x61, 0xab, 0xe7, + 0xb6, 0x9b, 0xed, 0x61, 0x18, 0xf9, 0xfd, 0x66, 0xc7, 0x89, 0x9c, 0xa6, 0x33, 0x70, 0xcb, 0x83, + 0xc0, 0x8f, 0x7c, 0xe9, 0xb5, 0x38, 0xa9, 0x1c, 0x27, 0x95, 0x47, 0x49, 0x73, 0xa5, 0xae, 0x1b, + 0xdd, 0x19, 0xb6, 0xca, 0x6d, 0xbf, 0x5f, 0xe9, 0xfa, 0x5d, 0xbf, 0xc2, 0xe1, 0xad, 0xe1, 0x3e, + 0x5f, 0xf1, 0x05, 0xb7, 0x62, 0x9a, 0xb9, 0x4b, 0x5d, 0xdf, 0xef, 0xf6, 0x58, 0xc5, 0x19, 0xb8, + 0x15, 0xc7, 0xf3, 0xfc, 0xc8, 0x89, 0x5c, 0xdf, 0x0b, 0x93, 0xe8, 0xfc, 0xf8, 0xce, 0x7a, 0x7e, + 0xb7, 0x12, 0x1d, 0x0e, 0xd8, 0x28, 0xfc, 0xfa, 0x78, 0xd8, 0x1f, 0x9c, 0xce, 0xbd, 0x38, 0x1e, + 0x3c, 0x9d, 0x77, 0x69, 0x3c, 0x74, 0xe0, 0xf4, 0xdc, 0x8e, 0x13, 0xb1, 0x24, 0x5a, 0x3c, 0x13, + 0x65, 0x21, 0xf3, 0x0e, 0xce, 0x90, 0x2f, 0x9c, 0xc1, 0xb8, 0xec, 0x7b, 0xcd, 0x31, 0x44, 0xf1, + 0x63, 0x91, 0xbc, 0xaa, 0x7a, 0xe1, 0x6d, 0xdf, 0x63, 0x35, 0x16, 0x05, 0x6e, 0x3b, 0xa4, 0xec, + 0xfd, 0x21, 0x0b, 0x23, 0xe9, 0x12, 0xc9, 0x79, 0x4e, 0x9f, 0x85, 0x03, 0xa7, 0xcd, 0xf2, 0xc2, + 0x82, 0xb0, 0x98, 0xa3, 0x9f, 0x3a, 0xa4, 0xd7, 0xc8, 0xc4, 0xbe, 0xdb, 0x8b, 0x58, 0x90, 0x4f, + 0xf3, 0x50, 0xb2, 0x92, 0x6e, 0x92, 0xa9, 0x6e, 0xe0, 0x0f, 0x07, 0xcd, 0xd6, 0x61, 0x3e, 0xb3, + 0x90, 0x5e, 0xbc, 0xb0, 0x32, 0x5f, 0xfe, 0x6c, 0x09, 0xca, 0x55, 0xa7, 0xc5, 0x7a, 0x74, 0x92, + 0xc3, 0x37, 0x0e, 0xa5, 0x37, 0x09, 0x09, 0x23, 0x27, 0x88, 0x9a, 0x91, 0xdb, 0x67, 0xf9, 0x09, + 0x64, 0xdd, 0x20, 0xbf, 0xfa, 0xeb, 0xa3, 0x74, 0x36, 0x48, 0xff, 0x2c, 0x23, 0xd0, 0x1c, 0x8f, + 0xda, 0x6e, 0x9f, 0x49, 0x57, 0xc8, 0x14, 0xf3, 0x3a, 0x31, 0x70, 0xf2, 0x39, 0xe0, 0x24, 0xf3, + 0x3a, 0x1c, 0x76, 0x95, 0x64, 0x42, 0x3f, 0x88, 0xf2, 0x53, 0x0b, 0xc2, 0xe2, 0x85, 0x95, 0xfc, + 0x99, 0x7d, 0x58, 0x7e, 0x10, 0xd5, 0x83, 0x0e, 0x0b, 0x28, 0x47, 0x49, 0x57, 0x48, 0xb6, 0xe7, + 0xf6, 0xdd, 0x28, 0x9f, 0x5b, 0x10, 0x16, 0x67, 0x37, 0x5e, 0xfa, 0xc3, 0x43, 0x41, 0xbc, 0xb6, + 0x8c, 0xbc, 0x99, 0x25, 0x31, 0xdf, 0xa1, 0x71, 0x54, 0x2a, 0x90, 0x4c, 0x18, 0xb1, 0x41, 0x9e, + 0x8c, 0xd5, 0xfd, 0x79, 0x46, 0xa0, 0xdc, 0x5f, 0x7c, 0x20, 0x90, 0xd7, 0xce, 0x36, 0x34, 0x1c, + 0xf8, 0x5e, 0xc8, 0xa4, 0xb7, 0x49, 0x06, 0xa7, 0x33, 0x2f, 0x2c, 0xa4, 0x17, 0xa7, 0x57, 0x2e, + 0xbf, 0xa8, 0x2f, 0x49, 0x9a, 0xea, 0x44, 0x0e, 0xe5, 0x09, 0x27, 0x35, 0xc5, 0xb1, 0x9a, 0xcf, + 0xc4, 0xa4, 0xa6, 0x34, 0x4f, 0x48, 0xe4, 0x47, 0x4e, 0xaf, 0x79, 0xc7, 0x8d, 0x42, 0x2e, 0x48, + 0x86, 0xe6, 0xb8, 0x67, 0xdb, 0x8d, 0xc2, 0xe2, 0xdf, 0x04, 0x92, 0x4f, 0xb6, 0x94, 0x88, 0x5b, + 0xf5, 0xbb, 0x5f, 0x54, 0x66, 0x71, 0x4c, 0xe6, 0x71, 0xb1, 0xd2, 0xe7, 0x15, 0x2b, 0xf3, 0xf9, + 0x62, 0x65, 0xcf, 0x25, 0xd6, 0xc2, 0x48, 0xac, 0x09, 0x2e, 0x56, 0xcc, 0xb8, 0x94, 0xce, 0xff, + 0x3d, 0x9d, 0xe8, 0x54, 0xbc, 0x2f, 0x90, 0x8b, 0x9f, 0x71, 0xe8, 0x44, 0x8a, 0xef, 0x92, 0x4c, + 0xcf, 0xef, 0x86, 0x89, 0x14, 0x37, 0x5e, 0x24, 0xc5, 0x73, 0x04, 0x27, 0x62, 0xc6, 0xea, 0x20, + 0xc7, 0x99, 0xee, 0x8b, 0x67, 0xbb, 0xff, 0x6b, 0x81, 0x4c, 0x9f, 0x92, 0x54, 0xda, 0x22, 0x13, + 0x3d, 0x9c, 0xfc, 0x51, 0xf1, 0xca, 0x39, 0xe6, 0x20, 0xfe, 0xad, 0x84, 0x9a, 0x17, 0x05, 0x87, + 0x34, 0x49, 0x97, 0x96, 0x49, 0xf6, 0xc0, 0xe9, 0x0d, 0x59, 0x5e, 0xe4, 0x3c, 0x73, 0x67, 0x78, + 0xe2, 0xf4, 0x1d, 0x44, 0xd0, 0x18, 0x38, 0xf7, 0x0e, 0x99, 0x3e, 0x45, 0x24, 0x01, 0x49, 0xdf, + 0x65, 0x87, 0x89, 0xe8, 0x68, 0x4a, 0xaf, 0x7c, 0x4a, 0x89, 0xbe, 0x78, 0xb1, 0x2e, 0xde, 0x14, + 0x8a, 0xf7, 0x45, 0x52, 0xf8, 0xdf, 0xdd, 0xc0, 0x49, 0x42, 0x91, 0xc3, 0xc8, 0xe9, 0x0f, 0x46, + 0x93, 0x74, 0xe2, 0x90, 0xde, 0x20, 0x33, 0x6d, 0x7f, 0x88, 0x75, 0x9b, 0x6d, 0xbf, 0x33, 0xaa, + 0x30, 0x9d, 0xf8, 0x14, 0xbf, 0xc3, 0x87, 0xad, 0xe3, 0xf7, 0x1d, 0xd7, 0x1b, 0xbd, 0x53, 0xe2, + 0x15, 0x36, 0xf8, 0xfd, 0x21, 0x0b, 0x0e, 0x9b, 0xf8, 0x72, 0x8c, 0x67, 0x88, 0xe6, 0xb8, 0xc7, + 0x3e, 0x1c, 0x30, 0xe9, 0x32, 0x99, 0x0d, 0x92, 0x7d, 0xc4, 0xd4, 0x59, 0x8e, 0x98, 0x19, 0x39, + 0x39, 0xf7, 0x65, 0x32, 0xdb, 0xee, 0xb9, 0xcc, 0x8b, 0x9a, 0xe1, 0xb0, 0xe5, 0xb1, 0x78, 0x70, + 0x72, 0x74, 0x26, 0x76, 0x5a, 0xdc, 0x27, 0x15, 0xc9, 0xec, 0xa8, 0xfb, 0x4d, 0xfc, 0x0d, 0xc4, + 0x2f, 0x17, 0x3a, 0xdd, 0x89, 0x0f, 0x6e, 0x38, 0x7d, 0xb6, 0xe4, 0x91, 0x2c, 0xef, 0xa1, 0x04, + 0x64, 0x46, 0xa9, 0x37, 0x0c, 0x9b, 0xee, 0x35, 0x95, 0xba, 0xaa, 0x41, 0x4a, 0x22, 0x64, 0x42, + 0xad, 0xd7, 0x64, 0xdd, 0x00, 0x41, 0xba, 0x40, 0xc8, 0xbb, 0x0d, 0x8d, 0xee, 0x35, 0xed, 0x3d, + 0x53, 0x03, 0x51, 0x7a, 0x99, 0xcc, 0x52, 0xcd, 0x32, 0xeb, 0x86, 0xa5, 0xc5, 0xf0, 0x34, 0xba, + 0x54, 0xc3, 0x6a, 0xde, 0xae, 0x1b, 0x5a, 0xd3, 0x90, 0x6b, 0x1a, 0x64, 0xd0, 0xa5, 0x54, 0x75, + 0xcd, 0xb0, 0x9b, 0x56, 0x63, 0xc3, 0xd0, 0x6c, 0xc8, 0x2e, 0xfd, 0x71, 0x82, 0xe4, 0xde, 0x3d, + 0x39, 0xeb, 0x14, 0xc9, 0x18, 0xbe, 0xc7, 0x20, 0x25, 0x65, 0x89, 0x20, 0x83, 0x20, 0x4d, 0x10, + 0xd1, 0xb0, 0x40, 0xc4, 0x67, 0x4d, 0x85, 0x34, 0x7f, 0x6e, 0x42, 0x46, 0xca, 0x91, 0xac, 0xc2, + 0x49, 0xb3, 0xd2, 0x24, 0x49, 0x5b, 0x75, 0x19, 0x26, 0x78, 0x6c, 0x03, 0x26, 0xf9, 0x73, 0x0b, + 0xa6, 0xf8, 0x93, 0x42, 0x8e, 0x93, 0x36, 0xaa, 0x55, 0x20, 0x08, 0x35, 0x6d, 0x0a, 0x33, 0x98, + 0xbe, 0xad, 0x1b, 0x9b, 0x75, 0x98, 0x45, 0xb3, 0xc6, 0xcd, 0x0b, 0x3c, 0x61, 0x17, 0x5e, 0x42, + 0x98, 0xbd, 0x6b, 0x03, 0xa0, 0x83, 0x9a, 0xf0, 0x32, 0x62, 0xe4, 0x4d, 0x4b, 0xdd, 0x00, 0x09, + 0x63, 0xbb, 0x2b, 0x6b, 0xf0, 0x25, 0x64, 0xd5, 0x2d, 0xd5, 0x80, 0x57, 0x38, 0xca, 0x86, 0x57, + 0xa5, 0x69, 0x32, 0x69, 0x58, 0xb2, 0x89, 0x15, 0xbe, 0xcc, 0x77, 0xa5, 0x6f, 0x41, 0x1e, 0x8d, + 0x5b, 0xda, 0x1e, 0x5c, 0x44, 0x98, 0xb9, 0x0b, 0x73, 0x98, 0xb8, 0x65, 0xd6, 0x2d, 0x78, 0x1d, + 0x2d, 0x59, 0x96, 0x65, 0xb8, 0x84, 0xa0, 0x6a, 0x5d, 0x81, 0x79, 0x34, 0x8c, 0x5d, 0x1b, 0x0a, + 0x68, 0x68, 0xba, 0x0a, 0x5f, 0xc1, 0xae, 0x1b, 0x7a, 0x0d, 0xa3, 0x0b, 0x9c, 0x94, 0xee, 0xc0, + 0x1b, 0x3c, 0xd3, 0xae, 0xc9, 0x50, 0xc4, 0xad, 0x19, 0x32, 0x96, 0xbc, 0x8c, 0x05, 0x6e, 0xed, + 0xc2, 0x57, 0x31, 0xa8, 0x68, 0xd4, 0x86, 0x2b, 0x18, 0x54, 0x79, 0x97, 0xbe, 0x86, 0xa9, 0x75, + 0xd3, 0x86, 0x37, 0xd1, 0x90, 0xcd, 0x2a, 0x2c, 0x21, 0x5c, 0xb5, 0xe0, 0x2d, 0x04, 0x59, 0xd6, + 0xf6, 0xa6, 0x09, 0x57, 0xa5, 0x19, 0x32, 0xa5, 0x9b, 0x96, 0xa6, 0xe0, 0x86, 0x4b, 0x18, 0xa0, + 0x14, 0x0f, 0x51, 0xe6, 0x2d, 0xb4, 0x34, 0x05, 0x2a, 0x7c, 0x08, 0x0c, 0x0b, 0x01, 0xcb, 0x9c, + 0x7e, 0x5b, 0xd1, 0x55, 0xb8, 0xc6, 0xb7, 0x61, 0x69, 0xca, 0x2a, 0xac, 0xe0, 0x68, 0x70, 0xd3, + 0x94, 0xa9, 0x5c, 0x83, 0x55, 0xcc, 0xb5, 0xab, 0x96, 0x0c, 0xd7, 0x31, 0xd7, 0xaa, 0xe9, 0x35, + 0x4d, 0x86, 0x35, 0xdc, 0xc6, 0xb6, 0x6e, 0xc2, 0xdb, 0x3c, 0x93, 0xf7, 0xff, 0x26, 0x22, 0x29, + 0x32, 0xbf, 0x83, 0x48, 0x5b, 0xae, 0xea, 0xc6, 0x2d, 0x58, 0x47, 0xa4, 0xa2, 0x5a, 0xf0, 0x75, + 0xec, 0xaf, 0x92, 0xd4, 0xfe, 0x06, 0x56, 0xa9, 0x9b, 0x9a, 0x61, 0x6e, 0x99, 0xb8, 0xfe, 0x26, + 0x1f, 0x08, 0x6b, 0xcf, 0x50, 0xe0, 0x5b, 0x98, 0x8c, 0x43, 0x57, 0x53, 0xe1, 0xdb, 0x48, 0x69, + 0xed, 0x28, 0x1b, 0xf0, 0x1d, 0x2e, 0xb9, 0x6d, 0x9b, 0x16, 0xc8, 0xbc, 0x8d, 0xe6, 0x26, 0xb4, + 0xd1, 0xd7, 0xe0, 0xb5, 0x3b, 0xe8, 0x6b, 0xe8, 0x2a, 0x30, 0x34, 0xb6, 0x74, 0x15, 0xf6, 0x91, + 0xa6, 0x61, 0x58, 0xa6, 0xa6, 0x40, 0x97, 0xcb, 0xa2, 0xab, 0x70, 0x87, 0x0b, 0xb5, 0xba, 0x02, + 0x2e, 0x37, 0x6e, 0x5c, 0x87, 0xf7, 0xb0, 0x8d, 0x55, 0x13, 0xee, 0x22, 0x97, 0xd6, 0xd0, 0xaf, + 0xdf, 0x84, 0x5e, 0x62, 0xde, 0xb8, 0x0e, 0x7d, 0x69, 0x8a, 0xa4, 0x1b, 0x54, 0x87, 0x23, 0x11, + 0x2d, 0x45, 0x96, 0xe1, 0x43, 0x6e, 0xc9, 0x3b, 0x0a, 0xdc, 0x13, 0xa5, 0x59, 0x32, 0x25, 0xd7, + 0x6c, 0xaa, 0x55, 0xe5, 0x3d, 0xf8, 0x91, 0x28, 0xe5, 0x48, 0x46, 0xdf, 0xdd, 0xa4, 0xf0, 0x0f, + 0x01, 0x4d, 0x19, 0xcd, 0x7f, 0x0a, 0x12, 0x21, 0xd9, 0x9a, 0xac, 0x57, 0x37, 0xe0, 0x5f, 0x27, + 0xb6, 0x0c, 0xff, 0x16, 0x38, 0x8d, 0xb1, 0x07, 0xff, 0x41, 0x4b, 0xb4, 0x65, 0x38, 0x3a, 0x42, + 0x86, 0xb4, 0x5a, 0xdd, 0x81, 0x0f, 0x8f, 0xc4, 0xb9, 0xcc, 0xa3, 0x87, 0x42, 0x6a, 0xa9, 0x43, + 0x66, 0xe8, 0xe9, 0xf7, 0x04, 0xce, 0x68, 0x5d, 0xa3, 0xb4, 0x4e, 0x21, 0x85, 0x8b, 0xcd, 0x3a, + 0xad, 0x69, 0x94, 0x82, 0x80, 0xda, 0x5b, 0x1a, 0xdd, 0xd9, 0x94, 0xf5, 0x2a, 0x88, 0xb8, 0x32, + 0x76, 0x93, 0x5f, 0x7b, 0x1a, 0x81, 0x54, 0xdb, 0x6c, 0x58, 0x9a, 0x0a, 0xd9, 0x98, 0xc2, 0x96, + 0x1b, 0xf6, 0x36, 0xe4, 0xe2, 0x2a, 0x2b, 0xbf, 0xcd, 0x90, 0x59, 0x85, 0xdf, 0x4f, 0xf1, 0x4d, + 0x29, 0x9b, 0xba, 0x74, 0x4f, 0x24, 0x17, 0xc6, 0xaf, 0x09, 0x52, 0xe9, 0x73, 0xfe, 0x85, 0xc6, + 0xef, 0x67, 0x73, 0xe5, 0xf3, 0xc2, 0xe3, 0xd3, 0x15, 0x1f, 0x08, 0x1f, 0xfd, 0x52, 0x14, 0x8e, + 0x7f, 0x93, 0xaf, 0x1d, 0xb0, 0xb0, 0xe4, 0xfa, 0x25, 0xd7, 0xdb, 0x0f, 0x9c, 0x30, 0x0a, 0x86, + 0xed, 0x68, 0x18, 0xb0, 0x52, 0xc0, 0x9c, 0xce, 0xd5, 0x85, 0xfd, 0xb5, 0x0f, 0xda, 0xa5, 0x8e, + 0x17, 0x96, 0x5a, 0x4e, 0xe8, 0xb6, 0x4b, 0x7d, 0xdf, 0x73, 0x23, 0x3f, 0x38, 0xe5, 0x0f, 0x23, + 0xc7, 0xeb, 0x38, 0x41, 0x67, 0x14, 0xba, 0xf7, 0xfb, 0x3f, 0xff, 0x54, 0x5c, 0x2b, 0x2e, 0x27, + 0xd7, 0xf0, 0xca, 0xc9, 0xdd, 0x21, 0xac, 0xfc, 0xe0, 0xc4, 0xfe, 0xe1, 0xc9, 0x6d, 0x3d, 0xac, + 0xf4, 0xe3, 0x7d, 0xad, 0x0b, 0x4b, 0xd2, 0x8f, 0x45, 0x22, 0x3d, 0xff, 0xa7, 0x22, 0x2d, 0x9f, + 0xfb, 0xef, 0x78, 0xd4, 0x8b, 0x6b, 0x5f, 0x20, 0x23, 0x69, 0xc7, 0x4f, 0xfe, 0x4f, 0xad, 0x58, + 0x2f, 0xae, 0x9d, 0xbb, 0x15, 0x41, 0xbc, 0xad, 0x26, 0x5e, 0x23, 0xd6, 0x85, 0xa5, 0xb9, 0xb7, + 0x1e, 0x3d, 0x14, 0xd2, 0xbf, 0x7b, 0x28, 0xcc, 0xbf, 0xe0, 0x34, 0xf5, 0xd6, 0x7b, 0xac, 0x1d, + 0xdd, 0xfb, 0x38, 0x2f, 0xe6, 0x85, 0x8d, 0xfb, 0xc2, 0xe3, 0x27, 0x85, 0xd4, 0x27, 0x4f, 0x0a, + 0xa9, 0x67, 0x4f, 0x0a, 0xc2, 0xd1, 0x71, 0x41, 0xf8, 0xc5, 0x71, 0x41, 0xf8, 0xe8, 0xb8, 0x20, + 0x3c, 0x3e, 0x2e, 0x08, 0x7f, 0x3a, 0x2e, 0x08, 0x7f, 0x39, 0x2e, 0xa4, 0x9e, 0x1d, 0x17, 0x84, + 0x07, 0x4f, 0x0b, 0xa9, 0x47, 0x4f, 0x0b, 0xc2, 0xe3, 0xa7, 0x85, 0xd4, 0x27, 0x4f, 0x0b, 0xa9, + 0xdb, 0xd5, 0xae, 0x3f, 0xb8, 0xdb, 0x2d, 0x1f, 0xf8, 0x78, 0x97, 0x0b, 0x9c, 0xf2, 0x30, 0xac, + 0x70, 0x63, 0xdf, 0x0f, 0xfa, 0xa5, 0x41, 0xe0, 0x1f, 0xb8, 0x1d, 0x16, 0x94, 0x46, 0xe1, 0xca, + 0xa0, 0xd5, 0xf5, 0x2b, 0xec, 0x83, 0x28, 0xf9, 0x8a, 0x38, 0xf3, 0xfd, 0xd5, 0x9a, 0xe0, 0x5f, + 0x12, 0xab, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x9a, 0x90, 0x48, 0xeb, 0xa0, 0x0d, 0x00, 0x00, } func (x Label) String() string { diff --git a/pbgo/extschema/schema/dns_zone/public_customapi.pb.go b/pbgo/extschema/schema/dns_zone/public_customapi.pb.go index 7eb7c707d..6f68214c8 100644 --- a/pbgo/extschema/schema/dns_zone/public_customapi.pb.go +++ b/pbgo/extschema/schema/dns_zone/public_customapi.pb.go @@ -714,6 +714,11 @@ func (m *GetLocalZoneFileResponse) GetZoneFile() string { // x-displayName: "Clone Request" // Clone Request type CloneReq struct { + // Tenant name + // + // x-displayName: "Tenant name" + // Tenant for which dns domain cloned + Tenant string `protobuf:"bytes,1,opt,name=tenant,proto3" json:"tenant,omitempty"` } func (m *CloneReq) Reset() { *m = CloneReq{} } @@ -748,6 +753,13 @@ func (m *CloneReq) XXX_DiscardUnknown() { var xxx_messageInfo_CloneReq proto.InternalMessageInfo +func (m *CloneReq) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + // Clone Response // // x-displayName: "Response" @@ -822,7 +834,8 @@ type ImportBINDValidateRequest struct { File []byte `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"` // Description // - // x-displayName: "Description for each zone" + // x-displayName: "Description" + // Optional description about zone, import method, etc. Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` } @@ -883,7 +896,8 @@ type ImportBINDCreateRequest struct { File []byte `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"` // Description // - // x-displayName: "Description for each zone" + // x-displayName: "Description" + // Optional description about zone, import method, etc. Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` // Ignore Zone List // @@ -952,10 +966,12 @@ type ImportBINDResponse struct { // Valid Zone List // // x-displayName: "Valid Zone List" + // Zones that we parsed succcessfully. On submission, objects will be created for every zone in this list. ValidZoneList []*ValidZone `protobuf:"bytes,1,rep,name=valid_zone_list,json=validZoneList,proto3" json:"valid_zone_list,omitempty"` // Invalid Zone List // // x-displayName: "Invalid Zone List" + // Zones that we failed to parse. On submission, objects will not be created for any detected zone in this list. InvalidZoneList []*InvalidZone `protobuf:"bytes,2,rep,name=invalid_zone_list,json=invalidZoneList,proto3" json:"invalid_zone_list,omitempty"` // Success Created Zone Count // @@ -1181,111 +1197,114 @@ func init() { } var fileDescriptor_8810baad339dc204 = []byte{ - // 1655 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x4f, 0x23, 0xc9, - 0x15, 0xa7, 0x6c, 0x03, 0x76, 0xd9, 0x06, 0xd3, 0x51, 0x16, 0xe3, 0x9d, 0x38, 0xd0, 0x48, 0x11, - 0x8c, 0x70, 0x1b, 0x18, 0x8d, 0x76, 0x44, 0x26, 0x2b, 0xf1, 0xb1, 0x30, 0x30, 0xb3, 0xcc, 0xaa, - 0x3d, 0x41, 0xd1, 0x26, 0x8a, 0xd5, 0x6e, 0x97, 0x4d, 0x65, 0xbb, 0xbb, 0x3a, 0x55, 0x65, 0x0f, - 0xcc, 0x86, 0x08, 0x6d, 0x3e, 0x0e, 0x39, 0x45, 0xca, 0x2d, 0xa7, 0x5c, 0x22, 0xe5, 0x90, 0x3f, - 0x20, 0xca, 0x5c, 0xe6, 0x36, 0xab, 0x1c, 0x22, 0xb2, 0xb9, 0xcc, 0x31, 0x63, 0xf6, 0x90, 0x1c, - 0x56, 0x5a, 0x25, 0xd7, 0x55, 0xb4, 0xea, 0xaa, 0xee, 0xb6, 0xdd, 0xd8, 0x0c, 0xf3, 0x71, 0xa2, - 0xa9, 0xfa, 0xbd, 0x5f, 0xbd, 0xdf, 0xab, 0x57, 0xef, 0x3d, 0x80, 0xa5, 0x36, 0x62, 0x1a, 0x26, - 0x65, 0x66, 0x1e, 0x22, 0xdb, 0x28, 0xd7, 0x1d, 0x56, 0x7d, 0x44, 0x1c, 0x54, 0x76, 0x5b, 0x35, - 0x0b, 0x9b, 0x55, 0xb3, 0xc5, 0x38, 0xb1, 0x0d, 0x17, 0x6b, 0x2e, 0x25, 0x9c, 0x28, 0x6f, 0x49, - 0xb8, 0x26, 0xe1, 0x5a, 0x00, 0x2f, 0x94, 0x9a, 0x98, 0x1f, 0xb6, 0x6a, 0x9a, 0x49, 0xec, 0x72, - 0x93, 0x34, 0x49, 0x59, 0xc0, 0x6b, 0xad, 0x86, 0xf8, 0x4d, 0xfc, 0x22, 0xbe, 0x24, 0x4d, 0xe1, - 0x5a, 0x93, 0x90, 0xa6, 0x85, 0xca, 0x86, 0x8b, 0xcb, 0x86, 0xe3, 0x10, 0x6e, 0x70, 0x4c, 0x1c, - 0x16, 0xd9, 0x0d, 0x39, 0x18, 0xa7, 0x2d, 0x93, 0xfb, 0xbb, 0xdf, 0x8e, 0xee, 0x72, 0x6c, 0x23, - 0xc6, 0x0d, 0xdb, 0xf5, 0x01, 0xf3, 0x43, 0x24, 0x91, 0xda, 0x4f, 0x50, 0xc8, 0xa2, 0x0e, 0x01, - 0xf1, 0x63, 0x17, 0x05, 0x7e, 0xbc, 0xdd, 0x8f, 0x21, 0x6e, 0xaf, 0x93, 0x33, 0xfd, 0x9b, 0xbd, - 0x76, 0xd7, 0xfa, 0xb7, 0xda, 0x86, 0x85, 0xeb, 0x06, 0x47, 0x83, 0x4f, 0x6e, 0x23, 0x86, 0x9c, - 0x76, 0x84, 0x7c, 0x36, 0x82, 0xc1, 0xe8, 0x61, 0xb5, 0x0f, 0xa1, 0x12, 0xf8, 0xcd, 0x5d, 0xdb, - 0x25, 0x94, 0x6f, 0xdf, 0xdc, 0xac, 0x7c, 0x48, 0x1c, 0xa4, 0xa3, 0x9f, 0xb6, 0x10, 0xe3, 0xca, - 0x01, 0xcc, 0x9a, 0xc4, 0x69, 0xe0, 0x66, 0x8b, 0x8a, 0xa0, 0xe6, 0xc1, 0x2c, 0x58, 0x48, 0xaf, - 0x2e, 0x6b, 0x83, 0x6f, 0x4e, 0xf3, 0xec, 0xb7, 0xf6, 0x05, 0xc5, 0x66, 0xaf, 0x9d, 0xde, 0x4f, - 0xa3, 0x7e, 0x05, 0xe0, 0x5b, 0xd1, 0x13, 0x99, 0x4b, 0x1c, 0x86, 0x94, 0xdb, 0x30, 0x69, 0x23, - 0x6e, 0xd4, 0x0d, 0x6e, 0xf8, 0xa7, 0xcd, 0x46, 0x4e, 0xbb, 0x2f, 0x42, 0xbf, 0x83, 0xf8, 0xfb, - 0x88, 0x1b, 0x0f, 0x8e, 0x5d, 0xa4, 0x87, 0x16, 0xca, 0x7d, 0x38, 0xc9, 0x8e, 0x19, 0x47, 0x76, - 0x35, 0x24, 0x89, 0x0b, 0x92, 0xef, 0x44, 0x48, 0x2a, 0x02, 0x75, 0x91, 0x6a, 0x42, 0x9a, 0xbf, - 0x1f, 0x10, 0xde, 0x81, 0x09, 0xe6, 0x22, 0x33, 0x1f, 0x13, 0x2c, 0xf3, 0xc3, 0x84, 0xef, 0x20, - 0x5e, 0x71, 0x91, 0xe9, 0x51, 0x6c, 0x4c, 0xfe, 0xfe, 0x24, 0xe3, 0xd9, 0x68, 0x4d, 0xb3, 0xea, - 0xfd, 0xd4, 0x05, 0xc3, 0x5a, 0xea, 0x6f, 0xef, 0x8e, 0xc9, 0xf3, 0xd4, 0x3f, 0x03, 0x98, 0x1f, - 0x16, 0x2a, 0x65, 0x0d, 0xa6, 0x3d, 0x5a, 0x86, 0x68, 0x1b, 0x9b, 0xc8, 0x3f, 0x78, 0x5a, 0x93, - 0x89, 0xaa, 0x05, 0x89, 0xaa, 0x55, 0x44, 0x1a, 0xdf, 0x19, 0xd1, 0x61, 0xdd, 0x61, 0x15, 0x09, - 0x56, 0x6e, 0xc3, 0x8c, 0xd1, 0x6b, 0x1c, 0x7f, 0x91, 0x71, 0xda, 0xe8, 0x5a, 0x6f, 0xe4, 0x60, - 0xd2, 0x33, 0xf6, 0xb2, 0x4f, 0x49, 0x9c, 0x3d, 0x06, 0x60, 0x2f, 0x91, 0x04, 0xb9, 0x98, 0xfa, - 0x7f, 0x00, 0xa7, 0xe4, 0x6d, 0xad, 0xff, 0x60, 0x5b, 0x0f, 0x72, 0x63, 0x19, 0x4e, 0xb8, 0x14, - 0xdb, 0x06, 0x3d, 0x16, 0xc7, 0x21, 0x2a, 0x4e, 0x4b, 0x6d, 0xa4, 0xfe, 0xfa, 0x9f, 0x27, 0xf1, - 0x04, 0x8d, 0x1d, 0x01, 0x3d, 0xeb, 0x03, 0x2a, 0x62, 0x5f, 0x29, 0xc3, 0x74, 0x9d, 0xd8, 0x06, - 0x76, 0xaa, 0x8e, 0x61, 0xa3, 0xfc, 0xb8, 0x80, 0x4f, 0x78, 0xf0, 0x14, 0x1d, 0xcf, 0x81, 0xfc, - 0x69, 0xec, 0x10, 0xe8, 0x50, 0x42, 0xf6, 0x0d, 0x1b, 0x29, 0x3f, 0x86, 0x0a, 0x67, 0xb8, 0x59, - 0xed, 0xcf, 0xc1, 0xa4, 0x10, 0xb5, 0x38, 0xec, 0x2a, 0x1e, 0x54, 0x76, 0x77, 0xfa, 0x22, 0xba, - 0x21, 0xb4, 0xe8, 0x53, 0x1e, 0x55, 0xdf, 0xc6, 0x5a, 0xf2, 0xbf, 0xef, 0x8e, 0xbe, 0xb3, 0x74, - 0x63, 0xe9, 0x96, 0x14, 0xba, 0x97, 0x48, 0xc6, 0x72, 0xf1, 0xbd, 0x44, 0x32, 0x91, 0x1b, 0xdd, - 0x4b, 0x24, 0x47, 0x73, 0x63, 0x7b, 0x89, 0xe4, 0x58, 0x6e, 0x5c, 0xfd, 0x1c, 0xc0, 0xa9, 0x0b, - 0xb4, 0xca, 0x32, 0xcc, 0x0a, 0xef, 0x3e, 0x42, 0xc7, 0x52, 0x10, 0x10, 0x82, 0x32, 0x9e, 0xa0, - 0x71, 0x3a, 0x2a, 0xe5, 0xa4, 0x3d, 0xc8, 0x5d, 0x74, 0x2c, 0xf4, 0x1c, 0xf8, 0x7a, 0x3c, 0x0b, - 0xc3, 0x6a, 0x12, 0x8a, 0xf9, 0xa1, 0x2d, 0x6e, 0x78, 0x62, 0x75, 0xe1, 0x32, 0x3d, 0x77, 0xd1, - 0xf1, 0x7a, 0x80, 0xd7, 0x73, 0x3e, 0x65, 0xb8, 0xa2, 0xbc, 0x07, 0x27, 0x42, 0xde, 0xb6, 0x61, - 0xb5, 0x82, 0x8b, 0x9f, 0x89, 0x26, 0x3d, 0x32, 0x29, 0xe2, 0x22, 0x49, 0x65, 0x4c, 0x32, 0x3e, - 0xd5, 0x81, 0x67, 0xa4, 0x62, 0xa8, 0xf4, 0x5e, 0xb3, 0xff, 0x20, 0x2b, 0x83, 0x6b, 0x40, 0x69, - 0x98, 0xbf, 0x1f, 0xc8, 0x3b, 0xdf, 0xda, 0xaf, 0xf4, 0x3c, 0x8a, 0x68, 0x01, 0xf8, 0x11, 0xcc, - 0xef, 0x20, 0xae, 0x23, 0x9b, 0x70, 0xe4, 0x3d, 0x81, 0x6d, 0x6c, 0x85, 0x45, 0xe7, 0x1a, 0x4c, - 0x79, 0xe1, 0x64, 0xae, 0x61, 0xfa, 0x31, 0xd5, 0xbb, 0x0b, 0x8a, 0x0a, 0xb3, 0xc1, 0x51, 0x32, - 0xea, 0x31, 0x81, 0xf0, 0xde, 0x8c, 0x47, 0xe4, 0xc5, 0x59, 0xbd, 0x05, 0x67, 0x06, 0xb0, 0xfb, - 0x7a, 0xde, 0x86, 0x29, 0x61, 0xdc, 0xc0, 0x56, 0x40, 0x9f, 0x7c, 0xe4, 0x83, 0xd4, 0x1f, 0xc2, - 0xe9, 0x1d, 0xc4, 0xef, 0x11, 0xd3, 0xb0, 0xde, 0xbc, 0x5b, 0xbf, 0x00, 0x42, 0x75, 0x84, 0xdd, - 0x77, 0x6b, 0x0f, 0x7e, 0xc3, 0x32, 0x18, 0xaf, 0x1a, 0x47, 0x0d, 0x5a, 0x0d, 0xbb, 0x50, 0x3e, - 0x25, 0x82, 0x5d, 0xb8, 0xf0, 0x82, 0x1f, 0x04, 0x08, 0x7d, 0xca, 0x33, 0x5b, 0x3f, 0x6a, 0xd0, - 0x70, 0xa9, 0x5f, 0x62, 0x2c, 0x22, 0x11, 0xc2, 0xe4, 0xa6, 0x25, 0x6b, 0xbc, 0x5a, 0x81, 0x29, - 0xff, 0x9b, 0xb9, 0xca, 0x3c, 0xcc, 0xb2, 0x96, 0x69, 0x22, 0x26, 0x65, 0xb0, 0x3c, 0x98, 0x8d, - 0x2f, 0xa4, 0xf4, 0x8c, 0xbf, 0xe8, 0x79, 0xcc, 0x94, 0x39, 0x98, 0x69, 0x18, 0xd8, 0x42, 0x75, - 0x1f, 0x13, 0x13, 0x98, 0xb4, 0x5c, 0x13, 0x10, 0xb5, 0x06, 0x67, 0x64, 0x1a, 0x6d, 0xec, 0xee, - 0x6f, 0x1d, 0xf8, 0xfd, 0x2a, 0x88, 0xe2, 0x3c, 0x4c, 0x84, 0x81, 0xcf, 0x6c, 0x4c, 0x7e, 0x7a, - 0x02, 0xc4, 0x73, 0x79, 0x34, 0x9a, 0x3f, 0x3d, 0x3d, 0x05, 0xba, 0xd8, 0x54, 0x66, 0x61, 0xba, - 0x8e, 0x98, 0x49, 0xb1, 0xe8, 0x52, 0x61, 0x28, 0xbb, 0x4b, 0xea, 0x6f, 0x00, 0x9c, 0xee, 0x1e, - 0xb2, 0x49, 0xd1, 0x1b, 0x3f, 0x42, 0x59, 0x80, 0x39, 0xdc, 0x74, 0x08, 0x45, 0xf2, 0x52, 0x2d, - 0xcc, 0x78, 0x3e, 0x2e, 0xd4, 0x4e, 0xc8, 0x75, 0x4f, 0xed, 0x3d, 0xcc, 0xb8, 0xfa, 0x05, 0x08, - 0x1e, 0x8e, 0xe7, 0x4c, 0x78, 0xa3, 0xbb, 0x70, 0x52, 0x74, 0xeb, 0x1e, 0x7b, 0x2f, 0xa2, 0xe9, - 0xd5, 0xb9, 0x61, 0x4f, 0x47, 0x04, 0x4b, 0x74, 0xc3, 0x6c, 0x3b, 0xf8, 0xf4, 0x4e, 0x50, 0xee, - 0xc3, 0x29, 0xec, 0x44, 0xc9, 0x62, 0x82, 0x6c, 0x68, 0x4b, 0xda, 0x75, 0x42, 0x0e, 0x7d, 0x12, - 0x3b, 0xfd, 0x84, 0xdf, 0x85, 0x85, 0xe0, 0xae, 0x4d, 0x11, 0x3c, 0x9f, 0xd8, 0x24, 0x2d, 0x87, - 0x8b, 0xea, 0x91, 0xd5, 0xa7, 0x7d, 0x84, 0x8c, 0x6e, 0x5d, 0x76, 0xaa, 0x96, 0xc3, 0xd5, 0xbb, - 0x30, 0x15, 0x7a, 0x1a, 0xe6, 0x5a, 0xb7, 0x02, 0xca, 0x5c, 0x13, 0x05, 0x6f, 0x0e, 0x66, 0x28, - 0x32, 0x09, 0xad, 0xfb, 0xc4, 0x31, 0x41, 0x9c, 0x96, 0x6b, 0x92, 0xec, 0xfb, 0x30, 0xdd, 0xe3, - 0xe9, 0xe5, 0x74, 0x8b, 0x30, 0xe7, 0xcf, 0x3f, 0x98, 0x38, 0x55, 0x44, 0x29, 0xa1, 0xfe, 0xcd, - 0x4d, 0x76, 0xd7, 0xdf, 0xf3, 0x96, 0x57, 0xff, 0x98, 0x85, 0xa9, 0x4d, 0x31, 0x6f, 0xae, 0x7f, - 0xb0, 0xab, 0x3c, 0x03, 0x70, 0xa2, 0x7f, 0xde, 0x50, 0x86, 0xd6, 0xaf, 0x81, 0x93, 0x50, 0x41, - 0xbb, 0x2a, 0x5c, 0x5e, 0xbe, 0xda, 0xec, 0x3c, 0xcd, 0x7b, 0xe3, 0x58, 0x09, 0x93, 0x12, 0x76, - 0x1a, 0xd4, 0x90, 0x63, 0x67, 0x8b, 0xa2, 0xd2, 0x43, 0x8a, 0x39, 0x5a, 0x6a, 0xdc, 0x3c, 0x32, - 0x4b, 0x75, 0x87, 0x95, 0x6a, 0x06, 0xc3, 0x66, 0xa9, 0xc5, 0x10, 0xfd, 0xe4, 0x9f, 0x9f, 0xff, - 0x2e, 0xa6, 0xa9, 0x8b, 0xfe, 0xbc, 0x5c, 0x0e, 0xab, 0x0b, 0x2b, 0xcb, 0xa9, 0xa4, 0x3b, 0x59, - 0x62, 0x71, 0xea, 0x1a, 0xb8, 0xae, 0xfc, 0x03, 0x40, 0xd8, 0xad, 0xda, 0xca, 0xe2, 0xe5, 0x7e, - 0xf6, 0x34, 0xf0, 0xc2, 0xf5, 0xab, 0x40, 0x7d, 0x39, 0xd6, 0xab, 0xca, 0xb9, 0xa1, 0x6a, 0x57, - 0x96, 0x23, 0x6a, 0x9f, 0xa7, 0xe9, 0x34, 0x06, 0xa7, 0x2e, 0x14, 0x70, 0x65, 0xf9, 0x92, 0xe1, - 0x6b, 0x60, 0x27, 0x29, 0xac, 0xbc, 0x84, 0x85, 0x2f, 0xf4, 0x57, 0xa0, 0xf3, 0x34, 0xbf, 0x32, - 0x58, 0x29, 0x45, 0x46, 0x3d, 0x2a, 0xd4, 0x26, 0x0e, 0xe6, 0x44, 0x6a, 0xdd, 0x53, 0xee, 0x0c, - 0xd0, 0xfa, 0x71, 0xf8, 0x7d, 0xd2, 0x15, 0xfc, 0x71, 0x5f, 0xb3, 0x38, 0x29, 0x53, 0xe1, 0x4d, - 0x35, 0xac, 0xda, 0xca, 0x57, 0x00, 0xe6, 0xa2, 0xbd, 0x42, 0x29, 0x5f, 0xa2, 0x67, 0x50, 0xcf, - 0x2a, 0x2c, 0x5f, 0xdd, 0xc0, 0xd7, 0xff, 0xcb, 0xd7, 0xd0, 0xbf, 0xab, 0xec, 0xbc, 0xaa, 0x7e, - 0xcb, 0x73, 0xa6, 0x47, 0xfe, 0x67, 0x00, 0x2a, 0xa2, 0x33, 0x6d, 0x53, 0x62, 0x6f, 0xed, 0x57, - 0xb6, 0xc4, 0x50, 0xa8, 0xcc, 0x0e, 0xd3, 0x13, 0x74, 0xb4, 0xc2, 0xdc, 0x0b, 0x10, 0xcc, 0x55, - 0x1f, 0x76, 0x9e, 0xe6, 0x97, 0x2f, 0xcb, 0xe5, 0xd9, 0x61, 0xc9, 0xfc, 0x3d, 0xf5, 0xd6, 0x15, - 0x92, 0xd9, 0xb4, 0x84, 0x0c, 0x4a, 0xec, 0xaa, 0xb7, 0x26, 0xe7, 0x59, 0x2f, 0xad, 0xff, 0xd7, - 0xd7, 0x27, 0x82, 0xce, 0xa8, 0xac, 0x5c, 0xfe, 0x0e, 0x07, 0x74, 0xd1, 0x17, 0x3d, 0xdd, 0xde, - 0x36, 0xa4, 0xfe, 0xbc, 0xf3, 0x97, 0xd8, 0x68, 0x1d, 0xd9, 0x64, 0xe5, 0x55, 0xdf, 0xf0, 0x6d, - 0xf5, 0x9d, 0xab, 0xbf, 0xe1, 0x1a, 0x76, 0xea, 0xd5, 0xe0, 0xaf, 0x54, 0x4f, 0xf5, 0x17, 0x00, - 0xe6, 0xa2, 0xad, 0x7a, 0x78, 0x26, 0x0f, 0x69, 0xea, 0x2f, 0xa5, 0xf8, 0x67, 0xaf, 0xad, 0x78, - 0x4d, 0xbd, 0xf9, 0x92, 0x8a, 0x65, 0x17, 0x5d, 0x03, 0xd7, 0x0b, 0x4b, 0x4f, 0x1e, 0x83, 0xf8, - 0x67, 0x8f, 0xc1, 0xb7, 0x86, 0x38, 0x2c, 0xff, 0x06, 0xfc, 0xe4, 0xef, 0xf9, 0xf8, 0x1f, 0x00, - 0xd8, 0xf8, 0x35, 0x38, 0x7b, 0x5e, 0x1c, 0x79, 0xf6, 0xbc, 0x38, 0xf2, 0xe5, 0xf3, 0x22, 0x38, - 0xed, 0x14, 0xc1, 0x9f, 0x3a, 0x45, 0xf0, 0x69, 0xa7, 0x08, 0xce, 0x3a, 0x45, 0xf0, 0xaf, 0x4e, - 0x11, 0xfc, 0xbb, 0x53, 0x1c, 0xf9, 0xb2, 0x53, 0x04, 0xbf, 0x3d, 0x2f, 0x8e, 0x3c, 0x39, 0x2f, - 0x82, 0xb3, 0xf3, 0xe2, 0xc8, 0xb3, 0xf3, 0xe2, 0xc8, 0x87, 0xf7, 0x9a, 0xc4, 0xfd, 0xa8, 0xa9, - 0xb5, 0x89, 0xc5, 0x11, 0xa5, 0x86, 0xd6, 0x62, 0x65, 0xf1, 0xd1, 0x20, 0xd4, 0x2e, 0xb9, 0x94, - 0xb4, 0x71, 0x1d, 0xd1, 0x52, 0xb0, 0x5d, 0x76, 0x6b, 0x4d, 0x52, 0x46, 0x47, 0xdc, 0xff, 0x37, - 0x40, 0xe4, 0x7f, 0x15, 0xb5, 0x31, 0x31, 0x5a, 0xde, 0xf8, 0x3a, 0x00, 0x00, 0xff, 0xff, 0xf6, - 0xde, 0xb8, 0xf9, 0xc4, 0x11, 0x00, 0x00, + // 1702 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x5b, 0x49, + 0x1d, 0xcf, 0xd8, 0x4e, 0x6a, 0x8f, 0xf3, 0xc3, 0x19, 0x44, 0xeb, 0x7a, 0x8b, 0x49, 0x5f, 0x25, + 0xd4, 0x56, 0xf1, 0x73, 0x9a, 0xaa, 0xda, 0x2a, 0x94, 0x4a, 0x4d, 0xb2, 0x49, 0x93, 0x76, 0xd3, + 0xd5, 0x73, 0xa9, 0xd0, 0x82, 0xb0, 0x26, 0xcf, 0x63, 0x77, 0x76, 0xfd, 0xde, 0x3c, 0x66, 0xc6, + 0xde, 0xa4, 0xab, 0x8a, 0xa8, 0x20, 0x0e, 0x08, 0x09, 0x24, 0x0e, 0x20, 0x38, 0xb0, 0x47, 0x0e, + 0xfc, 0x05, 0xf4, 0x52, 0x89, 0x03, 0x2b, 0x0e, 0xa8, 0x82, 0xcb, 0x1e, 0x69, 0xba, 0x87, 0x05, + 0x84, 0x54, 0xed, 0x79, 0x85, 0xd0, 0xcc, 0xbc, 0xf7, 0x6c, 0xbf, 0xda, 0x6e, 0x82, 0xba, 0xa7, + 0xd8, 0x33, 0xdf, 0xef, 0x67, 0xbe, 0x9f, 0xcf, 0xcc, 0xf7, 0x47, 0x0c, 0x2b, 0x5d, 0x22, 0x6c, + 0xca, 0xaa, 0xc2, 0xbd, 0x4f, 0x3c, 0x5c, 0x6d, 0xf8, 0xa2, 0xfe, 0x80, 0xf9, 0xa4, 0x1a, 0x74, + 0x76, 0xdb, 0xd4, 0xad, 0xbb, 0x1d, 0x21, 0x99, 0x87, 0x03, 0x6a, 0x07, 0x9c, 0x49, 0x86, 0x4e, + 0x1a, 0x73, 0xdb, 0x98, 0xdb, 0x91, 0x79, 0xa9, 0xd2, 0xa2, 0xf2, 0x7e, 0x67, 0xd7, 0x76, 0x99, + 0x57, 0x6d, 0xb1, 0x16, 0xab, 0x6a, 0xf3, 0xdd, 0x4e, 0x53, 0x7f, 0xd3, 0x5f, 0xf4, 0x27, 0x03, + 0x53, 0x3a, 0xd3, 0x62, 0xac, 0xd5, 0x26, 0x55, 0x1c, 0xd0, 0x2a, 0xf6, 0x7d, 0x26, 0xb1, 0xa4, + 0xcc, 0x17, 0x89, 0xdd, 0x18, 0x43, 0x48, 0xde, 0x71, 0x65, 0xb8, 0xfb, 0xf5, 0xe4, 0xae, 0xa4, + 0x1e, 0x11, 0x12, 0x7b, 0x41, 0x68, 0x70, 0x6e, 0x04, 0x25, 0xb6, 0xfb, 0x1e, 0x89, 0x51, 0xac, + 0x11, 0x46, 0x72, 0x3f, 0x20, 0x51, 0x1c, 0x6f, 0x0c, 0xda, 0xb0, 0xa0, 0x3f, 0xc8, 0xd3, 0x83, + 0x9b, 0xfd, 0x7e, 0x67, 0x06, 0xb7, 0xba, 0xb8, 0x4d, 0x1b, 0x58, 0x92, 0xe1, 0x27, 0x77, 0x89, + 0x20, 0x7e, 0x37, 0x01, 0xbe, 0x90, 0xb0, 0xa1, 0xe4, 0x83, 0xfa, 0x80, 0x85, 0xc5, 0xe0, 0x57, + 0xb7, 0xbc, 0x80, 0x71, 0xb9, 0x71, 0x65, 0xad, 0xf6, 0x2e, 0xf3, 0x89, 0x43, 0x7e, 0xd0, 0x21, + 0x42, 0xa2, 0x7b, 0x70, 0xc6, 0x65, 0x7e, 0x93, 0xb6, 0x3a, 0x5c, 0x8b, 0x5a, 0x04, 0x0b, 0xe0, + 0x7c, 0x7e, 0x79, 0xc9, 0x1e, 0x7e, 0x73, 0xb6, 0xf2, 0x5f, 0xdf, 0xd1, 0x10, 0x6b, 0xfd, 0x7e, + 0xce, 0x20, 0x8c, 0xf5, 0x05, 0x80, 0x27, 0x93, 0x27, 0x8a, 0x80, 0xf9, 0x82, 0xa0, 0x6b, 0x30, + 0xeb, 0x11, 0x89, 0x1b, 0x58, 0xe2, 0xf0, 0xb4, 0x85, 0xc4, 0x69, 0x77, 0xb4, 0xf4, 0x9b, 0x44, + 0xbe, 0x4d, 0x24, 0xbe, 0xbb, 0x1f, 0x10, 0x27, 0xf6, 0x40, 0x77, 0xe0, 0x9c, 0xd8, 0x17, 0x92, + 0x78, 0xf5, 0x18, 0x24, 0xad, 0x41, 0xbe, 0x91, 0x00, 0xa9, 0x69, 0xab, 0x97, 0xa1, 0x66, 0x8d, + 0xfb, 0xdb, 0x11, 0xe0, 0x4d, 0x98, 0x11, 0x01, 0x71, 0x8b, 0x29, 0x8d, 0x72, 0x6e, 0x14, 0xf1, + 0x4d, 0x22, 0x6b, 0x01, 0x71, 0x15, 0xc4, 0xea, 0xdc, 0x6f, 0x1e, 0x4e, 0x2b, 0x1f, 0xbb, 0xe5, + 0xd6, 0xd5, 0x5f, 0x47, 0x23, 0xac, 0xe4, 0xfe, 0x72, 0x7d, 0xca, 0x9c, 0x67, 0xfd, 0x01, 0xc0, + 0xe2, 0x28, 0xa9, 0xd0, 0x0a, 0xcc, 0x2b, 0x58, 0x41, 0x78, 0x97, 0xba, 0x24, 0x3c, 0xf8, 0x94, + 0x6d, 0x1e, 0xaa, 0x1d, 0x3d, 0x54, 0xbb, 0xa6, 0x9f, 0xf1, 0xcd, 0x09, 0x07, 0x36, 0x7c, 0x51, + 0x33, 0xc6, 0xe8, 0x1a, 0x9c, 0xc6, 0xfd, 0xce, 0xe9, 0x57, 0x39, 0xe7, 0x71, 0xcf, 0x7b, 0xb5, + 0x00, 0xb3, 0xca, 0x59, 0xbd, 0x3e, 0x94, 0x79, 0xfa, 0x18, 0x80, 0xed, 0x4c, 0x16, 0x14, 0x52, + 0xd6, 0x7f, 0x01, 0x9c, 0x37, 0xb7, 0x75, 0xe3, 0x3b, 0x1b, 0x4e, 0xf4, 0x36, 0x96, 0xe0, 0x6c, + 0xc0, 0xa9, 0x87, 0xf9, 0xbe, 0x3e, 0x8e, 0x70, 0x7d, 0x5a, 0x6e, 0x35, 0xf7, 0xc7, 0x7f, 0x3e, + 0x49, 0x67, 0x78, 0x6a, 0x0f, 0x38, 0x33, 0xa1, 0x41, 0x4d, 0xef, 0xa3, 0x2a, 0xcc, 0x37, 0x98, + 0x87, 0xa9, 0x5f, 0xf7, 0xb1, 0x47, 0x8a, 0x27, 0xb4, 0xf9, 0xac, 0x32, 0xcf, 0xf1, 0x13, 0x05, + 0x50, 0x3c, 0x48, 0xdd, 0x07, 0x0e, 0x34, 0x26, 0x3b, 0xd8, 0x23, 0xe8, 0xfb, 0x10, 0x49, 0x41, + 0x5b, 0xf5, 0xc1, 0x37, 0x98, 0xd5, 0xa4, 0x2e, 0x8c, 0xba, 0x8a, 0xbb, 0xb5, 0xad, 0xcd, 0x01, + 0x45, 0x57, 0x35, 0x17, 0x67, 0x5e, 0x41, 0x0d, 0x6c, 0xac, 0x64, 0x3f, 0xbf, 0x3e, 0xf9, 0xe6, + 0xe2, 0xe5, 0xc5, 0xab, 0x86, 0xe8, 0x76, 0x26, 0x9b, 0x2a, 0xa4, 0xb7, 0x33, 0xd9, 0x4c, 0x61, + 0x72, 0x3b, 0x93, 0x9d, 0x2c, 0x4c, 0x6d, 0x67, 0xb2, 0x53, 0x85, 0x13, 0xd6, 0xa7, 0x00, 0xce, + 0xbf, 0x04, 0x8b, 0x96, 0xe0, 0x8c, 0x8e, 0xee, 0x7d, 0xb2, 0x6f, 0x08, 0x01, 0x4d, 0x68, 0x5a, + 0x11, 0x3a, 0xc1, 0x27, 0x0d, 0x9d, 0xbc, 0x32, 0xb9, 0x45, 0xf6, 0x35, 0x9f, 0x7b, 0x21, 0x1f, + 0xe5, 0x81, 0xdb, 0x2d, 0xc6, 0xa9, 0xbc, 0xef, 0xe9, 0x1b, 0x9e, 0x5d, 0x3e, 0x3f, 0x8e, 0xcf, + 0x2d, 0xb2, 0x7f, 0x23, 0xb2, 0x77, 0x0a, 0x21, 0x64, 0xbc, 0x82, 0xde, 0x82, 0xb3, 0x31, 0x6e, + 0x17, 0xb7, 0x3b, 0xd1, 0xc5, 0x9f, 0x4e, 0x3e, 0x7a, 0xe2, 0x72, 0x22, 0xf5, 0x23, 0x35, 0x9a, + 0x4c, 0x87, 0x50, 0xf7, 0x94, 0x93, 0x45, 0x21, 0xea, 0xbf, 0xe6, 0x30, 0x21, 0x6b, 0xc3, 0x6b, + 0x40, 0x65, 0x54, 0xbc, 0xef, 0x98, 0x3b, 0x5f, 0xdf, 0xa9, 0xf5, 0x25, 0x45, 0xb2, 0x00, 0x7c, + 0x0f, 0x16, 0x37, 0x89, 0x74, 0x88, 0xc7, 0x24, 0x51, 0x29, 0xb0, 0x41, 0xdb, 0x71, 0xd1, 0x39, + 0x03, 0x73, 0x4a, 0x4e, 0x11, 0x60, 0x37, 0xd4, 0xd4, 0xe9, 0x2d, 0x20, 0x0b, 0xce, 0x44, 0x47, + 0x19, 0xd5, 0x53, 0xda, 0x42, 0xe5, 0x8c, 0x02, 0x52, 0x3a, 0x5b, 0x57, 0xe1, 0xe9, 0x21, 0xe8, + 0x21, 0x9f, 0x37, 0x60, 0x4e, 0x3b, 0x37, 0x69, 0x3b, 0x82, 0xcf, 0x3e, 0x08, 0x8d, 0xac, 0xef, + 0xc2, 0x53, 0x9b, 0x44, 0xde, 0x66, 0x2e, 0x6e, 0xbf, 0xfe, 0xb0, 0x7e, 0x04, 0x34, 0xeb, 0x04, + 0x7a, 0x18, 0xd6, 0x36, 0xfc, 0x4a, 0x1b, 0x0b, 0x59, 0xc7, 0x7b, 0x4d, 0x5e, 0x8f, 0xbb, 0x50, + 0x31, 0xa7, 0xc5, 0x2e, 0xbd, 0x94, 0xc1, 0x77, 0x23, 0x0b, 0x67, 0x5e, 0xb9, 0xdd, 0xd8, 0x6b, + 0xf2, 0x78, 0x69, 0x90, 0x62, 0x2a, 0x41, 0xd1, 0x82, 0xd9, 0xb5, 0xb6, 0xa9, 0xf1, 0xe8, 0x24, + 0x9c, 0x92, 0xc4, 0xc7, 0xbe, 0x0c, 0x09, 0x85, 0xdf, 0xac, 0x1a, 0xcc, 0x85, 0x36, 0x22, 0x40, + 0xe7, 0xe0, 0x8c, 0xe8, 0xb8, 0x2e, 0x11, 0x86, 0x9e, 0x28, 0x82, 0x85, 0xf4, 0xf9, 0x9c, 0x33, + 0x1d, 0x2e, 0x2a, 0x26, 0x02, 0x9d, 0x85, 0xd3, 0x4d, 0x4c, 0xdb, 0xa4, 0x11, 0xda, 0xa4, 0xb4, + 0x4d, 0xde, 0xac, 0x69, 0x13, 0xeb, 0x3d, 0x78, 0xda, 0x3c, 0xaf, 0xd5, 0xad, 0x9d, 0xf5, 0x7b, + 0x61, 0x1f, 0x8b, 0xd4, 0x3d, 0x07, 0x33, 0xf1, 0x85, 0x4c, 0xaf, 0xce, 0x7d, 0xfc, 0x10, 0xe8, + 0x34, 0x7a, 0x30, 0x59, 0x3c, 0x38, 0x38, 0x00, 0x8e, 0xde, 0x44, 0x0b, 0x30, 0xdf, 0x20, 0xc2, + 0xe5, 0x54, 0x77, 0xaf, 0x58, 0xe2, 0xde, 0xd2, 0xca, 0xd4, 0xe7, 0xd7, 0xd3, 0xcb, 0x8b, 0x97, + 0xac, 0x5f, 0x03, 0x78, 0xaa, 0x77, 0xd8, 0x1a, 0x27, 0xaf, 0xfd, 0x28, 0x64, 0xc3, 0x02, 0x6d, + 0xf9, 0x8c, 0x13, 0x73, 0xe9, 0x6d, 0x2a, 0x64, 0x31, 0xad, 0x58, 0xaf, 0x66, 0x3e, 0x53, 0xb9, + 0x35, 0x6b, 0x76, 0x15, 0xf7, 0xdb, 0x54, 0xc8, 0x38, 0xb4, 0xff, 0x80, 0x28, 0xcd, 0x54, 0x68, + 0xf1, 0xfd, 0x6f, 0xc1, 0x39, 0xdd, 0xdb, 0xfb, 0xd0, 0x94, 0xce, 0xf9, 0xe5, 0xb3, 0xa3, 0x12, + 0x4d, 0x4b, 0xa8, 0x7b, 0xe7, 0x4c, 0x37, 0xfa, 0xa8, 0x4e, 0x42, 0x77, 0xe0, 0x3c, 0xf5, 0x93, + 0x60, 0x29, 0x0d, 0x36, 0xb2, 0x81, 0x6d, 0xf9, 0x31, 0x86, 0x33, 0x47, 0xfd, 0x41, 0xc0, 0x6f, + 0xc2, 0x52, 0xf4, 0x02, 0x5c, 0x2d, 0x65, 0x08, 0xec, 0xb2, 0x8e, 0x2f, 0x75, 0xad, 0x99, 0x71, + 0x4e, 0x85, 0x16, 0x46, 0xeb, 0x86, 0xe9, 0x6b, 0x1d, 0x5f, 0x5a, 0xb7, 0x60, 0x2e, 0x8e, 0x34, + 0x7e, 0x99, 0xbd, 0x7a, 0x69, 0x5e, 0xa6, 0x2e, 0x8f, 0x67, 0xe1, 0x34, 0x27, 0x2e, 0xe3, 0x8d, + 0x10, 0x38, 0xa5, 0x81, 0xf3, 0x66, 0xcd, 0x80, 0x7d, 0x1b, 0xe6, 0xfb, 0x22, 0x1d, 0x0f, 0x77, + 0x01, 0x16, 0xc2, 0x69, 0x89, 0x32, 0xbf, 0x4e, 0x38, 0x67, 0x3c, 0xbc, 0xc7, 0xb9, 0xde, 0xfa, + 0x5b, 0x6a, 0x79, 0xf9, 0x4f, 0xb3, 0x30, 0xb7, 0xa6, 0xa7, 0xd3, 0x1b, 0xef, 0x6c, 0xa1, 0x17, + 0x00, 0xce, 0x0e, 0x4e, 0x27, 0x68, 0x64, 0xb5, 0x1b, 0x3a, 0x37, 0x95, 0xec, 0xa3, 0x9a, 0x9b, + 0xcb, 0xb7, 0x7e, 0x78, 0xf8, 0xe7, 0xe2, 0x66, 0x97, 0x88, 0x0a, 0x65, 0x15, 0xea, 0x37, 0x39, + 0x36, 0x43, 0x6a, 0x87, 0x93, 0xca, 0x07, 0x9c, 0x4a, 0xb2, 0xd8, 0xbc, 0xb2, 0xe7, 0x56, 0x1a, + 0xbe, 0xa8, 0xec, 0x62, 0x41, 0xdd, 0x4a, 0x47, 0x10, 0xbe, 0xb8, 0x10, 0x2f, 0x0a, 0x89, 0xfd, + 0x06, 0xe6, 0x0d, 0xbd, 0xfe, 0xe8, 0xef, 0x9f, 0xfe, 0x32, 0x65, 0x5b, 0x17, 0xc2, 0xa9, 0xbb, + 0x1a, 0xd7, 0x28, 0x51, 0x35, 0xb3, 0x4d, 0x6f, 0x3e, 0xa5, 0x3a, 0x9a, 0x15, 0x70, 0x11, 0xfd, + 0x0b, 0x40, 0xd8, 0xab, 0xfd, 0xe8, 0xc2, 0xf8, 0xf8, 0xfb, 0xc6, 0x80, 0xd2, 0xc5, 0xa3, 0x98, + 0x86, 0x34, 0x7f, 0x0c, 0x5e, 0x37, 0xcf, 0xcb, 0x96, 0x7d, 0x64, 0x9e, 0xba, 0xb4, 0x2a, 0xb2, + 0xbf, 0x4d, 0xc1, 0xf9, 0x97, 0xfa, 0x03, 0x5a, 0x1a, 0x33, 0xdb, 0x0d, 0x6d, 0x54, 0xa5, 0x4b, + 0xc7, 0xf0, 0x08, 0x15, 0xf8, 0x48, 0x29, 0x70, 0x7b, 0xb8, 0x02, 0x9c, 0xe0, 0x46, 0x52, 0x00, + 0x8f, 0xf9, 0x54, 0xb2, 0xa1, 0x1a, 0x84, 0x5b, 0x5a, 0x86, 0x6d, 0x74, 0x73, 0x88, 0x0c, 0x1f, + 0xc6, 0x9f, 0x1f, 0xf6, 0xb4, 0xf8, 0x70, 0xa0, 0x4d, 0x3d, 0xac, 0x72, 0x1d, 0x68, 0x3d, 0xee, + 0x17, 0xe8, 0x57, 0x29, 0x58, 0x48, 0x76, 0x29, 0x54, 0x1d, 0x43, 0x75, 0x58, 0xb7, 0x2c, 0x2d, + 0x1d, 0xdd, 0x21, 0x94, 0xe6, 0x77, 0x5f, 0x8e, 0x34, 0x5b, 0x68, 0xf3, 0xff, 0x95, 0xa6, 0xad, + 0xe2, 0xec, 0x53, 0xe6, 0xdf, 0x00, 0x22, 0xdd, 0x16, 0x37, 0x38, 0xf3, 0xd6, 0x77, 0x6a, 0xeb, + 0x7a, 0x52, 0x45, 0x0b, 0xa3, 0xa8, 0x46, 0x6d, 0xb6, 0x74, 0xf6, 0x15, 0x16, 0x22, 0xb0, 0x7e, + 0xae, 0xd8, 0xdf, 0x1c, 0x97, 0x1a, 0x0b, 0xc7, 0xcd, 0x8d, 0x6f, 0x59, 0x57, 0x8f, 0x90, 0x1b, + 0x6e, 0x5b, 0xf3, 0xe3, 0xcc, 0xab, 0xab, 0x35, 0x33, 0x7d, 0xab, 0x2c, 0x79, 0x94, 0xea, 0xef, + 0x53, 0x51, 0xbf, 0x46, 0x97, 0xc6, 0xe7, 0xfb, 0x90, 0xde, 0xfe, 0xaa, 0x12, 0xd1, 0xdf, 0x06, + 0xad, 0x9f, 0x29, 0x1d, 0x36, 0x8e, 0x5b, 0x22, 0xc6, 0xa8, 0x70, 0xcd, 0x7a, 0xf3, 0xe8, 0x15, + 0x62, 0x97, 0xfa, 0x8d, 0x7a, 0xf4, 0x2f, 0xb6, 0x12, 0xe1, 0x0b, 0x00, 0x0b, 0xc9, 0x39, 0x62, + 0x74, 0x32, 0x8c, 0x98, 0x38, 0x8e, 0x25, 0xc0, 0x4f, 0x5f, 0xb7, 0x00, 0x2b, 0xd6, 0x95, 0x63, + 0x0a, 0x60, 0x7a, 0xfc, 0x0a, 0xb8, 0x58, 0x5a, 0x7c, 0xf2, 0x18, 0xa4, 0xff, 0xf6, 0x18, 0x7c, + 0x6d, 0x44, 0xfc, 0xe6, 0xff, 0xd9, 0x47, 0x7f, 0x2d, 0xa6, 0x3f, 0x02, 0x60, 0xf5, 0x27, 0xe0, + 0xe9, 0xb3, 0xf2, 0xc4, 0x27, 0xcf, 0xca, 0x13, 0x2f, 0x9e, 0x95, 0xc1, 0xc1, 0x61, 0x19, 0xfc, + 0xfe, 0xb0, 0x0c, 0x3e, 0x3e, 0x2c, 0x83, 0xa7, 0x87, 0x65, 0xf0, 0x8f, 0xc3, 0x32, 0xf8, 0xec, + 0xb0, 0x3c, 0xf1, 0xe2, 0xb0, 0x0c, 0x7e, 0xf1, 0xbc, 0x3c, 0xf1, 0xe4, 0x79, 0x19, 0x3c, 0x7d, + 0x5e, 0x9e, 0xf8, 0xe4, 0x79, 0x79, 0xe2, 0xdd, 0xdb, 0x2d, 0x16, 0xbc, 0xdf, 0xb2, 0xbb, 0xac, + 0x2d, 0x09, 0xe7, 0xd8, 0xee, 0x88, 0xaa, 0xfe, 0xd0, 0x64, 0xdc, 0xab, 0x04, 0x9c, 0x75, 0x69, + 0x83, 0xf0, 0x4a, 0xb4, 0x5d, 0x0d, 0x76, 0x5b, 0xac, 0x4a, 0xf6, 0x64, 0xf8, 0x93, 0x46, 0xe2, + 0x77, 0x97, 0xdd, 0x29, 0x3d, 0x26, 0x5f, 0xfe, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x6d, 0x63, + 0x5f, 0x91, 0x90, 0x12, 0x00, 0x00, } func (this *ImportF5CSZoneRequest) Equal(that interface{}) bool { @@ -1628,6 +1647,9 @@ func (this *CloneReq) Equal(that interface{}) bool { } else if this == nil { return false } + if this.Tenant != that1.Tenant { + return false + } return true } func (this *CloneResp) Equal(that interface{}) bool { @@ -1970,8 +1992,9 @@ func (this *CloneReq) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 4) + s := make([]string, 0, 5) s = append(s, "&dns_zone.CloneReq{") + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -2873,6 +2896,13 @@ func (m *CloneReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } @@ -3333,6 +3363,10 @@ func (m *CloneReq) Size() (n int) { } var l int _ = l + l = len(m.Tenant) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } return n } @@ -3594,6 +3628,7 @@ func (this *CloneReq) String() string { return "nil" } s := strings.Join([]string{`&CloneReq{`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, `}`, }, "") return s @@ -4908,6 +4943,38 @@ func (m *CloneReq) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: CloneReq: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/dns_zone/public_customapi.vesapi.go b/pbgo/extschema/schema/dns_zone/public_customapi.vesapi.go index bc5b3147e..04ad103e9 100644 --- a/pbgo/extschema/schema/dns_zone/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/dns_zone/public_customapi.vesapi.go @@ -193,6 +193,7 @@ func (c *CustomAPIRestClient) doRPCCloneFromDNSDomain(ctx context.Context, callO hReq = newReq q := hReq.URL.Query() _ = q + q.Add("tenant", fmt.Sprintf("%v", req.Tenant)) hReq.URL.RawQuery += q.Encode() case "delete": @@ -1540,7 +1541,6 @@ var CustomAPISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-dns_zone-customapi-importbindcreate" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.dns_zone.CustomAPI.ImportBINDCreate" }, "x-displayname": "DNS Zone Custom API", @@ -1625,7 +1625,6 @@ var CustomAPISwaggerJSON string = `{ "description": "Examples of this operation", "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-dns_zone-customapi-importbindvalidate" }, - "x-ves-in-development": "true", "x-ves-proto-rpc": "ves.io.schema.dns_zone.CustomAPI.ImportBINDValidate" }, "x-displayname": "DNS Zone Custom API", @@ -2049,7 +2048,15 @@ var CustomAPISwaggerJSON string = `{ "description": "Clone Request", "title": "Clone Request", "x-displayname": "Clone Request", - "x-ves-proto-message": "ves.io.schema.dns_zone.CloneReq" + "x-ves-proto-message": "ves.io.schema.dns_zone.CloneReq", + "properties": { + "tenant": { + "type": "string", + "description": " Tenant for which dns domain cloned", + "title": "Tenant name", + "x-displayname": "Tenant name" + } + } }, "dns_zoneCloneResp": { "type": "object", @@ -2972,12 +2979,14 @@ var CustomAPISwaggerJSON string = `{ "type": "object", "title": "Import BIND Create Request", "x-displayname": "Import BIND Create Request", + "x-ves-displayorder": "2,1", "x-ves-proto-message": "ves.io.schema.dns_zone.ImportBINDCreateRequest", "properties": { "description": { "type": "string", + "description": " Optional description about zone, import method, etc.", "title": "Description", - "x-displayname": "Description for each zone" + "x-displayname": "Description" }, "file": { "type": "string", @@ -2991,15 +3000,6 @@ var CustomAPISwaggerJSON string = `{ "ves.io.schema.rules.bytes.max_len": "2097152", "ves.io.schema.rules.message.required": "true" } - }, - "ignore_zone_list": { - "type": "array", - "description": " Zones in this list will be ignored when parsing the zip file to avoid invalid zone errors. ", - "title": "Ignore Zone List", - "items": { - "type": "string" - }, - "x-displayname": "Ignore Zone List" } } }, @@ -3011,6 +3011,7 @@ var CustomAPISwaggerJSON string = `{ "properties": { "invalid_zone_list": { "type": "array", + "description": " Zones that we failed to parse. On submission, objects will not be created for any detected zone in this list.", "title": "Invalid Zone List", "items": { "$ref": "#/definitions/dns_zoneInvalidZone" @@ -3025,6 +3026,7 @@ var CustomAPISwaggerJSON string = `{ }, "valid_zone_list": { "type": "array", + "description": " Zones that we parsed succcessfully. On submission, objects will be created for every zone in this list. ", "title": "Valid Zone List", "items": { "$ref": "#/definitions/dns_zoneValidZone" @@ -3037,12 +3039,14 @@ var CustomAPISwaggerJSON string = `{ "type": "object", "title": "Import BIND Validate Request", "x-displayname": "Import BIND Validate Request", + "x-ves-displayorder": "2,1", "x-ves-proto-message": "ves.io.schema.dns_zone.ImportBINDValidateRequest", "properties": { "description": { "type": "string", + "description": " Optional description about zone, import method, etc.", "title": "Description", - "x-displayname": "Description for each zone" + "x-displayname": "Description" }, "file": { "type": "string", @@ -4402,10 +4406,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dns_zone/public_customapi.vesmsg.go b/pbgo/extschema/schema/dns_zone/public_customapi.vesmsg.go index 27cc17189..f3af4afd7 100644 --- a/pbgo/extschema/schema/dns_zone/public_customapi.vesmsg.go +++ b/pbgo/extschema/schema/dns_zone/public_customapi.vesmsg.go @@ -79,6 +79,15 @@ func (v *ValidateCloneReq) Validate(ctx context.Context, pm interface{}, opts .. return nil } + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + return nil } diff --git a/pbgo/extschema/schema/dns_zone/rrset/pkg.vespkg.go b/pbgo/extschema/schema/dns_zone/rrset/pkg.vespkg.go new file mode 100644 index 000000000..4877302d0 --- /dev/null +++ b/pbgo/extschema/schema/dns_zone/rrset/pkg.vespkg.go @@ -0,0 +1,127 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package rrset + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.dns_zone.rrset.CreateRequest"] = CreateRequestValidator() + vr["ves.io.schema.dns_zone.rrset.DeleteRequest"] = DeleteRequestValidator() + vr["ves.io.schema.dns_zone.rrset.GetRequest"] = GetRequestValidator() + vr["ves.io.schema.dns_zone.rrset.ReplaceRequest"] = ReplaceRequestValidator() + vr["ves.io.schema.dns_zone.rrset.Response"] = ResponseValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Create"] = []string{ + "rrset.dlv_record", + "rrset.sshfp_record.values.#.fingerprint", + "rrset.sshfp_record.values.#.fingerprinttype", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Create"] = []string{ + "rrset.dlv_record", + "rrset.sshfp_record.values.#.fingerprint", + "rrset.sshfp_record.values.#.fingerprinttype", + } + + mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Create"] = []string{ + "rrset.alias_record.name", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Delete"] = []string{ + "rrset.dlv_record", + "rrset.sshfp_record.values.#.fingerprint", + "rrset.sshfp_record.values.#.fingerprinttype", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Get"] = []string{ + "rrset.dlv_record", + "rrset.sshfp_record.values.#.fingerprint", + "rrset.sshfp_record.values.#.fingerprinttype", + } + + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Replace"] = []string{ + "rrset.dlv_record", + "rrset.sshfp_record.values.#.fingerprint", + "rrset.sshfp_record.values.#.fingerprinttype", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Replace"] = []string{ + "rrset.dlv_record", + "rrset.sshfp_record.values.#.fingerprint", + "rrset.sshfp_record.values.#.fingerprinttype", + } + + mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.dns_zone.rrset.CustomAPI.Replace"] = []string{ + "rrset.alias_record.name", + } + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + sm["ves.io.schema.dns_zone.rrset.CustomAPI"] = "config/dns" + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + sm["dns"] = svcfw.P0PolicyInfo{ + Name: "ves-io-allow-config-dns", + ServiceSelector: "bifrost\\.gc.*\\", + } + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + customCSR.SwaggerRegistry["ves.io.schema.dns_zone.rrset.CustomAPI"] = CustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.dns_zone.rrset.CustomAPI"] = NewCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.dns_zone.rrset.CustomAPI"] = NewCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.dns_zone.rrset.CustomAPI"] = RegisterCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.dns_zone.rrset.CustomAPI"] = RegisterGwCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.dns_zone.rrset.CustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewCustomAPIServer(svc) + } + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/dns_zone/rrset/public_customapi.pb.go b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.pb.go new file mode 100644 index 000000000..37a7b5dde --- /dev/null +++ b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.pb.go @@ -0,0 +1,2623 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/dns_zone/rrset/public_customapi.proto + +// F5XC DNS Management Subscription API +// +// x-displayName: "F5XC DNS Management Subscription API" +// x-required +// Use this API to subscribe to F5XC DNS Management + +package rrset + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + dns_zone "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// CreateRequest +// +// x-displayName: "Create Request" +type CreateRequest struct { + // dns_zone_name + // + // x-displayName: "dns zone name" + // x-required + DnsZoneName string `protobuf:"bytes,1,opt,name=dns_zone_name,json=dnsZoneName,proto3" json:"dns_zone_name,omitempty"` + // group_name + // + // x-displayName: "group name" + // x-required + GroupName string `protobuf:"bytes,2,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` + // rrset + // + // x-displayName: "rrset" + // x-required + Rrset *dns_zone.RRSet `protobuf:"bytes,5,opt,name=rrset,proto3" json:"rrset,omitempty"` +} + +func (m *CreateRequest) Reset() { *m = CreateRequest{} } +func (*CreateRequest) ProtoMessage() {} +func (*CreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_973a8feeac956e8c, []int{0} +} +func (m *CreateRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateRequest.Merge(m, src) +} +func (m *CreateRequest) XXX_Size() int { + return m.Size() +} +func (m *CreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateRequest proto.InternalMessageInfo + +func (m *CreateRequest) GetDnsZoneName() string { + if m != nil { + return m.DnsZoneName + } + return "" +} + +func (m *CreateRequest) GetGroupName() string { + if m != nil { + return m.GroupName + } + return "" +} + +func (m *CreateRequest) GetRrset() *dns_zone.RRSet { + if m != nil { + return m.Rrset + } + return nil +} + +// ReplaceRequest +// +// x-displayName: "Replace Request" +type ReplaceRequest struct { + // dns_zone_name + // + // x-displayName: "dns zone name" + // x-required + DnsZoneName string `protobuf:"bytes,1,opt,name=dns_zone_name,json=dnsZoneName,proto3" json:"dns_zone_name,omitempty"` + // group_name + // + // x-displayName: "group name" + // x-required + GroupName string `protobuf:"bytes,2,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` + // record_name + // + // x-displayName: "record name" + // x-required + RecordName string `protobuf:"bytes,3,opt,name=record_name,json=recordName,proto3" json:"record_name,omitempty"` + // type + // + // x-displayName: "type" + // x-required + Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` + // rrset + // + // x-displayName: "rrset" + // x-required + Rrset *dns_zone.RRSet `protobuf:"bytes,5,opt,name=rrset,proto3" json:"rrset,omitempty"` +} + +func (m *ReplaceRequest) Reset() { *m = ReplaceRequest{} } +func (*ReplaceRequest) ProtoMessage() {} +func (*ReplaceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_973a8feeac956e8c, []int{1} +} +func (m *ReplaceRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceRequest.Merge(m, src) +} +func (m *ReplaceRequest) XXX_Size() int { + return m.Size() +} +func (m *ReplaceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceRequest proto.InternalMessageInfo + +func (m *ReplaceRequest) GetDnsZoneName() string { + if m != nil { + return m.DnsZoneName + } + return "" +} + +func (m *ReplaceRequest) GetGroupName() string { + if m != nil { + return m.GroupName + } + return "" +} + +func (m *ReplaceRequest) GetRecordName() string { + if m != nil { + return m.RecordName + } + return "" +} + +func (m *ReplaceRequest) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +func (m *ReplaceRequest) GetRrset() *dns_zone.RRSet { + if m != nil { + return m.Rrset + } + return nil +} + +// GetRequest +// +// x-displayName: "Get Request" +type GetRequest struct { + // dns_zone_name + // + // x-displayName: "dns zone name" + // x-required + DnsZoneName string `protobuf:"bytes,1,opt,name=dns_zone_name,json=dnsZoneName,proto3" json:"dns_zone_name,omitempty"` + // group_name + // + // x-displayName: "group name" + // x-required + GroupName string `protobuf:"bytes,2,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` + // record_name + // + // x-displayName: "record name" + // x-required + RecordName string `protobuf:"bytes,3,opt,name=record_name,json=recordName,proto3" json:"record_name,omitempty"` + // type + // + // x-displayName: "type" + // x-required + Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` +} + +func (m *GetRequest) Reset() { *m = GetRequest{} } +func (*GetRequest) ProtoMessage() {} +func (*GetRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_973a8feeac956e8c, []int{2} +} +func (m *GetRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetRequest.Merge(m, src) +} +func (m *GetRequest) XXX_Size() int { + return m.Size() +} +func (m *GetRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetRequest proto.InternalMessageInfo + +func (m *GetRequest) GetDnsZoneName() string { + if m != nil { + return m.DnsZoneName + } + return "" +} + +func (m *GetRequest) GetGroupName() string { + if m != nil { + return m.GroupName + } + return "" +} + +func (m *GetRequest) GetRecordName() string { + if m != nil { + return m.RecordName + } + return "" +} + +func (m *GetRequest) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +// DeleteRequest +// +// x-displayName: "Delete Request" +type DeleteRequest struct { + // dns_zone_name + // + // x-displayName: "dns zone name" + // x-required + DnsZoneName string `protobuf:"bytes,1,opt,name=dns_zone_name,json=dnsZoneName,proto3" json:"dns_zone_name,omitempty"` + // group_name + // + // x-displayName: "group name" + // x-required + GroupName string `protobuf:"bytes,2,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` + // record_name + // + // x-displayName: "record name" + // x-required + RecordName string `protobuf:"bytes,3,opt,name=record_name,json=recordName,proto3" json:"record_name,omitempty"` + // type + // + // x-displayName: "type" + // x-required + Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` +} + +func (m *DeleteRequest) Reset() { *m = DeleteRequest{} } +func (*DeleteRequest) ProtoMessage() {} +func (*DeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_973a8feeac956e8c, []int{3} +} +func (m *DeleteRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DeleteRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteRequest.Merge(m, src) +} +func (m *DeleteRequest) XXX_Size() int { + return m.Size() +} +func (m *DeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo + +func (m *DeleteRequest) GetDnsZoneName() string { + if m != nil { + return m.DnsZoneName + } + return "" +} + +func (m *DeleteRequest) GetGroupName() string { + if m != nil { + return m.GroupName + } + return "" +} + +func (m *DeleteRequest) GetRecordName() string { + if m != nil { + return m.RecordName + } + return "" +} + +func (m *DeleteRequest) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +// Response +// +// x-displayName: "Response" +type Response struct { + // namespace + // + // x-displayName: "namespace" + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // dns_zone_name + // + // x-displayName: "dns zone name" + DnsZoneName string `protobuf:"bytes,2,opt,name=dns_zone_name,json=dnsZoneName,proto3" json:"dns_zone_name,omitempty"` + // group_name + // + // x-displayName: "group name" + GroupName string `protobuf:"bytes,3,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` + // record_name + // + // x-displayName: "record name" + RecordName string `protobuf:"bytes,4,opt,name=record_name,json=recordName,proto3" json:"record_name,omitempty"` + // type + // + // x-displayName: "type" + Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type,omitempty"` + // rrset + // + // x-displayName: "rrset" + // x-required + Rrset *dns_zone.RRSet `protobuf:"bytes,6,opt,name=rrset,proto3" json:"rrset,omitempty"` +} + +func (m *Response) Reset() { *m = Response{} } +func (*Response) ProtoMessage() {} +func (*Response) Descriptor() ([]byte, []int) { + return fileDescriptor_973a8feeac956e8c, []int{4} +} +func (m *Response) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Response) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Response.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Response) XXX_Merge(src proto.Message) { + xxx_messageInfo_Response.Merge(m, src) +} +func (m *Response) XXX_Size() int { + return m.Size() +} +func (m *Response) XXX_DiscardUnknown() { + xxx_messageInfo_Response.DiscardUnknown(m) +} + +var xxx_messageInfo_Response proto.InternalMessageInfo + +func (m *Response) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *Response) GetDnsZoneName() string { + if m != nil { + return m.DnsZoneName + } + return "" +} + +func (m *Response) GetGroupName() string { + if m != nil { + return m.GroupName + } + return "" +} + +func (m *Response) GetRecordName() string { + if m != nil { + return m.RecordName + } + return "" +} + +func (m *Response) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +func (m *Response) GetRrset() *dns_zone.RRSet { + if m != nil { + return m.Rrset + } + return nil +} + +func init() { + proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.dns_zone.rrset.CreateRequest") + golang_proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.dns_zone.rrset.CreateRequest") + proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.dns_zone.rrset.ReplaceRequest") + golang_proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.dns_zone.rrset.ReplaceRequest") + proto.RegisterType((*GetRequest)(nil), "ves.io.schema.dns_zone.rrset.GetRequest") + golang_proto.RegisterType((*GetRequest)(nil), "ves.io.schema.dns_zone.rrset.GetRequest") + proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.dns_zone.rrset.DeleteRequest") + golang_proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.dns_zone.rrset.DeleteRequest") + proto.RegisterType((*Response)(nil), "ves.io.schema.dns_zone.rrset.Response") + golang_proto.RegisterType((*Response)(nil), "ves.io.schema.dns_zone.rrset.Response") +} + +func init() { + proto.RegisterFile("ves.io/schema/dns_zone/rrset/public_customapi.proto", fileDescriptor_973a8feeac956e8c) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/dns_zone/rrset/public_customapi.proto", fileDescriptor_973a8feeac956e8c) +} + +var fileDescriptor_973a8feeac956e8c = []byte{ + // 1077 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0x5f, 0x68, 0x1c, 0x45, + 0x18, 0xbf, 0xb9, 0x4d, 0xa2, 0x99, 0x90, 0x22, 0xfb, 0x74, 0xc6, 0x64, 0x1b, 0x07, 0xd1, 0x4b, + 0x7a, 0xbb, 0x1b, 0x92, 0x2a, 0xc6, 0x17, 0xb9, 0xfc, 0x69, 0x1a, 0x48, 0x62, 0xd8, 0x8b, 0x52, + 0x12, 0xe3, 0x31, 0xb7, 0x37, 0xb9, 0xae, 0xde, 0xed, 0x6c, 0x67, 0x66, 0xaf, 0x6d, 0x42, 0x20, + 0xf4, 0x59, 0xa5, 0x50, 0x10, 0xfa, 0xa4, 0xf8, 0xe4, 0x93, 0x8f, 0x22, 0xfa, 0x12, 0xfa, 0x92, + 0x3c, 0x49, 0x40, 0x84, 0x2a, 0x0a, 0xe6, 0xe2, 0x83, 0xf6, 0xa9, 0xcf, 0x42, 0x41, 0x76, 0xe6, + 0xae, 0xb9, 0x4d, 0xf3, 0xe7, 0x90, 0xd4, 0x56, 0xe8, 0xcb, 0xce, 0xcc, 0xf7, 0xe7, 0xf7, 0xed, + 0x7c, 0xbf, 0xfd, 0xf6, 0x9b, 0x81, 0x23, 0x55, 0xc2, 0x2d, 0x8f, 0xda, 0xdc, 0xbd, 0x4c, 0x2a, + 0xd8, 0x2e, 0xfa, 0x3c, 0xbf, 0x4a, 0x7d, 0x62, 0x33, 0xc6, 0x89, 0xb0, 0x83, 0xb0, 0x50, 0xf6, + 0xdc, 0xbc, 0x1b, 0x72, 0x41, 0x2b, 0x38, 0xf0, 0xac, 0x80, 0x51, 0x41, 0xf5, 0x5e, 0xe5, 0x64, + 0x29, 0x27, 0xab, 0xe1, 0x64, 0x49, 0xa7, 0x1e, 0xb3, 0xe4, 0x89, 0xcb, 0x61, 0xc1, 0x72, 0x69, + 0xc5, 0x2e, 0xd1, 0x12, 0xb5, 0xa5, 0x53, 0x21, 0x5c, 0x91, 0x2b, 0xb9, 0x90, 0x33, 0x05, 0xd6, + 0xd3, 0x5b, 0xa2, 0xb4, 0x54, 0x26, 0x36, 0x0e, 0x3c, 0x1b, 0xfb, 0x3e, 0x15, 0x58, 0x78, 0xd4, + 0xe7, 0x75, 0x2d, 0x3a, 0xe2, 0xfd, 0xc4, 0xf5, 0x80, 0x34, 0x6c, 0x5e, 0x8a, 0xdb, 0xd0, 0xa0, + 0x19, 0xe0, 0xc5, 0xb8, 0xb2, 0xd9, 0xaf, 0x37, 0xae, 0xaa, 0xe2, 0xb2, 0x57, 0xc4, 0x82, 0x1c, + 0x1e, 0xb9, 0x4a, 0x38, 0xf1, 0xab, 0x07, 0xc0, 0xfb, 0x0f, 0xd8, 0x78, 0xe4, 0x6a, 0x3e, 0x66, + 0x81, 0xf6, 0x00, 0xec, 0x1e, 0x67, 0x04, 0x0b, 0xe2, 0x90, 0x2b, 0x21, 0xe1, 0x42, 0x9f, 0x85, + 0xdd, 0x8d, 0x5d, 0xe4, 0x7d, 0x5c, 0x21, 0x29, 0xd0, 0x0f, 0xd2, 0x9d, 0x63, 0x03, 0xdf, 0xfd, + 0xb5, 0xa9, 0xbd, 0xc2, 0xd0, 0x70, 0x7f, 0x7a, 0x69, 0xc8, 0x1c, 0xc5, 0xe6, 0xea, 0x72, 0x7a, + 0xc9, 0xc2, 0xe6, 0xea, 0x90, 0x39, 0x6a, 0x2e, 0x0f, 0x2e, 0xa9, 0xd9, 0xf2, 0xc0, 0xdb, 0x03, + 0x4e, 0x57, 0xd1, 0xe7, 0x8b, 0xd4, 0x27, 0x73, 0xb8, 0x42, 0xf4, 0x39, 0x08, 0x4b, 0x8c, 0x86, + 0x81, 0xc2, 0x4a, 0x4a, 0x2c, 0x3b, 0xc2, 0x6a, 0x63, 0xc9, 0x17, 0x40, 0x34, 0x79, 0x99, 0x9d, + 0x1d, 0xee, 0x4b, 0x2f, 0x29, 0x44, 0x53, 0xe1, 0xe4, 0xe3, 0x88, 0x9d, 0x12, 0x42, 0xe2, 0x8d, + 0xc0, 0x76, 0x49, 0x63, 0xaa, 0xbd, 0x1f, 0xa4, 0xbb, 0x86, 0xfb, 0xac, 0x23, 0xb8, 0x76, 0x9c, + 0x1c, 0x11, 0x8e, 0xb2, 0x45, 0xdf, 0x68, 0xf0, 0x8c, 0x43, 0x82, 0x32, 0x76, 0xff, 0x2f, 0xdb, + 0x3c, 0x0b, 0xbb, 0x18, 0x71, 0x29, 0x2b, 0x2a, 0x40, 0x2d, 0x02, 0x74, 0xa0, 0x12, 0x49, 0x83, + 0xaf, 0x01, 0x6c, 0x8b, 0x3e, 0x96, 0x54, 0x9b, 0x8c, 0x75, 0x5b, 0xc6, 0xb8, 0x05, 0xd8, 0x4d, + 0xe0, 0x7c, 0x02, 0x96, 0x50, 0x16, 0x65, 0x50, 0x36, 0x9b, 0x95, 0xc3, 0xcc, 0x74, 0x36, 0x87, + 0x32, 0x68, 0x5c, 0xae, 0xc6, 0xe7, 0xb2, 0xb3, 0x93, 0x28, 0x83, 0x66, 0x2f, 0xa1, 0x0c, 0x9a, + 0x8b, 0xe4, 0xf3, 0x0b, 0x0e, 0xca, 0xa0, 0x9c, 0xf3, 0x1e, 0xca, 0xa0, 0x85, 0x4b, 0x0b, 0x28, + 0x83, 0x26, 0xe6, 0x72, 0x33, 0x63, 0x91, 0x3a, 0xab, 0x74, 0xd9, 0x0b, 0xb9, 0x89, 0x68, 0x3d, + 0xf9, 0xee, 0xf4, 0xf9, 0x37, 0xd5, 0xf8, 0xc6, 0xf9, 0xc8, 0x4e, 0xc2, 0xca, 0xe7, 0xcc, 0x3b, + 0xe3, 0x11, 0x48, 0xee, 0xe2, 0x85, 0xf9, 0x08, 0x66, 0x26, 0x27, 0x63, 0x4d, 0x3a, 0x0b, 0x68, + 0xd9, 0x91, 0xef, 0xf9, 0xef, 0x88, 0x7b, 0x90, 0x84, 0x70, 0x8a, 0x88, 0x67, 0xa4, 0x3d, 0x19, + 0xd2, 0xd0, 0x86, 0x06, 0xbb, 0x27, 0x48, 0x99, 0x88, 0x67, 0x75, 0xf3, 0xa4, 0x28, 0xf8, 0x09, + 0xc0, 0xe7, 0x1d, 0xc2, 0x03, 0xea, 0x73, 0xa2, 0xf7, 0xc2, 0xce, 0x68, 0x5f, 0x3c, 0xc0, 0x6e, + 0x3d, 0xf3, 0xce, 0xbe, 0x40, 0x47, 0x07, 0xb9, 0x91, 0xf9, 0x8c, 0x27, 0xbc, 0x2f, 0x96, 0x70, + 0x95, 0x9f, 0xa3, 0xf3, 0xd7, 0xf6, 0x48, 0xfe, 0xf4, 0x7a, 0xfa, 0xda, 0xa5, 0xe6, 0x40, 0x69, + 0x77, 0xb4, 0x5e, 0xda, 0xc3, 0x3f, 0x9f, 0x81, 0x9d, 0xe3, 0xb2, 0x71, 0x67, 0xe7, 0xa7, 0xf5, + 0x2f, 0x35, 0xd8, 0xa1, 0xfa, 0x90, 0x7e, 0xce, 0x3a, 0xae, 0x7d, 0x5b, 0xb1, 0x6e, 0xd5, 0xf3, + 0xea, 0xf1, 0xc6, 0x8d, 0xc4, 0xa1, 0x3b, 0xc9, 0xda, 0x56, 0xea, 0x62, 0x95, 0x70, 0xd3, 0xa3, + 0xa6, 0xe7, 0xaf, 0x30, 0xcc, 0x05, 0x0b, 0x5d, 0x11, 0x32, 0x62, 0x5e, 0x65, 0x9e, 0x20, 0x99, + 0xfe, 0x95, 0xd7, 0xaf, 0xb9, 0x66, 0xd1, 0xe7, 0x66, 0x01, 0x73, 0xcf, 0x35, 0x43, 0x4e, 0x58, + 0x93, 0x90, 0x0b, 0xec, 0x17, 0x31, 0x2b, 0x4a, 0xf9, 0xbd, 0xad, 0xd4, 0xe7, 0x00, 0x0e, 0xd6, + 0xe1, 0x54, 0x68, 0x69, 0x15, 0x85, 0x36, 0x69, 0xe1, 0x43, 0xe2, 0x0a, 0x53, 0xbe, 0x81, 0xe9, + 0xaa, 0x4d, 0x5d, 0x81, 0x6d, 0x01, 0xe5, 0x42, 0xf7, 0xea, 0x67, 0x16, 0xfb, 0x21, 0x6b, 0xdc, + 0xe6, 0xd7, 0xb9, 0x20, 0x95, 0x87, 0x67, 0x07, 0x6e, 0x9f, 0x54, 0x42, 0xea, 0xf4, 0x13, 0xd9, + 0x1d, 0x53, 0x15, 0x37, 0x7e, 0xfc, 0xe3, 0x56, 0x72, 0x06, 0x4d, 0xb5, 0x12, 0x70, 0x2d, 0xf6, + 0xd9, 0xac, 0x37, 0xf0, 0xd7, 0xf6, 0xbf, 0x94, 0xf5, 0xb7, 0xc0, 0xa0, 0xfe, 0x8b, 0x06, 0xb5, + 0x29, 0x22, 0xf4, 0xf4, 0xf1, 0x49, 0xdf, 0xff, 0x61, 0xb7, 0x4c, 0xcf, 0x86, 0xb6, 0xfd, 0x6d, + 0x12, 0xd4, 0xb6, 0x52, 0xb3, 0x87, 0x53, 0xc4, 0x08, 0x2e, 0x3e, 0xc2, 0x50, 0x85, 0xfa, 0x9e, + 0xa0, 0x87, 0x92, 0x54, 0x57, 0xdd, 0xdb, 0x4a, 0xdd, 0x01, 0xf0, 0xb5, 0x56, 0x78, 0x2a, 0x11, + 0xa1, 0x7f, 0x06, 0xa0, 0x16, 0x8d, 0x9f, 0x82, 0xff, 0x8c, 0x25, 0xa5, 0xcd, 0x9a, 0x8b, 0x43, + 0xe6, 0xe8, 0x60, 0xde, 0x32, 0x97, 0xcf, 0xc5, 0x44, 0x4a, 0x22, 0xa9, 0xfc, 0x40, 0x7f, 0xff, + 0x94, 0xa8, 0xb4, 0xd7, 0x9a, 0x4a, 0x7c, 0xdd, 0x5e, 0x8b, 0x6a, 0x78, 0x5d, 0xff, 0x55, 0x83, + 0xcf, 0xd5, 0xcf, 0x48, 0x7a, 0xe6, 0x24, 0xda, 0x9a, 0x8f, 0x52, 0x2d, 0x93, 0xfc, 0xf7, 0x69, + 0xd7, 0x60, 0xab, 0xdc, 0x06, 0xa1, 0xe2, 0x36, 0x1a, 0x9f, 0x4a, 0x6e, 0x71, 0xcf, 0x63, 0xe5, + 0x36, 0xaa, 0xdd, 0xdf, 0x34, 0xd8, 0xa1, 0x3a, 0xf9, 0x49, 0x3f, 0xd8, 0x58, 0xbf, 0x6f, 0x99, + 0xdc, 0x07, 0xa7, 0x4d, 0xee, 0x76, 0x8b, 0x3f, 0xd8, 0xa2, 0xda, 0xd4, 0x6d, 0x00, 0x3b, 0xea, + 0xd3, 0xa7, 0xb3, 0x7c, 0x07, 0x1f, 0x2b, 0xc5, 0x3d, 0x5d, 0x9b, 0xdf, 0x03, 0xed, 0xc6, 0x0f, + 0x29, 0xed, 0x0b, 0x00, 0xc6, 0x3e, 0x06, 0x3b, 0xbb, 0x46, 0xe2, 0xee, 0xae, 0x91, 0xb8, 0xbf, + 0x6b, 0x80, 0x8d, 0x9a, 0x01, 0xbe, 0xaa, 0x19, 0x60, 0xbb, 0x66, 0x80, 0x9d, 0x9a, 0x01, 0x7e, + 0xaf, 0x19, 0xe0, 0xcf, 0x9a, 0x91, 0xb8, 0x5f, 0x33, 0xc0, 0xcd, 0x3d, 0x23, 0xb1, 0xb9, 0x67, + 0x80, 0x9d, 0x3d, 0x23, 0x71, 0x77, 0xcf, 0x48, 0x2c, 0x3a, 0x25, 0x1a, 0x7c, 0x54, 0xb2, 0xaa, + 0xb4, 0x2c, 0x08, 0x63, 0xd8, 0x0a, 0xb9, 0x2d, 0x27, 0x2b, 0x94, 0x55, 0xcc, 0x80, 0xd1, 0xaa, + 0x57, 0x24, 0xcc, 0x6c, 0xa8, 0xed, 0xa0, 0x50, 0xa2, 0x36, 0xb9, 0x26, 0xea, 0x37, 0xcc, 0x43, + 0xaf, 0xe9, 0x85, 0x0e, 0x79, 0xd7, 0x1c, 0xf9, 0x27, 0x00, 0x00, 0xff, 0xff, 0x9e, 0x76, 0x28, + 0x11, 0xcd, 0x0f, 0x00, 0x00, +} + +func (this *CreateRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateRequest) + if !ok { + that2, ok := that.(CreateRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DnsZoneName != that1.DnsZoneName { + return false + } + if this.GroupName != that1.GroupName { + return false + } + if !this.Rrset.Equal(that1.Rrset) { + return false + } + return true +} +func (this *ReplaceRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceRequest) + if !ok { + that2, ok := that.(ReplaceRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DnsZoneName != that1.DnsZoneName { + return false + } + if this.GroupName != that1.GroupName { + return false + } + if this.RecordName != that1.RecordName { + return false + } + if this.Type != that1.Type { + return false + } + if !this.Rrset.Equal(that1.Rrset) { + return false + } + return true +} +func (this *GetRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetRequest) + if !ok { + that2, ok := that.(GetRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DnsZoneName != that1.DnsZoneName { + return false + } + if this.GroupName != that1.GroupName { + return false + } + if this.RecordName != that1.RecordName { + return false + } + if this.Type != that1.Type { + return false + } + return true +} +func (this *DeleteRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DeleteRequest) + if !ok { + that2, ok := that.(DeleteRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DnsZoneName != that1.DnsZoneName { + return false + } + if this.GroupName != that1.GroupName { + return false + } + if this.RecordName != that1.RecordName { + return false + } + if this.Type != that1.Type { + return false + } + return true +} +func (this *Response) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Response) + if !ok { + that2, ok := that.(Response) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.DnsZoneName != that1.DnsZoneName { + return false + } + if this.GroupName != that1.GroupName { + return false + } + if this.RecordName != that1.RecordName { + return false + } + if this.Type != that1.Type { + return false + } + if !this.Rrset.Equal(that1.Rrset) { + return false + } + return true +} +func (this *CreateRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&rrset.CreateRequest{") + s = append(s, "DnsZoneName: "+fmt.Sprintf("%#v", this.DnsZoneName)+",\n") + s = append(s, "GroupName: "+fmt.Sprintf("%#v", this.GroupName)+",\n") + if this.Rrset != nil { + s = append(s, "Rrset: "+fmt.Sprintf("%#v", this.Rrset)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&rrset.ReplaceRequest{") + s = append(s, "DnsZoneName: "+fmt.Sprintf("%#v", this.DnsZoneName)+",\n") + s = append(s, "GroupName: "+fmt.Sprintf("%#v", this.GroupName)+",\n") + s = append(s, "RecordName: "+fmt.Sprintf("%#v", this.RecordName)+",\n") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + if this.Rrset != nil { + s = append(s, "Rrset: "+fmt.Sprintf("%#v", this.Rrset)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&rrset.GetRequest{") + s = append(s, "DnsZoneName: "+fmt.Sprintf("%#v", this.DnsZoneName)+",\n") + s = append(s, "GroupName: "+fmt.Sprintf("%#v", this.GroupName)+",\n") + s = append(s, "RecordName: "+fmt.Sprintf("%#v", this.RecordName)+",\n") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DeleteRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&rrset.DeleteRequest{") + s = append(s, "DnsZoneName: "+fmt.Sprintf("%#v", this.DnsZoneName)+",\n") + s = append(s, "GroupName: "+fmt.Sprintf("%#v", this.GroupName)+",\n") + s = append(s, "RecordName: "+fmt.Sprintf("%#v", this.RecordName)+",\n") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Response) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&rrset.Response{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "DnsZoneName: "+fmt.Sprintf("%#v", this.DnsZoneName)+",\n") + s = append(s, "GroupName: "+fmt.Sprintf("%#v", this.GroupName)+",\n") + s = append(s, "RecordName: "+fmt.Sprintf("%#v", this.RecordName)+",\n") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + if this.Rrset != nil { + s = append(s, "Rrset: "+fmt.Sprintf("%#v", this.Rrset)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomAPIClient is the client API for CustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomAPIClient interface { + // Create + // + // x-displayName: "Create" + Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*Response, error) + // Get + // + // x-displayName: "Get" + Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*Response, error) + // Replace + // + // x-displayName: "Replace" + Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*Response, error) + // Delete + // + // x-displayName: "Delete" + Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*Response, error) +} + +type customAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { + return &customAPIClient{cc} +} + +func (c *customAPIClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*Response, error) { + out := new(Response) + err := c.cc.Invoke(ctx, "/ves.io.schema.dns_zone.rrset.CustomAPI/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*Response, error) { + out := new(Response) + err := c.cc.Invoke(ctx, "/ves.io.schema.dns_zone.rrset.CustomAPI/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*Response, error) { + out := new(Response) + err := c.cc.Invoke(ctx, "/ves.io.schema.dns_zone.rrset.CustomAPI/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*Response, error) { + out := new(Response) + err := c.cc.Invoke(ctx, "/ves.io.schema.dns_zone.rrset.CustomAPI/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CustomAPIServer is the server API for CustomAPI service. +type CustomAPIServer interface { + // Create + // + // x-displayName: "Create" + Create(context.Context, *CreateRequest) (*Response, error) + // Get + // + // x-displayName: "Get" + Get(context.Context, *GetRequest) (*Response, error) + // Replace + // + // x-displayName: "Replace" + Replace(context.Context, *ReplaceRequest) (*Response, error) + // Delete + // + // x-displayName: "Delete" + Delete(context.Context, *DeleteRequest) (*Response, error) +} + +// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomAPIServer struct { +} + +func (*UnimplementedCustomAPIServer) Create(ctx context.Context, req *CreateRequest) (*Response, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedCustomAPIServer) Get(ctx context.Context, req *GetRequest) (*Response, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedCustomAPIServer) Replace(ctx context.Context, req *ReplaceRequest) (*Response, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedCustomAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*Response, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { + s.RegisterService(&_CustomAPI_serviceDesc, srv) +} + +func _CustomAPI_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.dns_zone.rrset.CustomAPI/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Create(ctx, req.(*CreateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.dns_zone.rrset.CustomAPI/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Get(ctx, req.(*GetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReplaceRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.dns_zone.rrset.CustomAPI/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Replace(ctx, req.(*ReplaceRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.dns_zone.rrset.CustomAPI/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Delete(ctx, req.(*DeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.dns_zone.rrset.CustomAPI", + HandlerType: (*CustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _CustomAPI_Create_Handler, + }, + { + MethodName: "Get", + Handler: _CustomAPI_Get_Handler, + }, + { + MethodName: "Replace", + Handler: _CustomAPI_Replace_Handler, + }, + { + MethodName: "Delete", + Handler: _CustomAPI_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/dns_zone/rrset/public_customapi.proto", +} + +func (m *CreateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Rrset != nil { + { + size, err := m.Rrset.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.GroupName) > 0 { + i -= len(m.GroupName) + copy(dAtA[i:], m.GroupName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.GroupName))) + i-- + dAtA[i] = 0x12 + } + if len(m.DnsZoneName) > 0 { + i -= len(m.DnsZoneName) + copy(dAtA[i:], m.DnsZoneName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.DnsZoneName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Rrset != nil { + { + size, err := m.Rrset.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.Type) > 0 { + i -= len(m.Type) + copy(dAtA[i:], m.Type) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Type))) + i-- + dAtA[i] = 0x22 + } + if len(m.RecordName) > 0 { + i -= len(m.RecordName) + copy(dAtA[i:], m.RecordName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.RecordName))) + i-- + dAtA[i] = 0x1a + } + if len(m.GroupName) > 0 { + i -= len(m.GroupName) + copy(dAtA[i:], m.GroupName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.GroupName))) + i-- + dAtA[i] = 0x12 + } + if len(m.DnsZoneName) > 0 { + i -= len(m.DnsZoneName) + copy(dAtA[i:], m.DnsZoneName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.DnsZoneName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Type) > 0 { + i -= len(m.Type) + copy(dAtA[i:], m.Type) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Type))) + i-- + dAtA[i] = 0x22 + } + if len(m.RecordName) > 0 { + i -= len(m.RecordName) + copy(dAtA[i:], m.RecordName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.RecordName))) + i-- + dAtA[i] = 0x1a + } + if len(m.GroupName) > 0 { + i -= len(m.GroupName) + copy(dAtA[i:], m.GroupName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.GroupName))) + i-- + dAtA[i] = 0x12 + } + if len(m.DnsZoneName) > 0 { + i -= len(m.DnsZoneName) + copy(dAtA[i:], m.DnsZoneName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.DnsZoneName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DeleteRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DeleteRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DeleteRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Type) > 0 { + i -= len(m.Type) + copy(dAtA[i:], m.Type) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Type))) + i-- + dAtA[i] = 0x22 + } + if len(m.RecordName) > 0 { + i -= len(m.RecordName) + copy(dAtA[i:], m.RecordName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.RecordName))) + i-- + dAtA[i] = 0x1a + } + if len(m.GroupName) > 0 { + i -= len(m.GroupName) + copy(dAtA[i:], m.GroupName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.GroupName))) + i-- + dAtA[i] = 0x12 + } + if len(m.DnsZoneName) > 0 { + i -= len(m.DnsZoneName) + copy(dAtA[i:], m.DnsZoneName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.DnsZoneName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Response) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Response) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Response) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Rrset != nil { + { + size, err := m.Rrset.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if len(m.Type) > 0 { + i -= len(m.Type) + copy(dAtA[i:], m.Type) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Type))) + i-- + dAtA[i] = 0x2a + } + if len(m.RecordName) > 0 { + i -= len(m.RecordName) + copy(dAtA[i:], m.RecordName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.RecordName))) + i-- + dAtA[i] = 0x22 + } + if len(m.GroupName) > 0 { + i -= len(m.GroupName) + copy(dAtA[i:], m.GroupName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.GroupName))) + i-- + dAtA[i] = 0x1a + } + if len(m.DnsZoneName) > 0 { + i -= len(m.DnsZoneName) + copy(dAtA[i:], m.DnsZoneName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.DnsZoneName))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *CreateRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DnsZoneName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.GroupName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Rrset != nil { + l = m.Rrset.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ReplaceRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DnsZoneName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.GroupName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.RecordName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Type) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Rrset != nil { + l = m.Rrset.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *GetRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DnsZoneName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.GroupName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.RecordName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Type) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *DeleteRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DnsZoneName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.GroupName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.RecordName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Type) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *Response) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.DnsZoneName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.GroupName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.RecordName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Type) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Rrset != nil { + l = m.Rrset.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *CreateRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateRequest{`, + `DnsZoneName:` + fmt.Sprintf("%v", this.DnsZoneName) + `,`, + `GroupName:` + fmt.Sprintf("%v", this.GroupName) + `,`, + `Rrset:` + strings.Replace(fmt.Sprintf("%v", this.Rrset), "RRSet", "dns_zone.RRSet", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceRequest{`, + `DnsZoneName:` + fmt.Sprintf("%v", this.DnsZoneName) + `,`, + `GroupName:` + fmt.Sprintf("%v", this.GroupName) + `,`, + `RecordName:` + fmt.Sprintf("%v", this.RecordName) + `,`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Rrset:` + strings.Replace(fmt.Sprintf("%v", this.Rrset), "RRSet", "dns_zone.RRSet", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetRequest{`, + `DnsZoneName:` + fmt.Sprintf("%v", this.DnsZoneName) + `,`, + `GroupName:` + fmt.Sprintf("%v", this.GroupName) + `,`, + `RecordName:` + fmt.Sprintf("%v", this.RecordName) + `,`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `}`, + }, "") + return s +} +func (this *DeleteRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DeleteRequest{`, + `DnsZoneName:` + fmt.Sprintf("%v", this.DnsZoneName) + `,`, + `GroupName:` + fmt.Sprintf("%v", this.GroupName) + `,`, + `RecordName:` + fmt.Sprintf("%v", this.RecordName) + `,`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `}`, + }, "") + return s +} +func (this *Response) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Response{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `DnsZoneName:` + fmt.Sprintf("%v", this.DnsZoneName) + `,`, + `GroupName:` + fmt.Sprintf("%v", this.GroupName) + `,`, + `RecordName:` + fmt.Sprintf("%v", this.RecordName) + `,`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Rrset:` + strings.Replace(fmt.Sprintf("%v", this.Rrset), "RRSet", "dns_zone.RRSet", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *CreateRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsZoneName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DnsZoneName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GroupName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rrset", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Rrset == nil { + m.Rrset = &dns_zone.RRSet{} + } + if err := m.Rrset.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsZoneName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DnsZoneName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GroupName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RecordName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RecordName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rrset", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Rrset == nil { + m.Rrset = &dns_zone.RRSet{} + } + if err := m.Rrset.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsZoneName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DnsZoneName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GroupName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RecordName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RecordName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeleteRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DeleteRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeleteRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsZoneName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DnsZoneName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GroupName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RecordName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RecordName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Response) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Response: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Response: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsZoneName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DnsZoneName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GroupName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RecordName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RecordName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rrset", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Rrset == nil { + m.Rrset = &dns_zone.RRSet{} + } + if err := m.Rrset.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/dns_zone/rrset/public_customapi.pb.gw.go b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.pb.gw.go new file mode 100644 index 000000000..79daffd4c --- /dev/null +++ b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.pb.gw.go @@ -0,0 +1,726 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/dns_zone/rrset/public_customapi.proto + +/* +Package rrset is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package rrset + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_CustomAPI_Create_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Create_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CustomAPI_Get_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + val, ok = pathParams["record_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "record_name") + } + + protoReq.RecordName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "record_name", err) + } + + val, ok = pathParams["type"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "type") + } + + protoReq.Type, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "type", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Get_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + val, ok = pathParams["record_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "record_name") + } + + protoReq.RecordName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "record_name", err) + } + + val, ok = pathParams["type"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "type") + } + + protoReq.Type, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "type", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CustomAPI_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + val, ok = pathParams["record_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "record_name") + } + + protoReq.RecordName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "record_name", err) + } + + val, ok = pathParams["type"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "type") + } + + protoReq.Type, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "type", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + val, ok = pathParams["record_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "record_name") + } + + protoReq.RecordName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "record_name", err) + } + + val, ok = pathParams["type"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "type") + } + + protoReq.Type, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "type", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CustomAPI_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + val, ok = pathParams["record_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "record_name") + } + + protoReq.RecordName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "record_name", err) + } + + val, ok = pathParams["type"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "type") + } + + protoReq.Type, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "type", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["dns_zone_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "dns_zone_name") + } + + protoReq.DnsZoneName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "dns_zone_name", err) + } + + val, ok = pathParams["group_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "group_name") + } + + protoReq.GroupName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "group_name", err) + } + + val, ok = pathParams["record_name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "record_name") + } + + protoReq.RecordName, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "record_name", err) + } + + val, ok = pathParams["type"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "type") + } + + protoReq.Type, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "type", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCustomAPIHandlerServer registers the http handlers for service CustomAPI to "mux". +// UnaryRPC :call CustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CustomAPIServer) error { + + mux.Handle("POST", pattern_CustomAPI_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_CustomAPI_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_CustomAPI_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_CustomAPI_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCustomAPIHandlerFromEndpoint is same as RegisterCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCustomAPIHandler(ctx, mux, conn) +} + +// RegisterCustomAPIHandler registers the http handlers for service CustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIClient(conn)) +} + +// RegisterCustomAPIHandlerClient registers the http handlers for service CustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CustomAPIClient" to call the correct interceptors. +func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CustomAPIClient) error { + + mux.Handle("POST", pattern_CustomAPI_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_CustomAPI_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_CustomAPI_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_CustomAPI_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CustomAPI_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5, 1, 0, 4, 1, 5, 6}, []string{"public", "namespaces", "system", "dns_zones", "dns_zone_name", "rrsets", "group_name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5, 1, 0, 4, 1, 5, 6, 1, 0, 4, 1, 5, 7, 1, 0, 4, 1, 5, 8}, []string{"public", "namespaces", "system", "dns_zones", "dns_zone_name", "rrsets", "group_name", "record_name", "type"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5, 1, 0, 4, 1, 5, 6, 1, 0, 4, 1, 5, 7, 1, 0, 4, 1, 5, 8}, []string{"public", "namespaces", "system", "dns_zones", "dns_zone_name", "rrsets", "group_name", "record_name", "type"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5, 1, 0, 4, 1, 5, 6, 1, 0, 4, 1, 5, 7, 1, 0, 4, 1, 5, 8}, []string{"public", "namespaces", "system", "dns_zones", "dns_zone_name", "rrsets", "group_name", "record_name", "type"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_CustomAPI_Create_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_Get_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_Replace_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_Delete_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/dns_zone/rrset/public_customapi.vesapi.go b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.vesapi.go new file mode 100644 index 000000000..9b5810b67 --- /dev/null +++ b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.vesapi.go @@ -0,0 +1,3172 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package rrset + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create CustomAPI GRPC Client satisfying server.CustomClient +type CustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient CustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *CustomAPIGrpcClient) doRPCCreate(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &CreateRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.CreateRequest", yamlReq) + } + rsp, err := c.grpcClient.Create(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCDelete(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &DeleteRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.DeleteRequest", yamlReq) + } + rsp, err := c.grpcClient.Delete(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCGet(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &GetRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.GetRequest", yamlReq) + } + rsp, err := c.grpcClient.Get(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCReplace(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &ReplaceRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.ReplaceRequest", yamlReq) + } + rsp, err := c.grpcClient.Replace(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &CustomAPIGrpcClient{ + conn: cc, + grpcClient: NewCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["Create"] = ccl.doRPCCreate + + rpcFns["Delete"] = ccl.doRPCDelete + + rpcFns["Get"] = ccl.doRPCGet + + rpcFns["Replace"] = ccl.doRPCReplace + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create CustomAPI REST Client satisfying server.CustomClient +type CustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *CustomAPIRestClient) doRPCCreate(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &CreateRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.CreateRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("dns_zone_name", fmt.Sprintf("%v", req.DnsZoneName)) + q.Add("group_name", fmt.Sprintf("%v", req.GroupName)) + q.Add("rrset", fmt.Sprintf("%v", req.Rrset)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &Response{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.dns_zone.rrset.Response", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCDelete(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &DeleteRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.DeleteRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("dns_zone_name", fmt.Sprintf("%v", req.DnsZoneName)) + q.Add("group_name", fmt.Sprintf("%v", req.GroupName)) + q.Add("record_name", fmt.Sprintf("%v", req.RecordName)) + q.Add("type", fmt.Sprintf("%v", req.Type)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &Response{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.dns_zone.rrset.Response", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCGet(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &GetRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.GetRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("dns_zone_name", fmt.Sprintf("%v", req.DnsZoneName)) + q.Add("group_name", fmt.Sprintf("%v", req.GroupName)) + q.Add("record_name", fmt.Sprintf("%v", req.RecordName)) + q.Add("type", fmt.Sprintf("%v", req.Type)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &Response{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.dns_zone.rrset.Response", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCReplace(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &ReplaceRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.dns_zone.rrset.ReplaceRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("dns_zone_name", fmt.Sprintf("%v", req.DnsZoneName)) + q.Add("group_name", fmt.Sprintf("%v", req.GroupName)) + q.Add("record_name", fmt.Sprintf("%v", req.RecordName)) + q.Add("rrset", fmt.Sprintf("%v", req.Rrset)) + q.Add("type", fmt.Sprintf("%v", req.Type)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &Response{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.dns_zone.rrset.Response", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["Create"] = ccl.doRPCCreate + + rpcFns["Delete"] = ccl.doRPCDelete + + rpcFns["Get"] = ccl.doRPCGet + + rpcFns["Replace"] = ccl.doRPCReplace + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create customAPIInprocClient + +// INPROC Client (satisfying CustomAPIClient interface) +type customAPIInprocClient struct { + CustomAPIServer +} + +func (c *customAPIInprocClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*Response, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.dns_zone.rrset.CustomAPI.Create") + return c.CustomAPIServer.Create(ctx, in) +} +func (c *customAPIInprocClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*Response, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.dns_zone.rrset.CustomAPI.Delete") + return c.CustomAPIServer.Delete(ctx, in) +} +func (c *customAPIInprocClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*Response, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.dns_zone.rrset.CustomAPI.Get") + return c.CustomAPIServer.Get(ctx, in) +} +func (c *customAPIInprocClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*Response, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.dns_zone.rrset.CustomAPI.Replace") + return c.CustomAPIServer.Replace(ctx, in) +} + +func NewCustomAPIInprocClient(svc svcfw.Service) CustomAPIClient { + return &customAPIInprocClient{CustomAPIServer: NewCustomAPIServer(svc)} +} + +// RegisterGwCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIInprocClient(s)) +} + +// Create customAPISrv + +// SERVER (satisfying CustomAPIServer interface) +type customAPISrv struct { + svc svcfw.Service +} + +func (s *customAPISrv) Create(ctx context.Context, in *CreateRequest) (*Response, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.dns_zone.rrset.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *Response + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.CreateRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Create' operation on 'rrset'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + if err := s.svc.CustomAPIProcessDRef(ctx, in); err != nil { + return nil, err + } + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.dns_zone.rrset.CustomAPI.Create"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Create(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.Response", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) Delete(ctx context.Context, in *DeleteRequest) (*Response, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.dns_zone.rrset.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *Response + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.DeleteRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Delete' operation on 'rrset'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.dns_zone.rrset.CustomAPI.Delete"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Delete(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.Response", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) Get(ctx context.Context, in *GetRequest) (*Response, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.dns_zone.rrset.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *Response + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.GetRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Get' operation on 'rrset'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.dns_zone.rrset.CustomAPI.Get"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Get(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.Response", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) Replace(ctx context.Context, in *ReplaceRequest) (*Response, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.dns_zone.rrset.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *Response + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.ReplaceRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Replace' operation on 'rrset'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + if err := s.svc.CustomAPIProcessDRef(ctx, in); err != nil { + return nil, err + } + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.dns_zone.rrset.CustomAPI.Replace"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Replace(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.dns_zone.rrset.Response", rsp)...) + + return rsp, nil +} + +func NewCustomAPIServer(svc svcfw.Service) CustomAPIServer { + return &customAPISrv{svc: svc} +} + +var CustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "F5XC DNS Management Subscription API", + "description": "x-required\nUse this API to subscribe to F5XC DNS Management", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}": { + "post": { + "summary": "Create", + "operationId": "ves.io.schema.dns_zone.rrset.CustomAPI.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/rrsetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "dns_zone_name", + "description": "dns_zone_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "dns zone name" + }, + { + "name": "group_name", + "description": "group_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "group name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/rrsetCreateRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-dns_zone-rrset-customapi-create" + }, + "x-ves-proto-rpc": "ves.io.schema.dns_zone.rrset.CustomAPI.Create" + }, + "x-displayname": "F5XC DNS Management Subscription API", + "x-ves-proto-service": "ves.io.schema.dns_zone.rrset.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/system/dns_zones/{dns_zone_name}/rrsets/{group_name}/{record_name}/{type}": { + "get": { + "summary": "Get", + "operationId": "ves.io.schema.dns_zone.rrset.CustomAPI.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/rrsetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "dns_zone_name", + "description": "dns_zone_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "dns zone name" + }, + { + "name": "group_name", + "description": "group_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "group name" + }, + { + "name": "record_name", + "description": "record_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "record name" + }, + { + "name": "type", + "description": "type\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "type" + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-dns_zone-rrset-customapi-get" + }, + "x-ves-proto-rpc": "ves.io.schema.dns_zone.rrset.CustomAPI.Get" + }, + "delete": { + "summary": "Delete", + "operationId": "ves.io.schema.dns_zone.rrset.CustomAPI.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/rrsetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "dns_zone_name", + "description": "dns_zone_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "dns zone name" + }, + { + "name": "group_name", + "description": "group_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "group name" + }, + { + "name": "record_name", + "description": "record_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "record name" + }, + { + "name": "type", + "description": "type\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "type" + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-dns_zone-rrset-customapi-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.dns_zone.rrset.CustomAPI.Delete" + }, + "put": { + "summary": "Replace", + "operationId": "ves.io.schema.dns_zone.rrset.CustomAPI.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/rrsetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "dns_zone_name", + "description": "dns_zone_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "dns zone name" + }, + { + "name": "group_name", + "description": "group_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "group name" + }, + { + "name": "record_name", + "description": "record_name\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "record name" + }, + { + "name": "type", + "description": "type\n\nx-required", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "type" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/rrsetReplaceRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-dns_zone-rrset-customapi-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.dns_zone.rrset.CustomAPI.Replace" + }, + "x-displayname": "F5XC DNS Management Subscription API", + "x-ves-proto-service": "ves.io.schema.dns_zone.rrset.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "dns_zoneAFSDBRecordSubtype": { + "type": "string", + "description": "AFS Volume Location Server or DCE Authentication Server.\n\n - NONE: NONE\n\n - AFSVolumeLocationServer: AFS Volume Location Server\n\n - DCEAuthenticationServer: DCE Authentication Server\n", + "title": "AFSDB Record Subtype", + "enum": [ + "NONE", + "AFSVolumeLocationServer", + "DCEAuthenticationServer" + ], + "default": "NONE", + "x-displayname": "AFSDB Record Subtype", + "x-ves-proto-enum": "ves.io.schema.dns_zone.AFSDBRecordSubtype" + }, + "dns_zoneAFSDBRecordValue": { + "type": "object", + "title": "AFSDBRecordValue", + "x-displayname": "AFSDBRecordValue", + "x-ves-proto-message": "ves.io.schema.dns_zone.AFSDBRecordValue", + "properties": { + "hostname": { + "type": "string", + "description": " Server name of the AFS cell database server or the DCE name server.\n\nExample: - \"mail.example.com\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.hostname: true\n", + "title": "Hostname", + "x-displayname": "Hostname", + "x-ves-example": "mail.example.com", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.hostname": "true" + } + }, + "subtype": { + "description": " AFSDB Record Subtype.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.enum.not_in: 0\n ves.io.schema.rules.message.required: true\n", + "title": "Subtype", + "$ref": "#/definitions/dns_zoneAFSDBRecordSubtype", + "x-displayname": "Subtype", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.not_in": "0", + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "dns_zoneCERTAlgorithm": { + "type": "string", + "description": "CERT algorithm value must be compatible with the specified algorithm.\n\n - RESERVEDALGORITHM: RESERVEDALGORITHM\n\n - RSAMD5: RSAMD5\n\n - DH: DH\n\n - DSASHA1: DSASHA1\n\n - ECC: ECC\n\n - RSASHA1ALGORITHM: RSA-SHA1\n\n - INDIRECT: INDIRECT\n\n - PRIVATEDNS: PRIVATEDNS\n\n - PRIVATEOID: PRIVATEOID\n", + "title": "CERT Algorithm", + "enum": [ + "RESERVEDALGORITHM", + "RSAMD5", + "DH", + "DSASHA1", + "ECC", + "RSASHA1ALGORITHM", + "INDIRECT", + "PRIVATEDNS", + "PRIVATEOID" + ], + "default": "RESERVEDALGORITHM", + "x-displayname": "CERT Algorithm", + "x-ves-proto-enum": "ves.io.schema.dns_zone.CERTAlgorithm" + }, + "dns_zoneCERTRecordValue": { + "type": "object", + "title": "CERTRecordValue", + "x-displayname": "CERTRecordValue", + "x-ves-proto-message": "ves.io.schema.dns_zone.CERTRecordValue", + "properties": { + "algorithm": { + "description": "\nExample: - \"3\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.enum.not_in: 0\n ves.io.schema.rules.message.required: true\n", + "title": "Algorithm", + "$ref": "#/definitions/dns_zoneCERTAlgorithm", + "x-displayname": "Algorithm", + "x-ves-example": "3", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.not_in": "0", + "ves.io.schema.rules.message.required": "true" + } + }, + "cert_key_tag": { + "type": "integer", + "description": "\nExample: - \"3\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Key Tag", + "format": "int64", + "x-displayname": "Key Tag", + "x-ves-example": "3", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "cert_type": { + "description": "\nExample: - \"PKIX\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.enum.not_in: 0\n ves.io.schema.rules.message.required: true\n", + "title": "Type", + "$ref": "#/definitions/dns_zoneCERTType", + "x-displayname": "Type", + "x-ves-example": "PKIX", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.not_in": "0", + "ves.io.schema.rules.message.required": "true" + } + }, + "certificate": { + "type": "string", + "description": " Certificate in base 64 format.\n\nExample: - \"Ab100cFg\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 4096\n ves.io.schema.rules.string.min_len: 1\n", + "title": "Certificate", + "minLength": 1, + "maxLength": 4096, + "x-displayname": "Certificate", + "x-ves-example": "Ab100cFg", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "4096", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "dns_zoneCERTResourceRecord": { + "type": "object", + "description": "DNS CERT Record", + "title": "CERTResourceRecord", + "x-displayname": "DNS CERT Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.CERTResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " CERT Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"values\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "CERT Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneCERTRecordValue" + }, + "x-displayname": "CERT Value", + "x-ves-example": "values", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneCERTType": { + "type": "string", + "description": "CERT type value must be compatible with the specified types.\n\n - INVALIDCERTTYPE: INVALIDCERTTYPE\n\n - PKIX: PKIX\n\n - SPKI: SPKI\n\n - PGP: PGP\n\n - IPKIX: IPKIX\n\n - ISPKI: ISPKI\n\n - IPGP: IPGP\n\n - ACPKIX: ACPKIX\n\n - IACPKIX: IACPKIX\n\n - URI_: URI\n\n - OID: OID\n", + "title": "CERT Type", + "enum": [ + "INVALIDCERTTYPE", + "PKIX", + "SPKI", + "PGP", + "IPKIX", + "ISPKI", + "IPGP", + "ACPKIX", + "IACPKIX", + "URI_", + "OID" + ], + "default": "INVALIDCERTTYPE", + "x-displayname": "CERT Type", + "x-ves-proto-enum": "ves.io.schema.dns_zone.CERTType" + }, + "dns_zoneCertificationAuthorityAuthorization": { + "type": "object", + "title": "CertificationAuthorityAuthorization", + "x-displayname": "CertificationAuthorityAuthorization", + "x-ves-proto-message": "ves.io.schema.dns_zone.CertificationAuthorityAuthorization", + "properties": { + "flags": { + "type": "integer", + "description": " This flag should be an integer between 0 and 255.\n\nExample: - \"0\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 255\n", + "title": "Certification authority authorization flags", + "format": "int64", + "x-displayname": "Flags", + "x-ves-example": "0", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "255" + } + }, + "tag": { + "type": "string", + "description": "\n\nExample: - \"issue\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"issue\\\", \\\"issuewild\\\", \\\"iodef\\\"]\n", + "title": "Certification authority authorization tag", + "x-displayname": "Tag", + "x-ves-example": "issue", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"issue\\\", \\\"issuewild\\\", \\\"iodef\\\"]" + } + }, + "value": { + "type": "string", + "description": "\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.min_len: 1\n", + "title": "Certification authority authorization value", + "minLength": 1, + "maxLength": 1024, + "x-displayname": "Value", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "dns_zoneDLVResourceRecord": { + "type": "object", + "description": "x-displayName: \"DNS DLV Record\"\nDNS DLV Record", + "title": "DLVResourceRecord", + "properties": { + "name": { + "type": "string", + "description": "x-displayName: \"Record Name (Excluding Domain name)\"\nx-example: \"www or mail or * or ww* or *ab\"\nDLV Record name, please provide only the specific subdomain or record name without the base domain.", + "title": "Record Name" + }, + "values": { + "type": "array", + "description": "x-displayName: \"DLV Value\"\nx-example: \"values\"\nx-required\nIt uses the same format as the DS record.", + "title": "DLV Value", + "items": { + "$ref": "#/definitions/dns_zoneDSRecordValue" + } + } + } + }, + "dns_zoneDNSAAAAResourceRecord": { + "type": "object", + "description": "RecordSet for AAAA Records", + "title": "DNSAAAAResourceRecord", + "x-displayname": "DNSAAAAResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSAAAAResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " AAAA Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": " A valid IPv6 address, for example: 2001:0db8:85a3:0000:0000:8a2e:0370:7334\n\nExample: - \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv6: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IPv6 addresses", + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Addresses", + "x-ves-example": "2001:0db8:85a3:0000:0000:8a2e:0370:7334", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.ipv6": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "dns_zoneDNSAFSDBRecord": { + "type": "object", + "description": "DNS AFSDB Record", + "title": "DNSAFSDBRecord", + "x-displayname": "DNS AFSDB Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSAFSDBRecord", + "properties": { + "name": { + "type": "string", + "description": " AFSDB Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"values\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "AFSDB Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneAFSDBRecordValue" + }, + "x-displayname": "AFSDB Value", + "x-ves-example": "values", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneDNSAResourceRecord": { + "type": "object", + "description": "A Records", + "title": "DNSAResourceRecord", + "x-displayname": "DNSAResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSAResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " A Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": " A valid IPv4 address, for example: 1.1.1.1\n\nExample: - \"1.1.1.1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IPv4 addresses", + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Addresses", + "x-ves-example": "1.1.1.1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.ipv4": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "dns_zoneDNSAliasResourceRecord": { + "type": "object", + "title": "DNSAliasResourceRecord", + "x-displayname": "DNSAliasResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSAliasResourceRecord", + "properties": { + "value": { + "type": "string", + "description": " A valid domain name, for example: example.com\n\nExample: - \"example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 255\n", + "title": "Domain", + "maxLength": 255, + "x-displayname": "Domain", + "x-ves-example": "example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "255" + } + } + } + }, + "dns_zoneDNSCAAResourceRecord": { + "type": "object", + "title": "DNSCAAResourceRecord", + "x-displayname": "DNSCAAResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSCAAResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " CAA Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": "\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 100\n", + "title": "CAA Record Value", + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneCertificationAuthorityAuthorization" + }, + "x-displayname": "CAA Record Value", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "100" + } + } + } + }, + "dns_zoneDNSCDSRecord": { + "type": "object", + "description": "DNS CDS Record", + "title": "DNSCDSRecord", + "x-displayname": "DNS CDS Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSCDSRecord", + "properties": { + "name": { + "type": "string", + "description": " CDS Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "DS Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneDSRecordValue" + }, + "x-displayname": "DS Value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneDNSCNAMEResourceRecord": { + "type": "object", + "title": "DNSCNAMEResourceRecord", + "x-displayname": "DNSCNAMEResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSCNAMEResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " CName Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.pattern: ^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "value": { + "type": "string", + "description": "\n\nExample: - \"example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 255\n", + "title": "Domain", + "maxLength": 255, + "x-displayname": "Domain", + "x-ves-example": "example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "255" + } + } + } + }, + "dns_zoneDNSDSRecord": { + "type": "object", + "description": "DNS DS Record", + "title": "DNSDSRecord", + "x-displayname": "DNS DS Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSDSRecord", + "properties": { + "name": { + "type": "string", + "description": " DS Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "DS Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneDSRecordValue" + }, + "x-displayname": "DS Value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneDNSEUI48ResourceRecord": { + "type": "object", + "description": "DNS EUI48 Record", + "title": "DNSEUI48ResourceRecord", + "x-displayname": "DNS EUI48 Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSEUI48ResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " EUI48 Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "value": { + "type": "string", + "description": " A valid eui48 identifier, for example: 01-23-45-67-89-ab\n\nExample: - \"01-23-45-67-89-ab\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 17\n ves.io.schema.rules.string.min_len: 17\n ves.io.schema.rules.string.pattern: ^([0-9A-Fa-f]{2}-){5}([0-9A-Fa-f]{2})$\n", + "title": "EUI48 Identifier", + "minLength": 17, + "maxLength": 17, + "x-displayname": "EUI48 Identifier", + "x-ves-example": "01-23-45-67-89-ab", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "17", + "ves.io.schema.rules.string.min_len": "17", + "ves.io.schema.rules.string.pattern": "^([0-9A-Fa-f]{2}-){5}([0-9A-Fa-f]{2})$" + } + } + } + }, + "dns_zoneDNSEUI64ResourceRecord": { + "type": "object", + "description": "DNS EUI64 Record", + "title": "DNSEUI64ResourceRecord", + "x-displayname": "DNS EUI64 Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSEUI64ResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " EUI64 Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "value": { + "type": "string", + "description": " A valid EUI64 identifier, for example: 01-23-45-67-89-ab-cd-ef\n\nExample: - \"01-23-45-67-89-ab-cd-ef\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 23\n ves.io.schema.rules.string.min_len: 23\n ves.io.schema.rules.string.pattern: ^([0-9A-Fa-f]{2}-){7}([0-9A-Fa-f]{2})$\n", + "title": "EUI64 Identifier", + "minLength": 23, + "maxLength": 23, + "x-displayname": "EUI64 Identifier", + "x-ves-example": "01-23-45-67-89-ab-cd-ef", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "23", + "ves.io.schema.rules.string.min_len": "23", + "ves.io.schema.rules.string.pattern": "^([0-9A-Fa-f]{2}-){7}([0-9A-Fa-f]{2})$" + } + } + } + }, + "dns_zoneDNSLBResourceRecord": { + "type": "object", + "description": "DNS Load Balancer Record", + "title": "DNSLBResourcerecord", + "x-displayname": "DNS Load Balancer Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSLBResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " Load Balancer record name (except for SRV DNS Load balancer record) should be a simple record name and not a subdomain of a subdomain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 255\n", + "title": "Record Name", + "maxLength": 255, + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "255" + } + }, + "value": { + "title": "DNS LB Record", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "DNS Load Balancer Record" + } + } + }, + "dns_zoneDNSLOCResourceRecord": { + "type": "object", + "description": "DNS LOC Record", + "title": "DNSLOCResourceRecord", + "x-displayname": "DNS LOC Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSLOCResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " LOC Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"32 7 19 S 116 2 25 E 10m\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "LOC Values", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneLOCValue" + }, + "x-displayname": "LOC Value", + "x-ves-example": "32 7 19 S 116 2 25 E 10m", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneDNSMXResourceRecord": { + "type": "object", + "title": "DNSMXResourceRecord", + "x-displayname": "DNSMXResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSMXResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " MX Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n", + "title": "Value", + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneMailExchanger" + }, + "x-displayname": "MX Record Value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100" + } + } + } + }, + "dns_zoneDNSNAPTRResourceRecord": { + "type": "object", + "description": "DNS NAPTR Record", + "title": "DNSNAPTRResourceRecord", + "x-displayname": "DNS NAPTR Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSNAPTRResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " NAPTR Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"values\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "NAPTR Values", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneNAPTRValue" + }, + "x-displayname": "NAPTR Value", + "x-ves-example": "values", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneDNSNSResourceRecord": { + "type": "object", + "title": "DNSNSResourceRecord", + "x-displayname": "DNSNSResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSNSResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " NS Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.we\" or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.we\" or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"ns1.example.com\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.hostname: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Name-servers", + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string" + }, + "x-displayname": "Name servers", + "x-ves-example": "ns1.example.com", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.hostname": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "dns_zoneDNSPTRResourceRecord": { + "type": "object", + "title": "DNSPTRResourceRecord", + "x-displayname": "DNSPTRResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSPTRResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " PTR Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"my.example.com\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.hostname: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Domain names", + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string" + }, + "x-displayname": "Domain name", + "x-ves-example": "my.example.com", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.hostname": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "dns_zoneDNSSRVResourceRecord": { + "type": "object", + "title": "DNSSRVResourceRecord", + "x-displayname": "DNSSRVResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSSRVResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " SRV Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.pattern: ^([*]|[a-zA-Z0-9-_]{1,63})([.][a-zA-Z0-9-_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "^([*]|[a-zA-Z0-9-_]{1,63})([.][a-zA-Z0-9-_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "SRV Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneSRVService" + }, + "x-displayname": "SRV Value", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneDNSTXTResourceRecord": { + "type": "object", + "title": "DNSTXTResourceRecord", + "x-displayname": "DNSTXTResourceRecord", + "x-ves-proto-message": "ves.io.schema.dns_zone.DNSTXTResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " TXT Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or corp.web or *.b\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or corp.web or *.b", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^$|^([*]|[a-zA-Z0-9-/_]{1,63})([.][a-zA-Z0-9-/_]{1,63})*$" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.max_len: 512\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Text", + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string", + "maxLength": 512 + }, + "x-displayname": "Text", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "512", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "dns_zoneDSKeyAlgorithm": { + "type": "string", + "description": "DS key value must be compatible with the specified algorithm.\n\n - UNSPECIFIED: UNSPECIFIED\n\n - RSASHA1: RSASHA1\n\n - RSASHA1NSEC3SHA1: RSASHA1-NSEC3-SHA1\n\n - RSASHA256: RSASHA256\n\n - RSASHA512: RSASHA512\n\n - ECDSAP256SHA256: ECDSAP256SHA256\n\n - ECDSAP384SHA384: ECDSAP384SHA384\n\n - ED25519: ED25519\n\n - ED448: ED448\n", + "title": "DS Key Algorithm", + "enum": [ + "UNSPECIFIED", + "RSASHA1", + "RSASHA1NSEC3SHA1", + "RSASHA256", + "RSASHA512", + "ECDSAP256SHA256", + "ECDSAP384SHA384", + "ED25519", + "ED448" + ], + "default": "UNSPECIFIED", + "x-displayname": "DS Key algorithm", + "x-ves-proto-enum": "ves.io.schema.dns_zone.DSKeyAlgorithm" + }, + "dns_zoneDSRecordValue": { + "type": "object", + "title": "DSRecordValue", + "x-displayname": "DSRecordValue", + "x-ves-oneof-field-digest_choice": "[\"sha1_digest\",\"sha256_digest\",\"sha384_digest\"]", + "x-ves-proto-message": "ves.io.schema.dns_zone.DSRecordValue", + "properties": { + "ds_key_algorithm": { + "description": " DS key value must be compatible with the specified algorithm.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.enum.not_in: 0\n ves.io.schema.rules.message.required: true\n", + "title": "DS Key Algorithm", + "$ref": "#/definitions/dns_zoneDSKeyAlgorithm", + "x-displayname": "DS Key algorithm", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.not_in": "0", + "ves.io.schema.rules.message.required": "true" + } + }, + "key_tag": { + "type": "integer", + "description": " A short numeric value which can help quickly identify the referenced DNSKEY-record.\n\nExample: - \"15228\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Key Tag", + "format": "int64", + "x-displayname": "Key Tag", + "x-ves-example": "15228", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "sha1_digest": { + "description": "Exclusive with [sha256_digest sha384_digest]\n", + "title": "SHA1 Digest", + "$ref": "#/definitions/dns_zoneSHA1Digest", + "x-displayname": "SHA1 Digest" + }, + "sha256_digest": { + "description": "Exclusive with [sha1_digest sha384_digest]\n", + "title": "SHA256 Digest", + "$ref": "#/definitions/dns_zoneSHA256Digest", + "x-displayname": "SHA256 Digest" + }, + "sha384_digest": { + "description": "Exclusive with [sha1_digest sha256_digest]\n", + "title": "SHA384 Digest", + "$ref": "#/definitions/dns_zoneSHA384Digest", + "x-displayname": "SHA384 Digest" + } + } + }, + "dns_zoneLOCValue": { + "type": "object", + "title": "LOCValue", + "x-displayname": "LOCValue", + "x-ves-proto-message": "ves.io.schema.dns_zone.LOCValue", + "properties": { + "altitude": { + "type": "number", + "description": " Altitude in meters\n\nExample: - \"20.3\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.float.gte: -100000.00\n ves.io.schema.rules.float.lte: 42849672.95\n ves.io.schema.rules.message.required: true\n", + "title": "Altitude", + "format": "float", + "x-displayname": "Altitude", + "x-ves-example": "20.3", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "-100000.00", + "ves.io.schema.rules.float.lte": "42849672.95", + "ves.io.schema.rules.message.required": "true" + } + }, + "horizontal_precision": { + "type": "number", + "description": " Horizontal Precision in meters\n\nExample: - \"30.00m\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: 0.0\n ves.io.schema.rules.float.lte: 90000000.00\n", + "title": "Horizontal Precision", + "format": "float", + "x-displayname": "Horizontal Precision", + "x-ves-example": "30.00m", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "0.0", + "ves.io.schema.rules.float.lte": "90000000.00" + } + }, + "latitude_degree": { + "type": "integer", + "description": " Latitude degree, an integer between 0 and 90, including 0 and 90\n\nExample: - \"51\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.int32.gte: 0\n ves.io.schema.rules.int32.lte: 90\n ves.io.schema.rules.message.required: true\n", + "title": "Latitude degree", + "format": "int32", + "x-displayname": "Latitude degree", + "x-ves-example": "51", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.int32.gte": "0", + "ves.io.schema.rules.int32.lte": "90", + "ves.io.schema.rules.message.required": "true" + } + }, + "latitude_hemisphere": { + "description": " Latitude hemisphere, N or S\n\nExample: - \"N\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Latitude hemisphere", + "$ref": "#/definitions/dns_zoneLatitudeHemisphere", + "x-displayname": "Latitude hemisphere", + "x-ves-example": "N", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "latitude_minute": { + "type": "integer", + "description": " Latitude minute, an integer between 0 and 59, including 0 and 59\n\nExample: - \"30\"-\n\nValidation Rules:\n ves.io.schema.rules.int32.gte: 0\n ves.io.schema.rules.int32.lte: 59\n", + "title": "Latitude minute", + "format": "int32", + "x-displayname": "Latitude minute", + "x-ves-example": "30", + "x-ves-validation-rules": { + "ves.io.schema.rules.int32.gte": "0", + "ves.io.schema.rules.int32.lte": "59" + } + }, + "latitude_second": { + "type": "number", + "description": " Latitude second, an decimal between 0 and 59.999, including 0 and 59.999\n\nExample: - \"12.000\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: 0.0\n ves.io.schema.rules.float.lte: 59.999\n", + "title": "Latitude second", + "format": "float", + "x-displayname": "Latitude second", + "x-ves-example": "12.000", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "0.0", + "ves.io.schema.rules.float.lte": "59.999" + } + }, + "location_diameter": { + "type": "number", + "description": " Diameter of a sphere enclosing the described entity, in meters\n\nExample: - \"30.00m\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: 0.0\n ves.io.schema.rules.float.lte: 90000000.00\n", + "title": "Size", + "format": "float", + "x-displayname": "Size", + "x-ves-example": "30.00m", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "0.0", + "ves.io.schema.rules.float.lte": "90000000.00" + } + }, + "longitude_degree": { + "type": "integer", + "description": " Longitude degree, an integer between 0 and 180, including 0 and 180\n\nExample: - \"51\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.int32.gte: 0\n ves.io.schema.rules.int32.lte: 180\n ves.io.schema.rules.message.required: true\n", + "title": "Longitude degree", + "format": "int32", + "x-displayname": "Longitude degree", + "x-ves-example": "51", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.int32.gte": "0", + "ves.io.schema.rules.int32.lte": "180", + "ves.io.schema.rules.message.required": "true" + } + }, + "longitude_hemisphere": { + "description": " Longitude hemisphere, E or W\n\nExample: - \"E\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Longitude hemisphere", + "$ref": "#/definitions/dns_zoneLongitudeHemisphere", + "x-displayname": "Longitude hemisphere", + "x-ves-example": "E", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "longitude_minute": { + "type": "integer", + "description": " Longitude minute, an integer between 0 and 59, including 0 and 59\n\nExample: - \"30\"-\n\nValidation Rules:\n ves.io.schema.rules.int32.gte: 0\n ves.io.schema.rules.int32.lte: 59\n", + "title": "Longitude minute", + "format": "int32", + "x-displayname": "Longitude minute", + "x-ves-example": "30", + "x-ves-validation-rules": { + "ves.io.schema.rules.int32.gte": "0", + "ves.io.schema.rules.int32.lte": "59" + } + }, + "longitude_second": { + "type": "number", + "description": " Longitude second, an decimal between 0 and 59.999, including 0 and 59.999\n\nExample: - \"12.000\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: 0.0\n ves.io.schema.rules.float.lte: 59.999\n", + "title": "Longitude second", + "format": "float", + "x-displayname": "Longitude second", + "x-ves-example": "12.000", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "0.0", + "ves.io.schema.rules.float.lte": "59.999" + } + }, + "vertical_precision": { + "type": "number", + "description": " Vertical Precision in meters\n\nExample: - \"10.00m\"-\n\nValidation Rules:\n ves.io.schema.rules.float.gte: 0.0\n ves.io.schema.rules.float.lte: 90000000.00\n", + "title": "Vertical Precision", + "format": "float", + "x-displayname": "Vertical Precision", + "x-ves-example": "10.00m", + "x-ves-validation-rules": { + "ves.io.schema.rules.float.gte": "0.0", + "ves.io.schema.rules.float.lte": "90000000.00" + } + } + } + }, + "dns_zoneLatitudeHemisphere": { + "type": "string", + "description": "Latitude hemisphere can only be N or S\n\n - N: North Hemisphere\n\n - S: South Hemisphere\n", + "title": "Latitude Hemisphere", + "enum": [ + "N", + "S" + ], + "default": "N", + "x-displayname": "Latitude hemisphere", + "x-ves-proto-enum": "ves.io.schema.dns_zone.LatitudeHemisphere" + }, + "dns_zoneLongitudeHemisphere": { + "type": "string", + "description": "Longitude hemisphere can only be E or W\n\n - E: East Hemisphere\n\n - W: West Hemisphere\n", + "title": "Longitude Hemisphere", + "enum": [ + "E", + "W" + ], + "default": "E", + "x-displayname": "Longitude hemisphere", + "x-ves-proto-enum": "ves.io.schema.dns_zone.LongitudeHemisphere" + }, + "dns_zoneMailExchanger": { + "type": "object", + "title": "MailExchanger", + "x-displayname": "MailExchanger", + "x-ves-proto-message": "ves.io.schema.dns_zone.MailExchanger", + "properties": { + "domain": { + "type": "string", + "description": " Mail exchanger domain name, please provide the full hostname, for example: mail.example.com\n\nExample: - \"mail.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n", + "title": "Domain", + "x-displayname": "Domain", + "x-ves-example": "mail.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true" + } + }, + "priority": { + "type": "integer", + "description": " Mail exchanger priority code\n\nExample: - \"10\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Priority", + "format": "int64", + "x-displayname": "Priority", + "x-ves-example": "10", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + } + } + }, + "dns_zoneNAPTRValue": { + "type": "object", + "title": "NAPTRValue", + "x-displayname": "NAPTRValue", + "x-ves-proto-message": "ves.io.schema.dns_zone.NAPTRValue", + "properties": { + "flags": { + "type": "string", + "description": " Flag to control aspects of the rewriting and interpretation of the fields in the record. At this time only four flags, S/A/U/P, are defined.\n\nExample: - \"\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 255\n ves.io.schema.rules.string.pattern: ^(S|s|A|a|U|u|P|p)$\n", + "title": "Flags", + "maxLength": 255, + "x-displayname": "Flags", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "255", + "ves.io.schema.rules.string.pattern": "^(S|s|A|a|U|u|P|p)$" + } + }, + "order": { + "type": "integer", + "description": " Order in which the NAPTR records must be processed. A lower number indicates a higher preference.\n\nExample: - \"10\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Order", + "format": "int64", + "x-displayname": "Order", + "x-ves-example": "10", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "preference": { + "type": "integer", + "description": " Preference when records have the same order. A lower number indicates a higher preference.\n\nExample: - \"10\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Preference", + "format": "int64", + "x-displayname": "Preference", + "x-ves-example": "10", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "regexp": { + "type": "string", + "description": " Regular expression to construct the next domain name to lookup.\n\nExample: - \"\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 255\n", + "title": "Regular Expression", + "maxLength": 255, + "x-displayname": "Regular Expression", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "255" + } + }, + "replacement": { + "type": "string", + "description": " The next NAME to query for NAPTR, SRV, or address records depending on the value of the flags field.\n\nExample: - \"\"-", + "title": "Replacement", + "x-displayname": "Replacement" + }, + "service": { + "type": "string", + "description": " Specifies the service(s) available down this rewrite path.\n\nExample: - \"\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 255\n ves.io.schema.rules.string.pattern: ^([A-Za-z][A-Za-z0-9]{0,31}(\\\\+[A-Za-z][A-Za-z0-9]{0,31})*$|^$)\n", + "title": "Protocol Resolution Service", + "maxLength": 255, + "x-displayname": "Protocol Resolution Service", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "255", + "ves.io.schema.rules.string.pattern": "^([A-Za-z][A-Za-z0-9]{0,31}(\\\\+[A-Za-z][A-Za-z0-9]{0,31})*$|^$)" + } + } + } + }, + "dns_zoneRRSet": { + "type": "object", + "title": "RRSet is a set of Resource Record Sets for specific type", + "x-displayname": "Resource Record Set", + "x-ves-oneof-field-type_record_set": "[\"a_record\",\"aaaa_record\",\"afsdb_record\",\"alias_record\",\"caa_record\",\"cds_record\",\"cert_record\",\"cname_record\",\"ds_record\",\"eui48_record\",\"eui64_record\",\"lb_record\",\"loc_record\",\"mx_record\",\"naptr_record\",\"ns_record\",\"ptr_record\",\"srv_record\",\"sshfp_record\",\"tlsa_record\",\"txt_record\"]", + "x-ves-proto-message": "ves.io.schema.dns_zone.RRSet", + "properties": { + "a_record": { + "description": "Exclusive with [aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "A Record", + "$ref": "#/definitions/dns_zoneDNSAResourceRecord", + "x-displayname": "A" + }, + "aaaa_record": { + "description": "Exclusive with [a_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "AAAA Record", + "$ref": "#/definitions/dns_zoneDNSAAAAResourceRecord", + "x-displayname": "AAAA" + }, + "afsdb_record": { + "description": "Exclusive with [a_record aaaa_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "AFSDB Record", + "$ref": "#/definitions/dns_zoneDNSAFSDBRecord", + "x-displayname": "AFSDB" + }, + "alias_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "ALIAS Record", + "$ref": "#/definitions/dns_zoneDNSAliasResourceRecord", + "x-displayname": "ALIAS" + }, + "caa_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "CAA Record", + "$ref": "#/definitions/dns_zoneDNSCAAResourceRecord", + "x-displayname": "CAA" + }, + "cds_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "CDS Record", + "$ref": "#/definitions/dns_zoneDNSCDSRecord", + "x-displayname": "CDS" + }, + "cert_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "CERT Record", + "$ref": "#/definitions/dns_zoneCERTResourceRecord", + "x-displayname": "CERT" + }, + "cname_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "CNAME Record", + "$ref": "#/definitions/dns_zoneDNSCNAMEResourceRecord", + "x-displayname": "CNAME" + }, + "description": { + "type": "string", + "description": "\n\nExample: - \"Comment\"-", + "title": "Comment", + "x-displayname": "Comment", + "x-ves-example": "Comment" + }, + "ds_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "DS Record", + "$ref": "#/definitions/dns_zoneDNSDSRecord", + "x-displayname": "DS" + }, + "eui48_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "EUI48 Record", + "$ref": "#/definitions/dns_zoneDNSEUI48ResourceRecord", + "x-displayname": "EUI48" + }, + "eui64_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "EUI64 Record", + "$ref": "#/definitions/dns_zoneDNSEUI64ResourceRecord", + "x-displayname": "EUI64" + }, + "lb_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "DNS LB Record", + "$ref": "#/definitions/dns_zoneDNSLBResourceRecord", + "x-displayname": "DNS Load Balancer" + }, + "loc_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "LOC Record", + "$ref": "#/definitions/dns_zoneDNSLOCResourceRecord", + "x-displayname": "LOC" + }, + "mx_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "MX Record", + "$ref": "#/definitions/dns_zoneDNSMXResourceRecord", + "x-displayname": "MX" + }, + "naptr_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record ns_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "NAPTR Record", + "$ref": "#/definitions/dns_zoneDNSNAPTRResourceRecord", + "x-displayname": "NAPTR" + }, + "ns_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ptr_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "NS Record", + "$ref": "#/definitions/dns_zoneDNSNSResourceRecord", + "x-displayname": "NS" + }, + "ptr_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record srv_record sshfp_record tlsa_record txt_record]\n", + "title": "PTR Record", + "$ref": "#/definitions/dns_zoneDNSPTRResourceRecord", + "x-displayname": "PTR" + }, + "srv_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record sshfp_record tlsa_record txt_record]\n", + "title": "SRV Record", + "$ref": "#/definitions/dns_zoneDNSSRVResourceRecord", + "x-displayname": "SRV" + }, + "sshfp_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record tlsa_record txt_record]\n", + "title": "SSHFP Record", + "$ref": "#/definitions/dns_zoneSSHFPResourceRecord", + "x-displayname": "SSHFP" + }, + "tlsa_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record txt_record]\n", + "title": "TLSA Record", + "$ref": "#/definitions/dns_zoneTLSAResourceRecord", + "x-displayname": "TLSA" + }, + "ttl": { + "type": "integer", + "description": "\n\nExample: - \"3600\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 60\n ves.io.schema.rules.uint32.lte: 2147483647\n", + "title": "TTL", + "format": "int64", + "x-displayname": "Time to live", + "x-ves-example": "3600", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "60", + "ves.io.schema.rules.uint32.lte": "2147483647" + } + }, + "txt_record": { + "description": "Exclusive with [a_record aaaa_record afsdb_record alias_record caa_record cds_record cert_record cname_record ds_record eui48_record eui64_record lb_record loc_record mx_record naptr_record ns_record ptr_record srv_record sshfp_record tlsa_record]\n", + "title": "TXT Record", + "$ref": "#/definitions/dns_zoneDNSTXTResourceRecord", + "x-displayname": "TXT" + } + } + }, + "dns_zoneSHA1Digest": { + "type": "object", + "title": "SHA1 Digest", + "x-displayname": "SHA1 Digest", + "x-ves-proto-message": "ves.io.schema.dns_zone.SHA1Digest", + "properties": { + "digest": { + "type": "string", + "description": " The 'digest' is the DS key and the actual contents of the DS record. \n\nExample: - \"addf120b430021c36c232c99ef8d926aea2acd6b\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 40\n ves.io.schema.rules.string.min_len: 40\n", + "title": "Digest", + "minLength": 40, + "maxLength": 40, + "x-displayname": "Digest", + "x-ves-example": "addf120b430021c36c232c99ef8d926aea2acd6b", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "40", + "ves.io.schema.rules.string.min_len": "40" + } + } + } + }, + "dns_zoneSHA1Fingerprint": { + "type": "object", + "title": "SHA1 Fingerprint", + "x-displayname": "SHA1 Fingerprint", + "x-ves-proto-message": "ves.io.schema.dns_zone.SHA1Fingerprint", + "properties": { + "fingerprint": { + "type": "string", + "description": " The 'fingerprint' is the DS key and the actual contents of the DS record. \n\nExample: - \"addf120b430021c36c232c99ef8d926aea2acd6b\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 40\n ves.io.schema.rules.string.min_len: 40\n", + "title": "Fingerprint", + "minLength": 40, + "maxLength": 40, + "x-displayname": "Fingerprint", + "x-ves-example": "addf120b430021c36c232c99ef8d926aea2acd6b", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "40", + "ves.io.schema.rules.string.min_len": "40" + } + } + } + }, + "dns_zoneSHA256Digest": { + "type": "object", + "title": "SHA256 Digest", + "x-displayname": "SHA256 Digest", + "x-ves-proto-message": "ves.io.schema.dns_zone.SHA256Digest", + "properties": { + "digest": { + "type": "string", + "description": " The 'digest' is the DS key and the actual contents of the DS record. \n\nExample: - \"ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n ves.io.schema.rules.string.min_len: 64\n", + "title": "Digest", + "minLength": 64, + "maxLength": 64, + "x-displayname": "Digest", + "x-ves-example": "ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.min_len": "64" + } + } + } + }, + "dns_zoneSHA256Fingerprint": { + "type": "object", + "title": "SHA256 Fingerprint", + "x-displayname": "SHA256 Fingerprint", + "x-ves-proto-message": "ves.io.schema.dns_zone.SHA256Fingerprint", + "properties": { + "fingerprint": { + "type": "string", + "description": " The 'fingerprint' is the DS key and the actual contents of the DS record. \n\nExample: - \"ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n ves.io.schema.rules.string.min_len: 64\n", + "title": "Fingerprint", + "minLength": 64, + "maxLength": 64, + "x-displayname": "Fingerprint", + "x-ves-example": "ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.min_len": "64" + } + } + } + }, + "dns_zoneSHA384Digest": { + "type": "object", + "title": "SHA384 Digest", + "x-displayname": "SHA384 Digest", + "x-ves-proto-message": "ves.io.schema.dns_zone.SHA384Digest", + "properties": { + "digest": { + "type": "string", + "description": " The 'digest' is the DS key and the actual contents of the DS record. \n\nExample: - \"b4a9b28d142d91968ca232b95dfca771ee66f99924148b85026dfa686f6288d0edbfa71c98a798fda71e130f48e8f0f8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 96\n ves.io.schema.rules.string.min_len: 96\n", + "title": "Digest", + "minLength": 96, + "maxLength": 96, + "x-displayname": "Digest", + "x-ves-example": "b4a9b28d142d91968ca232b95dfca771ee66f99924148b85026dfa686f6288d0edbfa71c98a798fda71e130f48e8f0f8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "96", + "ves.io.schema.rules.string.min_len": "96" + } + } + } + }, + "dns_zoneSRVService": { + "type": "object", + "title": "SRVService", + "x-displayname": "SRVService", + "x-ves-proto-message": "ves.io.schema.dns_zone.SRVService", + "properties": { + "port": { + "type": "integer", + "description": " Port on which the service can be found\n\nExample: - \"10\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Port", + "format": "int64", + "x-displayname": "Port", + "x-ves-example": "10", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "priority": { + "type": "integer", + "description": " Priority of the target. A lower number indicates a higher preference.\n\nExample: - \"10\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Priority", + "format": "int64", + "x-displayname": "Priority", + "x-ves-example": "10", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "target": { + "type": "string", + "description": " Hostname of the machine providing the service\n\nExample: - \"my.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[.]$|^([a-zA-Z0-9]{1}[a-zA-Z0-9_-]{0,62})(\\\\.[a-zA-Z0-9_]{1}[a-zA-Z0-9_-]{0,62})*?(\\\\.[a-zA-Z]{1}[a-zA-Z0-9]{0,62})\\\\.?$\n", + "title": "Target", + "x-displayname": "Target", + "x-ves-example": "my.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^[.]$|^([a-zA-Z0-9]{1}[a-zA-Z0-9_-]{0,62})(\\\\.[a-zA-Z0-9_]{1}[a-zA-Z0-9_-]{0,62})*?(\\\\.[a-zA-Z]{1}[a-zA-Z0-9]{0,62})\\\\.?$" + } + }, + "weight": { + "type": "integer", + "description": " Weight of the target. A higher number indicates a higher preference.\n\nExample: - \"10\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "Weight", + "format": "int64", + "x-displayname": "Weight", + "x-ves-example": "10", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "65535" + } + } + } + }, + "dns_zoneSSHFPAlgorithm": { + "type": "string", + "description": "SSHFP algorithm value must be compatible with the specified algorithm.\n\n - UNSPECIFIEDALGORITHM: UNSPECIFIEDALGORITHM\n\n - RSA: RSA\n\n - DSA: DSA\n\n - ECDSA: ECDSA\n\n - Ed25519: Ed25519\n\n - Ed448: Ed448\n", + "title": "SSHFP Algorithm", + "enum": [ + "UNSPECIFIEDALGORITHM", + "RSA", + "DSA", + "ECDSA", + "Ed25519", + "Ed448" + ], + "default": "UNSPECIFIEDALGORITHM", + "x-displayname": "SSHFP Algorithm", + "x-ves-proto-enum": "ves.io.schema.dns_zone.SSHFPAlgorithm" + }, + "dns_zoneSSHFPFingerprintType": { + "type": "string", + "description": "x-displayName: \"SSHFP Fingerprint Type\"\nSSHFP Fingerprint Type must be compatible with the specified values.\n\n - INVALIDFINGERPRINTTYPE: INVALIDFINGERPRINTTYPE\n\nx-displayName: \"Invalid Fingerprint Type\"\n - SHA1ALGORITHM: SHA1ALGORITHM\n\nx-displayName: \"SHA1\"\n - SHA256ALGORITHM: SHA256ALGORITHM\n\nx-displayName: \"SHA256\"", + "title": "SSHFP Fingerprint Type", + "enum": [ + "INVALIDFINGERPRINTTYPE", + "SHA1ALGORITHM", + "SHA256ALGORITHM" + ], + "default": "INVALIDFINGERPRINTTYPE" + }, + "dns_zoneSSHFPRecordValue": { + "type": "object", + "title": "SSHFPRecordValue", + "x-displayname": "SSHFPRecordValue", + "x-ves-oneof-field-fingerprint_type": "[\"sha1_fingerprint\",\"sha256_fingerprint\"]", + "x-ves-proto-message": "ves.io.schema.dns_zone.SSHFPRecordValue", + "properties": { + "algorithm": { + "description": " Algorithm of the public key.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.enum.not_in: 0\n ves.io.schema.rules.message.required: true\n", + "title": "SSHFP Algorithm", + "$ref": "#/definitions/dns_zoneSSHFPAlgorithm", + "x-displayname": "SSHFP Algorithm", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.not_in": "0", + "ves.io.schema.rules.message.required": "true" + } + }, + "sha1_fingerprint": { + "description": "Exclusive with [sha256_fingerprint]\n", + "title": "SHA1 Fingerprint", + "$ref": "#/definitions/dns_zoneSHA1Fingerprint", + "x-displayname": "SHA1 Fingerprint" + }, + "sha256_fingerprint": { + "description": "Exclusive with [sha1_fingerprint]\n", + "title": "SHA256 Digest", + "$ref": "#/definitions/dns_zoneSHA256Fingerprint", + "x-displayname": "SHA256 Fingerprint" + } + } + }, + "dns_zoneSSHFPResourceRecord": { + "type": "object", + "description": "DNS SSHFP Record", + "title": "SSHFPResourceRecord", + "x-displayname": "DNS SSHFP Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.SSHFPResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " SSHFP Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"values\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "SSHFP Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneSSHFPRecordValue" + }, + "x-displayname": "SSHFP Value", + "x-ves-example": "values", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "dns_zoneTLSARecordCSelector": { + "type": "string", + "description": "\n - FullCertificate: Full Certificate\n\n - UseSubjectPublicKey: Use Subject Public Key\n", + "title": "TLSA Record Selector", + "enum": [ + "FullCertificate", + "UseSubjectPublicKey" + ], + "default": "FullCertificate", + "x-displayname": "TLSA Record Selector", + "x-ves-proto-enum": "ves.io.schema.dns_zone.TLSARecordCSelector" + }, + "dns_zoneTLSARecordCertificateUsage": { + "type": "string", + "description": "\n - CertificateAuthorityConstraint: Certificate Authority Constraint\n\n - ServiceCertificateConstraint: Service Certificate Constraint\n\n - TrustAnchorAssertion: Trust Anchor Assertion\n\n - DomainIssuedCertificate: Domain Issued Certificate\n", + "title": "TLSA Record Certificate Usage", + "enum": [ + "CertificateAuthorityConstraint", + "ServiceCertificateConstraint", + "TrustAnchorAssertion", + "DomainIssuedCertificate" + ], + "default": "CertificateAuthorityConstraint", + "x-displayname": "TLSA Record Certificate Usage", + "x-ves-proto-enum": "ves.io.schema.dns_zone.TLSARecordCertificateUsage" + }, + "dns_zoneTLSARecordMatchingType": { + "type": "string", + "description": "\n - NoHash: No Hash\n\n - SHA256: SHA-256\n\n - SHA512: SHA-512\n", + "title": "TLSA Record Matching Type", + "enum": [ + "NoHash", + "SHA256", + "SHA512" + ], + "default": "NoHash", + "x-displayname": "TLSA Record Matching Type", + "x-ves-proto-enum": "ves.io.schema.dns_zone.TLSARecordMatchingType" + }, + "dns_zoneTLSARecordValue": { + "type": "object", + "title": "TLSARecordValue", + "x-displayname": "TLSARecordValue", + "x-ves-proto-message": "ves.io.schema.dns_zone.TLSARecordValue", + "properties": { + "certificate_association_data": { + "type": "string", + "description": " The actual data to be matched given the settings of the other fields.\n\nExample: - \"Certificate Association Data\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.hex: true\n ves.io.schema.rules.string.max_len: 4096\n ves.io.schema.rules.string.min_len: 1\n", + "title": "Certificate Association Data", + "minLength": 1, + "maxLength": 4096, + "x-displayname": "Certificate Association Data", + "x-ves-example": "Certificate Association Data", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.hex": "true", + "ves.io.schema.rules.string.max_len": "4096", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "certificate_usage": { + "description": " x-example: \n TLSA Record Certificate Usage.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Certificate Usage", + "$ref": "#/definitions/dns_zoneTLSARecordCertificateUsage", + "x-displayname": "Certificate Usage", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "matching_type": { + "description": " TLSA Record Matching Type.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Matching Type", + "$ref": "#/definitions/dns_zoneTLSARecordMatchingType", + "x-displayname": "Matching Type", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "selector": { + "description": " TLSA Record Selector.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Selector", + "$ref": "#/definitions/dns_zoneTLSARecordCSelector", + "x-displayname": "Selector", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "dns_zoneTLSAResourceRecord": { + "type": "object", + "description": "DNS TLSA Record", + "title": "TLSAResourceRecord", + "x-displayname": "DNS TLSA Record", + "x-ves-proto-message": "ves.io.schema.dns_zone.TLSAResourceRecord", + "properties": { + "name": { + "type": "string", + "description": " TLSA Record name, please provide only the specific subdomain or record name without the base domain.\n\nExample: - \"www or mail or * or ww* or *ab\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}\n", + "title": "Record Name", + "x-displayname": "Record Name (Excluding Domain name)", + "x-ves-example": "www or mail or * or ww* or *ab", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.pattern": "^([a-zA-Z0-9*?]|([a-zA-Z0-9?*]+-[a-zA-Z0-9*?]+)){0,253}" + } + }, + "values": { + "type": "array", + "description": "\nExample: - \"values\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "TLSA Value", + "minItems": 1, + "maxItems": 100, + "items": { + "$ref": "#/definitions/dns_zoneTLSARecordValue" + }, + "x-displayname": "TLSA Value", + "x-ves-example": "values", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "rrsetCreateRequest": { + "type": "object", + "title": "CreateRequest", + "x-displayname": "Create Request", + "x-ves-proto-message": "ves.io.schema.dns_zone.rrset.CreateRequest", + "properties": { + "dns_zone_name": { + "type": "string", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.pattern: ([0-9a-z]([.a-z0-9-]*[a-z0-9])?)\n", + "title": "dns_zone_name", + "x-displayname": "dns zone name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "([0-9a-z]([.a-z0-9-]*[a-z0-9])?)" + } + }, + "group_name": { + "type": "string", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.pattern: ([a-z]([-a-z0-9_]*[a-z0-9])?)\n", + "title": "group_name", + "minLength": 1, + "x-displayname": "group name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.pattern": "([a-z]([-a-z0-9_]*[a-z0-9])?)" + } + }, + "rrset": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "rrset", + "$ref": "#/definitions/dns_zoneRRSet", + "x-displayname": "rrset", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "rrsetReplaceRequest": { + "type": "object", + "title": "ReplaceRequest", + "x-displayname": "Replace Request", + "x-ves-proto-message": "ves.io.schema.dns_zone.rrset.ReplaceRequest", + "properties": { + "dns_zone_name": { + "type": "string", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.pattern: ([0-9a-z]([.a-z0-9-]*[a-z0-9])?)\n", + "title": "dns_zone_name", + "x-displayname": "dns zone name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "([0-9a-z]([.a-z0-9-]*[a-z0-9])?)" + } + }, + "group_name": { + "type": "string", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.pattern: ([a-z]([-a-z0-9_]*[a-z0-9])?)\n", + "title": "group_name", + "minLength": 1, + "x-displayname": "group name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.pattern": "([a-z]([-a-z0-9_]*[a-z0-9])?)" + } + }, + "record_name": { + "type": "string", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "record_name", + "x-displayname": "record name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "rrset": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "rrset", + "$ref": "#/definitions/dns_zoneRRSet", + "x-displayname": "rrset", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "type": { + "type": "string", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.in: [\\\"A\\\",\\\"AAAA\\\",\\\"ALIAS\\\",\\\"CAA\\\",\\\"CNAME\\\",\\\"MX\\\",\\\"NS\\\",\\\"PTR\\\",\\\"SRV\\\",\\\"TXT\\\",\\\"DNSLB\\\",\\\"NAPTR\\\",\\\"AFSDB\\\",\\\"EUI48\\\",\\\"EUI64\\\",\\\"DS\\\",\\\"CDS\\\",\\\"LOC\\\",\\\"SSHFP\\\",\\\"TLSA\\\",\\\"CERT\\\"]\n", + "title": "type", + "x-displayname": "type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.in": "[\\\"A\\\",\\\"AAAA\\\",\\\"ALIAS\\\",\\\"CAA\\\",\\\"CNAME\\\",\\\"MX\\\",\\\"NS\\\",\\\"PTR\\\",\\\"SRV\\\",\\\"TXT\\\",\\\"DNSLB\\\",\\\"NAPTR\\\",\\\"AFSDB\\\",\\\"EUI48\\\",\\\"EUI64\\\",\\\"DS\\\",\\\"CDS\\\",\\\"LOC\\\",\\\"SSHFP\\\",\\\"TLSA\\\",\\\"CERT\\\"]" + } + } + } + }, + "rrsetResponse": { + "type": "object", + "title": "Response", + "x-displayname": "Response", + "x-ves-proto-message": "ves.io.schema.dns_zone.rrset.Response", + "properties": { + "dns_zone_name": { + "type": "string", + "title": "dns_zone_name", + "x-displayname": "dns zone name" + }, + "group_name": { + "type": "string", + "title": "group_name", + "x-displayname": "group name" + }, + "namespace": { + "type": "string", + "title": "namespace", + "x-displayname": "namespace" + }, + "record_name": { + "type": "string", + "title": "record_name", + "x-displayname": "record name" + }, + "rrset": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "rrset", + "$ref": "#/definitions/dns_zoneRRSet", + "x-displayname": "rrset", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "type": { + "type": "string", + "title": "type", + "x-displayname": "type" + } + } + }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + } + }, + "x-displayname": "F5XC DNS Management Subscription API", + "x-ves-proto-file": "ves.io/schema/dns_zone/rrset/public_customapi.proto" +}` diff --git a/pbgo/extschema/schema/dns_zone/rrset/public_customapi.vesmsg.go b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.vesmsg.go new file mode 100644 index 000000000..d6d1f1a5c --- /dev/null +++ b/pbgo/extschema/schema/dns_zone/rrset/public_customapi.vesmsg.go @@ -0,0 +1,1094 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package rrset + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema_dns_zone "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CreateRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateRequest) DeepCopy() *CreateRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateRequestValidator().Validate(ctx, m, opts...) +} + +func (m *CreateRequest) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRrsetDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *CreateRequest) GetRrsetDRefInfo() ([]db.DRefInfo, error) { + if m.GetRrset() == nil { + return nil, nil + } + + drInfos, err := m.GetRrset().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRrset().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rrset." + dri.DRField + } + return drInfos, err + +} + +type ValidateCreateRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateRequest) DnsZoneNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for dns_zone_name") + } + + return validatorFn, nil +} + +func (v *ValidateCreateRequest) GroupNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for group_name") + } + + return validatorFn, nil +} + +func (v *ValidateCreateRequest) RrsetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for rrset") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_dns_zone.RRSetValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateCreateRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["dns_zone_name"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_zone_name")) + if err := fv(ctx, m.GetDnsZoneName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["group_name"]; exists { + + vOpts := append(opts, db.WithValidateField("group_name")) + if err := fv(ctx, m.GetGroupName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["rrset"]; exists { + + vOpts := append(opts, db.WithValidateField("rrset")) + if err := fv(ctx, m.GetRrset(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateRequestValidator = func() *ValidateCreateRequest { + v := &ValidateCreateRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDnsZoneName := v.DnsZoneNameValidationRuleHandler + rulesDnsZoneName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "([0-9a-z]([.a-z0-9-]*[a-z0-9])?)", + } + vFn, err = vrhDnsZoneName(rulesDnsZoneName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateRequest.dns_zone_name: %s", err) + panic(errMsg) + } + v.FldValidators["dns_zone_name"] = vFn + + vrhGroupName := v.GroupNameValidationRuleHandler + rulesGroupName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.pattern": "([a-z]([-a-z0-9_]*[a-z0-9])?)", + } + vFn, err = vrhGroupName(rulesGroupName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateRequest.group_name: %s", err) + panic(errMsg) + } + v.FldValidators["group_name"] = vFn + + vrhRrset := v.RrsetValidationRuleHandler + rulesRrset := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhRrset(rulesRrset) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateRequest.rrset: %s", err) + panic(errMsg) + } + v.FldValidators["rrset"] = vFn + + return v +}() + +func CreateRequestValidator() db.Validator { + return DefaultCreateRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DeleteRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DeleteRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DeleteRequest) DeepCopy() *DeleteRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DeleteRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DeleteRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DeleteRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DeleteRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateDeleteRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDeleteRequest) DnsZoneNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for dns_zone_name") + } + + return validatorFn, nil +} + +func (v *ValidateDeleteRequest) GroupNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for group_name") + } + + return validatorFn, nil +} + +func (v *ValidateDeleteRequest) RecordNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for record_name") + } + + return validatorFn, nil +} + +func (v *ValidateDeleteRequest) TypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for type") + } + + return validatorFn, nil +} + +func (v *ValidateDeleteRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DeleteRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DeleteRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["dns_zone_name"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_zone_name")) + if err := fv(ctx, m.GetDnsZoneName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["group_name"]; exists { + + vOpts := append(opts, db.WithValidateField("group_name")) + if err := fv(ctx, m.GetGroupName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["record_name"]; exists { + + vOpts := append(opts, db.WithValidateField("record_name")) + if err := fv(ctx, m.GetRecordName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDeleteRequestValidator = func() *ValidateDeleteRequest { + v := &ValidateDeleteRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDnsZoneName := v.DnsZoneNameValidationRuleHandler + rulesDnsZoneName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "([0-9a-z]([.a-z0-9-]*[a-z0-9])?)", + } + vFn, err = vrhDnsZoneName(rulesDnsZoneName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DeleteRequest.dns_zone_name: %s", err) + panic(errMsg) + } + v.FldValidators["dns_zone_name"] = vFn + + vrhGroupName := v.GroupNameValidationRuleHandler + rulesGroupName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.pattern": "([a-z]([-a-z0-9_]*[a-z0-9])?)", + } + vFn, err = vrhGroupName(rulesGroupName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DeleteRequest.group_name: %s", err) + panic(errMsg) + } + v.FldValidators["group_name"] = vFn + + vrhRecordName := v.RecordNameValidationRuleHandler + rulesRecordName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhRecordName(rulesRecordName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DeleteRequest.record_name: %s", err) + panic(errMsg) + } + v.FldValidators["record_name"] = vFn + + vrhType := v.TypeValidationRuleHandler + rulesType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.in": "[\"A\",\"AAAA\",\"ALIAS\",\"CAA\",\"CNAME\",\"MX\",\"NS\",\"PTR\",\"SRV\",\"TXT\",\"DNSLB\",\"NAPTR\",\"AFSDB\",\"EUI48\",\"EUI64\",\"DS\",\"CDS\",\"LOC\",\"SSHFP\",\"TLSA\",\"CERT\"]", + } + vFn, err = vrhType(rulesType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DeleteRequest.type: %s", err) + panic(errMsg) + } + v.FldValidators["type"] = vFn + + return v +}() + +func DeleteRequestValidator() db.Validator { + return DefaultDeleteRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetRequest) DeepCopy() *GetRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateGetRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetRequest) DnsZoneNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for dns_zone_name") + } + + return validatorFn, nil +} + +func (v *ValidateGetRequest) GroupNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for group_name") + } + + return validatorFn, nil +} + +func (v *ValidateGetRequest) RecordNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for record_name") + } + + return validatorFn, nil +} + +func (v *ValidateGetRequest) TypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for type") + } + + return validatorFn, nil +} + +func (v *ValidateGetRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["dns_zone_name"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_zone_name")) + if err := fv(ctx, m.GetDnsZoneName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["group_name"]; exists { + + vOpts := append(opts, db.WithValidateField("group_name")) + if err := fv(ctx, m.GetGroupName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["record_name"]; exists { + + vOpts := append(opts, db.WithValidateField("record_name")) + if err := fv(ctx, m.GetRecordName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetRequestValidator = func() *ValidateGetRequest { + v := &ValidateGetRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDnsZoneName := v.DnsZoneNameValidationRuleHandler + rulesDnsZoneName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "([0-9a-z]([.a-z0-9-]*[a-z0-9])?)", + } + vFn, err = vrhDnsZoneName(rulesDnsZoneName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetRequest.dns_zone_name: %s", err) + panic(errMsg) + } + v.FldValidators["dns_zone_name"] = vFn + + vrhGroupName := v.GroupNameValidationRuleHandler + rulesGroupName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.pattern": "([a-z]([-a-z0-9_]*[a-z0-9])?)", + } + vFn, err = vrhGroupName(rulesGroupName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetRequest.group_name: %s", err) + panic(errMsg) + } + v.FldValidators["group_name"] = vFn + + vrhRecordName := v.RecordNameValidationRuleHandler + rulesRecordName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhRecordName(rulesRecordName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetRequest.record_name: %s", err) + panic(errMsg) + } + v.FldValidators["record_name"] = vFn + + vrhType := v.TypeValidationRuleHandler + rulesType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.in": "[\"A\",\"AAAA\",\"ALIAS\",\"CAA\",\"CNAME\",\"MX\",\"NS\",\"PTR\",\"SRV\",\"TXT\",\"DNSLB\",\"NAPTR\",\"AFSDB\",\"EUI48\",\"EUI64\",\"DS\",\"CDS\",\"LOC\",\"SSHFP\",\"TLSA\",\"CERT\"]", + } + vFn, err = vrhType(rulesType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetRequest.type: %s", err) + panic(errMsg) + } + v.FldValidators["type"] = vFn + + return v +}() + +func GetRequestValidator() db.Validator { + return DefaultGetRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceRequest) DeepCopy() *ReplaceRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceRequestValidator().Validate(ctx, m, opts...) +} + +func (m *ReplaceRequest) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRrsetDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ReplaceRequest) GetRrsetDRefInfo() ([]db.DRefInfo, error) { + if m.GetRrset() == nil { + return nil, nil + } + + drInfos, err := m.GetRrset().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRrset().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rrset." + dri.DRField + } + return drInfos, err + +} + +type ValidateReplaceRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceRequest) DnsZoneNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for dns_zone_name") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceRequest) GroupNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for group_name") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceRequest) RecordNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for record_name") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceRequest) TypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for type") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceRequest) RrsetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for rrset") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_dns_zone.RRSetValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateReplaceRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["dns_zone_name"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_zone_name")) + if err := fv(ctx, m.GetDnsZoneName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["group_name"]; exists { + + vOpts := append(opts, db.WithValidateField("group_name")) + if err := fv(ctx, m.GetGroupName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["record_name"]; exists { + + vOpts := append(opts, db.WithValidateField("record_name")) + if err := fv(ctx, m.GetRecordName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["rrset"]; exists { + + vOpts := append(opts, db.WithValidateField("rrset")) + if err := fv(ctx, m.GetRrset(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceRequestValidator = func() *ValidateReplaceRequest { + v := &ValidateReplaceRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDnsZoneName := v.DnsZoneNameValidationRuleHandler + rulesDnsZoneName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.pattern": "([0-9a-z]([.a-z0-9-]*[a-z0-9])?)", + } + vFn, err = vrhDnsZoneName(rulesDnsZoneName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceRequest.dns_zone_name: %s", err) + panic(errMsg) + } + v.FldValidators["dns_zone_name"] = vFn + + vrhGroupName := v.GroupNameValidationRuleHandler + rulesGroupName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.pattern": "([a-z]([-a-z0-9_]*[a-z0-9])?)", + } + vFn, err = vrhGroupName(rulesGroupName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceRequest.group_name: %s", err) + panic(errMsg) + } + v.FldValidators["group_name"] = vFn + + vrhRecordName := v.RecordNameValidationRuleHandler + rulesRecordName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhRecordName(rulesRecordName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceRequest.record_name: %s", err) + panic(errMsg) + } + v.FldValidators["record_name"] = vFn + + vrhType := v.TypeValidationRuleHandler + rulesType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.in": "[\"A\",\"AAAA\",\"ALIAS\",\"CAA\",\"CNAME\",\"MX\",\"NS\",\"PTR\",\"SRV\",\"TXT\",\"DNSLB\",\"NAPTR\",\"AFSDB\",\"EUI48\",\"EUI64\",\"DS\",\"CDS\",\"LOC\",\"SSHFP\",\"TLSA\",\"CERT\"]", + } + vFn, err = vrhType(rulesType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceRequest.type: %s", err) + panic(errMsg) + } + v.FldValidators["type"] = vFn + + vrhRrset := v.RrsetValidationRuleHandler + rulesRrset := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhRrset(rulesRrset) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceRequest.rrset: %s", err) + panic(errMsg) + } + v.FldValidators["rrset"] = vFn + + return v +}() + +func ReplaceRequestValidator() db.Validator { + return DefaultReplaceRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Response) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Response) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Response) DeepCopy() *Response { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Response{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Response) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Response) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ResponseValidator().Validate(ctx, m, opts...) +} + +func (m *Response) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRrsetDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *Response) GetRrsetDRefInfo() ([]db.DRefInfo, error) { + if m.GetRrset() == nil { + return nil, nil + } + + drInfos, err := m.GetRrset().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRrset().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rrset." + dri.DRField + } + return drInfos, err + +} + +type ValidateResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateResponse) RrsetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for rrset") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_dns_zone.RRSetValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Response) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Response got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["dns_zone_name"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_zone_name")) + if err := fv(ctx, m.GetDnsZoneName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["group_name"]; exists { + + vOpts := append(opts, db.WithValidateField("group_name")) + if err := fv(ctx, m.GetGroupName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["record_name"]; exists { + + vOpts := append(opts, db.WithValidateField("record_name")) + if err := fv(ctx, m.GetRecordName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["rrset"]; exists { + + vOpts := append(opts, db.WithValidateField("rrset")) + if err := fv(ctx, m.GetRrset(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["type"]; exists { + + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultResponseValidator = func() *ValidateResponse { + v := &ValidateResponse{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRrset := v.RrsetValidationRuleHandler + rulesRrset := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhRrset(rulesRrset) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for Response.rrset: %s", err) + panic(errMsg) + } + v.FldValidators["rrset"] = vFn + + return v +}() + +func ResponseValidator() db.Validator { + return DefaultResponseValidator +} diff --git a/pbgo/extschema/schema/dos_mitigation/crudapi/api.vesapi.go b/pbgo/extschema/schema/dos_mitigation/crudapi/api.vesapi.go index 06bb0af5d..302ba61a5 100644 --- a/pbgo/extschema/schema/dos_mitigation/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/dos_mitigation/crudapi/api.vesapi.go @@ -3394,10 +3394,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/dos_mitigation/private_customapi.vesapi.go b/pbgo/extschema/schema/dos_mitigation/private_customapi.vesapi.go index 4d0cc3d4f..1895ef359 100644 --- a/pbgo/extschema/schema/dos_mitigation/private_customapi.vesapi.go +++ b/pbgo/extschema/schema/dos_mitigation/private_customapi.vesapi.go @@ -1350,10 +1350,14 @@ var PrivateDosMitigationAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/downstream_cos/crudapi/api.vesapi.go b/pbgo/extschema/schema/downstream_cos/crudapi/api.vesapi.go index b847cb78c..23abb7234 100644 --- a/pbgo/extschema/schema/downstream_cos/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/downstream_cos/crudapi/api.vesapi.go @@ -3150,10 +3150,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/endpoint/crudapi/api.vesapi.go b/pbgo/extschema/schema/endpoint/crudapi/api.vesapi.go index 90a1b80f4..ae83436df 100644 --- a/pbgo/extschema/schema/endpoint/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/endpoint/crudapi/api.vesapi.go @@ -3727,10 +3727,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/endpoint/object.pb.go b/pbgo/extschema/schema/endpoint/object.pb.go index 3a333add3..7a877f887 100644 --- a/pbgo/extschema/schema/endpoint/object.pb.go +++ b/pbgo/extschema/schema/endpoint/object.pb.go @@ -294,49 +294,50 @@ func init() { } var fileDescriptor_a12df28994d6bf3c = []byte{ - // 674 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xcf, 0x6b, 0x13, 0x4f, - 0x18, 0xc6, 0x33, 0x49, 0x9b, 0xb6, 0x93, 0xd2, 0x6f, 0x58, 0xbe, 0xc8, 0x5a, 0xed, 0x10, 0x52, - 0x94, 0x22, 0xd9, 0x5d, 0xed, 0x0f, 0xb4, 0x45, 0x2a, 0xb4, 0x85, 0x82, 0xa6, 0x14, 0x12, 0xf1, - 0xe0, 0x25, 0x4c, 0x36, 0x6f, 0xb6, 0xa3, 0xc9, 0xce, 0x32, 0x33, 0x59, 0x9b, 0x83, 0xe0, 0x4d, - 0xf0, 0xe4, 0xdf, 0xe0, 0x49, 0x04, 0xff, 0x07, 0xeb, 0xc9, 0x63, 0xe9, 0xa9, 0x47, 0xbb, 0xb9, - 0x78, 0x2c, 0x5e, 0xbc, 0x4a, 0x67, 0xbb, 0xa1, 0x09, 0x09, 0x48, 0x6f, 0x33, 0x79, 0x3f, 0xcf, - 0x93, 0x79, 0x9f, 0x79, 0x77, 0xf0, 0x62, 0x08, 0xd2, 0x66, 0xdc, 0x91, 0xee, 0x01, 0xb4, 0xa9, - 0x03, 0x7e, 0x23, 0xe0, 0xcc, 0x57, 0x0e, 0xaf, 0xbf, 0x02, 0x57, 0xd9, 0x81, 0xe0, 0x8a, 0x1b, - 0x37, 0x62, 0xc8, 0x8e, 0x21, 0x3b, 0x81, 0xe6, 0x2d, 0x8f, 0xa9, 0x83, 0x4e, 0xdd, 0x76, 0x79, - 0xdb, 0xf1, 0xb8, 0xc7, 0x1d, 0x8d, 0xd7, 0x3b, 0x4d, 0xbd, 0xd3, 0x1b, 0xbd, 0x8a, 0x6d, 0xe6, - 0x8b, 0x63, 0xfe, 0x4b, 0x75, 0x03, 0x90, 0x97, 0xcc, 0xad, 0x41, 0x86, 0x07, 0x8a, 0x71, 0x3f, - 0x29, 0xde, 0x1c, 0x2c, 0x5e, 0xd5, 0x0d, 0x79, 0x87, 0x20, 0xc1, 0x0f, 0x07, 0xe5, 0xc5, 0x3f, - 0x19, 0x9c, 0xdd, 0xd7, 0x7d, 0x19, 0xeb, 0x78, 0xba, 0x0d, 0x8a, 0x36, 0xa8, 0xa2, 0x26, 0x2a, - 0xa0, 0xa5, 0xdc, 0xf2, 0x82, 0x3d, 0xd8, 0x64, 0x0c, 0xee, 0x81, 0xa2, 0xcf, 0xbb, 0x01, 0x54, - 0xfa, 0xb8, 0x51, 0xc6, 0xff, 0xc9, 0xae, 0x54, 0xd0, 0xae, 0xf5, 0x1d, 0xd2, 0xda, 0x61, 0x71, - 0xc8, 0xa1, 0xaa, 0xa9, 0x21, 0x9f, 0xb9, 0x58, 0xbb, 0x97, 0xb8, 0xad, 0xe2, 0x09, 0x19, 0x80, - 0x6b, 0x66, 0xb4, 0x45, 0xc1, 0x1e, 0x9d, 0xb4, 0x5d, 0x0d, 0xc0, 0xd5, 0x7a, 0x4d, 0x6f, 0x7c, - 0x4d, 0x7f, 0x3f, 0x32, 0xd3, 0x79, 0x74, 0x72, 0x64, 0x7e, 0x4a, 0xe3, 0x87, 0x38, 0xb3, 0x0b, - 0xca, 0xb8, 0xdf, 0x5c, 0x3b, 0x74, 0x2d, 0x09, 0x6e, 0x47, 0x40, 0x1b, 0xe4, 0x81, 0x55, 0xa7, - 0x92, 0xb9, 0x56, 0x9b, 0xfb, 0x4c, 0x71, 0x51, 0x2a, 0x84, 0x20, 0x2d, 0xc6, 0xad, 0x40, 0xf0, - 0xc3, 0xae, 0x25, 0x80, 0x36, 0xf0, 0x3a, 0x9e, 0xaa, 0x40, 0xd0, 0xa2, 0x2e, 0x18, 0xf6, 0x68, - 0x71, 0x47, 0xc2, 0xb0, 0xf2, 0x8d, 0x60, 0x0a, 0xf0, 0x23, 0x9c, 0xdd, 0x16, 0x40, 0xd5, 0xb5, - 0x94, 0x3b, 0xd0, 0x82, 0x6b, 0x29, 0x27, 0xca, 0x4c, 0x5e, 0xa3, 0xd1, 0xe2, 0x33, 0x3c, 0x9d, - 0x24, 0x68, 0x3c, 0xc1, 0x53, 0x9e, 0x5b, 0xd3, 0xa1, 0xc7, 0xf7, 0x76, 0x77, 0x5c, 0xe8, 0xbb, - 0x2d, 0x5e, 0xa7, 0xad, 0x7e, 0xf4, 0x59, 0xcf, 0xbd, 0x58, 0x17, 0xdf, 0x67, 0xf0, 0x6c, 0x55, - 0x51, 0xd5, 0x91, 0xff, 0x3c, 0x4c, 0x31, 0x3e, 0x62, 0x98, 0x9e, 0xe2, 0x5c, 0xfc, 0xa5, 0xd5, - 0x04, 0x34, 0xa5, 0x99, 0x2e, 0x64, 0x96, 0x72, 0xcb, 0xb7, 0x47, 0x8e, 0x62, 0x05, 0x9a, 0x17, - 0xe2, 0xad, 0xdc, 0x97, 0xb7, 0xd3, 0xc9, 0x11, 0x2b, 0x98, 0x27, 0x35, 0x69, 0x3c, 0xc6, 0xd8, - 0xe5, 0x7e, 0x83, 0xe9, 0x91, 0x37, 0x27, 0x46, 0x5a, 0x6d, 0x27, 0x80, 0x3e, 0xc7, 0x15, 0xde, - 0xd8, 0xc1, 0x38, 0x04, 0x51, 0x93, 0xfa, 0xa4, 0x66, 0x46, 0xab, 0xef, 0x8c, 0x4b, 0xe6, 0x05, - 0x88, 0xb8, 0x25, 0x6d, 0x33, 0x13, 0x26, 0x5b, 0x63, 0x0f, 0xe7, 0xb8, 0x60, 0x1e, 0xf3, 0x6b, - 0x32, 0xa0, 0xbe, 0x39, 0x59, 0x40, 0x4b, 0x73, 0xcb, 0xa5, 0x71, 0x36, 0xfb, 0x1a, 0xad, 0x06, - 0xd4, 0xbf, 0xe2, 0x86, 0x79, 0xff, 0xd7, 0x8d, 0x85, 0x93, 0xcd, 0x3c, 0x9e, 0xc3, 0xb3, 0x49, - 0x5e, 0x76, 0x87, 0x35, 0x7e, 0x6f, 0x4e, 0x3d, 0x28, 0xad, 0x96, 0x56, 0x4a, 0x6b, 0xf7, 0x2c, - 0xfc, 0xff, 0x28, 0x0b, 0x63, 0x06, 0x4f, 0x96, 0xb9, 0x4b, 0x5b, 0xf9, 0x94, 0x81, 0x71, 0x36, - 0xbe, 0xc6, 0x3c, 0xda, 0xfa, 0x80, 0x8e, 0xcf, 0x48, 0xea, 0xf4, 0x8c, 0xa4, 0xce, 0xcf, 0x08, - 0x7a, 0x17, 0x11, 0xf4, 0x39, 0x22, 0xe8, 0x47, 0x44, 0xd0, 0x71, 0x44, 0xd0, 0x69, 0x44, 0xd0, - 0xcf, 0x88, 0xa0, 0x5f, 0x11, 0x49, 0x9d, 0x47, 0x04, 0x7d, 0xec, 0x91, 0xd4, 0xb7, 0x1e, 0x41, - 0xc7, 0x3d, 0x92, 0x3a, 0xed, 0x91, 0xd4, 0xcb, 0xb2, 0xc7, 0x83, 0xd7, 0x9e, 0x1d, 0xf2, 0x96, - 0x02, 0x21, 0xa8, 0xdd, 0x91, 0x8e, 0x5e, 0x34, 0xb9, 0x68, 0x5f, 0x0c, 0x5b, 0xc8, 0x1a, 0x20, - 0xac, 0xa4, 0xec, 0x04, 0x75, 0x8f, 0x3b, 0x70, 0xa8, 0x2e, 0x5f, 0xa4, 0xa1, 0x47, 0xaf, 0x9e, - 0xd5, 0x6f, 0xd2, 0xca, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3d, 0x5f, 0x8d, 0xb5, 0x81, 0x05, + // 690 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4f, 0x6b, 0x13, 0x41, + 0x14, 0xc0, 0x33, 0x4d, 0x9b, 0xb6, 0x93, 0x52, 0xc3, 0x22, 0xb2, 0x56, 0x3b, 0x84, 0x14, 0xa5, + 0x48, 0x76, 0x17, 0xfb, 0xe7, 0x60, 0x91, 0x0a, 0x6d, 0xa1, 0xa0, 0x09, 0x85, 0x44, 0xfc, 0xd3, + 0x4b, 0x98, 0xec, 0xbe, 0x6c, 0x57, 0x93, 0x9d, 0x65, 0x66, 0xb2, 0x36, 0x07, 0xc1, 0x9b, 0xe0, + 0xc9, 0xa3, 0x1f, 0x41, 0xfc, 0x14, 0x56, 0x2f, 0x9e, 0xa4, 0xf4, 0xd4, 0xa3, 0xdd, 0x5c, 0x3c, + 0x16, 0x3f, 0x81, 0x74, 0xb6, 0x1b, 0x9b, 0x90, 0x88, 0x07, 0x7b, 0x9b, 0xc9, 0xfb, 0xbd, 0x5f, + 0x66, 0xde, 0xbe, 0x79, 0x78, 0x21, 0x04, 0x61, 0x7a, 0xcc, 0x12, 0xf6, 0x1e, 0xb4, 0xa8, 0x05, + 0xbe, 0x13, 0x30, 0xcf, 0x97, 0x16, 0xab, 0xbf, 0x00, 0x5b, 0x9a, 0x01, 0x67, 0x92, 0x69, 0xd7, + 0x62, 0xc8, 0x8c, 0x21, 0x33, 0x81, 0xe6, 0x0c, 0xd7, 0x93, 0x7b, 0xed, 0xba, 0x69, 0xb3, 0x96, + 0xe5, 0x32, 0x97, 0x59, 0x0a, 0xaf, 0xb7, 0x1b, 0x6a, 0xa7, 0x36, 0x6a, 0x15, 0x6b, 0xe6, 0x0a, + 0x23, 0xfe, 0x4b, 0x76, 0x02, 0x10, 0xe7, 0xcc, 0x8d, 0x7e, 0x86, 0x05, 0xd2, 0x63, 0x7e, 0x12, + 0xbc, 0xde, 0x1f, 0xbc, 0x98, 0x37, 0xe0, 0x0e, 0x41, 0x80, 0x1f, 0xf6, 0xa7, 0x17, 0x3e, 0x4c, + 0xe0, 0xcc, 0x8e, 0xba, 0x97, 0x76, 0x0f, 0x4f, 0xb5, 0x40, 0x52, 0x87, 0x4a, 0xaa, 0xa3, 0x3c, + 0x5a, 0xcc, 0x2e, 0xcd, 0x9b, 0xfd, 0x97, 0x8c, 0xc1, 0x32, 0x48, 0xfa, 0xb8, 0x13, 0x40, 0xa5, + 0x87, 0x6b, 0x25, 0x7c, 0x45, 0x74, 0x84, 0x84, 0x56, 0xad, 0x67, 0x18, 0x53, 0x86, 0x85, 0x01, + 0x43, 0x55, 0x51, 0x03, 0x9e, 0xd9, 0x38, 0xb7, 0x9c, 0xd8, 0x56, 0xf0, 0xb8, 0x08, 0xc0, 0xd6, + 0xd3, 0x4a, 0x91, 0x37, 0x87, 0x57, 0xda, 0xac, 0x06, 0x60, 0xab, 0x7c, 0x45, 0xaf, 0x7d, 0x4f, + 0x7f, 0x39, 0xd0, 0xc7, 0x72, 0xe8, 0xe8, 0x40, 0xff, 0x9a, 0xc6, 0xcf, 0x71, 0x7a, 0x1b, 0xa4, + 0x56, 0x69, 0xac, 0xee, 0xdb, 0x86, 0x00, 0xbb, 0xcd, 0xa1, 0x05, 0x62, 0xcf, 0xa8, 0x53, 0xe1, + 0xd9, 0x46, 0x8b, 0xf9, 0x9e, 0x64, 0xbc, 0x98, 0x1f, 0x0c, 0x0b, 0x49, 0x7d, 0x87, 0x72, 0xe7, + 0x0f, 0x11, 0x82, 0x30, 0x3c, 0x66, 0x04, 0x9c, 0xed, 0x77, 0x0c, 0x0e, 0xd4, 0xc1, 0xcf, 0xf0, + 0x64, 0x05, 0x82, 0x26, 0xb5, 0x41, 0x2b, 0x0f, 0xd7, 0xb7, 0x05, 0xfc, 0xcd, 0x1d, 0x87, 0xfb, + 0xc4, 0xaf, 0xb8, 0x27, 0x01, 0x3f, 0xc5, 0x99, 0x4d, 0x0e, 0x54, 0x5e, 0x86, 0x78, 0x0b, 0x9a, + 0xf0, 0xff, 0xc5, 0xbb, 0x78, 0xbc, 0xe4, 0x89, 0x4b, 0xa9, 0x73, 0xe1, 0x11, 0x9e, 0x4a, 0x3e, + 0xb1, 0xf6, 0x00, 0x4f, 0xba, 0x76, 0x4d, 0x75, 0x45, 0xdc, 0x58, 0xb7, 0x47, 0x75, 0xc5, 0x76, + 0x93, 0xd5, 0x69, 0xb3, 0xd7, 0x1b, 0x19, 0xd7, 0x3e, 0x5b, 0x17, 0xde, 0xa6, 0xf1, 0x4c, 0x55, + 0x52, 0xd9, 0x16, 0xff, 0xdc, 0xed, 0x31, 0x3e, 0xa4, 0xdb, 0x1f, 0xe2, 0x6c, 0x3c, 0x0a, 0x6a, + 0x1c, 0x1a, 0x42, 0x1f, 0xcb, 0xa7, 0x17, 0xb3, 0x4b, 0x37, 0x87, 0xbe, 0x95, 0x0a, 0x34, 0xce, + 0x92, 0x37, 0xb2, 0x9f, 0x5e, 0x4f, 0x25, 0x47, 0xac, 0x60, 0x96, 0xc4, 0x84, 0x76, 0x1f, 0x63, + 0x9b, 0xf9, 0x8e, 0xa7, 0xde, 0xa4, 0x3e, 0x3e, 0x54, 0xb5, 0x99, 0x00, 0xea, 0x1c, 0x17, 0x78, + 0x6d, 0x0b, 0xe3, 0x10, 0x78, 0x4d, 0xa8, 0x93, 0xea, 0x69, 0x95, 0x7d, 0x6b, 0x54, 0x65, 0x9e, + 0x00, 0x8f, 0xaf, 0xa4, 0x34, 0xd3, 0x61, 0xb2, 0xd5, 0xca, 0x38, 0xcb, 0xb8, 0xe7, 0x7a, 0x7e, + 0x4d, 0x04, 0xd4, 0xd7, 0x27, 0xf2, 0x68, 0x71, 0x76, 0xa9, 0x38, 0x4a, 0xb3, 0xa3, 0xd0, 0x6a, + 0x40, 0xfd, 0x0b, 0x36, 0xcc, 0x7a, 0xbf, 0xae, 0xcd, 0x1f, 0xad, 0xe7, 0xf0, 0x2c, 0x9e, 0x49, + 0xea, 0x65, 0xb6, 0x3d, 0xe7, 0xd7, 0xfa, 0xe4, 0xdd, 0xe2, 0x4a, 0x71, 0xb9, 0xb8, 0x7a, 0xc7, + 0xc0, 0x57, 0x87, 0x29, 0xb4, 0x69, 0x3c, 0x51, 0x62, 0x36, 0x6d, 0xe6, 0x52, 0x1a, 0xc6, 0x99, + 0xf8, 0x33, 0xe6, 0xd0, 0xc6, 0x3b, 0x74, 0x78, 0x42, 0x52, 0xc7, 0x27, 0x24, 0x75, 0x7a, 0x42, + 0xd0, 0x9b, 0x88, 0xa0, 0x8f, 0x11, 0x41, 0xdf, 0x22, 0x82, 0x0e, 0x23, 0x82, 0x8e, 0x23, 0x82, + 0x7e, 0x44, 0x04, 0xfd, 0x8c, 0x48, 0xea, 0x34, 0x22, 0xe8, 0x7d, 0x97, 0xa4, 0x3e, 0x77, 0x09, + 0x3a, 0xec, 0x92, 0xd4, 0x71, 0x97, 0xa4, 0x76, 0x4b, 0x2e, 0x0b, 0x5e, 0xba, 0x66, 0xc8, 0x9a, + 0x12, 0x38, 0xa7, 0x66, 0x5b, 0x58, 0x6a, 0xd1, 0x60, 0xbc, 0x75, 0xd6, 0x6c, 0xa1, 0xe7, 0x00, + 0x37, 0x92, 0xb0, 0x15, 0xd4, 0x5d, 0x66, 0xc1, 0xbe, 0x3c, 0x1f, 0x99, 0x03, 0x53, 0xb9, 0x9e, + 0x51, 0x43, 0x73, 0xf9, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3a, 0x49, 0x1f, 0x43, 0x22, 0x06, 0x00, 0x00, } diff --git a/pbgo/extschema/schema/endpoint/public_crudapi.pb.go b/pbgo/extschema/schema/endpoint/public_crudapi.pb.go index a4363c178..8b9b9e70b 100644 --- a/pbgo/extschema/schema/endpoint/public_crudapi.pb.go +++ b/pbgo/extschema/schema/endpoint/public_crudapi.pb.go @@ -1058,108 +1058,108 @@ func init() { } var fileDescriptor_a97a69158b3b9bd2 = []byte{ - // 1601 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0x57, - 0x1e, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0xc7, 0xf0, 0x16, 0x82, 0xe3, 0x05, 0xcb, 0xeb, 0xb0, - 0x10, 0x65, 0xd7, 0x63, 0xc8, 0xb2, 0xab, 0x25, 0x5a, 0x65, 0xd7, 0x71, 0xec, 0x10, 0x30, 0x04, - 0x8d, 0x4d, 0xb4, 0x6a, 0x0f, 0xa3, 0xf1, 0xf8, 0xd9, 0x4c, 0x63, 0xcf, 0x4c, 0xe7, 0x3d, 0x3b, - 0x58, 0x55, 0x24, 0xc4, 0x1f, 0x50, 0x55, 0xaa, 0xd4, 0x43, 0xd5, 0x43, 0x2f, 0x95, 0x38, 0xf4, - 0x58, 0xa9, 0x55, 0x23, 0x55, 0x9c, 0x0a, 0xe2, 0x50, 0xa1, 0xf6, 0x42, 0xa5, 0x1e, 0x8a, 0xd3, - 0x03, 0x47, 0x54, 0xf5, 0x5a, 0xa9, 0x9a, 0xf7, 0x66, 0x8c, 0xed, 0x8c, 0x83, 0x13, 0x38, 0x79, - 0xde, 0xf7, 0xc7, 0xe7, 0x7d, 0x3f, 0xef, 0xfb, 0x63, 0x9e, 0x07, 0xfe, 0xad, 0x85, 0x89, 0xa8, - 0x19, 0x69, 0xa2, 0xde, 0xc6, 0x0d, 0x25, 0x8d, 0xf5, 0x8a, 0x69, 0x68, 0x3a, 0x4d, 0x9b, 0xcd, - 0x72, 0x5d, 0x53, 0x65, 0xd5, 0x6a, 0x56, 0x14, 0x53, 0x13, 0x4d, 0xcb, 0xa0, 0x06, 0x9a, 0xe1, - 0xc6, 0x22, 0x37, 0x16, 0x5d, 0xe3, 0x58, 0xaa, 0xa6, 0xd1, 0xdb, 0xcd, 0xb2, 0xa8, 0x1a, 0x8d, - 0x74, 0xcd, 0xa8, 0x19, 0x69, 0x66, 0x5e, 0x6e, 0x56, 0xd9, 0x8a, 0x2d, 0xd8, 0x13, 0x87, 0x89, - 0x9d, 0xae, 0x19, 0x46, 0xad, 0x8e, 0xd3, 0x8a, 0xa9, 0xa5, 0x15, 0x5d, 0x37, 0xa8, 0x42, 0x35, - 0x43, 0x27, 0x8e, 0xf6, 0xcf, 0x8e, 0xb6, 0x8b, 0x81, 0x1b, 0x26, 0x6d, 0x3b, 0xca, 0xb9, 0x21, - 0xe1, 0x1a, 0xe5, 0x77, 0xb0, 0x4a, 0x1d, 0xa3, 0xe4, 0x10, 0x23, 0xda, 0x36, 0xb1, 0xbb, 0x4b, - 0x6c, 0xc0, 0xc6, 0xb2, 0x0c, 0xab, 0x1b, 0x41, 0xbf, 0xce, 0x30, 0x7b, 0xc3, 0x9b, 0xed, 0x57, - 0xf6, 0x62, 0x0e, 0xec, 0xdb, 0xc2, 0x04, 0xeb, 0xad, 0x01, 0xf7, 0xc4, 0x80, 0x8d, 0x86, 0xb7, - 0xe5, 0x3e, 0x8b, 0xe4, 0x7d, 0x00, 0x27, 0xb3, 0x16, 0x56, 0x28, 0x96, 0xf0, 0xbb, 0x4d, 0x4c, - 0x28, 0xfa, 0x2f, 0x0c, 0x35, 0x30, 0x55, 0x2a, 0x0a, 0x55, 0xa2, 0x20, 0x01, 0xe6, 0x23, 0x8b, - 0x73, 0x62, 0x7f, 0x26, 0x36, 0x18, 0x7d, 0xee, 0x75, 0x1d, 0x53, 0xa5, 0xd4, 0x36, 0xb1, 0xd4, - 0x75, 0x42, 0xd7, 0x60, 0x80, 0x98, 0x58, 0x8d, 0xfa, 0x98, 0xf3, 0x39, 0xd1, 0x3b, 0x8d, 0x22, - 0xf7, 0x2f, 0x9a, 0x58, 0xb5, 0xfd, 0x57, 0xa6, 0x3f, 0xde, 0x99, 0xb0, 0xdd, 0xc4, 0x9a, 0x2a, - 0xdb, 0xbf, 0x12, 0x03, 0x59, 0x0a, 0x3f, 0x5e, 0x0e, 0xf2, 0xfd, 0x92, 0xbf, 0x01, 0x38, 0xe5, - 0x86, 0x4a, 0x4c, 0x43, 0x27, 0x18, 0xfd, 0x67, 0x5f, 0xac, 0x09, 0xcf, 0x58, 0xd7, 0x30, 0xf5, - 0x08, 0x74, 0x03, 0x4e, 0x93, 0x36, 0xa1, 0xb8, 0x21, 0x77, 0x41, 0xfc, 0x9e, 0x31, 0x17, 0x99, - 0xd5, 0x7e, 0xa8, 0x29, 0xee, 0x7e, 0xdd, 0x05, 0xbc, 0xd2, 0xc7, 0x7c, 0x6e, 0x18, 0xf3, 0x35, - 0x4c, 0x0f, 0x41, 0xfb, 0x27, 0x00, 0xa7, 0x24, 0x6c, 0xd6, 0x15, 0xb5, 0x9b, 0xa2, 0xff, 0xed, - 0xa3, 0x7d, 0xd6, 0x93, 0xb6, 0xe3, 0xe6, 0x41, 0xbd, 0xd0, 0x17, 0xe9, 0xf9, 0x61, 0x91, 0x3a, - 0x00, 0xaf, 0x88, 0x16, 0xa5, 0xa1, 0x60, 0x61, 0x62, 0x34, 0x2d, 0x15, 0xcb, 0x2d, 0x6c, 0x11, - 0xcd, 0xd0, 0xd9, 0x49, 0x86, 0x57, 0x02, 0xcf, 0x77, 0x01, 0x90, 0xa6, 0x5d, 0xed, 0x26, 0x57, - 0xf6, 0xd2, 0x3b, 0x0e, 0xa7, 0xbb, 0xec, 0x78, 0x56, 0x93, 0x1f, 0x01, 0x08, 0xd7, 0x30, 0x75, - 0xd9, 0x9e, 0x86, 0x61, 0x5d, 0x69, 0x60, 0x62, 0x2a, 0x2a, 0x66, 0x74, 0xc3, 0xd2, 0x4b, 0x01, - 0x42, 0x30, 0x60, 0x2f, 0x18, 0x93, 0xb0, 0xc4, 0x9e, 0xd1, 0x26, 0xb4, 0x77, 0x64, 0x60, 0x72, - 0xd5, 0xb0, 0x1a, 0x0a, 0x65, 0xe1, 0x4c, 0x2d, 0xa6, 0x0e, 0x48, 0x89, 0xbb, 0x7d, 0x9e, 0x39, - 0x64, 0x8d, 0x0a, 0x96, 0xa6, 0xac, 0x3e, 0x59, 0xf2, 0xf7, 0x71, 0x18, 0xe9, 0xb1, 0x44, 0x79, - 0x18, 0x51, 0x59, 0x41, 0xb2, 0x5d, 0x9c, 0xc3, 0xfc, 0xeb, 0xc1, 0x05, 0xef, 0xb0, 0x92, 0x20, - 0xf7, 0xb4, 0x91, 0xd1, 0x3a, 0x9c, 0xb0, 0xf8, 0x19, 0x70, 0x20, 0xff, 0xc1, 0x9d, 0xd3, 0x5f, - 0x0d, 0x52, 0xc4, 0xf1, 0x65, 0x50, 0x5e, 0xa9, 0x08, 0x1c, 0x90, 0x8a, 0xbe, 0x16, 0x1a, 0x7f, - 0x13, 0x2d, 0x74, 0xec, 0x8d, 0xb4, 0x50, 0xf0, 0x75, 0x5b, 0x08, 0x65, 0x61, 0x90, 0x50, 0x85, - 0x36, 0x49, 0xf4, 0xd3, 0x4f, 0x40, 0xc2, 0xef, 0xd1, 0x24, 0x5d, 0xb4, 0x22, 0xb3, 0xe3, 0xc1, - 0xad, 0xf8, 0x1f, 0xec, 0x00, 0xc9, 0x71, 0x45, 0xeb, 0xf0, 0xb8, 0x85, 0xab, 0xd8, 0xb2, 0x34, - 0xbd, 0x26, 0xf3, 0xb1, 0x4f, 0xa2, 0x21, 0x86, 0x76, 0x7a, 0x48, 0xcb, 0x55, 0x19, 0x2f, 0xa1, - 0xeb, 0xc6, 0xe5, 0x04, 0x6d, 0xc2, 0x68, 0x05, 0xd7, 0x31, 0xc5, 0x15, 0x99, 0xeb, 0x70, 0xa5, - 0x8b, 0x18, 0x1e, 0x01, 0x71, 0xc6, 0xf1, 0x96, 0x1c, 0x67, 0x17, 0xf7, 0xff, 0x70, 0xb6, 0xa2, - 0x11, 0xa5, 0x5c, 0xf7, 0x02, 0x86, 0x23, 0x00, 0x9f, 0x72, 0xdd, 0x07, 0x90, 0x7b, 0xba, 0xf4, - 0x6a, 0x20, 0x04, 0x04, 0x5f, 0xf2, 0x33, 0x00, 0x23, 0x05, 0x8d, 0x8c, 0xd8, 0x99, 0x7f, 0x81, - 0x13, 0x75, 0xa5, 0x8c, 0xeb, 0x72, 0x55, 0xab, 0x53, 0x6c, 0x39, 0x1d, 0x1a, 0x61, 0xb2, 0x3c, - 0x13, 0xa1, 0x39, 0x38, 0x69, 0x61, 0xd3, 0xb0, 0xa8, 0x5c, 0xd5, 0x70, 0xbd, 0x42, 0xa2, 0xfe, - 0x84, 0x7f, 0x3e, 0x2c, 0x4d, 0x70, 0x61, 0x9e, 0xc9, 0xd0, 0x05, 0x78, 0xc2, 0x31, 0xe2, 0x49, - 0x71, 0x6d, 0x03, 0xcc, 0x16, 0x71, 0x1d, 0x4f, 0x21, 0xf7, 0x48, 0x7e, 0x1e, 0x84, 0x02, 0x8f, - 0x93, 0x37, 0xea, 0x3a, 0xc5, 0x0d, 0x34, 0x03, 0x83, 0x14, 0xeb, 0x8a, 0x4e, 0x59, 0x6d, 0x85, - 0x25, 0x67, 0x75, 0x84, 0xf1, 0x22, 0x40, 0x7f, 0x53, 0xab, 0xf0, 0x09, 0x27, 0xd9, 0x8f, 0x28, - 0x01, 0x23, 0x15, 0x4c, 0x54, 0x4b, 0x63, 0xef, 0xd6, 0x68, 0x84, 0x33, 0xed, 0x11, 0xa1, 0x18, - 0x0c, 0xb9, 0xc7, 0x1c, 0x9d, 0x48, 0x80, 0xf9, 0x90, 0xd4, 0x5d, 0xa3, 0x02, 0x0c, 0xb2, 0x43, - 0xe1, 0x94, 0x22, 0x8b, 0x97, 0x86, 0xd5, 0xe9, 0x20, 0x27, 0xb1, 0xc0, 0xdc, 0x72, 0x3a, 0xb5, - 0xda, 0x92, 0x83, 0x81, 0xde, 0x86, 0x91, 0x9e, 0x6b, 0x8e, 0x53, 0x01, 0x97, 0x47, 0x86, 0xcc, - 0xbc, 0xf4, 0xe5, 0xb8, 0xbd, 0x68, 0xe8, 0x32, 0x84, 0xc6, 0xb6, 0x8e, 0x2d, 0xd9, 0xbe, 0x4a, - 0x44, 0xc3, 0xac, 0x49, 0x63, 0x03, 0xd8, 0x9b, 0x1a, 0xde, 0x76, 0x6b, 0x2b, 0xcc, 0xac, 0x6d, - 0x49, 0xdf, 0xa0, 0x99, 0x7c, 0x13, 0x83, 0x66, 0xea, 0xb5, 0x06, 0xcd, 0x32, 0x0c, 0xd5, 0x30, - 0x65, 0x03, 0xc3, 0x19, 0x59, 0xa3, 0x0c, 0x1b, 0xe9, 0x58, 0x8d, 0x2f, 0xd0, 0x15, 0x08, 0x9d, - 0x72, 0x24, 0x98, 0x3a, 0x23, 0xe1, 0x10, 0x03, 0x26, 0xcc, 0x9d, 0x8b, 0x98, 0xc6, 0x2e, 0xc3, - 0x48, 0x4f, 0x1e, 0xed, 0xea, 0xda, 0xc2, 0x6d, 0xa7, 0x12, 0xed, 0x47, 0x74, 0x02, 0x8e, 0xb7, - 0x94, 0x7a, 0xd3, 0x2d, 0x42, 0xbe, 0x58, 0xf2, 0xfd, 0x1b, 0xc4, 0x96, 0xa1, 0x30, 0x98, 0xaf, - 0xc3, 0xf8, 0x5f, 0x0d, 0x84, 0xc6, 0x85, 0x60, 0xf2, 0x2e, 0x80, 0x13, 0xbd, 0x75, 0x80, 0x96, - 0xe1, 0xb8, 0x46, 0x71, 0x83, 0x44, 0xf9, 0xdc, 0x9c, 0x1f, 0xb5, 0x78, 0x24, 0xee, 0x86, 0x2e, - 0xc0, 0x20, 0xbf, 0xe2, 0x46, 0x7d, 0x0c, 0x20, 0x3a, 0x00, 0x90, 0xb3, 0x95, 0xec, 0x38, 0x1d, - 0xbb, 0xe4, 0x16, 0x9c, 0x5c, 0x65, 0xe3, 0xed, 0xe8, 0x2f, 0xfd, 0x79, 0x28, 0x54, 0x15, 0xad, - 0x2e, 0x6b, 0xd5, 0xee, 0x18, 0x64, 0x2d, 0x1a, 0x92, 0xa6, 0x6c, 0xf9, 0x7a, 0xd5, 0x1d, 0x6f, - 0x0b, 0xbf, 0x02, 0x78, 0xd2, 0xf3, 0x85, 0x8f, 0x62, 0x70, 0x66, 0x2d, 0x57, 0x92, 0xa5, 0xe2, - 0x4d, 0x39, 0xbf, 0x21, 0x5d, 0xcf, 0x94, 0xe4, 0xd5, 0x5c, 0x3e, 0x73, 0xab, 0x50, 0x12, 0xc6, - 0xd0, 0x19, 0x38, 0x3b, 0xa0, 0xcb, 0x6f, 0x48, 0x72, 0x56, 0xca, 0x65, 0x4a, 0x39, 0x01, 0xa0, - 0x38, 0x8c, 0x79, 0xa8, 0xa5, 0xdc, 0xcd, 0x42, 0x26, 0x9b, 0x13, 0x7c, 0x68, 0x16, 0x9e, 0x1c, - 0xd0, 0x17, 0x4b, 0x99, 0xd2, 0xad, 0xa2, 0xe0, 0x47, 0xa7, 0xe0, 0x9f, 0x06, 0x54, 0x52, 0x2e, - 0xb3, 0x2a, 0x04, 0xd0, 0x59, 0x98, 0xd8, 0xa7, 0xc8, 0xe7, 0x24, 0x69, 0xfd, 0xc6, 0x9a, 0xbc, - 0xb1, 0x72, 0x35, 0x97, 0x2d, 0x15, 0x85, 0x71, 0x0f, 0xab, 0x15, 0x69, 0xe3, 0x5a, 0xee, 0x06, - 0x37, 0xce, 0xdd, 0xc8, 0xe6, 0x8a, 0x42, 0x70, 0xf1, 0xcb, 0x10, 0xf4, 0x67, 0x6e, 0xae, 0xa3, - 0x6f, 0x01, 0x0c, 0xf2, 0x9b, 0x08, 0x1a, 0xed, 0xa6, 0x12, 0x3b, 0xf7, 0x2a, 0x33, 0xe7, 0xda, - 0xd6, 0xe8, 0x3c, 0x8c, 0xa6, 0xaa, 0xff, 0xbc, 0xa3, 0xa6, 0x08, 0x56, 0x9b, 0x16, 0x6e, 0x60, - 0x72, 0x3b, 0x55, 0x56, 0x88, 0xa6, 0xa6, 0x9a, 0x04, 0x5b, 0x7f, 0x6f, 0x61, 0x92, 0xd2, 0x8c, - 0x94, 0x69, 0x19, 0x77, 0xda, 0xa9, 0x6d, 0x4b, 0xa3, 0xf8, 0xde, 0x0f, 0xbf, 0x7c, 0xe8, 0xfb, - 0x57, 0xf2, 0xa2, 0xf3, 0xff, 0x2f, 0xdd, 0x4d, 0x30, 0x49, 0xbf, 0xe7, 0xb6, 0xb9, 0xd8, 0x15, - 0xee, 0x74, 0xff, 0x5b, 0x91, 0x25, 0xb0, 0x80, 0xbe, 0x01, 0xd0, 0xbf, 0x86, 0x29, 0x4a, 0x1e, - 0x78, 0xa7, 0xe3, 0x14, 0xe6, 0x46, 0xb8, 0xf7, 0x25, 0xf5, 0x47, 0x5f, 0xf9, 0x40, 0xe7, 0x61, - 0x34, 0xed, 0xcd, 0xa1, 0x61, 0xe8, 0x1a, 0x35, 0x06, 0x68, 0x58, 0x58, 0xa9, 0x30, 0x16, 0x17, - 0x51, 0xda, 0x8b, 0x85, 0x57, 0xf0, 0x5c, 0xba, 0x83, 0xbe, 0x06, 0x30, 0x60, 0x77, 0x10, 0x9a, - 0x3b, 0xb8, 0xbf, 0x38, 0x85, 0xb3, 0xa3, 0x34, 0x61, 0xb2, 0xf6, 0x3a, 0x1c, 0x16, 0xd0, 0xfc, - 0xa8, 0x1c, 0xd0, 0x8f, 0x00, 0x1e, 0x73, 0xee, 0xa1, 0x68, 0xc4, 0x8b, 0x6a, 0xec, 0xfc, 0x2b, - 0xed, 0x1c, 0x16, 0x3b, 0x47, 0xab, 0xa4, 0x7c, 0x2c, 0x73, 0xe8, 0x4a, 0x1a, 0x50, 0xef, 0xd8, - 0x95, 0xf5, 0x05, 0x80, 0x41, 0x3e, 0x8d, 0x86, 0xb7, 0x48, 0xdf, 0xb4, 0x8a, 0xcd, 0x88, 0xfc, - 0x33, 0x82, 0xe8, 0x7e, 0x46, 0x10, 0x73, 0x0d, 0x93, 0xb6, 0x93, 0x5b, 0x47, 0x23, 0x72, 0x69, - 0xe1, 0xb0, 0xc5, 0xb4, 0x04, 0x16, 0x62, 0x9b, 0x0f, 0x76, 0x81, 0xef, 0xfb, 0x5d, 0x70, 0x66, - 0x48, 0xc8, 0xfc, 0xf5, 0xf3, 0x74, 0x17, 0x80, 0xce, 0x2e, 0x98, 0x1b, 0xe1, 0x4d, 0x75, 0xef, - 0xbb, 0xa8, 0x4f, 0x00, 0x2b, 0xef, 0x83, 0xc7, 0xcb, 0xe3, 0x59, 0xe9, 0xd6, 0x6a, 0xe1, 0xc9, - 0xb3, 0xf8, 0xd8, 0xd3, 0x67, 0xf1, 0xb1, 0x17, 0xcf, 0xe2, 0xe0, 0x6e, 0x27, 0x0e, 0xee, 0x77, - 0xe2, 0xe0, 0x51, 0x27, 0x0e, 0x9e, 0x74, 0xe2, 0xe0, 0xe7, 0x4e, 0x1c, 0x3c, 0xef, 0xc4, 0xc7, - 0x5e, 0x74, 0xe2, 0xe0, 0x83, 0xbd, 0xf8, 0xd8, 0x83, 0xbd, 0x38, 0x78, 0xb2, 0x17, 0x1f, 0x7b, - 0xba, 0x17, 0x1f, 0x7b, 0xab, 0x50, 0x33, 0xcc, 0xad, 0x9a, 0xd8, 0x32, 0xec, 0x5b, 0x9f, 0xa5, - 0x88, 0x4d, 0x92, 0x66, 0x0f, 0xf6, 0xbf, 0x1d, 0x9b, 0x7d, 0x4b, 0xab, 0x60, 0x2b, 0xe5, 0xaa, - 0xd3, 0x66, 0xb9, 0x66, 0xa4, 0xf1, 0x1d, 0xea, 0x7c, 0xb6, 0x18, 0xf8, 0xb2, 0x52, 0x0e, 0xb2, - 0x53, 0xfe, 0xc7, 0x1f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xdc, 0xa8, 0xe6, 0x4b, 0x4e, 0x12, 0x00, - 0x00, + // 1616 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x1a, 0xc7, + 0x1e, 0xf7, 0x00, 0x26, 0x30, 0xf8, 0xc7, 0x66, 0x5e, 0xe2, 0x60, 0x5e, 0x82, 0x78, 0x38, 0x2f, + 0xb1, 0xfc, 0x1e, 0x4b, 0xe2, 0x97, 0x57, 0x35, 0x56, 0xe5, 0x16, 0x63, 0x70, 0x9c, 0x90, 0xd8, + 0x5a, 0x88, 0x55, 0xb5, 0x87, 0xd5, 0xb2, 0x0c, 0x64, 0x1b, 0xd8, 0xdd, 0xee, 0x0c, 0x38, 0xa8, + 0xb2, 0x14, 0xe5, 0xd4, 0xaa, 0x52, 0x5b, 0xa9, 0x52, 0x0f, 0x6d, 0x0f, 0xbd, 0x54, 0xca, 0xa1, + 0x7f, 0x40, 0x25, 0x5f, 0x72, 0x6b, 0x94, 0x43, 0x15, 0x35, 0x17, 0x1f, 0x72, 0x48, 0x70, 0x2b, + 0xe5, 0x18, 0x55, 0x3d, 0xf4, 0x52, 0xa9, 0xda, 0x99, 0x5d, 0x02, 0x18, 0x1c, 0x9c, 0x1f, 0x27, + 0x76, 0xbe, 0x3f, 0x3e, 0xf3, 0xfd, 0xcc, 0xf7, 0xc7, 0x0e, 0x0b, 0xff, 0xd3, 0xc0, 0x44, 0xd4, + 0x8c, 0x24, 0x51, 0xaf, 0xe1, 0x9a, 0x92, 0xc4, 0x7a, 0xc9, 0x34, 0x34, 0x9d, 0x26, 0xcd, 0x7a, + 0xb1, 0xaa, 0xa9, 0xb2, 0x6a, 0xd5, 0x4b, 0x8a, 0xa9, 0x89, 0xa6, 0x65, 0x50, 0x03, 0x4d, 0x71, + 0x63, 0x91, 0x1b, 0x8b, 0xae, 0x71, 0x24, 0x51, 0xd1, 0xe8, 0xb5, 0x7a, 0x51, 0x54, 0x8d, 0x5a, + 0xb2, 0x62, 0x54, 0x8c, 0x24, 0x33, 0x2f, 0xd6, 0xcb, 0x6c, 0xc5, 0x16, 0xec, 0x89, 0xc3, 0x44, + 0x8e, 0x57, 0x0c, 0xa3, 0x52, 0xc5, 0x49, 0xc5, 0xd4, 0x92, 0x8a, 0xae, 0x1b, 0x54, 0xa1, 0x9a, + 0xa1, 0x13, 0x47, 0xfb, 0x4f, 0x47, 0xdb, 0xc6, 0xc0, 0x35, 0x93, 0x36, 0x1d, 0xe5, 0xcc, 0x80, + 0x70, 0x8d, 0xe2, 0x07, 0x58, 0xa5, 0x8e, 0x51, 0x7c, 0x80, 0x11, 0x6d, 0x9a, 0xd8, 0xdd, 0x25, + 0xd2, 0x63, 0x63, 0x59, 0x86, 0xd5, 0x8e, 0xa0, 0x5b, 0x67, 0x98, 0x9d, 0xe1, 0x4d, 0x77, 0x2b, + 0x3b, 0x31, 0x7b, 0xf6, 0x6d, 0x60, 0x82, 0xf5, 0x46, 0x8f, 0x7b, 0xac, 0xc7, 0x46, 0xc3, 0x9b, + 0x72, 0x97, 0x45, 0xfc, 0x36, 0x80, 0xe3, 0x69, 0x0b, 0x2b, 0x14, 0x4b, 0xf8, 0xc3, 0x3a, 0x26, + 0x14, 0xbd, 0x0d, 0x03, 0x35, 0x4c, 0x95, 0x92, 0x42, 0x95, 0x30, 0x88, 0x81, 0xd9, 0xd0, 0xfc, + 0x8c, 0xd8, 0x9d, 0x89, 0x35, 0x46, 0x9f, 0x7b, 0x5d, 0xc6, 0x54, 0x29, 0x34, 0x4d, 0x2c, 0xb5, + 0x9d, 0xd0, 0x25, 0xe8, 0x23, 0x26, 0x56, 0xc3, 0x1e, 0xe6, 0x7c, 0x4a, 0xec, 0x9f, 0x46, 0x91, + 0xfb, 0xe7, 0x4d, 0xac, 0xda, 0xfe, 0x4b, 0x93, 0x5f, 0x6f, 0x8d, 0xd9, 0x6e, 0x62, 0x45, 0x95, + 0xed, 0x5f, 0x89, 0x81, 0x2c, 0x04, 0xef, 0x2d, 0xfa, 0xf9, 0x7e, 0xf1, 0x3f, 0x00, 0x9c, 0x70, + 0x43, 0x25, 0xa6, 0xa1, 0x13, 0x8c, 0xde, 0xda, 0x13, 0x6b, 0xac, 0x6f, 0xac, 0x2b, 0x98, 0xf6, + 0x09, 0x74, 0x0d, 0x4e, 0x92, 0x26, 0xa1, 0xb8, 0x26, 0xb7, 0x41, 0xbc, 0x7d, 0x63, 0xce, 0x33, + 0xab, 0xbd, 0x50, 0x13, 0xdc, 0xfd, 0xb2, 0x0b, 0x78, 0xa1, 0x8b, 0xf9, 0xcc, 0x20, 0xe6, 0x2b, + 0x98, 0x1e, 0x80, 0xf6, 0x43, 0x00, 0x27, 0x24, 0x6c, 0x56, 0x15, 0xb5, 0x9d, 0xa2, 0x77, 0xf6, + 0xd0, 0x3e, 0xd9, 0x97, 0xb6, 0xe3, 0xd6, 0x87, 0x7a, 0xae, 0x2b, 0xd2, 0xd3, 0x83, 0x22, 0x75, + 0x00, 0x9e, 0x13, 0x2d, 0x4a, 0x42, 0xc1, 0xc2, 0xc4, 0xa8, 0x5b, 0x2a, 0x96, 0x1b, 0xd8, 0x22, + 0x9a, 0xa1, 0xb3, 0x93, 0x0c, 0x2e, 0xf9, 0x9e, 0x6c, 0x03, 0x20, 0x4d, 0xba, 0xda, 0x0d, 0xae, + 0xec, 0xa4, 0x77, 0x18, 0x4e, 0xb6, 0xd9, 0xf1, 0xac, 0xc6, 0xbf, 0x02, 0x10, 0xae, 0x60, 0xea, + 0xb2, 0x3d, 0x0e, 0x83, 0xba, 0x52, 0xc3, 0xc4, 0x54, 0x54, 0xcc, 0xe8, 0x06, 0xa5, 0x67, 0x02, + 0x84, 0xa0, 0xcf, 0x5e, 0x30, 0x26, 0x41, 0x89, 0x3d, 0xa3, 0x0d, 0x68, 0xef, 0xc8, 0xc0, 0xe4, + 0xb2, 0x61, 0xd5, 0x14, 0xca, 0xc2, 0x99, 0x98, 0x4f, 0xec, 0x93, 0x12, 0x77, 0xfb, 0x2c, 0x73, + 0x48, 0x1b, 0x25, 0x2c, 0x4d, 0x58, 0x5d, 0xb2, 0xf8, 0x5f, 0xa3, 0x30, 0xd4, 0x61, 0x89, 0xb2, + 0x30, 0xa4, 0xb2, 0x82, 0x64, 0xbb, 0x38, 0x87, 0xf9, 0xef, 0xfd, 0x0b, 0xde, 0x61, 0x25, 0x41, + 0xee, 0x69, 0x23, 0xa3, 0x55, 0x38, 0x66, 0xf1, 0x33, 0xe0, 0x40, 0xde, 0xfd, 0x3b, 0xa7, 0xbb, + 0x1a, 0xa4, 0x90, 0xe3, 0xcb, 0xa0, 0xfa, 0xa5, 0xc2, 0xb7, 0x4f, 0x2a, 0xba, 0x5a, 0x68, 0xf4, + 0x55, 0xb4, 0xd0, 0xa1, 0x57, 0xd2, 0x42, 0xfe, 0x97, 0x6d, 0x21, 0x94, 0x86, 0x7e, 0x42, 0x15, + 0x5a, 0x27, 0xe1, 0xef, 0xbe, 0x05, 0x31, 0x6f, 0x9f, 0x26, 0x69, 0xa3, 0xe5, 0x99, 0x1d, 0x0f, + 0x6e, 0xc9, 0x7b, 0x67, 0x0b, 0x48, 0x8e, 0x2b, 0x5a, 0x85, 0x87, 0x2d, 0x5c, 0xc6, 0x96, 0xa5, + 0xe9, 0x15, 0x99, 0x8f, 0x7d, 0x12, 0x0e, 0x30, 0xb4, 0xe3, 0x03, 0x5a, 0xae, 0xcc, 0x78, 0x09, + 0x6d, 0x37, 0x2e, 0x27, 0x68, 0x03, 0x86, 0x4b, 0xb8, 0x8a, 0x29, 0x2e, 0xc9, 0x5c, 0x87, 0x4b, + 0x6d, 0xc4, 0xe0, 0x10, 0x88, 0x53, 0x8e, 0xb7, 0xe4, 0x38, 0xbb, 0xb8, 0xef, 0xc2, 0xe9, 0x92, + 0x46, 0x94, 0x62, 0xb5, 0x1f, 0x30, 0x1c, 0x02, 0xf8, 0x98, 0xeb, 0xde, 0x83, 0xdc, 0xd1, 0xa5, + 0x17, 0x7d, 0x01, 0x20, 0x78, 0xe2, 0xdf, 0x03, 0x18, 0xca, 0x69, 0x64, 0xc8, 0xce, 0xfc, 0x17, + 0x1c, 0xab, 0x2a, 0x45, 0x5c, 0x95, 0xcb, 0x5a, 0x95, 0x62, 0xcb, 0xe9, 0xd0, 0x10, 0x93, 0x65, + 0x99, 0x08, 0xcd, 0xc0, 0x71, 0x0b, 0x9b, 0x86, 0x45, 0xe5, 0xb2, 0x86, 0xab, 0x25, 0x12, 0xf6, + 0xc6, 0xbc, 0xb3, 0x41, 0x69, 0x8c, 0x0b, 0xb3, 0x4c, 0x86, 0xce, 0xc0, 0x23, 0x8e, 0x11, 0x4f, + 0x8a, 0x6b, 0xeb, 0x63, 0xb6, 0x88, 0xeb, 0x78, 0x0a, 0xb9, 0x47, 0xfc, 0x07, 0x3f, 0x14, 0x78, + 0x9c, 0xbc, 0x51, 0x57, 0x29, 0xae, 0xa1, 0x29, 0xe8, 0xa7, 0x58, 0x57, 0x74, 0xca, 0x6a, 0x2b, + 0x28, 0x39, 0xab, 0x17, 0x18, 0x2f, 0x02, 0xf4, 0xd6, 0xb5, 0x12, 0x9f, 0x70, 0x92, 0xfd, 0x88, + 0x62, 0x30, 0x54, 0xc2, 0x44, 0xb5, 0x34, 0xf6, 0x6e, 0x0d, 0x87, 0x38, 0xd3, 0x0e, 0x11, 0x8a, + 0xc0, 0x80, 0x7b, 0xcc, 0xe1, 0xb1, 0x18, 0x98, 0x0d, 0x48, 0xed, 0x35, 0xca, 0x41, 0x3f, 0x3b, + 0x14, 0x4e, 0x29, 0x34, 0x7f, 0x6e, 0x50, 0x9d, 0xf6, 0x72, 0x12, 0x73, 0xcc, 0x2d, 0xa3, 0x53, + 0xab, 0x29, 0x39, 0x18, 0xe8, 0x7d, 0x18, 0xea, 0xb8, 0xe6, 0x38, 0x15, 0x70, 0x7e, 0x68, 0xc8, + 0xd4, 0x33, 0x5f, 0x8e, 0xdb, 0x89, 0x86, 0xce, 0x43, 0x68, 0x6c, 0xea, 0xd8, 0x92, 0xed, 0xab, + 0x44, 0x38, 0xc8, 0x9a, 0x34, 0xd2, 0x83, 0xbd, 0xa1, 0xe1, 0x4d, 0xb7, 0xb6, 0x82, 0xcc, 0xda, + 0x96, 0x74, 0x0d, 0x9a, 0xf1, 0x57, 0x31, 0x68, 0x26, 0x5e, 0x6a, 0xd0, 0x2c, 0xc2, 0x40, 0x05, + 0x53, 0x36, 0x30, 0x9c, 0x91, 0x35, 0xcc, 0xb0, 0x91, 0x0e, 0x55, 0xf8, 0x02, 0x5d, 0x80, 0xd0, + 0x29, 0x47, 0x82, 0xa9, 0x33, 0x12, 0x0e, 0x30, 0x60, 0x82, 0xdc, 0x39, 0x8f, 0x69, 0xe4, 0x3c, + 0x0c, 0x75, 0xe4, 0xd1, 0xae, 0xae, 0xeb, 0xb8, 0xe9, 0x54, 0xa2, 0xfd, 0x88, 0x8e, 0xc0, 0xd1, + 0x86, 0x52, 0xad, 0xbb, 0x45, 0xc8, 0x17, 0x0b, 0x9e, 0x37, 0x41, 0x64, 0x11, 0x0a, 0xbd, 0xf9, + 0x3a, 0x88, 0xff, 0x45, 0x5f, 0x60, 0x54, 0xf0, 0xc7, 0x6f, 0x02, 0x38, 0xd6, 0x59, 0x07, 0x68, + 0x11, 0x8e, 0x6a, 0x14, 0xd7, 0x48, 0x98, 0xcf, 0xcd, 0xd9, 0x61, 0x8b, 0x47, 0xe2, 0x6e, 0xe8, + 0x0c, 0xf4, 0xf3, 0x2b, 0x6e, 0xd8, 0xc3, 0x00, 0xc2, 0x3d, 0x00, 0x19, 0x5b, 0xc9, 0x8e, 0xd3, + 0xb1, 0x8b, 0x5f, 0x87, 0xe3, 0xcb, 0x6c, 0xbc, 0xbd, 0xf8, 0x4b, 0x7f, 0x16, 0x0a, 0x65, 0x45, + 0xab, 0xca, 0x5a, 0xb9, 0x3d, 0x06, 0x59, 0x8b, 0x06, 0xa4, 0x09, 0x5b, 0xbe, 0x5a, 0x76, 0xc7, + 0xdb, 0xdc, 0xef, 0x00, 0x1e, 0xed, 0xfb, 0xc2, 0x47, 0x11, 0x38, 0xb5, 0x92, 0x29, 0xc8, 0x52, + 0x7e, 0x5d, 0xce, 0xae, 0x49, 0x97, 0x53, 0x05, 0x79, 0x39, 0x93, 0x4d, 0x5d, 0xcd, 0x15, 0x84, + 0x11, 0x74, 0x02, 0x4e, 0xf7, 0xe8, 0xb2, 0x6b, 0x92, 0x9c, 0x96, 0x32, 0xa9, 0x42, 0x46, 0x00, + 0x28, 0x0a, 0x23, 0x7d, 0xd4, 0x52, 0x66, 0x3d, 0x97, 0x4a, 0x67, 0x04, 0x0f, 0x9a, 0x86, 0x47, + 0x7b, 0xf4, 0xf9, 0x42, 0xaa, 0x70, 0x35, 0x2f, 0x78, 0xd1, 0x31, 0xf8, 0x8f, 0x1e, 0x95, 0x94, + 0x49, 0x2d, 0x0b, 0x3e, 0x74, 0x12, 0xc6, 0xf6, 0x28, 0xb2, 0x19, 0x49, 0x5a, 0xbd, 0xb2, 0x22, + 0xaf, 0x2d, 0x5d, 0xcc, 0xa4, 0x0b, 0x79, 0x61, 0xb4, 0x8f, 0xd5, 0x92, 0xb4, 0x76, 0x29, 0x73, + 0x85, 0x1b, 0x67, 0xae, 0xa4, 0x33, 0x79, 0xc1, 0x3f, 0xbf, 0x13, 0x84, 0xde, 0xd4, 0xfa, 0x2a, + 0xfa, 0x0d, 0x40, 0x3f, 0xbf, 0x89, 0xa0, 0xe1, 0x6e, 0x2a, 0x91, 0x53, 0xcf, 0x33, 0x73, 0xae, + 0x6d, 0x9f, 0x82, 0xd6, 0x4f, 0xe1, 0x4b, 0xe5, 0xff, 0xdf, 0x50, 0x13, 0x04, 0xab, 0x75, 0x0b, + 0xd7, 0x30, 0xb9, 0x96, 0x28, 0x2a, 0x44, 0x53, 0x13, 0x75, 0x82, 0xad, 0xff, 0xf6, 0xaa, 0x08, + 0x55, 0xf4, 0x92, 0x62, 0x95, 0xb8, 0xb6, 0x81, 0x49, 0x42, 0x33, 0x12, 0xa6, 0x65, 0xdc, 0x68, + 0x26, 0x36, 0x2d, 0x8d, 0xe2, 0x5b, 0x0f, 0x7e, 0xfd, 0xd2, 0xf3, 0x46, 0xfc, 0xac, 0xf3, 0xf7, + 0x30, 0xd9, 0xce, 0x3f, 0x49, 0x7e, 0xe4, 0x4e, 0x01, 0xb1, 0x2d, 0xdc, 0x6a, 0xff, 0xf5, 0x22, + 0x0b, 0x60, 0x0e, 0x3d, 0x02, 0xd0, 0xbb, 0x82, 0x29, 0x8a, 0xef, 0x7b, 0xe5, 0xe3, 0x0c, 0x67, + 0x86, 0xb8, 0x16, 0xc6, 0x3f, 0x07, 0x77, 0x7f, 0xf4, 0xd8, 0x14, 0xd7, 0xfb, 0x53, 0xac, 0x19, + 0xba, 0x46, 0x8d, 0x7d, 0x58, 0xba, 0x06, 0x5d, 0x44, 0x2d, 0xac, 0x94, 0x18, 0xcf, 0xb3, 0x28, + 0xd9, 0x8f, 0x67, 0x3f, 0x7a, 0x5c, 0xba, 0x85, 0x1e, 0x02, 0xe8, 0xb3, 0x5b, 0x10, 0xcd, 0xec, + 0xdf, 0xa0, 0x9c, 0xe4, 0xc9, 0x61, 0xba, 0x38, 0xfe, 0xf1, 0xeb, 0x65, 0x39, 0x87, 0x66, 0x87, + 0x65, 0x89, 0xfe, 0x04, 0xf0, 0x90, 0x73, 0xd5, 0x45, 0x43, 0xde, 0x85, 0x23, 0xa7, 0x9f, 0x6b, + 0xe7, 0xf0, 0xfc, 0xe6, 0xb5, 0x14, 0x6b, 0x36, 0x92, 0x3a, 0x70, 0xb1, 0xf6, 0xa8, 0xb7, 0xec, + 0xe2, 0x7d, 0x00, 0xa0, 0x9f, 0xcf, 0xc3, 0xc1, 0x4d, 0xda, 0x35, 0x2f, 0x23, 0x53, 0x22, 0xff, + 0x90, 0x21, 0xba, 0x1f, 0x32, 0xc4, 0x4c, 0xcd, 0xa4, 0xcd, 0xf8, 0x27, 0xaf, 0x85, 0xe7, 0xb9, + 0xb9, 0x83, 0x16, 0xeb, 0x02, 0x98, 0x8b, 0x6c, 0xdc, 0xd9, 0x06, 0x9e, 0x5f, 0xb6, 0xc1, 0x89, + 0x01, 0x8c, 0xf8, 0xfb, 0x71, 0x67, 0x1b, 0x80, 0xd6, 0x36, 0x98, 0x19, 0xe2, 0x55, 0x7a, 0xeb, + 0xe7, 0xb0, 0x47, 0x00, 0x4b, 0x9f, 0x81, 0x7b, 0x8b, 0xa3, 0x69, 0xe9, 0xea, 0x72, 0xee, 0xfe, + 0xe3, 0xe8, 0xc8, 0xce, 0xe3, 0xe8, 0xc8, 0xd3, 0xc7, 0x51, 0x70, 0xb3, 0x15, 0x05, 0xb7, 0x5b, + 0x51, 0x70, 0xb7, 0x15, 0x05, 0xf7, 0x5b, 0x51, 0xf0, 0xa8, 0x15, 0x05, 0x4f, 0x5a, 0xd1, 0x91, + 0xa7, 0xad, 0x28, 0xf8, 0x62, 0x37, 0x3a, 0x72, 0x67, 0x37, 0x0a, 0xee, 0xef, 0x46, 0x47, 0x76, + 0x76, 0xa3, 0x23, 0xef, 0xe5, 0x2a, 0x86, 0x79, 0xbd, 0x22, 0x36, 0x0c, 0xfb, 0x5a, 0x6a, 0x29, + 0x62, 0x9d, 0x24, 0xd9, 0x83, 0xfd, 0x77, 0xcc, 0x66, 0xdf, 0xd0, 0x4a, 0xd8, 0x4a, 0xb8, 0xea, + 0xa4, 0x59, 0xac, 0x18, 0x49, 0x7c, 0x83, 0x3a, 0xdf, 0x55, 0x7a, 0x3e, 0xfd, 0x14, 0xfd, 0x2c, + 0x09, 0xff, 0xfb, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x61, 0x8f, 0x84, 0x7b, 0xef, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/endpoint/public_crudapi.vesapi.go b/pbgo/extschema/schema/endpoint/public_crudapi.vesapi.go index 57328335b..187e6b50f 100644 --- a/pbgo/extschema/schema/endpoint/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/endpoint/public_crudapi.vesapi.go @@ -3509,10 +3509,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3569,10 +3573,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3631,10 +3639,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/enhanced_firewall_policy/crudapi/api.vesapi.go index 1c124abbf..e0c67ea46 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/crudapi/api.vesapi.go @@ -3047,11 +3047,10 @@ var APISwaggerJSON string = `{ "x-ves-example": "app != web" }, "source_prefix_list": { - "description": "Exclusive with [all_sources inside_sources outside_sources source_aws_vpc_ids source_ip_prefix_set source_label_selector]\n Addresses that match one of the prefix in the list\n\nExample: - \"192.168.20.0/24\"-", - "title": "ipv4 prefix list", + "description": "Exclusive with [all_sources inside_sources outside_sources source_aws_vpc_ids source_ip_prefix_set source_label_selector]\n Addresses that match one of the prefix in the list\n list contains sublist of both v4 and v6 prfix list", + "title": "ip prefix list", "$ref": "#/definitions/viewsPrefixStringListType", - "x-displayname": "IPv4 Prefix List", - "x-ves-example": "192.168.20.0/24" + "x-displayname": "IP Prefix List" } } }, @@ -3675,10 +3674,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/object.pb.go b/pbgo/extschema/schema/enhanced_firewall_policy/object.pb.go index 01f0ffea9..ed37e0d3d 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/object.pb.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/object.pb.go @@ -230,45 +230,46 @@ func init() { } var fileDescriptor_b4c56fc1209f72f8 = []byte{ - // 597 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xb1, 0x4b, 0x1c, 0x4f, - 0x14, 0xc7, 0x6f, 0xee, 0xe4, 0x94, 0x51, 0xfc, 0xc9, 0xfe, 0x9a, 0x8d, 0x26, 0x83, 0x5c, 0x20, - 0x58, 0x64, 0x77, 0xe5, 0x24, 0x01, 0x4d, 0x48, 0xa1, 0x82, 0x8d, 0x22, 0x9c, 0xa9, 0x4c, 0xe0, - 0x98, 0x9d, 0x7b, 0xb7, 0x37, 0x71, 0x77, 0x67, 0x99, 0x99, 0x3d, 0xbd, 0x22, 0x90, 0x3f, 0x21, - 0x69, 0xf3, 0x17, 0x84, 0x90, 0x3e, 0x6d, 0x4c, 0x95, 0x52, 0xac, 0x2c, 0xe3, 0x5e, 0x93, 0xd2, - 0x32, 0x65, 0x70, 0xd6, 0x15, 0xcf, 0x9c, 0xe4, 0xb8, 0xee, 0x0d, 0xef, 0xfb, 0xf9, 0xf2, 0x66, - 0xde, 0x7b, 0x83, 0x57, 0xba, 0xa0, 0x5c, 0x2e, 0x3c, 0xc5, 0x3a, 0x10, 0x51, 0x0f, 0xe2, 0x0e, - 0x8d, 0x19, 0xb4, 0x9a, 0x6d, 0x2e, 0xe1, 0x90, 0x86, 0x61, 0x33, 0x11, 0x21, 0x67, 0x3d, 0x4f, - 0xf8, 0x6f, 0x80, 0x69, 0x37, 0x91, 0x42, 0x0b, 0xeb, 0x51, 0x0e, 0xb9, 0x39, 0xe4, 0xde, 0x05, - 0xcd, 0x3b, 0x01, 0xd7, 0x9d, 0xd4, 0x77, 0x99, 0x88, 0xbc, 0x40, 0x04, 0xc2, 0x33, 0xb8, 0x9f, - 0xb6, 0xcd, 0xc9, 0x1c, 0x4c, 0x94, 0xdb, 0xce, 0xd7, 0x47, 0xac, 0x45, 0xf7, 0x12, 0x50, 0x57, - 0xcc, 0xc2, 0x20, 0x23, 0x12, 0xcd, 0x45, 0x5c, 0x24, 0xef, 0x0d, 0x26, 0x6f, 0x72, 0xb5, 0xc1, - 0x54, 0x17, 0x14, 0xc4, 0xdd, 0x41, 0xbc, 0xf6, 0x61, 0x02, 0x57, 0x77, 0xcd, 0xbd, 0xad, 0x55, - 0x3c, 0x15, 0x81, 0xa6, 0x2d, 0xaa, 0xa9, 0x8d, 0x16, 0xd1, 0xd2, 0x74, 0xfd, 0x81, 0x3b, 0xf8, - 0x08, 0xb9, 0x70, 0x07, 0x34, 0x7d, 0xd9, 0x4b, 0xa0, 0x71, 0x2d, 0xb7, 0xb6, 0xf1, 0x7f, 0xaa, - 0xa7, 0x34, 0x44, 0xcd, 0x6b, 0x87, 0xb2, 0x71, 0x78, 0x78, 0xcb, 0x61, 0xcf, 0xa8, 0x6e, 0xf9, - 0xcc, 0xe6, 0xec, 0x4e, 0xe1, 0xb6, 0x89, 0x27, 0x54, 0x02, 0xcc, 0xae, 0x18, 0x8b, 0x65, 0x77, - 0xb4, 0x4e, 0xb8, 0x7b, 0x09, 0x30, 0xe3, 0x67, 0xe8, 0xb5, 0xaf, 0xe5, 0xef, 0xc7, 0x76, 0x79, - 0x0e, 0x9d, 0x1e, 0xdb, 0x5f, 0xca, 0x78, 0x15, 0x57, 0xb6, 0x40, 0x5b, 0xf5, 0xf6, 0x93, 0x23, - 0xe6, 0x28, 0x60, 0xa9, 0x84, 0x08, 0x54, 0xc7, 0xf1, 0xa9, 0xe2, 0xcc, 0x89, 0x44, 0xcc, 0xb5, - 0x90, 0x8f, 0x17, 0xbb, 0xa0, 0x1c, 0x2e, 0x9c, 0x18, 0xf4, 0xa1, 0x90, 0x07, 0x8e, 0x04, 0xda, - 0xc2, 0xcf, 0xf0, 0x64, 0x03, 0x92, 0x90, 0x32, 0xb0, 0x96, 0x87, 0xe3, 0xa9, 0x82, 0xbf, 0xd9, - 0x43, 0xc9, 0x35, 0xe0, 0x35, 0x5c, 0xdd, 0x90, 0x40, 0xf5, 0x98, 0xec, 0x26, 0x84, 0x30, 0x26, - 0x3b, 0xb1, 0xcd, 0xd5, 0x58, 0x17, 0xae, 0xbd, 0xc2, 0x53, 0xc5, 0x5b, 0x5a, 0xbb, 0x78, 0x32, - 0x60, 0x4d, 0xd3, 0x8e, 0x7c, 0x26, 0x9e, 0x8e, 0xda, 0x8e, 0xad, 0x50, 0xf8, 0x34, 0xbc, 0x6e, - 0x4a, 0x35, 0x60, 0x97, 0x71, 0xed, 0x37, 0xc2, 0x33, 0x7b, 0x9a, 0xea, 0x54, 0x8d, 0x3c, 0x76, - 0xb9, 0x7c, 0xc8, 0xd8, 0xed, 0xe3, 0xe9, 0x7c, 0x67, 0x9b, 0x12, 0xda, 0xca, 0x2e, 0x2f, 0x56, - 0x96, 0xa6, 0xeb, 0xf7, 0x87, 0x0e, 0x6d, 0x03, 0xda, 0x97, 0xf0, 0xfa, 0xc2, 0xe7, 0xb7, 0xf6, - 0x5d, 0x25, 0x37, 0xb0, 0x28, 0xb4, 0xca, 0x7a, 0x8e, 0x31, 0x13, 0x71, 0x8b, 0x9b, 0x65, 0xb1, - 0x2b, 0x43, 0xad, 0x37, 0x0a, 0x81, 0xa9, 0xeb, 0x86, 0x7e, 0xed, 0xff, 0xd3, 0x17, 0x73, 0x78, - 0x16, 0xcf, 0x14, 0xa5, 0xba, 0x29, 0x6f, 0xad, 0x7f, 0x44, 0x27, 0xe7, 0xa4, 0x74, 0x76, 0x4e, - 0x4a, 0x17, 0xe7, 0x04, 0xbd, 0xcb, 0x08, 0xfa, 0x94, 0x11, 0xf4, 0x23, 0x23, 0xe8, 0x24, 0x23, - 0xe8, 0x2c, 0x23, 0xe8, 0x67, 0x46, 0xd0, 0xaf, 0x8c, 0x94, 0x2e, 0x32, 0x82, 0xde, 0xf7, 0x49, - 0xe9, 0x5b, 0x9f, 0xa0, 0x93, 0x3e, 0x29, 0x9d, 0xf5, 0x49, 0x69, 0xff, 0x75, 0x20, 0x92, 0x83, - 0xc0, 0xed, 0x8a, 0x50, 0x83, 0x94, 0xd4, 0x4d, 0x95, 0x67, 0x82, 0xb6, 0x90, 0x91, 0x93, 0x48, - 0xd1, 0xe5, 0x2d, 0x90, 0x4e, 0x91, 0xf6, 0x12, 0x3f, 0x10, 0x1e, 0x1c, 0xe9, 0xab, 0xed, 0xff, - 0xc7, 0x87, 0xe3, 0x57, 0xcd, 0x7f, 0xb0, 0xf2, 0x27, 0x00, 0x00, 0xff, 0xff, 0x8d, 0x82, 0x2b, - 0x69, 0x2d, 0x05, 0x00, 0x00, + // 616 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xb1, 0x4f, 0xdb, 0x4e, + 0x14, 0xc7, 0x73, 0x84, 0x5f, 0x40, 0x07, 0xe2, 0x87, 0xd2, 0xc5, 0x85, 0xf6, 0x84, 0x52, 0xa9, + 0x62, 0xa8, 0xed, 0x0a, 0xd4, 0x4a, 0x45, 0x55, 0x07, 0x40, 0x62, 0x01, 0x21, 0x05, 0x96, 0x02, + 0x52, 0x74, 0x3e, 0xbf, 0x38, 0x57, 0x6c, 0x9f, 0x75, 0x77, 0x0e, 0x64, 0xa8, 0xd4, 0x3f, 0xa1, + 0x73, 0xff, 0x82, 0xaa, 0x63, 0xff, 0x82, 0xd2, 0xa9, 0x4b, 0x25, 0xc4, 0x94, 0xb1, 0x38, 0x4b, + 0x47, 0xc6, 0x8e, 0x15, 0x67, 0x4c, 0x49, 0x14, 0xda, 0x2c, 0x6c, 0xef, 0xf4, 0xbe, 0xdf, 0x8f, + 0x9f, 0xef, 0xde, 0x7b, 0x78, 0xb9, 0x0d, 0xca, 0xe1, 0xc2, 0x55, 0xac, 0x05, 0x11, 0x75, 0x21, + 0x6e, 0xd1, 0x98, 0x81, 0xdf, 0x68, 0x72, 0x09, 0x47, 0x34, 0x0c, 0x1b, 0x89, 0x08, 0x39, 0xeb, + 0xb8, 0xc2, 0x7b, 0x03, 0x4c, 0x3b, 0x89, 0x14, 0x5a, 0x54, 0x1f, 0xe7, 0x26, 0x27, 0x37, 0x39, + 0xb7, 0x99, 0xe6, 0xec, 0x80, 0xeb, 0x56, 0xea, 0x39, 0x4c, 0x44, 0x6e, 0x20, 0x02, 0xe1, 0x1a, + 0xbb, 0x97, 0x36, 0xcd, 0xc9, 0x1c, 0x4c, 0x94, 0x63, 0xe7, 0x96, 0x46, 0xac, 0x45, 0x77, 0x12, + 0x50, 0x57, 0x9e, 0xf9, 0x7e, 0x8f, 0x48, 0x34, 0x17, 0x71, 0x91, 0xbc, 0xdf, 0x9f, 0xbc, 0xe9, + 0xab, 0xf5, 0xa7, 0xda, 0xa0, 0x20, 0x6e, 0xf7, 0xdb, 0x6b, 0x9f, 0xff, 0xc3, 0x95, 0x6d, 0xf3, + 0xdf, 0xd5, 0x17, 0x78, 0x32, 0x02, 0x4d, 0x7d, 0xaa, 0xa9, 0x85, 0x16, 0xd0, 0xe2, 0xd4, 0xd2, + 0x43, 0xa7, 0xff, 0x12, 0x72, 0xe1, 0x16, 0x68, 0xba, 0xdb, 0x49, 0xa0, 0x7e, 0x2d, 0xaf, 0x6e, + 0xe2, 0xff, 0x55, 0x47, 0x69, 0x88, 0x1a, 0xd7, 0x84, 0x31, 0x43, 0x78, 0x34, 0x40, 0xd8, 0x31, + 0xaa, 0x01, 0xce, 0x4c, 0xee, 0xdd, 0x2a, 0x68, 0xeb, 0x78, 0x5c, 0x25, 0xc0, 0xac, 0xb2, 0x41, + 0x3c, 0x75, 0x46, 0x7b, 0x09, 0x67, 0x27, 0x01, 0x66, 0x78, 0xc6, 0xbd, 0xd2, 0x2d, 0x7f, 0x3d, + 0xb1, 0xc6, 0x66, 0xd1, 0xd9, 0x89, 0xf5, 0xbd, 0x8c, 0xf7, 0x71, 0x79, 0x03, 0x74, 0x75, 0xb7, + 0xf9, 0xec, 0x98, 0xd9, 0x0a, 0x58, 0x2a, 0x21, 0x02, 0xd5, 0xb2, 0x3d, 0xaa, 0x38, 0xb3, 0x23, + 0x11, 0x73, 0x2d, 0xe4, 0x93, 0x85, 0xc1, 0xb4, 0xd2, 0x34, 0xf6, 0xa9, 0xf4, 0xff, 0x28, 0xda, + 0xa0, 0x6c, 0x2e, 0xec, 0x18, 0xf4, 0x91, 0x90, 0x87, 0xb6, 0x04, 0xea, 0xe3, 0x3d, 0x3c, 0x51, + 0x87, 0x24, 0xa4, 0x0c, 0xaa, 0xdb, 0xc3, 0x3f, 0x90, 0x2a, 0xf8, 0x1b, 0x3d, 0x4f, 0x0f, 0xa0, + 0x8f, 0x24, 0xd7, 0x80, 0x5f, 0xe3, 0xca, 0x9a, 0x04, 0xaa, 0xef, 0x06, 0xbd, 0x0e, 0x21, 0xdc, + 0x05, 0xfa, 0x00, 0x8f, 0x6f, 0x72, 0x75, 0x47, 0xf7, 0x5d, 0xdb, 0xc7, 0x93, 0xc5, 0x63, 0x57, + 0xb7, 0xf1, 0x44, 0xc0, 0x1a, 0xa6, 0x5f, 0xf2, 0xa6, 0x7d, 0x3e, 0x6a, 0xbf, 0x6c, 0x84, 0xc2, + 0xa3, 0xe1, 0x75, 0xd7, 0x54, 0x02, 0x76, 0x19, 0xd7, 0x7e, 0x21, 0x3c, 0xbd, 0xa3, 0xa9, 0x4e, + 0xd5, 0xc8, 0x73, 0x91, 0xcb, 0x87, 0xcc, 0xc5, 0x1e, 0x9e, 0xca, 0x97, 0x4a, 0x43, 0x42, 0x53, + 0x59, 0x63, 0x0b, 0xe5, 0xc5, 0xa9, 0xa5, 0x07, 0x43, 0xa7, 0xaa, 0x0e, 0xcd, 0x4b, 0xf3, 0xea, + 0xfc, 0xa7, 0xb7, 0xd6, 0x6d, 0x25, 0xd7, 0xb1, 0x28, 0xb4, 0xaa, 0xfa, 0x12, 0x63, 0x26, 0x62, + 0x9f, 0x9b, 0x69, 0xb6, 0xca, 0x43, 0xd1, 0x6b, 0x85, 0xc0, 0xd4, 0x75, 0x43, 0xbf, 0x72, 0xef, + 0xec, 0xd5, 0x2c, 0x9e, 0xc1, 0xd3, 0x45, 0xa9, 0x4e, 0xca, 0xfd, 0xd5, 0x0f, 0xe8, 0xf4, 0x9c, + 0x94, 0xba, 0xe7, 0xa4, 0x74, 0x71, 0x4e, 0xd0, 0xbb, 0x8c, 0xa0, 0x8f, 0x19, 0x41, 0xdf, 0x32, + 0x82, 0x4e, 0x33, 0x82, 0xba, 0x19, 0x41, 0x3f, 0x32, 0x82, 0x7e, 0x66, 0xa4, 0x74, 0x91, 0x11, + 0xf4, 0xbe, 0x47, 0x4a, 0x5f, 0x7a, 0x04, 0x9d, 0xf6, 0x48, 0xa9, 0xdb, 0x23, 0xa5, 0xbd, 0x83, + 0x40, 0x24, 0x87, 0x81, 0xd3, 0x16, 0xa1, 0x06, 0x29, 0xa9, 0x93, 0x2a, 0xd7, 0x04, 0x4d, 0x21, + 0x23, 0x3b, 0x91, 0xa2, 0xcd, 0x7d, 0x90, 0x76, 0x91, 0x76, 0x13, 0x2f, 0x10, 0x2e, 0x1c, 0xeb, + 0xab, 0xf5, 0xf4, 0x8f, 0x8d, 0xe8, 0x55, 0xcc, 0xc2, 0x5a, 0xfe, 0x1d, 0x00, 0x00, 0xff, 0xff, + 0xce, 0x37, 0x01, 0xea, 0xce, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/pkg.vespkg.go b/pbgo/extschema/schema/enhanced_firewall_policy/pkg.vespkg.go index 20ee8c3c5..d26a73ab7 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/pkg.vespkg.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/pkg.vespkg.go @@ -69,19 +69,19 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.enhanced_firewall_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -89,7 +89,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.source_aws_subnet_ids", @@ -97,26 +97,26 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.enhanced_firewall_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -124,7 +124,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.source_aws_subnet_ids", @@ -132,26 +132,26 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.enhanced_firewall_policy.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -159,7 +159,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "create_form.spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.rule_list.rules.#.source_aws_subnet_ids", @@ -167,23 +167,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "create_form.spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -191,7 +191,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "replace_form.spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rule_list.rules.#.source_aws_subnet_ids", @@ -199,23 +199,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "replace_form.spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -223,7 +223,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.source_aws_subnet_ids", @@ -231,26 +231,26 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.enhanced_firewall_policy.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -258,7 +258,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "items.#.get_spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.rule_list.rules.#.source_aws_subnet_ids", @@ -266,7 +266,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "items.#.get_spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -279,19 +279,19 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.enhanced_firewall_policy.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.allowed_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.allowed_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_destinations.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.denied_sources.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.destination_aws_subnet_ids", @@ -299,7 +299,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.destination_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.source_aws_subnet_ids", @@ -307,7 +307,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.rule_list.rules.#.source_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.pb.go b/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.pb.go index 946b5ba96..71d09f400 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.pb.go @@ -1082,109 +1082,110 @@ func init() { } var fileDescriptor_412e52950d2f149d = []byte{ - // 1629 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1a, 0xdb, - 0x15, 0xf7, 0x05, 0x4c, 0xe0, 0xe2, 0x8f, 0xc9, 0x6d, 0xe2, 0x60, 0x9a, 0x22, 0x4a, 0xa2, 0xc8, - 0xb2, 0xca, 0x90, 0xda, 0xf9, 0x74, 0xdb, 0xa4, 0xd8, 0x06, 0xcb, 0xa9, 0x63, 0xa7, 0x03, 0xb1, - 0xd2, 0x36, 0xd2, 0x68, 0x18, 0x0e, 0x78, 0x6a, 0x98, 0x99, 0xce, 0x5c, 0x70, 0x50, 0x65, 0x35, - 0x8a, 0xba, 0xac, 0xd4, 0x48, 0xdd, 0x55, 0x55, 0xd5, 0x4d, 0xab, 0xfe, 0x09, 0x91, 0xac, 0x4a, - 0x91, 0xba, 0x48, 0x94, 0x45, 0x15, 0xb5, 0x52, 0x95, 0x65, 0x83, 0xbb, 0xc8, 0x22, 0x8b, 0xbc, - 0xb7, 0x7a, 0xcb, 0xa7, 0xb9, 0x77, 0x86, 0x00, 0x26, 0x2f, 0x80, 0xbd, 0x62, 0xee, 0x3d, 0xe7, - 0xfc, 0xee, 0xf9, 0x9d, 0x7b, 0xce, 0x99, 0xc3, 0xe0, 0x1f, 0x34, 0xc0, 0x16, 0x35, 0x23, 0x6d, - 0xab, 0x3b, 0x50, 0x53, 0xd2, 0xa0, 0xef, 0x28, 0xba, 0x0a, 0x25, 0xb9, 0xac, 0x59, 0xb0, 0xa7, - 0x54, 0xab, 0xb2, 0x69, 0x54, 0x35, 0xb5, 0x99, 0x36, 0xeb, 0xc5, 0xaa, 0xa6, 0xca, 0xaa, 0x55, - 0x2f, 0x29, 0xa6, 0x26, 0x9a, 0x96, 0x41, 0x0d, 0x72, 0x89, 0x1b, 0x8b, 0xdc, 0x58, 0xfc, 0x94, - 0x71, 0x2c, 0x55, 0xd1, 0xe8, 0x4e, 0xbd, 0x28, 0xaa, 0x46, 0x2d, 0x5d, 0x31, 0x2a, 0x46, 0x9a, - 0x99, 0x17, 0xeb, 0x65, 0xb6, 0x62, 0x0b, 0xf6, 0xc4, 0x61, 0x63, 0xe7, 0x2b, 0x86, 0x51, 0xa9, - 0x42, 0x5a, 0x31, 0xb5, 0xb4, 0xa2, 0xeb, 0x06, 0x55, 0xa8, 0x66, 0xe8, 0xb6, 0x2b, 0xfd, 0xb6, - 0x2b, 0x6d, 0x63, 0x40, 0xcd, 0xa4, 0x4d, 0x57, 0xb8, 0x38, 0x20, 0x1d, 0xa3, 0xf8, 0x4b, 0x50, - 0xa9, 0x6b, 0xb4, 0x30, 0xa0, 0x11, 0x6d, 0x9a, 0xe0, 0x79, 0x11, 0xeb, 0xb1, 0xb1, 0x2c, 0xc3, - 0x6a, 0x7b, 0xd8, 0x2d, 0x33, 0xcc, 0x4e, 0xf7, 0x67, 0xbb, 0x85, 0x9d, 0x98, 0xc9, 0x6e, 0x51, - 0x03, 0x6c, 0xd0, 0x1b, 0x3d, 0xe6, 0x89, 0x1e, 0x1d, 0x0d, 0xf6, 0xe4, 0x2e, 0x8d, 0xe4, 0x33, - 0x84, 0x27, 0x57, 0x2c, 0x50, 0x28, 0x48, 0xf0, 0xab, 0x3a, 0xd8, 0x94, 0xdc, 0xc6, 0xa1, 0x1a, - 0x50, 0xa5, 0xa4, 0x50, 0x25, 0x8a, 0x12, 0x68, 0x2e, 0xb2, 0x70, 0x41, 0xec, 0xbe, 0xb9, 0x2d, - 0x16, 0x0e, 0x6e, 0x75, 0x17, 0xa8, 0x52, 0x68, 0x9a, 0x20, 0xb5, 0x8d, 0xc8, 0x2f, 0x70, 0xc0, - 0x36, 0x41, 0x8d, 0xfa, 0x98, 0xf1, 0x35, 0x71, 0xb0, 0x6b, 0x17, 0x39, 0x5e, 0xde, 0x04, 0xd5, - 0xc1, 0x5b, 0x9e, 0xfe, 0xe3, 0xfe, 0x84, 0x03, 0x23, 0x56, 0x54, 0xd9, 0xf9, 0x95, 0x18, 0xe8, - 0x52, 0xf8, 0xd5, 0xad, 0x20, 0x3f, 0x3f, 0xf9, 0x5b, 0x1f, 0x9e, 0xf2, 0x5c, 0xb7, 0x4d, 0x43, - 0xb7, 0x81, 0xfc, 0xf0, 0x88, 0xef, 0x89, 0xbe, 0xbe, 0xaf, 0x01, 0xed, 0xe3, 0xf8, 0x16, 0x9e, - 0xb6, 0x9b, 0x36, 0x85, 0x9a, 0xdc, 0x06, 0xf1, 0x33, 0x90, 0x4b, 0x3d, 0x20, 0x79, 0xa6, 0x75, - 0x14, 0x6a, 0x8a, 0x9b, 0xdf, 0xf5, 0x00, 0x1f, 0x74, 0x45, 0x62, 0x71, 0xd0, 0x48, 0xac, 0x01, - 0x1d, 0x22, 0x0c, 0xef, 0x11, 0x9e, 0x92, 0xc0, 0xac, 0x2a, 0x6a, 0xfb, 0x0a, 0x7f, 0x7c, 0x24, - 0x0c, 0x17, 0xfb, 0x86, 0xc1, 0x35, 0xeb, 0x13, 0x8a, 0x87, 0x5d, 0x9e, 0x5f, 0x1f, 0xd4, 0x73, - 0x17, 0xf0, 0x33, 0xde, 0x93, 0x34, 0x16, 0x2c, 0xb0, 0x8d, 0xba, 0xa5, 0x82, 0xdc, 0x00, 0xcb, - 0xd6, 0x0c, 0x9d, 0x45, 0x3a, 0xbc, 0x1c, 0x78, 0x77, 0x80, 0x90, 0x34, 0xed, 0x49, 0xb7, 0xb9, - 0xb0, 0x93, 0xee, 0x69, 0x3c, 0xdd, 0x66, 0xcb, 0x6f, 0x3d, 0xf9, 0x37, 0x84, 0xf1, 0x1a, 0x50, - 0x8f, 0xfd, 0x79, 0x1c, 0xd6, 0x95, 0x1a, 0xd8, 0xa6, 0xa2, 0x02, 0xa3, 0x1f, 0x96, 0x3e, 0x6e, - 0x10, 0x82, 0x03, 0xce, 0x82, 0x31, 0x0b, 0x4b, 0xec, 0x99, 0x94, 0xb1, 0x73, 0x22, 0x03, 0x93, - 0xcb, 0x86, 0x55, 0x53, 0x28, 0x73, 0x67, 0x6a, 0xe1, 0x47, 0x43, 0x5c, 0x99, 0xe7, 0x4e, 0x8e, - 0x01, 0xac, 0x18, 0x25, 0x90, 0xa6, 0xac, 0xae, 0xbd, 0xe4, 0x3f, 0x82, 0x38, 0xd2, 0xa1, 0x49, - 0xb6, 0x71, 0x44, 0x65, 0x09, 0xcc, 0x4e, 0x75, 0x83, 0x7d, 0x75, 0xb8, 0x82, 0x71, 0x59, 0x4b, - 0x98, 0x23, 0x39, 0x27, 0x91, 0x9f, 0xe1, 0x09, 0x8b, 0xc7, 0x88, 0x03, 0xfb, 0x87, 0xab, 0xc4, - 0xee, 0x6c, 0x92, 0x22, 0x2e, 0x16, 0x83, 0xee, 0x77, 0x75, 0x81, 0x6f, 0xb8, 0xba, 0xae, 0x92, - 0x1c, 0x3f, 0x89, 0x92, 0x3c, 0x75, 0x22, 0x25, 0x19, 0x3c, 0xe9, 0x92, 0x24, 0x79, 0x1c, 0xb4, - 0xa9, 0x42, 0xeb, 0x76, 0xf4, 0x2f, 0x7f, 0x42, 0x09, 0xff, 0x5c, 0x64, 0xe1, 0xca, 0xa0, 0xe8, - 0x79, 0x66, 0xc7, 0x9d, 0x5f, 0xf6, 0x3f, 0xdf, 0x47, 0x92, 0x0b, 0x45, 0xd6, 0xf1, 0x69, 0x0b, - 0xca, 0x60, 0x59, 0x9a, 0x5e, 0x91, 0xf9, 0x6b, 0xc8, 0x8e, 0x86, 0x18, 0xfa, 0xf9, 0x4f, 0x94, - 0x74, 0x99, 0xf1, 0x16, 0xda, 0x66, 0x7c, 0xdf, 0x26, 0xdb, 0x38, 0x5a, 0x82, 0x2a, 0x50, 0x28, - 0xc9, 0x5c, 0x06, 0xa5, 0x36, 0x62, 0x78, 0x00, 0xc4, 0x19, 0xd7, 0x5a, 0x72, 0x8d, 0x3d, 0xdc, - 0x07, 0x78, 0xb6, 0xa4, 0xd9, 0x4a, 0xb1, 0xda, 0x0f, 0x18, 0x0f, 0x00, 0x7c, 0xce, 0x33, 0xef, - 0x41, 0xee, 0xa8, 0xfa, 0x3b, 0x81, 0x10, 0x12, 0x7c, 0xc9, 0xbf, 0x22, 0x1c, 0xd9, 0xd0, 0xec, - 0x01, 0x2b, 0xfd, 0xbb, 0x78, 0xa2, 0xaa, 0x14, 0xa1, 0x2a, 0x97, 0xb5, 0x2a, 0x05, 0xcb, 0xad, - 0xf8, 0x08, 0xdb, 0xcb, 0xb1, 0x2d, 0x72, 0x01, 0x4f, 0x5a, 0x60, 0x1a, 0x16, 0x95, 0xcb, 0x1a, - 0x54, 0x4b, 0x76, 0xd4, 0x9f, 0xf0, 0xcf, 0x85, 0xa5, 0x09, 0xbe, 0x99, 0x63, 0x7b, 0xe4, 0x32, - 0x3e, 0xe3, 0x2a, 0xf1, 0x4b, 0xf1, 0x74, 0x03, 0x4c, 0x97, 0x70, 0x19, 0xbf, 0x42, 0x6e, 0x91, - 0x7c, 0x1f, 0xc4, 0x02, 0xf7, 0x93, 0x17, 0xfa, 0x3a, 0x85, 0x1a, 0x99, 0xc1, 0x41, 0x0a, 0xba, - 0xa2, 0x53, 0x96, 0x7b, 0x61, 0xc9, 0x5d, 0x8d, 0xd0, 0xae, 0x04, 0xec, 0xaf, 0x6b, 0x25, 0xde, - 0x31, 0x25, 0xe7, 0x91, 0x24, 0x70, 0xa4, 0x04, 0xb6, 0x6a, 0x69, 0xec, 0xdd, 0x1e, 0x8d, 0x70, - 0xa6, 0x1d, 0x5b, 0x24, 0x86, 0x43, 0x5e, 0x98, 0xa3, 0x13, 0x09, 0x34, 0x17, 0x92, 0xda, 0x6b, - 0xf2, 0x10, 0x07, 0x59, 0x50, 0x38, 0xa5, 0xc8, 0xc2, 0xea, 0xa0, 0x79, 0xdb, 0xcb, 0x51, 0xdc, - 0x60, 0x30, 0x59, 0x9d, 0x5a, 0x4d, 0xc9, 0xc5, 0x24, 0xbb, 0x38, 0xd2, 0x31, 0x96, 0xb9, 0x19, - 0xb1, 0x3e, 0xf2, 0x11, 0x99, 0x8f, 0x58, 0xfc, 0x9c, 0x4e, 0x74, 0x72, 0x13, 0x63, 0x63, 0x4f, - 0x07, 0x4b, 0x76, 0x46, 0x9d, 0x68, 0x98, 0x15, 0x79, 0xac, 0xe7, 0xac, 0x6d, 0x0d, 0xf6, 0xbc, - 0xdc, 0x0b, 0x33, 0x6d, 0x67, 0xa7, 0xab, 0x51, 0x4d, 0x9e, 0x44, 0xa3, 0x9a, 0x3a, 0x56, 0xa3, - 0xda, 0xc4, 0xa1, 0x0a, 0x50, 0xd6, 0x60, 0xdc, 0x96, 0x37, 0x4a, 0xb3, 0x92, 0x4e, 0x55, 0xf8, - 0x82, 0x3c, 0xc0, 0xd8, 0x4d, 0x5f, 0x1b, 0xa8, 0xdb, 0x42, 0x8e, 0xd1, 0xa0, 0xc2, 0x1c, 0x2c, - 0x0f, 0x34, 0x76, 0x13, 0x47, 0x3a, 0xee, 0xdd, 0xc9, 0xce, 0x5d, 0x68, 0xba, 0x99, 0xec, 0x3c, - 0x92, 0x33, 0x78, 0xbc, 0xa1, 0x54, 0xeb, 0x5e, 0x12, 0xf3, 0xc5, 0x92, 0xef, 0x06, 0x8a, 0xdd, - 0xc2, 0x42, 0xef, 0x7d, 0x0e, 0x63, 0x7f, 0x27, 0x10, 0x1a, 0x17, 0x82, 0xc9, 0xa7, 0x08, 0x4f, - 0x74, 0xe6, 0x09, 0xd9, 0xc4, 0xe3, 0x1a, 0x85, 0x9a, 0x1d, 0xe5, 0x7d, 0xf8, 0xc6, 0xa8, 0xc9, - 0x26, 0x71, 0x18, 0x72, 0x19, 0x07, 0xf9, 0xc8, 0x1e, 0xf5, 0x31, 0xc0, 0x68, 0x0f, 0x60, 0xd6, - 0x11, 0xb2, 0x70, 0xbb, 0x7a, 0xc9, 0x5d, 0x3c, 0xb9, 0xca, 0xda, 0xe5, 0xe8, 0x43, 0xc9, 0x1c, - 0x16, 0xca, 0x8a, 0x56, 0x95, 0xb5, 0x72, 0xbb, 0xad, 0xb2, 0x92, 0x0f, 0x49, 0x53, 0xce, 0xfe, - 0x7a, 0xd9, 0x6b, 0x97, 0xf3, 0x5f, 0x22, 0x7c, 0xb6, 0xef, 0x00, 0x42, 0x62, 0x78, 0x66, 0x2d, - 0x5b, 0x90, 0xa5, 0xfc, 0x3d, 0x39, 0xb7, 0x25, 0xdd, 0xcd, 0x14, 0xe4, 0xd5, 0x6c, 0x2e, 0x73, - 0x7f, 0xa3, 0x20, 0x8c, 0x91, 0xef, 0xe0, 0xd9, 0x1e, 0x59, 0x6e, 0x4b, 0x92, 0x57, 0xa4, 0x6c, - 0xa6, 0x90, 0x15, 0x10, 0x89, 0xe3, 0x58, 0x1f, 0xb1, 0x94, 0xbd, 0xb7, 0x91, 0x59, 0xc9, 0x0a, - 0x3e, 0x32, 0x8b, 0xcf, 0xf6, 0xc8, 0xf3, 0x85, 0x4c, 0xe1, 0x7e, 0x5e, 0xf0, 0x93, 0x73, 0xf8, - 0x5b, 0x3d, 0x22, 0x29, 0x9b, 0x59, 0x15, 0x02, 0xe4, 0x22, 0x4e, 0x1c, 0x11, 0xe4, 0xb2, 0x92, - 0xb4, 0xbe, 0xb9, 0x26, 0x6f, 0x2d, 0xdf, 0xc9, 0xae, 0x14, 0xf2, 0xc2, 0x78, 0x1f, 0xad, 0x65, - 0x69, 0xeb, 0x27, 0xd9, 0x4d, 0xae, 0x9c, 0xdd, 0x5c, 0xc9, 0xe6, 0x85, 0xe0, 0xc2, 0x3f, 0x31, - 0xf6, 0x67, 0xee, 0xad, 0x93, 0xaf, 0x10, 0x0e, 0xf2, 0x49, 0x88, 0x8c, 0x36, 0x39, 0xc5, 0xae, - 0x0d, 0x6b, 0xe6, 0x8e, 0x9d, 0xbf, 0x69, 0xbd, 0x88, 0xa6, 0xcb, 0x57, 0x1f, 0xa9, 0x29, 0x1b, - 0xd4, 0xba, 0x05, 0x35, 0xb0, 0x77, 0x52, 0x45, 0xc5, 0xd6, 0xd4, 0x54, 0xdd, 0x06, 0xeb, 0x7b, - 0x0d, 0xb0, 0x53, 0x9a, 0x91, 0xd2, 0x81, 0xee, 0x19, 0xd6, 0x6e, 0x6a, 0xcf, 0xd2, 0x28, 0x3c, - 0xf9, 0xcf, 0xff, 0xff, 0xe0, 0xcb, 0x25, 0x33, 0xee, 0x3f, 0xe4, 0x74, 0x3b, 0x05, 0xec, 0xf4, - 0xaf, 0xbd, 0xc6, 0x21, 0xb6, 0x37, 0xf7, 0x3f, 0xf9, 0xef, 0xd2, 0x5e, 0x42, 0xf3, 0xe4, 0x0b, - 0x84, 0xfd, 0x6b, 0x40, 0xc9, 0xc2, 0x50, 0x53, 0x2a, 0x27, 0xbd, 0x38, 0xc2, 0x64, 0x9b, 0x7c, - 0x8c, 0x5e, 0x3e, 0xf3, 0xa1, 0xd6, 0x8b, 0xe8, 0xf7, 0xfb, 0xd3, 0xae, 0x19, 0xba, 0x46, 0x8d, - 0x23, 0xcc, 0x2d, 0x50, 0x4a, 0x8c, 0x78, 0x86, 0xdc, 0xee, 0x47, 0x7c, 0x10, 0xbe, 0x5c, 0x6b, - 0x9f, 0xbc, 0x47, 0x38, 0xe0, 0x94, 0x29, 0x59, 0x1c, 0xae, 0xa8, 0x39, 0xeb, 0x2b, 0xa3, 0x74, - 0x82, 0x64, 0xf3, 0x78, 0xac, 0x97, 0xc8, 0x8d, 0x51, 0x59, 0x93, 0xdf, 0xf9, 0xf0, 0x29, 0x77, - 0x1c, 0x27, 0x23, 0xce, 0xef, 0xb1, 0xeb, 0x43, 0xdb, 0xb9, 0xbc, 0x7f, 0x8f, 0x46, 0xcd, 0xf0, - 0xed, 0xd8, 0x4f, 0x8f, 0x9d, 0xe1, 0x3d, 0xea, 0xfb, 0x4e, 0xc6, 0xff, 0x17, 0xe1, 0x20, 0xef, - 0xab, 0x83, 0x17, 0x7b, 0x57, 0x1f, 0x8e, 0xcd, 0x88, 0xfc, 0x83, 0x90, 0xe8, 0x7d, 0x10, 0x12, - 0xb3, 0x35, 0x93, 0x36, 0x93, 0xfb, 0xa3, 0x52, 0x5d, 0x9d, 0x3f, 0x6e, 0x4e, 0x2f, 0xa1, 0xf9, - 0x58, 0xe3, 0xf9, 0x01, 0xf2, 0xfd, 0xfb, 0x00, 0xa5, 0x06, 0x24, 0xc5, 0x5f, 0xc5, 0x6f, 0x0e, - 0x10, 0x6a, 0x1d, 0xa0, 0xc5, 0x11, 0xde, 0xe2, 0x4f, 0xfe, 0x15, 0xf5, 0x09, 0x68, 0xf9, 0xcf, - 0xe8, 0xd5, 0xad, 0xf1, 0x15, 0xe9, 0xfe, 0xea, 0xc6, 0xeb, 0xb7, 0xf1, 0xb1, 0x37, 0x6f, 0xe3, - 0x63, 0x1f, 0xde, 0xc6, 0xd1, 0xe3, 0x56, 0x1c, 0xfd, 0xbd, 0x15, 0x47, 0x2f, 0x5b, 0x71, 0xf4, - 0xba, 0x15, 0x47, 0xff, 0x6b, 0xc5, 0xd1, 0xbb, 0x56, 0x7c, 0xec, 0x43, 0x2b, 0x8e, 0x9e, 0x1e, - 0xc6, 0xc7, 0x9e, 0x1f, 0xc6, 0xd1, 0xeb, 0xc3, 0xf8, 0xd8, 0x9b, 0xc3, 0xf8, 0xd8, 0xcf, 0x1f, - 0x56, 0x0c, 0x73, 0xb7, 0x22, 0x36, 0x0c, 0x67, 0xa2, 0xb6, 0x14, 0xb1, 0x6e, 0xa7, 0xd9, 0x83, - 0xf3, 0xcf, 0x33, 0x65, 0x5a, 0x46, 0x43, 0x2b, 0x81, 0x95, 0xf2, 0xc4, 0x69, 0xb3, 0x58, 0x31, - 0xd2, 0xf0, 0x88, 0xba, 0x9f, 0xa4, 0x3e, 0xf3, 0x15, 0xad, 0x18, 0x64, 0xf7, 0xb4, 0xf8, 0x75, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x18, 0xb1, 0xc4, 0x66, 0x7a, 0x14, 0x00, 0x00, + // 1647 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x5d, 0x6c, 0x1b, 0x59, + 0x15, 0xce, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0xcf, 0xec, 0x65, 0x37, 0xeb, 0x98, 0x62, 0x19, 0xef, + 0x6a, 0x15, 0x45, 0x78, 0xbc, 0x4a, 0xf6, 0xa7, 0x1b, 0xa0, 0x8b, 0x93, 0xd8, 0x51, 0x4a, 0x7e, + 0xca, 0xd8, 0x8d, 0x0a, 0x54, 0x1a, 0x8d, 0xc7, 0xc7, 0xce, 0x10, 0x7b, 0x66, 0x98, 0x7b, 0xed, + 0xac, 0x85, 0x22, 0xa1, 0x15, 0xcf, 0x68, 0x05, 0x0f, 0x48, 0xcb, 0x8f, 0xe0, 0x01, 0x84, 0x90, + 0x78, 0xaf, 0x14, 0x21, 0xf5, 0x8d, 0xaa, 0x0f, 0xa8, 0x82, 0x97, 0x3e, 0x52, 0x87, 0x87, 0x3e, + 0xf4, 0xa1, 0x42, 0xe2, 0x1d, 0xcd, 0xbd, 0x33, 0xae, 0xed, 0xb8, 0xad, 0xed, 0xa4, 0x4f, 0x9e, + 0x7b, 0xcf, 0x39, 0xdf, 0x3d, 0xf7, 0x3b, 0x3f, 0x3e, 0x33, 0xf8, 0x9b, 0x2d, 0xa0, 0xb2, 0x61, + 0x65, 0xa9, 0x7e, 0x08, 0x0d, 0x2d, 0x0b, 0xe6, 0xa1, 0x66, 0xea, 0x50, 0x51, 0xab, 0x86, 0x03, + 0xc7, 0x5a, 0xbd, 0xae, 0xda, 0x56, 0xdd, 0xd0, 0xdb, 0x59, 0xbb, 0x59, 0xae, 0x1b, 0xba, 0xaa, + 0x3b, 0xcd, 0x8a, 0x66, 0x1b, 0xb2, 0xed, 0x58, 0xcc, 0x22, 0xef, 0x09, 0x63, 0x59, 0x18, 0xcb, + 0x2f, 0x32, 0x4e, 0x64, 0x6a, 0x06, 0x3b, 0x6c, 0x96, 0x65, 0xdd, 0x6a, 0x64, 0x6b, 0x56, 0xcd, + 0xca, 0x72, 0xf3, 0x72, 0xb3, 0xca, 0x57, 0x7c, 0xc1, 0x9f, 0x04, 0x6c, 0xe2, 0x6a, 0xcd, 0xb2, + 0x6a, 0x75, 0xc8, 0x6a, 0xb6, 0x91, 0xd5, 0x4c, 0xd3, 0x62, 0x1a, 0x33, 0x2c, 0x93, 0x7a, 0xd2, + 0xaf, 0x7a, 0xd2, 0x2e, 0x06, 0x34, 0x6c, 0xd6, 0xf6, 0x84, 0xab, 0x23, 0x5e, 0xc7, 0x2a, 0xff, + 0x08, 0x74, 0xe6, 0x19, 0xad, 0x8c, 0x68, 0xc4, 0xda, 0x36, 0xf8, 0x5e, 0x24, 0x06, 0x6c, 0x1c, + 0xc7, 0x72, 0xba, 0x1e, 0xf6, 0xcb, 0x2c, 0xbb, 0xd7, 0xfd, 0xc5, 0x7e, 0x61, 0x2f, 0x66, 0xba, + 0x5f, 0xd4, 0x02, 0x0a, 0x66, 0x6b, 0xc0, 0x3c, 0x35, 0xa0, 0x63, 0xc0, 0xb1, 0xda, 0xa7, 0x91, + 0xbe, 0x8b, 0xf0, 0xec, 0x86, 0x03, 0x1a, 0x03, 0x05, 0x7e, 0xdc, 0x04, 0xca, 0xc8, 0xa7, 0x38, + 0xd2, 0x00, 0xa6, 0x55, 0x34, 0xa6, 0xc5, 0x51, 0x0a, 0x2d, 0xc5, 0x56, 0xde, 0x91, 0xfb, 0x23, + 0xb7, 0xcf, 0xe9, 0x10, 0x56, 0xbb, 0xc0, 0xb4, 0x52, 0xdb, 0x06, 0xa5, 0x6b, 0x44, 0x7e, 0x88, + 0x43, 0xd4, 0x06, 0x3d, 0x1e, 0xe0, 0xc6, 0x1f, 0xc9, 0xa3, 0x85, 0x5d, 0x16, 0x78, 0x45, 0x1b, + 0x74, 0x17, 0x6f, 0x7d, 0xfe, 0xcb, 0x93, 0x19, 0x17, 0x46, 0xae, 0xe9, 0xaa, 0xfb, 0xab, 0x70, + 0xd0, 0xb5, 0xe8, 0x83, 0xeb, 0x61, 0x71, 0x7e, 0xfa, 0x67, 0x01, 0x3c, 0xe7, 0xbb, 0x4e, 0x6d, + 0xcb, 0xa4, 0x40, 0xbe, 0x75, 0xce, 0xf7, 0xd4, 0x50, 0xdf, 0xb7, 0x80, 0x0d, 0x71, 0x7c, 0x1f, + 0xcf, 0xd3, 0x36, 0x65, 0xd0, 0x50, 0xbb, 0x20, 0x41, 0x0e, 0xf2, 0xde, 0x00, 0x48, 0x91, 0x6b, + 0x9d, 0x87, 0x9a, 0x13, 0xe6, 0xbb, 0x3e, 0xe0, 0xed, 0x3e, 0x26, 0x56, 0x47, 0x65, 0x62, 0x0b, + 0xd8, 0x18, 0x34, 0x3c, 0x45, 0x78, 0x4e, 0x01, 0xbb, 0xae, 0xe9, 0xdd, 0x10, 0x7e, 0xe7, 0x1c, + 0x0d, 0xef, 0x0e, 0xa5, 0xc1, 0x33, 0x1b, 0x42, 0xc5, 0x9d, 0x3e, 0xcf, 0x3f, 0x1e, 0xd5, 0x73, + 0x0f, 0xf0, 0x15, 0xde, 0x93, 0x2c, 0x96, 0x1c, 0xa0, 0x56, 0xd3, 0xd1, 0x41, 0x6d, 0x81, 0x43, + 0x0d, 0xcb, 0xe4, 0x4c, 0x47, 0xd7, 0x43, 0x4f, 0x4e, 0x11, 0x52, 0xe6, 0x7d, 0xe9, 0x81, 0x10, + 0xf6, 0x5e, 0xf7, 0x0d, 0x3c, 0xdf, 0xbd, 0xad, 0x88, 0x7a, 0xfa, 0x4f, 0x08, 0xe3, 0x2d, 0x60, + 0xfe, 0xed, 0xaf, 0xe2, 0xa8, 0xa9, 0x35, 0x80, 0xda, 0x9a, 0x0e, 0xfc, 0xfa, 0x51, 0xe5, 0xf9, + 0x06, 0x21, 0x38, 0xe4, 0x2e, 0xf8, 0xcd, 0xa2, 0x0a, 0x7f, 0x26, 0x55, 0xec, 0x9e, 0xc8, 0xc1, + 0xd4, 0xaa, 0xe5, 0x34, 0x34, 0xc6, 0xdd, 0x99, 0x5b, 0xf9, 0xf6, 0x18, 0x21, 0xf3, 0xdd, 0x29, + 0x70, 0x80, 0x0d, 0xab, 0x02, 0xca, 0x9c, 0xd3, 0xb7, 0x97, 0xfe, 0x5b, 0x18, 0xc7, 0x7a, 0x34, + 0xc9, 0x01, 0x8e, 0xe9, 0x3c, 0x81, 0xf9, 0xa9, 0x1e, 0xd9, 0x1f, 0x8e, 0x57, 0x30, 0xde, 0xad, + 0x15, 0x2c, 0x90, 0xdc, 0x93, 0xc8, 0xf7, 0xf1, 0x8c, 0x23, 0x38, 0x12, 0xc0, 0xc1, 0xf1, 0x2a, + 0xb1, 0x3f, 0x9b, 0x94, 0x98, 0x87, 0xc5, 0xa1, 0x87, 0x85, 0x2e, 0xf4, 0x92, 0xd0, 0xf5, 0x95, + 0xe4, 0xf4, 0x65, 0x94, 0xe4, 0x95, 0x4b, 0x29, 0xc9, 0xf0, 0x65, 0x97, 0x24, 0x29, 0xe2, 0x30, + 0x65, 0x1a, 0x6b, 0xd2, 0xf8, 0xef, 0x7f, 0x83, 0x52, 0xc1, 0xa5, 0xd8, 0xca, 0x07, 0xa3, 0xa2, + 0x17, 0xb9, 0x9d, 0x70, 0x7e, 0x3d, 0x78, 0xef, 0x04, 0x29, 0x1e, 0x14, 0xd9, 0xc6, 0x6f, 0x38, + 0x50, 0x05, 0xc7, 0x31, 0xcc, 0x9a, 0x2a, 0xfe, 0x86, 0x68, 0x3c, 0xc2, 0xd1, 0xaf, 0xbe, 0xa0, + 0xa4, 0xab, 0xfc, 0xde, 0x52, 0xd7, 0x4c, 0xec, 0x53, 0x72, 0x80, 0xe3, 0x15, 0xa8, 0x03, 0x83, + 0x8a, 0x2a, 0x64, 0x50, 0xe9, 0x22, 0x46, 0x47, 0x40, 0x5c, 0xf0, 0xac, 0x15, 0xcf, 0xd8, 0xc7, + 0xbd, 0x8d, 0x17, 0x2b, 0x06, 0xd5, 0xca, 0xf5, 0x61, 0xc0, 0x78, 0x04, 0xe0, 0xb7, 0x7d, 0xf3, + 0x01, 0xe4, 0x9e, 0xaa, 0xbf, 0x11, 0x8a, 0x20, 0x29, 0x90, 0xfe, 0x23, 0xc2, 0xb1, 0x1d, 0x83, + 0x8e, 0x58, 0xe9, 0x5f, 0xc7, 0x33, 0x75, 0xad, 0x0c, 0x75, 0xb5, 0x6a, 0xd4, 0x19, 0x38, 0x5e, + 0xc5, 0xc7, 0xf8, 0x5e, 0x81, 0x6f, 0x91, 0x77, 0xf0, 0xac, 0x03, 0xb6, 0xe5, 0x30, 0xb5, 0x6a, + 0x40, 0xbd, 0x42, 0xe3, 0xc1, 0x54, 0x70, 0x29, 0xaa, 0xcc, 0x88, 0xcd, 0x02, 0xdf, 0x23, 0xef, + 0xe3, 0x37, 0x3d, 0x25, 0x11, 0x14, 0x5f, 0x37, 0xc4, 0x75, 0x89, 0x90, 0x89, 0x10, 0x0a, 0x8b, + 0xf4, 0xd3, 0x30, 0x96, 0x84, 0x9f, 0xa2, 0xd0, 0xb7, 0x19, 0x34, 0xc8, 0x02, 0x0e, 0x33, 0x30, + 0x35, 0x93, 0xf1, 0xdc, 0x8b, 0x2a, 0xde, 0x6a, 0x82, 0x76, 0x25, 0xe1, 0x60, 0xd3, 0xa8, 0x88, + 0x8e, 0xa9, 0xb8, 0x8f, 0x24, 0x85, 0x63, 0x15, 0xa0, 0xba, 0x63, 0xf0, 0xff, 0xf6, 0x78, 0x4c, + 0xdc, 0xb4, 0x67, 0x8b, 0x24, 0x70, 0xc4, 0xa7, 0x39, 0x3e, 0x93, 0x42, 0x4b, 0x11, 0xa5, 0xbb, + 0x26, 0x77, 0x70, 0x98, 0x93, 0x22, 0xae, 0x14, 0x5b, 0xd9, 0x1c, 0x35, 0x6f, 0x07, 0xef, 0x28, + 0xef, 0x70, 0x98, 0xbc, 0xc9, 0x9c, 0xb6, 0xe2, 0x61, 0x92, 0x23, 0x1c, 0xeb, 0x19, 0xcb, 0xbc, + 0x8c, 0xd8, 0x9e, 0xf8, 0x88, 0xdc, 0x73, 0x2c, 0x71, 0x4e, 0x2f, 0x3a, 0xf9, 0x04, 0x63, 0xeb, + 0xd8, 0x04, 0x47, 0x75, 0x47, 0x9d, 0x78, 0x94, 0x17, 0x79, 0x62, 0xe0, 0xac, 0x03, 0x03, 0x8e, + 0xfd, 0xdc, 0x8b, 0x72, 0x6d, 0x77, 0xa7, 0xaf, 0x51, 0xcd, 0x5e, 0x46, 0xa3, 0x9a, 0xbb, 0x50, + 0xa3, 0xda, 0xc3, 0x91, 0x1a, 0x30, 0xde, 0x60, 0xbc, 0x96, 0x37, 0x49, 0xb3, 0x52, 0xae, 0xd4, + 0xc4, 0x82, 0xdc, 0xc6, 0xd8, 0x4b, 0x5f, 0x0a, 0xcc, 0x6b, 0x21, 0x17, 0x68, 0x50, 0x51, 0x01, + 0x56, 0x04, 0x96, 0xf8, 0x04, 0xc7, 0x7a, 0xe2, 0xee, 0x66, 0xe7, 0x11, 0xb4, 0xbd, 0x4c, 0x76, + 0x1f, 0xc9, 0x9b, 0x78, 0xba, 0xa5, 0xd5, 0x9b, 0x7e, 0x12, 0x8b, 0xc5, 0x5a, 0xe0, 0x1a, 0x4a, + 0x5c, 0xc7, 0xd2, 0x60, 0x3c, 0xc7, 0xb1, 0xbf, 0x11, 0x8a, 0x4c, 0x4b, 0xe1, 0xf4, 0x17, 0x08, + 0xcf, 0xf4, 0xe6, 0x09, 0xd9, 0xc3, 0xd3, 0x06, 0x83, 0x06, 0x8d, 0x8b, 0x3e, 0x7c, 0x6d, 0xd2, + 0x64, 0x53, 0x04, 0x0c, 0x79, 0x1f, 0x87, 0xc5, 0xc8, 0x1e, 0x0f, 0x70, 0xc0, 0xf8, 0x00, 0x60, + 0xde, 0x15, 0x72, 0xba, 0x3d, 0xbd, 0xf4, 0x11, 0x9e, 0xdd, 0xe4, 0xed, 0x72, 0xf2, 0xa1, 0x64, + 0x09, 0x4b, 0x55, 0xcd, 0xa8, 0xab, 0x46, 0xb5, 0xdb, 0x56, 0x79, 0xc9, 0x47, 0x94, 0x39, 0x77, + 0x7f, 0xbb, 0xea, 0xb7, 0xcb, 0xe5, 0xff, 0x22, 0xfc, 0xd6, 0xd0, 0x01, 0x84, 0x24, 0xf0, 0xc2, + 0x56, 0xbe, 0xa4, 0x2a, 0xc5, 0x9b, 0x6a, 0x61, 0x5f, 0xd9, 0xcd, 0x95, 0xd4, 0xcd, 0x7c, 0x21, + 0x77, 0x6b, 0xa7, 0x24, 0x4d, 0x91, 0xaf, 0xe1, 0xc5, 0x01, 0x59, 0x61, 0x5f, 0x51, 0x37, 0x94, + 0x7c, 0xae, 0x94, 0x97, 0x10, 0x49, 0xe2, 0xc4, 0x10, 0xb1, 0x92, 0xbf, 0xb9, 0x93, 0xdb, 0xc8, + 0x4b, 0x01, 0xb2, 0x88, 0xdf, 0x1a, 0x90, 0x17, 0x4b, 0xb9, 0xd2, 0xad, 0xa2, 0x14, 0x24, 0x6f, + 0xe3, 0xaf, 0x0c, 0x88, 0x94, 0x7c, 0x6e, 0x53, 0x0a, 0x91, 0x77, 0x71, 0xea, 0x9c, 0xa0, 0x90, + 0x57, 0x94, 0xed, 0xbd, 0x2d, 0x75, 0x7f, 0xfd, 0x46, 0x7e, 0xa3, 0x54, 0x94, 0xa6, 0x87, 0x68, + 0xad, 0x2b, 0xfb, 0xdf, 0xcd, 0xef, 0x09, 0xe5, 0xfc, 0xde, 0x46, 0xbe, 0x28, 0x85, 0x57, 0x3a, + 0x31, 0x1c, 0xcc, 0xdd, 0xdc, 0x26, 0xbf, 0x0a, 0xe0, 0xb0, 0x98, 0x84, 0xc8, 0x64, 0x93, 0x53, + 0xe2, 0xa3, 0x71, 0xcd, 0xbc, 0xb1, 0xf3, 0xb7, 0xa8, 0xf3, 0xf7, 0xf8, 0x6e, 0xf5, 0xc3, 0xcf, + 0xf4, 0x0c, 0x05, 0xbd, 0xe9, 0x40, 0x03, 0xe8, 0x61, 0xa6, 0xac, 0x51, 0x43, 0xcf, 0x34, 0x29, + 0x38, 0xdf, 0x18, 0x14, 0x51, 0xa6, 0x99, 0x15, 0xcd, 0xa9, 0x08, 0x69, 0x0b, 0x68, 0xc6, 0xb0, + 0x32, 0x26, 0xb0, 0x63, 0xcb, 0x39, 0xca, 0x1c, 0x3b, 0x06, 0x83, 0xcf, 0xff, 0xf5, 0x9f, 0x5f, + 0x06, 0x0a, 0xe9, 0x9c, 0xf7, 0x02, 0x9d, 0xed, 0x66, 0x08, 0xcd, 0xfe, 0xc4, 0xef, 0x2b, 0x72, + 0x77, 0xf3, 0xe4, 0x85, 0x2f, 0x9f, 0x74, 0x0d, 0x2d, 0x93, 0x5f, 0x04, 0x70, 0x70, 0x0b, 0x18, + 0x59, 0x19, 0x6b, 0x88, 0x15, 0x9c, 0xac, 0x4e, 0x30, 0xf8, 0xa6, 0xff, 0x80, 0xee, 0xdf, 0x0d, + 0xb8, 0xa4, 0x28, 0xc3, 0x49, 0x69, 0x58, 0xa6, 0xc1, 0xac, 0x97, 0xf0, 0xe2, 0x2b, 0x0c, 0x50, + 0xe3, 0x80, 0x56, 0xe1, 0xcc, 0xe4, 0xc8, 0xa7, 0xc3, 0x98, 0x19, 0x85, 0x10, 0xa1, 0x75, 0x42, + 0x7e, 0x1e, 0xc0, 0x21, 0xb7, 0xcc, 0xc9, 0xea, 0x78, 0x4d, 0x41, 0xd0, 0xf2, 0xc1, 0x24, 0x9d, + 0x24, 0xfd, 0xe5, 0xeb, 0xe6, 0x65, 0x8d, 0x5c, 0x9b, 0x94, 0x17, 0xf2, 0x97, 0x00, 0xbe, 0xe2, + 0x0d, 0xfc, 0x64, 0xc2, 0x37, 0x84, 0xc4, 0xc7, 0x63, 0xdb, 0x79, 0xcc, 0xfc, 0xf5, 0x35, 0x95, + 0xd0, 0x41, 0xe2, 0x7b, 0x17, 0x2e, 0xa1, 0x01, 0xf5, 0x13, 0xb7, 0xa4, 0xfe, 0x87, 0x70, 0x58, + 0xf4, 0xf5, 0xd1, 0x9b, 0x4d, 0xdf, 0xff, 0x40, 0x62, 0x41, 0x16, 0x1f, 0xa4, 0x64, 0xff, 0x83, + 0x94, 0x9c, 0x6f, 0xd8, 0xac, 0x9d, 0xfe, 0xf5, 0x6b, 0x62, 0x62, 0x73, 0xf9, 0xa2, 0x25, 0xb3, + 0x86, 0x96, 0x13, 0xad, 0x7b, 0xa7, 0x28, 0xf0, 0xcf, 0x53, 0x94, 0x19, 0xf1, 0xce, 0x62, 0x52, + 0x78, 0x74, 0x8a, 0x50, 0xe7, 0x14, 0xad, 0x4e, 0x30, 0x64, 0x7c, 0xfe, 0x8f, 0x78, 0x40, 0x42, + 0xeb, 0xbf, 0x43, 0x0f, 0xae, 0x4f, 0x6f, 0x28, 0xb7, 0x36, 0x77, 0x1e, 0x3e, 0x4e, 0x4e, 0x3d, + 0x7a, 0x9c, 0x9c, 0x7a, 0xf6, 0x38, 0x89, 0x7e, 0xda, 0x49, 0xa2, 0x3f, 0x77, 0x92, 0xe8, 0x7e, + 0x27, 0x89, 0x1e, 0x76, 0x92, 0xe8, 0xdf, 0x9d, 0x24, 0x7a, 0xd2, 0x49, 0x4e, 0x3d, 0xeb, 0x24, + 0xd1, 0x17, 0x67, 0xc9, 0xa9, 0x7b, 0x67, 0x49, 0xf4, 0xf0, 0x2c, 0x39, 0xf5, 0xe8, 0x2c, 0x39, + 0xf5, 0x83, 0x3b, 0x35, 0xcb, 0x3e, 0xaa, 0xc9, 0x2d, 0xcb, 0x1d, 0xf8, 0x1d, 0x4d, 0x6e, 0xd2, + 0x2c, 0x7f, 0x70, 0x5f, 0x8c, 0x33, 0xb6, 0x63, 0xb5, 0x8c, 0x0a, 0x38, 0x19, 0x5f, 0x9c, 0xb5, + 0xcb, 0x35, 0x2b, 0x0b, 0x9f, 0x31, 0xef, 0x8b, 0xd9, 0x2b, 0x3e, 0xf2, 0x95, 0xc3, 0x3c, 0x8c, + 0xab, 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x27, 0x23, 0xee, 0xfa, 0x19, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.vesapi.go index f97b9110c..13882d835 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/public_crudapi.vesapi.go @@ -2480,11 +2480,10 @@ var APISwaggerJSON string = `{ "x-ves-example": "app != web" }, "source_prefix_list": { - "description": "Exclusive with [all_sources inside_sources outside_sources source_aws_vpc_ids source_ip_prefix_set source_label_selector]\n Addresses that match one of the prefix in the list\n\nExample: - \"192.168.20.0/24\"-", - "title": "ipv4 prefix list", + "description": "Exclusive with [all_sources inside_sources outside_sources source_aws_vpc_ids source_ip_prefix_set source_label_selector]\n Addresses that match one of the prefix in the list\n list contains sublist of both v4 and v6 prfix list", + "title": "ip prefix list", "$ref": "#/definitions/viewsPrefixStringListType", - "x-displayname": "IPv4 Prefix List", - "x-ves-example": "192.168.20.0/24" + "x-displayname": "IP Prefix List" } } }, @@ -3313,10 +3312,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3373,10 +3376,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3435,10 +3442,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/public_custom_data_api.pb.go b/pbgo/extschema/schema/enhanced_firewall_policy/public_custom_data_api.pb.go index 51f801f89..1ca78b5ef 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/public_custom_data_api.pb.go @@ -548,62 +548,63 @@ func init() { } var fileDescriptor_78002c3fd5897c0d = []byte{ - // 879 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xec, 0x3a, 0x6e, 0x3c, 0xa6, 0x60, 0x8d, 0x10, 0x5a, 0x8c, 0xb5, 0x04, 0x4b, 0x40, - 0xa8, 0xba, 0x5e, 0x61, 0xc4, 0x05, 0xb8, 0x38, 0xae, 0x2b, 0x8c, 0xd2, 0x3a, 0xda, 0x86, 0x4a, - 0x20, 0xa4, 0xd5, 0x78, 0xf7, 0x79, 0x3d, 0x74, 0x77, 0x67, 0xd9, 0x99, 0x75, 0x1b, 0x01, 0x52, - 0xd5, 0x3b, 0x12, 0x12, 0x12, 0xe2, 0xc0, 0x01, 0x2e, 0x88, 0x2b, 0x57, 0x7a, 0xc9, 0x0d, 0x4e, - 0x55, 0x04, 0x97, 0x1e, 0x89, 0xc3, 0x01, 0x6e, 0xf9, 0x13, 0x90, 0x67, 0x37, 0x69, 0x5c, 0xea, - 0x36, 0x52, 0x73, 0x7b, 0x6f, 0xbe, 0x37, 0xdf, 0xbc, 0x5f, 0xf3, 0x1e, 0xee, 0x4d, 0x41, 0xb4, - 0x19, 0xb7, 0x85, 0x37, 0x81, 0x88, 0xda, 0x10, 0x4f, 0x68, 0xec, 0x81, 0xef, 0x8e, 0x59, 0x0a, - 0x37, 0x69, 0x18, 0xba, 0x09, 0x0f, 0x99, 0xb7, 0x63, 0x27, 0xd9, 0x28, 0x64, 0x9e, 0xeb, 0x65, - 0x42, 0xf2, 0xc8, 0xf5, 0xa9, 0xa4, 0x2e, 0x4d, 0x58, 0x3b, 0x49, 0xb9, 0xe4, 0xe4, 0xb5, 0x9c, - 0xa4, 0x9d, 0x93, 0xb4, 0x97, 0x91, 0x34, 0xac, 0x80, 0xc9, 0x49, 0x36, 0x6a, 0x7b, 0x3c, 0xb2, - 0x03, 0x1e, 0x70, 0x5b, 0x5d, 0x1f, 0x65, 0x63, 0xa5, 0x29, 0x45, 0x49, 0x39, 0x6d, 0xa3, 0x19, - 0x70, 0x1e, 0x84, 0x60, 0xd3, 0x84, 0xd9, 0x34, 0x8e, 0xb9, 0xa4, 0x92, 0xf1, 0x58, 0x14, 0xe8, - 0x4b, 0x8b, 0x9e, 0xf3, 0xe4, 0x24, 0xf8, 0xe2, 0x22, 0x28, 0x77, 0x12, 0x38, 0x82, 0x9a, 0x8b, - 0xd0, 0x94, 0x86, 0xcc, 0xa7, 0x12, 0x0a, 0xb4, 0xf5, 0x10, 0x0a, 0x02, 0xe2, 0xe9, 0x22, 0x79, - 0xeb, 0x2b, 0x1d, 0xbf, 0xd2, 0x2f, 0x62, 0xbc, 0x5c, 0x84, 0xb8, 0xa5, 0x22, 0x7c, 0x9f, 0x49, - 0xe1, 0xc0, 0x67, 0x19, 0x08, 0x49, 0x9a, 0xb8, 0x1a, 0xd3, 0x08, 0x44, 0x42, 0x3d, 0x30, 0xd0, - 0x1a, 0x5a, 0xaf, 0x3a, 0x0f, 0x0e, 0x48, 0x8a, 0x9f, 0x09, 0xe9, 0x08, 0x42, 0x77, 0xcc, 0x42, - 0x09, 0xa9, 0xa1, 0xad, 0xe9, 0xeb, 0xb5, 0xce, 0xb0, 0x7d, 0xba, 0x4c, 0xb6, 0x1f, 0xfd, 0xfc, - 0x15, 0x90, 0x29, 0xf3, 0x36, 0xe7, 0xbc, 0x97, 0x15, 0xad, 0x53, 0x0b, 0x1f, 0x28, 0xc4, 0xc7, - 0xab, 0x41, 0xca, 0xb3, 0xc4, 0x1d, 0xed, 0x18, 0xfa, 0x9a, 0xbe, 0xfe, 0x6c, 0x67, 0x70, 0x66, - 0xef, 0x39, 0xe7, 0x14, 0xf5, 0xc6, 0x0e, 0x79, 0x03, 0x63, 0x21, 0x69, 0x2a, 0x5d, 0xc9, 0x22, - 0x30, 0xca, 0xf3, 0xc0, 0x37, 0xf0, 0xaf, 0xff, 0xee, 0xea, 0x2b, 0xa9, 0xfe, 0x5d, 0x19, 0x39, - 0x55, 0x85, 0x6e, 0xb3, 0x08, 0xc8, 0xab, 0x78, 0x15, 0x62, 0x3f, 0x37, 0x5c, 0xf9, 0x9f, 0xe1, - 0x39, 0x88, 0x7d, 0x65, 0x66, 0xe2, 0xb2, 0x90, 0x90, 0x18, 0x95, 0x05, 0x93, 0x1f, 0xca, 0xc8, - 0x51, 0xe7, 0xad, 0x7b, 0x08, 0xbf, 0x7e, 0xca, 0x84, 0x10, 0x17, 0xaf, 0xa8, 0x94, 0xa8, 0x8a, - 0x9c, 0x69, 0x02, 0x72, 0x5e, 0x72, 0x11, 0x6b, 0x3c, 0x31, 0x34, 0xc5, 0xde, 0x7c, 0x88, 0xfd, - 0x84, 0xf9, 0x30, 0x71, 0x34, 0x9e, 0x90, 0xe7, 0xf1, 0xca, 0x94, 0x86, 0x19, 0x18, 0xba, 0x6a, - 0x90, 0x5c, 0x69, 0xfd, 0x88, 0x70, 0x73, 0x79, 0x83, 0x0d, 0xfc, 0x27, 0xf4, 0xd6, 0x0b, 0xb8, - 0x92, 0x7b, 0xad, 0xdc, 0xa8, 0x3a, 0x85, 0x46, 0x5e, 0xc6, 0xb5, 0x5c, 0x72, 0xd3, 0x2c, 0x3c, - 0x7a, 0x12, 0xe7, 0x47, 0x4e, 0x16, 0xaa, 0x8b, 0xd4, 0x9b, 0x77, 0x7a, 0x5e, 0x36, 0xa7, 0xd0, - 0x08, 0xc1, 0x65, 0xc1, 0x24, 0xe4, 0x05, 0x70, 0x94, 0xdc, 0xfa, 0x09, 0xe1, 0xc6, 0x72, 0x1f, - 0xc9, 0x36, 0xd6, 0x98, 0xaf, 0x5c, 0xab, 0x75, 0x2e, 0x3d, 0x5d, 0x92, 0xf3, 0x98, 0x1d, 0x8d, - 0xf9, 0xa4, 0x83, 0x2b, 0x91, 0xca, 0x61, 0xf1, 0x5f, 0x1a, 0x8f, 0x4c, 0xf0, 0xf5, 0x79, 0x12, - 0x9d, 0xc2, 0xb2, 0xf5, 0x3d, 0xc2, 0xad, 0xc7, 0xfd, 0x56, 0x91, 0xf0, 0x58, 0x00, 0xb9, 0x8e, - 0xcb, 0xf3, 0xa9, 0x66, 0x20, 0x45, 0xbc, 0xf1, 0xf4, 0x2e, 0x3b, 0x8a, 0xef, 0xb8, 0x79, 0xb5, - 0x85, 0xe6, 0x3d, 0xd4, 0x8a, 0xe6, 0xbd, 0x00, 0xcb, 0x66, 0xc9, 0x89, 0x66, 0x21, 0xe7, 0x71, - 0xf5, 0x6a, 0xf7, 0x4a, 0xff, 0xda, 0x56, 0xb7, 0xd7, 0xaf, 0x97, 0x08, 0xc6, 0x95, 0xad, 0xe1, - 0xe6, 0xa0, 0xf7, 0x51, 0x1d, 0x91, 0xe7, 0x70, 0x2d, 0x97, 0x5d, 0xe7, 0xc3, 0xcd, 0x7e, 0x5d, - 0x9b, 0x83, 0xdd, 0xde, 0xf6, 0x60, 0x78, 0xb5, 0xae, 0x93, 0x55, 0x5c, 0xbe, 0x36, 0xd8, 0xee, - 0xd7, 0xcb, 0x9d, 0xdb, 0x3a, 0x3e, 0xdf, 0x53, 0xc3, 0xfb, 0x12, 0x95, 0xb4, 0xbb, 0x35, 0x20, - 0xbf, 0x68, 0x8f, 0x2d, 0xe0, 0xe0, 0x0c, 0x32, 0x90, 0x4f, 0xc2, 0xc6, 0x07, 0x67, 0x41, 0x95, - 0x97, 0xa9, 0xf5, 0xc5, 0xec, 0x37, 0xe3, 0xcd, 0xf1, 0xdb, 0xb7, 0x3c, 0x4b, 0x80, 0x97, 0xa5, - 0x10, 0x81, 0x98, 0x58, 0x23, 0x2a, 0x98, 0x67, 0x45, 0x3c, 0x66, 0x92, 0xa7, 0x17, 0xa7, 0x20, - 0x2c, 0xc6, 0xad, 0x18, 0xe4, 0x4d, 0x9e, 0xde, 0xb0, 0x52, 0xa0, 0xfe, 0x9d, 0x3f, 0xff, 0xfe, - 0x46, 0xeb, 0xb6, 0xde, 0x2b, 0xd6, 0x98, 0x7d, 0xfc, 0x57, 0x84, 0xfd, 0xf9, 0xb1, 0xfc, 0xe5, - 0xf2, 0xed, 0x37, 0x61, 0x52, 0xbc, 0x83, 0x2e, 0x34, 0xde, 0xdd, 0xbd, 0x8b, 0xf4, 0x3f, 0xee, - 0x22, 0xeb, 0x94, 0x01, 0x0d, 0x47, 0x9f, 0x82, 0x27, 0xef, 0xdc, 0x33, 0x34, 0x03, 0x6d, 0x7c, - 0x8b, 0xf6, 0xf6, 0xcd, 0xd2, 0xfd, 0x7d, 0xb3, 0x74, 0xb8, 0x6f, 0xa2, 0xdb, 0x33, 0x13, 0xfd, - 0x3c, 0x33, 0xd1, 0xef, 0x33, 0x13, 0xed, 0xcd, 0x4c, 0xf4, 0xd7, 0xcc, 0x44, 0xff, 0xcc, 0xcc, - 0xd2, 0xe1, 0xcc, 0x44, 0x5f, 0x1f, 0x98, 0xa5, 0xdd, 0x03, 0x13, 0xed, 0x1d, 0x98, 0xa5, 0xfb, - 0x07, 0x66, 0xe9, 0xe3, 0x4f, 0x02, 0x9e, 0xdc, 0x08, 0xda, 0x53, 0x3e, 0x9f, 0x61, 0x29, 0x6d, - 0x67, 0xc2, 0x56, 0xc2, 0x98, 0xa7, 0x91, 0x95, 0xa4, 0x7c, 0xca, 0x7c, 0x48, 0xad, 0x23, 0xd8, - 0x4e, 0x46, 0x01, 0xb7, 0xe1, 0x96, 0x2c, 0x96, 0xd8, 0x13, 0x76, 0xfb, 0xa8, 0xa2, 0xd6, 0xda, - 0x5b, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x65, 0xe4, 0x92, 0xca, 0x0c, 0x08, 0x00, 0x00, + // 891 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x4f, 0x8b, 0x1c, 0x45, + 0x14, 0x9f, 0xea, 0x9e, 0xdd, 0xec, 0xd4, 0x18, 0x1d, 0x0a, 0x91, 0x76, 0x1c, 0xda, 0x75, 0x40, + 0x5d, 0x43, 0xba, 0x1b, 0x46, 0xbc, 0xa8, 0x97, 0xd9, 0xc9, 0x04, 0x47, 0x36, 0x99, 0xa5, 0x77, + 0x0d, 0x28, 0x42, 0x53, 0xdd, 0x5d, 0xd3, 0x53, 0xa6, 0xbb, 0xab, 0xad, 0xaa, 0x9e, 0x64, 0x11, + 0x41, 0x72, 0x17, 0x04, 0x41, 0x3c, 0x88, 0x28, 0x82, 0xf8, 0x19, 0xcc, 0x65, 0x6f, 0x7a, 0x0a, + 0x8b, 0x7a, 0xc8, 0xd1, 0x9d, 0xf5, 0xa0, 0xb7, 0xfd, 0x08, 0x32, 0xd5, 0xbd, 0x9b, 0x9d, 0x4d, + 0x26, 0x59, 0xc8, 0xde, 0xde, 0xab, 0xdf, 0xab, 0x5f, 0xbd, 0x7f, 0xf5, 0x1e, 0xec, 0x4d, 0x88, + 0xb0, 0x29, 0x73, 0x44, 0x30, 0x26, 0x09, 0x76, 0x48, 0x3a, 0xc6, 0x69, 0x40, 0x42, 0x6f, 0x44, + 0x39, 0xb9, 0x85, 0xe3, 0xd8, 0xcb, 0x58, 0x4c, 0x83, 0x1d, 0x27, 0xcb, 0xfd, 0x98, 0x06, 0x5e, + 0x90, 0x0b, 0xc9, 0x12, 0x2f, 0xc4, 0x12, 0x7b, 0x38, 0xa3, 0x76, 0xc6, 0x99, 0x64, 0xe8, 0xb5, + 0x82, 0xc4, 0x2e, 0x48, 0xec, 0x45, 0x24, 0x4d, 0x2b, 0xa2, 0x72, 0x9c, 0xfb, 0x76, 0xc0, 0x12, + 0x27, 0x62, 0x11, 0x73, 0xd4, 0x75, 0x3f, 0x1f, 0x29, 0x4d, 0x29, 0x4a, 0x2a, 0x68, 0x9b, 0xad, + 0x88, 0xb1, 0x28, 0x26, 0x0e, 0xce, 0xa8, 0x83, 0xd3, 0x94, 0x49, 0x2c, 0x29, 0x4b, 0x45, 0x89, + 0xbe, 0x34, 0xef, 0x39, 0xcb, 0x4e, 0x82, 0x2f, 0xce, 0x83, 0x72, 0x27, 0x23, 0x47, 0x50, 0x6b, + 0x1e, 0x9a, 0xe0, 0x98, 0x86, 0x58, 0x92, 0x12, 0x6d, 0x9f, 0x42, 0x89, 0x20, 0xe9, 0x64, 0x9e, + 0xbc, 0xfd, 0xa5, 0x0e, 0x5f, 0xe9, 0x97, 0x31, 0x5e, 0x2d, 0x43, 0xdc, 0x54, 0x11, 0xbe, 0x47, + 0xa5, 0x70, 0xc9, 0xa7, 0x39, 0x11, 0x12, 0xb5, 0x60, 0x2d, 0xc5, 0x09, 0x11, 0x19, 0x0e, 0x88, + 0x01, 0x56, 0xc1, 0x5a, 0xcd, 0x7d, 0x70, 0x80, 0x38, 0x7c, 0x26, 0xc6, 0x3e, 0x89, 0xbd, 0x11, + 0x8d, 0x25, 0xe1, 0x86, 0xb6, 0xaa, 0xaf, 0xd5, 0x3b, 0x43, 0xfb, 0x6c, 0x99, 0xb4, 0x1f, 0xfd, + 0xfc, 0x35, 0x22, 0x39, 0x0d, 0x36, 0x66, 0xbc, 0x57, 0x15, 0xad, 0x5b, 0x8f, 0x1f, 0x28, 0x28, + 0x84, 0x2b, 0x11, 0x67, 0x79, 0xe6, 0xf9, 0x3b, 0x86, 0xbe, 0xaa, 0xaf, 0x3d, 0xdb, 0x19, 0x9c, + 0xdb, 0x7b, 0xee, 0x05, 0x45, 0xbd, 0xbe, 0x83, 0xde, 0x80, 0x50, 0x48, 0xcc, 0xa5, 0x27, 0x69, + 0x42, 0x8c, 0xea, 0x2c, 0xf0, 0x75, 0xf8, 0xeb, 0x7f, 0xbb, 0xfa, 0x12, 0xd7, 0xbf, 0xad, 0x02, + 0xb7, 0xa6, 0xd0, 0x6d, 0x9a, 0x10, 0xf4, 0x2a, 0x5c, 0x21, 0x69, 0x58, 0x18, 0x2e, 0x3d, 0x64, + 0x78, 0x81, 0xa4, 0xa1, 0x32, 0x33, 0x61, 0x55, 0x48, 0x92, 0x19, 0xcb, 0x73, 0x26, 0x3f, 0x54, + 0x81, 0xab, 0xce, 0xdb, 0xf7, 0x00, 0x7c, 0xfd, 0x8c, 0x09, 0x41, 0x1e, 0x5c, 0x52, 0x29, 0x51, + 0x15, 0x39, 0xd7, 0x04, 0x14, 0xbc, 0xe8, 0x32, 0xd4, 0x58, 0x66, 0x68, 0x8a, 0xbd, 0x75, 0x8a, + 0xfd, 0x84, 0xf9, 0x30, 0x73, 0x35, 0x96, 0xa1, 0xe7, 0xe1, 0xd2, 0x04, 0xc7, 0x39, 0x31, 0x74, + 0xd5, 0x20, 0x85, 0xd2, 0xfe, 0x11, 0xc0, 0xd6, 0xe2, 0x06, 0x1b, 0x84, 0x4f, 0xe8, 0xad, 0x17, + 0xe0, 0x72, 0xe1, 0xb5, 0x72, 0xa3, 0xe6, 0x96, 0x1a, 0x7a, 0x19, 0xd6, 0x0b, 0xc9, 0xe3, 0x79, + 0x7c, 0xf4, 0x24, 0x2c, 0x8e, 0xdc, 0x3c, 0x56, 0x17, 0x71, 0x30, 0xeb, 0xf4, 0xa2, 0x6c, 0x6e, + 0xa9, 0x21, 0x04, 0xab, 0x82, 0x4a, 0x52, 0x14, 0xc0, 0x55, 0x72, 0xfb, 0x67, 0x00, 0x9b, 0x8b, + 0x7d, 0x44, 0xdb, 0x50, 0xa3, 0xa1, 0x72, 0xad, 0xde, 0xb9, 0xf2, 0x74, 0x49, 0x2e, 0x62, 0x76, + 0x35, 0x1a, 0xa2, 0x0e, 0x5c, 0x4e, 0x54, 0x0e, 0xcb, 0xff, 0xd2, 0x7c, 0x64, 0x82, 0x6f, 0xcc, + 0x92, 0xe8, 0x96, 0x96, 0xed, 0xef, 0x00, 0x6c, 0x3f, 0xee, 0xb7, 0x8a, 0x8c, 0xa5, 0x82, 0xa0, + 0x1b, 0xb0, 0x3a, 0x9b, 0x6a, 0x06, 0x50, 0xc4, 0xeb, 0x4f, 0xef, 0xb2, 0xab, 0xf8, 0x8e, 0x9b, + 0x57, 0x9b, 0x6b, 0xde, 0x43, 0xad, 0x6c, 0xde, 0x4b, 0x64, 0xd1, 0x2c, 0x39, 0xd1, 0x2c, 0xe8, + 0x22, 0xac, 0x5d, 0xef, 0x5e, 0xeb, 0x6f, 0x6d, 0x76, 0x7b, 0xfd, 0x46, 0x05, 0x41, 0xb8, 0xbc, + 0x39, 0xdc, 0x18, 0xf4, 0x3e, 0x6c, 0x00, 0xf4, 0x1c, 0xac, 0x17, 0xb2, 0xe7, 0x7e, 0xb0, 0xd1, + 0x6f, 0x68, 0x33, 0xb0, 0xdb, 0xdb, 0x1e, 0x0c, 0xaf, 0x37, 0x74, 0xb4, 0x02, 0xab, 0x5b, 0x83, + 0xed, 0x7e, 0xa3, 0xda, 0xf9, 0x49, 0x87, 0x17, 0x7b, 0x6a, 0x78, 0x5f, 0xc1, 0x12, 0x77, 0x37, + 0x07, 0xe8, 0x2f, 0xed, 0xb1, 0x05, 0x1c, 0x9c, 0x43, 0x06, 0x8a, 0x49, 0xd8, 0x7c, 0xff, 0x3c, + 0xa8, 0x8a, 0x32, 0xb5, 0xbf, 0x07, 0xd3, 0xdf, 0x8c, 0xad, 0xd1, 0x5b, 0xb7, 0x03, 0x4b, 0x90, + 0x20, 0xe7, 0x24, 0x21, 0x62, 0x6c, 0xf9, 0x58, 0xd0, 0xc0, 0x4a, 0x58, 0x4a, 0x25, 0xe3, 0x97, + 0x57, 0x4f, 0xc3, 0x42, 0xe2, 0x34, 0xc4, 0x3c, 0x3c, 0xb6, 0x98, 0x10, 0x61, 0x51, 0x66, 0xa5, + 0x44, 0xde, 0x62, 0xfc, 0xa6, 0xc5, 0x09, 0x0e, 0xef, 0xfc, 0xf9, 0xcf, 0xd7, 0x5a, 0xb7, 0xfd, + 0x6e, 0xb9, 0xe9, 0x9c, 0xe3, 0xef, 0x24, 0x9c, 0xcf, 0x8e, 0xe5, 0xcf, 0x17, 0x2f, 0xc8, 0x31, + 0x95, 0xe2, 0x6d, 0x70, 0xa9, 0xf9, 0xce, 0xee, 0x5d, 0xa0, 0xff, 0x71, 0x17, 0x58, 0x67, 0x8c, + 0x79, 0xe8, 0x7f, 0x42, 0x02, 0x79, 0xe7, 0x9e, 0xa1, 0x19, 0x60, 0xfd, 0x1b, 0xb0, 0xb7, 0x6f, + 0x56, 0xee, 0xef, 0x9b, 0x95, 0xc3, 0x7d, 0x13, 0x7c, 0x31, 0x35, 0xc1, 0x2f, 0x53, 0x13, 0xfc, + 0x3e, 0x35, 0xc1, 0xde, 0xd4, 0x04, 0x7f, 0x4f, 0x4d, 0xf0, 0xef, 0xd4, 0xac, 0x1c, 0x4e, 0x4d, + 0xf0, 0xd5, 0x81, 0x59, 0xd9, 0x3d, 0x30, 0xc1, 0xde, 0x81, 0x59, 0xb9, 0x7f, 0x60, 0x56, 0x3e, + 0xfa, 0x38, 0x62, 0xd9, 0xcd, 0xc8, 0x9e, 0xb0, 0xd9, 0x98, 0xe3, 0xd8, 0xce, 0x85, 0xa3, 0x84, + 0x11, 0xe3, 0x89, 0x95, 0x71, 0x36, 0xa1, 0x21, 0xe1, 0xd6, 0x11, 0xec, 0x64, 0x7e, 0xc4, 0x1c, + 0x72, 0x5b, 0x96, 0x7b, 0xee, 0x09, 0xeb, 0xdf, 0x5f, 0x56, 0x9b, 0xef, 0xcd, 0xff, 0x03, 0x00, + 0x00, 0xff, 0xff, 0xa2, 0x66, 0xef, 0x99, 0x2f, 0x08, 0x00, 0x00, } func (x EnhancedFirewallPolicyMetricLabel) String() string { diff --git a/pbgo/extschema/schema/enhanced_firewall_policy/types.pb.go b/pbgo/extschema/schema/enhanced_firewall_policy/types.pb.go index 037b9a442..2b6b44bc6 100644 --- a/pbgo/extschema/schema/enhanced_firewall_policy/types.pb.go +++ b/pbgo/extschema/schema/enhanced_firewall_policy/types.pb.go @@ -1425,153 +1425,152 @@ func init() { } var fileDescriptor_38fbba61196a322a = []byte{ - // 2332 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x59, 0x4b, 0x6c, 0xdb, 0xc8, - 0x19, 0xf6, 0x48, 0xb2, 0x23, 0xff, 0x7a, 0x58, 0xa1, 0xed, 0x98, 0x76, 0x1c, 0x46, 0x11, 0xb6, - 0x59, 0x5b, 0x65, 0x68, 0x89, 0x96, 0xed, 0x24, 0xd8, 0x24, 0x2b, 0x25, 0x9b, 0xc4, 0x6e, 0x1e, - 0x2a, 0x9d, 0xf5, 0x2e, 0xd2, 0x87, 0x40, 0x53, 0x23, 0x99, 0x0d, 0x2d, 0x12, 0x24, 0x2d, 0xaf, - 0x0f, 0x09, 0x82, 0xa2, 0xa7, 0x9e, 0xda, 0x00, 0xbd, 0xe4, 0x56, 0x60, 0x0b, 0x14, 0x39, 0xf5, - 0x5c, 0xf9, 0x60, 0x2c, 0x50, 0xa0, 0xd8, 0x93, 0xd1, 0x53, 0x8e, 0x1b, 0xe5, 0xb2, 0xed, 0x29, - 0x2d, 0x7a, 0x28, 0x8a, 0x02, 0x2d, 0x38, 0x43, 0xc9, 0xa4, 0x24, 0x6b, 0x9d, 0xa4, 0xc0, 0xee, - 0x21, 0x27, 0x4b, 0x9c, 0xef, 0xfb, 0x7e, 0xce, 0x3f, 0xff, 0x6b, 0x64, 0x10, 0xeb, 0xd8, 0x12, - 0x54, 0x7d, 0xce, 0x52, 0x36, 0xf0, 0xa6, 0x3c, 0x87, 0x6b, 0x1b, 0x72, 0x4d, 0xc1, 0xe5, 0x52, - 0x45, 0x35, 0xf1, 0xb6, 0xac, 0x69, 0x25, 0x43, 0xd7, 0x54, 0x65, 0x67, 0xce, 0xde, 0x31, 0xb0, - 0x25, 0x18, 0xa6, 0x6e, 0xeb, 0xcc, 0x59, 0xca, 0x11, 0x28, 0x47, 0x38, 0x8c, 0x33, 0x75, 0xae, - 0xaa, 0xda, 0x1b, 0x5b, 0xeb, 0x82, 0xa2, 0x6f, 0xce, 0x55, 0xf5, 0xaa, 0x3e, 0x47, 0xe8, 0xeb, - 0x5b, 0x15, 0xf2, 0x8d, 0x7c, 0x21, 0x9f, 0xa8, 0xec, 0xd4, 0x84, 0xff, 0x55, 0x6a, 0xd8, 0x76, - 0x17, 0x66, 0xba, 0x16, 0xb6, 0x75, 0xf3, 0x41, 0x8f, 0x37, 0x9b, 0x3a, 0xd7, 0x0f, 0x59, 0x32, - 0xb7, 0x34, 0xec, 0x83, 0x9f, 0xf4, 0xc3, 0x75, 0xc3, 0x56, 0xf5, 0x5a, 0x6b, 0x31, 0xe9, 0x5f, - 0xec, 0x61, 0x6d, 0xd2, 0x8f, 0xf0, 0x2e, 0x4d, 0xfb, 0x97, 0xea, 0xb2, 0xa6, 0x96, 0x65, 0x1b, - 0xf7, 0x96, 0xae, 0xab, 0x78, 0xbb, 0xe4, 0x37, 0x7e, 0xba, 0x1b, 0x61, 0x79, 0x0d, 0xa4, 0x34, - 0x38, 0xbe, 0x8a, 0xcd, 0xba, 0xaa, 0xe0, 0xbc, 0xe2, 0x10, 0xef, 0xed, 0x18, 0x98, 0xf9, 0x04, - 0x22, 0xb5, 0x4a, 0xbd, 0x64, 0xd1, 0x05, 0x16, 0x25, 0xd1, 0x4c, 0x44, 0x4c, 0x09, 0xfe, 0xe3, - 0x22, 0x5a, 0xc2, 0xdd, 0xf5, 0x9f, 0x61, 0xc5, 0x96, 0x70, 0xc5, 0x21, 0x16, 0x98, 0x67, 0x0f, - 0xbd, 0xcc, 0xc7, 0xbb, 0x08, 0x49, 0x50, 0xab, 0xd4, 0x5d, 0x13, 0xa9, 0xdf, 0x9c, 0x06, 0xee, - 0x23, 0xf7, 0x98, 0xaf, 0xbb, 0xa7, 0x5c, 0x24, 0x0e, 0x91, 0xb6, 0x34, 0x4c, 0x6c, 0x5f, 0x84, - 0xf0, 0x26, 0xb6, 0xe5, 0xb2, 0x6c, 0xcb, 0xae, 0x61, 0xae, 0xc3, 0xf0, 0x6d, 0x6c, 0x59, 0x72, - 0x15, 0xdf, 0xc6, 0xb6, 0xec, 0x30, 0xa4, 0x36, 0x9e, 0x49, 0x43, 0xa8, 0x8c, 0x6b, 0x3b, 0x6c, - 0x84, 0xf0, 0xc6, 0x3a, 0x78, 0x1f, 0x6d, 0x1a, 0xf6, 0xce, 0xcd, 0x01, 0x89, 0x60, 0x18, 0x1e, - 0x06, 0x65, 0x4d, 0xd3, 0xb7, 0xd9, 0x68, 0x5f, 0x30, 0x05, 0x31, 0x1b, 0x10, 0x57, 0x6b, 0x16, - 0x36, 0xed, 0xb6, 0x53, 0x62, 0x84, 0x76, 0x41, 0x38, 0x5a, 0x0c, 0x0b, 0x5d, 0x4e, 0x2e, 0x84, - 0x5e, 0x35, 0x10, 0xba, 0x39, 0x20, 0xc5, 0xa8, 0xb0, 0x0b, 0x60, 0xb6, 0x60, 0x44, 0x2e, 0xd7, - 0xa9, 0x88, 0x4c, 0xd0, 0x6c, 0x9c, 0x98, 0x2a, 0x74, 0x98, 0xea, 0x11, 0x94, 0xc2, 0x1d, 0xfa, - 0xec, 0xc0, 0xa5, 0x79, 0x57, 0x8a, 0xda, 0x2d, 0x84, 0xf7, 0x1a, 0x08, 0x39, 0x76, 0xa5, 0xb8, - 0xec, 0x5b, 0x61, 0x96, 0x20, 0xe2, 0xbc, 0xad, 0xa5, 0x6f, 0x99, 0x0a, 0xb6, 0xd8, 0xf1, 0x3e, - 0x4e, 0x41, 0x12, 0xc8, 0x9a, 0xb6, 0x4a, 0x91, 0x4c, 0x09, 0x18, 0x4a, 0x2a, 0x19, 0x26, 0xae, - 0xa8, 0x9f, 0x95, 0x34, 0xd5, 0xb2, 0xd9, 0x13, 0x84, 0x3f, 0xdb, 0x33, 0x64, 0x8a, 0x04, 0xb7, - 0x6a, 0x9b, 0x6a, 0xad, 0x7a, 0x4b, 0xb5, 0x6c, 0xea, 0x8d, 0x7d, 0xc7, 0x1b, 0x48, 0x4a, 0x50, - 0x31, 0x8a, 0x71, 0x56, 0x99, 0xfb, 0x30, 0xe6, 0x1a, 0x50, 0x8d, 0x96, 0x0d, 0x0b, 0xdb, 0xec, - 0x04, 0x31, 0x71, 0xa6, 0xc3, 0xc4, 0xb2, 0xe1, 0xca, 0xe3, 0x76, 0x50, 0x86, 0xfe, 0xb0, 0x4b, - 0xa4, 0x8f, 0x53, 0x19, 0x0f, 0x82, 0xb9, 0x44, 0x8e, 0x55, 0x2d, 0xe3, 0xf6, 0xc6, 0xd9, 0xbe, - 0x1b, 0x8f, 0x51, 0x74, 0x6b, 0xef, 0x57, 0x60, 0x44, 0xdf, 0xb2, 0x7d, 0xfc, 0xc9, 0xbe, 0xfc, - 0xb8, 0x0b, 0x6f, 0x09, 0xe4, 0xc0, 0xdd, 0x6f, 0xa9, 0x26, 0x6f, 0x62, 0xcb, 0x90, 0x15, 0xcc, - 0x4e, 0x25, 0xd1, 0xcc, 0x70, 0xe1, 0xd8, 0xf3, 0x87, 0xe8, 0x6b, 0xea, 0x92, 0x11, 0x0a, 0xb9, - 0xd3, 0x42, 0x30, 0x18, 0xc6, 0x5d, 0x96, 0x26, 0xaf, 0x63, 0xad, 0x64, 0x61, 0x0d, 0x2b, 0xb6, - 0x6e, 0xb2, 0x27, 0x89, 0xf1, 0x64, 0x87, 0xf1, 0x5b, 0x0e, 0x68, 0xd5, 0xc5, 0x10, 0x8f, 0xc4, - 0x9e, 0xee, 0xa2, 0x41, 0x08, 0xa2, 0xf0, 0x80, 0xeb, 0x9a, 0x51, 0xaa, 0xe7, 0x43, 0x32, 0x77, - 0xda, 0x27, 0x2b, 0x6f, 0x5b, 0xa5, 0xba, 0xa1, 0x94, 0xd4, 0xb2, 0xc5, 0x4e, 0x13, 0x1b, 0x93, - 0x1d, 0x36, 0xf2, 0xdb, 0xd6, 0x9a, 0xa1, 0x38, 0xe7, 0xd5, 0x76, 0xb7, 0xfb, 0xda, 0x74, 0x65, - 0xb9, 0x6c, 0x31, 0x3f, 0x6d, 0xbf, 0xb6, 0xa3, 0x67, 0x6d, 0xad, 0xd7, 0xb0, 0x4d, 0x24, 0x39, - 0x22, 0x39, 0xdd, 0x2d, 0xb9, 0x4a, 0x30, 0x44, 0x35, 0xf2, 0xb7, 0x87, 0x21, 0x1b, 0x5b, 0xb6, - 0x2b, 0xce, 0xb4, 0xc5, 0x29, 0xc6, 0xd1, 0xcf, 0x43, 0xc2, 0x09, 0xe1, 0x32, 0xb6, 0x6c, 0xb5, - 0x26, 0x93, 0x2a, 0xc8, 0xce, 0xf6, 0x39, 0x8e, 0x80, 0x34, 0x22, 0x6b, 0xda, 0x35, 0x0f, 0x9c, - 0x51, 0x61, 0xc2, 0x43, 0xf7, 0x45, 0x74, 0xfa, 0xcd, 0x22, 0x3a, 0x20, 0x8d, 0x7b, 0x14, 0x3d, - 0x61, 0x5d, 0x86, 0x49, 0xaf, 0x29, 0x7f, 0x6c, 0x7f, 0xff, 0xf5, 0x62, 0x3b, 0x20, 0x9d, 0xf0, - 0x68, 0x79, 0x03, 0xfc, 0x06, 0x8c, 0xba, 0x01, 0xee, 0x73, 0x0b, 0xdf, 0xd7, 0x2d, 0x0c, 0xa5, - 0xf8, 0x3c, 0xb3, 0x0c, 0x63, 0xad, 0x50, 0xf7, 0x29, 0x9d, 0xeb, 0xab, 0x34, 0xea, 0x72, 0x7c, - 0x52, 0x97, 0xc1, 0xeb, 0x12, 0x4f, 0xe4, 0x0b, 0xfe, 0xc8, 0x0f, 0x48, 0x63, 0x1e, 0xdc, 0x41, - 0xf8, 0xeb, 0x30, 0xe5, 0xe5, 0x77, 0xe4, 0xc0, 0xdc, 0x9b, 0xe5, 0x40, 0x40, 0x62, 0x3d, 0xa2, - 0xfe, 0x44, 0x38, 0x0f, 0x51, 0x52, 0x1b, 0x35, 0xbd, 0x54, 0x57, 0x0d, 0x8b, 0xcd, 0xf4, 0xdd, - 0x33, 0x29, 0x8e, 0x9a, 0xbe, 0xa6, 0x1a, 0xd6, 0x01, 0x53, 0xa5, 0xcc, 0xec, 0x11, 0x98, 0x2a, - 0x61, 0x7e, 0xea, 0x8f, 0x44, 0x6f, 0x06, 0x8a, 0x47, 0xcb, 0x40, 0xbf, 0xfb, 0x0e, 0xd2, 0x70, - 0xc3, 0xef, 0xbe, 0x8e, 0x5c, 0xcc, 0xbd, 0x6e, 0x2e, 0x06, 0xa4, 0x09, 0xbf, 0x99, 0x83, 0x84, - 0x74, 0x7b, 0x8a, 0x6d, 0xca, 0x95, 0x8a, 0xaa, 0xb0, 0x97, 0xfa, 0x6c, 0x3e, 0x48, 0x36, 0x7f, - 0x8f, 0x22, 0x99, 0xcb, 0x30, 0x42, 0x88, 0x8a, 0xd1, 0x26, 0x5f, 0xee, 0x4b, 0x8e, 0x39, 0x64, - 0xc5, 0xe8, 0xe0, 0x6f, 0x95, 0x0f, 0xf8, 0x57, 0xbe, 0x91, 0xff, 0x71, 0xb9, 0xcd, 0xbf, 0x0f, - 0x51, 0xd9, 0x30, 0x34, 0x55, 0x71, 0x83, 0xfc, 0x43, 0x42, 0x16, 0xfa, 0x36, 0x60, 0x21, 0xef, - 0x61, 0x78, 0x72, 0x33, 0x28, 0xf9, 0xb4, 0x98, 0x0a, 0x8c, 0x92, 0xc9, 0x4b, 0xd1, 0x9d, 0xd9, - 0xc0, 0xb4, 0x4b, 0xa6, 0x5c, 0xab, 0x62, 0x36, 0x7f, 0x14, 0x13, 0x45, 0x97, 0x58, 0xd4, 0x4d, - 0xdb, 0x67, 0xe2, 0xb8, 0xe1, 0x59, 0x91, 0x1c, 0x41, 0x46, 0x82, 0x18, 0xcd, 0x8c, 0x4d, 0xd9, - 0x56, 0x36, 0xb0, 0xc9, 0x16, 0x89, 0x85, 0xd3, 0xbd, 0x12, 0xe3, 0x36, 0x85, 0x10, 0xc9, 0xe8, - 0xd3, 0x5d, 0x14, 0x82, 0x00, 0x0a, 0x3b, 0xd2, 0x52, 0x54, 0xf3, 0xac, 0x5f, 0x7c, 0x39, 0xfc, - 0x45, 0x03, 0x71, 0x30, 0x0d, 0x83, 0xce, 0x6c, 0x61, 0x31, 0xa3, 0x59, 0x3e, 0x9b, 0xe1, 0xc5, - 0x0c, 0x9f, 0xcb, 0xf0, 0x8b, 0x19, 0xfe, 0x7c, 0x86, 0xcf, 0xe6, 0xbe, 0x6c, 0xa0, 0xdd, 0x61, - 0x98, 0x80, 0x90, 0x93, 0xb0, 0x53, 0x23, 0x10, 0x6b, 0x4d, 0x67, 0x82, 0x93, 0xe8, 0xf0, 0x43, - 0x88, 0x38, 0xdc, 0x24, 0x1d, 0x3b, 0xd2, 0x05, 0xf8, 0x10, 0xa2, 0x74, 0x6a, 0x13, 0x43, 0xd7, - 0x70, 0x6d, 0x07, 0xe2, 0xee, 0x5c, 0x26, 0x0e, 0xe6, 0x9d, 0x3f, 0x90, 0xec, 0x9c, 0xbc, 0xc4, - 0xf8, 0x32, 0xf9, 0x9e, 0x74, 0x27, 0x26, 0xf8, 0x65, 0x10, 0x86, 0x68, 0x43, 0x4d, 0xff, 0x37, - 0x00, 0xff, 0x09, 0x00, 0xe3, 0x9b, 0x65, 0xc4, 0x60, 0xbe, 0xb6, 0x03, 0x02, 0x9c, 0xec, 0x1e, - 0x53, 0x04, 0xfa, 0x19, 0x5b, 0xa9, 0x91, 0x44, 0x30, 0x1d, 0x59, 0x2e, 0x26, 0x8b, 0xee, 0x03, - 0x58, 0x6e, 0xe3, 0x7d, 0x95, 0x59, 0x30, 0x71, 0xe5, 0x47, 0x99, 0x9f, 0x30, 0xd1, 0x29, 0xa0, - 0xd0, 0xa4, 0x53, 0x8c, 0xa7, 0x81, 0x3d, 0x0c, 0x9c, 0x40, 0xf0, 0x7e, 0xe7, 0x90, 0x21, 0x8e, - 0xaf, 0xa9, 0x72, 0x72, 0x99, 0x3c, 0x4b, 0x2e, 0xd7, 0x6c, 0x6c, 0x56, 0x64, 0x05, 0x5b, 0x30, - 0xdb, 0x35, 0x4e, 0x88, 0x27, 0x1c, 0xe4, 0x5d, 0xfa, 0xd0, 0x0b, 0x3d, 0xdd, 0x3d, 0x38, 0x30, - 0x91, 0xa9, 0xe1, 0x76, 0x91, 0x84, 0x89, 0x43, 0x66, 0x04, 0x98, 0x85, 0xc9, 0xee, 0xae, 0x2e, - 0xd0, 0xbf, 0xa9, 0x68, 0x22, 0x98, 0x0e, 0xe7, 0x3f, 0x59, 0x4d, 0xae, 0x15, 0xaf, 0x5a, 0x20, - 0xc2, 0xe9, 0x9e, 0x0d, 0x5b, 0x68, 0x7f, 0xa4, 0x7e, 0x73, 0x08, 0x34, 0xeb, 0x2d, 0xf8, 0x45, - 0x08, 0x22, 0x9e, 0x6a, 0x9f, 0xfe, 0x67, 0x10, 0xfe, 0x1e, 0x84, 0x89, 0xee, 0xd6, 0x4c, 0x8f, - 0x65, 0x1e, 0x92, 0x87, 0x34, 0xdc, 0x3e, 0x67, 0xb3, 0xea, 0x27, 0x1d, 0xe1, 0x80, 0xce, 0xc0, - 0xa9, 0xbe, 0x8c, 0x04, 0x02, 0xbe, 0x67, 0xa7, 0x3c, 0xec, 0xa8, 0x84, 0xde, 0xed, 0xf0, 0xd0, - 0xf3, 0x7a, 0xef, 0x90, 0x9e, 0xe7, 0x3f, 0xb4, 0xe9, 0x7e, 0x9d, 0x0d, 0x92, 0xfe, 0x36, 0x24, - 0x26, 0xf2, 0x9a, 0xd6, 0xb6, 0xb5, 0xb6, 0x5c, 0x74, 0xa2, 0xc2, 0xd7, 0x6e, 0xc4, 0x11, 0x07, - 0xe1, 0xbe, 0x3c, 0x01, 0x08, 0xc0, 0x1d, 0xd2, 0x55, 0x7a, 0x47, 0xc0, 0x12, 0xbc, 0x77, 0x78, - 0xaf, 0xe8, 0x17, 0x06, 0xbf, 0x46, 0x10, 0x75, 0xab, 0x69, 0xd2, 0x29, 0x2b, 0xe9, 0xc7, 0x08, - 0x1e, 0xb5, 0x12, 0xd3, 0xad, 0xc9, 0x34, 0x02, 0x4e, 0x74, 0xd5, 0x7a, 0x31, 0x78, 0xef, 0x6a, - 0xb1, 0xf5, 0xdc, 0x53, 0xc3, 0xc5, 0xe0, 0xc7, 0xd7, 0x8a, 0x70, 0x06, 0x26, 0xbd, 0xf5, 0x54, - 0xf0, 0x7e, 0x49, 0x85, 0x12, 0xc1, 0x0c, 0x82, 0xf1, 0x9e, 0x25, 0x16, 0xce, 0x02, 0x90, 0x6a, - 0x97, 0xfc, 0x01, 0xde, 0xb1, 0x12, 0xa8, 0x70, 0x02, 0x18, 0x5f, 0x85, 0x14, 0x1e, 0x38, 0xcf, - 0x83, 0x85, 0xef, 0x41, 0x8c, 0x5e, 0xbc, 0x4a, 0xca, 0x86, 0xee, 0x5c, 0xc9, 0xc6, 0xf6, 0x1a, - 0x28, 0xb2, 0xdf, 0x40, 0xd0, 0x6c, 0xa0, 0x70, 0x36, 0xcb, 0x67, 0x45, 0x3e, 0x3b, 0x5f, 0x58, - 0x82, 0x98, 0x9b, 0x1d, 0x2e, 0xec, 0xec, 0x5e, 0x03, 0x8d, 0xef, 0x37, 0xd0, 0x58, 0xb3, 0x81, - 0xa6, 0xc4, 0x2c, 0x2f, 0x8a, 0xbc, 0x38, 0xcf, 0x8b, 0x39, 0x5e, 0x5c, 0xe0, 0xc5, 0x45, 0x5e, - 0x5c, 0xe2, 0xc5, 0xf3, 0xfc, 0x7c, 0xa6, 0x70, 0x05, 0x18, 0xaf, 0x53, 0x5d, 0xf6, 0xec, 0x5e, - 0x03, 0xcd, 0xee, 0x37, 0xd0, 0x4c, 0xb3, 0x81, 0x4e, 0xe5, 0x44, 0x3e, 0x37, 0xcf, 0xe7, 0x72, - 0x7c, 0x6e, 0x81, 0xcf, 0x2d, 0xf2, 0xb9, 0x25, 0x3e, 0x77, 0x9e, 0xcf, 0x5d, 0xe0, 0x17, 0x32, - 0xfc, 0x82, 0x58, 0xe0, 0x21, 0xee, 0xba, 0xa4, 0x45, 0x9e, 0xda, 0x6b, 0xa0, 0x4b, 0xfb, 0x0d, - 0xf4, 0x41, 0xb3, 0x81, 0xe2, 0x8b, 0x59, 0x7e, 0x51, 0xe4, 0x17, 0xe7, 0xf9, 0xc5, 0x1c, 0xbf, - 0xb8, 0xb0, 0x12, 0x0a, 0x43, 0x22, 0xb2, 0x12, 0x0a, 0x8f, 0x25, 0xc6, 0x57, 0x42, 0xe1, 0x53, - 0x09, 0x6e, 0x25, 0x14, 0x9e, 0x49, 0xcc, 0xae, 0x84, 0xc2, 0xf3, 0x89, 0xdc, 0x4a, 0x28, 0xfc, - 0x41, 0xe2, 0x52, 0xea, 0x73, 0x04, 0xa9, 0xc3, 0xef, 0xe5, 0xad, 0x91, 0x96, 0x79, 0x04, 0x83, - 0xce, 0x35, 0xd3, 0x62, 0x51, 0x32, 0x38, 0x13, 0x11, 0xaf, 0x1f, 0xf5, 0xf2, 0xdb, 0xff, 0xca, - 0x5f, 0x48, 0xfe, 0xf1, 0xaf, 0x7b, 0xc1, 0xa1, 0x27, 0x28, 0x98, 0x78, 0x8c, 0x9c, 0x8f, 0x83, - 0x4f, 0x50, 0x20, 0x83, 0x9a, 0x5f, 0xfd, 0x29, 0x38, 0xf4, 0x64, 0x17, 0x05, 0x12, 0x48, 0xa2, - 0x66, 0x53, 0xff, 0x18, 0x82, 0xf8, 0x0d, 0x4d, 0x5f, 0x97, 0xb5, 0x55, 0x03, 0x2b, 0xe4, 0x95, - 0xe6, 0x61, 0x98, 0xb4, 0x8b, 0x92, 0xac, 0x69, 0x6c, 0xa0, 0xef, 0x55, 0x3e, 0x4c, 0x80, 0x79, - 0x4d, 0x63, 0xee, 0x90, 0xd8, 0xd2, 0xb7, 0x71, 0xb9, 0x7d, 0x6f, 0x0b, 0x12, 0xea, 0xa9, 0x0e, - 0xea, 0xc1, 0xbc, 0x4e, 0xdb, 0xed, 0xbf, 0x1a, 0x68, 0xe0, 0xe6, 0x80, 0x14, 0x77, 0xd9, 0xad, - 0x6b, 0xdc, 0xa7, 0x30, 0xd6, 0xd2, 0xf3, 0x0d, 0xc7, 0xa1, 0xd7, 0x11, 0x1d, 0x75, 0x25, 0x7c, - 0xb3, 0x72, 0x16, 0xc2, 0x4e, 0x6f, 0x24, 0xbb, 0x1b, 0xec, 0xbb, 0xbb, 0x63, 0x0e, 0xce, 0xd9, - 0xdc, 0x2d, 0x88, 0x97, 0x71, 0x4d, 0xf5, 0xec, 0x6d, 0xe8, 0x75, 0x5e, 0x23, 0x46, 0xc9, 0xad, - 0xad, 0xad, 0xc1, 0xa8, 0xab, 0xe6, 0xdb, 0xd9, 0xb1, 0xd7, 0x91, 0x64, 0xa8, 0x42, 0xc7, 0x4d, - 0x6b, 0xd8, 0x39, 0x53, 0x7a, 0xb7, 0x0a, 0x13, 0xb5, 0x95, 0xb7, 0x0f, 0xa7, 0x96, 0x69, 0xe7, - 0xb4, 0x4d, 0xf7, 0x3b, 0xf3, 0x08, 0xe2, 0x16, 0xae, 0x6e, 0xe2, 0x9a, 0xed, 0x0a, 0xb0, 0xc3, - 0xc4, 0xde, 0xfb, 0x1d, 0xf6, 0xda, 0xbf, 0xd4, 0x10, 0x2c, 0x15, 0x25, 0xfb, 0x10, 0x5e, 0x35, - 0x10, 0x7a, 0xb6, 0x8b, 0xce, 0xa6, 0x8f, 0x59, 0xb6, 0x5c, 0x55, 0x6b, 0xd5, 0x74, 0xc8, 0x30, - 0xf5, 0x72, 0x3a, 0x6a, 0xe9, 0x15, 0x7b, 0x5d, 0xae, 0x3d, 0x28, 0x6d, 0x62, 0x25, 0x7d, 0xac, - 0x82, 0xcb, 0xa6, 0xbc, 0x69, 0x48, 0x31, 0xcb, 0x2b, 0xc1, 0x60, 0x88, 0xea, 0x06, 0x36, 0x4b, - 0x55, 0xa5, 0x64, 0x19, 0x58, 0x61, 0xcb, 0xc4, 0xfa, 0xc5, 0xa3, 0xee, 0xf6, 0xae, 0x81, 0x4d, - 0x7f, 0xd0, 0xb7, 0xaf, 0x48, 0x12, 0x38, 0xc2, 0x37, 0x14, 0x67, 0xe1, 0xe2, 0xd9, 0x2f, 0x1a, - 0x28, 0x05, 0xc3, 0x10, 0x72, 0x1c, 0xc1, 0xa0, 0x2c, 0x8c, 0x43, 0xc2, 0xdd, 0x4b, 0xb2, 0x7d, - 0x95, 0x41, 0x17, 0x0a, 0x33, 0x10, 0x21, 0x9e, 0x77, 0x4b, 0xc7, 0xe4, 0x5e, 0x03, 0x05, 0x9c, - 0xab, 0x6a, 0xb3, 0x81, 0x62, 0x22, 0x3f, 0xcf, 0xe7, 0xf8, 0x05, 0x7e, 0x91, 0x5f, 0xe2, 0xcf, - 0xaf, 0x84, 0xc2, 0x28, 0x11, 0x48, 0xfd, 0x05, 0x01, 0xd3, 0xfd, 0x0e, 0xcc, 0xbd, 0xce, 0xdf, - 0x08, 0x83, 0x3d, 0xee, 0x0d, 0xfe, 0x5f, 0x07, 0xc7, 0xfd, 0xbf, 0x0e, 0xb6, 0x37, 0x71, 0xf0, - 0x03, 0x21, 0x53, 0x81, 0xe3, 0xad, 0x99, 0x57, 0x6d, 0x75, 0x4f, 0x36, 0x70, 0x04, 0xed, 0x93, - 0xcf, 0x1e, 0x76, 0x33, 0x5b, 0x16, 0x12, 0xee, 0x4a, 0xbb, 0x21, 0xa7, 0x3e, 0x1f, 0x84, 0xf8, - 0x55, 0x13, 0xcb, 0x36, 0x7e, 0xbb, 0x4a, 0x72, 0xf3, 0xcd, 0x2a, 0x49, 0x8f, 0x1a, 0x22, 0xbd, - 0x45, 0x0d, 0xf9, 0x3f, 0x56, 0x8f, 0xeb, 0x6f, 0x54, 0x3d, 0xba, 0xeb, 0x46, 0xf1, 0xcd, 0xeb, - 0xc6, 0xb7, 0x5f, 0x31, 0xee, 0xbc, 0x65, 0xc5, 0xe8, 0xa8, 0x00, 0x17, 0x8f, 0x7f, 0x79, 0xb9, - 0xa3, 0x6f, 0x15, 0x38, 0x7f, 0x16, 0x8e, 0xfc, 0xfc, 0xdf, 0xc8, 0xfb, 0xc0, 0xcd, 0xbd, 0xdf, - 0x0d, 0xc2, 0x88, 0x84, 0x0d, 0x4d, 0x56, 0xde, 0xc5, 0xe9, 0xbb, 0x38, 0xfd, 0xee, 0xc6, 0xe9, - 0x6f, 0x07, 0x21, 0x72, 0x03, 0xdb, 0xef, 0x62, 0xf4, 0x5d, 0x8c, 0x7e, 0x57, 0x63, 0xb4, 0xf0, - 0x14, 0xed, 0xbf, 0xe0, 0x06, 0x9e, 0xbf, 0xe0, 0x06, 0x5e, 0xbd, 0xe0, 0xd0, 0xe3, 0x26, 0x87, - 0x7e, 0xdf, 0xe4, 0xd0, 0x9f, 0x9b, 0x1c, 0xda, 0x6f, 0x72, 0xe8, 0x79, 0x93, 0x43, 0x5f, 0x35, - 0x39, 0xf4, 0x75, 0x93, 0x1b, 0x78, 0xd5, 0xe4, 0xd0, 0xaf, 0x5e, 0x72, 0x03, 0x7b, 0x2f, 0x39, - 0xb4, 0xff, 0x92, 0x1b, 0x78, 0xfe, 0x92, 0x1b, 0xb8, 0xff, 0xe3, 0xaa, 0x6e, 0x3c, 0xa8, 0x0a, - 0x75, 0x5d, 0xb3, 0xb1, 0x69, 0xca, 0xc2, 0x96, 0x35, 0x47, 0x3e, 0x54, 0x74, 0x73, 0xf3, 0x9c, - 0x61, 0xea, 0x75, 0xb5, 0x8c, 0xcd, 0x73, 0xad, 0xe5, 0x39, 0x63, 0xbd, 0xaa, 0xcf, 0xe1, 0xcf, - 0x6c, 0xf7, 0x1f, 0xaf, 0xdf, 0xf0, 0x6f, 0xf1, 0xf5, 0x21, 0x72, 0x61, 0x9d, 0xff, 0x5f, 0x00, - 0x00, 0x00, 0xff, 0xff, 0xaf, 0xdf, 0xde, 0x2a, 0x47, 0x1f, 0x00, 0x00, + // 2320 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x59, 0x4d, 0x6c, 0xdb, 0xc8, + 0x15, 0xd6, 0x48, 0xb2, 0x23, 0x3f, 0xfd, 0x58, 0xa1, 0xed, 0x98, 0x76, 0x1c, 0x5a, 0x2b, 0x6c, + 0xb3, 0xb6, 0xcb, 0xd0, 0x12, 0x2d, 0xdb, 0xd9, 0x60, 0x93, 0xac, 0x94, 0x6c, 0x12, 0xbb, 0xf9, + 0x51, 0xe9, 0xac, 0x77, 0x91, 0xfe, 0x08, 0x34, 0x35, 0x92, 0xd9, 0xd0, 0x22, 0x41, 0xd2, 0xf2, + 0xfa, 0x90, 0x45, 0x50, 0xf4, 0xd4, 0x53, 0x1b, 0xa0, 0x97, 0xdc, 0x0a, 0x6c, 0x81, 0x22, 0xa7, + 0x9e, 0x2b, 0x1f, 0x8c, 0x05, 0x0a, 0x14, 0x7b, 0x32, 0x7a, 0xca, 0x71, 0x23, 0x5f, 0xb6, 0x3d, + 0xa5, 0x40, 0x0f, 0x45, 0x51, 0xa0, 0x05, 0x67, 0x28, 0x99, 0x94, 0x64, 0xad, 0x93, 0x14, 0xe8, + 0x1e, 0x72, 0xb2, 0xc8, 0xf9, 0xbe, 0xef, 0xcd, 0xbc, 0x79, 0xf3, 0xde, 0x1b, 0x1a, 0xc4, 0x3a, + 0xb6, 0x04, 0x55, 0x9f, 0xb7, 0x94, 0x4d, 0xbc, 0x25, 0xcf, 0xe3, 0xda, 0xa6, 0x5c, 0x53, 0x70, + 0xb9, 0x54, 0x51, 0x4d, 0xbc, 0x23, 0x6b, 0x5a, 0xc9, 0xd0, 0x35, 0x55, 0xd9, 0x9d, 0xb7, 0x77, + 0x0d, 0x6c, 0x09, 0x86, 0xa9, 0xdb, 0x3a, 0x73, 0x9e, 0x72, 0x04, 0xca, 0x11, 0x8e, 0xe3, 0x4c, + 0x5e, 0xa8, 0xaa, 0xf6, 0xe6, 0xf6, 0x86, 0xa0, 0xe8, 0x5b, 0xf3, 0x55, 0xbd, 0xaa, 0xcf, 0x13, + 0xfa, 0xc6, 0x76, 0x85, 0x3c, 0x91, 0x07, 0xf2, 0x8b, 0xca, 0x4e, 0x8e, 0xfb, 0xa7, 0x52, 0xc3, + 0xb6, 0x3b, 0x30, 0xd3, 0x35, 0xb0, 0xa3, 0x9b, 0x0f, 0x7b, 0xcc, 0x6c, 0xf2, 0x42, 0x3f, 0x64, + 0xc9, 0xdc, 0xd6, 0xb0, 0x0f, 0x7e, 0xd6, 0x0f, 0xd7, 0x0d, 0x5b, 0xd5, 0x6b, 0xad, 0xc1, 0x94, + 0x7f, 0xb0, 0x87, 0xb5, 0x09, 0x3f, 0xc2, 0x3b, 0x34, 0xe5, 0x1f, 0xaa, 0xcb, 0x9a, 0x5a, 0x96, + 0x6d, 0xdc, 0x5b, 0xba, 0xae, 0xe2, 0x9d, 0x92, 0xdf, 0xf8, 0x74, 0x37, 0xc2, 0xf2, 0x1a, 0x48, + 0x6b, 0x70, 0x7a, 0x0d, 0x9b, 0x75, 0x55, 0xc1, 0x79, 0xc5, 0x21, 0xde, 0xdf, 0x35, 0x30, 0xf3, + 0x09, 0x44, 0x6b, 0x95, 0x7a, 0xc9, 0xa2, 0x03, 0x2c, 0x4a, 0xa1, 0x99, 0xa8, 0x98, 0x16, 0xfc, + 0xdb, 0x45, 0xb4, 0x84, 0x7b, 0x1b, 0x3f, 0xc3, 0x8a, 0x2d, 0xe1, 0x8a, 0x43, 0x2c, 0x30, 0xcf, + 0x1e, 0x79, 0x99, 0x8f, 0xf7, 0x10, 0x92, 0xa0, 0x56, 0xa9, 0xbb, 0x26, 0xd2, 0xbf, 0x99, 0x06, + 0xee, 0x23, 0x77, 0x9b, 0x6f, 0xb8, 0xbb, 0x5c, 0x24, 0x0e, 0x91, 0xb6, 0x35, 0x4c, 0x6c, 0x5f, + 0x82, 0xc8, 0x16, 0xb6, 0xe5, 0xb2, 0x6c, 0xcb, 0xae, 0x61, 0xae, 0xc3, 0xf0, 0x1d, 0x6c, 0x59, + 0x72, 0x15, 0xdf, 0xc1, 0xb6, 0xec, 0x30, 0xa4, 0x36, 0x9e, 0x99, 0x83, 0x70, 0x19, 0xd7, 0x76, + 0xd9, 0x28, 0xe1, 0x8d, 0x76, 0xf0, 0x3e, 0xda, 0x32, 0xec, 0xdd, 0x5b, 0x01, 0x89, 0x60, 0x18, + 0x1e, 0x06, 0x64, 0x4d, 0xd3, 0x77, 0xd8, 0x58, 0x5f, 0x30, 0x05, 0x31, 0x9b, 0x90, 0x50, 0x6b, + 0x16, 0x36, 0xed, 0xb6, 0x53, 0xe2, 0x84, 0xf6, 0xbe, 0x70, 0xb2, 0x18, 0x16, 0xba, 0x9c, 0x5c, + 0x08, 0xbf, 0x6c, 0x20, 0x74, 0x2b, 0x20, 0xc5, 0xa9, 0xb0, 0x0b, 0x60, 0xb6, 0x61, 0x58, 0x2e, + 0xd7, 0xa9, 0x88, 0x4c, 0xd0, 0x6c, 0x82, 0x98, 0x2a, 0x74, 0x98, 0xea, 0x11, 0x94, 0xc2, 0x5d, + 0xfa, 0xee, 0xc8, 0xa5, 0x79, 0x57, 0x8a, 0xda, 0x2d, 0x44, 0xf6, 0x1b, 0x08, 0x39, 0x76, 0xa5, + 0x84, 0xec, 0x1b, 0x61, 0x96, 0x21, 0xea, 0xcc, 0xd6, 0xd2, 0xb7, 0x4d, 0x05, 0x5b, 0xec, 0x58, + 0x1f, 0xa7, 0x20, 0x09, 0x64, 0x4d, 0x5b, 0xa3, 0x48, 0xa6, 0x04, 0x0c, 0x25, 0x95, 0x0c, 0x13, + 0x57, 0xd4, 0xcf, 0x4a, 0x9a, 0x6a, 0xd9, 0xec, 0x19, 0xc2, 0x9f, 0xed, 0x19, 0x32, 0x45, 0x82, + 0x5b, 0xb3, 0x4d, 0xb5, 0x56, 0xbd, 0xad, 0x5a, 0x36, 0xf5, 0xc6, 0x81, 0xe3, 0x0d, 0x24, 0x25, + 0xa9, 0x18, 0xc5, 0x38, 0xa3, 0xcc, 0x03, 0x18, 0x75, 0x0d, 0xa8, 0x46, 0xcb, 0x86, 0x85, 0x6d, + 0x76, 0x9c, 0x98, 0x78, 0xa7, 0xc3, 0xc4, 0x8a, 0xe1, 0xca, 0xe3, 0x76, 0x50, 0x86, 0xff, 0xb0, + 0x47, 0xa4, 0x4f, 0x53, 0x19, 0x0f, 0x82, 0xb9, 0x4c, 0xb6, 0x55, 0x2d, 0xe3, 0xf6, 0xc2, 0xd9, + 0xbe, 0x0b, 0x8f, 0x53, 0x74, 0x6b, 0xed, 0x57, 0x61, 0x58, 0xdf, 0xb6, 0x7d, 0xfc, 0x89, 0xbe, + 0xfc, 0x84, 0x0b, 0x6f, 0x09, 0xe4, 0xc0, 0x5d, 0x6f, 0xa9, 0x26, 0x6f, 0x61, 0xcb, 0x90, 0x15, + 0xcc, 0x4e, 0xa6, 0xd0, 0xcc, 0x50, 0xe1, 0xd4, 0xf3, 0x47, 0xe8, 0x1b, 0xea, 0x92, 0x61, 0x0a, + 0xb9, 0xdb, 0x42, 0x30, 0x18, 0xc6, 0x5c, 0x96, 0x26, 0x6f, 0x60, 0xad, 0x64, 0x61, 0x0d, 0x2b, + 0xb6, 0x6e, 0xb2, 0x67, 0x89, 0xf1, 0x54, 0x87, 0xf1, 0xdb, 0x0e, 0x68, 0xcd, 0xc5, 0x10, 0x8f, + 0xc4, 0x9f, 0xee, 0xa1, 0x01, 0x08, 0xa1, 0x48, 0xc0, 0x75, 0xcd, 0x08, 0xd5, 0xf3, 0x21, 0x99, + 0xbb, 0xed, 0x9d, 0x95, 0x77, 0xac, 0x52, 0xdd, 0x50, 0x4a, 0x6a, 0xd9, 0x62, 0xa7, 0x88, 0x8d, + 0x89, 0x0e, 0x1b, 0xf9, 0x1d, 0x6b, 0xdd, 0x50, 0x9c, 0xfd, 0x6a, 0xbb, 0xdb, 0x9d, 0x36, 0x1d, + 0x59, 0x29, 0x5b, 0xcc, 0x4f, 0xdb, 0xd3, 0x76, 0xf4, 0xac, 0xed, 0x8d, 0x1a, 0xb6, 0x89, 0x24, + 0x47, 0x24, 0xa7, 0xba, 0x25, 0xd7, 0x08, 0x86, 0xa8, 0x46, 0xff, 0xf6, 0x28, 0x6c, 0x63, 0xcb, + 0x76, 0xc5, 0x99, 0xb6, 0x38, 0xc5, 0x38, 0xfa, 0x79, 0x48, 0x3a, 0x21, 0x5c, 0xc6, 0x96, 0xad, + 0xd6, 0x64, 0x92, 0x05, 0xd9, 0xd9, 0x3e, 0xdb, 0x11, 0x94, 0x86, 0x65, 0x4d, 0xbb, 0xee, 0x81, + 0x33, 0x2a, 0x8c, 0x7b, 0xe8, 0xbe, 0x88, 0x9e, 0x7b, 0xbd, 0x88, 0x0e, 0x4a, 0x63, 0x1e, 0x45, + 0x4f, 0x58, 0x97, 0x61, 0xc2, 0x6b, 0xca, 0x1f, 0xdb, 0xdf, 0x7f, 0xb5, 0xd8, 0x0e, 0x4a, 0x67, + 0x3c, 0x5a, 0xde, 0x00, 0xbf, 0x09, 0x23, 0x6e, 0x80, 0xfb, 0xdc, 0xc2, 0xf7, 0x75, 0x0b, 0x43, + 0x29, 0x3e, 0xcf, 0xac, 0xc0, 0x68, 0x2b, 0xd4, 0x7d, 0x4a, 0x17, 0xfa, 0x2a, 0x8d, 0xb8, 0x1c, + 0x9f, 0xd4, 0x15, 0xf0, 0xba, 0xc4, 0x13, 0xf9, 0x82, 0x3f, 0xf2, 0x83, 0xd2, 0xa8, 0x07, 0x77, + 0x14, 0xfe, 0x3a, 0x4c, 0x7a, 0xf9, 0x1d, 0x67, 0x60, 0xfe, 0xf5, 0xce, 0x40, 0x50, 0x62, 0x3d, + 0xa2, 0xfe, 0x83, 0x70, 0x11, 0x62, 0x24, 0x37, 0x6a, 0x7a, 0xa9, 0xae, 0x1a, 0x16, 0x9b, 0xe9, + 0xbb, 0x66, 0x92, 0x1c, 0x35, 0x7d, 0x5d, 0x35, 0xac, 0x23, 0xa6, 0x4a, 0x99, 0xd9, 0x13, 0x30, + 0x55, 0xc2, 0xfc, 0xd4, 0x1f, 0x89, 0xde, 0x13, 0x28, 0x9e, 0xec, 0x04, 0xfa, 0xdd, 0x77, 0x74, + 0x0c, 0x37, 0xfd, 0xee, 0xeb, 0x38, 0x8b, 0xb9, 0x57, 0x3d, 0x8b, 0x41, 0x69, 0xdc, 0x6f, 0xe6, + 0xe8, 0x40, 0xba, 0x35, 0xc5, 0x36, 0xe5, 0x4a, 0x45, 0x55, 0xd8, 0xcb, 0x7d, 0x16, 0x1f, 0x22, + 0x8b, 0xbf, 0x4f, 0x91, 0xcc, 0x15, 0x18, 0x26, 0x44, 0xc5, 0x68, 0x93, 0xaf, 0xf4, 0x25, 0xc7, + 0x1d, 0xb2, 0x62, 0x74, 0xf0, 0xb7, 0xcb, 0x47, 0xfc, 0xab, 0xdf, 0xca, 0xff, 0xb8, 0xdc, 0xe6, + 0x3f, 0x80, 0x98, 0x6c, 0x18, 0x9a, 0xaa, 0xb8, 0x41, 0xfe, 0x21, 0x21, 0x0b, 0x7d, 0x0b, 0xb0, + 0x90, 0xf7, 0x30, 0x3c, 0x67, 0x33, 0x24, 0xf9, 0xb4, 0x98, 0x0a, 0x8c, 0x90, 0xce, 0x4b, 0xd1, + 0x9d, 0xde, 0xc0, 0xb4, 0x4b, 0xa6, 0x5c, 0xab, 0x62, 0x36, 0x7f, 0x12, 0x13, 0x45, 0x97, 0x58, + 0xd4, 0x4d, 0xdb, 0x67, 0xe2, 0xb4, 0xe1, 0x19, 0x91, 0x1c, 0x41, 0x46, 0x82, 0x38, 0x3d, 0x19, + 0x5b, 0xb2, 0xad, 0x6c, 0x62, 0x93, 0x2d, 0x12, 0x0b, 0xd3, 0xbd, 0x0e, 0xc6, 0x1d, 0x0a, 0x21, + 0x92, 0xb1, 0xa7, 0x7b, 0x28, 0x0c, 0x41, 0x14, 0x71, 0xa4, 0xa5, 0x98, 0xe6, 0x19, 0xbf, 0x74, + 0x38, 0xf4, 0x65, 0x03, 0x71, 0x30, 0x05, 0x03, 0x4e, 0x6f, 0x61, 0x31, 0x23, 0x59, 0x3e, 0x9b, + 0xe1, 0xc5, 0x0c, 0x9f, 0xcb, 0xf0, 0x4b, 0x19, 0xfe, 0x62, 0x86, 0xcf, 0xe6, 0xbe, 0x6a, 0xa0, + 0xbd, 0x21, 0x18, 0x87, 0xb0, 0x73, 0x60, 0x27, 0x87, 0x21, 0xde, 0xea, 0xce, 0x04, 0xe7, 0xa0, + 0xc3, 0x0f, 0x21, 0xea, 0x70, 0x53, 0xb4, 0xed, 0x98, 0x2b, 0xc0, 0x87, 0x10, 0xa3, 0x5d, 0x9b, + 0x18, 0xbe, 0x8e, 0x6b, 0xbb, 0x90, 0x70, 0xfb, 0x32, 0x71, 0x20, 0xef, 0xfc, 0x81, 0x54, 0x67, + 0xe7, 0x25, 0x26, 0x56, 0xc8, 0x73, 0xca, 0xed, 0x98, 0xe0, 0x97, 0x21, 0x18, 0xa4, 0x05, 0x75, + 0xee, 0x3f, 0x41, 0xf8, 0x77, 0x10, 0x18, 0x5f, 0x2f, 0x23, 0x86, 0xf2, 0xb5, 0x5d, 0x10, 0xe0, + 0x6c, 0x77, 0x9b, 0x22, 0xd0, 0xdf, 0xd8, 0x4a, 0x0f, 0x27, 0x43, 0x73, 0xd1, 0x95, 0x62, 0xaa, + 0xe8, 0xbe, 0x80, 0x95, 0x36, 0xde, 0x97, 0x99, 0x05, 0x13, 0x57, 0x7e, 0x94, 0xf9, 0x09, 0x13, + 0x9b, 0x04, 0x0a, 0x4d, 0x39, 0xc9, 0x78, 0x0a, 0xd8, 0xe3, 0xc0, 0x49, 0x04, 0xef, 0x75, 0x36, + 0x19, 0xe2, 0xd8, 0xba, 0x2a, 0xa7, 0x56, 0xc8, 0xbb, 0xd4, 0x4a, 0xcd, 0xc6, 0x66, 0x45, 0x56, + 0xb0, 0x05, 0xb3, 0x5d, 0xed, 0x84, 0x78, 0xc6, 0x41, 0xde, 0xa3, 0x2f, 0xbd, 0xd0, 0xe9, 0xee, + 0xc6, 0x81, 0x89, 0x4e, 0x0e, 0xb5, 0x93, 0x24, 0x8c, 0x1f, 0xd3, 0x23, 0xc0, 0x2c, 0x4c, 0x74, + 0x57, 0x75, 0x81, 0xfe, 0x4d, 0xc7, 0x92, 0xa1, 0xb9, 0x48, 0xfe, 0x93, 0xb5, 0xd4, 0x7a, 0xf1, + 0x9a, 0x05, 0x22, 0x4c, 0xf7, 0x2c, 0xd8, 0x42, 0xfb, 0x27, 0xf5, 0x9b, 0x43, 0xa0, 0xa7, 0xde, + 0x82, 0x5f, 0x84, 0x21, 0xea, 0xc9, 0xf6, 0x73, 0xff, 0x08, 0xc1, 0xdf, 0x43, 0x30, 0xde, 0x5d, + 0x9a, 0xe9, 0xb6, 0x2c, 0x40, 0xea, 0x98, 0x82, 0xdb, 0x67, 0x6f, 0xd6, 0xfc, 0xa4, 0x13, 0x6c, + 0xd0, 0x3b, 0x70, 0xae, 0x2f, 0x23, 0x89, 0x80, 0xef, 0x59, 0x29, 0x8f, 0xdb, 0x2a, 0xa1, 0x77, + 0x39, 0x3c, 0x76, 0xbf, 0xde, 0x3d, 0xa6, 0xe6, 0xf9, 0x37, 0x6d, 0xaa, 0x5f, 0x65, 0x83, 0x94, + 0xbf, 0x0c, 0x89, 0xc9, 0xbc, 0xa6, 0xb5, 0x6d, 0xad, 0xaf, 0x14, 0x9d, 0xa8, 0xf0, 0x95, 0x1b, + 0x71, 0xd8, 0x41, 0xb8, 0x93, 0x27, 0x00, 0x01, 0xb8, 0x63, 0xaa, 0x4a, 0xef, 0x08, 0x58, 0x86, + 0x77, 0x8f, 0xaf, 0x15, 0xfd, 0xc2, 0xe0, 0xd7, 0x08, 0x62, 0x6e, 0x36, 0x4d, 0x39, 0x69, 0x65, + 0xee, 0x31, 0x82, 0xcf, 0x5b, 0x07, 0xd3, 0xcd, 0xc9, 0x34, 0x02, 0xce, 0x74, 0xe5, 0x7a, 0x31, + 0x74, 0xff, 0x5a, 0xb1, 0xf5, 0xde, 0x93, 0xc3, 0xc5, 0xd0, 0xc7, 0xd7, 0x8b, 0xf0, 0x0e, 0x4c, + 0x78, 0xf3, 0xa9, 0xe0, 0x7d, 0x48, 0x87, 0x93, 0xa1, 0x0c, 0x82, 0xb1, 0x9e, 0x29, 0x16, 0xce, + 0x03, 0x90, 0x6c, 0x97, 0xfa, 0x01, 0xde, 0xb5, 0x92, 0xa8, 0x70, 0x06, 0x18, 0x5f, 0x86, 0x14, + 0x1e, 0x3a, 0xef, 0x43, 0x85, 0xef, 0x41, 0x9c, 0x5e, 0xbc, 0x4a, 0xca, 0xa6, 0xee, 0x5c, 0xc9, + 0x46, 0xf7, 0x1b, 0x28, 0x7a, 0xd0, 0x40, 0xd0, 0x6c, 0xa0, 0x48, 0x36, 0xcb, 0x67, 0x45, 0x3e, + 0xbb, 0x50, 0x58, 0x86, 0xb8, 0x7b, 0x3a, 0x5c, 0xd8, 0xf9, 0xfd, 0x06, 0x1a, 0x3b, 0x68, 0xa0, + 0xd1, 0x66, 0x03, 0x4d, 0x8a, 0x59, 0x5e, 0x14, 0x79, 0x71, 0x81, 0x17, 0x73, 0xbc, 0xb8, 0xc8, + 0x8b, 0x4b, 0xbc, 0xb8, 0xcc, 0x8b, 0x17, 0xf9, 0x85, 0x4c, 0xe1, 0x2a, 0x30, 0x5e, 0xa7, 0xba, + 0xec, 0xd9, 0xfd, 0x06, 0x9a, 0x3d, 0x68, 0xa0, 0x99, 0x66, 0x03, 0x9d, 0xcb, 0x89, 0x7c, 0x6e, + 0x81, 0xcf, 0xe5, 0xf8, 0xdc, 0x22, 0x9f, 0x5b, 0xe2, 0x73, 0xcb, 0x7c, 0xee, 0x22, 0x9f, 0x7b, + 0x9f, 0x5f, 0xcc, 0xf0, 0x8b, 0x62, 0x81, 0x87, 0x84, 0xeb, 0x92, 0x16, 0x79, 0x72, 0xbf, 0x81, + 0x2e, 0x1f, 0x34, 0xd0, 0x07, 0xcd, 0x06, 0x4a, 0x2c, 0x65, 0xf9, 0x25, 0x91, 0x5f, 0x5a, 0xe0, + 0x97, 0x72, 0xfc, 0xd2, 0xe2, 0x6a, 0x38, 0x02, 0xc9, 0xe8, 0x6a, 0x38, 0x32, 0x9a, 0x1c, 0x5b, + 0x0d, 0x47, 0xce, 0x25, 0xb9, 0xd5, 0x70, 0x64, 0x26, 0x39, 0xbb, 0x1a, 0x8e, 0x2c, 0x24, 0x73, + 0xab, 0xe1, 0xc8, 0x07, 0xc9, 0xcb, 0xe9, 0x2f, 0x10, 0xa4, 0x8f, 0xbf, 0x97, 0xb7, 0x5a, 0x5a, + 0xe6, 0x73, 0x18, 0x70, 0xae, 0x99, 0x16, 0x8b, 0x52, 0xa1, 0x99, 0xa8, 0x78, 0xe3, 0xa4, 0x97, + 0xdf, 0xfe, 0x57, 0xfe, 0x42, 0xea, 0x8f, 0x7f, 0xdd, 0x0f, 0x0d, 0x3e, 0x41, 0xa1, 0xe4, 0x63, + 0xe4, 0xfc, 0x1c, 0x78, 0x82, 0x82, 0x19, 0xd4, 0xfc, 0xfa, 0x4f, 0xa1, 0xc1, 0x27, 0x7b, 0x28, + 0x98, 0x44, 0x12, 0x35, 0x9b, 0x3e, 0x1c, 0x84, 0xc4, 0x4d, 0x4d, 0xdf, 0x90, 0xb5, 0x35, 0x03, + 0x2b, 0x64, 0x4a, 0x0b, 0x30, 0x44, 0xca, 0x45, 0x49, 0xd6, 0x34, 0x36, 0xd8, 0xf7, 0x2a, 0x1f, + 0x21, 0xc0, 0xbc, 0xa6, 0x31, 0x77, 0x49, 0x6c, 0xe9, 0x3b, 0xb8, 0xdc, 0xbe, 0xb7, 0x85, 0x08, + 0xf5, 0x5c, 0x07, 0xf5, 0xa8, 0x5f, 0xa7, 0xe5, 0xf6, 0x9f, 0x0d, 0x14, 0xb8, 0x15, 0x90, 0x12, + 0x2e, 0xbb, 0x75, 0x8d, 0xfb, 0x14, 0x46, 0x5b, 0x7a, 0xbe, 0xe6, 0x38, 0xfc, 0x2a, 0xa2, 0x23, + 0xae, 0x84, 0xaf, 0x57, 0xce, 0x42, 0xc4, 0xa9, 0x8d, 0x64, 0x75, 0x03, 0x7d, 0x57, 0x77, 0xca, + 0xc1, 0x39, 0x8b, 0xbb, 0x0d, 0x89, 0x32, 0xae, 0xa9, 0x9e, 0xb5, 0x0d, 0xbe, 0xca, 0x34, 0xe2, + 0x94, 0xdc, 0x5a, 0xda, 0x3a, 0x8c, 0xb8, 0x6a, 0xbe, 0x95, 0x9d, 0x7a, 0x15, 0x49, 0x86, 0x2a, + 0x74, 0xdc, 0xb4, 0x86, 0x9c, 0x3d, 0xa5, 0x77, 0xab, 0x08, 0x51, 0x5b, 0x7d, 0xf3, 0x70, 0x6a, + 0x99, 0x76, 0x76, 0xdb, 0x74, 0x9f, 0x19, 0x1d, 0x12, 0x16, 0xae, 0x6e, 0xe1, 0x9a, 0xed, 0x0a, + 0xb0, 0x43, 0xc4, 0xde, 0x7b, 0x1d, 0xf6, 0xda, 0x5f, 0x6a, 0x08, 0x96, 0x8a, 0x92, 0x75, 0x4c, + 0xbf, 0x6c, 0x20, 0xf4, 0x6c, 0x0f, 0x8d, 0xcf, 0xc5, 0x2c, 0xbd, 0x62, 0x6f, 0xc8, 0xb5, 0x87, + 0xa5, 0x2d, 0xac, 0xcc, 0x9d, 0xaa, 0xe0, 0xb2, 0x29, 0x6f, 0x19, 0x52, 0xdc, 0xf2, 0x72, 0x18, + 0x0c, 0x31, 0xdd, 0xc0, 0x66, 0xa9, 0xaa, 0x94, 0x2c, 0x03, 0x2b, 0x6c, 0x99, 0x98, 0xbb, 0x74, + 0xd2, 0xe5, 0xdd, 0x33, 0xb0, 0xe9, 0x8f, 0xf2, 0xf6, 0x9d, 0x48, 0x02, 0x47, 0xf8, 0xa6, 0xe2, + 0x0c, 0x5c, 0x3a, 0xff, 0x65, 0x03, 0xa5, 0x61, 0x08, 0xc2, 0xce, 0xca, 0x19, 0x94, 0x85, 0x31, + 0x48, 0xba, 0x93, 0x4f, 0xb5, 0xef, 0x2e, 0xe8, 0xfd, 0xc2, 0x0c, 0x44, 0x89, 0xab, 0xdd, 0x5c, + 0x31, 0xb1, 0xdf, 0x40, 0x41, 0xe7, 0x6e, 0xda, 0x6c, 0xa0, 0xb8, 0xc8, 0x2f, 0xf0, 0x39, 0x7e, + 0x91, 0x5f, 0xe2, 0x97, 0xf9, 0x8b, 0xab, 0xe1, 0x08, 0x4a, 0x06, 0xd3, 0x7f, 0x41, 0xc0, 0x74, + 0xcf, 0x81, 0xb9, 0xdf, 0xf9, 0x51, 0x30, 0xd4, 0xe3, 0xa2, 0xe0, 0xff, 0x1c, 0x38, 0xe6, 0xff, + 0x1c, 0xd8, 0x5e, 0xc4, 0xd1, 0x17, 0x41, 0xa6, 0x02, 0xa7, 0x5b, 0x4d, 0xae, 0xda, 0x2a, 0x97, + 0x6c, 0xf0, 0x04, 0xda, 0x67, 0x9f, 0x3d, 0xea, 0x66, 0xb6, 0x2c, 0x24, 0xdd, 0x91, 0x76, 0x05, + 0x4e, 0x7f, 0x31, 0x00, 0x89, 0x6b, 0x26, 0x96, 0x6d, 0xfc, 0x66, 0xa9, 0xe3, 0xd6, 0xeb, 0xa5, + 0x8e, 0x1e, 0x49, 0x43, 0x7a, 0x83, 0xa4, 0xf1, 0x3f, 0x4c, 0x17, 0x37, 0x5e, 0x2b, 0x5d, 0x74, + 0x27, 0x8a, 0xe2, 0xeb, 0x27, 0x8a, 0xff, 0x7f, 0x8a, 0xb8, 0xfb, 0x86, 0x29, 0xa2, 0x23, 0x03, + 0x5c, 0x3a, 0xfd, 0xd5, 0x95, 0x8e, 0x42, 0x55, 0xe0, 0xfc, 0xa7, 0x70, 0xf8, 0xe7, 0xff, 0x42, + 0xde, 0x17, 0xee, 0xd9, 0xfb, 0xdd, 0x00, 0x0c, 0x4b, 0xd8, 0xd0, 0x64, 0xe5, 0x6d, 0x9c, 0xbe, + 0x8d, 0xd3, 0xef, 0x6e, 0x9c, 0xfe, 0x76, 0x00, 0xa2, 0x37, 0xb1, 0xfd, 0x36, 0x46, 0xdf, 0xc6, + 0xe8, 0x77, 0x35, 0x46, 0x0b, 0x4f, 0xd1, 0xc1, 0x0b, 0x2e, 0xf0, 0xfc, 0x05, 0x17, 0x78, 0xf9, + 0x82, 0x43, 0x8f, 0x9b, 0x1c, 0xfa, 0x7d, 0x93, 0x43, 0x7f, 0x6e, 0x72, 0xe8, 0xa0, 0xc9, 0xa1, + 0xe7, 0x4d, 0x0e, 0x7d, 0xdd, 0xe4, 0xd0, 0x37, 0x4d, 0x2e, 0xf0, 0xb2, 0xc9, 0xa1, 0x5f, 0x1d, + 0x72, 0x81, 0xfd, 0x43, 0x0e, 0x1d, 0x1c, 0x72, 0x81, 0xe7, 0x87, 0x5c, 0xe0, 0xc1, 0x8f, 0xab, + 0xba, 0xf1, 0xb0, 0x2a, 0xd4, 0x75, 0xcd, 0xc6, 0xa6, 0x29, 0x0b, 0xdb, 0xd6, 0x3c, 0xf9, 0x51, + 0xd1, 0xcd, 0xad, 0x0b, 0x86, 0xa9, 0xd7, 0xd5, 0x32, 0x36, 0x2f, 0xb4, 0x86, 0xe7, 0x8d, 0x8d, + 0xaa, 0x3e, 0x8f, 0x3f, 0xb3, 0xdd, 0xff, 0xb4, 0x7e, 0xcb, 0xff, 0xc1, 0x37, 0x06, 0xc9, 0x0d, + 0x75, 0xe1, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x29, 0x03, 0x22, 0x38, 0x38, 0x1f, 0x00, 0x00, } func (this *ServiceActionType) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/fast_acl/crudapi/api.vesapi.go b/pbgo/extschema/schema/fast_acl/crudapi/api.vesapi.go index b3335c8c4..b8291e790 100644 --- a/pbgo/extschema/schema/fast_acl/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/fast_acl/crudapi/api.vesapi.go @@ -3487,10 +3487,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/fast_acl/object.pb.go b/pbgo/extschema/schema/fast_acl/object.pb.go index 8a3362433..2ca668e28 100644 --- a/pbgo/extschema/schema/fast_acl/object.pb.go +++ b/pbgo/extschema/schema/fast_acl/object.pb.go @@ -235,46 +235,47 @@ func init() { } var fileDescriptor_3a30606dd89baeb4 = []byte{ - // 618 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x6b, 0x13, 0x4f, - 0x14, 0xc0, 0x33, 0x49, 0xfe, 0x69, 0x99, 0x94, 0xfe, 0xcb, 0x1e, 0x24, 0xb6, 0x3a, 0x84, 0x14, - 0xb4, 0x87, 0xee, 0x2e, 0xa6, 0x8a, 0xb4, 0x48, 0xab, 0xad, 0x50, 0x90, 0x16, 0x31, 0xf5, 0xe4, - 0x25, 0xcc, 0x4e, 0xde, 0x6e, 0x47, 0x77, 0x33, 0xcb, 0xcc, 0x6c, 0x6c, 0x0f, 0x82, 0x78, 0xf4, - 0xe4, 0xc7, 0x10, 0xef, 0xde, 0xad, 0x27, 0x6f, 0x96, 0x9e, 0x7a, 0xb4, 0x9b, 0x8b, 0xe0, 0xa5, - 0xf4, 0x13, 0x48, 0x67, 0xbb, 0xa5, 0x09, 0x29, 0x08, 0xb9, 0xcd, 0xf2, 0x7e, 0xef, 0xb7, 0x8f, - 0xf7, 0xde, 0x0c, 0x9e, 0xef, 0x81, 0x72, 0xb8, 0x70, 0x15, 0xdb, 0x85, 0x88, 0xba, 0x3e, 0x55, - 0xba, 0x4d, 0x59, 0xe8, 0x0a, 0xef, 0x35, 0x30, 0xed, 0xc4, 0x52, 0x68, 0x61, 0xdd, 0xc8, 0x20, - 0x27, 0x83, 0x9c, 0x1c, 0x9a, 0xb5, 0x03, 0xae, 0x77, 0x13, 0xcf, 0x61, 0x22, 0x72, 0x03, 0x11, - 0x08, 0xd7, 0xe0, 0x5e, 0xe2, 0x9b, 0x2f, 0xf3, 0x61, 0x4e, 0x99, 0x66, 0xb6, 0x71, 0xcd, 0xbf, - 0xf4, 0x7e, 0x0c, 0xea, 0x82, 0xb9, 0x3b, 0x9a, 0x69, 0xcb, 0x24, 0x84, 0x01, 0x70, 0x6e, 0x10, - 0x14, 0xb1, 0xe6, 0xa2, 0x9b, 0x07, 0x6f, 0x0e, 0x06, 0xaf, 0xe6, 0x0d, 0x15, 0xd1, 0x03, 0x05, - 0xdd, 0xde, 0x60, 0x7a, 0xe3, 0x6b, 0x19, 0x57, 0x9e, 0x9b, 0x06, 0x58, 0xcb, 0x78, 0x32, 0x02, - 0x4d, 0x3b, 0x54, 0xd3, 0x1a, 0xaa, 0xa3, 0x85, 0x6a, 0xf3, 0xb6, 0x33, 0xd8, 0x8d, 0x0c, 0xdc, - 0x06, 0x4d, 0x5f, 0xee, 0xc7, 0xd0, 0xba, 0xc4, 0xad, 0x2d, 0xfc, 0xbf, 0xda, 0x57, 0x1a, 0xa2, - 0xf6, 0xa5, 0xa1, 0x68, 0x0c, 0xf3, 0x43, 0x86, 0x1d, 0x43, 0x0d, 0x79, 0xa6, 0xb3, 0xdc, 0xed, - 0xdc, 0x76, 0x1f, 0x97, 0x55, 0x0c, 0xac, 0x56, 0x32, 0x8a, 0xba, 0x33, 0x7a, 0x24, 0xce, 0x4e, - 0x0c, 0xcc, 0xe4, 0x1b, 0x7a, 0xe5, 0x4f, 0xf1, 0x6c, 0xf5, 0xbf, 0x7b, 0x8b, 0xcd, 0xc5, 0xa5, - 0x0f, 0x6b, 0x95, 0xcc, 0xf8, 0xfd, 0xa0, 0x56, 0x9c, 0x41, 0x47, 0x07, 0xb5, 0x9f, 0x45, 0xfc, - 0x18, 0x97, 0x36, 0x41, 0x5b, 0xcb, 0xfe, 0x83, 0x3d, 0x66, 0x2b, 0x60, 0x89, 0x84, 0x08, 0xd4, - 0xae, 0xed, 0x51, 0xc5, 0x99, 0x1d, 0x89, 0x2e, 0xd7, 0x42, 0x2e, 0xd6, 0x7b, 0xa0, 0x6c, 0x2e, - 0x6c, 0xde, 0xf5, 0x25, 0x55, 0x5a, 0x26, 0x4c, 0x27, 0x12, 0x6c, 0x09, 0xb4, 0x83, 0xd7, 0xf1, - 0x44, 0x0b, 0xe2, 0x90, 0x32, 0xb0, 0x1e, 0x8e, 0xb6, 0x24, 0x0a, 0xae, 0x55, 0xbc, 0x95, 0x5c, - 0x03, 0x7e, 0x82, 0x2b, 0x1b, 0x12, 0xa8, 0x1e, 0x4f, 0xf1, 0x14, 0x42, 0x18, 0x4f, 0x51, 0xde, - 0xe2, 0x6a, 0x9c, 0x66, 0x34, 0x5e, 0xe0, 0xc9, 0xbc, 0xff, 0xd6, 0x1a, 0x9e, 0x08, 0x58, 0xdb, - 0x8c, 0x2c, 0x9b, 0xfa, 0x9d, 0xeb, 0x46, 0xb6, 0x19, 0x0a, 0x8f, 0x86, 0x97, 0x83, 0xab, 0x04, - 0xec, 0xfc, 0xbc, 0x52, 0x3e, 0x5b, 0x45, 0xcd, 0xc6, 0x29, 0xc2, 0x53, 0x3b, 0x9a, 0xea, 0x44, - 0xfd, 0xf3, 0x42, 0x66, 0xf8, 0x88, 0x85, 0x7c, 0x86, 0xab, 0xd9, 0xb5, 0x6e, 0x4b, 0xf0, 0x55, - 0xad, 0x58, 0x2f, 0x2d, 0x54, 0x9b, 0xb7, 0x46, 0xae, 0x73, 0x0b, 0xfc, 0xf3, 0xe4, 0xf5, 0xea, - 0x97, 0x77, 0x93, 0x79, 0xa1, 0x2d, 0x2c, 0xf2, 0x98, 0xb2, 0x1e, 0x61, 0xcc, 0x44, 0xb7, 0xc3, - 0xcd, 0xb5, 0xa9, 0x95, 0x46, 0xaa, 0x36, 0x72, 0xc0, 0xd4, 0x71, 0x85, 0x5f, 0x99, 0x3b, 0x5a, - 0x9d, 0xc1, 0xd3, 0x78, 0x2a, 0x2f, 0xcd, 0x49, 0x78, 0x27, 0x5f, 0xd4, 0xf5, 0x8f, 0xe8, 0xf0, - 0x84, 0x14, 0x8e, 0x4f, 0x48, 0xe1, 0xf4, 0x84, 0xa0, 0xf7, 0x29, 0x41, 0x9f, 0x53, 0x82, 0x7e, - 0xa4, 0x04, 0x1d, 0xa6, 0x04, 0x1d, 0xa7, 0x04, 0xfd, 0x4a, 0x09, 0xfa, 0x9d, 0x92, 0xc2, 0x69, - 0x4a, 0xd0, 0xa7, 0x3e, 0x29, 0x7c, 0xeb, 0x13, 0x74, 0xd8, 0x27, 0x85, 0xe3, 0x3e, 0x29, 0xbc, - 0xda, 0x0a, 0x44, 0xfc, 0x26, 0x70, 0x7a, 0x22, 0xd4, 0x20, 0x25, 0x75, 0x12, 0xe5, 0x9a, 0x83, - 0x2f, 0x64, 0x64, 0xc7, 0x52, 0xf4, 0x78, 0x07, 0xa4, 0x9d, 0x87, 0xdd, 0xd8, 0x0b, 0x84, 0x0b, - 0x7b, 0xfa, 0xe2, 0x3d, 0x18, 0x7a, 0x77, 0xbc, 0x8a, 0x79, 0x11, 0x96, 0xfe, 0x06, 0x00, 0x00, - 0xff, 0xff, 0x73, 0xa6, 0x35, 0x2d, 0x28, 0x05, 0x00, 0x00, + // 634 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0x13, 0x41, + 0x14, 0xc7, 0x3b, 0xb4, 0x14, 0x32, 0x25, 0x48, 0xf6, 0x60, 0x2a, 0xe8, 0xa4, 0x29, 0x89, 0x72, + 0x60, 0x77, 0x63, 0xd1, 0x83, 0xc4, 0x40, 0x02, 0x26, 0x24, 0x06, 0x62, 0x2c, 0xc6, 0x83, 0x1e, + 0xea, 0xec, 0xec, 0xdb, 0x65, 0x75, 0xb7, 0xb3, 0x99, 0x99, 0xad, 0x70, 0x30, 0x31, 0x1e, 0x8d, + 0x07, 0x3f, 0x86, 0xf1, 0x53, 0x88, 0x27, 0x8f, 0x84, 0x83, 0xe1, 0x28, 0xdb, 0x8b, 0xc7, 0x86, + 0x4f, 0x60, 0x98, 0x65, 0x91, 0x36, 0x8b, 0xf1, 0xc2, 0x6d, 0x26, 0xef, 0xf7, 0xfe, 0xff, 0x97, + 0x99, 0xf7, 0x1e, 0x9e, 0xef, 0x81, 0xb4, 0x02, 0x6e, 0x4b, 0xb6, 0x03, 0x11, 0xb5, 0x3d, 0x2a, + 0x55, 0x87, 0xb2, 0xd0, 0xe6, 0xce, 0x6b, 0x60, 0xca, 0x8a, 0x05, 0x57, 0xdc, 0xb8, 0x9e, 0x41, + 0x56, 0x06, 0x59, 0x39, 0x34, 0x6b, 0xfa, 0x81, 0xda, 0x49, 0x1c, 0x8b, 0xf1, 0xc8, 0xf6, 0xb9, + 0xcf, 0x6d, 0x8d, 0x3b, 0x89, 0xa7, 0x6f, 0xfa, 0xa2, 0x4f, 0x99, 0xcc, 0x6c, 0xf3, 0x12, 0x2f, + 0xb5, 0x17, 0x83, 0x3c, 0x63, 0xee, 0x14, 0x33, 0x1d, 0x91, 0x84, 0x30, 0x04, 0xce, 0x0d, 0x83, + 0x3c, 0x56, 0x01, 0xef, 0xe6, 0xc1, 0x1b, 0xc3, 0xc1, 0x8b, 0x79, 0x23, 0x45, 0xf4, 0x40, 0x42, + 0xb7, 0x37, 0x9c, 0xde, 0xfc, 0x39, 0x8e, 0xab, 0x4f, 0xf4, 0x03, 0x18, 0x0f, 0xf0, 0x64, 0x04, + 0x8a, 0xba, 0x54, 0xd1, 0x3a, 0x6a, 0xa0, 0x85, 0x5a, 0xeb, 0x96, 0x35, 0xfc, 0x1a, 0x19, 0xb8, + 0x05, 0x8a, 0x3e, 0xdb, 0x8b, 0xa1, 0x7d, 0x8e, 0x1b, 0x9b, 0xf8, 0x9a, 0xdc, 0x93, 0x0a, 0xa2, + 0xce, 0xb9, 0xc2, 0x98, 0x56, 0x98, 0x1f, 0x51, 0xd8, 0xd6, 0xd4, 0x88, 0xce, 0x74, 0x96, 0xbb, + 0x95, 0xab, 0xdd, 0xc3, 0x15, 0x19, 0x03, 0xab, 0x97, 0xb5, 0x44, 0xc3, 0x2a, 0xfe, 0x12, 0x6b, + 0x3b, 0x06, 0xa6, 0xf3, 0x35, 0xbd, 0xfc, 0xa9, 0x72, 0xb2, 0x32, 0x7e, 0x77, 0xb1, 0xb5, 0xb8, + 0xf4, 0x61, 0xb5, 0x9a, 0x29, 0x7e, 0xdf, 0xaf, 0x8f, 0xcd, 0xa0, 0xc3, 0xfd, 0xfa, 0xa0, 0x8c, + 0x1d, 0x5c, 0xde, 0x00, 0x65, 0xbc, 0xf4, 0xee, 0xef, 0x32, 0x53, 0x02, 0x4b, 0x04, 0x44, 0x20, + 0x77, 0x4c, 0x87, 0xca, 0x80, 0x99, 0x11, 0xef, 0x06, 0x8a, 0x8b, 0xc5, 0xc6, 0x68, 0x58, 0x2a, + 0xda, 0x75, 0xa9, 0x70, 0xff, 0x12, 0x3d, 0x90, 0x66, 0xc0, 0xcd, 0xa0, 0xeb, 0x09, 0x2a, 0x95, + 0x48, 0x98, 0x4a, 0x04, 0x98, 0x02, 0xa8, 0x8b, 0x29, 0x9e, 0x68, 0x43, 0x1c, 0x52, 0x06, 0xc6, + 0xf3, 0x62, 0x9f, 0x44, 0xc2, 0xbf, 0x4c, 0xb2, 0x70, 0xb1, 0xc3, 0x5b, 0x11, 0x28, 0xc0, 0xaf, + 0x70, 0x75, 0x5d, 0x00, 0x55, 0x57, 0xea, 0xf0, 0x08, 0x42, 0xb8, 0x42, 0x07, 0x86, 0x2b, 0x9b, + 0x81, 0xbc, 0xda, 0xbf, 0x68, 0x3e, 0xc5, 0x93, 0x79, 0x83, 0x18, 0xab, 0x78, 0xc2, 0x67, 0x1d, + 0xdd, 0x53, 0x59, 0x5b, 0xde, 0xbe, 0xac, 0xa7, 0x36, 0x42, 0xee, 0xd0, 0xf0, 0xbc, 0xb3, 0xaa, + 0x3e, 0x3b, 0x3d, 0x2f, 0x57, 0x4e, 0x56, 0x50, 0xab, 0x39, 0x40, 0x78, 0x6a, 0x5b, 0x51, 0x95, + 0xc8, 0xff, 0x9e, 0x98, 0x0c, 0x2f, 0x98, 0x98, 0xc7, 0xb8, 0x96, 0xed, 0x9d, 0x8e, 0x00, 0x4f, + 0xd6, 0xc7, 0x1a, 0xe5, 0x85, 0x5a, 0xeb, 0x66, 0xe1, 0xbc, 0xb5, 0xc1, 0x3b, 0x4d, 0x5e, 0xab, + 0x7d, 0x7d, 0x37, 0x99, 0x17, 0xda, 0xc6, 0x3c, 0x8f, 0x49, 0xe3, 0x21, 0xc6, 0x8c, 0x77, 0xdd, + 0x40, 0xcf, 0x75, 0xbd, 0x5c, 0x28, 0xb5, 0x9e, 0x03, 0xba, 0x8e, 0x0b, 0xfc, 0xf2, 0xdc, 0xe1, + 0xca, 0x0c, 0x9e, 0xc6, 0x53, 0x79, 0x69, 0x56, 0x12, 0xb8, 0xf9, 0x24, 0xad, 0x7d, 0x44, 0x07, + 0xc7, 0xa4, 0x74, 0x74, 0x4c, 0x4a, 0x83, 0x63, 0x82, 0xde, 0xa7, 0x04, 0x7d, 0x49, 0x09, 0xfa, + 0x91, 0x12, 0x74, 0x90, 0x12, 0x74, 0x94, 0x12, 0xf4, 0x2b, 0x25, 0xe8, 0x77, 0x4a, 0x4a, 0x83, + 0x94, 0xa0, 0xcf, 0x7d, 0x52, 0xfa, 0xd6, 0x27, 0xe8, 0xa0, 0x4f, 0x4a, 0x47, 0x7d, 0x52, 0x7a, + 0xb1, 0xe9, 0xf3, 0xf8, 0x8d, 0x6f, 0xf5, 0x78, 0xa8, 0x40, 0x08, 0x6a, 0x25, 0xd2, 0xd6, 0x07, + 0x8f, 0x8b, 0xc8, 0x8c, 0x05, 0xef, 0x05, 0x2e, 0x08, 0x33, 0x0f, 0xdb, 0xb1, 0xe3, 0x73, 0x1b, + 0x76, 0xd5, 0xd9, 0xc2, 0x1a, 0x59, 0x8c, 0x4e, 0x55, 0xaf, 0xac, 0xa5, 0x3f, 0x01, 0x00, 0x00, + 0xff, 0xff, 0x11, 0x99, 0x34, 0x5e, 0xc9, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/fast_acl/pkg.vespkg.go b/pbgo/extschema/schema/fast_acl/pkg.vespkg.go index 8ceb3f169..eef287832 100644 --- a/pbgo/extschema/schema/fast_acl/pkg.vespkg.go +++ b/pbgo/extschema/schema/fast_acl/pkg.vespkg.go @@ -75,60 +75,60 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.fast_acl.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fast_acl.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fast_acl.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fast_acl.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -143,11 +143,11 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.fast_acl.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.re_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.site_acl.fast_acl_rules.#.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/fast_acl/public_crudapi.pb.go b/pbgo/extschema/schema/fast_acl/public_crudapi.pb.go index 3e455f38a..873953b38 100644 --- a/pbgo/extschema/schema/fast_acl/public_crudapi.pb.go +++ b/pbgo/extschema/schema/fast_acl/public_crudapi.pb.go @@ -1107,109 +1107,110 @@ func init() { } var fileDescriptor_e08165080ec53b20 = []byte{ - // 1622 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0x49, - 0x16, 0x4e, 0xd9, 0x8e, 0xb1, 0xcb, 0xf9, 0xd1, 0xd4, 0x42, 0x70, 0x0c, 0x58, 0x5e, 0x87, 0x85, - 0x28, 0xbb, 0x6e, 0x43, 0x96, 0x45, 0x10, 0xad, 0xb2, 0xeb, 0x38, 0x76, 0x08, 0x18, 0x82, 0xda, - 0x26, 0x5a, 0xed, 0x1e, 0x5a, 0xed, 0x76, 0xd9, 0xf4, 0x62, 0xbb, 0x7b, 0xab, 0xca, 0x0e, 0xd1, - 0x2a, 0x12, 0xe2, 0xb0, 0xc7, 0xd5, 0x4a, 0x2b, 0xed, 0x61, 0xb5, 0x87, 0xbd, 0xac, 0xc4, 0x61, - 0xff, 0x80, 0x91, 0xa2, 0x91, 0x90, 0xe6, 0x00, 0xe2, 0x30, 0x83, 0x66, 0x2e, 0x1c, 0xe6, 0x30, - 0x38, 0x33, 0x12, 0x47, 0x34, 0x9a, 0xeb, 0x48, 0xa3, 0xae, 0xea, 0x36, 0xb6, 0xd3, 0x0e, 0x0e, - 0xc9, 0xc9, 0x5d, 0xf5, 0xde, 0xf7, 0xf5, 0xfb, 0xaa, 0xde, 0x7b, 0x55, 0x6e, 0xf8, 0xcb, 0x36, - 0xa6, 0xb2, 0x61, 0xa6, 0xa9, 0xfe, 0x00, 0x37, 0xb4, 0x74, 0x55, 0xa3, 0x4c, 0xd5, 0xf4, 0x7a, - 0xda, 0x6a, 0x95, 0xeb, 0x86, 0xae, 0xea, 0xa4, 0x55, 0xd1, 0x2c, 0x43, 0xb6, 0x88, 0xc9, 0x4c, - 0x34, 0x23, 0x9c, 0x65, 0xe1, 0x2c, 0xbb, 0xce, 0xb1, 0x54, 0xcd, 0x60, 0x0f, 0x5a, 0x65, 0x59, - 0x37, 0x1b, 0xe9, 0x9a, 0x59, 0x33, 0xd3, 0xdc, 0xbd, 0xdc, 0xaa, 0xf2, 0x11, 0x1f, 0xf0, 0x27, - 0x41, 0x13, 0x3b, 0x57, 0x33, 0xcd, 0x5a, 0x1d, 0xa7, 0x35, 0xcb, 0x48, 0x6b, 0xcd, 0xa6, 0xc9, - 0x34, 0x66, 0x98, 0x4d, 0xea, 0x58, 0xcf, 0x3a, 0xd6, 0x2e, 0x07, 0x6e, 0x58, 0x6c, 0xdb, 0x31, - 0xc6, 0xfa, 0xc3, 0xc5, 0x84, 0x98, 0xc4, 0x05, 0xce, 0x0d, 0x91, 0x62, 0x96, 0xff, 0x8c, 0x75, - 0xe6, 0x38, 0x25, 0x87, 0x38, 0xb1, 0x6d, 0x0b, 0xbb, 0x44, 0x97, 0xbc, 0x7d, 0x54, 0xd2, 0xaa, - 0xe3, 0x3e, 0xc7, 0xb3, 0xfd, 0x8e, 0xa6, 0xd5, 0xab, 0x63, 0xb6, 0xdf, 0xd8, 0x8b, 0x1b, 0x08, - 0xa2, 0x8d, 0x29, 0x6e, 0xb6, 0x07, 0xe0, 0x89, 0x01, 0x1f, 0x03, 0x6f, 0xa9, 0x7d, 0x1e, 0xc9, - 0xa7, 0x00, 0x4e, 0x66, 0x09, 0xd6, 0x18, 0x56, 0xf0, 0x5f, 0x5a, 0x98, 0x32, 0xf4, 0x3b, 0x18, - 0x6a, 0x60, 0xa6, 0x55, 0x34, 0xa6, 0x45, 0x41, 0x02, 0xcc, 0x47, 0x16, 0xe7, 0xe4, 0xfe, 0x2d, - 0xdb, 0xe0, 0x6b, 0x21, 0x50, 0x77, 0x30, 0xd3, 0x4a, 0xdb, 0x16, 0x56, 0xba, 0x20, 0x74, 0x1b, - 0x06, 0xa8, 0x85, 0xf5, 0xa8, 0x8f, 0x83, 0x2f, 0xca, 0xde, 0xfb, 0x2d, 0x0b, 0x7c, 0xd1, 0xc2, - 0xba, 0x8d, 0x5f, 0x99, 0xfe, 0xf7, 0xce, 0x84, 0x0d, 0x93, 0x6b, 0xba, 0x6a, 0xff, 0x2a, 0x9c, - 0x64, 0x29, 0xfc, 0x72, 0x39, 0x28, 0xde, 0x97, 0xfc, 0x01, 0xc0, 0x29, 0x37, 0x54, 0x6a, 0x99, - 0x4d, 0x8a, 0xd1, 0x6f, 0xf7, 0xc5, 0x9a, 0xf0, 0x8c, 0x75, 0x0d, 0x33, 0x8f, 0x40, 0x37, 0xe0, - 0x34, 0xdd, 0xa6, 0x0c, 0x37, 0xd4, 0x2e, 0x89, 0xdf, 0x33, 0xe6, 0x22, 0xf7, 0xda, 0x4f, 0x35, - 0x25, 0xe0, 0x77, 0x5c, 0xc2, 0x9b, 0x7d, 0xca, 0xe7, 0x86, 0x29, 0x5f, 0xc3, 0xec, 0x10, 0xb2, - 0xbf, 0x06, 0x70, 0x4a, 0xc1, 0x56, 0x5d, 0xd3, 0xbb, 0x5b, 0xf4, 0xfb, 0x7d, 0xb2, 0x2f, 0x78, - 0xca, 0x76, 0x60, 0x1e, 0xd2, 0x0b, 0x7d, 0x91, 0x5e, 0x1a, 0x16, 0xa9, 0x43, 0xf0, 0x81, 0x68, - 0x51, 0x1a, 0x4a, 0x04, 0x53, 0xb3, 0x45, 0x74, 0xac, 0xb6, 0x31, 0xa1, 0x86, 0xd9, 0xe4, 0x2b, - 0x19, 0x5e, 0x09, 0xbc, 0xdd, 0x05, 0x40, 0x99, 0x76, 0xad, 0x9b, 0xc2, 0xd8, 0x2b, 0xef, 0x24, - 0x9c, 0xee, 0xaa, 0x13, 0xbb, 0x9a, 0xfc, 0x17, 0x80, 0x70, 0x0d, 0x33, 0x57, 0xed, 0x39, 0x18, - 0x6e, 0x6a, 0x0d, 0x4c, 0x2d, 0x4d, 0xc7, 0x5c, 0x6e, 0x58, 0x79, 0x3f, 0x81, 0x10, 0x0c, 0xd8, - 0x03, 0xae, 0x24, 0xac, 0xf0, 0x67, 0xb4, 0x09, 0xed, 0x37, 0x72, 0x32, 0xb5, 0x6a, 0x92, 0x86, - 0xc6, 0x78, 0x38, 0x53, 0x8b, 0xa9, 0x03, 0xb6, 0xc4, 0x7d, 0x7d, 0x9e, 0x03, 0xb2, 0x66, 0x05, - 0x2b, 0x53, 0xa4, 0x6f, 0x2e, 0xf9, 0xe3, 0x38, 0x8c, 0xf4, 0x78, 0xa2, 0x3c, 0x8c, 0xe8, 0x3c, - 0x21, 0xf9, 0x5b, 0x9c, 0xc5, 0xfc, 0xc5, 0xc1, 0x09, 0xef, 0xa8, 0x52, 0xa0, 0x40, 0xda, 0xcc, - 0x68, 0x1d, 0x4e, 0x10, 0xb1, 0x06, 0x82, 0xc8, 0x7f, 0x70, 0xe5, 0xf4, 0x67, 0x83, 0x12, 0x71, - 0xb0, 0x9c, 0xca, 0x6b, 0x2b, 0x02, 0x07, 0x6c, 0x45, 0x5f, 0x09, 0x8d, 0x1f, 0x47, 0x09, 0x9d, - 0x38, 0x96, 0x12, 0x0a, 0x1e, 0xb5, 0x84, 0x50, 0x16, 0x06, 0x29, 0xd3, 0x58, 0x8b, 0x46, 0xff, - 0xfb, 0x1f, 0x90, 0xf0, 0x7b, 0x14, 0x49, 0x97, 0xad, 0xc8, 0xfd, 0x44, 0x70, 0x2b, 0xfe, 0x67, - 0x3b, 0x40, 0x71, 0xa0, 0x68, 0x1d, 0x9e, 0x24, 0xb8, 0x8a, 0x09, 0x31, 0x9a, 0x35, 0x55, 0x9c, - 0x01, 0x34, 0x1a, 0xe2, 0x6c, 0xe7, 0x86, 0x94, 0x5c, 0x95, 0xeb, 0x92, 0xba, 0x30, 0x31, 0x4f, - 0xd1, 0x26, 0x8c, 0x56, 0x70, 0x1d, 0x33, 0x5c, 0x51, 0x85, 0x0d, 0x57, 0xba, 0x8c, 0xe1, 0x11, - 0x18, 0x67, 0x1c, 0xb4, 0xe2, 0x80, 0x5d, 0xde, 0x3f, 0xc0, 0xd9, 0x8a, 0x41, 0xb5, 0x72, 0xdd, - 0x8b, 0x18, 0x8e, 0x40, 0x7c, 0xc6, 0x85, 0x0f, 0x30, 0xf7, 0x54, 0xe9, 0xad, 0x40, 0x08, 0x48, - 0xbe, 0xe4, 0xff, 0x00, 0x8c, 0x14, 0x0c, 0x3a, 0x62, 0x65, 0xfe, 0x1c, 0x4e, 0xd4, 0xb5, 0x32, - 0xae, 0xab, 0x55, 0xa3, 0xce, 0x30, 0x71, 0x2a, 0x34, 0xc2, 0xe7, 0xf2, 0x7c, 0x0a, 0xcd, 0xc1, - 0x49, 0x82, 0x2d, 0x93, 0x30, 0xb5, 0x6a, 0xe0, 0x7a, 0x85, 0x46, 0xfd, 0x09, 0xff, 0x7c, 0x58, - 0x99, 0x10, 0x93, 0x79, 0x3e, 0x87, 0x2e, 0xc3, 0x53, 0x8e, 0x93, 0xd8, 0x14, 0xd7, 0x37, 0xc0, - 0x7d, 0x91, 0xb0, 0x89, 0x2d, 0x14, 0x88, 0xe4, 0xff, 0x83, 0x50, 0x12, 0x71, 0x8a, 0x42, 0x5d, - 0x67, 0xb8, 0x81, 0x66, 0x60, 0x90, 0xe1, 0xa6, 0xd6, 0x64, 0x3c, 0xb7, 0xc2, 0x8a, 0x33, 0xfa, - 0x88, 0xf6, 0x22, 0x41, 0x7f, 0xcb, 0xa8, 0x88, 0x0e, 0xa7, 0xd8, 0x8f, 0x28, 0x01, 0x23, 0x15, - 0x4c, 0x75, 0x62, 0xf0, 0xb3, 0x35, 0x1a, 0x11, 0x4a, 0x7b, 0xa6, 0x50, 0x0c, 0x86, 0xdc, 0x65, - 0x8e, 0x4e, 0x24, 0xc0, 0x7c, 0x48, 0xe9, 0x8e, 0x51, 0x01, 0x06, 0xf9, 0xa2, 0x08, 0x49, 0x91, - 0xc5, 0xab, 0xc3, 0xf2, 0x74, 0x50, 0x93, 0x5c, 0xe0, 0xb0, 0x5c, 0x93, 0x91, 0x6d, 0xc5, 0xe1, - 0x40, 0x7f, 0x82, 0x91, 0x9e, 0xfb, 0x90, 0x93, 0x01, 0x37, 0x46, 0xa6, 0xcc, 0xbc, 0xc7, 0x0a, - 0xde, 0x5e, 0x36, 0x74, 0x03, 0x42, 0x73, 0xab, 0x89, 0x89, 0x6a, 0x5f, 0x25, 0xa2, 0x61, 0x5e, - 0xa4, 0xb1, 0x01, 0xee, 0x4d, 0x03, 0x6f, 0xb9, 0xb9, 0x15, 0xe6, 0xde, 0xf6, 0x4c, 0x5f, 0xa3, - 0x99, 0x3c, 0x8e, 0x46, 0x33, 0x75, 0xa4, 0x46, 0xb3, 0x0c, 0x43, 0x35, 0xcc, 0x78, 0xc3, 0x70, - 0x5a, 0xd6, 0x28, 0xcd, 0x46, 0x39, 0x51, 0x13, 0x03, 0x74, 0x13, 0x42, 0x27, 0x1d, 0x29, 0x66, - 0x4e, 0x4b, 0x38, 0x44, 0x83, 0x09, 0x0b, 0x70, 0x11, 0xb3, 0xd8, 0x0d, 0x18, 0xe9, 0xd9, 0x47, - 0x3b, 0xbb, 0x1e, 0xe2, 0x6d, 0x27, 0x13, 0xed, 0x47, 0x74, 0x0a, 0x8e, 0xb7, 0xb5, 0x7a, 0xcb, - 0x4d, 0x42, 0x31, 0x58, 0xf2, 0x5d, 0x07, 0xb1, 0x65, 0x28, 0x0d, 0xee, 0xd7, 0x61, 0xf0, 0xb7, - 0x02, 0xa1, 0x71, 0x29, 0x98, 0x7c, 0x0c, 0xe0, 0x44, 0x6f, 0x1e, 0xa0, 0x65, 0x38, 0x6e, 0x30, - 0xdc, 0xa0, 0x51, 0xd1, 0x37, 0xe7, 0x47, 0x4d, 0x1e, 0x45, 0xc0, 0xd0, 0x65, 0x18, 0x14, 0x97, - 0xea, 0xa8, 0x8f, 0x13, 0x44, 0x07, 0x08, 0x72, 0xb6, 0x91, 0x2f, 0xa7, 0xe3, 0x97, 0x7c, 0x08, - 0x27, 0x57, 0x79, 0x7b, 0xfb, 0xf8, 0x43, 0x7f, 0x1e, 0x4a, 0x55, 0xcd, 0xa8, 0xab, 0x46, 0xb5, - 0xdb, 0x06, 0x79, 0x89, 0x86, 0x94, 0x29, 0x7b, 0x7e, 0xbd, 0xea, 0xb6, 0xb7, 0x85, 0xef, 0x01, - 0x3c, 0xed, 0x79, 0xe0, 0xa3, 0x18, 0x9c, 0x59, 0xcb, 0x95, 0x54, 0xa5, 0x78, 0x4f, 0xcd, 0x6f, - 0x28, 0x77, 0x32, 0x25, 0x75, 0x35, 0x97, 0xcf, 0xdc, 0x2f, 0x94, 0xa4, 0x31, 0x74, 0x1e, 0xce, - 0x0e, 0xd8, 0xf2, 0x1b, 0x8a, 0x9a, 0x55, 0x72, 0x99, 0x52, 0x4e, 0x02, 0x28, 0x0e, 0x63, 0x1e, - 0x66, 0x25, 0x77, 0xaf, 0x90, 0xc9, 0xe6, 0x24, 0x1f, 0x9a, 0x85, 0xa7, 0x07, 0xec, 0xc5, 0x52, - 0xa6, 0x74, 0xbf, 0x28, 0xf9, 0xd1, 0x19, 0xf8, 0xb3, 0x01, 0x93, 0x92, 0xcb, 0xac, 0x4a, 0x01, - 0x74, 0x01, 0x26, 0xf6, 0x19, 0xf2, 0x39, 0x45, 0x59, 0xbf, 0xbb, 0xa6, 0x6e, 0xac, 0xdc, 0xca, - 0x65, 0x4b, 0x45, 0x69, 0xdc, 0xc3, 0x6b, 0x45, 0xd9, 0xb8, 0x9d, 0xbb, 0x2b, 0x9c, 0x73, 0x77, - 0xb3, 0xb9, 0xa2, 0x14, 0x5c, 0xfc, 0x2e, 0x04, 0xfd, 0x99, 0x7b, 0xeb, 0xe8, 0x0b, 0x00, 0x83, - 0xe2, 0x26, 0x82, 0x46, 0xbb, 0xa9, 0xc4, 0x2e, 0x7e, 0xc8, 0xcd, 0xb9, 0xb6, 0xb5, 0x3b, 0xcf, - 0xa3, 0xd7, 0xaa, 0xbf, 0x79, 0xa4, 0xa7, 0x28, 0xd6, 0x5b, 0x04, 0x37, 0x30, 0x7d, 0x90, 0x2a, - 0x6b, 0xd4, 0xd0, 0x53, 0x2d, 0x8a, 0xc9, 0xaf, 0xda, 0x98, 0xa6, 0x0c, 0x33, 0x65, 0x34, 0xab, - 0x44, 0xa3, 0x8c, 0xb4, 0x74, 0xd6, 0x22, 0x38, 0xb5, 0x45, 0x0c, 0x86, 0x9f, 0x7c, 0xf5, 0xed, - 0x3f, 0x7d, 0xd7, 0x92, 0x57, 0x9c, 0x7f, 0x8c, 0xe9, 0xee, 0x4e, 0xd3, 0xf4, 0x5f, 0xdd, 0x7a, - 0x97, 0xbb, 0x93, 0x3b, 0xdd, 0x7f, 0x53, 0x74, 0x09, 0x2c, 0xa0, 0xe7, 0x00, 0xfa, 0xd7, 0x30, - 0x43, 0xc9, 0x03, 0x2f, 0x77, 0x42, 0xcb, 0xdc, 0x08, 0x17, 0xc0, 0xe4, 0xd6, 0x8b, 0x4f, 0x7c, - 0xa0, 0xf3, 0x3c, 0x7a, 0xdd, 0x5b, 0x4c, 0xc3, 0x6c, 0x1a, 0xcc, 0x1c, 0xa6, 0x87, 0x60, 0xad, - 0xc2, 0xe5, 0x5c, 0x41, 0x69, 0x2f, 0x39, 0x5e, 0x2a, 0xc4, 0xec, 0x0e, 0xfa, 0x0c, 0xc0, 0x80, - 0x5d, 0x53, 0x68, 0xee, 0xe0, 0x8a, 0x13, 0x5a, 0x2e, 0x8c, 0x52, 0x96, 0x49, 0xeb, 0x58, 0xc4, - 0x2c, 0xa0, 0xf9, 0x51, 0xc5, 0xa0, 0x3d, 0x00, 0x4f, 0x38, 0x57, 0x54, 0x34, 0xe2, 0x1d, 0x36, - 0x76, 0xe9, 0x83, 0x7e, 0x8e, 0x9c, 0xbf, 0x81, 0x23, 0x66, 0x59, 0x3e, 0x96, 0x39, 0x74, 0x96, - 0x0d, 0x98, 0x77, 0xec, 0xac, 0xfb, 0x14, 0xc0, 0xa0, 0x68, 0x59, 0xc3, 0xeb, 0xa8, 0xaf, 0xa5, - 0xc5, 0x66, 0x64, 0xf1, 0x51, 0x42, 0x76, 0x3f, 0x4a, 0xc8, 0xb9, 0x86, 0xc5, 0xb6, 0x93, 0xec, - 0x88, 0x8a, 0xae, 0x2e, 0x1c, 0x36, 0xd1, 0x96, 0xc0, 0x42, 0x6c, 0xf3, 0xd9, 0x2e, 0xf0, 0x7d, - 0xb9, 0x0b, 0xce, 0x0f, 0x89, 0x5d, 0x1c, 0x56, 0xaf, 0x77, 0x01, 0xe8, 0xec, 0x82, 0xb9, 0x11, - 0xce, 0xb5, 0x27, 0x9f, 0x47, 0x7d, 0x12, 0x58, 0xf9, 0x3b, 0x78, 0xb9, 0x3c, 0x9e, 0x55, 0xee, - 0xaf, 0x16, 0x5e, 0xbd, 0x89, 0x8f, 0xbd, 0x7e, 0x13, 0x1f, 0x7b, 0xf7, 0x26, 0x0e, 0x1e, 0x77, - 0xe2, 0xe0, 0x69, 0x27, 0x0e, 0x5e, 0x74, 0xe2, 0xe0, 0x55, 0x27, 0x0e, 0xbe, 0xe9, 0xc4, 0xc1, - 0xdb, 0x4e, 0x7c, 0xec, 0x5d, 0x27, 0x0e, 0xfe, 0xb1, 0x17, 0x1f, 0x7b, 0xb6, 0x17, 0x07, 0xaf, - 0xf6, 0xe2, 0x63, 0xaf, 0xf7, 0xe2, 0x63, 0x7f, 0x2c, 0xd4, 0x4c, 0xeb, 0x61, 0x4d, 0x6e, 0x9b, - 0xf6, 0x1d, 0x91, 0x68, 0x72, 0x8b, 0xa6, 0xf9, 0x83, 0xfd, 0xdf, 0x28, 0x65, 0x11, 0xb3, 0x6d, - 0x54, 0x30, 0x49, 0xb9, 0xe6, 0xb4, 0x55, 0xae, 0x99, 0x69, 0xfc, 0x88, 0x39, 0x1f, 0x39, 0x06, - 0x3e, 0xb8, 0x94, 0x83, 0x7c, 0xb9, 0x7f, 0xfd, 0x53, 0x00, 0x00, 0x00, 0xff, 0xff, 0xdf, 0xad, - 0xda, 0x22, 0xa5, 0x12, 0x00, 0x00, + // 1638 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcd, 0x6f, 0x1b, 0xc7, + 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb1, 0x9e, 0xda, 0x32, 0x45, 0xdb, 0x04, 0x4b, 0xb9, + 0xb6, 0xa0, 0x96, 0x4b, 0x5b, 0x75, 0x8b, 0x5a, 0x28, 0xd4, 0x52, 0x14, 0x29, 0xcb, 0xa6, 0x2d, + 0x63, 0x49, 0x0b, 0xfd, 0x38, 0x2c, 0x96, 0xcb, 0x21, 0xbd, 0x35, 0xc9, 0xdd, 0xce, 0x0c, 0x29, + 0x0b, 0x85, 0x00, 0xd7, 0x40, 0xaf, 0x45, 0xbf, 0x50, 0x14, 0x45, 0x0f, 0x3d, 0x24, 0x80, 0x0f, + 0xf9, 0x03, 0x02, 0xe8, 0xe2, 0x5b, 0x0c, 0x1f, 0x02, 0x23, 0xb9, 0xf8, 0xe0, 0x43, 0x4c, 0x25, + 0x80, 0x73, 0x09, 0x8c, 0x20, 0xd7, 0x00, 0xc1, 0xce, 0xec, 0xd2, 0x24, 0xb5, 0x94, 0x29, 0x7f, + 0xe4, 0xc4, 0x9d, 0x79, 0xef, 0xf7, 0xdb, 0xf7, 0x9b, 0x79, 0xef, 0xcd, 0x70, 0xe1, 0x8f, 0xdb, + 0x98, 0xca, 0x86, 0x99, 0xa6, 0xfa, 0x2d, 0xdc, 0xd0, 0xd2, 0x55, 0x8d, 0x32, 0x55, 0xd3, 0xeb, + 0x69, 0xab, 0x55, 0xae, 0x1b, 0xba, 0xaa, 0x93, 0x56, 0x45, 0xb3, 0x0c, 0xd9, 0x22, 0x26, 0x33, + 0xd1, 0x8c, 0x70, 0x96, 0x85, 0xb3, 0xec, 0x3a, 0xc7, 0x52, 0x35, 0x83, 0xdd, 0x6a, 0x95, 0x65, + 0xdd, 0x6c, 0xa4, 0x6b, 0x66, 0xcd, 0x4c, 0x73, 0xf7, 0x72, 0xab, 0xca, 0x47, 0x7c, 0xc0, 0x9f, + 0x04, 0x4d, 0xec, 0x54, 0xcd, 0x34, 0x6b, 0x75, 0x9c, 0xd6, 0x2c, 0x23, 0xad, 0x35, 0x9b, 0x26, + 0xd3, 0x98, 0x61, 0x36, 0xa9, 0x63, 0x3d, 0xe9, 0x58, 0xbb, 0x1c, 0xb8, 0x61, 0xb1, 0x6d, 0xc7, + 0x18, 0xeb, 0x0f, 0x17, 0x13, 0x62, 0x12, 0x17, 0x38, 0x37, 0x44, 0x8a, 0x59, 0xfe, 0x03, 0xd6, + 0x99, 0xe3, 0x94, 0x1c, 0xe2, 0xc4, 0xb6, 0x2d, 0xec, 0x12, 0x9d, 0xf3, 0xf6, 0x51, 0x49, 0xab, + 0x8e, 0xfb, 0x1c, 0x4f, 0xf6, 0x3b, 0x9a, 0x56, 0xaf, 0x8e, 0xd9, 0x7e, 0x63, 0x2f, 0x6e, 0x20, + 0x88, 0x36, 0xa6, 0xb8, 0xd9, 0x1e, 0x80, 0x27, 0x06, 0x7c, 0x0c, 0xbc, 0xa5, 0xf6, 0x79, 0x24, + 0xef, 0x03, 0x38, 0x99, 0x25, 0x58, 0x63, 0x58, 0xc1, 0x7f, 0x6c, 0x61, 0xca, 0xd0, 0xaf, 0x60, + 0xa8, 0x81, 0x99, 0x56, 0xd1, 0x98, 0x16, 0x05, 0x09, 0x30, 0x1f, 0x59, 0x9c, 0x93, 0xfb, 0xb7, + 0x6c, 0x83, 0xaf, 0x85, 0x40, 0x5d, 0xc3, 0x4c, 0x2b, 0x6d, 0x5b, 0x58, 0xe9, 0x82, 0xd0, 0x55, + 0x18, 0xa0, 0x16, 0xd6, 0xa3, 0x3e, 0x0e, 0x3e, 0x2b, 0x7b, 0xef, 0xb7, 0x2c, 0xf0, 0x45, 0x0b, + 0xeb, 0x36, 0x7e, 0x65, 0xfa, 0xbf, 0x3b, 0x13, 0x36, 0x4c, 0xae, 0xe9, 0xaa, 0xfd, 0xab, 0x70, + 0x92, 0xa5, 0xf0, 0xa3, 0xe5, 0xa0, 0x78, 0x5f, 0xf2, 0x1b, 0x00, 0xa7, 0xdc, 0x50, 0xa9, 0x65, + 0x36, 0x29, 0x46, 0xbf, 0xdc, 0x17, 0x6b, 0xc2, 0x33, 0xd6, 0x35, 0xcc, 0x3c, 0x02, 0xdd, 0x80, + 0xd3, 0x74, 0x9b, 0x32, 0xdc, 0x50, 0xbb, 0x24, 0x7e, 0xcf, 0x98, 0x8b, 0xdc, 0x6b, 0x3f, 0xd5, + 0x94, 0x80, 0x5f, 0x73, 0x09, 0x2f, 0xf7, 0x29, 0x9f, 0x1b, 0xa6, 0x7c, 0x0d, 0xb3, 0x43, 0xc8, + 0x7e, 0x0a, 0xe0, 0x94, 0x82, 0xad, 0xba, 0xa6, 0x77, 0xb7, 0xe8, 0xd7, 0xfb, 0x64, 0x9f, 0xf1, + 0x94, 0xed, 0xc0, 0x3c, 0xa4, 0x17, 0xfa, 0x22, 0x3d, 0x37, 0x2c, 0x52, 0x87, 0xe0, 0x15, 0xd1, + 0xa2, 0x34, 0x94, 0x08, 0xa6, 0x66, 0x8b, 0xe8, 0x58, 0x6d, 0x63, 0x42, 0x0d, 0xb3, 0xc9, 0x57, + 0x32, 0xbc, 0x12, 0x78, 0xbe, 0x0b, 0x80, 0x32, 0xed, 0x5a, 0x37, 0x85, 0xb1, 0x57, 0xde, 0x51, + 0x38, 0xdd, 0x55, 0x27, 0x76, 0x35, 0xf9, 0x6f, 0x00, 0xe1, 0x1a, 0x66, 0xae, 0xda, 0x53, 0x30, + 0xdc, 0xd4, 0x1a, 0x98, 0x5a, 0x9a, 0x8e, 0xb9, 0xdc, 0xb0, 0xf2, 0x72, 0x02, 0x21, 0x18, 0xb0, + 0x07, 0x5c, 0x49, 0x58, 0xe1, 0xcf, 0x68, 0x13, 0xda, 0x6f, 0xe4, 0x64, 0x6a, 0xd5, 0x24, 0x0d, + 0x8d, 0xf1, 0x70, 0xa6, 0x16, 0x53, 0x07, 0x6c, 0x89, 0xfb, 0xfa, 0x3c, 0x07, 0x64, 0xcd, 0x0a, + 0x56, 0xa6, 0x48, 0xdf, 0x5c, 0xf2, 0xdb, 0x71, 0x18, 0xe9, 0xf1, 0x44, 0x79, 0x18, 0xd1, 0x79, + 0x42, 0xf2, 0xb7, 0x38, 0x8b, 0xf9, 0xa3, 0x83, 0x13, 0xde, 0x51, 0xa5, 0x40, 0x81, 0xb4, 0x99, + 0xd1, 0x3a, 0x9c, 0x20, 0x62, 0x0d, 0x04, 0x91, 0xff, 0xe0, 0xca, 0xe9, 0xcf, 0x06, 0x25, 0xe2, + 0x60, 0x39, 0x95, 0xd7, 0x56, 0x04, 0x0e, 0xd8, 0x8a, 0xbe, 0x12, 0x1a, 0x7f, 0x1b, 0x25, 0x74, + 0xe4, 0xad, 0x94, 0x50, 0xf0, 0x4d, 0x4b, 0x08, 0x65, 0x61, 0x90, 0x32, 0x8d, 0xb5, 0x68, 0xf4, + 0xff, 0xff, 0x03, 0x09, 0xbf, 0x47, 0x91, 0x74, 0xd9, 0x8a, 0xdc, 0x4f, 0x04, 0xb7, 0xe2, 0x7f, + 0xb0, 0x03, 0x14, 0x07, 0x8a, 0xd6, 0xe1, 0x51, 0x82, 0xab, 0x98, 0x10, 0xa3, 0x59, 0x53, 0xc5, + 0x19, 0x40, 0xa3, 0x21, 0xce, 0x76, 0x6a, 0x48, 0xc9, 0x55, 0xb9, 0x2e, 0xa9, 0x0b, 0x13, 0xf3, + 0x14, 0x6d, 0xc2, 0x68, 0x05, 0xd7, 0x31, 0xc3, 0x15, 0x55, 0xd8, 0x70, 0xa5, 0xcb, 0x18, 0x1e, + 0x81, 0x71, 0xc6, 0x41, 0x2b, 0x0e, 0xd8, 0xe5, 0xfd, 0x0d, 0x9c, 0xad, 0x18, 0x54, 0x2b, 0xd7, + 0xbd, 0x88, 0xe1, 0x08, 0xc4, 0x27, 0x5c, 0xf8, 0x00, 0x73, 0x4f, 0x95, 0x5e, 0x09, 0x84, 0x80, + 0xe4, 0x4b, 0xbe, 0x0f, 0x60, 0xa4, 0x60, 0xd0, 0x11, 0x2b, 0xf3, 0x87, 0x70, 0xa2, 0xae, 0x95, + 0x71, 0x5d, 0xad, 0x1a, 0x75, 0x86, 0x89, 0x53, 0xa1, 0x11, 0x3e, 0x97, 0xe7, 0x53, 0x68, 0x0e, + 0x4e, 0x12, 0x6c, 0x99, 0x84, 0xa9, 0x55, 0x03, 0xd7, 0x2b, 0x34, 0xea, 0x4f, 0xf8, 0xe7, 0xc3, + 0xca, 0x84, 0x98, 0xcc, 0xf3, 0x39, 0x74, 0x1e, 0x1e, 0x73, 0x9c, 0xc4, 0xa6, 0xb8, 0xbe, 0x01, + 0xee, 0x8b, 0x84, 0x4d, 0x6c, 0xa1, 0x40, 0x24, 0x3f, 0x08, 0x42, 0x49, 0xc4, 0x29, 0x0a, 0x75, + 0x9d, 0xe1, 0x06, 0x9a, 0x81, 0x41, 0x86, 0x9b, 0x5a, 0x93, 0xf1, 0xdc, 0x0a, 0x2b, 0xce, 0xe8, + 0x35, 0xda, 0x8b, 0x04, 0xfd, 0x2d, 0xa3, 0x22, 0x3a, 0x9c, 0x62, 0x3f, 0xa2, 0x04, 0x8c, 0x54, + 0x30, 0xd5, 0x89, 0xc1, 0xcf, 0xd6, 0x68, 0x44, 0x28, 0xed, 0x99, 0x42, 0x31, 0x18, 0x72, 0x97, + 0x39, 0x3a, 0x91, 0x00, 0xf3, 0x21, 0xa5, 0x3b, 0x46, 0x05, 0x18, 0xe4, 0x8b, 0x22, 0x24, 0x45, + 0x16, 0x2f, 0x0e, 0xcb, 0xd3, 0x41, 0x4d, 0x72, 0x81, 0xc3, 0x72, 0x4d, 0x46, 0xb6, 0x15, 0x87, + 0x03, 0xfd, 0x1e, 0x46, 0x7a, 0xee, 0x43, 0x4e, 0x06, 0x5c, 0x1a, 0x99, 0x32, 0xf3, 0x12, 0x2b, + 0x78, 0x7b, 0xd9, 0xd0, 0x25, 0x08, 0xcd, 0xad, 0x26, 0x26, 0xaa, 0x7d, 0x95, 0x88, 0x86, 0x79, + 0x91, 0xc6, 0x06, 0xb8, 0x37, 0x0d, 0xbc, 0xe5, 0xe6, 0x56, 0x98, 0x7b, 0xdb, 0x33, 0x7d, 0x8d, + 0x66, 0xf2, 0x6d, 0x34, 0x9a, 0xa9, 0x37, 0x6a, 0x34, 0xcb, 0x30, 0x54, 0xc3, 0x8c, 0x37, 0x0c, + 0xa7, 0x65, 0x8d, 0xd2, 0x6c, 0x94, 0x23, 0x35, 0x31, 0x40, 0x97, 0x21, 0x74, 0xd2, 0x91, 0x62, + 0xe6, 0xb4, 0x84, 0x43, 0x34, 0x98, 0xb0, 0x00, 0x17, 0x31, 0x8b, 0x5d, 0x82, 0x91, 0x9e, 0x7d, + 0xb4, 0xb3, 0xeb, 0x36, 0xde, 0x76, 0x32, 0xd1, 0x7e, 0x44, 0xc7, 0xe0, 0x78, 0x5b, 0xab, 0xb7, + 0xdc, 0x24, 0x14, 0x83, 0x25, 0xdf, 0x2f, 0x40, 0x6c, 0x19, 0x4a, 0x83, 0xfb, 0x75, 0x18, 0xfc, + 0x95, 0x40, 0x68, 0x5c, 0x0a, 0x26, 0xef, 0x02, 0x38, 0xd1, 0x9b, 0x07, 0x68, 0x19, 0x8e, 0x1b, + 0x0c, 0x37, 0x68, 0x54, 0xf4, 0xcd, 0xf9, 0x51, 0x93, 0x47, 0x11, 0x30, 0x74, 0x1e, 0x06, 0xc5, + 0xa5, 0x3a, 0xea, 0xe3, 0x04, 0xd1, 0x01, 0x82, 0x9c, 0x6d, 0xe4, 0xcb, 0xe9, 0xf8, 0x25, 0x6f, + 0xc3, 0xc9, 0x55, 0xde, 0xde, 0x5e, 0xff, 0xd0, 0x9f, 0x87, 0x52, 0x55, 0x33, 0xea, 0xaa, 0x51, + 0xed, 0xb6, 0x41, 0x5e, 0xa2, 0x21, 0x65, 0xca, 0x9e, 0x5f, 0xaf, 0xba, 0xed, 0x6d, 0xe1, 0x6b, + 0x00, 0x8f, 0x7b, 0x1e, 0xf8, 0x28, 0x06, 0x67, 0xd6, 0x72, 0x25, 0x55, 0x29, 0xde, 0x50, 0xf3, + 0x1b, 0xca, 0xb5, 0x4c, 0x49, 0x5d, 0xcd, 0xe5, 0x33, 0x37, 0x0b, 0x25, 0x69, 0x0c, 0x9d, 0x86, + 0xb3, 0x03, 0xb6, 0xfc, 0x86, 0xa2, 0x66, 0x95, 0x5c, 0xa6, 0x94, 0x93, 0x00, 0x8a, 0xc3, 0x98, + 0x87, 0x59, 0xc9, 0xdd, 0x28, 0x64, 0xb2, 0x39, 0xc9, 0x87, 0x66, 0xe1, 0xf1, 0x01, 0x7b, 0xb1, + 0x94, 0x29, 0xdd, 0x2c, 0x4a, 0x7e, 0x74, 0x02, 0xfe, 0x60, 0xc0, 0xa4, 0xe4, 0x32, 0xab, 0x52, + 0x00, 0x9d, 0x81, 0x89, 0x7d, 0x86, 0x7c, 0x4e, 0x51, 0xd6, 0xaf, 0xaf, 0xa9, 0x1b, 0x2b, 0x57, + 0x72, 0xd9, 0x52, 0x51, 0x1a, 0xf7, 0xf0, 0x5a, 0x51, 0x36, 0xae, 0xe6, 0xae, 0x0b, 0xe7, 0xdc, + 0xf5, 0x6c, 0xae, 0x28, 0x05, 0x17, 0xff, 0x02, 0xa1, 0x3f, 0x73, 0x63, 0x1d, 0x7d, 0x05, 0x60, + 0x50, 0xdc, 0x44, 0xd0, 0x68, 0x37, 0x95, 0xd8, 0xd9, 0x57, 0xb9, 0x39, 0xd7, 0xb6, 0x7f, 0x81, + 0xce, 0x47, 0xd1, 0x52, 0xf5, 0x67, 0x77, 0xf4, 0x14, 0xc5, 0x7a, 0x8b, 0xe0, 0x06, 0xa6, 0xb7, + 0x52, 0x65, 0x8d, 0x1a, 0x7a, 0xaa, 0x45, 0x31, 0xf9, 0xc9, 0xa0, 0x89, 0x32, 0xad, 0x59, 0xd1, + 0x48, 0x45, 0x58, 0xdb, 0x98, 0xa6, 0x0c, 0x33, 0x65, 0x34, 0xab, 0x44, 0xa3, 0x8c, 0xb4, 0x74, + 0xd6, 0x22, 0x38, 0xb5, 0x45, 0x0c, 0x86, 0xef, 0x7d, 0xfa, 0xf9, 0x3f, 0x7d, 0x3f, 0x4f, 0x5e, + 0x70, 0xfe, 0x50, 0xa6, 0xbb, 0x89, 0x40, 0xd3, 0x7f, 0x72, 0xdb, 0x81, 0xdc, 0x9d, 0xdc, 0xe9, + 0xfe, 0xd9, 0xa2, 0x4b, 0x60, 0x01, 0x7d, 0x09, 0xa0, 0x7f, 0x0d, 0x33, 0x94, 0x3c, 0xf0, 0xee, + 0x27, 0xa4, 0xce, 0x8d, 0x70, 0x3f, 0x4c, 0xfe, 0x07, 0x3c, 0xfc, 0xd0, 0x67, 0x6b, 0xfd, 0xad, + 0xb7, 0xd6, 0x86, 0xd9, 0x34, 0x98, 0x79, 0x80, 0x5c, 0xd7, 0xc1, 0x5b, 0x31, 0xc1, 0x5a, 0x85, + 0x0b, 0xbe, 0x80, 0xd2, 0x5e, 0x82, 0xbd, 0x74, 0x8a, 0xd9, 0x1d, 0xf4, 0x05, 0x80, 0x01, 0xbb, + 0x28, 0xd1, 0xdc, 0xc1, 0x25, 0x2b, 0xd4, 0x9e, 0x19, 0xa5, 0xae, 0x93, 0x7f, 0xff, 0x9e, 0xe4, + 0x2e, 0xa0, 0xf9, 0x51, 0xe5, 0xa2, 0x3f, 0xfb, 0xe0, 0x11, 0xe7, 0x16, 0x8c, 0x46, 0xbc, 0x26, + 0xc7, 0xce, 0xbd, 0xd2, 0xcf, 0x11, 0xfc, 0xde, 0xbb, 0xcd, 0xe3, 0x7c, 0x2c, 0x73, 0xe8, 0x3c, + 0x1e, 0x30, 0xef, 0xd8, 0x79, 0xfd, 0x14, 0xc0, 0xa0, 0xe8, 0x99, 0xc3, 0x0b, 0xb9, 0xaf, 0xa7, + 0xc6, 0x66, 0x64, 0xf1, 0x55, 0x44, 0x76, 0xbf, 0x8a, 0xc8, 0xb9, 0x86, 0xc5, 0xb6, 0x93, 0xff, + 0x78, 0xb7, 0x82, 0x2f, 0x2e, 0x1c, 0x36, 0x8f, 0x97, 0xc0, 0x42, 0x6c, 0xf3, 0xc1, 0x2e, 0xf0, + 0x7d, 0xb2, 0x0b, 0x4e, 0x0f, 0x91, 0x26, 0x0e, 0xd3, 0x27, 0xbb, 0x00, 0x74, 0x76, 0xc1, 0xdc, + 0x08, 0xe7, 0xee, 0xbd, 0x8f, 0xa3, 0x3e, 0x09, 0xac, 0xfc, 0x15, 0x3c, 0x5a, 0x1e, 0xcf, 0x2a, + 0x37, 0x57, 0x0b, 0x8f, 0x9f, 0xc5, 0xc7, 0x9e, 0x3c, 0x8b, 0x8f, 0xbd, 0x78, 0x16, 0x07, 0x77, + 0x3b, 0x71, 0x70, 0xbf, 0x13, 0x07, 0x0f, 0x3b, 0x71, 0xf0, 0xb8, 0x13, 0x07, 0x9f, 0x75, 0xe2, + 0xe0, 0x79, 0x27, 0x3e, 0xf6, 0xa2, 0x13, 0x07, 0x7f, 0xdb, 0x8b, 0x8f, 0x3d, 0xd8, 0x8b, 0x83, + 0xc7, 0x7b, 0xf1, 0xb1, 0x27, 0x7b, 0xf1, 0xb1, 0xdf, 0x15, 0x6a, 0xa6, 0x75, 0xbb, 0x26, 0xb7, + 0x4d, 0xfb, 0x0e, 0x4b, 0x34, 0xb9, 0x45, 0xd3, 0xfc, 0xc1, 0xfe, 0xef, 0x96, 0xb2, 0x88, 0xd9, + 0x36, 0x2a, 0x98, 0xa4, 0x5c, 0x73, 0xda, 0x2a, 0xd7, 0xcc, 0x34, 0xbe, 0xc3, 0x9c, 0x8f, 0x30, + 0x03, 0x1f, 0x84, 0xca, 0x41, 0xbe, 0x1b, 0x3f, 0xfd, 0x2e, 0x00, 0x00, 0xff, 0xff, 0x95, 0x6d, + 0x17, 0xc9, 0x45, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/fast_acl/public_crudapi.vesapi.go b/pbgo/extschema/schema/fast_acl/public_crudapi.vesapi.go index 0042d0bbf..0cd33d584 100644 --- a/pbgo/extschema/schema/fast_acl/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/fast_acl/public_crudapi.vesapi.go @@ -3199,10 +3199,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3259,10 +3263,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3321,10 +3329,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/fast_acl/public_custom_data_api.pb.go b/pbgo/extschema/schema/fast_acl/public_custom_data_api.pb.go index cf53db104..87f2adb4e 100644 --- a/pbgo/extschema/schema/fast_acl/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/fast_acl/public_custom_data_api.pb.go @@ -529,61 +529,61 @@ func init() { } var fileDescriptor_9cf9cad6381f612a = []byte{ - // 849 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xcf, 0x6f, 0xdc, 0x44, - 0x14, 0xde, 0xf1, 0x6e, 0x92, 0xdd, 0xd9, 0x2e, 0x0a, 0x03, 0x42, 0xee, 0x12, 0xac, 0xc8, 0xa8, - 0x52, 0x48, 0x63, 0x1b, 0xb6, 0xaa, 0x10, 0x9c, 0xd8, 0x84, 0x8d, 0x88, 0xb4, 0xfd, 0x21, 0x27, - 0x70, 0xe0, 0x62, 0x8d, 0xed, 0x59, 0x67, 0xc0, 0xf6, 0x98, 0x99, 0xf1, 0x2a, 0x11, 0x42, 0xaa, - 0x7a, 0xe0, 0x8c, 0xc4, 0x85, 0x1b, 0x3d, 0xf2, 0x27, 0x20, 0x7a, 0xc9, 0x8d, 0x9e, 0x50, 0x04, - 0x97, 0x1e, 0x9b, 0x0d, 0x07, 0xb8, 0xe5, 0x4f, 0x40, 0x3b, 0xf6, 0x26, 0xeb, 0xd0, 0xaa, 0xe9, - 0x6d, 0x9e, 0xbf, 0xf7, 0xbd, 0xf9, 0xde, 0x9b, 0xf7, 0x9e, 0xe1, 0xad, 0x31, 0x11, 0x36, 0x65, - 0x8e, 0x08, 0xf6, 0x49, 0x82, 0x9d, 0x11, 0x16, 0xd2, 0xc3, 0x41, 0xec, 0x64, 0xb9, 0x1f, 0xd3, - 0xc0, 0x0b, 0x72, 0x21, 0x59, 0xe2, 0x85, 0x58, 0x62, 0x0f, 0x67, 0xd4, 0xce, 0x38, 0x93, 0x0c, - 0xbd, 0x55, 0x90, 0xec, 0x82, 0x64, 0xcf, 0x48, 0x5d, 0x2b, 0xa2, 0x72, 0x3f, 0xf7, 0xed, 0x80, - 0x25, 0x4e, 0xc4, 0x22, 0xe6, 0x28, 0x77, 0x3f, 0x1f, 0x29, 0x4b, 0x19, 0xea, 0x54, 0x84, 0xe9, - 0xae, 0x44, 0x8c, 0x45, 0x31, 0x71, 0x70, 0x46, 0x1d, 0x9c, 0xa6, 0x4c, 0x62, 0x49, 0x59, 0x2a, - 0x4a, 0xf4, 0xed, 0xaa, 0x32, 0x96, 0xcd, 0x83, 0xd7, 0xab, 0xa0, 0x3c, 0xcc, 0xc8, 0x0c, 0x5a, - 0xa9, 0x42, 0x63, 0x1c, 0xd3, 0x10, 0x4b, 0x52, 0xa2, 0xe6, 0x25, 0x94, 0x08, 0x92, 0x8e, 0xab, - 0xc1, 0xcd, 0x23, 0x0d, 0xa2, 0x6d, 0x2c, 0x64, 0x7f, 0x6b, 0xf8, 0x19, 0x95, 0xc2, 0x25, 0xdf, - 0xe4, 0x44, 0x48, 0xb4, 0x02, 0x5b, 0x29, 0x4e, 0x88, 0xc8, 0x70, 0x40, 0x74, 0xb0, 0x0a, 0xd6, - 0x5a, 0xee, 0xc5, 0x07, 0xb4, 0x0b, 0xaf, 0xc5, 0xd8, 0x27, 0xb1, 0x37, 0xa2, 0xb1, 0x24, 0x5c, - 0xd7, 0x56, 0xeb, 0x6b, 0xed, 0xde, 0xfb, 0xf6, 0xf3, 0x4b, 0x65, 0x97, 0xf1, 0xef, 0x10, 0xc9, - 0x69, 0x30, 0x9c, 0x12, 0xb7, 0x15, 0xcf, 0x6d, 0xc7, 0x17, 0x06, 0x1a, 0xc0, 0x66, 0xc4, 0x59, - 0x9e, 0x79, 0xfe, 0xa1, 0x5e, 0x5f, 0xad, 0xaf, 0xbd, 0xd6, 0x5b, 0xbf, 0x7a, 0x40, 0x77, 0x49, - 0x71, 0x37, 0x0f, 0xd1, 0x7b, 0x10, 0x0a, 0x89, 0xb9, 0xf4, 0x24, 0x4d, 0x88, 0xde, 0x98, 0x4a, - 0xdf, 0x84, 0xbf, 0xfd, 0x7b, 0x54, 0x5f, 0xe0, 0xf5, 0x9f, 0x1a, 0xc0, 0x6d, 0x29, 0x74, 0x8f, - 0x26, 0x04, 0xdd, 0x80, 0x4d, 0x92, 0x86, 0x85, 0xe3, 0xc2, 0xff, 0x1c, 0x97, 0x48, 0x1a, 0x2a, - 0x37, 0x03, 0x36, 0x84, 0x24, 0x99, 0xbe, 0x58, 0x71, 0x79, 0xd4, 0x00, 0xae, 0xfa, 0x6e, 0x3e, - 0x02, 0x50, 0x7f, 0x51, 0x8a, 0xe8, 0x13, 0xb8, 0xa0, 0x92, 0x54, 0x45, 0x7c, 0xb5, 0x94, 0x0a, - 0x22, 0xda, 0x80, 0x1a, 0xcb, 0x74, 0x4d, 0xd1, 0x57, 0x2e, 0xd1, 0xe7, 0xdc, 0xef, 0x65, 0xae, - 0xc6, 0x32, 0xf4, 0x26, 0x5c, 0x18, 0xe3, 0x38, 0x27, 0x7a, 0x5d, 0x3d, 0x5a, 0x61, 0x98, 0x0f, - 0x00, 0xec, 0xcc, 0xbd, 0xf2, 0x4e, 0xf8, 0x92, 0x07, 0xbe, 0x0e, 0x9b, 0x33, 0x65, 0xea, 0xe6, - 0x96, 0xbb, 0x34, 0xb5, 0xfb, 0x41, 0x8c, 0x4c, 0xd8, 0x99, 0x41, 0x1e, 0xcf, 0xe3, 0xd9, 0x45, - 0xed, 0x12, 0x77, 0xf3, 0x98, 0x20, 0x04, 0x1b, 0x82, 0xca, 0xb2, 0xfa, 0xae, 0x3a, 0x9b, 0x07, - 0xb0, 0x3d, 0xa7, 0x00, 0xdd, 0x86, 0x1a, 0x0d, 0xd5, 0xc5, 0xed, 0xde, 0x8d, 0x97, 0x14, 0xa5, - 0x90, 0xec, 0x6a, 0x34, 0x44, 0x3d, 0xb8, 0x98, 0xa8, 0x9c, 0xcb, 0x9e, 0xeb, 0x3e, 0xb7, 0x20, - 0x5f, 0x4c, 0x93, 0x76, 0x4b, 0x4f, 0x33, 0x85, 0x6f, 0x54, 0x3a, 0x5c, 0x64, 0x2c, 0x15, 0x04, - 0x7d, 0x08, 0x1b, 0xd3, 0x51, 0xd7, 0x81, 0x0a, 0xf4, 0xee, 0x15, 0x34, 0xb8, 0x8a, 0x70, 0xde, - 0x0f, 0x5a, 0xa5, 0x1f, 0xce, 0xb4, 0xb2, 0x1f, 0xd6, 0xef, 0x9e, 0x4f, 0xd4, 0xdc, 0xf3, 0xa0, - 0x0e, 0x6c, 0xdd, 0xed, 0xdf, 0x19, 0xec, 0xde, 0xef, 0x6f, 0x0d, 0x96, 0x6b, 0xe8, 0x1a, 0x6c, - 0x6e, 0xf7, 0x77, 0xf7, 0xbc, 0xfe, 0xd6, 0x70, 0x19, 0xa0, 0xd7, 0x61, 0x67, 0x66, 0x79, 0xee, - 0xe7, 0xc3, 0xc1, 0xb2, 0x86, 0x9a, 0xb0, 0xb1, 0xbb, 0xb3, 0x37, 0x58, 0xae, 0xf7, 0x7e, 0xd6, - 0x60, 0x67, 0x4b, 0xed, 0xa6, 0x4f, 0xb1, 0xc4, 0xfd, 0xfb, 0x3b, 0xe8, 0x19, 0xa8, 0x16, 0x73, - 0xfd, 0x2a, 0xe2, 0x8b, 0xc9, 0xee, 0xde, 0xbc, 0x92, 0x6f, 0x51, 0x23, 0xf3, 0xe0, 0xc9, 0xaf, - 0x1a, 0x98, 0xfc, 0xae, 0x7f, 0x34, 0xba, 0x7d, 0x10, 0x58, 0x82, 0x04, 0x39, 0x27, 0x09, 0x11, - 0xfb, 0x96, 0x8f, 0x05, 0x0d, 0xac, 0x84, 0xa5, 0x54, 0x32, 0xbe, 0xb1, 0x3a, 0x26, 0xc2, 0xa2, - 0xcc, 0xa2, 0xe9, 0x88, 0x63, 0x21, 0x79, 0x1e, 0xc8, 0x9c, 0x13, 0x8b, 0x13, 0x1c, 0x3e, 0xfc, - 0xeb, 0xef, 0x1f, 0xb5, 0x0f, 0xcc, 0x8d, 0x72, 0xc9, 0x3a, 0xe7, 0x3d, 0x26, 0x9c, 0x6f, 0xcf, - 0xcf, 0xdf, 0x5d, 0xec, 0xe2, 0x7d, 0x2a, 0xc5, 0xc7, 0x60, 0xbd, 0x7b, 0xf3, 0xe8, 0x31, 0xa8, - 0xff, 0xf9, 0x18, 0xbc, 0xf3, 0x02, 0xb5, 0xf7, 0xfc, 0xaf, 0x48, 0x20, 0x1f, 0xfe, 0xa1, 0x6b, - 0x3a, 0xd8, 0xfc, 0x1e, 0x1c, 0x9f, 0x18, 0xb5, 0xa7, 0x27, 0x46, 0xed, 0xec, 0xc4, 0x00, 0x0f, - 0x26, 0x06, 0xf8, 0x65, 0x62, 0x80, 0x27, 0x13, 0x03, 0x1c, 0x4f, 0x0c, 0xf0, 0x6c, 0x62, 0x80, - 0x7f, 0x26, 0x46, 0xed, 0x6c, 0x62, 0x80, 0x1f, 0x4e, 0x8d, 0xda, 0xd1, 0xa9, 0x01, 0x8e, 0x4f, - 0x8d, 0xda, 0xd3, 0x53, 0xa3, 0xf6, 0xe5, 0x30, 0x62, 0xd9, 0xd7, 0x91, 0x3d, 0x66, 0xd3, 0x69, - 0xe5, 0xd8, 0xce, 0x85, 0xa3, 0x0e, 0x23, 0xc6, 0x13, 0x2b, 0xe3, 0x6c, 0x4c, 0x43, 0xc2, 0xad, - 0x19, 0xec, 0x64, 0x7e, 0xc4, 0x1c, 0x72, 0x20, 0xcb, 0x95, 0x7a, 0xe9, 0x4f, 0xe2, 0x2f, 0xaa, - 0xa5, 0x7a, 0xeb, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3c, 0xdd, 0x23, 0x6e, 0x6a, 0x06, 0x00, - 0x00, + // 860 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xcf, 0x6f, 0xe3, 0x44, + 0x14, 0xce, 0x38, 0x69, 0x9b, 0x4c, 0x36, 0xa8, 0x0c, 0x08, 0x79, 0x43, 0xb1, 0x2a, 0xa3, 0x95, + 0x4a, 0xb7, 0xb6, 0x21, 0xab, 0x15, 0x12, 0x27, 0xd2, 0x92, 0x8a, 0x4a, 0xd9, 0x1f, 0x72, 0x0b, + 0x07, 0x38, 0x58, 0x63, 0x7b, 0xe2, 0x0e, 0xd8, 0x1e, 0x33, 0x33, 0x8e, 0x5a, 0x21, 0xa4, 0xd5, + 0x22, 0x71, 0x46, 0xe2, 0x82, 0x38, 0xed, 0x91, 0x3f, 0x01, 0xb1, 0x97, 0x8a, 0x0b, 0x7b, 0x42, + 0x15, 0x5c, 0xf6, 0x48, 0x53, 0x0e, 0x70, 0xeb, 0x9f, 0x80, 0x32, 0x76, 0xda, 0xb8, 0xec, 0x6a, + 0xcb, 0x6d, 0x9e, 0xbf, 0xef, 0x7b, 0xf3, 0xde, 0x9b, 0xf7, 0x9e, 0xe1, 0xad, 0x31, 0x11, 0x36, + 0x65, 0x8e, 0x08, 0xf6, 0x49, 0x82, 0x9d, 0x11, 0x16, 0xd2, 0xc3, 0x41, 0xec, 0x64, 0xb9, 0x1f, + 0xd3, 0xc0, 0x0b, 0x72, 0x21, 0x59, 0xe2, 0x85, 0x58, 0x62, 0x0f, 0x67, 0xd4, 0xce, 0x38, 0x93, + 0x0c, 0xbd, 0x56, 0x88, 0xec, 0x42, 0x64, 0xcf, 0x44, 0x5d, 0x2b, 0xa2, 0x72, 0x3f, 0xf7, 0xed, + 0x80, 0x25, 0x4e, 0xc4, 0x22, 0xe6, 0x28, 0xba, 0x9f, 0x8f, 0x94, 0xa5, 0x0c, 0x75, 0x2a, 0xdc, + 0x74, 0x57, 0x22, 0xc6, 0xa2, 0x98, 0x38, 0x38, 0xa3, 0x0e, 0x4e, 0x53, 0x26, 0xb1, 0xa4, 0x2c, + 0x15, 0x25, 0xfa, 0x7a, 0x35, 0x32, 0x96, 0xcd, 0x83, 0xd7, 0xab, 0xa0, 0x3c, 0xcc, 0xc8, 0x0c, + 0x5a, 0xa9, 0x42, 0x63, 0x1c, 0xd3, 0x10, 0x4b, 0x52, 0xa2, 0xe6, 0x25, 0x94, 0x08, 0x92, 0x8e, + 0xab, 0xce, 0xcd, 0x23, 0x0d, 0xa2, 0x6d, 0x2c, 0x64, 0x7f, 0x6b, 0xf8, 0x21, 0x95, 0xc2, 0x25, + 0x5f, 0xe4, 0x44, 0x48, 0xb4, 0x02, 0x5b, 0x29, 0x4e, 0x88, 0xc8, 0x70, 0x40, 0x74, 0xb0, 0x0a, + 0xd6, 0x5a, 0xee, 0xc5, 0x07, 0xb4, 0x0b, 0xaf, 0xc5, 0xd8, 0x27, 0xb1, 0x37, 0xa2, 0xb1, 0x24, + 0x5c, 0xd7, 0x56, 0xeb, 0x6b, 0xed, 0xde, 0xdb, 0xf6, 0xb3, 0x4b, 0x65, 0x97, 0xfe, 0xef, 0x10, + 0xc9, 0x69, 0x30, 0x9c, 0x0a, 0xb7, 0x95, 0xce, 0x6d, 0xc7, 0x17, 0x06, 0x1a, 0xc0, 0x66, 0xc4, + 0x59, 0x9e, 0x79, 0xfe, 0xa1, 0x5e, 0x5f, 0xad, 0xaf, 0xbd, 0xd4, 0x5b, 0xbf, 0xba, 0x43, 0x77, + 0x49, 0x69, 0x37, 0x0f, 0xd1, 0x5b, 0x10, 0x0a, 0x89, 0xb9, 0xf4, 0x24, 0x4d, 0x88, 0xde, 0x98, + 0x86, 0xbe, 0x09, 0x7f, 0xfe, 0xe7, 0xa8, 0xbe, 0xc0, 0xeb, 0xdf, 0x37, 0x80, 0xdb, 0x52, 0xe8, + 0x1e, 0x4d, 0x08, 0xba, 0x01, 0x9b, 0x24, 0x0d, 0x0b, 0xe2, 0xc2, 0x7f, 0x88, 0x4b, 0x24, 0x0d, + 0x15, 0xcd, 0x80, 0x0d, 0x21, 0x49, 0xa6, 0x2f, 0x56, 0x28, 0x8f, 0x1a, 0xc0, 0x55, 0xdf, 0xcd, + 0x47, 0x00, 0xea, 0xcf, 0x4b, 0x11, 0xbd, 0x0f, 0x17, 0x54, 0x92, 0xaa, 0x88, 0xff, 0x2f, 0xa5, + 0x42, 0x88, 0x36, 0xa0, 0xc6, 0x32, 0x5d, 0x53, 0xf2, 0x95, 0x4b, 0xf2, 0x39, 0xfa, 0xbd, 0xcc, + 0xd5, 0x58, 0x86, 0x5e, 0x85, 0x0b, 0x63, 0x1c, 0xe7, 0x44, 0xaf, 0xab, 0x47, 0x2b, 0x0c, 0xf3, + 0x01, 0x80, 0x9d, 0xb9, 0x57, 0xde, 0x09, 0x5f, 0xf0, 0xc0, 0xd7, 0x61, 0x73, 0x16, 0x99, 0xba, + 0xb9, 0xe5, 0x2e, 0x4d, 0xed, 0x7e, 0x10, 0x23, 0x13, 0x76, 0x66, 0x90, 0xc7, 0xf3, 0x78, 0x76, + 0x51, 0xbb, 0xc4, 0xdd, 0x3c, 0x26, 0x08, 0xc1, 0x86, 0xa0, 0xb2, 0xac, 0xbe, 0xab, 0xce, 0xe6, + 0x01, 0x6c, 0xcf, 0x45, 0x80, 0x6e, 0x43, 0x8d, 0x86, 0xea, 0xe2, 0x76, 0xef, 0xc6, 0x0b, 0x8a, + 0x52, 0x84, 0xec, 0x6a, 0x34, 0x44, 0x3d, 0xb8, 0x98, 0xa8, 0x9c, 0xcb, 0x9e, 0xeb, 0x3e, 0xb3, + 0x20, 0x1f, 0x4f, 0x93, 0x76, 0x4b, 0xa6, 0x99, 0xc2, 0x57, 0x2a, 0x1d, 0x2e, 0x32, 0x96, 0x0a, + 0x82, 0xde, 0x85, 0x8d, 0xe9, 0xa8, 0xeb, 0x40, 0x39, 0x7a, 0xf3, 0x0a, 0x31, 0xb8, 0x4a, 0x70, + 0xde, 0x0f, 0x5a, 0xa5, 0x1f, 0xce, 0xb4, 0xb2, 0x1f, 0xd6, 0xef, 0x9e, 0x4f, 0xd4, 0xdc, 0xf3, + 0xa0, 0x0e, 0x6c, 0xdd, 0xed, 0xdf, 0x19, 0xec, 0xde, 0xef, 0x6f, 0x0d, 0x96, 0x6b, 0xe8, 0x1a, + 0x6c, 0x6e, 0xf7, 0x77, 0xf7, 0xbc, 0xfe, 0xd6, 0x70, 0x19, 0xa0, 0x97, 0x61, 0x67, 0x66, 0x79, + 0xee, 0x47, 0xc3, 0xc1, 0xb2, 0x86, 0x9a, 0xb0, 0xb1, 0xbb, 0xb3, 0x37, 0x58, 0xae, 0xf7, 0x7e, + 0xd1, 0x60, 0x67, 0x4b, 0xed, 0xa6, 0x0f, 0xb0, 0xc4, 0xfd, 0xfb, 0x3b, 0xe8, 0x6b, 0xad, 0x5a, + 0xcc, 0xf5, 0xab, 0x04, 0x5f, 0x4c, 0x76, 0xf7, 0xe6, 0x95, 0xb8, 0x45, 0x8d, 0xcc, 0x1f, 0xc0, + 0x93, 0x9f, 0x34, 0x30, 0xf9, 0x55, 0xff, 0x74, 0x74, 0xfb, 0x20, 0xb0, 0x04, 0x09, 0x72, 0x4e, + 0x12, 0x22, 0xf6, 0x2d, 0x1f, 0x0b, 0x1a, 0x58, 0x09, 0x4b, 0xa9, 0x64, 0x7c, 0x63, 0xf5, 0x32, + 0x2c, 0x24, 0x4e, 0x43, 0xcc, 0xc3, 0x0b, 0xc6, 0x98, 0x08, 0x8b, 0x32, 0x8b, 0xa6, 0x23, 0x8e, + 0x85, 0xe4, 0x79, 0x20, 0x73, 0x4e, 0x2c, 0x4e, 0x70, 0xf8, 0xf0, 0x8f, 0xbf, 0xbe, 0xd3, 0xde, + 0x31, 0x37, 0xca, 0x3d, 0xec, 0x9c, 0xb7, 0xa1, 0x70, 0xbe, 0x3c, 0x3f, 0x7f, 0x75, 0xb1, 0xae, + 0xf7, 0xa9, 0x14, 0xef, 0x81, 0xf5, 0xee, 0xcd, 0xa3, 0xc7, 0xa0, 0xfe, 0xfb, 0x63, 0xf0, 0xc6, + 0x73, 0x12, 0xba, 0xe7, 0x7f, 0x46, 0x02, 0xf9, 0xf0, 0x37, 0x5d, 0xd3, 0xc1, 0xe6, 0x37, 0xe0, + 0xf8, 0xc4, 0xa8, 0x3d, 0x3d, 0x31, 0x6a, 0x67, 0x27, 0x06, 0x78, 0x30, 0x31, 0xc0, 0x8f, 0x13, + 0x03, 0x3c, 0x99, 0x18, 0xe0, 0x78, 0x62, 0x80, 0x3f, 0x27, 0x06, 0xf8, 0x7b, 0x62, 0xd4, 0xce, + 0x26, 0x06, 0xf8, 0xf6, 0xd4, 0xa8, 0x1d, 0x9d, 0x1a, 0xe0, 0xf8, 0xd4, 0xa8, 0x3d, 0x3d, 0x35, + 0x6a, 0x9f, 0x0c, 0x23, 0x96, 0x7d, 0x1e, 0xd9, 0x63, 0x36, 0x1d, 0x68, 0x8e, 0xed, 0x5c, 0x38, + 0xea, 0x30, 0x62, 0x3c, 0xb1, 0x32, 0xce, 0xc6, 0x34, 0x24, 0xdc, 0x9a, 0xc1, 0x4e, 0xe6, 0x47, + 0xcc, 0x21, 0x07, 0xb2, 0xdc, 0xba, 0x97, 0x7e, 0x36, 0xfe, 0xa2, 0xda, 0xbb, 0xb7, 0xfe, 0x0d, + 0x00, 0x00, 0xff, 0xff, 0xbf, 0x1c, 0xc5, 0xad, 0x8d, 0x06, 0x00, 0x00, } func (x FastACLMetricLabel) String() string { diff --git a/pbgo/extschema/schema/fast_acl_rule/crudapi/api.vesapi.go b/pbgo/extschema/schema/fast_acl_rule/crudapi/api.vesapi.go index b5d4440d7..2fa6297d8 100644 --- a/pbgo/extschema/schema/fast_acl_rule/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/fast_acl_rule/crudapi/api.vesapi.go @@ -3176,10 +3176,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/fast_acl_rule/object.pb.go b/pbgo/extschema/schema/fast_acl_rule/object.pb.go index a835337d2..9c93bb515 100644 --- a/pbgo/extschema/schema/fast_acl_rule/object.pb.go +++ b/pbgo/extschema/schema/fast_acl_rule/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_9aa7ad4e371c0a6d = []byte{ - // 607 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0x80, 0x77, 0x76, 0xd7, 0x85, 0x0c, 0x88, 0xa4, 0xa7, 0x15, 0x74, 0x42, 0xd6, 0x18, 0x49, - 0xa4, 0x6d, 0x5c, 0x62, 0x0c, 0xc4, 0x10, 0x05, 0x12, 0x2e, 0x10, 0xe2, 0x62, 0x3c, 0x78, 0xd9, - 0x4c, 0x67, 0x5f, 0xcb, 0x68, 0xbb, 0xd3, 0xcc, 0x4c, 0x2b, 0x1c, 0x4c, 0xfc, 0x07, 0xfa, 0x33, - 0x8c, 0x37, 0xff, 0x81, 0x78, 0xf2, 0x26, 0xe1, 0xc4, 0x51, 0xba, 0x17, 0x8f, 0x84, 0xc4, 0xbb, - 0x61, 0x4a, 0x09, 0x25, 0x2b, 0x31, 0xe1, 0x36, 0xcd, 0xfb, 0xde, 0xd7, 0x99, 0x79, 0x6f, 0x1e, - 0x9e, 0x4d, 0x41, 0x39, 0x5c, 0xb8, 0x8a, 0x6d, 0x43, 0x44, 0x5d, 0x9f, 0x2a, 0xdd, 0xa5, 0x2c, - 0xec, 0xca, 0x24, 0x04, 0x57, 0x78, 0x6f, 0x80, 0x69, 0x27, 0x96, 0x42, 0x0b, 0x6b, 0x3a, 0x27, - 0x9d, 0x9c, 0x74, 0x4a, 0xe4, 0x94, 0x1d, 0x70, 0xbd, 0x9d, 0x78, 0x0e, 0x13, 0x91, 0x1b, 0x88, - 0x40, 0xb8, 0x26, 0xc7, 0x4b, 0x7c, 0xf3, 0x65, 0x3e, 0xcc, 0x2a, 0x77, 0x4d, 0x3d, 0xb8, 0xea, - 0xaf, 0x7a, 0x37, 0x06, 0x75, 0x06, 0x4e, 0x97, 0x41, 0x11, 0x6b, 0x2e, 0xfa, 0x45, 0xf0, 0x76, - 0x39, 0x78, 0x31, 0xaf, 0x55, 0x0e, 0xa5, 0xa0, 0xa0, 0x9f, 0x96, 0xd3, 0x5b, 0x5f, 0xeb, 0xb8, - 0xb1, 0x69, 0x4e, 0x68, 0x2d, 0xe0, 0xd1, 0x08, 0x34, 0xed, 0x51, 0x4d, 0x9b, 0x68, 0x06, 0xcd, - 0x8e, 0xb5, 0xef, 0x3a, 0xe5, 0xe3, 0xe6, 0xe0, 0x06, 0x68, 0xfa, 0x72, 0x37, 0x86, 0xce, 0x39, - 0x6e, 0xad, 0xe3, 0x5b, 0x6a, 0x57, 0x69, 0x88, 0xba, 0xe7, 0x86, 0xaa, 0x31, 0xdc, 0xbb, 0x64, - 0xd8, 0x32, 0xd4, 0x25, 0xcf, 0x44, 0x9e, 0xbb, 0x51, 0xd8, 0x16, 0x70, 0x5d, 0xc5, 0xc0, 0x9a, - 0x35, 0xa3, 0xb8, 0xef, 0x5c, 0x71, 0xe7, 0xce, 0x56, 0x0c, 0xcc, 0x48, 0x4c, 0xca, 0x62, 0x56, - 0x3d, 0x59, 0xba, 0xf1, 0x68, 0xae, 0x3d, 0x37, 0xff, 0x7d, 0xaf, 0x59, 0x9d, 0x44, 0x07, 0x7b, - 0xcd, 0x9f, 0x55, 0xfc, 0x0c, 0xd7, 0xd6, 0x40, 0x5b, 0x0b, 0xfe, 0xe3, 0x1d, 0x66, 0x2b, 0x60, - 0x89, 0x84, 0x08, 0xd4, 0xb6, 0xed, 0x51, 0xc5, 0x99, 0x1d, 0x89, 0x3e, 0xd7, 0x42, 0xce, 0xcd, - 0xa4, 0xa0, 0x6c, 0x2e, 0x6c, 0xde, 0xf7, 0x25, 0x55, 0x5a, 0x26, 0x4c, 0x27, 0x12, 0x6c, 0x09, - 0xb4, 0x87, 0x97, 0xf1, 0x48, 0x07, 0xe2, 0x90, 0x32, 0xb0, 0x9e, 0x0c, 0xb7, 0x24, 0x0a, 0xfe, - 0xa9, 0x78, 0x27, 0xb9, 0x06, 0xfc, 0x1c, 0x37, 0x56, 0x24, 0x50, 0x7d, 0x3d, 0xc5, 0x2a, 0x84, - 0x70, 0x3d, 0x45, 0x7d, 0x9d, 0xab, 0xeb, 0x5c, 0x46, 0xeb, 0x15, 0x1e, 0x2d, 0xae, 0xdd, 0x5a, - 0xc5, 0x23, 0x01, 0xeb, 0x9a, 0x72, 0xe5, 0x15, 0x7f, 0x78, 0x65, 0xb9, 0xd6, 0x42, 0xe1, 0xd1, - 0xf0, 0xbc, 0x68, 0x8d, 0x80, 0x9d, 0xae, 0x17, 0xeb, 0x27, 0x4b, 0xa8, 0xdd, 0xfa, 0x83, 0xf0, - 0xf8, 0x96, 0xa6, 0x3a, 0x51, 0xff, 0xdd, 0x91, 0x39, 0x3e, 0xa4, 0x23, 0x37, 0xf1, 0x58, 0xfe, - 0x70, 0xbb, 0x12, 0x7c, 0xd5, 0xac, 0xce, 0xd4, 0x66, 0xc7, 0xda, 0x77, 0x86, 0xf6, 0x73, 0x07, - 0xfc, 0xd3, 0xe4, 0xe5, 0xc9, 0x2f, 0xef, 0x6f, 0x96, 0x76, 0xdb, 0xc1, 0xa2, 0x00, 0x94, 0xf5, - 0x14, 0x63, 0x26, 0xfa, 0x3d, 0x6e, 0x1e, 0x4f, 0xb3, 0x36, 0xd4, 0xb7, 0x52, 0x00, 0x66, 0x33, - 0x17, 0xf8, 0xc5, 0xe9, 0x83, 0xa5, 0x49, 0x3c, 0x81, 0xc7, 0x8b, 0xfd, 0x39, 0x09, 0xef, 0x15, - 0x9d, 0xba, 0xfc, 0x11, 0xed, 0x1f, 0x91, 0xca, 0xe1, 0x11, 0xa9, 0x1c, 0x1f, 0x11, 0xf4, 0x21, - 0x23, 0xe8, 0x73, 0x46, 0xd0, 0x8f, 0x8c, 0xa0, 0xfd, 0x8c, 0xa0, 0xc3, 0x8c, 0xa0, 0x5f, 0x19, - 0x41, 0xbf, 0x33, 0x52, 0x39, 0xce, 0x08, 0xfa, 0x34, 0x20, 0x95, 0x6f, 0x03, 0x82, 0xf6, 0x07, - 0xa4, 0x72, 0x38, 0x20, 0x95, 0xd7, 0x2f, 0x02, 0x11, 0xbf, 0x0d, 0x9c, 0x54, 0x84, 0x1a, 0xa4, - 0xa4, 0x4e, 0xa2, 0x5c, 0xb3, 0xf0, 0x85, 0x8c, 0xec, 0x58, 0x8a, 0x94, 0xf7, 0x40, 0xda, 0x45, - 0xd8, 0x8d, 0xbd, 0x40, 0xb8, 0xb0, 0xa3, 0xcf, 0xa6, 0xc2, 0xb0, 0xe9, 0xe3, 0x35, 0xcc, 0x70, - 0x98, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x93, 0xce, 0x54, 0x75, 0x19, 0x05, 0x00, 0x00, + // 623 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0xd8, 0x65, 0x21, 0x03, 0x22, 0xe9, 0x69, 0x05, 0x9d, 0x90, 0x35, 0x46, 0x12, + 0x69, 0x1b, 0x97, 0x78, 0x80, 0x18, 0x0e, 0x40, 0xc2, 0x05, 0x42, 0x5c, 0x0c, 0x07, 0x3d, 0xac, + 0xd3, 0xe9, 0x6b, 0x19, 0x6d, 0x77, 0x9a, 0x99, 0xe9, 0x0a, 0x07, 0x13, 0x13, 0x3f, 0x80, 0x7e, + 0x0c, 0xe3, 0xa7, 0x10, 0x4f, 0x1e, 0x09, 0x27, 0x8e, 0xd2, 0xbd, 0x78, 0x24, 0x24, 0xde, 0x0d, + 0x53, 0x8a, 0x94, 0x6c, 0x36, 0x5e, 0xb8, 0xcd, 0xe4, 0xfd, 0xde, 0xff, 0xff, 0xa6, 0x7d, 0xef, + 0xe1, 0xf9, 0x1e, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x3d, 0x88, 0xa9, 0x1b, 0x50, 0xa5, 0x3b, 0x94, + 0x45, 0x1d, 0x99, 0x46, 0xe0, 0x0a, 0xef, 0x2d, 0x30, 0xed, 0x24, 0x52, 0x68, 0x61, 0xcd, 0xe6, + 0xa4, 0x93, 0x93, 0x4e, 0x89, 0x9c, 0xb1, 0x43, 0xae, 0xf7, 0x52, 0xcf, 0x61, 0x22, 0x76, 0x43, + 0x11, 0x0a, 0xd7, 0xe4, 0x78, 0x69, 0x60, 0x6e, 0xe6, 0x62, 0x4e, 0xb9, 0xd6, 0xcc, 0xe3, 0x61, + 0xae, 0xfa, 0x20, 0x01, 0x75, 0x09, 0xce, 0x96, 0x41, 0x91, 0x68, 0x2e, 0xba, 0x45, 0xf0, 0x5e, + 0x39, 0x78, 0x3d, 0xaf, 0x59, 0x0e, 0xf5, 0x40, 0x41, 0xb7, 0x57, 0x4e, 0x6f, 0x1e, 0x8f, 0xe2, + 0xfa, 0xb6, 0x79, 0xa1, 0xb5, 0x84, 0xc7, 0x63, 0xd0, 0xd4, 0xa7, 0x9a, 0x36, 0xd0, 0x1c, 0x9a, + 0x9f, 0x68, 0x3d, 0x70, 0xca, 0xcf, 0xcd, 0xc1, 0x2d, 0xd0, 0xf4, 0xe5, 0x41, 0x02, 0xed, 0x2b, + 0xdc, 0xda, 0xc4, 0x77, 0xd5, 0x81, 0xd2, 0x10, 0x77, 0xae, 0x14, 0x46, 0x8c, 0xc2, 0xc3, 0x1b, + 0x0a, 0x3b, 0x86, 0xba, 0xa1, 0x33, 0x95, 0xe7, 0x6e, 0x15, 0x6a, 0x4b, 0xb8, 0xa6, 0x12, 0x60, + 0x8d, 0xaa, 0x91, 0x78, 0xe4, 0x0c, 0xf9, 0xe6, 0xce, 0x4e, 0x02, 0xcc, 0x88, 0x98, 0x94, 0xe5, + 0x4f, 0xb5, 0xf3, 0x95, 0xd1, 0xa7, 0x0b, 0xad, 0x85, 0xc5, 0x1f, 0x87, 0x8d, 0x91, 0x69, 0x74, + 0x7c, 0xd8, 0x38, 0xab, 0x62, 0x0f, 0x57, 0x37, 0x40, 0x5b, 0xaf, 0x83, 0x67, 0xfb, 0xcc, 0x56, + 0xc0, 0x52, 0x09, 0x31, 0xa8, 0x3d, 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x16, 0x5d, 0xae, 0x85, 0x5c, + 0x98, 0xbb, 0x19, 0x56, 0x9a, 0x76, 0x7d, 0x2a, 0xfd, 0x7f, 0x44, 0x0f, 0x94, 0xcd, 0x85, 0xcd, + 0xbb, 0x81, 0xa4, 0x4a, 0xcb, 0x94, 0xe9, 0x54, 0x82, 0x2d, 0x81, 0xfa, 0x98, 0xe2, 0xb1, 0x36, + 0x24, 0x11, 0x65, 0x60, 0xed, 0x0e, 0xf6, 0x49, 0x15, 0x0c, 0x33, 0xc9, 0xc3, 0x83, 0x1d, 0xde, + 0x4b, 0xae, 0x01, 0xbf, 0xc1, 0xf5, 0x35, 0x09, 0x54, 0xdf, 0xaa, 0xc3, 0x3a, 0x44, 0x70, 0x8b, + 0x0e, 0x0c, 0xd7, 0x36, 0xb9, 0xba, 0xdd, 0x7f, 0xd1, 0xdc, 0xc5, 0xe3, 0x45, 0x5f, 0x58, 0xeb, + 0x78, 0x2c, 0x64, 0x1d, 0xd3, 0x4f, 0x79, 0x4b, 0x3e, 0x19, 0xda, 0x4f, 0x1b, 0x91, 0xf0, 0x68, + 0x74, 0xd5, 0x55, 0xf5, 0x90, 0x5d, 0x9c, 0x97, 0x6b, 0xe7, 0x2b, 0xa8, 0xd5, 0xfc, 0x83, 0xf0, + 0xe4, 0x8e, 0xa6, 0x3a, 0x55, 0xff, 0x3d, 0x32, 0x39, 0x3e, 0x60, 0x64, 0xb6, 0xf1, 0x44, 0xbe, + 0x59, 0x3a, 0x12, 0x02, 0xd5, 0x18, 0x99, 0xab, 0xce, 0x4f, 0xb4, 0xee, 0x0f, 0x1c, 0xb8, 0x36, + 0x04, 0x17, 0xc9, 0xab, 0xd3, 0xdf, 0x3e, 0xdc, 0x29, 0x55, 0xdb, 0xc6, 0xa2, 0x00, 0x94, 0xf5, + 0x1c, 0x63, 0x26, 0xba, 0x3e, 0x37, 0xd3, 0xdd, 0xa8, 0x0e, 0xd4, 0x5b, 0x2b, 0x00, 0x53, 0xcc, + 0x35, 0x7e, 0x79, 0xf6, 0x78, 0x65, 0x1a, 0x4f, 0xe1, 0xc9, 0xa2, 0x3e, 0x27, 0xe5, 0x7e, 0x31, + 0x4a, 0xab, 0x9f, 0xd1, 0xd1, 0x29, 0xa9, 0x9c, 0x9c, 0x92, 0xca, 0xd9, 0x29, 0x41, 0x1f, 0x33, + 0x82, 0xbe, 0x66, 0x04, 0xfd, 0xcc, 0x08, 0x3a, 0xca, 0x08, 0x3a, 0xc9, 0x08, 0xfa, 0x95, 0x11, + 0xf4, 0x3b, 0x23, 0x95, 0xb3, 0x8c, 0xa0, 0x2f, 0x7d, 0x52, 0xf9, 0xde, 0x27, 0xe8, 0xa8, 0x4f, + 0x2a, 0x27, 0x7d, 0x52, 0x79, 0xf5, 0x22, 0x14, 0xc9, 0xbb, 0xd0, 0xe9, 0x89, 0x48, 0x83, 0x94, + 0xd4, 0x49, 0x95, 0x6b, 0x0e, 0x81, 0x90, 0xb1, 0x9d, 0x48, 0xd1, 0xe3, 0x3e, 0x48, 0xbb, 0x08, + 0xbb, 0x89, 0x17, 0x0a, 0x17, 0xf6, 0xf5, 0xe5, 0xda, 0x1a, 0xb4, 0x1e, 0xbd, 0xba, 0xd9, 0x5e, + 0x8b, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xae, 0x94, 0x27, 0x13, 0xba, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/fast_acl_rule/pkg.vespkg.go b/pbgo/extschema/schema/fast_acl_rule/pkg.vespkg.go index b60352814..25f956f69 100644 --- a/pbgo/extschema/schema/fast_acl_rule/pkg.vespkg.go +++ b/pbgo/extschema/schema/fast_acl_rule/pkg.vespkg.go @@ -53,43 +53,43 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.fast_acl_rule.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fast_acl_rule.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fast_acl_rule.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fast_acl_rule.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.fast_acl_rule.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/fast_acl_rule/public_crudapi.pb.go b/pbgo/extschema/schema/fast_acl_rule/public_crudapi.pb.go index 4484cc2c8..905f0966a 100644 --- a/pbgo/extschema/schema/fast_acl_rule/public_crudapi.pb.go +++ b/pbgo/extschema/schema/fast_acl_rule/public_crudapi.pb.go @@ -1071,109 +1071,110 @@ func init() { } var fileDescriptor_e2df4e7f508a4e8e = []byte{ - // 1620 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0xdb, 0xc8, - 0x15, 0xf6, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xc3, 0x9d, 0xee, 0x7a, 0x65, 0x6d, 0x2a, 0xa8, 0xda, - 0x45, 0x57, 0xeb, 0x8d, 0xa8, 0xc0, 0x6d, 0x83, 0xb5, 0x5b, 0xb8, 0x95, 0x65, 0xc9, 0x75, 0xe2, - 0xbf, 0x50, 0x4a, 0x50, 0xb4, 0x07, 0x2e, 0x45, 0x8d, 0x14, 0x36, 0x92, 0xc8, 0xce, 0x0c, 0xe5, - 0x08, 0xa9, 0x81, 0x22, 0x40, 0x4f, 0xbd, 0xb4, 0xc8, 0xad, 0xed, 0xa1, 0x97, 0x02, 0xbd, 0xf4, - 0x58, 0xa0, 0x80, 0x2f, 0xbe, 0x25, 0xc8, 0xa1, 0x08, 0x52, 0xa0, 0xc8, 0xa9, 0xa8, 0xe5, 0x1e, - 0x72, 0x0c, 0x72, 0xeb, 0xad, 0xe0, 0x0c, 0xa9, 0x48, 0xb2, 0x22, 0x4b, 0x8e, 0x4f, 0xe2, 0xcc, - 0x7b, 0xdf, 0xc7, 0xf7, 0x71, 0xde, 0x7b, 0x7c, 0x22, 0xbc, 0xde, 0xc2, 0x54, 0x36, 0xcc, 0x0c, - 0xd5, 0xef, 0xe1, 0x86, 0x96, 0xa9, 0x6a, 0x94, 0xa9, 0x9a, 0x5e, 0x57, 0x89, 0x5d, 0xc7, 0x19, - 0xcb, 0x2e, 0xd7, 0x0d, 0x5d, 0xd5, 0x89, 0x5d, 0xd1, 0x2c, 0x43, 0xb6, 0x88, 0xc9, 0x4c, 0xf4, - 0x89, 0x40, 0xc8, 0x02, 0x21, 0xf7, 0x21, 0x62, 0xe9, 0x9a, 0xc1, 0xee, 0xd9, 0x65, 0x59, 0x37, - 0x1b, 0x99, 0x9a, 0x59, 0x33, 0x33, 0x1c, 0x53, 0xb6, 0xab, 0x7c, 0xc5, 0x17, 0xfc, 0x4a, 0x70, - 0xc5, 0xae, 0xd6, 0x4c, 0xb3, 0x56, 0xc7, 0x19, 0xcd, 0x32, 0x32, 0x5a, 0xb3, 0x69, 0x32, 0x8d, - 0x19, 0x66, 0x93, 0xba, 0xd6, 0x4f, 0x5c, 0x6b, 0x97, 0x03, 0x37, 0x2c, 0xd6, 0x76, 0x8d, 0xb1, - 0xfe, 0xc0, 0x31, 0x21, 0x26, 0xf1, 0x80, 0xa9, 0x51, 0xa2, 0xcc, 0xf2, 0xcf, 0xb1, 0xce, 0x5c, - 0xcf, 0xcf, 0x47, 0x79, 0xb2, 0xb6, 0x85, 0xbb, 0xb1, 0xf4, 0x3b, 0x9a, 0x56, 0x6f, 0xa0, 0x8b, - 0xfd, 0xc6, 0x5e, 0x5c, 0xb2, 0xdf, 0xd4, 0xc2, 0x14, 0x37, 0x5b, 0x03, 0xf0, 0xc4, 0x80, 0x8f, - 0x81, 0x0f, 0xd4, 0x3e, 0x8f, 0xe4, 0x5f, 0x01, 0x9c, 0xcd, 0x11, 0xac, 0x31, 0xac, 0xe0, 0x5f, - 0xd8, 0x98, 0x32, 0xf4, 0x43, 0x18, 0x6a, 0x60, 0xa6, 0x55, 0x34, 0xa6, 0x45, 0x41, 0x02, 0xa4, - 0x22, 0xcb, 0x9f, 0xca, 0xfd, 0x07, 0xb3, 0xc7, 0x75, 0x0a, 0xd4, 0x0e, 0x66, 0x5a, 0xa9, 0x6d, - 0x61, 0xa5, 0x0b, 0x42, 0xfb, 0x30, 0x40, 0x2d, 0xac, 0x47, 0x7d, 0x1c, 0xfc, 0xa5, 0x3c, 0xe2, - 0x54, 0x65, 0x41, 0x52, 0xb4, 0xb0, 0xee, 0x90, 0xac, 0xcf, 0xff, 0xfe, 0x70, 0xc6, 0xc1, 0xca, - 0x35, 0x5d, 0x75, 0x7e, 0x15, 0xce, 0xb4, 0x1a, 0x7e, 0xb6, 0x16, 0x14, 0x37, 0x4d, 0xfe, 0x0f, - 0xc0, 0x39, 0x2f, 0x5e, 0x6a, 0x99, 0x4d, 0x8a, 0xd1, 0x0f, 0xce, 0x04, 0x9c, 0x18, 0x1a, 0xf0, - 0x26, 0x66, 0x43, 0xa2, 0xdd, 0x83, 0xf3, 0xb4, 0x4d, 0x19, 0x6e, 0xa8, 0x5d, 0x12, 0x3f, 0x27, - 0xf9, 0xf6, 0x00, 0x49, 0x91, 0x7b, 0x9d, 0xa5, 0x9a, 0x13, 0xf0, 0x1d, 0x8f, 0x70, 0xa7, 0x4f, - 0x7e, 0x6a, 0xa4, 0xfc, 0x4d, 0xcc, 0x26, 0xd0, 0x7e, 0x02, 0xe0, 0x9c, 0x82, 0xad, 0xba, 0xa6, - 0x77, 0x0f, 0xeb, 0x47, 0x67, 0xb4, 0x7f, 0x36, 0x54, 0xbb, 0x0b, 0x1b, 0xa2, 0xff, 0x76, 0x5f, - 0xb8, 0xd7, 0x46, 0x86, 0xeb, 0xb2, 0x9c, 0x13, 0x32, 0xca, 0x40, 0x89, 0x60, 0x6a, 0xda, 0x44, - 0xc7, 0x6a, 0x0b, 0x13, 0x6a, 0x98, 0x4d, 0xfe, 0x4c, 0xc3, 0xeb, 0x81, 0x57, 0x47, 0x00, 0x28, - 0xf3, 0x9e, 0xf5, 0xae, 0x30, 0xf6, 0x6a, 0xfc, 0x00, 0xce, 0x77, 0x25, 0x8a, 0xf3, 0x4d, 0xfe, - 0x01, 0x40, 0xb8, 0x89, 0x99, 0x27, 0xf9, 0x2a, 0x0c, 0x37, 0xb5, 0x06, 0xa6, 0x96, 0xa6, 0x63, - 0xae, 0x39, 0xac, 0xbc, 0xdd, 0x40, 0x08, 0x06, 0x9c, 0x05, 0x97, 0x13, 0x56, 0xf8, 0x35, 0xfa, - 0x19, 0x74, 0xee, 0xc8, 0xc9, 0xd4, 0xaa, 0x49, 0x1a, 0x1a, 0xe3, 0xe1, 0xcc, 0x2d, 0x2f, 0x9f, - 0x77, 0x38, 0x5e, 0x0c, 0x05, 0x8e, 0xca, 0x99, 0x15, 0xac, 0xcc, 0x91, 0xbe, 0xbd, 0xe4, 0xef, - 0x82, 0x30, 0xd2, 0xe3, 0x89, 0x6e, 0xc1, 0x88, 0xce, 0xf3, 0x93, 0xdf, 0xca, 0x7d, 0xac, 0x4b, - 0x63, 0x14, 0x81, 0xab, 0x4f, 0x81, 0x02, 0xee, 0xd0, 0xa3, 0x5d, 0x38, 0x43, 0xc4, 0xd3, 0x10, - 0x6c, 0xfe, 0x31, 0x4a, 0xaa, 0x3f, 0x43, 0x94, 0x88, 0x4b, 0xc0, 0xf9, 0x86, 0x9d, 0x4c, 0x60, - 0xc4, 0xc9, 0xf4, 0xd5, 0xd6, 0xf4, 0x65, 0xd4, 0xd6, 0x95, 0x4b, 0xa9, 0xad, 0xe0, 0xa5, 0xd4, - 0x16, 0xfa, 0x31, 0x0c, 0x52, 0xa6, 0x31, 0x9b, 0x46, 0xff, 0xf4, 0x47, 0x90, 0xf0, 0xa7, 0x22, - 0xcb, 0x5f, 0x8c, 0xa4, 0x2c, 0x72, 0x67, 0x11, 0xe6, 0xba, 0xff, 0xf8, 0x10, 0x28, 0x2e, 0x1e, - 0x6d, 0xc1, 0x0f, 0x08, 0xae, 0x62, 0x42, 0x8c, 0x66, 0x4d, 0x15, 0xef, 0x01, 0x1a, 0x0d, 0x71, - 0xca, 0xab, 0xef, 0x28, 0xc8, 0x2a, 0x57, 0x28, 0x75, 0x61, 0x62, 0x9f, 0xa2, 0xbb, 0x30, 0x5a, - 0xc1, 0x75, 0xcc, 0x70, 0x45, 0x15, 0x36, 0x5c, 0xe9, 0x32, 0x86, 0xc7, 0x60, 0x5c, 0x70, 0xd1, - 0x8a, 0x0b, 0xf6, 0x78, 0x7f, 0x02, 0x17, 0x2b, 0x06, 0xd5, 0xca, 0xf5, 0x61, 0xc4, 0x70, 0x0c, - 0xe2, 0x8f, 0x3d, 0xf8, 0x00, 0x73, 0x4f, 0xf9, 0xde, 0x0c, 0x84, 0x80, 0xe4, 0x4b, 0xfe, 0x19, - 0xc0, 0xc8, 0xb6, 0x41, 0xc7, 0x2c, 0xd9, 0x6f, 0xc1, 0x99, 0xba, 0x56, 0xc6, 0x75, 0xb5, 0x6a, - 0xd4, 0x19, 0x26, 0x6e, 0xe9, 0x46, 0xf8, 0x5e, 0x81, 0x6f, 0xa1, 0x4f, 0xe1, 0x2c, 0xc1, 0x96, - 0x49, 0x98, 0x5a, 0x35, 0x70, 0xbd, 0x42, 0xa3, 0xfe, 0x84, 0x3f, 0x15, 0x56, 0x66, 0xc4, 0x66, - 0x81, 0xef, 0xa1, 0xeb, 0xf0, 0x43, 0xd7, 0x49, 0x1c, 0x8a, 0xe7, 0x1b, 0xe0, 0xbe, 0x48, 0xd8, - 0xc4, 0x11, 0x0a, 0x44, 0xf2, 0x38, 0x08, 0x25, 0x11, 0xa7, 0x28, 0xde, 0x2d, 0x86, 0x1b, 0x68, - 0x01, 0x06, 0x19, 0x6e, 0x6a, 0x4d, 0xc6, 0xb3, 0x2c, 0xac, 0xb8, 0xab, 0x0b, 0xf4, 0x1d, 0x09, - 0xfa, 0x6d, 0xa3, 0x22, 0x5a, 0x9f, 0xe2, 0x5c, 0xa2, 0x04, 0x8c, 0x54, 0x30, 0xd5, 0x89, 0xc1, - 0xdf, 0xc1, 0xd1, 0x88, 0x50, 0xda, 0xb3, 0x85, 0x62, 0x30, 0xe4, 0x3d, 0xe6, 0xe8, 0x4c, 0x02, - 0xa4, 0x42, 0x4a, 0x77, 0x8d, 0x6e, 0xc3, 0x20, 0x7f, 0x28, 0x42, 0x52, 0x64, 0x79, 0x65, 0x64, - 0xb2, 0x0e, 0x0a, 0x93, 0xb7, 0x39, 0x36, 0xdf, 0x64, 0xa4, 0xad, 0xb8, 0x44, 0xe8, 0x6b, 0x18, - 0xe9, 0x99, 0x8e, 0xdc, 0x34, 0x58, 0x9b, 0x8c, 0x37, 0xfb, 0x96, 0x40, 0x90, 0xf7, 0x52, 0xa2, - 0x15, 0x08, 0xcd, 0x83, 0x26, 0x26, 0xaa, 0x33, 0x7c, 0x44, 0xc3, 0xbc, 0x70, 0x63, 0x03, 0x37, - 0xb8, 0x6b, 0xe0, 0x03, 0x2f, 0xcb, 0xc2, 0xdc, 0xdb, 0xd9, 0xe9, 0x6b, 0x3e, 0xb3, 0x97, 0xd1, - 0x7c, 0xe6, 0xde, 0xab, 0xf9, 0xe4, 0x60, 0xa8, 0x86, 0x19, 0xef, 0x1f, 0x6e, 0x1b, 0x1b, 0xbb, - 0x01, 0x29, 0x57, 0x6a, 0x62, 0x81, 0x76, 0x20, 0x74, 0xb3, 0x93, 0x62, 0xe6, 0x76, 0x88, 0x49, - 0x9b, 0x4e, 0x58, 0x30, 0x14, 0x31, 0x8b, 0xad, 0xc0, 0x48, 0xcf, 0xb1, 0x3a, 0x19, 0x77, 0x1f, - 0xb7, 0xdd, 0xec, 0x74, 0x2e, 0xd1, 0x87, 0x70, 0xba, 0xa5, 0xd5, 0x6d, 0x2f, 0x31, 0xc5, 0x62, - 0xd5, 0xf7, 0x15, 0x88, 0xad, 0x41, 0x69, 0xf0, 0xe4, 0x26, 0xc1, 0xdf, 0x0c, 0x84, 0xa6, 0xa5, - 0x60, 0xf2, 0xd7, 0x00, 0xce, 0xf4, 0x66, 0x04, 0xca, 0xc1, 0x69, 0x83, 0xe1, 0x06, 0x8d, 0x8a, - 0x86, 0x9a, 0x9e, 0x28, 0x97, 0x14, 0x81, 0x45, 0xd7, 0x61, 0x50, 0x8c, 0xdd, 0x51, 0x1f, 0x67, - 0x89, 0x0e, 0xb0, 0xe4, 0x1d, 0x23, 0x7f, 0xb0, 0xae, 0x5f, 0xf2, 0x3e, 0x9c, 0xdd, 0xe0, 0x7d, - 0xef, 0xe2, 0x63, 0x42, 0x0a, 0x4a, 0x55, 0xcd, 0xa8, 0xab, 0x46, 0xb5, 0xdb, 0x1f, 0x79, 0xed, - 0x86, 0x94, 0x39, 0x67, 0x7f, 0xab, 0xea, 0xf5, 0xbd, 0xa5, 0x37, 0x00, 0x7e, 0x34, 0x74, 0x3a, - 0x40, 0x31, 0xb8, 0xb0, 0x99, 0x2f, 0xa9, 0x4a, 0x71, 0x5f, 0x2d, 0xec, 0x29, 0x3b, 0xd9, 0x92, - 0xba, 0x91, 0x2f, 0x64, 0xef, 0x6c, 0x97, 0xa4, 0x29, 0xf4, 0x4d, 0xb8, 0x38, 0x60, 0x2b, 0xec, - 0x29, 0x6a, 0x4e, 0xc9, 0x67, 0x4b, 0x79, 0x09, 0xa0, 0x38, 0x8c, 0x0d, 0x31, 0x2b, 0xf9, 0xfd, - 0xed, 0x6c, 0x2e, 0x2f, 0xf9, 0xd0, 0x22, 0xfc, 0x68, 0xc0, 0x5e, 0x2c, 0x65, 0x4b, 0x77, 0x8a, - 0x92, 0x1f, 0x7d, 0x0c, 0xbf, 0x31, 0x60, 0x52, 0xf2, 0xd9, 0x0d, 0x29, 0x80, 0x3e, 0x83, 0x89, - 0x33, 0x86, 0x42, 0x5e, 0x51, 0xb6, 0x76, 0x37, 0xd5, 0xbd, 0xf5, 0x9b, 0xf9, 0x5c, 0xa9, 0x28, - 0x4d, 0x0f, 0xf1, 0x5a, 0x57, 0xf6, 0x6e, 0xe5, 0x77, 0x85, 0x73, 0x7e, 0x37, 0x97, 0x2f, 0x4a, - 0xc1, 0xe5, 0xbf, 0x85, 0xa1, 0x3f, 0xbb, 0xbf, 0x85, 0xfe, 0x0d, 0x60, 0x50, 0x4c, 0x2c, 0x68, - 0x82, 0xb1, 0x26, 0xf6, 0xe5, 0x58, 0xbe, 0xee, 0xc8, 0xf7, 0xb0, 0xf3, 0x24, 0x7a, 0xa3, 0xfa, - 0xbd, 0x07, 0x7a, 0x9a, 0x62, 0xdd, 0x26, 0xb8, 0x81, 0xe9, 0xbd, 0x74, 0x59, 0xa3, 0x86, 0x9e, - 0xb6, 0x29, 0x26, 0xd7, 0x5a, 0x98, 0xa6, 0x0d, 0x33, 0x6d, 0x34, 0xab, 0x44, 0xa3, 0x8c, 0xd8, - 0x3a, 0xb3, 0x09, 0x4e, 0x1f, 0x10, 0x83, 0xe1, 0x47, 0xff, 0xfc, 0xef, 0x63, 0xdf, 0xf7, 0x93, - 0x37, 0xdc, 0xbf, 0x98, 0x99, 0xee, 0x99, 0xd3, 0xcc, 0x43, 0xaf, 0x11, 0xc8, 0xdd, 0xcd, 0xc3, - 0xfe, 0x3f, 0x66, 0x74, 0x15, 0x2c, 0xa1, 0x7f, 0x01, 0xe8, 0xdf, 0xc4, 0x0c, 0x7d, 0x7e, 0xfe, - 0x74, 0x28, 0xa4, 0xa5, 0xc6, 0x1d, 0x23, 0x93, 0xbf, 0x7c, 0xfa, 0x77, 0x1f, 0xe8, 0x3c, 0x89, - 0x7e, 0x35, 0x5c, 0x5b, 0xc3, 0x6c, 0x1a, 0xcc, 0x7c, 0x97, 0x3c, 0x82, 0xb5, 0x0a, 0x57, 0x77, - 0x03, 0x7d, 0x77, 0x98, 0xba, 0x77, 0x8a, 0x12, 0xa6, 0x43, 0xf4, 0x02, 0xc0, 0x80, 0x53, 0x71, - 0x28, 0x35, 0x46, 0x51, 0x0a, 0x69, 0x5f, 0x8c, 0x5d, 0xbe, 0x49, 0xfb, 0x52, 0xb4, 0x65, 0x50, - 0x7a, 0x22, 0x6d, 0xe8, 0x0d, 0x80, 0x57, 0xdc, 0x91, 0x17, 0x4d, 0x32, 0x18, 0xc7, 0xae, 0x8d, - 0xe7, 0xec, 0xaa, 0xfb, 0x0d, 0x78, 0xcf, 0x94, 0xbc, 0x15, 0x2b, 0x5c, 0x2c, 0x25, 0x07, 0x7c, - 0x0e, 0x9d, 0x14, 0x7d, 0x02, 0x60, 0x50, 0xb4, 0xbb, 0x73, 0x6a, 0xb0, 0xaf, 0x27, 0xc6, 0x16, - 0x64, 0xf1, 0xdd, 0x43, 0xf6, 0xbe, 0x7b, 0xc8, 0xf9, 0x86, 0xc5, 0xda, 0xc9, 0xf6, 0x7b, 0x6a, - 0x5b, 0x59, 0xba, 0x50, 0x42, 0xae, 0x82, 0xa5, 0xd8, 0xd7, 0xc7, 0x47, 0xc0, 0xf7, 0xe2, 0x08, - 0x24, 0x47, 0xa9, 0x10, 0x2f, 0xbf, 0x97, 0x47, 0x00, 0x74, 0x8e, 0x40, 0x6a, 0xdc, 0x97, 0xe5, - 0xa3, 0x7f, 0x44, 0x7d, 0x12, 0x58, 0x7f, 0x0c, 0x9e, 0xad, 0x4d, 0xe7, 0x94, 0x3b, 0x1b, 0xdb, - 0xcf, 0x4f, 0xe2, 0x53, 0x2f, 0x4f, 0xe2, 0x53, 0xaf, 0x4f, 0xe2, 0xe0, 0x57, 0x9d, 0x38, 0xf8, - 0x4b, 0x27, 0x0e, 0x9e, 0x76, 0xe2, 0xe0, 0x79, 0x27, 0x0e, 0xfe, 0xd3, 0x89, 0x83, 0x57, 0x9d, - 0xf8, 0xd4, 0xeb, 0x4e, 0x1c, 0xfc, 0xf6, 0x34, 0x3e, 0x75, 0x7c, 0x1a, 0x07, 0xcf, 0x4f, 0xe3, - 0x53, 0x2f, 0x4f, 0xe3, 0x53, 0x3f, 0xbd, 0x5d, 0x33, 0xad, 0xfb, 0x35, 0xb9, 0x65, 0x3a, 0xc3, - 0x28, 0xd1, 0x64, 0x9b, 0x66, 0xf8, 0x85, 0xf3, 0x9f, 0x2c, 0x6d, 0x11, 0xb3, 0x65, 0x54, 0x30, - 0x49, 0x7b, 0xe6, 0x8c, 0x55, 0xae, 0x99, 0x19, 0xfc, 0x80, 0xb9, 0x5f, 0x5d, 0x86, 0x7d, 0x01, - 0x2a, 0x07, 0xf9, 0x11, 0x7c, 0xe7, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x82, 0x89, 0x06, 0xf4, - 0x26, 0x13, 0x00, 0x00, + // 1635 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x1b, 0x4f, + 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x1d, 0xda, 0xd4, 0x71, 0x8b, 0x65, 0xdc, 0x8a, + 0xba, 0x69, 0xbd, 0xae, 0x02, 0x54, 0x24, 0xa0, 0x80, 0xe3, 0xd8, 0x21, 0x6d, 0xbe, 0xba, 0x76, + 0x2b, 0x3e, 0x0e, 0xdb, 0xf5, 0x7a, 0xec, 0x2e, 0xb5, 0xbd, 0xcb, 0xcc, 0xd8, 0x69, 0x84, 0x22, + 0xa1, 0x4a, 0xdc, 0x8b, 0x2a, 0x81, 0xf8, 0x92, 0xb8, 0x20, 0xc1, 0x81, 0x3b, 0x52, 0x2e, 0xb9, + 0x51, 0xf5, 0x80, 0x2a, 0x10, 0x52, 0x8f, 0xc4, 0x41, 0xa8, 0xc7, 0x0a, 0x71, 0x80, 0xc3, 0x5f, + 0xfa, 0x6b, 0x67, 0x76, 0x5d, 0xdb, 0x71, 0x1d, 0x3b, 0xff, 0xf4, 0x7f, 0xf2, 0xee, 0xbc, 0xf7, + 0xfb, 0xed, 0xfb, 0xcd, 0xbc, 0xf7, 0xf6, 0x79, 0xe1, 0xed, 0x26, 0xa6, 0xb2, 0x61, 0xa6, 0xa8, + 0xfe, 0x18, 0xd7, 0xb4, 0x54, 0x59, 0xa3, 0x4c, 0xd5, 0xf4, 0xaa, 0x4a, 0x1a, 0x55, 0x9c, 0xb2, + 0x1a, 0xc5, 0xaa, 0xa1, 0xab, 0x3a, 0x69, 0x94, 0x34, 0xcb, 0x90, 0x2d, 0x62, 0x32, 0x13, 0x5d, + 0x16, 0x08, 0x59, 0x20, 0xe4, 0x2e, 0x44, 0x24, 0x59, 0x31, 0xd8, 0xe3, 0x46, 0x51, 0xd6, 0xcd, + 0x5a, 0xaa, 0x62, 0x56, 0xcc, 0x14, 0xc7, 0x14, 0x1b, 0x65, 0x7e, 0xc7, 0x6f, 0xf8, 0x95, 0xe0, + 0x8a, 0x5c, 0xa9, 0x98, 0x66, 0xa5, 0x8a, 0x53, 0x9a, 0x65, 0xa4, 0xb4, 0x7a, 0xdd, 0x64, 0x1a, + 0x33, 0xcc, 0x3a, 0x75, 0xac, 0x97, 0x1d, 0x6b, 0x9b, 0x03, 0xd7, 0x2c, 0xb6, 0xeb, 0x18, 0x23, + 0xdd, 0x81, 0x63, 0x42, 0x4c, 0xe2, 0x02, 0x13, 0x83, 0x44, 0x99, 0xc5, 0x1f, 0x62, 0x9d, 0x39, + 0x9e, 0xd7, 0x07, 0x79, 0xb2, 0x5d, 0x0b, 0xb7, 0x63, 0xe9, 0x76, 0x34, 0xad, 0xce, 0x40, 0x67, + 0xbb, 0x8d, 0x9d, 0xb8, 0x78, 0xb7, 0xa9, 0x89, 0x29, 0xae, 0x37, 0x7b, 0xe0, 0xb1, 0x1e, 0x1f, + 0x03, 0xef, 0xa8, 0x5d, 0x1e, 0xf1, 0x3f, 0x01, 0x38, 0x99, 0x21, 0x58, 0x63, 0x58, 0xc1, 0x3f, + 0x6a, 0x60, 0xca, 0xd0, 0xb7, 0x60, 0xa0, 0x86, 0x99, 0x56, 0xd2, 0x98, 0x16, 0x06, 0x31, 0x90, + 0x08, 0xcd, 0x5f, 0x95, 0xbb, 0x0f, 0x66, 0x8b, 0xeb, 0x14, 0xa8, 0x0d, 0xcc, 0xb4, 0xc2, 0xae, + 0x85, 0x95, 0x36, 0x08, 0x6d, 0x43, 0x1f, 0xb5, 0xb0, 0x1e, 0xf6, 0x70, 0xf0, 0x4d, 0x79, 0xc0, + 0xa9, 0xca, 0x82, 0x24, 0x6f, 0x61, 0xdd, 0x26, 0x59, 0x9e, 0xfe, 0xd5, 0xde, 0x84, 0x8d, 0x95, + 0x2b, 0xba, 0x6a, 0xff, 0x2a, 0x9c, 0x69, 0x31, 0xf8, 0x6a, 0xc9, 0x2f, 0x1e, 0x1a, 0xff, 0x3f, + 0x80, 0x53, 0x6e, 0xbc, 0xd4, 0x32, 0xeb, 0x14, 0xa3, 0x6f, 0x1e, 0x0b, 0x38, 0xd6, 0x37, 0xe0, + 0x55, 0xcc, 0xfa, 0x44, 0xbb, 0x05, 0xa7, 0xe9, 0x2e, 0x65, 0xb8, 0xa6, 0xb6, 0x49, 0xbc, 0x9c, + 0xe4, 0xcb, 0x3d, 0x24, 0x79, 0xee, 0x75, 0x9c, 0x6a, 0x4a, 0xc0, 0x37, 0x5c, 0xc2, 0x8d, 0x2e, + 0xf9, 0x89, 0x81, 0xf2, 0x57, 0x31, 0x1b, 0x41, 0xfb, 0x21, 0x80, 0x53, 0x0a, 0xb6, 0xaa, 0x9a, + 0xde, 0x3e, 0xac, 0x6f, 0x1f, 0xd3, 0x7e, 0xad, 0xaf, 0x76, 0x07, 0xd6, 0x47, 0xff, 0xfd, 0xae, + 0x70, 0x6f, 0x0d, 0x0c, 0xd7, 0x61, 0x39, 0x21, 0x64, 0x94, 0x82, 0x12, 0xc1, 0xd4, 0x6c, 0x10, + 0x1d, 0xab, 0x4d, 0x4c, 0xa8, 0x61, 0xd6, 0xf9, 0x9e, 0x06, 0x97, 0x7d, 0x6f, 0xf7, 0x01, 0x50, + 0xa6, 0x5d, 0xeb, 0x43, 0x61, 0xec, 0xd4, 0x78, 0x1e, 0x4e, 0xb7, 0x25, 0x8a, 0xf3, 0x8d, 0xff, + 0x1a, 0x40, 0xb8, 0x8a, 0x99, 0x2b, 0xf9, 0x0a, 0x0c, 0xd6, 0xb5, 0x1a, 0xa6, 0x96, 0xa6, 0x63, + 0xae, 0x39, 0xa8, 0xbc, 0x5f, 0x40, 0x08, 0xfa, 0xec, 0x1b, 0x2e, 0x27, 0xa8, 0xf0, 0x6b, 0xf4, + 0x03, 0x68, 0x3f, 0x91, 0x93, 0xa9, 0x65, 0x93, 0xd4, 0x34, 0xc6, 0xc3, 0x99, 0x9a, 0x9f, 0x3f, + 0xe9, 0x70, 0xdc, 0x18, 0x72, 0x1c, 0x95, 0x31, 0x4b, 0x58, 0x99, 0x22, 0x5d, 0x6b, 0xf1, 0x9f, + 0xf9, 0x61, 0xa8, 0xc3, 0x13, 0xdd, 0x83, 0x21, 0x9d, 0xe7, 0x27, 0x7f, 0x94, 0xb3, 0xad, 0x73, + 0x43, 0x14, 0x81, 0xa3, 0x4f, 0x81, 0x02, 0x6e, 0xd3, 0xa3, 0x4d, 0x38, 0x41, 0xc4, 0x6e, 0x08, + 0x36, 0xef, 0x10, 0x25, 0xd5, 0x9d, 0x21, 0x4a, 0xc8, 0x21, 0xe0, 0x7c, 0xfd, 0x4e, 0xc6, 0x37, + 0xe0, 0x64, 0xba, 0x6a, 0x6b, 0xfc, 0x2c, 0x6a, 0xeb, 0xdc, 0x99, 0xd4, 0x96, 0xff, 0x4c, 0x6a, + 0x0b, 0x7d, 0x07, 0xfa, 0x29, 0xd3, 0x58, 0x83, 0x86, 0x7f, 0xf7, 0x1b, 0x10, 0xf3, 0x26, 0x42, + 0xf3, 0x37, 0x06, 0x52, 0xe6, 0xb9, 0xb3, 0x08, 0x73, 0xd9, 0x7b, 0xb0, 0x07, 0x14, 0x07, 0x8f, + 0xd6, 0xe0, 0x79, 0x82, 0xcb, 0x98, 0x10, 0xa3, 0x5e, 0x51, 0xc5, 0x7b, 0x80, 0x86, 0x03, 0x9c, + 0xf2, 0xca, 0x07, 0x0a, 0xb2, 0xcc, 0x15, 0x4a, 0x6d, 0x98, 0x58, 0xa7, 0xe8, 0x21, 0x0c, 0x97, + 0x70, 0x15, 0x33, 0x5c, 0x52, 0x85, 0x0d, 0x97, 0xda, 0x8c, 0xc1, 0x21, 0x18, 0x67, 0x1c, 0xb4, + 0xe2, 0x80, 0x5d, 0xde, 0xef, 0xc2, 0xd9, 0x92, 0x41, 0xb5, 0x62, 0xb5, 0x1f, 0x31, 0x1c, 0x82, + 0xf8, 0x92, 0x0b, 0xef, 0x61, 0xee, 0x28, 0xdf, 0xbb, 0xbe, 0x00, 0x90, 0x3c, 0xf1, 0xdf, 0x03, + 0x18, 0x5a, 0x37, 0xe8, 0x90, 0x25, 0xfb, 0x25, 0x38, 0x51, 0xd5, 0x8a, 0xb8, 0xaa, 0x96, 0x8d, + 0x2a, 0xc3, 0xc4, 0x29, 0xdd, 0x10, 0x5f, 0xcb, 0xf1, 0x25, 0x74, 0x15, 0x4e, 0x12, 0x6c, 0x99, + 0x84, 0xa9, 0x65, 0x03, 0x57, 0x4b, 0x34, 0xec, 0x8d, 0x79, 0x13, 0x41, 0x65, 0x42, 0x2c, 0xe6, + 0xf8, 0x1a, 0xba, 0x0d, 0x2f, 0x38, 0x4e, 0xe2, 0x50, 0x5c, 0x5f, 0x1f, 0xf7, 0x45, 0xc2, 0x26, + 0x8e, 0x50, 0x20, 0xe2, 0x07, 0x7e, 0x28, 0x89, 0x38, 0x45, 0xf1, 0xae, 0x31, 0x5c, 0x43, 0x33, + 0xd0, 0xcf, 0x70, 0x5d, 0xab, 0x33, 0x9e, 0x65, 0x41, 0xc5, 0xb9, 0x3b, 0x45, 0xdf, 0x91, 0xa0, + 0xb7, 0x61, 0x94, 0x44, 0xeb, 0x53, 0xec, 0x4b, 0x14, 0x83, 0xa1, 0x12, 0xa6, 0x3a, 0x31, 0xf8, + 0x3b, 0x38, 0x1c, 0x12, 0x4a, 0x3b, 0x96, 0x50, 0x04, 0x06, 0xdc, 0x6d, 0x0e, 0x4f, 0xc4, 0x40, + 0x22, 0xa0, 0xb4, 0xef, 0xd1, 0x7d, 0xe8, 0xe7, 0x9b, 0x22, 0x24, 0x85, 0xe6, 0x17, 0x06, 0x26, + 0x6b, 0xaf, 0x30, 0x79, 0x9d, 0x63, 0xb3, 0x75, 0x46, 0x76, 0x15, 0x87, 0x08, 0x3d, 0x82, 0xa1, + 0x8e, 0xe9, 0xc8, 0x49, 0x83, 0xa5, 0xd1, 0x78, 0xd3, 0xef, 0x09, 0x04, 0x79, 0x27, 0x25, 0x5a, + 0x80, 0xd0, 0xdc, 0xa9, 0x63, 0xa2, 0xda, 0xc3, 0x47, 0x38, 0xc8, 0x0b, 0x37, 0xd2, 0xf3, 0x80, + 0x87, 0x06, 0xde, 0x71, 0xb3, 0x2c, 0xc8, 0xbd, 0xed, 0x95, 0xae, 0xe6, 0x33, 0x79, 0x16, 0xcd, + 0x67, 0xea, 0x33, 0x35, 0x9f, 0x0c, 0x0c, 0x54, 0x30, 0xe3, 0xfd, 0xc3, 0x69, 0x63, 0x43, 0x37, + 0x20, 0xe5, 0x5c, 0x45, 0xdc, 0xa0, 0x0d, 0x08, 0x9d, 0xec, 0xa4, 0x98, 0x39, 0x1d, 0x62, 0xd4, + 0xa6, 0x13, 0x14, 0x0c, 0x79, 0xcc, 0x22, 0x0b, 0x30, 0xd4, 0x71, 0xac, 0x76, 0xc6, 0x3d, 0xc1, + 0xbb, 0x4e, 0x76, 0xda, 0x97, 0xe8, 0x02, 0x1c, 0x6f, 0x6a, 0xd5, 0x86, 0x9b, 0x98, 0xe2, 0x66, + 0xd1, 0xf3, 0x75, 0x10, 0x59, 0x82, 0x52, 0xef, 0xc9, 0x8d, 0x82, 0xbf, 0xeb, 0x0b, 0x8c, 0x4b, + 0xfe, 0xf8, 0x4f, 0x01, 0x9c, 0xe8, 0xcc, 0x08, 0x94, 0x81, 0xe3, 0x06, 0xc3, 0x35, 0x1a, 0x16, + 0x0d, 0x35, 0x39, 0x52, 0x2e, 0x29, 0x02, 0x8b, 0x6e, 0x43, 0xbf, 0x18, 0xbb, 0xc3, 0x1e, 0xce, + 0x12, 0xee, 0x61, 0xc9, 0xda, 0x46, 0xbe, 0xb1, 0x8e, 0x5f, 0xfc, 0x09, 0x9c, 0x5c, 0xe1, 0x7d, + 0xef, 0xf4, 0x63, 0x42, 0x02, 0x4a, 0x65, 0xcd, 0xa8, 0xaa, 0x46, 0xb9, 0xdd, 0x1f, 0x79, 0xed, + 0x06, 0x94, 0x29, 0x7b, 0x7d, 0xad, 0xec, 0xf6, 0xbd, 0xb9, 0xff, 0x00, 0x78, 0xb1, 0xef, 0x74, + 0x80, 0x22, 0x70, 0x66, 0x35, 0x5b, 0x50, 0x95, 0xfc, 0xb6, 0x9a, 0xdb, 0x52, 0x36, 0xd2, 0x05, + 0x75, 0x25, 0x9b, 0x4b, 0x3f, 0x58, 0x2f, 0x48, 0x63, 0xe8, 0x8b, 0x70, 0xb6, 0xc7, 0x96, 0xdb, + 0x52, 0xd4, 0x8c, 0x92, 0x4d, 0x17, 0xb2, 0x12, 0x40, 0x51, 0x18, 0xe9, 0x63, 0x56, 0xb2, 0xdb, + 0xeb, 0xe9, 0x4c, 0x56, 0xf2, 0xa0, 0x59, 0x78, 0xb1, 0xc7, 0x9e, 0x2f, 0xa4, 0x0b, 0x0f, 0xf2, + 0x92, 0x17, 0x5d, 0x82, 0x5f, 0xe8, 0x31, 0x29, 0xd9, 0xf4, 0x8a, 0xe4, 0x43, 0xd7, 0x60, 0xec, + 0x98, 0x21, 0x97, 0x55, 0x94, 0xb5, 0xcd, 0x55, 0x75, 0x6b, 0xf9, 0x6e, 0x36, 0x53, 0xc8, 0x4b, + 0xe3, 0x7d, 0xbc, 0x96, 0x95, 0xad, 0x7b, 0xd9, 0x4d, 0xe1, 0x9c, 0xdd, 0xcc, 0x64, 0xf3, 0x92, + 0x7f, 0xfe, 0x1f, 0x10, 0x7a, 0xd3, 0xdb, 0x6b, 0xe8, 0x13, 0x00, 0xfd, 0x62, 0x62, 0x41, 0x23, + 0x8c, 0x35, 0x91, 0x9b, 0x43, 0xf9, 0x3a, 0x23, 0xdf, 0x2f, 0x41, 0xeb, 0x2f, 0xe1, 0x42, 0xf9, + 0x6b, 0x4f, 0xf5, 0x24, 0xc5, 0x7a, 0x83, 0xe0, 0x1a, 0xa6, 0x8f, 0x93, 0x45, 0x8d, 0x1a, 0x7a, + 0xb2, 0x41, 0x31, 0xb9, 0xd5, 0x6b, 0xa2, 0x4c, 0xab, 0x97, 0x34, 0x52, 0x12, 0xd6, 0x26, 0xa6, + 0x49, 0xc3, 0x4c, 0x1a, 0xf5, 0x32, 0xd1, 0x28, 0x23, 0x0d, 0x9d, 0x35, 0x08, 0x4e, 0xee, 0x10, + 0x83, 0xe1, 0x67, 0x7f, 0xff, 0xd7, 0x0b, 0xcf, 0x37, 0xe2, 0x77, 0x9c, 0x7f, 0xa0, 0xa9, 0x76, + 0x4a, 0xd0, 0xd4, 0x8f, 0xdd, 0x3e, 0x21, 0xb7, 0x17, 0xf7, 0xba, 0xff, 0xb7, 0xd1, 0x45, 0x30, + 0x87, 0xfe, 0x07, 0xa0, 0x77, 0x15, 0x33, 0x74, 0xfd, 0xe4, 0xe1, 0x51, 0x28, 0x4f, 0x0c, 0x3b, + 0x65, 0xc6, 0x7f, 0x0b, 0x5e, 0xfe, 0xd9, 0x63, 0x4b, 0xff, 0x5e, 0x7f, 0xe9, 0x35, 0xb3, 0x6e, + 0x30, 0x73, 0x80, 0x7a, 0xd7, 0xa1, 0xff, 0x06, 0x10, 0xac, 0x95, 0xb8, 0xfe, 0x3b, 0xe8, 0xab, + 0xfd, 0xf4, 0x7f, 0x50, 0xb6, 0x30, 0xed, 0xa1, 0xff, 0x02, 0xe8, 0xb3, 0x4b, 0x16, 0x25, 0x86, + 0xa8, 0x6a, 0x21, 0xfe, 0xc6, 0xd0, 0xf5, 0x1f, 0xff, 0xf9, 0xe7, 0xa4, 0x3e, 0x85, 0x92, 0x23, + 0xa9, 0x47, 0xcf, 0x3d, 0xf0, 0x9c, 0x33, 0x55, 0xa3, 0x51, 0x66, 0xef, 0xc8, 0xad, 0xe1, 0x9c, + 0x1d, 0xfd, 0x7f, 0xfc, 0xb8, 0x49, 0x7f, 0x2f, 0x92, 0x3b, 0x5d, 0xd2, 0xf7, 0xf8, 0xec, 0xd9, + 0x45, 0xf0, 0x6f, 0x00, 0xfd, 0xa2, 0xdf, 0x9e, 0xd0, 0x04, 0xba, 0x9a, 0x72, 0x64, 0x46, 0x16, + 0x1f, 0x5e, 0x64, 0xf7, 0xc3, 0x8b, 0x9c, 0xad, 0x59, 0x6c, 0x37, 0xfe, 0x8b, 0x8f, 0x2b, 0x7d, + 0x61, 0xee, 0x54, 0xf9, 0xbe, 0x08, 0xe6, 0x22, 0x8f, 0x0e, 0xf6, 0x81, 0xe7, 0x6f, 0xfb, 0x20, + 0x3e, 0x48, 0xa4, 0x78, 0x39, 0xbf, 0xd9, 0x07, 0xa0, 0xb5, 0x0f, 0x12, 0xc3, 0xbe, 0xcc, 0x9f, + 0xfd, 0x35, 0xec, 0x91, 0xc0, 0xf2, 0x0b, 0xf0, 0x6a, 0x69, 0x3c, 0xa3, 0x3c, 0x58, 0x59, 0x7f, + 0x7d, 0x18, 0x1d, 0x7b, 0x73, 0x18, 0x1d, 0x7b, 0x77, 0x18, 0x05, 0x3f, 0x69, 0x45, 0xc1, 0x1f, + 0x5a, 0x51, 0xf0, 0xb2, 0x15, 0x05, 0xaf, 0x5b, 0x51, 0xf0, 0xcf, 0x56, 0x14, 0xbc, 0x6d, 0x45, + 0xc7, 0xde, 0xb5, 0xa2, 0xe0, 0xf9, 0x51, 0x74, 0xec, 0xe0, 0x28, 0x0a, 0x5e, 0x1f, 0x45, 0xc7, + 0xde, 0x1c, 0x45, 0xc7, 0xbe, 0x7f, 0xbf, 0x62, 0x5a, 0x4f, 0x2a, 0x72, 0xd3, 0xb4, 0x87, 0x65, + 0xa2, 0xc9, 0x0d, 0x9a, 0xe2, 0x17, 0xf6, 0x7f, 0xc6, 0xa4, 0x45, 0xcc, 0xa6, 0x51, 0xc2, 0x24, + 0xe9, 0x9a, 0x53, 0x56, 0xb1, 0x62, 0xa6, 0xf0, 0x53, 0xe6, 0x7c, 0x15, 0xea, 0xf7, 0x85, 0xaa, + 0xe8, 0xe7, 0x27, 0xf4, 0x95, 0x4f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xbf, 0x2c, 0x44, 0x34, 0xc6, + 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/fast_acl_rule/public_crudapi.vesapi.go b/pbgo/extschema/schema/fast_acl_rule/public_crudapi.vesapi.go index eab70866e..53241fae5 100644 --- a/pbgo/extschema/schema/fast_acl_rule/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/fast_acl_rule/public_crudapi.vesapi.go @@ -2914,10 +2914,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2974,10 +2978,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3080,10 +3088,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/filter_set/crudapi/api.pb.go b/pbgo/extschema/schema/filter_set/crudapi/api.pb.go new file mode 100644 index 000000000..3722ef489 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/crudapi/api.pb.go @@ -0,0 +1,5699 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/filter_set/crudapi/api.proto + +package crudapi + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + filter_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +type ErrorCode int32 + +const ( + EOK ErrorCode = 0 + ENOTFOUND ErrorCode = 1 + EEXISTS ErrorCode = 2 + EUNKNOWN ErrorCode = 3 +) + +var ErrorCode_name = map[int32]string{ + 0: "EOK", + 1: "ENOTFOUND", + 2: "EEXISTS", + 3: "EUNKNOWN", +} + +var ErrorCode_value = map[string]int32{ + "EOK": 0, + "ENOTFOUND": 1, + "EEXISTS": 2, + "EUNKNOWN": 3, +} + +func (ErrorCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{0} +} + +type ObjectCreateReq struct { + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *filter_set.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateReq) Reset() { *m = ObjectCreateReq{} } +func (*ObjectCreateReq) ProtoMessage() {} +func (*ObjectCreateReq) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{0} +} +func (m *ObjectCreateReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateReq.Merge(m, src) +} +func (m *ObjectCreateReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateReq proto.InternalMessageInfo + +func (m *ObjectCreateReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateReq) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateReq) GetSpec() *filter_set.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectCreateRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.filter_set.crudapi.ErrorCode" json:"err,omitempty"` + ObjectUid string `protobuf:"bytes,10001,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *filter_set.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateRsp) Reset() { *m = ObjectCreateRsp{} } +func (*ObjectCreateRsp) ProtoMessage() {} +func (*ObjectCreateRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{1} +} +func (m *ObjectCreateRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateRsp.Merge(m, src) +} +func (m *ObjectCreateRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateRsp proto.InternalMessageInfo + +func (m *ObjectCreateRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectCreateRsp) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectCreateRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSpec() *filter_set.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + ResourceVersion string `protobuf:"bytes,10001,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + Spec *filter_set.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceReq) Reset() { *m = ObjectReplaceReq{} } +func (*ObjectReplaceReq) ProtoMessage() {} +func (*ObjectReplaceReq) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{2} +} +func (m *ObjectReplaceReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceReq.Merge(m, src) +} +func (m *ObjectReplaceReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceReq proto.InternalMessageInfo + +func (m *ObjectReplaceReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectReplaceReq) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectReplaceReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceReq) GetSpec() *filter_set.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.filter_set.crudapi.ErrorCode" json:"err,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *filter_set.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceRsp) Reset() { *m = ObjectReplaceRsp{} } +func (*ObjectReplaceRsp) ProtoMessage() {} +func (*ObjectReplaceRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{3} +} +func (m *ObjectReplaceRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceRsp.Merge(m, src) +} +func (m *ObjectReplaceRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceRsp proto.InternalMessageInfo + +func (m *ObjectReplaceRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectReplaceRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSpec() *filter_set.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectGetReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + AllBackrefs bool `protobuf:"varint,10001,opt,name=all_backrefs,json=allBackrefs,proto3" json:"all_backrefs,omitempty"` + BackrefTypes []string `protobuf:"bytes,10002,rep,name=backref_types,json=backrefTypes,proto3" json:"backref_types,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10003,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` +} + +func (m *ObjectGetReq) Reset() { *m = ObjectGetReq{} } +func (*ObjectGetReq) ProtoMessage() {} +func (*ObjectGetReq) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{4} +} +func (m *ObjectGetReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetReq.Merge(m, src) +} +func (m *ObjectGetReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetReq proto.InternalMessageInfo + +func (m *ObjectGetReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectGetReq) GetAllBackrefs() bool { + if m != nil { + return m.AllBackrefs + } + return false +} + +func (m *ObjectGetReq) GetBackrefTypes() []string { + if m != nil { + return m.BackrefTypes + } + return nil +} + +func (m *ObjectGetReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +type ObjectGetRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.filter_set.crudapi.ErrorCode" json:"err,omitempty"` + EntBackrefs []*types.Any `protobuf:"bytes,10001,rep,name=ent_backrefs,json=entBackrefs,proto3" json:"ent_backrefs,omitempty"` + ResourceVersion string `protobuf:"bytes,10002,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *filter_set.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Status []*filter_set.StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` +} + +func (m *ObjectGetRsp) Reset() { *m = ObjectGetRsp{} } +func (*ObjectGetRsp) ProtoMessage() {} +func (*ObjectGetRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{5} +} +func (m *ObjectGetRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetRsp.Merge(m, src) +} +func (m *ObjectGetRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetRsp proto.InternalMessageInfo + +func (m *ObjectGetRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectGetRsp) GetEntBackrefs() []*types.Any { + if m != nil { + return m.EntBackrefs + } + return nil +} + +func (m *ObjectGetRsp) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectGetRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectGetRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectGetRsp) GetSpec() *filter_set.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectGetRsp) GetStatus() []*filter_set.StatusObject { + if m != nil { + return m.Status + } + return nil +} + +type ObjectListReq struct { + // Filters executed on server-side - all types of filters ANDed + // Tenants to scope the listing of objects - if empty all tenants considered + TenantFilter []string `protobuf:"bytes,10000,rep,name=tenant_filter,json=tenantFilter,proto3" json:"tenant_filter,omitempty"` + // Namespaces to scope the listing of objects - if empty all namespaces considered + NamespaceFilter []string `protobuf:"bytes,10001,rep,name=namespace_filter,json=namespaceFilter,proto3" json:"namespace_filter,omitempty"` + // k8s style label selector expression + LabelFilter string `protobuf:"bytes,10002,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // TODO: currently even if one specified implementation will return all fields + ReportFields []string `protobuf:"bytes,10003,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // Get the resource_version associated with the list + ResourceVersion bool `protobuf:"varint,10004,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10005,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` + // The value for PageStart indicating from very first entry. This will be ignored unless page_limit + // is also defined + PageStart string `protobuf:"bytes,10006,opt,name=page_start,json=pageStart,proto3" json:"page_start,omitempty"` + // The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset, + // the first page will be returned. + PageLimit int32 `protobuf:"varint,10007,opt,name=page_limit,json=pageLimit,proto3" json:"page_limit,omitempty"` +} + +func (m *ObjectListReq) Reset() { *m = ObjectListReq{} } +func (*ObjectListReq) ProtoMessage() {} +func (*ObjectListReq) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{6} +} +func (m *ObjectListReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListReq.Merge(m, src) +} +func (m *ObjectListReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectListReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListReq proto.InternalMessageInfo + +func (m *ObjectListReq) GetTenantFilter() []string { + if m != nil { + return m.TenantFilter + } + return nil +} + +func (m *ObjectListReq) GetNamespaceFilter() []string { + if m != nil { + return m.NamespaceFilter + } + return nil +} + +func (m *ObjectListReq) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ObjectListReq) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ObjectListReq) GetResourceVersion() bool { + if m != nil { + return m.ResourceVersion + } + return false +} + +func (m *ObjectListReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +func (m *ObjectListReq) GetPageStart() string { + if m != nil { + return m.PageStart + } + return "" +} + +func (m *ObjectListReq) GetPageLimit() int32 { + if m != nil { + return m.PageLimit + } + return 0 +} + +type ObjectListRspItem struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + // If ObjectListReq has any specified report_fields, it will appear in below fields + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *filter_set.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Status []*filter_set.StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` + Tenant string `protobuf:"bytes,10001,opt,name=tenant,proto3" json:"tenant,omitempty"` + Namespace string `protobuf:"bytes,10002,opt,name=namespace,proto3" json:"namespace,omitempty"` + Name string `protobuf:"bytes,10003,opt,name=name,proto3" json:"name,omitempty"` + Labels map[string]string `protobuf:"bytes,10004,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ObjectListRspItem) Reset() { *m = ObjectListRspItem{} } +func (*ObjectListRspItem) ProtoMessage() {} +func (*ObjectListRspItem) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{7} +} +func (m *ObjectListRspItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRspItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRspItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRspItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRspItem.Merge(m, src) +} +func (m *ObjectListRspItem) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRspItem) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRspItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRspItem proto.InternalMessageInfo + +func (m *ObjectListRspItem) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectListRspItem) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRspItem) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectListRspItem) GetSpec() *filter_set.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectListRspItem) GetStatus() []*filter_set.StatusObject { + if m != nil { + return m.Status + } + return nil +} + +func (m *ObjectListRspItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ObjectListRspItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ObjectListRspItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ObjectListRspItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +type ObjectListRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.filter_set.crudapi.ErrorCode" json:"err,omitempty"` + Uids []string `protobuf:"bytes,10001,rep,name=uids,proto3" json:"uids,omitempty"` + Items []*ObjectListRspItem `protobuf:"bytes,10002,rep,name=items,proto3" json:"items,omitempty"` + Metadata *schema.ListMetaType `protobuf:"bytes,10003,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Will only be set if request included a page_limit and there are more pages beyond the current page + NextPage string `protobuf:"bytes,10004,opt,name=next_page,json=nextPage,proto3" json:"next_page,omitempty"` +} + +func (m *ObjectListRsp) Reset() { *m = ObjectListRsp{} } +func (*ObjectListRsp) ProtoMessage() {} +func (*ObjectListRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{8} +} +func (m *ObjectListRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRsp.Merge(m, src) +} +func (m *ObjectListRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRsp proto.InternalMessageInfo + +func (m *ObjectListRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectListRsp) GetUids() []string { + if m != nil { + return m.Uids + } + return nil +} + +func (m *ObjectListRsp) GetItems() []*ObjectListRspItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ObjectListRsp) GetMetadata() *schema.ListMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRsp) GetNextPage() string { + if m != nil { + return m.NextPage + } + return "" +} + +type ObjectDeleteReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` +} + +func (m *ObjectDeleteReq) Reset() { *m = ObjectDeleteReq{} } +func (*ObjectDeleteReq) ProtoMessage() {} +func (*ObjectDeleteReq) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{9} +} +func (m *ObjectDeleteReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteReq.Merge(m, src) +} +func (m *ObjectDeleteReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteReq proto.InternalMessageInfo + +func (m *ObjectDeleteReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +type ObjectDeleteRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.filter_set.crudapi.ErrorCode" json:"err,omitempty"` +} + +func (m *ObjectDeleteRsp) Reset() { *m = ObjectDeleteRsp{} } +func (*ObjectDeleteRsp) ProtoMessage() {} +func (*ObjectDeleteRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_be90355462e74542, []int{10} +} +func (m *ObjectDeleteRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteRsp.Merge(m, src) +} +func (m *ObjectDeleteRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteRsp proto.InternalMessageInfo + +func (m *ObjectDeleteRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func init() { + proto.RegisterEnum("ves.io.schema.filter_set.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + golang_proto.RegisterEnum("ves.io.schema.filter_set.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectCreateReq") + golang_proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectCreateReq") + proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectCreateRsp") + golang_proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectCreateRsp") + proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectReplaceReq") + golang_proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectReplaceReq") + proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectReplaceRsp") + golang_proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectReplaceRsp") + proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectGetReq") + golang_proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectGetReq") + proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectGetRsp") + golang_proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectGetRsp") + proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectListReq") + golang_proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectListReq") + proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.filter_set.crudapi.ObjectListRspItem") + golang_proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.filter_set.crudapi.ObjectListRspItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.filter_set.crudapi.ObjectListRspItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.filter_set.crudapi.ObjectListRspItem.LabelsEntry") + proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectListRsp") + golang_proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectListRsp") + proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectDeleteReq") + golang_proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.filter_set.crudapi.ObjectDeleteReq") + proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectDeleteRsp") + golang_proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.filter_set.crudapi.ObjectDeleteRsp") +} + +func init() { + proto.RegisterFile("ves.io/schema/filter_set/crudapi/api.proto", fileDescriptor_be90355462e74542) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/filter_set/crudapi/api.proto", fileDescriptor_be90355462e74542) +} + +var fileDescriptor_be90355462e74542 = []byte{ + // 1383 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcd, 0x6f, 0x13, 0x47, + 0x1b, 0xf7, 0xd8, 0x21, 0x89, 0xc7, 0x09, 0x31, 0x03, 0xd2, 0xeb, 0xd7, 0xc0, 0xbe, 0x79, 0xf7, + 0x0d, 0xaf, 0x22, 0x57, 0xd9, 0x05, 0x73, 0x28, 0x45, 0x6a, 0x28, 0x1f, 0x0e, 0x4a, 0x01, 0x87, + 0x6e, 0x80, 0x46, 0xb9, 0xb8, 0x6b, 0xfb, 0x89, 0xd9, 0xb2, 0xde, 0x5d, 0x66, 0xc6, 0x06, 0xb7, + 0x8a, 0x84, 0x7a, 0xaa, 0xda, 0x4b, 0x80, 0x7e, 0x48, 0xa8, 0x07, 0xd4, 0x53, 0xfb, 0x1f, 0x54, + 0xca, 0x85, 0x63, 0x54, 0xf5, 0x80, 0x5a, 0x55, 0xe2, 0xd8, 0x38, 0x95, 0x5a, 0xa9, 0x3d, 0xf0, + 0x27, 0x54, 0x3b, 0xb3, 0x76, 0x6c, 0x07, 0xd7, 0x76, 0x49, 0x51, 0x0f, 0x5c, 0xac, 0x99, 0xe7, + 0x6b, 0x9e, 0x8f, 0xdf, 0xf3, 0xcc, 0xac, 0x71, 0xaa, 0x0a, 0x4c, 0xb3, 0x5c, 0x9d, 0x15, 0xae, + 0x43, 0xd9, 0xd4, 0x57, 0x2c, 0x9b, 0x03, 0xcd, 0x31, 0xe0, 0x7a, 0x81, 0x56, 0x8a, 0xa6, 0x67, + 0xe9, 0xa6, 0x67, 0x69, 0x1e, 0x75, 0xb9, 0x4b, 0x26, 0xa5, 0xac, 0x26, 0x65, 0xb5, 0x6d, 0x59, + 0x2d, 0x90, 0x4d, 0xce, 0x94, 0x2c, 0x7e, 0xbd, 0x92, 0xd7, 0x0a, 0x6e, 0x59, 0x2f, 0xb9, 0x25, + 0x57, 0x17, 0x8a, 0xf9, 0xca, 0x8a, 0xd8, 0x89, 0x8d, 0x58, 0x49, 0x83, 0xc9, 0x43, 0x25, 0xd7, + 0x2d, 0xd9, 0xa0, 0x8b, 0x63, 0x1c, 0xc7, 0xe5, 0x26, 0xb7, 0x5c, 0x87, 0x05, 0xdc, 0x7f, 0x07, + 0xdc, 0xa6, 0x0d, 0xd3, 0xa9, 0x05, 0xac, 0x23, 0x5d, 0xbd, 0x76, 0xf3, 0xef, 0x42, 0x81, 0x07, + 0x62, 0x53, 0x5d, 0xc5, 0x78, 0xcd, 0x83, 0xc6, 0x39, 0x07, 0xdb, 0xa5, 0x5c, 0xaf, 0xcd, 0x89, + 0x76, 0x66, 0xab, 0x9e, 0xda, 0xce, 0xaa, 0x02, 0x03, 0xa7, 0xda, 0xae, 0xae, 0x3e, 0x0c, 0xe3, + 0x89, 0x05, 0xe1, 0xd2, 0x59, 0x0a, 0x26, 0x07, 0x03, 0x6e, 0x92, 0x39, 0x3c, 0x5a, 0x06, 0x6e, + 0x16, 0x4d, 0x6e, 0x26, 0xd0, 0x24, 0x9a, 0x8e, 0xa5, 0x0f, 0x6b, 0xed, 0x99, 0x95, 0x1a, 0x97, + 0x80, 0x9b, 0x57, 0x6a, 0x1e, 0x9c, 0x89, 0x3d, 0x58, 0x6d, 0x6a, 0x18, 0xcd, 0x15, 0x79, 0x07, + 0x4f, 0xb0, 0x1a, 0xe3, 0x50, 0xce, 0x35, 0xcd, 0x85, 0x85, 0xb9, 0xff, 0x75, 0x98, 0x5b, 0x14, + 0x52, 0x1d, 0x46, 0xc9, 0x83, 0xd5, 0x4e, 0x75, 0x63, 0xaf, 0x24, 0x5c, 0x6a, 0x9c, 0x70, 0x0a, + 0x0f, 0x31, 0x0f, 0x0a, 0x89, 0x88, 0x30, 0xab, 0x6a, 0x5d, 0xeb, 0xbf, 0xe8, 0x41, 0x41, 0x58, + 0x1d, 0x79, 0xb0, 0x2a, 0x54, 0x0c, 0xf1, 0x7b, 0x52, 0xfd, 0x76, 0xf6, 0x3f, 0x5d, 0x95, 0xa4, + 0x43, 0xea, 0x9d, 0x48, 0x47, 0x8a, 0x98, 0x47, 0x66, 0x71, 0x04, 0x28, 0x4d, 0xac, 0x65, 0x27, + 0xd1, 0xf4, 0xde, 0xf4, 0x2b, 0x5a, 0x2f, 0xe0, 0x69, 0x19, 0x4a, 0x5d, 0x7a, 0xd6, 0x2d, 0x82, + 0xe1, 0x2b, 0x12, 0x05, 0x63, 0x09, 0x84, 0x5c, 0xc5, 0x2a, 0x26, 0xee, 0xfa, 0x66, 0xa2, 0x46, + 0x54, 0x92, 0xae, 0x5a, 0xc5, 0x97, 0x25, 0x68, 0x2f, 0xc1, 0xc7, 0x61, 0x1c, 0x97, 0x4b, 0x03, + 0x3c, 0xdb, 0x2c, 0x08, 0x98, 0xb6, 0xe7, 0x70, 0x6d, 0x47, 0x0e, 0x53, 0x38, 0x4e, 0x81, 0xb9, + 0x15, 0x5a, 0x80, 0x5c, 0x15, 0x28, 0xb3, 0x5c, 0xa7, 0x91, 0xe9, 0x89, 0x06, 0xe3, 0x9a, 0xa4, + 0xef, 0x5a, 0xbe, 0x5f, 0x48, 0x36, 0x36, 0x77, 0x64, 0x63, 0x17, 0x10, 0xf9, 0x12, 0x71, 0x6d, + 0x39, 0xfe, 0x1a, 0xe1, 0x31, 0xb9, 0x3c, 0x0f, 0xbc, 0x1f, 0xb4, 0xa9, 0x78, 0xcc, 0xb4, 0xed, + 0x5c, 0xde, 0x2c, 0xdc, 0xa0, 0xb0, 0xc2, 0x24, 0xd2, 0x46, 0x8d, 0x98, 0x69, 0xdb, 0x67, 0x02, + 0x1a, 0x99, 0xc2, 0xe3, 0x01, 0x3f, 0x27, 0xe6, 0x74, 0xe2, 0x5e, 0x76, 0x32, 0x32, 0x1d, 0x35, + 0xc6, 0x02, 0xaa, 0xef, 0x2c, 0x23, 0x3a, 0xde, 0x6f, 0x39, 0x05, 0xbb, 0x52, 0x84, 0x1c, 0x85, + 0x15, 0xa0, 0x14, 0x8a, 0x39, 0xab, 0x98, 0xb8, 0x2f, 0x0d, 0xee, 0x0b, 0x78, 0x46, 0xc0, 0x9a, + 0x2f, 0xaa, 0x1f, 0x0d, 0xb5, 0xfa, 0xba, 0x0b, 0x58, 0x38, 0x81, 0xc7, 0xc0, 0xe1, 0x6d, 0xb1, + 0x44, 0xa6, 0x63, 0xe9, 0x03, 0x9a, 0xbc, 0xf0, 0xb4, 0xc6, 0x85, 0xa7, 0x9d, 0x76, 0x6a, 0x46, + 0x0c, 0x1c, 0xde, 0x8c, 0xf0, 0x59, 0x3d, 0x77, 0xef, 0x6f, 0xee, 0xb9, 0x7f, 0x3e, 0xe2, 0x48, + 0x06, 0x0f, 0x33, 0x6e, 0xf2, 0x0a, 0x4b, 0x3c, 0xfc, 0x02, 0x89, 0x5c, 0xfe, 0xff, 0x4f, 0x8c, + 0x08, 0x49, 0xe9, 0xe6, 0x99, 0xc8, 0xa3, 0x55, 0x64, 0x04, 0xca, 0x7d, 0x01, 0x77, 0x23, 0x8c, + 0xc7, 0xe5, 0xf2, 0xa2, 0xc5, 0x04, 0x72, 0xa7, 0xf0, 0x38, 0x07, 0xc7, 0x74, 0x78, 0x4e, 0x4a, + 0xfb, 0xb8, 0x10, 0xa8, 0x93, 0xd4, 0x39, 0x41, 0xf4, 0x2b, 0xe7, 0x98, 0x65, 0x60, 0x9e, 0x59, + 0x80, 0x86, 0xe0, 0x5d, 0x29, 0x38, 0xd1, 0x64, 0x04, 0xb2, 0x2a, 0x1e, 0xb3, 0xcd, 0x3c, 0xd8, + 0x0d, 0xb9, 0xa0, 0xc2, 0x31, 0x41, 0x0c, 0x64, 0xa6, 0xf0, 0x38, 0x05, 0xcf, 0xa5, 0xfe, 0xa9, + 0x60, 0x17, 0x99, 0x8f, 0x5f, 0x71, 0xaa, 0xa4, 0xce, 0x09, 0xe2, 0x33, 0xf1, 0xf2, 0x89, 0x04, + 0xfa, 0x0e, 0xbc, 0x74, 0xe9, 0x8b, 0x4f, 0xbb, 0xf5, 0x85, 0xdf, 0xb2, 0x9e, 0x59, 0x82, 0x1c, + 0xe3, 0x26, 0xe5, 0x89, 0xcf, 0x82, 0x96, 0xf5, 0x49, 0x8b, 0x3e, 0xa5, 0xc9, 0xb7, 0xad, 0xb2, + 0xc5, 0x13, 0x9f, 0xfb, 0xfc, 0x3d, 0x92, 0x7f, 0xd1, 0xa7, 0xa8, 0xbf, 0x0d, 0xe1, 0x7d, 0x2d, + 0xa9, 0x64, 0xde, 0x3c, 0x87, 0x72, 0xcf, 0x41, 0xf0, 0x12, 0xd6, 0x03, 0xc2, 0x9a, 0xfc, 0x0b, + 0x0f, 0x4b, 0x28, 0x36, 0xae, 0xe7, 0x60, 0x4b, 0x0e, 0xe3, 0x68, 0x13, 0x7a, 0x0d, 0x90, 0x6d, + 0x53, 0xc8, 0x7e, 0x3c, 0xe4, 0x6f, 0xe4, 0x64, 0x8c, 0x1a, 0x62, 0x43, 0x96, 0xf0, 0xb0, 0x80, + 0x21, 0xf3, 0x71, 0xe4, 0xbb, 0x74, 0xaa, 0xf7, 0xf8, 0xdb, 0x51, 0x64, 0xed, 0xa2, 0x30, 0x91, + 0x71, 0x38, 0xad, 0x19, 0x81, 0xbd, 0xe4, 0x6b, 0x38, 0xd6, 0x42, 0x26, 0x71, 0x1c, 0xb9, 0x01, + 0x35, 0x51, 0xe2, 0xa8, 0xe1, 0x2f, 0xc9, 0x01, 0xbc, 0xa7, 0x6a, 0xda, 0x15, 0x10, 0x75, 0x8a, + 0x1a, 0x72, 0x73, 0x32, 0x7c, 0x02, 0xf5, 0xd5, 0xb8, 0x1f, 0xb6, 0x37, 0xee, 0x2e, 0x8c, 0xf1, + 0xfd, 0x78, 0xa8, 0x62, 0x15, 0x59, 0xa3, 0x8d, 0xc5, 0x86, 0xbc, 0x89, 0xf7, 0x58, 0x1c, 0xca, + 0xc1, 0xdd, 0x13, 0x4b, 0x1f, 0xff, 0x0b, 0xe9, 0x31, 0xa4, 0x09, 0x72, 0xa2, 0x05, 0xea, 0xa2, + 0x08, 0xb1, 0xf4, 0xc1, 0x0e, 0x73, 0xbe, 0x56, 0x03, 0x94, 0x2d, 0xe0, 0x3e, 0x84, 0xa3, 0x0e, + 0xdc, 0xe6, 0x39, 0xbf, 0xd9, 0x64, 0xc3, 0x47, 0x8d, 0x51, 0x9f, 0x72, 0xd9, 0x2c, 0x81, 0x7a, + 0xac, 0xf1, 0xe0, 0x3e, 0x07, 0x36, 0xf0, 0x7e, 0x1e, 0x7b, 0xea, 0x5b, 0x1d, 0x2a, 0xcf, 0x9f, + 0xbe, 0xd4, 0x2c, 0x8e, 0x36, 0x29, 0x64, 0x04, 0x47, 0x32, 0x0b, 0x17, 0xe2, 0x21, 0x32, 0x8e, + 0xa3, 0x99, 0xec, 0xc2, 0x95, 0xb9, 0x85, 0xab, 0xd9, 0x73, 0x71, 0x44, 0x62, 0x78, 0x24, 0x93, + 0x59, 0x9a, 0x5f, 0xbc, 0xb2, 0x18, 0x0f, 0x93, 0x31, 0x3c, 0x9a, 0xb9, 0x9a, 0xbd, 0x90, 0x5d, + 0x78, 0x3b, 0x1b, 0x8f, 0xa4, 0x7f, 0xc7, 0x38, 0x72, 0xfa, 0xf2, 0x3c, 0xf9, 0x11, 0xe1, 0x61, + 0xf9, 0xe5, 0x40, 0x8e, 0xf5, 0x9b, 0xec, 0xe6, 0xc7, 0x58, 0x72, 0x50, 0x15, 0xe6, 0xa9, 0xf0, + 0xc1, 0x0f, 0x3f, 0xdf, 0x0f, 0xe7, 0xd4, 0xff, 0xea, 0xdd, 0x54, 0x75, 0xa9, 0xc2, 0x4e, 0xa2, + 0xd4, 0xf2, 0xab, 0x6a, 0xba, 0xbb, 0x9c, 0xe5, 0x70, 0xea, 0xfa, 0xbd, 0xce, 0xf5, 0x5b, 0xd4, + 0xe2, 0xd0, 0xa2, 0x48, 0x9e, 0x22, 0x3c, 0x12, 0x3c, 0x40, 0x49, 0xba, 0x5f, 0x2f, 0xb7, 0xdf, + 0xef, 0xc9, 0x81, 0x75, 0x98, 0xa7, 0xae, 0x8a, 0xd0, 0x6e, 0x25, 0x67, 0x7a, 0x85, 0xa6, 0xbf, + 0xbf, 0x0d, 0x97, 0x55, 0x3f, 0xcc, 0xb3, 0xc9, 0xd9, 0x81, 0xc3, 0xec, 0x34, 0x42, 0x36, 0x11, + 0x8e, 0x9c, 0x07, 0x4e, 0xb4, 0x7e, 0x5d, 0x97, 0x8f, 0xc7, 0xe4, 0x40, 0xf2, 0xcc, 0x53, 0xdf, + 0xdb, 0xf8, 0x26, 0x8c, 0x44, 0xa8, 0x1e, 0x19, 0x2c, 0xd4, 0xe5, 0x53, 0xe4, 0xf5, 0xbe, 0xe2, + 0xa4, 0x60, 0x16, 0x9f, 0x65, 0x80, 0x7c, 0x87, 0xf0, 0x90, 0xdf, 0xb5, 0x44, 0x1f, 0x68, 0x32, + 0xc0, 0xcd, 0xa4, 0x3e, 0xe0, 0x28, 0x51, 0xf3, 0xcd, 0x30, 0x97, 0x48, 0x6f, 0xb0, 0x2e, 0x1f, + 0x27, 0xc7, 0x06, 0x0d, 0x8d, 0x91, 0x2f, 0x11, 0xc6, 0xfe, 0x79, 0x8b, 0x9c, 0x82, 0x59, 0x7e, + 0x01, 0x41, 0x1d, 0x15, 0x01, 0xa5, 0xc8, 0x74, 0xcf, 0x80, 0x74, 0x26, 0x7c, 0x3a, 0x8a, 0xc8, + 0x2f, 0x08, 0x0f, 0xcb, 0xc1, 0xd5, 0xff, 0x88, 0x68, 0xce, 0xc6, 0xe4, 0xa0, 0x2a, 0xcc, 0x53, + 0x6f, 0x09, 0x27, 0x6f, 0xa6, 0x06, 0x04, 0xd7, 0x1b, 0xa9, 0xe7, 0x6c, 0xa2, 0xe4, 0xd2, 0xa3, + 0x75, 0x84, 0x36, 0xd6, 0x11, 0xfa, 0x7e, 0x1d, 0xf5, 0xba, 0x12, 0x9f, 0xac, 0x23, 0x54, 0x5f, + 0x47, 0x47, 0xfa, 0x7b, 0x52, 0xac, 0xa1, 0xc7, 0x9b, 0x4a, 0xe8, 0xc9, 0xa6, 0x12, 0x7a, 0xba, + 0xa9, 0xa0, 0x3b, 0x75, 0x05, 0x7d, 0x55, 0x57, 0xd0, 0x46, 0x5d, 0x41, 0x8f, 0xeb, 0x0a, 0xfa, + 0xa9, 0xae, 0xa0, 0x5f, 0xeb, 0x4a, 0xe8, 0x69, 0x5d, 0x41, 0x6b, 0x5b, 0x4a, 0xe8, 0xd1, 0x96, + 0x82, 0x1e, 0x6f, 0x29, 0xa1, 0x27, 0x5b, 0x4a, 0x68, 0xf9, 0x5a, 0xc9, 0xf5, 0x6e, 0x94, 0xb4, + 0xaa, 0xeb, 0x5b, 0xa6, 0xa6, 0x56, 0x61, 0xba, 0x58, 0xac, 0xb8, 0xb4, 0x3c, 0xe3, 0x51, 0xb7, + 0x6a, 0x15, 0x81, 0xce, 0x34, 0xd8, 0xba, 0x97, 0x2f, 0xb9, 0x3a, 0xdc, 0xe6, 0xc1, 0xff, 0x6a, + 0x5d, 0xff, 0x99, 0xcc, 0x0f, 0x8b, 0x0f, 0xa5, 0xe3, 0x7f, 0x04, 0x00, 0x00, 0xff, 0xff, 0x9a, + 0xa2, 0xea, 0x34, 0xc4, 0x14, 0x00, 0x00, +} + +func (x ErrorCode) String() string { + s, ok := ErrorCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ObjectCreateReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateReq) + if !ok { + that2, ok := that.(ObjectCreateReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectCreateRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateRsp) + if !ok { + that2, ok := that.(ObjectCreateRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceReq) + if !ok { + that2, ok := that.(ObjectReplaceReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceRsp) + if !ok { + that2, ok := that.(ObjectReplaceRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectGetReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetReq) + if !ok { + that2, ok := that.(ObjectGetReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.AllBackrefs != that1.AllBackrefs { + return false + } + if len(this.BackrefTypes) != len(that1.BackrefTypes) { + return false + } + for i := range this.BackrefTypes { + if this.BackrefTypes[i] != that1.BackrefTypes[i] { + return false + } + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + return true +} +func (this *ObjectGetRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetRsp) + if !ok { + that2, ok := that.(ObjectGetRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.EntBackrefs) != len(that1.EntBackrefs) { + return false + } + for i := range this.EntBackrefs { + if !this.EntBackrefs[i].Equal(that1.EntBackrefs[i]) { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + return true +} +func (this *ObjectListReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListReq) + if !ok { + that2, ok := that.(ObjectListReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.TenantFilter) != len(that1.TenantFilter) { + return false + } + for i := range this.TenantFilter { + if this.TenantFilter[i] != that1.TenantFilter[i] { + return false + } + } + if len(this.NamespaceFilter) != len(that1.NamespaceFilter) { + return false + } + for i := range this.NamespaceFilter { + if this.NamespaceFilter[i] != that1.NamespaceFilter[i] { + return false + } + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + if this.PageStart != that1.PageStart { + return false + } + if this.PageLimit != that1.PageLimit { + return false + } + return true +} +func (this *ObjectListRspItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRspItem) + if !ok { + that2, ok := that.(ObjectListRspItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + return true +} +func (this *ObjectListRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRsp) + if !ok { + that2, ok := that.(ObjectListRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.Uids) != len(that1.Uids) { + return false + } + for i := range this.Uids { + if this.Uids[i] != that1.Uids[i] { + return false + } + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if this.NextPage != that1.NextPage { + return false + } + return true +} +func (this *ObjectDeleteReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteReq) + if !ok { + that2, ok := that.(ObjectDeleteReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + return true +} +func (this *ObjectDeleteRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteRsp) + if !ok { + that2, ok := that.(ObjectDeleteRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + return true +} +func (this *ObjectCreateReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&crudapi.ObjectCreateReq{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectCreateRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectCreateRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectGetReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "AllBackrefs: "+fmt.Sprintf("%#v", this.AllBackrefs)+",\n") + s = append(s, "BackrefTypes: "+fmt.Sprintf("%#v", this.BackrefTypes)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&crudapi.ObjectGetRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.EntBackrefs != nil { + s = append(s, "EntBackrefs: "+fmt.Sprintf("%#v", this.EntBackrefs)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListReq{") + s = append(s, "TenantFilter: "+fmt.Sprintf("%#v", this.TenantFilter)+",\n") + s = append(s, "NamespaceFilter: "+fmt.Sprintf("%#v", this.NamespaceFilter)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "PageStart: "+fmt.Sprintf("%#v", this.PageStart)+",\n") + s = append(s, "PageLimit: "+fmt.Sprintf("%#v", this.PageLimit)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRspItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 13) + s = append(s, "&crudapi.ObjectListRspItem{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectListRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "Uids: "+fmt.Sprintf("%#v", this.Uids)+",\n") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + s = append(s, "NextPage: "+fmt.Sprintf("%#v", this.NextPage)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringApi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) + Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) + Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) + List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) + ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) + Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + out := new(ObjectCreateRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.crudapi.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + out := new(ObjectReplaceRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.crudapi.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + out := new(ObjectGetRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.crudapi.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + out := new(ObjectListRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.crudapi.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + stream, err := c.cc.NewStream(ctx, &_API_serviceDesc.Streams[0], "/ves.io.schema.filter_set.crudapi.API/ListStream", opts...) + if err != nil { + return nil, err + } + x := &aPIListStreamClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type API_ListStreamClient interface { + Recv() (*ObjectListRsp, error) + grpc.ClientStream +} + +type aPIListStreamClient struct { + grpc.ClientStream +} + +func (x *aPIListStreamClient) Recv() (*ObjectListRsp, error) { + m := new(ObjectListRsp) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + out := new(ObjectDeleteRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.crudapi.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + Create(context.Context, *ObjectCreateReq) (*ObjectCreateRsp, error) + Replace(context.Context, *ObjectReplaceReq) (*ObjectReplaceRsp, error) + Get(context.Context, *ObjectGetReq) (*ObjectGetRsp, error) + List(context.Context, *ObjectListReq) (*ObjectListRsp, error) + ListStream(*ObjectListReq, API_ListStreamServer) error + Delete(context.Context, *ObjectDeleteReq) (*ObjectDeleteRsp, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) ListStream(req *ObjectListReq, srv API_ListStreamServer) error { + return status.Errorf(codes.Unimplemented, "method ListStream not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectCreateReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.crudapi.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*ObjectCreateReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectReplaceReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.crudapi.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ObjectReplaceReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectGetReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.crudapi.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*ObjectGetReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.crudapi.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ObjectListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ObjectListReq) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(APIServer).ListStream(m, &aPIListStreamServer{stream}) +} + +type API_ListStreamServer interface { + Send(*ObjectListRsp) error + grpc.ServerStream +} + +type aPIListStreamServer struct { + grpc.ServerStream +} + +func (x *aPIListStreamServer) Send(m *ObjectListRsp) error { + return x.ServerStream.SendMsg(m) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectDeleteReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.crudapi.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*ObjectDeleteReq)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.filter_set.crudapi.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "ListStream", + Handler: _API_ListStream_Handler, + ServerStreams: true, + }, + }, + Metadata: "ves.io/schema/filter_set/crudapi/api.proto", +} + +func (m *ObjectCreateReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectCreateRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x98 + } + if len(m.BackrefTypes) > 0 { + for iNdEx := len(m.BackrefTypes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.BackrefTypes[iNdEx]) + copy(dAtA[i:], m.BackrefTypes[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.BackrefTypes[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if m.AllBackrefs { + i-- + if m.AllBackrefs { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x88 + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.EntBackrefs) > 0 { + for iNdEx := len(m.EntBackrefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EntBackrefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PageLimit != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.PageLimit)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb8 + } + if len(m.PageStart) > 0 { + i -= len(m.PageStart) + copy(dAtA[i:], m.PageStart) + i = encodeVarintApi(dAtA, i, uint64(len(m.PageStart))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb2 + } + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa8 + } + if m.ResourceVersion { + i-- + if m.ResourceVersion { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa0 + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintApi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.NamespaceFilter) > 0 { + for iNdEx := len(m.NamespaceFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.NamespaceFilter[iNdEx]) + copy(dAtA[i:], m.NamespaceFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.NamespaceFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if len(m.TenantFilter) > 0 { + for iNdEx := len(m.TenantFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.TenantFilter[iNdEx]) + copy(dAtA[i:], m.TenantFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.TenantFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRspItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRspItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRspItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintApi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintApi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.NextPage) > 0 { + i -= len(m.NextPage) + copy(dAtA[i:], m.NextPage) + i = encodeVarintApi(dAtA, i, uint64(len(m.NextPage))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if len(m.Uids) > 0 { + for iNdEx := len(m.Uids) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Uids[iNdEx]) + copy(dAtA[i:], m.Uids[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.Uids[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func encodeVarintApi(dAtA []byte, offset int, v uint64) int { + offset -= sovApi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ObjectCreateReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectCreateRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func (m *ObjectGetReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.AllBackrefs { + n += 4 + } + if len(m.BackrefTypes) > 0 { + for _, s := range m.BackrefTypes { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.IncludeReferredId { + n += 4 + } + return n +} + +func (m *ObjectGetRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.EntBackrefs) > 0 { + for _, e := range m.EntBackrefs { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ObjectListReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.TenantFilter) > 0 { + for _, s := range m.TenantFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.NamespaceFilter) > 0 { + for _, s := range m.NamespaceFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.LabelFilter) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.ResourceVersion { + n += 4 + } + if m.IncludeReferredId { + n += 4 + } + l = len(m.PageStart) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.PageLimit != 0 { + n += 3 + sovApi(uint64(m.PageLimit)) + } + return n +} + +func (m *ObjectListRspItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Tenant) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Namespace) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 3 + sovApi(uint64(mapEntrySize)) + } + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ObjectListRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.Uids) > 0 { + for _, s := range m.Uids { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.NextPage) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func sovApi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozApi(x uint64) (n int) { + return sovApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ObjectCreateReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "filter_set.SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectCreateRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "filter_set.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "filter_set.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "filter_set.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectGetReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `AllBackrefs:` + fmt.Sprintf("%v", this.AllBackrefs) + `,`, + `BackrefTypes:` + fmt.Sprintf("%v", this.BackrefTypes) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForEntBackrefs := "[]*Any{" + for _, f := range this.EntBackrefs { + repeatedStringForEntBackrefs += strings.Replace(fmt.Sprintf("%v", f), "Any", "types.Any", 1) + "," + } + repeatedStringForEntBackrefs += "}" + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "filter_set.StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + s := strings.Join([]string{`&ObjectGetRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "filter_set.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `EntBackrefs:` + repeatedStringForEntBackrefs + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectListReq{`, + `TenantFilter:` + fmt.Sprintf("%v", this.TenantFilter) + `,`, + `NamespaceFilter:` + fmt.Sprintf("%v", this.NamespaceFilter) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `PageStart:` + fmt.Sprintf("%v", this.PageStart) + `,`, + `PageLimit:` + fmt.Sprintf("%v", this.PageLimit) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRspItem) String() string { + if this == nil { + return "nil" + } + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "filter_set.StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&ObjectListRspItem{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "filter_set.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ObjectListRspItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ObjectListRspItem", "ObjectListRspItem", 1) + "," + } + repeatedStringForItems += "}" + s := strings.Join([]string{`&ObjectListRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `Uids:` + fmt.Sprintf("%v", this.Uids) + `,`, + `Items:` + repeatedStringForItems + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ListMetaType", "schema.ListMetaType", 1) + `,`, + `NextPage:` + fmt.Sprintf("%v", this.NextPage) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func valueToStringApi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ObjectCreateReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &filter_set.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectCreateRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &filter_set.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &filter_set.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &filter_set.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllBackrefs", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AllBackrefs = bool(v != 0) + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackrefTypes", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackrefTypes = append(m.BackrefTypes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10003: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &filter_set.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntBackrefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntBackrefs = append(m.EntBackrefs, &types.Any{}) + if err := m.EntBackrefs[len(m.EntBackrefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &filter_set.StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TenantFilter = append(m.TenantFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NamespaceFilter = append(m.NamespaceFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10004: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResourceVersion = bool(v != 0) + case 10005: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + case 10006: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PageStart", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PageStart = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10007: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PageLimit", wireType) + } + m.PageLimit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PageLimit |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRspItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRspItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRspItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &filter_set.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &filter_set.StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uids", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uids = append(m.Uids, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ObjectListRspItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ListMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NextPage", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NextPage = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipApi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthApi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupApi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthApi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthApi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowApi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupApi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/filter_set/crudapi/api.pb.gw.go b/pbgo/extschema/schema/filter_set/crudapi/api.pb.gw.go new file mode 100644 index 000000000..ec1c5d992 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/crudapi/api.pb.gw.go @@ -0,0 +1,1101 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/filter_set/crudapi/api.proto + +/* +Package crudapi is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package crudapi + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_1 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_1 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_ListStream_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_ListStream_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (API_ListStreamClient, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_ListStream_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.ListStream(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_ListStream_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_ListStream_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.filter_set", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Create_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.filter_set", "introspect", "write", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.filter_set", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.filter_set", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.filter_set", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.filter_set", "introspect", "read", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.filter_set", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.filter_set", "introspect", "read", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_ListStream_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"ves.io.schema.filter_set", "Objects", "stream"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.filter_set", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.filter_set", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Create_1 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Replace_1 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_Get_1 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_List_1 = runtime.ForwardResponseMessage + + forward_API_ListStream_0 = runtime.ForwardResponseStream + + forward_API_Delete_0 = runtime.ForwardResponseMessage + + forward_API_Delete_1 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/filter_set/crudapi/api.vesapi.go b/pbgo/extschema/schema/filter_set/crudapi/api.vesapi.go new file mode 100644 index 000000000..9a7d07931 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/crudapi/api.vesapi.go @@ -0,0 +1,3638 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// augment methods on ObjectReq from api.pb.go + +// EntryConverter +func (r *ObjectCreateReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectCreateReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectCreateReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// EntryConverter +func (r *ObjectReplaceReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectReplaceReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectReplaceReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// CLIENT side + +func NewObjectCreateReq(e db.Entry) (*ObjectCreateReq, error) { + r := &ObjectCreateReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewObjectReplaceReq(e db.Entry) (*ObjectReplaceReq, error) { + r := &ObjectReplaceReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + uid, err := e.Key() + if err != nil { + // See if uid can be got from Metadata.Uid + obj := e.(*object.DBObject) + uid = obj.GetMetadata().GetUid() + + } + r.ObjectUid = uid + return r, nil +} + +func NewObjectGetReq(uid string, opts ...server.CRUDCallOpt) *ObjectGetReq { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + req := &ObjectGetReq{ObjectUid: uid, AllBackrefs: ccOpts.AllBR, BackrefTypes: ccOpts.TypesBR} + req.IncludeReferredId = ccOpts.IncludeReferredID + return req +} + +func newObjectListReqFrom(cco *server.CrudCallOpts) (*ObjectListReq, error) { + r := &ObjectListReq{ + TenantFilter: cco.TenantFilter, + NamespaceFilter: cco.NamespaceFilter, + ReportFields: cco.ReportFields, + IncludeReferredId: cco.IncludeReferredID, + } + switch len(cco.LabelFilter) { + case 0: + case 1: + r.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + if cco.OutResourceVersion != nil { + r.ResourceVersion = true + } + if cco.PageStart != "" { + r.PageStart = cco.PageStart + } + if cco.PageLimit != 0 { + r.PageLimit = cco.PageLimit + } + return r, nil +} + +func NewObjectDeleteReq(uid string) *ObjectDeleteReq { + return &ObjectDeleteReq{ObjectUid: uid} +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Getting from grpcClient") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp == nil { + return nil, errors.ErrOrNil(merr) + } + respDetail := server.GetResponse{} + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + stream, err := c.grpcClient.ListStream(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Listing with grpc client") + } + lc := &crudAPIGrpcListStreamClient{stream} + return lc, nil + +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req := NewObjectDeleteReq(key) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +type crudAPIGrpcListStreamClient struct { + stream API_ListStreamClient +} + +func (lc *crudAPIGrpcListStreamClient) RecvIDs() ([]string, error) { + idSet := []string{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return idSet, err + } + for _, li := range rsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err +} + +func (lc *crudAPIGrpcListStreamClient) RecvItems() ([]server.ListItem, error) { + sliSet := []server.ListItem{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return sliSet, err + } + for _, li := range rsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return nil, fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return nil, fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.filter_set.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + hReq, err := http.NewRequest(http.MethodPost, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &ObjectCreateRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + o := object.NewDBObject(nil) + rspo.ToObject(o) + return o, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + rReq, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var objUID string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling ReplaceJSONReq") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["uid"].(string); ok { + objUID = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.uid'", jsn) + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.filter_set.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, objUID) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + + rspo := &ObjectReplaceRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.filter_set.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, req.ObjectUid) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &ObjectGetRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + o := object.NewDBObject(nil) + gRsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.filter_set.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + for _, fVal := range cco.TenantFilter { + q.Add("tenant_filter", fVal) + } + for _, fVal := range cco.NamespaceFilter { + q.Add("namespace_filter", fVal) + } + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + + if cco.IncludeReferredID { + q.Add("include_referred_id", "true") + } + + if cco.OutResourceVersion != nil { + q.Add("resource_version", "true") + } + if cco.PageStart != "" { + q.Add("page_start", cco.PageStart) + } + if cco.PageLimit != 0 { + q.Add("page_limit", fmt.Sprintf("%d", cco.PageLimit)) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ObjectListRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rspo.GetNextPage() + } + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq := NewObjectDeleteReq(key) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.filter_set.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, dReq.ObjectUid) + + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + rspo := &ObjectDeleteRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.filter_set.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.crudapi.API.Create") + return oah.Create(ctx, req) +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.filter_set.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.crudapi.API.Replace") + return oah.Replace(ctx, req) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.filter_set.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.crudapi.API.Get") + return oah.Get(ctx, req) +} + +func (c *APIInprocClient) List(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.filter_set.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.crudapi.API.List") + return oah.List(ctx, req) +} + +func (c *APIInprocClient) ListStream(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + return nil, fmt.Errorf("ListStream Not implemented") +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.filter_set.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.crudapi.API.Delete") + return oah.Delete(ctx, req) +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + rsp, err := c.cl.Create(ctx, req) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req := NewObjectGetReq(key, opts...) + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + rsp, err := c.cl.List(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewObjectDeleteReq(key) + rsp, err := c.cl.Delete(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.filter_set.crudapi.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.filter_set.crudapi.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.crudapi.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private create request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.filter_set.crudapi.API.Create"), zap.Error(err)) + } + } + } + obj := object.NewDBObject(nil) + req.ToObject(obj) + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Create")).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Create with NewObjectCreateRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + return nil, fmt.Errorf("Nil spec in Replace Request") + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.crudapi.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private replace request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.filter_set.crudapi.API.Replace"), zap.Error(err)) + } + } + } + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Replace")).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Replace with NewObjectReplaceRsp").Error()) + } + return rsp, nil + +} + +func (s *APISrv) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.crudapi.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private get request") + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceGetRequest{IsPublic: false, UID: key, AllBackRefs: req.AllBackrefs, BackRefTypes: req.BackrefTypes} + rsrcReq.OmitReferredID = !req.IncludeReferredId + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Get")).Err() + } + rsp, err := NewObjectGetRsp(req, rsrcRsp) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Get with NewObjectGetRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.crudapi.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private list request") + } + } + } + var merr error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: false, + GetResourceVersion: req.ResourceVersion, + OmitReferredID: !req.IncludeReferredId, + PageStart: req.PageStart, + PageLimit: req.PageLimit, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "List")) + } + rsp, err := NewObjectListRsp(req, rsrcRsp.Items) + if err != nil { + merr = multierror.Append(merr, err) + } + rsp.Metadata.ResourceVersion = rsrcRsp.ResourceVersion + rsp.NextPage = rsrcRsp.NextPage + return rsp, merr +} + +func (s *APISrv) ListStream(req *ObjectListReq, stream API_ListStreamServer) error { + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: true, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(stream.Context(), rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListStream")) + } + streamSvr := &crudAPIListStreamServer{stream} + for item := range rsrcRsp.ItemsCh { + if err := streamSvr.SendResource(req, item); err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "Stream-Send")) + continue + } + } + return errors.ErrOrNil(merr) +} + +func (s *APISrv) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.crudapi.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private delete request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.filter_set.crudapi.API.Delete"), zap.Error(err)) + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceDeleteRequest{Key: key} + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Delete")).Err() + } + return &ObjectDeleteRsp{}, nil +} + +// Assert that APISrv implements both the generated gRPC APIServer interface and the +// stdlib CRUDServer interface +var ( + _ APIServer = &APISrv{} +) + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.crudapi.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.crudapi.API", strings.Join(sl[:len(sl)-1], ".")) +} + +// implements both stdlib.server.ListStreamServer and API_ListStreamServer +type crudAPIListStreamServer struct { + stream API_ListStreamServer +} + +func (lc *crudAPIListStreamServer) Context() context.Context { + return lc.stream.Context() +} + +func (lc *crudAPIListStreamServer) SendResource(r *ObjectListReq, item *server.ResourceListResponseItem) error { + lRsp, err := NewObjectListRsp(r, []*server.ResourceListResponseItem{item}) + if err != nil { + return errors.Wrap(err, "SendResource with NewObjectListRsp") + } + if err := lc.Send(lRsp); err != nil { + return errors.Wrap(err, "ListStreamServer.SendResource()") + } + return nil +} + +func (lc *crudAPIListStreamServer) Send(o *ObjectListRsp) error { + if err := lc.stream.Send(o); err != nil { + return errors.Wrap(err, "ListStreamServer.Send()") + } + return nil +} + +// Implement GetReq interface +func (r *ObjectGetReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectGetReq) GetBackrefParam() (bool, []string) { + return r.AllBackrefs, r.BackrefTypes +} + +// Implement DeleteReq interface +func (r *ObjectDeleteReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectCreateRsp) Key() string { + return r.ObjectUid +} + +func (r *ObjectGetRsp) GetBackrefs(ef db.NewEntryFunc) ([]db.Entry, error) { + brEnts := []db.Entry{} + bRefs := r.GetEntBackrefs() + for _, br := range bRefs { + // convert schema.ves.io/ves.io.examplesvc.objectone.Object to ves.io.examplesvc.objectone.Object + sl := strings.Split(br.TypeUrl, "/") + ot := sl[len(sl)-1] + ent, err := ef(ot, db.OpWithSerializedBytes(br.Value)) + if err != nil { + return nil, errors.Wrap(err, "NewEntry") + } + brEnts = append(brEnts, ent) + } + + return brEnts, nil +} + +// Implement server.ListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjUid() string { + return l.ObjectUid +} + +// Implement server.SROListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ObjectListRspItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ObjectListRspItem) GetObjName() string { + return l.Name +} + +func (l *ObjectListRspItem) GetObjLabels() map[string]string { + return l.Labels +} + +// NewRsp, NewRspFromJSON +func NewObjectCreateRsp(e db.Entry) (*ObjectCreateRsp, error) { + rspo := &ObjectCreateRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectCreateRsp") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "CreateRsp getting Key()") + } + rspo.ObjectUid = key + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectReplaceRsp(e db.Entry) (*ObjectReplaceRsp, error) { + rspo := &ObjectReplaceRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectReplaceRsp") + } + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectGetRsp(r *ObjectGetReq, rsrcRsp *server.ResourceGetResponse) (*ObjectGetRsp, error) { + rspo := &ObjectGetRsp{} + e := rsrcRsp.Entry + brEntries := rsrcRsp.BackRefs + if e == nil { + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *object.DBObject in NewObjectGetRsp") + } + rspo.ResourceVersion = rsrcRsp.ResourceVersion + rspo.FromObject(o) + // Backref + getBackrefsFunc := func() ([]*google_protobuf.Any, error) { + var merr *multierror.Error + var entBackrefs []*google_protobuf.Any + for _, brEnt := range brEntries { + brSer, err := brEnt.MarshalBytes() + if err != nil { + merr = multierror.Append(merr, err) + continue + } + entBackrefs = append(entBackrefs, &google_protobuf.Any{TypeUrl: "schema.ves.io/" + brEnt.Type(), Value: brSer}) + } + return entBackrefs, errors.ErrOrNil(merr) + } + entBackrefs, err := getBackrefsFunc() + if err != nil { + return nil, err + } + rspo.EntBackrefs = entBackrefs + d, err := o.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetRsp") + } + statusObjs, err := object.FindObjectStatus(context.Background(), d, o.GetObjUid()) + if err != nil { + return nil, errors.Wrap(err, "GetRsp") + } + rspo.Status = statusObjs + return rspo, nil +} + +func NewObjectListRsp(req *ObjectListReq, rsrcRspItems []*server.ResourceListResponseItem) (*ObjectListRsp, error) { + if req == nil { + return nil, fmt.Errorf("Nil ObjectListReq") + } + var errs error + o := &ObjectListRsp{} + o.Metadata = &ves_io_schema.ListMetaType{} + o.Uids = []string{} + o.Items = []*ObjectListRspItem{} + for _, rsrcItem := range rsrcRspItems { + if rsrcItem == nil { + errs = multierror.Append(errs, fmt.Errorf("ResourceListResponseItem is nil")) + continue + } + e := rsrcItem.Entry + dbObj, ok := e.(*object.DBObject) + if !ok { + errs = multierror.Append(errs, fmt.Errorf("Expected %T, got %T: %v", &object.DBObject{}, e, e)) + continue + } + key, err := dbObj.Key() + if err != nil { + errs = multierror.Append(errs, errors.WithMessagef(err, "Key() %v FAILED", dbObj)) + continue + } + + tenant := dbObj.GetSystemMetadata().GetTenant() + namespace := dbObj.GetMetadata().GetNamespace() + name := dbObj.GetMetadata().GetName() + labels := dbObj.GetMetadata().GetLabels() + + // TODO: DEPRECATE setting to o.Uids + o.Uids = append(o.Uids, key) + + item := &ObjectListRspItem{ + ObjectUid: key, + Tenant: tenant, + Namespace: namespace, + Name: name, + Labels: labels, + } + if len(req.ReportFields) > 0 { + item.FromObject(e) + } + o.Items = append(o.Items, item) + } + return o, errs +} + +func NewObjectDeleteRsp(ec ErrorCode) (*ObjectDeleteRsp, error) { + return &ObjectDeleteRsp{Err: ec}, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "ves.io/schema/filter_set/crudapi/api.proto", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/ves.io.schema.filter_set/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Get" + }, + "delete": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.filter_set/Objects": { + "get": { + "operationId": "ves.io.schema.filter_set.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.List" + }, + "post": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.filter_set/Objects/stream": { + "get": { + "operationId": "ves.io.schema.filter_set.crudapi.API.ListStream", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "schema": { + "$ref": "#/x-stream-definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-liststream" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.ListStream" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.filter_set/introspect/read/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Get" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.filter_set/introspect/read/Objects": { + "get": { + "operationId": "ves.io.schema.filter_set.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.List" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.filter_set/introspect/write/Object/{object_uid}": { + "delete": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.filter_set/introspect/write/Objects": { + "post": { + "operationId": "ves.io.schema.filter_set.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "filter_set", + "x-ves-object-type": "ves.io.schema.filter_set.Object", + "x-ves-proto-service": "ves.io.schema.filter_set.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + } + }, + "definitions": { + "crudapiObjectCreateReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectCreateReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/filter_setSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectCreateRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectCreateRsp", + "properties": { + "err": { + "$ref": "#/definitions/filter_setcrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/filter_setSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectDeleteRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectDeleteRsp", + "properties": { + "err": { + "$ref": "#/definitions/filter_setcrudapiErrorCode" + } + } + }, + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "err": { + "$ref": "#/definitions/filter_setcrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/filter_setSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/filter_setStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectListRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectListRsp", + "properties": { + "err": { + "$ref": "#/definitions/filter_setcrudapiErrorCode" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } + }, + "metadata": { + "$ref": "#/definitions/schemaListMetaType" + }, + "next_page": { + "type": "string", + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "crudapiObjectListRspItem": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectListRspItem", + "properties": { + "labels": { + "type": "object" + }, + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/filter_setSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/filter_setStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" + } + } + }, + "crudapiObjectReplaceReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectReplaceReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/filter_setSpecType" + } + } + }, + "crudapiObjectReplaceRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.crudapi.ObjectReplaceRsp", + "properties": { + "err": { + "$ref": "#/definitions/filter_setcrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/filter_setSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "filter_setFilterExpressionField": { + "type": "object", + "title": "FilterExpressionField", + "x-displayname": "Filter Expression Field", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterExpressionField", + "properties": { + "expression": { + "type": "string", + "description": " expression is a kubernetes style label expression for selections, but\n differs in that it allows special characters in the keys and values\n\nExample: - \"region in (us-west1, us-west2),tier in (staging)\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "expression", + "x-displayname": "Expression Value", + "x-ves-example": "region in (us-west1, us-west2),tier in (staging)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFilterSetField": { + "type": "object", + "description": "a field ID and its value selected by the user", + "title": "FilterSetField", + "x-displayname": "Filter Set Field", + "x-ves-oneof-field-field_value": "[\"date_field\",\"filter_expression_field\",\"string_field\"]", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterSetField", + "properties": { + "date_field": { + "description": "Exclusive with [filter_expression_field string_field]\n", + "title": "date_field", + "$ref": "#/definitions/filter_setFilterTimeRangeField", + "x-displayname": "Date/Time Range" + }, + "field_id": { + "type": "string", + "description": " an identifier for the field that maps to some UI filter component\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "field_id", + "x-displayname": "Field ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_expression_field": { + "description": "Exclusive with [date_field string_field]\n", + "title": "filter_label selector expression field", + "$ref": "#/definitions/filter_setFilterExpressionField", + "x-displayname": "Key/Value Selector Expression" + }, + "string_field": { + "description": "Exclusive with [date_field filter_expression_field]\n", + "title": "string_field", + "$ref": "#/definitions/filter_setFilterStringField", + "x-displayname": "String" + } + } + }, + "filter_setFilterStringField": { + "type": "object", + "title": "FilterStringField", + "x-displayname": "Filter String Field", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterStringField", + "properties": { + "field_values": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "field_values", + "items": { + "type": "string" + }, + "x-displayname": "String Value(s)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFilterTimeRangeField": { + "type": "object", + "description": "either an absolute time range or a relative time interval", + "title": "FilterTimeRangeField", + "x-displayname": "Filter Date/Time Range Field", + "x-ves-oneof-field-range_type": "[\"absolute\",\"relative\"]", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterTimeRangeField", + "properties": { + "absolute": { + "description": "Exclusive with [relative]\n absolute start and end timestamps", + "title": "absolute", + "$ref": "#/definitions/schemaDateRange", + "x-displayname": "Absolute" + }, + "relative": { + "type": "string", + "description": "Exclusive with [absolute]\n relative time duration", + "title": "relative", + "x-displayname": "Relative" + } + } + }, + "filter_setGlobalSpecType": { + "type": "object", + "description": "Global specification", + "title": "Global Specification", + "x-displayname": "Global Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.GlobalSpecType", + "properties": { + "context_key": { + "type": "string", + "description": " indexable context key that identifies a page or page type for which the FilterSet is applicable\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "context_key", + "x-displayname": "Context Key", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_fields": { + "type": "array", + "description": " list of fields and their values selected by the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "filter_fields", + "minItems": 1, + "items": { + "$ref": "#/definitions/filter_setFilterSetField" + }, + "x-displayname": "Filter Fields", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "filter_setSpecType": { + "type": "object", + "description": "Shape of the Filter Set specification. This not exposed to customers", + "title": "Specification", + "x-displayname": "Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.SpecType", + "properties": { + "gc_spec": { + "title": "gc_spec", + "$ref": "#/definitions/filter_setGlobalSpecType", + "x-displayname": "GC Spec" + } + } + }, + "filter_setStatusObject": { + "type": "object", + "description": "Most recently observed status of the object", + "title": "Status for Filter Set", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.filter_set.StatusObject", + "properties": { + "conditions": { + "type": "array", + "description": " Conditions", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" + }, + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " Object reference", + "title": "object_refs", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Config Object" + } + } + }, + "filter_setcrudapiErrorCode": { + "type": "string", + "enum": [ + "EOK", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN" + ], + "default": "EOK", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.filter_set.crudapi.ErrorCode" + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "runtimeStreamError": { + "type": "object", + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "grpc_code": { + "type": "integer", + "format": "int32" + }, + "http_code": { + "type": "integer", + "format": "int32" + }, + "http_status": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "schemaConditionType": { + "type": "object", + "description": "Conditions are used in the object status to describe the current state of the\nobject, e.g. Ready, Succeeded, etc.", + "title": "ConditionType", + "x-displayname": "Status Condition", + "x-ves-proto-message": "ves.io.schema.ConditionType", + "properties": { + "hostname": { + "type": "string", + "description": " Hostname of the instance of the site that sent the status", + "title": "hostname", + "x-displayname": "Hostname" + }, + "last_update_time": { + "type": "string", + "description": " Last time the condition was updated", + "title": "last_update_time", + "format": "date-time", + "x-displayname": "Last Updated" + }, + "reason": { + "type": "string", + "description": " x-reason: \"Insufficient memory in data plane\"\n A human readable string explaining the reason for reaching this condition\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaDateRange": { + "type": "object", + "description": "Date range is for selecting a date range", + "title": "DateRange", + "x-displayname": "Date Range", + "x-ves-proto-message": "ves.io.schema.DateRange", + "properties": { + "end_date": { + "type": "string", + "description": " Contains end date\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "end_date", + "format": "date-time", + "x-displayname": "End Date", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "start_date": { + "type": "string", + "description": " Contains start date\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "start_date", + "format": "date-time", + "x-displayname": "Start Date", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaLabelSelectorType": { + "type": "object", + "description": "x-displayName: \"Label Selector\"\nThis type can be used to establish a 'selector reference' from one object(called selector) to\na set of other objects(called selectees) based on the value of expresssions.\nA label selector is a label query over a set of resources. An empty label selector matches all objects.\nA null label selector matches no objects. Label selector is immutable.\nexpressions is a list of strings of label selection expression.\nEach string has \",\" separated values which are \"AND\" and all strings are logically \"OR\".\nBNF for expression string\n\u003cselector-syntax\u003e ::= \u003crequirement\u003e | \u003crequirement\u003e \",\" \u003cselector-syntax\u003e\n\u003crequirement\u003e ::= [!] KEY [ \u003cset-based-restriction\u003e | \u003cexact-match-restriction\u003e ]\n\u003cset-based-restriction\u003e ::= \"\" | \u003cinclusion-exclusion\u003e \u003cvalue-set\u003e\n\u003cinclusion-exclusion\u003e ::= \u003cinclusion\u003e | \u003cexclusion\u003e\n\u003cexclusion\u003e ::= \"notin\"\n\u003cinclusion\u003e ::= \"in\"\n\u003cvalue-set\u003e ::= \"(\" \u003cvalues\u003e \")\"\n\u003cvalues\u003e ::= VALUE | VALUE \",\" \u003cvalues\u003e\n\u003cexact-match-restriction\u003e ::= [\"=\"|\"==\"|\"!=\"] VALUE", + "title": "LabelSelectorType", + "properties": { + "expressions": { + "type": "array", + "description": "x-displayName: \"Selector Expression\"\nx-required\nx-example: \"region in (us-west1, us-west2),tier in (staging)\"\nexpressions contains the kubernetes style label expression for selections.", + "title": "expressions", + "items": { + "type": "string" + } + } + } + }, + "schemaListMetaType": { + "type": "object", + "description": "ListMetaType is metadata that all lists must have.", + "title": "ListMetaType", + "x-displayname": "List Metadata", + "x-ves-proto-message": "ves.io.schema.ListMetaType" + }, + "schemaObjectMetaType": { + "type": "object", + "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "ObjectMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaStatusMetaType": { + "type": "object", + "description": "StatusMetaType is metadata that all status must have.", + "title": "StatusMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.StatusMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " creation_timestamp is when the status object was created. It is used to find/tie-break\n for latest status object from same origin", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " Class of creator which created this StatusObject. This will be service's DNS FQDN.\n This will be set by the system based on client certificate information.\n\nExample: - \"ver.re1.int.ves.io\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "ver.re1.int.ves.io" + }, + "creator_id": { + "type": "string", + "description": " ID of creator which created this StatusObject. This will be a concrete identifier for service (e.g.\n identifying the environment also). This will be set by the system based on client certificate\n information\n\nExample: - \"ver-instance-1\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "ver-instance-1" + }, + "publish": { + "description": " Decides wether this status object will be propagated to user.", + "title": "publish", + "$ref": "#/definitions/schemaStatusPublishType", + "x-displayname": "Publish" + }, + "status_id": { + "type": "string", + "description": " status_id is a field used by the generator to distinguish (if necessary) between two status\n objects for the same config object from the same site and same service and potentially same\n daemon(creator-id)", + "title": "status_id", + "x-displayname": "Status ID" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for a StatusObject.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Origin of this status exchanged by VTRP.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaStatusPublishType": { + "type": "string", + "description": "StatusPublishType is all possible publish operations on a StatusObject\n\n - STATUS_DO_NOT_PUBLISH: Do Not Publish\n\nDo not propagate this status to user. This could be because status is only informational\n - STATUS_PUBLISH: Publish\n\nPropagate this status up to user as it might be actionable", + "title": "StatusPublishType", + "enum": [ + "STATUS_DO_NOT_PUBLISH", + "STATUS_PUBLISH" + ], + "default": "STATUS_DO_NOT_PUBLISH", + "x-displayname": "Status Publish Type", + "x-ves-proto-enum": "ves.io.schema.StatusPublishType" + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectMetaType": { + "type": "object", + "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "value" + }, + "creator_cookie": { + "type": "string", + "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", + "title": "creator_cookie", + "x-displayname": "Creator Cookie", + "x-ves-example": "value" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "value" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "namespace": { + "type": "array", + "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "namespace", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Namespace Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "sre_disable": { + "type": "boolean", + "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", + "title": "sre_disable", + "format": "boolean", + "x-displayname": "SRE Disable", + "x-ves-example": "true" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "trace_info": { + "type": "string", + "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", + "title": "trace_info", + "x-displayname": "Trace Info", + "x-ves-example": "value" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Indicate origin of this object.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + } + }, + "x-displayname": "", + "x-stream-definitions": { + "crudapiObjectListRsp": { + "properties": { + "error": { + "$ref": "#/definitions/runtimeStreamError" + }, + "result": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "title": "Stream result of crudapiObjectListRsp", + "type": "object" + } + }, + "x-ves-proto-file": "ves.io/schema/filter_set/crudapi/api.proto" +}` diff --git a/pbgo/extschema/schema/filter_set/crudapi/api.vesmsg.go b/pbgo/extschema/schema/filter_set/crudapi/api.vesmsg.go new file mode 100644 index 000000000..7b8df9a6b --- /dev/null +++ b/pbgo/extschema/schema/filter_set/crudapi/api.vesmsg.go @@ -0,0 +1,1758 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_filter_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateReq) DeepCopy() *ObjectCreateReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateReqValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateReq) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateReq) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateReqValidator = func() *ValidateObjectCreateReq { + v := &ValidateObjectCreateReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_filter_set.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateReqValidator() db.Validator { + return DefaultObjectCreateReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateRsp) DeepCopy() *ObjectCreateRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateRspValidator = func() *ValidateObjectCreateRsp { + v := &ValidateObjectCreateRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_filter_set.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateRspValidator() db.Validator { + return DefaultObjectCreateRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteReq) DeepCopy() *ObjectDeleteReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteReqValidator = func() *ValidateObjectDeleteReq { + v := &ValidateObjectDeleteReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteReqValidator() db.Validator { + return DefaultObjectDeleteReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteRsp) DeepCopy() *ObjectDeleteRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteRspValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteRspValidator = func() *ValidateObjectDeleteRsp { + v := &ValidateObjectDeleteRsp{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteRspValidator() db.Validator { + return DefaultObjectDeleteRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetReq) DeepCopy() *ObjectGetReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectGetReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["all_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("all_backrefs")) + if err := fv(ctx, m.GetAllBackrefs(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["backref_types"]; exists { + + vOpts := append(opts, db.WithValidateField("backref_types")) + for idx, item := range m.GetBackrefTypes() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetReqValidator = func() *ValidateObjectGetReq { + v := &ValidateObjectGetReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectGetReqValidator() db.Validator { + return DefaultObjectGetReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetRsp) DeepCopy() *ObjectGetRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectGetRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectGetRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectGetRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ent_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("ent_backrefs")) + for idx, item := range m.GetEntBackrefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetRspValidator = func() *ValidateObjectGetRsp { + v := &ValidateObjectGetRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_filter_set.SpecTypeValidator().Validate + + v.FldValidators["status"] = ves_io_schema_filter_set.StatusObjectValidator().Validate + + return v +}() + +func ObjectGetRspValidator() db.Validator { + return DefaultObjectGetRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListReq) DeepCopy() *ObjectListReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectListReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace_filter")) + for idx, item := range m.GetNamespaceFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["page_limit"]; exists { + + vOpts := append(opts, db.WithValidateField("page_limit")) + if err := fv(ctx, m.GetPageLimit(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["page_start"]; exists { + + vOpts := append(opts, db.WithValidateField("page_start")) + if err := fv(ctx, m.GetPageStart(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_filter")) + for idx, item := range m.GetTenantFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListReqValidator = func() *ValidateObjectListReq { + v := &ValidateObjectListReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectListReqValidator() db.Validator { + return DefaultObjectListReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRsp) DeepCopy() *ObjectListRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRsp) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateObjectListRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["next_page"]; exists { + + vOpts := append(opts, db.WithValidateField("next_page")) + if err := fv(ctx, m.GetNextPage(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uids"]; exists { + + vOpts := append(opts, db.WithValidateField("uids")) + for idx, item := range m.GetUids() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspValidator = func() *ValidateObjectListRsp { + v := &ValidateObjectListRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ObjectListRspItemValidator().Validate + + return v +}() + +func ObjectListRspValidator() db.Validator { + return DefaultObjectListRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRspItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRspItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRspItem) DeepCopy() *ObjectListRspItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRspItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRspItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRspItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspItemValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRspItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRspItem) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectListRspItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRspItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRspItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRspItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspItemValidator = func() *ValidateObjectListRspItem { + v := &ValidateObjectListRspItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_filter_set.SpecTypeValidator().Validate + + v.FldValidators["status"] = ves_io_schema_filter_set.StatusObjectValidator().Validate + + return v +}() + +func ObjectListRspItemValidator() db.Validator { + return DefaultObjectListRspItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceReq) DeepCopy() *ObjectReplaceReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectReplaceReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceReqValidator = func() *ValidateObjectReplaceReq { + v := &ValidateObjectReplaceReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_filter_set.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceReqValidator() db.Validator { + return DefaultObjectReplaceReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceRsp) DeepCopy() *ObjectReplaceRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectReplaceRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectReplaceRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectReplaceRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceRspValidator = func() *ValidateObjectReplaceRsp { + v := &ValidateObjectReplaceRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_filter_set.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceRspValidator() db.Validator { + return DefaultObjectReplaceRspValidator +} + +func (m *ObjectCreateReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_filter_set.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_filter_set.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_filter_set.DBObject) + _ = f + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectCreateRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_filter_set.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_filter_set.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_filter_set.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectGetRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_filter_set.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_filter_set.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectGetRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectGetRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectGetRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_filter_set.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectGetRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectGetRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectListRspItem) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_filter_set.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_filter_set.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + + m.SystemMetadata = f.GetSystemMetadata() + +} + +func (m *ObjectListRspItem) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectListRspItem) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectListRspItem) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_filter_set.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + + f.SystemMetadata = m1.SystemMetadata + +} + +func (m *ObjectListRspItem) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectListRspItem) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_filter_set.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_filter_set.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() +} + +func (m *ObjectReplaceReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_filter_set.DBObject) + _ = f + f.Metadata = m1.Metadata + + f.Spec = m1.Spec +} + +func (m *ObjectReplaceReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_filter_set.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_filter_set.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectReplaceRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_filter_set.DBObject) + _ = f + + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectReplaceRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/filter_set/crudapi/pkg.vespkg.go b/pbgo/extschema/schema/filter_set/crudapi/pkg.vespkg.go new file mode 100644 index 000000000..7c2639a1f --- /dev/null +++ b/pbgo/extschema/schema/filter_set/crudapi/pkg.vespkg.go @@ -0,0 +1,109 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.filter_set.crudapi.ObjectCreateReq"] = ObjectCreateReqValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectCreateRsp"] = ObjectCreateRspValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectDeleteReq"] = ObjectDeleteReqValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectDeleteRsp"] = ObjectDeleteRspValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectGetReq"] = ObjectGetReqValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectGetRsp"] = ObjectGetRspValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectListReq"] = ObjectListReqValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectListRsp"] = ObjectListRspValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectListRspItem"] = ObjectListRspItemValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectReplaceReq"] = ObjectReplaceReqValidator() + vr["ves.io.schema.filter_set.crudapi.ObjectReplaceRsp"] = ObjectReplaceRspValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.filter_set.crudapi.API.Create"] = []string{ + "spec.gc_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.crudapi.API.Create"] = []string{ + "spec.gc_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.crudapi.API.Get"] = []string{ + "spec.gc_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.crudapi.API.List"] = []string{ + "items.#.spec.gc_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.crudapi.API.ListStream"] = []string{ + "items.#.spec.gc_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.filter_set.crudapi.API.Replace"] = []string{ + "spec.gc_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.crudapi.API.Replace"] = []string{ + "spec.gc_spec.filter_fields.#.label_selector_field", + } + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + csr = mdr.PvtCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.filter_set.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.filter_set.crudapi.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.filter_set.crudapi.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/filter_set/object.pb.go b/pbgo/extschema/schema/filter_set/object.pb.go new file mode 100644 index 000000000..eb363be5a --- /dev/null +++ b/pbgo/extschema/schema/filter_set/object.pb.go @@ -0,0 +1,1202 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/filter_set/object.proto + +package filter_set + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Filter Set +// +// x-displayName: "Filter Set" +// Filter Set object +type Object struct { + // metadata + // + // x-displayName: "Metadata" + // Standard object's metadata + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // System generated object's metadata + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // Specification of the desired behavior of the Filter Set + Spec *SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *Object) Reset() { *m = Object{} } +func (*Object) ProtoMessage() {} +func (*Object) Descriptor() ([]byte, []int) { + return fileDescriptor_0fa93446b56a7795, []int{0} +} +func (m *Object) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Object) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Object) XXX_Merge(src proto.Message) { + xxx_messageInfo_Object.Merge(m, src) +} +func (m *Object) XXX_Size() int { + return m.Size() +} +func (m *Object) XXX_DiscardUnknown() { + xxx_messageInfo_Object.DiscardUnknown(m) +} + +var xxx_messageInfo_Object proto.InternalMessageInfo + +func (m *Object) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *Object) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *Object) GetSpec() *SpecType { + if m != nil { + return m.Spec + } + return nil +} + +// Specification +// +// x-displayName: "Specification" +// Shape of the Filter Set specification. This not exposed to customers +type SpecType struct { + // gc_spec + // + // x-displayName: "GC Spec" + GcSpec *GlobalSpecType `protobuf:"bytes,2,opt,name=gc_spec,json=gcSpec,proto3" json:"gc_spec,omitempty"` +} + +func (m *SpecType) Reset() { *m = SpecType{} } +func (*SpecType) ProtoMessage() {} +func (*SpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0fa93446b56a7795, []int{1} +} +func (m *SpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_SpecType.Merge(m, src) +} +func (m *SpecType) XXX_Size() int { + return m.Size() +} +func (m *SpecType) XXX_DiscardUnknown() { + xxx_messageInfo_SpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_SpecType proto.InternalMessageInfo + +func (m *SpecType) GetGcSpec() *GlobalSpecType { + if m != nil { + return m.GcSpec + } + return nil +} + +// Status for Filter Set +// +// x-displayName: "Status" +// Most recently observed status of the object +type StatusObject struct { + // metadata + // + // x-displayName: "Metadata" + // Standard status's metadata + Metadata *schema.StatusMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // object_refs + // + // x-displayName: "Config Object" + // Object reference + ObjectRefs []*schema.ObjectRefType `protobuf:"bytes,2,rep,name=object_refs,json=objectRefs,proto3" json:"object_refs,omitempty"` + // conditions + // + // x-displayName: "Conditions" + // Conditions + Conditions []*schema.ConditionType `protobuf:"bytes,3,rep,name=conditions,proto3" json:"conditions,omitempty"` +} + +func (m *StatusObject) Reset() { *m = StatusObject{} } +func (*StatusObject) ProtoMessage() {} +func (*StatusObject) Descriptor() ([]byte, []int) { + return fileDescriptor_0fa93446b56a7795, []int{2} +} +func (m *StatusObject) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *StatusObject) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *StatusObject) XXX_Merge(src proto.Message) { + xxx_messageInfo_StatusObject.Merge(m, src) +} +func (m *StatusObject) XXX_Size() int { + return m.Size() +} +func (m *StatusObject) XXX_DiscardUnknown() { + xxx_messageInfo_StatusObject.DiscardUnknown(m) +} + +var xxx_messageInfo_StatusObject proto.InternalMessageInfo + +func (m *StatusObject) GetMetadata() *schema.StatusMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *StatusObject) GetObjectRefs() []*schema.ObjectRefType { + if m != nil { + return m.ObjectRefs + } + return nil +} + +func (m *StatusObject) GetConditions() []*schema.ConditionType { + if m != nil { + return m.Conditions + } + return nil +} + +func init() { + proto.RegisterType((*Object)(nil), "ves.io.schema.filter_set.Object") + golang_proto.RegisterType((*Object)(nil), "ves.io.schema.filter_set.Object") + proto.RegisterType((*SpecType)(nil), "ves.io.schema.filter_set.SpecType") + golang_proto.RegisterType((*SpecType)(nil), "ves.io.schema.filter_set.SpecType") + proto.RegisterType((*StatusObject)(nil), "ves.io.schema.filter_set.StatusObject") + golang_proto.RegisterType((*StatusObject)(nil), "ves.io.schema.filter_set.StatusObject") +} + +func init() { + proto.RegisterFile("ves.io/schema/filter_set/object.proto", fileDescriptor_0fa93446b56a7795) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/filter_set/object.proto", fileDescriptor_0fa93446b56a7795) +} + +var fileDescriptor_0fa93446b56a7795 = []byte{ + // 590 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xcf, 0x6b, 0xd4, 0x40, + 0x14, 0xc7, 0x33, 0x4d, 0xd9, 0x96, 0x69, 0xad, 0x25, 0x5e, 0x62, 0xd5, 0xa1, 0xac, 0x0a, 0x3d, + 0x98, 0x04, 0x2a, 0x0a, 0x16, 0x11, 0x6c, 0x0b, 0xf5, 0xd0, 0x1f, 0xb2, 0xeb, 0xc9, 0xcb, 0x32, + 0x99, 0xbc, 0xa4, 0xd1, 0x24, 0x13, 0x32, 0x93, 0xa5, 0x3d, 0x08, 0xfe, 0x01, 0x1e, 0xfc, 0x03, + 0xbc, 0x2b, 0xfe, 0x15, 0xd6, 0x93, 0xc7, 0xd2, 0xd3, 0x1e, 0xdd, 0xec, 0x45, 0x3c, 0x15, 0xfc, + 0x07, 0x64, 0x27, 0xcd, 0xb6, 0xdb, 0xee, 0x42, 0x0f, 0x7b, 0x9b, 0xcc, 0xf7, 0xfb, 0x3e, 0x79, + 0x33, 0x6f, 0xde, 0xc3, 0x0f, 0xdb, 0x20, 0xec, 0x90, 0x3b, 0x82, 0xed, 0x43, 0x4c, 0x1d, 0x3f, + 0x8c, 0x24, 0x64, 0x2d, 0x01, 0xd2, 0xe1, 0xee, 0x3b, 0x60, 0xd2, 0x4e, 0x33, 0x2e, 0xb9, 0x61, + 0x96, 0x36, 0xbb, 0xb4, 0xd9, 0xe7, 0xb6, 0x25, 0x2b, 0x08, 0xe5, 0x7e, 0xee, 0xda, 0x8c, 0xc7, + 0x4e, 0xc0, 0x03, 0xee, 0xa8, 0x00, 0x37, 0xf7, 0xd5, 0x97, 0xfa, 0x50, 0xab, 0x12, 0xb4, 0xf4, + 0x60, 0xec, 0xff, 0xe4, 0x61, 0x0a, 0xe2, 0xcc, 0x75, 0x67, 0xd8, 0xc5, 0x53, 0x19, 0xf2, 0xa4, + 0x12, 0x6f, 0x0f, 0x8b, 0x17, 0xe3, 0xea, 0xc3, 0x52, 0x1b, 0x04, 0x24, 0xed, 0xe1, 0xf0, 0xfa, + 0xbf, 0x69, 0x5c, 0xdb, 0x53, 0x67, 0x33, 0x9e, 0xe1, 0xd9, 0x18, 0x24, 0xf5, 0xa8, 0xa4, 0x26, + 0x5a, 0x46, 0x2b, 0x73, 0xab, 0xf7, 0xec, 0xe1, 0x83, 0x96, 0xc6, 0x1d, 0x90, 0xf4, 0xcd, 0x61, + 0x0a, 0x8d, 0x81, 0xdd, 0xd8, 0xc6, 0x37, 0xc5, 0xa1, 0x90, 0x10, 0xb7, 0x06, 0x84, 0x29, 0x45, + 0xb8, 0x7f, 0x89, 0xd0, 0x54, 0xae, 0x4b, 0x9c, 0x85, 0x32, 0x76, 0xa7, 0xa2, 0x3d, 0xc5, 0xd3, + 0x22, 0x05, 0x66, 0xea, 0x0a, 0x51, 0xb7, 0xc7, 0xdd, 0xb6, 0xdd, 0x4c, 0x81, 0x29, 0x82, 0xf2, + 0xaf, 0x7d, 0xd5, 0x7f, 0x1e, 0x99, 0x53, 0x8b, 0xe8, 0xe4, 0xc8, 0xfc, 0xa2, 0xe3, 0x3d, 0xac, + 0x6f, 0x81, 0x34, 0x5e, 0xf9, 0x4f, 0x0e, 0x98, 0xe5, 0x81, 0x4f, 0xf3, 0x48, 0x5a, 0x94, 0x31, + 0x10, 0xe2, 0x91, 0xda, 0x63, 0x3c, 0x11, 0x3c, 0x02, 0xcb, 0xa5, 0x22, 0x64, 0x56, 0xcc, 0x93, + 0x50, 0xf2, 0xec, 0x8a, 0x04, 0x95, 0x82, 0x9b, 0x78, 0xa6, 0x01, 0x69, 0x44, 0x19, 0x4c, 0x10, + 0xda, 0xc0, 0xb5, 0x8d, 0x0c, 0xa8, 0x9c, 0x24, 0x73, 0x17, 0xd7, 0x36, 0x21, 0x02, 0x09, 0xc6, + 0xe6, 0x35, 0x99, 0xd4, 0x8b, 0xc3, 0x64, 0x04, 0x51, 0xed, 0xe3, 0xd7, 0x78, 0x7a, 0x3b, 0x14, + 0x13, 0xbc, 0xca, 0xfa, 0x0e, 0x9e, 0xad, 0x6a, 0x67, 0xbc, 0xc4, 0x33, 0x01, 0x6b, 0xa9, 0x82, + 0x97, 0x6f, 0x66, 0x65, 0x7c, 0xc1, 0xb7, 0x22, 0xee, 0xd2, 0x68, 0x50, 0xf6, 0x5a, 0xc0, 0xfa, + 0xeb, 0xfa, 0x5f, 0x84, 0xe7, 0x9b, 0x92, 0xca, 0x5c, 0x5c, 0xfb, 0x29, 0x97, 0xf6, 0x91, 0x4f, + 0x79, 0xae, 0xec, 0xf5, 0x56, 0x06, 0xbe, 0x30, 0xa7, 0x96, 0xf5, 0x95, 0xb9, 0xd5, 0xbb, 0x23, + 0x1b, 0xa1, 0x01, 0x7e, 0x3f, 0x78, 0xfd, 0xc6, 0xf7, 0x0f, 0xf8, 0x3c, 0xc9, 0x06, 0xe6, 0x95, + 0x2a, 0x8c, 0xe7, 0x18, 0x33, 0x9e, 0x78, 0xa1, 0x6a, 0x39, 0x53, 0x1f, 0x09, 0xdb, 0xa8, 0x0c, + 0x2a, 0x93, 0x0b, 0xfe, 0xb5, 0x5b, 0x27, 0x2f, 0x16, 0xf1, 0x02, 0x9e, 0xaf, 0x92, 0xb3, 0xf3, + 0xd0, 0x5b, 0xff, 0x84, 0x8e, 0xbb, 0x44, 0xeb, 0x74, 0x89, 0x76, 0xda, 0x25, 0xe8, 0x63, 0x41, + 0xd0, 0xb7, 0x82, 0xa0, 0x5f, 0x05, 0x41, 0xc7, 0x05, 0x41, 0x9d, 0x82, 0xa0, 0xdf, 0x05, 0x41, + 0x7f, 0x0a, 0xa2, 0x9d, 0x16, 0x04, 0x7d, 0xee, 0x11, 0xed, 0x47, 0x8f, 0xa0, 0xe3, 0x1e, 0xd1, + 0x3a, 0x3d, 0xa2, 0xbd, 0xdd, 0x0d, 0x78, 0xfa, 0x3e, 0xb0, 0xdb, 0xbc, 0x9f, 0x6f, 0x46, 0xed, + 0x5c, 0x38, 0x6a, 0xe1, 0xf3, 0x2c, 0xb6, 0xd2, 0x8c, 0xb7, 0x43, 0x0f, 0x32, 0xab, 0x92, 0x9d, + 0xd4, 0x0d, 0xb8, 0x03, 0x07, 0xf2, 0x6c, 0x86, 0x5c, 0x19, 0x54, 0x6e, 0x4d, 0xcd, 0x91, 0xc7, + 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0xe6, 0xd7, 0xd7, 0x74, 0x3b, 0x05, 0x00, 0x00, +} + +func (this *Object) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Object) + if !ok { + that2, ok := that.(Object) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *SpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SpecType) + if !ok { + that2, ok := that.(SpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GcSpec.Equal(that1.GcSpec) { + return false + } + return true +} +func (this *StatusObject) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*StatusObject) + if !ok { + that2, ok := that.(StatusObject) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if len(this.ObjectRefs) != len(that1.ObjectRefs) { + return false + } + for i := range this.ObjectRefs { + if !this.ObjectRefs[i].Equal(that1.ObjectRefs[i]) { + return false + } + } + if len(this.Conditions) != len(that1.Conditions) { + return false + } + for i := range this.Conditions { + if !this.Conditions[i].Equal(that1.Conditions[i]) { + return false + } + } + return true +} +func (this *Object) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&filter_set.Object{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&filter_set.SpecType{") + if this.GcSpec != nil { + s = append(s, "GcSpec: "+fmt.Sprintf("%#v", this.GcSpec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *StatusObject) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&filter_set.StatusObject{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.ObjectRefs != nil { + s = append(s, "ObjectRefs: "+fmt.Sprintf("%#v", this.ObjectRefs)+",\n") + } + if this.Conditions != nil { + s = append(s, "Conditions: "+fmt.Sprintf("%#v", this.Conditions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringObject(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *Object) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Object) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Object) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *SpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GcSpec != nil { + { + size, err := m.GcSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *StatusObject) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StatusObject) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *StatusObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Conditions) > 0 { + for iNdEx := len(m.Conditions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Conditions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if len(m.ObjectRefs) > 0 { + for iNdEx := len(m.ObjectRefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ObjectRefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintObject(dAtA []byte, offset int, v uint64) int { + offset -= sovObject(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Object) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *SpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GcSpec != nil { + l = m.GcSpec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *StatusObject) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if len(m.ObjectRefs) > 0 { + for _, e := range m.ObjectRefs { + l = e.Size() + n += 1 + l + sovObject(uint64(l)) + } + } + if len(m.Conditions) > 0 { + for _, e := range m.Conditions { + l = e.Size() + n += 1 + l + sovObject(uint64(l)) + } + } + return n +} + +func sovObject(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozObject(x uint64) (n int) { + return sovObject(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *Object) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Object{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(this.Spec.String(), "SpecType", "SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SpecType{`, + `GcSpec:` + strings.Replace(fmt.Sprintf("%v", this.GcSpec), "GlobalSpecType", "GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *StatusObject) String() string { + if this == nil { + return "nil" + } + repeatedStringForObjectRefs := "[]*ObjectRefType{" + for _, f := range this.ObjectRefs { + repeatedStringForObjectRefs += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForObjectRefs += "}" + repeatedStringForConditions := "[]*ConditionType{" + for _, f := range this.Conditions { + repeatedStringForConditions += strings.Replace(fmt.Sprintf("%v", f), "ConditionType", "schema.ConditionType", 1) + "," + } + repeatedStringForConditions += "}" + s := strings.Join([]string{`&StatusObject{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "StatusMetaType", "schema.StatusMetaType", 1) + `,`, + `ObjectRefs:` + repeatedStringForObjectRefs + `,`, + `Conditions:` + repeatedStringForConditions + `,`, + `}`, + }, "") + return s +} +func valueToStringObject(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *Object) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Object: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Object: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GcSpec == nil { + m.GcSpec = &GlobalSpecType{} + } + if err := m.GcSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StatusObject) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StatusObject: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StatusObject: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.StatusMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectRefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectRefs = append(m.ObjectRefs, &schema.ObjectRefType{}) + if err := m.ObjectRefs[len(m.ObjectRefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Conditions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Conditions = append(m.Conditions, &schema.ConditionType{}) + if err := m.Conditions[len(m.Conditions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipObject(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthObject + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupObject + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthObject + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthObject = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowObject = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupObject = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/filter_set/object.vesmsg.go b/pbgo/extschema/schema/filter_set/object.vesmsg.go new file mode 100644 index 000000000..4c65af62a --- /dev/null +++ b/pbgo/extschema/schema/filter_set/object.vesmsg.go @@ -0,0 +1,103 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *SpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SpecType) DeepCopy() *SpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["gc_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("gc_spec")) + if err := fv(ctx, m.GetGcSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSpecTypeValidator = func() *ValidateSpecType { + v := &ValidateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["gc_spec"] = GlobalSpecTypeValidator().Validate + + return v +}() + +func SpecTypeValidator() db.Validator { + return DefaultSpecTypeValidator +} diff --git a/pbgo/extschema/schema/filter_set/object.vesobj.go b/pbgo/extschema/schema/filter_set/object.vesobj.go new file mode 100644 index 000000000..49ea133aa --- /dev/null +++ b/pbgo/extschema/schema/filter_set/object.vesobj.go @@ -0,0 +1,1256 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "context" + "fmt" + "math/rand" + "strings" + "time" + + google_protobuf "github.com/gogo/protobuf/types" + multierror "github.com/hashicorp/go-multierror" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/store" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + + "github.com/google/uuid" + "gopkg.volterra.us/stdlib/db/sro" +) + +const ( + ObjectDefTblName = "ves.io.schema.filter_set.Object.default" + ObjectType = "ves.io.schema.filter_set.Object" + + StatusObjectDefTblName = "ves.io.schema.filter_set.StatusObject.default" + StatusObjectType = "ves.io.schema.filter_set.StatusObject" +) + +// augmented methods on protoc/std generated struct +func (e *Object) Type() string { + return "ves.io.schema.filter_set.Object" +} + +func (e *Object) ToEntry() db.Entry { + return NewDBObject(e, db.OpWithNoCopy()) +} + +func LocateObject(ctx context.Context, locator db.EntryLocator, uid, tenant, namespace, name string, opts ...db.FindEntryOpt) (*DBObject, error) { + timestamp, err := google_protobuf.TimestampProto(time.Now()) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if uid != "" { + obj, exist, err := FindObject(ctx, locator, uid, opts...) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if exist && obj != nil { + obj.SystemMetadata.ModificationTimestamp = timestamp + return obj, nil + } + } else { + uid = uuid.New().String() + } + + sysMD := &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: tenant, + CreatorClass: locator.GetCreatorClass(), + CreatorId: locator.GetCreatorID(), + CreationTimestamp: timestamp, + ModificationTimestamp: timestamp, + } + obj := NewDBObject(nil) + obj.SetObjUid(uid) + obj.SetObjName(name) + obj.SetObjNamespace(namespace) + obj.SetObjSystemMetadata(sysMD) + obj.Spec = &SpecType{} + return obj, nil +} + +func FindObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, ObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBObject, error) { + var ( + oList []*DBObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, ObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", ObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *Object) DeepCopy() *Object { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &Object{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *Object) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *Object) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +func (e *Object) GetTraceInfo() string { + sysMD := e.GetSystemMetadata() + if sysMD == nil { + return "" + } + return sysMD.GetTraceInfo() +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBObject struct { + // Anonymous embed of standard protobuf generated struct + *Object + + tbl db.Table +} + +// GetObjectIndexers returns the associated store.Indexers for Object +func GetObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBObject) Key(opts ...db.KeyOpt) (string, error) { + ko := db.NewKeyOpts(opts...) + if ko.Public { + md := e.GetMetadata() + if md == nil { + return "", fmt.Errorf("Metadata is nil") + } + return fmt.Sprintf("%s/%s", md.GetNamespace(), md.GetName()), nil + } else { + if e.GetSystemMetadata() == nil { + return "", fmt.Errorf("SystemMetadata is nil") + } + return e.GetSystemMetadata().GetUid(), nil + } +} + +func (e *DBObject) Type() string { + return "ves.io.schema.filter_set.Object" +} + +func (e *DBObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBObject(e.Object) + n.tbl = e.tbl + return n +} + +func (e *DBObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBObject) Sample(r *rand.Rand) (db.Entry, error) { + uid := uuid.New().String() + o := &Object{ + Metadata: &ves_io_schema.ObjectMetaType{ + Name: uuid.New().String(), + Namespace: uuid.New().String(), + Uid: uid, + }, + SystemMetadata: &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: uuid.New().String(), + }, + Spec: &SpecType{}, + } + + return &DBObject{o, e.tbl}, nil +} + +func (e *DBObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectValidator().Validate(ctx, e.Object, opts...) +} + +func (e *DBObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetSystemMetadataDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.filter_set.Object." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBObject) ToStore() store.Entry { + return e.Object +} + +func (e *DBObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBObject) GetTable() db.Table { + return e.tbl +} + +func NewDBObject(o *Object, opts ...db.OpOption) *DBObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBObject{Object: &Object{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBObject{Object: obj} +} + +func NewEntryObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBObject(nil, opts...) + case *Object: + return NewDBObject(v, opts...) + } + return nil +} + +// GetDRefInfo for the field's type +func (e *DBObject) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if e.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := e.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +// Implement sro.SRO interface +func (o *DBObject) GetObjMetadata() sro.ObjectMetadata { + if o.GetMetadata() == nil { + return nil + } + return o.GetMetadata() +} + +func (o *DBObject) SetObjMetadata(in sro.ObjectMetadata) error { + if in == nil { + o.Metadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.ObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjMetadata expected *ObjectMetaType, got %T", in) + } + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSystemMetadata() sro.SystemMetadata { + if o.GetSystemMetadata() == nil { + return nil + } + return o.GetSystemMetadata() +} + +func (o *DBObject) SetObjSystemMetadata(in sro.SystemMetadata) error { + if in == nil { + o.SystemMetadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.SystemObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjSystemMetadata expected *SystemObjectMetaType, got %T", in) + } + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjSpec() sro.Spec { + if o.GetSpec() == nil { + return nil + } + return o.GetSpec() +} + +func (o *DBObject) SetObjSpec(in sro.Spec) error { + if in == nil { + o.Spec = nil + return nil + } + + m, ok := in.(*SpecType) + if !ok { + return fmt.Errorf("Error: SetObjSpec expected *SpecType, got %T", in) + } + o.Spec = m + return nil +} + +func FindObjectStatus(ctx context.Context, d db.Interface, objUid string) ([]*StatusObject, error) { + statusDBEntries, err := d.GetEntryBackrefs(ctx, objUid, ObjectType, db.WithBackrefTypes([]string{"ves.io.schema.filter_set.StatusObject"})) + if err != nil { + return nil, err + } + var merr *multierror.Error + var statusObjs []*StatusObject + for _, statusDBEntry := range statusDBEntries { + statusEntry := statusDBEntry.ToStore() + statusObj, ok := statusEntry.(*StatusObject) + if !ok { + merr = multierror.Append(merr, fmt.Errorf("Status Backref expected *StatusObject, got %T: %v", statusEntry, statusEntry)) + continue + } + statusObjs = append(statusObjs, statusObj) + } + return statusObjs, errors.ErrOrNil(merr) +} + +// SetObjectRef sets reference to a configuration object +func (o *StatusObject) SetObjectRef(objKind, objUid string) error { + if len(o.GetObjectRefs()) != 0 { + return fmt.Errorf("StatusObject already has a reference to %v", o.GetObjectRefs()) + } + o.ObjectRefs = append(o.ObjectRefs, &ves_io_schema.ObjectRefType{Kind: objKind, Uid: objUid}) + return nil +} + +func (o *StatusObject) GetStatusObjMetadata() sro.StatusObjectMetadata { + return o.GetMetadata() +} + +func (o *StatusObject) SetStatusObjMetadata(md sro.StatusObjectMetadata) { + if o == nil { + return + } + if o.Metadata == nil { + o.Metadata = &ves_io_schema.StatusMetaType{} + } + o.Metadata = md.(*ves_io_schema.StatusMetaType) +} + +// GenerateUuidv5() returns a deterministic UUIDv5 based on the unique semantic key of status object +func (o *StatusObject) GenerateUuidV5() (string, error) { + statusObjectMetaData := o.GetStatusObjMetadata() + creatorClass := statusObjectMetaData.GetCreatorClass() + creatorId := statusObjectMetaData.GetCreatorId() + statusId := statusObjectMetaData.GetStatusId() + objectRefArray := o.GetObjectRefs() + if len(objectRefArray) == 0 { + return "", fmt.Errorf("StatusObject does not have a reference to config object.") + } + configObjectUuid := objectRefArray[0].Uid + configObjectKind := objectRefArray[0].Kind + keyFields := []string{creatorClass, creatorId, statusId, configObjectKind, configObjectUuid} + secKey := strings.Join(keyFields, "::") + newUuid := uuid.NewSHA1(uuid.NameSpaceOID, []byte(secKey)).String() + return newUuid, nil +} + +// SetUuidV5 sets deterministic uuid for a status object. +func (o *StatusObject) SetUuidV5() error { + if o == nil { + return fmt.Errorf("Status object is nil") + } + uuidV5, err := o.GenerateUuidV5() + if err != nil { + return err + } + o.GetMetadata().SetUid(uuidV5) + return nil +} + +// GetVtrpId returns vtrpId of the status object. +func (o *StatusObject) GetVtrpId() string { + return o.GetMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the status object. +func (o *StatusObject) SetVtrpId(id string) { + o.GetMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *StatusObject) GetVtrpStale() bool { + return o.GetMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the status object +func (o *StatusObject) SetVtrpStale(isStale bool) { + o.GetMetadata().SetVtrpStale(isStale) +} + +func (o *StatusObject) GetStatusObjConditions() []sro.StatusObjectCondition { + if o == nil { + return nil + } + return ves_io_schema.ToStatusObjectConditions(o.GetConditions()) +} + +func (o *StatusObject) SetStatusObjConditions(socSet []sro.StatusObjectCondition) { + if o == nil { + return + } + o.Conditions = ves_io_schema.FromStatusObjectConditions(socSet) +} + +func (o *DBObject) GetObjType() string { + return o.Type() +} + +// GetObjUid returns uuid from source-of-truth, in systemMetadata +func (o *DBObject) GetObjUid() string { + return o.GetSystemMetadata().GetUid() +} + +// GetObjTenant returns tenant from source-of-truth, in systemMetadata +func (o *DBObject) GetObjTenant() string { + return o.GetSystemMetadata().GetTenant() +} + +// GetObjCreatorClass returns creator-class from systemMetadata +func (o *DBObject) GetObjCreatorClass() string { + return o.GetSystemMetadata().GetCreatorClass() +} + +// GetObjectIndex returns object-index from systemMetadata +func (o *DBObject) GetObjectIndex() uint32 { + return o.GetSystemMetadata().GetObjectIndex() +} + +// SetObjUid sets uuid as a hint, in Metadata +func (o *DBObject) SetObjUid(u string) error { + // TODO: make sure 'u' is of uuid form + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Uid = u + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjName() string { + return o.GetMetadata().GetName() +} + +func (o *DBObject) SetObjName(n string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Name = n + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjNamespace() string { + return o.GetMetadata().GetNamespace() +} + +func (o *DBObject) SetObjNamespace(ns string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Namespace = ns + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjLabels() map[string]string { + return o.GetMetadata().GetLabels() +} + +func (o *DBObject) SetObjLabels(l map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Labels = l + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjAnnotations() map[string]string { + return o.GetMetadata().GetAnnotations() +} + +func (o *DBObject) SetObjAnnotations(a map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Annotations = a + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDescription() string { + return o.GetMetadata().GetDescription() +} + +func (o *DBObject) SetObjDescription(d string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Description = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDisable() bool { + return o.GetMetadata().GetDisable() +} + +func (o *DBObject) SetObjDisable(d bool) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Disable = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSREDisable() bool { + return o.GetSystemMetadata().GetSreDisable() +} + +func (o *DBObject) SetObjSREDisable(d bool) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.SreDisable = d + return nil +} + +func (o *DBObject) SetObjCreator(cls, inst string) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.CreatorClass = cls + m.CreatorId = inst + o.SystemMetadata = m + return nil +} + +func (o *DBObject) SetObjectIndex(idx uint32) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.ObjectIndex = idx + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjFinalizers() []string { + return o.GetSystemMetadata().GetFinalizers() +} + +func (o *DBObject) SetObjFinalizers(values ...string) error { + m := o.GetSystemMetadata() + if m == nil { + return fmt.Errorf("Object has nil system_metadata") + } + m.Finalizers = values + return nil +} + +func (o *DBObject) GetObjPendingInitializers() []string { + initializers := o.GetSystemMetadata().GetInitializers() + var pending []string + for _, p := range initializers.GetPending() { + pending = append(pending, p.GetName()) + } + return pending +} + +func (o *DBObject) SetObjPendingInitializers(pending ...string) { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + o.SystemMetadata = m + } + initializers := m.GetInitializers() + if initializers == nil { + initializers = &ves_io_schema.InitializersType{} + m.Initializers = initializers + } + var pendingInitializers []*ves_io_schema.InitializerType + for _, p := range pending { + pendingInitializers = append(pendingInitializers, &ves_io_schema.InitializerType{Name: p}) + } + initializers.Pending = pendingInitializers +} + +func (o *DBObject) IsSpecEqual(other sro.SRO) bool { + otherObjSpec := other.GetObjSpec() + otherSpec, ok := otherObjSpec.(*SpecType) + if !ok { + return false + } + + return o.GetSpec().Equal(otherSpec) +} + +// GetVtrpId returns vtrpId of the object. +func (o *DBObject) GetVtrpId() string { + return o.GetSystemMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the object. +func (o *DBObject) SetVtrpId(id string) { + o.GetSystemMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *DBObject) GetVtrpStale() bool { + return o.GetSystemMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the object +func (o *DBObject) SetVtrpStale(isStale bool) { + o.GetSystemMetadata().SetVtrpStale(isStale) +} + +type ValidateObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*Object) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *Object got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, e.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, e.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectValidator = func() *ValidateObject { + v := &ValidateObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = SpecTypeValidator().Validate + + return v +}() + +func ObjectValidator() db.Validator { + return DefaultObjectValidator +} + +// augmented methods on protoc/std generated struct +func (e *StatusObject) Type() string { + return "ves.io.schema.filter_set.StatusObject" +} + +func (e *StatusObject) ToEntry() db.Entry { + return NewDBStatusObject(e, db.OpWithNoCopy()) +} + +func FindStatusObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBStatusObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, StatusObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBStatusObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListStatusObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBStatusObject, error) { + var ( + oList []*DBStatusObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, StatusObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBStatusObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", StatusObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *StatusObject) DeepCopy() *StatusObject { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &StatusObject{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *StatusObject) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *StatusObject) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBStatusObject struct { + // Anonymous embed of standard protobuf generated struct + *StatusObject + + tbl db.Table +} + +// GetStatusObjectIndexers returns the associated store.Indexers for StatusObject +func GetStatusObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBStatusObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBStatusObject) Key(opts ...db.KeyOpt) (string, error) { + return e.GetMetadata().GetUid(), nil +} + +func (e *DBStatusObject) Type() string { + return "ves.io.schema.filter_set.StatusObject" +} + +func (e *DBStatusObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBStatusObject(e.StatusObject) + n.tbl = e.tbl + return n +} + +func (e *DBStatusObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBStatusObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBStatusObject) Sample(r *rand.Rand) (db.Entry, error) { + + o := &StatusObject{} + + return &DBStatusObject{o, e.tbl}, nil +} + +func (e *DBStatusObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return StatusObjectValidator().Validate(ctx, e.StatusObject, opts...) +} + +func (e *DBStatusObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBStatusObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBStatusObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBStatusObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBStatusObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBStatusObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBStatusObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetObjectRefsDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetObjectRefsDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.filter_set.StatusObject." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBStatusObject) ToStore() store.Entry { + return e.StatusObject +} + +func (e *DBStatusObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBStatusObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBStatusObject) GetTable() db.Table { + return e.tbl +} + +func NewDBStatusObject(o *StatusObject, opts ...db.OpOption) *DBStatusObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBStatusObject{StatusObject: &StatusObject{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBStatusObject{StatusObject: obj} +} + +func NewEntryStatusObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBStatusObject(nil, opts...) + case *StatusObject: + return NewDBStatusObject(v, opts...) + } + return nil +} + +func (e *DBStatusObject) GetObjectRefsDRefInfo() ([]db.DRefInfo, error) { + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + refs := e.GetObjectRefs() + if len(refs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(refs)) + for i, ref := range refs { + if ref == nil { + return nil, fmt.Errorf("StatusObject.object_refs[%d] has a nil value", i) + } + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "filter_set.Object", + RefdUID: ref.Uid, + RefdTenant: ref.Tenant, + RefdNS: ref.Namespace, + RefdName: ref.Name, + RefrType: e.Type(), + RefrUID: refrUID, + DRField: "object_refs", + Ref: ref, + }) + } + return drInfos, nil +} + +// GetObjectRefsDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (e *DBStatusObject) GetObjectRefsDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDBEntries, error in key") + } + refdType, err := d.TypeForEntryKind(e.Type(), refrUID, "filter_set.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: filter_set") + } + tblName := db.DefaultTableName(refdType) + if intTbl, err := d.GetTable(ctx, db.InternalTableName(refdType)); err == nil { + tblName = intTbl.Name() + } + for _, ref := range e.GetObjectRefs() { + e, exist, err := d.FindEntry(ctx, tblName, ref.Uid) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Tbl: %s, Key: %s", tblName, ref.Uid)) + } + if !exist { + continue + } + entries = append(entries, e) + } + return entries, nil +} + +type ValidateStatusObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateStatusObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*StatusObject) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *StatusObject got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["conditions"]; exists { + + vOpts := append(opts, db.WithValidateField("conditions")) + for idx, item := range e.GetConditions() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_refs"]; exists { + + vOpts := append(opts, db.WithValidateField("object_refs")) + for idx, item := range e.GetObjectRefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultStatusObjectValidator = func() *ValidateStatusObject { + v := &ValidateStatusObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["conditions"] = ves_io_schema.ConditionTypeValidator().Validate + + return v +}() + +func StatusObjectValidator() db.Validator { + return DefaultStatusObjectValidator +} diff --git a/pbgo/extschema/schema/filter_set/pkg.vespkg.go b/pbgo/extschema/schema/filter_set/pkg.vespkg.go new file mode 100644 index 000000000..b5d07d98a --- /dev/null +++ b/pbgo/extschema/schema/filter_set/pkg.vespkg.go @@ -0,0 +1,163 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "reflect" + + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/store" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.filter_set.SpecType"] = SpecTypeValidator() + + vr["ves.io.schema.filter_set.Object"] = ObjectValidator() + vr["ves.io.schema.filter_set.StatusObject"] = StatusObjectValidator() + + vr["ves.io.schema.filter_set.CreateRequest"] = CreateRequestValidator() + vr["ves.io.schema.filter_set.CreateResponse"] = CreateResponseValidator() + vr["ves.io.schema.filter_set.DeleteRequest"] = DeleteRequestValidator() + vr["ves.io.schema.filter_set.GetRequest"] = GetRequestValidator() + vr["ves.io.schema.filter_set.GetResponse"] = GetResponseValidator() + vr["ves.io.schema.filter_set.ListRequest"] = ListRequestValidator() + vr["ves.io.schema.filter_set.ListResponse"] = ListResponseValidator() + vr["ves.io.schema.filter_set.ListResponseItem"] = ListResponseItemValidator() + vr["ves.io.schema.filter_set.ReplaceRequest"] = ReplaceRequestValidator() + vr["ves.io.schema.filter_set.ReplaceResponse"] = ReplaceResponseValidator() + + vr["ves.io.schema.filter_set.FindFilterSetsReq"] = FindFilterSetsReqValidator() + vr["ves.io.schema.filter_set.FindFilterSetsRsp"] = FindFilterSetsRspValidator() + + vr["ves.io.schema.filter_set.CreateSpecType"] = CreateSpecTypeValidator() + vr["ves.io.schema.filter_set.FilterExpressionField"] = FilterExpressionFieldValidator() + vr["ves.io.schema.filter_set.FilterSetField"] = FilterSetFieldValidator() + vr["ves.io.schema.filter_set.FilterStringField"] = FilterStringFieldValidator() + vr["ves.io.schema.filter_set.FilterTimeRangeField"] = FilterTimeRangeFieldValidator() + vr["ves.io.schema.filter_set.GetSpecType"] = GetSpecTypeValidator() + vr["ves.io.schema.filter_set.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.filter_set.ReplaceSpecType"] = ReplaceSpecTypeValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + mdr.EntryFactory["ves.io.schema.filter_set.Object"] = NewEntryObject + mdr.EntryStoreMap["ves.io.schema.filter_set.Object"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.filter_set.Object"] = reflect.TypeOf(&DBObject{}) + mdr.EntryIndexers["ves.io.schema.filter_set.Object"] = GetObjectIndexers + mdr.EntryFactory["ves.io.schema.filter_set.StatusObject"] = NewEntryStatusObject + mdr.EntryStoreMap["ves.io.schema.filter_set.StatusObject"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.filter_set.StatusObject"] = reflect.TypeOf(&DBStatusObject{}) + mdr.EntryIndexers["ves.io.schema.filter_set.StatusObject"] = GetStatusObjectIndexers + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.filter_set.API.Create"] = []string{ + "spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.API.Create"] = []string{ + "spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.API.Get"] = []string{ + "create_form.spec.filter_fields.#.label_selector_field", + "replace_form.spec.filter_fields.#.label_selector_field", + "spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.API.List"] = []string{ + "items.#.get_spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.filter_set.API.Replace"] = []string{ + "spec.filter_fields.#.label_selector_field", + } + + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.filter_set.CustomAPI.FindFilterSets"] = []string{ + "filter_sets.#.spec.gc_spec.filter_fields.#.label_selector_field", + } + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + sm["ves.io.schema.filter_set.API"] = "config" + sm["ves.io.schema.filter_set.CustomAPI"] = "config" + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + + sm["config"] = svcfw.P0PolicyInfo{ + Name: "ves-io-allow-config", + ServiceSelector: "akar\\.gc.*\\", + } + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + + csr = mdr.PubCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.filter_set.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.filter_set.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.filter_set.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.filter_set.Object"] = NewCRUDAPIServer + + }() + + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + + customCSR.SwaggerRegistry["ves.io.schema.filter_set.Object"] = CustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.filter_set.CustomAPI"] = NewCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.filter_set.CustomAPI"] = NewCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.filter_set.CustomAPI"] = RegisterCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.filter_set.CustomAPI"] = RegisterGwCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.filter_set.CustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewCustomAPIServer(svc) + } + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/filter_set/public_crudapi.pb.go b/pbgo/extschema/schema/filter_set/public_crudapi.pb.go new file mode 100644 index 000000000..6c151f06f --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_crudapi.pb.go @@ -0,0 +1,5458 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/filter_set/public_crudapi.proto + +// filter set +// +// x-displayName: "Filter Set" +// Filter Set is a set of saved filtering criteria used in the Console. This allows users to declare +// named sets of filters so that they can be consistently used and shared to quickly reactivate a +// particular view of the data in the Console. +// +// Any Filter Set created by a tenant should not have a value starting with "ves-io-" + +package filter_set + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// GetResponseFormatCode +// +// x-displayName: "Get Response Format" +// This is the various forms that can be requested to be sent in the GetResponse +type GetResponseFormatCode int32 + +const ( + // x-displayName: "Default Format" + // Default format of returned resource + GET_RSP_FORMAT_DEFAULT GetResponseFormatCode = 0 + // x-displayName: "Create request Format" + // Response should be in CreateRequest format + GET_RSP_FORMAT_FOR_CREATE GetResponseFormatCode = 1 + // x-displayName: "Replace request format" + // Response should be in ReplaceRequest format + GET_RSP_FORMAT_FOR_REPLACE GetResponseFormatCode = 2 + // x-displayName: "Status format" + // Response should be in StatusObject(s) format + GET_RSP_FORMAT_STATUS GetResponseFormatCode = 3 + // x-displayName: "GetSpecType format" + // Response should be in format of GetSpecType + GET_RSP_FORMAT_READ GetResponseFormatCode = 4 + // x-displayName: "Referring Objects" + // Response should have other objects referring to this object + GET_RSP_FORMAT_REFERRING_OBJECTS GetResponseFormatCode = 5 + // x-displayName: "Broken Referred Objects" + // Response should have deleted and disabled objects referrred by this object + GET_RSP_FORMAT_BROKEN_REFERENCES GetResponseFormatCode = 6 +) + +var GetResponseFormatCode_name = map[int32]string{ + 0: "GET_RSP_FORMAT_DEFAULT", + 1: "GET_RSP_FORMAT_FOR_CREATE", + 2: "GET_RSP_FORMAT_FOR_REPLACE", + 3: "GET_RSP_FORMAT_STATUS", + 4: "GET_RSP_FORMAT_READ", + 5: "GET_RSP_FORMAT_REFERRING_OBJECTS", + 6: "GET_RSP_FORMAT_BROKEN_REFERENCES", +} + +var GetResponseFormatCode_value = map[string]int32{ + "GET_RSP_FORMAT_DEFAULT": 0, + "GET_RSP_FORMAT_FOR_CREATE": 1, + "GET_RSP_FORMAT_FOR_REPLACE": 2, + "GET_RSP_FORMAT_STATUS": 3, + "GET_RSP_FORMAT_READ": 4, + "GET_RSP_FORMAT_REFERRING_OBJECTS": 5, + "GET_RSP_FORMAT_BROKEN_REFERENCES": 6, +} + +func (GetResponseFormatCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{0} +} + +// CreateRequest is used to create an instance of filter_set +// +// x-displayName: "Create Request" +// This is the input message of the 'Create' RPC +type CreateRequest struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes that can be set during create for all configuration objects like name, labels etc. + Metadata *schema.ObjectCreateMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object to be created + Spec *CreateSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *CreateRequest) Reset() { *m = CreateRequest{} } +func (*CreateRequest) ProtoMessage() {} +func (*CreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{0} +} +func (m *CreateRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateRequest.Merge(m, src) +} +func (m *CreateRequest) XXX_Size() int { + return m.Size() +} +func (m *CreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateRequest proto.InternalMessageInfo + +func (m *CreateRequest) GetMetadata() *schema.ObjectCreateMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *CreateRequest) GetSpec() *CreateSpecType { + if m != nil { + return m.Spec + } + return nil +} + +type CreateResponse struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata + // + // x-displayName: "System Metadata" + // System generated attributes all this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,3,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object created + Spec *GetSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *CreateResponse) Reset() { *m = CreateResponse{} } +func (*CreateResponse) ProtoMessage() {} +func (*CreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{1} +} +func (m *CreateResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateResponse.Merge(m, src) +} +func (m *CreateResponse) XXX_Size() int { + return m.Size() +} +func (m *CreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CreateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateResponse proto.InternalMessageInfo + +func (m *CreateResponse) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *CreateResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *CreateResponse) GetSpec() *GetSpecType { + if m != nil { + return m.Spec + } + return nil +} + +// ReplaceRequest is used to replace contents of a filter_set +// +// x-displayName: "Replace Request" +// This is the input message of the 'Replace' RPC +type ReplaceRequest struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes that can be set during replace for all configuration objects like labels etc. + Metadata *schema.ObjectReplaceMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object to be replaced + Spec *ReplaceSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` + // resource_version + // + // x-displayName: "Resource Version" + // x-example: "42" + // If provided, do the replace operation if the configuration object is still at 'resource_version' + ResourceVersion string `protobuf:"bytes,3,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` +} + +func (m *ReplaceRequest) Reset() { *m = ReplaceRequest{} } +func (*ReplaceRequest) ProtoMessage() {} +func (*ReplaceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{2} +} +func (m *ReplaceRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceRequest.Merge(m, src) +} +func (m *ReplaceRequest) XXX_Size() int { + return m.Size() +} +func (m *ReplaceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceRequest proto.InternalMessageInfo + +func (m *ReplaceRequest) GetMetadata() *schema.ObjectReplaceMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ReplaceRequest) GetSpec() *ReplaceSpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ReplaceRequest) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +type ReplaceResponse struct { +} + +func (m *ReplaceResponse) Reset() { *m = ReplaceResponse{} } +func (*ReplaceResponse) ProtoMessage() {} +func (*ReplaceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{3} +} +func (m *ReplaceResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceResponse.Merge(m, src) +} +func (m *ReplaceResponse) XXX_Size() int { + return m.Size() +} +func (m *ReplaceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceResponse proto.InternalMessageInfo + +// GetRequest is used to get different forms of a filter_set +// +// x-displayName: "Get Request" +// This is the input message of the 'Get' RPC. Different forms of a resource +// for e.g. a ReplaceRequest form (for editing), a CreateRequest form (for +// creating new instance of filter_set) etc. can be fetched +type GetRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of the configuration object to be fetched + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // response_format + // + // x-displayName: "Response Format" + // The format in which the configuration object is to be fetched. This could be for example + // - in GetSpec form for the contents of object + // - in CreateRequest form to create a new similar object + // - to ReplaceRequest form to replace changeable values + ResponseFormat GetResponseFormatCode `protobuf:"varint,3,opt,name=response_format,json=responseFormat,proto3,enum=ves.io.schema.filter_set.GetResponseFormatCode" json:"response_format,omitempty"` +} + +func (m *GetRequest) Reset() { *m = GetRequest{} } +func (*GetRequest) ProtoMessage() {} +func (*GetRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{4} +} +func (m *GetRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetRequest.Merge(m, src) +} +func (m *GetRequest) XXX_Size() int { + return m.Size() +} +func (m *GetRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetRequest proto.InternalMessageInfo + +func (m *GetRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *GetRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *GetRequest) GetResponseFormat() GetResponseFormatCode { + if m != nil { + return m.ResponseFormat + } + return GET_RSP_FORMAT_DEFAULT +} + +// GetResponse is the shape of a read filter_set +// +// x-displayName: "Get Response" +// This is the output message of the 'Get' RPC +type GetResponse struct { + // create_form + // + // x-displayName: "CreateRequest Format" + // Format used to create a new similar object + CreateForm *CreateRequest `protobuf:"bytes,2,opt,name=create_form,json=createForm,proto3" json:"create_form,omitempty"` + // replace_form + // + // x-displayName: "ReplaceRequest Format" + // Format to replace changeable values in object + ReplaceForm *ReplaceRequest `protobuf:"bytes,3,opt,name=replace_form,json=replaceForm,proto3" json:"replace_form,omitempty"` + // resource_version + // + // x-displayName: "Resource Version" + // x-example: "42" + // Version of the object + ResourceVersion string `protobuf:"bytes,4,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata + // + // x-displayName: "System Metadata" + // System generated attributes of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,7,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object read + Spec *GetSpecType `protobuf:"bytes,6,opt,name=spec,proto3" json:"spec,omitempty"` + // status + // + // x-displayName: "Status" + // The status reported by different services for this configuration object + Status []*StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` + // referring_objects + // + // x-displayName: "Referring Objects" + // The set of objects that are referring to this object in their spec + ReferringObjects []*schema.ObjectRefType `protobuf:"bytes,8,rep,name=referring_objects,json=referringObjects,proto3" json:"referring_objects,omitempty"` + // deleted_referred_objects + // + // x-displayName: "Deleted Referred Objects" + // The set of deleted objects that are referred by this object + DeletedReferredObjects []*schema.ObjectRefType `protobuf:"bytes,9,rep,name=deleted_referred_objects,json=deletedReferredObjects,proto3" json:"deleted_referred_objects,omitempty"` + // disabled_referred_objects + // + // x-displayName: "Disabled Referred Objects" + // The set of deleted objects that are referred by this object + DisabledReferredObjects []*schema.ObjectRefType `protobuf:"bytes,10,rep,name=disabled_referred_objects,json=disabledReferredObjects,proto3" json:"disabled_referred_objects,omitempty"` +} + +func (m *GetResponse) Reset() { *m = GetResponse{} } +func (*GetResponse) ProtoMessage() {} +func (*GetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{5} +} +func (m *GetResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetResponse.Merge(m, src) +} +func (m *GetResponse) XXX_Size() int { + return m.Size() +} +func (m *GetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GetResponse proto.InternalMessageInfo + +func (m *GetResponse) GetCreateForm() *CreateRequest { + if m != nil { + return m.CreateForm + } + return nil +} + +func (m *GetResponse) GetReplaceForm() *ReplaceRequest { + if m != nil { + return m.ReplaceForm + } + return nil +} + +func (m *GetResponse) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *GetResponse) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *GetResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *GetResponse) GetSpec() *GetSpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *GetResponse) GetStatus() []*StatusObject { + if m != nil { + return m.Status + } + return nil +} + +func (m *GetResponse) GetReferringObjects() []*schema.ObjectRefType { + if m != nil { + return m.ReferringObjects + } + return nil +} + +func (m *GetResponse) GetDeletedReferredObjects() []*schema.ObjectRefType { + if m != nil { + return m.DeletedReferredObjects + } + return nil +} + +func (m *GetResponse) GetDisabledReferredObjects() []*schema.ObjectRefType { + if m != nil { + return m.DisabledReferredObjects + } + return nil +} + +// ListRequest is used to get a collection of filter_set +// +// x-displayName: "List Request" +// This is the input message of the 'List' RPC. Fields can be used to control +// scope and filtering of collection. +type ListRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace to scope the listing of filter_set + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // label_filter + // + // x-displayName: "Label Filter" + // x-example: "env in (staging, testing), tier in (web, db)" + // A LabelSelectorType expression that every item in list response will satisfy + LabelFilter string `protobuf:"bytes,2,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // report_fields + // + // x-displayName: "Report Fields" + // x-example: "" + // Extra fields to return along with summary fields + ReportFields []string `protobuf:"bytes,3,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // report_status_fields + // + // x-displayName: "Report Status Fields" + // x-example: "" + // Extra status fields to return along with summary fields + ReportStatusFields []string `protobuf:"bytes,4,rep,name=report_status_fields,json=reportStatusFields,proto3" json:"report_status_fields,omitempty"` +} + +func (m *ListRequest) Reset() { *m = ListRequest{} } +func (*ListRequest) ProtoMessage() {} +func (*ListRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{6} +} +func (m *ListRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListRequest.Merge(m, src) +} +func (m *ListRequest) XXX_Size() int { + return m.Size() +} +func (m *ListRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ListRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ListRequest proto.InternalMessageInfo + +func (m *ListRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListRequest) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ListRequest) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ListRequest) GetReportStatusFields() []string { + if m != nil { + return m.ReportStatusFields + } + return nil +} + +// ListResponseItem is an individual item in a collection of filter_set +// +// x-displayName: "List Item" +// By default a summary of filter_set is returned in 'List'. By setting +// 'report_fields' in the ListRequest more details of each item can be got. +type ListResponseItem struct { + // tenant + // + // x-displayName: "Tenant" + // x-example: "acmecorp" + // The tenant this item belongs to + Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace this item belongs to + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of this filter_set + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // uid + // + // x-displayName: "UID" + // x-example: "d27938ba-967e-40a7-9709-57b8627f9f75" + // The unique uid of this filter_set + Uid string `protobuf:"bytes,3,opt,name=uid,proto3" json:"uid,omitempty"` + // description + // + // x-displayName: "Description" + // The description set for this filter_set + Description string `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"` + // disabled + // + // x-displayName: "Disabled" + // A value of true indicates filter_set is administratively disabled + Disabled bool `protobuf:"varint,12,opt,name=disabled,proto3" json:"disabled,omitempty"` + // labels + // + // x-displayName: "Labels" + // The set of labels present on this filter_set + Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // annotations + // + // x-displayName: "Annotations" + // The set of annotations present on this filter_set + Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // owner_view + // + // x-displayName: "Owner View" + // Reference to the view object that owns this object. + // If there is no view owner, this field will be nil. + // If not nil, this object can only be edited/deleted through the view + OwnerView *schema.ViewRefType `protobuf:"bytes,9,opt,name=owner_view,json=ownerView,proto3" json:"owner_view,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // If list request has report_fields set then metadata will + // contain all the metadata associated with the object. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,13,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // If list request has report_fields set then system_metadata will + // contain all the system generated details of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,14,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // get_spec + // + // x-displayName: "Get Specification" + // If ListRequest has any specified report_fields, it will appear in object + GetSpec *GetSpecType `protobuf:"bytes,7,opt,name=get_spec,json=getSpec,proto3" json:"get_spec,omitempty"` + // status + // + // x-displayName: "Status" + // The status reported by different services for this configuration object + StatusSet []*StatusObject `protobuf:"bytes,8,rep,name=status_set,json=statusSet,proto3" json:"status_set,omitempty"` +} + +func (m *ListResponseItem) Reset() { *m = ListResponseItem{} } +func (*ListResponseItem) ProtoMessage() {} +func (*ListResponseItem) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{7} +} +func (m *ListResponseItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListResponseItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListResponseItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListResponseItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponseItem.Merge(m, src) +} +func (m *ListResponseItem) XXX_Size() int { + return m.Size() +} +func (m *ListResponseItem) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponseItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ListResponseItem proto.InternalMessageInfo + +func (m *ListResponseItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ListResponseItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListResponseItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ListResponseItem) GetUid() string { + if m != nil { + return m.Uid + } + return "" +} + +func (m *ListResponseItem) GetDescription() string { + if m != nil { + return m.Description + } + return "" +} + +func (m *ListResponseItem) GetDisabled() bool { + if m != nil { + return m.Disabled + } + return false +} + +func (m *ListResponseItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +func (m *ListResponseItem) GetAnnotations() map[string]string { + if m != nil { + return m.Annotations + } + return nil +} + +func (m *ListResponseItem) GetOwnerView() *schema.ViewRefType { + if m != nil { + return m.OwnerView + } + return nil +} + +func (m *ListResponseItem) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ListResponseItem) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ListResponseItem) GetGetSpec() *GetSpecType { + if m != nil { + return m.GetSpec + } + return nil +} + +func (m *ListResponseItem) GetStatusSet() []*StatusObject { + if m != nil { + return m.StatusSet + } + return nil +} + +// ListResponse is the collection of filter_set +// +// x-displayName: "List Response" +// This is the output message of 'List' RPC. +type ListResponse struct { + // items + // + // x-displayName: "Items" + // items represents the collection in response + Items []*ListResponseItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` + // errors + // + // x-displayName: "Errors" + // Errors(if any) while listing items from collection + Errors []*schema.ErrorType `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` +} + +func (m *ListResponse) Reset() { *m = ListResponse{} } +func (*ListResponse) ProtoMessage() {} +func (*ListResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{8} +} +func (m *ListResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponse.Merge(m, src) +} +func (m *ListResponse) XXX_Size() int { + return m.Size() +} +func (m *ListResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ListResponse proto.InternalMessageInfo + +func (m *ListResponse) GetItems() []*ListResponseItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ListResponse) GetErrors() []*schema.ErrorType { + if m != nil { + return m.Errors + } + return nil +} + +// DeleteRequest is used to delete a filter_set +// +// x-displayName: "Delete Request" +// This is the input message of the 'Delete' RPC. +type DeleteRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // Name of the configuration object + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // fail_if_referred + // + // x-displayName: "Fail-If-Referred" + // Fail the delete operation if this object is being referred by other objects + FailIfReferred bool `protobuf:"varint,3,opt,name=fail_if_referred,json=failIfReferred,proto3" json:"fail_if_referred,omitempty"` +} + +func (m *DeleteRequest) Reset() { *m = DeleteRequest{} } +func (*DeleteRequest) ProtoMessage() {} +func (*DeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0f34d8bd61955a61, []int{9} +} +func (m *DeleteRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DeleteRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteRequest.Merge(m, src) +} +func (m *DeleteRequest) XXX_Size() int { + return m.Size() +} +func (m *DeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo + +func (m *DeleteRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *DeleteRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *DeleteRequest) GetFailIfReferred() bool { + if m != nil { + return m.FailIfReferred + } + return false +} + +func init() { + proto.RegisterEnum("ves.io.schema.filter_set.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + golang_proto.RegisterEnum("ves.io.schema.filter_set.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.filter_set.CreateRequest") + golang_proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.filter_set.CreateRequest") + proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.filter_set.CreateResponse") + golang_proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.filter_set.CreateResponse") + proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.filter_set.ReplaceRequest") + golang_proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.filter_set.ReplaceRequest") + proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.filter_set.ReplaceResponse") + golang_proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.filter_set.ReplaceResponse") + proto.RegisterType((*GetRequest)(nil), "ves.io.schema.filter_set.GetRequest") + golang_proto.RegisterType((*GetRequest)(nil), "ves.io.schema.filter_set.GetRequest") + proto.RegisterType((*GetResponse)(nil), "ves.io.schema.filter_set.GetResponse") + golang_proto.RegisterType((*GetResponse)(nil), "ves.io.schema.filter_set.GetResponse") + proto.RegisterType((*ListRequest)(nil), "ves.io.schema.filter_set.ListRequest") + golang_proto.RegisterType((*ListRequest)(nil), "ves.io.schema.filter_set.ListRequest") + proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.filter_set.ListResponseItem") + golang_proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.filter_set.ListResponseItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.filter_set.ListResponseItem.AnnotationsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.filter_set.ListResponseItem.AnnotationsEntry") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.filter_set.ListResponseItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.filter_set.ListResponseItem.LabelsEntry") + proto.RegisterType((*ListResponse)(nil), "ves.io.schema.filter_set.ListResponse") + golang_proto.RegisterType((*ListResponse)(nil), "ves.io.schema.filter_set.ListResponse") + proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.filter_set.DeleteRequest") + golang_proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.filter_set.DeleteRequest") +} + +func init() { + proto.RegisterFile("ves.io/schema/filter_set/public_crudapi.proto", fileDescriptor_0f34d8bd61955a61) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/filter_set/public_crudapi.proto", fileDescriptor_0f34d8bd61955a61) +} + +var fileDescriptor_0f34d8bd61955a61 = []byte{ + // 1607 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x13, 0x47, + 0x17, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb3, 0xcc, 0x07, 0xc1, 0xf1, 0xc7, 0xe7, 0xcf, 0x35, + 0x09, 0x0d, 0x11, 0x5e, 0xd3, 0xa0, 0x22, 0x48, 0x2b, 0x8a, 0xe3, 0x6c, 0x42, 0x42, 0xfe, 0xa0, + 0xb5, 0x41, 0x08, 0xa9, 0x5a, 0xad, 0xd7, 0x63, 0xb3, 0xc5, 0xde, 0xdd, 0xee, 0x8c, 0x03, 0x51, + 0x15, 0xa9, 0x8a, 0xda, 0x43, 0x7b, 0x42, 0xea, 0xa5, 0x42, 0x3d, 0xf4, 0x52, 0xa9, 0xea, 0xb9, + 0x87, 0x4a, 0xb9, 0x70, 0x2b, 0xe2, 0x50, 0x45, 0xed, 0x05, 0xb5, 0x12, 0x2a, 0x4e, 0x0f, 0x1c, + 0x51, 0x0f, 0xbd, 0xf4, 0x52, 0xed, 0xcc, 0xae, 0xb1, 0x1d, 0x9b, 0x38, 0x90, 0x9e, 0xb2, 0xf3, + 0xde, 0xfb, 0xfd, 0xf6, 0xfd, 0x66, 0xde, 0x7b, 0x19, 0x2f, 0x4c, 0xad, 0x61, 0x22, 0xea, 0x66, + 0x9a, 0x68, 0xb7, 0x70, 0x55, 0x4d, 0x97, 0xf4, 0x0a, 0xc5, 0xb6, 0x42, 0x30, 0x4d, 0x5b, 0xb5, + 0x42, 0x45, 0xd7, 0x14, 0xcd, 0xae, 0x15, 0x55, 0x4b, 0x17, 0x2d, 0xdb, 0xa4, 0x26, 0x8a, 0xf2, + 0x70, 0x91, 0x87, 0x8b, 0x2f, 0xc2, 0x63, 0xa9, 0xb2, 0x4e, 0x6f, 0xd5, 0x0a, 0xa2, 0x66, 0x56, + 0xd3, 0x65, 0xb3, 0x6c, 0xa6, 0x19, 0xa0, 0x50, 0x2b, 0xb1, 0x15, 0x5b, 0xb0, 0x27, 0x4e, 0x14, + 0x3b, 0x5e, 0x36, 0xcd, 0x72, 0x05, 0xa7, 0x55, 0x4b, 0x4f, 0xab, 0x86, 0x61, 0x52, 0x95, 0xea, + 0xa6, 0x41, 0x5c, 0xef, 0x7f, 0x5d, 0x6f, 0x83, 0x03, 0x57, 0x2d, 0xba, 0xee, 0x3a, 0x63, 0xad, + 0x29, 0x63, 0xdb, 0x36, 0x6d, 0x0f, 0x38, 0xde, 0x55, 0x8e, 0x59, 0xf8, 0x00, 0x6b, 0xd4, 0x0d, + 0x1b, 0xeb, 0x1a, 0x46, 0xd7, 0x2d, 0xdc, 0xc8, 0xa2, 0x35, 0xca, 0xb4, 0x9a, 0x53, 0x1c, 0x6d, + 0x75, 0x36, 0xe3, 0x92, 0xad, 0xae, 0x35, 0x4c, 0xb0, 0xb1, 0xd6, 0x06, 0x4f, 0xb4, 0xc5, 0xe8, + 0xf8, 0x8e, 0xd2, 0x12, 0x91, 0xfc, 0x0e, 0xc0, 0xc1, 0xac, 0x8d, 0x55, 0x8a, 0x65, 0xfc, 0x61, + 0x0d, 0x13, 0x8a, 0xde, 0x83, 0xa1, 0x2a, 0xa6, 0x6a, 0x51, 0xa5, 0x6a, 0x14, 0x24, 0xc0, 0x44, + 0x64, 0xea, 0x84, 0xd8, 0x7a, 0x1e, 0xab, 0x4c, 0x24, 0x47, 0x2d, 0x63, 0xaa, 0xe6, 0xd7, 0x2d, + 0x2c, 0x37, 0x40, 0x68, 0x19, 0x06, 0x88, 0x85, 0xb5, 0xa8, 0x8f, 0x81, 0x27, 0xc4, 0x6e, 0x87, + 0x29, 0x72, 0x86, 0x9c, 0x85, 0x35, 0x87, 0x61, 0x66, 0xf8, 0xfe, 0xc6, 0x80, 0x03, 0x14, 0xcb, + 0x9a, 0xe2, 0xfc, 0x95, 0x19, 0xcd, 0x74, 0xf8, 0xd1, 0xc5, 0x20, 0x7f, 0x63, 0xf2, 0x2f, 0x00, + 0x87, 0xbc, 0x64, 0x89, 0x65, 0x1a, 0x04, 0xa3, 0x77, 0x77, 0x65, 0x9b, 0xe8, 0x98, 0xed, 0x3c, + 0xa6, 0x1d, 0x52, 0x5d, 0x85, 0xc3, 0x64, 0x9d, 0x50, 0x5c, 0x55, 0x1a, 0x24, 0x7e, 0x46, 0x72, + 0xb2, 0x8d, 0x24, 0xc7, 0xa2, 0x76, 0x53, 0x0d, 0x71, 0xf8, 0xb2, 0x47, 0xb8, 0xd8, 0xa2, 0x7d, + 0xbc, 0xbb, 0xf6, 0x79, 0x4c, 0xf7, 0x21, 0xfc, 0x09, 0x80, 0x43, 0x32, 0xb6, 0x2a, 0xaa, 0xd6, + 0x38, 0xa6, 0x4b, 0xbb, 0x84, 0x8f, 0x75, 0x14, 0xee, 0xc2, 0x3a, 0x88, 0x5f, 0x69, 0xc9, 0xf5, + 0x54, 0xf7, 0x5c, 0x5d, 0x8a, 0x3d, 0xf2, 0x45, 0x69, 0x28, 0xd8, 0x98, 0x98, 0x35, 0x5b, 0xc3, + 0xca, 0x1a, 0xb6, 0x89, 0x6e, 0x1a, 0x6c, 0x37, 0xc3, 0x33, 0x81, 0x67, 0x5b, 0x00, 0xc8, 0xc3, + 0x9e, 0xf7, 0x3a, 0x77, 0x36, 0x0b, 0x3c, 0x0c, 0x87, 0x1b, 0xfa, 0xf8, 0xc9, 0x26, 0xbf, 0x04, + 0x10, 0xce, 0x63, 0xea, 0xe9, 0x3d, 0x0e, 0xc3, 0x86, 0x5a, 0xc5, 0xc4, 0x52, 0x35, 0xcc, 0x04, + 0x87, 0xe5, 0x17, 0x06, 0x84, 0x60, 0xc0, 0x59, 0x30, 0x2d, 0x61, 0x99, 0x3d, 0xa3, 0x1b, 0xd0, + 0x79, 0x23, 0x23, 0x53, 0x4a, 0xa6, 0x5d, 0x55, 0x29, 0x4b, 0x67, 0x68, 0x2a, 0xfd, 0xd2, 0x63, + 0xf1, 0x12, 0x98, 0x63, 0x90, 0xac, 0x59, 0xc4, 0xf2, 0x90, 0xdd, 0x62, 0x4b, 0x7e, 0x1a, 0x84, + 0x91, 0xa6, 0x48, 0x74, 0x19, 0x46, 0x34, 0x56, 0x96, 0xec, 0x3d, 0xee, 0x86, 0xbe, 0xb9, 0x57, + 0xe1, 0xbb, 0xca, 0x64, 0xc8, 0xb1, 0x0e, 0x37, 0xba, 0x02, 0x07, 0x6c, 0xbe, 0x0f, 0x9c, 0xca, + 0xbf, 0x57, 0x0f, 0xb5, 0x56, 0x85, 0x1c, 0x71, 0xd1, 0x8c, 0xac, 0xd3, 0x81, 0x04, 0x5e, 0x72, + 0x20, 0x2d, 0xcd, 0xd4, 0x7f, 0x10, 0xcd, 0x74, 0xe8, 0x40, 0x9a, 0x29, 0xf8, 0xfa, 0xcd, 0x84, + 0x24, 0x18, 0x24, 0x54, 0xa5, 0x35, 0x12, 0xfd, 0xfa, 0x2b, 0x90, 0xf0, 0x77, 0xc8, 0xaa, 0x89, + 0x2f, 0xc7, 0x22, 0x79, 0x82, 0x33, 0xfe, 0x07, 0x1b, 0x40, 0x76, 0xc1, 0x68, 0x01, 0x1e, 0xb6, + 0x71, 0x09, 0xdb, 0xb6, 0x6e, 0x94, 0x15, 0x3e, 0xec, 0x49, 0x34, 0xc4, 0xf8, 0x8e, 0x77, 0x69, + 0xbf, 0x12, 0xd3, 0x26, 0x34, 0x60, 0xdc, 0x4e, 0xd0, 0x75, 0x18, 0x2d, 0xe2, 0x0a, 0xa6, 0xb8, + 0xa8, 0x70, 0x1f, 0x2e, 0x36, 0x18, 0xc3, 0x3d, 0x30, 0x8e, 0xb8, 0x68, 0xd9, 0x05, 0x7b, 0xbc, + 0x37, 0xe0, 0x68, 0x51, 0x27, 0x6a, 0xa1, 0xd2, 0x89, 0x18, 0xf6, 0x40, 0x7c, 0xcc, 0x83, 0xb7, + 0x31, 0x37, 0xf5, 0xeb, 0x62, 0x20, 0x04, 0x04, 0x5f, 0xf2, 0x1b, 0x00, 0x23, 0x4b, 0x3a, 0xe9, + 0xb1, 0x47, 0xdf, 0x80, 0x03, 0x15, 0xb5, 0x80, 0x2b, 0x0a, 0xdf, 0x69, 0xb7, 0x57, 0x23, 0xcc, + 0x36, 0xc7, 0x4c, 0xe8, 0x04, 0x1c, 0xb4, 0xb1, 0x65, 0xda, 0x54, 0x29, 0xe9, 0xb8, 0x52, 0x24, + 0x51, 0x7f, 0xc2, 0x3f, 0x11, 0x96, 0x07, 0xb8, 0x71, 0x8e, 0xd9, 0xd0, 0x19, 0x78, 0xc4, 0x0d, + 0xe2, 0x87, 0xe2, 0xc5, 0x06, 0x58, 0x2c, 0xe2, 0x3e, 0x7e, 0x84, 0x1c, 0x91, 0xfc, 0x3e, 0x08, + 0x05, 0x9e, 0x27, 0x6f, 0xd8, 0x05, 0x8a, 0xab, 0x68, 0x04, 0x06, 0x29, 0x36, 0x54, 0x83, 0xb2, + 0xfa, 0x0a, 0xcb, 0xee, 0xea, 0x15, 0x06, 0x8d, 0x00, 0xfd, 0x35, 0xbd, 0xc8, 0x67, 0x9d, 0xec, + 0x3c, 0xa2, 0x04, 0x8c, 0x14, 0x31, 0xd1, 0x6c, 0x9d, 0xfd, 0xaf, 0x8d, 0x46, 0xb8, 0xd2, 0x26, + 0x13, 0x8a, 0xc1, 0x90, 0xb7, 0xcd, 0xd1, 0x81, 0x04, 0x98, 0x08, 0xc9, 0x8d, 0x35, 0x5a, 0x81, + 0x41, 0xb6, 0x29, 0x5c, 0x52, 0x64, 0xea, 0x5c, 0xf7, 0x4a, 0x6d, 0x57, 0x25, 0x2e, 0x31, 0xa0, + 0x64, 0x50, 0x7b, 0x5d, 0x76, 0x59, 0xd0, 0xfb, 0x30, 0xd2, 0x74, 0xf9, 0x71, 0x6b, 0xe0, 0x9d, + 0x7d, 0x90, 0x66, 0x5e, 0xa0, 0x39, 0x73, 0x33, 0x1f, 0xba, 0x00, 0xa1, 0x79, 0xc7, 0xc0, 0xb6, + 0xe2, 0x5c, 0x2f, 0xa2, 0x61, 0xd6, 0xac, 0xb1, 0x36, 0xf6, 0xeb, 0x3a, 0xbe, 0xe3, 0xd5, 0x57, + 0x98, 0x45, 0x3b, 0x96, 0x96, 0x81, 0x33, 0x78, 0x10, 0x03, 0x67, 0xe8, 0xb5, 0x06, 0xce, 0x25, + 0x18, 0x2a, 0x63, 0xca, 0xc6, 0x86, 0x3b, 0xba, 0x7a, 0x1b, 0x3a, 0xf2, 0xa1, 0x32, 0x5f, 0xa0, + 0x45, 0x08, 0xdd, 0xa2, 0x24, 0x98, 0xba, 0x83, 0x61, 0x5f, 0x83, 0x26, 0xcc, 0xe1, 0x39, 0x4c, + 0x63, 0x17, 0x60, 0xa4, 0xe9, 0x34, 0x9d, 0x2a, 0xbb, 0x8d, 0xd7, 0xdd, 0x8a, 0x74, 0x1e, 0xd1, + 0x11, 0xd8, 0xbf, 0xa6, 0x56, 0x6a, 0x5e, 0x31, 0xf2, 0xc5, 0xb4, 0xef, 0x3c, 0x88, 0x5d, 0x84, + 0x42, 0xfb, 0x99, 0xed, 0x07, 0xbf, 0x18, 0x08, 0xf5, 0x0b, 0xc1, 0xe4, 0x26, 0x80, 0x03, 0xcd, + 0xb5, 0x80, 0x2e, 0xc1, 0x7e, 0x9d, 0xe2, 0x2a, 0x89, 0xf2, 0x09, 0x3a, 0xd9, 0x7b, 0x09, 0xc9, + 0x1c, 0x88, 0xce, 0xc0, 0x20, 0xbf, 0x49, 0x47, 0x7d, 0x8c, 0x22, 0xda, 0x46, 0x21, 0x39, 0x4e, + 0xb6, 0xa5, 0x6e, 0x5c, 0xf2, 0x36, 0x1c, 0x9c, 0x65, 0x83, 0xee, 0xd5, 0x2f, 0x02, 0x13, 0x50, + 0x28, 0xa9, 0x7a, 0x45, 0xd1, 0x4b, 0x8d, 0x81, 0xc8, 0x9a, 0x35, 0x24, 0x0f, 0x39, 0xf6, 0x85, + 0x92, 0x37, 0xe8, 0x26, 0xff, 0x04, 0xf0, 0x68, 0xc7, 0x2b, 0x00, 0x8a, 0xc1, 0x91, 0x79, 0x29, + 0xaf, 0xc8, 0xb9, 0xab, 0xca, 0xdc, 0xaa, 0xbc, 0x9c, 0xc9, 0x2b, 0xb3, 0xd2, 0x5c, 0xe6, 0xda, + 0x52, 0x5e, 0xe8, 0x43, 0xff, 0x83, 0xa3, 0x6d, 0xbe, 0xb9, 0x55, 0x59, 0xc9, 0xca, 0x52, 0x26, + 0x2f, 0x09, 0x00, 0xc5, 0x61, 0xac, 0x83, 0x5b, 0x96, 0xae, 0x2e, 0x65, 0xb2, 0x92, 0xe0, 0x43, + 0xa3, 0xf0, 0x68, 0x9b, 0x3f, 0x97, 0xcf, 0xe4, 0xaf, 0xe5, 0x04, 0x3f, 0x3a, 0x06, 0xff, 0xd3, + 0xe6, 0x92, 0xa5, 0xcc, 0xac, 0x10, 0x40, 0x63, 0x30, 0xb1, 0xcb, 0x31, 0x27, 0xc9, 0xf2, 0xc2, + 0xca, 0xbc, 0xb2, 0x3a, 0xb3, 0x28, 0x65, 0xf3, 0x39, 0xa1, 0xbf, 0x43, 0xd4, 0x8c, 0xbc, 0x7a, + 0x45, 0x5a, 0xe1, 0xc1, 0xd2, 0x4a, 0x56, 0xca, 0x09, 0xc1, 0xa9, 0xdf, 0xc2, 0xd0, 0x9f, 0xb9, + 0xba, 0x80, 0x9e, 0x01, 0x18, 0xe4, 0x37, 0x13, 0xd4, 0xeb, 0xdd, 0x25, 0x36, 0xb1, 0x77, 0xa0, + 0x7b, 0x9d, 0xfb, 0x1c, 0xd4, 0x7f, 0x8c, 0x5e, 0x2e, 0xbd, 0x7d, 0x57, 0x4b, 0x15, 0x71, 0x49, + 0xad, 0x55, 0x68, 0x4a, 0xd5, 0x34, 0x4c, 0xc8, 0x69, 0x66, 0xd3, 0x4c, 0x83, 0x98, 0x15, 0x9c, + 0x2a, 0xa8, 0x44, 0xd7, 0x52, 0x55, 0xd3, 0xd0, 0xa9, 0x69, 0xef, 0x72, 0x61, 0xcf, 0xb3, 0xf9, + 0xcb, 0x1f, 0x5f, 0xf8, 0xce, 0x27, 0xcf, 0xba, 0xbf, 0x1f, 0xd3, 0x8d, 0x02, 0x20, 0xe9, 0x8f, + 0xbc, 0x61, 0x20, 0x36, 0x8c, 0x1b, 0x4d, 0xbf, 0xbd, 0xc8, 0x34, 0x98, 0x44, 0x4f, 0x00, 0xf4, + 0xcf, 0x63, 0x8a, 0xc6, 0xf6, 0xb8, 0x09, 0x72, 0x91, 0xe3, 0x3d, 0xdd, 0x17, 0x93, 0x9f, 0x81, + 0x87, 0x3f, 0xf8, 0x0e, 0x5e, 0xe5, 0x59, 0xf4, 0x56, 0x27, 0x95, 0x9d, 0xc5, 0x71, 0xfb, 0x06, + 0xfa, 0x15, 0xc0, 0x80, 0xd3, 0x83, 0x68, 0x7c, 0xaf, 0x1e, 0xe5, 0x12, 0x4f, 0xf6, 0xd6, 0xca, + 0xc9, 0xcd, 0x7f, 0x47, 0xe3, 0x69, 0x34, 0xd9, 0xbb, 0x46, 0xf4, 0x37, 0x80, 0x87, 0xdc, 0x7b, + 0x2f, 0xea, 0xf9, 0x6a, 0x1c, 0x3b, 0xd5, 0x43, 0xa4, 0xab, 0xf2, 0xfe, 0xc1, 0x2b, 0xbc, 0x1c, + 0xcb, 0xbe, 0x42, 0xad, 0xb6, 0x05, 0x6c, 0x38, 0xb5, 0xbb, 0x0d, 0x60, 0x90, 0x4f, 0xc4, 0x97, + 0xb5, 0x69, 0xcb, 0xcc, 0x8c, 0x8d, 0x88, 0xfc, 0x53, 0x87, 0xe8, 0x7d, 0xea, 0x10, 0xa5, 0xaa, + 0x45, 0xd7, 0x93, 0x9f, 0x38, 0x42, 0x67, 0x7b, 0x14, 0xaa, 0x16, 0xab, 0xba, 0xd1, 0x41, 0x26, + 0xb3, 0x33, 0x91, 0xe7, 0x26, 0xf7, 0x5f, 0xaa, 0xd3, 0x60, 0x32, 0x76, 0xf3, 0xc1, 0x16, 0xf0, + 0xfd, 0xbc, 0x05, 0xfe, 0xdf, 0x55, 0x0e, 0xff, 0x17, 0xf9, 0x78, 0x0b, 0x80, 0xfa, 0x16, 0x18, + 0xef, 0xe9, 0xff, 0xe9, 0xe6, 0x4f, 0x51, 0x9f, 0x00, 0x66, 0xee, 0x81, 0x47, 0x17, 0xfb, 0xb3, + 0xf2, 0xb5, 0xd9, 0xa5, 0xed, 0xa7, 0xf1, 0xbe, 0xc7, 0x4f, 0xe3, 0x7d, 0xcf, 0x9f, 0xc6, 0xc1, + 0xc7, 0xf5, 0x38, 0xf8, 0xb6, 0x1e, 0x07, 0x0f, 0xeb, 0x71, 0xb0, 0x5d, 0x8f, 0x83, 0xdf, 0xeb, + 0x71, 0xf0, 0xac, 0x1e, 0xef, 0x7b, 0x5e, 0x8f, 0x83, 0x7b, 0x3b, 0xf1, 0xbe, 0x07, 0x3b, 0x71, + 0xb0, 0xbd, 0x13, 0xef, 0x7b, 0xbc, 0x13, 0xef, 0xbb, 0xb9, 0x52, 0x36, 0xad, 0xdb, 0x65, 0x71, + 0xcd, 0x74, 0xde, 0x63, 0xab, 0x62, 0x8d, 0xa4, 0xd9, 0x83, 0xf3, 0x0b, 0x2d, 0x65, 0xd9, 0xe6, + 0x9a, 0x5e, 0xc4, 0x76, 0xca, 0x73, 0xa7, 0xad, 0x42, 0xd9, 0x4c, 0xe3, 0xbb, 0xd4, 0xfd, 0xe8, + 0xb2, 0xeb, 0xeb, 0x4f, 0x21, 0xc8, 0x4e, 0xe1, 0xec, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x75, + 0x4b, 0x59, 0x38, 0x16, 0x13, 0x00, 0x00, +} + +func (x GetResponseFormatCode) String() string { + s, ok := GetResponseFormatCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *CreateRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateRequest) + if !ok { + that2, ok := that.(CreateRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *CreateResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateResponse) + if !ok { + that2, ok := that.(CreateResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ReplaceRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceRequest) + if !ok { + that2, ok := that.(ReplaceRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + return true +} +func (this *ReplaceResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceResponse) + if !ok { + that2, ok := that.(ReplaceResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *GetRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetRequest) + if !ok { + that2, ok := that.(GetRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.ResponseFormat != that1.ResponseFormat { + return false + } + return true +} +func (this *GetResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetResponse) + if !ok { + that2, ok := that.(GetResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CreateForm.Equal(that1.CreateForm) { + return false + } + if !this.ReplaceForm.Equal(that1.ReplaceForm) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + if len(this.ReferringObjects) != len(that1.ReferringObjects) { + return false + } + for i := range this.ReferringObjects { + if !this.ReferringObjects[i].Equal(that1.ReferringObjects[i]) { + return false + } + } + if len(this.DeletedReferredObjects) != len(that1.DeletedReferredObjects) { + return false + } + for i := range this.DeletedReferredObjects { + if !this.DeletedReferredObjects[i].Equal(that1.DeletedReferredObjects[i]) { + return false + } + } + if len(this.DisabledReferredObjects) != len(that1.DisabledReferredObjects) { + return false + } + for i := range this.DisabledReferredObjects { + if !this.DisabledReferredObjects[i].Equal(that1.DisabledReferredObjects[i]) { + return false + } + } + return true +} +func (this *ListRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListRequest) + if !ok { + that2, ok := that.(ListRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if len(this.ReportStatusFields) != len(that1.ReportStatusFields) { + return false + } + for i := range this.ReportStatusFields { + if this.ReportStatusFields[i] != that1.ReportStatusFields[i] { + return false + } + } + return true +} +func (this *ListResponseItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListResponseItem) + if !ok { + that2, ok := that.(ListResponseItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.Uid != that1.Uid { + return false + } + if this.Description != that1.Description { + return false + } + if this.Disabled != that1.Disabled { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + if len(this.Annotations) != len(that1.Annotations) { + return false + } + for i := range this.Annotations { + if this.Annotations[i] != that1.Annotations[i] { + return false + } + } + if !this.OwnerView.Equal(that1.OwnerView) { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.GetSpec.Equal(that1.GetSpec) { + return false + } + if len(this.StatusSet) != len(that1.StatusSet) { + return false + } + for i := range this.StatusSet { + if !this.StatusSet[i].Equal(that1.StatusSet[i]) { + return false + } + } + return true +} +func (this *ListResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListResponse) + if !ok { + that2, ok := that.(ListResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if len(this.Errors) != len(that1.Errors) { + return false + } + for i := range this.Errors { + if !this.Errors[i].Equal(that1.Errors[i]) { + return false + } + } + return true +} +func (this *DeleteRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DeleteRequest) + if !ok { + that2, ok := that.(DeleteRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.FailIfReferred != that1.FailIfReferred { + return false + } + return true +} +func (this *CreateRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.CreateRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&filter_set.CreateResponse{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&filter_set.ReplaceRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&filter_set.ReplaceResponse{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&filter_set.GetRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "ResponseFormat: "+fmt.Sprintf("%#v", this.ResponseFormat)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 14) + s = append(s, "&filter_set.GetResponse{") + if this.CreateForm != nil { + s = append(s, "CreateForm: "+fmt.Sprintf("%#v", this.CreateForm)+",\n") + } + if this.ReplaceForm != nil { + s = append(s, "ReplaceForm: "+fmt.Sprintf("%#v", this.ReplaceForm)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + if this.ReferringObjects != nil { + s = append(s, "ReferringObjects: "+fmt.Sprintf("%#v", this.ReferringObjects)+",\n") + } + if this.DeletedReferredObjects != nil { + s = append(s, "DeletedReferredObjects: "+fmt.Sprintf("%#v", this.DeletedReferredObjects)+",\n") + } + if this.DisabledReferredObjects != nil { + s = append(s, "DisabledReferredObjects: "+fmt.Sprintf("%#v", this.DisabledReferredObjects)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&filter_set.ListRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ReportStatusFields: "+fmt.Sprintf("%#v", this.ReportStatusFields)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponseItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 17) + s = append(s, "&filter_set.ListResponseItem{") + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Uid: "+fmt.Sprintf("%#v", this.Uid)+",\n") + s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") + s = append(s, "Disabled: "+fmt.Sprintf("%#v", this.Disabled)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + if this.Annotations != nil { + s = append(s, "Annotations: "+mapStringForAnnotations+",\n") + } + if this.OwnerView != nil { + s = append(s, "OwnerView: "+fmt.Sprintf("%#v", this.OwnerView)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.GetSpec != nil { + s = append(s, "GetSpec: "+fmt.Sprintf("%#v", this.GetSpec)+",\n") + } + if this.StatusSet != nil { + s = append(s, "StatusSet: "+fmt.Sprintf("%#v", this.StatusSet)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.ListResponse{") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Errors != nil { + s = append(s, "Errors: "+fmt.Sprintf("%#v", this.Errors)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DeleteRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&filter_set.DeleteRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "FailIfReferred: "+fmt.Sprintf("%#v", this.FailIfReferred)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCrudapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + // Create Specification + // + // x-displayName: "Create Specification" + // Create specification + Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) + // Get Specification + // + // x-displayName: "Get Specification" + // Get specification + Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) + // List + // + // x-displayName: "List Filter Set" + // List the set of filter_set in a namespace + List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) + // Replace Specification + // + // x-displayName: "Replace Specification" + // Replace specification + Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) + // Delete + // + // x-displayName: "Delete Filter Set" + // Delete the specified filter_set + Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + out := new(CreateResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + out := new(GetResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + out := new(ReplaceResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) { + out := new(types.Empty) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + // Create Specification + // + // x-displayName: "Create Specification" + // Create specification + Create(context.Context, *CreateRequest) (*CreateResponse, error) + // Get Specification + // + // x-displayName: "Get Specification" + // Get specification + Get(context.Context, *GetRequest) (*GetResponse, error) + // List + // + // x-displayName: "List Filter Set" + // List the set of filter_set in a namespace + List(context.Context, *ListRequest) (*ListResponse, error) + // Replace Specification + // + // x-displayName: "Replace Specification" + // Replace specification + Replace(context.Context, *ReplaceRequest) (*ReplaceResponse, error) + // Delete + // + // x-displayName: "Delete Filter Set" + // Delete the specified filter_set + Delete(context.Context, *DeleteRequest) (*types.Empty, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*types.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*CreateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*GetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReplaceRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ReplaceRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*DeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.filter_set.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/filter_set/public_crudapi.proto", +} + +func (m *CreateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CreateResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x1a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *GetRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResponseFormat != 0 { + i = encodeVarintPublicCrudapi(dAtA, i, uint64(m.ResponseFormat)) + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.DisabledReferredObjects) > 0 { + for iNdEx := len(m.DisabledReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DisabledReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + } + if len(m.DeletedReferredObjects) > 0 { + for iNdEx := len(m.DeletedReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DeletedReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + } + if len(m.ReferringObjects) > 0 { + for iNdEx := len(m.ReferringObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ReferringObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x22 + } + if m.ReplaceForm != nil { + { + size, err := m.ReplaceForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.CreateForm != nil { + { + size, err := m.CreateForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *ListRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ReportStatusFields) > 0 { + for iNdEx := len(m.ReportStatusFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportStatusFields[iNdEx]) + copy(dAtA[i:], m.ReportStatusFields[iNdEx]) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportStatusFields[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponseItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponseItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponseItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + if m.Disabled { + i-- + if m.Disabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x60 + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x5a + } + if len(m.Annotations) > 0 { + for k := range m.Annotations { + v := m.Annotations[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x52 + } + } + if m.OwnerView != nil { + { + size, err := m.OwnerView.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if len(m.StatusSet) > 0 { + for iNdEx := len(m.StatusSet) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.StatusSet[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.GetSpec != nil { + { + size, err := m.GetSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x32 + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x22 + } + } + if len(m.Uid) > 0 { + i -= len(m.Uid) + copy(dAtA[i:], m.Uid) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Uid))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Errors) > 0 { + for iNdEx := len(m.Errors) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Errors[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *DeleteRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DeleteRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DeleteRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FailIfReferred { + i-- + if m.FailIfReferred { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCrudapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCrudapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *CreateRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *CreateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ReplaceRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ReplaceResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *GetRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.ResponseFormat != 0 { + n += 1 + sovPublicCrudapi(uint64(m.ResponseFormat)) + } + return n +} + +func (m *GetResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CreateForm != nil { + l = m.CreateForm.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.ReplaceForm != nil { + l = m.ReplaceForm.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.ReferringObjects) > 0 { + for _, e := range m.ReferringObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.DeletedReferredObjects) > 0 { + for _, e := range m.DeletedReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.DisabledReferredObjects) > 0 { + for _, e := range m.DisabledReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *ListRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.LabelFilter) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.ReportStatusFields) > 0 { + for _, s := range m.ReportStatusFields { + l = len(s) + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *ListResponseItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Uid) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) + } + } + l = len(m.Tenant) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.GetSpec != nil { + l = m.GetSpec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.StatusSet) > 0 { + for _, e := range m.StatusSet { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if m.OwnerView != nil { + l = m.OwnerView.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.Annotations) > 0 { + for k, v := range m.Annotations { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) + } + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Disabled { + n += 2 + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ListResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.Errors) > 0 { + for _, e := range m.Errors { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *DeleteRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.FailIfReferred { + n += 2 + } + return n +} + +func sovPublicCrudapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCrudapi(x uint64) (n int) { + return sovPublicCrudapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *CreateRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateResponse{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectReplaceMetaType", "schema.ObjectReplaceMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ReplaceSpecType", "ReplaceSpecType", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceResponse{`, + `}`, + }, "") + return s +} +func (this *GetRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ResponseFormat:` + fmt.Sprintf("%v", this.ResponseFormat) + `,`, + `}`, + }, "") + return s +} +func (this *GetResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForReferringObjects := "[]*ObjectRefType{" + for _, f := range this.ReferringObjects { + repeatedStringForReferringObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForReferringObjects += "}" + repeatedStringForDeletedReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DeletedReferredObjects { + repeatedStringForDeletedReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDeletedReferredObjects += "}" + repeatedStringForDisabledReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DisabledReferredObjects { + repeatedStringForDisabledReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDisabledReferredObjects += "}" + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + s := strings.Join([]string{`&GetResponse{`, + `CreateForm:` + strings.Replace(this.CreateForm.String(), "CreateRequest", "CreateRequest", 1) + `,`, + `ReplaceForm:` + strings.Replace(this.ReplaceForm.String(), "ReplaceRequest", "ReplaceRequest", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `ReferringObjects:` + repeatedStringForReferringObjects + `,`, + `DeletedReferredObjects:` + repeatedStringForDeletedReferredObjects + `,`, + `DisabledReferredObjects:` + repeatedStringForDisabledReferredObjects + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ListRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ReportStatusFields:` + fmt.Sprintf("%v", this.ReportStatusFields) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponseItem) String() string { + if this == nil { + return "nil" + } + repeatedStringForStatusSet := "[]*StatusObject{" + for _, f := range this.StatusSet { + repeatedStringForStatusSet += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "StatusObject", 1) + "," + } + repeatedStringForStatusSet += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + s := strings.Join([]string{`&ListResponseItem{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Uid:` + fmt.Sprintf("%v", this.Uid) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `GetSpec:` + strings.Replace(fmt.Sprintf("%v", this.GetSpec), "GetSpecType", "GetSpecType", 1) + `,`, + `StatusSet:` + repeatedStringForStatusSet + `,`, + `OwnerView:` + strings.Replace(fmt.Sprintf("%v", this.OwnerView), "ViewRefType", "schema.ViewRefType", 1) + `,`, + `Annotations:` + mapStringForAnnotations + `,`, + `Description:` + fmt.Sprintf("%v", this.Description) + `,`, + `Disabled:` + fmt.Sprintf("%v", this.Disabled) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ListResponseItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ListResponseItem", "ListResponseItem", 1) + "," + } + repeatedStringForItems += "}" + repeatedStringForErrors := "[]*ErrorType{" + for _, f := range this.Errors { + repeatedStringForErrors += strings.Replace(fmt.Sprintf("%v", f), "ErrorType", "schema.ErrorType", 1) + "," + } + repeatedStringForErrors += "}" + s := strings.Join([]string{`&ListResponse{`, + `Items:` + repeatedStringForItems + `,`, + `Errors:` + repeatedStringForErrors + `,`, + `}`, + }, "") + return s +} +func (this *DeleteRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DeleteRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `FailIfReferred:` + fmt.Sprintf("%v", this.FailIfReferred) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCrudapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *CreateRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectCreateMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &CreateSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectReplaceMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseFormat", wireType) + } + m.ResponseFormat = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ResponseFormat |= GetResponseFormatCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CreateForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CreateForm == nil { + m.CreateForm = &CreateRequest{} + } + if err := m.CreateForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReplaceForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ReplaceForm == nil { + m.ReplaceForm = &ReplaceRequest{} + } + if err := m.ReplaceForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReferringObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReferringObjects = append(m.ReferringObjects, &schema.ObjectRefType{}) + if err := m.ReferringObjects[len(m.ReferringObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DeletedReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DeletedReferredObjects = append(m.DeletedReferredObjects, &schema.ObjectRefType{}) + if err := m.DeletedReferredObjects[len(m.DeletedReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisabledReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DisabledReferredObjects = append(m.DisabledReferredObjects, &schema.ObjectRefType{}) + if err := m.DisabledReferredObjects[len(m.DisabledReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportStatusFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportStatusFields = append(m.ReportStatusFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponseItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponseItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponseItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GetSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GetSpec == nil { + m.GetSpec = &GetSpecType{} + } + if err := m.GetSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StatusSet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StatusSet = append(m.StatusSet, &StatusObject{}) + if err := m.StatusSet[len(m.StatusSet)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OwnerView", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OwnerView == nil { + m.OwnerView = &schema.ViewRefType{} + } + if err := m.OwnerView.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Annotations == nil { + m.Annotations = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Annotations[mapkey] = mapvalue + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Disabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Disabled = bool(v != 0) + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ListResponseItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Errors", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Errors = append(m.Errors, &schema.ErrorType{}) + if err := m.Errors[len(m.Errors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeleteRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DeleteRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeleteRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field FailIfReferred", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FailIfReferred = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCrudapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCrudapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCrudapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCrudapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCrudapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCrudapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCrudapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/filter_set/public_crudapi.pb.gw.go b/pbgo/extschema/schema/filter_set/public_crudapi.pb.gw.go new file mode 100644 index 000000000..741455a18 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_crudapi.pb.gw.go @@ -0,0 +1,716 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/filter_set/public_crudapi.proto + +/* +Package filter_set is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package filter_set + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + val, ok = pathParams["metadata.name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.name") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.name", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.name", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + val, ok = pathParams["metadata.name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.name") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.name", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.name", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "metadata.namespace", "filter_sets"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "filter_sets", "name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "filter_sets"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "metadata.namespace", "filter_sets", "metadata.name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "filter_sets", "name"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Delete_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/filter_set/public_crudapi.vesapi.go b/pbgo/extschema/schema/filter_set/public_crudapi.vesapi.go new file mode 100644 index 000000000..663e18b6f --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_crudapi.vesapi.go @@ -0,0 +1,3419 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/client/configapi" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +const ( + // CreateRequestFQN is the fully-qualified-name of the CreateRequest message + CreateRequestFQN = "ves.io.schema.filter_set.CreateRequest" + // CreateResponseFQN is the fully-qualified-name of the CreateResponse message + CreateResponseFQN = "ves.io.schema.filter_set.CreateResponse" + // ReplaceRequestFQN is the fully-qualified-name of the ReplaceRequest message + ReplaceRequestFQN = "ves.io.schema.filter_set.ReplaceRequest" + // ReplaceResponseFQN is the fully-qualified-name of the ReplaceResponse message + ReplaceResponseFQN = "ves.io.schema.filter_set.ReplaceResponse" + // GetRequestFQN is the fully-qualified-name of the GetRequest message + GetRequestFQN = "ves.io.schema.filter_set.GetRequest" + // GetResponseFQN is the fully-qualified-name of the GetResponse message + GetResponseFQN = "ves.io.schema.filter_set.GetResponse" + // ListRequestFQN is the fully-qualified-name of the ListRequest message + ListRequestFQN = "ves.io.schema.filter_set.ListRequest" + // ListResponseFQN is the fully-qualified-name of the ListResponse message + ListResponseFQN = "ves.io.schema.filter_set.ListResponse" + // DeleteRequestFQN is the fully-qualified-name of the DeleteRequest message + DeleteRequestFQN = "ves.io.schema.filter_set.DeleteRequest" + // DeleteResponseFQN is the fully-qualified-name of the DeleteResponse message + DeleteResponseFQN = "ves.io.schema.filter_set.DeleteResponse" +) + +// CLIENT side +func NewCreateRequest(e db.Entry) (*CreateRequest, error) { + r := &CreateRequest{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewReplaceRequest(e db.Entry) (*ReplaceRequest, error) { + r := &ReplaceRequest{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewGetRequest(key string, opts ...server.CRUDCallOpt) (*GetRequest, error) { + strs := strings.Split(key, "/") + if len(strs) != 2 { + return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) + } + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + var rspFmt GetResponseFormatCode + switch ccOpts.ResponseFormat { + case server.DefaultForm: + rspFmt = GET_RSP_FORMAT_DEFAULT + case server.CreateRequestForm: + rspFmt = GET_RSP_FORMAT_FOR_CREATE + case server.ReplaceRequestForm: + rspFmt = GET_RSP_FORMAT_FOR_REPLACE + case server.StatusForm: + rspFmt = GET_RSP_FORMAT_STATUS + case server.GetSpecForm: + rspFmt = GET_RSP_FORMAT_READ + case server.BrokenRefsForm: + rspFmt = GET_RSP_FORMAT_BROKEN_REFERENCES + default: + return nil, fmt.Errorf("Unsupported Response Format %s", ccOpts.ResponseFormat) + } + return &GetRequest{Namespace: strs[0], Name: strs[1], ResponseFormat: rspFmt}, nil +} +func (m *GetRequest) ResponseFormatString() string { + return m.GetResponseFormat().String() +} + +func NewListRequest(opts ...server.CRUDCallOpt) *ListRequest { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + return &ListRequest{Namespace: ccOpts.Namespace} +} + +func NewDeleteRequest(key string) (*DeleteRequest, error) { + strs := strings.Split(key, "/") + if len(strs) != 2 { + return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) + } + return &DeleteRequest{Namespace: strs[0], Name: strs[1]}, nil +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + var req *CreateRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*CreateRequest) + if !ok { + return nil, fmt.Errorf("%T is not *CreateRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Create") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + } + + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + obj := NewDBObject(nil) + rsp.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rsp, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + var req *ReplaceRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*ReplaceRequest) + if !ok { + return fmt.Errorf("%T is not *ReplaceRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Replace") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return err + } + } + } + + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return nil + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + req := NewListRequest(opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + switch len(cco.LabelFilter) { + case 0: + case 1: + req.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + req.ReportFields = cco.ReportFields + req.ReportStatusFields = cco.ReportStatusFields + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + got := 0 + if e != nil { + got++ + } + if cco.RequestProto != nil { + got++ + } + if cco.RequestJSON != "" { + got++ + } + if got != 1 { + return nil, fmt.Errorf("Only one of entry(%v), WithRequestProto()(%v) or WithRequestJSON()(%v) should be specified", e, cco.RequestProto, cco.RequestJSON) + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + var req *CreateRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*CreateRequest) + if !ok { + return nil, fmt.Errorf("%T is not *CreateRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + } + + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + var namespace string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return nil, errors.Wrapf(err, "Unmarshaling json to find namespace/name") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return nil, fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["namespace"].(string); ok { + namespace = val + } else { + return nil, fmt.Errorf("Request %s does not have 'metadata.namespace'", jsn) + } + + url := fmt.Sprintf("%s/public/namespaces/%s/filter_sets", c.baseURL, namespace) + + hReq, err := http.NewRequest("POST", url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &CreateResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + configapi.TranscribeCall(ctx, jsn, string(body)) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + + obj := NewDBObject(nil) + rspo.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rspo, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + got := 0 + if e != nil { + got++ + } + if cco.RequestProto != nil { + got++ + } + if cco.RequestJSON != "" { + got++ + } + if got != 1 { + return fmt.Errorf("Only one of entry(%v), WithRequestProto()(%v) or WithRequestJSON()(%v) should be specified", e, cco.RequestProto, cco.RequestJSON) + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + var rReq *ReplaceRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*ReplaceRequest) + if !ok { + return fmt.Errorf("%T is not *ReplaceRequest", cco.RequestProto) + } + rReq = r + } else { + r, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, rReq); err != nil { + return err + } + } + } + + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var namespace, name string + _ = namespace + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling json to find namespace/name") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + + if val, ok := md["namespace"].(string); ok { + namespace = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.namespace'", jsn) + } + + if val, ok := md["name"].(string); ok { + name = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.name'", jsn) + } + + url := fmt.Sprintf("%s/public/namespaces/%s/filter_sets/%s", c.baseURL, namespace, name) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + hReq = hReq.WithContext(ctx) + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + if _, err := io.ReadAll(rsp.Body); err != nil { + return errors.Wrap(err, "RestClient replace") + } + + configapi.TranscribeCall(ctx, jsn, nil) + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + + url := fmt.Sprintf("%s/public/namespaces/%s/filter_sets/%s", c.baseURL, req.Namespace, req.Name) + hReq, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + q.Add("response_format", fmt.Sprintf("%d", req.ResponseFormat)) + hReq.URL.RawQuery += q.Encode() + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &GetResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + configapi.TranscribeCall(ctx, req, rspo) + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + + return nil, err + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + req := NewListRequest(opts...) + _ = req + url := fmt.Sprintf("%s/public/namespaces/%s/filter_sets", c.baseURL, req.Namespace) + + hReq, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + for _, fName := range cco.ReportStatusFields { + q.Add("report_status_fields", fName) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ListResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + configapi.TranscribeCall(ctx, req, rspo) + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + url := fmt.Sprintf("%s/public/namespaces/%s/filter_sets/%s", c.baseURL, dReq.Namespace, dReq.Name) + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + _, err = io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + configapi.TranscribeCall(ctx, dReq, nil) + + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.filter_set") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.API.Create") + rsp, err := oah.Create(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.filter_set") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.API.Replace") + if rsp, err := oah.Replace(ctx, req); err != nil { + return rsp, err + } + return NewObjectReplaceRsp(nil) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.filter_set") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.API.Get") + rsp, err := oah.Get(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) List(ctx context.Context, req *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.filter_set") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.API.List") + rsp, err := oah.List(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *DeleteRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.filter_set.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.filter_set") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.API.Delete") + rsp, err := oah.Delete(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + + rsp, err := c.cl.Create(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if err != nil { + return nil, err + } + obj := NewDBObject(nil) + rsp.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rsp, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return err + } + } + + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + + return nil, err + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewListRequest(opts...) + switch len(cco.LabelFilter) { + case 0: + case 1: + req.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + rsp, err := c.cl.List(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + rsp, err := c.cl.Delete(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper + + // resource handler function pointers +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.filter_set.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.filter_set.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.filter_set.API.Create"), zap.Error(err)) + } + } + } + reqMsgFQN := "ves.io.schema.filter_set.CreateRequest" + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, reqMsgFQN, req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + obj := NewDBObject(nil) + req.ToObject(obj) + if conv, exists := s.sf.Config().MsgToObjConverters[reqMsgFQN]; exists { + if err := conv(req, obj); err != nil { + return nil, err + } + } + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "CreateResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "CreateResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + rspMsgFQN := "ves.io.schema.filter_set.CreateResponse" + if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { + if err := conv(rsrcRsp.Entry, rsp); err != nil { + return nil, err + } + } + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.sf, "ves.io.schema.filter_set.API.CreateResponse", rsp)...) + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + err := fmt.Errorf("Nil spec in Replace Request") + return nil, svcfw.NewInvalidInputError(err.Error(), err) + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.filter_set.API.Replace"), zap.Error(err)) + } + } + } + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.filter_set.API.ReplaceRequest", req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "ReplaceResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "ReplaceResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.sf, "ves.io.schema.filter_set.API.ReplaceResponse", rsp)...) + return rsp, nil +} + +func (s *APISrv) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + tenant := server.TenantFromContext(ctx) + rsrcReq := &server.ResourceGetRequest{IsPublic: true, Tenant: tenant, Namespace: req.GetNamespace(), Name: req.GetName()} + switch req.ResponseFormat { + case GET_RSP_FORMAT_FOR_CREATE: + rsrcReq.RspInCreateForm = true + + case GET_RSP_FORMAT_FOR_REPLACE: + rsrcReq.RspInReplaceForm = true + + case GET_RSP_FORMAT_READ: + rsrcReq.RspInReadForm = true + + case GET_RSP_FORMAT_STATUS: + rsrcReq.RspInStatusForm = true + + case GET_RSP_FORMAT_REFERRING_OBJECTS: + rsrcReq.RspInReferringObjectsForm = true + + case GET_RSP_FORMAT_BROKEN_REFERENCES: + rsrcReq.RspInBrokenReferencesForm = true + + } + + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectGetRsp(ctx, s.sf, req, rsrcRsp) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + rspMsgFQN := "ves.io.schema.filter_set.GetResponse" + if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { + if err := conv(rsrcRsp.Entry, rsp); err != nil { + return nil, err + } + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + Namespace: req.Namespace, + LabelFilter: req.LabelFilter, + RspStreamed: false, + } + if len(req.ReportStatusFields) > 0 { + rsrcReq.ReportStatusFields = &req.ReportStatusFields + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListResource")) + } + rsp, err := NewListResponse(ctx, req, s.sf, rsrcRsp) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListResponse allocation failed")) + } + if merr != nil { + if rsp == nil { + return nil, merr + } + rsp.Errors = append(rsp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: merr.Error(), + }) + + } + return rsp, nil +} + +func (s *APISrv) Delete(ctx context.Context, req *DeleteRequest) (*google_protobuf.Empty, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.filter_set.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.filter_set.API.Delete"), zap.Error(err)) + } + } + } + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.filter_set.API.DeleteRequest", req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + tenant := server.TenantFromContext(ctx) + key := fmt.Sprintf("%s/%s/%s", tenant, req.GetNamespace(), req.GetName()) + rsrcReq := &server.ResourceDeleteRequest{Key: key} + rsrcReq.FailIfReferred = req.FailIfReferred + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "DeleteResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + return &google_protobuf.Empty{}, nil +} + +// Assert that APISrv implements the generated gRPC APIServer interface +var _ APIServer = &APISrv{} + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.API", strings.Join(sl[:len(sl)-1], ".")) +} + +func (r *Object) Key() string { + m := r.GetMetadata() + if m == nil { + return "" + } + return strings.Join([]string{m.Namespace, m.Name}, "/") +} + +func (r *Object) Uid() string { + return r.SystemMetadata.Uid +} + +func (r *ListResponse) GetKeys() []string { + var ret []string + for _, i := range r.Items { + ret = append(ret, i.Namespace+"/"+i.Name) + } + return ret +} + +// Implement server.SROListItem interface on ListResponseItem +func (l *ListResponseItem) GetObjUid() string { + return l.Uid +} + +func (l *ListResponseItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ListResponseItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ListResponseItem) GetObjName() string { + return l.Name +} + +func (l *ListResponseItem) GetObjLabels() map[string]string { + return l.Labels +} + +func NewObjectCreateRsp(e db.Entry) (*CreateResponse, error) { + switch e.(type) { + case nil: + return nil, nil + case *DBObject: + rsp := &CreateResponse{} + rsp.FromObject(e) + return rsp, nil + } + return nil, fmt.Errorf("Entry not of type *DBObject in NewObjectCreateRsp") +} + +func NewObjectReplaceRsp(e db.Entry) (*ReplaceResponse, error) { + return &ReplaceResponse{}, nil +} + +func NewObjectGetRsp(ctx context.Context, sf svcfw.Service, req *GetRequest, rsrcRsp *server.ResourceGetResponse) (*GetResponse, error) { + rsp := &GetResponse{} + e := rsrcRsp.Entry + if e == nil { + return rsp, nil + } + o, ok := e.(*DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *DBObject in NewObjectGetRsp") + } + + rsp.ResourceVersion = rsrcRsp.ResourceVersion + var merr *multierror.Error + buildReadForm := func() { + rsp.Metadata = &ves_io_schema.ObjectGetMetaType{} + rsp.Metadata.FromObjectMetaType(o.Metadata) + rsp.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + rsp.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) + rsp.Spec = &GetSpecType{} + if redactor, ok := e.(db.Redactor); ok { + if err := redactor.Redact(ctx); err != nil { + merr = multierror.Append(merr, errors.WithMessage(err, "Error while redacting entry")) + return + } + } + rsp.Spec.FromGlobalSpecType(o.Spec.GcSpec) + + } + _ = buildReadForm + buildStatusForm := func() { + for _, statusEnt := range rsrcRsp.BackRefs { + statusObj, ok := statusEnt.ToStore().(*StatusObject) + if !ok { + merr = multierror.Append(merr, fmt.Errorf("%T is not *StatusObject", statusEnt)) + continue + } + rsp.Status = append(rsp.Status, statusObj) + } + + } + _ = buildStatusForm + buildReferringObjectsForm := func() { + for _, br := range rsrcRsp.ReferringObjects { + rsp.ReferringObjects = append(rsp.ReferringObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + + } + _ = buildReferringObjectsForm + buildBrokenReferencesForm := func() { + for _, br := range rsrcRsp.DeletedReferredObjects { + rsp.DeletedReferredObjects = append(rsp.DeletedReferredObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + for _, br := range rsrcRsp.DisabledReferredObjects { + rsp.DisabledReferredObjects = append(rsp.DisabledReferredObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + + } + _ = buildBrokenReferencesForm + + switch req.ResponseFormat { + + case GET_RSP_FORMAT_FOR_CREATE: + createReq, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Building CreateRequest from entry") + } + // Name has to be specified for a new create + createReq.Metadata.Name = "" + rsp.CreateForm = createReq + + case GET_RSP_FORMAT_FOR_REPLACE: + replaceReq, err := NewReplaceRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Building ReplaceRequest from entry") + } + rsp.ReplaceForm = replaceReq + + case GET_RSP_FORMAT_STATUS: + buildStatusForm() + + case GET_RSP_FORMAT_READ: + buildReadForm() + + case GET_RSP_FORMAT_REFERRING_OBJECTS: + buildReferringObjectsForm() + + case GET_RSP_FORMAT_BROKEN_REFERENCES: + buildBrokenReferencesForm() + + default: + buildReadForm() + + buildStatusForm() + } + + return rsp, errors.ErrOrNil(merr) +} + +func NewListResponse(ctx context.Context, req *ListRequest, sf svcfw.Service, rsrcRsp *server.ResourceListResponse) (*ListResponse, error) { + if req == nil { + return nil, fmt.Errorf("Nil ListRequest") + } + if rsrcRsp == nil { + return nil, fmt.Errorf("Nil ResourceResponse") + } + + errStrs := []string{} + resp := &ListResponse{} + resp.Items = []*ListResponseItem{} + + for _, rsrcItem := range rsrcRsp.Items { + if rsrcItem == nil { + errStrs = append(errStrs, fmt.Sprintf("Nil ResourceListResponseItem")) + continue + } + + e := rsrcItem.Entry + o, ok := e.(*DBObject) + if !ok { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Entry %T not of type *DBObject in NewListResponse", e), + }) + + continue + } + if redactor, ok := e.(db.Redactor); ok { + if err := redactor.Redact(ctx); err != nil { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Error while redacting in NewListResponse: %s", err), + }) + continue + } + } + item := &ListResponseItem{ + Tenant: o.GetSystemMetadata().GetTenant(), + Namespace: o.GetMetadata().GetNamespace(), + Name: o.GetMetadata().GetName(), + Uid: o.GetMetadata().GetUid(), + OwnerView: o.GetSystemMetadata().GetOwnerView(), + Labels: o.GetMetadata().GetLabels(), + } + + item.Description = o.GetMetadata().GetDescription() + item.Annotations = o.GetMetadata().GetAnnotations() + item.Disabled = o.GetMetadata().GetDisable() + + if len(req.ReportFields) > 0 { + item.Metadata = &ves_io_schema.ObjectGetMetaType{} + item.Metadata.FromObjectMetaType(o.Metadata) + item.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + item.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) + + if o.Object.GetSpec().GetGcSpec() != nil { + msgFQN := "ves.io.schema.filter_set.GetResponse" + if conv, exists := sf.Config().ObjToMsgConverters[msgFQN]; exists { + getSpec := &GetSpecType{} + getSpec.FromGlobalSpecType(o.Spec.GcSpec) + getRsp := &GetResponse{Spec: getSpec} + if err := conv(o, getRsp); err != nil { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Converting entry to getResponse: %s", err), + }) + + continue + } + item.GetSpec = getRsp.Spec + } else { + item.GetSpec = &GetSpecType{} + item.GetSpec.FromGlobalSpecType(o.Spec.GcSpec) + } + } + + } + + if len(req.ReportStatusFields) > 0 { + for _, sroStatus := range rsrcItem.StatusSet { + statusDBO, ok := sroStatus.(*DBStatusObject) + if !ok { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("sro.Status %T is not of type *DBStatusObject in NewListResponse", sroStatus), + }) + + continue + } + item.StatusSet = append(item.StatusSet, statusDBO.StatusObject) + } + } + + resp.Items = append(resp.Items, item) + } + return resp, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "filter set", + "description": "Filter Set is a set of saved filtering criteria used in the Console. This allows users to declare\nnamed sets of filters so that they can be consistently used and shared to quickly reactivate a\nparticular view of the data in the Console.\n\nAny Filter Set created by a tenant should not have a value starting with \"ves-io-\"", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/{metadata.namespace}/filter_sets": { + "post": { + "summary": "Create Specification", + "description": "Create specification", + "operationId": "ves.io.schema.filter_set.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/filter_setCreateResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "metadata.namespace", + "description": "namespace\n\nx-example: \"staging\"\nThis defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/filter_setCreateRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.API.Create" + }, + "x-displayname": "Filter Set", + "x-ves-proto-service": "ves.io.schema.filter_set.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{metadata.namespace}/filter_sets/{metadata.name}": { + "put": { + "summary": "Replace Specification", + "description": "Replace specification", + "operationId": "ves.io.schema.filter_set.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/filter_setReplaceResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "metadata.namespace", + "description": "namespace\n\nx-example: \"staging\"\nThis defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "metadata.name", + "description": "name\n\nx-example: \"acmecorp-web\"\nThe configuration object to be replaced will be looked up by name", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/filter_setReplaceRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.API.Replace" + }, + "x-displayname": "Filter Set", + "x-ves-proto-service": "ves.io.schema.filter_set.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{namespace}/filter_sets": { + "get": { + "summary": "List Filter Set", + "description": "List the set of filter_set in a namespace", + "operationId": "ves.io.schema.filter_set.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/filter_setListResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace to scope the listing of filter_set", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "label_filter", + "description": "x-example: \"env in (staging, testing), tier in (web, db)\"\nA LabelSelectorType expression that every item in list response will satisfy", + "in": "query", + "required": false, + "type": "string", + "x-displayname": "Label Filter" + }, + { + "name": "report_fields", + "description": "x-example: \"\"\nExtra fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Fields" + }, + { + "name": "report_status_fields", + "description": "x-example: \"\"\nExtra status fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Status Fields" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.API.List" + }, + "x-displayname": "Filter Set", + "x-ves-proto-service": "ves.io.schema.filter_set.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{namespace}/filter_sets/{name}": { + "get": { + "summary": "Get Specification", + "description": "Get specification", + "operationId": "ves.io.schema.filter_set.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/filter_setGetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nThe name of the configuration object to be fetched", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "response_format", + "description": "The format in which the configuration object is to be fetched. This could be for example\n - in GetSpec form for the contents of object\n - in CreateRequest form to create a new similar object\n - to ReplaceRequest form to replace changeable values\n\nDefault format of returned resource\nResponse should be in CreateRequest format\nResponse should be in ReplaceRequest format\nResponse should be in StatusObject(s) format\nResponse should be in format of GetSpecType\nResponse should have other objects referring to this object\nResponse should have deleted and disabled objects referrred by this object", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT", + "x-displayname": "Broken Referred Objects" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.API.Get" + }, + "delete": { + "summary": "Delete Filter Set", + "description": "Delete the specified filter_set", + "operationId": "ves.io.schema.filter_set.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": {} + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nName of the configuration object", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/filter_setDeleteRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.API.Delete" + }, + "x-displayname": "Filter Set", + "x-ves-proto-service": "ves.io.schema.filter_set.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + } + }, + "definitions": { + "filter_setCreateRequest": { + "type": "object", + "description": "This is the input message of the 'Create' RPC", + "title": "CreateRequest is used to create an instance of filter_set", + "x-displayname": "Create Request", + "x-ves-proto-message": "ves.io.schema.filter_set.CreateRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectCreateMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the Filter Set", + "title": "spec", + "$ref": "#/definitions/filter_setCreateSpecType", + "x-displayname": "Spec" + } + } + }, + "filter_setCreateResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.CreateResponse", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the Filter Set", + "title": "spec", + "$ref": "#/definitions/filter_setGetSpecType", + "x-displayname": "Spec" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "filter_setCreateSpecType": { + "type": "object", + "description": "Create specification", + "title": "Create Specification", + "x-displayname": "Create Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.CreateSpecType", + "properties": { + "context_key": { + "type": "string", + "description": " indexable context key that identifies a page or page type for which the FilterSet is applicable\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "x-displayname": "Context Key", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_fields": { + "type": "array", + "description": " list of fields and their values selected by the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "minItems": 1, + "items": { + "$ref": "#/definitions/filter_setFilterSetField" + }, + "x-displayname": "Filter Fields", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "filter_setDeleteRequest": { + "type": "object", + "description": "This is the input message of the 'Delete' RPC.", + "title": "DeleteRequest is used to delete a filter_set", + "x-displayname": "Delete Request", + "x-ves-proto-message": "ves.io.schema.filter_set.DeleteRequest", + "properties": { + "fail_if_referred": { + "type": "boolean", + "description": " Fail the delete operation if this object is being referred by other objects", + "title": "fail_if_referred", + "format": "boolean", + "x-displayname": "Fail-If-Referred" + }, + "name": { + "type": "string", + "description": " Name of the configuration object\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " Namespace in which the configuration object is present\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + } + } + }, + "filter_setFilterExpressionField": { + "type": "object", + "title": "FilterExpressionField", + "x-displayname": "Filter Expression Field", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterExpressionField", + "properties": { + "expression": { + "type": "string", + "description": " expression is a kubernetes style label expression for selections, but\n differs in that it allows special characters in the keys and values\n\nExample: - \"region in (us-west1, us-west2),tier in (staging)\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "expression", + "x-displayname": "Expression Value", + "x-ves-example": "region in (us-west1, us-west2),tier in (staging)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFilterSetField": { + "type": "object", + "description": "a field ID and its value selected by the user", + "title": "FilterSetField", + "x-displayname": "Filter Set Field", + "x-ves-oneof-field-field_value": "[\"date_field\",\"filter_expression_field\",\"string_field\"]", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterSetField", + "properties": { + "date_field": { + "description": "Exclusive with [filter_expression_field string_field]\n", + "title": "date_field", + "$ref": "#/definitions/filter_setFilterTimeRangeField", + "x-displayname": "Date/Time Range" + }, + "field_id": { + "type": "string", + "description": " an identifier for the field that maps to some UI filter component\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "field_id", + "x-displayname": "Field ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_expression_field": { + "description": "Exclusive with [date_field string_field]\n", + "title": "filter_label selector expression field", + "$ref": "#/definitions/filter_setFilterExpressionField", + "x-displayname": "Key/Value Selector Expression" + }, + "string_field": { + "description": "Exclusive with [date_field filter_expression_field]\n", + "title": "string_field", + "$ref": "#/definitions/filter_setFilterStringField", + "x-displayname": "String" + } + } + }, + "filter_setFilterStringField": { + "type": "object", + "title": "FilterStringField", + "x-displayname": "Filter String Field", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterStringField", + "properties": { + "field_values": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "field_values", + "items": { + "type": "string" + }, + "x-displayname": "String Value(s)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFilterTimeRangeField": { + "type": "object", + "description": "either an absolute time range or a relative time interval", + "title": "FilterTimeRangeField", + "x-displayname": "Filter Date/Time Range Field", + "x-ves-oneof-field-range_type": "[\"absolute\",\"relative\"]", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterTimeRangeField", + "properties": { + "absolute": { + "description": "Exclusive with [relative]\n absolute start and end timestamps", + "title": "absolute", + "$ref": "#/definitions/schemaDateRange", + "x-displayname": "Absolute" + }, + "relative": { + "type": "string", + "description": "Exclusive with [absolute]\n relative time duration", + "title": "relative", + "x-displayname": "Relative" + } + } + }, + "filter_setGetResponse": { + "type": "object", + "description": "This is the output message of the 'Get' RPC", + "title": "GetResponse is the shape of a read filter_set", + "x-displayname": "Get Response", + "x-ves-proto-message": "ves.io.schema.filter_set.GetResponse", + "properties": { + "create_form": { + "description": "Format used to create a new similar object", + "title": "create_form", + "$ref": "#/definitions/filter_setCreateRequest", + "x-displayname": "CreateRequest Format" + }, + "deleted_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "deleted_referred_objects", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Deleted Referred Objects" + }, + "disabled_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "disabled_referred_objects", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Disabled Referred Objects" + }, + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "referring_objects": { + "type": "array", + "description": "The set of objects that are referring to this object in their spec", + "title": "referring_objects", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Referring Objects" + }, + "replace_form": { + "description": "Format to replace changeable values in object", + "title": "replace_form", + "$ref": "#/definitions/filter_setReplaceRequest", + "x-displayname": "ReplaceRequest Format" + }, + "spec": { + "description": " Specification of the desired behavior of the Filter Set", + "title": "spec", + "$ref": "#/definitions/filter_setGetSpecType", + "x-displayname": "Spec" + }, + "status": { + "type": "array", + "description": "The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/filter_setStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "filter_setGetResponseFormatCode": { + "type": "string", + "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_STATUS: x-displayName: \"Status format\"\nResponse should be in StatusObject(s) format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", + "title": "GetResponseFormatCode", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT" + }, + "filter_setGetSpecType": { + "type": "object", + "description": "Get specification", + "title": "Get Specification", + "x-displayname": "Get Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.GetSpecType", + "properties": { + "context_key": { + "type": "string", + "description": " indexable context key that identifies a page or page type for which the FilterSet is applicable\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "x-displayname": "Context Key", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_fields": { + "type": "array", + "description": " list of fields and their values selected by the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "minItems": 1, + "items": { + "$ref": "#/definitions/filter_setFilterSetField" + }, + "x-displayname": "Filter Fields", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "filter_setListResponse": { + "type": "object", + "description": "This is the output message of 'List' RPC.", + "title": "ListResponse is the collection of filter_set", + "x-displayname": "List Response", + "x-ves-proto-message": "ves.io.schema.filter_set.ListResponse", + "properties": { + "errors": { + "type": "array", + "description": " Errors(if any) while listing items from collection", + "title": "errors", + "items": { + "$ref": "#/definitions/schemaErrorType" + }, + "x-displayname": "Errors" + }, + "items": { + "type": "array", + "description": " items represents the collection in response", + "title": "items", + "items": { + "$ref": "#/definitions/filter_setListResponseItem" + }, + "x-displayname": "Items" + } + } + }, + "filter_setListResponseItem": { + "type": "object", + "description": "By default a summary of filter_set is returned in 'List'. By setting\n'report_fields' in the ListRequest more details of each item can be got.", + "title": "ListResponseItem is an individual item in a collection of filter_set", + "x-displayname": "List Item", + "x-ves-proto-message": "ves.io.schema.filter_set.ListResponseItem", + "properties": { + "annotations": { + "type": "object", + "description": " The set of annotations present on this filter_set", + "title": "annotations", + "x-displayname": "Annotations" + }, + "description": { + "type": "string", + "description": " The description set for this filter_set", + "title": "description", + "x-displayname": "Description" + }, + "disabled": { + "type": "boolean", + "description": " A value of true indicates filter_set is administratively disabled", + "title": "disabled", + "format": "boolean", + "x-displayname": "Disabled" + }, + "get_spec": { + "description": " If ListRequest has any specified report_fields, it will appear in object", + "title": "get_spec", + "$ref": "#/definitions/filter_setGetSpecType", + "x-displayname": "Get Specification" + }, + "labels": { + "type": "object", + "description": " The set of labels present on this filter_set", + "title": "labels", + "x-displayname": "Labels" + }, + "metadata": { + "description": " If list request has report_fields set then metadata will\n contain all the metadata associated with the object.", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "name": { + "type": "string", + "description": " The name of this filter_set\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " The namespace this item belongs to\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "status_set": { + "type": "array", + "description": " The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/filter_setStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " If list request has report_fields set then system_metadata will\n contain all the system generated details of this object.", + "title": "system_metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + }, + "tenant": { + "type": "string", + "description": " The tenant this item belongs to\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " The unique uid of this filter_set\n\nExample: - \"d27938ba-967e-40a7-9709-57b8627f9f75\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d27938ba-967e-40a7-9709-57b8627f9f75" + } + } + }, + "filter_setReplaceRequest": { + "type": "object", + "description": "This is the input message of the 'Replace' RPC", + "title": "ReplaceRequest is used to replace contents of a filter_set", + "x-displayname": "Replace Request", + "x-ves-proto-message": "ves.io.schema.filter_set.ReplaceRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectReplaceMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the Filter Set", + "title": "spec", + "$ref": "#/definitions/filter_setReplaceSpecType", + "x-displayname": "Spec" + } + } + }, + "filter_setReplaceResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.filter_set.ReplaceResponse" + }, + "filter_setReplaceSpecType": { + "type": "object", + "description": "Replace specification", + "title": "Replace Specification", + "x-displayname": "Replace Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.ReplaceSpecType", + "properties": { + "context_key": { + "type": "string", + "description": " indexable context key that identifies a page or page type for which the FilterSet is applicable\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "x-displayname": "Context Key", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_fields": { + "type": "array", + "description": " list of fields and their values selected by the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "minItems": 1, + "items": { + "$ref": "#/definitions/filter_setFilterSetField" + }, + "x-displayname": "Filter Fields", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "filter_setStatusObject": { + "type": "object", + "description": "Most recently observed status of the object", + "title": "Status for Filter Set", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.filter_set.StatusObject", + "properties": { + "conditions": { + "type": "array", + "description": " Conditions", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" + }, + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " Object reference", + "title": "object_refs", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Config Object" + } + } + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "schemaConditionType": { + "type": "object", + "description": "Conditions are used in the object status to describe the current state of the\nobject, e.g. Ready, Succeeded, etc.", + "title": "ConditionType", + "x-displayname": "Status Condition", + "x-ves-proto-message": "ves.io.schema.ConditionType", + "properties": { + "hostname": { + "type": "string", + "description": " Hostname of the instance of the site that sent the status", + "title": "hostname", + "x-displayname": "Hostname" + }, + "last_update_time": { + "type": "string", + "description": " Last time the condition was updated", + "title": "last_update_time", + "format": "date-time", + "x-displayname": "Last Updated" + }, + "reason": { + "type": "string", + "description": " x-reason: \"Insufficient memory in data plane\"\n A human readable string explaining the reason for reaching this condition\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaDateRange": { + "type": "object", + "description": "Date range is for selecting a date range", + "title": "DateRange", + "x-displayname": "Date Range", + "x-ves-proto-message": "ves.io.schema.DateRange", + "properties": { + "end_date": { + "type": "string", + "description": " Contains end date\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "end_date", + "format": "date-time", + "x-displayname": "End Date", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "start_date": { + "type": "string", + "description": " Contains start date\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "start_date", + "format": "date-time", + "x-displayname": "Start Date", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "schemaErrorCode": { + "type": "string", + "description": "Union of all possible error-codes from system\n\n - EOK: No error\n - EPERMS: Permissions error\n - EBADINPUT: Input is not correct\n - ENOTFOUND: Not found\n - EEXISTS: Already exists\n - EUNKNOWN: Unknown/catchall error\n - ESERIALIZE: Error in serializing/de-serializing\n - EINTERNAL: Server error\n - EPARTIAL: Partial error", + "title": "ErrorCode", + "enum": [ + "EOK", + "EPERMS", + "EBADINPUT", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN", + "ESERIALIZE", + "EINTERNAL", + "EPARTIAL" + ], + "default": "EOK", + "x-displayname": "Error Code", + "x-ves-proto-enum": "ves.io.schema.ErrorCode" + }, + "schemaErrorType": { + "type": "object", + "description": "Information about a error in API operation", + "title": "ErrorType", + "x-displayname": "Error Type", + "x-ves-proto-message": "ves.io.schema.ErrorType", + "properties": { + "code": { + "description": " A simple general code by category", + "title": "code", + "$ref": "#/definitions/schemaErrorCode", + "x-displayname": "Code" + }, + "error_obj": { + "description": " A structured error object for machine parsing", + "title": "error_obj", + "$ref": "#/definitions/protobufAny", + "x-displayname": "Error Object" + }, + "message": { + "type": "string", + "description": " A human readable string of the error\n\nExample: - \"value\"-", + "title": "message", + "x-displayname": "Message", + "x-ves-example": "value" + } + } + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaLabelSelectorType": { + "type": "object", + "description": "x-displayName: \"Label Selector\"\nThis type can be used to establish a 'selector reference' from one object(called selector) to\na set of other objects(called selectees) based on the value of expresssions.\nA label selector is a label query over a set of resources. An empty label selector matches all objects.\nA null label selector matches no objects. Label selector is immutable.\nexpressions is a list of strings of label selection expression.\nEach string has \",\" separated values which are \"AND\" and all strings are logically \"OR\".\nBNF for expression string\n\u003cselector-syntax\u003e ::= \u003crequirement\u003e | \u003crequirement\u003e \",\" \u003cselector-syntax\u003e\n\u003crequirement\u003e ::= [!] KEY [ \u003cset-based-restriction\u003e | \u003cexact-match-restriction\u003e ]\n\u003cset-based-restriction\u003e ::= \"\" | \u003cinclusion-exclusion\u003e \u003cvalue-set\u003e\n\u003cinclusion-exclusion\u003e ::= \u003cinclusion\u003e | \u003cexclusion\u003e\n\u003cexclusion\u003e ::= \"notin\"\n\u003cinclusion\u003e ::= \"in\"\n\u003cvalue-set\u003e ::= \"(\" \u003cvalues\u003e \")\"\n\u003cvalues\u003e ::= VALUE | VALUE \",\" \u003cvalues\u003e\n\u003cexact-match-restriction\u003e ::= [\"=\"|\"==\"|\"!=\"] VALUE", + "title": "LabelSelectorType", + "properties": { + "expressions": { + "type": "array", + "description": "x-displayName: \"Selector Expression\"\nx-required\nx-example: \"region in (us-west1, us-west2),tier in (staging)\"\nexpressions contains the kubernetes style label expression for selections.", + "title": "expressions", + "items": { + "type": "string" + } + } + } + }, + "schemaObjectCreateMetaType": { + "type": "object", + "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", + "title": "ObjectCreateMetaType", + "x-displayname": "Create Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectCreateMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotation", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaObjectGetMetaType": { + "type": "object", + "description": "ObjectGetMetaType is metadata that can be specified in Get/Create response of an object.", + "title": "ObjectGetMetaType", + "x-displayname": "Get Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectGetMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotation", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectReplaceMetaType": { + "type": "object", + "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", + "title": "ObjectReplaceMetaType", + "x-displayname": "Replace Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectReplaceMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaStatusMetaType": { + "type": "object", + "description": "StatusMetaType is metadata that all status must have.", + "title": "StatusMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.StatusMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " creation_timestamp is when the status object was created. It is used to find/tie-break\n for latest status object from same origin", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " Class of creator which created this StatusObject. This will be service's DNS FQDN.\n This will be set by the system based on client certificate information.\n\nExample: - \"ver.re1.int.ves.io\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "ver.re1.int.ves.io" + }, + "creator_id": { + "type": "string", + "description": " ID of creator which created this StatusObject. This will be a concrete identifier for service (e.g.\n identifying the environment also). This will be set by the system based on client certificate\n information\n\nExample: - \"ver-instance-1\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "ver-instance-1" + }, + "publish": { + "description": " Decides wether this status object will be propagated to user.", + "title": "publish", + "$ref": "#/definitions/schemaStatusPublishType", + "x-displayname": "Publish" + }, + "status_id": { + "type": "string", + "description": " status_id is a field used by the generator to distinguish (if necessary) between two status\n objects for the same config object from the same site and same service and potentially same\n daemon(creator-id)", + "title": "status_id", + "x-displayname": "Status ID" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for a StatusObject.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Origin of this status exchanged by VTRP.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaStatusPublishType": { + "type": "string", + "description": "StatusPublishType is all possible publish operations on a StatusObject\n\n - STATUS_DO_NOT_PUBLISH: Do Not Publish\n\nDo not propagate this status to user. This could be because status is only informational\n - STATUS_PUBLISH: Publish\n\nPropagate this status up to user as it might be actionable", + "title": "StatusPublishType", + "enum": [ + "STATUS_DO_NOT_PUBLISH", + "STATUS_PUBLISH" + ], + "default": "STATUS_DO_NOT_PUBLISH", + "x-displayname": "Status Publish Type", + "x-ves-proto-enum": "ves.io.schema.StatusPublishType" + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectGetMetaType": { + "type": "object", + "description": "SystemObjectGetMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectGetMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectGetMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "prism" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "admin@acmecorp.com" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + } + }, + "x-displayname": "Filter Set", + "x-ves-proto-file": "ves.io/schema/filter_set/public_crudapi.proto" +}` diff --git a/pbgo/extschema/schema/filter_set/public_crudapi.vesmsg.go b/pbgo/extschema/schema/filter_set/public_crudapi.vesmsg.go new file mode 100644 index 000000000..610dcf941 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_crudapi.vesmsg.go @@ -0,0 +1,1560 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CreateRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateRequest) DeepCopy() *CreateRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateRequestValidator = func() *ValidateCreateRequest { + v := &ValidateCreateRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectCreateMetaTypeValidator().Validate + + v.FldValidators["spec"] = CreateSpecTypeValidator().Validate + + return v +}() + +func CreateRequestValidator() db.Validator { + return DefaultCreateRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CreateResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateResponse) DeepCopy() *CreateResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateResponseValidator = func() *ValidateCreateResponse { + v := &ValidateCreateResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + return v +}() + +func CreateResponseValidator() db.Validator { + return DefaultCreateResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DeleteRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DeleteRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DeleteRequest) DeepCopy() *DeleteRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DeleteRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DeleteRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DeleteRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DeleteRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateDeleteRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDeleteRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DeleteRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DeleteRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fail_if_referred"]; exists { + + vOpts := append(opts, db.WithValidateField("fail_if_referred")) + if err := fv(ctx, m.GetFailIfReferred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDeleteRequestValidator = func() *ValidateDeleteRequest { + v := &ValidateDeleteRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func DeleteRequestValidator() db.Validator { + return DefaultDeleteRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetRequest) DeepCopy() *GetRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateGetRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["response_format"]; exists { + + vOpts := append(opts, db.WithValidateField("response_format")) + if err := fv(ctx, m.GetResponseFormat(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetRequestValidator = func() *ValidateGetRequest { + v := &ValidateGetRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GetRequestValidator() db.Validator { + return DefaultGetRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetResponse) DeepCopy() *GetResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetResponseValidator().Validate(ctx, m, opts...) +} + +func (m *GetResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return nil, nil + +} + +type ValidateGetResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["create_form"]; exists { + + vOpts := append(opts, db.WithValidateField("create_form")) + if err := fv(ctx, m.GetCreateForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["deleted_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("deleted_referred_objects")) + for idx, item := range m.GetDeletedReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["disabled_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled_referred_objects")) + for idx, item := range m.GetDisabledReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["referring_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("referring_objects")) + for idx, item := range m.GetReferringObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["replace_form"]; exists { + + vOpts := append(opts, db.WithValidateField("replace_form")) + if err := fv(ctx, m.GetReplaceForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetResponseValidator = func() *ValidateGetResponse { + v := &ValidateGetResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["create_form"] = CreateRequestValidator().Validate + + v.FldValidators["replace_form"] = ReplaceRequestValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["status"] = StatusObjectValidator().Validate + + return v +}() + +func GetResponseValidator() db.Validator { + return DefaultGetResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListRequest) DeepCopy() *ListRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateListRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["report_status_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_status_fields")) + for idx, item := range m.GetReportStatusFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListRequestValidator = func() *ValidateListRequest { + v := &ValidateListRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ListRequestValidator() db.Validator { + return DefaultListRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListResponse) DeepCopy() *ListResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ListResponse) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateListResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["errors"]; exists { + + vOpts := append(opts, db.WithValidateField("errors")) + for idx, item := range m.GetErrors() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseValidator = func() *ValidateListResponse { + v := &ValidateListResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ListResponseItemValidator().Validate + + return v +}() + +func ListResponseValidator() db.Validator { + return DefaultListResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponseItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponseItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListResponseItem) DeepCopy() *ListResponseItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponseItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponseItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponseItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseItemValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponseItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return nil, nil + +} + +type ValidateListResponseItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponseItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponseItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponseItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["annotations"]; exists { + + vOpts := append(opts, db.WithValidateField("annotations")) + for key, value := range m.GetAnnotations() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["description"]; exists { + + vOpts := append(opts, db.WithValidateField("description")) + if err := fv(ctx, m.GetDescription(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["disabled"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled")) + if err := fv(ctx, m.GetDisabled(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["get_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("get_spec")) + if err := fv(ctx, m.GetGetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["owner_view"]; exists { + + vOpts := append(opts, db.WithValidateField("owner_view")) + if err := fv(ctx, m.GetOwnerView(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status_set"]; exists { + + vOpts := append(opts, db.WithValidateField("status_set")) + for idx, item := range m.GetStatusSet() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uid"]; exists { + + vOpts := append(opts, db.WithValidateField("uid")) + if err := fv(ctx, m.GetUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseItemValidator = func() *ValidateListResponseItem { + v := &ValidateListResponseItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["get_spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["status_set"] = StatusObjectValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + return v +}() + +func ListResponseItemValidator() db.Validator { + return DefaultListResponseItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceRequest) DeepCopy() *ReplaceRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceRequestValidator = func() *ValidateReplaceRequest { + v := &ValidateReplaceRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectReplaceMetaTypeValidator().Validate + + v.FldValidators["spec"] = ReplaceSpecTypeValidator().Validate + + return v +}() + +func ReplaceRequestValidator() db.Validator { + return DefaultReplaceRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceResponse) DeepCopy() *ReplaceResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceResponse got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceResponseValidator = func() *ValidateReplaceResponse { + v := &ValidateReplaceResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ReplaceResponseValidator() db.Validator { + return DefaultReplaceResponseValidator +} + +func (m *CreateRequest) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectCreateMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &CreateSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + +} + +func (m *CreateRequest) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *CreateRequest) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *CreateRequest) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + +} + +func (m *CreateRequest) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *CreateRequest) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *CreateResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *CreateResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *CreateResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *CreateResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *CreateResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *CreateResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *GetResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *GetResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *GetResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *GetResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *GetResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *GetResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ReplaceRequest) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectReplaceMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + +} + +func (m *ReplaceRequest) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ReplaceRequest) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ReplaceRequest) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + +} + +func (m *ReplaceRequest) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ReplaceRequest) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/filter_set/public_customapi.pb.go b/pbgo/extschema/schema/filter_set/public_customapi.pb.go new file mode 100644 index 000000000..bf4b37279 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_customapi.pb.go @@ -0,0 +1,849 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/filter_set/public_customapi.proto + +// filter set +// +// x-displayName: "Filter Set" +// Filter Set is a set of saved filters used in the Console. This allows users to declare named sets +// of filters so that they can be consistently used and shared to quickly reactivate a particular +// view of the data in the Console. +// +// Filter Set has a context key, which maps a console page or view identifier to the filter set for later retrieval, +// and a list of field name/values. +// +// Filter Sets can be created in a custom namespace or the shared namespace. +// Any Filter Set created by a tenant should not have a value starting with "ves-io-" + +package filter_set + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Find Filter Sets Request +// +// x-displayName: "Find Filter Sets Request" +// Find Filter Sets API returns FilterSets that match the given context key(s) +type FindFilterSetsReq struct { + // namespace + // + // x-displayName: "Namespace For Filter Sets" + // x-required + // find filter sets in the given namespace + // x-example: "bot-defense-apac" + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // context_keys + // + // x-displayName: "Context Keys" + // x-required + // context key(s) that idenfify one or more console pages/views where filters of the same field/values can be applied + ContextKeys []string `protobuf:"bytes,2,rep,name=context_keys,json=contextKeys,proto3" json:"context_keys,omitempty"` +} + +func (m *FindFilterSetsReq) Reset() { *m = FindFilterSetsReq{} } +func (*FindFilterSetsReq) ProtoMessage() {} +func (*FindFilterSetsReq) Descriptor() ([]byte, []int) { + return fileDescriptor_714fe4b72c7534c5, []int{0} +} +func (m *FindFilterSetsReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FindFilterSetsReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_FindFilterSetsReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *FindFilterSetsReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_FindFilterSetsReq.Merge(m, src) +} +func (m *FindFilterSetsReq) XXX_Size() int { + return m.Size() +} +func (m *FindFilterSetsReq) XXX_DiscardUnknown() { + xxx_messageInfo_FindFilterSetsReq.DiscardUnknown(m) +} + +var xxx_messageInfo_FindFilterSetsReq proto.InternalMessageInfo + +func (m *FindFilterSetsReq) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *FindFilterSetsReq) GetContextKeys() []string { + if m != nil { + return m.ContextKeys + } + return nil +} + +// Find Filter Sets Response +// +// x-displayName: "Find Filter Sets Response" +// Response for Find Filter Sets API +type FindFilterSetsRsp struct { + // filter_sets + // + // x-displayName: "Filter Sets" + // List of filter sets with the given context key(s) + FilterSets []*Object `protobuf:"bytes,1,rep,name=filter_sets,json=filterSets,proto3" json:"filter_sets,omitempty"` +} + +func (m *FindFilterSetsRsp) Reset() { *m = FindFilterSetsRsp{} } +func (*FindFilterSetsRsp) ProtoMessage() {} +func (*FindFilterSetsRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_714fe4b72c7534c5, []int{1} +} +func (m *FindFilterSetsRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FindFilterSetsRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_FindFilterSetsRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *FindFilterSetsRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_FindFilterSetsRsp.Merge(m, src) +} +func (m *FindFilterSetsRsp) XXX_Size() int { + return m.Size() +} +func (m *FindFilterSetsRsp) XXX_DiscardUnknown() { + xxx_messageInfo_FindFilterSetsRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_FindFilterSetsRsp proto.InternalMessageInfo + +func (m *FindFilterSetsRsp) GetFilterSets() []*Object { + if m != nil { + return m.FilterSets + } + return nil +} + +func init() { + proto.RegisterType((*FindFilterSetsReq)(nil), "ves.io.schema.filter_set.FindFilterSetsReq") + golang_proto.RegisterType((*FindFilterSetsReq)(nil), "ves.io.schema.filter_set.FindFilterSetsReq") + proto.RegisterType((*FindFilterSetsRsp)(nil), "ves.io.schema.filter_set.FindFilterSetsRsp") + golang_proto.RegisterType((*FindFilterSetsRsp)(nil), "ves.io.schema.filter_set.FindFilterSetsRsp") +} + +func init() { + proto.RegisterFile("ves.io/schema/filter_set/public_customapi.proto", fileDescriptor_714fe4b72c7534c5) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/filter_set/public_customapi.proto", fileDescriptor_714fe4b72c7534c5) +} + +var fileDescriptor_714fe4b72c7534c5 = []byte{ + // 558 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0x41, 0x6b, 0xd4, 0x40, + 0x14, 0xde, 0xc9, 0xa2, 0xb8, 0xa9, 0x88, 0x2e, 0x1e, 0xc2, 0x5a, 0xc6, 0x65, 0x51, 0x28, 0x6a, + 0x32, 0x50, 0x15, 0xc1, 0x9b, 0x15, 0x0a, 0x22, 0xa8, 0xac, 0x37, 0x15, 0xca, 0x64, 0xf2, 0x92, + 0x4e, 0x9b, 0xe4, 0x8d, 0x99, 0x49, 0x68, 0x91, 0x82, 0xf4, 0x24, 0x78, 0x11, 0xbd, 0x7b, 0xf6, + 0x27, 0x88, 0xbd, 0xec, 0xcd, 0x9e, 0xa4, 0xe8, 0xa5, 0x47, 0x9b, 0xf5, 0xa0, 0xb7, 0xfe, 0x04, + 0x31, 0x4d, 0xb7, 0x5d, 0x97, 0x45, 0x6f, 0x6f, 0xe6, 0xfb, 0xde, 0xf7, 0x25, 0xef, 0x7d, 0x63, + 0xb3, 0x02, 0xb4, 0x27, 0x91, 0x69, 0xb1, 0x0c, 0x09, 0x67, 0xa1, 0x8c, 0x0d, 0x64, 0x4b, 0x1a, + 0x0c, 0x53, 0xb9, 0x1f, 0x4b, 0xb1, 0x24, 0x72, 0x6d, 0x30, 0xe1, 0x4a, 0x7a, 0x2a, 0x43, 0x83, + 0x6d, 0xe7, 0xa0, 0xc1, 0x3b, 0x68, 0xf0, 0x8e, 0x1a, 0x3a, 0x6e, 0x24, 0xcd, 0x72, 0xee, 0x7b, + 0x02, 0x13, 0x16, 0x61, 0x84, 0xac, 0x6a, 0xf0, 0xf3, 0xb0, 0x3a, 0x55, 0x87, 0xaa, 0x3a, 0x10, + 0xea, 0xcc, 0x46, 0x88, 0x51, 0x0c, 0x8c, 0x2b, 0xc9, 0x78, 0x9a, 0xa2, 0xe1, 0x46, 0x62, 0xaa, + 0x6b, 0xf4, 0xf2, 0xd4, 0xef, 0x42, 0x7f, 0x05, 0x84, 0xa9, 0x69, 0x97, 0xa6, 0xd2, 0xcc, 0xba, + 0x82, 0x43, 0xb1, 0x0b, 0xe3, 0x2c, 0x54, 0xc7, 0x9d, 0x66, 0xc7, 0xc1, 0x82, 0xc7, 0x32, 0xe0, + 0x06, 0x6a, 0xb4, 0xf7, 0x17, 0x0a, 0x1a, 0xd2, 0x62, 0x5c, 0xa1, 0xb7, 0x62, 0x9f, 0x5b, 0x94, + 0x69, 0xb0, 0x58, 0x99, 0x3f, 0x06, 0xa3, 0xfb, 0xf0, 0xbc, 0x3d, 0x6b, 0xb7, 0x52, 0x9e, 0x80, + 0x56, 0x5c, 0x80, 0x43, 0xba, 0x64, 0xae, 0xd5, 0x3f, 0xba, 0x68, 0xdf, 0xb2, 0x4f, 0x0b, 0x4c, + 0x0d, 0xac, 0x99, 0xa5, 0x55, 0x58, 0xd7, 0x8e, 0xd5, 0x6d, 0xce, 0xb5, 0x16, 0xce, 0x7f, 0xfa, + 0x35, 0x68, 0x9e, 0x78, 0x4b, 0xac, 0x53, 0xe4, 0xb0, 0x72, 0x48, 0x7f, 0xa6, 0x66, 0xde, 0x87, + 0x75, 0xdd, 0x7b, 0x3a, 0xe1, 0xa5, 0x55, 0x7b, 0xd1, 0x9e, 0x39, 0xfa, 0x73, 0xed, 0x90, 0x6e, + 0x73, 0x6e, 0x66, 0xbe, 0xeb, 0x4d, 0xdb, 0x94, 0xf7, 0xb0, 0x1a, 0xe1, 0x42, 0x73, 0xb0, 0x41, + 0xfa, 0x76, 0x38, 0x92, 0x9a, 0xdf, 0xb6, 0xec, 0xd6, 0xdd, 0x6a, 0xdf, 0x77, 0x1e, 0xdd, 0x6b, + 0xbf, 0xb6, 0xec, 0x33, 0xe3, 0x5e, 0xed, 0xab, 0xd3, 0x35, 0x27, 0x26, 0xd0, 0xf9, 0x7f, 0xb2, + 0x56, 0xbd, 0xf7, 0x64, 0xfb, 0xa3, 0x45, 0xca, 0xcf, 0xce, 0xb3, 0xf0, 0xe6, 0x9a, 0x70, 0x03, + 0x08, 0x79, 0x1e, 0x1b, 0x97, 0x0b, 0x01, 0x5a, 0x5f, 0xab, 0xee, 0x04, 0xa6, 0x1a, 0x63, 0x70, + 0x7d, 0xae, 0xa5, 0x70, 0x13, 0x4c, 0xa5, 0xc1, 0x6c, 0x02, 0x82, 0x11, 0x52, 0x80, 0x76, 0x25, + 0xba, 0x11, 0xa4, 0x90, 0xf1, 0xd8, 0xcd, 0x80, 0x07, 0x9b, 0xdf, 0x7e, 0xbc, 0xb3, 0x6e, 0xf4, + 0x58, 0x1d, 0x6e, 0x36, 0x5a, 0x88, 0x66, 0x2f, 0x46, 0xf5, 0xc6, 0xb1, 0x18, 0x69, 0x16, 0xca, + 0x34, 0xb8, 0x4d, 0xae, 0x74, 0xdc, 0xc1, 0x16, 0x69, 0x7e, 0xdd, 0x22, 0x17, 0xff, 0x31, 0xd5, + 0xcd, 0x2f, 0x8e, 0x75, 0x96, 0x2c, 0xbc, 0x22, 0x3b, 0x7b, 0xb4, 0xb1, 0xbb, 0x47, 0x1b, 0xfb, + 0x7b, 0x94, 0xbc, 0x2c, 0x29, 0xf9, 0x50, 0x52, 0xb2, 0x5d, 0x52, 0xb2, 0x53, 0x52, 0xf2, 0xbd, + 0xa4, 0xe4, 0x67, 0x49, 0x1b, 0xfb, 0x25, 0x25, 0x6f, 0x86, 0xb4, 0x31, 0x18, 0x52, 0xb2, 0x33, + 0xa4, 0x8d, 0xdd, 0x21, 0x6d, 0x3c, 0x79, 0x10, 0xa1, 0x5a, 0x8d, 0xbc, 0x02, 0xff, 0x28, 0x67, + 0xdc, 0xcb, 0x35, 0xab, 0x8a, 0x10, 0xb3, 0xc4, 0x55, 0x19, 0x16, 0x32, 0x80, 0xcc, 0x3d, 0x84, + 0x99, 0xf2, 0x23, 0x64, 0xb0, 0x66, 0xea, 0x84, 0x4e, 0xbc, 0x04, 0xff, 0x64, 0x95, 0xd2, 0xeb, + 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x06, 0x16, 0x40, 0x54, 0xeb, 0x03, 0x00, 0x00, +} + +func (this *FindFilterSetsReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FindFilterSetsReq) + if !ok { + that2, ok := that.(FindFilterSetsReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if len(this.ContextKeys) != len(that1.ContextKeys) { + return false + } + for i := range this.ContextKeys { + if this.ContextKeys[i] != that1.ContextKeys[i] { + return false + } + } + return true +} +func (this *FindFilterSetsRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FindFilterSetsRsp) + if !ok { + that2, ok := that.(FindFilterSetsRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.FilterSets) != len(that1.FilterSets) { + return false + } + for i := range this.FilterSets { + if !this.FilterSets[i].Equal(that1.FilterSets[i]) { + return false + } + } + return true +} +func (this *FindFilterSetsReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.FindFilterSetsReq{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "ContextKeys: "+fmt.Sprintf("%#v", this.ContextKeys)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FindFilterSetsRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&filter_set.FindFilterSetsRsp{") + if this.FilterSets != nil { + s = append(s, "FilterSets: "+fmt.Sprintf("%#v", this.FilterSets)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomAPIClient is the client API for CustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomAPIClient interface { + // Find Filter Sets + // + // x-displayName: "Find Filter Sets for 1 or More Context Keys" + // Retrieve any saved filter sets that are applicable for the given context key(s) + FindFilterSets(ctx context.Context, in *FindFilterSetsReq, opts ...grpc.CallOption) (*FindFilterSetsRsp, error) +} + +type customAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { + return &customAPIClient{cc} +} + +func (c *customAPIClient) FindFilterSets(ctx context.Context, in *FindFilterSetsReq, opts ...grpc.CallOption) (*FindFilterSetsRsp, error) { + out := new(FindFilterSetsRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.filter_set.CustomAPI/FindFilterSets", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CustomAPIServer is the server API for CustomAPI service. +type CustomAPIServer interface { + // Find Filter Sets + // + // x-displayName: "Find Filter Sets for 1 or More Context Keys" + // Retrieve any saved filter sets that are applicable for the given context key(s) + FindFilterSets(context.Context, *FindFilterSetsReq) (*FindFilterSetsRsp, error) +} + +// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomAPIServer struct { +} + +func (*UnimplementedCustomAPIServer) FindFilterSets(ctx context.Context, req *FindFilterSetsReq) (*FindFilterSetsRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method FindFilterSets not implemented") +} + +func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { + s.RegisterService(&_CustomAPI_serviceDesc, srv) +} + +func _CustomAPI_FindFilterSets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(FindFilterSetsReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).FindFilterSets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.filter_set.CustomAPI/FindFilterSets", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).FindFilterSets(ctx, req.(*FindFilterSetsReq)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.filter_set.CustomAPI", + HandlerType: (*CustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "FindFilterSets", + Handler: _CustomAPI_FindFilterSets_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/filter_set/public_customapi.proto", +} + +func (m *FindFilterSetsReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FindFilterSetsReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FindFilterSetsReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ContextKeys) > 0 { + for iNdEx := len(m.ContextKeys) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ContextKeys[iNdEx]) + copy(dAtA[i:], m.ContextKeys[iNdEx]) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.ContextKeys[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *FindFilterSetsRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FindFilterSetsRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FindFilterSetsRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.FilterSets) > 0 { + for iNdEx := len(m.FilterSets) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.FilterSets[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *FindFilterSetsReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.ContextKeys) > 0 { + for _, s := range m.ContextKeys { + l = len(s) + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + return n +} + +func (m *FindFilterSetsRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.FilterSets) > 0 { + for _, e := range m.FilterSets { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *FindFilterSetsReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FindFilterSetsReq{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `ContextKeys:` + fmt.Sprintf("%v", this.ContextKeys) + `,`, + `}`, + }, "") + return s +} +func (this *FindFilterSetsRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForFilterSets := "[]*Object{" + for _, f := range this.FilterSets { + repeatedStringForFilterSets += strings.Replace(fmt.Sprintf("%v", f), "Object", "Object", 1) + "," + } + repeatedStringForFilterSets += "}" + s := strings.Join([]string{`&FindFilterSetsRsp{`, + `FilterSets:` + repeatedStringForFilterSets + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *FindFilterSetsReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FindFilterSetsReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FindFilterSetsReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContextKeys", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContextKeys = append(m.ContextKeys, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *FindFilterSetsRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FindFilterSetsRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FindFilterSetsRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FilterSets", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FilterSets = append(m.FilterSets, &Object{}) + if err := m.FilterSets[len(m.FilterSets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/filter_set/public_customapi.pb.gw.go b/pbgo/extschema/schema/filter_set/public_customapi.pb.gw.go new file mode 100644 index 000000000..46dd0a5ae --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_customapi.pb.gw.go @@ -0,0 +1,196 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/filter_set/public_customapi.proto + +/* +Package filter_set is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package filter_set + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_CustomAPI_FindFilterSets_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq FindFilterSetsReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := client.FindFilterSets(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_FindFilterSets_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq FindFilterSetsReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := server.FindFilterSets(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCustomAPIHandlerServer registers the http handlers for service CustomAPI to "mux". +// UnaryRPC :call CustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CustomAPIServer) error { + + mux.Handle("POST", pattern_CustomAPI_FindFilterSets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_FindFilterSets_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_FindFilterSets_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCustomAPIHandlerFromEndpoint is same as RegisterCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCustomAPIHandler(ctx, mux, conn) +} + +// RegisterCustomAPIHandler registers the http handlers for service CustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIClient(conn)) +} + +// RegisterCustomAPIHandlerClient registers the http handlers for service CustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CustomAPIClient" to call the correct interceptors. +func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CustomAPIClient) error { + + mux.Handle("POST", pattern_CustomAPI_FindFilterSets_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_FindFilterSets_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_FindFilterSets_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CustomAPI_FindFilterSets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "namespace", "filter_sets", "find"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_CustomAPI_FindFilterSets_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/filter_set/public_customapi.vesapi.go b/pbgo/extschema/schema/filter_set/public_customapi.vesapi.go new file mode 100644 index 000000000..21447d7a1 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_customapi.vesapi.go @@ -0,0 +1,1054 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create CustomAPI GRPC Client satisfying server.CustomClient +type CustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient CustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *CustomAPIGrpcClient) doRPCFindFilterSets(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &FindFilterSetsReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.filter_set.FindFilterSetsReq", yamlReq) + } + rsp, err := c.grpcClient.FindFilterSets(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &CustomAPIGrpcClient{ + conn: cc, + grpcClient: NewCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["FindFilterSets"] = ccl.doRPCFindFilterSets + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create CustomAPI REST Client satisfying server.CustomClient +type CustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *CustomAPIRestClient) doRPCFindFilterSets(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &FindFilterSetsReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.filter_set.FindFilterSetsReq: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + for _, item := range req.ContextKeys { + q.Add("context_keys", fmt.Sprintf("%v", item)) + } + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &FindFilterSetsRsp{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.filter_set.FindFilterSetsRsp", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["FindFilterSets"] = ccl.doRPCFindFilterSets + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create customAPIInprocClient + +// INPROC Client (satisfying CustomAPIClient interface) +type customAPIInprocClient struct { + CustomAPIServer +} + +func (c *customAPIInprocClient) FindFilterSets(ctx context.Context, in *FindFilterSetsReq, opts ...grpc.CallOption) (*FindFilterSetsRsp, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.filter_set.CustomAPI.FindFilterSets") + return c.CustomAPIServer.FindFilterSets(ctx, in) +} + +func NewCustomAPIInprocClient(svc svcfw.Service) CustomAPIClient { + return &customAPIInprocClient{CustomAPIServer: NewCustomAPIServer(svc)} +} + +// RegisterGwCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIInprocClient(s)) +} + +// Create customAPISrv + +// SERVER (satisfying CustomAPIServer interface) +type customAPISrv struct { + svc svcfw.Service +} + +func (s *customAPISrv) FindFilterSets(ctx context.Context, in *FindFilterSetsReq) (*FindFilterSetsRsp, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.filter_set.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *FindFilterSetsRsp + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.filter_set.FindFilterSetsReq", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.FindFilterSets' operation on 'filter_set'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.filter_set.CustomAPI.FindFilterSets"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.FindFilterSets(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.filter_set.FindFilterSetsRsp", rsp)...) + + return rsp, nil +} + +func NewCustomAPIServer(svc svcfw.Service) CustomAPIServer { + return &customAPISrv{svc: svc} +} + +var CustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "filter set", + "description": "Filter Set is a set of saved filters used in the Console. This allows users to declare named sets\nof filters so that they can be consistently used and shared to quickly reactivate a particular\nview of the data in the Console.\n\nFilter Set has a context key, which maps a console page or view identifier to the filter set for later retrieval,\nand a list of field name/values.\n\nFilter Sets can be created in a custom namespace or the shared namespace.\nAny Filter Set created by a tenant should not have a value starting with \"ves-io-\"", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/{namespace}/filter_sets/find": { + "post": { + "summary": "Find Filter Sets for 1 or More Context Keys", + "description": "Retrieve any saved filter sets that are applicable for the given context key(s)", + "operationId": "ves.io.schema.filter_set.CustomAPI.FindFilterSets", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/filter_setFindFilterSetsRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-required\nfind filter sets in the given namespace\nx-example: \"bot-defense-apac\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace For Filter Sets" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/filter_setFindFilterSetsReq" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-filter_set-customapi-findfiltersets" + }, + "x-ves-proto-rpc": "ves.io.schema.filter_set.CustomAPI.FindFilterSets" + }, + "x-displayname": "Filter Set", + "x-ves-proto-service": "ves.io.schema.filter_set.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "filter_setFilterExpressionField": { + "type": "object", + "title": "FilterExpressionField", + "x-displayname": "Filter Expression Field", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterExpressionField", + "properties": { + "expression": { + "type": "string", + "description": " expression is a kubernetes style label expression for selections, but\n differs in that it allows special characters in the keys and values\n\nExample: - \"region in (us-west1, us-west2),tier in (staging)\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "expression", + "x-displayname": "Expression Value", + "x-ves-example": "region in (us-west1, us-west2),tier in (staging)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFilterSetField": { + "type": "object", + "description": "a field ID and its value selected by the user", + "title": "FilterSetField", + "x-displayname": "Filter Set Field", + "x-ves-oneof-field-field_value": "[\"date_field\",\"filter_expression_field\",\"string_field\"]", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterSetField", + "properties": { + "date_field": { + "description": "Exclusive with [filter_expression_field string_field]\n", + "title": "date_field", + "$ref": "#/definitions/filter_setFilterTimeRangeField", + "x-displayname": "Date/Time Range" + }, + "field_id": { + "type": "string", + "description": " an identifier for the field that maps to some UI filter component\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "field_id", + "x-displayname": "Field ID", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_expression_field": { + "description": "Exclusive with [date_field string_field]\n", + "title": "filter_label selector expression field", + "$ref": "#/definitions/filter_setFilterExpressionField", + "x-displayname": "Key/Value Selector Expression" + }, + "string_field": { + "description": "Exclusive with [date_field filter_expression_field]\n", + "title": "string_field", + "$ref": "#/definitions/filter_setFilterStringField", + "x-displayname": "String" + } + } + }, + "filter_setFilterStringField": { + "type": "object", + "title": "FilterStringField", + "x-displayname": "Filter String Field", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterStringField", + "properties": { + "field_values": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "field_values", + "items": { + "type": "string" + }, + "x-displayname": "String Value(s)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFilterTimeRangeField": { + "type": "object", + "description": "either an absolute time range or a relative time interval", + "title": "FilterTimeRangeField", + "x-displayname": "Filter Date/Time Range Field", + "x-ves-oneof-field-range_type": "[\"absolute\",\"relative\"]", + "x-ves-proto-message": "ves.io.schema.filter_set.FilterTimeRangeField", + "properties": { + "absolute": { + "description": "Exclusive with [relative]\n absolute start and end timestamps", + "title": "absolute", + "$ref": "#/definitions/schemaDateRange", + "x-displayname": "Absolute" + }, + "relative": { + "type": "string", + "description": "Exclusive with [absolute]\n relative time duration", + "title": "relative", + "x-displayname": "Relative" + } + } + }, + "filter_setFindFilterSetsReq": { + "type": "object", + "description": "Find Filter Sets API returns FilterSets that match the given context key(s)", + "title": "Find Filter Sets Request", + "x-displayname": "Find Filter Sets Request", + "x-ves-proto-message": "ves.io.schema.filter_set.FindFilterSetsReq", + "properties": { + "context_keys": { + "type": "array", + "description": " context key(s) that idenfify one or more console pages/views where filters of the same field/values can be applied\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "context_keys", + "minItems": 1, + "items": { + "type": "string" + }, + "x-displayname": "Context Keys", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "namespace": { + "type": "string", + "description": " find filter sets in the given namespace\n\nExample: - \"bot-defense-apac\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "namespace", + "x-displayname": "Namespace For Filter Sets", + "x-ves-example": "bot-defense-apac", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "filter_setFindFilterSetsRsp": { + "type": "object", + "description": "Response for Find Filter Sets API", + "title": "Find Filter Sets Response", + "x-displayname": "Find Filter Sets Response", + "x-ves-proto-message": "ves.io.schema.filter_set.FindFilterSetsRsp", + "properties": { + "filter_sets": { + "type": "array", + "description": " List of filter sets with the given context key(s)", + "title": "filter_sets", + "items": { + "$ref": "#/definitions/filter_setObject" + }, + "x-displayname": "Filter Sets" + } + } + }, + "filter_setGlobalSpecType": { + "type": "object", + "description": "Global specification", + "title": "Global Specification", + "x-displayname": "Global Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.GlobalSpecType", + "properties": { + "context_key": { + "type": "string", + "description": " indexable context key that identifies a page or page type for which the FilterSet is applicable\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "context_key", + "x-displayname": "Context Key", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "filter_fields": { + "type": "array", + "description": " list of fields and their values selected by the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "filter_fields", + "minItems": 1, + "items": { + "$ref": "#/definitions/filter_setFilterSetField" + }, + "x-displayname": "Filter Fields", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "filter_setObject": { + "type": "object", + "description": "Filter Set object", + "title": "Filter Set", + "x-displayname": "Filter Set", + "x-ves-proto-message": "ves.io.schema.filter_set.Object", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the Filter Set", + "title": "spec", + "$ref": "#/definitions/filter_setSpecType", + "x-displayname": "Spec" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system_metadata", + "$ref": "#/definitions/schemaSystemObjectMetaType", + "x-displayname": "System Metadata" + } + } + }, + "filter_setSpecType": { + "type": "object", + "description": "Shape of the Filter Set specification. This not exposed to customers", + "title": "Specification", + "x-displayname": "Specification", + "x-ves-proto-message": "ves.io.schema.filter_set.SpecType", + "properties": { + "gc_spec": { + "title": "gc_spec", + "$ref": "#/definitions/filter_setGlobalSpecType", + "x-displayname": "GC Spec" + } + } + }, + "schemaDateRange": { + "type": "object", + "description": "Date range is for selecting a date range", + "title": "DateRange", + "x-displayname": "Date Range", + "x-ves-proto-message": "ves.io.schema.DateRange", + "properties": { + "end_date": { + "type": "string", + "description": " Contains end date\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "end_date", + "format": "date-time", + "x-displayname": "End Date", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "start_date": { + "type": "string", + "description": " Contains start date\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "start_date", + "format": "date-time", + "x-displayname": "Start Date", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaLabelSelectorType": { + "type": "object", + "description": "x-displayName: \"Label Selector\"\nThis type can be used to establish a 'selector reference' from one object(called selector) to\na set of other objects(called selectees) based on the value of expresssions.\nA label selector is a label query over a set of resources. An empty label selector matches all objects.\nA null label selector matches no objects. Label selector is immutable.\nexpressions is a list of strings of label selection expression.\nEach string has \",\" separated values which are \"AND\" and all strings are logically \"OR\".\nBNF for expression string\n\u003cselector-syntax\u003e ::= \u003crequirement\u003e | \u003crequirement\u003e \",\" \u003cselector-syntax\u003e\n\u003crequirement\u003e ::= [!] KEY [ \u003cset-based-restriction\u003e | \u003cexact-match-restriction\u003e ]\n\u003cset-based-restriction\u003e ::= \"\" | \u003cinclusion-exclusion\u003e \u003cvalue-set\u003e\n\u003cinclusion-exclusion\u003e ::= \u003cinclusion\u003e | \u003cexclusion\u003e\n\u003cexclusion\u003e ::= \"notin\"\n\u003cinclusion\u003e ::= \"in\"\n\u003cvalue-set\u003e ::= \"(\" \u003cvalues\u003e \")\"\n\u003cvalues\u003e ::= VALUE | VALUE \",\" \u003cvalues\u003e\n\u003cexact-match-restriction\u003e ::= [\"=\"|\"==\"|\"!=\"] VALUE", + "title": "LabelSelectorType", + "properties": { + "expressions": { + "type": "array", + "description": "x-displayName: \"Selector Expression\"\nx-required\nx-example: \"region in (us-west1, us-west2),tier in (staging)\"\nexpressions contains the kubernetes style label expression for selections.", + "title": "expressions", + "items": { + "type": "string" + } + } + } + }, + "schemaObjectMetaType": { + "type": "object", + "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "ObjectMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectMetaType": { + "type": "object", + "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "value" + }, + "creator_cookie": { + "type": "string", + "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", + "title": "creator_cookie", + "x-displayname": "Creator Cookie", + "x-ves-example": "value" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "value" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "namespace": { + "type": "array", + "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "namespace", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Namespace Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "sre_disable": { + "type": "boolean", + "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", + "title": "sre_disable", + "format": "boolean", + "x-displayname": "SRE Disable", + "x-ves-example": "true" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "trace_info": { + "type": "string", + "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", + "title": "trace_info", + "x-displayname": "Trace Info", + "x-ves-example": "value" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Indicate origin of this object.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + } + }, + "x-displayname": "Filter Set", + "x-ves-proto-file": "ves.io/schema/filter_set/public_customapi.proto" +}` diff --git a/pbgo/extschema/schema/filter_set/public_customapi.vesmsg.go b/pbgo/extschema/schema/filter_set/public_customapi.vesmsg.go new file mode 100644 index 000000000..d9bf1a462 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/public_customapi.vesmsg.go @@ -0,0 +1,285 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *FindFilterSetsReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FindFilterSetsReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FindFilterSetsReq) DeepCopy() *FindFilterSetsReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FindFilterSetsReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FindFilterSetsReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FindFilterSetsReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FindFilterSetsReqValidator().Validate(ctx, m, opts...) +} + +type ValidateFindFilterSetsReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFindFilterSetsReq) NamespaceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for namespace") + } + + return validatorFn, nil +} + +func (v *ValidateFindFilterSetsReq) ContextKeysValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for context_keys") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for context_keys") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated context_keys") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items context_keys") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateFindFilterSetsReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FindFilterSetsReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FindFilterSetsReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["context_keys"]; exists { + vOpts := append(opts, db.WithValidateField("context_keys")) + if err := fv(ctx, m.GetContextKeys(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFindFilterSetsReqValidator = func() *ValidateFindFilterSetsReq { + v := &ValidateFindFilterSetsReq{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhNamespace := v.NamespaceValidationRuleHandler + rulesNamespace := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhNamespace(rulesNamespace) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FindFilterSetsReq.namespace: %s", err) + panic(errMsg) + } + v.FldValidators["namespace"] = vFn + + vrhContextKeys := v.ContextKeysValidationRuleHandler + rulesContextKeys := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhContextKeys(rulesContextKeys) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FindFilterSetsReq.context_keys: %s", err) + panic(errMsg) + } + v.FldValidators["context_keys"] = vFn + + return v +}() + +func FindFilterSetsReqValidator() db.Validator { + return DefaultFindFilterSetsReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *FindFilterSetsRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FindFilterSetsRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FindFilterSetsRsp) DeepCopy() *FindFilterSetsRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FindFilterSetsRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FindFilterSetsRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FindFilterSetsRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FindFilterSetsRspValidator().Validate(ctx, m, opts...) +} + +func (m *FindFilterSetsRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return nil, nil + +} + +type ValidateFindFilterSetsRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFindFilterSetsRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FindFilterSetsRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FindFilterSetsRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["filter_sets"]; exists { + + vOpts := append(opts, db.WithValidateField("filter_sets")) + for idx, item := range m.GetFilterSets() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFindFilterSetsRspValidator = func() *ValidateFindFilterSetsRsp { + v := &ValidateFindFilterSetsRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["filter_sets"] = ObjectValidator().Validate + + return v +}() + +func FindFilterSetsRspValidator() db.Validator { + return DefaultFindFilterSetsRspValidator +} diff --git a/pbgo/extschema/schema/filter_set/types.pb.go b/pbgo/extschema/schema/filter_set/types.pb.go new file mode 100644 index 000000000..4ca81d8f7 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/types.pb.go @@ -0,0 +1,3085 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/filter_set/types.proto + +package filter_set + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// FilterTimeRangeField +// +// x-displayName: "Filter Date/Time Range Field" +// either an absolute time range or a relative time interval +type FilterTimeRangeField struct { + // range_type + // + // x-displayName: "Date/Time Range Type" + // x-required + // + // Types that are valid to be assigned to RangeType: + // *FilterTimeRangeField_Absolute + // *FilterTimeRangeField_Relative + RangeType isFilterTimeRangeField_RangeType `protobuf_oneof:"range_type"` +} + +func (m *FilterTimeRangeField) Reset() { *m = FilterTimeRangeField{} } +func (*FilterTimeRangeField) ProtoMessage() {} +func (*FilterTimeRangeField) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{0} +} +func (m *FilterTimeRangeField) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FilterTimeRangeField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *FilterTimeRangeField) XXX_Merge(src proto.Message) { + xxx_messageInfo_FilterTimeRangeField.Merge(m, src) +} +func (m *FilterTimeRangeField) XXX_Size() int { + return m.Size() +} +func (m *FilterTimeRangeField) XXX_DiscardUnknown() { + xxx_messageInfo_FilterTimeRangeField.DiscardUnknown(m) +} + +var xxx_messageInfo_FilterTimeRangeField proto.InternalMessageInfo + +type isFilterTimeRangeField_RangeType interface { + isFilterTimeRangeField_RangeType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type FilterTimeRangeField_Absolute struct { + Absolute *schema.DateRange `protobuf:"bytes,2,opt,name=absolute,proto3,oneof" json:"absolute,omitempty"` +} +type FilterTimeRangeField_Relative struct { + Relative *types.Duration `protobuf:"bytes,3,opt,name=relative,proto3,oneof" json:"relative,omitempty"` +} + +func (*FilterTimeRangeField_Absolute) isFilterTimeRangeField_RangeType() {} +func (*FilterTimeRangeField_Relative) isFilterTimeRangeField_RangeType() {} + +func (m *FilterTimeRangeField) GetRangeType() isFilterTimeRangeField_RangeType { + if m != nil { + return m.RangeType + } + return nil +} + +func (m *FilterTimeRangeField) GetAbsolute() *schema.DateRange { + if x, ok := m.GetRangeType().(*FilterTimeRangeField_Absolute); ok { + return x.Absolute + } + return nil +} + +func (m *FilterTimeRangeField) GetRelative() *types.Duration { + if x, ok := m.GetRangeType().(*FilterTimeRangeField_Relative); ok { + return x.Relative + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*FilterTimeRangeField) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*FilterTimeRangeField_Absolute)(nil), + (*FilterTimeRangeField_Relative)(nil), + } +} + +// FilterStringField +// +// x-displayName: "Filter String Field" +type FilterStringField struct { + // field_values + // + // x-displayName: "String Value(s)" + // x-required + FieldValues []string `protobuf:"bytes,1,rep,name=field_values,json=fieldValues,proto3" json:"field_values,omitempty"` +} + +func (m *FilterStringField) Reset() { *m = FilterStringField{} } +func (*FilterStringField) ProtoMessage() {} +func (*FilterStringField) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{1} +} +func (m *FilterStringField) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FilterStringField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *FilterStringField) XXX_Merge(src proto.Message) { + xxx_messageInfo_FilterStringField.Merge(m, src) +} +func (m *FilterStringField) XXX_Size() int { + return m.Size() +} +func (m *FilterStringField) XXX_DiscardUnknown() { + xxx_messageInfo_FilterStringField.DiscardUnknown(m) +} + +var xxx_messageInfo_FilterStringField proto.InternalMessageInfo + +func (m *FilterStringField) GetFieldValues() []string { + if m != nil { + return m.FieldValues + } + return nil +} + +// FilterExpressionField +// +// x-displayName: "Filter Expression Field" +type FilterExpressionField struct { + // expression + // + // x-displayName: "Expression Value" + // x-required + // x-example: "region in (us-west1, us-west2),tier in (staging)" + // expression is a kubernetes style label expression for selections, but + // differs in that it allows special characters in the keys and values + Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"` +} + +func (m *FilterExpressionField) Reset() { *m = FilterExpressionField{} } +func (*FilterExpressionField) ProtoMessage() {} +func (*FilterExpressionField) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{2} +} +func (m *FilterExpressionField) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FilterExpressionField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *FilterExpressionField) XXX_Merge(src proto.Message) { + xxx_messageInfo_FilterExpressionField.Merge(m, src) +} +func (m *FilterExpressionField) XXX_Size() int { + return m.Size() +} +func (m *FilterExpressionField) XXX_DiscardUnknown() { + xxx_messageInfo_FilterExpressionField.DiscardUnknown(m) +} + +var xxx_messageInfo_FilterExpressionField proto.InternalMessageInfo + +func (m *FilterExpressionField) GetExpression() string { + if m != nil { + return m.Expression + } + return "" +} + +// FilterSetField +// +// x-displayName: "Filter Set Field" +// a field ID and its value selected by the user +type FilterSetField struct { + // field_id + // + // x-displayName: "Field ID" + // x-required + // an identifier for the field that maps to some UI filter component + FieldId string `protobuf:"bytes,1,opt,name=field_id,json=fieldId,proto3" json:"field_id,omitempty"` + // field_value + // + // x-displayName: "Field Value Type" + // x-required + // the type of value selected by the user + // + // Types that are valid to be assigned to FieldValue: + // *FilterSetField_StringField + // *FilterSetField_DateField + // *FilterSetField_LabelSelectorField + // *FilterSetField_FilterExpressionField + FieldValue isFilterSetField_FieldValue `protobuf_oneof:"field_value"` +} + +func (m *FilterSetField) Reset() { *m = FilterSetField{} } +func (*FilterSetField) ProtoMessage() {} +func (*FilterSetField) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{3} +} +func (m *FilterSetField) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FilterSetField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *FilterSetField) XXX_Merge(src proto.Message) { + xxx_messageInfo_FilterSetField.Merge(m, src) +} +func (m *FilterSetField) XXX_Size() int { + return m.Size() +} +func (m *FilterSetField) XXX_DiscardUnknown() { + xxx_messageInfo_FilterSetField.DiscardUnknown(m) +} + +var xxx_messageInfo_FilterSetField proto.InternalMessageInfo + +type isFilterSetField_FieldValue interface { + isFilterSetField_FieldValue() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type FilterSetField_StringField struct { + StringField *FilterStringField `protobuf:"bytes,3,opt,name=string_field,json=stringField,proto3,oneof" json:"string_field,omitempty"` +} +type FilterSetField_DateField struct { + DateField *FilterTimeRangeField `protobuf:"bytes,4,opt,name=date_field,json=dateField,proto3,oneof" json:"date_field,omitempty"` +} +type FilterSetField_LabelSelectorField struct { + LabelSelectorField *schema.LabelSelectorType `protobuf:"bytes,5,opt,name=label_selector_field,json=labelSelectorField,proto3,oneof" json:"label_selector_field,omitempty"` +} +type FilterSetField_FilterExpressionField struct { + FilterExpressionField *FilterExpressionField `protobuf:"bytes,6,opt,name=filter_expression_field,json=filterExpressionField,proto3,oneof" json:"filter_expression_field,omitempty"` +} + +func (*FilterSetField_StringField) isFilterSetField_FieldValue() {} +func (*FilterSetField_DateField) isFilterSetField_FieldValue() {} +func (*FilterSetField_LabelSelectorField) isFilterSetField_FieldValue() {} +func (*FilterSetField_FilterExpressionField) isFilterSetField_FieldValue() {} + +func (m *FilterSetField) GetFieldValue() isFilterSetField_FieldValue { + if m != nil { + return m.FieldValue + } + return nil +} + +func (m *FilterSetField) GetFieldId() string { + if m != nil { + return m.FieldId + } + return "" +} + +func (m *FilterSetField) GetStringField() *FilterStringField { + if x, ok := m.GetFieldValue().(*FilterSetField_StringField); ok { + return x.StringField + } + return nil +} + +func (m *FilterSetField) GetDateField() *FilterTimeRangeField { + if x, ok := m.GetFieldValue().(*FilterSetField_DateField); ok { + return x.DateField + } + return nil +} + +func (m *FilterSetField) GetLabelSelectorField() *schema.LabelSelectorType { + if x, ok := m.GetFieldValue().(*FilterSetField_LabelSelectorField); ok { + return x.LabelSelectorField + } + return nil +} + +func (m *FilterSetField) GetFilterExpressionField() *FilterExpressionField { + if x, ok := m.GetFieldValue().(*FilterSetField_FilterExpressionField); ok { + return x.FilterExpressionField + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*FilterSetField) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*FilterSetField_StringField)(nil), + (*FilterSetField_DateField)(nil), + (*FilterSetField_LabelSelectorField)(nil), + (*FilterSetField_FilterExpressionField)(nil), + } +} + +// Global Specification +// +// x-displayName: "Global Specification" +// Global specification +type GlobalSpecType struct { + // context_key + // + // x-displayName: "Context Key" + // x-required + // indexable context key that identifies a page or page type for which the FilterSet is applicable + ContextKey string `protobuf:"bytes,1,opt,name=context_key,json=contextKey,proto3" json:"context_key,omitempty"` + // filter_fields + // + // x-displayName: "Filter Fields" + // x-required + // list of fields and their values selected by the user + FilterFields []*FilterSetField `protobuf:"bytes,2,rep,name=filter_fields,json=filterFields,proto3" json:"filter_fields,omitempty"` +} + +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{4} +} +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) +} +func (m *GlobalSpecType) XXX_Size() int { + return m.Size() +} +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo + +func (m *GlobalSpecType) GetContextKey() string { + if m != nil { + return m.ContextKey + } + return "" +} + +func (m *GlobalSpecType) GetFilterFields() []*FilterSetField { + if m != nil { + return m.FilterFields + } + return nil +} + +// Create Specification +// +// x-displayName: "Create Specification" +// Create specification +type CreateSpecType struct { + ContextKey string `protobuf:"bytes,1,opt,name=context_key,json=contextKey,proto3" json:"context_key,omitempty"` + FilterFields []*FilterSetField `protobuf:"bytes,2,rep,name=filter_fields,json=filterFields,proto3" json:"filter_fields,omitempty"` +} + +func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } +func (*CreateSpecType) ProtoMessage() {} +func (*CreateSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{5} +} +func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CreateSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateSpecType.Merge(m, src) +} +func (m *CreateSpecType) XXX_Size() int { + return m.Size() +} +func (m *CreateSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_CreateSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo + +func (m *CreateSpecType) GetContextKey() string { + if m != nil { + return m.ContextKey + } + return "" +} + +func (m *CreateSpecType) GetFilterFields() []*FilterSetField { + if m != nil { + return m.FilterFields + } + return nil +} + +// Replace Specification +// +// x-displayName: "Replace Specification" +// Replace specification +type ReplaceSpecType struct { + ContextKey string `protobuf:"bytes,1,opt,name=context_key,json=contextKey,proto3" json:"context_key,omitempty"` + FilterFields []*FilterSetField `protobuf:"bytes,2,rep,name=filter_fields,json=filterFields,proto3" json:"filter_fields,omitempty"` +} + +func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } +func (*ReplaceSpecType) ProtoMessage() {} +func (*ReplaceSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{6} +} +func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceSpecType.Merge(m, src) +} +func (m *ReplaceSpecType) XXX_Size() int { + return m.Size() +} +func (m *ReplaceSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo + +func (m *ReplaceSpecType) GetContextKey() string { + if m != nil { + return m.ContextKey + } + return "" +} + +func (m *ReplaceSpecType) GetFilterFields() []*FilterSetField { + if m != nil { + return m.FilterFields + } + return nil +} + +// Get Specification +// +// x-displayName: "Get Specification" +// Get specification +type GetSpecType struct { + ContextKey string `protobuf:"bytes,1,opt,name=context_key,json=contextKey,proto3" json:"context_key,omitempty"` + FilterFields []*FilterSetField `protobuf:"bytes,2,rep,name=filter_fields,json=filterFields,proto3" json:"filter_fields,omitempty"` +} + +func (m *GetSpecType) Reset() { *m = GetSpecType{} } +func (*GetSpecType) ProtoMessage() {} +func (*GetSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0d10208c8b5f19db, []int{7} +} +func (m *GetSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GetSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetSpecType.Merge(m, src) +} +func (m *GetSpecType) XXX_Size() int { + return m.Size() +} +func (m *GetSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GetSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GetSpecType proto.InternalMessageInfo + +func (m *GetSpecType) GetContextKey() string { + if m != nil { + return m.ContextKey + } + return "" +} + +func (m *GetSpecType) GetFilterFields() []*FilterSetField { + if m != nil { + return m.FilterFields + } + return nil +} + +func init() { + proto.RegisterType((*FilterTimeRangeField)(nil), "ves.io.schema.filter_set.FilterTimeRangeField") + golang_proto.RegisterType((*FilterTimeRangeField)(nil), "ves.io.schema.filter_set.FilterTimeRangeField") + proto.RegisterType((*FilterStringField)(nil), "ves.io.schema.filter_set.FilterStringField") + golang_proto.RegisterType((*FilterStringField)(nil), "ves.io.schema.filter_set.FilterStringField") + proto.RegisterType((*FilterExpressionField)(nil), "ves.io.schema.filter_set.FilterExpressionField") + golang_proto.RegisterType((*FilterExpressionField)(nil), "ves.io.schema.filter_set.FilterExpressionField") + proto.RegisterType((*FilterSetField)(nil), "ves.io.schema.filter_set.FilterSetField") + golang_proto.RegisterType((*FilterSetField)(nil), "ves.io.schema.filter_set.FilterSetField") + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.filter_set.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.filter_set.GlobalSpecType") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.filter_set.CreateSpecType") + golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.filter_set.CreateSpecType") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.filter_set.ReplaceSpecType") + golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.filter_set.ReplaceSpecType") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.filter_set.GetSpecType") + golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.filter_set.GetSpecType") +} + +func init() { + proto.RegisterFile("ves.io/schema/filter_set/types.proto", fileDescriptor_0d10208c8b5f19db) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/filter_set/types.proto", fileDescriptor_0d10208c8b5f19db) +} + +var fileDescriptor_0d10208c8b5f19db = []byte{ + // 749 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x55, 0xbf, 0x4f, 0xdb, 0x4c, + 0x18, 0xf6, 0x25, 0x81, 0x2f, 0x5c, 0xf8, 0xf8, 0xc0, 0x1f, 0xa8, 0x26, 0xad, 0xae, 0x6e, 0xda, + 0x21, 0x6a, 0x85, 0x2d, 0x51, 0x09, 0x24, 0x86, 0x0e, 0x29, 0x85, 0x94, 0xfe, 0x94, 0x41, 0x1d, + 0xba, 0x44, 0x4e, 0xf2, 0xc6, 0x58, 0x38, 0x39, 0xcb, 0x77, 0x49, 0xc9, 0x50, 0x89, 0x3f, 0xa0, + 0x03, 0x6a, 0xab, 0xee, 0xdd, 0xfa, 0x37, 0x94, 0x85, 0xb1, 0x62, 0xca, 0xc8, 0xd6, 0xe2, 0x2c, + 0x74, 0xe3, 0x4f, 0xa8, 0x7c, 0xbe, 0x40, 0x12, 0x8a, 0xa8, 0xd4, 0x85, 0xed, 0xee, 0x7d, 0x9f, + 0xe7, 0xb9, 0xe7, 0xb9, 0x7b, 0x65, 0xe3, 0x3b, 0x2d, 0x60, 0x86, 0x4b, 0x4d, 0x56, 0xd9, 0x84, + 0xba, 0x6d, 0xd6, 0x5c, 0x8f, 0x43, 0x50, 0x62, 0xc0, 0x4d, 0xde, 0xf6, 0x81, 0x19, 0x7e, 0x40, + 0x39, 0x55, 0xb5, 0x18, 0x65, 0xc4, 0x28, 0xe3, 0x0c, 0x95, 0x9d, 0x73, 0x5c, 0xbe, 0xd9, 0x2c, + 0x1b, 0x15, 0x5a, 0x37, 0x1d, 0xea, 0x50, 0x53, 0x10, 0xca, 0xcd, 0x9a, 0xd8, 0x89, 0x8d, 0x58, + 0xc5, 0x42, 0x59, 0xe2, 0x50, 0xea, 0x78, 0x70, 0x86, 0xaa, 0x36, 0x03, 0x9b, 0xbb, 0xb4, 0x21, + 0xfb, 0xd7, 0x07, 0xed, 0x50, 0x3f, 0xea, 0x49, 0x17, 0xd9, 0xd9, 0xc1, 0x66, 0x9f, 0xc1, 0xec, + 0x8d, 0xc1, 0x56, 0xcb, 0xf6, 0xdc, 0xaa, 0xcd, 0x41, 0x76, 0xf5, 0xa1, 0xae, 0x0b, 0x6f, 0x4a, + 0x03, 0xd2, 0xb9, 0xcf, 0x08, 0x4f, 0xaf, 0x88, 0x54, 0x1b, 0x6e, 0x1d, 0x2c, 0xbb, 0xe1, 0xc0, + 0x8a, 0x0b, 0x5e, 0x55, 0x5d, 0xc0, 0x69, 0xbb, 0xcc, 0xa8, 0xd7, 0xe4, 0xa0, 0x25, 0x74, 0x94, + 0xcf, 0xcc, 0x6b, 0xc6, 0xe0, 0x65, 0x2c, 0xdb, 0x3c, 0x26, 0x14, 0x15, 0xeb, 0x14, 0xab, 0x2e, + 0xe2, 0x74, 0x00, 0x9e, 0xcd, 0xdd, 0x16, 0x68, 0x49, 0xc1, 0x9b, 0x35, 0xe2, 0xec, 0x46, 0x2f, + 0xbb, 0xb1, 0x2c, 0xb3, 0x47, 0xc4, 0x1e, 0xb8, 0xa0, 0x62, 0x1c, 0x44, 0x6a, 0xa5, 0x28, 0x9e, + 0x9a, 0xea, 0xec, 0x21, 0xb4, 0x96, 0x4a, 0xa3, 0xc9, 0x44, 0x6e, 0x01, 0x4f, 0xc5, 0x16, 0xd7, + 0x79, 0xe0, 0x36, 0x9c, 0xd8, 0xdf, 0x2d, 0x3c, 0x5e, 0x8b, 0x16, 0xa5, 0x96, 0xed, 0x35, 0x81, + 0x69, 0x48, 0x4f, 0xe6, 0xc7, 0xac, 0x8c, 0xa8, 0xbd, 0x12, 0xa5, 0xdc, 0x22, 0x9e, 0x89, 0x79, + 0x8f, 0xb6, 0xfd, 0x00, 0x18, 0x73, 0x69, 0x23, 0xe6, 0x12, 0x8c, 0xe1, 0xb4, 0xa4, 0x21, 0x1d, + 0xe5, 0xc7, 0xac, 0xbe, 0x4a, 0xee, 0x7b, 0x12, 0x4f, 0xc8, 0x13, 0x81, 0xc7, 0x94, 0x59, 0x9c, + 0x8e, 0x8f, 0x73, 0xab, 0x92, 0xf0, 0x8f, 0xd8, 0x3f, 0xae, 0xaa, 0x2f, 0xf1, 0x38, 0x13, 0xc6, + 0x4a, 0xa2, 0x22, 0x53, 0xdf, 0x33, 0x2e, 0x1a, 0x1d, 0xe3, 0x5c, 0x98, 0xa2, 0x62, 0x65, 0x58, + 0x5f, 0xb6, 0x17, 0x18, 0x47, 0x8f, 0x28, 0xf5, 0x52, 0x42, 0xcf, 0xb8, 0x4c, 0x6f, 0xf0, 0xfd, + 0x8a, 0x8a, 0x35, 0x16, 0x69, 0xc4, 0x82, 0x3b, 0x08, 0x4f, 0x7b, 0x76, 0x19, 0xbc, 0x12, 0x03, + 0x0f, 0x2a, 0x9c, 0x06, 0x52, 0x7b, 0x44, 0x68, 0xeb, 0x43, 0xda, 0x4f, 0x23, 0xe8, 0xba, 0x44, + 0x6e, 0xb4, 0x7d, 0x28, 0xdc, 0x0d, 0xdf, 0xde, 0x6e, 0x32, 0xd0, 0xe5, 0xa9, 0x67, 0x77, 0x15, + 0xeb, 0xe8, 0x6e, 0x83, 0x71, 0xb0, 0xab, 0xc7, 0x7b, 0x08, 0x15, 0x15, 0x4b, 0xf5, 0xfa, 0x05, + 0x62, 0x0b, 0x2e, 0xbe, 0x76, 0x01, 0x59, 0x1b, 0x15, 0x26, 0xcc, 0xcb, 0x02, 0x0e, 0xbd, 0x62, + 0x51, 0xb1, 0x66, 0x6a, 0xbf, 0x6b, 0x2c, 0x8d, 0x1e, 0xec, 0xa1, 0xc4, 0x24, 0x2a, 0xfc, 0x8f, + 0x33, 0x7d, 0x23, 0x22, 0x46, 0x2a, 0xb1, 0x96, 0x4a, 0x27, 0x26, 0x93, 0xb9, 0x4f, 0x08, 0x4f, + 0xac, 0x7a, 0xb4, 0x6c, 0x7b, 0xeb, 0x3e, 0x54, 0xa2, 0x88, 0xea, 0x4d, 0x9c, 0xa9, 0xd0, 0x06, + 0x87, 0x6d, 0x5e, 0xda, 0x82, 0x76, 0x6f, 0x2a, 0x64, 0xe9, 0x09, 0xb4, 0xd5, 0x0a, 0xfe, 0x57, + 0x7a, 0x12, 0xaa, 0x4c, 0x4b, 0xe8, 0xc9, 0x7c, 0x66, 0x3e, 0x7f, 0xe9, 0x43, 0xcb, 0x19, 0x2a, + 0x4c, 0x7f, 0xfd, 0xb9, 0x9f, 0x1c, 0x79, 0x8f, 0x12, 0x69, 0xd4, 0x5b, 0x69, 0xc8, 0x1a, 0x8f, + 0x09, 0x02, 0xc2, 0x72, 0x1f, 0x10, 0x9e, 0x78, 0x18, 0x80, 0xcd, 0xe1, 0xcf, 0x8d, 0x3d, 0xfb, + 0x4b, 0x63, 0x83, 0x16, 0x96, 0xa6, 0x0e, 0x1e, 0x0c, 0xdd, 0x4d, 0xee, 0x23, 0xc2, 0xff, 0x59, + 0xe0, 0x7b, 0x76, 0xe5, 0x4a, 0xd9, 0xda, 0x45, 0x38, 0xb3, 0x0a, 0xfc, 0x0a, 0x59, 0x2a, 0xbc, + 0x43, 0x9d, 0x23, 0xa2, 0x1c, 0x1e, 0x11, 0xe5, 0xe4, 0x88, 0xa0, 0x9d, 0x90, 0xa0, 0x2f, 0x21, + 0x41, 0xdf, 0x42, 0x82, 0x3a, 0x21, 0x41, 0x87, 0x21, 0x41, 0x3f, 0x42, 0x82, 0x8e, 0x43, 0xa2, + 0x9c, 0x84, 0x04, 0xed, 0x76, 0x89, 0xb2, 0xdf, 0x25, 0xa8, 0xd3, 0x25, 0xca, 0x61, 0x97, 0x28, + 0xaf, 0x9f, 0x3b, 0xd4, 0xdf, 0x72, 0x8c, 0x16, 0x8d, 0x4e, 0x09, 0x6c, 0xa3, 0xc9, 0x4c, 0xb1, + 0xa8, 0xd1, 0xa0, 0x3e, 0xe7, 0x07, 0xb4, 0xe5, 0x56, 0x21, 0x98, 0xeb, 0xb5, 0x4d, 0xbf, 0xec, + 0x50, 0x13, 0xb6, 0xb9, 0xfc, 0xbe, 0x9f, 0xfb, 0x97, 0x95, 0x47, 0xc5, 0x37, 0xf7, 0xfe, 0xaf, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x3e, 0x7b, 0x2a, 0x94, 0xee, 0x06, 0x00, 0x00, +} + +func (this *FilterTimeRangeField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterTimeRangeField) + if !ok { + that2, ok := that.(FilterTimeRangeField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.RangeType == nil { + if this.RangeType != nil { + return false + } + } else if this.RangeType == nil { + return false + } else if !this.RangeType.Equal(that1.RangeType) { + return false + } + return true +} +func (this *FilterTimeRangeField_Absolute) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterTimeRangeField_Absolute) + if !ok { + that2, ok := that.(FilterTimeRangeField_Absolute) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Absolute.Equal(that1.Absolute) { + return false + } + return true +} +func (this *FilterTimeRangeField_Relative) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterTimeRangeField_Relative) + if !ok { + that2, ok := that.(FilterTimeRangeField_Relative) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Relative.Equal(that1.Relative) { + return false + } + return true +} +func (this *FilterStringField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterStringField) + if !ok { + that2, ok := that.(FilterStringField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.FieldValues) != len(that1.FieldValues) { + return false + } + for i := range this.FieldValues { + if this.FieldValues[i] != that1.FieldValues[i] { + return false + } + } + return true +} +func (this *FilterExpressionField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterExpressionField) + if !ok { + that2, ok := that.(FilterExpressionField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Expression != that1.Expression { + return false + } + return true +} +func (this *FilterSetField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterSetField) + if !ok { + that2, ok := that.(FilterSetField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.FieldId != that1.FieldId { + return false + } + if that1.FieldValue == nil { + if this.FieldValue != nil { + return false + } + } else if this.FieldValue == nil { + return false + } else if !this.FieldValue.Equal(that1.FieldValue) { + return false + } + return true +} +func (this *FilterSetField_StringField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterSetField_StringField) + if !ok { + that2, ok := that.(FilterSetField_StringField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.StringField.Equal(that1.StringField) { + return false + } + return true +} +func (this *FilterSetField_DateField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterSetField_DateField) + if !ok { + that2, ok := that.(FilterSetField_DateField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DateField.Equal(that1.DateField) { + return false + } + return true +} +func (this *FilterSetField_LabelSelectorField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterSetField_LabelSelectorField) + if !ok { + that2, ok := that.(FilterSetField_LabelSelectorField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.LabelSelectorField.Equal(that1.LabelSelectorField) { + return false + } + return true +} +func (this *FilterSetField_FilterExpressionField) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FilterSetField_FilterExpressionField) + if !ok { + that2, ok := that.(FilterSetField_FilterExpressionField) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.FilterExpressionField.Equal(that1.FilterExpressionField) { + return false + } + return true +} +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ContextKey != that1.ContextKey { + return false + } + if len(this.FilterFields) != len(that1.FilterFields) { + return false + } + for i := range this.FilterFields { + if !this.FilterFields[i].Equal(that1.FilterFields[i]) { + return false + } + } + return true +} +func (this *CreateSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType) + if !ok { + that2, ok := that.(CreateSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ContextKey != that1.ContextKey { + return false + } + if len(this.FilterFields) != len(that1.FilterFields) { + return false + } + for i := range this.FilterFields { + if !this.FilterFields[i].Equal(that1.FilterFields[i]) { + return false + } + } + return true +} +func (this *ReplaceSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType) + if !ok { + that2, ok := that.(ReplaceSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ContextKey != that1.ContextKey { + return false + } + if len(this.FilterFields) != len(that1.FilterFields) { + return false + } + for i := range this.FilterFields { + if !this.FilterFields[i].Equal(that1.FilterFields[i]) { + return false + } + } + return true +} +func (this *GetSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType) + if !ok { + that2, ok := that.(GetSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ContextKey != that1.ContextKey { + return false + } + if len(this.FilterFields) != len(that1.FilterFields) { + return false + } + for i := range this.FilterFields { + if !this.FilterFields[i].Equal(that1.FilterFields[i]) { + return false + } + } + return true +} +func (this *FilterTimeRangeField) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.FilterTimeRangeField{") + if this.RangeType != nil { + s = append(s, "RangeType: "+fmt.Sprintf("%#v", this.RangeType)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FilterTimeRangeField_Absolute) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&filter_set.FilterTimeRangeField_Absolute{` + + `Absolute:` + fmt.Sprintf("%#v", this.Absolute) + `}`}, ", ") + return s +} +func (this *FilterTimeRangeField_Relative) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&filter_set.FilterTimeRangeField_Relative{` + + `Relative:` + fmt.Sprintf("%#v", this.Relative) + `}`}, ", ") + return s +} +func (this *FilterStringField) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&filter_set.FilterStringField{") + s = append(s, "FieldValues: "+fmt.Sprintf("%#v", this.FieldValues)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FilterExpressionField) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&filter_set.FilterExpressionField{") + s = append(s, "Expression: "+fmt.Sprintf("%#v", this.Expression)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FilterSetField) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&filter_set.FilterSetField{") + s = append(s, "FieldId: "+fmt.Sprintf("%#v", this.FieldId)+",\n") + if this.FieldValue != nil { + s = append(s, "FieldValue: "+fmt.Sprintf("%#v", this.FieldValue)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FilterSetField_StringField) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&filter_set.FilterSetField_StringField{` + + `StringField:` + fmt.Sprintf("%#v", this.StringField) + `}`}, ", ") + return s +} +func (this *FilterSetField_DateField) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&filter_set.FilterSetField_DateField{` + + `DateField:` + fmt.Sprintf("%#v", this.DateField) + `}`}, ", ") + return s +} +func (this *FilterSetField_LabelSelectorField) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&filter_set.FilterSetField_LabelSelectorField{` + + `LabelSelectorField:` + fmt.Sprintf("%#v", this.LabelSelectorField) + `}`}, ", ") + return s +} +func (this *FilterSetField_FilterExpressionField) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&filter_set.FilterSetField_FilterExpressionField{` + + `FilterExpressionField:` + fmt.Sprintf("%#v", this.FilterExpressionField) + `}`}, ", ") + return s +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.GlobalSpecType{") + s = append(s, "ContextKey: "+fmt.Sprintf("%#v", this.ContextKey)+",\n") + if this.FilterFields != nil { + s = append(s, "FilterFields: "+fmt.Sprintf("%#v", this.FilterFields)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.CreateSpecType{") + s = append(s, "ContextKey: "+fmt.Sprintf("%#v", this.ContextKey)+",\n") + if this.FilterFields != nil { + s = append(s, "FilterFields: "+fmt.Sprintf("%#v", this.FilterFields)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.ReplaceSpecType{") + s = append(s, "ContextKey: "+fmt.Sprintf("%#v", this.ContextKey)+",\n") + if this.FilterFields != nil { + s = append(s, "FilterFields: "+fmt.Sprintf("%#v", this.FilterFields)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&filter_set.GetSpecType{") + s = append(s, "ContextKey: "+fmt.Sprintf("%#v", this.ContextKey)+",\n") + if this.FilterFields != nil { + s = append(s, "FilterFields: "+fmt.Sprintf("%#v", this.FilterFields)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *FilterTimeRangeField) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FilterTimeRangeField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterTimeRangeField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.RangeType != nil { + { + size := m.RangeType.Size() + i -= size + if _, err := m.RangeType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *FilterTimeRangeField_Absolute) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterTimeRangeField_Absolute) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Absolute != nil { + { + size, err := m.Absolute.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *FilterTimeRangeField_Relative) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterTimeRangeField_Relative) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Relative != nil { + { + size, err := m.Relative.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *FilterStringField) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FilterStringField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterStringField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.FieldValues) > 0 { + for iNdEx := len(m.FieldValues) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.FieldValues[iNdEx]) + copy(dAtA[i:], m.FieldValues[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.FieldValues[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *FilterExpressionField) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FilterExpressionField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterExpressionField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Expression) > 0 { + i -= len(m.Expression) + copy(dAtA[i:], m.Expression) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Expression))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *FilterSetField) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FilterSetField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterSetField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FieldValue != nil { + { + size := m.FieldValue.Size() + i -= size + if _, err := m.FieldValue.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.FieldId) > 0 { + i -= len(m.FieldId) + copy(dAtA[i:], m.FieldId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.FieldId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *FilterSetField_StringField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterSetField_StringField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.StringField != nil { + { + size, err := m.StringField.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *FilterSetField_DateField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterSetField_DateField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DateField != nil { + { + size, err := m.DateField.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *FilterSetField_LabelSelectorField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterSetField_LabelSelectorField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.LabelSelectorField != nil { + { + size, err := m.LabelSelectorField.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *FilterSetField_FilterExpressionField) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FilterSetField_FilterExpressionField) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.FilterExpressionField != nil { + { + size, err := m.FilterExpressionField.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.FilterFields) > 0 { + for iNdEx := len(m.FilterFields) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.FilterFields[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.ContextKey) > 0 { + i -= len(m.ContextKey) + copy(dAtA[i:], m.ContextKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ContextKey))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.FilterFields) > 0 { + for iNdEx := len(m.FilterFields) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.FilterFields[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.ContextKey) > 0 { + i -= len(m.ContextKey) + copy(dAtA[i:], m.ContextKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ContextKey))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.FilterFields) > 0 { + for iNdEx := len(m.FilterFields) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.FilterFields[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.ContextKey) > 0 { + i -= len(m.ContextKey) + copy(dAtA[i:], m.ContextKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ContextKey))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.FilterFields) > 0 { + for iNdEx := len(m.FilterFields) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.FilterFields[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.ContextKey) > 0 { + i -= len(m.ContextKey) + copy(dAtA[i:], m.ContextKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ContextKey))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *FilterTimeRangeField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RangeType != nil { + n += m.RangeType.Size() + } + return n +} + +func (m *FilterTimeRangeField_Absolute) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Absolute != nil { + l = m.Absolute.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *FilterTimeRangeField_Relative) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Relative != nil { + l = m.Relative.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *FilterStringField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.FieldValues) > 0 { + for _, s := range m.FieldValues { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *FilterExpressionField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Expression) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *FilterSetField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.FieldId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.FieldValue != nil { + n += m.FieldValue.Size() + } + return n +} + +func (m *FilterSetField_StringField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.StringField != nil { + l = m.StringField.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *FilterSetField_DateField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DateField != nil { + l = m.DateField.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *FilterSetField_LabelSelectorField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.LabelSelectorField != nil { + l = m.LabelSelectorField.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *FilterSetField_FilterExpressionField) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.FilterExpressionField != nil { + l = m.FilterExpressionField.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ContextKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.FilterFields) > 0 { + for _, e := range m.FilterFields { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *CreateSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ContextKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.FilterFields) > 0 { + for _, e := range m.FilterFields { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *ReplaceSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ContextKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.FilterFields) > 0 { + for _, e := range m.FilterFields { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ContextKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.FilterFields) > 0 { + for _, e := range m.FilterFields { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *FilterTimeRangeField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterTimeRangeField{`, + `RangeType:` + fmt.Sprintf("%v", this.RangeType) + `,`, + `}`, + }, "") + return s +} +func (this *FilterTimeRangeField_Absolute) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterTimeRangeField_Absolute{`, + `Absolute:` + strings.Replace(fmt.Sprintf("%v", this.Absolute), "DateRange", "schema.DateRange", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FilterTimeRangeField_Relative) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterTimeRangeField_Relative{`, + `Relative:` + strings.Replace(fmt.Sprintf("%v", this.Relative), "Duration", "types.Duration", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FilterStringField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterStringField{`, + `FieldValues:` + fmt.Sprintf("%v", this.FieldValues) + `,`, + `}`, + }, "") + return s +} +func (this *FilterExpressionField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterExpressionField{`, + `Expression:` + fmt.Sprintf("%v", this.Expression) + `,`, + `}`, + }, "") + return s +} +func (this *FilterSetField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterSetField{`, + `FieldId:` + fmt.Sprintf("%v", this.FieldId) + `,`, + `FieldValue:` + fmt.Sprintf("%v", this.FieldValue) + `,`, + `}`, + }, "") + return s +} +func (this *FilterSetField_StringField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterSetField_StringField{`, + `StringField:` + strings.Replace(fmt.Sprintf("%v", this.StringField), "FilterStringField", "FilterStringField", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FilterSetField_DateField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterSetField_DateField{`, + `DateField:` + strings.Replace(fmt.Sprintf("%v", this.DateField), "FilterTimeRangeField", "FilterTimeRangeField", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FilterSetField_LabelSelectorField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterSetField_LabelSelectorField{`, + `LabelSelectorField:` + strings.Replace(fmt.Sprintf("%v", this.LabelSelectorField), "LabelSelectorType", "schema.LabelSelectorType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FilterSetField_FilterExpressionField) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilterSetField_FilterExpressionField{`, + `FilterExpressionField:` + strings.Replace(fmt.Sprintf("%v", this.FilterExpressionField), "FilterExpressionField", "FilterExpressionField", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForFilterFields := "[]*FilterSetField{" + for _, f := range this.FilterFields { + repeatedStringForFilterFields += strings.Replace(f.String(), "FilterSetField", "FilterSetField", 1) + "," + } + repeatedStringForFilterFields += "}" + s := strings.Join([]string{`&GlobalSpecType{`, + `ContextKey:` + fmt.Sprintf("%v", this.ContextKey) + `,`, + `FilterFields:` + repeatedStringForFilterFields + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForFilterFields := "[]*FilterSetField{" + for _, f := range this.FilterFields { + repeatedStringForFilterFields += strings.Replace(f.String(), "FilterSetField", "FilterSetField", 1) + "," + } + repeatedStringForFilterFields += "}" + s := strings.Join([]string{`&CreateSpecType{`, + `ContextKey:` + fmt.Sprintf("%v", this.ContextKey) + `,`, + `FilterFields:` + repeatedStringForFilterFields + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForFilterFields := "[]*FilterSetField{" + for _, f := range this.FilterFields { + repeatedStringForFilterFields += strings.Replace(f.String(), "FilterSetField", "FilterSetField", 1) + "," + } + repeatedStringForFilterFields += "}" + s := strings.Join([]string{`&ReplaceSpecType{`, + `ContextKey:` + fmt.Sprintf("%v", this.ContextKey) + `,`, + `FilterFields:` + repeatedStringForFilterFields + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForFilterFields := "[]*FilterSetField{" + for _, f := range this.FilterFields { + repeatedStringForFilterFields += strings.Replace(f.String(), "FilterSetField", "FilterSetField", 1) + "," + } + repeatedStringForFilterFields += "}" + s := strings.Join([]string{`&GetSpecType{`, + `ContextKey:` + fmt.Sprintf("%v", this.ContextKey) + `,`, + `FilterFields:` + repeatedStringForFilterFields + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *FilterTimeRangeField) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FilterTimeRangeField: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FilterTimeRangeField: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Absolute", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.DateRange{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RangeType = &FilterTimeRangeField_Absolute{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Relative", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &types.Duration{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RangeType = &FilterTimeRangeField_Relative{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *FilterStringField) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FilterStringField: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FilterStringField: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FieldValues", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FieldValues = append(m.FieldValues, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *FilterExpressionField) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FilterExpressionField: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FilterExpressionField: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Expression", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Expression = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *FilterSetField) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FilterSetField: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FilterSetField: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FieldId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FieldId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StringField", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &FilterStringField{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.FieldValue = &FilterSetField_StringField{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DateField", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &FilterTimeRangeField{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.FieldValue = &FilterSetField_DateField{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelSelectorField", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.LabelSelectorType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.FieldValue = &FilterSetField_LabelSelectorField{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FilterExpressionField", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &FilterExpressionField{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.FieldValue = &FilterSetField_FilterExpressionField{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContextKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContextKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FilterFields", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FilterFields = append(m.FilterFields, &FilterSetField{}) + if err := m.FilterFields[len(m.FilterFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContextKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContextKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FilterFields", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FilterFields = append(m.FilterFields, &FilterSetField{}) + if err := m.FilterFields[len(m.FilterFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContextKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContextKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FilterFields", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FilterFields = append(m.FilterFields, &FilterSetField{}) + if err := m.FilterFields[len(m.FilterFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContextKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContextKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FilterFields", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FilterFields = append(m.FilterFields, &FilterSetField{}) + if err := m.FilterFields[len(m.FilterFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipTypes(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthTypes + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupTypes + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthTypes + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthTypes = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowTypes = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/filter_set/types.vesmsg.go b/pbgo/extschema/schema/filter_set/types.vesmsg.go new file mode 100644 index 000000000..e1036e8a4 --- /dev/null +++ b/pbgo/extschema/schema/filter_set/types.vesmsg.go @@ -0,0 +1,1402 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package filter_set + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CreateSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateSpecType) DeepCopy() *CreateSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateSpecType) ContextKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for context_key") + } + + return validatorFn, nil +} + +func (v *ValidateCreateSpecType) FilterFieldsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for filter_fields") + } + itemsValidatorFn := func(ctx context.Context, elems []*FilterSetField, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := FilterSetFieldValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for filter_fields") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*FilterSetField) + if !ok { + return fmt.Errorf("Repeated validation expected []*FilterSetField, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated filter_fields") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items filter_fields") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["context_key"]; exists { + + vOpts := append(opts, db.WithValidateField("context_key")) + if err := fv(ctx, m.GetContextKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["filter_fields"]; exists { + vOpts := append(opts, db.WithValidateField("filter_fields")) + if err := fv(ctx, m.GetFilterFields(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { + v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhContextKey := v.ContextKeyValidationRuleHandler + rulesContextKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhContextKey(rulesContextKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.context_key: %s", err) + panic(errMsg) + } + v.FldValidators["context_key"] = vFn + + vrhFilterFields := v.FilterFieldsValidationRuleHandler + rulesFilterFields := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFilterFields(rulesFilterFields) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.filter_fields: %s", err) + panic(errMsg) + } + v.FldValidators["filter_fields"] = vFn + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *FilterExpressionField) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FilterExpressionField) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FilterExpressionField) DeepCopy() *FilterExpressionField { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FilterExpressionField{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FilterExpressionField) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FilterExpressionField) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FilterExpressionFieldValidator().Validate(ctx, m, opts...) +} + +type ValidateFilterExpressionField struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFilterExpressionField) ExpressionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for expression") + } + + return validatorFn, nil +} + +func (v *ValidateFilterExpressionField) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FilterExpressionField) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FilterExpressionField got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["expression"]; exists { + + vOpts := append(opts, db.WithValidateField("expression")) + if err := fv(ctx, m.GetExpression(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFilterExpressionFieldValidator = func() *ValidateFilterExpressionField { + v := &ValidateFilterExpressionField{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhExpression := v.ExpressionValidationRuleHandler + rulesExpression := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhExpression(rulesExpression) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FilterExpressionField.expression: %s", err) + panic(errMsg) + } + v.FldValidators["expression"] = vFn + + return v +}() + +func FilterExpressionFieldValidator() db.Validator { + return DefaultFilterExpressionFieldValidator +} + +// augmented methods on protoc/std generated struct + +func (m *FilterSetField) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FilterSetField) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FilterSetField) DeepCopy() *FilterSetField { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FilterSetField{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FilterSetField) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FilterSetField) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FilterSetFieldValidator().Validate(ctx, m, opts...) +} + +type ValidateFilterSetField struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFilterSetField) FieldValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for field_value") + } + return validatorFn, nil +} + +func (v *ValidateFilterSetField) FieldIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for field_id") + } + + return validatorFn, nil +} + +func (v *ValidateFilterSetField) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FilterSetField) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FilterSetField got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["field_id"]; exists { + + vOpts := append(opts, db.WithValidateField("field_id")) + if err := fv(ctx, m.GetFieldId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["field_value"]; exists { + val := m.GetFieldValue() + vOpts := append(opts, + db.WithValidateField("field_value"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetFieldValue().(type) { + case *FilterSetField_StringField: + if fv, exists := v.FldValidators["field_value.string_field"]; exists { + val := m.GetFieldValue().(*FilterSetField_StringField).StringField + vOpts := append(opts, + db.WithValidateField("field_value"), + db.WithValidateField("string_field"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FilterSetField_DateField: + if fv, exists := v.FldValidators["field_value.date_field"]; exists { + val := m.GetFieldValue().(*FilterSetField_DateField).DateField + vOpts := append(opts, + db.WithValidateField("field_value"), + db.WithValidateField("date_field"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FilterSetField_LabelSelectorField: + if fv, exists := v.FldValidators["field_value.label_selector_field"]; exists { + val := m.GetFieldValue().(*FilterSetField_LabelSelectorField).LabelSelectorField + vOpts := append(opts, + db.WithValidateField("field_value"), + db.WithValidateField("label_selector_field"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FilterSetField_FilterExpressionField: + if fv, exists := v.FldValidators["field_value.filter_expression_field"]; exists { + val := m.GetFieldValue().(*FilterSetField_FilterExpressionField).FilterExpressionField + vOpts := append(opts, + db.WithValidateField("field_value"), + db.WithValidateField("filter_expression_field"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFilterSetFieldValidator = func() *ValidateFilterSetField { + v := &ValidateFilterSetField{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhFieldValue := v.FieldValueValidationRuleHandler + rulesFieldValue := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhFieldValue(rulesFieldValue) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FilterSetField.field_value: %s", err) + panic(errMsg) + } + v.FldValidators["field_value"] = vFn + + vrhFieldId := v.FieldIdValidationRuleHandler + rulesFieldId := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhFieldId(rulesFieldId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FilterSetField.field_id: %s", err) + panic(errMsg) + } + v.FldValidators["field_id"] = vFn + + v.FldValidators["field_value.string_field"] = FilterStringFieldValidator().Validate + v.FldValidators["field_value.date_field"] = FilterTimeRangeFieldValidator().Validate + v.FldValidators["field_value.label_selector_field"] = ves_io_schema.LabelSelectorTypeValidator().Validate + v.FldValidators["field_value.filter_expression_field"] = FilterExpressionFieldValidator().Validate + + return v +}() + +func FilterSetFieldValidator() db.Validator { + return DefaultFilterSetFieldValidator +} + +// augmented methods on protoc/std generated struct + +func (m *FilterStringField) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FilterStringField) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FilterStringField) DeepCopy() *FilterStringField { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FilterStringField{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FilterStringField) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FilterStringField) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FilterStringFieldValidator().Validate(ctx, m, opts...) +} + +type ValidateFilterStringField struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFilterStringField) FieldValuesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for field_values") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for field_values") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated field_values") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items field_values") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateFilterStringField) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FilterStringField) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FilterStringField got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["field_values"]; exists { + vOpts := append(opts, db.WithValidateField("field_values")) + if err := fv(ctx, m.GetFieldValues(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFilterStringFieldValidator = func() *ValidateFilterStringField { + v := &ValidateFilterStringField{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhFieldValues := v.FieldValuesValidationRuleHandler + rulesFieldValues := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhFieldValues(rulesFieldValues) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FilterStringField.field_values: %s", err) + panic(errMsg) + } + v.FldValidators["field_values"] = vFn + + return v +}() + +func FilterStringFieldValidator() db.Validator { + return DefaultFilterStringFieldValidator +} + +// augmented methods on protoc/std generated struct + +func (m *FilterTimeRangeField) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FilterTimeRangeField) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FilterTimeRangeField) DeepCopy() *FilterTimeRangeField { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FilterTimeRangeField{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FilterTimeRangeField) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FilterTimeRangeField) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FilterTimeRangeFieldValidator().Validate(ctx, m, opts...) +} + +type ValidateFilterTimeRangeField struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFilterTimeRangeField) RangeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for range_type") + } + return validatorFn, nil +} + +func (v *ValidateFilterTimeRangeField) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FilterTimeRangeField) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FilterTimeRangeField got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["range_type"]; exists { + val := m.GetRangeType() + vOpts := append(opts, + db.WithValidateField("range_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetRangeType().(type) { + case *FilterTimeRangeField_Absolute: + if fv, exists := v.FldValidators["range_type.absolute"]; exists { + val := m.GetRangeType().(*FilterTimeRangeField_Absolute).Absolute + vOpts := append(opts, + db.WithValidateField("range_type"), + db.WithValidateField("absolute"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FilterTimeRangeField_Relative: + if fv, exists := v.FldValidators["range_type.relative"]; exists { + val := m.GetRangeType().(*FilterTimeRangeField_Relative).Relative + vOpts := append(opts, + db.WithValidateField("range_type"), + db.WithValidateField("relative"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFilterTimeRangeFieldValidator = func() *ValidateFilterTimeRangeField { + v := &ValidateFilterTimeRangeField{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRangeType := v.RangeTypeValidationRuleHandler + rulesRangeType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRangeType(rulesRangeType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FilterTimeRangeField.range_type: %s", err) + panic(errMsg) + } + v.FldValidators["range_type"] = vFn + + v.FldValidators["range_type.absolute"] = ves_io_schema.DateRangeValidator().Validate + + return v +}() + +func FilterTimeRangeFieldValidator() db.Validator { + return DefaultFilterTimeRangeFieldValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetSpecType) DeepCopy() *GetSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGetSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetSpecType) ContextKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for context_key") + } + + return validatorFn, nil +} + +func (v *ValidateGetSpecType) FilterFieldsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for filter_fields") + } + itemsValidatorFn := func(ctx context.Context, elems []*FilterSetField, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := FilterSetFieldValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for filter_fields") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*FilterSetField) + if !ok { + return fmt.Errorf("Repeated validation expected []*FilterSetField, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated filter_fields") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items filter_fields") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["context_key"]; exists { + + vOpts := append(opts, db.WithValidateField("context_key")) + if err := fv(ctx, m.GetContextKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["filter_fields"]; exists { + vOpts := append(opts, db.WithValidateField("filter_fields")) + if err := fv(ctx, m.GetFilterFields(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { + v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhContextKey := v.ContextKeyValidationRuleHandler + rulesContextKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhContextKey(rulesContextKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.context_key: %s", err) + panic(errMsg) + } + v.FldValidators["context_key"] = vFn + + vrhFilterFields := v.FilterFieldsValidationRuleHandler + rulesFilterFields := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFilterFields(rulesFilterFields) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.filter_fields: %s", err) + panic(errMsg) + } + v.FldValidators["filter_fields"] = vFn + + return v +}() + +func GetSpecTypeValidator() db.Validator { + return DefaultGetSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GlobalSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GlobalSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGlobalSpecType) ContextKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for context_key") + } + + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) FilterFieldsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for filter_fields") + } + itemsValidatorFn := func(ctx context.Context, elems []*FilterSetField, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := FilterSetFieldValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for filter_fields") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*FilterSetField) + if !ok { + return fmt.Errorf("Repeated validation expected []*FilterSetField, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated filter_fields") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items filter_fields") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["context_key"]; exists { + + vOpts := append(opts, db.WithValidateField("context_key")) + if err := fv(ctx, m.GetContextKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["filter_fields"]; exists { + vOpts := append(opts, db.WithValidateField("filter_fields")) + if err := fv(ctx, m.GetFilterFields(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhContextKey := v.ContextKeyValidationRuleHandler + rulesContextKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhContextKey(rulesContextKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.context_key: %s", err) + panic(errMsg) + } + v.FldValidators["context_key"] = vFn + + vrhFilterFields := v.FilterFieldsValidationRuleHandler + rulesFilterFields := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFilterFields(rulesFilterFields) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.filter_fields: %s", err) + panic(errMsg) + } + v.FldValidators["filter_fields"] = vFn + + return v +}() + +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceSpecType) ContextKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for context_key") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) FilterFieldsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for filter_fields") + } + itemsValidatorFn := func(ctx context.Context, elems []*FilterSetField, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := FilterSetFieldValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for filter_fields") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*FilterSetField) + if !ok { + return fmt.Errorf("Repeated validation expected []*FilterSetField, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated filter_fields") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items filter_fields") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["context_key"]; exists { + + vOpts := append(opts, db.WithValidateField("context_key")) + if err := fv(ctx, m.GetContextKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["filter_fields"]; exists { + vOpts := append(opts, db.WithValidateField("filter_fields")) + if err := fv(ctx, m.GetFilterFields(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { + v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhContextKey := v.ContextKeyValidationRuleHandler + rulesContextKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhContextKey(rulesContextKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.context_key: %s", err) + panic(errMsg) + } + v.FldValidators["context_key"] = vFn + + vrhFilterFields := v.FilterFieldsValidationRuleHandler + rulesFilterFields := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhFilterFields(rulesFilterFields) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.filter_fields: %s", err) + panic(errMsg) + } + v.FldValidators["filter_fields"] = vFn + + return v +}() + +func ReplaceSpecTypeValidator() db.Validator { + return DefaultReplaceSpecTypeValidator +} + +func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.ContextKey = f.GetContextKey() + m.FilterFields = f.GetFilterFields() +} + +func (m *CreateSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *CreateSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.ContextKey = m1.ContextKey + f.FilterFields = m1.FilterFields +} + +func (m *CreateSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *CreateSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} + +func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.ContextKey = f.GetContextKey() + m.FilterFields = f.GetFilterFields() +} + +func (m *GetSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *GetSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.ContextKey = m1.ContextKey + f.FilterFields = m1.FilterFields +} + +func (m *GetSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *GetSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} + +func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.ContextKey = f.GetContextKey() + m.FilterFields = f.GetFilterFields() +} + +func (m *ReplaceSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *ReplaceSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.ContextKey = m1.ContextKey + f.FilterFields = m1.FilterFields +} + +func (m *ReplaceSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *ReplaceSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} diff --git a/pbgo/extschema/schema/fleet/crudapi/api.vesapi.go b/pbgo/extschema/schema/fleet/crudapi/api.vesapi.go index d4d63a5ec..b6df05581 100644 --- a/pbgo/extschema/schema/fleet/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/fleet/crudapi/api.vesapi.go @@ -5872,10 +5872,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6538,6 +6542,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/fleetFleetInterfaceListType", "x-displayname": "List of Interfaces" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "legacy_devices": { "description": "Exclusive with [default_interfaces interface_list]\n Add device for all interfaces belonging to this fleet", "title": "Legacy Device Config", @@ -6737,6 +6747,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", diff --git a/pbgo/extschema/schema/fleet/object.pb.go b/pbgo/extschema/schema/fleet/object.pb.go index b5efc41e2..0c261d39e 100644 --- a/pbgo/extschema/schema/fleet/object.pb.go +++ b/pbgo/extschema/schema/fleet/object.pb.go @@ -244,45 +244,47 @@ func init() { } var fileDescriptor_00f2b47ea7a63543 = []byte{ - // 606 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xcf, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x77, 0x76, 0xd7, 0x42, 0x06, 0x82, 0xa4, 0x5c, 0x2a, 0xea, 0xb8, 0x59, 0x2f, 0x1c, - 0x6c, 0x1b, 0x31, 0x46, 0x21, 0xc4, 0x1f, 0x60, 0x44, 0x13, 0x88, 0xc9, 0xe2, 0xc9, 0x0b, 0x99, - 0xce, 0xbe, 0x96, 0xd1, 0x76, 0xa7, 0x99, 0x99, 0xae, 0x70, 0x30, 0x31, 0x5e, 0xbc, 0xfa, 0x1f, - 0x78, 0x35, 0xfc, 0x15, 0xe2, 0xc9, 0x9b, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0x3c, 0xf2, 0x27, 0x98, - 0x9d, 0x52, 0xc2, 0x92, 0x9a, 0x98, 0xec, 0xa5, 0x99, 0xc9, 0xfb, 0xbc, 0x6f, 0xdf, 0xaf, 0x79, - 0xb8, 0xd5, 0x07, 0xe5, 0x71, 0xe1, 0x2b, 0xb6, 0x03, 0x09, 0xf5, 0xc3, 0x18, 0x40, 0xfb, 0x22, - 0x78, 0x0b, 0x4c, 0x7b, 0xa9, 0x14, 0x5a, 0xd8, 0x73, 0x05, 0xe1, 0x15, 0x84, 0x67, 0x88, 0x79, - 0x37, 0xe2, 0x7a, 0x27, 0x0b, 0x3c, 0x26, 0x12, 0x3f, 0x12, 0x91, 0xf0, 0x0d, 0x1b, 0x64, 0xa1, - 0xb9, 0x99, 0x8b, 0x39, 0x15, 0x1a, 0xf3, 0xb7, 0xaa, 0xfe, 0xa2, 0xf7, 0x52, 0x50, 0x67, 0xc0, - 0xf5, 0x51, 0x40, 0xa4, 0x9a, 0x8b, 0x5e, 0x69, 0xbc, 0x36, 0x6a, 0xbc, 0xe8, 0xd7, 0x1e, 0x35, - 0xf5, 0x41, 0x41, 0xaf, 0x3f, 0xea, 0xde, 0xde, 0x6f, 0x62, 0xeb, 0x95, 0xc9, 0xc8, 0x5e, 0xc2, - 0x93, 0x09, 0x68, 0xda, 0xa5, 0x9a, 0x3a, 0xa8, 0x85, 0x16, 0xa6, 0x16, 0x6f, 0x7a, 0xa3, 0xe9, - 0x15, 0xe0, 0x26, 0x68, 0xfa, 0x7a, 0x2f, 0x85, 0xce, 0x39, 0x6e, 0x6f, 0xe0, 0xab, 0x6a, 0x4f, - 0x69, 0x48, 0xb6, 0xcf, 0x15, 0xea, 0x46, 0xe1, 0xf6, 0x25, 0x85, 0x2d, 0x43, 0x5d, 0xd2, 0x99, - 0x29, 0x7c, 0x37, 0x4b, 0xb5, 0xbb, 0xb8, 0xa9, 0x52, 0x60, 0x4e, 0xa3, 0x32, 0x08, 0x53, 0x1f, - 0x6f, 0x2b, 0x05, 0x66, 0x9c, 0x0d, 0xba, 0x3c, 0xa8, 0x7f, 0x7a, 0x6c, 0x15, 0x32, 0x3f, 0x0e, - 0x9c, 0xfa, 0x2c, 0x3a, 0x3a, 0x70, 0x7e, 0xd5, 0xf1, 0x13, 0xdc, 0x58, 0x07, 0x6d, 0x2f, 0x85, - 0xf7, 0x77, 0x99, 0xab, 0x80, 0x65, 0x12, 0x12, 0x50, 0x3b, 0x6e, 0x40, 0x15, 0x67, 0x6e, 0x22, - 0x7a, 0x5c, 0x0b, 0x79, 0x67, 0xd8, 0x66, 0x97, 0x0b, 0x97, 0xf7, 0x42, 0x49, 0x95, 0x96, 0x19, - 0xd3, 0x99, 0x04, 0x57, 0x02, 0xed, 0xe2, 0x55, 0x3c, 0xd1, 0x81, 0x34, 0xa6, 0x0c, 0xec, 0x07, - 0xd5, 0x2a, 0x99, 0x82, 0x7f, 0x4a, 0xbc, 0x97, 0x5c, 0x03, 0x7e, 0x8a, 0xad, 0x35, 0x09, 0x54, - 0x8f, 0x27, 0xf1, 0x0c, 0x62, 0x18, 0x4f, 0xa2, 0xb9, 0xc1, 0xd5, 0x38, 0xc5, 0x68, 0xbf, 0xc0, - 0x93, 0x65, 0xdd, 0xed, 0x15, 0x3c, 0x11, 0xb1, 0x6d, 0xd3, 0xa7, 0xea, 0x56, 0x17, 0x7d, 0x5a, - 0x8f, 0x45, 0x40, 0xe3, 0xf3, 0x6e, 0x59, 0x11, 0x1b, 0x9e, 0xdb, 0x5f, 0xeb, 0x78, 0x7a, 0x4b, - 0x53, 0x9d, 0xa9, 0xff, 0x1e, 0xbe, 0x02, 0xaf, 0x18, 0xbe, 0x75, 0x3c, 0x55, 0xbc, 0xc9, 0x6d, - 0x09, 0xa1, 0x72, 0xea, 0xad, 0xc6, 0xc2, 0xd4, 0xe2, 0x8d, 0xca, 0xd1, 0xed, 0x40, 0x38, 0x74, - 0x5e, 0x9d, 0xdc, 0xff, 0x70, 0xc5, 0xc4, 0xd7, 0xc1, 0xa2, 0x34, 0x28, 0x7b, 0x05, 0x63, 0x26, - 0x7a, 0x5d, 0x6e, 0xde, 0x87, 0xd3, 0xa8, 0xd4, 0x59, 0x2b, 0x01, 0x13, 0xc4, 0x05, 0xde, 0x7e, - 0x88, 0x2d, 0x65, 0x42, 0x74, 0x9a, 0x26, 0xfe, 0x56, 0x65, 0x3d, 0x9e, 0x0f, 0xbf, 0x45, 0x2a, - 0x9d, 0x33, 0x7e, 0x79, 0xee, 0xe8, 0xd1, 0x2c, 0x9e, 0xc1, 0xd3, 0x65, 0x46, 0x5e, 0xc6, 0xbb, - 0xab, 0x9f, 0xd1, 0xe1, 0x09, 0xa9, 0x1d, 0x9f, 0x90, 0xda, 0xe9, 0x09, 0x41, 0x1f, 0x73, 0x82, - 0xbe, 0xe5, 0x04, 0xfd, 0xcc, 0x09, 0x3a, 0xcc, 0x09, 0x3a, 0xce, 0x09, 0xfa, 0x9d, 0x13, 0xf4, - 0x27, 0x27, 0xb5, 0xd3, 0x9c, 0xa0, 0x2f, 0x03, 0x52, 0xfb, 0x3e, 0x20, 0xe8, 0x70, 0x40, 0x6a, - 0xc7, 0x03, 0x52, 0x7b, 0xf3, 0x32, 0x12, 0xe9, 0xbb, 0xc8, 0xeb, 0x8b, 0x58, 0x83, 0x94, 0xd4, - 0xcb, 0x94, 0x6f, 0x0e, 0xa1, 0x90, 0x89, 0x9b, 0x4a, 0xd1, 0xe7, 0x5d, 0x90, 0x6e, 0x69, 0xf6, - 0xd3, 0x20, 0x12, 0x3e, 0xec, 0xea, 0xb3, 0x55, 0x71, 0x71, 0x15, 0x05, 0x96, 0xd9, 0x14, 0xf7, - 0xfe, 0x06, 0x00, 0x00, 0xff, 0xff, 0x49, 0xae, 0xc5, 0x72, 0x0e, 0x05, 0x00, 0x00, + // 627 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x6b, 0xd4, 0x4e, + 0x14, 0xc7, 0x77, 0x76, 0xb7, 0xdb, 0x32, 0x2d, 0xfd, 0x95, 0xf4, 0x92, 0x5f, 0xd5, 0x71, 0x59, + 0x2f, 0x3d, 0x98, 0x04, 0x2b, 0x82, 0x96, 0xa2, 0xd0, 0x8a, 0x55, 0x68, 0x11, 0xb6, 0xe2, 0x41, + 0x0f, 0x75, 0x32, 0x79, 0x49, 0x47, 0x37, 0x99, 0x30, 0x33, 0x89, 0xed, 0x41, 0x10, 0x11, 0xbc, + 0xfa, 0x1f, 0x78, 0x15, 0xff, 0x0a, 0xeb, 0x49, 0xf0, 0x52, 0x7a, 0xea, 0xd1, 0x66, 0x2f, 0x1e, + 0xfb, 0x27, 0x48, 0x27, 0x4d, 0xed, 0x96, 0x20, 0x5e, 0x7a, 0x09, 0x33, 0xbc, 0xcf, 0xfb, 0xbe, + 0xf7, 0x26, 0xef, 0x3d, 0xdc, 0xcd, 0x41, 0xb9, 0x5c, 0x78, 0x8a, 0x6d, 0x41, 0x4c, 0xbd, 0x70, + 0x00, 0xa0, 0x3d, 0xe1, 0xbf, 0x04, 0xa6, 0xdd, 0x54, 0x0a, 0x2d, 0xac, 0xd9, 0x92, 0x70, 0x4b, + 0xc2, 0x35, 0xc4, 0x9c, 0x13, 0x71, 0xbd, 0x95, 0xf9, 0x2e, 0x13, 0xb1, 0x17, 0x89, 0x48, 0x78, + 0x86, 0xf5, 0xb3, 0xd0, 0xdc, 0xcc, 0xc5, 0x9c, 0x4a, 0x8d, 0xb9, 0xab, 0x75, 0x51, 0xf4, 0x4e, + 0x0a, 0xea, 0x04, 0xb8, 0x34, 0x0a, 0x88, 0x54, 0x73, 0x91, 0x54, 0xc6, 0xff, 0x47, 0x8d, 0x67, + 0xfd, 0x7a, 0xa3, 0xa6, 0x1c, 0x14, 0x24, 0xf9, 0xa8, 0x7b, 0xef, 0xc7, 0x18, 0xee, 0x3c, 0x36, + 0x15, 0x59, 0x77, 0xf0, 0x44, 0x0c, 0x9a, 0x06, 0x54, 0x53, 0x1b, 0x75, 0xd1, 0xfc, 0xe4, 0xc2, + 0x15, 0x77, 0xb4, 0xbc, 0x12, 0x5c, 0x07, 0x4d, 0x9f, 0xec, 0xa4, 0xd0, 0x3f, 0xc5, 0xad, 0x35, + 0xfc, 0x9f, 0xda, 0x51, 0x1a, 0xe2, 0xcd, 0x53, 0x85, 0xa6, 0x51, 0xb8, 0x76, 0x4e, 0x61, 0xc3, + 0x50, 0xe7, 0x74, 0xa6, 0x4b, 0xdf, 0xf5, 0x4a, 0xed, 0x06, 0x6e, 0xab, 0x14, 0x98, 0xdd, 0xaa, + 0x4d, 0xc2, 0xbc, 0x8f, 0xbb, 0x91, 0x02, 0x33, 0xce, 0x06, 0x5d, 0x7c, 0xdf, 0x7e, 0x77, 0xaf, + 0x53, 0xca, 0x7c, 0xdb, 0xb5, 0x9b, 0x33, 0x68, 0x7f, 0xd7, 0x3e, 0x6a, 0x61, 0x1f, 0xb7, 0x56, + 0x41, 0x5b, 0xcf, 0xc3, 0x5b, 0xdb, 0xcc, 0x51, 0xc0, 0x32, 0x09, 0x31, 0xa8, 0x2d, 0xc7, 0xa7, + 0x8a, 0x33, 0x27, 0x16, 0x09, 0xd7, 0x42, 0x5e, 0xef, 0x9e, 0x37, 0x2b, 0x4d, 0x93, 0x80, 0xca, + 0xe0, 0x0f, 0x91, 0x83, 0x72, 0xb8, 0x70, 0x78, 0x12, 0x4a, 0xaa, 0xb4, 0xcc, 0x98, 0xce, 0x24, + 0x38, 0x12, 0x68, 0x80, 0x29, 0x1e, 0xef, 0x43, 0x3a, 0xa0, 0x0c, 0xac, 0xa7, 0xf5, 0x71, 0x32, + 0x05, 0x7f, 0x0b, 0x52, 0x9a, 0xeb, 0x23, 0xbc, 0x96, 0x5c, 0x03, 0x7e, 0x81, 0x3b, 0x2b, 0x12, + 0xa8, 0xbe, 0xd0, 0x08, 0xf7, 0x61, 0x00, 0x17, 0x18, 0x81, 0xe1, 0xf6, 0x1a, 0x57, 0x17, 0xfb, + 0x2f, 0x7a, 0x0f, 0xf1, 0x44, 0xd5, 0x18, 0xd6, 0x12, 0x1e, 0x8f, 0xd8, 0xa6, 0x69, 0xa4, 0xfa, + 0x5e, 0x2c, 0x1b, 0x69, 0x75, 0x20, 0x7c, 0x3a, 0x38, 0x6d, 0xa7, 0x4e, 0xc4, 0x8e, 0xcf, 0xbd, + 0x4f, 0x4d, 0x3c, 0xb5, 0xa1, 0xa9, 0xce, 0xd4, 0x3f, 0x4f, 0x47, 0x89, 0xd7, 0x4c, 0xc7, 0x2a, + 0x9e, 0x2c, 0x97, 0xc6, 0xa6, 0x84, 0x50, 0xd9, 0xcd, 0x6e, 0x6b, 0x7e, 0x72, 0xe1, 0x72, 0xed, + 0x6c, 0xf5, 0x21, 0x3c, 0x76, 0x5e, 0x9e, 0xf8, 0xf2, 0x66, 0xcc, 0xe4, 0xd7, 0xc7, 0xa2, 0x32, + 0x28, 0x6b, 0x09, 0x63, 0x26, 0x92, 0x80, 0x9b, 0x01, 0xb6, 0x5b, 0xb5, 0x3a, 0x2b, 0x15, 0x60, + 0x92, 0x38, 0xc3, 0x5b, 0xb7, 0x71, 0x47, 0x99, 0x14, 0xed, 0xb6, 0xc9, 0xbf, 0x5b, 0xfb, 0x1e, + 0x0f, 0x8e, 0xbf, 0x65, 0x29, 0xfd, 0x13, 0x7e, 0x71, 0x76, 0xff, 0xee, 0x0c, 0x9e, 0xc6, 0x53, + 0x55, 0x45, 0x6e, 0xc6, 0x83, 0xe5, 0x0f, 0x68, 0xef, 0x90, 0x34, 0x0e, 0x0e, 0x49, 0xe3, 0xe8, + 0x90, 0xa0, 0xb7, 0x05, 0x41, 0x9f, 0x0b, 0x82, 0xbe, 0x17, 0x04, 0xed, 0x15, 0x04, 0x1d, 0x14, + 0x04, 0xfd, 0x2c, 0x08, 0xfa, 0x55, 0x90, 0xc6, 0x51, 0x41, 0xd0, 0xc7, 0x21, 0x69, 0x7c, 0x1d, + 0x12, 0xb4, 0x37, 0x24, 0x8d, 0x83, 0x21, 0x69, 0x3c, 0x7b, 0x14, 0x89, 0xf4, 0x55, 0xe4, 0xe6, + 0x62, 0xa0, 0x41, 0x4a, 0xea, 0x66, 0xca, 0x33, 0x87, 0x50, 0xc8, 0xd8, 0x49, 0xa5, 0xc8, 0x79, + 0x00, 0xd2, 0xa9, 0xcc, 0x5e, 0xea, 0x47, 0xc2, 0x83, 0x6d, 0x7d, 0xb2, 0xcb, 0xce, 0xee, 0x4a, + 0xbf, 0x63, 0x56, 0xd9, 0xcd, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe5, 0xf6, 0x2b, 0xa1, 0xaf, + 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/fleet/pkg.vespkg.go b/pbgo/extschema/schema/fleet/pkg.vespkg.go index 2b53c69ec..ccb5bb689 100644 --- a/pbgo/extschema/schema/fleet/pkg.vespkg.go +++ b/pbgo/extschema/schema/fleet/pkg.vespkg.go @@ -141,14 +141,14 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.fleet.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fleet.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -157,22 +157,22 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fleet.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.fleet.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -222,7 +222,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.fleet.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/fleet/public_crudapi.pb.go b/pbgo/extschema/schema/fleet/public_crudapi.pb.go index f9fab0a4c..6bde98757 100644 --- a/pbgo/extschema/schema/fleet/public_crudapi.pb.go +++ b/pbgo/extschema/schema/fleet/public_crudapi.pb.go @@ -1084,108 +1084,109 @@ func init() { } var fileDescriptor_8ec4d927d90fd8db = []byte{ - // 1603 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0x63, 0x33, 0x49, 0x14, 0x8a, 0x75, 0x19, 0x9a, 0x56, - 0x5a, 0x41, 0x08, 0x97, 0x89, 0x82, 0x06, 0x89, 0x52, 0xa8, 0xa1, 0xa8, 0xa5, 0x4a, 0x57, 0xb6, - 0x84, 0x25, 0x6d, 0x04, 0xbd, 0x2c, 0x96, 0xcb, 0x47, 0x7a, 0x6b, 0x92, 0xbb, 0xd9, 0x19, 0x52, - 0x11, 0x0a, 0x01, 0x45, 0x7a, 0xec, 0xa5, 0x80, 0x6f, 0x45, 0x0f, 0xbe, 0x14, 0xe8, 0x3f, 0x50, - 0xb4, 0xa8, 0x80, 0xc2, 0xa7, 0xda, 0xf0, 0xa1, 0x30, 0xda, 0x8b, 0xdb, 0x53, 0x4d, 0xf5, 0xe0, - 0xa3, 0xdd, 0xbf, 0x20, 0xd8, 0x99, 0x5d, 0x9a, 0xa4, 0x56, 0x12, 0x65, 0xe9, 0xc4, 0x9d, 0x79, - 0xef, 0xfb, 0xf6, 0x7d, 0x33, 0xef, 0xbd, 0x19, 0x2e, 0x5e, 0xee, 0x01, 0x95, 0x4d, 0x2b, 0x4f, - 0x8d, 0xbb, 0xd0, 0xd6, 0xf3, 0x8d, 0x16, 0x00, 0xcb, 0xdb, 0xdd, 0x5a, 0xcb, 0x34, 0x34, 0xc3, - 0xe9, 0xd6, 0x75, 0xdb, 0x94, 0x6d, 0xc7, 0x62, 0x16, 0x79, 0x5b, 0x78, 0xca, 0xc2, 0x53, 0xe6, - 0x9e, 0xa9, 0x5c, 0xd3, 0x64, 0x77, 0xbb, 0x35, 0xd9, 0xb0, 0xda, 0xf9, 0xa6, 0xd5, 0xb4, 0xf2, - 0xdc, 0xb7, 0xd6, 0x6d, 0xf0, 0x11, 0x1f, 0xf0, 0x27, 0xc1, 0x91, 0xba, 0xda, 0xb4, 0xac, 0x66, - 0x0b, 0xf2, 0xba, 0x6d, 0xe6, 0xf5, 0x4e, 0xc7, 0x62, 0x3a, 0x33, 0xad, 0x0e, 0xf5, 0xac, 0xdf, - 0xf3, 0xac, 0x03, 0x0e, 0x68, 0xdb, 0x6c, 0xdf, 0x33, 0xa6, 0x46, 0x03, 0x05, 0xc7, 0xb1, 0x1c, - 0x1f, 0x98, 0x09, 0x12, 0x61, 0xd5, 0x7e, 0x01, 0x06, 0xf3, 0x3c, 0xde, 0x0f, 0xf2, 0x60, 0xfb, - 0x36, 0x0c, 0xde, 0x3d, 0xea, 0x60, 0xd9, 0xc3, 0x81, 0x2d, 0x8e, 0x1a, 0x87, 0x71, 0xd9, 0x51, - 0x53, 0x0f, 0x28, 0x74, 0x7a, 0x63, 0xf0, 0xb1, 0xf0, 0x7a, 0x26, 0xec, 0x69, 0x23, 0x1e, 0xd9, - 0x3f, 0x20, 0x3c, 0x5b, 0x74, 0x40, 0x67, 0xa0, 0xc2, 0xd7, 0x5d, 0xa0, 0x8c, 0xfc, 0x04, 0xc7, - 0xda, 0xc0, 0xf4, 0xba, 0xce, 0xf4, 0x24, 0xca, 0xa0, 0xe5, 0xc4, 0xea, 0x75, 0x79, 0x74, 0x03, - 0x76, 0xb8, 0x3e, 0x81, 0xba, 0x09, 0x4c, 0xaf, 0xee, 0xdb, 0xa0, 0x0e, 0x40, 0xe4, 0xa7, 0x38, - 0x42, 0x6d, 0x30, 0x92, 0xa1, 0x40, 0x30, 0x5f, 0x00, 0x59, 0x80, 0x2b, 0x36, 0x18, 0x2e, 0x78, - 0x63, 0xfe, 0x77, 0x07, 0x33, 0x2e, 0x46, 0x6e, 0x1a, 0x9a, 0xfb, 0xab, 0x72, 0x86, 0xb5, 0xf8, - 0x93, 0xf5, 0xa8, 0x78, 0x59, 0xf6, 0x15, 0xc2, 0x73, 0x7e, 0x9c, 0xd4, 0xb6, 0x3a, 0x14, 0xc8, - 0x8f, 0x8f, 0x05, 0x9a, 0x09, 0x0c, 0x74, 0x0b, 0x58, 0x40, 0x94, 0x3b, 0x78, 0x9e, 0xee, 0x53, - 0x06, 0x6d, 0x6d, 0x40, 0x12, 0xe6, 0x24, 0x3f, 0x18, 0x23, 0xa9, 0x70, 0xaf, 0xe3, 0x54, 0x73, - 0x02, 0x7e, 0xd3, 0x27, 0x54, 0x46, 0x64, 0x67, 0x02, 0x65, 0x6f, 0x01, 0x3b, 0x87, 0xe6, 0x7f, - 0x23, 0x3c, 0xa7, 0x82, 0xdd, 0xd2, 0x8d, 0xc1, 0xe6, 0x7c, 0x79, 0x4c, 0xf3, 0x52, 0xa0, 0x66, - 0x0f, 0x16, 0xa0, 0xbb, 0x3c, 0x12, 0xe6, 0x52, 0x60, 0x98, 0x1e, 0xfa, 0x8c, 0x50, 0x49, 0x1e, - 0x4b, 0x0e, 0x50, 0xab, 0xeb, 0x18, 0xa0, 0xf5, 0xc0, 0xa1, 0xa6, 0xd5, 0xe1, 0x6b, 0x18, 0xdf, - 0x88, 0xbc, 0x38, 0x44, 0x48, 0x9d, 0xf7, 0xad, 0x77, 0x84, 0x71, 0x58, 0xdb, 0x5b, 0x78, 0x7e, - 0x20, 0x4d, 0xec, 0x67, 0xf6, 0x3e, 0xc2, 0x78, 0x0b, 0x98, 0x2f, 0xf5, 0x2a, 0x8e, 0x77, 0xf4, - 0x36, 0x50, 0x5b, 0x37, 0x80, 0x6b, 0x8d, 0xab, 0xaf, 0x27, 0x08, 0xc1, 0x11, 0x77, 0xc0, 0x65, - 0xc4, 0x55, 0xfe, 0x4c, 0x2a, 0xd8, 0x7d, 0x23, 0x27, 0xd3, 0x1a, 0x96, 0xd3, 0xd6, 0x19, 0x0f, - 0x67, 0x6e, 0x75, 0xe5, 0xa4, 0xcd, 0xf0, 0xdf, 0x5d, 0xe2, 0xde, 0x45, 0xab, 0x0e, 0xea, 0x9c, - 0x33, 0x32, 0x97, 0x7d, 0x35, 0x8d, 0x13, 0x43, 0x9e, 0xa4, 0x88, 0x13, 0x06, 0xcf, 0x43, 0xfe, - 0x0a, 0x6f, 0x19, 0xb3, 0xa7, 0x24, 0xb9, 0xa7, 0x47, 0xc5, 0x02, 0xe6, 0xd2, 0x92, 0x12, 0x9e, - 0x71, 0x84, 0x7a, 0xc1, 0x12, 0x3e, 0xa5, 0x54, 0x46, 0x33, 0x40, 0x4d, 0x78, 0x40, 0xce, 0x13, - 0xb4, 0x03, 0x91, 0x53, 0x76, 0x60, 0xa4, 0x66, 0xa6, 0x2f, 0xa3, 0x66, 0xae, 0x5c, 0x4a, 0xcd, - 0x44, 0x2f, 0x54, 0x33, 0xe4, 0x4b, 0x1c, 0xa5, 0x4c, 0x67, 0x5d, 0x9a, 0x7c, 0xf0, 0x7b, 0x94, - 0x09, 0x2f, 0x27, 0x56, 0xaf, 0x05, 0x52, 0x55, 0xb8, 0x93, 0x08, 0x6b, 0x23, 0xfc, 0xf0, 0x00, - 0xa9, 0x1e, 0x8e, 0x94, 0xf1, 0x5b, 0x0e, 0x34, 0xc0, 0x71, 0xcc, 0x4e, 0x53, 0x13, 0xfd, 0x9b, - 0x26, 0x63, 0x9c, 0xea, 0xea, 0x09, 0x05, 0xd6, 0xe0, 0x8a, 0xa4, 0x01, 0x4c, 0xcc, 0x53, 0x72, - 0x07, 0x27, 0xeb, 0xd0, 0x02, 0x06, 0x75, 0x4d, 0xd8, 0xa0, 0x3e, 0x60, 0x8c, 0x4f, 0xc0, 0xb8, - 0xe0, 0xa1, 0x55, 0x0f, 0xec, 0xf3, 0x7e, 0x85, 0x17, 0xeb, 0x26, 0xd5, 0x6b, 0xad, 0x20, 0x62, - 0x3c, 0x01, 0xf1, 0x7b, 0x3e, 0x7c, 0x8c, 0x79, 0xa8, 0x2c, 0x6f, 0x44, 0x62, 0x48, 0x0a, 0xb9, - 0x87, 0x42, 0x62, 0xdb, 0xa4, 0x13, 0x96, 0xe2, 0x35, 0x3c, 0xd3, 0xd2, 0x6b, 0xd0, 0xd2, 0x1a, - 0x66, 0x8b, 0x81, 0xe3, 0x95, 0x64, 0x82, 0xcf, 0x95, 0xf8, 0x14, 0xb9, 0x8e, 0x67, 0x1d, 0xb0, - 0x2d, 0x87, 0x69, 0x0d, 0x13, 0x5a, 0x75, 0x9a, 0x0c, 0x67, 0xc2, 0xcb, 0x71, 0x75, 0x46, 0x4c, - 0x96, 0xf8, 0x1c, 0xf9, 0x08, 0xbf, 0xe3, 0x39, 0x89, 0x4d, 0xf1, 0x7d, 0x23, 0xdc, 0x97, 0x08, - 0x9b, 0xd8, 0x42, 0x81, 0xc8, 0x3e, 0x88, 0x62, 0x49, 0xc4, 0x29, 0x8a, 0xb3, 0xcc, 0xa0, 0x4d, - 0x16, 0x70, 0x94, 0x41, 0x47, 0xef, 0x30, 0x9e, 0x55, 0x71, 0xd5, 0x1b, 0xbd, 0x41, 0x3f, 0x91, - 0x70, 0xb8, 0x6b, 0xd6, 0x45, 0x4b, 0x53, 0xdd, 0x47, 0x92, 0xc1, 0x89, 0x3a, 0x50, 0xc3, 0x31, - 0xf9, 0x19, 0x9a, 0x4c, 0x08, 0xa5, 0x43, 0x53, 0x24, 0x85, 0x63, 0xfe, 0x32, 0x27, 0x67, 0x32, - 0x68, 0x39, 0xa6, 0x0e, 0xc6, 0xa4, 0x8c, 0xa3, 0x7c, 0x51, 0x84, 0xa4, 0xc4, 0xea, 0xc7, 0x81, - 0x49, 0x3a, 0x2e, 0x48, 0xde, 0xe6, 0x18, 0xa5, 0xc3, 0x9c, 0x7d, 0xd5, 0x23, 0x20, 0x5f, 0xe1, - 0xc4, 0xd0, 0x2d, 0xc6, 0xdb, 0xfe, 0x4f, 0x27, 0xe3, 0x2b, 0xbc, 0x06, 0x0a, 0xd2, 0x61, 0x2a, - 0xf2, 0x39, 0xc6, 0xd6, 0x5e, 0x07, 0x1c, 0xcd, 0xbd, 0x2c, 0x24, 0xe3, 0xbc, 0x30, 0x53, 0x63, - 0xc4, 0x77, 0x4c, 0xd8, 0xf3, 0xb3, 0x2a, 0xce, 0xbd, 0xdd, 0x99, 0x91, 0xe6, 0x32, 0x7b, 0x19, - 0xcd, 0x65, 0xee, 0x42, 0xcd, 0xe5, 0x0b, 0x1c, 0x6b, 0x02, 0xe3, 0x7d, 0xc2, 0x6b, 0x53, 0x67, - 0x36, 0x18, 0xf5, 0x4a, 0x53, 0x0c, 0x88, 0x82, 0xb1, 0x97, 0x85, 0x14, 0x98, 0xd7, 0x09, 0x26, - 0x6d, 0x2a, 0x71, 0x81, 0xac, 0x00, 0x4b, 0x7d, 0x8e, 0x13, 0x43, 0xdb, 0xe7, 0x66, 0xd4, 0x3d, - 0xd8, 0xf7, 0xb2, 0xcf, 0x7d, 0x24, 0xef, 0xe0, 0xe9, 0x9e, 0xde, 0xea, 0xfa, 0x89, 0x27, 0x06, - 0x6b, 0xa1, 0xcf, 0x50, 0x6a, 0x1d, 0x4b, 0xe3, 0x3b, 0x75, 0x1e, 0xfc, 0x8d, 0x48, 0x6c, 0x5a, - 0x8a, 0x66, 0x0f, 0xf0, 0xcc, 0x70, 0x02, 0x90, 0x2f, 0xf0, 0xb4, 0xc9, 0xa0, 0x4d, 0x93, 0xa2, - 0x4f, 0x7e, 0x30, 0x51, 0xca, 0xa8, 0x02, 0x43, 0x3e, 0xc2, 0x51, 0x71, 0xfb, 0x4d, 0x86, 0x38, - 0x3a, 0x39, 0x86, 0x56, 0x5c, 0x23, 0x5f, 0x47, 0xcf, 0x2f, 0x7b, 0x0f, 0xcf, 0x6e, 0xf2, 0x76, - 0xf6, 0xe6, 0xa7, 0xfa, 0x32, 0x96, 0x1a, 0xba, 0xd9, 0xd2, 0xcc, 0xc6, 0xa0, 0xed, 0xf1, 0x92, - 0x8c, 0xa9, 0x73, 0xee, 0x7c, 0xb9, 0xe1, 0xb7, 0xb3, 0x95, 0xff, 0x23, 0xfc, 0x6e, 0xe0, 0xa1, - 0x4e, 0x52, 0x78, 0x61, 0x4b, 0xa9, 0x6a, 0x6a, 0x65, 0x57, 0x2b, 0xed, 0xa8, 0x37, 0x0b, 0x55, - 0x6d, 0x53, 0x29, 0x15, 0x6e, 0x6f, 0x57, 0xa5, 0x29, 0xf2, 0x7d, 0xbc, 0x38, 0x66, 0x2b, 0xed, - 0xa8, 0x5a, 0x51, 0x55, 0x0a, 0x55, 0x45, 0x42, 0x24, 0x8d, 0x53, 0x01, 0x66, 0x55, 0xd9, 0xdd, - 0x2e, 0x14, 0x15, 0x29, 0x44, 0x16, 0xf1, 0xbb, 0x63, 0xf6, 0x4a, 0xb5, 0x50, 0xbd, 0x5d, 0x91, - 0xc2, 0xe4, 0x3d, 0xfc, 0xf6, 0x98, 0x49, 0x55, 0x0a, 0x9b, 0x52, 0x84, 0x2c, 0xe1, 0xcc, 0x31, - 0x43, 0x49, 0x51, 0xd5, 0xf2, 0xad, 0x2d, 0x6d, 0x67, 0xe3, 0x86, 0x52, 0xac, 0x56, 0xa4, 0xe9, - 0x00, 0xaf, 0x0d, 0x75, 0xe7, 0x67, 0xca, 0x2d, 0xe1, 0xac, 0xdc, 0x2a, 0x2a, 0x15, 0x29, 0xba, - 0xfa, 0xa7, 0x18, 0x0e, 0x17, 0x76, 0xcb, 0xe4, 0xef, 0x08, 0x47, 0xc5, 0x85, 0x83, 0x4c, 0x70, - 0x1b, 0x49, 0x5d, 0x3f, 0xd5, 0xc7, 0xbb, 0x91, 0xd1, 0xfe, 0xa3, 0xe4, 0xa7, 0x8d, 0x1f, 0x7d, - 0x63, 0xe4, 0x28, 0x18, 0x5d, 0x07, 0xda, 0x40, 0xef, 0xe6, 0x6a, 0x3a, 0x35, 0x8d, 0x5c, 0x97, - 0x82, 0xf3, 0x61, 0x0f, 0x68, 0xce, 0xb4, 0x72, 0x66, 0xa7, 0xe1, 0xe8, 0x94, 0x39, 0x5d, 0x83, - 0x75, 0x1d, 0xc8, 0xed, 0x39, 0x26, 0x83, 0x6f, 0xff, 0xf5, 0xbf, 0xfb, 0xa1, 0x4f, 0xb2, 0xb2, - 0xf7, 0x8f, 0x2e, 0x3f, 0xd8, 0x63, 0x9a, 0xff, 0xa5, 0x5f, 0xdf, 0xf2, 0x60, 0xf2, 0x40, 0xfc, - 0x2f, 0xa2, 0x6b, 0x68, 0x85, 0xfc, 0x0d, 0xe1, 0xf0, 0x16, 0x30, 0xf2, 0xfe, 0xc9, 0x97, 0x36, - 0x21, 0x21, 0x73, 0xd6, 0xad, 0x2e, 0xcb, 0x1e, 0xff, 0x25, 0x84, 0xfa, 0x8f, 0x92, 0x9f, 0x05, - 0x6b, 0x68, 0x5b, 0x1d, 0x93, 0x59, 0x27, 0xc9, 0x70, 0x40, 0xaf, 0x73, 0x15, 0x32, 0xf9, 0x30, - 0x48, 0xc5, 0xb1, 0xe0, 0xc5, 0xd4, 0x01, 0xf9, 0x2b, 0xc2, 0x11, 0xb7, 0x82, 0x48, 0xe6, 0x94, - 0xe2, 0x12, 0x12, 0xae, 0x9d, 0x59, 0x7e, 0xd9, 0xf6, 0xa5, 0x68, 0xf8, 0x21, 0xf9, 0x60, 0x22, - 0x0d, 0xe4, 0x3f, 0x08, 0x5f, 0xf1, 0x6e, 0x9c, 0x64, 0x92, 0xfb, 0x68, 0x6a, 0xe9, 0x74, 0x27, - 0x4f, 0xc5, 0xaf, 0xd1, 0x05, 0x53, 0xa9, 0x98, 0x5a, 0x3f, 0x5f, 0x2a, 0x8d, 0xd9, 0x0e, 0xdc, - 0xd4, 0xfa, 0x33, 0xc2, 0x51, 0xd1, 0x8e, 0x4e, 0xa8, 0x91, 0x91, 0x5e, 0x95, 0x5a, 0x90, 0xc5, - 0x67, 0x01, 0xd9, 0xff, 0x2c, 0x20, 0x2b, 0x6d, 0x9b, 0xed, 0x67, 0xbf, 0xbe, 0xa0, 0x96, 0x8f, - 0x57, 0xce, 0x95, 0x50, 0x6b, 0x68, 0x25, 0xb5, 0xfb, 0xf0, 0x10, 0x85, 0xfe, 0x79, 0x88, 0x52, - 0x41, 0x51, 0x8b, 0xb3, 0xe7, 0xd9, 0x21, 0x42, 0xfd, 0x43, 0x94, 0x39, 0xeb, 0x8c, 0xfa, 0xf6, - 0x1f, 0xc9, 0x90, 0x84, 0x36, 0x7e, 0x83, 0x9e, 0xac, 0x4f, 0x17, 0xd5, 0xdb, 0x9b, 0xdb, 0x4f, - 0x9f, 0xa7, 0xa7, 0x9e, 0x3d, 0x4f, 0x4f, 0xbd, 0x7c, 0x9e, 0x46, 0xbf, 0xea, 0xa7, 0xd1, 0x1f, - 0xfb, 0x69, 0xf4, 0xb8, 0x9f, 0x46, 0x4f, 0xfb, 0x69, 0xf4, 0xdf, 0x7e, 0x1a, 0xbd, 0xe8, 0xa7, - 0xa7, 0x5e, 0xf6, 0xd3, 0xe8, 0xb7, 0x47, 0xe9, 0xa9, 0x87, 0x47, 0x69, 0xf4, 0xf4, 0x28, 0x3d, - 0xf5, 0xec, 0x28, 0x3d, 0xf5, 0xf3, 0x72, 0xd3, 0xb2, 0xef, 0x35, 0xe5, 0x9e, 0xe5, 0xde, 0xf1, - 0x1c, 0x5d, 0xee, 0xd2, 0x3c, 0x7f, 0x70, 0xff, 0xd2, 0xe4, 0x6c, 0xc7, 0xea, 0x99, 0x75, 0x70, - 0x72, 0xbe, 0x39, 0x6f, 0xd7, 0x9a, 0x56, 0x1e, 0xbe, 0x61, 0xde, 0xc7, 0x88, 0xe1, 0x0f, 0x22, - 0xb5, 0x28, 0x5f, 0xe2, 0x4f, 0xbe, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xdb, 0x81, 0x85, 0xc8, 0x15, - 0x12, 0x00, 0x00, + // 1620 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcf, 0x6f, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x49, 0x14, 0x8a, 0x75, 0x19, 0x9a, 0x56, + 0x5a, 0x41, 0x08, 0x97, 0x89, 0x82, 0x16, 0x8d, 0x52, 0xa8, 0xa1, 0xa8, 0xa5, 0x4a, 0x57, 0xb6, + 0x84, 0x25, 0x6d, 0xa4, 0xbd, 0x2c, 0x96, 0xcb, 0x47, 0x7a, 0x6b, 0x92, 0xbb, 0x9d, 0x19, 0x52, + 0x11, 0x0a, 0x01, 0x45, 0xae, 0x05, 0xfa, 0x03, 0x41, 0x2f, 0x45, 0x0f, 0xe9, 0xa1, 0x40, 0xff, + 0x84, 0x02, 0xba, 0xf8, 0xd6, 0x20, 0x87, 0xc2, 0x68, 0xd1, 0xc2, 0x05, 0x7a, 0x88, 0xa9, 0x16, + 0xc8, 0x31, 0xe9, 0xa9, 0xc7, 0x62, 0x67, 0x76, 0x19, 0x92, 0x5a, 0x49, 0x54, 0x62, 0xe7, 0xc4, + 0x9d, 0x79, 0xef, 0xfb, 0xf6, 0x7d, 0xfb, 0x7e, 0xec, 0x70, 0xf1, 0xea, 0x00, 0x98, 0x6a, 0x3b, + 0x45, 0x66, 0xdd, 0x87, 0xae, 0x59, 0x6c, 0x75, 0x00, 0x78, 0xd1, 0xed, 0x37, 0x3a, 0xb6, 0x65, + 0x58, 0xb4, 0xdf, 0x34, 0x5d, 0x5b, 0x75, 0xa9, 0xc3, 0x1d, 0xf2, 0xbc, 0xf4, 0x54, 0xa5, 0xa7, + 0x2a, 0x3c, 0x33, 0x85, 0xb6, 0xcd, 0xef, 0xf7, 0x1b, 0xaa, 0xe5, 0x74, 0x8b, 0x6d, 0xa7, 0xed, + 0x14, 0x85, 0x6f, 0xa3, 0xdf, 0x12, 0x2b, 0xb1, 0x10, 0x57, 0x92, 0x23, 0x73, 0xbd, 0xed, 0x38, + 0xed, 0x0e, 0x14, 0x4d, 0xd7, 0x2e, 0x9a, 0xbd, 0x9e, 0xc3, 0x4d, 0x6e, 0x3b, 0x3d, 0xe6, 0x5b, + 0xbf, 0xe6, 0x5b, 0x47, 0x1c, 0xd0, 0x75, 0xf9, 0xa1, 0x6f, 0xcc, 0x4c, 0x06, 0x0a, 0x94, 0x3a, + 0x34, 0x00, 0xe6, 0xc2, 0x44, 0x38, 0x8d, 0x1f, 0x83, 0xc5, 0x7d, 0x8f, 0x97, 0xc3, 0x3c, 0xf8, + 0xa1, 0x0b, 0xa3, 0x7b, 0x4f, 0x3a, 0x38, 0xee, 0x78, 0x60, 0xcb, 0x93, 0xc6, 0x71, 0x5c, 0x7e, + 0xd2, 0x34, 0x00, 0x06, 0xbd, 0xc1, 0x14, 0x7c, 0x2a, 0xbc, 0x81, 0x0d, 0x07, 0xc6, 0x84, 0x47, + 0xfe, 0x0f, 0x08, 0x5f, 0x2d, 0x53, 0x30, 0x39, 0xe8, 0xf0, 0x93, 0x3e, 0x30, 0x4e, 0xbe, 0x87, + 0x13, 0x5d, 0xe0, 0x66, 0xd3, 0xe4, 0x66, 0x1a, 0xe5, 0xd0, 0x6a, 0x6a, 0xfd, 0xa6, 0x3a, 0x99, + 0x80, 0x3d, 0xa1, 0x4f, 0xa2, 0x6e, 0x03, 0x37, 0xeb, 0x87, 0x2e, 0xe8, 0x23, 0x10, 0xf9, 0x3e, + 0x8e, 0x31, 0x17, 0xac, 0x74, 0x24, 0x14, 0x2c, 0x1e, 0x80, 0x2a, 0xc1, 0x35, 0x17, 0x2c, 0x0f, + 0xbc, 0x75, 0xed, 0xb7, 0x47, 0x0b, 0x1e, 0x46, 0x6d, 0x5b, 0x86, 0xf7, 0xab, 0x0b, 0x86, 0x8d, + 0xe4, 0x47, 0x9b, 0x71, 0x79, 0xb3, 0xfc, 0x67, 0x08, 0x2f, 0x06, 0x71, 0x32, 0xd7, 0xe9, 0x31, + 0x20, 0xdf, 0x3d, 0x15, 0x68, 0x2e, 0x34, 0xd0, 0x1d, 0xe0, 0x21, 0x51, 0xee, 0xe1, 0x6b, 0xec, + 0x90, 0x71, 0xe8, 0x1a, 0x23, 0x92, 0xa8, 0x20, 0xf9, 0xc6, 0x14, 0x49, 0x4d, 0x78, 0x9d, 0xa6, + 0x5a, 0x94, 0xf0, 0xdb, 0x01, 0xa1, 0x36, 0x21, 0x3b, 0x17, 0x2a, 0x7b, 0x07, 0xf8, 0x25, 0x34, + 0xff, 0x13, 0xe1, 0x45, 0x1d, 0xdc, 0x8e, 0x69, 0x8d, 0x92, 0xf3, 0xf6, 0x29, 0xcd, 0x2b, 0xa1, + 0x9a, 0x7d, 0x58, 0x88, 0xee, 0xea, 0x44, 0x98, 0x2b, 0xa1, 0x61, 0xfa, 0xe8, 0x0b, 0x42, 0x25, + 0x45, 0xac, 0x50, 0x60, 0x4e, 0x9f, 0x5a, 0x60, 0x0c, 0x80, 0x32, 0xdb, 0xe9, 0x89, 0x67, 0x98, + 0xdc, 0x8a, 0x7d, 0x72, 0x8c, 0x90, 0x7e, 0x2d, 0xb0, 0xde, 0x93, 0xc6, 0x71, 0x6d, 0xcf, 0xe1, + 0x6b, 0x23, 0x69, 0x32, 0x9f, 0xf9, 0xf7, 0x11, 0xc6, 0x3b, 0xc0, 0x03, 0xa9, 0xd7, 0x71, 0xb2, + 0x67, 0x76, 0x81, 0xb9, 0xa6, 0x05, 0x42, 0x6b, 0x52, 0xff, 0x7c, 0x83, 0x10, 0x1c, 0xf3, 0x16, + 0x42, 0x46, 0x52, 0x17, 0xd7, 0xa4, 0x86, 0xbd, 0x3b, 0x0a, 0x32, 0xa3, 0xe5, 0xd0, 0xae, 0xc9, + 0x45, 0x38, 0x8b, 0xeb, 0x6b, 0x67, 0x25, 0x23, 0xb8, 0x77, 0x45, 0x78, 0x97, 0x9d, 0x26, 0xe8, + 0x8b, 0x74, 0x62, 0x2f, 0xff, 0xd9, 0x3c, 0x4e, 0x8d, 0x79, 0x92, 0x32, 0x4e, 0x59, 0xa2, 0x0e, + 0xc5, 0x2d, 0xfc, 0xc7, 0x98, 0x3f, 0xa7, 0xc8, 0x7d, 0x3d, 0x3a, 0x96, 0x30, 0x8f, 0x96, 0x54, + 0xf0, 0x02, 0x95, 0xea, 0x25, 0x4b, 0xf4, 0x9c, 0x56, 0x99, 0xac, 0x00, 0x3d, 0xe5, 0x03, 0x05, + 0x4f, 0x58, 0x06, 0x62, 0xe7, 0x64, 0x60, 0xa2, 0x67, 0xe6, 0x9f, 0x46, 0xcf, 0x5c, 0x79, 0x2a, + 0x3d, 0x13, 0xff, 0x52, 0x3d, 0x43, 0xde, 0xc6, 0x71, 0xc6, 0x4d, 0xde, 0x67, 0xe9, 0x0f, 0x7e, + 0x87, 0x72, 0xd1, 0xd5, 0xd4, 0xfa, 0x8d, 0x50, 0xaa, 0x9a, 0x70, 0x92, 0x61, 0x6d, 0x45, 0x1f, + 0x1e, 0x21, 0xdd, 0xc7, 0x91, 0x2a, 0x7e, 0x8e, 0x42, 0x0b, 0x28, 0xb5, 0x7b, 0x6d, 0x43, 0xce, + 0x6f, 0x96, 0x4e, 0x08, 0xaa, 0xeb, 0x67, 0x34, 0x58, 0x4b, 0x28, 0x52, 0x46, 0x30, 0xb9, 0xcf, + 0xc8, 0x3d, 0x9c, 0x6e, 0x42, 0x07, 0x38, 0x34, 0x0d, 0x69, 0x83, 0xe6, 0x88, 0x31, 0x39, 0x03, + 0xe3, 0x92, 0x8f, 0xd6, 0x7d, 0x70, 0xc0, 0xfb, 0x0e, 0x5e, 0x6e, 0xda, 0xcc, 0x6c, 0x74, 0xc2, + 0x88, 0xf1, 0x0c, 0xc4, 0x2f, 0x05, 0xf0, 0x29, 0xe6, 0xb1, 0xb6, 0xbc, 0x15, 0x4b, 0x20, 0x25, + 0xe2, 0xbd, 0x14, 0x52, 0xbb, 0x36, 0x9b, 0xb1, 0x15, 0x6f, 0xe0, 0x85, 0x8e, 0xd9, 0x80, 0x8e, + 0xd1, 0xb2, 0x3b, 0x1c, 0xa8, 0xdf, 0x92, 0x29, 0xb1, 0x57, 0x11, 0x5b, 0xe4, 0x26, 0xbe, 0x4a, + 0xc1, 0x75, 0x28, 0x37, 0x5a, 0x36, 0x74, 0x9a, 0x2c, 0x1d, 0xcd, 0x45, 0x57, 0x93, 0xfa, 0x82, + 0xdc, 0xac, 0x88, 0x3d, 0xf2, 0x1a, 0x7e, 0xc1, 0x77, 0x92, 0x49, 0x09, 0x7c, 0x63, 0xc2, 0x97, + 0x48, 0x9b, 0x4c, 0xa1, 0x44, 0xe4, 0x3f, 0x88, 0x63, 0x45, 0xc6, 0x29, 0x9b, 0xb3, 0xca, 0xa1, + 0x4b, 0x96, 0x70, 0x9c, 0x43, 0xcf, 0xec, 0x71, 0x51, 0x55, 0x49, 0xdd, 0x5f, 0x7d, 0x81, 0x79, + 0xa2, 0xe0, 0x68, 0xdf, 0x6e, 0xca, 0x91, 0xa6, 0x7b, 0x97, 0x24, 0x87, 0x53, 0x4d, 0x60, 0x16, + 0xb5, 0xc5, 0x3b, 0x34, 0x9d, 0x92, 0x4a, 0xc7, 0xb6, 0x48, 0x06, 0x27, 0x82, 0xc7, 0x9c, 0x5e, + 0xc8, 0xa1, 0xd5, 0x84, 0x3e, 0x5a, 0x93, 0x2a, 0x8e, 0x8b, 0x87, 0x22, 0x25, 0xa5, 0xd6, 0x5f, + 0x0f, 0x2d, 0xd2, 0x69, 0x41, 0xea, 0xae, 0xc0, 0x68, 0x3d, 0x4e, 0x0f, 0x75, 0x9f, 0x80, 0xbc, + 0x83, 0x53, 0x63, 0xa7, 0x18, 0x3f, 0xfd, 0xdf, 0x9e, 0x8d, 0xaf, 0xf4, 0x39, 0x50, 0x92, 0x8e, + 0x53, 0x91, 0x37, 0x31, 0x76, 0x0e, 0x7a, 0x40, 0x0d, 0xef, 0xb0, 0x90, 0x4e, 0x8a, 0xc6, 0xcc, + 0x4c, 0x11, 0xdf, 0xb3, 0xe1, 0x20, 0xa8, 0xaa, 0xa4, 0xf0, 0xf6, 0x76, 0x26, 0x86, 0xcb, 0xd5, + 0xa7, 0x31, 0x5c, 0x16, 0xbf, 0xd4, 0x70, 0x79, 0x0b, 0x27, 0xda, 0xc0, 0xc5, 0x9c, 0xf0, 0xc7, + 0xd4, 0x85, 0x03, 0x46, 0xbf, 0xd2, 0x96, 0x0b, 0xa2, 0x61, 0xec, 0x57, 0x21, 0x03, 0xee, 0x4f, + 0x82, 0x59, 0x87, 0x4a, 0x52, 0x22, 0x6b, 0xc0, 0x33, 0x6f, 0xe2, 0xd4, 0x58, 0xfa, 0xbc, 0x8a, + 0x7a, 0x00, 0x87, 0x7e, 0xf5, 0x79, 0x97, 0xe4, 0x05, 0x3c, 0x3f, 0x30, 0x3b, 0xfd, 0xa0, 0xf0, + 0xe4, 0x62, 0x23, 0xf2, 0x1d, 0x94, 0xd9, 0xc4, 0xca, 0x74, 0xa6, 0x2e, 0x83, 0xbf, 0x15, 0x4b, + 0xcc, 0x2b, 0xf1, 0xfc, 0x11, 0x5e, 0x18, 0x2f, 0x00, 0xf2, 0x16, 0x9e, 0xb7, 0x39, 0x74, 0x59, + 0x5a, 0xce, 0xc9, 0x57, 0x66, 0x2a, 0x19, 0x5d, 0x62, 0xc8, 0x6b, 0x38, 0x2e, 0x4f, 0xbf, 0xe9, + 0x88, 0x40, 0xa7, 0xa7, 0xd0, 0x9a, 0x67, 0x14, 0xcf, 0xd1, 0xf7, 0xcb, 0x3f, 0xc0, 0x57, 0xb7, + 0xc5, 0x38, 0xfb, 0xe2, 0x6f, 0xf5, 0x55, 0xac, 0xb4, 0x4c, 0xbb, 0x63, 0xd8, 0xad, 0xd1, 0xd8, + 0x13, 0x2d, 0x99, 0xd0, 0x17, 0xbd, 0xfd, 0x6a, 0x2b, 0x18, 0x67, 0x6b, 0xff, 0x45, 0xf8, 0xc5, + 0xd0, 0x97, 0x3a, 0xc9, 0xe0, 0xa5, 0x1d, 0xad, 0x6e, 0xe8, 0xb5, 0x7d, 0xa3, 0xb2, 0xa7, 0xdf, + 0x2e, 0xd5, 0x8d, 0x6d, 0xad, 0x52, 0xba, 0xbb, 0x5b, 0x57, 0xe6, 0xc8, 0xd7, 0xf1, 0xf2, 0x94, + 0xad, 0xb2, 0xa7, 0x1b, 0x65, 0x5d, 0x2b, 0xd5, 0x35, 0x05, 0x91, 0x2c, 0xce, 0x84, 0x98, 0x75, + 0x6d, 0x7f, 0xb7, 0x54, 0xd6, 0x94, 0x08, 0x59, 0xc6, 0x2f, 0x4e, 0xd9, 0x6b, 0xf5, 0x52, 0xfd, + 0x6e, 0x4d, 0x89, 0x92, 0x97, 0xf0, 0xf3, 0x53, 0x26, 0x5d, 0x2b, 0x6d, 0x2b, 0x31, 0xb2, 0x82, + 0x73, 0xa7, 0x0c, 0x15, 0x4d, 0xd7, 0xab, 0x77, 0x76, 0x8c, 0xbd, 0xad, 0x5b, 0x5a, 0xb9, 0x5e, + 0x53, 0xe6, 0x43, 0xbc, 0xb6, 0xf4, 0xbd, 0x1f, 0x68, 0x77, 0xa4, 0xb3, 0x76, 0xa7, 0xac, 0xd5, + 0x94, 0xf8, 0xfa, 0xdf, 0x93, 0x38, 0x5a, 0xda, 0xaf, 0x92, 0xff, 0x20, 0x1c, 0x97, 0x07, 0x0e, + 0x32, 0xc3, 0x69, 0x24, 0x73, 0xf3, 0x5c, 0x1f, 0xff, 0x44, 0xf6, 0x6b, 0x34, 0xfc, 0x73, 0xba, + 0xde, 0xfa, 0xd6, 0xbb, 0x56, 0x81, 0x81, 0xd5, 0xa7, 0xd0, 0x05, 0x76, 0xbf, 0xd0, 0x30, 0x99, + 0x6d, 0x15, 0xfa, 0x0c, 0xe8, 0xab, 0xd3, 0x26, 0xc6, 0xcd, 0x5e, 0xd3, 0xa4, 0x4d, 0x69, 0x1d, + 0x00, 0x2b, 0xd8, 0x4e, 0xc1, 0xee, 0xb5, 0xa8, 0xc9, 0x38, 0xed, 0x5b, 0xbc, 0x4f, 0xa1, 0x70, + 0x40, 0x6d, 0x0e, 0xef, 0xfd, 0xed, 0xdf, 0xef, 0x47, 0xde, 0xc8, 0xab, 0xfe, 0x1f, 0xbe, 0xe2, + 0xa8, 0x04, 0x58, 0xf1, 0xa7, 0x41, 0xfb, 0xab, 0xa3, 0xcd, 0x23, 0xf9, 0xb7, 0x89, 0x6d, 0xa0, + 0x35, 0xf2, 0x31, 0xc2, 0xd1, 0x1d, 0xe0, 0xe4, 0xe5, 0xb3, 0xcf, 0x74, 0x52, 0x61, 0xee, 0xa2, + 0x43, 0x5f, 0xfe, 0x37, 0xe8, 0xc3, 0x3f, 0x45, 0x3c, 0x89, 0x3f, 0x0c, 0x97, 0xd8, 0x75, 0x7a, + 0x36, 0x77, 0xce, 0x51, 0x19, 0x38, 0x84, 0x0b, 0xa5, 0x60, 0x36, 0x85, 0x4e, 0x95, 0xbc, 0x1a, + 0xa6, 0xf3, 0x94, 0x3c, 0xb9, 0x75, 0x44, 0xfe, 0x85, 0x70, 0xcc, 0x6b, 0x41, 0x92, 0x3b, 0xa7, + 0x3b, 0xa5, 0xc8, 0x1b, 0x17, 0xf6, 0x6f, 0xfe, 0x17, 0x5f, 0x91, 0xca, 0x6f, 0x92, 0x57, 0x66, + 0x52, 0x49, 0xfe, 0x87, 0xf0, 0x15, 0xff, 0x50, 0x4b, 0x66, 0x39, 0xf2, 0x66, 0x56, 0xce, 0x77, + 0xf2, 0x75, 0xfe, 0xfe, 0xd9, 0x16, 0x6b, 0x39, 0xb3, 0x79, 0xb9, 0x62, 0x9d, 0xb2, 0x1d, 0x79, + 0xc5, 0xfb, 0x0f, 0x84, 0xe3, 0x72, 0x1e, 0x9e, 0xd1, 0xa4, 0x13, 0xc3, 0x32, 0xb3, 0xa4, 0xca, + 0xef, 0x12, 0x6a, 0xf0, 0x5d, 0x42, 0xd5, 0xba, 0x2e, 0x3f, 0xcc, 0xff, 0xf2, 0xd9, 0x4a, 0x7d, + 0x7d, 0xed, 0x52, 0xf5, 0xba, 0x81, 0xd6, 0x32, 0xfb, 0x0f, 0x8f, 0x51, 0xe4, 0xaf, 0xc7, 0x28, + 0x13, 0x26, 0x4a, 0xbe, 0x1b, 0x1f, 0x1f, 0x23, 0x34, 0x3c, 0x46, 0xb9, 0x8b, 0xde, 0xa1, 0xef, + 0xfd, 0x25, 0x1d, 0x51, 0xd0, 0xd6, 0xcf, 0xd1, 0x47, 0x9b, 0xf3, 0x65, 0xfd, 0xee, 0xf6, 0xee, + 0xa3, 0x27, 0xd9, 0xb9, 0xc7, 0x4f, 0xb2, 0x73, 0x9f, 0x3e, 0xc9, 0xa2, 0x9f, 0x0d, 0xb3, 0xe8, + 0x8f, 0xc3, 0x2c, 0xfa, 0x70, 0x98, 0x45, 0x8f, 0x86, 0x59, 0xf4, 0xf1, 0x30, 0x8b, 0x3e, 0x19, + 0x66, 0xe7, 0x3e, 0x1d, 0x66, 0xd1, 0xaf, 0x4e, 0xb2, 0x73, 0x0f, 0x4f, 0xb2, 0xe8, 0xd1, 0x49, + 0x76, 0xee, 0xf1, 0x49, 0x76, 0xee, 0x47, 0xd5, 0xb6, 0xe3, 0x3e, 0x68, 0xab, 0x03, 0xc7, 0x3b, + 0x83, 0x52, 0x53, 0xed, 0xb3, 0xa2, 0xb8, 0xf0, 0xfe, 0x72, 0x15, 0x5c, 0xea, 0x0c, 0xec, 0x26, + 0xd0, 0x42, 0x60, 0x2e, 0xba, 0x8d, 0xb6, 0x53, 0x84, 0x77, 0xb9, 0xff, 0xb1, 0x64, 0xfc, 0x83, + 0x4d, 0x23, 0x2e, 0x32, 0xf0, 0xc6, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0x59, 0xe7, 0x34, 0xee, + 0xb5, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/fleet/public_crudapi.vesapi.go b/pbgo/extschema/schema/fleet/public_crudapi.vesapi.go index b1586c13c..70caf7ad8 100644 --- a/pbgo/extschema/schema/fleet/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/fleet/public_crudapi.vesapi.go @@ -5078,10 +5078,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5138,10 +5142,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5200,10 +5208,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5779,6 +5791,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/fleetFleetInterfaceListType", "x-displayname": "List of Interfaces" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6045,6 +6062,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/fleetFleetInterfaceListType", "x-displayname": "List of Interface" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6300,6 +6322,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/fleetFleetInterfaceListType", "x-displayname": "List of Interface" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6474,6 +6501,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", diff --git a/pbgo/extschema/schema/fleet/types.pb.go b/pbgo/extschema/schema/fleet/types.pb.go index 7c1a461d6..a0c36b56f 100644 --- a/pbgo/extschema/schema/fleet/types.pb.go +++ b/pbgo/extschema/schema/fleet/types.pb.go @@ -5191,6 +5191,11 @@ type GlobalSpecType struct { // *GlobalSpecType_DefaultSriovInterface // *GlobalSpecType_SriovInterfaces SriovInterfaceChoice isGlobalSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,80,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` // Custom Allowed Services // // x-displayName: "Custom Allowed Services" @@ -5852,6 +5857,13 @@ func (m *GlobalSpecType) GetSriovInterfaces() *SriovInterfacesListType { return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GlobalSpecType) GetAllowedServices() *CustomAllowedServiceList { if m != nil { return m.AllowedServices @@ -5993,7 +6005,8 @@ type CreateSpecType struct { // // *CreateSpecType_DefaultSriovInterface // *CreateSpecType_SriovInterfaces - SriovInterfaceChoice isCreateSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + SriovInterfaceChoice isCreateSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,80,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -6550,6 +6563,13 @@ func (m *CreateSpecType) GetSriovInterfaces() *SriovInterfacesListType { return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -6667,7 +6687,8 @@ type ReplaceSpecType struct { // // *ReplaceSpecType_DefaultSriovInterface // *ReplaceSpecType_SriovInterfaces - SriovInterfaceChoice isReplaceSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + SriovInterfaceChoice isReplaceSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,80,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -7217,6 +7238,13 @@ func (m *ReplaceSpecType) GetSriovInterfaces() *SriovInterfacesListType { return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -7335,7 +7363,8 @@ type GetSpecType struct { // // *GetSpecType_DefaultSriovInterface // *GetSpecType_SriovInterfaces - SriovInterfaceChoice isGetSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + SriovInterfaceChoice isGetSpecType_SriovInterfaceChoice `protobuf_oneof:"sriov_interface_choice"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,80,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -7892,6 +7921,13 @@ func (m *GetSpecType) GetSriovInterfaces() *SriovInterfacesListType { return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -8202,588 +8238,592 @@ func init() { } var fileDescriptor_82c3333ba2789298 = []byte{ - // 9291 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x6c, 0x1c, 0x49, - 0x92, 0x18, 0xb3, 0xbb, 0x49, 0x36, 0xa3, 0xd9, 0x0f, 0x26, 0x49, 0xb1, 0x45, 0x49, 0x54, 0x4f, - 0xcf, 0x8b, 0x43, 0xb5, 0xf8, 0x68, 0x3e, 0xa5, 0x99, 0xd1, 0x0d, 0x9b, 0xa4, 0x44, 0x72, 0x28, - 0x92, 0x5b, 0x94, 0x34, 0x77, 0xb3, 0xeb, 0xab, 0x2b, 0x76, 0x27, 0xc9, 0x3a, 0x15, 0xab, 0x6a, - 0xab, 0xaa, 0xa9, 0xe1, 0x18, 0x03, 0x8f, 0x65, 0x9c, 0xf7, 0x6e, 0x0e, 0xb0, 0xf7, 0x76, 0xef, - 0xc3, 0xde, 0x83, 0x5f, 0x07, 0x18, 0x36, 0x04, 0xd8, 0x07, 0xf8, 0xeb, 0x6e, 0x7b, 0x3e, 0x06, - 0x63, 0xd8, 0x58, 0x8c, 0x0d, 0x43, 0x1f, 0x86, 0x3d, 0x18, 0xdc, 0xc7, 0x2d, 0xf7, 0x67, 0x76, - 0x01, 0xdb, 0x0b, 0xdb, 0x1f, 0x6b, 0xc1, 0xc6, 0x1a, 0xf9, 0xa8, 0xea, 0xaa, 0x66, 0x75, 0x93, - 0x92, 0x76, 0xd7, 0xbb, 0x6b, 0xce, 0x8f, 0xd8, 0x95, 0x11, 0x91, 0x91, 0x91, 0x91, 0x91, 0x11, - 0x91, 0x91, 0x39, 0x70, 0xf9, 0x80, 0xd8, 0xa3, 0xaa, 0x31, 0x66, 0x97, 0xf7, 0xc8, 0xbe, 0x32, - 0xb6, 0xa3, 0x11, 0xe2, 0x8c, 0x39, 0x87, 0x26, 0xb1, 0x47, 0x4d, 0xcb, 0x70, 0x0c, 0xdc, 0xcb, - 0x01, 0x46, 0x39, 0xc0, 0x28, 0x03, 0x18, 0xbc, 0xba, 0xab, 0x3a, 0x7b, 0xd5, 0xed, 0xd1, 0xb2, - 0xb1, 0x3f, 0xb6, 0x6b, 0xec, 0x1a, 0x63, 0x0c, 0x76, 0xbb, 0xba, 0xc3, 0x7e, 0xb1, 0x1f, 0xec, - 0x2f, 0x4e, 0x63, 0xf0, 0xf2, 0xae, 0x61, 0xec, 0x6a, 0xa4, 0x0e, 0xe5, 0xa8, 0xfb, 0xc4, 0x76, - 0x94, 0x7d, 0x53, 0x00, 0x5c, 0x0a, 0x72, 0xb1, 0xbd, 0x6b, 0xfa, 0x79, 0x18, 0x1c, 0x08, 0x36, - 0xeb, 0xc4, 0x11, 0x0d, 0x17, 0x82, 0x0d, 0x86, 0xe9, 0xa8, 0x86, 0x6e, 0x87, 0x13, 0x35, 0x0f, - 0x1c, 0xd9, 0x4f, 0xf4, 0x7c, 0xb0, 0xd9, 0xdf, 0x74, 0x31, 0xd8, 0x74, 0xa0, 0x68, 0x6a, 0x45, - 0x71, 0x88, 0x68, 0xcd, 0x35, 0xb4, 0xaa, 0xe4, 0x81, 0x1c, 0xec, 0xf9, 0xa5, 0xe3, 0x10, 0xf6, - 0x98, 0xad, 0x3a, 0x24, 0xc0, 0xc0, 0xe5, 0x30, 0x28, 0x1f, 0x40, 0xfe, 0x53, 0x04, 0x17, 0xd7, - 0x89, 0xf3, 0xc0, 0xb0, 0xee, 0xab, 0xfa, 0xee, 0x22, 0x39, 0x50, 0xcb, 0x64, 0x45, 0xb7, 0x1d, - 0x45, 0x2f, 0x93, 0x3b, 0x87, 0x26, 0xc1, 0xef, 0x42, 0x97, 0xaa, 0x3b, 0xc4, 0xda, 0x51, 0xca, - 0x24, 0x1b, 0xc9, 0x45, 0x87, 0x13, 0xc5, 0x8b, 0xa3, 0xc1, 0xf9, 0xda, 0xd8, 0xfe, 0x5d, 0x52, - 0x76, 0x24, 0xb2, 0x43, 0x11, 0x4a, 0x43, 0x8f, 0x3e, 0xe8, 0xd1, 0x39, 0x45, 0xd9, 0xc3, 0xfc, - 0xee, 0x0f, 0x3f, 0x89, 0xb6, 0x7f, 0x0b, 0x45, 0x32, 0x48, 0xaa, 0x93, 0xc3, 0x37, 0x21, 0x5a, - 0xb5, 0x49, 0x36, 0x9a, 0x43, 0xc3, 0xa9, 0xe2, 0xd4, 0x68, 0x88, 0x16, 0x8c, 0x36, 0xe3, 0xed, - 0xae, 0xcd, 0xd8, 0x93, 0x28, 0x81, 0xfc, 0x05, 0x38, 0x7f, 0x8b, 0xe8, 0xc4, 0x52, 0xcb, 0xc7, - 0x07, 0x90, 0xff, 0x56, 0x14, 0x70, 0xc8, 0xb8, 0x30, 0xc4, 0x74, 0x65, 0x9f, 0x64, 0x51, 0x0e, - 0x0d, 0x77, 0x49, 0xec, 0x6f, 0x7c, 0x0b, 0xda, 0x8d, 0x07, 0x3a, 0xb1, 0x04, 0x47, 0x2f, 0x85, - 0x72, 0xc4, 0x69, 0x6d, 0x50, 0x38, 0x36, 0xde, 0x04, 0x1d, 0x5b, 0xc7, 0x43, 0x14, 0x1d, 0x44, - 0x48, 0xe2, 0xf8, 0xf8, 0x5d, 0x48, 0xb9, 0x22, 0xa8, 0x30, 0xf0, 0x6c, 0x2c, 0x87, 0x86, 0x13, - 0xc5, 0x89, 0xa7, 0x1a, 0x23, 0x25, 0xbf, 0xdc, 0x26, 0x25, 0x05, 0x29, 0xde, 0x78, 0xfd, 0x8f, - 0xd1, 0xa7, 0x35, 0x74, 0x01, 0xce, 0x43, 0x1f, 0xff, 0x90, 0x5b, 0x30, 0xf4, 0x1d, 0x75, 0xb7, - 0x6a, 0x29, 0x54, 0x3d, 0x30, 0x9a, 0xf8, 0xac, 0x86, 0xbe, 0x0e, 0x29, 0x88, 0xad, 0x2b, 0xfb, - 0x64, 0xb0, 0x83, 0x0f, 0x13, 0x30, 0xb4, 0x33, 0x96, 0x07, 0xbb, 0xc4, 0x18, 0x73, 0x08, 0x5e, - 0x85, 0xae, 0x15, 0x77, 0x2e, 0x06, 0x07, 0x21, 0x1b, 0x64, 0x79, 0xd4, 0x9b, 0x27, 0xc8, 0x43, - 0xfc, 0xae, 0x4d, 0x72, 0x94, 0x9f, 0xc1, 0x73, 0x80, 0x1b, 0xe0, 0xaa, 0x36, 0xc9, 0xa1, 0x52, - 0x0e, 0xd2, 0xfc, 0xb7, 0xac, 0x0a, 0xf6, 0x71, 0xf2, 0x93, 0x1a, 0x8a, 0x3d, 0xae, 0xa1, 0xf6, - 0xa3, 0x1a, 0x42, 0x53, 0xab, 0xb1, 0x78, 0x24, 0x13, 0x5d, 0x8d, 0xc5, 0xdb, 0x33, 0x1d, 0xf9, - 0x3f, 0x42, 0x70, 0xee, 0x26, 0x1d, 0xbc, 0xc7, 0xc0, 0x9a, 0x6a, 0x3b, 0x6c, 0x62, 0x1e, 0x00, - 0x78, 0x3d, 0xdb, 0x59, 0xc4, 0x34, 0x2e, 0xdf, 0x20, 0x37, 0xa6, 0xc7, 0x0d, 0x7a, 0x37, 0xd9, - 0x4c, 0xef, 0x3a, 0xbe, 0x85, 0xa2, 0x99, 0x0f, 0x23, 0xae, 0x0a, 0xc6, 0x91, 0xfb, 0x57, 0x16, - 0x49, 0xbe, 0xae, 0xf2, 0x3a, 0xf4, 0x32, 0x96, 0xb8, 0x58, 0x3d, 0x7e, 0xde, 0x81, 0x4e, 0x3e, - 0x30, 0x3b, 0x1b, 0x65, 0xcc, 0xbc, 0xda, 0x42, 0x2d, 0xfc, 0x53, 0x57, 0xea, 0xf3, 0xb4, 0x3e, - 0xee, 0xeb, 0xd2, 0xa5, 0x96, 0xff, 0xd7, 0xed, 0x70, 0x79, 0xcb, 0x31, 0x2c, 0x65, 0x97, 0x70, - 0xe4, 0x45, 0xa2, 0x69, 0x2b, 0xb6, 0xaa, 0x19, 0xfa, 0xcd, 0xb9, 0xf1, 0x71, 0xd6, 0xf9, 0x0d, - 0x88, 0x57, 0x6d, 0x62, 0xd5, 0x35, 0xb5, 0x94, 0xff, 0x49, 0x0d, 0xc5, 0xfe, 0xf4, 0x63, 0xd4, - 0xb1, 0xad, 0xd8, 0x64, 0x66, 0x8a, 0x11, 0xb6, 0xa2, 0xc3, 0x1f, 0x22, 0xf1, 0xd7, 0x37, 0x11, - 0x92, 0x3c, 0x1c, 0xfc, 0x3a, 0xc4, 0x4d, 0xc5, 0xb6, 0x1f, 0x18, 0x56, 0x25, 0x1b, 0x61, 0x2a, - 0x78, 0xbe, 0x81, 0xfb, 0x2d, 0x52, 0xb6, 0x08, 0x1b, 0x69, 0x89, 0xce, 0x15, 0x92, 0x3c, 0x04, - 0xfc, 0x26, 0xa4, 0x6c, 0x52, 0xae, 0x5a, 0x44, 0x16, 0x72, 0x15, 0x5a, 0xdc, 0xd7, 0x40, 0x62, - 0x69, 0xdf, 0x74, 0x0e, 0xa9, 0xa2, 0x72, 0x68, 0xa1, 0xce, 0xf8, 0x0e, 0xa4, 0x1c, 0xab, 0x6a, - 0x3b, 0xa4, 0x22, 0x97, 0x15, 0xb9, 0x6a, 0x69, 0xd9, 0x76, 0x36, 0x82, 0xc2, 0x27, 0x35, 0x84, - 0xc4, 0x28, 0x12, 0x26, 0xd9, 0x2f, 0xe4, 0xea, 0x43, 0xe9, 0xb0, 0x62, 0xc3, 0x1f, 0x7e, 0x18, - 0xaf, 0x8f, 0x65, 0xb9, 0x4d, 0xea, 0x16, 0x54, 0x16, 0x94, 0xbb, 0x96, 0x86, 0x27, 0x21, 0xad, - 0x98, 0xaa, 0x6c, 0x13, 0xeb, 0x80, 0x58, 0x32, 0x13, 0x4c, 0x27, 0x23, 0xdb, 0x45, 0x91, 0x62, - 0x56, 0x64, 0x0f, 0x2d, 0x23, 0x29, 0xa9, 0x98, 0xea, 0x16, 0x03, 0xa1, 0xab, 0x00, 0xdf, 0x80, - 0x7e, 0x1f, 0x92, 0x6a, 0xca, 0x4a, 0xa5, 0x62, 0x11, 0xdb, 0xce, 0xc6, 0x03, 0xa8, 0xef, 0x51, - 0x54, 0xec, 0xa1, 0xae, 0x98, 0xf3, 0x1c, 0x0c, 0x4f, 0x07, 0x3a, 0x35, 0x0d, 0xcb, 0xc9, 0x76, - 0xe5, 0xd0, 0x70, 0xb2, 0x94, 0xa4, 0x98, 0xf1, 0x91, 0x8e, 0xec, 0x4f, 0x7f, 0x1a, 0x1d, 0xf6, - 0x77, 0xbb, 0x69, 0x58, 0x0e, 0x9e, 0x81, 0x1e, 0xd5, 0x2e, 0xdb, 0xaa, 0xac, 0x94, 0xcb, 0xc4, - 0xb6, 0xe5, 0xf7, 0x0d, 0x9d, 0x64, 0x81, 0x75, 0x09, 0x62, 0x88, 0xd9, 0x0f, 0x91, 0x94, 0x66, - 0x40, 0xf3, 0x0c, 0xe6, 0x5d, 0x43, 0x27, 0x78, 0x14, 0x92, 0x07, 0x86, 0x56, 0xdd, 0x27, 0xb2, - 0x69, 0x91, 0x1d, 0xf5, 0xbd, 0x6c, 0x22, 0xc0, 0x66, 0xf6, 0x2d, 0xa9, 0x9b, 0xb7, 0x6f, 0xb2, - 0x66, 0x3c, 0x02, 0x5d, 0x54, 0x84, 0xb2, 0xa9, 0x38, 0x7b, 0xd9, 0x6e, 0x06, 0xcb, 0x19, 0xb3, - 0x3a, 0xb2, 0x1f, 0x46, 0xfe, 0x3c, 0x82, 0xa4, 0x38, 0x6d, 0xdf, 0x54, 0x9c, 0xbd, 0xd2, 0x65, - 0xe8, 0xde, 0x73, 0x1c, 0xd3, 0x96, 0xcb, 0x7b, 0x86, 0x5a, 0x26, 0x38, 0x2d, 0x16, 0x69, 0xf4, - 0xa8, 0x86, 0xa2, 0x53, 0x85, 0xe9, 0xd2, 0x0b, 0x90, 0x12, 0xd2, 0xf1, 0x83, 0x74, 0x3e, 0xae, - 0xa1, 0x0e, 0x0a, 0x32, 0x5b, 0x98, 0x5b, 0x8d, 0xc5, 0xa3, 0x99, 0xd8, 0x6a, 0x2c, 0xde, 0x91, - 0xe9, 0xcc, 0xff, 0xe7, 0x28, 0xbc, 0x1c, 0xd0, 0xe2, 0xe5, 0xcd, 0xa5, 0x75, 0x75, 0x7f, 0xbb, - 0x6a, 0x8b, 0xaf, 0xf3, 0x3b, 0x53, 0x5c, 0x97, 0xaf, 0x41, 0xaf, 0xcd, 0x3f, 0x05, 0x66, 0x0f, - 0x35, 0xcc, 0x9e, 0xd4, 0x23, 0xa0, 0x7c, 0xf3, 0xb7, 0x08, 0xe7, 0x1b, 0x50, 0x7d, 0x73, 0x18, - 0x69, 0x98, 0x43, 0xe9, 0x5c, 0x80, 0x40, 0xcb, 0x59, 0x8c, 0x9e, 0x62, 0x16, 0xfd, 0x6b, 0x30, - 0xf6, 0x9c, 0x6b, 0xb0, 0xfd, 0x69, 0xd7, 0xe0, 0x18, 0x24, 0x4c, 0x62, 0xed, 0xc8, 0xa6, 0xa1, - 0xa9, 0xe5, 0xc3, 0x6c, 0x07, 0xeb, 0x3f, 0xf5, 0x93, 0x1a, 0x6a, 0xf3, 0x29, 0x10, 0x50, 0x90, - 0x4d, 0x06, 0x81, 0x5f, 0x04, 0xd0, 0xd4, 0x7d, 0xd5, 0x91, 0x55, 0xc3, 0xb4, 0xd9, 0xd2, 0x48, - 0x96, 0x62, 0x14, 0x5e, 0xea, 0x62, 0xdf, 0x57, 0x0c, 0xd3, 0xae, 0x03, 0xed, 0x6f, 0x9b, 0x7c, - 0x11, 0x04, 0x81, 0x6e, 0x6f, 0x9b, 0x76, 0xfe, 0xcf, 0x23, 0x30, 0x16, 0x98, 0xd9, 0xcd, 0xaa, - 0x45, 0xb6, 0xea, 0xa2, 0xa5, 0xbb, 0xa0, 0x55, 0xde, 0x23, 0xb6, 0x63, 0x29, 0x8e, 0xc1, 0x36, - 0x43, 0xfc, 0x1b, 0x00, 0x65, 0x8d, 0xae, 0x56, 0x4b, 0x56, 0x2b, 0x62, 0x6a, 0x73, 0x62, 0x61, - 0x67, 0x50, 0xf6, 0x1c, 0xfd, 0x33, 0x63, 0xa5, 0x8a, 0xdd, 0xbf, 0xfd, 0x55, 0xe5, 0xea, 0xfb, - 0xe3, 0x57, 0xaf, 0xc9, 0x7f, 0x6d, 0xe4, 0x25, 0xa9, 0x4b, 0xe0, 0xac, 0x54, 0xf0, 0x5b, 0x30, - 0x40, 0x74, 0x65, 0x5b, 0x23, 0xb2, 0x3b, 0xe1, 0x8e, 0x61, 0x1a, 0x9a, 0xb1, 0x7b, 0xc8, 0xe6, - 0x39, 0x5e, 0x8a, 0x0b, 0xeb, 0xd1, 0x26, 0xf5, 0x73, 0x40, 0xc1, 0xd1, 0x1d, 0x01, 0x86, 0x6f, - 0xc0, 0x39, 0x8f, 0x82, 0xa5, 0x96, 0x9d, 0x3a, 0x81, 0x68, 0x03, 0x81, 0x3e, 0x97, 0x00, 0x05, - 0xf3, 0xf0, 0x4b, 0xd0, 0xa1, 0x58, 0x96, 0x72, 0x68, 0x0b, 0x6b, 0x37, 0x12, 0x6a, 0xee, 0x37, - 0x6d, 0x63, 0x9e, 0x42, 0x05, 0x36, 0x5f, 0x49, 0x60, 0xe6, 0xff, 0x0c, 0x41, 0x7f, 0x28, 0x04, - 0x5e, 0x85, 0xc4, 0x8e, 0xa6, 0xd8, 0x7b, 0x32, 0x83, 0x64, 0x12, 0x4a, 0x14, 0x5f, 0x0c, 0xed, - 0xe2, 0x26, 0x85, 0x63, 0x24, 0x7c, 0x9a, 0x01, 0x3b, 0xde, 0xd7, 0x3a, 0xad, 0x6d, 0x4d, 0xa9, - 0x10, 0x61, 0xdf, 0x5b, 0xd0, 0x2a, 0x51, 0xb0, 0x63, 0xb4, 0xd8, 0xd7, 0xfc, 0xff, 0x40, 0x90, - 0x0a, 0x02, 0xe1, 0xb7, 0xe0, 0xbc, 0x2b, 0x48, 0x5d, 0x31, 0xed, 0x3d, 0xc3, 0x91, 0x2b, 0xaa, - 0x45, 0xca, 0x8e, 0x61, 0x71, 0xc6, 0xe3, 0x42, 0x67, 0xc4, 0x8c, 0x6d, 0x09, 0xa8, 0x45, 0x17, - 0x08, 0x4f, 0x42, 0x37, 0x79, 0x8f, 0xae, 0x33, 0xd9, 0xaa, 0x6a, 0xc4, 0x5d, 0xa9, 0x19, 0x57, - 0x7b, 0x3b, 0xad, 0xf6, 0x0c, 0xca, 0x3e, 0x41, 0x52, 0x82, 0x43, 0x49, 0x14, 0x08, 0xff, 0x2e, - 0x74, 0xfb, 0x46, 0xd5, 0x7a, 0xd3, 0xad, 0x73, 0xbc, 0xa4, 0x57, 0x4c, 0x43, 0xd5, 0x9d, 0xd2, - 0xd0, 0xf1, 0x4d, 0x37, 0xb0, 0xe3, 0x27, 0xea, 0x83, 0xb6, 0xf3, 0x3f, 0xe9, 0x00, 0x7c, 0x9c, - 0x06, 0x1e, 0x86, 0xce, 0xfd, 0xdd, 0x7d, 0x47, 0x56, 0x4d, 0xc1, 0x72, 0xd2, 0x65, 0x39, 0x66, - 0x45, 0x4c, 0xba, 0x27, 0x75, 0xd0, 0xf6, 0x15, 0x13, 0xbf, 0x09, 0x49, 0x06, 0x59, 0xd1, 0x6d, - 0x6e, 0xcd, 0xa2, 0x0c, 0x7e, 0x20, 0xb0, 0x40, 0x23, 0xf5, 0x9d, 0xa9, 0x4d, 0x4a, 0x50, 0xf8, - 0x45, 0xdd, 0x66, 0x76, 0xed, 0x0d, 0xe8, 0xa2, 0x16, 0xc9, 0x31, 0xee, 0x13, 0x5d, 0xa8, 0xdb, - 0xc9, 0xb6, 0x41, 0x31, 0xd5, 0x3b, 0x14, 0x01, 0xcf, 0x42, 0x5a, 0xdf, 0xb1, 0x65, 0x22, 0xd8, - 0xa6, 0xec, 0x76, 0x84, 0xb1, 0x8b, 0xa4, 0xa4, 0xbe, 0x63, 0xbb, 0xa3, 0x5b, 0x31, 0xf1, 0x1a, - 0xf4, 0x07, 0x10, 0x3d, 0xee, 0x3b, 0x5b, 0x73, 0x8f, 0x24, 0xec, 0x23, 0xe4, 0x0e, 0xe2, 0x1b, - 0x11, 0xe8, 0xd0, 0xa8, 0x02, 0x50, 0x4b, 0x42, 0xe7, 0x6a, 0xf2, 0x94, 0x73, 0x35, 0xba, 0xc6, - 0xb0, 0x96, 0x74, 0xc7, 0x3a, 0x2c, 0xfd, 0x05, 0x9b, 0xa4, 0xee, 0xef, 0xa0, 0xae, 0x3c, 0xd7, - 0x0b, 0x61, 0x4d, 0xbf, 0x83, 0x22, 0x99, 0x3e, 0xb7, 0x69, 0xc4, 0x6d, 0x3a, 0xfa, 0xab, 0x7f, - 0x13, 0xed, 0xfd, 0xe8, 0x63, 0x94, 0xc6, 0xc9, 0x1f, 0xd5, 0x50, 0xd7, 0x9a, 0xb2, 0x4d, 0xb4, - 0xdc, 0x7d, 0x72, 0xe8, 0xfb, 0x7e, 0xe4, 0x7d, 0x7f, 0x9b, 0x7f, 0x87, 0x8f, 0x3e, 0x46, 0x1d, - 0x38, 0xf6, 0xbd, 0x1a, 0x6a, 0xa3, 0x3f, 0x3b, 0x3e, 0xfa, 0x98, 0xaa, 0x06, 0xfd, 0xb3, 0xff, - 0xa3, 0x8f, 0x51, 0xcf, 0x60, 0xfa, 0x47, 0x35, 0x94, 0xe0, 0x18, 0x07, 0x8a, 0x56, 0x25, 0xbe, - 0x96, 0x23, 0xaf, 0xe5, 0x9e, 0xdb, 0xc2, 0xa8, 0x0d, 0x32, 0x6a, 0x92, 0x18, 0xfe, 0xe0, 0x35, - 0x48, 0xf8, 0x86, 0x84, 0x33, 0x10, 0xbd, 0x4f, 0x0e, 0x45, 0x84, 0x41, 0xff, 0xc4, 0x7d, 0xd0, - 0xce, 0x48, 0x73, 0xb5, 0x92, 0xf8, 0x8f, 0xeb, 0x91, 0x39, 0x74, 0xfd, 0x1f, 0xa1, 0xcf, 0x6a, - 0xe8, 0x3b, 0x08, 0x46, 0x01, 0xdf, 0x56, 0x74, 0x65, 0x97, 0xec, 0x13, 0xdd, 0xc9, 0x51, 0xf9, - 0x8e, 0xad, 0x6c, 0x16, 0xb3, 0x9e, 0x42, 0x36, 0xe8, 0x1b, 0x64, 0xa1, 0x6b, 0x7e, 0x73, 0x25, - 0xc7, 0x14, 0x62, 0x30, 0xe1, 0x53, 0x27, 0x98, 0x83, 0xee, 0xf5, 0x9b, 0x5b, 0x39, 0x57, 0xd8, - 0xc5, 0xe1, 0x63, 0xda, 0xd2, 0x44, 0x0b, 0xa0, 0x0f, 0x3a, 0xd8, 0x60, 0xed, 0x55, 0x70, 0x67, - 0x36, 0x13, 0x2d, 0xe5, 0x44, 0xd7, 0x2e, 0x3c, 0x73, 0x0b, 0x22, 0x54, 0x25, 0xa9, 0x5b, 0x50, - 0x2c, 0x4c, 0x52, 0xd7, 0xc2, 0x4f, 0x90, 0x01, 0x74, 0x08, 0xff, 0x3f, 0x3a, 0x53, 0x98, 0x5d, - 0x8d, 0xc5, 0x51, 0x26, 0x22, 0x22, 0x80, 0x3f, 0x8e, 0x09, 0x83, 0xe3, 0x59, 0x38, 0x7c, 0x1d, - 0xe2, 0xb6, 0xa2, 0xb3, 0xf8, 0x55, 0x6c, 0x1d, 0x97, 0xbf, 0xa8, 0xa1, 0xf6, 0x95, 0xad, 0x85, - 0xad, 0x15, 0x57, 0x25, 0x93, 0x56, 0x42, 0xe2, 0x5f, 0xa4, 0xc8, 0xcd, 0x05, 0xa9, 0xd3, 0x56, - 0x74, 0x86, 0xbb, 0x44, 0xc3, 0x8f, 0x1d, 0xa5, 0xaa, 0x39, 0xf2, 0x8e, 0xcd, 0x49, 0xf0, 0xa5, - 0x7b, 0xe9, 0x8b, 0x1a, 0x8a, 0xbe, 0xb7, 0x63, 0xfb, 0x09, 0xd0, 0xdf, 0x52, 0x8c, 0xbc, 0xe7, - 0x4c, 0x49, 0x49, 0x81, 0x75, 0xd3, 0x66, 0x64, 0x66, 0x20, 0xe5, 0x23, 0x63, 0x98, 0x8e, 0x58, - 0xd0, 0x0d, 0x36, 0xeb, 0x43, 0x24, 0x75, 0x7b, 0x88, 0x1b, 0xa6, 0x83, 0x6f, 0x02, 0x76, 0xf1, - 0xf6, 0x8d, 0xaa, 0xee, 0x50, 0x54, 0xba, 0x81, 0x44, 0x87, 0xbb, 0x4a, 0x59, 0x6f, 0x39, 0x51, - 0xab, 0x14, 0xf3, 0xd9, 0xa2, 0x8c, 0xc0, 0xb9, 0x4d, 0x51, 0x36, 0x4c, 0xc7, 0xc6, 0x8b, 0x70, - 0xa1, 0xa2, 0xda, 0xcc, 0xe8, 0x9a, 0x16, 0x21, 0xfb, 0xa6, 0x23, 0x2b, 0x8e, 0xa3, 0x94, 0xf7, - 0xa8, 0x3a, 0xd8, 0xcc, 0x7d, 0x70, 0xad, 0xee, 0x79, 0x01, 0xb8, 0xc9, 0xe1, 0xe6, 0xeb, 0x60, - 0xf8, 0x36, 0xf4, 0x72, 0xbf, 0x53, 0x33, 0x76, 0x55, 0x5d, 0x76, 0xd4, 0x7d, 0x62, 0x54, 0x1d, - 0x66, 0x1c, 0xda, 0x99, 0x40, 0x22, 0xc5, 0xf1, 0xa3, 0x1a, 0x8a, 0x41, 0xa4, 0x38, 0xee, 0x32, - 0xd7, 0x31, 0x12, 0xcb, 0x56, 0x86, 0x91, 0xc4, 0x3d, 0xd6, 0x35, 0x8a, 0x78, 0x87, 0xe3, 0xd5, - 0x2d, 0xb2, 0xd8, 0x17, 0x3b, 0x4f, 0xb2, 0xc8, 0x6c, 0x4a, 0x9f, 0xd2, 0x22, 0xcf, 0xf3, 0x9d, - 0xf3, 0xef, 0xb4, 0x0b, 0x8b, 0x1c, 0xa0, 0xf1, 0xab, 0x62, 0x91, 0x85, 0x29, 0x24, 0x1a, 0x9d, - 0xaa, 0x13, 0x4c, 0x61, 0x60, 0x80, 0xa3, 0x7c, 0xc1, 0xfd, 0x7a, 0x98, 0x42, 0xa2, 0xb9, 0xa6, - 0xd0, 0x1d, 0xd2, 0x53, 0x99, 0xc2, 0xca, 0x67, 0x35, 0xf4, 0x3b, 0x3f, 0x43, 0x43, 0xd8, 0x68, - 0xce, 0x88, 0x76, 0x2a, 0x73, 0xc6, 0xad, 0x55, 0xfe, 0x2f, 0x22, 0x30, 0x14, 0xf0, 0x82, 0xd7, - 0x89, 0xa3, 0x98, 0xe6, 0x1d, 0x4b, 0xad, 0x10, 0x9d, 0x67, 0x08, 0x0e, 0x58, 0xea, 0x44, 0x31, - 0x4d, 0x79, 0x5b, 0x29, 0xdf, 0x27, 0x7a, 0x45, 0x36, 0x74, 0x47, 0x31, 0x65, 0x5d, 0xb1, 0x85, - 0x53, 0xf6, 0x7a, 0xa8, 0x1a, 0x84, 0x90, 0x2d, 0x71, 0x02, 0x1b, 0x14, 0x7f, 0x5d, 0xb1, 0x45, - 0x06, 0xa8, 0x5f, 0x0f, 0x6b, 0x6c, 0xda, 0xaf, 0xad, 0xe8, 0x4c, 0xeb, 0x9f, 0xb1, 0xdf, 0x2d, - 0x6e, 0x52, 0xc3, 0xfb, 0xdd, 0x52, 0x74, 0x1a, 0x21, 0xba, 0x1d, 0xfa, 0x22, 0xc4, 0x10, 0xd9, - 0xfd, 0x51, 0x1a, 0x5e, 0x39, 0x5d, 0x67, 0xf8, 0xaf, 0xd7, 0x83, 0xc3, 0x8a, 0xa5, 0x36, 0x04, - 0x87, 0x6f, 0x7f, 0x51, 0x43, 0x5d, 0x6c, 0x6c, 0x57, 0x6d, 0x45, 0x77, 0x57, 0xf2, 0xb4, 0x35, - 0x29, 0xd5, 0xbf, 0x4a, 0x3d, 0xde, 0x9f, 0x57, 0x49, 0xd9, 0xd0, 0x8d, 0xfd, 0x43, 0xa9, 0x97, - 0x7f, 0xd2, 0x15, 0xfb, 0xea, 0x8e, 0x46, 0xde, 0xdb, 0xb5, 0x8c, 0xaa, 0xe9, 0x85, 0x97, 0x8b, - 0xac, 0x9b, 0x75, 0x1e, 0xa1, 0xf5, 0xec, 0x7b, 0xba, 0x26, 0x6b, 0xea, 0x0e, 0xb5, 0x33, 0xb1, - 0x70, 0x3b, 0x93, 0xae, 0x43, 0xae, 0xa9, 0x3b, 0x2b, 0x26, 0xde, 0x84, 0x81, 0x06, 0x64, 0xcf, - 0xf4, 0xb4, 0x9f, 0x64, 0x7a, 0xfa, 0x02, 0xc4, 0x5c, 0x1b, 0x34, 0x06, 0x89, 0x8a, 0xe2, 0x28, - 0x2e, 0x23, 0x9d, 0xe1, 0x3e, 0x5d, 0x17, 0x85, 0xe1, 0x2c, 0x2c, 0x42, 0x8f, 0x87, 0xe0, 0x75, - 0x1e, 0x3f, 0xc9, 0x97, 0x4b, 0x09, 0x02, 0x6e, 0xb7, 0x43, 0x10, 0xb5, 0x0f, 0xf6, 0x59, 0x62, - 0xa3, 0xab, 0xd4, 0xed, 0xdb, 0xec, 0x22, 0x12, 0x6d, 0xc0, 0xc3, 0xbe, 0x38, 0x18, 0x42, 0x80, - 0xc2, 0x23, 0xde, 0xc4, 0xd3, 0x47, 0xbc, 0x9d, 0xba, 0x21, 0x97, 0xf7, 0x14, 0x33, 0x9b, 0x6c, - 0x91, 0x6e, 0x8a, 0x48, 0x1d, 0xba, 0xb1, 0xb0, 0xa7, 0x98, 0xf8, 0x2e, 0xe3, 0x8b, 0x63, 0xa4, - 0x18, 0xc6, 0x5c, 0x8b, 0x0c, 0x5d, 0xa8, 0x0a, 0x52, 0x3a, 0x4c, 0xe7, 0x23, 0x52, 0x67, 0xd5, - 0x26, 0x8c, 0xec, 0x55, 0x48, 0xa8, 0x4c, 0x63, 0xb8, 0x38, 0x7b, 0x42, 0x46, 0x0c, 0x1c, 0x80, - 0x49, 0xef, 0x3a, 0xa4, 0x5c, 0x05, 0x16, 0x49, 0x1b, 0xcc, 0x30, 0x7a, 0xdd, 0x70, 0xb3, 0x1e, - 0x05, 0x6f, 0x4a, 0x49, 0x01, 0x2a, 0xf2, 0x37, 0x4b, 0xd0, 0xcf, 0xc3, 0x71, 0x65, 0x77, 0xd7, - 0x22, 0xbb, 0x8a, 0x43, 0xe4, 0xaa, 0xad, 0xec, 0x92, 0x6c, 0x2f, 0x8b, 0xcc, 0x7b, 0xfc, 0x24, - 0x62, 0x23, 0x91, 0x6c, 0x45, 0xea, 0x65, 0xf0, 0xf3, 0x2e, 0xf8, 0x5d, 0x0a, 0x8d, 0xa7, 0xa0, - 0x87, 0x93, 0x11, 0xc9, 0x23, 0x5b, 0x7d, 0x9f, 0x64, 0xfb, 0xd8, 0xa6, 0x5f, 0x0f, 0x7a, 0xd3, - 0x0c, 0xe4, 0x1e, 0x83, 0xd8, 0x52, 0xdf, 0x27, 0xf8, 0xab, 0x90, 0x16, 0xf0, 0xc2, 0x1b, 0xb1, - 0xb3, 0xfd, 0x4c, 0x8a, 0xc3, 0xa1, 0x52, 0x64, 0x22, 0xe3, 0xe8, 0x8b, 0x02, 0xde, 0x47, 0x3d, - 0x75, 0x10, 0x68, 0xc1, 0x7f, 0x52, 0xdf, 0x10, 0xcf, 0xb1, 0x0d, 0xf1, 0xd6, 0x73, 0x58, 0xa4, - 0x5f, 0xb7, 0x4d, 0x12, 0x5f, 0x84, 0x0e, 0x8b, 0xec, 0xaa, 0x86, 0x9e, 0x1d, 0x60, 0xba, 0xc2, - 0x1d, 0x3b, 0xf1, 0x0d, 0xff, 0x0e, 0x74, 0x0a, 0x35, 0xc9, 0x66, 0x99, 0xec, 0xc6, 0x5b, 0x4c, - 0x88, 0x6a, 0x39, 0x55, 0x45, 0x13, 0x72, 0xdc, 0x34, 0x0c, 0xad, 0x55, 0x06, 0x5a, 0x90, 0xc5, - 0x6f, 0x02, 0x2e, 0x6b, 0x2a, 0x35, 0x5b, 0x65, 0x62, 0x39, 0xea, 0x8e, 0x5a, 0x56, 0x1c, 0x92, - 0x3d, 0xef, 0xe5, 0x98, 0xa2, 0x9e, 0xe1, 0x78, 0x4b, 0xea, 0xe1, 0x90, 0x0b, 0x75, 0x40, 0x7c, - 0xdb, 0x43, 0x37, 0x2d, 0xf5, 0x80, 0x6a, 0x2d, 0xdd, 0xe3, 0x07, 0x4f, 0xb7, 0xe0, 0x33, 0x1c, - 0x75, 0x93, 0x63, 0xbe, 0x4d, 0x0e, 0xf1, 0x22, 0x9c, 0xf3, 0xe5, 0x8b, 0xfd, 0x1c, 0x5d, 0x08, - 0xe5, 0xa8, 0xcf, 0xcb, 0x0b, 0xfb, 0x98, 0x7a, 0x1e, 0xc7, 0xc3, 0xf8, 0xb4, 0x86, 0xee, 0xc3, - 0x4d, 0x18, 0x14, 0x62, 0xcc, 0x09, 0x1d, 0xcc, 0x6d, 0x2a, 0x96, 0xb2, 0x4f, 0x1c, 0x62, 0xd9, - 0x78, 0x78, 0xa2, 0x30, 0x59, 0x98, 0x29, 0x5c, 0x2b, 0x4c, 0x8c, 0x17, 0x26, 0x26, 0x0a, 0x13, - 0xc5, 0x42, 0x71, 0xba, 0x50, 0x9c, 0x29, 0x14, 0x67, 0x0b, 0x13, 0xb3, 0x85, 0x89, 0xb9, 0xc2, - 0xc4, 0xb5, 0x42, 0x71, 0xbc, 0x50, 0x9c, 0x80, 0x17, 0xa0, 0x5f, 0xcc, 0x4a, 0xce, 0xa5, 0x47, - 0xe7, 0xc5, 0xc6, 0xf1, 0x62, 0xb1, 0x50, 0x9c, 0x2c, 0x14, 0xa7, 0xe8, 0x46, 0x1a, 0xdc, 0x3a, - 0x8e, 0x67, 0x63, 0x2f, 0x40, 0xdc, 0x35, 0xed, 0xc7, 0xf2, 0xb0, 0xa5, 0x1c, 0x24, 0xa8, 0xd5, - 0x73, 0x77, 0x61, 0x6a, 0x27, 0x92, 0x8f, 0x6b, 0xa8, 0xfb, 0xa8, 0x86, 0xda, 0x27, 0x26, 0x0b, - 0x13, 0x53, 0xfe, 0x4c, 0xed, 0x6a, 0x2c, 0xde, 0x9d, 0x49, 0xe6, 0xff, 0x5b, 0x04, 0x5e, 0x3c, - 0x85, 0x25, 0xc4, 0xd7, 0x20, 0xc9, 0x68, 0x37, 0x1c, 0x3f, 0xf4, 0xf9, 0x6d, 0x91, 0x67, 0x08, - 0xbb, 0x29, 0xe8, 0x5d, 0xd7, 0xfc, 0xdf, 0x84, 0x3e, 0x86, 0xea, 0x28, 0xd6, 0x2e, 0x71, 0xea, - 0x14, 0x22, 0x2d, 0x28, 0x60, 0x8a, 0x71, 0x87, 0x21, 0x78, 0x74, 0xbe, 0x0a, 0xfd, 0x8c, 0x8e, - 0xaa, 0xab, 0x8e, 0xaa, 0x38, 0x86, 0x25, 0xdb, 0x4c, 0x8b, 0x84, 0x73, 0xd3, 0x42, 0xc5, 0xba, - 0x69, 0x1f, 0x8f, 0x5d, 0xa3, 0xd4, 0x4b, 0xa9, 0xac, 0xb8, 0x44, 0x38, 0x18, 0xde, 0x83, 0x8b, - 0x7e, 0x26, 0x8f, 0xf5, 0x11, 0x7b, 0xba, 0x3e, 0xce, 0xd7, 0xf9, 0x6f, 0xe8, 0x29, 0xff, 0x0f, - 0x4f, 0xf6, 0x82, 0x84, 0xab, 0x77, 0x6a, 0x2f, 0x48, 0x57, 0xec, 0x10, 0x2f, 0x48, 0x57, 0x6c, - 0xd7, 0x0b, 0xa2, 0x2e, 0xcf, 0xd3, 0x7a, 0x41, 0x33, 0xd0, 0xed, 0xba, 0x75, 0xbe, 0xe9, 0x0a, - 0xd9, 0xbf, 0x8a, 0x52, 0x42, 0x00, 0x9e, 0x79, 0x4f, 0xbf, 0x6c, 0xde, 0xd3, 0x0c, 0x60, 0xa5, - 0xea, 0x18, 0xb2, 0xc8, 0xbb, 0x8a, 0x63, 0x83, 0xee, 0x86, 0xcc, 0x77, 0x86, 0xc2, 0x2c, 0x31, - 0x10, 0x71, 0x6c, 0x70, 0x17, 0x7a, 0xfc, 0x78, 0x65, 0xb5, 0x62, 0xd9, 0xc2, 0xff, 0x7a, 0x2d, - 0xf4, 0xf0, 0x95, 0xbb, 0x2e, 0x5b, 0x8e, 0xa5, 0xea, 0xbb, 0xee, 0x59, 0xa9, 0x94, 0xae, 0xd3, - 0x5d, 0xa0, 0x14, 0xf0, 0xd8, 0x31, 0xaf, 0x28, 0xc5, 0xc6, 0x5e, 0x67, 0xa5, 0xc1, 0x15, 0x7a, - 0xa3, 0x99, 0x2b, 0x94, 0x6e, 0xc0, 0x3b, 0xbd, 0x07, 0x94, 0x69, 0xc0, 0x3c, 0xe6, 0x01, 0x4d, - 0x41, 0x8f, 0xbe, 0x63, 0xd7, 0x13, 0x37, 0xaa, 0xa1, 0xdb, 0xc2, 0xdf, 0xf3, 0x61, 0xe9, 0x3b, - 0xb6, 0x9b, 0xa7, 0xa1, 0x00, 0x61, 0x7e, 0x13, 0xfe, 0x79, 0xf8, 0x4d, 0xbd, 0xcf, 0xee, 0x37, - 0x09, 0xb3, 0xf2, 0x6b, 0xec, 0x37, 0xf5, 0xb5, 0xf6, 0x9b, 0xfa, 0x7f, 0x91, 0x7e, 0xd3, 0xb9, - 0xe7, 0xf3, 0x9b, 0x06, 0x7e, 0xf6, 0x7e, 0x53, 0xf6, 0x17, 0xe3, 0x37, 0x59, 0x9f, 0xd6, 0x90, - 0x0e, 0x2b, 0x2d, 0xfd, 0xa6, 0x2b, 0xc7, 0xfd, 0x26, 0xe1, 0x05, 0x15, 0x98, 0xa7, 0x52, 0x98, - 0x98, 0x2e, 0x4c, 0xcc, 0x70, 0x1f, 0xaa, 0x85, 0xeb, 0xe4, 0x7a, 0x57, 0xcf, 0xeb, 0x3a, 0x05, - 0x8e, 0xb0, 0xbf, 0xdd, 0x01, 0xbd, 0x21, 0xcb, 0x13, 0x2f, 0x41, 0xd2, 0x36, 0x95, 0x32, 0x91, - 0x2d, 0xc2, 0xce, 0x8c, 0xdd, 0xf3, 0xcc, 0x2f, 0x6a, 0x28, 0xa6, 0x1b, 0x3a, 0x71, 0x37, 0x87, - 0xb4, 0x95, 0x94, 0xd8, 0x07, 0xa9, 0xdd, 0xd9, 0x53, 0xcb, 0xf7, 0xa5, 0x6e, 0x86, 0x26, 0x71, - 0x2c, 0x7c, 0x15, 0xd2, 0xde, 0x01, 0x9a, 0xb0, 0xc7, 0x11, 0x9f, 0xda, 0xa6, 0xdc, 0x46, 0x61, - 0x89, 0xc7, 0x20, 0xe3, 0x81, 0xbb, 0x1d, 0x47, 0x7d, 0xf0, 0x1e, 0x31, 0x97, 0xfe, 0x08, 0xa4, - 0x6c, 0x53, 0x53, 0x1d, 0xd9, 0xd0, 0xe5, 0xb2, 0x66, 0xe8, 0xfc, 0x94, 0xda, 0x4d, 0x13, 0x77, - 0xb3, 0xb6, 0x0d, 0x7d, 0x81, 0xb6, 0xe0, 0x97, 0x00, 0x88, 0x5e, 0xb6, 0x0e, 0x99, 0x0d, 0x0b, - 0xa4, 0x93, 0x7d, 0xdf, 0xf1, 0x1c, 0x64, 0xaa, 0xba, 0xfa, 0x9e, 0x6c, 0x12, 0x6b, 0x5f, 0xb5, - 0x6d, 0x66, 0x0f, 0x79, 0xf2, 0x98, 0xae, 0xf6, 0x76, 0x88, 0xce, 0xce, 0xce, 0x72, 0x5e, 0x28, - 0xd8, 0x66, 0x1d, 0x0a, 0xbf, 0x0a, 0xdd, 0xfe, 0xc3, 0x42, 0xb6, 0xfb, 0xba, 0x3d, 0x24, 0xec, - 0xfa, 0x01, 0x21, 0x7e, 0x0d, 0x92, 0xc1, 0x2d, 0x2a, 0xee, 0x1b, 0xa2, 0x38, 0x35, 0x14, 0x02, - 0x99, 0x16, 0x65, 0x28, 0xaa, 0x73, 0x28, 0xdb, 0xce, 0xa1, 0x46, 0xc4, 0x26, 0x9b, 0x3a, 0xaa, - 0xa1, 0x0e, 0x88, 0x51, 0x16, 0xc4, 0x4e, 0x22, 0xa0, 0xb6, 0x28, 0x10, 0xbe, 0x02, 0x29, 0x47, - 0x25, 0x74, 0x7b, 0x72, 0xbb, 0x00, 0x5f, 0x17, 0x49, 0xd1, 0x26, 0xfa, 0xb8, 0x0a, 0x1d, 0xba, - 0x21, 0x7f, 0xdd, 0xb0, 0xd9, 0x56, 0xd9, 0xbc, 0xc4, 0xa5, 0x5d, 0x37, 0xbe, 0x62, 0xd8, 0xf8, - 0x2a, 0xc0, 0xd7, 0x0d, 0xdb, 0xa5, 0x9b, 0x3c, 0xb6, 0x9d, 0x53, 0xef, 0xa4, 0xeb, 0xeb, 0x86, - 0x2d, 0xa8, 0xdf, 0x80, 0x5e, 0xa5, 0xa2, 0x98, 0x8e, 0x7a, 0x40, 0x64, 0x1f, 0x5e, 0x2a, 0x14, - 0xaf, 0xc7, 0x05, 0xfd, 0x8a, 0x8b, 0x7f, 0xfd, 0xc6, 0xa7, 0x35, 0x74, 0x1d, 0xe6, 0xe0, 0x92, - 0xbb, 0xb0, 0x36, 0xd6, 0xef, 0xcc, 0x6f, 0xe6, 0xb8, 0xba, 0xe6, 0x3c, 0x7d, 0x1d, 0x98, 0x28, - 0x14, 0x0b, 0x93, 0x85, 0xa9, 0xc2, 0x74, 0x61, 0xa6, 0x30, 0x5b, 0x98, 0x73, 0x57, 0x5b, 0xe9, - 0x2a, 0xf4, 0xd4, 0xbb, 0x75, 0xa3, 0x85, 0xec, 0x27, 0x35, 0xd4, 0xfd, 0x3d, 0xee, 0xc3, 0x26, - 0x8e, 0x6a, 0x28, 0x3e, 0x51, 0x2c, 0xb8, 0x41, 0x43, 0x22, 0xd3, 0x9d, 0xff, 0xa7, 0xed, 0x70, - 0xa1, 0x85, 0x8d, 0xc4, 0xdf, 0xac, 0x6f, 0x51, 0xbc, 0x48, 0xeb, 0x8d, 0xa7, 0x35, 0xb3, 0xbf, - 0x76, 0xfb, 0x12, 0x86, 0x18, 0x2b, 0xf1, 0xe1, 0x16, 0x92, 0xfd, 0x8d, 0xbf, 0x72, 0xdc, 0x4d, - 0x88, 0x3e, 0x9d, 0x9b, 0xd0, 0xe8, 0x1c, 0x3c, 0x8f, 0xa9, 0x7e, 0x8c, 0x3e, 0xab, 0xa1, 0x7f, - 0x87, 0x20, 0x05, 0xb1, 0x77, 0x0d, 0x9d, 0x95, 0x07, 0x52, 0x2e, 0x61, 0x12, 0x32, 0xdc, 0x9c, - 0xb0, 0x2a, 0x85, 0xdc, 0x6d, 0xa3, 0x42, 0x06, 0x2f, 0xc3, 0xa5, 0x06, 0xce, 0x47, 0x03, 0xe6, - 0x10, 0xa6, 0x20, 0xed, 0x9e, 0xf9, 0xe7, 0xb8, 0xa6, 0x0e, 0xbe, 0x00, 0x97, 0x8f, 0xe1, 0x04, - 0x6d, 0x1f, 0xcc, 0x01, 0xf6, 0xb0, 0x24, 0x62, 0x31, 0x52, 0x95, 0xc1, 0x3c, 0xe4, 0x9a, 0x22, - 0xba, 0xfd, 0x85, 0x25, 0xf2, 0xdb, 0xf3, 0x8f, 0x62, 0x70, 0x21, 0x58, 0x80, 0x64, 0x7a, 0x35, - 0x21, 0xbf, 0xca, 0x65, 0x47, 0xc3, 0xc7, 0xca, 0x8e, 0x4e, 0x13, 0x30, 0x3c, 0x75, 0x81, 0x51, - 0x11, 0x12, 0x65, 0x5b, 0x95, 0x0f, 0x88, 0x45, 0x2d, 0xb8, 0x28, 0x20, 0xe8, 0xf9, 0xd2, 0x9f, - 0x71, 0xb4, 0x22, 0xd9, 0xa2, 0x04, 0x65, 0x5b, 0xbd, 0xc7, 0x81, 0xf0, 0x0c, 0xf0, 0x92, 0x35, - 0xd9, 0xcb, 0x10, 0x88, 0x30, 0x2b, 0x45, 0x1d, 0xda, 0x7a, 0xbc, 0x24, 0x25, 0x19, 0xd8, 0x82, - 0x48, 0x0e, 0xe0, 0x2d, 0xf7, 0x5c, 0x92, 0xe1, 0x79, 0x3c, 0xc7, 0x4f, 0xe2, 0x39, 0xee, 0x86, - 0xda, 0xe2, 0x74, 0x92, 0x12, 0xdc, 0x74, 0x07, 0x70, 0x05, 0xba, 0x34, 0x63, 0x57, 0xd6, 0xc8, - 0x01, 0xd1, 0xdc, 0x9d, 0xe1, 0xcb, 0x20, 0x1b, 0x71, 0xcd, 0xd8, 0x5d, 0xa3, 0xed, 0xf9, 0x3f, - 0x05, 0x51, 0x77, 0x1a, 0xd0, 0x18, 0xa6, 0x27, 0xe3, 0xf5, 0x50, 0x45, 0xd4, 0xec, 0xa2, 0xc6, - 0xaa, 0x3b, 0x37, 0x56, 0xe1, 0x58, 0xf8, 0x6b, 0xac, 0xca, 0x57, 0x31, 0x4d, 0xd9, 0xe1, 0xa7, - 0x41, 0x4c, 0x7a, 0xcd, 0x0e, 0xfd, 0x5a, 0x1f, 0x22, 0x89, 0x3a, 0xdf, 0xfa, 0x47, 0xfc, 0x10, - 0xc1, 0x79, 0xb3, 0x6a, 0x71, 0xd5, 0x53, 0xcb, 0x44, 0x36, 0x7c, 0xc5, 0x56, 0x4c, 0xde, 0x89, - 0xe2, 0xe2, 0xc9, 0x3d, 0x9d, 0x5c, 0xb4, 0xb5, 0xdc, 0x26, 0x0d, 0xd0, 0x8e, 0x42, 0x9a, 0xf1, - 0x9b, 0x90, 0x2a, 0x57, 0x6d, 0xc7, 0xd8, 0x77, 0xcb, 0xb1, 0x98, 0x84, 0x5b, 0x94, 0x80, 0x72, - 0x68, 0xd1, 0x21, 0xde, 0x82, 0xc4, 0x9e, 0xe9, 0x95, 0x72, 0xb1, 0x0d, 0xb8, 0x99, 0x3b, 0xde, - 0x62, 0x09, 0x2f, 0xb7, 0x49, 0xb0, 0xe7, 0x7d, 0xc1, 0x7f, 0x12, 0x85, 0x8b, 0x4a, 0xe5, 0x40, - 0xd1, 0xcb, 0xa4, 0x22, 0x7b, 0x7f, 0x98, 0x9e, 0xaf, 0x29, 0x8e, 0x5e, 0xdf, 0x6e, 0x72, 0xf4, - 0x1a, 0x36, 0xf9, 0xa3, 0xf3, 0x82, 0x8c, 0xfb, 0x6f, 0xdd, 0x73, 0xe5, 0xbb, 0xd3, 0x1f, 0x46, - 0x5c, 0xcd, 0x0e, 0xdf, 0xa1, 0xde, 0x0a, 0xdd, 0xa1, 0xc6, 0x3e, 0xfa, 0x18, 0x5d, 0xc1, 0xaf, - 0xfd, 0xa8, 0x86, 0xdc, 0x12, 0xc9, 0x5c, 0x59, 0x53, 0x6c, 0x3b, 0x67, 0x9b, 0xa4, 0x4c, 0x1d, - 0xef, 0x9c, 0xc7, 0x75, 0x8e, 0xae, 0x64, 0x8a, 0x93, 0xfd, 0xe8, 0x63, 0xd4, 0x87, 0xf1, 0x51, - 0x0d, 0xa5, 0x3c, 0x26, 0xd8, 0xf1, 0x67, 0xeb, 0x2d, 0xec, 0xc6, 0x47, 0x1f, 0xa3, 0xeb, 0x83, - 0x73, 0x3f, 0xaa, 0xa1, 0xa9, 0x13, 0xbb, 0x62, 0xdb, 0x41, 0x6e, 0xc7, 0xb0, 0x72, 0xbb, 0xea, - 0x01, 0xd1, 0xdd, 0x7d, 0xf3, 0xfc, 0x47, 0x1f, 0xa3, 0xfe, 0xc1, 0xde, 0xa3, 0x1a, 0x4a, 0xd7, - 0x7b, 0x0e, 0xdd, 0xef, 0x06, 0x95, 0xa6, 0xe2, 0x1a, 0xbc, 0x0d, 0x97, 0x4f, 0x10, 0xe6, 0x53, - 0x6d, 0x58, 0xff, 0x2a, 0xf2, 0x69, 0x0d, 0xbd, 0x0e, 0x39, 0x38, 0xef, 0x0e, 0x4b, 0x54, 0xbd, - 0xfb, 0x62, 0x8b, 0xe8, 0x44, 0xa1, 0x08, 0x03, 0x80, 0xc5, 0x1d, 0x00, 0x7f, 0x13, 0x9a, 0xfe, - 0xac, 0x86, 0xfe, 0x2b, 0x82, 0xac, 0x28, 0x87, 0xcf, 0x34, 0x2e, 0x72, 0xf8, 0x7b, 0x08, 0x62, - 0x54, 0x05, 0x46, 0xfe, 0x2e, 0x82, 0xbf, 0x85, 0x20, 0xd7, 0xb8, 0xa6, 0x8b, 0xa9, 0x75, 0xe2, - 0xcc, 0x9b, 0x66, 0x4e, 0xac, 0x4b, 0x78, 0xad, 0xc5, 0xb2, 0x2c, 0x76, 0xd3, 0xe5, 0xe6, 0x06, - 0x2d, 0x30, 0x18, 0x50, 0xff, 0x62, 0x62, 0x79, 0x73, 0xc9, 0x6b, 0xcb, 0x36, 0xae, 0xac, 0x62, - 0xc7, 0x02, 0xfb, 0x8d, 0x3b, 0xef, 0xea, 0xf7, 0x75, 0xe3, 0x81, 0x0e, 0xb3, 0xd0, 0xeb, 0x8a, - 0xd0, 0x37, 0xa6, 0xd5, 0x5c, 0x6b, 0xf5, 0xcf, 0xc4, 0x4a, 0x2f, 0x43, 0x52, 0xd4, 0xe2, 0x0b, - 0x5f, 0xaf, 0x4f, 0x84, 0x3f, 0x11, 0xea, 0xe7, 0x51, 0xdf, 0x70, 0x62, 0xbc, 0x70, 0xcd, 0x2b, - 0xc8, 0xe7, 0x91, 0x50, 0x2c, 0xd3, 0xbe, 0x1a, 0x8b, 0xc7, 0x33, 0x5d, 0xf9, 0xdf, 0x47, 0x30, - 0x78, 0x7c, 0x9d, 0x78, 0x05, 0xf1, 0xbf, 0x0b, 0xe9, 0xa0, 0x0c, 0x5d, 0x07, 0xf0, 0xca, 0x53, - 0xac, 0x38, 0x5f, 0x88, 0xed, 0xaf, 0x88, 0x49, 0x05, 0x2c, 0xac, 0x9d, 0xff, 0x0f, 0xf5, 0xd3, - 0xf7, 0x05, 0xaa, 0xce, 0x21, 0x25, 0xf2, 0x93, 0x90, 0x56, 0xde, 0xf7, 0x66, 0xc3, 0x97, 0xb9, - 0xec, 0xf2, 0xe7, 0x0a, 0x93, 0xca, 0xfb, 0xc2, 0xbe, 0x79, 0x05, 0xe1, 0x75, 0x24, 0xdf, 0xae, - 0x1e, 0x6d, 0x2c, 0x08, 0x6f, 0x93, 0xb0, 0x87, 0x5a, 0xdf, 0xd3, 0x43, 0x2b, 0xbb, 0x63, 0x27, - 0x57, 0x76, 0x07, 0x2a, 0xb5, 0xdb, 0x5b, 0x56, 0x6a, 0xe3, 0x02, 0x60, 0xcb, 0x30, 0x1c, 0x59, - 0xe4, 0x0a, 0x78, 0x91, 0x25, 0xdb, 0x62, 0xe2, 0x52, 0x86, 0xb6, 0x2c, 0xb0, 0x86, 0x25, 0xf6, - 0x3d, 0xb4, 0xae, 0x3b, 0xe4, 0x48, 0xfe, 0x9f, 0x20, 0x78, 0xc9, 0x2f, 0xd0, 0xa6, 0xd5, 0xda, - 0x0d, 0x85, 0xc7, 0xe8, 0x29, 0x0b, 0x8f, 0x23, 0xa7, 0x29, 0x3c, 0x8e, 0x86, 0x17, 0x1e, 0x3f, - 0x44, 0xf0, 0x82, 0x9f, 0xc7, 0x0d, 0x93, 0xe8, 0x64, 0x9b, 0x1a, 0x0f, 0x62, 0x99, 0x96, 0xca, - 0x6f, 0xfe, 0xe0, 0x69, 0x88, 0xb3, 0x2b, 0x4c, 0x65, 0x43, 0x13, 0xdc, 0x9d, 0x67, 0x81, 0xf9, - 0xc1, 0xfe, 0x8e, 0xcb, 0x65, 0xdc, 0xea, 0x90, 0xd8, 0x07, 0xc9, 0x03, 0xc5, 0xaf, 0x40, 0xc2, - 0x22, 0xa6, 0xa6, 0x96, 0x99, 0xa7, 0xcb, 0xf8, 0x6c, 0x77, 0x03, 0x54, 0x5f, 0x43, 0xfe, 0x7f, - 0x23, 0xb8, 0xe4, 0x67, 0xe2, 0x78, 0xd9, 0x87, 0x0a, 0x71, 0x9b, 0x68, 0xac, 0xd4, 0x55, 0x2c, - 0x80, 0xb7, 0x5a, 0xed, 0x6c, 0xe1, 0x54, 0x46, 0xb7, 0x04, 0x09, 0xbe, 0xcf, 0x24, 0xea, 0x66, - 0xbd, 0x4d, 0xf2, 0xc8, 0xe3, 0x49, 0x48, 0x7a, 0x69, 0x54, 0xc3, 0xd0, 0x5c, 0xe7, 0x93, 0x4e, - 0x47, 0xdd, 0xcf, 0x89, 0x49, 0xdd, 0x76, 0x3d, 0xc0, 0xb2, 0x07, 0x5f, 0x87, 0x64, 0x80, 0xf8, - 0xd3, 0xd8, 0xdd, 0xfc, 0x5f, 0x22, 0x78, 0xd5, 0xcf, 0xf8, 0x66, 0xb8, 0x83, 0xc0, 0x04, 0xf1, - 0x3a, 0x74, 0x8a, 0xf3, 0x00, 0x31, 0x11, 0x2f, 0x7c, 0x51, 0x43, 0xed, 0xdb, 0x9a, 0x51, 0xbe, - 0xef, 0x4f, 0x91, 0xf0, 0x2f, 0x52, 0x6c, 0x47, 0xd5, 0x88, 0xe4, 0x62, 0xe0, 0x37, 0x00, 0xa8, - 0xc2, 0xc8, 0x6c, 0xfa, 0x85, 0xda, 0x5c, 0xfa, 0xa2, 0x86, 0xd0, 0x38, 0xc5, 0xeb, 0x1d, 0xe9, - 0x29, 0xa5, 0xc7, 0x0b, 0x13, 0xe3, 0xe3, 0x57, 0x27, 0xc6, 0xc5, 0x7f, 0x52, 0x17, 0x45, 0x58, - 0xa3, 0xf0, 0xd4, 0x13, 0xdd, 0x56, 0xf4, 0xca, 0x03, 0xb5, 0xe2, 0xec, 0x09, 0x12, 0xd1, 0x63, - 0x09, 0xff, 0x6c, 0xb7, 0x94, 0xf2, 0xa0, 0x18, 0x5e, 0xfe, 0x5f, 0x74, 0x78, 0xd9, 0x2a, 0xbe, - 0x0c, 0x82, 0x31, 0xc3, 0x18, 0x24, 0xf8, 0x31, 0x90, 0x3f, 0x56, 0x08, 0x2a, 0x7f, 0x44, 0x02, - 0x0e, 0xc2, 0xec, 0xc9, 0x38, 0x24, 0x2a, 0xc4, 0x2e, 0x5b, 0xaa, 0xe9, 0x69, 0x55, 0x23, 0x42, - 0x4c, 0xf2, 0x83, 0xe0, 0x6b, 0x90, 0xf1, 0x75, 0xc1, 0x02, 0x2b, 0xc1, 0x7a, 0x63, 0x3f, 0xe9, - 0x7a, 0x3f, 0x0c, 0x0c, 0x8f, 0x43, 0x4f, 0x85, 0x4e, 0x80, 0x71, 0x28, 0x1b, 0xba, 0x5c, 0x21, - 0x1a, 0x71, 0xbc, 0x9c, 0x0f, 0x75, 0x53, 0xa4, 0xb4, 0x68, 0xde, 0xd0, 0x17, 0x59, 0x63, 0xc3, - 0xda, 0xa4, 0x76, 0x27, 0x2a, 0x40, 0x9b, 0xae, 0xcd, 0x8e, 0x63, 0x40, 0x74, 0x6d, 0xe2, 0x79, - 0xc0, 0x74, 0xcd, 0x1b, 0xd6, 0x3e, 0xdd, 0x77, 0x5c, 0xeb, 0xc0, 0xbd, 0x7f, 0xec, 0x3f, 0x2a, - 0x12, 0x16, 0xa2, 0xc7, 0x07, 0x2d, 0x0c, 0xc5, 0x02, 0xf4, 0xd2, 0xd5, 0x48, 0xca, 0x54, 0x0e, - 0xb2, 0x43, 0xf6, 0x4d, 0x4d, 0x71, 0xdc, 0x13, 0x97, 0x30, 0x1a, 0xb8, 0x0e, 0x7e, 0x47, 0x40, - 0xe3, 0x11, 0xe8, 0xd8, 0x31, 0xb4, 0x0a, 0xb1, 0x84, 0xcb, 0x1f, 0x86, 0x27, 0x20, 0xf0, 0x20, - 0xf0, 0xbc, 0x1c, 0xf3, 0x3f, 0x5d, 0x19, 0xf1, 0x4f, 0x78, 0x12, 0x52, 0x15, 0x52, 0xa9, 0x9a, - 0x44, 0xd8, 0x57, 0x7e, 0xe4, 0x12, 0xe7, 0xa7, 0x7b, 0xd4, 0x9e, 0x38, 0x56, 0x95, 0x48, 0x49, - 0x0e, 0xc3, 0x4d, 0x6d, 0x85, 0x65, 0xdc, 0x0e, 0xf5, 0x32, 0x97, 0xbe, 0xa3, 0x94, 0xf7, 0xc4, - 0x01, 0x0b, 0xa7, 0xdc, 0x4d, 0xdb, 0xa8, 0xe8, 0x69, 0x0b, 0xce, 0x43, 0x97, 0xc8, 0xac, 0x91, - 0x0a, 0xcb, 0x14, 0xb9, 0x60, 0xf5, 0xcf, 0xf8, 0x15, 0x88, 0xd1, 0x65, 0x2d, 0x12, 0x42, 0x61, - 0x43, 0x61, 0xed, 0xf8, 0x75, 0x48, 0x2b, 0x9a, 0x66, 0x3c, 0x90, 0x8d, 0x03, 0x62, 0x51, 0x1b, - 0x62, 0x8b, 0x63, 0x91, 0xe3, 0x28, 0x11, 0x29, 0xc5, 0x40, 0x37, 0x5c, 0xc8, 0x3a, 0xf2, 0x7e, - 0xd5, 0x51, 0xf8, 0x19, 0x47, 0xe6, 0x04, 0xe4, 0xdb, 0x2e, 0x64, 0x7e, 0x1d, 0xce, 0xf9, 0x97, - 0x0b, 0xf7, 0x54, 0xd8, 0x52, 0x99, 0x82, 0xd8, 0xa1, 0xb2, 0xef, 0x9a, 0xe0, 0x9c, 0xb8, 0x19, - 0xc3, 0xbe, 0x79, 0xf4, 0x72, 0xbe, 0x7b, 0x31, 0xac, 0x25, 0xff, 0xed, 0x14, 0xf4, 0xfb, 0x1d, - 0x03, 0x46, 0xd5, 0xad, 0xc0, 0x0d, 0x0d, 0xc3, 0xd2, 0xbe, 0x33, 0xc8, 0x1c, 0x1a, 0x3e, 0x16, - 0x8c, 0x9d, 0x62, 0x05, 0x46, 0x82, 0x2b, 0xb0, 0x08, 0xfd, 0x6e, 0xcd, 0xae, 0xdb, 0x23, 0x73, - 0x99, 0xf9, 0x3d, 0x11, 0xa9, 0x57, 0x34, 0xfa, 0x39, 0xc4, 0x5f, 0x3d, 0x16, 0xf2, 0xf1, 0x78, - 0xa8, 0xf8, 0xf4, 0x96, 0xff, 0x78, 0xc4, 0xf7, 0x7e, 0xab, 0x80, 0x8f, 0xc7, 0x4e, 0x6f, 0x9c, - 0xd8, 0x4f, 0x0b, 0x43, 0xdd, 0x2a, 0xd0, 0xbb, 0x73, 0x2c, 0xd0, 0xcb, 0xb0, 0x0e, 0xaf, 0x9c, - 0xd8, 0x61, 0x5d, 0x17, 0x8e, 0xc7, 0x7f, 0x52, 0x30, 0xfe, 0xeb, 0x61, 0x24, 0xc7, 0x4e, 0x24, - 0xd9, 0x32, 0xfc, 0x5b, 0x84, 0x94, 0x45, 0xca, 0x9a, 0xa2, 0xee, 0xfb, 0x4f, 0x37, 0xbb, 0x4a, - 0x97, 0x8e, 0x6a, 0x28, 0x03, 0x1d, 0xdc, 0xe2, 0x41, 0x87, 0x44, 0x1c, 0x45, 0xd5, 0xdd, 0x1d, - 0x20, 0x23, 0x25, 0x05, 0x92, 0x30, 0x42, 0xd7, 0xe1, 0x1c, 0x5f, 0x0d, 0x22, 0xeb, 0x44, 0xde, - 0x33, 0x15, 0x9d, 0x65, 0x40, 0x92, 0xbe, 0x94, 0x75, 0x1f, 0x83, 0xe1, 0xe9, 0xb8, 0x25, 0x17, - 0x02, 0x7f, 0x3b, 0x0a, 0x17, 0x3c, 0xc7, 0xdb, 0xdb, 0x97, 0xeb, 0xf1, 0x27, 0xaf, 0x8f, 0x5e, - 0x39, 0xd1, 0x1b, 0xf6, 0x94, 0xde, 0x0b, 0x3f, 0xdd, 0x04, 0x69, 0x43, 0xf4, 0xf9, 0x8d, 0xc8, - 0x59, 0xe4, 0xc9, 0x23, 0xcf, 0xf3, 0x4a, 0x33, 0x49, 0xe1, 0x39, 0xc0, 0x81, 0x65, 0xec, 0x3f, - 0xc7, 0x77, 0x7d, 0xf2, 0x7f, 0x1c, 0x41, 0x52, 0xc6, 0xf6, 0xaf, 0x4a, 0x1a, 0x14, 0xae, 0xc1, - 0x50, 0xeb, 0x09, 0x78, 0xaa, 0x88, 0xf5, 0xff, 0x44, 0x3f, 0xad, 0xa1, 0x9b, 0x70, 0x05, 0xb2, - 0xae, 0x38, 0x58, 0x4f, 0xfe, 0xa8, 0x34, 0x3d, 0x57, 0x70, 0x53, 0xf5, 0x2c, 0xe9, 0xde, 0x2c, - 0x78, 0x9d, 0xfd, 0xac, 0x86, 0xfe, 0x65, 0x14, 0x2e, 0x8a, 0xe0, 0xb5, 0x2f, 0x6c, 0x84, 0x30, - 0x48, 0x75, 0x9e, 0xae, 0xe7, 0x90, 0xe0, 0xf6, 0x22, 0x24, 0x16, 0xeb, 0x16, 0x6f, 0x30, 0x19, - 0xb0, 0x91, 0x90, 0x87, 0x4e, 0x91, 0x53, 0x1e, 0x1c, 0x68, 0x62, 0x0b, 0xe1, 0xef, 0x23, 0x68, - 0x67, 0xfc, 0xff, 0x12, 0xc6, 0xc7, 0x2f, 0x41, 0x4a, 0xe2, 0x8b, 0x5a, 0xa4, 0x9f, 0x33, 0x88, - 0xca, 0x20, 0x68, 0x1d, 0x60, 0x0a, 0xce, 0xcd, 0xd3, 0x55, 0xec, 0x1e, 0x97, 0x78, 0xeb, 0x38, - 0x83, 0x06, 0xb3, 0xcd, 0xac, 0x00, 0xcc, 0x85, 0xc6, 0xde, 0x19, 0xb4, 0x7a, 0xb9, 0xe5, 0xda, - 0xcf, 0xc4, 0x4a, 0xaf, 0x36, 0x06, 0xdf, 0xe7, 0x3e, 0xa9, 0x21, 0x78, 0x5c, 0x43, 0xb1, 0xa3, - 0x1a, 0x02, 0x7e, 0x24, 0x33, 0x5b, 0x98, 0x98, 0xf1, 0x42, 0xee, 0xf6, 0x4c, 0x87, 0x38, 0x88, - 0xfc, 0xdb, 0x08, 0xce, 0x1f, 0x33, 0x10, 0x5e, 0xdc, 0xad, 0xd6, 0xe3, 0x6e, 0x36, 0x37, 0x5e, - 0xdc, 0x3d, 0x72, 0x7a, 0x4b, 0x73, 0x42, 0xd8, 0xbd, 0xc0, 0xe9, 0xe6, 0xa7, 0xa1, 0xbb, 0x64, - 0xe8, 0x95, 0x35, 0xa5, 0xcc, 0x8b, 0xc1, 0x5e, 0x86, 0x98, 0x45, 0x7d, 0x34, 0xc4, 0xeb, 0x51, - 0xbf, 0xa8, 0xa1, 0xc8, 0xe4, 0xb8, 0x7b, 0x6b, 0x64, 0x68, 0x18, 0x49, 0xac, 0x39, 0xff, 0x9f, - 0xda, 0xc5, 0x15, 0x7a, 0x8a, 0xec, 0x4b, 0xad, 0xbe, 0xe9, 0x7f, 0x6b, 0xa1, 0xf4, 0xda, 0x51, - 0x0d, 0x5d, 0x84, 0xf6, 0x6d, 0x43, 0xaf, 0x8c, 0xf3, 0x7f, 0x26, 0xf8, 0x3f, 0x45, 0xfe, 0xcf, - 0x64, 0x3d, 0xe1, 0xca, 0x9f, 0x65, 0xb8, 0x57, 0xbf, 0x81, 0x1f, 0x61, 0x37, 0x6a, 0xde, 0xf8, - 0xee, 0xc7, 0xa8, 0x3b, 0x1e, 0x19, 0x47, 0xd7, 0x3b, 0xca, 0xec, 0x76, 0x25, 0xc5, 0xe8, 0xfa, - 0x16, 0xea, 0xc8, 0x33, 0xb4, 0x13, 0xee, 0x9b, 0xb8, 0xc4, 0xf0, 0x2c, 0xc4, 0x34, 0xa5, 0x6c, - 0x8a, 0x52, 0xaf, 0x17, 0x42, 0xa5, 0xe8, 0x17, 0xc3, 0x72, 0x9b, 0xc4, 0x10, 0xf0, 0xeb, 0x90, - 0x54, 0xca, 0xec, 0x34, 0x8f, 0x46, 0x31, 0x55, 0x53, 0x64, 0xdd, 0x9b, 0x25, 0x45, 0xbb, 0x39, - 0x70, 0x89, 0xc1, 0xe2, 0xdb, 0xd0, 0xaf, 0xa9, 0xfa, 0x7d, 0xaa, 0x9e, 0x9a, 0xaa, 0xef, 0xf2, - 0xb7, 0x0a, 0x0e, 0x14, 0x8d, 0x79, 0xdc, 0xc9, 0xd2, 0x79, 0xd7, 0xf1, 0xa4, 0xf1, 0x8e, 0x7b, - 0x40, 0xf0, 0xfb, 0xaf, 0x0e, 0xff, 0xcf, 0xa8, 0xd4, 0x4b, 0xf1, 0x36, 0x39, 0xda, 0x8a, 0xc0, - 0xc2, 0xd7, 0x20, 0xc9, 0xc8, 0x55, 0x4d, 0x1a, 0x09, 0x28, 0x87, 0xe2, 0xca, 0x6f, 0xbf, 0x20, - 0x13, 0x2d, 0x72, 0x2a, 0xed, 0x23, 0xd1, 0xec, 0x97, 0x9d, 0x52, 0x82, 0xc2, 0xde, 0x35, 0x17, - 0x29, 0xe4, 0xf5, 0xbf, 0x19, 0xf9, 0xb4, 0x86, 0x0a, 0x70, 0xa1, 0xc9, 0x4b, 0x12, 0x2c, 0xad, - 0x96, 0x84, 0xd8, 0xda, 0xfc, 0xc2, 0x26, 0x6e, 0x9f, 0x2c, 0xcc, 0x14, 0xa8, 0x3d, 0xfa, 0xf7, - 0xe8, 0xd8, 0xdb, 0x12, 0x97, 0x20, 0x75, 0x9b, 0xec, 0x6f, 0x13, 0x4b, 0xe4, 0xe6, 0xec, 0x52, - 0xc2, 0x9b, 0xb1, 0x4c, 0x0c, 0xde, 0x84, 0x2e, 0x2a, 0x45, 0x76, 0xa8, 0x34, 0x32, 0x0e, 0xa3, - 0xd0, 0xcd, 0xe5, 0x5e, 0x64, 0x94, 0x61, 0xa8, 0x41, 0x98, 0xc5, 0xe4, 0x3c, 0xfb, 0x39, 0xc6, - 0xe5, 0x05, 0xd3, 0x30, 0xb8, 0xa6, 0xea, 0xf7, 0x73, 0x62, 0xe0, 0x39, 0x77, 0xe4, 0xb9, 0xe1, - 0x7d, 0xfb, 0x35, 0x6a, 0xb8, 0x42, 0xa5, 0x09, 0x2f, 0x03, 0x66, 0x68, 0x77, 0xcd, 0x1c, 0x1b, - 0x2d, 0x07, 0x4f, 0x37, 0x48, 0xab, 0x34, 0x04, 0x09, 0xca, 0x4b, 0xb3, 0xdb, 0xf0, 0x3c, 0x3b, - 0x96, 0xff, 0x06, 0x82, 0x6c, 0x83, 0x62, 0xd7, 0xd7, 0xe5, 0x7d, 0xe8, 0xa6, 0x6a, 0xdb, 0x90, - 0x0c, 0x1b, 0x6e, 0xbe, 0x28, 0x83, 0xab, 0xc3, 0x77, 0x3f, 0x2a, 0x16, 0x7e, 0x3f, 0x6a, 0xbb, - 0xde, 0x69, 0xfe, 0x0f, 0x10, 0xe4, 0xfc, 0x2b, 0x7b, 0x8b, 0x7a, 0xe8, 0x65, 0xc9, 0xa8, 0x3a, - 0x3e, 0x8e, 0x48, 0x7d, 0x23, 0xb0, 0x58, 0x8b, 0xe0, 0x69, 0xa8, 0xf1, 0x88, 0xa5, 0x8e, 0xdc, - 0xc0, 0x49, 0xf8, 0xca, 0x71, 0x5d, 0x6e, 0xde, 0x5d, 0xfe, 0x87, 0x08, 0x7a, 0xee, 0xdd, 0xda, - 0xbc, 0x1b, 0x54, 0x1b, 0x76, 0x5c, 0xcf, 0x8e, 0xba, 0x82, 0x27, 0x65, 0xfe, 0xb3, 0xa1, 0xcf, - 0x23, 0x94, 0x18, 0x83, 0x72, 0x33, 0x6a, 0x37, 0x68, 0xc8, 0xdd, 0x78, 0x42, 0x76, 0xc9, 0x5d, - 0x0c, 0xb3, 0xe3, 0xb3, 0xde, 0x4d, 0xb5, 0xfa, 0x89, 0x19, 0xd8, 0xf5, 0xe3, 0xb2, 0x77, 0xa0, - 0x7b, 0x87, 0x28, 0x0e, 0xdd, 0x79, 0xd8, 0xed, 0xbf, 0x8e, 0x16, 0x4f, 0xb8, 0x50, 0xa6, 0x6f, - 0x72, 0x60, 0x36, 0xee, 0xd4, 0x17, 0x35, 0x04, 0x77, 0xd7, 0xd7, 0x56, 0x16, 0x96, 0xd6, 0xb7, - 0x96, 0x16, 0xa5, 0xc4, 0x4e, 0xbd, 0x51, 0xe4, 0xcd, 0x06, 0x20, 0x7d, 0xef, 0x76, 0x60, 0xa0, - 0xa2, 0xe1, 0x7d, 0xc8, 0x94, 0x6e, 0x6d, 0x06, 0x45, 0x70, 0x01, 0xa2, 0x8a, 0xad, 0x8b, 0x31, - 0x74, 0x89, 0xaa, 0xfd, 0x61, 0x24, 0xd1, 0xaf, 0x78, 0x01, 0xda, 0x4d, 0x42, 0xdd, 0x44, 0xfe, - 0x98, 0xce, 0x40, 0x03, 0x87, 0xdb, 0xbb, 0xe6, 0xe8, 0x26, 0x21, 0x56, 0x58, 0x0d, 0xd2, 0x38, - 0x92, 0x38, 0xae, 0xe8, 0xfb, 0xbf, 0x23, 0xe8, 0x5f, 0x33, 0xca, 0x8a, 0xb6, 0x60, 0xe8, 0x8e, - 0x65, 0x68, 0x9b, 0x9a, 0xa2, 0x13, 0x91, 0x14, 0xed, 0x52, 0x75, 0x5b, 0xad, 0x10, 0xf9, 0x40, - 0x17, 0x77, 0x90, 0x9a, 0x59, 0xa7, 0x38, 0x07, 0xbc, 0x47, 0x67, 0x0e, 0x8c, 0xaa, 0xe3, 0x62, - 0x45, 0x5b, 0x62, 0x75, 0x09, 0xc8, 0x7b, 0x3a, 0x5e, 0x04, 0xd8, 0xde, 0x35, 0x65, 0x6e, 0x89, - 0x85, 0x31, 0x7d, 0x39, 0xdc, 0x98, 0x36, 0x08, 0x4a, 0xea, 0xda, 0xde, 0x35, 0xf9, 0x97, 0xd2, - 0x0b, 0xf5, 0x27, 0x73, 0x5a, 0x67, 0x30, 0xff, 0x4b, 0x14, 0xd2, 0x25, 0xcd, 0x28, 0xdf, 0x27, - 0x15, 0x11, 0xc8, 0xd8, 0xf8, 0xf7, 0x10, 0xe0, 0x07, 0x64, 0x9b, 0x1d, 0x45, 0xd6, 0x1f, 0x7f, - 0x11, 0xb7, 0xeb, 0x43, 0x87, 0x50, 0xfa, 0x8d, 0x47, 0x1f, 0xa3, 0xd7, 0xa1, 0x5b, 0x79, 0x60, - 0xcb, 0x07, 0x66, 0x59, 0xb6, 0x55, 0x87, 0x40, 0x5a, 0x79, 0x9f, 0xea, 0xcf, 0x81, 0x4e, 0x1c, - 0xfe, 0x81, 0x35, 0x3b, 0xbb, 0x0f, 0xc4, 0xaf, 0xdd, 0xb2, 0xe9, 0x01, 0x2f, 0xb7, 0x49, 0x99, - 0x07, 0x64, 0xfb, 0xae, 0x4d, 0x2c, 0xef, 0x0d, 0x1b, 0x3c, 0x0c, 0xd1, 0x8a, 0x6e, 0x9f, 0x20, - 0x70, 0x0a, 0x42, 0x21, 0x6d, 0x7b, 0xef, 0x04, 0x21, 0x53, 0x10, 0x2c, 0x41, 0xb7, 0x2b, 0x18, - 0xa6, 0xd8, 0xed, 0x4c, 0xb1, 0x1b, 0x77, 0x2b, 0x51, 0x61, 0x21, 0xde, 0x5e, 0xe1, 0x05, 0xca, - 0xec, 0xb8, 0xf8, 0x21, 0x8a, 0x0d, 0x46, 0xda, 0x90, 0x94, 0xd0, 0xeb, 0x4d, 0xd7, 0x9d, 0xcf, - 0x6a, 0xc8, 0x84, 0xdb, 0xd0, 0x29, 0x24, 0x38, 0x52, 0x82, 0xb7, 0xe0, 0x62, 0x98, 0x0c, 0x8b, - 0x1d, 0xef, 0x90, 0xed, 0xdc, 0xdd, 0x15, 0x48, 0xb3, 0xa1, 0x15, 0xe3, 0x8b, 0xeb, 0x5b, 0xb9, - 0xe1, 0xe9, 0xc9, 0xd7, 0xe8, 0x07, 0xdb, 0xde, 0x2b, 0xc6, 0xb7, 0xb6, 0x96, 0x73, 0xc3, 0xc5, - 0xe2, 0x6b, 0x70, 0x19, 0x12, 0xbe, 0xee, 0x07, 0x33, 0x41, 0xbe, 0x73, 0xa8, 0x34, 0x0a, 0xf9, - 0x6d, 0x3e, 0x71, 0xae, 0x73, 0x68, 0xcb, 0xcc, 0x6f, 0x66, 0x00, 0xee, 0xb4, 0xc7, 0x3f, 0xa9, - 0xa1, 0x28, 0x75, 0x97, 0xb8, 0x83, 0x94, 0xff, 0x6e, 0x04, 0x52, 0x5b, 0x96, 0x6a, 0x1c, 0xd4, - 0xc5, 0xfc, 0x32, 0xa4, 0x3c, 0x06, 0x7d, 0x19, 0x3a, 0x29, 0xe9, 0x7d, 0x65, 0x49, 0xb9, 0x3c, - 0x24, 0xf5, 0x2a, 0xdd, 0x97, 0x64, 0x63, 0x47, 0x3e, 0xd8, 0x11, 0x49, 0x69, 0x29, 0xc1, 0x3f, - 0x6e, 0xec, 0xdc, 0xdb, 0xb1, 0xf1, 0x15, 0xc0, 0x7e, 0x18, 0xd5, 0x60, 0x80, 0x6c, 0xe5, 0x4a, - 0xe9, 0x3a, 0xa0, 0x6a, 0xdc, 0xdb, 0xb1, 0xaf, 0xff, 0x19, 0xfa, 0xac, 0x86, 0x1e, 0x21, 0xb8, - 0x02, 0x03, 0x9b, 0x7b, 0x87, 0xb6, 0x5a, 0x56, 0xb4, 0x9c, 0xc7, 0x55, 0xce, 0x3d, 0x60, 0x0a, - 0xb2, 0x06, 0x53, 0xf0, 0xc2, 0x1d, 0xc3, 0x51, 0xb4, 0x1c, 0xa7, 0x96, 0x33, 0x76, 0x72, 0x07, - 0xa2, 0xb8, 0x6d, 0xa7, 0xaa, 0xb3, 0xac, 0x96, 0x4d, 0xf7, 0xa5, 0x00, 0xab, 0xb0, 0x04, 0x57, - 0xd7, 0x9b, 0xc3, 0xe7, 0x44, 0x49, 0x44, 0x85, 0xc5, 0x52, 0x94, 0x6d, 0x1a, 0x1c, 0x1c, 0x1f, - 0x48, 0xfe, 0x37, 0x21, 0xcb, 0xbd, 0x66, 0xe6, 0x02, 0x7b, 0x2b, 0x86, 0xee, 0x14, 0xf8, 0x0d, - 0x68, 0x57, 0x1d, 0xb2, 0xef, 0x6e, 0x0e, 0xaf, 0x84, 0x2e, 0x59, 0x8e, 0xed, 0x9e, 0x7f, 0x38, - 0x64, 0x5f, 0xe2, 0x48, 0xf9, 0x7f, 0x80, 0xa0, 0xe7, 0x58, 0x23, 0xbe, 0x0c, 0x31, 0x66, 0xbe, - 0xb9, 0xa3, 0x98, 0x70, 0x5d, 0xc4, 0x9f, 0xfe, 0x34, 0x2a, 0xb1, 0x06, 0x3c, 0x05, 0x09, 0x5e, - 0x08, 0x2c, 0x6b, 0xaa, 0xed, 0x08, 0x7f, 0xae, 0xd7, 0x35, 0xed, 0xf0, 0x2d, 0xd4, 0x99, 0x6f, - 0xb7, 0xa2, 0x3f, 0x41, 0x48, 0x02, 0x0e, 0x47, 0x59, 0xbd, 0x3e, 0xf1, 0x59, 0x0d, 0x5d, 0xa5, - 0x7e, 0x07, 0x35, 0xf5, 0xd4, 0xef, 0xa0, 0xb4, 0xe0, 0x02, 0xc0, 0x8a, 0xc9, 0xeb, 0x86, 0x89, - 0x4d, 0x83, 0x1b, 0x1f, 0xe5, 0xfc, 0x3f, 0x1b, 0x86, 0xd4, 0x2d, 0xcd, 0xd8, 0x56, 0xb4, 0x2d, - 0x93, 0x94, 0x99, 0x51, 0xbc, 0x02, 0x09, 0x36, 0x28, 0x99, 0xd5, 0x8e, 0x08, 0x6f, 0xd4, 0x0d, - 0x0d, 0x1f, 0xf3, 0x07, 0x31, 0x08, 0x71, 0x58, 0x8d, 0x09, 0x5e, 0x85, 0xf3, 0x07, 0x86, 0xe6, - 0x10, 0xcb, 0x52, 0x64, 0xdb, 0xd8, 0x71, 0x1e, 0x28, 0xd4, 0x32, 0x88, 0x2a, 0x89, 0xf0, 0xec, - 0xd2, 0x80, 0x8b, 0xb0, 0x25, 0xe0, 0xdd, 0x7a, 0x89, 0xf5, 0x67, 0x7e, 0x42, 0x2a, 0x51, 0x7f, - 0xc0, 0xca, 0xe7, 0xb8, 0xde, 0xaf, 0xbf, 0xc1, 0x55, 0x36, 0x74, 0x9d, 0xa5, 0xf8, 0xf9, 0x6d, - 0xf3, 0xa7, 0x79, 0x9c, 0xcd, 0x43, 0xad, 0x6f, 0x34, 0x92, 0xdb, 0xb8, 0xe0, 0x91, 0xc5, 0x3b, - 0x90, 0x71, 0x31, 0x76, 0x54, 0x8b, 0x3c, 0x50, 0x34, 0x4d, 0x9c, 0xb0, 0xb7, 0xee, 0xea, 0xd2, - 0xa3, 0x0f, 0x8e, 0x21, 0xfa, 0x9e, 0x81, 0x4b, 0x8b, 0xb6, 0x9b, 0xa2, 0x09, 0x2f, 0x43, 0xd6, - 0x30, 0x09, 0xdd, 0x18, 0xf4, 0x5d, 0xd9, 0x3e, 0xb4, 0x1d, 0xb2, 0xdf, 0x50, 0x95, 0xd2, 0x28, - 0xef, 0x73, 0x1e, 0xfc, 0x16, 0x03, 0x77, 0xc5, 0x6d, 0xc1, 0x80, 0xb7, 0x8f, 0xf1, 0x95, 0xe3, - 0x3d, 0x60, 0xd5, 0x79, 0x0a, 0xc6, 0x2f, 0x3e, 0xfa, 0x20, 0xdd, 0x80, 0xe7, 0xe3, 0xbb, 0xdf, - 0xdd, 0xf8, 0x02, 0x06, 0x17, 0x9b, 0x70, 0xce, 0xdd, 0x70, 0x1b, 0xba, 0x8c, 0x3f, 0x77, 0x97, - 0x7d, 0x62, 0x87, 0x0e, 0xf6, 0x78, 0xc7, 0x6f, 0x69, 0xd8, 0x62, 0x82, 0x16, 0x19, 0xbb, 0xf0, - 0xc7, 0xd6, 0x96, 0xdb, 0x7c, 0x36, 0x93, 0x19, 0x85, 0xa5, 0xfa, 0x43, 0x06, 0xbe, 0x57, 0xd8, - 0x5e, 0x6d, 0xb9, 0x4d, 0xf5, 0x08, 0x0c, 0x8f, 0xbc, 0x8d, 0x17, 0x20, 0xa5, 0x91, 0x5d, 0xa5, - 0x7c, 0xe8, 0x79, 0xc5, 0x89, 0x16, 0x7b, 0x31, 0x4b, 0x88, 0x53, 0x5e, 0x38, 0x8e, 0xf0, 0x75, - 0xf1, 0x0d, 0x48, 0xeb, 0x86, 0x1c, 0xf0, 0xad, 0x33, 0x2d, 0x18, 0x41, 0x52, 0x52, 0x37, 0x7c, - 0x0e, 0x3a, 0xfe, 0x2d, 0xc8, 0xf8, 0x90, 0xb9, 0x8c, 0x78, 0x0a, 0xf2, 0xea, 0x69, 0x9c, 0x73, - 0xcf, 0x9f, 0x5e, 0x46, 0x52, 0xaa, 0xee, 0x83, 0x33, 0x31, 0xad, 0x42, 0xbf, 0x6e, 0x78, 0xf1, - 0xbf, 0x4f, 0x52, 0xbd, 0x2d, 0xaf, 0xac, 0xf6, 0xea, 0x86, 0xf0, 0xdb, 0x7d, 0xb2, 0x2a, 0xc3, - 0xb9, 0x63, 0x84, 0x38, 0xb3, 0x7d, 0x4f, 0x3f, 0xa1, 0x11, 0xa9, 0xcf, 0x6e, 0xe8, 0x81, 0x31, - 0x5c, 0x82, 0x1e, 0x1f, 0xc3, 0x22, 0xb3, 0x7e, 0xae, 0x05, 0xb3, 0x51, 0x29, 0xed, 0x31, 0x2b, - 0x52, 0xec, 0x8a, 0xef, 0x76, 0x92, 0x4f, 0xa4, 0x03, 0x2d, 0xb2, 0xba, 0xcd, 0xcb, 0x08, 0x96, - 0xa3, 0xf5, 0x3b, 0x48, 0x01, 0xb9, 0x86, 0xe7, 0xe4, 0xcf, 0xb7, 0x60, 0x35, 0x16, 0x9e, 0xab, - 0xff, 0xed, 0xc6, 0x74, 0x19, 0xe3, 0x96, 0x5f, 0x4f, 0x1c, 0x3d, 0x5d, 0xca, 0xc4, 0x63, 0x36, - 0x16, 0x4c, 0x1b, 0x32, 0x5e, 0xdf, 0x86, 0x5e, 0xdd, 0x90, 0x2b, 0x65, 0xd9, 0x7d, 0xf1, 0x8a, - 0xdd, 0xac, 0xca, 0x5e, 0x3c, 0x51, 0xd1, 0xdb, 0xa5, 0x8c, 0x6e, 0x2c, 0x96, 0x17, 0x38, 0xda, - 0x2d, 0x8a, 0x85, 0x77, 0x21, 0x73, 0x8c, 0xd2, 0x25, 0x46, 0xe9, 0x34, 0x6f, 0x1f, 0x0e, 0x3c, - 0xfa, 0xe0, 0x18, 0xba, 0xe8, 0x2a, 0x55, 0x09, 0x76, 0xe4, 0xc0, 0x40, 0x23, 0xa4, 0xcc, 0xed, - 0x4b, 0xf6, 0x95, 0x9f, 0x45, 0x7f, 0x7d, 0xc1, 0xfe, 0x56, 0x18, 0x69, 0xfc, 0x87, 0x08, 0x06, - 0x43, 0xba, 0x75, 0x1d, 0xf5, 0x37, 0x4e, 0x61, 0x23, 0xc7, 0xc3, 0xde, 0x77, 0xfc, 0xfc, 0x03, - 0xe4, 0xd6, 0xfa, 0x89, 0x5d, 0xd2, 0x17, 0xae, 0x0e, 0x34, 0xb2, 0xe2, 0xfa, 0x8f, 0x6f, 0x42, - 0xc2, 0x7d, 0x65, 0x65, 0xd7, 0xac, 0x66, 0x2f, 0x9f, 0x38, 0x63, 0x1d, 0x12, 0x08, 0x84, 0x5b, - 0x66, 0x15, 0xbf, 0x0e, 0x20, 0x1e, 0xc6, 0xa2, 0xd8, 0xb9, 0x53, 0x60, 0x77, 0x71, 0x78, 0x8a, - 0xbc, 0x01, 0x09, 0x81, 0x7c, 0x40, 0xb1, 0xa7, 0x18, 0xf6, 0x2b, 0x4d, 0xc3, 0xd4, 0x40, 0xbc, - 0x54, 0xe7, 0x86, 0x93, 0xb8, 0xb7, 0x6b, 0x56, 0xf1, 0xdf, 0x80, 0x8b, 0xfe, 0x13, 0x59, 0xa2, - 0xef, 0xd1, 0x7f, 0xd9, 0xb5, 0x88, 0x7d, 0xa3, 0x42, 0xb2, 0x6f, 0x87, 0xd6, 0x24, 0x8a, 0x4b, - 0x5c, 0x75, 0xc4, 0xa5, 0x3a, 0xde, 0x6d, 0x43, 0x3c, 0x13, 0xc6, 0xea, 0x2e, 0x7f, 0x5c, 0x43, - 0x48, 0x1a, 0x34, 0x9b, 0x42, 0x52, 0x71, 0xb8, 0xd2, 0x3c, 0xd8, 0xcf, 0xce, 0x9d, 0x28, 0x8e, - 0x4e, 0xa9, 0x4b, 0xc0, 0xdf, 0xdb, 0xc7, 0x2b, 0xd0, 0xe5, 0x8a, 0x63, 0x3f, 0x7b, 0x8d, 0xe1, - 0x36, 0x89, 0xd9, 0x6f, 0x87, 0x89, 0xa2, 0x53, 0x8a, 0x0b, 0x51, 0xec, 0xe3, 0x1d, 0xe8, 0x23, - 0x4e, 0xb9, 0xe2, 0x29, 0x99, 0xbb, 0x01, 0xbf, 0xc0, 0x02, 0xa6, 0x70, 0x2b, 0xba, 0xe4, 0x94, - 0x2b, 0x42, 0x47, 0xfc, 0xa1, 0x53, 0xa7, 0xd0, 0x2b, 0x09, 0x93, 0x63, 0x00, 0x78, 0x03, 0xb2, - 0x3e, 0x53, 0x6a, 0xb3, 0x1c, 0x8a, 0x9b, 0x67, 0x79, 0xb1, 0x85, 0x99, 0x8a, 0x4b, 0xfd, 0x9e, - 0x45, 0xf5, 0xa7, 0x6d, 0xf0, 0x7d, 0xe8, 0x0f, 0xa7, 0xf6, 0x12, 0xa3, 0x36, 0x7d, 0xa2, 0xad, - 0x0a, 0x4b, 0x02, 0x2d, 0xc7, 0x25, 0xd7, 0x5a, 0x07, 0x3a, 0xfb, 0x1a, 0xbc, 0x24, 0x04, 0xee, - 0x3d, 0x74, 0xc4, 0x7c, 0x62, 0x1e, 0xbe, 0xcb, 0x15, 0xe3, 0x81, 0xae, 0x19, 0x4a, 0x25, 0xfb, - 0x72, 0xc8, 0x31, 0x78, 0x8e, 0x63, 0x8a, 0x43, 0x03, 0xc6, 0x01, 0x9f, 0x94, 0x45, 0x81, 0x85, - 0x6f, 0x02, 0xf7, 0xa1, 0x79, 0xa8, 0xfa, 0x1a, 0x93, 0xfc, 0x50, 0x73, 0xfe, 0x83, 0xc2, 0xee, - 0xda, 0x71, 0xbf, 0xe1, 0x77, 0x20, 0x61, 0xab, 0xfa, 0xae, 0x46, 0x58, 0xac, 0x9d, 0x1d, 0x39, - 0x85, 0x7d, 0xc8, 0x3e, 0xfa, 0x20, 0x46, 0x81, 0x7d, 0x26, 0x41, 0xf8, 0x4f, 0xc0, 0x49, 0x6d, - 0xa9, 0x0e, 0xc1, 0x77, 0x60, 0x40, 0x33, 0x76, 0x6d, 0xd9, 0x76, 0x2c, 0xa2, 0xec, 0x53, 0x57, - 0x53, 0xe8, 0x62, 0x25, 0x5b, 0x38, 0x51, 0x73, 0xbb, 0xa4, 0x7e, 0x8a, 0xbc, 0xe5, 0xe2, 0x2e, - 0x0a, 0x54, 0xfc, 0x35, 0xe8, 0xd6, 0x8c, 0x5d, 0xd9, 0x22, 0x65, 0xa2, 0x1e, 0x10, 0x2b, 0x7b, - 0xf5, 0xd4, 0x96, 0xb4, 0xf7, 0xd1, 0x07, 0x01, 0x54, 0xd1, 0x4f, 0x42, 0x33, 0x76, 0x25, 0xf1, - 0x09, 0xdf, 0x80, 0xee, 0x0a, 0xd1, 0x0f, 0x65, 0x45, 0xd3, 0xe4, 0xaa, 0xbd, 0x9d, 0x1d, 0x3b, - 0x91, 0x51, 0x90, 0x80, 0x62, 0xcc, 0x6b, 0xda, 0x5d, 0x7b, 0x1b, 0xbf, 0x05, 0x49, 0x7e, 0xca, - 0xe1, 0x12, 0x18, 0x3f, 0x05, 0x81, 0x04, 0x43, 0x11, 0x14, 0xee, 0x01, 0x54, 0xed, 0x6d, 0xf7, - 0xbc, 0x75, 0xe2, 0xd4, 0xa3, 0xeb, 0x79, 0xf4, 0x81, 0x0f, 0x51, 0x50, 0xee, 0xaa, 0xda, 0xdb, - 0xe2, 0x14, 0xf6, 0x5d, 0x48, 0xdc, 0x9f, 0xb3, 0xdd, 0x15, 0x9b, 0x2d, 0x9e, 0x9a, 0x70, 0xff, - 0xa3, 0x0f, 0xfc, 0x98, 0xae, 0x06, 0xc1, 0xfd, 0x39, 0x5b, 0xac, 0x56, 0x5c, 0x86, 0x5e, 0xcd, - 0x28, 0x2b, 0x1a, 0xd5, 0x6c, 0xc7, 0x32, 0x34, 0xd9, 0xd4, 0x14, 0x9d, 0x64, 0x27, 0x5b, 0x3c, - 0xea, 0x18, 0x9a, 0x4b, 0xab, 0xeb, 0x67, 0x8f, 0xd6, 0xd8, 0x8e, 0xd7, 0xa0, 0xd7, 0xb5, 0x7d, - 0x3b, 0x54, 0xc2, 0xfc, 0xe2, 0x52, 0x76, 0xe6, 0x44, 0x01, 0x27, 0xa4, 0x1e, 0x81, 0x78, 0x53, - 0x33, 0x1e, 0xf0, 0x2b, 0xb3, 0xf8, 0x2b, 0x80, 0xc5, 0xda, 0xf4, 0x13, 0x9b, 0x6d, 0x41, 0x2c, - 0xf1, 0xf9, 0x07, 0x88, 0xd2, 0xfb, 0x92, 0xd3, 0xcc, 0x70, 0x74, 0x1f, 0xc9, 0xaf, 0x42, 0xa6, - 0x31, 0xe7, 0x92, 0x7d, 0x9d, 0xad, 0xa6, 0x70, 0x33, 0xdb, 0x90, 0x59, 0x13, 0xe1, 0x31, 0x5d, - 0x47, 0x1d, 0x52, 0x7a, 0xbb, 0x21, 0xed, 0xf6, 0x1e, 0x0c, 0x1a, 0x3b, 0x3b, 0x9a, 0xaa, 0x13, - 0xd9, 0xae, 0x5a, 0x07, 0xea, 0x81, 0xb2, 0xad, 0x6a, 0xaa, 0x73, 0xc8, 0x37, 0x9e, 0x37, 0x43, - 0x9f, 0xbc, 0x16, 0xb3, 0xc9, 0xd1, 0xb6, 0xfc, 0x58, 0xde, 0xb6, 0xe3, 0x09, 0x3c, 0x6b, 0x34, - 0x01, 0xc3, 0xeb, 0x30, 0xe0, 0xf9, 0x89, 0x96, 0x6a, 0x1c, 0xf8, 0x7c, 0x89, 0xf5, 0x16, 0x26, - 0xb8, 0x5b, 0x72, 0xdd, 0xcb, 0x86, 0x8c, 0xd2, 0x6f, 0x41, 0xa6, 0x81, 0x8e, 0x9d, 0xdd, 0x60, - 0x84, 0x0a, 0xe1, 0xd5, 0x0a, 0x01, 0xf4, 0xba, 0xd1, 0xed, 0x96, 0xd2, 0x76, 0xb0, 0x09, 0x6f, - 0x43, 0x46, 0xe1, 0xc9, 0x97, 0xfa, 0x0c, 0xfc, 0xa8, 0xb3, 0x45, 0x18, 0xd2, 0x2c, 0x61, 0x53, - 0x97, 0x4b, 0x5a, 0x09, 0x34, 0x52, 0x57, 0x37, 0xc9, 0x9e, 0x88, 0x67, 0xdc, 0xeb, 0x8a, 0x96, - 0xfd, 0xb2, 0xf3, 0xd4, 0x4b, 0xa9, 0xef, 0xd1, 0x07, 0x41, 0x64, 0xd6, 0x45, 0x37, 0xfd, 0xb4, - 0x22, 0xbe, 0xe0, 0x0d, 0x48, 0xef, 0x12, 0x9d, 0x06, 0xdb, 0xa4, 0x22, 0x1f, 0x2a, 0xfb, 0x9a, - 0x9d, 0xfd, 0x61, 0x27, 0x4b, 0xdd, 0xbc, 0xec, 0x33, 0xb7, 0x6e, 0xf6, 0x46, 0x14, 0xfc, 0xb8, - 0x3f, 0xbf, 0x89, 0x90, 0x94, 0xf2, 0xd0, 0x7f, 0x8b, 0x62, 0x97, 0x86, 0x21, 0x53, 0x8f, 0x75, - 0x7c, 0x45, 0xca, 0xaf, 0x3e, 0xae, 0xa1, 0xae, 0xa3, 0x1a, 0x8a, 0x4f, 0xba, 0x77, 0xd7, 0x72, - 0xc0, 0xce, 0x3f, 0xfc, 0x6f, 0x5c, 0x64, 0x1e, 0xd7, 0x50, 0x9a, 0xbd, 0x71, 0x31, 0x53, 0x98, - 0x98, 0x2d, 0x5d, 0x85, 0xec, 0xf1, 0xf8, 0xc9, 0x07, 0xde, 0xfb, 0xb8, 0x86, 0x30, 0x03, 0xbf, - 0x56, 0x28, 0x8e, 0x97, 0x46, 0xea, 0xbb, 0x6d, 0xf0, 0x9c, 0x96, 0xc2, 0x9e, 0x7b, 0x5c, 0x43, - 0xfd, 0x14, 0x96, 0xdd, 0x4e, 0x2d, 0xbd, 0x06, 0x7d, 0xc1, 0x10, 0xc2, 0x07, 0x7a, 0xfe, 0x71, - 0x0d, 0x65, 0x19, 0xe8, 0x74, 0xa1, 0x38, 0x53, 0x1a, 0x0f, 0xf1, 0xab, 0x05, 0x74, 0xff, 0x27, - 0x35, 0x74, 0x51, 0xdc, 0xb4, 0xbb, 0xc0, 0x30, 0xe6, 0x0a, 0xc5, 0x6b, 0xa5, 0x57, 0x00, 0x76, - 0xcd, 0xaa, 0xff, 0x3a, 0xde, 0x65, 0x01, 0x34, 0xc4, 0x24, 0x30, 0x51, 0x98, 0x2c, 0x16, 0xa6, - 0x8b, 0xa5, 0x3c, 0x74, 0x1d, 0xec, 0xfb, 0x69, 0xcd, 0x09, 0xb0, 0xeb, 0x94, 0xd6, 0xf4, 0x4c, - 0x61, 0x7a, 0xb6, 0x34, 0x01, 0x17, 0x43, 0x5d, 0x08, 0x3f, 0xc3, 0x2f, 0x3e, 0xae, 0xa1, 0x3c, - 0x45, 0x99, 0x9c, 0x2e, 0x4c, 0xce, 0x94, 0xae, 0x42, 0x1f, 0xdb, 0x09, 0xdd, 0x9d, 0xc7, 0xdf, - 0x43, 0x41, 0xf4, 0x70, 0x85, 0x82, 0x4f, 0x4d, 0x15, 0xa6, 0xa6, 0x4b, 0x57, 0xa1, 0xa7, 0x6e, - 0xc9, 0xfd, 0x4c, 0x8f, 0x09, 0xd8, 0x51, 0xca, 0xf4, 0xd4, 0x6c, 0x61, 0x6a, 0xae, 0x30, 0x75, - 0xad, 0x34, 0x0c, 0x7d, 0x3e, 0x1b, 0x56, 0xa7, 0x9e, 0xf9, 0xa4, 0x86, 0x66, 0x04, 0xc6, 0x34, - 0x75, 0x2d, 0x4b, 0x57, 0xe0, 0x5c, 0xc3, 0xd2, 0xf3, 0x33, 0xbd, 0xfe, 0xb8, 0x86, 0x6e, 0x53, - 0x2e, 0x66, 0xe7, 0x0a, 0xb3, 0xd7, 0x56, 0x63, 0xf1, 0xae, 0x0c, 0xac, 0xc6, 0xe2, 0xe9, 0x4c, - 0x66, 0x35, 0x16, 0xc7, 0x99, 0xde, 0xd5, 0x58, 0xbc, 0x3f, 0x73, 0x6e, 0x35, 0x16, 0xcf, 0x66, - 0xce, 0xaf, 0xc6, 0xe2, 0x17, 0x32, 0x17, 0x57, 0x63, 0xf1, 0xa1, 0xcc, 0xe5, 0xd5, 0x58, 0xfc, - 0x7a, 0xe6, 0xf5, 0xd5, 0x58, 0x3c, 0x9f, 0x79, 0x71, 0x35, 0x16, 0x1f, 0xce, 0xbc, 0xb6, 0x1a, - 0x8b, 0x5f, 0xc9, 0x14, 0x56, 0x63, 0xf1, 0xd1, 0xcc, 0xd8, 0x6a, 0x2c, 0x3e, 0x9d, 0x99, 0x59, - 0x8d, 0xc5, 0x6f, 0x67, 0xd6, 0xf3, 0xbf, 0x77, 0x19, 0x52, 0x0b, 0x16, 0x51, 0x1c, 0xf2, 0x6c, - 0x99, 0xc2, 0xeb, 0x27, 0x66, 0x0a, 0x9b, 0x67, 0x06, 0x95, 0x67, 0xce, 0xe4, 0xf5, 0x85, 0x65, - 0xf2, 0xc2, 0xf2, 0x77, 0x5f, 0x7b, 0xc6, 0xfc, 0x5d, 0x6f, 0x48, 0xfe, 0xee, 0x78, 0xd6, 0x6e, - 0xee, 0xa4, 0xac, 0x5d, 0xd3, 0x2c, 0xdd, 0xde, 0xf3, 0x65, 0xe9, 0xf0, 0xf1, 0x94, 0x59, 0xb3, - 0xdc, 0xdc, 0xce, 0x73, 0xe5, 0xe6, 0xc2, 0x3a, 0x3a, 0x6d, 0x46, 0x2e, 0xf9, 0x33, 0xc8, 0xc8, - 0xbd, 0x59, 0x7f, 0x92, 0x54, 0x1c, 0xb1, 0x0d, 0xb7, 0xbe, 0x82, 0x25, 0xa0, 0xb9, 0x67, 0x8e, - 0xdf, 0x86, 0x84, 0x3f, 0x59, 0x93, 0x6a, 0x71, 0xf7, 0x34, 0xe4, 0xff, 0x7e, 0xb0, 0xdc, 0x46, - 0x3d, 0x49, 0x2f, 0x3d, 0x73, 0x96, 0x91, 0x3b, 0xcb, 0xc8, 0xfd, 0x12, 0x67, 0xe4, 0x96, 0x9e, - 0x3a, 0x23, 0x17, 0x9a, 0x8b, 0x2b, 0x3f, 0x57, 0x2e, 0xae, 0x37, 0x24, 0x37, 0x16, 0x92, 0x87, - 0x33, 0x7f, 0x16, 0x79, 0xb8, 0x26, 0x7d, 0x85, 0xe7, 0xe0, 0x66, 0x4f, 0x9d, 0xf5, 0x6a, 0xc8, - 0x77, 0x4d, 0x9f, 0x36, 0xdf, 0x15, 0xcc, 0x74, 0xad, 0x3c, 0x47, 0xa6, 0xab, 0x21, 0xc7, 0xf5, - 0xac, 0x29, 0x97, 0xce, 0x5f, 0x6c, 0xca, 0xa5, 0x33, 0x3c, 0xe5, 0xb2, 0xfe, 0x34, 0x29, 0x97, - 0x53, 0x24, 0x59, 0xd6, 0x9f, 0x29, 0x87, 0xb1, 0x1c, 0x6f, 0x96, 0xbd, 0xf8, 0xcd, 0x67, 0xce, - 0x5e, 0xa4, 0x1b, 0xb2, 0x17, 0xcb, 0xf1, 0x60, 0xe6, 0x62, 0xee, 0xf4, 0x99, 0x8b, 0xe5, 0xae, - 0x40, 0xce, 0xe2, 0xfa, 0x53, 0xe4, 0x2c, 0x96, 0xbb, 0x82, 0xd9, 0x0a, 0xe9, 0x19, 0xb3, 0x15, - 0xc9, 0x40, 0xb6, 0x62, 0xb9, 0xcb, 0x9f, 0xa9, 0x98, 0x3e, 0x6d, 0x92, 0x73, 0x19, 0xfc, 0xe9, - 0xcd, 0x85, 0x67, 0x4c, 0x6f, 0x2e, 0x83, 0x2f, 0xb1, 0xb9, 0xf1, 0x7c, 0x31, 0xfc, 0xf1, 0xb8, - 0xbd, 0xfa, 0x73, 0x4b, 0x19, 0xb7, 0x4c, 0x14, 0x3f, 0x63, 0xd0, 0x9e, 0xf8, 0x79, 0x07, 0xed, - 0x89, 0x63, 0x41, 0xfb, 0xf5, 0xef, 0xa3, 0xcf, 0x6e, 0x34, 0x94, 0x0f, 0x7c, 0xca, 0x1e, 0xce, - 0xc8, 0x89, 0x0a, 0xd7, 0x86, 0x5a, 0xc9, 0xae, 0x09, 0xf6, 0xe0, 0x4a, 0xb1, 0x30, 0x03, 0x17, - 0x00, 0x0b, 0x87, 0x30, 0xe7, 0x73, 0x29, 0xda, 0x27, 0xa6, 0x0b, 0x13, 0xec, 0x96, 0xb2, 0xdb, - 0xe8, 0x73, 0xd1, 0xd1, 0x14, 0xf4, 0x43, 0xc6, 0x6d, 0xf0, 0x7c, 0x6b, 0x34, 0x0d, 0x2f, 0x40, - 0xbf, 0x57, 0x45, 0x1e, 0xe8, 0x30, 0x3e, 0x31, 0x57, 0x28, 0x4e, 0x14, 0x8a, 0x53, 0x30, 0x0b, - 0xe7, 0xbc, 0x4a, 0xe5, 0x20, 0xcc, 0xa5, 0xe2, 0x6c, 0x61, 0x72, 0xbc, 0x30, 0x39, 0x55, 0x98, - 0x9a, 0x2c, 0x4c, 0xcd, 0x14, 0xa6, 0xe7, 0x0a, 0xd3, 0xd7, 0x0a, 0x93, 0xb3, 0x85, 0xd9, 0xe9, - 0xc2, 0xec, 0x6c, 0xa9, 0x18, 0x12, 0x83, 0x0f, 0x7d, 0x52, 0x43, 0xc3, 0xe2, 0x09, 0xc9, 0xf8, - 0xd4, 0x38, 0x7f, 0x10, 0xe6, 0xe1, 0x13, 0xd4, 0xf1, 0x86, 0x6e, 0xe8, 0xe4, 0x46, 0x69, 0x28, - 0x18, 0x8d, 0xa7, 0x1f, 0x3e, 0x41, 0xfe, 0x0f, 0xa5, 0xb9, 0x16, 0xb1, 0xf8, 0xc5, 0x87, 0x4f, - 0x50, 0xd3, 0xd6, 0x52, 0xb1, 0x59, 0x58, 0x7e, 0xfe, 0xe1, 0x13, 0x14, 0xde, 0x54, 0x1a, 0x6f, - 0x12, 0x9e, 0x67, 0x1f, 0x3e, 0x41, 0xa1, 0x2d, 0xa5, 0x99, 0xe6, 0x51, 0xfa, 0x85, 0x87, 0x4f, - 0x50, 0xb3, 0xc6, 0xd2, 0xc5, 0x40, 0xac, 0x9e, 0x7a, 0xf8, 0x04, 0xf9, 0x7e, 0x97, 0xde, 0x3a, - 0x21, 0xfa, 0xce, 0x3d, 0x7c, 0x82, 0x5a, 0x42, 0xd0, 0x91, 0x84, 0x06, 0xe3, 0x6c, 0x24, 0x61, - 0x2d, 0xa5, 0x91, 0xb0, 0x78, 0xbc, 0xff, 0xe1, 0x13, 0x74, 0xfc, 0x73, 0x69, 0xd0, 0x9f, 0x41, - 0x48, 0x3e, 0x7c, 0x82, 0xea, 0x3f, 0x4b, 0x53, 0x4d, 0xc3, 0xef, 0xc1, 0x87, 0x4f, 0x50, 0x93, - 0x36, 0xfe, 0x96, 0xe8, 0x29, 0xe3, 0x70, 0x1e, 0x81, 0xfb, 0x63, 0x6f, 0x1e, 0x99, 0xbf, 0x99, - 0xb9, 0xb1, 0x1a, 0x8b, 0xaf, 0x65, 0x6e, 0x8b, 0x38, 0xfc, 0x3f, 0x0e, 0x41, 0x5a, 0x22, 0xa6, - 0xa6, 0x94, 0xeb, 0x81, 0xf8, 0x59, 0x6c, 0x7d, 0x16, 0x5b, 0x9f, 0xc5, 0xd6, 0x67, 0xb1, 0xf5, - 0x59, 0x6c, 0x7d, 0x16, 0x5b, 0x9f, 0xc5, 0xd6, 0x67, 0xb1, 0xf5, 0x59, 0x6c, 0x7d, 0x16, 0x5b, - 0x9f, 0xc5, 0xd6, 0xbf, 0xda, 0xb1, 0xf5, 0x5f, 0x86, 0xc6, 0xd6, 0xff, 0x16, 0xc1, 0x50, 0x78, - 0x6c, 0xdd, 0xf9, 0xff, 0x2a, 0xb2, 0x9e, 0x6a, 0x1a, 0x59, 0x0f, 0x36, 0x8f, 0xac, 0xcf, 0xc2, - 0xea, 0xb3, 0xb0, 0xfa, 0x39, 0xc2, 0x6a, 0xfe, 0x3f, 0x48, 0x7c, 0xfe, 0xe0, 0xba, 0x1e, 0x56, - 0xff, 0xaf, 0x21, 0x48, 0xdc, 0x22, 0xce, 0xd9, 0xd9, 0xf6, 0x59, 0xfc, 0x7d, 0x16, 0x7f, 0x9f, - 0xc5, 0xdf, 0x67, 0xf1, 0xf7, 0x59, 0xfc, 0x7d, 0x16, 0x7f, 0x9f, 0xc5, 0xdf, 0x67, 0xf1, 0xf7, - 0x59, 0xfc, 0x7d, 0x16, 0x7f, 0xff, 0xff, 0x18, 0x7f, 0x7f, 0x1e, 0x1a, 0x7f, 0x7f, 0xfa, 0xcb, - 0x78, 0xb6, 0x3d, 0xda, 0x34, 0x02, 0xef, 0x6b, 0x88, 0xc0, 0xcf, 0x8e, 0xb4, 0xcf, 0x62, 0xef, - 0x5f, 0xbe, 0x23, 0xed, 0xb7, 0x21, 0x21, 0x36, 0x56, 0xc5, 0xa9, 0xda, 0xf8, 0x0d, 0x18, 0x54, - 0x0e, 0x14, 0x55, 0x63, 0x46, 0xf3, 0x58, 0x38, 0xcd, 0xdf, 0x30, 0xc9, 0x7a, 0x10, 0x0d, 0xf1, - 0x74, 0xde, 0x82, 0x81, 0x06, 0xeb, 0xe7, 0x3d, 0xf8, 0xf4, 0x0e, 0xa4, 0xea, 0x56, 0x54, 0x3c, - 0x9a, 0xfa, 0x0c, 0x77, 0x7c, 0xb2, 0x48, 0x4a, 0x7a, 0xf6, 0x94, 0xb6, 0xe5, 0x6d, 0x18, 0x68, - 0x62, 0x59, 0xf0, 0x6f, 0x42, 0xba, 0xd1, 0xd2, 0xf1, 0x4e, 0x5f, 0x3c, 0x85, 0x81, 0x0a, 0xf4, - 0x99, 0x0a, 0x5a, 0xa8, 0x91, 0x6f, 0x23, 0x38, 0x17, 0x7e, 0x31, 0x13, 0xbf, 0x08, 0x97, 0x97, - 0xee, 0x2c, 0x2c, 0xca, 0x0b, 0x6b, 0x77, 0xb7, 0xee, 0x2c, 0x49, 0xf2, 0xd6, 0xca, 0x9d, 0x25, - 0x79, 0x6d, 0x63, 0x61, 0x7e, 0x4d, 0x5e, 0x5f, 0xba, 0xf3, 0xce, 0x86, 0xf4, 0x76, 0xa6, 0x0d, - 0x8f, 0xc0, 0x2b, 0xcd, 0x80, 0x56, 0xd6, 0xb7, 0x56, 0x16, 0x97, 0x3c, 0x58, 0x84, 0x87, 0xe1, - 0xa5, 0xe3, 0xb0, 0xb7, 0xe7, 0xd7, 0xe7, 0x6f, 0x2d, 0xdd, 0x5e, 0x5a, 0xbf, 0xe3, 0x41, 0x46, - 0x46, 0x0e, 0x21, 0xcd, 0x43, 0x87, 0x8d, 0x07, 0x3a, 0xe1, 0x0f, 0x5f, 0x67, 0xa1, 0x6f, 0x71, - 0xe9, 0xde, 0xca, 0xc2, 0x92, 0xbc, 0xf1, 0xce, 0xfa, 0x92, 0x24, 0xaf, 0xac, 0xdf, 0x9b, 0x5f, - 0x5b, 0x59, 0xcc, 0xb4, 0xe1, 0x3e, 0xc8, 0x04, 0x5a, 0xee, 0x2d, 0x49, 0x19, 0x84, 0x2f, 0xc3, - 0x85, 0xe0, 0xd7, 0xb7, 0xe7, 0xb6, 0x64, 0x4a, 0x5e, 0x5e, 0xdb, 0x98, 0x5f, 0xcc, 0x44, 0x70, - 0x3f, 0xf4, 0x04, 0x00, 0x96, 0x37, 0xb6, 0xee, 0x64, 0xa2, 0x23, 0x63, 0xd0, 0xe5, 0x5d, 0x97, - 0xc4, 0x3d, 0x90, 0xbc, 0x7d, 0x77, 0xed, 0xce, 0xca, 0xe6, 0xda, 0x12, 0xe3, 0x36, 0xd3, 0x86, - 0xd3, 0x90, 0xd8, 0x5a, 0x59, 0xbf, 0xe5, 0x7e, 0x40, 0x23, 0x7f, 0x80, 0xe0, 0xb2, 0x10, 0x1b, - 0x75, 0x86, 0x02, 0xef, 0x8a, 0xdc, 0x15, 0xef, 0xa7, 0xbf, 0x00, 0x97, 0xc4, 0xe0, 0xe4, 0x95, - 0xf5, 0x3b, 0x4b, 0xd2, 0xcd, 0xf9, 0x85, 0x25, 0xf9, 0xee, 0xd6, 0x92, 0x2c, 0x2d, 0xdd, 0xba, - 0xbb, 0x36, 0x2f, 0x65, 0xda, 0x9a, 0x83, 0x6c, 0xdc, 0xbd, 0x43, 0xe5, 0x98, 0x41, 0x38, 0x07, - 0x17, 0xc3, 0x41, 0xb8, 0xa4, 0x33, 0x91, 0x91, 0x37, 0x21, 0xdd, 0xf0, 0xde, 0x16, 0x4e, 0x81, - 0xef, 0xb5, 0xad, 0x4c, 0x1b, 0x8e, 0x43, 0x8c, 0x82, 0x64, 0x10, 0xee, 0x84, 0xe8, 0xbd, 0x77, - 0xb6, 0x32, 0x11, 0xf6, 0xc7, 0xc2, 0x56, 0x26, 0x56, 0xfa, 0x06, 0x7a, 0xfc, 0xfd, 0xa1, 0xb6, - 0xcf, 0xbf, 0x3f, 0xd4, 0xf6, 0xe3, 0xef, 0x0f, 0xa1, 0x0f, 0x8f, 0x86, 0xd0, 0x3f, 0x3f, 0x1a, - 0x42, 0xdf, 0x3b, 0x1a, 0x42, 0x8f, 0x8f, 0x86, 0xd0, 0xe7, 0x47, 0x43, 0xe8, 0xaf, 0x8e, 0x86, - 0xd0, 0x97, 0x47, 0x43, 0x6d, 0x3f, 0x3e, 0x1a, 0x42, 0xdf, 0xfc, 0xc1, 0x50, 0xdb, 0x27, 0x3f, - 0x18, 0x42, 0x8f, 0x7f, 0x30, 0xd4, 0xf6, 0xf9, 0x0f, 0x86, 0xda, 0xde, 0x5d, 0xd9, 0x35, 0xcc, - 0xfb, 0xbb, 0xa3, 0x6e, 0x8e, 0x6a, 0xb4, 0x6a, 0x8f, 0xb1, 0x3f, 0xe8, 0x3e, 0x7e, 0xd5, 0xb4, - 0x8c, 0x03, 0xb5, 0x42, 0xac, 0xab, 0x6e, 0xf3, 0x98, 0xb9, 0xbd, 0x6b, 0x8c, 0x91, 0xf7, 0x1c, - 0xae, 0xba, 0x63, 0xe2, 0x1f, 0xa6, 0xc1, 0xdb, 0x1d, 0xec, 0x0d, 0xf9, 0xc9, 0xff, 0x1b, 0x00, - 0x00, 0xff, 0xff, 0xe1, 0x66, 0x5a, 0xcd, 0xcf, 0x94, 0x00, 0x00, + // 9348 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x6b, 0x6c, 0x1c, 0xd9, + 0x95, 0x1e, 0x6f, 0x77, 0x93, 0x6c, 0x9e, 0x66, 0x3f, 0x78, 0x49, 0x8a, 0x2d, 0x4a, 0xa2, 0x7a, + 0x7a, 0x5e, 0x14, 0xd5, 0xe2, 0xa3, 0xf9, 0x94, 0x66, 0x46, 0x3b, 0x6c, 0x92, 0x12, 0xc9, 0xa1, + 0x48, 0xba, 0x28, 0x6a, 0xec, 0xb1, 0xb3, 0xb5, 0xc5, 0xee, 0xcb, 0x66, 0x59, 0xcd, 0xaa, 0x72, + 0x55, 0x35, 0x35, 0x9c, 0x60, 0x90, 0x89, 0x82, 0xc4, 0xbb, 0xb3, 0x40, 0xe2, 0xb5, 0xfd, 0x23, + 0xf1, 0x22, 0xaf, 0x05, 0x02, 0x04, 0x02, 0x92, 0x05, 0xf2, 0x6b, 0xd7, 0x3d, 0x3f, 0x06, 0x93, + 0x2c, 0xe0, 0x4c, 0x82, 0x85, 0x7e, 0x25, 0x83, 0x49, 0x80, 0xac, 0xe9, 0xfc, 0x18, 0x1b, 0x48, + 0x62, 0xe4, 0x01, 0x18, 0x42, 0x02, 0x07, 0xf7, 0x51, 0xd5, 0x55, 0xcd, 0xea, 0x26, 0x25, 0xd9, + 0x5e, 0xaf, 0xc1, 0xf9, 0x23, 0x76, 0xdd, 0x73, 0xce, 0x3d, 0xf7, 0xde, 0x73, 0xcf, 0x3d, 0xe7, + 0xbb, 0x8f, 0x81, 0xcb, 0x07, 0xc4, 0x1a, 0x55, 0xf5, 0x31, 0xab, 0xb8, 0x47, 0xf6, 0x95, 0xb1, + 0xdd, 0x0a, 0x21, 0xf6, 0x98, 0x7d, 0x68, 0x10, 0x6b, 0xd4, 0x30, 0x75, 0x5b, 0xc7, 0xbd, 0x9c, + 0x60, 0x94, 0x13, 0x8c, 0x32, 0x82, 0xc1, 0x6b, 0x65, 0xd5, 0xde, 0xab, 0xee, 0x8c, 0x16, 0xf5, + 0xfd, 0xb1, 0xb2, 0x5e, 0xd6, 0xc7, 0x18, 0xed, 0x4e, 0x75, 0x97, 0xfd, 0x62, 0x3f, 0xd8, 0x5f, + 0x5c, 0xc6, 0xe0, 0xe5, 0xb2, 0xae, 0x97, 0x2b, 0xa4, 0x4e, 0x65, 0xab, 0xfb, 0xc4, 0xb2, 0x95, + 0x7d, 0x43, 0x10, 0x5c, 0xf2, 0x6b, 0xb1, 0x53, 0x36, 0xbc, 0x3a, 0x0c, 0x0e, 0xf8, 0x8b, 0x35, + 0x62, 0x8b, 0x82, 0x0b, 0xfe, 0x02, 0xdd, 0xb0, 0x55, 0x5d, 0xb3, 0x82, 0x85, 0x1a, 0x07, 0xb6, + 0xec, 0x15, 0x7a, 0xde, 0x5f, 0xec, 0x2d, 0xba, 0xe8, 0x2f, 0x3a, 0x50, 0x2a, 0x6a, 0x49, 0xb1, + 0x89, 0x28, 0xcd, 0x34, 0x94, 0xaa, 0xe4, 0x81, 0xec, 0xaf, 0xf9, 0xa5, 0xe3, 0x14, 0xd6, 0x98, + 0xa5, 0xda, 0xc4, 0xa7, 0xc0, 0xe5, 0x20, 0x2a, 0x0f, 0x41, 0xf6, 0x13, 0x04, 0x17, 0xd7, 0x89, + 0xfd, 0x40, 0x37, 0xef, 0xab, 0x5a, 0x79, 0x91, 0x1c, 0xa8, 0x45, 0xb2, 0xa2, 0x59, 0xb6, 0xa2, + 0x15, 0xc9, 0xdd, 0x43, 0x83, 0xe0, 0x77, 0xa0, 0x4b, 0xd5, 0x6c, 0x62, 0xee, 0x2a, 0x45, 0x92, + 0x0e, 0x65, 0xc2, 0xc3, 0xb1, 0xfc, 0xc5, 0x51, 0xff, 0x78, 0x6d, 0xec, 0x7c, 0x9d, 0x14, 0x6d, + 0x89, 0xec, 0x52, 0x86, 0xc2, 0xd0, 0xa3, 0xf7, 0x7b, 0x34, 0x2e, 0x51, 0x76, 0x39, 0xbf, 0xff, + 0xe3, 0x8f, 0xc3, 0xed, 0xdf, 0x46, 0xa1, 0x14, 0x92, 0xea, 0xe2, 0xf0, 0x2d, 0x08, 0x57, 0x2d, + 0x92, 0x0e, 0x67, 0xd0, 0x70, 0x22, 0x3f, 0x35, 0x1a, 0x60, 0x05, 0xa3, 0xcd, 0x74, 0xdb, 0xb6, + 0x98, 0x7a, 0x12, 0x15, 0x90, 0xbd, 0x00, 0xe7, 0x6f, 0x13, 0x8d, 0x98, 0x6a, 0xf1, 0x78, 0x03, + 0xb2, 0xdf, 0x0e, 0x03, 0x0e, 0x68, 0x17, 0x86, 0x88, 0xa6, 0xec, 0x93, 0x34, 0xca, 0xa0, 0xe1, + 0x2e, 0x89, 0xfd, 0x8d, 0x6f, 0x43, 0xbb, 0xfe, 0x40, 0x23, 0xa6, 0xd0, 0xe8, 0xa5, 0x40, 0x8d, + 0xb8, 0xac, 0x0d, 0x4a, 0xc7, 0xda, 0x1b, 0xa3, 0x6d, 0xeb, 0x78, 0x88, 0xc2, 0x83, 0x08, 0x49, + 0x9c, 0x1f, 0xbf, 0x03, 0x09, 0xa7, 0x0b, 0x4a, 0x8c, 0x3c, 0x1d, 0xc9, 0xa0, 0xe1, 0x58, 0x7e, + 0xe2, 0xa9, 0xda, 0x48, 0xc5, 0x2f, 0xb7, 0x49, 0x71, 0x21, 0x8a, 0x17, 0xde, 0xf8, 0x2e, 0xfa, + 0xa4, 0x86, 0x2e, 0xc0, 0x79, 0xe8, 0xe3, 0x1f, 0x32, 0x0b, 0xba, 0xb6, 0xab, 0x96, 0xab, 0xa6, + 0x42, 0xcd, 0x03, 0xa3, 0x89, 0x4f, 0x6b, 0xe8, 0x1b, 0x90, 0x80, 0xc8, 0xba, 0xb2, 0x4f, 0x06, + 0x3b, 0x78, 0x33, 0x01, 0x43, 0x3b, 0x53, 0x79, 0xb0, 0x4b, 0xb4, 0x31, 0x83, 0xe0, 0x55, 0xe8, + 0x5a, 0x71, 0xc6, 0x62, 0x70, 0x10, 0xd2, 0x7e, 0x95, 0x47, 0xdd, 0x71, 0x82, 0x2c, 0x44, 0xb7, + 0x2d, 0x92, 0xa1, 0xfa, 0x0c, 0x9e, 0x03, 0xdc, 0x40, 0x57, 0xb5, 0x48, 0x06, 0x15, 0x32, 0x90, + 0xe4, 0xbf, 0x65, 0x55, 0xa8, 0x8f, 0xe3, 0x1f, 0xd7, 0x50, 0xe4, 0x71, 0x0d, 0xb5, 0x1f, 0xd5, + 0x10, 0x9a, 0x5a, 0x8d, 0x44, 0x43, 0xa9, 0xf0, 0x6a, 0x24, 0xda, 0x9e, 0xea, 0xc8, 0xfe, 0x01, + 0x82, 0x73, 0xb7, 0x68, 0xe3, 0x5d, 0x05, 0xd6, 0x54, 0xcb, 0x66, 0x03, 0xf3, 0x00, 0xc0, 0xad, + 0xd9, 0x4a, 0x23, 0x66, 0x71, 0xd9, 0x86, 0x7e, 0x63, 0x76, 0xdc, 0x60, 0x77, 0x93, 0xcd, 0xec, + 0xae, 0xe3, 0xdb, 0x28, 0x9c, 0xfa, 0x20, 0xe4, 0x98, 0x60, 0x14, 0x39, 0x7f, 0xa5, 0x91, 0xe4, + 0xa9, 0x2a, 0xab, 0x41, 0x2f, 0x53, 0x89, 0x77, 0xab, 0xab, 0xcf, 0xdb, 0xd0, 0xc9, 0x1b, 0x66, + 0xa5, 0xc3, 0x4c, 0x99, 0x57, 0x5b, 0x98, 0x85, 0x77, 0xe8, 0x0a, 0x7d, 0xae, 0xd5, 0x47, 0x3d, + 0x55, 0x3a, 0xd2, 0xb2, 0xff, 0xba, 0x1d, 0x2e, 0x6f, 0xd9, 0xba, 0xa9, 0x94, 0x09, 0x67, 0x5e, + 0x24, 0x95, 0xca, 0x8a, 0xa5, 0x56, 0x74, 0xed, 0xd6, 0xdc, 0xf8, 0x38, 0xab, 0xfc, 0x26, 0x44, + 0xab, 0x16, 0x31, 0xeb, 0x96, 0x5a, 0xc8, 0xfe, 0xac, 0x86, 0x22, 0x7f, 0xf4, 0x11, 0xea, 0xd8, + 0x51, 0x2c, 0x32, 0x33, 0xc5, 0x04, 0x9b, 0xe1, 0xe1, 0x0f, 0x90, 0xf8, 0xeb, 0x5b, 0x08, 0x49, + 0x2e, 0x0f, 0x7e, 0x0d, 0xa2, 0x86, 0x62, 0x59, 0x0f, 0x74, 0xb3, 0x94, 0x0e, 0x31, 0x13, 0x3c, + 0xdf, 0xa0, 0xfd, 0x16, 0x29, 0x9a, 0x84, 0xb5, 0xb4, 0x40, 0xc7, 0x0a, 0x49, 0x2e, 0x03, 0x7e, + 0x03, 0x12, 0x16, 0x29, 0x56, 0x4d, 0x22, 0x8b, 0x7e, 0x15, 0x56, 0xdc, 0xd7, 0x20, 0x62, 0x69, + 0xdf, 0xb0, 0x0f, 0xa9, 0xa1, 0x72, 0x6a, 0x61, 0xce, 0xf8, 0x2e, 0x24, 0x6c, 0xb3, 0x6a, 0xd9, + 0xa4, 0x24, 0x17, 0x15, 0xb9, 0x6a, 0x56, 0xd2, 0xed, 0xac, 0x05, 0xb9, 0x8f, 0x6b, 0x08, 0x89, + 0x56, 0xc4, 0x0c, 0xb2, 0x9f, 0xcb, 0xd4, 0x9b, 0xd2, 0x61, 0x46, 0x86, 0x3f, 0xf8, 0x20, 0x5a, + 0x6f, 0xcb, 0x72, 0x9b, 0xd4, 0x2d, 0xa4, 0x2c, 0x28, 0xdb, 0x66, 0x05, 0x4f, 0x42, 0x52, 0x31, + 0x54, 0xd9, 0x22, 0xe6, 0x01, 0x31, 0x65, 0xd6, 0x31, 0x9d, 0x4c, 0x6c, 0x17, 0x65, 0x8a, 0x98, + 0xa1, 0x3d, 0xb4, 0x8c, 0xa4, 0xb8, 0x62, 0xa8, 0x5b, 0x8c, 0x84, 0xce, 0x02, 0x7c, 0x13, 0xfa, + 0x3d, 0x4c, 0xaa, 0x21, 0x2b, 0xa5, 0x92, 0x49, 0x2c, 0x2b, 0x1d, 0xf5, 0xb1, 0xbe, 0x4b, 0x59, + 0xb1, 0xcb, 0xba, 0x62, 0xcc, 0x73, 0x32, 0x3c, 0xed, 0xab, 0xd4, 0xd0, 0x4d, 0x3b, 0xdd, 0x95, + 0x41, 0xc3, 0xf1, 0x42, 0x9c, 0x72, 0x46, 0x47, 0x3a, 0xd2, 0x3f, 0xff, 0x79, 0x78, 0xd8, 0x5b, + 0xed, 0xa6, 0x6e, 0xda, 0x78, 0x06, 0x7a, 0x54, 0xab, 0x68, 0xa9, 0xb2, 0x52, 0x2c, 0x12, 0xcb, + 0x92, 0xdf, 0xd3, 0x35, 0x92, 0x06, 0x56, 0x25, 0x88, 0x26, 0xa6, 0x3f, 0x40, 0x52, 0x92, 0x11, + 0xcd, 0x33, 0x9a, 0x77, 0x74, 0x8d, 0xe0, 0x51, 0x88, 0x1f, 0xe8, 0x95, 0xea, 0x3e, 0x91, 0x0d, + 0x93, 0xec, 0xaa, 0xef, 0xa6, 0x63, 0x3e, 0x35, 0xd3, 0x6f, 0x4a, 0xdd, 0xbc, 0x7c, 0x93, 0x15, + 0xe3, 0x11, 0xe8, 0xa2, 0x5d, 0x28, 0x1b, 0x8a, 0xbd, 0x97, 0xee, 0x66, 0xb4, 0x5c, 0x31, 0xb3, + 0x23, 0xfd, 0x41, 0xe8, 0x4f, 0x42, 0x48, 0x8a, 0xd2, 0xf2, 0x4d, 0xc5, 0xde, 0x2b, 0x5c, 0x86, + 0xee, 0x3d, 0xdb, 0x36, 0x2c, 0xb9, 0xb8, 0xa7, 0xab, 0x45, 0x82, 0x93, 0x62, 0x92, 0x86, 0x8f, + 0x6a, 0x28, 0x3c, 0x95, 0x9b, 0x2e, 0xbc, 0x00, 0x09, 0xd1, 0x3b, 0x5e, 0x92, 0xce, 0xc7, 0x35, + 0xd4, 0x41, 0x49, 0x66, 0x73, 0x73, 0xab, 0x91, 0x68, 0x38, 0x15, 0x59, 0x8d, 0x44, 0x3b, 0x52, + 0x9d, 0xd9, 0xff, 0x18, 0x86, 0x97, 0x7d, 0x56, 0xbc, 0xbc, 0xb9, 0xb4, 0xae, 0xee, 0xef, 0x54, + 0x2d, 0xf1, 0x75, 0x7e, 0x77, 0x8a, 0xdb, 0xf2, 0x75, 0xe8, 0xb5, 0xf8, 0x27, 0xdf, 0xe8, 0xa1, + 0x86, 0xd1, 0x93, 0x7a, 0x04, 0x95, 0x67, 0xfc, 0x16, 0xe1, 0x7c, 0x03, 0xab, 0x67, 0x0c, 0x43, + 0x0d, 0x63, 0x28, 0x9d, 0xf3, 0x09, 0x68, 0x39, 0x8a, 0xe1, 0x53, 0x8c, 0xa2, 0x77, 0x0e, 0x46, + 0x9e, 0x73, 0x0e, 0xb6, 0x3f, 0xed, 0x1c, 0x1c, 0x83, 0x98, 0x41, 0xcc, 0x5d, 0xd9, 0xd0, 0x2b, + 0x6a, 0xf1, 0x30, 0xdd, 0xc1, 0xea, 0x4f, 0xfc, 0xac, 0x86, 0xda, 0x3c, 0x06, 0x04, 0x94, 0x64, + 0x93, 0x51, 0xe0, 0x17, 0x01, 0x2a, 0xea, 0xbe, 0x6a, 0xcb, 0xaa, 0x6e, 0x58, 0x6c, 0x6a, 0xc4, + 0x0b, 0x11, 0x4a, 0x2f, 0x75, 0xb1, 0xef, 0x2b, 0xba, 0x61, 0xd5, 0x89, 0xf6, 0x77, 0x0c, 0x3e, + 0x09, 0xfc, 0x44, 0x77, 0x76, 0x0c, 0x2b, 0xfb, 0x27, 0x21, 0x18, 0xf3, 0x8d, 0xec, 0x66, 0xd5, + 0x24, 0x5b, 0xf5, 0xae, 0xa5, 0xab, 0xa0, 0x59, 0xdc, 0x23, 0x96, 0x6d, 0x2a, 0xb6, 0xce, 0x16, + 0x43, 0xfc, 0x5b, 0x00, 0xc5, 0x0a, 0x9d, 0xad, 0xa6, 0xac, 0x96, 0xc4, 0xd0, 0x66, 0xc4, 0xc4, + 0x4e, 0xa1, 0xf4, 0x39, 0xfa, 0x67, 0xca, 0x4c, 0xe4, 0xbb, 0x7f, 0xfb, 0xab, 0xca, 0xb5, 0xf7, + 0xc6, 0xaf, 0x5d, 0x97, 0xff, 0xda, 0xc8, 0x4b, 0x52, 0x97, 0xe0, 0x59, 0x29, 0xe1, 0x37, 0x61, + 0x80, 0x68, 0xca, 0x4e, 0x85, 0xc8, 0xce, 0x80, 0xdb, 0xba, 0xa1, 0x57, 0xf4, 0xf2, 0x21, 0x1b, + 0xe7, 0x68, 0x21, 0x2a, 0xbc, 0x47, 0x9b, 0xd4, 0xcf, 0x09, 0x85, 0x46, 0x77, 0x05, 0x19, 0xbe, + 0x09, 0xe7, 0x5c, 0x09, 0xa6, 0x5a, 0xb4, 0xeb, 0x02, 0xc2, 0x0d, 0x02, 0xfa, 0x1c, 0x01, 0x94, + 0xcc, 0xe5, 0x2f, 0x40, 0x87, 0x62, 0x9a, 0xca, 0xa1, 0x25, 0xbc, 0xdd, 0x48, 0xa0, 0xbb, 0xdf, + 0xb4, 0xf4, 0x79, 0x4a, 0xe5, 0x5b, 0x7c, 0x25, 0xc1, 0x99, 0xfd, 0x63, 0x04, 0xfd, 0x81, 0x14, + 0x78, 0x15, 0x62, 0xbb, 0x15, 0xc5, 0xda, 0x93, 0x19, 0x25, 0xeb, 0xa1, 0x58, 0xfe, 0xc5, 0xc0, + 0x2a, 0x6e, 0x51, 0x3a, 0x26, 0xc2, 0x63, 0x19, 0xb0, 0xeb, 0x7e, 0xad, 0xcb, 0xda, 0xa9, 0x28, + 0x25, 0x22, 0xfc, 0x7b, 0x0b, 0x59, 0x05, 0x4a, 0x76, 0x4c, 0x16, 0xfb, 0x9a, 0xfd, 0x5f, 0x08, + 0x12, 0x7e, 0x22, 0xfc, 0x26, 0x9c, 0x77, 0x3a, 0x52, 0x53, 0x0c, 0x6b, 0x4f, 0xb7, 0xe5, 0x92, + 0x6a, 0x92, 0xa2, 0xad, 0x9b, 0x5c, 0xf1, 0xa8, 0xb0, 0x19, 0x31, 0x62, 0x5b, 0x82, 0x6a, 0xd1, + 0x21, 0xc2, 0x93, 0xd0, 0x4d, 0xde, 0xa5, 0xf3, 0x4c, 0x36, 0xab, 0x15, 0xe2, 0xcc, 0xd4, 0x94, + 0x63, 0xbd, 0x9d, 0x66, 0x7b, 0x0a, 0xa5, 0x9f, 0x20, 0x29, 0xc6, 0xa9, 0x24, 0x4a, 0x84, 0xbf, + 0x0e, 0xdd, 0x9e, 0x56, 0xb5, 0x5e, 0x74, 0xeb, 0x1a, 0x2f, 0x69, 0x25, 0x43, 0x57, 0x35, 0xbb, + 0x30, 0x74, 0x7c, 0xd1, 0xf5, 0xad, 0xf8, 0xb1, 0x7a, 0xa3, 0xad, 0xec, 0xcf, 0x3a, 0x00, 0x1f, + 0x97, 0x81, 0x87, 0xa1, 0x73, 0xbf, 0xbc, 0x6f, 0xcb, 0xaa, 0x21, 0x54, 0x8e, 0x3b, 0x2a, 0x47, + 0xcc, 0x90, 0x41, 0xd7, 0xa4, 0x0e, 0x5a, 0xbe, 0x62, 0xe0, 0x37, 0x20, 0xce, 0x28, 0x4b, 0x9a, + 0xc5, 0xbd, 0x59, 0x98, 0xd1, 0x0f, 0xf8, 0x26, 0x68, 0xa8, 0xbe, 0x32, 0xb5, 0x49, 0x31, 0x4a, + 0xbf, 0xa8, 0x59, 0xcc, 0xaf, 0xbd, 0x0e, 0x5d, 0xd4, 0x23, 0xd9, 0xfa, 0x7d, 0xa2, 0x09, 0x73, + 0x3b, 0xd9, 0x37, 0x28, 0x86, 0x7a, 0x97, 0x32, 0xe0, 0x59, 0x48, 0x6a, 0xbb, 0x96, 0x4c, 0x84, + 0xda, 0x54, 0xdd, 0x8e, 0x20, 0x75, 0x91, 0x14, 0xd7, 0x76, 0x2d, 0xa7, 0x75, 0x2b, 0x06, 0x5e, + 0x83, 0x7e, 0x1f, 0xa3, 0xab, 0x7d, 0x67, 0x6b, 0xed, 0x91, 0x84, 0x3d, 0x82, 0x9c, 0x46, 0x7c, + 0x33, 0x04, 0x1d, 0x15, 0x6a, 0x00, 0xd4, 0x93, 0xd0, 0xb1, 0x9a, 0x3c, 0xe5, 0x58, 0x8d, 0xae, + 0x31, 0xae, 0x25, 0xcd, 0x36, 0x0f, 0x0b, 0x7f, 0xca, 0x06, 0xa9, 0xfb, 0x7b, 0xa8, 0x2b, 0xcb, + 0xed, 0x42, 0x78, 0xd3, 0xef, 0xa1, 0x50, 0xaa, 0xcf, 0x29, 0x1a, 0x71, 0x8a, 0x8e, 0xfe, 0xe2, + 0xcf, 0xc2, 0xbd, 0x1f, 0x7e, 0x84, 0x92, 0x38, 0xfe, 0x93, 0x1a, 0xea, 0x5a, 0x53, 0x76, 0x48, + 0x25, 0x73, 0x9f, 0x1c, 0x7a, 0xbe, 0x1f, 0xb9, 0xdf, 0xdf, 0xe2, 0xdf, 0xe1, 0xc3, 0x8f, 0x50, + 0x07, 0x8e, 0xfc, 0xa0, 0x86, 0xda, 0xe8, 0xcf, 0x8e, 0x0f, 0x3f, 0xa2, 0xa6, 0x41, 0xff, 0xec, + 0xff, 0xf0, 0x23, 0xd4, 0x33, 0x98, 0xfc, 0x49, 0x0d, 0xc5, 0x38, 0xc7, 0x81, 0x52, 0xa9, 0x12, + 0x4f, 0xc9, 0x91, 0x5b, 0x72, 0xcf, 0x29, 0x61, 0xd2, 0x06, 0x99, 0x34, 0x49, 0x34, 0x7f, 0xf0, + 0x3a, 0xc4, 0x3c, 0x4d, 0xc2, 0x29, 0x08, 0xdf, 0x27, 0x87, 0x22, 0xc3, 0xa0, 0x7f, 0xe2, 0x3e, + 0x68, 0x67, 0xa2, 0xb9, 0x59, 0x49, 0xfc, 0xc7, 0x8d, 0xd0, 0x1c, 0xba, 0xf1, 0x8f, 0xd1, 0xa7, + 0x35, 0xf4, 0x3d, 0x04, 0xa3, 0x80, 0xef, 0x28, 0x9a, 0x52, 0x26, 0xfb, 0x44, 0xb3, 0x33, 0xb4, + 0x7f, 0xc7, 0x56, 0x36, 0xf3, 0x69, 0xd7, 0x20, 0x1b, 0xec, 0x0d, 0xd2, 0xd0, 0x35, 0xbf, 0xb9, + 0x92, 0x61, 0x06, 0x31, 0x18, 0xf3, 0x98, 0x13, 0xcc, 0x41, 0xf7, 0xfa, 0xad, 0xad, 0x8c, 0xd3, + 0xd9, 0xf9, 0xe1, 0x63, 0xd6, 0xd2, 0xc4, 0x0a, 0xa0, 0x0f, 0x3a, 0x58, 0x63, 0xad, 0x55, 0x70, + 0x46, 0x36, 0x15, 0x2e, 0x64, 0x44, 0xd5, 0x0e, 0x3d, 0x0b, 0x0b, 0x42, 0xd4, 0x24, 0x69, 0x58, + 0x90, 0xcf, 0x4d, 0xd2, 0xd0, 0xc2, 0x2b, 0x90, 0x11, 0x74, 0x88, 0xf8, 0x3f, 0x3c, 0x93, 0x9b, + 0x5d, 0x8d, 0x44, 0x51, 0x2a, 0x24, 0x32, 0x80, 0xef, 0x46, 0x84, 0xc3, 0x71, 0x3d, 0x1c, 0xbe, + 0x01, 0x51, 0x4b, 0xd1, 0x58, 0xfe, 0x2a, 0x96, 0x8e, 0xcb, 0x9f, 0xd7, 0x50, 0xfb, 0xca, 0xd6, + 0xc2, 0xd6, 0x8a, 0x63, 0x92, 0x71, 0x33, 0x26, 0xf1, 0x2f, 0x52, 0xe8, 0xd6, 0x82, 0xd4, 0x69, + 0x29, 0x1a, 0xe3, 0x5d, 0xa2, 0xe9, 0xc7, 0xae, 0x52, 0xad, 0xd8, 0xf2, 0xae, 0xc5, 0x45, 0xf0, + 0xa9, 0x7b, 0xe9, 0xf3, 0x1a, 0x0a, 0xbf, 0xbb, 0x6b, 0x79, 0x05, 0xd0, 0xdf, 0x52, 0x84, 0xbc, + 0x6b, 0x4f, 0x49, 0x71, 0xc1, 0x75, 0xcb, 0x62, 0x62, 0x66, 0x20, 0xe1, 0x11, 0xa3, 0x1b, 0xb6, + 0x98, 0xd0, 0x0d, 0x3e, 0xeb, 0x03, 0x24, 0x75, 0xbb, 0x8c, 0x1b, 0x86, 0x8d, 0x6f, 0x01, 0x76, + 0xf8, 0xf6, 0xf5, 0xaa, 0x66, 0x53, 0x56, 0xba, 0x80, 0x84, 0x87, 0xbb, 0x0a, 0x69, 0x77, 0x3a, + 0x51, 0xaf, 0x14, 0xf1, 0xf8, 0xa2, 0x94, 0xe0, 0xb9, 0x43, 0x59, 0x36, 0x0c, 0xdb, 0xc2, 0x8b, + 0x70, 0xa1, 0xa4, 0x5a, 0xcc, 0xe9, 0x1a, 0x26, 0x21, 0xfb, 0x86, 0x2d, 0x2b, 0xb6, 0xad, 0x14, + 0xf7, 0xa8, 0x39, 0x58, 0x2c, 0x7c, 0x70, 0xbc, 0xee, 0x79, 0x41, 0xb8, 0xc9, 0xe9, 0xe6, 0xeb, + 0x64, 0xf8, 0x0e, 0xf4, 0xf2, 0xb8, 0xb3, 0xa2, 0x97, 0x55, 0x4d, 0xb6, 0xd5, 0x7d, 0xa2, 0x57, + 0x6d, 0xe6, 0x1c, 0xda, 0x59, 0x87, 0x84, 0xf2, 0xe3, 0x47, 0x35, 0x14, 0x81, 0x50, 0x7e, 0xdc, + 0x51, 0xae, 0x63, 0x24, 0x92, 0x2e, 0x0d, 0x23, 0x89, 0x47, 0xac, 0x6b, 0x94, 0xf1, 0x2e, 0xe7, + 0xab, 0x7b, 0x64, 0xb1, 0x2e, 0x76, 0x9e, 0xe4, 0x91, 0xd9, 0x90, 0x3e, 0xa5, 0x47, 0x9e, 0xe7, + 0x2b, 0xe7, 0xdf, 0x6d, 0x17, 0x1e, 0xd9, 0x27, 0xe3, 0xaf, 0x8a, 0x47, 0x16, 0xae, 0x90, 0x54, + 0xe8, 0x50, 0x9d, 0xe0, 0x0a, 0x7d, 0x0d, 0x1c, 0xe5, 0x13, 0xee, 0x37, 0xc3, 0x15, 0x92, 0x8a, + 0xe3, 0x0a, 0x9d, 0x26, 0x3d, 0x95, 0x2b, 0x2c, 0x7d, 0x5a, 0x43, 0xbf, 0xf3, 0x0b, 0x74, 0x84, + 0x8d, 0xee, 0x8c, 0x54, 0x4e, 0xe5, 0xce, 0xb8, 0xb7, 0xca, 0xfe, 0x69, 0x08, 0x86, 0x7c, 0x51, + 0xf0, 0x3a, 0xb1, 0x15, 0xc3, 0xb8, 0x6b, 0xaa, 0x25, 0xa2, 0x71, 0x84, 0xe0, 0x80, 0x41, 0x27, + 0x8a, 0x61, 0xc8, 0x3b, 0x4a, 0xf1, 0x3e, 0xd1, 0x4a, 0xb2, 0xae, 0xd9, 0x8a, 0x21, 0x6b, 0x8a, + 0x25, 0x82, 0xb2, 0xd7, 0x02, 0xcd, 0x20, 0x40, 0x6c, 0x81, 0x0b, 0xd8, 0xa0, 0xfc, 0xeb, 0x8a, + 0x25, 0x10, 0xa0, 0x7e, 0x2d, 0xa8, 0xb0, 0x69, 0xbd, 0x96, 0xa2, 0x31, 0xab, 0x7f, 0xc6, 0x7a, + 0xb7, 0xb8, 0x4b, 0x0d, 0xae, 0x77, 0x4b, 0xd1, 0x68, 0x86, 0xe8, 0x54, 0xe8, 0xc9, 0x10, 0x03, + 0xfa, 0xee, 0x0f, 0x92, 0xf0, 0xca, 0xe9, 0x2a, 0xc3, 0x7f, 0xbd, 0x9e, 0x1c, 0x96, 0x4c, 0xb5, + 0x21, 0x39, 0x7c, 0xeb, 0xf3, 0x1a, 0xea, 0x62, 0x6d, 0xbb, 0x66, 0x29, 0x9a, 0x33, 0x93, 0xa7, + 0xcd, 0x49, 0xa9, 0xfe, 0x55, 0xea, 0x71, 0xff, 0xbc, 0x46, 0x8a, 0xba, 0xa6, 0xef, 0x1f, 0x4a, + 0xbd, 0xfc, 0x93, 0xa6, 0x58, 0xd7, 0x76, 0x2b, 0xe4, 0xdd, 0xb2, 0xa9, 0x57, 0x0d, 0x37, 0xbd, + 0x5c, 0x64, 0xd5, 0xac, 0xf3, 0x0c, 0xad, 0x67, 0xdf, 0xb5, 0x35, 0xb9, 0xa2, 0xee, 0x52, 0x3f, + 0x13, 0x09, 0xf6, 0x33, 0xc9, 0x3a, 0xe5, 0x9a, 0xba, 0xbb, 0x62, 0xe0, 0x4d, 0x18, 0x68, 0x60, + 0x76, 0x5d, 0x4f, 0xfb, 0x49, 0xae, 0xa7, 0xcf, 0x27, 0xcc, 0xf1, 0x41, 0x63, 0x10, 0x2b, 0x29, + 0xb6, 0xe2, 0x28, 0xd2, 0x19, 0x1c, 0xd3, 0x75, 0x51, 0x1a, 0xae, 0xc2, 0x22, 0xf4, 0xb8, 0x0c, + 0x6e, 0xe5, 0xd1, 0x93, 0x62, 0xb9, 0x84, 0x10, 0xe0, 0x54, 0x3b, 0x04, 0x61, 0xeb, 0x60, 0x9f, + 0x01, 0x1b, 0x5d, 0x85, 0x6e, 0xcf, 0x62, 0x17, 0x92, 0x68, 0x01, 0x1e, 0xf6, 0xe4, 0xc1, 0x10, + 0x40, 0x14, 0x9c, 0xf1, 0xc6, 0x9e, 0x3e, 0xe3, 0xed, 0xd4, 0x74, 0xb9, 0xb8, 0xa7, 0x18, 0xe9, + 0x78, 0x0b, 0xb8, 0x29, 0x24, 0x75, 0x68, 0xfa, 0xc2, 0x9e, 0x62, 0xe0, 0x6d, 0xa6, 0x17, 0xe7, + 0x48, 0x30, 0x8e, 0xb9, 0x16, 0x08, 0x5d, 0xa0, 0x09, 0x52, 0x39, 0xcc, 0xe6, 0x43, 0x52, 0x67, + 0xd5, 0x22, 0x4c, 0xec, 0x35, 0x88, 0xa9, 0xcc, 0x62, 0x78, 0x77, 0xf6, 0x04, 0xb4, 0x18, 0x38, + 0x01, 0xeb, 0xbd, 0x1b, 0x90, 0x70, 0x0c, 0x58, 0x80, 0x36, 0x98, 0x71, 0xf4, 0x3a, 0xe9, 0x66, + 0x3d, 0x0b, 0xde, 0x94, 0xe2, 0x82, 0x54, 0xe0, 0x37, 0x4b, 0xd0, 0xcf, 0xd3, 0x71, 0xa5, 0x5c, + 0x36, 0x49, 0x59, 0xb1, 0x89, 0x5c, 0xb5, 0x94, 0x32, 0x49, 0xf7, 0xb2, 0xcc, 0xbc, 0xc7, 0x2b, + 0x22, 0x32, 0x12, 0x4a, 0x97, 0xa4, 0x5e, 0x46, 0x3f, 0xef, 0x90, 0x6f, 0x53, 0x6a, 0x3c, 0x05, + 0x3d, 0x5c, 0x8c, 0x00, 0x8f, 0x2c, 0xf5, 0x3d, 0x92, 0xee, 0x63, 0x8b, 0x7e, 0x3d, 0xe9, 0x4d, + 0x32, 0x92, 0x7b, 0x8c, 0x62, 0x4b, 0x7d, 0x8f, 0xe0, 0xaf, 0x42, 0x52, 0xd0, 0x8b, 0x68, 0xc4, + 0x4a, 0xf7, 0xb3, 0x5e, 0x1c, 0x0e, 0xec, 0x45, 0xd6, 0x65, 0x9c, 0x7d, 0x51, 0xd0, 0x7b, 0xa4, + 0x27, 0x0e, 0x7c, 0x25, 0xf8, 0x0f, 0xeb, 0x0b, 0xe2, 0x39, 0xb6, 0x20, 0xde, 0x7e, 0x0e, 0x8f, + 0xf4, 0x9b, 0xb6, 0x48, 0xe2, 0x8b, 0xd0, 0x61, 0x92, 0xb2, 0xaa, 0x6b, 0xe9, 0x01, 0x66, 0x2b, + 0x3c, 0xb0, 0x13, 0xdf, 0xf0, 0xef, 0x40, 0xa7, 0x30, 0x93, 0x74, 0x9a, 0xf5, 0xdd, 0x78, 0x8b, + 0x01, 0x51, 0x4d, 0xbb, 0xaa, 0x54, 0x44, 0x3f, 0x6e, 0xea, 0x7a, 0xa5, 0x15, 0x02, 0x2d, 0xc4, + 0xe2, 0x37, 0x00, 0x17, 0x2b, 0x2a, 0x75, 0x5b, 0x45, 0x62, 0xda, 0xea, 0xae, 0x5a, 0x54, 0x6c, + 0x92, 0x3e, 0xef, 0x62, 0x4c, 0x61, 0xd7, 0x71, 0xbc, 0x29, 0xf5, 0x70, 0xca, 0x85, 0x3a, 0x21, + 0xbe, 0xe3, 0xb2, 0x1b, 0xa6, 0x7a, 0x40, 0xad, 0x96, 0xae, 0xf1, 0x83, 0xa7, 0x9b, 0xf0, 0x29, + 0xce, 0xba, 0xc9, 0x39, 0xdf, 0x22, 0x87, 0x78, 0x11, 0xce, 0x79, 0xf0, 0x62, 0xaf, 0x46, 0x17, + 0x02, 0x35, 0xea, 0x73, 0x71, 0x61, 0x8f, 0x52, 0xcf, 0x13, 0x78, 0xe8, 0x9f, 0xd4, 0xd0, 0x7d, + 0xb8, 0x05, 0x83, 0xa2, 0x1b, 0x33, 0xc2, 0x06, 0x33, 0x9b, 0x8a, 0xa9, 0xec, 0x13, 0x9b, 0x98, + 0x16, 0x1e, 0x9e, 0xc8, 0x4d, 0xe6, 0x66, 0x72, 0xd7, 0x73, 0x13, 0xe3, 0xb9, 0x89, 0x89, 0xdc, + 0x44, 0x3e, 0x97, 0x9f, 0xce, 0xe5, 0x67, 0x72, 0xf9, 0xd9, 0xdc, 0xc4, 0x6c, 0x6e, 0x62, 0x2e, + 0x37, 0x71, 0x3d, 0x97, 0x1f, 0xcf, 0xe5, 0x27, 0xe0, 0x05, 0xe8, 0x17, 0xa3, 0x92, 0x71, 0xe4, + 0xd1, 0x71, 0xb1, 0x70, 0x34, 0x9f, 0xcf, 0xe5, 0x27, 0x73, 0xf9, 0x29, 0xba, 0x90, 0xfa, 0x97, + 0x8e, 0xe3, 0x68, 0xec, 0x05, 0x88, 0x3a, 0xae, 0xfd, 0x18, 0x0e, 0x5b, 0xc8, 0x40, 0x8c, 0x7a, + 0x3d, 0x67, 0x15, 0xa6, 0x7e, 0x22, 0xfe, 0xb8, 0x86, 0xba, 0x8f, 0x6a, 0xa8, 0x7d, 0x62, 0x32, + 0x37, 0x31, 0xe5, 0x45, 0x6a, 0x57, 0x23, 0xd1, 0xee, 0x54, 0x3c, 0xfb, 0x3f, 0x42, 0xf0, 0xe2, + 0x29, 0x3c, 0x21, 0xbe, 0x0e, 0x71, 0x26, 0xbb, 0x61, 0xfb, 0xa1, 0xcf, 0xeb, 0x8b, 0x5c, 0x47, + 0xd8, 0x4d, 0x49, 0xb7, 0x1d, 0xf7, 0x7f, 0x0b, 0xfa, 0x18, 0xab, 0xad, 0x98, 0x65, 0x62, 0xd7, + 0x25, 0x84, 0x5a, 0x48, 0xc0, 0x94, 0xe3, 0x2e, 0x63, 0x70, 0xe5, 0x7c, 0x15, 0xfa, 0x99, 0x1c, + 0x55, 0x53, 0x6d, 0x55, 0xb1, 0x75, 0x53, 0xb6, 0x98, 0x15, 0x89, 0xe0, 0xa6, 0x85, 0x89, 0x75, + 0xd3, 0x3a, 0x1e, 0x3b, 0x4e, 0xa9, 0x97, 0x4a, 0x59, 0x71, 0x84, 0x70, 0x32, 0xbc, 0x07, 0x17, + 0xbd, 0x4a, 0x1e, 0xab, 0x23, 0xf2, 0x74, 0x75, 0x9c, 0xaf, 0xeb, 0xdf, 0x50, 0x53, 0xf6, 0x1f, + 0x9d, 0x1c, 0x05, 0x89, 0x50, 0xef, 0xd4, 0x51, 0x90, 0xa6, 0x58, 0x01, 0x51, 0x90, 0xa6, 0x58, + 0x4e, 0x14, 0x44, 0x43, 0x9e, 0xa7, 0x8d, 0x82, 0x66, 0xa0, 0xdb, 0x09, 0xeb, 0x3c, 0xc3, 0x15, + 0xb0, 0x7e, 0xe5, 0xa5, 0x98, 0x20, 0x3c, 0x8b, 0x9e, 0x7e, 0xdd, 0xa2, 0xa7, 0x19, 0xc0, 0x4a, + 0xd5, 0xd6, 0x65, 0x81, 0xbb, 0x8a, 0x6d, 0x83, 0xee, 0x06, 0xe4, 0x3b, 0x45, 0x69, 0x96, 0x18, + 0x89, 0xd8, 0x36, 0xd8, 0x86, 0x1e, 0x2f, 0x5f, 0x51, 0x2d, 0x99, 0x96, 0x88, 0xbf, 0xae, 0x04, + 0x6e, 0xbe, 0xf2, 0xd0, 0x65, 0xcb, 0x36, 0x55, 0xad, 0xec, 0xec, 0x95, 0x4a, 0xc9, 0xba, 0xdc, + 0x05, 0x2a, 0x01, 0x8f, 0x1d, 0x8b, 0x8a, 0x12, 0xac, 0xed, 0x75, 0x55, 0x1a, 0x42, 0xa1, 0xd7, + 0x9b, 0x85, 0x42, 0xc9, 0x06, 0xbe, 0xd3, 0x47, 0x40, 0xa9, 0x06, 0xce, 0x63, 0x11, 0xd0, 0x14, + 0xf4, 0x68, 0xbb, 0x56, 0x1d, 0xb8, 0x51, 0x75, 0xcd, 0x12, 0xf1, 0x9e, 0x87, 0x4b, 0xdb, 0xb5, + 0x1c, 0x9c, 0x86, 0x12, 0x04, 0xc5, 0x4d, 0xf8, 0x97, 0x11, 0x37, 0xf5, 0x3e, 0x7b, 0xdc, 0x24, + 0xdc, 0xca, 0x6f, 0x70, 0xdc, 0xd4, 0xd7, 0x3a, 0x6e, 0xea, 0xff, 0x55, 0xc6, 0x4d, 0xe7, 0x9e, + 0x2f, 0x6e, 0x1a, 0xf8, 0xc5, 0xc7, 0x4d, 0xe9, 0x5f, 0x4d, 0xdc, 0x64, 0x7e, 0x52, 0x43, 0x1a, + 0xac, 0xb4, 0x8c, 0x9b, 0xae, 0x1e, 0x8f, 0x9b, 0x44, 0x14, 0x94, 0x63, 0x91, 0x4a, 0x6e, 0x62, + 0x3a, 0x37, 0x31, 0xc3, 0x63, 0xa8, 0x16, 0xa1, 0x93, 0x13, 0x5d, 0x3d, 0x6f, 0xe8, 0xe4, 0xdb, + 0xc2, 0xfe, 0x4e, 0x07, 0xf4, 0x06, 0x4c, 0x4f, 0xbc, 0x04, 0x71, 0xcb, 0x50, 0x8a, 0x44, 0x36, + 0x09, 0xdb, 0x33, 0x76, 0xf6, 0x33, 0x3f, 0xaf, 0xa1, 0x88, 0xa6, 0x6b, 0xc4, 0x59, 0x1c, 0x92, + 0x66, 0x5c, 0x62, 0x1f, 0xa4, 0x76, 0x7b, 0x4f, 0x2d, 0xde, 0x97, 0xba, 0x19, 0x9b, 0xc4, 0xb9, + 0xf0, 0x35, 0x48, 0xba, 0x1b, 0x68, 0xc2, 0x1f, 0x87, 0x3c, 0x66, 0x9b, 0x70, 0x0a, 0x85, 0x27, + 0x1e, 0x83, 0x94, 0x4b, 0xee, 0x54, 0x1c, 0xf6, 0xd0, 0xbb, 0xc2, 0x1c, 0xf9, 0x23, 0x90, 0xb0, + 0x8c, 0x8a, 0x6a, 0xcb, 0xba, 0x26, 0x17, 0x2b, 0xba, 0xc6, 0x77, 0xa9, 0x1d, 0x98, 0xb8, 0x9b, + 0x95, 0x6d, 0x68, 0x0b, 0xb4, 0x04, 0xbf, 0x04, 0x40, 0xb4, 0xa2, 0x79, 0xc8, 0x7c, 0x98, 0x0f, + 0x4e, 0xf6, 0x7c, 0xc7, 0x73, 0x90, 0xaa, 0x6a, 0xea, 0xbb, 0xb2, 0x41, 0xcc, 0x7d, 0xd5, 0xb2, + 0x98, 0x3f, 0xe4, 0xe0, 0x31, 0x9d, 0xed, 0xed, 0x10, 0x9e, 0x9d, 0x9d, 0xe5, 0xba, 0x50, 0xb2, + 0xcd, 0x3a, 0x15, 0x7e, 0x15, 0xba, 0xbd, 0x9b, 0x85, 0x6c, 0xf5, 0x75, 0x6a, 0x88, 0x59, 0xf5, + 0x0d, 0x42, 0x7c, 0x05, 0xe2, 0xfe, 0x25, 0x2a, 0xea, 0x69, 0xa2, 0xd8, 0x35, 0x14, 0x1d, 0x32, + 0x2d, 0x8e, 0xa1, 0xa8, 0xf6, 0xa1, 0x6c, 0xd9, 0x87, 0x15, 0x22, 0x16, 0xd9, 0xc4, 0x51, 0x0d, + 0x75, 0x40, 0x84, 0xaa, 0x20, 0x56, 0x12, 0x41, 0xb5, 0x45, 0x89, 0xf0, 0x55, 0x48, 0xd8, 0x2a, + 0xa1, 0xcb, 0x93, 0x53, 0x05, 0x78, 0xaa, 0x88, 0x8b, 0x32, 0x51, 0xc7, 0x35, 0xe8, 0xd0, 0x74, + 0xf9, 0x1b, 0xba, 0xc5, 0x96, 0xca, 0xe6, 0x47, 0x5c, 0xda, 0x35, 0xfd, 0x4b, 0xba, 0x85, 0xaf, + 0x01, 0x7c, 0x43, 0xb7, 0x1c, 0xb9, 0xf1, 0x63, 0xcb, 0x39, 0x8d, 0x4e, 0xba, 0xbe, 0xa1, 0x5b, + 0x42, 0xfa, 0x4d, 0xe8, 0x55, 0x4a, 0x8a, 0x61, 0xab, 0x07, 0x44, 0xf6, 0xf0, 0x25, 0x02, 0xf9, + 0x7a, 0x1c, 0xd2, 0x2f, 0x39, 0xfc, 0x37, 0x6e, 0x7e, 0x52, 0x43, 0x37, 0x60, 0x0e, 0x2e, 0x39, + 0x13, 0x6b, 0x63, 0xfd, 0xee, 0xfc, 0x66, 0x86, 0x9b, 0x6b, 0xc6, 0xb5, 0xd7, 0x81, 0x89, 0x5c, + 0x3e, 0x37, 0x99, 0x9b, 0xca, 0x4d, 0xe7, 0x66, 0x72, 0xb3, 0xb9, 0x39, 0x67, 0xb6, 0x15, 0xae, + 0x41, 0x4f, 0xbd, 0x5a, 0x27, 0x5b, 0x48, 0x7f, 0x5c, 0x43, 0xdd, 0x3f, 0xe0, 0x31, 0x6c, 0xec, + 0xa8, 0x86, 0xa2, 0x13, 0xf9, 0x9c, 0x93, 0x34, 0xc4, 0x52, 0xdd, 0xd9, 0x7f, 0xd6, 0x0e, 0x17, + 0x5a, 0xf8, 0x48, 0xfc, 0xad, 0xfa, 0x12, 0xc5, 0x0f, 0x69, 0xbd, 0xfe, 0xb4, 0x6e, 0xf6, 0x37, + 0x6e, 0x5d, 0xc2, 0x10, 0x61, 0x47, 0x7c, 0xb8, 0x87, 0x64, 0x7f, 0xe3, 0x2f, 0x1d, 0x0f, 0x13, + 0xc2, 0x4f, 0x17, 0x26, 0x34, 0x06, 0x07, 0xcf, 0xe3, 0xaa, 0x1f, 0xa3, 0x4f, 0x6b, 0xe8, 0xdf, + 0x21, 0x48, 0x40, 0xe4, 0x1d, 0x5d, 0x63, 0xc7, 0x03, 0xa9, 0x96, 0x30, 0x09, 0x29, 0xee, 0x4e, + 0xd8, 0x29, 0x85, 0xcc, 0x1d, 0xbd, 0x44, 0x06, 0x2f, 0xc3, 0xa5, 0x06, 0xcd, 0x47, 0x7d, 0xee, + 0x10, 0xa6, 0x20, 0xe9, 0xec, 0xf9, 0x67, 0xb8, 0xa5, 0x0e, 0xbe, 0x00, 0x97, 0x8f, 0xf1, 0xf8, + 0x7d, 0x1f, 0xcc, 0x01, 0x76, 0xb9, 0x24, 0x62, 0x32, 0x51, 0xa5, 0xc1, 0x2c, 0x64, 0x9a, 0x32, + 0x3a, 0xf5, 0x05, 0x01, 0xf9, 0xed, 0xd9, 0x47, 0x11, 0xb8, 0xe0, 0x3f, 0x80, 0x64, 0xb8, 0x67, + 0x42, 0xfe, 0x2a, 0x1f, 0x3b, 0x1a, 0x3e, 0x76, 0xec, 0xe8, 0x34, 0x09, 0xc3, 0x53, 0x1f, 0x30, + 0xca, 0x43, 0xac, 0x68, 0xa9, 0xf2, 0x01, 0x31, 0xa9, 0x07, 0x17, 0x07, 0x08, 0x7a, 0xbe, 0xf0, + 0x22, 0x8e, 0x66, 0x28, 0x9d, 0x97, 0xa0, 0x68, 0xa9, 0xf7, 0x38, 0x11, 0x9e, 0x01, 0x7e, 0x64, + 0x4d, 0x76, 0x11, 0x02, 0x91, 0x66, 0x25, 0x68, 0x40, 0x5b, 0xcf, 0x97, 0xa4, 0x38, 0x23, 0x5b, + 0x10, 0xe0, 0x00, 0xde, 0x72, 0xf6, 0x25, 0x19, 0x9f, 0xab, 0x73, 0xf4, 0x24, 0x9d, 0xa3, 0x4e, + 0xaa, 0x2d, 0x76, 0x27, 0xa9, 0xc0, 0x4d, 0xa7, 0x01, 0x57, 0xa1, 0xab, 0xa2, 0x97, 0xe5, 0x0a, + 0x39, 0x20, 0x15, 0x67, 0x65, 0xf8, 0xc2, 0xaf, 0x46, 0xb4, 0xa2, 0x97, 0xd7, 0x68, 0x79, 0xf6, + 0x8f, 0x40, 0x9c, 0x3b, 0xf5, 0x59, 0x0c, 0xb3, 0x93, 0xf1, 0x7a, 0xaa, 0x22, 0xce, 0xec, 0xa2, + 0xc6, 0x53, 0x77, 0x4e, 0xae, 0xc2, 0xb9, 0xf0, 0xd7, 0xd8, 0x29, 0x5f, 0xc5, 0x30, 0x64, 0x9b, + 0xef, 0x06, 0xb1, 0xde, 0x6b, 0xb6, 0xe9, 0xd7, 0x7a, 0x13, 0x49, 0x9c, 0xf3, 0xad, 0x7f, 0xc4, + 0x0f, 0x11, 0x9c, 0x37, 0xaa, 0x26, 0x37, 0x3d, 0xb5, 0x48, 0x64, 0xdd, 0x73, 0xd8, 0x8a, 0xf5, + 0x77, 0x2c, 0xbf, 0x78, 0x72, 0x4d, 0x27, 0x1f, 0xda, 0x5a, 0x6e, 0x93, 0x06, 0x68, 0x45, 0x01, + 0xc5, 0xf8, 0x0d, 0x48, 0x14, 0xab, 0x96, 0xad, 0xef, 0x3b, 0xc7, 0xb1, 0x58, 0x0f, 0xb7, 0x38, + 0x02, 0xca, 0xa9, 0x45, 0x85, 0x78, 0x0b, 0x62, 0x7b, 0x86, 0x7b, 0x94, 0x8b, 0x2d, 0xc0, 0xcd, + 0xc2, 0xf1, 0x16, 0x53, 0x78, 0xb9, 0x4d, 0x82, 0x3d, 0xf7, 0x0b, 0xfe, 0xc3, 0x30, 0x5c, 0x54, + 0x4a, 0x07, 0x8a, 0x56, 0x24, 0x25, 0xd9, 0xfd, 0xc3, 0x70, 0x63, 0x4d, 0xb1, 0xf5, 0xfa, 0x56, + 0x93, 0xad, 0xd7, 0xa0, 0xc1, 0x1f, 0x9d, 0x17, 0x62, 0x9c, 0x7f, 0xeb, 0x91, 0x2b, 0x5f, 0x9d, + 0x7e, 0x3f, 0xe4, 0x58, 0x76, 0xf0, 0x0a, 0xf5, 0x66, 0xe0, 0x0a, 0x35, 0xf6, 0xe1, 0x47, 0xe8, + 0x2a, 0xbe, 0xf2, 0x93, 0x1a, 0x72, 0x8e, 0x48, 0x66, 0x8a, 0x15, 0xc5, 0xb2, 0x32, 0x96, 0x41, + 0x8a, 0x34, 0xf0, 0xce, 0xb8, 0x5a, 0x67, 0xe8, 0x4c, 0xa6, 0x3c, 0xe9, 0x0f, 0x3f, 0x42, 0x7d, + 0x18, 0x1f, 0xd5, 0x50, 0xc2, 0x55, 0x82, 0x6d, 0x7f, 0xb6, 0x5e, 0xc2, 0x6e, 0x7e, 0xf8, 0x11, + 0xba, 0x31, 0x38, 0xf7, 0x93, 0x1a, 0x9a, 0x3a, 0xb1, 0x2a, 0xb6, 0x1c, 0x64, 0x76, 0x75, 0x33, + 0x53, 0x56, 0x0f, 0x88, 0xe6, 0xac, 0x9b, 0xe7, 0x3f, 0xfc, 0x08, 0xf5, 0x0f, 0xf6, 0x1e, 0xd5, + 0x50, 0xb2, 0x5e, 0x73, 0xe0, 0x7a, 0x37, 0xa8, 0x34, 0xed, 0xae, 0xc1, 0x3b, 0x70, 0xf9, 0x84, + 0xce, 0x7c, 0xaa, 0x05, 0xeb, 0x5f, 0x85, 0x3e, 0xa9, 0xa1, 0xd7, 0x20, 0x03, 0xe7, 0x9d, 0x66, + 0x89, 0x53, 0xef, 0x9e, 0xdc, 0x22, 0x3c, 0x91, 0xcb, 0xc3, 0x00, 0x60, 0x71, 0x07, 0xc0, 0x5b, + 0x84, 0xa6, 0x3f, 0xad, 0xa1, 0xff, 0x8e, 0x20, 0x2d, 0x8e, 0xc3, 0xa7, 0x1a, 0x27, 0x39, 0xfc, + 0x7d, 0x04, 0x11, 0x6a, 0x02, 0x23, 0x7f, 0x0f, 0xc1, 0xdf, 0x42, 0x90, 0x69, 0x9c, 0xd3, 0xf9, + 0xc4, 0x3a, 0xb1, 0xe7, 0x0d, 0x23, 0x23, 0xe6, 0x25, 0x5c, 0x69, 0x31, 0x2d, 0xf3, 0xdd, 0x74, + 0xba, 0x39, 0x49, 0x0b, 0x0c, 0xfa, 0xcc, 0x3f, 0x1f, 0x5b, 0xde, 0x5c, 0x72, 0xcb, 0xd2, 0x8d, + 0x33, 0x2b, 0xdf, 0xb1, 0xc0, 0x7e, 0xe3, 0xce, 0x6d, 0xed, 0xbe, 0xa6, 0x3f, 0xd0, 0x60, 0x16, + 0x7a, 0x9d, 0x2e, 0xf4, 0xb4, 0x69, 0x35, 0xd3, 0xda, 0xfc, 0x53, 0x91, 0xc2, 0xcb, 0x10, 0x17, + 0x67, 0xf1, 0x45, 0xac, 0xd7, 0x27, 0xd2, 0x9f, 0x10, 0x8d, 0xf3, 0x68, 0x6c, 0x38, 0x31, 0x9e, + 0xbb, 0xee, 0x1e, 0xc8, 0xe7, 0x99, 0x50, 0x24, 0xd5, 0xbe, 0x1a, 0x89, 0x46, 0x53, 0x5d, 0xd9, + 0xdf, 0x45, 0x30, 0x78, 0x7c, 0x9e, 0xb8, 0x07, 0xe2, 0xbf, 0x0e, 0x49, 0x7f, 0x1f, 0x3a, 0x01, + 0xe0, 0xd5, 0xa7, 0x98, 0x71, 0x9e, 0x14, 0xdb, 0x7b, 0x22, 0x26, 0xe1, 0xf3, 0xb0, 0x56, 0xf6, + 0xcf, 0xeb, 0xbb, 0xef, 0x0b, 0xd4, 0x9c, 0x03, 0x8e, 0xc8, 0x4f, 0x42, 0x52, 0x79, 0xcf, 0x1d, + 0x0d, 0x0f, 0x72, 0xd9, 0xe5, 0xc5, 0x0a, 0xe3, 0xca, 0x7b, 0xc2, 0xbf, 0xb9, 0x07, 0xc2, 0xeb, + 0x4c, 0x9e, 0x55, 0x3d, 0xdc, 0x78, 0x20, 0xbc, 0x4d, 0xc2, 0x2e, 0x6b, 0x7d, 0x4d, 0x0f, 0x3c, + 0xd9, 0x1d, 0x39, 0xf9, 0x64, 0xb7, 0xef, 0xa4, 0x76, 0x7b, 0xcb, 0x93, 0xda, 0x38, 0x07, 0xd8, + 0xd4, 0x75, 0x5b, 0x16, 0x58, 0x01, 0x3f, 0x64, 0xc9, 0x96, 0x98, 0xa8, 0x94, 0xa2, 0x25, 0x0b, + 0xac, 0x60, 0x89, 0x7d, 0x0f, 0x3c, 0xd7, 0x1d, 0xb0, 0x25, 0xff, 0x4f, 0x11, 0xbc, 0xe4, 0xed, + 0xd0, 0xa6, 0xa7, 0xb5, 0x1b, 0x0e, 0x1e, 0xa3, 0xa7, 0x3c, 0x78, 0x1c, 0x3a, 0xcd, 0xc1, 0xe3, + 0x70, 0xf0, 0xc1, 0xe3, 0x87, 0x08, 0x5e, 0xf0, 0xea, 0xb8, 0x61, 0x10, 0x8d, 0xec, 0x50, 0xe7, + 0x41, 0x4c, 0xc3, 0x54, 0xf9, 0xcd, 0x1f, 0x3c, 0x0d, 0x51, 0x76, 0x85, 0xa9, 0xa8, 0x57, 0x84, + 0x76, 0xe7, 0x59, 0x62, 0x7e, 0xb0, 0xbf, 0xeb, 0x68, 0x19, 0x35, 0x3b, 0x24, 0xf6, 0x41, 0x72, + 0x49, 0xf1, 0x2b, 0x10, 0x33, 0x89, 0x51, 0x51, 0x8b, 0x2c, 0xd2, 0x65, 0x7a, 0xb6, 0x3b, 0x09, + 0xaa, 0xa7, 0x20, 0xfb, 0x7f, 0x11, 0x5c, 0xf2, 0x2a, 0x71, 0xfc, 0xd8, 0x87, 0x0a, 0x51, 0x8b, + 0x54, 0xd8, 0x51, 0x57, 0x31, 0x01, 0xde, 0x6c, 0xb5, 0xb2, 0x05, 0x4b, 0x19, 0xdd, 0x12, 0x22, + 0xf8, 0x3a, 0x13, 0xab, 0xbb, 0xf5, 0x36, 0xc9, 0x15, 0x8f, 0x27, 0x21, 0xee, 0xc2, 0xa8, 0xba, + 0x5e, 0x71, 0x82, 0x4f, 0x3a, 0x1c, 0xf5, 0x38, 0x27, 0x22, 0x75, 0x5b, 0xf5, 0x04, 0xcb, 0x1a, + 0x7c, 0x0d, 0xe2, 0x3e, 0xe1, 0x4f, 0xe3, 0x77, 0xb3, 0xff, 0x19, 0xc1, 0xab, 0x5e, 0xc5, 0x37, + 0x83, 0x03, 0x04, 0xd6, 0x11, 0xaf, 0x41, 0xa7, 0xd8, 0x0f, 0x10, 0x03, 0xf1, 0xc2, 0xe7, 0x35, + 0xd4, 0xbe, 0x53, 0xd1, 0x8b, 0xf7, 0xbd, 0x10, 0x09, 0xff, 0x22, 0x45, 0x76, 0xd5, 0x0a, 0x91, + 0x1c, 0x0e, 0xfc, 0x3a, 0x00, 0x35, 0x18, 0x99, 0x0d, 0xbf, 0x30, 0x9b, 0x4b, 0x9f, 0xd7, 0x10, + 0x1a, 0xa7, 0x7c, 0xbd, 0x23, 0x3d, 0x85, 0xe4, 0x78, 0x6e, 0x62, 0x7c, 0xfc, 0xda, 0xc4, 0xb8, + 0xf8, 0x4f, 0xea, 0xa2, 0x0c, 0x6b, 0x94, 0x9e, 0x46, 0xa2, 0x3b, 0x8a, 0x56, 0x7a, 0xa0, 0x96, + 0xec, 0x3d, 0x21, 0x22, 0x7c, 0x0c, 0xf0, 0x4f, 0x77, 0x4b, 0x09, 0x97, 0x8a, 0xf1, 0x65, 0xff, + 0x45, 0x87, 0x8b, 0x56, 0xf1, 0x69, 0xe0, 0xcf, 0x19, 0xc6, 0x20, 0xc6, 0xb7, 0x81, 0xbc, 0xb9, + 0x82, 0xdf, 0xf8, 0x43, 0x12, 0x70, 0x12, 0xe6, 0x4f, 0xc6, 0x21, 0x56, 0x22, 0x56, 0xd1, 0x54, + 0x0d, 0xd7, 0xaa, 0x1a, 0x19, 0x22, 0x92, 0x97, 0x04, 0x5f, 0x87, 0x94, 0xa7, 0x0a, 0x96, 0x58, + 0x09, 0xd5, 0x1b, 0xeb, 0x49, 0xd6, 0xeb, 0x61, 0x64, 0x78, 0x1c, 0x7a, 0x4a, 0x74, 0x00, 0xf4, + 0x43, 0x59, 0xd7, 0xe4, 0x12, 0xa9, 0x10, 0xdb, 0xc5, 0x7c, 0x68, 0x98, 0x22, 0x25, 0x45, 0xf1, + 0x86, 0xb6, 0xc8, 0x0a, 0x1b, 0xe6, 0x26, 0xf5, 0x3b, 0x61, 0x41, 0xda, 0x74, 0x6e, 0x76, 0x1c, + 0x23, 0xa2, 0x73, 0x13, 0xcf, 0x03, 0xa6, 0x73, 0x5e, 0x37, 0xf7, 0xe9, 0xba, 0xe3, 0x78, 0x07, + 0x1e, 0xfd, 0x63, 0xef, 0x56, 0x91, 0xf0, 0x10, 0x3d, 0x1e, 0x6a, 0xe1, 0x28, 0x16, 0xa0, 0x97, + 0xce, 0x46, 0x52, 0xa4, 0xfd, 0x20, 0xdb, 0x64, 0xdf, 0xa8, 0x28, 0xb6, 0xb3, 0xe3, 0x12, 0x24, + 0x03, 0xd7, 0xc9, 0xef, 0x0a, 0x6a, 0x3c, 0x02, 0x1d, 0xbb, 0x7a, 0xa5, 0x44, 0x4c, 0x11, 0xf2, + 0x07, 0xf1, 0x09, 0x0a, 0x3c, 0x08, 0x1c, 0x97, 0x63, 0xf1, 0xa7, 0xd3, 0x47, 0xfc, 0x13, 0x9e, + 0x84, 0x44, 0x89, 0x94, 0xaa, 0x06, 0x11, 0xfe, 0x95, 0x6f, 0xb9, 0x44, 0xf9, 0xee, 0x1e, 0xf5, + 0x27, 0xb6, 0x59, 0x25, 0x52, 0x9c, 0xd3, 0x70, 0x57, 0x5b, 0x62, 0x88, 0xdb, 0xa1, 0x56, 0xe4, + 0xbd, 0x6f, 0x2b, 0xc5, 0x3d, 0xb1, 0xc1, 0xc2, 0x25, 0x77, 0xd3, 0x32, 0xda, 0xf5, 0xb4, 0x04, + 0x67, 0xa1, 0x4b, 0x20, 0x6b, 0xa4, 0xc4, 0x90, 0x22, 0x87, 0xac, 0xfe, 0x19, 0xbf, 0x02, 0x11, + 0x3a, 0xad, 0x05, 0x20, 0x14, 0xd4, 0x14, 0x56, 0x8e, 0x5f, 0x83, 0xa4, 0x52, 0xa9, 0xe8, 0x0f, + 0x64, 0xfd, 0x80, 0x98, 0xd4, 0x87, 0x58, 0x62, 0x5b, 0xe4, 0x38, 0x4b, 0x48, 0x4a, 0x30, 0xd2, + 0x0d, 0x87, 0xb2, 0xce, 0xbc, 0x5f, 0xb5, 0x15, 0xbe, 0xc7, 0x91, 0x3a, 0x81, 0xf9, 0x8e, 0x43, + 0x99, 0x5d, 0x87, 0x73, 0xde, 0xe9, 0xc2, 0x23, 0x15, 0x36, 0x55, 0xa6, 0x20, 0x72, 0xa8, 0xec, + 0x3b, 0x2e, 0x38, 0x23, 0x6e, 0xc6, 0xb0, 0x6f, 0xae, 0xbc, 0x8c, 0xe7, 0x5e, 0x0c, 0x2b, 0xc9, + 0x7e, 0x27, 0x01, 0xfd, 0xde, 0xc0, 0x80, 0x49, 0x75, 0x4e, 0xe0, 0x06, 0xa6, 0x61, 0x49, 0xcf, + 0x1e, 0x64, 0x06, 0x0d, 0x1f, 0x4b, 0xc6, 0x4e, 0x31, 0x03, 0x43, 0xfe, 0x19, 0x98, 0x87, 0x7e, + 0xe7, 0xcc, 0xae, 0x53, 0x23, 0x0b, 0x99, 0xf9, 0x3d, 0x11, 0xa9, 0x57, 0x14, 0x7a, 0x35, 0xc4, + 0x5f, 0x3d, 0x96, 0xf2, 0xf1, 0x7c, 0x28, 0xff, 0xf4, 0x9e, 0xff, 0x78, 0xc6, 0xf7, 0x5e, 0xab, + 0x84, 0x8f, 0xe7, 0x4e, 0xaf, 0x9f, 0x58, 0x4f, 0x0b, 0x47, 0xdd, 0x2a, 0xd1, 0xbb, 0x7b, 0x2c, + 0xd1, 0x4b, 0xb1, 0x0a, 0xaf, 0x9e, 0x58, 0x61, 0xdd, 0x16, 0x8e, 0xe7, 0x7f, 0x92, 0x3f, 0xff, + 0xeb, 0x61, 0x22, 0xc7, 0x4e, 0x14, 0xd9, 0x32, 0xfd, 0x5b, 0x84, 0x84, 0x49, 0x8a, 0x15, 0x45, + 0xdd, 0xf7, 0xee, 0x6e, 0x76, 0x15, 0x2e, 0x1d, 0xd5, 0x50, 0x0a, 0x3a, 0xb8, 0xc7, 0x83, 0x0e, + 0x89, 0xd8, 0x8a, 0xaa, 0x39, 0x2b, 0x40, 0x4a, 0x8a, 0x0b, 0x26, 0xe1, 0x84, 0x6e, 0xc0, 0x39, + 0x3e, 0x1b, 0x04, 0xea, 0x44, 0xde, 0x35, 0x14, 0x8d, 0x21, 0x20, 0x71, 0x0f, 0x64, 0xdd, 0xc7, + 0x68, 0x38, 0x1c, 0xb7, 0xe4, 0x50, 0xe0, 0xef, 0x84, 0xe1, 0x82, 0x1b, 0x78, 0xbb, 0xeb, 0x72, + 0x3d, 0xff, 0xe4, 0xe7, 0xa3, 0x57, 0x4e, 0x8c, 0x86, 0x5d, 0xa3, 0x77, 0xd3, 0x4f, 0x07, 0x20, + 0x6d, 0xc8, 0x3e, 0xbf, 0x19, 0x3a, 0xcb, 0x3c, 0x79, 0xe6, 0x79, 0x5e, 0x69, 0xd6, 0x53, 0x78, + 0x0e, 0xb0, 0x6f, 0x1a, 0x7b, 0xf7, 0xf1, 0x9d, 0x98, 0xfc, 0x9f, 0x84, 0x90, 0x94, 0xb2, 0xbc, + 0xb3, 0x92, 0x26, 0x85, 0x6b, 0x30, 0xd4, 0x7a, 0x00, 0x9e, 0x2a, 0x63, 0xfd, 0x7f, 0xe1, 0x4f, + 0x6a, 0xe8, 0x16, 0x5c, 0x85, 0xb4, 0xd3, 0x1d, 0xac, 0x26, 0x6f, 0x56, 0x9a, 0x9c, 0xcb, 0x39, + 0x50, 0x3d, 0x03, 0xdd, 0x9b, 0x25, 0xaf, 0xb3, 0x9f, 0xd6, 0xd0, 0xbf, 0x0c, 0xc3, 0x45, 0x91, + 0xbc, 0xf6, 0x05, 0xb5, 0x10, 0x06, 0xa9, 0xcd, 0xd3, 0xf9, 0x1c, 0x90, 0xdc, 0x5e, 0x84, 0xd8, + 0x62, 0xdd, 0xe3, 0x0d, 0xc6, 0x7d, 0x3e, 0x12, 0xb2, 0xd0, 0x29, 0x30, 0xe5, 0xc1, 0x81, 0x26, + 0xbe, 0x10, 0xfe, 0x01, 0x82, 0x76, 0xa6, 0xff, 0xaf, 0x61, 0x7e, 0xfc, 0x12, 0x24, 0x24, 0x3e, + 0xa9, 0x05, 0xfc, 0x9c, 0x42, 0xb4, 0x0f, 0xfc, 0xde, 0x01, 0xa6, 0xe0, 0xdc, 0x3c, 0x9d, 0xc5, + 0xce, 0x76, 0x89, 0x3b, 0x8f, 0x53, 0x68, 0x30, 0xdd, 0xcc, 0x0b, 0xc0, 0x5c, 0x60, 0xee, 0x9d, + 0x42, 0xab, 0x97, 0x5b, 0xce, 0xfd, 0x54, 0xa4, 0xf0, 0x6a, 0x63, 0xf2, 0x7d, 0xee, 0xe3, 0x1a, + 0x82, 0xc7, 0x35, 0x14, 0x39, 0xaa, 0x21, 0xe0, 0x5b, 0x32, 0xb3, 0xb9, 0x89, 0x19, 0x37, 0xe5, + 0x6e, 0x4f, 0x75, 0x88, 0x8d, 0xc8, 0xbf, 0x83, 0xe0, 0xfc, 0x31, 0x07, 0xe1, 0xe6, 0xdd, 0x6a, + 0x3d, 0xef, 0x66, 0x63, 0xe3, 0xe6, 0xdd, 0x23, 0xa7, 0xf7, 0x34, 0x27, 0xa4, 0xdd, 0x0b, 0x5c, + 0x6e, 0x76, 0x1a, 0xba, 0x0b, 0xba, 0x56, 0x5a, 0x53, 0x8a, 0xfc, 0x30, 0xd8, 0xcb, 0x10, 0x31, + 0x69, 0x8c, 0x86, 0xf8, 0x79, 0xd4, 0xcf, 0x6b, 0x28, 0x34, 0x39, 0xee, 0xdc, 0x1a, 0x19, 0x1a, + 0x46, 0x12, 0x2b, 0xce, 0xfe, 0x87, 0x76, 0x71, 0x85, 0x9e, 0x32, 0x7b, 0xa0, 0xd5, 0x37, 0xbc, + 0x6f, 0x2d, 0x14, 0xae, 0x1c, 0xd5, 0xd0, 0x45, 0x68, 0xdf, 0xd1, 0xb5, 0xd2, 0x38, 0xff, 0x67, + 0x82, 0xff, 0x93, 0xe7, 0xff, 0x4c, 0xd6, 0x01, 0x57, 0xfe, 0x2c, 0xc3, 0xbd, 0xfa, 0x0d, 0xfc, + 0x10, 0xbb, 0x51, 0xf3, 0xfa, 0xf7, 0x3f, 0x42, 0xdd, 0xd1, 0xd0, 0x38, 0xba, 0xd1, 0x51, 0x64, + 0xb7, 0x2b, 0x29, 0x47, 0xd7, 0xb7, 0x51, 0x47, 0x96, 0xb1, 0x9d, 0x70, 0xdf, 0xc4, 0x11, 0x86, + 0x67, 0x21, 0x52, 0x51, 0x8a, 0x86, 0x38, 0xea, 0xf5, 0x42, 0x60, 0x2f, 0x7a, 0xbb, 0x61, 0xb9, + 0x4d, 0x62, 0x0c, 0xf8, 0x35, 0x88, 0x2b, 0x45, 0xb6, 0x9b, 0x47, 0xb3, 0x98, 0xaa, 0x21, 0x50, + 0xf7, 0x66, 0xa0, 0x68, 0x37, 0x27, 0x2e, 0x30, 0x5a, 0x7c, 0x07, 0xfa, 0x2b, 0xaa, 0x76, 0x9f, + 0x9a, 0x67, 0x45, 0xd5, 0xca, 0xfc, 0xad, 0x82, 0x03, 0xa5, 0xc2, 0x22, 0xee, 0x78, 0xe1, 0xbc, + 0x13, 0x78, 0xd2, 0x7c, 0xc7, 0xd9, 0x20, 0xf8, 0xdd, 0x57, 0x87, 0xff, 0x77, 0x58, 0xea, 0xa5, + 0x7c, 0x9b, 0x9c, 0x6d, 0x45, 0x70, 0xe1, 0xeb, 0x10, 0x67, 0xe2, 0xaa, 0x06, 0xcd, 0x04, 0x94, + 0x43, 0x71, 0xe5, 0xb7, 0x5f, 0x88, 0x09, 0xe7, 0xb9, 0x94, 0xf6, 0x91, 0x70, 0xfa, 0x8b, 0x4e, + 0x29, 0x46, 0x69, 0xb7, 0x8d, 0x45, 0x4a, 0x79, 0xe3, 0x6f, 0x86, 0x3e, 0xa9, 0xa1, 0x1c, 0x5c, + 0x68, 0xf2, 0x92, 0x04, 0x83, 0xd5, 0xe2, 0x10, 0x59, 0x9b, 0x5f, 0xd8, 0xc4, 0xed, 0x93, 0xb9, + 0x99, 0x1c, 0xf5, 0x47, 0xff, 0x1e, 0x1d, 0x7b, 0x5b, 0xe2, 0x12, 0x24, 0xee, 0x90, 0xfd, 0x1d, + 0x62, 0x0a, 0x6c, 0xce, 0x2a, 0xc4, 0xdc, 0x11, 0x4b, 0x45, 0xe0, 0x0d, 0xe8, 0xa2, 0xbd, 0xc8, + 0x36, 0x95, 0x46, 0xc6, 0x61, 0x14, 0xba, 0x79, 0xbf, 0xe7, 0x99, 0x64, 0x18, 0x6a, 0xe8, 0xcc, + 0x7c, 0x7c, 0x9e, 0xfd, 0x1c, 0xe3, 0xfd, 0x05, 0xd3, 0x30, 0xb8, 0xa6, 0x6a, 0xf7, 0x33, 0xa2, + 0xe1, 0x19, 0xa7, 0xe5, 0x99, 0xe1, 0x7d, 0xeb, 0x0a, 0x75, 0x5c, 0x81, 0xbd, 0x09, 0x2f, 0x03, + 0x66, 0x6c, 0xdb, 0x46, 0x86, 0xb5, 0x96, 0x93, 0x27, 0x1b, 0x7a, 0xab, 0x30, 0x04, 0x31, 0xaa, + 0x4b, 0xb3, 0xdb, 0xf0, 0x1c, 0x1d, 0xcb, 0x7e, 0x13, 0x41, 0xba, 0xc1, 0xb0, 0xeb, 0xf3, 0xf2, + 0x3e, 0x74, 0x53, 0xb3, 0x6d, 0x00, 0xc3, 0x86, 0x9b, 0x4f, 0x4a, 0xff, 0xec, 0xf0, 0xdc, 0x8f, + 0x8a, 0x04, 0xdf, 0x8f, 0xda, 0xa9, 0x57, 0x9a, 0xfd, 0x3d, 0x04, 0x19, 0xef, 0xcc, 0xde, 0xa2, + 0x11, 0x7a, 0x51, 0xd2, 0xab, 0xb6, 0x47, 0x23, 0x52, 0x5f, 0x08, 0x4c, 0x56, 0x22, 0x74, 0x1a, + 0x6a, 0xdc, 0x62, 0xa9, 0x33, 0x37, 0x68, 0x12, 0x3c, 0x73, 0x9c, 0x90, 0x9b, 0x57, 0x97, 0xfd, + 0x31, 0x82, 0x9e, 0x7b, 0xb7, 0x37, 0xb7, 0xfd, 0x66, 0xc3, 0xb6, 0xeb, 0xd9, 0x56, 0x97, 0x7f, + 0xa7, 0xcc, 0xbb, 0x37, 0xf4, 0x59, 0x88, 0x0a, 0x63, 0x54, 0x0e, 0xa2, 0x76, 0x93, 0xa6, 0xdc, + 0x8d, 0x3b, 0x64, 0x97, 0x9c, 0xc9, 0x30, 0x3b, 0x3e, 0xeb, 0xde, 0x54, 0xab, 0xef, 0x98, 0x81, + 0x55, 0xdf, 0x2e, 0x7b, 0x1b, 0xba, 0x77, 0x89, 0x62, 0xd3, 0x95, 0x87, 0xdd, 0xfe, 0xeb, 0x68, + 0xf1, 0x84, 0x0b, 0x55, 0xfa, 0x16, 0x27, 0x66, 0xed, 0x4e, 0x7c, 0x5e, 0x43, 0xb0, 0xbd, 0xbe, + 0xb6, 0xb2, 0xb0, 0xb4, 0xbe, 0xb5, 0xb4, 0x28, 0xc5, 0x76, 0xeb, 0x85, 0x02, 0x37, 0x1b, 0x80, + 0xe4, 0xbd, 0x3b, 0xbe, 0x86, 0x8a, 0x82, 0xf7, 0x20, 0x55, 0xb8, 0xbd, 0xe9, 0xef, 0x82, 0x0b, + 0x10, 0x56, 0x2c, 0x4d, 0xb4, 0xa1, 0x4b, 0x9c, 0xda, 0x1f, 0x46, 0x12, 0xfd, 0x8a, 0x17, 0xa0, + 0xdd, 0x20, 0x34, 0x4c, 0xe4, 0x8f, 0xe9, 0x0c, 0x34, 0x68, 0xb8, 0x53, 0x36, 0x46, 0x37, 0x09, + 0x31, 0x83, 0xce, 0x20, 0x8d, 0x23, 0x89, 0xf3, 0x8a, 0xba, 0xff, 0x27, 0x82, 0xfe, 0x35, 0xbd, + 0xa8, 0x54, 0x16, 0x74, 0xcd, 0x36, 0xf5, 0xca, 0x66, 0x45, 0xd1, 0x88, 0x00, 0x45, 0xbb, 0x54, + 0xcd, 0x52, 0x4b, 0x44, 0x3e, 0xd0, 0xc4, 0x1d, 0xa4, 0x66, 0xde, 0x29, 0xca, 0x09, 0xef, 0xd1, + 0x91, 0x03, 0xbd, 0x6a, 0x3b, 0x5c, 0xe1, 0x96, 0x5c, 0x5d, 0x82, 0xf2, 0x9e, 0x86, 0x17, 0x01, + 0x76, 0xca, 0x86, 0xcc, 0x3d, 0xb1, 0x70, 0xa6, 0x2f, 0x07, 0x3b, 0xd3, 0x86, 0x8e, 0x92, 0xba, + 0x76, 0xca, 0x06, 0xff, 0x52, 0x78, 0xa1, 0xfe, 0x64, 0x4e, 0x6b, 0x04, 0xf3, 0xbf, 0x85, 0x21, + 0x59, 0xa8, 0xe8, 0xc5, 0xfb, 0xa4, 0x24, 0x12, 0x19, 0x0b, 0xff, 0x6d, 0x04, 0xf8, 0x01, 0xd9, + 0x61, 0x5b, 0x91, 0xf5, 0xc7, 0x5f, 0xc4, 0xed, 0xfa, 0xc0, 0x26, 0x14, 0x7e, 0xeb, 0xd1, 0x47, + 0xe8, 0x35, 0xe8, 0x56, 0x1e, 0x58, 0xf2, 0x81, 0x51, 0x94, 0x2d, 0xd5, 0x26, 0x90, 0x54, 0xde, + 0xa3, 0xf6, 0x73, 0xa0, 0x11, 0x9b, 0x7f, 0x60, 0xc5, 0x76, 0xf9, 0x81, 0xf8, 0x55, 0x2e, 0x1a, + 0x2e, 0xf1, 0x72, 0x9b, 0x94, 0x7a, 0x40, 0x76, 0xb6, 0x2d, 0x62, 0xba, 0x6f, 0xd8, 0xe0, 0x61, + 0x08, 0x97, 0x34, 0xeb, 0x84, 0x0e, 0xa7, 0x24, 0x94, 0xd2, 0xb2, 0xf6, 0x4e, 0xe8, 0x64, 0x4a, + 0x82, 0x25, 0xe8, 0x76, 0x3a, 0x86, 0x19, 0x76, 0x3b, 0x33, 0xec, 0xc6, 0xd5, 0x4a, 0x9c, 0xb0, + 0x10, 0x6f, 0xaf, 0xf0, 0x03, 0xca, 0x6c, 0xbb, 0xf8, 0x21, 0x8a, 0x0c, 0x86, 0xda, 0x90, 0x14, + 0xd3, 0xea, 0x45, 0x37, 0xec, 0x4f, 0x6b, 0xc8, 0x80, 0x3b, 0xd0, 0x29, 0x7a, 0x70, 0xa4, 0x00, + 0x6f, 0xc2, 0xc5, 0xa0, 0x3e, 0xcc, 0x77, 0xbc, 0x4d, 0x76, 0x32, 0xdb, 0x2b, 0x90, 0x64, 0x4d, + 0xcb, 0x47, 0x17, 0xd7, 0xb7, 0x32, 0xc3, 0xd3, 0x93, 0x57, 0xe8, 0x07, 0xcb, 0xda, 0xcb, 0x47, + 0xb7, 0xb6, 0x96, 0x33, 0xc3, 0xf9, 0xfc, 0x15, 0xb8, 0x0c, 0x31, 0x4f, 0xf5, 0x83, 0x29, 0xbf, + 0xde, 0x19, 0x54, 0x18, 0x85, 0xec, 0x0e, 0x1f, 0x38, 0x27, 0x38, 0xb4, 0x64, 0x16, 0x37, 0x33, + 0x02, 0x67, 0xd8, 0xa3, 0x1f, 0xd7, 0x50, 0x98, 0x86, 0x4b, 0x3c, 0x40, 0xca, 0x7e, 0x3f, 0x04, + 0x89, 0x2d, 0x53, 0xd5, 0x0f, 0xea, 0xdd, 0xfc, 0x32, 0x24, 0x5c, 0x05, 0x3d, 0x08, 0x9d, 0x14, + 0x77, 0xbf, 0x32, 0x50, 0x2e, 0x0b, 0x71, 0xad, 0x4a, 0xd7, 0x25, 0x59, 0xdf, 0x95, 0x0f, 0x76, + 0x05, 0x28, 0x2d, 0xc5, 0xf8, 0xc7, 0x8d, 0xdd, 0x7b, 0xbb, 0x16, 0xbe, 0x0a, 0xd8, 0x4b, 0xa3, + 0xea, 0x8c, 0x90, 0xcd, 0x5c, 0x29, 0x59, 0x27, 0x54, 0xf5, 0x7b, 0xbb, 0xd6, 0x8d, 0x3f, 0x46, + 0x9f, 0xd6, 0xd0, 0x23, 0x04, 0x57, 0x61, 0x60, 0x73, 0xef, 0xd0, 0x52, 0x8b, 0x4a, 0x25, 0xe3, + 0x6a, 0x95, 0x71, 0x36, 0x98, 0xfc, 0xaa, 0xc1, 0x14, 0xbc, 0x70, 0x57, 0xb7, 0x95, 0x4a, 0x86, + 0x4b, 0xcb, 0xe8, 0xbb, 0x99, 0x03, 0x71, 0xb8, 0x6d, 0xb7, 0xaa, 0x31, 0x54, 0xcb, 0xa2, 0xeb, + 0x92, 0x4f, 0x55, 0x58, 0x82, 0x6b, 0xeb, 0xcd, 0xe9, 0x33, 0xe2, 0x48, 0x44, 0x89, 0xe5, 0x52, + 0x54, 0x6d, 0x9a, 0x1c, 0x1c, 0x6f, 0x48, 0xf6, 0xcb, 0x90, 0xe6, 0x51, 0x33, 0x0b, 0x81, 0xdd, + 0x19, 0x43, 0x57, 0x0a, 0xfc, 0x3a, 0xb4, 0xab, 0x36, 0xd9, 0x77, 0x16, 0x87, 0x57, 0x02, 0xa7, + 0x2c, 0xe7, 0x76, 0xf6, 0x3f, 0x6c, 0xb2, 0x2f, 0x71, 0xa6, 0xec, 0x3f, 0x44, 0xd0, 0x73, 0xac, + 0x10, 0x5f, 0x86, 0x08, 0x73, 0xdf, 0x3c, 0x50, 0x8c, 0x39, 0x21, 0xe2, 0xcf, 0x7f, 0x1e, 0x96, + 0x58, 0x01, 0x9e, 0x82, 0x18, 0x3f, 0x08, 0x2c, 0x57, 0x54, 0xcb, 0x16, 0xf1, 0x5c, 0xaf, 0xe3, + 0xda, 0xe1, 0xdb, 0xa8, 0x33, 0xdb, 0x6e, 0x86, 0x7f, 0x86, 0x90, 0x04, 0x9c, 0x8e, 0xaa, 0x7a, + 0x63, 0xe2, 0xd3, 0x1a, 0xba, 0x46, 0xe3, 0x0e, 0xea, 0xea, 0x69, 0xdc, 0x41, 0x65, 0xc1, 0x05, + 0x80, 0x15, 0x83, 0x9f, 0x1b, 0x26, 0x16, 0x4d, 0x6e, 0x3c, 0x92, 0xb3, 0xdf, 0xbd, 0x02, 0x89, + 0xdb, 0x15, 0x7d, 0x47, 0xa9, 0x6c, 0x19, 0xa4, 0xc8, 0x9c, 0xe2, 0x55, 0x88, 0xb1, 0x46, 0xc9, + 0xec, 0xec, 0x88, 0x88, 0x46, 0x9d, 0xd4, 0xf0, 0x31, 0x7f, 0x10, 0x83, 0x10, 0x9b, 0x9d, 0x31, + 0xc1, 0xab, 0x70, 0xfe, 0x40, 0xaf, 0xd8, 0xc4, 0x34, 0x15, 0xd9, 0xd2, 0x77, 0xed, 0x07, 0x0a, + 0xf5, 0x0c, 0xe2, 0x94, 0x44, 0x30, 0xba, 0x34, 0xe0, 0x30, 0x6c, 0x09, 0x7a, 0xe7, 0xbc, 0xc4, + 0xfa, 0x33, 0x3f, 0x21, 0x15, 0xab, 0x3f, 0x60, 0xe5, 0x09, 0x5c, 0xef, 0xd7, 0xdf, 0xe0, 0x2a, + 0xea, 0x9a, 0xc6, 0x20, 0x7e, 0x7e, 0xdb, 0xfc, 0x69, 0x1e, 0x67, 0x73, 0x59, 0xeb, 0x0b, 0x8d, + 0xe4, 0x14, 0x2e, 0xb8, 0x62, 0xf1, 0x2e, 0xa4, 0x1c, 0x8e, 0x5d, 0xd5, 0x24, 0x0f, 0x94, 0x4a, + 0x45, 0xec, 0xb0, 0xb7, 0xae, 0xea, 0xd2, 0xa3, 0xf7, 0x8f, 0x31, 0x7a, 0x9e, 0x81, 0x4b, 0x8a, + 0xb2, 0x5b, 0xa2, 0x08, 0x2f, 0x43, 0x5a, 0x37, 0x08, 0x5d, 0x18, 0xb4, 0xb2, 0x6c, 0x1d, 0x5a, + 0x36, 0xd9, 0x6f, 0x38, 0x95, 0xd2, 0xd8, 0xdf, 0xe7, 0x5c, 0xfa, 0x2d, 0x46, 0xee, 0x74, 0xb7, + 0x09, 0x03, 0xee, 0x3a, 0xc6, 0x67, 0x8e, 0xfb, 0x80, 0x55, 0xe7, 0x29, 0x14, 0xbf, 0xf8, 0xe8, + 0xfd, 0x64, 0x03, 0x9f, 0x47, 0xef, 0x7e, 0x67, 0xe1, 0xf3, 0x39, 0x5c, 0x6c, 0xc0, 0x39, 0x67, + 0xc1, 0x6d, 0xa8, 0x32, 0xfa, 0xdc, 0x55, 0xf6, 0x89, 0x15, 0xda, 0x5f, 0xe3, 0x5d, 0xaf, 0xa7, + 0x61, 0x93, 0x09, 0x5a, 0x20, 0x76, 0xc1, 0x8f, 0xad, 0x2d, 0xb7, 0x79, 0x7c, 0x26, 0x73, 0x0a, + 0x4b, 0xf5, 0x87, 0x0c, 0x3c, 0xaf, 0xb0, 0xbd, 0xda, 0x72, 0x99, 0xea, 0x11, 0x1c, 0xae, 0x78, + 0x0b, 0x2f, 0x40, 0xa2, 0x42, 0xca, 0x4a, 0xf1, 0xd0, 0x8d, 0x8a, 0x63, 0x2d, 0xd6, 0x62, 0x06, + 0x88, 0x53, 0x5d, 0x38, 0x8f, 0x88, 0x75, 0xf1, 0x4d, 0x48, 0x6a, 0xba, 0xec, 0x8b, 0xad, 0x53, + 0x2d, 0x14, 0x41, 0x52, 0x5c, 0xd3, 0x3d, 0x01, 0x3a, 0xfe, 0x0a, 0xa4, 0x3c, 0xcc, 0xbc, 0x8f, + 0x38, 0x04, 0x79, 0xed, 0x34, 0xc1, 0xb9, 0x1b, 0x4f, 0x2f, 0x23, 0x29, 0x51, 0x8f, 0xc1, 0x59, + 0x37, 0xad, 0x42, 0xbf, 0xa6, 0xbb, 0xf9, 0xbf, 0xa7, 0xa7, 0x7a, 0x5b, 0x5e, 0x59, 0xed, 0xd5, + 0x74, 0x11, 0xb7, 0x7b, 0xfa, 0xaa, 0x08, 0xe7, 0x8e, 0x09, 0xe2, 0xca, 0xf6, 0x3d, 0xfd, 0x80, + 0x86, 0xa4, 0x3e, 0xab, 0xa1, 0x06, 0xa6, 0x70, 0x01, 0x7a, 0x3c, 0x0a, 0x0b, 0x64, 0xfd, 0x5c, + 0x0b, 0x65, 0xc3, 0x52, 0xd2, 0x55, 0x56, 0x40, 0xec, 0x8a, 0xe7, 0x76, 0x92, 0xa7, 0x4b, 0x07, + 0x5a, 0xa0, 0xba, 0xcd, 0x8f, 0x11, 0x2c, 0x87, 0xeb, 0x77, 0x90, 0x7c, 0xfd, 0x1a, 0x8c, 0xc9, + 0x9f, 0x6f, 0xa1, 0x6a, 0x24, 0x18, 0xab, 0xff, 0xed, 0x46, 0xb8, 0x8c, 0x69, 0xcb, 0xaf, 0x27, + 0x8e, 0x9e, 0x0e, 0x32, 0x71, 0x95, 0x8d, 0xf8, 0x61, 0x43, 0xa6, 0xeb, 0x5b, 0xd0, 0xab, 0xe9, + 0x72, 0xa9, 0x28, 0x3b, 0x2f, 0x5e, 0xb1, 0x9b, 0x55, 0xe9, 0x8b, 0x27, 0x1a, 0x7a, 0xbb, 0x94, + 0xd2, 0xf4, 0xc5, 0xe2, 0x02, 0x67, 0xbb, 0x4d, 0xb9, 0x70, 0x19, 0x52, 0xc7, 0x24, 0x5d, 0x62, + 0x92, 0x4e, 0xf3, 0xf6, 0xe1, 0xc0, 0xa3, 0xf7, 0x8f, 0xb1, 0x8b, 0xaa, 0x12, 0x25, 0x7f, 0x45, + 0x36, 0x0c, 0x34, 0x52, 0xca, 0xdc, 0xbf, 0xa4, 0x5f, 0xf9, 0x45, 0xd4, 0xd7, 0xe7, 0xaf, 0x6f, + 0x85, 0x89, 0xc6, 0xbf, 0x8f, 0x60, 0x30, 0xa0, 0x5a, 0x27, 0x50, 0x7f, 0xfd, 0x14, 0x3e, 0x72, + 0x3c, 0xe8, 0x7d, 0xc7, 0xcf, 0xde, 0x47, 0xce, 0x59, 0x3f, 0xb1, 0x4a, 0x7a, 0xd2, 0xd5, 0x81, + 0x46, 0x55, 0x9c, 0xf8, 0xf1, 0x0d, 0x88, 0x39, 0xaf, 0xac, 0x94, 0x8d, 0x6a, 0xfa, 0xf2, 0x89, + 0x23, 0xd6, 0x21, 0x81, 0x60, 0xb8, 0x6d, 0x54, 0xf1, 0x6b, 0x00, 0xe2, 0x61, 0x2c, 0xca, 0x9d, + 0x39, 0x05, 0x77, 0x17, 0xa7, 0xa7, 0xcc, 0x1b, 0x10, 0x13, 0xcc, 0x07, 0x94, 0x7b, 0x8a, 0x71, + 0xbf, 0xd2, 0x34, 0x4d, 0xf5, 0xe5, 0x4b, 0x75, 0x6d, 0xb8, 0x88, 0x7b, 0x65, 0xa3, 0x8a, 0xff, + 0x06, 0x5c, 0xf4, 0xee, 0xc8, 0x12, 0x6d, 0x8f, 0xfe, 0xcb, 0xae, 0x45, 0xec, 0xeb, 0x25, 0x92, + 0x7e, 0x2b, 0xf0, 0x4c, 0xa2, 0xb8, 0xc4, 0x55, 0x67, 0x5c, 0xaa, 0xf3, 0xdd, 0xd1, 0xc5, 0x33, + 0x61, 0xec, 0xdc, 0xe5, 0x4f, 0x6b, 0x08, 0x49, 0x83, 0x46, 0x53, 0x4a, 0xda, 0x1d, 0x4e, 0x6f, + 0x1e, 0xec, 0xa7, 0xe7, 0x4e, 0xec, 0x8e, 0x4e, 0xa9, 0x4b, 0xd0, 0xdf, 0xdb, 0xc7, 0x2b, 0xd0, + 0xe5, 0x74, 0xc7, 0x7e, 0xfa, 0x3a, 0xe3, 0x6d, 0x92, 0xb3, 0xdf, 0x09, 0xea, 0x8a, 0x4e, 0x29, + 0x2a, 0xba, 0x62, 0x1f, 0xef, 0x42, 0x1f, 0xb1, 0x8b, 0x25, 0xd7, 0xc8, 0x9c, 0x05, 0xf8, 0x05, + 0x96, 0x30, 0x05, 0x7b, 0xd1, 0x25, 0xbb, 0x58, 0x12, 0x36, 0xe2, 0x4d, 0x9d, 0x3a, 0x85, 0x5d, + 0x49, 0x98, 0x1c, 0x23, 0xc0, 0x1b, 0x90, 0xf6, 0xb8, 0x52, 0x8b, 0x61, 0x28, 0x0e, 0xce, 0xf2, + 0x62, 0x0b, 0x37, 0x15, 0x95, 0xfa, 0x5d, 0x8f, 0xea, 0x85, 0x6d, 0xf0, 0x7d, 0xe8, 0x0f, 0x96, + 0xf6, 0x12, 0x93, 0x36, 0x7d, 0xa2, 0xaf, 0x0a, 0x02, 0x81, 0x96, 0xa3, 0x92, 0xe3, 0xad, 0x7d, + 0x95, 0x7d, 0x0d, 0x5e, 0x12, 0x1d, 0xee, 0x3e, 0x74, 0xc4, 0x62, 0x62, 0x9e, 0xbe, 0xcb, 0x25, + 0xfd, 0x81, 0x56, 0xd1, 0x95, 0x52, 0xfa, 0xe5, 0x80, 0x6d, 0xf0, 0x0c, 0xe7, 0x14, 0x9b, 0x06, + 0x4c, 0x03, 0x3e, 0x28, 0x8b, 0x82, 0x0b, 0xdf, 0x02, 0x1e, 0x43, 0xf3, 0x54, 0xf5, 0x0a, 0xeb, + 0xf9, 0xa1, 0xe6, 0xfa, 0xfb, 0x3b, 0xbb, 0x6b, 0xd7, 0xf9, 0x86, 0xdf, 0x86, 0x98, 0xa5, 0x6a, + 0xe5, 0x0a, 0x61, 0xb9, 0x76, 0x7a, 0xe4, 0x14, 0xfe, 0x21, 0xfd, 0xe8, 0xfd, 0x08, 0x25, 0xf6, + 0xb8, 0x04, 0x11, 0x3f, 0x01, 0x17, 0xb5, 0xa5, 0xda, 0x04, 0xdf, 0x85, 0x81, 0x8a, 0x5e, 0xb6, + 0x64, 0xcb, 0x36, 0x89, 0xb2, 0x4f, 0x43, 0x4d, 0x61, 0x8b, 0xa5, 0x74, 0xee, 0x44, 0xcb, 0xed, + 0x92, 0xfa, 0x29, 0xf3, 0x96, 0xc3, 0xbb, 0x28, 0x58, 0xf1, 0xd7, 0xa0, 0xbb, 0xa2, 0x97, 0x65, + 0x93, 0x14, 0x89, 0x7a, 0x40, 0xcc, 0xf4, 0xb5, 0x53, 0x7b, 0xd2, 0xde, 0x47, 0xef, 0xfb, 0x58, + 0x45, 0x3d, 0xb1, 0x8a, 0x5e, 0x96, 0xc4, 0x27, 0x7c, 0x13, 0xba, 0x4b, 0x44, 0x3b, 0x94, 0x95, + 0x4a, 0x45, 0xae, 0x5a, 0x3b, 0xe9, 0xb1, 0x13, 0x15, 0x05, 0x09, 0x28, 0xc7, 0x7c, 0xa5, 0xb2, + 0x6d, 0xed, 0xe0, 0x37, 0x21, 0xce, 0x77, 0x39, 0x1c, 0x01, 0xe3, 0xa7, 0x10, 0x10, 0x63, 0x2c, + 0x42, 0xc2, 0x3d, 0x80, 0xaa, 0xb5, 0xe3, 0xec, 0xb7, 0x4e, 0x9c, 0xba, 0x75, 0x3d, 0x8f, 0xde, + 0xf7, 0x30, 0x0a, 0xc9, 0x5d, 0x55, 0x6b, 0x47, 0xec, 0xc2, 0xbe, 0x03, 0xb1, 0xfb, 0x73, 0x96, + 0x33, 0x63, 0xd3, 0xf9, 0x53, 0x0b, 0xee, 0x7f, 0xf4, 0xbe, 0x97, 0xd3, 0xb1, 0x20, 0xb8, 0x3f, + 0x67, 0x89, 0xd9, 0x8a, 0x8b, 0xd0, 0x5b, 0xd1, 0x8b, 0x4a, 0x85, 0x5a, 0xb6, 0x6d, 0xea, 0x15, + 0xd9, 0xa8, 0x28, 0x1a, 0x49, 0x4f, 0xb6, 0x78, 0xd4, 0x31, 0x10, 0x4b, 0xab, 0xdb, 0x67, 0x4f, + 0xa5, 0xb1, 0x1c, 0xaf, 0x41, 0xaf, 0xe3, 0xfb, 0x76, 0x69, 0x0f, 0xf3, 0x8b, 0x4b, 0xe9, 0x99, + 0x13, 0x3b, 0x38, 0x26, 0xf5, 0x08, 0xc6, 0x5b, 0x15, 0xfd, 0x01, 0xbf, 0x32, 0x8b, 0xbf, 0x04, + 0x58, 0xcc, 0x4d, 0xaf, 0xb0, 0xd9, 0x16, 0xc2, 0x62, 0x9f, 0xbd, 0x8f, 0xa8, 0xbc, 0x2f, 0xb8, + 0xcc, 0x14, 0x67, 0xf7, 0x88, 0xfc, 0x2a, 0xa4, 0x1a, 0x31, 0x97, 0xf4, 0x6b, 0x6c, 0x36, 0x05, + 0xbb, 0xd9, 0x06, 0x64, 0x4d, 0xa4, 0xc7, 0x74, 0x1e, 0x75, 0x48, 0xc9, 0x9d, 0x06, 0xd8, 0xed, + 0x5d, 0x18, 0xd4, 0x77, 0x77, 0x2b, 0xaa, 0x46, 0x64, 0xab, 0x6a, 0x1e, 0xa8, 0x07, 0xca, 0x8e, + 0x5a, 0x51, 0xed, 0x43, 0xbe, 0xf0, 0xbc, 0x11, 0xf8, 0xe4, 0xb5, 0x18, 0x4d, 0xce, 0xb6, 0xe5, + 0xe5, 0x72, 0x97, 0x1d, 0xb7, 0xc3, 0xd3, 0x7a, 0x13, 0x32, 0xbc, 0x0e, 0x03, 0x6e, 0x9c, 0x68, + 0xaa, 0xfa, 0x81, 0x27, 0x96, 0x58, 0x6f, 0xe1, 0x82, 0xbb, 0x25, 0x27, 0xbc, 0x6c, 0x40, 0x94, + 0xbe, 0x02, 0xa9, 0x06, 0x39, 0x56, 0x7a, 0x83, 0x09, 0xca, 0x05, 0x9f, 0x56, 0xf0, 0xb1, 0xd7, + 0x9d, 0x6e, 0xb7, 0x94, 0xb4, 0xfc, 0x45, 0xf8, 0x3e, 0xa4, 0xef, 0x57, 0x77, 0x88, 0xa9, 0x11, + 0x9b, 0x58, 0x72, 0xd5, 0x28, 0x9b, 0x4a, 0x89, 0xc8, 0x25, 0x53, 0x51, 0xb5, 0xf4, 0x66, 0x60, + 0x80, 0xcf, 0xbb, 0xe8, 0x2d, 0x97, 0x69, 0x9b, 0xf3, 0x2c, 0x52, 0x96, 0x42, 0x84, 0xad, 0xc7, + 0xe7, 0xee, 0x07, 0x96, 0xe2, 0x1d, 0x48, 0x29, 0x1c, 0xe9, 0xa9, 0x0f, 0xf7, 0x4f, 0x3a, 0x5b, + 0xe4, 0x3c, 0xcd, 0xd0, 0xa1, 0xfa, 0x20, 0x24, 0x15, 0x5f, 0x21, 0x8d, 0xab, 0xe3, 0xec, 0x3d, + 0x7a, 0xd6, 0x55, 0x9a, 0x52, 0x49, 0x7f, 0xd1, 0x79, 0xea, 0x79, 0xdb, 0xf7, 0xe8, 0x7d, 0x3f, + 0x33, 0xab, 0xa2, 0x9b, 0x7e, 0x5a, 0x11, 0x5f, 0xf0, 0x06, 0x24, 0xcb, 0x44, 0xa3, 0x99, 0x3d, + 0x29, 0xc9, 0x87, 0xca, 0x7e, 0xc5, 0x4a, 0xff, 0xb8, 0x93, 0xe1, 0x44, 0x2f, 0x7b, 0x7c, 0xbb, + 0x03, 0x15, 0x89, 0xd3, 0x45, 0xce, 0xcf, 0x6f, 0x21, 0x24, 0x25, 0x5c, 0xf6, 0xaf, 0x50, 0xee, + 0xc2, 0x30, 0xa4, 0xea, 0x89, 0x95, 0xe7, 0x44, 0xf4, 0xab, 0x8f, 0x6b, 0xa8, 0xeb, 0xa8, 0x86, + 0xa2, 0x93, 0xce, 0x45, 0xb9, 0x0c, 0xb0, 0xcd, 0x16, 0xef, 0x83, 0x1a, 0xa9, 0xc7, 0x35, 0x94, + 0x64, 0x0f, 0x6a, 0xcc, 0xe4, 0x26, 0x66, 0x0b, 0xd7, 0x20, 0x7d, 0x3c, 0x59, 0xf3, 0x90, 0xf7, + 0x3e, 0xae, 0x21, 0xcc, 0xc8, 0xaf, 0xe7, 0xf2, 0xe3, 0x85, 0x91, 0xfa, 0xd2, 0xee, 0xdf, 0x14, + 0xa6, 0xb4, 0xe7, 0x1e, 0xd7, 0x50, 0x3f, 0xa5, 0x65, 0x57, 0x61, 0x0b, 0x57, 0xa0, 0xcf, 0x9f, + 0xaf, 0x78, 0x48, 0xcf, 0x3f, 0xae, 0xa1, 0x34, 0x23, 0x9d, 0xce, 0xe5, 0x67, 0x0a, 0xe3, 0x01, + 0x41, 0xbc, 0xa0, 0xee, 0xff, 0xb8, 0x86, 0x2e, 0x8a, 0x6b, 0x7d, 0x17, 0x18, 0xc7, 0x5c, 0x2e, + 0x7f, 0xbd, 0xf0, 0x0a, 0x40, 0xd9, 0xa8, 0x7a, 0xef, 0xfe, 0x5d, 0x16, 0x44, 0x43, 0xac, 0x07, + 0x26, 0x72, 0x93, 0xf9, 0xdc, 0x74, 0xbe, 0x90, 0x85, 0xae, 0x83, 0x7d, 0xaf, 0xac, 0x39, 0x41, + 0x76, 0x83, 0xca, 0x9a, 0x9e, 0xc9, 0x4d, 0xcf, 0x16, 0x26, 0xe0, 0x62, 0x60, 0xbc, 0xe2, 0x55, + 0xf8, 0xc5, 0xc7, 0x35, 0x94, 0xa5, 0x2c, 0x93, 0xd3, 0xb9, 0xc9, 0x99, 0xc2, 0x35, 0xe8, 0x63, + 0xcb, 0xae, 0xb3, 0xcc, 0x79, 0x6b, 0xc8, 0x89, 0x1a, 0xae, 0x52, 0xf2, 0xa9, 0xa9, 0xdc, 0xd4, + 0x74, 0xe1, 0x1a, 0xf4, 0xd4, 0x97, 0x0d, 0xaf, 0xd2, 0x63, 0x82, 0x76, 0x94, 0x2a, 0x3d, 0x35, + 0x9b, 0x9b, 0x9a, 0xcb, 0x4d, 0x5d, 0x2f, 0x0c, 0x43, 0x9f, 0xc7, 0x61, 0xd6, 0xa5, 0xa7, 0x3e, + 0xae, 0xa1, 0x19, 0xc1, 0x31, 0x4d, 0xe7, 0x4d, 0xe1, 0x2a, 0x9c, 0x6b, 0x98, 0xe7, 0x5e, 0xa5, + 0xd7, 0x1f, 0xd7, 0xd0, 0x1d, 0xaa, 0xc5, 0xec, 0x5c, 0x6e, 0xf6, 0xfa, 0x6a, 0x24, 0xda, 0x95, + 0x82, 0xd5, 0x48, 0x34, 0x99, 0x4a, 0xad, 0x46, 0xa2, 0x38, 0xd5, 0xbb, 0x1a, 0x89, 0xf6, 0xa7, + 0xce, 0xad, 0x46, 0xa2, 0xe9, 0xd4, 0xf9, 0xd5, 0x48, 0xf4, 0x42, 0xea, 0xe2, 0x6a, 0x24, 0x3a, + 0x94, 0xba, 0xbc, 0x1a, 0x89, 0xde, 0x48, 0xbd, 0xb6, 0x1a, 0x89, 0x66, 0x53, 0x2f, 0xae, 0x46, + 0xa2, 0xc3, 0xa9, 0x2b, 0xab, 0x91, 0xe8, 0xd5, 0x54, 0x6e, 0x35, 0x12, 0x1d, 0x4d, 0x8d, 0xad, + 0x46, 0xa2, 0xd3, 0xa9, 0x99, 0xd5, 0x48, 0xf4, 0x4e, 0x6a, 0x3d, 0xfb, 0x7f, 0x2e, 0x43, 0x62, + 0xc1, 0x24, 0x8a, 0x4d, 0x9e, 0x0d, 0x96, 0xbc, 0x71, 0x22, 0x2c, 0xd9, 0x1c, 0x86, 0x54, 0x9e, + 0x19, 0x36, 0xec, 0x0b, 0x82, 0x0d, 0x83, 0xc0, 0xc2, 0xaf, 0x3d, 0x23, 0x58, 0xd8, 0x1b, 0x00, + 0x16, 0x1e, 0x87, 0x08, 0xe7, 0x4e, 0x82, 0x08, 0x9b, 0x42, 0x82, 0x7b, 0xcf, 0x07, 0x09, 0xe2, + 0xe3, 0xf8, 0x5c, 0x33, 0x20, 0x70, 0xf7, 0xb9, 0x80, 0xc0, 0xa0, 0x8a, 0x4e, 0x0b, 0xff, 0xc5, + 0x7f, 0x01, 0xf0, 0xdf, 0x1b, 0xf5, 0xf7, 0x4f, 0xc5, 0x7e, 0xde, 0x70, 0xeb, 0xfb, 0x5e, 0x82, + 0x9a, 0xa7, 0x01, 0xf8, 0x2d, 0x88, 0x79, 0x91, 0xa1, 0x44, 0x8b, 0x8b, 0xae, 0x01, 0xff, 0xab, + 0x85, 0xe5, 0x36, 0x1a, 0xb6, 0xba, 0x58, 0xd0, 0x19, 0xfc, 0x77, 0x06, 0xff, 0xfd, 0x1a, 0xc3, + 0x7f, 0x4b, 0x4f, 0x0d, 0xff, 0x05, 0x02, 0x7f, 0xc5, 0xe7, 0x02, 0xfe, 0x7a, 0x03, 0x80, 0xb8, + 0x00, 0xd0, 0xcf, 0xf8, 0x45, 0x80, 0x7e, 0x4d, 0xea, 0x0a, 0x06, 0xfc, 0x66, 0x4f, 0x0d, 0xb1, + 0x35, 0x80, 0x6b, 0xd3, 0xa7, 0x05, 0xd7, 0xfc, 0xb0, 0xda, 0xca, 0x73, 0xc0, 0x6a, 0x0d, 0x80, + 0xda, 0xb3, 0xe2, 0x3b, 0x9d, 0xbf, 0x5a, 0x7c, 0xa7, 0x33, 0x18, 0xdf, 0x59, 0x7f, 0x1a, 0x7c, + 0xe7, 0x14, 0x88, 0xce, 0xfa, 0x33, 0x01, 0x26, 0xcb, 0xd1, 0x66, 0x50, 0xc9, 0x97, 0x9f, 0x19, + 0x2a, 0x49, 0x36, 0x40, 0x25, 0xcb, 0x51, 0x3f, 0x4c, 0x32, 0x77, 0x7a, 0x98, 0x64, 0xb9, 0xcb, + 0x07, 0x90, 0xdc, 0x78, 0x0a, 0x80, 0x64, 0xb9, 0xcb, 0x0f, 0x8d, 0x48, 0xcf, 0x08, 0x8d, 0xc4, + 0x7d, 0xd0, 0xc8, 0x72, 0x97, 0x17, 0x16, 0x99, 0x3e, 0x2d, 0xa2, 0xba, 0x0c, 0x5e, 0x2c, 0x75, + 0xe1, 0x19, 0xb1, 0xd4, 0x65, 0xf0, 0xa0, 0xa8, 0x1b, 0xcf, 0x07, 0x18, 0x1c, 0x07, 0x09, 0xaa, + 0xbf, 0x34, 0x7c, 0xba, 0x25, 0x2a, 0xfd, 0x8c, 0x08, 0x41, 0xec, 0x97, 0x8d, 0x10, 0xc4, 0xfe, + 0x72, 0x11, 0x82, 0x1b, 0xff, 0x15, 0x7d, 0x7a, 0xb3, 0xe1, 0x60, 0xc4, 0x27, 0x35, 0xf4, 0xe7, + 0x08, 0x32, 0xe2, 0xec, 0x6e, 0xc3, 0x29, 0xd0, 0xae, 0x09, 0xf6, 0x94, 0x4c, 0x3e, 0x37, 0x03, + 0x17, 0x00, 0x8b, 0xe8, 0x33, 0xe3, 0xd1, 0xbe, 0x7d, 0x62, 0x3a, 0x37, 0xc1, 0xee, 0x5f, 0x3b, + 0x85, 0x9e, 0x7c, 0x00, 0x4d, 0x41, 0x3f, 0xa4, 0x9c, 0x02, 0x37, 0x90, 0x47, 0xd3, 0xf0, 0x02, + 0xf4, 0xbb, 0xe7, 0xe3, 0x7d, 0x15, 0x46, 0x27, 0xe6, 0x72, 0xf9, 0x89, 0x5c, 0x7e, 0x0a, 0x6e, + 0xc0, 0x39, 0xf7, 0x0c, 0xb6, 0x9f, 0x26, 0x93, 0x9f, 0xcd, 0x4d, 0x8e, 0xe7, 0x26, 0xa7, 0x72, + 0x53, 0x93, 0xb9, 0xb9, 0xf1, 0xdc, 0xd4, 0x4c, 0x6e, 0x7a, 0x2e, 0x37, 0x7d, 0x3d, 0x37, 0x39, + 0x9b, 0x9b, 0x9d, 0xce, 0xcd, 0xce, 0x16, 0xf2, 0x01, 0x39, 0xff, 0xd0, 0xc7, 0x35, 0x34, 0x2c, + 0xde, 0xc7, 0x8c, 0x4e, 0x8d, 0xf3, 0xd7, 0x6e, 0x1e, 0x3e, 0x41, 0x1d, 0xaf, 0x6b, 0xba, 0x46, + 0x6e, 0x16, 0x86, 0xfc, 0xd9, 0x7f, 0xf2, 0xe1, 0x13, 0xe4, 0xfd, 0x50, 0x98, 0x6b, 0x91, 0xfb, + 0x5f, 0x7c, 0xf8, 0x04, 0x35, 0x2d, 0x2d, 0xe4, 0x9b, 0xc1, 0x00, 0xe7, 0x1f, 0x3e, 0x41, 0xc1, + 0x45, 0x85, 0xf1, 0x26, 0x70, 0x40, 0xfa, 0xe1, 0x13, 0x14, 0x58, 0x52, 0x98, 0x69, 0x8e, 0x0a, + 0x5c, 0x78, 0xf8, 0x04, 0x35, 0x2b, 0x2c, 0x5c, 0xf4, 0x61, 0x03, 0x89, 0x87, 0x4f, 0x90, 0xe7, + 0x77, 0xe1, 0xcd, 0x13, 0xb2, 0xfd, 0xcc, 0xc3, 0x27, 0xa8, 0x25, 0x05, 0x6d, 0x49, 0x60, 0xf2, + 0xcf, 0x5a, 0x12, 0x54, 0x52, 0x18, 0x09, 0xca, 0xff, 0xfb, 0x1f, 0x3e, 0x41, 0xc7, 0x3f, 0x17, + 0x06, 0xbd, 0x88, 0x45, 0xfc, 0xe1, 0x13, 0x54, 0xff, 0x59, 0x98, 0x6a, 0x9a, 0xee, 0x0f, 0x3e, + 0x7c, 0x82, 0x9a, 0x94, 0xf1, 0x87, 0x52, 0x4f, 0x99, 0xf7, 0xf3, 0x8c, 0xdf, 0x9b, 0xeb, 0x73, + 0x24, 0xe0, 0x8d, 0xd4, 0xcd, 0xd5, 0x48, 0x74, 0x2d, 0x75, 0x47, 0xe4, 0xfd, 0xff, 0xe6, 0x32, + 0x24, 0x25, 0x62, 0x54, 0x94, 0x62, 0x3d, 0xf1, 0x3f, 0xcb, 0xe5, 0xcf, 0x72, 0xf9, 0xb3, 0x5c, + 0xfe, 0x2c, 0x97, 0x3f, 0xcb, 0xe5, 0xcf, 0x72, 0xf9, 0xb3, 0x5c, 0xfe, 0x2c, 0x97, 0x3f, 0xcb, + 0xe5, 0xcf, 0x72, 0xf9, 0xb3, 0x5c, 0xfe, 0x2c, 0x97, 0x3f, 0x75, 0x2e, 0xff, 0x5f, 0x02, 0x73, + 0xf9, 0x7f, 0x8b, 0x60, 0x28, 0x38, 0x97, 0xef, 0xfc, 0xcb, 0xca, 0xe4, 0x67, 0x9b, 0x66, 0xf2, + 0x97, 0x5a, 0x66, 0xf2, 0x67, 0x69, 0xfc, 0x59, 0x1a, 0xff, 0x1c, 0x69, 0x3c, 0xff, 0xbf, 0x4d, + 0x3e, 0x7f, 0x32, 0x5f, 0x4f, 0xe3, 0x7f, 0x7c, 0x19, 0x62, 0xb7, 0x89, 0x7d, 0xb6, 0x77, 0x7f, + 0x96, 0xef, 0x9f, 0xe5, 0xfb, 0x67, 0xf9, 0xfe, 0x59, 0xbe, 0x7f, 0x96, 0xef, 0x9f, 0xe5, 0xfb, + 0x67, 0xf9, 0xfe, 0x59, 0xbe, 0x7f, 0x96, 0xef, 0x9f, 0xe5, 0xfb, 0x67, 0xf9, 0xfe, 0x2f, 0x39, + 0xdf, 0xff, 0x4f, 0x81, 0xf9, 0xfe, 0x9f, 0xfd, 0x3a, 0xee, 0xdd, 0x4f, 0x34, 0xcd, 0xf8, 0x07, + 0x8e, 0x67, 0xfc, 0x67, 0x5b, 0xf6, 0x67, 0xb9, 0xfe, 0xaf, 0xdf, 0x96, 0xfd, 0x5b, 0x10, 0x13, + 0x0b, 0xb9, 0x62, 0x57, 0x2d, 0xfc, 0x3a, 0x0c, 0x2a, 0x07, 0x8a, 0x5a, 0x61, 0x4e, 0xfa, 0x58, + 0xfa, 0xce, 0x1f, 0xa0, 0x49, 0xbb, 0x14, 0x0d, 0xf9, 0x7b, 0xd6, 0x84, 0x81, 0x06, 0x6f, 0xeb, + 0xbe, 0xd6, 0xf5, 0x36, 0x24, 0xea, 0x5e, 0x5b, 0xbc, 0x78, 0xfb, 0x0c, 0x17, 0xb4, 0xd2, 0x48, + 0x8a, 0xbb, 0xfe, 0x9b, 0x96, 0x65, 0x2d, 0x18, 0x68, 0xe2, 0xc9, 0xf0, 0x97, 0x21, 0xd9, 0xe8, + 0x59, 0x79, 0xa5, 0x2f, 0x9e, 0xc2, 0x21, 0xfa, 0xea, 0x4c, 0xf8, 0x3d, 0xe2, 0xc8, 0x77, 0x10, + 0x9c, 0x0b, 0xbe, 0x55, 0x8b, 0x5f, 0x84, 0xcb, 0x4b, 0x77, 0x17, 0x16, 0xe5, 0x85, 0xb5, 0xed, + 0xad, 0xbb, 0x4b, 0x92, 0xbc, 0xb5, 0x72, 0x77, 0x49, 0x5e, 0xdb, 0x58, 0x98, 0x5f, 0x93, 0xd7, + 0x97, 0xee, 0xbe, 0xbd, 0x21, 0xbd, 0x95, 0x6a, 0xc3, 0x23, 0xf0, 0x4a, 0x33, 0xa2, 0x95, 0xf5, + 0xad, 0x95, 0xc5, 0x25, 0x97, 0x16, 0xe1, 0x61, 0x78, 0xe9, 0x38, 0xed, 0x9d, 0xf9, 0xf5, 0xf9, + 0xdb, 0x4b, 0x77, 0x96, 0xd6, 0xef, 0xba, 0x94, 0xa1, 0x91, 0x43, 0x48, 0xf2, 0x54, 0x65, 0xe3, + 0x81, 0x46, 0xf8, 0xab, 0xe5, 0x69, 0xe8, 0x5b, 0x5c, 0xba, 0xb7, 0xb2, 0xb0, 0x24, 0x6f, 0xbc, + 0xbd, 0xbe, 0x24, 0xc9, 0x2b, 0xeb, 0xf7, 0xe6, 0xd7, 0x56, 0x16, 0x53, 0x6d, 0xb8, 0x0f, 0x52, + 0xbe, 0x92, 0x7b, 0x4b, 0x52, 0x0a, 0xe1, 0xcb, 0x70, 0xc1, 0xff, 0xf5, 0xad, 0xb9, 0x2d, 0x99, + 0x8a, 0x97, 0xd7, 0x36, 0xe6, 0x17, 0x53, 0x21, 0xdc, 0x0f, 0x3d, 0x3e, 0x82, 0xe5, 0x8d, 0xad, + 0xbb, 0xa9, 0xf0, 0xc8, 0x18, 0x74, 0xb9, 0x77, 0x5d, 0x71, 0x0f, 0xc4, 0xef, 0x6c, 0xaf, 0xdd, + 0x5d, 0xd9, 0x5c, 0x5b, 0x62, 0xda, 0xa6, 0xda, 0x70, 0x12, 0x62, 0x5b, 0x2b, 0xeb, 0xb7, 0x9d, + 0x0f, 0x68, 0xe4, 0xf7, 0x10, 0x5c, 0x16, 0xdd, 0x46, 0x83, 0x2f, 0xdf, 0xa3, 0x30, 0xdb, 0xe2, + 0xf1, 0xfb, 0x17, 0xe0, 0x92, 0x68, 0x9c, 0xbc, 0xb2, 0x7e, 0x77, 0x49, 0xba, 0x35, 0xbf, 0xb0, + 0x24, 0x6f, 0x6f, 0x2d, 0xc9, 0xd2, 0xd2, 0xed, 0xed, 0xb5, 0x79, 0x29, 0xd5, 0xd6, 0x9c, 0x64, + 0x63, 0xfb, 0x2e, 0xed, 0xc7, 0x14, 0xc2, 0x19, 0xb8, 0x18, 0x4c, 0xc2, 0x7b, 0x3a, 0x15, 0x1a, + 0x79, 0x03, 0x92, 0x0d, 0x8f, 0xa5, 0xe1, 0x04, 0x78, 0x9e, 0x4a, 0x4b, 0xb5, 0xe1, 0x28, 0x44, + 0x28, 0x49, 0x0a, 0xe1, 0x4e, 0x08, 0xdf, 0x7b, 0x7b, 0x2b, 0x15, 0x62, 0x7f, 0x2c, 0x6c, 0xa5, + 0x22, 0x85, 0x6f, 0xa2, 0xc7, 0x3f, 0x1c, 0x6a, 0xfb, 0xec, 0x87, 0x43, 0x6d, 0x3f, 0xfd, 0xe1, + 0x10, 0xfa, 0xe0, 0x68, 0x08, 0xfd, 0xf3, 0xa3, 0x21, 0xf4, 0x83, 0xa3, 0x21, 0xf4, 0xf8, 0x68, + 0x08, 0x7d, 0x76, 0x34, 0x84, 0xfe, 0xe2, 0x68, 0x08, 0x7d, 0x71, 0x34, 0xd4, 0xf6, 0xd3, 0xa3, + 0x21, 0xf4, 0xad, 0x1f, 0x0d, 0xb5, 0x7d, 0xfc, 0xa3, 0x21, 0xf4, 0xf8, 0x47, 0x43, 0x6d, 0x9f, + 0xfd, 0x68, 0xa8, 0xed, 0x9d, 0x95, 0xb2, 0x6e, 0xdc, 0x2f, 0x8f, 0x3a, 0x98, 0xd8, 0x68, 0xd5, + 0x1a, 0x63, 0x7f, 0xd0, 0xb8, 0xe1, 0x9a, 0x61, 0xea, 0x07, 0x6a, 0x89, 0x98, 0xd7, 0x9c, 0xe2, + 0x31, 0x63, 0xa7, 0xac, 0x8f, 0x91, 0x77, 0x6d, 0x6e, 0xba, 0x63, 0xe2, 0x1f, 0x66, 0xc1, 0x3b, + 0x1d, 0xec, 0x7f, 0x00, 0x30, 0xf9, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0x0b, 0xba, 0x2d, 0x55, + 0x8c, 0x96, 0x00, 0x00, } func (x EtcdClusterNetworkType) String() string { @@ -11757,6 +11797,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.SriovInterfaceChoice.Equal(that1.SriovInterfaceChoice) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if !this.AllowedServices.Equal(that1.AllowedServices) { return false } @@ -12675,6 +12718,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { } else if !this.SriovInterfaceChoice.Equal(that1.SriovInterfaceChoice) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_InterfaceList) Equal(that interface{}) bool { @@ -13528,6 +13574,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if !this.SriovInterfaceChoice.Equal(that1.SriovInterfaceChoice) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *ReplaceSpecType_InterfaceList) Equal(that interface{}) bool { @@ -14384,6 +14433,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { } else if !this.SriovInterfaceChoice.Equal(that1.SriovInterfaceChoice) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GetSpecType_InterfaceList) Equal(that interface{}) bool { @@ -16254,7 +16306,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 55) + s := make([]string, 0, 56) s = append(s, "&fleet.GlobalSpecType{") s = append(s, "FleetLabel: "+fmt.Sprintf("%#v", this.FleetLabel)+",\n") s = append(s, "VolterraSoftwareVersion: "+fmt.Sprintf("%#v", this.VolterraSoftwareVersion)+",\n") @@ -16337,6 +16389,9 @@ func (this *GlobalSpecType) GoString() string { if this.SriovInterfaceChoice != nil { s = append(s, "SriovInterfaceChoice: "+fmt.Sprintf("%#v", this.SriovInterfaceChoice)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.AllowedServices != nil { s = append(s, "AllowedServices: "+fmt.Sprintf("%#v", this.AllowedServices)+",\n") } @@ -16591,7 +16646,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 42) + s := make([]string, 0, 43) s = append(s, "&fleet.CreateSpecType{") s = append(s, "FleetLabel: "+fmt.Sprintf("%#v", this.FleetLabel)+",\n") s = append(s, "VolterraSoftwareVersion: "+fmt.Sprintf("%#v", this.VolterraSoftwareVersion)+",\n") @@ -16651,6 +16706,9 @@ func (this *CreateSpecType) GoString() string { if this.SriovInterfaceChoice != nil { s = append(s, "SriovInterfaceChoice: "+fmt.Sprintf("%#v", this.SriovInterfaceChoice)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -16882,7 +16940,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 41) + s := make([]string, 0, 42) s = append(s, "&fleet.ReplaceSpecType{") s = append(s, "VolterraSoftwareVersion: "+fmt.Sprintf("%#v", this.VolterraSoftwareVersion)+",\n") if this.NetworkConnectors != nil { @@ -16941,6 +16999,9 @@ func (this *ReplaceSpecType) GoString() string { if this.SriovInterfaceChoice != nil { s = append(s, "SriovInterfaceChoice: "+fmt.Sprintf("%#v", this.SriovInterfaceChoice)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -17172,7 +17233,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 42) + s := make([]string, 0, 43) s = append(s, "&fleet.GetSpecType{") s = append(s, "FleetLabel: "+fmt.Sprintf("%#v", this.FleetLabel)+",\n") s = append(s, "VolterraSoftwareVersion: "+fmt.Sprintf("%#v", this.VolterraSoftwareVersion)+",\n") @@ -17232,6 +17293,9 @@ func (this *GetSpecType) GoString() string { if this.SriovInterfaceChoice != nil { s = append(s, "SriovInterfaceChoice: "+fmt.Sprintf("%#v", this.SriovInterfaceChoice)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -20969,6 +21033,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xc2 } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 + } if m.SriovInterfaceChoice != nil { { size := m.SriovInterfaceChoice.Size() @@ -22016,6 +22094,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 + } if m.SriovInterfaceChoice != nil { { size := m.SriovInterfaceChoice.Size() @@ -22906,6 +22998,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 + } if m.SriovInterfaceChoice != nil { { size := m.SriovInterfaceChoice.Size() @@ -23789,6 +23895,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 + } if m.SriovInterfaceChoice != nil { { size := m.SriovInterfaceChoice.Size() @@ -26483,6 +26603,10 @@ func (m *GlobalSpecType) Size() (n int) { if m.SriovInterfaceChoice != nil { n += m.SriovInterfaceChoice.Size() } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.ViewInternal != nil { l = m.ViewInternal.Size() n += 2 + l + sovTypes(uint64(l)) @@ -26951,6 +27075,10 @@ func (m *CreateSpecType) Size() (n int) { if m.SriovInterfaceChoice != nil { n += m.SriovInterfaceChoice.Size() } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -27377,6 +27505,10 @@ func (m *ReplaceSpecType) Size() (n int) { if m.SriovInterfaceChoice != nil { n += m.SriovInterfaceChoice.Size() } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -27807,6 +27939,10 @@ func (m *GetSpecType) Size() (n int) { if m.SriovInterfaceChoice != nil { n += m.SriovInterfaceChoice.Size() } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -29412,6 +29548,7 @@ func (this *GlobalSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `GeneratedYamls:` + fmt.Sprintf("%v", this.GeneratedYamls) + `,`, `AllowedServices:` + strings.Replace(this.AllowedServices.String(), "CustomAllowedServiceList", "CustomAllowedServiceList", 1) + `,`, @@ -29771,6 +29908,7 @@ func (this *CreateSpecType) String() string { `BlockedServices:` + repeatedStringForBlockedServices + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -30106,6 +30244,7 @@ func (this *ReplaceSpecType) String() string { `BlockedServices:` + repeatedStringForBlockedServices + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -30442,6 +30581,7 @@ func (this *GetSpecType) String() string { `BlockedServices:` + repeatedStringForBlockedServices + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -41587,6 +41727,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.SriovInterfaceChoice = &GlobalSpecType_SriovInterfaces{v} iNdEx = postIndex + case 80: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1000: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ViewInternal", wireType) @@ -43046,6 +43222,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } m.SriovInterfaceChoice = &CreateSpecType_SriovInterfaces{v} iNdEx = postIndex + case 80: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -44369,6 +44581,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.SriovInterfaceChoice = &ReplaceSpecType_SriovInterfaces{v} iNdEx = postIndex + case 80: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -45724,6 +45972,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.SriovInterfaceChoice = &GetSpecType_SriovInterfaces{v} iNdEx = postIndex + case 80: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/fleet/types.vesmsg.go b/pbgo/extschema/schema/fleet/types.vesmsg.go index b213e3019..ea96cc286 100644 --- a/pbgo/extschema/schema/fleet/types.vesmsg.go +++ b/pbgo/extschema/schema/fleet/types.vesmsg.go @@ -1878,6 +1878,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -2469,6 +2478,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -7624,6 +7635,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -8215,6 +8235,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -9981,6 +10003,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["local_control_plane"]; exists { vOpts := append(opts, db.WithValidateField("local_control_plane")) @@ -10658,6 +10689,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["allowed_services"] = CustomAllowedServiceListValidator().Validate @@ -12863,6 +12896,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -13442,6 +13484,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -18429,6 +18473,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.GetGpuChoiceFromGlobalSpecType(f) m.InsideVirtualNetwork = f.GetInsideVirtualNetwork() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.NetworkConnectors = f.GetNetworkConnectors() m.NetworkFirewall = f.GetNetworkFirewall() @@ -18468,6 +18513,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetGpuChoiceToGlobalSpecType(f) f.InsideVirtualNetwork = m1.InsideVirtualNetwork + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.NetworkConnectors = m1.NetworkConnectors f.NetworkFirewall = m1.NetworkFirewall @@ -18907,6 +18953,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GetGpuChoiceFromGlobalSpecType(f) m.InsideVirtualNetwork = f.GetInsideVirtualNetwork() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.NetworkConnectors = f.GetNetworkConnectors() m.NetworkFirewall = f.GetNetworkFirewall() @@ -18946,6 +18993,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m1.SetGpuChoiceToGlobalSpecType(f) f.InsideVirtualNetwork = m1.InsideVirtualNetwork + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.NetworkConnectors = m1.NetworkConnectors f.NetworkFirewall = m1.NetworkFirewall @@ -19384,6 +19432,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.GetGpuChoiceFromGlobalSpecType(f) m.InsideVirtualNetwork = f.GetInsideVirtualNetwork() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.NetworkConnectors = f.GetNetworkConnectors() m.NetworkFirewall = f.GetNetworkFirewall() @@ -19422,6 +19471,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetGpuChoiceToGlobalSpecType(f) f.InsideVirtualNetwork = m1.InsideVirtualNetwork + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.NetworkConnectors = m1.NetworkConnectors f.NetworkFirewall = m1.NetworkFirewall diff --git a/pbgo/extschema/schema/flow_exporter/crudapi/api.vesapi.go b/pbgo/extschema/schema/flow_exporter/crudapi/api.vesapi.go index e730004f3..b6e17ea53 100644 --- a/pbgo/extschema/schema/flow_exporter/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/flow_exporter/crudapi/api.vesapi.go @@ -3322,10 +3322,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/global_log_receiver/crudapi/api.vesapi.go b/pbgo/extschema/schema/global_log_receiver/crudapi/api.vesapi.go index 14759fc40..0d79a3bf6 100644 --- a/pbgo/extschema/schema/global_log_receiver/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/global_log_receiver/crudapi/api.vesapi.go @@ -4224,10 +4224,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/global_log_receiver/public_crudapi.vesapi.go b/pbgo/extschema/schema/global_log_receiver/public_crudapi.vesapi.go index 364b7e0d8..0f8d5623d 100644 --- a/pbgo/extschema/schema/global_log_receiver/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/global_log_receiver/public_crudapi.vesapi.go @@ -4067,10 +4067,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4127,10 +4131,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4189,10 +4197,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/healthcheck/crudapi/api.vesapi.go b/pbgo/extschema/schema/healthcheck/crudapi/api.vesapi.go index fa3a7b9da..7831448d8 100644 --- a/pbgo/extschema/schema/healthcheck/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/healthcheck/crudapi/api.vesapi.go @@ -3388,10 +3388,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/healthcheck/object.pb.go b/pbgo/extschema/schema/healthcheck/object.pb.go index 5e5955f99..37ea55239 100644 --- a/pbgo/extschema/schema/healthcheck/object.pb.go +++ b/pbgo/extschema/schema/healthcheck/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_f5bd65f59eb96a9c = []byte{ - // 584 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x6b, 0xd4, 0x40, - 0x14, 0xc7, 0x33, 0xbb, 0x65, 0x5b, 0x66, 0x4b, 0x2d, 0xf1, 0x92, 0x56, 0x1d, 0xca, 0x8a, 0x52, - 0xc1, 0x24, 0x52, 0x91, 0xda, 0x22, 0x1e, 0x5a, 0xa1, 0x97, 0xd6, 0xc2, 0xd6, 0x93, 0x97, 0x32, - 0x99, 0x7d, 0x9b, 0xc4, 0x26, 0x3b, 0x61, 0x66, 0x12, 0xbb, 0x07, 0xc1, 0x2f, 0x20, 0xf8, 0x19, - 0x3c, 0x89, 0xe0, 0x77, 0xb0, 0x9e, 0x3c, 0x96, 0x9e, 0x7a, 0xb4, 0xd9, 0x8b, 0xe0, 0xa5, 0x67, - 0x4f, 0xb2, 0x93, 0x66, 0xd9, 0x5d, 0x57, 0x91, 0xbd, 0xcd, 0xf0, 0x7e, 0xff, 0x7f, 0xde, 0x7b, - 0xf3, 0x5e, 0xf0, 0xdd, 0x0c, 0xa4, 0x13, 0x72, 0x57, 0xb2, 0x00, 0x62, 0xea, 0x06, 0x40, 0x23, - 0x15, 0xb0, 0x00, 0xd8, 0x91, 0xcb, 0xbd, 0x57, 0xc0, 0x94, 0x93, 0x08, 0xae, 0xb8, 0xb9, 0x54, - 0x70, 0x4e, 0xc1, 0x39, 0x43, 0xdc, 0xb2, 0xed, 0x87, 0x2a, 0x48, 0x3d, 0x87, 0xf1, 0xd8, 0xf5, - 0xb9, 0xcf, 0x5d, 0xad, 0xf0, 0xd2, 0xb6, 0xbe, 0xe9, 0x8b, 0x3e, 0x15, 0x4e, 0xcb, 0x77, 0xfe, - 0xfe, 0x45, 0xd5, 0x4d, 0x40, 0x5e, 0x61, 0x37, 0x46, 0x31, 0x9e, 0xa8, 0x90, 0x77, 0xca, 0xe0, - 0xd2, 0x68, 0x70, 0x58, 0xd7, 0x18, 0x0d, 0x65, 0x20, 0xa1, 0x93, 0x8d, 0xca, 0x1b, 0xbf, 0xaa, - 0xb8, 0xb6, 0xaf, 0xab, 0x33, 0x37, 0xf0, 0x5c, 0x0c, 0x8a, 0xb6, 0xa8, 0xa2, 0x16, 0x5a, 0x41, - 0xab, 0xf5, 0xb5, 0x5b, 0xce, 0x68, 0xa9, 0x05, 0xb8, 0x07, 0x8a, 0xbe, 0xe8, 0x26, 0xd0, 0x1c, - 0xe0, 0xe6, 0x2e, 0xbe, 0x26, 0xbb, 0x52, 0x41, 0x7c, 0x38, 0x70, 0xa8, 0x68, 0x87, 0xdb, 0x63, - 0x0e, 0x07, 0x9a, 0x1a, 0xf3, 0x59, 0x28, 0xb4, 0x7b, 0xa5, 0xdb, 0x3a, 0x9e, 0x91, 0x09, 0x30, - 0xab, 0x3a, 0xd1, 0x62, 0xa8, 0x4b, 0xce, 0x41, 0x02, 0x4c, 0x5b, 0x68, 0xc1, 0xe6, 0xe7, 0xca, - 0xd7, 0x13, 0xab, 0xb2, 0x88, 0xce, 0x4e, 0xac, 0x0f, 0x15, 0xbc, 0x8e, 0xab, 0x3b, 0xa0, 0xcc, - 0x07, 0xed, 0x47, 0xc7, 0xcc, 0x96, 0xc0, 0x52, 0x01, 0x31, 0xc8, 0xc0, 0xf6, 0xa8, 0x0c, 0x99, - 0x1d, 0xf3, 0x4e, 0xa8, 0xb8, 0xb8, 0xbf, 0x92, 0x81, 0xb4, 0x43, 0x6e, 0x27, 0x82, 0x1f, 0x77, - 0x6d, 0x01, 0xb4, 0x85, 0x37, 0xf0, 0x6c, 0x13, 0x92, 0x88, 0x32, 0x30, 0x9d, 0xc9, 0xe2, 0x54, - 0xc2, 0xb8, 0xf2, 0xb5, 0x08, 0x15, 0xe0, 0xc7, 0xb8, 0xb6, 0x2d, 0x80, 0xaa, 0xa9, 0x94, 0xcf, - 0x20, 0x82, 0xa9, 0x94, 0x33, 0xbb, 0xa1, 0x9c, 0xa2, 0xd0, 0xc6, 0x73, 0x3c, 0x57, 0x76, 0xd0, - 0xdc, 0xc2, 0xb3, 0x3e, 0x3b, 0xd4, 0x7d, 0x2f, 0x9e, 0xee, 0xde, 0x3f, 0xfa, 0xbe, 0x13, 0x71, - 0x8f, 0x46, 0x83, 0xee, 0xd7, 0x7c, 0xd6, 0x3f, 0x37, 0x7e, 0x22, 0x3c, 0x7f, 0xa0, 0xa8, 0x4a, - 0xe5, 0x7f, 0x8f, 0x54, 0x81, 0x4f, 0x18, 0xa9, 0x3d, 0x5c, 0x2f, 0xb6, 0xee, 0x50, 0x40, 0x5b, - 0x5a, 0x95, 0x95, 0xea, 0x6a, 0x7d, 0xed, 0xe6, 0xc4, 0x81, 0x6c, 0x42, 0xbb, 0x2f, 0xde, 0x5a, - 0xf8, 0xf4, 0xa6, 0x3e, 0x94, 0x65, 0x13, 0xf3, 0x32, 0x2c, 0xcd, 0x27, 0x18, 0x33, 0xde, 0x69, - 0x85, 0x7a, 0xf6, 0xad, 0xea, 0x44, 0xb7, 0xed, 0x12, 0xd0, 0xa9, 0x0c, 0xf1, 0x9b, 0xd7, 0xcf, - 0x9e, 0x2e, 0xe2, 0x05, 0x3c, 0x5f, 0x66, 0xe7, 0xa4, 0x61, 0x6b, 0xeb, 0x1d, 0x3a, 0xbd, 0x20, - 0xc6, 0xf9, 0x05, 0x31, 0x2e, 0x2f, 0x08, 0x7a, 0x9b, 0x13, 0xf4, 0x31, 0x27, 0xe8, 0x5b, 0x4e, - 0xd0, 0x69, 0x4e, 0xd0, 0x79, 0x4e, 0xd0, 0xf7, 0x9c, 0xa0, 0x1f, 0x39, 0x31, 0x2e, 0x73, 0x82, - 0xde, 0xf7, 0x88, 0xf1, 0xa5, 0x47, 0xd0, 0x69, 0x8f, 0x18, 0xe7, 0x3d, 0x62, 0xbc, 0xdc, 0xf7, - 0x79, 0x72, 0xe4, 0x3b, 0x19, 0x8f, 0x14, 0x08, 0x41, 0x9d, 0x54, 0xba, 0xfa, 0xd0, 0xe6, 0x22, - 0xee, 0x3f, 0x52, 0x16, 0xb6, 0x40, 0xd8, 0x65, 0xd8, 0x4d, 0x3c, 0x9f, 0xbb, 0x70, 0xac, 0xae, - 0x96, 0xf9, 0xcf, 0x5f, 0x86, 0x57, 0xd3, 0x1b, 0xfd, 0xf0, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, - 0xcb, 0x6b, 0x01, 0xad, 0xc8, 0x04, 0x00, 0x00, + // 601 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x6a, 0xd4, 0x40, + 0x18, 0xc7, 0x77, 0xba, 0x75, 0x5b, 0x66, 0x4b, 0x2d, 0xf1, 0x92, 0x56, 0x1d, 0xca, 0x8a, 0x52, + 0xc1, 0x24, 0x50, 0x11, 0xb1, 0x88, 0x87, 0x56, 0xe8, 0xa5, 0x6b, 0x61, 0x2b, 0xa8, 0xbd, 0x94, + 0xc9, 0xe4, 0xdb, 0x24, 0x36, 0xd9, 0x09, 0x33, 0x93, 0xd8, 0x3d, 0x08, 0xbe, 0x80, 0xe0, 0xdd, + 0x17, 0x10, 0x9f, 0xc2, 0xea, 0xc5, 0x93, 0x94, 0x9e, 0x7a, 0xb4, 0xd9, 0x8b, 0xe0, 0xa5, 0x8f, + 0x20, 0x9d, 0x34, 0x75, 0x53, 0xd7, 0xe2, 0xc1, 0xde, 0x26, 0xfc, 0xff, 0xdf, 0x2f, 0xdf, 0xcc, + 0xfc, 0xe7, 0xc3, 0xb7, 0x32, 0x90, 0x76, 0xc8, 0x1d, 0xc9, 0x02, 0x88, 0xa9, 0x13, 0x00, 0x8d, + 0x54, 0xc0, 0x02, 0x60, 0xdb, 0x0e, 0x77, 0x5f, 0x02, 0x53, 0x76, 0x22, 0xb8, 0xe2, 0xc6, 0x6c, + 0xe1, 0xb3, 0x0b, 0x9f, 0x3d, 0xe4, 0x9b, 0xb3, 0xfc, 0x50, 0x05, 0xa9, 0x6b, 0x33, 0x1e, 0x3b, + 0x3e, 0xf7, 0xb9, 0xa3, 0x2b, 0xdc, 0xb4, 0xab, 0xbf, 0xf4, 0x87, 0x5e, 0x15, 0xa4, 0xb9, 0x9b, + 0x7f, 0xff, 0xa3, 0xea, 0x27, 0x20, 0x4f, 0x6c, 0x57, 0xab, 0x36, 0x9e, 0xa8, 0x90, 0xf7, 0x4a, + 0x71, 0xb6, 0x2a, 0x0e, 0xd7, 0xb5, 0xaa, 0x52, 0x06, 0x12, 0x7a, 0x59, 0xb5, 0xbc, 0xf5, 0xfe, + 0x12, 0x6e, 0xac, 0xeb, 0xdd, 0x19, 0x0f, 0xf0, 0x64, 0x0c, 0x8a, 0x7a, 0x54, 0x51, 0x13, 0xcd, + 0xa3, 0x85, 0xe6, 0xe2, 0x75, 0xbb, 0xba, 0xd5, 0xc2, 0xd8, 0x06, 0x45, 0x9f, 0xf6, 0x13, 0xe8, + 0x9c, 0xda, 0x8d, 0x35, 0x7c, 0x59, 0xf6, 0xa5, 0x82, 0x78, 0xeb, 0x94, 0x30, 0xa6, 0x09, 0x37, + 0xce, 0x10, 0x36, 0xb4, 0xeb, 0x0c, 0x67, 0xba, 0xa8, 0x6d, 0x97, 0xb4, 0xfb, 0x78, 0x5c, 0x26, + 0xc0, 0xcc, 0xfa, 0x48, 0xc4, 0xd0, 0x29, 0xd9, 0x1b, 0x09, 0x30, 0x8d, 0xd0, 0x05, 0x4b, 0xdf, + 0xea, 0x9f, 0x77, 0xcd, 0xb1, 0x19, 0xb4, 0xbf, 0x6b, 0x7e, 0xa9, 0xe3, 0x17, 0xb8, 0xbe, 0x0a, + 0xca, 0xe8, 0x74, 0xef, 0xed, 0x30, 0x4b, 0x02, 0x4b, 0x05, 0xc4, 0x20, 0x03, 0xcb, 0xa5, 0x32, + 0x64, 0x56, 0xcc, 0x7b, 0xa1, 0xe2, 0xe2, 0xce, 0xfc, 0x59, 0x59, 0x2a, 0xda, 0xf3, 0xa8, 0xf0, + 0x7e, 0x3b, 0x32, 0x90, 0x56, 0xc8, 0xad, 0x44, 0xf0, 0x9d, 0xbe, 0x25, 0x80, 0x7a, 0xf8, 0x39, + 0x9e, 0xe8, 0x40, 0x12, 0x51, 0x06, 0x46, 0x7b, 0x34, 0x3e, 0x95, 0x70, 0x1e, 0xbb, 0x90, 0x2b, + 0xe0, 0x57, 0x22, 0x54, 0x80, 0x9f, 0xe1, 0xc6, 0x8a, 0x00, 0xaa, 0x2e, 0x02, 0xfc, 0x18, 0x22, + 0xf8, 0xff, 0xe0, 0x4d, 0x3c, 0xbe, 0x16, 0xca, 0x0b, 0x39, 0xe7, 0xd6, 0x13, 0x3c, 0x59, 0x5e, + 0xb1, 0xb1, 0x8c, 0x27, 0x7c, 0xb6, 0xa5, 0x83, 0x51, 0x64, 0xeb, 0xf6, 0x39, 0xc1, 0x58, 0x8d, + 0xb8, 0x4b, 0xa3, 0xd3, 0x78, 0x34, 0x7c, 0x76, 0xbc, 0x6e, 0xfd, 0x44, 0x78, 0x6a, 0x43, 0x51, + 0x95, 0xca, 0x7f, 0xce, 0x7c, 0x61, 0x1f, 0x91, 0xf9, 0x36, 0x6e, 0x16, 0x63, 0x61, 0x4b, 0x40, + 0x57, 0x9a, 0x63, 0xf3, 0xf5, 0x85, 0xe6, 0xe2, 0xb5, 0x91, 0x2f, 0xa6, 0x03, 0xdd, 0xe3, 0xe2, + 0xe5, 0xe9, 0x8f, 0xaf, 0x9b, 0x43, 0x5d, 0x76, 0x30, 0x2f, 0x65, 0x69, 0x3c, 0xc4, 0x98, 0xf1, + 0x9e, 0x17, 0xea, 0xc7, 0x69, 0xd6, 0x47, 0xd2, 0x56, 0x4a, 0x83, 0x6e, 0x65, 0xc8, 0xbf, 0x74, + 0x65, 0xff, 0xd1, 0x0c, 0x9e, 0xc6, 0x53, 0x65, 0x77, 0x76, 0x1a, 0x7a, 0xcb, 0x6f, 0xd1, 0xde, + 0x21, 0xa9, 0x1d, 0x1c, 0x92, 0xda, 0xd1, 0x21, 0x41, 0x6f, 0x72, 0x82, 0x3e, 0xe4, 0x04, 0x7d, + 0xcd, 0x09, 0xda, 0xcb, 0x09, 0x3a, 0xc8, 0x09, 0xfa, 0x9e, 0x13, 0xf4, 0x23, 0x27, 0xb5, 0xa3, + 0x9c, 0xa0, 0x77, 0x03, 0x52, 0xfb, 0x34, 0x20, 0x68, 0x6f, 0x40, 0x6a, 0x07, 0x03, 0x52, 0xdb, + 0x5c, 0xf7, 0x79, 0xb2, 0xed, 0xdb, 0x19, 0x8f, 0x14, 0x08, 0x41, 0xed, 0x54, 0x3a, 0x7a, 0xd1, + 0xe5, 0x22, 0x3e, 0xbe, 0xa4, 0x2c, 0xf4, 0x40, 0x58, 0xa5, 0xec, 0x24, 0xae, 0xcf, 0x1d, 0xd8, + 0x51, 0x27, 0xd3, 0xe6, 0xcf, 0x99, 0xe6, 0x36, 0xf4, 0xc8, 0xb9, 0xfb, 0x2b, 0x00, 0x00, 0xff, + 0xff, 0x7a, 0xa8, 0x52, 0xae, 0x69, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/healthcheck/public_crudapi.pb.go b/pbgo/extschema/schema/healthcheck/public_crudapi.pb.go index 855320093..c0a896d31 100644 --- a/pbgo/extschema/schema/healthcheck/public_crudapi.pb.go +++ b/pbgo/extschema/schema/healthcheck/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_d951d2892f3211a8 = []byte{ - // 1609 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1a, 0x49, - 0x16, 0x76, 0x01, 0x26, 0x50, 0xf8, 0x47, 0xa7, 0x36, 0x71, 0x30, 0x9b, 0x45, 0x2c, 0x49, 0x1c, - 0xc7, 0x59, 0x9a, 0xc8, 0x9b, 0x55, 0x36, 0x56, 0x94, 0x5d, 0x6c, 0x83, 0xe5, 0xc4, 0x31, 0x51, - 0x43, 0xa2, 0xdd, 0xd5, 0x6a, 0x5b, 0x4d, 0xf3, 0xc0, 0x1d, 0x03, 0xdd, 0xe9, 0x2e, 0x70, 0xd0, - 0xca, 0x52, 0x94, 0x3d, 0xed, 0x6d, 0x57, 0x73, 0x9a, 0xd1, 0x1c, 0xe6, 0x32, 0xd2, 0x48, 0xf3, - 0x0f, 0x44, 0xe3, 0x4b, 0xa4, 0x39, 0x24, 0xca, 0x61, 0x26, 0x9a, 0xb9, 0xe4, 0x36, 0x13, 0x3c, - 0x87, 0x1c, 0xa3, 0xb9, 0xcc, 0x75, 0xd4, 0x55, 0xdd, 0x04, 0x30, 0xd8, 0xd8, 0xf1, 0x89, 0xae, - 0x7a, 0xef, 0xfb, 0x78, 0x5f, 0xd5, 0x7b, 0x8f, 0x47, 0x63, 0xb1, 0x01, 0x96, 0xa8, 0xe9, 0x49, - 0x4b, 0xdd, 0x80, 0xaa, 0x92, 0xdc, 0x00, 0xa5, 0x42, 0x37, 0xd4, 0x0d, 0x50, 0x37, 0x93, 0x46, - 0xbd, 0x50, 0xd1, 0x54, 0x59, 0x35, 0xeb, 0x45, 0xc5, 0xd0, 0x44, 0xc3, 0xd4, 0xa9, 0x4e, 0xa6, - 0xb9, 0xbf, 0xc8, 0xfd, 0xc5, 0x0e, 0xff, 0x48, 0xa2, 0xac, 0xd1, 0x8d, 0x7a, 0x41, 0x54, 0xf5, - 0x6a, 0xb2, 0xac, 0x97, 0xf5, 0x24, 0x43, 0x14, 0xea, 0x25, 0xb6, 0x62, 0x0b, 0xf6, 0xc4, 0x99, - 0x22, 0x67, 0xcb, 0xba, 0x5e, 0xae, 0x40, 0x52, 0x31, 0xb4, 0xa4, 0x52, 0xab, 0xe9, 0x54, 0xa1, - 0x9a, 0x5e, 0xb3, 0x1c, 0xeb, 0x6f, 0x1d, 0x6b, 0x9b, 0x03, 0xaa, 0x06, 0x6d, 0x3a, 0xc6, 0x48, - 0x77, 0xd0, 0x60, 0x9a, 0xba, 0xe9, 0x02, 0x67, 0x06, 0x0b, 0xd2, 0x0b, 0x0f, 0x40, 0xa5, 0x8e, - 0xdf, 0x85, 0xc1, 0x7e, 0xb4, 0x69, 0x40, 0x3b, 0x8e, 0x6e, 0x37, 0xdd, 0xe8, 0x0c, 0x72, 0xba, - 0xdb, 0xd8, 0x89, 0x8b, 0x77, 0x9b, 0x1a, 0x60, 0x41, 0xad, 0xd1, 0x03, 0x8f, 0xf5, 0xf8, 0x68, - 0xb0, 0x25, 0x77, 0x79, 0xc4, 0xbf, 0x44, 0x78, 0x7c, 0xc9, 0x04, 0x85, 0x82, 0x04, 0x0f, 0xeb, - 0x60, 0x51, 0xf2, 0x17, 0x1c, 0xa8, 0x02, 0x55, 0x8a, 0x0a, 0x55, 0xc2, 0x28, 0x86, 0x66, 0x43, - 0xf3, 0xe7, 0xc4, 0xee, 0x2b, 0xc9, 0x32, 0x95, 0x1c, 0x75, 0x07, 0xa8, 0x92, 0x6f, 0x1a, 0x20, - 0xb5, 0x41, 0x64, 0x1d, 0xfb, 0x2c, 0x03, 0xd4, 0xb0, 0x87, 0x81, 0x2f, 0x89, 0x03, 0xef, 0x53, - 0xe4, 0x14, 0x39, 0x03, 0x54, 0x9b, 0x62, 0x71, 0xf2, 0x93, 0xed, 0x31, 0x1b, 0x29, 0x96, 0x55, - 0xd9, 0xfe, 0x94, 0x18, 0xcf, 0x42, 0xf0, 0xe5, 0x4d, 0x3f, 0xff, 0xca, 0xf8, 0x2f, 0x08, 0x4f, - 0xb8, 0xd1, 0x5a, 0x86, 0x5e, 0xb3, 0x80, 0xdc, 0xd8, 0x13, 0x6e, 0xac, 0x6f, 0xb8, 0x2b, 0x40, - 0xfb, 0xc4, 0x9a, 0xc5, 0x93, 0x56, 0xd3, 0xa2, 0x50, 0x95, 0xdb, 0x24, 0x5e, 0x46, 0x32, 0xd3, - 0x43, 0x92, 0x63, 0x5e, 0x7b, 0xa9, 0x26, 0x38, 0xfc, 0x8e, 0x4b, 0x78, 0xbb, 0x4b, 0xfc, 0xcc, - 0x3e, 0xe2, 0x57, 0x80, 0x1e, 0x42, 0xf9, 0x0f, 0x08, 0x4f, 0x48, 0x60, 0x54, 0x14, 0xb5, 0x7d, - 0x51, 0x7f, 0xdd, 0xa3, 0xfc, 0x7c, 0x5f, 0xe5, 0x0e, 0xac, 0xaf, 0xfa, 0xce, 0x60, 0xe7, 0xf6, - 0x09, 0xd6, 0xe1, 0x38, 0x20, 0x60, 0x92, 0xc4, 0x82, 0x09, 0x96, 0x5e, 0x37, 0x55, 0x90, 0x1b, - 0x60, 0x5a, 0x9a, 0x5e, 0x63, 0xe7, 0x19, 0x5c, 0xf4, 0xbd, 0xdd, 0x41, 0x48, 0x9a, 0x74, 0xad, - 0xf7, 0xb9, 0xb1, 0x53, 0xe1, 0x49, 0x3c, 0xd9, 0x16, 0xc8, 0xef, 0x36, 0xfe, 0x31, 0xc2, 0x78, - 0x05, 0xa8, 0x2b, 0xf8, 0x2c, 0x0e, 0xd6, 0x94, 0x2a, 0x58, 0x86, 0xa2, 0x02, 0x53, 0x1c, 0x94, - 0xde, 0x6f, 0x10, 0x82, 0x7d, 0xf6, 0x82, 0x89, 0x09, 0x4a, 0xec, 0x99, 0xfc, 0x1d, 0xdb, 0xdf, - 0xc8, 0xc8, 0xe4, 0x92, 0x6e, 0x56, 0x15, 0xca, 0xc2, 0x99, 0x98, 0xbf, 0xb2, 0xff, 0xc5, 0xb8, - 0x11, 0x64, 0x18, 0x66, 0x49, 0x2f, 0x82, 0x34, 0x61, 0x76, 0xed, 0xc5, 0xff, 0xeb, 0xc7, 0xa1, - 0x0e, 0x4f, 0xb2, 0x8a, 0x43, 0x2a, 0xcb, 0x4c, 0xf6, 0x45, 0xce, 0x91, 0xce, 0x1e, 0x98, 0xfc, - 0x8e, 0x36, 0x09, 0x73, 0xb0, 0x4d, 0x4e, 0xd6, 0xf0, 0x98, 0xc9, 0x4f, 0x82, 0x73, 0x79, 0x0f, - 0x2c, 0xa4, 0xee, 0xcc, 0x90, 0x42, 0x0e, 0x9c, 0xb1, 0xf5, 0xbb, 0x13, 0xdf, 0x3e, 0x77, 0xd2, - 0x55, 0x51, 0xa3, 0xc7, 0x51, 0x51, 0x27, 0x8e, 0xa5, 0xa2, 0xfc, 0xc7, 0x50, 0x51, 0x24, 0x83, - 0xfd, 0x16, 0x55, 0x68, 0xdd, 0x0a, 0x7f, 0xf6, 0x29, 0x8a, 0x79, 0x67, 0x43, 0xf3, 0x17, 0xf7, - 0x21, 0xcc, 0x31, 0x57, 0x1e, 0xe2, 0xa2, 0xf7, 0xd9, 0x36, 0x92, 0x1c, 0x34, 0x59, 0xc5, 0x27, - 0x4d, 0x28, 0x81, 0x69, 0x6a, 0xb5, 0xb2, 0xcc, 0xbb, 0xbe, 0x15, 0x0e, 0x30, 0xc2, 0xb3, 0x03, - 0x8a, 0xb0, 0xc4, 0xd4, 0x09, 0x6d, 0x18, 0xdf, 0xb7, 0xc8, 0x7d, 0x1c, 0x2e, 0x42, 0x05, 0x28, - 0x14, 0x65, 0x6e, 0x83, 0x62, 0x9b, 0x31, 0x38, 0x04, 0xe3, 0x94, 0x83, 0x96, 0x1c, 0xb0, 0xcb, - 0xfb, 0x37, 0x3c, 0x5d, 0xd4, 0x2c, 0xa5, 0x50, 0xe9, 0x47, 0x8c, 0x87, 0x20, 0x3e, 0xe3, 0xc2, - 0x7b, 0x98, 0x3b, 0x8a, 0xf6, 0x96, 0x2f, 0x80, 0x04, 0x4f, 0xfc, 0x73, 0x84, 0x43, 0x6b, 0x9a, - 0x35, 0x64, 0xa1, 0xfe, 0x1e, 0x8f, 0x55, 0x94, 0x02, 0x54, 0xe4, 0x92, 0x56, 0xa1, 0x60, 0x3a, - 0x05, 0x1b, 0x62, 0x7b, 0x19, 0xb6, 0x45, 0xce, 0xe1, 0x71, 0x13, 0x0c, 0xdd, 0xa4, 0x72, 0x49, - 0x83, 0x4a, 0xd1, 0x0a, 0x7b, 0x63, 0xde, 0xd9, 0xa0, 0x34, 0xc6, 0x37, 0x33, 0x6c, 0x8f, 0x5c, - 0xc1, 0xa7, 0x1c, 0x27, 0x7e, 0x29, 0xae, 0xaf, 0x8f, 0xf9, 0x12, 0x6e, 0xe3, 0x57, 0xc8, 0x11, - 0xf1, 0xa7, 0x7e, 0x2c, 0xf0, 0x38, 0x79, 0xd1, 0xae, 0x52, 0xa8, 0x92, 0x29, 0xec, 0xa7, 0x50, - 0x53, 0x6a, 0x94, 0x65, 0x58, 0x50, 0x72, 0x56, 0x47, 0xe8, 0x36, 0x02, 0xf6, 0xd6, 0xb5, 0x22, - 0x6f, 0x78, 0x92, 0xfd, 0x48, 0x62, 0x38, 0x54, 0x04, 0x4b, 0x35, 0x35, 0xf6, 0x9b, 0x1b, 0x0e, - 0x71, 0xa5, 0x1d, 0x5b, 0x24, 0x82, 0x03, 0xee, 0x31, 0x87, 0xc7, 0x62, 0x68, 0x36, 0x20, 0xb5, - 0xd7, 0x24, 0x8b, 0xfd, 0xec, 0x50, 0xb8, 0xa4, 0xd0, 0xfc, 0xb5, 0x7d, 0x52, 0xb5, 0x57, 0x96, - 0xb8, 0xc6, 0x90, 0xe9, 0x1a, 0x35, 0x9b, 0x92, 0x43, 0x43, 0xfe, 0x85, 0x43, 0x1d, 0x73, 0x90, - 0x93, 0x04, 0x37, 0x0e, 0xc3, 0x9a, 0x7a, 0x0f, 0xe7, 0xd4, 0x9d, 0x84, 0xe4, 0x3a, 0xc6, 0xfa, - 0x56, 0x0d, 0x4c, 0xd9, 0x1e, 0x34, 0xc2, 0x41, 0x56, 0xb0, 0x91, 0x1e, 0xfa, 0xfb, 0x1a, 0x6c, - 0xb9, 0x19, 0x16, 0x64, 0xde, 0xf6, 0x4e, 0x57, 0xd3, 0x19, 0x3f, 0x8e, 0xa6, 0x33, 0xf1, 0x41, - 0x4d, 0x27, 0x85, 0x03, 0x65, 0xa0, 0xac, 0x73, 0x0c, 0x68, 0x5f, 0x03, 0x1a, 0x8f, 0x74, 0xa2, - 0xcc, 0x17, 0xe4, 0x36, 0xc6, 0x4e, 0x5e, 0x5a, 0x40, 0x9d, 0xde, 0x70, 0xb8, 0x66, 0x13, 0xe4, - 0xf8, 0x1c, 0xd0, 0xc8, 0x75, 0x1c, 0xea, 0xb8, 0x50, 0x3b, 0xd3, 0x36, 0xa1, 0xe9, 0x64, 0xa5, - 0xfd, 0x48, 0x4e, 0xe1, 0xd1, 0x86, 0x52, 0xa9, 0xbb, 0x09, 0xc9, 0x17, 0x0b, 0x9e, 0x3f, 0xa3, - 0xc8, 0x4d, 0x2c, 0xf4, 0xde, 0xda, 0x61, 0xf0, 0xb7, 0x7c, 0x81, 0x51, 0xc1, 0x1f, 0xff, 0x0f, - 0xc2, 0x63, 0x9d, 0xd9, 0x40, 0x52, 0x78, 0x54, 0xa3, 0x50, 0xb5, 0xc2, 0xbc, 0x8d, 0x5e, 0x3e, - 0x44, 0x16, 0x49, 0x1c, 0x49, 0xae, 0x60, 0x3f, 0x1f, 0xac, 0xc3, 0x1e, 0xc6, 0x11, 0xee, 0xe1, - 0x48, 0xdb, 0x46, 0x76, 0xa8, 0x8e, 0x5f, 0x7c, 0x13, 0x8f, 0x2f, 0xb3, 0x6e, 0x77, 0xf4, 0x91, - 0x60, 0x16, 0x0b, 0x25, 0x45, 0xab, 0xc8, 0x5a, 0xa9, 0xdd, 0x15, 0x59, 0xc5, 0x06, 0xa4, 0x09, - 0x7b, 0x7f, 0xb5, 0xe4, 0x76, 0xbb, 0xb9, 0x9f, 0x11, 0x3e, 0xdd, 0x77, 0x16, 0x20, 0x11, 0x3c, - 0xb5, 0x92, 0xce, 0xcb, 0x52, 0xee, 0xae, 0x9c, 0xc9, 0x4a, 0x77, 0x52, 0x79, 0x79, 0x39, 0x9d, - 0x49, 0xdd, 0x5b, 0xcb, 0x0b, 0x23, 0xe4, 0x77, 0x78, 0xba, 0xc7, 0x96, 0xc9, 0x4a, 0xf2, 0x92, - 0x94, 0x4e, 0xe5, 0xd3, 0x02, 0x22, 0x51, 0x1c, 0xe9, 0x63, 0x96, 0xd2, 0x77, 0xd7, 0x52, 0x4b, - 0x69, 0xc1, 0x43, 0xa6, 0xf1, 0xe9, 0x1e, 0x7b, 0x2e, 0x9f, 0xca, 0xdf, 0xcb, 0x09, 0x5e, 0x72, - 0x06, 0xff, 0xa6, 0xc7, 0x24, 0xa5, 0x53, 0xcb, 0x82, 0x8f, 0x9c, 0xc7, 0xb1, 0x3d, 0x86, 0x4c, - 0x5a, 0x92, 0x56, 0xd7, 0x57, 0xe4, 0xec, 0xe2, 0xad, 0xf4, 0x52, 0x3e, 0x27, 0x8c, 0xf6, 0xf1, - 0x5a, 0x94, 0xb2, 0xb7, 0xd3, 0xeb, 0xdc, 0x39, 0xbd, 0xbe, 0x94, 0xce, 0x09, 0xfe, 0xf9, 0xb7, - 0x01, 0xec, 0x4d, 0xdd, 0x5d, 0x25, 0xdf, 0x22, 0xec, 0xe7, 0x13, 0x0a, 0x19, 0x7a, 0x88, 0x89, - 0x5c, 0x1a, 0xc2, 0xd3, 0x19, 0xed, 0x8c, 0xd6, 0xf3, 0x70, 0xa2, 0xf4, 0xa7, 0x47, 0x6a, 0xc2, - 0x02, 0xb5, 0x6e, 0x42, 0x15, 0xac, 0x8d, 0x44, 0x41, 0xb1, 0x34, 0x35, 0x51, 0xb7, 0xc0, 0xfc, - 0x43, 0x03, 0xac, 0x84, 0xa6, 0x27, 0x0c, 0x53, 0x7f, 0xd4, 0x4c, 0x6c, 0x99, 0x1a, 0x85, 0x27, - 0xdf, 0xff, 0xf4, 0x91, 0xe7, 0x7a, 0xfc, 0xaa, 0xf3, 0xaf, 0x31, 0xd9, 0xbe, 0x66, 0x2b, 0xf9, - 0x6f, 0xb7, 0xea, 0xc5, 0xf6, 0xe6, 0x76, 0xe7, 0xff, 0x2d, 0x6b, 0x01, 0xcd, 0x91, 0xe7, 0x08, - 0x7b, 0x57, 0x80, 0x92, 0x0b, 0x07, 0x8d, 0x7e, 0x5c, 0xcb, 0xcc, 0x70, 0x13, 0x62, 0xfc, 0xe1, - 0x8b, 0xa7, 0x1e, 0xd4, 0x7a, 0x1e, 0x4e, 0xf6, 0x17, 0x53, 0xd5, 0x6b, 0x1a, 0xd5, 0x7b, 0xf4, - 0x98, 0xa0, 0x14, 0x99, 0x9c, 0xab, 0x64, 0xbe, 0x9f, 0x9c, 0x01, 0x2a, 0xb8, 0x61, 0x9b, 0x7c, - 0x8d, 0xb0, 0xcf, 0xae, 0x29, 0x32, 0x73, 0x60, 0xd1, 0x71, 0x2d, 0x17, 0x87, 0x2c, 0xce, 0xf8, - 0x83, 0x0f, 0x11, 0x93, 0x20, 0x97, 0x0f, 0x21, 0x86, 0xec, 0x22, 0x7c, 0xc2, 0x99, 0x5b, 0xc9, - 0xf0, 0xb3, 0x6d, 0x64, 0x6e, 0x18, 0x57, 0x47, 0xce, 0x63, 0x74, 0xb4, 0x2c, 0x5b, 0x8d, 0x2c, - 0x1f, 0x25, 0xcb, 0x7a, 0x3c, 0xb6, 0xed, 0xac, 0xfb, 0x0a, 0x61, 0x3f, 0x6f, 0x59, 0xfb, 0xd6, - 0x51, 0x57, 0x57, 0x8b, 0x4c, 0x89, 0xfc, 0xdd, 0x84, 0xe8, 0xbe, 0x9b, 0x10, 0xd3, 0x55, 0x83, - 0x36, 0xe3, 0xb5, 0xa3, 0xc9, 0xb9, 0x36, 0x77, 0x84, 0x2c, 0x5b, 0x40, 0x73, 0x91, 0x7f, 0x3e, - 0xdb, 0x41, 0x9e, 0xef, 0x76, 0x50, 0x6c, 0x70, 0xe0, 0xfc, 0xf7, 0xea, 0xf5, 0x0e, 0x42, 0xad, - 0x1d, 0x34, 0x33, 0xdc, 0xaf, 0xdb, 0x93, 0x6f, 0xc2, 0x1e, 0x01, 0x2d, 0xfe, 0x1f, 0xbd, 0xbc, - 0x39, 0xba, 0x24, 0xdd, 0x5b, 0x5e, 0x7b, 0xf5, 0x26, 0x3a, 0xf2, 0xfa, 0x4d, 0x74, 0xe4, 0xdd, - 0x9b, 0x28, 0x7a, 0xdc, 0x8a, 0xa2, 0x2f, 0x5a, 0x51, 0xf4, 0xa2, 0x15, 0x45, 0xaf, 0x5a, 0x51, - 0xf4, 0x63, 0x2b, 0x8a, 0xde, 0xb6, 0xa2, 0x23, 0xef, 0x5a, 0x51, 0xf4, 0xbf, 0xdd, 0xe8, 0xc8, - 0xb3, 0xdd, 0x28, 0x7a, 0xb5, 0x1b, 0x1d, 0x79, 0xbd, 0x1b, 0x1d, 0xf9, 0x47, 0xb6, 0xac, 0x1b, - 0x9b, 0x65, 0xb1, 0xa1, 0xdb, 0x53, 0xa3, 0xa9, 0x88, 0x75, 0x2b, 0xc9, 0x1e, 0xec, 0xbf, 0x4d, - 0xf6, 0x31, 0x34, 0xb4, 0x22, 0x98, 0x09, 0xd7, 0x9c, 0x34, 0x0a, 0x65, 0x3d, 0x09, 0x8f, 0xa8, - 0xf3, 0x3a, 0x64, 0xef, 0x8b, 0x99, 0x82, 0x9f, 0x9d, 0xf8, 0x1f, 0x7f, 0x0d, 0x00, 0x00, 0xff, - 0xff, 0x6f, 0x88, 0x29, 0x18, 0xb5, 0x12, 0x00, 0x00, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xdf, 0x6f, 0x1a, 0x57, + 0x16, 0xf6, 0x05, 0x4c, 0xe0, 0xe2, 0x1f, 0x93, 0xbb, 0x89, 0x83, 0xd9, 0x2c, 0x62, 0x49, 0xe2, + 0x38, 0xce, 0x32, 0x44, 0xde, 0xac, 0xb2, 0xb1, 0xa2, 0xec, 0x62, 0x1b, 0x2c, 0xc7, 0x8e, 0xb1, + 0x06, 0x12, 0xed, 0xae, 0x56, 0x1d, 0x0d, 0xc3, 0x05, 0x4f, 0x0d, 0xcc, 0x74, 0xee, 0x05, 0x07, + 0x55, 0x96, 0xda, 0xf4, 0xa5, 0x55, 0xab, 0xaa, 0x3f, 0x9e, 0x5a, 0x55, 0x55, 0x5f, 0x2a, 0x55, + 0xea, 0x3f, 0x10, 0xc9, 0x2f, 0x79, 0x6b, 0x94, 0x87, 0x2a, 0x6a, 0x5f, 0xd2, 0xa7, 0x36, 0xb8, + 0x95, 0xd2, 0x97, 0x2a, 0xea, 0x4b, 0x5f, 0xab, 0xb9, 0x77, 0x86, 0x00, 0x06, 0x8c, 0x5d, 0xe7, + 0x89, 0xb9, 0xf7, 0x9c, 0xef, 0xe3, 0x7c, 0xf7, 0x9e, 0x73, 0x38, 0x0c, 0x14, 0x6b, 0x98, 0x88, + 0x9a, 0x1e, 0x27, 0xea, 0x06, 0x2e, 0x2b, 0xf1, 0x0d, 0xac, 0x94, 0xe8, 0x86, 0xba, 0x81, 0xd5, + 0xcd, 0xb8, 0x51, 0xcd, 0x95, 0x34, 0x55, 0x56, 0xcd, 0x6a, 0x5e, 0x31, 0x34, 0xd1, 0x30, 0x75, + 0xaa, 0xa3, 0x49, 0xee, 0x2f, 0x72, 0x7f, 0xb1, 0xc5, 0x3f, 0x14, 0x2b, 0x6a, 0x74, 0xa3, 0x9a, + 0x13, 0x55, 0xbd, 0x1c, 0x2f, 0xea, 0x45, 0x3d, 0xce, 0x10, 0xb9, 0x6a, 0x81, 0xad, 0xd8, 0x82, + 0x3d, 0x71, 0xa6, 0xd0, 0xe9, 0xa2, 0xae, 0x17, 0x4b, 0x38, 0xae, 0x18, 0x5a, 0x5c, 0xa9, 0x54, + 0x74, 0xaa, 0x50, 0x4d, 0xaf, 0x10, 0xdb, 0xfa, 0x67, 0xdb, 0xda, 0xe4, 0xc0, 0x65, 0x83, 0xd6, + 0x6d, 0x63, 0xa8, 0x3d, 0x68, 0x6c, 0x9a, 0xba, 0xe9, 0x00, 0xa7, 0x7a, 0x0b, 0xd2, 0x73, 0x2f, + 0x63, 0x95, 0xda, 0x7e, 0xe7, 0x7a, 0xfb, 0xd1, 0xba, 0x81, 0x9b, 0x71, 0xb4, 0xbb, 0xe9, 0x46, + 0x6b, 0x90, 0x93, 0xed, 0xc6, 0x56, 0x5c, 0xb4, 0xdd, 0x54, 0xc3, 0x04, 0x57, 0x6a, 0x1d, 0xf0, + 0x48, 0x87, 0x8f, 0x86, 0xb7, 0xe4, 0x36, 0x8f, 0xe8, 0x97, 0x00, 0x8e, 0x2e, 0x98, 0x58, 0xa1, + 0x58, 0xc2, 0xaf, 0x54, 0x31, 0xa1, 0xe8, 0x5f, 0xd0, 0x57, 0xc6, 0x54, 0xc9, 0x2b, 0x54, 0x09, + 0x82, 0x08, 0x98, 0x0e, 0xcc, 0x9e, 0x11, 0xdb, 0xaf, 0x24, 0xcd, 0x54, 0x72, 0xd4, 0x4d, 0x4c, + 0x95, 0x6c, 0xdd, 0xc0, 0x52, 0x13, 0x84, 0xd6, 0xa0, 0x87, 0x18, 0x58, 0x0d, 0xba, 0x18, 0xf8, + 0x82, 0xd8, 0xf3, 0x3e, 0x45, 0x4e, 0x91, 0x31, 0xb0, 0x6a, 0x51, 0xcc, 0x8f, 0x7f, 0xbc, 0x3d, + 0x62, 0x21, 0xc5, 0xa2, 0x2a, 0x5b, 0x9f, 0x12, 0xe3, 0x99, 0xf3, 0x3f, 0xbc, 0xee, 0xe5, 0x5f, + 0x19, 0xfd, 0x0d, 0xc0, 0x31, 0x27, 0x5a, 0x62, 0xe8, 0x15, 0x82, 0xd1, 0xb5, 0x3d, 0xe1, 0x46, + 0xba, 0x86, 0xbb, 0x84, 0x69, 0x97, 0x58, 0xd3, 0x70, 0x9c, 0xd4, 0x09, 0xc5, 0x65, 0xb9, 0x49, + 0xe2, 0x66, 0x24, 0x53, 0x1d, 0x24, 0x19, 0xe6, 0xb5, 0x97, 0x6a, 0x8c, 0xc3, 0x6f, 0x3a, 0x84, + 0x2b, 0x6d, 0xe2, 0xa7, 0xfa, 0x88, 0x5f, 0xc2, 0xf4, 0x00, 0xca, 0xbf, 0x07, 0x70, 0x4c, 0xc2, + 0x46, 0x49, 0x51, 0x9b, 0x17, 0xf5, 0xef, 0x3d, 0xca, 0xcf, 0x76, 0x55, 0x6e, 0xc3, 0xba, 0xaa, + 0x6f, 0x0d, 0x76, 0xa6, 0x4f, 0xb0, 0x36, 0xc7, 0x3e, 0x01, 0xa3, 0x38, 0x14, 0x4c, 0x4c, 0xf4, + 0xaa, 0xa9, 0x62, 0xb9, 0x86, 0x4d, 0xa2, 0xe9, 0x15, 0x76, 0x9e, 0xfe, 0x79, 0xcf, 0xd3, 0x1d, + 0x00, 0xa4, 0x71, 0xc7, 0x7a, 0x9b, 0x1b, 0x5b, 0x15, 0x1e, 0x87, 0xe3, 0x4d, 0x81, 0xfc, 0x6e, + 0xa3, 0x1f, 0x01, 0x08, 0x97, 0x30, 0x75, 0x04, 0x9f, 0x86, 0xfe, 0x8a, 0x52, 0xc6, 0xc4, 0x50, + 0x54, 0xcc, 0x14, 0xfb, 0xa5, 0xe7, 0x1b, 0x08, 0x41, 0x8f, 0xb5, 0x60, 0x62, 0xfc, 0x12, 0x7b, + 0x46, 0xff, 0x85, 0xd6, 0x37, 0x32, 0x32, 0xb9, 0xa0, 0x9b, 0x65, 0x85, 0xb2, 0x70, 0xc6, 0x66, + 0x2f, 0xf5, 0xbf, 0x18, 0x27, 0x82, 0x14, 0xc3, 0x2c, 0xe8, 0x79, 0x2c, 0x8d, 0x99, 0x6d, 0x7b, + 0xd1, 0xb7, 0xbc, 0x30, 0xd0, 0xe2, 0x89, 0x96, 0x61, 0x40, 0x65, 0x99, 0xc9, 0xbe, 0xc8, 0x3e, + 0xd2, 0xe9, 0x7d, 0x93, 0xdf, 0xd6, 0x26, 0x41, 0x0e, 0xb6, 0xc8, 0xd1, 0x2a, 0x1c, 0x31, 0xf9, + 0x49, 0x70, 0x2e, 0xf7, 0xbe, 0x85, 0xd4, 0x9e, 0x19, 0x52, 0xc0, 0x86, 0x33, 0xb6, 0x6e, 0x77, + 0xe2, 0xe9, 0x73, 0x27, 0x6d, 0x15, 0x35, 0x7c, 0x14, 0x15, 0x75, 0xec, 0x48, 0x2a, 0xca, 0x7b, + 0x04, 0x15, 0x85, 0x52, 0xd0, 0x4b, 0xa8, 0x42, 0xab, 0x24, 0xf8, 0xd9, 0x27, 0x20, 0xe2, 0x9e, + 0x0e, 0xcc, 0x9e, 0xef, 0x43, 0x98, 0x61, 0xae, 0x3c, 0xc4, 0x79, 0xf7, 0xfd, 0x6d, 0x20, 0xd9, + 0x68, 0xb4, 0x0c, 0x8f, 0x9b, 0xb8, 0x80, 0x4d, 0x53, 0xab, 0x14, 0x65, 0xde, 0xf5, 0x49, 0xd0, + 0xc7, 0x08, 0x4f, 0xf7, 0x28, 0xc2, 0x02, 0x53, 0x27, 0x34, 0x61, 0x7c, 0x9f, 0xa0, 0xdb, 0x30, + 0x98, 0xc7, 0x25, 0x4c, 0x71, 0x5e, 0xe6, 0x36, 0x9c, 0x6f, 0x32, 0xfa, 0x07, 0x60, 0x9c, 0xb0, + 0xd1, 0x92, 0x0d, 0x76, 0x78, 0xff, 0x03, 0x27, 0xf3, 0x1a, 0x51, 0x72, 0xa5, 0x6e, 0xc4, 0x70, + 0x00, 0xe2, 0x53, 0x0e, 0xbc, 0x83, 0xb9, 0xa5, 0x68, 0x6f, 0x78, 0x7c, 0x40, 0x70, 0x45, 0x3f, + 0x07, 0x30, 0xb0, 0xaa, 0x91, 0x01, 0x0b, 0xf5, 0xaf, 0x70, 0xa4, 0xa4, 0xe4, 0x70, 0x49, 0x2e, + 0x68, 0x25, 0x8a, 0x4d, 0xbb, 0x60, 0x03, 0x6c, 0x2f, 0xc5, 0xb6, 0xd0, 0x19, 0x38, 0x6a, 0x62, + 0x43, 0x37, 0xa9, 0x5c, 0xd0, 0x70, 0x29, 0x4f, 0x82, 0xee, 0x88, 0x7b, 0xda, 0x2f, 0x8d, 0xf0, + 0xcd, 0x14, 0xdb, 0x43, 0x97, 0xe0, 0x09, 0xdb, 0x89, 0x5f, 0x8a, 0xe3, 0xeb, 0x61, 0xbe, 0x88, + 0xdb, 0xf8, 0x15, 0x72, 0x44, 0xf4, 0x9e, 0x17, 0x0a, 0x3c, 0x4e, 0x5e, 0xb4, 0xcb, 0x14, 0x97, + 0xd1, 0x04, 0xf4, 0x52, 0x5c, 0x51, 0x2a, 0x94, 0x65, 0x98, 0x5f, 0xb2, 0x57, 0x87, 0xe8, 0x36, + 0x02, 0x74, 0x57, 0xb5, 0x3c, 0x6f, 0x78, 0x92, 0xf5, 0x88, 0x22, 0x30, 0x90, 0xc7, 0x44, 0x35, + 0x35, 0xf6, 0x9b, 0x1b, 0x0c, 0x70, 0xa5, 0x2d, 0x5b, 0x28, 0x04, 0x7d, 0xce, 0x31, 0x07, 0x47, + 0x22, 0x60, 0xda, 0x27, 0x35, 0xd7, 0x28, 0x0d, 0xbd, 0xec, 0x50, 0xb8, 0xa4, 0xc0, 0xec, 0x95, + 0x3e, 0xa9, 0xda, 0x29, 0x4b, 0x5c, 0x65, 0xc8, 0x64, 0x85, 0x9a, 0x75, 0xc9, 0xa6, 0x41, 0x2f, + 0xc1, 0x40, 0xcb, 0x1c, 0x64, 0x27, 0xc1, 0xb5, 0x83, 0xb0, 0x26, 0x9e, 0xc3, 0x39, 0x75, 0x2b, + 0x21, 0xba, 0x0a, 0xa1, 0xbe, 0x55, 0xc1, 0xa6, 0x6c, 0x0d, 0x1a, 0x41, 0x3f, 0x2b, 0xd8, 0x50, + 0x07, 0xfd, 0x6d, 0x0d, 0x6f, 0x39, 0x19, 0xe6, 0x67, 0xde, 0xd6, 0x4e, 0x5b, 0xd3, 0x19, 0x3d, + 0x8a, 0xa6, 0x33, 0xf6, 0x87, 0x9a, 0x4e, 0x02, 0xfa, 0x8a, 0x98, 0xb2, 0xce, 0xd1, 0xa3, 0x7d, + 0xf5, 0x68, 0x3c, 0xd2, 0xb1, 0x22, 0x5f, 0xa0, 0x15, 0x08, 0xed, 0xbc, 0x24, 0x98, 0xda, 0xbd, + 0xe1, 0x60, 0xcd, 0xc6, 0xcf, 0xf1, 0x19, 0x4c, 0x43, 0x57, 0x61, 0xa0, 0xe5, 0x42, 0xad, 0x4c, + 0xdb, 0xc4, 0x75, 0x3b, 0x2b, 0xad, 0x47, 0x74, 0x02, 0x0e, 0xd7, 0x94, 0x52, 0xd5, 0x49, 0x48, + 0xbe, 0x98, 0x73, 0xfd, 0x13, 0x84, 0xae, 0x43, 0xa1, 0xf3, 0xd6, 0x0e, 0x82, 0xbf, 0xe1, 0xf1, + 0x0d, 0x0b, 0xde, 0xe8, 0x1b, 0x00, 0x8e, 0xb4, 0x66, 0x03, 0x4a, 0xc0, 0x61, 0x8d, 0xe2, 0x32, + 0x09, 0xf2, 0x36, 0x7a, 0xf1, 0x00, 0x59, 0x24, 0x71, 0x24, 0xba, 0x04, 0xbd, 0x7c, 0xb0, 0x0e, + 0xba, 0x18, 0x47, 0xb0, 0x83, 0x23, 0x69, 0x19, 0xd9, 0xa1, 0xda, 0x7e, 0xd1, 0x4d, 0x38, 0xba, + 0xc8, 0xba, 0xdd, 0xe1, 0x47, 0x82, 0x69, 0x28, 0x14, 0x14, 0xad, 0x24, 0x6b, 0x85, 0x66, 0x57, + 0x64, 0x15, 0xeb, 0x93, 0xc6, 0xac, 0xfd, 0xe5, 0x82, 0xd3, 0xed, 0x66, 0x7e, 0x05, 0xf0, 0x64, + 0xd7, 0x59, 0x00, 0x85, 0xe0, 0xc4, 0x52, 0x32, 0x2b, 0x4b, 0x99, 0x75, 0x39, 0x95, 0x96, 0x6e, + 0x26, 0xb2, 0xf2, 0x62, 0x32, 0x95, 0xb8, 0xb5, 0x9a, 0x15, 0x86, 0xd0, 0x5f, 0xe0, 0x64, 0x87, + 0x2d, 0x95, 0x96, 0xe4, 0x05, 0x29, 0x99, 0xc8, 0x26, 0x05, 0x80, 0xc2, 0x30, 0xd4, 0xc5, 0x2c, + 0x25, 0xd7, 0x57, 0x13, 0x0b, 0x49, 0xc1, 0x85, 0x26, 0xe1, 0xc9, 0x0e, 0x7b, 0x26, 0x9b, 0xc8, + 0xde, 0xca, 0x08, 0x6e, 0x74, 0x0a, 0xfe, 0xa9, 0xc3, 0x24, 0x25, 0x13, 0x8b, 0x82, 0x07, 0x9d, + 0x85, 0x91, 0x3d, 0x86, 0x54, 0x52, 0x92, 0x96, 0xd7, 0x96, 0xe4, 0xf4, 0xfc, 0x8d, 0xe4, 0x42, + 0x36, 0x23, 0x0c, 0x77, 0xf1, 0x9a, 0x97, 0xd2, 0x2b, 0xc9, 0x35, 0xee, 0x9c, 0x5c, 0x5b, 0x48, + 0x66, 0x04, 0xef, 0xec, 0x9b, 0x10, 0xba, 0x13, 0xeb, 0xcb, 0xe8, 0x17, 0x00, 0xbd, 0x7c, 0x42, + 0x41, 0x03, 0x0f, 0x31, 0xa1, 0x0b, 0x03, 0x78, 0xda, 0xa3, 0xdd, 0xbb, 0xa0, 0xf1, 0x55, 0x70, + 0xa5, 0xf0, 0x8f, 0x3b, 0x6a, 0x8c, 0x60, 0xb5, 0x6a, 0xe2, 0x32, 0x26, 0x1b, 0xb1, 0x9c, 0x42, + 0x34, 0x35, 0x56, 0x25, 0xd8, 0xfc, 0x5b, 0xa7, 0x89, 0x50, 0xa5, 0x92, 0x57, 0xcc, 0x3c, 0xb7, + 0xd6, 0x30, 0x89, 0x69, 0x7a, 0xcc, 0x30, 0xf5, 0x3b, 0xf5, 0xd8, 0x96, 0xa9, 0x51, 0x7c, 0xf7, + 0xdb, 0x1f, 0x3f, 0x74, 0x5d, 0x8d, 0x5e, 0xb6, 0xff, 0x54, 0xc6, 0x9b, 0x59, 0x40, 0xe2, 0xaf, + 0x3a, 0x4d, 0x41, 0x6c, 0x6e, 0x6e, 0xb7, 0xfe, 0x1d, 0x23, 0x73, 0x60, 0x06, 0xfd, 0x0c, 0xa0, + 0x7b, 0x09, 0x53, 0x74, 0x6e, 0xbf, 0xc9, 0x90, 0x4b, 0x9d, 0x1a, 0x6c, 0x80, 0x8c, 0x7e, 0x00, + 0x1e, 0xdc, 0x73, 0x59, 0x5a, 0xd7, 0xbb, 0x6b, 0x2d, 0xeb, 0x15, 0x8d, 0xea, 0x7d, 0xe4, 0x3a, + 0x0e, 0x6d, 0x8a, 0x4d, 0xac, 0xe4, 0x99, 0xe0, 0xcb, 0x68, 0xb6, 0x9b, 0xe0, 0x1e, 0x3a, 0xb9, + 0x61, 0x1b, 0xfd, 0x04, 0xa0, 0xc7, 0x2a, 0x4a, 0x34, 0xb5, 0x6f, 0xd5, 0x72, 0xb5, 0xe7, 0x07, + 0xac, 0xee, 0xe8, 0xdb, 0x2f, 0x56, 0x6e, 0x0c, 0x5d, 0x3c, 0x80, 0x5c, 0xf4, 0xba, 0x0b, 0x1e, + 0xb3, 0x47, 0x63, 0x34, 0xf8, 0xf8, 0x1c, 0x9a, 0x19, 0xc4, 0xd5, 0x16, 0xfc, 0xe9, 0x0b, 0xc9, + 0xe3, 0xe5, 0xd0, 0xe2, 0x61, 0xf2, 0xb8, 0xc3, 0x63, 0xdb, 0xca, 0xeb, 0xef, 0x00, 0xf4, 0xf2, + 0x9e, 0xd9, 0xb7, 0x90, 0xdb, 0xda, 0x6a, 0x68, 0x42, 0xe4, 0x2f, 0x47, 0x44, 0xe7, 0xe5, 0x88, + 0x98, 0x2c, 0x1b, 0xb4, 0x1e, 0x7d, 0xe7, 0x85, 0xa8, 0xbd, 0x32, 0x73, 0x88, 0x24, 0x9e, 0x03, + 0x33, 0xa1, 0xff, 0xdf, 0xdf, 0x01, 0xae, 0x6f, 0x76, 0x40, 0xa4, 0xb7, 0x2e, 0xfe, 0x7b, 0xfa, + 0x78, 0x07, 0x80, 0xc6, 0x0e, 0x98, 0x1a, 0xec, 0xd7, 0xf7, 0xee, 0xd7, 0x41, 0x97, 0x00, 0xe6, + 0xdf, 0x07, 0x0f, 0xaf, 0x0f, 0x2f, 0x48, 0xb7, 0x16, 0x57, 0x1f, 0x3d, 0x09, 0x0f, 0x3d, 0x7e, + 0x12, 0x1e, 0x7a, 0xf6, 0x24, 0x0c, 0x5e, 0x6b, 0x84, 0xc1, 0x17, 0x8d, 0x30, 0x78, 0xd0, 0x08, + 0x83, 0x47, 0x8d, 0x30, 0xf8, 0xa1, 0x11, 0x06, 0x4f, 0x1b, 0xe1, 0xa1, 0x67, 0x8d, 0x30, 0x78, + 0x6f, 0x37, 0x3c, 0x74, 0x7f, 0x37, 0x0c, 0x1e, 0xed, 0x86, 0x87, 0x1e, 0xef, 0x86, 0x87, 0xfe, + 0x97, 0x2e, 0xea, 0xc6, 0x66, 0x51, 0xac, 0xe9, 0xd6, 0x54, 0x6b, 0x2a, 0x62, 0x95, 0xc4, 0xd9, + 0x83, 0xf5, 0xb7, 0xce, 0x3a, 0x86, 0x9a, 0x96, 0xc7, 0x66, 0xcc, 0x31, 0xc7, 0x8d, 0x5c, 0x51, + 0x8f, 0xe3, 0x3b, 0xd4, 0x7e, 0x5d, 0xb3, 0xf7, 0xc5, 0x51, 0xce, 0xcb, 0x2e, 0xe4, 0xef, 0xbf, + 0x07, 0x00, 0x00, 0xff, 0xff, 0xb8, 0xcd, 0x95, 0x07, 0x55, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/healthcheck/public_crudapi.vesapi.go b/pbgo/extschema/schema/healthcheck/public_crudapi.vesapi.go index f36d0b91e..e870f6db4 100644 --- a/pbgo/extschema/schema/healthcheck/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/healthcheck/public_crudapi.vesapi.go @@ -3203,10 +3203,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3263,10 +3267,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3369,10 +3377,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_deny_list_rule/crudapi/api.vesapi.go b/pbgo/extschema/schema/infraprotect_deny_list_rule/crudapi/api.vesapi.go index bdcd5a831..b78a04081 100644 --- a/pbgo/extschema/schema/infraprotect_deny_list_rule/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_deny_list_rule/crudapi/api.vesapi.go @@ -3122,10 +3122,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_deny_list_rule/object.pb.go b/pbgo/extschema/schema/infraprotect_deny_list_rule/object.pb.go index 563a3d86b..63df82106 100644 --- a/pbgo/extschema/schema/infraprotect_deny_list_rule/object.pb.go +++ b/pbgo/extschema/schema/infraprotect_deny_list_rule/object.pb.go @@ -236,46 +236,47 @@ func init() { } var fileDescriptor_6510a39b7cdb9668 = []byte{ - // 614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x77, 0x76, 0x71, 0x21, 0x03, 0x41, 0xd3, 0xd3, 0x0a, 0x3a, 0x21, 0xeb, 0x05, 0x13, - 0xda, 0x46, 0x08, 0x46, 0x88, 0xc1, 0x08, 0x26, 0x5c, 0x20, 0x26, 0x8b, 0x27, 0x13, 0x6d, 0xa6, - 0xd3, 0xb7, 0x65, 0xb4, 0xdb, 0x69, 0x66, 0xa6, 0x95, 0x3d, 0x98, 0x18, 0xfd, 0x02, 0x7e, 0x01, - 0xef, 0xc6, 0x4f, 0x21, 0x26, 0x26, 0x1e, 0x09, 0xf1, 0xc0, 0x51, 0xba, 0x17, 0x8e, 0xc4, 0x4f, - 0x60, 0x76, 0x4a, 0x09, 0x4b, 0x56, 0xc4, 0x70, 0x7b, 0xcd, 0xfb, 0xff, 0x7f, 0x79, 0x7d, 0xef, - 0xcd, 0xc3, 0xf7, 0x33, 0x50, 0x0e, 0x17, 0xae, 0x62, 0xdb, 0xd0, 0xa1, 0x2e, 0x8f, 0xdb, 0x92, - 0x26, 0x52, 0x68, 0x60, 0xda, 0x0b, 0x20, 0xee, 0x7a, 0x11, 0x57, 0xda, 0x93, 0x69, 0x04, 0xae, - 0xf0, 0x5f, 0x01, 0xd3, 0x4e, 0x3f, 0x2b, 0xac, 0xbb, 0x85, 0xcf, 0x29, 0x7c, 0xce, 0x05, 0xbe, - 0x29, 0x3b, 0xe4, 0x7a, 0x3b, 0xf5, 0x1d, 0x26, 0x3a, 0x6e, 0x28, 0x42, 0xe1, 0x1a, 0x82, 0x9f, - 0xb6, 0xcd, 0x97, 0xf9, 0x30, 0x51, 0x41, 0x9e, 0x5a, 0xbc, 0x7c, 0x45, 0xba, 0x9b, 0x80, 0x3a, - 0xb1, 0x4d, 0x0f, 0xda, 0x44, 0xa2, 0xb9, 0x88, 0xcb, 0xe4, 0xcd, 0xc1, 0xe4, 0x59, 0x5f, 0x73, - 0x30, 0x95, 0x81, 0x82, 0x38, 0x1b, 0xb4, 0x37, 0xbf, 0x8f, 0xe0, 0xfa, 0x53, 0xf3, 0xf7, 0xd6, - 0x12, 0x1e, 0xeb, 0x80, 0xa6, 0x01, 0xd5, 0xb4, 0x81, 0x66, 0xd0, 0xec, 0xf8, 0xfc, 0x6d, 0x67, - 0xb0, 0x15, 0x85, 0x70, 0x13, 0x34, 0x7d, 0xd6, 0x4d, 0xa0, 0x75, 0x2a, 0xb7, 0x36, 0xf0, 0x75, - 0xd5, 0x55, 0x1a, 0x3a, 0xde, 0x29, 0xa1, 0x6a, 0x08, 0x77, 0xce, 0x11, 0xb6, 0x8c, 0xea, 0x1c, - 0x67, 0xb2, 0xf0, 0x6e, 0x96, 0xb4, 0x75, 0x3c, 0xa2, 0x12, 0x60, 0x8d, 0x9a, 0x41, 0x2c, 0x38, - 0x97, 0x9e, 0x87, 0xb3, 0x95, 0x00, 0x33, 0x48, 0x03, 0x58, 0x3e, 0xaa, 0xbe, 0x7f, 0x54, 0x2f, - 0xe0, 0xdf, 0x76, 0xfb, 0x15, 0xed, 0xef, 0x36, 0x7e, 0x56, 0xf1, 0x63, 0x5c, 0x5b, 0x07, 0x6d, - 0x2d, 0x67, 0xa0, 0x6c, 0x2e, 0x6c, 0x03, 0x54, 0x5a, 0xa6, 0x4c, 0xa7, 0x12, 0x6c, 0x09, 0x34, - 0x98, 0x9b, 0x69, 0x2f, 0xee, 0x30, 0x5b, 0x8a, 0x54, 0x43, 0x60, 0x07, 0x81, 0x50, 0xb6, 0x4f, - 0x15, 0x67, 0x76, 0x47, 0xc4, 0x5c, 0x0b, 0x89, 0xd7, 0xf0, 0x68, 0x0b, 0x92, 0x88, 0x32, 0xb0, - 0x1e, 0x0c, 0xc7, 0xbc, 0x91, 0x5c, 0xc3, 0x5f, 0x39, 0xa9, 0x02, 0x89, 0x57, 0x71, 0x7d, 0x4d, - 0x02, 0xd5, 0x57, 0x64, 0x3c, 0x81, 0x08, 0xae, 0xc8, 0x18, 0xd9, 0xe0, 0xea, 0x4a, 0x0d, 0x69, - 0xbe, 0xc4, 0x63, 0x65, 0xf3, 0xad, 0x16, 0x1e, 0x0d, 0x99, 0x67, 0x46, 0x58, 0xec, 0xd1, 0xd2, - 0x7f, 0x8c, 0x70, 0x3d, 0x12, 0x3e, 0x8d, 0x4e, 0x07, 0x59, 0x0f, 0x59, 0x3f, 0x6e, 0x7e, 0xa8, - 0xe2, 0x89, 0x2d, 0x4d, 0x75, 0xaa, 0x2e, 0xbd, 0xad, 0x85, 0x7c, 0xc8, 0xb6, 0xbe, 0xc0, 0xe3, - 0xc5, 0x83, 0xf7, 0x24, 0xb4, 0x55, 0xa3, 0x3a, 0x53, 0x9b, 0x1d, 0x9f, 0xbf, 0x35, 0x74, 0xd7, - 0x5b, 0xd0, 0xee, 0x9b, 0x57, 0xc9, 0x97, 0xb7, 0xd3, 0x17, 0x54, 0xdd, 0xc2, 0xa2, 0x94, 0x2b, - 0xeb, 0x21, 0xc6, 0x4c, 0xc4, 0x01, 0x37, 0xcf, 0xac, 0x51, 0x1b, 0x4a, 0x5f, 0x2b, 0x05, 0xa6, - 0xb4, 0x33, 0xfa, 0xe5, 0xe9, 0xfd, 0x95, 0x1b, 0x78, 0x12, 0x4f, 0x94, 0xd5, 0x3a, 0x29, 0x0f, - 0x7e, 0xaf, 0x5c, 0xbb, 0x37, 0x37, 0x3f, 0xb7, 0xb0, 0xfa, 0x09, 0xed, 0x1d, 0x92, 0xca, 0xc1, - 0x21, 0xa9, 0x1c, 0x1f, 0x12, 0xf4, 0x2e, 0x27, 0xe8, 0x73, 0x4e, 0xd0, 0x8f, 0x9c, 0xa0, 0xbd, - 0x9c, 0xa0, 0x83, 0x9c, 0xa0, 0x5f, 0x39, 0x41, 0x47, 0x39, 0xa9, 0x1c, 0xe7, 0x04, 0x7d, 0xec, - 0x91, 0xca, 0xd7, 0x1e, 0x41, 0x7b, 0x3d, 0x52, 0x39, 0xe8, 0x91, 0xca, 0x73, 0x2f, 0x14, 0xc9, - 0xeb, 0xd0, 0xc9, 0x44, 0xa4, 0x41, 0x4a, 0xea, 0xa4, 0xca, 0x35, 0x41, 0x5b, 0xc8, 0x8e, 0x9d, - 0x48, 0x91, 0xf1, 0x00, 0xa4, 0x5d, 0xa6, 0xdd, 0xc4, 0x0f, 0x85, 0x0b, 0x3b, 0xfa, 0xe4, 0x7e, - 0xfc, 0xfb, 0x6a, 0xf9, 0x75, 0x73, 0x54, 0x16, 0xfe, 0x04, 0x00, 0x00, 0xff, 0xff, 0xe9, 0xa4, - 0xfe, 0x78, 0x7b, 0x05, 0x00, 0x00, + // 632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xb1, 0x4f, 0x14, 0x4f, + 0x14, 0xc7, 0x6f, 0x39, 0x38, 0xc8, 0x40, 0xf8, 0xfd, 0xb2, 0xd5, 0x09, 0x3a, 0x21, 0x67, 0x83, + 0x09, 0xbb, 0x1b, 0x21, 0x98, 0x40, 0x0c, 0x26, 0x60, 0x42, 0x03, 0x31, 0x39, 0x2c, 0x8c, 0x09, + 0x6e, 0x66, 0x67, 0xde, 0x2d, 0xa3, 0x7b, 0x3b, 0x9b, 0x99, 0xd9, 0x95, 0x2b, 0x4c, 0x8c, 0xf6, + 0xc6, 0x7f, 0xc0, 0xde, 0xf8, 0x57, 0x88, 0x95, 0x25, 0xa1, 0xa2, 0x94, 0xbd, 0xc6, 0xc4, 0x86, + 0x58, 0x5a, 0x99, 0x9b, 0x65, 0x09, 0x47, 0x4e, 0xc4, 0xe2, 0xba, 0xd9, 0x7c, 0xbf, 0xdf, 0xcf, + 0x7b, 0x77, 0xf3, 0xe6, 0xa1, 0x7b, 0x19, 0x28, 0x97, 0x0b, 0x4f, 0xd1, 0x3d, 0x68, 0x13, 0x8f, + 0xc7, 0x2d, 0x49, 0x12, 0x29, 0x34, 0x50, 0xed, 0x33, 0x88, 0x3b, 0x7e, 0xc4, 0x95, 0xf6, 0x65, + 0x1a, 0x81, 0x27, 0x82, 0xe7, 0x40, 0xb5, 0xdb, 0x53, 0x85, 0x7d, 0xa7, 0xc8, 0xb9, 0x45, 0xce, + 0xbd, 0x22, 0x37, 0xe3, 0x84, 0x5c, 0xef, 0xa5, 0x81, 0x4b, 0x45, 0xdb, 0x0b, 0x45, 0x28, 0x3c, + 0x43, 0x08, 0xd2, 0x96, 0xf9, 0x32, 0x1f, 0xe6, 0x54, 0x90, 0x67, 0x96, 0xaf, 0xdf, 0x91, 0xee, + 0x24, 0xa0, 0xce, 0x62, 0xb3, 0xfd, 0x31, 0x91, 0x68, 0x2e, 0xe2, 0x52, 0xbc, 0xd1, 0x2f, 0x5e, + 0xcc, 0x35, 0xfa, 0xa5, 0x0c, 0x14, 0xc4, 0x59, 0x7f, 0xbc, 0xf1, 0x63, 0x0c, 0xd5, 0x1e, 0x99, + 0x5f, 0x6f, 0xaf, 0xa0, 0x89, 0x36, 0x68, 0xc2, 0x88, 0x26, 0x75, 0x6b, 0xce, 0x9a, 0x9f, 0x5c, + 0xbc, 0xe5, 0xf6, 0xff, 0x15, 0x85, 0x71, 0x1b, 0x34, 0x79, 0xdc, 0x49, 0xa0, 0x79, 0x6e, 0xb7, + 0xb7, 0xd0, 0x7f, 0xaa, 0xa3, 0x34, 0xb4, 0xfd, 0x73, 0xc2, 0x88, 0x21, 0xdc, 0xbe, 0x44, 0xd8, + 0x31, 0xae, 0x4b, 0x9c, 0xe9, 0x22, 0xbb, 0x5d, 0xd2, 0x36, 0xd1, 0xa8, 0x4a, 0x80, 0xd6, 0xab, + 0x06, 0xb1, 0xe4, 0x5e, 0xfb, 0x3e, 0xdc, 0x9d, 0x04, 0xa8, 0x41, 0x1a, 0xc0, 0xea, 0xbb, 0xd1, + 0x37, 0x0f, 0x6a, 0x05, 0xfc, 0xcb, 0x41, 0xaf, 0xa3, 0xa3, 0x83, 0xfa, 0xaf, 0x2a, 0x62, 0xa8, + 0xba, 0x09, 0xda, 0xde, 0xcd, 0x40, 0x39, 0x5c, 0x38, 0x06, 0xa8, 0xb4, 0x4c, 0xa9, 0x4e, 0x25, + 0x38, 0x12, 0x08, 0x5b, 0x98, 0x6b, 0x2d, 0xef, 0x53, 0x47, 0x8a, 0x54, 0x03, 0x73, 0x18, 0x13, + 0xca, 0x09, 0x88, 0xe2, 0xd4, 0x69, 0x8b, 0x98, 0x6b, 0x21, 0x07, 0xe8, 0x4a, 0x93, 0x98, 0x11, + 0xc9, 0x4a, 0x0b, 0xa2, 0x68, 0xbc, 0x09, 0x49, 0x44, 0x28, 0xd8, 0x4f, 0x06, 0x57, 0x7a, 0x29, + 0xb9, 0x86, 0x3f, 0x96, 0x4a, 0x15, 0x5c, 0x59, 0xa7, 0xa7, 0xa3, 0x00, 0xd5, 0x36, 0x24, 0x10, + 0x3d, 0xe4, 0x1a, 0x0f, 0x21, 0x82, 0xa1, 0xd6, 0x00, 0x34, 0xba, 0xc5, 0xd5, 0xb0, 0xef, 0xa4, + 0xf1, 0x0c, 0x4d, 0x94, 0x23, 0x62, 0x37, 0xd1, 0x78, 0x48, 0x7d, 0x33, 0x68, 0xc5, 0xb4, 0xaf, + 0xfc, 0xc3, 0xa0, 0x6d, 0x46, 0x22, 0x20, 0xd1, 0xf9, 0xb8, 0xd5, 0x42, 0xda, 0x3b, 0x37, 0xde, + 0x8e, 0xa0, 0xa9, 0x1d, 0x4d, 0x74, 0xaa, 0xae, 0xfd, 0xa6, 0x0a, 0xfb, 0x80, 0x37, 0xb5, 0x8b, + 0x26, 0x8b, 0xb5, 0xe4, 0x4b, 0x68, 0xa9, 0xfa, 0xc8, 0x5c, 0x75, 0x7e, 0x72, 0xf1, 0xe6, 0xc0, + 0x17, 0xd9, 0x84, 0x56, 0x2f, 0xbc, 0x8e, 0x3f, 0xbd, 0x9a, 0xbd, 0xa2, 0xeb, 0x26, 0x12, 0xa5, + 0x5d, 0xd9, 0xf7, 0x11, 0xa2, 0x22, 0x66, 0xdc, 0x2c, 0x83, 0x7a, 0x75, 0x20, 0x7d, 0xa3, 0x34, + 0x98, 0xd6, 0x2e, 0xf8, 0x57, 0x67, 0x8f, 0xd6, 0xfe, 0x47, 0xd3, 0x68, 0xaa, 0xec, 0xd6, 0x4d, + 0x39, 0xfb, 0xb9, 0x36, 0x76, 0x77, 0x61, 0x71, 0x61, 0x69, 0xfd, 0x83, 0x75, 0x78, 0x82, 0x2b, + 0xc7, 0x27, 0xb8, 0x72, 0x7a, 0x82, 0xad, 0xd7, 0x39, 0xb6, 0x3e, 0xe6, 0xd8, 0xfa, 0x9a, 0x63, + 0xeb, 0x30, 0xc7, 0xd6, 0x71, 0x8e, 0xad, 0x6f, 0x39, 0xb6, 0xbe, 0xe7, 0xb8, 0x72, 0x9a, 0x63, + 0xeb, 0x7d, 0x17, 0x57, 0x3e, 0x77, 0xb1, 0x75, 0xd8, 0xc5, 0x95, 0xe3, 0x2e, 0xae, 0x3c, 0xf5, + 0x43, 0x91, 0xbc, 0x08, 0xdd, 0x4c, 0x44, 0x1a, 0xa4, 0x24, 0x6e, 0xaa, 0x3c, 0x73, 0x68, 0x09, + 0xd9, 0x76, 0x12, 0x29, 0x32, 0xce, 0x40, 0x3a, 0xa5, 0xec, 0x25, 0x41, 0x28, 0x3c, 0xd8, 0xd7, + 0x67, 0x5b, 0xee, 0xef, 0xbb, 0x35, 0xa8, 0x99, 0xd5, 0xb7, 0xf4, 0x3b, 0x00, 0x00, 0xff, 0xff, + 0xd9, 0xdc, 0x4b, 0x13, 0x21, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.pb.go b/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.pb.go index 30135a256..835a6ceac 100644 --- a/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.pb.go +++ b/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.pb.go @@ -1056,110 +1056,111 @@ func init() { } var fileDescriptor_f6cb47f0f2f19c38 = []byte{ - // 1639 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xdf, 0x6f, 0x13, 0xcb, - 0x15, 0xce, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x61, 0xa6, 0x10, 0x1c, 0x97, 0x5a, 0xae, 0x41, 0x55, - 0x1a, 0xd5, 0x6b, 0x94, 0x8a, 0x40, 0x42, 0x9b, 0xe2, 0x24, 0x8e, 0x15, 0x1a, 0x08, 0xac, 0x4d, - 0x54, 0x4a, 0xd5, 0xd5, 0x7a, 0x77, 0x6c, 0xb6, 0xd8, 0xbb, 0xdb, 0x99, 0xb1, 0x83, 0xd5, 0x46, - 0xaa, 0x50, 0xa5, 0x56, 0xf4, 0xa5, 0x12, 0x6f, 0xa8, 0xad, 0xda, 0x87, 0x4a, 0xed, 0x7f, 0x50, - 0x29, 0x2f, 0xbc, 0x95, 0xf2, 0x50, 0xa1, 0x7b, 0x5f, 0x78, 0xbc, 0x38, 0xf7, 0x4a, 0xbc, 0x5d, - 0x74, 0x9f, 0xee, 0xd3, 0xd5, 0xd5, 0xce, 0xec, 0x1a, 0xdb, 0x31, 0x60, 0x3b, 0xb9, 0x4f, 0xde, - 0x99, 0x73, 0xbe, 0x6f, 0xe6, 0x7c, 0x73, 0xce, 0xf1, 0xec, 0xc2, 0x95, 0x06, 0xa6, 0x92, 0x61, - 0x65, 0xa8, 0x76, 0x0f, 0xd7, 0xd4, 0x8c, 0x61, 0x96, 0x89, 0x6a, 0x13, 0x8b, 0x61, 0x8d, 0x29, - 0x3a, 0x36, 0x9b, 0x4a, 0xd5, 0xa0, 0x4c, 0x21, 0xf5, 0x2a, 0xce, 0xd8, 0xf5, 0x52, 0xd5, 0xd0, - 0x14, 0x8d, 0xd4, 0x75, 0xd5, 0x36, 0x24, 0xc7, 0xcb, 0x42, 0xdf, 0x17, 0x78, 0x49, 0xe0, 0xa5, - 0xf7, 0xe0, 0xe3, 0xe9, 0x8a, 0xc1, 0xee, 0xd5, 0x4b, 0x92, 0x66, 0xd5, 0x32, 0x15, 0xab, 0x62, - 0x65, 0x38, 0x43, 0xa9, 0x5e, 0xe6, 0x23, 0x3e, 0xe0, 0x4f, 0x82, 0x39, 0x7e, 0xb6, 0x62, 0x59, - 0x95, 0x2a, 0xce, 0xa8, 0xb6, 0x91, 0x51, 0x4d, 0xd3, 0x62, 0x2a, 0x33, 0x2c, 0x93, 0xba, 0xd6, - 0x6f, 0xbb, 0xd6, 0x36, 0x07, 0xae, 0xd9, 0xac, 0xe9, 0x1a, 0xe3, 0xdd, 0x41, 0x61, 0x42, 0x2c, - 0xe2, 0x01, 0x17, 0x07, 0x0f, 0xd8, 0x2a, 0xfd, 0x0a, 0x6b, 0xcc, 0xc5, 0x5d, 0x1c, 0x1c, 0xc7, - 0x9a, 0x36, 0x6e, 0xef, 0xb3, 0x1b, 0x66, 0xd9, 0x9d, 0x41, 0xcc, 0x76, 0x1b, 0x3b, 0x71, 0xa9, - 0x6e, 0x53, 0x03, 0x53, 0x6c, 0x36, 0x7a, 0xe0, 0xc9, 0x1e, 0x1f, 0x03, 0xef, 0x2a, 0x5d, 0x1e, - 0xa9, 0x7d, 0x00, 0x27, 0xd7, 0x08, 0x56, 0x19, 0x96, 0xf1, 0xaf, 0xeb, 0x98, 0x32, 0xf4, 0x13, - 0x18, 0xaa, 0x61, 0xa6, 0xea, 0x2a, 0x53, 0x63, 0x20, 0x09, 0xe6, 0x22, 0x0b, 0xe7, 0xa4, 0xee, - 0x23, 0xdc, 0xe6, 0x51, 0x0b, 0xd4, 0x75, 0xcc, 0xd4, 0x62, 0xd3, 0xc6, 0x72, 0x1b, 0x84, 0x7e, - 0x09, 0x03, 0xd4, 0xc6, 0x5a, 0xcc, 0xc7, 0xc1, 0x4b, 0xd2, 0xc0, 0xe7, 0x2f, 0x09, 0xca, 0x82, - 0x8d, 0x35, 0x87, 0x72, 0x75, 0xfa, 0xc9, 0xde, 0x84, 0xc3, 0x24, 0x55, 0x34, 0xc5, 0xf9, 0x95, - 0x39, 0xef, 0x72, 0xf8, 0xf9, 0x4a, 0x50, 0x6c, 0x21, 0xf5, 0x07, 0x1f, 0x9c, 0xf2, 0x76, 0x4f, - 0x6d, 0xcb, 0xa4, 0x18, 0xfd, 0xe8, 0xd0, 0xf6, 0x93, 0x7d, 0xb7, 0x9f, 0xc7, 0xac, 0xcf, 0xde, - 0xb7, 0xe1, 0x34, 0x6d, 0x52, 0x86, 0x6b, 0x4a, 0x9b, 0xc4, 0xcf, 0x49, 0xbe, 0xd7, 0x43, 0x52, - 0xe0, 0x5e, 0x87, 0xa9, 0xa6, 0x04, 0xfc, 0xba, 0x47, 0x78, 0xb7, 0x4b, 0x8c, 0xc5, 0x21, 0xc4, - 0xc8, 0x63, 0x36, 0x84, 0x12, 0x9f, 0x03, 0x38, 0x25, 0x63, 0xbb, 0xaa, 0x6a, 0xed, 0x83, 0xbc, - 0x7a, 0x48, 0x89, 0xf3, 0x7d, 0x95, 0x70, 0x61, 0x7d, 0xd4, 0x50, 0xba, 0x36, 0xbf, 0x3c, 0xc4, - 0xe6, 0x5d, 0xce, 0x0f, 0x04, 0x80, 0x32, 0x30, 0x4a, 0x30, 0xb5, 0xea, 0x44, 0xc3, 0x4a, 0x03, - 0x13, 0x6a, 0x58, 0x26, 0xd7, 0x3b, 0xbc, 0x1a, 0x78, 0xbd, 0x0f, 0x80, 0x3c, 0xed, 0x59, 0x77, - 0x84, 0xb1, 0x33, 0xe2, 0x93, 0x70, 0xba, 0x1d, 0xb0, 0x38, 0xfb, 0xd4, 0xbf, 0x01, 0x84, 0x79, - 0xcc, 0x3c, 0x01, 0xce, 0xc2, 0xb0, 0xa9, 0xd6, 0x30, 0xb5, 0x55, 0x0d, 0x73, 0x05, 0xc2, 0xf2, - 0xdb, 0x09, 0x84, 0x60, 0xc0, 0x19, 0xf0, 0xe0, 0xc2, 0x32, 0x7f, 0x46, 0x06, 0x74, 0x56, 0xe4, - 0x64, 0x4a, 0xd9, 0x22, 0x35, 0x95, 0xf1, 0xed, 0x4c, 0x2d, 0x5c, 0x1d, 0xee, 0xe0, 0xbc, 0x1d, - 0x6d, 0x70, 0x8e, 0x35, 0x4b, 0xc7, 0xf2, 0x14, 0xe9, 0x9a, 0x4b, 0xfd, 0x2f, 0x08, 0x23, 0x1d, - 0x9e, 0xe8, 0x0e, 0x8c, 0x68, 0x3c, 0x93, 0xf9, 0xc2, 0xae, 0xe4, 0x97, 0x87, 0x2e, 0x1e, 0x37, - 0x76, 0x19, 0x0a, 0x32, 0x67, 0x31, 0xf4, 0x0b, 0x38, 0x41, 0x84, 0x52, 0x82, 0xdb, 0x3f, 0x74, - 0x61, 0x76, 0x67, 0x96, 0x1c, 0x71, 0xe9, 0x38, 0x7b, 0xbf, 0x33, 0x0c, 0xbc, 0xe7, 0x0c, 0xbb, - 0x2a, 0x74, 0xfc, 0x38, 0x2a, 0xf4, 0xc4, 0xb1, 0x54, 0x68, 0xf0, 0x1b, 0xa8, 0x50, 0xb4, 0x03, - 0x83, 0x94, 0xa9, 0xac, 0x4e, 0x63, 0x7f, 0xff, 0x0b, 0x48, 0xfa, 0xe7, 0x22, 0x0b, 0x97, 0x86, - 0x58, 0xa0, 0xc0, 0xa1, 0x22, 0x84, 0x55, 0xff, 0xd3, 0x3d, 0x20, 0xbb, 0x6c, 0x68, 0x13, 0x9e, - 0x24, 0xb8, 0x8c, 0x09, 0x31, 0xcc, 0x8a, 0x22, 0xfe, 0x85, 0x68, 0x2c, 0xc4, 0x17, 0x38, 0xfb, - 0x8e, 0x22, 0x2f, 0xf3, 0xe8, 0xa3, 0x6d, 0x98, 0x98, 0xa7, 0x68, 0x07, 0xc6, 0x74, 0x5c, 0xc5, - 0x0c, 0xeb, 0x8a, 0xb0, 0x61, 0xbd, 0xcd, 0x18, 0x1e, 0x80, 0x71, 0xc6, 0x45, 0xcb, 0x2e, 0xd8, - 0xe3, 0xfd, 0x19, 0x9c, 0xd5, 0x0d, 0xaa, 0x96, 0xaa, 0xfd, 0x88, 0xe1, 0x00, 0xc4, 0x67, 0x3c, - 0x78, 0x0f, 0x73, 0x47, 0x13, 0xb8, 0x16, 0x08, 0x81, 0xa8, 0x2f, 0xf5, 0x4f, 0x00, 0x23, 0x5b, - 0x06, 0x1d, 0xb0, 0xf0, 0xbf, 0x0b, 0x27, 0xaa, 0x6a, 0x09, 0x57, 0x95, 0xb2, 0x51, 0x65, 0x98, - 0xb8, 0x0d, 0x20, 0xc2, 0xe7, 0x36, 0xf8, 0x14, 0x3a, 0x07, 0x27, 0x09, 0xb6, 0x2d, 0xc2, 0x94, - 0xb2, 0x81, 0xab, 0x3a, 0x8d, 0xf9, 0x93, 0xfe, 0xb9, 0xb0, 0x3c, 0x21, 0x26, 0x37, 0xf8, 0x1c, - 0xba, 0x00, 0x4f, 0xb9, 0x4e, 0xe2, 0x50, 0x3c, 0xdf, 0x00, 0xf7, 0x45, 0xc2, 0x26, 0x8e, 0x50, - 0x20, 0x52, 0x5f, 0x06, 0x61, 0x54, 0xec, 0x53, 0x14, 0xfd, 0x26, 0xc3, 0x35, 0x34, 0x03, 0x83, - 0x0c, 0x9b, 0xaa, 0xc9, 0x78, 0x06, 0x86, 0x65, 0x77, 0x34, 0x42, 0xf7, 0x8a, 0x42, 0x7f, 0xdd, - 0xd0, 0x45, 0x03, 0x95, 0x9d, 0x47, 0x94, 0x84, 0x11, 0x1d, 0x53, 0x8d, 0x18, 0xfc, 0x3f, 0x3f, - 0x16, 0x11, 0x91, 0x76, 0x4c, 0xa1, 0x38, 0x0c, 0x79, 0x32, 0xc7, 0x26, 0x92, 0x60, 0x2e, 0x24, - 0xb7, 0xc7, 0x48, 0x81, 0x41, 0x2e, 0x8a, 0x08, 0x29, 0xb2, 0x90, 0x1f, 0x22, 0x75, 0x7b, 0xc3, - 0x94, 0xb6, 0x38, 0x53, 0xce, 0x64, 0xa4, 0x29, 0xbb, 0xb4, 0xc8, 0x84, 0x91, 0x8e, 0x7b, 0x9b, - 0x9b, 0x14, 0x5b, 0x47, 0x59, 0x25, 0xfb, 0x96, 0x4e, 0x2c, 0xd5, 0xb9, 0x00, 0x5a, 0x82, 0xd0, - 0xda, 0x35, 0x31, 0x51, 0x9c, 0x8b, 0x50, 0x2c, 0xcc, 0x0b, 0x3e, 0xde, 0xb3, 0xdc, 0x8e, 0x81, - 0x77, 0xbd, 0x0c, 0x0c, 0x73, 0x6f, 0x67, 0xa6, 0xab, 0x69, 0x4d, 0x1e, 0x47, 0xd3, 0x9a, 0x3a, - 0x52, 0xd3, 0xba, 0x05, 0x43, 0x15, 0xcc, 0x78, 0xa7, 0x71, 0xdb, 0xdf, 0x88, 0x8d, 0x4b, 0x3e, - 0x51, 0x11, 0x03, 0x74, 0x17, 0x42, 0x37, 0x8f, 0x29, 0x66, 0x6e, 0x2f, 0x39, 0x5a, 0xb3, 0x0a, - 0x0b, 0xbe, 0x02, 0x66, 0xf1, 0x25, 0x18, 0xe9, 0x48, 0x00, 0x27, 0x53, 0xef, 0xe3, 0xa6, 0x9b, - 0xd5, 0xce, 0x23, 0x3a, 0x05, 0xc7, 0x1b, 0x6a, 0xb5, 0xee, 0x25, 0xb4, 0x18, 0x2c, 0xfb, 0x2e, - 0x83, 0xf8, 0x0a, 0x8c, 0xf6, 0x9e, 0xea, 0x30, 0xf8, 0x6b, 0x81, 0xd0, 0x78, 0x34, 0x98, 0x7a, - 0x0c, 0xe0, 0x44, 0x67, 0xb6, 0xa0, 0x5b, 0x70, 0xdc, 0x60, 0xb8, 0x46, 0x63, 0xa2, 0x2d, 0x5f, - 0x39, 0x42, 0xd6, 0xc9, 0x82, 0x09, 0x5d, 0x80, 0x41, 0xf1, 0x22, 0x11, 0xf3, 0x71, 0xce, 0x58, - 0x0f, 0x67, 0xce, 0x31, 0x72, 0xd1, 0x5d, 0xbf, 0xd4, 0x7d, 0x38, 0xb9, 0xce, 0xbb, 0xe7, 0xe8, - 0x57, 0x96, 0x39, 0x18, 0x2d, 0xab, 0x46, 0x55, 0x31, 0xca, 0xed, 0x2e, 0xcb, 0x3b, 0x40, 0x48, - 0x9e, 0x72, 0xe6, 0x37, 0xcb, 0x5e, 0xf7, 0x9c, 0xff, 0x02, 0xc0, 0xd3, 0x7d, 0xef, 0x26, 0x28, - 0x0e, 0x67, 0xf2, 0xb9, 0xa2, 0x22, 0x17, 0x6e, 0x2a, 0x1b, 0xdb, 0xf2, 0xf5, 0x6c, 0x51, 0x59, - 0xcf, 0x6d, 0x64, 0x6f, 0x6f, 0x15, 0xa3, 0x63, 0xe8, 0x3b, 0x70, 0xb6, 0xc7, 0xb6, 0xb1, 0x2d, - 0x2b, 0x6b, 0x72, 0x2e, 0x5b, 0xcc, 0x45, 0x01, 0x4a, 0xc0, 0x78, 0x1f, 0xb3, 0x9c, 0xbb, 0xb9, - 0x95, 0x5d, 0xcb, 0x45, 0x7d, 0x68, 0x16, 0x9e, 0xee, 0xb1, 0x17, 0x8a, 0xd9, 0xe2, 0xed, 0x42, - 0xd4, 0x8f, 0xce, 0xc0, 0x6f, 0xf5, 0x98, 0xe4, 0x5c, 0x76, 0x3d, 0x1a, 0x40, 0xe7, 0x61, 0xf2, - 0x90, 0x61, 0x23, 0x27, 0xcb, 0x9b, 0x37, 0xf2, 0xca, 0xf6, 0xea, 0xb5, 0xdc, 0x5a, 0xb1, 0x10, - 0x1d, 0xef, 0xe3, 0xb5, 0x2a, 0x6f, 0xff, 0x34, 0x77, 0x43, 0x38, 0xe7, 0x6e, 0xac, 0xe5, 0x0a, - 0xd1, 0xe0, 0xc2, 0xdf, 0x22, 0xd0, 0x9f, 0xbd, 0xb9, 0x89, 0x1e, 0xf9, 0x60, 0x50, 0xdc, 0x90, - 0xd0, 0xc8, 0x97, 0xaa, 0xf8, 0xd2, 0x08, 0x48, 0xf7, 0x6a, 0xfa, 0x08, 0xb4, 0xfe, 0x1b, 0xbb, - 0xd4, 0xc0, 0x34, 0x6d, 0x58, 0x69, 0x8e, 0xa3, 0x8c, 0xd4, 0x35, 0x56, 0x27, 0x38, 0xbd, 0x4b, - 0x0c, 0x86, 0x7f, 0x50, 0xbe, 0xf8, 0x40, 0x4b, 0x13, 0xab, 0xce, 0xb0, 0x9e, 0xd6, 0x75, 0x8b, - 0xa6, 0x4b, 0x2a, 0x35, 0xb4, 0x74, 0x9d, 0x62, 0xf2, 0xf0, 0xe3, 0x4f, 0x1f, 0xfb, 0x36, 0x53, - 0xeb, 0xee, 0x0b, 0x76, 0xa6, 0x9d, 0x11, 0x34, 0xf3, 0x1b, 0xaf, 0xa1, 0x48, 0xed, 0xc9, 0xbd, - 0xf7, 0xbd, 0x7a, 0xd2, 0x65, 0x30, 0x8f, 0x1e, 0xfa, 0xa0, 0x3f, 0x8f, 0x19, 0xba, 0x38, 0xec, - 0xad, 0x56, 0xc8, 0xb0, 0x38, 0xda, 0x65, 0x38, 0xf5, 0x27, 0xf0, 0xec, 0x3f, 0x3e, 0x47, 0x87, - 0xa5, 0xfe, 0x3a, 0x10, 0xac, 0xea, 0xef, 0x92, 0xa1, 0x66, 0x99, 0x06, 0xb3, 0x84, 0x12, 0xeb, - 0x68, 0xb5, 0x9f, 0x12, 0x03, 0x0a, 0x20, 0x1c, 0xf7, 0xd0, 0x57, 0x00, 0x06, 0x9c, 0x4a, 0x46, - 0x8b, 0x43, 0x97, 0xbe, 0x90, 0xe1, 0xd2, 0x88, 0x2d, 0x23, 0xf5, 0xfb, 0x63, 0xd2, 0xe1, 0xc7, - 0xe8, 0xca, 0x11, 0x74, 0x40, 0x7f, 0xf5, 0xc1, 0x13, 0xee, 0xc5, 0x1e, 0x8d, 0xfe, 0x32, 0x10, - 0x5f, 0x1e, 0x05, 0xea, 0x2a, 0xf1, 0xe4, 0xc8, 0x55, 0x71, 0x27, 0x5e, 0x3c, 0x8e, 0xaa, 0xe8, - 0x41, 0xec, 0x39, 0x55, 0xf2, 0x19, 0x80, 0x41, 0xd1, 0x9d, 0x87, 0x6a, 0x19, 0x5d, 0x0d, 0x3d, - 0x3e, 0x23, 0x89, 0xcf, 0x50, 0x92, 0xf7, 0x19, 0x4a, 0xca, 0xd5, 0x6c, 0xd6, 0x4c, 0xfd, 0xf1, - 0xc8, 0x91, 0xe7, 0xe7, 0x8f, 0xa1, 0x0a, 0x96, 0xc1, 0x7c, 0xfc, 0xb7, 0x4f, 0xf7, 0x81, 0xef, - 0xa3, 0x7d, 0x70, 0x61, 0xf0, 0x18, 0xc5, 0xbf, 0xfc, 0xcb, 0x7d, 0x00, 0x5a, 0xfb, 0x60, 0x71, - 0xb4, 0x3b, 0xc2, 0xc3, 0xff, 0x3b, 0xff, 0x63, 0xab, 0xff, 0x00, 0xcf, 0x57, 0xc6, 0xd7, 0xe4, - 0xdb, 0xeb, 0x5b, 0x2f, 0x5e, 0x25, 0xc6, 0x5e, 0xbe, 0x4a, 0x8c, 0xbd, 0x79, 0x95, 0x00, 0xbf, - 0x6b, 0x25, 0xc0, 0xbf, 0x5a, 0x09, 0xf0, 0xac, 0x95, 0x00, 0x2f, 0x5a, 0x09, 0xf0, 0x49, 0x2b, - 0x01, 0x5e, 0xb7, 0x12, 0x63, 0x6f, 0x5a, 0x09, 0xf0, 0xe7, 0x83, 0xc4, 0xd8, 0xd3, 0x83, 0x04, - 0x78, 0x71, 0x90, 0x18, 0x7b, 0x79, 0x90, 0x18, 0xfb, 0xb9, 0x52, 0xb1, 0xec, 0xfb, 0x15, 0xa9, - 0x61, 0x39, 0x77, 0x77, 0xa2, 0x4a, 0x75, 0x9a, 0xe1, 0x0f, 0xce, 0xcb, 0x6e, 0xda, 0x26, 0x56, - 0xc3, 0xd0, 0x31, 0x49, 0x7b, 0xe6, 0x8c, 0x5d, 0xaa, 0x58, 0x19, 0xfc, 0x80, 0xb9, 0x1f, 0xc5, - 0x3e, 0xfc, 0xb9, 0xae, 0x14, 0xe4, 0x87, 0xf7, 0xc3, 0xaf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x84, - 0x79, 0x23, 0x57, 0x0b, 0x15, 0x00, 0x00, + // 1649 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4f, 0x6c, 0x1b, 0x4d, + 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xc7, 0x1d, 0xda, 0xd4, 0x31, 0xc5, 0x32, 0x6e, 0x85, + 0x42, 0x84, 0xd7, 0x55, 0x50, 0xd3, 0x26, 0x85, 0x50, 0x27, 0x71, 0xac, 0x94, 0xb4, 0x69, 0xd7, + 0x6e, 0x44, 0x29, 0x62, 0xb5, 0xde, 0x1d, 0xbb, 0x4b, 0xed, 0xdd, 0x65, 0x66, 0xec, 0xd4, 0x82, + 0x48, 0xa8, 0x42, 0xe2, 0x8a, 0xd4, 0x1b, 0xe2, 0x50, 0x24, 0xfe, 0xf5, 0xc0, 0x1d, 0x14, 0x24, + 0x7a, 0xa3, 0xf4, 0x80, 0x2a, 0xb8, 0xf4, 0x48, 0x1d, 0x0e, 0xbd, 0x51, 0x71, 0xfa, 0x8e, 0x9f, + 0x76, 0x66, 0xd7, 0xb5, 0x1d, 0x37, 0xb5, 0x9d, 0xf4, 0x3b, 0x79, 0x77, 0xde, 0xfb, 0xfd, 0x66, + 0xde, 0x6f, 0xde, 0x7b, 0x3b, 0x63, 0xb8, 0xd2, 0xc0, 0x54, 0x32, 0xac, 0x0c, 0xd5, 0x1e, 0xe0, + 0x9a, 0x9a, 0x31, 0xcc, 0x32, 0x51, 0x6d, 0x62, 0x31, 0xac, 0x31, 0x45, 0xc7, 0x66, 0x53, 0xa9, + 0x1a, 0x94, 0x29, 0xa4, 0x5e, 0xc5, 0x19, 0xbb, 0x5e, 0xaa, 0x1a, 0x9a, 0xa2, 0x91, 0xba, 0xae, + 0xda, 0x86, 0xe4, 0x78, 0x59, 0xe8, 0xeb, 0x02, 0x2f, 0x09, 0xbc, 0x74, 0x04, 0x3e, 0x9e, 0xae, + 0x18, 0xec, 0x41, 0xbd, 0x24, 0x69, 0x56, 0x2d, 0x53, 0xb1, 0x2a, 0x56, 0x86, 0x33, 0x94, 0xea, + 0x65, 0xfe, 0xc6, 0x5f, 0xf8, 0x93, 0x60, 0x8e, 0x9f, 0xaf, 0x58, 0x56, 0xa5, 0x8a, 0x33, 0xaa, + 0x6d, 0x64, 0x54, 0xd3, 0xb4, 0x98, 0xca, 0x0c, 0xcb, 0xa4, 0xae, 0xf5, 0xcb, 0xae, 0xb5, 0xcd, + 0x81, 0x6b, 0x36, 0x6b, 0xba, 0xc6, 0x78, 0x77, 0x50, 0x98, 0x10, 0x8b, 0x78, 0xc0, 0xc5, 0xc1, + 0x03, 0xb6, 0x4a, 0x3f, 0xc2, 0x1a, 0x73, 0x71, 0x97, 0x07, 0xc7, 0xb1, 0xa6, 0x8d, 0xdb, 0xeb, + 0xec, 0x86, 0x59, 0x76, 0x67, 0x10, 0xb3, 0xdd, 0xc6, 0x4e, 0x5c, 0xaa, 0xdb, 0xd4, 0xc0, 0x14, + 0x9b, 0x8d, 0x1e, 0x78, 0xb2, 0xc7, 0xc7, 0xc0, 0xbb, 0x4a, 0x97, 0x47, 0x6a, 0x1f, 0xc0, 0xc9, + 0x35, 0x82, 0x55, 0x86, 0x65, 0xfc, 0xe3, 0x3a, 0xa6, 0x0c, 0x7d, 0x07, 0x86, 0x6a, 0x98, 0xa9, + 0xba, 0xca, 0xd4, 0x18, 0x48, 0x82, 0xb9, 0xc8, 0xc2, 0x05, 0xa9, 0x7b, 0x0b, 0xb7, 0x79, 0xd4, + 0x02, 0x75, 0x13, 0x33, 0xb5, 0xd8, 0xb4, 0xb1, 0xdc, 0x06, 0xa1, 0x1f, 0xc2, 0x00, 0xb5, 0xb1, + 0x16, 0xf3, 0x71, 0xf0, 0x92, 0x34, 0xf0, 0xfe, 0x4b, 0x82, 0xb2, 0x60, 0x63, 0xcd, 0xa1, 0x5c, + 0x9d, 0xfe, 0xd5, 0xde, 0x84, 0xc3, 0x24, 0x55, 0x34, 0xc5, 0xf9, 0x95, 0x39, 0xef, 0x72, 0xf8, + 0xe5, 0x4a, 0x50, 0x2c, 0x21, 0xf5, 0x0b, 0x1f, 0x9c, 0xf2, 0x56, 0x4f, 0x6d, 0xcb, 0xa4, 0x18, + 0x7d, 0xeb, 0xd0, 0xf2, 0x93, 0x7d, 0x97, 0x9f, 0xc7, 0xac, 0xcf, 0xda, 0xb7, 0xe1, 0x34, 0x6d, + 0x52, 0x86, 0x6b, 0x4a, 0x9b, 0xc4, 0xcf, 0x49, 0xbe, 0xd6, 0x43, 0x52, 0xe0, 0x5e, 0x87, 0xa9, + 0xa6, 0x04, 0xfc, 0xa6, 0x47, 0x78, 0xbf, 0x4b, 0x8c, 0xc5, 0x21, 0xc4, 0xc8, 0x63, 0x36, 0x84, + 0x12, 0xff, 0x03, 0x70, 0x4a, 0xc6, 0x76, 0x55, 0xd5, 0xda, 0x1b, 0x79, 0xfd, 0x90, 0x12, 0x17, + 0xfb, 0x2a, 0xe1, 0xc2, 0xfa, 0xa8, 0xa1, 0x74, 0x2d, 0x7e, 0x79, 0x88, 0xc5, 0xbb, 0x9c, 0x1f, + 0x09, 0x00, 0x65, 0x60, 0x94, 0x60, 0x6a, 0xd5, 0x89, 0x86, 0x95, 0x06, 0x26, 0xd4, 0xb0, 0x4c, + 0xae, 0x77, 0x78, 0x35, 0xf0, 0x76, 0x1f, 0x00, 0x79, 0xda, 0xb3, 0xee, 0x08, 0x63, 0x67, 0xc4, + 0xa7, 0xe1, 0x74, 0x3b, 0x60, 0xb1, 0xf7, 0xa9, 0x67, 0x00, 0xc2, 0x3c, 0x66, 0x9e, 0x00, 0xe7, + 0x61, 0xd8, 0x54, 0x6b, 0x98, 0xda, 0xaa, 0x86, 0xb9, 0x02, 0x61, 0xf9, 0xfd, 0x00, 0x42, 0x30, + 0xe0, 0xbc, 0xf0, 0xe0, 0xc2, 0x32, 0x7f, 0x46, 0x06, 0x74, 0x66, 0xe4, 0x64, 0x4a, 0xd9, 0x22, + 0x35, 0x95, 0xf1, 0xe5, 0x4c, 0x2d, 0x5c, 0x1f, 0x6e, 0xe3, 0xbc, 0x15, 0x6d, 0x70, 0x8e, 0x35, + 0x4b, 0xc7, 0xf2, 0x14, 0xe9, 0x1a, 0x4b, 0xfd, 0x23, 0x08, 0x23, 0x1d, 0x9e, 0xe8, 0x1e, 0x8c, + 0x68, 0x3c, 0x93, 0xf9, 0xc4, 0xae, 0xe4, 0x57, 0x87, 0x2e, 0x1e, 0x37, 0x76, 0x19, 0x0a, 0x32, + 0x67, 0x32, 0xf4, 0x03, 0x38, 0x41, 0x84, 0x52, 0x82, 0xdb, 0x3f, 0x74, 0x61, 0x76, 0x67, 0x96, + 0x1c, 0x71, 0xe9, 0x38, 0x7b, 0xbf, 0x3d, 0x0c, 0x1c, 0xb1, 0x87, 0x5d, 0x15, 0x3a, 0x7e, 0x12, + 0x15, 0x7a, 0xea, 0x44, 0x2a, 0x34, 0xf8, 0x09, 0x2a, 0x14, 0xed, 0xc0, 0x20, 0x65, 0x2a, 0xab, + 0xd3, 0xd8, 0xd3, 0x5f, 0x83, 0xa4, 0x7f, 0x2e, 0xb2, 0x70, 0x65, 0x88, 0x09, 0x0a, 0x1c, 0x2a, + 0x42, 0x58, 0xf5, 0x3f, 0xdf, 0x03, 0xb2, 0xcb, 0x86, 0x36, 0xe1, 0x69, 0x82, 0xcb, 0x98, 0x10, + 0xc3, 0xac, 0x28, 0xe2, 0x2b, 0x44, 0x63, 0x21, 0x3e, 0xc1, 0xf9, 0x0f, 0x14, 0x79, 0x99, 0x47, + 0x1f, 0x6d, 0xc3, 0xc4, 0x38, 0x45, 0x3b, 0x30, 0xa6, 0xe3, 0x2a, 0x66, 0x58, 0x57, 0x84, 0x0d, + 0xeb, 0x6d, 0xc6, 0xf0, 0x00, 0x8c, 0x33, 0x2e, 0x5a, 0x76, 0xc1, 0x1e, 0xef, 0xf7, 0xe0, 0xac, + 0x6e, 0x50, 0xb5, 0x54, 0xed, 0x47, 0x0c, 0x07, 0x20, 0x3e, 0xe7, 0xc1, 0x7b, 0x98, 0x3b, 0x9a, + 0xc0, 0x8d, 0x40, 0x08, 0x44, 0x7d, 0xa9, 0xdf, 0x01, 0x18, 0xd9, 0x32, 0xe8, 0x80, 0x85, 0xff, + 0x55, 0x38, 0x51, 0x55, 0x4b, 0xb8, 0xaa, 0x94, 0x8d, 0x2a, 0xc3, 0xc4, 0x6d, 0x00, 0x11, 0x3e, + 0xb6, 0xc1, 0x87, 0xd0, 0x05, 0x38, 0x49, 0xb0, 0x6d, 0x11, 0xa6, 0x94, 0x0d, 0x5c, 0xd5, 0x69, + 0xcc, 0x9f, 0xf4, 0xcf, 0x85, 0xe5, 0x09, 0x31, 0xb8, 0xc1, 0xc7, 0xd0, 0x25, 0x78, 0xc6, 0x75, + 0x12, 0x9b, 0xe2, 0xf9, 0x06, 0xb8, 0x2f, 0x12, 0x36, 0xb1, 0x85, 0x02, 0x91, 0xfa, 0x2c, 0x08, + 0xa3, 0x62, 0x9d, 0xa2, 0xe8, 0x37, 0x19, 0xae, 0xa1, 0x19, 0x18, 0x64, 0xd8, 0x54, 0x4d, 0xc6, + 0x33, 0x30, 0x2c, 0xbb, 0x6f, 0x23, 0x74, 0xaf, 0x28, 0xf4, 0xd7, 0x0d, 0x5d, 0x34, 0x50, 0xd9, + 0x79, 0x44, 0x49, 0x18, 0xd1, 0x31, 0xd5, 0x88, 0xc1, 0xbf, 0xf9, 0xb1, 0x88, 0x88, 0xb4, 0x63, + 0x08, 0xc5, 0x61, 0xc8, 0x93, 0x39, 0x36, 0x91, 0x04, 0x73, 0x21, 0xb9, 0xfd, 0x8e, 0x14, 0x18, + 0xe4, 0xa2, 0x88, 0x90, 0x22, 0x0b, 0xf9, 0x21, 0x52, 0xb7, 0x37, 0x4c, 0x69, 0x8b, 0x33, 0xe5, + 0x4c, 0x46, 0x9a, 0xb2, 0x4b, 0x8b, 0x4c, 0x18, 0xe9, 0x38, 0xb7, 0xb9, 0x49, 0xb1, 0x75, 0x9c, + 0x59, 0xb2, 0xef, 0xe9, 0xc4, 0x54, 0x9d, 0x13, 0xa0, 0x25, 0x08, 0xad, 0x5d, 0x13, 0x13, 0xc5, + 0x39, 0x08, 0xc5, 0xc2, 0xbc, 0xe0, 0xe3, 0x3d, 0xd3, 0xed, 0x18, 0x78, 0xd7, 0xcb, 0xc0, 0x30, + 0xf7, 0x76, 0x46, 0xba, 0x9a, 0xd6, 0xe4, 0x49, 0x34, 0xad, 0xa9, 0x63, 0x35, 0xad, 0x3b, 0x30, + 0x54, 0xc1, 0x8c, 0x77, 0x1a, 0xb7, 0xfd, 0x8d, 0xd8, 0xb8, 0xe4, 0x53, 0x15, 0xf1, 0x82, 0xee, + 0x43, 0xe8, 0xe6, 0x31, 0xc5, 0xcc, 0xed, 0x25, 0xc7, 0x6b, 0x56, 0x61, 0xc1, 0x57, 0xc0, 0x2c, + 0xbe, 0x04, 0x23, 0x1d, 0x09, 0xe0, 0x64, 0xea, 0x43, 0xdc, 0x74, 0xb3, 0xda, 0x79, 0x44, 0x67, + 0xe0, 0x78, 0x43, 0xad, 0xd6, 0xbd, 0x84, 0x16, 0x2f, 0xcb, 0xbe, 0xab, 0x20, 0xbe, 0x02, 0xa3, + 0xbd, 0xbb, 0x3a, 0x0c, 0xfe, 0x46, 0x20, 0x34, 0x1e, 0x0d, 0xa6, 0x9e, 0x00, 0x38, 0xd1, 0x99, + 0x2d, 0xe8, 0x0e, 0x1c, 0x37, 0x18, 0xae, 0xd1, 0x98, 0x68, 0xcb, 0xd7, 0x8e, 0x91, 0x75, 0xb2, + 0x60, 0x42, 0x97, 0x60, 0x50, 0x5c, 0x24, 0x62, 0x3e, 0xce, 0x19, 0xeb, 0xe1, 0xcc, 0x39, 0x46, + 0x2e, 0xba, 0xeb, 0x97, 0x7a, 0x08, 0x27, 0xd7, 0x79, 0xf7, 0x1c, 0xfd, 0xc8, 0x32, 0x07, 0xa3, + 0x65, 0xd5, 0xa8, 0x2a, 0x46, 0xb9, 0xdd, 0x65, 0x79, 0x07, 0x08, 0xc9, 0x53, 0xce, 0xf8, 0x66, + 0xd9, 0xeb, 0x9e, 0xf3, 0xff, 0x07, 0xf0, 0x6c, 0xdf, 0xb3, 0x09, 0x8a, 0xc3, 0x99, 0x7c, 0xae, + 0xa8, 0xc8, 0x85, 0xdb, 0xca, 0xc6, 0xb6, 0x7c, 0x33, 0x5b, 0x54, 0xd6, 0x73, 0x1b, 0xd9, 0xbb, + 0x5b, 0xc5, 0xe8, 0x18, 0xfa, 0x0a, 0x9c, 0xed, 0xb1, 0x6d, 0x6c, 0xcb, 0xca, 0x9a, 0x9c, 0xcb, + 0x16, 0x73, 0x51, 0x80, 0x12, 0x30, 0xde, 0xc7, 0x2c, 0xe7, 0x6e, 0x6f, 0x65, 0xd7, 0x72, 0x51, + 0x1f, 0x9a, 0x85, 0x67, 0x7b, 0xec, 0x85, 0x62, 0xb6, 0x78, 0xb7, 0x10, 0xf5, 0xa3, 0x73, 0xf0, + 0x4b, 0x3d, 0x26, 0x39, 0x97, 0x5d, 0x8f, 0x06, 0xd0, 0x45, 0x98, 0x3c, 0x64, 0xd8, 0xc8, 0xc9, + 0xf2, 0xe6, 0xad, 0xbc, 0xb2, 0xbd, 0x7a, 0x23, 0xb7, 0x56, 0x2c, 0x44, 0xc7, 0xfb, 0x78, 0xad, + 0xca, 0xdb, 0xdf, 0xcd, 0xdd, 0x12, 0xce, 0xb9, 0x5b, 0x6b, 0xb9, 0x42, 0x34, 0xb8, 0xf0, 0xb7, + 0x09, 0xe8, 0xcf, 0xde, 0xde, 0x44, 0xcf, 0x7c, 0x30, 0x28, 0x4e, 0x48, 0x68, 0xe4, 0x43, 0x55, + 0x7c, 0x69, 0x04, 0x64, 0xfb, 0x68, 0xda, 0xfa, 0x7b, 0x6c, 0xa7, 0x81, 0x69, 0xda, 0xb0, 0xd2, + 0x1c, 0x47, 0x19, 0xa9, 0x6b, 0xac, 0x4e, 0x70, 0x7a, 0x97, 0x18, 0x0c, 0x7f, 0xa3, 0x7c, 0xf9, + 0x91, 0x96, 0x26, 0x56, 0x9d, 0x61, 0x3d, 0xad, 0xeb, 0x16, 0x4d, 0x97, 0x54, 0x6a, 0x68, 0xe9, + 0x3a, 0xc5, 0xe4, 0xb0, 0x8d, 0x32, 0xd5, 0xd4, 0x55, 0xa2, 0x73, 0xf3, 0xe3, 0x7f, 0xff, 0xf7, + 0x89, 0x6f, 0x33, 0xb5, 0xee, 0xde, 0xbf, 0x33, 0xed, 0x84, 0xa1, 0x99, 0x9f, 0x78, 0xfd, 0x46, + 0x6a, 0x0f, 0xee, 0x1d, 0x75, 0x33, 0xa5, 0xcb, 0x60, 0x1e, 0xfd, 0xd6, 0x07, 0xfd, 0x79, 0xcc, + 0xd0, 0xe5, 0x61, 0x0f, 0xbd, 0x42, 0xa5, 0xc5, 0xd1, 0xce, 0xca, 0xa9, 0x3f, 0x81, 0x17, 0x7f, + 0xf6, 0x39, 0x32, 0xdd, 0xef, 0x2f, 0x13, 0xc1, 0xaa, 0xfe, 0x21, 0x95, 0x6a, 0x96, 0x69, 0x30, + 0xeb, 0x28, 0xa1, 0x5c, 0x0f, 0xae, 0xd5, 0x3a, 0x5a, 0xed, 0xa7, 0xd5, 0x80, 0x12, 0x09, 0xc7, + 0x3d, 0xf4, 0xd4, 0x07, 0x03, 0x4e, 0x2b, 0x40, 0x8b, 0x43, 0xf7, 0x0e, 0x21, 0xd4, 0x95, 0x11, + 0x7b, 0x4e, 0xea, 0xf7, 0x5f, 0x98, 0x52, 0xdf, 0x46, 0xd7, 0x8e, 0xa1, 0x14, 0xfa, 0xab, 0x0f, + 0x9e, 0x72, 0xef, 0x0e, 0x68, 0xf4, 0xfb, 0x46, 0x7c, 0x79, 0x14, 0xa8, 0xab, 0xd5, 0x5f, 0x3e, + 0x75, 0xe1, 0xdd, 0x8b, 0x17, 0x4f, 0xa2, 0xf0, 0x7a, 0x10, 0x7b, 0x4e, 0x21, 0xfe, 0xdc, 0x07, + 0x83, 0xe2, 0xfb, 0x30, 0x54, 0xd3, 0xea, 0xfa, 0xa4, 0xc4, 0x67, 0x24, 0xf1, 0x47, 0x98, 0xe4, + 0xfd, 0x11, 0x26, 0xe5, 0x6a, 0x36, 0x6b, 0xa6, 0xfe, 0xf0, 0xa9, 0x85, 0xc9, 0xcf, 0x9f, 0x40, + 0x95, 0x2d, 0x83, 0xf9, 0xf8, 0x4f, 0x9f, 0xef, 0x03, 0xdf, 0xbf, 0xf6, 0xc1, 0xa5, 0xc1, 0x25, + 0x10, 0xc7, 0x90, 0xd7, 0xfb, 0x00, 0xb4, 0xf6, 0xc1, 0xe2, 0x68, 0x87, 0x98, 0xc7, 0xff, 0x74, + 0x3e, 0xb4, 0xab, 0xbf, 0x01, 0x2f, 0x57, 0xc6, 0xd7, 0xe4, 0xbb, 0xeb, 0x5b, 0xaf, 0xde, 0x24, + 0xc6, 0x5e, 0xbf, 0x49, 0x8c, 0xbd, 0x7b, 0x93, 0x00, 0x3f, 0x6b, 0x25, 0xc0, 0x1f, 0x5b, 0x09, + 0xf0, 0xa2, 0x95, 0x00, 0xaf, 0x5a, 0x09, 0xf0, 0x9f, 0x56, 0x02, 0xbc, 0x6d, 0x25, 0xc6, 0xde, + 0xb5, 0x12, 0xe0, 0x97, 0x07, 0x89, 0xb1, 0xe7, 0x07, 0x09, 0xf0, 0xea, 0x20, 0x31, 0xf6, 0xfa, + 0x20, 0x31, 0xf6, 0x7d, 0xa5, 0x62, 0xd9, 0x0f, 0x2b, 0x52, 0xc3, 0x72, 0x2e, 0x17, 0x44, 0x95, + 0xea, 0x34, 0xc3, 0x1f, 0x9c, 0xdb, 0x78, 0xda, 0x26, 0x56, 0xc3, 0xd0, 0x31, 0x49, 0x7b, 0xe6, + 0x8c, 0x5d, 0xaa, 0x58, 0x19, 0xfc, 0x88, 0xb9, 0xff, 0xda, 0x7d, 0xfc, 0xff, 0xc4, 0x52, 0x90, + 0xef, 0xed, 0x37, 0x3f, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x84, 0x07, 0xb9, 0x50, 0xac, 0x15, 0x00, + 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.vesapi.go b/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.vesapi.go index 146eae7c1..78283a5cd 100644 --- a/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_deny_list_rule/public_crudapi.vesapi.go @@ -2857,10 +2857,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2917,10 +2921,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3023,10 +3031,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_firewall_rule/crudapi/api.vesapi.go b/pbgo/extschema/schema/infraprotect_firewall_rule/crudapi/api.vesapi.go index c46d317fa..80dd51cc1 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_rule/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_firewall_rule/crudapi/api.vesapi.go @@ -3449,10 +3449,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_firewall_rule/object.pb.go b/pbgo/extschema/schema/infraprotect_firewall_rule/object.pb.go index 07b1e6d2d..90f90c7ef 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_rule/object.pb.go +++ b/pbgo/extschema/schema/infraprotect_firewall_rule/object.pb.go @@ -236,46 +236,47 @@ func init() { } var fileDescriptor_f6eb24da55d2fe7f = []byte{ - // 614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x77, 0x76, 0x71, 0x21, 0x03, 0x41, 0xd3, 0xd3, 0x0a, 0x32, 0x21, 0xeb, 0x85, 0x03, - 0x6d, 0xe3, 0x22, 0x09, 0x12, 0x83, 0x11, 0x8c, 0x5c, 0x20, 0xc6, 0xc5, 0x93, 0x51, 0x37, 0xd3, - 0xe9, 0x6b, 0x19, 0xed, 0xee, 0x34, 0x33, 0xd3, 0x02, 0x07, 0x13, 0xc3, 0x27, 0xf0, 0x03, 0xf8, - 0x01, 0x8c, 0x9f, 0x42, 0x8c, 0x07, 0x8f, 0x84, 0x78, 0xe0, 0x28, 0xdd, 0x0b, 0x47, 0xe2, 0x27, - 0x30, 0x3b, 0xa5, 0x84, 0x25, 0x4b, 0xdc, 0x84, 0xdb, 0x6b, 0xde, 0xff, 0xff, 0xcb, 0xeb, 0x7b, - 0x6f, 0x1e, 0x5e, 0x4c, 0x41, 0x39, 0x5c, 0xb8, 0x8a, 0x6d, 0x43, 0x9b, 0xba, 0xbc, 0x13, 0x48, - 0x1a, 0x4b, 0xa1, 0x81, 0xe9, 0x56, 0xc0, 0x25, 0xec, 0xd0, 0x28, 0x6a, 0xc9, 0x24, 0x02, 0x57, - 0x78, 0xef, 0x81, 0x69, 0xa7, 0x97, 0x14, 0xd6, 0x5c, 0x6e, 0x73, 0x72, 0x9b, 0x73, 0xbd, 0x6d, - 0xca, 0x0e, 0xb9, 0xde, 0x4e, 0x3c, 0x87, 0x89, 0xb6, 0x1b, 0x8a, 0x50, 0xb8, 0x06, 0xe0, 0x25, - 0x81, 0xf9, 0x32, 0x1f, 0x26, 0xca, 0xc1, 0x53, 0x0f, 0x87, 0xae, 0x47, 0xef, 0xc5, 0xa0, 0xce, - 0x5d, 0xd3, 0xfd, 0x2e, 0x11, 0x6b, 0x2e, 0x3a, 0x45, 0xf2, 0x6e, 0x7f, 0xf2, 0xb2, 0xaf, 0xde, - 0x9f, 0x4a, 0x41, 0x41, 0x27, 0xed, 0xb7, 0xd7, 0x7f, 0x8e, 0xe0, 0xea, 0x0b, 0xf3, 0xef, 0xd6, - 0x23, 0x3c, 0xd6, 0x06, 0x4d, 0x7d, 0xaa, 0x69, 0x0d, 0xcd, 0xa2, 0xb9, 0xf1, 0xc6, 0x8c, 0xd3, - 0xdf, 0x88, 0x5c, 0xb8, 0x09, 0x9a, 0xbe, 0xda, 0x8b, 0xa1, 0x79, 0x21, 0xb7, 0x36, 0xf0, 0x6d, - 0xb5, 0xa7, 0x34, 0xb4, 0x5b, 0x17, 0x84, 0xb2, 0x21, 0xdc, 0xbf, 0x42, 0xd8, 0x32, 0xaa, 0x2b, - 0x9c, 0xc9, 0xdc, 0xbb, 0x59, 0xd0, 0x9e, 0xe3, 0x11, 0x15, 0x03, 0xab, 0x55, 0x0c, 0xa2, 0xe1, - 0x0c, 0x3b, 0x0d, 0x67, 0x2b, 0x06, 0x66, 0x88, 0xc6, 0xbf, 0x7c, 0x5a, 0xde, 0x7f, 0x52, 0xcd, - 0xd9, 0x3f, 0x0e, 0x7a, 0x05, 0x1d, 0x1d, 0xd4, 0x7e, 0x97, 0xf1, 0x53, 0x5c, 0x59, 0x07, 0x6d, - 0x2d, 0xa7, 0xa0, 0x6c, 0x2e, 0x6c, 0xc3, 0x53, 0x5a, 0x26, 0x4c, 0x27, 0x12, 0x6c, 0x09, 0xd4, - 0x9f, 0x9f, 0x0d, 0x16, 0x77, 0x99, 0x2d, 0x45, 0xa2, 0xc1, 0xb7, 0x7d, 0x5f, 0x28, 0xdb, 0xa3, - 0x8a, 0x33, 0xbb, 0x2d, 0x3a, 0x5c, 0x0b, 0x89, 0xd7, 0xf0, 0x68, 0x13, 0xe2, 0x88, 0x32, 0xb0, - 0x96, 0x06, 0x63, 0x76, 0x24, 0xd7, 0x70, 0x2d, 0x27, 0x51, 0x20, 0xf1, 0x2a, 0xae, 0xae, 0x49, - 0xa0, 0xfa, 0x86, 0x8c, 0x67, 0x10, 0xc1, 0x0d, 0x19, 0x23, 0x1b, 0x5c, 0xdd, 0xa8, 0x21, 0xf5, - 0xb7, 0x78, 0xac, 0x68, 0xbe, 0xf5, 0x12, 0x8f, 0x86, 0xac, 0x65, 0x26, 0x98, 0xaf, 0xd1, 0xd2, - 0xf0, 0x13, 0x5c, 0x8f, 0x84, 0x47, 0xa3, 0x8b, 0x39, 0x56, 0x43, 0xd6, 0x8b, 0xeb, 0xfb, 0x65, - 0x3c, 0xb1, 0xa5, 0xa9, 0x4e, 0xd4, 0xd0, 0xbb, 0x9a, 0xcb, 0x07, 0xec, 0xea, 0x1b, 0x3c, 0x9e, - 0x3f, 0xf6, 0x96, 0x84, 0x40, 0xd5, 0xca, 0xb3, 0x95, 0xb9, 0xf1, 0xc6, 0xbd, 0x81, 0x9b, 0xde, - 0x84, 0xa0, 0x67, 0x5e, 0x9d, 0xf9, 0xf6, 0x71, 0xea, 0xfa, 0xa2, 0x9b, 0x58, 0x14, 0x6a, 0x65, - 0x3d, 0xc6, 0x98, 0x89, 0x8e, 0xcf, 0xcd, 0x1b, 0xab, 0x55, 0x06, 0xc2, 0xd7, 0x0a, 0x81, 0xa9, - 0xec, 0x92, 0x7e, 0x79, 0xfa, 0x68, 0xe5, 0x0e, 0x9e, 0xc4, 0x13, 0x45, 0xb1, 0x4e, 0xc2, 0xfd, - 0xbf, 0x2b, 0xb7, 0x1e, 0xcc, 0x37, 0xe6, 0x17, 0x56, 0xbf, 0xa0, 0xc3, 0x13, 0x52, 0x3a, 0x3e, - 0x21, 0xa5, 0xb3, 0x13, 0x82, 0x3e, 0x65, 0x04, 0x7d, 0xcd, 0x08, 0xfa, 0x95, 0x11, 0x74, 0x98, - 0x11, 0x74, 0x9c, 0x11, 0xf4, 0x27, 0x23, 0xe8, 0x34, 0x23, 0xa5, 0xb3, 0x8c, 0xa0, 0xcf, 0x5d, - 0x52, 0xfa, 0xde, 0x25, 0xe8, 0xb0, 0x4b, 0x4a, 0xc7, 0x5d, 0x52, 0x7a, 0xfd, 0x2e, 0x14, 0xf1, - 0x87, 0xd0, 0x49, 0x45, 0xa4, 0x41, 0x4a, 0xea, 0x24, 0xca, 0x35, 0x41, 0x20, 0x64, 0xdb, 0x8e, - 0xa5, 0x48, 0xb9, 0x0f, 0xd2, 0x2e, 0xd2, 0x6e, 0xec, 0x85, 0xc2, 0x85, 0x5d, 0x7d, 0x7e, 0x3c, - 0xfe, 0x7b, 0xb1, 0xbc, 0xaa, 0x39, 0x28, 0x0b, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x46, 0x55, - 0x88, 0xcc, 0x74, 0x05, 0x00, 0x00, + // 631 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0x13, 0x41, + 0x14, 0xc7, 0x3b, 0x14, 0x0a, 0x19, 0x08, 0x9a, 0x3d, 0x55, 0x90, 0x09, 0xa9, 0x17, 0x0e, 0xec, + 0x6e, 0x2c, 0x92, 0x28, 0x31, 0x98, 0x80, 0x91, 0x0b, 0xc4, 0x58, 0x3c, 0x18, 0x23, 0x36, 0xb3, + 0xb3, 0x6f, 0x97, 0xd1, 0x6d, 0x67, 0x33, 0x33, 0xbb, 0xc0, 0xc1, 0xc4, 0xf0, 0x01, 0x8c, 0x1f, + 0xc0, 0x0f, 0x60, 0xfc, 0x14, 0xe2, 0xc9, 0x23, 0xe1, 0xc4, 0x51, 0xb6, 0x17, 0xe3, 0x89, 0x78, + 0xf4, 0x64, 0x3a, 0xcb, 0x12, 0x4a, 0x8a, 0xf6, 0xc2, 0x6d, 0x36, 0xff, 0xff, 0xff, 0xf7, 0x5e, + 0x3b, 0x6f, 0x1e, 0x5e, 0x4c, 0x41, 0x39, 0x5c, 0xb8, 0x8a, 0x6d, 0x43, 0x8b, 0xba, 0xbc, 0x1d, + 0x48, 0x1a, 0x4b, 0xa1, 0x81, 0xe9, 0x66, 0xc0, 0x25, 0xec, 0xd0, 0x28, 0x6a, 0xca, 0x24, 0x02, + 0x57, 0x78, 0x6f, 0x80, 0x69, 0xa7, 0x2b, 0x0a, 0x6b, 0x2e, 0x8f, 0x39, 0x79, 0xcc, 0xb9, 0x3a, + 0x36, 0x65, 0x87, 0x5c, 0x6f, 0x27, 0x9e, 0xc3, 0x44, 0xcb, 0x0d, 0x45, 0x28, 0x5c, 0x03, 0xf0, + 0x92, 0xc0, 0x7c, 0x99, 0x0f, 0x73, 0xca, 0xc1, 0x53, 0xf7, 0x06, 0xee, 0x47, 0xef, 0xc5, 0xa0, + 0xce, 0x52, 0xd3, 0xbd, 0x29, 0x11, 0x6b, 0x2e, 0xda, 0x85, 0x78, 0xab, 0x57, 0xbc, 0x98, 0xab, + 0xf5, 0x4a, 0x29, 0x28, 0x68, 0xa7, 0xbd, 0xf1, 0xda, 0xaf, 0x11, 0x5c, 0x79, 0x6a, 0x7e, 0xbb, + 0xf5, 0x00, 0x8f, 0xb5, 0x40, 0x53, 0x9f, 0x6a, 0x5a, 0x45, 0xb3, 0x68, 0x6e, 0xbc, 0x3e, 0xe3, + 0xf4, 0xfe, 0x11, 0xb9, 0x71, 0x03, 0x34, 0x7d, 0xbe, 0x17, 0x43, 0xe3, 0xdc, 0x6e, 0xad, 0xe3, + 0x1b, 0x6a, 0x4f, 0x69, 0x68, 0x35, 0xcf, 0x09, 0x43, 0x86, 0x70, 0xe7, 0x12, 0x61, 0xd3, 0xb8, + 0x2e, 0x71, 0x26, 0xf3, 0xec, 0x46, 0x41, 0x7b, 0x82, 0x87, 0x55, 0x0c, 0xac, 0x5a, 0x36, 0x88, + 0xba, 0x33, 0xe8, 0x6d, 0x38, 0x9b, 0x31, 0x30, 0x43, 0x34, 0xf9, 0xa5, 0x0f, 0xc3, 0xfb, 0x8f, + 0x2a, 0x39, 0xfb, 0xdb, 0x41, 0xb7, 0xa1, 0xa3, 0x83, 0xea, 0x9f, 0x32, 0xf6, 0x71, 0x79, 0x0d, + 0xb4, 0xb5, 0x95, 0x82, 0xb2, 0xb9, 0xb0, 0x0d, 0x4f, 0x69, 0x99, 0x30, 0x9d, 0x48, 0xb0, 0x25, + 0x50, 0x7f, 0x7e, 0x36, 0x58, 0xdc, 0x65, 0xb6, 0x14, 0x89, 0x06, 0xdf, 0xf6, 0x7d, 0xa1, 0x6c, + 0x8f, 0x2a, 0xce, 0xec, 0x96, 0x68, 0x73, 0x2d, 0x64, 0x1f, 0x5d, 0x69, 0xda, 0xf6, 0xa9, 0xf4, + 0x0b, 0x0b, 0x66, 0x78, 0xb4, 0x01, 0x71, 0x44, 0x19, 0x58, 0x2f, 0xfa, 0x57, 0xda, 0x91, 0x5c, + 0xc3, 0x95, 0xa5, 0x12, 0x05, 0xff, 0xac, 0xd3, 0xd5, 0xb1, 0x87, 0x2b, 0xab, 0x12, 0xa8, 0xbe, + 0xe6, 0x1a, 0x8f, 0x21, 0x82, 0x6b, 0xad, 0x01, 0x78, 0x78, 0x9d, 0xab, 0xeb, 0xbe, 0x93, 0xda, + 0x16, 0x1e, 0x2b, 0x46, 0xc4, 0x7a, 0x86, 0x47, 0x43, 0xd6, 0x34, 0x73, 0x96, 0x0f, 0xfb, 0xfd, + 0xc1, 0xe7, 0x6c, 0x2d, 0x12, 0x1e, 0x8d, 0xce, 0xa7, 0xad, 0x12, 0xb2, 0xee, 0xb9, 0xb6, 0x3f, + 0x84, 0x27, 0x36, 0x35, 0xd5, 0x89, 0x1a, 0xf8, 0x45, 0xe5, 0xf6, 0x3e, 0x2f, 0xea, 0x15, 0x1e, + 0xcf, 0x57, 0x52, 0x53, 0x42, 0xa0, 0xaa, 0x43, 0xb3, 0xe5, 0xb9, 0xf1, 0xfa, 0xed, 0xbe, 0xef, + 0xb1, 0x01, 0x41, 0x37, 0xbc, 0x32, 0xf3, 0xe5, 0xdd, 0xd4, 0xd5, 0x4d, 0x37, 0xb0, 0x28, 0xdc, + 0xca, 0x7a, 0x88, 0x31, 0x13, 0x6d, 0x9f, 0x9b, 0x4d, 0x50, 0x2d, 0xf7, 0x85, 0xaf, 0x16, 0x06, + 0xd3, 0xd9, 0x05, 0xff, 0xd2, 0xf4, 0xd1, 0xf2, 0x4d, 0x3c, 0x89, 0x27, 0x8a, 0x66, 0x9d, 0x84, + 0xfb, 0xbf, 0x97, 0x47, 0xee, 0xce, 0xd7, 0xe7, 0x17, 0x56, 0x3e, 0xa1, 0xc3, 0x13, 0x52, 0x3a, + 0x3e, 0x21, 0xa5, 0xd3, 0x13, 0x82, 0xde, 0x67, 0x04, 0x7d, 0xce, 0x08, 0xfa, 0x9e, 0x11, 0x74, + 0x98, 0x11, 0x74, 0x9c, 0x11, 0xf4, 0x23, 0x23, 0xe8, 0x67, 0x46, 0x4a, 0xa7, 0x19, 0x41, 0x1f, + 0x3b, 0xa4, 0xf4, 0xb5, 0x43, 0xd0, 0x61, 0x87, 0x94, 0x8e, 0x3b, 0xa4, 0xf4, 0xf2, 0x75, 0x28, + 0xe2, 0xb7, 0xa1, 0x93, 0x8a, 0x48, 0x83, 0x94, 0xd4, 0x49, 0x94, 0x6b, 0x0e, 0x81, 0x90, 0x2d, + 0x3b, 0x96, 0x22, 0xe5, 0x3e, 0x48, 0xbb, 0x90, 0xdd, 0xd8, 0x0b, 0x85, 0x0b, 0xbb, 0xfa, 0x6c, + 0xc5, 0xfd, 0x77, 0xaf, 0x7a, 0x15, 0xb3, 0xf6, 0x16, 0xfe, 0x06, 0x00, 0x00, 0xff, 0xff, 0xd1, + 0xec, 0x5f, 0x6a, 0x1a, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.pb.go b/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.pb.go index 17a16187d..405e45bb6 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.pb.go +++ b/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.pb.go @@ -1056,109 +1056,111 @@ func init() { } var fileDescriptor_013a3b31830526f4 = []byte{ - // 1632 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x13, 0xcd, - 0x19, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x30, 0x53, 0x08, 0x8e, 0x4b, 0x2d, 0xd7, 0xa0, 0x2a, - 0x8a, 0xea, 0x35, 0x4a, 0x09, 0x90, 0x88, 0x42, 0x1d, 0xc7, 0x4e, 0x03, 0x81, 0x44, 0x6b, 0x07, - 0x21, 0xaa, 0xb2, 0x5a, 0xaf, 0x1f, 0x9b, 0x2d, 0xb6, 0x77, 0x3b, 0x3b, 0x76, 0x48, 0xab, 0x48, - 0x15, 0x95, 0x8a, 0xda, 0x43, 0x55, 0xb5, 0xa7, 0xa2, 0x1e, 0xb8, 0x54, 0xe2, 0x4f, 0xa8, 0x9a, - 0x0b, 0x97, 0xaa, 0x88, 0x43, 0x85, 0xda, 0x0b, 0xc7, 0xe2, 0xf4, 0xc0, 0xa9, 0x42, 0xaf, 0xde, - 0xdb, 0x7b, 0x78, 0x5f, 0xed, 0xcc, 0xae, 0xb1, 0x1d, 0x03, 0xb6, 0x93, 0x93, 0x77, 0xe6, 0x79, - 0x7e, 0xbf, 0x99, 0xe7, 0xd3, 0xcf, 0x2e, 0xfe, 0x61, 0x13, 0x2c, 0x49, 0x37, 0x52, 0x96, 0xf6, - 0x00, 0x6a, 0x6a, 0x4a, 0xaf, 0x97, 0xa9, 0x6a, 0x52, 0x83, 0x81, 0xc6, 0x94, 0xb2, 0x4e, 0x61, - 0x47, 0xad, 0x56, 0x15, 0xda, 0xa8, 0x42, 0xca, 0x6c, 0x14, 0xab, 0xba, 0xa6, 0x68, 0xb4, 0x51, - 0x52, 0x4d, 0x5d, 0xb2, 0x95, 0x0c, 0x32, 0x27, 0xe0, 0x92, 0x80, 0x4b, 0x1f, 0x87, 0x47, 0x93, - 0x15, 0x9d, 0x3d, 0x68, 0x14, 0x25, 0xcd, 0xa8, 0xa5, 0x2a, 0x46, 0xc5, 0x48, 0x71, 0x82, 0x62, - 0xa3, 0xcc, 0x57, 0x7c, 0xc1, 0x9f, 0x04, 0x71, 0xf4, 0x6c, 0xc5, 0x30, 0x2a, 0x55, 0x48, 0xa9, - 0xa6, 0x9e, 0x52, 0xeb, 0x75, 0x83, 0xa9, 0x4c, 0x37, 0xea, 0x96, 0x23, 0xfd, 0xb6, 0x23, 0x6d, - 0x73, 0x40, 0xcd, 0x64, 0xbb, 0x8e, 0x30, 0xda, 0x6d, 0x12, 0x50, 0x6a, 0x50, 0x17, 0xb8, 0x38, - 0xb0, 0xb9, 0x46, 0xf1, 0x67, 0xa0, 0x31, 0x07, 0x76, 0x71, 0x60, 0x18, 0xdb, 0x35, 0xa1, 0x7d, - 0xcb, 0x6e, 0x94, 0x61, 0x76, 0x9a, 0x30, 0xdb, 0x2d, 0xec, 0xc4, 0x25, 0xba, 0x45, 0x4d, 0xb0, - 0xa0, 0xde, 0xec, 0x81, 0xc7, 0x7b, 0x74, 0x74, 0xd8, 0x51, 0xba, 0x34, 0x12, 0x7f, 0x47, 0x78, - 0x32, 0x43, 0x41, 0x65, 0x20, 0xc3, 0xcf, 0x1b, 0x60, 0x31, 0x72, 0x1d, 0x07, 0x6a, 0xc0, 0xd4, - 0x92, 0xca, 0xd4, 0x08, 0x8a, 0xa3, 0xb9, 0xd0, 0xc2, 0x39, 0xa9, 0x3b, 0x7e, 0x9b, 0xdc, 0x68, - 0x81, 0xba, 0x05, 0x4c, 0x2d, 0xec, 0x9a, 0x20, 0xb7, 0x41, 0xe4, 0xa7, 0xd8, 0x67, 0x99, 0xa0, - 0x45, 0x3c, 0x1c, 0x7c, 0x45, 0x1a, 0x34, 0xf8, 0x92, 0x60, 0xcc, 0x9b, 0xa0, 0xd9, 0x8c, 0x2b, - 0xd3, 0x4f, 0xf7, 0x26, 0x6c, 0x22, 0xa9, 0xa2, 0x29, 0xf6, 0xaf, 0xcc, 0x69, 0x97, 0x83, 0xaf, - 0xae, 0xf9, 0xc5, 0x0d, 0x12, 0xbf, 0xf1, 0xe0, 0x29, 0xf7, 0xf2, 0x96, 0x69, 0xd4, 0x2d, 0x20, - 0x57, 0x0f, 0xdd, 0x3e, 0xde, 0xf7, 0xf6, 0x6b, 0xc0, 0xfa, 0x5c, 0x7d, 0x13, 0x4f, 0x5b, 0xbb, - 0x16, 0x83, 0x9a, 0xd2, 0x26, 0xf1, 0x72, 0x92, 0xef, 0xf5, 0x90, 0xe4, 0xb9, 0xd6, 0x61, 0xaa, - 0x29, 0x01, 0xbf, 0xe5, 0x12, 0xde, 0xeb, 0xf2, 0xc5, 0xe2, 0xe0, 0xbe, 0x58, 0x03, 0x36, 0x84, - 0x23, 0xfe, 0x8f, 0xf0, 0x94, 0x0c, 0x66, 0x55, 0xd5, 0xda, 0x61, 0xfc, 0xd1, 0x21, 0x47, 0x9c, - 0xef, 0xeb, 0x08, 0x07, 0xd6, 0xc7, 0x19, 0xf7, 0xbb, 0xee, 0xbe, 0x34, 0xf8, 0xdd, 0x1d, 0xca, - 0xcf, 0xdc, 0x9f, 0xa4, 0x70, 0x98, 0x82, 0x65, 0x34, 0xa8, 0x06, 0x4a, 0x13, 0xa8, 0xa5, 0x1b, - 0x75, 0xee, 0xed, 0xe0, 0x8a, 0xef, 0xdd, 0x3e, 0x42, 0xf2, 0xb4, 0x2b, 0xbd, 0x23, 0x84, 0x9d, - 0x06, 0x9f, 0xc4, 0xd3, 0x6d, 0x7b, 0x45, 0xe4, 0x13, 0xcf, 0x11, 0xc6, 0x6b, 0xc0, 0x5c, 0xfb, - 0xcf, 0xe2, 0x60, 0x5d, 0xad, 0x81, 0x65, 0xaa, 0x1a, 0x70, 0x07, 0x04, 0xe5, 0x0f, 0x1b, 0x84, - 0x60, 0x9f, 0xbd, 0xe0, 0xb6, 0x05, 0x65, 0xfe, 0x4c, 0x1e, 0x60, 0xfb, 0x44, 0x4e, 0xa6, 0x94, - 0x0d, 0x5a, 0x53, 0x19, 0xbf, 0xce, 0xd4, 0xc2, 0xf5, 0xa1, 0xc2, 0xe6, 0x5e, 0x28, 0xc7, 0x29, - 0x32, 0x46, 0x09, 0xe4, 0x29, 0xda, 0xb5, 0x97, 0xf8, 0x87, 0x1f, 0x87, 0x3a, 0x34, 0xc9, 0x5d, - 0x1c, 0xd2, 0x78, 0x1a, 0xf3, 0x73, 0x1d, 0x87, 0x5f, 0x1e, 0xb6, 0x70, 0x1c, 0xcb, 0x65, 0x2c, - 0xb8, 0xec, 0xb3, 0xc8, 0x4f, 0xf0, 0x04, 0x15, 0x7e, 0x12, 0xd4, 0xde, 0x61, 0x6b, 0xb2, 0x3b, - 0xab, 0xe4, 0x90, 0xc3, 0xc6, 0xc9, 0xfb, 0x05, 0xd0, 0xf7, 0x89, 0x00, 0x76, 0x15, 0xe7, 0xf8, - 0x71, 0x14, 0xe7, 0x89, 0x63, 0x29, 0x4e, 0xff, 0xf1, 0x17, 0x27, 0xd9, 0xc6, 0x7e, 0x8b, 0xa9, - 0xac, 0x61, 0x45, 0x9e, 0xfd, 0x05, 0xc5, 0xbd, 0x73, 0xa1, 0x85, 0x4b, 0x83, 0xf3, 0xe7, 0x39, - 0x52, 0x18, 0xb0, 0xe2, 0x7d, 0xb1, 0x87, 0x64, 0x87, 0x8c, 0xac, 0xe3, 0x93, 0x14, 0xca, 0x40, - 0xa9, 0x5e, 0xaf, 0x28, 0xe2, 0xcf, 0xc7, 0x8a, 0x04, 0x38, 0xff, 0xd9, 0x8f, 0x94, 0x77, 0x99, - 0xdb, 0x1e, 0x6e, 0xc3, 0xc4, 0xbe, 0x45, 0xee, 0xe0, 0x48, 0x09, 0xaa, 0xc0, 0xa0, 0xa4, 0x08, - 0x19, 0x94, 0xda, 0x8c, 0xc1, 0x01, 0x18, 0x67, 0x1c, 0xb4, 0xec, 0x80, 0x5d, 0xde, 0xbb, 0x78, - 0xb6, 0xa4, 0x5b, 0x6a, 0xb1, 0xda, 0x8f, 0x18, 0x0f, 0x40, 0x7c, 0xc6, 0x85, 0xf7, 0x30, 0x77, - 0xd4, 0xff, 0x0d, 0x5f, 0x00, 0x85, 0x3d, 0x89, 0xbf, 0x22, 0x1c, 0xda, 0xd0, 0xad, 0x01, 0x6b, - 0xfe, 0xbb, 0x78, 0xa2, 0xaa, 0x16, 0xa1, 0xaa, 0x94, 0xf5, 0x2a, 0x03, 0xea, 0xd4, 0x7e, 0x88, - 0xef, 0xe5, 0xf8, 0x16, 0x39, 0x87, 0x27, 0x29, 0x98, 0x06, 0xb5, 0x03, 0x02, 0xd5, 0x92, 0x15, - 0xf1, 0xc6, 0xbd, 0x73, 0x41, 0x79, 0x42, 0x6c, 0xe6, 0xf8, 0x1e, 0xb9, 0x80, 0x4f, 0x39, 0x4a, - 0x22, 0x28, 0xae, 0xae, 0x8f, 0xeb, 0x12, 0x21, 0x13, 0x21, 0x14, 0x88, 0xc4, 0x97, 0x7e, 0x1c, - 0x16, 0xf7, 0x14, 0x05, 0xbf, 0xce, 0xa0, 0x46, 0x66, 0xb0, 0x9f, 0x41, 0x5d, 0xad, 0x33, 0x9e, - 0x7f, 0x41, 0xd9, 0x59, 0x8d, 0xd0, 0xb8, 0xc2, 0xd8, 0xdb, 0xd0, 0x4b, 0xa2, 0x77, 0xca, 0xf6, - 0x23, 0x89, 0xe3, 0x50, 0x09, 0x2c, 0x8d, 0xea, 0xfc, 0xbf, 0x3e, 0x12, 0x12, 0x96, 0x76, 0x6c, - 0x91, 0x28, 0x0e, 0xb8, 0x6e, 0x8e, 0x4c, 0xc4, 0xd1, 0x5c, 0x40, 0x6e, 0xaf, 0xc9, 0x7d, 0xec, - 0xe7, 0x4e, 0x11, 0x26, 0x85, 0x16, 0x72, 0x83, 0x67, 0x6e, 0xaf, 0x95, 0xd2, 0x06, 0x27, 0xca, - 0xd6, 0x19, 0xdd, 0x95, 0x1d, 0x56, 0x52, 0xc3, 0xa1, 0x8e, 0x61, 0xcd, 0xc9, 0x89, 0x9b, 0x47, - 0x38, 0x24, 0xfd, 0x81, 0x4d, 0x9c, 0xd4, 0xc9, 0x4f, 0x96, 0x30, 0x36, 0x76, 0xea, 0x40, 0x15, - 0x7b, 0xfc, 0x89, 0x04, 0x79, 0xb1, 0x47, 0x7b, 0x4e, 0xbb, 0xa3, 0xc3, 0x8e, 0x9b, 0x7f, 0x41, - 0xae, 0x6d, 0xef, 0x74, 0x35, 0xac, 0xc9, 0xe3, 0x68, 0x58, 0x53, 0x47, 0x6a, 0x58, 0x5b, 0x38, - 0x50, 0x01, 0xc6, 0xdb, 0x8c, 0xd3, 0xfa, 0x46, 0x6b, 0x5a, 0xf2, 0x89, 0x8a, 0x58, 0x90, 0x7b, - 0x18, 0x3b, 0x49, 0x6c, 0x01, 0x73, 0x1a, 0xc9, 0x91, 0x1a, 0x55, 0x50, 0xd0, 0xe5, 0x81, 0x45, - 0x97, 0x70, 0xa8, 0x23, 0xfa, 0x76, 0x96, 0x3e, 0x84, 0x5d, 0x27, 0xa3, 0xed, 0x47, 0x72, 0x0a, - 0x8f, 0x37, 0xd5, 0x6a, 0xc3, 0x4d, 0x66, 0xb1, 0x58, 0xf6, 0x5c, 0x41, 0xd1, 0x6b, 0x38, 0xdc, - 0x1b, 0xd3, 0x61, 0xf0, 0x37, 0x7c, 0x81, 0xf1, 0xb0, 0x3f, 0xf1, 0x47, 0x84, 0x27, 0x3a, 0x73, - 0x85, 0x6c, 0xe1, 0x71, 0x9d, 0x41, 0xcd, 0x8a, 0x88, 0x8e, 0xbc, 0x3c, 0x7a, 0xca, 0xc9, 0x82, - 0x88, 0x5c, 0xc0, 0x7e, 0xf1, 0xe6, 0x10, 0xf1, 0x70, 0xca, 0x48, 0x0f, 0x65, 0xd6, 0x16, 0x72, - 0x97, 0x3b, 0x7a, 0x89, 0x87, 0x78, 0x72, 0x95, 0x37, 0xce, 0xd1, 0x07, 0x95, 0x39, 0x1c, 0x2e, - 0xab, 0x7a, 0x55, 0xd1, 0xcb, 0xed, 0x06, 0xcb, 0x8b, 0x3f, 0x20, 0x4f, 0xd9, 0xfb, 0xeb, 0x65, - 0xb7, 0x71, 0xce, 0x7f, 0x81, 0xf0, 0xe9, 0xbe, 0x23, 0x09, 0x89, 0xe2, 0x99, 0xb5, 0x6c, 0x41, - 0x91, 0xf3, 0x5b, 0x4a, 0x6e, 0x53, 0xbe, 0x95, 0x2e, 0x28, 0xab, 0xd9, 0x5c, 0x7a, 0x7b, 0xa3, - 0x10, 0x1e, 0x23, 0xdf, 0xc1, 0xb3, 0x3d, 0xb2, 0xdc, 0xa6, 0xac, 0x64, 0xe4, 0x6c, 0xba, 0x90, - 0x0d, 0x23, 0x12, 0xc3, 0xd1, 0x3e, 0x62, 0x39, 0xbb, 0xb5, 0x91, 0xce, 0x64, 0xc3, 0x1e, 0x32, - 0x8b, 0x4f, 0xf7, 0xc8, 0xf3, 0x85, 0x74, 0x61, 0x3b, 0x1f, 0xf6, 0x92, 0x33, 0xf8, 0x5b, 0x3d, - 0x22, 0x39, 0x9b, 0x5e, 0x0d, 0xfb, 0xc8, 0x79, 0x1c, 0x3f, 0x24, 0xc8, 0x65, 0x65, 0x79, 0xfd, - 0xf6, 0x9a, 0xb2, 0xb9, 0x72, 0x23, 0x9b, 0x29, 0xe4, 0xc3, 0xe3, 0x7d, 0xb4, 0x56, 0xe4, 0xcd, - 0x9b, 0xd9, 0xdb, 0x42, 0x39, 0x7b, 0x3b, 0x93, 0xcd, 0x87, 0xfd, 0x0b, 0xbf, 0x0f, 0x61, 0x6f, - 0x7a, 0x6b, 0x9d, 0x3c, 0xf1, 0x60, 0xbf, 0x98, 0x8c, 0xc8, 0xa8, 0xb3, 0x54, 0xf4, 0xca, 0xf0, - 0x40, 0x67, 0x1c, 0xfd, 0x2d, 0x6a, 0xfd, 0x33, 0x72, 0xb9, 0x09, 0x56, 0x52, 0x37, 0x92, 0x1c, - 0x66, 0x31, 0xda, 0xd0, 0x58, 0x83, 0x42, 0x72, 0x87, 0xea, 0x0c, 0xbe, 0x5f, 0x5e, 0x7c, 0xa4, - 0x25, 0xa9, 0xd1, 0x60, 0x50, 0x4a, 0x96, 0x4a, 0x86, 0x95, 0x2c, 0xaa, 0x96, 0xae, 0x25, 0x1b, - 0x16, 0xd0, 0xc7, 0xff, 0xf9, 0xdf, 0x9f, 0x3c, 0x3f, 0x4e, 0x64, 0x9c, 0xd7, 0xe9, 0x54, 0x3b, - 0x1f, 0xac, 0xd4, 0x2f, 0xdd, 0x5e, 0x22, 0xb5, 0x37, 0xf7, 0x3e, 0xf1, 0xaa, 0x69, 0x2d, 0xa3, - 0x79, 0xf2, 0x35, 0xc2, 0xde, 0x35, 0x60, 0xe4, 0xe2, 0x90, 0x83, 0xac, 0xf0, 0xc1, 0xe2, 0x48, - 0xe3, 0x6f, 0xe2, 0x77, 0xe8, 0xe5, 0xdf, 0x3c, 0xb6, 0x13, 0x96, 0xfa, 0x3b, 0x81, 0x82, 0x5a, - 0xfa, 0x98, 0x0f, 0x6a, 0x46, 0x5d, 0x67, 0x86, 0x70, 0x43, 0x86, 0xa4, 0xfb, 0xb9, 0x61, 0x30, - 0xeb, 0x85, 0xde, 0x1e, 0xf9, 0x0a, 0x61, 0x9f, 0x5d, 0xc3, 0x64, 0x71, 0xd8, 0x9a, 0x17, 0x3e, - 0xb8, 0x34, 0x5a, 0xab, 0x48, 0xfc, 0xfa, 0x98, 0x9c, 0x70, 0x95, 0x2c, 0x8f, 0xee, 0x04, 0xf2, - 0xd4, 0x83, 0x4f, 0x38, 0x83, 0x3c, 0x19, 0x79, 0xf6, 0x8f, 0x2e, 0x8d, 0x80, 0x74, 0xdc, 0xf0, - 0xe7, 0x23, 0x17, 0xc3, 0xdd, 0x68, 0xfe, 0x18, 0x8a, 0xa1, 0x07, 0xb0, 0x67, 0x17, 0xc7, 0x01, - 0xc2, 0x7e, 0xd1, 0x91, 0x87, 0x69, 0x13, 0x5d, 0x3d, 0x3c, 0x3a, 0x23, 0x89, 0x4f, 0x4d, 0x92, - 0xfb, 0xa9, 0x49, 0xca, 0xd6, 0x4c, 0xb6, 0x9b, 0x78, 0x72, 0x64, 0xbb, 0x73, 0xf3, 0x47, 0xcf, - 0xfe, 0x65, 0x34, 0x1f, 0xfd, 0xc5, 0x8b, 0x7d, 0xe4, 0xf9, 0xf7, 0x3e, 0x4a, 0x0d, 0x6c, 0xa1, - 0xf8, 0x57, 0x7f, 0xb3, 0x8f, 0x50, 0x6b, 0x1f, 0x2d, 0x8e, 0x34, 0x12, 0x3c, 0xfe, 0x97, 0xfd, - 0xbf, 0xb5, 0xf2, 0x0c, 0xbd, 0xba, 0x36, 0x9e, 0x91, 0xb7, 0x57, 0x37, 0x5e, 0xbf, 0x8d, 0x8d, - 0xbd, 0x79, 0x1b, 0x1b, 0x7b, 0xff, 0x36, 0x86, 0x7e, 0xd5, 0x8a, 0xa1, 0xe7, 0xad, 0x18, 0x7a, - 0xd9, 0x8a, 0xa1, 0xd7, 0xad, 0x18, 0xfa, 0x6f, 0x2b, 0x86, 0xde, 0xb5, 0x62, 0x63, 0xef, 0x5b, - 0x31, 0xf4, 0x87, 0x83, 0xd8, 0xd8, 0x8b, 0x83, 0x18, 0x7a, 0x7d, 0x10, 0x1b, 0x7b, 0x73, 0x10, - 0x1b, 0xbb, 0x77, 0xbf, 0x62, 0x98, 0x0f, 0x2b, 0x52, 0xd3, 0xb0, 0xc7, 0x74, 0xaa, 0x4a, 0x0d, - 0x2b, 0xc5, 0x1f, 0xec, 0x97, 0xda, 0xa4, 0x49, 0x8d, 0xa6, 0x5e, 0x02, 0x9a, 0x74, 0xc5, 0x29, - 0xb3, 0x58, 0x31, 0x52, 0xf0, 0x88, 0x39, 0xdf, 0xbd, 0x3e, 0xfb, 0x41, 0xae, 0xe8, 0xe7, 0x81, - 0xfb, 0xc1, 0x37, 0x01, 0x00, 0x00, 0xff, 0xff, 0x98, 0x5c, 0x2d, 0x2b, 0xe9, 0x14, 0x00, 0x00, + // 1650 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xdf, 0x6f, 0x13, 0xcb, + 0x15, 0xce, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x61, 0xa6, 0x10, 0x1c, 0x97, 0x5a, 0xae, 0x41, 0x55, + 0x14, 0xd5, 0x6b, 0x94, 0x12, 0x4a, 0x22, 0x0a, 0x75, 0x1c, 0x3b, 0x0d, 0x04, 0x12, 0xad, 0x9d, + 0x08, 0x81, 0xca, 0x6a, 0xbd, 0x3b, 0x36, 0x5b, 0x6c, 0xef, 0x76, 0x66, 0xec, 0x90, 0x56, 0x91, + 0x2a, 0x1e, 0xfa, 0x5c, 0xb5, 0x6f, 0x55, 0x2b, 0xd1, 0x07, 0x10, 0x0f, 0x95, 0xfa, 0x4a, 0x9b, + 0x17, 0x5e, 0xaa, 0x8b, 0x78, 0xb8, 0x42, 0xf7, 0xbe, 0xf0, 0x78, 0x71, 0xee, 0x03, 0x4f, 0x57, + 0xe8, 0xea, 0xfe, 0x01, 0x57, 0x3b, 0xb3, 0x6b, 0x6c, 0xc7, 0x80, 0xed, 0x84, 0xfb, 0xe4, 0x9d, + 0x39, 0xe7, 0xfb, 0x76, 0xce, 0x37, 0xe7, 0x9c, 0x9d, 0x31, 0xfc, 0x55, 0x03, 0x53, 0xc9, 0x30, + 0x53, 0x54, 0xbb, 0x8b, 0xab, 0x6a, 0xca, 0xa8, 0x95, 0x88, 0x6a, 0x11, 0x93, 0x61, 0x8d, 0x29, + 0x25, 0x83, 0xe0, 0x6d, 0xb5, 0x52, 0x51, 0x48, 0xbd, 0x82, 0x53, 0x56, 0xbd, 0x58, 0x31, 0x34, + 0x45, 0x23, 0x75, 0x5d, 0xb5, 0x0c, 0xc9, 0x76, 0x32, 0xd1, 0x8c, 0x80, 0x4b, 0x02, 0x2e, 0xbd, + 0x1f, 0x1e, 0x4d, 0x96, 0x0d, 0x76, 0xb7, 0x5e, 0x94, 0x34, 0xb3, 0x9a, 0x2a, 0x9b, 0x65, 0x33, + 0xc5, 0x09, 0x8a, 0xf5, 0x12, 0x1f, 0xf1, 0x01, 0x7f, 0x12, 0xc4, 0xd1, 0xd3, 0x65, 0xd3, 0x2c, + 0x57, 0x70, 0x4a, 0xb5, 0x8c, 0x94, 0x5a, 0xab, 0x99, 0x4c, 0x65, 0x86, 0x59, 0xa3, 0x8e, 0xf5, + 0xc7, 0x8e, 0xb5, 0xc5, 0x81, 0xab, 0x16, 0xdb, 0x71, 0x8c, 0xd1, 0xce, 0x90, 0x30, 0x21, 0x26, + 0x71, 0x81, 0xf3, 0x7d, 0x87, 0x6b, 0x16, 0x7f, 0x87, 0x35, 0xe6, 0xc0, 0xce, 0xf7, 0x0d, 0x63, + 0x3b, 0x16, 0x6e, 0xad, 0xb2, 0x13, 0x65, 0x5a, 0xed, 0x21, 0x4c, 0x77, 0x1a, 0xdb, 0x71, 0x89, + 0x4e, 0x53, 0x03, 0x53, 0x5c, 0x6b, 0x74, 0xc1, 0xe3, 0x5d, 0x3e, 0x06, 0xde, 0x56, 0x3a, 0x3c, + 0x12, 0xff, 0x03, 0x70, 0x3c, 0x43, 0xb0, 0xca, 0xb0, 0x8c, 0x7f, 0x5f, 0xc7, 0x94, 0xa1, 0x2b, + 0x30, 0x50, 0xc5, 0x4c, 0xd5, 0x55, 0xa6, 0x46, 0x40, 0x1c, 0xcc, 0x84, 0xe6, 0xce, 0x48, 0x9d, + 0xfb, 0xb7, 0xce, 0x83, 0x16, 0xa8, 0xeb, 0x98, 0xa9, 0x85, 0x1d, 0x0b, 0xcb, 0x2d, 0x10, 0xfa, + 0x2d, 0xf4, 0x51, 0x0b, 0x6b, 0x11, 0x0f, 0x07, 0x5f, 0x94, 0xfa, 0xdd, 0x7c, 0x49, 0x30, 0xe6, + 0x2d, 0xac, 0xd9, 0x8c, 0x4b, 0x93, 0x7f, 0xdf, 0x1d, 0xb3, 0x89, 0xa4, 0xb2, 0xa6, 0xd8, 0xbf, + 0x32, 0xa7, 0x5d, 0x0c, 0xbe, 0xb8, 0xec, 0x17, 0x2b, 0x48, 0xfc, 0xd9, 0x03, 0x27, 0xdc, 0xc5, + 0x53, 0xcb, 0xac, 0x51, 0x8c, 0x2e, 0x1d, 0x58, 0x7d, 0xbc, 0xe7, 0xea, 0x57, 0x30, 0xeb, 0xb1, + 0xf4, 0x75, 0x38, 0x49, 0x77, 0x28, 0xc3, 0x55, 0xa5, 0x45, 0xe2, 0xe5, 0x24, 0x3f, 0xeb, 0x22, + 0xc9, 0x73, 0xaf, 0x83, 0x54, 0x13, 0x02, 0x7e, 0xdd, 0x25, 0xbc, 0xd5, 0xa1, 0xc5, 0x7c, 0xff, + 0x5a, 0xac, 0x60, 0x36, 0x80, 0x10, 0xdf, 0x00, 0x38, 0x21, 0x63, 0xab, 0xa2, 0x6a, 0xad, 0x6d, + 0xfc, 0xf5, 0x01, 0x21, 0xce, 0xf6, 0x14, 0xc2, 0x81, 0xf5, 0x10, 0xe3, 0x4e, 0xc7, 0xda, 0x17, + 0xfa, 0x5f, 0xbb, 0x43, 0xf9, 0x91, 0xf5, 0xa3, 0x14, 0x0c, 0x13, 0x4c, 0xcd, 0x3a, 0xd1, 0xb0, + 0xd2, 0xc0, 0x84, 0x1a, 0x66, 0x8d, 0xab, 0x1d, 0x5c, 0xf2, 0xbd, 0xd9, 0x03, 0x40, 0x9e, 0x74, + 0xad, 0x5b, 0xc2, 0xd8, 0x1e, 0xf0, 0x71, 0x38, 0xd9, 0x8a, 0x57, 0xec, 0x7c, 0xe2, 0x09, 0x80, + 0x70, 0x05, 0x33, 0x37, 0xfe, 0xd3, 0x30, 0x58, 0x53, 0xab, 0x98, 0x5a, 0xaa, 0x86, 0xb9, 0x00, + 0x41, 0xf9, 0xdd, 0x04, 0x42, 0xd0, 0x67, 0x0f, 0x78, 0x6c, 0x41, 0x99, 0x3f, 0xa3, 0xbb, 0xd0, + 0x7e, 0x23, 0x27, 0x53, 0x4a, 0x26, 0xa9, 0xaa, 0x8c, 0x2f, 0x67, 0x62, 0xee, 0xca, 0x40, 0xdb, + 0xe6, 0x2e, 0x28, 0xc7, 0x29, 0x32, 0xa6, 0x8e, 0xe5, 0x09, 0xd2, 0x31, 0x97, 0xf8, 0xbf, 0x1f, + 0x86, 0xda, 0x3c, 0xd1, 0x4d, 0x18, 0xd2, 0x78, 0x1a, 0xf3, 0xf7, 0x3a, 0x82, 0xff, 0x72, 0xd0, + 0xc2, 0x71, 0x22, 0x97, 0xa1, 0xe0, 0xb2, 0xdf, 0x85, 0x6e, 0xc3, 0x31, 0x22, 0x74, 0x12, 0xd4, + 0xde, 0x41, 0x6b, 0xb2, 0x33, 0xab, 0xe4, 0x90, 0xc3, 0xc6, 0xc9, 0x7b, 0x6d, 0xa0, 0xef, 0x03, + 0x1b, 0xd8, 0x51, 0x9c, 0xa3, 0x47, 0x51, 0x9c, 0xc7, 0x8e, 0xa4, 0x38, 0xfd, 0x47, 0x5f, 0x9c, + 0x68, 0x13, 0xfa, 0x29, 0x53, 0x59, 0x9d, 0x46, 0x1e, 0xfe, 0x03, 0xc4, 0xbd, 0x33, 0xa1, 0xb9, + 0x0b, 0xfd, 0xf3, 0xe7, 0x39, 0x52, 0x04, 0xb0, 0xe4, 0x7d, 0xb6, 0x0b, 0x64, 0x87, 0x0c, 0xad, + 0xc2, 0xe3, 0x04, 0x97, 0x30, 0x21, 0x46, 0xad, 0xac, 0x88, 0x8f, 0x0f, 0x8d, 0x04, 0x38, 0xff, + 0xe9, 0xf7, 0x94, 0x77, 0x89, 0xc7, 0x1e, 0x6e, 0xc1, 0xc4, 0x3c, 0x45, 0x5b, 0x30, 0xa2, 0xe3, + 0x0a, 0x66, 0x58, 0x57, 0x84, 0x0d, 0xeb, 0x2d, 0xc6, 0x60, 0x1f, 0x8c, 0x53, 0x0e, 0x5a, 0x76, + 0xc0, 0x2e, 0xef, 0x4d, 0x38, 0xad, 0x1b, 0x54, 0x2d, 0x56, 0x7a, 0x11, 0xc3, 0x3e, 0x88, 0x4f, + 0xb9, 0xf0, 0x2e, 0xe6, 0xb6, 0xfa, 0xbf, 0xea, 0x0b, 0x80, 0xb0, 0x27, 0xf1, 0x08, 0xc0, 0xd0, + 0x9a, 0x41, 0xfb, 0xac, 0xf9, 0x9f, 0xc2, 0xb1, 0x8a, 0x5a, 0xc4, 0x15, 0xa5, 0x64, 0x54, 0x18, + 0x26, 0x4e, 0xed, 0x87, 0xf8, 0x5c, 0x8e, 0x4f, 0xa1, 0x33, 0x70, 0x9c, 0x60, 0xcb, 0x24, 0xf6, + 0x86, 0xe0, 0x8a, 0x4e, 0x23, 0xde, 0xb8, 0x77, 0x26, 0x28, 0x8f, 0x89, 0xc9, 0x1c, 0x9f, 0x43, + 0xe7, 0xe0, 0x09, 0xc7, 0x49, 0x6c, 0x8a, 0xeb, 0xeb, 0xe3, 0xbe, 0x48, 0xd8, 0xc4, 0x16, 0x0a, + 0x44, 0xe2, 0x3b, 0x3f, 0x0c, 0x8b, 0x75, 0x8a, 0x82, 0x5f, 0x65, 0xb8, 0x8a, 0xa6, 0xa0, 0x9f, + 0xe1, 0x9a, 0x5a, 0x63, 0x3c, 0xff, 0x82, 0xb2, 0x33, 0x1a, 0xa2, 0x71, 0x85, 0xa1, 0xb7, 0x6e, + 0xe8, 0xa2, 0x77, 0xca, 0xf6, 0x23, 0x8a, 0xc3, 0x90, 0x8e, 0xa9, 0x46, 0x0c, 0xfe, 0xad, 0x8f, + 0x84, 0x44, 0xa4, 0x6d, 0x53, 0x28, 0x0a, 0x03, 0xae, 0xcc, 0x91, 0xb1, 0x38, 0x98, 0x09, 0xc8, + 0xad, 0x31, 0xba, 0x03, 0xfd, 0x5c, 0x14, 0x11, 0x52, 0x68, 0x2e, 0xd7, 0x7f, 0xe6, 0x76, 0x47, + 0x29, 0xad, 0x71, 0xa2, 0x6c, 0x8d, 0x91, 0x1d, 0xd9, 0x61, 0x45, 0x55, 0x18, 0x6a, 0x3b, 0xac, + 0x39, 0x39, 0x71, 0xed, 0x10, 0x2f, 0x49, 0xbf, 0x63, 0x13, 0x6f, 0x6a, 0xe7, 0x47, 0x0b, 0x10, + 0x9a, 0xdb, 0x35, 0x4c, 0x14, 0xfb, 0xf8, 0x13, 0x09, 0xf2, 0x62, 0x8f, 0x76, 0xbd, 0x6d, 0xcb, + 0xc0, 0xdb, 0x6e, 0xfe, 0x05, 0xb9, 0xb7, 0x3d, 0xd3, 0xd1, 0xb0, 0xc6, 0x8f, 0xa2, 0x61, 0x4d, + 0x1c, 0xaa, 0x61, 0x6d, 0xc0, 0x40, 0x19, 0x33, 0xde, 0x66, 0x9c, 0xd6, 0x37, 0x5c, 0xd3, 0x92, + 0x8f, 0x95, 0xc5, 0x00, 0xdd, 0x82, 0xd0, 0x49, 0x62, 0x8a, 0x99, 0xd3, 0x48, 0x0e, 0xd5, 0xa8, + 0x82, 0x82, 0x2e, 0x8f, 0x59, 0x74, 0x01, 0x86, 0xda, 0x76, 0xdf, 0xce, 0xd2, 0x7b, 0x78, 0xc7, + 0xc9, 0x68, 0xfb, 0x11, 0x9d, 0x80, 0xa3, 0x0d, 0xb5, 0x52, 0x77, 0x93, 0x59, 0x0c, 0x16, 0x3d, + 0x17, 0x41, 0xf4, 0x32, 0x0c, 0x77, 0xef, 0xe9, 0x20, 0xf8, 0xab, 0xbe, 0xc0, 0x68, 0xd8, 0x9f, + 0xf8, 0x2b, 0x80, 0x63, 0xed, 0xb9, 0x82, 0x36, 0xe0, 0xa8, 0xc1, 0x70, 0x95, 0x46, 0x44, 0x47, + 0x5e, 0x1c, 0x3e, 0xe5, 0x64, 0x41, 0x84, 0xce, 0x41, 0xbf, 0xb8, 0x39, 0x44, 0x3c, 0x9c, 0x32, + 0xd2, 0x45, 0x99, 0xb5, 0x8d, 0x5c, 0x72, 0xc7, 0x2f, 0x71, 0x0f, 0x8e, 0x2f, 0xf3, 0xc6, 0x39, + 0xfc, 0x41, 0x65, 0x06, 0x86, 0x4b, 0xaa, 0x51, 0x51, 0x8c, 0x52, 0xab, 0xc1, 0xf2, 0xe2, 0x0f, + 0xc8, 0x13, 0xf6, 0xfc, 0x6a, 0xc9, 0x6d, 0x9c, 0xb3, 0xdf, 0x02, 0x78, 0xb2, 0xe7, 0x91, 0x04, + 0x45, 0xe1, 0xd4, 0x4a, 0xb6, 0xa0, 0xc8, 0xf9, 0x0d, 0x25, 0xb7, 0x2e, 0x5f, 0x4f, 0x17, 0x94, + 0xe5, 0x6c, 0x2e, 0xbd, 0xb9, 0x56, 0x08, 0x8f, 0xa0, 0x9f, 0xc0, 0xe9, 0x2e, 0x5b, 0x6e, 0x5d, + 0x56, 0x32, 0x72, 0x36, 0x5d, 0xc8, 0x86, 0x01, 0x8a, 0xc1, 0x68, 0x0f, 0xb3, 0x9c, 0xdd, 0x58, + 0x4b, 0x67, 0xb2, 0x61, 0x0f, 0x9a, 0x86, 0x27, 0xbb, 0xec, 0xf9, 0x42, 0xba, 0xb0, 0x99, 0x0f, + 0x7b, 0xd1, 0x29, 0xf8, 0xa3, 0x2e, 0x93, 0x9c, 0x4d, 0x2f, 0x87, 0x7d, 0xe8, 0x2c, 0x8c, 0x1f, + 0x30, 0xe4, 0xb2, 0xb2, 0xbc, 0x7a, 0x63, 0x45, 0x59, 0x5f, 0xba, 0x9a, 0xcd, 0x14, 0xf2, 0xe1, + 0xd1, 0x1e, 0x5e, 0x4b, 0xf2, 0xfa, 0xb5, 0xec, 0x0d, 0xe1, 0x9c, 0xbd, 0x91, 0xc9, 0xe6, 0xc3, + 0xfe, 0xb9, 0xff, 0x8c, 0x41, 0x6f, 0x7a, 0x63, 0x15, 0x3d, 0xf6, 0x40, 0xbf, 0x38, 0x19, 0xa1, + 0x61, 0xcf, 0x52, 0xd1, 0x8b, 0x83, 0x03, 0x5b, 0xc7, 0xd1, 0xe6, 0x67, 0x91, 0xad, 0x06, 0xa6, + 0x49, 0xc3, 0x4c, 0x72, 0x18, 0x65, 0xa4, 0xae, 0xb1, 0x3a, 0xc1, 0xc9, 0x6d, 0x62, 0x30, 0xfc, + 0xf3, 0xd2, 0xfc, 0x7d, 0x2d, 0x49, 0xcc, 0x3a, 0xc3, 0x7a, 0x52, 0xd7, 0x4d, 0x9a, 0x2c, 0xaa, + 0xd4, 0xd0, 0x92, 0x75, 0x8a, 0xc9, 0x41, 0x1b, 0x65, 0x6a, 0x4d, 0x57, 0x89, 0xce, 0xcd, 0x0f, + 0xbe, 0xfc, 0xfa, 0x6f, 0x9e, 0xdf, 0x24, 0x32, 0xce, 0x6d, 0x3b, 0xd5, 0x4a, 0x17, 0x9a, 0xfa, + 0xa3, 0xdb, 0x6a, 0xa4, 0xd6, 0xe4, 0xee, 0x07, 0x6e, 0xa2, 0x74, 0x11, 0xcc, 0xa2, 0x7f, 0x79, + 0xa0, 0x77, 0x05, 0x33, 0x74, 0x7e, 0xc0, 0x73, 0xae, 0x90, 0x68, 0x7e, 0xa8, 0xd3, 0x71, 0xe2, + 0xdf, 0xe0, 0xf9, 0x53, 0x8f, 0xad, 0xd1, 0xed, 0xde, 0x1a, 0x11, 0xac, 0xea, 0xef, 0x93, 0xa8, + 0x6a, 0xd6, 0x0c, 0x66, 0x7e, 0x48, 0x25, 0xc7, 0x83, 0x0b, 0x95, 0x41, 0xe9, 0x5e, 0x42, 0xf5, + 0xa7, 0x8f, 0xf0, 0xdb, 0x45, 0xff, 0xf4, 0x40, 0x9f, 0xdd, 0x04, 0xd0, 0xfc, 0xa0, 0x4d, 0x43, + 0xa8, 0x74, 0x61, 0xb8, 0x5e, 0x93, 0x78, 0xf4, 0x83, 0xc9, 0x74, 0x09, 0x2d, 0x0e, 0x2f, 0x13, + 0xfa, 0xaf, 0x07, 0x1e, 0x73, 0xee, 0x0a, 0x68, 0xe8, 0xeb, 0x45, 0x74, 0x61, 0x08, 0xa4, 0x23, + 0xd4, 0xd3, 0x4f, 0x5d, 0x6f, 0x37, 0xa3, 0xf9, 0x23, 0xa8, 0xb7, 0x2e, 0xc0, 0xae, 0x5d, 0x7f, + 0x0f, 0x3c, 0xd0, 0x2f, 0xbe, 0x09, 0x83, 0x34, 0xaa, 0x8e, 0xaf, 0x48, 0x74, 0x4a, 0x12, 0x7f, + 0x76, 0x49, 0xee, 0x9f, 0x5d, 0x52, 0xb6, 0x6a, 0xb1, 0x9d, 0xc4, 0xe3, 0x4f, 0x2d, 0x4b, 0x6e, + 0xf6, 0xf0, 0xd5, 0xb5, 0x08, 0x66, 0xa3, 0x7f, 0x78, 0xb6, 0x07, 0x3c, 0x5f, 0xec, 0x81, 0x54, + 0xdf, 0x02, 0x88, 0x63, 0xc7, 0xab, 0x3d, 0x00, 0x9a, 0x7b, 0x60, 0x7e, 0xa8, 0x33, 0xcb, 0x83, + 0xcf, 0xed, 0x0f, 0xeb, 0xd2, 0x43, 0xf0, 0xe2, 0xf2, 0x68, 0x46, 0xde, 0x5c, 0x5e, 0x7b, 0xf9, + 0x3a, 0x36, 0xf2, 0xea, 0x75, 0x6c, 0xe4, 0xed, 0xeb, 0x18, 0xf8, 0x53, 0x33, 0x06, 0x9e, 0x34, + 0x63, 0xe0, 0x79, 0x33, 0x06, 0x5e, 0x36, 0x63, 0xe0, 0xab, 0x66, 0x0c, 0xbc, 0x69, 0xc6, 0x46, + 0xde, 0x36, 0x63, 0xe0, 0x2f, 0xfb, 0xb1, 0x91, 0x67, 0xfb, 0x31, 0xf0, 0x72, 0x3f, 0x36, 0xf2, + 0x6a, 0x3f, 0x36, 0x72, 0xeb, 0x4e, 0xd9, 0xb4, 0xee, 0x95, 0xa5, 0x86, 0x69, 0xdf, 0x23, 0x88, + 0x2a, 0xd5, 0x69, 0x8a, 0x3f, 0xd8, 0xb7, 0xee, 0xa4, 0x45, 0xcc, 0x86, 0xa1, 0x63, 0x92, 0x74, + 0xcd, 0x29, 0xab, 0x58, 0x36, 0x53, 0xf8, 0x3e, 0x73, 0xfe, 0x98, 0xfb, 0xe8, 0x3f, 0x86, 0x45, + 0x3f, 0xdf, 0xd7, 0x5f, 0x7c, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xc2, 0x29, 0xde, 0x2c, 0x8a, 0x15, + 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.vesapi.go b/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.vesapi.go index a08665c63..f0d8a84b8 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_firewall_rule/public_crudapi.vesapi.go @@ -3340,10 +3340,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3400,10 +3404,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3506,10 +3514,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_firewall_rule/types.pb.go b/pbgo/extschema/schema/infraprotect_firewall_rule/types.pb.go index 6ba9b36e0..1e9fd9b19 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_rule/types.pb.go +++ b/pbgo/extschema/schema/infraprotect_firewall_rule/types.pb.go @@ -2352,118 +2352,119 @@ func init() { } var fileDescriptor_be50fe88872682e5 = []byte{ - // 1769 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0x4f, 0x6f, 0xdb, 0xc8, - 0x15, 0xd7, 0x58, 0x94, 0x4d, 0x3f, 0xfd, 0xb1, 0x3c, 0x96, 0x6d, 0xc6, 0x4e, 0x05, 0xc3, 0x58, - 0xa0, 0x41, 0xea, 0x48, 0x1b, 0xc6, 0x2b, 0xef, 0x6e, 0xb6, 0x09, 0x4c, 0xdb, 0x88, 0x63, 0xa4, - 0x88, 0x2b, 0x3b, 0x7b, 0x58, 0xa0, 0x65, 0x29, 0x6a, 0x24, 0x13, 0x4b, 0x69, 0xb8, 0x43, 0xca, - 0x89, 0x6f, 0x85, 0xbf, 0x40, 0x7b, 0xdc, 0x43, 0x3f, 0x40, 0x8f, 0x3d, 0x57, 0x97, 0x60, 0x0b, - 0x14, 0x8b, 0xed, 0x45, 0x40, 0x2f, 0x41, 0x4f, 0x1b, 0xbb, 0x87, 0xf6, 0xb6, 0xc7, 0xc2, 0xa7, - 0x82, 0x43, 0x89, 0x22, 0x29, 0x45, 0x71, 0x80, 0x0d, 0x8a, 0x02, 0xbc, 0x91, 0xf3, 0x7e, 0xbf, - 0x37, 0xef, 0xdf, 0xbc, 0x37, 0xa6, 0x05, 0x9b, 0xa7, 0xc4, 0x2e, 0x19, 0xb4, 0x6c, 0xeb, 0x27, - 0xa4, 0xa5, 0x95, 0x8d, 0x76, 0x83, 0x69, 0x16, 0xa3, 0x0e, 0xd1, 0x1d, 0xb5, 0x61, 0x30, 0xf2, - 0x5c, 0x33, 0x4d, 0x95, 0x75, 0x4c, 0x52, 0x76, 0xce, 0x2c, 0x62, 0x97, 0x5c, 0x19, 0xc5, 0xb7, - 0x3c, 0x56, 0xc9, 0x63, 0x95, 0xde, 0xcc, 0x5a, 0xb9, 0xd3, 0x34, 0x9c, 0x93, 0x4e, 0xad, 0xa4, - 0xd3, 0x56, 0xb9, 0x49, 0x9b, 0xb4, 0xcc, 0x15, 0xd4, 0x3a, 0x0d, 0xfe, 0xc6, 0x5f, 0xf8, 0x93, - 0xa7, 0x78, 0x65, 0x35, 0x6c, 0x0e, 0xb5, 0x1c, 0x83, 0xb6, 0xfb, 0xbb, 0xae, 0xdc, 0x08, 0x0b, - 0x03, 0x06, 0xad, 0xdc, 0x0c, 0x8b, 0x4e, 0x35, 0xd3, 0xa8, 0x6b, 0x0e, 0xe9, 0x4b, 0xd7, 0x22, - 0x52, 0x83, 0x3c, 0x57, 0x43, 0xaa, 0xd7, 0x7f, 0x87, 0x21, 0xf7, 0xc8, 0xa4, 0x35, 0xcd, 0x3c, - 0xb2, 0x88, 0x7e, 0x7c, 0x66, 0x11, 0xfc, 0x09, 0x64, 0x4e, 0x09, 0xb3, 0x0d, 0xda, 0x56, 0x0d, - 0xeb, 0x74, 0x53, 0x9a, 0x5a, 0x43, 0xb7, 0xd2, 0x72, 0xa1, 0x14, 0x76, 0x7d, 0xaf, 0x65, 0x39, - 0x67, 0xfb, 0x89, 0x6a, 0xba, 0x8f, 0x7d, 0x6c, 0x9d, 0x6e, 0x46, 0xa8, 0x15, 0x29, 0x79, 0x5d, - 0x6a, 0x05, 0x2b, 0x50, 0xb0, 0x69, 0x87, 0xe9, 0x44, 0xb5, 0x18, 0x69, 0x18, 0x2f, 0x54, 0xdb, - 0x68, 0x37, 0x4d, 0x22, 0xa5, 0xd6, 0xd0, 0xad, 0x59, 0x25, 0xf7, 0x9f, 0x2e, 0x4a, 0xfc, 0xf9, - 0xdf, 0x2f, 0x93, 0x29, 0x96, 0xfc, 0x3a, 0x85, 0xf6, 0x51, 0x15, 0x7b, 0xe8, 0x43, 0x0e, 0x3e, - 0xe2, 0x58, 0xac, 0xc0, 0x7c, 0x58, 0x87, 0x66, 0x9a, 0xd2, 0xf4, 0x04, 0x1b, 0x50, 0x75, 0x2e, - 0xa8, 0x66, 0xdb, 0x34, 0xf1, 0x13, 0xb8, 0x51, 0x27, 0xb6, 0x63, 0xb4, 0x35, 0x37, 0x4c, 0x11, - 0x63, 0xc4, 0xb1, 0xc6, 0x4c, 0x55, 0x97, 0x03, 0x94, 0x90, 0x45, 0x4f, 0x60, 0x69, 0x8c, 0x36, - 0xd7, 0xac, 0xd9, 0x09, 0x66, 0x4d, 0x55, 0x0b, 0x23, 0x0a, 0x5d, 0xdb, 0xbe, 0x80, 0x0c, 0xcf, - 0x9a, 0x4e, 0x4d, 0xb5, 0x53, 0xb7, 0xa4, 0x34, 0xd7, 0xf1, 0x51, 0xe9, 0xba, 0x45, 0x59, 0x7a, - 0xb6, 0x7b, 0x78, 0xd8, 0x57, 0xb0, 0x9f, 0xac, 0xa6, 0x07, 0xca, 0x9e, 0xd5, 0xad, 0x90, 0x6e, - 0x47, 0xb7, 0xa4, 0xcc, 0xbb, 0xea, 0x3e, 0xde, 0x19, 0xab, 0xfb, 0x58, 0xb7, 0xf0, 0x16, 0xf8, - 0xaf, 0xaa, 0x76, 0x22, 0x65, 0x27, 0xb8, 0x9e, 0xac, 0xc2, 0x00, 0xba, 0x7d, 0xe2, 0xd6, 0x93, - 0x4f, 0x24, 0xb6, 0x25, 0xe5, 0x26, 0x32, 0xfd, 0x4d, 0xf6, 0x6c, 0x2b, 0x44, 0x6d, 0x32, 0x22, - 0xcd, 0x5d, 0x8f, 0xfa, 0x88, 0x11, 0xfc, 0x2b, 0xc8, 0xfa, 0x54, 0x43, 0x6f, 0x59, 0x52, 0x9e, - 0x73, 0x2b, 0xd7, 0x8f, 0xc5, 0xe3, 0x9d, 0x5f, 0x04, 0x83, 0xe1, 0x5b, 0xf2, 0x58, 0x6f, 0x59, - 0xf8, 0x37, 0x90, 0x0b, 0xa9, 0xaf, 0x48, 0xf3, 0x5c, 0xff, 0xd6, 0xbb, 0xe9, 0xaf, 0x04, 0x36, - 0xc8, 0x06, 0x37, 0xa8, 0xe0, 0xfb, 0x41, 0x07, 0xdc, 0x73, 0x88, 0x27, 0x3a, 0x3f, 0x34, 0xcf, - 0x3d, 0x88, 0xc1, 0xc0, 0xb9, 0x85, 0xba, 0x70, 0xbd, 0xc0, 0xb9, 0xf5, 0xb9, 0x05, 0x69, 0x4d, - 0xe7, 0x85, 0x5e, 0x27, 0xed, 0x33, 0x69, 0x71, 0x02, 0x53, 0xa8, 0x82, 0x07, 0xdd, 0x25, 0xed, - 0x33, 0x77, 0xcf, 0x3e, 0x51, 0x33, 0x4d, 0xfa, 0x5c, 0x5a, 0x9a, 0xc8, 0xec, 0x6f, 0xb2, 0xed, - 0x42, 0xf1, 0x3d, 0x98, 0xb5, 0x1d, 0xcd, 0x21, 0x2a, 0x6d, 0x34, 0x24, 0x69, 0x02, 0x2f, 0x55, - 0x15, 0x39, 0xf0, 0x69, 0xa3, 0x81, 0xef, 0x82, 0xd8, 0x27, 0xb5, 0xa5, 0x1b, 0x13, 0x39, 0x33, - 0x1e, 0xa7, 0x8d, 0x7f, 0x0e, 0xb9, 0x06, 0xd3, 0x9a, 0x2d, 0xd2, 0x76, 0x6c, 0xcf, 0xbd, 0xd5, - 0x09, 0xc4, 0xe9, 0x6a, 0xd6, 0x47, 0x73, 0x0f, 0x1f, 0xc2, 0xdc, 0x90, 0xee, 0x39, 0x79, 0x73, - 0x22, 0x7f, 0xb8, 0x1b, 0xf7, 0xf3, 0xd3, 0xaf, 0x53, 0xdf, 0x74, 0xd1, 0x16, 0xac, 0x41, 0xc1, - 0xeb, 0x07, 0x6b, 0x3b, 0xb4, 0xdd, 0x30, 0x9a, 0x1d, 0xc6, 0x7b, 0x04, 0x16, 0xef, 0x6e, 0x6c, - 0x6e, 0x6c, 0x6d, 0xdc, 0xfd, 0x10, 0x16, 0x60, 0xe6, 0xa9, 0xd7, 0xe2, 0xb1, 0x28, 0x7f, 0xb8, - 0x21, 0xdf, 0xdb, 0x90, 0x2b, 0xdf, 0x75, 0xd1, 0x2b, 0x01, 0x3e, 0x81, 0x99, 0xcf, 0xbd, 0x8e, - 0x7b, 0xbb, 0x04, 0x1b, 0x50, 0x08, 0xf7, 0x79, 0x59, 0x78, 0x7c, 0xf8, 0xf9, 0x66, 0x64, 0xb5, - 0xc2, 0x57, 0x2b, 0xb0, 0x07, 0xd9, 0x23, 0xde, 0x28, 0xd7, 0xbc, 0xdd, 0x6f, 0x6f, 0x82, 0x0c, - 0x4b, 0xe3, 0x5b, 0x36, 0x48, 0x63, 0xda, 0xb0, 0x9c, 0xdc, 0x7e, 0xf2, 0x04, 0x8e, 0x01, 0xef, - 0x0e, 0x1b, 0xdb, 0x40, 0xd7, 0x03, 0xf8, 0x0c, 0x56, 0x27, 0xb4, 0x5d, 0xf8, 0xc9, 0x9b, 0xba, - 0xa8, 0xa7, 0xf5, 0xef, 0x08, 0xc4, 0xc1, 0x61, 0xb8, 0xfd, 0x57, 0x04, 0x7f, 0x41, 0xb0, 0x10, - 0xee, 0x94, 0x72, 0xf2, 0xd9, 0xee, 0x61, 0x68, 0xd1, 0xd1, 0x2d, 0x39, 0x79, 0xbc, 0x73, 0x08, - 0xf3, 0xa1, 0xde, 0x24, 0x4f, 0x6d, 0xef, 0x87, 0x70, 0xc4, 0xb6, 0xe4, 0xe4, 0xde, 0x51, 0x98, - 0xdc, 0x64, 0x44, 0x4e, 0x3e, 0xaa, 0xee, 0xc1, 0x62, 0xa4, 0x53, 0xc8, 0x82, 0x7b, 0x32, 0x61, - 0x39, 0x7a, 0xc2, 0xe5, 0x14, 0x3f, 0xb1, 0x61, 0xfc, 0x30, 0xba, 0x0b, 0xe1, 0x23, 0xe7, 0x79, - 0xf5, 0x31, 0x4c, 0x6f, 0xf3, 0x3a, 0xe7, 0xc9, 0x5a, 0x08, 0x1d, 0x2d, 0x59, 0x70, 0x8b, 0x0a, - 0x16, 0xc3, 0xc7, 0x46, 0x4e, 0xf1, 0x52, 0x81, 0x92, 0xcf, 0xfc, 0x00, 0xd6, 0x21, 0x1f, 0x38, - 0x20, 0x72, 0xf2, 0x69, 0xa3, 0x01, 0xb9, 0x61, 0xf5, 0xcb, 0x53, 0x4f, 0xdb, 0xf0, 0xc0, 0xc7, - 0x7b, 0x59, 0x8d, 0x14, 0x7a, 0x7f, 0x33, 0x69, 0xa4, 0x82, 0xfb, 0xfb, 0x29, 0x0b, 0x30, 0xd3, - 0x2f, 0x19, 0x2c, 0xbe, 0xec, 0xa2, 0xa9, 0x5e, 0x17, 0x21, 0xe5, 0x06, 0x64, 0x43, 0x45, 0xc0, - 0x45, 0xa9, 0x5e, 0x17, 0x09, 0x4a, 0x11, 0xf0, 0x68, 0x3a, 0xb9, 0x5c, 0xec, 0x75, 0xd1, 0x8c, - 0x52, 0x00, 0x71, 0x10, 0x0e, 0xbe, 0x9a, 0xee, 0x75, 0x11, 0x28, 0x18, 0xa6, 0x3d, 0x67, 0xf9, - 0xda, 0x62, 0xaf, 0x8b, 0x0a, 0xca, 0x3c, 0xa4, 0xb8, 0x27, 0x7c, 0x49, 0xea, 0x75, 0xd1, 0xb2, - 0xb2, 0x08, 0xb3, 0xbe, 0x99, 0x7c, 0x79, 0xb5, 0xd7, 0x45, 0x2b, 0x07, 0x82, 0x88, 0xf2, 0x53, - 0x07, 0x82, 0x28, 0xe4, 0x53, 0x07, 0x82, 0x38, 0x93, 0x17, 0x0f, 0x04, 0x11, 0xf2, 0xe9, 0x03, - 0x41, 0x2c, 0xe4, 0x17, 0x0f, 0x04, 0x71, 0x39, 0x2f, 0x1d, 0x08, 0xe2, 0x4a, 0x7e, 0x75, 0xfd, - 0x32, 0x03, 0xb9, 0x1d, 0x46, 0x34, 0x87, 0xfc, 0x8f, 0x6f, 0x44, 0xf2, 0xa4, 0x1b, 0xd1, 0x7b, - 0xbc, 0x01, 0x7d, 0xf6, 0xd6, 0x1b, 0x50, 0x7c, 0xe3, 0x89, 0x6f, 0x3c, 0xf1, 0x8d, 0x27, 0xbe, - 0xf1, 0xbc, 0xdf, 0x1b, 0xcf, 0xfc, 0x77, 0x0f, 0x22, 0x7f, 0x9a, 0x2a, 0x4b, 0xc3, 0x49, 0x93, - 0x3e, 0xbf, 0x42, 0x83, 0x17, 0x65, 0x3d, 0x3a, 0x6c, 0xe6, 0xcf, 0xaf, 0x50, 0x78, 0x49, 0xd9, - 0x18, 0x3b, 0x75, 0x96, 0xce, 0xaf, 0xd0, 0x98, 0x75, 0x45, 0x0a, 0xcc, 0xa0, 0xcc, 0xf9, 0x15, - 0xf2, 0xdf, 0x94, 0x82, 0x3f, 0x87, 0xe0, 0xfc, 0x0a, 0xf5, 0x9f, 0x15, 0x3c, 0x98, 0x44, 0xb3, - 0xe7, 0x57, 0xc8, 0x7b, 0x54, 0x56, 0x82, 0xa3, 0x28, 0x7b, 0x7e, 0x85, 0x86, 0xaf, 0xeb, 0xff, - 0xcc, 0xc0, 0x5c, 0x95, 0x58, 0xa6, 0xa6, 0xc7, 0x63, 0x26, 0x1e, 0x33, 0xf1, 0x98, 0x89, 0xc7, - 0x4c, 0x3c, 0x66, 0xe2, 0x31, 0xf3, 0xa3, 0x8f, 0x99, 0xef, 0x33, 0x90, 0x7e, 0x44, 0x9c, 0x78, - 0xc4, 0xc4, 0x23, 0x26, 0x1e, 0x31, 0xf1, 0x88, 0x89, 0x47, 0x4c, 0x3c, 0x62, 0x7e, 0xec, 0x11, - 0xd3, 0x4d, 0x42, 0x3a, 0xd0, 0x9b, 0xf0, 0xc7, 0xc3, 0xc6, 0x4d, 0x99, 0xa3, 0x32, 0xad, 0xdd, - 0x24, 0x7c, 0xce, 0xcc, 0x2a, 0xd0, 0xff, 0xa7, 0xd9, 0x9f, 0x10, 0xda, 0x4f, 0xf8, 0xed, 0x9a, - 0x32, 0xa7, 0xea, 0x82, 0xf0, 0x03, 0x98, 0x0b, 0x32, 0xdd, 0x02, 0x9e, 0x3c, 0x64, 0xb2, 0x43, - 0x0d, 0x6e, 0x09, 0x2b, 0x91, 0x86, 0x3d, 0xdc, 0x3e, 0x35, 0xb2, 0x3d, 0x0a, 0xb7, 0x69, 0xdf, - 0x86, 0x7d, 0x28, 0x8c, 0xe8, 0x78, 0xfb, 0xe4, 0xc1, 0x11, 0x5d, 0xae, 0x35, 0x6b, 0x90, 0xae, - 0x13, 0x5b, 0x67, 0x06, 0xff, 0x18, 0x2f, 0xcd, 0xb8, 0x26, 0x54, 0x83, 0x4b, 0x9f, 0x3e, 0xfc, - 0xa6, 0x8b, 0xee, 0x43, 0x1e, 0xd2, 0x83, 0x4f, 0xeb, 0x94, 0x39, 0x18, 0xdd, 0x85, 0x45, 0xc8, - 0x87, 0xbe, 0x92, 0xf3, 0xe5, 0x4d, 0x17, 0xb8, 0x3b, 0x64, 0x63, 0xb4, 0xa5, 0x2c, 0x43, 0x3a, - 0x10, 0xb0, 0xc0, 0xc7, 0xd7, 0x9b, 0x90, 0x8f, 0x7a, 0x31, 0xfc, 0xfe, 0x1a, 0xfc, 0x16, 0xca, - 0xb3, 0x17, 0xe8, 0xfe, 0x71, 0xf6, 0xfe, 0xaf, 0xb2, 0xf7, 0xb7, 0x29, 0xc8, 0x04, 0xe7, 0x15, - 0xfe, 0x19, 0x64, 0x88, 0x7e, 0x42, 0x55, 0x46, 0xbe, 0xea, 0x10, 0xdb, 0x91, 0xd0, 0x1a, 0xba, - 0x25, 0x2a, 0xe2, 0x3f, 0xba, 0x48, 0x70, 0x58, 0x87, 0x54, 0xd3, 0xae, 0xb4, 0xea, 0x09, 0xf1, - 0x4f, 0x01, 0xfa, 0x60, 0xcb, 0x3c, 0xe3, 0x49, 0x0e, 0x42, 0x67, 0x3d, 0xa8, 0x65, 0x9e, 0xe1, - 0x8f, 0x60, 0xde, 0xd2, 0x98, 0xd6, 0x22, 0x0e, 0x61, 0xaa, 0xc5, 0x68, 0xcd, 0x24, 0x2d, 0x9e, - 0xdc, 0x20, 0x3e, 0xef, 0x43, 0x0e, 0x3d, 0x04, 0xfe, 0x00, 0x44, 0x46, 0xea, 0x06, 0x23, 0xba, - 0x23, 0x09, 0x11, 0xb4, 0x2f, 0xc1, 0x77, 0xfc, 0x8e, 0xf7, 0x55, 0x87, 0xb4, 0xf5, 0x13, 0x9e, - 0xee, 0x20, 0x34, 0xe3, 0x89, 0x7f, 0xc9, 0xa5, 0x2e, 0xdc, 0x31, 0x5a, 0x44, 0x25, 0x2f, 0x74, - 0x42, 0xea, 0xa4, 0xce, 0x73, 0x1b, 0x82, 0xbb, 0xe2, 0xbd, 0xbe, 0x14, 0xdf, 0x86, 0x74, 0xa7, - 0xcd, 0x88, 0xa6, 0x9f, 0x68, 0x35, 0x93, 0xf0, 0x3c, 0x86, 0xe2, 0x11, 0x10, 0xae, 0x7f, 0x2b, - 0x40, 0x36, 0x34, 0x9d, 0xf1, 0x36, 0x04, 0x6f, 0x87, 0x6a, 0x50, 0x53, 0x34, 0xb2, 0xc1, 0xe2, - 0x7d, 0x36, 0xc4, 0x5d, 0x3f, 0xc8, 0xd1, 0xd4, 0x25, 0x27, 0xa5, 0xee, 0x21, 0x2c, 0xb5, 0x89, - 0xd1, 0x3c, 0xa9, 0x51, 0xa6, 0x6a, 0xf5, 0x53, 0xc2, 0x1c, 0xc3, 0x26, 0x6e, 0x3f, 0x1e, 0x09, - 0xf4, 0xe2, 0x00, 0xb7, 0x1d, 0x84, 0xe1, 0x7b, 0x90, 0xf7, 0x15, 0xd8, 0xd4, 0x34, 0x74, 0xc3, - 0x19, 0x09, 0xfc, 0xdc, 0x00, 0x71, 0xe4, 0x01, 0x70, 0x09, 0x72, 0x96, 0xa6, 0x7f, 0x49, 0x1c, - 0xd5, 0xa1, 0x54, 0xad, 0x19, 0xcd, 0xd1, 0xe0, 0x7b, 0xf2, 0x63, 0x4a, 0x15, 0xa3, 0x39, 0xbe, - 0x6e, 0x66, 0xde, 0xa9, 0x6e, 0xc4, 0x37, 0xd6, 0xcd, 0x7d, 0x28, 0x30, 0xda, 0x71, 0x35, 0x87, - 0x03, 0x30, 0x1b, 0x61, 0x2c, 0x78, 0xa8, 0xb0, 0xfb, 0x65, 0xc8, 0xf5, 0xc9, 0x03, 0xe7, 0x21, - 0x42, 0xcb, 0x7a, 0xf2, 0x81, 0xeb, 0x23, 0x65, 0x97, 0x9e, 0x54, 0x76, 0xca, 0x1f, 0x50, 0xef, - 0x75, 0x31, 0xf1, 0xea, 0x75, 0x31, 0xf1, 0xc3, 0xeb, 0x22, 0xfa, 0xed, 0x45, 0x11, 0xfd, 0xf1, - 0xa2, 0x88, 0xbe, 0xbd, 0x28, 0xa2, 0xde, 0x45, 0x11, 0xbd, 0xba, 0x28, 0xa2, 0xef, 0x2f, 0x8a, - 0xe8, 0x5f, 0x17, 0xc5, 0xc4, 0x0f, 0x17, 0x45, 0xf4, 0xfb, 0xcb, 0x62, 0xe2, 0xe5, 0x65, 0x11, - 0xf5, 0x2e, 0x8b, 0x89, 0x57, 0x97, 0xc5, 0xc4, 0x17, 0xbf, 0x6e, 0x52, 0xeb, 0xcb, 0x66, 0xe9, - 0x94, 0x9a, 0x0e, 0x61, 0x4c, 0x2b, 0x75, 0xec, 0x32, 0x7f, 0x68, 0x50, 0xd6, 0xba, 0x63, 0x31, - 0x7a, 0x6a, 0xd4, 0x09, 0xbb, 0x33, 0x10, 0x97, 0xad, 0x5a, 0x93, 0x96, 0xc9, 0x0b, 0xa7, 0xff, - 0x33, 0x9f, 0xb7, 0xfe, 0xa4, 0xa9, 0x36, 0xcd, 0xef, 0x00, 0xf7, 0xfe, 0x1b, 0x00, 0x00, 0xff, - 0xff, 0x72, 0xbd, 0x4a, 0x87, 0x05, 0x25, 0x00, 0x00, + // 1790 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcd, 0x6f, 0xe3, 0xc6, + 0x15, 0xd7, 0x58, 0x94, 0x4d, 0x3d, 0x7d, 0x58, 0x1e, 0xcb, 0x36, 0xd7, 0x5e, 0x08, 0xae, 0x11, + 0xb4, 0x0b, 0xd7, 0x96, 0xb2, 0x5c, 0x47, 0x4e, 0xb2, 0x4d, 0x16, 0xa2, 0xed, 0xda, 0x6b, 0x6c, + 0xbb, 0xae, 0xec, 0xcd, 0x21, 0x40, 0xca, 0x52, 0xd4, 0x48, 0x26, 0x42, 0x89, 0xcc, 0x90, 0xf2, + 0xae, 0x6f, 0x85, 0xff, 0x82, 0x1e, 0x7b, 0xe8, 0xad, 0x97, 0x1e, 0x7a, 0xe8, 0xb9, 0xba, 0x2c, + 0x52, 0xa0, 0x08, 0xd2, 0x8b, 0x80, 0x5e, 0x16, 0x3d, 0x65, 0xed, 0x1e, 0x5a, 0xa0, 0x87, 0x1c, + 0x0b, 0x9f, 0x0a, 0x0e, 0x29, 0x89, 0xa4, 0xb4, 0x5a, 0x2f, 0x90, 0x45, 0x11, 0x80, 0x37, 0x72, + 0xde, 0xef, 0xf7, 0xe6, 0x7d, 0xcd, 0x7b, 0x63, 0x5a, 0xb0, 0x75, 0x46, 0xac, 0xa2, 0x66, 0x94, + 0x2c, 0xf5, 0x94, 0xb4, 0x94, 0x92, 0xd6, 0x6e, 0x50, 0xc5, 0xa4, 0x86, 0x4d, 0x54, 0x5b, 0x6e, + 0x68, 0x94, 0x3c, 0x55, 0x74, 0x5d, 0xa6, 0x1d, 0x9d, 0x94, 0xec, 0x73, 0x93, 0x58, 0x45, 0x47, + 0x66, 0xe0, 0x3b, 0x2e, 0xab, 0xe8, 0xb2, 0x8a, 0xaf, 0x66, 0x2d, 0x6f, 0x36, 0x35, 0xfb, 0xb4, + 0x53, 0x2b, 0xaa, 0x46, 0xab, 0xd4, 0x34, 0x9a, 0x46, 0x89, 0x29, 0xa8, 0x75, 0x1a, 0xec, 0x8d, + 0xbd, 0xb0, 0x27, 0x57, 0xf1, 0xf2, 0x4a, 0xd0, 0x1c, 0xc3, 0xb4, 0x35, 0xa3, 0xed, 0xed, 0xba, + 0x7c, 0x2b, 0x28, 0xf4, 0x19, 0xb4, 0x7c, 0x3b, 0x28, 0x3a, 0x53, 0x74, 0xad, 0xae, 0xd8, 0xc4, + 0x93, 0xae, 0x86, 0xa4, 0x1a, 0x79, 0x2a, 0x07, 0x54, 0xaf, 0xfd, 0x1e, 0x43, 0x76, 0x5f, 0x37, + 0x6a, 0x8a, 0x7e, 0x6c, 0x12, 0xf5, 0xe4, 0xdc, 0x24, 0xf8, 0x03, 0x48, 0x9f, 0x11, 0x6a, 0x69, + 0x46, 0x5b, 0xd6, 0xcc, 0xb3, 0x2d, 0x61, 0x6a, 0x15, 0xdd, 0x49, 0x89, 0xf9, 0x62, 0xd0, 0xf5, + 0xbd, 0x96, 0x69, 0x9f, 0x1f, 0xc4, 0xaa, 0x29, 0x0f, 0xfb, 0xd0, 0x3c, 0xdb, 0x0a, 0x51, 0xcb, + 0x42, 0xfc, 0xa6, 0xd4, 0x32, 0x96, 0x20, 0x6f, 0x19, 0x1d, 0xaa, 0x12, 0xd9, 0xa4, 0xa4, 0xa1, + 0x3d, 0x93, 0x2d, 0xad, 0xdd, 0xd4, 0x89, 0x90, 0x58, 0x45, 0x77, 0x92, 0x52, 0xf6, 0xbf, 0x5d, + 0x14, 0xfb, 0xf3, 0xbf, 0x9f, 0xc7, 0x13, 0x34, 0xfe, 0xdb, 0x04, 0x3a, 0x40, 0x55, 0xec, 0xa2, + 0x8f, 0x18, 0xf8, 0x98, 0x61, 0xb1, 0x04, 0x73, 0x41, 0x1d, 0x8a, 0xae, 0x0b, 0xd3, 0x13, 0x6c, + 0x40, 0xd5, 0x59, 0xbf, 0x9a, 0x8a, 0xae, 0xe3, 0x47, 0x70, 0xab, 0x4e, 0x2c, 0x5b, 0x6b, 0x2b, + 0x4e, 0x98, 0x42, 0xc6, 0xf0, 0x63, 0x8d, 0x99, 0xaa, 0x2e, 0xf9, 0x28, 0x01, 0x8b, 0x1e, 0xc1, + 0xe2, 0x18, 0x6d, 0x8e, 0x59, 0xc9, 0x09, 0x66, 0x4d, 0x55, 0xf3, 0x23, 0x0a, 0x1d, 0xdb, 0x3e, + 0x85, 0x34, 0xcb, 0x9a, 0x6a, 0xe8, 0x72, 0xa7, 0x6e, 0x0a, 0x29, 0xa6, 0xe3, 0xbd, 0xe2, 0x4d, + 0x8b, 0xb2, 0xf8, 0x64, 0xf7, 0xe8, 0xc8, 0x53, 0x70, 0x10, 0xaf, 0xa6, 0xfa, 0xca, 0x9e, 0xd4, + 0xcd, 0x80, 0x6e, 0x5b, 0x35, 0x85, 0xf4, 0x9b, 0xea, 0x3e, 0xd9, 0x19, 0xab, 0xfb, 0x44, 0x35, + 0xf1, 0x36, 0x0c, 0x5e, 0x65, 0xe5, 0x54, 0xc8, 0x4c, 0x70, 0x3d, 0x5e, 0x85, 0x3e, 0xb4, 0x72, + 0xea, 0xd4, 0xd3, 0x80, 0x48, 0x2c, 0x53, 0xc8, 0x4e, 0x64, 0x0e, 0x36, 0xd9, 0xb3, 0xcc, 0x00, + 0xb5, 0x49, 0x89, 0x30, 0x7b, 0x33, 0xea, 0x3e, 0x25, 0xf8, 0x33, 0xc8, 0x0c, 0xa8, 0x9a, 0xda, + 0x32, 0x85, 0x1c, 0xe3, 0x96, 0x6f, 0x1e, 0x8b, 0x87, 0x3b, 0x3f, 0xf3, 0x07, 0x63, 0x60, 0xc9, + 0x43, 0xb5, 0x65, 0xe2, 0x5f, 0x41, 0x36, 0xa0, 0xbe, 0x2c, 0xcc, 0x31, 0xfd, 0xdb, 0x6f, 0xa6, + 0xbf, 0xec, 0xdb, 0x20, 0xe3, 0xdf, 0xa0, 0x8c, 0xef, 0xfb, 0x1d, 0x70, 0xce, 0x21, 0x9e, 0xe8, + 0xfc, 0xd0, 0x3c, 0xe7, 0x20, 0xfa, 0x03, 0xe7, 0x14, 0xea, 0xfc, 0xcd, 0x02, 0xe7, 0xd4, 0xe7, + 0x36, 0xa4, 0x14, 0x95, 0x15, 0x7a, 0x9d, 0xb4, 0xcf, 0x85, 0x85, 0x09, 0x4c, 0xae, 0x0a, 0x2e, + 0x74, 0x97, 0xb4, 0xcf, 0x9d, 0x3d, 0x3d, 0xa2, 0xa2, 0xeb, 0xc6, 0x53, 0x61, 0x71, 0x22, 0xd3, + 0xdb, 0xa4, 0xe2, 0x40, 0xf1, 0x3d, 0x48, 0x5a, 0xb6, 0x62, 0x13, 0xd9, 0x68, 0x34, 0x04, 0x61, + 0x02, 0x2f, 0x51, 0xe5, 0x19, 0xf0, 0x71, 0xa3, 0x81, 0xef, 0x02, 0xef, 0x91, 0xda, 0xc2, 0xad, + 0x89, 0x9c, 0x19, 0x97, 0xd3, 0xc6, 0x1f, 0x41, 0xb6, 0x41, 0x95, 0x66, 0x8b, 0xb4, 0x6d, 0xcb, + 0x75, 0x6f, 0x65, 0x02, 0x71, 0xba, 0x9a, 0x19, 0xa0, 0x99, 0x87, 0x0f, 0x60, 0x76, 0x48, 0x77, + 0x9d, 0xbc, 0x3d, 0x91, 0x3f, 0xdc, 0x8d, 0xf9, 0xf9, 0xe1, 0x1f, 0x13, 0x5f, 0x76, 0xd1, 0x36, + 0xac, 0x42, 0xde, 0xed, 0x07, 0xab, 0x3b, 0x46, 0xbb, 0xa1, 0x35, 0x3b, 0x94, 0xf5, 0x08, 0xcc, + 0xdf, 0xdd, 0xd8, 0xda, 0xd8, 0xde, 0xb8, 0xfb, 0x2e, 0xcc, 0xc3, 0xcc, 0x63, 0xb7, 0xc5, 0x63, + 0x5e, 0x7c, 0x77, 0x43, 0xbc, 0xb7, 0x21, 0x96, 0xbf, 0xee, 0xa2, 0xff, 0x70, 0xf0, 0x01, 0xcc, + 0x7c, 0xe2, 0x76, 0xdc, 0xf5, 0x22, 0x6c, 0x40, 0x3e, 0xd8, 0xe7, 0x45, 0xee, 0xe1, 0xd1, 0x27, + 0x5b, 0xa1, 0xd5, 0x32, 0x5b, 0x2d, 0xc3, 0xcf, 0x21, 0x73, 0xcc, 0x1a, 0xe5, 0xaa, 0xbb, 0xfb, + 0xfa, 0x47, 0x70, 0x1f, 0x16, 0xc7, 0xb7, 0x6c, 0xf8, 0xc1, 0x98, 0x36, 0x2c, 0xa6, 0x2b, 0xba, + 0xee, 0x91, 0x89, 0x05, 0x9f, 0x01, 0xde, 0x1d, 0x76, 0xb8, 0xbe, 0xd2, 0x7d, 0xd8, 0x83, 0x95, + 0x09, 0xfd, 0x17, 0x7e, 0xf8, 0xaa, 0x76, 0x1a, 0x52, 0xff, 0x77, 0x04, 0x7c, 0xff, 0x78, 0xac, + 0xff, 0x15, 0xc1, 0x5f, 0x10, 0xcc, 0x07, 0x7b, 0xa7, 0x18, 0x7f, 0xb2, 0x7b, 0x14, 0x58, 0xb4, + 0x55, 0x53, 0x8c, 0x9f, 0xec, 0x1c, 0xc1, 0x5c, 0xa0, 0x5b, 0x89, 0x53, 0x95, 0x83, 0x00, 0x8e, + 0x58, 0xa6, 0x18, 0xdf, 0x3b, 0x0e, 0x92, 0x9b, 0x94, 0x88, 0xf1, 0xfd, 0xea, 0x1e, 0x2c, 0x84, + 0x7a, 0x87, 0xc8, 0x39, 0x67, 0x15, 0x96, 0xc2, 0x67, 0x5e, 0x4c, 0xb0, 0x33, 0x1c, 0xc4, 0x0f, + 0xe3, 0x3d, 0x1f, 0x3c, 0x84, 0x62, 0xbc, 0xf2, 0xe8, 0x11, 0xbc, 0x0f, 0xd3, 0x15, 0x56, 0xf9, + 0x2c, 0x7d, 0xf3, 0x81, 0xc3, 0x26, 0x72, 0x4e, 0x99, 0xc1, 0x42, 0xf0, 0x20, 0x89, 0x09, 0x56, + 0x3c, 0xb0, 0x09, 0x89, 0x63, 0xa7, 0x8e, 0xd7, 0xdf, 0x81, 0x35, 0xc8, 0xf9, 0x4e, 0x8c, 0x18, + 0x7f, 0xdc, 0x68, 0x40, 0x76, 0x78, 0x1c, 0xc4, 0xa9, 0xc7, 0x6d, 0xa8, 0x40, 0xf2, 0xa7, 0xfd, + 0xea, 0x5b, 0xdf, 0x02, 0x11, 0x16, 0xc3, 0xc5, 0xef, 0x6d, 0x27, 0x8c, 0x54, 0xb5, 0xb7, 0xa3, + 0x34, 0x0f, 0x33, 0x5e, 0x19, 0x61, 0xfe, 0x79, 0x17, 0x4d, 0xf5, 0xba, 0x08, 0x49, 0xb7, 0x20, + 0x13, 0x28, 0x0c, 0x26, 0x4a, 0xf4, 0xba, 0x88, 0x93, 0x0a, 0x80, 0x47, 0x33, 0xcb, 0xe4, 0x7c, + 0xaf, 0x8b, 0x66, 0xa4, 0x3c, 0xf0, 0xfd, 0x80, 0xb0, 0xd5, 0x54, 0xaf, 0x8b, 0x40, 0xc2, 0x30, + 0xed, 0xba, 0xcb, 0xd6, 0x16, 0x7a, 0x5d, 0x94, 0x97, 0xe6, 0x20, 0xc1, 0x9c, 0x61, 0x4b, 0x42, + 0xaf, 0x8b, 0x96, 0xa4, 0x05, 0x48, 0x0e, 0xcc, 0x64, 0xcb, 0x2b, 0xbd, 0x2e, 0x5a, 0x3e, 0xe4, + 0x78, 0x94, 0x9b, 0x3a, 0xe4, 0x78, 0x2e, 0x97, 0x38, 0xe4, 0xf8, 0x99, 0x1c, 0x7f, 0xc8, 0xf1, + 0x90, 0x4b, 0x1d, 0x72, 0x7c, 0x3e, 0xb7, 0x70, 0xc8, 0xf1, 0x4b, 0x39, 0xe1, 0x90, 0xe3, 0x97, + 0x73, 0x2b, 0x6b, 0x57, 0x69, 0xc8, 0xee, 0x50, 0xa2, 0xd8, 0xe4, 0xff, 0x7c, 0x4b, 0x12, 0x27, + 0xdd, 0x92, 0xde, 0xe2, 0xad, 0xe8, 0x27, 0xaf, 0xbd, 0x15, 0x45, 0xb7, 0xa0, 0xe8, 0x16, 0x14, + 0xdd, 0x82, 0xa2, 0x5b, 0xd0, 0xdb, 0xbd, 0x05, 0xcd, 0x7d, 0xfd, 0x71, 0xe8, 0xcf, 0x55, 0x69, + 0x71, 0x38, 0x69, 0x52, 0x17, 0xd7, 0xa8, 0xff, 0x22, 0xad, 0x85, 0x87, 0xcd, 0xdc, 0xc5, 0x35, + 0x0a, 0x2e, 0x49, 0x1b, 0x63, 0xa7, 0xce, 0xe2, 0xc5, 0x35, 0x1a, 0xb3, 0x2e, 0x09, 0xbe, 0x19, + 0x94, 0xbe, 0xb8, 0x46, 0x83, 0x37, 0x29, 0x3f, 0x98, 0x43, 0x70, 0x71, 0x8d, 0xbc, 0x67, 0x09, + 0xf7, 0x27, 0x51, 0xf2, 0xe2, 0x1a, 0xb9, 0x8f, 0xd2, 0xb2, 0x7f, 0x14, 0x65, 0x2e, 0xae, 0xd1, + 0xf0, 0x75, 0xed, 0x9f, 0x69, 0x98, 0xad, 0x12, 0x53, 0x57, 0xd4, 0x68, 0xcc, 0x44, 0x63, 0x26, + 0x1a, 0x33, 0xd1, 0x98, 0x89, 0xc6, 0x4c, 0x34, 0x66, 0xbe, 0xf3, 0x31, 0xf3, 0x4d, 0x1a, 0x52, + 0xfb, 0xc4, 0x8e, 0x46, 0x4c, 0x34, 0x62, 0xa2, 0x11, 0x13, 0x8d, 0x98, 0x68, 0xc4, 0x44, 0x23, + 0xe6, 0xbb, 0x1e, 0x31, 0xdd, 0x38, 0xa4, 0x7c, 0xbd, 0x09, 0xbf, 0x3f, 0x6c, 0xdc, 0x06, 0xb5, + 0x65, 0xaa, 0xb4, 0x9b, 0x84, 0xcd, 0x99, 0xa4, 0x04, 0xde, 0x3f, 0xd2, 0xfe, 0x84, 0xd0, 0x41, + 0x6c, 0xd0, 0xae, 0x0d, 0x6a, 0x57, 0x1d, 0x10, 0xfe, 0x18, 0x66, 0xfd, 0x4c, 0xa7, 0x80, 0x27, + 0x0f, 0x99, 0xcc, 0x50, 0x83, 0x53, 0xc2, 0x52, 0xa8, 0x61, 0x0f, 0xb7, 0x4f, 0x8c, 0x6c, 0x8f, + 0x82, 0x6d, 0x7a, 0x60, 0xc3, 0x01, 0xe4, 0x47, 0x74, 0xbc, 0x7e, 0xf2, 0xe0, 0x90, 0x2e, 0xc7, + 0x9a, 0x55, 0x48, 0xd5, 0x89, 0xa5, 0x52, 0x8d, 0x7d, 0xa0, 0x17, 0x66, 0x1c, 0x13, 0xaa, 0xfe, + 0xa5, 0x0f, 0x1f, 0x7c, 0xd9, 0x45, 0xf7, 0x21, 0x07, 0xa9, 0xfe, 0xe7, 0x76, 0x83, 0xda, 0x18, + 0xdd, 0x85, 0x05, 0xc8, 0x05, 0x3e, 0x98, 0xb3, 0xe5, 0x2d, 0x07, 0xb8, 0x3b, 0x64, 0x63, 0xb4, + 0x2d, 0x2d, 0x41, 0xca, 0x17, 0x30, 0xdf, 0xc7, 0xd7, 0xdb, 0x90, 0x0b, 0x7b, 0x31, 0xfc, 0xfe, + 0xea, 0xff, 0x16, 0xca, 0xb2, 0xe7, 0xeb, 0xfe, 0x51, 0xf6, 0xbe, 0x57, 0xd9, 0xfb, 0xdb, 0x14, + 0xa4, 0xfd, 0xf3, 0x0a, 0xff, 0x18, 0xd2, 0x44, 0x3d, 0x35, 0x64, 0x4a, 0xbe, 0xe8, 0x10, 0xcb, + 0x16, 0xd0, 0x2a, 0xba, 0xc3, 0x4b, 0xfc, 0x3f, 0xba, 0x88, 0xb3, 0x69, 0x87, 0x54, 0x53, 0x8e, + 0xb4, 0xea, 0x0a, 0xf1, 0x8f, 0x00, 0x3c, 0xb0, 0xa9, 0x9f, 0xb3, 0x24, 0xfb, 0xa1, 0x49, 0x17, + 0x6a, 0xea, 0xe7, 0xf8, 0x3d, 0x98, 0x33, 0x15, 0xaa, 0xb4, 0x88, 0x4d, 0xa8, 0x6c, 0x52, 0xa3, + 0xa6, 0x93, 0x16, 0x4b, 0xae, 0x1f, 0x9f, 0x1b, 0x40, 0x8e, 0x5c, 0x04, 0x7e, 0x07, 0x78, 0x4a, + 0xea, 0x1a, 0x25, 0xaa, 0x2d, 0x70, 0x21, 0xf4, 0x40, 0x82, 0x37, 0x07, 0x1d, 0xef, 0x8b, 0x0e, + 0x69, 0xab, 0xa7, 0x2c, 0xdd, 0x7e, 0x68, 0xda, 0x15, 0xff, 0x82, 0x49, 0x1d, 0xb8, 0xad, 0xb5, + 0x88, 0x4c, 0x9e, 0xa9, 0x84, 0xd4, 0x49, 0x9d, 0xe5, 0x36, 0x00, 0x77, 0xc4, 0x7b, 0x9e, 0x14, + 0xaf, 0x43, 0xaa, 0xd3, 0xa6, 0x44, 0x51, 0x4f, 0x95, 0x9a, 0x4e, 0x58, 0x1e, 0x03, 0xf1, 0xf0, + 0x09, 0xd7, 0xbe, 0xe2, 0x20, 0x13, 0x98, 0xce, 0xb8, 0x02, 0xfe, 0xdb, 0xa1, 0xec, 0xd7, 0x14, + 0x8e, 0xac, 0xbf, 0x78, 0x9f, 0x0c, 0x71, 0x37, 0x0f, 0x72, 0x38, 0x75, 0xf1, 0x49, 0xa9, 0x7b, + 0x00, 0x8b, 0x6d, 0xa2, 0x35, 0x4f, 0x6b, 0x06, 0x95, 0x95, 0xfa, 0x19, 0xa1, 0xb6, 0x66, 0x11, + 0xa7, 0x1f, 0x8f, 0x04, 0x7a, 0xa1, 0x8f, 0xab, 0xf8, 0x61, 0xf8, 0x1e, 0xe4, 0x06, 0x0a, 0x2c, + 0x43, 0xd7, 0x54, 0xcd, 0x1e, 0x09, 0xfc, 0x6c, 0x1f, 0x71, 0xec, 0x02, 0x70, 0x11, 0xb2, 0xa6, + 0xa2, 0x7e, 0x4e, 0x6c, 0xd9, 0x36, 0x0c, 0xb9, 0xa6, 0x35, 0x47, 0x83, 0xef, 0xca, 0x4f, 0x0c, + 0x43, 0xd2, 0x9a, 0xe3, 0xeb, 0x66, 0xe6, 0x8d, 0xea, 0x86, 0x7f, 0x65, 0xdd, 0xdc, 0x87, 0x3c, + 0x35, 0x3a, 0x8e, 0xe6, 0x60, 0x00, 0x92, 0x21, 0xc6, 0xbc, 0x8b, 0x0a, 0xba, 0x5f, 0x82, 0xac, + 0x47, 0xee, 0x3b, 0x0f, 0x21, 0x5a, 0xc6, 0x95, 0xf7, 0x5d, 0x1f, 0x29, 0xbb, 0xd4, 0xa4, 0xb2, + 0x93, 0x7e, 0x87, 0x7a, 0x2f, 0x0b, 0xb1, 0x17, 0x2f, 0x0b, 0xb1, 0x6f, 0x5f, 0x16, 0xd0, 0xaf, + 0x2f, 0x0b, 0xe8, 0x0f, 0x97, 0x05, 0xf4, 0xd5, 0x65, 0x01, 0xf5, 0x2e, 0x0b, 0xe8, 0xc5, 0x65, + 0x01, 0x7d, 0x73, 0x59, 0x40, 0xff, 0xba, 0x2c, 0xc4, 0xbe, 0xbd, 0x2c, 0xa0, 0xdf, 0x5c, 0x15, + 0x62, 0xcf, 0xaf, 0x0a, 0xa8, 0x77, 0x55, 0x88, 0xbd, 0xb8, 0x2a, 0xc4, 0x3e, 0xfd, 0x65, 0xd3, + 0x30, 0x3f, 0x6f, 0x16, 0xcf, 0x0c, 0xdd, 0x26, 0x94, 0x2a, 0xc5, 0x8e, 0x55, 0x62, 0x0f, 0x0d, + 0x83, 0xb6, 0x36, 0x4d, 0x6a, 0x9c, 0x69, 0x75, 0x42, 0x37, 0xfb, 0xe2, 0x92, 0x59, 0x6b, 0x1a, + 0x25, 0xf2, 0xcc, 0xf6, 0x7e, 0xfa, 0xf3, 0xda, 0x9f, 0x39, 0xd5, 0xa6, 0xd9, 0x1d, 0xe0, 0xde, + 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x96, 0x98, 0x7f, 0x16, 0x19, 0x25, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/infraprotect_firewall_ruleset/crudapi/api.vesapi.go b/pbgo/extschema/schema/infraprotect_firewall_ruleset/crudapi/api.vesapi.go index 96c8f0e18..e31474728 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_ruleset/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_firewall_ruleset/crudapi/api.vesapi.go @@ -3099,10 +3099,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_firewall_ruleset/object.pb.go b/pbgo/extschema/schema/infraprotect_firewall_ruleset/object.pb.go index 1c97dadd7..2898d7d82 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_ruleset/object.pb.go +++ b/pbgo/extschema/schema/infraprotect_firewall_ruleset/object.pb.go @@ -236,46 +236,47 @@ func init() { } var fileDescriptor_092fc87526266e88 = []byte{ - // 615 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x4f, 0x13, 0x41, - 0x14, 0xc7, 0x3b, 0x2d, 0x16, 0x32, 0x10, 0x34, 0x7b, 0xaa, 0x20, 0x93, 0xa6, 0x5e, 0x48, 0x64, - 0x77, 0x23, 0x84, 0x88, 0x68, 0x30, 0x82, 0x09, 0x31, 0x81, 0x98, 0x14, 0x4e, 0x5e, 0xea, 0xec, - 0xec, 0xdb, 0x65, 0x74, 0xdb, 0xd9, 0xcc, 0xcc, 0x2e, 0x70, 0x30, 0x31, 0x26, 0xde, 0xfd, 0x06, - 0x5e, 0x8d, 0x9f, 0x42, 0xbc, 0xe8, 0x91, 0x10, 0x0f, 0x1c, 0x65, 0x7b, 0xe1, 0x48, 0xfc, 0x04, - 0xa6, 0xb3, 0x2c, 0xa1, 0xa4, 0x12, 0x08, 0xb7, 0x37, 0x79, 0xff, 0xff, 0x2f, 0x2f, 0xef, 0xbd, - 0x79, 0x78, 0x21, 0x05, 0xe5, 0x70, 0xe1, 0x2a, 0xb6, 0x05, 0x6d, 0xea, 0xf2, 0x4e, 0x20, 0x69, - 0x2c, 0x85, 0x06, 0xa6, 0x5b, 0x01, 0x97, 0xb0, 0x4d, 0xa3, 0xa8, 0x25, 0x93, 0x08, 0x14, 0x68, - 0x57, 0x78, 0x6f, 0x81, 0x69, 0xa7, 0x97, 0x17, 0xd6, 0x83, 0xdc, 0xe9, 0xe4, 0x4e, 0xe7, 0x52, - 0xe7, 0x84, 0x1d, 0x72, 0xbd, 0x95, 0x78, 0x0e, 0x13, 0x6d, 0x37, 0x14, 0xa1, 0x70, 0x0d, 0xc3, - 0x4b, 0x02, 0xf3, 0x32, 0x0f, 0x13, 0xe5, 0xec, 0x89, 0x47, 0xd7, 0xa9, 0x4a, 0xef, 0xc6, 0xa0, - 0x4e, 0x8d, 0x93, 0xfd, 0x46, 0x11, 0x6b, 0x2e, 0x3a, 0x45, 0xf2, 0x6e, 0x7f, 0xf2, 0xbc, 0xaf, - 0xd1, 0x9f, 0x4a, 0x41, 0x41, 0x27, 0xed, 0xb7, 0x37, 0x7e, 0x0e, 0xe1, 0xea, 0x2b, 0xd3, 0x01, - 0xeb, 0x31, 0x1e, 0x69, 0x83, 0xa6, 0x3e, 0xd5, 0xb4, 0x86, 0xea, 0x68, 0x7a, 0x74, 0x76, 0xca, - 0xe9, 0x6f, 0x47, 0x2e, 0x5c, 0x07, 0x4d, 0x37, 0x77, 0x63, 0x68, 0x9e, 0xc9, 0xad, 0x35, 0x7c, - 0x5b, 0xed, 0x2a, 0x0d, 0xed, 0xd6, 0x19, 0xa1, 0x6c, 0x08, 0xf7, 0x2f, 0x10, 0x36, 0x8c, 0xea, - 0x02, 0x67, 0x3c, 0xf7, 0xae, 0x17, 0xb4, 0x97, 0x78, 0x48, 0xc5, 0xc0, 0x6a, 0x15, 0x83, 0x98, - 0x77, 0xae, 0x31, 0x13, 0x67, 0x23, 0x06, 0x66, 0xa0, 0x06, 0xb1, 0x78, 0x5c, 0xfe, 0xf8, 0xac, - 0x9a, 0xe3, 0x7f, 0xec, 0xf5, 0x6a, 0x3a, 0xd8, 0xab, 0xfd, 0x2e, 0xe3, 0xe7, 0xb8, 0xb2, 0x0a, - 0xda, 0x5a, 0x4c, 0x41, 0xd9, 0x5c, 0xd8, 0x06, 0xa9, 0xb4, 0x4c, 0x98, 0x4e, 0x24, 0xd8, 0x12, - 0xa8, 0x3f, 0x53, 0x0f, 0xe6, 0x77, 0x98, 0x2d, 0x45, 0xa2, 0xc1, 0xb7, 0x7d, 0x5f, 0x28, 0xdb, - 0xa3, 0x8a, 0x33, 0xbb, 0x2d, 0x3a, 0x5c, 0x0b, 0x89, 0x57, 0xf0, 0x70, 0x13, 0xe2, 0x88, 0x32, - 0xb0, 0x16, 0x06, 0x63, 0xb6, 0x25, 0xd7, 0xf0, 0x5f, 0x4e, 0xa2, 0x40, 0xe2, 0x65, 0x5c, 0x5d, - 0x91, 0x40, 0xf5, 0x0d, 0x19, 0x2f, 0x20, 0x82, 0x1b, 0x32, 0x86, 0xd6, 0xb8, 0xba, 0x51, 0x43, - 0x1a, 0x6f, 0xf0, 0x48, 0xd1, 0x7c, 0x6b, 0x13, 0x0f, 0x87, 0xac, 0x65, 0x86, 0x98, 0x6f, 0xd2, - 0x93, 0x6b, 0x0d, 0x71, 0x35, 0x12, 0x1e, 0x8d, 0xce, 0x46, 0x59, 0x0d, 0x59, 0x2f, 0x6e, 0x7c, - 0x2a, 0xe3, 0xb1, 0x0d, 0x4d, 0x75, 0xa2, 0xae, 0xbc, 0xb1, 0xb9, 0x7c, 0xc0, 0xc6, 0xb6, 0xf0, - 0x68, 0xfe, 0xf1, 0x5b, 0x12, 0x02, 0x55, 0x2b, 0xd7, 0x2b, 0xd3, 0xa3, 0xb3, 0xf7, 0x06, 0xee, - 0x7b, 0x13, 0x82, 0x9e, 0x79, 0xb9, 0xfe, 0xed, 0xfd, 0xd4, 0xa5, 0x75, 0x37, 0xb1, 0x28, 0x0c, - 0xca, 0x7a, 0x8a, 0x31, 0x13, 0x1d, 0x9f, 0x9b, 0xcf, 0x56, 0xab, 0x0c, 0xe4, 0xaf, 0x14, 0x02, - 0x53, 0xdc, 0x39, 0xfd, 0xe2, 0xe4, 0xc1, 0xd2, 0x1d, 0x3c, 0x8e, 0xc7, 0x8a, 0x7a, 0x9d, 0x84, - 0xfb, 0x7f, 0x97, 0x6e, 0x3d, 0x9c, 0x99, 0x9d, 0x99, 0x5b, 0xfe, 0x82, 0xf6, 0x8f, 0x48, 0xe9, - 0xf0, 0x88, 0x94, 0x4e, 0x8e, 0x08, 0xfa, 0x90, 0x11, 0xf4, 0x35, 0x23, 0xe8, 0x57, 0x46, 0xd0, - 0x7e, 0x46, 0xd0, 0x61, 0x46, 0xd0, 0x9f, 0x8c, 0xa0, 0xe3, 0x8c, 0x94, 0x4e, 0x32, 0x82, 0x3e, - 0x77, 0x49, 0xe9, 0x7b, 0x97, 0xa0, 0xfd, 0x2e, 0x29, 0x1d, 0x76, 0x49, 0xe9, 0x35, 0x0d, 0x45, - 0xfc, 0x2e, 0x74, 0x52, 0x11, 0x69, 0x90, 0x92, 0x3a, 0x89, 0x72, 0x4d, 0x10, 0x08, 0xd9, 0xb6, - 0x63, 0x29, 0x52, 0xee, 0x83, 0xb4, 0x8b, 0xb4, 0x1b, 0x7b, 0xa1, 0x70, 0x61, 0x47, 0x9f, 0x5e, - 0x91, 0xab, 0x5c, 0x2f, 0xaf, 0x6a, 0x8e, 0xcb, 0xdc, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x22, - 0x3a, 0x7e, 0x63, 0x89, 0x05, 0x00, 0x00, + // 635 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4b, 0xdc, 0x4e, + 0x14, 0xc7, 0x77, 0x5c, 0x5d, 0x65, 0x14, 0x7f, 0x3f, 0x72, 0xda, 0x6a, 0x1d, 0x96, 0xed, 0x45, + 0xa8, 0x49, 0xa8, 0x22, 0x6d, 0x6d, 0xb1, 0xa0, 0x05, 0x29, 0x28, 0x85, 0xd5, 0x43, 0x29, 0x94, + 0xed, 0x64, 0xf2, 0x12, 0xa7, 0xcd, 0xee, 0x84, 0x99, 0x49, 0xd4, 0x43, 0xa1, 0x14, 0x7a, 0x2d, + 0xfd, 0x0f, 0x7a, 0x2d, 0xfd, 0x2b, 0x6a, 0x4f, 0x3d, 0x8a, 0x27, 0x8f, 0x35, 0x7b, 0xe9, 0xa5, + 0x20, 0x3d, 0xf6, 0x54, 0x76, 0x62, 0xc4, 0x95, 0xad, 0xe8, 0x61, 0x6f, 0x13, 0xbe, 0xdf, 0xef, + 0xe7, 0x3d, 0x32, 0x6f, 0x1e, 0xbe, 0x97, 0x82, 0x72, 0xb8, 0x70, 0x15, 0xdb, 0x86, 0x16, 0x75, + 0x79, 0x3b, 0x90, 0x34, 0x96, 0x42, 0x03, 0xd3, 0xcd, 0x80, 0x4b, 0xd8, 0xa1, 0x51, 0xd4, 0x94, + 0x49, 0x04, 0x0a, 0xb4, 0x2b, 0xbc, 0x57, 0xc0, 0xb4, 0xd3, 0xd5, 0x85, 0x75, 0x3b, 0x4f, 0x3a, + 0x79, 0xd2, 0xb9, 0x34, 0x39, 0x65, 0x87, 0x5c, 0x6f, 0x27, 0x9e, 0xc3, 0x44, 0xcb, 0x0d, 0x45, + 0x28, 0x5c, 0xc3, 0xf0, 0x92, 0xc0, 0x7c, 0x99, 0x0f, 0x73, 0xca, 0xd9, 0x53, 0x77, 0xaf, 0xd3, + 0x95, 0xde, 0x8b, 0x41, 0x9d, 0x06, 0xa7, 0x7b, 0x83, 0x22, 0xd6, 0x5c, 0xb4, 0x0b, 0xf1, 0x46, + 0xaf, 0x78, 0x3e, 0x57, 0xef, 0x95, 0x52, 0x50, 0xd0, 0x4e, 0x7b, 0xe3, 0xf5, 0x5f, 0x23, 0xb8, + 0xf2, 0xd4, 0xfc, 0x01, 0xeb, 0x3e, 0x1e, 0x6b, 0x81, 0xa6, 0x3e, 0xd5, 0xb4, 0x8a, 0x6a, 0x68, + 0x76, 0x7c, 0x7e, 0xc6, 0xe9, 0xfd, 0x1d, 0xb9, 0x71, 0x03, 0x34, 0xdd, 0xda, 0x8b, 0xa1, 0x71, + 0x66, 0xb7, 0xd6, 0xf1, 0x7f, 0x6a, 0x4f, 0x69, 0x68, 0x35, 0xcf, 0x08, 0x43, 0x86, 0x70, 0xeb, + 0x02, 0x61, 0xd3, 0xb8, 0x2e, 0x70, 0x26, 0xf3, 0xec, 0x46, 0x41, 0x7b, 0x82, 0x87, 0x55, 0x0c, + 0xac, 0x5a, 0x36, 0x88, 0x45, 0xe7, 0x1a, 0x77, 0xe2, 0x6c, 0xc6, 0xc0, 0x0c, 0xd4, 0x20, 0x96, + 0x3e, 0x0c, 0xbf, 0x7b, 0x54, 0xc9, 0xf1, 0xdf, 0xf6, 0xbb, 0x3d, 0x1d, 0xee, 0x57, 0xff, 0x94, + 0xb1, 0x8f, 0xcb, 0x6b, 0xa0, 0xad, 0x17, 0x29, 0x28, 0x9b, 0x0b, 0xdb, 0x20, 0x95, 0x96, 0x09, + 0xd3, 0x89, 0x04, 0x5b, 0x02, 0xf5, 0xe7, 0x6a, 0xc1, 0xe2, 0x2e, 0xb3, 0xa5, 0x48, 0x34, 0xf8, + 0xb6, 0xef, 0x0b, 0x65, 0x7b, 0x54, 0x71, 0x66, 0xb7, 0x44, 0x9b, 0x6b, 0x21, 0xfb, 0xe8, 0x4a, + 0xd3, 0xb6, 0x4f, 0xa5, 0x5f, 0x58, 0x30, 0xc3, 0xa3, 0x0d, 0x88, 0x23, 0xca, 0xc0, 0x7a, 0xd6, + 0xbf, 0xd2, 0x8e, 0xe4, 0x1a, 0xfe, 0x59, 0x2a, 0x51, 0x70, 0x69, 0x9d, 0xae, 0x8e, 0x3d, 0x5c, + 0x59, 0x95, 0x40, 0xf5, 0x80, 0x6b, 0x3c, 0x86, 0x08, 0x06, 0x5a, 0x03, 0xf0, 0xf0, 0x3a, 0x57, + 0x83, 0xbe, 0x93, 0xfa, 0x4b, 0x3c, 0x56, 0x8c, 0x88, 0xb5, 0x85, 0x47, 0x43, 0xd6, 0x34, 0xa3, + 0x96, 0xcf, 0xfb, 0x83, 0x6b, 0x8d, 0xda, 0x5a, 0x24, 0x3c, 0x1a, 0x9d, 0x0d, 0x5c, 0x25, 0x64, + 0xdd, 0x73, 0xfd, 0xfd, 0x10, 0x9e, 0xd8, 0xd4, 0x54, 0x27, 0xea, 0xca, 0xef, 0x2a, 0xb7, 0xf7, + 0x79, 0x57, 0x4d, 0x3c, 0x9e, 0xaf, 0xa7, 0xa6, 0x84, 0x40, 0x55, 0x87, 0x6a, 0xe5, 0xd9, 0xf1, + 0xf9, 0x9b, 0x7d, 0x5f, 0x65, 0x03, 0x82, 0x6e, 0x78, 0xa5, 0xf6, 0xe5, 0xcd, 0xcc, 0xa5, 0x7d, + 0x37, 0xb0, 0x28, 0x02, 0xca, 0x7a, 0x88, 0x31, 0x13, 0x6d, 0x9f, 0x9b, 0x95, 0x50, 0x2d, 0xf7, + 0xe5, 0xaf, 0x16, 0x06, 0xd3, 0xdc, 0x39, 0xff, 0xd2, 0xf4, 0xe1, 0xf2, 0xff, 0x78, 0x12, 0x4f, + 0x14, 0xfd, 0x3a, 0x09, 0xf7, 0x7f, 0x2f, 0x8f, 0xdc, 0x99, 0x9b, 0x9f, 0x5b, 0x58, 0xf9, 0x84, + 0x0e, 0x8e, 0x49, 0xe9, 0xe8, 0x98, 0x94, 0x4e, 0x8e, 0x09, 0x7a, 0x9b, 0x11, 0xf4, 0x39, 0x23, + 0xe8, 0x7b, 0x46, 0xd0, 0x41, 0x46, 0xd0, 0x51, 0x46, 0xd0, 0x8f, 0x8c, 0xa0, 0x9f, 0x19, 0x29, + 0x9d, 0x64, 0x04, 0x7d, 0xec, 0x90, 0xd2, 0xd7, 0x0e, 0x41, 0x07, 0x1d, 0x52, 0x3a, 0xea, 0x90, + 0xd2, 0x73, 0x1a, 0x8a, 0xf8, 0x75, 0xe8, 0xa4, 0x22, 0xd2, 0x20, 0x25, 0x75, 0x12, 0xe5, 0x9a, + 0x43, 0x20, 0x64, 0xcb, 0x8e, 0xa5, 0x48, 0xb9, 0x0f, 0xd2, 0x2e, 0x64, 0x37, 0xf6, 0x42, 0xe1, + 0xc2, 0xae, 0x3e, 0xdd, 0x75, 0x57, 0xd9, 0xb1, 0x5e, 0xc5, 0xac, 0xc0, 0x85, 0xbf, 0x01, 0x00, + 0x00, 0xff, 0xff, 0x18, 0x10, 0x36, 0x97, 0x2f, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.pb.go b/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.pb.go index 71f38c008..5048dc36f 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.pb.go +++ b/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.pb.go @@ -822,98 +822,99 @@ func init() { } var fileDescriptor_9edcc78438cd9b22 = []byte{ - // 1448 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xce, 0xd8, 0x8e, 0x13, 0x8f, 0xd3, 0xc4, 0x1d, 0xfa, 0xc3, 0x35, 0xd5, 0xca, 0x98, 0x0a, - 0x45, 0x05, 0xdb, 0x55, 0x10, 0x6a, 0x52, 0xda, 0xd2, 0x24, 0xb5, 0xa3, 0x94, 0x34, 0xa9, 0xd6, - 0x6e, 0x54, 0x81, 0xca, 0x6a, 0xbd, 0xfb, 0xec, 0x2e, 0xb5, 0xbd, 0xcb, 0xcc, 0xac, 0xd3, 0x08, - 0x45, 0xaa, 0x2a, 0x84, 0xb8, 0x20, 0x21, 0x21, 0x2e, 0xa8, 0x07, 0x10, 0x42, 0x42, 0xe2, 0x1f, - 0x40, 0xca, 0x25, 0x37, 0xaa, 0x1e, 0x50, 0x45, 0x2f, 0x3d, 0x52, 0x87, 0x43, 0x8f, 0x45, 0xe2, - 0x0f, 0x40, 0x3b, 0xb3, 0x76, 0x6d, 0xd7, 0x2d, 0xb1, 0xd3, 0x93, 0x67, 0xe6, 0xbd, 0xef, 0x7b, - 0xf3, 0xde, 0x7c, 0xf3, 0x3c, 0x8b, 0x2f, 0x34, 0x80, 0x65, 0x2c, 0x3b, 0xcb, 0x8c, 0x1b, 0x50, - 0xd3, 0xb3, 0x56, 0xbd, 0x4c, 0x75, 0x87, 0xda, 0x1c, 0x0c, 0xae, 0x95, 0x2d, 0x0a, 0x1b, 0x7a, - 0xb5, 0xaa, 0x51, 0xb7, 0x0a, 0x0c, 0x78, 0xd6, 0x71, 0x4b, 0x55, 0xcb, 0xd0, 0x0c, 0xea, 0x9a, - 0xba, 0x63, 0x65, 0x3c, 0x3f, 0x9b, 0xbc, 0x2d, 0x19, 0x32, 0x92, 0x21, 0xf3, 0x52, 0x86, 0x44, - 0xba, 0x62, 0xf1, 0x1b, 0x6e, 0x29, 0x63, 0xd8, 0xb5, 0x6c, 0xc5, 0xae, 0xd8, 0x59, 0xc1, 0x51, - 0x72, 0xcb, 0x62, 0x26, 0x26, 0x62, 0x24, 0xb9, 0x13, 0xc7, 0x2b, 0xb6, 0x5d, 0xa9, 0x42, 0x56, - 0x77, 0xac, 0xac, 0x5e, 0xaf, 0xdb, 0x5c, 0xe7, 0x96, 0x5d, 0x67, 0xbe, 0xf5, 0x75, 0xdf, 0xda, - 0xe6, 0x80, 0x9a, 0xc3, 0x37, 0x7d, 0x63, 0xa2, 0x3b, 0x31, 0xa0, 0xd4, 0xa6, 0x2d, 0xe0, 0xec, - 0x20, 0x49, 0xdb, 0xa5, 0x4f, 0xc1, 0xe0, 0x3e, 0xf2, 0xf4, 0x20, 0x48, 0xbe, 0xe9, 0x40, 0x7b, - 0xaf, 0xdd, 0x40, 0xdb, 0xe9, 0x4c, 0xe4, 0x58, 0xb7, 0xb1, 0x13, 0x97, 0xea, 0x36, 0x35, 0x80, - 0x41, 0xbd, 0xd1, 0x03, 0x4f, 0xf6, 0xf8, 0x58, 0xb0, 0xa1, 0x75, 0x79, 0xa4, 0xfe, 0x41, 0x78, - 0x52, 0x05, 0xa7, 0xaa, 0x1b, 0xa0, 0xc2, 0x67, 0x2e, 0x30, 0x4e, 0x2e, 0xe0, 0xf1, 0x1a, 0x70, - 0xdd, 0xd4, 0xb9, 0x1e, 0x47, 0x49, 0x34, 0x1d, 0x9d, 0x39, 0x91, 0xe9, 0x3e, 0xc9, 0x35, 0x91, - 0xb8, 0x0f, 0xbb, 0x0c, 0x5c, 0x2f, 0x6e, 0x3a, 0xa0, 0xb6, 0x51, 0x44, 0xc7, 0x21, 0xe6, 0x80, - 0x11, 0x0f, 0x08, 0xf4, 0xd9, 0xcc, 0x00, 0x3a, 0xc8, 0xf8, 0xac, 0x05, 0x07, 0x0c, 0x8f, 0x75, - 0x61, 0xea, 0xfb, 0xad, 0x09, 0x8f, 0x2c, 0x53, 0x31, 0x34, 0xef, 0x57, 0x15, 0xd4, 0x24, 0x8b, - 0x63, 0x14, 0x98, 0xed, 0x52, 0x03, 0xb4, 0x06, 0x50, 0x66, 0xd9, 0xf5, 0x78, 0x30, 0x89, 0xa6, - 0x23, 0x0b, 0xa1, 0x27, 0xdb, 0x08, 0xa9, 0x53, 0x2d, 0xeb, 0xba, 0x34, 0x9e, 0x89, 0xdc, 0x3f, - 0x1f, 0x96, 0xfb, 0x4e, 0x1d, 0xc4, 0x53, 0xed, 0x94, 0x99, 0x63, 0xd7, 0x19, 0xa4, 0x7e, 0x45, - 0x18, 0x2f, 0x01, 0x6f, 0x95, 0xe0, 0x38, 0x8e, 0xd4, 0xf5, 0x1a, 0x30, 0x47, 0x37, 0x40, 0xd4, - 0x20, 0xa2, 0x3e, 0x5b, 0x20, 0x04, 0x87, 0xbc, 0x89, 0x48, 0x2f, 0xa2, 0x8a, 0x31, 0xb9, 0x89, - 0xbd, 0x88, 0x82, 0x4c, 0x2b, 0xdb, 0xb4, 0xa6, 0x73, 0xb1, 0x9d, 0xc9, 0x99, 0x85, 0x81, 0xb2, - 0x17, 0x7b, 0x90, 0x34, 0x79, 0xc1, 0xb2, 0x68, 0x9b, 0xa0, 0x4e, 0xd2, 0xae, 0xb5, 0xd4, 0xbf, - 0xa3, 0x38, 0xda, 0xe1, 0x49, 0x3e, 0xc1, 0x13, 0x54, 0x26, 0x24, 0x62, 0x8b, 0xc8, 0xd1, 0x99, - 0xf7, 0x87, 0xa9, 0xbb, 0x5f, 0x01, 0x35, 0xea, 0x13, 0x7a, 0x11, 0xfb, 0x16, 0x3b, 0xf4, 0x92, - 0x62, 0x93, 0xb3, 0x1d, 0x12, 0x1a, 0x15, 0x9b, 0x49, 0xf6, 0x95, 0xd0, 0x12, 0xf0, 0x3e, 0xf2, - 0x59, 0xc3, 0x53, 0x6c, 0x93, 0x71, 0xa8, 0x69, 0x6d, 0x92, 0x31, 0x41, 0xf2, 0x56, 0x0f, 0x49, - 0x41, 0x78, 0x3d, 0x4f, 0x35, 0x29, 0xe1, 0x97, 0x5b, 0x84, 0xd7, 0x7d, 0x3d, 0x86, 0x05, 0xcb, - 0xec, 0xa0, 0x27, 0xf2, 0x7f, 0x5a, 0xbc, 0x86, 0xc3, 0x8c, 0xeb, 0xdc, 0x65, 0xf1, 0x1f, 0xee, - 0xa2, 0x64, 0x70, 0x3a, 0x3a, 0x33, 0x37, 0x50, 0x88, 0x82, 0x00, 0xcb, 0x34, 0x16, 0x82, 0x3b, - 0x5b, 0x48, 0xf5, 0xf9, 0xc8, 0x32, 0x3e, 0x48, 0xa1, 0x0c, 0x94, 0x5a, 0xf5, 0x8a, 0x26, 0xdb, - 0x0d, 0x8b, 0x8f, 0x8b, 0x10, 0xc7, 0x5f, 0x70, 0x27, 0xcb, 0xa2, 0x02, 0xb1, 0x36, 0x4c, 0xae, - 0x33, 0xb2, 0x8e, 0xe3, 0x26, 0x54, 0x81, 0x83, 0xa9, 0x49, 0x1b, 0x98, 0x6d, 0xc6, 0xc8, 0x1e, - 0x18, 0x8f, 0xf8, 0x68, 0xd5, 0x07, 0xb7, 0x78, 0xaf, 0xe1, 0x63, 0xa6, 0xc5, 0xf4, 0x52, 0xb5, - 0x1f, 0x31, 0xde, 0x03, 0xf1, 0xd1, 0x16, 0xbc, 0x87, 0xb9, 0xe3, 0xc6, 0x5e, 0x0a, 0x8d, 0xa3, - 0x58, 0x20, 0xf5, 0x33, 0xc2, 0xd1, 0x15, 0x8b, 0xed, 0xf1, 0x96, 0xbe, 0x81, 0x27, 0xaa, 0x7a, - 0x09, 0xaa, 0x5a, 0xd9, 0xaa, 0x72, 0xa0, 0xfe, 0x6d, 0x8d, 0x8a, 0xb5, 0xbc, 0x58, 0x22, 0x6f, - 0xe2, 0x03, 0x14, 0x1c, 0x9b, 0x7a, 0x67, 0x02, 0x55, 0x93, 0xc5, 0x83, 0xc9, 0xe0, 0x74, 0x44, - 0x9d, 0x90, 0x8b, 0x79, 0xb1, 0x46, 0x4e, 0xe1, 0x43, 0xbe, 0x93, 0x3c, 0x94, 0x96, 0x6f, 0x48, - 0xf8, 0x12, 0x69, 0x93, 0x47, 0x28, 0x11, 0xa9, 0xdb, 0x63, 0x38, 0x26, 0xf7, 0x29, 0xef, 0xe7, - 0x32, 0x87, 0x1a, 0x39, 0x82, 0xc3, 0x1c, 0xea, 0x7a, 0x9d, 0x0b, 0x15, 0x46, 0x54, 0x7f, 0x36, - 0x44, 0xab, 0x89, 0xe1, 0xa0, 0x6b, 0x99, 0xb2, 0xdb, 0xa9, 0xde, 0x90, 0x24, 0x71, 0xd4, 0x04, - 0x66, 0x50, 0x4b, 0xb4, 0xf6, 0x78, 0x54, 0x66, 0xda, 0xb1, 0x44, 0x12, 0x78, 0xbc, 0x55, 0xe6, - 0xf8, 0x44, 0x12, 0x4d, 0x8f, 0xab, 0xed, 0x39, 0xd1, 0x71, 0x58, 0x14, 0x45, 0xa6, 0x14, 0x9d, - 0x59, 0x1e, 0x48, 0xbc, 0xbd, 0x89, 0x66, 0x56, 0x04, 0x57, 0xae, 0xce, 0xe9, 0xa6, 0xea, 0x13, - 0x13, 0x07, 0x47, 0x3b, 0xfe, 0xa4, 0x7d, 0x59, 0xac, 0xee, 0x2f, 0xce, 0xfc, 0x33, 0x42, 0x19, - 0xac, 0x33, 0x04, 0x99, 0xc3, 0xd8, 0xde, 0xa8, 0x03, 0xd5, 0xbc, 0xff, 0xbc, 0x78, 0x44, 0x5c, - 0xfc, 0x44, 0x4f, 0xc0, 0x75, 0x0b, 0x36, 0x5a, 0x2a, 0x8c, 0x08, 0x6f, 0x6f, 0xa5, 0xab, 0x79, - 0x1d, 0x78, 0x15, 0xcd, 0x6b, 0x72, 0x5f, 0xcd, 0xab, 0x80, 0xc7, 0x2b, 0xc0, 0x45, 0xbf, 0xf1, - 0xdb, 0xe0, 0xd0, 0x0d, 0x4c, 0x1d, 0xab, 0xc8, 0x09, 0xb9, 0x8e, 0xb1, 0xaf, 0x66, 0x06, 0xdc, - 0xef, 0x28, 0xfb, 0x6d, 0x5a, 0x11, 0xc9, 0x58, 0x00, 0x9e, 0x98, 0xc3, 0xd1, 0x0e, 0x19, 0x78, - 0x8a, 0xbd, 0x09, 0x9b, 0xbe, 0xba, 0xbd, 0x21, 0x39, 0x84, 0x47, 0x1b, 0x7a, 0xd5, 0x6d, 0x09, - 0x5b, 0x4e, 0xce, 0x04, 0x66, 0x51, 0xe2, 0x3c, 0x8e, 0xf5, 0x9e, 0xec, 0x20, 0xf8, 0x4b, 0xa1, - 0xf1, 0xd1, 0x58, 0x38, 0xf5, 0x1d, 0xc2, 0x13, 0x9d, 0x8a, 0x21, 0x05, 0x3c, 0x6a, 0x71, 0xa8, - 0xb1, 0xb8, 0x6c, 0xd0, 0xe7, 0xf6, 0xa5, 0x3d, 0x55, 0x72, 0x91, 0x53, 0x38, 0x2c, 0x5f, 0x8f, - 0xf1, 0x80, 0x60, 0x8d, 0xf7, 0xb0, 0xe6, 0x3c, 0xa3, 0x28, 0xbc, 0xef, 0x77, 0xf2, 0x21, 0xc2, - 0x87, 0xfb, 0xfe, 0xc7, 0x93, 0x04, 0x3e, 0xb2, 0x94, 0x2b, 0x6a, 0x6a, 0xe1, 0x8a, 0x96, 0x5f, - 0x53, 0x2f, 0xcf, 0x17, 0xb5, 0x8b, 0xb9, 0xfc, 0xfc, 0xd5, 0x95, 0x62, 0x6c, 0x84, 0x28, 0x38, - 0xd1, 0x63, 0xcb, 0xaf, 0xa9, 0x9a, 0x9a, 0xbb, 0xb2, 0x32, 0xbf, 0x98, 0x8b, 0x05, 0xc8, 0x31, - 0x7c, 0xb8, 0xc7, 0x5e, 0x28, 0xce, 0x17, 0xaf, 0x16, 0x62, 0x41, 0x72, 0x14, 0xbf, 0xd6, 0x63, - 0x52, 0x73, 0xf3, 0x17, 0x63, 0x21, 0x72, 0x02, 0x27, 0x9f, 0x33, 0xe4, 0x73, 0xaa, 0xba, 0xbc, - 0xba, 0xa4, 0xad, 0x2d, 0x5c, 0xca, 0x2d, 0x16, 0x0b, 0xb1, 0xd1, 0x3e, 0x5e, 0x0b, 0xea, 0xda, - 0x87, 0xb9, 0x55, 0xe9, 0x9c, 0x5b, 0x5d, 0xcc, 0x15, 0x62, 0xe1, 0x99, 0x9d, 0x31, 0x1c, 0x9c, - 0xbf, 0xb2, 0x4c, 0xbe, 0x0a, 0xe0, 0xe0, 0x12, 0x70, 0x72, 0x7a, 0xf0, 0x37, 0x8f, 0xe8, 0xe8, - 0x89, 0xd9, 0x61, 0x1f, 0x4b, 0xa9, 0xaf, 0xd1, 0xbd, 0xdf, 0x02, 0xa8, 0xf9, 0x7b, 0x7c, 0xae, - 0x01, 0x2c, 0x6d, 0xd9, 0x69, 0x01, 0x65, 0x9c, 0xba, 0x06, 0x77, 0x29, 0xa4, 0x29, 0xe8, 0xe6, - 0x3b, 0xe5, 0xf7, 0x6e, 0x19, 0x69, 0x6a, 0xbb, 0x1c, 0xcc, 0xb4, 0x69, 0xda, 0x2c, 0x5d, 0xd2, - 0x99, 0x65, 0xa4, 0x6b, 0x76, 0xdd, 0xe2, 0x36, 0xbd, 0xf3, 0xf0, 0xef, 0x6f, 0x03, 0x79, 0x72, - 0xd1, 0xff, 0x98, 0xc9, 0xb6, 0xbb, 0x30, 0xcb, 0x7e, 0xde, 0x1e, 0x6f, 0xbd, 0xfc, 0x65, 0xef, - 0xbb, 0x6e, 0x91, 0x2f, 0x02, 0x38, 0xe4, 0xc9, 0x86, 0xcc, 0x0e, 0xa1, 0x34, 0x59, 0x8c, 0xb9, - 0xa1, 0x35, 0x9a, 0xfa, 0xf2, 0x15, 0x55, 0xe3, 0x03, 0x72, 0x6e, 0x5f, 0xd5, 0x20, 0x3f, 0x05, - 0xf0, 0x98, 0xff, 0xb2, 0x24, 0xfb, 0x79, 0x8f, 0x26, 0xce, 0x0e, 0x07, 0xf6, 0xeb, 0x71, 0xd7, - 0xab, 0xc5, 0xe9, 0xfe, 0xb5, 0xd8, 0xa0, 0x16, 0x87, 0x17, 0x15, 0xc3, 0x65, 0x20, 0x2b, 0xf1, - 0x71, 0x62, 0xbd, 0x5f, 0x25, 0x5a, 0x3d, 0x3e, 0x33, 0x80, 0x40, 0xba, 0x30, 0x5b, 0x67, 0xd0, - 0xc9, 0xc4, 0x6d, 0xb4, 0xb3, 0x8d, 0x02, 0x7f, 0x6e, 0xa3, 0x99, 0x41, 0x92, 0x94, 0xbd, 0xf7, - 0xd1, 0x36, 0x42, 0xcd, 0x6d, 0x34, 0x3b, 0x6c, 0xef, 0xbe, 0xf3, 0x87, 0xd7, 0x43, 0x17, 0x7e, - 0x44, 0xf7, 0xcf, 0x07, 0xd5, 0x95, 0xab, 0x0f, 0x1e, 0x2b, 0x23, 0x8f, 0x1e, 0x2b, 0x23, 0x4f, - 0x1f, 0x2b, 0xe8, 0x76, 0x53, 0x41, 0xbf, 0x34, 0x15, 0x74, 0xaf, 0xa9, 0xa0, 0x07, 0x4d, 0x05, - 0xfd, 0xd5, 0x54, 0xd0, 0x93, 0xa6, 0x32, 0xf2, 0xb4, 0xa9, 0xa0, 0x6f, 0x76, 0x95, 0x91, 0x9d, - 0x5d, 0x05, 0x3d, 0xd8, 0x55, 0x46, 0x1e, 0xed, 0x2a, 0x23, 0x1f, 0xe9, 0x15, 0xdb, 0xb9, 0x59, - 0xc9, 0x34, 0x6c, 0xef, 0x65, 0x45, 0xf5, 0x8c, 0xcb, 0xb2, 0x62, 0xe0, 0x7d, 0x90, 0xa4, 0x1d, - 0x6a, 0x37, 0x2c, 0x13, 0x68, 0xba, 0x65, 0xce, 0x3a, 0xa5, 0x8a, 0x9d, 0x85, 0x5b, 0xdc, 0xff, - 0x32, 0xdd, 0xcb, 0x57, 0x73, 0x29, 0x2c, 0x3e, 0x59, 0xdf, 0xfd, 0x2f, 0x00, 0x00, 0xff, 0xff, - 0x54, 0x01, 0xc5, 0x6a, 0x9a, 0x10, 0x00, 0x00, + // 1464 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x57, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xcf, 0xd8, 0x8e, 0x63, 0x8f, 0xd3, 0xc4, 0x9d, 0x6f, 0x7f, 0xb8, 0xfe, 0x56, 0x96, 0x31, + 0x15, 0x8a, 0x0a, 0xb6, 0xab, 0x20, 0xd4, 0xa4, 0xb4, 0xa5, 0x49, 0x6a, 0x47, 0x29, 0x69, 0x52, + 0xad, 0xd3, 0xa8, 0xa2, 0x2a, 0xab, 0xf5, 0xee, 0xb3, 0xbb, 0xd4, 0xde, 0x5d, 0x66, 0x66, 0x9d, + 0x46, 0x28, 0x52, 0xd5, 0xbf, 0x00, 0x09, 0x71, 0x41, 0x1c, 0x40, 0x08, 0x54, 0xc1, 0x81, 0x2b, + 0x52, 0x2e, 0x15, 0x17, 0xaa, 0x1e, 0x50, 0x45, 0x2f, 0x3d, 0x52, 0x87, 0x43, 0x8f, 0x45, 0xe2, + 0x0f, 0x40, 0x3b, 0xb3, 0x76, 0x6d, 0xd7, 0x0d, 0xb1, 0x83, 0x38, 0xed, 0xcc, 0xbc, 0xf7, 0x3e, + 0x33, 0xef, 0x33, 0x9f, 0x79, 0x3b, 0x83, 0x2f, 0x34, 0x80, 0xe5, 0x4c, 0x3b, 0xcf, 0xf4, 0x9b, + 0x50, 0xd7, 0xf2, 0xa6, 0x55, 0xa1, 0x9a, 0x43, 0x6d, 0x0e, 0x3a, 0x57, 0x2b, 0x26, 0x85, 0x0d, + 0xad, 0x56, 0x53, 0xa9, 0x5b, 0x03, 0x06, 0x3c, 0xef, 0xb8, 0xe5, 0x9a, 0xa9, 0xab, 0x3a, 0x75, + 0x0d, 0xcd, 0x31, 0x73, 0x9e, 0x9f, 0x4d, 0xde, 0x94, 0x08, 0x39, 0x89, 0x90, 0xdb, 0x15, 0x21, + 0x99, 0xad, 0x9a, 0xfc, 0xa6, 0x5b, 0xce, 0xe9, 0x76, 0x3d, 0x5f, 0xb5, 0xab, 0x76, 0x5e, 0x60, + 0x94, 0xdd, 0x8a, 0xe8, 0x89, 0x8e, 0x68, 0x49, 0xec, 0xe4, 0xf1, 0xaa, 0x6d, 0x57, 0x6b, 0x90, + 0xd7, 0x1c, 0x33, 0xaf, 0x59, 0x96, 0xcd, 0x35, 0x6e, 0xda, 0x16, 0xf3, 0xad, 0xff, 0xf7, 0xad, + 0x6d, 0x0c, 0xa8, 0x3b, 0x7c, 0xd3, 0x37, 0x26, 0xbb, 0x13, 0x03, 0x4a, 0x6d, 0xda, 0x0a, 0x9c, + 0x19, 0x24, 0x69, 0xbb, 0xfc, 0x11, 0xe8, 0xdc, 0x8f, 0x3c, 0x3d, 0x48, 0x24, 0xdf, 0x74, 0xa0, + 0xbd, 0xd6, 0xee, 0x40, 0xdb, 0xe9, 0x4c, 0xe4, 0x58, 0xb7, 0xb1, 0x33, 0x2e, 0xd3, 0x6d, 0x6a, + 0x00, 0x03, 0xab, 0xd1, 0x13, 0x9e, 0xee, 0xf1, 0x31, 0x61, 0x43, 0xed, 0xf2, 0xc8, 0xfc, 0x89, + 0xf0, 0x84, 0x02, 0x4e, 0x4d, 0xd3, 0x41, 0x81, 0x8f, 0x5d, 0x60, 0x9c, 0x5c, 0xc0, 0x91, 0x3a, + 0x70, 0xcd, 0xd0, 0xb8, 0x96, 0x40, 0x69, 0x34, 0x15, 0x9b, 0x3e, 0x91, 0xeb, 0xde, 0xc9, 0x55, + 0x91, 0xb8, 0x1f, 0x76, 0x19, 0xb8, 0xb6, 0xb6, 0xe9, 0x80, 0xd2, 0x8e, 0x22, 0x1a, 0x0e, 0x31, + 0x07, 0xf4, 0x44, 0x40, 0x44, 0x9f, 0xcd, 0x0d, 0xa0, 0x83, 0x9c, 0x8f, 0x5a, 0x72, 0x40, 0xf7, + 0x50, 0xe7, 0x27, 0xbf, 0xd8, 0x1a, 0xf7, 0xc0, 0x72, 0x55, 0x5d, 0xf5, 0xbe, 0x8a, 0x80, 0x26, + 0x79, 0x1c, 0xa7, 0xc0, 0x6c, 0x97, 0xea, 0xa0, 0x36, 0x80, 0x32, 0xd3, 0xb6, 0x12, 0xc1, 0x34, + 0x9a, 0x8a, 0xce, 0x87, 0x9e, 0x6d, 0x23, 0xa4, 0x4c, 0xb6, 0xac, 0xeb, 0xd2, 0x78, 0x26, 0xfa, + 0xf0, 0x7c, 0x58, 0xae, 0x3b, 0x73, 0x10, 0x4f, 0xb6, 0x53, 0x66, 0x8e, 0x6d, 0x31, 0xc8, 0xfc, + 0x80, 0x30, 0x5e, 0x04, 0xde, 0xa2, 0xe0, 0x38, 0x8e, 0x5a, 0x5a, 0x1d, 0x98, 0xa3, 0xe9, 0x20, + 0x38, 0x88, 0x2a, 0x2f, 0x06, 0x08, 0xc1, 0x21, 0xaf, 0x23, 0xd2, 0x8b, 0x2a, 0xa2, 0x4d, 0x6e, + 0x61, 0x6f, 0x46, 0x01, 0xa6, 0x56, 0x6c, 0x5a, 0xd7, 0xb8, 0x58, 0xce, 0xc4, 0xf4, 0xfc, 0x40, + 0xd9, 0x8b, 0x35, 0x48, 0x98, 0xa2, 0x40, 0x59, 0xb0, 0x0d, 0x50, 0x26, 0x68, 0xd7, 0x58, 0xe6, + 0xaf, 0x51, 0x1c, 0xeb, 0xf0, 0x24, 0x1f, 0xe2, 0x71, 0x2a, 0x13, 0x12, 0x73, 0x8b, 0x99, 0x63, + 0xd3, 0xef, 0x0e, 0xc3, 0xbb, 0xcf, 0x80, 0x12, 0xf3, 0x01, 0xbd, 0x19, 0xfb, 0x92, 0x1d, 0xda, + 0x85, 0x6c, 0x72, 0xb6, 0x43, 0x42, 0xa3, 0x62, 0x31, 0xe9, 0xbe, 0x12, 0x5a, 0x04, 0xde, 0x47, + 0x3e, 0xab, 0x78, 0x92, 0x6d, 0x32, 0x0e, 0x75, 0xb5, 0x0d, 0x32, 0x26, 0x40, 0xde, 0xe8, 0x01, + 0x29, 0x09, 0xaf, 0x97, 0xa1, 0x26, 0x64, 0xf8, 0xe5, 0x16, 0xe0, 0x0d, 0x5f, 0x8f, 0x61, 0x81, + 0x32, 0x33, 0xe8, 0x8e, 0xfc, 0x93, 0x16, 0xaf, 0xe1, 0x30, 0xe3, 0x1a, 0x77, 0x59, 0xe2, 0xab, + 0x2f, 0x51, 0x3a, 0x38, 0x15, 0x9b, 0x9e, 0x1d, 0x68, 0x8a, 0x92, 0x08, 0x96, 0x69, 0xcc, 0x07, + 0xef, 0x6f, 0x21, 0xc5, 0xc7, 0x23, 0x4b, 0xf8, 0x20, 0x85, 0x0a, 0x50, 0x6a, 0x5a, 0x55, 0x55, + 0x96, 0x1b, 0x96, 0x88, 0x88, 0x29, 0x8e, 0xbf, 0xe2, 0x4c, 0x56, 0x04, 0x03, 0xf1, 0x76, 0x98, + 0x1c, 0x67, 0x64, 0x1d, 0x27, 0x0c, 0xa8, 0x01, 0x07, 0x43, 0x95, 0x36, 0x30, 0xda, 0x88, 0xd1, + 0x3d, 0x20, 0x1e, 0xf1, 0xa3, 0x15, 0x3f, 0xb8, 0x85, 0x7b, 0x0d, 0x1f, 0x33, 0x4c, 0xa6, 0x95, + 0x6b, 0xfd, 0x80, 0xf1, 0x1e, 0x80, 0x8f, 0xb6, 0xc2, 0x7b, 0x90, 0x3b, 0x4e, 0xec, 0xa5, 0x50, + 0x04, 0xc5, 0x03, 0x99, 0x6f, 0x11, 0x8e, 0x2d, 0x9b, 0x6c, 0x8f, 0xa7, 0xf4, 0x35, 0x3c, 0x5e, + 0xd3, 0xca, 0x50, 0x53, 0x2b, 0x66, 0x8d, 0x03, 0xf5, 0x4f, 0x6b, 0x4c, 0x8c, 0x15, 0xc5, 0x10, + 0x79, 0x1d, 0x1f, 0xa0, 0xe0, 0xd8, 0xd4, 0xdb, 0x13, 0xa8, 0x19, 0x2c, 0x11, 0x4c, 0x07, 0xa7, + 0xa2, 0xca, 0xb8, 0x1c, 0x2c, 0x8a, 0x31, 0x72, 0x0a, 0x1f, 0xf2, 0x9d, 0xe4, 0xa6, 0xb4, 0x7c, + 0x43, 0xc2, 0x97, 0x48, 0x9b, 0xdc, 0x42, 0x19, 0x91, 0xb9, 0x33, 0x86, 0xe3, 0x72, 0x9d, 0xf2, + 0x7c, 0x2e, 0x71, 0xa8, 0x93, 0x23, 0x38, 0xcc, 0xc1, 0xd2, 0x2c, 0x2e, 0x54, 0x18, 0x55, 0xfc, + 0xde, 0x10, 0xa5, 0x26, 0x8e, 0x83, 0xae, 0x69, 0xc8, 0x6a, 0xa7, 0x78, 0x4d, 0x92, 0xc6, 0x31, + 0x03, 0x98, 0x4e, 0x4d, 0x51, 0xda, 0x13, 0x31, 0x99, 0x69, 0xc7, 0x10, 0x49, 0xe2, 0x48, 0x8b, + 0xe6, 0xc4, 0x78, 0x1a, 0x4d, 0x45, 0x94, 0x76, 0x9f, 0x68, 0x38, 0x2c, 0x48, 0x91, 0x29, 0xc5, + 0xa6, 0x97, 0x06, 0x12, 0x6f, 0x6f, 0xa2, 0xb9, 0x65, 0x81, 0x55, 0xb0, 0x38, 0xdd, 0x54, 0x7c, + 0x60, 0xe2, 0xe0, 0x58, 0xc7, 0x4f, 0xda, 0x97, 0xc5, 0xca, 0xfe, 0xe6, 0x99, 0x7b, 0x01, 0x28, + 0x27, 0xeb, 0x9c, 0x82, 0xcc, 0x62, 0x6c, 0x6f, 0x58, 0x40, 0x55, 0xef, 0x9f, 0x97, 0x88, 0x8a, + 0x83, 0x9f, 0xec, 0x99, 0x70, 0xdd, 0x84, 0x8d, 0x96, 0x0a, 0xa3, 0xc2, 0xdb, 0x1b, 0xe9, 0x2a, + 0x5e, 0x07, 0xfe, 0x8d, 0xe2, 0x35, 0xb1, 0xaf, 0xe2, 0x55, 0xc2, 0x91, 0x2a, 0x70, 0x51, 0x6f, + 0xfc, 0x32, 0x38, 0x74, 0x01, 0x53, 0xc6, 0xaa, 0xb2, 0x43, 0x6e, 0x60, 0xec, 0xab, 0x99, 0x01, + 0xf7, 0x2b, 0xca, 0x7e, 0x8b, 0x56, 0x54, 0x22, 0x96, 0x80, 0x27, 0x67, 0x71, 0xac, 0x43, 0x06, + 0x9e, 0x62, 0x6f, 0xc1, 0xa6, 0xaf, 0x6e, 0xaf, 0x49, 0x0e, 0xe1, 0xd1, 0x86, 0x56, 0x73, 0x5b, + 0xc2, 0x96, 0x9d, 0x33, 0x81, 0x19, 0x94, 0x3c, 0x8f, 0xe3, 0xbd, 0x3b, 0x3b, 0x48, 0xfc, 0xa5, + 0x50, 0x64, 0x34, 0x1e, 0xce, 0x7c, 0x8e, 0xf0, 0x78, 0xa7, 0x62, 0x48, 0x09, 0x8f, 0x9a, 0x1c, + 0xea, 0x2c, 0x21, 0x0b, 0xf4, 0xb9, 0x7d, 0x69, 0x4f, 0x91, 0x58, 0xe4, 0x14, 0x0e, 0xcb, 0xdb, + 0x63, 0x22, 0x20, 0x50, 0x13, 0x3d, 0xa8, 0x05, 0xcf, 0x28, 0x88, 0xf7, 0xfd, 0x4e, 0x3e, 0x46, + 0xf8, 0x70, 0xdf, 0x7f, 0x3c, 0x49, 0xe2, 0x23, 0x8b, 0x85, 0x35, 0x55, 0x29, 0x5d, 0x51, 0x8b, + 0xab, 0xca, 0xe5, 0xb9, 0x35, 0xf5, 0x62, 0xa1, 0x38, 0x77, 0x75, 0x79, 0x2d, 0x3e, 0x42, 0x52, + 0x38, 0xd9, 0x63, 0x2b, 0xae, 0x2a, 0xaa, 0x52, 0xb8, 0xb2, 0x3c, 0xb7, 0x50, 0x88, 0x07, 0xc8, + 0x31, 0x7c, 0xb8, 0xc7, 0x5e, 0x5a, 0x9b, 0x5b, 0xbb, 0x5a, 0x8a, 0x07, 0xc9, 0x51, 0xfc, 0xbf, + 0x1e, 0x93, 0x52, 0x98, 0xbb, 0x18, 0x0f, 0x91, 0x13, 0x38, 0xfd, 0x92, 0xa1, 0x58, 0x50, 0x94, + 0xa5, 0x95, 0x45, 0x75, 0x75, 0xfe, 0x52, 0x61, 0x61, 0xad, 0x14, 0x1f, 0xed, 0xe3, 0x35, 0xaf, + 0xac, 0xbe, 0x5f, 0x58, 0x91, 0xce, 0x85, 0x95, 0x85, 0x42, 0x29, 0x1e, 0x9e, 0xfe, 0x26, 0x82, + 0x83, 0x73, 0x57, 0x96, 0xc8, 0xf7, 0x01, 0x1c, 0x5c, 0x04, 0x4e, 0x4e, 0x0f, 0x7e, 0xe7, 0x11, + 0x15, 0x3d, 0x39, 0x33, 0xec, 0x65, 0x29, 0xf3, 0x23, 0x7a, 0xf0, 0x53, 0x00, 0x35, 0x7f, 0x49, + 0x5c, 0x6f, 0x00, 0xcb, 0x9a, 0x76, 0x56, 0x84, 0x32, 0x4e, 0x5d, 0x9d, 0xbb, 0x14, 0xb2, 0x14, + 0x34, 0xe3, 0xad, 0xca, 0x3b, 0xb7, 0xf5, 0x2c, 0xb5, 0x5d, 0x0e, 0x46, 0xd6, 0x30, 0x6c, 0x96, + 0x2d, 0x6b, 0xcc, 0xd4, 0xb3, 0x75, 0xdb, 0x32, 0xb9, 0x4d, 0x5f, 0x36, 0x33, 0xae, 0x59, 0x86, + 0x46, 0x8d, 0x96, 0xc7, 0xdd, 0xc7, 0x7f, 0x7c, 0x16, 0x28, 0x92, 0x8b, 0xfe, 0x73, 0x27, 0xdf, + 0xae, 0xd3, 0x2c, 0xff, 0x49, 0xbb, 0xbd, 0xb5, 0xfb, 0xdd, 0xdf, 0x77, 0xdd, 0x22, 0xdf, 0x05, + 0x70, 0xc8, 0x13, 0x16, 0x99, 0x19, 0x42, 0x8b, 0x92, 0xae, 0xd9, 0xa1, 0x55, 0x9c, 0xb9, 0xf7, + 0x9f, 0xf1, 0xf5, 0x1e, 0x39, 0xb7, 0x2f, 0xbe, 0xc8, 0xcf, 0x01, 0x3c, 0xe6, 0xdf, 0x4e, 0xc9, + 0x7e, 0xee, 0xb4, 0xc9, 0xb3, 0xc3, 0x05, 0xfb, 0x8c, 0x6d, 0x7b, 0x6c, 0xad, 0xf7, 0x67, 0x6b, + 0x83, 0x9a, 0x1c, 0x5e, 0x45, 0x97, 0xcb, 0x60, 0x37, 0xae, 0x3c, 0xb3, 0x20, 0xea, 0x7a, 0x72, + 0xbd, 0x1f, 0x51, 0xad, 0xdf, 0x48, 0x6e, 0x00, 0x85, 0x75, 0xc5, 0x6c, 0x9d, 0x41, 0x27, 0x93, + 0x77, 0xd0, 0xfd, 0x6d, 0x14, 0xf8, 0x6d, 0x1b, 0x4d, 0x0f, 0xc2, 0x81, 0x2c, 0xef, 0x4f, 0xb6, + 0x11, 0x6a, 0x6e, 0xa3, 0x99, 0x61, 0x7f, 0x0f, 0x77, 0x7f, 0xf5, 0xca, 0xf4, 0xfc, 0xd7, 0xe8, + 0xe1, 0xf9, 0xa0, 0xb2, 0x7c, 0xf5, 0xd1, 0xd3, 0xd4, 0xc8, 0x93, 0xa7, 0xa9, 0x91, 0xe7, 0x4f, + 0x53, 0xe8, 0x4e, 0x33, 0x85, 0xee, 0x35, 0x53, 0xe8, 0x41, 0x33, 0x85, 0x1e, 0x35, 0x53, 0xe8, + 0xf7, 0x66, 0x0a, 0x3d, 0x6b, 0xa6, 0x46, 0x9e, 0x37, 0x53, 0xe8, 0xd3, 0x9d, 0xd4, 0xc8, 0xfd, + 0x9d, 0x14, 0x7a, 0xb4, 0x93, 0x1a, 0x79, 0xb2, 0x93, 0x1a, 0xf9, 0x40, 0xab, 0xda, 0xce, 0xad, + 0x6a, 0xae, 0x61, 0x7b, 0x97, 0x37, 0xaa, 0xe5, 0x5c, 0x96, 0x17, 0x0d, 0xef, 0xcd, 0x93, 0x75, + 0xa8, 0xdd, 0x30, 0x0d, 0xa0, 0xd9, 0x96, 0x39, 0xef, 0x94, 0xab, 0x76, 0x1e, 0x6e, 0x73, 0xff, + 0xf1, 0xbb, 0x97, 0x87, 0x79, 0x39, 0x2c, 0x5e, 0xc5, 0x6f, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff, + 0xd7, 0x72, 0xed, 0x26, 0xfd, 0x10, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.vesapi.go b/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.vesapi.go index ee1c3a6a5..2d5098ebc 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_firewall_ruleset/public_crudapi.vesapi.go @@ -2095,10 +2095,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2201,10 +2205,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_firewall_ruleset/types.pb.go b/pbgo/extschema/schema/infraprotect_firewall_ruleset/types.pb.go index a13f1bae4..0db4ebbfa 100644 --- a/pbgo/extschema/schema/infraprotect_firewall_ruleset/types.pb.go +++ b/pbgo/extschema/schema/infraprotect_firewall_ruleset/types.pb.go @@ -286,59 +286,41 @@ func init() { } var fileDescriptor_5b02053b1410338a = []byte{ - // 827 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x55, 0xdf, 0x6f, 0xdb, 0x44, - 0x1c, 0xcf, 0xd9, 0x69, 0x56, 0xbe, 0xd9, 0x60, 0x84, 0x69, 0x74, 0x59, 0xb9, 0x75, 0x5d, 0x19, - 0xa3, 0x50, 0x5b, 0x32, 0x55, 0xd0, 0x40, 0xaa, 0x48, 0xd7, 0xaa, 0x6b, 0x29, 0x34, 0x4a, 0xdb, - 0x3d, 0x4c, 0x48, 0xd6, 0xc5, 0x39, 0xbb, 0x66, 0x17, 0xdf, 0xc9, 0xbe, 0xa4, 0xcb, 0x03, 0x08, - 0xf8, 0x0b, 0xd0, 0xfe, 0x07, 0x24, 0xc4, 0x9f, 0x40, 0x79, 0x28, 0x12, 0x48, 0xa8, 0x4f, 0xe1, - 0x2d, 0x2f, 0x48, 0xab, 0xf3, 0x02, 0x6f, 0xe3, 0x95, 0x27, 0x64, 0x27, 0x69, 0x6b, 0x8b, 0x84, - 0x0a, 0x09, 0xed, 0xc9, 0x77, 0xfe, 0xfc, 0xf8, 0x7e, 0xee, 0x7b, 0xbe, 0x33, 0xbc, 0xdb, 0xa2, - 0x81, 0xe6, 0x72, 0x3d, 0xb0, 0xf6, 0x68, 0x83, 0xe8, 0xae, 0x67, 0xfb, 0x44, 0xf8, 0x5c, 0x52, - 0x4b, 0x9a, 0xb6, 0xeb, 0xd3, 0x7d, 0xc2, 0x98, 0xe9, 0x37, 0x19, 0x0d, 0xa8, 0xd4, 0x65, 0x5b, - 0xd0, 0x40, 0x8b, 0x60, 0x5e, 0x78, 0xab, 0x2f, 0xd4, 0xfa, 0x42, 0x6d, 0xac, 0xb0, 0xb8, 0xe0, - 0xb8, 0x72, 0xaf, 0x59, 0xd3, 0x2c, 0xde, 0xd0, 0x1d, 0xee, 0x70, 0x3d, 0xf6, 0xa8, 0x35, 0xed, - 0x78, 0x16, 0x4f, 0xe2, 0x51, 0xdf, 0xbb, 0x78, 0x3d, 0x19, 0x8a, 0x0b, 0xe9, 0x72, 0x6f, 0x50, - 0xb8, 0x78, 0x2d, 0x09, 0x9e, 0xc9, 0x54, 0x9c, 0x4e, 0x42, 0x2d, 0xc2, 0xdc, 0x3a, 0x91, 0x74, - 0x80, 0xce, 0xa4, 0x50, 0x97, 0xee, 0x9b, 0x09, 0xeb, 0xd9, 0x2f, 0x5f, 0x80, 0x17, 0xd7, 0x18, - 0xaf, 0x11, 0xb6, 0x2d, 0xa8, 0xb5, 0xd3, 0x16, 0xb4, 0x70, 0x17, 0x2e, 0xb6, 0xa8, 0x1f, 0xb8, - 0xdc, 0x33, 0x5d, 0xd1, 0x5a, 0x9c, 0x52, 0x66, 0xd0, 0x9d, 0xbc, 0x71, 0x45, 0x4b, 0xae, 0x7e, - 0xb5, 0x21, 0x64, 0xfb, 0x7e, 0xa6, 0x9a, 0x1f, 0x70, 0xd7, 0x45, 0x6b, 0x31, 0x25, 0x2d, 0x4d, - 0xa9, 0xe7, 0x95, 0x96, 0x0a, 0x9f, 0xc3, 0xa5, 0x44, 0x0f, 0xa7, 0xb2, 0x33, 0xea, 0x9d, 0xbc, - 0x31, 0x9d, 0xd2, 0x6e, 0xd5, 0x3e, 0xa5, 0x96, 0xac, 0x52, 0x3b, 0x8a, 0xba, 0xfc, 0xfe, 0x77, - 0x9f, 0x15, 0x47, 0x6f, 0xc3, 0xf7, 0x7f, 0x1c, 0xaa, 0x13, 0x4f, 0x90, 0x32, 0x85, 0xc2, 0xa7, - 0x3f, 0xab, 0xd9, 0xc3, 0x03, 0x14, 0x0f, 0x72, 0x4f, 0x7e, 0x40, 0xca, 0x65, 0x54, 0xbd, 0x38, - 0x24, 0x57, 0x9b, 0x8c, 0xbe, 0xf7, 0x5b, 0xee, 0xe8, 0x00, 0x75, 0x73, 0x70, 0x17, 0x2e, 0x3c, - 0xe8, 0xc7, 0x9a, 0xd7, 0xe0, 0x6d, 0xb8, 0x92, 0x6c, 0x86, 0x91, 0x5d, 0xaf, 0x3c, 0x58, 0x4c, - 0xbd, 0x2d, 0xc5, 0x6f, 0x4b, 0xf0, 0x09, 0x5c, 0xda, 0xe6, 0x4d, 0xdf, 0xa2, 0x33, 0x15, 0x9f, - 0xda, 0xee, 0xe3, 0xf9, 0x0f, 0x61, 0x1d, 0xe6, 0x60, 0x36, 0x11, 0x4a, 0x0b, 0x62, 0x8a, 0x29, - 0x62, 0x8a, 0x19, 0xb8, 0x9e, 0xc3, 0x28, 0xdc, 0x84, 0x1b, 0xe3, 0x58, 0x84, 0x31, 0x78, 0x04, - 0x85, 0x15, 0x1a, 0x48, 0xd7, 0x23, 0xd1, 0xfe, 0x0d, 0x4b, 0xec, 0xc2, 0x36, 0xbc, 0x09, 0x6f, - 0x24, 0xc5, 0xf5, 0x53, 0x5e, 0xaa, 0xce, 0x6d, 0x98, 0xfb, 0x57, 0x6a, 0x54, 0xec, 0x57, 0x05, - 0x26, 0x2b, 0xd1, 0x07, 0x62, 0x71, 0x36, 0xff, 0x93, 0x02, 0x3f, 0x2a, 0x70, 0x13, 0x8a, 0x49, - 0xa9, 0x18, 0xe0, 0x66, 0xb3, 0x2e, 0x0c, 0x75, 0x77, 0xa5, 0x32, 0x86, 0x22, 0x2d, 0x61, 0xa8, - 0x3b, 0xf7, 0x2a, 0x70, 0x03, 0xae, 0x8d, 0xa0, 0x90, 0x3d, 0x43, 0x29, 0xdf, 0x1f, 0xe3, 0x41, - 0x03, 0x61, 0xa8, 0xab, 0xdb, 0xe3, 0xca, 0x38, 0x3e, 0x35, 0xd4, 0xb5, 0xea, 0x2a, 0xdc, 0x82, - 0xeb, 0x23, 0x28, 0xae, 0xd5, 0x10, 0x46, 0x76, 0xfd, 0xde, 0x47, 0x15, 0x78, 0x1d, 0xa6, 0xc7, - 0x90, 0x4a, 0xc6, 0x44, 0xc4, 0x2a, 0x8d, 0xf3, 0x3a, 0xdd, 0xfb, 0xd1, 0x99, 0x08, 0x63, 0x86, - 0x5a, 0xde, 0xdc, 0x84, 0x1d, 0xc8, 0x95, 0xad, 0xa8, 0xd1, 0xf3, 0x1b, 0x10, 0xad, 0x33, 0xd5, - 0x08, 0x12, 0x63, 0x66, 0x9d, 0x7a, 0x6d, 0x23, 0xbb, 0x42, 0xbd, 0x36, 0xdc, 0x4a, 0x7b, 0x0e, - 0x28, 0x84, 0x31, 0xbe, 0x6f, 0x4c, 0x94, 0xa3, 0x07, 0x6c, 0x9c, 0xb8, 0x7e, 0x00, 0x4b, 0x80, - 0xe1, 0xd5, 0xd4, 0x77, 0x24, 0x89, 0xa4, 0x26, 0xb7, 0x6d, 0x43, 0xdd, 0xb2, 0x6d, 0x98, 0x86, - 0xab, 0xff, 0x88, 0x7b, 0x86, 0xb2, 0xe5, 0xc1, 0xc3, 0x13, 0xaf, 0x0a, 0x7c, 0x0c, 0x73, 0xe9, - 0xf6, 0xd8, 0x3e, 0x71, 0x1a, 0xd4, 0x93, 0xc1, 0xd9, 0x90, 0xb7, 0xe1, 0xb5, 0x51, 0xac, 0xb3, - 0x39, 0x97, 0x5f, 0x81, 0x0b, 0x83, 0x23, 0x53, 0x98, 0x3c, 0x3c, 0x40, 0x4a, 0xe7, 0x00, 0xa1, - 0x8d, 0xec, 0x24, 0xba, 0xac, 0xcc, 0x3a, 0xf0, 0x52, 0x95, 0x0a, 0x46, 0x2c, 0x7a, 0x72, 0x07, - 0x95, 0xff, 0xc3, 0x6d, 0x90, 0x3a, 0xd0, 0x2f, 0x1f, 0x2d, 0xa5, 0x6e, 0xb6, 0xd9, 0x3f, 0x11, - 0xe4, 0xd7, 0xa8, 0x7c, 0xce, 0x37, 0xdd, 0xff, 0xb2, 0xb6, 0xe5, 0xab, 0xa7, 0xfd, 0xcd, 0x7f, - 0xf5, 0x17, 0x1a, 0x4e, 0x96, 0xbf, 0x41, 0x47, 0x4b, 0x6a, 0x75, 0x73, 0xb7, 0x73, 0x8c, 0x33, - 0xdd, 0x63, 0x9c, 0x79, 0x76, 0x8c, 0xd1, 0x17, 0x21, 0x46, 0xdf, 0x86, 0x18, 0xfd, 0x12, 0x62, - 0xd4, 0x09, 0x31, 0xea, 0x86, 0x18, 0x3d, 0x0d, 0x31, 0xfa, 0x3d, 0xc4, 0x99, 0x67, 0x21, 0x46, - 0x5f, 0xf7, 0x70, 0xe6, 0xb0, 0x87, 0x51, 0xa7, 0x87, 0x33, 0xdd, 0x1e, 0xce, 0x3c, 0x24, 0x0e, - 0x17, 0x8f, 0x1c, 0xad, 0xc5, 0x99, 0xa4, 0xbe, 0x4f, 0xb4, 0x66, 0xa0, 0xc7, 0x03, 0x9b, 0xfb, - 0x8d, 0x05, 0xe1, 0xf3, 0x96, 0x5b, 0xa7, 0xfe, 0xc2, 0x10, 0xd6, 0x45, 0xcd, 0xe1, 0x3a, 0x7d, - 0x2c, 0x07, 0xbf, 0x9d, 0xf3, 0xfc, 0x68, 0x6b, 0xb9, 0xf8, 0xc0, 0xbc, 0xf3, 0x77, 0x00, 0x00, - 0x00, 0xff, 0xff, 0x61, 0x2f, 0x7e, 0xaf, 0x9e, 0x07, 0x00, 0x00, + // 531 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x54, 0x41, 0x6b, 0x13, 0x51, + 0x10, 0xde, 0xd9, 0xc4, 0xb6, 0xbc, 0x54, 0xad, 0xb1, 0x48, 0x8c, 0xe5, 0x11, 0x72, 0x2a, 0x6a, + 0x76, 0x21, 0x86, 0x48, 0x2d, 0x54, 0x0c, 0x48, 0xad, 0x08, 0xca, 0xaa, 0x3d, 0x78, 0x09, 0xbb, + 0xdb, 0xc9, 0x76, 0x75, 0x93, 0xf7, 0xd8, 0x7d, 0xd9, 0x9a, 0x83, 0x22, 0xfe, 0x02, 0xe9, 0x7f, + 0x10, 0xc4, 0x9f, 0x60, 0x3c, 0xe4, 0x22, 0x48, 0x4e, 0x39, 0xe6, 0xd8, 0xbc, 0x5c, 0xf4, 0x56, + 0xaf, 0x9e, 0xa4, 0x9b, 0x44, 0xdd, 0x05, 0xa5, 0x08, 0xd2, 0xdb, 0xcc, 0x7c, 0xef, 0x9b, 0xfd, + 0xe6, 0x1b, 0x66, 0xc9, 0xf5, 0x10, 0x03, 0xcd, 0x65, 0x7a, 0x60, 0xef, 0x62, 0xd3, 0xd4, 0xdd, + 0x56, 0xc3, 0x37, 0xb9, 0xcf, 0x04, 0xda, 0xa2, 0xde, 0x70, 0x7d, 0xdc, 0x33, 0x3d, 0xaf, 0xee, + 0xb7, 0x3d, 0x0c, 0x50, 0xe8, 0xa2, 0xc3, 0x31, 0xd0, 0x8e, 0x60, 0x96, 0xbd, 0x32, 0x21, 0x6a, + 0x13, 0xa2, 0xf6, 0x57, 0x62, 0xbe, 0xe4, 0xb8, 0x62, 0xb7, 0x6d, 0x69, 0x36, 0x6b, 0xea, 0x0e, + 0x73, 0x98, 0x1e, 0xf5, 0xb0, 0xda, 0x8d, 0x28, 0x8b, 0x92, 0x28, 0x9a, 0xf4, 0xce, 0x5f, 0x8a, + 0x8b, 0x62, 0x5c, 0xb8, 0xac, 0x35, 0xfd, 0x70, 0xfe, 0x62, 0x1c, 0xfc, 0x4d, 0x53, 0x7e, 0x25, + 0x0e, 0x85, 0xa6, 0xe7, 0xee, 0x98, 0x02, 0xa7, 0x68, 0x21, 0x81, 0xba, 0xb8, 0x57, 0x8f, 0xb5, + 0x2e, 0x4a, 0x95, 0x9c, 0xd9, 0xf4, 0x98, 0x65, 0x7a, 0x0f, 0x39, 0xda, 0x8f, 0x3a, 0x1c, 0xb3, + 0x6b, 0x64, 0x31, 0x44, 0x3f, 0x70, 0x59, 0xab, 0xee, 0xf2, 0xb0, 0x92, 0x53, 0x0b, 0xb0, 0x9a, + 0x29, 0x2f, 0x6b, 0xf1, 0xe9, 0x6f, 0x37, 0xb9, 0xe8, 0xdc, 0x51, 0x8c, 0xcc, 0xf4, 0xed, 0x16, + 0x0f, 0x2b, 0x09, 0x6a, 0x35, 0x97, 0x3a, 0x2e, 0xb5, 0x9a, 0x7d, 0x49, 0x4e, 0xc7, 0x3c, 0xcc, + 0xa5, 0x0b, 0xa9, 0xd5, 0x4c, 0x79, 0x25, 0xc1, 0xbd, 0x6f, 0x3d, 0x45, 0x5b, 0x18, 0xd8, 0x38, + 0x92, 0x5a, 0x5b, 0x7f, 0xff, 0x22, 0xff, 0xe7, 0x35, 0x7c, 0xf8, 0xda, 0x4b, 0x9d, 0xda, 0x07, + 0x35, 0x07, 0xf2, 0xe0, 0x53, 0x2a, 0xdd, 0xeb, 0x42, 0x14, 0xcc, 0xed, 0x7f, 0x04, 0x75, 0x09, + 0x8c, 0xc5, 0xd9, 0x63, 0xa3, 0xed, 0xe1, 0x8d, 0x9b, 0xfd, 0x2e, 0xac, 0x93, 0x35, 0x32, 0xbf, + 0x3d, 0x11, 0x75, 0x59, 0x23, 0x57, 0xc9, 0x72, 0xdc, 0x8a, 0x72, 0x7a, 0xeb, 0xc1, 0x76, 0x25, + 0x51, 0xad, 0x46, 0xd5, 0x6a, 0xed, 0x3c, 0x99, 0x9f, 0x56, 0xb3, 0x0b, 0xbd, 0x2e, 0xa8, 0x83, + 0x2e, 0xc0, 0xdd, 0xf4, 0x02, 0x2c, 0xa9, 0x45, 0x87, 0x9c, 0x35, 0x90, 0x7b, 0xa6, 0x8d, 0x3f, + 0x4d, 0xbe, 0xf5, 0x0f, 0xe3, 0x26, 0x14, 0x9f, 0xeb, 0x6f, 0x24, 0x56, 0x57, 0xfc, 0x06, 0x24, + 0xb3, 0x89, 0xe2, 0x84, 0x57, 0xf9, 0x5f, 0x66, 0xab, 0x5d, 0xf8, 0xe5, 0x6f, 0xe6, 0xf5, 0x77, + 0x98, 0x25, 0xb5, 0xb7, 0xd0, 0xdf, 0x48, 0x19, 0xf7, 0x1e, 0x0f, 0x46, 0x54, 0x19, 0x8e, 0xa8, + 0x72, 0x38, 0xa2, 0xf0, 0x4a, 0x52, 0x78, 0x27, 0x29, 0x7c, 0x96, 0x14, 0x06, 0x92, 0xc2, 0x50, + 0x52, 0x38, 0x90, 0x14, 0xbe, 0x48, 0xaa, 0x1c, 0x4a, 0x0a, 0x6f, 0xc6, 0x54, 0xe9, 0x8d, 0x29, + 0x0c, 0xc6, 0x54, 0x19, 0x8e, 0xa9, 0xf2, 0xc4, 0x74, 0x18, 0x7f, 0xe6, 0x68, 0x21, 0xf3, 0x04, + 0xfa, 0xbe, 0xa9, 0xb5, 0x03, 0x3d, 0x0a, 0x1a, 0xcc, 0x6f, 0x96, 0xb8, 0xcf, 0x42, 0x77, 0x07, + 0xfd, 0xd2, 0x0c, 0xd6, 0xb9, 0xe5, 0x30, 0x1d, 0x9f, 0x8b, 0xe9, 0x5d, 0x1d, 0xe7, 0x4f, 0x62, + 0xcd, 0x45, 0x07, 0x77, 0xed, 0x47, 0x00, 0x00, 0x00, 0xff, 0xff, 0x77, 0x86, 0xda, 0x78, 0x7f, + 0x04, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/infraprotect_information/crudapi/api.vesapi.go b/pbgo/extschema/schema/infraprotect_information/crudapi/api.vesapi.go index b8a4ff5ba..7e4881e88 100644 --- a/pbgo/extschema/schema/infraprotect_information/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_information/crudapi/api.vesapi.go @@ -2838,7 +2838,7 @@ var APISwaggerJSON string = `{ "infraprotect_informationGlobalSpecType": { "type": "object", "description": "Organisation information", - "title": "information", + "title": "Information", "x-displayname": "Information", "x-ves-oneof-field-as_path_choice": "[\"as_path_choice_full\",\"as_path_choice_none\",\"as_path_choice_origin\"]", "x-ves-oneof-field-default_tunnel_bgp_secret_choice": "[\"default_tunnel_bgp_secret\",\"default_tunnel_bgp_secret_none\"]", @@ -2891,6 +2891,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "No default tunnel BGP secret" }, + "policer": { + "description": " Policer config for bandwidth restrictions", + "title": "Policer Config", + "$ref": "#/definitions/infraprotect_informationPolicer", + "x-displayname": "Policer Config" + }, "prefixes": { "type": "array", "description": " List of tenant 'super' prefixes noted in CIDR\n\nExample: - \"value\"-", @@ -2947,6 +2953,25 @@ var APISwaggerJSON string = `{ } } }, + "infraprotect_informationPolicer": { + "type": "object", + "description": "Policer config for bandwidth restrictions", + "title": "Policer Config", + "x-displayname": "Policer Config", + "x-ves-proto-message": "ves.io.schema.infraprotect_information.Policer", + "properties": { + "bandwidth_max_mb": { + "type": "integer", + "description": " Bandwidth max allowed for a customer defined by contract\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 9999\n", + "title": "Bandwidth Max", + "format": "int64", + "x-displayname": "Bandwidth Max in MB", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "9999" + } + } + } + }, "infraprotect_informationSpecType": { "type": "object", "x-ves-proto-message": "ves.io.schema.infraprotect_information.SpecType", @@ -3237,10 +3262,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_information/object.pb.go b/pbgo/extschema/schema/infraprotect_information/object.pb.go index 0a93bb41c..fa1f2338f 100644 --- a/pbgo/extschema/schema/infraprotect_information/object.pb.go +++ b/pbgo/extschema/schema/infraprotect_information/object.pb.go @@ -217,43 +217,43 @@ func init() { } var fileDescriptor_f15dbc6cf1fedc21 = []byte{ - // 563 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x41, 0x6b, 0x13, 0x4f, - 0x18, 0xc6, 0x77, 0x92, 0xff, 0xbf, 0x96, 0x69, 0xa9, 0xb2, 0xa7, 0xb5, 0xd5, 0x21, 0x44, 0x90, - 0x1e, 0xb2, 0xbb, 0x9a, 0xa0, 0x60, 0x90, 0x80, 0xad, 0xd0, 0x8b, 0xa1, 0x90, 0x78, 0xaa, 0x42, - 0x98, 0x9d, 0x9d, 0xdd, 0xae, 0x66, 0x77, 0x96, 0x99, 0xd9, 0xa5, 0x39, 0x08, 0xfd, 0x08, 0x7e, - 0x02, 0x8f, 0x22, 0x7e, 0x0a, 0xeb, 0x49, 0x3c, 0x85, 0x9e, 0x72, 0x34, 0x9b, 0x8b, 0xc7, 0xe2, - 0x27, 0x90, 0x9d, 0xed, 0x86, 0xa6, 0xa4, 0x98, 0xdb, 0x0c, 0xef, 0xf3, 0x7b, 0xf6, 0x79, 0xf7, - 0x9d, 0x17, 0xb6, 0x52, 0x2a, 0xac, 0x80, 0xd9, 0x82, 0x1c, 0xd3, 0x10, 0xdb, 0x41, 0xe4, 0x71, - 0x1c, 0x73, 0x26, 0x29, 0x91, 0x83, 0x20, 0xf2, 0x18, 0x0f, 0xb1, 0x0c, 0x58, 0x64, 0x33, 0xe7, - 0x1d, 0x25, 0xd2, 0xca, 0x4b, 0x4c, 0x7f, 0x58, 0x40, 0x56, 0x01, 0x59, 0x37, 0x41, 0xdb, 0xa6, - 0x1f, 0xc8, 0xe3, 0xc4, 0xb1, 0x08, 0x0b, 0x6d, 0x9f, 0xf9, 0xcc, 0x56, 0xb8, 0x93, 0x78, 0xea, - 0xa6, 0x2e, 0xea, 0x54, 0xd8, 0x6e, 0x37, 0x57, 0xcc, 0x22, 0x47, 0x31, 0x15, 0x97, 0xcc, 0xce, - 0x22, 0xc3, 0xe2, 0x5c, 0x51, 0x16, 0xef, 0x2e, 0x16, 0xaf, 0x72, 0xf5, 0xc5, 0x52, 0x4a, 0x05, - 0x8d, 0xd2, 0x45, 0xbc, 0xfe, 0xb9, 0x02, 0xd7, 0x0e, 0x55, 0xdf, 0xfa, 0x33, 0xb8, 0x1e, 0x52, - 0x89, 0x5d, 0x2c, 0xb1, 0x01, 0x6a, 0x60, 0x77, 0xa3, 0x79, 0xdf, 0x5a, 0xfc, 0x09, 0x85, 0xb0, - 0x4b, 0x25, 0x7e, 0x3d, 0x8a, 0x69, 0x6f, 0x2e, 0xd7, 0x5f, 0xc1, 0xdb, 0x62, 0x24, 0x24, 0x0d, - 0x07, 0x73, 0x87, 0x8a, 0x72, 0x78, 0x70, 0xcd, 0xa1, 0xaf, 0x54, 0xd7, 0x7c, 0xb6, 0x0a, 0xb6, - 0x5b, 0xba, 0xbd, 0x84, 0xff, 0x89, 0x98, 0x12, 0xa3, 0xaa, 0x2c, 0x1e, 0x59, 0xab, 0x4d, 0xc2, - 0xea, 0xc7, 0x94, 0x28, 0x3f, 0x45, 0xb7, 0xbb, 0xdf, 0xcf, 0xf2, 0x10, 0xe7, 0x67, 0xc6, 0x3e, - 0x7c, 0x01, 0xab, 0x07, 0x54, 0xea, 0xed, 0x94, 0x0a, 0x33, 0x60, 0xa6, 0xb2, 0x10, 0x92, 0x27, - 0x44, 0x26, 0x9c, 0x9a, 0x9c, 0x62, 0xb7, 0x51, 0xf3, 0x9e, 0x9c, 0x10, 0x93, 0xb3, 0x44, 0x52, - 0xd7, 0x74, 0x5d, 0x26, 0x4c, 0x07, 0x8b, 0x80, 0x98, 0x21, 0x8b, 0x02, 0xc9, 0x78, 0xfd, 0x0d, - 0x5c, 0x2f, 0x3f, 0xa0, 0x1f, 0xc2, 0x5b, 0x3e, 0x19, 0xa8, 0x8c, 0x45, 0x9b, 0x4f, 0x57, 0xcd, - 0x78, 0x30, 0x64, 0x0e, 0x1e, 0xce, 0x93, 0xae, 0xf9, 0x24, 0x3f, 0xd7, 0x4f, 0x2b, 0x70, 0xb3, - 0x2f, 0xb1, 0x4c, 0xc4, 0xca, 0xb3, 0x28, 0xe4, 0x4b, 0x66, 0x71, 0x04, 0x37, 0x8a, 0x87, 0x3c, - 0xe0, 0xd4, 0x13, 0x46, 0xa5, 0x56, 0xdd, 0xdd, 0x68, 0xde, 0x5b, 0x3a, 0xc9, 0x1e, 0xf5, 0x72, - 0x78, 0x6f, 0xe7, 0xeb, 0x07, 0xe3, 0xa6, 0xc8, 0x3d, 0xc8, 0x4a, 0xad, 0xd0, 0x9f, 0x43, 0x48, - 0x58, 0xe4, 0x06, 0xea, 0x05, 0x19, 0xd5, 0xa5, 0xd6, 0xfb, 0xa5, 0x40, 0xe5, 0xba, 0xa2, 0x6f, - 0xef, 0x9c, 0x77, 0xee, 0xc0, 0x2d, 0xb8, 0x59, 0x46, 0xb5, 0x92, 0xc0, 0xfd, 0xd3, 0xf9, 0xff, - 0x71, 0xa3, 0xd9, 0x68, 0xed, 0x7d, 0x02, 0x3f, 0x3b, 0xa0, 0x37, 0x9e, 0x22, 0x6d, 0x32, 0x45, - 0xda, 0xc5, 0x14, 0x81, 0xd3, 0x0c, 0x81, 0x2f, 0x19, 0x02, 0x3f, 0x32, 0x04, 0xc6, 0x19, 0x02, - 0x93, 0x0c, 0x81, 0x5f, 0x19, 0x02, 0xbf, 0x33, 0xa4, 0x5d, 0x64, 0x08, 0x7c, 0x9c, 0x21, 0xed, - 0xdb, 0x0c, 0x81, 0xf1, 0x0c, 0x69, 0x93, 0x19, 0xd2, 0x8e, 0xde, 0xfa, 0x2c, 0x7e, 0xef, 0x5b, - 0x29, 0x1b, 0x4a, 0xca, 0x39, 0xb6, 0x12, 0x61, 0xab, 0x43, 0xde, 0x8b, 0x19, 0x73, 0x96, 0x06, - 0x2e, 0xe5, 0x66, 0x59, 0xb6, 0x63, 0xc7, 0x67, 0x36, 0x3d, 0x91, 0x97, 0xeb, 0xf1, 0x8f, 0x8d, - 0x74, 0xd6, 0xd4, 0xc2, 0xb4, 0xfe, 0x06, 0x00, 0x00, 0xff, 0xff, 0xc6, 0x0e, 0x73, 0x2f, 0x4e, - 0x04, 0x00, 0x00, + // 569 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xc1, 0x6e, 0xd3, 0x30, + 0x18, 0xc7, 0xe3, 0x16, 0xc6, 0xe4, 0x4e, 0x03, 0xe5, 0x14, 0x56, 0xb0, 0xaa, 0x22, 0xa1, 0x1d, + 0x9a, 0x04, 0x5a, 0x81, 0xc4, 0x84, 0x7a, 0x18, 0x48, 0xbb, 0x30, 0x4d, 0x6a, 0x39, 0x0d, 0x50, + 0xe5, 0x38, 0x4e, 0x16, 0x68, 0xe2, 0xc8, 0x76, 0xa2, 0xf5, 0x80, 0xb4, 0x47, 0xe0, 0x09, 0x38, + 0x23, 0x9e, 0x82, 0x71, 0x02, 0x4e, 0xd5, 0x4e, 0x3d, 0xd2, 0xf4, 0xc2, 0x71, 0xe2, 0x09, 0x50, + 0x9c, 0xa5, 0x5a, 0xa7, 0x4e, 0xf4, 0x66, 0xeb, 0xfb, 0xff, 0xfe, 0xfa, 0x7f, 0xfe, 0xfc, 0xc1, + 0x4e, 0x4a, 0x85, 0x15, 0x30, 0x5b, 0x90, 0x23, 0x1a, 0x62, 0x3b, 0x88, 0x3c, 0x8e, 0x63, 0xce, + 0x24, 0x25, 0x72, 0x10, 0x44, 0x1e, 0xe3, 0x21, 0x96, 0x01, 0x8b, 0x6c, 0xe6, 0xbc, 0xa7, 0x44, + 0x5a, 0x79, 0x89, 0xe9, 0x0f, 0x0b, 0xc8, 0x2a, 0x20, 0xeb, 0x3a, 0x68, 0xcb, 0xf4, 0x03, 0x79, + 0x94, 0x38, 0x16, 0x61, 0xa1, 0xed, 0x33, 0x9f, 0xd9, 0x0a, 0x77, 0x12, 0x4f, 0xdd, 0xd4, 0x45, + 0x9d, 0x0a, 0xdb, 0xad, 0xf6, 0x8a, 0x59, 0xe4, 0x28, 0xa6, 0xe2, 0x82, 0xa9, 0x2f, 0x32, 0x2c, + 0xce, 0x15, 0x65, 0xf1, 0xee, 0x62, 0xf1, 0x32, 0xd7, 0x5c, 0x2c, 0xa5, 0x54, 0xd0, 0x28, 0x5d, + 0xc4, 0x9b, 0x3f, 0x2b, 0x70, 0xed, 0x40, 0xf5, 0xad, 0x3f, 0x83, 0xeb, 0x21, 0x95, 0xd8, 0xc5, + 0x12, 0x1b, 0xa0, 0x01, 0xb6, 0x6b, 0xed, 0xfb, 0xd6, 0xe2, 0x23, 0x14, 0xc2, 0x7d, 0x2a, 0xf1, + 0xeb, 0x51, 0x4c, 0x7b, 0x73, 0xb9, 0xfe, 0x0a, 0xde, 0x16, 0x23, 0x21, 0x69, 0x38, 0x98, 0x3b, + 0x54, 0x94, 0xc3, 0x83, 0x2b, 0x0e, 0x7d, 0xa5, 0xba, 0xe2, 0xb3, 0x59, 0xb0, 0xfb, 0xa5, 0xdb, + 0x4b, 0x78, 0x43, 0xc4, 0x94, 0x18, 0x55, 0x65, 0xf1, 0xc8, 0x5a, 0x6d, 0x12, 0x56, 0x3f, 0xa6, + 0x44, 0xf9, 0x29, 0x7a, 0x27, 0xfe, 0x7e, 0x9a, 0x87, 0x38, 0x3b, 0x35, 0x3c, 0xe8, 0xc2, 0xea, + 0x1e, 0x95, 0xfa, 0xbb, 0x94, 0x0a, 0x33, 0x60, 0xa6, 0xb2, 0x10, 0x92, 0x27, 0x44, 0x26, 0x9c, + 0x9a, 0x9c, 0x62, 0xb7, 0xd5, 0xf0, 0x9e, 0x1c, 0x13, 0x93, 0xb3, 0x44, 0x52, 0xd7, 0x74, 0x5d, + 0x26, 0x4c, 0x07, 0x8b, 0x80, 0x98, 0x21, 0x8b, 0x02, 0xc9, 0xf8, 0x92, 0xba, 0x90, 0x38, 0x72, + 0x31, 0x77, 0x4b, 0x49, 0xf3, 0x0d, 0x5c, 0x2f, 0x33, 0xe8, 0x07, 0xf0, 0x96, 0x4f, 0x06, 0xaa, + 0x8d, 0xe2, 0x25, 0x9e, 0xae, 0xda, 0xc6, 0xde, 0x90, 0x39, 0x78, 0x38, 0x6f, 0x66, 0xcd, 0x27, + 0xf9, 0xb9, 0x79, 0x52, 0x81, 0x1b, 0x7d, 0x89, 0x65, 0x22, 0x56, 0x1e, 0x57, 0x21, 0x5f, 0x32, + 0xae, 0x43, 0x58, 0x2b, 0xfe, 0xfa, 0x80, 0x53, 0x4f, 0x18, 0x95, 0x46, 0x75, 0xbb, 0xd6, 0xbe, + 0xb7, 0x74, 0xd8, 0x3d, 0xea, 0xe5, 0xf0, 0x6e, 0xfd, 0xeb, 0x47, 0xe3, 0xba, 0xc8, 0x3d, 0xc8, + 0x4a, 0xad, 0xd0, 0x9f, 0x43, 0x48, 0x58, 0xe4, 0x06, 0xea, 0x93, 0x19, 0xd5, 0xa5, 0xd6, 0x2f, + 0x4a, 0x81, 0xca, 0x75, 0x49, 0xbf, 0x53, 0x3f, 0xeb, 0xde, 0x81, 0x9b, 0x70, 0xa3, 0x8c, 0x6a, + 0x25, 0x81, 0xfb, 0xb7, 0x7b, 0xf3, 0x71, 0xab, 0xdd, 0xea, 0xec, 0x7e, 0x06, 0xbf, 0xba, 0xa0, + 0x37, 0x9e, 0x22, 0x6d, 0x32, 0x45, 0xda, 0xf9, 0x14, 0x81, 0x93, 0x0c, 0x81, 0x2f, 0x19, 0x02, + 0x3f, 0x32, 0x04, 0xc6, 0x19, 0x02, 0x93, 0x0c, 0x81, 0xdf, 0x19, 0x02, 0x7f, 0x32, 0xa4, 0x9d, + 0x67, 0x08, 0x7c, 0x9a, 0x21, 0xed, 0xdb, 0x0c, 0x81, 0xf1, 0x0c, 0x69, 0x93, 0x19, 0xd2, 0x0e, + 0xdf, 0xfa, 0x2c, 0xfe, 0xe0, 0x5b, 0x29, 0x1b, 0x4a, 0xca, 0x39, 0xb6, 0x12, 0x61, 0xab, 0x43, + 0xde, 0x8b, 0x19, 0x73, 0x96, 0x06, 0x2e, 0xe5, 0x66, 0x59, 0xb6, 0x63, 0xc7, 0x67, 0x36, 0x3d, + 0x96, 0x17, 0x1b, 0xf4, 0x9f, 0xa5, 0x75, 0xd6, 0xd4, 0x4e, 0x75, 0xfe, 0x05, 0x00, 0x00, 0xff, + 0xff, 0xd3, 0xd5, 0x7b, 0x5e, 0x71, 0x04, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/infraprotect_information/pkg.vespkg.go b/pbgo/extschema/schema/infraprotect_information/pkg.vespkg.go index 90d4bac03..8adb940df 100644 --- a/pbgo/extschema/schema/infraprotect_information/pkg.vespkg.go +++ b/pbgo/extschema/schema/infraprotect_information/pkg.vespkg.go @@ -22,6 +22,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.infraprotect_information.GetSpecType"] = GetSpecTypeValidator() vr["ves.io.schema.infraprotect_information.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.infraprotect_information.Policer"] = PolicerValidator() } diff --git a/pbgo/extschema/schema/infraprotect_information/public_crudapi.pb.go b/pbgo/extschema/schema/infraprotect_information/public_crudapi.pb.go index 45eb3c01c..7a2b13b40 100644 --- a/pbgo/extschema/schema/infraprotect_information/public_crudapi.pb.go +++ b/pbgo/extschema/schema/infraprotect_information/public_crudapi.pb.go @@ -320,64 +320,65 @@ func init() { } var fileDescriptor_7dce1eab5350b50d = []byte{ - // 912 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x95, 0x4f, 0x6c, 0x1b, 0x45, - 0x14, 0xc6, 0x3d, 0xb6, 0x63, 0x92, 0x09, 0x4a, 0xcc, 0xa0, 0xb6, 0x1b, 0x13, 0xad, 0xac, 0x08, - 0x55, 0x11, 0x62, 0x77, 0x25, 0x1b, 0x0e, 0xfc, 0x2b, 0xb2, 0x53, 0xc7, 0x4a, 0x21, 0x71, 0xb5, - 0x76, 0xab, 0x0a, 0x21, 0xad, 0xd6, 0xbb, 0xcf, 0xdb, 0x05, 0x7b, 0x67, 0x99, 0x99, 0x35, 0x8d, - 0x50, 0x24, 0xd4, 0x13, 0xe2, 0x84, 0xc4, 0xad, 0xe2, 0xc0, 0x09, 0x71, 0xe7, 0x82, 0xe4, 0x4b, - 0x6e, 0x54, 0x3d, 0xa0, 0x08, 0x2e, 0x39, 0x12, 0x87, 0x43, 0x8f, 0xbd, 0xf6, 0x86, 0x3c, 0xbb, - 0x36, 0xb1, 0x9b, 0xaa, 0x6e, 0x4e, 0x3b, 0x33, 0xdf, 0xfb, 0x7e, 0xfb, 0xde, 0xce, 0xce, 0x1b, - 0xfc, 0x41, 0x1f, 0xb8, 0xee, 0x53, 0x83, 0x3b, 0x77, 0xa1, 0x67, 0x1b, 0x7e, 0xd0, 0x61, 0x76, - 0xc8, 0xa8, 0x00, 0x47, 0x58, 0x7e, 0xd0, 0xa1, 0xac, 0x67, 0x0b, 0x9f, 0x06, 0x46, 0x18, 0xb5, - 0xbb, 0xbe, 0x63, 0x39, 0x2c, 0x72, 0xed, 0xd0, 0xd7, 0x47, 0x21, 0x94, 0x5c, 0x8d, 0xcd, 0x7a, - 0x6c, 0xd6, 0x9f, 0x67, 0x2e, 0x68, 0x9e, 0x2f, 0xee, 0x46, 0x6d, 0xdd, 0xa1, 0x3d, 0xc3, 0xa3, - 0x1e, 0x35, 0xa4, 0xbd, 0x1d, 0x75, 0xe4, 0x4c, 0x4e, 0xe4, 0x28, 0xc6, 0x16, 0xd6, 0x3d, 0x4a, - 0xbd, 0x2e, 0x18, 0x76, 0xe8, 0x1b, 0x76, 0x10, 0x50, 0x21, 0x29, 0x3c, 0x51, 0xdf, 0x48, 0xd4, - 0x09, 0x03, 0x7a, 0xa1, 0xd8, 0x4f, 0xc4, 0xc2, 0x74, 0x39, 0xc0, 0x18, 0x65, 0x63, 0x63, 0x79, - 0xce, 0x52, 0x69, 0xfb, 0x0b, 0x70, 0x44, 0x62, 0x2a, 0xcd, 0x69, 0x12, 0xfb, 0x21, 0x4c, 0x32, - 0x9c, 0xf6, 0xd0, 0xf0, 0x6c, 0xfa, 0x6b, 0xd3, 0xe2, 0x59, 0xdf, 0xc6, 0xb4, 0xd4, 0x07, 0x0e, - 0x41, 0x7f, 0xc6, 0x5e, 0x9c, 0x89, 0xf1, 0xe1, 0x6b, 0x6b, 0x2a, 0x62, 0xe3, 0x17, 0x84, 0x71, - 0x1d, 0x84, 0x09, 0x5f, 0x45, 0xc0, 0x05, 0x59, 0xc7, 0x4b, 0x81, 0xdd, 0x03, 0x1e, 0xda, 0x0e, - 0x28, 0xa8, 0x88, 0x36, 0x97, 0xcc, 0xff, 0x17, 0x08, 0xc1, 0xd9, 0xd1, 0x44, 0x49, 0x4b, 0x41, - 0x8e, 0x49, 0x07, 0xaf, 0x32, 0xe0, 0x21, 0x0d, 0x38, 0x58, 0x71, 0x81, 0x4a, 0xa6, 0x88, 0x36, - 0x57, 0x4a, 0x1f, 0xe9, 0xf3, 0xed, 0xb7, 0x2e, 0x5f, 0x1f, 0x13, 0xb6, 0xe5, 0xe2, 0x16, 0x75, - 0xc1, 0x5c, 0x61, 0x53, 0x6b, 0x1b, 0xdf, 0x2f, 0xe0, 0xe5, 0x33, 0x91, 0xc4, 0xc0, 0x79, 0x06, - 0x9c, 0x46, 0xcc, 0x01, 0xab, 0x0f, 0x8c, 0xfb, 0x34, 0x50, 0xb2, 0xa3, 0xbc, 0xaa, 0xd9, 0xc7, - 0x03, 0x84, 0xcc, 0xd5, 0xb1, 0x7a, 0x3b, 0x16, 0xc9, 0x87, 0x78, 0xb1, 0x07, 0xc2, 0x76, 0x6d, - 0x61, 0x2b, 0x0b, 0x45, 0xb4, 0xb9, 0x5c, 0x2a, 0xce, 0x64, 0xd8, 0x90, 0x5b, 0x59, 0x07, 0xb1, - 0x0b, 0xc2, 0x6e, 0xed, 0x87, 0x60, 0x4e, 0x1c, 0xa4, 0x81, 0x57, 0xf9, 0x3e, 0x17, 0xd0, 0xb3, - 0x26, 0x90, 0x57, 0x24, 0xe4, 0xea, 0x0c, 0xa4, 0x29, 0xa3, 0x9e, 0x45, 0xad, 0xc4, 0xf6, 0xdd, - 0x31, 0xf0, 0x0e, 0xce, 0xf2, 0x10, 0x1c, 0x25, 0x27, 0x29, 0xe5, 0x97, 0xf8, 0x58, 0xcd, 0x10, - 0x9c, 0x11, 0xb2, 0xba, 0xfa, 0xe0, 0xe0, 0xd5, 0x11, 0x43, 0xf7, 0x1c, 0x6b, 0xf4, 0x34, 0x25, - 0x91, 0x34, 0x71, 0x8e, 0x0b, 0x5b, 0x44, 0x5c, 0xf9, 0xf9, 0x27, 0x54, 0xcc, 0x6c, 0x2e, 0x97, - 0xde, 0x99, 0x97, 0xde, 0x94, 0xbe, 0x38, 0xf9, 0x6a, 0xe6, 0xf0, 0x00, 0x99, 0x09, 0x8a, 0xec, - 0xe0, 0xd7, 0x18, 0x74, 0x80, 0x31, 0x3f, 0xf0, 0xac, 0xf8, 0x9f, 0xe7, 0xca, 0xa2, 0xa4, 0xaf, - 0x9f, 0xfb, 0x19, 0x4d, 0xe8, 0xc8, 0xba, 0xf3, 0x13, 0x5b, 0xbc, 0xce, 0xc9, 0x6d, 0xac, 0xb8, - 0xd0, 0x05, 0x01, 0xae, 0x15, 0x6b, 0xe0, 0x4e, 0x88, 0x4b, 0x73, 0x10, 0x2f, 0x27, 0x6e, 0x33, - 0x31, 0x8f, 0xb9, 0x77, 0xf0, 0x9a, 0xeb, 0x73, 0xbb, 0xdd, 0x3d, 0x0f, 0x8c, 0xe7, 0x00, 0x5f, - 0x19, 0xdb, 0x67, 0xc8, 0xef, 0x2f, 0x3d, 0xba, 0x96, 0x8b, 0xc7, 0x37, 0xb2, 0x8b, 0x28, 0x9f, - 0x7e, 0xeb, 0x37, 0x84, 0x2f, 0x9d, 0xfb, 0xdb, 0x92, 0x02, 0xbe, 0x5c, 0xaf, 0xb5, 0x2c, 0xb3, - 0x79, 0xd3, 0xda, 0x6e, 0x98, 0xbb, 0x95, 0x96, 0x75, 0xbd, 0xb6, 0x5d, 0xb9, 0xf5, 0x69, 0x2b, - 0x9f, 0x22, 0x6b, 0xf8, 0xd2, 0x8c, 0xd6, 0x6c, 0x55, 0x5a, 0xb7, 0x9a, 0xf9, 0x0c, 0xb9, 0x82, - 0x5f, 0x9f, 0x91, 0xcc, 0x5a, 0xe5, 0x7a, 0x3e, 0x4b, 0xde, 0xc4, 0xc5, 0x67, 0x84, 0xed, 0x9a, - 0x69, 0xee, 0xec, 0xd5, 0xad, 0x46, 0xf5, 0x46, 0x6d, 0xab, 0xd5, 0xcc, 0x2f, 0x9c, 0x13, 0x55, - 0x35, 0x1b, 0x9f, 0xd4, 0xf6, 0xe2, 0xe0, 0xda, 0xde, 0x56, 0xad, 0x99, 0xcf, 0x95, 0x9e, 0xa6, - 0x71, 0xa6, 0x72, 0x73, 0x87, 0x3c, 0x45, 0x38, 0x53, 0x07, 0x41, 0x4a, 0x2f, 0x75, 0x42, 0x65, - 0x83, 0x28, 0x94, 0x2f, 0x70, 0xaa, 0x37, 0xbe, 0x43, 0x0f, 0x7f, 0x4f, 0xa3, 0xe1, 0x1f, 0xca, - 0x7b, 0x7d, 0xe0, 0x9a, 0x4f, 0x35, 0xe9, 0xe2, 0x82, 0x45, 0x8e, 0x88, 0x18, 0x68, 0x0c, 0x6c, - 0xf7, 0xed, 0xce, 0xbb, 0xf7, 0x1c, 0x8d, 0xd1, 0x48, 0x80, 0xab, 0xb9, 0x2e, 0xe5, 0x5a, 0xdb, - 0xe6, 0xbe, 0xa3, 0xf5, 0x68, 0xe0, 0x0b, 0xca, 0xee, 0xff, 0xfd, 0xef, 0x8f, 0xe9, 0x0a, 0xf9, - 0x38, 0xb9, 0x5a, 0x8c, 0x49, 0x53, 0xe2, 0xc6, 0x37, 0x93, 0xf1, 0xc1, 0x73, 0x3b, 0x6e, 0x12, - 0x75, 0x50, 0xe8, 0x1f, 0x0e, 0x50, 0xfa, 0xaf, 0x01, 0xd2, 0xe6, 0x2c, 0x23, 0xde, 0xf6, 0xe3, - 0x01, 0x42, 0xc3, 0x01, 0x2a, 0x5f, 0xe0, 0x18, 0xdd, 0xff, 0x73, 0xd4, 0x2e, 0xab, 0x0f, 0xd0, - 0xa3, 0x6b, 0xc8, 0x3c, 0x3a, 0x51, 0x53, 0xc7, 0x27, 0x6a, 0xea, 0xc9, 0x89, 0x8a, 0xbe, 0x1d, - 0xaa, 0xe8, 0xd7, 0xa1, 0x8a, 0x1e, 0x0e, 0x55, 0x74, 0x34, 0x54, 0xd1, 0x3f, 0x43, 0x15, 0x3d, - 0x1e, 0xaa, 0xa9, 0x27, 0x43, 0x15, 0xfd, 0x70, 0xaa, 0xa6, 0x0e, 0x4f, 0x55, 0x74, 0x74, 0xaa, - 0xa6, 0x8e, 0x4f, 0xd5, 0xd4, 0x67, 0x9f, 0x7b, 0x34, 0xfc, 0xd2, 0xd3, 0xfb, 0xb4, 0x2b, 0x80, - 0x31, 0x5b, 0x8f, 0xb8, 0x21, 0x07, 0xa3, 0x77, 0x6a, 0x21, 0xa3, 0x7d, 0xdf, 0x05, 0xa6, 0x8d, - 0x65, 0x23, 0x6c, 0x7b, 0xd4, 0x80, 0x7b, 0x22, 0xe9, 0xfb, 0x2f, 0xb8, 0x8e, 0xda, 0x39, 0x79, - 0x17, 0x94, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x57, 0x0b, 0x96, 0x1a, 0xdf, 0x07, 0x00, 0x00, + // 921 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x95, 0xcf, 0x6f, 0x1b, 0x45, + 0x14, 0xc7, 0x3d, 0xb6, 0x63, 0x92, 0x09, 0x4a, 0xcc, 0xa2, 0xb6, 0x1b, 0x13, 0xad, 0xac, 0x08, + 0x55, 0x11, 0x62, 0x77, 0x25, 0x1b, 0x2e, 0xfc, 0x28, 0xb2, 0x53, 0xc7, 0x4a, 0x21, 0x71, 0xb5, + 0x76, 0xab, 0x0a, 0x90, 0x56, 0xe3, 0xdd, 0xe7, 0xed, 0x82, 0xbd, 0xb3, 0xcc, 0xcc, 0x9a, 0x46, + 0x28, 0x12, 0xea, 0x91, 0x13, 0x12, 0xb7, 0x96, 0x03, 0x27, 0x84, 0xb8, 0x72, 0x41, 0xf2, 0x25, + 0x37, 0xaa, 0x1e, 0x50, 0x04, 0x97, 0x1c, 0x89, 0xc3, 0xa1, 0xc7, 0xfe, 0x09, 0xc8, 0xb3, 0x6b, + 0x13, 0x3b, 0xa9, 0xea, 0xf6, 0xb4, 0x6f, 0xe6, 0xfb, 0xbe, 0x9f, 0x7d, 0x6f, 0x77, 0x7e, 0xe0, + 0xf7, 0xfb, 0xc0, 0x0d, 0x9f, 0x9a, 0xdc, 0xb9, 0x0b, 0x3d, 0x62, 0xfa, 0x41, 0x87, 0x91, 0x90, + 0x51, 0x01, 0x8e, 0xb0, 0xfd, 0xa0, 0x43, 0x59, 0x8f, 0x08, 0x9f, 0x06, 0x66, 0x18, 0xb5, 0xbb, + 0xbe, 0x63, 0x3b, 0x2c, 0x72, 0x49, 0xe8, 0x1b, 0xa3, 0x14, 0xaa, 0x5c, 0x8d, 0xcd, 0x46, 0x6c, + 0x36, 0x9e, 0x65, 0x2e, 0xe8, 0x9e, 0x2f, 0xee, 0x46, 0x6d, 0xc3, 0xa1, 0x3d, 0xd3, 0xa3, 0x1e, + 0x35, 0xa5, 0xbd, 0x1d, 0x75, 0xe4, 0x48, 0x0e, 0x64, 0x14, 0x63, 0x0b, 0xeb, 0x1e, 0xa5, 0x5e, + 0x17, 0x4c, 0x12, 0xfa, 0x26, 0x09, 0x02, 0x2a, 0x24, 0x85, 0x27, 0xea, 0x1b, 0x89, 0x3a, 0x61, + 0x40, 0x2f, 0x14, 0xfb, 0x89, 0x58, 0x98, 0x6e, 0x07, 0x18, 0xa3, 0x6c, 0x6c, 0x2c, 0xcf, 0xd9, + 0x2a, 0x6d, 0x7f, 0x01, 0x8e, 0x48, 0x4c, 0xa5, 0x39, 0x4d, 0x62, 0x3f, 0x84, 0x49, 0x85, 0xd3, + 0x1e, 0x1a, 0x9e, 0x2d, 0x7f, 0x6d, 0x5a, 0x3c, 0xeb, 0xdb, 0x98, 0x96, 0xfa, 0xc0, 0x21, 0xe8, + 0xcf, 0xd8, 0x8b, 0x33, 0x39, 0x3e, 0x7c, 0x6d, 0x4f, 0x65, 0x6c, 0xfc, 0x8c, 0x30, 0xae, 0x83, + 0xb0, 0xe0, 0xab, 0x08, 0xb8, 0x50, 0xd6, 0xf1, 0x52, 0x40, 0x7a, 0xc0, 0x43, 0xe2, 0x80, 0x8a, + 0x8a, 0x68, 0x73, 0xc9, 0xfa, 0x7f, 0x42, 0x51, 0x70, 0x76, 0x34, 0x50, 0xd3, 0x52, 0x90, 0xb1, + 0xd2, 0xc1, 0xab, 0x0c, 0x78, 0x48, 0x03, 0x0e, 0x76, 0xdc, 0xa0, 0x9a, 0x29, 0xa2, 0xcd, 0x95, + 0xd2, 0x87, 0xc6, 0x7c, 0xff, 0xdb, 0x90, 0xaf, 0x8f, 0x09, 0xdb, 0x72, 0x72, 0x8b, 0xba, 0x60, + 0xad, 0xb0, 0xa9, 0xb9, 0x8d, 0xef, 0x16, 0xf0, 0xf2, 0x99, 0x4c, 0xc5, 0xc4, 0x79, 0x06, 0x9c, + 0x46, 0xcc, 0x01, 0xbb, 0x0f, 0x8c, 0xfb, 0x34, 0x50, 0xb3, 0xa3, 0xba, 0xaa, 0xd9, 0x27, 0x03, + 0x84, 0xac, 0xd5, 0xb1, 0x7a, 0x3b, 0x16, 0x95, 0x0f, 0xf0, 0x62, 0x0f, 0x04, 0x71, 0x89, 0x20, + 0xea, 0x42, 0x11, 0x6d, 0x2e, 0x97, 0x8a, 0x33, 0x15, 0x36, 0xe4, 0xaf, 0xac, 0x83, 0xd8, 0x05, + 0x41, 0x5a, 0xfb, 0x21, 0x58, 0x13, 0x87, 0xd2, 0xc0, 0xab, 0x7c, 0x9f, 0x0b, 0xe8, 0xd9, 0x13, + 0xc8, 0x2b, 0x12, 0x72, 0x75, 0x06, 0xd2, 0x94, 0x59, 0xe7, 0x51, 0x2b, 0xb1, 0x7d, 0x77, 0x0c, + 0xbc, 0x83, 0xb3, 0x3c, 0x04, 0x47, 0xcd, 0x49, 0x4a, 0xf9, 0x05, 0x3e, 0x56, 0x33, 0x04, 0x67, + 0x84, 0xac, 0xae, 0x3e, 0x38, 0x78, 0x75, 0xc4, 0x30, 0x3c, 0xc7, 0x1e, 0x3d, 0x2d, 0x49, 0x54, + 0x9a, 0x38, 0xc7, 0x05, 0x11, 0x11, 0x57, 0x7f, 0xfa, 0x11, 0x15, 0x33, 0x9b, 0xcb, 0xa5, 0x77, + 0xe6, 0xa5, 0x37, 0xa5, 0x2f, 0x2e, 0xbe, 0x9a, 0x39, 0x3c, 0x40, 0x56, 0x82, 0x52, 0x76, 0xf0, + 0x6b, 0x0c, 0x3a, 0xc0, 0x98, 0x1f, 0x78, 0x76, 0xbc, 0xe6, 0xb9, 0xba, 0x28, 0xe9, 0xeb, 0x17, + 0x7e, 0x46, 0x0b, 0x3a, 0xb2, 0xef, 0xfc, 0xc4, 0x16, 0xcf, 0x73, 0xe5, 0x36, 0x56, 0x5d, 0xe8, + 0x82, 0x00, 0xd7, 0x8e, 0x35, 0x70, 0x27, 0xc4, 0xa5, 0x39, 0x88, 0x97, 0x13, 0xb7, 0x95, 0x98, + 0xc7, 0xdc, 0x3b, 0x78, 0xcd, 0xf5, 0x39, 0x69, 0x77, 0x2f, 0x02, 0xe3, 0x39, 0xc0, 0x57, 0xc6, + 0xf6, 0x19, 0xf2, 0x7b, 0x4b, 0x8f, 0xaf, 0xe5, 0xe2, 0xf8, 0x46, 0x76, 0x11, 0xe5, 0xd3, 0x6f, + 0xfd, 0x86, 0xf0, 0xa5, 0x0b, 0x97, 0xad, 0x52, 0xc0, 0x97, 0xeb, 0xb5, 0x96, 0x6d, 0x35, 0x6f, + 0xda, 0xdb, 0x0d, 0x6b, 0xb7, 0xd2, 0xb2, 0xaf, 0xd7, 0xb6, 0x2b, 0xb7, 0x3e, 0x69, 0xe5, 0x53, + 0xca, 0x1a, 0xbe, 0x34, 0xa3, 0x35, 0x5b, 0x95, 0xd6, 0xad, 0x66, 0x3e, 0xa3, 0x5c, 0xc1, 0xaf, + 0xcf, 0x48, 0x56, 0xad, 0x72, 0x3d, 0x9f, 0x55, 0xde, 0xc4, 0xc5, 0x73, 0xc2, 0x76, 0xcd, 0xb2, + 0x76, 0xf6, 0xea, 0x76, 0xa3, 0x7a, 0xa3, 0xb6, 0xd5, 0x6a, 0xe6, 0x17, 0x2e, 0xc8, 0xaa, 0x5a, + 0x8d, 0x8f, 0x6b, 0x7b, 0x71, 0x72, 0x6d, 0x6f, 0xab, 0xd6, 0xcc, 0xe7, 0x4a, 0x0f, 0x33, 0x38, + 0x53, 0xb9, 0xb9, 0xa3, 0x3c, 0x4c, 0xe3, 0x4c, 0x1d, 0x84, 0x52, 0x7a, 0xa1, 0x1d, 0x2a, 0x0f, + 0x88, 0x42, 0xf9, 0x25, 0x76, 0xf5, 0xc6, 0xaf, 0xe8, 0xd1, 0xef, 0x69, 0x34, 0xfc, 0x43, 0xfd, + 0xac, 0x0f, 0x5c, 0xf7, 0xa9, 0x2e, 0x5d, 0x5c, 0xb0, 0xc8, 0x11, 0x11, 0x03, 0x9d, 0x01, 0x71, + 0xdf, 0xee, 0xbc, 0x7b, 0xcf, 0xd1, 0x19, 0x8d, 0x04, 0xb8, 0xba, 0xeb, 0x52, 0xae, 0xb7, 0x09, + 0xf7, 0x1d, 0xbd, 0x47, 0x03, 0x5f, 0x50, 0x76, 0x5e, 0xe6, 0x82, 0x04, 0x2e, 0x61, 0xee, 0x38, + 0xe3, 0xfe, 0xdf, 0xff, 0xfe, 0x90, 0xae, 0x28, 0x1f, 0x25, 0x97, 0x8f, 0x39, 0x39, 0xb6, 0xb8, + 0xf9, 0xcd, 0x24, 0x3e, 0x78, 0xe6, 0x99, 0x9c, 0x64, 0x1d, 0x14, 0xfa, 0x87, 0x03, 0x94, 0xfe, + 0x6b, 0x80, 0xf4, 0x39, 0x1b, 0x8d, 0x17, 0xc6, 0xf1, 0x00, 0xa1, 0xe1, 0x00, 0x95, 0x5f, 0x62, + 0xa3, 0xdd, 0xff, 0x73, 0x74, 0xa0, 0x56, 0x1f, 0xa0, 0xc7, 0xd7, 0x90, 0x75, 0x74, 0xa2, 0xa5, + 0x8e, 0x4f, 0xb4, 0xd4, 0xd3, 0x13, 0x0d, 0x7d, 0x3b, 0xd4, 0xd0, 0x2f, 0x43, 0x0d, 0x3d, 0x1a, + 0x6a, 0xe8, 0x68, 0xa8, 0xa1, 0x7f, 0x86, 0x1a, 0x7a, 0x32, 0xd4, 0x52, 0x4f, 0x87, 0x1a, 0xfa, + 0xfe, 0x54, 0x4b, 0x1d, 0x9e, 0x6a, 0xe8, 0xe8, 0x54, 0x4b, 0x1d, 0x9f, 0x6a, 0xa9, 0x4f, 0x3f, + 0xf7, 0x68, 0xf8, 0xa5, 0x67, 0xf4, 0x69, 0x57, 0x00, 0x63, 0xc4, 0x88, 0xb8, 0x29, 0x83, 0xd1, + 0x3b, 0xf5, 0x90, 0xd1, 0xbe, 0xef, 0x02, 0xd3, 0xc7, 0xb2, 0x19, 0xb6, 0x3d, 0x6a, 0xc2, 0x3d, + 0x91, 0xdc, 0x0c, 0xcf, 0xb9, 0xb0, 0xda, 0x39, 0x79, 0x5b, 0x94, 0xff, 0x0b, 0x00, 0x00, 0xff, + 0xff, 0xf9, 0x2b, 0xfc, 0xc5, 0x01, 0x08, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/infraprotect_information/public_crudapi.vesapi.go b/pbgo/extschema/schema/infraprotect_information/public_crudapi.vesapi.go index 81e334581..95424d9be 100644 --- a/pbgo/extschema/schema/infraprotect_information/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/infraprotect_information/public_crudapi.vesapi.go @@ -900,6 +900,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "No default tunnel BGP secret" }, + "policer": { + "description": " Policer config for bandwidth restrictions", + "$ref": "#/definitions/infraprotect_informationPolicer", + "x-displayname": "Policer Config" + }, "prefixes": { "type": "array", "description": " List of tenant 'super' prefixes noted in CIDR\n\nExample: - \"value\"-", @@ -948,6 +953,25 @@ var APISwaggerJSON string = `{ } } }, + "infraprotect_informationPolicer": { + "type": "object", + "description": "Policer config for bandwidth restrictions", + "title": "Policer Config", + "x-displayname": "Policer Config", + "x-ves-proto-message": "ves.io.schema.infraprotect_information.Policer", + "properties": { + "bandwidth_max_mb": { + "type": "integer", + "description": " Bandwidth max allowed for a customer defined by contract\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 9999\n", + "title": "Bandwidth Max", + "format": "int64", + "x-displayname": "Bandwidth Max in MB", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "9999" + } + } + } + }, "infraprotect_informationStatusObject": { "type": "object", "title": "Most recently observed status of object", @@ -1170,10 +1194,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/infraprotect_information/types.pb.go b/pbgo/extschema/schema/infraprotect_information/types.pb.go index 8e8e6c088..5a77f9bf4 100644 --- a/pbgo/extschema/schema/infraprotect_information/types.pb.go +++ b/pbgo/extschema/schema/infraprotect_information/types.pb.go @@ -28,7 +28,7 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package -// information +// Information // // x-displayName: "Information" // Organisation information @@ -105,6 +105,11 @@ type GlobalSpecType struct { // *GlobalSpecType_AsPathChoiceOrigin // *GlobalSpecType_AsPathChoiceNone AsPathChoice isGlobalSpecType_AsPathChoice `protobuf_oneof:"as_path_choice"` + // Policer Config + // + // x-displayName: "Policer Config" + // Policer config for bandwidth restrictions + Policer *Policer `protobuf:"bytes,21,opt,name=policer,proto3" json:"policer,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } @@ -335,6 +340,13 @@ func (m *GlobalSpecType) GetAsPathChoiceNone() *schema.Empty { return nil } +func (m *GlobalSpecType) GetPolicer() *Policer { + if m != nil { + return m.Policer + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -351,6 +363,53 @@ func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { } } +// Policer Config +// +// x-displayName: "Policer Config" +// Policer config for bandwidth restrictions +type Policer struct { + // Bandwidth Max + // + // x-displayName: "Bandwidth Max in MB" + // Bandwidth max allowed for a customer defined by contract + BandwidthMaxMb uint32 `protobuf:"varint,1,opt,name=bandwidth_max_mb,json=bandwidthMaxMb,proto3" json:"bandwidth_max_mb,omitempty"` +} + +func (m *Policer) Reset() { *m = Policer{} } +func (*Policer) ProtoMessage() {} +func (*Policer) Descriptor() ([]byte, []int) { + return fileDescriptor_8a2a3e6209fce53f, []int{1} +} +func (m *Policer) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Policer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Policer) XXX_Merge(src proto.Message) { + xxx_messageInfo_Policer.Merge(m, src) +} +func (m *Policer) XXX_Size() int { + return m.Size() +} +func (m *Policer) XXX_DiscardUnknown() { + xxx_messageInfo_Policer.DiscardUnknown(m) +} + +var xxx_messageInfo_Policer proto.InternalMessageInfo + +func (m *Policer) GetBandwidthMaxMb() uint32 { + if m != nil { + return m.BandwidthMaxMb + } + return 0 +} + // Get InfraProtect Information // // x-displayName: "Get Infraprotect Information" @@ -379,12 +438,13 @@ type GetSpecType struct { // *GetSpecType_AsPathChoiceOrigin // *GetSpecType_AsPathChoiceNone AsPathChoice isGetSpecType_AsPathChoice `protobuf_oneof:"as_path_choice"` + Policer *Policer `protobuf:"bytes,21,opt,name=policer,proto3" json:"policer,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } func (*GetSpecType) ProtoMessage() {} func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_8a2a3e6209fce53f, []int{1} + return fileDescriptor_8a2a3e6209fce53f, []int{2} } func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -609,6 +669,13 @@ func (m *GetSpecType) GetAsPathChoiceNone() *schema.Empty { return nil } +func (m *GetSpecType) GetPolicer() *Policer { + if m != nil { + return m.Policer + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -627,6 +694,7 @@ func (*GetSpecType) XXX_OneofWrappers() []interface{} { func init() { proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.infraprotect_information.GlobalSpecType") + proto.RegisterType((*Policer)(nil), "ves.io.schema.infraprotect_information.Policer") proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.infraprotect_information.GetSpecType") } @@ -635,65 +703,70 @@ func init() { } var fileDescriptor_8a2a3e6209fce53f = []byte{ - // 916 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x96, 0x41, 0x6f, 0xe3, 0x44, - 0x14, 0xc7, 0x33, 0xdb, 0xb4, 0x75, 0xa6, 0xd0, 0xa6, 0xb3, 0x05, 0x39, 0x59, 0xd6, 0x44, 0x65, - 0x29, 0x45, 0x4a, 0xe3, 0x4d, 0xab, 0xc0, 0xb2, 0x12, 0x48, 0x78, 0xd9, 0xdd, 0x6e, 0x24, 0x0a, - 0x4a, 0x17, 0x0e, 0x2b, 0xa4, 0xd1, 0xc4, 0x9e, 0x38, 0x43, 0x6d, 0xcf, 0xc8, 0x1e, 0x67, 0x9b, - 0x1b, 0xea, 0x27, 0xe0, 0x80, 0xf8, 0x0c, 0x7c, 0x07, 0x5f, 0x7a, 0x44, 0x9c, 0x72, 0xec, 0x91, - 0xba, 0x17, 0x8e, 0x7b, 0xee, 0x09, 0x65, 0xe2, 0x2e, 0x49, 0x69, 0xb2, 0x15, 0x47, 0xd4, 0xdb, - 0xb3, 0xff, 0xef, 0xff, 0x7b, 0xf3, 0xc6, 0xd6, 0xd3, 0x83, 0xdb, 0x3d, 0x1a, 0xd5, 0x18, 0x37, - 0x23, 0xbb, 0x4b, 0x7d, 0x62, 0xb2, 0xa0, 0x13, 0x12, 0x11, 0x72, 0x49, 0x6d, 0x89, 0x59, 0xd0, - 0xe1, 0xa1, 0x4f, 0x24, 0xe3, 0x81, 0x29, 0xfb, 0x82, 0x46, 0xb5, 0xa1, 0xc2, 0xd1, 0xc6, 0xc8, - 0x53, 0x1b, 0x79, 0x6a, 0xd3, 0x3c, 0xe5, 0x2d, 0x97, 0xc9, 0x6e, 0xdc, 0xae, 0xd9, 0xdc, 0x37, - 0x5d, 0xee, 0x72, 0x53, 0xd9, 0xdb, 0x71, 0x47, 0x3d, 0xa9, 0x07, 0x15, 0x8d, 0xb0, 0xe5, 0xf7, - 0x5c, 0xce, 0x5d, 0x8f, 0x9a, 0x44, 0x30, 0x93, 0x04, 0x01, 0x97, 0x8a, 0x92, 0x15, 0x2d, 0x97, - 0x32, 0xf5, 0x35, 0x83, 0x04, 0xfd, 0x4c, 0xba, 0x33, 0xd9, 0x03, 0x17, 0xe3, 0xbe, 0xbb, 0x93, - 0xa2, 0xe8, 0x49, 0x3c, 0xd6, 0x4b, 0xb9, 0x34, 0x29, 0x8f, 0x4b, 0x95, 0x49, 0xa9, 0xc7, 0xe8, - 0x4b, 0x3c, 0xc1, 0x5e, 0x1f, 0x14, 0xe0, 0xf2, 0x53, 0x8f, 0xb7, 0x89, 0xb7, 0x2f, 0xa8, 0xfd, - 0xbc, 0x2f, 0x28, 0x2a, 0xc2, 0x39, 0x12, 0x05, 0x3a, 0xa8, 0x80, 0xcd, 0xf9, 0xd6, 0x30, 0x44, - 0x08, 0xe6, 0xe3, 0x98, 0x39, 0xfa, 0xad, 0x0a, 0xd8, 0x2c, 0xb4, 0x54, 0x8c, 0xca, 0x50, 0x13, - 0x21, 0xed, 0xb0, 0x43, 0x1a, 0xe9, 0x73, 0x95, 0xb9, 0xcd, 0x42, 0xeb, 0xf5, 0x33, 0xba, 0x03, - 0x0b, 0x24, 0x6c, 0xf3, 0x10, 0xdb, 0xcc, 0xd1, 0xf3, 0xca, 0xa4, 0xa9, 0x17, 0x8f, 0x98, 0x83, - 0xee, 0xc3, 0x35, 0x11, 0x32, 0x9f, 0x84, 0x7d, 0x1c, 0x50, 0xf9, 0x92, 0x87, 0x07, 0x38, 0x20, - 0x3e, 0xd5, 0xe7, 0x55, 0x1e, 0xca, 0xb4, 0xbd, 0x91, 0xb4, 0x47, 0x7c, 0x8a, 0x76, 0x60, 0x21, - 0xa4, 0x71, 0x44, 0x31, 0x13, 0x91, 0xbe, 0x58, 0x01, 0x9b, 0x4b, 0xdb, 0x6b, 0xb5, 0xc9, 0x0f, - 0xf8, 0xd8, 0x17, 0xb2, 0xbf, 0x9b, 0x6b, 0x69, 0x2a, 0xf1, 0x99, 0x88, 0x90, 0x05, 0x57, 0x87, - 0x16, 0x87, 0x3a, 0xcc, 0x26, 0x92, 0x3a, 0xca, 0xac, 0xcd, 0x34, 0xaf, 0xc4, 0x11, 0xfd, 0xea, - 0x22, 0x7f, 0xc8, 0xf8, 0x11, 0x6e, 0x84, 0x3c, 0x96, 0x14, 0x13, 0xa7, 0x47, 0x43, 0xc9, 0x22, - 0xea, 0xd3, 0x40, 0x62, 0xdf, 0xf5, 0x25, 0x0e, 0xb8, 0xc4, 0x91, 0xa0, 0x36, 0xeb, 0x30, 0xea, - 0xe8, 0x4b, 0x33, 0xc0, 0xa0, 0xb5, 0xae, 0x28, 0x5f, 0x8e, 0x43, 0xbe, 0x76, 0x7d, 0xb9, 0xc7, - 0xe5, 0xfe, 0x05, 0x01, 0x39, 0xf0, 0x83, 0xa9, 0xb5, 0xe2, 0x88, 0x05, 0x2e, 0xee, 0x34, 0x0e, - 0x6d, 0xfd, 0xad, 0x99, 0x85, 0xde, 0xbf, 0xba, 0xd0, 0x77, 0x43, 0xff, 0x93, 0xc6, 0xa1, 0x8d, - 0x0e, 0xe0, 0x47, 0x33, 0x3b, 0x1a, 0xab, 0xf4, 0xf6, 0x7f, 0x6c, 0xe9, 0x9f, 0x62, 0x2f, 0xa0, - 0xe1, 0xd0, 0x0e, 0x89, 0x3d, 0x89, 0x65, 0x1c, 0x04, 0xd4, 0xc3, 0x6d, 0x57, 0xe0, 0x88, 0xda, - 0x21, 0x1d, 0x56, 0x0b, 0xa8, 0xbe, 0x32, 0xa3, 0xc6, 0xad, 0x56, 0x39, 0x73, 0x3f, 0x57, 0x66, - 0xcb, 0x15, 0xfb, 0xca, 0xba, 0xc7, 0x03, 0x8a, 0xbe, 0x87, 0xa5, 0xa9, 0x6c, 0xbd, 0xa8, 0xb0, - 0xa5, 0x4b, 0xd8, 0x91, 0x7b, 0xf8, 0x8b, 0xef, 0xde, 0x6a, 0xbd, 0x7b, 0x35, 0x1b, 0x3d, 0x86, - 0xb7, 0x49, 0x84, 0x05, 0x91, 0x5d, 0x6c, 0x77, 0x39, 0xb3, 0x29, 0xee, 0xc4, 0x9e, 0xa7, 0xa3, - 0x19, 0x07, 0x9d, 0x6b, 0x15, 0x49, 0xf4, 0x2d, 0x91, 0xdd, 0x47, 0xca, 0xf0, 0x24, 0xf6, 0x3c, - 0xf4, 0x0c, 0xbe, 0x73, 0x09, 0xc3, 0x43, 0xe6, 0xb2, 0x40, 0xbf, 0x3d, 0x13, 0x84, 0xc6, 0x41, - 0xdf, 0x28, 0xc7, 0x15, 0x27, 0x52, 0x57, 0xb7, 0x76, 0xfd, 0x13, 0x0d, 0x2f, 0xcc, 0xaa, 0xc2, - 0x52, 0x76, 0x51, 0x9d, 0x06, 0x66, 0x02, 0xc7, 0x11, 0x71, 0x69, 0x46, 0x44, 0x2b, 0xc7, 0x09, - 0x58, 0x1c, 0x24, 0x60, 0x21, 0x4d, 0xc0, 0xdc, 0xa7, 0xd5, 0x07, 0xd6, 0xe7, 0xf0, 0xc3, 0x2b, - 0xff, 0x13, 0x12, 0x10, 0x77, 0x14, 0x66, 0xce, 0xb5, 0xe3, 0x04, 0x2c, 0x0d, 0x12, 0x00, 0xd3, - 0x04, 0x68, 0xf5, 0x7a, 0xb5, 0xbe, 0x5d, 0xad, 0xef, 0x58, 0x0d, 0x58, 0x99, 0xfe, 0xe5, 0x33, - 0xe7, 0xea, 0x71, 0x02, 0x56, 0x06, 0x09, 0x58, 0x4e, 0x13, 0x30, 0x5f, 0x6f, 0x54, 0xeb, 0x9f, - 0x58, 0x1b, 0x70, 0x79, 0xb2, 0x55, 0x85, 0x47, 0x83, 0x04, 0xac, 0x2a, 0xfc, 0x83, 0x6a, 0xfd, - 0xb3, 0xea, 0xf6, 0xfd, 0x66, 0x5e, 0x5b, 0x28, 0x2e, 0x36, 0xf3, 0x5a, 0xa1, 0x08, 0x9b, 0x79, - 0x0d, 0x16, 0x97, 0x9a, 0x79, 0x6d, 0xb9, 0xb8, 0xd2, 0xcc, 0x6b, 0xab, 0x45, 0xb4, 0xfe, 0x0b, - 0x84, 0x4b, 0x4f, 0xa9, 0xbc, 0x99, 0x67, 0x37, 0xf3, 0xec, 0x66, 0x9e, 0xfd, 0x5f, 0xe7, 0xd9, - 0xc3, 0xd5, 0x3f, 0xbe, 0xb8, 0xb4, 0xb8, 0x58, 0x0f, 0x67, 0x8d, 0xb8, 0xbb, 0x47, 0xe7, 0x60, - 0xba, 0x6c, 0xb5, 0xae, 0x3b, 0xf0, 0x3e, 0x3e, 0x3a, 0x07, 0xd7, 0x4b, 0xb5, 0x76, 0xaf, 0x31, - 0x05, 0xef, 0x1d, 0x9d, 0x83, 0x37, 0x66, 0x59, 0xf7, 0xfe, 0x35, 0x18, 0xd1, 0xd1, 0x39, 0xb8, - 0xf4, 0x6e, 0xf6, 0x58, 0xb4, 0x7e, 0x05, 0x83, 0x53, 0x23, 0x77, 0x72, 0x6a, 0xe4, 0x5e, 0x9d, - 0x1a, 0xe0, 0xa7, 0xd4, 0x00, 0xbf, 0xa5, 0x06, 0xf8, 0x3d, 0x35, 0xc0, 0x20, 0x35, 0xc0, 0x49, - 0x6a, 0x80, 0x3f, 0x53, 0x03, 0xfc, 0x95, 0x1a, 0xb9, 0x57, 0xa9, 0x01, 0x7e, 0x3e, 0x33, 0x72, - 0x83, 0x33, 0x23, 0x77, 0x72, 0x66, 0xe4, 0x5e, 0xfc, 0xe0, 0x72, 0x71, 0xe0, 0xd6, 0x7a, 0xdc, - 0x93, 0x34, 0x0c, 0x49, 0x2d, 0x8e, 0x4c, 0x15, 0x0c, 0xf7, 0xe4, 0x2d, 0x11, 0xf2, 0x1e, 0x73, - 0x68, 0xb8, 0x75, 0x21, 0x9b, 0xa2, 0xed, 0x72, 0x93, 0x1e, 0xca, 0x6c, 0xeb, 0x7c, 0xc3, 0x5e, - 0xde, 0x5e, 0x50, 0x9b, 0xe8, 0xce, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1a, 0x39, 0x7f, 0x95, - 0xc8, 0x0b, 0x00, 0x00, + // 1005 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x97, 0x4f, 0x4f, 0xe3, 0x46, + 0x18, 0xc6, 0x33, 0x24, 0x40, 0x18, 0xba, 0x10, 0x66, 0xd9, 0xca, 0x64, 0x77, 0xdd, 0x88, 0x6e, + 0x29, 0xad, 0x42, 0xbc, 0x01, 0xd1, 0x2e, 0xab, 0xb6, 0x52, 0xbd, 0xdd, 0xe5, 0x8f, 0x04, 0x5d, + 0x99, 0x6d, 0x0f, 0xab, 0x4a, 0xa3, 0x89, 0x3d, 0x71, 0xa6, 0xd8, 0x1e, 0xcb, 0x1e, 0x87, 0x70, + 0xab, 0xf8, 0x02, 0xed, 0xa9, 0x97, 0x7e, 0x81, 0x7e, 0x86, 0xfa, 0xc2, 0xb1, 0xea, 0x29, 0x47, + 0xd4, 0x4b, 0x8b, 0xb9, 0xb4, 0xb7, 0x3d, 0x73, 0xaa, 0x32, 0x31, 0x34, 0xa1, 0x10, 0xa2, 0x9e, + 0xb9, 0xcd, 0xe4, 0x79, 0x7f, 0xcf, 0x3b, 0x33, 0x1e, 0x3d, 0x9a, 0xc0, 0xe5, 0x26, 0x0d, 0x2b, + 0x8c, 0x6b, 0xa1, 0xd9, 0xa0, 0x2e, 0xd1, 0x98, 0x57, 0x0f, 0x88, 0x1f, 0x70, 0x41, 0x4d, 0x81, + 0x99, 0x57, 0xe7, 0x81, 0x4b, 0x04, 0xe3, 0x9e, 0x26, 0x0e, 0x7c, 0x1a, 0x56, 0x3a, 0x0a, 0x47, + 0x0b, 0x5d, 0xa6, 0xd2, 0x65, 0x2a, 0xd7, 0x31, 0xc5, 0x25, 0x9b, 0x89, 0x46, 0x54, 0xab, 0x98, + 0xdc, 0xd5, 0x6c, 0x6e, 0x73, 0x4d, 0xe2, 0xb5, 0xa8, 0x2e, 0x67, 0x72, 0x22, 0x47, 0x5d, 0xdb, + 0xe2, 0x03, 0x9b, 0x73, 0xdb, 0xa1, 0x1a, 0xf1, 0x99, 0x46, 0x3c, 0x8f, 0x0b, 0xe9, 0x92, 0x36, + 0x2d, 0xce, 0xa5, 0xea, 0x85, 0x07, 0xf1, 0x0e, 0x52, 0xe9, 0x7e, 0xff, 0x1e, 0xb8, 0xdf, 0xcb, + 0x3d, 0xec, 0x17, 0xfd, 0xa6, 0xc0, 0x3d, 0x7b, 0x29, 0xce, 0xf5, 0xcb, 0xbd, 0xd2, 0x83, 0x7e, + 0xa9, 0x49, 0x1c, 0x66, 0x11, 0x41, 0x53, 0xb5, 0x74, 0x49, 0x65, 0x74, 0x1f, 0xf7, 0x75, 0x9e, + 0xff, 0x09, 0xc2, 0xa9, 0x75, 0x87, 0xd7, 0x88, 0xb3, 0xeb, 0x53, 0xf3, 0xd5, 0x81, 0x4f, 0x51, + 0x01, 0x66, 0x49, 0xe8, 0x29, 0xa0, 0x04, 0x16, 0x47, 0x8d, 0xce, 0x10, 0x21, 0x98, 0x8b, 0x22, + 0x66, 0x29, 0x23, 0x25, 0xb0, 0x38, 0x61, 0xc8, 0x31, 0x2a, 0xc2, 0xbc, 0x1f, 0xd0, 0x3a, 0x6b, + 0xd1, 0x50, 0xc9, 0x96, 0xb2, 0x8b, 0x13, 0xc6, 0xc5, 0x1c, 0xdd, 0x87, 0x13, 0x24, 0xa8, 0xf1, + 0x00, 0x9b, 0xcc, 0x52, 0x72, 0x12, 0xca, 0xcb, 0x1f, 0x9e, 0x31, 0x0b, 0x3d, 0x86, 0xb3, 0x7e, + 0xc0, 0x5c, 0x12, 0x1c, 0x60, 0x8f, 0x8a, 0x7d, 0x1e, 0xec, 0x61, 0x8f, 0xb8, 0x54, 0x19, 0x95, + 0x75, 0x28, 0xd5, 0x76, 0xba, 0xd2, 0x0e, 0x71, 0x29, 0x5a, 0x81, 0x13, 0x01, 0x8d, 0x42, 0x8a, + 0x99, 0x1f, 0x2a, 0xe3, 0x25, 0xb0, 0x38, 0xb9, 0x3c, 0x5b, 0xe9, 0xff, 0xbc, 0xcf, 0x5d, 0x5f, + 0x1c, 0x6c, 0x64, 0x8c, 0xbc, 0x2c, 0xdc, 0xf4, 0x43, 0xa4, 0xc3, 0x99, 0x0e, 0x62, 0x51, 0x8b, + 0x99, 0x44, 0x50, 0x4b, 0xc2, 0xf9, 0x81, 0xf0, 0x74, 0x14, 0xd2, 0x2f, 0xce, 0xeb, 0x3b, 0x1e, + 0xdf, 0xc2, 0x85, 0x80, 0x47, 0x82, 0x62, 0x62, 0x35, 0x69, 0x20, 0x58, 0x48, 0x5d, 0xea, 0x09, + 0xec, 0xda, 0xae, 0xc0, 0x1e, 0x17, 0x38, 0xf4, 0xa9, 0xc9, 0xea, 0x8c, 0x5a, 0xca, 0xe4, 0x00, + 0x63, 0x60, 0xcc, 0x4b, 0x97, 0xcf, 0x7b, 0x4d, 0xb6, 0x6d, 0x57, 0xec, 0x70, 0xb1, 0x7b, 0xee, + 0x80, 0x2c, 0xf8, 0xee, 0xb5, 0xbd, 0xa2, 0x90, 0x79, 0x36, 0xae, 0xaf, 0xb6, 0x4c, 0xe5, 0xad, + 0x81, 0x8d, 0xde, 0xb9, 0xba, 0xd1, 0x57, 0x1d, 0xfe, 0xc5, 0x6a, 0xcb, 0x44, 0x7b, 0xf0, 0xfd, + 0x81, 0x3b, 0xea, 0xe9, 0x74, 0xe7, 0x7f, 0x6e, 0xe9, 0xdf, 0x66, 0xaf, 0xa1, 0x6a, 0xd1, 0x3a, + 0x89, 0x1c, 0x81, 0x45, 0xe4, 0x79, 0xd4, 0xc1, 0x35, 0xdb, 0xc7, 0x21, 0x35, 0x03, 0xda, 0xe9, + 0xe6, 0x51, 0x65, 0x7a, 0x40, 0x8f, 0x11, 0xa3, 0x98, 0xd2, 0xaf, 0x24, 0xac, 0xdb, 0xfe, 0xae, + 0x44, 0x77, 0xb8, 0x47, 0xd1, 0xd7, 0x70, 0xee, 0x5a, 0x6f, 0xa5, 0x20, 0x6d, 0xe7, 0x2e, 0xd9, + 0x76, 0xe9, 0xce, 0x15, 0xdf, 0x18, 0x31, 0xde, 0xbe, 0xda, 0x1b, 0x3d, 0x87, 0x77, 0x49, 0x88, + 0x7d, 0x22, 0x1a, 0xd8, 0x6c, 0x70, 0x66, 0x52, 0x5c, 0x8f, 0x1c, 0x47, 0x41, 0x03, 0x16, 0x9a, + 0x35, 0x0a, 0x24, 0x7c, 0x49, 0x44, 0xe3, 0x99, 0x04, 0x5e, 0x44, 0x8e, 0x83, 0x36, 0xe1, 0xbd, + 0x4b, 0x36, 0x3c, 0x60, 0x36, 0xf3, 0x94, 0xbb, 0x03, 0x8d, 0x50, 0xaf, 0xd1, 0x97, 0x92, 0xb8, + 0x62, 0x45, 0xf2, 0xe8, 0x66, 0x87, 0x5f, 0x91, 0x3c, 0xb0, 0x4d, 0x38, 0xee, 0x73, 0x87, 0x99, + 0x34, 0x50, 0xee, 0x49, 0x54, 0xab, 0x0c, 0x97, 0x90, 0x95, 0x97, 0x5d, 0xcc, 0x38, 0xe7, 0xf5, + 0x32, 0x9c, 0x4b, 0xcf, 0xbc, 0xbe, 0x8a, 0x99, 0x8f, 0xa3, 0x90, 0xd8, 0x34, 0x5d, 0x1c, 0x9a, + 0x3e, 0x8a, 0xc1, 0x78, 0x3b, 0x06, 0x63, 0x49, 0x0c, 0xb2, 0x1f, 0x97, 0x9f, 0xe8, 0x9f, 0xc2, + 0xf7, 0xae, 0xbc, 0x72, 0xc4, 0x23, 0x76, 0x77, 0x98, 0x92, 0xb3, 0x47, 0x31, 0x98, 0x6c, 0xc7, + 0x00, 0x26, 0x31, 0xc8, 0x57, 0xab, 0xe5, 0xea, 0x72, 0xb9, 0xba, 0xa2, 0xaf, 0xc2, 0xd2, 0xf5, + 0x97, 0x28, 0x25, 0x67, 0x8e, 0x62, 0x30, 0xdd, 0x8e, 0xc1, 0x54, 0x12, 0x83, 0xd1, 0xea, 0x6a, + 0xb9, 0xfa, 0x91, 0xbe, 0x00, 0xa7, 0xfa, 0x4f, 0x4d, 0xda, 0xa3, 0x76, 0x0c, 0x66, 0xa4, 0xfd, + 0x93, 0x72, 0x75, 0xad, 0xbc, 0xfc, 0x78, 0x2b, 0x97, 0x1f, 0x2b, 0x8c, 0x6f, 0xe5, 0xf2, 0x13, + 0x05, 0xb8, 0x95, 0xcb, 0xc3, 0xc2, 0xe4, 0x56, 0x2e, 0x3f, 0x55, 0x98, 0xde, 0xca, 0xe5, 0x67, + 0x0a, 0x68, 0x7e, 0x1d, 0x8e, 0xa7, 0xbb, 0x47, 0x9f, 0xc0, 0x42, 0x8d, 0x78, 0xd6, 0x3e, 0xb3, + 0x44, 0x03, 0xbb, 0xa4, 0x85, 0xdd, 0x9a, 0x8c, 0xc8, 0x3b, 0x3a, 0xfa, 0x3d, 0x06, 0xb9, 0xb5, + 0xb5, 0xb5, 0xb5, 0x5f, 0xfe, 0x3e, 0xca, 0x8e, 0x7e, 0x98, 0x55, 0xbe, 0xdf, 0x31, 0xa6, 0x2e, + 0x6a, 0xb7, 0x49, 0x6b, 0xbb, 0x36, 0xff, 0x07, 0x84, 0x93, 0xeb, 0x54, 0xdc, 0x66, 0xec, 0x6d, + 0xc6, 0xde, 0x66, 0xec, 0x6d, 0xc6, 0xde, 0x98, 0xb1, 0x4f, 0x67, 0x7e, 0xfb, 0xec, 0xd2, 0xbb, + 0x4c, 0x7f, 0x3a, 0x28, 0x76, 0x1f, 0x1e, 0x9e, 0x81, 0xeb, 0x65, 0xdd, 0x18, 0x36, 0x84, 0x3f, + 0x38, 0x3c, 0x03, 0xc3, 0x95, 0xea, 0x1b, 0x43, 0x24, 0xf3, 0xa3, 0xc3, 0x33, 0x70, 0x63, 0x95, + 0xfe, 0xe8, 0x3f, 0x61, 0x8d, 0x0e, 0xcf, 0xc0, 0xa5, 0xdf, 0x06, 0x47, 0xb5, 0xfe, 0x23, 0x68, + 0x9f, 0xa8, 0x99, 0xe3, 0x13, 0x35, 0xf3, 0xe6, 0x44, 0x05, 0xdf, 0x25, 0x2a, 0xf8, 0x39, 0x51, + 0xc1, 0xaf, 0x89, 0x0a, 0xda, 0x89, 0x0a, 0x8e, 0x13, 0x15, 0xfc, 0x99, 0xa8, 0xe0, 0xaf, 0x44, + 0xcd, 0xbc, 0x49, 0x54, 0xf0, 0xc3, 0xa9, 0x9a, 0x69, 0x9f, 0xaa, 0x99, 0xe3, 0x53, 0x35, 0xf3, + 0xfa, 0x1b, 0x9b, 0xfb, 0x7b, 0x76, 0xa5, 0xc9, 0x1d, 0x41, 0x83, 0x80, 0x54, 0xa2, 0x50, 0x93, + 0x83, 0xce, 0xe7, 0x59, 0xf2, 0x03, 0xde, 0x64, 0x16, 0x0d, 0x96, 0xce, 0x65, 0xcd, 0xaf, 0xd9, + 0x5c, 0xa3, 0x2d, 0x91, 0x3e, 0xaa, 0x6f, 0xf8, 0x53, 0x52, 0x1b, 0x93, 0x0f, 0xed, 0x95, 0x7f, + 0x02, 0x00, 0x00, 0xff, 0xff, 0x76, 0xb3, 0x64, 0x04, 0xc5, 0x0c, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { @@ -771,6 +844,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.AsPathChoice.Equal(that1.AsPathChoice) { return false } + if !this.Policer.Equal(that1.Policer) { + return false + } return true } func (this *GlobalSpecType_ReuseIps) Equal(that interface{}) bool { @@ -1013,6 +1089,30 @@ func (this *GlobalSpecType_AsPathChoiceNone) Equal(that interface{}) bool { } return true } +func (this *Policer) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Policer) + if !ok { + that2, ok := that.(Policer) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.BandwidthMaxMb != that1.BandwidthMaxMb { + return false + } + return true +} func (this *GetSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -1088,6 +1188,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { } else if !this.AsPathChoice.Equal(that1.AsPathChoice) { return false } + if !this.Policer.Equal(that1.Policer) { + return false + } return true } func (this *GetSpecType_ReuseIps) Equal(that interface{}) bool { @@ -1334,7 +1437,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 19) + s := make([]string, 0, 20) s = append(s, "&infraprotect_information.GlobalSpecType{") s = append(s, "Asn: "+fmt.Sprintf("%#v", this.Asn)+",\n") s = append(s, "Uuid: "+fmt.Sprintf("%#v", this.Uuid)+",\n") @@ -1353,6 +1456,9 @@ func (this *GlobalSpecType) GoString() string { if this.AsPathChoice != nil { s = append(s, "AsPathChoice: "+fmt.Sprintf("%#v", this.AsPathChoice)+",\n") } + if this.Policer != nil { + s = append(s, "Policer: "+fmt.Sprintf("%#v", this.Policer)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -1436,11 +1542,21 @@ func (this *GlobalSpecType_AsPathChoiceNone) GoString() string { `AsPathChoiceNone:` + fmt.Sprintf("%#v", this.AsPathChoiceNone) + `}`}, ", ") return s } +func (this *Policer) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&infraprotect_information.Policer{") + s = append(s, "BandwidthMaxMb: "+fmt.Sprintf("%#v", this.BandwidthMaxMb)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 19) + s := make([]string, 0, 20) s = append(s, "&infraprotect_information.GetSpecType{") s = append(s, "Asn: "+fmt.Sprintf("%#v", this.Asn)+",\n") s = append(s, "Uuid: "+fmt.Sprintf("%#v", this.Uuid)+",\n") @@ -1459,6 +1575,9 @@ func (this *GetSpecType) GoString() string { if this.AsPathChoice != nil { s = append(s, "AsPathChoice: "+fmt.Sprintf("%#v", this.AsPathChoice)+",\n") } + if this.Policer != nil { + s = append(s, "Policer: "+fmt.Sprintf("%#v", this.Policer)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -1570,6 +1689,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Policer != nil { + { + size, err := m.Policer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xaa + } if m.AsPathChoice != nil { { size := m.AsPathChoice.Size() @@ -1862,6 +1995,34 @@ func (m *GlobalSpecType_AsPathChoiceNone) MarshalToSizedBuffer(dAtA []byte) (int } return len(dAtA) - i, nil } +func (m *Policer) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Policer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Policer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.BandwidthMaxMb != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.BandwidthMaxMb)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + func (m *GetSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1882,6 +2043,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Policer != nil { + { + size, err := m.Policer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xaa + } if m.AsPathChoice != nil { { size := m.AsPathChoice.Size() @@ -2224,6 +2399,10 @@ func (m *GlobalSpecType) Size() (n int) { if m.AsPathChoice != nil { n += m.AsPathChoice.Size() } + if m.Policer != nil { + l = m.Policer.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -2347,6 +2526,18 @@ func (m *GlobalSpecType_AsPathChoiceNone) Size() (n int) { } return n } +func (m *Policer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BandwidthMaxMb != 0 { + n += 1 + sovTypes(uint64(m.BandwidthMaxMb)) + } + return n +} + func (m *GetSpecType) Size() (n int) { if m == nil { return 0 @@ -2386,6 +2577,10 @@ func (m *GetSpecType) Size() (n int) { if m.AsPathChoice != nil { n += m.AsPathChoice.Size() } + if m.Policer != nil { + l = m.Policer.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -2530,6 +2725,7 @@ func (this *GlobalSpecType) String() string { `RouteAdvertisementManagementChoice:` + fmt.Sprintf("%v", this.RouteAdvertisementManagementChoice) + `,`, `DefaultTunnelBgpSecretChoice:` + fmt.Sprintf("%v", this.DefaultTunnelBgpSecretChoice) + `,`, `AsPathChoice:` + fmt.Sprintf("%v", this.AsPathChoice) + `,`, + `Policer:` + strings.Replace(this.Policer.String(), "Policer", "Policer", 1) + `,`, `}`, }, "") return s @@ -2634,6 +2830,16 @@ func (this *GlobalSpecType_AsPathChoiceNone) String() string { }, "") return s } +func (this *Policer) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Policer{`, + `BandwidthMaxMb:` + fmt.Sprintf("%v", this.BandwidthMaxMb) + `,`, + `}`, + }, "") + return s +} func (this *GetSpecType) String() string { if this == nil { return "nil" @@ -2648,6 +2854,7 @@ func (this *GetSpecType) String() string { `RouteAdvertisementManagementChoice:` + fmt.Sprintf("%v", this.RouteAdvertisementManagementChoice) + `,`, `DefaultTunnelBgpSecretChoice:` + fmt.Sprintf("%v", this.DefaultTunnelBgpSecretChoice) + `,`, `AsPathChoice:` + fmt.Sprintf("%v", this.AsPathChoice) + `,`, + `Policer:` + strings.Replace(this.Policer.String(), "Policer", "Policer", 1) + `,`, `}`, }, "") return s @@ -3286,6 +3493,114 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.AsPathChoice = &GlobalSpecType_AsPathChoiceNone{v} iNdEx = postIndex + case 21: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policer == nil { + m.Policer = &Policer{} + } + if err := m.Policer.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Policer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Policer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Policer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BandwidthMaxMb", wireType) + } + m.BandwidthMaxMb = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BandwidthMaxMb |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -3836,6 +4151,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.AsPathChoice = &GetSpecType_AsPathChoiceNone{v} iNdEx = postIndex + case 21: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policer == nil { + m.Policer = &Policer{} + } + if err := m.Policer.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/infraprotect_information/types.vesmsg.go b/pbgo/extschema/schema/infraprotect_information/types.vesmsg.go index 1133a72ef..d4626c475 100644 --- a/pbgo/extschema/schema/infraprotect_information/types.vesmsg.go +++ b/pbgo/extschema/schema/infraprotect_information/types.vesmsg.go @@ -226,6 +226,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["policer"]; exists { + + vOpts := append(opts, db.WithValidateField("policer")) + if err := fv(ctx, m.GetPolicer(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["prefixes"]; exists { vOpts := append(opts, db.WithValidateField("prefixes")) @@ -400,6 +409,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["default_tunnel_bgp_secret_choice.default_tunnel_bgp_secret"] = ves_io_schema.SecretTypeValidator().Validate + v.FldValidators["policer"] = PolicerValidator().Validate + return v }() @@ -609,6 +620,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["policer"]; exists { + + vOpts := append(opts, db.WithValidateField("policer")) + if err := fv(ctx, m.GetPolicer(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["prefixes"]; exists { vOpts := append(opts, db.WithValidateField("prefixes")) @@ -783,6 +803,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["default_tunnel_bgp_secret_choice.default_tunnel_bgp_secret"] = ves_io_schema.SecretTypeValidator().Validate + v.FldValidators["policer"] = PolicerValidator().Validate + return v }() @@ -790,6 +812,113 @@ func GlobalSpecTypeValidator() db.Validator { return DefaultGlobalSpecTypeValidator } +// augmented methods on protoc/std generated struct + +func (m *Policer) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Policer) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Policer) DeepCopy() *Policer { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Policer{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Policer) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Policer) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return PolicerValidator().Validate(ctx, m, opts...) +} + +type ValidatePolicer struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidatePolicer) BandwidthMaxMbValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for bandwidth_max_mb") + } + + return validatorFn, nil +} + +func (v *ValidatePolicer) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Policer) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Policer got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["bandwidth_max_mb"]; exists { + + vOpts := append(opts, db.WithValidateField("bandwidth_max_mb")) + if err := fv(ctx, m.GetBandwidthMaxMb(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultPolicerValidator = func() *ValidatePolicer { + v := &ValidatePolicer{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhBandwidthMaxMb := v.BandwidthMaxMbValidationRuleHandler + rulesBandwidthMaxMb := map[string]string{ + "ves.io.schema.rules.uint32.lte": "9999", + } + vFn, err = vrhBandwidthMaxMb(rulesBandwidthMaxMb) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for Policer.bandwidth_max_mb: %s", err) + panic(errMsg) + } + v.FldValidators["bandwidth_max_mb"] = vFn + + return v +}() + +func PolicerValidator() db.Validator { + return DefaultPolicerValidator +} + // create setters in GetSpecType from GlobalSpecType for oneof fields func (r *GetSpecType) SetAsPathChoiceToGlobalSpecType(o *GlobalSpecType) error { switch of := r.AsPathChoice.(type) { @@ -950,6 +1079,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GetAsPathChoiceFromGlobalSpecType(f) m.Asn = f.GetAsn() m.GetDefaultTunnelBgpSecretChoiceFromGlobalSpecType(f) + m.Policer = f.GetPolicer() m.Prefixes = f.GetPrefixes() m.PrimaryNetworkName = f.GetPrimaryNetworkName() m.GetRouteAdvertisementManagementChoiceFromGlobalSpecType(f) @@ -976,6 +1106,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m1.SetAsPathChoiceToGlobalSpecType(f) f.Asn = m1.Asn m1.SetDefaultTunnelBgpSecretChoiceToGlobalSpecType(f) + f.Policer = m1.Policer f.Prefixes = m1.Prefixes f.PrimaryNetworkName = m1.PrimaryNetworkName m1.SetRouteAdvertisementManagementChoiceToGlobalSpecType(f) diff --git a/pbgo/extschema/schema/instance_management/f5xc_instance/crudapi/api.vesapi.go b/pbgo/extschema/schema/instance_management/f5xc_instance/crudapi/api.vesapi.go index 60e1764ea..2daeece59 100644 --- a/pbgo/extschema/schema/instance_management/f5xc_instance/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/instance_management/f5xc_instance/crudapi/api.vesapi.go @@ -2970,10 +2970,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/instance_management/tenant_allocation/crudapi/api.vesapi.go b/pbgo/extschema/schema/instance_management/tenant_allocation/crudapi/api.vesapi.go index 92c1fe834..a49a895f8 100644 --- a/pbgo/extschema/schema/instance_management/tenant_allocation/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/instance_management/tenant_allocation/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/instance_management/v2_signup/crudapi/api.vesapi.go b/pbgo/extschema/schema/instance_management/v2_signup/crudapi/api.vesapi.go index ba501ef7e..4b300685c 100644 --- a/pbgo/extschema/schema/instance_management/v2_signup/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/instance_management/v2_signup/crudapi/api.vesapi.go @@ -2814,12 +2814,31 @@ var APISwaggerJSON string = `{ } } }, + "infraprotect_informationPolicer": { + "type": "object", + "description": "Policer config for bandwidth restrictions", + "title": "Policer Config", + "x-displayname": "Policer Config", + "x-ves-proto-message": "ves.io.schema.infraprotect_information.Policer", + "properties": { + "bandwidth_max_mb": { + "type": "integer", + "description": " Bandwidth max allowed for a customer defined by contract\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 9999\n", + "title": "Bandwidth Max", + "format": "int64", + "x-displayname": "Bandwidth Max in MB", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "9999" + } + } + } + }, "instance_managementv2_signupGlobalSpecType": { "type": "object", "description": "desired state of Signup", "title": "Signup specification", "x-displayname": "Signup", - "x-ves-oneof-field-source_choice": "[\"source_internal_scaling\",\"source_internal_sre\",\"source_public\"]", + "x-ves-oneof-field-signup_type": "[\"signup_type_internal_scaling\",\"signup_type_internal_sre\",\"signup_type_public\"]", "x-ves-proto-message": "ves.io.schema.instance_management.v2_signup.GlobalSpecType", "properties": { "account_details": { @@ -2862,23 +2881,33 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.message.required": "true" } }, - "source_internal_scaling": { - "description": "Exclusive with [source_internal_sre source_public]\n For internal use ONLY\n payload for the request made internally for scaling", - "title": "Source Internal Scaling", - "$ref": "#/definitions/signupSourceInternalScaling", - "x-displayname": "Source Internal Scaling" + "origin": { + "description": " origin of the signup, from which platform signup is originated, example f5xc, aws..etc\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Origin", + "$ref": "#/definitions/schemaSignupOrigin", + "x-displayname": "Origin", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "signup_type_internal_scaling": { + "description": "Exclusive with [signup_type_internal_sre signup_type_public]\n For internal use ONLY\n payload for the request made internally for scaling", + "title": "Signup Type Internal Scaling", + "$ref": "#/definitions/signupSignupTypeInternalScaling", + "x-displayname": "Signup Type Internal Scaling" }, - "source_internal_sre": { - "description": "Exclusive with [source_internal_scaling source_public]\n For internal use ONLY\n payload for the request made internally, probably via SRE", - "title": "Source Internal SRE", - "$ref": "#/definitions/signupSourceInternalSre", - "x-displayname": "Source Internal SRE" + "signup_type_internal_sre": { + "description": "Exclusive with [signup_type_internal_scaling signup_type_public]\n For internal use ONLY\n payload for the request made internally, probably via SRE", + "title": "Signup Type Internal SRE", + "$ref": "#/definitions/signupSignupTypeInternalSre", + "x-displayname": "Signup Type Internal SRE" }, - "source_public": { - "description": "Exclusive with [source_internal_scaling source_internal_sre]\n payload for the public request, made either via the dashboard or the CMD line", - "title": "Source Public", - "$ref": "#/definitions/signupSourcePublic", - "x-displayname": "Source Public" + "signup_type_public": { + "description": "Exclusive with [signup_type_internal_scaling signup_type_internal_sre]\n payload for the public request, made either via the dashboard or the CMD line", + "title": "Signup Type Public", + "$ref": "#/definitions/signupSignupTypePublic", + "x-displayname": "Signup Type Public" }, "user_details": { "description": " details of the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -3081,10 +3110,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3204,6 +3237,19 @@ var APISwaggerJSON string = `{ } } }, + "schemaSignupOrigin": { + "type": "string", + "description": "x-required\nSignupOrigin indicates, from which platform signup is originated, example f5xc, aws..etc\n\n - ORIGIN_UNKNOWN: ORIGIN_UNKNOWN\n\nIndicates, the origin of the signup is unknown\n - ORIGIN_F5XC: ORIGIN_F5XC\n\nORIGIN_F5XC as an origin indicates, signup is initiated from console or by internal scaling/testing/support teams using private API\n - ORIGIN_AWS: ORIGIN_AWS\n\nORIGIN_AWS as an origin indicates, signup is initiated from AWS marketplace \u0026 it comes to eywaprime via tsahik", + "title": "SignupOrigin", + "enum": [ + "ORIGIN_UNKNOWN", + "ORIGIN_F5XC", + "ORIGIN_AWS" + ], + "default": "ORIGIN_UNKNOWN", + "x-displayname": "Signup Origin", + "x-ves-proto-enum": "ves.io.schema.SignupOrigin" + }, "schemaStatusType": { "type": "object", "description": "Status is a return value for calls that don't return other objects.", @@ -3479,7 +3525,7 @@ var APISwaggerJSON string = `{ "schemainfraprotect_informationGlobalSpecType": { "type": "object", "description": "Organisation information", - "title": "information", + "title": "Information", "x-displayname": "Information", "x-ves-oneof-field-as_path_choice": "[\"as_path_choice_full\",\"as_path_choice_none\",\"as_path_choice_origin\"]", "x-ves-oneof-field-default_tunnel_bgp_secret_choice": "[\"default_tunnel_bgp_secret\",\"default_tunnel_bgp_secret_none\"]", @@ -3532,6 +3578,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "No default tunnel BGP secret" }, + "policer": { + "description": " Policer config for bandwidth restrictions", + "title": "Policer Config", + "$ref": "#/definitions/infraprotect_informationPolicer", + "x-displayname": "Policer Config" + }, "prefixes": { "type": "array", "description": " List of tenant 'super' prefixes noted in CIDR\n\nExample: - \"value\"-", @@ -3811,13 +3863,6 @@ var APISwaggerJSON string = `{ } } }, - "signupCrmInfoV2": { - "type": "object", - "description": "Deprecated: use the CRMInfo defined in schema/types.proto", - "title": "fields of crm info message", - "x-displayname": "Crm Info", - "x-ves-proto-message": "ves.io.schema.signup.CrmInfoV2" - }, "signupInternalMeta": { "type": "object", "description": "we use it to store derived internal information like f5xc instance, kc instance", @@ -3859,29 +3904,17 @@ var APISwaggerJSON string = `{ } } }, - "signupMarketplaceAws": { - "type": "object", - "description": "x-displayName: \"Marketplace Aws\"\npayload for the creation request, for AWS Marketplace", - "title": "Marketplace Aws", - "properties": { - "crm_details": { - "description": "x-displayName: \"CRM Details\"\nx-required\nThis field holds CRM information", - "title": "CRM Details", - "$ref": "#/definitions/schemaCRMInfo" - } - } - }, - "signupSourceInternalScaling": { + "signupSignupTypeInternalScaling": { "type": "object", - "title": "Source Internal Scaling", - "x-displayname": "Source Internal Scaling", - "x-ves-proto-message": "ves.io.schema.signup.SourceInternalScaling" + "title": "Signup Type Internal Scaling", + "x-displayname": "Signup Type Internal Scaling", + "x-ves-proto-message": "ves.io.schema.signup.SignupTypeInternalScaling" }, - "signupSourceInternalSre": { + "signupSignupTypeInternalSre": { "type": "object", - "title": "Source Internal SRE", - "x-displayname": "Source Internal SRE", - "x-ves-proto-message": "ves.io.schema.signup.SourceInternalSre", + "title": "Signup Type Internal SRE", + "x-displayname": "Signup Type Internal SRE", + "x-ves-proto-message": "ves.io.schema.signup.SignupTypeInternalSre", "properties": { "crm_details": { "description": " This field holds CRM information", @@ -3889,12 +3922,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaCRMInfo", "x-displayname": "CRM Details" }, - "crm_info": { - "description": " this field holds the CRM info\n This field is deprecated. use CrmDetails instead", - "title": "crm_info", - "$ref": "#/definitions/signupCrmInfoV2", - "x-displayname": "CRM Info" - }, "f5xc_instance_name": { "type": "string", "description": " this field holds the f5xc instance name to be used for tenant allocation\n\nExample: - \"f5xc-instance-2\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", @@ -3906,6 +3933,13 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "is_demo_tenant": { + "type": "boolean", + "description": " Indicates whether signup is for demo tenant or not.", + "title": "Is Demo Tenant", + "format": "boolean", + "x-displayname": "Is Demo Tenant" + }, "kc_instance_name": { "type": "string", "description": " this field holds the kc instance name to be used for tenant realm allocation\n\nExample: - \"kc-instance-3\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", @@ -3919,27 +3953,27 @@ var APISwaggerJSON string = `{ } } }, - "signupSourceInternalSso": { + "signupSignupTypeInternalSso": { "type": "object", - "description": "x-displayName: \"Source Internal SSO\"", - "title": "Source Internal SSO" + "description": "x-displayName: \"Signup Type Internal SSO\"", + "title": "Signup Type Internal SSO" }, - "signupSourceMarketplace": { + "signupSignupTypeMarketplace": { "type": "object", - "description": "x-displayName: \"Source Marketplace\"\npayload for the creation request, for Marketplace source", - "title": "Source Marketplace", + "description": "x-displayName: \"Signup Type Marketplace\"\npayload for the creation request, for Marketplace Signup Type", + "title": "Signup Type Marketplace", "properties": { - "marketplace_aws": { - "description": "x-displayName: \"Marketplace Aws\"\npayload for the creation request, for Aws Marketplace", - "title": "MarketplaceAws", - "$ref": "#/definitions/signupMarketplaceAws" + "crm_details": { + "description": "x-displayName: \"CRM Details\"\nx-required\nThis field holds CRM information", + "title": "CRM Details", + "$ref": "#/definitions/schemaCRMInfo" } } }, - "signupSourceMsp": { + "signupSignupTypeMsp": { "type": "object", - "description": "x-displayName: \"Source MSP\"", - "title": "Source MSP", + "description": "x-displayName: \"Signup Type MSP\"", + "title": "Signup Type MSP", "properties": { "child_tenant_obj_name": { "type": "string", @@ -3950,18 +3984,13 @@ var APISwaggerJSON string = `{ "description": "x-displayName: \"CRM Details\"\nThis field holds CRM information", "title": "CRM Details", "$ref": "#/definitions/schemaCRMInfo" - }, - "crm_info": { - "description": "x-displayName: \"CRM Info\"\nthis field holds the CRM info\nThis field is deprecated. use CrmDetails instead", - "title": "crm_info", - "$ref": "#/definitions/signupCrmInfoV2" } } }, - "signupSourcePlanTransition": { + "signupSignupTypePlanTransition": { "type": "object", - "description": "x-displayName: \"Source Plan Transition\"\nSourcePlanTransition can be only used for Free to Individual plan transition signups", - "title": "Source Plan Transition", + "description": "x-displayName: \"Signup Type Plan Transition\"\nSignupTypePlanTransition can be only used for Free to Individual plan transition signups", + "title": "Signup Type Plan Transition", "properties": { "is_sso_enabled": { "type": "boolean", @@ -3971,11 +4000,11 @@ var APISwaggerJSON string = `{ } } }, - "signupSourcePublic": { + "signupSignupTypePublic": { "type": "object", - "title": "Source Public", - "x-displayname": "Source Public", - "x-ves-proto-message": "ves.io.schema.signup.SourcePublic" + "title": "Signup Type Public", + "x-displayname": "Signup Type Public", + "x-ves-proto-message": "ves.io.schema.signup.SignupTypePublic" }, "signupUserMeta": { "type": "object", diff --git a/pbgo/extschema/schema/instance_management/v2_signup/types.pb.go b/pbgo/extschema/schema/instance_management/v2_signup/types.pb.go index 6edb159cf..c2afaa876 100644 --- a/pbgo/extschema/schema/instance_management/v2_signup/types.pb.go +++ b/pbgo/extschema/schema/instance_management/v2_signup/types.pb.go @@ -8,7 +8,7 @@ import ( _ "github.com/gogo/protobuf/gogoproto" proto "github.com/gogo/protobuf/proto" _ "github.com/gogo/protobuf/types" - _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/infraprotect_information" signup "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/signup" io "io" @@ -64,21 +64,28 @@ type GlobalSpecType struct { // x-required // we use it to store derived internal information like f5xc instance, kc instance InternalMeta *signup.InternalMeta `protobuf:"bytes,12,opt,name=internal_meta,json=internalMeta,proto3" json:"internal_meta,omitempty"` - // Source Choice + // Signup Type // - // x-displayName: "Source Choice" + // x-displayName: "Signup Type" // x-required - // origin of the request + // indicates the type of the signup, example scaling, msp...etc + // signup type can be defined as a specific usecase the tenant is created for // - // Types that are valid to be assigned to SourceChoice: - // *GlobalSpecType_SourcePublic - // *GlobalSpecType_SourceInternalSre - // *GlobalSpecType_SourceInternalScaling - // *GlobalSpecType_SourcePlanTransition - // *GlobalSpecType_SourceMsp - // *GlobalSpecType_SourceInternalSso - // *GlobalSpecType_SourceMarketplace - SourceChoice isGlobalSpecType_SourceChoice `protobuf_oneof:"source_choice"` + // Types that are valid to be assigned to SignupType: + // *GlobalSpecType_SignupTypePublic + // *GlobalSpecType_SignupTypeInternalSre + // *GlobalSpecType_SignupTypeInternalScaling + // *GlobalSpecType_SignupTypePlanTransition + // *GlobalSpecType_SignupTypeMsp + // *GlobalSpecType_SignupTypeInternalSso + // *GlobalSpecType_SignupTypeMarketplace + SignupType isGlobalSpecType_SignupType `protobuf_oneof:"signup_type"` + // Origin + // + // x-displayName: "Origin" + // x-required + // origin of the signup, from which platform signup is originated, example f5xc, aws..etc + Origin schema.SignupOrigin `protobuf:"varint,14,opt,name=origin,proto3,enum=ves.io.schema.SignupOrigin" json:"origin,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } @@ -109,46 +116,46 @@ func (m *GlobalSpecType) XXX_DiscardUnknown() { var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo -type isGlobalSpecType_SourceChoice interface { - isGlobalSpecType_SourceChoice() +type isGlobalSpecType_SignupType interface { + isGlobalSpecType_SignupType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type GlobalSpecType_SourcePublic struct { - SourcePublic *signup.SourcePublic `protobuf:"bytes,6,opt,name=source_public,json=sourcePublic,proto3,oneof" json:"source_public,omitempty"` +type GlobalSpecType_SignupTypePublic struct { + SignupTypePublic *signup.SignupTypePublic `protobuf:"bytes,6,opt,name=signup_type_public,json=signupTypePublic,proto3,oneof" json:"signup_type_public,omitempty"` } -type GlobalSpecType_SourceInternalSre struct { - SourceInternalSre *signup.SourceInternalSre `protobuf:"bytes,7,opt,name=source_internal_sre,json=sourceInternalSre,proto3,oneof" json:"source_internal_sre,omitempty"` +type GlobalSpecType_SignupTypeInternalSre struct { + SignupTypeInternalSre *signup.SignupTypeInternalSre `protobuf:"bytes,7,opt,name=signup_type_internal_sre,json=signupTypeInternalSre,proto3,oneof" json:"signup_type_internal_sre,omitempty"` } -type GlobalSpecType_SourceInternalScaling struct { - SourceInternalScaling *signup.SourceInternalScaling `protobuf:"bytes,8,opt,name=source_internal_scaling,json=sourceInternalScaling,proto3,oneof" json:"source_internal_scaling,omitempty"` +type GlobalSpecType_SignupTypeInternalScaling struct { + SignupTypeInternalScaling *signup.SignupTypeInternalScaling `protobuf:"bytes,8,opt,name=signup_type_internal_scaling,json=signupTypeInternalScaling,proto3,oneof" json:"signup_type_internal_scaling,omitempty"` } -type GlobalSpecType_SourcePlanTransition struct { - SourcePlanTransition *signup.SourcePlanTransition `protobuf:"bytes,9,opt,name=source_plan_transition,json=sourcePlanTransition,proto3,oneof" json:"source_plan_transition,omitempty"` +type GlobalSpecType_SignupTypePlanTransition struct { + SignupTypePlanTransition *signup.SignupTypePlanTransition `protobuf:"bytes,9,opt,name=signup_type_plan_transition,json=signupTypePlanTransition,proto3,oneof" json:"signup_type_plan_transition,omitempty"` } -type GlobalSpecType_SourceMsp struct { - SourceMsp *signup.SourceMsp `protobuf:"bytes,10,opt,name=source_msp,json=sourceMsp,proto3,oneof" json:"source_msp,omitempty"` +type GlobalSpecType_SignupTypeMsp struct { + SignupTypeMsp *signup.SignupTypeMsp `protobuf:"bytes,10,opt,name=signup_type_msp,json=signupTypeMsp,proto3,oneof" json:"signup_type_msp,omitempty"` } -type GlobalSpecType_SourceInternalSso struct { - SourceInternalSso *signup.SourceInternalSso `protobuf:"bytes,11,opt,name=source_internal_sso,json=sourceInternalSso,proto3,oneof" json:"source_internal_sso,omitempty"` +type GlobalSpecType_SignupTypeInternalSso struct { + SignupTypeInternalSso *signup.SignupTypeInternalSso `protobuf:"bytes,11,opt,name=signup_type_internal_sso,json=signupTypeInternalSso,proto3,oneof" json:"signup_type_internal_sso,omitempty"` } -type GlobalSpecType_SourceMarketplace struct { - SourceMarketplace *signup.SourceMarketplace `protobuf:"bytes,13,opt,name=source_marketplace,json=sourceMarketplace,proto3,oneof" json:"source_marketplace,omitempty"` +type GlobalSpecType_SignupTypeMarketplace struct { + SignupTypeMarketplace *signup.SignupTypeMarketplace `protobuf:"bytes,13,opt,name=signup_type_marketplace,json=signupTypeMarketplace,proto3,oneof" json:"signup_type_marketplace,omitempty"` } -func (*GlobalSpecType_SourcePublic) isGlobalSpecType_SourceChoice() {} -func (*GlobalSpecType_SourceInternalSre) isGlobalSpecType_SourceChoice() {} -func (*GlobalSpecType_SourceInternalScaling) isGlobalSpecType_SourceChoice() {} -func (*GlobalSpecType_SourcePlanTransition) isGlobalSpecType_SourceChoice() {} -func (*GlobalSpecType_SourceMsp) isGlobalSpecType_SourceChoice() {} -func (*GlobalSpecType_SourceInternalSso) isGlobalSpecType_SourceChoice() {} -func (*GlobalSpecType_SourceMarketplace) isGlobalSpecType_SourceChoice() {} +func (*GlobalSpecType_SignupTypePublic) isGlobalSpecType_SignupType() {} +func (*GlobalSpecType_SignupTypeInternalSre) isGlobalSpecType_SignupType() {} +func (*GlobalSpecType_SignupTypeInternalScaling) isGlobalSpecType_SignupType() {} +func (*GlobalSpecType_SignupTypePlanTransition) isGlobalSpecType_SignupType() {} +func (*GlobalSpecType_SignupTypeMsp) isGlobalSpecType_SignupType() {} +func (*GlobalSpecType_SignupTypeInternalSso) isGlobalSpecType_SignupType() {} +func (*GlobalSpecType_SignupTypeMarketplace) isGlobalSpecType_SignupType() {} -func (m *GlobalSpecType) GetSourceChoice() isGlobalSpecType_SourceChoice { +func (m *GlobalSpecType) GetSignupType() isGlobalSpecType_SignupType { if m != nil { - return m.SourceChoice + return m.SignupType } return nil } @@ -188,65 +195,72 @@ func (m *GlobalSpecType) GetInternalMeta() *signup.InternalMeta { return nil } -func (m *GlobalSpecType) GetSourcePublic() *signup.SourcePublic { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourcePublic); ok { - return x.SourcePublic +func (m *GlobalSpecType) GetSignupTypePublic() *signup.SignupTypePublic { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypePublic); ok { + return x.SignupTypePublic } return nil } -func (m *GlobalSpecType) GetSourceInternalSre() *signup.SourceInternalSre { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourceInternalSre); ok { - return x.SourceInternalSre +func (m *GlobalSpecType) GetSignupTypeInternalSre() *signup.SignupTypeInternalSre { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypeInternalSre); ok { + return x.SignupTypeInternalSre } return nil } -func (m *GlobalSpecType) GetSourceInternalScaling() *signup.SourceInternalScaling { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourceInternalScaling); ok { - return x.SourceInternalScaling +func (m *GlobalSpecType) GetSignupTypeInternalScaling() *signup.SignupTypeInternalScaling { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypeInternalScaling); ok { + return x.SignupTypeInternalScaling } return nil } -func (m *GlobalSpecType) GetSourcePlanTransition() *signup.SourcePlanTransition { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourcePlanTransition); ok { - return x.SourcePlanTransition +func (m *GlobalSpecType) GetSignupTypePlanTransition() *signup.SignupTypePlanTransition { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypePlanTransition); ok { + return x.SignupTypePlanTransition } return nil } -func (m *GlobalSpecType) GetSourceMsp() *signup.SourceMsp { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourceMsp); ok { - return x.SourceMsp +func (m *GlobalSpecType) GetSignupTypeMsp() *signup.SignupTypeMsp { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypeMsp); ok { + return x.SignupTypeMsp } return nil } -func (m *GlobalSpecType) GetSourceInternalSso() *signup.SourceInternalSso { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourceInternalSso); ok { - return x.SourceInternalSso +func (m *GlobalSpecType) GetSignupTypeInternalSso() *signup.SignupTypeInternalSso { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypeInternalSso); ok { + return x.SignupTypeInternalSso } return nil } -func (m *GlobalSpecType) GetSourceMarketplace() *signup.SourceMarketplace { - if x, ok := m.GetSourceChoice().(*GlobalSpecType_SourceMarketplace); ok { - return x.SourceMarketplace +func (m *GlobalSpecType) GetSignupTypeMarketplace() *signup.SignupTypeMarketplace { + if x, ok := m.GetSignupType().(*GlobalSpecType_SignupTypeMarketplace); ok { + return x.SignupTypeMarketplace } return nil } +func (m *GlobalSpecType) GetOrigin() schema.SignupOrigin { + if m != nil { + return m.Origin + } + return schema.ORIGIN_UNKNOWN +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*GlobalSpecType_SourcePublic)(nil), - (*GlobalSpecType_SourceInternalSre)(nil), - (*GlobalSpecType_SourceInternalScaling)(nil), - (*GlobalSpecType_SourcePlanTransition)(nil), - (*GlobalSpecType_SourceMsp)(nil), - (*GlobalSpecType_SourceInternalSso)(nil), - (*GlobalSpecType_SourceMarketplace)(nil), + (*GlobalSpecType_SignupTypePublic)(nil), + (*GlobalSpecType_SignupTypeInternalSre)(nil), + (*GlobalSpecType_SignupTypeInternalScaling)(nil), + (*GlobalSpecType_SignupTypePlanTransition)(nil), + (*GlobalSpecType_SignupTypeMsp)(nil), + (*GlobalSpecType_SignupTypeInternalSso)(nil), + (*GlobalSpecType_SignupTypeMarketplace)(nil), } } @@ -259,51 +273,52 @@ func init() { } var fileDescriptor_142ba11d320bb60e = []byte{ - // 690 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x95, 0xcf, 0x4e, 0xdb, 0x4c, - 0x14, 0xc5, 0x3d, 0xdf, 0x07, 0x21, 0x98, 0x00, 0xad, 0xfb, 0xcf, 0xd0, 0xca, 0x50, 0xba, 0x68, - 0x55, 0x84, 0x2d, 0xa5, 0x8b, 0xae, 0xa1, 0x95, 0x08, 0x48, 0x48, 0x55, 0xa0, 0x8b, 0x76, 0x63, - 0x8d, 0xcd, 0xc5, 0x8c, 0xb0, 0x67, 0x46, 0x33, 0xe3, 0xb4, 0x2c, 0x2a, 0xf5, 0x11, 0xba, 0xef, - 0x0b, 0x74, 0xd3, 0x27, 0x60, 0xd3, 0x65, 0x97, 0x59, 0x66, 0x59, 0xcc, 0x86, 0x25, 0x8f, 0x50, - 0x65, 0x6c, 0x07, 0x27, 0x8d, 0x52, 0xba, 0xf3, 0xf5, 0x39, 0xe7, 0x77, 0x6f, 0x6e, 0x46, 0x63, - 0xf3, 0x65, 0x07, 0xa4, 0x4b, 0x98, 0x27, 0xc3, 0x63, 0x48, 0xb0, 0x47, 0xa8, 0x54, 0x98, 0x86, - 0xe0, 0x27, 0x98, 0xe2, 0x08, 0x12, 0xa0, 0xca, 0xeb, 0x34, 0x7d, 0x49, 0x22, 0x9a, 0x72, 0x4f, - 0x9d, 0x72, 0x90, 0x2e, 0x17, 0x4c, 0x31, 0x6b, 0x3d, 0x0f, 0xba, 0x79, 0xd0, 0x1d, 0x13, 0x74, - 0x07, 0xc1, 0xe5, 0x8d, 0x88, 0xa8, 0xe3, 0x34, 0x70, 0x43, 0x96, 0x78, 0x11, 0x8b, 0x98, 0xa7, - 0x19, 0x41, 0x7a, 0xa4, 0x2b, 0x5d, 0xe8, 0xa7, 0x9c, 0xbd, 0xbc, 0x12, 0x31, 0x16, 0xc5, 0x70, - 0xed, 0x52, 0x24, 0x01, 0xa9, 0x70, 0xc2, 0x0b, 0x43, 0x73, 0x74, 0xea, 0x23, 0x81, 0xfb, 0x0a, - 0x84, 0xca, 0x27, 0xf4, 0x88, 0x89, 0x04, 0x2b, 0xc2, 0x68, 0x75, 0xe0, 0xe5, 0x87, 0xc3, 0x19, - 0xc6, 0xfb, 0x8e, 0x52, 0x7c, 0x32, 0x2c, 0x56, 0x7f, 0xaf, 0xdf, 0x69, 0x16, 0xa6, 0xa5, 0x61, - 0x53, 0x15, 0xfe, 0x68, 0x58, 0xea, 0xe0, 0x98, 0x1c, 0x62, 0x05, 0x85, 0xba, 0x3a, 0xa2, 0x12, - 0xf8, 0xe0, 0x0f, 0xf5, 0x5f, 0xfb, 0x5e, 0x37, 0x17, 0xb6, 0x63, 0x16, 0xe0, 0x78, 0x9f, 0x43, - 0x78, 0x70, 0xca, 0xc1, 0xda, 0x35, 0x17, 0x43, 0x96, 0x70, 0x4c, 0x4f, 0xfd, 0x43, 0x50, 0x98, - 0xc4, 0xd2, 0x46, 0xab, 0xe8, 0xd9, 0x5c, 0xf3, 0xb1, 0x3b, 0xbc, 0xfa, 0x7c, 0x58, 0xf7, 0x55, - 0x6e, 0xde, 0x03, 0x85, 0xdb, 0x0b, 0x45, 0xf2, 0x75, 0x1e, 0xb4, 0x36, 0xcd, 0x46, 0x2a, 0x41, - 0x0c, 0x40, 0xff, 0x69, 0x90, 0x33, 0x1e, 0xf4, 0x56, 0x82, 0xd0, 0x94, 0xb9, 0x7e, 0xa6, 0x44, - 0xec, 0x9a, 0x8b, 0x38, 0x0c, 0x59, 0x4a, 0xd5, 0x80, 0xf2, 0xff, 0xa4, 0x71, 0x36, 0x73, 0x73, - 0x3e, 0x4e, 0x91, 0xac, 0xb0, 0x02, 0x12, 0xc7, 0x84, 0x46, 0x03, 0xd6, 0xd4, 0x24, 0xd6, 0x56, - 0x6e, 0xce, 0x59, 0x45, 0xb2, 0x64, 0x6d, 0x9b, 0xf3, 0x84, 0x2a, 0x10, 0x14, 0xc7, 0x7e, 0x02, - 0x0a, 0xdb, 0x0d, 0x4d, 0x5a, 0x1b, 0x4f, 0xda, 0x29, 0xac, 0x1a, 0xd5, 0x20, 0x95, 0xca, 0xda, - 0x31, 0xe7, 0x25, 0x4b, 0x45, 0x08, 0x3e, 0x4f, 0x83, 0x98, 0x84, 0x76, 0x6d, 0x12, 0x68, 0x5f, - 0x5b, 0xdf, 0x68, 0x67, 0xcb, 0x68, 0x37, 0x64, 0xa5, 0xb6, 0xde, 0x99, 0x77, 0x0a, 0xd4, 0x60, - 0x34, 0x29, 0xc0, 0x9e, 0xd1, 0xc0, 0xa7, 0x93, 0x80, 0xe5, 0x7c, 0xfb, 0x02, 0x5a, 0x46, 0xfb, - 0xb6, 0x1c, 0x7d, 0x69, 0x81, 0xf9, 0xe0, 0x0f, 0x74, 0x88, 0xfb, 0x0b, 0xb1, 0xeb, 0x1a, 0xbf, - 0x7e, 0x23, 0x7c, 0x1e, 0x69, 0x19, 0xed, 0x7b, 0x72, 0x9c, 0x60, 0x9d, 0x98, 0xf7, 0xcb, 0x65, - 0xc4, 0x98, 0xfa, 0x4a, 0x60, 0x2a, 0x49, 0xff, 0xc0, 0xda, 0xb3, 0xba, 0xcb, 0xf3, 0x89, 0x5b, - 0x89, 0x31, 0x3d, 0x18, 0x24, 0xb6, 0x66, 0x7a, 0x9f, 0xd0, 0xe5, 0x19, 0x42, 0x2d, 0xa3, 0x7d, - 0x57, 0x8e, 0x31, 0x58, 0x3b, 0xa6, 0x59, 0x34, 0x4b, 0x24, 0xb7, 0x4d, 0xdd, 0x60, 0x65, 0x52, - 0x83, 0x3d, 0xc9, 0xab, 0xd4, 0x59, 0x59, 0xbe, 0xb5, 0x82, 0x31, 0x9b, 0x97, 0xcc, 0x9e, 0xfb, - 0x87, 0xcd, 0x4b, 0x56, 0x65, 0x8f, 0xfe, 0x05, 0x92, 0x59, 0xd8, 0xb4, 0xca, 0x71, 0xb1, 0x38, - 0x01, 0xc5, 0x63, 0x1c, 0x82, 0x3d, 0xff, 0xf7, 0x16, 0x7b, 0xd7, 0xf6, 0x31, 0x2d, 0xaa, 0xea, - 0xd2, 0xe0, 0x2c, 0x86, 0xc7, 0x8c, 0x84, 0x60, 0xd5, 0x7f, 0x9c, 0xa1, 0x5a, 0xf7, 0x0c, 0x4d, - 0xef, 0x4e, 0xd5, 0xa7, 0x6f, 0xd5, 0xb6, 0xbe, 0xa2, 0xee, 0xb9, 0x63, 0xf4, 0xce, 0x1d, 0xe3, - 0xea, 0xdc, 0x41, 0x9f, 0x33, 0x07, 0x7d, 0xcb, 0x1c, 0xf4, 0x33, 0x73, 0x50, 0x37, 0x73, 0x50, - 0x2f, 0x73, 0xd0, 0xaf, 0xcc, 0x41, 0x97, 0x99, 0x63, 0x5c, 0x65, 0x0e, 0xfa, 0x72, 0xe1, 0x18, - 0xdd, 0x0b, 0xc7, 0xe8, 0x5d, 0x38, 0xc6, 0x7b, 0x1c, 0x31, 0x7e, 0x12, 0xb9, 0x1d, 0x16, 0x2b, - 0x10, 0x02, 0xbb, 0xa9, 0xf4, 0xf4, 0x43, 0xff, 0xd6, 0xdc, 0xe0, 0x82, 0x75, 0xc8, 0x21, 0x88, - 0x8d, 0x52, 0xf6, 0x78, 0x10, 0x31, 0x0f, 0x3e, 0xaa, 0xf2, 0x66, 0xbc, 0xc1, 0x77, 0x22, 0xa8, - 0xe9, 0x4b, 0xed, 0xc5, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x1c, 0x40, 0x1b, 0x4b, 0x5d, 0x06, - 0x00, 0x00, + // 718 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x95, 0x4d, 0x4f, 0xe3, 0x38, + 0x1c, 0xc6, 0xe3, 0x5d, 0x28, 0xe0, 0x42, 0x41, 0x91, 0x56, 0x84, 0x17, 0x79, 0x59, 0x90, 0x56, + 0x48, 0x88, 0x44, 0x2a, 0x87, 0x3d, 0xd3, 0x5d, 0x89, 0x2e, 0x12, 0xda, 0x55, 0x61, 0x39, 0xec, + 0x25, 0x72, 0x83, 0x1b, 0x2c, 0x12, 0xdb, 0xb2, 0xdd, 0x0e, 0x1c, 0x46, 0x9a, 0x8f, 0x30, 0xf7, + 0xf9, 0x02, 0xf3, 0x1d, 0x7a, 0x99, 0xe3, 0x1c, 0x7b, 0xec, 0x71, 0x08, 0x17, 0x8e, 0x7c, 0x84, + 0x51, 0x9c, 0xb4, 0x24, 0x55, 0x0b, 0xcc, 0xa9, 0x71, 0x9f, 0xe7, 0xf9, 0x3d, 0xff, 0xd8, 0x95, + 0x0b, 0xff, 0xe8, 0x11, 0xe5, 0x52, 0xee, 0xa9, 0xe0, 0x9a, 0xc4, 0xd8, 0xa3, 0x4c, 0x69, 0xcc, + 0x02, 0xe2, 0xc7, 0x98, 0xe1, 0x90, 0xc4, 0x84, 0x69, 0xaf, 0x57, 0xf7, 0x15, 0x0d, 0x59, 0x57, + 0x78, 0xfa, 0x4e, 0x10, 0xe5, 0x0a, 0xc9, 0x35, 0xb7, 0x0f, 0xb2, 0xa0, 0x9b, 0x05, 0xdd, 0x29, + 0x41, 0x77, 0x1c, 0xdc, 0x3c, 0x0c, 0xa9, 0xbe, 0xee, 0xb6, 0xdd, 0x80, 0xc7, 0x5e, 0xc8, 0x43, + 0xee, 0x19, 0x46, 0xbb, 0xdb, 0x31, 0x2b, 0xb3, 0x30, 0x4f, 0x19, 0x7b, 0xf3, 0xd7, 0x90, 0xf3, + 0x30, 0x22, 0xcf, 0x2e, 0x4d, 0x63, 0xa2, 0x34, 0x8e, 0x45, 0x6e, 0xa8, 0x4f, 0x4e, 0xdd, 0x91, + 0x38, 0x55, 0x48, 0xa0, 0x7d, 0xca, 0x3a, 0x5c, 0xc6, 0x58, 0x53, 0xce, 0x8a, 0x03, 0x6f, 0x6e, + 0x95, 0x33, 0x5c, 0xa4, 0x8e, 0x91, 0xb8, 0x57, 0x16, 0x8b, 0xef, 0xeb, 0xf7, 0xea, 0xb9, 0x69, + 0xa3, 0x6c, 0x2a, 0xc2, 0xb7, 0xcb, 0x52, 0x0f, 0x47, 0xf4, 0x0a, 0x6b, 0x92, 0xab, 0x3b, 0x13, + 0x2a, 0x25, 0xef, 0xfc, 0x52, 0xff, 0x6e, 0x7f, 0x09, 0xd6, 0x4e, 0x22, 0xde, 0xc6, 0xd1, 0xb9, + 0x20, 0xc1, 0xc5, 0x9d, 0x20, 0xf6, 0x29, 0x5c, 0x0d, 0x78, 0x2c, 0x30, 0xbb, 0xf3, 0xaf, 0x88, + 0xc6, 0x34, 0x52, 0x0e, 0xd8, 0x01, 0xfb, 0xd5, 0xfa, 0x6f, 0x6e, 0x79, 0xeb, 0xb3, 0x61, 0xdd, + 0x3f, 0x33, 0xf3, 0x19, 0xd1, 0xb8, 0x55, 0xcb, 0x93, 0x7f, 0x65, 0x41, 0xfb, 0x18, 0x2e, 0x77, + 0x15, 0x91, 0x63, 0xd0, 0x4f, 0x06, 0x84, 0xa6, 0x83, 0xfe, 0x53, 0x44, 0x1a, 0x4a, 0x35, 0xcd, + 0x8c, 0x10, 0xa7, 0x70, 0x15, 0x07, 0x01, 0xef, 0x32, 0x3d, 0xa6, 0xfc, 0xfc, 0xd2, 0x38, 0xc7, + 0x99, 0x39, 0x1b, 0x27, 0x4f, 0x16, 0x58, 0x6d, 0x1a, 0x45, 0x94, 0x85, 0x63, 0xd6, 0xdc, 0x4b, + 0xac, 0x46, 0x66, 0xce, 0x58, 0x79, 0x72, 0xc4, 0x3a, 0x81, 0x2b, 0x94, 0x69, 0x22, 0x19, 0x8e, + 0xfc, 0x98, 0x68, 0xec, 0x2c, 0x1b, 0xd2, 0xee, 0x74, 0xd2, 0xdf, 0xb9, 0xd5, 0xa0, 0x96, 0x69, + 0x61, 0x65, 0x5f, 0x42, 0x3b, 0x33, 0xf9, 0xe9, 0xc1, 0xfa, 0xa2, 0xdb, 0x8e, 0x68, 0xe0, 0x54, + 0x0c, 0xed, 0xf7, 0xe9, 0xb4, 0x73, 0xf3, 0x91, 0x9e, 0xd6, 0xbf, 0xc6, 0xdd, 0xb4, 0x5a, 0x6b, + 0x6a, 0xe2, 0x3b, 0xbb, 0x03, 0x9d, 0x22, 0x77, 0x3c, 0xac, 0x92, 0xc4, 0x59, 0x30, 0xf4, 0x83, + 0xd7, 0xe8, 0xa3, 0xa9, 0xcf, 0x25, 0x69, 0x5a, 0xad, 0x5f, 0xd4, 0x34, 0xc1, 0x96, 0x70, 0x7b, + 0x7a, 0x4f, 0x80, 0xd3, 0xfd, 0x72, 0x16, 0x4d, 0x97, 0xf7, 0xe6, 0xae, 0x2c, 0xd6, 0xb4, 0x5a, + 0x1b, 0x6a, 0x96, 0x68, 0xdf, 0xc2, 0xad, 0xd2, 0x9e, 0x45, 0x98, 0xf9, 0x5a, 0x62, 0xa6, 0x68, + 0xfa, 0xe3, 0x76, 0x96, 0x4c, 0xa5, 0xfb, 0xea, 0xe6, 0x45, 0x98, 0x5d, 0x8c, 0x53, 0x8d, 0x85, + 0xe1, 0x7b, 0xf0, 0xd8, 0x07, 0xa0, 0x69, 0xb5, 0x1c, 0x35, 0xc3, 0x64, 0x5f, 0xc2, 0xd5, 0x62, + 0x73, 0xac, 0x84, 0x03, 0x4d, 0xdb, 0xde, 0x6b, 0x6d, 0x67, 0x4a, 0x14, 0x2b, 0x56, 0x54, 0x51, + 0xb1, 0xf9, 0xac, 0xd3, 0x52, 0xdc, 0xa9, 0xfe, 0xe0, 0x69, 0x29, 0x5e, 0x2c, 0x9a, 0x76, 0x6c, + 0x8a, 0xdb, 0x0c, 0xae, 0x97, 0x5e, 0x04, 0xcb, 0x1b, 0xa2, 0x45, 0x84, 0x03, 0xe2, 0xac, 0xbc, + 0xad, 0xef, 0xec, 0x39, 0x32, 0xa3, 0xaf, 0xe0, 0xb0, 0x8f, 0x60, 0x85, 0x4b, 0x1a, 0x52, 0xe6, + 0xd4, 0x76, 0xc0, 0x7e, 0xad, 0xbe, 0x35, 0x81, 0xcf, 0xb8, 0xff, 0x18, 0x4b, 0x2b, 0xb7, 0x36, + 0xd6, 0x61, 0xb5, 0x30, 0xa4, 0xbd, 0xf8, 0xa5, 0x0f, 0x2a, 0x83, 0x3e, 0x98, 0x3f, 0x9d, 0x5b, + 0x9c, 0x5f, 0xab, 0x34, 0x3e, 0x81, 0xc1, 0x3d, 0xb2, 0x86, 0xf7, 0xc8, 0x7a, 0xba, 0x47, 0xe0, + 0x43, 0x82, 0xc0, 0xe7, 0x04, 0x81, 0xaf, 0x09, 0x02, 0x83, 0x04, 0x81, 0x61, 0x82, 0xc0, 0xb7, + 0x04, 0x81, 0xc7, 0x04, 0x59, 0x4f, 0x09, 0x02, 0x1f, 0x1f, 0x90, 0x35, 0x78, 0x40, 0xd6, 0xf0, + 0x01, 0x59, 0xff, 0xe3, 0x90, 0x8b, 0x9b, 0xd0, 0xed, 0xf1, 0x48, 0x13, 0x29, 0xb1, 0xdb, 0x55, + 0x9e, 0x79, 0x48, 0xef, 0xf0, 0x43, 0x21, 0x79, 0x8f, 0x5e, 0x11, 0x79, 0x38, 0x92, 0x3d, 0xd1, + 0x0e, 0xb9, 0x47, 0x6e, 0xf5, 0xe8, 0x9e, 0x7e, 0xc3, 0xbf, 0x56, 0xbb, 0x62, 0xae, 0xd8, 0xa3, + 0xef, 0x01, 0x00, 0x00, 0xff, 0xff, 0xec, 0x85, 0xb4, 0x4d, 0xeb, 0x06, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { @@ -340,25 +355,28 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.InternalMeta.Equal(that1.InternalMeta) { return false } - if that1.SourceChoice == nil { - if this.SourceChoice != nil { + if that1.SignupType == nil { + if this.SignupType != nil { return false } - } else if this.SourceChoice == nil { + } else if this.SignupType == nil { return false - } else if !this.SourceChoice.Equal(that1.SourceChoice) { + } else if !this.SignupType.Equal(that1.SignupType) { + return false + } + if this.Origin != that1.Origin { return false } return true } -func (this *GlobalSpecType_SourcePublic) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypePublic) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourcePublic) + that1, ok := that.(*GlobalSpecType_SignupTypePublic) if !ok { - that2, ok := that.(GlobalSpecType_SourcePublic) + that2, ok := that.(GlobalSpecType_SignupTypePublic) if ok { that1 = &that2 } else { @@ -370,19 +388,19 @@ func (this *GlobalSpecType_SourcePublic) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourcePublic.Equal(that1.SourcePublic) { + if !this.SignupTypePublic.Equal(that1.SignupTypePublic) { return false } return true } -func (this *GlobalSpecType_SourceInternalSre) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypeInternalSre) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourceInternalSre) + that1, ok := that.(*GlobalSpecType_SignupTypeInternalSre) if !ok { - that2, ok := that.(GlobalSpecType_SourceInternalSre) + that2, ok := that.(GlobalSpecType_SignupTypeInternalSre) if ok { that1 = &that2 } else { @@ -394,19 +412,19 @@ func (this *GlobalSpecType_SourceInternalSre) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceInternalSre.Equal(that1.SourceInternalSre) { + if !this.SignupTypeInternalSre.Equal(that1.SignupTypeInternalSre) { return false } return true } -func (this *GlobalSpecType_SourceInternalScaling) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypeInternalScaling) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourceInternalScaling) + that1, ok := that.(*GlobalSpecType_SignupTypeInternalScaling) if !ok { - that2, ok := that.(GlobalSpecType_SourceInternalScaling) + that2, ok := that.(GlobalSpecType_SignupTypeInternalScaling) if ok { that1 = &that2 } else { @@ -418,19 +436,19 @@ func (this *GlobalSpecType_SourceInternalScaling) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceInternalScaling.Equal(that1.SourceInternalScaling) { + if !this.SignupTypeInternalScaling.Equal(that1.SignupTypeInternalScaling) { return false } return true } -func (this *GlobalSpecType_SourcePlanTransition) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypePlanTransition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourcePlanTransition) + that1, ok := that.(*GlobalSpecType_SignupTypePlanTransition) if !ok { - that2, ok := that.(GlobalSpecType_SourcePlanTransition) + that2, ok := that.(GlobalSpecType_SignupTypePlanTransition) if ok { that1 = &that2 } else { @@ -442,19 +460,19 @@ func (this *GlobalSpecType_SourcePlanTransition) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourcePlanTransition.Equal(that1.SourcePlanTransition) { + if !this.SignupTypePlanTransition.Equal(that1.SignupTypePlanTransition) { return false } return true } -func (this *GlobalSpecType_SourceMsp) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypeMsp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourceMsp) + that1, ok := that.(*GlobalSpecType_SignupTypeMsp) if !ok { - that2, ok := that.(GlobalSpecType_SourceMsp) + that2, ok := that.(GlobalSpecType_SignupTypeMsp) if ok { that1 = &that2 } else { @@ -466,19 +484,19 @@ func (this *GlobalSpecType_SourceMsp) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceMsp.Equal(that1.SourceMsp) { + if !this.SignupTypeMsp.Equal(that1.SignupTypeMsp) { return false } return true } -func (this *GlobalSpecType_SourceInternalSso) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypeInternalSso) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourceInternalSso) + that1, ok := that.(*GlobalSpecType_SignupTypeInternalSso) if !ok { - that2, ok := that.(GlobalSpecType_SourceInternalSso) + that2, ok := that.(GlobalSpecType_SignupTypeInternalSso) if ok { that1 = &that2 } else { @@ -490,19 +508,19 @@ func (this *GlobalSpecType_SourceInternalSso) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceInternalSso.Equal(that1.SourceInternalSso) { + if !this.SignupTypeInternalSso.Equal(that1.SignupTypeInternalSso) { return false } return true } -func (this *GlobalSpecType_SourceMarketplace) Equal(that interface{}) bool { +func (this *GlobalSpecType_SignupTypeMarketplace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourceMarketplace) + that1, ok := that.(*GlobalSpecType_SignupTypeMarketplace) if !ok { - that2, ok := that.(GlobalSpecType_SourceMarketplace) + that2, ok := that.(GlobalSpecType_SignupTypeMarketplace) if ok { that1 = &that2 } else { @@ -514,7 +532,7 @@ func (this *GlobalSpecType_SourceMarketplace) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceMarketplace.Equal(that1.SourceMarketplace) { + if !this.SignupTypeMarketplace.Equal(that1.SignupTypeMarketplace) { return false } return true @@ -523,7 +541,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 16) + s := make([]string, 0, 17) s = append(s, "&v2_signup.GlobalSpecType{") if this.CompanyDetails != nil { s = append(s, "CompanyDetails: "+fmt.Sprintf("%#v", this.CompanyDetails)+",\n") @@ -540,66 +558,67 @@ func (this *GlobalSpecType) GoString() string { if this.InternalMeta != nil { s = append(s, "InternalMeta: "+fmt.Sprintf("%#v", this.InternalMeta)+",\n") } - if this.SourceChoice != nil { - s = append(s, "SourceChoice: "+fmt.Sprintf("%#v", this.SourceChoice)+",\n") + if this.SignupType != nil { + s = append(s, "SignupType: "+fmt.Sprintf("%#v", this.SignupType)+",\n") } + s = append(s, "Origin: "+fmt.Sprintf("%#v", this.Origin)+",\n") s = append(s, "}") return strings.Join(s, "") } -func (this *GlobalSpecType_SourcePublic) GoString() string { +func (this *GlobalSpecType_SignupTypePublic) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourcePublic{` + - `SourcePublic:` + fmt.Sprintf("%#v", this.SourcePublic) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypePublic{` + + `SignupTypePublic:` + fmt.Sprintf("%#v", this.SignupTypePublic) + `}`}, ", ") return s } -func (this *GlobalSpecType_SourceInternalSre) GoString() string { +func (this *GlobalSpecType_SignupTypeInternalSre) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourceInternalSre{` + - `SourceInternalSre:` + fmt.Sprintf("%#v", this.SourceInternalSre) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypeInternalSre{` + + `SignupTypeInternalSre:` + fmt.Sprintf("%#v", this.SignupTypeInternalSre) + `}`}, ", ") return s } -func (this *GlobalSpecType_SourceInternalScaling) GoString() string { +func (this *GlobalSpecType_SignupTypeInternalScaling) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourceInternalScaling{` + - `SourceInternalScaling:` + fmt.Sprintf("%#v", this.SourceInternalScaling) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypeInternalScaling{` + + `SignupTypeInternalScaling:` + fmt.Sprintf("%#v", this.SignupTypeInternalScaling) + `}`}, ", ") return s } -func (this *GlobalSpecType_SourcePlanTransition) GoString() string { +func (this *GlobalSpecType_SignupTypePlanTransition) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourcePlanTransition{` + - `SourcePlanTransition:` + fmt.Sprintf("%#v", this.SourcePlanTransition) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypePlanTransition{` + + `SignupTypePlanTransition:` + fmt.Sprintf("%#v", this.SignupTypePlanTransition) + `}`}, ", ") return s } -func (this *GlobalSpecType_SourceMsp) GoString() string { +func (this *GlobalSpecType_SignupTypeMsp) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourceMsp{` + - `SourceMsp:` + fmt.Sprintf("%#v", this.SourceMsp) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypeMsp{` + + `SignupTypeMsp:` + fmt.Sprintf("%#v", this.SignupTypeMsp) + `}`}, ", ") return s } -func (this *GlobalSpecType_SourceInternalSso) GoString() string { +func (this *GlobalSpecType_SignupTypeInternalSso) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourceInternalSso{` + - `SourceInternalSso:` + fmt.Sprintf("%#v", this.SourceInternalSso) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypeInternalSso{` + + `SignupTypeInternalSso:` + fmt.Sprintf("%#v", this.SignupTypeInternalSso) + `}`}, ", ") return s } -func (this *GlobalSpecType_SourceMarketplace) GoString() string { +func (this *GlobalSpecType_SignupTypeMarketplace) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&v2_signup.GlobalSpecType_SourceMarketplace{` + - `SourceMarketplace:` + fmt.Sprintf("%#v", this.SourceMarketplace) + `}`}, ", ") + s := strings.Join([]string{`&v2_signup.GlobalSpecType_SignupTypeMarketplace{` + + `SignupTypeMarketplace:` + fmt.Sprintf("%#v", this.SignupTypeMarketplace) + `}`}, ", ") return s } func valueToGoStringTypes(v interface{}, typ string) string { @@ -630,11 +649,16 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.SourceChoice != nil { + if m.Origin != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Origin)) + i-- + dAtA[i] = 0x70 + } + if m.SignupType != nil { { - size := m.SourceChoice.Size() + size := m.SignupType.Size() i -= size - if _, err := m.SourceChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.SignupType.MarshalTo(dAtA[i:]); err != nil { return 0, err } } @@ -702,16 +726,16 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourcePublic) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypePublic) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourcePublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypePublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourcePublic != nil { + if m.SignupTypePublic != nil { { - size, err := m.SourcePublic.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypePublic.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -723,16 +747,16 @@ func (m *GlobalSpecType_SourcePublic) MarshalToSizedBuffer(dAtA []byte) (int, er } return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourceInternalSre) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeInternalSre) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceInternalSre != nil { + if m.SignupTypeInternalSre != nil { { - size, err := m.SourceInternalSre.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeInternalSre.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -744,16 +768,16 @@ func (m *GlobalSpecType_SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (in } return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourceInternalScaling) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeInternalScaling) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourceInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceInternalScaling != nil { + if m.SignupTypeInternalScaling != nil { { - size, err := m.SourceInternalScaling.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeInternalScaling.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -765,16 +789,16 @@ func (m *GlobalSpecType_SourceInternalScaling) MarshalToSizedBuffer(dAtA []byte) } return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourcePlanTransition) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypePlanTransition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourcePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourcePlanTransition != nil { + if m.SignupTypePlanTransition != nil { { - size, err := m.SourcePlanTransition.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypePlanTransition.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -786,16 +810,16 @@ func (m *GlobalSpecType_SourcePlanTransition) MarshalToSizedBuffer(dAtA []byte) } return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourceMsp) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeMsp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourceMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceMsp != nil { + if m.SignupTypeMsp != nil { { - size, err := m.SourceMsp.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeMsp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -807,16 +831,16 @@ func (m *GlobalSpecType_SourceMsp) MarshalToSizedBuffer(dAtA []byte) (int, error } return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourceInternalSso) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeInternalSso) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourceInternalSso) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeInternalSso) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceInternalSso != nil { + if m.SignupTypeInternalSso != nil { { - size, err := m.SourceInternalSso.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeInternalSso.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -828,16 +852,16 @@ func (m *GlobalSpecType_SourceInternalSso) MarshalToSizedBuffer(dAtA []byte) (in } return len(dAtA) - i, nil } -func (m *GlobalSpecType_SourceMarketplace) MarshalTo(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeMarketplace) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType_SourceMarketplace) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GlobalSpecType_SignupTypeMarketplace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceMarketplace != nil { + if m.SignupTypeMarketplace != nil { { - size, err := m.SourceMarketplace.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeMarketplace.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -882,96 +906,99 @@ func (m *GlobalSpecType) Size() (n int) { l = m.BillingDetails.Size() n += 1 + l + sovTypes(uint64(l)) } - if m.SourceChoice != nil { - n += m.SourceChoice.Size() + if m.SignupType != nil { + n += m.SignupType.Size() } if m.InternalMeta != nil { l = m.InternalMeta.Size() n += 1 + l + sovTypes(uint64(l)) } + if m.Origin != 0 { + n += 1 + sovTypes(uint64(m.Origin)) + } return n } -func (m *GlobalSpecType_SourcePublic) Size() (n int) { +func (m *GlobalSpecType_SignupTypePublic) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourcePublic != nil { - l = m.SourcePublic.Size() + if m.SignupTypePublic != nil { + l = m.SignupTypePublic.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_SourceInternalSre) Size() (n int) { +func (m *GlobalSpecType_SignupTypeInternalSre) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceInternalSre != nil { - l = m.SourceInternalSre.Size() + if m.SignupTypeInternalSre != nil { + l = m.SignupTypeInternalSre.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_SourceInternalScaling) Size() (n int) { +func (m *GlobalSpecType_SignupTypeInternalScaling) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceInternalScaling != nil { - l = m.SourceInternalScaling.Size() + if m.SignupTypeInternalScaling != nil { + l = m.SignupTypeInternalScaling.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_SourcePlanTransition) Size() (n int) { +func (m *GlobalSpecType_SignupTypePlanTransition) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourcePlanTransition != nil { - l = m.SourcePlanTransition.Size() + if m.SignupTypePlanTransition != nil { + l = m.SignupTypePlanTransition.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_SourceMsp) Size() (n int) { +func (m *GlobalSpecType_SignupTypeMsp) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceMsp != nil { - l = m.SourceMsp.Size() + if m.SignupTypeMsp != nil { + l = m.SignupTypeMsp.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_SourceInternalSso) Size() (n int) { +func (m *GlobalSpecType_SignupTypeInternalSso) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceInternalSso != nil { - l = m.SourceInternalSso.Size() + if m.SignupTypeInternalSso != nil { + l = m.SignupTypeInternalSso.Size() n += 1 + l + sovTypes(uint64(l)) } return n } -func (m *GlobalSpecType_SourceMarketplace) Size() (n int) { +func (m *GlobalSpecType_SignupTypeMarketplace) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceMarketplace != nil { - l = m.SourceMarketplace.Size() + if m.SignupTypeMarketplace != nil { + l = m.SignupTypeMarketplace.Size() n += 1 + l + sovTypes(uint64(l)) } return n @@ -992,78 +1019,79 @@ func (this *GlobalSpecType) String() string { `UserDetails:` + strings.Replace(fmt.Sprintf("%v", this.UserDetails), "UserMeta", "signup.UserMeta", 1) + `,`, `AccountDetails:` + strings.Replace(fmt.Sprintf("%v", this.AccountDetails), "AccountMeta", "signup.AccountMeta", 1) + `,`, `BillingDetails:` + strings.Replace(fmt.Sprintf("%v", this.BillingDetails), "BillingMeta", "signup.BillingMeta", 1) + `,`, - `SourceChoice:` + fmt.Sprintf("%v", this.SourceChoice) + `,`, + `SignupType:` + fmt.Sprintf("%v", this.SignupType) + `,`, `InternalMeta:` + strings.Replace(fmt.Sprintf("%v", this.InternalMeta), "InternalMeta", "signup.InternalMeta", 1) + `,`, + `Origin:` + fmt.Sprintf("%v", this.Origin) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourcePublic) String() string { +func (this *GlobalSpecType_SignupTypePublic) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourcePublic{`, - `SourcePublic:` + strings.Replace(fmt.Sprintf("%v", this.SourcePublic), "SourcePublic", "signup.SourcePublic", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypePublic{`, + `SignupTypePublic:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypePublic), "SignupTypePublic", "signup.SignupTypePublic", 1) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourceInternalSre) String() string { +func (this *GlobalSpecType_SignupTypeInternalSre) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourceInternalSre{`, - `SourceInternalSre:` + strings.Replace(fmt.Sprintf("%v", this.SourceInternalSre), "SourceInternalSre", "signup.SourceInternalSre", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypeInternalSre{`, + `SignupTypeInternalSre:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeInternalSre), "SignupTypeInternalSre", "signup.SignupTypeInternalSre", 1) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourceInternalScaling) String() string { +func (this *GlobalSpecType_SignupTypeInternalScaling) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourceInternalScaling{`, - `SourceInternalScaling:` + strings.Replace(fmt.Sprintf("%v", this.SourceInternalScaling), "SourceInternalScaling", "signup.SourceInternalScaling", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypeInternalScaling{`, + `SignupTypeInternalScaling:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeInternalScaling), "SignupTypeInternalScaling", "signup.SignupTypeInternalScaling", 1) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourcePlanTransition) String() string { +func (this *GlobalSpecType_SignupTypePlanTransition) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourcePlanTransition{`, - `SourcePlanTransition:` + strings.Replace(fmt.Sprintf("%v", this.SourcePlanTransition), "SourcePlanTransition", "signup.SourcePlanTransition", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypePlanTransition{`, + `SignupTypePlanTransition:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypePlanTransition), "SignupTypePlanTransition", "signup.SignupTypePlanTransition", 1) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourceMsp) String() string { +func (this *GlobalSpecType_SignupTypeMsp) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourceMsp{`, - `SourceMsp:` + strings.Replace(fmt.Sprintf("%v", this.SourceMsp), "SourceMsp", "signup.SourceMsp", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypeMsp{`, + `SignupTypeMsp:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeMsp), "SignupTypeMsp", "signup.SignupTypeMsp", 1) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourceInternalSso) String() string { +func (this *GlobalSpecType_SignupTypeInternalSso) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourceInternalSso{`, - `SourceInternalSso:` + strings.Replace(fmt.Sprintf("%v", this.SourceInternalSso), "SourceInternalSso", "signup.SourceInternalSso", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypeInternalSso{`, + `SignupTypeInternalSso:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeInternalSso), "SignupTypeInternalSso", "signup.SignupTypeInternalSso", 1) + `,`, `}`, }, "") return s } -func (this *GlobalSpecType_SourceMarketplace) String() string { +func (this *GlobalSpecType_SignupTypeMarketplace) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&GlobalSpecType_SourceMarketplace{`, - `SourceMarketplace:` + strings.Replace(fmt.Sprintf("%v", this.SourceMarketplace), "SourceMarketplace", "signup.SourceMarketplace", 1) + `,`, + s := strings.Join([]string{`&GlobalSpecType_SignupTypeMarketplace{`, + `SignupTypeMarketplace:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeMarketplace), "SignupTypeMarketplace", "signup.SignupTypeMarketplace", 1) + `,`, `}`, }, "") return s @@ -1251,7 +1279,7 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourcePublic", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypePublic", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1278,15 +1306,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourcePublic{} + v := &signup.SignupTypePublic{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourcePublic{v} + m.SignupType = &GlobalSpecType_SignupTypePublic{v} iNdEx = postIndex case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceInternalSre", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeInternalSre", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1313,15 +1341,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourceInternalSre{} + v := &signup.SignupTypeInternalSre{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourceInternalSre{v} + m.SignupType = &GlobalSpecType_SignupTypeInternalSre{v} iNdEx = postIndex case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceInternalScaling", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeInternalScaling", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1348,15 +1376,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourceInternalScaling{} + v := &signup.SignupTypeInternalScaling{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourceInternalScaling{v} + m.SignupType = &GlobalSpecType_SignupTypeInternalScaling{v} iNdEx = postIndex case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourcePlanTransition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypePlanTransition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1383,15 +1411,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourcePlanTransition{} + v := &signup.SignupTypePlanTransition{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourcePlanTransition{v} + m.SignupType = &GlobalSpecType_SignupTypePlanTransition{v} iNdEx = postIndex case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceMsp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeMsp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1418,15 +1446,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourceMsp{} + v := &signup.SignupTypeMsp{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourceMsp{v} + m.SignupType = &GlobalSpecType_SignupTypeMsp{v} iNdEx = postIndex case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceInternalSso", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeInternalSso", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1453,11 +1481,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourceInternalSso{} + v := &signup.SignupTypeInternalSso{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourceInternalSso{v} + m.SignupType = &GlobalSpecType_SignupTypeInternalSso{v} iNdEx = postIndex case 12: if wireType != 2 { @@ -1497,7 +1525,7 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceMarketplace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeMarketplace", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1524,12 +1552,31 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &signup.SourceMarketplace{} + v := &signup.SignupTypeMarketplace{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &GlobalSpecType_SourceMarketplace{v} + m.SignupType = &GlobalSpecType_SignupTypeMarketplace{v} iNdEx = postIndex + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Origin", wireType) + } + m.Origin = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Origin |= schema.SignupOrigin(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/instance_management/v2_signup/types.vesmsg.go b/pbgo/extschema/schema/instance_management/v2_signup/types.vesmsg.go index 2f2073d5a..0fdf655a4 100644 --- a/pbgo/extschema/schema/instance_management/v2_signup/types.vesmsg.go +++ b/pbgo/extschema/schema/instance_management/v2_signup/types.vesmsg.go @@ -14,6 +14,7 @@ import ( "gopkg.volterra.us/stdlib/db" "gopkg.volterra.us/stdlib/errors" + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_signup "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/signup" ) @@ -79,10 +80,10 @@ type ValidateGlobalSpecType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateGlobalSpecType) SourceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGlobalSpecType) SignupTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for source_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for signup_type") } return validatorFn, nil } @@ -192,6 +193,22 @@ func (v *ValidateGlobalSpecType) InternalMetaValidationRuleHandler(rules map[str return validatorFn, nil } +func (v *ValidateGlobalSpecType) OriginValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.SignupOrigin) + return int32(i) + } + // ves_io_schema.SignupOrigin_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema.SignupOrigin_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for origin") + } + + return validatorFn, nil +} + func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*GlobalSpecType) if !ok { @@ -242,89 +259,98 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["source_choice"]; exists { - val := m.GetSourceChoice() + if fv, exists := v.FldValidators["origin"]; exists { + + vOpts := append(opts, db.WithValidateField("origin")) + if err := fv(ctx, m.GetOrigin(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["signup_type"]; exists { + val := m.GetSignupType() vOpts := append(opts, - db.WithValidateField("source_choice"), + db.WithValidateField("signup_type"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetSourceChoice().(type) { - case *GlobalSpecType_SourcePublic: - if fv, exists := v.FldValidators["source_choice.source_public"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourcePublic).SourcePublic + switch m.GetSignupType().(type) { + case *GlobalSpecType_SignupTypePublic: + if fv, exists := v.FldValidators["signup_type.signup_type_public"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypePublic).SignupTypePublic vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_public"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_public"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_SourceInternalSre: - if fv, exists := v.FldValidators["source_choice.source_internal_sre"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourceInternalSre).SourceInternalSre + case *GlobalSpecType_SignupTypeInternalSre: + if fv, exists := v.FldValidators["signup_type.signup_type_internal_sre"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypeInternalSre).SignupTypeInternalSre vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_internal_sre"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_internal_sre"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_SourceInternalScaling: - if fv, exists := v.FldValidators["source_choice.source_internal_scaling"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourceInternalScaling).SourceInternalScaling + case *GlobalSpecType_SignupTypeInternalScaling: + if fv, exists := v.FldValidators["signup_type.signup_type_internal_scaling"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypeInternalScaling).SignupTypeInternalScaling vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_internal_scaling"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_internal_scaling"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_SourcePlanTransition: - if fv, exists := v.FldValidators["source_choice.source_plan_transition"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourcePlanTransition).SourcePlanTransition + case *GlobalSpecType_SignupTypePlanTransition: + if fv, exists := v.FldValidators["signup_type.signup_type_plan_transition"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypePlanTransition).SignupTypePlanTransition vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_plan_transition"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_plan_transition"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_SourceMsp: - if fv, exists := v.FldValidators["source_choice.source_msp"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourceMsp).SourceMsp + case *GlobalSpecType_SignupTypeMsp: + if fv, exists := v.FldValidators["signup_type.signup_type_msp"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypeMsp).SignupTypeMsp vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_msp"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_msp"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_SourceInternalSso: - if fv, exists := v.FldValidators["source_choice.source_internal_sso"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourceInternalSso).SourceInternalSso + case *GlobalSpecType_SignupTypeInternalSso: + if fv, exists := v.FldValidators["signup_type.signup_type_internal_sso"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypeInternalSso).SignupTypeInternalSso vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_internal_sso"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_internal_sso"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_SourceMarketplace: - if fv, exists := v.FldValidators["source_choice.source_marketplace"]; exists { - val := m.GetSourceChoice().(*GlobalSpecType_SourceMarketplace).SourceMarketplace + case *GlobalSpecType_SignupTypeMarketplace: + if fv, exists := v.FldValidators["signup_type.signup_type_marketplace"]; exists { + val := m.GetSignupType().(*GlobalSpecType_SignupTypeMarketplace).SignupTypeMarketplace vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_marketplace"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_marketplace"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -357,16 +383,16 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhSourceChoice := v.SourceChoiceValidationRuleHandler - rulesSourceChoice := map[string]string{ + vrhSignupType := v.SignupTypeValidationRuleHandler + rulesSignupType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhSourceChoice(rulesSourceChoice) + vFn, err = vrhSignupType(rulesSignupType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.source_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.signup_type: %s", err) panic(errMsg) } - v.FldValidators["source_choice"] = vFn + v.FldValidators["signup_type"] = vFn vrhCompanyDetails := v.CompanyDetailsValidationRuleHandler rulesCompanyDetails := map[string]string{ @@ -423,9 +449,20 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { } v.FldValidators["internal_meta"] = vFn - v.FldValidators["source_choice.source_internal_sre"] = ves_io_schema_signup.SourceInternalSreValidator().Validate - v.FldValidators["source_choice.source_msp"] = ves_io_schema_signup.SourceMspValidator().Validate - v.FldValidators["source_choice.source_marketplace"] = ves_io_schema_signup.SourceMarketplaceValidator().Validate + vrhOrigin := v.OriginValidationRuleHandler + rulesOrigin := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOrigin(rulesOrigin) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.origin: %s", err) + panic(errMsg) + } + v.FldValidators["origin"] = vFn + + v.FldValidators["signup_type.signup_type_internal_sre"] = ves_io_schema_signup.SignupTypeInternalSreValidator().Validate + v.FldValidators["signup_type.signup_type_msp"] = ves_io_schema_signup.SignupTypeMspValidator().Validate + v.FldValidators["signup_type.signup_type_marketplace"] = ves_io_schema_signup.SignupTypeMarketplaceValidator().Validate return v }() diff --git a/pbgo/extschema/schema/ip_prefix_set/crudapi/api.vesapi.go b/pbgo/extschema/schema/ip_prefix_set/crudapi/api.vesapi.go index f28ab55da..a8aa02c68 100644 --- a/pbgo/extschema/schema/ip_prefix_set/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/ip_prefix_set/crudapi/api.vesapi.go @@ -2862,12 +2862,12 @@ var APISwaggerJSON string = `{ "prefix": { "type": "array", "description": " An unordered list of IPv4 prefixes.\n\nExample: - \"['10.2.1.0/24', '192.168.8.0/29', '10.7.64.160/27']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 1024\n ves.io.schema.rules.repeated.unique: true\n", - "title": "prefix", + "title": "ipv4 prefix", "maxItems": 1024, "items": { "type": "string" }, - "x-displayname": "Prefix", + "x-displayname": "IPV4 Prefix", "x-ves-example": "['10.2.1.0/24', '192.168.8.0/29', '10.7.64.160/27']", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", @@ -3104,10 +3104,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/ip_prefix_set/object.pb.go b/pbgo/extschema/schema/ip_prefix_set/object.pb.go index d45af0925..c26e8dbf7 100644 --- a/pbgo/extschema/schema/ip_prefix_set/object.pb.go +++ b/pbgo/extschema/schema/ip_prefix_set/object.pb.go @@ -234,46 +234,47 @@ func init() { } var fileDescriptor_29f7e22133e44145 = []byte{ - // 623 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x6b, 0x14, 0x3f, - 0x14, 0xc0, 0x37, 0xbb, 0xfd, 0x6f, 0x4b, 0xda, 0x7f, 0x2d, 0xe3, 0xc1, 0xb5, 0xad, 0x61, 0x59, - 0x11, 0x0b, 0x3a, 0x33, 0x50, 0x11, 0x69, 0x11, 0xd1, 0x56, 0xe8, 0xa5, 0xa5, 0xba, 0xf5, 0x24, - 0xc2, 0x92, 0xc9, 0xbe, 0x99, 0x46, 0x77, 0x36, 0x21, 0xc9, 0xac, 0xed, 0x41, 0xf0, 0xec, 0x45, - 0x3f, 0x86, 0xfa, 0x11, 0x3c, 0xb5, 0x9e, 0xbc, 0x59, 0x7a, 0x2a, 0x9e, 0xec, 0xec, 0x45, 0x0f, - 0x42, 0x3f, 0x82, 0x98, 0xd9, 0x29, 0x9d, 0xb2, 0x16, 0xa1, 0xb7, 0x64, 0xde, 0xef, 0xfd, 0xe6, - 0xf1, 0x5e, 0x12, 0x3c, 0xd7, 0x03, 0xed, 0x71, 0xe1, 0x6b, 0xb6, 0x09, 0x31, 0xf5, 0xb9, 0x6c, - 0x49, 0x05, 0x21, 0xdf, 0x6a, 0x69, 0x30, 0xbe, 0x08, 0x9e, 0x03, 0x33, 0x9e, 0x54, 0xc2, 0x08, - 0x67, 0x26, 0x23, 0xbd, 0x8c, 0xf4, 0x0a, 0xe4, 0xb4, 0x1b, 0x71, 0xb3, 0x99, 0x04, 0x1e, 0x13, - 0xb1, 0x1f, 0x89, 0x48, 0xf8, 0x36, 0x27, 0x48, 0x42, 0xbb, 0xb3, 0x1b, 0xbb, 0xca, 0x5c, 0xd3, - 0xd7, 0xcf, 0xfa, 0xab, 0xd9, 0x96, 0xa0, 0x07, 0xe0, 0xa5, 0x22, 0xd8, 0x85, 0x41, 0x35, 0xd3, - 0x33, 0xc5, 0x80, 0x90, 0x86, 0x8b, 0x6e, 0x9e, 0x75, 0xb9, 0x18, 0x3c, 0x29, 0x9c, 0x2d, 0x86, - 0x7a, 0xb4, 0xc3, 0xdb, 0xd4, 0xc0, 0x20, 0xda, 0x38, 0x15, 0x05, 0x0d, 0xdd, 0x5e, 0x51, 0xde, - 0xf8, 0x30, 0x82, 0xab, 0xeb, 0xb6, 0x31, 0xce, 0x02, 0x1e, 0x8b, 0xc1, 0xd0, 0x36, 0x35, 0xb4, - 0x86, 0xea, 0x68, 0x6e, 0x7c, 0xfe, 0x8a, 0x57, 0xec, 0x52, 0x06, 0xae, 0x81, 0xa1, 0x4f, 0xb6, - 0x25, 0x34, 0x8f, 0x71, 0x67, 0x15, 0x5f, 0xd0, 0xdb, 0xda, 0x40, 0xdc, 0x3a, 0x36, 0x94, 0xad, - 0xe1, 0xea, 0x29, 0xc3, 0x86, 0xa5, 0x4e, 0x79, 0x26, 0xb3, 0xdc, 0xb5, 0xdc, 0xb6, 0x80, 0x47, - 0xb4, 0x04, 0x56, 0xab, 0x58, 0xc5, 0x35, 0xef, 0x8c, 0x51, 0x79, 0x1b, 0x12, 0x98, 0x95, 0xd8, - 0x94, 0xc5, 0x6f, 0xe5, 0xcf, 0xbb, 0xb5, 0xf2, 0x14, 0xda, 0xdf, 0xad, 0x7d, 0x2d, 0xe3, 0xfb, - 0xb8, 0xb2, 0x02, 0xc6, 0x59, 0x08, 0x6f, 0x6f, 0x31, 0x57, 0x03, 0x4b, 0x14, 0xc4, 0xa0, 0x37, - 0xdd, 0x80, 0x6a, 0xce, 0xdc, 0x58, 0x74, 0xb9, 0x11, 0xea, 0x66, 0xbd, 0x07, 0xda, 0xe5, 0xc2, - 0xe5, 0xdd, 0x50, 0x51, 0x6d, 0x54, 0xc2, 0x4c, 0xa2, 0xc0, 0x55, 0x40, 0xdb, 0x78, 0x09, 0x8f, - 0x36, 0x41, 0x76, 0x28, 0x03, 0xe7, 0xce, 0x70, 0x4b, 0xa2, 0xe1, 0xaf, 0x8a, 0x97, 0x8a, 0x1b, - 0xc0, 0x0f, 0x70, 0x75, 0x59, 0x01, 0x35, 0xe7, 0x53, 0x3c, 0x84, 0x0e, 0x9c, 0x4f, 0x31, 0xb2, - 0xca, 0xf5, 0x79, 0x9a, 0xd1, 0x78, 0x86, 0xc7, 0xf2, 0x76, 0x3b, 0x8f, 0xf0, 0x68, 0xc4, 0x5a, - 0x76, 0x4c, 0xd9, 0xa4, 0x6f, 0x9c, 0x39, 0xa6, 0x95, 0x8e, 0x08, 0x68, 0x27, 0xcf, 0x5e, 0xc2, - 0x9f, 0x7e, 0xee, 0x54, 0xfe, 0x7b, 0x83, 0xca, 0x75, 0xd4, 0xac, 0x46, 0xec, 0xcf, 0xf7, 0xc6, - 0x2f, 0x84, 0x27, 0x36, 0x0c, 0x35, 0x89, 0xfe, 0xe7, 0xf3, 0x98, 0xe1, 0x43, 0xce, 0xe3, 0x3a, - 0x1e, 0xcf, 0x6e, 0x7b, 0x4b, 0x41, 0xa8, 0x6b, 0xe5, 0x7a, 0x65, 0x6e, 0x7c, 0x7e, 0x76, 0xe8, - 0x69, 0x6e, 0x42, 0x68, 0x4b, 0x9a, 0xfa, 0xf8, 0xea, 0xff, 0x42, 0xcd, 0x4d, 0x2c, 0x72, 0x40, - 0x3b, 0x77, 0x31, 0x66, 0xa2, 0xdb, 0xe6, 0xf6, 0xea, 0xd4, 0x2a, 0x43, 0x7d, 0xcb, 0x39, 0x60, - 0x8b, 0x39, 0xc1, 0x2f, 0x5e, 0xdc, 0xbf, 0x37, 0x85, 0x27, 0xf1, 0x44, 0x5e, 0x9f, 0x97, 0xf0, - 0xf6, 0xd2, 0x5b, 0xb4, 0x77, 0x48, 0x4a, 0x07, 0x87, 0xa4, 0x74, 0x74, 0x48, 0xd0, 0xeb, 0x94, - 0xa0, 0xf7, 0x29, 0x41, 0x5f, 0x52, 0x82, 0xf6, 0x52, 0x82, 0x0e, 0x52, 0x82, 0xbe, 0xa7, 0x04, - 0xfd, 0x48, 0x49, 0xe9, 0x28, 0x25, 0xe8, 0x5d, 0x9f, 0x94, 0x76, 0xfa, 0x04, 0xed, 0xf5, 0x49, - 0xe9, 0xa0, 0x4f, 0x4a, 0x4f, 0x1f, 0x47, 0x42, 0xbe, 0x88, 0xbc, 0x9e, 0xe8, 0x18, 0x50, 0x8a, - 0x7a, 0x89, 0xf6, 0xed, 0x22, 0x14, 0x2a, 0x76, 0xa5, 0x12, 0x3d, 0xde, 0x06, 0xe5, 0xe6, 0x61, - 0x5f, 0x06, 0x91, 0xf0, 0x61, 0xcb, 0x0c, 0xde, 0x82, 0x61, 0x4f, 0x55, 0x50, 0xb5, 0x4f, 0xc2, - 0xad, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x88, 0x3f, 0x0e, 0x44, 0x46, 0x05, 0x00, 0x00, + // 640 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xb1, 0x4f, 0x14, 0x4f, + 0x14, 0xc7, 0x6f, 0xee, 0xe0, 0x20, 0x03, 0x3f, 0x7e, 0xe4, 0x2c, 0x3c, 0x01, 0x27, 0x97, 0x33, + 0x46, 0x12, 0xdd, 0xdd, 0x04, 0x63, 0x01, 0x31, 0x16, 0x60, 0x42, 0x03, 0x41, 0x0f, 0x63, 0xa1, + 0x26, 0xe7, 0xec, 0xec, 0xdb, 0x65, 0xf4, 0x76, 0x67, 0x33, 0x33, 0x7b, 0x42, 0x61, 0x62, 0x6d, + 0xa3, 0x7f, 0x86, 0xf1, 0x4f, 0xb0, 0x02, 0x2b, 0x63, 0x45, 0xa8, 0x28, 0x65, 0xaf, 0xd1, 0xc2, + 0x84, 0xde, 0xc6, 0x38, 0x7b, 0x8b, 0xec, 0xe5, 0x72, 0xb1, 0xa1, 0xdb, 0xd9, 0xef, 0xe7, 0x7d, + 0xdf, 0xcb, 0xcc, 0x7b, 0x0f, 0x2f, 0x76, 0x41, 0xd9, 0x5c, 0x38, 0x8a, 0xed, 0x40, 0x48, 0x1d, + 0x1e, 0xb7, 0x63, 0x09, 0x3e, 0xdf, 0x6d, 0x2b, 0xd0, 0x8e, 0x70, 0x5f, 0x00, 0xd3, 0x76, 0x2c, + 0x85, 0x16, 0xb5, 0xf9, 0x8c, 0xb4, 0x33, 0xd2, 0x2e, 0x90, 0x73, 0x56, 0xc0, 0xf5, 0x4e, 0xe2, + 0xda, 0x4c, 0x84, 0x4e, 0x20, 0x02, 0xe1, 0x98, 0x18, 0x37, 0xf1, 0xcd, 0xc9, 0x1c, 0xcc, 0x57, + 0xe6, 0x35, 0x77, 0x63, 0x54, 0x56, 0xbd, 0x17, 0x83, 0xea, 0x83, 0x97, 0x8b, 0x60, 0x04, 0xfd, + 0x6a, 0xe6, 0xe6, 0x8b, 0x82, 0x88, 0x35, 0x17, 0x51, 0x1e, 0x75, 0xa5, 0x28, 0x9e, 0x37, 0x5c, + 0x28, 0x4a, 0x5d, 0xda, 0xe1, 0x1e, 0xd5, 0xd0, 0x57, 0x9b, 0x03, 0x2a, 0x28, 0x88, 0xba, 0x45, + 0xf3, 0xe6, 0xd7, 0x71, 0x5c, 0xdd, 0x32, 0x17, 0x53, 0x5b, 0xc6, 0x93, 0x21, 0x68, 0xea, 0x51, + 0x4d, 0xeb, 0xa8, 0x81, 0x16, 0xa7, 0x96, 0xae, 0xda, 0xc5, 0x5b, 0xca, 0xc0, 0x4d, 0xd0, 0xf4, + 0xd1, 0x5e, 0x0c, 0xad, 0x33, 0xbc, 0xb6, 0x81, 0xff, 0x57, 0x7b, 0x4a, 0x43, 0xd8, 0x3e, 0x73, + 0x28, 0x1b, 0x87, 0x6b, 0x03, 0x0e, 0xdb, 0x86, 0x1a, 0xf0, 0x99, 0xc9, 0x62, 0x37, 0x73, 0xb7, + 0x65, 0x3c, 0xa6, 0x62, 0x60, 0xf5, 0x8a, 0xb1, 0xb8, 0x6e, 0x8f, 0x78, 0x2a, 0x7b, 0x3b, 0x06, + 0x66, 0x4c, 0x4c, 0xc8, 0xca, 0xaf, 0xca, 0xe7, 0x83, 0x7a, 0x79, 0x16, 0x1d, 0x1d, 0xd4, 0x4f, + 0x2b, 0xd8, 0xc5, 0x95, 0x75, 0xd0, 0xb5, 0xa7, 0xfe, 0x9d, 0x5d, 0x66, 0x29, 0x60, 0x89, 0x84, + 0x10, 0xd4, 0x8e, 0xe5, 0x52, 0xc5, 0x99, 0x15, 0x8a, 0x88, 0x6b, 0x21, 0x6f, 0x35, 0x06, 0x65, + 0xa5, 0x69, 0xe4, 0x51, 0xe9, 0xfd, 0x25, 0xba, 0xa0, 0x2c, 0x2e, 0x2c, 0x1e, 0xf9, 0x92, 0x2a, + 0x2d, 0x13, 0xa6, 0x13, 0x09, 0x96, 0x04, 0xea, 0x61, 0x8a, 0x27, 0x5a, 0x10, 0x77, 0x28, 0x83, + 0xda, 0xe3, 0xe1, 0x79, 0x12, 0x05, 0xa3, 0x92, 0x64, 0xf2, 0xf0, 0x0c, 0xaf, 0x24, 0xd7, 0x80, + 0x9f, 0xe3, 0xea, 0x9a, 0x04, 0xaa, 0x2f, 0x34, 0xc3, 0x7d, 0xe8, 0xc0, 0x05, 0x66, 0x60, 0x78, + 0x6c, 0x83, 0xab, 0x8b, 0x7d, 0x8b, 0xe6, 0x33, 0x3c, 0x99, 0xf7, 0x43, 0xed, 0x01, 0x9e, 0x08, + 0x58, 0xdb, 0xf4, 0x51, 0xd6, 0x8a, 0x37, 0x47, 0xf6, 0xd1, 0x7a, 0x47, 0xb8, 0xb4, 0x93, 0x47, + 0xaf, 0xe2, 0x4f, 0x3f, 0xf6, 0x2b, 0xe3, 0x6f, 0x51, 0xb9, 0x81, 0x5a, 0xd5, 0x80, 0xfd, 0xf9, + 0xdf, 0xfc, 0x89, 0xf0, 0xf4, 0xb6, 0xa6, 0x3a, 0x51, 0xff, 0x3c, 0x30, 0x19, 0x3e, 0x64, 0x60, + 0xb6, 0xf0, 0x54, 0xb6, 0x8e, 0xda, 0x12, 0x7c, 0x55, 0x2f, 0x37, 0x2a, 0x8b, 0x53, 0x4b, 0x0b, + 0x43, 0xc7, 0xad, 0x05, 0xbe, 0x29, 0x69, 0xf6, 0xe3, 0xeb, 0xff, 0x0a, 0x35, 0xb7, 0xb0, 0xc8, + 0x01, 0x55, 0xbb, 0x8b, 0x31, 0x13, 0x91, 0xc7, 0xcd, 0x6c, 0xd7, 0x2b, 0x43, 0xfd, 0xd6, 0x72, + 0xc0, 0x14, 0x73, 0x8e, 0x5f, 0xb9, 0x74, 0x74, 0x6f, 0x16, 0xcf, 0xe0, 0xe9, 0xbc, 0x3e, 0x3b, + 0xe1, 0xde, 0xea, 0x3b, 0x74, 0x78, 0x42, 0x4a, 0xc7, 0x27, 0xa4, 0x74, 0x7a, 0x42, 0xd0, 0x9b, + 0x94, 0xa0, 0x0f, 0x29, 0x41, 0x5f, 0x52, 0x82, 0x0e, 0x53, 0x82, 0x8e, 0x53, 0x82, 0xbe, 0xa5, + 0x04, 0x7d, 0x4f, 0x49, 0xe9, 0x34, 0x25, 0xe8, 0x7d, 0x8f, 0x94, 0xf6, 0x7b, 0x04, 0x1d, 0xf6, + 0x48, 0xe9, 0xb8, 0x47, 0x4a, 0x4f, 0x1e, 0x06, 0x22, 0x7e, 0x19, 0xd8, 0x5d, 0xd1, 0xd1, 0x20, + 0x25, 0xb5, 0x13, 0xe5, 0x98, 0x0f, 0x5f, 0xc8, 0xd0, 0x8a, 0xa5, 0xe8, 0x72, 0x0f, 0xa4, 0x95, + 0xcb, 0x4e, 0xec, 0x06, 0xc2, 0x81, 0x5d, 0xdd, 0x5f, 0x56, 0xc3, 0x76, 0xa9, 0x5b, 0x35, 0x3b, + 0xeb, 0xf6, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd9, 0x03, 0x7f, 0x7e, 0xe7, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/ip_prefix_set/pkg.vespkg.go b/pbgo/extschema/schema/ip_prefix_set/pkg.vespkg.go index 29fb51903..67dffb9b5 100644 --- a/pbgo/extschema/schema/ip_prefix_set/pkg.vespkg.go +++ b/pbgo/extschema/schema/ip_prefix_set/pkg.vespkg.go @@ -52,43 +52,43 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.ip_prefix_set.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.ip_prefix_set.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.ip_prefix_set.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.ip_prefix_set.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.ip_prefix_set.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/ip_prefix_set/public_crudapi.pb.go b/pbgo/extschema/schema/ip_prefix_set/public_crudapi.pb.go index 7c52bc7c0..ced81bdf6 100644 --- a/pbgo/extschema/schema/ip_prefix_set/public_crudapi.pb.go +++ b/pbgo/extschema/schema/ip_prefix_set/public_crudapi.pb.go @@ -1056,110 +1056,111 @@ func init() { } var fileDescriptor_6ed0aea41351a0d6 = []byte{ - // 1637 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x8c, 0x1a, 0xc9, - 0x15, 0x9e, 0x02, 0x06, 0x43, 0x31, 0x1e, 0xf7, 0x56, 0x76, 0x6d, 0x8c, 0x1d, 0x44, 0xd8, 0x55, - 0x96, 0x9d, 0x35, 0x8d, 0x35, 0x49, 0xac, 0xb5, 0x13, 0x39, 0x61, 0x30, 0x4c, 0xc6, 0x9e, 0xf1, - 0xd8, 0x0d, 0xb6, 0xa2, 0xe4, 0xd0, 0xdb, 0x34, 0x0f, 0xdc, 0x31, 0xd0, 0x9d, 0xaa, 0x02, 0x1b, - 0x6d, 0x46, 0x8a, 0x56, 0xca, 0x29, 0x97, 0x44, 0x7b, 0x4b, 0x72, 0xc8, 0x25, 0x52, 0x2e, 0x39, - 0x46, 0x8a, 0x34, 0x17, 0xdf, 0xbc, 0xda, 0x43, 0x64, 0x6d, 0xa4, 0xc8, 0xa7, 0x28, 0xc3, 0xe4, - 0xb0, 0xc7, 0xd5, 0xde, 0x72, 0x8b, 0xba, 0xaa, 0x9b, 0xa5, 0x19, 0xcc, 0xc0, 0x78, 0x4e, 0x54, - 0xd5, 0x7b, 0xef, 0xeb, 0xf7, 0xd5, 0xfb, 0xe9, 0x47, 0xe3, 0xab, 0x7d, 0x60, 0xaa, 0x65, 0x17, - 0x98, 0xf9, 0x08, 0x3a, 0x46, 0xc1, 0x72, 0x74, 0x87, 0x42, 0xd3, 0x7a, 0xaa, 0x33, 0xe0, 0x05, - 0xa7, 0x57, 0x6f, 0x5b, 0xa6, 0x6e, 0xd2, 0x5e, 0xc3, 0x70, 0x2c, 0xd5, 0xa1, 0x36, 0xb7, 0xc9, - 0x25, 0x69, 0xa1, 0x4a, 0x0b, 0x35, 0x60, 0x91, 0xca, 0xb7, 0x2c, 0xfe, 0xa8, 0x57, 0x57, 0x4d, - 0xbb, 0x53, 0x68, 0xd9, 0x2d, 0xbb, 0x20, 0x6c, 0xea, 0xbd, 0xa6, 0xd8, 0x89, 0x8d, 0x58, 0x49, - 0xac, 0xd4, 0xe5, 0x96, 0x6d, 0xb7, 0xda, 0x50, 0x30, 0x1c, 0xab, 0x60, 0x74, 0xbb, 0x36, 0x37, - 0xb8, 0x65, 0x77, 0x99, 0x27, 0xbd, 0xe4, 0x49, 0x47, 0x18, 0xd0, 0x71, 0xf8, 0xc0, 0x13, 0xa6, - 0x82, 0x8e, 0x03, 0xa5, 0x36, 0xf5, 0x0d, 0x73, 0xb3, 0x48, 0xd9, 0xf5, 0x9f, 0x83, 0xc9, 0x3d, - 0xcd, 0x77, 0x67, 0x69, 0xf2, 0x81, 0x03, 0x3e, 0xe4, 0x85, 0xa0, 0x62, 0x17, 0x7c, 0x84, 0x4b, - 0x41, 0x81, 0xed, 0x8c, 0x33, 0xb8, 0x18, 0x14, 0x8e, 0x03, 0x5e, 0x0e, 0x8a, 0xfa, 0x46, 0xdb, - 0x6a, 0x18, 0x1c, 0x3c, 0x69, 0x76, 0x42, 0x0a, 0x0c, 0xba, 0xfd, 0x09, 0xf0, 0xcc, 0x84, 0x8e, - 0x05, 0x4f, 0xf4, 0x80, 0x46, 0xf6, 0xaf, 0x08, 0x9f, 0x2d, 0x51, 0x30, 0x38, 0x68, 0xf0, 0x8b, - 0x1e, 0x30, 0x4e, 0x7e, 0x88, 0x63, 0x1d, 0xe0, 0x46, 0xc3, 0xe0, 0x46, 0x12, 0x65, 0x50, 0x2e, - 0xb1, 0xfe, 0xb6, 0x1a, 0x8c, 0xe7, 0xae, 0xb8, 0x1e, 0x69, 0xb5, 0x03, 0xdc, 0xa8, 0x0d, 0x1c, - 0xd0, 0x46, 0x46, 0xe4, 0x1e, 0x8e, 0x30, 0x07, 0xcc, 0x64, 0x48, 0x18, 0xbf, 0xaf, 0xce, 0x48, - 0x06, 0x55, 0x82, 0x54, 0x1d, 0x30, 0x5d, 0x90, 0x8d, 0x73, 0xbf, 0xdf, 0x5b, 0x71, 0x6d, 0xd5, - 0x96, 0xa9, 0xbb, 0xbf, 0x9a, 0x40, 0xba, 0x11, 0xff, 0xec, 0x66, 0x54, 0x3e, 0x34, 0xfb, 0x3f, - 0x84, 0x57, 0x7d, 0x7f, 0x99, 0x63, 0x77, 0x19, 0x90, 0x1f, 0x1c, 0x71, 0x38, 0x33, 0xd5, 0xe1, - 0x4d, 0xe0, 0x53, 0xbc, 0xdd, 0xc5, 0xe7, 0xd8, 0x80, 0x71, 0xe8, 0xe8, 0x23, 0x90, 0xb0, 0x00, - 0xf9, 0xf6, 0x04, 0x48, 0x55, 0x68, 0x1d, 0x85, 0x5a, 0x95, 0xe6, 0x3b, 0x3e, 0xe0, 0x4e, 0x80, - 0x7e, 0x6e, 0x26, 0xfd, 0x4d, 0xe0, 0x0b, 0x70, 0x3f, 0x40, 0x78, 0x55, 0x03, 0xa7, 0x6d, 0x98, - 0xa3, 0x60, 0xfd, 0xe8, 0x08, 0xf7, 0x77, 0xa6, 0x72, 0xf7, 0xcc, 0xa6, 0xf0, 0xbf, 0x1f, 0x70, - 0xf7, 0xca, 0x4c, 0x77, 0x3d, 0x94, 0x63, 0x5c, 0x26, 0x05, 0xac, 0x50, 0x60, 0x76, 0x8f, 0x9a, - 0xa0, 0xf7, 0x81, 0x32, 0xcb, 0xee, 0x8a, 0x3b, 0x8d, 0x6f, 0x44, 0xbe, 0xd8, 0x47, 0x48, 0x3b, - 0xe7, 0x4b, 0x1f, 0x4a, 0xe1, 0x38, 0xc7, 0x37, 0xf0, 0xb9, 0x11, 0x45, 0x19, 0xdf, 0xec, 0x1f, - 0x10, 0xc6, 0x9b, 0xc0, 0x7d, 0xca, 0x97, 0x71, 0xbc, 0x6b, 0x74, 0x80, 0x39, 0x86, 0x09, 0x82, - 0x73, 0x5c, 0xfb, 0xfa, 0x80, 0x10, 0x1c, 0x71, 0x37, 0x82, 0x4e, 0x5c, 0x13, 0x6b, 0xf2, 0x33, - 0xec, 0x3e, 0x51, 0x80, 0xe9, 0x4d, 0x9b, 0x76, 0x0c, 0x2e, 0xdc, 0x59, 0x5d, 0x5f, 0x3f, 0x2e, - 0x38, 0xbe, 0x0f, 0x15, 0x61, 0x55, 0xb2, 0x1b, 0xa0, 0xad, 0xd2, 0xc0, 0x59, 0xf6, 0x77, 0x51, - 0x9c, 0x18, 0xd3, 0x24, 0x77, 0x70, 0xc2, 0x14, 0xf9, 0x29, 0x1e, 0xe5, 0x5d, 0xeb, 0xda, 0x1c, - 0x45, 0xe0, 0xf1, 0xd3, 0xb0, 0x34, 0x77, 0xe1, 0xc9, 0x5d, 0xbc, 0x42, 0xe5, 0x6d, 0x48, 0xb4, - 0xf0, 0x1c, 0x25, 0x15, 0xcc, 0x10, 0x2d, 0xe1, 0x01, 0x08, 0xbc, 0x69, 0x91, 0x89, 0xcc, 0x88, - 0x4c, 0xa0, 0xb6, 0x96, 0x4f, 0xa3, 0xb6, 0xce, 0x9c, 0x4a, 0x6d, 0x45, 0x4f, 0xa5, 0xb6, 0xc8, - 0x8f, 0x71, 0x94, 0x71, 0x83, 0xf7, 0x58, 0xf2, 0x4f, 0x7f, 0x44, 0x99, 0x70, 0x2e, 0xb1, 0xfe, - 0xde, 0x4c, 0xc8, 0xaa, 0x50, 0x96, 0x6e, 0x6e, 0x84, 0x9f, 0xed, 0x21, 0xcd, 0xb3, 0x27, 0x5b, - 0xf8, 0x0d, 0x0a, 0x4d, 0xa0, 0xd4, 0xea, 0xb6, 0x74, 0xf9, 0xfa, 0x60, 0xc9, 0x98, 0x80, 0xbc, - 0xfc, 0x8a, 0x82, 0x6c, 0x0a, 0x86, 0xca, 0xc8, 0x4c, 0x9e, 0x33, 0xf2, 0x10, 0x27, 0x1b, 0xd0, - 0x06, 0x0e, 0x0d, 0x5d, 0xca, 0xa0, 0x31, 0x42, 0x8c, 0xcf, 0x81, 0x78, 0xde, 0xb3, 0xd6, 0x3c, - 0x63, 0x1f, 0xf7, 0x27, 0xf8, 0x62, 0xc3, 0x62, 0x46, 0xbd, 0x3d, 0x0d, 0x18, 0xcf, 0x01, 0x7c, - 0xc1, 0x37, 0x9f, 0x40, 0x1e, 0x2b, 0xdf, 0xdb, 0x91, 0x18, 0x52, 0x42, 0xd9, 0x3f, 0x23, 0x9c, - 0xd8, 0xb6, 0xd8, 0x9c, 0x25, 0xfb, 0x2d, 0xbc, 0xd2, 0x36, 0xea, 0xd0, 0xd6, 0x9b, 0x56, 0x9b, - 0x03, 0xf5, 0x4a, 0x37, 0x21, 0xce, 0x2a, 0xe2, 0x88, 0xbc, 0x8d, 0xcf, 0x52, 0x70, 0x6c, 0xca, - 0xf5, 0xa6, 0x05, 0xed, 0x06, 0x4b, 0x86, 0x33, 0xe1, 0x5c, 0x5c, 0x5b, 0x91, 0x87, 0x15, 0x71, - 0x46, 0xae, 0xe2, 0x37, 0x3d, 0x25, 0x19, 0x14, 0x5f, 0x37, 0x22, 0x74, 0x89, 0x94, 0xc9, 0x10, - 0x4a, 0x8b, 0xec, 0xb3, 0x28, 0x56, 0xa4, 0x9f, 0xb2, 0x78, 0xb7, 0x38, 0x74, 0xc8, 0x79, 0x1c, - 0xe5, 0xd0, 0x35, 0xba, 0x5c, 0x64, 0x59, 0x5c, 0xf3, 0x76, 0x27, 0xe8, 0x3b, 0x0a, 0x0e, 0xf7, - 0xac, 0x86, 0x6c, 0x7d, 0x9a, 0xbb, 0x24, 0x19, 0x9c, 0x68, 0x00, 0x33, 0xa9, 0x25, 0xde, 0xc1, - 0xc9, 0x84, 0x64, 0x3a, 0x76, 0x44, 0x52, 0x38, 0xe6, 0x5f, 0x73, 0x72, 0x25, 0x83, 0x72, 0x31, - 0x6d, 0xb4, 0x27, 0xf7, 0x71, 0x54, 0x5c, 0x8a, 0xa4, 0x94, 0x58, 0xbf, 0x3e, 0x33, 0x59, 0x27, - 0x89, 0xa9, 0xdb, 0xc2, 0xb6, 0xdc, 0xe5, 0x74, 0xa0, 0x79, 0x40, 0xe4, 0x43, 0x9c, 0x18, 0x1b, - 0xaa, 0xbc, 0x34, 0xb8, 0xb9, 0x18, 0x6e, 0xf1, 0x6b, 0x00, 0x09, 0x3e, 0x0e, 0x49, 0xae, 0x63, - 0x6c, 0x3f, 0xe9, 0x02, 0xd5, 0xdd, 0xe1, 0x23, 0x19, 0x17, 0x85, 0x9b, 0x9a, 0x78, 0xc0, 0x43, - 0x0b, 0x9e, 0xf8, 0x59, 0x16, 0x17, 0xda, 0xee, 0x49, 0xa0, 0xf9, 0x9c, 0x3d, 0x8d, 0xe6, 0xb3, - 0xfa, 0x5a, 0xcd, 0xa7, 0x84, 0x63, 0x2d, 0xe0, 0xa2, 0x7f, 0x78, 0x6d, 0x6c, 0xee, 0x06, 0xa4, - 0x9d, 0x69, 0xc9, 0x0d, 0xd9, 0xc1, 0xd8, 0xcb, 0x4e, 0x06, 0xdc, 0xeb, 0x10, 0x8b, 0x36, 0x9d, - 0xb8, 0x44, 0xa8, 0x02, 0x4f, 0x5d, 0xc7, 0x89, 0xb1, 0xb0, 0xba, 0x19, 0xf7, 0x18, 0x06, 0x5e, - 0x76, 0xba, 0x4b, 0xf2, 0x26, 0x5e, 0xee, 0x1b, 0xed, 0x9e, 0x9f, 0x98, 0x72, 0x73, 0x23, 0xf4, - 0x01, 0x4a, 0xdd, 0xc4, 0xca, 0x64, 0xe4, 0x16, 0xb1, 0xbf, 0x1d, 0x89, 0x2d, 0x2b, 0xd1, 0xec, - 0xaf, 0x11, 0x5e, 0x19, 0xcf, 0x08, 0x52, 0xc2, 0xcb, 0x16, 0x87, 0x0e, 0x4b, 0xca, 0x86, 0x9a, - 0x5f, 0x28, 0x97, 0x34, 0x69, 0x4b, 0xae, 0xe2, 0xa8, 0x9c, 0xd6, 0x93, 0x21, 0x81, 0x92, 0x9c, - 0x40, 0x29, 0xbb, 0x42, 0x71, 0xb1, 0x9e, 0x5e, 0xf6, 0x31, 0x3e, 0x7b, 0x4b, 0xf4, 0xbd, 0x93, - 0x8f, 0x09, 0x39, 0xac, 0x34, 0x0d, 0xab, 0xad, 0x5b, 0xcd, 0x51, 0x7f, 0x14, 0xb5, 0x1b, 0xd3, - 0x56, 0xdd, 0xf3, 0xad, 0xa6, 0xdf, 0xf7, 0xd6, 0xbe, 0x42, 0xf8, 0xad, 0xa9, 0xd3, 0x01, 0x49, - 0xe1, 0xf3, 0x9b, 0xe5, 0x9a, 0xae, 0x55, 0xef, 0xe9, 0x95, 0x5d, 0x6d, 0xa7, 0x58, 0xd3, 0x6f, - 0x95, 0x2b, 0xc5, 0x07, 0xdb, 0x35, 0x65, 0x89, 0x7c, 0x13, 0x5f, 0x9c, 0x90, 0x55, 0x76, 0x35, - 0xbd, 0xa4, 0x95, 0x8b, 0xb5, 0xb2, 0x82, 0x48, 0x1a, 0xa7, 0xa6, 0x88, 0xb5, 0xf2, 0xbd, 0xed, - 0x62, 0xa9, 0xac, 0x84, 0xc8, 0x45, 0xfc, 0xd6, 0x84, 0xbc, 0x5a, 0x2b, 0xd6, 0x1e, 0x54, 0x95, - 0x30, 0xb9, 0x80, 0xbf, 0x31, 0x21, 0xd2, 0xca, 0xc5, 0x5b, 0x4a, 0x84, 0xbc, 0x83, 0x33, 0x47, - 0x04, 0x95, 0xb2, 0xa6, 0x6d, 0xdd, 0xdd, 0xd4, 0x77, 0x37, 0x6e, 0x97, 0x4b, 0xb5, 0xaa, 0xb2, - 0x3c, 0x45, 0x6b, 0x43, 0xdb, 0xbd, 0x53, 0xbe, 0x2b, 0x95, 0xcb, 0x77, 0x4b, 0xe5, 0xaa, 0x12, - 0x5d, 0xff, 0x5b, 0x1c, 0x87, 0x8b, 0xf7, 0xb6, 0xc8, 0xbf, 0x11, 0x8e, 0xca, 0x89, 0x85, 0x2c, - 0x30, 0xd6, 0xa4, 0xde, 0x9f, 0x4b, 0xd7, 0x1b, 0xf9, 0x3e, 0x1a, 0x3e, 0x4f, 0x5e, 0x6b, 0x7e, - 0xef, 0xa9, 0x99, 0x67, 0x60, 0xf6, 0x28, 0x74, 0x80, 0x3d, 0xca, 0xd7, 0x0d, 0x66, 0x99, 0xf9, - 0x1e, 0x03, 0x7a, 0xa5, 0x0f, 0x2c, 0x6f, 0xd9, 0x79, 0xab, 0xdb, 0xa4, 0x06, 0xe3, 0xb4, 0x67, - 0xf2, 0x1e, 0x85, 0xfc, 0x13, 0x6a, 0x71, 0xf8, 0xf8, 0x9f, 0xff, 0xfd, 0x24, 0xf4, 0xfd, 0xec, - 0x35, 0xef, 0x9f, 0x69, 0x61, 0x14, 0x73, 0x56, 0xf8, 0xc8, 0x6f, 0x04, 0xea, 0xe8, 0x70, 0x2f, - 0xf8, 0x7f, 0x8e, 0xdd, 0x40, 0x6b, 0xe4, 0x5f, 0x08, 0x87, 0x37, 0x81, 0x93, 0x77, 0x8f, 0x9f, - 0x0e, 0x25, 0xb5, 0xdc, 0xbc, 0x63, 0x64, 0xf6, 0x97, 0x9f, 0xfe, 0x3d, 0x84, 0x86, 0xcf, 0x93, - 0x1f, 0x4c, 0xe7, 0xd6, 0xb1, 0xbb, 0x16, 0xb7, 0x5f, 0x45, 0x8f, 0x82, 0xd1, 0x10, 0xec, 0xae, - 0x91, 0xef, 0x4e, 0x63, 0xf7, 0x4a, 0x52, 0x52, 0xb4, 0x47, 0x3e, 0x47, 0x38, 0xe2, 0x56, 0x1c, - 0xc9, 0xcd, 0x51, 0x94, 0x92, 0xda, 0x7b, 0x73, 0x97, 0x6f, 0xb6, 0x77, 0x2a, 0xdc, 0x0a, 0x24, - 0xbf, 0x10, 0x37, 0xf2, 0x15, 0xc2, 0x67, 0xbc, 0x91, 0x97, 0x2c, 0x32, 0x18, 0xa7, 0xae, 0xcc, - 0xa7, 0xec, 0xb1, 0xfb, 0x0d, 0x7a, 0xcd, 0x94, 0xbc, 0x93, 0xaa, 0x9c, 0x2c, 0x25, 0x27, 0x74, - 0xf6, 0xdc, 0x14, 0x7d, 0x8e, 0x70, 0x54, 0xb6, 0xbb, 0x63, 0x6a, 0x30, 0xd0, 0x13, 0x53, 0xe7, - 0x55, 0xf9, 0xb9, 0x44, 0xf5, 0x3f, 0x97, 0xa8, 0xe5, 0x8e, 0xc3, 0x07, 0xd9, 0xc1, 0x6b, 0x72, - 0xbb, 0xbe, 0x76, 0xa2, 0x84, 0xbc, 0x81, 0xd6, 0x52, 0x1f, 0x3e, 0xdb, 0x47, 0xa1, 0xcf, 0xf7, - 0x51, 0x76, 0x16, 0x0b, 0xf9, 0xf2, 0x7b, 0xb9, 0x8f, 0xd0, 0x70, 0x1f, 0xe5, 0xe6, 0x7d, 0x59, - 0x7e, 0xfc, 0x8f, 0x64, 0x48, 0x41, 0x1b, 0x9f, 0xa0, 0xcf, 0x6e, 0x2e, 0x97, 0xb4, 0x07, 0xb7, - 0xb6, 0x5f, 0x1c, 0xa4, 0x97, 0x5e, 0x1e, 0xa4, 0x97, 0xbe, 0x3c, 0x48, 0xa3, 0x5f, 0x0d, 0xd3, - 0xe8, 0x2f, 0xc3, 0x34, 0xfa, 0x74, 0x98, 0x46, 0x2f, 0x86, 0x69, 0xf4, 0x9f, 0x61, 0x1a, 0x7d, - 0x31, 0x4c, 0x2f, 0x7d, 0x39, 0x4c, 0xa3, 0xdf, 0x1e, 0xa6, 0x97, 0x9e, 0x1d, 0xa6, 0xd1, 0x8b, - 0xc3, 0xf4, 0xd2, 0xcb, 0xc3, 0xf4, 0xd2, 0x4f, 0xef, 0xb7, 0x6c, 0xe7, 0x71, 0x4b, 0xed, 0xdb, - 0xee, 0x30, 0x4a, 0x0d, 0xb5, 0xc7, 0x0a, 0x62, 0xe1, 0xfe, 0x27, 0xcb, 0x3b, 0xd4, 0xee, 0x5b, - 0x0d, 0xa0, 0x79, 0x5f, 0x5c, 0x70, 0xea, 0x2d, 0xbb, 0x00, 0x4f, 0xb9, 0xf7, 0xd5, 0x65, 0xda, - 0x87, 0xa3, 0x7a, 0x54, 0x84, 0xe0, 0x3b, 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x2d, 0x41, 0x7f, - 0x66, 0x5d, 0x13, 0x00, 0x00, + // 1654 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x8c, 0x1b, 0x49, + 0x15, 0x9e, 0xb2, 0x3d, 0x8e, 0x5d, 0x9e, 0x4c, 0x7a, 0x8b, 0xdd, 0xc4, 0x71, 0x82, 0x65, 0xbc, + 0x2b, 0xd6, 0x3b, 0x1b, 0xb7, 0xa3, 0x01, 0x56, 0x24, 0xa0, 0x80, 0xc7, 0xb1, 0x87, 0x49, 0x66, + 0x32, 0x49, 0xdb, 0x89, 0xf8, 0x39, 0xf4, 0xb6, 0xdb, 0xcf, 0x4e, 0x13, 0xbb, 0xbb, 0xa9, 0x2a, + 0x3b, 0x19, 0xa1, 0x91, 0xd0, 0x4a, 0xdc, 0x17, 0xad, 0x04, 0xe2, 0x4f, 0xe2, 0x82, 0x04, 0x07, + 0xee, 0x48, 0x73, 0xc9, 0x8d, 0xd5, 0x1e, 0x50, 0x04, 0x42, 0xca, 0x91, 0x78, 0x10, 0xda, 0xe3, + 0x0a, 0x71, 0x80, 0x03, 0x12, 0xea, 0xaa, 0x6e, 0xaf, 0xdb, 0xe3, 0xf5, 0xd8, 0xc3, 0x2c, 0x27, + 0x57, 0xd5, 0x7b, 0xef, 0xeb, 0xf7, 0xd5, 0xfb, 0xe9, 0xe7, 0xc6, 0x57, 0x07, 0xc0, 0x54, 0xcb, + 0x29, 0x31, 0xf3, 0x21, 0xf4, 0x8c, 0x92, 0xe5, 0xea, 0x2e, 0x85, 0xb6, 0xf5, 0x44, 0x67, 0xc0, + 0x4b, 0x6e, 0xbf, 0xd9, 0xb5, 0x4c, 0xdd, 0xa4, 0xfd, 0x96, 0xe1, 0x5a, 0xaa, 0x4b, 0x1d, 0xee, + 0x90, 0x4b, 0xd2, 0x42, 0x95, 0x16, 0x6a, 0xc8, 0x22, 0x53, 0xec, 0x58, 0xfc, 0x61, 0xbf, 0xa9, + 0x9a, 0x4e, 0xaf, 0xd4, 0x71, 0x3a, 0x4e, 0x49, 0xd8, 0x34, 0xfb, 0x6d, 0xb1, 0x13, 0x1b, 0xb1, + 0x92, 0x58, 0x99, 0xcb, 0x1d, 0xc7, 0xe9, 0x74, 0xa1, 0x64, 0xb8, 0x56, 0xc9, 0xb0, 0x6d, 0x87, + 0x1b, 0xdc, 0x72, 0x6c, 0xe6, 0x4b, 0x2f, 0xf9, 0xd2, 0x11, 0x06, 0xf4, 0x5c, 0xbe, 0xe7, 0x0b, + 0x33, 0x61, 0xc7, 0x81, 0x52, 0x87, 0x06, 0x86, 0x85, 0x59, 0xa4, 0x9c, 0xe6, 0x77, 0xc1, 0xe4, + 0xbe, 0xe6, 0xeb, 0xb3, 0x34, 0xf9, 0x9e, 0x0b, 0x01, 0xe4, 0x85, 0xb0, 0xa2, 0x0d, 0x01, 0xc2, + 0xa5, 0xb0, 0xc0, 0x71, 0xc7, 0x19, 0x5c, 0x0c, 0x0b, 0xc7, 0x01, 0x2f, 0x87, 0x45, 0x03, 0xa3, + 0x6b, 0xb5, 0x0c, 0x0e, 0xbe, 0x34, 0x3f, 0x21, 0x05, 0x06, 0xf6, 0x60, 0x02, 0x3c, 0x37, 0xa1, + 0x63, 0xc1, 0x63, 0x3d, 0xa4, 0x91, 0xff, 0x1d, 0xc2, 0x67, 0x2b, 0x14, 0x0c, 0x0e, 0x1a, 0x7c, + 0xaf, 0x0f, 0x8c, 0x93, 0xaf, 0xe1, 0x44, 0x0f, 0xb8, 0xd1, 0x32, 0xb8, 0x91, 0x46, 0x39, 0x54, + 0x48, 0xad, 0xbf, 0xaa, 0x86, 0xe3, 0xb9, 0x2b, 0xae, 0x47, 0x5a, 0xed, 0x00, 0x37, 0x1a, 0x7b, + 0x2e, 0x68, 0x23, 0x23, 0x72, 0x17, 0xc7, 0x98, 0x0b, 0x66, 0x3a, 0x22, 0x8c, 0xdf, 0x54, 0x67, + 0x24, 0x83, 0x2a, 0x41, 0xea, 0x2e, 0x98, 0x1e, 0xc8, 0xc6, 0xb9, 0x9f, 0xed, 0xaf, 0x78, 0xb6, + 0x6a, 0xc7, 0xd4, 0xbd, 0x5f, 0x4d, 0x20, 0x5d, 0x4f, 0x7e, 0x70, 0x23, 0x2e, 0x1f, 0x9a, 0xff, + 0x37, 0xc2, 0xab, 0x81, 0xbf, 0xcc, 0x75, 0x6c, 0x06, 0xe4, 0xab, 0x47, 0x1c, 0xce, 0x4d, 0x75, + 0x78, 0x13, 0xf8, 0x14, 0x6f, 0x77, 0xf1, 0x39, 0xb6, 0xc7, 0x38, 0xf4, 0xf4, 0x11, 0x48, 0x54, + 0x80, 0x7c, 0x7e, 0x02, 0xa4, 0x2e, 0xb4, 0x8e, 0x42, 0xad, 0x4a, 0xf3, 0x9d, 0x00, 0x70, 0x27, + 0x44, 0xbf, 0x30, 0x93, 0xfe, 0x26, 0xf0, 0x05, 0xb8, 0xbf, 0x40, 0x78, 0x55, 0x03, 0xb7, 0x6b, + 0x98, 0xa3, 0x60, 0x7d, 0xfd, 0x08, 0xf7, 0xd7, 0xa6, 0x72, 0xf7, 0xcd, 0xa6, 0xf0, 0xbf, 0x17, + 0x72, 0xf7, 0xca, 0x4c, 0x77, 0x7d, 0x94, 0x63, 0x5c, 0x26, 0x25, 0xac, 0x50, 0x60, 0x4e, 0x9f, + 0x9a, 0xa0, 0x0f, 0x80, 0x32, 0xcb, 0xb1, 0xc5, 0x9d, 0x26, 0x37, 0x62, 0x1f, 0x1e, 0x20, 0xa4, + 0x9d, 0x0b, 0xa4, 0x0f, 0xa4, 0x70, 0x9c, 0xe3, 0x4b, 0xf8, 0xdc, 0x88, 0xa2, 0x8c, 0x6f, 0xfe, + 0xe7, 0x08, 0xe3, 0x4d, 0xe0, 0x01, 0xe5, 0xcb, 0x38, 0x69, 0x1b, 0x3d, 0x60, 0xae, 0x61, 0x82, + 0xe0, 0x9c, 0xd4, 0x3e, 0x3e, 0x20, 0x04, 0xc7, 0xbc, 0x8d, 0xa0, 0x93, 0xd4, 0xc4, 0x9a, 0x7c, + 0x07, 0x7b, 0x4f, 0x14, 0x60, 0x7a, 0xdb, 0xa1, 0x3d, 0x83, 0x0b, 0x77, 0x56, 0xd7, 0xd7, 0x8f, + 0x0b, 0x4e, 0xe0, 0x43, 0x4d, 0x58, 0x55, 0x9c, 0x16, 0x68, 0xab, 0x34, 0x74, 0x96, 0xff, 0x51, + 0x1c, 0xa7, 0xc6, 0x34, 0xc9, 0x6d, 0x9c, 0x32, 0x45, 0x7e, 0x8a, 0x47, 0xf9, 0xd7, 0xba, 0x36, + 0x47, 0x11, 0xf8, 0xfc, 0x34, 0x2c, 0xcd, 0x3d, 0x78, 0x72, 0x07, 0xaf, 0x50, 0x79, 0x1b, 0x12, + 0x2d, 0x3a, 0x47, 0x49, 0x85, 0x33, 0x44, 0x4b, 0xf9, 0x00, 0x02, 0x6f, 0x5a, 0x64, 0x62, 0x33, + 0x22, 0x13, 0xaa, 0xad, 0xe5, 0xd3, 0xa8, 0xad, 0x33, 0xa7, 0x52, 0x5b, 0xf1, 0x53, 0xa9, 0x2d, + 0xf2, 0x0d, 0x1c, 0x67, 0xdc, 0xe0, 0x7d, 0x96, 0xfe, 0xd5, 0x2f, 0x50, 0x2e, 0x5a, 0x48, 0xad, + 0xbf, 0x31, 0x13, 0xb2, 0x2e, 0x94, 0xa5, 0x9b, 0x1b, 0xd1, 0xa7, 0xfb, 0x48, 0xf3, 0xed, 0xc9, + 0x16, 0x7e, 0x89, 0x42, 0x1b, 0x28, 0xb5, 0xec, 0x8e, 0x2e, 0x5f, 0x1f, 0x2c, 0x9d, 0x10, 0x90, + 0x97, 0x3f, 0xa1, 0x20, 0xdb, 0x82, 0xa1, 0x32, 0x32, 0x93, 0xe7, 0x8c, 0x3c, 0xc0, 0xe9, 0x16, + 0x74, 0x81, 0x43, 0x4b, 0x97, 0x32, 0x68, 0x8d, 0x10, 0x93, 0x73, 0x20, 0x9e, 0xf7, 0xad, 0x35, + 0xdf, 0x38, 0xc0, 0xfd, 0x26, 0xbe, 0xd8, 0xb2, 0x98, 0xd1, 0xec, 0x4e, 0x03, 0xc6, 0x73, 0x00, + 0x5f, 0x08, 0xcc, 0x27, 0x90, 0xc7, 0xca, 0xf7, 0x56, 0x2c, 0x81, 0x94, 0x48, 0xfe, 0xd7, 0x08, + 0xa7, 0xb6, 0x2d, 0x36, 0x67, 0xc9, 0x7e, 0x0e, 0xaf, 0x74, 0x8d, 0x26, 0x74, 0xf5, 0xb6, 0xd5, + 0xe5, 0x40, 0xfd, 0xd2, 0x4d, 0x89, 0xb3, 0x9a, 0x38, 0x22, 0xaf, 0xe2, 0xb3, 0x14, 0x5c, 0x87, + 0x72, 0xbd, 0x6d, 0x41, 0xb7, 0xc5, 0xd2, 0xd1, 0x5c, 0xb4, 0x90, 0xd4, 0x56, 0xe4, 0x61, 0x4d, + 0x9c, 0x91, 0xab, 0xf8, 0x65, 0x5f, 0x49, 0x06, 0x25, 0xd0, 0x8d, 0x09, 0x5d, 0x22, 0x65, 0x32, + 0x84, 0xd2, 0x22, 0xff, 0x34, 0x8e, 0x15, 0xe9, 0xa7, 0x2c, 0xde, 0x2d, 0x0e, 0x3d, 0x72, 0x1e, + 0xc7, 0x39, 0xd8, 0x86, 0xcd, 0x45, 0x96, 0x25, 0x35, 0x7f, 0x77, 0x82, 0xbe, 0xa3, 0xe0, 0x68, + 0xdf, 0x6a, 0xc9, 0xd6, 0xa7, 0x79, 0x4b, 0x92, 0xc3, 0xa9, 0x16, 0x30, 0x93, 0x5a, 0xe2, 0x1d, + 0x9c, 0x4e, 0x49, 0xa6, 0x63, 0x47, 0x24, 0x83, 0x13, 0xc1, 0x35, 0xa7, 0x57, 0x72, 0xa8, 0x90, + 0xd0, 0x46, 0x7b, 0x72, 0x0f, 0xc7, 0xc5, 0xa5, 0x48, 0x4a, 0xa9, 0xf5, 0x6b, 0x33, 0x93, 0x75, + 0x92, 0x98, 0xba, 0x2d, 0x6c, 0xab, 0x36, 0xa7, 0x7b, 0x9a, 0x0f, 0x44, 0xde, 0xc6, 0xa9, 0xb1, + 0xa1, 0xca, 0x4f, 0x83, 0x1b, 0x8b, 0xe1, 0x96, 0x3f, 0x06, 0x90, 0xe0, 0xe3, 0x90, 0xe4, 0x1a, + 0xc6, 0xce, 0x63, 0x1b, 0xa8, 0xee, 0x0d, 0x1f, 0xe9, 0xa4, 0x28, 0xdc, 0xcc, 0xc4, 0x03, 0x1e, + 0x58, 0xf0, 0x38, 0xc8, 0xb2, 0xa4, 0xd0, 0xf6, 0x4e, 0x42, 0xcd, 0xe7, 0xec, 0x69, 0x34, 0x9f, + 0xd5, 0xff, 0xa9, 0xf9, 0x54, 0x70, 0xa2, 0x03, 0x5c, 0xf4, 0x0f, 0xbf, 0x8d, 0xcd, 0xdd, 0x80, + 0xb4, 0x33, 0x1d, 0xb9, 0x21, 0x3b, 0x18, 0xfb, 0xd9, 0xc9, 0x80, 0xfb, 0x1d, 0x62, 0xd1, 0xa6, + 0x93, 0x94, 0x08, 0x75, 0xe0, 0x99, 0x6b, 0x38, 0x35, 0x16, 0x56, 0x2f, 0xe3, 0x1e, 0xc1, 0x9e, + 0x9f, 0x9d, 0xde, 0x92, 0xbc, 0x8c, 0x97, 0x07, 0x46, 0xb7, 0x1f, 0x24, 0xa6, 0xdc, 0x5c, 0x8f, + 0x7c, 0x19, 0x65, 0x6e, 0x60, 0x65, 0x32, 0x72, 0x8b, 0xd8, 0xdf, 0x8a, 0x25, 0x96, 0x95, 0x78, + 0xfe, 0x87, 0x08, 0xaf, 0x8c, 0x67, 0x04, 0xa9, 0xe0, 0x65, 0x8b, 0x43, 0x8f, 0xa5, 0x65, 0x43, + 0x2d, 0x2e, 0x94, 0x4b, 0x9a, 0xb4, 0x25, 0x57, 0x71, 0x5c, 0x4e, 0xeb, 0xe9, 0x88, 0x40, 0x49, + 0x4f, 0xa0, 0x54, 0x3d, 0xa1, 0xb8, 0x58, 0x5f, 0x2f, 0xff, 0x08, 0x9f, 0xbd, 0x29, 0xfa, 0xde, + 0xc9, 0xc7, 0x84, 0x02, 0x56, 0xda, 0x86, 0xd5, 0xd5, 0xad, 0xf6, 0xa8, 0x3f, 0x8a, 0xda, 0x4d, + 0x68, 0xab, 0xde, 0xf9, 0x56, 0x3b, 0xe8, 0x7b, 0x6b, 0xff, 0x40, 0xf8, 0x95, 0xa9, 0xd3, 0x01, + 0xc9, 0xe0, 0xf3, 0x9b, 0xd5, 0x86, 0xae, 0xd5, 0xef, 0xea, 0xb5, 0x5d, 0x6d, 0xa7, 0xdc, 0xd0, + 0x6f, 0x56, 0x6b, 0xe5, 0xfb, 0xdb, 0x0d, 0x65, 0x89, 0x7c, 0x16, 0x5f, 0x9c, 0x90, 0xd5, 0x76, + 0x35, 0xbd, 0xa2, 0x55, 0xcb, 0x8d, 0xaa, 0x82, 0x48, 0x16, 0x67, 0xa6, 0x88, 0xb5, 0xea, 0xdd, + 0xed, 0x72, 0xa5, 0xaa, 0x44, 0xc8, 0x45, 0xfc, 0xca, 0x84, 0xbc, 0xde, 0x28, 0x37, 0xee, 0xd7, + 0x95, 0x28, 0xb9, 0x80, 0x3f, 0x33, 0x21, 0xd2, 0xaa, 0xe5, 0x9b, 0x4a, 0x8c, 0xbc, 0x86, 0x73, + 0x47, 0x04, 0xb5, 0xaa, 0xa6, 0x6d, 0xdd, 0xd9, 0xd4, 0x77, 0x37, 0x6e, 0x55, 0x2b, 0x8d, 0xba, + 0xb2, 0x3c, 0x45, 0x6b, 0x43, 0xdb, 0xbd, 0x5d, 0xbd, 0x23, 0x95, 0xab, 0x77, 0x2a, 0xd5, 0xba, + 0x12, 0x5f, 0xff, 0x0b, 0xc6, 0xd1, 0xf2, 0xdd, 0x2d, 0xf2, 0x1f, 0x84, 0xe3, 0x72, 0x62, 0x21, + 0x0b, 0x8c, 0x35, 0x99, 0x37, 0xe7, 0xd2, 0xf5, 0x47, 0xbe, 0x9f, 0xa2, 0xe1, 0x1f, 0xd2, 0x8d, + 0xf6, 0x97, 0x9e, 0x98, 0x45, 0x06, 0x66, 0x9f, 0x42, 0x0f, 0xd8, 0xc3, 0x62, 0xd3, 0x60, 0x96, + 0x59, 0xec, 0x33, 0xa0, 0x57, 0x26, 0x45, 0x8c, 0x1b, 0x76, 0xcb, 0xa0, 0x2d, 0x29, 0x1d, 0x00, + 0x2b, 0x5a, 0x4e, 0xd1, 0xb2, 0xdb, 0xd4, 0x60, 0x9c, 0xf6, 0x4d, 0xde, 0xa7, 0x50, 0x7c, 0x4c, + 0x2d, 0x0e, 0xef, 0xfc, 0xf9, 0x6f, 0xef, 0x45, 0xbe, 0x92, 0x7f, 0xcb, 0xff, 0xe3, 0x5a, 0x1a, + 0xa5, 0x04, 0x2b, 0x7d, 0x3f, 0xe8, 0x13, 0xea, 0xe8, 0x70, 0x3f, 0xfc, 0x77, 0x8f, 0x5d, 0x47, + 0x6b, 0xe4, 0x5f, 0x08, 0x47, 0x37, 0x81, 0x93, 0xd7, 0x8f, 0x1f, 0x1e, 0x25, 0xf3, 0xc2, 0xbc, + 0x53, 0x66, 0xfe, 0x97, 0xe8, 0xfd, 0xdf, 0x47, 0x3c, 0xea, 0xdf, 0x9a, 0x4e, 0xbd, 0xe7, 0xd8, + 0x16, 0x77, 0x66, 0xb0, 0x0f, 0x14, 0xa6, 0x5f, 0x00, 0x05, 0xa3, 0x25, 0xf8, 0xbf, 0x45, 0xbe, + 0x38, 0x8d, 0xff, 0x27, 0xd2, 0x96, 0xa2, 0x7d, 0xf2, 0x4f, 0x84, 0x63, 0x5e, 0xc9, 0x92, 0xc2, + 0x1c, 0x55, 0x2d, 0xc9, 0xbf, 0x31, 0x77, 0xfd, 0xe7, 0x7f, 0xfc, 0x7f, 0x62, 0x5f, 0x22, 0xc5, + 0x85, 0xd8, 0x93, 0x77, 0x23, 0xf8, 0x8c, 0x3f, 0x55, 0x93, 0x45, 0x66, 0xef, 0xcc, 0x95, 0xf9, + 0x94, 0x7d, 0xfe, 0xbf, 0xfd, 0x74, 0x93, 0xfe, 0x76, 0xa6, 0x76, 0xb2, 0xa4, 0x9f, 0xd0, 0xd9, + 0xf7, 0x8a, 0xe0, 0xef, 0x08, 0xc7, 0x65, 0xbf, 0x3d, 0xa6, 0x09, 0x84, 0x9a, 0x72, 0xe6, 0xbc, + 0x2a, 0xbf, 0xd7, 0xa8, 0xc1, 0xf7, 0x1a, 0xb5, 0xda, 0x73, 0xf9, 0x5e, 0xfe, 0x27, 0x9f, 0x2e, + 0xf5, 0x6b, 0x6b, 0x27, 0xca, 0xf7, 0xeb, 0x68, 0x2d, 0xf3, 0xf6, 0xd3, 0x03, 0x14, 0xf9, 0xd3, + 0x01, 0xca, 0xcf, 0x22, 0x29, 0x5f, 0xce, 0xcf, 0x0f, 0x10, 0x1a, 0x1e, 0xa0, 0xc2, 0xbc, 0x2f, + 0xf3, 0x77, 0xfe, 0x98, 0x8e, 0x28, 0x68, 0xe3, 0x3d, 0xf4, 0xc1, 0x8d, 0xe5, 0x8a, 0x76, 0xff, + 0xe6, 0xf6, 0xb3, 0x17, 0xd9, 0xa5, 0xe7, 0x2f, 0xb2, 0x4b, 0x1f, 0xbd, 0xc8, 0xa2, 0x1f, 0x0c, + 0xb3, 0xe8, 0x37, 0xc3, 0x2c, 0x7a, 0x7f, 0x98, 0x45, 0xcf, 0x86, 0x59, 0xf4, 0xd7, 0x61, 0x16, + 0x7d, 0x38, 0xcc, 0x2e, 0x7d, 0x34, 0xcc, 0xa2, 0x77, 0x0f, 0xb3, 0x4b, 0x4f, 0x0f, 0xb3, 0xe8, + 0xd9, 0x61, 0x76, 0xe9, 0xf9, 0x61, 0x76, 0xe9, 0xdb, 0xf7, 0x3a, 0x8e, 0xfb, 0xa8, 0xa3, 0x0e, + 0x1c, 0x6f, 0x58, 0xa6, 0x86, 0xda, 0x67, 0x25, 0xb1, 0xf0, 0xfe, 0x33, 0x16, 0x5d, 0xea, 0x0c, + 0xac, 0x16, 0xd0, 0x62, 0x20, 0x2e, 0xb9, 0xcd, 0x8e, 0x53, 0x82, 0x27, 0xdc, 0xff, 0x2a, 0x34, + 0xed, 0xc3, 0x56, 0x33, 0x2e, 0x22, 0xf4, 0x85, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x04, 0xe1, + 0xe5, 0xb6, 0xfd, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/ip_prefix_set/public_crudapi.vesapi.go b/pbgo/extschema/schema/ip_prefix_set/public_crudapi.vesapi.go index 28c1334a9..ad6a82504 100644 --- a/pbgo/extschema/schema/ip_prefix_set/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/ip_prefix_set/public_crudapi.vesapi.go @@ -2268,7 +2268,7 @@ var APISwaggerJSON string = `{ "items": { "type": "string" }, - "x-displayname": "Prefix", + "x-displayname": "IPV4 Prefix", "x-ves-example": "['10.2.1.0/24', '192.168.8.0/29', '10.7.64.160/27']", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", @@ -2429,7 +2429,7 @@ var APISwaggerJSON string = `{ "items": { "type": "string" }, - "x-displayname": "Prefix", + "x-displayname": "IPV4 Prefix", "x-ves-example": "['10.2.1.0/24', '192.168.8.0/29', '10.7.64.160/27']", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", @@ -2617,7 +2617,7 @@ var APISwaggerJSON string = `{ "items": { "type": "string" }, - "x-displayname": "Prefix", + "x-displayname": "IPV4 Prefix", "x-ves-example": "['10.2.1.0/24', '192.168.8.0/29', '10.7.64.160/27']", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", @@ -2838,10 +2838,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2898,10 +2902,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3004,10 +3012,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/ip_prefix_set/types.pb.go b/pbgo/extschema/schema/ip_prefix_set/types.pb.go index c805d558f..a1c1db47f 100644 --- a/pbgo/extschema/schema/ip_prefix_set/types.pb.go +++ b/pbgo/extschema/schema/ip_prefix_set/types.pb.go @@ -33,9 +33,9 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package // x-displayName: "Global Specification" // IP Prefix Set specification type GlobalSpecType struct { - // prefix + // ipv4 prefix // - // x-displayName: "Prefix" + // x-displayName: "IPV4 Prefix" // x-example: "['10.2.1.0/24', '192.168.8.0/29', '10.7.64.160/27']" // An unordered list of IPv4 prefixes. Prefix []string `protobuf:"bytes,1,rep,name=prefix,proto3" json:"prefix,omitempty"` @@ -261,36 +261,36 @@ func init() { } var fileDescriptor_c8c0501fe04dc928 = []byte{ - // 458 bytes of a gzipped FileDescriptorProto + // 461 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x53, 0xb1, 0x6e, 0x13, 0x41, - 0x10, 0xbd, 0xb1, 0x15, 0x03, 0x1b, 0x29, 0x80, 0x0b, 0x30, 0x0e, 0x5a, 0x22, 0x53, 0x40, 0x61, - 0xdf, 0x09, 0x45, 0xa2, 0xa0, 0xa0, 0x08, 0x45, 0x0a, 0x1a, 0x08, 0x34, 0x41, 0x20, 0x6b, 0xef, - 0x3c, 0xbe, 0xac, 0x72, 0xe7, 0x5d, 0xed, 0x8d, 0x8f, 0x04, 0x09, 0xc9, 0x7f, 0x00, 0xf2, 0x57, - 0xf0, 0x0d, 0x54, 0x29, 0x11, 0x95, 0x4b, 0xd3, 0xe1, 0x73, 0x03, 0x54, 0x29, 0x29, 0x51, 0xf6, - 0x8e, 0xe8, 0x2e, 0x4a, 0x91, 0x26, 0xdd, 0x3c, 0xbd, 0xd9, 0xf7, 0xde, 0x8c, 0x66, 0xd9, 0x83, - 0x14, 0x13, 0x57, 0x2a, 0x2f, 0x09, 0xf6, 0x30, 0x16, 0x9e, 0xd4, 0x7d, 0x6d, 0x70, 0x28, 0x0f, - 0xfa, 0x09, 0x92, 0x47, 0x87, 0x1a, 0x13, 0x57, 0x1b, 0x45, 0xaa, 0xb9, 0x9e, 0x37, 0xba, 0x79, - 0xa3, 0x5b, 0x69, 0x6c, 0xf7, 0x42, 0x49, 0x7b, 0x63, 0xdf, 0x0d, 0x54, 0xec, 0x85, 0x2a, 0x54, - 0x9e, 0x7d, 0xe3, 0x8f, 0x87, 0x16, 0x59, 0x60, 0xab, 0x5c, 0xab, 0x7d, 0xbb, 0x6a, 0x3a, 0x42, - 0x2a, 0x88, 0xf5, 0x2a, 0xa1, 0x34, 0x49, 0x35, 0x2a, 0x12, 0xb4, 0xef, 0x54, 0xc9, 0x52, 0xb8, - 0xf6, 0xdd, 0x2a, 0x95, 0x8a, 0x48, 0x0e, 0x04, 0x61, 0xc1, 0x6e, 0x9c, 0x61, 0x25, 0xbe, 0xef, - 0x57, 0xa4, 0x3b, 0x3f, 0x80, 0xad, 0x6d, 0x47, 0xca, 0x17, 0xd1, 0x2b, 0x8d, 0xc1, 0xeb, 0x43, - 0x8d, 0xcd, 0xe7, 0xac, 0x91, 0x0f, 0xd8, 0x82, 0x8d, 0xfa, 0xc3, 0x6b, 0x5b, 0x9b, 0x5f, 0x7f, - 0x1f, 0xd5, 0xd9, 0x14, 0xae, 0x74, 0x56, 0x4c, 0xfd, 0x2f, 0x40, 0x19, 0xce, 0x73, 0xd8, 0x98, - 0x42, 0xfd, 0xc6, 0xe4, 0xea, 0x49, 0xb9, 0x32, 0x85, 0x5a, 0x0b, 0x76, 0x0a, 0x89, 0xe6, 0x07, - 0xb6, 0x2a, 0x75, 0xfa, 0xb8, 0x58, 0x59, 0xab, 0x66, 0x15, 0x77, 0xff, 0x7c, 0xbc, 0x3f, 0xc0, - 0x58, 0x3d, 0xea, 0x12, 0x26, 0xd4, 0x0d, 0x0c, 0x75, 0x13, 0x12, 0xa1, 0x1c, 0x85, 0xdd, 0x44, - 0x0d, 0xc9, 0x17, 0xa3, 0xfd, 0x7e, 0x8c, 0x41, 0xd9, 0x68, 0x52, 0xbb, 0x98, 0x2f, 0x3b, 0x71, - 0x7b, 0x61, 0xcd, 0x3a, 0x6f, 0xd9, 0xda, 0x33, 0x83, 0x82, 0xf0, 0x74, 0xb4, 0x5b, 0xd5, 0xd1, - 0x4e, 0x53, 0xde, 0x3b, 0x27, 0x65, 0x59, 0xea, 0xc9, 0xcd, 0xef, 0x4f, 0xcf, 0xac, 0xa9, 0xf3, - 0x8e, 0x5d, 0xdf, 0x41, 0x1d, 0x89, 0xe0, 0x72, 0xe4, 0x77, 0xd9, 0xea, 0x36, 0xd2, 0x65, 0x48, - 0x6f, 0x7d, 0x82, 0xd9, 0x82, 0x3b, 0xf3, 0x05, 0x77, 0x8e, 0x17, 0x1c, 0x26, 0x19, 0x87, 0x2f, - 0x19, 0x87, 0x6f, 0x19, 0x87, 0x59, 0xc6, 0x61, 0x9e, 0x71, 0xf8, 0x99, 0x71, 0xf8, 0x95, 0x71, - 0xe7, 0x38, 0xe3, 0xf0, 0x79, 0xc9, 0x9d, 0xa3, 0x25, 0x87, 0xd9, 0x92, 0x3b, 0xf3, 0x25, 0x77, - 0xde, 0xbc, 0x0c, 0x95, 0xde, 0x0f, 0xdd, 0x54, 0x45, 0x84, 0xc6, 0x08, 0x77, 0x9c, 0x78, 0xb6, - 0x18, 0x2a, 0x13, 0xf7, 0xb4, 0x51, 0xa9, 0x1c, 0xa0, 0xe9, 0xfd, 0xa7, 0x3d, 0xed, 0x87, 0xca, - 0xc3, 0x03, 0x2a, 0x6e, 0xf0, 0xbc, 0xef, 0xe6, 0x37, 0xec, 0x31, 0x6e, 0xfe, 0x0b, 0x00, 0x00, - 0xff, 0xff, 0x6a, 0xd6, 0xda, 0x6d, 0x94, 0x03, 0x00, 0x00, + 0x10, 0xbd, 0xb1, 0x15, 0x03, 0x1b, 0x29, 0x80, 0x0b, 0x30, 0x0e, 0x5a, 0x22, 0x37, 0xa4, 0x38, + 0xdf, 0x09, 0x45, 0xa2, 0xa0, 0xa0, 0x08, 0x45, 0x0a, 0x1a, 0x08, 0x34, 0x20, 0xc0, 0xda, 0x3b, + 0x8f, 0x2f, 0xab, 0xdc, 0x79, 0x56, 0x7b, 0xeb, 0x23, 0x29, 0x10, 0xfe, 0x03, 0x90, 0xbf, 0x82, + 0x6f, 0xa0, 0x4a, 0x89, 0xa8, 0x5c, 0xba, 0x42, 0xf8, 0xdc, 0x00, 0x55, 0x4a, 0x4a, 0x94, 0xbd, + 0x23, 0xf2, 0x45, 0x29, 0xd2, 0xa4, 0x9b, 0xa7, 0x37, 0xfb, 0xde, 0x9b, 0xd1, 0x2c, 0xbb, 0x9f, + 0x61, 0xea, 0x49, 0xf2, 0xd3, 0x70, 0x0f, 0x13, 0xe1, 0x4b, 0xd5, 0x53, 0x1a, 0x07, 0xf2, 0xa0, + 0x97, 0xa2, 0xf1, 0xcd, 0xa1, 0xc2, 0xd4, 0x53, 0x9a, 0x0c, 0x35, 0xd7, 0x8b, 0x46, 0xaf, 0x68, + 0xf4, 0x2a, 0x8d, 0xed, 0x6e, 0x24, 0xcd, 0xde, 0x28, 0xf0, 0x42, 0x4a, 0xfc, 0x88, 0x22, 0xf2, + 0xed, 0x9b, 0x60, 0x34, 0xb0, 0xc8, 0x02, 0x5b, 0x15, 0x5a, 0xed, 0xdb, 0x55, 0xd3, 0x21, 0x9a, + 0x92, 0x58, 0xaf, 0x12, 0xa4, 0x8c, 0xa4, 0x61, 0x99, 0xa0, 0x7d, 0xa7, 0x4a, 0x2e, 0x85, 0x6b, + 0xdf, 0xad, 0x52, 0x99, 0x88, 0x65, 0x5f, 0x18, 0x2c, 0xd9, 0x8d, 0x33, 0xac, 0xc4, 0xf7, 0xbd, + 0x8a, 0x74, 0xe7, 0x07, 0xb0, 0xb5, 0x9d, 0x98, 0x02, 0x11, 0xbf, 0x50, 0x18, 0xbe, 0x3c, 0x54, + 0xd8, 0x7c, 0xca, 0x1a, 0xc5, 0x80, 0x2d, 0xd8, 0xa8, 0x6f, 0x5e, 0xdb, 0xde, 0xfa, 0xfa, 0xfb, + 0xa8, 0xce, 0x26, 0x70, 0xa5, 0xb3, 0xa2, 0xeb, 0x7f, 0x01, 0x96, 0xe1, 0xac, 0x80, 0x8d, 0x09, + 0xd4, 0x6f, 0x8c, 0xaf, 0x9e, 0x94, 0x2b, 0x13, 0xa8, 0xb5, 0x60, 0xb7, 0x94, 0x68, 0x7e, 0x64, + 0xab, 0x52, 0x65, 0x0f, 0xcb, 0x95, 0xb5, 0x6a, 0x56, 0xf1, 0xdd, 0x9f, 0x0f, 0x9b, 0x7d, 0x4c, + 0xe8, 0x81, 0x6b, 0x30, 0x35, 0x6e, 0xa8, 0x8d, 0x9b, 0x1a, 0x11, 0xc9, 0x61, 0xe4, 0xa6, 0x34, + 0x30, 0x81, 0x18, 0xee, 0xf7, 0x12, 0x0c, 0x5d, 0xa5, 0xa9, 0xbf, 0xec, 0x36, 0xae, 0x5d, 0xcc, + 0x9c, 0x9d, 0x58, 0x3e, 0xb3, 0x8e, 0x9d, 0x37, 0x6c, 0xed, 0x89, 0x46, 0x61, 0xf0, 0x74, 0xbe, + 0x5b, 0xd5, 0xf9, 0x4e, 0xa3, 0xde, 0x3b, 0x27, 0xea, 0xb2, 0xd4, 0xa3, 0x9b, 0xdf, 0x1f, 0x9f, + 0xd9, 0x55, 0xe7, 0x2d, 0xbb, 0xbe, 0x8b, 0x2a, 0x16, 0xe1, 0xe5, 0xc8, 0xbf, 0x62, 0xab, 0x3b, + 0x68, 0x2e, 0x43, 0x7a, 0xfb, 0x13, 0x4c, 0xe7, 0xdc, 0x99, 0xcd, 0xb9, 0x73, 0x3c, 0xe7, 0x30, + 0xce, 0x39, 0x7c, 0xc9, 0x39, 0x7c, 0xcb, 0x39, 0x4c, 0x73, 0x0e, 0xb3, 0x9c, 0xc3, 0xcf, 0x9c, + 0xc3, 0xaf, 0x9c, 0x3b, 0xc7, 0x39, 0x87, 0xcf, 0x0b, 0xee, 0x1c, 0x2d, 0x38, 0x4c, 0x17, 0xdc, + 0x99, 0x2d, 0xb8, 0xf3, 0xfa, 0x79, 0x44, 0x6a, 0x3f, 0xf2, 0x32, 0x8a, 0x0d, 0x6a, 0x2d, 0xbc, + 0x51, 0xea, 0xdb, 0x62, 0x40, 0x3a, 0xe9, 0x2a, 0x4d, 0x99, 0xec, 0xa3, 0xee, 0xfe, 0xa7, 0x7d, + 0x15, 0x44, 0xe4, 0xe3, 0x81, 0x29, 0x0f, 0xf1, 0xbc, 0x3f, 0x17, 0x34, 0xec, 0x45, 0x6e, 0xfd, + 0x0b, 0x00, 0x00, 0xff, 0xff, 0xbb, 0x75, 0xee, 0x07, 0x99, 0x03, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/k8s_cluster/crudapi/api.vesapi.go b/pbgo/extschema/schema/k8s_cluster/crudapi/api.vesapi.go index f5c225811..db37d3f0f 100644 --- a/pbgo/extschema/schema/k8s_cluster/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/k8s_cluster/crudapi/api.vesapi.go @@ -3666,10 +3666,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_cluster/object.pb.go b/pbgo/extschema/schema/k8s_cluster/object.pb.go index 9d432cab6..6be19eaf4 100644 --- a/pbgo/extschema/schema/k8s_cluster/object.pb.go +++ b/pbgo/extschema/schema/k8s_cluster/object.pb.go @@ -234,49 +234,50 @@ func init() { } var fileDescriptor_1ca9e85ef8188339 = []byte{ - // 670 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0x41, 0x4f, 0x13, 0x4d, - 0x18, 0xc7, 0x3b, 0x2d, 0x6f, 0x21, 0x53, 0xc2, 0x4b, 0xf6, 0xbd, 0x14, 0xde, 0xf7, 0x9d, 0x90, - 0x1a, 0x0d, 0x1a, 0x76, 0x37, 0x01, 0x89, 0x48, 0x8c, 0x26, 0x60, 0xc2, 0x05, 0x24, 0x29, 0x9e, - 0xbc, 0x6c, 0xa6, 0xb3, 0x4f, 0x97, 0xb1, 0xbb, 0x9d, 0xc9, 0xce, 0x6c, 0x81, 0x83, 0x89, 0xf1, - 0xac, 0xc6, 0x8b, 0x89, 0x1f, 0xc1, 0xf8, 0x25, 0x14, 0x4f, 0x1e, 0x09, 0x27, 0xe2, 0x49, 0xb6, - 0x17, 0x13, 0x2f, 0x7c, 0x04, 0xd3, 0xd9, 0x2e, 0x69, 0xa1, 0x1a, 0x39, 0xed, 0xcc, 0x3e, 0xff, - 0xdf, 0x7f, 0x9f, 0x79, 0xf6, 0x99, 0x07, 0xdf, 0xe8, 0x80, 0x72, 0xb8, 0x70, 0x15, 0xdb, 0x85, - 0x88, 0xba, 0xad, 0x15, 0xe5, 0xb1, 0x30, 0x51, 0x1a, 0x62, 0x57, 0x34, 0x9e, 0x02, 0xd3, 0x8e, - 0x8c, 0x85, 0x16, 0xd6, 0x4c, 0xa6, 0x73, 0x32, 0x9d, 0x33, 0xa0, 0x9b, 0xb5, 0x03, 0xae, 0x77, - 0x93, 0x86, 0xc3, 0x44, 0xe4, 0x06, 0x22, 0x10, 0xae, 0x21, 0x1a, 0x49, 0xd3, 0xec, 0xcc, 0xc6, - 0xac, 0x32, 0xa7, 0xd9, 0xeb, 0xbf, 0xfe, 0xa2, 0x3e, 0x90, 0xa0, 0xfa, 0xb2, 0x7f, 0x87, 0x65, - 0x42, 0x6a, 0x2e, 0xda, 0x79, 0x70, 0x66, 0x38, 0x38, 0xc8, 0xd5, 0x86, 0x43, 0x1d, 0x50, 0xd0, - 0xee, 0x0c, 0xe3, 0xb5, 0x97, 0x7f, 0xe1, 0xf2, 0xb6, 0x39, 0x9d, 0x75, 0x17, 0x4f, 0x44, 0xa0, - 0xa9, 0x4f, 0x35, 0xad, 0xa2, 0x39, 0x34, 0x5f, 0x59, 0xfc, 0xdf, 0x19, 0x3e, 0x6a, 0x26, 0xdc, - 0x02, 0x4d, 0x1f, 0x1f, 0x48, 0xa8, 0x9f, 0xcb, 0xad, 0x4d, 0xfc, 0xb7, 0x3a, 0x50, 0x1a, 0x22, - 0xef, 0xdc, 0xa1, 0x68, 0x1c, 0xae, 0x5d, 0x70, 0xd8, 0x31, 0xaa, 0x0b, 0x3e, 0x53, 0x19, 0xbb, - 0x95, 0xbb, 0xdd, 0xc1, 0x63, 0x4a, 0x02, 0xab, 0x96, 0x46, 0x5a, 0x0c, 0x54, 0xc9, 0xd9, 0x91, - 0xc0, 0x8c, 0x85, 0x01, 0x56, 0x3f, 0x96, 0x5e, 0x3c, 0x28, 0x67, 0x66, 0x9f, 0x0f, 0xab, 0xc5, - 0x69, 0x74, 0x7c, 0x58, 0x7d, 0x5d, 0xc4, 0x4b, 0xb8, 0xb4, 0x01, 0xda, 0x5a, 0x68, 0x2e, 0xef, - 0x33, 0x9b, 0x4a, 0xa9, 0x34, 0x65, 0x2d, 0xbb, 0x41, 0x15, 0x67, 0x76, 0x24, 0xda, 0x5c, 0x8b, - 0x78, 0x61, 0xae, 0x03, 0xca, 0xe6, 0xc2, 0x6e, 0xad, 0x28, 0x3b, 0x06, 0xea, 0xe3, 0x65, 0x3c, - 0x5e, 0x07, 0x19, 0x52, 0x06, 0xd6, 0xad, 0x51, 0x60, 0xa2, 0x60, 0x98, 0xda, 0x8b, 0xb9, 0x06, - 0x7c, 0x1b, 0x97, 0xd7, 0x63, 0xa0, 0xfa, 0xca, 0xd4, 0x43, 0x08, 0xe1, 0xca, 0xd4, 0xd8, 0x26, - 0x57, 0x57, 0x3c, 0xd8, 0xd7, 0xc3, 0xea, 0x3b, 0x84, 0xdf, 0x22, 0xcc, 0x7b, 0x25, 0x73, 0x02, - 0xe6, 0x99, 0x67, 0x8f, 0xf6, 0xd8, 0xae, 0xe0, 0x0c, 0x9c, 0x7e, 0x75, 0xbd, 0x3d, 0xee, 0x83, - 0x47, 0xa5, 0xf4, 0x42, 0xae, 0xf4, 0xa5, 0xb7, 0xaa, 0xc7, 0xe4, 0x08, 0x8d, 0x03, 0xe1, 0x31, - 0xdf, 0x09, 0x05, 0xa3, 0xa1, 0xe7, 0x8b, 0x88, 0xf2, 0xb6, 0x23, 0xa9, 0x52, 0x7b, 0x22, 0xf6, - 0xad, 0xf9, 0x81, 0x1c, 0xfa, 0x36, 0x76, 0x8f, 0x60, 0xbe, 0x4d, 0xfd, 0x88, 0xb7, 0xed, 0x5c, - 0x59, 0x7b, 0x84, 0x27, 0xf2, 0x7f, 0x6a, 0xad, 0xe1, 0xf1, 0x7e, 0x76, 0xfd, 0x66, 0xba, 0xf9, - 0x9b, 0x4e, 0xd8, 0x08, 0x45, 0x83, 0x86, 0xe7, 0xfd, 0x50, 0x0e, 0x58, 0x6f, 0x5d, 0xfb, 0x81, - 0xf0, 0xe4, 0x8e, 0xa6, 0x3a, 0x51, 0x7f, 0xdc, 0xe4, 0x99, 0x7c, 0x44, 0x93, 0x6f, 0xe1, 0x4a, - 0x36, 0x07, 0xbc, 0x18, 0x9a, 0xaa, 0x5a, 0x9c, 0x2b, 0xcd, 0x57, 0x16, 0xff, 0x1b, 0x79, 0x45, - 0xea, 0xd0, 0xec, 0xc1, 0x6b, 0x53, 0x1f, 0x9e, 0x55, 0x06, 0xb2, 0xac, 0x63, 0x91, 0x87, 0x95, - 0x75, 0x0f, 0x63, 0x26, 0xda, 0x3e, 0x37, 0xb7, 0xb1, 0x5a, 0x1a, 0xe9, 0xb6, 0x9e, 0x0b, 0x4c, - 0x2a, 0x03, 0xfa, 0xd5, 0x7f, 0x8e, 0xef, 0x4f, 0xe3, 0x29, 0x3c, 0x99, 0x67, 0xe7, 0x24, 0xdc, - 0x5f, 0x7b, 0x85, 0x8e, 0x4e, 0x49, 0xe1, 0xe4, 0x94, 0x14, 0xce, 0x4e, 0x09, 0x7a, 0x9e, 0x12, - 0xf4, 0x3e, 0x25, 0xe8, 0x4b, 0x4a, 0xd0, 0x51, 0x4a, 0xd0, 0x49, 0x4a, 0xd0, 0xb7, 0x94, 0xa0, - 0xef, 0x29, 0x29, 0x9c, 0xa5, 0x04, 0xbd, 0xe9, 0x92, 0xc2, 0xa7, 0x2e, 0x41, 0x47, 0x5d, 0x52, - 0x38, 0xe9, 0x92, 0xc2, 0x93, 0xed, 0x40, 0xc8, 0x56, 0xe0, 0x74, 0x44, 0xa8, 0x21, 0x8e, 0xa9, - 0x93, 0x28, 0xd7, 0x2c, 0x9a, 0x22, 0x8e, 0x6c, 0x19, 0x8b, 0x0e, 0xf7, 0x21, 0xb6, 0xf3, 0xb0, - 0x2b, 0x1b, 0x81, 0x70, 0x61, 0x5f, 0xf7, 0xc7, 0xcb, 0xe5, 0x21, 0xd6, 0x28, 0x9b, 0x19, 0xb3, - 0xf4, 0x33, 0x00, 0x00, 0xff, 0xff, 0xc2, 0xb2, 0xb2, 0x8f, 0x5a, 0x05, 0x00, 0x00, + // 684 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x41, 0x6b, 0x13, 0x4f, + 0x18, 0xc6, 0x33, 0x4d, 0x49, 0xcb, 0xa4, 0xf4, 0x5f, 0xf6, 0x7f, 0x49, 0xab, 0x0e, 0x25, 0xa2, + 0x54, 0x70, 0x77, 0xa1, 0x22, 0xd6, 0x22, 0x0a, 0xad, 0xd0, 0x4b, 0x6b, 0x31, 0xe9, 0xc9, 0xcb, + 0x32, 0x99, 0x7d, 0xb3, 0x1d, 0xb3, 0x9b, 0x19, 0x66, 0x26, 0x69, 0x7b, 0x10, 0xc4, 0xbb, 0xe0, + 0x45, 0xf0, 0x2e, 0x82, 0xf8, 0x29, 0xac, 0x27, 0x8f, 0xa5, 0x07, 0x29, 0x9e, 0xec, 0xe6, 0x22, + 0x78, 0xe9, 0x47, 0x90, 0xec, 0x66, 0xeb, 0xa6, 0x4d, 0xc5, 0x43, 0x4f, 0x99, 0xcd, 0xf3, 0x3c, + 0xbf, 0x7d, 0x77, 0xe6, 0x9d, 0x17, 0xdf, 0xec, 0x82, 0x76, 0xb8, 0x70, 0x35, 0xdb, 0x86, 0x88, + 0xba, 0xad, 0x25, 0xed, 0xb1, 0xb0, 0xa3, 0x0d, 0x28, 0x57, 0x34, 0x9e, 0x03, 0x33, 0x8e, 0x54, + 0xc2, 0x08, 0x6b, 0x36, 0xf5, 0x39, 0xa9, 0xcf, 0xc9, 0xf9, 0xe6, 0xec, 0x80, 0x9b, 0xed, 0x4e, + 0xc3, 0x61, 0x22, 0x72, 0x03, 0x11, 0x08, 0x37, 0x49, 0x34, 0x3a, 0xcd, 0xe4, 0x29, 0x79, 0x48, + 0x56, 0x29, 0x69, 0xee, 0xc6, 0xc5, 0x6f, 0x34, 0x7b, 0x12, 0xf4, 0xc0, 0x76, 0x65, 0xd8, 0x26, + 0xa4, 0xe1, 0xa2, 0x9d, 0x89, 0xb3, 0xc3, 0x62, 0x3e, 0x57, 0x1d, 0x96, 0xba, 0xa0, 0xa1, 0xdd, + 0x1d, 0x8e, 0x57, 0xdf, 0x97, 0x70, 0x69, 0x33, 0xf9, 0x3a, 0xeb, 0x3e, 0x9e, 0x8c, 0xc0, 0x50, + 0x9f, 0x1a, 0x5a, 0x41, 0xf3, 0x68, 0xa1, 0xbc, 0x78, 0xcd, 0x19, 0xfe, 0xd4, 0xd4, 0xb8, 0x01, + 0x86, 0x6e, 0xed, 0x49, 0xa8, 0x9d, 0xda, 0xad, 0x75, 0xfc, 0x9f, 0xde, 0xd3, 0x06, 0x22, 0xef, + 0x94, 0x30, 0x96, 0x10, 0xae, 0x9f, 0x21, 0xd4, 0x13, 0xd7, 0x19, 0xce, 0x74, 0x9a, 0xdd, 0xc8, + 0x68, 0xf7, 0xf0, 0xb8, 0x96, 0xc0, 0x2a, 0xc5, 0x91, 0x88, 0xdc, 0x2e, 0x39, 0x75, 0x09, 0x2c, + 0x41, 0x24, 0x81, 0xe5, 0x6f, 0xe3, 0xaf, 0x1e, 0x95, 0x52, 0xd8, 0x97, 0xfd, 0xca, 0xd8, 0x0c, + 0x3a, 0xdc, 0xaf, 0x7c, 0x28, 0xe2, 0x3a, 0x2e, 0xae, 0x81, 0xb1, 0xd6, 0x9b, 0x77, 0x77, 0x99, + 0x4d, 0xa5, 0xd4, 0x86, 0xb2, 0x96, 0xdd, 0xa0, 0x9a, 0x33, 0x3b, 0x12, 0x6d, 0x6e, 0x84, 0xba, + 0x3d, 0x3f, 0x2c, 0x6a, 0x43, 0xdb, 0x3e, 0x55, 0xfe, 0x1f, 0xbd, 0x0b, 0xda, 0xe6, 0xc2, 0x6e, + 0x2d, 0x69, 0x5b, 0x01, 0xf5, 0x71, 0x0d, 0x4f, 0xd4, 0x40, 0x86, 0x94, 0x81, 0xb5, 0x36, 0x0a, + 0xdc, 0xd1, 0x70, 0x31, 0x35, 0x15, 0x73, 0xc8, 0x1d, 0xc5, 0x0d, 0xe0, 0xa7, 0xb8, 0xb4, 0xaa, + 0x80, 0x9a, 0xcb, 0x45, 0x3e, 0x86, 0x10, 0x2e, 0x13, 0xb9, 0x85, 0xc7, 0xd7, 0xb9, 0xbe, 0xe4, + 0xfd, 0xfc, 0xbe, 0x5f, 0x79, 0x87, 0xf0, 0x5b, 0x84, 0x79, 0xff, 0x24, 0x9d, 0x80, 0x79, 0xc9, + 0x6f, 0x1f, 0xe0, 0xb1, 0x6d, 0xc1, 0x19, 0x38, 0x83, 0x43, 0xf7, 0x76, 0xb8, 0x0f, 0x1e, 0x95, + 0xd2, 0x0b, 0xb9, 0x36, 0xe7, 0xfe, 0xd5, 0xfd, 0x4c, 0x16, 0xa1, 0x2a, 0x10, 0x1e, 0xf3, 0x9d, + 0x50, 0x30, 0x1a, 0x7a, 0xbe, 0x88, 0x28, 0x6f, 0x3b, 0x92, 0x6a, 0xbd, 0x23, 0x94, 0x6f, 0x2d, + 0xe4, 0x6a, 0x18, 0x60, 0xec, 0x7e, 0x82, 0xf9, 0x36, 0xf5, 0x23, 0xde, 0xb6, 0x33, 0x67, 0xf5, + 0x09, 0x9e, 0xcc, 0x5a, 0xcd, 0x5a, 0xc1, 0x13, 0x83, 0xea, 0x06, 0x3d, 0x7e, 0xeb, 0x2f, 0x0d, + 0xba, 0x16, 0x8a, 0x06, 0x0d, 0x4f, 0xdb, 0xb4, 0x14, 0xb0, 0xfe, 0xba, 0xfa, 0x0b, 0xe1, 0xa9, + 0xba, 0xa1, 0xa6, 0xa3, 0xff, 0xf9, 0xee, 0xa5, 0xf6, 0x11, 0x77, 0x6f, 0x03, 0x97, 0xd3, 0xf1, + 0xe4, 0x29, 0x68, 0xea, 0xca, 0xd8, 0x7c, 0x71, 0xa1, 0xbc, 0x78, 0x75, 0xe4, 0xcd, 0xad, 0x41, + 0xb3, 0x1f, 0x5e, 0x99, 0xfe, 0xf4, 0xa2, 0x9c, 0xab, 0xb2, 0x86, 0x45, 0x26, 0x6b, 0xeb, 0x01, + 0xc6, 0x4c, 0xb4, 0x7d, 0x9e, 0x0c, 0x89, 0x4a, 0x71, 0x24, 0x6d, 0x35, 0x33, 0x24, 0xa5, 0xe4, + 0xfc, 0xcb, 0xff, 0x1f, 0x3e, 0x9c, 0xc1, 0xd3, 0x78, 0x2a, 0xab, 0xce, 0xe9, 0x70, 0x7f, 0xe5, + 0x35, 0x3a, 0x38, 0x26, 0x85, 0xa3, 0x63, 0x52, 0x38, 0x39, 0x26, 0xe8, 0x65, 0x4c, 0xd0, 0xc7, + 0x98, 0xa0, 0xaf, 0x31, 0x41, 0x07, 0x31, 0x41, 0x47, 0x31, 0x41, 0x3f, 0x62, 0x82, 0x7e, 0xc6, + 0xa4, 0x70, 0x12, 0x13, 0xf4, 0xa6, 0x47, 0x0a, 0x9f, 0x7b, 0x04, 0x1d, 0xf4, 0x48, 0xe1, 0xa8, + 0x47, 0x0a, 0xcf, 0x36, 0x03, 0x21, 0x5b, 0x81, 0xd3, 0x15, 0xa1, 0x01, 0xa5, 0xa8, 0xd3, 0xd1, + 0x6e, 0xb2, 0x68, 0x0a, 0x15, 0xd9, 0x52, 0x89, 0x2e, 0xf7, 0x41, 0xd9, 0x99, 0xec, 0xca, 0x46, + 0x20, 0x5c, 0xd8, 0x35, 0x83, 0xa9, 0x77, 0x7e, 0xb6, 0x36, 0x4a, 0xc9, 0xe8, 0xbb, 0xf3, 0x3b, + 0x00, 0x00, 0xff, 0xff, 0x7f, 0xb6, 0x16, 0xb8, 0xf1, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/k8s_cluster/public_crudapi.pb.go b/pbgo/extschema/schema/k8s_cluster/public_crudapi.pb.go index 954b3f360..9183b5ac8 100644 --- a/pbgo/extschema/schema/k8s_cluster/public_crudapi.pb.go +++ b/pbgo/extschema/schema/k8s_cluster/public_crudapi.pb.go @@ -1057,108 +1057,109 @@ func init() { } var fileDescriptor_777cf3a6fffa8f05 = []byte{ - // 1605 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x6c, 0x13, 0x47, - 0x17, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb3, 0xcc, 0x07, 0xc1, 0xf1, 0xc7, 0x67, 0xf9, 0x33, - 0x10, 0x42, 0xa8, 0xd7, 0x28, 0xa5, 0x02, 0x22, 0x44, 0xeb, 0x24, 0xeb, 0x28, 0x10, 0x62, 0xb4, - 0x36, 0xa8, 0xad, 0xaa, 0xae, 0xd6, 0xeb, 0xb1, 0x59, 0x62, 0x7b, 0xb7, 0x3b, 0x63, 0x87, 0xa8, - 0x8d, 0x54, 0xd1, 0x53, 0x6f, 0xad, 0x7a, 0x6a, 0xd5, 0x43, 0x2f, 0x95, 0x2a, 0xf5, 0x5e, 0x21, - 0xe5, 0x50, 0xa4, 0x1e, 0x40, 0x54, 0xaa, 0x50, 0xb9, 0x70, 0x6a, 0x8b, 0xd3, 0x03, 0x47, 0xd4, - 0x4b, 0xaf, 0xd5, 0xce, 0xec, 0x1a, 0xdb, 0xb1, 0x13, 0x3b, 0xcd, 0xc9, 0x3b, 0xf3, 0xde, 0xef, - 0xe7, 0xf7, 0x9b, 0x79, 0xef, 0xf9, 0x79, 0xa1, 0x58, 0xc7, 0x44, 0xd4, 0x8d, 0x24, 0xd1, 0x6e, - 0xe3, 0x8a, 0x9a, 0x5c, 0xbb, 0x48, 0x14, 0xad, 0x5c, 0x23, 0x14, 0x5b, 0x49, 0xb3, 0x96, 0x2f, - 0xeb, 0x9a, 0xa2, 0x59, 0xb5, 0x82, 0x6a, 0xea, 0xa2, 0x69, 0x19, 0xd4, 0x40, 0x93, 0xdc, 0x5f, - 0xe4, 0xfe, 0x62, 0x8b, 0x7f, 0x24, 0x51, 0xd2, 0xe9, 0xed, 0x5a, 0x5e, 0xd4, 0x8c, 0x4a, 0xb2, - 0x64, 0x94, 0x8c, 0x24, 0x43, 0xe4, 0x6b, 0x45, 0xb6, 0x62, 0x0b, 0xf6, 0xc4, 0x99, 0x22, 0xc7, - 0x4b, 0x86, 0x51, 0x2a, 0xe3, 0xa4, 0x6a, 0xea, 0x49, 0xb5, 0x5a, 0x35, 0xa8, 0x4a, 0x75, 0xa3, - 0x4a, 0x1c, 0xeb, 0x7f, 0x1d, 0x6b, 0x93, 0x03, 0x57, 0x4c, 0xba, 0xe1, 0x18, 0x23, 0xed, 0x41, - 0x63, 0xcb, 0x32, 0x2c, 0x17, 0x38, 0xd5, 0x5b, 0x90, 0x91, 0xbf, 0x83, 0x35, 0xea, 0xf8, 0x9d, - 0xea, 0xed, 0x47, 0x37, 0x4c, 0xdc, 0x8c, 0xa3, 0xdd, 0xcd, 0x30, 0x5b, 0x83, 0x9c, 0x6c, 0x37, - 0xb6, 0xe2, 0xe2, 0xed, 0xa6, 0x3a, 0x26, 0xb8, 0x5a, 0xef, 0x80, 0xc7, 0x3a, 0x7c, 0x74, 0xbc, - 0xae, 0xb4, 0x79, 0xc4, 0xbf, 0x07, 0x70, 0x74, 0xc1, 0xc2, 0x2a, 0xc5, 0x32, 0xfe, 0xa0, 0x86, - 0x09, 0x45, 0x6f, 0xc2, 0x40, 0x05, 0x53, 0xb5, 0xa0, 0x52, 0x35, 0x0c, 0x62, 0x60, 0x3a, 0x34, - 0x7b, 0x42, 0x6c, 0xbf, 0x92, 0x0c, 0x53, 0xc9, 0x51, 0xd7, 0x31, 0x55, 0x73, 0x1b, 0x26, 0x96, - 0x9b, 0x20, 0xb4, 0x0a, 0x7d, 0xc4, 0xc4, 0x5a, 0xd8, 0xc3, 0xc0, 0x67, 0xc4, 0x9e, 0xf7, 0x29, - 0x72, 0x8a, 0xac, 0x89, 0x35, 0x9b, 0x62, 0x7e, 0xfc, 0xab, 0xcd, 0x11, 0x1b, 0x29, 0x96, 0x34, - 0xc5, 0xfe, 0x94, 0x19, 0xcf, 0x5c, 0xf0, 0xf1, 0x15, 0x3f, 0xff, 0xca, 0xf8, 0xdf, 0x00, 0x8e, - 0xb9, 0xd1, 0x12, 0xd3, 0xa8, 0x12, 0x8c, 0x2e, 0xef, 0x08, 0x37, 0xd6, 0x35, 0xdc, 0x25, 0x4c, - 0xbb, 0xc4, 0x9a, 0x81, 0xe3, 0x64, 0x83, 0x50, 0x5c, 0x51, 0x9a, 0x24, 0x5e, 0x46, 0x32, 0xd5, - 0x41, 0x92, 0x65, 0x5e, 0x3b, 0xa9, 0xc6, 0x38, 0xfc, 0xba, 0x4b, 0x78, 0xad, 0x4d, 0xfc, 0xd4, - 0x2e, 0xe2, 0x97, 0x30, 0x1d, 0x40, 0xf9, 0xef, 0x00, 0x8e, 0xc9, 0xd8, 0x2c, 0xab, 0x5a, 0xf3, - 0xa2, 0xde, 0xda, 0xa1, 0xfc, 0x64, 0x57, 0xe5, 0x0e, 0xac, 0xab, 0xfa, 0xd6, 0x60, 0x67, 0x76, - 0x09, 0xd6, 0xe1, 0xd8, 0x23, 0x60, 0x94, 0x84, 0x82, 0x85, 0x89, 0x51, 0xb3, 0x34, 0xac, 0xd4, - 0xb1, 0x45, 0x74, 0xa3, 0xca, 0xce, 0x33, 0x38, 0xef, 0x7b, 0xb1, 0x05, 0x80, 0x3c, 0xee, 0x5a, - 0x6f, 0x71, 0x63, 0xab, 0xc2, 0xc3, 0x70, 0xbc, 0x29, 0x90, 0xdf, 0x6d, 0xfc, 0x4b, 0x00, 0xe1, - 0x12, 0xa6, 0xae, 0xe0, 0xe3, 0x30, 0x58, 0x55, 0x2b, 0x98, 0x98, 0xaa, 0x86, 0x99, 0xe2, 0xa0, - 0xfc, 0x6a, 0x03, 0x21, 0xe8, 0xb3, 0x17, 0x4c, 0x4c, 0x50, 0x66, 0xcf, 0xe8, 0x1d, 0x68, 0x7f, - 0x23, 0x23, 0x53, 0x8a, 0x86, 0x55, 0x51, 0x29, 0x0b, 0x67, 0x6c, 0xf6, 0xdc, 0xee, 0x17, 0xe3, - 0x46, 0x90, 0x66, 0x98, 0x05, 0xa3, 0x80, 0xe5, 0x31, 0xab, 0x6d, 0x2f, 0xfe, 0xa9, 0x1f, 0x86, - 0x5a, 0x3c, 0xd1, 0x32, 0x0c, 0x69, 0x2c, 0x33, 0xd9, 0x17, 0x39, 0x47, 0x3a, 0xbd, 0x67, 0xf2, - 0x3b, 0xda, 0x64, 0xc8, 0xc1, 0x36, 0x39, 0x5a, 0x81, 0x23, 0x16, 0x3f, 0x09, 0xce, 0xe5, 0xdd, - 0xb3, 0x90, 0xda, 0x33, 0x43, 0x0e, 0x39, 0x70, 0xc6, 0xd6, 0xed, 0x4e, 0x7c, 0xbb, 0xdc, 0x49, - 0x5b, 0x45, 0x0d, 0x1f, 0x44, 0x45, 0x1d, 0x3a, 0x90, 0x8a, 0xf2, 0x1f, 0x40, 0x45, 0xa1, 0x34, - 0xf4, 0x13, 0xaa, 0xd2, 0x1a, 0x09, 0x7f, 0xf3, 0x35, 0x88, 0x79, 0xa7, 0x43, 0xb3, 0xa7, 0x77, - 0x21, 0xcc, 0x32, 0x57, 0x1e, 0xe2, 0xbc, 0xf7, 0xc1, 0x26, 0x90, 0x1d, 0x34, 0x5a, 0x86, 0x87, - 0x2d, 0x5c, 0xc4, 0x96, 0xa5, 0x57, 0x4b, 0x0a, 0xef, 0xfa, 0x24, 0x1c, 0x60, 0x84, 0xc7, 0x7b, - 0x14, 0x61, 0x91, 0xa9, 0x13, 0x9a, 0x30, 0xbe, 0x4f, 0xd0, 0x2d, 0x18, 0x2e, 0xe0, 0x32, 0xa6, - 0xb8, 0xa0, 0x70, 0x1b, 0x2e, 0x34, 0x19, 0x83, 0x7d, 0x30, 0x4e, 0x38, 0x68, 0xd9, 0x01, 0xbb, - 0xbc, 0x6f, 0xc3, 0xc9, 0x82, 0x4e, 0xd4, 0x7c, 0xb9, 0x1b, 0x31, 0xec, 0x83, 0xf8, 0x98, 0x0b, - 0xef, 0x60, 0x6e, 0x29, 0xda, 0xab, 0xbe, 0x00, 0x10, 0x3c, 0xf1, 0x6f, 0x01, 0x0c, 0xad, 0xe8, - 0xa4, 0xcf, 0x42, 0xfd, 0x3f, 0x1c, 0x29, 0xab, 0x79, 0x5c, 0x56, 0x8a, 0x7a, 0x99, 0x62, 0xcb, - 0x29, 0xd8, 0x10, 0xdb, 0x4b, 0xb3, 0x2d, 0x74, 0x02, 0x8e, 0x5a, 0xd8, 0x34, 0x2c, 0xaa, 0x14, - 0x75, 0x5c, 0x2e, 0x90, 0xb0, 0x37, 0xe6, 0x9d, 0x0e, 0xca, 0x23, 0x7c, 0x33, 0xcd, 0xf6, 0xd0, - 0x39, 0x78, 0xc4, 0x71, 0xe2, 0x97, 0xe2, 0xfa, 0xfa, 0x98, 0x2f, 0xe2, 0x36, 0x7e, 0x85, 0x1c, - 0x11, 0xbf, 0xef, 0x87, 0x02, 0x8f, 0x93, 0x17, 0xed, 0x32, 0xc5, 0x15, 0x34, 0x01, 0xfd, 0x14, - 0x57, 0xd5, 0x2a, 0x65, 0x19, 0x16, 0x94, 0x9d, 0xd5, 0x3e, 0xba, 0x8d, 0x00, 0xbd, 0x35, 0xbd, - 0xc0, 0x1b, 0x9e, 0x6c, 0x3f, 0xa2, 0x18, 0x0c, 0x15, 0x30, 0xd1, 0x2c, 0x9d, 0xfd, 0xe6, 0x86, - 0x43, 0x5c, 0x69, 0xcb, 0x16, 0x8a, 0xc0, 0x80, 0x7b, 0xcc, 0xe1, 0x91, 0x18, 0x98, 0x0e, 0xc8, - 0xcd, 0x35, 0xca, 0x40, 0x3f, 0x3b, 0x14, 0x2e, 0x29, 0x34, 0x7b, 0x61, 0x97, 0x54, 0xed, 0x94, - 0x25, 0xae, 0x30, 0xa4, 0x54, 0xa5, 0xd6, 0x86, 0xec, 0xd0, 0xa0, 0xf7, 0x61, 0xa8, 0x65, 0x0e, - 0x72, 0x92, 0xe0, 0xf2, 0x20, 0xac, 0xa9, 0x57, 0x70, 0x4e, 0xdd, 0x4a, 0x88, 0x2e, 0x41, 0x68, - 0xac, 0x57, 0xb1, 0xa5, 0xd8, 0x83, 0x46, 0x38, 0xc8, 0x0a, 0x36, 0xd2, 0x41, 0x7f, 0x4b, 0xc7, - 0xeb, 0x6e, 0x86, 0x05, 0x99, 0xb7, 0xbd, 0xd3, 0xd6, 0x74, 0x46, 0x0f, 0xa2, 0xe9, 0x8c, 0xfd, - 0xab, 0xa6, 0x93, 0x82, 0x81, 0x12, 0xa6, 0xac, 0x73, 0xf4, 0x68, 0x5f, 0x3d, 0x1a, 0x8f, 0x7c, - 0xa8, 0xc4, 0x17, 0xe8, 0x1a, 0x84, 0x4e, 0x5e, 0x12, 0x4c, 0x9d, 0xde, 0x30, 0x58, 0xb3, 0x09, - 0x72, 0x7c, 0x16, 0xd3, 0xc8, 0x25, 0x18, 0x6a, 0xb9, 0x50, 0x3b, 0xd3, 0xd6, 0xf0, 0x86, 0x93, - 0x95, 0xf6, 0x23, 0x3a, 0x02, 0x87, 0xeb, 0x6a, 0xb9, 0xe6, 0x26, 0x24, 0x5f, 0xcc, 0x79, 0x2e, - 0x82, 0xc8, 0x15, 0x28, 0x74, 0xde, 0xda, 0x20, 0xf8, 0xab, 0xbe, 0xc0, 0xb0, 0xe0, 0x8f, 0x7f, - 0x02, 0xe0, 0x48, 0x6b, 0x36, 0xa0, 0x14, 0x1c, 0xd6, 0x29, 0xae, 0x90, 0x30, 0x6f, 0xa3, 0x67, - 0x07, 0xc8, 0x22, 0x99, 0x23, 0xd1, 0x39, 0xe8, 0xe7, 0x83, 0x75, 0xd8, 0xc3, 0x38, 0xc2, 0x1d, - 0x1c, 0x92, 0x6d, 0x64, 0x87, 0xea, 0xf8, 0xc5, 0xd7, 0xe0, 0xe8, 0x22, 0xeb, 0x76, 0xfb, 0x1f, - 0x09, 0xa6, 0xa1, 0x50, 0x54, 0xf5, 0xb2, 0xa2, 0x17, 0x9b, 0x5d, 0x91, 0x55, 0x6c, 0x40, 0x1e, - 0xb3, 0xf7, 0x97, 0x8b, 0x6e, 0xb7, 0x9b, 0xf9, 0x0b, 0xc0, 0xa3, 0x5d, 0x67, 0x01, 0x14, 0x81, - 0x13, 0x4b, 0x52, 0x4e, 0x91, 0xb3, 0x37, 0x94, 0x74, 0x46, 0xbe, 0x9e, 0xca, 0x29, 0x8b, 0x52, - 0x3a, 0x75, 0x73, 0x25, 0x27, 0x0c, 0xa1, 0xff, 0xc1, 0xc9, 0x0e, 0x5b, 0x3a, 0x23, 0x2b, 0x0b, - 0xb2, 0x94, 0xca, 0x49, 0x02, 0x40, 0x51, 0x18, 0xe9, 0x62, 0x96, 0xa5, 0x1b, 0x2b, 0xa9, 0x05, - 0x49, 0xf0, 0xa0, 0x49, 0x78, 0xb4, 0xc3, 0x9e, 0xcd, 0xa5, 0x72, 0x37, 0xb3, 0x82, 0x17, 0x1d, - 0x83, 0xff, 0xe9, 0x30, 0xc9, 0x52, 0x6a, 0x51, 0xf0, 0xa1, 0x93, 0x30, 0xb6, 0xc3, 0x90, 0x96, - 0x64, 0x79, 0x79, 0x75, 0x49, 0xc9, 0xcc, 0x5f, 0x95, 0x16, 0x72, 0x59, 0x61, 0xb8, 0x8b, 0xd7, - 0xbc, 0x9c, 0xb9, 0x26, 0xad, 0x72, 0x67, 0x69, 0x75, 0x41, 0xca, 0x0a, 0xfe, 0xd9, 0xa7, 0x01, - 0xe8, 0x4d, 0xdd, 0x58, 0x46, 0x3f, 0x03, 0xe8, 0xe7, 0x13, 0x0a, 0xea, 0x7b, 0x88, 0x89, 0x9c, - 0xe9, 0xc3, 0xd3, 0x19, 0xed, 0xca, 0x8d, 0x87, 0xe1, 0x33, 0xc5, 0x37, 0xee, 0x6a, 0x09, 0xd5, - 0x34, 0x09, 0x55, 0xb5, 0xb5, 0x44, 0x5e, 0x25, 0xba, 0x96, 0xa8, 0x11, 0x6c, 0xbd, 0x56, 0xc7, - 0x24, 0xa1, 0x1b, 0x89, 0xb5, 0x8b, 0x24, 0xb1, 0x6e, 0xe9, 0x14, 0xdf, 0x7b, 0xfa, 0xe7, 0x17, - 0x9e, 0x4b, 0xf1, 0xf3, 0xce, 0x3f, 0xc6, 0x64, 0xf3, 0x8a, 0x49, 0xf2, 0x43, 0xb7, 0xe2, 0xc5, - 0xe6, 0xe6, 0x66, 0xeb, 0x7f, 0x2d, 0x32, 0x07, 0x66, 0xd0, 0x4f, 0x00, 0x7a, 0x97, 0x30, 0x45, - 0xa7, 0xf6, 0x1a, 0xfb, 0xb8, 0x8e, 0xa9, 0xfe, 0xa6, 0xc3, 0x78, 0xe5, 0xd1, 0x7d, 0x0f, 0x68, - 0x3c, 0x0c, 0x9f, 0xed, 0x26, 0xa4, 0x62, 0x54, 0x75, 0x6a, 0xb4, 0x69, 0xb1, 0xb0, 0x5a, 0x60, - 0x52, 0xce, 0xa3, 0xd9, 0x6e, 0x52, 0x7a, 0x28, 0xe0, 0x86, 0x4d, 0xf4, 0x23, 0x80, 0x3e, 0xbb, - 0x96, 0xd0, 0xd4, 0x9e, 0xc5, 0xc6, 0x75, 0x9c, 0xee, 0xb3, 0x28, 0xe3, 0xc5, 0xfd, 0x0a, 0x49, - 0xa0, 0xb3, 0x03, 0x08, 0x41, 0xbf, 0x01, 0x78, 0xc8, 0x99, 0x55, 0x51, 0xff, 0xf3, 0x6c, 0x64, - 0xa6, 0x1f, 0x57, 0x47, 0xca, 0x47, 0x83, 0x27, 0xd6, 0x72, 0x64, 0x71, 0x3f, 0x89, 0xd5, 0xe1, - 0xb1, 0x69, 0x27, 0xda, 0x0f, 0x00, 0xfa, 0x79, 0x87, 0xda, 0xb5, 0x6c, 0xda, 0x9a, 0x58, 0x64, - 0x42, 0xe4, 0xaf, 0x22, 0x44, 0xf7, 0x55, 0x84, 0x28, 0x55, 0x4c, 0xba, 0x11, 0xbf, 0x33, 0xb8, - 0x94, 0x0b, 0x33, 0xfb, 0x48, 0xac, 0x39, 0x30, 0x13, 0x79, 0xef, 0xc1, 0x16, 0xf0, 0xfc, 0xba, - 0x05, 0x62, 0xbd, 0x83, 0xe6, 0x3f, 0x4d, 0xcf, 0xb6, 0x00, 0x68, 0x6c, 0x81, 0xa9, 0xfe, 0x7e, - 0xc8, 0xee, 0xfd, 0x12, 0xf6, 0x08, 0x60, 0xfe, 0x73, 0xf0, 0xf8, 0xca, 0xf0, 0x82, 0x7c, 0x73, - 0x71, 0xe5, 0xc9, 0xf3, 0xe8, 0xd0, 0xb3, 0xe7, 0xd1, 0xa1, 0x97, 0xcf, 0xa3, 0xe0, 0xe3, 0x46, - 0x14, 0x7c, 0xd7, 0x88, 0x82, 0x47, 0x8d, 0x28, 0x78, 0xd2, 0x88, 0x82, 0x3f, 0x1a, 0x51, 0xf0, - 0xa2, 0x11, 0x1d, 0x7a, 0xd9, 0x88, 0x82, 0xcf, 0xb6, 0xa3, 0x43, 0x0f, 0xb6, 0xa3, 0xe0, 0xc9, - 0x76, 0x74, 0xe8, 0xd9, 0x76, 0x74, 0xe8, 0xdd, 0x4c, 0xc9, 0x30, 0xd7, 0x4a, 0x62, 0xdd, 0xb0, - 0x07, 0x44, 0x4b, 0x15, 0x6b, 0x24, 0xc9, 0x1e, 0xec, 0x7f, 0x48, 0x09, 0xd3, 0x32, 0xea, 0x7a, - 0x01, 0x5b, 0x09, 0xd7, 0x9c, 0x34, 0xf3, 0x25, 0x23, 0x89, 0xef, 0x52, 0xe7, 0xcd, 0xc7, 0xce, - 0x77, 0x30, 0x79, 0x3f, 0x3b, 0xed, 0xd7, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xa3, 0x57, 0xa0, - 0x2a, 0xa0, 0x12, 0x00, 0x00, + // 1621 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x63, 0x3b, 0xdf, 0x36, 0x75, 0xfc, 0x2d, 0x96, 0x71, + 0xdb, 0x34, 0x4d, 0xf1, 0xba, 0x0a, 0x45, 0x6d, 0xa3, 0xaa, 0xe0, 0x24, 0xeb, 0x28, 0x69, 0x1a, + 0x57, 0x6b, 0xb7, 0x02, 0x84, 0x58, 0xad, 0xd7, 0x63, 0x77, 0x89, 0xed, 0x5d, 0x76, 0xc6, 0x4e, + 0x23, 0x14, 0x09, 0x15, 0x81, 0x40, 0xe2, 0x00, 0xe2, 0x02, 0x88, 0x03, 0x17, 0x24, 0x24, 0xfe, + 0x81, 0x4a, 0xb9, 0xf4, 0x46, 0xd5, 0x03, 0xaa, 0xe8, 0xa5, 0xb7, 0x52, 0x87, 0x43, 0xc5, 0xa9, + 0xe2, 0xc2, 0x81, 0x0b, 0xda, 0x99, 0x5d, 0xd7, 0x76, 0xec, 0xc4, 0x09, 0xe1, 0xe4, 0xdd, 0x79, + 0xef, 0xf3, 0xf1, 0xfb, 0xec, 0xfb, 0xe1, 0xe7, 0x85, 0x62, 0x1d, 0x13, 0x51, 0x37, 0x92, 0x44, + 0xbb, 0x85, 0x2b, 0x6a, 0x72, 0xf5, 0x22, 0x51, 0xb4, 0x72, 0x8d, 0x50, 0x6c, 0x25, 0xcd, 0x5a, + 0xbe, 0xac, 0x6b, 0x8a, 0x66, 0xd5, 0x0a, 0xaa, 0xa9, 0x8b, 0xa6, 0x65, 0x50, 0x03, 0x8d, 0x73, + 0x7f, 0x91, 0xfb, 0x8b, 0x2d, 0xfe, 0x91, 0x44, 0x49, 0xa7, 0xb7, 0x6a, 0x79, 0x51, 0x33, 0x2a, + 0xc9, 0x92, 0x51, 0x32, 0x92, 0x0c, 0x91, 0xaf, 0x15, 0xd9, 0x1d, 0xbb, 0x61, 0x57, 0x9c, 0x29, + 0x72, 0xbc, 0x64, 0x18, 0xa5, 0x32, 0x4e, 0xaa, 0xa6, 0x9e, 0x54, 0xab, 0x55, 0x83, 0xaa, 0x54, + 0x37, 0xaa, 0xc4, 0xb1, 0xfe, 0xdf, 0xb1, 0x36, 0x39, 0x70, 0xc5, 0xa4, 0xeb, 0x8e, 0x31, 0xd2, + 0x1e, 0x34, 0xb6, 0x2c, 0xc3, 0x72, 0x81, 0x13, 0xbd, 0x05, 0x19, 0xf9, 0xf7, 0xb0, 0x46, 0x1d, + 0xbf, 0x53, 0xbd, 0xfd, 0xe8, 0xba, 0x89, 0x9b, 0x71, 0xb4, 0xbb, 0x19, 0x66, 0x6b, 0x90, 0xe3, + 0xed, 0xc6, 0x56, 0x5c, 0xbc, 0xdd, 0x54, 0xc7, 0x04, 0x57, 0xeb, 0x1d, 0xf0, 0x58, 0x87, 0x8f, + 0x8e, 0xd7, 0x94, 0x36, 0x8f, 0xf8, 0x4f, 0x00, 0x0e, 0xcf, 0x59, 0x58, 0xa5, 0x58, 0xc6, 0xef, + 0xd7, 0x30, 0xa1, 0xe8, 0x75, 0x18, 0xa8, 0x60, 0xaa, 0x16, 0x54, 0xaa, 0x86, 0x41, 0x0c, 0x4c, + 0x86, 0xa6, 0x4f, 0x88, 0xed, 0x29, 0xc9, 0x30, 0x95, 0x1c, 0x75, 0x0d, 0x53, 0x35, 0xb7, 0x6e, + 0x62, 0xb9, 0x09, 0x42, 0x2b, 0xd0, 0x47, 0x4c, 0xac, 0x85, 0x3d, 0x0c, 0x7c, 0x46, 0xec, 0x99, + 0x4f, 0x91, 0x53, 0x64, 0x4d, 0xac, 0xd9, 0x14, 0xb3, 0xa3, 0xdf, 0x6e, 0x0c, 0xd9, 0x48, 0xb1, + 0xa4, 0x29, 0xf6, 0xa7, 0xcc, 0x78, 0x66, 0x82, 0x0f, 0xae, 0xf8, 0xf9, 0x57, 0xc6, 0xff, 0x02, + 0x70, 0xc4, 0x8d, 0x96, 0x98, 0x46, 0x95, 0x60, 0x74, 0x79, 0x5b, 0xb8, 0xb1, 0xae, 0xe1, 0x2e, + 0x60, 0xda, 0x25, 0xd6, 0x0c, 0x1c, 0x25, 0xeb, 0x84, 0xe2, 0x8a, 0xd2, 0x24, 0xf1, 0x32, 0x92, + 0x89, 0x0e, 0x92, 0x2c, 0xf3, 0xda, 0x4e, 0x35, 0xc2, 0xe1, 0xd7, 0x5c, 0xc2, 0xab, 0x6d, 0xe2, + 0x27, 0x76, 0x10, 0xbf, 0x80, 0xe9, 0x1e, 0x94, 0x3f, 0x01, 0x70, 0x44, 0xc6, 0x66, 0x59, 0xd5, + 0x9a, 0x89, 0x7a, 0x63, 0x9b, 0xf2, 0x93, 0x5d, 0x95, 0x3b, 0xb0, 0xae, 0xea, 0x5b, 0x83, 0x9d, + 0xda, 0x21, 0x58, 0x87, 0x63, 0x97, 0x80, 0x51, 0x12, 0x0a, 0x16, 0x26, 0x46, 0xcd, 0xd2, 0xb0, + 0x52, 0xc7, 0x16, 0xd1, 0x8d, 0x2a, 0x7b, 0x9e, 0xc1, 0x59, 0xdf, 0xb3, 0x4d, 0x00, 0xe4, 0x51, + 0xd7, 0x7a, 0x93, 0x1b, 0x5b, 0x15, 0x1e, 0x86, 0xa3, 0x4d, 0x81, 0x3c, 0xb7, 0xf1, 0x6f, 0x00, + 0x84, 0x0b, 0x98, 0xba, 0x82, 0x8f, 0xc3, 0x60, 0x55, 0xad, 0x60, 0x62, 0xaa, 0x1a, 0x66, 0x8a, + 0x83, 0xf2, 0x8b, 0x03, 0x84, 0xa0, 0xcf, 0xbe, 0x61, 0x62, 0x82, 0x32, 0xbb, 0x46, 0x6f, 0x41, + 0xfb, 0x1b, 0x19, 0x99, 0x52, 0x34, 0xac, 0x8a, 0x4a, 0x59, 0x38, 0x23, 0xd3, 0xe7, 0x76, 0x4e, + 0x8c, 0x1b, 0x41, 0x9a, 0x61, 0xe6, 0x8c, 0x02, 0x96, 0x47, 0xac, 0xb6, 0xb3, 0xf8, 0x67, 0x7e, + 0x18, 0x6a, 0xf1, 0x44, 0x8b, 0x30, 0xa4, 0xb1, 0xca, 0x64, 0x5f, 0xe4, 0x3c, 0xd2, 0xc9, 0x5d, + 0x8b, 0xdf, 0xd1, 0x26, 0x43, 0x0e, 0xb6, 0xc9, 0xd1, 0x32, 0x1c, 0xb2, 0xf8, 0x93, 0xe0, 0x5c, + 0xde, 0x5d, 0x1b, 0xa9, 0xbd, 0x32, 0xe4, 0x90, 0x03, 0x67, 0x6c, 0xdd, 0x72, 0xe2, 0xdb, 0x21, + 0x27, 0x6d, 0x1d, 0x35, 0x78, 0x10, 0x1d, 0x75, 0xe8, 0x40, 0x3a, 0xca, 0x7f, 0x00, 0x1d, 0x85, + 0xd2, 0xd0, 0x4f, 0xa8, 0x4a, 0x6b, 0x24, 0xfc, 0xfd, 0x77, 0x20, 0xe6, 0x9d, 0x0c, 0x4d, 0x9f, + 0xde, 0x81, 0x30, 0xcb, 0x5c, 0x79, 0x88, 0xb3, 0xde, 0x7b, 0x1b, 0x40, 0x76, 0xd0, 0x68, 0x11, + 0x1e, 0xb6, 0x70, 0x11, 0x5b, 0x96, 0x5e, 0x2d, 0x29, 0x7c, 0xea, 0x93, 0x70, 0x80, 0x11, 0x1e, + 0xef, 0xd1, 0x84, 0x45, 0xa6, 0x4e, 0x68, 0xc2, 0xf8, 0x39, 0x41, 0x37, 0x61, 0xb8, 0x80, 0xcb, + 0x98, 0xe2, 0x82, 0xc2, 0x6d, 0xb8, 0xd0, 0x64, 0x0c, 0xf6, 0xc1, 0x38, 0xe6, 0xa0, 0x65, 0x07, + 0xec, 0xf2, 0xbe, 0x09, 0xc7, 0x0b, 0x3a, 0x51, 0xf3, 0xe5, 0x6e, 0xc4, 0xb0, 0x0f, 0xe2, 0x63, + 0x2e, 0xbc, 0x83, 0xb9, 0xa5, 0x69, 0x97, 0x7c, 0x01, 0x20, 0x78, 0xe2, 0x3f, 0x00, 0x18, 0x5a, + 0xd6, 0x49, 0x9f, 0x8d, 0xfa, 0x32, 0x1c, 0x2a, 0xab, 0x79, 0x5c, 0x56, 0x8a, 0x7a, 0x99, 0x62, + 0xcb, 0x69, 0xd8, 0x10, 0x3b, 0x4b, 0xb3, 0x23, 0x74, 0x02, 0x0e, 0x5b, 0xd8, 0x34, 0x2c, 0xaa, + 0x14, 0x75, 0x5c, 0x2e, 0x90, 0xb0, 0x37, 0xe6, 0x9d, 0x0c, 0xca, 0x43, 0xfc, 0x30, 0xcd, 0xce, + 0xd0, 0x39, 0x78, 0xc4, 0x71, 0xe2, 0x49, 0x71, 0x7d, 0x7d, 0xcc, 0x17, 0x71, 0x1b, 0x4f, 0x21, + 0x47, 0xc4, 0xef, 0xfa, 0xa1, 0xc0, 0xe3, 0xe4, 0x4d, 0xbb, 0x48, 0x71, 0x05, 0x8d, 0x41, 0x3f, + 0xc5, 0x55, 0xb5, 0x4a, 0x59, 0x85, 0x05, 0x65, 0xe7, 0x6e, 0x1f, 0xd3, 0x46, 0x80, 0xde, 0x9a, + 0x5e, 0xe0, 0x03, 0x4f, 0xb6, 0x2f, 0x51, 0x0c, 0x86, 0x0a, 0x98, 0x68, 0x96, 0xce, 0x7e, 0x73, + 0xc3, 0x21, 0xae, 0xb4, 0xe5, 0x08, 0x45, 0x60, 0xc0, 0x7d, 0xcc, 0xe1, 0xa1, 0x18, 0x98, 0x0c, + 0xc8, 0xcd, 0x7b, 0x94, 0x81, 0x7e, 0xf6, 0x50, 0xb8, 0xa4, 0xd0, 0xf4, 0x85, 0x1d, 0x4a, 0xb5, + 0x53, 0x96, 0xb8, 0xcc, 0x90, 0x52, 0x95, 0x5a, 0xeb, 0xb2, 0x43, 0x83, 0xde, 0x85, 0xa1, 0x96, + 0x3d, 0xc8, 0x29, 0x82, 0xcb, 0x7b, 0x61, 0x4d, 0xbd, 0x80, 0x73, 0xea, 0x56, 0x42, 0x74, 0x09, + 0x42, 0x63, 0xad, 0x8a, 0x2d, 0xc5, 0x5e, 0x34, 0xc2, 0x41, 0xd6, 0xb0, 0x91, 0x0e, 0xfa, 0x9b, + 0x3a, 0x5e, 0x73, 0x2b, 0x2c, 0xc8, 0xbc, 0xed, 0x93, 0xb6, 0xa1, 0x33, 0x7c, 0x10, 0x43, 0x67, + 0xe4, 0x5f, 0x0d, 0x9d, 0x14, 0x0c, 0x94, 0x30, 0x65, 0x93, 0xa3, 0xc7, 0xf8, 0xea, 0x31, 0x78, + 0xe4, 0x43, 0x25, 0x7e, 0x83, 0xae, 0x42, 0xe8, 0xd4, 0x25, 0xc1, 0xd4, 0x99, 0x0d, 0x7b, 0x1b, + 0x36, 0x41, 0x8e, 0xcf, 0x62, 0x1a, 0xb9, 0x04, 0x43, 0x2d, 0x09, 0xb5, 0x2b, 0x6d, 0x15, 0xaf, + 0x3b, 0x55, 0x69, 0x5f, 0xa2, 0x23, 0x70, 0xb0, 0xae, 0x96, 0x6b, 0x6e, 0x41, 0xf2, 0x9b, 0x19, + 0xcf, 0x45, 0x10, 0xb9, 0x02, 0x85, 0xce, 0xac, 0xed, 0x05, 0xbf, 0xe4, 0x0b, 0x0c, 0x0a, 0xfe, + 0xf8, 0x47, 0x00, 0x0e, 0xb5, 0x56, 0x03, 0x4a, 0xc1, 0x41, 0x9d, 0xe2, 0x0a, 0x09, 0xf3, 0x31, + 0x7a, 0x76, 0x0f, 0x55, 0x24, 0x73, 0x24, 0x3a, 0x07, 0xfd, 0x7c, 0xb1, 0x0e, 0x7b, 0x18, 0x47, + 0xb8, 0x83, 0x43, 0xb2, 0x8d, 0xec, 0xa1, 0x3a, 0x7e, 0xf1, 0x55, 0x38, 0x3c, 0xcf, 0xa6, 0xdd, + 0xfe, 0x57, 0x82, 0x49, 0x28, 0x14, 0x55, 0xbd, 0xac, 0xe8, 0xc5, 0xe6, 0x54, 0x64, 0x1d, 0x1b, + 0x90, 0x47, 0xec, 0xf3, 0xc5, 0xa2, 0x3b, 0xed, 0xa6, 0xfe, 0x04, 0xf0, 0x68, 0xd7, 0x5d, 0x00, + 0x45, 0xe0, 0xd8, 0x82, 0x94, 0x53, 0xe4, 0xec, 0x75, 0x25, 0x9d, 0x91, 0xaf, 0xa5, 0x72, 0xca, + 0xbc, 0x94, 0x4e, 0xdd, 0x58, 0xce, 0x09, 0x03, 0xe8, 0x25, 0x38, 0xde, 0x61, 0x4b, 0x67, 0x64, + 0x65, 0x4e, 0x96, 0x52, 0x39, 0x49, 0x00, 0x28, 0x0a, 0x23, 0x5d, 0xcc, 0xb2, 0x74, 0x7d, 0x39, + 0x35, 0x27, 0x09, 0x1e, 0x34, 0x0e, 0x8f, 0x76, 0xd8, 0xb3, 0xb9, 0x54, 0xee, 0x46, 0x56, 0xf0, + 0xa2, 0x63, 0xf0, 0x7f, 0x1d, 0x26, 0x59, 0x4a, 0xcd, 0x0b, 0x3e, 0x74, 0x12, 0xc6, 0xb6, 0x19, + 0xd2, 0x92, 0x2c, 0x2f, 0xae, 0x2c, 0x28, 0x99, 0xd9, 0x25, 0x69, 0x2e, 0x97, 0x15, 0x06, 0xbb, + 0x78, 0xcd, 0xca, 0x99, 0xab, 0xd2, 0x0a, 0x77, 0x96, 0x56, 0xe6, 0xa4, 0xac, 0xe0, 0x9f, 0xfe, + 0x23, 0x08, 0xbd, 0xa9, 0xeb, 0x8b, 0xe8, 0x19, 0x80, 0x7e, 0xbe, 0xa1, 0xa0, 0xbe, 0x97, 0x98, + 0xc8, 0x99, 0x3e, 0x3c, 0x9d, 0xd5, 0xee, 0x53, 0xd0, 0xf8, 0x39, 0x2c, 0x15, 0x5f, 0xbb, 0xad, + 0x25, 0x54, 0xd3, 0x24, 0x54, 0xd5, 0x56, 0x13, 0x79, 0x95, 0xe8, 0x5a, 0xa2, 0x46, 0xb0, 0xf5, + 0x4a, 0xbb, 0x81, 0x50, 0xb5, 0x5a, 0x50, 0xad, 0x02, 0xb7, 0xd5, 0x31, 0x49, 0xe8, 0x46, 0x62, + 0xf5, 0x22, 0x49, 0xac, 0x59, 0x3a, 0xc5, 0x77, 0x1e, 0xfd, 0xfe, 0x95, 0xe7, 0x52, 0xfc, 0xbc, + 0xf3, 0x77, 0x32, 0xd9, 0xcc, 0x3f, 0x49, 0x7e, 0xe0, 0x8e, 0x03, 0xb1, 0x79, 0xb8, 0xd1, 0xfa, + 0x47, 0x8c, 0xcc, 0x80, 0x29, 0xb4, 0x05, 0xa0, 0x77, 0x01, 0x53, 0x74, 0x6a, 0xb7, 0x9d, 0x90, + 0x8b, 0x9c, 0xe8, 0x6f, 0x75, 0x8c, 0x7f, 0x0e, 0xee, 0xdf, 0xf5, 0xd8, 0x2a, 0x97, 0xba, 0xa9, + 0xac, 0x18, 0x55, 0x9d, 0x1a, 0x3d, 0x85, 0xba, 0xe6, 0x16, 0xad, 0x16, 0x56, 0x0b, 0x4c, 0xea, + 0x79, 0x34, 0xdd, 0x4d, 0x6a, 0x0f, 0x85, 0xdc, 0xb0, 0x81, 0x9e, 0x00, 0xe8, 0xb3, 0x1b, 0x11, + 0x4d, 0xec, 0xda, 0xa9, 0x5c, 0xe7, 0xe9, 0x3e, 0x3b, 0x3a, 0xfe, 0xf1, 0x7f, 0x25, 0x34, 0x81, + 0xce, 0xee, 0x41, 0x28, 0xfa, 0x1b, 0xc0, 0x43, 0xce, 0x22, 0x8c, 0xfa, 0x5f, 0x96, 0x23, 0x53, + 0xfd, 0xb8, 0x3a, 0x52, 0xbf, 0x3e, 0xe0, 0xaa, 0x5d, 0x8c, 0xcc, 0xef, 0xa7, 0x6a, 0x3b, 0x3c, + 0x36, 0xec, 0x2a, 0x7e, 0x04, 0xa0, 0x9f, 0xcf, 0xc6, 0x1d, 0x1b, 0xb6, 0x6d, 0x7c, 0x46, 0xc6, + 0x44, 0xfe, 0x12, 0x44, 0x74, 0x5f, 0x82, 0x88, 0x52, 0xc5, 0xa4, 0xeb, 0xf1, 0x4f, 0x0e, 0x58, + 0xe7, 0x85, 0xa9, 0x7d, 0x94, 0xec, 0x0c, 0x98, 0x8a, 0xbc, 0x73, 0x6f, 0x13, 0x78, 0x7e, 0xdd, + 0x04, 0xb1, 0xde, 0x8a, 0xf8, 0x2f, 0xe6, 0xe3, 0x4d, 0x00, 0x1a, 0x9b, 0x60, 0xa2, 0xbf, 0xdf, + 0xd7, 0x3b, 0xbf, 0x84, 0x3d, 0x02, 0x98, 0xfd, 0x12, 0x3c, 0xb8, 0x32, 0x38, 0x27, 0xdf, 0x98, + 0x5f, 0x7e, 0xf8, 0x34, 0x3a, 0xf0, 0xf8, 0x69, 0x74, 0xe0, 0xf9, 0xd3, 0x28, 0xf8, 0xb0, 0x11, + 0x05, 0x3f, 0x36, 0xa2, 0xe0, 0x7e, 0x23, 0x0a, 0x1e, 0x36, 0xa2, 0xe0, 0xb7, 0x46, 0x14, 0x3c, + 0x6b, 0x44, 0x07, 0x9e, 0x37, 0xa2, 0xe0, 0x8b, 0xad, 0xe8, 0xc0, 0xbd, 0xad, 0x28, 0x78, 0xb8, + 0x15, 0x1d, 0x78, 0xbc, 0x15, 0x1d, 0x78, 0x3b, 0x53, 0x32, 0xcc, 0xd5, 0x92, 0x58, 0x37, 0xec, + 0xbd, 0xd5, 0x52, 0xc5, 0x1a, 0x49, 0xb2, 0x0b, 0xfb, 0x8f, 0x5b, 0xc2, 0xb4, 0x8c, 0xba, 0x5e, + 0xc0, 0x56, 0xc2, 0x35, 0x27, 0xcd, 0x7c, 0xc9, 0x48, 0xe2, 0xdb, 0xd4, 0x79, 0x21, 0xb3, 0xfd, + 0xd5, 0x50, 0xde, 0xcf, 0x52, 0xf1, 0xea, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xdc, 0xa4, 0x35, + 0x3f, 0x37, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/k8s_cluster/public_crudapi.vesapi.go b/pbgo/extschema/schema/k8s_cluster/public_crudapi.vesapi.go index 1d650388b..47a7309e9 100644 --- a/pbgo/extschema/schema/k8s_cluster/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/k8s_cluster/public_crudapi.vesapi.go @@ -3494,10 +3494,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3554,10 +3558,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3616,10 +3624,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_cluster_role/crudapi/api.vesapi.go b/pbgo/extschema/schema/k8s_cluster_role/crudapi/api.vesapi.go index 66fb53377..f7ce3fe86 100644 --- a/pbgo/extschema/schema/k8s_cluster_role/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/k8s_cluster_role/crudapi/api.vesapi.go @@ -3309,10 +3309,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_cluster_role/object.pb.go b/pbgo/extschema/schema/k8s_cluster_role/object.pb.go index cb3bfd031..aea9cfe6a 100644 --- a/pbgo/extschema/schema/k8s_cluster_role/object.pb.go +++ b/pbgo/extschema/schema/k8s_cluster_role/object.pb.go @@ -234,44 +234,46 @@ func init() { } var fileDescriptor_b022ca315283b93e = []byte{ - // 592 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0xc1, 0x4b, 0x1b, 0x4f, - 0x14, 0xc7, 0x33, 0x89, 0x44, 0x19, 0xc5, 0x9f, 0xac, 0x97, 0xfc, 0x6c, 0x3b, 0x48, 0x7a, 0x11, - 0xeb, 0xce, 0x82, 0x56, 0xb0, 0x22, 0x15, 0xb4, 0xe0, 0x45, 0x29, 0x24, 0x9e, 0x7a, 0x09, 0xb3, - 0x93, 0x97, 0x75, 0x9b, 0x4d, 0x66, 0x98, 0x99, 0xdd, 0xea, 0xa1, 0x50, 0xfa, 0x07, 0x14, 0xe9, - 0xff, 0x50, 0x28, 0xfd, 0x2b, 0x6a, 0x4f, 0x3d, 0x8a, 0x27, 0x8f, 0x75, 0x73, 0xe9, 0xd1, 0x5b, - 0xaf, 0xc5, 0x59, 0x57, 0xdc, 0x90, 0xd6, 0x7a, 0x7b, 0xc3, 0xfb, 0x7c, 0xbf, 0x79, 0xef, 0xe5, - 0xbd, 0xc5, 0x4f, 0x12, 0xd0, 0x34, 0x14, 0x9e, 0xe6, 0x07, 0xd0, 0x63, 0x5e, 0x77, 0x4d, 0xb7, - 0x78, 0x14, 0x6b, 0x03, 0xaa, 0xa5, 0x44, 0x04, 0x9e, 0xf0, 0x5f, 0x03, 0x37, 0x54, 0x2a, 0x61, - 0x84, 0x43, 0x32, 0x98, 0x66, 0x30, 0x1d, 0x86, 0xe7, 0xdc, 0x20, 0x34, 0x07, 0xb1, 0x4f, 0xb9, - 0xe8, 0x79, 0x81, 0x08, 0x84, 0x67, 0x65, 0x7e, 0xdc, 0xb1, 0x2f, 0xfb, 0xb0, 0x51, 0x66, 0x37, - 0xb7, 0x78, 0xc7, 0x6f, 0x9b, 0x23, 0x09, 0xfa, 0x9a, 0x7d, 0x50, 0x64, 0x85, 0x34, 0xa1, 0xe8, - 0xe7, 0xc9, 0xff, 0x8b, 0xc9, 0xdb, 0xba, 0x7a, 0x31, 0x95, 0x80, 0x86, 0x7e, 0x52, 0x94, 0xd7, - 0x7f, 0x55, 0x70, 0xf5, 0xa5, 0xed, 0xd3, 0x79, 0x86, 0x27, 0x7a, 0x60, 0x58, 0x9b, 0x19, 0x56, - 0x43, 0xf3, 0x68, 0x61, 0x72, 0xf9, 0x11, 0x2d, 0x36, 0x9d, 0x81, 0x7b, 0x60, 0xd8, 0xfe, 0x91, - 0x84, 0xc6, 0x0d, 0xee, 0xec, 0xe2, 0xff, 0xf4, 0x91, 0x36, 0xd0, 0x6b, 0xdd, 0x38, 0x94, 0xad, - 0xc3, 0xe3, 0x21, 0x87, 0xa6, 0xa5, 0x86, 0x7c, 0xa6, 0x33, 0xed, 0x5e, 0xee, 0xb6, 0x81, 0xc7, - 0xb4, 0x04, 0x5e, 0xab, 0x58, 0x8b, 0x05, 0xfa, 0xf7, 0xc9, 0xd3, 0xa6, 0x04, 0x6e, 0x7d, 0xac, - 0x6a, 0xfd, 0x53, 0xf9, 0xfd, 0x66, 0x35, 0x73, 0x3c, 0xde, 0x44, 0xdf, 0x4e, 0x6a, 0xe5, 0x19, - 0x74, 0x76, 0x52, 0xfb, 0x50, 0xc6, 0x2b, 0xb8, 0xb2, 0x03, 0xc6, 0x59, 0xea, 0xac, 0x1e, 0x72, - 0x97, 0x49, 0xa9, 0x0d, 0xe3, 0x5d, 0xd7, 0x67, 0x3a, 0xe4, 0x6e, 0x4f, 0xf4, 0x43, 0x23, 0xd4, - 0xd2, 0x7c, 0x02, 0xda, 0x0d, 0x85, 0xdb, 0x5d, 0xd3, 0xae, 0x02, 0xd6, 0xc6, 0xab, 0x78, 0xbc, - 0x01, 0x32, 0x62, 0x1c, 0x9c, 0xc5, 0x51, 0xc2, 0x58, 0x43, 0x51, 0xf5, 0x46, 0x85, 0x06, 0xf0, - 0x53, 0x5c, 0xdd, 0x56, 0xc0, 0xcc, 0xbd, 0x55, 0x2f, 0x20, 0x82, 0x7b, 0xab, 0xc6, 0x76, 0x43, - 0x7d, 0xcf, 0xc6, 0xea, 0x4d, 0x3c, 0x91, 0x4f, 0xce, 0xd9, 0xc1, 0xe3, 0x01, 0x6f, 0xd9, 0xa1, - 0x67, 0xff, 0x1b, 0xbd, 0x6b, 0xe8, 0x3b, 0x91, 0xf0, 0x59, 0x74, 0x33, 0xfa, 0x6a, 0xc0, 0xaf, - 0xe2, 0xfa, 0x25, 0xc2, 0x53, 0x4d, 0xc3, 0x4c, 0xac, 0xff, 0x79, 0xa9, 0x32, 0x7c, 0xc4, 0x52, - 0x35, 0xf0, 0x64, 0x76, 0x81, 0x2d, 0x05, 0x1d, 0x5d, 0x2b, 0xcf, 0x57, 0x16, 0x26, 0x97, 0x1f, - 0x8e, 0x5c, 0xc9, 0x06, 0x74, 0xae, 0xc4, 0x5b, 0xb3, 0x5f, 0xde, 0xce, 0x0c, 0x97, 0xda, 0xc0, - 0x22, 0x67, 0xb4, 0xb3, 0x81, 0x31, 0x17, 0xfd, 0x76, 0x68, 0x4f, 0xa0, 0x56, 0x19, 0x69, 0xb9, - 0x9d, 0x03, 0xb6, 0x9e, 0x5b, 0xfc, 0xfa, 0xec, 0xd9, 0xf3, 0x19, 0x3c, 0x8d, 0xa7, 0xf2, 0x12, - 0x69, 0x1c, 0xb6, 0xb7, 0x3e, 0xa2, 0xd3, 0x0b, 0x52, 0x3a, 0xbf, 0x20, 0xa5, 0xcb, 0x0b, 0x82, - 0xde, 0xa5, 0x04, 0x7d, 0x4e, 0x09, 0xfa, 0x9e, 0x12, 0x74, 0x9a, 0x12, 0x74, 0x9e, 0x12, 0xf4, - 0x23, 0x25, 0xe8, 0x67, 0x4a, 0x4a, 0x97, 0x29, 0x41, 0xc7, 0x03, 0x52, 0xfa, 0x3a, 0x20, 0xe8, - 0x74, 0x40, 0x4a, 0xe7, 0x03, 0x52, 0x7a, 0xb5, 0x1f, 0x08, 0xd9, 0x0d, 0x68, 0x22, 0x22, 0x03, - 0x4a, 0x31, 0x1a, 0x6b, 0xcf, 0x06, 0x1d, 0xa1, 0x7a, 0xae, 0x54, 0x22, 0x09, 0xdb, 0xa0, 0xdc, - 0x3c, 0xed, 0x49, 0x3f, 0x10, 0x1e, 0x1c, 0x9a, 0xeb, 0x9b, 0xfe, 0xc3, 0xe7, 0xc3, 0xaf, 0xda, - 0xeb, 0x5e, 0xf9, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x35, 0xe5, 0x11, 0xe3, 0x04, 0x00, 0x00, + // 609 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xc1, 0x4e, 0x13, 0x41, + 0x18, 0xc7, 0x3b, 0x14, 0x0b, 0x19, 0x08, 0x92, 0xe5, 0x52, 0x51, 0x27, 0xa4, 0x5e, 0x88, 0xba, + 0xb3, 0x09, 0xc6, 0x04, 0x09, 0x91, 0x04, 0x4c, 0x7a, 0x81, 0x18, 0x5b, 0x4e, 0x5e, 0x9a, 0xd9, + 0xd9, 0xaf, 0xcb, 0xda, 0x6d, 0x67, 0x32, 0x33, 0x5b, 0xe1, 0x60, 0x62, 0x7c, 0x00, 0x43, 0x7c, + 0x07, 0x13, 0xe3, 0x33, 0x78, 0x10, 0x4f, 0x1e, 0x09, 0x27, 0x8e, 0xb2, 0xbd, 0x78, 0xe4, 0x11, + 0x0c, 0xb3, 0x2c, 0xb2, 0x4d, 0x11, 0x0f, 0xdc, 0x66, 0xf2, 0xff, 0x7f, 0xbf, 0xfd, 0x66, 0xf6, + 0x3f, 0x1f, 0x7e, 0xd4, 0x07, 0x4d, 0x23, 0xe1, 0x69, 0xbe, 0x03, 0x5d, 0xe6, 0x75, 0x96, 0x75, + 0x8b, 0xc7, 0x89, 0x36, 0xa0, 0x5a, 0x4a, 0xc4, 0xe0, 0x09, 0xff, 0x0d, 0x70, 0x43, 0xa5, 0x12, + 0x46, 0x38, 0x24, 0x33, 0xd3, 0xcc, 0x4c, 0x87, 0xcd, 0xf3, 0x6e, 0x18, 0x99, 0x9d, 0xc4, 0xa7, + 0x5c, 0x74, 0xbd, 0x50, 0x84, 0xc2, 0xb3, 0x65, 0x7e, 0xd2, 0xb6, 0x3b, 0xbb, 0xb1, 0xab, 0x0c, + 0x37, 0xff, 0xf0, 0x9a, 0x6f, 0x9b, 0x3d, 0x09, 0xfa, 0xdc, 0x7b, 0xb7, 0xe8, 0x15, 0xd2, 0x44, + 0xa2, 0x97, 0x8b, 0x77, 0x8a, 0xe2, 0xe5, 0xba, 0x5a, 0x51, 0xea, 0x83, 0x86, 0x5e, 0xbf, 0x58, + 0x5e, 0xfb, 0x78, 0x0b, 0x57, 0x5e, 0xda, 0x73, 0x3a, 0xcf, 0xf0, 0x64, 0x17, 0x0c, 0x0b, 0x98, + 0x61, 0x55, 0xb4, 0x80, 0x16, 0xa7, 0x96, 0xee, 0xd3, 0xe2, 0xa1, 0x33, 0xe3, 0x16, 0x18, 0xb6, + 0xbd, 0x27, 0xa1, 0x71, 0x61, 0x77, 0x36, 0xf1, 0x6d, 0xbd, 0xa7, 0x0d, 0x74, 0x5b, 0x17, 0x84, + 0x31, 0x4b, 0x78, 0x30, 0x44, 0x68, 0x5a, 0xd7, 0x10, 0x67, 0x26, 0xab, 0xdd, 0xca, 0x69, 0xab, + 0x78, 0x5c, 0x4b, 0xe0, 0xd5, 0xb2, 0x45, 0x2c, 0xd2, 0x7f, 0xdf, 0x3c, 0x6d, 0x4a, 0xe0, 0x96, + 0x63, 0xab, 0x56, 0xbe, 0x95, 0x3f, 0xac, 0x55, 0x32, 0xe2, 0xfe, 0x1a, 0xfa, 0x71, 0x50, 0x1d, + 0x9b, 0x45, 0x47, 0x07, 0xd5, 0xcf, 0x65, 0xdc, 0xc4, 0xe5, 0x3a, 0x18, 0x67, 0xb3, 0xfd, 0x74, + 0x97, 0xbb, 0x4c, 0x4a, 0x6d, 0x18, 0xef, 0xb8, 0x3e, 0xd3, 0x11, 0x77, 0xbb, 0xa2, 0x17, 0x19, + 0xa1, 0x1e, 0x2f, 0x14, 0x45, 0x6d, 0x58, 0x2f, 0x60, 0x2a, 0xf8, 0xab, 0xf7, 0x41, 0xbb, 0x91, + 0x70, 0x3b, 0xcb, 0xda, 0x55, 0xc0, 0x02, 0xdc, 0xc0, 0x13, 0x0d, 0x90, 0x31, 0xe3, 0xe0, 0xd4, + 0x47, 0x81, 0x13, 0x0d, 0x57, 0x53, 0x33, 0xf1, 0x12, 0xf2, 0xad, 0x8a, 0x0c, 0xe0, 0x57, 0xb8, + 0xb2, 0xa1, 0x80, 0x99, 0x9b, 0x45, 0xbe, 0x80, 0x18, 0x6e, 0x12, 0xb9, 0x8d, 0xc7, 0x37, 0x23, + 0x7d, 0xc3, 0xf7, 0x59, 0x6b, 0xe2, 0xc9, 0xfc, 0x87, 0x3a, 0x75, 0x3c, 0x11, 0xf2, 0x96, 0xcd, + 0x42, 0x16, 0x27, 0x7a, 0x5d, 0x16, 0xea, 0xb1, 0xf0, 0x59, 0x7c, 0x91, 0x88, 0x4a, 0xc8, 0xcf, + 0xd6, 0xb5, 0x53, 0x84, 0xa7, 0x9b, 0x86, 0x99, 0x44, 0xff, 0x77, 0xd6, 0x33, 0xfb, 0x88, 0xac, + 0x37, 0xf0, 0x54, 0x36, 0x18, 0x5a, 0x0a, 0xda, 0xba, 0x3a, 0xb6, 0x50, 0x5e, 0x9c, 0x5a, 0xba, + 0x37, 0xf2, 0xa5, 0x34, 0xa0, 0x7d, 0x56, 0xbc, 0x3e, 0xf7, 0xf5, 0xdd, 0xec, 0x70, 0xab, 0x0d, + 0x2c, 0x72, 0x8f, 0x76, 0x56, 0x31, 0xe6, 0xa2, 0x17, 0x44, 0xf6, 0x65, 0x56, 0xcb, 0x23, 0x91, + 0x1b, 0xb9, 0xc1, 0xf6, 0x73, 0xc9, 0xbf, 0x32, 0x77, 0xf4, 0x7c, 0x16, 0xcf, 0xe0, 0xe9, 0xbc, + 0x45, 0x9a, 0x44, 0xc1, 0xfa, 0x27, 0x74, 0x78, 0x42, 0x4a, 0xc7, 0x27, 0xa4, 0x74, 0x7a, 0x42, + 0xd0, 0xfb, 0x94, 0xa0, 0x2f, 0x29, 0x41, 0x3f, 0x53, 0x82, 0x0e, 0x53, 0x82, 0x8e, 0x53, 0x82, + 0x7e, 0xa5, 0x04, 0xfd, 0x4e, 0x49, 0xe9, 0x34, 0x25, 0x68, 0x7f, 0x40, 0x4a, 0xdf, 0x07, 0x04, + 0x1d, 0x0e, 0x48, 0xe9, 0x78, 0x40, 0x4a, 0xaf, 0xb7, 0x43, 0x21, 0x3b, 0x21, 0xed, 0x8b, 0xd8, + 0x80, 0x52, 0x8c, 0x26, 0xda, 0xb3, 0x8b, 0xb6, 0x50, 0x5d, 0x57, 0x2a, 0xd1, 0x8f, 0x02, 0x50, + 0x6e, 0x2e, 0x7b, 0xd2, 0x0f, 0x85, 0x07, 0xbb, 0xe6, 0x7c, 0xd4, 0x5c, 0x31, 0xd5, 0xfc, 0x8a, + 0x1d, 0x3a, 0x4f, 0xfe, 0x04, 0x00, 0x00, 0xff, 0xff, 0xc4, 0x43, 0x77, 0x1a, 0x7a, 0x05, 0x00, + 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.pb.go b/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.pb.go index 3c4866f9d..1dbe36281 100644 --- a/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.pb.go +++ b/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.pb.go @@ -1057,108 +1057,109 @@ func init() { } var fileDescriptor_b6528bcdc856f06d = []byte{ - // 1609 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0xdb, 0x46, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0xdb, 0x46, 0x16, 0xf6, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xc3, 0xcc, 0x26, 0x8e, 0xac, 0xcd, 0x12, 0x5a, 0x25, - 0xbb, 0xf0, 0xda, 0x11, 0x65, 0x38, 0x08, 0x36, 0x36, 0x02, 0xef, 0xca, 0x36, 0x65, 0x38, 0x71, - 0x6c, 0x97, 0x52, 0x82, 0xa2, 0x87, 0x12, 0x14, 0x35, 0x52, 0x58, 0x4b, 0x22, 0xc3, 0x19, 0xc9, - 0x31, 0x0a, 0x03, 0x6d, 0x4e, 0x3d, 0x16, 0x28, 0xd0, 0x43, 0xd1, 0x16, 0x3d, 0xb4, 0x40, 0x8f, - 0x3d, 0x16, 0xf0, 0xc5, 0xb7, 0x04, 0x41, 0x11, 0x04, 0xe9, 0x25, 0xe8, 0xa9, 0x91, 0x73, 0xc8, - 0xa9, 0x08, 0x7a, 0xee, 0xa1, 0xe0, 0x0c, 0xa9, 0x48, 0xb2, 0x12, 0x49, 0xae, 0x4f, 0xe2, 0xcc, - 0x7b, 0xef, 0x9b, 0xf7, 0xcd, 0xfb, 0xe1, 0x13, 0xe1, 0xe5, 0x3a, 0x26, 0x92, 0x61, 0xa6, 0x88, - 0x7e, 0x07, 0x57, 0xb4, 0xd4, 0xf6, 0x55, 0xa2, 0xea, 0xe5, 0x1a, 0xa1, 0xd8, 0x56, 0x6d, 0xb3, - 0x8c, 0x53, 0x56, 0x2d, 0x5f, 0x36, 0x74, 0x55, 0xb7, 0x6b, 0x05, 0xcd, 0x32, 0x24, 0xcb, 0x36, - 0xa9, 0x89, 0x44, 0x6e, 0x24, 0x71, 0x23, 0xa9, 0xd3, 0x28, 0x96, 0x2c, 0x19, 0xf4, 0x4e, 0x2d, - 0x2f, 0xe9, 0x66, 0x25, 0x55, 0x32, 0x4b, 0x66, 0x8a, 0x99, 0xe5, 0x6b, 0x45, 0xb6, 0x62, 0x0b, - 0xf6, 0xc4, 0xe1, 0x62, 0xe7, 0x4b, 0xa6, 0x59, 0x2a, 0xe3, 0x94, 0x66, 0x19, 0x29, 0xad, 0x5a, - 0x35, 0xa9, 0x46, 0x0d, 0xb3, 0x4a, 0x5c, 0xe9, 0xdf, 0x5d, 0x69, 0x13, 0x03, 0x57, 0x2c, 0xba, - 0xeb, 0x0a, 0x63, 0xed, 0xee, 0x63, 0xdb, 0x36, 0x6d, 0xcf, 0x70, 0xa6, 0x07, 0x35, 0x33, 0xff, - 0x01, 0xd6, 0xa9, 0xab, 0x3c, 0xdd, 0x43, 0x99, 0xee, 0x5a, 0xb8, 0xe9, 0x51, 0xbb, 0xae, 0x69, - 0xb5, 0xba, 0x3b, 0xd9, 0x2e, 0x6c, 0xb5, 0x4b, 0xb4, 0x8b, 0xea, 0x98, 0xe0, 0x6a, 0xbd, 0xc3, - 0x3c, 0xde, 0xa1, 0x63, 0xe0, 0x1d, 0xb5, 0x4d, 0x23, 0xf1, 0x03, 0x80, 0xa3, 0xcb, 0x36, 0xd6, - 0x28, 0x56, 0xf0, 0xdd, 0x1a, 0x26, 0x14, 0xfd, 0x0f, 0x86, 0x2a, 0x98, 0x6a, 0x05, 0x8d, 0x6a, - 0x51, 0x10, 0x07, 0x53, 0x91, 0xb9, 0x0b, 0x52, 0x7b, 0x84, 0x36, 0x19, 0x55, 0x6e, 0x75, 0x13, - 0x53, 0x2d, 0xb7, 0x6b, 0x61, 0xa5, 0x69, 0x84, 0xb2, 0x30, 0x40, 0x2c, 0xac, 0x47, 0x7d, 0xcc, - 0x58, 0x92, 0xde, 0x1e, 0x5e, 0x89, 0xe3, 0x64, 0x2d, 0xac, 0x3b, 0x38, 0x4b, 0xe3, 0x5f, 0xec, - 0x8d, 0x38, 0xe6, 0x52, 0x49, 0x57, 0x9d, 0x5f, 0x85, 0x81, 0x2d, 0x84, 0x1f, 0x2d, 0x06, 0xf9, - 0xb9, 0x89, 0x3f, 0x00, 0x1c, 0xf3, 0x5c, 0x26, 0x96, 0x59, 0x25, 0x18, 0x5d, 0x3b, 0xe2, 0x73, - 0xbc, 0xab, 0xcf, 0xab, 0x98, 0x76, 0x71, 0x78, 0x13, 0x8e, 0x93, 0x5d, 0x42, 0x71, 0x45, 0x6d, - 0x82, 0xf8, 0x19, 0xc8, 0xbf, 0x3b, 0x40, 0xb2, 0x4c, 0xeb, 0x28, 0xd4, 0x18, 0x37, 0xbf, 0xe9, - 0x01, 0x6e, 0xb5, 0xdd, 0xc0, 0x4c, 0xaf, 0x1b, 0x58, 0xc5, 0x74, 0x00, 0xfa, 0x2f, 0x00, 0x1c, - 0x53, 0xb0, 0x55, 0xd6, 0xf4, 0x66, 0xc8, 0xfe, 0x7f, 0x84, 0xfe, 0xc5, 0xae, 0xf4, 0x5d, 0xb3, - 0x2e, 0x57, 0x90, 0x6b, 0xf3, 0x38, 0xd5, 0xcb, 0x63, 0x17, 0xa8, 0x87, 0xd7, 0x28, 0x05, 0x05, - 0x1b, 0x13, 0xb3, 0x66, 0xeb, 0x58, 0xad, 0x63, 0x9b, 0x18, 0x66, 0x95, 0xdd, 0x6c, 0x78, 0x29, - 0xf0, 0x72, 0x1f, 0x00, 0x65, 0xdc, 0x93, 0xde, 0xe6, 0xc2, 0x56, 0x9a, 0xa7, 0xe1, 0x78, 0x93, - 0x25, 0x8f, 0x72, 0xe2, 0x6b, 0x00, 0xe1, 0x2a, 0xa6, 0x1e, 0xeb, 0xf3, 0x30, 0x5c, 0xd5, 0x2a, - 0x98, 0x58, 0x9a, 0x8e, 0x19, 0xed, 0xb0, 0xf2, 0x7a, 0x03, 0x21, 0x18, 0x70, 0x16, 0x8c, 0x51, - 0x58, 0x61, 0xcf, 0xe8, 0x7d, 0xe8, 0x9c, 0xc8, 0xc0, 0xd4, 0xa2, 0x69, 0x57, 0x34, 0xca, 0xdc, - 0x19, 0x9b, 0xbb, 0xd2, 0x47, 0x88, 0x3c, 0x37, 0x32, 0xcc, 0x70, 0xd9, 0x2c, 0x60, 0x65, 0xcc, - 0x6e, 0xdb, 0x4b, 0x7c, 0x15, 0x84, 0x91, 0x16, 0x4d, 0xb4, 0x01, 0x23, 0x3a, 0x4b, 0x54, 0x76, - 0x9a, 0x7b, 0xb9, 0xc9, 0xfe, 0x0a, 0xc2, 0x65, 0xa9, 0x40, 0x8e, 0xe0, 0x9c, 0x80, 0xde, 0x81, - 0x23, 0x36, 0xbf, 0x13, 0x0e, 0xe8, 0xef, 0xaf, 0xc2, 0xda, 0xb3, 0x45, 0x89, 0xb8, 0x18, 0x0c, - 0xb2, 0x5b, 0x88, 0x02, 0x6f, 0x09, 0x51, 0x5b, 0xa9, 0x0d, 0x9f, 0x44, 0xa9, 0x9d, 0x3a, 0x91, - 0x52, 0x0b, 0x9e, 0x54, 0xa9, 0xa1, 0x1b, 0x30, 0x48, 0xa8, 0x46, 0x6b, 0x24, 0xfa, 0xcd, 0x97, - 0x20, 0xee, 0x9f, 0x8a, 0xcc, 0x5d, 0xea, 0x85, 0x9a, 0x65, 0xfa, 0xdc, 0xd9, 0x25, 0xff, 0xc1, - 0x1e, 0x50, 0x5c, 0x08, 0xb4, 0x06, 0x4f, 0xdb, 0xb8, 0x88, 0x6d, 0xdb, 0xa8, 0x96, 0x54, 0xfe, - 0x8a, 0x20, 0xd1, 0x10, 0x43, 0x3d, 0xff, 0x86, 0x12, 0x2d, 0x32, 0x9e, 0x42, 0xd3, 0x8c, 0xef, - 0x13, 0x74, 0x1b, 0x46, 0x0b, 0xb8, 0x8c, 0x29, 0x2e, 0xa8, 0x5c, 0x86, 0x0b, 0x4d, 0xc4, 0x70, - 0x1f, 0x88, 0x13, 0xae, 0xb5, 0xe2, 0x1a, 0x7b, 0xb8, 0xef, 0xc2, 0xc9, 0x82, 0x41, 0xb4, 0x7c, - 0xb9, 0x1b, 0x30, 0xec, 0x03, 0xf8, 0x9c, 0x67, 0xde, 0x81, 0xdc, 0x52, 0xcd, 0xd7, 0x03, 0x21, - 0x20, 0xf8, 0x12, 0xdf, 0x01, 0x18, 0x59, 0x37, 0x48, 0x9f, 0x15, 0xfc, 0x4f, 0x38, 0x52, 0xd6, - 0xf2, 0xb8, 0xac, 0x16, 0x8d, 0x32, 0xc5, 0xb6, 0x5b, 0xc9, 0x11, 0xb6, 0x97, 0x61, 0x5b, 0xe8, - 0x02, 0x1c, 0xb5, 0xb1, 0x65, 0xda, 0x54, 0x2d, 0x1a, 0xb8, 0x5c, 0x20, 0x51, 0x7f, 0xdc, 0x3f, - 0x15, 0x56, 0x46, 0xf8, 0x66, 0x86, 0xed, 0xa1, 0x59, 0x78, 0xc6, 0x55, 0xe2, 0x41, 0xf1, 0x74, - 0x03, 0x4c, 0x17, 0x71, 0x19, 0x0f, 0x21, 0xb7, 0x48, 0xfc, 0x14, 0x84, 0x02, 0xf7, 0x93, 0x17, - 0xf2, 0x1a, 0xc5, 0x15, 0x34, 0x01, 0x83, 0x14, 0x57, 0xb5, 0x2a, 0x65, 0xb9, 0x16, 0x56, 0xdc, - 0xd5, 0x31, 0xda, 0x90, 0x00, 0xfd, 0x35, 0xa3, 0xc0, 0x3b, 0xa1, 0xe2, 0x3c, 0xa2, 0x38, 0x8c, - 0x14, 0x30, 0xd1, 0x6d, 0x83, 0xbd, 0x9b, 0xa3, 0x11, 0xce, 0xb4, 0x65, 0x0b, 0xc5, 0x60, 0xc8, - 0xbb, 0xe6, 0xe8, 0x48, 0x1c, 0x4c, 0x85, 0x94, 0xe6, 0x1a, 0xe5, 0x60, 0x90, 0x5d, 0x0a, 0xa7, - 0x14, 0x99, 0xbb, 0xd6, 0x2b, 0x5f, 0x3b, 0xb9, 0x49, 0xeb, 0xcc, 0x5c, 0xae, 0x52, 0x7b, 0x57, - 0x71, 0xb1, 0x90, 0x0e, 0x23, 0x2d, 0xe3, 0x93, 0x9b, 0x09, 0xe9, 0x81, 0xa1, 0xd3, 0xaf, 0x31, - 0x38, 0x7e, 0x2b, 0x2a, 0x9a, 0x87, 0xd0, 0xdc, 0xa9, 0x62, 0x5b, 0x75, 0x46, 0x93, 0x68, 0x98, - 0x15, 0x71, 0xac, 0xe3, 0x8c, 0xdb, 0x06, 0xde, 0xf1, 0x72, 0x2d, 0xcc, 0xb4, 0x9d, 0x9d, 0xb6, - 0x46, 0x34, 0x7a, 0x12, 0x8d, 0x68, 0xec, 0x2f, 0x35, 0xa2, 0x0c, 0x0c, 0x95, 0x30, 0x65, 0x8d, - 0xc4, 0x6d, 0x69, 0x83, 0x34, 0x23, 0xe5, 0x54, 0x89, 0x2f, 0xd0, 0x16, 0x84, 0x6e, 0x9a, 0x12, - 0x4c, 0xdd, 0x56, 0x71, 0x8c, 0x06, 0x14, 0xe6, 0x20, 0x59, 0x4c, 0x63, 0xf3, 0x30, 0xd2, 0x12, - 0x5f, 0x27, 0xfb, 0xb6, 0xf1, 0xae, 0x9b, 0xa9, 0xce, 0x23, 0x3a, 0x03, 0x87, 0xeb, 0x5a, 0xb9, - 0xe6, 0x25, 0x29, 0x5f, 0x2c, 0xf8, 0xae, 0x82, 0xd8, 0x22, 0x14, 0x3a, 0xe3, 0x37, 0x88, 0xfd, - 0xf5, 0x40, 0x68, 0x58, 0x08, 0x26, 0x3e, 0x01, 0x70, 0xa4, 0x35, 0x2f, 0x50, 0x06, 0x0e, 0x1b, - 0x14, 0x57, 0x48, 0x94, 0xf7, 0xd7, 0xd9, 0x41, 0x93, 0x4a, 0xe1, 0xe6, 0x68, 0x16, 0x06, 0xf9, - 0x8c, 0x1e, 0xf5, 0x31, 0xa0, 0x68, 0x07, 0x90, 0xec, 0x08, 0xd9, 0xf5, 0xba, 0x7a, 0x89, 0x6d, - 0x38, 0xba, 0xc2, 0xda, 0xe0, 0xf1, 0x87, 0x88, 0x29, 0x28, 0x14, 0x35, 0xa3, 0xac, 0x1a, 0xc5, - 0x66, 0xbb, 0x64, 0xa5, 0x1c, 0x52, 0xc6, 0x9c, 0xfd, 0xb5, 0xa2, 0xd7, 0x06, 0xa7, 0x7f, 0x07, - 0xf0, 0x6c, 0xd7, 0xc1, 0x01, 0xc5, 0xe0, 0xc4, 0xaa, 0x9c, 0x53, 0x95, 0xec, 0x96, 0x9a, 0xd9, - 0x54, 0x6e, 0xa6, 0x73, 0xea, 0x8a, 0x9c, 0x49, 0xdf, 0x5a, 0xcf, 0x09, 0x43, 0xe8, 0x1f, 0x70, - 0xb2, 0x43, 0x96, 0xd9, 0x54, 0xd4, 0x65, 0x45, 0x4e, 0xe7, 0x64, 0x01, 0x20, 0x11, 0xc6, 0xba, - 0x88, 0x15, 0x79, 0x6b, 0x3d, 0xbd, 0x2c, 0x0b, 0x3e, 0x34, 0x09, 0xcf, 0x76, 0xc8, 0xb3, 0xb9, - 0x74, 0xee, 0x56, 0x56, 0xf0, 0xa3, 0x73, 0xf0, 0x6f, 0x1d, 0x22, 0x45, 0x4e, 0xaf, 0x08, 0x01, - 0x74, 0x11, 0xc6, 0x8f, 0x08, 0x32, 0xb2, 0xa2, 0xac, 0x6d, 0xac, 0xaa, 0x9b, 0x4b, 0xd7, 0xe5, - 0xe5, 0x5c, 0x56, 0x18, 0xee, 0xa2, 0xb5, 0xa4, 0x6c, 0xde, 0x90, 0x37, 0xb8, 0xb2, 0xbc, 0xb1, - 0x2c, 0x67, 0x85, 0xe0, 0xdc, 0xb7, 0x61, 0xe8, 0x4f, 0x6f, 0xad, 0xa1, 0x5f, 0x00, 0x0c, 0xf2, - 0x49, 0x06, 0x0d, 0x36, 0xf1, 0xc4, 0xa4, 0x7e, 0xd5, 0xdd, 0xb1, 0xf0, 0x6e, 0xe3, 0x41, 0xf4, - 0x3f, 0xc5, 0x2b, 0xf7, 0xf4, 0xa4, 0x66, 0x59, 0x84, 0x6a, 0xfa, 0x76, 0x32, 0xaf, 0x11, 0x43, - 0x4f, 0xd6, 0x08, 0xb6, 0x2f, 0xd5, 0x31, 0x49, 0x1a, 0x66, 0x72, 0xfb, 0x2a, 0x49, 0xee, 0xd8, - 0x06, 0xc5, 0xf7, 0x7f, 0x7e, 0xf1, 0x99, 0x6f, 0x31, 0x31, 0xef, 0xfe, 0x17, 0x4d, 0x35, 0x83, - 0x4d, 0x52, 0x1f, 0x7a, 0xad, 0x40, 0x6a, 0x6e, 0xee, 0x1d, 0xf9, 0xef, 0x46, 0x16, 0xc0, 0x34, - 0x7a, 0x0a, 0xa0, 0x7f, 0x15, 0x53, 0x34, 0xdd, 0xd7, 0xdc, 0xc8, 0x69, 0xcd, 0x0c, 0x30, 0x63, - 0x26, 0xec, 0x87, 0x3f, 0xfa, 0x40, 0xe3, 0x41, 0x74, 0xa6, 0x1b, 0xaf, 0x8a, 0x59, 0x35, 0xa8, - 0xd9, 0x46, 0xcd, 0xc6, 0x5a, 0x81, 0x31, 0x9b, 0x47, 0xff, 0xed, 0xc6, 0xec, 0x6d, 0x84, 0xb8, - 0x74, 0x0f, 0x3d, 0x06, 0x30, 0xe0, 0x54, 0x1a, 0x9a, 0xe9, 0xaf, 0x1e, 0x39, 0xad, 0x4b, 0x83, - 0x14, 0x6f, 0x62, 0xfb, 0xb8, 0xbc, 0xe6, 0xd0, 0xec, 0xa0, 0xbc, 0xd0, 0x6f, 0x00, 0x9e, 0x72, - 0x67, 0x5f, 0x34, 0xe0, 0x90, 0x1c, 0x4b, 0xf5, 0xad, 0xef, 0x32, 0xfb, 0x18, 0x0c, 0x9e, 0x86, - 0x1b, 0xb1, 0xb5, 0x63, 0xa7, 0x61, 0x87, 0xda, 0x9e, 0x93, 0x96, 0x07, 0x00, 0x06, 0x79, 0x7b, - 0xeb, 0x5d, 0x73, 0x6d, 0x6d, 0x30, 0x36, 0x21, 0xf1, 0xef, 0x22, 0x92, 0xf7, 0x5d, 0x44, 0x92, - 0x2b, 0x16, 0xdd, 0x4d, 0x98, 0x83, 0x93, 0xba, 0x36, 0x7d, 0xdc, 0x0c, 0x5c, 0x00, 0xd3, 0xb1, - 0xe2, 0xc1, 0x3e, 0xf0, 0x3d, 0xdd, 0x07, 0xff, 0xea, 0xe1, 0x3e, 0x7f, 0xd7, 0x3d, 0xdb, 0x07, - 0xa0, 0xb1, 0x0f, 0x66, 0x06, 0x78, 0x3d, 0xde, 0x7f, 0x1c, 0xf5, 0x09, 0x60, 0xe9, 0x73, 0xf0, - 0x68, 0x71, 0x78, 0x59, 0xb9, 0xb5, 0xb2, 0xfe, 0xe4, 0xb9, 0x38, 0xf4, 0xec, 0xb9, 0x38, 0xf4, - 0xea, 0xb9, 0x08, 0x3e, 0x6a, 0x88, 0xe0, 0xfb, 0x86, 0x08, 0x1e, 0x36, 0x44, 0xf0, 0xa4, 0x21, - 0x82, 0x5f, 0x1b, 0x22, 0x78, 0xd9, 0x10, 0x87, 0x5e, 0x35, 0x44, 0xf0, 0xe9, 0xa1, 0x38, 0x74, - 0x70, 0x28, 0x82, 0x27, 0x87, 0xe2, 0xd0, 0xb3, 0x43, 0x71, 0xe8, 0xbd, 0x5c, 0xc9, 0xb4, 0xb6, - 0x4b, 0x52, 0xdd, 0x74, 0x46, 0x51, 0x5b, 0x93, 0x6a, 0x24, 0xc5, 0x1e, 0x9c, 0xbf, 0x66, 0x49, - 0xcb, 0x36, 0xeb, 0x46, 0x01, 0xdb, 0x49, 0x4f, 0x9c, 0xb2, 0xf2, 0x25, 0x33, 0x85, 0xef, 0x51, - 0xf7, 0x5b, 0xcc, 0x1b, 0x3e, 0x0d, 0xe5, 0x83, 0x2c, 0x02, 0x97, 0xff, 0x0c, 0x00, 0x00, 0xff, - 0xff, 0x13, 0x42, 0x34, 0x70, 0x4b, 0x13, 0x00, 0x00, + 0xbb, 0x30, 0xec, 0x88, 0x32, 0x1c, 0x04, 0x1b, 0x1b, 0x81, 0x77, 0x65, 0x9b, 0x32, 0xec, 0x38, + 0xb6, 0x97, 0x52, 0x82, 0xc5, 0x1e, 0x96, 0xa0, 0xa8, 0x91, 0xc2, 0xb5, 0x24, 0x72, 0x39, 0x23, + 0x39, 0xc6, 0xc2, 0x40, 0x91, 0x53, 0x91, 0xa2, 0x40, 0x8b, 0x02, 0x3d, 0x14, 0x4d, 0xd1, 0x4b, + 0x81, 0x1e, 0x7b, 0x2c, 0xea, 0x4b, 0x6e, 0x0d, 0x82, 0xa2, 0x08, 0xda, 0x4b, 0x2e, 0x05, 0x1a, + 0x39, 0x87, 0x9c, 0x8a, 0x20, 0x97, 0x5e, 0x7a, 0x28, 0x38, 0x43, 0x2a, 0x92, 0xac, 0x44, 0x92, + 0xeb, 0x9e, 0xc4, 0x99, 0xf7, 0xde, 0x37, 0xef, 0x9b, 0xf7, 0xc3, 0x27, 0xc2, 0xcb, 0x75, 0x4c, + 0x24, 0xc3, 0x4c, 0x11, 0xfd, 0x36, 0xae, 0x68, 0xa9, 0x9d, 0xab, 0x44, 0xd5, 0xcb, 0x35, 0x42, + 0xb1, 0xad, 0xda, 0x66, 0x19, 0xa7, 0xac, 0x5a, 0xbe, 0x6c, 0xe8, 0xaa, 0x6e, 0xd7, 0x0a, 0x9a, + 0x65, 0x48, 0x96, 0x6d, 0x52, 0x13, 0x89, 0xdc, 0x48, 0xe2, 0x46, 0x52, 0xa7, 0x51, 0x2c, 0x59, + 0x32, 0xe8, 0xed, 0x5a, 0x5e, 0xd2, 0xcd, 0x4a, 0xaa, 0x64, 0x96, 0xcc, 0x14, 0x33, 0xcb, 0xd7, + 0x8a, 0x6c, 0xc5, 0x16, 0xec, 0x89, 0xc3, 0xc5, 0xce, 0x97, 0x4c, 0xb3, 0x54, 0xc6, 0x29, 0xcd, + 0x32, 0x52, 0x5a, 0xb5, 0x6a, 0x52, 0x8d, 0x1a, 0x66, 0x95, 0xb8, 0xd2, 0x3f, 0xba, 0xd2, 0x26, + 0x06, 0xae, 0x58, 0x74, 0xcf, 0x15, 0xc6, 0xda, 0xdd, 0xc7, 0xb6, 0x6d, 0xda, 0x9e, 0xe1, 0x4c, + 0x0f, 0x6a, 0x66, 0xfe, 0xbf, 0x58, 0xa7, 0xae, 0xf2, 0x74, 0x0f, 0x65, 0xba, 0x67, 0xe1, 0xa6, + 0x47, 0xed, 0xba, 0xa6, 0xd5, 0xea, 0xee, 0x64, 0xbb, 0xb0, 0xd5, 0x2e, 0xd1, 0x2e, 0xaa, 0x63, + 0x82, 0xab, 0xf5, 0x0e, 0xf3, 0x78, 0x87, 0x8e, 0x81, 0x77, 0xd5, 0x36, 0x8d, 0xc4, 0x17, 0x00, + 0x8e, 0x2e, 0xdb, 0x58, 0xa3, 0x58, 0xc1, 0xff, 0xab, 0x61, 0x42, 0xd1, 0xdf, 0x61, 0xa8, 0x82, + 0xa9, 0x56, 0xd0, 0xa8, 0x16, 0x05, 0x71, 0x30, 0x15, 0x99, 0xbb, 0x20, 0xb5, 0x47, 0x68, 0x8b, + 0x51, 0xe5, 0x56, 0x37, 0x30, 0xd5, 0x72, 0x7b, 0x16, 0x56, 0x9a, 0x46, 0x28, 0x0b, 0x03, 0xc4, + 0xc2, 0x7a, 0xd4, 0xc7, 0x8c, 0x25, 0xe9, 0xcd, 0xe1, 0x95, 0x38, 0x4e, 0xd6, 0xc2, 0xba, 0x83, + 0xb3, 0x34, 0xfe, 0xd1, 0xfe, 0x88, 0x63, 0x2e, 0x95, 0x74, 0xd5, 0xf9, 0x55, 0x18, 0xd8, 0x42, + 0xf8, 0xd1, 0x62, 0x90, 0x9f, 0x9b, 0xf8, 0x05, 0xc0, 0x31, 0xcf, 0x65, 0x62, 0x99, 0x55, 0x82, + 0xd1, 0xb5, 0x23, 0x3e, 0xc7, 0xbb, 0xfa, 0xbc, 0x8a, 0x69, 0x17, 0x87, 0xb7, 0xe0, 0x38, 0xd9, + 0x23, 0x14, 0x57, 0xd4, 0x26, 0x88, 0x9f, 0x81, 0xfc, 0xb5, 0x03, 0x24, 0xcb, 0xb4, 0x8e, 0x42, + 0x8d, 0x71, 0xf3, 0x1b, 0x1e, 0xe0, 0x76, 0xdb, 0x0d, 0xcc, 0xf4, 0xba, 0x81, 0x55, 0x4c, 0x07, + 0xa0, 0xff, 0x0c, 0xc0, 0x31, 0x05, 0x5b, 0x65, 0x4d, 0x6f, 0x86, 0xec, 0x1f, 0x47, 0xe8, 0x5f, + 0xec, 0x4a, 0xdf, 0x35, 0xeb, 0x72, 0x05, 0xb9, 0x36, 0x8f, 0x53, 0xbd, 0x3c, 0x76, 0x81, 0x7a, + 0x78, 0x8d, 0x52, 0x50, 0xb0, 0x31, 0x31, 0x6b, 0xb6, 0x8e, 0xd5, 0x3a, 0xb6, 0x89, 0x61, 0x56, + 0xd9, 0xcd, 0x86, 0x97, 0x02, 0xcf, 0x0f, 0x00, 0x50, 0xc6, 0x3d, 0xe9, 0x2d, 0x2e, 0x6c, 0xa5, + 0x79, 0x1a, 0x8e, 0x37, 0x59, 0xf2, 0x28, 0x27, 0x3e, 0x01, 0x10, 0xae, 0x62, 0xea, 0xb1, 0x3e, + 0x0f, 0xc3, 0x55, 0xad, 0x82, 0x89, 0xa5, 0xe9, 0x98, 0xd1, 0x0e, 0x2b, 0xaf, 0x36, 0x10, 0x82, + 0x01, 0x67, 0xc1, 0x18, 0x85, 0x15, 0xf6, 0x8c, 0xfe, 0x03, 0x9d, 0x13, 0x19, 0x98, 0x5a, 0x34, + 0xed, 0x8a, 0x46, 0x99, 0x3b, 0x63, 0x73, 0x57, 0xfa, 0x08, 0x91, 0xe7, 0x46, 0x86, 0x19, 0x2e, + 0x9b, 0x05, 0xac, 0x8c, 0xd9, 0x6d, 0x7b, 0x89, 0xfb, 0x41, 0x18, 0x69, 0xd1, 0x44, 0x9b, 0x30, + 0xa2, 0xb3, 0x44, 0x65, 0xa7, 0xb9, 0x97, 0x9b, 0xec, 0xaf, 0x20, 0x5c, 0x96, 0x0a, 0xe4, 0x08, + 0xce, 0x09, 0xe8, 0x9f, 0x70, 0xc4, 0xe6, 0x77, 0xc2, 0x01, 0xfd, 0xfd, 0x55, 0x58, 0x7b, 0xb6, + 0x28, 0x11, 0x17, 0x83, 0x41, 0x76, 0x0b, 0x51, 0xe0, 0x0d, 0x21, 0x6a, 0x2b, 0xb5, 0xe1, 0x93, + 0x28, 0xb5, 0x53, 0x27, 0x52, 0x6a, 0xc1, 0x93, 0x2a, 0x35, 0x74, 0x1d, 0x06, 0x09, 0xd5, 0x68, + 0x8d, 0x44, 0x3f, 0xfd, 0x18, 0xc4, 0xfd, 0x53, 0x91, 0xb9, 0x4b, 0xbd, 0x50, 0xb3, 0x4c, 0x9f, + 0x3b, 0xbb, 0xe4, 0x7f, 0xb0, 0x0f, 0x14, 0x17, 0x02, 0xad, 0xc1, 0xd3, 0x36, 0x2e, 0x62, 0xdb, + 0x36, 0xaa, 0x25, 0x95, 0xbf, 0x22, 0x48, 0x34, 0xc4, 0x50, 0xcf, 0xbf, 0xa6, 0x44, 0x8b, 0x8c, + 0xa7, 0xd0, 0x34, 0xe3, 0xfb, 0x04, 0xdd, 0x82, 0xd1, 0x02, 0x2e, 0x63, 0x8a, 0x0b, 0x2a, 0x97, + 0xe1, 0x42, 0x13, 0x31, 0xdc, 0x07, 0xe2, 0x84, 0x6b, 0xad, 0xb8, 0xc6, 0x1e, 0xee, 0xbf, 0xe0, + 0x64, 0xc1, 0x20, 0x5a, 0xbe, 0xdc, 0x0d, 0x18, 0xf6, 0x01, 0x7c, 0xce, 0x33, 0xef, 0x40, 0x6e, + 0xa9, 0xe6, 0xf5, 0x40, 0x08, 0x08, 0xbe, 0xc4, 0x67, 0x00, 0x46, 0x36, 0x0c, 0xd2, 0x67, 0x05, + 0xff, 0x19, 0x8e, 0x94, 0xb5, 0x3c, 0x2e, 0xab, 0x45, 0xa3, 0x4c, 0xb1, 0xed, 0x56, 0x72, 0x84, + 0xed, 0x65, 0xd8, 0x16, 0xba, 0x00, 0x47, 0x6d, 0x6c, 0x99, 0x36, 0x55, 0x8b, 0x06, 0x2e, 0x17, + 0x48, 0xd4, 0x1f, 0xf7, 0x4f, 0x85, 0x95, 0x11, 0xbe, 0x99, 0x61, 0x7b, 0x68, 0x16, 0x9e, 0x71, + 0x95, 0x78, 0x50, 0x3c, 0xdd, 0x00, 0xd3, 0x45, 0x5c, 0xc6, 0x43, 0xc8, 0x2d, 0x12, 0xdf, 0x04, + 0xa1, 0xc0, 0xfd, 0xe4, 0x85, 0xbc, 0x46, 0x71, 0x05, 0x4d, 0xc0, 0x20, 0xc5, 0x55, 0xad, 0x4a, + 0x59, 0xae, 0x85, 0x15, 0x77, 0x75, 0x8c, 0x36, 0x24, 0x40, 0x7f, 0xcd, 0x28, 0xf0, 0x4e, 0xa8, + 0x38, 0x8f, 0x28, 0x0e, 0x23, 0x05, 0x4c, 0x74, 0xdb, 0x60, 0xef, 0xe6, 0x68, 0x84, 0x33, 0x6d, + 0xd9, 0x42, 0x31, 0x18, 0xf2, 0xae, 0x39, 0x3a, 0x12, 0x07, 0x53, 0x21, 0xa5, 0xb9, 0x46, 0x39, + 0x18, 0x64, 0x97, 0xc2, 0x29, 0x45, 0xe6, 0xae, 0xf5, 0xca, 0xd7, 0x4e, 0x6e, 0xd2, 0x06, 0x33, + 0x97, 0xab, 0xd4, 0xde, 0x53, 0x5c, 0x2c, 0xa4, 0xc3, 0x48, 0xcb, 0xf8, 0xe4, 0x66, 0x42, 0x7a, + 0x60, 0xe8, 0xf4, 0x2b, 0x0c, 0x8e, 0xdf, 0x8a, 0x8a, 0xe6, 0x21, 0x34, 0x77, 0xab, 0xd8, 0x56, + 0x9d, 0xd1, 0x24, 0x1a, 0x66, 0x45, 0x1c, 0xeb, 0x38, 0xe3, 0x96, 0x81, 0x77, 0xbd, 0x5c, 0x0b, + 0x33, 0x6d, 0x67, 0xa7, 0xad, 0x11, 0x8d, 0x9e, 0x44, 0x23, 0x1a, 0xfb, 0x4d, 0x8d, 0x28, 0x03, + 0x43, 0x25, 0x4c, 0x59, 0x23, 0x71, 0x5b, 0xda, 0x20, 0xcd, 0x48, 0x39, 0x55, 0xe2, 0x0b, 0xb4, + 0x0d, 0xa1, 0x9b, 0xa6, 0x04, 0x53, 0xb7, 0x55, 0x1c, 0xa3, 0x01, 0x85, 0x39, 0x48, 0x16, 0xd3, + 0xd8, 0x3c, 0x8c, 0xb4, 0xc4, 0xd7, 0xc9, 0xbe, 0x1d, 0xbc, 0xe7, 0x66, 0xaa, 0xf3, 0x88, 0xce, + 0xc0, 0xe1, 0xba, 0x56, 0xae, 0x79, 0x49, 0xca, 0x17, 0x0b, 0xbe, 0xab, 0x20, 0xb6, 0x08, 0x85, + 0xce, 0xf8, 0x0d, 0x62, 0xbf, 0x1e, 0x08, 0x0d, 0x0b, 0xc1, 0xc4, 0xdb, 0x00, 0x8e, 0xb4, 0xe6, + 0x05, 0xca, 0xc0, 0x61, 0x83, 0xe2, 0x0a, 0x89, 0xf2, 0xfe, 0x3a, 0x3b, 0x68, 0x52, 0x29, 0xdc, + 0x1c, 0xcd, 0xc2, 0x20, 0x9f, 0xd1, 0xa3, 0x3e, 0x06, 0x14, 0xed, 0x00, 0x92, 0x1d, 0x21, 0xbb, + 0x5e, 0x57, 0x2f, 0xb1, 0x03, 0x47, 0x57, 0x58, 0x1b, 0x3c, 0xfe, 0x10, 0x31, 0x05, 0x85, 0xa2, + 0x66, 0x94, 0x55, 0xa3, 0xd8, 0x6c, 0x97, 0xac, 0x94, 0x43, 0xca, 0x98, 0xb3, 0xbf, 0x56, 0xf4, + 0xda, 0xe0, 0xf4, 0x4b, 0x00, 0xcf, 0x76, 0x1d, 0x1c, 0x50, 0x0c, 0x4e, 0xac, 0xca, 0x39, 0x55, + 0xc9, 0x6e, 0xab, 0x99, 0x2d, 0xe5, 0x46, 0x3a, 0xa7, 0xae, 0xc8, 0x99, 0xf4, 0xcd, 0x8d, 0x9c, + 0x30, 0x84, 0xfe, 0x04, 0x27, 0x3b, 0x64, 0x99, 0x2d, 0x45, 0x5d, 0x56, 0xe4, 0x74, 0x4e, 0x16, + 0x00, 0x12, 0x61, 0xac, 0x8b, 0x58, 0x91, 0xb7, 0x37, 0xd2, 0xcb, 0xb2, 0xe0, 0x43, 0x93, 0xf0, + 0x6c, 0x87, 0x3c, 0x9b, 0x4b, 0xe7, 0x6e, 0x66, 0x05, 0x3f, 0x3a, 0x07, 0xff, 0xd0, 0x21, 0x52, + 0xe4, 0xf4, 0x8a, 0x10, 0x40, 0x17, 0x61, 0xfc, 0x88, 0x20, 0x23, 0x2b, 0xca, 0xda, 0xe6, 0xaa, + 0xba, 0xb5, 0xb4, 0x2e, 0x2f, 0xe7, 0xb2, 0xc2, 0x70, 0x17, 0xad, 0x25, 0x65, 0xeb, 0xba, 0xbc, + 0xc9, 0x95, 0xe5, 0xcd, 0x65, 0x39, 0x2b, 0x04, 0xe7, 0xbe, 0x82, 0xd0, 0x9f, 0xde, 0x5e, 0x43, + 0x3f, 0x03, 0x18, 0xe4, 0x93, 0x0c, 0x1a, 0x6c, 0xe2, 0x89, 0x49, 0xfd, 0xaa, 0xbb, 0x63, 0xe1, + 0xbb, 0xa0, 0xf1, 0x75, 0x54, 0x2e, 0x5e, 0xb9, 0xa3, 0x27, 0x35, 0xcb, 0x22, 0x54, 0xd3, 0x77, + 0x92, 0x79, 0x8d, 0x18, 0x7a, 0xb2, 0x46, 0xb0, 0x7d, 0xa9, 0x5d, 0x40, 0xa8, 0x56, 0x2d, 0x68, + 0x76, 0x81, 0xcb, 0xea, 0x98, 0x24, 0x0d, 0x33, 0xb9, 0x73, 0x95, 0x24, 0x77, 0x6d, 0x83, 0xe2, + 0xbb, 0xdf, 0x3f, 0xfb, 0xc0, 0xb7, 0x98, 0x98, 0x77, 0xff, 0xa8, 0xa6, 0x9a, 0x99, 0x40, 0x52, + 0xff, 0xf7, 0xfa, 0x84, 0xd4, 0xdc, 0xdc, 0x3f, 0xf2, 0xc7, 0x8e, 0x2c, 0x80, 0x69, 0xf4, 0x12, + 0x40, 0xff, 0x2a, 0xa6, 0x68, 0xba, 0xaf, 0xa1, 0x92, 0x73, 0x9e, 0x19, 0x60, 0x00, 0x4d, 0xbc, + 0x0f, 0x1e, 0x7e, 0xe9, 0x73, 0x48, 0xaf, 0x77, 0x23, 0x5d, 0x31, 0xab, 0x06, 0x35, 0x5f, 0xcb, + 0xdb, 0x13, 0xb7, 0x50, 0xb7, 0xb1, 0x56, 0x60, 0xcc, 0xe7, 0xd1, 0xdf, 0xba, 0x31, 0x7f, 0x13, + 0x61, 0x2e, 0xdd, 0x47, 0x3f, 0x01, 0x18, 0x70, 0xca, 0x14, 0xcd, 0xf4, 0x57, 0xcc, 0x9c, 0xf6, + 0xa5, 0x41, 0x2a, 0x3f, 0x71, 0xef, 0xf7, 0xe2, 0x3d, 0x87, 0x66, 0x07, 0xe5, 0x8d, 0xee, 0xf9, + 0xe0, 0x29, 0x77, 0xb0, 0x46, 0x03, 0x4e, 0xe0, 0xb1, 0x54, 0xdf, 0xfa, 0x2e, 0xf3, 0xfb, 0x27, + 0x9c, 0xe2, 0x9b, 0xb1, 0xb5, 0x63, 0xa7, 0x78, 0x87, 0xda, 0xbe, 0x93, 0xf2, 0x3f, 0x00, 0x18, + 0xe4, 0x7d, 0xb5, 0x77, 0xb1, 0xb7, 0xf5, 0xdf, 0xd8, 0x84, 0xc4, 0x3f, 0xc8, 0x48, 0xde, 0x07, + 0x19, 0x49, 0xae, 0x58, 0x74, 0x2f, 0xf1, 0xce, 0x09, 0x33, 0xbe, 0x36, 0x7d, 0xdc, 0xd4, 0x5e, + 0x00, 0xd3, 0xb1, 0xe2, 0x83, 0x03, 0xe0, 0xfb, 0xee, 0x00, 0xfc, 0xa5, 0x07, 0x37, 0xfe, 0x06, + 0x7e, 0x72, 0x00, 0x40, 0xe3, 0x00, 0xcc, 0x0c, 0xf0, 0xd2, 0xbe, 0xfb, 0x6d, 0xd4, 0x27, 0x80, + 0xa5, 0x0f, 0xc1, 0xa3, 0xc5, 0xe1, 0x65, 0xe5, 0xe6, 0xca, 0xc6, 0xe3, 0xa7, 0xe2, 0xd0, 0x93, + 0xa7, 0xe2, 0xd0, 0x8b, 0xa7, 0x22, 0x78, 0xab, 0x21, 0x82, 0xcf, 0x1b, 0x22, 0x78, 0xd8, 0x10, + 0xc1, 0xe3, 0x86, 0x08, 0x7e, 0x6c, 0x88, 0xe0, 0x79, 0x43, 0x1c, 0x7a, 0xd1, 0x10, 0xc1, 0x7b, + 0x87, 0xe2, 0xd0, 0x83, 0x43, 0x11, 0x3c, 0x3e, 0x14, 0x87, 0x9e, 0x1c, 0x8a, 0x43, 0xff, 0xce, + 0x95, 0x4c, 0x6b, 0xa7, 0x24, 0xd5, 0x4d, 0x67, 0x40, 0xb6, 0x35, 0xa9, 0x46, 0x52, 0xec, 0xc1, + 0xf9, 0xc3, 0x98, 0xb4, 0x6c, 0xb3, 0x6e, 0x14, 0xb0, 0x9d, 0xf4, 0xc4, 0x29, 0x2b, 0x5f, 0x32, + 0x53, 0xf8, 0x0e, 0x75, 0xbf, 0x10, 0xbd, 0xe6, 0x83, 0x55, 0x3e, 0xc8, 0xc2, 0x73, 0xf9, 0xd7, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x23, 0x1f, 0x64, 0x25, 0xe1, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.vesapi.go b/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.vesapi.go index 81443d9e7..b19ca7f01 100644 --- a/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/k8s_cluster_role/public_crudapi.vesapi.go @@ -3024,10 +3024,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3084,10 +3088,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3190,10 +3198,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_cluster_role_binding/crudapi/api.vesapi.go b/pbgo/extschema/schema/k8s_cluster_role_binding/crudapi/api.vesapi.go index abf61fb73..2e143efb2 100644 --- a/pbgo/extschema/schema/k8s_cluster_role_binding/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/k8s_cluster_role_binding/crudapi/api.vesapi.go @@ -3218,10 +3218,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_cluster_role_binding/object.pb.go b/pbgo/extschema/schema/k8s_cluster_role_binding/object.pb.go index 2cc7c6a7d..db58111d7 100644 --- a/pbgo/extschema/schema/k8s_cluster_role_binding/object.pb.go +++ b/pbgo/extschema/schema/k8s_cluster_role_binding/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_f23454d819303cad = []byte{ - // 599 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0xcf, 0x4b, 0x1b, 0x41, - 0x14, 0xc7, 0x33, 0x89, 0x44, 0x19, 0xc5, 0xca, 0xf6, 0xb2, 0xd5, 0x76, 0x90, 0x14, 0x8a, 0x14, - 0x77, 0xb7, 0x68, 0x2d, 0x56, 0x4a, 0x05, 0x15, 0xbc, 0x28, 0x42, 0xec, 0xc9, 0x16, 0xc2, 0xec, - 0xe4, 0x65, 0x9d, 0x66, 0x93, 0x19, 0x66, 0x66, 0x53, 0x3d, 0x14, 0x4a, 0xff, 0x80, 0xe2, 0xb9, - 0xf7, 0x42, 0xe9, 0x5f, 0x51, 0x7b, 0xea, 0x51, 0x3c, 0x79, 0xac, 0x9b, 0x4b, 0x8f, 0x1e, 0x7b, - 0x6b, 0x71, 0xd6, 0x15, 0x23, 0x91, 0xc6, 0xdb, 0x5b, 0xde, 0xf7, 0xf3, 0xe5, 0xcd, 0xfb, 0xb1, - 0x78, 0xbe, 0x03, 0xda, 0xe7, 0x22, 0xd0, 0x6c, 0x17, 0x5a, 0x34, 0x68, 0x2e, 0xea, 0x1a, 0x8b, - 0x13, 0x6d, 0x40, 0xd5, 0x94, 0x88, 0xa1, 0x16, 0xf2, 0x76, 0x9d, 0xb7, 0xa3, 0x40, 0x84, 0x6f, - 0x81, 0x19, 0x5f, 0x2a, 0x61, 0x84, 0xf3, 0x28, 0x83, 0xfc, 0x0c, 0xf2, 0x6f, 0x82, 0x26, 0xbd, - 0x88, 0x9b, 0xdd, 0x24, 0xf4, 0x99, 0x68, 0x05, 0x91, 0x88, 0x44, 0x60, 0xf1, 0x30, 0x69, 0xd8, - 0x2f, 0xfb, 0x61, 0xa3, 0xcc, 0x76, 0x72, 0x6e, 0xc0, 0x5a, 0xcc, 0xbe, 0x04, 0x7d, 0xc1, 0x4c, - 0xf5, 0x32, 0x42, 0x1a, 0x2e, 0xda, 0x79, 0xf2, 0x5e, 0x6f, 0xf2, 0x2a, 0x57, 0xe9, 0x4d, 0x75, - 0x40, 0x43, 0xbb, 0xd3, 0x8b, 0x57, 0xfe, 0x96, 0x70, 0x79, 0xcb, 0xbe, 0xdb, 0x79, 0x8e, 0x47, - 0x5a, 0x60, 0x68, 0x9d, 0x1a, 0xea, 0xa2, 0x69, 0x34, 0x33, 0x3a, 0xf7, 0xc0, 0xef, 0x6d, 0x42, - 0x26, 0xdc, 0x04, 0x43, 0x5f, 0xed, 0x4b, 0xa8, 0x5e, 0xca, 0x9d, 0x0d, 0x7c, 0x47, 0xef, 0x6b, - 0x03, 0xad, 0xda, 0xa5, 0x43, 0xd1, 0x3a, 0x3c, 0xbc, 0xe6, 0xb0, 0x6d, 0x55, 0xd7, 0x7c, 0xc6, - 0x33, 0x76, 0x33, 0x77, 0x5b, 0xc3, 0x43, 0x5a, 0x02, 0x73, 0x4b, 0xd6, 0xe2, 0x89, 0x3f, 0xd8, - 0x24, 0xfc, 0x6d, 0x09, 0xcc, 0xfa, 0x59, 0x7a, 0xe9, 0x4b, 0xf1, 0xe3, 0x72, 0x39, 0x73, 0x3e, - 0x58, 0x46, 0x3f, 0x0e, 0xdd, 0xe2, 0x04, 0x3a, 0x3e, 0x74, 0x3f, 0x15, 0xf1, 0x3c, 0x2e, 0xad, - 0x83, 0x71, 0x66, 0x1b, 0x0b, 0x7b, 0xcc, 0xa3, 0x52, 0x6a, 0x43, 0x59, 0xd3, 0x0b, 0xa9, 0xe6, - 0xcc, 0x6b, 0x89, 0x36, 0x37, 0x42, 0xcd, 0x4e, 0x77, 0x40, 0x7b, 0x5c, 0x78, 0xcd, 0x45, 0xed, - 0x29, 0xa0, 0x75, 0xbc, 0x80, 0x87, 0xab, 0x20, 0x63, 0xca, 0xc0, 0x79, 0xdc, 0x0f, 0x4c, 0x34, - 0xf4, 0x52, 0xef, 0x14, 0x37, 0x80, 0x9f, 0xe2, 0xf2, 0xaa, 0x02, 0x6a, 0x6e, 0x4d, 0xad, 0x41, - 0x0c, 0xb7, 0xa6, 0x86, 0x36, 0xb8, 0xbe, 0xe5, 0xc3, 0x2a, 0xaf, 0xf1, 0x48, 0xde, 0x39, 0x67, - 0x0b, 0x0f, 0x47, 0xac, 0x66, 0x9b, 0x9f, 0xcd, 0xef, 0xd9, 0xa0, 0xcd, 0x5f, 0x8f, 0x45, 0x48, - 0xe3, 0xcb, 0x11, 0x94, 0x23, 0x76, 0x1e, 0x57, 0xfe, 0x20, 0x3c, 0xb6, 0x6d, 0xa8, 0x49, 0xf4, - 0xc0, 0x4b, 0x96, 0xc9, 0xfb, 0x2c, 0xd9, 0x0e, 0x1e, 0xcd, 0x2e, 0xb4, 0xa6, 0xa0, 0xa1, 0xdd, - 0xe2, 0x74, 0x69, 0x66, 0x74, 0xee, 0x7e, 0xdf, 0x15, 0xad, 0x42, 0xe3, 0x1c, 0x5e, 0x99, 0xfa, - 0xf6, 0xde, 0xbd, 0xa9, 0xe4, 0x2a, 0x16, 0xb9, 0x56, 0x3b, 0x2f, 0x30, 0x66, 0xa2, 0x5d, 0xe7, - 0xf6, 0x34, 0xdc, 0x52, 0x5f, 0xeb, 0xd5, 0x5c, 0x60, 0xeb, 0xba, 0xa2, 0x5f, 0xba, 0x7b, 0xfc, - 0x72, 0x02, 0x8f, 0xe3, 0xb1, 0xbc, 0x54, 0x3f, 0xe1, 0xf5, 0x95, 0xcf, 0xe8, 0xe8, 0x94, 0x14, - 0x4e, 0x4e, 0x49, 0xe1, 0xec, 0x94, 0xa0, 0x0f, 0x29, 0x41, 0x5f, 0x53, 0x82, 0x7e, 0xa6, 0x04, - 0x1d, 0xa5, 0x04, 0x9d, 0xa4, 0x04, 0xfd, 0x4a, 0x09, 0xfa, 0x9d, 0x92, 0xc2, 0x59, 0x4a, 0xd0, - 0x41, 0x97, 0x14, 0xbe, 0x77, 0x09, 0x3a, 0xea, 0x92, 0xc2, 0x49, 0x97, 0x14, 0x76, 0xde, 0x44, - 0x42, 0x36, 0x23, 0xbf, 0x23, 0x62, 0x03, 0x4a, 0x51, 0x3f, 0xd1, 0x81, 0x0d, 0x1a, 0x42, 0xb5, - 0x3c, 0xa9, 0x44, 0x87, 0xd7, 0x41, 0x79, 0x79, 0x3a, 0x90, 0x61, 0x24, 0x02, 0xd8, 0x33, 0x17, - 0xb7, 0xfe, 0x9f, 0xdf, 0x4b, 0x58, 0xb6, 0xd7, 0x3f, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x51, - 0x0a, 0xcf, 0x22, 0x1b, 0x05, 0x00, 0x00, + // 618 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xb1, 0x4f, 0x14, 0x41, + 0x14, 0xc6, 0x6f, 0x38, 0x3c, 0xc8, 0x40, 0x90, 0xac, 0xcd, 0x0a, 0x3a, 0x21, 0x67, 0x62, 0x28, + 0xdc, 0x5d, 0x03, 0xd1, 0x20, 0x31, 0x92, 0x00, 0x09, 0x0d, 0x84, 0x78, 0x47, 0x85, 0x26, 0x97, + 0xd9, 0xd9, 0x77, 0xcb, 0x78, 0x7b, 0x3b, 0x9b, 0x99, 0xd9, 0x13, 0x0a, 0x13, 0xe3, 0x5f, 0x40, + 0x65, 0x61, 0x6f, 0x62, 0xfc, 0x1b, 0x2c, 0xc4, 0xca, 0x92, 0x50, 0x51, 0xca, 0x5e, 0x63, 0x49, + 0x69, 0x69, 0x98, 0x65, 0x91, 0x23, 0x47, 0xbc, 0x82, 0xee, 0x6d, 0xbe, 0xef, 0xfb, 0xe5, 0xed, + 0xcc, 0x9b, 0x87, 0xe7, 0x3b, 0xa0, 0x5c, 0x2e, 0x3c, 0xc5, 0x76, 0xa0, 0x4d, 0xbd, 0xd6, 0x82, + 0x6a, 0xb0, 0x28, 0x55, 0x1a, 0x64, 0x43, 0x8a, 0x08, 0x1a, 0x3e, 0x8f, 0x03, 0x1e, 0x87, 0x9e, + 0xf0, 0xdf, 0x00, 0xd3, 0x6e, 0x22, 0x85, 0x16, 0xd6, 0xc3, 0x3c, 0xe4, 0xe6, 0x21, 0xf7, 0xba, + 0xd0, 0x94, 0x13, 0x72, 0xbd, 0x93, 0xfa, 0x2e, 0x13, 0x6d, 0x2f, 0x14, 0xa1, 0xf0, 0x4c, 0xdc, + 0x4f, 0x9b, 0xe6, 0xcb, 0x7c, 0x98, 0x2a, 0xc7, 0x4e, 0xcd, 0x0d, 0xd8, 0x8b, 0xde, 0x4b, 0x40, + 0x9d, 0x67, 0xa6, 0x7b, 0x33, 0x22, 0xd1, 0x5c, 0xc4, 0x85, 0x78, 0xb7, 0x57, 0xbc, 0x9c, 0xab, + 0xf6, 0x4a, 0x1d, 0x50, 0x10, 0x77, 0x7a, 0xe3, 0xd5, 0x8f, 0xb7, 0x70, 0x65, 0xd3, 0xfc, 0xb7, + 0xf5, 0x0c, 0x8f, 0xb6, 0x41, 0xd3, 0x80, 0x6a, 0x6a, 0xa3, 0x19, 0x34, 0x3b, 0x36, 0x77, 0xdf, + 0xed, 0x3d, 0x84, 0xdc, 0xb8, 0x01, 0x9a, 0x6e, 0xed, 0x25, 0x50, 0xbb, 0xb0, 0x5b, 0xeb, 0xf8, + 0xb6, 0xda, 0x53, 0x1a, 0xda, 0x8d, 0x0b, 0xc2, 0x90, 0x21, 0x3c, 0xb8, 0x42, 0xa8, 0x1b, 0xd7, + 0x15, 0xce, 0x44, 0x9e, 0xdd, 0x28, 0x68, 0xab, 0x78, 0x58, 0x25, 0xc0, 0xec, 0xb2, 0x41, 0x3c, + 0x76, 0x07, 0xbb, 0x09, 0xb7, 0x9e, 0x00, 0x33, 0x3c, 0x93, 0x5e, 0xfc, 0x56, 0xfe, 0xb0, 0x54, + 0xc9, 0xc9, 0xfb, 0x4b, 0xe8, 0xc7, 0x81, 0x3d, 0x34, 0x89, 0x8e, 0x0e, 0xec, 0xcf, 0x65, 0x5c, + 0xc7, 0xe5, 0x35, 0xd0, 0xd6, 0x7a, 0xf3, 0xc9, 0x2e, 0x73, 0x68, 0x92, 0x28, 0x4d, 0x59, 0xcb, + 0xf1, 0xa9, 0xe2, 0xcc, 0x69, 0x8b, 0x98, 0x6b, 0x21, 0x1f, 0xcd, 0xf4, 0x8a, 0x4a, 0xd3, 0x38, + 0xa0, 0x32, 0xf8, 0xa7, 0x77, 0x40, 0x39, 0x5c, 0x38, 0xad, 0x05, 0xe5, 0x48, 0xa0, 0x01, 0xae, + 0xe1, 0x91, 0x1a, 0x24, 0x11, 0x65, 0x60, 0xad, 0xf5, 0x03, 0xa7, 0x0a, 0xae, 0xa7, 0xe6, 0xe2, + 0x25, 0xe4, 0x5b, 0xc9, 0x35, 0xe0, 0x97, 0xb8, 0xb2, 0x22, 0x81, 0xea, 0x9b, 0x45, 0xae, 0x42, + 0x04, 0x37, 0x89, 0xdc, 0xc2, 0xc3, 0xeb, 0x5c, 0xdd, 0xf0, 0x79, 0x56, 0x5f, 0xe1, 0xd1, 0xe2, + 0x42, 0xad, 0x4d, 0x3c, 0x12, 0xb2, 0x86, 0x99, 0x89, 0x7c, 0xac, 0x9e, 0x0e, 0x3a, 0x13, 0x6b, + 0x91, 0xf0, 0x69, 0x74, 0x31, 0x19, 0x95, 0x90, 0x9d, 0xd5, 0xd5, 0x3f, 0x08, 0x8f, 0xd7, 0x35, + 0xd5, 0xa9, 0x1a, 0x78, 0xf6, 0x73, 0x7b, 0x9f, 0xd9, 0xdf, 0xc6, 0x63, 0xf9, 0xe2, 0x68, 0x48, + 0x68, 0x2a, 0x7b, 0x68, 0xa6, 0x3c, 0x3b, 0x36, 0x77, 0xaf, 0xef, 0xcb, 0xa9, 0x41, 0xf3, 0x2c, + 0xbc, 0x3c, 0xfd, 0xf5, 0x9d, 0x7d, 0x5d, 0xcb, 0x35, 0x2c, 0x0a, 0xaf, 0xb2, 0x9e, 0x63, 0xcc, + 0x44, 0x1c, 0x70, 0xf3, 0x62, 0xed, 0x72, 0x5f, 0xf4, 0x4a, 0x61, 0x30, 0x7d, 0x5d, 0xf2, 0x2f, + 0xde, 0x39, 0x7a, 0x31, 0x89, 0x27, 0xf0, 0x78, 0xd1, 0xaa, 0x9b, 0xf2, 0x60, 0xf9, 0x13, 0x3a, + 0x3c, 0x21, 0xa5, 0xe3, 0x13, 0x52, 0x3a, 0x3d, 0x21, 0xe8, 0x7d, 0x46, 0xd0, 0x97, 0x8c, 0xa0, + 0x9f, 0x19, 0x41, 0x87, 0x19, 0x41, 0xc7, 0x19, 0x41, 0xbf, 0x32, 0x82, 0x7e, 0x67, 0xa4, 0x74, + 0x9a, 0x11, 0xb4, 0xdf, 0x25, 0xa5, 0xef, 0x5d, 0x82, 0x0e, 0xbb, 0xa4, 0x74, 0xdc, 0x25, 0xa5, + 0xed, 0xd7, 0xa1, 0x48, 0x5a, 0xa1, 0xdb, 0x11, 0x91, 0x06, 0x29, 0xa9, 0x9b, 0x2a, 0xcf, 0x14, + 0x4d, 0x21, 0xdb, 0x4e, 0x22, 0x45, 0x87, 0x07, 0x20, 0x9d, 0x42, 0xf6, 0x12, 0x3f, 0x14, 0x1e, + 0xec, 0xea, 0xf3, 0x15, 0xf4, 0x9f, 0xad, 0xe7, 0x57, 0xcc, 0x52, 0x9a, 0xff, 0x1b, 0x00, 0x00, + 0xff, 0xff, 0xfb, 0xc5, 0x51, 0x97, 0xb2, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.pb.go b/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.pb.go index 38a08425a..907cf6b1f 100644 --- a/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.pb.go +++ b/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.pb.go @@ -1056,109 +1056,110 @@ func init() { } var fileDescriptor_feeddab4a684cea3 = []byte{ - // 1623 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xdd, 0x6f, 0x1a, 0xc7, - 0x16, 0xf7, 0x00, 0x26, 0x30, 0xf8, 0x63, 0x33, 0x37, 0x71, 0x30, 0x37, 0x17, 0x71, 0x49, 0x14, - 0xf9, 0xfa, 0x5e, 0x96, 0xc8, 0xce, 0x87, 0xe3, 0x7b, 0x6f, 0x52, 0x6c, 0x83, 0xe5, 0xd4, 0xb1, - 0xd3, 0x85, 0x58, 0x69, 0x1b, 0x69, 0xb5, 0x2c, 0x03, 0xd9, 0x1a, 0x76, 0xb7, 0x3b, 0x03, 0x0e, - 0xad, 0x2c, 0x55, 0x51, 0x55, 0xa9, 0x6f, 0x91, 0xfa, 0x56, 0x55, 0x55, 0x1f, 0xda, 0xaa, 0x7f, - 0x42, 0x24, 0xab, 0x52, 0xde, 0x12, 0xe5, 0xa1, 0xb2, 0xda, 0x97, 0x3c, 0x36, 0xb8, 0xaa, 0xa2, - 0x2a, 0x0f, 0x51, 0xfe, 0x82, 0x6a, 0x67, 0x76, 0x09, 0x60, 0xd2, 0x00, 0xf6, 0x13, 0x3b, 0x73, - 0xce, 0xf9, 0xcd, 0xf9, 0xcd, 0xf9, 0xe0, 0xec, 0xc2, 0xff, 0xd6, 0x30, 0x11, 0x35, 0x23, 0x49, - 0xd4, 0xdb, 0xb8, 0xa2, 0x24, 0x37, 0xe7, 0x88, 0xac, 0x96, 0xab, 0x84, 0x62, 0x4b, 0xb6, 0x8c, - 0x32, 0x96, 0xf3, 0x9a, 0x5e, 0xd0, 0xf4, 0x52, 0xd2, 0xac, 0xe6, 0xcb, 0x9a, 0x2a, 0xab, 0x56, - 0xb5, 0xa0, 0x98, 0x9a, 0x68, 0x5a, 0x06, 0x35, 0xd0, 0x19, 0x6e, 0x2c, 0x72, 0x63, 0xf1, 0x75, - 0xc6, 0x91, 0x44, 0x49, 0xa3, 0xb7, 0xab, 0x79, 0x51, 0x35, 0x2a, 0xc9, 0x92, 0x51, 0x32, 0x92, - 0xcc, 0x3c, 0x5f, 0x2d, 0xb2, 0x15, 0x5b, 0xb0, 0x27, 0x0e, 0x1b, 0x39, 0x59, 0x32, 0x8c, 0x52, - 0x19, 0x27, 0x15, 0x53, 0x4b, 0x2a, 0xba, 0x6e, 0x50, 0x85, 0x6a, 0x86, 0x4e, 0x1c, 0xe9, 0xdf, - 0x1d, 0x69, 0x13, 0x03, 0x57, 0x4c, 0x5a, 0x77, 0x84, 0x91, 0x76, 0x3a, 0xd8, 0xb2, 0x0c, 0xcb, - 0x35, 0x9c, 0xed, 0x91, 0xaa, 0x91, 0xff, 0x00, 0xab, 0xd4, 0x31, 0x9a, 0xe9, 0xd1, 0x88, 0xd6, - 0x4d, 0xdc, 0xf4, 0xb0, 0xdd, 0xc6, 0x30, 0x5b, 0xdd, 0x9f, 0x6c, 0x17, 0xb6, 0xda, 0xc5, 0xdb, - 0x45, 0x35, 0x4c, 0xb0, 0x5e, 0xeb, 0x30, 0x8f, 0x75, 0xe8, 0x68, 0x78, 0x4b, 0x6e, 0xd3, 0x88, - 0xdf, 0x07, 0x70, 0x74, 0xd1, 0xc2, 0x0a, 0xc5, 0x12, 0xfe, 0xb0, 0x8a, 0x09, 0x45, 0x57, 0x60, - 0xa0, 0x82, 0xa9, 0x52, 0x50, 0xa8, 0x12, 0x06, 0x31, 0x30, 0x15, 0x9a, 0x39, 0x25, 0xb6, 0x47, - 0x6e, 0x9d, 0x51, 0xe6, 0x56, 0xd7, 0x30, 0x55, 0x72, 0x75, 0x13, 0x4b, 0x4d, 0x23, 0xf4, 0x3e, - 0xf4, 0x11, 0x13, 0xab, 0x61, 0x0f, 0x33, 0xbe, 0x20, 0xf6, 0x16, 0x76, 0x91, 0xe3, 0x65, 0x4d, - 0xac, 0xda, 0x78, 0x0b, 0xe3, 0x5f, 0x6e, 0x8f, 0xd8, 0x30, 0x62, 0x49, 0x95, 0xed, 0x5f, 0x89, - 0x81, 0xce, 0x07, 0x1f, 0x5f, 0xf6, 0xf3, 0xf3, 0xe3, 0x9f, 0x7a, 0xe0, 0x98, 0xeb, 0x3a, 0x31, - 0x0d, 0x9d, 0x60, 0xf4, 0xbf, 0x7d, 0xbe, 0xc7, 0xba, 0xfa, 0xbe, 0x8c, 0x69, 0x17, 0xc7, 0xd7, - 0xe1, 0x38, 0xa9, 0x13, 0x8a, 0x2b, 0x72, 0x13, 0xc4, 0xcb, 0x40, 0xce, 0x74, 0x80, 0x64, 0x99, - 0xd6, 0x7e, 0xa8, 0x31, 0x6e, 0x7e, 0xcd, 0x05, 0xbc, 0xd9, 0x76, 0x13, 0xb3, 0xbd, 0xde, 0xc4, - 0x32, 0xa6, 0x7d, 0x5c, 0xc3, 0x73, 0x00, 0xc7, 0x24, 0x6c, 0x96, 0x15, 0xb5, 0x19, 0xc2, 0xb7, - 0xf6, 0x5d, 0xc3, 0xe9, 0xae, 0xd7, 0xe0, 0x98, 0x75, 0xb9, 0x8a, 0x5b, 0x6d, 0x9e, 0x5f, 0xec, - 0xd5, 0x73, 0x07, 0xf0, 0x0d, 0xde, 0xa3, 0x24, 0x14, 0x2c, 0x4c, 0x8c, 0xaa, 0xa5, 0x62, 0xb9, - 0x86, 0x2d, 0xa2, 0x19, 0x3a, 0xbb, 0xe9, 0xe0, 0x82, 0xef, 0xd9, 0x0e, 0x00, 0xd2, 0xb8, 0x2b, - 0xdd, 0xe0, 0xc2, 0x56, 0xba, 0x47, 0xe1, 0x78, 0x93, 0x2d, 0x8f, 0x7a, 0xfc, 0x7b, 0x00, 0xe1, - 0x32, 0xa6, 0x2e, 0xfb, 0x93, 0x30, 0xa8, 0x2b, 0x15, 0x4c, 0x4c, 0x45, 0xc5, 0x8c, 0x7e, 0x50, - 0x7a, 0xb5, 0x81, 0x10, 0xf4, 0xd9, 0x0b, 0xc6, 0x2c, 0x28, 0xb1, 0x67, 0x54, 0x84, 0xf6, 0x89, - 0x0c, 0x4c, 0x2e, 0x1a, 0x56, 0x45, 0xa1, 0xcc, 0x9d, 0xb1, 0x99, 0xff, 0xf7, 0x11, 0x32, 0xd7, - 0x9d, 0x0c, 0x03, 0x58, 0x34, 0x0a, 0x58, 0x1a, 0xb3, 0xda, 0xf6, 0xe2, 0x3f, 0xfa, 0x61, 0xa8, - 0x45, 0x13, 0x6d, 0xc0, 0x90, 0xca, 0x12, 0x98, 0x9d, 0xea, 0x5c, 0xf6, 0xf9, 0xfe, 0x0a, 0xc6, - 0x61, 0x2d, 0x41, 0x8e, 0x64, 0x9f, 0x84, 0xde, 0x85, 0x23, 0x16, 0xbf, 0x23, 0x0e, 0xec, 0xed, - 0xaf, 0x12, 0xdb, 0xb3, 0x49, 0x0a, 0x39, 0x58, 0x0c, 0xba, 0x5b, 0xe8, 0x7c, 0x7f, 0x11, 0xba, - 0xb6, 0x92, 0x1c, 0x3e, 0x8c, 0x92, 0x3c, 0x72, 0x28, 0x25, 0xe9, 0x3f, 0xec, 0x92, 0x44, 0x59, - 0xe8, 0x27, 0x54, 0xa1, 0x55, 0x12, 0xfe, 0xe6, 0x2b, 0x10, 0xf3, 0x4e, 0x85, 0x66, 0xce, 0xf5, - 0x8a, 0x9e, 0x65, 0x76, 0xdc, 0xf9, 0x05, 0xef, 0x83, 0x6d, 0x20, 0x39, 0x50, 0x68, 0x05, 0x1e, - 0xb5, 0x70, 0x11, 0x5b, 0x96, 0xa6, 0x97, 0x64, 0xfe, 0x57, 0x43, 0xc2, 0x01, 0x86, 0x7e, 0xf2, - 0x35, 0x25, 0x5d, 0x64, 0xbc, 0x85, 0xa6, 0x19, 0xdf, 0x27, 0x68, 0x03, 0x86, 0x0b, 0xb8, 0x8c, - 0x29, 0x2e, 0xc8, 0x5c, 0x86, 0x0b, 0x4d, 0xc4, 0x60, 0x0f, 0x88, 0x13, 0x8e, 0xb5, 0xe4, 0x18, - 0xbb, 0xb8, 0x37, 0xe1, 0x64, 0x41, 0x23, 0x4a, 0xbe, 0xdc, 0x0d, 0x18, 0xf6, 0x00, 0x7c, 0xc2, - 0x35, 0xef, 0x40, 0x6e, 0xa9, 0xfa, 0xab, 0xbe, 0x00, 0x10, 0x3c, 0xf1, 0xef, 0x00, 0x0c, 0xad, - 0x6a, 0xa4, 0xc7, 0x4a, 0xff, 0x27, 0x1c, 0x29, 0x2b, 0x79, 0x5c, 0x96, 0x8b, 0x5a, 0x99, 0x62, - 0xcb, 0xa9, 0xf8, 0x10, 0xdb, 0xcb, 0xb0, 0x2d, 0x74, 0x0a, 0x8e, 0x5a, 0xd8, 0x34, 0x2c, 0x2a, - 0x17, 0x35, 0x5c, 0x2e, 0x90, 0xb0, 0x37, 0xe6, 0x9d, 0x0a, 0x4a, 0x23, 0x7c, 0x33, 0xc3, 0xf6, - 0xd0, 0x59, 0x78, 0xcc, 0x51, 0xe2, 0x41, 0x71, 0x75, 0x7d, 0x4c, 0x17, 0x71, 0x19, 0x0f, 0x21, - 0xb7, 0x88, 0x3f, 0xf7, 0x43, 0x81, 0xfb, 0xc9, 0x0b, 0x7d, 0x85, 0xe2, 0x0a, 0x9a, 0x80, 0x7e, - 0x8a, 0x75, 0x45, 0xa7, 0x2c, 0xf7, 0x82, 0x92, 0xb3, 0x1a, 0xa0, 0x5d, 0x09, 0xd0, 0x5b, 0xd5, - 0x0a, 0xbc, 0x63, 0x4a, 0xf6, 0x23, 0x8a, 0xc1, 0x50, 0x01, 0x13, 0xd5, 0xd2, 0xd8, 0x7f, 0x7b, - 0x38, 0xc4, 0x99, 0xb6, 0x6c, 0xa1, 0x08, 0x0c, 0xb8, 0xd7, 0x1c, 0x1e, 0x89, 0x81, 0xa9, 0x80, - 0xd4, 0x5c, 0xa3, 0x5b, 0xd0, 0xcf, 0x2e, 0x85, 0x53, 0x0a, 0xcd, 0x2c, 0xf5, 0x9a, 0xb7, 0x9d, - 0x1c, 0xc5, 0x55, 0x06, 0x93, 0xd6, 0xa9, 0x55, 0x97, 0x1c, 0x4c, 0xb4, 0x09, 0x43, 0x2d, 0x63, - 0x99, 0x93, 0x11, 0x2b, 0x03, 0x1f, 0x91, 0x7a, 0x85, 0xc5, 0xcf, 0x69, 0x45, 0x47, 0x97, 0x20, - 0x34, 0xb6, 0x74, 0x6c, 0xc9, 0xf6, 0xa8, 0x13, 0x0e, 0xb2, 0x22, 0x8f, 0x74, 0x9c, 0xb5, 0xa1, - 0xe1, 0x2d, 0x37, 0xf7, 0x82, 0x4c, 0xdb, 0xde, 0x69, 0x6b, 0x54, 0xa3, 0x87, 0xd1, 0xa8, 0xc6, - 0x0e, 0xd4, 0xa8, 0xd6, 0x60, 0xa0, 0x84, 0x29, 0x6b, 0x30, 0x4e, 0xcb, 0x1b, 0xa4, 0x59, 0x49, - 0x47, 0x4a, 0x7c, 0x81, 0x6e, 0x42, 0xe8, 0xa4, 0x2f, 0xc1, 0xd4, 0x69, 0x21, 0x07, 0x68, 0x50, - 0x41, 0x0e, 0x96, 0xc5, 0x34, 0x72, 0x09, 0x86, 0x5a, 0xe2, 0x6e, 0x67, 0xe7, 0x26, 0xae, 0x3b, - 0x99, 0x6c, 0x3f, 0xa2, 0x63, 0x70, 0xb8, 0xa6, 0x94, 0xab, 0x6e, 0x12, 0xf3, 0xc5, 0xbc, 0x67, - 0x0e, 0x44, 0x2e, 0x43, 0xa1, 0x33, 0x9e, 0xfd, 0xd8, 0x5f, 0xf5, 0x05, 0x86, 0x05, 0x7f, 0xfc, - 0x1e, 0x80, 0x23, 0xad, 0x79, 0x82, 0xd6, 0xe0, 0xb0, 0x46, 0x71, 0x85, 0x84, 0x79, 0x1f, 0x9e, - 0x1b, 0x34, 0xd9, 0x24, 0x0e, 0x83, 0xce, 0x42, 0x3f, 0x7f, 0x37, 0x08, 0x7b, 0x18, 0x60, 0xb8, - 0x03, 0x30, 0x6d, 0x0b, 0xd9, 0x75, 0x3b, 0x7a, 0xf1, 0x4d, 0x38, 0xba, 0xc4, 0xda, 0xe5, 0xe0, - 0x43, 0xc9, 0x14, 0x14, 0x8a, 0x8a, 0x56, 0x96, 0xb5, 0x62, 0xb3, 0xad, 0xb2, 0x92, 0x0f, 0x48, - 0x63, 0xf6, 0xfe, 0x4a, 0xd1, 0x6d, 0x97, 0xd3, 0x2f, 0x01, 0x3c, 0xde, 0x75, 0x00, 0x41, 0x11, - 0x38, 0xb1, 0x9c, 0xce, 0xc9, 0x52, 0xf6, 0xba, 0x9c, 0x59, 0x97, 0xae, 0xa5, 0x72, 0xf2, 0x52, - 0x3a, 0x93, 0xba, 0xb1, 0x9a, 0x13, 0x86, 0xd0, 0x3f, 0xe0, 0x64, 0x87, 0x2c, 0xb3, 0x2e, 0xc9, - 0x8b, 0x52, 0x3a, 0x95, 0x4b, 0x0b, 0x00, 0x45, 0x61, 0xa4, 0x8b, 0x58, 0x4a, 0x5f, 0x5f, 0x4d, - 0x2d, 0xa6, 0x05, 0x0f, 0x9a, 0x84, 0xc7, 0x3b, 0xe4, 0xd9, 0x5c, 0x2a, 0x77, 0x23, 0x2b, 0x78, - 0xd1, 0x09, 0xf8, 0xb7, 0x0e, 0x91, 0x94, 0x4e, 0x2d, 0x09, 0x3e, 0x74, 0x1a, 0xc6, 0xf6, 0x09, - 0x32, 0x69, 0x49, 0x5a, 0x59, 0x5b, 0x96, 0xd7, 0x17, 0xae, 0xa6, 0x17, 0x73, 0x59, 0x61, 0xb8, - 0x8b, 0xd6, 0x82, 0xb4, 0xfe, 0x76, 0x7a, 0x8d, 0x2b, 0xa7, 0xd7, 0x16, 0xd3, 0x59, 0xc1, 0x3f, - 0xf3, 0x2d, 0x84, 0xde, 0xd4, 0xf5, 0x15, 0xf4, 0x12, 0x40, 0x3f, 0x9f, 0x84, 0xd0, 0x60, 0x93, - 0x53, 0xe4, 0x42, 0xbf, 0x66, 0xce, 0xd8, 0x59, 0x6f, 0x3c, 0x0c, 0xff, 0xab, 0x78, 0xfe, 0x8e, - 0x9a, 0x50, 0x4c, 0x93, 0x50, 0x45, 0xdd, 0x4c, 0xe4, 0x15, 0xa2, 0xa9, 0x89, 0x2a, 0xc1, 0xd6, - 0x7f, 0x6a, 0x98, 0x24, 0x34, 0x23, 0xb1, 0x39, 0x47, 0x12, 0x5b, 0x96, 0x46, 0xf1, 0xdd, 0x5f, - 0x7e, 0xfb, 0xc2, 0x93, 0x89, 0xa7, 0x9c, 0x77, 0xe3, 0x64, 0x33, 0xf8, 0x24, 0xf9, 0xb1, 0xdb, - 0x32, 0xc4, 0xe6, 0xe6, 0xf6, 0x6b, 0xdf, 0x1d, 0xc9, 0x3c, 0x98, 0x46, 0x7f, 0x00, 0xe8, 0x5d, - 0xc6, 0x14, 0xcd, 0xf4, 0x35, 0x9f, 0x72, 0xba, 0xb3, 0x03, 0xcc, 0xb4, 0xf1, 0x8f, 0x1e, 0xdd, - 0xf7, 0x80, 0xc6, 0xc3, 0xf0, 0xbf, 0xbb, 0xf1, 0xad, 0x18, 0xba, 0x46, 0x8d, 0x36, 0xca, 0x16, - 0x56, 0x0a, 0x8c, 0x71, 0x0a, 0x5d, 0xe9, 0xc6, 0xb8, 0x17, 0xa2, 0x5c, 0x6b, 0x1b, 0xfd, 0x0e, - 0xa0, 0xcf, 0xae, 0x4c, 0x34, 0xdb, 0x5f, 0x1d, 0x73, 0xba, 0xe7, 0x06, 0x29, 0xfe, 0x38, 0x19, - 0x94, 0xef, 0x3c, 0x9a, 0x1b, 0x94, 0x2f, 0xfa, 0xcc, 0x03, 0x8f, 0x38, 0xb3, 0x37, 0x1a, 0x70, - 0x58, 0x8f, 0x5c, 0xec, 0xdb, 0xce, 0x61, 0xfc, 0x39, 0xe8, 0x3f, 0x9d, 0x37, 0x22, 0xef, 0x1c, - 0x38, 0x9d, 0x3b, 0xd4, 0xb7, 0xed, 0xf4, 0xde, 0x05, 0xd0, 0xcf, 0xdb, 0x67, 0xef, 0x35, 0xdd, - 0xd6, 0x6e, 0x23, 0x13, 0x22, 0xff, 0xee, 0x23, 0xba, 0xdf, 0x7d, 0xc4, 0x74, 0xc5, 0xa4, 0xf5, - 0xf8, 0x56, 0xff, 0x24, 0x97, 0xa6, 0x0f, 0x9a, 0xc1, 0xf3, 0x60, 0x3a, 0x52, 0x7b, 0xb0, 0x03, - 0x3c, 0x3f, 0xef, 0x80, 0x44, 0x8f, 0x74, 0xf8, 0x7f, 0xed, 0x93, 0x1d, 0x00, 0x1a, 0x3b, 0x60, - 0x76, 0x80, 0xbf, 0xe9, 0xbb, 0x3f, 0x85, 0x3d, 0x02, 0x58, 0xf8, 0x1a, 0x3c, 0xbe, 0x3c, 0xbc, - 0x28, 0xdd, 0x58, 0x5a, 0xdd, 0x7d, 0x1a, 0x1d, 0x7a, 0xf2, 0x34, 0x3a, 0xf4, 0xe2, 0x69, 0x14, - 0x7c, 0xd2, 0x88, 0x82, 0x1f, 0x1a, 0x51, 0xf0, 0xa8, 0x11, 0x05, 0xbb, 0x8d, 0x28, 0xf8, 0xb5, - 0x11, 0x05, 0xcf, 0x1a, 0xd1, 0xa1, 0x17, 0x8d, 0x28, 0xb8, 0xb7, 0x17, 0x1d, 0x7a, 0xb0, 0x17, - 0x05, 0xbb, 0x7b, 0xd1, 0xa1, 0x27, 0x7b, 0xd1, 0xa1, 0xf7, 0x6e, 0x95, 0x0c, 0x73, 0xb3, 0x24, - 0xd6, 0x0c, 0x7b, 0x64, 0xb6, 0x14, 0xb1, 0x4a, 0x92, 0xec, 0xc1, 0x7e, 0xb5, 0x4c, 0x98, 0x96, - 0x51, 0xd3, 0x0a, 0xd8, 0x4a, 0xb8, 0xe2, 0xa4, 0x99, 0x2f, 0x19, 0x49, 0x7c, 0x87, 0x3a, 0xdf, - 0x9c, 0xde, 0xf0, 0x29, 0x2c, 0xef, 0x67, 0x11, 0x9a, 0xfd, 0x33, 0x00, 0x00, 0xff, 0xff, 0xe1, - 0xc7, 0x78, 0x98, 0x5b, 0x14, 0x00, 0x00, + // 1645 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6f, 0x1b, 0xc7, + 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0x67, 0x3d, 0xb5, 0x65, 0x8a, 0x75, 0x09, 0x96, 0x36, + 0x0c, 0x41, 0x28, 0x97, 0x86, 0xe4, 0x3f, 0xb2, 0xda, 0xda, 0xa5, 0xa4, 0xa5, 0x20, 0x55, 0x96, + 0xdc, 0x25, 0x2d, 0xb8, 0xad, 0x81, 0xc5, 0x72, 0x39, 0xa4, 0xb7, 0x22, 0x77, 0xb7, 0x3b, 0x43, + 0xca, 0x42, 0x21, 0xa0, 0x30, 0x8a, 0x1e, 0x7a, 0xa9, 0x51, 0xa3, 0x87, 0x16, 0x41, 0x10, 0x04, + 0x70, 0x90, 0x8f, 0x60, 0x44, 0x08, 0xe0, 0x5b, 0x0c, 0x1f, 0x02, 0x23, 0xb9, 0xf8, 0x18, 0x53, + 0x39, 0xf8, 0xe0, 0x00, 0x46, 0x3e, 0x41, 0xb0, 0x33, 0xbb, 0x34, 0x49, 0x51, 0x31, 0x49, 0x29, + 0x27, 0xee, 0xcc, 0x7b, 0xef, 0x37, 0xef, 0xfd, 0xe6, 0xbd, 0xc7, 0xb7, 0x0b, 0x7f, 0x5d, 0xc7, + 0x44, 0xd4, 0xcd, 0x34, 0xd1, 0xee, 0xe1, 0xaa, 0x9a, 0xde, 0x9a, 0x23, 0x8a, 0x56, 0xa9, 0x11, + 0x8a, 0x6d, 0xc5, 0x36, 0x2b, 0x58, 0x29, 0xe8, 0x46, 0x51, 0x37, 0xca, 0x69, 0xab, 0x56, 0xa8, + 0xe8, 0x9a, 0xa2, 0xd9, 0xb5, 0xa2, 0x6a, 0xe9, 0xa2, 0x65, 0x9b, 0xd4, 0x44, 0x17, 0xb8, 0xb1, + 0xc8, 0x8d, 0xc5, 0xc3, 0x8c, 0x63, 0xa9, 0xb2, 0x4e, 0xef, 0xd5, 0x0a, 0xa2, 0x66, 0x56, 0xd3, + 0x65, 0xb3, 0x6c, 0xa6, 0x99, 0x79, 0xa1, 0x56, 0x62, 0x2b, 0xb6, 0x60, 0x4f, 0x1c, 0x36, 0x76, + 0xb6, 0x6c, 0x9a, 0xe5, 0x0a, 0x4e, 0xab, 0x96, 0x9e, 0x56, 0x0d, 0xc3, 0xa4, 0x2a, 0xd5, 0x4d, + 0x83, 0xb8, 0xd2, 0x9f, 0xbb, 0xd2, 0x26, 0x06, 0xae, 0x5a, 0x74, 0xc7, 0x15, 0xc6, 0xda, 0xc3, + 0xc1, 0xb6, 0x6d, 0xda, 0x9e, 0xe1, 0x6c, 0x8f, 0xa1, 0x9a, 0x85, 0xbf, 0x60, 0x8d, 0xba, 0x46, + 0x33, 0x3d, 0x1a, 0xd1, 0x1d, 0x0b, 0x37, 0x3d, 0x6c, 0xb7, 0x31, 0xad, 0x56, 0xf7, 0x27, 0xdb, + 0x85, 0xad, 0x76, 0xc9, 0x76, 0x51, 0x1d, 0x13, 0x6c, 0xd4, 0x3b, 0xcc, 0x13, 0x1d, 0x3a, 0x3a, + 0xde, 0x56, 0xda, 0x34, 0x92, 0x4f, 0x00, 0x1c, 0x5d, 0xb4, 0xb1, 0x4a, 0xb1, 0x8c, 0xff, 0x5a, + 0xc3, 0x84, 0xa2, 0x1b, 0x30, 0x54, 0xc5, 0x54, 0x2d, 0xaa, 0x54, 0x8d, 0x82, 0x04, 0x98, 0x8a, + 0xcc, 0x9c, 0x13, 0xdb, 0x6f, 0x6e, 0x83, 0x85, 0xcc, 0xad, 0x6e, 0x62, 0xaa, 0xe6, 0x77, 0x2c, + 0x2c, 0x37, 0x8d, 0xd0, 0x9f, 0x61, 0x80, 0x58, 0x58, 0x8b, 0xfa, 0x98, 0xf1, 0x15, 0xb1, 0xb7, + 0x6b, 0x17, 0x39, 0x5e, 0xce, 0xc2, 0x9a, 0x83, 0xb7, 0x30, 0xfe, 0xff, 0xdd, 0x11, 0x07, 0x46, + 0x2c, 0x6b, 0x8a, 0xf3, 0x2b, 0x33, 0xd0, 0xf9, 0xf0, 0xf3, 0xeb, 0x41, 0x7e, 0x7e, 0xf2, 0x1f, + 0x3e, 0x38, 0xe6, 0xb9, 0x4e, 0x2c, 0xd3, 0x20, 0x18, 0xfd, 0xe6, 0x80, 0xef, 0x89, 0xae, 0xbe, + 0x2f, 0x63, 0xda, 0xc5, 0xf1, 0x0d, 0x38, 0x4e, 0x76, 0x08, 0xc5, 0x55, 0xa5, 0x09, 0xe2, 0x67, + 0x20, 0x17, 0x3a, 0x40, 0x72, 0x4c, 0xeb, 0x20, 0xd4, 0x18, 0x37, 0xbf, 0xe9, 0x01, 0xde, 0x69, + 0x63, 0x62, 0xb6, 0x57, 0x26, 0x96, 0x31, 0xed, 0x83, 0x86, 0x37, 0x00, 0x8e, 0xc9, 0xd8, 0xaa, + 0xa8, 0x5a, 0xf3, 0x0a, 0x7f, 0x77, 0x80, 0x86, 0xf3, 0x5d, 0x69, 0x70, 0xcd, 0xba, 0x50, 0x71, + 0xb7, 0xcd, 0xf3, 0xab, 0xbd, 0x7a, 0xee, 0x02, 0xbe, 0xc7, 0x7b, 0x94, 0x86, 0x82, 0x8d, 0x89, + 0x59, 0xb3, 0x35, 0xac, 0xd4, 0xb1, 0x4d, 0x74, 0xd3, 0x60, 0x4c, 0x87, 0x17, 0x02, 0xaf, 0xf7, + 0x00, 0x90, 0xc7, 0x3d, 0xe9, 0x26, 0x17, 0xb6, 0x86, 0x7b, 0x12, 0x8e, 0x37, 0xa3, 0xe5, 0xb7, + 0x9e, 0xfc, 0x04, 0x40, 0xb8, 0x8c, 0xa9, 0x17, 0xfd, 0x59, 0x18, 0x36, 0xd4, 0x2a, 0x26, 0x96, + 0xaa, 0x61, 0x16, 0x7e, 0x58, 0x7e, 0xb7, 0x81, 0x10, 0x0c, 0x38, 0x0b, 0x16, 0x59, 0x58, 0x66, + 0xcf, 0xa8, 0x04, 0x9d, 0x13, 0x19, 0x98, 0x52, 0x32, 0xed, 0xaa, 0x4a, 0x99, 0x3b, 0x63, 0x33, + 0xbf, 0xed, 0xe3, 0xca, 0x3c, 0x77, 0xb2, 0x0c, 0x60, 0xd1, 0x2c, 0x62, 0x79, 0xcc, 0x6e, 0xdb, + 0x4b, 0x7e, 0x1e, 0x84, 0x91, 0x16, 0x4d, 0xb4, 0x09, 0x23, 0x1a, 0x4b, 0x60, 0x76, 0xaa, 0x4b, + 0xf6, 0xe5, 0xfe, 0x0a, 0xc6, 0x8d, 0x5a, 0x86, 0x1c, 0xc9, 0x39, 0x09, 0xfd, 0x11, 0x8e, 0xd8, + 0x9c, 0x23, 0x0e, 0xec, 0xef, 0xaf, 0x12, 0xdb, 0xb3, 0x49, 0x8e, 0xb8, 0x58, 0x0c, 0xba, 0xdb, + 0xd5, 0x05, 0x7e, 0xe4, 0xea, 0xda, 0x4a, 0x72, 0xf8, 0x38, 0x4a, 0xf2, 0xc4, 0xb1, 0x94, 0x64, + 0xf0, 0xb8, 0x4b, 0x12, 0xe5, 0x60, 0x90, 0x50, 0x95, 0xd6, 0x48, 0xf4, 0xa3, 0x0f, 0x40, 0xc2, + 0x3f, 0x15, 0x99, 0xb9, 0xd4, 0x2b, 0x7a, 0x8e, 0xd9, 0x71, 0xe7, 0x17, 0xfc, 0x4f, 0x77, 0x81, + 0xec, 0x42, 0xa1, 0x15, 0x78, 0xd2, 0xc6, 0x25, 0x6c, 0xdb, 0xba, 0x51, 0x56, 0xf8, 0x5f, 0x0d, + 0x89, 0x86, 0x18, 0xfa, 0xd9, 0x43, 0x4a, 0xba, 0xc4, 0xe2, 0x16, 0x9a, 0x66, 0x7c, 0x9f, 0xa0, + 0x4d, 0x18, 0x2d, 0xe2, 0x0a, 0xa6, 0xb8, 0xa8, 0x70, 0x19, 0x2e, 0x36, 0x11, 0xc3, 0x3d, 0x20, + 0x4e, 0xb8, 0xd6, 0xb2, 0x6b, 0xec, 0xe1, 0xde, 0x81, 0x93, 0x45, 0x9d, 0xa8, 0x85, 0x4a, 0x37, + 0x60, 0xd8, 0x03, 0xf0, 0x19, 0xcf, 0xbc, 0x03, 0xb9, 0xa5, 0xea, 0x57, 0x03, 0x21, 0x20, 0xf8, + 0x92, 0x8f, 0x01, 0x8c, 0xac, 0xe9, 0xa4, 0xc7, 0x4a, 0xff, 0x25, 0x1c, 0xa9, 0xa8, 0x05, 0x5c, + 0x51, 0x4a, 0x7a, 0x85, 0x62, 0xdb, 0xad, 0xf8, 0x08, 0xdb, 0xcb, 0xb2, 0x2d, 0x74, 0x0e, 0x8e, + 0xda, 0xd8, 0x32, 0x6d, 0xaa, 0x94, 0x74, 0x5c, 0x29, 0x92, 0xa8, 0x3f, 0xe1, 0x9f, 0x0a, 0xcb, + 0x23, 0x7c, 0x33, 0xcb, 0xf6, 0xd0, 0x45, 0x78, 0xca, 0x55, 0xe2, 0x97, 0xe2, 0xe9, 0x06, 0x98, + 0x2e, 0xe2, 0x32, 0x7e, 0x85, 0xdc, 0x22, 0xf9, 0x26, 0x08, 0x05, 0xee, 0x27, 0x2f, 0xf4, 0x15, + 0x8a, 0xab, 0x68, 0x02, 0x06, 0x29, 0x36, 0x54, 0x83, 0xb2, 0xdc, 0x0b, 0xcb, 0xee, 0x6a, 0x80, + 0x76, 0x25, 0x40, 0x7f, 0x4d, 0x2f, 0xf2, 0x8e, 0x29, 0x3b, 0x8f, 0x28, 0x01, 0x23, 0x45, 0x4c, + 0x34, 0x5b, 0x67, 0xff, 0xed, 0xd1, 0x08, 0x8f, 0xb4, 0x65, 0x0b, 0xc5, 0x60, 0xc8, 0xa3, 0x39, + 0x3a, 0x92, 0x00, 0x53, 0x21, 0xb9, 0xb9, 0x46, 0x77, 0x61, 0x90, 0x91, 0xc2, 0x43, 0x8a, 0xcc, + 0x2c, 0xf5, 0x9a, 0xb7, 0x9d, 0x31, 0x8a, 0x6b, 0x0c, 0x46, 0x32, 0xa8, 0xbd, 0x23, 0xbb, 0x98, + 0x68, 0x0b, 0x46, 0x5a, 0xc6, 0x32, 0x37, 0x23, 0x56, 0x06, 0x3e, 0x22, 0xf3, 0x0e, 0x8b, 0x9f, + 0xd3, 0x8a, 0x8e, 0xae, 0x41, 0x68, 0x6e, 0x1b, 0xd8, 0x56, 0x9c, 0x51, 0x27, 0x1a, 0x66, 0x45, + 0x1e, 0xeb, 0x38, 0x6b, 0x53, 0xc7, 0xdb, 0x5e, 0xee, 0x85, 0x99, 0xb6, 0xb3, 0xd3, 0xd6, 0xa8, + 0x46, 0x8f, 0xa3, 0x51, 0x8d, 0x1d, 0xa9, 0x51, 0xad, 0xc3, 0x50, 0x19, 0x53, 0xd6, 0x60, 0xdc, + 0x96, 0x37, 0x48, 0xb3, 0x92, 0x4f, 0x94, 0xf9, 0x02, 0xdd, 0x81, 0xd0, 0x4d, 0x5f, 0x82, 0xa9, + 0xdb, 0x42, 0x8e, 0xd0, 0xa0, 0xc2, 0x1c, 0x2c, 0x87, 0x69, 0xec, 0x1a, 0x8c, 0xb4, 0xdc, 0xbb, + 0x93, 0x9d, 0x5b, 0x78, 0xc7, 0xcd, 0x64, 0xe7, 0x11, 0x9d, 0x82, 0xc3, 0x75, 0xb5, 0x52, 0xf3, + 0x92, 0x98, 0x2f, 0xe6, 0x7d, 0x73, 0x20, 0x76, 0x1d, 0x0a, 0x9d, 0xf7, 0xd9, 0x8f, 0xfd, 0x6a, + 0x20, 0x34, 0x2c, 0x04, 0x93, 0x0f, 0x01, 0x1c, 0x69, 0xcd, 0x13, 0xb4, 0x0e, 0x87, 0x75, 0x8a, + 0xab, 0x24, 0xca, 0xfb, 0xf0, 0xdc, 0xa0, 0xc9, 0x26, 0x73, 0x18, 0x74, 0x11, 0x06, 0xf9, 0xbb, + 0x41, 0xd4, 0xc7, 0x00, 0xa3, 0x1d, 0x80, 0x92, 0x23, 0x64, 0x74, 0xbb, 0x7a, 0xc9, 0x2d, 0x38, + 0xba, 0xc4, 0xda, 0xe5, 0xe0, 0x43, 0xc9, 0x14, 0x14, 0x4a, 0xaa, 0x5e, 0x51, 0xf4, 0x52, 0xb3, + 0xad, 0xb2, 0x92, 0x0f, 0xc9, 0x63, 0xce, 0xfe, 0x4a, 0xc9, 0x6b, 0x97, 0xd3, 0xdf, 0x03, 0x78, + 0xba, 0xeb, 0x00, 0x82, 0x62, 0x70, 0x62, 0x59, 0xca, 0x2b, 0x72, 0xee, 0x96, 0x92, 0xdd, 0x90, + 0x6f, 0x66, 0xf2, 0xca, 0x92, 0x94, 0xcd, 0xdc, 0x5e, 0xcb, 0x0b, 0x43, 0xe8, 0x17, 0x70, 0xb2, + 0x43, 0x96, 0xdd, 0x90, 0x95, 0x45, 0x59, 0xca, 0xe4, 0x25, 0x01, 0xa0, 0x38, 0x8c, 0x75, 0x11, + 0xcb, 0xd2, 0xad, 0xb5, 0xcc, 0xa2, 0x24, 0xf8, 0xd0, 0x24, 0x3c, 0xdd, 0x21, 0xcf, 0xe5, 0x33, + 0xf9, 0xdb, 0x39, 0xc1, 0x8f, 0xce, 0xc0, 0x9f, 0x75, 0x88, 0x64, 0x29, 0xb3, 0x24, 0x04, 0xd0, + 0x79, 0x98, 0x38, 0x20, 0xc8, 0x4a, 0xb2, 0xbc, 0xb2, 0xbe, 0xac, 0x6c, 0x2c, 0xac, 0x4a, 0x8b, + 0xf9, 0x9c, 0x30, 0xdc, 0x45, 0x6b, 0x41, 0xde, 0xf8, 0xbd, 0xb4, 0xce, 0x95, 0xa5, 0xf5, 0x45, + 0x29, 0x27, 0x04, 0x67, 0x3e, 0x8b, 0x40, 0x7f, 0xe6, 0xd6, 0x0a, 0xfa, 0xb7, 0x0f, 0x06, 0xf9, + 0x24, 0x84, 0x06, 0x9b, 0x9c, 0x62, 0x57, 0xfa, 0x35, 0x73, 0xc7, 0xce, 0xff, 0x82, 0xc6, 0x17, + 0x51, 0xa9, 0x74, 0xf9, 0xbe, 0x96, 0x52, 0x2d, 0x8b, 0x50, 0x55, 0xdb, 0x4a, 0x15, 0x54, 0xa2, + 0x6b, 0xa9, 0x1a, 0xc1, 0xf6, 0xaf, 0xda, 0x05, 0x84, 0xaa, 0x46, 0x51, 0xb5, 0x8b, 0x5c, 0x56, + 0xc7, 0x24, 0xa5, 0x9b, 0xa9, 0xad, 0x39, 0x92, 0xda, 0xb6, 0x75, 0x8a, 0x1f, 0x7c, 0xfd, 0xed, + 0x23, 0x5f, 0x36, 0x99, 0x71, 0x5f, 0x9c, 0xd3, 0xcd, 0xcc, 0x20, 0xe9, 0xbf, 0x79, 0xfd, 0x44, + 0x6c, 0x6e, 0xee, 0x1e, 0xfa, 0x62, 0x49, 0xe6, 0xc1, 0x34, 0xfa, 0x97, 0x0f, 0xfa, 0x97, 0x31, + 0x45, 0x33, 0x7d, 0x0d, 0xaf, 0x9c, 0x8b, 0xd9, 0x01, 0x06, 0xde, 0xe4, 0xff, 0xc0, 0xb3, 0x27, + 0x3e, 0x87, 0x8c, 0xd5, 0x6e, 0x64, 0x54, 0x4d, 0x43, 0xa7, 0xe6, 0xa1, 0x7c, 0x78, 0xe2, 0x16, + 0x4a, 0x6c, 0xac, 0x16, 0x19, 0x23, 0x19, 0x74, 0xa3, 0x1b, 0x23, 0xbd, 0x10, 0xc1, 0xb5, 0x76, + 0xd1, 0x3f, 0x7d, 0x30, 0xe0, 0x94, 0x35, 0x9a, 0xed, 0xaf, 0x09, 0x70, 0x3a, 0x2e, 0x0d, 0xd2, + 0x39, 0x92, 0xff, 0xf9, 0xa9, 0xf8, 0x98, 0x47, 0x73, 0x83, 0xf2, 0x81, 0x3e, 0xf6, 0xc1, 0x13, + 0xee, 0x60, 0x8f, 0x06, 0x7c, 0x13, 0x88, 0x5d, 0xed, 0xdb, 0xce, 0x65, 0xe4, 0xf1, 0x31, 0x97, + 0xca, 0x66, 0xec, 0x0f, 0x47, 0x2e, 0x95, 0x0e, 0xf5, 0x5d, 0xa7, 0x74, 0xbe, 0x03, 0x30, 0xc8, + 0xfb, 0x76, 0xef, 0xcd, 0xa4, 0xad, 0xcf, 0xc7, 0x26, 0x44, 0xfe, 0xc1, 0x49, 0xf4, 0x3e, 0x38, + 0x89, 0x52, 0xd5, 0xa2, 0x3b, 0xc9, 0x47, 0xc7, 0xcc, 0xc0, 0xd2, 0xf4, 0x51, 0x4b, 0x63, 0x1e, + 0x4c, 0xc7, 0xea, 0x4f, 0xf7, 0x80, 0xef, 0xab, 0x3d, 0x90, 0xea, 0x31, 0x56, 0x3e, 0x01, 0xbc, + 0xdc, 0x03, 0xa0, 0xb1, 0x07, 0x66, 0x07, 0x18, 0x1e, 0x1e, 0x7c, 0x19, 0xf5, 0x09, 0x60, 0xe1, + 0x43, 0xf0, 0xfc, 0xfa, 0xf0, 0xa2, 0x7c, 0x7b, 0x69, 0xed, 0xc5, 0xab, 0xf8, 0xd0, 0xcb, 0x57, + 0xf1, 0xa1, 0xb7, 0xaf, 0xe2, 0xe0, 0xef, 0x8d, 0x38, 0xf8, 0xb4, 0x11, 0x07, 0xcf, 0x1a, 0x71, + 0xf0, 0xa2, 0x11, 0x07, 0xdf, 0x34, 0xe2, 0xe0, 0x75, 0x23, 0x3e, 0xf4, 0xb6, 0x11, 0x07, 0x0f, + 0xf7, 0xe3, 0x43, 0x4f, 0xf7, 0xe3, 0xe0, 0xc5, 0x7e, 0x7c, 0xe8, 0xe5, 0x7e, 0x7c, 0xe8, 0x4f, + 0x77, 0xcb, 0xa6, 0xb5, 0x55, 0x16, 0xeb, 0xa6, 0x33, 0xc8, 0xdb, 0xaa, 0x58, 0x23, 0x69, 0xf6, + 0xe0, 0xbc, 0xf0, 0xa6, 0x2c, 0xdb, 0xac, 0xeb, 0x45, 0x6c, 0xa7, 0x3c, 0x71, 0xda, 0x2a, 0x94, + 0xcd, 0x34, 0xbe, 0x4f, 0xdd, 0x2f, 0x61, 0xef, 0xf9, 0x40, 0x57, 0x08, 0xb2, 0xeb, 0x9b, 0xfd, + 0x21, 0x00, 0x00, 0xff, 0xff, 0x68, 0xf1, 0xfd, 0xeb, 0xf1, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.vesapi.go b/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.vesapi.go index 32e79e3b1..cb357d9e4 100644 --- a/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/k8s_cluster_role_binding/public_crudapi.vesapi.go @@ -2944,10 +2944,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3004,10 +3008,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3066,10 +3074,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_pod_security_admission/crudapi/api.vesapi.go b/pbgo/extschema/schema/k8s_pod_security_admission/crudapi/api.vesapi.go index 2f7d9b79d..836f9864d 100644 --- a/pbgo/extschema/schema/k8s_pod_security_admission/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/k8s_pod_security_admission/crudapi/api.vesapi.go @@ -3182,10 +3182,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_pod_security_admission/object.pb.go b/pbgo/extschema/schema/k8s_pod_security_admission/object.pb.go index 75e1722e2..70e353ada 100644 --- a/pbgo/extschema/schema/k8s_pod_security_admission/object.pb.go +++ b/pbgo/extschema/schema/k8s_pod_security_admission/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_d78aedf3593d8b90 = []byte{ - // 600 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0x4d, 0x4f, 0x13, 0x41, - 0x18, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0x48, 0xd6, 0x4b, 0x45, 0x99, 0x90, 0x7a, 0x21, 0x86, - 0xdd, 0x4d, 0x78, 0x49, 0x90, 0x18, 0x4d, 0xc0, 0xc8, 0x05, 0x62, 0x2c, 0x9e, 0x8c, 0xda, 0xcc, - 0xce, 0x3e, 0x5d, 0xc6, 0x76, 0x3b, 0x93, 0x99, 0xd9, 0x4a, 0x0f, 0x26, 0xc6, 0x0f, 0x60, 0xfc, - 0x00, 0x9e, 0x3c, 0x19, 0x3f, 0x85, 0x78, 0xf2, 0x48, 0x38, 0x71, 0x94, 0xed, 0xc5, 0x23, 0x67, - 0x0f, 0xc6, 0x30, 0xcb, 0x12, 0x4a, 0x4a, 0x6c, 0x6f, 0x33, 0x79, 0xfe, 0xbf, 0x7f, 0x9e, 0x79, - 0x5e, 0x06, 0xaf, 0x76, 0x40, 0x7b, 0x5c, 0xf8, 0x9a, 0xed, 0x41, 0x4c, 0xfd, 0xe6, 0x9a, 0xae, - 0x4b, 0x11, 0xd6, 0x35, 0xb0, 0x44, 0x71, 0xd3, 0xad, 0xd3, 0x30, 0xe6, 0x5a, 0x73, 0xd1, 0xf6, - 0x45, 0xf0, 0x06, 0x98, 0xf1, 0xa4, 0x12, 0x46, 0x38, 0x0b, 0x19, 0xe6, 0x65, 0x98, 0x77, 0x3d, - 0x36, 0xeb, 0x46, 0xdc, 0xec, 0x25, 0x81, 0xc7, 0x44, 0xec, 0x47, 0x22, 0x12, 0xbe, 0x35, 0x08, - 0x92, 0x86, 0xbd, 0xd9, 0x8b, 0x3d, 0x65, 0xc6, 0xb3, 0x2b, 0x43, 0xe7, 0x63, 0xba, 0x12, 0xf4, - 0x39, 0x75, 0xbb, 0x9f, 0x12, 0xd2, 0x70, 0xd1, 0xce, 0x83, 0xb7, 0xfa, 0x83, 0x97, 0xb9, 0x6a, - 0x7f, 0xa8, 0x03, 0x1a, 0xda, 0x9d, 0x7e, 0xbc, 0xfa, 0xb7, 0x84, 0xcb, 0x4f, 0xed, 0xdb, 0x9d, - 0xfb, 0x78, 0x22, 0x06, 0x43, 0x43, 0x6a, 0x68, 0x05, 0xcd, 0xa3, 0x85, 0xc9, 0xa5, 0x39, 0xaf, - 0xbf, 0x10, 0x99, 0x70, 0x07, 0x0c, 0x7d, 0xde, 0x95, 0x50, 0xbb, 0x90, 0x3b, 0xdb, 0xf8, 0x86, - 0xee, 0x6a, 0x03, 0x71, 0xfd, 0xc2, 0xa1, 0x68, 0x1d, 0xee, 0x5e, 0x71, 0xd8, 0xb5, 0xaa, 0x2b, - 0x3e, 0xd3, 0x19, 0xbb, 0x93, 0xbb, 0x3d, 0xc1, 0x63, 0x5a, 0x02, 0xab, 0x94, 0xac, 0xc5, 0x92, - 0x37, 0x6c, 0x37, 0xbc, 0x5d, 0x09, 0xcc, 0x3a, 0x5a, 0x7e, 0xfd, 0x4b, 0xf1, 0xc3, 0xa3, 0x72, - 0xe6, 0xfd, 0xe3, 0xa0, 0x52, 0x9c, 0x41, 0x47, 0x07, 0x95, 0x8f, 0x45, 0xbc, 0x8c, 0x4b, 0x5b, - 0x60, 0x9c, 0xc5, 0xc6, 0xea, 0x3e, 0x73, 0xa9, 0x94, 0xda, 0x50, 0xd6, 0x74, 0x03, 0xaa, 0x39, - 0x73, 0x63, 0xd1, 0xe6, 0x46, 0xa8, 0xc5, 0xf9, 0x0e, 0x68, 0x97, 0x0b, 0xb7, 0xb9, 0xa6, 0x5d, - 0x05, 0x34, 0xc4, 0xab, 0x78, 0xbc, 0x06, 0xb2, 0x45, 0x19, 0x38, 0xf7, 0x06, 0x81, 0x89, 0x86, - 0x7e, 0xea, 0xad, 0xe2, 0x06, 0xf0, 0x0a, 0x2e, 0x6f, 0x2a, 0xa0, 0x66, 0x64, 0xea, 0x31, 0xb4, - 0x60, 0x64, 0x6a, 0x6c, 0x9b, 0xeb, 0x11, 0x1f, 0x56, 0x7d, 0x85, 0x27, 0xf2, 0xb2, 0x39, 0xcf, - 0xf0, 0x78, 0xc4, 0xea, 0xb6, 0xf6, 0x59, 0xfb, 0xd6, 0x86, 0xaf, 0xfd, 0x56, 0x4b, 0x04, 0xb4, - 0x75, 0xd1, 0x81, 0x72, 0xc4, 0xce, 0xce, 0xd5, 0x3f, 0x08, 0x4f, 0xed, 0x1a, 0x6a, 0x12, 0x3d, - 0xf4, 0x94, 0x65, 0xf2, 0x01, 0x53, 0xf6, 0x12, 0x4f, 0x66, 0x6b, 0x5a, 0x57, 0xd0, 0xd0, 0x95, - 0xe2, 0x7c, 0x69, 0x61, 0x72, 0xe9, 0xce, 0xc0, 0x19, 0xad, 0x41, 0xe3, 0x0c, 0xde, 0x98, 0xfb, - 0xf6, 0x6e, 0xf6, 0xfa, 0xa4, 0x6b, 0x58, 0xe4, 0x6a, 0xed, 0x3c, 0xc0, 0x98, 0x89, 0x76, 0xc8, - 0xed, 0x76, 0x54, 0x4a, 0x03, 0xcd, 0x37, 0x73, 0x81, 0xcd, 0xec, 0x92, 0x7e, 0xfd, 0xe6, 0xd1, - 0xc3, 0x19, 0x3c, 0x8d, 0xa7, 0xf2, 0x64, 0xbd, 0x84, 0x87, 0x1b, 0x9f, 0xd1, 0xe1, 0x09, 0x29, - 0x1c, 0x9f, 0x90, 0xc2, 0xe9, 0x09, 0x41, 0xef, 0x53, 0x82, 0xbe, 0xa6, 0x04, 0xfd, 0x4c, 0x09, - 0x3a, 0x4c, 0x09, 0x3a, 0x4e, 0x09, 0xfa, 0x95, 0x12, 0xf4, 0x3b, 0x25, 0x85, 0xd3, 0x94, 0xa0, - 0x4f, 0x3d, 0x52, 0xf8, 0xde, 0x23, 0xe8, 0xb0, 0x47, 0x0a, 0xc7, 0x3d, 0x52, 0x78, 0xf1, 0x3a, - 0x12, 0xb2, 0x19, 0x79, 0x1d, 0xd1, 0x32, 0xa0, 0x14, 0xf5, 0x12, 0xed, 0xdb, 0x43, 0x43, 0xa8, - 0xd8, 0x95, 0x4a, 0x74, 0x78, 0x08, 0xca, 0xcd, 0xc3, 0xbe, 0x0c, 0x22, 0xe1, 0xc3, 0xbe, 0x39, - 0x5f, 0xf7, 0xff, 0xfe, 0x31, 0x41, 0xd9, 0x7e, 0x01, 0xcb, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, - 0x06, 0x38, 0x7c, 0xce, 0x26, 0x05, 0x00, 0x00, + // 617 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xb1, 0x4f, 0x14, 0x41, + 0x14, 0xc6, 0x6f, 0x38, 0x3c, 0xc8, 0x40, 0x90, 0xac, 0xcd, 0x89, 0x32, 0x21, 0x67, 0x43, 0xe1, + 0xee, 0x26, 0x28, 0x09, 0x12, 0xa3, 0x09, 0x18, 0x69, 0x20, 0x86, 0x3b, 0x2a, 0xa3, 0x5e, 0x66, + 0x67, 0xdf, 0x2d, 0xe3, 0xdd, 0xde, 0x4c, 0x66, 0x66, 0x4f, 0xae, 0x30, 0x31, 0xfe, 0x05, 0x36, + 0x76, 0xb6, 0x26, 0xc6, 0xff, 0xc0, 0x4e, 0xac, 0x2c, 0x09, 0x15, 0xa5, 0xec, 0x35, 0x96, 0xd4, + 0x56, 0x86, 0x59, 0x16, 0x39, 0x72, 0xc4, 0x2b, 0xae, 0x7b, 0x9b, 0xef, 0xfb, 0x7e, 0x79, 0x3b, + 0xf3, 0xe6, 0xe1, 0xe5, 0x0e, 0x68, 0x8f, 0x0b, 0x5f, 0xb3, 0x5d, 0x88, 0xa9, 0xdf, 0x5c, 0xd1, + 0x75, 0x29, 0xc2, 0xba, 0x06, 0x96, 0x28, 0x6e, 0xba, 0x75, 0x1a, 0xc6, 0x5c, 0x6b, 0x2e, 0xda, + 0xbe, 0x08, 0x5e, 0x03, 0x33, 0x9e, 0x54, 0xc2, 0x08, 0x67, 0x31, 0x8b, 0x79, 0x59, 0xcc, 0xbb, + 0x3a, 0x36, 0xe7, 0x46, 0xdc, 0xec, 0x26, 0x81, 0xc7, 0x44, 0xec, 0x47, 0x22, 0x12, 0xbe, 0x05, + 0x04, 0x49, 0xc3, 0x7e, 0xd9, 0x0f, 0x5b, 0x65, 0xe0, 0xb9, 0xfb, 0x43, 0xf7, 0x63, 0xba, 0x12, + 0xf4, 0x59, 0xea, 0x56, 0x7f, 0x4a, 0x48, 0xc3, 0x45, 0x3b, 0x17, 0x6f, 0xf6, 0x8b, 0x17, 0x73, + 0x95, 0x7e, 0xa9, 0x03, 0x1a, 0xda, 0x9d, 0xfe, 0x78, 0xe5, 0xe3, 0x35, 0x5c, 0x7a, 0x66, 0xff, + 0xdd, 0x79, 0x80, 0x27, 0x63, 0x30, 0x34, 0xa4, 0x86, 0x96, 0xd1, 0x02, 0x5a, 0x9c, 0x5a, 0x9a, + 0xf7, 0xfa, 0x0f, 0x22, 0x33, 0x6e, 0x81, 0xa1, 0x3b, 0x5d, 0x09, 0xd5, 0x73, 0xbb, 0xb3, 0x89, + 0xaf, 0xeb, 0xae, 0x36, 0x10, 0xd7, 0xcf, 0x09, 0x63, 0x96, 0x70, 0xe7, 0x12, 0xa1, 0x66, 0x5d, + 0x97, 0x38, 0x33, 0x59, 0x76, 0x2b, 0xa7, 0x3d, 0xc5, 0xe3, 0x5a, 0x02, 0x2b, 0x17, 0x2d, 0x62, + 0xc9, 0x1b, 0xf6, 0x36, 0xbc, 0x9a, 0x04, 0x66, 0x89, 0x36, 0xbf, 0xfa, 0xad, 0xf8, 0xfe, 0x71, + 0x29, 0x63, 0xff, 0xd8, 0x2f, 0x8f, 0xcd, 0xa2, 0xc3, 0xfd, 0xf2, 0xe7, 0x22, 0xae, 0xe1, 0xe2, + 0x06, 0x18, 0x67, 0xb3, 0xb1, 0xbc, 0xc7, 0x5c, 0x2a, 0xa5, 0x36, 0x94, 0x35, 0xdd, 0x80, 0x6a, + 0xce, 0xdc, 0x58, 0xb4, 0xb9, 0x11, 0xea, 0xee, 0x42, 0xbf, 0xa8, 0x0d, 0x6d, 0x87, 0x54, 0x85, + 0xff, 0xf4, 0x0e, 0x68, 0x97, 0x0b, 0xb7, 0xb9, 0xa2, 0x5d, 0x05, 0x34, 0xc4, 0x55, 0x3c, 0x51, + 0x05, 0xd9, 0xa2, 0x0c, 0x9c, 0x8d, 0x41, 0xe0, 0x44, 0xc3, 0xd5, 0xd4, 0x4c, 0xbc, 0x80, 0x7c, + 0xa3, 0xb8, 0x01, 0xbc, 0x8d, 0x4b, 0xeb, 0x0a, 0xa8, 0x19, 0x2d, 0xf2, 0x09, 0xb4, 0x60, 0x94, + 0xc8, 0x1d, 0x3c, 0xbe, 0xc9, 0xf5, 0x88, 0xcf, 0xb3, 0xf2, 0x12, 0x4f, 0xe6, 0xb7, 0xe9, 0x6c, + 0xe3, 0x89, 0x88, 0xd5, 0xed, 0x48, 0x64, 0x53, 0xb5, 0x32, 0xfc, 0x48, 0x6c, 0xb4, 0x44, 0x40, + 0x5b, 0xe7, 0x83, 0x51, 0x8a, 0xd8, 0x69, 0x5d, 0xf9, 0x83, 0xf0, 0x74, 0xcd, 0x50, 0x93, 0xe8, + 0xa1, 0x87, 0x3f, 0xb3, 0x0f, 0x18, 0xfe, 0x17, 0x78, 0x2a, 0xdb, 0x1e, 0x75, 0x05, 0x0d, 0x5d, + 0x1e, 0x5b, 0x28, 0x2e, 0x4e, 0x2d, 0xdd, 0x1e, 0xf8, 0x74, 0xaa, 0xd0, 0x38, 0x0d, 0xaf, 0xcd, + 0x7f, 0x7d, 0x3b, 0x77, 0x75, 0xd3, 0x55, 0x2c, 0x72, 0xb7, 0x76, 0x1e, 0x62, 0xcc, 0x44, 0x3b, + 0xe4, 0xf6, 0xd1, 0x96, 0x8b, 0x03, 0xe1, 0xeb, 0xb9, 0xc1, 0x76, 0x76, 0xc1, 0xbf, 0x7a, 0xe3, + 0xf0, 0xd1, 0x2c, 0x9e, 0xc1, 0xd3, 0x79, 0xb3, 0x5e, 0xc2, 0xc3, 0xb5, 0x4f, 0xe8, 0xe0, 0x98, + 0x14, 0x8e, 0x8e, 0x49, 0xe1, 0xe4, 0x98, 0xa0, 0x77, 0x29, 0x41, 0x5f, 0x52, 0x82, 0x7e, 0xa6, + 0x04, 0x1d, 0xa4, 0x04, 0x1d, 0xa5, 0x04, 0xfd, 0x4a, 0x09, 0xfa, 0x9d, 0x92, 0xc2, 0x49, 0x4a, + 0xd0, 0x87, 0x1e, 0x29, 0x7c, 0xef, 0x11, 0x74, 0xd0, 0x23, 0x85, 0xa3, 0x1e, 0x29, 0x3c, 0x7f, + 0x15, 0x09, 0xd9, 0x8c, 0xbc, 0x8e, 0x68, 0x19, 0x50, 0x8a, 0x7a, 0x89, 0xf6, 0x6d, 0xd1, 0x10, + 0x2a, 0x76, 0xa5, 0x12, 0x1d, 0x1e, 0x82, 0x72, 0x73, 0xd9, 0x97, 0x41, 0x24, 0x7c, 0xd8, 0x33, + 0x67, 0x5b, 0xe8, 0xbf, 0xab, 0x2f, 0x28, 0xd9, 0xcd, 0x74, 0xef, 0x6f, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xf3, 0xa9, 0x31, 0xb7, 0xbd, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.pb.go b/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.pb.go index c82574e53..ac4365c21 100644 --- a/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.pb.go +++ b/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.pb.go @@ -1056,109 +1056,110 @@ func init() { } var fileDescriptor_69180b5af28b58f6 = []byte{ - // 1626 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0x47, - 0x1b, 0xce, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb1, 0xcc, 0x07, 0xc1, 0xf1, 0xc7, 0x67, 0xf9, 0x33, - 0xe8, 0x53, 0xbe, 0xb4, 0x5e, 0xa3, 0x94, 0xd0, 0x24, 0xa2, 0x50, 0xc7, 0xb1, 0xd3, 0x40, 0x20, - 0xd1, 0xda, 0x41, 0x88, 0xaa, 0xac, 0xd6, 0xeb, 0xb1, 0xd9, 0xc6, 0xf6, 0x6e, 0x77, 0xc6, 0x0e, - 0x2e, 0x8d, 0x54, 0x71, 0xe8, 0xa5, 0x3d, 0x54, 0xed, 0xad, 0xea, 0x81, 0x4b, 0x25, 0xfe, 0x84, - 0xaa, 0xb9, 0x70, 0x68, 0x05, 0xe2, 0x50, 0xa1, 0xb6, 0x07, 0x8e, 0xc5, 0xe9, 0x81, 0x43, 0x55, - 0xa1, 0xaa, 0x87, 0x1e, 0xab, 0x9d, 0xd9, 0x35, 0xb6, 0x63, 0xc0, 0x76, 0x72, 0xf2, 0xce, 0xbc, - 0xf3, 0x3c, 0x33, 0xcf, 0x3b, 0xef, 0xfb, 0xfa, 0xdd, 0x85, 0x6f, 0xd5, 0x30, 0x11, 0x35, 0x3d, - 0x4e, 0xd4, 0x1b, 0xb8, 0xac, 0xc4, 0x37, 0xe7, 0x88, 0x6c, 0xe8, 0x79, 0x99, 0x60, 0xb5, 0x6a, - 0x6a, 0xb4, 0x2e, 0x2b, 0xf9, 0xb2, 0x46, 0x88, 0xa6, 0x57, 0xe2, 0x46, 0x35, 0x57, 0xd2, 0x54, - 0x59, 0x35, 0xab, 0x79, 0xc5, 0xd0, 0x44, 0xc3, 0xd4, 0xa9, 0x8e, 0xa6, 0x38, 0x5c, 0xe4, 0x70, - 0xf1, 0xc5, 0xf0, 0x50, 0xac, 0xa8, 0xd1, 0x1b, 0xd5, 0x9c, 0xa8, 0xea, 0xe5, 0x78, 0x51, 0x2f, - 0xea, 0x71, 0x46, 0x90, 0xab, 0x16, 0xd8, 0x88, 0x0d, 0xd8, 0x13, 0x27, 0x0e, 0x1d, 0x2f, 0xea, - 0x7a, 0xb1, 0x84, 0xe3, 0x8a, 0xa1, 0xc5, 0x95, 0x4a, 0x45, 0xa7, 0x0a, 0xd5, 0xf4, 0x0a, 0xb1, - 0xad, 0xff, 0xb6, 0xad, 0x4d, 0x0e, 0x5c, 0x36, 0x68, 0xdd, 0x36, 0x86, 0xda, 0x25, 0x61, 0xd3, - 0xd4, 0x4d, 0x07, 0x38, 0xdb, 0xb3, 0x5c, 0x3d, 0xf7, 0x3e, 0x56, 0xa9, 0x0d, 0x3b, 0xdd, 0x33, - 0x8c, 0xd6, 0x0d, 0xdc, 0x3c, 0x65, 0x3b, 0x4a, 0x37, 0x5a, 0x25, 0x4c, 0xb6, 0x1b, 0x5b, 0x71, - 0xd1, 0x76, 0x53, 0x0d, 0x13, 0x5c, 0xa9, 0x75, 0xc0, 0x23, 0x1d, 0x6b, 0x34, 0xbc, 0x25, 0xb7, - 0xad, 0x88, 0x7e, 0x07, 0xe0, 0x68, 0xd2, 0xc4, 0x0a, 0xc5, 0x12, 0xfe, 0xa0, 0x8a, 0x09, 0x45, - 0xe7, 0xa1, 0xaf, 0x8c, 0xa9, 0x92, 0x57, 0xa8, 0x12, 0x04, 0x11, 0x30, 0x15, 0x98, 0x39, 0x21, - 0xb6, 0xdf, 0xdf, 0x1a, 0x13, 0xcd, 0x51, 0x97, 0x30, 0x55, 0xb2, 0x75, 0x03, 0x4b, 0x4d, 0x10, - 0x7a, 0x0f, 0x7a, 0x88, 0x81, 0xd5, 0xa0, 0x8b, 0x81, 0xe7, 0xc4, 0x5e, 0x2f, 0x5f, 0xe4, 0x8c, - 0x19, 0x03, 0xab, 0x16, 0xe3, 0xe2, 0xf8, 0x57, 0xdb, 0x23, 0x16, 0x91, 0x58, 0x54, 0x65, 0xeb, - 0x57, 0x62, 0xb4, 0x0b, 0xfe, 0x87, 0xe7, 0xbc, 0xfc, 0x04, 0xd1, 0x4f, 0x5c, 0x70, 0xcc, 0x39, - 0x3c, 0x31, 0xf4, 0x0a, 0xc1, 0xe8, 0xec, 0x9e, 0xd3, 0x47, 0xba, 0x9e, 0x7e, 0x19, 0xd3, 0x2e, - 0x47, 0x5f, 0x83, 0xe3, 0xa4, 0x4e, 0x28, 0x2e, 0xcb, 0x4d, 0x12, 0x37, 0x23, 0xf9, 0x5f, 0x07, - 0x49, 0x86, 0xad, 0xda, 0x4b, 0x35, 0xc6, 0xe1, 0x97, 0x1c, 0xc2, 0x6b, 0x6d, 0xbe, 0x98, 0xed, - 0xdd, 0x17, 0xcb, 0x98, 0xf6, 0xe1, 0x88, 0x3f, 0x00, 0x1c, 0x93, 0xb0, 0x51, 0x52, 0xd4, 0xe6, - 0x35, 0xbe, 0xbd, 0xc7, 0x11, 0x27, 0xbb, 0x3a, 0xc2, 0x86, 0x75, 0x71, 0xc6, 0xf5, 0xb6, 0xb3, - 0xcf, 0xf7, 0x7e, 0x76, 0x9b, 0xf2, 0x15, 0xe7, 0x47, 0x71, 0x28, 0x98, 0x98, 0xe8, 0x55, 0x53, - 0xc5, 0x72, 0x0d, 0x9b, 0x16, 0x94, 0x79, 0xdb, 0xbf, 0xe8, 0x79, 0xba, 0x03, 0x80, 0x34, 0xee, - 0x58, 0xaf, 0x70, 0x63, 0xab, 0xe0, 0xc3, 0x70, 0xbc, 0xa9, 0x97, 0xdf, 0x7c, 0xf4, 0x2e, 0x80, - 0x70, 0x19, 0x53, 0x47, 0xff, 0x71, 0xe8, 0xaf, 0x28, 0x65, 0x4c, 0x0c, 0x45, 0xc5, 0xcc, 0x01, - 0x7e, 0xe9, 0xf9, 0x04, 0x42, 0xd0, 0x63, 0x0d, 0x98, 0x36, 0xbf, 0xc4, 0x9e, 0xd1, 0x0d, 0x68, - 0xed, 0xc8, 0xc8, 0xe4, 0x82, 0x6e, 0x96, 0x15, 0xca, 0x8e, 0x33, 0x36, 0x73, 0xbe, 0xaf, 0x6b, - 0x73, 0x0e, 0x94, 0x66, 0x14, 0x49, 0x3d, 0x8f, 0xa5, 0x31, 0xb3, 0x6d, 0x2e, 0xfa, 0x83, 0x17, - 0x06, 0x5a, 0x56, 0xa2, 0xab, 0x30, 0xa0, 0xb2, 0x30, 0x66, 0xfb, 0xda, 0x0e, 0x7f, 0xb3, 0xdf, - 0xc4, 0xb1, 0x95, 0x4b, 0x90, 0x73, 0x59, 0x7b, 0xa1, 0x77, 0xe1, 0x88, 0xc9, 0xfd, 0xc4, 0xa9, - 0xdd, 0xfd, 0xe6, 0x64, 0x7b, 0x54, 0x49, 0x01, 0x9b, 0x8d, 0x91, 0x77, 0xbb, 0x40, 0xcf, 0x4b, - 0x2e, 0xb0, 0x2d, 0x39, 0x87, 0x0f, 0x22, 0x39, 0x0f, 0x1d, 0x48, 0x72, 0x7a, 0x0f, 0x3e, 0x39, - 0xd1, 0x06, 0xf4, 0x12, 0xaa, 0xd0, 0x2a, 0x09, 0xde, 0xf9, 0x1a, 0x44, 0xdc, 0x53, 0x81, 0x99, - 0x33, 0xbd, 0xf3, 0x67, 0x18, 0x92, 0x0b, 0x58, 0x74, 0xdf, 0xdb, 0x06, 0x92, 0x4d, 0x86, 0x56, - 0xe0, 0x61, 0x13, 0x17, 0xb0, 0x69, 0x6a, 0x95, 0xa2, 0xcc, 0xff, 0x7c, 0x48, 0xd0, 0xc7, 0xf8, - 0x8f, 0xbf, 0x20, 0xbd, 0x0b, 0x4c, 0xbb, 0xd0, 0x84, 0xf1, 0x79, 0x82, 0xae, 0xc0, 0x60, 0x1e, - 0x97, 0x30, 0xc5, 0x79, 0x99, 0xdb, 0x70, 0xbe, 0xc9, 0xe8, 0xef, 0x81, 0x71, 0xc2, 0x46, 0x4b, - 0x36, 0xd8, 0xe1, 0xbd, 0x0a, 0x27, 0xf3, 0x1a, 0x51, 0x72, 0xa5, 0x6e, 0xc4, 0xb0, 0x07, 0xe2, - 0x63, 0x0e, 0xbc, 0x83, 0xb9, 0x25, 0xff, 0x2f, 0x78, 0x7c, 0x40, 0x70, 0x45, 0xbf, 0x01, 0x30, - 0xb0, 0xaa, 0x91, 0x1e, 0x73, 0xfe, 0xbf, 0x70, 0xa4, 0xa4, 0xe4, 0x70, 0x49, 0x2e, 0x68, 0x25, - 0x8a, 0x4d, 0x3b, 0xf7, 0x03, 0x6c, 0x2e, 0xcd, 0xa6, 0xd0, 0x09, 0x38, 0x6a, 0x62, 0x43, 0x37, - 0xa9, 0x5c, 0xd0, 0x70, 0x29, 0x4f, 0x82, 0xee, 0x88, 0x7b, 0xca, 0x2f, 0x8d, 0xf0, 0xc9, 0x34, - 0x9b, 0x43, 0xa7, 0xe0, 0x11, 0x7b, 0x11, 0xbf, 0x14, 0x67, 0xad, 0x87, 0xad, 0x45, 0xdc, 0xc6, - 0xaf, 0x90, 0x23, 0xa2, 0x7f, 0x79, 0xa1, 0xc0, 0xcf, 0xc9, 0x13, 0x7e, 0x85, 0xe2, 0x32, 0x9a, - 0x80, 0x5e, 0x8a, 0x2b, 0x4a, 0x85, 0xb2, 0xf8, 0xf3, 0x4b, 0xf6, 0x68, 0x80, 0xc2, 0x25, 0x40, - 0x77, 0x55, 0xcb, 0xf3, 0xda, 0x29, 0x59, 0x8f, 0x28, 0x02, 0x03, 0x79, 0x4c, 0x54, 0x53, 0x63, - 0xff, 0xf5, 0xc1, 0x00, 0x57, 0xda, 0x32, 0x85, 0x42, 0xd0, 0xe7, 0xb8, 0x39, 0x38, 0x12, 0x01, - 0x53, 0x3e, 0xa9, 0x39, 0x46, 0xd7, 0xa1, 0x97, 0x39, 0x85, 0x4b, 0x0a, 0xcc, 0xa4, 0x7b, 0x8f, - 0xdc, 0x4e, 0x95, 0xe2, 0x2a, 0x23, 0x4a, 0x55, 0xa8, 0x59, 0x97, 0x6c, 0x56, 0x54, 0x86, 0x81, - 0x96, 0x66, 0xcd, 0x8e, 0x89, 0x8b, 0xfb, 0xd8, 0x24, 0xf1, 0x9c, 0x8d, 0xef, 0xd4, 0xca, 0x8f, - 0xe6, 0x21, 0xd4, 0xb7, 0x2a, 0xd8, 0x94, 0xad, 0xf6, 0x27, 0xe8, 0x67, 0xc9, 0x1e, 0xea, 0xd8, - 0xed, 0x8a, 0x86, 0xb7, 0x9c, 0xf8, 0xf3, 0xb3, 0xd5, 0xd6, 0x4c, 0x5b, 0xc1, 0x1a, 0x3d, 0x88, - 0x82, 0x35, 0xb6, 0xaf, 0x82, 0xb5, 0x0e, 0x7d, 0x45, 0x4c, 0x59, 0x99, 0xb1, 0x4b, 0xdf, 0x60, - 0x45, 0x4b, 0x3a, 0x54, 0xe4, 0x03, 0x74, 0x0d, 0x42, 0x3b, 0x88, 0x09, 0xa6, 0x76, 0x21, 0xd9, - 0x57, 0xa1, 0xf2, 0x73, 0xba, 0x0c, 0xa6, 0xa1, 0x79, 0x18, 0x68, 0xb9, 0x7d, 0x2b, 0x4a, 0x37, - 0x71, 0xdd, 0x8e, 0x68, 0xeb, 0x11, 0x1d, 0x81, 0xc3, 0x35, 0xa5, 0x54, 0x75, 0x82, 0x99, 0x0f, - 0x16, 0x5c, 0x73, 0x20, 0x74, 0x0e, 0x0a, 0x9d, 0x77, 0xda, 0x0f, 0xfe, 0x82, 0xc7, 0x37, 0x2c, - 0x78, 0xa3, 0x5f, 0x00, 0x38, 0xd2, 0x1a, 0x2b, 0x68, 0x1d, 0x0e, 0x6b, 0x14, 0x97, 0x49, 0x90, - 0x57, 0xe4, 0x85, 0xc1, 0x43, 0x4e, 0xe2, 0x44, 0xe8, 0x14, 0xf4, 0xf2, 0x37, 0x87, 0xa0, 0x8b, - 0x51, 0x06, 0x3b, 0x28, 0x53, 0x96, 0x91, 0xb9, 0xdc, 0x5e, 0x17, 0xdd, 0x84, 0xa3, 0x4b, 0xac, - 0x70, 0x0e, 0xde, 0xa8, 0x4c, 0x41, 0xa1, 0xa0, 0x68, 0x25, 0x59, 0x2b, 0x34, 0x0b, 0x2c, 0x4b, - 0x7e, 0x9f, 0x34, 0x66, 0xcd, 0xaf, 0x14, 0x9c, 0xc2, 0x39, 0xfd, 0x27, 0x80, 0x47, 0xbb, 0xb6, - 0x24, 0x28, 0x04, 0x27, 0x96, 0x53, 0x59, 0x59, 0xca, 0xac, 0xcb, 0xe9, 0x35, 0xe9, 0x52, 0x22, - 0x2b, 0x2f, 0xa5, 0xd2, 0x89, 0x8d, 0xd5, 0xac, 0x30, 0x84, 0xfe, 0x03, 0x27, 0x3b, 0x6c, 0xe9, - 0x35, 0x49, 0x4e, 0x4a, 0xa9, 0x44, 0x36, 0x25, 0x00, 0x14, 0x86, 0xa1, 0x2e, 0x66, 0x29, 0xb5, - 0xbe, 0x9a, 0x48, 0xa6, 0x04, 0x17, 0x9a, 0x84, 0x47, 0x3b, 0xec, 0x99, 0x6c, 0x22, 0xbb, 0x91, - 0x11, 0xdc, 0xe8, 0x18, 0xfc, 0x57, 0x87, 0x49, 0x4a, 0x25, 0x96, 0x04, 0x0f, 0x3a, 0x09, 0x23, - 0x7b, 0x0c, 0xe9, 0x94, 0x24, 0xad, 0x5c, 0x5e, 0x96, 0xd7, 0x16, 0x2f, 0xa4, 0x92, 0xd9, 0x8c, - 0x30, 0xdc, 0x65, 0xd5, 0xa2, 0xb4, 0x76, 0x31, 0x75, 0x99, 0x2f, 0x4e, 0x5d, 0x4e, 0xa6, 0x32, - 0x82, 0x77, 0xe6, 0x7b, 0x08, 0xdd, 0x89, 0xf5, 0x15, 0xf4, 0x37, 0x80, 0x5e, 0xde, 0x19, 0xa1, - 0x41, 0x7b, 0xa9, 0xd0, 0x5c, 0xff, 0x40, 0xbb, 0x1d, 0xbd, 0xd5, 0xb8, 0x1f, 0xfc, 0x7f, 0x61, - 0xf6, 0xa6, 0x1a, 0x53, 0x0c, 0x83, 0x50, 0x45, 0xdd, 0x8c, 0xe5, 0x14, 0xa2, 0xa9, 0xb1, 0x2a, - 0xc1, 0xe6, 0xeb, 0x35, 0x4c, 0x62, 0x9a, 0x1e, 0xdb, 0x9c, 0x23, 0xb1, 0x2d, 0x53, 0xa3, 0xf8, - 0xf6, 0xcf, 0xbf, 0x7d, 0xe9, 0x7a, 0x27, 0x9a, 0xb4, 0xdf, 0x9f, 0xe3, 0xcd, 0x00, 0x20, 0xf1, - 0x5b, 0x4e, 0xf1, 0x10, 0x9b, 0x93, 0xdb, 0x2f, 0x79, 0xb7, 0x24, 0x0b, 0x60, 0x1a, 0x3d, 0x03, - 0xd0, 0xbd, 0x8c, 0x29, 0x3a, 0xdd, 0x67, 0xe7, 0xca, 0x45, 0xcf, 0x0e, 0xd4, 0xef, 0x46, 0x3f, - 0x7a, 0xf0, 0xad, 0x0b, 0x34, 0xee, 0x07, 0x5f, 0xeb, 0xa6, 0xba, 0xac, 0x57, 0x34, 0xaa, 0xb7, - 0x09, 0x37, 0xb1, 0x92, 0x67, 0xba, 0x93, 0x28, 0xd1, 0x4d, 0x77, 0x6f, 0x72, 0xf9, 0xba, 0x6d, - 0xf4, 0x3b, 0x80, 0x1e, 0x2b, 0x4b, 0xd1, 0x6c, 0xbf, 0x59, 0xcd, 0x45, 0x9f, 0x19, 0xac, 0x18, - 0x44, 0xab, 0x83, 0xaa, 0x3e, 0x8b, 0x16, 0x06, 0x57, 0x8d, 0x3e, 0x73, 0xc1, 0x43, 0x76, 0x6f, - 0x8e, 0x06, 0x6e, 0xe7, 0x43, 0xf3, 0x03, 0x20, 0x6d, 0xdd, 0x9f, 0x82, 0xfe, 0x03, 0xfc, 0x6a, - 0x28, 0x73, 0x00, 0x01, 0xde, 0x01, 0xd8, 0xb6, 0x02, 0xfe, 0x17, 0x00, 0xbd, 0xbc, 0xac, 0xf6, - 0x93, 0xeb, 0x6d, 0x85, 0x38, 0x34, 0x21, 0xf2, 0xef, 0x45, 0xa2, 0xf3, 0xbd, 0x48, 0x4c, 0x95, - 0x0d, 0x5a, 0x8f, 0xd6, 0xfb, 0x17, 0x9a, 0x9e, 0xde, 0x7f, 0x44, 0x2f, 0x80, 0xe9, 0xd0, 0x87, - 0xf7, 0x76, 0x80, 0xeb, 0xa7, 0x1d, 0x10, 0xef, 0x59, 0x12, 0xff, 0x2f, 0x7e, 0xbc, 0x03, 0x40, - 0x63, 0x07, 0xcc, 0x0e, 0xf4, 0x47, 0x7e, 0xfb, 0xc7, 0xa0, 0x4b, 0x00, 0x8b, 0x77, 0xc0, 0xc3, - 0x73, 0xc3, 0x49, 0x69, 0x63, 0x69, 0xf5, 0xd1, 0x93, 0xf0, 0xd0, 0xe3, 0x27, 0xe1, 0xa1, 0x67, - 0x4f, 0xc2, 0xe0, 0xe3, 0x46, 0x18, 0xdc, 0x6d, 0x84, 0xc1, 0x83, 0x46, 0x18, 0x3c, 0x6a, 0x84, - 0xc1, 0xaf, 0x8d, 0x30, 0x78, 0xda, 0x08, 0x0f, 0x3d, 0x6b, 0x84, 0xc1, 0xe7, 0xbb, 0xe1, 0xa1, - 0x7b, 0xbb, 0x61, 0xf0, 0x68, 0x37, 0x3c, 0xf4, 0x78, 0x37, 0x3c, 0x74, 0xed, 0x7a, 0x51, 0x37, - 0x36, 0x8b, 0x62, 0x4d, 0xb7, 0x9a, 0x6b, 0x53, 0x11, 0xab, 0x24, 0xce, 0x1e, 0xac, 0x57, 0xd1, - 0x98, 0x61, 0xea, 0x35, 0x2d, 0x8f, 0xcd, 0x98, 0x63, 0x8e, 0x1b, 0xb9, 0xa2, 0x1e, 0xc7, 0x37, - 0xa9, 0xfd, 0xb5, 0xea, 0x95, 0x9f, 0xd1, 0x72, 0x5e, 0x76, 0x53, 0x6f, 0xfc, 0x13, 0x00, 0x00, - 0xff, 0xff, 0xcf, 0xc3, 0x3d, 0x83, 0x9f, 0x14, 0x00, 0x00, + // 1643 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x1b, 0x4f, + 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x63, 0x3b, 0xb4, 0xa9, 0x63, 0x8a, 0x65, 0xdc, 0x0a, + 0x45, 0x11, 0x5e, 0x57, 0xa1, 0x29, 0x49, 0x54, 0x5a, 0x1c, 0x67, 0x1d, 0x92, 0xa6, 0x4d, 0xb4, + 0x76, 0xaa, 0xaa, 0x88, 0xae, 0xd6, 0xbb, 0x63, 0x77, 0x89, 0xed, 0x5d, 0x76, 0xc6, 0x4e, 0x0d, + 0x8a, 0x84, 0x7a, 0xe0, 0xc4, 0xa1, 0x02, 0x2a, 0x24, 0xe0, 0xd0, 0x0b, 0xa2, 0x7f, 0x02, 0x22, + 0x97, 0x5e, 0x10, 0x55, 0x0f, 0xa8, 0x82, 0x4b, 0xc5, 0x89, 0x3a, 0x1c, 0x7a, 0x42, 0x05, 0x7d, + 0xff, 0x80, 0xaf, 0x76, 0x66, 0xd7, 0xb5, 0x1d, 0xb7, 0xb5, 0x9d, 0x7c, 0x4f, 0xde, 0x99, 0x37, + 0x9f, 0xcf, 0xcc, 0xfb, 0xcc, 0x7b, 0xcf, 0x6f, 0x17, 0x7e, 0xaf, 0x81, 0x89, 0x68, 0x98, 0x69, + 0xa2, 0x3d, 0xc4, 0x55, 0x35, 0xbd, 0xb7, 0x44, 0x14, 0xcb, 0xd4, 0x15, 0x82, 0xb5, 0xba, 0x6d, + 0xd0, 0xa6, 0xa2, 0xea, 0x55, 0x83, 0x10, 0xc3, 0xac, 0xa5, 0xad, 0x7a, 0xb1, 0x62, 0x68, 0x8a, + 0x66, 0xd7, 0x75, 0xd5, 0x32, 0x44, 0xcb, 0x36, 0xa9, 0x89, 0xe6, 0x38, 0x5c, 0xe4, 0x70, 0xf1, + 0xe3, 0xf0, 0x58, 0xaa, 0x6c, 0xd0, 0x87, 0xf5, 0xa2, 0xa8, 0x99, 0xd5, 0x74, 0xd9, 0x2c, 0x9b, + 0x69, 0x46, 0x50, 0xac, 0x97, 0xd8, 0x88, 0x0d, 0xd8, 0x13, 0x27, 0x8e, 0x5d, 0x2c, 0x9b, 0x66, + 0xb9, 0x82, 0xd3, 0xaa, 0x65, 0xa4, 0xd5, 0x5a, 0xcd, 0xa4, 0x2a, 0x35, 0xcc, 0x1a, 0x71, 0xad, + 0x5f, 0x77, 0xad, 0x6d, 0x0e, 0x5c, 0xb5, 0x68, 0xd3, 0x35, 0xc6, 0xba, 0x5d, 0xc2, 0xb6, 0x6d, + 0xda, 0x1e, 0x70, 0x71, 0x60, 0x77, 0xcd, 0xe2, 0x8f, 0xb1, 0x46, 0x5d, 0xd8, 0xd5, 0x81, 0x61, + 0xb4, 0x69, 0xe1, 0xf6, 0x29, 0xbb, 0x51, 0xa6, 0xd5, 0xe9, 0xc2, 0x6c, 0xb7, 0xb1, 0x13, 0x97, + 0xec, 0x36, 0x35, 0x30, 0xc1, 0xb5, 0x46, 0x0f, 0x3c, 0xd1, 0xb3, 0xc6, 0xc0, 0xfb, 0x4a, 0xd7, + 0x8a, 0xe4, 0x5f, 0x00, 0x9c, 0xcc, 0xda, 0x58, 0xa5, 0x58, 0xc6, 0x3f, 0xa9, 0x63, 0x42, 0xd1, + 0x4d, 0x18, 0xaa, 0x62, 0xaa, 0xea, 0x2a, 0x55, 0xa3, 0x20, 0x01, 0xe6, 0x22, 0x0b, 0x97, 0xc4, + 0xee, 0xfb, 0xdb, 0x66, 0x4e, 0x73, 0xd4, 0x6d, 0x4c, 0xd5, 0x42, 0xd3, 0xc2, 0x72, 0x1b, 0x84, + 0x7e, 0x04, 0x03, 0xc4, 0xc2, 0x5a, 0xd4, 0xc7, 0xc0, 0x4b, 0xe2, 0xa0, 0x97, 0x2f, 0x72, 0xc6, + 0xbc, 0x85, 0x35, 0x87, 0x71, 0x75, 0xfa, 0x77, 0x07, 0x13, 0x0e, 0x91, 0x58, 0xd6, 0x14, 0xe7, + 0x57, 0x66, 0xb4, 0x2b, 0xe1, 0x57, 0x37, 0x82, 0xfc, 0x04, 0xc9, 0x5f, 0xf8, 0xe0, 0x94, 0x77, + 0x78, 0x62, 0x99, 0x35, 0x82, 0xd1, 0xf5, 0x63, 0xa7, 0x4f, 0xf4, 0x3d, 0xfd, 0x3a, 0xa6, 0x7d, + 0x8e, 0xbe, 0x0d, 0xa7, 0x49, 0x93, 0x50, 0x5c, 0x55, 0xda, 0x24, 0x7e, 0x46, 0xf2, 0xad, 0x1e, + 0x92, 0x3c, 0x5b, 0x75, 0x9c, 0x6a, 0x8a, 0xc3, 0x6f, 0x7b, 0x84, 0xf7, 0xbb, 0xb4, 0x58, 0x1c, + 0x5c, 0x8b, 0x75, 0x4c, 0x87, 0x10, 0xe2, 0xbf, 0x00, 0x4e, 0xc9, 0xd8, 0xaa, 0xa8, 0x5a, 0xfb, + 0x1a, 0xbf, 0x7f, 0x4c, 0x88, 0xcb, 0x7d, 0x85, 0x70, 0x61, 0x7d, 0xc4, 0x78, 0xd0, 0x75, 0xf6, + 0xe5, 0xc1, 0xcf, 0xee, 0x52, 0x7e, 0xe6, 0xfc, 0x28, 0x0d, 0x05, 0x1b, 0x13, 0xb3, 0x6e, 0x6b, + 0x58, 0x69, 0x60, 0xdb, 0x81, 0x32, 0xb5, 0xc3, 0xab, 0x81, 0x77, 0x87, 0x00, 0xc8, 0xd3, 0x9e, + 0xf5, 0x2e, 0x37, 0x76, 0x3a, 0x7c, 0x16, 0x4e, 0xb7, 0xfd, 0xe5, 0x37, 0x9f, 0x7c, 0x0e, 0x20, + 0x5c, 0xc7, 0xd4, 0xf3, 0xff, 0x22, 0x0c, 0xd7, 0xd4, 0x2a, 0x26, 0x96, 0xaa, 0x61, 0x26, 0x40, + 0x58, 0xfe, 0x30, 0x81, 0x10, 0x0c, 0x38, 0x03, 0xe6, 0x5b, 0x58, 0x66, 0xcf, 0xe8, 0x21, 0x74, + 0x76, 0x64, 0x64, 0x4a, 0xc9, 0xb4, 0xab, 0x2a, 0x65, 0xc7, 0x99, 0x5a, 0xb8, 0x39, 0xd4, 0xb5, + 0x79, 0x07, 0xca, 0x31, 0x8a, 0xac, 0xa9, 0x63, 0x79, 0xca, 0xee, 0x9a, 0x4b, 0xfe, 0x35, 0x08, + 0x23, 0x1d, 0x2b, 0xd1, 0x3d, 0x18, 0xd1, 0x58, 0x18, 0xb3, 0x7d, 0x5d, 0xc1, 0xbf, 0x3b, 0x6c, + 0xe2, 0xb8, 0x9e, 0xcb, 0x90, 0x73, 0x39, 0x7b, 0xa1, 0x1f, 0xc2, 0x09, 0x9b, 0xeb, 0xc4, 0xa9, + 0xfd, 0xc3, 0xe6, 0x64, 0x77, 0x54, 0xc9, 0x11, 0x97, 0x8d, 0x91, 0xf7, 0xbb, 0xc0, 0xc0, 0x27, + 0x2e, 0xb0, 0x2b, 0x39, 0xc7, 0x4f, 0x23, 0x39, 0xcf, 0x9c, 0x4a, 0x72, 0x06, 0x4f, 0x3f, 0x39, + 0xd1, 0x2e, 0x0c, 0x12, 0xaa, 0xd2, 0x3a, 0x89, 0x3e, 0xfb, 0x03, 0x48, 0xf8, 0xe7, 0x22, 0x0b, + 0xd7, 0x06, 0xe7, 0xcf, 0x33, 0x24, 0x77, 0x60, 0xd5, 0xff, 0xe2, 0x00, 0xc8, 0x2e, 0x19, 0xda, + 0x80, 0x67, 0x6d, 0x5c, 0xc2, 0xb6, 0x6d, 0xd4, 0xca, 0x0a, 0xff, 0xf3, 0x21, 0xd1, 0x10, 0xe3, + 0xbf, 0xf8, 0x91, 0xf4, 0x2e, 0x31, 0xdf, 0x85, 0x36, 0x8c, 0xcf, 0x13, 0x74, 0x17, 0x46, 0x75, + 0x5c, 0xc1, 0x14, 0xeb, 0x0a, 0xb7, 0x61, 0xbd, 0xcd, 0x18, 0x1e, 0x80, 0x71, 0xc6, 0x45, 0xcb, + 0x2e, 0xd8, 0xe3, 0xbd, 0x07, 0x67, 0x75, 0x83, 0xa8, 0xc5, 0x4a, 0x3f, 0x62, 0x38, 0x00, 0xf1, + 0x05, 0x0f, 0xde, 0xc3, 0xdc, 0x91, 0xff, 0x9b, 0x81, 0x10, 0x10, 0x7c, 0xc9, 0x3f, 0x02, 0x18, + 0xd9, 0x32, 0xc8, 0x80, 0x39, 0xff, 0x4d, 0x38, 0x51, 0x51, 0x8b, 0xb8, 0xa2, 0x94, 0x8c, 0x0a, + 0xc5, 0xb6, 0x9b, 0xfb, 0x11, 0x36, 0x97, 0x63, 0x53, 0xe8, 0x12, 0x9c, 0xb4, 0xb1, 0x65, 0xda, + 0x54, 0x29, 0x19, 0xb8, 0xa2, 0x93, 0xa8, 0x3f, 0xe1, 0x9f, 0x0b, 0xcb, 0x13, 0x7c, 0x32, 0xc7, + 0xe6, 0xd0, 0x15, 0x78, 0xce, 0x5d, 0xc4, 0x2f, 0xc5, 0x5b, 0x1b, 0x60, 0x6b, 0x11, 0xb7, 0xf1, + 0x2b, 0xe4, 0x88, 0xe4, 0x17, 0x41, 0x28, 0xf0, 0x73, 0xf2, 0x84, 0xdf, 0xa0, 0xb8, 0x8a, 0x66, + 0x60, 0x90, 0xe2, 0x9a, 0x5a, 0xa3, 0x2c, 0xfe, 0xc2, 0xb2, 0x3b, 0x1a, 0xa1, 0x70, 0x09, 0xd0, + 0x5f, 0x37, 0x74, 0x5e, 0x3b, 0x65, 0xe7, 0x11, 0x25, 0x60, 0x44, 0xc7, 0x44, 0xb3, 0x0d, 0xf6, + 0x5f, 0x1f, 0x8d, 0x70, 0x4f, 0x3b, 0xa6, 0x50, 0x0c, 0x86, 0x3c, 0x99, 0xa3, 0x13, 0x09, 0x30, + 0x17, 0x92, 0xdb, 0x63, 0xf4, 0x00, 0x06, 0x99, 0x28, 0xdc, 0xa5, 0xc8, 0x42, 0x6e, 0xf0, 0xc8, + 0xed, 0xf5, 0x52, 0xdc, 0x62, 0x44, 0x52, 0x8d, 0xda, 0x4d, 0xd9, 0x65, 0x45, 0x55, 0x18, 0xe9, + 0x68, 0xd6, 0xdc, 0x98, 0xb8, 0x75, 0x82, 0x4d, 0x32, 0x1f, 0xd8, 0xf8, 0x4e, 0x9d, 0xfc, 0x68, + 0x19, 0x42, 0x73, 0xbf, 0x86, 0x6d, 0xc5, 0x69, 0x7f, 0xa2, 0x61, 0x96, 0xec, 0xb1, 0x9e, 0xdd, + 0xee, 0x1a, 0x78, 0xdf, 0x8b, 0xbf, 0x30, 0x5b, 0xed, 0xcc, 0x74, 0x15, 0xac, 0xc9, 0xd3, 0x28, + 0x58, 0x53, 0x27, 0x2a, 0x58, 0x3b, 0x30, 0x54, 0xc6, 0x94, 0x95, 0x19, 0xb7, 0xf4, 0x8d, 0x56, + 0xb4, 0xe4, 0x33, 0x65, 0x3e, 0x40, 0xf7, 0x21, 0x74, 0x83, 0x98, 0x60, 0xea, 0x16, 0x92, 0x13, + 0x15, 0xaa, 0x30, 0xa7, 0xcb, 0x63, 0x1a, 0x5b, 0x86, 0x91, 0x8e, 0xdb, 0x77, 0xa2, 0x74, 0x0f, + 0x37, 0xdd, 0x88, 0x76, 0x1e, 0xd1, 0x39, 0x38, 0xde, 0x50, 0x2b, 0x75, 0x2f, 0x98, 0xf9, 0x60, + 0xc5, 0xb7, 0x04, 0x62, 0x37, 0xa0, 0xd0, 0x7b, 0xa7, 0xc3, 0xe0, 0x37, 0x03, 0xa1, 0x71, 0x21, + 0x98, 0xfc, 0x15, 0x80, 0x13, 0x9d, 0xb1, 0x82, 0x76, 0xe0, 0xb8, 0x41, 0x71, 0x95, 0x44, 0x79, + 0x45, 0x5e, 0x19, 0x3d, 0xe4, 0x64, 0x4e, 0x84, 0xae, 0xc0, 0x20, 0x7f, 0x73, 0x88, 0xfa, 0x18, + 0x65, 0xb4, 0x87, 0x52, 0x72, 0x8c, 0x4c, 0x72, 0x77, 0x5d, 0x72, 0x0f, 0x4e, 0xae, 0xb1, 0xc2, + 0x39, 0x7a, 0xa3, 0x32, 0x07, 0x85, 0x92, 0x6a, 0x54, 0x14, 0xa3, 0xd4, 0x2e, 0xb0, 0x2c, 0xf9, + 0x43, 0xf2, 0x94, 0x33, 0xbf, 0x51, 0xf2, 0x0a, 0xe7, 0xfc, 0xff, 0x01, 0x3c, 0xdf, 0xb7, 0x25, + 0x41, 0x31, 0x38, 0xb3, 0x2e, 0x15, 0x14, 0x39, 0xbf, 0xa3, 0xe4, 0xb6, 0xe5, 0xdb, 0x99, 0x82, + 0xb2, 0x26, 0xe5, 0x32, 0xbb, 0x5b, 0x05, 0x61, 0x0c, 0x7d, 0x03, 0xce, 0xf6, 0xd8, 0x72, 0xdb, + 0xb2, 0x92, 0x95, 0xa5, 0x4c, 0x41, 0x12, 0x00, 0x8a, 0xc3, 0x58, 0x1f, 0xb3, 0x2c, 0xed, 0x6c, + 0x65, 0xb2, 0x92, 0xe0, 0x43, 0xb3, 0xf0, 0x7c, 0x8f, 0x3d, 0x5f, 0xc8, 0x14, 0x76, 0xf3, 0x82, + 0x1f, 0x5d, 0x80, 0x5f, 0xeb, 0x31, 0xc9, 0x52, 0x66, 0x4d, 0x08, 0xa0, 0xcb, 0x30, 0x71, 0xcc, + 0x90, 0x93, 0x64, 0x79, 0xe3, 0xce, 0xba, 0xb2, 0xbd, 0xba, 0x29, 0x65, 0x0b, 0x79, 0x61, 0xbc, + 0xcf, 0xaa, 0x55, 0x79, 0xfb, 0x96, 0x74, 0x87, 0x2f, 0x96, 0xee, 0x64, 0xa5, 0xbc, 0x10, 0x5c, + 0xf8, 0x57, 0x04, 0xfa, 0x33, 0x3b, 0x1b, 0xe8, 0xa9, 0x0f, 0x06, 0x79, 0x67, 0x84, 0x46, 0xed, + 0xa5, 0x62, 0x4b, 0xc3, 0x03, 0xdd, 0x76, 0xf4, 0xb7, 0xa0, 0xf5, 0xb7, 0xa8, 0x54, 0x5a, 0x7c, + 0xa4, 0xa5, 0x54, 0xcb, 0x22, 0x54, 0xd5, 0xf6, 0x52, 0x45, 0x95, 0x18, 0x5a, 0xaa, 0x4e, 0xb0, + 0xfd, 0xed, 0x6e, 0x03, 0xa1, 0x6a, 0x4d, 0x57, 0x6d, 0x9d, 0xdb, 0x1a, 0x98, 0xa4, 0x0c, 0x33, + 0xb5, 0xb7, 0x44, 0x52, 0xfb, 0xb6, 0x41, 0xf1, 0xe3, 0x7f, 0xfe, 0xe7, 0xd7, 0xbe, 0x1f, 0x24, + 0xb3, 0xee, 0xcb, 0x75, 0xba, 0x1d, 0x1d, 0x24, 0xfd, 0x33, 0xaf, 0xb2, 0x88, 0xed, 0xc9, 0x83, + 0x4f, 0xbc, 0x78, 0x92, 0x15, 0x30, 0x8f, 0x9e, 0xf8, 0xa0, 0x7f, 0x1d, 0x53, 0x74, 0x75, 0xc8, + 0xb6, 0x96, 0x2b, 0xb2, 0x38, 0x52, 0x33, 0x9c, 0xfc, 0x3d, 0x78, 0xf9, 0x67, 0x9f, 0x23, 0xc9, + 0x66, 0x3f, 0x49, 0xaa, 0x66, 0xcd, 0xa0, 0xe6, 0x47, 0x55, 0xf1, 0xcc, 0x1d, 0xc2, 0xd8, 0x58, + 0xd5, 0x99, 0x2e, 0x59, 0x94, 0xe9, 0xa7, 0xcb, 0x60, 0x72, 0xf0, 0x75, 0x07, 0xe8, 0x97, 0x3e, + 0x18, 0x70, 0x52, 0x1c, 0x2d, 0x0e, 0x5b, 0x12, 0xb8, 0x28, 0xd7, 0x46, 0xab, 0x24, 0xc9, 0xdf, + 0x7c, 0x55, 0xaa, 0x5c, 0x47, 0x2b, 0xa3, 0xab, 0x82, 0x9e, 0xfb, 0xe0, 0x19, 0xb7, 0xf1, 0x47, + 0x23, 0xbf, 0x2b, 0xc4, 0x96, 0x47, 0x40, 0xba, 0xba, 0xfc, 0xe9, 0x94, 0x93, 0xe7, 0x5e, 0x2c, + 0x7f, 0x0a, 0xc9, 0xd3, 0x03, 0x38, 0x70, 0x92, 0xe9, 0x7f, 0x00, 0x06, 0x79, 0x3d, 0x1f, 0xa6, + 0xc8, 0x74, 0xfd, 0x03, 0xc4, 0x66, 0x44, 0xfe, 0xa1, 0x4a, 0xf4, 0x3e, 0x54, 0x89, 0x52, 0xd5, + 0xa2, 0xcd, 0xe4, 0xd3, 0x53, 0x56, 0x21, 0x37, 0x7f, 0xf2, 0x54, 0x59, 0x01, 0xf3, 0xb1, 0x9f, + 0xbe, 0x38, 0x04, 0xbe, 0x7f, 0x1c, 0x82, 0xf4, 0xc0, 0xfe, 0xf2, 0x0e, 0xe1, 0xcd, 0x21, 0x00, + 0xad, 0x43, 0xb0, 0x38, 0x52, 0x7b, 0xf1, 0xf8, 0xef, 0x51, 0x9f, 0x00, 0x56, 0x9f, 0x81, 0x57, + 0x37, 0xc6, 0xb3, 0xf2, 0xee, 0xda, 0xd6, 0xeb, 0xb7, 0xf1, 0xb1, 0x37, 0x6f, 0xe3, 0x63, 0xef, + 0xdf, 0xc6, 0xc1, 0xcf, 0x5b, 0x71, 0xf0, 0xbc, 0x15, 0x07, 0x2f, 0x5b, 0x71, 0xf0, 0xba, 0x15, + 0x07, 0xff, 0x6e, 0xc5, 0xc1, 0xbb, 0x56, 0x7c, 0xec, 0x7d, 0x2b, 0x0e, 0x9e, 0x1c, 0xc5, 0xc7, + 0x5e, 0x1c, 0xc5, 0xc1, 0xeb, 0xa3, 0xf8, 0xd8, 0x9b, 0xa3, 0xf8, 0xd8, 0xfd, 0x07, 0x65, 0xd3, + 0xda, 0x2b, 0x8b, 0x0d, 0xd3, 0x69, 0xf9, 0x6d, 0x55, 0xac, 0x93, 0x34, 0x7b, 0x70, 0x5e, 0x90, + 0x53, 0x96, 0x6d, 0x36, 0x0c, 0x1d, 0xdb, 0x29, 0xcf, 0x9c, 0xb6, 0x8a, 0x65, 0x33, 0x8d, 0x1f, + 0x51, 0xf7, 0x1b, 0xda, 0x67, 0x3f, 0xee, 0x15, 0x83, 0xec, 0x1a, 0xbf, 0xf3, 0x65, 0x00, 0x00, + 0x00, 0xff, 0xff, 0x32, 0x33, 0xa7, 0xfe, 0x35, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.vesapi.go b/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.vesapi.go index 1c0e6ef24..82ffb0aee 100644 --- a/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/k8s_pod_security_admission/public_crudapi.vesapi.go @@ -2891,10 +2891,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2951,10 +2955,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3013,10 +3021,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_pod_security_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/k8s_pod_security_policy/crudapi/api.vesapi.go index d3688f3ed..6ebc6ed71 100644 --- a/pbgo/extschema/schema/k8s_pod_security_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/k8s_pod_security_policy/crudapi/api.vesapi.go @@ -3562,10 +3562,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/k8s_pod_security_policy/object.pb.go b/pbgo/extschema/schema/k8s_pod_security_policy/object.pb.go index e09b39b7a..b874ccedc 100644 --- a/pbgo/extschema/schema/k8s_pod_security_policy/object.pb.go +++ b/pbgo/extschema/schema/k8s_pod_security_policy/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_31b1c97ca69d741d = []byte{ - // 598 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0xbf, 0x4f, 0x14, 0x41, - 0x14, 0xc7, 0x6f, 0xee, 0xc8, 0x41, 0x06, 0x82, 0x64, 0x2d, 0x3c, 0x51, 0x27, 0xe4, 0x8c, 0x09, - 0x31, 0xec, 0x6e, 0x04, 0x49, 0x90, 0x18, 0x4d, 0xc0, 0x84, 0x06, 0x34, 0x39, 0x6c, 0xc4, 0xe2, - 0x32, 0x3b, 0xf7, 0x6e, 0x19, 0xef, 0xc7, 0x4c, 0x66, 0x66, 0x57, 0xae, 0x30, 0x31, 0xfe, 0x01, - 0xc6, 0xd6, 0xd6, 0xca, 0xf8, 0x57, 0x88, 0x95, 0x25, 0xa1, 0xa2, 0x94, 0xbd, 0xc6, 0x92, 0xce, - 0xc2, 0xc6, 0x30, 0xcb, 0x12, 0x96, 0x1c, 0xe6, 0xae, 0x7b, 0x93, 0xf7, 0xfd, 0x7c, 0xf3, 0xe6, - 0xcd, 0x7b, 0x83, 0x17, 0x63, 0xd0, 0x1e, 0x17, 0xbe, 0x66, 0xbb, 0xd0, 0xa1, 0x7e, 0x6b, 0x45, - 0xd7, 0xa5, 0x68, 0xd4, 0x35, 0xb0, 0x48, 0x71, 0xd3, 0xab, 0x4b, 0xd1, 0xe6, 0xac, 0xe7, 0x8b, - 0xe0, 0x0d, 0x30, 0xe3, 0x49, 0x25, 0x8c, 0x70, 0xee, 0xa5, 0x8c, 0x97, 0x32, 0xde, 0x15, 0xcc, - 0xac, 0x1b, 0x72, 0xb3, 0x1b, 0x05, 0x1e, 0x13, 0x1d, 0x3f, 0x14, 0xa1, 0xf0, 0x2d, 0x1d, 0x44, - 0x4d, 0x7b, 0xb2, 0x07, 0x1b, 0xa5, 0xae, 0xb3, 0x0f, 0x86, 0xab, 0xc4, 0xf4, 0x24, 0xe8, 0x33, - 0xe4, 0x56, 0x1e, 0x11, 0xd2, 0x70, 0xd1, 0xcd, 0x92, 0x37, 0xf3, 0xc9, 0x8b, 0x5c, 0x35, 0x9f, - 0x8a, 0x41, 0x43, 0x37, 0xce, 0xe3, 0xd5, 0xbf, 0x25, 0x5c, 0x7e, 0x61, 0x6f, 0xed, 0x3c, 0xc2, - 0x13, 0x1d, 0x30, 0xb4, 0x41, 0x0d, 0xad, 0xa0, 0x39, 0x34, 0x3f, 0xb9, 0x78, 0xc7, 0xcb, 0xb7, - 0x20, 0x15, 0x6e, 0x81, 0xa1, 0x2f, 0x7b, 0x12, 0x6a, 0xe7, 0x72, 0x67, 0x13, 0x5f, 0xd3, 0x3d, - 0x6d, 0xa0, 0x53, 0x3f, 0x77, 0x28, 0x5a, 0x87, 0xbb, 0x97, 0x1c, 0xb6, 0xad, 0xea, 0x92, 0xcf, - 0x74, 0xca, 0x6e, 0x65, 0x6e, 0xeb, 0x78, 0x4c, 0x4b, 0x60, 0x95, 0x92, 0xb5, 0xf0, 0xbd, 0xa1, - 0xde, 0xc1, 0xdb, 0x96, 0xc0, 0xac, 0x9d, 0x85, 0x57, 0xbf, 0x14, 0x3f, 0x3c, 0x2d, 0xa7, 0xc6, - 0x3f, 0xf6, 0x2b, 0xc5, 0x19, 0x74, 0xb8, 0x5f, 0xf9, 0x58, 0xc4, 0x4b, 0xb8, 0xb4, 0x01, 0xc6, - 0x59, 0x68, 0x2e, 0xef, 0x31, 0x97, 0x4a, 0xa9, 0x0d, 0x65, 0x2d, 0x37, 0xa0, 0x9a, 0x33, 0xb7, - 0x23, 0xba, 0xdc, 0x08, 0xb5, 0x30, 0x17, 0x83, 0x76, 0xb9, 0x70, 0x5b, 0x2b, 0xda, 0x55, 0x40, - 0x1b, 0x78, 0x19, 0x8f, 0xd7, 0x40, 0xb6, 0x29, 0x03, 0xe7, 0xfe, 0x20, 0x30, 0xd2, 0x90, 0xa7, - 0xde, 0x2a, 0x6e, 0x00, 0x3f, 0xc4, 0xe5, 0x75, 0x05, 0xd4, 0x8c, 0x4c, 0x3d, 0x83, 0x36, 0x8c, - 0x4c, 0x8d, 0x6d, 0x72, 0x3d, 0xe2, 0xc5, 0xaa, 0x3b, 0x78, 0x22, 0x6b, 0x9b, 0xf3, 0x1c, 0x8f, - 0x87, 0xac, 0x6e, 0x1b, 0x9f, 0xbe, 0xdd, 0xf2, 0x90, 0x8d, 0xdf, 0x68, 0x8b, 0x80, 0xb6, 0xcf, - 0xdb, 0x5f, 0x0e, 0xd9, 0x69, 0x5c, 0xfd, 0x83, 0xf0, 0xd4, 0xb6, 0xa1, 0x26, 0xd2, 0x43, 0xcf, - 0x57, 0x2a, 0x1f, 0x30, 0x5f, 0xaf, 0xf0, 0x64, 0xba, 0x9a, 0x75, 0x05, 0x4d, 0x5d, 0x29, 0xce, - 0x95, 0xe6, 0x27, 0x17, 0x6f, 0x0f, 0x9c, 0xce, 0x1a, 0x34, 0x4f, 0xe1, 0xb5, 0xd9, 0x6f, 0xef, - 0x6e, 0x5c, 0x51, 0x71, 0x0d, 0x8b, 0x4c, 0xaa, 0x9d, 0xc7, 0x18, 0x33, 0xd1, 0x6d, 0x70, 0xbb, - 0x14, 0x95, 0xd2, 0x40, 0xe7, 0xf5, 0x4c, 0x60, 0xcb, 0xba, 0xa0, 0x5f, 0xbd, 0x7e, 0xf8, 0x64, - 0x06, 0x4f, 0xe3, 0xa9, 0xac, 0x52, 0x2f, 0xe2, 0x8d, 0xb5, 0xcf, 0xe8, 0xe0, 0x98, 0x14, 0x8e, - 0x8e, 0x49, 0xe1, 0xe4, 0x98, 0xa0, 0xf7, 0x09, 0x41, 0x5f, 0x13, 0x82, 0x7e, 0x26, 0x04, 0x1d, - 0x24, 0x04, 0x1d, 0x25, 0x04, 0xfd, 0x4a, 0x08, 0xfa, 0x9d, 0x90, 0xc2, 0x49, 0x42, 0xd0, 0xa7, - 0x3e, 0x29, 0x7c, 0xef, 0x13, 0x74, 0xd0, 0x27, 0x85, 0xa3, 0x3e, 0x29, 0xec, 0xbc, 0x0e, 0x85, - 0x6c, 0x85, 0x5e, 0x2c, 0xda, 0x06, 0x94, 0xa2, 0x5e, 0xa4, 0x7d, 0x1b, 0x34, 0x85, 0xea, 0xb8, - 0x52, 0x89, 0x98, 0x37, 0x40, 0xb9, 0x59, 0xda, 0x97, 0x41, 0x28, 0x7c, 0xd8, 0x33, 0x67, 0x5b, - 0xfe, 0xff, 0x7f, 0x25, 0x28, 0xdb, 0xb5, 0x5f, 0xfa, 0x17, 0x00, 0x00, 0xff, 0xff, 0x80, 0xff, - 0xd9, 0xb8, 0x11, 0x05, 0x00, 0x00, + // 616 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x3f, 0x4f, 0x14, 0x41, + 0x18, 0xc6, 0x6f, 0x38, 0x3c, 0xc8, 0x40, 0x90, 0xac, 0x85, 0x27, 0xea, 0x84, 0x9c, 0x31, 0xa1, + 0x70, 0x77, 0x23, 0x86, 0x04, 0x89, 0xd1, 0x04, 0x4c, 0x68, 0x40, 0xe3, 0x1d, 0x8d, 0x58, 0x5c, + 0x66, 0x67, 0xdf, 0x5b, 0xc6, 0xfb, 0x33, 0x93, 0x99, 0xd9, 0x93, 0x2b, 0x4c, 0x8c, 0x9f, 0xc0, + 0xd8, 0xf9, 0x01, 0x4c, 0x8c, 0xdf, 0xc0, 0x4e, 0xac, 0x2c, 0x09, 0x15, 0xa5, 0xec, 0x35, 0x96, + 0x74, 0xb6, 0x86, 0x59, 0x16, 0x59, 0x72, 0x98, 0x2b, 0xae, 0x7b, 0x37, 0xcf, 0xf3, 0xfc, 0xf2, + 0xee, 0xcc, 0x3b, 0x2f, 0x5e, 0xec, 0x82, 0xf6, 0xb8, 0xf0, 0x35, 0xdb, 0x81, 0x36, 0xf5, 0x9b, + 0xcb, 0xba, 0x2e, 0x45, 0x58, 0xd7, 0xc0, 0x62, 0xc5, 0x4d, 0xaf, 0x2e, 0x45, 0x8b, 0xb3, 0x9e, + 0x2f, 0x82, 0xd7, 0xc0, 0x8c, 0x27, 0x95, 0x30, 0xc2, 0xb9, 0x9b, 0x66, 0xbc, 0x34, 0xe3, 0x5d, + 0x92, 0x99, 0x73, 0x23, 0x6e, 0x76, 0xe2, 0xc0, 0x63, 0xa2, 0xed, 0x47, 0x22, 0x12, 0xbe, 0x4d, + 0x07, 0x71, 0xc3, 0x7e, 0xd9, 0x0f, 0x5b, 0xa5, 0xd4, 0xb9, 0xfb, 0xc3, 0x75, 0x62, 0x7a, 0x12, + 0xf4, 0x69, 0xe4, 0x66, 0x3e, 0x22, 0xa4, 0xe1, 0xa2, 0x93, 0x89, 0x37, 0xf2, 0xe2, 0xf9, 0x5c, + 0x25, 0x2f, 0x75, 0x41, 0x43, 0xa7, 0x9b, 0x8f, 0x57, 0x3e, 0x5e, 0xc1, 0xa5, 0xe7, 0xf6, 0xaf, + 0x9d, 0x87, 0x78, 0xb2, 0x0d, 0x86, 0x86, 0xd4, 0xd0, 0x32, 0x9a, 0x47, 0x0b, 0x53, 0x8b, 0xb7, + 0xbd, 0xfc, 0x11, 0xa4, 0xc6, 0x4d, 0x30, 0x74, 0xab, 0x27, 0xa1, 0x7a, 0x66, 0x77, 0x36, 0xf0, + 0x55, 0xdd, 0xd3, 0x06, 0xda, 0xf5, 0x33, 0xc2, 0x98, 0x25, 0xdc, 0xb9, 0x40, 0xa8, 0x59, 0xd7, + 0x05, 0xce, 0x4c, 0x9a, 0xdd, 0xcc, 0x68, 0x6b, 0x78, 0x5c, 0x4b, 0x60, 0xe5, 0xa2, 0x45, 0xf8, + 0xde, 0x50, 0xf7, 0xe0, 0xd5, 0x24, 0x30, 0x8b, 0xb3, 0xe1, 0x95, 0x6f, 0xc5, 0xf7, 0x4f, 0x4a, + 0x29, 0xf8, 0xc7, 0x5e, 0x79, 0x6c, 0x16, 0x1d, 0xec, 0x95, 0x3f, 0x17, 0x71, 0x0d, 0x17, 0xd7, + 0xc1, 0x38, 0x1b, 0x8d, 0xa5, 0x5d, 0xe6, 0x52, 0x29, 0xb5, 0xa1, 0xac, 0xe9, 0x06, 0x54, 0x73, + 0xe6, 0xb6, 0x45, 0x87, 0x1b, 0xa1, 0xee, 0xcd, 0xe7, 0x45, 0x6d, 0x68, 0x27, 0xa4, 0x2a, 0xfc, + 0xa7, 0x77, 0x41, 0xbb, 0x5c, 0xb8, 0xcd, 0x65, 0xed, 0x2a, 0xa0, 0x21, 0xae, 0xe2, 0x89, 0x2a, + 0xc8, 0x16, 0x65, 0xe0, 0xac, 0x0f, 0x02, 0xc7, 0x1a, 0x2e, 0xa7, 0xa6, 0xe2, 0x39, 0xe4, 0x1b, + 0xc5, 0x0d, 0xe0, 0x17, 0xb8, 0xb4, 0xa6, 0x80, 0x9a, 0xd1, 0x22, 0x9f, 0x42, 0x0b, 0x46, 0x89, + 0xdc, 0xc2, 0xe3, 0x1b, 0x5c, 0x8f, 0xf8, 0x3c, 0x2b, 0xdb, 0x78, 0x32, 0xbb, 0x4d, 0xe7, 0x19, + 0x9e, 0x88, 0x58, 0xdd, 0xce, 0x43, 0x3a, 0x52, 0x4b, 0x43, 0xce, 0xc3, 0x7a, 0x4b, 0x04, 0xb4, + 0x75, 0x36, 0x15, 0xa5, 0x88, 0x9d, 0xd4, 0x95, 0x3f, 0x08, 0x4f, 0xd7, 0x0c, 0x35, 0xb1, 0x1e, + 0x7a, 0xec, 0x53, 0xfb, 0x80, 0xb1, 0x7f, 0x89, 0xa7, 0xd2, 0x8d, 0x51, 0x57, 0xd0, 0xd0, 0xe5, + 0xb1, 0xf9, 0xe2, 0xc2, 0xd4, 0xe2, 0xad, 0x81, 0x8f, 0xa6, 0x0a, 0x8d, 0x93, 0xf0, 0xea, 0xdc, + 0xd7, 0xb7, 0xd7, 0x2f, 0xe9, 0xb8, 0x8a, 0x45, 0x66, 0xd5, 0xce, 0x23, 0x8c, 0x99, 0xe8, 0x84, + 0xdc, 0xbe, 0xd5, 0x72, 0x71, 0x20, 0x79, 0x2d, 0x33, 0xd8, 0xb6, 0xce, 0xf9, 0x57, 0xae, 0x1d, + 0x3c, 0x9e, 0xc5, 0x33, 0x78, 0x3a, 0xeb, 0xd4, 0x8b, 0x79, 0xb8, 0xfa, 0x09, 0xed, 0x1f, 0x91, + 0xc2, 0xe1, 0x11, 0x29, 0x1c, 0x1f, 0x11, 0xf4, 0x2e, 0x21, 0xe8, 0x4b, 0x42, 0xd0, 0xcf, 0x84, + 0xa0, 0xfd, 0x84, 0xa0, 0xc3, 0x84, 0xa0, 0x5f, 0x09, 0x41, 0xbf, 0x13, 0x52, 0x38, 0x4e, 0x08, + 0xfa, 0xd0, 0x27, 0x85, 0xef, 0x7d, 0x82, 0xf6, 0xfb, 0xa4, 0x70, 0xd8, 0x27, 0x85, 0xed, 0x57, + 0x91, 0x90, 0xcd, 0xc8, 0xeb, 0x8a, 0x96, 0x01, 0xa5, 0xa8, 0x17, 0x6b, 0xdf, 0x16, 0x0d, 0xa1, + 0xda, 0xae, 0x54, 0xa2, 0xcb, 0x43, 0x50, 0x6e, 0x26, 0xfb, 0x32, 0x88, 0x84, 0x0f, 0xbb, 0xe6, + 0x74, 0xf9, 0xfc, 0x7f, 0xdd, 0x05, 0x25, 0xbb, 0x8d, 0x1e, 0xfc, 0x0d, 0x00, 0x00, 0xff, 0xff, + 0x79, 0xc5, 0x43, 0x61, 0xa8, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.pb.go b/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.pb.go index 5f4d5a263..d4de771f3 100644 --- a/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.pb.go @@ -1056,109 +1056,110 @@ func init() { } var fileDescriptor_c834daf63f3e9305 = []byte{ - // 1619 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0xc7, - 0x1e, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb1, 0xcc, 0x83, 0xe0, 0xf8, 0xf1, 0x2c, 0x3f, 0xc3, - 0x7b, 0xca, 0xcb, 0xc3, 0x6b, 0x30, 0x8f, 0x5f, 0x11, 0xca, 0xc3, 0x71, 0x36, 0x69, 0x68, 0x42, - 0xa2, 0xb5, 0x03, 0x08, 0x0e, 0xab, 0xf5, 0x7a, 0x6c, 0x96, 0xd8, 0xde, 0xed, 0xce, 0xd8, 0xc1, - 0xaa, 0x22, 0x55, 0x70, 0xe9, 0xad, 0x95, 0xda, 0x53, 0xd5, 0x4a, 0xbd, 0x54, 0xea, 0x7f, 0xd0, - 0x56, 0xb9, 0x70, 0x03, 0x71, 0x40, 0xa8, 0xbd, 0x70, 0x2c, 0x4e, 0xa5, 0x22, 0xf5, 0x50, 0xd4, - 0xbf, 0xa0, 0xda, 0x99, 0x5d, 0x63, 0x3b, 0x86, 0xda, 0x26, 0x27, 0xef, 0xcc, 0x77, 0x3e, 0x9f, - 0xf9, 0x7e, 0xe6, 0xfb, 0xc3, 0xb3, 0x0b, 0xe7, 0xea, 0x98, 0x88, 0xba, 0x91, 0x24, 0xda, 0x1d, - 0x5c, 0x51, 0x93, 0x5b, 0x17, 0x89, 0x62, 0x1a, 0x05, 0x85, 0x60, 0xad, 0x66, 0xe9, 0xb4, 0xa1, - 0x98, 0x46, 0x59, 0xd7, 0x1a, 0x49, 0xb3, 0x96, 0x2f, 0xeb, 0x9a, 0xa2, 0x59, 0xb5, 0x82, 0x6a, - 0xea, 0xa2, 0x69, 0x19, 0xd4, 0x40, 0xff, 0xe2, 0x58, 0x91, 0x63, 0xc5, 0x37, 0x60, 0x23, 0x89, - 0x92, 0x4e, 0xef, 0xd4, 0xf2, 0xa2, 0x66, 0x54, 0x92, 0x25, 0xa3, 0x64, 0x24, 0x19, 0x3a, 0x5f, - 0x2b, 0xb2, 0x11, 0x1b, 0xb0, 0x27, 0xce, 0x1a, 0x39, 0x5e, 0x32, 0x8c, 0x52, 0x19, 0x27, 0x55, - 0x53, 0x4f, 0xaa, 0xd5, 0xaa, 0x41, 0x55, 0xaa, 0x1b, 0x55, 0xe2, 0x58, 0xff, 0xee, 0x58, 0x5b, - 0x1c, 0xb8, 0x62, 0xd2, 0x86, 0x63, 0x8c, 0x74, 0x8a, 0xc1, 0x96, 0x65, 0x58, 0x2e, 0x30, 0xd5, - 0x9f, 0x50, 0x23, 0x7f, 0x17, 0x6b, 0xd4, 0xc1, 0x9c, 0xe9, 0x0f, 0x43, 0x1b, 0x26, 0x6e, 0xf9, - 0xd7, 0x09, 0x31, 0xcc, 0x76, 0xe7, 0xa7, 0x3b, 0x8d, 0xed, 0xb8, 0x78, 0xa7, 0xa9, 0x8e, 0x09, - 0xae, 0xd6, 0xbb, 0xe0, 0xb1, 0xae, 0x35, 0x3a, 0xde, 0x56, 0x3a, 0x56, 0xc4, 0xbf, 0x03, 0x70, - 0x3c, 0x63, 0x61, 0x95, 0x62, 0x19, 0x7f, 0x50, 0xc3, 0x84, 0xa2, 0xff, 0xc3, 0x40, 0x05, 0x53, - 0xb5, 0xa0, 0x52, 0x35, 0x0c, 0x62, 0x60, 0x26, 0x94, 0x3a, 0x21, 0x76, 0x86, 0x6d, 0x9d, 0x29, - 0xe6, 0xa8, 0x35, 0x4c, 0xd5, 0x5c, 0xc3, 0xc4, 0x72, 0x0b, 0x84, 0x6e, 0x41, 0x1f, 0x31, 0xb1, - 0x16, 0xf6, 0x30, 0xf0, 0x39, 0xb1, 0xaf, 0x98, 0x8b, 0x9c, 0x2e, 0x6b, 0x62, 0xcd, 0xa6, 0x5b, - 0x98, 0xfc, 0x62, 0x67, 0xcc, 0x66, 0x11, 0x4b, 0x9a, 0x62, 0xff, 0xca, 0x8c, 0x73, 0x2e, 0xf8, - 0x64, 0xde, 0xcf, 0xb7, 0x8f, 0x3f, 0xf0, 0xc0, 0x09, 0xd7, 0x73, 0x62, 0x1a, 0x55, 0x82, 0xd1, - 0xe5, 0x7d, 0xae, 0xc7, 0x7a, 0xba, 0xbe, 0x8c, 0x69, 0x0f, 0xbf, 0xd7, 0xe1, 0x24, 0x69, 0x10, - 0x8a, 0x2b, 0x4a, 0x8b, 0xc4, 0xcb, 0x48, 0xfe, 0xdd, 0x45, 0x92, 0x65, 0xab, 0xf6, 0x53, 0x4d, - 0x70, 0xf8, 0x9a, 0x4b, 0x78, 0xa3, 0xe3, 0x20, 0x52, 0x7d, 0x1e, 0xc4, 0x32, 0xa6, 0x03, 0x9c, - 0xc2, 0x6f, 0x00, 0x4e, 0xc8, 0xd8, 0x2c, 0xab, 0x5a, 0x2b, 0x80, 0x57, 0xf6, 0x9d, 0xc2, 0xc9, - 0x9e, 0xa7, 0xe0, 0xc0, 0x7a, 0x9c, 0xc4, 0xed, 0x0e, 0xc7, 0xcf, 0xf7, 0xe9, 0xb8, 0xc3, 0xf7, - 0x17, 0xce, 0xa3, 0x24, 0x14, 0x2c, 0x4c, 0x8c, 0x9a, 0xa5, 0x61, 0xa5, 0x8e, 0x2d, 0xa2, 0x1b, - 0x55, 0x76, 0xce, 0xc1, 0x05, 0xdf, 0xcb, 0x5d, 0x00, 0xe4, 0x49, 0xd7, 0x7a, 0x9d, 0x1b, 0xdb, - 0xd5, 0x1e, 0x86, 0x93, 0x2d, 0xb1, 0x3c, 0xe6, 0xf1, 0x6f, 0x00, 0x84, 0xcb, 0x98, 0xba, 0xe2, - 0x8f, 0xc3, 0x60, 0x55, 0xad, 0x60, 0x62, 0xaa, 0x1a, 0x66, 0xea, 0x83, 0xf2, 0xeb, 0x09, 0x84, - 0xa0, 0xcf, 0x1e, 0x30, 0x61, 0x41, 0x99, 0x3d, 0x23, 0x0c, 0xed, 0x1d, 0x19, 0x99, 0x52, 0x34, - 0xac, 0x8a, 0x4a, 0x99, 0x3b, 0x13, 0xa9, 0xcb, 0xfd, 0x07, 0xcc, 0xf5, 0x66, 0x89, 0xe1, 0x33, - 0x46, 0x01, 0xcb, 0x13, 0x56, 0xc7, 0x5c, 0xfc, 0x07, 0x3f, 0x0c, 0xb5, 0xad, 0x44, 0x9b, 0x30, - 0xa4, 0xb1, 0xec, 0x65, 0x9b, 0x3a, 0x47, 0xfd, 0xbf, 0x81, 0x8a, 0xc5, 0xd1, 0x2c, 0x43, 0x4e, - 0x64, 0x6f, 0x84, 0x6e, 0xc2, 0x31, 0x8b, 0x9f, 0x10, 0xe7, 0xf5, 0x0e, 0x54, 0x84, 0x9d, 0x99, - 0x24, 0x87, 0x1c, 0x2a, 0xc6, 0xdc, 0x2b, 0x6e, 0xbe, 0xb7, 0xc4, 0xad, 0xa3, 0x1a, 0x47, 0x0f, - 0xa2, 0x1a, 0x0f, 0x1d, 0x48, 0x35, 0xfa, 0x0f, 0xb8, 0x1a, 0x91, 0x0c, 0xfd, 0x84, 0xaa, 0xb4, - 0x46, 0xc2, 0x5f, 0x7f, 0x09, 0x62, 0xde, 0x99, 0x50, 0xea, 0x6c, 0x9f, 0xe4, 0x59, 0x06, 0xe3, - 0xae, 0x2f, 0x78, 0x1f, 0xee, 0x00, 0xd9, 0x61, 0x42, 0x2b, 0xf0, 0xb0, 0x85, 0x8b, 0xd8, 0xb2, - 0xf4, 0x6a, 0x49, 0xe1, 0xff, 0x30, 0x24, 0x1c, 0x60, 0xe4, 0xc7, 0xdf, 0x50, 0xcc, 0x45, 0xa6, - 0x5a, 0x68, 0xc1, 0xf8, 0x3c, 0x41, 0xd7, 0x61, 0xb8, 0x80, 0xcb, 0x98, 0xe2, 0x82, 0xc2, 0x6d, - 0xb8, 0xd0, 0x62, 0x0c, 0xf6, 0xc1, 0x38, 0xe5, 0xa0, 0x65, 0x07, 0xec, 0xf2, 0xde, 0x84, 0xd3, - 0x05, 0x9d, 0xa8, 0xf9, 0x72, 0x2f, 0x62, 0xd8, 0x07, 0xf1, 0x31, 0x17, 0xde, 0xc5, 0xdc, 0x56, - 0xf0, 0x57, 0x7d, 0x01, 0x20, 0x78, 0xec, 0x1a, 0x0f, 0xad, 0xea, 0xa4, 0xcf, 0x22, 0xff, 0x27, - 0x1c, 0x2b, 0xab, 0x79, 0x5c, 0x56, 0x8a, 0x7a, 0x99, 0x62, 0xcb, 0x29, 0xf6, 0x10, 0x9b, 0x5b, - 0x62, 0x53, 0xe8, 0x04, 0x1c, 0xb7, 0xb0, 0x69, 0x58, 0x54, 0x29, 0xea, 0xb8, 0x5c, 0x20, 0x61, - 0x6f, 0xcc, 0x3b, 0x13, 0x94, 0xc7, 0xf8, 0xe4, 0x12, 0x9b, 0x43, 0xa7, 0xe1, 0x11, 0x67, 0x11, - 0x0f, 0x8a, 0xbb, 0xd6, 0xc7, 0xd6, 0x22, 0x6e, 0xe3, 0x21, 0xe4, 0x88, 0xf8, 0x4b, 0x3f, 0x14, - 0xb8, 0x9f, 0xbc, 0xc8, 0x57, 0x28, 0xae, 0xa0, 0x29, 0xe8, 0xa7, 0xb8, 0xaa, 0x56, 0x29, 0xcb, - 0xbc, 0xa0, 0xec, 0x8c, 0x86, 0xe8, 0x54, 0x02, 0xf4, 0xd6, 0xf4, 0x02, 0x6f, 0x96, 0xb2, 0xfd, - 0x88, 0x62, 0x30, 0x54, 0xc0, 0x44, 0xb3, 0x74, 0xf6, 0x9f, 0x1e, 0x0e, 0x71, 0xa5, 0x6d, 0x53, - 0x28, 0x02, 0x03, 0xee, 0x31, 0x87, 0xc7, 0x62, 0x60, 0x26, 0x20, 0xb7, 0xc6, 0xe8, 0x36, 0xf4, - 0xb3, 0x43, 0xe1, 0x92, 0x42, 0xa9, 0x4c, 0x9f, 0x69, 0xdb, 0x2d, 0x51, 0x5c, 0x65, 0x2c, 0x52, - 0x95, 0x5a, 0x0d, 0xd9, 0xa1, 0x44, 0x77, 0x61, 0xa8, 0xed, 0x2e, 0xe6, 0x24, 0xc4, 0x7b, 0xc3, - 0xee, 0x90, 0x7e, 0x4d, 0xc5, 0xb7, 0x69, 0x27, 0x47, 0x97, 0x20, 0x34, 0xb6, 0xab, 0xd8, 0x52, - 0xec, 0x0b, 0x4e, 0x38, 0xc8, 0x0a, 0x3c, 0xd2, 0xb5, 0xd5, 0x75, 0x1d, 0x6f, 0xbb, 0x99, 0x17, - 0x64, 0xab, 0xed, 0x99, 0x8e, 0x26, 0x35, 0x7e, 0x10, 0x4d, 0x6a, 0xe2, 0x9d, 0x9a, 0xd4, 0x1a, - 0x0c, 0x94, 0x30, 0x65, 0xdd, 0xc5, 0x69, 0x77, 0x43, 0x34, 0x2a, 0xf9, 0x50, 0x89, 0x0f, 0xd0, - 0x0d, 0x08, 0x9d, 0xdc, 0x25, 0x98, 0x3a, 0xfd, 0x63, 0xf8, 0xe6, 0x14, 0xe4, 0x5c, 0x59, 0x4c, - 0x23, 0x97, 0x60, 0xa8, 0x2d, 0xe8, 0x76, 0x66, 0x6e, 0xe1, 0x86, 0x93, 0xc5, 0xf6, 0x23, 0x3a, - 0x02, 0x47, 0xeb, 0x6a, 0xb9, 0xe6, 0x26, 0x30, 0x1f, 0xcc, 0x79, 0x2e, 0x82, 0xc8, 0x3c, 0x14, - 0xba, 0xa3, 0x39, 0x08, 0xfe, 0xaa, 0x2f, 0x30, 0x2a, 0xf8, 0xe3, 0x9f, 0x00, 0x38, 0xd6, 0x9e, - 0x25, 0x68, 0x0d, 0x8e, 0xea, 0x14, 0x57, 0x48, 0x98, 0xb7, 0xe0, 0x0b, 0x43, 0x66, 0x9a, 0xcc, - 0x59, 0xd0, 0x69, 0xe8, 0xe7, 0x2f, 0x03, 0x61, 0x0f, 0xe3, 0x0b, 0x77, 0xf1, 0x49, 0xb6, 0x91, - 0x1d, 0xb6, 0xb3, 0x2e, 0xbe, 0x05, 0xc7, 0x17, 0x59, 0xa7, 0x1c, 0xfe, 0x2a, 0x32, 0x03, 0x85, - 0xa2, 0xaa, 0x97, 0x15, 0xbd, 0xd8, 0xea, 0xa8, 0xac, 0xda, 0x03, 0xf2, 0x84, 0x3d, 0xbf, 0x52, - 0x74, 0x3b, 0xe5, 0xec, 0x1f, 0x00, 0x1e, 0xed, 0x79, 0xef, 0x40, 0x11, 0x38, 0xb5, 0x2c, 0xe5, - 0x14, 0x39, 0xbb, 0xa1, 0x2c, 0xad, 0xcb, 0x6b, 0xe9, 0x9c, 0xb2, 0x28, 0x2d, 0xa5, 0x37, 0x57, - 0x73, 0xc2, 0x08, 0xfa, 0x07, 0x9c, 0xee, 0xb2, 0x2d, 0xad, 0xcb, 0x4a, 0x46, 0x96, 0xd2, 0x39, - 0x49, 0x00, 0x28, 0x0a, 0x23, 0x3d, 0xcc, 0xb2, 0xb4, 0xb1, 0x9a, 0xce, 0x48, 0x82, 0x07, 0x4d, - 0xc3, 0xa3, 0x5d, 0xf6, 0x6c, 0x2e, 0x9d, 0xdb, 0xcc, 0x0a, 0x5e, 0x74, 0x0c, 0xfe, 0xad, 0xcb, - 0x24, 0x4b, 0xe9, 0x45, 0xc1, 0x87, 0x4e, 0xc2, 0xd8, 0x3e, 0xc3, 0x92, 0x24, 0xcb, 0x2b, 0xd7, - 0x96, 0x95, 0xf5, 0x85, 0xab, 0x52, 0x26, 0x97, 0x15, 0x46, 0x7b, 0xac, 0x5a, 0x90, 0xd7, 0xdf, - 0x97, 0xae, 0xf1, 0xc5, 0xd2, 0xb5, 0x8c, 0x94, 0x15, 0xfc, 0xa9, 0xcf, 0x21, 0xf4, 0xa6, 0x37, - 0x56, 0xd0, 0xef, 0x00, 0xfa, 0xf9, 0x0d, 0x08, 0x0d, 0x75, 0x61, 0x8a, 0x9c, 0x1b, 0x10, 0xe5, - 0x5c, 0x35, 0xef, 0x35, 0x1f, 0x85, 0xff, 0x53, 0x3c, 0x77, 0x4f, 0x4b, 0xa8, 0xa6, 0x49, 0xa8, - 0xaa, 0x6d, 0x25, 0xf2, 0x2a, 0xd1, 0xb5, 0x44, 0x8d, 0x60, 0xeb, 0x54, 0x1d, 0x93, 0x84, 0x6e, - 0x24, 0xb6, 0x2e, 0x92, 0xc4, 0xb6, 0xa5, 0x53, 0x7c, 0xff, 0xa7, 0x5f, 0x3e, 0xf3, 0x48, 0xf1, - 0x2b, 0xce, 0x9b, 0x70, 0xb2, 0x15, 0x7a, 0x92, 0xfc, 0xd0, 0xed, 0x16, 0x62, 0x6b, 0x72, 0xe7, - 0x4d, 0xef, 0x8a, 0x64, 0x0e, 0xcc, 0xa2, 0x5f, 0x01, 0xf4, 0x2e, 0x63, 0x8a, 0xce, 0x0c, 0x72, - 0x25, 0xe5, 0x5a, 0x53, 0x83, 0xdf, 0x62, 0xe3, 0x8d, 0xc7, 0xdf, 0x7b, 0x40, 0xf3, 0x51, 0xf8, - 0xbf, 0xbd, 0xc4, 0x56, 0x8c, 0xaa, 0x4e, 0x8d, 0x0e, 0xbd, 0x16, 0x56, 0x0b, 0x4c, 0xee, 0x15, - 0x34, 0xdf, 0x4b, 0x6e, 0x1f, 0x2a, 0xf9, 0xa2, 0x1d, 0xb4, 0x07, 0xa0, 0xcf, 0xae, 0x49, 0x94, - 0x1a, 0xa8, 0x80, 0xb9, 0xd6, 0xb3, 0x43, 0x14, 0x7d, 0xdc, 0x1a, 0x56, 0xec, 0x25, 0x74, 0x61, - 0x48, 0xb1, 0xe8, 0x81, 0x07, 0x1e, 0x72, 0xee, 0xda, 0x68, 0xb8, 0xbb, 0x79, 0xe4, 0xfc, 0xa0, - 0x30, 0x47, 0xee, 0xc7, 0x60, 0xf0, 0x2c, 0xde, 0x8c, 0x6c, 0xbc, 0x6b, 0x16, 0x77, 0xad, 0xde, - 0xb1, 0xb3, 0xfa, 0x29, 0x80, 0x7e, 0xde, 0x32, 0xfb, 0xae, 0xe3, 0x8e, 0x0e, 0x1b, 0x99, 0x12, - 0xf9, 0xb7, 0x1d, 0xd1, 0xfd, 0xb6, 0x23, 0x4a, 0x15, 0x93, 0x36, 0xe2, 0xf5, 0xc1, 0x25, 0x66, - 0x66, 0xdf, 0x31, 0x73, 0xe7, 0xc0, 0x6c, 0x84, 0x3e, 0xdc, 0x05, 0x9e, 0x1f, 0x77, 0xc1, 0xa9, - 0xfe, 0xc4, 0xf0, 0xff, 0xd6, 0xe7, 0xbb, 0x00, 0x34, 0x77, 0x41, 0x6a, 0xf0, 0x7f, 0xe5, 0xfb, - 0x4f, 0xc3, 0x1e, 0x01, 0x2c, 0x7c, 0x05, 0x9e, 0xcc, 0x8f, 0x66, 0xe4, 0xcd, 0xc5, 0xd5, 0x67, - 0x2f, 0xa2, 0x23, 0xcf, 0x5f, 0x44, 0x47, 0x5e, 0xbd, 0x88, 0x82, 0x8f, 0x9a, 0x51, 0xf0, 0x6d, - 0x33, 0x0a, 0x1e, 0x37, 0xa3, 0xe0, 0x59, 0x33, 0x0a, 0x7e, 0x6e, 0x46, 0xc1, 0xcb, 0x66, 0x74, - 0xe4, 0x55, 0x33, 0x0a, 0x3e, 0xdd, 0x8b, 0x8e, 0x3c, 0xdc, 0x8b, 0x82, 0x67, 0x7b, 0xd1, 0x91, - 0xe7, 0x7b, 0xd1, 0x91, 0x5b, 0xb7, 0x4b, 0x86, 0xb9, 0x55, 0x12, 0xeb, 0x86, 0x7d, 0x3b, 0xb6, - 0x54, 0xb1, 0x46, 0x92, 0xec, 0xc1, 0x7e, 0x85, 0x4c, 0x98, 0x96, 0x51, 0xd7, 0x0b, 0xd8, 0x4a, - 0xb8, 0xe6, 0xa4, 0x99, 0x2f, 0x19, 0x49, 0x7c, 0x8f, 0x3a, 0x9f, 0x95, 0xde, 0xfe, 0xb1, 0x2b, - 0xef, 0x67, 0xd1, 0x39, 0xfb, 0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0x60, 0x6d, 0x6a, 0x5f, 0x39, - 0x14, 0x00, 0x00, + // 1641 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x1a, 0x49, + 0x16, 0x77, 0x01, 0x26, 0x50, 0xf8, 0xa3, 0x53, 0x9b, 0x38, 0x98, 0xcd, 0x22, 0x96, 0x64, 0x57, + 0x96, 0x15, 0x9a, 0x84, 0x6c, 0xbe, 0xac, 0xc8, 0x1b, 0x8c, 0xdb, 0x5e, 0x7b, 0xed, 0xd8, 0x6a, + 0x70, 0x12, 0x25, 0x87, 0x56, 0xd3, 0x14, 0xa4, 0x63, 0xa0, 0x7b, 0xbb, 0x0a, 0x1c, 0xb4, 0xb2, + 0xb4, 0x4a, 0x0e, 0x7b, 0x59, 0x69, 0x3f, 0x0f, 0xab, 0xd5, 0x8e, 0x66, 0x0e, 0x33, 0xd2, 0x68, + 0xfe, 0x81, 0x99, 0x91, 0x2f, 0xb9, 0x4d, 0x94, 0xc3, 0x28, 0x9a, 0xb9, 0xe4, 0x38, 0xc1, 0x73, + 0x88, 0x94, 0x4b, 0x34, 0x7f, 0xc1, 0xa8, 0xab, 0xba, 0x09, 0x60, 0x9c, 0x01, 0xe2, 0x39, 0xd1, + 0x55, 0xef, 0xfd, 0x7e, 0xf5, 0xde, 0xab, 0xf7, 0x1e, 0xaf, 0x1b, 0xce, 0xd5, 0x31, 0x11, 0x75, + 0x23, 0x49, 0xb4, 0xfb, 0xb8, 0xa2, 0x26, 0xb7, 0xaf, 0x12, 0xc5, 0x34, 0x0a, 0x0a, 0xc1, 0x5a, + 0xcd, 0xd2, 0x69, 0x43, 0x31, 0x8d, 0xb2, 0xae, 0x35, 0x92, 0x66, 0x2d, 0x5f, 0xd6, 0x35, 0x45, + 0xb3, 0x6a, 0x05, 0xd5, 0xd4, 0x45, 0xd3, 0x32, 0xa8, 0x81, 0x7e, 0xc3, 0xb1, 0x22, 0xc7, 0x8a, + 0x87, 0x60, 0x23, 0x89, 0x92, 0x4e, 0xef, 0xd7, 0xf2, 0xa2, 0x66, 0x54, 0x92, 0x25, 0xa3, 0x64, + 0x24, 0x19, 0x3a, 0x5f, 0x2b, 0xb2, 0x15, 0x5b, 0xb0, 0x27, 0xce, 0x1a, 0x39, 0x5d, 0x32, 0x8c, + 0x52, 0x19, 0x27, 0x55, 0x53, 0x4f, 0xaa, 0xd5, 0xaa, 0x41, 0x55, 0xaa, 0x1b, 0x55, 0xe2, 0x48, + 0x7f, 0xe9, 0x48, 0x5b, 0x1c, 0xb8, 0x62, 0xd2, 0x86, 0x23, 0x8c, 0x74, 0x3a, 0x83, 0x2d, 0xcb, + 0xb0, 0x5c, 0x60, 0xaa, 0x3f, 0x47, 0x8d, 0xfc, 0x03, 0xac, 0x51, 0x07, 0x73, 0xa1, 0x3f, 0x0c, + 0x6d, 0x98, 0xb8, 0x65, 0x5f, 0x27, 0xc4, 0x30, 0xdb, 0x8d, 0x9f, 0xee, 0x14, 0xb6, 0xe3, 0xe2, + 0x9d, 0xa2, 0x3a, 0x26, 0xb8, 0x5a, 0xef, 0x82, 0xc7, 0xba, 0x74, 0x74, 0xbc, 0xa3, 0x74, 0x68, + 0xc4, 0x3f, 0x07, 0x70, 0x3c, 0x63, 0x61, 0x95, 0x62, 0x19, 0xff, 0xa9, 0x86, 0x09, 0x45, 0xbf, + 0x87, 0x81, 0x0a, 0xa6, 0x6a, 0x41, 0xa5, 0x6a, 0x18, 0xc4, 0xc0, 0x4c, 0x28, 0x75, 0x46, 0xec, + 0xbc, 0xb6, 0x0d, 0xe6, 0x31, 0x47, 0xad, 0x63, 0xaa, 0xe6, 0x1a, 0x26, 0x96, 0x5b, 0x20, 0x74, + 0x17, 0xfa, 0x88, 0x89, 0xb5, 0xb0, 0x87, 0x81, 0x2f, 0x89, 0x7d, 0xdd, 0xb9, 0xc8, 0xe9, 0xb2, + 0x26, 0xd6, 0x6c, 0xba, 0x85, 0xc9, 0xff, 0xed, 0x8e, 0xd9, 0x2c, 0x62, 0x49, 0x53, 0xec, 0x5f, + 0x99, 0x71, 0xce, 0x05, 0x9f, 0xcd, 0xfb, 0xf9, 0xf1, 0xf1, 0xc7, 0x1e, 0x38, 0xe1, 0x5a, 0x4e, + 0x4c, 0xa3, 0x4a, 0x30, 0xba, 0x7e, 0xc0, 0xf4, 0x58, 0x4f, 0xd3, 0x97, 0x31, 0xed, 0x61, 0xf7, + 0x06, 0x9c, 0x24, 0x0d, 0x42, 0x71, 0x45, 0x69, 0x91, 0x78, 0x19, 0xc9, 0x6f, 0xbb, 0x48, 0xb2, + 0x4c, 0xeb, 0x20, 0xd5, 0x04, 0x87, 0xaf, 0xbb, 0x84, 0xb7, 0x3b, 0x02, 0x91, 0xea, 0x33, 0x10, + 0xcb, 0x98, 0x0e, 0x10, 0x85, 0xd7, 0x00, 0x4e, 0xc8, 0xd8, 0x2c, 0xab, 0x5a, 0xeb, 0x02, 0x6f, + 0x1c, 0x88, 0xc2, 0xd9, 0x9e, 0x51, 0x70, 0x60, 0x3d, 0x22, 0x71, 0xaf, 0xc3, 0xf0, 0xcb, 0x7d, + 0x1a, 0xee, 0xf0, 0xfd, 0x84, 0xf1, 0x28, 0x09, 0x05, 0x0b, 0x13, 0xa3, 0x66, 0x69, 0x58, 0xa9, + 0x63, 0x8b, 0xe8, 0x46, 0x95, 0xc5, 0x39, 0xb8, 0xe0, 0x7b, 0xb5, 0x07, 0x80, 0x3c, 0xe9, 0x4a, + 0x6f, 0x71, 0x61, 0xbb, 0xb7, 0xc7, 0xe1, 0x64, 0xcb, 0x59, 0x7e, 0xe7, 0xf1, 0x4f, 0x00, 0x84, + 0xcb, 0x98, 0xba, 0xce, 0x9f, 0x86, 0xc1, 0xaa, 0x5a, 0xc1, 0xc4, 0x54, 0x35, 0xcc, 0xbc, 0x0f, + 0xca, 0x6f, 0x37, 0x10, 0x82, 0x3e, 0x7b, 0xc1, 0x1c, 0x0b, 0xca, 0xec, 0x19, 0x61, 0x68, 0x9f, + 0xc8, 0xc8, 0x94, 0xa2, 0x61, 0x55, 0x54, 0xca, 0xcc, 0x99, 0x48, 0x5d, 0xef, 0xff, 0xc2, 0x5c, + 0x6b, 0x96, 0x18, 0x3e, 0x63, 0x14, 0xb0, 0x3c, 0x61, 0x75, 0xec, 0xc5, 0xbf, 0xf4, 0xc3, 0x50, + 0x9b, 0x26, 0xda, 0x82, 0x21, 0x8d, 0x65, 0x2f, 0x3b, 0xd4, 0x09, 0xf5, 0xef, 0x06, 0x2a, 0x16, + 0xc7, 0x67, 0x19, 0x72, 0x22, 0xfb, 0x20, 0x74, 0x07, 0x8e, 0x59, 0x3c, 0x42, 0x9c, 0xd7, 0x3b, + 0x50, 0x11, 0x76, 0x66, 0x92, 0x1c, 0x72, 0xa8, 0x18, 0x73, 0xaf, 0x7b, 0xf3, 0xbd, 0xe3, 0xde, + 0x3a, 0xaa, 0x71, 0xf4, 0x28, 0xaa, 0xf1, 0xd8, 0x91, 0x54, 0xa3, 0xff, 0x88, 0xab, 0x11, 0xc9, + 0xd0, 0x4f, 0xa8, 0x4a, 0x6b, 0x24, 0xfc, 0xd1, 0xff, 0x41, 0xcc, 0x3b, 0x13, 0x4a, 0x5d, 0xec, + 0x93, 0x3c, 0xcb, 0x60, 0xdc, 0xf4, 0x05, 0xef, 0x93, 0x5d, 0x20, 0x3b, 0x4c, 0x68, 0x05, 0x1e, + 0xb7, 0x70, 0x11, 0x5b, 0x96, 0x5e, 0x2d, 0x29, 0xfc, 0x1f, 0x86, 0x84, 0x03, 0x8c, 0xfc, 0xf4, + 0x21, 0xc5, 0x5c, 0x64, 0x5e, 0x0b, 0x2d, 0x18, 0xdf, 0x27, 0xe8, 0x16, 0x0c, 0x17, 0x70, 0x19, + 0x53, 0x5c, 0x50, 0xb8, 0x0c, 0x17, 0x5a, 0x8c, 0xc1, 0x3e, 0x18, 0xa7, 0x1c, 0xb4, 0xec, 0x80, + 0x5d, 0xde, 0x3b, 0x70, 0xba, 0xa0, 0x13, 0x35, 0x5f, 0xee, 0x45, 0x0c, 0xfb, 0x20, 0x3e, 0xe5, + 0xc2, 0xbb, 0x98, 0xdb, 0x0a, 0x7e, 0xd5, 0x17, 0x00, 0x82, 0xc7, 0xae, 0xf1, 0xd0, 0x9a, 0x4e, + 0xfa, 0x2c, 0xf2, 0x5f, 0xc3, 0xb1, 0xb2, 0x9a, 0xc7, 0x65, 0xa5, 0xa8, 0x97, 0x29, 0xb6, 0x9c, + 0x62, 0x0f, 0xb1, 0xbd, 0x25, 0xb6, 0x85, 0xce, 0xc0, 0x71, 0x0b, 0x9b, 0x86, 0x45, 0x95, 0xa2, + 0x8e, 0xcb, 0x05, 0x12, 0xf6, 0xc6, 0xbc, 0x33, 0x41, 0x79, 0x8c, 0x6f, 0x2e, 0xb1, 0x3d, 0x74, + 0x1e, 0x9e, 0x70, 0x94, 0xf8, 0xa5, 0xb8, 0xba, 0x3e, 0xa6, 0x8b, 0xb8, 0x8c, 0x5f, 0x21, 0x47, + 0xc4, 0x5f, 0xf9, 0xa1, 0xc0, 0xed, 0xe4, 0x45, 0xbe, 0x42, 0x71, 0x05, 0x4d, 0x41, 0x3f, 0xc5, + 0x55, 0xb5, 0x4a, 0x59, 0xe6, 0x05, 0x65, 0x67, 0x35, 0x44, 0xa7, 0x12, 0xa0, 0xb7, 0xa6, 0x17, + 0x78, 0xb3, 0x94, 0xed, 0x47, 0x14, 0x83, 0xa1, 0x02, 0x26, 0x9a, 0xa5, 0xb3, 0xff, 0xf4, 0x70, + 0x88, 0x7b, 0xda, 0xb6, 0x85, 0x22, 0x30, 0xe0, 0x86, 0x39, 0x3c, 0x16, 0x03, 0x33, 0x01, 0xb9, + 0xb5, 0x46, 0xf7, 0xa0, 0x9f, 0x05, 0x85, 0xbb, 0x14, 0x4a, 0x65, 0xfa, 0x4c, 0xdb, 0x6e, 0x17, + 0xc5, 0x35, 0xc6, 0x22, 0x55, 0xa9, 0xd5, 0x90, 0x1d, 0x4a, 0xf4, 0x00, 0x86, 0xda, 0x66, 0x31, + 0x27, 0x21, 0xfe, 0x30, 0xec, 0x09, 0xe9, 0xb7, 0x54, 0xfc, 0x98, 0x76, 0x72, 0x74, 0x0d, 0x42, + 0x63, 0xa7, 0x8a, 0x2d, 0xc5, 0x1e, 0x70, 0xc2, 0x41, 0x56, 0xe0, 0x91, 0xae, 0xa3, 0x6e, 0xe9, + 0x78, 0xc7, 0xcd, 0xbc, 0x20, 0xd3, 0xb6, 0x77, 0x3a, 0x9a, 0xd4, 0xf8, 0x51, 0x34, 0xa9, 0x89, + 0xf7, 0x6a, 0x52, 0xeb, 0x30, 0x50, 0xc2, 0x94, 0x75, 0x17, 0xa7, 0xdd, 0x0d, 0xd1, 0xa8, 0xe4, + 0x63, 0x25, 0xbe, 0x40, 0xb7, 0x21, 0x74, 0x72, 0x97, 0x60, 0xea, 0xf4, 0x8f, 0xe1, 0x9b, 0x53, + 0x90, 0x73, 0x65, 0x31, 0x8d, 0x5c, 0x83, 0xa1, 0xb6, 0x4b, 0xb7, 0x33, 0x73, 0x1b, 0x37, 0x9c, + 0x2c, 0xb6, 0x1f, 0xd1, 0x09, 0x38, 0x5a, 0x57, 0xcb, 0x35, 0x37, 0x81, 0xf9, 0x62, 0xce, 0x73, + 0x15, 0x44, 0xe6, 0xa1, 0xd0, 0x7d, 0x9b, 0x83, 0xe0, 0x57, 0x7d, 0x81, 0x51, 0xc1, 0x1f, 0xff, + 0x3b, 0x80, 0x63, 0xed, 0x59, 0x82, 0xd6, 0xe1, 0xa8, 0x4e, 0x71, 0x85, 0x84, 0x79, 0x0b, 0xbe, + 0x32, 0x64, 0xa6, 0xc9, 0x9c, 0x05, 0x9d, 0x87, 0x7e, 0xfe, 0x32, 0x10, 0xf6, 0x30, 0xbe, 0x70, + 0x17, 0x9f, 0x64, 0x0b, 0x59, 0xb0, 0x1d, 0xbd, 0xf8, 0x36, 0x1c, 0x5f, 0x64, 0x9d, 0x72, 0xf8, + 0x51, 0x64, 0x06, 0x0a, 0x45, 0x55, 0x2f, 0x2b, 0x7a, 0xb1, 0xd5, 0x51, 0x59, 0xb5, 0x07, 0xe4, + 0x09, 0x7b, 0x7f, 0xa5, 0xe8, 0x76, 0xca, 0xd9, 0x1f, 0x00, 0x3c, 0xd9, 0x73, 0xee, 0x40, 0x11, + 0x38, 0xb5, 0x2c, 0xe5, 0x14, 0x39, 0xbb, 0xa9, 0x2c, 0x6d, 0xc8, 0xeb, 0xe9, 0x9c, 0xb2, 0x28, + 0x2d, 0xa5, 0xb7, 0xd6, 0x72, 0xc2, 0x08, 0xfa, 0x15, 0x9c, 0xee, 0x92, 0x2d, 0x6d, 0xc8, 0x4a, + 0x46, 0x96, 0xd2, 0x39, 0x49, 0x00, 0x28, 0x0a, 0x23, 0x3d, 0xc4, 0xb2, 0xb4, 0xb9, 0x96, 0xce, + 0x48, 0x82, 0x07, 0x4d, 0xc3, 0x93, 0x5d, 0xf2, 0x6c, 0x2e, 0x9d, 0xdb, 0xca, 0x0a, 0x5e, 0x74, + 0x0a, 0xfe, 0xa2, 0x4b, 0x24, 0x4b, 0xe9, 0x45, 0xc1, 0x87, 0xce, 0xc2, 0xd8, 0x01, 0xc1, 0x92, + 0x24, 0xcb, 0x2b, 0x37, 0x97, 0x95, 0x8d, 0x85, 0x55, 0x29, 0x93, 0xcb, 0x0a, 0xa3, 0x3d, 0xb4, + 0x16, 0xe4, 0x8d, 0x3f, 0x4a, 0x37, 0xb9, 0xb2, 0x74, 0x33, 0x23, 0x65, 0x05, 0x7f, 0xea, 0xb3, + 0x10, 0xf4, 0xa6, 0x37, 0x57, 0xd0, 0xdf, 0x3c, 0xd0, 0xcf, 0x27, 0x20, 0x34, 0xd4, 0xc0, 0x14, + 0xb9, 0x34, 0x20, 0xca, 0x19, 0x35, 0xff, 0x03, 0x9a, 0x5f, 0x85, 0xa5, 0xe2, 0xa5, 0x87, 0x5a, + 0x42, 0x35, 0x4d, 0x42, 0x55, 0x6d, 0x3b, 0x91, 0x57, 0x89, 0xae, 0x25, 0x6a, 0x04, 0x5b, 0xe7, + 0x3a, 0x05, 0x84, 0xaa, 0xd5, 0x82, 0x6a, 0x15, 0xb8, 0xac, 0x8e, 0x49, 0x42, 0x37, 0x12, 0xdb, + 0x57, 0x49, 0x62, 0xc7, 0xd2, 0x29, 0x7e, 0xf4, 0xed, 0xf7, 0xff, 0xf6, 0x48, 0xf1, 0x1b, 0xce, + 0x6b, 0x72, 0xb2, 0x95, 0x17, 0x24, 0xf9, 0x67, 0xb7, 0x95, 0x88, 0xad, 0xcd, 0xdd, 0xc3, 0x5e, + 0x24, 0xc9, 0x1c, 0x98, 0x45, 0x7f, 0xf5, 0x40, 0xef, 0x32, 0xa6, 0xe8, 0xc2, 0x20, 0xf3, 0x2a, + 0x0f, 0x44, 0x6a, 0xf0, 0x11, 0x37, 0xfe, 0x5f, 0xf0, 0xf4, 0x0b, 0x8f, 0x1d, 0x89, 0xd5, 0x5e, + 0x91, 0xa8, 0x18, 0x55, 0x9d, 0x1a, 0x87, 0x06, 0xc3, 0x15, 0xb7, 0xc5, 0xc3, 0xc2, 0x6a, 0x81, + 0x85, 0xe3, 0x06, 0x9a, 0xef, 0x15, 0x8e, 0x3e, 0xa2, 0xc0, 0x95, 0x76, 0xd1, 0x63, 0x0f, 0xf4, + 0xd9, 0x05, 0x8d, 0x52, 0x03, 0x55, 0x3f, 0x8f, 0xc5, 0xc5, 0x21, 0x3a, 0x46, 0xfc, 0x9f, 0x3f, + 0x57, 0x30, 0xae, 0xa1, 0x2b, 0x43, 0x06, 0x03, 0x7d, 0xe8, 0x81, 0xc7, 0x9c, 0x41, 0x1e, 0x0d, + 0x37, 0xf8, 0x47, 0x2e, 0x0f, 0x0a, 0x73, 0xc2, 0xf1, 0xf1, 0x11, 0x57, 0xc8, 0x56, 0x64, 0xf3, + 0x7d, 0x2b, 0xa4, 0x4b, 0x7b, 0xd7, 0xae, 0x98, 0xd7, 0x00, 0xfa, 0x79, 0xaf, 0xee, 0xbb, 0x81, + 0x74, 0xb4, 0xf6, 0xc8, 0x94, 0xc8, 0x3f, 0x2a, 0x89, 0xee, 0x47, 0x25, 0x51, 0xaa, 0x98, 0xb4, + 0x11, 0xff, 0xd7, 0x11, 0xfb, 0x9f, 0x99, 0x7d, 0xcf, 0x92, 0x98, 0x03, 0xb3, 0x11, 0xfa, 0x64, + 0x0f, 0x78, 0xbe, 0xd9, 0x03, 0xe7, 0xfa, 0xf3, 0x94, 0xff, 0xe3, 0xbf, 0xd8, 0x03, 0xa0, 0xb9, + 0x07, 0x52, 0x83, 0xcf, 0x0a, 0x8f, 0xbe, 0x0e, 0x7b, 0x04, 0xb0, 0xf0, 0x01, 0x78, 0x36, 0x3f, + 0x9a, 0x91, 0xb7, 0x16, 0xd7, 0x9e, 0xbf, 0x8c, 0x8e, 0xbc, 0x78, 0x19, 0x1d, 0x79, 0xf3, 0x32, + 0x0a, 0xfe, 0xd2, 0x8c, 0x82, 0x4f, 0x9b, 0x51, 0xf0, 0xb4, 0x19, 0x05, 0xcf, 0x9b, 0x51, 0xf0, + 0x5d, 0x33, 0x0a, 0x5e, 0x35, 0xa3, 0x23, 0x6f, 0x9a, 0x51, 0xf0, 0x8f, 0xfd, 0xe8, 0xc8, 0x93, + 0xfd, 0x28, 0x78, 0xbe, 0x1f, 0x1d, 0x79, 0xb1, 0x1f, 0x1d, 0xb9, 0x7b, 0xaf, 0x64, 0x98, 0xdb, + 0x25, 0xb1, 0x6e, 0xd8, 0x33, 0xbb, 0xa5, 0x8a, 0x35, 0x92, 0x64, 0x0f, 0xf6, 0x8b, 0x6d, 0xc2, + 0xb4, 0x8c, 0xba, 0x5e, 0xc0, 0x56, 0xc2, 0x15, 0x27, 0xcd, 0x7c, 0xc9, 0x48, 0xe2, 0x87, 0xd4, + 0xf9, 0xd8, 0xf5, 0xee, 0x4f, 0x70, 0x79, 0x3f, 0xbb, 0xba, 0x8b, 0x3f, 0x06, 0x00, 0x00, 0xff, + 0xff, 0x6f, 0x2f, 0xfb, 0x48, 0xcf, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.vesapi.go index 7a876c11e..479507d2b 100644 --- a/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/k8s_pod_security_policy/public_crudapi.vesapi.go @@ -3268,10 +3268,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3328,10 +3332,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3434,10 +3442,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/known_label/crudapi/api.vesapi.go b/pbgo/extschema/schema/known_label/crudapi/api.vesapi.go index 9cda936a3..4df584d3f 100644 --- a/pbgo/extschema/schema/known_label/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/known_label/crudapi/api.vesapi.go @@ -3075,10 +3075,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/known_label/public_customapi.pb.go b/pbgo/extschema/schema/known_label/public_customapi.pb.go index 66912e346..4235d18d8 100644 --- a/pbgo/extschema/schema/known_label/public_customapi.pb.go +++ b/pbgo/extschema/schema/known_label/public_customapi.pb.go @@ -605,56 +605,57 @@ func init() { } var fileDescriptor_87f1eb6aa10d9548 = []byte{ - // 780 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0xc1, 0x4f, 0x3b, 0x45, - 0x14, 0xee, 0x74, 0x7f, 0xfd, 0x25, 0x1d, 0x02, 0xa9, 0x1b, 0x8c, 0xa5, 0xe0, 0xa6, 0xd9, 0xa8, - 0x41, 0x60, 0x77, 0x15, 0xa3, 0x87, 0xde, 0x5a, 0xac, 0x84, 0xd8, 0x04, 0xa8, 0x60, 0xc0, 0x4b, - 0x33, 0xbb, 0x7d, 0x5d, 0xd6, 0x6e, 0x77, 0x96, 0x9d, 0xd9, 0x02, 0x31, 0x24, 0x06, 0x4f, 0xde, - 0x4c, 0xbc, 0xf9, 0x17, 0x98, 0xf8, 0x0f, 0x18, 0xb9, 0x70, 0x83, 0x78, 0x30, 0x8d, 0x5c, 0x38, - 0xca, 0xd6, 0x83, 0xde, 0xf8, 0x13, 0x0c, 0xb3, 0x6d, 0xa1, 0xd4, 0x56, 0x3c, 0xe8, 0x6d, 0xe6, - 0x7d, 0xf3, 0xe6, 0xfb, 0xbe, 0xf7, 0xde, 0xee, 0xe0, 0x77, 0xda, 0xc0, 0x74, 0x87, 0x1a, 0xcc, - 0x3a, 0x80, 0x16, 0x31, 0x9a, 0x1e, 0x3d, 0xf2, 0x6a, 0x2e, 0x31, 0xc1, 0x35, 0xfc, 0xd0, 0x74, - 0x1d, 0xab, 0x66, 0x85, 0x8c, 0xd3, 0x16, 0xf1, 0x1d, 0xdd, 0x0f, 0x28, 0xa7, 0xf2, 0x5c, 0x9c, - 0xa1, 0xc7, 0x19, 0xfa, 0xa3, 0x8c, 0x9c, 0x66, 0x3b, 0xfc, 0x20, 0x34, 0x75, 0x8b, 0xb6, 0x0c, - 0x9b, 0xda, 0xd4, 0x10, 0x19, 0x66, 0xd8, 0x10, 0x3b, 0xb1, 0x11, 0xab, 0xf8, 0xa6, 0xdc, 0x82, - 0x4d, 0xa9, 0xed, 0x82, 0x41, 0x7c, 0xc7, 0x20, 0x9e, 0x47, 0x39, 0xe1, 0x0e, 0xf5, 0x58, 0x0f, - 0x9d, 0x1f, 0x56, 0x46, 0xfd, 0xc7, 0xe0, 0xc2, 0x30, 0xd8, 0x26, 0xae, 0x53, 0x27, 0x1c, 0x7a, - 0xa8, 0xfa, 0x04, 0x05, 0x06, 0x5e, 0x7b, 0xf8, 0x06, 0x75, 0x17, 0xa7, 0x2b, 0xf7, 0xa2, 0x77, - 0x4e, 0x7c, 0x90, 0x33, 0x58, 0x6a, 0xc2, 0x49, 0x16, 0xe5, 0xd1, 0x62, 0xba, 0x7a, 0xbf, 0x94, - 0x67, 0x71, 0xaa, 0x4d, 0xdc, 0x10, 0xb2, 0x49, 0x11, 0x8b, 0x37, 0x72, 0x1e, 0x4f, 0xd5, 0x81, - 0x59, 0x81, 0x23, 0xae, 0xca, 0x4a, 0x02, 0x7b, 0x1c, 0x52, 0xbf, 0x42, 0x78, 0x7a, 0x2d, 0x00, - 0xc2, 0xa1, 0x0a, 0x87, 0x21, 0x30, 0x2e, 0x2f, 0xe0, 0xb4, 0x47, 0x5a, 0xc0, 0x7c, 0x62, 0x41, - 0x8f, 0xe1, 0x21, 0xd0, 0x67, 0x4e, 0x3e, 0x30, 0xe7, 0xfb, 0xcc, 0xe2, 0xf6, 0x12, 0xfe, 0xe9, - 0xcf, 0x0b, 0x29, 0x15, 0x48, 0x1d, 0x84, 0xc6, 0xa8, 0x78, 0x31, 0xaa, 0xa2, 0x82, 0x67, 0xfa, - 0x22, 0x98, 0x4f, 0x3d, 0x06, 0x72, 0x01, 0xa7, 0x44, 0x8f, 0x84, 0x82, 0xa9, 0xd5, 0x37, 0xf4, - 0xb1, 0x5d, 0xd4, 0x07, 0x65, 0xa9, 0xc6, 0x29, 0xea, 0x77, 0x08, 0xe3, 0x75, 0xe0, 0xcf, 0x33, - 0x54, 0xc0, 0xa9, 0xc3, 0x10, 0x82, 0xd8, 0xd2, 0xcc, 0x44, 0xa2, 0xed, 0xfb, 0x73, 0x31, 0x91, - 0x48, 0xe9, 0x17, 0x43, 0xfa, 0x9b, 0x62, 0xbc, 0x18, 0x53, 0x0c, 0x75, 0x03, 0x4f, 0x09, 0x6d, - 0xa3, 0x3e, 0xa5, 0x7f, 0xeb, 0x93, 0xe0, 0xe9, 0x0f, 0xc1, 0x85, 0xff, 0xb0, 0x75, 0x6a, 0x06, - 0xcf, 0xf4, 0x29, 0x62, 0xc1, 0x4b, 0x1c, 0xa7, 0x07, 0x75, 0x90, 0x67, 0x71, 0x66, 0x7b, 0xb7, - 0x5c, 0xdd, 0xaf, 0x15, 0x2b, 0x95, 0x5a, 0xa5, 0x58, 0x2a, 0x57, 0x3e, 0xc9, 0x24, 0xe4, 0x57, - 0xf1, 0x2b, 0x71, 0xb4, 0xbc, 0x57, 0x5c, 0xdb, 0x89, 0xe3, 0x19, 0x24, 0xbf, 0x8e, 0xe7, 0xe2, - 0xf0, 0xa7, 0xc5, 0xca, 0x6e, 0xb9, 0xb6, 0x55, 0x2d, 0x7f, 0xb4, 0xb1, 0xd7, 0xcf, 0x4a, 0xca, - 0xf3, 0xf8, 0xb5, 0x18, 0xfe, 0xb8, 0xbc, 0xff, 0x04, 0x94, 0x56, 0x7f, 0x48, 0xe1, 0xf4, 0x9a, - 0xf8, 0xb0, 0x8b, 0x5b, 0x1b, 0xf2, 0xcf, 0x08, 0xbf, 0x8c, 0xe7, 0x45, 0x5e, 0x9c, 0x50, 0xb0, - 0xa1, 0xb9, 0xce, 0xbd, 0xfd, 0x8c, 0x93, 0xb1, 0x47, 0xb5, 0x19, 0x5d, 0x66, 0x97, 0x1b, 0xef, - 0x1f, 0x5b, 0x9a, 0x45, 0x3d, 0x46, 0x5d, 0xd0, 0x4c, 0xc2, 0x40, 0x0b, 0x19, 0x04, 0x2b, 0xf9, - 0x36, 0x30, 0xcd, 0xa1, 0x9a, 0x48, 0x64, 0xda, 0x51, 0xe0, 0x70, 0x38, 0xbb, 0xfe, 0xfd, 0xdb, - 0xe4, 0x07, 0xea, 0xbb, 0xbd, 0x5f, 0x90, 0x31, 0xa8, 0x39, 0x33, 0xbe, 0x18, 0xac, 0x4f, 0x87, - 0x7e, 0x56, 0x96, 0x60, 0x2c, 0xa0, 0x25, 0xf9, 0x1a, 0x61, 0x69, 0x1d, 0xb8, 0xfc, 0xe6, 0x04, - 0x7d, 0x0f, 0xd3, 0x9c, 0x7b, 0xeb, 0x9f, 0x8e, 0xf5, 0x3c, 0x9c, 0x5e, 0xfd, 0x98, 0x44, 0xd1, - 0x65, 0xb6, 0x24, 0x7c, 0xd4, 0xa1, 0x41, 0x42, 0x97, 0x6b, 0xc4, 0xb2, 0x80, 0xb1, 0x95, 0xfc, - 0xa8, 0xb9, 0x16, 0xf5, 0x1c, 0x4e, 0x47, 0xfc, 0x05, 0x40, 0xea, 0xc2, 0x9e, 0x26, 0x2f, 0x3f, - 0xdf, 0x1e, 0x13, 0x2d, 0x8a, 0x27, 0x67, 0x62, 0x8b, 0x86, 0xe6, 0x77, 0x62, 0x8b, 0x86, 0xc7, - 0xf0, 0xff, 0x68, 0x51, 0x5d, 0x30, 0x16, 0xd0, 0x52, 0x4e, 0xbf, 0x38, 0x47, 0xd2, 0xaf, 0xe7, - 0x28, 0x3f, 0x5e, 0xde, 0xa6, 0xf9, 0x39, 0x58, 0xfc, 0xec, 0x97, 0x6c, 0x32, 0x83, 0x4a, 0x5f, - 0xa3, 0xce, 0xad, 0x92, 0xb8, 0xb9, 0x55, 0x12, 0x77, 0xb7, 0x0a, 0xfa, 0x32, 0x52, 0xd0, 0xf7, - 0x91, 0x82, 0xae, 0x22, 0x05, 0x75, 0x22, 0x05, 0xfd, 0x16, 0x29, 0xe8, 0x8f, 0x48, 0x49, 0xdc, - 0x45, 0x0a, 0xfa, 0xa6, 0xab, 0x24, 0x2e, 0xba, 0x0a, 0xea, 0x74, 0x95, 0xc4, 0x4d, 0x57, 0x49, - 0x7c, 0xb6, 0x69, 0x53, 0xbf, 0x69, 0xeb, 0x6d, 0xea, 0x72, 0x08, 0x02, 0xa2, 0x87, 0xcc, 0x10, - 0x8b, 0x06, 0x0d, 0x5a, 0x9a, 0x1f, 0xd0, 0xb6, 0x53, 0x87, 0x40, 0xeb, 0xc3, 0x86, 0x6f, 0xda, - 0xd4, 0x80, 0x63, 0xde, 0x7b, 0x39, 0x46, 0x5f, 0x45, 0xf3, 0xa5, 0x78, 0x3e, 0xde, 0xfb, 0x2b, - 0x00, 0x00, 0xff, 0xff, 0x04, 0x99, 0x6d, 0xbd, 0x39, 0x07, 0x00, 0x00, + // 791 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x55, 0x41, 0x4f, 0x3b, 0x45, + 0x14, 0xef, 0x74, 0xff, 0xfd, 0x27, 0x1d, 0x02, 0xa9, 0x1b, 0x8c, 0xa5, 0xe0, 0xa6, 0xd9, 0xa8, + 0x41, 0x74, 0x77, 0x15, 0xa3, 0x87, 0xde, 0x0a, 0x54, 0x42, 0x6c, 0x02, 0x54, 0x30, 0xe0, 0xc1, + 0x66, 0x76, 0xfb, 0xba, 0xac, 0x6c, 0x77, 0x96, 0x9d, 0xd9, 0x02, 0x31, 0x26, 0x06, 0xbd, 0x78, + 0x33, 0xf1, 0xa4, 0x9f, 0xc0, 0x8f, 0x60, 0xe4, 0xc2, 0x4d, 0x4e, 0xa6, 0xd1, 0x0b, 0x47, 0xd9, + 0x72, 0xd0, 0x1b, 0x1f, 0xc0, 0x83, 0xe9, 0x6c, 0x5b, 0x58, 0x4a, 0x2b, 0x1e, 0x8c, 0xb7, 0x37, + 0xef, 0x37, 0xef, 0xbd, 0xdf, 0xef, 0xbd, 0xb7, 0x3b, 0xf8, 0xad, 0x36, 0x30, 0xdd, 0xa1, 0x06, + 0xb3, 0x0e, 0xa0, 0x45, 0x8c, 0x43, 0x8f, 0x1e, 0x7b, 0x75, 0x97, 0x98, 0xe0, 0x1a, 0x7e, 0x68, + 0xba, 0x8e, 0x55, 0xb7, 0x42, 0xc6, 0x69, 0x8b, 0xf8, 0x8e, 0xee, 0x07, 0x94, 0x53, 0x79, 0x2e, + 0x8e, 0xd0, 0xe3, 0x08, 0xfd, 0x5e, 0x44, 0x41, 0xb3, 0x1d, 0x7e, 0x10, 0x9a, 0xba, 0x45, 0x5b, + 0x86, 0x4d, 0x6d, 0x6a, 0x88, 0x08, 0x33, 0x6c, 0x8a, 0x93, 0x38, 0x08, 0x2b, 0xce, 0x54, 0x58, + 0xb0, 0x29, 0xb5, 0x5d, 0x30, 0x88, 0xef, 0x18, 0xc4, 0xf3, 0x28, 0x27, 0xdc, 0xa1, 0x1e, 0xeb, + 0xa3, 0xf3, 0x49, 0x66, 0xd4, 0xbf, 0x0f, 0x2e, 0x24, 0xc1, 0x36, 0x71, 0x9d, 0x06, 0xe1, 0xd0, + 0x47, 0xd5, 0x07, 0x28, 0x30, 0xf0, 0xda, 0xc9, 0x0c, 0xea, 0x2e, 0xce, 0x56, 0x7b, 0xa4, 0x77, + 0x4e, 0x7d, 0x90, 0x73, 0x58, 0x3a, 0x84, 0xd3, 0x3c, 0x2a, 0xa2, 0xc5, 0x6c, 0xad, 0x67, 0xca, + 0xb3, 0x38, 0xd3, 0x26, 0x6e, 0x08, 0xf9, 0xb4, 0xf0, 0xc5, 0x07, 0xb9, 0x88, 0xa7, 0x1a, 0xc0, + 0xac, 0xc0, 0x11, 0xa9, 0xf2, 0x92, 0xc0, 0xee, 0xbb, 0xd4, 0x2f, 0x11, 0x9e, 0x5e, 0x0d, 0x80, + 0x70, 0xa8, 0xc1, 0x51, 0x08, 0x8c, 0xcb, 0x0b, 0x38, 0xeb, 0x91, 0x16, 0x30, 0x9f, 0x58, 0xd0, + 0xaf, 0x70, 0xe7, 0x18, 0x54, 0x4e, 0xdf, 0x55, 0x2e, 0x0e, 0x2a, 0x8b, 0xec, 0x2b, 0xf8, 0xa7, + 0x3f, 0x2f, 0xa4, 0x4c, 0x20, 0x75, 0x10, 0x1a, 0xc3, 0xe2, 0xd9, 0x28, 0x8b, 0x2a, 0x9e, 0x19, + 0x90, 0x60, 0x3e, 0xf5, 0x18, 0xc8, 0x25, 0x9c, 0x11, 0x33, 0x12, 0x0c, 0xa6, 0x96, 0x5f, 0xd1, + 0xc7, 0x4e, 0x51, 0x1f, 0xb6, 0xa5, 0x16, 0x87, 0xa8, 0xdf, 0x23, 0x8c, 0xd7, 0x81, 0x3f, 0x4d, + 0x50, 0x09, 0x67, 0x8e, 0x42, 0x08, 0x62, 0x49, 0x33, 0x13, 0x0b, 0x6d, 0xf7, 0xee, 0xc5, 0x85, + 0x44, 0xc8, 0xa0, 0x19, 0xd2, 0x23, 0xcd, 0x78, 0x36, 0xa6, 0x19, 0xea, 0x06, 0x9e, 0x12, 0xdc, + 0x46, 0x75, 0x4a, 0xff, 0x56, 0x27, 0xc1, 0xd3, 0x6b, 0xe0, 0xc2, 0x7f, 0x38, 0x3a, 0x35, 0x87, + 0x67, 0x06, 0x25, 0x62, 0xc2, 0x4b, 0x1c, 0x67, 0x87, 0x7d, 0x90, 0x67, 0x71, 0x6e, 0x7b, 0xb7, + 0x52, 0xdb, 0xaf, 0x97, 0xab, 0xd5, 0x7a, 0xb5, 0xbc, 0x52, 0xa9, 0x7e, 0x98, 0x4b, 0xc9, 0x2f, + 0xe2, 0x17, 0x62, 0x6f, 0x65, 0xaf, 0xbc, 0xba, 0x13, 0xfb, 0x73, 0x48, 0x7e, 0x19, 0xcf, 0xc5, + 0xee, 0x8f, 0xca, 0xd5, 0xdd, 0x4a, 0x7d, 0xab, 0x56, 0x79, 0x7f, 0x63, 0x6f, 0x10, 0x95, 0x96, + 0xe7, 0xf1, 0x4b, 0x31, 0xfc, 0x41, 0x65, 0xff, 0x01, 0x28, 0x2d, 0xff, 0x95, 0xc1, 0xd9, 0x55, + 0xf1, 0x61, 0x97, 0xb7, 0x36, 0xe4, 0x1b, 0x84, 0x9f, 0xc7, 0xfb, 0x22, 0x2f, 0x4e, 0x68, 0x58, + 0x62, 0xaf, 0x0b, 0xaf, 0x3f, 0xe1, 0x66, 0xac, 0x51, 0xfd, 0x0a, 0x45, 0x3f, 0xe7, 0xd7, 0x9a, + 0xef, 0x9e, 0x58, 0x9a, 0x45, 0x3d, 0x46, 0x5d, 0xd0, 0x4c, 0xc2, 0x40, 0x0b, 0x19, 0x04, 0x6f, + 0x16, 0x1f, 0xfa, 0x1d, 0xab, 0x0f, 0xb4, 0x81, 0x69, 0x0e, 0xd5, 0x44, 0x4a, 0xa6, 0x1d, 0x07, + 0x0e, 0x87, 0xb3, 0xdf, 0x6e, 0xbe, 0x4d, 0xbf, 0xa7, 0xbe, 0xdd, 0xff, 0x39, 0x19, 0xc3, 0x69, + 0x30, 0xe3, 0xb3, 0xa1, 0xfd, 0x79, 0xe2, 0x37, 0x66, 0x09, 0x2e, 0x25, 0xb4, 0x24, 0xdf, 0x22, + 0x2c, 0xad, 0x03, 0x97, 0x5f, 0x9d, 0xc0, 0xfc, 0x6e, 0xcf, 0x0b, 0xaf, 0xfd, 0xd3, 0xb5, 0xbe, + 0xba, 0xef, 0xd0, 0xe5, 0x8f, 0xe9, 0x9e, 0xc2, 0x4f, 0x84, 0x92, 0x06, 0x34, 0x49, 0xe8, 0x72, + 0x8d, 0x58, 0x16, 0x30, 0x36, 0x2a, 0x0f, 0xb4, 0x16, 0xf5, 0x1c, 0x4e, 0x1f, 0x57, 0x3e, 0xc4, + 0x92, 0xe2, 0x03, 0x20, 0x0d, 0xa1, 0x5d, 0x93, 0xdf, 0x78, 0xba, 0x76, 0x26, 0x26, 0x1b, 0x2f, + 0xdc, 0xc4, 0xc9, 0x26, 0xd6, 0x7e, 0xe2, 0x64, 0x93, 0xdb, 0xfb, 0xff, 0x4e, 0xb6, 0x21, 0xb8, + 0x94, 0xd0, 0x52, 0x41, 0xbf, 0x38, 0x47, 0xd2, 0xaf, 0xe7, 0xa8, 0x38, 0x9e, 0xf8, 0xa6, 0xf9, + 0x29, 0x58, 0xfc, 0xec, 0x97, 0x7c, 0x3a, 0x87, 0x56, 0xbe, 0x46, 0x9d, 0x6b, 0x25, 0x75, 0x75, + 0xad, 0xa4, 0x6e, 0xaf, 0x15, 0xf4, 0x45, 0xa4, 0xa0, 0x1f, 0x22, 0x05, 0x5d, 0x46, 0x0a, 0xea, + 0x44, 0x0a, 0xfa, 0x3d, 0x52, 0xd0, 0x1f, 0x91, 0x92, 0xba, 0x8d, 0x14, 0xf4, 0x4d, 0x57, 0x49, + 0x5d, 0x74, 0x15, 0xd4, 0xe9, 0x2a, 0xa9, 0xab, 0xae, 0x92, 0xfa, 0x78, 0xd3, 0xa6, 0xfe, 0xa1, + 0xad, 0xb7, 0xa9, 0xcb, 0x21, 0x08, 0x88, 0x1e, 0x32, 0x43, 0x18, 0x4d, 0x1a, 0xb4, 0x34, 0x3f, + 0xa0, 0x6d, 0xa7, 0x01, 0x81, 0x36, 0x80, 0x0d, 0xdf, 0xb4, 0xa9, 0x01, 0x27, 0xbc, 0xff, 0x14, + 0x8d, 0x3e, 0xb3, 0xe6, 0x73, 0xf1, 0x1e, 0xbd, 0xf3, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0e, + 0x7b, 0x17, 0x01, 0x8a, 0x07, 0x00, 0x00, } func (x QueryType) String() string { diff --git a/pbgo/extschema/schema/known_label_key/crudapi/api.vesapi.go b/pbgo/extschema/schema/known_label_key/crudapi/api.vesapi.go index f8dbf1fef..323e49d5e 100644 --- a/pbgo/extschema/schema/known_label_key/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/known_label_key/crudapi/api.vesapi.go @@ -2955,10 +2955,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/known_label_key/public_customapi.pb.go b/pbgo/extschema/schema/known_label_key/public_customapi.pb.go index 9b7ecd024..cdeab2fa1 100644 --- a/pbgo/extschema/schema/known_label_key/public_customapi.pb.go +++ b/pbgo/extschema/schema/known_label_key/public_customapi.pb.go @@ -59,18 +59,23 @@ const ( // x-displayName: "Label Key Prefix" // Get prefix match of label.key QUERY_PREFIX_LABEL_KEYS QueryType = 2 + // x-displayName: "Site Label Keys" + // Get all available known label keys that can be applied to sites + QUERY_SITE_LABEL_KEYS QueryType = 3 ) var QueryType_name = map[int32]string{ 0: "QUERY_ALL_LABEL_KEYS", 1: "QUERY_EXACT_LABEL_KEY", 2: "QUERY_PREFIX_LABEL_KEYS", + 3: "QUERY_SITE_LABEL_KEYS", } var QueryType_value = map[string]int32{ "QUERY_ALL_LABEL_KEYS": 0, "QUERY_EXACT_LABEL_KEY": 1, "QUERY_PREFIX_LABEL_KEYS": 2, + "QUERY_SITE_LABEL_KEYS": 3, } func (QueryType) EnumDescriptor() ([]byte, []int) { @@ -277,9 +282,10 @@ func (m *CreateResponse) GetLabelKey() *LabelKeyType { // Get Label Key Request is used in following way // // namespace = shared -// if query = QUERY_ALL_LABELS_KEYS than key is ignored and complete list of label keys from current tenant's shared namespace and ves-io/shared namespace are returned -// if query = QUERY_EXACT_LABELS_KEY than label key matching exact key is returned from list of labels in current tenants shared namespace and ves-io/shared namespace -// if query = QUERY_PREFIX_LABELS_KEYS than label keys matching key are returned from list of labels in current tenants shared namespace and ves-io shared namespace are returned +// if query = QUERY_ALL_LABEL_KEYS then key is ignored and complete list of label keys from current tenant's shared namespace and ves-io/shared namespace are returned +// if query = QUERY_EXACT_LABEL_KEY then label key matching exact key is returned from list of labels in current tenants shared namespace and ves-io/shared namespace +// if query = QUERY_PREFIX_LABEL_KEYS then label keys matching key are returned from list of labels in current tenants shared namespace and ves-io shared namespace are returned +// if query = QUERY_SITE_LABEL_KEYS then key is ignored and complete list of label keys from current tenant's shared namespace and ves-io/shared namespace that can be applied to sites are returned type GetRequest struct { // Namespace // @@ -535,53 +541,55 @@ func init() { } var fileDescriptor_b507bfa8f8b84385 = []byte{ - // 732 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0xc1, 0x4f, 0x13, 0x4f, - 0x14, 0xee, 0xb4, 0x81, 0xfc, 0x3a, 0xfc, 0x20, 0xcd, 0x46, 0x63, 0x2d, 0xb8, 0x69, 0x36, 0x1e, - 0xb0, 0xb0, 0xbb, 0xb1, 0xca, 0x85, 0x83, 0xa6, 0xc5, 0x8a, 0x84, 0x26, 0x42, 0xc1, 0x08, 0x24, - 0xa6, 0xd9, 0xdd, 0xbe, 0x2e, 0x6b, 0xb7, 0x3b, 0xcb, 0xce, 0x6e, 0xa1, 0x51, 0x13, 0xe5, 0x6e, - 0x62, 0xe2, 0x3f, 0xe1, 0x9f, 0x60, 0xc2, 0x85, 0x1b, 0x9c, 0x0c, 0x51, 0x63, 0x38, 0xc2, 0xd6, - 0x83, 0x47, 0xfe, 0x04, 0xc3, 0x6c, 0x5b, 0x5a, 0x40, 0x8a, 0x1c, 0xbc, 0xcd, 0xec, 0xf7, 0xbe, - 0xf9, 0xde, 0xf7, 0xde, 0x9b, 0x59, 0x7c, 0xbf, 0x06, 0x54, 0x32, 0x88, 0x4c, 0xb5, 0x55, 0xa8, - 0x2a, 0x72, 0xc5, 0x22, 0xeb, 0x56, 0xd1, 0x54, 0x54, 0x30, 0x8b, 0x15, 0xa8, 0xcb, 0xb6, 0xa7, - 0x9a, 0x86, 0x56, 0xd4, 0x3c, 0xea, 0x92, 0xaa, 0x62, 0x1b, 0x92, 0xed, 0x10, 0x97, 0x70, 0xb7, - 0x02, 0x96, 0x14, 0xb0, 0xa4, 0x53, 0xac, 0x84, 0xa8, 0x1b, 0xee, 0xaa, 0xa7, 0x4a, 0x1a, 0xa9, - 0xca, 0x3a, 0xd1, 0x89, 0xcc, 0x58, 0xaa, 0x57, 0x66, 0x3b, 0xb6, 0x61, 0xab, 0xe0, 0xb4, 0xc4, - 0x88, 0x4e, 0x88, 0x6e, 0x82, 0xac, 0xd8, 0x86, 0xac, 0x58, 0x16, 0x71, 0x15, 0xd7, 0x20, 0x16, - 0x6d, 0xa2, 0xc3, 0xdd, 0x19, 0x12, 0xbb, 0x13, 0x14, 0xba, 0xc1, 0x1a, 0x50, 0xb0, 0x6a, 0xdd, - 0x31, 0x42, 0x16, 0xff, 0x9f, 0x3f, 0x4e, 0x6d, 0x16, 0xea, 0x8b, 0x75, 0x1b, 0xb8, 0x18, 0x8e, - 0x54, 0xa0, 0x1e, 0x47, 0x49, 0x34, 0x1a, 0x2d, 0x1c, 0x2f, 0xb9, 0x24, 0x1e, 0x28, 0x01, 0xd5, - 0x1c, 0x83, 0xf1, 0xe2, 0x61, 0x86, 0x74, 0x7e, 0x12, 0x14, 0x3c, 0x38, 0xe5, 0x80, 0xe2, 0x42, - 0x01, 0xd6, 0x3c, 0xa0, 0x2e, 0x37, 0x82, 0xa3, 0x96, 0x52, 0x05, 0x6a, 0x2b, 0x1a, 0x34, 0x8f, - 0x3a, 0xf9, 0xd0, 0x92, 0x08, 0xff, 0x51, 0x22, 0x72, 0x56, 0x62, 0x05, 0x0f, 0xb5, 0x24, 0xa8, - 0x4d, 0x2c, 0x0a, 0xdc, 0x13, 0x1c, 0x6d, 0xd7, 0x94, 0x69, 0x0c, 0xa4, 0xc7, 0xa4, 0x0b, 0x2b, - 0x2f, 0x75, 0x1a, 0x2d, 0xfc, 0x67, 0x36, 0x77, 0xc2, 0x6b, 0x8c, 0xa7, 0xc1, 0xbd, 0x5c, 0xee, - 0x0f, 0x70, 0xdf, 0x9a, 0x07, 0x4e, 0x90, 0xfd, 0x50, 0x7a, 0xb4, 0x87, 0xe2, 0xfc, 0x71, 0x2c, - 0x93, 0x0b, 0x68, 0x2d, 0xef, 0x91, 0xb6, 0x77, 0xe1, 0x39, 0x1e, 0x60, 0xea, 0xe7, 0xdb, 0x8a, - 0x5c, 0xdd, 0xd6, 0x43, 0x3c, 0xf8, 0x08, 0x4c, 0xb8, 0x72, 0x57, 0x84, 0x18, 0x1e, 0x6a, 0x1d, - 0x10, 0x24, 0x97, 0x7a, 0x81, 0xa3, 0x6d, 0x47, 0x5c, 0x1c, 0x5f, 0x9b, 0x7f, 0x96, 0x2b, 0x2c, - 0x17, 0x33, 0xf9, 0x7c, 0x31, 0x9f, 0xc9, 0xe6, 0xf2, 0xc5, 0xd9, 0xdc, 0xf2, 0x42, 0x2c, 0xc4, - 0xdd, 0xc4, 0xd7, 0x03, 0x24, 0xb7, 0x94, 0x99, 0x5a, 0x3c, 0xc1, 0x62, 0x88, 0x1b, 0xc6, 0x37, - 0x02, 0x68, 0xae, 0x90, 0x7b, 0x3c, 0xb3, 0xd4, 0xc9, 0x0b, 0xa7, 0xbf, 0xf7, 0xe1, 0xe8, 0x14, - 0xbb, 0x4c, 0x99, 0xb9, 0x19, 0xee, 0x07, 0xc2, 0xfd, 0x41, 0xcf, 0xb9, 0xf1, 0x1e, 0x15, 0xe8, - 0x9a, 0xbe, 0x84, 0x78, 0xc9, 0xe8, 0xc0, 0x94, 0x40, 0xfc, 0x9d, 0xf8, 0x58, 0x79, 0x62, 0x43, - 0x13, 0x35, 0x62, 0x51, 0x62, 0x82, 0xa8, 0x2a, 0x14, 0x44, 0x8f, 0x82, 0x33, 0x9e, 0xac, 0x01, - 0x15, 0x0d, 0x22, 0x32, 0x32, 0x15, 0xd7, 0x1d, 0xc3, 0x85, 0xcd, 0x6f, 0x3f, 0x3f, 0x86, 0x27, - 0x85, 0x89, 0xe6, 0xf5, 0x97, 0xdb, 0x25, 0xa4, 0xf2, 0xab, 0xf6, 0xfa, 0xcd, 0x99, 0xc7, 0x42, - 0x63, 0xaa, 0x93, 0x28, 0xc5, 0x1d, 0x20, 0x1c, 0x99, 0x06, 0x97, 0xbb, 0xd3, 0x23, 0xcf, 0x93, - 0xa1, 0x4c, 0xa4, 0x2e, 0x13, 0xda, 0xf4, 0xf3, 0x0e, 0xed, 0x7e, 0x0e, 0x23, 0x7f, 0x27, 0x9e, - 0x3d, 0x6b, 0xaa, 0x4a, 0x2c, 0xc3, 0x25, 0xce, 0x78, 0x92, 0x41, 0x25, 0x28, 0x2b, 0x9e, 0xe9, - 0x8a, 0x8a, 0xa6, 0x01, 0xa5, 0xa7, 0xcd, 0x3a, 0xa0, 0x94, 0x98, 0xd7, 0xbb, 0x9c, 0xfc, 0x77, - 0x5e, 0x29, 0xeb, 0x5d, 0x30, 0x3b, 0x3d, 0x7b, 0xd7, 0x35, 0xa3, 0x3d, 0x7b, 0xd7, 0x3d, 0x90, - 0xff, 0xaa, 0x77, 0x25, 0xa6, 0x3a, 0x89, 0x52, 0x89, 0xf4, 0xf6, 0x16, 0x8a, 0x7c, 0xdd, 0x42, - 0xb7, 0x2f, 0x4e, 0xf3, 0xa9, 0xfa, 0x12, 0x34, 0x77, 0xf3, 0x4b, 0x3c, 0x1c, 0x43, 0xd9, 0xf7, - 0x68, 0xef, 0x90, 0x0f, 0xed, 0x1f, 0xf2, 0xa1, 0xa3, 0x43, 0x1e, 0xbd, 0xf5, 0x79, 0xf4, 0xc9, - 0xe7, 0xd1, 0xae, 0xcf, 0xa3, 0x3d, 0x9f, 0x47, 0x07, 0x3e, 0x8f, 0x7e, 0xf9, 0x7c, 0xe8, 0xc8, - 0xe7, 0xd1, 0x87, 0x06, 0x1f, 0xda, 0x6e, 0xf0, 0x68, 0xaf, 0xc1, 0x87, 0xf6, 0x1b, 0x7c, 0x68, - 0x65, 0x41, 0x27, 0x76, 0x45, 0x97, 0x6a, 0xc4, 0x74, 0xc1, 0x71, 0x14, 0xc9, 0xa3, 0x32, 0x5b, - 0x94, 0x89, 0x53, 0x15, 0x6d, 0x87, 0xd4, 0x8c, 0x12, 0x38, 0x62, 0x0b, 0x96, 0x6d, 0x55, 0x27, - 0x32, 0x6c, 0xb8, 0xcd, 0x07, 0xff, 0xfc, 0xdf, 0x96, 0xda, 0xcf, 0x5e, 0xfe, 0x7b, 0xbf, 0x03, - 0x00, 0x00, 0xff, 0xff, 0x94, 0x71, 0x50, 0x6b, 0xde, 0x06, 0x00, 0x00, + // 753 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x55, 0xcf, 0x4f, 0xdb, 0x48, + 0x14, 0xce, 0x24, 0x5a, 0xb4, 0x19, 0x16, 0x14, 0x59, 0xbb, 0xda, 0x6c, 0x60, 0x2d, 0x64, 0xed, + 0x81, 0xcd, 0x62, 0x5b, 0x9b, 0x5d, 0x2e, 0x1c, 0x5a, 0x05, 0x48, 0x29, 0x22, 0x52, 0x21, 0x50, + 0x15, 0x38, 0x34, 0xb2, 0x9d, 0x17, 0xe3, 0xc6, 0xf1, 0x18, 0xcf, 0x38, 0x10, 0xb5, 0x95, 0x2a, + 0x4e, 0xbd, 0x54, 0xaa, 0xd4, 0x73, 0x6f, 0x3d, 0xf4, 0x4f, 0xa8, 0xc4, 0x85, 0x5b, 0x39, 0x55, + 0xa8, 0xbd, 0x70, 0x2c, 0x4e, 0x0f, 0x3d, 0xf2, 0x07, 0xf4, 0x50, 0x65, 0x9c, 0x9f, 0x40, 0x09, + 0xe5, 0xd2, 0xdb, 0xcc, 0x7c, 0xf3, 0xbd, 0xef, 0x7d, 0xef, 0x3d, 0x7b, 0xf0, 0xff, 0x35, 0xa0, + 0x8a, 0x45, 0x54, 0x6a, 0x6c, 0x41, 0x55, 0x53, 0x2b, 0x0e, 0xd9, 0x71, 0x8a, 0xb6, 0xa6, 0x83, + 0x5d, 0xac, 0x40, 0x5d, 0x75, 0x7d, 0xdd, 0xb6, 0x8c, 0xa2, 0xe1, 0x53, 0x46, 0xaa, 0x9a, 0x6b, + 0x29, 0xae, 0x47, 0x18, 0x11, 0xfe, 0x0c, 0x59, 0x4a, 0xc8, 0x52, 0xce, 0xb0, 0x52, 0xb2, 0x69, + 0xb1, 0x2d, 0x5f, 0x57, 0x0c, 0x52, 0x55, 0x4d, 0x62, 0x12, 0x95, 0xb3, 0x74, 0xbf, 0xcc, 0x77, + 0x7c, 0xc3, 0x57, 0x61, 0xb4, 0xd4, 0xb8, 0x49, 0x88, 0x69, 0x83, 0xaa, 0xb9, 0x96, 0xaa, 0x39, + 0x0e, 0x61, 0x1a, 0xb3, 0x88, 0x43, 0x5b, 0xe8, 0x58, 0x7f, 0x86, 0xc4, 0xed, 0x05, 0xa5, 0x7e, + 0xb0, 0x06, 0x14, 0x9c, 0x5a, 0xff, 0x1d, 0x69, 0x16, 0xff, 0x92, 0x6f, 0xa6, 0xb6, 0x04, 0xf5, + 0xb5, 0xba, 0x0b, 0x42, 0x02, 0xc7, 0x2a, 0x50, 0x4f, 0xa2, 0x09, 0x34, 0x19, 0x2f, 0x34, 0x97, + 0xc2, 0x04, 0x1e, 0x2e, 0x01, 0x35, 0x3c, 0x8b, 0xf3, 0x92, 0x51, 0x8e, 0xf4, 0x1e, 0x49, 0x1a, + 0x1e, 0x99, 0xf3, 0x40, 0x63, 0x50, 0x80, 0x6d, 0x1f, 0x28, 0x13, 0xc6, 0x71, 0xdc, 0xd1, 0xaa, + 0x40, 0x5d, 0xcd, 0x80, 0x56, 0xa8, 0xee, 0x41, 0x5b, 0x22, 0xfa, 0x4d, 0x89, 0xd8, 0x79, 0x89, + 0x4d, 0x3c, 0xda, 0x96, 0xa0, 0x2e, 0x71, 0x28, 0x08, 0xb7, 0x71, 0xbc, 0x53, 0x53, 0xae, 0x31, + 0x9c, 0xf9, 0x47, 0xb9, 0xb4, 0xf2, 0x4a, 0xaf, 0xd1, 0xc2, 0xcf, 0x76, 0x6b, 0x27, 0x3d, 0xc2, + 0x78, 0x01, 0xd8, 0xd5, 0x72, 0xbf, 0x81, 0x7f, 0xda, 0xf6, 0xc1, 0x0b, 0xb3, 0x1f, 0xcd, 0x4c, + 0x0e, 0x50, 0x5c, 0x69, 0xde, 0xe5, 0x72, 0x21, 0xad, 0xed, 0x3d, 0xd6, 0xf1, 0x2e, 0xdd, 0xc3, + 0xc3, 0x5c, 0xfd, 0x62, 0x5b, 0xb1, 0xeb, 0xdb, 0xba, 0x89, 0x47, 0xe6, 0xc1, 0x86, 0x6b, 0x77, + 0x45, 0x4a, 0xe0, 0xd1, 0x76, 0x80, 0x30, 0xb9, 0xf4, 0x2e, 0x8e, 0x77, 0x1c, 0x09, 0x49, 0xfc, + 0xeb, 0xca, 0xdd, 0x5c, 0x61, 0xa3, 0x98, 0xcd, 0xe7, 0x8b, 0xf9, 0xec, 0x6c, 0x2e, 0x5f, 0x5c, + 0xca, 0x6d, 0xac, 0x26, 0x22, 0xc2, 0x1f, 0xf8, 0xb7, 0x10, 0xc9, 0xad, 0x67, 0xe7, 0xd6, 0xba, + 0x58, 0x02, 0x09, 0x63, 0xf8, 0xf7, 0x10, 0x5a, 0x2e, 0xe4, 0x6e, 0x2d, 0xae, 0xf7, 0xf2, 0xa2, + 0x5d, 0xde, 0xea, 0xe2, 0x5a, 0xae, 0x17, 0x8a, 0x65, 0x5e, 0x0d, 0xe1, 0xf8, 0x1c, 0xff, 0xce, + 0xb2, 0xcb, 0x8b, 0xc2, 0x29, 0xc2, 0x43, 0xe1, 0x38, 0x08, 0x53, 0x03, 0x8a, 0xd3, 0x37, 0x98, + 0x29, 0xf9, 0x8a, 0xb7, 0x43, 0xbf, 0xd2, 0x53, 0x14, 0xbc, 0x4d, 0xce, 0x97, 0xa7, 0x77, 0x0d, + 0xd9, 0x20, 0x0e, 0x25, 0x36, 0xc8, 0xba, 0x46, 0x41, 0xf6, 0x29, 0x78, 0x53, 0x13, 0x67, 0xcf, + 0x2d, 0xa3, 0x05, 0xd4, 0x80, 0xca, 0x16, 0x91, 0x79, 0x58, 0x2a, 0xef, 0x78, 0x16, 0x83, 0xbd, + 0x0f, 0x9f, 0x5e, 0x44, 0x67, 0xa4, 0xe9, 0xd6, 0x3f, 0x43, 0xed, 0xd4, 0x9d, 0xaa, 0x0f, 0x3b, + 0xeb, 0xc7, 0xe7, 0xfe, 0x30, 0x06, 0xcf, 0x67, 0x06, 0xa5, 0x85, 0x2f, 0x08, 0xc7, 0x16, 0x80, + 0x09, 0x7f, 0x0f, 0x70, 0xd0, 0x9d, 0xe4, 0x54, 0xfa, 0x2a, 0x57, 0x5b, 0x4e, 0x5f, 0xa2, 0xc3, + 0x37, 0xd1, 0xa6, 0xdb, 0xfb, 0xe7, 0xdd, 0x56, 0x89, 0x63, 0x31, 0x72, 0xb1, 0xe1, 0x7e, 0xac, + 0x04, 0x65, 0xcd, 0xb7, 0x99, 0xac, 0x19, 0x06, 0x50, 0x7a, 0xb6, 0x10, 0x1e, 0x68, 0x25, 0x5e, + 0x87, 0x7f, 0x05, 0xf5, 0xfb, 0xea, 0x40, 0x79, 0xc7, 0xc3, 0x61, 0x1c, 0xd8, 0xf1, 0xbe, 0xa1, + 0x1f, 0xd8, 0xf1, 0xfe, 0x09, 0xff, 0xf1, 0x1d, 0x2f, 0xf1, 0x7c, 0x66, 0x50, 0x3a, 0x95, 0x39, + 0xd8, 0x47, 0xb1, 0xf7, 0xfb, 0xe8, 0xaf, 0xcb, 0x0d, 0xdc, 0xd1, 0x1f, 0x80, 0xc1, 0xf6, 0xde, + 0x25, 0xa3, 0x09, 0x34, 0xfb, 0x0c, 0x1d, 0x9d, 0x88, 0x91, 0xe3, 0x13, 0x31, 0x72, 0x7a, 0x22, + 0xa2, 0x27, 0x81, 0x88, 0x5e, 0x07, 0x22, 0x3a, 0x0c, 0x44, 0x74, 0x14, 0x88, 0xe8, 0x63, 0x20, + 0xa2, 0xcf, 0x81, 0x18, 0x39, 0x0d, 0x44, 0xf4, 0xbc, 0x21, 0x46, 0x0e, 0x1a, 0x22, 0x3a, 0x6a, + 0x88, 0x91, 0xe3, 0x86, 0x18, 0xd9, 0x5c, 0x35, 0x89, 0x5b, 0x31, 0x95, 0x1a, 0xb1, 0x19, 0x78, + 0x9e, 0xa6, 0xf8, 0x54, 0xe5, 0x8b, 0x32, 0xf1, 0xaa, 0xb2, 0xeb, 0x91, 0x9a, 0x55, 0x02, 0x4f, + 0x6e, 0xc3, 0xaa, 0xab, 0x9b, 0x44, 0x85, 0x5d, 0xd6, 0x7a, 0x5b, 0x2e, 0x7e, 0x21, 0xf5, 0x21, + 0xfe, 0xc8, 0xfc, 0xf7, 0x35, 0x00, 0x00, 0xff, 0xff, 0x43, 0xea, 0x4f, 0xce, 0x49, 0x07, 0x00, + 0x00, } func (x QueryType) String() string { diff --git a/pbgo/extschema/schema/known_label_key/public_customapi.vesapi.go b/pbgo/extschema/schema/known_label_key/public_customapi.vesapi.go index c8f674b0b..682dee200 100644 --- a/pbgo/extschema/schema/known_label_key/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/known_label_key/public_customapi.vesapi.go @@ -867,17 +867,18 @@ var CustomAPISwaggerJSON string = `{ }, { "name": "query", - "description": "Query Type\n\nGeneric Get of all available labels for a given tenant\nGet exact match of label.key = label.value Or label.key(label.value)\nGet prefix match of label.key", + "description": "Query Type\n\nGeneric Get of all available labels for a given tenant\nGet exact match of label.key = label.value Or label.key(label.value)\nGet prefix match of label.key\nGet all available known label keys that can be applied to sites", "in": "query", "required": false, "type": "string", "enum": [ "QUERY_ALL_LABEL_KEYS", "QUERY_EXACT_LABEL_KEY", - "QUERY_PREFIX_LABEL_KEYS" + "QUERY_PREFIX_LABEL_KEYS", + "QUERY_SITE_LABEL_KEYS" ], "default": "QUERY_ALL_LABEL_KEYS", - "x-displayname": "Label Key Prefix" + "x-displayname": "Site Label Keys" }, { "name": "key", @@ -1021,12 +1022,13 @@ var CustomAPISwaggerJSON string = `{ }, "known_label_keyQueryType": { "type": "string", - "description": "x-displayName: \"Query Type\"\nType of label key query\n\n - QUERY_ALL_LABEL_KEYS: x-displayName: \"All Labels\"\nGeneric Get of all available labels for a given tenant\n - QUERY_EXACT_LABEL_KEY: x-displayName: \"Exact Label Key\"\nGet exact match of label.key = label.value Or label.key(label.value)\n - QUERY_PREFIX_LABEL_KEYS: x-displayName: \"Label Key Prefix\"\nGet prefix match of label.key", + "description": "x-displayName: \"Query Type\"\nType of label key query\n\n - QUERY_ALL_LABEL_KEYS: x-displayName: \"All Labels\"\nGeneric Get of all available labels for a given tenant\n - QUERY_EXACT_LABEL_KEY: x-displayName: \"Exact Label Key\"\nGet exact match of label.key = label.value Or label.key(label.value)\n - QUERY_PREFIX_LABEL_KEYS: x-displayName: \"Label Key Prefix\"\nGet prefix match of label.key\n - QUERY_SITE_LABEL_KEYS: x-displayName: \"Site Label Keys\"\nGet all available known label keys that can be applied to sites", "title": "QueryType", "enum": [ "QUERY_ALL_LABEL_KEYS", "QUERY_EXACT_LABEL_KEY", - "QUERY_PREFIX_LABEL_KEYS" + "QUERY_PREFIX_LABEL_KEYS", + "QUERY_SITE_LABEL_KEYS" ], "default": "QUERY_ALL_LABEL_KEYS" } diff --git a/pbgo/extschema/schema/l7_acl/crudapi/api.vesapi.go b/pbgo/extschema/schema/l7_acl/crudapi/api.vesapi.go index a7d28f226..960344b64 100644 --- a/pbgo/extschema/schema/l7_acl/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/l7_acl/crudapi/api.vesapi.go @@ -3526,10 +3526,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/log/public_customapi.pb.go b/pbgo/extschema/schema/log/public_customapi.pb.go index c78455bca..a1b65211f 100644 --- a/pbgo/extschema/schema/log/public_customapi.pb.go +++ b/pbgo/extschema/schema/log/public_customapi.pb.go @@ -2620,137 +2620,137 @@ func init() { } var fileDescriptor_bb43ed5d81aff514 = []byte{ - // 2080 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x9b, 0x5d, 0x6f, 0xdb, 0xd6, - 0x19, 0xc7, 0x7d, 0x44, 0xd9, 0xb1, 0x4e, 0x80, 0xd6, 0x61, 0x52, 0x97, 0x91, 0x13, 0xc2, 0x60, - 0x9b, 0x4e, 0xce, 0x4c, 0x32, 0xb1, 0x9b, 0xce, 0x71, 0xb6, 0x15, 0x76, 0xe3, 0xbc, 0xa7, 0xd9, - 0x94, 0x21, 0xc3, 0x1a, 0xb4, 0x06, 0x25, 0x1d, 0x33, 0xac, 0x29, 0x1d, 0x85, 0xe7, 0x48, 0x8b, - 0x5b, 0x14, 0x68, 0x8b, 0x7d, 0x80, 0x01, 0xbb, 0xd9, 0x5d, 0x87, 0x0d, 0x1b, 0x0a, 0x6c, 0xc3, - 0x86, 0x6e, 0x28, 0xba, 0x75, 0x05, 0x32, 0xec, 0xc2, 0x1d, 0x06, 0x0c, 0x41, 0x8b, 0x01, 0x19, - 0x56, 0x60, 0xb5, 0xbc, 0x0d, 0x6b, 0xae, 0x72, 0x37, 0x0c, 0xbb, 0x19, 0x78, 0x48, 0x49, 0xa4, - 0x48, 0x89, 0xa4, 0xfc, 0x8a, 0xfa, 0xc6, 0xa0, 0xc4, 0xf3, 0xf2, 0x3c, 0xff, 0xe7, 0xf9, 0x9d, - 0x57, 0x0b, 0xe6, 0xea, 0x88, 0x28, 0x06, 0x56, 0x49, 0xf1, 0x16, 0x2a, 0x6b, 0xaa, 0x89, 0x75, - 0xb5, 0x5a, 0x2b, 0x98, 0x46, 0x71, 0xb1, 0x58, 0x23, 0x14, 0x97, 0xb5, 0xaa, 0xa1, 0x54, 0x2d, - 0x4c, 0x31, 0x7f, 0xc0, 0x29, 0xa9, 0x38, 0x25, 0x15, 0x13, 0xeb, 0x59, 0x59, 0x37, 0xe8, 0xad, - 0x5a, 0x41, 0x29, 0xe2, 0xb2, 0xaa, 0x63, 0x1d, 0xab, 0xac, 0x64, 0xa1, 0xb6, 0xc4, 0x3e, 0xb1, - 0x0f, 0xec, 0xc9, 0x69, 0x21, 0x7b, 0x44, 0xc7, 0x58, 0x37, 0x91, 0xaa, 0x55, 0x0d, 0x55, 0xab, - 0x54, 0x30, 0xd5, 0xa8, 0x81, 0x2b, 0xc4, 0x7d, 0x1b, 0x62, 0x89, 0x56, 0x2c, 0x22, 0x42, 0x16, - 0xed, 0x47, 0xba, 0x52, 0x45, 0xcd, 0x92, 0x5f, 0x08, 0x29, 0x59, 0x2b, 0x19, 0x34, 0x50, 0xf0, - 0x78, 0xb0, 0xe0, 0x92, 0x61, 0xa1, 0x6f, 0x6b, 0xa6, 0x19, 0x28, 0xfb, 0xc5, 0x60, 0xd9, 0xe5, - 0x19, 0xb2, 0x18, 0xde, 0x70, 0x2e, 0xbc, 0x30, 0xaa, 0xa3, 0x0a, 0x25, 0xbe, 0x92, 0x47, 0x83, - 0x25, 0xbd, 0xaf, 0x27, 0x83, 0xaf, 0xeb, 0xdd, 0xbb, 0x9d, 0xe8, 0x52, 0x3a, 0xa4, 0xdf, 0x31, - 0x7f, 0x51, 0x5c, 0xf5, 0x4a, 0x7d, 0xd8, 0xff, 0xd2, 0x5b, 0xef, 0x88, 0xff, 0x55, 0x5d, 0x33, - 0x8d, 0x92, 0x46, 0x91, 0xfb, 0x56, 0xea, 0x78, 0x8b, 0x08, 0xaa, 0xd4, 0xfd, 0x8d, 0x4b, 0x3f, - 0xe1, 0x20, 0x3f, 0xc7, 0x02, 0x77, 0x05, 0xeb, 0x79, 0x74, 0xbb, 0x86, 0x08, 0xbd, 0x31, 0xc5, - 0x1f, 0x81, 0x99, 0x8a, 0x56, 0x46, 0xa4, 0xaa, 0x15, 0x91, 0x00, 0xc6, 0x41, 0x2e, 0x93, 0x6f, - 0x7f, 0xc1, 0x1f, 0x82, 0x83, 0xb7, 0x6b, 0xc8, 0x5a, 0x11, 0x52, 0xec, 0x8d, 0xf3, 0x81, 0x9f, - 0x80, 0x90, 0x50, 0xcd, 0xa2, 0x8b, 0xd4, 0x28, 0x23, 0x81, 0xb3, 0x5f, 0xcd, 0xc3, 0xdf, 0x7e, - 0x76, 0x97, 0x1b, 0xb4, 0xb8, 0xef, 0xa7, 0x41, 0x3e, 0xc3, 0xde, 0x7e, 0xc3, 0x28, 0x23, 0xfe, - 0x18, 0x1c, 0x46, 0x95, 0x92, 0x53, 0x30, 0x1d, 0x28, 0xb8, 0x0f, 0x55, 0x4a, 0xac, 0xd8, 0x24, - 0x4c, 0x13, 0x6c, 0x51, 0x61, 0x70, 0x1c, 0xe4, 0x1e, 0x99, 0x12, 0x14, 0x7f, 0x4e, 0x5f, 0xc7, - 0x16, 0xbd, 0x66, 0x95, 0x90, 0x95, 0x67, 0xa5, 0x6c, 0xab, 0x4c, 0xa3, 0x6c, 0x50, 0x61, 0x68, - 0x1c, 0xe4, 0x06, 0xf3, 0xce, 0x07, 0x7e, 0x14, 0x0e, 0x91, 0xa2, 0x85, 0x4d, 0x53, 0xd8, 0x37, - 0x0e, 0x72, 0xc3, 0x79, 0xf7, 0x13, 0xff, 0x1c, 0x4c, 0x6b, 0xba, 0x4e, 0x84, 0xcc, 0x38, 0x97, - 0xdb, 0x3f, 0xa5, 0x2a, 0x01, 0x5e, 0x94, 0xa0, 0x2c, 0xca, 0x9c, 0xae, 0x93, 0x85, 0x0a, 0xb5, - 0x56, 0xf2, 0xac, 0x72, 0xd6, 0x80, 0x99, 0xd6, 0x57, 0xfc, 0x08, 0xe4, 0x96, 0xd1, 0x8a, 0xab, - 0x96, 0xfd, 0xc8, 0x9f, 0x83, 0x83, 0x75, 0xcd, 0xac, 0x21, 0xa6, 0xd3, 0xfe, 0xa9, 0x13, 0x21, - 0x9d, 0xb4, 0xa1, 0xb1, 0x1b, 0xb7, 0x90, 0xce, 0x28, 0x73, 0x7b, 0xcc, 0x3b, 0xd5, 0x67, 0x53, - 0x33, 0x40, 0xfa, 0x24, 0x05, 0xc7, 0x5a, 0x16, 0x05, 0x8b, 0xee, 0x92, 0x88, 0x5d, 0x71, 0x55, - 0x1d, 0x62, 0xaa, 0xce, 0xf4, 0x52, 0x35, 0xe8, 0xc3, 0x4e, 0xca, 0xfb, 0x23, 0x0e, 0x1e, 0x98, - 0xb3, 0x31, 0xde, 0x63, 0x18, 0xcc, 0xfb, 0x30, 0x50, 0xc2, 0x02, 0xd6, 0xa9, 0x4a, 0x20, 0x4c, - 0xb7, 0x7a, 0x87, 0x69, 0xc1, 0x1f, 0xa6, 0x30, 0xd4, 0x5a, 0x03, 0x68, 0x44, 0x94, 0xfe, 0x9a, - 0x82, 0xd9, 0xa6, 0x3d, 0xbb, 0x96, 0x81, 0xcb, 0x3e, 0x49, 0xbf, 0xd4, 0x43, 0xd2, 0x18, 0x08, - 0x6c, 0x9f, 0xb6, 0x3f, 0xe3, 0xe0, 0xc1, 0x1b, 0x97, 0x67, 0xae, 0x77, 0xc4, 0x7b, 0x0f, 0x30, - 0x70, 0xd6, 0x0d, 0xd8, 0x30, 0x0b, 0x58, 0xd8, 0x30, 0x12, 0xa2, 0x4b, 0x20, 0x52, 0xe5, 0xde, - 0x91, 0xba, 0xe4, 0x8f, 0xd4, 0xd3, 0x21, 0xbd, 0xf8, 0xd7, 0x12, 0x11, 0xe1, 0xfa, 0x57, 0x0a, - 0x8a, 0x5e, 0xb3, 0x76, 0x2d, 0x0e, 0xd7, 0x5c, 0x75, 0x07, 0x99, 0xba, 0x67, 0x22, 0xd4, 0x8d, - 0x81, 0xc4, 0x36, 0x0b, 0xfd, 0x01, 0x07, 0xf9, 0xc4, 0x58, 0xf0, 0x30, 0x4d, 0x0c, 0x8a, 0x5c, - 0x6d, 0xd9, 0x73, 0x5b, 0x70, 0xae, 0xbb, 0xe0, 0xe9, 0xb8, 0x82, 0x0f, 0x46, 0xa3, 0x32, 0x94, - 0x0c, 0x95, 0x7d, 0xe1, 0xa8, 0x0c, 0x27, 0x5c, 0x35, 0xc5, 0x20, 0xc5, 0xec, 0x1d, 0xc0, 0x8b, - 0xfe, 0x00, 0x4e, 0x87, 0x74, 0x92, 0x24, 0x7e, 0xff, 0x49, 0xc1, 0xa3, 0x1b, 0xe1, 0x64, 0x27, - 0x43, 0xf9, 0xbc, 0x6f, 0x39, 0x35, 0xdb, 0x5b, 0xee, 0x18, 0xe8, 0x6c, 0xaf, 0xf2, 0x3f, 0xe6, - 0xe0, 0x01, 0x9b, 0xed, 0x05, 0xb6, 0xe1, 0xd9, 0x3b, 0xf3, 0xc9, 0xbc, 0x6f, 0x3e, 0x51, 0xba, - 0x8c, 0x78, 0x3e, 0x55, 0x02, 0x91, 0x7a, 0xb9, 0x77, 0xa4, 0xce, 0xfb, 0x23, 0x75, 0xb2, 0xdb, - 0x20, 0xe7, 0xec, 0x35, 0x23, 0xe2, 0xf4, 0xf7, 0x14, 0x3c, 0xd2, 0xb6, 0x68, 0xd7, 0x4e, 0x24, - 0x57, 0x7d, 0x13, 0xc9, 0xe9, 0x9e, 0xb2, 0xc6, 0x60, 0x61, 0x3b, 0x15, 0x7e, 0x97, 0x83, 0x23, - 0x09, 0x41, 0xf8, 0xbc, 0xce, 0x20, 0x73, 0xbe, 0x19, 0x44, 0x0e, 0x1f, 0xd2, 0x7a, 0xb3, 0xb1, - 0xf1, 0x6d, 0x61, 0xec, 0xc0, 0x3d, 0x4c, 0xc1, 0xb1, 0xfe, 0xc9, 0xd8, 0xc9, 0x18, 0x46, 0xef, - 0xc4, 0x93, 0xc0, 0xb2, 0x8d, 0x92, 0xbf, 0xcd, 0x41, 0xfe, 0x9c, 0x7b, 0xee, 0xb7, 0xa7, 0xb6, - 0x21, 0xd1, 0x6b, 0xab, 0xa0, 0x2c, 0x81, 0x40, 0x2d, 0xf7, 0x0e, 0xd4, 0x05, 0x7f, 0xa0, 0xa6, - 0x42, 0x3a, 0xf1, 0x9e, 0xb9, 0x46, 0x84, 0xaa, 0x91, 0x82, 0x47, 0x3d, 0x36, 0xed, 0xda, 0x99, - 0x23, 0x7a, 0x19, 0xd5, 0xd3, 0x8b, 0x9d, 0x15, 0xf9, 0x2a, 0x1c, 0xb9, 0x82, 0xf5, 0xeb, 0x2c, - 0x47, 0xe2, 0xc9, 0x3a, 0x06, 0x33, 0x4e, 0x4a, 0x2d, 0x1a, 0x25, 0x57, 0xda, 0x61, 0xe7, 0x8b, - 0x8b, 0x25, 0xe9, 0x7f, 0x00, 0xee, 0x67, 0xf9, 0x43, 0xaa, 0xb8, 0x42, 0xd8, 0x18, 0x65, 0x62, - 0x9d, 0x08, 0x60, 0x9c, 0xb3, 0xc7, 0x28, 0xfb, 0x99, 0x3f, 0x0a, 0x21, 0xc5, 0x54, 0x33, 0x17, - 0x6f, 0x19, 0x94, 0xb0, 0x08, 0xa4, 0xf3, 0x19, 0xf6, 0xcd, 0x05, 0x83, 0x12, 0xfe, 0xcb, 0xbe, - 0x89, 0x38, 0x17, 0xe2, 0x9e, 0xa7, 0x83, 0x4e, 0xf1, 0x7a, 0x5a, 0x97, 0x7d, 0xa9, 0xb7, 0xb2, - 0x67, 0xfc, 0xca, 0x1e, 0x0b, 0xef, 0xda, 0xa3, 0xe7, 0x59, 0x8d, 0x6a, 0x5e, 0x31, 0x3f, 0x05, - 0x70, 0xb4, 0x33, 0xc6, 0xae, 0x10, 0x7e, 0xa7, 0x41, 0xa7, 0xd3, 0xe7, 0x5d, 0xa7, 0x39, 0xe6, - 0xf4, 0x74, 0x64, 0xcf, 0xdd, 0xfc, 0xdf, 0x6a, 0x17, 0xa7, 0xde, 0x52, 0x61, 0xe6, 0x39, 0x76, - 0x1b, 0x34, 0xf7, 0xb5, 0x8b, 0xfc, 0x3b, 0x00, 0x8e, 0xb4, 0x8e, 0x5c, 0xbf, 0x6e, 0xf3, 0x75, - 0x63, 0x8a, 0x3f, 0x16, 0xeb, 0xb4, 0x3b, 0x2b, 0xf6, 0x8e, 0xac, 0xf4, 0xcd, 0x0f, 0xdf, 0x4b, - 0x81, 0xc6, 0xaa, 0x90, 0xad, 0x23, 0x22, 0x1b, 0x58, 0x36, 0x2a, 0x4b, 0x96, 0x46, 0xa8, 0x55, - 0x2b, 0xd2, 0x9a, 0x85, 0x64, 0x0b, 0x69, 0xa5, 0x37, 0x3f, 0xfe, 0xc7, 0xf7, 0x52, 0xaa, 0x74, - 0xdc, 0xbd, 0xa6, 0x52, 0x5b, 0x49, 0x4a, 0xd4, 0x57, 0x5b, 0xcf, 0xaf, 0x79, 0xae, 0x8e, 0xc8, - 0x2c, 0x38, 0xce, 0xbf, 0xc5, 0xc1, 0x43, 0x2d, 0x7b, 0x9c, 0xcc, 0x67, 0xa6, 0xf3, 0x4f, 0x84, - 0x5b, 0xe4, 0x83, 0x23, 0xd2, 0xec, 0xdf, 0xa7, 0x5c, 0xbb, 0x0f, 0xba, 0x76, 0xeb, 0xa8, 0x82, - 0x2c, 0xcd, 0x64, 0x06, 0x3f, 0x58, 0x15, 0x7e, 0x09, 0xe0, 0xe3, 0x4b, 0xa7, 0xee, 0x14, 0x65, - 0xc7, 0x2a, 0xd9, 0xb6, 0x4a, 0x76, 0xc7, 0xe8, 0x8b, 0x90, 0xd3, 0x11, 0xe5, 0xe7, 0x43, 0xfc, - 0xc9, 0xdd, 0xd4, 0xe4, 0x57, 0x5e, 0xcc, 0xdd, 0x94, 0x35, 0xf9, 0x95, 0x13, 0xf2, 0xe9, 0x17, - 0x8f, 0xdf, 0x74, 0x1f, 0x26, 0x9e, 0x9d, 0xf0, 0x3a, 0xa8, 0xba, 0x4d, 0x5d, 0x82, 0xe9, 0x2a, - 0x26, 0x9b, 0xd2, 0x16, 0x53, 0x79, 0x99, 0x3f, 0x19, 0x5f, 0x65, 0xb7, 0xe2, 0x0b, 0xcf, 0x48, - 0xc9, 0x2b, 0xd9, 0x11, 0xfa, 0x1b, 0x80, 0x87, 0xc3, 0x4e, 0xf2, 0x9d, 0x30, 0x29, 0xc9, 0xce, - 0xfd, 0xb3, 0x13, 0xb1, 0x69, 0x92, 0x8a, 0x31, 0x73, 0xee, 0x8c, 0xf4, 0x4c, 0x02, 0xc7, 0xb4, - 0x76, 0x4f, 0xb6, 0x77, 0xbf, 0x00, 0xf0, 0xd1, 0xe6, 0xae, 0xba, 0xc9, 0xcc, 0x93, 0x71, 0x8e, - 0xc6, 0x23, 0x73, 0xef, 0x46, 0x4c, 0xf3, 0x15, 0x69, 0x22, 0xca, 0xfc, 0xe6, 0x26, 0x9c, 0x11, - 0xf3, 0x03, 0x0e, 0x1e, 0x6c, 0x5a, 0xb3, 0xe9, 0xc0, 0xfc, 0x21, 0x15, 0x6d, 0xf5, 0x83, 0x55, - 0xe1, 0xe7, 0x00, 0x8e, 0x3a, 0xdc, 0xd8, 0x86, 0xf8, 0xb0, 0xb9, 0xe0, 0x60, 0x33, 0x97, 0x38, - 0xd5, 0x5b, 0x4e, 0xaa, 0x2d, 0x00, 0x1d, 0x6a, 0x36, 0xde, 0x14, 0xd3, 0xd9, 0xe0, 0x4f, 0xc4, - 0xd6, 0xb9, 0xc9, 0xcc, 0x29, 0x29, 0x71, 0x1d, 0x3b, 0x44, 0xf7, 0x01, 0x14, 0x42, 0x8e, 0x6a, - 0x9c, 0x38, 0xc9, 0x89, 0x6e, 0x09, 0x92, 0x00, 0x53, 0x88, 0x99, 0x71, 0xb3, 0xd2, 0xa9, 0xf8, - 0x5e, 0x75, 0xf0, 0xf2, 0x1e, 0x70, 0x0e, 0x7a, 0x7c, 0xcc, 0xf0, 0x4f, 0xc5, 0x3b, 0x48, 0x8f, - 0x4c, 0xbf, 0x9b, 0x31, 0x3d, 0x98, 0x96, 0x94, 0x08, 0x0f, 0xfc, 0xe7, 0xbe, 0x0c, 0x9c, 0x0f, - 0x38, 0xf8, 0xb8, 0xd7, 0xa8, 0x4d, 0x87, 0xe7, 0x93, 0x78, 0xf0, 0xfc, 0x0e, 0xc0, 0x31, 0x06, - 0x8f, 0x6d, 0x63, 0x08, 0x41, 0x57, 0x1d, 0x82, 0xce, 0x25, 0x4d, 0xfb, 0x0e, 0x97, 0x9b, 0x18, - 0x3d, 0xef, 0x62, 0xb4, 0x49, 0xed, 0x31, 0xfd, 0x09, 0x7f, 0x2a, 0x99, 0xfe, 0x4d, 0xa0, 0xa2, - 0x53, 0x2f, 0xbc, 0xa2, 0x1d, 0xbf, 0x7f, 0x02, 0xe7, 0xec, 0xaa, 0x2b, 0x59, 0x27, 0x13, 0x5f, - 0x38, 0x24, 0xa1, 0x4b, 0x8f, 0x99, 0x9b, 0xcf, 0x4a, 0xb3, 0x09, 0x5d, 0xec, 0x40, 0xec, 0x63, - 0xc0, 0x4e, 0x90, 0xfc, 0x84, 0x1d, 0x8b, 0x75, 0xfe, 0x1e, 0x99, 0xa2, 0x77, 0x5c, 0x27, 0x26, - 0x9d, 0xd1, 0xbb, 0x5a, 0x25, 0x54, 0x2b, 0x2e, 0xcb, 0x05, 0x8d, 0x18, 0x45, 0xb9, 0x8c, 0x2b, - 0x06, 0xc5, 0xd6, 0xe4, 0xb8, 0xeb, 0xa1, 0x9d, 0x9e, 0x2d, 0xb7, 0xbe, 0x2a, 0x9d, 0x8e, 0x70, - 0x8b, 0x18, 0x14, 0xa9, 0xaf, 0xda, 0x7f, 0x5f, 0x53, 0x83, 0xf4, 0xfd, 0x91, 0x83, 0xa3, 0x5b, - 0x09, 0xdf, 0x67, 0xa9, 0x7e, 0x5c, 0x7b, 0xb0, 0x2a, 0xfc, 0x06, 0xc0, 0x2c, 0xab, 0x12, 0x4e, - 0xe3, 0x15, 0x87, 0xc6, 0x85, 0xa4, 0xf4, 0x84, 0xc3, 0x78, 0xd5, 0x85, 0x71, 0x73, 0x9a, 0x63, - 0x81, 0xb9, 0xcd, 0x3f, 0x1d, 0x11, 0x98, 0x70, 0x14, 0x4f, 0x4b, 0x7d, 0xd5, 0xb3, 0x63, 0xf9, - 0x86, 0x73, 0x54, 0xd6, 0x15, 0xc4, 0x13, 0x49, 0x6f, 0x2f, 0x92, 0x70, 0xf8, 0x1d, 0xd0, 0x77, - 0x0e, 0x5f, 0x92, 0x16, 0xfa, 0xce, 0xe1, 0x4e, 0x4a, 0x7f, 0x0a, 0xe0, 0xa3, 0xed, 0x43, 0x68, - 0xc7, 0xef, 0x27, 0xe3, 0x9c, 0xff, 0x47, 0x66, 0x72, 0xde, 0xf5, 0xef, 0xb1, 0xe6, 0x40, 0xa3, - 0x69, 0x44, 0x2e, 0xda, 0x7f, 0x12, 0x6c, 0xb3, 0x3c, 0x07, 0xd6, 0xb6, 0xb5, 0x3f, 0xe4, 0xe0, - 0x63, 0x6d, 0x4b, 0xb6, 0x6e, 0xd9, 0x18, 0x6e, 0xb3, 0x77, 0xa7, 0xc5, 0x26, 0x3d, 0xc7, 0xb0, - 0x8d, 0xee, 0xb4, 0xbc, 0xff, 0x62, 0xb7, 0xd1, 0x9d, 0x56, 0xb0, 0xad, 0x98, 0x3b, 0xad, 0x60, - 0xc5, 0x18, 0x3b, 0xad, 0x60, 0x25, 0x77, 0xd9, 0x98, 0x0d, 0xbd, 0xd7, 0x70, 0x22, 0xa5, 0x26, - 0xbc, 0x06, 0x49, 0x02, 0xd5, 0x4b, 0xd1, 0x39, 0x17, 0xbd, 0xcd, 0xf2, 0x7a, 0xd5, 0x41, 0xcb, - 0x9f, 0x00, 0x7c, 0xa4, 0x03, 0x96, 0x27, 0x62, 0xdc, 0x07, 0x44, 0x26, 0x1e, 0xed, 0x7b, 0x2c, - 0x88, 0x5e, 0x89, 0x74, 0x8e, 0x05, 0x6d, 0x9a, 0x7e, 0xc5, 0xc1, 0x43, 0x5b, 0x07, 0xd3, 0x5f, - 0xfa, 0x9d, 0xc9, 0x5a, 0xbb, 0xb2, 0x20, 0x62, 0xfd, 0xee, 0xca, 0x82, 0x84, 0xf5, 0xbd, 0x2b, - 0x0b, 0x07, 0x2c, 0x7a, 0x57, 0x16, 0xe4, 0x2b, 0x7a, 0x57, 0x16, 0x8a, 0xd7, 0x7f, 0x01, 0x3c, - 0xdc, 0x9d, 0x2e, 0x25, 0xd9, 0xb5, 0x49, 0x12, 0xb8, 0x5e, 0xef, 0x7f, 0xc6, 0x3a, 0x27, 0xcd, - 0xf5, 0x95, 0xa5, 0x9d, 0xfc, 0xfd, 0x1a, 0xc0, 0x11, 0xcf, 0xc1, 0x77, 0xf7, 0x35, 0x65, 0xf0, - 0xde, 0x21, 0x32, 0x5f, 0xbf, 0x15, 0x73, 0x61, 0x7c, 0x52, 0x9a, 0x8c, 0xf0, 0xc5, 0x7b, 0x54, - 0xce, 0x40, 0x7b, 0x87, 0x83, 0xa3, 0x1e, 0x8b, 0x36, 0x1d, 0xb5, 0x8f, 0xe2, 0xed, 0xd8, 0xde, - 0x05, 0xf0, 0x30, 0x0b, 0x5d, 0xd3, 0x40, 0xdf, 0x0a, 0xf1, 0xb2, 0xc3, 0xd6, 0xd9, 0xa4, 0x40, - 0xf8, 0xbc, 0x55, 0x5b, 0xcb, 0x4d, 0x07, 0xaf, 0x4d, 0x69, 0x8d, 0xc9, 0x8e, 0xf9, 0xe9, 0x24, - 0xb2, 0x37, 0x21, 0x9b, 0x91, 0xfa, 0xa9, 0x66, 0x07, 0x6d, 0x0d, 0xc0, 0xb1, 0xf0, 0x4b, 0x96, - 0xee, 0xab, 0xc3, 0x9e, 0x97, 0x32, 0x49, 0x58, 0x43, 0x31, 0x93, 0xf1, 0x2b, 0xd2, 0x4c, 0x22, - 0xf7, 0xfc, 0x3c, 0x65, 0x9f, 0xba, 0xfb, 0x3e, 0xe0, 0x3e, 0x7a, 0x1f, 0x08, 0x41, 0xc3, 0xae, - 0x15, 0x5e, 0x46, 0x45, 0xfa, 0xe6, 0x9f, 0x85, 0x94, 0x00, 0xe6, 0xdf, 0x00, 0xf7, 0xd6, 0xc4, - 0x81, 0xfb, 0x6b, 0xe2, 0xc0, 0xc3, 0x35, 0x11, 0xbc, 0xde, 0x10, 0xc1, 0xdb, 0x0d, 0x11, 0x7c, - 0xd8, 0x10, 0xc1, 0xbd, 0x86, 0x08, 0x3e, 0x6d, 0x88, 0xe0, 0xdf, 0x0d, 0x71, 0xe0, 0x61, 0x43, - 0x04, 0xdf, 0x5d, 0x17, 0x07, 0xee, 0xae, 0x8b, 0xe0, 0xde, 0xba, 0x38, 0x70, 0x7f, 0x5d, 0x1c, - 0x78, 0xe1, 0xbc, 0x8e, 0xab, 0xcb, 0xba, 0x52, 0xc7, 0x26, 0x45, 0x96, 0xa5, 0x29, 0x35, 0xa2, - 0xb2, 0x87, 0x25, 0x6c, 0x95, 0xe5, 0xaa, 0x85, 0xeb, 0x46, 0x09, 0x59, 0x72, 0xf3, 0xb5, 0x5a, - 0x2d, 0xe8, 0x58, 0x45, 0x77, 0xa8, 0xfb, 0x0b, 0x80, 0xf6, 0x2f, 0x11, 0x0a, 0x43, 0xec, 0xdf, - 0xff, 0xa7, 0xff, 0x1f, 0x00, 0x00, 0xff, 0xff, 0x55, 0xe3, 0xe9, 0x86, 0x52, 0x32, 0x00, 0x00, + // 2075 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x9b, 0x5f, 0x6c, 0xdc, 0x48, + 0x1d, 0xc7, 0x33, 0x76, 0x92, 0x26, 0x53, 0xe9, 0x2e, 0xf5, 0x95, 0x9c, 0xbb, 0x69, 0xad, 0xc8, + 0x77, 0x3d, 0x36, 0xa5, 0xb6, 0xdb, 0xe4, 0x72, 0xa4, 0x29, 0x70, 0x4a, 0xae, 0xe9, 0xff, 0x5e, + 0x61, 0x8b, 0xfa, 0x70, 0xd5, 0x11, 0x39, 0xbb, 0x13, 0xd7, 0x17, 0xef, 0xce, 0xd6, 0x33, 0xbb, + 0x77, 0xb9, 0xea, 0x10, 0x94, 0x7f, 0xaf, 0x48, 0x08, 0x89, 0x77, 0x04, 0xba, 0x07, 0x90, 0x78, + 0xaa, 0x80, 0x03, 0x51, 0xf1, 0xd2, 0x93, 0x40, 0x47, 0x55, 0x10, 0x2a, 0x12, 0x88, 0x76, 0x83, + 0x10, 0x54, 0x3c, 0x54, 0xbc, 0x00, 0xa2, 0x0f, 0xc8, 0x63, 0xef, 0xae, 0xbd, 0xf6, 0xae, 0xed, + 0x8d, 0x9b, 0x46, 0xe4, 0x25, 0xf2, 0xae, 0x67, 0xc6, 0xf3, 0xfb, 0x7e, 0xe7, 0x33, 0x9e, 0xdf, + 0x4c, 0x16, 0xe6, 0xeb, 0x88, 0xa8, 0x26, 0xd6, 0x48, 0xf1, 0x2a, 0x2a, 0xeb, 0x9a, 0x85, 0x0d, + 0xad, 0x5a, 0x5b, 0xb1, 0xcc, 0xe2, 0x72, 0xb1, 0x46, 0x28, 0x2e, 0xeb, 0x55, 0x53, 0xad, 0xda, + 0x98, 0x62, 0x61, 0x8f, 0x5b, 0x52, 0x75, 0x4b, 0xaa, 0x16, 0x36, 0x72, 0x8a, 0x61, 0xd2, 0xab, + 0xb5, 0x15, 0xb5, 0x88, 0xcb, 0x9a, 0x81, 0x0d, 0xac, 0xb1, 0x92, 0x2b, 0xb5, 0x55, 0xf6, 0x89, + 0x7d, 0x60, 0x57, 0x6e, 0x0b, 0xb9, 0xfd, 0x06, 0xc6, 0x86, 0x85, 0x34, 0xbd, 0x6a, 0x6a, 0x7a, + 0xa5, 0x82, 0xa9, 0x4e, 0x4d, 0x5c, 0x21, 0xde, 0xdd, 0x88, 0x9e, 0xe8, 0xc5, 0x22, 0x22, 0x64, + 0xd9, 0xb9, 0xa4, 0xeb, 0x55, 0xd4, 0x2c, 0xf9, 0xf1, 0x88, 0x92, 0xb5, 0x92, 0x49, 0x43, 0x05, + 0x0f, 0x85, 0x0b, 0xae, 0x9a, 0x36, 0x7a, 0x5b, 0xb7, 0xac, 0x50, 0xd9, 0x4f, 0x84, 0xcb, 0xae, + 0xcd, 0x91, 0xe5, 0xe8, 0x86, 0xf3, 0xd1, 0x85, 0x51, 0x1d, 0x55, 0x28, 0x09, 0x94, 0x3c, 0x10, + 0x2e, 0xe9, 0xbf, 0x7d, 0x38, 0x7c, 0xbb, 0xde, 0xfd, 0xb1, 0x53, 0x5d, 0x4a, 0x47, 0x3c, 0x77, + 0x22, 0x58, 0x14, 0x57, 0xfd, 0x52, 0xef, 0x0b, 0xde, 0xf4, 0xd7, 0xdb, 0x1f, 0xbc, 0x55, 0xd7, + 0x2d, 0xb3, 0xa4, 0x53, 0xe4, 0xdd, 0x95, 0x3b, 0xee, 0x22, 0x82, 0x2a, 0xf5, 0x60, 0xe3, 0xf2, + 0xf7, 0x79, 0x28, 0x2c, 0x30, 0xe3, 0xce, 0x63, 0xa3, 0x80, 0xae, 0xd5, 0x10, 0xa1, 0x97, 0xa7, + 0x85, 0xfd, 0x70, 0xb4, 0xa2, 0x97, 0x11, 0xa9, 0xea, 0x45, 0x24, 0x82, 0x49, 0x90, 0x1f, 0x2d, + 0xb4, 0xbf, 0x10, 0xf6, 0xc2, 0xa1, 0x6b, 0x35, 0x64, 0xaf, 0x8b, 0x1c, 0xbb, 0xe3, 0x7e, 0x10, + 0xa6, 0x20, 0x24, 0x54, 0xb7, 0xe9, 0x32, 0x35, 0xcb, 0x48, 0xe4, 0x9d, 0x5b, 0x8b, 0xf0, 0xa7, + 0x7f, 0xbf, 0xc5, 0x0f, 0xd9, 0xfc, 0x77, 0x06, 0x41, 0x61, 0x94, 0xdd, 0xfd, 0xbc, 0x59, 0x46, + 0xc2, 0x41, 0x38, 0x82, 0x2a, 0x25, 0xb7, 0xe0, 0x60, 0xa8, 0xe0, 0x2e, 0x54, 0x29, 0xb1, 0x62, + 0x87, 0xe1, 0x20, 0xc1, 0x36, 0x15, 0x87, 0x26, 0x41, 0xfe, 0x99, 0x69, 0x51, 0x0d, 0x8e, 0xe9, + 0x4b, 0xd8, 0xa6, 0x17, 0xed, 0x12, 0xb2, 0x0b, 0xac, 0x94, 0xd3, 0x2b, 0xcb, 0x2c, 0x9b, 0x54, + 0x1c, 0x9e, 0x04, 0xf9, 0xa1, 0x82, 0xfb, 0x41, 0x18, 0x87, 0xc3, 0xa4, 0x68, 0x63, 0xcb, 0x12, + 0x77, 0x4d, 0x82, 0xfc, 0x48, 0xc1, 0xfb, 0x24, 0xbc, 0x06, 0x07, 0x75, 0xc3, 0x20, 0xe2, 0xe8, + 0x24, 0x9f, 0xdf, 0x3d, 0xad, 0xa9, 0x21, 0x5e, 0xd4, 0xb0, 0x2c, 0xea, 0x82, 0x61, 0x90, 0xa5, + 0x0a, 0xb5, 0xd7, 0x0b, 0xac, 0x72, 0xce, 0x84, 0xa3, 0xad, 0xaf, 0x84, 0x31, 0xc8, 0xaf, 0xa1, + 0x75, 0x4f, 0x2d, 0xe7, 0x52, 0x38, 0x09, 0x87, 0xea, 0xba, 0x55, 0x43, 0x4c, 0xa7, 0xdd, 0xd3, + 0x47, 0x22, 0x1e, 0xd2, 0x86, 0xc6, 0x69, 0xdc, 0x46, 0x06, 0xa3, 0xcc, 0x7b, 0x62, 0xc1, 0xad, + 0x3e, 0xcf, 0xcd, 0x01, 0xf9, 0x8f, 0x1c, 0x9c, 0x68, 0xf5, 0x28, 0x5c, 0x74, 0x9b, 0x38, 0x76, + 0xde, 0x53, 0x75, 0x98, 0xa9, 0x3a, 0xd7, 0x4b, 0xd5, 0x70, 0x0c, 0x4f, 0x53, 0xde, 0xef, 0xf2, + 0x70, 0xcf, 0x82, 0x83, 0xf1, 0x0e, 0xc3, 0x60, 0x31, 0x80, 0x81, 0x1a, 0x65, 0x58, 0xa7, 0x2a, + 0x21, 0x9b, 0xae, 0xf6, 0xb6, 0x69, 0x29, 0x68, 0x53, 0x14, 0x6a, 0xad, 0x09, 0x34, 0xc6, 0xa5, + 0x3f, 0x70, 0x30, 0xd7, 0xec, 0xcf, 0xb6, 0x65, 0xe0, 0x5c, 0x40, 0xd2, 0x4f, 0xf6, 0x90, 0x34, + 0x01, 0x02, 0x5b, 0xa7, 0xed, 0x0f, 0x78, 0xf8, 0xdc, 0xe5, 0x73, 0x73, 0x97, 0x3a, 0xfc, 0xde, + 0x01, 0x0c, 0x9c, 0xf0, 0x0c, 0x1b, 0x61, 0x86, 0x45, 0x4d, 0x23, 0x11, 0xba, 0x84, 0x9c, 0x2a, + 0xf7, 0x76, 0xea, 0x6c, 0xd0, 0xa9, 0x97, 0x23, 0x9e, 0x12, 0x5c, 0x4b, 0xc4, 0xd8, 0xf5, 0x57, + 0x0e, 0x4a, 0xfe, 0x6e, 0x6d, 0x5b, 0x1c, 0x2e, 0x7a, 0xea, 0x0e, 0x31, 0x75, 0x8f, 0xc7, 0xa8, + 0x9b, 0x00, 0x89, 0x2d, 0x16, 0xfa, 0xe7, 0x3c, 0x14, 0x52, 0x63, 0x21, 0xc0, 0x41, 0x62, 0x52, + 0xe4, 0x69, 0xcb, 0xae, 0xdb, 0x82, 0xf3, 0xdd, 0x05, 0x1f, 0x4c, 0x2a, 0xf8, 0x50, 0x3c, 0x2a, + 0xc3, 0xe9, 0x50, 0xd9, 0x15, 0x8d, 0xca, 0x48, 0xca, 0x55, 0x53, 0x02, 0x52, 0xac, 0xde, 0x06, + 0x9e, 0x09, 0x1a, 0x38, 0x13, 0xf1, 0x90, 0x34, 0xfe, 0xfd, 0x8b, 0x83, 0x07, 0x36, 0xc3, 0xc9, + 0xd3, 0xb4, 0xf2, 0xf5, 0xc0, 0x72, 0x6a, 0xbe, 0xb7, 0xdc, 0x09, 0xd0, 0xd9, 0x5a, 0xe5, 0xbf, + 0xc7, 0xc3, 0x3d, 0x0e, 0xdb, 0x4b, 0x2c, 0xe1, 0xd9, 0x39, 0xef, 0x93, 0xc5, 0xc0, 0xfb, 0x44, + 0xed, 0x32, 0xe3, 0x05, 0x54, 0x09, 0x39, 0xf5, 0x56, 0x6f, 0xa7, 0x4e, 0x05, 0x9d, 0x3a, 0xda, + 0x6d, 0x92, 0x73, 0x73, 0xcd, 0x18, 0x9f, 0xfe, 0xcc, 0xc1, 0xfd, 0xed, 0x1e, 0x6d, 0xdb, 0x17, + 0xc9, 0x85, 0xc0, 0x8b, 0xe4, 0x58, 0x4f, 0x59, 0x13, 0xb0, 0xb0, 0x95, 0x0a, 0xdf, 0xe4, 0xe1, + 0x58, 0x4a, 0x10, 0xfe, 0x5f, 0xdf, 0x20, 0x0b, 0x81, 0x37, 0x88, 0x12, 0x3d, 0xa5, 0xf5, 0x66, + 0x63, 0xf3, 0x69, 0x61, 0x62, 0xe3, 0x1e, 0x71, 0x70, 0xa2, 0x7f, 0x32, 0x9e, 0xa6, 0x87, 0xf1, + 0x99, 0x78, 0x1a, 0x58, 0xb6, 0x50, 0xf2, 0xf7, 0x79, 0x28, 0x9c, 0xf4, 0xf6, 0xfd, 0x76, 0x54, + 0x1a, 0x12, 0xbf, 0xb6, 0x0a, 0xcb, 0x12, 0x32, 0x6a, 0xad, 0xb7, 0x51, 0xa7, 0x83, 0x46, 0x4d, + 0x47, 0x3c, 0xc4, 0xbf, 0xe7, 0x1a, 0x63, 0x55, 0x83, 0x83, 0x07, 0x7c, 0x7d, 0xda, 0xb6, 0x6f, + 0x8e, 0xf8, 0x65, 0x54, 0xcf, 0x28, 0x9e, 0xae, 0xc8, 0x17, 0xe0, 0xd8, 0x79, 0x6c, 0x5c, 0x62, + 0x63, 0x24, 0x99, 0xac, 0x13, 0x70, 0xd4, 0x1d, 0x52, 0xcb, 0x66, 0xc9, 0x93, 0x76, 0xc4, 0xfd, + 0xe2, 0x4c, 0x49, 0xfe, 0x2f, 0x80, 0xbb, 0xd9, 0xf8, 0x21, 0x55, 0x5c, 0x21, 0x6c, 0x8e, 0xb2, + 0xb0, 0x41, 0x44, 0x30, 0xc9, 0x3b, 0x73, 0x94, 0x73, 0x2d, 0x1c, 0x80, 0x90, 0x62, 0xaa, 0x5b, + 0xcb, 0x57, 0x4d, 0x4a, 0x98, 0x03, 0x83, 0x85, 0x51, 0xf6, 0xcd, 0x69, 0x93, 0x12, 0xe1, 0x53, + 0x81, 0x17, 0x71, 0x3e, 0x22, 0x3c, 0xdf, 0x03, 0x3a, 0xc5, 0xeb, 0xd9, 0xbb, 0xdc, 0x17, 0x7a, + 0x2b, 0x7b, 0x3c, 0xa8, 0xec, 0xc1, 0xe8, 0x47, 0xfb, 0xf4, 0x3c, 0xa1, 0x53, 0xdd, 0x2f, 0xe6, + 0x7d, 0x00, 0xc7, 0x3b, 0x3d, 0xf6, 0x84, 0x08, 0x06, 0x0d, 0x3a, 0x83, 0x3e, 0xe5, 0x05, 0xcd, + 0xb3, 0xa0, 0x67, 0x62, 0x9f, 0xdc, 0x2d, 0xfe, 0x27, 0x1d, 0xe2, 0xf4, 0xb7, 0x67, 0xe0, 0xe8, + 0x6b, 0xec, 0x34, 0x68, 0xe1, 0xb3, 0x67, 0x84, 0xbb, 0x00, 0x8e, 0xb5, 0xb6, 0x5c, 0x3f, 0xe7, + 0xf0, 0x75, 0x79, 0x5a, 0x38, 0x98, 0x68, 0xb7, 0x3b, 0x27, 0xf5, 0x76, 0x56, 0x7e, 0xfb, 0xc3, + 0x1f, 0x73, 0xa0, 0x71, 0x5b, 0x9c, 0x5f, 0x9d, 0x7d, 0xa7, 0xa8, 0xb0, 0xac, 0x40, 0x71, 0xc6, + 0x8f, 0xa2, 0x5b, 0xc8, 0xa6, 0x44, 0x29, 0xe3, 0x8a, 0x49, 0xb1, 0x7d, 0x78, 0xb2, 0x8e, 0x88, + 0x62, 0x62, 0xc5, 0xac, 0xac, 0xda, 0x3a, 0xa1, 0x76, 0xad, 0x48, 0x6b, 0x36, 0x52, 0x6c, 0xa4, + 0x97, 0x6e, 0xfc, 0xf6, 0x2f, 0xdf, 0xe2, 0x34, 0xf9, 0x90, 0x77, 0x8c, 0xa5, 0xb5, 0x06, 0x31, + 0xd1, 0xae, 0xb7, 0xae, 0xdf, 0xf3, 0x1d, 0x2d, 0x91, 0x79, 0x70, 0x48, 0xf8, 0x05, 0x0f, 0xf7, + 0xb6, 0xfa, 0xeb, 0x92, 0xc1, 0x42, 0x13, 0x5e, 0x88, 0xee, 0x71, 0x00, 0x9e, 0xd8, 0xb0, 0x1e, + 0x70, 0x5e, 0x5c, 0x33, 0x09, 0xe3, 0x32, 0x50, 0x05, 0xd9, 0xba, 0xc5, 0x02, 0x7a, 0x78, 0x5b, + 0xfc, 0x11, 0x80, 0xcf, 0xbb, 0x35, 0x59, 0x17, 0xdd, 0xaa, 0xde, 0x1c, 0x7f, 0x06, 0xf2, 0x06, + 0xa2, 0xc2, 0x62, 0x44, 0xbc, 0xf9, 0x2b, 0xba, 0xf2, 0xee, 0x9b, 0xf9, 0x2b, 0x8a, 0xae, 0xbc, + 0x7b, 0x44, 0x39, 0xf6, 0xe6, 0xa1, 0x2b, 0xde, 0xc5, 0xd4, 0xab, 0x53, 0x7e, 0x01, 0x34, 0xaf, + 0xa9, 0xb3, 0x70, 0xb0, 0x8a, 0x49, 0x26, 0x6d, 0x31, 0x17, 0xd6, 0x84, 0xa3, 0xc9, 0x5d, 0xf0, + 0x2a, 0xbe, 0xf1, 0x8a, 0x9c, 0xbe, 0x92, 0xe3, 0xe0, 0x63, 0x00, 0xf7, 0x45, 0x9d, 0x04, 0xb8, + 0x36, 0xaa, 0xe9, 0xce, 0x0d, 0x72, 0x53, 0x89, 0x69, 0x94, 0xbf, 0x02, 0x32, 0x1a, 0xb4, 0xc7, + 0xe5, 0x57, 0x52, 0x44, 0xae, 0xb7, 0xbb, 0xe2, 0x84, 0xff, 0x1b, 0x00, 0x9f, 0x6d, 0xa6, 0xed, + 0x4d, 0x28, 0x5f, 0x4c, 0xb2, 0xf7, 0x1e, 0x3b, 0x78, 0xeb, 0x19, 0x85, 0xa7, 0xca, 0x53, 0x71, + 0xe1, 0x35, 0x77, 0x01, 0x18, 0x92, 0xb7, 0x78, 0xf8, 0x5c, 0xb3, 0xb7, 0x99, 0x13, 0xb9, 0xc1, + 0x6d, 0x3e, 0xaa, 0x87, 0xb7, 0xc5, 0x1f, 0x02, 0x38, 0xde, 0xd9, 0x80, 0x07, 0xd3, 0x69, 0x97, + 0xcb, 0x85, 0xd4, 0x2c, 0xb5, 0x44, 0xd0, 0x5a, 0x84, 0xbb, 0x58, 0x6e, 0xbe, 0x29, 0xe6, 0x83, + 0x29, 0x1c, 0x49, 0xec, 0x43, 0x13, 0xca, 0x59, 0x39, 0x75, 0x1d, 0xc7, 0xc2, 0xff, 0x00, 0x28, + 0x46, 0xec, 0x25, 0xb9, 0x3e, 0x2a, 0xa9, 0x8e, 0x31, 0xd2, 0x10, 0x79, 0x23, 0x2b, 0x22, 0xe7, + 0xe5, 0xd9, 0xe4, 0x61, 0x77, 0x00, 0x79, 0x0f, 0xb8, 0x5b, 0x55, 0x01, 0x28, 0x85, 0x97, 0x92, + 0x1d, 0x05, 0xc4, 0x8e, 0xdf, 0xeb, 0x19, 0x45, 0x38, 0x23, 0xab, 0x31, 0x11, 0x06, 0x77, 0xb6, + 0x19, 0x99, 0x7f, 0xe2, 0xe1, 0xf3, 0xfe, 0x4e, 0x67, 0x4e, 0xe7, 0xe3, 0x6c, 0xe8, 0xfc, 0x19, + 0x80, 0x13, 0xac, 0x01, 0x27, 0x86, 0x08, 0x44, 0x2f, 0xb8, 0x88, 0x9e, 0x4c, 0xcb, 0x55, 0x87, + 0x24, 0x4d, 0x4e, 0x5f, 0xf7, 0x38, 0xcd, 0xa8, 0x3d, 0xe6, 0x0f, 0x11, 0x66, 0xd3, 0xf9, 0xd3, + 0x24, 0x36, 0x7e, 0xe8, 0x46, 0x57, 0x74, 0xfc, 0xfd, 0xba, 0xb7, 0x7b, 0xd7, 0x15, 0xdd, 0xa3, + 0xa9, 0x8f, 0x5c, 0xd2, 0xe0, 0xfb, 0x8d, 0xac, 0xf0, 0x7d, 0x55, 0x9e, 0x4f, 0xa9, 0x41, 0x07, + 0xc3, 0xbf, 0x07, 0x6c, 0x93, 0x2d, 0x88, 0xf0, 0xc1, 0x44, 0x47, 0x14, 0x89, 0x09, 0xd6, 0x12, + 0x06, 0xe9, 0x0c, 0xe1, 0x56, 0x64, 0x9f, 0x91, 0x8f, 0xc5, 0x44, 0x46, 0x4c, 0x8a, 0xb4, 0xeb, + 0xce, 0xdf, 0xf7, 0xb4, 0x30, 0xc1, 0xbf, 0xe6, 0xe1, 0xf8, 0x93, 0x04, 0xf8, 0x1f, 0x5c, 0x9f, + 0xd1, 0x3d, 0xbc, 0x2d, 0xfe, 0x04, 0xc0, 0x1c, 0xab, 0x15, 0x0d, 0xed, 0x79, 0x17, 0xda, 0xa5, + 0xb4, 0x90, 0x45, 0x33, 0x7b, 0xc1, 0x63, 0x36, 0x9b, 0xe6, 0x98, 0x37, 0xd7, 0x84, 0x97, 0x63, + 0xbc, 0x89, 0x26, 0xf6, 0x98, 0xdc, 0x57, 0x3d, 0xc7, 0xce, 0xaf, 0xba, 0x7b, 0x8a, 0x5d, 0x79, + 0x3d, 0x92, 0xf6, 0x98, 0xa7, 0x2f, 0x5c, 0xfb, 0x1a, 0xc9, 0x67, 0xe5, 0xa5, 0xbe, 0x47, 0x72, + 0x27, 0xae, 0xbf, 0x02, 0xf0, 0xd9, 0xf6, 0x86, 0xbd, 0x1b, 0xfa, 0x8b, 0x49, 0xce, 0x4a, 0x62, + 0xc7, 0xb3, 0xed, 0x85, 0x38, 0x9b, 0x74, 0x46, 0xd2, 0x75, 0xa2, 0x14, 0x9d, 0x3f, 0x29, 0x52, + 0x52, 0xdf, 0xe6, 0xbf, 0x13, 0xcd, 0x2f, 0x79, 0xf8, 0xb1, 0x76, 0x4f, 0x9f, 0xdc, 0x0a, 0xb8, + 0xbf, 0x98, 0xfc, 0x59, 0x29, 0x7b, 0xbd, 0xba, 0x1d, 0xdf, 0x6c, 0x56, 0xea, 0xff, 0x77, 0xc6, + 0xcd, 0x66, 0xa5, 0xe1, 0xb6, 0x12, 0x66, 0xa5, 0xe1, 0x8a, 0x09, 0xb2, 0xd2, 0x70, 0x25, 0xc7, + 0xc4, 0x7f, 0x03, 0x98, 0x8b, 0x3c, 0x43, 0x72, 0x9d, 0xd4, 0x52, 0x1e, 0x39, 0xa5, 0xe1, 0xf2, + 0x8b, 0x9b, 0x1f, 0xb3, 0xf1, 0x19, 0xa9, 0x3f, 0xea, 0x0e, 0x1a, 0x3f, 0x02, 0xf0, 0x99, 0x0e, + 0x18, 0x5f, 0x48, 0x70, 0x36, 0x93, 0x78, 0x8f, 0xa8, 0xaf, 0xe9, 0x26, 0x7e, 0x59, 0xd4, 0x39, + 0xdd, 0xb4, 0x81, 0xbc, 0xc9, 0xc3, 0xbd, 0x4f, 0x8e, 0xc7, 0x7b, 0x9b, 0x78, 0x65, 0xb6, 0xd2, + 0xd0, 0x30, 0x88, 0xfd, 0xa6, 0xa1, 0x61, 0x0e, 0xfb, 0x4e, 0x43, 0xa3, 0x31, 0x8c, 0x4f, 0x43, + 0xc3, 0x14, 0xc6, 0xa7, 0xa1, 0x91, 0x10, 0x3e, 0x06, 0x70, 0x5f, 0x77, 0x06, 0xd5, 0x74, 0x07, + 0x59, 0x7d, 0x6d, 0x0d, 0xf5, 0x35, 0x56, 0x4f, 0xca, 0x0b, 0x7d, 0x8d, 0xd5, 0x4e, 0x10, 0x7f, + 0x07, 0xe0, 0x98, 0xef, 0x34, 0xa2, 0xfb, 0x2a, 0x36, 0x7c, 0x18, 0x14, 0x3b, 0x6a, 0xd7, 0x33, + 0x5a, 0xaa, 0x1f, 0x95, 0x0f, 0xc7, 0xc4, 0xea, 0x3f, 0xdf, 0x60, 0x38, 0xde, 0xe5, 0xe1, 0xb8, + 0xaf, 0xc7, 0x99, 0x03, 0xf9, 0xcf, 0x6c, 0x92, 0xd0, 0x9b, 0x00, 0xee, 0x63, 0x0d, 0x34, 0x03, + 0x08, 0xac, 0x66, 0xcf, 0xb9, 0x78, 0x9e, 0x48, 0xcb, 0x54, 0x40, 0x0d, 0xad, 0xb5, 0x34, 0x76, + 0x09, 0xcd, 0xa4, 0x35, 0x66, 0x0b, 0x16, 0x66, 0xd2, 0xd8, 0xd2, 0xe4, 0x74, 0x4e, 0xee, 0xa7, + 0x9a, 0x63, 0xea, 0x0d, 0x0e, 0x4e, 0x44, 0x9f, 0x9c, 0x75, 0x5f, 0xc9, 0xf6, 0x3c, 0x69, 0x4b, + 0x83, 0xeb, 0xd7, 0xb2, 0x4a, 0x3c, 0x3f, 0x2d, 0xcf, 0xa5, 0x8a, 0x3f, 0x08, 0x6c, 0xee, 0xa5, + 0x5b, 0x1f, 0x00, 0xfe, 0xee, 0x07, 0x40, 0x0c, 0xf7, 0xfc, 0xe2, 0xca, 0x5b, 0xa8, 0x48, 0x6f, + 0x7c, 0x24, 0x72, 0x22, 0x58, 0xfc, 0x32, 0xb8, 0xf3, 0x40, 0x1a, 0xb8, 0xf7, 0x40, 0x1a, 0x78, + 0xf4, 0x40, 0x02, 0x5f, 0x6a, 0x48, 0xe0, 0xfd, 0x86, 0x04, 0x3e, 0x6c, 0x48, 0xe0, 0x4e, 0x43, + 0x02, 0xf7, 0x1b, 0x12, 0xf8, 0x5b, 0x43, 0x1a, 0x78, 0xd4, 0x90, 0xc0, 0x37, 0x37, 0xa4, 0x81, + 0x5b, 0x1b, 0x12, 0xb8, 0xb3, 0x21, 0x0d, 0xdc, 0xdb, 0x90, 0x06, 0xde, 0x38, 0x65, 0xe0, 0xea, + 0x9a, 0xa1, 0xd6, 0xb1, 0x45, 0x91, 0x6d, 0xeb, 0x6a, 0x8d, 0x68, 0xec, 0x62, 0x15, 0xdb, 0x65, + 0xa5, 0x6a, 0xe3, 0xba, 0x59, 0x42, 0xb6, 0xd2, 0xbc, 0xad, 0x55, 0x57, 0x0c, 0xac, 0xa1, 0x77, + 0xa8, 0xf7, 0xbb, 0x8f, 0xf6, 0xef, 0x4f, 0x56, 0x86, 0xd9, 0x8f, 0x3e, 0x66, 0xfe, 0x17, 0x00, + 0x00, 0xff, 0xff, 0x70, 0x52, 0x1e, 0x0d, 0x48, 0x34, 0x00, 0x00, } func (this *AccessLogRequestV2) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/log_receiver/crudapi/api.vesapi.go b/pbgo/extschema/schema/log_receiver/crudapi/api.vesapi.go index b280f2258..34714f2e3 100644 --- a/pbgo/extschema/schema/log_receiver/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/log_receiver/crudapi/api.vesapi.go @@ -3554,10 +3554,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/log_receiver/object.pb.go b/pbgo/extschema/schema/log_receiver/object.pb.go index 433d544f8..7fb3b5c3c 100644 --- a/pbgo/extschema/schema/log_receiver/object.pb.go +++ b/pbgo/extschema/schema/log_receiver/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_d5d20a4fcc4f1340 = []byte{ - // 589 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x77, 0x76, 0xc9, 0x42, 0x06, 0x02, 0xa4, 0x5e, 0x2a, 0xea, 0x84, 0xac, 0x46, 0x89, - 0xb1, 0x6d, 0x02, 0x21, 0x51, 0x82, 0x1c, 0xc0, 0x84, 0x0b, 0x88, 0x59, 0x3c, 0x79, 0xd9, 0x4c, - 0x67, 0x5f, 0xcb, 0x68, 0xdb, 0x69, 0x66, 0xa6, 0x15, 0x0e, 0x26, 0x7e, 0x02, 0xe3, 0xc1, 0x0f, - 0x61, 0xfc, 0x0a, 0x5e, 0xc4, 0x83, 0xf1, 0x48, 0x38, 0x71, 0x94, 0xee, 0xc5, 0x83, 0x07, 0x3e, - 0x82, 0x61, 0x4a, 0xc9, 0x2e, 0x2e, 0xc4, 0x70, 0x9b, 0xc9, 0xfb, 0xfd, 0xff, 0x7d, 0x6f, 0xde, - 0x7b, 0xc5, 0x0f, 0x72, 0x50, 0x2e, 0x17, 0x9e, 0x62, 0x3b, 0x10, 0x53, 0x2f, 0x12, 0x61, 0x47, - 0x02, 0x03, 0x9e, 0x83, 0xf4, 0x84, 0xff, 0x1a, 0x98, 0x76, 0x53, 0x29, 0xb4, 0xb0, 0x66, 0x4a, - 0xd0, 0x2d, 0x41, 0xb7, 0x1f, 0x9c, 0x71, 0x42, 0xae, 0x77, 0x32, 0xdf, 0x65, 0x22, 0xf6, 0x42, - 0x11, 0x0a, 0xcf, 0x48, 0xfc, 0x2c, 0x30, 0x37, 0x73, 0x31, 0xa7, 0xd2, 0x6a, 0xe6, 0xfe, 0x15, - 0xdf, 0xd4, 0x7b, 0x29, 0xa8, 0x33, 0xee, 0xd6, 0x20, 0x27, 0x52, 0xcd, 0x45, 0x52, 0x05, 0x6f, - 0x0e, 0x06, 0xfb, 0x75, 0xad, 0xc1, 0x50, 0x0e, 0x0a, 0x92, 0x7c, 0x50, 0xde, 0xfa, 0x34, 0x82, - 0x9b, 0x5b, 0xa6, 0x3e, 0xeb, 0x09, 0x1e, 0x8b, 0x41, 0xd3, 0x2e, 0xd5, 0xd4, 0x46, 0xb3, 0x68, - 0x6e, 0x7c, 0xfe, 0x8e, 0x3b, 0x58, 0x6c, 0x09, 0x6e, 0x82, 0xa6, 0x2f, 0xf7, 0x52, 0x68, 0x9f, - 0xe3, 0xd6, 0x06, 0x9e, 0x52, 0x7b, 0x4a, 0x43, 0xdc, 0x39, 0x77, 0xa8, 0x1b, 0x87, 0xbb, 0x17, - 0x1c, 0xb6, 0x0d, 0x75, 0xc1, 0x67, 0xb2, 0xd4, 0x6e, 0x56, 0x6e, 0x8f, 0xf1, 0x88, 0x4a, 0x81, - 0xd9, 0x0d, 0x63, 0x71, 0xcf, 0xbd, 0xfc, 0xc5, 0xdd, 0xed, 0x14, 0x98, 0xf1, 0x30, 0x8a, 0xa5, - 0x1f, 0xf5, 0xef, 0xfb, 0x76, 0x7d, 0x1a, 0x1d, 0xee, 0xdb, 0x5f, 0xeb, 0x78, 0x19, 0x37, 0xd6, - 0x41, 0x5b, 0x8b, 0xc1, 0xe2, 0x2e, 0x73, 0x98, 0x48, 0x94, 0x88, 0xc0, 0xf1, 0xa9, 0x02, 0x27, - 0x16, 0x09, 0xd7, 0x42, 0x3e, 0x9a, 0xcd, 0x41, 0x39, 0x5c, 0x38, 0x3c, 0x09, 0x24, 0x55, 0x5a, - 0x66, 0x4c, 0x67, 0x12, 0x1c, 0x09, 0xb4, 0x8b, 0x57, 0xf0, 0x68, 0x1b, 0xd2, 0x88, 0x32, 0xb0, - 0x16, 0xfe, 0x75, 0xc8, 0x14, 0x5c, 0x2a, 0x7f, 0x2b, 0xb9, 0x06, 0xfc, 0x14, 0x37, 0xd7, 0x24, - 0x50, 0x7d, 0x7d, 0xf9, 0x33, 0x88, 0xe0, 0xfa, 0xf2, 0x91, 0x0d, 0xae, 0xae, 0x5b, 0x7c, 0x6b, - 0x0b, 0x8f, 0x55, 0x4f, 0x6b, 0xad, 0xe1, 0xd1, 0x90, 0x75, 0x4c, 0x47, 0xca, 0xb1, 0x78, 0x78, - 0x55, 0x47, 0xd6, 0x23, 0xe1, 0xd3, 0xe8, 0xbc, 0x2f, 0xcd, 0x90, 0x9d, 0x9e, 0x5b, 0x7f, 0x10, - 0x9e, 0xd8, 0xd6, 0x54, 0x67, 0xea, 0xbf, 0xa7, 0xad, 0xc4, 0x87, 0x4c, 0xdb, 0x73, 0x3c, 0x5e, - 0xae, 0x64, 0x47, 0x42, 0xa0, 0xec, 0xfa, 0x6c, 0x63, 0x6e, 0x7c, 0xfe, 0xf6, 0xd0, 0x59, 0x6d, - 0x43, 0x70, 0x2a, 0x5e, 0x9d, 0xfa, 0xf2, 0x6e, 0xa2, 0x3f, 0xcd, 0x36, 0x16, 0x55, 0x5c, 0x59, - 0xcb, 0x18, 0x33, 0x91, 0x74, 0xb9, 0xd9, 0x0b, 0xbb, 0x31, 0xd4, 0x6e, 0xad, 0x02, 0x4c, 0x2e, - 0x7d, 0xfc, 0xd2, 0x8d, 0xc3, 0x95, 0x69, 0x3c, 0x89, 0x27, 0xaa, 0xf4, 0xdc, 0x8c, 0x77, 0x57, - 0x3f, 0xa0, 0x83, 0x63, 0x52, 0x3b, 0x3a, 0x26, 0xb5, 0x93, 0x63, 0x82, 0xde, 0x17, 0x04, 0x7d, - 0x2e, 0x08, 0xfa, 0x59, 0x10, 0x74, 0x50, 0x10, 0x74, 0x54, 0x10, 0xf4, 0xab, 0x20, 0xe8, 0x77, - 0x41, 0x6a, 0x27, 0x05, 0x41, 0x1f, 0x7b, 0xa4, 0xf6, 0xad, 0x47, 0xd0, 0x41, 0x8f, 0xd4, 0x8e, - 0x7a, 0xa4, 0xf6, 0xea, 0x45, 0x28, 0xd2, 0x37, 0xa1, 0x9b, 0x8b, 0x48, 0x83, 0x94, 0xd4, 0xcd, - 0x94, 0x67, 0x0e, 0x81, 0x90, 0xb1, 0x93, 0x4a, 0x91, 0xf3, 0x2e, 0x48, 0xa7, 0x0a, 0x7b, 0xa9, - 0x1f, 0x0a, 0x0f, 0x76, 0xf5, 0xd9, 0xa2, 0x0f, 0xf9, 0x9f, 0xf8, 0x4d, 0xb3, 0xee, 0x0b, 0x7f, - 0x03, 0x00, 0x00, 0xff, 0xff, 0x7d, 0x36, 0x2d, 0x80, 0xe8, 0x04, 0x00, 0x00, + // 602 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4f, 0x4f, 0xd4, 0x40, + 0x18, 0xc6, 0x77, 0x58, 0x5c, 0xc8, 0x40, 0x80, 0xd4, 0xcb, 0x8a, 0x3a, 0x21, 0xab, 0x51, 0x62, + 0x6c, 0x9b, 0x60, 0x4c, 0x94, 0x18, 0x0f, 0x60, 0xc2, 0x05, 0x44, 0x17, 0xe3, 0xbf, 0xcb, 0x66, + 0x3a, 0xfb, 0xb6, 0x8c, 0xb6, 0x9d, 0x66, 0x66, 0x5a, 0xe1, 0x60, 0xe2, 0x27, 0x30, 0xde, 0xfc, + 0x0a, 0xc6, 0x0f, 0x61, 0xc4, 0x93, 0xde, 0x08, 0x27, 0x8e, 0xd2, 0xbd, 0x78, 0xf0, 0xc0, 0x47, + 0x30, 0x4c, 0x29, 0xee, 0x62, 0x25, 0x1e, 0xe4, 0x36, 0x93, 0xe7, 0x79, 0x7f, 0x7d, 0x67, 0xfa, + 0xcc, 0x8b, 0xaf, 0x66, 0xa0, 0x1c, 0x2e, 0x5c, 0xc5, 0xd6, 0x21, 0xa2, 0x6e, 0x28, 0x82, 0x8e, + 0x04, 0x06, 0x3c, 0x03, 0xe9, 0x0a, 0xef, 0x05, 0x30, 0xed, 0x24, 0x52, 0x68, 0x61, 0x4d, 0x17, + 0x46, 0xa7, 0x30, 0x3a, 0xfd, 0xc6, 0x69, 0x3b, 0xe0, 0x7a, 0x3d, 0xf5, 0x1c, 0x26, 0x22, 0x37, + 0x10, 0x81, 0x70, 0x4d, 0x89, 0x97, 0xfa, 0x66, 0x67, 0x36, 0x66, 0x55, 0xa0, 0xa6, 0xaf, 0x9c, + 0xf0, 0x4d, 0xbd, 0x99, 0x80, 0x3a, 0xf4, 0x9d, 0x1f, 0xf4, 0x89, 0x44, 0x73, 0x11, 0x97, 0xe2, + 0xb9, 0x41, 0xb1, 0xbf, 0xae, 0x35, 0x28, 0x65, 0xa0, 0x20, 0xce, 0x06, 0xcb, 0x5b, 0xef, 0xcf, + 0xe0, 0xc6, 0xaa, 0x39, 0x9f, 0x75, 0x1b, 0x8f, 0x46, 0xa0, 0x69, 0x97, 0x6a, 0xda, 0x44, 0x33, + 0x68, 0x76, 0x6c, 0xee, 0xa2, 0x33, 0x78, 0xd8, 0xc2, 0xb8, 0x02, 0x9a, 0x3e, 0xda, 0x4c, 0xa0, + 0x7d, 0x64, 0xb7, 0x96, 0xf1, 0xa4, 0xda, 0x54, 0x1a, 0xa2, 0xce, 0x11, 0x61, 0xc8, 0x10, 0x2e, + 0x1d, 0x23, 0xac, 0x19, 0xd7, 0x31, 0xce, 0x44, 0x51, 0xbb, 0x52, 0xd2, 0x6e, 0xe1, 0x61, 0x95, + 0x00, 0x6b, 0xd6, 0x0d, 0xe2, 0xb2, 0xf3, 0xf7, 0x1b, 0x77, 0xd6, 0x12, 0x60, 0x86, 0x61, 0x2a, + 0xe6, 0xbf, 0xd5, 0xbf, 0x6c, 0x35, 0x87, 0xa6, 0xd0, 0xce, 0x56, 0xf3, 0x53, 0x1d, 0x3f, 0xc5, + 0xf5, 0x25, 0xd0, 0xd6, 0x43, 0xff, 0xe6, 0x06, 0xb3, 0x99, 0x88, 0x95, 0x08, 0xc1, 0xf6, 0xa8, + 0x02, 0x3b, 0x12, 0x31, 0xd7, 0x42, 0x5e, 0x9f, 0x39, 0x2e, 0x71, 0xf6, 0x5b, 0xcb, 0x40, 0xd9, + 0x5c, 0xd8, 0x3c, 0xf6, 0x25, 0x55, 0x5a, 0xa6, 0x4c, 0xa7, 0x12, 0x6c, 0x09, 0xb4, 0x8b, 0x9f, + 0xe0, 0x91, 0x36, 0x24, 0x21, 0x65, 0x60, 0x2d, 0xff, 0x49, 0x4f, 0x15, 0x54, 0xa3, 0x0b, 0xa1, + 0x9a, 0xfb, 0x4a, 0x72, 0x0d, 0xf8, 0x31, 0x6e, 0x2c, 0x4a, 0xa0, 0xfa, 0x14, 0xb8, 0xf7, 0x20, + 0x84, 0xff, 0xce, 0x7d, 0x86, 0x87, 0x97, 0xb9, 0x3a, 0x8d, 0x3b, 0x6e, 0xad, 0xe2, 0xd1, 0xf2, + 0xef, 0x5a, 0x8b, 0x78, 0x24, 0x60, 0x1d, 0x13, 0x8a, 0x22, 0x99, 0xd7, 0x4e, 0x0a, 0xc5, 0x52, + 0x28, 0x3c, 0x1a, 0x1e, 0x45, 0xa3, 0x11, 0xb0, 0x83, 0x75, 0xeb, 0x27, 0xc2, 0xe3, 0x6b, 0x9a, + 0xea, 0x54, 0xfd, 0x73, 0xe0, 0x0b, 0x7b, 0x45, 0xe0, 0xef, 0xe3, 0xb1, 0x62, 0x2a, 0x74, 0x24, + 0xf8, 0xaa, 0x39, 0x34, 0x53, 0x9f, 0x1d, 0x9b, 0xbb, 0x50, 0xf9, 0x5c, 0xda, 0xe0, 0x1f, 0x14, + 0x2f, 0x4c, 0x7e, 0x7c, 0x3d, 0xde, 0xdf, 0x66, 0x1b, 0x8b, 0x52, 0x57, 0xd6, 0x1d, 0x8c, 0x99, + 0x88, 0xbb, 0xdc, 0x3c, 0xcd, 0x66, 0xbd, 0x12, 0xb7, 0x58, 0x1a, 0x4c, 0x2f, 0x7d, 0xfe, 0xf9, + 0xb3, 0x3b, 0x77, 0xa7, 0xf0, 0x04, 0x1e, 0x2f, 0xdb, 0x73, 0x52, 0xde, 0x5d, 0x78, 0x8b, 0xb6, + 0xf7, 0x48, 0x6d, 0x77, 0x8f, 0xd4, 0xf6, 0xf7, 0x08, 0x7a, 0x93, 0x13, 0xf4, 0x21, 0x27, 0xe8, + 0x6b, 0x4e, 0xd0, 0x76, 0x4e, 0xd0, 0x6e, 0x4e, 0xd0, 0xf7, 0x9c, 0xa0, 0x1f, 0x39, 0xa9, 0xed, + 0xe7, 0x04, 0xbd, 0xeb, 0x91, 0xda, 0xe7, 0x1e, 0x41, 0xdb, 0x3d, 0x52, 0xdb, 0xed, 0x91, 0xda, + 0xf3, 0x07, 0x81, 0x48, 0x5e, 0x06, 0x4e, 0x26, 0x42, 0x0d, 0x52, 0x52, 0x27, 0x55, 0xae, 0x59, + 0xf8, 0x42, 0x46, 0x76, 0x22, 0x45, 0xc6, 0xbb, 0x20, 0xed, 0x52, 0x76, 0x13, 0x2f, 0x10, 0x2e, + 0x6c, 0xe8, 0xc3, 0x59, 0x53, 0x31, 0xd2, 0xbc, 0x86, 0x99, 0x38, 0x37, 0x7e, 0x05, 0x00, 0x00, + 0xff, 0xff, 0xdb, 0xd1, 0x7c, 0xe9, 0x6b, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/log_receiver/public_crudapi.pb.go b/pbgo/extschema/schema/log_receiver/public_crudapi.pb.go index ae82b50da..ff4d660db 100644 --- a/pbgo/extschema/schema/log_receiver/public_crudapi.pb.go +++ b/pbgo/extschema/schema/log_receiver/public_crudapi.pb.go @@ -1056,108 +1056,109 @@ func init() { } var fileDescriptor_50031cd517c98671 = []byte{ - // 1612 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1b, 0x5b, - 0x15, 0xcf, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0xc7, 0xbc, 0xcb, 0x7b, 0x79, 0x8e, 0x29, 0x96, 0x9f, - 0x5f, 0xd5, 0x84, 0xb4, 0x1e, 0x97, 0x94, 0x4a, 0x6d, 0x04, 0x05, 0x3b, 0x99, 0x44, 0x09, 0x49, - 0x13, 0x8d, 0xdd, 0x0a, 0x75, 0xc1, 0x68, 0x3c, 0x3e, 0x76, 0x87, 0xda, 0x9e, 0xe1, 0xce, 0xb5, - 0xd3, 0x08, 0x45, 0x42, 0x15, 0x62, 0x87, 0xc4, 0xc7, 0xae, 0x62, 0xc1, 0x06, 0x89, 0x05, 0x7f, - 0x00, 0x52, 0x58, 0x94, 0x55, 0xab, 0x22, 0x41, 0x05, 0x0b, 0xba, 0x6c, 0x1d, 0x16, 0x95, 0xd8, - 0x54, 0xac, 0x58, 0x3e, 0xcd, 0xbd, 0x33, 0xae, 0xed, 0x38, 0x8e, 0xf3, 0xb1, 0xf2, 0xdc, 0x7b, - 0xce, 0xef, 0xe7, 0xf3, 0xbb, 0xf7, 0x9c, 0xe3, 0xe3, 0xc1, 0xd9, 0x16, 0x38, 0xb2, 0x69, 0x65, - 0x1d, 0xe3, 0x11, 0xd4, 0xf5, 0x6c, 0xcd, 0xaa, 0x6a, 0x14, 0x0c, 0x30, 0x5b, 0x40, 0xb3, 0x76, - 0xb3, 0x54, 0x33, 0x0d, 0xcd, 0xa0, 0xcd, 0xb2, 0x6e, 0x9b, 0xb2, 0x4d, 0x2d, 0x66, 0x91, 0x84, - 0x00, 0xc8, 0x02, 0x20, 0x77, 0x03, 0x12, 0x99, 0xaa, 0xc9, 0x1e, 0x35, 0x4b, 0xb2, 0x61, 0xd5, - 0xb3, 0x55, 0xab, 0x6a, 0x65, 0x39, 0xa4, 0xd4, 0xac, 0xf0, 0x15, 0x5f, 0xf0, 0x27, 0x41, 0x95, - 0xb8, 0x5c, 0xb5, 0xac, 0x6a, 0x0d, 0xb2, 0xba, 0x6d, 0x66, 0xf5, 0x46, 0xc3, 0x62, 0x3a, 0x33, - 0xad, 0x86, 0xe3, 0x59, 0xbf, 0xee, 0x59, 0x3b, 0x1c, 0x50, 0xb7, 0xd9, 0x9e, 0x67, 0x4c, 0xf4, - 0x86, 0x0d, 0x94, 0x5a, 0xd4, 0x07, 0xce, 0x0d, 0x91, 0x64, 0x95, 0x7e, 0x0c, 0x06, 0xf3, 0x1c, - 0xaf, 0x0e, 0x71, 0x64, 0x7b, 0x36, 0x74, 0x22, 0xe9, 0xf5, 0xb3, 0xec, 0xee, 0x30, 0x67, 0x7b, - 0x8d, 0xdd, 0xb8, 0x74, 0xaf, 0xa9, 0x05, 0x0e, 0x34, 0x5a, 0x7d, 0xf0, 0x54, 0x9f, 0x8f, 0x09, - 0xbb, 0x5a, 0x8f, 0x47, 0xfa, 0x4f, 0x08, 0x4f, 0x2e, 0x53, 0xd0, 0x19, 0xa8, 0xf0, 0x93, 0x26, - 0x38, 0x8c, 0x7c, 0x0f, 0x47, 0xea, 0xc0, 0xf4, 0xb2, 0xce, 0xf4, 0x38, 0x4a, 0xa1, 0xf9, 0xd8, - 0xe2, 0x97, 0x72, 0xef, 0xad, 0x6c, 0x73, 0x99, 0x02, 0xb5, 0x05, 0x4c, 0x2f, 0xee, 0xd9, 0xa0, - 0x76, 0x40, 0x64, 0x1b, 0x87, 0x1c, 0x1b, 0x8c, 0x78, 0x80, 0x83, 0x17, 0xe4, 0xe3, 0xaf, 0x54, - 0x16, 0x1c, 0x05, 0x1b, 0x0c, 0x97, 0x23, 0x3f, 0xfd, 0x6c, 0x7f, 0xc2, 0x85, 0xca, 0x55, 0x43, - 0x73, 0x3f, 0x55, 0x4e, 0xb4, 0x14, 0x7d, 0x75, 0x37, 0x2c, 0xbe, 0x33, 0xfd, 0x7f, 0x84, 0xa7, - 0xfc, 0x70, 0x1d, 0xdb, 0x6a, 0x38, 0x40, 0xbe, 0x73, 0x24, 0xde, 0xd4, 0xc0, 0x78, 0xd7, 0x80, - 0x0d, 0x0c, 0x76, 0xda, 0xd9, 0x73, 0x18, 0xd4, 0xb5, 0x0e, 0x49, 0x90, 0x93, 0x5c, 0xed, 0x23, - 0x29, 0x70, 0xaf, 0xa3, 0x54, 0x53, 0x02, 0xbe, 0xe5, 0x13, 0x6e, 0xf6, 0xa8, 0x9f, 0x1b, 0xa6, - 0x7e, 0x0d, 0xd8, 0x29, 0xa4, 0xbf, 0x45, 0x78, 0x4a, 0x05, 0xbb, 0xa6, 0x1b, 0x9d, 0xab, 0xfa, - 0xfe, 0x11, 0xe9, 0x57, 0x06, 0x4a, 0xf7, 0x60, 0x03, 0xe4, 0xef, 0xf4, 0x44, 0x7b, 0x6d, 0x58, - 0xb4, 0x1e, 0xc9, 0x09, 0x11, 0x93, 0x2c, 0x96, 0x28, 0x38, 0x56, 0x93, 0x1a, 0xa0, 0xb5, 0x80, - 0x3a, 0xa6, 0xd5, 0xe0, 0x27, 0x1a, 0xcd, 0x87, 0xde, 0x1f, 0x20, 0xa4, 0x4e, 0xfb, 0xd6, 0x07, - 0xc2, 0xd8, 0x2d, 0xf1, 0x13, 0x3c, 0xdd, 0x51, 0x28, 0x6e, 0x37, 0xfd, 0x0c, 0x61, 0xbc, 0x06, - 0xcc, 0x57, 0x7c, 0x19, 0x47, 0x1b, 0x7a, 0x1d, 0x1c, 0x5b, 0x37, 0x80, 0x4b, 0x8e, 0xaa, 0x1f, - 0x37, 0x08, 0xc1, 0x21, 0x77, 0xc1, 0xd5, 0x44, 0x55, 0xfe, 0x4c, 0x1e, 0x62, 0xf7, 0x1b, 0x39, - 0x99, 0x56, 0xb1, 0x68, 0x5d, 0x67, 0x3c, 0x9c, 0xa9, 0xc5, 0x6f, 0x9d, 0x70, 0x35, 0x7e, 0x08, - 0xab, 0x1c, 0xb4, 0x6c, 0x95, 0x41, 0x9d, 0xa2, 0x3d, 0x7b, 0xe9, 0x5f, 0x86, 0x71, 0xac, 0xcb, - 0x93, 0x6c, 0xe0, 0x98, 0xc1, 0x93, 0x93, 0x7f, 0x93, 0x77, 0xa8, 0xdf, 0x3c, 0xb9, 0x00, 0x3c, - 0x75, 0x2a, 0x16, 0x68, 0x97, 0x9d, 0x6c, 0xe1, 0x09, 0x2a, 0xce, 0x42, 0x90, 0x05, 0x4f, 0xae, - 0xa6, 0xde, 0xec, 0x50, 0x63, 0x1e, 0x9e, 0xd3, 0x0d, 0xba, 0x96, 0xd0, 0x90, 0x6b, 0xe9, 0x29, - 0xab, 0xf1, 0x8b, 0x28, 0xab, 0x4b, 0x17, 0x52, 0x56, 0xe1, 0x8b, 0x28, 0x2b, 0xb2, 0x86, 0xc3, - 0x0e, 0xd3, 0x59, 0xd3, 0x89, 0xff, 0xfe, 0x77, 0x28, 0x15, 0x9c, 0x8f, 0x2d, 0xce, 0x0f, 0x63, - 0x2c, 0x70, 0x5f, 0x11, 0x64, 0x3e, 0xf8, 0x7c, 0x1f, 0xa9, 0x1e, 0x9c, 0xac, 0xe3, 0x4f, 0x28, - 0x54, 0x80, 0x52, 0xb3, 0x51, 0xd5, 0x44, 0xfb, 0x77, 0xe2, 0x11, 0xce, 0x78, 0xf9, 0x98, 0x52, - 0xac, 0x70, 0x7d, 0x52, 0x07, 0x26, 0xf6, 0x1d, 0xf2, 0x00, 0xc7, 0xcb, 0x50, 0x03, 0x06, 0x65, - 0x4d, 0xd8, 0xa0, 0xdc, 0x61, 0x8c, 0x8e, 0xc0, 0x38, 0xe3, 0xa1, 0x55, 0x0f, 0xec, 0xf3, 0xfe, - 0x10, 0xcf, 0x96, 0x4d, 0x47, 0x2f, 0xd5, 0x06, 0x11, 0xe3, 0x11, 0x88, 0x3f, 0xf7, 0xe1, 0x7d, - 0xcc, 0x5d, 0x95, 0xbb, 0x11, 0x8a, 0x20, 0x29, 0x90, 0xfe, 0x03, 0xc2, 0xb1, 0x4d, 0xd3, 0x19, - 0xb1, 0x5a, 0xbf, 0xc0, 0x13, 0x35, 0xbd, 0x04, 0x35, 0xad, 0x62, 0xd6, 0x18, 0x50, 0xaf, 0x6a, - 0x63, 0x7c, 0x6f, 0x95, 0x6f, 0x91, 0x2f, 0xf1, 0x24, 0x05, 0xdb, 0xa2, 0x4c, 0xab, 0x98, 0x50, - 0x2b, 0x3b, 0xf1, 0x60, 0x2a, 0x38, 0x1f, 0x55, 0x27, 0xc4, 0xe6, 0x2a, 0xdf, 0x23, 0x37, 0xf0, - 0xa7, 0x9e, 0x93, 0xb8, 0x14, 0xdf, 0x37, 0xc4, 0x7d, 0x89, 0xb0, 0x89, 0x2b, 0x14, 0x88, 0xf4, - 0x5f, 0xc2, 0x58, 0x12, 0x71, 0x8a, 0xc2, 0x5d, 0x67, 0x50, 0x27, 0x33, 0x38, 0xcc, 0xa0, 0xa1, - 0x37, 0x18, 0xcf, 0xb1, 0xa8, 0xea, 0xad, 0xce, 0xd0, 0x72, 0x24, 0x1c, 0x6c, 0x9a, 0x65, 0xd1, - 0xf5, 0x54, 0xf7, 0x91, 0xa4, 0x70, 0xac, 0x0c, 0x8e, 0x41, 0x4d, 0xfe, 0xdb, 0x1b, 0x8f, 0x09, - 0xa5, 0x5d, 0x5b, 0x24, 0x81, 0x23, 0xfe, 0x31, 0xc7, 0x27, 0x52, 0x68, 0x3e, 0xa2, 0x76, 0xd6, - 0x64, 0x07, 0x87, 0xf9, 0xa1, 0x08, 0x49, 0xb1, 0xc5, 0xdb, 0xc3, 0x72, 0xb5, 0x5f, 0x97, 0xbc, - 0xc9, 0xa1, 0x4a, 0x83, 0xd1, 0x3d, 0xd5, 0xe3, 0x21, 0x1a, 0x8e, 0x75, 0x8d, 0x44, 0x5e, 0x16, - 0x7c, 0xf7, 0x54, 0xb4, 0xb9, 0x8f, 0x78, 0xc1, 0xdd, 0xcd, 0x48, 0xee, 0x60, 0x6c, 0xed, 0x36, - 0x80, 0x6a, 0xee, 0xc8, 0x11, 0x8f, 0xf2, 0xa2, 0x4d, 0xf4, 0xf1, 0x3f, 0x30, 0x61, 0xd7, 0xcf, - 0xb1, 0x28, 0xf7, 0x76, 0x77, 0x7a, 0x1a, 0xcf, 0xe4, 0x45, 0x34, 0x9e, 0xa9, 0x73, 0x35, 0x9e, - 0x3c, 0x8e, 0x54, 0x81, 0xf1, 0xe6, 0xe1, 0xb5, 0xb0, 0x51, 0x9b, 0x8f, 0x7a, 0xa9, 0x2a, 0x16, - 0x64, 0x13, 0x63, 0x2f, 0x35, 0x1d, 0x60, 0x5e, 0x7b, 0x38, 0x65, 0xc3, 0x89, 0x0a, 0x82, 0x02, - 0xb0, 0xc4, 0x1d, 0x1c, 0xeb, 0xba, 0x53, 0x37, 0xdb, 0x1e, 0xc3, 0x9e, 0x97, 0x99, 0xee, 0x23, - 0xf9, 0x14, 0x8f, 0xb7, 0xf4, 0x5a, 0xd3, 0x4f, 0x4a, 0xb1, 0x58, 0x0a, 0xdc, 0x46, 0x89, 0xbb, - 0x58, 0xea, 0xbf, 0xb7, 0xd3, 0xe0, 0x37, 0x42, 0x91, 0x71, 0x29, 0x9c, 0xfe, 0x39, 0xc2, 0x13, - 0xdd, 0xf9, 0x40, 0xf2, 0x78, 0xdc, 0x64, 0x50, 0x77, 0xe2, 0xa2, 0x97, 0x5e, 0x3f, 0x4d, 0x22, - 0xa9, 0x02, 0x4a, 0x6e, 0xe0, 0xb0, 0x98, 0xb3, 0xe3, 0x01, 0x4e, 0x12, 0xef, 0x23, 0x51, 0x5c, - 0x23, 0x3f, 0x56, 0xcf, 0x2f, 0xfd, 0x18, 0x4f, 0xae, 0xf0, 0x96, 0x77, 0xf6, 0xe1, 0x60, 0x1e, - 0x4b, 0x15, 0xdd, 0xac, 0x69, 0x66, 0xa5, 0xd3, 0x1a, 0x79, 0xd9, 0x46, 0xd4, 0x29, 0x77, 0x7f, - 0xbd, 0xe2, 0xb7, 0xbc, 0x85, 0xff, 0x21, 0xfc, 0xd9, 0xc0, 0xa1, 0x80, 0x24, 0xf0, 0xcc, 0x9a, - 0x52, 0xd4, 0xd4, 0xc2, 0x8e, 0xb6, 0xba, 0xad, 0x6e, 0xe5, 0x8a, 0xda, 0x8a, 0xb2, 0x9a, 0xbb, - 0xbf, 0x59, 0x94, 0xc6, 0xc8, 0x37, 0xf0, 0x6c, 0x9f, 0x6d, 0x75, 0x5b, 0xd5, 0x96, 0x55, 0x25, - 0x57, 0x54, 0x24, 0x44, 0x92, 0x38, 0x31, 0xc0, 0xac, 0x2a, 0x3b, 0x9b, 0xb9, 0x65, 0x45, 0x0a, - 0x90, 0x59, 0xfc, 0x59, 0x9f, 0xbd, 0x50, 0xcc, 0x15, 0xef, 0x17, 0xa4, 0x20, 0xf9, 0x1c, 0x7f, - 0xad, 0xcf, 0xa4, 0x2a, 0xb9, 0x15, 0x29, 0x44, 0xae, 0xe0, 0xd4, 0x11, 0xc3, 0xaa, 0xa2, 0xaa, - 0xeb, 0xf7, 0xd6, 0xb4, 0xed, 0xfc, 0x86, 0xb2, 0x5c, 0x2c, 0x48, 0xe3, 0x03, 0xbc, 0xf2, 0xea, - 0xf6, 0x0f, 0x94, 0x7b, 0xc2, 0x59, 0xb9, 0xb7, 0xac, 0x14, 0xa4, 0xf0, 0xe2, 0xaf, 0xa3, 0x38, - 0x98, 0xdb, 0x59, 0x27, 0xff, 0x46, 0x38, 0x2c, 0x26, 0x15, 0x32, 0xfa, 0x34, 0x93, 0x58, 0x18, - 0xc5, 0xd5, 0x1b, 0xf3, 0x5a, 0xed, 0x17, 0xf1, 0xc5, 0xca, 0xad, 0x27, 0x46, 0xc6, 0xb0, 0x1a, - 0x8e, 0x55, 0x83, 0x4c, 0x49, 0x77, 0x20, 0xd3, 0x74, 0x80, 0x5e, 0x6f, 0x81, 0x93, 0x31, 0xad, - 0x8c, 0xd9, 0xa8, 0x50, 0xdd, 0x61, 0xb4, 0x69, 0xb0, 0x26, 0x85, 0xcc, 0x2e, 0x35, 0x19, 0x3c, - 0xfd, 0xd7, 0x7f, 0x7e, 0x1b, 0x58, 0x4a, 0xdf, 0xf2, 0xfe, 0x4c, 0x66, 0x3b, 0xb7, 0xed, 0x64, - 0x7f, 0xea, 0xd7, 0xbf, 0xdc, 0xd9, 0xdc, 0xef, 0xf9, 0x13, 0xe6, 0x2c, 0xa1, 0x05, 0xf2, 0x0f, - 0x84, 0x83, 0x6b, 0xc0, 0xc8, 0xd5, 0x13, 0x87, 0x41, 0xa1, 0x69, 0x6e, 0xc4, 0xa1, 0x31, 0xbd, - 0xfb, 0xf2, 0xcf, 0x01, 0xd4, 0x7e, 0x11, 0xff, 0xf6, 0x51, 0x51, 0x75, 0xab, 0x61, 0x32, 0xeb, - 0x38, 0x5d, 0x14, 0xf4, 0x32, 0x97, 0x75, 0x8b, 0xdc, 0x1c, 0x24, 0xeb, 0x38, 0x35, 0xc2, 0xb2, - 0x4f, 0xfe, 0x86, 0x70, 0xc8, 0xad, 0x31, 0x32, 0x77, 0x72, 0x15, 0x0a, 0x4d, 0xf3, 0xa3, 0x96, - 0x6b, 0xda, 0x3e, 0xb7, 0x28, 0x99, 0x5c, 0x3f, 0x8d, 0x28, 0xf2, 0x5f, 0x84, 0x2f, 0x79, 0x63, - 0x2d, 0x39, 0xc5, 0xec, 0x9b, 0xb8, 0x36, 0x92, 0xaf, 0x27, 0xeb, 0x17, 0xe8, 0x1c, 0xd9, 0xb7, - 0x91, 0x50, 0xce, 0x94, 0x7d, 0x7d, 0x2e, 0xfb, 0x6e, 0x36, 0xfe, 0x15, 0xe1, 0xb0, 0x68, 0x69, - 0xc3, 0xeb, 0xac, 0xa7, 0xed, 0x25, 0x66, 0x64, 0xf1, 0x2e, 0x43, 0xf6, 0xdf, 0x65, 0xc8, 0x4a, - 0xdd, 0x66, 0x7b, 0x69, 0x76, 0x0e, 0x55, 0xb7, 0x17, 0xce, 0x92, 0x7c, 0x4b, 0x68, 0x21, 0xf1, - 0xa3, 0xe7, 0x07, 0x28, 0xf0, 0xcf, 0x03, 0xf4, 0xc5, 0x90, 0xf8, 0xc5, 0x0f, 0xdb, 0x9b, 0x03, - 0x84, 0xda, 0x07, 0x68, 0x6e, 0xc4, 0xdf, 0xc1, 0xa7, 0x7f, 0x8f, 0x07, 0x24, 0x94, 0xff, 0x0d, - 0x7a, 0x75, 0x77, 0x7c, 0x59, 0xbd, 0xbf, 0xb2, 0xf9, 0xfa, 0x5d, 0x72, 0xec, 0xcd, 0xbb, 0xe4, - 0xd8, 0x87, 0x77, 0x49, 0xf4, 0xb3, 0x76, 0x12, 0xfd, 0xb1, 0x9d, 0x44, 0x2f, 0xdb, 0x49, 0xf4, - 0xba, 0x9d, 0x44, 0x6f, 0xdb, 0x49, 0xf4, 0xbe, 0x9d, 0x1c, 0xfb, 0xd0, 0x4e, 0xa2, 0x5f, 0x1d, - 0x26, 0xc7, 0x9e, 0x1f, 0x26, 0xd1, 0xeb, 0xc3, 0xe4, 0xd8, 0x9b, 0xc3, 0xe4, 0xd8, 0xc3, 0x9d, - 0xaa, 0x65, 0x3f, 0xae, 0xca, 0x2d, 0xcb, 0x9d, 0x31, 0xa9, 0x2e, 0x37, 0x9d, 0x2c, 0x7f, 0x70, - 0xff, 0x67, 0x65, 0x6c, 0x6a, 0xb5, 0xcc, 0x32, 0xd0, 0x8c, 0x6f, 0xce, 0xda, 0xa5, 0xaa, 0x95, - 0x85, 0x27, 0xcc, 0x7b, 0x89, 0x32, 0xe0, 0x7d, 0x4e, 0x29, 0xcc, 0x8f, 0xfe, 0xe6, 0x57, 0x01, - 0x00, 0x00, 0xff, 0xff, 0x77, 0xf1, 0xff, 0xe7, 0xf0, 0x12, 0x00, 0x00, + // 1621 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x1b, 0x5b, + 0x15, 0xce, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0x8f, 0x79, 0x97, 0xf7, 0xf2, 0x1c, 0x53, 0x2c, 0xd7, + 0xad, 0x9a, 0x90, 0xd6, 0xe3, 0x92, 0xaa, 0x52, 0x1b, 0x41, 0xc1, 0x4e, 0x26, 0x51, 0x42, 0xd2, + 0x44, 0x63, 0xb7, 0x42, 0x5d, 0x30, 0x1a, 0x8f, 0x8f, 0xdd, 0xa1, 0xb6, 0x67, 0xb8, 0x73, 0xed, + 0x34, 0x42, 0x91, 0x50, 0x61, 0xc7, 0x0f, 0xa1, 0x76, 0x57, 0x21, 0xc4, 0x06, 0x89, 0x05, 0x7f, + 0x00, 0x52, 0x58, 0x74, 0x47, 0xd5, 0x05, 0xaa, 0x60, 0x53, 0xb1, 0x6a, 0x1d, 0x24, 0x2a, 0xb1, + 0xa9, 0x58, 0xb1, 0x44, 0x73, 0xef, 0x8c, 0x6b, 0x3b, 0xae, 0xe3, 0xe4, 0xa5, 0x2b, 0xcf, 0x9c, + 0x73, 0xbe, 0xcf, 0xe7, 0x9b, 0x7b, 0xce, 0xf1, 0xf1, 0xe0, 0x6c, 0x0b, 0x1c, 0xd9, 0xb4, 0xb2, + 0x8e, 0xf1, 0x00, 0xea, 0x7a, 0xb6, 0x66, 0x55, 0x35, 0x0a, 0x06, 0x98, 0x2d, 0xa0, 0x59, 0xbb, + 0x59, 0xaa, 0x99, 0x86, 0x66, 0xd0, 0x66, 0x59, 0xb7, 0x4d, 0xd9, 0xa6, 0x16, 0xb3, 0x48, 0x42, + 0x00, 0x64, 0x01, 0x90, 0xbb, 0x01, 0x89, 0x4c, 0xd5, 0x64, 0x0f, 0x9a, 0x25, 0xd9, 0xb0, 0xea, + 0xd9, 0xaa, 0x55, 0xb5, 0xb2, 0x1c, 0x52, 0x6a, 0x56, 0xf8, 0x1d, 0xbf, 0xe1, 0x57, 0x82, 0x2a, + 0x71, 0xbe, 0x6a, 0x59, 0xd5, 0x1a, 0x64, 0x75, 0xdb, 0xcc, 0xea, 0x8d, 0x86, 0xc5, 0x74, 0x66, + 0x5a, 0x0d, 0xc7, 0xf3, 0x7e, 0xdd, 0xf3, 0x76, 0x38, 0xa0, 0x6e, 0xb3, 0x3d, 0xcf, 0x99, 0xe8, + 0x4d, 0x1b, 0x28, 0xb5, 0xa8, 0x0f, 0x9c, 0x1b, 0x22, 0xc9, 0x2a, 0xfd, 0x08, 0x0c, 0xe6, 0x05, + 0x5e, 0x1e, 0x12, 0xc8, 0xf6, 0x6c, 0xe8, 0x64, 0xd2, 0x1b, 0x67, 0xd9, 0xdd, 0x69, 0xce, 0xf6, + 0x3a, 0xbb, 0x71, 0xe9, 0x5e, 0x57, 0x0b, 0x1c, 0x68, 0xb4, 0xfa, 0xe0, 0xa9, 0xbe, 0x18, 0x13, + 0x76, 0xb5, 0x9e, 0x88, 0xf4, 0x9f, 0x10, 0x9e, 0x5c, 0xa6, 0xa0, 0x33, 0x50, 0xe1, 0xc7, 0x4d, + 0x70, 0x18, 0xf9, 0x2e, 0x8e, 0xd4, 0x81, 0xe9, 0x65, 0x9d, 0xe9, 0x71, 0x94, 0x42, 0xf3, 0xb1, + 0xc5, 0x8b, 0x72, 0xef, 0xa9, 0x6c, 0x73, 0x99, 0x02, 0xb5, 0x05, 0x4c, 0x2f, 0xee, 0xd9, 0xa0, + 0x76, 0x40, 0x64, 0x1b, 0x87, 0x1c, 0x1b, 0x8c, 0x78, 0x80, 0x83, 0x17, 0xe4, 0x8f, 0x1f, 0xa9, + 0x2c, 0x38, 0x0a, 0x36, 0x18, 0x2e, 0x47, 0x7e, 0xfa, 0xd9, 0xfe, 0x84, 0x0b, 0x95, 0xab, 0x86, + 0xe6, 0x7e, 0xaa, 0x9c, 0x68, 0x29, 0xfa, 0xf2, 0x76, 0x58, 0x7c, 0x67, 0xfa, 0x7f, 0x08, 0x4f, + 0xf9, 0xe9, 0x3a, 0xb6, 0xd5, 0x70, 0x80, 0x7c, 0xfb, 0x48, 0xbe, 0xa9, 0x81, 0xf9, 0xae, 0x01, + 0x1b, 0x98, 0xec, 0xb4, 0xb3, 0xe7, 0x30, 0xa8, 0x6b, 0x1d, 0x92, 0x20, 0x27, 0xb9, 0xdc, 0x47, + 0x52, 0xe0, 0x51, 0x47, 0xa9, 0xa6, 0x04, 0x7c, 0xcb, 0x27, 0xdc, 0xec, 0x51, 0x3f, 0x37, 0x4c, + 0xfd, 0x1a, 0xb0, 0x13, 0x48, 0x7f, 0x83, 0xf0, 0x94, 0x0a, 0x76, 0x4d, 0x37, 0x3a, 0x47, 0xf5, + 0xbd, 0x23, 0xd2, 0x2f, 0x0d, 0x94, 0xee, 0xc1, 0x06, 0xc8, 0xdf, 0xe9, 0xc9, 0xf6, 0xca, 0xb0, + 0x6c, 0x3d, 0x92, 0x63, 0x32, 0x26, 0x59, 0x2c, 0x51, 0x70, 0xac, 0x26, 0x35, 0x40, 0x6b, 0x01, + 0x75, 0x4c, 0xab, 0xc1, 0x9f, 0x68, 0x34, 0x1f, 0x7a, 0x77, 0x80, 0x90, 0x3a, 0xed, 0x7b, 0xef, + 0x09, 0x67, 0xb7, 0xc4, 0xcf, 0xf0, 0x74, 0x47, 0xa1, 0x38, 0xdd, 0xf4, 0x33, 0x84, 0xf1, 0x1a, + 0x30, 0x5f, 0xf1, 0x79, 0x1c, 0x6d, 0xe8, 0x75, 0x70, 0x6c, 0xdd, 0x00, 0x2e, 0x39, 0xaa, 0x7e, + 0x30, 0x10, 0x82, 0x43, 0xee, 0x0d, 0x57, 0x13, 0x55, 0xf9, 0x35, 0xb9, 0x8f, 0xdd, 0x6f, 0xe4, + 0x64, 0x5a, 0xc5, 0xa2, 0x75, 0x9d, 0xf1, 0x74, 0xa6, 0x16, 0xbf, 0x75, 0xcc, 0xd1, 0xf8, 0x29, + 0xac, 0x72, 0xd0, 0xb2, 0x55, 0x06, 0x75, 0x8a, 0xf6, 0xd8, 0xd2, 0xbf, 0x0a, 0xe3, 0x58, 0x57, + 0x24, 0xd9, 0xc0, 0x31, 0x83, 0x17, 0x27, 0xff, 0x26, 0xef, 0xa1, 0x7e, 0xf3, 0xf8, 0x06, 0xf0, + 0xd4, 0xa9, 0x58, 0xa0, 0x5d, 0x76, 0xb2, 0x85, 0x27, 0xa8, 0x78, 0x16, 0x82, 0x2c, 0x78, 0x7c, + 0x37, 0xf5, 0x56, 0x87, 0x1a, 0xf3, 0xf0, 0x9c, 0x6e, 0xd0, 0xb1, 0x84, 0x86, 0x1c, 0x4b, 0x4f, + 0x5b, 0x8d, 0x9f, 0x45, 0x5b, 0x9d, 0x3b, 0x93, 0xb6, 0x0a, 0x9f, 0x45, 0x5b, 0x91, 0x35, 0x1c, + 0x76, 0x98, 0xce, 0x9a, 0x4e, 0xfc, 0xf7, 0xbf, 0x45, 0xa9, 0xe0, 0x7c, 0x6c, 0x71, 0x7e, 0x18, + 0x63, 0x81, 0xc7, 0x8a, 0x24, 0xf3, 0xc1, 0xe7, 0xfb, 0x48, 0xf5, 0xe0, 0x64, 0x1d, 0x7f, 0x46, + 0xa1, 0x02, 0x94, 0x9a, 0x8d, 0xaa, 0x26, 0xc6, 0xbf, 0x13, 0x8f, 0x70, 0xc6, 0xf3, 0x1f, 0x69, + 0xc5, 0x0a, 0xd7, 0x27, 0x75, 0x60, 0xc2, 0xee, 0x90, 0x7b, 0x38, 0x5e, 0x86, 0x1a, 0x30, 0x28, + 0x6b, 0xc2, 0x07, 0xe5, 0x0e, 0x63, 0x74, 0x04, 0xc6, 0x19, 0x0f, 0xad, 0x7a, 0x60, 0x9f, 0xf7, + 0x07, 0x78, 0xb6, 0x6c, 0x3a, 0x7a, 0xa9, 0x36, 0x88, 0x18, 0x8f, 0x40, 0xfc, 0xa5, 0x0f, 0xef, + 0x63, 0xee, 0xea, 0xdc, 0x8d, 0x50, 0x04, 0x49, 0x81, 0xf4, 0x1f, 0x10, 0x8e, 0x6d, 0x9a, 0xce, + 0x88, 0xdd, 0x7a, 0x01, 0x4f, 0xd4, 0xf4, 0x12, 0xd4, 0xb4, 0x8a, 0x59, 0x63, 0x40, 0xbd, 0xae, + 0x8d, 0x71, 0xdb, 0x2a, 0x37, 0x91, 0x8b, 0x78, 0x92, 0x82, 0x6d, 0x51, 0xa6, 0x55, 0x4c, 0xa8, + 0x95, 0x9d, 0x78, 0x30, 0x15, 0x9c, 0x8f, 0xaa, 0x13, 0xc2, 0xb8, 0xca, 0x6d, 0xe4, 0x1a, 0xfe, + 0xdc, 0x0b, 0x12, 0x87, 0xe2, 0xc7, 0x86, 0x78, 0x2c, 0x11, 0x3e, 0x71, 0x84, 0x02, 0x91, 0xfe, + 0x4b, 0x18, 0x4b, 0x22, 0x4f, 0xd1, 0xb8, 0xeb, 0x0c, 0xea, 0x64, 0x06, 0x87, 0x19, 0x34, 0xf4, + 0x06, 0xe3, 0x35, 0x16, 0x55, 0xbd, 0xbb, 0x53, 0x8c, 0x1c, 0x09, 0x07, 0x9b, 0x66, 0x59, 0x4c, + 0x3d, 0xd5, 0xbd, 0x24, 0x29, 0x1c, 0x2b, 0x83, 0x63, 0x50, 0x93, 0xff, 0xf6, 0xc6, 0x63, 0x42, + 0x69, 0x97, 0x89, 0x24, 0x70, 0xc4, 0x7f, 0xcc, 0xf1, 0x89, 0x14, 0x9a, 0x8f, 0xa8, 0x9d, 0x7b, + 0xb2, 0x83, 0xc3, 0xfc, 0xa1, 0x08, 0x49, 0xb1, 0xc5, 0x9b, 0xc3, 0x6a, 0xb5, 0x5f, 0x97, 0xbc, + 0xc9, 0xa1, 0x4a, 0x83, 0xd1, 0x3d, 0xd5, 0xe3, 0x21, 0x1a, 0x8e, 0x75, 0xad, 0x44, 0x5e, 0x15, + 0x7c, 0xe7, 0x44, 0xb4, 0xb9, 0x0f, 0x78, 0xc1, 0xdd, 0xcd, 0x48, 0x6e, 0x61, 0x6c, 0xed, 0x36, + 0x80, 0x6a, 0xee, 0xca, 0x11, 0x8f, 0xf2, 0xa6, 0x4d, 0xf4, 0xf1, 0xdf, 0x33, 0x61, 0xd7, 0xaf, + 0xb1, 0x28, 0x8f, 0x76, 0x2d, 0x3d, 0x83, 0x67, 0xf2, 0x2c, 0x06, 0xcf, 0xd4, 0x57, 0x1a, 0x3c, + 0x79, 0x1c, 0xa9, 0x02, 0xe3, 0xc3, 0xc3, 0x1b, 0x61, 0xa3, 0x0e, 0x1f, 0xf5, 0x5c, 0x55, 0xdc, + 0x90, 0x4d, 0x8c, 0xbd, 0xd2, 0x74, 0x80, 0x79, 0xe3, 0xe1, 0x84, 0x03, 0x27, 0x2a, 0x08, 0x0a, + 0xc0, 0x12, 0xb7, 0x70, 0xac, 0xeb, 0x4c, 0xdd, 0x6a, 0x7b, 0x08, 0x7b, 0x5e, 0x65, 0xba, 0x97, + 0xe4, 0x73, 0x3c, 0xde, 0xd2, 0x6b, 0x4d, 0xbf, 0x28, 0xc5, 0xcd, 0x52, 0xe0, 0x26, 0x4a, 0xdc, + 0xc6, 0x52, 0xff, 0xb9, 0x9d, 0x04, 0xbf, 0x11, 0x8a, 0x8c, 0x4b, 0xe1, 0xf4, 0xcf, 0x11, 0x9e, + 0xe8, 0xae, 0x07, 0x92, 0xc7, 0xe3, 0x26, 0x83, 0xba, 0x13, 0x17, 0xb3, 0xf4, 0xea, 0x49, 0x0a, + 0x49, 0x15, 0x50, 0x72, 0x0d, 0x87, 0xc5, 0x9e, 0x1d, 0x0f, 0x70, 0x92, 0x78, 0x1f, 0x89, 0xe2, + 0x3a, 0xf9, 0x63, 0xf5, 0xe2, 0xd2, 0x0f, 0xf1, 0xe4, 0x0a, 0x1f, 0x79, 0xa7, 0x5f, 0x0e, 0xe6, + 0xb1, 0x54, 0xd1, 0xcd, 0x9a, 0x66, 0x56, 0x3a, 0xa3, 0x91, 0xb7, 0x6d, 0x44, 0x9d, 0x72, 0xed, + 0xeb, 0x15, 0x7f, 0xe4, 0x2d, 0xfc, 0x17, 0xe1, 0x2f, 0x06, 0x2e, 0x05, 0x24, 0x81, 0x67, 0xd6, + 0x94, 0xa2, 0xa6, 0x16, 0x76, 0xb4, 0xd5, 0x6d, 0x75, 0x2b, 0x57, 0xd4, 0x56, 0x94, 0xd5, 0xdc, + 0xdd, 0xcd, 0xa2, 0x34, 0x46, 0xbe, 0x81, 0x67, 0xfb, 0x7c, 0xab, 0xdb, 0xaa, 0xb6, 0xac, 0x2a, + 0xb9, 0xa2, 0x22, 0x21, 0x92, 0xc4, 0x89, 0x01, 0x6e, 0x55, 0xd9, 0xd9, 0xcc, 0x2d, 0x2b, 0x52, + 0x80, 0xcc, 0xe2, 0x2f, 0xfa, 0xfc, 0x85, 0x62, 0xae, 0x78, 0xb7, 0x20, 0x05, 0xc9, 0x97, 0xf8, + 0x6b, 0x7d, 0x2e, 0x55, 0xc9, 0xad, 0x48, 0x21, 0x72, 0x09, 0xa7, 0x8e, 0x38, 0x56, 0x15, 0x55, + 0x5d, 0xbf, 0xb3, 0xa6, 0x6d, 0xe7, 0x37, 0x94, 0xe5, 0x62, 0x41, 0x1a, 0x1f, 0x10, 0x95, 0x57, + 0xb7, 0xbf, 0xaf, 0xdc, 0x11, 0xc1, 0xca, 0x9d, 0x65, 0xa5, 0x20, 0x85, 0x17, 0x9f, 0x62, 0x1c, + 0xcc, 0xed, 0xac, 0x93, 0xf7, 0x08, 0x87, 0xc5, 0xa6, 0x42, 0x46, 0xdf, 0x66, 0x12, 0x0b, 0xa3, + 0x84, 0x7a, 0x6b, 0xde, 0xaf, 0x51, 0xfb, 0xaf, 0xf1, 0x8d, 0xca, 0x8d, 0x47, 0x46, 0xc6, 0xb0, + 0x1a, 0x8e, 0x55, 0x83, 0x4c, 0x49, 0x77, 0x20, 0xd3, 0x74, 0x80, 0x5e, 0xed, 0x37, 0x9b, 0x86, + 0xb0, 0xb7, 0xc0, 0xc9, 0x98, 0x56, 0xc6, 0x6c, 0x54, 0xa8, 0xee, 0x30, 0xda, 0x34, 0x58, 0x93, + 0x42, 0x66, 0x97, 0x9a, 0x0c, 0x1e, 0xff, 0xe3, 0x5f, 0x4f, 0x03, 0x4b, 0xe9, 0x1b, 0xde, 0xbf, + 0xcc, 0x6c, 0xa7, 0x0c, 0x9c, 0xec, 0x4f, 0xfc, 0xc1, 0x20, 0x77, 0x8c, 0xfb, 0x3d, 0xff, 0xce, + 0x9c, 0x25, 0xb4, 0x40, 0xfe, 0x83, 0x70, 0x70, 0x0d, 0x18, 0xb9, 0x7c, 0xec, 0x96, 0x28, 0xc4, + 0xce, 0x8d, 0xb8, 0x4d, 0xa6, 0x9f, 0xa0, 0x17, 0x7f, 0x0e, 0xb8, 0x6a, 0xb7, 0x8f, 0xaa, 0xad, + 0x5b, 0x0d, 0x93, 0x59, 0x03, 0x05, 0xfb, 0xae, 0xc1, 0x9a, 0x29, 0xe8, 0x65, 0x2e, 0xf9, 0x06, + 0xb9, 0x3e, 0x48, 0xf2, 0xc7, 0x94, 0x0a, 0xcf, 0x3e, 0xf9, 0x37, 0xc2, 0x21, 0xb7, 0x31, 0xc9, + 0xdc, 0xf1, 0xad, 0x2b, 0xf4, 0xce, 0x8f, 0xda, 0xe3, 0xe9, 0x5f, 0x7c, 0x52, 0xc1, 0x32, 0xb9, + 0x7a, 0x12, 0xc1, 0xe4, 0x67, 0x01, 0x7c, 0xce, 0xdb, 0x93, 0xc9, 0x09, 0x96, 0xe9, 0xc4, 0x95, + 0x91, 0x62, 0x3d, 0xc9, 0xbf, 0xfb, 0x14, 0xd5, 0xbc, 0x91, 0x50, 0x4e, 0x55, 0xcd, 0x7d, 0x21, + 0xfb, 0x6e, 0x75, 0xff, 0x13, 0xe1, 0xb0, 0x98, 0x9d, 0xc3, 0x1b, 0xba, 0x67, 0xbe, 0x26, 0x66, + 0x64, 0xf1, 0xd2, 0x44, 0xf6, 0x5f, 0x9a, 0xc8, 0x4a, 0xdd, 0x66, 0x7b, 0xe9, 0x5f, 0x7e, 0x0a, + 0xb9, 0x37, 0x17, 0x4e, 0x53, 0xc9, 0x4b, 0x68, 0x21, 0xf1, 0xc3, 0xe7, 0x07, 0x28, 0xf0, 0xf7, + 0x03, 0x74, 0x61, 0x88, 0x30, 0xf1, 0xd3, 0xfa, 0xfa, 0x00, 0xa1, 0xf6, 0x01, 0x9a, 0x1b, 0xf1, + 0x97, 0xf8, 0xf1, 0xdf, 0xe2, 0x01, 0x09, 0xe5, 0x9f, 0xa0, 0x97, 0xb7, 0xc7, 0x97, 0xd5, 0xbb, + 0x2b, 0x9b, 0xaf, 0xde, 0x26, 0xc7, 0x5e, 0xbf, 0x4d, 0x8e, 0xbd, 0x7f, 0x9b, 0x44, 0x3f, 0x6d, + 0x27, 0xd1, 0x1f, 0xdb, 0x49, 0xf4, 0xa2, 0x9d, 0x44, 0xaf, 0xda, 0x49, 0xf4, 0xa6, 0x9d, 0x44, + 0xef, 0xda, 0xc9, 0xb1, 0xf7, 0xed, 0x24, 0xfa, 0xcd, 0x61, 0x72, 0xec, 0xf9, 0x61, 0x12, 0xbd, + 0x3a, 0x4c, 0x8e, 0xbd, 0x3e, 0x4c, 0x8e, 0xdd, 0xdf, 0xa9, 0x5a, 0xf6, 0xc3, 0xaa, 0xdc, 0xb2, + 0xdc, 0x2d, 0x97, 0xea, 0x72, 0xd3, 0xc9, 0xf2, 0x0b, 0xf7, 0x9f, 0x5e, 0xc6, 0xa6, 0x56, 0xcb, + 0x2c, 0x03, 0xcd, 0xf8, 0xee, 0xac, 0x5d, 0xaa, 0x5a, 0x59, 0x78, 0xc4, 0xbc, 0xd7, 0x38, 0x03, + 0xde, 0x28, 0x95, 0xc2, 0xfc, 0x4c, 0xae, 0xff, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x6f, 0x2c, 0x12, + 0xd9, 0x72, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/log_receiver/public_crudapi.vesapi.go b/pbgo/extschema/schema/log_receiver/public_crudapi.vesapi.go index 6ae385fc6..8be03f67a 100644 --- a/pbgo/extschema/schema/log_receiver/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/log_receiver/public_crudapi.vesapi.go @@ -3252,10 +3252,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3312,10 +3316,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3374,10 +3382,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/log_receiver/public_customapi.pb.go b/pbgo/extschema/schema/log_receiver/public_customapi.pb.go index f36319d92..328baf3c7 100644 --- a/pbgo/extschema/schema/log_receiver/public_customapi.pb.go +++ b/pbgo/extschema/schema/log_receiver/public_customapi.pb.go @@ -160,37 +160,38 @@ func init() { } var fileDescriptor_eb11c8a73ec6d850 = []byte{ - // 480 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x93, 0xb1, 0x8b, 0xd4, 0x40, - 0x14, 0xc6, 0x33, 0xab, 0x08, 0x9b, 0x46, 0x49, 0xa1, 0x7b, 0x71, 0x19, 0x34, 0x95, 0xa8, 0xc9, - 0xe0, 0x1d, 0x82, 0x08, 0x16, 0x6a, 0xa5, 0x08, 0x1e, 0x8b, 0x95, 0xcd, 0x31, 0xc9, 0xbd, 0x9d, - 0x1b, 0x4d, 0xf2, 0xc6, 0x99, 0x49, 0x3c, 0x91, 0x03, 0xb9, 0xd2, 0x4a, 0xf0, 0x9f, 0xb0, 0xf1, - 0x2f, 0xb8, 0xe6, 0x3a, 0xad, 0x64, 0xd1, 0xe6, 0x4a, 0x37, 0x6b, 0x61, 0x25, 0xf7, 0x27, 0x88, - 0xb3, 0xb9, 0xf3, 0x72, 0xae, 0x82, 0xdd, 0xf7, 0xf2, 0xcb, 0xf7, 0xf8, 0xf2, 0xf8, 0xe2, 0x5f, - 0xab, 0xc1, 0x24, 0x12, 0x99, 0xc9, 0x36, 0xa0, 0xe0, 0x2c, 0x47, 0xb1, 0xa6, 0x21, 0x03, 0x59, - 0x83, 0x66, 0xaa, 0x4a, 0x73, 0x99, 0xad, 0x65, 0x95, 0xb1, 0x58, 0x70, 0x25, 0x13, 0xa5, 0xd1, - 0x62, 0x10, 0xce, 0x2d, 0xc9, 0xdc, 0x92, 0x1c, 0xb5, 0x84, 0xb1, 0x90, 0x76, 0xa3, 0x4a, 0x93, - 0x0c, 0x0b, 0x26, 0x50, 0x20, 0x73, 0x96, 0xb4, 0x1a, 0xbb, 0xc9, 0x0d, 0x4e, 0xcd, 0x57, 0x85, - 0x43, 0x81, 0x28, 0x72, 0x60, 0x5c, 0x49, 0xc6, 0xcb, 0x12, 0x2d, 0xb7, 0x12, 0x4b, 0xd3, 0xd2, - 0xf3, 0xdd, 0x6c, 0xa8, 0x8e, 0xc2, 0xa5, 0x2e, 0xb4, 0x2f, 0x14, 0x1c, 0xa0, 0x61, 0x17, 0xd5, - 0x3c, 0x97, 0xeb, 0xdc, 0x42, 0x4b, 0xa3, 0x63, 0x14, 0x0c, 0x94, 0x75, 0x77, 0x79, 0x74, 0xdf, - 0x3f, 0xfb, 0x08, 0x8c, 0x7d, 0x80, 0x62, 0xd4, 0x7e, 0xd9, 0x08, 0x9e, 0x55, 0x60, 0x6c, 0x30, - 0xf4, 0xfb, 0x25, 0x2f, 0xc0, 0x28, 0x9e, 0xc1, 0x80, 0x5c, 0x20, 0x97, 0xfa, 0xa3, 0xdf, 0x0f, - 0x82, 0xc0, 0x3f, 0xf9, 0x6b, 0x18, 0xf4, 0x1c, 0x70, 0x3a, 0x5a, 0xf2, 0xcf, 0xfd, 0xb1, 0xcb, - 0x28, 0x2c, 0x0d, 0x2c, 0xbf, 0xef, 0xf9, 0xfd, 0xbb, 0xee, 0xba, 0xb7, 0x57, 0xef, 0x05, 0x3f, - 0x88, 0x7f, 0xfa, 0xd8, 0x9b, 0xc1, 0x72, 0xf2, 0xf7, 0x63, 0x27, 0x8b, 0x23, 0x86, 0x2b, 0xff, - 0xe5, 0x99, 0x47, 0x89, 0x74, 0xf3, 0x61, 0x70, 0x65, 0x7c, 0x7d, 0x33, 0x8b, 0x33, 0x2c, 0x0d, - 0xe6, 0x10, 0xa7, 0xdc, 0x40, 0x5c, 0x19, 0xd0, 0x57, 0x6b, 0x30, 0xb1, 0xc4, 0x58, 0x40, 0x09, - 0x9a, 0xe7, 0xf1, 0x73, 0x2d, 0x2d, 0x6c, 0x7f, 0xf9, 0xf6, 0xb6, 0x77, 0x2b, 0xba, 0xd1, 0x96, - 0x84, 0x1d, 0xde, 0xc0, 0xb0, 0x97, 0x87, 0x7a, 0xab, 0xd3, 0xa7, 0x96, 0x6c, 0x31, 0x0b, 0xc6, - 0xde, 0x24, 0x97, 0x43, 0xb6, 0xbb, 0x43, 0x4e, 0x7c, 0xde, 0x21, 0x17, 0xff, 0x91, 0xf7, 0x61, - 0xfa, 0x04, 0x32, 0xbb, 0xfd, 0x69, 0xd0, 0x3b, 0x43, 0xee, 0xbc, 0x26, 0x93, 0x29, 0xf5, 0xf6, - 0xa6, 0xd4, 0xdb, 0x9f, 0x52, 0xf2, 0xaa, 0xa1, 0xe4, 0x5d, 0x43, 0xc9, 0xc7, 0x86, 0x92, 0x49, - 0x43, 0xc9, 0xd7, 0x86, 0x92, 0xef, 0x0d, 0xf5, 0xf6, 0x1b, 0x4a, 0xde, 0xcc, 0xa8, 0xb7, 0x3b, - 0xa3, 0x64, 0x32, 0xa3, 0xde, 0xde, 0x8c, 0x7a, 0x8f, 0x57, 0x05, 0xaa, 0xa7, 0x22, 0xa9, 0x31, - 0xb7, 0xa0, 0x35, 0x4f, 0x2a, 0xc3, 0x9c, 0x18, 0xa3, 0x2e, 0x62, 0xa5, 0xb1, 0x96, 0xeb, 0xa0, - 0xe3, 0x03, 0xcc, 0x54, 0x2a, 0x90, 0xc1, 0xa6, 0x6d, 0x4b, 0xb2, 0xe0, 0xef, 0x48, 0x4f, 0xb9, - 0xaa, 0xac, 0xfc, 0x0c, 0x00, 0x00, 0xff, 0xff, 0x89, 0x57, 0x52, 0xac, 0x42, 0x03, 0x00, 0x00, + // 488 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x93, 0xcf, 0x6b, 0xd4, 0x40, + 0x14, 0xc7, 0x33, 0xab, 0x08, 0xcd, 0x45, 0xc9, 0x41, 0xb7, 0xeb, 0x32, 0xd4, 0x9c, 0x44, 0x4c, + 0x06, 0x5b, 0x04, 0x11, 0x3c, 0xf8, 0xe3, 0xa2, 0x08, 0x96, 0xc5, 0x93, 0x97, 0x32, 0x99, 0xbe, + 0x9d, 0x8e, 0x26, 0x79, 0xe3, 0xcc, 0x24, 0x56, 0xa4, 0x20, 0x3d, 0x89, 0x5e, 0x04, 0xff, 0x09, + 0xff, 0x87, 0x5e, 0x7a, 0xab, 0x27, 0x59, 0xf4, 0xd2, 0xa3, 0x9b, 0xf5, 0xe0, 0xb1, 0x7f, 0x82, + 0x98, 0xa4, 0xb5, 0x59, 0xab, 0xe0, 0xed, 0xfb, 0xe6, 0x93, 0xef, 0xe3, 0xbd, 0xc7, 0x37, 0xfe, + 0xb5, 0x12, 0x6c, 0xac, 0x90, 0x59, 0xb1, 0x01, 0x19, 0x67, 0x29, 0xca, 0x35, 0x03, 0x02, 0x54, + 0x09, 0x86, 0xe9, 0x22, 0x49, 0x95, 0x58, 0x13, 0x85, 0x75, 0x98, 0x71, 0xad, 0x62, 0x6d, 0xd0, + 0x61, 0x30, 0x68, 0x2c, 0x71, 0x63, 0x89, 0x8f, 0x5b, 0x06, 0x91, 0x54, 0x6e, 0xa3, 0x48, 0x62, + 0x81, 0x19, 0x93, 0x28, 0x91, 0xd5, 0x96, 0xa4, 0x18, 0xd7, 0x55, 0x5d, 0xd4, 0xaa, 0x69, 0x35, + 0x18, 0x4a, 0x44, 0x99, 0x02, 0xe3, 0x5a, 0x31, 0x9e, 0xe7, 0xe8, 0xb8, 0x53, 0x98, 0xdb, 0x96, + 0x5e, 0xec, 0xce, 0x86, 0xfa, 0x38, 0x5c, 0xec, 0x42, 0xf7, 0x52, 0xc3, 0x21, 0x1a, 0x76, 0x51, + 0xc9, 0x53, 0xb5, 0xce, 0x1d, 0xb4, 0x34, 0x9c, 0xa3, 0x60, 0x21, 0x2f, 0xbb, 0xcd, 0xc3, 0x07, + 0xfe, 0xf9, 0xc7, 0x60, 0xdd, 0x43, 0x94, 0xa3, 0x76, 0xb3, 0x11, 0x3c, 0x2f, 0xc0, 0xba, 0x60, + 0xe8, 0x2f, 0xe4, 0x3c, 0x03, 0xab, 0xb9, 0x80, 0x3e, 0x59, 0x22, 0x97, 0x17, 0x46, 0xbf, 0x1f, + 0x82, 0xc0, 0x3f, 0xfd, 0xab, 0xe8, 0xf7, 0x6a, 0x50, 0xeb, 0x70, 0xd1, 0xbf, 0xf0, 0x47, 0x2f, + 0xab, 0x31, 0xb7, 0xb0, 0xbc, 0xd7, 0xf3, 0x17, 0xee, 0xd6, 0xd7, 0xbd, 0xbd, 0x7a, 0x3f, 0x78, + 0xd3, 0xf3, 0xcf, 0xce, 0x7d, 0x19, 0x2c, 0xc7, 0x7f, 0x3f, 0x76, 0x7c, 0xf2, 0x88, 0x83, 0x95, + 0xff, 0xf2, 0x34, 0xa3, 0x84, 0xef, 0x48, 0xb5, 0xd7, 0xbf, 0x37, 0xbe, 0xbe, 0x29, 0x22, 0x81, + 0xb9, 0xc5, 0x14, 0xa2, 0x84, 0x5b, 0x88, 0x0a, 0x0b, 0xe6, 0xea, 0xd2, 0xfc, 0xbb, 0x12, 0x0d, + 0x28, 0xc1, 0x46, 0x0a, 0x23, 0x09, 0x39, 0x18, 0x9e, 0x46, 0x2f, 0x8c, 0x72, 0xb0, 0xfd, 0xf5, + 0xfb, 0x87, 0xde, 0xad, 0xf0, 0x46, 0x1b, 0x1f, 0x76, 0x74, 0x1d, 0xcb, 0x5e, 0x1d, 0xe9, 0xad, + 0x4e, 0xd2, 0x5a, 0xb2, 0xc5, 0x1c, 0x58, 0x77, 0x93, 0x5c, 0x19, 0xb0, 0xdd, 0x1d, 0x72, 0xea, + 0xcb, 0x0e, 0xb9, 0xf4, 0x8f, 0x4d, 0x1e, 0x25, 0x4f, 0x41, 0xb8, 0xed, 0xcf, 0xfd, 0xde, 0x39, + 0x72, 0xe7, 0x2d, 0x99, 0x4c, 0xa9, 0xb7, 0x3f, 0xa5, 0xde, 0xc1, 0x94, 0x92, 0xd7, 0x15, 0x25, + 0x1f, 0x2b, 0x4a, 0x3e, 0x55, 0x94, 0x4c, 0x2a, 0x4a, 0xbe, 0x55, 0x94, 0xfc, 0xa8, 0xa8, 0x77, + 0x50, 0x51, 0xf2, 0x7e, 0x46, 0xbd, 0xdd, 0x19, 0x25, 0x93, 0x19, 0xf5, 0xf6, 0x67, 0xd4, 0x7b, + 0xb2, 0x2a, 0x51, 0x3f, 0x93, 0x71, 0x89, 0xa9, 0x03, 0x63, 0x78, 0x5c, 0x58, 0x56, 0x8b, 0x31, + 0x9a, 0x2c, 0xd2, 0x06, 0x4b, 0xb5, 0x0e, 0x26, 0x3a, 0xc4, 0x4c, 0x27, 0x12, 0x19, 0x6c, 0xba, + 0x36, 0x3e, 0x27, 0xfc, 0x37, 0xc9, 0x99, 0x3a, 0x44, 0x2b, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, + 0xa7, 0x71, 0xa9, 0x24, 0x5c, 0x03, 0x00, 0x00, } func (this *TestLogReceiverRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/maintenance_status/public_customapi.pb.go b/pbgo/extschema/schema/maintenance_status/public_customapi.pb.go index 8faf53e98..c97a5feac 100644 --- a/pbgo/extschema/schema/maintenance_status/public_customapi.pb.go +++ b/pbgo/extschema/schema/maintenance_status/public_customapi.pb.go @@ -201,42 +201,43 @@ func init() { } var fileDescriptor_0e94ff602ee35b59 = []byte{ - // 556 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0x3f, 0x6b, 0x14, 0x41, - 0x18, 0xc6, 0x77, 0x2e, 0x20, 0xb8, 0x22, 0xea, 0x19, 0xc8, 0xe5, 0x0c, 0x43, 0x38, 0x9b, 0x20, - 0xee, 0x0e, 0x44, 0x44, 0xb4, 0x33, 0xf1, 0x5f, 0x0a, 0x25, 0x44, 0x54, 0xb0, 0x59, 0x66, 0xf7, - 0xde, 0x9b, 0x1b, 0xdc, 0x9d, 0x77, 0x9c, 0x99, 0xdd, 0x24, 0x9d, 0xa4, 0xb4, 0x0a, 0xf8, 0x25, - 0x6c, 0xed, 0x04, 0x9b, 0x74, 0xa6, 0x92, 0x80, 0x4d, 0x4a, 0xb3, 0x67, 0x61, 0x99, 0x8f, 0x20, - 0xee, 0xed, 0xc1, 0x5d, 0xce, 0x44, 0xb0, 0x9b, 0xe1, 0xc7, 0xf3, 0xdb, 0x9d, 0x99, 0xe7, 0xf5, - 0xef, 0x14, 0x60, 0x43, 0x89, 0xcc, 0x26, 0x7d, 0xc8, 0x38, 0xcb, 0xb8, 0x54, 0x0e, 0x14, 0x57, - 0x09, 0x44, 0xd6, 0x71, 0x97, 0x5b, 0xa6, 0xf3, 0x38, 0x95, 0x49, 0x94, 0xe4, 0xd6, 0x61, 0xc6, - 0xb5, 0x0c, 0xb5, 0x41, 0x87, 0xcd, 0xc5, 0x61, 0x30, 0x1c, 0x06, 0xc3, 0xe9, 0x60, 0x3b, 0x10, - 0xd2, 0xf5, 0xf3, 0x38, 0x4c, 0x30, 0x63, 0x02, 0x05, 0xb2, 0x2a, 0x18, 0xe7, 0xbd, 0x6a, 0x57, - 0x6d, 0xaa, 0xd5, 0x50, 0xd8, 0x5e, 0x10, 0x88, 0x22, 0x05, 0xc6, 0xb5, 0x64, 0x5c, 0x29, 0x74, - 0xdc, 0x49, 0x54, 0xb6, 0xa6, 0xd7, 0x26, 0xff, 0x13, 0xf5, 0x38, 0x9c, 0x9f, 0x84, 0x6e, 0x5b, - 0xc3, 0x08, 0x2d, 0x4c, 0xa2, 0x82, 0xa7, 0xb2, 0xcb, 0x1d, 0xd4, 0xb4, 0x73, 0x82, 0x82, 0x05, - 0x55, 0x4c, 0xca, 0x3b, 0xf3, 0xfe, 0xdc, 0x63, 0x70, 0x2f, 0xb4, 0x30, 0xbc, 0x0b, 0xcf, 0xab, - 0xa3, 0x6d, 0xc0, 0xdb, 0x1c, 0xac, 0xeb, 0x7c, 0x6a, 0xf8, 0xad, 0x69, 0x66, 0x35, 0x2a, 0x0b, - 0xcd, 0xa7, 0xfe, 0x5c, 0x3e, 0x04, 0x91, 0x42, 0x17, 0x49, 0x15, 0x69, 0x83, 0xc2, 0x80, 0xb5, - 0x2d, 0xb2, 0x48, 0x96, 0x2e, 0x2c, 0xcf, 0x86, 0x93, 0x57, 0xf8, 0x30, 0xd3, 0x6e, 0xfb, 0x89, - 0xb7, 0x31, 0x5b, 0xc7, 0x9e, 0xa1, 0x5b, 0x53, 0xeb, 0x75, 0xa6, 0xf9, 0xc8, 0xbf, 0x3a, 0xd2, - 0x8d, 0xab, 0x1a, 0x67, 0xaa, 0xae, 0xd4, 0x91, 0x31, 0x4f, 0xe6, 0x2f, 0xfd, 0xc5, 0x13, 0x6d, - 0x4a, 0xd7, 0x8f, 0x12, 0x54, 0x3d, 0x29, 0xa2, 0x2e, 0x6e, 0x2a, 0x27, 0x33, 0x68, 0xcd, 0x9c, - 0x29, 0xbf, 0x3e, 0x25, 0x7f, 0x25, 0x5d, 0x7f, 0xb5, 0x72, 0x3c, 0xa8, 0x15, 0x2b, 0x97, 0xfc, - 0x8b, 0xa3, 0xcf, 0xfd, 0xa9, 0x05, 0x2c, 0xbf, 0x6f, 0xf8, 0xe7, 0x57, 0xab, 0x2e, 0xdd, 0x5f, - 0x5f, 0x6b, 0x1e, 0x13, 0xff, 0xf2, 0xc9, 0x1b, 0x6c, 0xde, 0x0d, 0xff, 0xd5, 0xad, 0xf0, 0x94, - 0x17, 0x69, 0xdf, 0xfb, 0x9f, 0xe8, 0xf0, 0xc1, 0x3a, 0xb0, 0xff, 0xb9, 0x41, 0xca, 0xaf, 0xad, - 0xa0, 0x77, 0x7b, 0x2b, 0x09, 0x12, 0x54, 0x16, 0x53, 0x08, 0x62, 0x6e, 0x21, 0xc8, 0x50, 0x49, - 0x87, 0xe6, 0x66, 0x01, 0x36, 0x90, 0x18, 0x08, 0x50, 0x60, 0x78, 0x1a, 0x18, 0xe0, 0xdd, 0x9d, - 0xef, 0x3f, 0x3f, 0x34, 0x6e, 0x34, 0x97, 0xea, 0x39, 0x61, 0x8a, 0x67, 0x60, 0x35, 0x4f, 0xc0, - 0x32, 0xbb, 0x6d, 0x1d, 0x64, 0x6c, 0xfc, 0xfc, 0xb9, 0x6d, 0xfb, 0x7b, 0x5f, 0xc8, 0xcc, 0xce, - 0xb7, 0x56, 0xa3, 0x45, 0x56, 0x76, 0xc9, 0xc1, 0x11, 0xf5, 0x0e, 0x8f, 0xa8, 0x77, 0x7c, 0x44, - 0xc9, 0xbb, 0x92, 0x92, 0x8f, 0x25, 0x25, 0xfb, 0x25, 0x25, 0x07, 0x25, 0x25, 0x3f, 0x4a, 0x4a, - 0x7e, 0x95, 0xd4, 0x3b, 0x2e, 0x29, 0xd9, 0x1d, 0x50, 0x6f, 0x6f, 0x40, 0xc9, 0xc1, 0x80, 0x7a, - 0x87, 0x03, 0xea, 0xbd, 0x7e, 0x29, 0x50, 0xbf, 0x11, 0x61, 0x81, 0xa9, 0x03, 0x63, 0x78, 0x98, - 0x5b, 0x56, 0x2d, 0x7a, 0x68, 0xb2, 0x40, 0x1b, 0x2c, 0x64, 0x17, 0x4c, 0x30, 0xc2, 0x4c, 0xc7, - 0x02, 0x19, 0x6c, 0xb9, 0xba, 0xe9, 0xa7, 0x8e, 0x7b, 0x7c, 0xae, 0x6a, 0xfd, 0xad, 0xdf, 0x01, - 0x00, 0x00, 0xff, 0xff, 0x51, 0x93, 0x8a, 0xd4, 0x19, 0x04, 0x00, 0x00, + // 564 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x3d, 0x6b, 0x14, 0x41, + 0x18, 0xc7, 0x77, 0x36, 0x20, 0xb8, 0x22, 0xea, 0x19, 0xc8, 0xe5, 0x0c, 0x43, 0x38, 0x9b, 0x20, + 0xee, 0x0e, 0x44, 0x44, 0xb4, 0x33, 0xf1, 0x25, 0x29, 0x94, 0x10, 0x51, 0xc1, 0x66, 0x99, 0xdb, + 0x7b, 0x6e, 0x6e, 0xf0, 0x76, 0x9e, 0x71, 0x66, 0x76, 0x93, 0x74, 0x21, 0xb5, 0x45, 0xc0, 0xef, + 0x20, 0xb6, 0x76, 0x82, 0x4d, 0x3a, 0x53, 0x49, 0xc0, 0x26, 0xa5, 0xd9, 0xb3, 0xb0, 0xcc, 0x47, + 0x10, 0xf7, 0xf6, 0xe4, 0x2e, 0x67, 0x22, 0xd8, 0xcd, 0xf0, 0xe3, 0xff, 0xdb, 0xdd, 0xe7, 0x65, + 0x83, 0x3b, 0x39, 0xd8, 0x48, 0x22, 0xb3, 0x49, 0x17, 0x52, 0xce, 0x52, 0x2e, 0x95, 0x03, 0xc5, + 0x55, 0x02, 0xb1, 0x75, 0xdc, 0x65, 0x96, 0xe9, 0xac, 0xd5, 0x93, 0x49, 0x9c, 0x64, 0xd6, 0x61, + 0xca, 0xb5, 0x8c, 0xb4, 0x41, 0x87, 0xb5, 0xf9, 0x41, 0x30, 0x1a, 0x04, 0xa3, 0xc9, 0x60, 0x23, + 0x14, 0xd2, 0x75, 0xb3, 0x56, 0x94, 0x60, 0xca, 0x04, 0x0a, 0x64, 0x65, 0xb0, 0x95, 0x75, 0xca, + 0x5b, 0x79, 0x29, 0x4f, 0x03, 0x61, 0x63, 0x4e, 0x20, 0x8a, 0x1e, 0x30, 0xae, 0x25, 0xe3, 0x4a, + 0xa1, 0xe3, 0x4e, 0xa2, 0xb2, 0x15, 0xbd, 0x36, 0xfe, 0x9e, 0xa8, 0x47, 0xe1, 0xec, 0x38, 0x74, + 0x5b, 0x1a, 0x86, 0x68, 0x6e, 0x1c, 0xe5, 0xbc, 0x27, 0xdb, 0xdc, 0x41, 0x45, 0x9b, 0x27, 0x28, + 0x58, 0x50, 0xf9, 0xb8, 0xbc, 0x39, 0x1b, 0xcc, 0x3c, 0x06, 0xf7, 0x5c, 0x0b, 0xc3, 0xdb, 0xf0, + 0xac, 0xfc, 0xb4, 0x75, 0x78, 0x93, 0x81, 0x75, 0xcd, 0x8f, 0x7e, 0x50, 0x9f, 0x64, 0x56, 0xa3, + 0xb2, 0x50, 0x7b, 0x12, 0xcc, 0x64, 0x03, 0x10, 0x2b, 0x74, 0xb1, 0x54, 0xb1, 0x36, 0x28, 0x0c, + 0x58, 0x5b, 0x27, 0xf3, 0x64, 0xe1, 0xc2, 0xe2, 0x74, 0x34, 0x5e, 0xc2, 0x87, 0xa9, 0x76, 0x5b, + 0x2b, 0xde, 0xfa, 0x74, 0x15, 0x7b, 0x8a, 0x6e, 0x55, 0xad, 0x55, 0x99, 0xda, 0xa3, 0xe0, 0xea, + 0x50, 0x37, 0xaa, 0xf2, 0xcf, 0x54, 0x5d, 0xa9, 0x22, 0x23, 0x9e, 0x34, 0x58, 0xf8, 0x8b, 0x27, + 0xde, 0x90, 0xae, 0x1b, 0x27, 0xa8, 0x3a, 0x52, 0xc4, 0x6d, 0xdc, 0x50, 0x4e, 0xa6, 0x50, 0x9f, + 0x3a, 0x53, 0x7e, 0x7d, 0x42, 0xfe, 0x52, 0xba, 0xee, 0x72, 0xe9, 0x78, 0x50, 0x29, 0x96, 0x2e, + 0x05, 0x17, 0x87, 0x8f, 0xfb, 0x3d, 0x16, 0xb0, 0xf8, 0xde, 0x0f, 0xce, 0x2f, 0x97, 0xb3, 0x74, + 0x7f, 0x6d, 0xb5, 0xf6, 0xd6, 0x0f, 0x2e, 0x9f, 0xac, 0x60, 0xed, 0x6e, 0xf4, 0xaf, 0xd9, 0x8a, + 0x4e, 0xe9, 0x48, 0xe3, 0xde, 0xff, 0x44, 0x07, 0x0d, 0x6b, 0x6e, 0x93, 0xfd, 0x4f, 0x3e, 0x29, + 0xbe, 0xd4, 0x57, 0x3a, 0xb7, 0x37, 0x93, 0x30, 0x41, 0x65, 0xb1, 0x07, 0x61, 0x8b, 0x5b, 0x99, + 0x84, 0x29, 0x2a, 0xe9, 0xd0, 0xdc, 0x3c, 0x89, 0xe0, 0x0f, 0xc9, 0xc1, 0x86, 0x12, 0x43, 0x01, + 0x0a, 0x0c, 0xef, 0x85, 0x06, 0x78, 0x7b, 0xe7, 0xdb, 0x8f, 0x77, 0xfe, 0x8d, 0xda, 0x42, 0xb5, + 0x43, 0x4c, 0xf1, 0x14, 0xac, 0xe6, 0x09, 0x58, 0x66, 0xb7, 0xac, 0x83, 0x94, 0x8d, 0xd6, 0x26, + 0xb3, 0x8d, 0x60, 0xef, 0x33, 0x99, 0xda, 0xf9, 0x5a, 0xf7, 0xeb, 0x64, 0x69, 0x97, 0x1c, 0x1c, + 0x51, 0xef, 0xf0, 0x88, 0x7a, 0xc7, 0x47, 0x94, 0x6c, 0x17, 0x94, 0x7c, 0x28, 0x28, 0xd9, 0x2f, + 0x28, 0x39, 0x28, 0x28, 0xf9, 0x5e, 0x50, 0xf2, 0xb3, 0xa0, 0xde, 0x71, 0x41, 0xc9, 0x6e, 0x9f, + 0x7a, 0x7b, 0x7d, 0x4a, 0x0e, 0xfa, 0xd4, 0x3b, 0xec, 0x53, 0xef, 0xd5, 0x0b, 0x81, 0xfa, 0xb5, + 0x88, 0x72, 0xec, 0x39, 0x30, 0x86, 0x47, 0x99, 0x65, 0xe5, 0xa1, 0x83, 0x26, 0x0d, 0xb5, 0xc1, + 0x5c, 0xb6, 0xc1, 0x84, 0x43, 0xcc, 0x74, 0x4b, 0x20, 0x83, 0x4d, 0x57, 0x6d, 0xc1, 0xa9, 0xbf, + 0x82, 0xd6, 0xb9, 0x72, 0x23, 0x6e, 0xfd, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x5a, 0xb6, 0x38, 0xe3, + 0x35, 0x04, 0x00, 0x00, } func (this *GetUpgradeStatusRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/malicious_user_mitigation/crudapi/api.vesapi.go b/pbgo/extschema/schema/malicious_user_mitigation/crudapi/api.vesapi.go index 58b95bf0d..af91220ba 100644 --- a/pbgo/extschema/schema/malicious_user_mitigation/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/malicious_user_mitigation/crudapi/api.vesapi.go @@ -3190,10 +3190,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/malicious_user_mitigation/public_crudapi.vesapi.go b/pbgo/extschema/schema/malicious_user_mitigation/public_crudapi.vesapi.go index 54eb73666..24b8a583a 100644 --- a/pbgo/extschema/schema/malicious_user_mitigation/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/malicious_user_mitigation/public_crudapi.vesapi.go @@ -2875,10 +2875,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2935,10 +2939,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3041,10 +3049,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/marketplace/aws_account/crudapi/api.vesapi.go b/pbgo/extschema/schema/marketplace/aws_account/crudapi/api.vesapi.go index 6c09cb41c..123655817 100644 --- a/pbgo/extschema/schema/marketplace/aws_account/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/marketplace/aws_account/crudapi/api.vesapi.go @@ -2707,24 +2707,30 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.min_len": "1" } }, - "signup": { + "signup_id": { + "type": "string", + "description": " Identifier for the corresponding signup object", + "title": "Signup ID", + "x-displayname": "Signup ID" + }, + "subscription_status": { + "description": " AWSSubscriptionStatus indicates F5XC AWS marketplace product subscription status per account", + "title": "AWSSubscriptionStatus", + "$ref": "#/definitions/aws_accountAWSSubscriptionStatus", + "x-displayname": "AWS Customer Subscription Status" + }, + "tenant": { "type": "array", - "description": " Reference to signup object\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", - "title": "signup", + "description": " Reference to tenant object\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Tenant Reference", "maxItems": 1, "items": { "$ref": "#/definitions/schemaObjectRefType" }, - "x-displayname": "Signup Reference", + "x-displayname": "Tenant Reference", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "1" } - }, - "subscription_status": { - "description": " AWSSubscriptionStatus indicates F5XC AWS marketplace product subscription status per account", - "title": "AWSSubscriptionStatus", - "$ref": "#/definitions/aws_accountAWSSubscriptionStatus", - "x-displayname": "AWS Customer Subscription Status" } } }, @@ -3029,10 +3035,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.pb.go b/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.pb.go index 4bda9b370..b2ad1ff6c 100644 --- a/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.pb.go +++ b/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.pb.go @@ -172,6 +172,11 @@ type AWSAccountSignupRequest struct { // x-displayName: "CRM Details" // This field holds CRM information CrmDetails *schema.CRMInfo `protobuf:"bytes,4,opt,name=crm_details,json=crmDetails,proto3" json:"crm_details,omitempty"` + // account_id + // + // x-displayName: "Account ID" + // Identifier for the aws_account object + AccountId string `protobuf:"bytes,5,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` } func (m *AWSAccountSignupRequest) Reset() { *m = AWSAccountSignupRequest{} } @@ -234,6 +239,13 @@ func (m *AWSAccountSignupRequest) GetCrmDetails() *schema.CRMInfo { return nil } +func (m *AWSAccountSignupRequest) GetAccountId() string { + if m != nil { + return m.AccountId + } + return "" +} + // AWSAccountSignupResponse // // x-displayName: "AWS Account Signup Response" @@ -291,53 +303,54 @@ func init() { } var fileDescriptor_4137c9133a2982e0 = []byte{ - // 731 bytes of a gzipped FileDescriptorProto + // 746 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xcd, 0x6e, 0xd3, 0x4a, - 0x14, 0xc7, 0x33, 0xc9, 0xd5, 0x95, 0xae, 0x53, 0xdd, 0x56, 0xb9, 0x5f, 0xb9, 0xa1, 0x32, 0xad, - 0x11, 0x12, 0xaa, 0x14, 0x8f, 0x1a, 0xbe, 0x44, 0x90, 0x40, 0xa1, 0xb0, 0x68, 0x51, 0xf9, 0x48, - 0x55, 0x21, 0xc1, 0xc2, 0x9a, 0x38, 0x27, 0xae, 0xa9, 0xed, 0x19, 0x66, 0xc6, 0x69, 0xca, 0x0a, - 0xf5, 0x09, 0x90, 0x10, 0xef, 0xc0, 0x86, 0x27, 0x60, 0xd3, 0x1d, 0xac, 0x50, 0x25, 0x36, 0xdd, - 0x80, 0x5a, 0x87, 0x05, 0xcb, 0x3e, 0x02, 0xca, 0x8c, 0x13, 0x92, 0x50, 0xaa, 0xa8, 0x3b, 0x4f, - 0xfe, 0xe7, 0xff, 0xd3, 0x39, 0xff, 0x9c, 0x19, 0xe3, 0x4e, 0x1b, 0x84, 0xed, 0x53, 0x2c, 0xdc, - 0x0d, 0x08, 0x09, 0x0e, 0x09, 0xdf, 0x04, 0xc9, 0x02, 0xe2, 0x02, 0x26, 0x5b, 0xc2, 0x21, 0xae, - 0x4b, 0xe3, 0x48, 0x62, 0x16, 0x37, 0x02, 0xdf, 0x75, 0x68, 0xd4, 0xa0, 0x84, 0x37, 0x1d, 0x37, - 0x16, 0x92, 0x86, 0x40, 0x98, 0x6f, 0x33, 0x4e, 0x25, 0x2d, 0x9c, 0xd7, 0x18, 0x5b, 0x63, 0xec, - 0x21, 0x8c, 0x3d, 0x84, 0x29, 0x95, 0x3d, 0x5f, 0x6e, 0xc4, 0x0d, 0xdb, 0xa5, 0x21, 0xf6, 0xa8, - 0x47, 0xb1, 0x72, 0x37, 0xe2, 0x96, 0x3a, 0xa9, 0x83, 0xfa, 0xd2, 0xd4, 0xd2, 0xac, 0x47, 0xa9, - 0x17, 0x00, 0x26, 0xcc, 0xc7, 0x24, 0x8a, 0xa8, 0x24, 0xd2, 0xa7, 0x91, 0x48, 0xd5, 0xb3, 0xa9, - 0x3a, 0x60, 0x48, 0x3f, 0x04, 0x21, 0x49, 0xc8, 0xd2, 0x82, 0xca, 0x64, 0xb3, 0xd1, 0xc6, 0x53, - 0x70, 0x65, 0xea, 0x59, 0x9c, 0xcc, 0x23, 0xb7, 0x19, 0xf4, 0xfb, 0x38, 0x33, 0x6a, 0xa1, 0x6c, - 0xb8, 0xc9, 0x73, 0xa3, 0xa2, 0xf0, 0xbd, 0x28, 0x66, 0xda, 0xee, 0xb4, 0x2b, 0x69, 0xd1, 0xff, - 0xa3, 0x45, 0xc3, 0xf0, 0xd9, 0x51, 0xa9, 0x4d, 0x02, 0xbf, 0x49, 0x24, 0xa4, 0xaa, 0x35, 0xa6, - 0x82, 0x80, 0xa8, 0x3d, 0xd6, 0xc1, 0xdc, 0x58, 0x8d, 0x0f, 0x5b, 0xce, 0x48, 0x85, 0xf5, 0xd0, - 0xf8, 0xab, 0x0e, 0x9e, 0x2f, 0x24, 0x57, 0xf9, 0xd6, 0xe1, 0x59, 0x0c, 0x42, 0x16, 0xaa, 0x46, - 0xb1, 0xe3, 0x90, 0xf0, 0x79, 0xe4, 0x0c, 0xa5, 0xe0, 0x48, 0xba, 0x09, 0x51, 0x11, 0xcd, 0xa1, - 0x0b, 0x7f, 0xd4, 0x8b, 0x9d, 0x72, 0x4f, 0x2f, 0x0f, 0xe9, 0x65, 0xa5, 0x5b, 0xd7, 0x8c, 0xbf, - 0x47, 0x91, 0x82, 0xd1, 0x48, 0x40, 0x61, 0xde, 0x98, 0xe2, 0xd0, 0xf4, 0x39, 0xb8, 0xd2, 0x89, - 0x79, 0x90, 0x72, 0xf2, 0xfd, 0xdf, 0xd6, 0x79, 0x60, 0xbd, 0xcd, 0x1a, 0xff, 0xd5, 0x1e, 0xad, - 0xd5, 0x74, 0xd2, 0x6b, 0x2a, 0xb0, 0x7e, 0x4b, 0x2b, 0xc6, 0xb4, 0x4b, 0x43, 0x46, 0xa2, 0x6d, - 0xa7, 0x09, 0x92, 0xf8, 0x81, 0x50, 0x84, 0x7c, 0x65, 0xde, 0x1e, 0x5d, 0x40, 0x9d, 0xb3, 0xbd, - 0xa4, 0x8b, 0x57, 0x41, 0x92, 0xfa, 0x9f, 0xa9, 0xf3, 0xb6, 0x36, 0x16, 0x6a, 0xc6, 0x54, 0x2c, - 0x80, 0x0f, 0x40, 0x59, 0x05, 0x32, 0x8f, 0x07, 0xad, 0x0b, 0xe0, 0x8a, 0x92, 0xef, 0x79, 0xfa, - 0x88, 0x15, 0x63, 0x3a, 0x5d, 0x88, 0x01, 0x25, 0x77, 0x52, 0x3b, 0xe9, 0x4c, 0xba, 0x9d, 0xd4, - 0xd9, 0x67, 0x5d, 0x35, 0xf2, 0x2e, 0x0f, 0x07, 0x9c, 0xdf, 0x14, 0xe7, 0xdf, 0x31, 0xce, 0x52, - 0x7d, 0x75, 0x39, 0x6a, 0xd1, 0xba, 0xe1, 0xf2, 0x30, 0x35, 0x5a, 0x25, 0xa3, 0xf8, 0x73, 0x5c, - 0x3a, 0xee, 0xca, 0x41, 0xce, 0x98, 0xb9, 0xaf, 0xef, 0xec, 0x92, 0xba, 0xb2, 0xb5, 0x07, 0xcb, - 0x85, 0xcf, 0xc8, 0xf8, 0x47, 0xff, 0x39, 0xc0, 0xef, 0xc1, 0xd6, 0x0f, 0x73, 0xa1, 0x6a, 0x4f, - 0x74, 0x8d, 0xed, 0x63, 0xb6, 0xa5, 0x74, 0xfd, 0x54, 0x5e, 0xdd, 0xa7, 0x75, 0x37, 0x79, 0x5f, - 0xcc, 0xb7, 0x2e, 0x77, 0xdc, 0x72, 0x44, 0x49, 0x2c, 0x37, 0x76, 0x3e, 0x7d, 0x7d, 0x95, 0xbd, - 0x62, 0x2d, 0xe2, 0x88, 0x3a, 0xbd, 0x33, 0x8e, 0x48, 0x08, 0x82, 0x11, 0x17, 0x04, 0x16, 0xdb, - 0x42, 0x42, 0xd8, 0xbb, 0x8d, 0x58, 0x39, 0x04, 0x21, 0x02, 0xf3, 0x74, 0x9e, 0x2a, 0x5a, 0x28, - 0x7c, 0x41, 0xc6, 0x8c, 0xce, 0x61, 0x68, 0xb4, 0x1b, 0x13, 0xb6, 0xf7, 0x8b, 0xcd, 0x2b, 0xdd, - 0x3c, 0xb5, 0x3f, 0x1d, 0x71, 0xf9, 0xb8, 0x11, 0x2f, 0x59, 0x78, 0xe2, 0x11, 0xf5, 0x0e, 0x55, - 0xd1, 0x42, 0x29, 0xbf, 0xfb, 0x0e, 0xe5, 0x76, 0x3e, 0x16, 0x73, 0xbb, 0x59, 0x74, 0xeb, 0x35, - 0xda, 0x3b, 0x34, 0x33, 0xfb, 0x87, 0x66, 0xe6, 0xe8, 0xd0, 0x44, 0x2f, 0x12, 0x13, 0xbd, 0x49, - 0x4c, 0xf4, 0x21, 0x31, 0xd1, 0x5e, 0x62, 0xa2, 0x83, 0xc4, 0x44, 0xdf, 0x12, 0x33, 0x73, 0x94, - 0x98, 0xe8, 0x65, 0xd7, 0xcc, 0xec, 0x76, 0x4d, 0xb4, 0xd7, 0x35, 0x33, 0xfb, 0x5d, 0x33, 0xf3, - 0xf8, 0x89, 0x47, 0xd9, 0xa6, 0x67, 0xb7, 0x69, 0x20, 0x81, 0x73, 0x62, 0xc7, 0x02, 0xab, 0x8f, - 0x16, 0xe5, 0x61, 0x99, 0x71, 0xda, 0xf6, 0x9b, 0xc0, 0xcb, 0x7d, 0x19, 0xb3, 0x86, 0x47, 0x31, - 0x74, 0x64, 0xff, 0x29, 0x3b, 0xf1, 0x85, 0x6c, 0xfc, 0xae, 0xde, 0x96, 0x8b, 0xdf, 0x03, 0x00, - 0x00, 0xff, 0xff, 0x31, 0x13, 0x1e, 0xa2, 0x61, 0x06, 0x00, 0x00, + 0x14, 0xc7, 0x33, 0xc9, 0xbd, 0x57, 0xea, 0xa4, 0xba, 0xad, 0x72, 0xbf, 0x72, 0x73, 0x7b, 0x4d, + 0x6b, 0x84, 0x84, 0x2a, 0xc5, 0xa3, 0x86, 0x2f, 0x11, 0x24, 0x50, 0x28, 0x2c, 0x52, 0x54, 0x3e, + 0x52, 0x55, 0x48, 0xb0, 0xb0, 0x26, 0xce, 0x89, 0x6b, 0x6a, 0x7b, 0xcc, 0xcc, 0x38, 0x4d, 0x59, + 0xa1, 0x3e, 0x01, 0x12, 0xe2, 0x1d, 0x78, 0x07, 0x36, 0xdd, 0xc1, 0x02, 0xa1, 0x4a, 0x6c, 0xba, + 0x01, 0xb5, 0x0e, 0x0b, 0x96, 0x7d, 0x04, 0x94, 0xb1, 0x1d, 0x92, 0x50, 0xaa, 0xa8, 0x3b, 0xdb, + 0xff, 0xf3, 0xff, 0xe9, 0x7f, 0x8e, 0xcf, 0x0c, 0xbe, 0xdd, 0x01, 0x61, 0x38, 0x8c, 0x08, 0x6b, + 0x03, 0x3c, 0x4a, 0x3c, 0xca, 0x37, 0x41, 0x06, 0x2e, 0xb5, 0x80, 0xd0, 0x2d, 0x61, 0x52, 0xcb, + 0x62, 0xa1, 0x2f, 0x49, 0x10, 0x36, 0x5d, 0xc7, 0x32, 0x99, 0xdf, 0x64, 0x94, 0xb7, 0x4c, 0x2b, + 0x14, 0x92, 0x79, 0x40, 0x03, 0xc7, 0x08, 0x38, 0x93, 0xac, 0x70, 0x2e, 0xc6, 0x18, 0x31, 0xc6, + 0x18, 0xc2, 0x18, 0x43, 0x98, 0x52, 0xd9, 0x76, 0xe4, 0x46, 0xd8, 0x34, 0x2c, 0xe6, 0x11, 0x9b, + 0xd9, 0x8c, 0x28, 0x77, 0x33, 0x6c, 0xab, 0x37, 0xf5, 0xa2, 0x9e, 0x62, 0x6a, 0x69, 0xce, 0x66, + 0xcc, 0x76, 0x81, 0xd0, 0xc0, 0x21, 0xd4, 0xf7, 0x99, 0xa4, 0xd2, 0x61, 0xbe, 0x48, 0xd4, 0x33, + 0x89, 0x3a, 0x60, 0x48, 0xc7, 0x03, 0x21, 0xa9, 0x17, 0x24, 0x05, 0x95, 0xc9, 0x7a, 0x63, 0xcd, + 0x27, 0x60, 0xc9, 0xc4, 0xb3, 0x34, 0x99, 0x47, 0x6e, 0x07, 0x90, 0xe6, 0xf8, 0x6f, 0xd4, 0xc2, + 0x82, 0xe1, 0x90, 0x67, 0x47, 0x45, 0xe1, 0xd8, 0x7e, 0x18, 0xc4, 0x76, 0xb3, 0x53, 0x49, 0x8a, + 0xfe, 0x1d, 0x2d, 0x1a, 0x86, 0xcf, 0x8d, 0x4a, 0x1d, 0xea, 0x3a, 0x2d, 0x2a, 0x21, 0x51, 0xf5, + 0x31, 0x15, 0x04, 0xf8, 0x9d, 0xb1, 0x04, 0xf3, 0x63, 0x35, 0x0e, 0x6c, 0x99, 0x23, 0x15, 0xfa, + 0x03, 0xfc, 0x47, 0x03, 0x6c, 0x47, 0x48, 0xae, 0xe6, 0xdb, 0x80, 0xa7, 0x21, 0x08, 0x59, 0xa8, + 0xe2, 0x62, 0xd7, 0xa4, 0xde, 0x33, 0xdf, 0x1c, 0x9a, 0x82, 0x29, 0xd9, 0x26, 0xf8, 0x45, 0x34, + 0x8f, 0xce, 0x4f, 0x35, 0x8a, 0xdd, 0x72, 0x5f, 0x2f, 0x0f, 0xe9, 0x65, 0xa5, 0xeb, 0x57, 0xf1, + 0x9f, 0xa3, 0x48, 0x11, 0x30, 0x5f, 0x40, 0x61, 0x01, 0x4f, 0x73, 0x68, 0x39, 0x1c, 0x2c, 0x69, + 0x86, 0xdc, 0x4d, 0x38, 0xf9, 0xf4, 0xdb, 0x3a, 0x77, 0xf5, 0xf7, 0x59, 0xfc, 0x4f, 0xed, 0xe1, + 0x5a, 0x2d, 0x9e, 0xf4, 0x9a, 0x1a, 0x58, 0x1a, 0x69, 0x05, 0xcf, 0x58, 0xcc, 0x0b, 0xa8, 0xbf, + 0x6d, 0xb6, 0x40, 0x52, 0xc7, 0x15, 0x8a, 0x90, 0xaf, 0x2c, 0x18, 0xa3, 0x0b, 0x18, 0xcf, 0xd9, + 0x58, 0x8e, 0x8b, 0x57, 0x41, 0xd2, 0xc6, 0xef, 0x89, 0xf3, 0x56, 0x6c, 0x2c, 0xd4, 0xf0, 0x74, + 0x28, 0x80, 0x0f, 0x40, 0x59, 0x05, 0xd2, 0x8e, 0x07, 0xad, 0x0b, 0xe0, 0x8a, 0x92, 0xef, 0x7b, + 0x52, 0xc4, 0x0a, 0x9e, 0x49, 0x16, 0x62, 0x40, 0xc9, 0x9d, 0x14, 0x27, 0xe9, 0x29, 0x8e, 0x93, + 0x38, 0x53, 0xd6, 0x15, 0x9c, 0xb7, 0xb8, 0x37, 0xe0, 0xfc, 0xa2, 0x38, 0x7f, 0x8f, 0x71, 0x96, + 0x1b, 0xab, 0x75, 0xbf, 0xcd, 0x1a, 0xd8, 0xe2, 0x5e, 0x6a, 0xfc, 0x1f, 0xe3, 0x34, 0x84, 0xd3, + 0x2a, 0xfe, 0xaa, 0x06, 0x3a, 0x95, 0x7c, 0xa9, 0xb7, 0xf4, 0x12, 0x2e, 0xfe, 0x38, 0xcd, 0xf8, + 0x6f, 0x54, 0x0e, 0x72, 0x78, 0xf6, 0x5e, 0x7c, 0xa4, 0x97, 0xd5, 0x89, 0xae, 0xdd, 0xaf, 0x17, + 0x3e, 0x21, 0xfc, 0x57, 0xfc, 0xef, 0x80, 0xdf, 0x85, 0xad, 0xef, 0xe6, 0x42, 0xd5, 0x98, 0xe8, + 0x94, 0x1b, 0xc7, 0x2c, 0x53, 0xe9, 0xda, 0xa9, 0xbc, 0x71, 0x4e, 0xfd, 0x4e, 0xf4, 0xb6, 0x98, + 0x6f, 0x5f, 0xea, 0x5a, 0x65, 0x9f, 0xd1, 0x50, 0x6e, 0xec, 0x7c, 0xfc, 0xf2, 0x32, 0x7b, 0x59, + 0x5f, 0x22, 0x3e, 0x33, 0xfb, 0xef, 0xc4, 0xa7, 0x1e, 0x88, 0x80, 0x5a, 0x20, 0x88, 0xd8, 0x16, + 0x12, 0xbc, 0xfe, 0x61, 0x25, 0xca, 0x21, 0x28, 0x15, 0x84, 0x27, 0xfd, 0x54, 0xd1, 0x62, 0xe1, + 0x33, 0xc2, 0xb3, 0xf1, 0x1c, 0x86, 0x5a, 0xbb, 0x3e, 0x61, 0xbc, 0x9f, 0x2c, 0x66, 0xe9, 0xc6, + 0xa9, 0xfd, 0x49, 0x8b, 0xf5, 0xe3, 0x5a, 0xbc, 0xa8, 0x93, 0x89, 0x5b, 0x8c, 0x57, 0xac, 0x8a, + 0x16, 0x4b, 0xf9, 0xdd, 0x37, 0x28, 0xb7, 0xf3, 0xa1, 0x98, 0xdb, 0xcd, 0xa2, 0x9b, 0xaf, 0xd0, + 0xde, 0xa1, 0x96, 0xd9, 0x3f, 0xd4, 0x32, 0x47, 0x87, 0x1a, 0x7a, 0x1e, 0x69, 0xe8, 0x75, 0xa4, + 0xa1, 0x77, 0x91, 0x86, 0xf6, 0x22, 0x0d, 0x1d, 0x44, 0x1a, 0xfa, 0x1a, 0x69, 0x99, 0xa3, 0x48, + 0x43, 0x2f, 0x7a, 0x5a, 0x66, 0xb7, 0xa7, 0xa1, 0xbd, 0x9e, 0x96, 0xd9, 0xef, 0x69, 0x99, 0x47, + 0x8f, 0x6d, 0x16, 0x6c, 0xda, 0x46, 0x87, 0xb9, 0x12, 0x38, 0xa7, 0x46, 0x28, 0x88, 0x7a, 0x68, + 0x33, 0xee, 0x95, 0x03, 0xce, 0x3a, 0x4e, 0x0b, 0x78, 0x39, 0x95, 0x49, 0xd0, 0xb4, 0x19, 0x81, + 0xae, 0x4c, 0x6f, 0xba, 0x13, 0x2f, 0xd0, 0xe6, 0x6f, 0xea, 0xea, 0xb9, 0xf0, 0x2d, 0x00, 0x00, + 0xff, 0xff, 0x1b, 0x41, 0x87, 0x6c, 0x80, 0x06, 0x00, 0x00, } func (this *RegistrationRequest) Equal(that interface{}) bool { @@ -419,6 +432,9 @@ func (this *AWSAccountSignupRequest) Equal(that interface{}) bool { if !this.CrmDetails.Equal(that1.CrmDetails) { return false } + if this.AccountId != that1.AccountId { + return false + } return true } func (this *AWSAccountSignupResponse) Equal(that interface{}) bool { @@ -466,7 +482,7 @@ func (this *AWSAccountSignupRequest) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 8) + s := make([]string, 0, 9) s = append(s, "&aws_account.AWSAccountSignupRequest{") if this.CompanyDetails != nil { s = append(s, "CompanyDetails: "+fmt.Sprintf("%#v", this.CompanyDetails)+",\n") @@ -480,6 +496,7 @@ func (this *AWSAccountSignupRequest) GoString() string { if this.CrmDetails != nil { s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") } + s = append(s, "AccountId: "+fmt.Sprintf("%#v", this.AccountId)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -713,6 +730,13 @@ func (m *AWSAccountSignupRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) _ = i var l int _ = l + if len(m.AccountId) > 0 { + i -= len(m.AccountId) + copy(dAtA[i:], m.AccountId) + i = encodeVarintPublicOnboardCustomeapi(dAtA, i, uint64(len(m.AccountId))) + i-- + dAtA[i] = 0x2a + } if m.CrmDetails != nil { { size, err := m.CrmDetails.MarshalToSizedBuffer(dAtA[:i]) @@ -846,6 +870,10 @@ func (m *AWSAccountSignupRequest) Size() (n int) { l = m.CrmDetails.Size() n += 1 + l + sovPublicOnboardCustomeapi(uint64(l)) } + l = len(m.AccountId) + if l > 0 { + n += 1 + l + sovPublicOnboardCustomeapi(uint64(l)) + } return n } @@ -893,6 +921,7 @@ func (this *AWSAccountSignupRequest) String() string { `UserDetails:` + strings.Replace(fmt.Sprintf("%v", this.UserDetails), "UserMeta", "signup.UserMeta", 1) + `,`, `AccountDetails:` + strings.Replace(fmt.Sprintf("%v", this.AccountDetails), "AccountMeta", "signup.AccountMeta", 1) + `,`, `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, + `AccountId:` + fmt.Sprintf("%v", this.AccountId) + `,`, `}`, }, "") return s @@ -1257,6 +1286,38 @@ func (m *AWSAccountSignupRequest) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AccountId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicOnboardCustomeapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicOnboardCustomeapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicOnboardCustomeapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AccountId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipPublicOnboardCustomeapi(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesapi.go b/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesapi.go index effb7b56f..b315a7f98 100644 --- a/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesapi.go +++ b/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesapi.go @@ -222,6 +222,7 @@ func (c *OnboardCustomAPIRestClient) doRPCSignupAWSAccount(ctx context.Context, q := hReq.URL.Query() _ = q q.Add("account_details", fmt.Sprintf("%v", req.AccountDetails)) + q.Add("account_id", fmt.Sprintf("%v", req.AccountId)) q.Add("company_details", fmt.Sprintf("%v", req.CompanyDetails)) q.Add("crm_details", fmt.Sprintf("%v", req.CrmDetails)) q.Add("user_details", fmt.Sprintf("%v", req.UserDetails)) @@ -646,6 +647,12 @@ var OnboardCustomAPISwaggerJSON string = `{ "ves.io.schema.rules.message.required": "true" } }, + "account_id": { + "type": "string", + "description": " Identifier for the aws_account object", + "title": "account_id", + "x-displayname": "Account ID" + }, "company_details": { "description": " Details of the company\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Company Details", diff --git a/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesmsg.go b/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesmsg.go index c4fcd80d6..677f99ede 100644 --- a/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesmsg.go +++ b/pbgo/extschema/schema/marketplace/aws_account/public_onboard_customeapi.vesmsg.go @@ -152,6 +152,15 @@ func (v *ValidateAWSAccountSignupRequest) Validate(ctx context.Context, pm inter } + if fv, exists := v.FldValidators["account_id"]; exists { + + vOpts := append(opts, db.WithValidateField("account_id")) + if err := fv(ctx, m.GetAccountId(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["company_details"]; exists { vOpts := append(opts, db.WithValidateField("company_details")) diff --git a/pbgo/extschema/schema/marketplace/aws_account/types.pb.go b/pbgo/extschema/schema/marketplace/aws_account/types.pb.go index 06a31b872..eb8a2822a 100644 --- a/pbgo/extschema/schema/marketplace/aws_account/types.pb.go +++ b/pbgo/extschema/schema/marketplace/aws_account/types.pb.go @@ -97,11 +97,16 @@ type GlobalSpecType struct { // x-displayName: "AWS Customer Subscription Status" // AWSSubscriptionStatus indicates F5XC AWS marketplace product subscription status per account SubscriptionStatus AWSSubscriptionStatus `protobuf:"varint,4,opt,name=subscription_status,json=subscriptionStatus,proto3,enum=ves.io.schema.marketplace.aws_account.AWSSubscriptionStatus" json:"subscription_status,omitempty"` - // signup + // Tenant Reference // - // x-displayName: "Signup Reference" - // Reference to signup object - Signup []*schema.ObjectRefType `protobuf:"bytes,5,rep,name=signup,proto3" json:"signup,omitempty"` + // x-displayName: "Tenant Reference" + // Reference to tenant object + Tenant []*schema.ObjectRefType `protobuf:"bytes,6,rep,name=tenant,proto3" json:"tenant,omitempty"` + // Signup ID + // + // x-displayName: "Signup ID" + // Identifier for the corresponding signup object + SignupId string `protobuf:"bytes,7,opt,name=signup_id,json=signupId,proto3" json:"signup_id,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } @@ -160,13 +165,20 @@ func (m *GlobalSpecType) GetSubscriptionStatus() AWSSubscriptionStatus { return SUBSCRIBE_SUCCESS } -func (m *GlobalSpecType) GetSignup() []*schema.ObjectRefType { +func (m *GlobalSpecType) GetTenant() []*schema.ObjectRefType { if m != nil { - return m.Signup + return m.Tenant } return nil } +func (m *GlobalSpecType) GetSignupId() string { + if m != nil { + return m.SignupId + } + return "" +} + func init() { proto.RegisterEnum("ves.io.schema.marketplace.aws_account.AWSSubscriptionStatus", AWSSubscriptionStatus_name, AWSSubscriptionStatus_value) golang_proto.RegisterEnum("ves.io.schema.marketplace.aws_account.AWSSubscriptionStatus", AWSSubscriptionStatus_name, AWSSubscriptionStatus_value) @@ -182,43 +194,44 @@ func init() { } var fileDescriptor_1306e5eee3922dd1 = []byte{ - // 564 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x4f, 0x6b, 0x13, 0x41, - 0x18, 0xc6, 0x77, 0xba, 0x6d, 0xc1, 0x6d, 0x09, 0x71, 0x42, 0x71, 0xad, 0x65, 0x0c, 0x82, 0x50, - 0x84, 0xee, 0x62, 0x05, 0x41, 0xf0, 0xd2, 0xa4, 0xb5, 0x2c, 0x48, 0x95, 0xac, 0x41, 0xd0, 0xc3, - 0x32, 0xbb, 0x3b, 0xd9, 0x8e, 0xdd, 0xcd, 0x0c, 0x33, 0xb3, 0x89, 0x39, 0x08, 0x82, 0x5f, 0x40, - 0xbc, 0xf9, 0x0d, 0xc4, 0x8f, 0xe0, 0xa9, 0x47, 0x8f, 0x39, 0xe6, 0x68, 0x36, 0x17, 0xbd, 0xf5, - 0x1b, 0x28, 0xd9, 0x6c, 0xcc, 0x1f, 0xad, 0x78, 0x7b, 0xe7, 0xfd, 0x3d, 0xcf, 0x33, 0xfb, 0xce, - 0xce, 0x18, 0x77, 0x3b, 0x44, 0x5a, 0x94, 0xd9, 0x32, 0x38, 0x25, 0x09, 0xb6, 0x13, 0x2c, 0xce, - 0x88, 0xe2, 0x31, 0x0e, 0x88, 0x8d, 0xbb, 0xd2, 0xc3, 0x41, 0xc0, 0xd2, 0xb6, 0xb2, 0x55, 0x8f, - 0x13, 0x69, 0x71, 0xc1, 0x14, 0x83, 0xb7, 0x27, 0x16, 0x6b, 0x62, 0xb1, 0xe6, 0x2c, 0xd6, 0x9c, - 0x65, 0x7b, 0x2f, 0xa2, 0xea, 0x34, 0xf5, 0xad, 0x80, 0x25, 0x76, 0xc4, 0x22, 0x66, 0xe7, 0x6e, - 0x3f, 0x6d, 0xe5, 0xab, 0x7c, 0x91, 0x57, 0x93, 0xd4, 0xed, 0xeb, 0x11, 0x63, 0x51, 0x4c, 0x66, - 0x2a, 0xdc, 0xee, 0x15, 0xe8, 0xe6, 0x32, 0x52, 0x34, 0x21, 0x52, 0xe1, 0x84, 0x17, 0x82, 0x1b, - 0x8b, 0x43, 0x30, 0xae, 0x28, 0x6b, 0xcb, 0x69, 0xf0, 0x22, 0x9c, 0x9b, 0x64, 0x7b, 0x67, 0x11, - 0x75, 0x70, 0x4c, 0x43, 0xac, 0x48, 0x41, 0xab, 0x4b, 0x94, 0x92, 0xae, 0xb7, 0x10, 0x7d, 0xeb, - 0x9d, 0x6e, 0x94, 0x8e, 0x63, 0xe6, 0xe3, 0xd8, 0xe5, 0x24, 0x78, 0xd6, 0xe3, 0x04, 0x1e, 0x1a, - 0x95, 0x20, 0x95, 0x8a, 0x25, 0x44, 0x78, 0x34, 0x24, 0x6d, 0x45, 0x5b, 0x94, 0x08, 0x13, 0x54, - 0xc1, 0xee, 0x95, 0x5a, 0xe5, 0xcb, 0x8f, 0x73, 0x7d, 0x4d, 0xe8, 0xe6, 0x4f, 0x30, 0xae, 0x56, - 0xc5, 0x4a, 0x19, 0x34, 0xe0, 0x54, 0xef, 0xfc, 0x96, 0xc3, 0x07, 0x46, 0x69, 0xee, 0x28, 0x3d, - 0x1a, 0x9a, 0x2b, 0x97, 0x07, 0x6c, 0xe2, 0xae, 0x3c, 0x98, 0x28, 0x9d, 0x10, 0xde, 0x37, 0x36, - 0xb9, 0x60, 0x61, 0x1a, 0x28, 0x2f, 0x60, 0x21, 0x31, 0xf5, 0xcb, 0x8d, 0x1b, 0x85, 0xb0, 0xce, - 0x42, 0x02, 0x13, 0xa3, 0x22, 0x53, 0x5f, 0x06, 0x82, 0xe6, 0x23, 0x7a, 0x52, 0x61, 0x95, 0x4a, - 0x73, 0xb5, 0x0a, 0x76, 0x4b, 0xfb, 0x0f, 0xad, 0xff, 0xfa, 0xe7, 0xd6, 0xc1, 0x73, 0xd7, 0x9d, - 0x0b, 0x71, 0xf3, 0x8c, 0x06, 0x94, 0x7f, 0xf4, 0xa0, 0x63, 0xac, 0x4b, 0x1a, 0xb5, 0x53, 0x6e, - 0xae, 0x55, 0xf5, 0xdd, 0x8d, 0xfd, 0x9d, 0xa5, 0x1d, 0x9e, 0xf8, 0xaf, 0x48, 0xa0, 0x1a, 0xa4, - 0x35, 0x3e, 0xd5, 0x5a, 0xe5, 0xf3, 0x9b, 0x42, 0x9e, 0xcf, 0xf1, 0x01, 0x8c, 0x3f, 0xbf, 0xe8, - 0xdc, 0x51, 0xc6, 0xd6, 0x5f, 0xf7, 0x85, 0x5b, 0xc6, 0x55, 0xb7, 0x59, 0x73, 0xeb, 0x0d, 0xa7, - 0x76, 0xe4, 0xb9, 0xcd, 0x7a, 0xfd, 0xc8, 0x75, 0xcb, 0x1a, 0xbc, 0x66, 0x54, 0x9a, 0x27, 0x33, - 0xf0, 0xf4, 0xe8, 0xe4, 0xd0, 0x39, 0x39, 0x2e, 0x83, 0x65, 0x30, 0x75, 0xac, 0x40, 0x68, 0x94, - 0x66, 0xed, 0x47, 0x07, 0xce, 0xe3, 0xb2, 0x5e, 0xfb, 0x08, 0xfa, 0x43, 0xa4, 0x0d, 0x86, 0x48, - 0xbb, 0x18, 0x22, 0xf0, 0x36, 0x43, 0xe0, 0x53, 0x86, 0xc0, 0xd7, 0x0c, 0x81, 0x7e, 0x86, 0xc0, - 0x20, 0x43, 0xe0, 0x5b, 0x86, 0xc0, 0xf7, 0x0c, 0x69, 0x17, 0x19, 0x02, 0xef, 0x47, 0x48, 0x3b, - 0x1f, 0x21, 0xd0, 0x1f, 0x21, 0x6d, 0x30, 0x42, 0xda, 0x8b, 0x97, 0x11, 0xe3, 0x67, 0x91, 0xd5, - 0x61, 0xb1, 0x22, 0x42, 0x60, 0x2b, 0x95, 0x76, 0x5e, 0xb4, 0x98, 0x48, 0xf6, 0xb8, 0x60, 0x1d, - 0x1a, 0x12, 0xb1, 0x37, 0xc5, 0x36, 0xf7, 0x23, 0x66, 0x93, 0xd7, 0xaa, 0xb8, 0x8b, 0xff, 0x7e, - 0xad, 0xfe, 0x7a, 0x7e, 0x3d, 0xef, 0xfd, 0x0a, 0x00, 0x00, 0xff, 0xff, 0xdd, 0xec, 0xc1, 0xb2, - 0xdd, 0x03, 0x00, 0x00, + // 587 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0xcf, 0x6a, 0xd4, 0x40, + 0x18, 0xcf, 0x74, 0xdb, 0xb5, 0x9d, 0x96, 0x65, 0x9d, 0xa5, 0xb8, 0xb6, 0x65, 0x5c, 0x04, 0xa1, + 0x08, 0x4d, 0xb0, 0x82, 0x20, 0x78, 0xe9, 0x6e, 0x6b, 0x89, 0x48, 0x95, 0x8d, 0x45, 0xd0, 0x43, + 0x98, 0x24, 0xb3, 0xe9, 0xd8, 0x24, 0x33, 0xcc, 0x4c, 0xb6, 0xf6, 0x20, 0xf8, 0x08, 0xe2, 0xcd, + 0x17, 0x10, 0xf1, 0x11, 0x3c, 0xf5, 0xe8, 0xb1, 0xc7, 0x1e, 0x6d, 0xf6, 0xa2, 0xb7, 0xbe, 0x81, + 0xb2, 0xd9, 0xac, 0xfb, 0x47, 0x2b, 0xde, 0xbe, 0xf9, 0x7e, 0x7f, 0x32, 0xbf, 0x2f, 0xdf, 0xc0, + 0x3b, 0x5d, 0xaa, 0x4c, 0xc6, 0x2d, 0xe5, 0x1f, 0xd0, 0x98, 0x58, 0x31, 0x91, 0x87, 0x54, 0x8b, + 0x88, 0xf8, 0xd4, 0x22, 0x47, 0xca, 0x25, 0xbe, 0xcf, 0xd3, 0x44, 0x5b, 0xfa, 0x58, 0x50, 0x65, + 0x0a, 0xc9, 0x35, 0x47, 0xb7, 0x06, 0x12, 0x73, 0x20, 0x31, 0xc7, 0x24, 0xe6, 0x98, 0x64, 0x65, + 0x23, 0x64, 0xfa, 0x20, 0xf5, 0x4c, 0x9f, 0xc7, 0x56, 0xc8, 0x43, 0x6e, 0xe5, 0x6a, 0x2f, 0xed, + 0xe4, 0xa7, 0xfc, 0x90, 0x57, 0x03, 0xd7, 0x95, 0xeb, 0x21, 0xe7, 0x61, 0x44, 0x47, 0x2c, 0x92, + 0x1c, 0x17, 0xd0, 0x8d, 0x69, 0x48, 0xb3, 0x98, 0x2a, 0x4d, 0x62, 0x51, 0x10, 0x56, 0x27, 0x43, + 0x70, 0xa1, 0x19, 0x4f, 0xd4, 0xd0, 0x78, 0x12, 0x1c, 0x4b, 0xb2, 0xb2, 0x36, 0x09, 0x75, 0x49, + 0xc4, 0x02, 0xa2, 0x69, 0x81, 0x36, 0xa6, 0x50, 0x46, 0x8f, 0xdc, 0x09, 0xeb, 0x9b, 0x1f, 0x4b, + 0xb0, 0xb2, 0x1b, 0x71, 0x8f, 0x44, 0x8e, 0xa0, 0xfe, 0xb3, 0x63, 0x41, 0xd1, 0x36, 0xac, 0xf9, + 0xa9, 0xd2, 0x3c, 0xa6, 0xd2, 0x65, 0x01, 0x4d, 0x34, 0xeb, 0x30, 0x2a, 0xeb, 0xa0, 0x01, 0xd6, + 0x17, 0x9a, 0xb5, 0x2f, 0x3f, 0x4e, 0x4a, 0x73, 0xb2, 0x54, 0xff, 0x09, 0xfa, 0xd5, 0xac, 0x9c, + 0xa9, 0x82, 0x36, 0x1a, 0xf2, 0xed, 0xdf, 0x74, 0x74, 0x1f, 0x56, 0xc6, 0x46, 0xe9, 0xb2, 0xa0, + 0x3e, 0x73, 0xb9, 0xc1, 0x12, 0x39, 0x52, 0x5b, 0x03, 0xa6, 0x1d, 0xa0, 0x7b, 0x70, 0x49, 0x48, + 0x1e, 0xa4, 0xbe, 0x76, 0x7d, 0x1e, 0xd0, 0x7a, 0xe9, 0x72, 0xe1, 0x62, 0x41, 0x6c, 0xf1, 0x80, + 0xa2, 0x18, 0xd6, 0x54, 0xea, 0x29, 0x5f, 0xb2, 0x3c, 0xa2, 0xab, 0x34, 0xd1, 0xa9, 0xaa, 0xcf, + 0x36, 0xc0, 0x7a, 0x65, 0xf3, 0x81, 0xf9, 0x5f, 0xff, 0xdc, 0xdc, 0x7a, 0xee, 0x38, 0x63, 0x26, + 0x4e, 0xee, 0xd1, 0x46, 0xea, 0x8f, 0x1e, 0xb2, 0x61, 0x59, 0xd3, 0x84, 0x24, 0xba, 0x5e, 0x6e, + 0x94, 0xd6, 0x17, 0x37, 0xd7, 0xa6, 0xbe, 0xf0, 0xc4, 0x7b, 0x45, 0x7d, 0xdd, 0xa6, 0x9d, 0xfe, + 0x54, 0x9b, 0xb5, 0xcf, 0x6f, 0x0a, 0x7a, 0x9e, 0xe3, 0x3d, 0xe8, 0x5f, 0xbf, 0xe8, 0xa0, 0x55, + 0xb8, 0xa0, 0x58, 0x98, 0xa4, 0xa2, 0x3f, 0xa7, 0x2b, 0xfd, 0xb8, 0xed, 0xf9, 0x41, 0xc3, 0x0e, + 0x1e, 0xcd, 0xce, 0xcf, 0x55, 0xcb, 0xb7, 0x35, 0x5c, 0xfe, 0xeb, 0xd5, 0xd0, 0x32, 0xbc, 0xea, + 0xec, 0x37, 0x9d, 0x56, 0xdb, 0x6e, 0xee, 0xb8, 0xce, 0x7e, 0xab, 0xb5, 0xe3, 0x38, 0x55, 0x03, + 0x5d, 0x83, 0xb5, 0xfd, 0xbd, 0x11, 0xf0, 0x74, 0x67, 0x6f, 0xdb, 0xde, 0xdb, 0xad, 0x82, 0x69, + 0x60, 0xa8, 0x98, 0x41, 0x08, 0x56, 0x46, 0xed, 0x87, 0x5b, 0xf6, 0xe3, 0x6a, 0xa9, 0xf9, 0x01, + 0x9c, 0x9e, 0x63, 0xe3, 0xec, 0x1c, 0x1b, 0x17, 0xe7, 0x18, 0xbc, 0xcd, 0x30, 0xf8, 0x94, 0x61, + 0xf0, 0x35, 0xc3, 0xe0, 0x34, 0xc3, 0xe0, 0x2c, 0xc3, 0xe0, 0x5b, 0x86, 0xc1, 0xf7, 0x0c, 0x1b, + 0x17, 0x19, 0x06, 0xef, 0x7a, 0xd8, 0x38, 0xe9, 0x61, 0x70, 0xda, 0xc3, 0xc6, 0x59, 0x0f, 0x1b, + 0x2f, 0x5e, 0x86, 0x5c, 0x1c, 0x86, 0x66, 0x97, 0x47, 0x9a, 0x4a, 0x49, 0xcc, 0x54, 0x59, 0x79, + 0xd1, 0xe1, 0x32, 0xde, 0x10, 0x92, 0x77, 0x59, 0x40, 0xe5, 0xc6, 0x10, 0xb6, 0x84, 0x17, 0x72, + 0x8b, 0xbe, 0xd6, 0xc5, 0xba, 0xfe, 0xfb, 0x41, 0x7b, 0xe5, 0x7c, 0x83, 0xef, 0xfe, 0x0a, 0x00, + 0x00, 0xff, 0xff, 0x88, 0xce, 0xd1, 0x9f, 0x00, 0x04, 0x00, 0x00, } func (x AWSSubscriptionStatus) String() string { @@ -259,29 +272,33 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if this.SubscriptionStatus != that1.SubscriptionStatus { return false } - if len(this.Signup) != len(that1.Signup) { + if len(this.Tenant) != len(that1.Tenant) { return false } - for i := range this.Signup { - if !this.Signup[i].Equal(that1.Signup[i]) { + for i := range this.Tenant { + if !this.Tenant[i].Equal(that1.Tenant[i]) { return false } } + if this.SignupId != that1.SignupId { + return false + } return true } func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 9) + s := make([]string, 0, 10) s = append(s, "&aws_account.GlobalSpecType{") s = append(s, "CustomerIdentifier: "+fmt.Sprintf("%#v", this.CustomerIdentifier)+",\n") s = append(s, "AwsAccountId: "+fmt.Sprintf("%#v", this.AwsAccountId)+",\n") s = append(s, "ProductCode: "+fmt.Sprintf("%#v", this.ProductCode)+",\n") s = append(s, "SubscriptionStatus: "+fmt.Sprintf("%#v", this.SubscriptionStatus)+",\n") - if this.Signup != nil { - s = append(s, "Signup: "+fmt.Sprintf("%#v", this.Signup)+",\n") + if this.Tenant != nil { + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") } + s = append(s, "SignupId: "+fmt.Sprintf("%#v", this.SignupId)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -313,10 +330,17 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if len(m.Signup) > 0 { - for iNdEx := len(m.Signup) - 1; iNdEx >= 0; iNdEx-- { + if len(m.SignupId) > 0 { + i -= len(m.SignupId) + copy(dAtA[i:], m.SignupId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SignupId))) + i-- + dAtA[i] = 0x3a + } + if len(m.Tenant) > 0 { + for iNdEx := len(m.Tenant) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.Signup[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Tenant[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -324,7 +348,7 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x32 } } if m.SubscriptionStatus != 0 { @@ -388,12 +412,16 @@ func (m *GlobalSpecType) Size() (n int) { if m.SubscriptionStatus != 0 { n += 1 + sovTypes(uint64(m.SubscriptionStatus)) } - if len(m.Signup) > 0 { - for _, e := range m.Signup { + if len(m.Tenant) > 0 { + for _, e := range m.Tenant { l = e.Size() n += 1 + l + sovTypes(uint64(l)) } } + l = len(m.SignupId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } return n } @@ -407,17 +435,18 @@ func (this *GlobalSpecType) String() string { if this == nil { return "nil" } - repeatedStringForSignup := "[]*ObjectRefType{" - for _, f := range this.Signup { - repeatedStringForSignup += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + repeatedStringForTenant := "[]*ObjectRefType{" + for _, f := range this.Tenant { + repeatedStringForTenant += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," } - repeatedStringForSignup += "}" + repeatedStringForTenant += "}" s := strings.Join([]string{`&GlobalSpecType{`, `CustomerIdentifier:` + fmt.Sprintf("%v", this.CustomerIdentifier) + `,`, `AwsAccountId:` + fmt.Sprintf("%v", this.AwsAccountId) + `,`, `ProductCode:` + fmt.Sprintf("%v", this.ProductCode) + `,`, `SubscriptionStatus:` + fmt.Sprintf("%v", this.SubscriptionStatus) + `,`, - `Signup:` + repeatedStringForSignup + `,`, + `Tenant:` + repeatedStringForTenant + `,`, + `SignupId:` + fmt.Sprintf("%v", this.SignupId) + `,`, `}`, }, "") return s @@ -574,9 +603,9 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { break } } - case 5: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Signup", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -603,11 +632,43 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Signup = append(m.Signup, &schema.ObjectRefType{}) - if err := m.Signup[len(m.Signup)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Tenant = append(m.Tenant, &schema.ObjectRefType{}) + if err := m.Tenant[len(m.Tenant)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SignupId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SignupId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/marketplace/aws_account/types.vesmsg.go b/pbgo/extschema/schema/marketplace/aws_account/types.vesmsg.go index 0ed4ccca2..49203fb7a 100644 --- a/pbgo/extschema/schema/marketplace/aws_account/types.vesmsg.go +++ b/pbgo/extschema/schema/marketplace/aws_account/types.vesmsg.go @@ -66,28 +66,28 @@ func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { return nil, nil } - return m.GetSignupDRefInfo() + return m.GetTenantDRefInfo() } -func (m *GlobalSpecType) GetSignupDRefInfo() ([]db.DRefInfo, error) { - refs := m.GetSignup() +func (m *GlobalSpecType) GetTenantDRefInfo() ([]db.DRefInfo, error) { + refs := m.GetTenant() if len(refs) == 0 { return nil, nil } drInfos := make([]db.DRefInfo, 0, len(refs)) for i, ref := range refs { if ref == nil { - return nil, fmt.Errorf("GlobalSpecType.signup[%d] has a nil value", i) + return nil, fmt.Errorf("GlobalSpecType.tenant[%d] has a nil value", i) } // resolve kind to type if needed at DBObject.GetDRefInfo() drInfos = append(drInfos, db.DRefInfo{ - RefdType: "signup.Object", + RefdType: "tenant.Object", RefdUID: ref.Uid, RefdTenant: ref.Tenant, RefdNS: ref.Namespace, RefdName: ref.Name, - DRField: "signup", + DRField: "tenant", Ref: ref, }) } @@ -95,14 +95,14 @@ func (m *GlobalSpecType) GetSignupDRefInfo() ([]db.DRefInfo, error) { } -// GetSignupDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GlobalSpecType) GetSignupDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { +// GetTenantDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetTenantDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "signup.Object") + refdType, err := d.TypeForEntryKind("", "", "tenant.Object") if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: signup") + return nil, errors.Wrap(err, "Cannot find type for kind: tenant") } - for _, ref := range m.GetSignup() { + for _, ref := range m.GetTenant() { refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) if err != nil { return nil, errors.Wrap(err, "Getting referred entry") @@ -149,12 +149,12 @@ func (v *ValidateGlobalSpecType) ProductCodeValidationRuleHandler(rules map[stri return validatorFn, nil } -func (v *ValidateGlobalSpecType) SignupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGlobalSpecType) TenantValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for signup") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for tenant") } itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.ObjectRefType, opts ...db.ValidateOpt) error { for i, el := range elems { @@ -169,7 +169,7 @@ func (v *ValidateGlobalSpecType) SignupValidationRuleHandler(rules map[string]st } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for signup") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for tenant") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { @@ -186,10 +186,10 @@ func (v *ValidateGlobalSpecType) SignupValidationRuleHandler(rules map[string]st l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated signup") + return errors.Wrap(err, "repeated tenant") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items signup") + return errors.Wrap(err, "items tenant") } return nil } @@ -238,9 +238,10 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["signup"]; exists { - vOpts := append(opts, db.WithValidateField("signup")) - if err := fv(ctx, m.GetSignup(), vOpts...); err != nil { + if fv, exists := v.FldValidators["signup_id"]; exists { + + vOpts := append(opts, db.WithValidateField("signup_id")) + if err := fv(ctx, m.GetSignupId(), vOpts...); err != nil { return err } @@ -255,6 +256,14 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["tenant"]; exists { + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + return nil } @@ -306,16 +315,16 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { } v.FldValidators["product_code"] = vFn - vrhSignup := v.SignupValidationRuleHandler - rulesSignup := map[string]string{ + vrhTenant := v.TenantValidationRuleHandler + rulesTenant := map[string]string{ "ves.io.schema.rules.repeated.max_items": "1", } - vFn, err = vrhSignup(rulesSignup) + vFn, err = vrhTenant(rulesTenant) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.signup: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.tenant: %s", err) panic(errMsg) } - v.FldValidators["signup"] = vFn + v.FldValidators["tenant"] = vFn return v }() diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.pb.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.pb.go new file mode 100644 index 000000000..e247bb7aa --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.pb.go @@ -0,0 +1,5531 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto + +package crudapi + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + message "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +type ErrorCode int32 + +const ( + EOK ErrorCode = 0 + ENOTFOUND ErrorCode = 1 + EEXISTS ErrorCode = 2 + EUNKNOWN ErrorCode = 3 +) + +var ErrorCode_name = map[int32]string{ + 0: "EOK", + 1: "ENOTFOUND", + 2: "EEXISTS", + 3: "EUNKNOWN", +} + +var ErrorCode_value = map[string]int32{ + "EOK": 0, + "ENOTFOUND": 1, + "EEXISTS": 2, + "EUNKNOWN": 3, +} + +func (ErrorCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{0} +} + +type ObjectCreateReq struct { + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *message.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateReq) Reset() { *m = ObjectCreateReq{} } +func (*ObjectCreateReq) ProtoMessage() {} +func (*ObjectCreateReq) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{0} +} +func (m *ObjectCreateReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateReq.Merge(m, src) +} +func (m *ObjectCreateReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateReq proto.InternalMessageInfo + +func (m *ObjectCreateReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateReq) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateReq) GetSpec() *message.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectCreateRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode" json:"err,omitempty"` + ObjectUid string `protobuf:"bytes,10001,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *message.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateRsp) Reset() { *m = ObjectCreateRsp{} } +func (*ObjectCreateRsp) ProtoMessage() {} +func (*ObjectCreateRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{1} +} +func (m *ObjectCreateRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateRsp.Merge(m, src) +} +func (m *ObjectCreateRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateRsp proto.InternalMessageInfo + +func (m *ObjectCreateRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectCreateRsp) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectCreateRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSpec() *message.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + ResourceVersion string `protobuf:"bytes,10001,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + Spec *message.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceReq) Reset() { *m = ObjectReplaceReq{} } +func (*ObjectReplaceReq) ProtoMessage() {} +func (*ObjectReplaceReq) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{2} +} +func (m *ObjectReplaceReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceReq.Merge(m, src) +} +func (m *ObjectReplaceReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceReq proto.InternalMessageInfo + +func (m *ObjectReplaceReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectReplaceReq) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectReplaceReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceReq) GetSpec() *message.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode" json:"err,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *message.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceRsp) Reset() { *m = ObjectReplaceRsp{} } +func (*ObjectReplaceRsp) ProtoMessage() {} +func (*ObjectReplaceRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{3} +} +func (m *ObjectReplaceRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceRsp.Merge(m, src) +} +func (m *ObjectReplaceRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceRsp proto.InternalMessageInfo + +func (m *ObjectReplaceRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectReplaceRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSpec() *message.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectGetReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + AllBackrefs bool `protobuf:"varint,10001,opt,name=all_backrefs,json=allBackrefs,proto3" json:"all_backrefs,omitempty"` + BackrefTypes []string `protobuf:"bytes,10002,rep,name=backref_types,json=backrefTypes,proto3" json:"backref_types,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10003,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` +} + +func (m *ObjectGetReq) Reset() { *m = ObjectGetReq{} } +func (*ObjectGetReq) ProtoMessage() {} +func (*ObjectGetReq) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{4} +} +func (m *ObjectGetReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetReq.Merge(m, src) +} +func (m *ObjectGetReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetReq proto.InternalMessageInfo + +func (m *ObjectGetReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectGetReq) GetAllBackrefs() bool { + if m != nil { + return m.AllBackrefs + } + return false +} + +func (m *ObjectGetReq) GetBackrefTypes() []string { + if m != nil { + return m.BackrefTypes + } + return nil +} + +func (m *ObjectGetReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +type ObjectGetRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode" json:"err,omitempty"` + EntBackrefs []*types.Any `protobuf:"bytes,10001,rep,name=ent_backrefs,json=entBackrefs,proto3" json:"ent_backrefs,omitempty"` + ResourceVersion string `protobuf:"bytes,10002,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *message.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectGetRsp) Reset() { *m = ObjectGetRsp{} } +func (*ObjectGetRsp) ProtoMessage() {} +func (*ObjectGetRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{5} +} +func (m *ObjectGetRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetRsp.Merge(m, src) +} +func (m *ObjectGetRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetRsp proto.InternalMessageInfo + +func (m *ObjectGetRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectGetRsp) GetEntBackrefs() []*types.Any { + if m != nil { + return m.EntBackrefs + } + return nil +} + +func (m *ObjectGetRsp) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectGetRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectGetRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectGetRsp) GetSpec() *message.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectListReq struct { + // Filters executed on server-side - all types of filters ANDed + // Tenants to scope the listing of objects - if empty all tenants considered + TenantFilter []string `protobuf:"bytes,10000,rep,name=tenant_filter,json=tenantFilter,proto3" json:"tenant_filter,omitempty"` + // Namespaces to scope the listing of objects - if empty all namespaces considered + NamespaceFilter []string `protobuf:"bytes,10001,rep,name=namespace_filter,json=namespaceFilter,proto3" json:"namespace_filter,omitempty"` + // k8s style label selector expression + LabelFilter string `protobuf:"bytes,10002,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // TODO: currently even if one specified implementation will return all fields + ReportFields []string `protobuf:"bytes,10003,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // Get the resource_version associated with the list + ResourceVersion bool `protobuf:"varint,10004,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10005,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` + // The value for PageStart indicating from very first entry. This will be ignored unless page_limit + // is also defined + PageStart string `protobuf:"bytes,10006,opt,name=page_start,json=pageStart,proto3" json:"page_start,omitempty"` + // The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset, + // the first page will be returned. + PageLimit int32 `protobuf:"varint,10007,opt,name=page_limit,json=pageLimit,proto3" json:"page_limit,omitempty"` +} + +func (m *ObjectListReq) Reset() { *m = ObjectListReq{} } +func (*ObjectListReq) ProtoMessage() {} +func (*ObjectListReq) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{6} +} +func (m *ObjectListReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListReq.Merge(m, src) +} +func (m *ObjectListReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectListReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListReq proto.InternalMessageInfo + +func (m *ObjectListReq) GetTenantFilter() []string { + if m != nil { + return m.TenantFilter + } + return nil +} + +func (m *ObjectListReq) GetNamespaceFilter() []string { + if m != nil { + return m.NamespaceFilter + } + return nil +} + +func (m *ObjectListReq) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ObjectListReq) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ObjectListReq) GetResourceVersion() bool { + if m != nil { + return m.ResourceVersion + } + return false +} + +func (m *ObjectListReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +func (m *ObjectListReq) GetPageStart() string { + if m != nil { + return m.PageStart + } + return "" +} + +func (m *ObjectListReq) GetPageLimit() int32 { + if m != nil { + return m.PageLimit + } + return 0 +} + +type ObjectListRspItem struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + // If ObjectListReq has any specified report_fields, it will appear in below fields + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *message.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Tenant string `protobuf:"bytes,10001,opt,name=tenant,proto3" json:"tenant,omitempty"` + Namespace string `protobuf:"bytes,10002,opt,name=namespace,proto3" json:"namespace,omitempty"` + Name string `protobuf:"bytes,10003,opt,name=name,proto3" json:"name,omitempty"` + Labels map[string]string `protobuf:"bytes,10004,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ObjectListRspItem) Reset() { *m = ObjectListRspItem{} } +func (*ObjectListRspItem) ProtoMessage() {} +func (*ObjectListRspItem) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{7} +} +func (m *ObjectListRspItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRspItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRspItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRspItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRspItem.Merge(m, src) +} +func (m *ObjectListRspItem) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRspItem) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRspItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRspItem proto.InternalMessageInfo + +func (m *ObjectListRspItem) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectListRspItem) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRspItem) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectListRspItem) GetSpec() *message.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectListRspItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ObjectListRspItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ObjectListRspItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ObjectListRspItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +type ObjectListRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode" json:"err,omitempty"` + Uids []string `protobuf:"bytes,10001,rep,name=uids,proto3" json:"uids,omitempty"` + Items []*ObjectListRspItem `protobuf:"bytes,10002,rep,name=items,proto3" json:"items,omitempty"` + Metadata *schema.ListMetaType `protobuf:"bytes,10003,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Will only be set if request included a page_limit and there are more pages beyond the current page + NextPage string `protobuf:"bytes,10004,opt,name=next_page,json=nextPage,proto3" json:"next_page,omitempty"` +} + +func (m *ObjectListRsp) Reset() { *m = ObjectListRsp{} } +func (*ObjectListRsp) ProtoMessage() {} +func (*ObjectListRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{8} +} +func (m *ObjectListRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRsp.Merge(m, src) +} +func (m *ObjectListRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRsp proto.InternalMessageInfo + +func (m *ObjectListRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectListRsp) GetUids() []string { + if m != nil { + return m.Uids + } + return nil +} + +func (m *ObjectListRsp) GetItems() []*ObjectListRspItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ObjectListRsp) GetMetadata() *schema.ListMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRsp) GetNextPage() string { + if m != nil { + return m.NextPage + } + return "" +} + +type ObjectDeleteReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` +} + +func (m *ObjectDeleteReq) Reset() { *m = ObjectDeleteReq{} } +func (*ObjectDeleteReq) ProtoMessage() {} +func (*ObjectDeleteReq) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{9} +} +func (m *ObjectDeleteReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteReq.Merge(m, src) +} +func (m *ObjectDeleteReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteReq proto.InternalMessageInfo + +func (m *ObjectDeleteReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +type ObjectDeleteRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode" json:"err,omitempty"` +} + +func (m *ObjectDeleteRsp) Reset() { *m = ObjectDeleteRsp{} } +func (*ObjectDeleteRsp) ProtoMessage() {} +func (*ObjectDeleteRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_571a8d3c7ca164e5, []int{10} +} +func (m *ObjectDeleteRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteRsp.Merge(m, src) +} +func (m *ObjectDeleteRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteRsp proto.InternalMessageInfo + +func (m *ObjectDeleteRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func init() { + proto.RegisterEnum("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + golang_proto.RegisterEnum("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateReq") + golang_proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateReq") + proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateRsp") + golang_proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateRsp") + proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceReq") + golang_proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceReq") + proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceRsp") + golang_proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceRsp") + proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetReq") + golang_proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetReq") + proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetRsp") + golang_proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetRsp") + proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq") + golang_proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq") + proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRspItem") + golang_proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRspItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRspItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRspItem.LabelsEntry") + proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRsp") + golang_proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRsp") + proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteReq") + golang_proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteReq") + proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteRsp") + golang_proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteRsp") +} + +func init() { + proto.RegisterFile("ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto", fileDescriptor_571a8d3c7ca164e5) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto", fileDescriptor_571a8d3c7ca164e5) +} + +var fileDescriptor_571a8d3c7ca164e5 = []byte{ + // 1376 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcf, 0x6f, 0x13, 0xc7, + 0x17, 0xcf, 0xd8, 0x21, 0x89, 0xc7, 0x09, 0x09, 0x03, 0xd2, 0xd7, 0x5f, 0x03, 0x2b, 0xb4, 0xe5, + 0x10, 0x45, 0x62, 0xb7, 0x4d, 0x7f, 0x00, 0x91, 0xca, 0x8f, 0x10, 0x27, 0x44, 0x84, 0x04, 0xad, + 0x93, 0x16, 0xe5, 0xe2, 0x8e, 0xed, 0x17, 0xb3, 0xcd, 0x7a, 0x77, 0x99, 0x19, 0xa7, 0x58, 0x55, + 0xa4, 0x8a, 0x5b, 0x0f, 0x95, 0x02, 0xf4, 0x87, 0x94, 0x5e, 0x5a, 0x24, 0x24, 0xaa, 0xde, 0x2a, + 0x55, 0xad, 0x84, 0xaa, 0xd2, 0x4b, 0x15, 0x71, 0x42, 0xed, 0x85, 0x63, 0xe3, 0xf4, 0xd0, 0x23, + 0x7f, 0x42, 0xb5, 0x33, 0x6b, 0xc7, 0x36, 0xa0, 0x62, 0xc7, 0x91, 0x90, 0xe0, 0x62, 0xcd, 0xbc, + 0x37, 0xf3, 0x99, 0x99, 0xcf, 0xfb, 0xbc, 0x37, 0x3b, 0xc6, 0xa7, 0x57, 0x80, 0x1b, 0xb6, 0x67, + 0xf2, 0xdc, 0x15, 0x28, 0x52, 0xb3, 0x48, 0xd9, 0x32, 0x08, 0xdf, 0xa1, 0x39, 0x30, 0xaf, 0xe5, + 0x32, 0x9c, 0x52, 0x6e, 0x52, 0x9e, 0x35, 0x8b, 0xc0, 0x39, 0x2d, 0x80, 0x99, 0x63, 0xa5, 0x3c, + 0xf5, 0x6d, 0x93, 0xfa, 0xb6, 0xe1, 0x33, 0x4f, 0x78, 0xe4, 0x6d, 0x05, 0x60, 0x28, 0x00, 0xa3, + 0x0e, 0xc0, 0x08, 0x01, 0x0c, 0xca, 0xb3, 0x46, 0x08, 0x60, 0x84, 0x00, 0xc9, 0x63, 0x05, 0x5b, + 0x5c, 0x29, 0x65, 0x8d, 0x9c, 0x57, 0x34, 0x0b, 0x5e, 0xc1, 0x33, 0x25, 0x5a, 0xb6, 0xb4, 0x24, + 0x7b, 0xb2, 0x23, 0x5b, 0x6a, 0x95, 0xe4, 0xa1, 0x82, 0xe7, 0x15, 0x1c, 0x30, 0xe5, 0xda, 0xae, + 0xeb, 0x09, 0x2a, 0x6c, 0xcf, 0xe5, 0xa1, 0xf7, 0xff, 0xa1, 0xb7, 0x86, 0x41, 0xdd, 0x72, 0xe8, + 0x1a, 0x6b, 0xed, 0x7c, 0x5e, 0xf6, 0x43, 0xc8, 0x89, 0x70, 0xee, 0xc9, 0xd6, 0xe6, 0x8a, 0xb2, + 0x0f, 0xd5, 0x1d, 0x1d, 0x6c, 0x9c, 0xea, 0xf9, 0x0d, 0xdb, 0x6d, 0x74, 0xd6, 0xcd, 0xd3, 0x1f, + 0x44, 0xf0, 0xe0, 0x9c, 0xdc, 0xc3, 0x39, 0x06, 0x54, 0x80, 0x05, 0x57, 0xc9, 0x24, 0xee, 0x2b, + 0x82, 0xa0, 0x79, 0x2a, 0x68, 0x02, 0x1d, 0x41, 0xc3, 0xf1, 0xd1, 0xc3, 0x46, 0x23, 0xe9, 0x6a, + 0xc6, 0x45, 0x10, 0x74, 0xbe, 0xec, 0xc3, 0x78, 0x7c, 0x7d, 0xb5, 0x36, 0xc3, 0xaa, 0xb5, 0xc8, + 0x07, 0x78, 0x90, 0x97, 0xb9, 0x80, 0x62, 0xa6, 0x06, 0x17, 0x91, 0x70, 0xaf, 0x35, 0xc1, 0xa5, + 0xe5, 0xa8, 0x26, 0x50, 0xb2, 0xbe, 0xda, 0x3c, 0xdd, 0xda, 0xab, 0x0c, 0x17, 0xab, 0x2b, 0xcc, + 0xe3, 0x6e, 0xee, 0x43, 0x2e, 0x11, 0x95, 0xb0, 0xc7, 0x8d, 0xd6, 0xa4, 0x91, 0xf6, 0x21, 0x27, + 0x97, 0xea, 0x5d, 0x5f, 0x95, 0x38, 0x96, 0xfc, 0x1d, 0x3b, 0xfe, 0xe0, 0xd4, 0x5b, 0xad, 0x21, + 0xa9, 0xad, 0xeb, 0xbf, 0x46, 0x9b, 0xc8, 0xe4, 0x3e, 0x49, 0xe3, 0x28, 0x30, 0x96, 0x58, 0x9b, + 0x3d, 0x82, 0x86, 0xf7, 0x8e, 0x9e, 0x31, 0xda, 0x52, 0xaf, 0x91, 0x62, 0xcc, 0x63, 0xe7, 0xbc, + 0x3c, 0x58, 0x01, 0x1a, 0xd1, 0x30, 0x56, 0xc2, 0xc9, 0x94, 0xec, 0x7c, 0xe2, 0x46, 0x80, 0x1d, + 0xb3, 0x62, 0xca, 0xb4, 0x60, 0xe7, 0x5f, 0x45, 0xb0, 0xdd, 0x08, 0xfe, 0x18, 0xc1, 0x43, 0xaa, + 0x69, 0x81, 0x1c, 0x1c, 0xe4, 0x43, 0x23, 0xdb, 0x6b, 0x4f, 0xb0, 0x3d, 0x82, 0x87, 0x18, 0x70, + 0xaf, 0xc4, 0x72, 0x90, 0x59, 0x01, 0xc6, 0x6d, 0xcf, 0xad, 0xc6, 0x64, 0xb0, 0xea, 0x78, 0x4f, + 0xd9, 0x3b, 0x16, 0x99, 0x17, 0x8c, 0xb7, 0x6f, 0xa2, 0xcd, 0xbc, 0xed, 0x96, 0xf4, 0x5f, 0x49, + 0xbb, 0xcd, 0x10, 0x7d, 0x87, 0x70, 0xbf, 0x6a, 0x4e, 0x81, 0x78, 0x1e, 0x59, 0xeb, 0xb8, 0x9f, + 0x3a, 0x4e, 0x26, 0x4b, 0x73, 0xcb, 0x0c, 0x96, 0xb8, 0x92, 0x74, 0x9f, 0x15, 0xa7, 0x8e, 0x33, + 0x1e, 0xda, 0xc8, 0x51, 0x3c, 0x10, 0xfa, 0x33, 0xf2, 0x56, 0x49, 0xdc, 0x9c, 0x3d, 0x12, 0x1d, + 0x8e, 0x59, 0xfd, 0xa1, 0x35, 0x38, 0x01, 0x27, 0x26, 0xde, 0x6f, 0xbb, 0x39, 0xa7, 0x94, 0x87, + 0x0c, 0x83, 0x25, 0x60, 0x0c, 0xf2, 0x19, 0x3b, 0x9f, 0xb8, 0xa5, 0x00, 0xf7, 0x85, 0x3e, 0x2b, + 0x74, 0x4d, 0xe7, 0xf5, 0xeb, 0xdd, 0xf5, 0x7b, 0xdd, 0x2d, 0x29, 0x9d, 0xc0, 0xfd, 0xe0, 0x8a, + 0x86, 0x03, 0x46, 0x87, 0xe3, 0xa3, 0x07, 0x0c, 0x75, 0xbb, 0x1b, 0xd5, 0xdb, 0xdd, 0x38, 0xeb, + 0x96, 0xad, 0x38, 0xb8, 0xa2, 0x76, 0xec, 0xa7, 0x65, 0xfc, 0xcd, 0x5d, 0xce, 0xf8, 0x97, 0x4e, + 0xb0, 0x1b, 0x11, 0x3c, 0xa0, 0x9a, 0x33, 0x36, 0x97, 0x8a, 0x3d, 0x8a, 0x07, 0x04, 0xb8, 0xd4, + 0x15, 0x99, 0x25, 0xdb, 0x11, 0x20, 0xf5, 0x20, 0xd5, 0xa6, 0xac, 0x93, 0xd2, 0x18, 0x04, 0xc7, + 0xa5, 0x45, 0xe0, 0x3e, 0xcd, 0x41, 0x75, 0xe0, 0x0d, 0x35, 0x70, 0xb0, 0xe6, 0x08, 0xc7, 0xea, + 0xb8, 0xdf, 0xa1, 0x59, 0x70, 0xaa, 0xe3, 0xc2, 0x20, 0xc6, 0xa5, 0x31, 0x1c, 0x73, 0x14, 0x0f, + 0x30, 0xf0, 0x3d, 0x16, 0xac, 0x0a, 0x4e, 0x9e, 0x07, 0xba, 0x95, 0xab, 0x2a, 0xeb, 0xa4, 0x34, + 0x3e, 0x55, 0x12, 0x9f, 0x2b, 0x81, 0x3f, 0x21, 0x89, 0x67, 0xe4, 0xc3, 0x17, 0xcf, 0xca, 0x87, + 0x20, 0x55, 0x7d, 0x5a, 0x80, 0x0c, 0x17, 0x94, 0x89, 0xc4, 0x97, 0x61, 0xaa, 0x06, 0xa6, 0x74, + 0x60, 0xa9, 0xf9, 0x1d, 0xbb, 0x68, 0x8b, 0xc4, 0x57, 0x81, 0x7f, 0x8f, 0xf2, 0xcf, 0x04, 0x16, + 0x7d, 0xab, 0x1b, 0xef, 0xab, 0xa3, 0x92, 0xfb, 0xd3, 0x02, 0x8a, 0xff, 0x59, 0x00, 0x5e, 0x72, + 0xe5, 0x92, 0xff, 0xe1, 0x1e, 0x25, 0xac, 0xea, 0x6d, 0x1e, 0x76, 0xc9, 0x61, 0x1c, 0xab, 0x09, + 0xa9, 0x2a, 0x99, 0x6d, 0x0b, 0xd9, 0x8f, 0xbb, 0x83, 0x8e, 0xaa, 0x6f, 0x31, 0x4b, 0x76, 0x48, + 0x11, 0xf7, 0x48, 0x51, 0xf1, 0x40, 0x15, 0x41, 0x99, 0x99, 0x6f, 0xb3, 0x88, 0x3d, 0x11, 0x47, + 0x63, 0x46, 0xe2, 0xa6, 0x5c, 0xc1, 0xca, 0x56, 0xb8, 0x48, 0xf2, 0x24, 0x8e, 0xd7, 0x99, 0xc9, + 0x10, 0x8e, 0x2e, 0x43, 0x59, 0x46, 0x31, 0x66, 0x05, 0x4d, 0x72, 0x00, 0xef, 0x59, 0xa1, 0x4e, + 0x09, 0x64, 0x28, 0x62, 0x96, 0xea, 0x8c, 0x45, 0x4e, 0xa0, 0xf6, 0x13, 0xf6, 0x87, 0xc6, 0x84, + 0xdd, 0xad, 0xb2, 0xbd, 0x1f, 0x77, 0x97, 0xec, 0x3c, 0xaf, 0xe6, 0xb4, 0xec, 0x90, 0x0c, 0xde, + 0x63, 0x0b, 0x28, 0x86, 0x17, 0x50, 0x7c, 0xf4, 0x7c, 0xa7, 0xd8, 0xb5, 0x14, 0x2e, 0x39, 0x51, + 0x97, 0x0c, 0x32, 0xb0, 0xf1, 0xd1, 0x83, 0x4d, 0x6b, 0x04, 0xb3, 0xaa, 0xb2, 0xad, 0x93, 0xff, + 0x21, 0x1c, 0x73, 0xe1, 0x9a, 0xc8, 0x04, 0xe9, 0xa8, 0x4a, 0x42, 0xcc, 0xea, 0x0b, 0x2c, 0x97, + 0x68, 0x01, 0xf4, 0x37, 0xaa, 0x4f, 0x86, 0x09, 0x70, 0x40, 0x3c, 0xcf, 0xf7, 0xa6, 0xbe, 0xd4, + 0x34, 0x65, 0x97, 0x88, 0x1e, 0x39, 0x85, 0x63, 0x35, 0x0b, 0xe9, 0xc5, 0xd1, 0xd4, 0xdc, 0x85, + 0xa1, 0x2e, 0x32, 0x80, 0x63, 0xa9, 0xd9, 0xb9, 0xf9, 0xc9, 0xb9, 0x85, 0xd9, 0x89, 0x21, 0x44, + 0xe2, 0xb8, 0x37, 0x95, 0xba, 0x3c, 0x9d, 0x9e, 0x4f, 0x0f, 0x45, 0x48, 0x3f, 0xee, 0x4b, 0x2d, + 0xcc, 0x5e, 0x98, 0x9d, 0x7b, 0x7f, 0x76, 0x28, 0x3a, 0xfa, 0xdb, 0x5e, 0x1c, 0x3d, 0x7b, 0x69, + 0x9a, 0x7c, 0x1f, 0xc1, 0x3d, 0xea, 0x41, 0x44, 0x26, 0x77, 0x14, 0x96, 0xda, 0x13, 0x35, 0xd9, + 0x11, 0x1c, 0xee, 0xeb, 0x6b, 0xe8, 0xfa, 0x9f, 0x7f, 0xdf, 0x8a, 0x7c, 0x8a, 0xf4, 0x77, 0xcc, + 0x96, 0x10, 0x4d, 0x85, 0xc4, 0xc7, 0xd0, 0xc8, 0xe2, 0x8c, 0x3e, 0xd5, 0xe2, 0x64, 0xdb, 0x15, + 0xcc, 0x0b, 0x6a, 0x8c, 0x30, 0x3f, 0x62, 0xb6, 0xa8, 0x47, 0x23, 0xbf, 0x47, 0x70, 0x6f, 0xf8, + 0x11, 0x4d, 0xa6, 0x76, 0x74, 0xcc, 0xed, 0x27, 0x4c, 0xb2, 0x33, 0x40, 0xdc, 0xd7, 0xef, 0x2a, + 0xc2, 0xbe, 0x45, 0xc9, 0xf1, 0xb6, 0x08, 0x33, 0x3f, 0xde, 0x96, 0xf6, 0x6a, 0x40, 0xde, 0xe5, + 0x64, 0xba, 0x33, 0xe4, 0x35, 0x23, 0x93, 0x9f, 0x22, 0x38, 0x3a, 0x05, 0x82, 0x9c, 0xdb, 0xd1, + 0xd9, 0xd5, 0xc7, 0x72, 0x72, 0xe7, 0x20, 0xdc, 0xd7, 0xef, 0xa0, 0x8d, 0x9f, 0x23, 0x8a, 0xc0, + 0x75, 0x44, 0x3a, 0x40, 0xe0, 0xe2, 0x3c, 0xb1, 0xda, 0x67, 0x8f, 0x01, 0xcd, 0x3f, 0x0d, 0x95, + 0xdc, 0x8e, 0xe0, 0xee, 0xa0, 0x98, 0x91, 0x89, 0x9d, 0x57, 0x51, 0xb8, 0x9a, 0x9c, 0xe8, 0x44, + 0x2d, 0xd6, 0x3f, 0xdb, 0x26, 0xef, 0x3a, 0x22, 0x6d, 0xa6, 0xeb, 0xe2, 0x79, 0x32, 0xd9, 0x11, + 0xc2, 0x38, 0xd9, 0x44, 0x18, 0x07, 0x7b, 0x4b, 0x0b, 0x06, 0xb4, 0xf8, 0x42, 0x51, 0x95, 0x92, + 0x2c, 0x9d, 0x26, 0xef, 0xb6, 0x47, 0x92, 0xc9, 0xe5, 0x91, 0x5e, 0x47, 0xe4, 0x97, 0x08, 0xee, + 0x51, 0x97, 0xcc, 0x0e, 0x2b, 0x77, 0xed, 0x72, 0x4b, 0x76, 0x04, 0x87, 0xfb, 0xfa, 0x6d, 0x25, + 0x85, 0xaf, 0xd1, 0x48, 0x27, 0xf2, 0x68, 0x61, 0x64, 0x37, 0xaa, 0x50, 0xf2, 0xcc, 0xfd, 0x7b, + 0x08, 0x6d, 0xdc, 0x43, 0xe8, 0x8f, 0x7b, 0xa8, 0xad, 0x6f, 0xaa, 0xf1, 0x3b, 0xe8, 0xe1, 0xa6, + 0xd6, 0xf5, 0x68, 0x53, 0xeb, 0x7a, 0xbc, 0xa9, 0xa1, 0x4f, 0x2a, 0x1a, 0xba, 0x5b, 0xd1, 0xd0, + 0x46, 0x45, 0x43, 0x0f, 0x2b, 0x1a, 0xfa, 0xab, 0xa2, 0xa1, 0x7f, 0x2a, 0x5a, 0xd7, 0xe3, 0x8a, + 0x86, 0xd6, 0xb6, 0xb4, 0xae, 0xfb, 0x5b, 0x1a, 0x7a, 0xb8, 0xa5, 0x75, 0x3d, 0xda, 0xd2, 0xba, + 0x16, 0x97, 0x0b, 0x9e, 0xbf, 0x5c, 0x30, 0x56, 0xbc, 0xe0, 0x15, 0xc3, 0xa8, 0x51, 0xe2, 0xa6, + 0x6c, 0x2c, 0x79, 0xac, 0x78, 0xcc, 0x67, 0xde, 0x8a, 0x9d, 0x07, 0x76, 0xac, 0xea, 0x36, 0xfd, + 0x6c, 0xc1, 0x33, 0xe1, 0x9a, 0x08, 0xff, 0x24, 0x6e, 0xed, 0xff, 0xf9, 0x6c, 0x8f, 0x7c, 0x2c, + 0xbf, 0xf9, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x90, 0x6c, 0xfc, 0xf4, 0xdf, 0x17, 0x00, 0x00, +} + +func (x ErrorCode) String() string { + s, ok := ErrorCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ObjectCreateReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateReq) + if !ok { + that2, ok := that.(ObjectCreateReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectCreateRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateRsp) + if !ok { + that2, ok := that.(ObjectCreateRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceReq) + if !ok { + that2, ok := that.(ObjectReplaceReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceRsp) + if !ok { + that2, ok := that.(ObjectReplaceRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectGetReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetReq) + if !ok { + that2, ok := that.(ObjectGetReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.AllBackrefs != that1.AllBackrefs { + return false + } + if len(this.BackrefTypes) != len(that1.BackrefTypes) { + return false + } + for i := range this.BackrefTypes { + if this.BackrefTypes[i] != that1.BackrefTypes[i] { + return false + } + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + return true +} +func (this *ObjectGetRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetRsp) + if !ok { + that2, ok := that.(ObjectGetRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.EntBackrefs) != len(that1.EntBackrefs) { + return false + } + for i := range this.EntBackrefs { + if !this.EntBackrefs[i].Equal(that1.EntBackrefs[i]) { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectListReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListReq) + if !ok { + that2, ok := that.(ObjectListReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.TenantFilter) != len(that1.TenantFilter) { + return false + } + for i := range this.TenantFilter { + if this.TenantFilter[i] != that1.TenantFilter[i] { + return false + } + } + if len(this.NamespaceFilter) != len(that1.NamespaceFilter) { + return false + } + for i := range this.NamespaceFilter { + if this.NamespaceFilter[i] != that1.NamespaceFilter[i] { + return false + } + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + if this.PageStart != that1.PageStart { + return false + } + if this.PageLimit != that1.PageLimit { + return false + } + return true +} +func (this *ObjectListRspItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRspItem) + if !ok { + that2, ok := that.(ObjectListRspItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + return true +} +func (this *ObjectListRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRsp) + if !ok { + that2, ok := that.(ObjectListRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.Uids) != len(that1.Uids) { + return false + } + for i := range this.Uids { + if this.Uids[i] != that1.Uids[i] { + return false + } + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if this.NextPage != that1.NextPage { + return false + } + return true +} +func (this *ObjectDeleteReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteReq) + if !ok { + that2, ok := that.(ObjectDeleteReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + return true +} +func (this *ObjectDeleteRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteRsp) + if !ok { + that2, ok := that.(ObjectDeleteRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + return true +} +func (this *ObjectCreateReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&crudapi.ObjectCreateReq{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectCreateRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectCreateRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectGetReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "AllBackrefs: "+fmt.Sprintf("%#v", this.AllBackrefs)+",\n") + s = append(s, "BackrefTypes: "+fmt.Sprintf("%#v", this.BackrefTypes)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&crudapi.ObjectGetRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.EntBackrefs != nil { + s = append(s, "EntBackrefs: "+fmt.Sprintf("%#v", this.EntBackrefs)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListReq{") + s = append(s, "TenantFilter: "+fmt.Sprintf("%#v", this.TenantFilter)+",\n") + s = append(s, "NamespaceFilter: "+fmt.Sprintf("%#v", this.NamespaceFilter)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "PageStart: "+fmt.Sprintf("%#v", this.PageStart)+",\n") + s = append(s, "PageLimit: "+fmt.Sprintf("%#v", this.PageLimit)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRspItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListRspItem{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectListRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "Uids: "+fmt.Sprintf("%#v", this.Uids)+",\n") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + s = append(s, "NextPage: "+fmt.Sprintf("%#v", this.NextPage)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringApi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) + Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) + Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) + List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) + ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) + Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + out := new(ObjectCreateRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + out := new(ObjectReplaceRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + out := new(ObjectGetRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + out := new(ObjectListRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + stream, err := c.cc.NewStream(ctx, &_API_serviceDesc.Streams[0], "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/ListStream", opts...) + if err != nil { + return nil, err + } + x := &aPIListStreamClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type API_ListStreamClient interface { + Recv() (*ObjectListRsp, error) + grpc.ClientStream +} + +type aPIListStreamClient struct { + grpc.ClientStream +} + +func (x *aPIListStreamClient) Recv() (*ObjectListRsp, error) { + m := new(ObjectListRsp) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + out := new(ObjectDeleteRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + Create(context.Context, *ObjectCreateReq) (*ObjectCreateRsp, error) + Replace(context.Context, *ObjectReplaceReq) (*ObjectReplaceRsp, error) + Get(context.Context, *ObjectGetReq) (*ObjectGetRsp, error) + List(context.Context, *ObjectListReq) (*ObjectListRsp, error) + ListStream(*ObjectListReq, API_ListStreamServer) error + Delete(context.Context, *ObjectDeleteReq) (*ObjectDeleteRsp, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) ListStream(req *ObjectListReq, srv API_ListStreamServer) error { + return status.Errorf(codes.Unimplemented, "method ListStream not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectCreateReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*ObjectCreateReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectReplaceReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ObjectReplaceReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectGetReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*ObjectGetReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ObjectListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ObjectListReq) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(APIServer).ListStream(m, &aPIListStreamServer{stream}) +} + +type API_ListStreamServer interface { + Send(*ObjectListRsp) error + grpc.ServerStream +} + +type aPIListStreamServer struct { + grpc.ServerStream +} + +func (x *aPIListStreamServer) Send(m *ObjectListRsp) error { + return x.ServerStream.SendMsg(m) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectDeleteReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*ObjectDeleteReq)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "ListStream", + Handler: _API_ListStream_Handler, + ServerStreams: true, + }, + }, + Metadata: "ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto", +} + +func (m *ObjectCreateReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectCreateRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x98 + } + if len(m.BackrefTypes) > 0 { + for iNdEx := len(m.BackrefTypes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.BackrefTypes[iNdEx]) + copy(dAtA[i:], m.BackrefTypes[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.BackrefTypes[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if m.AllBackrefs { + i-- + if m.AllBackrefs { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x88 + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.EntBackrefs) > 0 { + for iNdEx := len(m.EntBackrefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EntBackrefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PageLimit != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.PageLimit)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb8 + } + if len(m.PageStart) > 0 { + i -= len(m.PageStart) + copy(dAtA[i:], m.PageStart) + i = encodeVarintApi(dAtA, i, uint64(len(m.PageStart))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb2 + } + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa8 + } + if m.ResourceVersion { + i-- + if m.ResourceVersion { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa0 + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintApi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.NamespaceFilter) > 0 { + for iNdEx := len(m.NamespaceFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.NamespaceFilter[iNdEx]) + copy(dAtA[i:], m.NamespaceFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.NamespaceFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if len(m.TenantFilter) > 0 { + for iNdEx := len(m.TenantFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.TenantFilter[iNdEx]) + copy(dAtA[i:], m.TenantFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.TenantFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRspItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRspItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRspItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintApi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintApi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.NextPage) > 0 { + i -= len(m.NextPage) + copy(dAtA[i:], m.NextPage) + i = encodeVarintApi(dAtA, i, uint64(len(m.NextPage))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if len(m.Uids) > 0 { + for iNdEx := len(m.Uids) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Uids[iNdEx]) + copy(dAtA[i:], m.Uids[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.Uids[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func encodeVarintApi(dAtA []byte, offset int, v uint64) int { + offset -= sovApi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ObjectCreateReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectCreateRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func (m *ObjectGetReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.AllBackrefs { + n += 4 + } + if len(m.BackrefTypes) > 0 { + for _, s := range m.BackrefTypes { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.IncludeReferredId { + n += 4 + } + return n +} + +func (m *ObjectGetRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.EntBackrefs) > 0 { + for _, e := range m.EntBackrefs { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectListReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.TenantFilter) > 0 { + for _, s := range m.TenantFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.NamespaceFilter) > 0 { + for _, s := range m.NamespaceFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.LabelFilter) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.ResourceVersion { + n += 4 + } + if m.IncludeReferredId { + n += 4 + } + l = len(m.PageStart) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.PageLimit != 0 { + n += 3 + sovApi(uint64(m.PageLimit)) + } + return n +} + +func (m *ObjectListRspItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Tenant) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Namespace) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 3 + sovApi(uint64(mapEntrySize)) + } + } + return n +} + +func (m *ObjectListRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.Uids) > 0 { + for _, s := range m.Uids { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.NextPage) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func sovApi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozApi(x uint64) (n int) { + return sovApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ObjectCreateReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "message.SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectCreateRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "message.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "message.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "message.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectGetReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `AllBackrefs:` + fmt.Sprintf("%v", this.AllBackrefs) + `,`, + `BackrefTypes:` + fmt.Sprintf("%v", this.BackrefTypes) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForEntBackrefs := "[]*Any{" + for _, f := range this.EntBackrefs { + repeatedStringForEntBackrefs += strings.Replace(fmt.Sprintf("%v", f), "Any", "types.Any", 1) + "," + } + repeatedStringForEntBackrefs += "}" + s := strings.Join([]string{`&ObjectGetRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "message.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `EntBackrefs:` + repeatedStringForEntBackrefs + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectListReq{`, + `TenantFilter:` + fmt.Sprintf("%v", this.TenantFilter) + `,`, + `NamespaceFilter:` + fmt.Sprintf("%v", this.NamespaceFilter) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `PageStart:` + fmt.Sprintf("%v", this.PageStart) + `,`, + `PageLimit:` + fmt.Sprintf("%v", this.PageLimit) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRspItem) String() string { + if this == nil { + return "nil" + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&ObjectListRspItem{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "message.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Labels:` + mapStringForLabels + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ObjectListRspItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ObjectListRspItem", "ObjectListRspItem", 1) + "," + } + repeatedStringForItems += "}" + s := strings.Join([]string{`&ObjectListRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `Uids:` + fmt.Sprintf("%v", this.Uids) + `,`, + `Items:` + repeatedStringForItems + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ListMetaType", "schema.ListMetaType", 1) + `,`, + `NextPage:` + fmt.Sprintf("%v", this.NextPage) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func valueToStringApi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ObjectCreateReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &message.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectCreateRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &message.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &message.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &message.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllBackrefs", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AllBackrefs = bool(v != 0) + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackrefTypes", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackrefTypes = append(m.BackrefTypes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10003: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &message.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntBackrefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntBackrefs = append(m.EntBackrefs, &types.Any{}) + if err := m.EntBackrefs[len(m.EntBackrefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TenantFilter = append(m.TenantFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NamespaceFilter = append(m.NamespaceFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10004: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResourceVersion = bool(v != 0) + case 10005: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + case 10006: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PageStart", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PageStart = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10007: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PageLimit", wireType) + } + m.PageLimit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PageLimit |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRspItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRspItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRspItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &message.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uids", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uids = append(m.Uids, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ObjectListRspItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ListMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NextPage", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NextPage = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipApi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthApi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupApi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthApi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthApi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowApi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupApi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.pb.gw.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.pb.gw.go new file mode 100644 index 000000000..7b3548ecc --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.pb.gw.go @@ -0,0 +1,1101 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto + +/* +Package crudapi is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package crudapi + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_1 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_1 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_ListStream_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_ListStream_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (API_ListStreamClient, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_ListStream_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.ListStream(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_ListStream_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_ListStream_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Create_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "introspect", "write", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "introspect", "read", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "introspect", "read", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_ListStream_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "Objects", "stream"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.marketplace.xc_saas.asb.message", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Create_1 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Replace_1 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_Get_1 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_List_1 = runtime.ForwardResponseMessage + + forward_API_ListStream_0 = runtime.ForwardResponseStream + + forward_API_Delete_0 = runtime.ForwardResponseMessage + + forward_API_Delete_1 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.vesapi.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.vesapi.go new file mode 100644 index 000000000..37f2689d3 --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.vesapi.go @@ -0,0 +1,3612 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// augment methods on ObjectReq from api.pb.go + +// EntryConverter +func (r *ObjectCreateReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectCreateReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectCreateReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// EntryConverter +func (r *ObjectReplaceReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectReplaceReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectReplaceReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// CLIENT side + +func NewObjectCreateReq(e db.Entry) (*ObjectCreateReq, error) { + r := &ObjectCreateReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewObjectReplaceReq(e db.Entry) (*ObjectReplaceReq, error) { + r := &ObjectReplaceReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + uid, err := e.Key() + if err != nil { + // See if uid can be got from Metadata.Uid + obj := e.(*object.DBObject) + uid = obj.GetMetadata().GetUid() + + } + r.ObjectUid = uid + return r, nil +} + +func NewObjectGetReq(uid string, opts ...server.CRUDCallOpt) *ObjectGetReq { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + req := &ObjectGetReq{ObjectUid: uid, AllBackrefs: ccOpts.AllBR, BackrefTypes: ccOpts.TypesBR} + req.IncludeReferredId = ccOpts.IncludeReferredID + return req +} + +func newObjectListReqFrom(cco *server.CrudCallOpts) (*ObjectListReq, error) { + r := &ObjectListReq{ + TenantFilter: cco.TenantFilter, + NamespaceFilter: cco.NamespaceFilter, + ReportFields: cco.ReportFields, + IncludeReferredId: cco.IncludeReferredID, + } + switch len(cco.LabelFilter) { + case 0: + case 1: + r.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + if cco.OutResourceVersion != nil { + r.ResourceVersion = true + } + if cco.PageStart != "" { + r.PageStart = cco.PageStart + } + if cco.PageLimit != 0 { + r.PageLimit = cco.PageLimit + } + return r, nil +} + +func NewObjectDeleteReq(uid string) *ObjectDeleteReq { + return &ObjectDeleteReq{ObjectUid: uid} +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Getting from grpcClient") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp == nil { + return nil, errors.ErrOrNil(merr) + } + respDetail := server.GetResponse{} + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + stream, err := c.grpcClient.ListStream(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Listing with grpc client") + } + lc := &crudAPIGrpcListStreamClient{stream} + return lc, nil + +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req := NewObjectDeleteReq(key) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +type crudAPIGrpcListStreamClient struct { + stream API_ListStreamClient +} + +func (lc *crudAPIGrpcListStreamClient) RecvIDs() ([]string, error) { + idSet := []string{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return idSet, err + } + for _, li := range rsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err +} + +func (lc *crudAPIGrpcListStreamClient) RecvItems() ([]server.ListItem, error) { + sliSet := []server.ListItem{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return sliSet, err + } + for _, li := range rsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return nil, fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return nil, fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + hReq, err := http.NewRequest(http.MethodPost, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &ObjectCreateRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + o := object.NewDBObject(nil) + rspo.ToObject(o) + return o, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + rReq, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var objUID string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling ReplaceJSONReq") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["uid"].(string); ok { + objUID = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.uid'", jsn) + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, objUID) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + + rspo := &ObjectReplaceRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, req.ObjectUid) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &ObjectGetRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + o := object.NewDBObject(nil) + gRsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + for _, fVal := range cco.TenantFilter { + q.Add("tenant_filter", fVal) + } + for _, fVal := range cco.NamespaceFilter { + q.Add("namespace_filter", fVal) + } + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + + if cco.IncludeReferredID { + q.Add("include_referred_id", "true") + } + + if cco.OutResourceVersion != nil { + q.Add("resource_version", "true") + } + if cco.PageStart != "" { + q.Add("page_start", cco.PageStart) + } + if cco.PageLimit != 0 { + q.Add("page_limit", fmt.Sprintf("%d", cco.PageLimit)) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ObjectListRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rspo.GetNextPage() + } + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq := NewObjectDeleteReq(key) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.marketplace.xc_saas.asb.message.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, dReq.ObjectUid) + + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + rspo := &ObjectDeleteRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.marketplace.xc_saas.asb.message.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create") + return oah.Create(ctx, req) +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.marketplace.xc_saas.asb.message.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace") + return oah.Replace(ctx, req) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.marketplace.xc_saas.asb.message.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get") + return oah.Get(ctx, req) +} + +func (c *APIInprocClient) List(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.marketplace.xc_saas.asb.message.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List") + return oah.List(ctx, req) +} + +func (c *APIInprocClient) ListStream(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + return nil, fmt.Errorf("ListStream Not implemented") +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.marketplace.xc_saas.asb.message.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete") + return oah.Delete(ctx, req) +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + rsp, err := c.cl.Create(ctx, req) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req := NewObjectGetReq(key, opts...) + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + rsp, err := c.cl.List(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewObjectDeleteReq(key) + rsp, err := c.cl.Delete(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private create request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create"), zap.Error(err)) + } + } + } + obj := object.NewDBObject(nil) + req.ToObject(obj) + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Create")).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Create with NewObjectCreateRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + return nil, fmt.Errorf("Nil spec in Replace Request") + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private replace request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace"), zap.Error(err)) + } + } + } + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Replace")).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Replace with NewObjectReplaceRsp").Error()) + } + return rsp, nil + +} + +func (s *APISrv) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private get request") + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceGetRequest{IsPublic: false, UID: key, AllBackRefs: req.AllBackrefs, BackRefTypes: req.BackrefTypes} + rsrcReq.OmitReferredID = !req.IncludeReferredId + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Get")).Err() + } + rsp, err := NewObjectGetRsp(req, rsrcRsp) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Get with NewObjectGetRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private list request") + } + } + } + var merr error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: false, + GetResourceVersion: req.ResourceVersion, + OmitReferredID: !req.IncludeReferredId, + PageStart: req.PageStart, + PageLimit: req.PageLimit, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "List")) + } + rsp, err := NewObjectListRsp(req, rsrcRsp.Items) + if err != nil { + merr = multierror.Append(merr, err) + } + rsp.Metadata.ResourceVersion = rsrcRsp.ResourceVersion + rsp.NextPage = rsrcRsp.NextPage + return rsp, merr +} + +func (s *APISrv) ListStream(req *ObjectListReq, stream API_ListStreamServer) error { + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: true, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(stream.Context(), rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListStream")) + } + streamSvr := &crudAPIListStreamServer{stream} + for item := range rsrcRsp.ItemsCh { + if err := streamSvr.SendResource(req, item); err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "Stream-Send")) + continue + } + } + return errors.ErrOrNil(merr) +} + +func (s *APISrv) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private delete request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete"), zap.Error(err)) + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceDeleteRequest{Key: key} + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Delete")).Err() + } + return &ObjectDeleteRsp{}, nil +} + +// Assert that APISrv implements both the generated gRPC APIServer interface and the +// stdlib CRUDServer interface +var ( + _ APIServer = &APISrv{} +) + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.crudapi.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.crudapi.API", strings.Join(sl[:len(sl)-1], ".")) +} + +// implements both stdlib.server.ListStreamServer and API_ListStreamServer +type crudAPIListStreamServer struct { + stream API_ListStreamServer +} + +func (lc *crudAPIListStreamServer) Context() context.Context { + return lc.stream.Context() +} + +func (lc *crudAPIListStreamServer) SendResource(r *ObjectListReq, item *server.ResourceListResponseItem) error { + lRsp, err := NewObjectListRsp(r, []*server.ResourceListResponseItem{item}) + if err != nil { + return errors.Wrap(err, "SendResource with NewObjectListRsp") + } + if err := lc.Send(lRsp); err != nil { + return errors.Wrap(err, "ListStreamServer.SendResource()") + } + return nil +} + +func (lc *crudAPIListStreamServer) Send(o *ObjectListRsp) error { + if err := lc.stream.Send(o); err != nil { + return errors.Wrap(err, "ListStreamServer.Send()") + } + return nil +} + +// Implement GetReq interface +func (r *ObjectGetReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectGetReq) GetBackrefParam() (bool, []string) { + return r.AllBackrefs, r.BackrefTypes +} + +// Implement DeleteReq interface +func (r *ObjectDeleteReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectCreateRsp) Key() string { + return r.ObjectUid +} + +func (r *ObjectGetRsp) GetBackrefs(ef db.NewEntryFunc) ([]db.Entry, error) { + brEnts := []db.Entry{} + bRefs := r.GetEntBackrefs() + for _, br := range bRefs { + // convert schema.ves.io/ves.io.examplesvc.objectone.Object to ves.io.examplesvc.objectone.Object + sl := strings.Split(br.TypeUrl, "/") + ot := sl[len(sl)-1] + ent, err := ef(ot, db.OpWithSerializedBytes(br.Value)) + if err != nil { + return nil, errors.Wrap(err, "NewEntry") + } + brEnts = append(brEnts, ent) + } + + return brEnts, nil +} + +// Implement server.ListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjUid() string { + return l.ObjectUid +} + +// Implement server.SROListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ObjectListRspItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ObjectListRspItem) GetObjName() string { + return l.Name +} + +func (l *ObjectListRspItem) GetObjLabels() map[string]string { + return l.Labels +} + +// NewRsp, NewRspFromJSON +func NewObjectCreateRsp(e db.Entry) (*ObjectCreateRsp, error) { + rspo := &ObjectCreateRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectCreateRsp") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "CreateRsp getting Key()") + } + rspo.ObjectUid = key + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectReplaceRsp(e db.Entry) (*ObjectReplaceRsp, error) { + rspo := &ObjectReplaceRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectReplaceRsp") + } + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectGetRsp(r *ObjectGetReq, rsrcRsp *server.ResourceGetResponse) (*ObjectGetRsp, error) { + rspo := &ObjectGetRsp{} + e := rsrcRsp.Entry + brEntries := rsrcRsp.BackRefs + if e == nil { + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *object.DBObject in NewObjectGetRsp") + } + rspo.ResourceVersion = rsrcRsp.ResourceVersion + rspo.FromObject(o) + // Backref + getBackrefsFunc := func() ([]*google_protobuf.Any, error) { + var merr *multierror.Error + var entBackrefs []*google_protobuf.Any + for _, brEnt := range brEntries { + brSer, err := brEnt.MarshalBytes() + if err != nil { + merr = multierror.Append(merr, err) + continue + } + entBackrefs = append(entBackrefs, &google_protobuf.Any{TypeUrl: "schema.ves.io/" + brEnt.Type(), Value: brSer}) + } + return entBackrefs, errors.ErrOrNil(merr) + } + entBackrefs, err := getBackrefsFunc() + if err != nil { + return nil, err + } + rspo.EntBackrefs = entBackrefs + return rspo, nil +} + +func NewObjectListRsp(req *ObjectListReq, rsrcRspItems []*server.ResourceListResponseItem) (*ObjectListRsp, error) { + if req == nil { + return nil, fmt.Errorf("Nil ObjectListReq") + } + var errs error + o := &ObjectListRsp{} + o.Metadata = &ves_io_schema.ListMetaType{} + o.Uids = []string{} + o.Items = []*ObjectListRspItem{} + for _, rsrcItem := range rsrcRspItems { + if rsrcItem == nil { + errs = multierror.Append(errs, fmt.Errorf("ResourceListResponseItem is nil")) + continue + } + e := rsrcItem.Entry + dbObj, ok := e.(*object.DBObject) + if !ok { + errs = multierror.Append(errs, fmt.Errorf("Expected %T, got %T: %v", &object.DBObject{}, e, e)) + continue + } + key, err := dbObj.Key() + if err != nil { + errs = multierror.Append(errs, errors.WithMessagef(err, "Key() %v FAILED", dbObj)) + continue + } + + tenant := dbObj.GetSystemMetadata().GetTenant() + namespace := dbObj.GetMetadata().GetNamespace() + name := dbObj.GetMetadata().GetName() + labels := dbObj.GetMetadata().GetLabels() + + // TODO: DEPRECATE setting to o.Uids + o.Uids = append(o.Uids, key) + + item := &ObjectListRspItem{ + ObjectUid: key, + Tenant: tenant, + Namespace: namespace, + Name: name, + Labels: labels, + } + if len(req.ReportFields) > 0 { + item.FromObject(e) + } + o.Items = append(o.Items, item) + } + return o, errs +} + +func NewObjectDeleteRsp(ec ErrorCode) (*ObjectDeleteRsp, error) { + return &ObjectDeleteRsp{Err: ec}, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/ves.io.schema.marketplace.xc_saas.asb.message/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get" + }, + "delete": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.marketplace.xc_saas.asb.message/Objects": { + "get": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List" + }, + "post": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.marketplace.xc_saas.asb.message/Objects/stream": { + "get": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.ListStream", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "schema": { + "$ref": "#/x-stream-definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-liststream" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.ListStream" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/read/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Get" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/read/Objects": { + "get": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.List" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Object/{object_uid}": { + "delete": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.marketplace.xc_saas.asb.message/introspect/write/Objects": { + "post": { + "operationId": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-marketplace-xc_saas-asb-message-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "message", + "x-ves-object-type": "ves.io.schema.marketplace.xc_saas.asb.message.Object", + "x-ves-proto-service": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + } + }, + "definitions": { + "asbmessageGlobalSpecType": { + "type": "object", + "description": "Shape of message in the storage backend.", + "title": "GlobalSpecType", + "x-displayname": "Specification", + "x-ves-oneof-field-parsed_type": "[\"none\",\"signup_message\"]", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.GlobalSpecType", + "properties": { + "none": { + "description": "Exclusive with [signup_message]\n Raw message handling failed or unsupported.", + "title": "None", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No Parsed Message" + }, + "raw_json": { + "type": "object", + "description": " Raw JSON message string that holds metadata and payload related to provisioning\n\nExample: - \"{\"documentType\":\"teem-service-order\",\"documentVersion\":\"1.0\",\"serviceOrderType\":\"provisioning\"}\"-", + "title": "Raw JSON", + "x-displayname": "Raw JSON", + "x-ves-example": "{\"documentType\":\"teem-service-order\",\"documentVersion\":\"1.0\",\"serviceOrderType\":\"provisioning\"}" + }, + "signup_message": { + "description": "Exclusive with [none]\n Signup message holds customer information and other related provisioning information needed to sign up the\n customer for F5XC services.", + "title": "Signup Message", + "$ref": "#/definitions/messageSignupMessage", + "x-displayname": "Signup Message" + } + } + }, + "crudapiObjectCreateReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/messageSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectCreateRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateRsp", + "properties": { + "err": { + "$ref": "#/definitions/messagecrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/messageSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectDeleteRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteRsp", + "properties": { + "err": { + "$ref": "#/definitions/messagecrudapiErrorCode" + } + } + }, + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "err": { + "$ref": "#/definitions/messagecrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/messageSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectListRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRsp", + "properties": { + "err": { + "$ref": "#/definitions/messagecrudapiErrorCode" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } + }, + "metadata": { + "$ref": "#/definitions/schemaListMetaType" + }, + "next_page": { + "type": "string", + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "crudapiObjectListRspItem": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRspItem", + "properties": { + "labels": { + "type": "object" + }, + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/messageSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" + } + } + }, + "crudapiObjectReplaceReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/messageSpecType" + } + } + }, + "crudapiObjectReplaceRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceRsp", + "properties": { + "err": { + "$ref": "#/definitions/messagecrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/messageSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "messageActionType": { + "type": "string", + "description": "Type of action to perform\n\nProvision the requested service for tenant creation", + "title": "ActionType", + "enum": [ + "ENABLE" + ], + "default": "ENABLE", + "x-displayname": "Action Type", + "x-ves-proto-enum": "ves.io.schema.marketplace.xc_saas.asb.message.ActionType" + }, + "messageSignupMessage": { + "type": "object", + "description": "Signup message holds customer information and other related provisioning information needed to sign up the\ncustomer for F5XC services.", + "title": "Signup Message", + "x-displayname": "Signup Message", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.SignupMessage", + "properties": { + "account_details": { + "description": " Details of the new F5XC account to be created\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Account Details", + "$ref": "#/definitions/signupAccountMeta", + "x-displayname": "Account Details", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "action_type": { + "description": " Type of action to perform\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Action Type", + "$ref": "#/definitions/messageActionType", + "x-displayname": "Action Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "company_details": { + "description": " Details of the company\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Company Details", + "$ref": "#/definitions/signupCompanyMeta", + "x-displayname": "Company Details", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "crm_details": { + "description": " This field holds CRM information", + "title": "CRM Details", + "$ref": "#/definitions/schemaCRMInfo", + "x-displayname": "CRM Details" + }, + "signup_id": { + "type": "string", + "description": " Identifier for the corresponding signup object", + "title": "Signup ID", + "x-displayname": "Signup ID" + }, + "tenant_id": { + "type": "string", + "description": " Identifier for the corresponding tenant object", + "title": "Tenant ID", + "x-displayname": "Tenant ID" + }, + "user_details": { + "description": " Details of the user\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "User Details", + "$ref": "#/definitions/signupUserMeta", + "x-displayname": "User Details", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "messageSpecType": { + "type": "object", + "description": "Shape of the message specification", + "title": "Message specification", + "x-displayname": "Message object specification", + "x-ves-proto-message": "ves.io.schema.marketplace.xc_saas.asb.message.SpecType", + "properties": { + "gc_spec": { + "title": "gc_spec", + "$ref": "#/definitions/asbmessageGlobalSpecType", + "x-displayname": "GC Spec" + } + } + }, + "messagecrudapiErrorCode": { + "type": "string", + "enum": [ + "EOK", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN" + ], + "default": "EOK", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ErrorCode" + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "protobufNullValue": { + "type": "string", + "description": "-NullValue- is a singleton enumeration to represent the null value for the\n-Value- type union.\n\n The JSON representation for -NullValue- is JSON -null-.\n\n - NULL_VALUE: Null value.", + "enum": [ + "NULL_VALUE" + ], + "default": "NULL_VALUE" + }, + "runtimeStreamError": { + "type": "object", + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "grpc_code": { + "type": "integer", + "format": "int32" + }, + "http_code": { + "type": "integer", + "format": "int32" + }, + "http_status": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "schemaCRMInfo": { + "type": "object", + "description": "CRM Information", + "title": "CRM Information", + "x-displayname": "CRM Information", + "x-ves-proto-message": "ves.io.schema.CRMInfo" + }, + "schemaEmpty": { + "type": "object", + "description": "This can be used for messages where no values are needed", + "title": "Empty", + "x-displayname": "Empty", + "x-ves-proto-message": "ves.io.schema.Empty" + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaListMetaType": { + "type": "object", + "description": "ListMetaType is metadata that all lists must have.", + "title": "ListMetaType", + "x-displayname": "List Metadata", + "x-ves-proto-message": "ves.io.schema.ListMetaType" + }, + "schemaObjectMetaType": { + "type": "object", + "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "ObjectMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectMetaType": { + "type": "object", + "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "value" + }, + "creator_cookie": { + "type": "string", + "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", + "title": "creator_cookie", + "x-displayname": "Creator Cookie", + "x-ves-example": "value" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "value" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "namespace": { + "type": "array", + "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "namespace", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Namespace Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "sre_disable": { + "type": "boolean", + "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", + "title": "sre_disable", + "format": "boolean", + "x-displayname": "SRE Disable", + "x-ves-example": "true" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "trace_info": { + "type": "string", + "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", + "title": "trace_info", + "x-displayname": "Trace Info", + "x-ves-example": "value" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Indicate origin of this object.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "signupAccountMeta": { + "type": "object", + "title": "Account Meta", + "x-displayname": "Account Meta", + "x-ves-proto-message": "ves.io.schema.signup.AccountMeta", + "properties": { + "domain": { + "type": "string", + "description": " domain of the account\n\nExample: - \"john-deer\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 17\n ves.io.schema.rules.string.not_in: [\\\"ves\\\",\\\"volterra\\\"]\n ves.io.schema.rules.string.ves_object_name: true\n", + "title": "Domain", + "maxLength": 17, + "x-displayname": "Domain", + "x-ves-example": "john-deer", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "17", + "ves.io.schema.rules.string.not_in": "[\\\"ves\\\",\\\"volterra\\\"]", + "ves.io.schema.rules.string.ves_object_name": "true" + } + }, + "locale": { + "type": "string", + "description": " locale of the account\n\nExample: - \"en-US\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 16\n", + "title": "Locale", + "maxLength": 16, + "x-displayname": "Locale", + "x-ves-example": "en-US", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "16" + } + }, + "tos_accepted_at": { + "type": "string", + "description": " terms of services accepted timestamp\n\nExample: - \"2020-04-20T12:32:51.341959216Z\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.timestamp.lt_now: true\n", + "title": "TOS Accepted Timestamp", + "format": "date-time", + "x-displayname": "TOS Accepted Timestamp", + "x-ves-example": "2020-04-20T12:32:51.341959216Z", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.timestamp.lt_now": "true" + } + }, + "tos_version": { + "type": "string", + "description": " terms of services version\n\nExample: - \"v2022.3.14\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 12\n ves.io.schema.rules.string.min_len: 2\n", + "title": "TOS Version", + "minLength": 2, + "maxLength": 12, + "x-displayname": "TOS Version", + "x-ves-example": "v2022.3.14", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "12", + "ves.io.schema.rules.string.min_len": "2" + } + } + } + }, + "signupCompanyMeta": { + "type": "object", + "title": "Company Meta", + "x-displayname": "Company Meta", + "x-ves-proto-message": "ves.io.schema.signup.CompanyMeta", + "properties": { + "mailing_address": { + "description": " mailing address of the company", + "title": "Mailing Address", + "$ref": "#/definitions/signupContactMeta", + "x-displayname": "Mailing Address" + }, + "name": { + "type": "string", + "description": " name of the company\n\nExample: - \"F5 Networks, Inc\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Name", + "maxLength": 256, + "x-displayname": "Name", + "x-ves-example": "F5 Networks, Inc", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + } + } + }, + "signupContactMeta": { + "type": "object", + "description": "Instance of one single contact that can be used to communicate with customers.\nDepending on contact type we use these details to send general communication (regular, physical mail) or invoices.", + "title": "ContactMeta", + "x-displayname": "ContactMeta", + "x-ves-proto-message": "ves.io.schema.signup.ContactMeta", + "properties": { + "address1": { + "type": "string", + "description": " address line 1\n\nExample: - \"1234 Main road\"-", + "title": "address1", + "x-displayname": "Address Line 1", + "x-ves-example": "1234 Main road" + }, + "address2": { + "type": "string", + "description": " address line 2\n\nExample: - \"P.O BOX 56\"-", + "title": "address2", + "x-displayname": "Address Line 2", + "x-ves-example": "P.O BOX 56" + }, + "city": { + "type": "string", + "description": " city / town of the contact\n\nExample: - \"Sunnyvale\"-", + "title": "city", + "x-displayname": "City", + "x-ves-example": "Sunnyvale" + }, + "country": { + "type": "string", + "description": " country of contact (e.g. USA). refer to https://en.wikipedia.org/wiki/ISO_3166-1, column alpha-2\n\nExample: - \"US\"-", + "title": "country", + "x-displayname": "Country", + "x-ves-example": "US" + }, + "county": { + "type": "string", + "description": " county (optional, for countries where they have counties)\n\nExample: - \"Santa Clara\"-", + "title": "county", + "x-displayname": "County", + "x-ves-example": "Santa Clara" + }, + "phone_number": { + "type": "string", + "description": " phone number of the contact\n\nExample: - \"+11234567890\"-", + "title": "phone_number", + "x-displayname": "Phone Number", + "x-ves-example": "+11234567890" + }, + "state": { + "type": "string", + "description": " state (optional, for countries where they have states)\n\nExample: - \"California\"-", + "title": "state", + "x-displayname": "State", + "x-ves-example": "California" + }, + "state_code": { + "type": "string", + "description": " state code (optional, for countries where they have states)\n\nExample: - \"CA\"-", + "title": "state code", + "x-displayname": "State Code", + "x-ves-example": "CA" + }, + "zip_code": { + "type": "string", + "description": " zip or postal code\n\nExample: - \"95054\"-", + "title": "zip_code", + "x-displayname": "ZIP code", + "x-ves-example": "95054" + } + } + }, + "signupUserMeta": { + "type": "object", + "title": "User Meta", + "x-displayname": "User Meta", + "x-ves-proto-message": "ves.io.schema.signup.UserMeta", + "properties": { + "contact_number": { + "type": "string", + "description": " contact number of the user\n\nExample: - \"+14084004001\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Contact Number", + "maxLength": 256, + "x-displayname": "Contact Number", + "x-ves-example": "+14084004001", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "email": { + "type": "string", + "description": " email of the user\n\nExample: - \"jane.doe@gmail.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "E-mail", + "maxLength": 256, + "x-displayname": "E-mail", + "x-ves-example": "jane.doe@gmail.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "first_name": { + "type": "string", + "description": " first name of the user\n\nExample: - \"Jane\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "First Name", + "maxLength": 256, + "x-displayname": "First Name", + "x-ves-example": "Jane", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "last_name": { + "type": "string", + "description": " last name of the user\n\nExample: - \"Doe\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Last Name", + "maxLength": 256, + "x-displayname": "Last Name", + "x-ves-example": "Doe", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + } + } + } + }, + "x-displayname": "", + "x-stream-definitions": { + "crudapiObjectListRsp": { + "properties": { + "error": { + "$ref": "#/definitions/runtimeStreamError" + }, + "result": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "title": "Stream result of crudapiObjectListRsp", + "type": "object" + } + }, + "x-ves-proto-file": "ves.io/schema/marketplace/xc_saas/asb/message/crudapi/api.proto" +}` diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.vesmsg.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.vesmsg.go new file mode 100644 index 000000000..a76e9f481 --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/api.vesmsg.go @@ -0,0 +1,1710 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_marketplace_xc_saas_asb_message "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/marketplace/xc_saas/asb/message" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateReq) DeepCopy() *ObjectCreateReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateReqValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateReq) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateReq) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateReqValidator = func() *ValidateObjectCreateReq { + v := &ValidateObjectCreateReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_marketplace_xc_saas_asb_message.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateReqValidator() db.Validator { + return DefaultObjectCreateReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateRsp) DeepCopy() *ObjectCreateRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateRspValidator = func() *ValidateObjectCreateRsp { + v := &ValidateObjectCreateRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_marketplace_xc_saas_asb_message.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateRspValidator() db.Validator { + return DefaultObjectCreateRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteReq) DeepCopy() *ObjectDeleteReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteReqValidator = func() *ValidateObjectDeleteReq { + v := &ValidateObjectDeleteReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteReqValidator() db.Validator { + return DefaultObjectDeleteReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteRsp) DeepCopy() *ObjectDeleteRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteRspValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteRspValidator = func() *ValidateObjectDeleteRsp { + v := &ValidateObjectDeleteRsp{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteRspValidator() db.Validator { + return DefaultObjectDeleteRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetReq) DeepCopy() *ObjectGetReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectGetReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["all_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("all_backrefs")) + if err := fv(ctx, m.GetAllBackrefs(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["backref_types"]; exists { + + vOpts := append(opts, db.WithValidateField("backref_types")) + for idx, item := range m.GetBackrefTypes() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetReqValidator = func() *ValidateObjectGetReq { + v := &ValidateObjectGetReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectGetReqValidator() db.Validator { + return DefaultObjectGetReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetRsp) DeepCopy() *ObjectGetRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectGetRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectGetRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectGetRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ent_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("ent_backrefs")) + for idx, item := range m.GetEntBackrefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetRspValidator = func() *ValidateObjectGetRsp { + v := &ValidateObjectGetRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_marketplace_xc_saas_asb_message.SpecTypeValidator().Validate + + return v +}() + +func ObjectGetRspValidator() db.Validator { + return DefaultObjectGetRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListReq) DeepCopy() *ObjectListReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectListReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace_filter")) + for idx, item := range m.GetNamespaceFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["page_limit"]; exists { + + vOpts := append(opts, db.WithValidateField("page_limit")) + if err := fv(ctx, m.GetPageLimit(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["page_start"]; exists { + + vOpts := append(opts, db.WithValidateField("page_start")) + if err := fv(ctx, m.GetPageStart(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_filter")) + for idx, item := range m.GetTenantFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListReqValidator = func() *ValidateObjectListReq { + v := &ValidateObjectListReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectListReqValidator() db.Validator { + return DefaultObjectListReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRsp) DeepCopy() *ObjectListRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRsp) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateObjectListRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["next_page"]; exists { + + vOpts := append(opts, db.WithValidateField("next_page")) + if err := fv(ctx, m.GetNextPage(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uids"]; exists { + + vOpts := append(opts, db.WithValidateField("uids")) + for idx, item := range m.GetUids() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspValidator = func() *ValidateObjectListRsp { + v := &ValidateObjectListRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ObjectListRspItemValidator().Validate + + return v +}() + +func ObjectListRspValidator() db.Validator { + return DefaultObjectListRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRspItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRspItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRspItem) DeepCopy() *ObjectListRspItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRspItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRspItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRspItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspItemValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRspItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRspItem) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectListRspItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRspItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRspItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRspItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspItemValidator = func() *ValidateObjectListRspItem { + v := &ValidateObjectListRspItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_marketplace_xc_saas_asb_message.SpecTypeValidator().Validate + + return v +}() + +func ObjectListRspItemValidator() db.Validator { + return DefaultObjectListRspItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceReq) DeepCopy() *ObjectReplaceReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectReplaceReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceReqValidator = func() *ValidateObjectReplaceReq { + v := &ValidateObjectReplaceReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_marketplace_xc_saas_asb_message.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceReqValidator() db.Validator { + return DefaultObjectReplaceReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceRsp) DeepCopy() *ObjectReplaceRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectReplaceRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectReplaceRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectReplaceRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceRspValidator = func() *ValidateObjectReplaceRsp { + v := &ValidateObjectReplaceRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_marketplace_xc_saas_asb_message.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceRspValidator() db.Validator { + return DefaultObjectReplaceRspValidator +} + +func (m *ObjectCreateReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + _ = f + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectCreateRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectGetRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectGetRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectGetRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectGetRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectGetRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectGetRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectListRspItem) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() + +} + +func (m *ObjectListRspItem) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectListRspItem) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectListRspItem) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata + +} + +func (m *ObjectListRspItem) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectListRspItem) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() +} + +func (m *ObjectReplaceReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + _ = f + f.Metadata = m1.Metadata + + f.Spec = m1.Spec +} + +func (m *ObjectReplaceReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectReplaceRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_marketplace_xc_saas_asb_message.DBObject) + _ = f + + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectReplaceRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/pkg.vespkg.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/pkg.vespkg.go new file mode 100644 index 000000000..846568fe0 --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/crudapi/pkg.vespkg.go @@ -0,0 +1,81 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateReq"] = ObjectCreateReqValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectCreateRsp"] = ObjectCreateRspValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteReq"] = ObjectDeleteReqValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectDeleteRsp"] = ObjectDeleteRspValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetReq"] = ObjectGetReqValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectGetRsp"] = ObjectGetRspValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListReq"] = ObjectListReqValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRsp"] = ObjectListRspValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectListRspItem"] = ObjectListRspItemValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceReq"] = ObjectReplaceReqValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.ObjectReplaceRsp"] = ObjectReplaceRspValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + csr = mdr.PvtCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.marketplace.xc_saas.asb.message.crudapi.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.pb.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.pb.go new file mode 100644 index 000000000..25a42a915 --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.pb.go @@ -0,0 +1,792 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/marketplace/xc_saas/asb/message/object.proto + +package message + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Message object +// +// x-displayName: "Message" +// Message object +type Object struct { + // metadata + // + // x-displayName: "Metadata" + // Standard object's metadata + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // System generated object's metadata + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // Specification of Object + Spec *SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *Object) Reset() { *m = Object{} } +func (*Object) ProtoMessage() {} +func (*Object) Descriptor() ([]byte, []int) { + return fileDescriptor_d53bbc147bcb3f62, []int{0} +} +func (m *Object) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Object) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Object) XXX_Merge(src proto.Message) { + xxx_messageInfo_Object.Merge(m, src) +} +func (m *Object) XXX_Size() int { + return m.Size() +} +func (m *Object) XXX_DiscardUnknown() { + xxx_messageInfo_Object.DiscardUnknown(m) +} + +var xxx_messageInfo_Object proto.InternalMessageInfo + +func (m *Object) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *Object) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *Object) GetSpec() *SpecType { + if m != nil { + return m.Spec + } + return nil +} + +// Message specification +// +// x-displayName: "Message object specification" +// Shape of the message specification +type SpecType struct { + // gc_spec + // + // x-displayName: "GC Spec" + GcSpec *GlobalSpecType `protobuf:"bytes,1,opt,name=gc_spec,json=gcSpec,proto3" json:"gc_spec,omitempty"` +} + +func (m *SpecType) Reset() { *m = SpecType{} } +func (*SpecType) ProtoMessage() {} +func (*SpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_d53bbc147bcb3f62, []int{1} +} +func (m *SpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_SpecType.Merge(m, src) +} +func (m *SpecType) XXX_Size() int { + return m.Size() +} +func (m *SpecType) XXX_DiscardUnknown() { + xxx_messageInfo_SpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_SpecType proto.InternalMessageInfo + +func (m *SpecType) GetGcSpec() *GlobalSpecType { + if m != nil { + return m.GcSpec + } + return nil +} + +func init() { + proto.RegisterType((*Object)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.Object") + golang_proto.RegisterType((*Object)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.Object") + proto.RegisterType((*SpecType)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.SpecType") + golang_proto.RegisterType((*SpecType)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.SpecType") +} + +func init() { + proto.RegisterFile("ves.io/schema/marketplace/xc_saas/asb/message/object.proto", fileDescriptor_d53bbc147bcb3f62) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/marketplace/xc_saas/asb/message/object.proto", fileDescriptor_d53bbc147bcb3f62) +} + +var fileDescriptor_d53bbc147bcb3f62 = []byte{ + // 404 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x92, 0x31, 0x8f, 0xd3, 0x30, + 0x14, 0x80, 0x63, 0x40, 0xa5, 0x0a, 0x12, 0x48, 0x99, 0x4a, 0x11, 0x16, 0x2a, 0x0b, 0x4b, 0x6c, + 0x09, 0x06, 0x54, 0x24, 0x18, 0x58, 0x18, 0xa0, 0x42, 0xa2, 0x88, 0x81, 0xa5, 0xb2, 0xdd, 0x57, + 0x37, 0x34, 0xc1, 0x56, 0xec, 0x56, 0xed, 0x76, 0x3f, 0xe1, 0x7e, 0xc4, 0x0d, 0xf7, 0x33, 0x3a, + 0xde, 0xd8, 0xb1, 0xd3, 0xe9, 0xea, 0x2c, 0x37, 0xf6, 0x27, 0x9c, 0xce, 0x49, 0xaa, 0xb6, 0xd3, + 0x75, 0x7b, 0x2f, 0xef, 0x7d, 0x5f, 0xfc, 0xfc, 0x1c, 0x7e, 0x9a, 0x81, 0x21, 0x89, 0xa2, 0x46, + 0x8c, 0x21, 0x63, 0x34, 0x63, 0xf9, 0x04, 0xac, 0x4e, 0x99, 0x00, 0x3a, 0x17, 0x03, 0xc3, 0x98, + 0xa1, 0xcc, 0x70, 0x9a, 0x81, 0x31, 0x4c, 0x02, 0x55, 0xfc, 0x1f, 0x08, 0x4b, 0x74, 0xae, 0xac, + 0x8a, 0xe2, 0x92, 0x25, 0x25, 0x4b, 0xf6, 0x58, 0x52, 0xb1, 0x84, 0x19, 0x4e, 0x2a, 0xb6, 0x1d, + 0xcb, 0xc4, 0x8e, 0xa7, 0x9c, 0x08, 0x95, 0x51, 0xa9, 0xa4, 0xa2, 0xde, 0xc2, 0xa7, 0x23, 0x9f, + 0xf9, 0xc4, 0x47, 0xa5, 0xbd, 0xdd, 0x3d, 0xed, 0x64, 0x76, 0xa1, 0xc1, 0x54, 0xe8, 0xab, 0x43, + 0x54, 0x69, 0x9b, 0xa8, 0xff, 0x75, 0xf1, 0xe5, 0x61, 0x71, 0x8f, 0xeb, 0x5c, 0xa3, 0xb0, 0xf1, + 0xd3, 0x4f, 0x18, 0x75, 0xc3, 0x66, 0x06, 0x96, 0x0d, 0x99, 0x65, 0x2d, 0xf4, 0x06, 0xbd, 0x7b, + 0xf6, 0xfe, 0x35, 0x39, 0x1c, 0xb7, 0x6c, 0xec, 0x81, 0x65, 0xbf, 0x17, 0x1a, 0x7e, 0xed, 0xda, + 0xa3, 0x1f, 0xe1, 0x0b, 0xb3, 0x30, 0x16, 0xb2, 0xc1, 0xce, 0xf0, 0xc8, 0x1b, 0xde, 0x1e, 0x19, + 0xfa, 0xbe, 0xeb, 0xc8, 0xf3, 0xbc, 0x64, 0x7b, 0xb5, 0xed, 0x7b, 0xf8, 0xc4, 0x68, 0x10, 0xad, + 0xc7, 0x5e, 0xf1, 0x91, 0x9c, 0x74, 0xe7, 0xa4, 0xaf, 0x41, 0x78, 0xad, 0x97, 0x74, 0x78, 0xd8, + 0xac, 0xbf, 0x44, 0x7f, 0xc2, 0xa7, 0x52, 0x0c, 0xbc, 0xbb, 0x1c, 0xf0, 0xf3, 0x89, 0xee, 0x6f, + 0xa9, 0xe2, 0x2c, 0xdd, 0xfd, 0xa1, 0x21, 0xc5, 0x7d, 0xfc, 0xf5, 0x02, 0x2d, 0xbf, 0x04, 0xab, + 0x0d, 0x0e, 0xd6, 0x1b, 0x1c, 0x6c, 0x37, 0x18, 0x9d, 0x39, 0x8c, 0x2e, 0x1d, 0x46, 0x57, 0x0e, + 0xa3, 0x95, 0xc3, 0x68, 0xed, 0x30, 0xba, 0x71, 0x18, 0xdd, 0x3a, 0x1c, 0x6c, 0x1d, 0x46, 0xe7, + 0x05, 0x0e, 0x96, 0x05, 0x46, 0xab, 0x02, 0x07, 0xeb, 0x02, 0x07, 0x7f, 0x85, 0x54, 0x7a, 0x22, + 0xc9, 0x4c, 0xa5, 0x16, 0xf2, 0x9c, 0x91, 0xa9, 0xa1, 0x3e, 0x18, 0xa9, 0x3c, 0x8b, 0x75, 0xae, + 0x66, 0xc9, 0x10, 0xf2, 0xb8, 0x2e, 0x53, 0xcd, 0xa5, 0xa2, 0x30, 0xb7, 0xd5, 0x42, 0x1f, 0xf6, + 0x5e, 0x78, 0xc3, 0xaf, 0xfc, 0xc3, 0x5d, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8c, 0x14, 0x8f, 0x3e, + 0x01, 0x03, 0x00, 0x00, +} + +func (this *Object) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Object) + if !ok { + that2, ok := that.(Object) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *SpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SpecType) + if !ok { + that2, ok := that.(SpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GcSpec.Equal(that1.GcSpec) { + return false + } + return true +} +func (this *Object) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&message.Object{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&message.SpecType{") + if this.GcSpec != nil { + s = append(s, "GcSpec: "+fmt.Sprintf("%#v", this.GcSpec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringObject(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *Object) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Object) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Object) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *SpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GcSpec != nil { + { + size, err := m.GcSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintObject(dAtA []byte, offset int, v uint64) int { + offset -= sovObject(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Object) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *SpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GcSpec != nil { + l = m.GcSpec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func sovObject(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozObject(x uint64) (n int) { + return sovObject(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *Object) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Object{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(this.Spec.String(), "SpecType", "SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SpecType{`, + `GcSpec:` + strings.Replace(fmt.Sprintf("%v", this.GcSpec), "GlobalSpecType", "GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringObject(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *Object) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Object: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Object: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GcSpec == nil { + m.GcSpec = &GlobalSpecType{} + } + if err := m.GcSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipObject(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthObject + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupObject + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthObject + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthObject = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowObject = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupObject = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.vesmsg.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.vesmsg.go new file mode 100644 index 000000000..bb6acc2da --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.vesmsg.go @@ -0,0 +1,103 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package message + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *SpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SpecType) DeepCopy() *SpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["gc_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("gc_spec")) + if err := fv(ctx, m.GetGcSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSpecTypeValidator = func() *ValidateSpecType { + v := &ValidateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["gc_spec"] = GlobalSpecTypeValidator().Validate + + return v +}() + +func SpecTypeValidator() db.Validator { + return DefaultSpecTypeValidator +} diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.vesobj.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.vesobj.go new file mode 100644 index 000000000..0f6982a32 --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/object.vesobj.go @@ -0,0 +1,744 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package message + +import ( + "context" + "fmt" + "math/rand" + "strings" + "time" + + google_protobuf "github.com/gogo/protobuf/types" + multierror "github.com/hashicorp/go-multierror" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/store" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + + "github.com/google/uuid" + "gopkg.volterra.us/stdlib/db/sro" +) + +const ( + ObjectDefTblName = "ves.io.schema.marketplace.xc_saas.asb.message.Object.default" + ObjectType = "ves.io.schema.marketplace.xc_saas.asb.message.Object" +) + +// augmented methods on protoc/std generated struct +func (e *Object) Type() string { + return "ves.io.schema.marketplace.xc_saas.asb.message.Object" +} + +func (e *Object) ToEntry() db.Entry { + return NewDBObject(e, db.OpWithNoCopy()) +} + +func LocateObject(ctx context.Context, locator db.EntryLocator, uid, tenant, namespace, name string, opts ...db.FindEntryOpt) (*DBObject, error) { + timestamp, err := google_protobuf.TimestampProto(time.Now()) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if uid != "" { + obj, exist, err := FindObject(ctx, locator, uid, opts...) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if exist && obj != nil { + obj.SystemMetadata.ModificationTimestamp = timestamp + return obj, nil + } + } else { + uid = uuid.New().String() + } + + sysMD := &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: tenant, + CreatorClass: locator.GetCreatorClass(), + CreatorId: locator.GetCreatorID(), + CreationTimestamp: timestamp, + ModificationTimestamp: timestamp, + } + obj := NewDBObject(nil) + obj.SetObjUid(uid) + obj.SetObjName(name) + obj.SetObjNamespace(namespace) + obj.SetObjSystemMetadata(sysMD) + obj.Spec = &SpecType{} + return obj, nil +} + +func FindObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, ObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBObject, error) { + var ( + oList []*DBObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, ObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", ObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *Object) DeepCopy() *Object { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &Object{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *Object) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *Object) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +func (e *Object) GetTraceInfo() string { + sysMD := e.GetSystemMetadata() + if sysMD == nil { + return "" + } + return sysMD.GetTraceInfo() +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBObject struct { + // Anonymous embed of standard protobuf generated struct + *Object + + tbl db.Table +} + +// GetObjectIndexers returns the associated store.Indexers for Object +func GetObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBObject) Key(opts ...db.KeyOpt) (string, error) { + ko := db.NewKeyOpts(opts...) + if ko.Public { + md := e.GetMetadata() + if md == nil { + return "", fmt.Errorf("Metadata is nil") + } + return fmt.Sprintf("%s/%s", md.GetNamespace(), md.GetName()), nil + } else { + if e.GetSystemMetadata() == nil { + return "", fmt.Errorf("SystemMetadata is nil") + } + return e.GetSystemMetadata().GetUid(), nil + } +} + +func (e *DBObject) Type() string { + return "ves.io.schema.marketplace.xc_saas.asb.message.Object" +} + +func (e *DBObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBObject(e.Object) + n.tbl = e.tbl + return n +} + +func (e *DBObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBObject) Sample(r *rand.Rand) (db.Entry, error) { + uid := uuid.New().String() + o := &Object{ + Metadata: &ves_io_schema.ObjectMetaType{ + Name: uuid.New().String(), + Namespace: uuid.New().String(), + Uid: uid, + }, + SystemMetadata: &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: uuid.New().String(), + }, + Spec: &SpecType{}, + } + + return &DBObject{o, e.tbl}, nil +} + +func (e *DBObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectValidator().Validate(ctx, e.Object, opts...) +} + +func (e *DBObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetSystemMetadataDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.marketplace.xc_saas.asb.message.Object." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBObject) ToStore() store.Entry { + return e.Object +} + +func (e *DBObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBObject) GetTable() db.Table { + return e.tbl +} + +func NewDBObject(o *Object, opts ...db.OpOption) *DBObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBObject{Object: &Object{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBObject{Object: obj} +} + +func NewEntryObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBObject(nil, opts...) + case *Object: + return NewDBObject(v, opts...) + } + return nil +} + +// GetDRefInfo for the field's type +func (e *DBObject) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if e.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := e.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +// Implement sro.SRO interface +func (o *DBObject) GetObjMetadata() sro.ObjectMetadata { + if o.GetMetadata() == nil { + return nil + } + return o.GetMetadata() +} + +func (o *DBObject) SetObjMetadata(in sro.ObjectMetadata) error { + if in == nil { + o.Metadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.ObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjMetadata expected *ObjectMetaType, got %T", in) + } + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSystemMetadata() sro.SystemMetadata { + if o.GetSystemMetadata() == nil { + return nil + } + return o.GetSystemMetadata() +} + +func (o *DBObject) SetObjSystemMetadata(in sro.SystemMetadata) error { + if in == nil { + o.SystemMetadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.SystemObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjSystemMetadata expected *SystemObjectMetaType, got %T", in) + } + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjSpec() sro.Spec { + if o.GetSpec() == nil { + return nil + } + return o.GetSpec() +} + +func (o *DBObject) SetObjSpec(in sro.Spec) error { + if in == nil { + o.Spec = nil + return nil + } + + m, ok := in.(*SpecType) + if !ok { + return fmt.Errorf("Error: SetObjSpec expected *SpecType, got %T", in) + } + o.Spec = m + return nil +} + +func (o *DBObject) GetObjType() string { + return o.Type() +} + +// GetObjUid returns uuid from source-of-truth, in systemMetadata +func (o *DBObject) GetObjUid() string { + return o.GetSystemMetadata().GetUid() +} + +// GetObjTenant returns tenant from source-of-truth, in systemMetadata +func (o *DBObject) GetObjTenant() string { + return o.GetSystemMetadata().GetTenant() +} + +// GetObjCreatorClass returns creator-class from systemMetadata +func (o *DBObject) GetObjCreatorClass() string { + return o.GetSystemMetadata().GetCreatorClass() +} + +// GetObjectIndex returns object-index from systemMetadata +func (o *DBObject) GetObjectIndex() uint32 { + return o.GetSystemMetadata().GetObjectIndex() +} + +// SetObjUid sets uuid as a hint, in Metadata +func (o *DBObject) SetObjUid(u string) error { + // TODO: make sure 'u' is of uuid form + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Uid = u + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjName() string { + return o.GetMetadata().GetName() +} + +func (o *DBObject) SetObjName(n string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Name = n + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjNamespace() string { + return o.GetMetadata().GetNamespace() +} + +func (o *DBObject) SetObjNamespace(ns string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Namespace = ns + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjLabels() map[string]string { + return o.GetMetadata().GetLabels() +} + +func (o *DBObject) SetObjLabels(l map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Labels = l + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjAnnotations() map[string]string { + return o.GetMetadata().GetAnnotations() +} + +func (o *DBObject) SetObjAnnotations(a map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Annotations = a + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDescription() string { + return o.GetMetadata().GetDescription() +} + +func (o *DBObject) SetObjDescription(d string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Description = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDisable() bool { + return o.GetMetadata().GetDisable() +} + +func (o *DBObject) SetObjDisable(d bool) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Disable = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSREDisable() bool { + return o.GetSystemMetadata().GetSreDisable() +} + +func (o *DBObject) SetObjSREDisable(d bool) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.SreDisable = d + return nil +} + +func (o *DBObject) SetObjCreator(cls, inst string) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.CreatorClass = cls + m.CreatorId = inst + o.SystemMetadata = m + return nil +} + +func (o *DBObject) SetObjectIndex(idx uint32) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.ObjectIndex = idx + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjFinalizers() []string { + return o.GetSystemMetadata().GetFinalizers() +} + +func (o *DBObject) SetObjFinalizers(values ...string) error { + m := o.GetSystemMetadata() + if m == nil { + return fmt.Errorf("Object has nil system_metadata") + } + m.Finalizers = values + return nil +} + +func (o *DBObject) GetObjPendingInitializers() []string { + initializers := o.GetSystemMetadata().GetInitializers() + var pending []string + for _, p := range initializers.GetPending() { + pending = append(pending, p.GetName()) + } + return pending +} + +func (o *DBObject) SetObjPendingInitializers(pending ...string) { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + o.SystemMetadata = m + } + initializers := m.GetInitializers() + if initializers == nil { + initializers = &ves_io_schema.InitializersType{} + m.Initializers = initializers + } + var pendingInitializers []*ves_io_schema.InitializerType + for _, p := range pending { + pendingInitializers = append(pendingInitializers, &ves_io_schema.InitializerType{Name: p}) + } + initializers.Pending = pendingInitializers +} + +func (o *DBObject) IsSpecEqual(other sro.SRO) bool { + otherObjSpec := other.GetObjSpec() + otherSpec, ok := otherObjSpec.(*SpecType) + if !ok { + return false + } + + return o.GetSpec().Equal(otherSpec) +} + +// GetVtrpId returns vtrpId of the object. +func (o *DBObject) GetVtrpId() string { + return o.GetSystemMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the object. +func (o *DBObject) SetVtrpId(id string) { + o.GetSystemMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *DBObject) GetVtrpStale() bool { + return o.GetSystemMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the object +func (o *DBObject) SetVtrpStale(isStale bool) { + o.GetSystemMetadata().SetVtrpStale(isStale) +} + +type ValidateObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*Object) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *Object got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, e.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, e.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectValidator = func() *ValidateObject { + v := &ValidateObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = SpecTypeValidator().Validate + + return v +}() + +func ObjectValidator() db.Validator { + return DefaultObjectValidator +} diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/pkg.vespkg.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/pkg.vespkg.go new file mode 100644 index 000000000..f51f145eb --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/pkg.vespkg.go @@ -0,0 +1,66 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package message + +import ( + "reflect" + + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/store" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.marketplace.xc_saas.asb.message.SpecType"] = SpecTypeValidator() + + vr["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = ObjectValidator() + + vr["ves.io.schema.marketplace.xc_saas.asb.message.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.marketplace.xc_saas.asb.message.SignupMessage"] = SignupMessageValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + mdr.EntryFactory["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = NewEntryObject + mdr.EntryStoreMap["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = reflect.TypeOf(&DBObject{}) + mdr.EntryIndexers["ves.io.schema.marketplace.xc_saas.asb.message.Object"] = GetObjectIndexers + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/types.pb.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/types.pb.go new file mode 100644 index 000000000..256e0a87a --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/types.pb.go @@ -0,0 +1,1386 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/marketplace/xc_saas/asb/message/types.proto + +package message + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + signup "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/signup" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// ActionType +// +// x-displayName: "Action Type" +// Type of action to perform +type ActionType int32 + +const ( + // x-displayName: "ENABLE" + // Provision the requested service for tenant creation + ENABLE ActionType = 0 +) + +var ActionType_name = map[int32]string{ + 0: "ENABLE", +} + +var ActionType_value = map[string]int32{ + "ENABLE": 0, +} + +func (ActionType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_fd0ad07b3438cde8, []int{0} +} + +// GlobalSpecType +// +// x-displayName: "Specification" +// Shape of message in the storage backend. +type GlobalSpecType struct { + // Raw JSON + // + // x-displayName: "Raw JSON" + // x-example: "{"documentType":"teem-service-order","documentVersion":"1.0","serviceOrderType":"provisioning"}" + // Raw JSON message string that holds metadata and payload related to provisioning + RawJson *types.Struct `protobuf:"bytes,1,opt,name=raw_json,json=rawJson,proto3" json:"raw_json,omitempty"` + // Parsed Type + // + // x-displayName: "Parsed Type" + // Parsed type is the parsed message representation as per the use case. + // + // Types that are valid to be assigned to ParsedType: + // *GlobalSpecType_None + // *GlobalSpecType_SignupMessage + ParsedType isGlobalSpecType_ParsedType `protobuf_oneof:"parsed_type"` +} + +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_fd0ad07b3438cde8, []int{0} +} +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) +} +func (m *GlobalSpecType) XXX_Size() int { + return m.Size() +} +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo + +type isGlobalSpecType_ParsedType interface { + isGlobalSpecType_ParsedType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type GlobalSpecType_None struct { + None *schema.Empty `protobuf:"bytes,3,opt,name=none,proto3,oneof" json:"none,omitempty"` +} +type GlobalSpecType_SignupMessage struct { + SignupMessage *SignupMessage `protobuf:"bytes,4,opt,name=signup_message,json=signupMessage,proto3,oneof" json:"signup_message,omitempty"` +} + +func (*GlobalSpecType_None) isGlobalSpecType_ParsedType() {} +func (*GlobalSpecType_SignupMessage) isGlobalSpecType_ParsedType() {} + +func (m *GlobalSpecType) GetParsedType() isGlobalSpecType_ParsedType { + if m != nil { + return m.ParsedType + } + return nil +} + +func (m *GlobalSpecType) GetRawJson() *types.Struct { + if m != nil { + return m.RawJson + } + return nil +} + +func (m *GlobalSpecType) GetNone() *schema.Empty { + if x, ok := m.GetParsedType().(*GlobalSpecType_None); ok { + return x.None + } + return nil +} + +func (m *GlobalSpecType) GetSignupMessage() *SignupMessage { + if x, ok := m.GetParsedType().(*GlobalSpecType_SignupMessage); ok { + return x.SignupMessage + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*GlobalSpecType_None)(nil), + (*GlobalSpecType_SignupMessage)(nil), + } +} + +// Signup Message +// +// x-displayName: "Signup Message" +// Signup message holds customer information and other related provisioning information needed to sign up the +// customer for F5XC services. +type SignupMessage struct { + // CRM Details + // + // x-displayName: "CRM Details" + // This field holds CRM information + CrmDetails *schema.CRMInfo `protobuf:"bytes,1,opt,name=crm_details,json=crmDetails,proto3" json:"crm_details,omitempty"` + // Company Details + // + // x-displayName: "Company Details" + // x-required + // Details of the company + CompanyDetails *signup.CompanyMeta `protobuf:"bytes,2,opt,name=company_details,json=companyDetails,proto3" json:"company_details,omitempty"` + // User Details + // + // x-displayName: "User Details" + // x-required + // Details of the user + UserDetails *signup.UserMeta `protobuf:"bytes,3,opt,name=user_details,json=userDetails,proto3" json:"user_details,omitempty"` + // Account Details + // + // x-displayName: "Account Details" + // x-required + // Details of the new F5XC account to be created + AccountDetails *signup.AccountMeta `protobuf:"bytes,4,opt,name=account_details,json=accountDetails,proto3" json:"account_details,omitempty"` + // Action Type + // + // x-displayName: "Action Type" + // x-required + // Type of action to perform + ActionType ActionType `protobuf:"varint,5,opt,name=action_type,json=actionType,proto3,enum=ves.io.schema.marketplace.xc_saas.asb.message.ActionType" json:"action_type,omitempty"` + // Tenant ID + // + // x-displayName: "Tenant ID" + // Identifier for the corresponding tenant object + TenantId string `protobuf:"bytes,6,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` + // Signup ID + // + // x-displayName: "Signup ID" + // Identifier for the corresponding signup object + SignupId string `protobuf:"bytes,7,opt,name=signup_id,json=signupId,proto3" json:"signup_id,omitempty"` +} + +func (m *SignupMessage) Reset() { *m = SignupMessage{} } +func (*SignupMessage) ProtoMessage() {} +func (*SignupMessage) Descriptor() ([]byte, []int) { + return fileDescriptor_fd0ad07b3438cde8, []int{1} +} +func (m *SignupMessage) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SignupMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SignupMessage) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupMessage.Merge(m, src) +} +func (m *SignupMessage) XXX_Size() int { + return m.Size() +} +func (m *SignupMessage) XXX_DiscardUnknown() { + xxx_messageInfo_SignupMessage.DiscardUnknown(m) +} + +var xxx_messageInfo_SignupMessage proto.InternalMessageInfo + +func (m *SignupMessage) GetCrmDetails() *schema.CRMInfo { + if m != nil { + return m.CrmDetails + } + return nil +} + +func (m *SignupMessage) GetCompanyDetails() *signup.CompanyMeta { + if m != nil { + return m.CompanyDetails + } + return nil +} + +func (m *SignupMessage) GetUserDetails() *signup.UserMeta { + if m != nil { + return m.UserDetails + } + return nil +} + +func (m *SignupMessage) GetAccountDetails() *signup.AccountMeta { + if m != nil { + return m.AccountDetails + } + return nil +} + +func (m *SignupMessage) GetActionType() ActionType { + if m != nil { + return m.ActionType + } + return ENABLE +} + +func (m *SignupMessage) GetTenantId() string { + if m != nil { + return m.TenantId + } + return "" +} + +func (m *SignupMessage) GetSignupId() string { + if m != nil { + return m.SignupId + } + return "" +} + +func init() { + proto.RegisterEnum("ves.io.schema.marketplace.xc_saas.asb.message.ActionType", ActionType_name, ActionType_value) + golang_proto.RegisterEnum("ves.io.schema.marketplace.xc_saas.asb.message.ActionType", ActionType_name, ActionType_value) + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.GlobalSpecType") + proto.RegisterType((*SignupMessage)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.SignupMessage") + golang_proto.RegisterType((*SignupMessage)(nil), "ves.io.schema.marketplace.xc_saas.asb.message.SignupMessage") +} + +func init() { + proto.RegisterFile("ves.io/schema/marketplace/xc_saas/asb/message/types.proto", fileDescriptor_fd0ad07b3438cde8) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/marketplace/xc_saas/asb/message/types.proto", fileDescriptor_fd0ad07b3438cde8) +} + +var fileDescriptor_fd0ad07b3438cde8 = []byte{ + // 658 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0xbf, 0x4e, 0x1b, 0x31, + 0x18, 0x3f, 0x93, 0x14, 0x82, 0x53, 0x52, 0x74, 0xaa, 0x4a, 0x1a, 0x90, 0x9b, 0xd2, 0x05, 0x21, + 0xc5, 0x27, 0xa5, 0x43, 0x85, 0xd4, 0x25, 0x50, 0x54, 0x40, 0xa5, 0xc3, 0xd1, 0x2e, 0x2c, 0x27, + 0xe7, 0xce, 0x1c, 0x57, 0x72, 0x67, 0xcb, 0x76, 0x02, 0xd9, 0xfa, 0x08, 0x7d, 0x85, 0x6e, 0x7d, + 0x85, 0x8a, 0x85, 0xb1, 0x63, 0x46, 0xc6, 0x72, 0x59, 0x3a, 0x32, 0x75, 0xae, 0x62, 0x5f, 0x42, + 0x2e, 0xaa, 0xaa, 0xb2, 0xd9, 0xfe, 0xfd, 0xb9, 0xef, 0xf7, 0x7d, 0xf6, 0xc1, 0xad, 0x1e, 0x95, + 0x38, 0x62, 0x8e, 0xf4, 0x4f, 0x69, 0x4c, 0x9c, 0x98, 0x88, 0x33, 0xaa, 0x78, 0x87, 0xf8, 0xd4, + 0xb9, 0xf0, 0x3d, 0x49, 0x88, 0x74, 0x88, 0x6c, 0x3b, 0x31, 0x95, 0x92, 0x84, 0xd4, 0x51, 0x7d, + 0x4e, 0x25, 0xe6, 0x82, 0x29, 0x66, 0x37, 0x8c, 0x14, 0x1b, 0x29, 0x9e, 0x92, 0xe2, 0x4c, 0x8a, + 0x89, 0x6c, 0xe3, 0x4c, 0x5a, 0x6b, 0x84, 0x91, 0x3a, 0xed, 0xb6, 0xb1, 0xcf, 0x62, 0x27, 0x64, + 0x21, 0x73, 0xb4, 0x4b, 0xbb, 0x7b, 0xa2, 0x77, 0x7a, 0xa3, 0x57, 0xc6, 0xbd, 0xf6, 0x34, 0x64, + 0x2c, 0xec, 0xd0, 0x3b, 0x16, 0x49, 0xfa, 0x19, 0xb4, 0x36, 0x0b, 0x49, 0x25, 0xba, 0xbe, 0xca, + 0xd0, 0x67, 0xb3, 0xa8, 0x8a, 0x62, 0x2a, 0x15, 0x89, 0x79, 0x46, 0x58, 0xcd, 0x47, 0x66, 0x5c, + 0x45, 0x2c, 0xc9, 0x42, 0xd5, 0x5e, 0xe4, 0x41, 0x19, 0x85, 0x49, 0x97, 0x9b, 0xd8, 0x5e, 0xaf, + 0x39, 0xae, 0x2d, 0x4f, 0x9a, 0x6a, 0x4a, 0x6d, 0x2d, 0x0f, 0xf5, 0x48, 0x27, 0x0a, 0x88, 0xa2, + 0x19, 0x5a, 0x9f, 0x41, 0x23, 0x7a, 0xee, 0xe5, 0xbe, 0xbf, 0xfe, 0x1b, 0xc0, 0xca, 0xdb, 0x0e, + 0x6b, 0x93, 0xce, 0x11, 0xa7, 0xfe, 0x87, 0x3e, 0xa7, 0x76, 0x13, 0x96, 0x04, 0x39, 0xf7, 0x3e, + 0x49, 0x96, 0x54, 0x41, 0x1d, 0x6c, 0x94, 0x9b, 0x2b, 0xd8, 0x64, 0xc4, 0xe3, 0x8c, 0xf8, 0x48, + 0x77, 0xc0, 0x5d, 0x10, 0xe4, 0xfc, 0x40, 0xb2, 0xc4, 0xde, 0x84, 0xc5, 0x84, 0x25, 0xb4, 0x5a, + 0xd0, 0xfc, 0xc7, 0x38, 0x3f, 0xaa, 0xdd, 0x98, 0xab, 0xfe, 0x9e, 0xe5, 0x6a, 0x8e, 0x4d, 0x61, + 0xc5, 0xc4, 0xf4, 0xb2, 0x51, 0x55, 0x8b, 0x5a, 0xf5, 0x1a, 0xdf, 0x6b, 0xc0, 0xf8, 0x48, 0x9b, + 0x1c, 0x9a, 0xdd, 0x9e, 0xe5, 0x2e, 0xc9, 0xe9, 0x83, 0xed, 0x15, 0x58, 0xe6, 0x44, 0x48, 0x1a, + 0x78, 0xa3, 0x7e, 0xd9, 0xa5, 0xab, 0x4b, 0x50, 0x18, 0x5c, 0x82, 0xb9, 0x83, 0x62, 0x69, 0x6e, + 0xb9, 0xb0, 0xfe, 0xbd, 0x00, 0x97, 0x72, 0x0e, 0xf6, 0x2b, 0x58, 0xf6, 0x45, 0xec, 0x05, 0x54, + 0x91, 0xa8, 0x23, 0xb3, 0xe8, 0x4f, 0x66, 0x8a, 0xda, 0x71, 0x0f, 0xf7, 0x93, 0x13, 0xe6, 0x42, + 0x5f, 0xc4, 0x6f, 0x0c, 0xd3, 0x3e, 0x80, 0x8f, 0x7c, 0x16, 0x73, 0x92, 0xf4, 0x27, 0xe2, 0x39, + 0x2d, 0x7e, 0x3e, 0x23, 0x36, 0x05, 0xe2, 0x1d, 0x43, 0x3e, 0xa4, 0x8a, 0xb8, 0x95, 0x4c, 0x39, + 0xf6, 0x6a, 0xc1, 0x87, 0x5d, 0x49, 0xc5, 0xc4, 0xc8, 0x34, 0x14, 0xfd, 0xdd, 0xe8, 0xa3, 0xa4, + 0x42, 0xbb, 0x94, 0x47, 0x9a, 0xa9, 0x72, 0x88, 0xef, 0xb3, 0x6e, 0xa2, 0x26, 0x2e, 0xc5, 0x7f, + 0x95, 0xd3, 0x32, 0x64, 0x53, 0x4e, 0xa6, 0x1c, 0x7b, 0x1d, 0xc3, 0x32, 0xf1, 0x47, 0xf7, 0x45, + 0x37, 0xb1, 0xfa, 0xa0, 0x0e, 0x36, 0x2a, 0xcd, 0xad, 0x7b, 0x0e, 0xaa, 0xa5, 0x1d, 0x46, 0x77, + 0xcb, 0x85, 0x64, 0xb2, 0xb6, 0x57, 0xe1, 0xa2, 0xa2, 0x09, 0x49, 0x94, 0x17, 0x05, 0xd5, 0xf9, + 0x3a, 0xd8, 0x58, 0x74, 0x4b, 0xe6, 0x60, 0x3f, 0x18, 0x81, 0xd9, 0x25, 0x89, 0x82, 0xea, 0x82, + 0x01, 0xcd, 0xc1, 0x7e, 0xb0, 0x59, 0x85, 0xf0, 0xce, 0xd3, 0x86, 0x70, 0x7e, 0xf7, 0x7d, 0x6b, + 0xfb, 0xdd, 0xee, 0xb2, 0xb5, 0xfd, 0x15, 0x0c, 0x6e, 0x90, 0x75, 0x7d, 0x83, 0xac, 0xdb, 0x1b, + 0x04, 0x3e, 0xa7, 0x08, 0x7c, 0x4b, 0x11, 0xf8, 0x91, 0x22, 0x30, 0x48, 0x11, 0xb8, 0x4e, 0x11, + 0xf8, 0x99, 0x22, 0xf0, 0x2b, 0x45, 0xd6, 0x6d, 0x8a, 0xc0, 0x97, 0x21, 0xb2, 0xae, 0x86, 0x08, + 0x0c, 0x86, 0xc8, 0xba, 0x1e, 0x22, 0xeb, 0xd8, 0x0f, 0x19, 0x3f, 0x0b, 0x71, 0x8f, 0x75, 0x14, + 0x15, 0x82, 0xe0, 0xae, 0x74, 0xf4, 0xe2, 0x84, 0x89, 0xb8, 0xc1, 0x05, 0xeb, 0x45, 0x01, 0x15, + 0x8d, 0x31, 0xec, 0xf0, 0x76, 0xc8, 0x1c, 0x7a, 0xa1, 0xc6, 0x8f, 0xf7, 0xbf, 0xfe, 0x69, 0xed, + 0x79, 0xfd, 0x8a, 0x5e, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0x0e, 0xe7, 0x0f, 0xff, 0x0b, 0x05, + 0x00, 0x00, +} + +func (x ActionType) String() string { + s, ok := ActionType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RawJson.Equal(that1.RawJson) { + return false + } + if that1.ParsedType == nil { + if this.ParsedType != nil { + return false + } + } else if this.ParsedType == nil { + return false + } else if !this.ParsedType.Equal(that1.ParsedType) { + return false + } + return true +} +func (this *GlobalSpecType_None) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_None) + if !ok { + that2, ok := that.(GlobalSpecType_None) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.None.Equal(that1.None) { + return false + } + return true +} +func (this *GlobalSpecType_SignupMessage) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_SignupMessage) + if !ok { + that2, ok := that.(GlobalSpecType_SignupMessage) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SignupMessage.Equal(that1.SignupMessage) { + return false + } + return true +} +func (this *SignupMessage) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SignupMessage) + if !ok { + that2, ok := that.(SignupMessage) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CrmDetails.Equal(that1.CrmDetails) { + return false + } + if !this.CompanyDetails.Equal(that1.CompanyDetails) { + return false + } + if !this.UserDetails.Equal(that1.UserDetails) { + return false + } + if !this.AccountDetails.Equal(that1.AccountDetails) { + return false + } + if this.ActionType != that1.ActionType { + return false + } + if this.TenantId != that1.TenantId { + return false + } + if this.SignupId != that1.SignupId { + return false + } + return true +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&message.GlobalSpecType{") + if this.RawJson != nil { + s = append(s, "RawJson: "+fmt.Sprintf("%#v", this.RawJson)+",\n") + } + if this.ParsedType != nil { + s = append(s, "ParsedType: "+fmt.Sprintf("%#v", this.ParsedType)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GlobalSpecType_None) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&message.GlobalSpecType_None{` + + `None:` + fmt.Sprintf("%#v", this.None) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_SignupMessage) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&message.GlobalSpecType_SignupMessage{` + + `SignupMessage:` + fmt.Sprintf("%#v", this.SignupMessage) + `}`}, ", ") + return s +} +func (this *SignupMessage) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&message.SignupMessage{") + if this.CrmDetails != nil { + s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") + } + if this.CompanyDetails != nil { + s = append(s, "CompanyDetails: "+fmt.Sprintf("%#v", this.CompanyDetails)+",\n") + } + if this.UserDetails != nil { + s = append(s, "UserDetails: "+fmt.Sprintf("%#v", this.UserDetails)+",\n") + } + if this.AccountDetails != nil { + s = append(s, "AccountDetails: "+fmt.Sprintf("%#v", this.AccountDetails)+",\n") + } + s = append(s, "ActionType: "+fmt.Sprintf("%#v", this.ActionType)+",\n") + s = append(s, "TenantId: "+fmt.Sprintf("%#v", this.TenantId)+",\n") + s = append(s, "SignupId: "+fmt.Sprintf("%#v", this.SignupId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ParsedType != nil { + { + size := m.ParsedType.Size() + i -= size + if _, err := m.ParsedType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.RawJson != nil { + { + size, err := m.RawJson.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GlobalSpecType_None) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_None) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.None != nil { + { + size, err := m.None.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType_SignupMessage) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_SignupMessage) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SignupMessage != nil { + { + size, err := m.SignupMessage.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *SignupMessage) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SignupMessage) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SignupMessage) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.SignupId) > 0 { + i -= len(m.SignupId) + copy(dAtA[i:], m.SignupId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SignupId))) + i-- + dAtA[i] = 0x3a + } + if len(m.TenantId) > 0 { + i -= len(m.TenantId) + copy(dAtA[i:], m.TenantId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.TenantId))) + i-- + dAtA[i] = 0x32 + } + if m.ActionType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.ActionType)) + i-- + dAtA[i] = 0x28 + } + if m.AccountDetails != nil { + { + size, err := m.AccountDetails.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.UserDetails != nil { + { + size, err := m.UserDetails.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.CompanyDetails != nil { + { + size, err := m.CompanyDetails.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.CrmDetails != nil { + { + size, err := m.CrmDetails.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RawJson != nil { + l = m.RawJson.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ParsedType != nil { + n += m.ParsedType.Size() + } + return n +} + +func (m *GlobalSpecType_None) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.None != nil { + l = m.None.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType_SignupMessage) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SignupMessage != nil { + l = m.SignupMessage.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *SignupMessage) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CrmDetails != nil { + l = m.CrmDetails.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.CompanyDetails != nil { + l = m.CompanyDetails.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.UserDetails != nil { + l = m.UserDetails.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.AccountDetails != nil { + l = m.AccountDetails.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ActionType != 0 { + n += 1 + sovTypes(uint64(m.ActionType)) + } + l = len(m.TenantId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.SignupId) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType{`, + `RawJson:` + strings.Replace(fmt.Sprintf("%v", this.RawJson), "Struct", "types.Struct", 1) + `,`, + `ParsedType:` + fmt.Sprintf("%v", this.ParsedType) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_None) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_None{`, + `None:` + strings.Replace(fmt.Sprintf("%v", this.None), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_SignupMessage) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_SignupMessage{`, + `SignupMessage:` + strings.Replace(fmt.Sprintf("%v", this.SignupMessage), "SignupMessage", "SignupMessage", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SignupMessage) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SignupMessage{`, + `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, + `CompanyDetails:` + strings.Replace(fmt.Sprintf("%v", this.CompanyDetails), "CompanyMeta", "signup.CompanyMeta", 1) + `,`, + `UserDetails:` + strings.Replace(fmt.Sprintf("%v", this.UserDetails), "UserMeta", "signup.UserMeta", 1) + `,`, + `AccountDetails:` + strings.Replace(fmt.Sprintf("%v", this.AccountDetails), "AccountMeta", "signup.AccountMeta", 1) + `,`, + `ActionType:` + fmt.Sprintf("%v", this.ActionType) + `,`, + `TenantId:` + fmt.Sprintf("%v", this.TenantId) + `,`, + `SignupId:` + fmt.Sprintf("%v", this.SignupId) + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RawJson", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RawJson == nil { + m.RawJson = &types.Struct{} + } + if err := m.RawJson.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field None", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ParsedType = &GlobalSpecType_None{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SignupMessage", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &SignupMessage{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ParsedType = &GlobalSpecType_SignupMessage{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SignupMessage) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SignupMessage: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SignupMessage: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CrmDetails == nil { + m.CrmDetails = &schema.CRMInfo{} + } + if err := m.CrmDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CompanyDetails", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CompanyDetails == nil { + m.CompanyDetails = &signup.CompanyMeta{} + } + if err := m.CompanyDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserDetails", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.UserDetails == nil { + m.UserDetails = &signup.UserMeta{} + } + if err := m.UserDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AccountDetails", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AccountDetails == nil { + m.AccountDetails = &signup.AccountMeta{} + } + if err := m.AccountDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ActionType", wireType) + } + m.ActionType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ActionType |= ActionType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TenantId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SignupId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SignupId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipTypes(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthTypes + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupTypes + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthTypes + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthTypes = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowTypes = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/marketplace/xc_saas/asb/message/types.vesmsg.go b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/types.vesmsg.go new file mode 100644 index 000000000..feb6d31b7 --- /dev/null +++ b/pbgo/extschema/schema/marketplace/xc_saas/asb/message/types.vesmsg.go @@ -0,0 +1,397 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package message + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_signup "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/signup" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GlobalSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GlobalSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetParsedType().(type) { + case *GlobalSpecType_None: + if fv, exists := v.FldValidators["parsed_type.none"]; exists { + val := m.GetParsedType().(*GlobalSpecType_None).None + vOpts := append(opts, + db.WithValidateField("parsed_type"), + db.WithValidateField("none"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_SignupMessage: + if fv, exists := v.FldValidators["parsed_type.signup_message"]; exists { + val := m.GetParsedType().(*GlobalSpecType_SignupMessage).SignupMessage + vOpts := append(opts, + db.WithValidateField("parsed_type"), + db.WithValidateField("signup_message"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["raw_json"]; exists { + + vOpts := append(opts, db.WithValidateField("raw_json")) + if err := fv(ctx, m.GetRawJson(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["parsed_type.signup_message"] = SignupMessageValidator().Validate + + return v +}() + +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SignupMessage) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SignupMessage) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SignupMessage) DeepCopy() *SignupMessage { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SignupMessage{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SignupMessage) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SignupMessage) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupMessageValidator().Validate(ctx, m, opts...) +} + +type ValidateSignupMessage struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSignupMessage) CompanyDetailsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for company_details") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_signup.CompanyMetaValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSignupMessage) UserDetailsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for user_details") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_signup.UserMetaValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSignupMessage) AccountDetailsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for account_details") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_signup.AccountMetaValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSignupMessage) ActionTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ActionType) + return int32(i) + } + // ActionType_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ActionType_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for action_type") + } + + return validatorFn, nil +} + +func (v *ValidateSignupMessage) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupMessage) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SignupMessage got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["account_details"]; exists { + + vOpts := append(opts, db.WithValidateField("account_details")) + if err := fv(ctx, m.GetAccountDetails(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["action_type"]; exists { + + vOpts := append(opts, db.WithValidateField("action_type")) + if err := fv(ctx, m.GetActionType(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["company_details"]; exists { + + vOpts := append(opts, db.WithValidateField("company_details")) + if err := fv(ctx, m.GetCompanyDetails(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["crm_details"]; exists { + + vOpts := append(opts, db.WithValidateField("crm_details")) + if err := fv(ctx, m.GetCrmDetails(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["signup_id"]; exists { + + vOpts := append(opts, db.WithValidateField("signup_id")) + if err := fv(ctx, m.GetSignupId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant_id"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_id")) + if err := fv(ctx, m.GetTenantId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["user_details"]; exists { + + vOpts := append(opts, db.WithValidateField("user_details")) + if err := fv(ctx, m.GetUserDetails(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSignupMessageValidator = func() *ValidateSignupMessage { + v := &ValidateSignupMessage{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCompanyDetails := v.CompanyDetailsValidationRuleHandler + rulesCompanyDetails := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhCompanyDetails(rulesCompanyDetails) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupMessage.company_details: %s", err) + panic(errMsg) + } + v.FldValidators["company_details"] = vFn + + vrhUserDetails := v.UserDetailsValidationRuleHandler + rulesUserDetails := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhUserDetails(rulesUserDetails) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupMessage.user_details: %s", err) + panic(errMsg) + } + v.FldValidators["user_details"] = vFn + + vrhAccountDetails := v.AccountDetailsValidationRuleHandler + rulesAccountDetails := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhAccountDetails(rulesAccountDetails) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupMessage.account_details: %s", err) + panic(errMsg) + } + v.FldValidators["account_details"] = vFn + + vrhActionType := v.ActionTypeValidationRuleHandler + rulesActionType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhActionType(rulesActionType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupMessage.action_type: %s", err) + panic(errMsg) + } + v.FldValidators["action_type"] = vFn + + v.FldValidators["crm_details"] = ves_io_schema.CRMInfoValidator().Validate + + return v +}() + +func SignupMessageValidator() db.Validator { + return DefaultSignupMessageValidator +} diff --git a/pbgo/extschema/schema/namespace/crudapi/api.vesapi.go b/pbgo/extschema/schema/namespace/crudapi/api.vesapi.go index fe8526c94..dd5990ff0 100644 --- a/pbgo/extschema/schema/namespace/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/namespace/crudapi/api.vesapi.go @@ -3266,10 +3266,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/namespace/object.pb.go b/pbgo/extschema/schema/namespace/object.pb.go index 7a53af17b..1f52218f7 100644 --- a/pbgo/extschema/schema/namespace/object.pb.go +++ b/pbgo/extschema/schema/namespace/object.pb.go @@ -235,45 +235,45 @@ func init() { } var fileDescriptor_978a1e5827ea263d = []byte{ - // 601 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x4f, 0xd4, 0x4e, - 0x18, 0xc6, 0x3b, 0xbb, 0x64, 0xe1, 0x3f, 0x10, 0xfe, 0xa6, 0x1e, 0xac, 0xa8, 0x93, 0x75, 0x31, - 0x91, 0x44, 0xda, 0x26, 0x10, 0x0e, 0x12, 0x43, 0x0c, 0x68, 0x38, 0xb8, 0xc4, 0x64, 0xd1, 0x8b, - 0x17, 0x32, 0x9d, 0xbe, 0x2d, 0xd5, 0xb6, 0xd3, 0x74, 0xa6, 0x05, 0x0e, 0x26, 0xfa, 0x0d, 0x8c, - 0x9f, 0xc2, 0xf8, 0x29, 0xc4, 0x93, 0x31, 0x1e, 0x08, 0x27, 0x8e, 0xd2, 0xbd, 0xe8, 0x8d, 0x93, - 0x67, 0xc3, 0x94, 0x36, 0xec, 0x66, 0x37, 0xd1, 0x78, 0x9b, 0x99, 0xe7, 0xf7, 0x3c, 0xfb, 0xce, - 0xbb, 0xef, 0x14, 0xdf, 0xc9, 0x41, 0x58, 0x01, 0xb7, 0x05, 0xdb, 0x85, 0x88, 0xda, 0x31, 0x8d, - 0x40, 0x24, 0x94, 0x81, 0xcd, 0x9d, 0x97, 0xc0, 0xa4, 0x95, 0xa4, 0x5c, 0x72, 0xfd, 0x5a, 0x49, - 0x59, 0x25, 0x65, 0xd5, 0xd4, 0x9c, 0xe9, 0x07, 0x72, 0x37, 0x73, 0x2c, 0xc6, 0x23, 0xdb, 0xe7, - 0x3e, 0xb7, 0x15, 0xef, 0x64, 0x9e, 0xda, 0xa9, 0x8d, 0x5a, 0x95, 0x39, 0x73, 0xf3, 0xe3, 0x7e, - 0x4d, 0x1e, 0x24, 0x20, 0x2e, 0xa0, 0x1b, 0x83, 0x10, 0x4f, 0x64, 0xc0, 0xe3, 0x4a, 0xbc, 0x3e, - 0x28, 0x5e, 0xf6, 0x75, 0x06, 0xa5, 0x1c, 0x04, 0xc4, 0xf9, 0xa0, 0xbd, 0xf3, 0xad, 0x89, 0x5b, - 0x4f, 0xd5, 0xcd, 0xf4, 0xfb, 0x78, 0x2a, 0x02, 0x49, 0x5d, 0x2a, 0xa9, 0x81, 0xda, 0x68, 0x61, - 0x7a, 0xe9, 0x96, 0x35, 0x78, 0xcd, 0x12, 0xdc, 0x02, 0x49, 0x9f, 0x1d, 0x24, 0xd0, 0xab, 0x71, - 0xbd, 0x8b, 0xff, 0x17, 0x07, 0x42, 0x42, 0xb4, 0x53, 0x27, 0x34, 0x54, 0xc2, 0xfc, 0x50, 0xc2, - 0xb6, 0xa2, 0x86, 0x72, 0x66, 0x4b, 0xef, 0x56, 0x95, 0xb6, 0x82, 0x27, 0x44, 0x02, 0xcc, 0x68, - 0xaa, 0x88, 0xdb, 0xd6, 0x98, 0x5e, 0x5b, 0xdb, 0x09, 0x30, 0x15, 0xa0, 0xf0, 0xd5, 0xb7, 0x8d, - 0xcf, 0x87, 0x46, 0x63, 0x17, 0x1d, 0x1f, 0x1a, 0xbf, 0x10, 0x7e, 0x84, 0x5b, 0x1b, 0x29, 0x50, - 0x09, 0xfa, 0xaa, 0xb7, 0xb2, 0xcf, 0x4c, 0xc6, 0x63, 0xc1, 0x43, 0x30, 0x1d, 0x2a, 0xc0, 0xa4, - 0x6e, 0x14, 0xc4, 0x8b, 0x6d, 0x25, 0x9c, 0x1f, 0x2c, 0xb6, 0x73, 0x10, 0x66, 0xc0, 0xcd, 0x8c, - 0x46, 0xa5, 0x68, 0xee, 0xa5, 0x81, 0x04, 0xbc, 0x84, 0x9b, 0x9b, 0x20, 0xf5, 0x7b, 0x8a, 0x74, - 0xc1, 0xa3, 0x59, 0x28, 0x4d, 0xca, 0x18, 0x08, 0x51, 0x7b, 0xf6, 0xc0, 0xb9, 0x38, 0x32, 0x53, - 0xa0, 0x2e, 0x5e, 0xc6, 0x13, 0xdd, 0x40, 0xfc, 0xa5, 0xe9, 0x31, 0x9e, 0xec, 0x41, 0x12, 0x52, - 0xf6, 0x4f, 0xf5, 0x76, 0xba, 0x78, 0xaa, 0xea, 0x8a, 0xfe, 0x10, 0x4f, 0xfa, 0x6c, 0x47, 0x75, - 0xb2, 0xfc, 0x33, 0xee, 0x8e, 0xed, 0xe4, 0x66, 0xc8, 0x1d, 0x1a, 0xd6, 0xfd, 0x6c, 0xf9, 0xec, - 0x7c, 0xdd, 0xf9, 0x89, 0xf0, 0xcc, 0xb6, 0xa4, 0x32, 0x13, 0x7f, 0x3c, 0x22, 0x25, 0x3e, 0x62, - 0x44, 0x9e, 0xe0, 0xe9, 0xf2, 0x05, 0xed, 0xa4, 0xe0, 0x09, 0xa3, 0xd1, 0x6e, 0x2e, 0x4c, 0x2f, - 0xdd, 0x1c, 0x39, 0x60, 0x3d, 0xf0, 0xce, 0xcd, 0xeb, 0x33, 0x1f, 0x5f, 0xff, 0x57, 0xd7, 0xd8, - 0xc3, 0xbc, 0x12, 0x85, 0xfe, 0x00, 0x63, 0xc6, 0x63, 0x37, 0x50, 0x93, 0x6c, 0x34, 0x47, 0x66, - 0x6d, 0x54, 0x80, 0x2a, 0xe4, 0x12, 0xbf, 0x7a, 0xf5, 0x78, 0xed, 0x0a, 0x9e, 0xc5, 0x33, 0x55, - 0x6d, 0x56, 0x16, 0xb8, 0xeb, 0xef, 0xd1, 0xd7, 0xb5, 0x89, 0x8d, 0xde, 0xf3, 0xee, 0xd1, 0x29, - 0xd1, 0x4e, 0x4e, 0x89, 0x76, 0x76, 0x4a, 0xd0, 0x9b, 0x82, 0xa0, 0x0f, 0x05, 0x41, 0x5f, 0x0a, - 0x82, 0x8e, 0x0a, 0x82, 0x4e, 0x0a, 0x82, 0xbe, 0x17, 0x04, 0xfd, 0x28, 0x88, 0x76, 0x56, 0x10, - 0xf4, 0xae, 0x4f, 0xb4, 0x4f, 0x7d, 0x82, 0x8e, 0xfa, 0x44, 0x3b, 0xe9, 0x13, 0xed, 0xc5, 0x96, - 0xcf, 0x93, 0x57, 0xbe, 0x95, 0xf3, 0x50, 0x42, 0x9a, 0x52, 0x2b, 0x13, 0xb6, 0x5a, 0x78, 0x3c, - 0x8d, 0xcc, 0x24, 0xe5, 0x79, 0xe0, 0x42, 0x6a, 0x56, 0xb2, 0x9d, 0x38, 0x3e, 0xb7, 0x61, 0x5f, - 0x5e, 0xbc, 0xd0, 0xe1, 0xaf, 0x80, 0xd3, 0x52, 0x8f, 0x74, 0xf9, 0x77, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x6a, 0xb0, 0xf0, 0xbb, 0x95, 0x04, 0x00, 0x00, + // 603 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x4e, + 0x18, 0xc6, 0x77, 0x76, 0x37, 0x0b, 0xff, 0x81, 0xf0, 0x37, 0xf5, 0x60, 0x45, 0x9d, 0xac, 0x8b, + 0x89, 0x24, 0xd2, 0x36, 0x81, 0x70, 0x90, 0x18, 0x62, 0xe0, 0xc0, 0xc1, 0x25, 0x26, 0x0b, 0x5e, + 0x3c, 0xb8, 0x99, 0x4e, 0xdf, 0x96, 0x6a, 0xdb, 0x69, 0x3a, 0xd3, 0x02, 0x07, 0x13, 0x3e, 0x82, + 0xf1, 0x53, 0x18, 0xee, 0xde, 0xc5, 0x93, 0xf1, 0x44, 0x38, 0x71, 0x94, 0xee, 0x45, 0x6f, 0x7c, + 0x04, 0xc3, 0x94, 0x36, 0x74, 0x03, 0x89, 0x1e, 0xbc, 0xcd, 0xec, 0xf3, 0x7b, 0x9e, 0x9d, 0x79, + 0xe7, 0x7d, 0x8b, 0x1f, 0x65, 0x20, 0x4c, 0x9f, 0x5b, 0x82, 0xed, 0x40, 0x48, 0xad, 0x88, 0x86, + 0x20, 0x62, 0xca, 0xc0, 0xe2, 0xf6, 0x5b, 0x60, 0xd2, 0x8c, 0x13, 0x2e, 0xb9, 0x76, 0xa7, 0xa0, + 0xcc, 0x82, 0x32, 0x2b, 0x6a, 0xd6, 0xf0, 0x7c, 0xb9, 0x93, 0xda, 0x26, 0xe3, 0xa1, 0xe5, 0x71, + 0x8f, 0x5b, 0x8a, 0xb7, 0x53, 0x57, 0xed, 0xd4, 0x46, 0xad, 0x8a, 0x9c, 0xd9, 0xb9, 0x9b, 0xfe, + 0x4d, 0xee, 0xc7, 0x20, 0x2e, 0xa1, 0x7b, 0x75, 0x88, 0xc7, 0xd2, 0xe7, 0x51, 0x29, 0xde, 0xad, + 0x8b, 0x57, 0x7d, 0xbd, 0xba, 0x94, 0x81, 0x80, 0x28, 0xab, 0xdb, 0x7b, 0x07, 0x6d, 0xdc, 0x79, + 0xa9, 0x6e, 0xa6, 0x3d, 0xc5, 0x93, 0x21, 0x48, 0xea, 0x50, 0x49, 0x75, 0xd4, 0x45, 0xf3, 0x53, + 0x8b, 0x0f, 0xcc, 0xfa, 0x35, 0x0b, 0x70, 0x13, 0x24, 0xdd, 0xde, 0x8f, 0x61, 0x50, 0xe1, 0x5a, + 0x1f, 0xff, 0x2f, 0xf6, 0x85, 0x84, 0x70, 0x58, 0x25, 0x34, 0x55, 0xc2, 0xdc, 0x58, 0xc2, 0x96, + 0xa2, 0xc6, 0x72, 0x66, 0x0a, 0xef, 0x66, 0x99, 0xb6, 0x8c, 0xdb, 0x22, 0x06, 0xa6, 0xb7, 0x54, + 0xc4, 0x43, 0xf3, 0x86, 0x5a, 0x9b, 0x5b, 0x31, 0x30, 0x15, 0xa0, 0xf0, 0x95, 0xcf, 0xcd, 0xaf, + 0x47, 0x7a, 0x73, 0x07, 0x9d, 0x1c, 0xe9, 0x87, 0x4d, 0xfc, 0x06, 0x77, 0xd6, 0x13, 0xa0, 0x12, + 0xb4, 0x6d, 0x77, 0x79, 0x8f, 0x19, 0x8c, 0x47, 0x82, 0x07, 0x60, 0xd8, 0x54, 0x80, 0x41, 0x9d, + 0xd0, 0x8f, 0x16, 0xba, 0xe3, 0x82, 0xcf, 0x6a, 0xca, 0x05, 0xba, 0xd0, 0xcd, 0x40, 0x18, 0x3e, + 0x37, 0x52, 0x1a, 0x16, 0xa2, 0xb1, 0x9b, 0xf8, 0x12, 0xf0, 0x22, 0x6e, 0x6d, 0x80, 0xd4, 0x9e, + 0x28, 0xd2, 0x01, 0x97, 0xa6, 0x81, 0x34, 0x28, 0x63, 0x20, 0x44, 0xe5, 0xd9, 0x05, 0xfb, 0xf2, + 0x27, 0x23, 0x01, 0xea, 0xe0, 0x25, 0xdc, 0xee, 0xfb, 0xe2, 0x2f, 0x4d, 0x43, 0x3c, 0x31, 0x80, + 0x38, 0xa0, 0xec, 0x1f, 0xdd, 0xa4, 0xd7, 0xc7, 0x93, 0x65, 0x25, 0xb5, 0xe7, 0x78, 0xc2, 0x63, + 0x43, 0x55, 0xfd, 0xe2, 0x01, 0x1f, 0xdf, 0x58, 0xfd, 0x8d, 0x80, 0xdb, 0x34, 0xa8, 0xde, 0xa0, + 0xe3, 0xb1, 0x8b, 0x75, 0xef, 0x17, 0xc2, 0xd3, 0x5b, 0x92, 0xca, 0x54, 0xfc, 0x71, 0x5b, 0x15, + 0xf8, 0x35, 0x6d, 0xf5, 0x02, 0x4f, 0x15, 0x53, 0x37, 0x4c, 0xc0, 0x15, 0x7a, 0xb3, 0xdb, 0x9a, + 0x9f, 0x5a, 0xbc, 0x7f, 0x6d, 0x53, 0x0e, 0xc0, 0xbd, 0x30, 0xaf, 0x4d, 0x1f, 0xbe, 0xff, 0xaf, + 0x3a, 0xe3, 0x00, 0xf3, 0x52, 0x14, 0xda, 0x33, 0x8c, 0x19, 0x8f, 0x1c, 0x5f, 0x75, 0xbf, 0xde, + 0xba, 0x36, 0x6b, 0xbd, 0x04, 0xd4, 0x41, 0xae, 0xf0, 0x2b, 0xb7, 0x4f, 0x56, 0x6f, 0xe1, 0x19, + 0x3c, 0x5d, 0x9e, 0xcd, 0x4c, 0x7d, 0x67, 0xed, 0x23, 0xfa, 0xbe, 0xda, 0x5e, 0x1f, 0xbc, 0xea, + 0x1f, 0x9f, 0x91, 0xc6, 0xe9, 0x19, 0x69, 0x9c, 0x9f, 0x11, 0x74, 0x90, 0x13, 0xf4, 0x29, 0x27, + 0xe8, 0x5b, 0x4e, 0xd0, 0x71, 0x4e, 0xd0, 0x69, 0x4e, 0xd0, 0x8f, 0x9c, 0xa0, 0x9f, 0x39, 0x69, + 0x9c, 0xe7, 0x04, 0x7d, 0x18, 0x91, 0xc6, 0x97, 0x11, 0x41, 0xc7, 0x23, 0xd2, 0x38, 0x1d, 0x91, + 0xc6, 0xeb, 0x4d, 0x8f, 0xc7, 0xef, 0x3c, 0x33, 0xe3, 0x81, 0x84, 0x24, 0xa1, 0x66, 0x2a, 0x2c, + 0xb5, 0x70, 0x79, 0x12, 0x1a, 0x71, 0xc2, 0x33, 0xdf, 0x81, 0xc4, 0x28, 0x65, 0x2b, 0xb6, 0x3d, + 0x6e, 0xc1, 0x9e, 0xbc, 0x9c, 0xea, 0xf1, 0x2f, 0x87, 0xdd, 0x51, 0x83, 0xbd, 0xf4, 0x3b, 0x00, + 0x00, 0xff, 0xff, 0x95, 0x43, 0x1a, 0x97, 0xc9, 0x04, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/namespace/pkg.vespkg.go b/pbgo/extschema/schema/namespace/pkg.vespkg.go index 70c9d5307..381a4c3f4 100644 --- a/pbgo/extschema/schema/namespace/pkg.vespkg.go +++ b/pbgo/extschema/schema/namespace/pkg.vespkg.go @@ -73,6 +73,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.namespace.ValidateRulesReq"] = ValidateRulesReqValidator() vr["ves.io.schema.namespace.ValidateRulesResponse"] = ValidateRulesResponseValidator() + vr["ves.io.schema.namespace.ApiEndpointsStatsAllNSReq"] = ApiEndpointsStatsAllNSReqValidator() vr["ves.io.schema.namespace.ApiEndpointsStatsNSReq"] = ApiEndpointsStatsNSReqValidator() vr["ves.io.schema.namespace.ApiEndpointsStatsNSRsp"] = ApiEndpointsStatsNSRspValidator() diff --git a/pbgo/extschema/schema/namespace/public_crudapi.pb.go b/pbgo/extschema/schema/namespace/public_crudapi.pb.go index 55f94bafa..5301a99a7 100644 --- a/pbgo/extschema/schema/namespace/public_crudapi.pb.go +++ b/pbgo/extschema/schema/namespace/public_crudapi.pb.go @@ -987,103 +987,104 @@ func init() { } var fileDescriptor_dbe80a214de60c7a = []byte{ - // 1534 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcf, 0x6f, 0x53, 0xc7, - 0x16, 0xce, 0xd8, 0x8e, 0x89, 0xc7, 0x21, 0x31, 0xf3, 0x80, 0xdc, 0x18, 0xde, 0x95, 0x9f, 0x13, - 0x20, 0x2f, 0xc2, 0x36, 0xca, 0x13, 0x12, 0x44, 0x4f, 0xf0, 0x9c, 0xe0, 0x44, 0xc9, 0x4b, 0x08, - 0x1a, 0x1b, 0x1e, 0xaf, 0xaa, 0x74, 0x75, 0x7d, 0x7d, 0x6c, 0x6e, 0xb1, 0x7d, 0x6f, 0xef, 0x8c, - 0x13, 0xa2, 0x2a, 0x52, 0xe1, 0x0f, 0xa8, 0x2a, 0x75, 0x51, 0xa9, 0xea, 0xa2, 0x5d, 0x20, 0xb5, - 0x52, 0x17, 0x5d, 0x74, 0x51, 0x29, 0x1b, 0x76, 0x20, 0x16, 0x15, 0x6a, 0x37, 0x6c, 0x2a, 0x15, - 0xa7, 0x0b, 0x96, 0xa8, 0x52, 0xf7, 0xd5, 0x9d, 0xb9, 0xd7, 0xd8, 0x8e, 0x4d, 0xcc, 0x8f, 0x95, - 0x67, 0xe6, 0x9c, 0xef, 0xbb, 0xdf, 0x99, 0x39, 0x73, 0x7c, 0x06, 0x9f, 0xdd, 0x04, 0x96, 0x36, - 0xad, 0x0c, 0x33, 0x6e, 0x41, 0x4d, 0xcf, 0xd4, 0xf5, 0x1a, 0x30, 0x5b, 0x37, 0x20, 0x63, 0x37, - 0x8a, 0x55, 0xd3, 0xd0, 0x0c, 0xa7, 0x51, 0xd2, 0x6d, 0x33, 0x6d, 0x3b, 0x16, 0xb7, 0xc8, 0x84, - 0xf4, 0x4e, 0x4b, 0xef, 0x74, 0xcb, 0x3b, 0x9e, 0xaa, 0x98, 0xfc, 0x56, 0xa3, 0x98, 0x36, 0xac, - 0x5a, 0xa6, 0x62, 0x55, 0xac, 0x8c, 0xf0, 0x2f, 0x36, 0xca, 0x62, 0x26, 0x26, 0x62, 0x24, 0x79, - 0xe2, 0x27, 0x2b, 0x96, 0x55, 0xa9, 0x42, 0x46, 0xb7, 0xcd, 0x8c, 0x5e, 0xaf, 0x5b, 0x5c, 0xe7, - 0xa6, 0x55, 0x67, 0x9e, 0xf5, 0x84, 0x67, 0x6d, 0x71, 0x40, 0xcd, 0xe6, 0xdb, 0x9e, 0x31, 0xde, - 0x29, 0x18, 0x1c, 0xc7, 0x72, 0x7c, 0xe0, 0x74, 0xbf, 0x60, 0xac, 0xe2, 0x07, 0x60, 0x70, 0xcf, + // 1539 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xdf, 0x6f, 0x13, 0x57, + 0x16, 0xce, 0xb5, 0x1d, 0x13, 0x5f, 0x87, 0xc4, 0xdc, 0x05, 0x32, 0x31, 0xec, 0xc8, 0xeb, 0x04, + 0xc8, 0x46, 0xd8, 0x46, 0x59, 0x21, 0x2d, 0xd1, 0x0a, 0xd6, 0x09, 0x4e, 0x94, 0x6c, 0x42, 0xd8, + 0x6b, 0xc3, 0xa2, 0xd5, 0x4a, 0xa3, 0xf1, 0xf8, 0xd8, 0xcc, 0x62, 0x7b, 0xa6, 0x73, 0xaf, 0x13, + 0xa2, 0x2a, 0x52, 0xe1, 0x0f, 0xa8, 0x2a, 0xf5, 0xa1, 0x52, 0xd5, 0x87, 0xf6, 0x01, 0xa9, 0x7d, + 0xeb, 0x63, 0xa5, 0xbc, 0xf0, 0x06, 0x42, 0x6a, 0x85, 0xda, 0x17, 0x5e, 0xaa, 0x36, 0x4e, 0x1f, + 0x78, 0x44, 0x95, 0xfa, 0x5e, 0xcd, 0xbd, 0x33, 0xc6, 0x76, 0x6c, 0x62, 0x7e, 0xf4, 0x29, 0x73, + 0xef, 0x39, 0xdf, 0x37, 0xdf, 0xb9, 0xf7, 0x9c, 0xe3, 0x33, 0xc1, 0xe7, 0x37, 0x81, 0xa5, 0x4d, + 0x2b, 0xc3, 0x8c, 0xdb, 0x50, 0xd3, 0x33, 0x75, 0xbd, 0x06, 0xcc, 0xd6, 0x0d, 0xc8, 0xd8, 0x8d, + 0x62, 0xd5, 0x34, 0x34, 0xc3, 0x69, 0x94, 0x74, 0xdb, 0x4c, 0xdb, 0x8e, 0xc5, 0x2d, 0x32, 0x21, + 0xbd, 0xd3, 0xd2, 0x3b, 0xdd, 0xf2, 0x8e, 0xa7, 0x2a, 0x26, 0xbf, 0xdd, 0x28, 0xa6, 0x0d, 0xab, + 0x96, 0xa9, 0x58, 0x15, 0x2b, 0x23, 0xfc, 0x8b, 0x8d, 0xb2, 0x58, 0x89, 0x85, 0x78, 0x92, 0x3c, + 0xf1, 0xd3, 0x15, 0xcb, 0xaa, 0x54, 0x21, 0xa3, 0xdb, 0x66, 0x46, 0xaf, 0xd7, 0x2d, 0xae, 0x73, + 0xd3, 0xaa, 0x33, 0xcf, 0x7a, 0xca, 0xb3, 0xb6, 0x38, 0xa0, 0x66, 0xf3, 0x6d, 0xcf, 0x18, 0xef, + 0x14, 0x0c, 0x8e, 0x63, 0x39, 0x3e, 0x70, 0xba, 0x5f, 0x30, 0x56, 0xf1, 0xff, 0x60, 0x70, 0xcf, 0x6b, 0xaa, 0x9f, 0x17, 0xdf, 0xb6, 0xa1, 0xa5, 0xa1, 0xd3, 0xc9, 0xb2, 0xdb, 0x05, 0x4e, 0x76, 0x1a, 0xdb, 0x71, 0xc9, 0x4e, 0xd3, 0x26, 0x30, 0xa8, 0x6f, 0x76, 0xc1, 0x13, 0x5d, 0x3e, 0x26, - 0x6c, 0x69, 0x1d, 0x1e, 0xc9, 0x6f, 0x11, 0x3e, 0xbc, 0xe8, 0x80, 0xce, 0x81, 0xc2, 0x87, 0x0d, - 0x60, 0x9c, 0x5c, 0xc6, 0x23, 0x35, 0xe0, 0x7a, 0x49, 0xe7, 0xba, 0x82, 0x12, 0x68, 0x26, 0x3a, - 0x37, 0x95, 0xee, 0x3c, 0x8c, 0x0d, 0x11, 0xa3, 0x44, 0xad, 0x03, 0xd7, 0x0b, 0xdb, 0x36, 0xd0, - 0x16, 0x88, 0xac, 0xe1, 0x10, 0xb3, 0xc1, 0x50, 0x02, 0x02, 0x7c, 0x26, 0xdd, 0xe7, 0x24, 0xd3, - 0x92, 0x20, 0x6f, 0x83, 0xe1, 0x12, 0x2c, 0x8c, 0x7f, 0xb1, 0x33, 0xea, 0xe2, 0xd2, 0x15, 0x43, - 0x73, 0x7f, 0xa9, 0x60, 0x99, 0x8f, 0x3c, 0xbe, 0x14, 0x96, 0x1f, 0x4c, 0xfe, 0x89, 0xf0, 0x98, - 0xaf, 0x95, 0xd9, 0x56, 0x9d, 0x01, 0xf9, 0xf7, 0x3e, 0xb1, 0x89, 0x9e, 0x62, 0x97, 0x81, 0xf7, - 0x50, 0xba, 0x81, 0xc7, 0xd9, 0x36, 0xe3, 0x50, 0xd3, 0x5a, 0x24, 0x41, 0x41, 0x72, 0xba, 0x8b, - 0x24, 0x2f, 0xbc, 0xf6, 0x53, 0x8d, 0x49, 0xf8, 0xba, 0x4f, 0xb8, 0xd2, 0x11, 0xfa, 0x74, 0xdf, - 0xd0, 0x97, 0x81, 0xbf, 0x46, 0xdc, 0xbf, 0x22, 0x3c, 0x46, 0xc1, 0xae, 0xea, 0x46, 0xeb, 0x90, - 0xfe, 0xb3, 0x2f, 0xee, 0xe9, 0x9e, 0x71, 0x7b, 0xb0, 0x1e, 0xb1, 0xaf, 0x77, 0x48, 0x9d, 0xe9, - 0x2b, 0xd5, 0x63, 0x38, 0x40, 0x2e, 0xc9, 0xe0, 0x98, 0x03, 0xcc, 0x6a, 0x38, 0x06, 0x68, 0x9b, - 0xe0, 0x30, 0xd3, 0xaa, 0x8b, 0xbd, 0x8c, 0x2c, 0x84, 0x9e, 0xef, 0x22, 0x44, 0xc7, 0x7d, 0xeb, - 0x0d, 0x69, 0x6c, 0x8f, 0xef, 0x08, 0x1e, 0x6f, 0x85, 0x27, 0xcf, 0x35, 0xf9, 0x39, 0xc2, 0x78, - 0x19, 0xb8, 0x1f, 0xee, 0x49, 0x1c, 0x69, 0x29, 0x12, 0xf1, 0x46, 0xe8, 0xcb, 0x05, 0x42, 0x70, - 0xc8, 0x9d, 0x88, 0x50, 0x22, 0x54, 0x8c, 0xc9, 0xff, 0xb0, 0xfb, 0x45, 0x41, 0xa6, 0x95, 0x2d, - 0xa7, 0xa6, 0x73, 0x21, 0x67, 0x6c, 0x2e, 0xfd, 0xaa, 0x43, 0xf1, 0xbf, 0xbf, 0x24, 0x10, 0x8b, - 0x56, 0x09, 0xe8, 0x98, 0xd3, 0xb1, 0x96, 0xbc, 0x1b, 0xc6, 0xd1, 0x36, 0x4f, 0xb2, 0x8c, 0xa3, - 0x86, 0xc8, 0x49, 0xf1, 0x19, 0x6f, 0x3b, 0x4f, 0x1f, 0x90, 0xf4, 0x5e, 0x5c, 0x14, 0x4b, 0xa8, - 0x4b, 0x4d, 0x56, 0xf1, 0xa8, 0x23, 0x77, 0x41, 0x32, 0x05, 0x0f, 0xb8, 0x3e, 0x9d, 0x19, 0x41, - 0xa3, 0x1e, 0x58, 0x70, 0xf5, 0x3a, 0x8d, 0xd0, 0x2b, 0x4e, 0xa3, 0xe3, 0x1e, 0x0d, 0xbf, 0x8b, - 0x7b, 0x74, 0xe8, 0x9d, 0xdc, 0xa3, 0xf0, 0x5b, 0xdf, 0x23, 0x72, 0x05, 0x87, 0x19, 0xd7, 0x79, - 0x83, 0x29, 0x5f, 0x7d, 0x89, 0x12, 0xc1, 0x99, 0xe8, 0xdc, 0xa9, 0xbe, 0x74, 0x79, 0xe1, 0x28, - 0xe5, 0x2d, 0x04, 0x1f, 0xec, 0x20, 0xea, 0x61, 0xc9, 0x0a, 0x3e, 0xe2, 0x40, 0x19, 0x1c, 0xc7, - 0xac, 0x57, 0x34, 0x59, 0xe3, 0x99, 0x32, 0x22, 0xe8, 0x4e, 0xf6, 0xb9, 0x78, 0x65, 0x11, 0x59, - 0xac, 0x05, 0x93, 0xeb, 0x8c, 0xdc, 0xc0, 0x4a, 0x09, 0xaa, 0xc0, 0xa1, 0xa4, 0x49, 0x1b, 0x94, - 0x5a, 0x8c, 0x91, 0x01, 0x18, 0x8f, 0x7b, 0x68, 0xea, 0x81, 0x7d, 0xde, 0x9b, 0x78, 0xb2, 0x64, - 0x32, 0xbd, 0x58, 0xed, 0x45, 0x8c, 0x07, 0x20, 0x9e, 0xf0, 0xe1, 0x5d, 0xcc, 0x6d, 0x57, 0x75, - 0x35, 0x34, 0x82, 0x62, 0x81, 0xe4, 0x7d, 0x84, 0xa3, 0x6b, 0x26, 0x1b, 0xf0, 0x7a, 0xfe, 0x03, - 0x8f, 0x56, 0xf5, 0x22, 0x54, 0xb5, 0xb2, 0x59, 0xe5, 0xe0, 0x78, 0xd7, 0x34, 0x2a, 0xd6, 0x96, - 0xc4, 0x12, 0x99, 0xc2, 0x87, 0x1d, 0xb0, 0x2d, 0x87, 0x6b, 0x65, 0x13, 0xaa, 0x25, 0xa6, 0x04, - 0x13, 0xc1, 0x99, 0x08, 0x1d, 0x95, 0x8b, 0x4b, 0x62, 0x8d, 0x9c, 0xc3, 0x47, 0x3d, 0x27, 0x79, - 0x28, 0xbe, 0x6f, 0x48, 0xf8, 0x12, 0x69, 0x93, 0x47, 0x28, 0x11, 0xc9, 0xef, 0xc3, 0x38, 0x26, - 0x75, 0xca, 0xcb, 0xba, 0xc2, 0xa1, 0x46, 0x8e, 0xe3, 0x30, 0x87, 0xba, 0x5e, 0xe7, 0x22, 0xbb, - 0x22, 0xd4, 0x9b, 0xbd, 0x41, 0x8d, 0x89, 0xe1, 0x60, 0xc3, 0x2c, 0xc9, 0x32, 0x47, 0xdd, 0x21, - 0x49, 0xe0, 0x68, 0x09, 0x98, 0xe1, 0x98, 0xe2, 0x3f, 0x56, 0x89, 0xca, 0x48, 0xdb, 0x96, 0x48, - 0x1c, 0x8f, 0xf8, 0xdb, 0xac, 0x8c, 0x26, 0xd0, 0xcc, 0x08, 0x6d, 0xcd, 0xc9, 0x3a, 0x0e, 0x8b, - 0x4d, 0x91, 0x21, 0x45, 0xe7, 0xce, 0xf7, 0x4d, 0xd4, 0xee, 0xa0, 0xd2, 0x6b, 0x02, 0x97, 0xab, - 0x73, 0x67, 0x9b, 0x7a, 0x24, 0xe4, 0x7d, 0x1c, 0x6d, 0xeb, 0x78, 0xbc, 0x14, 0x98, 0x1f, 0x9c, - 0x33, 0xfb, 0x12, 0x2c, 0x89, 0xdb, 0xe9, 0xc8, 0x45, 0x8c, 0xad, 0xad, 0x3a, 0x38, 0x9a, 0xdb, - 0x54, 0x28, 0x11, 0x71, 0x51, 0xe3, 0x5d, 0xe4, 0x37, 0x4c, 0xd8, 0xf2, 0xb3, 0x2b, 0x22, 0xbc, - 0xdd, 0x95, 0x8e, 0x62, 0x73, 0xf8, 0x5d, 0x14, 0x9b, 0xb1, 0xb7, 0x2a, 0x36, 0x97, 0xf1, 0x48, - 0x05, 0xb8, 0xa8, 0x19, 0x5e, 0xd9, 0x1a, 0xa8, 0xe0, 0xd0, 0x43, 0x15, 0x39, 0x21, 0x2b, 0x18, - 0x7b, 0x19, 0xc9, 0x80, 0x7b, 0x55, 0xe1, 0x75, 0x8a, 0x4c, 0x44, 0xa2, 0xf3, 0xc0, 0xe3, 0x17, - 0x71, 0xb4, 0xed, 0x28, 0xdd, 0x0c, 0xbb, 0x0d, 0xdb, 0x5e, 0x36, 0xba, 0x43, 0x72, 0x14, 0x0f, - 0x6f, 0xea, 0xd5, 0x86, 0x9f, 0x88, 0x72, 0x32, 0x1f, 0xb8, 0x80, 0xe2, 0x97, 0x70, 0xac, 0xfb, - 0xc4, 0x5e, 0x07, 0xbf, 0x1a, 0x1a, 0x19, 0x8e, 0x85, 0x93, 0x77, 0x11, 0x1e, 0x6d, 0xcf, 0x04, - 0x72, 0x19, 0x0f, 0x9b, 0x1c, 0x6a, 0x4c, 0x91, 0xc5, 0xf3, 0x9f, 0x03, 0xe7, 0x0f, 0x95, 0x38, - 0x72, 0x0e, 0x87, 0x65, 0xeb, 0xac, 0x04, 0x04, 0x83, 0xd2, 0xc5, 0x90, 0x73, 0x8d, 0x62, 0x43, - 0x3d, 0xbf, 0xd9, 0x3f, 0x10, 0x3e, 0xd6, 0xf3, 0xcf, 0x98, 0xc4, 0xf1, 0xf1, 0xe5, 0x5c, 0x41, - 0xa3, 0xf9, 0x6b, 0xda, 0xd2, 0x06, 0x5d, 0xcf, 0x16, 0xb4, 0x2b, 0xb9, 0xa5, 0xec, 0xf5, 0xb5, - 0x42, 0x6c, 0x88, 0xfc, 0x1d, 0x4f, 0x76, 0xd9, 0x96, 0x36, 0xa8, 0xb6, 0x48, 0x73, 0xd9, 0x42, - 0x2e, 0x86, 0x88, 0x8a, 0xe3, 0x3d, 0xcc, 0x34, 0x77, 0x6d, 0x2d, 0xbb, 0x98, 0x8b, 0x05, 0xc8, - 0x24, 0x3e, 0xd6, 0x65, 0xcf, 0x17, 0xb2, 0x85, 0xeb, 0xf9, 0x58, 0x90, 0x4c, 0xe0, 0xbf, 0x75, - 0x99, 0x68, 0x2e, 0x7b, 0x25, 0x16, 0x22, 0xd3, 0x38, 0xb1, 0xcf, 0xb0, 0x94, 0xa3, 0x74, 0xe5, - 0xea, 0xb2, 0xb6, 0xb1, 0xb0, 0x9a, 0x5b, 0x2c, 0xe4, 0x63, 0xc3, 0x3d, 0xbc, 0x16, 0xe8, 0xc6, - 0x7f, 0x73, 0x57, 0xa5, 0x73, 0xee, 0xea, 0x62, 0x2e, 0x1f, 0x0b, 0xcf, 0x7d, 0x17, 0xc6, 0xc1, - 0xec, 0xb5, 0x15, 0xf2, 0x03, 0xc2, 0x61, 0xd9, 0x24, 0x90, 0x01, 0xbb, 0x88, 0xf8, 0x99, 0x03, - 0xfd, 0xbc, 0xae, 0xea, 0xff, 0xcd, 0x87, 0xca, 0x85, 0xf2, 0xf9, 0x3b, 0x46, 0xca, 0xb0, 0xea, - 0xcc, 0xaa, 0x42, 0xaa, 0xa8, 0x33, 0x48, 0xe9, 0xa5, 0x9a, 0x59, 0x3f, 0x2b, 0xd6, 0xdd, 0xb9, - 0xfb, 0x50, 0x4b, 0x99, 0x56, 0xaa, 0xa1, 0xd7, 0xa4, 0x29, 0xb5, 0xe5, 0x98, 0x1c, 0xee, 0xfd, - 0xf2, 0xfb, 0x67, 0x81, 0x89, 0x24, 0xf1, 0xde, 0x6b, 0x2f, 0x5f, 0x33, 0x6c, 0x1e, 0xcd, 0x92, - 0xfb, 0x08, 0x07, 0x97, 0x81, 0x93, 0xa9, 0x57, 0xb7, 0x57, 0x52, 0xf0, 0xf4, 0x20, 0x3d, 0x58, - 0x32, 0xff, 0xe8, 0xc7, 0x00, 0x6a, 0x3e, 0x54, 0x66, 0x85, 0xb2, 0x12, 0x94, 0xf5, 0x46, 0x95, - 0xa7, 0x74, 0xc3, 0x00, 0xc6, 0x7c, 0x8d, 0x5b, 0x50, 0xf4, 0x56, 0x52, 0x0e, 0xe8, 0x25, 0xa1, - 0xf1, 0x04, 0x99, 0xdc, 0xaf, 0x31, 0xf3, 0x91, 0x3b, 0xde, 0x21, 0x5f, 0x23, 0x1c, 0x72, 0x33, - 0x95, 0x4c, 0x1f, 0x90, 0xc8, 0x52, 0xe9, 0xa9, 0x81, 0xd2, 0x3d, 0xb9, 0xf6, 0x86, 0x52, 0x8f, - 0x92, 0x1e, 0xdb, 0x49, 0x1e, 0x22, 0x7c, 0xc8, 0xeb, 0xee, 0xc8, 0xa0, 0xfd, 0x5f, 0x7c, 0xe6, - 0x60, 0x47, 0x4f, 0xac, 0xf9, 0xd6, 0x59, 0x70, 0x26, 0x9e, 0xec, 0xb5, 0xc3, 0x7e, 0x3d, 0x16, - 0xdf, 0xde, 0x99, 0x47, 0xb3, 0xf1, 0x9b, 0x0f, 0x76, 0x51, 0xe0, 0xe7, 0x5d, 0xa4, 0xf6, 0xd3, - 0x26, 0xcb, 0xe0, 0xd3, 0x5d, 0x84, 0x9a, 0xbb, 0x68, 0x7a, 0x90, 0x92, 0x79, 0xef, 0x27, 0x25, - 0x70, 0x0b, 0x2d, 0x7c, 0x82, 0x1e, 0x5f, 0x0a, 0x2d, 0xd2, 0xeb, 0x6b, 0x4f, 0x9e, 0xa9, 0x43, - 0x4f, 0x9f, 0xa9, 0x43, 0x2f, 0x9e, 0xa9, 0xe8, 0xe3, 0xa6, 0x8a, 0xbe, 0x69, 0xaa, 0xe8, 0x51, - 0x53, 0x45, 0x4f, 0x9a, 0x2a, 0xfa, 0xad, 0xa9, 0xa2, 0xe7, 0x4d, 0x75, 0xe8, 0x45, 0x53, 0x45, - 0x9f, 0xee, 0xa9, 0x43, 0x0f, 0xf6, 0x54, 0xf4, 0x64, 0x4f, 0x1d, 0x7a, 0xba, 0xa7, 0x0e, 0xbd, - 0xb7, 0x5e, 0xb1, 0xec, 0xdb, 0x95, 0xf4, 0xa6, 0xe5, 0x76, 0x20, 0x8e, 0x9e, 0x6e, 0xb0, 0x8c, - 0x18, 0xb8, 0xcd, 0x77, 0xca, 0x76, 0xac, 0x4d, 0xb3, 0x04, 0x4e, 0xca, 0x37, 0x67, 0xec, 0x62, - 0xc5, 0xca, 0xc0, 0x1d, 0xee, 0x3d, 0xa5, 0xbb, 0x9f, 0xf4, 0xc5, 0xb0, 0x78, 0x4f, 0xff, 0xeb, - 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x7a, 0x38, 0x58, 0x66, 0xe7, 0x10, 0x00, 0x00, + 0x6c, 0x69, 0x1d, 0x1e, 0xc9, 0xaf, 0x10, 0x3e, 0xba, 0xe8, 0x80, 0xce, 0x81, 0xc2, 0x7b, 0x0d, + 0x60, 0x9c, 0x5c, 0xc1, 0x23, 0x35, 0xe0, 0x7a, 0x49, 0xe7, 0xba, 0x82, 0x12, 0x68, 0x26, 0x3a, + 0x37, 0x95, 0xee, 0xbc, 0x8c, 0x0d, 0x11, 0xa3, 0x44, 0xad, 0x03, 0xd7, 0x0b, 0xdb, 0x36, 0xd0, + 0x16, 0x88, 0xac, 0xe1, 0x10, 0xb3, 0xc1, 0x50, 0x02, 0x02, 0x7c, 0x2e, 0xdd, 0xe7, 0x26, 0xd3, + 0x92, 0x20, 0x6f, 0x83, 0xe1, 0x12, 0x2c, 0x8c, 0x7f, 0xba, 0x33, 0xea, 0xe2, 0xd2, 0x15, 0x43, + 0x73, 0xff, 0x52, 0xc1, 0x32, 0x1f, 0x79, 0x72, 0x39, 0x2c, 0x5f, 0x98, 0xfc, 0x0d, 0xe1, 0x31, + 0x5f, 0x2b, 0xb3, 0xad, 0x3a, 0x03, 0xf2, 0x8f, 0x03, 0x62, 0x13, 0x3d, 0xc5, 0x2e, 0x03, 0xef, + 0xa1, 0x74, 0x03, 0x8f, 0xb3, 0x6d, 0xc6, 0xa1, 0xa6, 0xb5, 0x48, 0x82, 0x82, 0xe4, 0x6c, 0x17, + 0x49, 0x5e, 0x78, 0x1d, 0xa4, 0x1a, 0x93, 0xf0, 0x75, 0x9f, 0x70, 0xa5, 0x23, 0xf4, 0xe9, 0xbe, + 0xa1, 0x2f, 0x03, 0x7f, 0x8d, 0xb8, 0x7f, 0x44, 0x78, 0x8c, 0x82, 0x5d, 0xd5, 0x8d, 0xd6, 0x25, + 0xfd, 0xf3, 0x40, 0xdc, 0xd3, 0x3d, 0xe3, 0xf6, 0x60, 0x3d, 0x62, 0x5f, 0xef, 0x90, 0x3a, 0xd3, + 0x57, 0xaa, 0xc7, 0x70, 0x88, 0x5c, 0x92, 0xc1, 0x31, 0x07, 0x98, 0xd5, 0x70, 0x0c, 0xd0, 0x36, + 0xc1, 0x61, 0xa6, 0x55, 0x17, 0x67, 0x19, 0x59, 0x08, 0x3d, 0xdf, 0x45, 0x88, 0x8e, 0xfb, 0xd6, + 0x9b, 0xd2, 0xd8, 0x1e, 0xdf, 0x31, 0x3c, 0xde, 0x0a, 0x4f, 0xde, 0x6b, 0xf2, 0x13, 0x84, 0xf1, + 0x32, 0x70, 0x3f, 0xdc, 0xd3, 0x38, 0xd2, 0x52, 0x24, 0xe2, 0x8d, 0xd0, 0x97, 0x1b, 0x84, 0xe0, + 0x90, 0xbb, 0x10, 0xa1, 0x44, 0xa8, 0x78, 0x26, 0xff, 0xc1, 0xee, 0x1b, 0x05, 0x99, 0x56, 0xb6, + 0x9c, 0x9a, 0xce, 0x85, 0x9c, 0xb1, 0xb9, 0xf4, 0xab, 0x2e, 0xc5, 0x7f, 0xff, 0x92, 0x40, 0x2c, + 0x5a, 0x25, 0xa0, 0x63, 0x4e, 0xc7, 0x5e, 0xf2, 0x5e, 0x18, 0x47, 0xdb, 0x3c, 0xc9, 0x32, 0x8e, + 0x1a, 0x22, 0x27, 0xc5, 0x6b, 0xbc, 0xe3, 0x3c, 0x7b, 0x48, 0xd2, 0x7b, 0x71, 0x51, 0x2c, 0xa1, + 0x2e, 0x35, 0x59, 0xc5, 0xa3, 0x8e, 0x3c, 0x05, 0xc9, 0x14, 0x3c, 0xa4, 0x7c, 0x3a, 0x33, 0x82, + 0x46, 0x3d, 0xb0, 0xe0, 0xea, 0x75, 0x1b, 0xa1, 0x57, 0xdc, 0x46, 0x47, 0x1d, 0x0d, 0xbf, 0x8b, + 0x3a, 0x3a, 0xf2, 0x4e, 0xea, 0x28, 0xfc, 0xd6, 0x75, 0x44, 0xae, 0xe2, 0x30, 0xe3, 0x3a, 0x6f, + 0x30, 0xe5, 0xf3, 0xcf, 0x50, 0x22, 0x38, 0x13, 0x9d, 0x3b, 0xd3, 0x97, 0x2e, 0x2f, 0x1c, 0xa5, + 0xbc, 0x85, 0xe0, 0xc3, 0x1d, 0x44, 0x3d, 0x2c, 0x59, 0xc1, 0xc7, 0x1c, 0x28, 0x83, 0xe3, 0x98, + 0xf5, 0x8a, 0x26, 0x7b, 0x3c, 0x53, 0x46, 0x04, 0xdd, 0xe9, 0x3e, 0x85, 0x57, 0x16, 0x91, 0xc5, + 0x5a, 0x30, 0xb9, 0xcf, 0xc8, 0x4d, 0xac, 0x94, 0xa0, 0x0a, 0x1c, 0x4a, 0x9a, 0xb4, 0x41, 0xa9, + 0xc5, 0x18, 0x19, 0x80, 0xf1, 0xa4, 0x87, 0xa6, 0x1e, 0xd8, 0xe7, 0xbd, 0x85, 0x27, 0x4b, 0x26, + 0xd3, 0x8b, 0xd5, 0x5e, 0xc4, 0x78, 0x00, 0xe2, 0x09, 0x1f, 0xde, 0xc5, 0xdc, 0x56, 0xaa, 0xab, + 0xa1, 0x11, 0x14, 0x0b, 0x24, 0x1f, 0x20, 0x1c, 0x5d, 0x33, 0xd9, 0x80, 0xe5, 0xf9, 0x17, 0x3c, + 0x5a, 0xd5, 0x8b, 0x50, 0xd5, 0xca, 0x66, 0x95, 0x83, 0xe3, 0x95, 0x69, 0x54, 0xec, 0x2d, 0x89, + 0x2d, 0x32, 0x85, 0x8f, 0x3a, 0x60, 0x5b, 0x0e, 0xd7, 0xca, 0x26, 0x54, 0x4b, 0x4c, 0x09, 0x26, + 0x82, 0x33, 0x11, 0x3a, 0x2a, 0x37, 0x97, 0xc4, 0x1e, 0xb9, 0x80, 0x8f, 0x7b, 0x4e, 0xf2, 0x52, + 0x7c, 0xdf, 0x90, 0xf0, 0x25, 0xd2, 0x26, 0xaf, 0x50, 0x22, 0x92, 0x5f, 0x87, 0x71, 0x4c, 0xea, + 0x94, 0xc5, 0xba, 0xc2, 0xa1, 0x46, 0x4e, 0xe2, 0x30, 0x87, 0xba, 0x5e, 0xe7, 0x22, 0xbb, 0x22, + 0xd4, 0x5b, 0xbd, 0x41, 0x8f, 0x89, 0xe1, 0x60, 0xc3, 0x2c, 0xc9, 0x36, 0x47, 0xdd, 0x47, 0x92, + 0xc0, 0xd1, 0x12, 0x30, 0xc3, 0x31, 0xc5, 0x6f, 0xac, 0x12, 0x95, 0x91, 0xb6, 0x6d, 0x91, 0x38, + 0x1e, 0xf1, 0x8f, 0x59, 0x19, 0x4d, 0xa0, 0x99, 0x11, 0xda, 0x5a, 0x93, 0x75, 0x1c, 0x16, 0x87, + 0x22, 0x43, 0x8a, 0xce, 0x5d, 0xec, 0x9b, 0xa8, 0xdd, 0x41, 0xa5, 0xd7, 0x04, 0x2e, 0x57, 0xe7, + 0xce, 0x36, 0xf5, 0x48, 0xc8, 0xff, 0x70, 0xb4, 0x6d, 0xe2, 0xf1, 0x52, 0x60, 0x7e, 0x70, 0xce, + 0xec, 0x4b, 0xb0, 0x24, 0x6e, 0xa7, 0x23, 0x97, 0x30, 0xb6, 0xb6, 0xea, 0xe0, 0x68, 0xee, 0x50, + 0xa1, 0x44, 0x44, 0xa1, 0xc6, 0xbb, 0xc8, 0x6f, 0x9a, 0xb0, 0xe5, 0x67, 0x57, 0x44, 0x78, 0xbb, + 0x3b, 0x1d, 0xcd, 0xe6, 0xe8, 0xbb, 0x68, 0x36, 0x63, 0x6f, 0xd5, 0x6c, 0xae, 0xe0, 0x91, 0x0a, + 0x70, 0xd1, 0x33, 0xbc, 0xb6, 0x35, 0x50, 0xc3, 0xa1, 0x47, 0x2a, 0x72, 0x41, 0x56, 0x30, 0xf6, + 0x32, 0x92, 0x01, 0xf7, 0xba, 0xc2, 0xeb, 0x34, 0x99, 0x88, 0x44, 0xe7, 0x81, 0xc7, 0x2f, 0xe1, + 0x68, 0xdb, 0x55, 0xba, 0x19, 0x76, 0x07, 0xb6, 0xbd, 0x6c, 0x74, 0x1f, 0xc9, 0x71, 0x3c, 0xbc, + 0xa9, 0x57, 0x1b, 0x7e, 0x22, 0xca, 0xc5, 0x7c, 0xe0, 0xef, 0x28, 0x7e, 0x19, 0xc7, 0xba, 0x6f, + 0xec, 0x75, 0xf0, 0xab, 0xa1, 0x91, 0xe1, 0x58, 0x38, 0x79, 0x0f, 0xe1, 0xd1, 0xf6, 0x4c, 0x20, + 0x57, 0xf0, 0xb0, 0xc9, 0xa1, 0xc6, 0x14, 0xd9, 0x3c, 0xff, 0x3a, 0x70, 0xfe, 0x50, 0x89, 0x23, + 0x17, 0x70, 0x58, 0x8e, 0xce, 0x4a, 0x40, 0x30, 0x28, 0x5d, 0x0c, 0x39, 0xd7, 0x28, 0x0e, 0xd4, + 0xf3, 0x9b, 0xfd, 0x15, 0xe1, 0x13, 0x3d, 0x7f, 0x8c, 0x49, 0x1c, 0x9f, 0x5c, 0xce, 0x15, 0x34, + 0x9a, 0xbf, 0xae, 0x2d, 0x6d, 0xd0, 0xf5, 0x6c, 0x41, 0xbb, 0x9a, 0x5b, 0xca, 0xde, 0x58, 0x2b, + 0xc4, 0x86, 0xc8, 0x9f, 0xf1, 0x64, 0x97, 0x6d, 0x69, 0x83, 0x6a, 0x8b, 0x34, 0x97, 0x2d, 0xe4, + 0x62, 0x88, 0xa8, 0x38, 0xde, 0xc3, 0x4c, 0x73, 0xd7, 0xd7, 0xb2, 0x8b, 0xb9, 0x58, 0x80, 0x4c, + 0xe2, 0x13, 0x5d, 0xf6, 0x7c, 0x21, 0x5b, 0xb8, 0x91, 0x8f, 0x05, 0xc9, 0x04, 0xfe, 0x53, 0x97, + 0x89, 0xe6, 0xb2, 0x57, 0x63, 0x21, 0x32, 0x8d, 0x13, 0x07, 0x0c, 0x4b, 0x39, 0x4a, 0x57, 0xae, + 0x2d, 0x6b, 0x1b, 0x0b, 0xab, 0xb9, 0xc5, 0x42, 0x3e, 0x36, 0xdc, 0xc3, 0x6b, 0x81, 0x6e, 0xfc, + 0x2b, 0x77, 0x4d, 0x3a, 0xe7, 0xae, 0x2d, 0xe6, 0xf2, 0xb1, 0xf0, 0xdc, 0x4f, 0x61, 0x1c, 0xcc, + 0x5e, 0x5f, 0x21, 0xdf, 0x22, 0x1c, 0x96, 0x43, 0x02, 0x19, 0x70, 0x8a, 0x88, 0x9f, 0x3b, 0xd4, + 0xcf, 0x9b, 0xaa, 0x9c, 0xe6, 0x23, 0xe5, 0xdf, 0xe5, 0x8b, 0x77, 0x8d, 0x94, 0x61, 0xd5, 0x99, + 0x55, 0x85, 0x54, 0x51, 0x67, 0x90, 0xd2, 0x4b, 0x35, 0xb3, 0x7e, 0xbe, 0x7b, 0xdf, 0x34, 0xda, + 0x0d, 0xae, 0xa3, 0xfb, 0x05, 0x97, 0x32, 0xad, 0x54, 0x43, 0xaf, 0x49, 0x53, 0x6a, 0xcb, 0x31, + 0x39, 0xdc, 0xff, 0xe1, 0x97, 0x8f, 0x03, 0x13, 0x49, 0xe2, 0x7d, 0xc8, 0xbd, 0xfc, 0xcc, 0x61, + 0xf3, 0x68, 0x96, 0x3c, 0x40, 0x38, 0xb8, 0x0c, 0x9c, 0x4c, 0xbd, 0x7a, 0xee, 0x92, 0x91, 0x4c, + 0x0f, 0x32, 0x9c, 0x25, 0xf3, 0x8f, 0xbf, 0x09, 0xa0, 0xe6, 0x23, 0x65, 0x56, 0x28, 0x2b, 0x41, + 0x59, 0x6f, 0x54, 0x79, 0x4a, 0x37, 0x0c, 0x60, 0xcc, 0xd7, 0xb8, 0x05, 0x45, 0x6f, 0x27, 0xe5, + 0x80, 0x5e, 0x12, 0x1a, 0x4f, 0x91, 0xc9, 0x83, 0x1a, 0x33, 0xef, 0xbb, 0xcf, 0x3b, 0xe4, 0x0b, + 0x84, 0x43, 0x6e, 0x0a, 0x93, 0xe9, 0x43, 0x32, 0x5c, 0x2a, 0x3d, 0x33, 0x50, 0x1d, 0x24, 0xd7, + 0xde, 0x50, 0xea, 0x71, 0xd2, 0xe3, 0x38, 0xc9, 0x1e, 0xc2, 0x47, 0xbc, 0xb1, 0x8f, 0x0c, 0x3a, + 0x18, 0xc6, 0x67, 0x0e, 0x77, 0xf4, 0xc4, 0xde, 0x47, 0x7f, 0x5c, 0x7e, 0x9c, 0x8b, 0x27, 0x7b, + 0x9d, 0xbd, 0xdf, 0xc2, 0x85, 0xaa, 0x9d, 0x79, 0x34, 0x1b, 0xbf, 0xf5, 0x70, 0x17, 0x05, 0xbe, + 0xdf, 0x45, 0x6a, 0x3f, 0xd5, 0xb2, 0x73, 0x3e, 0xdb, 0x45, 0xa8, 0xb9, 0x8b, 0xa6, 0x07, 0xe9, + 0xb2, 0xf7, 0xbf, 0x53, 0x02, 0xb7, 0xd1, 0xc2, 0x87, 0xe8, 0xc9, 0xe5, 0xd0, 0x22, 0xbd, 0xb1, + 0xf6, 0x74, 0x4f, 0x1d, 0x7a, 0xb6, 0xa7, 0x0e, 0xbd, 0xd8, 0x53, 0xd1, 0x07, 0x4d, 0x15, 0x7d, + 0xd9, 0x54, 0xd1, 0xe3, 0xa6, 0x8a, 0x9e, 0x36, 0x55, 0xf4, 0x73, 0x53, 0x45, 0xcf, 0x9b, 0xea, + 0xd0, 0x8b, 0xa6, 0x8a, 0x3e, 0xda, 0x57, 0x87, 0x1e, 0xee, 0xab, 0xe8, 0xe9, 0xbe, 0x3a, 0xf4, + 0x6c, 0x5f, 0x1d, 0xfa, 0xef, 0x7a, 0xc5, 0xb2, 0xef, 0x54, 0xd2, 0x9b, 0x96, 0x3b, 0xb4, 0x38, + 0x7a, 0xba, 0xc1, 0x32, 0xe2, 0xc1, 0x9d, 0xd7, 0x53, 0xb6, 0x63, 0x6d, 0x9a, 0x25, 0x70, 0x52, + 0xbe, 0x39, 0x63, 0x17, 0x2b, 0x56, 0x06, 0xee, 0x72, 0xef, 0xeb, 0xbb, 0xfb, 0xbf, 0x00, 0xc5, + 0xb0, 0xf8, 0x04, 0xff, 0xdb, 0xef, 0x01, 0x00, 0x00, 0xff, 0xff, 0x3b, 0xf3, 0x6a, 0x3f, 0x1a, + 0x11, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/namespace/public_crudapi.vesapi.go b/pbgo/extschema/schema/namespace/public_crudapi.vesapi.go index 2a01d5ddb..b989d7681 100644 --- a/pbgo/extschema/schema/namespace/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/namespace/public_crudapi.vesapi.go @@ -2435,10 +2435,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2495,10 +2499,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2557,10 +2565,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/namespace/public_customapi.pb.go b/pbgo/extschema/schema/namespace/public_customapi.pb.go index 3c4f26e6c..fd7898ecb 100644 --- a/pbgo/extschema/schema/namespace/public_customapi.pb.go +++ b/pbgo/extschema/schema/namespace/public_customapi.pb.go @@ -607,68 +607,68 @@ func init() { } var fileDescriptor_ae2cd67c9bbaccbd = []byte{ - // 970 bytes of a gzipped FileDescriptorProto + // 972 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0x38, 0x24, 0xc5, 0x53, 0x55, 0x84, 0xed, 0x2f, 0xd7, 0x44, 0x2b, 0x6b, 0xe1, 0x10, - 0x92, 0xcc, 0x2e, 0x72, 0x04, 0x42, 0xb9, 0x25, 0x81, 0x83, 0xa5, 0x96, 0x46, 0xae, 0x00, 0x09, - 0x21, 0x59, 0xb3, 0xeb, 0xe7, 0xf5, 0x90, 0xdd, 0x9d, 0xc9, 0xce, 0xac, 0xd3, 0xa8, 0x2a, 0xaa, - 0x7a, 0x41, 0x08, 0x09, 0x21, 0xf8, 0x27, 0x38, 0xf0, 0x07, 0x20, 0x72, 0xc9, 0x8d, 0x8a, 0x03, - 0x8a, 0xe0, 0x40, 0x6f, 0x10, 0x87, 0x03, 0xdc, 0x7a, 0xe0, 0x0e, 0xda, 0xf1, 0xda, 0x89, 0x1d, - 0x6f, 0x12, 0xa2, 0xde, 0xe6, 0xcd, 0xfb, 0xe6, 0x9b, 0xef, 0x7b, 0xb3, 0xef, 0x69, 0xb1, 0xdd, - 0x05, 0x69, 0x33, 0xee, 0x48, 0xaf, 0x03, 0x21, 0x75, 0x22, 0x1a, 0x82, 0x14, 0xd4, 0x03, 0x47, - 0x24, 0x6e, 0xc0, 0xbc, 0xa6, 0x97, 0x48, 0xc5, 0x43, 0x2a, 0x98, 0x2d, 0x62, 0xae, 0xb8, 0x71, - 0xb3, 0x8f, 0xb7, 0xfb, 0x78, 0x7b, 0x88, 0xaf, 0x10, 0x9f, 0xa9, 0x4e, 0xe2, 0xda, 0x1e, 0x0f, - 0x1d, 0x9f, 0xfb, 0xdc, 0xd1, 0x78, 0x37, 0x69, 0xeb, 0x48, 0x07, 0x7a, 0xd5, 0xe7, 0xa9, 0xcc, - 0xf9, 0x9c, 0xfb, 0x01, 0x38, 0x54, 0x30, 0x87, 0x46, 0x11, 0x57, 0x54, 0x31, 0x1e, 0xc9, 0x2c, - 0xfb, 0x6a, 0x9e, 0x2a, 0xb5, 0x23, 0x60, 0x00, 0x7a, 0x65, 0x14, 0xc4, 0xc5, 0x71, 0x86, 0x5b, - 0xa3, 0xc9, 0xe3, 0xe7, 0xe6, 0x46, 0x53, 0x5d, 0x1a, 0xb0, 0x16, 0x55, 0x90, 0x65, 0xad, 0xb1, - 0x2c, 0x48, 0x88, 0xba, 0x63, 0xe4, 0xd5, 0x31, 0x0c, 0x83, 0xed, 0xe6, 0x08, 0xc2, 0xba, 0x83, - 0x2f, 0xad, 0x6e, 0xd4, 0xeb, 0x0a, 0x42, 0xe3, 0x06, 0x9e, 0x09, 0x41, 0x75, 0x78, 0xab, 0x8c, - 0xaa, 0x68, 0xbe, 0xd4, 0xc8, 0x22, 0xc3, 0xc0, 0x2f, 0x08, 0xaa, 0x3a, 0xe5, 0xa2, 0xde, 0xd5, - 0xeb, 0x14, 0x1b, 0x83, 0x4c, 0x02, 0x55, 0x9e, 0xaa, 0xa2, 0xf9, 0x17, 0x1b, 0x59, 0x64, 0x7d, - 0x8a, 0x2f, 0x67, 0x74, 0xb7, 0x99, 0x54, 0xc6, 0x4d, 0x7c, 0x29, 0x60, 0x52, 0x35, 0xd9, 0x90, - 0x33, 0x0d, 0xeb, 0x2d, 0xe3, 0x2d, 0x3c, 0xcd, 0x14, 0x84, 0xb2, 0x5c, 0xac, 0x4e, 0xcd, 0x5f, - 0xae, 0x55, 0xed, 0x9c, 0xd7, 0xb2, 0x33, 0xb6, 0x46, 0x1f, 0x9e, 0x77, 0xef, 0xca, 0xcc, 0x4f, - 0xbb, 0xa8, 0x38, 0x8b, 0xac, 0x1d, 0x7c, 0xed, 0xdd, 0x2e, 0x0d, 0x12, 0xaa, 0x60, 0x75, 0xa3, - 0xbe, 0xea, 0x79, 0x20, 0x65, 0x03, 0xb6, 0x8c, 0x39, 0x5c, 0x1a, 0x72, 0x66, 0x52, 0x8e, 0x36, - 0x8c, 0x75, 0x8c, 0x53, 0xfa, 0x66, 0x2a, 0x6e, 0x20, 0xe9, 0xb5, 0xb3, 0x24, 0xa5, 0x06, 0x1b, - 0x25, 0x96, 0xad, 0xa4, 0xf5, 0x31, 0xbe, 0x3e, 0xe1, 0x6a, 0x29, 0xc6, 0xd8, 0xd1, 0xc5, 0xd8, - 0x3f, 0x47, 0x78, 0xf6, 0xbd, 0x01, 0x68, 0x75, 0xa3, 0xae, 0xcb, 0x7b, 0xba, 0xab, 0xbb, 0x17, - 0x75, 0xb5, 0x86, 0x7f, 0xf8, 0x7b, 0x6f, 0x6a, 0xfa, 0x6b, 0x54, 0x9c, 0xad, 0x1d, 0xd3, 0x30, - 0x2c, 0xf2, 0x17, 0x08, 0xdf, 0x1a, 0x58, 0x5d, 0xa3, 0xca, 0xeb, 0x8c, 0x94, 0x3a, 0xc2, 0x65, - 0x37, 0xdd, 0x6c, 0x0e, 0xb9, 0x9b, 0x54, 0x30, 0xad, 0x22, 0x33, 0xff, 0x7a, 0xae, 0x88, 0x71, - 0x87, 0x23, 0x4a, 0xae, 0x6b, 0xda, 0x23, 0x88, 0x60, 0x29, 0xc4, 0x7a, 0x84, 0x70, 0x25, 0x4f, - 0x8d, 0x14, 0x86, 0xfb, 0x1c, 0xe5, 0xe4, 0x49, 0xa8, 0x61, 0xe3, 0x36, 0xe7, 0x9b, 0x89, 0x78, - 0x5f, 0x42, 0xdc, 0xe0, 0x01, 0x9c, 0xfd, 0xcd, 0x59, 0x8b, 0xf8, 0xea, 0x89, 0x33, 0x52, 0x18, - 0xd7, 0xf0, 0x74, 0x9c, 0x06, 0x5a, 0x5b, 0xa9, 0xd1, 0x0f, 0x6a, 0xdf, 0x95, 0x70, 0x69, 0x5d, - 0x0f, 0xb8, 0xd5, 0x8d, 0xba, 0xf1, 0x2f, 0xc2, 0x57, 0xd6, 0xa9, 0xf4, 0x68, 0x0b, 0xde, 0x81, - 0x00, 0x14, 0x18, 0x24, 0xd7, 0xc2, 0x08, 0xae, 0x01, 0x5b, 0x09, 0x48, 0x55, 0xb1, 0xcf, 0x0b, - 0x97, 0x82, 0x47, 0x12, 0xac, 0x2f, 0x51, 0xef, 0xc7, 0xf2, 0x87, 0xed, 0x37, 0xef, 0x7b, 0xc4, - 0xe3, 0x91, 0xe4, 0x01, 0x10, 0x97, 0x4a, 0x20, 0xb4, 0x15, 0xb2, 0x68, 0xa9, 0xaa, 0x13, 0xe9, - 0xc6, 0x52, 0x3a, 0x6f, 0x08, 0xe3, 0x84, 0x45, 0xed, 0x98, 0x4a, 0x15, 0x27, 0x9e, 0x4a, 0x62, - 0x20, 0xdb, 0x31, 0x53, 0x47, 0xc9, 0x84, 0x86, 0xfd, 0x93, 0xfd, 0xfd, 0xc7, 0xbf, 0xfe, 0xf9, - 0x4d, 0x91, 0x58, 0xf3, 0xd9, 0x20, 0x3f, 0x9a, 0xa1, 0xd2, 0x79, 0x90, 0xae, 0x1f, 0x3a, 0x5e, - 0x5f, 0x54, 0xb3, 0xa5, 0x55, 0xad, 0xa0, 0x05, 0xe3, 0x77, 0x84, 0x5f, 0x3e, 0xd1, 0x6c, 0xa7, - 0x54, 0x61, 0xd2, 0x4c, 0x38, 0xa5, 0x0a, 0x13, 0xfb, 0xd8, 0xda, 0x7c, 0xf2, 0x7d, 0x31, 0x2d, - 0xc4, 0xa2, 0xf6, 0xdb, 0x82, 0x36, 0x4d, 0x02, 0x45, 0xa8, 0x06, 0x0c, 0xcd, 0x6d, 0x83, 0x9b, - 0x6d, 0x91, 0x18, 0x68, 0x4b, 0x9b, 0xab, 0x59, 0x64, 0x82, 0x39, 0xb9, 0x23, 0x15, 0x84, 0x0e, - 0x64, 0x77, 0x11, 0x2a, 0x58, 0x76, 0x32, 0x75, 0xf8, 0x0f, 0xc2, 0x37, 0x26, 0x7f, 0xd5, 0x46, - 0xed, 0x4c, 0xdd, 0x27, 0x9a, 0xb2, 0xb2, 0xfc, 0xbf, 0xcf, 0x48, 0x61, 0x6d, 0x5d, 0xd4, 0xf0, - 0xdb, 0xd6, 0xf2, 0x39, 0x0c, 0xeb, 0x5e, 0x1a, 0xb3, 0xbd, 0x8b, 0xf0, 0x95, 0x7b, 0x89, 0xef, - 0x83, 0x54, 0x1f, 0xd0, 0x20, 0x01, 0x69, 0xe4, 0x77, 0xe7, 0x08, 0x2e, 0x35, 0xb9, 0x70, 0x5e, - 0xa8, 0x14, 0xd6, 0xbd, 0xcc, 0xdb, 0xd5, 0xcc, 0x86, 0x0f, 0x11, 0xc4, 0x34, 0x38, 0xeb, 0xd1, - 0x1e, 0x0c, 0xd7, 0x0f, 0x1d, 0xd9, 0x27, 0x25, 0x5d, 0xcd, 0x9a, 0xaa, 0xff, 0x0d, 0xe1, 0x97, - 0xc6, 0x9a, 0xda, 0x58, 0xcc, 0x15, 0x75, 0x72, 0x64, 0x54, 0x96, 0xce, 0x0f, 0x96, 0xc2, 0x62, - 0x17, 0x7d, 0x9f, 0x37, 0xac, 0xc5, 0xfc, 0xf7, 0x09, 0xf4, 0x4d, 0x24, 0x91, 0x10, 0x13, 0x3d, - 0x7d, 0x56, 0xd0, 0x42, 0x65, 0x69, 0x6f, 0x17, 0x4d, 0xfd, 0xb2, 0x8b, 0xcc, 0x3c, 0x7d, 0x77, - 0xdd, 0x4f, 0xc0, 0x53, 0x8f, 0x7f, 0x2e, 0x17, 0x3b, 0x68, 0xed, 0x33, 0xb4, 0x7f, 0x60, 0x16, - 0x9e, 0x1e, 0x98, 0x85, 0x67, 0x07, 0x26, 0x7a, 0xd4, 0x33, 0xd1, 0xb7, 0x3d, 0x13, 0x3d, 0xe9, - 0x99, 0x68, 0xbf, 0x67, 0xa2, 0x3f, 0x7a, 0x26, 0xfa, 0xab, 0x67, 0x16, 0x9e, 0xf5, 0x4c, 0xf4, - 0xd5, 0xa1, 0x59, 0xd8, 0x3b, 0x34, 0xd1, 0xfe, 0xa1, 0x59, 0x78, 0x7a, 0x68, 0x16, 0x3e, 0xba, - 0xe3, 0x73, 0xb1, 0xe9, 0xdb, 0x5d, 0x1e, 0x28, 0x88, 0x63, 0x6a, 0x27, 0xd2, 0xd1, 0x8b, 0x36, - 0x8f, 0x43, 0x22, 0x62, 0xde, 0x65, 0x2d, 0x88, 0xc9, 0x20, 0xed, 0x08, 0xd7, 0xe7, 0x0e, 0xdc, - 0x57, 0xd9, 0x0f, 0xce, 0xf8, 0x6f, 0x98, 0x3b, 0xa3, 0xff, 0x72, 0x96, 0xff, 0x0b, 0x00, 0x00, - 0xff, 0xff, 0x19, 0x57, 0x54, 0x02, 0x3e, 0x0a, 0x00, 0x00, + 0x14, 0xf6, 0x38, 0x24, 0xc5, 0x53, 0x55, 0x0d, 0xdb, 0x5f, 0xae, 0x89, 0x56, 0xd6, 0xc2, 0x21, + 0x24, 0x99, 0x5d, 0x94, 0x08, 0x84, 0x72, 0x73, 0x02, 0x07, 0x8b, 0x96, 0x46, 0xae, 0xe0, 0x80, + 0x90, 0xac, 0xd9, 0xf5, 0xf3, 0x7a, 0xc8, 0xee, 0xce, 0x64, 0x67, 0xd6, 0x69, 0x54, 0x15, 0x55, + 0xbd, 0x20, 0xc4, 0x05, 0xc1, 0x89, 0xff, 0xa0, 0x7f, 0x02, 0x22, 0x97, 0x9c, 0xa0, 0xe2, 0x80, + 0x22, 0x38, 0xd0, 0x1b, 0xc4, 0xe1, 0x00, 0xb7, 0x1e, 0xf8, 0x03, 0xd0, 0x8e, 0xd7, 0x4e, 0xec, + 0x78, 0x93, 0x10, 0x71, 0x9b, 0x37, 0xef, 0x9b, 0x6f, 0xbe, 0xef, 0xcd, 0xbe, 0xa7, 0xc5, 0x76, + 0x17, 0xa4, 0xcd, 0xb8, 0x23, 0xbd, 0x0e, 0x84, 0xd4, 0x89, 0x68, 0x08, 0x52, 0x50, 0x0f, 0x1c, + 0x91, 0xb8, 0x01, 0xf3, 0x9a, 0x5e, 0x22, 0x15, 0x0f, 0xa9, 0x60, 0xb6, 0x88, 0xb9, 0xe2, 0xc6, + 0xad, 0x3e, 0xde, 0xee, 0xe3, 0xed, 0x21, 0xbe, 0x42, 0x7c, 0xa6, 0x3a, 0x89, 0x6b, 0x7b, 0x3c, + 0x74, 0x7c, 0xee, 0x73, 0x47, 0xe3, 0xdd, 0xa4, 0xad, 0x23, 0x1d, 0xe8, 0x55, 0x9f, 0xa7, 0x32, + 0xe7, 0x73, 0xee, 0x07, 0xe0, 0x50, 0xc1, 0x1c, 0x1a, 0x45, 0x5c, 0x51, 0xc5, 0x78, 0x24, 0xb3, + 0xec, 0x6b, 0x79, 0xaa, 0xd4, 0x8e, 0x80, 0x01, 0xe8, 0xd5, 0x51, 0x10, 0x17, 0xc7, 0x19, 0x6e, + 0x8f, 0x26, 0x8f, 0x9f, 0x9b, 0x1b, 0x4d, 0x75, 0x69, 0xc0, 0x5a, 0x54, 0x41, 0x96, 0xb5, 0xc6, + 0xb2, 0x20, 0x21, 0xea, 0x8e, 0x91, 0x57, 0xc7, 0x30, 0x0c, 0xb6, 0x9b, 0x23, 0x08, 0xeb, 0x2e, + 0xbe, 0x54, 0xdb, 0xa8, 0xd7, 0x15, 0x84, 0xc6, 0x4d, 0x3c, 0x13, 0x82, 0xea, 0xf0, 0x56, 0x19, + 0x55, 0xd1, 0x7c, 0xa9, 0x91, 0x45, 0x86, 0x81, 0x5f, 0x12, 0x54, 0x75, 0xca, 0x45, 0xbd, 0xab, + 0xd7, 0x29, 0x36, 0x06, 0x99, 0x04, 0xaa, 0x3c, 0x55, 0x45, 0xf3, 0x2f, 0x37, 0xb2, 0xc8, 0xfa, + 0x0c, 0x5f, 0xce, 0xe8, 0xee, 0x30, 0xa9, 0x8c, 0x5b, 0xf8, 0x52, 0xc0, 0xa4, 0x6a, 0xb2, 0x21, + 0x67, 0x1a, 0xd6, 0x5b, 0xc6, 0xdb, 0x78, 0x9a, 0x29, 0x08, 0x65, 0xb9, 0x58, 0x9d, 0x9a, 0xbf, + 0xbc, 0x5c, 0xb5, 0x73, 0x5e, 0xcb, 0xce, 0xd8, 0x1a, 0x7d, 0x78, 0xde, 0xbd, 0xab, 0x33, 0x3f, + 0xed, 0xa2, 0xe2, 0x2c, 0xb2, 0x76, 0xf0, 0xf5, 0xf7, 0xba, 0x34, 0x48, 0xa8, 0x82, 0xda, 0x46, + 0xbd, 0xe6, 0x79, 0x20, 0x65, 0x03, 0xb6, 0x8c, 0x39, 0x5c, 0x1a, 0x72, 0x66, 0x52, 0x8e, 0x36, + 0x8c, 0x75, 0x8c, 0x53, 0xfa, 0x66, 0x2a, 0x6e, 0x20, 0xe9, 0xf5, 0xb3, 0x24, 0xa5, 0x06, 0x1b, + 0x25, 0x96, 0xad, 0xa4, 0xf5, 0x09, 0xbe, 0x31, 0xe1, 0x6a, 0x29, 0xc6, 0xd8, 0xd1, 0xc5, 0xd8, + 0xbf, 0x40, 0x78, 0xf6, 0x83, 0x01, 0xa8, 0xb6, 0x51, 0xd7, 0xe5, 0x3d, 0xdd, 0xd5, 0xbd, 0x8b, + 0xba, 0x5a, 0xc3, 0xdf, 0xff, 0xbd, 0x37, 0x35, 0xfd, 0x35, 0x2a, 0xce, 0x5e, 0x3d, 0xa6, 0x61, + 0x58, 0xe4, 0x2f, 0x11, 0xbe, 0x3d, 0xb0, 0xba, 0x46, 0x95, 0xd7, 0x19, 0x29, 0x75, 0x84, 0xcb, + 0x6e, 0xba, 0xd9, 0x1c, 0x72, 0x37, 0xa9, 0x60, 0x5a, 0x45, 0x66, 0xfe, 0x8d, 0x5c, 0x11, 0xe3, + 0x0e, 0x8f, 0x29, 0x79, 0xbf, 0x71, 0x43, 0xd3, 0x1e, 0x41, 0x04, 0x4b, 0x21, 0xd6, 0x63, 0x84, + 0x2b, 0x79, 0x6a, 0xa4, 0x30, 0xdc, 0xff, 0x51, 0x4e, 0x9e, 0x84, 0x65, 0x6c, 0xdc, 0xe1, 0x7c, + 0x33, 0x11, 0x1f, 0x4a, 0x88, 0x1b, 0x3c, 0x80, 0xb3, 0xbf, 0x39, 0x6b, 0x11, 0x5f, 0x3b, 0x71, + 0x46, 0x0a, 0xe3, 0x3a, 0x9e, 0x8e, 0xd3, 0x40, 0x6b, 0x2b, 0x35, 0xfa, 0xc1, 0xf2, 0x0f, 0x25, + 0x5c, 0x5a, 0xd7, 0x03, 0xae, 0xb6, 0x51, 0x37, 0xbe, 0x2d, 0xe2, 0x2b, 0xeb, 0x54, 0x7a, 0xb4, + 0x05, 0xef, 0x42, 0x00, 0x0a, 0x0c, 0x92, 0x6b, 0x61, 0x04, 0xd7, 0x80, 0xad, 0x04, 0xa4, 0xaa, + 0xd8, 0xe7, 0x85, 0x4b, 0xc1, 0x23, 0x09, 0xd6, 0x53, 0xd4, 0xfb, 0xb1, 0xbc, 0xd5, 0x7e, 0xeb, + 0x81, 0x47, 0x3c, 0x1e, 0x49, 0x1e, 0x00, 0x71, 0xa9, 0x04, 0x42, 0x5b, 0x21, 0x8b, 0x96, 0xaa, + 0xe3, 0x09, 0xe6, 0x8d, 0x64, 0x52, 0xe8, 0x52, 0x3a, 0x89, 0x08, 0xe3, 0x84, 0x45, 0xed, 0x98, + 0x4a, 0x15, 0x27, 0x9e, 0x4a, 0x62, 0x20, 0xdb, 0x31, 0x53, 0x47, 0xc9, 0x84, 0x86, 0xfd, 0x93, + 0xfd, 0xfd, 0x27, 0xbf, 0xfe, 0xf9, 0x4d, 0x91, 0x58, 0xf3, 0xd9, 0x88, 0x3f, 0x9a, 0xae, 0xd2, + 0x79, 0x98, 0xae, 0x1f, 0x39, 0x5e, 0x5f, 0x6e, 0xb3, 0xa5, 0xf5, 0xae, 0xa2, 0x05, 0xe3, 0x77, + 0x84, 0x5f, 0x39, 0xd1, 0x86, 0xa7, 0xd4, 0x67, 0xd2, 0xb4, 0x38, 0xa5, 0x3e, 0x13, 0x3b, 0xdc, + 0xda, 0x7c, 0xf6, 0x5d, 0x31, 0x2d, 0xd1, 0xa2, 0xf6, 0xdb, 0x82, 0x36, 0x4d, 0x02, 0x45, 0xa8, + 0x06, 0x0c, 0xcd, 0x6d, 0x83, 0x9b, 0x6d, 0x91, 0x18, 0x68, 0x4b, 0x9b, 0x5b, 0xb6, 0xc8, 0x04, + 0x73, 0x72, 0x47, 0x2a, 0x08, 0x1d, 0xc8, 0xee, 0x22, 0x54, 0xb0, 0xec, 0x64, 0xea, 0xf0, 0x1f, + 0x84, 0x6f, 0x4e, 0xfe, 0xde, 0x8d, 0xe5, 0x33, 0x75, 0x9f, 0x68, 0xd7, 0xca, 0xca, 0x7f, 0x3e, + 0x23, 0x85, 0xb5, 0x75, 0x51, 0xc3, 0xef, 0x58, 0x2b, 0xe7, 0x30, 0xac, 0xbb, 0x6c, 0xcc, 0xf6, + 0x2e, 0xc2, 0x57, 0xee, 0x27, 0xbe, 0x0f, 0x52, 0x7d, 0x44, 0x83, 0x04, 0xa4, 0x91, 0xdf, 0xb7, + 0x23, 0xb8, 0xd4, 0xe4, 0xc2, 0x79, 0xa1, 0x52, 0x58, 0xf7, 0x33, 0x6f, 0xd7, 0x26, 0x78, 0x3b, + 0xe5, 0xd1, 0x1e, 0x0e, 0xd7, 0x8f, 0x1c, 0xd9, 0x27, 0x25, 0x5d, 0xcd, 0x9a, 0xaa, 0xff, 0x0d, + 0xe1, 0xab, 0x63, 0xed, 0x6e, 0x2c, 0xe6, 0x8a, 0x3a, 0x39, 0x4c, 0x2a, 0x4b, 0xe7, 0x07, 0x4b, + 0x61, 0xb1, 0x8b, 0xbe, 0xcf, 0x9b, 0xd6, 0x62, 0xfe, 0xfb, 0x04, 0xfa, 0x26, 0x92, 0x48, 0x88, + 0x89, 0x9e, 0x4b, 0xab, 0x68, 0xa1, 0xb2, 0xb4, 0xb7, 0x8b, 0xa6, 0x7e, 0xd9, 0x45, 0x66, 0x9e, + 0xbe, 0x7b, 0xee, 0xa7, 0xe0, 0xa9, 0x27, 0x3f, 0x97, 0x8b, 0x1d, 0xb4, 0xf6, 0x39, 0xda, 0x3f, + 0x30, 0x0b, 0xcf, 0x0f, 0xcc, 0xc2, 0x8b, 0x03, 0x13, 0x3d, 0xee, 0x99, 0xe8, 0x69, 0xcf, 0x44, + 0xcf, 0x7a, 0x26, 0xda, 0xef, 0x99, 0xe8, 0x8f, 0x9e, 0x89, 0xfe, 0xea, 0x99, 0x85, 0x17, 0x3d, + 0x13, 0x7d, 0x75, 0x68, 0x16, 0xf6, 0x0e, 0x4d, 0xb4, 0x7f, 0x68, 0x16, 0x9e, 0x1f, 0x9a, 0x85, + 0x8f, 0xef, 0xfa, 0x5c, 0x6c, 0xfa, 0x76, 0x97, 0x07, 0x0a, 0xe2, 0x98, 0xda, 0x89, 0x74, 0xf4, + 0xa2, 0xcd, 0xe3, 0x90, 0x88, 0x98, 0x77, 0x59, 0x0b, 0x62, 0x32, 0x48, 0x3b, 0xc2, 0xf5, 0xb9, + 0x03, 0x0f, 0x54, 0xf6, 0xeb, 0x33, 0xfe, 0x83, 0xe6, 0xce, 0xe8, 0xff, 0x9f, 0x95, 0x7f, 0x03, + 0x00, 0x00, 0xff, 0xff, 0xae, 0x66, 0xc6, 0xf0, 0x58, 0x0a, 0x00, 0x00, } func (this *APIItem) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/namespace/public_customapi.vesapi.go b/pbgo/extschema/schema/namespace/public_customapi.vesapi.go index 5186148d1..e70ba0778 100644 --- a/pbgo/extschema/schema/namespace/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/namespace/public_customapi.vesapi.go @@ -1535,15 +1535,15 @@ var CustomAPISwaggerJSON string = `{ "properties": { "batch_namespace_api_list": { "type": "array", - "description": " List of namespaces and associated api list entries\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 50\n", + "description": " List of namespaces and associated api list entries\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 75\n", "title": "batch_namespace_api_list", - "maxItems": 50, + "maxItems": 75, "items": { "$ref": "#/definitions/namespaceNamespaceAPIList" }, "x-displayname": "BatchNamespaceApiList", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "50" + "ves.io.schema.rules.repeated.max_items": "75" } } } @@ -1609,15 +1609,15 @@ var CustomAPISwaggerJSON string = `{ "properties": { "item_lists": { "type": "array", - "description": " List of APIItemList entries\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 50\n", + "description": " List of APIItemList entries\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 15\n", "title": "item_lists", - "maxItems": 50, + "maxItems": 15, "items": { "$ref": "#/definitions/namespaceAPIItemList" }, "x-displayname": "Item Lists", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "50" + "ves.io.schema.rules.repeated.max_items": "15" } }, "namespace": { diff --git a/pbgo/extschema/schema/namespace/public_customapi.vesmsg.go b/pbgo/extschema/schema/namespace/public_customapi.vesmsg.go index 4600faf2d..110adb136 100644 --- a/pbgo/extschema/schema/namespace/public_customapi.vesmsg.go +++ b/pbgo/extschema/schema/namespace/public_customapi.vesmsg.go @@ -516,7 +516,7 @@ var DefaultEvaluateBatchAPIAccessReqValidator = func() *ValidateEvaluateBatchAPI vrhBatchNamespaceApiList := v.BatchNamespaceApiListValidationRuleHandler rulesBatchNamespaceApiList := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "50", + "ves.io.schema.rules.repeated.max_items": "75", } vFn, err = vrhBatchNamespaceApiList(rulesBatchNamespaceApiList) if err != nil { @@ -911,7 +911,7 @@ var DefaultNamespaceAPIListValidator = func() *ValidateNamespaceAPIList { vrhItemLists := v.ItemListsValidationRuleHandler rulesItemLists := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "50", + "ves.io.schema.rules.repeated.max_items": "15", } vFn, err = vrhItemLists(rulesItemLists) if err != nil { diff --git a/pbgo/extschema/schema/namespace/public_customapi_akar.pb.go b/pbgo/extschema/schema/namespace/public_customapi_akar.pb.go index 5df9c4467..f7b875b5e 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_akar.pb.go +++ b/pbgo/extschema/schema/namespace/public_customapi_akar.pb.go @@ -1665,11 +1665,6 @@ type HTTPLoadbalancerInventoryFilterType struct { // x-displayName: "API Protection" // Filter results with HTTP loadbalancers with API Protection configured ApiProtection *types.BoolValue `protobuf:"bytes,17,opt,name=api_protection,json=apiProtection,proto3" json:"api_protection,omitempty"` - // DDoS Protection - // - // x-displayName: "DDoS Protection" - // Filter results with HTTP loadbalancers with DDoS Protection configured - DdosProtection *types.BoolValue `protobuf:"bytes,18,opt,name=ddos_protection,json=ddosProtection,proto3" json:"ddos_protection,omitempty"` // Client Side Defense // // x-displayName: "Client Side Defense" @@ -1710,15 +1705,20 @@ type HTTPLoadbalancerInventoryFilterType struct { // x-displayName: "WAF Exclusion" // Filter results with HTTP loadbalancers with WAF Exclusion WafExclusion *types.BoolValue `protobuf:"bytes,26,opt,name=waf_exclusion,json=wafExclusion,proto3" json:"waf_exclusion,omitempty"` - // DDoS Auto Mitigation + // L7 DDoS Detection + // + // x-displayName: "L7 DDoS Detection" + // Filter results with HTTP loadbalancers with L7 DDoS detection enabled + DdosProtection *types.BoolValue `protobuf:"bytes,18,opt,name=ddos_protection,json=ddosProtection,proto3" json:"ddos_protection,omitempty"` + // L7 DDoS Auto Mitigation // - // x-displayName: "DDoS Auto Mitigation" - // Filter results with HTTP loadbalancers with DDoS Auto Mitigation + // x-displayName: "L7 DDoS Auto Mitigation" + // Filter results with HTTP loadbalancers with L7 DDoS Auto Mitigation enabled DdosAutoMitigation *types.BoolValue `protobuf:"bytes,27,opt,name=ddos_auto_mitigation,json=ddosAutoMitigation,proto3" json:"ddos_auto_mitigation,omitempty"` - // DDoS Mitigation + // DDoS Mitigation Rules // - // x-displayName: "DDoS Mitigation" - // Filter results with HTTP loadbalancers with DDoS Mitigation + // x-displayName: "DDoS Mitigation Rules" + // Filter results with HTTP loadbalancers with DDoS Mitigation Rules configured DdosMitigation *types.BoolValue `protobuf:"bytes,28,opt,name=ddos_mitigation,json=ddosMitigation,proto3" json:"ddos_mitigation,omitempty"` // Slow DDoS Mitigation // @@ -1867,13 +1867,6 @@ func (m *HTTPLoadbalancerInventoryFilterType) GetApiProtection() *types.BoolValu return nil } -func (m *HTTPLoadbalancerInventoryFilterType) GetDdosProtection() *types.BoolValue { - if m != nil { - return m.DdosProtection - } - return nil -} - func (m *HTTPLoadbalancerInventoryFilterType) GetClientSideDefense() *types.BoolValue { if m != nil { return m.ClientSideDefense @@ -1930,6 +1923,13 @@ func (m *HTTPLoadbalancerInventoryFilterType) GetWafExclusion() *types.BoolValue return nil } +func (m *HTTPLoadbalancerInventoryFilterType) GetDdosProtection() *types.BoolValue { + if m != nil { + return m.DdosProtection + } + return nil +} + func (m *HTTPLoadbalancerInventoryFilterType) GetDdosAutoMitigation() *types.BoolValue { if m != nil { return m.DdosAutoMitigation @@ -2088,11 +2088,6 @@ type HTTPLoadbalancerResultType struct { // x-displayName: "API Protection Enabled or Disabled" // API Protection configured ApiProtectionEnabled *schema.Empty `protobuf:"bytes,4,opt,name=api_protection_enabled,json=apiProtectionEnabled,proto3" json:"api_protection_enabled,omitempty"` - // DDoS Detection Status - // - // x-displayName: "DDoS Detection Enabled or Disabled" - // DDoS Detection configured - DdosProtectionEnabled *schema.Empty `protobuf:"bytes,5,opt,name=ddos_protection_enabled,json=ddosProtectionEnabled,proto3" json:"ddos_protection_enabled,omitempty"` // Client Side Defense Status // // x-displayName: "Client Side Defense Enabled or Disabled" @@ -2148,15 +2143,20 @@ type HTTPLoadbalancerResultType struct { // x-displayName: "WAF Exclusion Enabled or Disabled" // WAF Exclusion configured WafExclusionEnabled *schema.Empty `protobuf:"bytes,17,opt,name=waf_exclusion_enabled,json=wafExclusionEnabled,proto3" json:"waf_exclusion_enabled,omitempty"` - // DDoS Auto Mitigation Status + // L7 DDoS Detection Status + // + // x-displayName: "L7 DDoS Detection Enabled or Disabled" + // L7 DDoS detection configured + DdosProtectionEnabled *schema.Empty `protobuf:"bytes,5,opt,name=ddos_protection_enabled,json=ddosProtectionEnabled,proto3" json:"ddos_protection_enabled,omitempty"` + // L7 DDoS Auto Mitigation Status // - // x-displayName: "DDoS Auto Mitigation Enabled or Disabled" - // DDoS Auto Mitigation configured + // x-displayName: "L7 DDoS Auto Mitigation Enabled or Disabled" + // L7 DDoS Auto Mitigation configured DdosAutoMitigationEnabled *schema.Empty `protobuf:"bytes,18,opt,name=ddos_auto_mitigation_enabled,json=ddosAutoMitigationEnabled,proto3" json:"ddos_auto_mitigation_enabled,omitempty"` - // DDoS Mitigation Status + // DDoS Mitigation Rules Status // - // x-displayName: "DDoS Mitigation Enabled or Disabled" - // DDoS Mitigation configured + // x-displayName: "DDoS Mitigation Rules Configured" + // DDoS Mitigation Rules configured DdosMitigationEnabled *schema.Empty `protobuf:"bytes,19,opt,name=ddos_mitigation_enabled,json=ddosMitigationEnabled,proto3" json:"ddos_mitigation_enabled,omitempty"` // Slow DDoS Mitigation Status // @@ -2360,13 +2360,6 @@ func (m *HTTPLoadbalancerResultType) GetApiProtectionEnabled() *schema.Empty { return nil } -func (m *HTTPLoadbalancerResultType) GetDdosProtectionEnabled() *schema.Empty { - if m != nil { - return m.DdosProtectionEnabled - } - return nil -} - func (m *HTTPLoadbalancerResultType) GetClientSideDefenseEnabled() *schema.Empty { if m != nil { return m.ClientSideDefenseEnabled @@ -2444,6 +2437,13 @@ func (m *HTTPLoadbalancerResultType) GetWafExclusionEnabled() *schema.Empty { return nil } +func (m *HTTPLoadbalancerResultType) GetDdosProtectionEnabled() *schema.Empty { + if m != nil { + return m.DdosProtectionEnabled + } + return nil +} + func (m *HTTPLoadbalancerResultType) GetDdosAutoMitigationEnabled() *schema.Empty { if m != nil { return m.DdosAutoMitigationEnabled @@ -2679,10 +2679,10 @@ type HTTPLoadbalancerInventoryType struct { // x-displayName: "API Protection" // Number of HTTP loadbalancers with API Protection configured ApiProtection uint32 `protobuf:"varint,4,opt,name=api_protection,json=apiProtection,proto3" json:"api_protection,omitempty"` - // DDoS Protection + // L7 DDoS Detection // - // x-displayName: "DDoS Protection" - // Number of HTTP loadbalancers with DDoS Protection configured + // x-displayName: "L7 DDoS Detection" + // Number of HTTP loadbalancers with L7 DDoS Detection enabled DdosProtection uint32 `protobuf:"varint,5,opt,name=ddos_protection,json=ddosProtection,proto3" json:"ddos_protection,omitempty"` // Client Side Defense // @@ -3395,254 +3395,264 @@ func init() { } var fileDescriptor_e3ad0896b746b19a = []byte{ - // 3952 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x6c, 0x1b, 0x49, - 0x76, 0x76, 0x53, 0xb6, 0x25, 0x95, 0x4c, 0x89, 0x6a, 0xfd, 0xb5, 0x28, 0x89, 0x96, 0x7b, 0xec, - 0xb1, 0x77, 0xc6, 0x22, 0xb1, 0xf6, 0xd8, 0xe3, 0xb1, 0x37, 0x98, 0xd0, 0xb6, 0x4c, 0xcb, 0xd1, - 0x78, 0x14, 0x4a, 0xb6, 0xb3, 0x03, 0x64, 0x7b, 0x9b, 0xcd, 0x22, 0x55, 0x71, 0xb3, 0xab, 0xa7, - 0xab, 0x48, 0x99, 0x58, 0x18, 0x58, 0x0c, 0x12, 0x24, 0xb7, 0x04, 0x93, 0x43, 0xee, 0x41, 0x02, - 0x04, 0x3e, 0xe4, 0xb8, 0x08, 0xd6, 0x39, 0xcc, 0x25, 0x98, 0x3d, 0x05, 0x83, 0x0d, 0x10, 0xec, - 0x29, 0x59, 0xcb, 0x7b, 0x48, 0x36, 0x87, 0x6c, 0x8e, 0x41, 0x0e, 0x09, 0xaa, 0xaa, 0xbb, 0xd9, - 0xdd, 0xec, 0x1f, 0x4a, 0x9a, 0x5b, 0x6e, 0x62, 0x57, 0xbd, 0xaf, 0xea, 0xab, 0xf7, 0xaa, 0xea, - 0xab, 0x57, 0x25, 0x70, 0xbd, 0x07, 0x49, 0x19, 0xe1, 0x0a, 0x31, 0xf6, 0x61, 0x47, 0xaf, 0x58, - 0x7a, 0x07, 0x12, 0x5b, 0x37, 0x60, 0xc5, 0xee, 0x36, 0x4c, 0x64, 0x68, 0x46, 0x97, 0x50, 0xdc, - 0xd1, 0x6d, 0xa4, 0xe9, 0xcf, 0x75, 0xa7, 0x6c, 0x3b, 0x98, 0x62, 0x79, 0x49, 0x18, 0x95, 0x85, - 0x51, 0xd9, 0x37, 0x2a, 0x6e, 0xb4, 0x11, 0xdd, 0xef, 0x36, 0xca, 0x06, 0xee, 0x54, 0xda, 0xb8, - 0x8d, 0x2b, 0xbc, 0x7e, 0xa3, 0xdb, 0xe2, 0xbf, 0xf8, 0x0f, 0xfe, 0x97, 0xc0, 0x29, 0xae, 0xb6, - 0x31, 0x6e, 0x9b, 0xb0, 0xa2, 0xdb, 0xa8, 0xa2, 0x5b, 0x16, 0xa6, 0x3a, 0x45, 0xd8, 0x22, 0x6e, - 0xe9, 0x79, 0xb7, 0xd4, 0xc7, 0xa0, 0xa8, 0x03, 0x09, 0xd5, 0x3b, 0xb6, 0x5b, 0xa1, 0x14, 0xad, - 0x70, 0xe0, 0xe8, 0xb6, 0x0d, 0x1d, 0x0f, 0xe0, 0xfd, 0x30, 0x37, 0xdd, 0x84, 0x0e, 0xd5, 0x6c, - 0x6c, 0x22, 0xa3, 0xaf, 0x11, 0x48, 0x2b, 0xb8, 0xf1, 0x07, 0xd0, 0xa0, 0x6e, 0xe5, 0x77, 0x23, - 0x95, 0x6d, 0x5b, 0x6b, 0x21, 0x07, 0x1e, 0xe8, 0xa6, 0x59, 0xa1, 0x7d, 0x1b, 0x7a, 0xa0, 0xef, - 0x24, 0x0d, 0x58, 0xb0, 0xd2, 0x4a, 0xb8, 0x12, 0xb6, 0x83, 0xbc, 0x96, 0xc3, 0x85, 0x41, 0xbb, - 0xd5, 0x70, 0x51, 0x4f, 0x37, 0x51, 0x53, 0xa7, 0xd0, 0x2d, 0x55, 0x23, 0xa5, 0x90, 0x40, 0xab, - 0x17, 0x01, 0x5f, 0x8f, 0xd4, 0x41, 0xf0, 0x40, 0x0b, 0xd7, 0x38, 0x3f, 0x5c, 0x83, 0x04, 0x3b, - 0xa1, 0xfe, 0xb5, 0x04, 0x2e, 0xec, 0x42, 0xfa, 0x40, 0x27, 0xb4, 0x7a, 0x6f, 0x9b, 0x3c, 0xc0, - 0xce, 0x96, 0x45, 0xa1, 0x63, 0x41, 0xfa, 0x74, 0x6b, 0x87, 0xd4, 0xe1, 0xe7, 0x5d, 0x48, 0xa8, - 0xbc, 0x0a, 0x26, 0x7d, 0xee, 0x8a, 0xb4, 0x2e, 0x5d, 0x99, 0xac, 0x0f, 0x3e, 0xc8, 0x0d, 0x30, - 0xd9, 0xd2, 0x09, 0xd5, 0x74, 0xc3, 0x24, 0x4a, 0x6e, 0x7d, 0xec, 0xca, 0xd4, 0x35, 0xb5, 0x1c, - 0x8e, 0x1a, 0xde, 0x70, 0xf9, 0x53, 0xee, 0x83, 0x3a, 0x6c, 0xed, 0xf5, 0x6d, 0x78, 0xf7, 0xc2, - 0xab, 0x97, 0x13, 0x9e, 0xdd, 0x4f, 0xff, 0xfd, 0xab, 0xb1, 0xb3, 0x5f, 0x4a, 0x63, 0x85, 0x1f, - 0x4b, 0x87, 0xbf, 0xfc, 0x87, 0xb1, 0xb3, 0x5f, 0xfe, 0xbd, 0x94, 0x2b, 0x48, 0x75, 0x5e, 0x5e, - 0x35, 0x4c, 0xa2, 0x5e, 0x04, 0x6a, 0x5a, 0x37, 0x89, 0x8d, 0x2d, 0x02, 0xd5, 0x2a, 0xb8, 0x50, - 0x3b, 0x19, 0x19, 0xd5, 0x01, 0x6a, 0x2d, 0xb3, 0x21, 0x79, 0x3b, 0x48, 0x59, 0x1a, 0x99, 0xf2, - 0x54, 0x80, 0x72, 0x80, 0xdc, 0x4f, 0x24, 0x70, 0x7e, 0x17, 0xd2, 0xaa, 0x41, 0x51, 0x0f, 0xee, - 0x42, 0xa7, 0x87, 0x0c, 0xb8, 0xc3, 0x42, 0x17, 0xc1, 0x11, 0x5d, 0xd0, 0x05, 0x05, 0x22, 0xec, - 0x44, 0xcc, 0x23, 0x78, 0x14, 0x4f, 0xbc, 0xfb, 0xea, 0xe5, 0x74, 0xc8, 0xbc, 0xcf, 0xfc, 0x71, - 0xe6, 0x4b, 0x29, 0x57, 0x58, 0x0f, 0xba, 0x63, 0x86, 0x84, 0xfb, 0xa6, 0xaa, 0x60, 0x3d, 0xb9, - 0xdf, 0xae, 0x4f, 0x3e, 0x06, 0xe7, 0x6b, 0x27, 0xe1, 0xa6, 0xfe, 0xa1, 0x04, 0xd6, 0x6b, 0x19, - 0xad, 0xc8, 0x3f, 0x3c, 0xd1, 0x00, 0xcc, 0x0e, 0x0d, 0xc0, 0x30, 0xd7, 0x90, 0x93, 0x1e, 0x43, - 0x7a, 0x80, 0x9d, 0xe7, 0x47, 0x76, 0x92, 0x25, 0xec, 0x8e, 0xeb, 0xa4, 0x90, 0x79, 0x92, 0x93, - 0xac, 0x70, 0xdf, 0x42, 0x4e, 0x1a, 0xea, 0x77, 0x8c, 0x93, 0x8e, 0xc3, 0x2d, 0xec, 0xa4, 0x84, - 0x56, 0x98, 0x93, 0x4e, 0x30, 0x00, 0xb3, 0x43, 0x03, 0x30, 0xcc, 0xf5, 0x6f, 0x25, 0xb0, 0xe6, - 0x93, 0xad, 0xb2, 0x3d, 0xe0, 0x68, 0x2e, 0xc2, 0x60, 0x3a, 0xb0, 0x73, 0x1c, 0xad, 0x7f, 0x17, - 0x5f, 0xbd, 0x3c, 0x17, 0xdc, 0x76, 0xe2, 0xdd, 0x93, 0xd7, 0x83, 0xbd, 0x52, 0xd7, 0x41, 0x29, - 0xa9, 0xbf, 0xae, 0x6b, 0x7e, 0x0b, 0xac, 0xd5, 0x8e, 0xcf, 0x48, 0x7d, 0x2b, 0x81, 0x52, 0x2d, - 0xb5, 0x05, 0xf9, 0xb3, 0x13, 0x90, 0x9e, 0x89, 0x90, 0x8e, 0xf0, 0x93, 0x21, 0x58, 0x08, 0x63, - 0x6b, 0x84, 0xea, 0xb4, 0x4b, 0x94, 0x31, 0xde, 0xc4, 0x77, 0x23, 0x4d, 0x44, 0xb7, 0xed, 0xf2, - 0xa0, 0xc7, 0xfd, 0x5d, 0x6e, 0x58, 0x9f, 0x0b, 0x35, 0x20, 0x3e, 0xaa, 0xaf, 0x24, 0x70, 0xfe, - 0x89, 0xcd, 0xb6, 0xcf, 0xaa, 0x69, 0xe2, 0x83, 0x6a, 0xb3, 0x07, 0x1d, 0x8a, 0x08, 0xfc, 0xd4, - 0xda, 0xe1, 0xd2, 0xa6, 0x0e, 0x3f, 0xcf, 0xf0, 0x3c, 0x02, 0xcb, 0x3a, 0x33, 0xd5, 0x74, 0xcf, - 0x56, 0xc3, 0x96, 0x26, 0x84, 0x91, 0x92, 0x5b, 0x97, 0xae, 0x4c, 0x5f, 0x2b, 0x97, 0x13, 0xa4, - 0x50, 0x59, 0x34, 0xe2, 0xb7, 0x7a, 0x6f, 0x1f, 0x23, 0x03, 0xd6, 0x17, 0xf5, 0xd8, 0xbe, 0xa8, - 0xb7, 0xc1, 0x7a, 0x7a, 0x5f, 0x89, 0x2d, 0x2f, 0x82, 0xb3, 0x0e, 0x24, 0x5d, 0x93, 0xf2, 0x9e, - 0x4e, 0xd4, 0xdd, 0x5f, 0xea, 0x1f, 0xe5, 0x40, 0xe1, 0xa9, 0xab, 0x14, 0xea, 0x5d, 0x93, 0x47, - 0x41, 0xe6, 0xb2, 0x33, 0xef, 0x6a, 0x0b, 0xec, 0x68, 0xb0, 0xa7, 0x9b, 0x5d, 0xae, 0xbc, 0x5c, - 0x27, 0xdf, 0x4d, 0x24, 0x15, 0x6d, 0xc6, 0xfb, 0x80, 0x9d, 0x4d, 0x1f, 0x64, 0xd3, 0xa2, 0x4e, - 0xbf, 0x3e, 0xd7, 0x1b, 0x2e, 0x91, 0xe7, 0xc1, 0x19, 0xf6, 0x03, 0x2a, 0x63, 0xbc, 0x43, 0xe2, - 0x47, 0xf1, 0x01, 0x50, 0x92, 0x60, 0xe4, 0x02, 0x18, 0x7b, 0x0e, 0xfb, 0x2e, 0x01, 0xf6, 0xe7, - 0x00, 0x23, 0x17, 0xc0, 0xb8, 0x9d, 0xbb, 0x25, 0xa9, 0x35, 0xb0, 0x10, 0xe9, 0x9f, 0x1b, 0xcc, - 0x0a, 0x18, 0x27, 0x5d, 0xc3, 0x80, 0x84, 0xb8, 0x23, 0xe7, 0xfd, 0x64, 0x60, 0xd0, 0x71, 0xb0, - 0xe3, 0x81, 0xf1, 0x1f, 0xea, 0x2a, 0x28, 0xba, 0xcb, 0x15, 0xb2, 0xda, 0x5b, 0x56, 0x0f, 0x5a, - 0x14, 0x3b, 0x7d, 0x77, 0x6e, 0xa9, 0xff, 0x29, 0x81, 0x95, 0xd8, 0x62, 0xb7, 0xb5, 0xcb, 0x60, - 0xa6, 0x6d, 0xe2, 0x86, 0x6e, 0x6a, 0xee, 0x4a, 0x24, 0x5a, 0xcd, 0xd7, 0xa7, 0xc5, 0x67, 0xd7, - 0x96, 0x37, 0x4e, 0x10, 0xe5, 0x53, 0x8b, 0x15, 0x8b, 0x1f, 0xf2, 0x15, 0x50, 0x60, 0x7f, 0x68, - 0x1d, 0x48, 0xf6, 0xb5, 0xb6, 0x83, 0xbb, 0x36, 0xe1, 0xc3, 0x95, 0xaf, 0x4f, 0xb3, 0xef, 0x9f, - 0x40, 0xb2, 0x5f, 0xe3, 0x5f, 0xe5, 0xf7, 0xc0, 0x6c, 0xd3, 0xd0, 0x0c, 0xb3, 0x4b, 0x28, 0x74, - 0xbc, 0xaa, 0xa7, 0x79, 0xd5, 0x99, 0xa6, 0x71, 0x4f, 0x7c, 0x77, 0xeb, 0x9e, 0x07, 0x53, 0x86, - 0x89, 0xbb, 0x4d, 0xcd, 0x44, 0xd6, 0x73, 0xa2, 0x9c, 0xe1, 0xb5, 0x00, 0xff, 0xb4, 0xcd, 0xbe, - 0xc8, 0x45, 0x30, 0x41, 0x60, 0xbb, 0x03, 0x2d, 0x4a, 0x94, 0xb3, 0xbc, 0xd4, 0xff, 0xad, 0xfe, - 0xcb, 0x18, 0x58, 0xde, 0xbb, 0xb7, 0xb3, 0x8d, 0xf5, 0x66, 0x43, 0x37, 0x75, 0xcb, 0x80, 0x4e, - 0x9d, 0x87, 0x1e, 0x9b, 0xee, 0xf2, 0x1d, 0x30, 0x4d, 0x4d, 0xa2, 0x41, 0xcb, 0x70, 0xfa, 0x5c, - 0x68, 0x72, 0xba, 0x53, 0xd7, 0xe6, 0x23, 0x51, 0xb4, 0xd9, 0xb1, 0x69, 0xbf, 0x9e, 0xa7, 0x26, - 0xd9, 0xf4, 0xab, 0xca, 0x8f, 0x81, 0xe2, 0x47, 0x97, 0x16, 0xde, 0x6e, 0xf9, 0xb0, 0x24, 0xc1, - 0x2c, 0xfa, 0x56, 0xc1, 0xdd, 0xbf, 0xcf, 0x3a, 0x13, 0x41, 0x19, 0x4b, 0xeb, 0x0c, 0x09, 0x19, - 0x6f, 0x81, 0x05, 0xdb, 0x41, 0x3d, 0x9d, 0xc2, 0xc1, 0x8c, 0x67, 0x23, 0xc0, 0x07, 0x35, 0x09, - 0x63, 0xde, 0x35, 0xa9, 0x06, 0x2d, 0xe4, 0x4d, 0x30, 0xe7, 0x1e, 0xa0, 0x3c, 0x24, 0x0e, 0x74, - 0x26, 0x05, 0x48, 0xb6, 0x43, 0x2b, 0x06, 0x87, 0x91, 0xc1, 0x69, 0x46, 0x94, 0x7b, 0x64, 0xb2, - 0xce, 0xff, 0x96, 0xaf, 0x03, 0xe0, 0xb0, 0x2e, 0x9a, 0xa8, 0x83, 0xa8, 0x32, 0x9e, 0x82, 0x38, - 0xc9, 0xea, 0x6d, 0xb3, 0x6a, 0xe1, 0xe5, 0x60, 0x22, 0xba, 0x21, 0xfc, 0xd5, 0x18, 0x50, 0x23, - 0x0e, 0xf6, 0xe3, 0xfa, 0x01, 0x32, 0x29, 0x74, 0xb8, 0xa7, 0xab, 0x43, 0x9e, 0x16, 0xad, 0x17, - 0xcb, 0xe2, 0x20, 0x56, 0xf6, 0x0e, 0x62, 0xe5, 0xbb, 0x18, 0x9b, 0x4f, 0xd9, 0xc4, 0x8c, 0xfa, - 0x7b, 0x2f, 0xc5, 0xdf, 0x13, 0x99, 0x60, 0x49, 0x5e, 0xaf, 0x0e, 0x79, 0x7d, 0x32, 0xbb, 0x63, - 0x61, 0xdf, 0x7f, 0x9a, 0xe4, 0x7b, 0x90, 0x89, 0x14, 0x1f, 0x01, 0xbf, 0x13, 0x1f, 0x01, 0x53, - 0x99, 0x70, 0x31, 0x71, 0xf0, 0xe8, 0xf4, 0x84, 0x54, 0x18, 0x57, 0xff, 0x23, 0x07, 0x56, 0x93, - 0xdc, 0xc4, 0x1d, 0x74, 0x29, 0x76, 0x2a, 0xe6, 0xa3, 0x4e, 0xb8, 0x95, 0x31, 0xe9, 0xf2, 0x89, - 0x03, 0x7d, 0x29, 0x76, 0x7a, 0xe5, 0xa3, 0x83, 0x79, 0x3d, 0x6d, 0x22, 0xe5, 0x13, 0x06, 0xac, - 0x92, 0x3c, 0x65, 0xf2, 0xb1, 0x93, 0xe3, 0x19, 0xc8, 0x53, 0xc3, 0x36, 0x1b, 0x9a, 0xd8, 0x07, - 0x89, 0x32, 0xce, 0x77, 0xaf, 0x6b, 0x89, 0xbb, 0x57, 0xe2, 0x1a, 0x56, 0x3f, 0xc7, 0x81, 0xc4, - 0x07, 0xf2, 0xe8, 0xf4, 0xc4, 0xd9, 0xc2, 0xb8, 0xfa, 0x85, 0x0c, 0xde, 0x79, 0xb8, 0xb7, 0x97, - 0x39, 0x2b, 0x3e, 0x04, 0x93, 0xfb, 0x94, 0xda, 0x1a, 0xb6, 0xcc, 0xbe, 0x32, 0x9d, 0xe9, 0xde, - 0x09, 0x56, 0xf9, 0x53, 0xcb, 0xec, 0xcb, 0x57, 0xc1, 0xd8, 0x81, 0xde, 0x52, 0x66, 0x32, 0x4d, - 0x58, 0x35, 0x16, 0xe3, 0x0d, 0x4c, 0x35, 0x56, 0x0c, 0x0d, 0xee, 0xdb, 0x42, 0x76, 0x8c, 0x37, - 0x30, 0xdd, 0xf1, 0x0d, 0x18, 0x84, 0x6e, 0xa3, 0x20, 0xc4, 0x6c, 0x36, 0x84, 0x6e, 0xa3, 0x00, - 0xc4, 0x3d, 0x30, 0xd3, 0x6c, 0x62, 0x12, 0xc4, 0x90, 0x33, 0x31, 0xa6, 0x99, 0x49, 0x00, 0xe4, - 0x11, 0x98, 0x33, 0x4c, 0x04, 0x2d, 0xaa, 0x11, 0xd4, 0x84, 0x5a, 0x13, 0xb6, 0xa0, 0x45, 0xa0, - 0x32, 0x97, 0x09, 0x34, 0x2b, 0xcc, 0x76, 0x51, 0x13, 0xde, 0x17, 0x46, 0xa9, 0x0b, 0xca, 0xfc, - 0xb7, 0xb8, 0xa0, 0x2c, 0x1c, 0x75, 0x41, 0xf9, 0x18, 0xe4, 0x91, 0xad, 0x39, 0xd0, 0xee, 0x8a, - 0xac, 0x96, 0xb2, 0x98, 0x89, 0x70, 0x0e, 0xd9, 0x75, 0xbf, 0x3e, 0x63, 0xd6, 0xd1, 0x99, 0xa2, - 0xc5, 0x5d, 0xa2, 0x75, 0x09, 0x74, 0xb4, 0x26, 0xf4, 0xc6, 0x7c, 0x29, 0x9b, 0x99, 0x6f, 0xfb, - 0x84, 0x40, 0xe7, 0xbe, 0x67, 0x99, 0xbc, 0xce, 0x29, 0xdf, 0xee, 0x3a, 0xb7, 0x7c, 0x9c, 0x75, - 0x8e, 0x0d, 0xda, 0x81, 0xde, 0xd2, 0xe0, 0x0b, 0xa6, 0x6a, 0x18, 0xd1, 0x62, 0xf6, 0xa0, 0x1d, - 0xe8, 0xad, 0x4d, 0xaf, 0xbe, 0xbc, 0x0d, 0xe6, 0x79, 0x7c, 0xea, 0x5d, 0x8a, 0xb5, 0x0e, 0xa2, - 0xa8, 0x2d, 0x06, 0x7f, 0x25, 0xbb, 0x3b, 0xcc, 0xae, 0xda, 0xa5, 0xf8, 0x13, 0xdf, 0xca, 0x8f, - 0xf6, 0x00, 0xd0, 0xea, 0x68, 0xd1, 0x1e, 0x00, 0xd9, 0x06, 0xf3, 0x84, 0x1d, 0x22, 0xa2, 0x48, - 0x6b, 0xd9, 0x5d, 0x62, 0x76, 0xf7, 0xc3, 0x68, 0x4f, 0xc1, 0x72, 0x24, 0x2a, 0x02, 0x90, 0xa5, - 0x4c, 0xc8, 0xa5, 0x50, 0x58, 0x04, 0x70, 0xd9, 0xde, 0xee, 0x30, 0xc5, 0xd8, 0xd4, 0xc4, 0x24, - 0x53, 0xce, 0x8f, 0xb0, 0xb7, 0x0b, 0x8b, 0x7b, 0xdc, 0x40, 0x7e, 0x02, 0x96, 0xc3, 0x10, 0x1a, - 0xb2, 0xb5, 0x7d, 0xa8, 0x37, 0xa1, 0x43, 0x94, 0xf5, 0xec, 0x88, 0x0d, 0xa1, 0x6d, 0xd9, 0x0f, - 0x85, 0xa5, 0xfc, 0x18, 0x2c, 0xb0, 0x55, 0x4b, 0xac, 0xe6, 0x9a, 0x7b, 0xac, 0x60, 0x6c, 0x2f, - 0x64, 0x42, 0xce, 0xe9, 0x36, 0xda, 0xe5, 0x76, 0x4f, 0x7d, 0x33, 0x6f, 0x15, 0x6c, 0xc2, 0x16, - 0xb2, 0x10, 0x07, 0x52, 0x47, 0x5a, 0x05, 0xef, 0xfb, 0x06, 0xf2, 0x47, 0x00, 0x34, 0x75, 0xaa, - 0x6b, 0xed, 0xae, 0xee, 0x34, 0x95, 0x77, 0x32, 0xcd, 0x27, 0x59, 0xed, 0x1a, 0xab, 0xcc, 0x42, - 0xca, 0x20, 0x4e, 0x2b, 0xb8, 0x80, 0x5e, 0xcc, 0x0e, 0x29, 0x66, 0x12, 0x5e, 0x40, 0xdb, 0x8e, - 0x6e, 0xef, 0x6b, 0x9f, 0x9b, 0x1a, 0xb2, 0x88, 0xed, 0x02, 0x5d, 0xca, 0x5e, 0x40, 0xb9, 0xd9, - 0xef, 0x9a, 0x5b, 0xbe, 0x91, 0x5c, 0x03, 0xb3, 0x06, 0xc6, 0xcf, 0x11, 0x0c, 0x76, 0xe9, 0xdd, - 0x4c, 0xa4, 0x82, 0x30, 0x0a, 0x6f, 0x0d, 0xae, 0xdb, 0x1b, 0x26, 0x36, 0xd8, 0xd9, 0x48, 0xb9, - 0x3c, 0x02, 0x33, 0x6e, 0x72, 0xd7, 0xb5, 0x90, 0xef, 0x80, 0x29, 0x03, 0x3b, 0xc4, 0x5b, 0x75, - 0xaf, 0x64, 0x02, 0x00, 0x56, 0xdd, 0x5d, 0x72, 0xaf, 0x81, 0xb3, 0x0e, 0xee, 0xb2, 0x13, 0xd5, - 0x77, 0x32, 0xed, 0xdc, 0x9a, 0x6c, 0x76, 0x62, 0x07, 0xb5, 0x91, 0xc5, 0x37, 0x0f, 0xe8, 0x68, - 0xa4, 0xdb, 0x20, 0x90, 0x2a, 0xef, 0x65, 0xcf, 0x4e, 0x61, 0xb7, 0xcb, 0xcd, 0x76, 0xb9, 0x95, - 0xfc, 0x09, 0x98, 0x6f, 0xc2, 0x96, 0xde, 0x35, 0xa9, 0x66, 0x06, 0x64, 0x83, 0xf2, 0x7e, 0x76, - 0xa8, 0xba, 0x76, 0x41, 0xb5, 0xc1, 0xe2, 0xac, 0xd3, 0xa5, 0x5d, 0xdd, 0xd4, 0xa8, 0x49, 0x94, - 0xab, 0xd9, 0x71, 0x26, 0x6a, 0xef, 0x99, 0x84, 0xad, 0xa4, 0x3c, 0xca, 0x11, 0x31, 0x70, 0x0f, - 0x3a, 0x7d, 0x65, 0x23, 0x7b, 0x25, 0x65, 0x41, 0xee, 0xd5, 0xe7, 0x92, 0x73, 0x5a, 0xfd, 0xc9, - 0x32, 0x28, 0x46, 0x45, 0x50, 0xe0, 0xec, 0xf7, 0x21, 0x38, 0xc7, 0xb5, 0x0f, 0xb4, 0xf4, 0x86, - 0x09, 0x9b, 0xa9, 0x27, 0xbf, 0x29, 0x56, 0x73, 0x53, 0x54, 0x94, 0x6f, 0x80, 0x29, 0xbe, 0xd0, - 0xbb, 0x76, 0x69, 0x47, 0x3d, 0xc0, 0x16, 0x78, 0xd7, 0xec, 0x11, 0x58, 0x0c, 0x8b, 0x20, 0x1f, - 0x21, 0xed, 0x98, 0x37, 0x1f, 0x92, 0x41, 0x01, 0xac, 0xb0, 0x1a, 0xf2, 0xb1, 0x52, 0x8f, 0x7b, - 0x21, 0x3d, 0xe4, 0x61, 0x6d, 0x83, 0xa5, 0x88, 0x2c, 0xf2, 0xc1, 0xd2, 0x8e, 0x7c, 0x0b, 0x61, - 0x61, 0xe4, 0xa1, 0xed, 0x82, 0x95, 0x18, 0x7d, 0xe4, 0x23, 0x9e, 0x4d, 0x41, 0x54, 0x86, 0x14, - 0x92, 0x07, 0xfa, 0xfb, 0x60, 0x3d, 0x49, 0x28, 0xf9, 0xc8, 0x69, 0x87, 0xc9, 0xb5, 0x78, 0xa9, - 0x14, 0x18, 0xcd, 0x04, 0xd0, 0x89, 0xb4, 0xd1, 0x24, 0x71, 0x58, 0x0f, 0xc1, 0x42, 0x48, 0x3a, - 0xf9, 0x50, 0x93, 0x29, 0x50, 0x73, 0x41, 0xf1, 0x14, 0x20, 0x9d, 0xa4, 0xa1, 0x7c, 0x50, 0x90, - 0x46, 0x3a, 0x5e, 0x45, 0x79, 0xf0, 0xbf, 0x07, 0xd6, 0x62, 0xc5, 0x94, 0x8f, 0x3d, 0x95, 0x82, - 0xbd, 0x12, 0x27, 0xa7, 0x3c, 0xe4, 0x3d, 0xb0, 0x12, 0xa3, 0xaa, 0x7c, 0xdc, 0x73, 0x29, 0xb8, - 0xcb, 0xc3, 0xba, 0xca, 0x43, 0xf5, 0xd2, 0x09, 0xf9, 0xc4, 0x74, 0xc2, 0xf4, 0x31, 0xd2, 0x09, - 0x33, 0xd1, 0xec, 0xe2, 0x43, 0xb0, 0x10, 0x52, 0x71, 0x7e, 0xb7, 0x67, 0xd3, 0xfc, 0x17, 0xd4, - 0x71, 0x5e, 0x87, 0x9f, 0x80, 0xd5, 0x38, 0x39, 0xe7, 0x03, 0xca, 0x69, 0xe3, 0x30, 0x2c, 0xe8, - 0xa2, 0xd3, 0x35, 0x06, 0x71, 0x2e, 0x6b, 0xba, 0x0e, 0xa3, 0x3d, 0x01, 0xab, 0x71, 0x02, 0xcf, - 0x87, 0x9c, 0x4f, 0xeb, 0xe4, 0xb0, 0xc4, 0xf3, 0x60, 0x35, 0x70, 0x21, 0x51, 0xe9, 0xf9, 0xd8, - 0x0b, 0x29, 0xd8, 0xa5, 0x04, 0xad, 0x17, 0x98, 0xb2, 0x11, 0xbd, 0xe6, 0xa1, 0x2e, 0xa6, 0x4d, - 0xd9, 0x90, 0x4c, 0xf3, 0xb0, 0x7e, 0x00, 0x2e, 0x24, 0x6a, 0x3f, 0x1f, 0x76, 0x29, 0x6d, 0xa6, - 0xc5, 0xab, 0x3f, 0x0f, 0xff, 0x19, 0x58, 0x8b, 0x15, 0x81, 0x3e, 0xb6, 0x92, 0x82, 0x5d, 0x8c, - 0x91, 0x81, 0x91, 0x5d, 0x60, 0xa0, 0x06, 0x7d, 0xc4, 0xe5, 0x8c, 0x5d, 0x60, 0xa0, 0x07, 0x3d, - 0xac, 0xbb, 0x40, 0x1e, 0xc8, 0x42, 0x1f, 0xa7, 0x98, 0x82, 0x53, 0xf0, 0x85, 0x61, 0x20, 0x34, - 0x23, 0xfa, 0xd0, 0x07, 0x5a, 0x49, 0x0b, 0xcd, 0xb0, 0x42, 0x0c, 0xec, 0x24, 0x31, 0x42, 0xd1, - 0x47, 0x5c, 0x4d, 0xdb, 0x49, 0x86, 0xa4, 0xa2, 0x07, 0xba, 0x03, 0x96, 0x87, 0x14, 0xa3, 0x0f, - 0xb9, 0x96, 0x02, 0xb9, 0x14, 0xd5, 0x8c, 0x41, 0xd2, 0x61, 0xe9, 0xe8, 0xe3, 0x95, 0x52, 0x49, - 0x87, 0xc4, 0xa3, 0x87, 0x76, 0x1f, 0xcc, 0x05, 0x34, 0xa4, 0x8f, 0x74, 0x3e, 0x05, 0x69, 0x76, - 0xa0, 0x22, 0x3d, 0x94, 0x3b, 0x60, 0x5a, 0x48, 0x44, 0x1f, 0x60, 0x3d, 0x2d, 0x93, 0x2c, 0xea, - 0x06, 0x96, 0x84, 0x38, 0x55, 0xe9, 0x43, 0x5d, 0x48, 0x5b, 0x12, 0x86, 0x75, 0xe5, 0x40, 0x35, - 0x2d, 0x06, 0x65, 0xa5, 0xa6, 0x9b, 0x6d, 0xec, 0x20, 0xba, 0xdf, 0xe1, 0x47, 0x98, 0xc9, 0xfa, - 0x42, 0xb0, 0xb4, 0xea, 0x15, 0xca, 0xcb, 0x60, 0xa2, 0x69, 0x11, 0x0d, 0x59, 0x2d, 0xcc, 0x0f, - 0x2b, 0x93, 0xf5, 0xf1, 0xa6, 0x45, 0xb6, 0xac, 0x16, 0x66, 0x45, 0x3d, 0x64, 0x6b, 0xb4, 0x6f, - 0x43, 0x7e, 0x0e, 0x99, 0xac, 0x8f, 0xf7, 0x90, 0xcd, 0xb5, 0x9d, 0x02, 0xc6, 0x9b, 0xb8, 0xa3, - 0x23, 0x8b, 0x28, 0x97, 0xd6, 0xc7, 0xb8, 0x91, 0xf8, 0x29, 0xdf, 0x00, 0x4b, 0x5c, 0xf5, 0x99, - 0x88, 0x50, 0x68, 0x69, 0x36, 0x76, 0xa8, 0x66, 0xf0, 0xfb, 0x2d, 0x7e, 0x70, 0x98, 0xac, 0xcf, - 0xb3, 0xe2, 0x6d, 0x5e, 0xba, 0x83, 0x1d, 0x2a, 0xee, 0xbe, 0xe4, 0xa7, 0x60, 0x35, 0x4e, 0x1c, - 0xfb, 0x83, 0x72, 0x39, 0x6d, 0x0a, 0xc7, 0xc8, 0xe3, 0xc0, 0xb4, 0x1b, 0xa8, 0x64, 0x1f, 0xed, - 0x4a, 0xda, 0xb4, 0xf3, 0x75, 0xb2, 0x87, 0x71, 0x15, 0xc8, 0xcc, 0x98, 0x40, 0xa3, 0xeb, 0x20, - 0xda, 0xd7, 0x4c, 0xd8, 0x83, 0x26, 0x3f, 0x46, 0x4c, 0xd6, 0x0b, 0xd4, 0x24, 0xbb, 0x6e, 0xc1, - 0x36, 0xfb, 0x2e, 0x5f, 0x00, 0xe7, 0x50, 0xd3, 0x84, 0x1a, 0x45, 0x1d, 0x88, 0xbb, 0xe2, 0xb0, - 0x90, 0xaf, 0x4f, 0xb1, 0x6f, 0x7b, 0xe2, 0x93, 0x7c, 0x13, 0x2c, 0x19, 0xd8, 0xb2, 0xdc, 0xd9, - 0x11, 0xaa, 0xfd, 0x3e, 0xaf, 0xbd, 0x30, 0x28, 0xde, 0x0a, 0xd8, 0x7d, 0x17, 0xcc, 0x1b, 0x6c, - 0xdf, 0x6e, 0x21, 0x43, 0x2c, 0x70, 0xee, 0xdd, 0xe8, 0x55, 0xde, 0x95, 0xb9, 0x50, 0x99, 0xb8, - 0xe8, 0x94, 0x7f, 0x00, 0xd6, 0xc2, 0x26, 0xf0, 0x85, 0x8d, 0x1c, 0xf1, 0x67, 0x53, 0xa7, 0x30, - 0x51, 0xfa, 0xef, 0x79, 0xef, 0xa9, 0xea, 0x2b, 0x21, 0x80, 0x4d, 0xdf, 0xfe, 0xbe, 0x4e, 0xa1, - 0x6c, 0x80, 0x69, 0xb6, 0x9d, 0xbb, 0xd3, 0xc9, 0x81, 0x2d, 0xa5, 0x3c, 0xf2, 0x5d, 0xf0, 0xf2, - 0xab, 0x97, 0xe7, 0x82, 0x4f, 0xa9, 0xfc, 0x0b, 0x70, 0x89, 0x27, 0x6e, 0xc4, 0x94, 0xab, 0xc3, - 0x16, 0xd3, 0x0c, 0xa1, 0xf3, 0x8a, 0xef, 0xc7, 0x4a, 0x9a, 0x66, 0x08, 0x9e, 0x58, 0x5c, 0x57, - 0x3e, 0x3a, 0x3d, 0x51, 0x28, 0xcc, 0xaa, 0x7f, 0x79, 0x06, 0xac, 0x25, 0x66, 0x6f, 0x79, 0x7c, - 0xaf, 0x04, 0xf3, 0xb6, 0x22, 0x4f, 0x3e, 0xc8, 0xcd, 0x16, 0x44, 0x6e, 0x56, 0x64, 0xc3, 0x79, - 0xfe, 0xf5, 0xd2, 0x50, 0xfe, 0xd5, 0x4d, 0x7d, 0x87, 0x73, 0xac, 0x97, 0x86, 0x72, 0xac, 0x22, - 0xe7, 0x1d, 0xc9, 0xa3, 0x5e, 0x1e, 0xce, 0xa3, 0x8a, 0x44, 0x77, 0x34, 0x57, 0x5a, 0x8e, 0xcf, - 0x95, 0x8a, 0x2b, 0xba, 0x98, 0x7c, 0x68, 0x5a, 0x6e, 0x7f, 0xfc, 0x88, 0xb9, 0xfd, 0x89, 0xb8, - 0xdc, 0xfe, 0x3b, 0xd1, 0xbc, 0xe6, 0x24, 0xaf, 0x15, 0xce, 0x5d, 0xde, 0x4a, 0xc9, 0x5d, 0x02, - 0xd1, 0x8b, 0x84, 0xfc, 0x64, 0xe2, 0xd5, 0xc1, 0xd4, 0xd1, 0xaf, 0x0e, 0xce, 0x25, 0x5e, 0x1d, - 0x7c, 0x06, 0xa6, 0x99, 0xab, 0x03, 0x77, 0x07, 0xd3, 0x3c, 0xa4, 0xaf, 0x27, 0xde, 0x1d, 0x24, - 0x1f, 0x82, 0xeb, 0x79, 0x01, 0xe5, 0xde, 0x1e, 0xb0, 0x01, 0x0a, 0x9f, 0xbc, 0x67, 0xc4, 0x00, - 0x45, 0x4e, 0xd7, 0xf9, 0xc2, 0xb4, 0xfa, 0x2a, 0x07, 0x56, 0xaa, 0xb6, 0x6d, 0xba, 0xf3, 0x2e, - 0x7a, 0xd5, 0x9c, 0x71, 0x89, 0x7f, 0x00, 0x96, 0xc5, 0x32, 0x8c, 0xf5, 0xa6, 0xe6, 0xaf, 0xa6, - 0x2d, 0x7e, 0x33, 0xe1, 0x9e, 0xa8, 0xbf, 0x37, 0x32, 0x9f, 0x98, 0x9b, 0x8d, 0xfa, 0x22, 0x5f, - 0xc6, 0xb1, 0xde, 0xbc, 0xeb, 0x56, 0x12, 0x65, 0x32, 0x05, 0x0a, 0x35, 0x12, 0xda, 0x15, 0xe7, - 0xf0, 0x3b, 0xa3, 0xde, 0xc1, 0xc4, 0x35, 0xbb, 0x40, 0x8d, 0x98, 0x56, 0xd5, 0xb7, 0x39, 0xb0, - 0x1a, 0x3f, 0x58, 0xee, 0xc5, 0xfb, 0x45, 0x90, 0x0f, 0xee, 0x2b, 0xde, 0xb5, 0x7b, 0xf8, 0x23, - 0x5b, 0xbb, 0xdd, 0xad, 0xd9, 0xc6, 0xd8, 0xf4, 0x2e, 0xdf, 0xa7, 0xc4, 0xb7, 0x1d, 0xf6, 0x89, - 0x85, 0x93, 0x1b, 0xf3, 0xc4, 0x77, 0xa3, 0x9b, 0x62, 0xc8, 0xd7, 0x65, 0xaf, 0xe8, 0xbe, 0x5f, - 0x22, 0x43, 0x20, 0xfb, 0x9e, 0x18, 0x34, 0x2f, 0xd2, 0x08, 0x37, 0x8f, 0xee, 0x02, 0x3e, 0x0a, - 0xb3, 0xde, 0xe0, 0x0f, 0xba, 0xde, 0x00, 0xb3, 0xde, 0xb8, 0x0f, 0x5a, 0x11, 0xf9, 0x85, 0x1b, - 0x47, 0x1e, 0x70, 0xde, 0x48, 0xc1, 0x1d, 0x6a, 0x1f, 0x4e, 0xfd, 0xd3, 0x1c, 0x28, 0x55, 0x4d, - 0x33, 0x2d, 0x2a, 0xff, 0x9f, 0xc5, 0xdd, 0xb3, 0xe1, 0x6b, 0xc0, 0x67, 0x7a, 0x4b, 0x14, 0x06, - 0x52, 0x61, 0xe9, 0x73, 0xd5, 0x3b, 0x79, 0xe7, 0x06, 0x27, 0x6f, 0xf5, 0x2f, 0x24, 0x70, 0x25, - 0x61, 0xa8, 0x83, 0x0d, 0x88, 0xe0, 0x7e, 0x1e, 0x1b, 0x62, 0xe2, 0xbd, 0xce, 0xe8, 0xa3, 0x1d, - 0xd3, 0xf1, 0x98, 0x40, 0x53, 0xff, 0x57, 0x02, 0x97, 0xb3, 0x7b, 0x26, 0xa2, 0xe1, 0x26, 0x58, - 0x1c, 0x1c, 0xf4, 0x09, 0x6a, 0x5b, 0x3a, 0xed, 0x3a, 0x50, 0x43, 0x22, 0xa9, 0x97, 0x7f, 0x78, - 0xaa, 0x3e, 0xef, 0x97, 0xef, 0x7a, 0xc5, 0x5b, 0x4d, 0xd9, 0x06, 0xca, 0xc0, 0xae, 0x87, 0xb0, - 0x29, 0x04, 0x0b, 0x57, 0xa2, 0x63, 0xfc, 0x6d, 0xd5, 0x07, 0xd1, 0x87, 0x60, 0x01, 0x1d, 0x51, - 0xae, 0xda, 0xf6, 0x03, 0xf7, 0xef, 0xa7, 0x9e, 0x31, 0xa3, 0xf3, 0xf0, 0x54, 0x7d, 0xd0, 0x9f, - 0x50, 0xc9, 0xdd, 0x8b, 0x60, 0x96, 0xe9, 0x18, 0x11, 0x30, 0xae, 0x60, 0x95, 0x67, 0xbe, 0x7a, - 0x2d, 0xe5, 0xbe, 0x79, 0x2d, 0x49, 0x87, 0xaf, 0xa5, 0xb1, 0x6b, 0x57, 0xaf, 0xf3, 0xbc, 0x67, - 0xee, 0xda, 0xcf, 0xd7, 0x80, 0xfc, 0xd8, 0x1b, 0xc6, 0x7b, 0xfc, 0x0d, 0x7c, 0x75, 0x67, 0x4b, - 0x7e, 0x23, 0x81, 0xfc, 0x3d, 0x9d, 0x18, 0x3a, 0xdb, 0x70, 0x4d, 0x48, 0xa1, 0xbc, 0x91, 0x38, - 0xf6, 0xa1, 0x7a, 0xee, 0x68, 0x15, 0xcb, 0xa3, 0x56, 0x77, 0x5f, 0xfa, 0x7d, 0x7e, 0xf8, 0xb5, - 0x72, 0xbb, 0x75, 0xe3, 0x85, 0xb1, 0x61, 0x60, 0x8b, 0x60, 0x13, 0x6e, 0x34, 0x74, 0x02, 0x37, - 0xf4, 0x66, 0x07, 0x59, 0x57, 0xd7, 0x79, 0x01, 0xfb, 0x70, 0x75, 0xbd, 0x07, 0xc9, 0x06, 0xc2, - 0x1b, 0x5d, 0xbd, 0x23, 0x0a, 0x37, 0x0e, 0x1c, 0x44, 0xe1, 0x17, 0xff, 0xf4, 0xab, 0x3f, 0xcf, - 0x6d, 0xa8, 0x57, 0xdc, 0xd7, 0xfc, 0x83, 0xd7, 0xea, 0xa4, 0xf2, 0x23, 0xf6, 0xf7, 0xcb, 0x8a, - 0x21, 0x9a, 0xd5, 0x9a, 0xbc, 0xdd, 0xdb, 0xd2, 0x7b, 0xf2, 0x7f, 0x4b, 0x60, 0x35, 0xed, 0x2d, - 0x9a, 0x7c, 0x2b, 0x91, 0x43, 0xc6, 0x73, 0xbb, 0xe2, 0x47, 0xc7, 0xb4, 0x24, 0xb6, 0xda, 0x3c, - 0xfc, 0x5a, 0x59, 0x71, 0x49, 0x22, 0xab, 0xe5, 0xe8, 0x84, 0x3a, 0x5d, 0x83, 0xc5, 0x52, 0x80, - 0xe9, 0xc7, 0xea, 0xed, 0x18, 0xa6, 0xa4, 0x4f, 0x28, 0xec, 0x54, 0xba, 0xbc, 0x09, 0x2d, 0xf1, - 0x45, 0x1f, 0xe3, 0xfe, 0x3f, 0x12, 0x28, 0x26, 0xbf, 0x29, 0x97, 0x6f, 0x27, 0xf6, 0x3f, 0xf3, - 0xbd, 0x7c, 0xf1, 0xce, 0xb1, 0x6c, 0xdd, 0x30, 0x38, 0x01, 0xfb, 0x1f, 0xf9, 0x7f, 0xbf, 0xac, - 0xf8, 0xef, 0xd3, 0xb5, 0x16, 0x76, 0x34, 0xe4, 0xb6, 0xa4, 0xf5, 0x90, 0x4d, 0x3c, 0xf6, 0xb5, - 0xe3, 0xb0, 0xaf, 0x9d, 0x80, 0x7d, 0x6d, 0x04, 0xf6, 0x3f, 0xfb, 0xbb, 0x9c, 0x74, 0xf8, 0xb5, - 0x52, 0x8c, 0x1f, 0x01, 0x07, 0xea, 0x4d, 0x3e, 0x00, 0xdf, 0x93, 0x4f, 0x30, 0x00, 0xf2, 0x7f, - 0x49, 0x40, 0x49, 0x7a, 0xb9, 0x9e, 0x12, 0xf3, 0x19, 0x8f, 0xf4, 0x53, 0x62, 0x3e, 0xf3, 0x99, - 0xfc, 0x0f, 0x03, 0x5e, 0xb7, 0x1d, 0xfc, 0xa2, 0xbf, 0xe1, 0x9d, 0x4f, 0x03, 0x5e, 0xbf, 0xa3, - 0xde, 0xcc, 0x20, 0xad, 0xf3, 0x46, 0xb4, 0xe8, 0x5b, 0x78, 0xe6, 0x71, 0xc6, 0xb9, 0x76, 0x74, - 0xce, 0xb5, 0x63, 0x73, 0xae, 0x65, 0x72, 0x8e, 0xf8, 0x3a, 0xc2, 0xdb, 0xf7, 0xf5, 0x2d, 0xf9, - 0x98, 0xb4, 0xe5, 0x5f, 0x07, 0xfd, 0x1c, 0x79, 0x96, 0x3e, 0x8a, 0x9f, 0xe3, 0xdf, 0xc2, 0x8f, - 0xe2, 0xe7, 0xa4, 0x97, 0xf6, 0xdf, 0x3f, 0xfc, 0x5a, 0x99, 0x77, 0xf9, 0xba, 0x6f, 0x46, 0x8f, - 0xe3, 0xe0, 0xe8, 0x3b, 0x7a, 0xe6, 0xe0, 0x5f, 0x07, 0x1d, 0x3c, 0x3a, 0xd9, 0xda, 0xb1, 0xc9, - 0xd6, 0x32, 0xc9, 0xba, 0x0e, 0x9e, 0x8b, 0x10, 0x3e, 0xba, 0x67, 0xa3, 0x7c, 0xe5, 0x43, 0x09, - 0x2c, 0xc6, 0xbf, 0x9c, 0x97, 0x6f, 0x66, 0x7b, 0x27, 0xee, 0x21, 0x7d, 0xf1, 0xc3, 0x23, 0xdb, - 0xb9, 0x34, 0x9f, 0x05, 0x7c, 0xda, 0x86, 0x16, 0x74, 0x74, 0x33, 0xe0, 0xd3, 0x8f, 0xd4, 0x0f, - 0x46, 0xe3, 0x18, 0x7e, 0x28, 0xcf, 0x3c, 0xca, 0x48, 0xd6, 0x8e, 0x4a, 0xb2, 0x76, 0x4c, 0x92, - 0xb5, 0x0c, 0x92, 0x11, 0x5f, 0x7a, 0x44, 0x7d, 0x5f, 0xde, 0x94, 0x8f, 0xc5, 0x53, 0x7e, 0x2d, - 0x81, 0xfc, 0x6e, 0xb7, 0xdd, 0x86, 0x84, 0xf2, 0xbb, 0x69, 0x22, 0x7f, 0x27, 0xd9, 0x11, 0xc1, - 0x7a, 0x4c, 0x65, 0xbc, 0x37, 0x6a, 0x55, 0x62, 0xab, 0xbb, 0x59, 0x0c, 0xae, 0xa9, 0x1b, 0x19, - 0x0c, 0x88, 0x00, 0xdd, 0xe0, 0x0f, 0xd1, 0xb9, 0x8b, 0x7e, 0x2a, 0x81, 0x7c, 0xe8, 0x25, 0x7a, - 0x4a, 0xef, 0xa3, 0x2f, 0xea, 0x53, 0x14, 0x62, 0xec, 0xe3, 0x76, 0xf5, 0x71, 0x16, 0x83, 0x78, - 0xf9, 0xe7, 0x8a, 0x22, 0xef, 0x3f, 0x0c, 0x35, 0x87, 0x81, 0xb2, 0xce, 0xff, 0xb3, 0x04, 0xe6, - 0x62, 0x9e, 0xb7, 0xcb, 0xc9, 0xa9, 0x91, 0xe4, 0xb7, 0xf2, 0xc5, 0x0f, 0x8e, 0x66, 0xe4, 0x52, - 0xda, 0xcb, 0xa2, 0x74, 0x5d, 0x2d, 0x27, 0x53, 0xb2, 0x7c, 0x64, 0x0d, 0x79, 0xd0, 0x8c, 0xd8, - 0xbf, 0x4a, 0x60, 0x3e, 0xee, 0x44, 0x23, 0x27, 0x77, 0x32, 0xe5, 0x14, 0x5c, 0xbc, 0x71, 0x44, - 0x2b, 0x97, 0xdb, 0x67, 0x59, 0xdc, 0x46, 0x58, 0x1a, 0x06, 0xf8, 0x61, 0x86, 0xbf, 0x92, 0xc0, - 0x52, 0xc2, 0xb1, 0x4d, 0x4e, 0x9e, 0xe3, 0xe9, 0xa7, 0xfd, 0xe3, 0xf2, 0xfc, 0x7e, 0x16, 0xcf, - 0x5b, 0xea, 0xf5, 0x64, 0x1f, 0xea, 0xa6, 0xa9, 0x25, 0xd2, 0xfc, 0x93, 0x1c, 0x28, 0x26, 0x9f, - 0x4e, 0xe5, 0xdf, 0x3e, 0x2a, 0xd3, 0xe8, 0x91, 0xb6, 0x58, 0x3d, 0x01, 0x82, 0x4b, 0x1f, 0x66, - 0xd1, 0xbf, 0xaf, 0x7e, 0x7c, 0x0c, 0xfa, 0xda, 0xe0, 0x00, 0xcb, 0x26, 0x6b, 0xf1, 0xea, 0x57, - 0xaf, 0xa5, 0xb1, 0x9f, 0xbf, 0x96, 0x4a, 0x49, 0x1d, 0x16, 0xd9, 0xf8, 0x2f, 0xfe, 0x51, 0xc9, - 0x15, 0xa4, 0xbb, 0x7f, 0x2c, 0x7d, 0xf3, 0xa6, 0x74, 0xea, 0x17, 0x6f, 0x4a, 0xa7, 0x7e, 0xf3, - 0xa6, 0x24, 0xfd, 0xf8, 0xb0, 0x24, 0xfd, 0xcd, 0x61, 0x49, 0xfa, 0xd9, 0x61, 0x49, 0xfa, 0xe6, - 0xb0, 0x24, 0xfd, 0xf2, 0xb0, 0x24, 0xfd, 0xdb, 0x61, 0xe9, 0xd4, 0x6f, 0x0e, 0x4b, 0xd2, 0x9f, - 0xbd, 0x2d, 0x9d, 0xfa, 0xea, 0x6d, 0x49, 0xfa, 0xe6, 0x6d, 0xe9, 0xd4, 0x2f, 0xde, 0x96, 0x4e, - 0x7d, 0xf6, 0x49, 0x1b, 0xdb, 0xcf, 0xdb, 0xe5, 0x1e, 0x66, 0x4d, 0x3b, 0x7a, 0xb9, 0x4b, 0x2a, - 0xfc, 0x8f, 0x16, 0x76, 0x3a, 0x4c, 0xa3, 0xf5, 0x50, 0x13, 0x3a, 0x1b, 0x5e, 0x71, 0xc5, 0x6e, - 0xb4, 0x71, 0x05, 0xbe, 0xa0, 0xee, 0xff, 0x18, 0x47, 0xff, 0x57, 0xba, 0x71, 0x96, 0xdf, 0x41, - 0x5c, 0xff, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x44, 0xef, 0xcb, 0x7e, 0x3e, 0x00, 0x00, + // 4111 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5c, 0x5d, 0x6c, 0x1c, 0x49, + 0x5e, 0x4f, 0x8f, 0xf3, 0x61, 0x97, 0x33, 0xf6, 0xb8, 0xfd, 0xd5, 0x1e, 0xdb, 0x13, 0xa7, 0x37, + 0xd9, 0xe4, 0x76, 0xe3, 0x19, 0x5d, 0xb2, 0xc9, 0x66, 0x93, 0x43, 0x8b, 0xf3, 0xe5, 0x38, 0xe7, + 0xdd, 0x98, 0xb1, 0x93, 0x45, 0x8b, 0xb8, 0xa6, 0xdc, 0x5d, 0x33, 0x6e, 0xd2, 0xd3, 0xd5, 0xdb, + 0x55, 0x3d, 0xce, 0xe8, 0x14, 0x69, 0x59, 0xb1, 0xe2, 0x01, 0xa4, 0x43, 0x0b, 0x88, 0x13, 0x27, + 0x21, 0x1d, 0x62, 0x11, 0x8a, 0x80, 0x17, 0xd0, 0x0a, 0x11, 0x90, 0xf6, 0x05, 0x71, 0x4f, 0x68, + 0x05, 0x2f, 0xf7, 0x84, 0x6e, 0x1d, 0x1e, 0x40, 0x3c, 0x70, 0xe2, 0x19, 0x09, 0x54, 0x55, 0xdd, + 0x3d, 0xdd, 0x3d, 0xfd, 0xe1, 0x8f, 0x20, 0x1e, 0xee, 0xcd, 0xd3, 0x55, 0xff, 0x5f, 0xfd, 0xbf, + 0xaa, 0xea, 0x57, 0xff, 0xea, 0x36, 0xb8, 0xd2, 0x45, 0xa4, 0x6e, 0xe2, 0x06, 0xd1, 0x77, 0x50, + 0x07, 0x36, 0x6c, 0xd8, 0x41, 0xc4, 0x81, 0x3a, 0x6a, 0x38, 0xde, 0xb6, 0x65, 0xea, 0x9a, 0xee, + 0x11, 0x8a, 0x3b, 0xd0, 0x31, 0x35, 0xf8, 0x04, 0xba, 0x75, 0xc7, 0xc5, 0x14, 0xcb, 0xb3, 0x42, + 0xa8, 0x2e, 0x84, 0xea, 0xa1, 0x50, 0x75, 0xb9, 0x6d, 0xd2, 0x1d, 0x6f, 0xbb, 0xae, 0xe3, 0x4e, + 0xa3, 0x8d, 0xdb, 0xb8, 0xc1, 0xfb, 0x6f, 0x7b, 0x2d, 0xfe, 0x8b, 0xff, 0xe0, 0x7f, 0x09, 0x9c, + 0xea, 0x42, 0x1b, 0xe3, 0xb6, 0x85, 0x1a, 0xd0, 0x31, 0x1b, 0xd0, 0xb6, 0x31, 0x85, 0xd4, 0xc4, + 0x36, 0xf1, 0x5b, 0xcf, 0xf8, 0xad, 0x21, 0x06, 0x35, 0x3b, 0x88, 0x50, 0xd8, 0x71, 0xfc, 0x0e, + 0xb5, 0x64, 0x87, 0x5d, 0x17, 0x3a, 0x0e, 0x72, 0x03, 0x80, 0x37, 0xe3, 0xb6, 0x41, 0x0b, 0xb9, + 0x54, 0x73, 0xb0, 0x65, 0xea, 0x3d, 0x8d, 0x20, 0xda, 0xc0, 0xdb, 0xbf, 0x8a, 0x74, 0xea, 0x77, + 0x7e, 0x3d, 0xd1, 0xd9, 0x71, 0xb4, 0x96, 0xe9, 0xa2, 0x5d, 0x68, 0x59, 0x0d, 0xda, 0x73, 0x50, + 0x00, 0xfa, 0x5a, 0x96, 0xc3, 0xa2, 0x9d, 0xe6, 0xe3, 0x9d, 0xb0, 0x13, 0xb5, 0x6b, 0x2e, 0xde, + 0x18, 0x95, 0x5b, 0x88, 0x37, 0x75, 0xa1, 0x65, 0x1a, 0x90, 0x22, 0xbf, 0x55, 0x4d, 0xb4, 0x22, + 0x82, 0xec, 0x6e, 0x02, 0x7c, 0x29, 0xd1, 0xc7, 0x44, 0xbb, 0x5a, 0xbc, 0xc7, 0x99, 0xc1, 0x1e, + 0x24, 0xaa, 0x84, 0xfa, 0xb9, 0x04, 0xce, 0x6e, 0x22, 0x7a, 0x0f, 0x12, 0xba, 0x72, 0x7b, 0x9d, + 0xdc, 0xc3, 0xee, 0x9a, 0x4d, 0x91, 0x6b, 0x23, 0xfa, 0x78, 0x6d, 0x83, 0x34, 0xd1, 0x47, 0x1e, + 0x22, 0x54, 0x5e, 0x00, 0x23, 0xa1, 0xed, 0x8a, 0xb4, 0x24, 0x5d, 0x1c, 0x69, 0xf6, 0x1f, 0xc8, + 0xdb, 0x60, 0xa4, 0x05, 0x09, 0xd5, 0xa0, 0x6e, 0x11, 0xa5, 0xb4, 0x34, 0x74, 0x71, 0xf4, 0xb2, + 0x5a, 0x8f, 0x67, 0x0d, 0x1f, 0xb8, 0xfe, 0x90, 0xc7, 0xa0, 0x89, 0x5a, 0x5b, 0x3d, 0x07, 0xdd, + 0x3a, 0xfb, 0xfc, 0xd9, 0x70, 0x20, 0xf7, 0x37, 0xff, 0xfe, 0xe5, 0xd0, 0xc9, 0xcf, 0xa4, 0xa1, + 0xca, 0xc7, 0xd2, 0xde, 0x4f, 0xfe, 0x7e, 0xe8, 0xe4, 0x67, 0x7f, 0x2b, 0x95, 0x2a, 0x52, 0x93, + 0xb7, 0xaf, 0xe8, 0x16, 0x51, 0xcf, 0x01, 0x35, 0x4f, 0x4d, 0xe2, 0x60, 0x9b, 0x20, 0x75, 0x05, + 0x9c, 0x5d, 0x3d, 0x9a, 0x31, 0xaa, 0x0b, 0xd4, 0xd5, 0xc2, 0x81, 0xe4, 0xf5, 0xa8, 0xc9, 0xd2, + 0xbe, 0x4d, 0x1e, 0x8d, 0x98, 0x1c, 0x31, 0xee, 0x0b, 0x09, 0x9c, 0xd9, 0x44, 0x74, 0x45, 0xa7, + 0x66, 0x17, 0x6d, 0x22, 0xb7, 0x6b, 0xea, 0x68, 0x83, 0xa5, 0xae, 0x89, 0xf6, 0x19, 0x02, 0x0f, + 0x54, 0x88, 0x90, 0x13, 0x39, 0x6f, 0xa2, 0x83, 0x44, 0xe2, 0xf5, 0xe7, 0xcf, 0xc6, 0x62, 0xe2, + 0x3d, 0x16, 0x8f, 0x13, 0x9f, 0x49, 0xa5, 0xca, 0x52, 0x34, 0x1c, 0xe3, 0x24, 0xae, 0x9b, 0xaa, + 0x82, 0xa5, 0x6c, 0xbd, 0xfd, 0x98, 0xbc, 0x0b, 0xce, 0xac, 0x1e, 0xc5, 0x36, 0xf5, 0xd7, 0x25, + 0xb0, 0xb4, 0x5a, 0x30, 0x8a, 0xfc, 0x2b, 0x47, 0x72, 0xc0, 0xc4, 0x80, 0x03, 0x06, 0x6d, 0x8d, + 0x05, 0xe9, 0x7d, 0x44, 0x77, 0xb1, 0xfb, 0xe4, 0xc0, 0x41, 0xb2, 0x85, 0xdc, 0x61, 0x83, 0x14, + 0x13, 0xcf, 0x0a, 0x92, 0x1d, 0xd7, 0x2d, 0x16, 0xa4, 0x01, 0xbd, 0x53, 0x82, 0x74, 0x18, 0xdb, + 0xe2, 0x41, 0xca, 0x18, 0x85, 0x05, 0xe9, 0x08, 0x0e, 0x98, 0x18, 0x70, 0xc0, 0xa0, 0xad, 0x7f, + 0x21, 0x81, 0xc5, 0xd0, 0xd8, 0x15, 0xb6, 0x07, 0x1c, 0x2c, 0x44, 0x18, 0x8c, 0x45, 0x76, 0x8e, + 0x83, 0xe9, 0x77, 0xee, 0xf9, 0xb3, 0xd3, 0xd1, 0x6d, 0x27, 0x3d, 0x3c, 0x65, 0x18, 0xd5, 0x4a, + 0x5d, 0x02, 0xb5, 0x2c, 0x7d, 0xfd, 0xd0, 0xfc, 0x1c, 0x58, 0x5c, 0x3d, 0xbc, 0x45, 0xea, 0x4b, + 0x09, 0xd4, 0x56, 0x73, 0x47, 0x90, 0x3f, 0x3c, 0x82, 0xd1, 0xe3, 0x09, 0xa3, 0x13, 0xf6, 0xc9, + 0x08, 0x4c, 0xc7, 0xb1, 0x35, 0x42, 0x21, 0xf5, 0x88, 0x32, 0xc4, 0x87, 0xf8, 0x66, 0x62, 0x88, + 0xe4, 0xb6, 0x5d, 0xef, 0x6b, 0xdc, 0xdb, 0xe4, 0x82, 0xcd, 0xc9, 0xd8, 0x00, 0xe2, 0xa1, 0xfa, + 0x5c, 0x02, 0x67, 0x1e, 0x39, 0x6c, 0xfb, 0x5c, 0xb1, 0x2c, 0xbc, 0xbb, 0x62, 0x74, 0x91, 0x4b, + 0x4d, 0x82, 0x1e, 0xda, 0x1b, 0x9c, 0xda, 0x34, 0xd1, 0x47, 0x05, 0x91, 0x37, 0xc1, 0x1c, 0x64, + 0xa2, 0x1a, 0x0c, 0x64, 0x35, 0x6c, 0x6b, 0x82, 0x18, 0x29, 0xa5, 0x25, 0xe9, 0xe2, 0xd8, 0xe5, + 0x7a, 0x3d, 0x83, 0x0a, 0xd5, 0xc5, 0x20, 0xe1, 0xa8, 0xb7, 0x77, 0xb0, 0xa9, 0xa3, 0xe6, 0x0c, + 0x4c, 0xd5, 0x45, 0xbd, 0x01, 0x96, 0xf2, 0x75, 0x25, 0x8e, 0x3c, 0x03, 0x4e, 0xba, 0x88, 0x78, + 0x16, 0xe5, 0x9a, 0x0e, 0x37, 0xfd, 0x5f, 0xea, 0xa7, 0x25, 0x50, 0x79, 0xec, 0x33, 0x85, 0xa6, + 0x67, 0xf1, 0x2c, 0x28, 0x5c, 0x76, 0xa6, 0x7c, 0x6e, 0x81, 0x5d, 0x0d, 0x75, 0xa1, 0xe5, 0x71, + 0xe6, 0xe5, 0x07, 0xf9, 0x56, 0xa6, 0x51, 0xc9, 0x61, 0x82, 0x07, 0xd8, 0xbd, 0x1b, 0x82, 0xdc, + 0xb5, 0xa9, 0xdb, 0x6b, 0x4e, 0x76, 0x07, 0x5b, 0xe4, 0x29, 0x70, 0x82, 0xfd, 0x40, 0xca, 0x10, + 0x57, 0x48, 0xfc, 0xa8, 0xde, 0x03, 0x4a, 0x16, 0x8c, 0x5c, 0x01, 0x43, 0x4f, 0x50, 0xcf, 0x37, + 0x80, 0xfd, 0xd9, 0xc7, 0x28, 0x45, 0x30, 0x6e, 0x94, 0xae, 0x4b, 0xea, 0x2a, 0x98, 0x4e, 0xe8, + 0xe7, 0x27, 0xb3, 0x02, 0x4e, 0x11, 0x4f, 0xd7, 0x11, 0x21, 0xbe, 0xe7, 0x82, 0x9f, 0x0c, 0x0c, + 0xb9, 0x2e, 0x76, 0x03, 0x30, 0xfe, 0x43, 0x5d, 0x00, 0x55, 0x7f, 0xb9, 0x32, 0xed, 0xf6, 0x9a, + 0xdd, 0x45, 0x36, 0xc5, 0x6e, 0xcf, 0x9f, 0x5b, 0xea, 0x7f, 0x4a, 0x60, 0x3e, 0xb5, 0xd9, 0x1f, + 0xed, 0x02, 0x18, 0x6f, 0x5b, 0x78, 0x1b, 0x5a, 0x9a, 0xbf, 0x12, 0x89, 0x51, 0xcb, 0xcd, 0x31, + 0xf1, 0xd8, 0x97, 0xe5, 0x83, 0x13, 0x93, 0xf2, 0xa9, 0xc5, 0x9a, 0xc5, 0x0f, 0xf9, 0x22, 0xa8, + 0xb0, 0x3f, 0xb4, 0x0e, 0x22, 0x3b, 0x5a, 0xdb, 0xc5, 0x9e, 0x43, 0xb8, 0xbb, 0xca, 0xcd, 0x31, + 0xf6, 0xfc, 0x3d, 0x44, 0x76, 0x56, 0xf9, 0x53, 0xf9, 0x0d, 0x30, 0x61, 0xe8, 0x9a, 0x6e, 0x79, + 0x84, 0x22, 0x37, 0xe8, 0x7a, 0x9c, 0x77, 0x1d, 0x37, 0xf4, 0xdb, 0xe2, 0xb9, 0xdf, 0xf7, 0x0c, + 0x18, 0xd5, 0x2d, 0xec, 0x19, 0x9a, 0x65, 0xda, 0x4f, 0x88, 0x72, 0x82, 0xf7, 0x02, 0xfc, 0xd1, + 0x3a, 0x7b, 0x22, 0x57, 0xc1, 0x30, 0x41, 0xed, 0x0e, 0xb2, 0x29, 0x51, 0x4e, 0xf2, 0xd6, 0xf0, + 0xb7, 0xfa, 0x2f, 0x43, 0x60, 0x6e, 0xeb, 0xf6, 0xc6, 0x3a, 0x86, 0xc6, 0x36, 0xb4, 0xa0, 0xad, + 0x23, 0xb7, 0xc9, 0x53, 0x8f, 0x4d, 0x77, 0xf9, 0x26, 0x18, 0xa3, 0x16, 0xd1, 0x90, 0xad, 0xbb, + 0x3d, 0x4e, 0x34, 0xb9, 0xb9, 0xa3, 0x97, 0xa7, 0x12, 0x59, 0x74, 0xb7, 0xe3, 0xd0, 0x5e, 0xb3, + 0x4c, 0x2d, 0x72, 0x37, 0xec, 0x2a, 0xbf, 0x0f, 0x94, 0x30, 0xbb, 0xb4, 0xf8, 0x76, 0xcb, 0xdd, + 0x92, 0x05, 0x33, 0x13, 0x4a, 0x45, 0x77, 0xff, 0x1e, 0x53, 0x26, 0x81, 0x32, 0x94, 0xa7, 0x0c, + 0x89, 0x09, 0xaf, 0x81, 0x69, 0xc7, 0x35, 0xbb, 0x90, 0xa2, 0xfe, 0x8c, 0x67, 0x1e, 0xe0, 0x4e, + 0xcd, 0xc2, 0x98, 0xf2, 0x45, 0x56, 0xa2, 0x12, 0xf2, 0x5d, 0x30, 0xe9, 0x1f, 0xa0, 0x02, 0x24, + 0x0e, 0x74, 0x22, 0x07, 0x48, 0x76, 0x62, 0x2b, 0x06, 0x87, 0x91, 0xc1, 0x71, 0x66, 0x28, 0x8f, + 0xc8, 0x48, 0x93, 0xff, 0x2d, 0x5f, 0x01, 0xc0, 0x65, 0x2a, 0x5a, 0x66, 0xc7, 0xa4, 0xca, 0xa9, + 0x1c, 0xc4, 0x11, 0xd6, 0x6f, 0x9d, 0x75, 0x8b, 0x2f, 0x07, 0xc3, 0xc9, 0x0d, 0xe1, 0x8f, 0x87, + 0x80, 0x9a, 0x08, 0x70, 0x98, 0xd7, 0xf7, 0x4c, 0x8b, 0x22, 0x97, 0x47, 0x7a, 0x65, 0x20, 0xd2, + 0x62, 0xf4, 0x6a, 0x5d, 0x1c, 0xc4, 0xea, 0xc1, 0x41, 0xac, 0x7e, 0x0b, 0x63, 0xeb, 0x31, 0x9b, + 0x98, 0xc9, 0x78, 0x6f, 0xe5, 0xc4, 0x7b, 0xb8, 0x10, 0x2c, 0x2b, 0xea, 0x2b, 0x03, 0x51, 0x1f, + 0x29, 0x56, 0x2c, 0x1e, 0xfb, 0x87, 0x59, 0xb1, 0x07, 0x85, 0x48, 0xe9, 0x19, 0xf0, 0xed, 0xf4, + 0x0c, 0x18, 0x2d, 0x84, 0x4b, 0xc9, 0x83, 0x07, 0xc7, 0x87, 0xa5, 0xca, 0x29, 0xf5, 0x3f, 0x4a, + 0x60, 0x21, 0x2b, 0x4c, 0x3c, 0x40, 0xe7, 0x53, 0xa7, 0x62, 0x39, 0x19, 0x84, 0xeb, 0x05, 0x93, + 0xae, 0x9c, 0xe9, 0xe8, 0xf3, 0xa9, 0xd3, 0xab, 0x9c, 0x74, 0xe6, 0x95, 0xbc, 0x89, 0x54, 0xce, + 0x70, 0x58, 0x23, 0x7b, 0xca, 0x94, 0x53, 0x27, 0xc7, 0x07, 0xa0, 0x4c, 0x75, 0xc7, 0xda, 0xd6, + 0xc4, 0x3e, 0x48, 0x94, 0x53, 0x7c, 0xf7, 0xba, 0x9c, 0xb9, 0x7b, 0x65, 0xae, 0x61, 0xcd, 0xd3, + 0x1c, 0x48, 0x3c, 0x20, 0x0f, 0x8e, 0x0f, 0x9f, 0xac, 0x9c, 0x52, 0x3f, 0x91, 0xc1, 0x6b, 0xf7, + 0xb7, 0xb6, 0x0a, 0x67, 0xc5, 0xdb, 0x60, 0x64, 0x87, 0x52, 0x47, 0xc3, 0xb6, 0xd5, 0x53, 0xc6, + 0x0a, 0xc3, 0x3b, 0xcc, 0x3a, 0x3f, 0xb4, 0xad, 0x9e, 0x7c, 0x09, 0x0c, 0xed, 0xc2, 0x96, 0x32, + 0x5e, 0x28, 0xc2, 0xba, 0xb1, 0x1c, 0xdf, 0xc6, 0x54, 0x63, 0xcd, 0x48, 0xe7, 0xb1, 0xad, 0x14, + 0xe7, 0xf8, 0x36, 0xa6, 0x1b, 0xa1, 0x00, 0x83, 0x80, 0x8e, 0x19, 0x85, 0x98, 0x28, 0x86, 0x80, + 0x8e, 0x19, 0x81, 0x78, 0x00, 0x26, 0x75, 0xcb, 0x44, 0x36, 0xd5, 0x88, 0x69, 0x20, 0xcd, 0x40, + 0x2d, 0x64, 0x13, 0xa4, 0x4c, 0x16, 0xe2, 0x4c, 0x08, 0xb1, 0x4d, 0xd3, 0x40, 0x77, 0x84, 0x50, + 0xee, 0x5a, 0x30, 0xf5, 0x0a, 0xd7, 0x82, 0xe9, 0x83, 0xae, 0x05, 0xef, 0x82, 0xb2, 0xe9, 0x68, + 0x2e, 0x72, 0x3c, 0x51, 0x90, 0x52, 0x66, 0x0a, 0x11, 0x4e, 0x9b, 0x4e, 0x33, 0xec, 0xcf, 0x2c, + 0xeb, 0x40, 0x46, 0x46, 0xb1, 0x47, 0x34, 0x8f, 0x20, 0x57, 0x33, 0x50, 0xe0, 0xf2, 0xd9, 0x62, + 0xcb, 0x42, 0xd9, 0x47, 0x04, 0xb9, 0x77, 0x02, 0xc9, 0xec, 0x25, 0x4a, 0x79, 0xb5, 0x4b, 0xd4, + 0xdc, 0x61, 0x96, 0x28, 0xe6, 0xb4, 0x5d, 0xd8, 0xd2, 0xd0, 0x53, 0x46, 0x48, 0x98, 0xa1, 0xd5, + 0x62, 0xa7, 0xed, 0xc2, 0xd6, 0xdd, 0xa0, 0xbf, 0x7c, 0x1b, 0x8c, 0x1b, 0x06, 0x26, 0xd1, 0xf4, + 0x94, 0x0b, 0x21, 0xc6, 0x98, 0x48, 0x24, 0x3f, 0xd7, 0xc1, 0x14, 0x07, 0x81, 0x1e, 0xc5, 0x5a, + 0xc7, 0xa4, 0x66, 0x5b, 0x44, 0x70, 0xbe, 0xd8, 0x26, 0x26, 0xb7, 0xe2, 0x51, 0xfc, 0x5e, 0x28, + 0x15, 0xaa, 0x14, 0x01, 0x5a, 0xd8, 0x9f, 0x4a, 0x11, 0x90, 0x75, 0x30, 0x45, 0xd8, 0x21, 0x22, + 0x89, 0xb4, 0x58, 0xac, 0x12, 0x93, 0xbb, 0x13, 0x47, 0x7b, 0x0c, 0xe6, 0x12, 0xa9, 0x15, 0x81, + 0xac, 0x15, 0x42, 0xce, 0xc6, 0x72, 0x2b, 0x82, 0xcb, 0xf6, 0x76, 0x97, 0x31, 0x46, 0x43, 0x13, + 0x33, 0x55, 0x39, 0xb3, 0x8f, 0xbd, 0x5d, 0x48, 0xdc, 0xe6, 0x02, 0xf2, 0x23, 0x30, 0x17, 0x87, + 0xd0, 0x4c, 0x47, 0xdb, 0x41, 0xd0, 0x40, 0x2e, 0x51, 0x96, 0x8a, 0xd3, 0x3e, 0x86, 0xb6, 0xe6, + 0xdc, 0x17, 0x92, 0xf2, 0xfb, 0x60, 0x9a, 0xad, 0x5a, 0x62, 0x35, 0xd7, 0xfc, 0x63, 0x05, 0xb3, + 0xf6, 0x6c, 0x21, 0xe4, 0x24, 0x74, 0xcc, 0x4d, 0x2e, 0xf7, 0x38, 0x14, 0x0b, 0x56, 0x41, 0x03, + 0xb5, 0x4c, 0xdb, 0xe4, 0x40, 0xea, 0xbe, 0x56, 0xc1, 0x3b, 0xa1, 0x80, 0xfc, 0x0e, 0x00, 0x06, + 0xa4, 0x50, 0x6b, 0x7b, 0xd0, 0x35, 0x94, 0xd7, 0x0a, 0xc5, 0x47, 0x58, 0xef, 0x55, 0xd6, 0x99, + 0xa5, 0x94, 0x4e, 0xdc, 0x56, 0x34, 0xcb, 0xcf, 0x15, 0xa7, 0x14, 0x13, 0x89, 0xaf, 0xc2, 0x6d, + 0x17, 0x3a, 0x3b, 0xda, 0x47, 0x96, 0x66, 0xda, 0xc4, 0xf1, 0x81, 0xce, 0x17, 0xaf, 0xc2, 0x5c, + 0xec, 0x17, 0xac, 0xb5, 0x50, 0x48, 0x5e, 0x05, 0x13, 0x3a, 0xc6, 0x4f, 0x4c, 0x14, 0x55, 0xe9, + 0xf5, 0x42, 0xa4, 0x8a, 0x10, 0x8a, 0x28, 0xc5, 0x2c, 0x13, 0x61, 0xdf, 0xb6, 0xb0, 0xce, 0xce, + 0x46, 0xca, 0x85, 0x7d, 0x58, 0xc6, 0x45, 0x6e, 0xf9, 0x12, 0xf2, 0x4d, 0x30, 0xaa, 0x63, 0x97, + 0x04, 0x4b, 0xf7, 0xc5, 0x42, 0x00, 0xc0, 0xba, 0xfb, 0xeb, 0xf6, 0x65, 0x70, 0xd2, 0xc5, 0x1e, + 0x3b, 0x51, 0x7d, 0xa3, 0x50, 0xce, 0xef, 0xc9, 0x66, 0x27, 0x76, 0xcd, 0xb6, 0x69, 0xf3, 0x1d, + 0x08, 0xb9, 0x1a, 0xf1, 0xb6, 0x09, 0xa2, 0xca, 0x1b, 0xc5, 0xb3, 0x53, 0xc8, 0x6d, 0x72, 0xb1, + 0x4d, 0x2e, 0x25, 0xbf, 0x07, 0xa6, 0x0c, 0xd4, 0x82, 0x9e, 0x45, 0x35, 0x2b, 0x42, 0x1b, 0x94, + 0x37, 0x8b, 0x53, 0xd5, 0x97, 0x8b, 0xb2, 0x0d, 0x96, 0x67, 0x1d, 0x8f, 0x7a, 0xd0, 0xd2, 0xa8, + 0x45, 0x94, 0x4b, 0xc5, 0x79, 0x26, 0x7a, 0x6f, 0x59, 0x84, 0x2d, 0xc7, 0x3c, 0xcb, 0x4d, 0xa2, + 0xe3, 0x2e, 0x72, 0x7b, 0xca, 0x72, 0xf1, 0x72, 0xcc, 0x92, 0x3c, 0xe8, 0xcf, 0x29, 0xe7, 0x98, + 0xfa, 0xc5, 0x1c, 0xa8, 0x26, 0x49, 0x50, 0xe4, 0xec, 0xf7, 0x36, 0x38, 0xcd, 0xb9, 0x0f, 0xb2, + 0xe1, 0xb6, 0x85, 0x8c, 0xdc, 0x93, 0xdf, 0x28, 0xeb, 0x79, 0x57, 0x74, 0x94, 0xaf, 0x82, 0x51, + 0xbe, 0x5b, 0xf8, 0x72, 0x79, 0x47, 0x3d, 0xc0, 0x76, 0x09, 0x5f, 0xec, 0x01, 0x98, 0x89, 0x93, + 0xa0, 0x10, 0x21, 0xef, 0x98, 0x37, 0x15, 0xa3, 0x41, 0x11, 0xac, 0x38, 0x1b, 0x0a, 0xb1, 0x72, + 0x8f, 0x7b, 0x31, 0x3e, 0x14, 0x60, 0x6d, 0x82, 0xf9, 0x14, 0x5a, 0x14, 0x02, 0x9e, 0xcc, 0x01, + 0x54, 0x06, 0x88, 0x51, 0x00, 0xfa, 0xcb, 0x60, 0x29, 0x8b, 0x1f, 0x85, 0xc8, 0x79, 0xc7, 0xbf, + 0xc5, 0x74, 0x86, 0x14, 0xb1, 0x3f, 0x03, 0x74, 0x38, 0xcf, 0x7e, 0x92, 0x86, 0x75, 0x1f, 0x4c, + 0xc7, 0x18, 0x53, 0x08, 0x35, 0x92, 0x03, 0x35, 0x19, 0xe5, 0x4c, 0x11, 0xa3, 0xb3, 0xa8, 0x53, + 0x08, 0x0a, 0xf2, 0x8c, 0x4e, 0x27, 0x4f, 0x01, 0xfc, 0x2f, 0x82, 0xc5, 0x54, 0x0e, 0x15, 0x62, + 0x8f, 0xe6, 0x60, 0xcf, 0xa7, 0xb1, 0xa8, 0x00, 0x79, 0x0b, 0xcc, 0xa7, 0x90, 0xa9, 0x10, 0xf7, + 0x74, 0x0e, 0xee, 0xdc, 0x20, 0x9d, 0x0a, 0x50, 0x83, 0x02, 0x40, 0x39, 0xb3, 0x00, 0x30, 0x76, + 0x88, 0x02, 0xc0, 0x78, 0xb2, 0x1e, 0x78, 0x1f, 0x4c, 0xc7, 0xc8, 0x5b, 0xa8, 0xf6, 0x44, 0x5e, + 0xfc, 0xa2, 0xf4, 0x2d, 0x50, 0x78, 0x1d, 0xcc, 0x26, 0x58, 0x5c, 0x88, 0x95, 0x57, 0xfc, 0x98, + 0x8e, 0xf3, 0xb8, 0x00, 0xed, 0x11, 0x58, 0x48, 0xa3, 0x73, 0x21, 0xa4, 0x9c, 0xe7, 0xd5, 0x41, + 0x42, 0x97, 0x54, 0x32, 0x05, 0x71, 0xb2, 0x48, 0xc9, 0x41, 0xb4, 0x47, 0x60, 0x21, 0x8d, 0xe0, + 0x85, 0x90, 0x53, 0x79, 0x4a, 0x0e, 0x52, 0xbc, 0x00, 0x56, 0x03, 0x67, 0x33, 0x99, 0x5e, 0x88, + 0x3d, 0x9d, 0x83, 0x5d, 0xcb, 0xe0, 0x7a, 0x91, 0x05, 0x20, 0xc1, 0xd7, 0x02, 0xd4, 0x99, 0xbc, + 0x05, 0x20, 0x46, 0xd3, 0x02, 0xac, 0xef, 0x80, 0xb3, 0x99, 0xdc, 0x2f, 0x84, 0x9d, 0xcd, 0x9b, + 0xb7, 0xe9, 0xec, 0x2f, 0xc0, 0xff, 0x00, 0x2c, 0xa6, 0x92, 0xc0, 0x10, 0x5b, 0xc9, 0xc1, 0xae, + 0xa6, 0xd0, 0xc0, 0xc4, 0x2e, 0xd0, 0x67, 0x83, 0x21, 0xe2, 0x5c, 0xc1, 0x2e, 0xd0, 0xe7, 0x83, + 0x01, 0xd6, 0x2d, 0x20, 0xf7, 0x69, 0x61, 0x88, 0x53, 0xcd, 0xc1, 0xa9, 0x84, 0xc4, 0x30, 0x92, + 0x9a, 0x09, 0x7e, 0x18, 0x02, 0xcd, 0xe7, 0xa5, 0x66, 0x9c, 0x21, 0x46, 0xf6, 0xa5, 0x14, 0xa2, + 0x18, 0x22, 0x2e, 0xe4, 0xed, 0x4b, 0x03, 0x54, 0x31, 0x00, 0xdd, 0x00, 0x73, 0x03, 0x8c, 0x31, + 0x84, 0x5c, 0xcc, 0x81, 0x9c, 0x4d, 0x72, 0xc6, 0xa8, 0xd1, 0x71, 0xea, 0x18, 0xe2, 0xd5, 0x72, + 0x8d, 0x8e, 0x91, 0xc7, 0x00, 0xed, 0x0e, 0x98, 0x8c, 0x70, 0xc8, 0x10, 0xe9, 0x4c, 0x0e, 0xd2, + 0x44, 0x9f, 0x45, 0x06, 0x28, 0x37, 0xc1, 0x98, 0xa0, 0x88, 0x21, 0xc0, 0x52, 0x5e, 0x25, 0x59, + 0xf4, 0x8d, 0x2c, 0x09, 0x69, 0xac, 0x32, 0x84, 0x3a, 0x9b, 0xb7, 0x24, 0x0c, 0xf2, 0xca, 0x3e, + 0x6b, 0x9a, 0x89, 0xd2, 0x4a, 0x0d, 0x5a, 0x6d, 0xec, 0x9a, 0x74, 0xa7, 0xc3, 0x8f, 0x30, 0x23, + 0xcd, 0xe9, 0x68, 0xeb, 0x4a, 0xd0, 0x28, 0xcf, 0x81, 0x61, 0xc3, 0x26, 0x9a, 0x69, 0xb7, 0x30, + 0x3f, 0xac, 0x8c, 0x34, 0x4f, 0x19, 0x36, 0x59, 0xb3, 0x5b, 0x98, 0x35, 0x75, 0x4d, 0x47, 0xa3, + 0x3d, 0x07, 0xf1, 0x73, 0xc8, 0x48, 0xf3, 0x54, 0xd7, 0x74, 0x38, 0xb7, 0x53, 0xc0, 0x29, 0x03, + 0x77, 0xa0, 0x69, 0x13, 0xe5, 0xfc, 0xd2, 0x10, 0x17, 0x12, 0x3f, 0xe5, 0xab, 0x60, 0x96, 0xb3, + 0x3e, 0xcb, 0x24, 0x14, 0xd9, 0x9a, 0x83, 0x5d, 0xaa, 0xe9, 0xfc, 0x7e, 0x8b, 0x1f, 0x1c, 0x46, + 0x9a, 0x53, 0xac, 0x79, 0x9d, 0xb7, 0x6e, 0x60, 0x97, 0x8a, 0xbb, 0x2f, 0xf9, 0x31, 0x58, 0x48, + 0x23, 0xc7, 0xa1, 0x53, 0x2e, 0xe4, 0x4d, 0xe1, 0x14, 0x7a, 0x1c, 0x99, 0x76, 0x7d, 0x96, 0x1c, + 0xa2, 0x5d, 0xcc, 0x9b, 0x76, 0x21, 0x4f, 0x0e, 0x30, 0x2e, 0x01, 0x99, 0x09, 0x13, 0xa4, 0x7b, + 0xae, 0x49, 0x7b, 0x9a, 0x85, 0xba, 0xc8, 0xe2, 0xc7, 0x88, 0x91, 0x66, 0x85, 0x5a, 0x64, 0xd3, + 0x6f, 0x58, 0x67, 0xcf, 0xe5, 0xb3, 0xe0, 0xb4, 0x69, 0x58, 0x48, 0xa3, 0x66, 0x07, 0x61, 0x4f, + 0x1c, 0x16, 0xca, 0xcd, 0x51, 0xf6, 0x6c, 0x4b, 0x3c, 0x92, 0xaf, 0x81, 0x59, 0x1d, 0xdb, 0xb6, + 0x3f, 0x3b, 0x62, 0xbd, 0xdf, 0xe4, 0xbd, 0xa7, 0xfb, 0xcd, 0x6b, 0x11, 0xb9, 0x6f, 0x82, 0x29, + 0x9d, 0xb1, 0x80, 0x96, 0xa9, 0x8b, 0x05, 0xce, 0xbf, 0x1b, 0xbd, 0xc4, 0x55, 0x99, 0x8c, 0xb5, + 0x89, 0x8b, 0x4e, 0xf9, 0x3b, 0x60, 0x31, 0x2e, 0x82, 0x9e, 0x3a, 0xa6, 0x2b, 0xfe, 0x34, 0x20, + 0x45, 0x99, 0xd4, 0x7f, 0x2b, 0x78, 0x9f, 0xaa, 0x39, 0x1f, 0x03, 0xb8, 0x1b, 0xca, 0xdf, 0x81, + 0x14, 0xc9, 0x3a, 0x18, 0x63, 0xe4, 0xc0, 0x9f, 0x4e, 0x2e, 0x6a, 0x29, 0xf5, 0x7d, 0xdf, 0x05, + 0xcf, 0x3d, 0x7f, 0x76, 0x3a, 0xfa, 0x2a, 0x55, 0x78, 0x01, 0x2e, 0xf1, 0xea, 0x8f, 0x98, 0x72, + 0x4d, 0xd4, 0x62, 0x0c, 0x24, 0x76, 0x5e, 0x09, 0xe3, 0xd8, 0xc8, 0x63, 0x20, 0xd1, 0x13, 0x8b, + 0x1f, 0xca, 0x07, 0xc7, 0x87, 0x2b, 0x95, 0x09, 0xf5, 0x8f, 0x4e, 0x80, 0xc5, 0xcc, 0xea, 0x2d, + 0xcf, 0xef, 0xf9, 0x68, 0xdd, 0x56, 0xd4, 0xc9, 0xfb, 0xb5, 0xd9, 0x8a, 0xa8, 0xcd, 0x8a, 0x6a, + 0x38, 0xaf, 0xbf, 0x9e, 0x1f, 0xa8, 0xbf, 0xfa, 0xa5, 0xef, 0x78, 0x8d, 0xf5, 0xfc, 0x40, 0x8d, + 0x55, 0xd4, 0xbc, 0x13, 0x75, 0xd4, 0x0b, 0x83, 0xc5, 0x2e, 0x51, 0xe8, 0x4e, 0x16, 0xb4, 0xea, + 0xe9, 0x05, 0x57, 0x71, 0x45, 0x97, 0x52, 0x54, 0xcd, 0xab, 0xed, 0x9f, 0x3a, 0x60, 0x6d, 0x7f, + 0x38, 0xad, 0xb6, 0xff, 0x5a, 0xb2, 0x38, 0x3a, 0xc2, 0x7b, 0xc5, 0x0b, 0xa0, 0xd7, 0x73, 0x0a, + 0xa0, 0x40, 0x68, 0x91, 0x51, 0xe4, 0xcc, 0xbc, 0x3a, 0x18, 0x3d, 0xf8, 0xd5, 0xc1, 0xe9, 0xcc, + 0xab, 0x83, 0x0f, 0xc1, 0x18, 0x0b, 0x75, 0xe4, 0xee, 0x60, 0x8c, 0xa7, 0xf4, 0x95, 0xcc, 0xbb, + 0x83, 0xec, 0x43, 0x70, 0xb3, 0x2c, 0xa0, 0xfc, 0xdb, 0x03, 0xe6, 0xa0, 0xf8, 0xc9, 0x7b, 0x5c, + 0x38, 0x28, 0x71, 0xba, 0x2e, 0x57, 0xc6, 0xd4, 0xe7, 0x25, 0x30, 0xbf, 0xe2, 0x38, 0x96, 0x3f, + 0xef, 0x92, 0x57, 0xcd, 0x05, 0x97, 0xf8, 0xbb, 0x60, 0x4e, 0x2c, 0xc3, 0x18, 0x1a, 0x5a, 0xb8, + 0x9a, 0xb6, 0xf8, 0xcd, 0x84, 0x7f, 0xa2, 0xfe, 0xd6, 0xbe, 0xed, 0x49, 0xb9, 0xd9, 0x68, 0xce, + 0xf0, 0x65, 0x1c, 0x43, 0xe3, 0x96, 0xdf, 0x49, 0xb4, 0xc9, 0x14, 0x28, 0x54, 0xcf, 0x18, 0x57, + 0x9c, 0xc3, 0x6f, 0xee, 0xf7, 0x0e, 0x26, 0x6d, 0xd8, 0x69, 0xaa, 0xa7, 0x8c, 0xaa, 0xbe, 0x2c, + 0x81, 0x85, 0x74, 0x67, 0xf9, 0x17, 0xef, 0xe7, 0x40, 0x39, 0xba, 0xaf, 0x04, 0xd7, 0xee, 0xf1, + 0x87, 0x6c, 0xed, 0xf6, 0xb7, 0x66, 0x07, 0x63, 0x2b, 0xb8, 0x7c, 0x1f, 0x15, 0xcf, 0x36, 0xd8, + 0x23, 0x96, 0x4e, 0x7e, 0xce, 0x93, 0x30, 0x8c, 0x7e, 0x89, 0xa1, 0xdc, 0x94, 0x83, 0xa6, 0x3b, + 0x61, 0x8b, 0x8c, 0x80, 0x1c, 0x46, 0xa2, 0x3f, 0xbc, 0x28, 0x23, 0x5c, 0x3b, 0x78, 0x08, 0xb8, + 0x17, 0x26, 0x02, 0xe7, 0xf7, 0x55, 0xdf, 0x06, 0x13, 0x81, 0xdf, 0xfb, 0xa3, 0x88, 0x53, 0xd5, + 0xd5, 0x03, 0x3b, 0x9c, 0x0f, 0x52, 0xf1, 0x5d, 0x1d, 0xc2, 0xa9, 0xdf, 0x2b, 0x81, 0xda, 0x8a, + 0x65, 0xe5, 0x65, 0xe5, 0xcf, 0x58, 0xde, 0x7d, 0x30, 0x78, 0x0d, 0xf8, 0x01, 0x6c, 0x89, 0xc6, + 0x48, 0x29, 0x2c, 0x7f, 0xae, 0x06, 0xe7, 0xf8, 0x52, 0xff, 0x1c, 0xaf, 0xfe, 0xbe, 0x04, 0x2e, + 0x66, 0xb8, 0x3a, 0x3a, 0x80, 0x48, 0xee, 0x27, 0xa9, 0x29, 0x26, 0xde, 0xd7, 0xd9, 0xbf, 0xb7, + 0x53, 0x14, 0x4f, 0x49, 0x34, 0xf5, 0x7f, 0x24, 0x70, 0xa1, 0x58, 0x33, 0x91, 0x0d, 0xd7, 0xc0, + 0x4c, 0xbf, 0x6c, 0x40, 0xcc, 0xb6, 0x0d, 0xa9, 0xe7, 0x22, 0xcd, 0x14, 0x45, 0xbd, 0xf2, 0xfd, + 0x63, 0xcd, 0xa9, 0xb0, 0x7d, 0x33, 0x68, 0x5e, 0x33, 0x64, 0x07, 0x28, 0x7d, 0xb9, 0xae, 0x89, + 0x2d, 0x41, 0x58, 0x38, 0x13, 0x1d, 0xe2, 0xef, 0x56, 0xbd, 0x95, 0x7c, 0x11, 0x2c, 0xc2, 0x23, + 0xea, 0x2b, 0x8e, 0x73, 0xcf, 0xff, 0xfb, 0x71, 0x20, 0xcc, 0xcc, 0xb9, 0x7f, 0xac, 0xd9, 0xd7, + 0x27, 0xd6, 0x72, 0xeb, 0x1c, 0x98, 0x60, 0x3c, 0x46, 0x24, 0x8c, 0x4f, 0x58, 0xe5, 0xf1, 0x2f, + 0x5f, 0x48, 0xa5, 0xaf, 0x5e, 0x48, 0xd2, 0xde, 0x0b, 0x69, 0xe8, 0xf2, 0xa5, 0x2b, 0xbc, 0xee, + 0x59, 0xba, 0xfc, 0xe9, 0x39, 0x20, 0xbf, 0x1f, 0xb8, 0xf1, 0x36, 0x7f, 0x07, 0x7e, 0x65, 0x63, + 0x4d, 0xfe, 0x6f, 0x09, 0x94, 0x6f, 0x43, 0xa2, 0x43, 0xb6, 0xe1, 0x5a, 0x88, 0x22, 0x79, 0x39, + 0xd3, 0xf7, 0xb1, 0x7e, 0xbe, 0xb7, 0xaa, 0xf5, 0xfd, 0x76, 0xf7, 0xdf, 0xf4, 0xfb, 0x4d, 0x69, + 0xef, 0x1f, 0x94, 0xad, 0xd6, 0xd5, 0xa7, 0xfa, 0xb2, 0x8e, 0x6d, 0x82, 0x2d, 0xb4, 0xbc, 0x0d, + 0x09, 0x5a, 0x86, 0x46, 0xc7, 0xb4, 0x2f, 0x2d, 0x25, 0x1b, 0x4c, 0x3d, 0xd6, 0xc2, 0xba, 0x5e, + 0x5a, 0xea, 0x22, 0xb2, 0x6c, 0xe2, 0x65, 0x0f, 0x76, 0x44, 0xe3, 0xf2, 0xae, 0x6b, 0x52, 0xf4, + 0xc9, 0x3f, 0xff, 0xeb, 0xef, 0x94, 0x96, 0xd5, 0x8b, 0xfe, 0x8b, 0xfe, 0xfd, 0x17, 0xd9, 0x49, + 0xe3, 0xbb, 0xec, 0xef, 0x67, 0x0d, 0x5d, 0x68, 0xa4, 0x19, 0x5c, 0xa5, 0x1b, 0xd2, 0x1b, 0xf2, + 0x5f, 0x95, 0xc0, 0x42, 0xde, 0x6b, 0x6a, 0xf2, 0xf5, 0x4c, 0xf3, 0x0a, 0xde, 0xc4, 0xab, 0xbe, + 0x73, 0x48, 0x49, 0xe2, 0xa8, 0x7f, 0xc8, 0x7c, 0xf4, 0x88, 0x1b, 0xcc, 0xf9, 0x3b, 0xea, 0x20, + 0xb2, 0xe3, 0x7b, 0x83, 0x71, 0x0f, 0xdf, 0x19, 0x91, 0x36, 0x42, 0xa1, 0x6d, 0x40, 0xd7, 0x10, + 0xcd, 0xbe, 0x7f, 0x4c, 0xbb, 0xe5, 0x42, 0x42, 0x5d, 0x4f, 0x67, 0x19, 0x1a, 0x71, 0xd2, 0xbb, + 0xea, 0x8d, 0x14, 0x27, 0x91, 0x1e, 0xa1, 0xa8, 0xd3, 0xf0, 0xb8, 0x76, 0x5a, 0xe6, 0x7b, 0x82, + 0xcc, 0x6d, 0x5f, 0x94, 0x40, 0x35, 0xfb, 0x4d, 0x75, 0xf9, 0x46, 0xa6, 0xe9, 0x85, 0x6f, 0xe1, + 0x57, 0x6f, 0x1e, 0x4a, 0xd6, 0x4f, 0xae, 0xff, 0x1f, 0xc7, 0x7d, 0x37, 0xfc, 0xfb, 0x59, 0x23, + 0x7c, 0x61, 0x5e, 0x6b, 0x61, 0x57, 0x33, 0x7d, 0x25, 0xb5, 0xae, 0xe9, 0x10, 0xe6, 0xb8, 0xbf, + 0x2b, 0x81, 0xea, 0xea, 0x61, 0x1c, 0xb7, 0x7a, 0x04, 0xc7, 0x15, 0xbf, 0xea, 0xaf, 0x7e, 0x2e, + 0xfd, 0xe8, 0xaf, 0x4b, 0xcc, 0x79, 0xbf, 0x94, 0xee, 0xbc, 0x0e, 0xb6, 0x4d, 0x8a, 0xf3, 0xfc, + 0x17, 0xf6, 0x48, 0xf7, 0xa1, 0x8b, 0xa0, 0xc1, 0x5d, 0xf8, 0x2d, 0xf9, 0x08, 0x2e, 0x94, 0xff, + 0xbc, 0x04, 0x94, 0xac, 0x97, 0xf1, 0x73, 0xe6, 0x6a, 0xc1, 0x77, 0x07, 0x39, 0x73, 0xb5, 0xf0, + 0xcd, 0xff, 0x1f, 0x30, 0xaf, 0x3d, 0x3e, 0x7c, 0xca, 0x05, 0xfe, 0x72, 0x5c, 0xfc, 0xb4, 0xb7, + 0x1c, 0x1c, 0xd7, 0x23, 0x39, 0x77, 0x53, 0xbd, 0x56, 0xe0, 0x30, 0xc8, 0x15, 0xd4, 0x92, 0x9f, + 0x06, 0xb0, 0x7c, 0xfb, 0xcb, 0x12, 0x50, 0x56, 0x0f, 0xee, 0xaf, 0xd5, 0x43, 0xfb, 0xab, 0xe8, + 0x1b, 0x06, 0xf5, 0x87, 0xaf, 0x3c, 0xd3, 0x12, 0x9e, 0x0b, 0x33, 0xed, 0xba, 0x7c, 0x48, 0xc7, + 0xc9, 0x7f, 0x12, 0xcd, 0xb2, 0xc4, 0x7b, 0xfe, 0xfb, 0xc9, 0xb2, 0xf4, 0x8f, 0x0b, 0xf6, 0x93, + 0x65, 0x59, 0x9f, 0x2e, 0xfc, 0x2e, 0xf3, 0xd8, 0xc3, 0xa3, 0x67, 0x99, 0xff, 0x02, 0xef, 0x61, + 0xd2, 0x2b, 0xf9, 0x51, 0x03, 0x4b, 0xaf, 0x3f, 0x8b, 0xa6, 0xd7, 0xfe, 0x1d, 0xb5, 0x7a, 0x68, + 0x47, 0x15, 0x7d, 0x7d, 0xa1, 0xfe, 0x41, 0x90, 0x5e, 0x5b, 0xaf, 0x2a, 0xbd, 0x02, 0x97, 0x1d, + 0x3c, 0xaf, 0x92, 0x1e, 0x93, 0xbf, 0x5f, 0x02, 0x33, 0xe9, 0x1f, 0x42, 0xc8, 0xd7, 0x8a, 0x73, + 0x23, 0xed, 0xbb, 0x88, 0xea, 0xdb, 0x07, 0x96, 0xf3, 0x1d, 0xf5, 0x5b, 0xcc, 0x49, 0x6b, 0xdc, + 0x0b, 0xd0, 0x33, 0x4c, 0xba, 0x6c, 0xe1, 0x36, 0x59, 0xe6, 0x9f, 0x1d, 0x90, 0x68, 0x4a, 0x0d, + 0x34, 0x86, 0x8e, 0x69, 0x23, 0x1b, 0xb9, 0xd0, 0x8a, 0xe4, 0xd2, 0x3b, 0xea, 0x5b, 0xfb, 0xf3, + 0x4c, 0xfc, 0x6b, 0x09, 0x96, 0x49, 0x3f, 0x28, 0x81, 0x99, 0xd5, 0x83, 0xba, 0x66, 0xf5, 0x90, + 0xae, 0xc9, 0xff, 0x54, 0x44, 0xfd, 0x5e, 0x90, 0x43, 0xdf, 0xce, 0x70, 0x4f, 0x3c, 0x89, 0x8a, + 0x3d, 0x14, 0xa6, 0xce, 0x35, 0xf9, 0x50, 0x0e, 0x92, 0x5f, 0x48, 0xa0, 0xbc, 0xe9, 0xb5, 0xdb, + 0x88, 0x50, 0xfe, 0x66, 0x03, 0x91, 0xbf, 0x91, 0x1d, 0xf7, 0x68, 0x3f, 0x46, 0x44, 0xdf, 0xd8, + 0x6f, 0x57, 0xe2, 0xa8, 0x9b, 0xbe, 0xe5, 0x93, 0xdc, 0x32, 0xbf, 0x44, 0xbd, 0x0c, 0xf9, 0xb7, + 0x05, 0xdc, 0x82, 0xcb, 0xea, 0x72, 0x81, 0x05, 0x44, 0x80, 0x2e, 0xf3, 0xcf, 0x18, 0x78, 0x6c, + 0xff, 0x4b, 0x02, 0xe5, 0xd8, 0x77, 0x0c, 0x39, 0xda, 0x27, 0xbf, 0xc7, 0xc8, 0x39, 0x5f, 0xa4, + 0x7e, 0x1a, 0xa1, 0x7e, 0x1a, 0x04, 0xef, 0xc1, 0xe0, 0x19, 0x23, 0x1e, 0xb7, 0xf8, 0x29, 0x23, + 0x39, 0xed, 0x07, 0x62, 0x97, 0x7e, 0xb2, 0xf0, 0x49, 0x73, 0xf0, 0x5d, 0xab, 0xe6, 0x32, 0x65, + 0x98, 0xd1, 0xdf, 0x2f, 0x81, 0xc9, 0x94, 0x8f, 0x2a, 0xe4, 0xec, 0x82, 0x5c, 0xf6, 0x17, 0x1a, + 0xd5, 0xb7, 0x0e, 0x26, 0xe4, 0xbb, 0xe2, 0xf7, 0x5e, 0xf9, 0x5a, 0x38, 0xe0, 0x94, 0x2b, 0x6a, + 0x3d, 0xdb, 0x29, 0x76, 0xa8, 0x9b, 0x66, 0x06, 0xca, 0x31, 0xd7, 0xfc, 0xb0, 0x04, 0xa6, 0xd2, + 0x4e, 0xe2, 0x72, 0xb6, 0x99, 0x39, 0xd5, 0x9b, 0xea, 0xd5, 0x03, 0x4a, 0x85, 0xc4, 0xed, 0xff, + 0xdc, 0x3b, 0xfb, 0x58, 0x0f, 0xfb, 0x1a, 0xc6, 0x7d, 0xf4, 0x71, 0x09, 0xcc, 0x66, 0x14, 0x2c, + 0xe4, 0xec, 0x85, 0x2d, 0xbf, 0xce, 0x75, 0x58, 0x4f, 0x79, 0xbe, 0xa3, 0x1a, 0xdc, 0x13, 0xbb, + 0x10, 0x3a, 0x29, 0x27, 0x73, 0xfe, 0x38, 0x74, 0x0d, 0x6f, 0x11, 0xbb, 0xa5, 0x7a, 0x25, 0x3b, + 0x43, 0xa0, 0x65, 0x69, 0x99, 0x2e, 0xf8, 0xbc, 0x04, 0xaa, 0xd9, 0x35, 0x1b, 0xf9, 0xe7, 0x0f, + 0xea, 0x85, 0x64, 0xa1, 0xa7, 0xba, 0x72, 0x04, 0x04, 0xdf, 0x35, 0xbf, 0x26, 0x1d, 0xc5, 0x37, + 0x77, 0xd4, 0x77, 0x0f, 0xe1, 0x1b, 0xad, 0x5f, 0xf3, 0x61, 0x2b, 0x4d, 0xf5, 0xd2, 0x97, 0x2f, + 0xa4, 0xa1, 0x7f, 0x7a, 0x21, 0xd5, 0xb2, 0xac, 0x11, 0x17, 0x58, 0x9f, 0xfc, 0xa3, 0x52, 0xaa, + 0x48, 0xb7, 0x7e, 0x43, 0xfa, 0xea, 0xeb, 0xda, 0xb1, 0x1f, 0x7f, 0x5d, 0x3b, 0xf6, 0xd3, 0xaf, + 0x6b, 0xd2, 0xc7, 0x7b, 0x35, 0xe9, 0x4f, 0xf7, 0x6a, 0xd2, 0x8f, 0xf6, 0x6a, 0xd2, 0x57, 0x7b, + 0x35, 0xe9, 0x27, 0x7b, 0x35, 0xe9, 0xdf, 0xf6, 0x6a, 0xc7, 0x7e, 0xba, 0x57, 0x93, 0x7e, 0xfb, + 0x65, 0xed, 0xd8, 0x97, 0x2f, 0x6b, 0xd2, 0x57, 0x2f, 0x6b, 0xc7, 0x7e, 0xfc, 0xb2, 0x76, 0xec, + 0xc3, 0xf7, 0xda, 0xd8, 0x79, 0xd2, 0xae, 0x77, 0x31, 0x1b, 0xda, 0x85, 0x75, 0x8f, 0x34, 0xf8, + 0x1f, 0x2d, 0xec, 0x76, 0x18, 0x0b, 0xef, 0x9a, 0x06, 0x72, 0x97, 0x83, 0xe6, 0x86, 0xb3, 0xdd, + 0xc6, 0x0d, 0xf4, 0x94, 0xfa, 0x9f, 0xe5, 0x27, 0xff, 0xbd, 0xc0, 0xf6, 0x49, 0x7e, 0x6d, 0x77, + 0xe5, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xdb, 0x92, 0x54, 0x81, 0xb1, 0x41, 0x00, 0x00, } func (this *SetFastACLsForInternetVIPsRequest) Equal(that interface{}) bool { @@ -4406,9 +4416,6 @@ func (this *HTTPLoadbalancerInventoryFilterType) Equal(that interface{}) bool { if !this.ApiProtection.Equal(that1.ApiProtection) { return false } - if !this.DdosProtection.Equal(that1.DdosProtection) { - return false - } if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { return false } @@ -4433,6 +4440,9 @@ func (this *HTTPLoadbalancerInventoryFilterType) Equal(that interface{}) bool { if !this.WafExclusion.Equal(that1.WafExclusion) { return false } + if !this.DdosProtection.Equal(that1.DdosProtection) { + return false + } if !this.DdosAutoMitigation.Equal(that1.DdosAutoMitigation) { return false } @@ -4523,9 +4533,6 @@ func (this *HTTPLoadbalancerResultType) Equal(that interface{}) bool { if !this.ApiProtectionEnabled.Equal(that1.ApiProtectionEnabled) { return false } - if !this.DdosProtectionEnabled.Equal(that1.DdosProtectionEnabled) { - return false - } if !this.ClientSideDefenseEnabled.Equal(that1.ClientSideDefenseEnabled) { return false } @@ -4559,6 +4566,9 @@ func (this *HTTPLoadbalancerResultType) Equal(that interface{}) bool { if !this.WafExclusionEnabled.Equal(that1.WafExclusionEnabled) { return false } + if !this.DdosProtectionEnabled.Equal(that1.DdosProtectionEnabled) { + return false + } if !this.DdosAutoMitigationEnabled.Equal(that1.DdosAutoMitigationEnabled) { return false } @@ -5303,9 +5313,6 @@ func (this *HTTPLoadbalancerInventoryFilterType) GoString() string { if this.ApiProtection != nil { s = append(s, "ApiProtection: "+fmt.Sprintf("%#v", this.ApiProtection)+",\n") } - if this.DdosProtection != nil { - s = append(s, "DdosProtection: "+fmt.Sprintf("%#v", this.DdosProtection)+",\n") - } if this.ClientSideDefense != nil { s = append(s, "ClientSideDefense: "+fmt.Sprintf("%#v", this.ClientSideDefense)+",\n") } @@ -5330,6 +5337,9 @@ func (this *HTTPLoadbalancerInventoryFilterType) GoString() string { if this.WafExclusion != nil { s = append(s, "WafExclusion: "+fmt.Sprintf("%#v", this.WafExclusion)+",\n") } + if this.DdosProtection != nil { + s = append(s, "DdosProtection: "+fmt.Sprintf("%#v", this.DdosProtection)+",\n") + } if this.DdosAutoMitigation != nil { s = append(s, "DdosAutoMitigation: "+fmt.Sprintf("%#v", this.DdosAutoMitigation)+",\n") } @@ -5408,9 +5418,6 @@ func (this *HTTPLoadbalancerResultType) GoString() string { if this.ApiProtectionEnabled != nil { s = append(s, "ApiProtectionEnabled: "+fmt.Sprintf("%#v", this.ApiProtectionEnabled)+",\n") } - if this.DdosProtectionEnabled != nil { - s = append(s, "DdosProtectionEnabled: "+fmt.Sprintf("%#v", this.DdosProtectionEnabled)+",\n") - } if this.ClientSideDefenseEnabled != nil { s = append(s, "ClientSideDefenseEnabled: "+fmt.Sprintf("%#v", this.ClientSideDefenseEnabled)+",\n") } @@ -5440,6 +5447,9 @@ func (this *HTTPLoadbalancerResultType) GoString() string { if this.WafExclusionEnabled != nil { s = append(s, "WafExclusionEnabled: "+fmt.Sprintf("%#v", this.WafExclusionEnabled)+",\n") } + if this.DdosProtectionEnabled != nil { + s = append(s, "DdosProtectionEnabled: "+fmt.Sprintf("%#v", this.DdosProtectionEnabled)+",\n") + } if this.DdosAutoMitigationEnabled != nil { s = append(s, "DdosAutoMitigationEnabled: "+fmt.Sprintf("%#v", this.DdosAutoMitigationEnabled)+",\n") } diff --git a/pbgo/extschema/schema/namespace/public_customapi_akar.vesapi.go b/pbgo/extschema/schema/namespace/public_customapi_akar.vesapi.go index df80268ce..761e43183 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_akar.vesapi.go +++ b/pbgo/extschema/schema/namespace/public_customapi_akar.vesapi.go @@ -4419,24 +4419,24 @@ var NamespaceCustomAPISwaggerJSON string = `{ }, "ddos_auto_mitigation": { "type": "boolean", - "description": " Filter results with HTTP loadbalancers with DDoS Auto Mitigation", - "title": "DDoS Auto Mitigation", + "description": " Filter results with HTTP loadbalancers with L7 DDoS Auto Mitigation enabled", + "title": "L7 DDoS Auto Mitigation", "format": "boolean", - "x-displayname": "DDoS Auto Mitigation" + "x-displayname": "L7 DDoS Auto Mitigation" }, "ddos_mitigation": { "type": "boolean", - "description": " Filter results with HTTP loadbalancers with DDoS Mitigation", - "title": "DDoS Mitigation", + "description": " Filter results with HTTP loadbalancers with DDoS Mitigation Rules configured", + "title": "DDoS Mitigation Rules", "format": "boolean", - "x-displayname": "DDoS Mitigation" + "x-displayname": "DDoS Mitigation Rules" }, "ddos_protection": { "type": "boolean", - "description": " Filter results with HTTP loadbalancers with DDoS Protection configured", - "title": "DDoS Protection", + "description": " Filter results with HTTP loadbalancers with L7 DDoS detection enabled", + "title": "L7 DDoS Detection", "format": "boolean", - "x-displayname": "DDoS Protection" + "x-displayname": "L7 DDoS Detection" }, "default_loadbalancer": { "type": "boolean", @@ -4603,10 +4603,10 @@ var NamespaceCustomAPISwaggerJSON string = `{ }, "ddos_protection": { "type": "integer", - "description": " Number of HTTP loadbalancers with DDoS Protection configured", - "title": "DDoS Protection", + "description": " Number of HTTP loadbalancers with L7 DDoS Detection enabled", + "title": "L7 DDoS Detection", "format": "int64", - "x-displayname": "DDoS Protection" + "x-displayname": "L7 DDoS Detection" }, "http_only": { "type": "integer", @@ -4769,22 +4769,22 @@ var NamespaceCustomAPISwaggerJSON string = `{ "x-displayname": "Data Guard Enabled or Disabled" }, "ddos_auto_mitigation_enabled": { - "description": " DDoS Auto Mitigation configured ", - "title": "DDoS Auto Mitigation Status", + "description": " L7 DDoS Auto Mitigation configured", + "title": "L7 DDoS Auto Mitigation Status", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "DDoS Auto Mitigation Enabled or Disabled" + "x-displayname": "L7 DDoS Auto Mitigation Enabled or Disabled" }, "ddos_mitigation_enabled": { - "description": " DDoS Mitigation configured ", - "title": "DDoS Mitigation Status", + "description": " DDoS Mitigation Rules configured", + "title": "DDoS Mitigation Rules Status", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "DDoS Mitigation Enabled or Disabled" + "x-displayname": "DDoS Mitigation Rules Configured" }, "ddos_protection_enabled": { - "description": " DDoS Detection configured", - "title": "DDoS Detection Status", + "description": " L7 DDoS detection configured", + "title": "L7 DDoS Detection Status", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "DDoS Detection Enabled or Disabled" + "x-displayname": "L7 DDoS Detection Enabled or Disabled" }, "default_loadbalancer_enabled": { "description": " Default Loadbalancer configured ", diff --git a/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.go b/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.go index 8130d1015..36bfa9501 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.go +++ b/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.go @@ -106,6 +106,58 @@ func (m *ApiEndpointsStatsNSReq) GetNamespace() string { return "" } +// Api Endpoints stats all namespaces request +// +// x-displayName: "Api Endpoints Stats All Namespaces Request" +// Request shape for GET Api Endpoints Stats All Namespaces +type ApiEndpointsStatsAllNSReq struct { + // Namespace + // + // x-displayName: "Namespace" + // x-example: "shared" + // Namespace of the App type for current request + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` +} + +func (m *ApiEndpointsStatsAllNSReq) Reset() { *m = ApiEndpointsStatsAllNSReq{} } +func (*ApiEndpointsStatsAllNSReq) ProtoMessage() {} +func (*ApiEndpointsStatsAllNSReq) Descriptor() ([]byte, []int) { + return fileDescriptor_0d03a36da3cd3d47, []int{1} +} +func (m *ApiEndpointsStatsAllNSReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ApiEndpointsStatsAllNSReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ApiEndpointsStatsAllNSReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ApiEndpointsStatsAllNSReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApiEndpointsStatsAllNSReq.Merge(m, src) +} +func (m *ApiEndpointsStatsAllNSReq) XXX_Size() int { + return m.Size() +} +func (m *ApiEndpointsStatsAllNSReq) XXX_DiscardUnknown() { + xxx_messageInfo_ApiEndpointsStatsAllNSReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ApiEndpointsStatsAllNSReq proto.InternalMessageInfo + +func (m *ApiEndpointsStatsAllNSReq) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + // Api Endpoints stats Response // // x-displayName: "Api Endpoints Stats Response" @@ -141,7 +193,7 @@ type ApiEndpointsStatsNSRsp struct { func (m *ApiEndpointsStatsNSRsp) Reset() { *m = ApiEndpointsStatsNSRsp{} } func (*ApiEndpointsStatsNSRsp) ProtoMessage() {} func (*ApiEndpointsStatsNSRsp) Descriptor() ([]byte, []int) { - return fileDescriptor_0d03a36da3cd3d47, []int{1} + return fileDescriptor_0d03a36da3cd3d47, []int{2} } func (m *ApiEndpointsStatsNSRsp) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -208,6 +260,8 @@ func (m *ApiEndpointsStatsNSRsp) GetPiiDetected() int32 { func init() { proto.RegisterType((*ApiEndpointsStatsNSReq)(nil), "ves.io.schema.namespace.ApiEndpointsStatsNSReq") golang_proto.RegisterType((*ApiEndpointsStatsNSReq)(nil), "ves.io.schema.namespace.ApiEndpointsStatsNSReq") + proto.RegisterType((*ApiEndpointsStatsAllNSReq)(nil), "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq") + golang_proto.RegisterType((*ApiEndpointsStatsAllNSReq)(nil), "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq") proto.RegisterType((*ApiEndpointsStatsNSRsp)(nil), "ves.io.schema.namespace.ApiEndpointsStatsNSRsp") golang_proto.RegisterType((*ApiEndpointsStatsNSRsp)(nil), "ves.io.schema.namespace.ApiEndpointsStatsNSRsp") } @@ -220,44 +274,54 @@ func init() { } var fileDescriptor_0d03a36da3cd3d47 = []byte{ - // 592 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x53, 0xcf, 0x4f, 0x13, 0x41, - 0x14, 0xee, 0x14, 0x21, 0x61, 0x45, 0x4d, 0x56, 0x82, 0x9b, 0x4a, 0xc6, 0x5a, 0x0e, 0x12, 0x63, - 0x77, 0x0c, 0x26, 0x9a, 0x78, 0xc3, 0x9f, 0x31, 0x11, 0x34, 0xe5, 0x62, 0xf4, 0xd0, 0xcc, 0xee, - 0x3e, 0xb6, 0xa3, 0xdb, 0x7d, 0xe3, 0xce, 0x74, 0x81, 0x18, 0x13, 0xc3, 0xc5, 0xab, 0x89, 0x27, - 0xff, 0x03, 0xff, 0x04, 0x23, 0x17, 0x6e, 0x72, 0x32, 0x04, 0x2f, 0x1c, 0x65, 0xeb, 0xc1, 0x23, - 0x7f, 0x82, 0xe9, 0x74, 0xdb, 0x42, 0xa1, 0x07, 0x6f, 0xef, 0x7d, 0xdf, 0xf7, 0xbe, 0x7d, 0x6f, - 0xf3, 0x8d, 0x75, 0x3b, 0x05, 0xe5, 0x0a, 0x64, 0xca, 0x6f, 0x40, 0x93, 0xb3, 0x98, 0x37, 0x41, - 0x49, 0xee, 0x03, 0x93, 0x2d, 0x2f, 0x12, 0x7e, 0xdd, 0x6f, 0x29, 0x8d, 0x4d, 0x2e, 0x45, 0x9d, - 0x2b, 0x0d, 0x89, 0x58, 0x77, 0x65, 0x82, 0x1a, 0xed, 0x4b, 0xdd, 0x39, 0xb7, 0x3b, 0xe7, 0xf6, - 0xe7, 0x4a, 0xd5, 0x50, 0xe8, 0x46, 0xcb, 0x73, 0x7d, 0x6c, 0xb2, 0x10, 0x43, 0x64, 0x46, 0xef, - 0xb5, 0x56, 0x4d, 0x67, 0x1a, 0x53, 0x75, 0x7d, 0x4a, 0xb3, 0x21, 0x62, 0x18, 0x01, 0xe3, 0x52, - 0x30, 0x1e, 0xc7, 0xa8, 0xb9, 0x16, 0x18, 0xab, 0x9c, 0x9d, 0x1b, 0xb5, 0x9d, 0xde, 0x90, 0xd0, - 0x13, 0x5d, 0x3e, 0x2e, 0x42, 0x79, 0xd4, 0x61, 0xf6, 0x38, 0x99, 0xf2, 0x48, 0x04, 0x5c, 0x43, - 0xce, 0x56, 0x86, 0x58, 0x50, 0x10, 0xa7, 0x43, 0x0e, 0xe5, 0x21, 0x8d, 0x80, 0xb5, 0xfa, 0x71, - 0xc5, 0x95, 0x93, 0x0a, 0x75, 0x74, 0xc3, 0xca, 0x2b, 0x6b, 0x66, 0x51, 0x8a, 0x87, 0x71, 0x20, - 0x51, 0xc4, 0x5a, 0xad, 0x68, 0xae, 0xd5, 0xf2, 0x4a, 0x0d, 0xde, 0xda, 0x73, 0xd6, 0xb9, 0xb4, - 0x81, 0x4a, 0xab, 0xfa, 0xaa, 0x88, 0x34, 0x24, 0x0e, 0x29, 0x8f, 0xcd, 0x4f, 0xd6, 0xa6, 0xba, - 0xe0, 0x23, 0x83, 0xd9, 0xb3, 0xd6, 0x64, 0xff, 0x72, 0xa7, 0x58, 0x26, 0xf3, 0x93, 0xb5, 0x01, - 0x50, 0xf9, 0x4e, 0x4e, 0x77, 0x57, 0xd2, 0xbe, 0x66, 0x5d, 0xd0, 0xa8, 0x79, 0x54, 0x87, 0x1e, - 0xe9, 0x90, 0x32, 0x99, 0x1f, 0xaf, 0x9d, 0x37, 0x70, 0x7f, 0xc4, 0xa6, 0x96, 0x15, 0x08, 0xe5, - 0x63, 0x0a, 0x09, 0x04, 0xe6, 0x13, 0xe3, 0xb5, 0x23, 0x48, 0x67, 0x03, 0x11, 0xa7, 0x10, 0x6b, - 0x4c, 0x36, 0x9c, 0x31, 0x43, 0x0f, 0x00, 0x7b, 0xc6, 0x9a, 0x50, 0x0d, 0x1e, 0xe0, 0x9a, 0x73, - 0xc6, 0x50, 0x79, 0x67, 0x5f, 0xb5, 0xa6, 0xa4, 0x10, 0xf5, 0x00, 0x34, 0xf8, 0x1a, 0x02, 0x67, - 0xdc, 0xb0, 0x67, 0xa5, 0x10, 0x0f, 0x72, 0x68, 0xe1, 0x4b, 0xd1, 0x9a, 0x5e, 0xee, 0x9d, 0xb2, - 0xf4, 0xf4, 0xbe, 0x49, 0xdb, 0xe2, 0xf3, 0x27, 0xf6, 0x1e, 0xb1, 0xa6, 0x1f, 0x83, 0x3e, 0x71, - 0x98, 0xcd, 0xdc, 0x11, 0xc9, 0x73, 0x4f, 0xff, 0xc5, 0xa5, 0xff, 0x1b, 0x50, 0xb2, 0xf2, 0x62, - 0xe7, 0x5b, 0x91, 0x64, 0x3f, 0x9c, 0x8b, 0x29, 0xa8, 0xaa, 0xc0, 0x6a, 0x08, 0x31, 0x24, 0x3c, - 0xaa, 0x26, 0xc0, 0x83, 0xcd, 0x5f, 0x7f, 0x3e, 0x17, 0xef, 0x54, 0x16, 0xf2, 0xe7, 0x31, 0x48, - 0xa4, 0x62, 0xef, 0xfa, 0xf5, 0xfb, 0x4e, 0x9a, 0x07, 0xff, 0x9c, 0xa9, 0x8e, 0xf7, 0x5d, 0x72, - 0xbd, 0x74, 0x63, 0x7b, 0x8b, 0x8c, 0xed, 0x6d, 0x11, 0x3a, 0x6a, 0xa3, 0x67, 0xde, 0x6b, 0xf0, - 0xf5, 0xe6, 0x4f, 0xa7, 0x78, 0x93, 0xdc, 0xfb, 0x48, 0x76, 0x0f, 0x68, 0x61, 0xff, 0x80, 0x16, - 0x0e, 0x0f, 0x28, 0xf9, 0x90, 0x51, 0xf2, 0x35, 0xa3, 0x64, 0x27, 0xa3, 0x64, 0x37, 0xa3, 0xe4, - 0x77, 0x46, 0xc9, 0xdf, 0x8c, 0x16, 0x0e, 0x33, 0x4a, 0x3e, 0xb5, 0x69, 0x61, 0xbb, 0x4d, 0xc9, - 0x6e, 0x9b, 0x16, 0xf6, 0xdb, 0xb4, 0xf0, 0x72, 0x29, 0x44, 0xf9, 0x26, 0x74, 0x53, 0xec, 0xe4, - 0x27, 0xe1, 0x6e, 0x4b, 0x31, 0x53, 0xac, 0x62, 0xd2, 0xac, 0xca, 0x04, 0x53, 0x11, 0x40, 0x52, - 0xed, 0xd1, 0x4c, 0x7a, 0x21, 0x32, 0x58, 0xd7, 0x79, 0x80, 0x87, 0x5f, 0x9b, 0x37, 0x61, 0x62, - 0x7c, 0xeb, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xcc, 0xea, 0x83, 0xa4, 0x2d, 0x04, 0x00, 0x00, + // 749 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0xcf, 0x4f, 0xe3, 0x46, + 0x14, 0xc7, 0x33, 0xa1, 0x41, 0xc2, 0x85, 0x56, 0xb2, 0x10, 0x75, 0x53, 0x34, 0x0d, 0xe6, 0x50, + 0x8a, 0xb0, 0x5d, 0x85, 0xfe, 0x10, 0xbd, 0xd1, 0x9f, 0xaa, 0x54, 0x68, 0x15, 0xa4, 0x1e, 0xda, + 0x83, 0x35, 0xb1, 0x5f, 0x9c, 0x69, 0x6d, 0xcf, 0xe0, 0x99, 0x98, 0xa0, 0xaa, 0x52, 0xc5, 0xa5, + 0xd7, 0x4a, 0xfd, 0x27, 0xfa, 0x27, 0xac, 0x96, 0x0b, 0xb7, 0xe5, 0xb4, 0x42, 0xbb, 0x87, 0xe5, + 0xb8, 0x38, 0x7b, 0xd8, 0xbd, 0xa1, 0xfd, 0x07, 0x76, 0x95, 0x89, 0xf3, 0x93, 0x44, 0x0b, 0xb7, + 0x99, 0xf7, 0x7d, 0xdf, 0x37, 0xef, 0x93, 0x3c, 0x3f, 0xed, 0xf3, 0x14, 0x84, 0x4d, 0x99, 0x23, + 0xbc, 0x26, 0x44, 0xc4, 0x89, 0x49, 0x04, 0x82, 0x13, 0x0f, 0x1c, 0xde, 0xaa, 0x87, 0xd4, 0x73, + 0xbd, 0x96, 0x90, 0x2c, 0x22, 0x9c, 0xba, 0x44, 0x48, 0x48, 0x68, 0xdb, 0xe6, 0x09, 0x93, 0x4c, + 0x7f, 0xaf, 0xe7, 0xb3, 0x7b, 0x3e, 0x7b, 0xe0, 0x2b, 0x5b, 0x01, 0x95, 0xcd, 0x56, 0xdd, 0xf6, + 0x58, 0xe4, 0x04, 0x2c, 0x60, 0x8e, 0xca, 0xaf, 0xb7, 0x1a, 0xea, 0xa6, 0x2e, 0xea, 0xd4, 0xab, + 0x53, 0x5e, 0x0d, 0x18, 0x0b, 0x42, 0x70, 0x08, 0xa7, 0x0e, 0x89, 0x63, 0x26, 0x89, 0xa4, 0x2c, + 0x16, 0xb9, 0xba, 0x3e, 0xab, 0x3b, 0x79, 0xcc, 0xa1, 0x9f, 0xf4, 0xc1, 0x78, 0x12, 0xe3, 0xa3, + 0x15, 0x56, 0xc7, 0xc5, 0x94, 0x84, 0xd4, 0x27, 0x12, 0x72, 0xd5, 0x9c, 0x50, 0x41, 0x40, 0x9c, + 0x4e, 0x54, 0xa8, 0x4c, 0xe4, 0x50, 0x38, 0x72, 0xc7, 0x33, 0x3e, 0xbc, 0x99, 0x21, 0x46, 0x3b, + 0x34, 0x7f, 0xd3, 0x56, 0x76, 0x39, 0xfd, 0x36, 0xf6, 0x39, 0xa3, 0xb1, 0x14, 0x07, 0x92, 0x48, + 0xb1, 0x7f, 0x50, 0x83, 0x43, 0x7d, 0x5d, 0x5b, 0x4a, 0x9b, 0x4c, 0x48, 0xe1, 0x36, 0x68, 0x28, + 0x21, 0x31, 0x50, 0x65, 0x6e, 0x63, 0xa1, 0xb6, 0xd8, 0x0b, 0x7e, 0xa7, 0x62, 0xfa, 0xaa, 0xb6, + 0x30, 0x20, 0x37, 0x8a, 0x15, 0xb4, 0xb1, 0x50, 0x1b, 0x06, 0xcc, 0x1d, 0xed, 0xfd, 0x1b, 0xc5, + 0x77, 0xc3, 0xb0, 0x57, 0x7f, 0xcc, 0x8a, 0x26, 0xad, 0xf7, 0xd1, 0xf4, 0xc6, 0x04, 0xd7, 0x3f, + 0xd2, 0xde, 0x95, 0x4c, 0x92, 0xd0, 0x85, 0xbe, 0xa8, 0xec, 0xa5, 0xda, 0x3b, 0x2a, 0x3c, 0xb0, + 0xe8, 0x58, 0xd3, 0x7c, 0x2a, 0x3c, 0x96, 0x42, 0x02, 0xbe, 0xea, 0xae, 0x54, 0x1b, 0x89, 0x74, + 0x3b, 0xa0, 0x71, 0x0a, 0xb1, 0x64, 0xc9, 0xb1, 0x31, 0xa7, 0xe4, 0x61, 0x40, 0x5f, 0xd1, 0xe6, + 0x45, 0x93, 0xf8, 0xec, 0xc8, 0x78, 0x4b, 0x49, 0xf9, 0x4d, 0x5f, 0xd3, 0x16, 0x39, 0xa5, 0xae, + 0x0f, 0x12, 0x3c, 0x09, 0xbe, 0x51, 0x52, 0xea, 0xdb, 0x9c, 0xd2, 0x6f, 0xf2, 0x50, 0xf5, 0x55, + 0x49, 0x5b, 0xde, 0xef, 0xa3, 0xec, 0xfd, 0xf8, 0xb5, 0x1a, 0xd4, 0xdd, 0x9f, 0x7f, 0xd0, 0x9f, + 0x20, 0x6d, 0xe9, 0xa0, 0x15, 0x04, 0x20, 0xe4, 0x2f, 0x24, 0x6c, 0x81, 0xd0, 0x3f, 0xb6, 0x67, + 0x4c, 0xab, 0x3d, 0x96, 0x57, 0x83, 0xc3, 0xf2, 0xe6, 0x6d, 0x53, 0x05, 0x37, 0xd9, 0xf9, 0xbd, + 0x22, 0xca, 0x1e, 0x18, 0xdd, 0xb9, 0xb1, 0x28, 0xb3, 0x02, 0x88, 0x21, 0x21, 0xa1, 0x95, 0x00, + 0xf1, 0xb7, 0x2a, 0x8d, 0xcf, 0xda, 0x9e, 0x75, 0x44, 0x08, 0xb7, 0x88, 0x9f, 0x92, 0xd8, 0x03, + 0xdf, 0x8a, 0x58, 0x4c, 0x25, 0x4b, 0x4e, 0x1e, 0x3f, 0xfb, 0xaf, 0x58, 0x35, 0xad, 0xfc, 0x1b, + 0x1b, 0x8e, 0xb5, 0x70, 0xfe, 0x1c, 0x9c, 0xff, 0x72, 0x44, 0xef, 0x41, 0x2b, 0x55, 0x2f, 0x7e, + 0x89, 0x36, 0xf5, 0x97, 0x48, 0x5b, 0xfe, 0x1e, 0xe4, 0x8d, 0xbf, 0x4c, 0x77, 0x66, 0x76, 0x3d, + 0x7d, 0xee, 0xca, 0x77, 0x33, 0x08, 0x6e, 0xb6, 0x73, 0xd6, 0xed, 0x21, 0x56, 0x9d, 0x08, 0xea, + 0xf5, 0x99, 0x46, 0x79, 0x85, 0x24, 0xb1, 0x4f, 0x92, 0x71, 0xde, 0x2f, 0xcc, 0xea, 0x1b, 0x78, + 0xbb, 0x4b, 0x66, 0x30, 0x6d, 0x8e, 0xe8, 0xbe, 0xdd, 0x85, 0x7e, 0x81, 0xb4, 0xb5, 0x69, 0xd0, + 0xdd, 0x19, 0x1f, 0x14, 0xd2, 0xab, 0xb7, 0x07, 0xea, 0x7f, 0x1c, 0x77, 0xff, 0x11, 0xdc, 0xfc, + 0x47, 0x30, 0xa6, 0xb0, 0x12, 0x3f, 0xa2, 0xb1, 0x22, 0xdd, 0x31, 0x3f, 0x9d, 0x42, 0x2a, 0x8e, + 0x85, 0x84, 0x68, 0x02, 0x92, 0x84, 0xa1, 0x1b, 0x0b, 0xb7, 0xcf, 0x5a, 0xde, 0x3a, 0x3b, 0x45, + 0x73, 0x8f, 0x4e, 0x11, 0x9e, 0xd5, 0xd8, 0x4f, 0xf5, 0xdf, 0xc1, 0x93, 0x27, 0x0f, 0x8d, 0xe2, + 0x27, 0xe8, 0xab, 0x7f, 0xd0, 0xc5, 0x15, 0x2e, 0x5c, 0x5e, 0xe1, 0xc2, 0xf5, 0x15, 0x46, 0x7f, + 0x67, 0x18, 0xfd, 0x9f, 0x61, 0x74, 0x9e, 0x61, 0x74, 0x91, 0x61, 0xf4, 0x34, 0xc3, 0xe8, 0x79, + 0x86, 0x0b, 0xd7, 0x19, 0x46, 0xff, 0x76, 0x70, 0xe1, 0xac, 0x83, 0xd1, 0x45, 0x07, 0x17, 0x2e, + 0x3b, 0xb8, 0xf0, 0xeb, 0x5e, 0xc0, 0xf8, 0x1f, 0x81, 0x9d, 0xb2, 0xee, 0x82, 0x49, 0x88, 0xdd, + 0x12, 0x8e, 0x3a, 0x34, 0x58, 0x12, 0x59, 0x3c, 0x61, 0x29, 0xf5, 0x21, 0xb1, 0xfa, 0xb2, 0xc3, + 0xeb, 0x01, 0x73, 0xa0, 0x2d, 0xf3, 0x0d, 0x37, 0xb9, 0x8e, 0xeb, 0xf3, 0x6a, 0xcf, 0x6d, 0xbf, + 0x0e, 0x00, 0x00, 0xff, 0xff, 0x7e, 0xb2, 0x25, 0xcc, 0x4e, 0x06, 0x00, 0x00, } func (this *ApiEndpointsStatsNSReq) Equal(that interface{}) bool { @@ -292,6 +356,30 @@ func (this *ApiEndpointsStatsNSReq) Equal(that interface{}) bool { } return true } +func (this *ApiEndpointsStatsAllNSReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointsStatsAllNSReq) + if !ok { + that2, ok := that.(ApiEndpointsStatsAllNSReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + return true +} func (this *ApiEndpointsStatsNSRsp) Equal(that interface{}) bool { if that == nil { return this == nil @@ -339,6 +427,16 @@ func (this *ApiEndpointsStatsNSReq) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *ApiEndpointsStatsAllNSReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&namespace.ApiEndpointsStatsAllNSReq{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} func (this *ApiEndpointsStatsNSRsp) GoString() string { if this == nil { return "nil" @@ -374,11 +472,21 @@ const _ = grpc.SupportPackageIsVersion4 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type NamespaceMLCustomAPIClient interface { + // SuggestValues + // + // x-displayName: "Suggest Values" + // Returns suggested values for the specified field in the given Create/Replace/Custom request + SuggestValues(ctx context.Context, in *SuggestValuesReq, opts ...grpc.CallOption) (*SuggestValuesResp, error) // Get Api Endpoints Stats for Namespace // // x-displayName: "Get Api Endpoints Stats for Namespace" // Get api endpoints stats for the given Namespace GetApiEndpointsStats(ctx context.Context, in *ApiEndpointsStatsNSReq, opts ...grpc.CallOption) (*ApiEndpointsStatsNSRsp, error) + // Get Api Endpoints Stats for All Namespaces + // + // x-displayName: "Get Api Endpoints Stats for All Namespaces" + // Get api endpoints stats for all Namespaces. This API is specific to system namespace + GetApiEndpointsStatsAllNamespaces(ctx context.Context, in *ApiEndpointsStatsAllNSReq, opts ...grpc.CallOption) (*ApiEndpointsStatsNSRsp, error) } type namespaceMLCustomAPIClient struct { @@ -389,6 +497,15 @@ func NewNamespaceMLCustomAPIClient(cc *grpc.ClientConn) NamespaceMLCustomAPIClie return &namespaceMLCustomAPIClient{cc} } +func (c *namespaceMLCustomAPIClient) SuggestValues(ctx context.Context, in *SuggestValuesReq, opts ...grpc.CallOption) (*SuggestValuesResp, error) { + out := new(SuggestValuesResp) + err := c.cc.Invoke(ctx, "/ves.io.schema.namespace.NamespaceMLCustomAPI/SuggestValues", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *namespaceMLCustomAPIClient) GetApiEndpointsStats(ctx context.Context, in *ApiEndpointsStatsNSReq, opts ...grpc.CallOption) (*ApiEndpointsStatsNSRsp, error) { out := new(ApiEndpointsStatsNSRsp) err := c.cc.Invoke(ctx, "/ves.io.schema.namespace.NamespaceMLCustomAPI/GetApiEndpointsStats", in, out, opts...) @@ -398,27 +515,70 @@ func (c *namespaceMLCustomAPIClient) GetApiEndpointsStats(ctx context.Context, i return out, nil } +func (c *namespaceMLCustomAPIClient) GetApiEndpointsStatsAllNamespaces(ctx context.Context, in *ApiEndpointsStatsAllNSReq, opts ...grpc.CallOption) (*ApiEndpointsStatsNSRsp, error) { + out := new(ApiEndpointsStatsNSRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.namespace.NamespaceMLCustomAPI/GetApiEndpointsStatsAllNamespaces", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // NamespaceMLCustomAPIServer is the server API for NamespaceMLCustomAPI service. type NamespaceMLCustomAPIServer interface { + // SuggestValues + // + // x-displayName: "Suggest Values" + // Returns suggested values for the specified field in the given Create/Replace/Custom request + SuggestValues(context.Context, *SuggestValuesReq) (*SuggestValuesResp, error) // Get Api Endpoints Stats for Namespace // // x-displayName: "Get Api Endpoints Stats for Namespace" // Get api endpoints stats for the given Namespace GetApiEndpointsStats(context.Context, *ApiEndpointsStatsNSReq) (*ApiEndpointsStatsNSRsp, error) + // Get Api Endpoints Stats for All Namespaces + // + // x-displayName: "Get Api Endpoints Stats for All Namespaces" + // Get api endpoints stats for all Namespaces. This API is specific to system namespace + GetApiEndpointsStatsAllNamespaces(context.Context, *ApiEndpointsStatsAllNSReq) (*ApiEndpointsStatsNSRsp, error) } // UnimplementedNamespaceMLCustomAPIServer can be embedded to have forward compatible implementations. type UnimplementedNamespaceMLCustomAPIServer struct { } +func (*UnimplementedNamespaceMLCustomAPIServer) SuggestValues(ctx context.Context, req *SuggestValuesReq) (*SuggestValuesResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method SuggestValues not implemented") +} func (*UnimplementedNamespaceMLCustomAPIServer) GetApiEndpointsStats(ctx context.Context, req *ApiEndpointsStatsNSReq) (*ApiEndpointsStatsNSRsp, error) { return nil, status.Errorf(codes.Unimplemented, "method GetApiEndpointsStats not implemented") } +func (*UnimplementedNamespaceMLCustomAPIServer) GetApiEndpointsStatsAllNamespaces(ctx context.Context, req *ApiEndpointsStatsAllNSReq) (*ApiEndpointsStatsNSRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetApiEndpointsStatsAllNamespaces not implemented") +} func RegisterNamespaceMLCustomAPIServer(s *grpc.Server, srv NamespaceMLCustomAPIServer) { s.RegisterService(&_NamespaceMLCustomAPI_serviceDesc, srv) } +func _NamespaceMLCustomAPI_SuggestValues_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SuggestValuesReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(NamespaceMLCustomAPIServer).SuggestValues(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.namespace.NamespaceMLCustomAPI/SuggestValues", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(NamespaceMLCustomAPIServer).SuggestValues(ctx, req.(*SuggestValuesReq)) + } + return interceptor(ctx, in, info, handler) +} + func _NamespaceMLCustomAPI_GetApiEndpointsStats_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ApiEndpointsStatsNSReq) if err := dec(in); err != nil { @@ -437,14 +597,40 @@ func _NamespaceMLCustomAPI_GetApiEndpointsStats_Handler(srv interface{}, ctx con return interceptor(ctx, in, info, handler) } +func _NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ApiEndpointsStatsAllNSReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(NamespaceMLCustomAPIServer).GetApiEndpointsStatsAllNamespaces(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.namespace.NamespaceMLCustomAPI/GetApiEndpointsStatsAllNamespaces", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(NamespaceMLCustomAPIServer).GetApiEndpointsStatsAllNamespaces(ctx, req.(*ApiEndpointsStatsAllNSReq)) + } + return interceptor(ctx, in, info, handler) +} + var _NamespaceMLCustomAPI_serviceDesc = grpc.ServiceDesc{ ServiceName: "ves.io.schema.namespace.NamespaceMLCustomAPI", HandlerType: (*NamespaceMLCustomAPIServer)(nil), Methods: []grpc.MethodDesc{ + { + MethodName: "SuggestValues", + Handler: _NamespaceMLCustomAPI_SuggestValues_Handler, + }, { MethodName: "GetApiEndpointsStats", Handler: _NamespaceMLCustomAPI_GetApiEndpointsStats_Handler, }, + { + MethodName: "GetApiEndpointsStatsAllNamespaces", + Handler: _NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "ves.io/schema/namespace/public_customapi_asterix.proto", @@ -489,6 +675,36 @@ func (m *ApiEndpointsStatsNSReq) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } +func (m *ApiEndpointsStatsAllNSReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ApiEndpointsStatsAllNSReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointsStatsAllNSReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapiAsterix(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *ApiEndpointsStatsNSRsp) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -567,6 +783,19 @@ func (m *ApiEndpointsStatsNSReq) Size() (n int) { return n } +func (m *ApiEndpointsStatsAllNSReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapiAsterix(uint64(l)) + } + return n +} + func (m *ApiEndpointsStatsNSRsp) Size() (n int) { if m == nil { return 0 @@ -608,6 +837,16 @@ func (this *ApiEndpointsStatsNSReq) String() string { }, "") return s } +func (this *ApiEndpointsStatsAllNSReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointsStatsAllNSReq{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `}`, + }, "") + return s +} func (this *ApiEndpointsStatsNSRsp) String() string { if this == nil { return "nil" @@ -747,6 +986,91 @@ func (m *ApiEndpointsStatsNSReq) Unmarshal(dAtA []byte) error { } return nil } +func (m *ApiEndpointsStatsAllNSReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAsterix + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ApiEndpointsStatsAllNSReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ApiEndpointsStatsAllNSReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapiAsterix + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapiAsterix + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapiAsterix + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapiAsterix(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapiAsterix + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapiAsterix + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *ApiEndpointsStatsNSRsp) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.gw.go b/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.gw.go index 1afb03a76..f476fbc9a 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.gw.go +++ b/pbgo/extschema/schema/namespace/public_customapi_asterix.pb.gw.go @@ -28,6 +28,76 @@ var _ status.Status var _ = runtime.String var _ = utilities.NewDoubleArray +func request_NamespaceMLCustomAPI_SuggestValues_0(ctx context.Context, marshaler runtime.Marshaler, client NamespaceMLCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SuggestValuesReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := client.SuggestValues(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_NamespaceMLCustomAPI_SuggestValues_0(ctx context.Context, marshaler runtime.Marshaler, server NamespaceMLCustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SuggestValuesReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + msg, err := server.SuggestValues(ctx, &protoReq) + return msg, metadata, err + +} + func request_NamespaceMLCustomAPI_GetApiEndpointsStats_0(ctx context.Context, marshaler runtime.Marshaler, client NamespaceMLCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ApiEndpointsStatsNSReq var metadata runtime.ServerMetadata @@ -98,11 +168,65 @@ func local_request_NamespaceMLCustomAPI_GetApiEndpointsStats_0(ctx context.Conte } +func request_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0(ctx context.Context, marshaler runtime.Marshaler, client NamespaceMLCustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ApiEndpointsStatsAllNSReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.GetApiEndpointsStatsAllNamespaces(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0(ctx context.Context, marshaler runtime.Marshaler, server NamespaceMLCustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ApiEndpointsStatsAllNSReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.GetApiEndpointsStatsAllNamespaces(ctx, &protoReq) + return msg, metadata, err + +} + // RegisterNamespaceMLCustomAPIHandlerServer registers the http handlers for service NamespaceMLCustomAPI to "mux". // UnaryRPC :call NamespaceMLCustomAPIServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. func RegisterNamespaceMLCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server NamespaceMLCustomAPIServer) error { + mux.Handle("POST", pattern_NamespaceMLCustomAPI_SuggestValues_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_NamespaceMLCustomAPI_SuggestValues_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_NamespaceMLCustomAPI_SuggestValues_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("POST", pattern_NamespaceMLCustomAPI_GetApiEndpointsStats_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -123,6 +247,26 @@ func RegisterNamespaceMLCustomAPIHandlerServer(ctx context.Context, mux *runtime }) + mux.Handle("POST", pattern_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -164,6 +308,26 @@ func RegisterNamespaceMLCustomAPIHandler(ctx context.Context, mux *runtime.Serve // "NamespaceMLCustomAPIClient" to call the correct interceptors. func RegisterNamespaceMLCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client NamespaceMLCustomAPIClient) error { + mux.Handle("POST", pattern_NamespaceMLCustomAPI_SuggestValues_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_NamespaceMLCustomAPI_SuggestValues_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_NamespaceMLCustomAPI_SuggestValues_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("POST", pattern_NamespaceMLCustomAPI_GetApiEndpointsStats_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -184,13 +348,41 @@ func RegisterNamespaceMLCustomAPIHandlerClient(ctx context.Context, mux *runtime }) + mux.Handle("POST", pattern_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } var ( + pattern_NamespaceMLCustomAPI_SuggestValues_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "suggest-values"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_NamespaceMLCustomAPI_GetApiEndpointsStats_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "namespace", "api_endpoints", "stats"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "api_endpoints", "all_ns_stats"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( + forward_NamespaceMLCustomAPI_SuggestValues_0 = runtime.ForwardResponseMessage + forward_NamespaceMLCustomAPI_GetApiEndpointsStats_0 = runtime.ForwardResponseMessage + + forward_NamespaceMLCustomAPI_GetApiEndpointsStatsAllNamespaces_0 = runtime.ForwardResponseMessage ) diff --git a/pbgo/extschema/schema/namespace/public_customapi_asterix.vesapi.go b/pbgo/extschema/schema/namespace/public_customapi_asterix.vesapi.go index 57ccede66..60720b5fc 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_asterix.vesapi.go +++ b/pbgo/extschema/schema/namespace/public_customapi_asterix.vesapi.go @@ -43,6 +43,24 @@ func (c *NamespaceMLCustomAPIGrpcClient) doRPCGetApiEndpointsStats(ctx context.C return rsp, err } +func (c *NamespaceMLCustomAPIGrpcClient) doRPCGetApiEndpointsStatsAllNamespaces(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &ApiEndpointsStatsAllNSReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.namespace.ApiEndpointsStatsAllNSReq", yamlReq) + } + rsp, err := c.grpcClient.GetApiEndpointsStatsAllNamespaces(ctx, req, opts...) + return rsp, err +} + +func (c *NamespaceMLCustomAPIGrpcClient) doRPCSuggestValues(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &SuggestValuesReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.namespace.SuggestValuesReq", yamlReq) + } + rsp, err := c.grpcClient.SuggestValues(ctx, req, opts...) + return rsp, err +} + func (c *NamespaceMLCustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { rpcFn, exists := c.rpcFns[rpc] if !exists { @@ -75,6 +93,10 @@ func NewNamespaceMLCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) rpcFns["GetApiEndpointsStats"] = ccl.doRPCGetApiEndpointsStats + rpcFns["GetApiEndpointsStatsAllNamespaces"] = ccl.doRPCGetApiEndpointsStatsAllNamespaces + + rpcFns["SuggestValues"] = ccl.doRPCSuggestValues + ccl.rpcFns = rpcFns return ccl @@ -174,6 +196,175 @@ func (c *NamespaceMLCustomAPIRestClient) doRPCGetApiEndpointsStats(ctx context.C return pbRsp, nil } +func (c *NamespaceMLCustomAPIRestClient) doRPCGetApiEndpointsStatsAllNamespaces(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &ApiEndpointsStatsAllNSReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.namespace.ApiEndpointsStatsAllNSReq: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &ApiEndpointsStatsNSRsp{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.namespace.ApiEndpointsStatsNSRsp", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *NamespaceMLCustomAPIRestClient) doRPCSuggestValues(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &SuggestValuesReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.namespace.SuggestValuesReq: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("field_path", fmt.Sprintf("%v", req.FieldPath)) + q.Add("match_value", fmt.Sprintf("%v", req.MatchValue)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + q.Add("request_body", fmt.Sprintf("%v", req.RequestBody)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &SuggestValuesResp{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.namespace.SuggestValuesResp", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + func (c *NamespaceMLCustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { rpcFn, exists := c.rpcFns[rpc] if !exists { @@ -200,6 +391,10 @@ func NewNamespaceMLCustomAPIRestClient(baseURL string, hc http.Client) server.Cu rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) rpcFns["GetApiEndpointsStats"] = ccl.doRPCGetApiEndpointsStats + rpcFns["GetApiEndpointsStatsAllNamespaces"] = ccl.doRPCGetApiEndpointsStatsAllNamespaces + + rpcFns["SuggestValues"] = ccl.doRPCSuggestValues + ccl.rpcFns = rpcFns return ccl @@ -216,6 +411,14 @@ func (c *namespaceMLCustomAPIInprocClient) GetApiEndpointsStats(ctx context.Cont ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStats") return c.NamespaceMLCustomAPIServer.GetApiEndpointsStats(ctx, in) } +func (c *namespaceMLCustomAPIInprocClient) GetApiEndpointsStatsAllNamespaces(ctx context.Context, in *ApiEndpointsStatsAllNSReq, opts ...grpc.CallOption) (*ApiEndpointsStatsNSRsp, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces") + return c.NamespaceMLCustomAPIServer.GetApiEndpointsStatsAllNamespaces(ctx, in) +} +func (c *namespaceMLCustomAPIInprocClient) SuggestValues(ctx context.Context, in *SuggestValuesReq, opts ...grpc.CallOption) (*SuggestValuesResp, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.namespace.NamespaceMLCustomAPI.SuggestValues") + return c.NamespaceMLCustomAPIServer.SuggestValues(ctx, in) +} func NewNamespaceMLCustomAPIInprocClient(svc svcfw.Service) NamespaceMLCustomAPIClient { return &namespaceMLCustomAPIInprocClient{NamespaceMLCustomAPIServer: NewNamespaceMLCustomAPIServer(svc)} @@ -287,6 +490,104 @@ func (s *namespaceMLCustomAPISrv) GetApiEndpointsStats(ctx context.Context, in * return rsp, nil } +func (s *namespaceMLCustomAPISrv) GetApiEndpointsStatsAllNamespaces(ctx context.Context, in *ApiEndpointsStatsAllNSReq) (*ApiEndpointsStatsNSRsp, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.namespace.NamespaceMLCustomAPI") + cah, ok := ah.(NamespaceMLCustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *NamespaceMLCustomAPIServer", ah) + } + + var ( + rsp *ApiEndpointsStatsNSRsp + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces' operation on 'namespace'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.GetApiEndpointsStatsAllNamespaces(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.namespace.ApiEndpointsStatsNSRsp", rsp)...) + + return rsp, nil +} +func (s *namespaceMLCustomAPISrv) SuggestValues(ctx context.Context, in *SuggestValuesReq) (*SuggestValuesResp, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.namespace.NamespaceMLCustomAPI") + cah, ok := ah.(NamespaceMLCustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *NamespaceMLCustomAPIServer", ah) + } + + var ( + rsp *SuggestValuesResp + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.namespace.SuggestValuesReq", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'NamespaceMLCustomAPI.SuggestValues' operation on 'namespace'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.namespace.NamespaceMLCustomAPI.SuggestValues"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.SuggestValues(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.namespace.SuggestValuesResp", rsp)...) + + return rsp, nil +} func NewNamespaceMLCustomAPIServer(svc svcfw.Service) NamespaceMLCustomAPIServer { return &namespaceMLCustomAPISrv{svc: svc} @@ -311,6 +612,90 @@ var NamespaceMLCustomAPISwaggerJSON string = `{ ], "tags": [], "paths": { + "/public/namespaces/system/api_endpoints/all_ns_stats": { + "post": { + "summary": "Get Api Endpoints Stats for All Namespaces", + "description": "Get api endpoints stats for all Namespaces. This API is specific to system namespace", + "operationId": "ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/namespaceApiEndpointsStatsNSRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/namespaceApiEndpointsStatsAllNSReq" + } + } + ], + "tags": [ + "NamespaceMLCustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-namespace-namespacemlcustomapi-getapiendpointsstatsallnamespaces" + }, + "x-ves-proto-rpc": "ves.io.schema.namespace.NamespaceMLCustomAPI.GetApiEndpointsStatsAllNamespaces" + }, + "x-displayname": "NamespaceMLCustomAPI", + "x-ves-proto-service": "ves.io.schema.namespace.NamespaceMLCustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, "/public/namespaces/{namespace}/api_endpoints/stats": { "post": { "summary": "Get Api Endpoints Stats for Namespace", @@ -402,9 +787,117 @@ var NamespaceMLCustomAPISwaggerJSON string = `{ "x-displayname": "NamespaceMLCustomAPI", "x-ves-proto-service": "ves.io.schema.namespace.NamespaceMLCustomAPI", "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/{namespace}/suggest-values": { + "post": { + "summary": "Suggest Values", + "description": "Returns suggested values for the specified field in the given Create/Replace/Custom request", + "operationId": "ves.io.schema.namespace.NamespaceMLCustomAPI.SuggestValues", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/schemanamespaceSuggestValuesResp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"foobar\"\nNamespace in which the suggestions are scoped.", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/namespaceSuggestValuesReq" + } + } + ], + "tags": [ + "NamespaceMLCustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-namespace-namespacemlcustomapi-suggestvalues" + }, + "x-ves-proto-rpc": "ves.io.schema.namespace.NamespaceMLCustomAPI.SuggestValues" + }, + "x-displayname": "NamespaceMLCustomAPI", + "x-ves-proto-service": "ves.io.schema.namespace.NamespaceMLCustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" } }, "definitions": { + "namespaceApiEndpointsStatsAllNSReq": { + "type": "object", + "description": "Request shape for GET Api Endpoints Stats All Namespaces", + "title": "Api Endpoints stats all namespaces request", + "x-displayname": "Api Endpoints Stats All Namespaces Request", + "x-ves-proto-message": "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq", + "properties": { + "namespace": { + "type": "string", + "description": " Namespace of the App type for current request\n\nExample: - \"shared\"-", + "title": "Namespace", + "x-displayname": "Namespace", + "x-ves-example": "shared" + } + } + }, "namespaceApiEndpointsStatsNSReq": { "type": "object", "description": "Request shape for GET Api Endpoints Stats", @@ -474,6 +967,163 @@ var NamespaceMLCustomAPISwaggerJSON string = `{ "x-displayname": "Total Endpoints" } } + }, + "namespaceSuggestValuesReq": { + "type": "object", + "description": "Request body of SuggestValues request", + "title": "SuggestValuesReq", + "x-displayname": "Request for SuggestValues", + "x-ves-proto-message": "ves.io.schema.namespace.SuggestValuesReq", + "properties": { + "field_path": { + "type": "string", + "description": " JSON path of the field for which the suggested values are being requested.\n\nExample: - \"spec.rule_choice.rule_list.rules[2].spec.api_group_matcher.match\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 1024\n", + "title": "field_path", + "maxLength": 1024, + "x-displayname": "Field Path", + "x-ves-example": "spec.rule_choice.rule_list.rules[2].spec.api_group_matcher.match", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "1024" + } + }, + "match_value": { + "type": "string", + "description": " A substring that must be present in either the value or description of each SuggestedItem in the response.\n\nExample: - \"some-substring\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "match_value", + "maxLength": 256, + "x-displayname": "Match Value", + "x-ves-example": "some-substring", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "namespace": { + "type": "string", + "description": " Namespace in which the suggestions are scoped.\n\nExample: - \"foobar\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "foobar" + }, + "request_body": { + "description": " Body of the Create/Replace/Custom request in whose context the suggested values for the field are being requested.", + "title": "request_body", + "$ref": "#/definitions/protobufAny", + "x-displayname": "Request Body" + } + } + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "schemanamespaceSuggestValuesResp": { + "type": "object", + "description": "Response body of SuggestValues request", + "title": "SuggestValuesResp", + "x-displayname": "Response for SuggestValues", + "x-ves-proto-message": "ves.io.schema.namespace.SuggestValuesResp", + "properties": { + "items": { + "type": "array", + "description": " List of suggested items.", + "title": "item_lists", + "items": { + "$ref": "#/definitions/schemanamespaceSuggestedItem" + }, + "x-displayname": "Suggested Items" + } + } + }, + "schemanamespaceSuggestedItem": { + "type": "object", + "description": "A tuple with a suggested value and it's description.", + "title": "SuggestedItem", + "x-displayname": "Suggested Item", + "x-ves-oneof-field-value_choice": "[\"ref_value\",\"str_value\"]", + "x-ves-proto-message": "ves.io.schema.namespace.SuggestedItem", + "properties": { + "description": { + "type": "string", + "description": " Optional description for the suggested value.", + "title": "description", + "x-displayname": "Description" + }, + "ref_value": { + "description": "Exclusive with [str_value]\n", + "title": "str_value", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Object Reference" + }, + "str_value": { + "type": "string", + "description": "Exclusive with [ref_value]\n", + "title": "str_value", + "x-displayname": "String" + }, + "value": { + "type": "string", + "description": " Suggested value for the field.\n Should use value_choice.str_value instead.", + "title": "value", + "x-displayname": "Value" + } + } + }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } } }, "x-displayname": "Namespace", diff --git a/pbgo/extschema/schema/namespace/public_customapi_asterix.vesmsg.go b/pbgo/extschema/schema/namespace/public_customapi_asterix.vesmsg.go index 20075e99f..d781ea05d 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_asterix.vesmsg.go +++ b/pbgo/extschema/schema/namespace/public_customapi_asterix.vesmsg.go @@ -24,6 +24,84 @@ var ( // augmented methods on protoc/std generated struct +func (m *ApiEndpointsStatsAllNSReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ApiEndpointsStatsAllNSReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ApiEndpointsStatsAllNSReq) DeepCopy() *ApiEndpointsStatsAllNSReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ApiEndpointsStatsAllNSReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ApiEndpointsStatsAllNSReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ApiEndpointsStatsAllNSReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ApiEndpointsStatsAllNSReqValidator().Validate(ctx, m, opts...) +} + +type ValidateApiEndpointsStatsAllNSReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateApiEndpointsStatsAllNSReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ApiEndpointsStatsAllNSReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ApiEndpointsStatsAllNSReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultApiEndpointsStatsAllNSReqValidator = func() *ValidateApiEndpointsStatsAllNSReq { + v := &ValidateApiEndpointsStatsAllNSReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ApiEndpointsStatsAllNSReqValidator() db.Validator { + return DefaultApiEndpointsStatsAllNSReqValidator +} + +// augmented methods on protoc/std generated struct + func (m *ApiEndpointsStatsNSReq) ToJSON() (string, error) { return codec.ToJSON(m) } diff --git a/pbgo/extschema/schema/namespace/public_customapi_olympus.pb.go b/pbgo/extschema/schema/namespace/public_customapi_olympus.pb.go index 1329e07f6..248d07f14 100644 --- a/pbgo/extschema/schema/namespace/public_customapi_olympus.pb.go +++ b/pbgo/extschema/schema/namespace/public_customapi_olympus.pb.go @@ -44,35 +44,37 @@ func init() { } var fileDescriptor_f3dc8142bf4ac9d0 = []byte{ - // 444 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0x31, 0x6b, 0x14, 0x41, - 0x14, 0xc7, 0x77, 0x2e, 0x60, 0x71, 0x62, 0x73, 0x16, 0xc6, 0x4d, 0x18, 0xe4, 0x6c, 0x34, 0xb0, - 0x33, 0xa0, 0x60, 0x61, 0xa7, 0xb1, 0xb1, 0x30, 0x88, 0x82, 0x85, 0xcd, 0x31, 0xbb, 0xf7, 0x32, - 0x19, 0x9c, 0xdd, 0x37, 0xee, 0xcc, 0xac, 0x5e, 0x27, 0x69, 0x6c, 0x05, 0x1b, 0x3f, 0x82, 0x9f, - 0x40, 0x04, 0x9b, 0x74, 0xa6, 0x92, 0x03, 0x9b, 0x94, 0xde, 0xac, 0x85, 0x65, 0x3e, 0x82, 0x30, - 0x77, 0xa7, 0xd9, 0xc5, 0x80, 0xdd, 0x7b, 0xfc, 0x7f, 0xef, 0xbf, 0x6f, 0xff, 0xf3, 0x86, 0x77, - 0x1a, 0xb0, 0x4c, 0x21, 0xb7, 0xc5, 0x01, 0x94, 0x82, 0x57, 0xa2, 0x04, 0x6b, 0x44, 0x01, 0xdc, - 0xf8, 0x5c, 0xab, 0x62, 0x52, 0x78, 0xeb, 0xb0, 0x14, 0x46, 0x4d, 0x50, 0xcf, 0x4a, 0xe3, 0x2d, - 0x33, 0x35, 0x3a, 0x1c, 0x5d, 0x59, 0xce, 0xb1, 0xe5, 0x1c, 0xfb, 0x33, 0x97, 0x66, 0x52, 0xb9, - 0x03, 0x9f, 0xb3, 0x02, 0x4b, 0x2e, 0x51, 0x22, 0x8f, 0x7c, 0xee, 0xf7, 0x63, 0x17, 0x9b, 0x58, - 0x2d, 0x7d, 0xd2, 0x6d, 0x89, 0x28, 0x35, 0x70, 0x61, 0x14, 0x17, 0x55, 0x85, 0x4e, 0x38, 0x85, - 0xd5, 0xea, 0x2b, 0xe9, 0xf5, 0xf3, 0xb6, 0x73, 0x33, 0x03, 0x6b, 0x68, 0xab, 0x0b, 0xa1, 0x39, - 0xeb, 0x30, 0xee, 0x8a, 0x0e, 0x0d, 0x6a, 0x94, 0xb3, 0x8e, 0xc1, 0xd5, 0x1e, 0x73, 0x46, 0xda, - 0xee, 0x4a, 0x8d, 0xd0, 0x6a, 0x2a, 0x1c, 0xfc, 0xdb, 0xbc, 0x01, 0x0b, 0x55, 0xd3, 0x5b, 0xe0, - 0x5a, 0x8f, 0x51, 0xf0, 0x6a, 0xd2, 0x21, 0x6e, 0xb5, 0x64, 0xb8, 0xb5, 0xb7, 0xfe, 0xb3, 0x5d, - 0x8d, 0x7e, 0xfa, 0x40, 0x38, 0xb1, 0x1b, 0x83, 0xbf, 0xf7, 0xf8, 0xe1, 0xe8, 0x13, 0x19, 0x5e, - 0x7a, 0xea, 0xa5, 0x04, 0xeb, 0x9e, 0x09, 0xed, 0xc1, 0x8e, 0x6e, 0xb2, 0x73, 0xd2, 0x67, 0x1d, - 0xee, 0x09, 0xbc, 0x4c, 0x77, 0xfe, 0x17, 0xb5, 0x66, 0xbc, 0x77, 0xfc, 0x79, 0x40, 0xc2, 0xd7, - 0xcd, 0xcb, 0x0d, 0xd8, 0x4c, 0x61, 0x26, 0xa1, 0x82, 0x5a, 0xe8, 0xac, 0x06, 0x31, 0x3d, 0xfc, - 0xfe, 0xf3, 0xfd, 0x20, 0x1b, 0xdf, 0x58, 0xdd, 0xc5, 0xdf, 0xa7, 0xb0, 0xdc, 0xce, 0xac, 0x83, - 0x92, 0xdb, 0xa5, 0x5f, 0xd6, 0x44, 0xc3, 0xbb, 0x64, 0x27, 0xbd, 0x78, 0xf4, 0x85, 0x6c, 0x1c, - 0x7e, 0xdb, 0xdc, 0xf8, 0x30, 0x20, 0xf7, 0xdf, 0x92, 0xf9, 0x82, 0x26, 0x27, 0x0b, 0x9a, 0x9c, - 0x2e, 0x28, 0x79, 0x13, 0x28, 0xf9, 0x18, 0x28, 0x39, 0x0e, 0x94, 0xcc, 0x03, 0x25, 0x3f, 0x02, - 0x25, 0xbf, 0x02, 0x4d, 0x4e, 0x03, 0x25, 0xef, 0x5a, 0x9a, 0x1c, 0xb5, 0x94, 0xcc, 0x5b, 0x9a, - 0x9c, 0xb4, 0x34, 0x79, 0xfe, 0x48, 0xa2, 0x79, 0x21, 0x59, 0x83, 0xda, 0x41, 0x5d, 0x0b, 0xe6, - 0x2d, 0x8f, 0xc5, 0x3e, 0xd6, 0x65, 0x66, 0x6a, 0x6c, 0xd4, 0x14, 0xea, 0x6c, 0x2d, 0x73, 0x93, - 0x4b, 0xe4, 0xf0, 0xda, 0xad, 0x12, 0xef, 0xdf, 0x4e, 0x7e, 0x21, 0xc6, 0x7e, 0xfb, 0x77, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x48, 0x5a, 0x11, 0x54, 0xfb, 0x02, 0x00, 0x00, + // 479 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0xb1, 0x6b, 0x14, 0x41, + 0x14, 0xc6, 0x77, 0x2e, 0x60, 0x71, 0x62, 0x73, 0x8d, 0xf1, 0x12, 0x06, 0x39, 0x1b, 0x0d, 0xce, + 0x0e, 0x28, 0x5a, 0xd8, 0x69, 0x6c, 0x2c, 0x14, 0x51, 0xb0, 0x10, 0xe1, 0x78, 0xbb, 0xfb, 0x6e, + 0x32, 0xb8, 0x3b, 0x6f, 0x9c, 0x99, 0x5d, 0x73, 0x5d, 0x48, 0x63, 0x2b, 0x58, 0xe8, 0x9f, 0x60, + 0x63, 0x2f, 0xd8, 0xa4, 0x33, 0x95, 0x1c, 0xd8, 0xa4, 0xf4, 0xf6, 0x2c, 0x2c, 0xf3, 0x27, 0x08, + 0x7b, 0x77, 0x31, 0x7b, 0x24, 0x60, 0x37, 0x8f, 0xef, 0xf7, 0xbe, 0xfd, 0xf6, 0xbd, 0xd7, 0xbd, + 0x5b, 0xa1, 0x8f, 0x35, 0x49, 0x9f, 0xee, 0x60, 0x01, 0xd2, 0x40, 0x81, 0xde, 0x42, 0x8a, 0xd2, + 0x96, 0x49, 0xae, 0xd3, 0x61, 0x5a, 0xfa, 0x40, 0x05, 0x58, 0x3d, 0xa4, 0x7c, 0x5c, 0xd8, 0xd2, + 0xc7, 0xd6, 0x51, 0xa0, 0xde, 0xe5, 0x79, 0x5f, 0x3c, 0xef, 0x8b, 0x4f, 0xfa, 0xfa, 0x42, 0xe9, + 0xb0, 0x53, 0x26, 0x71, 0x4a, 0x85, 0x54, 0xa4, 0x48, 0x36, 0x7c, 0x52, 0x8e, 0x9a, 0xaa, 0x29, + 0x9a, 0xd7, 0xdc, 0xa7, 0xbf, 0xa9, 0x88, 0x54, 0x8e, 0x12, 0xac, 0x96, 0x60, 0x0c, 0x05, 0x08, + 0x9a, 0xcc, 0xe2, 0x2b, 0xfd, 0x6b, 0xe7, 0xa5, 0x0b, 0x63, 0x8b, 0x4b, 0x68, 0xa3, 0x0d, 0x91, + 0x3d, 0xed, 0x30, 0x68, 0x8b, 0x81, 0x2c, 0xe5, 0xa4, 0xc6, 0x2d, 0x83, 0x2b, 0x2b, 0xcc, 0x29, + 0x69, 0xb3, 0x2d, 0x55, 0x90, 0xeb, 0x0c, 0x02, 0x9e, 0x6d, 0x5e, 0xa1, 0x47, 0x53, 0xad, 0x04, + 0xb8, 0xba, 0xc2, 0x68, 0x7c, 0x3b, 0x6c, 0x11, 0xb7, 0xbe, 0x74, 0xba, 0x1b, 0x4f, 0x96, 0x7f, + 0xb6, 0x9d, 0x53, 0x99, 0x3d, 0x84, 0x00, 0xdb, 0xcd, 0xe0, 0xef, 0x3f, 0x7d, 0xd4, 0xdb, 0xeb, + 0x74, 0x2f, 0x3d, 0x2f, 0x95, 0x42, 0x1f, 0x5e, 0x40, 0x5e, 0xa2, 0xef, 0xdd, 0x88, 0xcf, 0x99, + 0x7e, 0xdc, 0xe2, 0x9e, 0xe1, 0x9b, 0xfe, 0xd6, 0xff, 0xa2, 0xde, 0x0e, 0x3e, 0xb2, 0xc3, 0xaf, + 0x1d, 0x56, 0x7f, 0x5f, 0x7f, 0x35, 0xba, 0xb3, 0x9b, 0x0a, 0xaf, 0x03, 0x8a, 0x02, 0x0c, 0x28, + 0x2c, 0xd0, 0x04, 0x91, 0x80, 0xd7, 0xa9, 0x28, 0xc8, 0xe8, 0x40, 0xee, 0xe6, 0x99, 0x88, 0x0f, + 0x60, 0x32, 0x70, 0xd9, 0x09, 0x55, 0xa1, 0x17, 0x9a, 0x84, 0x42, 0x83, 0x0e, 0x72, 0xe1, 0x10, + 0xb2, 0xfd, 0x9f, 0xbf, 0x3f, 0x74, 0xc4, 0xe0, 0xfa, 0xe2, 0xc2, 0xfe, 0x2d, 0xd5, 0x4b, 0x3f, + 0xf6, 0x01, 0x0b, 0xe9, 0xe7, 0xc9, 0x44, 0xd5, 0x44, 0xbb, 0xc7, 0xb6, 0xfa, 0x17, 0x0f, 0xbe, + 0xb1, 0xb5, 0xfd, 0x1f, 0xeb, 0x6b, 0x9f, 0x3a, 0xec, 0xc1, 0x3b, 0x36, 0x99, 0xf2, 0xe8, 0x68, + 0xca, 0xa3, 0xe3, 0x29, 0x67, 0x7b, 0x35, 0x67, 0x9f, 0x6b, 0xce, 0x0e, 0x6b, 0xce, 0x26, 0x35, + 0x67, 0xbf, 0x6a, 0xce, 0xfe, 0xd4, 0x3c, 0x3a, 0xae, 0x39, 0x7b, 0x3f, 0xe3, 0xd1, 0xc1, 0x8c, + 0xb3, 0xc9, 0x8c, 0x47, 0x47, 0x33, 0x1e, 0xbd, 0x7c, 0xac, 0xc8, 0xbe, 0x56, 0x71, 0x45, 0x79, + 0x40, 0xe7, 0x20, 0x2e, 0xbd, 0x6c, 0x1e, 0x23, 0x72, 0x85, 0xb0, 0x8e, 0x2a, 0x9d, 0xa1, 0x13, + 0x4b, 0x59, 0xda, 0x44, 0x91, 0xc4, 0xdd, 0xb0, 0xd8, 0xdd, 0xea, 0x15, 0x26, 0x17, 0x9a, 0x05, + 0xde, 0xfe, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xea, 0xed, 0xcd, 0x30, 0x45, 0x03, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/net.pb.go b/pbgo/extschema/schema/net.pb.go index 9aef2b358..8ab8f2a39 100644 --- a/pbgo/extschema/schema/net.pb.go +++ b/pbgo/extschema/schema/net.pb.go @@ -801,76 +801,76 @@ func init() { proto.RegisterFile("ves.io/schema/net.proto", fileDescriptor_34085 func init() { golang_proto.RegisterFile("ves.io/schema/net.proto", fileDescriptor_34085f3b2015fb7b) } var fileDescriptor_34085f3b2015fb7b = []byte{ - // 1091 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xcf, 0x6f, 0xe3, 0x54, - 0x17, 0xcd, 0x8b, 0xd3, 0x4c, 0xf3, 0xda, 0xb4, 0x96, 0x17, 0x9d, 0x7c, 0xf9, 0x8a, 0x49, 0x3d, - 0xed, 0x34, 0xfd, 0x91, 0xa4, 0x4d, 0x4b, 0x80, 0x41, 0x02, 0x92, 0x36, 0x0c, 0x86, 0x4c, 0x52, - 0x39, 0x69, 0x46, 0x1a, 0x60, 0x2c, 0xc7, 0x7e, 0x75, 0xad, 0x26, 0xb1, 0x65, 0x3b, 0x4e, 0x19, - 0xa8, 0x14, 0x56, 0x88, 0x15, 0x28, 0x5b, 0xfe, 0x01, 0xc4, 0x06, 0x96, 0x88, 0xce, 0xa2, 0x4b, - 0xc4, 0xaa, 0xcb, 0x2e, 0x69, 0xba, 0x01, 0x36, 0x8c, 0x58, 0xcd, 0x12, 0xf9, 0xd9, 0x49, 0x9d, - 0x34, 0x68, 0x10, 0x62, 0x95, 0x77, 0x7d, 0xce, 0xb9, 0xf7, 0xbc, 0xe3, 0x1b, 0x19, 0xde, 0xb6, - 0x90, 0x91, 0x54, 0xd4, 0x94, 0x21, 0x1e, 0xa2, 0x86, 0x90, 0x6a, 0x22, 0x33, 0xa9, 0xe9, 0xaa, - 0xa9, 0x52, 0x61, 0x07, 0x48, 0x3a, 0x40, 0x34, 0x21, 0x2b, 0xe6, 0x61, 0xab, 0x96, 0x14, 0xd5, - 0x46, 0x4a, 0x56, 0x65, 0x35, 0x85, 0x59, 0xb5, 0xd6, 0x01, 0xae, 0x70, 0x81, 0x4f, 0x8e, 0x3a, - 0xfa, 0xff, 0xe1, 0xb6, 0xaa, 0x66, 0x2a, 0x6a, 0xd3, 0x70, 0xc1, 0xf9, 0x61, 0xd0, 0x12, 0xea, - 0x8a, 0x24, 0x98, 0xc8, 0x45, 0x63, 0x23, 0xa8, 0x82, 0xda, 0xfc, 0x90, 0x9e, 0x49, 0xc3, 0x99, - 0x07, 0x82, 0x98, 0x95, 0x24, 0x1d, 0x19, 0x46, 0xe5, 0x63, 0x0d, 0x51, 0x31, 0x48, 0x34, 0x04, - 0x31, 0x02, 0x62, 0x20, 0x1e, 0xca, 0xcd, 0x3c, 0x3f, 0x05, 0xbe, 0x1f, 0x7f, 0x3b, 0x23, 0x26, - 0x74, 0xe2, 0x07, 0x00, 0x38, 0x1b, 0x62, 0xb6, 0xe1, 0x2c, 0xab, 0x59, 0xdb, 0x5e, 0xd1, 0x02, - 0x0c, 0x08, 0x92, 0xa4, 0xbb, 0xaa, 0x70, 0x5f, 0x15, 0xd0, 0xfd, 0xc7, 0x80, 0xc3, 0x10, 0xf3, - 0x08, 0xce, 0xd8, 0xaa, 0x72, 0xab, 0xd6, 0x44, 0x26, 0x16, 0x2d, 0xc1, 0xa0, 0xa6, 0xa3, 0x03, - 0xe5, 0x78, 0xbc, 0xcc, 0x05, 0xed, 0xde, 0x5a, 0x1d, 0x35, 0x23, 0xfe, 0x18, 0x88, 0x87, 0x3d, - 0xa4, 0x55, 0x7f, 0x24, 0xc6, 0x61, 0x88, 0x79, 0x05, 0x3b, 0xca, 0x78, 0x1d, 0x31, 0x43, 0x8e, - 0xbc, 0xf7, 0xe8, 0x80, 0xbe, 0xa5, 0x0f, 0xb1, 0xa5, 0x8c, 0xc7, 0xd2, 0xdd, 0x11, 0x4b, 0xa3, - 0xba, 0xbe, 0x27, 0x66, 0xc8, 0xd3, 0x35, 0x6b, 0x95, 0x88, 0x74, 0x80, 0x6b, 0xea, 0x73, 0x3f, - 0x0c, 0xb3, 0x9a, 0xd7, 0xd3, 0x36, 0x0c, 0x28, 0x9a, 0xb5, 0x8d, 0x7b, 0x4f, 0xa5, 0xe9, 0xe4, - 0xd0, 0x5a, 0x24, 0x47, 0x32, 0x7d, 0xd7, 0xc7, 0x61, 0x36, 0xd5, 0xc2, 0xaa, 0x0c, 0x9e, 0x35, - 0x56, 0xe5, 0xbd, 0x77, 0xee, 0xad, 0x6f, 0x9f, 0x82, 0x37, 0xe0, 0xb4, 0xd0, 0x36, 0x78, 0x4b, - 0x13, 0x79, 0x43, 0x31, 0x11, 0x9c, 0x15, 0x9e, 0xb4, 0x74, 0xc4, 0x5b, 0x4d, 0x64, 0x3a, 0x0f, - 0x30, 0x6c, 0xca, 0x6d, 0xb7, 0x92, 0x45, 0x6d, 0x40, 0x76, 0xc7, 0x66, 0xee, 0xad, 0xfd, 0xf9, - 0x26, 0xd8, 0xfa, 0xf9, 0x14, 0xdc, 0x81, 0x0b, 0xf0, 0x96, 0x3b, 0x21, 0x3d, 0x07, 0x43, 0xb6, - 0xa7, 0xa4, 0x1d, 0x1f, 0x3e, 0x66, 0xf0, 0x31, 0x37, 0x07, 0x09, 0x0b, 0xe9, 0xd4, 0xec, 0xd9, - 0x29, 0x00, 0xe7, 0xa7, 0x80, 0xe8, 0x9d, 0x02, 0x62, 0x73, 0x3d, 0xfd, 0x5e, 0x60, 0x92, 0x20, - 0x03, 0xcc, 0xf7, 0x7e, 0x38, 0xcd, 0x6a, 0x9e, 0x98, 0xb7, 0x86, 0x82, 0x78, 0x69, 0x4c, 0x10, - 0xd7, 0xe4, 0x41, 0x0e, 0xe6, 0x50, 0x0e, 0x63, 0x44, 0x9e, 0x17, 0xf9, 0xdf, 0xc5, 0xf0, 0xd0, - 0x8d, 0xa1, 0x04, 0x17, 0x61, 0x70, 0x0f, 0xbf, 0xfd, 0x74, 0x14, 0x4e, 0xe1, 0x14, 0x9c, 0x65, - 0xc0, 0x45, 0xa6, 0x5f, 0x2c, 0xc3, 0xb0, 0xc3, 0x8a, 0x15, 0x50, 0x53, 0x36, 0x0f, 0x07, 0x91, - 0xd9, 0x3b, 0xe1, 0x46, 0x66, 0x1f, 0x5f, 0x10, 0xd9, 0x77, 0x00, 0xce, 0x38, 0x7d, 0x0a, 0x8a, - 0xe1, 0x84, 0x96, 0xf1, 0xec, 0x26, 0x11, 0x0f, 0xe5, 0xe8, 0xfe, 0xd6, 0xc1, 0x2e, 0xb8, 0xc5, - 0x4c, 0xe8, 0xc4, 0x73, 0x00, 0xec, 0x32, 0xd8, 0x05, 0x04, 0xd9, 0xf1, 0x0f, 0x76, 0x15, 0x39, - 0x06, 0x79, 0x57, 0xec, 0xc7, 0xe2, 0xdd, 0xdf, 0x4f, 0xee, 0x48, 0xa8, 0xa1, 0x6e, 0xae, 0x9b, - 0xc8, 0x30, 0xd7, 0x45, 0xdd, 0x5c, 0x37, 0x4c, 0x41, 0x56, 0x9a, 0xf2, 0xba, 0xa1, 0x1e, 0x98, - 0x35, 0xa1, 0x79, 0xc4, 0x37, 0x90, 0x38, 0x3a, 0xa2, 0xe3, 0x1f, 0x1a, 0x01, 0xed, 0xc6, 0x8e, - 0x4d, 0xe6, 0x4b, 0x00, 0x61, 0xb6, 0x6d, 0x54, 0x35, 0xd1, 0x76, 0x4c, 0x75, 0x00, 0x0c, 0xda, - 0x61, 0x2a, 0x92, 0x6b, 0x57, 0xc1, 0xbd, 0x9e, 0x82, 0x99, 0x0d, 0x70, 0x0f, 0x8a, 0x75, 0xb5, - 0x25, 0x25, 0x24, 0xc1, 0x14, 0xec, 0x76, 0xa1, 0x2e, 0x08, 0x32, 0x01, 0xdd, 0x1f, 0x79, 0xdb, - 0xae, 0xd6, 0xba, 0x20, 0xce, 0xdc, 0xd5, 0x17, 0xd3, 0xcc, 0xe3, 0xb8, 0xa5, 0x89, 0x89, 0x95, - 0xf8, 0x07, 0x42, 0xe2, 0xc9, 0x46, 0xe2, 0xf5, 0x8f, 0x3e, 0x79, 0xed, 0xe4, 0xd3, 0xc1, 0x79, - 0xf3, 0xd5, 0x93, 0x95, 0x45, 0x8f, 0x19, 0xfc, 0xff, 0xeb, 0x02, 0x7f, 0x04, 0x70, 0x13, 0x96, - 0x26, 0xb2, 0x12, 0xf3, 0x35, 0x80, 0xe1, 0x6c, 0xdb, 0x70, 0xb6, 0x02, 0x9b, 0xfa, 0x02, 0xc0, - 0x90, 0x81, 0xcb, 0x6b, 0x5f, 0xf5, 0x7f, 0xea, 0x2b, 0xd9, 0x05, 0x6b, 0xcc, 0x8a, 0xbe, 0x9c, - 0x5e, 0x7a, 0x1c, 0x77, 0x9a, 0xfc, 0x0b, 0x6b, 0x93, 0x8e, 0x92, 0x95, 0x56, 0xff, 0x20, 0x20, - 0x55, 0x55, 0x74, 0xb3, 0x25, 0xd4, 0x8b, 0xc8, 0x6c, 0xab, 0xfa, 0x11, 0x7e, 0xcb, 0x34, 0x8c, - 0x56, 0x59, 0xae, 0xb2, 0x9f, 0x2d, 0xf0, 0xc5, 0x7c, 0xe5, 0x61, 0x89, 0x7b, 0x9f, 0x2f, 0xb3, - 0x95, 0x3c, 0x5f, 0x28, 0xed, 0x64, 0x0b, 0xa4, 0x8f, 0x5a, 0x82, 0x0b, 0x7f, 0x8f, 0xf3, 0x6c, - 0xb1, 0xcc, 0xee, 0xe6, 0x49, 0x40, 0xcd, 0xc3, 0xc8, 0x28, 0x6d, 0x2f, 0xcf, 0x61, 0x2a, 0xe9, - 0xa7, 0x5e, 0x86, 0x73, 0x37, 0xd0, 0xfd, 0x5c, 0x81, 0xdd, 0x21, 0x89, 0x28, 0xd1, 0x39, 0x01, - 0x54, 0xf4, 0x26, 0xe1, 0x7e, 0xa1, 0x94, 0xcb, 0x16, 0xc8, 0x00, 0x15, 0x83, 0xf3, 0x63, 0x1d, - 0x94, 0xf3, 0x5c, 0x95, 0xdd, 0xc9, 0x93, 0x13, 0xd4, 0xd2, 0x4d, 0x46, 0x35, 0xcf, 0xf1, 0x6c, - 0xb1, 0x92, 0xe7, 0x8a, 0xd9, 0x02, 0x19, 0x74, 0x86, 0x24, 0xe0, 0xca, 0x0b, 0xaf, 0xc2, 0x97, - 0xf6, 0x2b, 0xf8, 0x4a, 0xb7, 0xa8, 0x18, 0xbc, 0x3d, 0x4a, 0x67, 0xf7, 0xf8, 0xec, 0x7e, 0xa5, - 0x44, 0x4e, 0x3a, 0x0d, 0x37, 0xe0, 0xf2, 0x8d, 0xb9, 0xa5, 0x42, 0x25, 0xbb, 0x5b, 0xe4, 0xf7, - 0x38, 0xb6, 0x9a, 0xad, 0xe4, 0xfb, 0xcf, 0xc9, 0x90, 0xa3, 0x18, 0xe3, 0xb4, 0xcc, 0x55, 0x33, - 0x03, 0x1a, 0x74, 0x68, 0x0c, 0xfc, 0xdf, 0x98, 0xd1, 0xef, 0x64, 0x73, 0x1c, 0xbb, 0x43, 0x4e, - 0x39, 0x9c, 0x31, 0xf6, 0xca, 0xf9, 0xfb, 0x0f, 0xf2, 0xc5, 0x0a, 0x39, 0x8d, 0x19, 0xb9, 0xcf, - 0xc0, 0xf9, 0x25, 0xed, 0xbb, 0xb8, 0xa4, 0x7d, 0xcf, 0x2e, 0x69, 0xd0, 0xe9, 0xd1, 0xe0, 0x9b, - 0x1e, 0x0d, 0x7e, 0xea, 0xd1, 0xe0, 0xbc, 0x47, 0x83, 0x8b, 0x1e, 0x0d, 0x7e, 0xe9, 0xd1, 0xe0, - 0xd7, 0x1e, 0xed, 0x7b, 0xd6, 0xa3, 0xc1, 0x57, 0x57, 0xb4, 0xef, 0xec, 0x8a, 0x06, 0xe7, 0x57, - 0xb4, 0xef, 0xe2, 0x8a, 0xf6, 0x3d, 0xda, 0x91, 0x55, 0xed, 0x48, 0x4e, 0x5a, 0x6a, 0xdd, 0x44, - 0xba, 0x2e, 0x24, 0x5b, 0x46, 0x0a, 0x1f, 0x0e, 0x54, 0xbd, 0x91, 0xd0, 0x74, 0xd5, 0x52, 0x24, - 0xa4, 0x27, 0xfa, 0x70, 0x4a, 0xab, 0xc9, 0x6a, 0x0a, 0x1d, 0x9b, 0xee, 0xb7, 0xdf, 0xf9, 0xa9, - 0x05, 0xf1, 0x67, 0x7f, 0xeb, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x78, 0x8b, 0x72, 0xe2, 0xac, - 0x08, 0x00, 0x00, + // 1096 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xcf, 0x73, 0xe2, 0xf4, + 0x1b, 0xe6, 0x25, 0x94, 0x5d, 0x3e, 0x2d, 0x6d, 0x26, 0x87, 0x2e, 0x5f, 0xbe, 0x35, 0xd2, 0xd8, + 0x6e, 0x69, 0xcb, 0x8f, 0x96, 0x56, 0xd4, 0x75, 0x46, 0x85, 0x2e, 0xae, 0x51, 0x16, 0x3a, 0x81, + 0xb2, 0x33, 0xab, 0x6e, 0x26, 0x24, 0x29, 0x8d, 0x05, 0x92, 0x49, 0x02, 0xd4, 0xd5, 0xce, 0xe0, + 0xc9, 0xf1, 0xa4, 0xc3, 0xd5, 0x7f, 0xc0, 0xf1, 0xe4, 0xc1, 0x83, 0x63, 0xf7, 0xd0, 0xa3, 0xe3, + 0xa9, 0xc7, 0x1e, 0x2d, 0xbd, 0xa8, 0x17, 0x77, 0x3c, 0xed, 0xd1, 0xc9, 0x27, 0x81, 0x06, 0x8a, + 0xb3, 0x8e, 0xe3, 0x89, 0xcf, 0x9b, 0xe7, 0x79, 0xde, 0xf7, 0xf9, 0x3c, 0x79, 0x19, 0x40, 0xb7, + 0xda, 0xb2, 0x91, 0x50, 0xd4, 0xa4, 0x21, 0x1e, 0xc8, 0x0d, 0x21, 0xd9, 0x94, 0xcd, 0x84, 0xa6, + 0xab, 0xa6, 0x4a, 0x05, 0x6d, 0x20, 0x61, 0x03, 0xe1, 0x78, 0x4d, 0x31, 0x0f, 0x5a, 0xd5, 0x84, + 0xa8, 0x36, 0x92, 0x35, 0xb5, 0xa6, 0x26, 0x31, 0xab, 0xda, 0xda, 0xc7, 0x15, 0x2e, 0xf0, 0xc9, + 0x56, 0x87, 0xff, 0x3f, 0xda, 0x56, 0xd5, 0x4c, 0x45, 0x6d, 0x1a, 0x0e, 0xb8, 0x30, 0x0a, 0xb6, + 0x85, 0xba, 0x22, 0x09, 0xa6, 0xec, 0xa0, 0x91, 0x31, 0x54, 0x91, 0x3b, 0xfc, 0x88, 0x9e, 0x49, + 0xa1, 0xd9, 0xfb, 0x82, 0x98, 0x91, 0x24, 0x5d, 0x36, 0x8c, 0xf2, 0xc7, 0x9a, 0x4c, 0x45, 0x10, + 0xd1, 0x10, 0xc4, 0x10, 0x44, 0x20, 0x1a, 0xc8, 0xce, 0x3e, 0x3b, 0x01, 0xcf, 0x8f, 0xbf, 0x9d, + 0x12, 0x53, 0x3a, 0xf1, 0x03, 0x00, 0x67, 0x41, 0xcc, 0x36, 0x9a, 0x63, 0xb5, 0xf6, 0xb6, 0x5b, + 0xb4, 0x88, 0x7c, 0x82, 0x24, 0xe9, 0x8e, 0x2a, 0x38, 0x50, 0xf9, 0x74, 0xef, 0x11, 0x70, 0x18, + 0x62, 0x1e, 0xa2, 0x59, 0x4b, 0x55, 0x6a, 0x55, 0x9b, 0xb2, 0x89, 0x45, 0xcb, 0xc8, 0xaf, 0xe9, + 0xf2, 0xbe, 0x72, 0x34, 0x59, 0xe6, 0x80, 0x56, 0x6f, 0xad, 0x2e, 0x37, 0x43, 0xde, 0x08, 0x44, + 0x83, 0x2e, 0xd2, 0x9a, 0x37, 0x14, 0xe1, 0x30, 0xc4, 0xbc, 0x8c, 0x1d, 0xa5, 0xdd, 0x8e, 0x98, + 0x11, 0x47, 0xee, 0x7b, 0x74, 0x61, 0x60, 0xe9, 0x03, 0x6c, 0x29, 0xed, 0xb2, 0x74, 0x7b, 0xcc, + 0xd2, 0xb8, 0x6e, 0xe0, 0x89, 0x19, 0xf1, 0x74, 0xc5, 0x5a, 0x23, 0x42, 0x5d, 0x70, 0x4c, 0x7d, + 0xee, 0x45, 0x41, 0x56, 0x73, 0x7b, 0xda, 0x46, 0x3e, 0x45, 0x6b, 0x6f, 0xe3, 0xde, 0xd3, 0x29, + 0x3a, 0x31, 0xb2, 0x16, 0x89, 0xb1, 0x4c, 0xdf, 0xf1, 0x70, 0x98, 0x4d, 0xb5, 0xb0, 0x2a, 0x8d, + 0x67, 0x4d, 0x54, 0xb9, 0xef, 0x9d, 0x7d, 0xf3, 0xdb, 0x27, 0xf0, 0x3a, 0x9a, 0x11, 0x3a, 0x06, + 0xdf, 0xd6, 0x44, 0xde, 0x50, 0x4c, 0x19, 0xcd, 0x09, 0x8f, 0x5b, 0xba, 0xcc, 0xb7, 0x9b, 0xb2, + 0x69, 0x3f, 0xc0, 0xb0, 0x59, 0xeb, 0x38, 0x55, 0x4d, 0xd4, 0x86, 0x64, 0x67, 0x6c, 0xfa, 0xce, + 0xfa, 0x9f, 0x6f, 0xc0, 0xd6, 0xcf, 0x27, 0xf0, 0x12, 0x5a, 0x44, 0x37, 0x9c, 0x09, 0xa9, 0x79, + 0x14, 0xb0, 0x3c, 0x25, 0xac, 0xf8, 0xf0, 0x31, 0x8d, 0x8f, 0xd9, 0x79, 0x44, 0xb4, 0x65, 0x9d, + 0x9a, 0x3b, 0x3d, 0x01, 0x38, 0x3b, 0x01, 0xa2, 0x7f, 0x02, 0xc4, 0x66, 0x2c, 0xf5, 0xae, 0xef, + 0x26, 0x41, 0xfa, 0x98, 0xef, 0xbc, 0x68, 0x86, 0xd5, 0x5c, 0x31, 0x6f, 0x8d, 0x04, 0xf1, 0xc2, + 0x84, 0x20, 0xae, 0xc8, 0xc3, 0x1c, 0xcc, 0x91, 0x1c, 0x26, 0x88, 0x5c, 0x2f, 0xf2, 0xbf, 0x8b, + 0xe1, 0x81, 0x13, 0x43, 0x11, 0x2d, 0x21, 0xff, 0x2e, 0x7e, 0xfb, 0xa9, 0x30, 0x9a, 0xc6, 0x29, + 0xd8, 0xcb, 0x80, 0x8b, 0xf4, 0xa0, 0x58, 0x41, 0x41, 0x9b, 0x15, 0xc9, 0xcb, 0xcd, 0x9a, 0x79, + 0x30, 0x8c, 0xcc, 0xda, 0x09, 0x27, 0x32, 0xeb, 0xf8, 0x9c, 0xc8, 0xbe, 0x07, 0x34, 0x6b, 0xf7, + 0xc9, 0x2b, 0x86, 0x1d, 0x5a, 0xda, 0xb5, 0x9b, 0x44, 0x34, 0x90, 0xa5, 0x07, 0x5b, 0x87, 0x7a, + 0x70, 0x83, 0x99, 0xd2, 0x89, 0x67, 0x00, 0x56, 0xe9, 0xef, 0x01, 0x41, 0x76, 0xbd, 0xc3, 0x5d, + 0xfd, 0xc8, 0x36, 0xc8, 0x3b, 0x62, 0x2f, 0x16, 0xb3, 0xbf, 0x1f, 0x47, 0x25, 0xb9, 0xa1, 0x6e, + 0xc6, 0x4c, 0xd9, 0x30, 0x63, 0xa2, 0x6e, 0xc6, 0x0c, 0x53, 0xa8, 0x29, 0xcd, 0x5a, 0xcc, 0x50, + 0xf7, 0xcd, 0xaa, 0xd0, 0x3c, 0xe4, 0x1b, 0xb2, 0x18, 0xd3, 0x74, 0x55, 0x1a, 0x9f, 0xd3, 0xf5, + 0x8e, 0xcc, 0x41, 0x56, 0x77, 0xdb, 0x2b, 0xf3, 0x25, 0x20, 0x94, 0xe9, 0x18, 0x15, 0x4d, 0xb4, + 0x6c, 0x53, 0x5d, 0x40, 0x7e, 0x2b, 0x51, 0x45, 0x72, 0x3c, 0x2b, 0xb8, 0xd7, 0x13, 0x98, 0xdd, + 0x80, 0x3b, 0x48, 0xac, 0xab, 0x2d, 0x29, 0x2e, 0x09, 0xa6, 0x60, 0xb5, 0x0b, 0xf4, 0xc0, 0xcf, + 0xf8, 0x74, 0x6f, 0xe8, 0x2d, 0xab, 0x5a, 0xef, 0x41, 0x94, 0xb9, 0xad, 0x2f, 0xa5, 0x98, 0x47, + 0xd1, 0xb6, 0x26, 0xc6, 0x57, 0xa3, 0xef, 0x0b, 0xf1, 0xc7, 0x1b, 0xf1, 0xd7, 0x3e, 0xfc, 0xe4, + 0xd5, 0xe3, 0x4f, 0x87, 0xe7, 0xcd, 0x57, 0x8e, 0x57, 0x97, 0x5c, 0x66, 0xf0, 0x97, 0xb0, 0x07, + 0xde, 0x10, 0x70, 0x53, 0x6d, 0x4d, 0x64, 0x25, 0xe6, 0x6b, 0x40, 0xc1, 0x4c, 0xc7, 0xb0, 0x57, + 0x03, 0x9b, 0xfa, 0x02, 0x50, 0xc0, 0xc0, 0xe5, 0x95, 0xaf, 0xfa, 0x3f, 0xf5, 0x95, 0xe8, 0xc1, + 0x3a, 0xb3, 0xaa, 0xaf, 0xa4, 0x96, 0x1f, 0x45, 0xed, 0x26, 0xff, 0xc2, 0xda, 0x4d, 0x5b, 0xc9, + 0x4a, 0x6b, 0x7f, 0x10, 0x88, 0xaa, 0x28, 0xba, 0xd9, 0x12, 0xea, 0x05, 0xd9, 0xec, 0xa8, 0xfa, + 0x21, 0x7e, 0xd5, 0x34, 0x0a, 0x57, 0x58, 0xae, 0xbc, 0x97, 0xc9, 0xf3, 0x85, 0x5c, 0xf9, 0x41, + 0x91, 0x7b, 0x8f, 0x2f, 0xb1, 0xe5, 0x1c, 0x9f, 0x2f, 0xee, 0x64, 0xf2, 0xa4, 0x87, 0x5a, 0x46, + 0x8b, 0x7f, 0x8f, 0xf3, 0x6c, 0xa1, 0xc4, 0xde, 0xcd, 0x91, 0x40, 0x2d, 0xa0, 0xd0, 0x38, 0x6d, + 0x37, 0xc7, 0x61, 0x2a, 0xe9, 0xa5, 0x5e, 0x44, 0xf3, 0xd7, 0xd0, 0xbd, 0x6c, 0x9e, 0xdd, 0x21, + 0x89, 0x30, 0xd1, 0x3d, 0x06, 0x2a, 0x7c, 0x9d, 0x70, 0x2f, 0x5f, 0xcc, 0x66, 0xf2, 0xa4, 0x8f, + 0x8a, 0xa0, 0x85, 0x89, 0x0e, 0x4a, 0x39, 0xae, 0xc2, 0xee, 0xe4, 0xc8, 0x29, 0x6a, 0xf9, 0x3a, + 0xa3, 0x92, 0xe3, 0x78, 0xb6, 0x50, 0xce, 0x71, 0x85, 0x4c, 0x9e, 0xf4, 0xdb, 0x43, 0xe2, 0x68, + 0xf5, 0xb9, 0x57, 0xe1, 0x8b, 0x7b, 0x65, 0x7c, 0xa5, 0x1b, 0x54, 0x04, 0xdd, 0x1a, 0xa7, 0xb3, + 0xbb, 0x7c, 0x66, 0xaf, 0x5c, 0x24, 0x6f, 0xda, 0x0d, 0x37, 0xd0, 0xca, 0xb5, 0xb9, 0xc5, 0x7c, + 0x39, 0x73, 0xb7, 0xc0, 0xef, 0x72, 0x6c, 0x25, 0x53, 0xce, 0x0d, 0x9e, 0x93, 0x01, 0x5b, 0x31, + 0xc1, 0x69, 0x89, 0xab, 0xa4, 0x87, 0x34, 0x64, 0xd3, 0x18, 0xf4, 0xbf, 0x09, 0xa3, 0xdf, 0xce, + 0x64, 0x39, 0x76, 0x87, 0x9c, 0xb6, 0x39, 0x13, 0xec, 0x95, 0x72, 0xf7, 0xee, 0xe7, 0x0a, 0x65, + 0x72, 0x06, 0x33, 0xb2, 0x9f, 0xc1, 0xd9, 0x05, 0xed, 0x39, 0xbf, 0xa0, 0x3d, 0x4f, 0x2f, 0x68, + 0xe8, 0xf6, 0x69, 0xf8, 0xa6, 0x4f, 0xc3, 0x4f, 0x7d, 0x1a, 0xce, 0xfa, 0x34, 0x9c, 0xf7, 0x69, + 0xf8, 0xa5, 0x4f, 0xc3, 0xaf, 0x7d, 0xda, 0xf3, 0xb4, 0x4f, 0xc3, 0x57, 0x97, 0xb4, 0xe7, 0xf4, + 0x92, 0x86, 0xb3, 0x4b, 0xda, 0x73, 0x7e, 0x49, 0x7b, 0x1e, 0xee, 0xd4, 0x54, 0xed, 0xb0, 0x96, + 0x68, 0xab, 0x75, 0x53, 0xd6, 0x75, 0x21, 0xd1, 0x32, 0x92, 0xf8, 0xb0, 0xaf, 0xea, 0x8d, 0xb8, + 0xa6, 0xab, 0x6d, 0x45, 0x92, 0xf5, 0xf8, 0x00, 0x4e, 0x6a, 0xd5, 0x9a, 0x9a, 0x94, 0x8f, 0x4c, + 0xe7, 0x0f, 0x80, 0xfd, 0x51, 0xf5, 0xe3, 0xdf, 0xfe, 0xad, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, + 0xe7, 0x19, 0x72, 0x7f, 0xb1, 0x08, 0x00, 0x00, } func (x VirtualNetworkType) String() string { diff --git a/pbgo/extschema/schema/network_connector/crudapi/api.vesapi.go b/pbgo/extschema/schema/network_connector/crudapi/api.vesapi.go index 60135e5a4..c2d2bebab 100644 --- a/pbgo/extschema/schema/network_connector/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/network_connector/crudapi/api.vesapi.go @@ -3522,10 +3522,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_connector/object.pb.go b/pbgo/extschema/schema/network_connector/object.pb.go index 5f34cf4f6..869bed7d1 100644 --- a/pbgo/extschema/schema/network_connector/object.pb.go +++ b/pbgo/extschema/schema/network_connector/object.pb.go @@ -246,46 +246,47 @@ func init() { } var fileDescriptor_d46e6b67e2a89e40 = []byte{ - // 612 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0xd4, 0x40, - 0x18, 0xc6, 0x77, 0xba, 0x9b, 0x85, 0x0c, 0x04, 0xb1, 0x7a, 0xa8, 0xa8, 0x23, 0x59, 0x2f, 0x18, - 0x69, 0x6b, 0x30, 0xc6, 0x80, 0x7f, 0x0e, 0x60, 0x82, 0x07, 0x90, 0x64, 0x17, 0x2f, 0x5e, 0x36, - 0xd3, 0xd9, 0x77, 0x4b, 0x65, 0xdb, 0x69, 0x66, 0xa6, 0x05, 0x0e, 0x26, 0x9e, 0x3d, 0x99, 0xf8, - 0x25, 0x8c, 0xf1, 0xee, 0x55, 0x38, 0x79, 0x24, 0x9c, 0x38, 0x4a, 0xf7, 0xe2, 0x91, 0x8f, 0x60, - 0x98, 0x6e, 0x09, 0x0b, 0x6b, 0xd6, 0xec, 0x6d, 0x3a, 0xef, 0xef, 0x79, 0x3a, 0xcf, 0xbc, 0x33, - 0x83, 0xe7, 0x53, 0x90, 0x4e, 0xc0, 0x5d, 0xc9, 0xb6, 0x20, 0xa4, 0x6e, 0x04, 0x6a, 0x87, 0x8b, - 0xed, 0x26, 0xe3, 0x51, 0x04, 0x4c, 0x71, 0xe1, 0x72, 0xef, 0x3d, 0x30, 0xe5, 0xc4, 0x82, 0x2b, - 0x6e, 0xde, 0xcb, 0x69, 0x27, 0xa7, 0x9d, 0x2b, 0xf4, 0x8c, 0xed, 0x07, 0x6a, 0x2b, 0xf1, 0x1c, - 0xc6, 0x43, 0xd7, 0xe7, 0x3e, 0x77, 0xb5, 0xce, 0x4b, 0xda, 0xfa, 0x4b, 0x7f, 0xe8, 0x51, 0xee, - 0x37, 0xf3, 0x70, 0xd8, 0xdf, 0xd5, 0x5e, 0x0c, 0xb2, 0x07, 0xdf, 0xee, 0x87, 0x79, 0xac, 0x02, - 0x1e, 0x15, 0xc5, 0x5b, 0xfd, 0xc5, 0x8b, 0xba, 0x5a, 0x7f, 0x29, 0x05, 0x09, 0x51, 0xda, 0x2f, - 0xaf, 0x7d, 0xaa, 0xe0, 0xea, 0x86, 0x4e, 0x6a, 0x2e, 0xe2, 0xf1, 0x10, 0x14, 0x6d, 0x51, 0x45, - 0x2d, 0x34, 0x8b, 0xe6, 0x26, 0x16, 0xee, 0x3a, 0xfd, 0xb1, 0x73, 0x70, 0x1d, 0x14, 0xdd, 0xdc, - 0x8b, 0xa1, 0x7e, 0x8e, 0x9b, 0x6b, 0xf8, 0x9a, 0xdc, 0x93, 0x0a, 0xc2, 0xe6, 0xb9, 0x83, 0xa1, - 0x1d, 0xee, 0x5f, 0x72, 0x68, 0x68, 0xea, 0x92, 0xcf, 0x54, 0xae, 0x5d, 0x2f, 0xdc, 0x5e, 0xe0, - 0x8a, 0x8c, 0x81, 0x59, 0x65, 0x6d, 0xf1, 0xc0, 0x19, 0xb2, 0xf7, 0x4e, 0x23, 0x06, 0xa6, 0x8d, - 0xb4, 0x6c, 0xe9, 0x87, 0x71, 0xb0, 0x6f, 0x19, 0xd3, 0xe8, 0x68, 0xdf, 0xfa, 0x6e, 0xe0, 0x45, - 0x5c, 0x5e, 0x05, 0x65, 0x2e, 0xb4, 0x9f, 0xec, 0x32, 0x5b, 0x02, 0x4b, 0x04, 0x84, 0x20, 0xb7, - 0x6c, 0x8f, 0xca, 0x80, 0xd9, 0x21, 0x8f, 0x02, 0xc5, 0xc5, 0xfc, 0x6c, 0x0a, 0xd2, 0x0e, 0xb8, - 0xdd, 0x33, 0xb7, 0x05, 0xd0, 0x16, 0x7e, 0x86, 0xc7, 0xea, 0x10, 0x77, 0x28, 0x03, 0xf3, 0xd1, - 0x60, 0x79, 0x22, 0xe1, 0xaa, 0x76, 0x47, 0x04, 0x0a, 0xf0, 0x12, 0xae, 0xae, 0x08, 0xa0, 0x6a, - 0x44, 0xed, 0x2b, 0xe8, 0xc0, 0x88, 0xda, 0xca, 0x5a, 0x20, 0x47, 0x0a, 0x5c, 0xdb, 0xc4, 0xe3, - 0xc5, 0x5e, 0x9a, 0xaf, 0xf1, 0x98, 0xcf, 0x9a, 0xba, 0x0f, 0x79, 0x2b, 0xdd, 0xa1, 0x7d, 0x58, - 0xed, 0x70, 0x8f, 0x76, 0xce, 0xbb, 0x51, 0xf5, 0xd9, 0xd9, 0xb8, 0x76, 0x60, 0xe0, 0xc9, 0x86, - 0xa2, 0x2a, 0x91, 0xff, 0x7d, 0xd0, 0x72, 0x7c, 0xc0, 0x41, 0x6b, 0xe0, 0x89, 0xfc, 0x5e, 0x36, - 0x05, 0xb4, 0xa5, 0x65, 0xcc, 0x96, 0xe7, 0x26, 0x16, 0xee, 0x0c, 0x3c, 0xa6, 0x75, 0x68, 0x9f, - 0x89, 0x97, 0x6f, 0x7e, 0xfb, 0x70, 0xfd, 0xca, 0x5a, 0xeb, 0x98, 0x17, 0x90, 0x34, 0x9f, 0x63, - 0xcc, 0x78, 0xd4, 0x0a, 0xf4, 0xbd, 0xb0, 0xca, 0x03, 0x3d, 0x57, 0x0a, 0x40, 0x2f, 0xe8, 0x02, - 0x6f, 0x6e, 0xe0, 0xaa, 0xd4, 0xcb, 0xb5, 0x2a, 0x3a, 0xcb, 0xd3, 0xa1, 0xfb, 0xf4, 0x26, 0x9f, - 0x59, 0x29, 0x26, 0xf2, 0xb4, 0xf5, 0x9e, 0xcd, 0xd2, 0x8d, 0xa3, 0x97, 0xd3, 0x78, 0x0a, 0x4f, - 0x16, 0xa1, 0x9d, 0x24, 0x68, 0x2d, 0x7f, 0x41, 0x87, 0x27, 0xa4, 0x74, 0x7c, 0x42, 0x4a, 0xa7, - 0x27, 0x04, 0x7d, 0xcc, 0x08, 0xfa, 0x9a, 0x11, 0xf4, 0x2b, 0x23, 0xe8, 0x30, 0x23, 0xe8, 0x38, - 0x23, 0xe8, 0x77, 0x46, 0xd0, 0x9f, 0x8c, 0x94, 0x4e, 0x33, 0x82, 0x3e, 0x77, 0x49, 0xe9, 0x67, - 0x97, 0xa0, 0xc3, 0x2e, 0x29, 0x1d, 0x77, 0x49, 0xe9, 0xdd, 0x5b, 0x9f, 0xc7, 0xdb, 0xbe, 0x93, - 0xf2, 0x8e, 0x02, 0x21, 0xa8, 0x93, 0x48, 0x57, 0x0f, 0xda, 0x5c, 0x84, 0x76, 0x2c, 0x78, 0x1a, - 0xb4, 0x40, 0xd8, 0x45, 0xd9, 0x8d, 0x3d, 0x9f, 0xbb, 0xb0, 0xab, 0x7a, 0x2f, 0xc7, 0xbf, 0x5e, - 0x29, 0xaf, 0xaa, 0x1f, 0x91, 0xc7, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xc7, 0xcf, 0x91, 0x0a, - 0x4d, 0x05, 0x00, 0x00, + // 632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4f, 0x13, 0x4f, + 0x14, 0xc7, 0x3b, 0x2d, 0xbf, 0x42, 0x06, 0xc2, 0x0f, 0x57, 0x0f, 0x2b, 0xea, 0x48, 0xea, 0x05, + 0x23, 0xbb, 0x9b, 0x60, 0x8c, 0x91, 0xa8, 0x07, 0x30, 0xc1, 0x03, 0x48, 0xd2, 0xe2, 0x41, 0x34, + 0x69, 0x66, 0x67, 0x5f, 0x97, 0x95, 0xee, 0xce, 0x66, 0x66, 0xb6, 0xc0, 0xc1, 0xc4, 0x3f, 0xc1, + 0xc4, 0x7f, 0xc2, 0xe8, 0x3f, 0x21, 0x9c, 0xbc, 0x98, 0x10, 0x4e, 0x3d, 0xca, 0xf6, 0xe2, 0x91, + 0x3f, 0xc1, 0x30, 0xdb, 0x45, 0x5a, 0xaa, 0xf5, 0xd2, 0xdb, 0xec, 0xbc, 0xef, 0xf7, 0x33, 0xf3, + 0x66, 0xdf, 0x7b, 0x78, 0xa1, 0x05, 0xd2, 0x0e, 0xb8, 0x23, 0xd9, 0x36, 0x84, 0xd4, 0x89, 0x40, + 0xed, 0x72, 0xb1, 0x53, 0x67, 0x3c, 0x8a, 0x80, 0x29, 0x2e, 0x1c, 0xee, 0xbe, 0x05, 0xa6, 0xec, + 0x58, 0x70, 0xc5, 0x8d, 0xdb, 0x99, 0xda, 0xce, 0xd4, 0xf6, 0x25, 0xf5, 0xac, 0xe5, 0x07, 0x6a, + 0x3b, 0x71, 0x6d, 0xc6, 0x43, 0xc7, 0xe7, 0x3e, 0x77, 0xb4, 0xcf, 0x4d, 0x1a, 0xfa, 0x4b, 0x7f, + 0xe8, 0x55, 0xc6, 0x9b, 0xbd, 0x37, 0xec, 0x74, 0xb5, 0x1f, 0x83, 0xec, 0x8a, 0x6f, 0xf4, 0x8a, + 0x79, 0xac, 0x02, 0x1e, 0xe5, 0xc1, 0xeb, 0xbd, 0xc1, 0x8b, 0xbe, 0x4a, 0x6f, 0xa8, 0x05, 0x12, + 0xa2, 0x56, 0xaf, 0xbd, 0xf2, 0xe5, 0x3f, 0x5c, 0xde, 0xd0, 0x99, 0x1a, 0x8f, 0xf0, 0x44, 0x08, + 0x8a, 0x7a, 0x54, 0x51, 0x13, 0xcd, 0xa1, 0xf9, 0xc9, 0xc5, 0x5b, 0x76, 0x6f, 0xda, 0x99, 0x70, + 0x1d, 0x14, 0xdd, 0xdc, 0x8f, 0xa1, 0x7a, 0x2e, 0x37, 0xd6, 0xf0, 0xff, 0x72, 0x5f, 0x2a, 0x08, + 0xeb, 0xe7, 0x84, 0xa2, 0x26, 0xdc, 0xe9, 0x23, 0xd4, 0xb4, 0xaa, 0x8f, 0x33, 0x9d, 0x79, 0xd7, + 0x73, 0xda, 0x13, 0x3c, 0x26, 0x63, 0x60, 0x66, 0x49, 0x23, 0xee, 0xda, 0x43, 0xde, 0xde, 0xae, + 0xc5, 0xc0, 0x34, 0x48, 0xdb, 0x96, 0xda, 0xa5, 0xc3, 0x03, 0xb3, 0x38, 0x83, 0x8e, 0x0f, 0xcc, + 0xef, 0x25, 0xfc, 0x1a, 0x97, 0x56, 0x41, 0x19, 0x9b, 0x8d, 0x07, 0x7b, 0xcc, 0x92, 0xc0, 0x12, + 0x01, 0x21, 0xc8, 0x6d, 0xcb, 0xa5, 0x32, 0x60, 0x56, 0xc8, 0xa3, 0x40, 0x71, 0xb1, 0x30, 0xd7, + 0x1f, 0x96, 0x8a, 0x46, 0x1e, 0x15, 0xde, 0x6f, 0x45, 0x0b, 0xa4, 0x15, 0x70, 0xab, 0x7b, 0xbc, + 0x25, 0x80, 0x7a, 0x78, 0x0b, 0x8f, 0x57, 0x21, 0x6e, 0x52, 0x06, 0xc6, 0xc6, 0xe0, 0x03, 0x12, + 0x09, 0x7f, 0xa3, 0x67, 0xe1, 0x3e, 0xf4, 0xae, 0x08, 0x14, 0xe0, 0x57, 0xb8, 0xbc, 0x22, 0x80, + 0xaa, 0xd1, 0xa0, 0x9f, 0x41, 0x13, 0x46, 0x81, 0x7e, 0x83, 0xc7, 0xd6, 0x02, 0x39, 0xa2, 0xf7, + 0xae, 0x6c, 0xe2, 0x89, 0xfc, 0x67, 0x1b, 0xcf, 0xf1, 0xb8, 0xcf, 0xea, 0xba, 0x50, 0xb2, 0x5a, + 0x73, 0x86, 0x16, 0xca, 0x6a, 0x93, 0xbb, 0xb4, 0x79, 0x5e, 0x2e, 0x65, 0x9f, 0x9d, 0xad, 0x2b, + 0x87, 0x45, 0x3c, 0x55, 0x53, 0x54, 0x25, 0xf2, 0x9f, 0x3b, 0x21, 0x93, 0x0f, 0xe8, 0x84, 0x1a, + 0x9e, 0xcc, 0x06, 0x47, 0x5d, 0x40, 0x43, 0x9a, 0xc5, 0xb9, 0xd2, 0xfc, 0xe4, 0xe2, 0xcd, 0x81, + 0x7d, 0x54, 0x85, 0xc6, 0x99, 0x79, 0xf9, 0xda, 0xe7, 0x77, 0x57, 0x2e, 0xdd, 0xb5, 0x8a, 0x79, + 0x2e, 0x92, 0xc6, 0x63, 0x8c, 0x19, 0x8f, 0xbc, 0x40, 0x37, 0xae, 0x59, 0x1a, 0xc8, 0x5c, 0xc9, + 0x05, 0xfa, 0x42, 0x17, 0xf4, 0xc6, 0x06, 0x2e, 0x4b, 0x7d, 0x5d, 0x73, 0x4c, 0xe7, 0xf2, 0x70, + 0xe8, 0x3b, 0xbd, 0xc8, 0x76, 0x56, 0xf2, 0x8d, 0x2c, 0xdb, 0x6a, 0x17, 0xb3, 0x74, 0xf5, 0xf8, + 0xe9, 0x0c, 0x9e, 0xc6, 0x53, 0x79, 0xd2, 0x76, 0x12, 0x78, 0xcb, 0x1f, 0xd1, 0xd1, 0x09, 0x29, + 0xb4, 0x4f, 0x48, 0xe1, 0xf4, 0x84, 0xa0, 0xf7, 0x29, 0x41, 0x9f, 0x52, 0x82, 0xbe, 0xa5, 0x04, + 0x1d, 0xa5, 0x04, 0xb5, 0x53, 0x82, 0x7e, 0xa4, 0x04, 0xfd, 0x4c, 0x49, 0xe1, 0x34, 0x25, 0xe8, + 0x43, 0x87, 0x14, 0xbe, 0x76, 0x08, 0x3a, 0xea, 0x90, 0x42, 0xbb, 0x43, 0x0a, 0x5b, 0x2f, 0x7d, + 0x1e, 0xef, 0xf8, 0x76, 0x8b, 0x37, 0x15, 0x08, 0x41, 0xed, 0x44, 0x3a, 0x7a, 0xd1, 0xe0, 0x22, + 0xb4, 0x62, 0xc1, 0x5b, 0x81, 0x07, 0xc2, 0xca, 0xc3, 0x4e, 0xec, 0xfa, 0xdc, 0x81, 0x3d, 0xd5, + 0x1d, 0x6d, 0x7f, 0x1a, 0xa3, 0x6e, 0x59, 0x4f, 0xb9, 0xfb, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, + 0x1d, 0xd4, 0xee, 0x5d, 0xee, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/network_connector/public_crudapi.pb.go b/pbgo/extschema/schema/network_connector/public_crudapi.pb.go index 73e8ae8a2..2fbb43bad 100644 --- a/pbgo/extschema/schema/network_connector/public_crudapi.pb.go +++ b/pbgo/extschema/schema/network_connector/public_crudapi.pb.go @@ -1102,108 +1102,109 @@ func init() { } var fileDescriptor_7c91fc5d4dc78288 = []byte{ - // 1614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x2c, 0x4b, 0x1b, - 0x86, 0x20, 0x8b, 0xbb, 0xb2, 0xdc, 0x16, 0xb6, 0x50, 0xdb, 0xa5, 0x24, 0x8a, 0x90, 0x2a, 0x9b, - 0xf6, 0x92, 0x32, 0x8a, 0x5e, 0x16, 0xcb, 0xe5, 0x90, 0xda, 0x8a, 0xdc, 0xdd, 0xce, 0x0e, 0x29, - 0x13, 0x85, 0x80, 0xc2, 0xa7, 0xf6, 0x56, 0xa0, 0x87, 0x02, 0x45, 0x81, 0x24, 0x87, 0x00, 0xb9, - 0xe6, 0x16, 0x40, 0x17, 0xdf, 0x6c, 0xf8, 0x10, 0x08, 0xce, 0x21, 0x06, 0x72, 0x89, 0xa9, 0x04, - 0xf0, 0xd1, 0xc8, 0x25, 0xa7, 0x00, 0xc1, 0xce, 0xec, 0xd2, 0x24, 0x45, 0x9b, 0xa4, 0xac, 0x13, - 0x77, 0xe6, 0xbd, 0xf7, 0xcd, 0xfb, 0xe6, 0xfd, 0xf0, 0xed, 0xc2, 0xdf, 0x36, 0xb0, 0x2d, 0xea, - 0xa6, 0x64, 0x6b, 0x3b, 0xb8, 0xa6, 0x4a, 0x06, 0xa6, 0x7b, 0x26, 0xd9, 0x55, 0x34, 0xd3, 0x30, - 0xb0, 0x46, 0x4d, 0x22, 0x59, 0xf5, 0x62, 0x55, 0xd7, 0x14, 0x8d, 0xd4, 0x4b, 0xaa, 0xa5, 0x8b, - 0x16, 0x31, 0xa9, 0x89, 0x7e, 0xcd, 0xad, 0x44, 0x6e, 0x25, 0x1e, 0xb3, 0x8a, 0xa5, 0x2a, 0x3a, - 0xdd, 0xa9, 0x17, 0x45, 0xcd, 0xac, 0x49, 0x15, 0xb3, 0x62, 0x4a, 0xcc, 0xae, 0x58, 0x2f, 0xb3, - 0x15, 0x5b, 0xb0, 0x27, 0x8e, 0x17, 0xbb, 0x58, 0x31, 0xcd, 0x4a, 0x15, 0x4b, 0xaa, 0xa5, 0x4b, - 0xaa, 0x61, 0x98, 0x54, 0xa5, 0xba, 0x69, 0xd8, 0xae, 0xf4, 0x97, 0xae, 0xb4, 0x8d, 0x81, 0x6b, - 0x16, 0x6d, 0xba, 0xc2, 0x58, 0x37, 0x01, 0x4c, 0x88, 0x49, 0x3c, 0xc3, 0x85, 0x41, 0xe4, 0xcc, - 0xe2, 0x5f, 0xb1, 0x46, 0x5d, 0xed, 0xab, 0x83, 0xb4, 0x69, 0xd3, 0xc2, 0x6d, 0x9f, 0xba, 0x95, - 0x4d, 0xab, 0xd3, 0xe1, 0xd9, 0x6e, 0x61, 0xa7, 0x5d, 0xb2, 0x5b, 0xd4, 0xc0, 0x36, 0x36, 0x1a, - 0x3d, 0xe6, 0x89, 0x1e, 0x1d, 0x1d, 0xef, 0x29, 0x5d, 0x1a, 0xc9, 0xcf, 0x01, 0x9c, 0x5c, 0x25, - 0x58, 0xa5, 0x58, 0xc6, 0x7f, 0xab, 0x63, 0x9b, 0xa2, 0x3b, 0x30, 0x54, 0xc3, 0x54, 0x2d, 0xa9, - 0x54, 0x8d, 0x82, 0x04, 0x98, 0x8b, 0x2c, 0x5d, 0x12, 0xbb, 0x83, 0x94, 0x63, 0x5c, 0xb9, 0xd5, - 0x5d, 0x4c, 0xd5, 0x42, 0xd3, 0xc2, 0x72, 0xdb, 0x08, 0x15, 0x60, 0xc0, 0xb6, 0xb0, 0x16, 0xf5, - 0x31, 0x63, 0x49, 0x1c, 0x10, 0x61, 0x91, 0x03, 0xe5, 0x2d, 0xac, 0x39, 0x40, 0x2b, 0xd3, 0xff, - 0xdb, 0x9f, 0x70, 0xec, 0xc5, 0x8a, 0xa6, 0x38, 0xbf, 0x32, 0x43, 0x5b, 0x0e, 0x3f, 0xbf, 0x1d, - 0xe4, 0x07, 0x27, 0x7f, 0x02, 0x70, 0xca, 0xf3, 0xd9, 0xb6, 0x4c, 0xc3, 0xc6, 0xe8, 0x0f, 0xc7, - 0x9c, 0x4e, 0xf4, 0x75, 0x3a, 0x8b, 0x69, 0x1f, 0x8f, 0x73, 0x70, 0xda, 0x6e, 0xda, 0x14, 0xd7, - 0x94, 0x36, 0x88, 0x9f, 0x81, 0x5c, 0xe9, 0x01, 0xc9, 0x33, 0xad, 0xe3, 0x50, 0x53, 0xdc, 0xfc, - 0xae, 0x07, 0xf8, 0xa0, 0xeb, 0x0a, 0x16, 0x06, 0x5e, 0x41, 0x16, 0xd3, 0x11, 0xf8, 0x7f, 0x0f, - 0xe0, 0x94, 0x8c, 0xad, 0xaa, 0xaa, 0xb5, 0x83, 0xf6, 0xc7, 0x63, 0xfc, 0x2f, 0xf7, 0xe5, 0xef, - 0x9a, 0xf5, 0xb9, 0x83, 0xed, 0x2e, 0x97, 0x17, 0x07, 0xba, 0xec, 0x22, 0x0d, 0x70, 0x1b, 0x49, - 0x50, 0x20, 0xd8, 0x36, 0xeb, 0x44, 0xc3, 0x4a, 0x03, 0x13, 0x5b, 0x37, 0x0d, 0x76, 0xb7, 0xe1, - 0x95, 0xc0, 0xeb, 0x03, 0x00, 0xe4, 0x69, 0x4f, 0xfa, 0x90, 0x0b, 0x3b, 0x79, 0x9e, 0x85, 0xd3, - 0x6d, 0x9a, 0x3c, 0xce, 0xc9, 0x8f, 0x00, 0x84, 0x59, 0x4c, 0x3d, 0xda, 0x17, 0x61, 0xd8, 0x50, - 0x6b, 0xd8, 0xb6, 0x54, 0x0d, 0x33, 0xde, 0x61, 0xf9, 0xed, 0x06, 0x42, 0x30, 0xe0, 0x2c, 0x18, - 0xa5, 0xb0, 0xcc, 0x9e, 0x91, 0x02, 0x9d, 0x13, 0x19, 0x98, 0x52, 0x36, 0x49, 0x4d, 0xa5, 0xcc, - 0x9d, 0xa9, 0xa5, 0xdf, 0x0f, 0x13, 0x24, 0xcf, 0x8f, 0x75, 0x66, 0xb9, 0x6a, 0x96, 0xb0, 0x3c, - 0x45, 0xba, 0xf6, 0x92, 0x9f, 0x04, 0x61, 0xa4, 0x43, 0x13, 0xe5, 0x60, 0x44, 0x63, 0xb9, 0xca, - 0x8e, 0x73, 0xaf, 0x57, 0x1c, 0xb2, 0x28, 0x5c, 0x9e, 0x32, 0xe4, 0x10, 0xce, 0x11, 0x48, 0x86, - 0x13, 0x84, 0xdf, 0x0a, 0x47, 0xf4, 0x0f, 0x59, 0x66, 0xdd, 0x19, 0x23, 0x47, 0x5c, 0x10, 0x86, - 0xd9, 0x2f, 0x4a, 0x81, 0xf7, 0x44, 0xa9, 0xab, 0xde, 0xc6, 0x4f, 0xa3, 0xde, 0xce, 0x9c, 0x4a, - 0xbd, 0x05, 0x4f, 0xad, 0xde, 0xd0, 0x16, 0x0c, 0xda, 0x54, 0xa5, 0x75, 0x3b, 0xfa, 0xf1, 0xff, - 0x41, 0xc2, 0x3f, 0x17, 0x59, 0x4a, 0x0d, 0x84, 0xcd, 0x33, 0x03, 0xee, 0xee, 0x8a, 0xff, 0xc9, - 0x3e, 0x90, 0x5d, 0x0c, 0xb4, 0x01, 0xcf, 0x12, 0x5c, 0xc6, 0x84, 0xe8, 0x46, 0x45, 0xe1, 0xff, - 0x15, 0x76, 0x34, 0xc4, 0x60, 0x2f, 0xbe, 0xa3, 0x50, 0xcb, 0x8c, 0xa9, 0xd0, 0x36, 0xe3, 0xfb, - 0x36, 0x7a, 0x08, 0xa3, 0x25, 0x5c, 0xc5, 0x14, 0x97, 0x14, 0x2e, 0xc3, 0xa5, 0x36, 0x62, 0x78, - 0x08, 0xc4, 0x19, 0xd7, 0x5a, 0x76, 0x8d, 0x3d, 0xdc, 0x3f, 0xc3, 0xd9, 0x92, 0x6e, 0xab, 0xc5, - 0x6a, 0x3f, 0x60, 0x38, 0x04, 0xf0, 0x05, 0xcf, 0xbc, 0x07, 0xb9, 0xa3, 0xa4, 0x37, 0x03, 0x21, - 0x20, 0xf8, 0x92, 0x9f, 0x02, 0x18, 0xd9, 0xd2, 0xed, 0x21, 0xcb, 0xf8, 0x37, 0x70, 0xa2, 0xaa, - 0x16, 0x71, 0x55, 0x29, 0xeb, 0x55, 0x8a, 0x89, 0x5b, 0xce, 0x11, 0xb6, 0xb7, 0xce, 0xb6, 0xd0, - 0x25, 0x38, 0x49, 0xb0, 0x65, 0x12, 0xaa, 0x94, 0x75, 0x5c, 0x2d, 0xd9, 0x51, 0x7f, 0xc2, 0x3f, - 0x17, 0x96, 0x27, 0xf8, 0xe6, 0x3a, 0xdb, 0x43, 0x8b, 0xf0, 0x9c, 0xab, 0xc4, 0x83, 0xe2, 0xe9, - 0x06, 0x98, 0x2e, 0xe2, 0x32, 0x1e, 0x42, 0x6e, 0x91, 0x3c, 0x0c, 0x42, 0x81, 0xfb, 0xc9, 0x8b, - 0x79, 0x83, 0xe2, 0x1a, 0x9a, 0x81, 0x41, 0x8a, 0x0d, 0xd5, 0xa0, 0x2c, 0xdb, 0xc2, 0xb2, 0xbb, - 0x3a, 0x41, 0x2f, 0x12, 0xa0, 0xbf, 0xae, 0x97, 0x78, 0x3b, 0x94, 0x9d, 0x47, 0x94, 0x80, 0x91, - 0x12, 0xb6, 0x35, 0xa2, 0xb3, 0xff, 0xe8, 0x68, 0x84, 0x33, 0xed, 0xd8, 0x42, 0x31, 0x18, 0xf2, - 0xae, 0x39, 0x3a, 0x91, 0x00, 0x73, 0x21, 0xb9, 0xbd, 0x46, 0xdb, 0x30, 0xc8, 0x2e, 0x85, 0x53, - 0x8a, 0x2c, 0xdd, 0x1a, 0x98, 0xb0, 0xbd, 0xe4, 0xc4, 0x2d, 0x66, 0x9f, 0x31, 0x28, 0x69, 0xca, - 0x2e, 0x18, 0x2a, 0xc1, 0x48, 0xc7, 0x24, 0xe5, 0xa6, 0xc2, 0xca, 0xe8, 0xd8, 0xe9, 0xb7, 0x20, - 0xfc, 0x80, 0x4e, 0x58, 0x74, 0x13, 0x42, 0x73, 0xcf, 0xc0, 0x44, 0x71, 0x86, 0x94, 0x68, 0x98, - 0x15, 0x72, 0xac, 0xe7, 0x90, 0x87, 0x3a, 0xde, 0xf3, 0xb2, 0x2d, 0xcc, 0xb4, 0x9d, 0x9d, 0xae, - 0x66, 0x34, 0x79, 0x1a, 0xcd, 0x68, 0xea, 0x83, 0x9a, 0x51, 0x16, 0x86, 0x2a, 0x98, 0xb2, 0x5e, - 0xe2, 0xb6, 0xb5, 0x91, 0x1a, 0x92, 0x7c, 0xa6, 0xc2, 0x17, 0xe8, 0x01, 0x84, 0x6e, 0xa6, 0xda, - 0x98, 0xba, 0xdd, 0xe2, 0x24, 0x4d, 0x28, 0xcc, 0x51, 0xf2, 0x98, 0xc6, 0x6e, 0xc2, 0x48, 0x47, - 0x88, 0x9d, 0x0c, 0xdc, 0xc5, 0x4d, 0x37, 0x5b, 0x9d, 0x47, 0x74, 0x0e, 0x8e, 0x37, 0xd4, 0x6a, - 0xdd, 0x4b, 0x54, 0xbe, 0x58, 0xf6, 0xdd, 0x00, 0xb1, 0xdb, 0x50, 0xe8, 0x8d, 0xe0, 0x28, 0xf6, - 0x9b, 0x81, 0xd0, 0xb8, 0x10, 0x4c, 0xfe, 0x0b, 0xc0, 0x89, 0xce, 0xcc, 0x40, 0x59, 0x38, 0xae, - 0x53, 0x5c, 0xb3, 0xa3, 0xbc, 0xc9, 0x5e, 0x1b, 0x39, 0xaf, 0x64, 0x6e, 0x8f, 0x16, 0x61, 0x90, - 0x8f, 0xec, 0x51, 0x1f, 0x43, 0x8a, 0xf6, 0x20, 0x65, 0x1c, 0x21, 0xbb, 0x60, 0x57, 0x2f, 0xb9, - 0x0b, 0x27, 0xd7, 0x58, 0x2f, 0x3c, 0xf9, 0x38, 0x31, 0x07, 0x85, 0xb2, 0xaa, 0x57, 0x15, 0xbd, - 0xdc, 0xee, 0x99, 0xac, 0x9e, 0x43, 0xf2, 0x94, 0xb3, 0xbf, 0x51, 0xf6, 0x7a, 0xe1, 0xfc, 0x0f, - 0x00, 0x9e, 0xef, 0x3b, 0x41, 0xa0, 0x18, 0x9c, 0xc9, 0x66, 0x0a, 0x8a, 0x9c, 0xbf, 0xaf, 0xac, - 0xe7, 0xe4, 0xbb, 0xe9, 0x82, 0xb2, 0x96, 0x59, 0x4f, 0x6f, 0x6f, 0x15, 0x84, 0x31, 0xf4, 0x2b, - 0x38, 0xdb, 0x23, 0x5b, 0xcf, 0xc9, 0xca, 0xaa, 0x9c, 0x49, 0x17, 0x32, 0x02, 0x40, 0x71, 0x18, - 0xeb, 0x23, 0x96, 0x33, 0xf7, 0xb7, 0xd2, 0xab, 0x19, 0xc1, 0x87, 0x66, 0xe1, 0xf9, 0x1e, 0x79, - 0xbe, 0x90, 0x2e, 0x6c, 0xe7, 0x05, 0x3f, 0xba, 0x00, 0x7f, 0xd1, 0x23, 0x92, 0x33, 0xe9, 0x35, - 0x21, 0x80, 0x2e, 0xc3, 0xc4, 0x31, 0xc1, 0x7a, 0x46, 0x96, 0x37, 0xee, 0x65, 0x95, 0xdc, 0xca, - 0x66, 0x66, 0xb5, 0x90, 0x17, 0xc6, 0xfb, 0x68, 0xad, 0xc8, 0xb9, 0x3f, 0x65, 0xee, 0x71, 0xe5, - 0xcc, 0xbd, 0xd5, 0x4c, 0x5e, 0x08, 0x2e, 0xbd, 0x08, 0x43, 0x7f, 0xfa, 0xfe, 0x06, 0x3a, 0x02, - 0x30, 0xc8, 0x27, 0x1a, 0x34, 0xe2, 0xe8, 0x13, 0x93, 0x86, 0xd6, 0x77, 0x47, 0xc4, 0x47, 0xad, - 0xa7, 0x51, 0xa9, 0xfc, 0xbb, 0x47, 0x5a, 0xca, 0xc6, 0x5a, 0x9d, 0xe0, 0x1a, 0xb6, 0x77, 0x52, - 0x45, 0xd5, 0xd6, 0xb5, 0x54, 0xdd, 0xc6, 0xc4, 0x79, 0x93, 0x4b, 0xe9, 0x66, 0xca, 0xc5, 0x49, - 0xed, 0x11, 0x9d, 0xe2, 0xc7, 0x5f, 0x7d, 0xf7, 0x1f, 0xdf, 0x9d, 0xe4, 0xb2, 0xfb, 0x8e, 0x2a, - 0xb5, 0x83, 0x6e, 0x4b, 0x7f, 0xf7, 0xba, 0x82, 0xd8, 0xde, 0xdc, 0x3f, 0xfe, 0x46, 0x67, 0x2f, - 0x83, 0x79, 0xf4, 0x0d, 0x80, 0xfe, 0x2c, 0xa6, 0xe8, 0xea, 0x70, 0xa3, 0x24, 0xe7, 0xb7, 0x30, - 0xca, 0xdc, 0x99, 0x6c, 0x3e, 0xfb, 0xc2, 0x07, 0x5a, 0x4f, 0xa3, 0xd7, 0xfa, 0x13, 0xac, 0x99, - 0x86, 0x4e, 0xcd, 0x63, 0x1c, 0x09, 0x56, 0x4b, 0x8c, 0xe2, 0x32, 0xba, 0xd1, 0x8f, 0xe2, 0x7b, - 0x99, 0x71, 0xf1, 0x3e, 0xfa, 0x1a, 0xc0, 0x80, 0x53, 0x7b, 0x68, 0x61, 0xc8, 0x12, 0xe5, 0xfc, - 0x52, 0x23, 0x15, 0x74, 0x92, 0x7c, 0x18, 0xc1, 0xeb, 0xe8, 0xda, 0xc8, 0x04, 0xd1, 0x8f, 0x00, - 0x9e, 0x71, 0xa7, 0x63, 0x34, 0xea, 0x1c, 0x1d, 0x5b, 0x1c, 0xde, 0xc0, 0xa5, 0xf8, 0x4f, 0x70, - 0xd2, 0x0c, 0xcd, 0xc5, 0x36, 0x4f, 0x9e, 0xa1, 0x3d, 0x7a, 0xfb, 0x4e, 0xc6, 0x3e, 0x03, 0x30, - 0xc8, 0x5b, 0xe0, 0x10, 0x75, 0xd9, 0xd5, 0x2b, 0x63, 0x33, 0x22, 0xff, 0x96, 0x22, 0x7a, 0xdf, - 0x52, 0xc4, 0x4c, 0xcd, 0xa2, 0xcd, 0x64, 0xe3, 0xa4, 0xe4, 0x6e, 0xcd, 0x9f, 0x38, 0x37, 0x97, - 0xc1, 0x7c, 0x6c, 0xe7, 0xc9, 0x01, 0xf0, 0xbd, 0x38, 0x00, 0x57, 0x06, 0xd1, 0xe0, 0xff, 0x8c, - 0x2f, 0x0f, 0x00, 0x68, 0x1d, 0x80, 0x85, 0x51, 0xfe, 0x4d, 0x1f, 0x7f, 0x19, 0xf5, 0x09, 0x60, - 0xe5, 0xbf, 0xe0, 0xf9, 0xed, 0xf1, 0x55, 0x79, 0x7b, 0x6d, 0xeb, 0xf0, 0x55, 0x7c, 0xec, 0xe5, - 0xab, 0xf8, 0xd8, 0x9b, 0x57, 0x71, 0xf0, 0x8f, 0x56, 0x1c, 0x7c, 0xd6, 0x8a, 0x83, 0x67, 0xad, - 0x38, 0x38, 0x6c, 0xc5, 0xc1, 0xb7, 0xad, 0x38, 0x78, 0xdd, 0x8a, 0x8f, 0xbd, 0x69, 0xc5, 0xc1, - 0xbf, 0x8f, 0xe2, 0x63, 0x4f, 0x8e, 0xe2, 0xe0, 0xf0, 0x28, 0x3e, 0xf6, 0xf2, 0x28, 0x3e, 0xf6, - 0x97, 0xed, 0x8a, 0x69, 0xed, 0x56, 0xc4, 0x86, 0xe9, 0x4c, 0xaf, 0x44, 0x15, 0xeb, 0xb6, 0xc4, - 0x1e, 0x9c, 0x17, 0xba, 0x94, 0x45, 0xcc, 0x86, 0x5e, 0xc2, 0x24, 0xe5, 0x89, 0x25, 0xab, 0x58, - 0x31, 0x25, 0xfc, 0x88, 0xba, 0x9f, 0x71, 0xde, 0xf5, 0x59, 0xa9, 0x18, 0x64, 0xb1, 0xb8, 0xfe, - 0x73, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8e, 0x89, 0x5c, 0x47, 0x8b, 0x13, 0x00, 0x00, + // 1628 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x1b, 0x4d, + 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x67, 0xbf, 0xe1, 0x6b, 0xea, 0x98, 0x62, 0x8c, 0x5b, + 0x55, 0x51, 0x1a, 0xaf, 0xd3, 0x14, 0x50, 0x1b, 0xd1, 0x16, 0x27, 0x71, 0xac, 0x84, 0xa4, 0x6e, + 0xc7, 0x4e, 0x85, 0xb8, 0xac, 0xd6, 0xeb, 0xb1, 0xb3, 0xc4, 0xde, 0x5d, 0x76, 0xc6, 0x4e, 0x23, + 0x14, 0x09, 0xf5, 0xc6, 0x0d, 0xa9, 0xfc, 0x91, 0x2a, 0x24, 0xe0, 0x00, 0xe2, 0xca, 0x0d, 0x29, + 0x97, 0xde, 0xa8, 0x7a, 0x40, 0x11, 0x5c, 0x7a, 0xa4, 0x0e, 0x88, 0x1e, 0xab, 0xde, 0x38, 0x54, + 0x42, 0x3b, 0xb3, 0xeb, 0xda, 0x8e, 0x5b, 0xdb, 0xf9, 0xd2, 0x93, 0x77, 0xe6, 0xbd, 0xdf, 0x6f, + 0xde, 0x7b, 0xf3, 0xde, 0xdb, 0xe7, 0x85, 0xdf, 0x6e, 0x12, 0x2a, 0xeb, 0x66, 0x9a, 0x6a, 0xbb, + 0xa4, 0xae, 0xa6, 0x0d, 0xc2, 0xf6, 0x4d, 0x7b, 0x4f, 0xd1, 0x4c, 0xc3, 0x20, 0x1a, 0x33, 0xed, + 0xb4, 0xd5, 0x28, 0xd5, 0x74, 0x4d, 0xd1, 0xec, 0x46, 0x59, 0xb5, 0x74, 0xd9, 0xb2, 0x4d, 0x66, + 0xa2, 0x6f, 0x0a, 0x94, 0x2c, 0x50, 0xf2, 0x29, 0x54, 0x2c, 0x55, 0xd5, 0xd9, 0x6e, 0xa3, 0x24, + 0x6b, 0x66, 0x3d, 0x5d, 0x35, 0xab, 0x66, 0x9a, 0xe3, 0x4a, 0x8d, 0x0a, 0x5f, 0xf1, 0x05, 0x7f, + 0x12, 0x7c, 0xb1, 0xcb, 0x55, 0xd3, 0xac, 0xd6, 0x48, 0x5a, 0xb5, 0xf4, 0xb4, 0x6a, 0x18, 0x26, + 0x53, 0x99, 0x6e, 0x1a, 0xd4, 0x95, 0x7e, 0xdd, 0x95, 0xb6, 0x39, 0x48, 0xdd, 0x62, 0x07, 0xae, + 0x30, 0xd6, 0xed, 0x00, 0xb1, 0x6d, 0xd3, 0xf6, 0x80, 0x0b, 0x83, 0x9c, 0x33, 0x4b, 0x3f, 0x26, + 0x1a, 0x73, 0xb5, 0xaf, 0x0f, 0xd2, 0x66, 0x07, 0x16, 0x69, 0xdb, 0xd4, 0xad, 0x6c, 0x5a, 0x9d, + 0x06, 0xcf, 0x76, 0x0b, 0x3b, 0x71, 0xc9, 0x6e, 0x51, 0x93, 0x50, 0x62, 0x34, 0x7b, 0xe0, 0x89, + 0x1e, 0x1d, 0x9d, 0xec, 0x2b, 0x5d, 0x1a, 0xc9, 0xbf, 0x00, 0x38, 0xb9, 0x6a, 0x13, 0x95, 0x11, + 0x4c, 0x7e, 0xd2, 0x20, 0x94, 0xa1, 0x7b, 0x30, 0x54, 0x27, 0x4c, 0x2d, 0xab, 0x4c, 0x8d, 0x82, + 0x04, 0x98, 0x8b, 0x2c, 0x5d, 0x91, 0xbb, 0x2f, 0x29, 0xcf, 0x7d, 0x15, 0xa8, 0x6d, 0xc2, 0xd4, + 0xe2, 0x81, 0x45, 0x70, 0x1b, 0x84, 0x8a, 0x30, 0x40, 0x2d, 0xa2, 0x45, 0x7d, 0x1c, 0x9c, 0x96, + 0x07, 0xdc, 0xb0, 0x2c, 0x88, 0x0a, 0x16, 0xd1, 0x1c, 0xa2, 0x95, 0xe9, 0x67, 0x87, 0x13, 0x0e, + 0x5e, 0xae, 0x6a, 0x8a, 0xf3, 0x8b, 0x39, 0xdb, 0x72, 0xf8, 0xe5, 0xdd, 0xa0, 0x38, 0x38, 0xf9, + 0x1e, 0xc0, 0x29, 0xcf, 0x66, 0x6a, 0x99, 0x06, 0x25, 0xe8, 0x7b, 0xa7, 0x8c, 0x4e, 0xf4, 0x35, + 0x3a, 0x47, 0x58, 0x1f, 0x8b, 0xf3, 0x70, 0x9a, 0x1e, 0x50, 0x46, 0xea, 0x4a, 0x9b, 0xc4, 0xcf, + 0x49, 0xae, 0xf5, 0x90, 0x14, 0xb8, 0xd6, 0x69, 0xaa, 0x29, 0x01, 0xdf, 0xf6, 0x08, 0x1f, 0x76, + 0x85, 0x60, 0x61, 0x60, 0x08, 0x72, 0x84, 0x8d, 0xe0, 0xff, 0x7f, 0x00, 0x9c, 0xc2, 0xc4, 0xaa, + 0xa9, 0x5a, 0xfb, 0xd2, 0xbe, 0x7f, 0xca, 0xff, 0xab, 0x7d, 0xfd, 0x77, 0x61, 0x7d, 0x62, 0xb0, + 0xd3, 0x65, 0xf2, 0xe2, 0x40, 0x93, 0x5d, 0xa6, 0x01, 0x66, 0xa3, 0x34, 0x94, 0x6c, 0x42, 0xcd, + 0x86, 0xad, 0x11, 0xa5, 0x49, 0x6c, 0xaa, 0x9b, 0x06, 0x8f, 0x6d, 0x78, 0x25, 0xf0, 0xe6, 0x08, + 0x00, 0x3c, 0xed, 0x49, 0x1f, 0x09, 0x61, 0xa7, 0x9f, 0x5f, 0xc0, 0xe9, 0xb6, 0x9b, 0xe2, 0x9e, + 0x93, 0xbf, 0x03, 0x10, 0xe6, 0x08, 0xf3, 0xdc, 0xbe, 0x0c, 0xc3, 0x86, 0x5a, 0x27, 0xd4, 0x52, + 0x35, 0xc2, 0xfd, 0x0e, 0xe3, 0x0f, 0x1b, 0x08, 0xc1, 0x80, 0xb3, 0xe0, 0x2e, 0x85, 0x31, 0x7f, + 0x46, 0x0a, 0x74, 0x4e, 0xe4, 0x64, 0x4a, 0xc5, 0xb4, 0xeb, 0x2a, 0xe3, 0xe6, 0x4c, 0x2d, 0x7d, + 0x77, 0x98, 0x4b, 0xf2, 0xec, 0x58, 0xe7, 0xc8, 0x55, 0xb3, 0x4c, 0xf0, 0x94, 0xdd, 0xb5, 0x97, + 0xfc, 0x43, 0x10, 0x46, 0x3a, 0x34, 0x51, 0x1e, 0x46, 0x34, 0x9e, 0xab, 0xfc, 0x38, 0x37, 0xbc, + 0xf2, 0x90, 0x45, 0xe1, 0xfa, 0x89, 0xa1, 0xa0, 0x70, 0x8e, 0x40, 0x18, 0x4e, 0xd8, 0x22, 0x2a, + 0x82, 0xd1, 0x3f, 0x64, 0x99, 0x75, 0x67, 0x0c, 0x8e, 0xb8, 0x24, 0x9c, 0xb3, 0xdf, 0x2d, 0x05, + 0x3e, 0x71, 0x4b, 0x5d, 0xf5, 0x36, 0x7e, 0x1e, 0xf5, 0x76, 0xe1, 0x5c, 0xea, 0x2d, 0x78, 0x6e, + 0xf5, 0x86, 0xb6, 0x60, 0x90, 0x32, 0x95, 0x35, 0x68, 0xf4, 0xf7, 0xbf, 0x05, 0x09, 0xff, 0x5c, + 0x64, 0x29, 0x35, 0x90, 0xb6, 0xc0, 0x01, 0xc2, 0xdc, 0x15, 0xff, 0xf3, 0x43, 0x80, 0x5d, 0x0e, + 0xb4, 0x01, 0xbf, 0xb0, 0x49, 0x85, 0xd8, 0xb6, 0x6e, 0x54, 0x15, 0xf1, 0xae, 0xa0, 0xd1, 0x10, + 0xa7, 0xbd, 0xfc, 0x91, 0x42, 0xad, 0x70, 0x4f, 0xa5, 0x36, 0x4c, 0xec, 0x53, 0xf4, 0x08, 0x46, + 0xcb, 0xa4, 0x46, 0x18, 0x29, 0x2b, 0x42, 0x46, 0xca, 0x6d, 0xc6, 0xf0, 0x10, 0x8c, 0x33, 0x2e, + 0x1a, 0xbb, 0x60, 0x8f, 0xf7, 0x87, 0x70, 0xb6, 0xac, 0x53, 0xb5, 0x54, 0xeb, 0x47, 0x0c, 0x87, + 0x20, 0xbe, 0xe4, 0xc1, 0x7b, 0x98, 0x3b, 0x4a, 0x7a, 0x33, 0x10, 0x02, 0x92, 0x2f, 0xf9, 0x47, + 0x00, 0x23, 0x5b, 0x3a, 0x1d, 0xb2, 0x8c, 0xbf, 0x05, 0x27, 0x6a, 0x6a, 0x89, 0xd4, 0x94, 0x8a, + 0x5e, 0x63, 0xc4, 0x76, 0xcb, 0x39, 0xc2, 0xf7, 0xd6, 0xf9, 0x16, 0xba, 0x02, 0x27, 0x6d, 0x62, + 0x99, 0x36, 0x53, 0x2a, 0x3a, 0xa9, 0x95, 0x69, 0xd4, 0x9f, 0xf0, 0xcf, 0x85, 0xf1, 0x84, 0xd8, + 0x5c, 0xe7, 0x7b, 0x68, 0x11, 0x7e, 0xe9, 0x2a, 0x89, 0x4b, 0xf1, 0x74, 0x03, 0x5c, 0x17, 0x09, + 0x99, 0xb8, 0x42, 0x81, 0x48, 0x1e, 0x07, 0xa1, 0x24, 0xec, 0x14, 0xc5, 0xbc, 0xc1, 0x48, 0x1d, + 0xcd, 0xc0, 0x20, 0x23, 0x86, 0x6a, 0x30, 0x9e, 0x6d, 0x61, 0xec, 0xae, 0xce, 0xd0, 0x8b, 0x24, + 0xe8, 0x6f, 0xe8, 0x65, 0xd1, 0x0e, 0xb1, 0xf3, 0x88, 0x12, 0x30, 0x52, 0x26, 0x54, 0xb3, 0x75, + 0xfe, 0x8e, 0x8e, 0x46, 0x84, 0xa7, 0x1d, 0x5b, 0x28, 0x06, 0x43, 0x5e, 0x98, 0xa3, 0x13, 0x09, + 0x30, 0x17, 0xc2, 0xed, 0x35, 0xda, 0x81, 0x41, 0x1e, 0x14, 0xe1, 0x52, 0x64, 0xe9, 0xce, 0xc0, + 0x84, 0xed, 0x75, 0x4e, 0xde, 0xe2, 0xf8, 0xac, 0xc1, 0xec, 0x03, 0xec, 0x92, 0xa1, 0x32, 0x8c, + 0x74, 0x4c, 0x52, 0x6e, 0x2a, 0xac, 0x8c, 0xce, 0x9d, 0xf9, 0x40, 0x22, 0x0e, 0xe8, 0xa4, 0x45, + 0xb7, 0x21, 0x34, 0xf7, 0x0d, 0x62, 0x2b, 0xce, 0x90, 0x12, 0x0d, 0xf3, 0x42, 0x8e, 0xf5, 0x1c, + 0xf2, 0x48, 0x27, 0xfb, 0x5e, 0xb6, 0x85, 0xb9, 0xb6, 0xb3, 0xd3, 0xd5, 0x8c, 0x26, 0xcf, 0xa3, + 0x19, 0x4d, 0x7d, 0xa5, 0x66, 0x94, 0x83, 0xa1, 0x2a, 0x61, 0xbc, 0x97, 0xb8, 0x6d, 0x6d, 0xa4, + 0x86, 0x84, 0x2f, 0x54, 0xc5, 0x02, 0x3d, 0x84, 0xd0, 0xcd, 0x54, 0x4a, 0x98, 0xdb, 0x2d, 0xce, + 0xd2, 0x84, 0xc2, 0x82, 0xa5, 0x40, 0x58, 0xec, 0x36, 0x8c, 0x74, 0x5c, 0xb1, 0x93, 0x81, 0x7b, + 0xe4, 0xc0, 0xcd, 0x56, 0xe7, 0x11, 0x7d, 0x09, 0xc7, 0x9b, 0x6a, 0xad, 0xe1, 0x25, 0xaa, 0x58, + 0x2c, 0xfb, 0x6e, 0x81, 0xd8, 0x5d, 0x28, 0xf5, 0xde, 0xe0, 0x28, 0xf8, 0xcd, 0x40, 0x68, 0x5c, + 0x0a, 0x26, 0x7f, 0x0e, 0xe0, 0x44, 0x67, 0x66, 0xa0, 0x1c, 0x1c, 0xd7, 0x19, 0xa9, 0xd3, 0xa8, + 0x68, 0xb2, 0x37, 0x46, 0xce, 0x2b, 0x2c, 0xf0, 0x68, 0x11, 0x06, 0xc5, 0xc8, 0x1e, 0xf5, 0x71, + 0xa6, 0x68, 0x0f, 0x53, 0xd6, 0x11, 0xf2, 0x00, 0xbb, 0x7a, 0xc9, 0x3d, 0x38, 0xb9, 0xc6, 0x7b, + 0xe1, 0xd9, 0xc7, 0x89, 0x39, 0x28, 0x55, 0x54, 0xbd, 0xa6, 0xe8, 0x95, 0x76, 0xcf, 0xe4, 0xf5, + 0x1c, 0xc2, 0x53, 0xce, 0xfe, 0x46, 0xc5, 0xeb, 0x85, 0xf3, 0xef, 0x00, 0xbc, 0xd8, 0x77, 0x82, + 0x40, 0x31, 0x38, 0x93, 0xcb, 0x16, 0x15, 0x5c, 0x78, 0xa0, 0xac, 0xe7, 0xf1, 0x76, 0xa6, 0xa8, + 0xac, 0x65, 0xd7, 0x33, 0x3b, 0x5b, 0x45, 0x69, 0x0c, 0x7d, 0x03, 0xce, 0xf6, 0xc8, 0xd6, 0xf3, + 0x58, 0x59, 0xc5, 0xd9, 0x4c, 0x31, 0x2b, 0x01, 0x14, 0x87, 0xb1, 0x3e, 0x62, 0x9c, 0x7d, 0xb0, + 0x95, 0x59, 0xcd, 0x4a, 0x3e, 0x34, 0x0b, 0x2f, 0xf6, 0xc8, 0x0b, 0xc5, 0x4c, 0x71, 0xa7, 0x20, + 0xf9, 0xd1, 0x25, 0xf8, 0xb5, 0x1e, 0x11, 0xce, 0x66, 0xd6, 0xa4, 0x00, 0xba, 0x0a, 0x13, 0xa7, + 0x04, 0xeb, 0x59, 0x8c, 0x37, 0xee, 0xe7, 0x94, 0xfc, 0xca, 0x66, 0x76, 0xb5, 0x58, 0x90, 0xc6, + 0xfb, 0x68, 0xad, 0xe0, 0xfc, 0x0f, 0xb2, 0xf7, 0x85, 0x72, 0xf6, 0xfe, 0x6a, 0xb6, 0x20, 0x05, + 0x97, 0xde, 0x41, 0xe8, 0xcf, 0x3c, 0xd8, 0x40, 0x4f, 0x7c, 0x30, 0x28, 0x26, 0x1a, 0x34, 0xe2, + 0xe8, 0x13, 0x4b, 0x0f, 0xad, 0xef, 0x8e, 0x88, 0xbf, 0x06, 0xad, 0xbf, 0x45, 0xb7, 0x2b, 0xdf, + 0x79, 0xac, 0xa5, 0x28, 0xd1, 0x1a, 0x36, 0xa9, 0x13, 0xba, 0x9b, 0x2a, 0xa9, 0x54, 0xd7, 0x52, + 0x0d, 0x4a, 0xec, 0x85, 0x5e, 0x11, 0x65, 0xaa, 0x51, 0x56, 0xed, 0xb2, 0x90, 0x36, 0x09, 0x4d, + 0xe9, 0x66, 0xca, 0x3d, 0x26, 0xb5, 0x6f, 0xeb, 0x8c, 0x3c, 0xf9, 0xe7, 0xbf, 0x9f, 0xfa, 0xee, + 0x25, 0x97, 0xdd, 0xbf, 0xb0, 0xe9, 0x76, 0x4e, 0xd0, 0xf4, 0x4f, 0xbd, 0xa6, 0x21, 0xb7, 0x37, + 0x0f, 0x4f, 0xff, 0xe1, 0xa3, 0xcb, 0x60, 0x1e, 0xbd, 0x07, 0xd0, 0x9f, 0x23, 0x0c, 0x5d, 0x1f, + 0x6e, 0xd2, 0x14, 0xee, 0x2f, 0x8c, 0x32, 0x96, 0x26, 0x9f, 0x81, 0x17, 0x7f, 0xf5, 0x39, 0xfe, + 0xe3, 0xfe, 0xfe, 0xd7, 0x4d, 0x43, 0x67, 0xe6, 0x27, 0x42, 0xe0, 0x29, 0xf4, 0x44, 0xc1, 0x26, + 0x6a, 0x99, 0x07, 0x61, 0x19, 0xdd, 0xea, 0x17, 0x84, 0x4f, 0xfa, 0x2e, 0xc4, 0x87, 0xe8, 0x7f, + 0x00, 0x06, 0x9c, 0xe2, 0x45, 0x0b, 0x43, 0xd6, 0xb8, 0x88, 0x40, 0x6a, 0xa4, 0x8e, 0x90, 0x7c, + 0xfa, 0xb9, 0x43, 0x70, 0x13, 0xdd, 0x18, 0x39, 0x04, 0xe8, 0x57, 0x3e, 0x78, 0xc1, 0x1d, 0xc0, + 0xd1, 0xa8, 0xa3, 0x7a, 0x6c, 0x71, 0x78, 0x80, 0x1b, 0x84, 0x3f, 0x7d, 0xa6, 0x1a, 0xc8, 0xc7, + 0x36, 0xcf, 0x5e, 0x03, 0x3d, 0x7a, 0x87, 0x4e, 0x4d, 0xfc, 0x17, 0xc0, 0xa0, 0xe8, 0xc1, 0x43, + 0x34, 0x86, 0xae, 0x66, 0x1d, 0x9b, 0x91, 0xc5, 0xc7, 0x1c, 0xd9, 0xfb, 0x98, 0x23, 0x67, 0xeb, + 0x16, 0x3b, 0x48, 0xfe, 0xf2, 0x33, 0xf9, 0x7e, 0x67, 0xfe, 0xcc, 0xa9, 0xbf, 0x0c, 0xe6, 0x63, + 0xbb, 0xcf, 0x8f, 0x80, 0xef, 0x1f, 0x47, 0xe0, 0xda, 0x20, 0x2f, 0xc5, 0x9b, 0xfb, 0xd5, 0x11, + 0x00, 0xad, 0x23, 0xb0, 0x30, 0xca, 0xdb, 0xfe, 0xc9, 0xdf, 0xa3, 0x3e, 0x09, 0xac, 0xfc, 0x06, + 0xbc, 0xbc, 0x3b, 0xbe, 0x8a, 0x77, 0xd6, 0xb6, 0x8e, 0x5f, 0xc7, 0xc7, 0x5e, 0xbd, 0x8e, 0x8f, + 0xbd, 0x7d, 0x1d, 0x07, 0x3f, 0x6b, 0xc5, 0xc1, 0x9f, 0x5b, 0x71, 0xf0, 0xa2, 0x15, 0x07, 0xc7, + 0xad, 0x38, 0xf8, 0x57, 0x2b, 0x0e, 0xde, 0xb4, 0xe2, 0x63, 0x6f, 0x5b, 0x71, 0xf0, 0x8b, 0x93, + 0xf8, 0xd8, 0xf3, 0x93, 0x38, 0x38, 0x3e, 0x89, 0x8f, 0xbd, 0x3a, 0x89, 0x8f, 0xfd, 0x68, 0xa7, + 0x6a, 0x5a, 0x7b, 0x55, 0xb9, 0x69, 0x3a, 0xd3, 0xb5, 0xad, 0xca, 0x0d, 0x9a, 0xe6, 0x0f, 0xce, + 0x1f, 0xce, 0x94, 0x65, 0x9b, 0x4d, 0xbd, 0x4c, 0xec, 0x94, 0x27, 0x4e, 0x5b, 0xa5, 0xaa, 0x99, + 0x26, 0x8f, 0x99, 0xfb, 0x99, 0xe9, 0x63, 0x9f, 0xbd, 0x4a, 0x41, 0x7e, 0x55, 0x37, 0xff, 0x1f, + 0x00, 0x00, 0xff, 0xff, 0xbb, 0x1f, 0x28, 0x6f, 0x2b, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/network_connector/public_crudapi.vesapi.go b/pbgo/extschema/schema/network_connector/public_crudapi.vesapi.go index 99011af05..40839a8b3 100644 --- a/pbgo/extschema/schema/network_connector/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/network_connector/public_crudapi.vesapi.go @@ -3185,10 +3185,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3245,10 +3249,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3307,10 +3315,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_firewall/crudapi/api.vesapi.go b/pbgo/extschema/schema/network_firewall/crudapi/api.vesapi.go index e9f7902c7..3900ff03b 100644 --- a/pbgo/extschema/schema/network_firewall/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/network_firewall/crudapi/api.vesapi.go @@ -3217,10 +3217,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_firewall/object.pb.go b/pbgo/extschema/schema/network_firewall/object.pb.go index aa89acf3b..761a0d71d 100644 --- a/pbgo/extschema/schema/network_firewall/object.pb.go +++ b/pbgo/extschema/schema/network_firewall/object.pb.go @@ -246,45 +246,46 @@ func init() { } var fileDescriptor_947fc1c0d126e955 = []byte{ - // 610 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x31, 0x4f, 0x14, 0x4f, - 0x18, 0xc6, 0x6f, 0xee, 0x2e, 0x07, 0x19, 0x08, 0x7f, 0xb2, 0x34, 0xfb, 0x47, 0x9d, 0x90, 0xb3, - 0x21, 0xea, 0xce, 0x1a, 0x0c, 0x05, 0x48, 0x2c, 0xc0, 0x48, 0x03, 0x9a, 0xdc, 0x51, 0xd9, 0x5c, - 0x66, 0xe7, 0xde, 0x5b, 0x46, 0x76, 0x6f, 0x36, 0x33, 0xb3, 0x07, 0x14, 0x26, 0xb6, 0x76, 0xc6, - 0x4f, 0x61, 0x8c, 0xbd, 0xa5, 0x62, 0x65, 0x49, 0xa8, 0x28, 0x65, 0xaf, 0xb1, 0xe4, 0x23, 0x18, - 0x66, 0x6f, 0x09, 0x77, 0x9e, 0x62, 0xe8, 0x66, 0xf6, 0xfd, 0x3d, 0xcf, 0xce, 0x33, 0xef, 0xcc, - 0xe0, 0xfb, 0x3d, 0xd0, 0x54, 0x48, 0x5f, 0xf3, 0x5d, 0x88, 0x99, 0xdf, 0x05, 0xb3, 0x2f, 0xd5, - 0x5e, 0xab, 0x23, 0x14, 0xec, 0xb3, 0x28, 0xf2, 0x65, 0xf0, 0x0a, 0xb8, 0xa1, 0x89, 0x92, 0x46, - 0x3a, 0x24, 0x87, 0x69, 0x0e, 0xd3, 0x51, 0x78, 0xde, 0x0b, 0x85, 0xd9, 0x4d, 0x03, 0xca, 0x65, - 0xec, 0x87, 0x32, 0x94, 0xbe, 0x95, 0x05, 0x69, 0xc7, 0xce, 0xec, 0xc4, 0x8e, 0x72, 0xbb, 0xf9, - 0x7b, 0xd7, 0xfc, 0xdb, 0x1c, 0x26, 0xa0, 0x07, 0xec, 0xad, 0x61, 0x56, 0x26, 0x46, 0xc8, 0x6e, - 0x51, 0xfc, 0x7f, 0xb8, 0x78, 0x55, 0x57, 0x1f, 0x2e, 0xf5, 0x40, 0x43, 0xb7, 0x37, 0x2c, 0xaf, - 0xbf, 0xad, 0xe2, 0xda, 0x0b, 0x9b, 0xd3, 0x59, 0xc1, 0x93, 0x31, 0x18, 0xd6, 0x66, 0x86, 0xb9, - 0x68, 0x01, 0x2d, 0x4e, 0x2d, 0xdd, 0xa1, 0xc3, 0xa1, 0x73, 0x70, 0x1b, 0x0c, 0xdb, 0x39, 0x4c, - 0xa0, 0x71, 0x89, 0x3b, 0x5b, 0xf8, 0x3f, 0x7d, 0xa8, 0x0d, 0xc4, 0xad, 0x4b, 0x87, 0xb2, 0x75, - 0xb8, 0x3b, 0xe2, 0xd0, 0xb4, 0xd4, 0x88, 0xcf, 0x4c, 0xae, 0xdd, 0x2e, 0xdc, 0xd6, 0x70, 0x55, - 0x27, 0xc0, 0xdd, 0x8a, 0xb5, 0x58, 0xa4, 0x7f, 0xdf, 0x79, 0xda, 0x4c, 0x80, 0x5b, 0x1f, 0xab, - 0x5a, 0xfd, 0x5c, 0xfe, 0x76, 0xe4, 0x96, 0x67, 0xd1, 0xc9, 0x91, 0xfb, 0xa9, 0x8c, 0x57, 0x70, - 0x65, 0x13, 0x8c, 0xb3, 0xd4, 0x59, 0x3e, 0xe0, 0x9e, 0x06, 0x9e, 0x2a, 0x88, 0x41, 0xef, 0x7a, - 0x01, 0xd3, 0x82, 0x7b, 0xb1, 0xec, 0x0a, 0x23, 0xd5, 0x83, 0x85, 0x1e, 0x68, 0x4f, 0x48, 0x6f, - 0xe0, 0xed, 0x29, 0x60, 0x6d, 0xfc, 0x18, 0x4f, 0x34, 0x20, 0x89, 0x18, 0x07, 0xe7, 0xe1, 0x78, - 0x79, 0xaa, 0xe1, 0x77, 0xed, 0xbe, 0x12, 0x06, 0xf0, 0x2a, 0xae, 0x6d, 0x28, 0x60, 0xe6, 0x86, - 0xda, 0xa7, 0x10, 0xc1, 0x0d, 0xb5, 0xd5, 0x2d, 0xa1, 0x6f, 0x14, 0xb8, 0xde, 0xc4, 0x93, 0xc5, - 0x5e, 0x3a, 0x9b, 0x78, 0x22, 0xe4, 0x2d, 0xdb, 0x86, 0xbc, 0x93, 0xf4, 0xba, 0x36, 0x6c, 0x46, - 0x32, 0x60, 0xd1, 0x65, 0x33, 0x6a, 0x21, 0xbf, 0x18, 0xd7, 0xbf, 0x94, 0xf1, 0x74, 0xd3, 0x30, - 0x93, 0xea, 0x7f, 0x3e, 0x66, 0x39, 0x3e, 0xe6, 0x98, 0x35, 0xf0, 0x54, 0x7e, 0x27, 0x5b, 0x0a, - 0x3a, 0xda, 0x2d, 0x2f, 0x54, 0x16, 0xa7, 0x96, 0x6e, 0x8f, 0x3d, 0xa4, 0x0d, 0xe8, 0x5c, 0x88, - 0xd7, 0xe7, 0x3e, 0xbe, 0x9e, 0x1d, 0x5d, 0x6a, 0x03, 0xcb, 0x82, 0xd1, 0xce, 0x1a, 0xc6, 0x5c, - 0x76, 0xdb, 0xc2, 0x5e, 0x0a, 0xb7, 0x32, 0xd6, 0x72, 0xa3, 0x00, 0xec, 0x7a, 0xae, 0xf0, 0xce, - 0x36, 0xae, 0x69, 0xbb, 0x5a, 0xb7, 0x6a, 0xa3, 0x2c, 0x5f, 0xb7, 0x4b, 0xcf, 0xf3, 0x0f, 0xcf, - 0x06, 0xf3, 0x3c, 0x6a, 0x63, 0x60, 0xb2, 0x3a, 0x77, 0xf2, 0x64, 0x16, 0xcf, 0xe0, 0xe9, 0x22, - 0x31, 0x4d, 0x45, 0x7b, 0xfd, 0x3d, 0x3a, 0x3e, 0x23, 0xa5, 0xd3, 0x33, 0x52, 0x3a, 0x3f, 0x23, - 0xe8, 0x4d, 0x46, 0xd0, 0x87, 0x8c, 0xa0, 0xef, 0x19, 0x41, 0xc7, 0x19, 0x41, 0xa7, 0x19, 0x41, - 0x3f, 0x32, 0x82, 0x7e, 0x66, 0xa4, 0x74, 0x9e, 0x11, 0xf4, 0xae, 0x4f, 0x4a, 0x5f, 0xfb, 0x04, - 0x1d, 0xf7, 0x49, 0xe9, 0xb4, 0x4f, 0x4a, 0x2f, 0x77, 0x42, 0x99, 0xec, 0x85, 0xb4, 0x27, 0x23, - 0x03, 0x4a, 0x31, 0x9a, 0x6a, 0xdf, 0x0e, 0x3a, 0x52, 0xc5, 0x5e, 0xa2, 0x64, 0x4f, 0xb4, 0x41, - 0x79, 0x45, 0xd9, 0x4f, 0x82, 0x50, 0xfa, 0x70, 0x60, 0x06, 0x8f, 0xc6, 0x1f, 0xde, 0xa7, 0xa0, - 0x66, 0x9f, 0x8f, 0x47, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0xfb, 0x92, 0xc2, 0x45, 0x44, 0x05, + // 626 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0x13, 0x41, + 0x14, 0xc7, 0x3b, 0x2d, 0x16, 0x32, 0x10, 0x24, 0xcb, 0x65, 0x45, 0x9d, 0x90, 0x7a, 0x21, 0xea, + 0xee, 0x26, 0x18, 0x0e, 0x12, 0xe2, 0x01, 0x8c, 0x5c, 0x40, 0x92, 0x96, 0x8b, 0x68, 0xd2, 0xcc, + 0xce, 0xbe, 0x2e, 0x23, 0xbb, 0x9d, 0xcd, 0xcc, 0x6c, 0x81, 0x83, 0x89, 0x1f, 0xc1, 0xf8, 0x29, + 0x0c, 0x5f, 0x42, 0xf1, 0xe4, 0xc5, 0x84, 0x70, 0xea, 0x51, 0xb6, 0x17, 0x8f, 0x7c, 0x04, 0xc3, + 0x6c, 0x17, 0x69, 0x53, 0xc1, 0x0b, 0xb7, 0x99, 0x7d, 0xff, 0xff, 0x6f, 0xe6, 0xcd, 0xbe, 0xf7, + 0xf0, 0x93, 0x0e, 0x28, 0x97, 0x0b, 0x4f, 0xb1, 0x5d, 0x88, 0xa9, 0xd7, 0x06, 0xbd, 0x2f, 0xe4, + 0x5e, 0xb3, 0xc5, 0x25, 0xec, 0xd3, 0x28, 0xf2, 0x84, 0xff, 0x1e, 0x98, 0x76, 0x13, 0x29, 0xb4, + 0xb0, 0x48, 0x2e, 0x76, 0x73, 0xb1, 0x3b, 0x2c, 0x9e, 0x73, 0x42, 0xae, 0x77, 0x53, 0xdf, 0x65, + 0x22, 0xf6, 0x42, 0x11, 0x0a, 0xcf, 0xd8, 0xfc, 0xb4, 0x65, 0x76, 0x66, 0x63, 0x56, 0x39, 0x6e, + 0xee, 0xf1, 0x0d, 0x67, 0xeb, 0xc3, 0x04, 0x54, 0x5f, 0x7b, 0x7f, 0x50, 0x2b, 0x12, 0xcd, 0x45, + 0xbb, 0x08, 0xde, 0x1b, 0x0c, 0x5e, 0xf5, 0xd5, 0x06, 0x43, 0x1d, 0x50, 0xd0, 0xee, 0x0c, 0xda, + 0x6b, 0x47, 0x77, 0x70, 0x75, 0xcb, 0xe4, 0x69, 0x3d, 0xc7, 0x13, 0x31, 0x68, 0x1a, 0x50, 0x4d, + 0x6d, 0x34, 0x8f, 0x16, 0x26, 0x17, 0x1f, 0xba, 0x83, 0x49, 0xe7, 0xc2, 0x4d, 0xd0, 0x74, 0xfb, + 0x30, 0x81, 0xfa, 0xa5, 0xdc, 0xda, 0xc0, 0x77, 0xd5, 0xa1, 0xd2, 0x10, 0x37, 0x2f, 0x09, 0x65, + 0x43, 0x78, 0x34, 0x44, 0x68, 0x18, 0xd5, 0x10, 0x67, 0x3a, 0xf7, 0x6e, 0x16, 0xb4, 0x15, 0x3c, + 0xa6, 0x12, 0x60, 0x76, 0xc5, 0x20, 0x16, 0xdc, 0xeb, 0x5f, 0xde, 0x6d, 0x24, 0xc0, 0x0c, 0xc7, + 0xb8, 0x96, 0xbb, 0x95, 0xef, 0xc7, 0x76, 0x79, 0x06, 0x9d, 0x1e, 0xdb, 0x3f, 0x2b, 0xf8, 0x2d, + 0xae, 0xac, 0x83, 0xb6, 0xb6, 0x5b, 0x4b, 0x07, 0xcc, 0x51, 0xc0, 0x52, 0x09, 0x31, 0xa8, 0x5d, + 0xc7, 0xa7, 0x8a, 0x33, 0x27, 0x16, 0x6d, 0xae, 0x85, 0x7c, 0x3a, 0x3f, 0x1c, 0x56, 0x9a, 0xb6, + 0x03, 0x2a, 0x83, 0xbf, 0x8a, 0x0e, 0x28, 0x87, 0x0b, 0xa7, 0x7f, 0xba, 0x23, 0x81, 0x06, 0x78, + 0x07, 0x8f, 0xd7, 0x21, 0x89, 0x28, 0x03, 0x6b, 0x6b, 0xf4, 0x01, 0xa9, 0x82, 0xeb, 0xe8, 0x79, + 0x78, 0x08, 0xbd, 0x2f, 0xb9, 0x06, 0xfc, 0x06, 0x57, 0xd7, 0x24, 0x50, 0x7d, 0x3b, 0xe8, 0x97, + 0x10, 0xc1, 0x6d, 0xa0, 0xdf, 0xe1, 0xb1, 0x0d, 0xae, 0x6e, 0xe9, 0xbd, 0x6b, 0x0d, 0x3c, 0x51, + 0xfc, 0x6c, 0x6b, 0x1d, 0x8f, 0x87, 0xac, 0x69, 0xea, 0x24, 0x2f, 0x35, 0xf7, 0xa6, 0x3a, 0x59, + 0x8f, 0x84, 0x4f, 0xa3, 0xcb, 0x6a, 0xa9, 0x86, 0xec, 0x62, 0x5d, 0xfb, 0x5a, 0xc6, 0x53, 0x0d, + 0x4d, 0x75, 0xaa, 0xfe, 0xbb, 0x0f, 0x72, 0xf9, 0x88, 0x3e, 0xa8, 0xe3, 0xc9, 0x7c, 0x68, 0x34, + 0x25, 0xb4, 0x94, 0x5d, 0x9e, 0xaf, 0x2c, 0x4c, 0x2e, 0x3e, 0x18, 0xd9, 0x45, 0x75, 0x68, 0x5d, + 0x98, 0x57, 0x67, 0x8f, 0x3e, 0xcc, 0x0c, 0x5f, 0xb5, 0x8e, 0x45, 0xa1, 0x51, 0xd6, 0x0a, 0xc6, + 0x4c, 0xb4, 0x03, 0x6e, 0xba, 0xd6, 0xae, 0x8c, 0x44, 0xae, 0x15, 0x02, 0x73, 0x9f, 0x2b, 0x7a, + 0x6b, 0x13, 0x57, 0x95, 0xb9, 0xad, 0x3d, 0x66, 0x52, 0x59, 0xba, 0xe9, 0x95, 0x5e, 0xe7, 0x1f, + 0x5e, 0xf5, 0xf7, 0x79, 0xaa, 0xf5, 0x3e, 0x64, 0x79, 0xf6, 0xf4, 0xc5, 0x0c, 0x9e, 0xc6, 0x53, + 0x45, 0xc6, 0x6e, 0xca, 0x83, 0xd5, 0xcf, 0xe8, 0xe4, 0x8c, 0x94, 0xba, 0x67, 0xa4, 0x74, 0x7e, + 0x46, 0xd0, 0xc7, 0x8c, 0xa0, 0x2f, 0x19, 0x41, 0x3f, 0x32, 0x82, 0x4e, 0x32, 0x82, 0xba, 0x19, + 0x41, 0xbf, 0x32, 0x82, 0x7e, 0x67, 0xa4, 0x74, 0x9e, 0x11, 0xf4, 0xa9, 0x47, 0x4a, 0xdf, 0x7a, + 0x04, 0x9d, 0xf4, 0x48, 0xa9, 0xdb, 0x23, 0xa5, 0x9d, 0xed, 0x50, 0x24, 0x7b, 0xa1, 0xdb, 0x11, + 0x91, 0x06, 0x29, 0xa9, 0x9b, 0x2a, 0xcf, 0x2c, 0x5a, 0x42, 0xc6, 0x4e, 0x22, 0x45, 0x87, 0x07, + 0x20, 0x9d, 0x22, 0xec, 0x25, 0x7e, 0x28, 0x3c, 0x38, 0xd0, 0xfd, 0xa9, 0xf6, 0x8f, 0x01, 0xea, + 0x57, 0xcd, 0x7c, 0x7b, 0xf6, 0x27, 0x00, 0x00, 0xff, 0xff, 0xcb, 0x77, 0xe6, 0xcf, 0xe5, 0x05, 0x00, 0x00, } diff --git a/pbgo/extschema/schema/network_firewall/public_crudapi.pb.go b/pbgo/extschema/schema/network_firewall/public_crudapi.pb.go index 49209c066..505ac9ef2 100644 --- a/pbgo/extschema/schema/network_firewall/public_crudapi.pb.go +++ b/pbgo/extschema/schema/network_firewall/public_crudapi.pb.go @@ -1063,108 +1063,109 @@ func init() { } var fileDescriptor_7a5f58bbd4b981c7 = []byte{ - // 1608 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0x4f, - 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x1d, 0xda, 0xd4, 0x31, 0x65, 0x65, 0xdc, 0x82, - 0xa2, 0xa4, 0xde, 0x0d, 0xa9, 0x2a, 0x48, 0x54, 0x05, 0x9c, 0xc4, 0x8e, 0xd2, 0xa6, 0x49, 0x58, - 0xbb, 0x15, 0xe2, 0xc0, 0x6a, 0xbd, 0x7e, 0x76, 0x97, 0xd8, 0xde, 0xed, 0xee, 0xd8, 0x69, 0x84, - 0x22, 0xa1, 0x5e, 0xe0, 0x88, 0x84, 0xc4, 0x01, 0x01, 0xe2, 0x82, 0xc4, 0x91, 0x23, 0x52, 0x2e, - 0x15, 0x07, 0x5a, 0x55, 0x08, 0x55, 0xc0, 0x21, 0xc7, 0xd6, 0xe9, 0xa1, 0xc7, 0x0a, 0x71, 0xe4, - 0xf0, 0xd7, 0xce, 0xec, 0xba, 0xb6, 0xe3, 0xd6, 0x76, 0x9a, 0x93, 0x77, 0xe6, 0xbd, 0xf7, 0x9b, - 0xf7, 0x9b, 0xf7, 0xb1, 0xcf, 0x8b, 0x6f, 0x37, 0xc1, 0x91, 0x0c, 0x53, 0x76, 0xf4, 0xc7, 0x50, - 0xd3, 0xe4, 0x3a, 0xd0, 0x03, 0xd3, 0xde, 0x57, 0xcb, 0x86, 0x0d, 0x07, 0x5a, 0xb5, 0x2a, 0x5b, - 0x8d, 0x62, 0xd5, 0xd0, 0x55, 0xdd, 0x6e, 0x94, 0x34, 0xcb, 0x90, 0x2c, 0xdb, 0xa4, 0x26, 0x11, - 0xb9, 0x91, 0xc4, 0x8d, 0xa4, 0x5e, 0xa3, 0x44, 0xba, 0x62, 0xd0, 0xc7, 0x8d, 0xa2, 0xa4, 0x9b, - 0x35, 0xb9, 0x62, 0x56, 0x4c, 0x99, 0x99, 0x15, 0x1b, 0x65, 0xb6, 0x62, 0x0b, 0xf6, 0xc4, 0xe1, - 0x12, 0xd7, 0x2b, 0xa6, 0x59, 0xa9, 0x82, 0xac, 0x59, 0x86, 0xac, 0xd5, 0xeb, 0x26, 0xd5, 0xa8, - 0x61, 0xd6, 0x1d, 0x4f, 0xfa, 0x75, 0x4f, 0xda, 0xc6, 0x80, 0x9a, 0x45, 0x0f, 0x3d, 0x61, 0xa2, - 0xdb, 0x7d, 0xb0, 0x6d, 0xd3, 0xf6, 0x0d, 0x17, 0x06, 0x50, 0x33, 0x8b, 0x3f, 0x05, 0x9d, 0x7a, - 0xca, 0xf3, 0x03, 0x94, 0xe9, 0xa1, 0x05, 0x6d, 0x8f, 0xba, 0x75, 0x4d, 0xab, 0xd3, 0xdd, 0xd9, - 0x6e, 0x61, 0xa7, 0x5d, 0xaa, 0x5b, 0xd4, 0x04, 0x07, 0xea, 0xcd, 0x1e, 0xf3, 0x64, 0x8f, 0x8e, - 0x01, 0x07, 0x6a, 0x97, 0x46, 0xea, 0x2f, 0x08, 0x4f, 0xae, 0xdb, 0xa0, 0x51, 0x50, 0xe0, 0x49, - 0x03, 0x1c, 0x4a, 0xbe, 0x8f, 0x23, 0x35, 0xa0, 0x5a, 0x49, 0xa3, 0x5a, 0x1c, 0x25, 0xd1, 0x5c, - 0x6c, 0xe9, 0x86, 0xd4, 0x1d, 0xa1, 0x5d, 0x46, 0x95, 0x5b, 0x3d, 0x00, 0xaa, 0x15, 0x0e, 0x2d, - 0x50, 0xda, 0x46, 0x24, 0x8f, 0x43, 0x8e, 0x05, 0x7a, 0x3c, 0xc0, 0x8c, 0x25, 0xe9, 0xf3, 0xe1, - 0x95, 0x38, 0x4e, 0xde, 0x02, 0xdd, 0xc5, 0x59, 0x9b, 0xfe, 0xed, 0xd1, 0x84, 0x6b, 0x2e, 0x55, - 0x74, 0xd5, 0xfd, 0x55, 0x18, 0xd8, 0x4a, 0xf4, 0xd5, 0x6a, 0x98, 0x9f, 0x9b, 0xfa, 0x3f, 0xc2, - 0x53, 0xbe, 0xcb, 0x8e, 0x65, 0xd6, 0x1d, 0x20, 0x77, 0xcf, 0xf8, 0x9c, 0xec, 0xeb, 0xf3, 0x26, - 0xd0, 0x3e, 0x0e, 0xef, 0xe2, 0x69, 0xe7, 0xd0, 0xa1, 0x50, 0x53, 0xdb, 0x20, 0x41, 0x06, 0xf2, - 0xed, 0x1e, 0x90, 0x3c, 0xd3, 0x3a, 0x0b, 0x35, 0xc5, 0xcd, 0x1f, 0xf8, 0x80, 0x7b, 0x5d, 0x37, - 0xb0, 0x30, 0xe8, 0x06, 0x36, 0x81, 0x8e, 0x40, 0xff, 0x1d, 0xc2, 0x53, 0x0a, 0x58, 0x55, 0x4d, - 0x6f, 0x87, 0xec, 0x07, 0x67, 0xe8, 0xdf, 0xec, 0x4b, 0xdf, 0x33, 0xeb, 0x73, 0x05, 0x85, 0x2e, - 0x8f, 0xe5, 0x41, 0x1e, 0x7b, 0x40, 0x03, 0xbc, 0x26, 0x32, 0x16, 0x6c, 0x70, 0xcc, 0x86, 0xad, - 0x83, 0xda, 0x04, 0xdb, 0x31, 0xcc, 0x3a, 0xbb, 0xd9, 0xe8, 0x5a, 0xe8, 0xfd, 0x31, 0x42, 0xca, - 0xb4, 0x2f, 0x7d, 0xc4, 0x85, 0x9d, 0x34, 0x2f, 0xe3, 0xe9, 0x36, 0x4b, 0x1e, 0xe5, 0xd4, 0x1f, - 0x10, 0xc6, 0x9b, 0x40, 0x7d, 0xd6, 0xd7, 0x71, 0xb4, 0xae, 0xd5, 0xc0, 0xb1, 0x34, 0x1d, 0x18, - 0xed, 0xa8, 0xf2, 0x71, 0x83, 0x10, 0x1c, 0x72, 0x17, 0x8c, 0x51, 0x54, 0x61, 0xcf, 0xe4, 0x27, - 0xd8, 0x3d, 0x91, 0x81, 0xa9, 0x65, 0xd3, 0xae, 0x69, 0x94, 0xb9, 0x33, 0xb5, 0x74, 0x67, 0x88, - 0x10, 0xf9, 0x6e, 0xe4, 0x98, 0xe1, 0xba, 0x59, 0x02, 0x65, 0xca, 0xee, 0xda, 0x4b, 0xfd, 0x3e, - 0x8c, 0x63, 0x1d, 0x9a, 0x64, 0x07, 0xc7, 0x74, 0x96, 0xa8, 0xec, 0x34, 0xef, 0x72, 0xd3, 0xc3, - 0x15, 0x84, 0xc7, 0x52, 0xc1, 0x1c, 0xc1, 0x3d, 0x81, 0xfc, 0x10, 0x4f, 0xd8, 0xfc, 0x4e, 0x38, - 0x60, 0x70, 0xb8, 0x0a, 0xeb, 0xce, 0x16, 0x25, 0xe6, 0x61, 0x30, 0xc8, 0x7e, 0x21, 0x0a, 0x7d, - 0x26, 0x44, 0x5d, 0xa5, 0x36, 0x7e, 0x11, 0xa5, 0x76, 0xe9, 0x42, 0x4a, 0x2d, 0x7c, 0x51, 0xa5, - 0x46, 0xee, 0xe3, 0xb0, 0x43, 0x35, 0xda, 0x70, 0xe2, 0x7f, 0xfc, 0x1d, 0x4a, 0x06, 0xe7, 0x62, - 0x4b, 0xb7, 0x06, 0xa1, 0xe6, 0x99, 0x3e, 0x77, 0x76, 0x2d, 0xf8, 0xfc, 0x08, 0x29, 0x1e, 0x04, - 0xd9, 0xc2, 0x97, 0x6d, 0x28, 0x83, 0x6d, 0x1b, 0xf5, 0x8a, 0xca, 0x5f, 0x11, 0x4e, 0x3c, 0xc2, - 0x50, 0xaf, 0x7f, 0xa2, 0x44, 0xcb, 0x8c, 0xa7, 0xd0, 0x36, 0xe3, 0xfb, 0x0e, 0x79, 0x84, 0xe3, - 0x25, 0xa8, 0x02, 0x85, 0x92, 0xca, 0x65, 0x50, 0x6a, 0x23, 0x46, 0x87, 0x40, 0x9c, 0xf1, 0xac, - 0x15, 0xcf, 0xd8, 0xc7, 0xfd, 0x11, 0x9e, 0x2d, 0x19, 0x8e, 0x56, 0xac, 0xf6, 0x03, 0xc6, 0x43, - 0x00, 0x5f, 0xf3, 0xcd, 0x7b, 0x90, 0x3b, 0xaa, 0xf9, 0x5e, 0x28, 0x82, 0x84, 0x40, 0xea, 0x4f, - 0x08, 0xc7, 0xb6, 0x0d, 0x67, 0xc8, 0x0a, 0xfe, 0x26, 0x9e, 0xa8, 0x6a, 0x45, 0xa8, 0xaa, 0x65, - 0xa3, 0x4a, 0xc1, 0xf6, 0x2a, 0x39, 0xc6, 0xf6, 0x72, 0x6c, 0x8b, 0xdc, 0xc0, 0x93, 0x36, 0x58, - 0xa6, 0x4d, 0xd5, 0xb2, 0x01, 0xd5, 0x92, 0x13, 0x0f, 0x26, 0x83, 0x73, 0x51, 0x65, 0x82, 0x6f, - 0xe6, 0xd8, 0x1e, 0x59, 0xc4, 0x57, 0x3c, 0x25, 0x1e, 0x14, 0x5f, 0x37, 0xc4, 0x74, 0x09, 0x97, - 0xf1, 0x10, 0x72, 0x8b, 0xd4, 0x3f, 0xc2, 0x58, 0xe0, 0x7e, 0xf2, 0x42, 0xde, 0xa2, 0x50, 0x23, - 0x33, 0x38, 0x4c, 0xa1, 0xae, 0xd5, 0x29, 0xcb, 0xb5, 0xa8, 0xe2, 0xad, 0xce, 0xd1, 0x86, 0x04, - 0x1c, 0x6c, 0x18, 0x25, 0xde, 0x09, 0x15, 0xf7, 0x91, 0x24, 0x71, 0xac, 0x04, 0x8e, 0x6e, 0x1b, - 0xec, 0xdd, 0x1c, 0x8f, 0x71, 0xa6, 0x1d, 0x5b, 0x24, 0x81, 0x23, 0xfe, 0x35, 0xc7, 0x27, 0x92, - 0x68, 0x2e, 0xa2, 0xb4, 0xd7, 0xa4, 0x80, 0xc3, 0xec, 0x52, 0x38, 0xa5, 0xd8, 0xd2, 0xdd, 0x41, - 0xf9, 0xda, 0xcb, 0x4d, 0xda, 0x66, 0xe6, 0xd9, 0x3a, 0xb5, 0x0f, 0x15, 0x0f, 0x8b, 0xe8, 0x38, - 0xd6, 0x31, 0x3e, 0x79, 0x99, 0x90, 0x19, 0x19, 0x3a, 0xf3, 0x11, 0x83, 0xe3, 0x77, 0xa2, 0x92, - 0x65, 0x8c, 0xcd, 0x83, 0x3a, 0xd8, 0xaa, 0x3b, 0x9a, 0xc4, 0xa3, 0xac, 0x88, 0x13, 0x3d, 0x67, - 0x3c, 0x32, 0xe0, 0xc0, 0xcf, 0xb5, 0x28, 0xd3, 0x76, 0x77, 0xba, 0x1a, 0xd1, 0xe4, 0x45, 0x34, - 0xa2, 0xa9, 0x2f, 0x6a, 0x44, 0x39, 0x1c, 0xa9, 0x00, 0x65, 0x8d, 0xc4, 0x6b, 0x69, 0xa3, 0x34, - 0x23, 0xe5, 0x52, 0x85, 0x2f, 0xc8, 0x1e, 0xc6, 0x5e, 0x9a, 0x3a, 0x40, 0xbd, 0x56, 0x71, 0x8e, - 0x06, 0x14, 0xe5, 0x20, 0x79, 0xa0, 0x89, 0x65, 0x1c, 0xeb, 0x88, 0xaf, 0x9b, 0x7d, 0xfb, 0x70, - 0xe8, 0x65, 0xaa, 0xfb, 0x48, 0xae, 0xe0, 0xf1, 0xa6, 0x56, 0x6d, 0xf8, 0x49, 0xca, 0x17, 0x2b, - 0x81, 0xef, 0xa1, 0xc4, 0x2a, 0x16, 0x7a, 0xe3, 0x37, 0x8a, 0xfd, 0xbd, 0x50, 0x64, 0x5c, 0x08, - 0xa7, 0x7e, 0x89, 0xf0, 0x44, 0x67, 0x5e, 0x90, 0x1c, 0x1e, 0x37, 0x28, 0xd4, 0x9c, 0x38, 0xef, - 0xaf, 0x8b, 0xa3, 0x26, 0x95, 0xc2, 0xcd, 0xc9, 0x22, 0x0e, 0xf3, 0x19, 0x3d, 0x1e, 0x60, 0x40, - 0xf1, 0x1e, 0xa0, 0xac, 0x2b, 0x64, 0xd7, 0xeb, 0xe9, 0xa5, 0xf6, 0xf1, 0xe4, 0x06, 0x6b, 0x83, - 0xe7, 0x1f, 0x22, 0xe6, 0xb0, 0x50, 0xd6, 0x8c, 0xaa, 0x6a, 0x94, 0xdb, 0xed, 0x92, 0x95, 0x72, - 0x44, 0x99, 0x72, 0xf7, 0xb7, 0xca, 0x7e, 0x1b, 0x9c, 0xff, 0x2f, 0xc2, 0x57, 0xfb, 0x0e, 0x0e, - 0x24, 0x81, 0x67, 0x36, 0xb3, 0x05, 0x55, 0xc9, 0xef, 0xa9, 0xb9, 0x5d, 0xe5, 0x41, 0xa6, 0xa0, - 0x6e, 0x64, 0x73, 0x99, 0x87, 0xdb, 0x05, 0x61, 0x8c, 0x7c, 0x03, 0xcf, 0xf6, 0xc8, 0x72, 0xbb, - 0x8a, 0xba, 0xae, 0x64, 0x33, 0x85, 0xac, 0x80, 0x88, 0x88, 0x13, 0x7d, 0xc4, 0x4a, 0x76, 0x6f, - 0x3b, 0xb3, 0x9e, 0x15, 0x02, 0x64, 0x16, 0x5f, 0xed, 0x91, 0xe7, 0x0b, 0x99, 0xc2, 0xc3, 0xbc, - 0x10, 0x24, 0xd7, 0xf0, 0xd7, 0x7a, 0x44, 0x4a, 0x36, 0xb3, 0x21, 0x84, 0xc8, 0x4d, 0x9c, 0x3c, - 0x23, 0xc8, 0x65, 0x15, 0x65, 0x6b, 0x67, 0x53, 0xdd, 0x5d, 0xbb, 0x97, 0x5d, 0x2f, 0xe4, 0x85, - 0xf1, 0x3e, 0x5a, 0x6b, 0xca, 0xee, 0xfd, 0xec, 0x0e, 0x57, 0xce, 0xee, 0xac, 0x67, 0xf3, 0x42, - 0x78, 0xe9, 0x6f, 0x51, 0x1c, 0xcc, 0xec, 0x6d, 0x91, 0x37, 0x08, 0x87, 0xf9, 0x24, 0x43, 0x46, - 0x9b, 0x78, 0x12, 0xd2, 0xb0, 0xea, 0xde, 0x58, 0x78, 0xd0, 0x7a, 0x11, 0x97, 0xcb, 0x77, 0x9e, - 0xea, 0x69, 0x07, 0xf4, 0x86, 0x0d, 0x35, 0x70, 0x1e, 0xa7, 0x8b, 0x9a, 0x63, 0xe8, 0xe9, 0x86, - 0x03, 0xf6, 0xad, 0x26, 0x38, 0x69, 0xc3, 0x4c, 0x7b, 0x30, 0xe9, 0x03, 0xdb, 0xa0, 0xf0, 0xec, - 0xdf, 0xef, 0x7e, 0x1d, 0x58, 0x4d, 0x2d, 0x7b, 0xff, 0x48, 0xe5, 0x76, 0xc8, 0x1d, 0xf9, 0x67, - 0x7e, 0x43, 0x90, 0xda, 0x9b, 0x47, 0x67, 0xfe, 0xc1, 0x39, 0x2b, 0x68, 0x9e, 0x9c, 0x20, 0x1c, - 0xdc, 0x04, 0x4a, 0xe6, 0x87, 0x9a, 0x1e, 0x39, 0xb9, 0x85, 0x11, 0x26, 0xcd, 0xd4, 0xd3, 0x97, - 0x7f, 0x0d, 0xa0, 0xd6, 0x8b, 0xf8, 0x77, 0xfa, 0xb3, 0xab, 0x99, 0x75, 0x83, 0x9a, 0x67, 0x08, - 0xda, 0xa0, 0x95, 0x18, 0xbf, 0x65, 0xf2, 0xdd, 0x7e, 0xfc, 0x3e, 0x47, 0x8b, 0x4b, 0x8f, 0xc8, - 0x7f, 0x10, 0x0e, 0xb9, 0x55, 0x47, 0x16, 0x86, 0xab, 0x4d, 0x4e, 0xee, 0xd6, 0x28, 0x85, 0x9c, - 0x7a, 0xf2, 0x65, 0xec, 0x96, 0xc8, 0xe2, 0xa8, 0xec, 0xc8, 0xff, 0x10, 0xbe, 0xe4, 0x4d, 0xc3, - 0x64, 0xc4, 0xb1, 0x39, 0x21, 0x0f, 0xad, 0xef, 0xf1, 0xfb, 0x05, 0x3a, 0x6f, 0x62, 0xee, 0x24, - 0xb6, 0xce, 0x9d, 0x98, 0x3d, 0x6a, 0x47, 0x6e, 0xa2, 0xfe, 0x1d, 0xe1, 0x30, 0x6f, 0x7b, 0x83, - 0x6b, 0xb1, 0xab, 0x3d, 0x26, 0x66, 0x24, 0xfe, 0xbd, 0x44, 0xf2, 0xbf, 0x97, 0x48, 0xd9, 0x9a, - 0x45, 0x0f, 0x53, 0x8d, 0xf3, 0x52, 0xbb, 0x3b, 0x7f, 0xde, 0x9c, 0x5c, 0x41, 0xf3, 0x89, 0xf2, - 0xf3, 0x63, 0x14, 0xf8, 0xd7, 0x31, 0xfa, 0xd6, 0x00, 0x12, 0xfc, 0x4d, 0x78, 0x72, 0x8c, 0x50, - 0xeb, 0x18, 0x2d, 0x8c, 0xf0, 0xf2, 0x7c, 0xf6, 0xcf, 0x78, 0x40, 0x40, 0x6b, 0xbf, 0x41, 0xaf, - 0x56, 0xc7, 0xd7, 0x95, 0x87, 0x1b, 0xdb, 0xaf, 0xdf, 0x8a, 0x63, 0x27, 0x6f, 0xc5, 0xb1, 0x0f, - 0x6f, 0x45, 0xf4, 0xf3, 0x96, 0x88, 0xfe, 0xdc, 0x12, 0xd1, 0xcb, 0x96, 0x88, 0x5e, 0xb7, 0x44, - 0xf4, 0xa6, 0x25, 0xa2, 0xf7, 0x2d, 0x71, 0xec, 0x43, 0x4b, 0x44, 0xbf, 0x3a, 0x15, 0xc7, 0x9e, - 0x9f, 0x8a, 0xe8, 0xf5, 0xa9, 0x38, 0x76, 0x72, 0x2a, 0x8e, 0xfd, 0xb8, 0x50, 0x31, 0xad, 0xfd, - 0x8a, 0xd4, 0x34, 0xdd, 0x41, 0xd5, 0xd6, 0xa4, 0x86, 0x23, 0xb3, 0x07, 0xf7, 0x8f, 0x5b, 0xda, - 0xb2, 0xcd, 0xa6, 0x51, 0x02, 0x3b, 0xed, 0x8b, 0x65, 0xab, 0x58, 0x31, 0x65, 0x78, 0x4a, 0xbd, - 0x2f, 0x35, 0x9f, 0xf8, 0x70, 0x54, 0x0c, 0xb3, 0x38, 0xdc, 0xfe, 0x2a, 0x00, 0x00, 0xff, 0xff, - 0x09, 0xeb, 0x64, 0x77, 0x69, 0x13, 0x00, 0x00, + // 1625 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1b, 0xc5, + 0x17, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x9d, 0x7f, 0x9b, 0x3a, 0xfe, 0x97, 0x95, 0x71, + 0x0b, 0x8a, 0x92, 0x7a, 0x1d, 0xa5, 0xaa, 0x20, 0x51, 0x15, 0x70, 0x12, 0x3b, 0x4a, 0x9b, 0x2f, + 0xd6, 0x6e, 0x85, 0x38, 0xb0, 0x5a, 0xaf, 0xc7, 0xee, 0x12, 0xdb, 0xbb, 0xec, 0x8c, 0x9d, 0x46, + 0x28, 0x12, 0xea, 0x89, 0x23, 0x6a, 0x05, 0x12, 0x08, 0x10, 0x97, 0x4a, 0x1c, 0x39, 0x22, 0xe5, + 0xd2, 0x1b, 0x55, 0x85, 0x50, 0x05, 0x97, 0x1e, 0xa9, 0x53, 0xa4, 0x1e, 0x2b, 0x0e, 0x1c, 0x10, + 0x12, 0x68, 0x67, 0x76, 0x5d, 0xdb, 0x71, 0x63, 0x3b, 0xa4, 0x27, 0xef, 0xcc, 0x7b, 0xef, 0x37, + 0xef, 0xf7, 0xe6, 0xbd, 0xb7, 0xcf, 0x0b, 0x2f, 0xd6, 0x30, 0x91, 0x74, 0x23, 0x41, 0xb4, 0x1b, + 0xb8, 0xac, 0x26, 0x2a, 0x98, 0x6e, 0x1b, 0xd6, 0x96, 0x52, 0xd0, 0x2d, 0xbc, 0xad, 0x96, 0x4a, + 0x09, 0xb3, 0x9a, 0x2b, 0xe9, 0x9a, 0xa2, 0x59, 0xd5, 0xbc, 0x6a, 0xea, 0x92, 0x69, 0x19, 0xd4, + 0x40, 0x22, 0x37, 0x92, 0xb8, 0x91, 0xd4, 0x6e, 0x14, 0x89, 0x17, 0x75, 0x7a, 0xa3, 0x9a, 0x93, + 0x34, 0xa3, 0x9c, 0x28, 0x1a, 0x45, 0x23, 0xc1, 0xcc, 0x72, 0xd5, 0x02, 0x5b, 0xb1, 0x05, 0x7b, + 0xe2, 0x70, 0x91, 0xb3, 0x45, 0xc3, 0x28, 0x96, 0x70, 0x42, 0x35, 0xf5, 0x84, 0x5a, 0xa9, 0x18, + 0x54, 0xa5, 0xba, 0x51, 0x21, 0x8e, 0xf4, 0xff, 0x8e, 0xb4, 0x81, 0x81, 0xcb, 0x26, 0xdd, 0x71, + 0x84, 0x91, 0x56, 0xf7, 0xb1, 0x65, 0x19, 0x96, 0x6b, 0x38, 0xd5, 0x85, 0x9a, 0x91, 0xfb, 0x00, + 0x6b, 0xd4, 0x51, 0x9e, 0xec, 0xa2, 0x4c, 0x77, 0x4c, 0xdc, 0xf0, 0xa8, 0x55, 0xd7, 0x30, 0x9b, + 0xdd, 0x1d, 0x6f, 0x15, 0x36, 0xdb, 0xc5, 0x5a, 0x45, 0x35, 0x4c, 0x70, 0xa5, 0xd6, 0x66, 0x1e, + 0x6d, 0xd3, 0xd1, 0xf1, 0xb6, 0xd2, 0xa2, 0x11, 0xfb, 0x1e, 0xc0, 0xe1, 0x45, 0x0b, 0xab, 0x14, + 0xcb, 0xf8, 0xc3, 0x2a, 0x26, 0x14, 0xbd, 0x05, 0x03, 0x65, 0x4c, 0xd5, 0xbc, 0x4a, 0xd5, 0x30, + 0x88, 0x82, 0x89, 0xd0, 0xcc, 0x39, 0xa9, 0xf5, 0x86, 0x36, 0x18, 0x55, 0x6e, 0xb5, 0x86, 0xa9, + 0x9a, 0xdd, 0x31, 0xb1, 0xdc, 0x30, 0x42, 0x19, 0xe8, 0x23, 0x26, 0xd6, 0xc2, 0x1e, 0x66, 0x2c, + 0x49, 0x87, 0x5f, 0xaf, 0xc4, 0x71, 0x32, 0x26, 0xd6, 0x6c, 0x9c, 0x85, 0xd1, 0x2f, 0x77, 0x87, + 0x6c, 0x73, 0xa9, 0xa8, 0x29, 0xf6, 0xaf, 0xcc, 0xc0, 0xe6, 0x82, 0x0f, 0xe6, 0xfd, 0xfc, 0xdc, + 0xd8, 0xdf, 0x00, 0x8e, 0xb8, 0x2e, 0x13, 0xd3, 0xa8, 0x10, 0x8c, 0x2e, 0x1f, 0xf0, 0x39, 0xda, + 0xd1, 0xe7, 0x65, 0x4c, 0x3b, 0x38, 0xbc, 0x01, 0x47, 0xc9, 0x0e, 0xa1, 0xb8, 0xac, 0x34, 0x40, + 0xbc, 0x0c, 0xe4, 0xf5, 0x36, 0x90, 0x0c, 0xd3, 0x3a, 0x08, 0x35, 0xc2, 0xcd, 0xd7, 0x5c, 0xc0, + 0xcd, 0x96, 0x08, 0x4c, 0x75, 0x8b, 0xc0, 0x32, 0xa6, 0x7d, 0xd0, 0x7f, 0x02, 0xe0, 0x88, 0x8c, + 0xcd, 0x92, 0xaa, 0x35, 0xae, 0xec, 0xed, 0x03, 0xf4, 0xcf, 0x77, 0xa4, 0xef, 0x98, 0x75, 0x08, + 0x41, 0xb6, 0xc5, 0xe3, 0x44, 0x37, 0x8f, 0x1d, 0xa0, 0x2e, 0x5e, 0xa3, 0x04, 0x14, 0x2c, 0x4c, + 0x8c, 0xaa, 0xa5, 0x61, 0xa5, 0x86, 0x2d, 0xa2, 0x1b, 0x15, 0x16, 0xd9, 0xe0, 0x82, 0xef, 0xe9, + 0x1e, 0x00, 0xf2, 0xa8, 0x2b, 0xbd, 0xce, 0x85, 0xcd, 0x34, 0x4f, 0xc2, 0xd1, 0x06, 0x4b, 0x7e, + 0xcb, 0xb1, 0x6f, 0x00, 0x84, 0xcb, 0x98, 0xba, 0xac, 0xcf, 0xc2, 0x60, 0x45, 0x2d, 0x63, 0x62, + 0xaa, 0x1a, 0x66, 0xb4, 0x83, 0xf2, 0xf3, 0x0d, 0x84, 0xa0, 0xcf, 0x5e, 0x30, 0x46, 0x41, 0x99, + 0x3d, 0xa3, 0xf7, 0xa1, 0x7d, 0x22, 0x03, 0x53, 0x0a, 0x86, 0x55, 0x56, 0x29, 0x73, 0x67, 0x64, + 0xe6, 0x52, 0x0f, 0x57, 0xe4, 0xba, 0x91, 0x66, 0x86, 0x8b, 0x46, 0x1e, 0xcb, 0x23, 0x56, 0xcb, + 0x5e, 0xec, 0x6b, 0x3f, 0x0c, 0x35, 0x69, 0xa2, 0x75, 0x18, 0xd2, 0x58, 0xa2, 0xb2, 0xd3, 0x9c, + 0xe0, 0xc6, 0x7b, 0x2b, 0x08, 0x87, 0xa5, 0x0c, 0x39, 0x82, 0x7d, 0x02, 0x7a, 0x07, 0x0e, 0x59, + 0x3c, 0x26, 0x1c, 0xd0, 0xdb, 0x5b, 0x85, 0xb5, 0x66, 0x8b, 0x1c, 0x72, 0x30, 0x18, 0x64, 0xa7, + 0x2b, 0xf2, 0x1d, 0x72, 0x45, 0x2d, 0xa5, 0x36, 0x78, 0x1c, 0xa5, 0x76, 0xe2, 0x58, 0x4a, 0xcd, + 0x7f, 0x5c, 0xa5, 0x86, 0xae, 0x42, 0x3f, 0xa1, 0x2a, 0xad, 0x92, 0xf0, 0xb7, 0x5f, 0x81, 0xa8, + 0x77, 0x22, 0x34, 0x73, 0xa1, 0x1b, 0x6a, 0x86, 0xe9, 0x73, 0x67, 0x17, 0xbc, 0xf7, 0x76, 0x81, + 0xec, 0x40, 0xa0, 0x15, 0x78, 0xd2, 0xc2, 0x05, 0x6c, 0x59, 0x7a, 0xa5, 0xa8, 0xf0, 0x57, 0x04, + 0x09, 0x07, 0x18, 0xea, 0xd9, 0x17, 0x94, 0x68, 0x81, 0xf1, 0x14, 0x1a, 0x66, 0x7c, 0x9f, 0xa0, + 0xeb, 0x30, 0x9c, 0xc7, 0x25, 0x4c, 0x71, 0x5e, 0xe1, 0x32, 0x9c, 0x6f, 0x20, 0x06, 0x7b, 0x40, + 0x1c, 0x73, 0xac, 0x65, 0xc7, 0xd8, 0xc5, 0x7d, 0x17, 0x8e, 0xe7, 0x75, 0xa2, 0xe6, 0x4a, 0x9d, + 0x80, 0x61, 0x0f, 0xc0, 0x67, 0x5c, 0xf3, 0x36, 0xe4, 0xa6, 0x6a, 0xbe, 0xe2, 0x0b, 0x00, 0xc1, + 0x13, 0xbb, 0x0b, 0x60, 0x68, 0x55, 0x27, 0x3d, 0x56, 0xf0, 0xab, 0x70, 0xa8, 0xa4, 0xe6, 0x70, + 0x49, 0x29, 0xe8, 0x25, 0x8a, 0x2d, 0xa7, 0x92, 0x43, 0x6c, 0x2f, 0xcd, 0xb6, 0xd0, 0x39, 0x38, + 0x6c, 0x61, 0xd3, 0xb0, 0xa8, 0x52, 0xd0, 0x71, 0x29, 0x4f, 0xc2, 0xde, 0xa8, 0x77, 0x22, 0x28, + 0x0f, 0xf1, 0xcd, 0x34, 0xdb, 0x43, 0xd3, 0xf0, 0x94, 0xa3, 0xc4, 0x2f, 0xc5, 0xd5, 0xf5, 0x31, + 0x5d, 0xc4, 0x65, 0xfc, 0x0a, 0xb9, 0x45, 0xec, 0x27, 0x3f, 0x14, 0xb8, 0x9f, 0xbc, 0x90, 0x57, + 0x28, 0x2e, 0xa3, 0x31, 0xe8, 0xa7, 0xb8, 0xa2, 0x56, 0x28, 0xcb, 0xb5, 0xa0, 0xec, 0xac, 0x8e, + 0xd0, 0x86, 0x04, 0xe8, 0xad, 0xea, 0x79, 0xde, 0x09, 0x65, 0xfb, 0x11, 0x45, 0x61, 0x28, 0x8f, + 0x89, 0x66, 0xe9, 0xec, 0xdd, 0x1c, 0x0e, 0x71, 0xa6, 0x4d, 0x5b, 0x28, 0x02, 0x03, 0x6e, 0x98, + 0xc3, 0x43, 0x51, 0x30, 0x11, 0x90, 0x1b, 0x6b, 0x94, 0x85, 0x7e, 0x16, 0x14, 0x4e, 0x29, 0x34, + 0x73, 0xb9, 0x5b, 0xbe, 0xb6, 0x73, 0x93, 0x56, 0x99, 0x79, 0xaa, 0x42, 0xad, 0x1d, 0xd9, 0xc1, + 0x42, 0x1a, 0x0c, 0x35, 0x8d, 0x4f, 0x4e, 0x26, 0x24, 0xfb, 0x86, 0x4e, 0x3e, 0xc7, 0xe0, 0xf8, + 0xcd, 0xa8, 0x68, 0x16, 0x42, 0x63, 0xbb, 0x82, 0x2d, 0xc5, 0x1e, 0x4d, 0xc2, 0x41, 0x56, 0xc4, + 0x91, 0xb6, 0x33, 0xae, 0xeb, 0x78, 0xdb, 0xcd, 0xb5, 0x20, 0xd3, 0xb6, 0x77, 0x5a, 0x1a, 0xd1, + 0xf0, 0x71, 0x34, 0xa2, 0x91, 0xff, 0xd4, 0x88, 0xd2, 0x30, 0x50, 0xc4, 0x94, 0x35, 0x12, 0xa7, + 0xa5, 0xf5, 0xd3, 0x8c, 0xe4, 0x13, 0x45, 0xbe, 0x40, 0x9b, 0x10, 0x3a, 0x69, 0x4a, 0x30, 0x75, + 0x5a, 0xc5, 0x11, 0x1a, 0x50, 0x90, 0x83, 0x64, 0x30, 0x8d, 0xcc, 0xc2, 0x50, 0xd3, 0xfd, 0xda, + 0xd9, 0xb7, 0x85, 0x77, 0x9c, 0x4c, 0xb5, 0x1f, 0xd1, 0x29, 0x38, 0x58, 0x53, 0x4b, 0x55, 0x37, + 0x49, 0xf9, 0x62, 0xce, 0xf3, 0x26, 0x88, 0xcc, 0x43, 0xa1, 0xfd, 0xfe, 0xfa, 0xb1, 0xbf, 0xe2, + 0x0b, 0x0c, 0x0a, 0xfe, 0xd8, 0x27, 0x00, 0x0e, 0x35, 0xe7, 0x05, 0x4a, 0xc3, 0x41, 0x9d, 0xe2, + 0x32, 0x09, 0xf3, 0xfe, 0x3a, 0xdd, 0x6f, 0x52, 0xc9, 0xdc, 0x1c, 0x4d, 0x43, 0x3f, 0x9f, 0xd1, + 0xc3, 0x1e, 0x06, 0x14, 0x6e, 0x03, 0x4a, 0xd9, 0x42, 0x16, 0x5e, 0x47, 0x2f, 0xb6, 0x05, 0x87, + 0x97, 0x58, 0x1b, 0x3c, 0xfa, 0x10, 0x31, 0x01, 0x85, 0x82, 0xaa, 0x97, 0x14, 0xbd, 0xd0, 0x68, + 0x97, 0xac, 0x94, 0x03, 0xf2, 0x88, 0xbd, 0xbf, 0x52, 0x70, 0xdb, 0xe0, 0xe4, 0x1f, 0x00, 0x9e, + 0xee, 0x38, 0x38, 0xa0, 0x08, 0x1c, 0x5b, 0x4e, 0x65, 0x15, 0x39, 0xb3, 0xa9, 0xa4, 0x37, 0xe4, + 0xb5, 0x64, 0x56, 0x59, 0x4a, 0xa5, 0x93, 0xd7, 0x56, 0xb3, 0xc2, 0x00, 0x7a, 0x05, 0x8e, 0xb7, + 0xc9, 0xd2, 0x1b, 0xb2, 0xb2, 0x28, 0xa7, 0x92, 0xd9, 0x94, 0x00, 0x90, 0x08, 0x23, 0x1d, 0xc4, + 0x72, 0x6a, 0x73, 0x35, 0xb9, 0x98, 0x12, 0x3c, 0x68, 0x1c, 0x9e, 0x6e, 0x93, 0x67, 0xb2, 0xc9, + 0xec, 0xb5, 0x8c, 0xe0, 0x45, 0x67, 0xe0, 0xff, 0xda, 0x44, 0x72, 0x2a, 0xb9, 0x24, 0xf8, 0xd0, + 0x79, 0x18, 0x3d, 0x20, 0x48, 0xa7, 0x64, 0x79, 0x65, 0x7d, 0x59, 0xd9, 0x58, 0xb8, 0x92, 0x5a, + 0xcc, 0x66, 0x84, 0xc1, 0x0e, 0x5a, 0x0b, 0xf2, 0xc6, 0xd5, 0xd4, 0x3a, 0x57, 0x4e, 0xad, 0x2f, + 0xa6, 0x32, 0x82, 0x7f, 0xa6, 0x0e, 0xa1, 0x37, 0xb9, 0xb9, 0x82, 0xfe, 0x01, 0xd0, 0xcf, 0x27, + 0x19, 0xd4, 0xdf, 0xc4, 0x13, 0x91, 0x7a, 0x55, 0x77, 0xc6, 0xc2, 0xcf, 0x40, 0xfd, 0xc7, 0xf0, + 0x5a, 0xe1, 0xd2, 0x4d, 0x2d, 0x4e, 0xb0, 0x56, 0xb5, 0x70, 0x19, 0x93, 0x1b, 0xf1, 0x9c, 0x4a, + 0x74, 0x2d, 0x5e, 0x25, 0xd8, 0xba, 0xd0, 0x2e, 0x22, 0x54, 0xad, 0xe4, 0x55, 0x2b, 0xcf, 0xa5, + 0x35, 0x4c, 0xe2, 0xba, 0x11, 0x77, 0x4e, 0x89, 0x6f, 0x5b, 0x3a, 0xc5, 0xb7, 0x7e, 0x7d, 0x72, + 0xc7, 0x33, 0x1f, 0x9b, 0x75, 0xfe, 0xb0, 0x26, 0x1a, 0x19, 0x41, 0x12, 0x1f, 0xb9, 0xfd, 0x42, + 0x6a, 0x6c, 0xee, 0x1e, 0xf8, 0x83, 0x47, 0xe6, 0xc0, 0x24, 0xfa, 0x0b, 0x40, 0xef, 0x32, 0xa6, + 0x68, 0xb2, 0xa7, 0xe1, 0x92, 0x73, 0x9f, 0xea, 0x63, 0x10, 0x8d, 0x7d, 0x01, 0xee, 0xff, 0xe0, + 0xb1, 0xc9, 0xcb, 0x9d, 0xc9, 0x97, 0x8d, 0x8a, 0x4e, 0x8d, 0x43, 0xf8, 0xbb, 0x0a, 0x6d, 0x21, + 0xb0, 0xb0, 0x9a, 0x67, 0x11, 0x98, 0x45, 0x6f, 0x74, 0x8a, 0xc0, 0x61, 0xc4, 0xb9, 0x74, 0x17, + 0xfd, 0x09, 0xa0, 0xcf, 0x2e, 0x5b, 0x34, 0xd5, 0x5b, 0x71, 0x73, 0xfa, 0x17, 0xfa, 0xe9, 0x04, + 0xb1, 0xdb, 0x2f, 0x9b, 0xff, 0x0c, 0x9a, 0xee, 0x97, 0x3f, 0xba, 0xed, 0x81, 0x27, 0x9c, 0x81, + 0x1b, 0xf5, 0x39, 0x99, 0x47, 0x12, 0x3d, 0xeb, 0x3b, 0x11, 0xb8, 0xfb, 0x92, 0x52, 0x7f, 0x3d, + 0xb2, 0x72, 0xe4, 0xd4, 0x6f, 0x53, 0xdb, 0xb5, 0x4b, 0xe1, 0x77, 0x00, 0xfd, 0xbc, 0xef, 0x76, + 0x6f, 0x06, 0x2d, 0xfd, 0x39, 0x32, 0x26, 0xf1, 0x0f, 0x36, 0x92, 0xfb, 0xc1, 0x46, 0x4a, 0x95, + 0x4d, 0xba, 0x13, 0xbb, 0xf3, 0x92, 0x98, 0x5f, 0x9e, 0x3c, 0x6a, 0xca, 0xcf, 0x81, 0xc9, 0x48, + 0xe1, 0xde, 0x1e, 0xf0, 0xfc, 0xb2, 0x07, 0x5e, 0xeb, 0xc2, 0x91, 0xbf, 0xa9, 0x1f, 0xed, 0x01, + 0x50, 0xdf, 0x03, 0x53, 0x7d, 0xbc, 0xdc, 0x6f, 0xfd, 0x1c, 0xf6, 0x08, 0x60, 0xe1, 0x73, 0xf0, + 0x60, 0x7e, 0x70, 0x51, 0xbe, 0xb6, 0xb4, 0xfa, 0xf0, 0xb1, 0x38, 0xf0, 0xe8, 0xb1, 0x38, 0xf0, + 0xec, 0xb1, 0x08, 0x3e, 0xae, 0x8b, 0xe0, 0xbb, 0xba, 0x08, 0xee, 0xd7, 0x45, 0xf0, 0xb0, 0x2e, + 0x82, 0xdf, 0xea, 0x22, 0x78, 0x5a, 0x17, 0x07, 0x9e, 0xd5, 0x45, 0xf0, 0xe9, 0xbe, 0x38, 0x70, + 0x6f, 0x5f, 0x04, 0x0f, 0xf7, 0xc5, 0x81, 0x47, 0xfb, 0xe2, 0xc0, 0x7b, 0xd9, 0xa2, 0x61, 0x6e, + 0x15, 0xa5, 0x9a, 0x61, 0x0f, 0xd2, 0x96, 0x2a, 0x55, 0x49, 0x82, 0x3d, 0xd8, 0x7f, 0x2c, 0xe3, + 0xa6, 0x65, 0xd4, 0xf4, 0x3c, 0xb6, 0xe2, 0xae, 0x38, 0x61, 0xe6, 0x8a, 0x46, 0x02, 0xdf, 0xa4, + 0xce, 0x97, 0xa4, 0x17, 0x7c, 0xd8, 0xca, 0xf9, 0xd9, 0x35, 0x5d, 0xfc, 0x37, 0x00, 0x00, 0xff, + 0xff, 0x01, 0xa0, 0x34, 0x3d, 0x09, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/network_firewall/public_crudapi.vesapi.go b/pbgo/extschema/schema/network_firewall/public_crudapi.vesapi.go index ea38e6265..9cdcd1c6d 100644 --- a/pbgo/extschema/schema/network_firewall/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/network_firewall/public_crudapi.vesapi.go @@ -3054,10 +3054,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3114,10 +3118,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3176,10 +3184,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_interface/crudapi/api.vesapi.go b/pbgo/extschema/schema/network_interface/crudapi/api.vesapi.go index 9097869d5..c66d0dc71 100644 --- a/pbgo/extschema/schema/network_interface/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/network_interface/crudapi/api.vesapi.go @@ -4580,10 +4580,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_interface/object.pb.go b/pbgo/extschema/schema/network_interface/object.pb.go index da54849a3..84dbf2828 100644 --- a/pbgo/extschema/schema/network_interface/object.pb.go +++ b/pbgo/extschema/schema/network_interface/object.pb.go @@ -246,46 +246,48 @@ func init() { } var fileDescriptor_83e934c11792c12d = []byte{ - // 619 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0x14, 0x3f, - 0x18, 0xc7, 0xb7, 0xbb, 0x9b, 0x85, 0x14, 0xc2, 0x8f, 0xdf, 0xe8, 0x61, 0x44, 0xad, 0x64, 0xbd, - 0x60, 0x64, 0x66, 0x0c, 0xc6, 0x18, 0xf0, 0x5f, 0x02, 0x26, 0x68, 0x02, 0x92, 0xec, 0xe2, 0xc5, - 0xcb, 0xa6, 0xd3, 0x7d, 0x76, 0xa8, 0xec, 0x6c, 0x27, 0x6d, 0x67, 0x80, 0x83, 0x89, 0xf1, 0x15, - 0x98, 0xf0, 0x26, 0x8c, 0xf1, 0x45, 0x00, 0x27, 0x8f, 0x84, 0x13, 0x47, 0x99, 0xbd, 0x78, 0xe4, - 0x25, 0x18, 0x3a, 0x3b, 0x84, 0x85, 0x35, 0x6b, 0xb8, 0xb5, 0x7d, 0x3e, 0xdf, 0x6f, 0xfb, 0xf4, - 0x69, 0x1f, 0x3c, 0x9b, 0x80, 0x72, 0xb9, 0xf0, 0x14, 0xdb, 0x80, 0x90, 0x7a, 0x1d, 0xd0, 0x5b, - 0x42, 0x6e, 0x36, 0x78, 0x47, 0x83, 0x6c, 0x51, 0x06, 0x9e, 0xf0, 0x3f, 0x02, 0xd3, 0x6e, 0x24, - 0x85, 0x16, 0xd6, 0xbd, 0x8c, 0x76, 0x33, 0xda, 0xbd, 0x42, 0x4f, 0x39, 0x01, 0xd7, 0x1b, 0xb1, - 0xef, 0x32, 0x11, 0x7a, 0x81, 0x08, 0x84, 0x67, 0x74, 0x7e, 0xdc, 0x32, 0x33, 0x33, 0x31, 0xa3, - 0xcc, 0x6f, 0xea, 0xe1, 0xb0, 0xdd, 0xf5, 0x4e, 0x04, 0xaa, 0x07, 0xdf, 0xee, 0x87, 0x45, 0xa4, - 0xb9, 0xe8, 0xe4, 0xc1, 0x5b, 0xfd, 0xc1, 0x8b, 0xba, 0x6a, 0x7f, 0x28, 0x01, 0x05, 0x9d, 0xa4, - 0x5f, 0x5e, 0xdd, 0x2d, 0xe3, 0xca, 0x9a, 0xc9, 0xd4, 0x9a, 0xc7, 0xa3, 0x21, 0x68, 0xda, 0xa4, - 0x9a, 0xda, 0x68, 0x1a, 0xcd, 0x8c, 0xcd, 0xdd, 0x75, 0xfb, 0xd3, 0xce, 0xc0, 0x55, 0xd0, 0x74, - 0x7d, 0x27, 0x82, 0xda, 0x39, 0x6e, 0xad, 0xe0, 0xff, 0xd4, 0x8e, 0xd2, 0x10, 0x36, 0xce, 0x1d, - 0x8a, 0xc6, 0xe1, 0xfe, 0x25, 0x87, 0xba, 0xa1, 0x2e, 0xf9, 0x4c, 0x64, 0xda, 0xd5, 0xdc, 0xed, - 0x05, 0x2e, 0xab, 0x08, 0x98, 0x5d, 0x32, 0x16, 0x0f, 0xdc, 0x21, 0x77, 0xef, 0xd6, 0x23, 0x60, - 0xc6, 0xc8, 0xc8, 0x16, 0xf6, 0x8a, 0x5f, 0x5e, 0x55, 0x32, 0xcb, 0x83, 0x7d, 0xbb, 0x38, 0x89, - 0x8e, 0xf6, 0xed, 0x1f, 0x45, 0x3c, 0x8f, 0x4b, 0xcb, 0xa0, 0xad, 0xb9, 0xd6, 0x93, 0x6d, 0xe6, - 0x28, 0x60, 0xb1, 0x84, 0x10, 0xd4, 0x86, 0xe3, 0x53, 0xc5, 0x99, 0x13, 0x8a, 0x0e, 0xd7, 0x42, - 0xce, 0x4e, 0x27, 0xa0, 0x1c, 0x2e, 0x9c, 0xde, 0x2e, 0x8e, 0x04, 0xda, 0xc4, 0xcf, 0xf0, 0x48, - 0x0d, 0xa2, 0x36, 0x65, 0x60, 0x3d, 0x1a, 0x2c, 0x8f, 0x15, 0x5c, 0xd5, 0x6e, 0x49, 0xae, 0x01, - 0x2f, 0xe0, 0xca, 0x92, 0x04, 0xaa, 0xaf, 0xa9, 0x7d, 0x0d, 0x6d, 0xb8, 0xa6, 0xb6, 0xbc, 0xc2, - 0xd5, 0xb5, 0x12, 0xae, 0xae, 0xe3, 0xd1, 0xfc, 0x52, 0xad, 0x37, 0x78, 0x24, 0x60, 0x0d, 0x53, - 0x90, 0xac, 0xa6, 0xde, 0xd0, 0x82, 0x2c, 0xb7, 0x85, 0x4f, 0xdb, 0xe7, 0x65, 0xa9, 0x04, 0xec, - 0x6c, 0x5c, 0x3d, 0x28, 0xe2, 0xf1, 0xba, 0xa6, 0x3a, 0x56, 0xff, 0xfc, 0xe2, 0x32, 0x7c, 0xc0, - 0x8b, 0xab, 0xe3, 0xb1, 0xec, 0x83, 0x36, 0x24, 0xb4, 0x94, 0x5d, 0x9c, 0x2e, 0xcd, 0x8c, 0xcd, - 0xdd, 0x19, 0xf8, 0x5e, 0x6b, 0xd0, 0x3a, 0x13, 0x2f, 0xde, 0xfc, 0xfe, 0xe9, 0xff, 0x2b, 0x67, - 0xad, 0x61, 0x91, 0x43, 0xca, 0x7a, 0x8e, 0x31, 0x13, 0x9d, 0x26, 0x37, 0x1f, 0xc4, 0x2e, 0x0d, - 0xf4, 0x5c, 0xca, 0x01, 0x73, 0xa0, 0x0b, 0xbc, 0xb5, 0x86, 0x2b, 0xca, 0x1c, 0xd7, 0x2e, 0x9b, - 0x5c, 0x9e, 0x0e, 0xbd, 0xa7, 0x77, 0xd9, 0xca, 0xdb, 0x7c, 0x21, 0xcb, 0xb6, 0xd6, 0xb3, 0x59, - 0xb8, 0x71, 0xf4, 0x72, 0x12, 0x4f, 0xe0, 0xf1, 0x3c, 0x69, 0x37, 0xe6, 0xcd, 0xc5, 0x5d, 0x74, - 0x78, 0x42, 0x0a, 0xc7, 0x27, 0xa4, 0x70, 0x7a, 0x42, 0xd0, 0xe7, 0x94, 0xa0, 0x6f, 0x29, 0x41, - 0x3f, 0x53, 0x82, 0x0e, 0x53, 0x82, 0x8e, 0x53, 0x82, 0x7e, 0xa5, 0x04, 0xfd, 0x4e, 0x49, 0xe1, - 0x34, 0x25, 0xe8, 0x6b, 0x97, 0x14, 0xf6, 0xba, 0x04, 0x1d, 0x76, 0x49, 0xe1, 0xb8, 0x4b, 0x0a, - 0x1f, 0xde, 0x07, 0x22, 0xda, 0x0c, 0xdc, 0x44, 0xb4, 0x35, 0x48, 0x49, 0xdd, 0x58, 0x79, 0x66, - 0xd0, 0x12, 0x32, 0x74, 0x22, 0x29, 0x12, 0xde, 0x04, 0xe9, 0xe4, 0x61, 0x2f, 0xf2, 0x03, 0xe1, - 0xc1, 0xb6, 0xee, 0xb5, 0x90, 0xbf, 0xb5, 0x2b, 0xbf, 0x62, 0xba, 0xc9, 0xe3, 0x3f, 0x01, 0x00, - 0x00, 0xff, 0xff, 0x75, 0xe4, 0x37, 0x6a, 0x56, 0x05, 0x00, 0x00, + // 641 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4d, 0x4f, 0x14, 0x4d, + 0x10, 0xc7, 0xb7, 0x77, 0x79, 0x16, 0xd2, 0x10, 0x1e, 0x9e, 0x79, 0x3c, 0x8c, 0xa8, 0x2d, 0x59, + 0x2f, 0x18, 0x99, 0x99, 0x04, 0x63, 0x8c, 0xc4, 0x97, 0x04, 0x4c, 0xd0, 0x04, 0x24, 0xd9, 0xc5, + 0x83, 0x68, 0xb2, 0xe9, 0xe9, 0xa9, 0x1d, 0x46, 0x76, 0xa6, 0x27, 0xdd, 0x3d, 0x0b, 0x1c, 0x4c, + 0x8c, 0x9f, 0xc0, 0xc4, 0x2f, 0x61, 0x3c, 0xfb, 0x01, 0x84, 0x93, 0x17, 0x13, 0xc2, 0x89, 0xa3, + 0x3b, 0x7b, 0xf1, 0xc8, 0x47, 0x30, 0xf4, 0xec, 0x20, 0xbb, 0xac, 0xae, 0x17, 0x6e, 0x3d, 0x5d, + 0xff, 0xfa, 0x75, 0x55, 0x4d, 0x55, 0xe1, 0xb9, 0x16, 0x48, 0x3b, 0xe0, 0x8e, 0x64, 0x9b, 0x10, + 0x52, 0x27, 0x02, 0xb5, 0xcd, 0xc5, 0x56, 0x3d, 0x88, 0x14, 0x88, 0x06, 0x65, 0xe0, 0x70, 0xf7, + 0x35, 0x30, 0x65, 0xc7, 0x82, 0x2b, 0x6e, 0x5c, 0xcf, 0xd4, 0x76, 0xa6, 0xb6, 0xcf, 0xa9, 0xa7, + 0x2d, 0x3f, 0x50, 0x9b, 0x89, 0x6b, 0x33, 0x1e, 0x3a, 0x3e, 0xf7, 0xb9, 0xa3, 0xfd, 0xdc, 0xa4, + 0xa1, 0xbf, 0xf4, 0x87, 0x3e, 0x65, 0xbc, 0xe9, 0x5b, 0xc3, 0x5e, 0x57, 0xbb, 0x31, 0xc8, 0xae, + 0xf8, 0x4a, 0xaf, 0x98, 0xc7, 0x2a, 0xe0, 0x51, 0x6e, 0xbc, 0xdc, 0x6b, 0x3c, 0xeb, 0x57, 0xe9, + 0x35, 0xb5, 0x40, 0x42, 0xd4, 0xea, 0x75, 0xaf, 0x7c, 0xfe, 0x07, 0x97, 0xd7, 0x74, 0xa6, 0xc6, + 0x3d, 0x3c, 0x16, 0x82, 0xa2, 0x1e, 0x55, 0xd4, 0x44, 0x33, 0x68, 0x76, 0x7c, 0xfe, 0x9a, 0xdd, + 0x9b, 0x76, 0x26, 0x5c, 0x05, 0x45, 0xd7, 0x77, 0x63, 0xa8, 0x9e, 0xca, 0x8d, 0x15, 0xfc, 0xaf, + 0xdc, 0x95, 0x0a, 0xc2, 0xfa, 0x29, 0xa1, 0xa8, 0x09, 0x37, 0xfa, 0x08, 0x35, 0xad, 0xea, 0xe3, + 0x4c, 0x66, 0xbe, 0xab, 0x39, 0xed, 0x01, 0x1e, 0x91, 0x31, 0x30, 0xb3, 0xa4, 0x11, 0x37, 0xed, + 0x21, 0xb5, 0xb7, 0x6b, 0x31, 0x30, 0x0d, 0xd2, 0x6e, 0x0b, 0xed, 0xd2, 0xbb, 0x47, 0xe5, 0x0c, + 0xb9, 0xbf, 0x67, 0x16, 0xa7, 0xd0, 0xe1, 0x9e, 0xf9, 0xad, 0x84, 0x5f, 0xe2, 0xd2, 0x32, 0x28, + 0x63, 0xbd, 0x71, 0x67, 0x87, 0x59, 0x12, 0x58, 0x22, 0x20, 0x04, 0xb9, 0x69, 0xb9, 0x54, 0x06, + 0xcc, 0x0a, 0x79, 0x14, 0x28, 0x2e, 0xe6, 0x66, 0xfa, 0xcd, 0x52, 0xd1, 0xc8, 0xa3, 0xc2, 0xfb, + 0xa5, 0x68, 0x81, 0xb4, 0x02, 0x6e, 0x75, 0xe3, 0xb0, 0x04, 0x50, 0x0f, 0x6f, 0xe0, 0xd1, 0x2a, + 0xc4, 0x4d, 0xca, 0xc0, 0x58, 0x1b, 0xfc, 0x40, 0x22, 0xe1, 0x4f, 0xf4, 0xcc, 0xdc, 0x87, 0xde, + 0x16, 0x81, 0x02, 0xfc, 0x02, 0x97, 0x97, 0x04, 0x50, 0x75, 0x31, 0xe8, 0xc7, 0xd0, 0x84, 0x8b, + 0x40, 0xbf, 0xc2, 0x23, 0x2b, 0x81, 0xbc, 0xa0, 0x7a, 0x57, 0xd6, 0xf1, 0x58, 0xfe, 0xd7, 0x8d, + 0x27, 0x78, 0xd4, 0x67, 0x75, 0xdd, 0x31, 0x59, 0xd3, 0x39, 0x43, 0x3b, 0x66, 0xb9, 0xc9, 0x5d, + 0xda, 0x3c, 0xed, 0x9b, 0xb2, 0xcf, 0x4e, 0xce, 0x95, 0xfd, 0x22, 0x9e, 0xa8, 0x29, 0xaa, 0x12, + 0xf9, 0xd7, 0x23, 0x91, 0xc9, 0x07, 0x8c, 0x44, 0x0d, 0x8f, 0x67, 0x1b, 0xa4, 0x2e, 0xa0, 0x21, + 0xcd, 0xe2, 0x4c, 0x69, 0x76, 0x7c, 0xfe, 0xea, 0xc0, 0x81, 0xaa, 0x42, 0xe3, 0xc4, 0x79, 0xf1, + 0xd2, 0xa7, 0x37, 0xff, 0x9d, 0x8b, 0xb5, 0x8a, 0x79, 0x2e, 0x92, 0xc6, 0x7d, 0x8c, 0x19, 0x8f, + 0xbc, 0x40, 0x4f, 0xb0, 0x59, 0x1a, 0xc8, 0x5c, 0xca, 0x05, 0x3a, 0xa0, 0x33, 0x7a, 0x63, 0x0d, + 0x97, 0xa5, 0x0e, 0xd7, 0x1c, 0xd1, 0xb9, 0xdc, 0x1d, 0x5a, 0xa7, 0x67, 0xd9, 0xcd, 0xd3, 0xfc, + 0x22, 0xcb, 0xb6, 0xda, 0xc5, 0x2c, 0xfc, 0x7f, 0xf8, 0x70, 0x0a, 0x4f, 0xe2, 0x89, 0x3c, 0x69, + 0x3b, 0x09, 0xbc, 0xc5, 0x0f, 0xe8, 0xa0, 0x4d, 0x0a, 0x47, 0x6d, 0x52, 0x38, 0x6e, 0x13, 0xf4, + 0x36, 0x25, 0xe8, 0x63, 0x4a, 0xd0, 0xd7, 0x94, 0xa0, 0x83, 0x94, 0xa0, 0xa3, 0x94, 0xa0, 0xef, + 0x29, 0x41, 0x3f, 0x52, 0x52, 0x38, 0x4e, 0x09, 0x7a, 0xdf, 0x21, 0x85, 0x2f, 0x1d, 0x82, 0x0e, + 0x3a, 0xa4, 0x70, 0xd4, 0x21, 0x85, 0x8d, 0xe7, 0x3e, 0x8f, 0xb7, 0x7c, 0xbb, 0xc5, 0x9b, 0x0a, + 0x84, 0xa0, 0x76, 0x22, 0x1d, 0x7d, 0x68, 0x70, 0x11, 0x5a, 0xb1, 0xe0, 0xad, 0xc0, 0x03, 0x61, + 0xe5, 0x66, 0x27, 0x76, 0x7d, 0xee, 0xc0, 0x8e, 0xea, 0xee, 0xb8, 0xdf, 0xed, 0x53, 0xb7, 0xac, + 0xd7, 0xdd, 0xed, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1a, 0xfb, 0x8a, 0x90, 0xf7, 0x05, 0x00, + 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/network_interface/pkg.vespkg.go b/pbgo/extschema/schema/network_interface/pkg.vespkg.go index 147579626..617abbeab 100644 --- a/pbgo/extschema/schema/network_interface/pkg.vespkg.go +++ b/pbgo/extschema/schema/network_interface/pkg.vespkg.go @@ -101,60 +101,60 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.network_interface.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_interface.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_interface.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_interface.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -176,11 +176,11 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.network_interface.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/network_interface/public_crudapi.pb.go b/pbgo/extschema/schema/network_interface/public_crudapi.pb.go index d63a42c32..908f2183b 100644 --- a/pbgo/extschema/schema/network_interface/public_crudapi.pb.go +++ b/pbgo/extschema/schema/network_interface/public_crudapi.pb.go @@ -1098,108 +1098,109 @@ func init() { } var fileDescriptor_f38e8efa07d64958 = []byte{ - // 1610 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0x4f, - 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x1d, 0xda, 0xd4, 0x31, 0xc5, 0x18, 0xb7, 0xaa, - 0xa2, 0x34, 0xde, 0x4d, 0x53, 0x40, 0x6d, 0x44, 0x5b, 0x9c, 0xc4, 0xb1, 0x12, 0xd2, 0xba, 0x5d, - 0x3b, 0x15, 0xe2, 0xb2, 0x5a, 0xaf, 0x9f, 0x9d, 0x25, 0xb6, 0x77, 0xd9, 0x1d, 0x3b, 0xb5, 0x50, - 0x24, 0xd4, 0x13, 0xdc, 0x90, 0x38, 0x20, 0x21, 0x24, 0xe0, 0x80, 0xc4, 0x95, 0x1b, 0x52, 0x2e, - 0xbd, 0xb5, 0xea, 0x01, 0x45, 0xe5, 0x40, 0x25, 0x2e, 0xd4, 0x01, 0xa9, 0xc7, 0x8a, 0x0b, 0xa7, - 0xbf, 0xf4, 0xd7, 0xce, 0xec, 0xba, 0xb6, 0xe3, 0xd6, 0x76, 0x9a, 0x93, 0x77, 0xe6, 0xbd, 0xf7, - 0x9b, 0xf7, 0x9b, 0xf7, 0xe1, 0xb7, 0x8b, 0xbf, 0xdb, 0x04, 0x5b, 0xd4, 0x0d, 0xc9, 0xd6, 0xf6, - 0xa0, 0xa6, 0x4a, 0x75, 0xa0, 0x07, 0x86, 0xb5, 0xaf, 0xe8, 0x75, 0x0a, 0x56, 0x59, 0xd5, 0x40, - 0x32, 0x1b, 0xc5, 0xaa, 0xae, 0x29, 0x9a, 0xd5, 0x28, 0xa9, 0xa6, 0x2e, 0x9a, 0x96, 0x41, 0x0d, - 0xf2, 0x6d, 0x6e, 0x25, 0x72, 0x2b, 0xf1, 0x94, 0x55, 0x2c, 0x55, 0xd1, 0xe9, 0x5e, 0xa3, 0x28, - 0x6a, 0x46, 0x4d, 0xaa, 0x18, 0x15, 0x43, 0x62, 0x76, 0xc5, 0x46, 0x99, 0xad, 0xd8, 0x82, 0x3d, - 0x71, 0xbc, 0xd8, 0xd5, 0x8a, 0x61, 0x54, 0xaa, 0x20, 0xa9, 0xa6, 0x2e, 0xa9, 0xf5, 0xba, 0x41, - 0x55, 0xaa, 0x1b, 0x75, 0xdb, 0x95, 0x7e, 0xd3, 0x95, 0x76, 0x30, 0xa0, 0x66, 0xd2, 0x96, 0x2b, - 0x8c, 0xf5, 0x12, 0x00, 0xcb, 0x32, 0x2c, 0xcf, 0x70, 0x69, 0x18, 0x39, 0xa3, 0xf8, 0x53, 0xd0, - 0xa8, 0xab, 0x7d, 0x73, 0x98, 0x36, 0x6d, 0x99, 0xd0, 0xf1, 0xa9, 0x57, 0xd9, 0x30, 0xbb, 0x1d, - 0x9e, 0xef, 0x15, 0x76, 0xdb, 0x25, 0x7b, 0x45, 0x4d, 0xb0, 0xa1, 0xde, 0xec, 0x33, 0x4f, 0xf4, - 0xe9, 0xe8, 0x70, 0xa0, 0xf4, 0x68, 0x24, 0xff, 0x8a, 0xf0, 0xf4, 0xba, 0x05, 0x2a, 0x05, 0x19, - 0x7e, 0xd6, 0x00, 0x9b, 0x92, 0x07, 0x38, 0x54, 0x03, 0xaa, 0x96, 0x54, 0xaa, 0x46, 0x51, 0x02, - 0x2d, 0x44, 0x56, 0xae, 0x89, 0xbd, 0x41, 0xca, 0x31, 0xae, 0xdc, 0xea, 0x21, 0x50, 0xb5, 0xd0, - 0x32, 0x41, 0xee, 0x18, 0x91, 0x02, 0x0e, 0xd8, 0x26, 0x68, 0x51, 0x1f, 0x33, 0x96, 0xc4, 0x21, - 0x11, 0x16, 0x39, 0x50, 0xde, 0x04, 0xcd, 0x01, 0x5a, 0x9b, 0xfd, 0xdd, 0xe1, 0x94, 0x63, 0x2f, - 0x56, 0x34, 0xc5, 0xf9, 0x95, 0x19, 0xda, 0x6a, 0xf8, 0xf5, 0xfd, 0x20, 0x3f, 0x38, 0xf9, 0x15, - 0xc2, 0x33, 0x9e, 0xcf, 0xb6, 0x69, 0xd4, 0x6d, 0x20, 0x3f, 0x38, 0xe5, 0x74, 0x62, 0xa0, 0xd3, - 0x59, 0xa0, 0x03, 0x3c, 0xce, 0xe1, 0x59, 0xbb, 0x65, 0x53, 0xa8, 0x29, 0x1d, 0x10, 0x3f, 0x03, - 0xb9, 0xd1, 0x07, 0x92, 0x67, 0x5a, 0xa7, 0xa1, 0x66, 0xb8, 0xf9, 0x43, 0x0f, 0xf0, 0x49, 0xcf, - 0x15, 0x2c, 0x0d, 0xbd, 0x82, 0x2c, 0xd0, 0x31, 0xf8, 0xff, 0x17, 0xe1, 0x19, 0x19, 0xcc, 0xaa, - 0xaa, 0x75, 0x82, 0xf6, 0xc3, 0x53, 0xfc, 0xaf, 0x0f, 0xe4, 0xef, 0x9a, 0x0d, 0xb8, 0x83, 0xdd, - 0x1e, 0x97, 0x97, 0x87, 0xba, 0xec, 0x22, 0x0d, 0x71, 0x9b, 0x48, 0x58, 0xb0, 0xc0, 0x36, 0x1a, - 0x96, 0x06, 0x4a, 0x13, 0x2c, 0x5b, 0x37, 0xea, 0xec, 0x6e, 0xc3, 0x6b, 0x81, 0xf7, 0x47, 0x08, - 0xc9, 0xb3, 0x9e, 0xf4, 0x29, 0x17, 0x76, 0xf3, 0xbc, 0x88, 0x67, 0x3b, 0x34, 0x79, 0x9c, 0x93, - 0x7f, 0x40, 0x18, 0x67, 0x81, 0x7a, 0xb4, 0xaf, 0xe2, 0x70, 0x5d, 0xad, 0x81, 0x6d, 0xaa, 0x1a, - 0x30, 0xde, 0x61, 0xf9, 0xe3, 0x06, 0x21, 0x38, 0xe0, 0x2c, 0x18, 0xa5, 0xb0, 0xcc, 0x9e, 0x89, - 0x82, 0x9d, 0x13, 0x19, 0x98, 0x52, 0x36, 0xac, 0x9a, 0x4a, 0x99, 0x3b, 0x33, 0x2b, 0xdf, 0x1f, - 0x25, 0x48, 0x9e, 0x1f, 0x9b, 0xcc, 0x72, 0xdd, 0x28, 0x81, 0x3c, 0x63, 0xf5, 0xec, 0x25, 0xff, - 0x14, 0xc4, 0x91, 0x2e, 0x4d, 0x92, 0xc3, 0x11, 0x8d, 0xe5, 0x2a, 0x3b, 0xce, 0xbd, 0x5e, 0x71, - 0xc4, 0xa2, 0x70, 0x79, 0xca, 0x98, 0x43, 0x38, 0x47, 0x10, 0x19, 0x4f, 0x59, 0xfc, 0x56, 0x38, - 0xa2, 0x7f, 0xc4, 0x32, 0xeb, 0xcd, 0x18, 0x39, 0xe2, 0x82, 0x30, 0xcc, 0x41, 0x51, 0x0a, 0x7c, - 0x26, 0x4a, 0x3d, 0xf5, 0x36, 0x79, 0x1e, 0xf5, 0x76, 0xe1, 0x5c, 0xea, 0x2d, 0x78, 0x6e, 0xf5, - 0x46, 0x76, 0x70, 0xd0, 0xa6, 0x2a, 0x6d, 0xd8, 0xd1, 0x3f, 0xfe, 0x1e, 0x25, 0xfc, 0x0b, 0x91, - 0x95, 0xd4, 0x50, 0xd8, 0x3c, 0x33, 0xe0, 0xee, 0xae, 0xf9, 0x5f, 0x1c, 0x22, 0xd9, 0xc5, 0x20, - 0x5b, 0xf8, 0xa2, 0x05, 0x65, 0xb0, 0x2c, 0xbd, 0x5e, 0x51, 0xf8, 0x7f, 0x85, 0x1d, 0x0d, 0x31, - 0xd8, 0xab, 0x9f, 0x28, 0xd4, 0x32, 0x63, 0x2a, 0x74, 0xcc, 0xf8, 0xbe, 0x4d, 0x9e, 0xe2, 0x68, - 0x09, 0xaa, 0x40, 0xa1, 0xa4, 0x70, 0x19, 0x94, 0x3a, 0x88, 0xe1, 0x11, 0x10, 0xe7, 0x5c, 0x6b, - 0xd9, 0x35, 0xf6, 0x70, 0x7f, 0x8c, 0xe7, 0x4b, 0xba, 0xad, 0x16, 0xab, 0x83, 0x80, 0xf1, 0x08, - 0xc0, 0x57, 0x3c, 0xf3, 0x3e, 0xe4, 0xae, 0x92, 0xde, 0x0e, 0x84, 0x90, 0xe0, 0x4b, 0xfe, 0x19, - 0xe1, 0xc8, 0x8e, 0x6e, 0x8f, 0x58, 0xc6, 0xdf, 0xc1, 0x53, 0x55, 0xb5, 0x08, 0x55, 0xa5, 0xac, - 0x57, 0x29, 0x58, 0x6e, 0x39, 0x47, 0xd8, 0xde, 0x26, 0xdb, 0x22, 0xd7, 0xf0, 0xb4, 0x05, 0xa6, - 0x61, 0x51, 0xa5, 0xac, 0x43, 0xb5, 0x64, 0x47, 0xfd, 0x09, 0xff, 0x42, 0x58, 0x9e, 0xe2, 0x9b, - 0x9b, 0x6c, 0x8f, 0x2c, 0xe3, 0x4b, 0xae, 0x12, 0x0f, 0x8a, 0xa7, 0x1b, 0x60, 0xba, 0x84, 0xcb, - 0x78, 0x08, 0xb9, 0x45, 0xf2, 0x38, 0x88, 0x05, 0xee, 0x27, 0x2f, 0xe6, 0x2d, 0x0a, 0x35, 0x32, - 0x87, 0x83, 0x14, 0xea, 0x6a, 0x9d, 0xb2, 0x6c, 0x0b, 0xcb, 0xee, 0xea, 0x0c, 0xbd, 0x48, 0xc0, - 0xfe, 0x86, 0x5e, 0xe2, 0xed, 0x50, 0x76, 0x1e, 0x49, 0x02, 0x47, 0x4a, 0x60, 0x6b, 0x96, 0xce, - 0xfe, 0xa3, 0xa3, 0x11, 0xce, 0xb4, 0x6b, 0x8b, 0xc4, 0x70, 0xc8, 0xbb, 0xe6, 0xe8, 0x54, 0x02, - 0x2d, 0x84, 0xe4, 0xce, 0x9a, 0xec, 0xe2, 0x20, 0xbb, 0x14, 0x4e, 0x29, 0xb2, 0x72, 0x6f, 0x68, - 0xc2, 0xf6, 0x93, 0x13, 0x77, 0x98, 0x7d, 0xa6, 0x4e, 0xad, 0x96, 0xec, 0x82, 0x91, 0x12, 0x8e, - 0x74, 0x4d, 0x52, 0x6e, 0x2a, 0xac, 0x8d, 0x8f, 0x9d, 0xfe, 0x08, 0xc2, 0x0f, 0xe8, 0x86, 0x25, - 0x77, 0x31, 0x36, 0x0e, 0xea, 0x60, 0x29, 0xce, 0x90, 0x12, 0x0d, 0xb3, 0x42, 0x8e, 0xf5, 0x1d, - 0xf2, 0x54, 0x87, 0x03, 0x2f, 0xdb, 0xc2, 0x4c, 0xdb, 0xd9, 0xe9, 0x69, 0x46, 0xd3, 0xe7, 0xd1, - 0x8c, 0x66, 0xbe, 0xa8, 0x19, 0x65, 0x71, 0xa8, 0x02, 0x94, 0xf5, 0x12, 0xb7, 0xad, 0x8d, 0xd5, - 0x90, 0xe4, 0x0b, 0x15, 0xbe, 0x20, 0x4f, 0x30, 0x76, 0x33, 0xd5, 0x06, 0xea, 0x76, 0x8b, 0xb3, - 0x34, 0xa1, 0x30, 0x47, 0xc9, 0x03, 0x8d, 0xdd, 0xc5, 0x91, 0xae, 0x10, 0x3b, 0x19, 0xb8, 0x0f, - 0x2d, 0x37, 0x5b, 0x9d, 0x47, 0x72, 0x09, 0x4f, 0x36, 0xd5, 0x6a, 0xc3, 0x4b, 0x54, 0xbe, 0x58, - 0xf5, 0xdd, 0x41, 0xb1, 0xfb, 0x58, 0xe8, 0x8f, 0xe0, 0x38, 0xf6, 0xdb, 0x81, 0xd0, 0xa4, 0x10, - 0x4c, 0xfe, 0x0a, 0xe1, 0xa9, 0xee, 0xcc, 0x20, 0x59, 0x3c, 0xa9, 0x53, 0xa8, 0xd9, 0x51, 0xde, - 0x64, 0x6f, 0x8d, 0x9d, 0x57, 0x32, 0xb7, 0x27, 0xcb, 0x38, 0xc8, 0x47, 0xf6, 0xa8, 0x8f, 0x21, - 0x45, 0xfb, 0x90, 0x32, 0x8e, 0x90, 0x5d, 0xb0, 0xab, 0x97, 0xdc, 0xc7, 0xd3, 0x1b, 0xac, 0x17, - 0x9e, 0x7d, 0x9c, 0x58, 0xc0, 0x42, 0x59, 0xd5, 0xab, 0x8a, 0x5e, 0xee, 0xf4, 0x4c, 0x56, 0xcf, - 0x21, 0x79, 0xc6, 0xd9, 0xdf, 0x2a, 0x7b, 0xbd, 0x70, 0xf1, 0x7f, 0x08, 0x5f, 0x1e, 0x38, 0x41, - 0x90, 0x18, 0x9e, 0xcb, 0x66, 0x0a, 0x8a, 0x9c, 0x7f, 0xac, 0x6c, 0xe6, 0xe4, 0x87, 0xe9, 0x82, - 0xb2, 0x91, 0xd9, 0x4c, 0xef, 0xee, 0x14, 0x84, 0x09, 0xf2, 0x2d, 0x3c, 0xdf, 0x27, 0xdb, 0xcc, - 0xc9, 0xca, 0xba, 0x9c, 0x49, 0x17, 0x32, 0x02, 0x22, 0x71, 0x1c, 0x1b, 0x20, 0x96, 0x33, 0x8f, - 0x77, 0xd2, 0xeb, 0x19, 0xc1, 0x47, 0xe6, 0xf1, 0xe5, 0x3e, 0x79, 0xbe, 0x90, 0x2e, 0xec, 0xe6, - 0x05, 0x3f, 0xb9, 0x82, 0xbf, 0xd1, 0x27, 0x92, 0x33, 0xe9, 0x0d, 0x21, 0x40, 0xae, 0xe3, 0xc4, - 0x29, 0xc1, 0x66, 0x46, 0x96, 0xb7, 0x1e, 0x65, 0x95, 0xdc, 0xda, 0x76, 0x66, 0xbd, 0x90, 0x17, - 0x26, 0x07, 0x68, 0xad, 0xc9, 0xb9, 0x1f, 0x65, 0x1e, 0x71, 0xe5, 0xcc, 0xa3, 0xf5, 0x4c, 0x5e, - 0x08, 0xae, 0xbc, 0x09, 0x63, 0x7f, 0xfa, 0xf1, 0x16, 0x39, 0x41, 0x38, 0xc8, 0x27, 0x1a, 0x32, - 0xe6, 0xe8, 0x13, 0x93, 0x46, 0xd6, 0x77, 0x47, 0xc4, 0x67, 0xed, 0x97, 0x51, 0xa9, 0xfc, 0xbd, - 0x67, 0x5a, 0xca, 0x06, 0xad, 0x61, 0x41, 0x0d, 0xec, 0xbd, 0x54, 0x51, 0xb5, 0x75, 0x2d, 0xd5, - 0xb0, 0xc1, 0x72, 0xde, 0xe4, 0x52, 0xba, 0x91, 0x72, 0x71, 0x52, 0x07, 0x96, 0x4e, 0xe1, 0xf9, - 0x3f, 0xfe, 0xf3, 0x1b, 0xdf, 0x83, 0xe4, 0xaa, 0xfb, 0x8e, 0x2a, 0x75, 0x82, 0x6e, 0x4b, 0x3f, - 0xf7, 0xba, 0x82, 0xd8, 0xd9, 0x3c, 0x3c, 0xfd, 0x46, 0x67, 0xaf, 0xa2, 0x45, 0xf2, 0x2f, 0x84, - 0xfd, 0x59, 0xa0, 0xe4, 0xe6, 0x68, 0xa3, 0x24, 0xe7, 0xb7, 0x34, 0xce, 0xdc, 0x99, 0x6c, 0xbd, - 0xfa, 0x9b, 0x0f, 0xb5, 0x5f, 0x46, 0x6f, 0x0d, 0x26, 0x58, 0x33, 0xea, 0x3a, 0x35, 0x4e, 0x71, - 0xb4, 0x40, 0x2d, 0x31, 0x8a, 0xab, 0xe4, 0xce, 0x20, 0x8a, 0x9f, 0x65, 0xc6, 0xc5, 0x87, 0xe4, - 0x9f, 0x08, 0x07, 0x9c, 0xda, 0x23, 0x4b, 0x23, 0x96, 0x28, 0xe7, 0x97, 0x1a, 0xab, 0xa0, 0x93, - 0xd6, 0x97, 0x11, 0xbc, 0x4d, 0x6e, 0x8d, 0x4d, 0x90, 0xfc, 0x1f, 0xe1, 0x0b, 0xee, 0x74, 0x4c, - 0xc6, 0x9d, 0xa3, 0x63, 0xcb, 0xa3, 0x1b, 0xb8, 0x14, 0x7f, 0x89, 0xce, 0x9a, 0xa1, 0xb9, 0xd8, - 0xf6, 0xd9, 0x33, 0xb4, 0x4f, 0xef, 0xd0, 0xc9, 0xd8, 0x57, 0x08, 0x07, 0x79, 0x0b, 0x1c, 0xa1, - 0x2e, 0x7b, 0x7a, 0x65, 0x6c, 0x4e, 0xe4, 0xdf, 0x52, 0x44, 0xef, 0x5b, 0x8a, 0x98, 0xa9, 0x99, - 0xb4, 0x95, 0x6c, 0x9e, 0x95, 0xdc, 0xbd, 0xc5, 0x33, 0xe7, 0xe6, 0x2a, 0x5a, 0x8c, 0xed, 0xbd, - 0x38, 0x42, 0xbe, 0x37, 0x47, 0xe8, 0xc6, 0x30, 0x1a, 0xfc, 0x9f, 0xf1, 0xed, 0x11, 0x42, 0xed, - 0x23, 0xb4, 0x34, 0xce, 0xbf, 0xe9, 0xf3, 0xbf, 0x47, 0x7d, 0x02, 0x5a, 0xfb, 0x2d, 0x7a, 0x7d, - 0x7f, 0x72, 0x5d, 0xde, 0xdd, 0xd8, 0x39, 0x7e, 0x17, 0x9f, 0x78, 0xfb, 0x2e, 0x3e, 0xf1, 0xe1, - 0x5d, 0x1c, 0xfd, 0xa2, 0x1d, 0x47, 0x7f, 0x69, 0xc7, 0xd1, 0xab, 0x76, 0x1c, 0x1d, 0xb7, 0xe3, - 0xe8, 0xdf, 0xed, 0x38, 0x7a, 0xdf, 0x8e, 0x4f, 0x7c, 0x68, 0xc7, 0xd1, 0xaf, 0x4f, 0xe2, 0x13, - 0x2f, 0x4e, 0xe2, 0xe8, 0xf8, 0x24, 0x3e, 0xf1, 0xf6, 0x24, 0x3e, 0xf1, 0x93, 0xdd, 0x8a, 0x61, - 0xee, 0x57, 0xc4, 0xa6, 0xe1, 0x4c, 0xaf, 0x96, 0x2a, 0x36, 0x6c, 0x89, 0x3d, 0x38, 0x2f, 0x74, - 0x29, 0xd3, 0x32, 0x9a, 0x7a, 0x09, 0xac, 0x94, 0x27, 0x96, 0xcc, 0x62, 0xc5, 0x90, 0xe0, 0x19, - 0x75, 0x3f, 0xe3, 0x7c, 0xea, 0xb3, 0x52, 0x31, 0xc8, 0x62, 0x71, 0xfb, 0xeb, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x9d, 0x81, 0x7f, 0x86, 0x8b, 0x13, 0x00, 0x00, + // 1632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x9a, 0x75, 0x59, 0x96, 0x09, + 0x02, 0x41, 0x11, 0x97, 0x8a, 0xd2, 0x16, 0x89, 0xd0, 0x38, 0xa5, 0x24, 0x8a, 0x90, 0x2a, 0x99, + 0xce, 0x90, 0x32, 0x8a, 0x5e, 0x16, 0xcb, 0xe5, 0x23, 0xb5, 0x15, 0xb9, 0xbb, 0xdd, 0x19, 0x52, + 0x11, 0x0a, 0x01, 0x85, 0x6f, 0xbd, 0x15, 0x48, 0x7f, 0x80, 0xa0, 0x40, 0xdb, 0x43, 0x8b, 0x5e, + 0x7b, 0x2b, 0xa0, 0x8b, 0x6f, 0x0d, 0x72, 0x28, 0x84, 0xf6, 0xe2, 0x63, 0x4d, 0xb5, 0x68, 0x8e, + 0x41, 0x6e, 0x3d, 0x04, 0x28, 0x76, 0x66, 0x97, 0x21, 0x29, 0xc6, 0x24, 0x15, 0xf9, 0xc4, 0x9d, + 0x79, 0xef, 0xfb, 0xe6, 0xbd, 0x37, 0xef, 0xbd, 0x7d, 0x5c, 0xfc, 0xed, 0x2e, 0x30, 0xd5, 0xb4, + 0xf3, 0xcc, 0x38, 0x84, 0xb6, 0x9e, 0xb7, 0x80, 0x1f, 0xdb, 0xee, 0x91, 0x66, 0x5a, 0x1c, 0xdc, + 0x86, 0x6e, 0x40, 0xde, 0xe9, 0xd4, 0x5a, 0xa6, 0xa1, 0x19, 0x6e, 0xa7, 0xae, 0x3b, 0xa6, 0xea, + 0xb8, 0x36, 0xb7, 0xc9, 0x37, 0x25, 0x4a, 0x95, 0x28, 0xf5, 0x12, 0x2a, 0x95, 0x6b, 0x9a, 0xfc, + 0xb0, 0x53, 0x53, 0x0d, 0xbb, 0x9d, 0x6f, 0xda, 0x4d, 0x3b, 0x2f, 0x70, 0xb5, 0x4e, 0x43, 0xac, + 0xc4, 0x42, 0x3c, 0x49, 0xbe, 0xd4, 0xdd, 0xa6, 0x6d, 0x37, 0x5b, 0x90, 0xd7, 0x1d, 0x33, 0xaf, + 0x5b, 0x96, 0xcd, 0x75, 0x6e, 0xda, 0x16, 0xf3, 0xa5, 0x5f, 0xf7, 0xa5, 0x7d, 0x0e, 0x68, 0x3b, + 0xfc, 0xc4, 0x17, 0xa6, 0x86, 0x1d, 0x00, 0xd7, 0xb5, 0xdd, 0x00, 0xb8, 0x32, 0xc9, 0x39, 0xbb, + 0xf6, 0x63, 0x30, 0xb8, 0xaf, 0xfd, 0xfa, 0x24, 0x6d, 0x7e, 0xe2, 0x40, 0xdf, 0xa6, 0x61, 0x65, + 0xdb, 0x19, 0x34, 0xf8, 0xce, 0xb0, 0x70, 0x10, 0x97, 0x1d, 0x16, 0x75, 0x81, 0x81, 0xd5, 0x1d, + 0x81, 0x67, 0x46, 0x74, 0x4c, 0x38, 0xd6, 0x86, 0x34, 0xb2, 0x7f, 0x41, 0xf8, 0xe6, 0xa6, 0x0b, + 0x3a, 0x07, 0x0a, 0x3f, 0xe9, 0x00, 0xe3, 0xe4, 0x5d, 0x1c, 0x6b, 0x03, 0xd7, 0xeb, 0x3a, 0xd7, + 0x93, 0x28, 0x83, 0x96, 0x12, 0x6b, 0xaf, 0xa8, 0xc3, 0x97, 0x54, 0x16, 0xbe, 0x4a, 0xd4, 0x3e, + 0x70, 0xbd, 0x7a, 0xe2, 0x00, 0xed, 0x83, 0x48, 0x15, 0x47, 0x98, 0x03, 0x46, 0x32, 0x24, 0xc0, + 0x79, 0x75, 0xc2, 0x0d, 0xab, 0x92, 0xa8, 0xe2, 0x80, 0xe1, 0x11, 0x6d, 0xdc, 0xfa, 0xf0, 0x74, + 0xc1, 0xc3, 0xab, 0x4d, 0x43, 0xf3, 0x7e, 0xa9, 0x60, 0x5b, 0x8f, 0x7f, 0x7c, 0x2f, 0x2a, 0x0f, + 0xce, 0x7e, 0x8e, 0xf0, 0x62, 0x60, 0x33, 0x73, 0x6c, 0x8b, 0x01, 0xf9, 0xde, 0x25, 0xa3, 0x33, + 0x63, 0x8d, 0x2e, 0x01, 0x1f, 0x63, 0x71, 0x19, 0xdf, 0x62, 0x27, 0x8c, 0x43, 0x5b, 0xeb, 0x93, + 0x84, 0x05, 0xc9, 0x6b, 0x23, 0x24, 0x15, 0xa1, 0x75, 0x99, 0x6a, 0x51, 0xc2, 0xf7, 0x03, 0xc2, + 0xf7, 0x86, 0x42, 0xb0, 0x32, 0x31, 0x04, 0x25, 0xe0, 0x33, 0xf8, 0xff, 0x1f, 0x84, 0x17, 0x29, + 0x38, 0x2d, 0xdd, 0xe8, 0x5f, 0xda, 0xf7, 0x2f, 0xf9, 0xff, 0xea, 0x58, 0xff, 0x7d, 0xd8, 0x98, + 0x18, 0x1c, 0x0c, 0x99, 0xbc, 0x3a, 0xd1, 0x64, 0x9f, 0x69, 0x82, 0xd9, 0x24, 0x8f, 0x15, 0x17, + 0x98, 0xdd, 0x71, 0x0d, 0xd0, 0xba, 0xe0, 0x32, 0xd3, 0xb6, 0x44, 0x6c, 0xe3, 0x1b, 0x91, 0x4f, + 0xce, 0x10, 0xa2, 0xb7, 0x02, 0xe9, 0x43, 0x29, 0x1c, 0xf4, 0xf3, 0x05, 0x7c, 0xab, 0xef, 0xa6, + 0xbc, 0xe7, 0xec, 0xef, 0x10, 0xc6, 0x25, 0xe0, 0x81, 0xdb, 0x77, 0x71, 0xdc, 0xd2, 0xdb, 0xc0, + 0x1c, 0xdd, 0x00, 0xe1, 0x77, 0x9c, 0x7e, 0xb1, 0x41, 0x08, 0x8e, 0x78, 0x0b, 0xe1, 0x52, 0x9c, + 0x8a, 0x67, 0xa2, 0x61, 0xef, 0x44, 0x41, 0xa6, 0x35, 0x6c, 0xb7, 0xad, 0x73, 0x61, 0xce, 0xe2, + 0xda, 0x77, 0xa7, 0xb9, 0xa4, 0xc0, 0x8e, 0x6d, 0x81, 0xdc, 0xb4, 0xeb, 0x40, 0x17, 0xdd, 0xa1, + 0xbd, 0xec, 0x1f, 0xa2, 0x38, 0x31, 0xa0, 0x49, 0xca, 0x38, 0x61, 0x88, 0x5c, 0x15, 0xc7, 0xf9, + 0xe1, 0x55, 0xa7, 0x2c, 0x0a, 0xdf, 0x4f, 0x8a, 0x25, 0x85, 0x77, 0x04, 0xa1, 0x78, 0xc1, 0x95, + 0x51, 0x91, 0x8c, 0xe1, 0x29, 0xcb, 0x6c, 0x38, 0x63, 0x68, 0xc2, 0x27, 0x11, 0x9c, 0xe3, 0x6e, + 0x29, 0xf2, 0x8c, 0x5b, 0x1a, 0xaa, 0xb7, 0xf9, 0xeb, 0xa8, 0xb7, 0x1b, 0xd7, 0x52, 0x6f, 0xd1, + 0x6b, 0xab, 0x37, 0xb2, 0x87, 0xa3, 0x8c, 0xeb, 0xbc, 0xc3, 0x92, 0xbf, 0xff, 0x2d, 0xca, 0x84, + 0x97, 0x12, 0x6b, 0xb9, 0x89, 0xb4, 0x15, 0x01, 0x90, 0xe6, 0x6e, 0x84, 0x1f, 0x9f, 0x22, 0xea, + 0x73, 0x90, 0x1d, 0xfc, 0x82, 0x0b, 0x0d, 0x70, 0x5d, 0xd3, 0x6a, 0x6a, 0xf2, 0x5d, 0xc1, 0x92, + 0x31, 0x41, 0x7b, 0xf7, 0x4b, 0x0a, 0xb5, 0x21, 0x3c, 0x55, 0xfa, 0x30, 0xb9, 0xcf, 0xc8, 0x43, + 0x9c, 0xac, 0x43, 0x0b, 0x38, 0xd4, 0x35, 0x29, 0x83, 0x7a, 0x9f, 0x31, 0x3e, 0x05, 0xe3, 0x6d, + 0x1f, 0x4d, 0x7d, 0x70, 0xc0, 0xfb, 0x43, 0x7c, 0xa7, 0x6e, 0x32, 0xbd, 0xd6, 0x1a, 0x47, 0x8c, + 0xa7, 0x20, 0x7e, 0x39, 0x80, 0x8f, 0x30, 0x0f, 0x94, 0xf4, 0x6e, 0x24, 0x86, 0x94, 0x50, 0xf6, + 0x8f, 0x08, 0x27, 0xf6, 0x4c, 0x36, 0x65, 0x19, 0x7f, 0x0b, 0x2f, 0xb4, 0xf4, 0x1a, 0xb4, 0xb4, + 0x86, 0xd9, 0xe2, 0xe0, 0xfa, 0xe5, 0x9c, 0x10, 0x7b, 0xdb, 0x62, 0x8b, 0xbc, 0x82, 0x6f, 0xba, + 0xe0, 0xd8, 0x2e, 0xd7, 0x1a, 0x26, 0xb4, 0xea, 0x2c, 0x19, 0xce, 0x84, 0x97, 0xe2, 0x74, 0x41, + 0x6e, 0x6e, 0x8b, 0x3d, 0xb2, 0x8a, 0x5f, 0xf4, 0x95, 0xe4, 0xa5, 0x04, 0xba, 0x11, 0xa1, 0x4b, + 0xa4, 0x4c, 0x5e, 0xa1, 0x44, 0x64, 0xcf, 0xa3, 0x58, 0x91, 0x76, 0xca, 0x62, 0xde, 0xe1, 0xd0, + 0x26, 0xb7, 0x71, 0x94, 0x83, 0xa5, 0x5b, 0x5c, 0x64, 0x5b, 0x9c, 0xfa, 0xab, 0x2b, 0xf4, 0x22, + 0x05, 0x87, 0x3b, 0x66, 0x5d, 0xb6, 0x43, 0xea, 0x3d, 0x92, 0x0c, 0x4e, 0xd4, 0x81, 0x19, 0xae, + 0x29, 0xde, 0xd1, 0xc9, 0x84, 0xf4, 0x74, 0x60, 0x8b, 0xa4, 0x70, 0x2c, 0x08, 0x73, 0x72, 0x21, + 0x83, 0x96, 0x62, 0xb4, 0xbf, 0x26, 0x07, 0x38, 0x2a, 0x82, 0x22, 0x5d, 0x4a, 0xac, 0xbd, 0x33, + 0x31, 0x61, 0x47, 0x9d, 0x53, 0xf7, 0x04, 0xbe, 0x68, 0x71, 0xf7, 0x84, 0xfa, 0x64, 0xa4, 0x8e, + 0x13, 0x03, 0x93, 0x94, 0x9f, 0x0a, 0x1b, 0xb3, 0x73, 0x17, 0xbe, 0x20, 0x91, 0x07, 0x0c, 0xd2, + 0x92, 0xb7, 0x31, 0xb6, 0x8f, 0x2d, 0x70, 0x35, 0x6f, 0x48, 0x49, 0xc6, 0x45, 0x21, 0xa7, 0x46, + 0x0e, 0x79, 0x68, 0xc2, 0x71, 0x90, 0x6d, 0x71, 0xa1, 0xed, 0xed, 0x0c, 0x35, 0xa3, 0x9b, 0xd7, + 0xd1, 0x8c, 0x16, 0xbf, 0x52, 0x33, 0x2a, 0xe1, 0x58, 0x13, 0xb8, 0xe8, 0x25, 0x7e, 0x5b, 0x9b, + 0xa9, 0x21, 0xd1, 0x1b, 0x4d, 0xb9, 0x20, 0xef, 0x61, 0xec, 0x67, 0x2a, 0x03, 0xee, 0x77, 0x8b, + 0xab, 0x34, 0xa1, 0xb8, 0x64, 0xa9, 0x00, 0x4f, 0xbd, 0x8d, 0x13, 0x03, 0x57, 0xec, 0x65, 0xe0, + 0x11, 0x9c, 0xf8, 0xd9, 0xea, 0x3d, 0x92, 0x17, 0xf1, 0x7c, 0x57, 0x6f, 0x75, 0x82, 0x44, 0x95, + 0x8b, 0xf5, 0xd0, 0x5b, 0x28, 0x75, 0x0f, 0x2b, 0xa3, 0x37, 0x38, 0x0b, 0x7e, 0x37, 0x12, 0x9b, + 0x57, 0xa2, 0xd9, 0x9f, 0x23, 0xbc, 0x30, 0x98, 0x19, 0xa4, 0x84, 0xe7, 0x4d, 0x0e, 0x6d, 0x96, + 0x94, 0x4d, 0xf6, 0x8d, 0x99, 0xf3, 0x8a, 0x4a, 0x3c, 0x59, 0xc5, 0x51, 0x39, 0xb2, 0x27, 0x43, + 0x82, 0x29, 0x39, 0xc2, 0x54, 0xf4, 0x84, 0x22, 0xc0, 0xbe, 0x5e, 0xf6, 0x08, 0xdf, 0xdc, 0x12, + 0xbd, 0xf0, 0xea, 0xe3, 0xc4, 0x12, 0x56, 0x1a, 0xba, 0xd9, 0xd2, 0xcc, 0x46, 0xbf, 0x67, 0x8a, + 0x7a, 0x8e, 0xd1, 0x45, 0x6f, 0x7f, 0xa7, 0x11, 0xf4, 0xc2, 0xe5, 0xcf, 0x10, 0x7e, 0x69, 0xec, + 0x04, 0x41, 0x52, 0xf8, 0x76, 0xa9, 0x58, 0xd5, 0x68, 0xe5, 0x81, 0xb6, 0x5d, 0xa6, 0xfb, 0x85, + 0xaa, 0xb6, 0x55, 0xdc, 0x2e, 0x1c, 0xec, 0x55, 0x95, 0x39, 0xf2, 0x0d, 0x7c, 0x67, 0x44, 0xb6, + 0x5d, 0xa6, 0xda, 0x26, 0x2d, 0x16, 0xaa, 0x45, 0x05, 0x91, 0x34, 0x4e, 0x8d, 0x11, 0xd3, 0xe2, + 0x83, 0xbd, 0xc2, 0x66, 0x51, 0x09, 0x91, 0x3b, 0xf8, 0xa5, 0x11, 0x79, 0xa5, 0x5a, 0xa8, 0x1e, + 0x54, 0x94, 0x30, 0x79, 0x19, 0x7f, 0x6d, 0x44, 0x44, 0x8b, 0x85, 0x2d, 0x25, 0x42, 0x5e, 0xc5, + 0x99, 0x4b, 0x82, 0xed, 0x22, 0xa5, 0x3b, 0xf7, 0x4b, 0x5a, 0x79, 0x63, 0xb7, 0xb8, 0x59, 0xad, + 0x28, 0xf3, 0x63, 0xb4, 0x36, 0x68, 0xf9, 0x07, 0xc5, 0xfb, 0x52, 0xb9, 0x78, 0x7f, 0xb3, 0x58, + 0x51, 0xa2, 0x6b, 0x9f, 0x61, 0x1c, 0x2e, 0x3c, 0xd8, 0x21, 0x8f, 0x42, 0x38, 0x2a, 0x27, 0x1a, + 0x32, 0xe3, 0xe8, 0x93, 0xca, 0x4f, 0xad, 0xef, 0x8f, 0x88, 0xbf, 0x46, 0xbd, 0xbf, 0x25, 0xf7, + 0x1b, 0xdf, 0x79, 0xdf, 0xc8, 0x31, 0x30, 0x3a, 0x2e, 0xb4, 0x81, 0x1d, 0xe6, 0x6a, 0x3a, 0x33, + 0x8d, 0x5c, 0x87, 0x81, 0xbb, 0x32, 0x2a, 0x62, 0x5c, 0xb7, 0xea, 0xba, 0x5b, 0x97, 0xd2, 0x2e, + 0xb0, 0x9c, 0x69, 0xe7, 0xfc, 0x63, 0x72, 0xc7, 0xae, 0xc9, 0xe1, 0xd1, 0x3f, 0xff, 0xfd, 0x41, + 0xe8, 0xdd, 0xec, 0xba, 0xff, 0x17, 0x36, 0xdf, 0xcf, 0x09, 0x96, 0xff, 0x69, 0xd0, 0x34, 0xd4, + 0xfe, 0xe6, 0xe9, 0xe5, 0x3f, 0x7c, 0x6c, 0x1d, 0x2d, 0x93, 0xcf, 0x11, 0x0e, 0x97, 0x80, 0x93, + 0xd7, 0xa7, 0x9b, 0x34, 0xa5, 0xfb, 0x2b, 0xb3, 0x8c, 0xa5, 0xd9, 0x0f, 0xd1, 0x47, 0x7f, 0x0d, + 0x79, 0xfe, 0xd3, 0xf1, 0xfe, 0xb7, 0x6d, 0xcb, 0xe4, 0xf6, 0x33, 0x42, 0x10, 0x28, 0x8c, 0x44, + 0xc1, 0x05, 0xbd, 0x2e, 0x82, 0xb0, 0x4e, 0xde, 0x1a, 0x17, 0x84, 0x67, 0xfa, 0x2e, 0xc5, 0xa7, + 0xe4, 0x7f, 0x08, 0x47, 0xbc, 0xe2, 0x25, 0x2b, 0x53, 0xd6, 0xb8, 0x8c, 0x40, 0x6e, 0xa6, 0x8e, + 0x90, 0xfd, 0xe0, 0x79, 0x87, 0xe0, 0x4d, 0xf2, 0xc6, 0xcc, 0x21, 0x20, 0xbf, 0x0a, 0xe1, 0x1b, + 0xfe, 0x00, 0x4e, 0x66, 0x1d, 0xd5, 0x53, 0xab, 0xd3, 0x03, 0xfc, 0x20, 0xfc, 0xe9, 0x39, 0xd5, + 0x40, 0x39, 0xb5, 0x7b, 0xf5, 0x1a, 0x18, 0xd1, 0x3b, 0xf5, 0x6a, 0xe2, 0xbf, 0x08, 0x47, 0x65, + 0x0f, 0x9e, 0xa2, 0x31, 0x0c, 0x35, 0xeb, 0xd4, 0x6d, 0x55, 0x7e, 0xcc, 0x51, 0x83, 0x8f, 0x39, + 0x6a, 0xb1, 0xed, 0xf0, 0x93, 0xec, 0x2f, 0x9f, 0x93, 0xef, 0xef, 0x2c, 0x5f, 0x39, 0xf5, 0xd7, + 0xd1, 0x72, 0xea, 0xf0, 0xf1, 0x19, 0x0a, 0xfd, 0xe3, 0x0c, 0xbd, 0x36, 0xc9, 0x4b, 0xf9, 0xe6, + 0x7e, 0x72, 0x86, 0x50, 0xef, 0x0c, 0xad, 0xcc, 0xf2, 0xb6, 0x7f, 0xf4, 0xf7, 0x64, 0x48, 0x41, + 0x1b, 0xbf, 0x41, 0x1f, 0xdf, 0x9b, 0xdf, 0xa4, 0x07, 0x5b, 0x7b, 0xe7, 0x4f, 0xd3, 0x73, 0x4f, + 0x9e, 0xa6, 0xe7, 0x3e, 0x7d, 0x9a, 0x46, 0x3f, 0xeb, 0xa5, 0xd1, 0x9f, 0x7b, 0x69, 0xf4, 0x51, + 0x2f, 0x8d, 0xce, 0x7b, 0x69, 0xf4, 0xaf, 0x5e, 0x1a, 0x7d, 0xd2, 0x4b, 0xcf, 0x7d, 0xda, 0x4b, + 0xa3, 0x5f, 0x5c, 0xa4, 0xe7, 0x1e, 0x5f, 0xa4, 0xd1, 0xf9, 0x45, 0x7a, 0xee, 0xc9, 0x45, 0x7a, + 0xee, 0x47, 0x07, 0x4d, 0xdb, 0x39, 0x6a, 0xaa, 0x5d, 0xdb, 0x9b, 0xae, 0x5d, 0x5d, 0xed, 0xb0, + 0xbc, 0x78, 0xf0, 0xfe, 0x70, 0xe6, 0x1c, 0xd7, 0xee, 0x9a, 0x75, 0x70, 0x73, 0x81, 0x38, 0xef, + 0xd4, 0x9a, 0x76, 0x1e, 0xde, 0xe7, 0xfe, 0x67, 0xa6, 0x2f, 0xfb, 0xec, 0x55, 0x8b, 0x8a, 0xab, + 0x7a, 0xf3, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x74, 0x8e, 0xbb, 0xe3, 0x2b, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/network_interface/public_crudapi.vesapi.go b/pbgo/extschema/schema/network_interface/public_crudapi.vesapi.go index 01dd3b2df..af5b842a5 100644 --- a/pbgo/extschema/schema/network_interface/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/network_interface/public_crudapi.vesapi.go @@ -4561,10 +4561,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4621,10 +4625,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4683,10 +4691,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_interface/types.pb.go b/pbgo/extschema/schema/network_interface/types.pb.go index 2d0def793..71b5e7e1e 100644 --- a/pbgo/extschema/schema/network_interface/types.pb.go +++ b/pbgo/extschema/schema/network_interface/types.pb.go @@ -5498,390 +5498,391 @@ func init() { } var fileDescriptor_4532352236a933ec = []byte{ - // 6119 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5d, 0x5d, 0x6c, 0x1b, 0xd9, - 0x75, 0xd6, 0xe5, 0x3f, 0x0f, 0xf5, 0x33, 0x1a, 0x49, 0x36, 0x2d, 0xdb, 0x34, 0xcd, 0xf5, 0x2f, - 0x33, 0xb6, 0x45, 0x4a, 0x96, 0x25, 0x7b, 0xb3, 0x31, 0x29, 0xd1, 0x12, 0x15, 0x59, 0x52, 0x86, - 0xb2, 0x37, 0x9b, 0x3f, 0x62, 0x44, 0x8e, 0xe8, 0x59, 0x93, 0x33, 0x2c, 0x67, 0x24, 0xaf, 0x81, - 0xba, 0xdd, 0x6c, 0x0b, 0x04, 0x75, 0xd1, 0xb4, 0x68, 0x50, 0x14, 0x58, 0x14, 0xed, 0x43, 0x0b, - 0x34, 0x71, 0x13, 0xa0, 0x0f, 0x2d, 0x5a, 0x74, 0xf4, 0xa0, 0x18, 0x08, 0xb0, 0x0d, 0x50, 0x40, - 0x6f, 0x5d, 0xf4, 0xa1, 0x48, 0xb4, 0x0f, 0xdd, 0xdd, 0x36, 0xcd, 0xa2, 0xe8, 0x43, 0xb0, 0x01, - 0x9a, 0xe2, 0xde, 0xf9, 0xe1, 0x70, 0x38, 0xa4, 0x46, 0x92, 0xe3, 0x75, 0xd3, 0x7d, 0x19, 0x91, - 0x33, 0xe7, 0x9e, 0x73, 0xef, 0x3d, 0x3f, 0xf7, 0x3b, 0xe7, 0xde, 0xa1, 0xe0, 0x33, 0x9b, 0xbc, - 0x7c, 0x59, 0x90, 0xae, 0xc8, 0xa5, 0x7b, 0x7c, 0x8d, 0xbb, 0x22, 0xf2, 0xca, 0x03, 0xa9, 0x71, - 0xbf, 0x28, 0x88, 0x0a, 0xdf, 0x58, 0xe7, 0x4a, 0xfc, 0x15, 0xe5, 0x61, 0x9d, 0x97, 0x2f, 0xd7, - 0x1b, 0x92, 0x22, 0xd1, 0xa7, 0x34, 0xe2, 0xcb, 0x1a, 0xf1, 0xe5, 0x36, 0xe2, 0xd1, 0x4b, 0x15, - 0x41, 0xb9, 0xb7, 0xb1, 0x76, 0xb9, 0x24, 0xd5, 0xae, 0x54, 0xa4, 0x8a, 0x74, 0x85, 0xb4, 0x5b, - 0xdb, 0x58, 0x27, 0xdf, 0xc8, 0x17, 0xf2, 0x49, 0xe3, 0x37, 0x7a, 0xaa, 0x22, 0x49, 0x95, 0x2a, - 0xdf, 0xa4, 0x52, 0x84, 0x1a, 0x2f, 0x2b, 0x5c, 0xad, 0xae, 0x13, 0x1c, 0x6d, 0xeb, 0x9d, 0xfe, - 0xe0, 0x78, 0xeb, 0x03, 0xa9, 0xae, 0x08, 0x92, 0xa8, 0x77, 0x73, 0xf4, 0x64, 0xeb, 0xc3, 0xfa, - 0xa6, 0x52, 0xb4, 0x8c, 0x62, 0xf4, 0x58, 0xeb, 0x63, 0xeb, 0xa3, 0x13, 0xad, 0x8f, 0x36, 0xb9, - 0xaa, 0x50, 0xe6, 0x14, 0x5e, 0x7f, 0x1a, 0xb7, 0x3d, 0x15, 0xf8, 0x07, 0xc5, 0x56, 0xc9, 0xa7, - 0xda, 0x29, 0x64, 0xab, 0x80, 0xc4, 0xbf, 0x22, 0x18, 0x5e, 0xd2, 0xa6, 0x2d, 0x6f, 0xcc, 0xda, - 0xec, 0xad, 0xb9, 0x57, 0x69, 0x11, 0x86, 0xcb, 0xfc, 0x3a, 0xb7, 0x51, 0x55, 0x8a, 0x15, 0x4e, - 0xe1, 0x1f, 0x70, 0x0f, 0x8b, 0x35, 0xa9, 0xcc, 0x47, 0x51, 0x1c, 0x5d, 0xe8, 0x4f, 0xbf, 0x7c, - 0x79, 0x8f, 0x99, 0xbf, 0x6c, 0x67, 0x3a, 0xa7, 0x31, 0xb9, 0x2d, 0x95, 0x79, 0x96, 0xd6, 0x39, - 0x5b, 0xee, 0xd1, 0x77, 0xe1, 0xa8, 0x5d, 0x1e, 0x57, 0x2e, 0x37, 0x78, 0x59, 0x8e, 0x7a, 0xe2, - 0xe8, 0x42, 0x24, 0x1d, 0xb3, 0x89, 0xcc, 0xd7, 0x37, 0x27, 0x32, 0x1a, 0xc5, 0xea, 0xc3, 0x3a, - 0xcf, 0x8e, 0xb4, 0x32, 0xd5, 0x1f, 0x25, 0xbe, 0x83, 0x60, 0xa8, 0x6d, 0x80, 0x4b, 0x05, 0xba, - 0x00, 0xa1, 0xb2, 0x28, 0x5b, 0xc7, 0x34, 0xb5, 0xef, 0x31, 0xcd, 0x2e, 0x15, 0xc8, 0x78, 0x82, - 0x65, 0x51, 0x26, 0x83, 0xf8, 0x2c, 0x00, 0x66, 0x2a, 0xf3, 0x8d, 0x4d, 0xbe, 0x11, 0xf5, 0xc4, - 0xbd, 0x2e, 0xfa, 0x1d, 0x2e, 0x8b, 0x72, 0x81, 0x34, 0x48, 0x08, 0x70, 0xc4, 0x2e, 0x62, 0x75, - 0x43, 0x14, 0xf9, 0x2a, 0x9d, 0x87, 0x80, 0x42, 0x3e, 0x45, 0x11, 0x61, 0x7a, 0xc2, 0xc6, 0x74, - 0x79, 0xed, 0x75, 0xbe, 0xa4, 0xb0, 0xfc, 0x3a, 0x66, 0x99, 0x1d, 0x7a, 0xf2, 0x48, 0x27, 0xff, - 0x87, 0x0f, 0xb6, 0xbd, 0xfe, 0x3f, 0x44, 0x1e, 0x0a, 0xb1, 0xfa, 0x9d, 0x05, 0x5f, 0xc8, 0x43, - 0x79, 0x13, 0x5f, 0x47, 0xd0, 0x3b, 0x3b, 0x3f, 0xb3, 0xb2, 0x22, 0x49, 0x55, 0xdc, 0x86, 0xbe, - 0x00, 0x21, 0x59, 0xe1, 0x1a, 0x4a, 0x51, 0xa8, 0x93, 0xf9, 0x08, 0x67, 0xfb, 0x7e, 0xa6, 0xa2, - 0x1e, 0xcc, 0xc0, 0xd7, 0xf0, 0xbc, 0x81, 0xd8, 0x20, 0x79, 0x9c, 0xaf, 0xd3, 0x67, 0x20, 0xc0, - 0x8b, 0x65, 0x4c, 0xe7, 0x71, 0xa2, 0xf3, 0xf3, 0x62, 0x39, 0x5f, 0xa7, 0x4f, 0x43, 0x90, 0x7f, - 0xa3, 0x54, 0xdd, 0x28, 0xf3, 0x51, 0x6f, 0x1c, 0x5d, 0x08, 0x65, 0x83, 0xef, 0x3e, 0x42, 0xef, - 0xab, 0x08, 0xb1, 0xc6, 0xfd, 0xc4, 0x37, 0x10, 0x50, 0xb8, 0x0f, 0xf9, 0x95, 0xbb, 0x93, 0x66, - 0x3f, 0x2e, 0xb6, 0xf5, 0xa3, 0xdf, 0xe0, 0xef, 0x6f, 0x78, 0xdf, 0x44, 0x96, 0x8e, 0x9c, 0xb5, - 0x75, 0xc4, 0x4e, 0xe8, 0xbe, 0x27, 0xdf, 0xf3, 0xc2, 0x90, 0xd1, 0x13, 0x5d, 0x03, 0xa4, 0x33, - 0xd7, 0xa0, 0xdf, 0xb0, 0x82, 0x7a, 0x83, 0x5f, 0x17, 0xde, 0x70, 0x92, 0xe4, 0x41, 0xf3, 0x3d, - 0x6c, 0x9f, 0x4e, 0xb7, 0x42, 0xc8, 0xe8, 0xdf, 0x84, 0x68, 0x6b, 0xc3, 0x22, 0x57, 0xad, 0x4a, - 0x25, 0x4e, 0x91, 0x1a, 0xa4, 0x13, 0x91, 0x74, 0xc2, 0xa6, 0x41, 0xe2, 0x9a, 0x36, 0x3d, 0x9e, - 0x7a, 0xf2, 0x68, 0x50, 0x77, 0x82, 0x66, 0xfb, 0x77, 0x1f, 0xa1, 0x6d, 0x15, 0x91, 0x01, 0xcc, - 0xf7, 0xb0, 0x47, 0x5a, 0xe4, 0x66, 0x0c, 0x22, 0xfa, 0xab, 0xe0, 0xaf, 0x4b, 0x52, 0x55, 0x8e, - 0xfa, 0x88, 0xbd, 0xa4, 0xf6, 0xb4, 0x6d, 0xbb, 0x22, 0xb2, 0xc3, 0xa6, 0xed, 0x50, 0xc6, 0xa7, - 0x28, 0x62, 0x35, 0xae, 0xd7, 0x6f, 0xff, 0x50, 0x45, 0x79, 0x98, 0x83, 0x80, 0x26, 0x37, 0xf9, - 0x59, 0xb8, 0x01, 0x94, 0x7d, 0xb2, 0xe0, 0x7c, 0xe7, 0x59, 0xa0, 0x23, 0xa3, 0x61, 0xb3, 0xb7, - 0xd9, 0x0b, 0x30, 0x62, 0x23, 0x2c, 0xdd, 0x93, 0x84, 0x12, 0x4f, 0x0f, 0x6c, 0xab, 0xc8, 0xb3, - 0xa3, 0x22, 0xb4, 0xab, 0x22, 0x6f, 0x9a, 0x19, 0x5f, 0xf0, 0x85, 0x10, 0xe5, 0x49, 0x7c, 0x33, - 0x0c, 0x03, 0xb8, 0xc3, 0xfb, 0xd5, 0xd5, 0xcf, 0xd0, 0x8b, 0xa8, 0xab, 0xd7, 0x5a, 0x75, 0x75, - 0xc9, 0x95, 0xae, 0x5c, 0xe9, 0x89, 0xbe, 0x01, 0x7d, 0xeb, 0x42, 0x43, 0x56, 0xcc, 0x58, 0x1a, - 0x20, 0x03, 0x1a, 0xb6, 0x89, 0xc8, 0xd5, 0xea, 0xca, 0xc3, 0x79, 0xc4, 0xf6, 0x12, 0x62, 0x3d, - 0x3a, 0xd1, 0xd3, 0xd0, 0x5b, 0xe5, 0x2c, 0x6d, 0x83, 0x5d, 0xdb, 0x46, 0x30, 0xad, 0xd1, 0x74, - 0x0c, 0x22, 0xe5, 0xca, 0x03, 0xb3, 0x65, 0xc8, 0x21, 0x50, 0xcc, 0x23, 0x16, 0xca, 0x95, 0x07, - 0x46, 0x8b, 0x49, 0x88, 0xc8, 0x5c, 0x8d, 0x2f, 0x72, 0x72, 0xb1, 0x5c, 0x79, 0x10, 0x85, 0x2e, - 0xb2, 0x3c, 0x6c, 0x18, 0x93, 0x66, 0xe4, 0xd9, 0xca, 0x03, 0x22, 0x49, 0x94, 0x4d, 0x49, 0x11, - 0x27, 0x49, 0x1e, 0x16, 0x87, 0x65, 0x43, 0xd2, 0x6b, 0xd0, 0x87, 0x27, 0xa7, 0x28, 0xf3, 0x8a, - 0x22, 0x88, 0x15, 0x39, 0xda, 0x4b, 0xc2, 0xff, 0x84, 0xeb, 0x69, 0x2f, 0x68, 0x0d, 0x49, 0xf4, - 0xee, 0xad, 0x37, 0x6f, 0xc8, 0xd7, 0xff, 0xdb, 0xf3, 0x5f, 0xaf, 0x40, 0x8a, 0x49, 0xa5, 0x99, - 0x09, 0xe6, 0x2a, 0x33, 0xfd, 0x54, 0x45, 0x5f, 0x81, 0x41, 0x2d, 0xd0, 0xc6, 0x75, 0x5b, 0xa5, - 0x51, 0x0a, 0xe2, 0x10, 0x25, 0xb7, 0x30, 0x33, 0x39, 0x3e, 0x23, 0x89, 0xeb, 0x42, 0x65, 0xa3, - 0xc1, 0xe1, 0x85, 0x9b, 0xf6, 0xe1, 0xc6, 0x70, 0x16, 0x62, 0xb3, 0xda, 0x72, 0x16, 0xd7, 0xd7, - 0xb3, 0x38, 0x27, 0x96, 0xe3, 0xb3, 0x4b, 0x85, 0xb8, 0xb6, 0x56, 0xd0, 0xde, 0xab, 0xcc, 0xf4, - 0x0f, 0x55, 0xf4, 0x96, 0xe7, 0x99, 0x79, 0x21, 0xd0, 0xe0, 0x27, 0x3d, 0xca, 0x86, 0x75, 0x83, - 0xa4, 0xbc, 0xb0, 0x06, 0x03, 0xb6, 0x8e, 0x24, 0x97, 0xe1, 0x36, 0xc4, 0x6c, 0x76, 0x95, 0xee, - 0xbb, 0x85, 0xbf, 0xc6, 0xf5, 0x39, 0x86, 0x13, 0xad, 0xa6, 0x93, 0xee, 0x5d, 0xe4, 0x2c, 0x4f, - 0xfb, 0x5a, 0xac, 0x03, 0x3e, 0x07, 0xd0, 0x1c, 0x58, 0x32, 0x05, 0x57, 0x20, 0xd6, 0x62, 0x0c, - 0x69, 0x7b, 0x17, 0x08, 0x83, 0xa6, 0xd2, 0xdd, 0x87, 0x8f, 0xec, 0x4b, 0xd0, 0x6f, 0xa0, 0x0b, - 0x9d, 0x64, 0x70, 0x5b, 0x45, 0x81, 0x1d, 0x15, 0xf9, 0x77, 0x55, 0xe4, 0x9f, 0x64, 0xae, 0x31, - 0x53, 0xd9, 0x53, 0xda, 0x2a, 0x6e, 0x21, 0x80, 0x1d, 0x15, 0x85, 0x31, 0x41, 0x6a, 0x8c, 0x49, - 0xa5, 0xb4, 0x20, 0xb4, 0xe0, 0x0b, 0xf9, 0xa9, 0xc0, 0x82, 0x2f, 0x14, 0xa6, 0x20, 0xf1, 0xdb, - 0x3e, 0x7d, 0x01, 0x31, 0x8c, 0x25, 0xbf, 0x42, 0x82, 0xd2, 0x77, 0xbc, 0x40, 0x99, 0x06, 0x54, - 0x14, 0xea, 0xc5, 0x1a, 0x57, 0xd7, 0x97, 0xf0, 0x79, 0x77, 0x21, 0xb9, 0x95, 0xe1, 0xe5, 0xe6, - 0xf7, 0xfa, 0x6d, 0xae, 0x9e, 0x13, 0x95, 0xc6, 0xc3, 0xec, 0xdf, 0x78, 0xb0, 0xa9, 0xf7, 0xbe, - 0x8d, 0xc2, 0x89, 0x60, 0xc3, 0x4f, 0xa1, 0xe8, 0x9b, 0x88, 0x44, 0x82, 0xb7, 0x91, 0x87, 0xba, - 0x89, 0x3f, 0x85, 0xdf, 0x46, 0x81, 0x24, 0x71, 0x85, 0xdd, 0x1f, 0xfd, 0xc0, 0x7b, 0xe1, 0xf1, - 0x16, 0x3a, 0x43, 0x27, 0xfe, 0x45, 0x45, 0x31, 0x08, 0xd5, 0x38, 0x59, 0xe1, 0x1b, 0x97, 0xc6, - 0xcc, 0x4f, 0x29, 0xf3, 0x53, 0x1a, 0x13, 0xe7, 0x1e, 0x6f, 0xa1, 0x0c, 0xfd, 0xb9, 0x0f, 0x55, - 0x74, 0x63, 0x49, 0x2a, 0xf3, 0xf1, 0x75, 0xa9, 0x11, 0x37, 0x7b, 0x18, 0x97, 0xeb, 0x7c, 0x49, - 0x58, 0x17, 0xf8, 0x72, 0x9c, 0x93, 0xe3, 0xb2, 0xa0, 0xf0, 0xd7, 0x45, 0xa9, 0xcc, 0x33, 0xe4, - 0x63, 0x5c, 0x90, 0xe3, 0x1a, 0x18, 0xe5, 0xaa, 0x98, 0x53, 0xff, 0xe3, 0x2d, 0x04, 0x74, 0x68, - 0x57, 0x45, 0x3e, 0xcc, 0x09, 0xdf, 0x82, 0xc7, 0x5b, 0x28, 0x40, 0xfb, 0xde, 0x51, 0x51, 0x0f, - 0xfe, 0x1a, 0x78, 0xbc, 0x85, 0x3c, 0x21, 0xd2, 0xc7, 0xa9, 0xc7, 0x5b, 0x68, 0x62, 0x34, 0xfd, - 0xa1, 0x8a, 0x2e, 0xe7, 0x57, 0x36, 0x27, 0xe2, 0xba, 0xa6, 0x89, 0x78, 0xe5, 0x1e, 0x6f, 0xe9, - 0x82, 0x24, 0xc6, 0xb9, 0x78, 0x45, 0xd8, 0xe4, 0xc5, 0xb8, 0xa8, 0xb3, 0x3d, 0xf2, 0x78, 0x0b, - 0xd1, 0xa3, 0xd4, 0xae, 0x8a, 0x7a, 0x49, 0x63, 0xdd, 0xec, 0x4c, 0x89, 0xa3, 0x44, 0x22, 0xdb, - 0x2f, 0xb4, 0xcc, 0xe5, 0x68, 0x06, 0x86, 0x1c, 0x66, 0x97, 0xa6, 0xc0, 0x7b, 0x9f, 0x7f, 0xa8, - 0x61, 0x11, 0x16, 0x7f, 0xa4, 0x87, 0xc1, 0xbf, 0xc9, 0x55, 0x37, 0x78, 0x6d, 0x81, 0x61, 0xb5, - 0x2f, 0xd7, 0x3d, 0x53, 0x28, 0xf1, 0x3b, 0x3e, 0x18, 0xb1, 0x69, 0xed, 0xee, 0x24, 0x31, 0x84, - 0xef, 0x76, 0x36, 0x84, 0x85, 0xfd, 0x1a, 0x82, 0xc6, 0xd2, 0xd1, 0x14, 0xfe, 0x76, 0x2f, 0x53, - 0x80, 0xb7, 0x51, 0x30, 0xa9, 0xe1, 0xa3, 0xff, 0x9b, 0xb6, 0x30, 0x79, 0x18, 0x5b, 0x98, 0x7c, - 0x8e, 0xb6, 0xf0, 0xc7, 0x21, 0x2d, 0xca, 0x6b, 0x61, 0x6d, 0x85, 0x6b, 0x70, 0x35, 0x5e, 0xe1, - 0x1b, 0x04, 0xf4, 0xd3, 0x1b, 0xd0, 0x57, 0xbe, 0x57, 0xaa, 0x17, 0x75, 0x5d, 0xcb, 0xba, 0x29, - 0x8c, 0xb9, 0x32, 0x05, 0x0b, 0xea, 0xc9, 0xc6, 0x9a, 0x08, 0xdf, 0xf8, 0x14, 0x42, 0x16, 0x1c, - 0xd0, 0x8b, 0xc5, 0xe8, 0x0d, 0x64, 0x7a, 0x1e, 0x86, 0xb9, 0x0d, 0x45, 0xaa, 0x71, 0x8a, 0x50, - 0x2a, 0xae, 0x37, 0xa4, 0x5a, 0x91, 0x60, 0x69, 0x1d, 0xe6, 0x38, 0xaf, 0xb6, 0x3d, 0x2c, 0x6d, - 0xb6, 0xb9, 0xd5, 0x90, 0x6a, 0x05, 0xdc, 0x82, 0x9e, 0x05, 0xda, 0xc6, 0x89, 0x17, 0xcb, 0x51, - 0x5f, 0x57, 0x3e, 0x54, 0x0b, 0x9f, 0x9c, 0x58, 0xa6, 0xd7, 0x1d, 0x9c, 0xc2, 0x4f, 0x78, 0x4c, - 0x1c, 0x24, 0x3a, 0x66, 0x7d, 0xdb, 0x1a, 0xd2, 0xb2, 0xa9, 0x93, 0x7e, 0xdf, 0x03, 0xbd, 0xeb, - 0xc2, 0x1b, 0x7c, 0xd9, 0x10, 0x12, 0x20, 0xd3, 0x9d, 0x77, 0x25, 0xc4, 0x49, 0x81, 0x97, 0x6f, - 0x61, 0x6e, 0x16, 0xc7, 0xfb, 0x18, 0x19, 0xde, 0x95, 0xf0, 0x37, 0xbc, 0x7f, 0x8f, 0xc8, 0xd7, - 0xc0, 0xdb, 0xc8, 0x4b, 0x35, 0x3d, 0x70, 0x0c, 0x75, 0x0c, 0xc6, 0x1f, 0xaa, 0x28, 0x76, 0x3b, - 0x33, 0x63, 0x98, 0x67, 0x5c, 0x5a, 0x27, 0xa6, 0x4d, 0x50, 0x42, 0xa9, 0x2a, 0xf0, 0xa2, 0x82, - 0x89, 0x47, 0x1e, 0x6f, 0xa1, 0x41, 0x7a, 0x60, 0x57, 0x45, 0x11, 0x0b, 0xf1, 0xfe, 0x22, 0xa9, - 0x21, 0x41, 0x91, 0xe2, 0x6b, 0x7c, 0x9c, 0x93, 0x65, 0xa1, 0x22, 0xf2, 0x65, 0xfc, 0xd5, 0x41, - 0xa0, 0xcb, 0x48, 0x0a, 0xeb, 0xe6, 0x6c, 0xd0, 0x37, 0x61, 0x90, 0x58, 0xb6, 0xe6, 0xee, 0x53, - 0xe9, 0xa2, 0xc2, 0x55, 0x08, 0x72, 0x0c, 0x67, 0x87, 0x2d, 0x70, 0x58, 0x07, 0x67, 0xd1, 0x9b, - 0xec, 0x00, 0x26, 0x5f, 0xd6, 0xa9, 0x57, 0xb9, 0xca, 0xe8, 0x67, 0x61, 0xc0, 0x36, 0xbb, 0xfb, - 0xf1, 0xbb, 0xeb, 0x95, 0xa7, 0x2a, 0x2a, 0x41, 0x02, 0x4e, 0x5a, 0x51, 0x97, 0xcc, 0x68, 0x60, - 0x8b, 0x31, 0x20, 0x04, 0x86, 0x61, 0x47, 0x60, 0xd0, 0x34, 0x20, 0x63, 0x68, 0x34, 0x4a, 0xc3, - 0x59, 0x88, 0x93, 0x0e, 0xc4, 0xf3, 0x2b, 0xf1, 0x0c, 0x99, 0xa0, 0x1a, 0x2f, 0x2a, 0x5a, 0xc0, - 0x99, 0x21, 0x73, 0x23, 0xd3, 0x68, 0x32, 0x9b, 0x82, 0x13, 0xa6, 0xa1, 0x98, 0x58, 0x44, 0x10, - 0x2b, 0x56, 0xe0, 0xe0, 0xdd, 0x51, 0x91, 0x07, 0x03, 0x87, 0x71, 0x8c, 0x08, 0xf5, 0xdc, 0xfb, - 0xfb, 0x08, 0x68, 0x1c, 0xc5, 0x33, 0x1b, 0x8a, 0xa4, 0x81, 0x3f, 0x12, 0x13, 0x92, 0xe0, 0xbb, - 0x27, 0xc9, 0x8a, 0x5e, 0xee, 0xe8, 0xe4, 0x44, 0x84, 0x86, 0x2e, 0x40, 0xa0, 0x21, 0x6d, 0x28, - 0xbc, 0x91, 0xa1, 0x4c, 0xef, 0x69, 0xc9, 0xad, 0x02, 0x59, 0xd2, 0x18, 0x8b, 0x9d, 0xef, 0x61, - 0x75, 0x56, 0xd9, 0x33, 0x30, 0x88, 0x3d, 0xb4, 0x44, 0x28, 0xf6, 0xc8, 0xc0, 0xfe, 0xd4, 0x03, - 0xd1, 0x4e, 0x2c, 0xe9, 0xf1, 0x0e, 0xa9, 0x18, 0x74, 0x4b, 0x99, 0xef, 0x90, 0xc4, 0x5f, 0xe1, - 0xd7, 0x37, 0xaa, 0xfa, 0xa0, 0xae, 0xb9, 0x4e, 0x5a, 0x0b, 0x7a, 0x43, 0xcd, 0x55, 0xe7, 0x7b, - 0x58, 0x93, 0x15, 0x7d, 0x5b, 0x07, 0x73, 0xa4, 0x8f, 0x7a, 0x80, 0xba, 0xec, 0x6a, 0xb6, 0x66, - 0x45, 0x59, 0x1f, 0x59, 0xb8, 0x6c, 0x7c, 0xcc, 0x9e, 0x86, 0x7e, 0x23, 0xcb, 0xeb, 0x3e, 0x41, - 0x2c, 0x44, 0x74, 0x26, 0x8b, 0x82, 0xac, 0xd0, 0x33, 0x5a, 0xb9, 0xa9, 0x2a, 0xc8, 0x0a, 0x89, - 0xf5, 0xe1, 0xec, 0x05, 0x33, 0x72, 0xfb, 0x9c, 0x22, 0xb7, 0xb5, 0xe0, 0x51, 0xd6, 0x98, 0x24, - 0x7e, 0x8e, 0x60, 0x08, 0x33, 0x5d, 0x94, 0x4a, 0x5c, 0x75, 0xb6, 0x99, 0xd1, 0xb4, 0x65, 0x79, - 0xdd, 0xe3, 0x79, 0xf7, 0x2c, 0xaf, 0x7b, 0x0c, 0x6f, 0xc9, 0xf2, 0x3e, 0x07, 0x74, 0x49, 0x4f, - 0x5e, 0xf8, 0xb2, 0xc9, 0xc0, 0xef, 0x54, 0x8c, 0x99, 0xef, 0x61, 0x07, 0x9b, 0xb4, 0x3a, 0x83, - 0xec, 0x59, 0xa0, 0x70, 0xf2, 0x51, 0x2d, 0xda, 0xf0, 0xb6, 0x57, 0x9f, 0x4f, 0xd3, 0x6d, 0xf0, - 0x8c, 0xee, 0x22, 0xe8, 0x6b, 0xd1, 0x0b, 0x5d, 0x80, 0xb0, 0xd9, 0x5c, 0x77, 0x9b, 0x09, 0x57, - 0xaa, 0xb5, 0x4d, 0x20, 0x36, 0x98, 0xaa, 0x7e, 0x8b, 0x7e, 0x15, 0x06, 0x2c, 0x83, 0x22, 0x0a, - 0xd3, 0xa6, 0x93, 0x71, 0x6b, 0x35, 0x58, 0x57, 0x78, 0x11, 0x6a, 0xb2, 0xc1, 0x77, 0xb2, 0x27, - 0x5b, 0xd2, 0x8a, 0x0e, 0x66, 0xf3, 0xd3, 0x00, 0x1c, 0x71, 0xb6, 0x6a, 0xfa, 0xa1, 0x33, 0x66, - 0x98, 0x70, 0xed, 0x25, 0xbf, 0x3a, 0xb8, 0xe1, 0x5e, 0x47, 0xdc, 0x30, 0x79, 0x30, 0x30, 0xdd, - 0x11, 0x39, 0xfc, 0x9b, 0x33, 0x72, 0x98, 0x3b, 0x60, 0x68, 0x6a, 0xc3, 0x0d, 0x3f, 0x77, 0x8d, - 0x1b, 0x9c, 0x91, 0xfb, 0xf3, 0x02, 0x0e, 0x93, 0x87, 0x01, 0x0e, 0x93, 0x2e, 0x80, 0xc3, 0x21, - 0x97, 0xfd, 0x83, 0xaf, 0xc6, 0x7f, 0x85, 0x60, 0x14, 0x2b, 0x49, 0x28, 0xe5, 0xeb, 0x4d, 0x90, - 0x87, 0xd3, 0x12, 0xb2, 0x96, 0x5d, 0x02, 0x10, 0xea, 0x66, 0x6c, 0x6b, 0xaf, 0x48, 0x7f, 0x1b, - 0x21, 0x36, 0x2c, 0xd4, 0x8d, 0x90, 0xc8, 0x00, 0x98, 0xdb, 0x18, 0x0f, 0x1c, 0x0a, 0xe4, 0x75, - 0xc4, 0x86, 0x8d, 0x8d, 0x8a, 0x07, 0xf4, 0x58, 0xcb, 0x7e, 0x81, 0x97, 0x50, 0x0f, 0x62, 0x78, - 0x64, 0x6f, 0x61, 0x6e, 0x11, 0xfc, 0xa3, 0x0f, 0x4e, 0xb6, 0xf7, 0x76, 0xa6, 0xba, 0x21, 0x1b, - 0x8b, 0xef, 0x5f, 0x76, 0xce, 0x34, 0xd9, 0x3d, 0xad, 0xb6, 0x2b, 0x6b, 0xc7, 0x8c, 0xf3, 0xdb, - 0xce, 0x19, 0xa7, 0x6e, 0xc2, 0x2f, 0x56, 0x8e, 0x69, 0xb1, 0xee, 0x9b, 0x8f, 0xb7, 0xd0, 0xcb, - 0xa3, 0xd7, 0x3f, 0x54, 0xd1, 0xa4, 0x36, 0x66, 0x0c, 0xf6, 0xea, 0xe6, 0xa8, 0x1d, 0x92, 0x4b, - 0x0e, 0xa7, 0x97, 0xad, 0xc9, 0x65, 0xec, 0xf1, 0x16, 0x1a, 0x1d, 0x8d, 0xee, 0xaa, 0x68, 0xb8, - 0xc9, 0xa4, 0x39, 0x75, 0x16, 0x6b, 0xc7, 0xd1, 0xa5, 0x2d, 0xc9, 0xfc, 0x0d, 0xb7, 0x49, 0xe6, - 0x17, 0xac, 0x56, 0x1f, 0x49, 0xdf, 0x38, 0x80, 0x1a, 0x0d, 0x7b, 0xb6, 0x66, 0xa8, 0x3f, 0x41, - 0x70, 0xbc, 0x9d, 0xf2, 0x56, 0x95, 0xe7, 0x15, 0x62, 0x49, 0x8d, 0x2e, 0x85, 0x71, 0xe4, 0xba, - 0x30, 0x3e, 0xec, 0x54, 0x18, 0xef, 0x58, 0x0b, 0xdf, 0x9f, 0xff, 0x30, 0x0e, 0xfe, 0xd3, 0xd7, - 0xd1, 0x77, 0xfe, 0xc4, 0x0b, 0x47, 0xf4, 0xf1, 0xae, 0xd8, 0xf2, 0xf1, 0x12, 0xf4, 0x63, 0xa5, - 0xe2, 0x65, 0x0d, 0x2f, 0x4c, 0xfa, 0x96, 0xd2, 0xe1, 0xa6, 0x1a, 0x23, 0x2d, 0xcc, 0xd4, 0xa0, - 0xa0, 0x37, 0x61, 0xb0, 0xa4, 0x79, 0x93, 0x45, 0x8e, 0xb6, 0x84, 0xbe, 0x72, 0x38, 0xcf, 0xcc, - 0x86, 0xb0, 0x81, 0xed, 0x68, 0x4b, 0xd8, 0x80, 0x2e, 0xc4, 0x94, 0x2b, 0xc3, 0xc0, 0x3a, 0x56, - 0xaa, 0x45, 0xaa, 0xb6, 0xe0, 0xbe, 0x7c, 0x00, 0xa9, 0xa6, 0x79, 0x64, 0x23, 0xad, 0xbb, 0x1b, - 0x7d, 0x44, 0x86, 0xd1, 0x20, 0x9b, 0xec, 0x54, 0x93, 0x1d, 0xb4, 0x00, 0x1f, 0x7f, 0x9a, 0x19, - 0x67, 0x26, 0x74, 0xe8, 0xf3, 0x5d, 0x0c, 0x7d, 0xf8, 0xb2, 0x50, 0xe2, 0x14, 0xbe, 0xdc, 0xdc, - 0x00, 0xc5, 0xea, 0x61, 0x21, 0x50, 0xe6, 0x37, 0x85, 0x12, 0xaf, 0x07, 0xe0, 0xeb, 0xbb, 0x2a, - 0x3a, 0x0f, 0x3e, 0x5e, 0xb9, 0x37, 0x46, 0xae, 0x29, 0x72, 0x9d, 0x06, 0x3f, 0xfe, 0x3c, 0x06, - 0xfe, 0x07, 0x55, 0x4e, 0xc4, 0x7f, 0x1e, 0x70, 0xe2, 0x98, 0x61, 0x0e, 0x81, 0x86, 0x8f, 0x42, - 0xd1, 0x9b, 0xac, 0xce, 0x89, 0x1e, 0x83, 0xa0, 0x3e, 0x51, 0x7b, 0xc0, 0x18, 0x83, 0x8c, 0x9e, - 0x03, 0x1f, 0xd6, 0x27, 0x99, 0xbc, 0x70, 0x36, 0xb5, 0xbb, 0x67, 0x40, 0xb3, 0x89, 0xc6, 0xd9, - 0x1b, 0x66, 0x40, 0x27, 0xc1, 0x5b, 0x53, 0x36, 0xc8, 0xae, 0x48, 0x5f, 0x36, 0xba, 0xad, 0xa7, - 0xc3, 0x03, 0xc9, 0xbe, 0x6c, 0x64, 0x8c, 0xb9, 0x9a, 0x4a, 0x5f, 0x4a, 0x4d, 0x8e, 0x4f, 0x4d, - 0xb0, 0x98, 0x88, 0x4e, 0x42, 0xa8, 0xde, 0x10, 0xa4, 0x86, 0xa0, 0x3c, 0x8c, 0x86, 0x49, 0x83, - 0x7e, 0xa3, 0x81, 0x3f, 0xe9, 0x8d, 0xfe, 0x02, 0xb1, 0xe6, 0x73, 0xfa, 0x1a, 0x44, 0x44, 0x49, - 0x29, 0xd6, 0x1b, 0x42, 0x8d, 0x6b, 0x3c, 0x24, 0x7b, 0x21, 0x9d, 0xf7, 0x6b, 0x40, 0x94, 0x94, - 0x15, 0x8d, 0x92, 0xbe, 0x0a, 0x20, 0xc8, 0x66, 0xbb, 0xde, 0xae, 0xed, 0xc2, 0x82, 0x6c, 0x34, - 0x9b, 0x03, 0xaa, 0x26, 0x89, 0x82, 0x22, 0x35, 0x8a, 0x65, 0x41, 0xe6, 0xd6, 0xaa, 0x7c, 0x39, - 0xda, 0xdf, 0xb9, 0xb1, 0x0e, 0xb2, 0x3c, 0xec, 0x80, 0xde, 0x6a, 0x56, 0x6f, 0x44, 0x7f, 0x19, - 0x82, 0xfa, 0xad, 0xe8, 0x80, 0xcb, 0x7c, 0x76, 0x51, 0x10, 0xef, 0x7f, 0x61, 0x83, 0xab, 0x0a, - 0xca, 0xc3, 0xdb, 0x5a, 0x53, 0x3d, 0x43, 0x33, 0x84, 0x18, 0x1c, 0xaf, 0xdf, 0x7c, 0xaa, 0xa2, - 0x97, 0x61, 0x14, 0x86, 0x4c, 0xe3, 0x8a, 0x9b, 0xd6, 0x45, 0x7b, 0x53, 0x4c, 0x1a, 0x62, 0x30, - 0x3c, 0x23, 0xd5, 0x6a, 0x92, 0x68, 0xdb, 0x8b, 0x09, 0x4c, 0x31, 0xd3, 0x4c, 0x6a, 0x3c, 0x1b, - 0xc3, 0xf3, 0x5a, 0xe6, 0xad, 0xd0, 0xdd, 0x80, 0x12, 0xde, 0x71, 0x66, 0x22, 0xfb, 0x12, 0xf4, - 0xeb, 0x73, 0x67, 0x35, 0xf2, 0xc8, 0x8e, 0x8a, 0x80, 0x6c, 0x1a, 0xa4, 0x98, 0x54, 0x3a, 0x9b, - 0x84, 0x41, 0xbd, 0x47, 0x16, 0x54, 0x32, 0xb2, 0xad, 0xa2, 0xfe, 0x77, 0x34, 0xdf, 0xed, 0x23, - 0xb4, 0x13, 0x4c, 0x4a, 0x47, 0x26, 0xe6, 0x06, 0x43, 0x80, 0x0a, 0x2e, 0xf8, 0x42, 0x41, 0x2a, - 0xb4, 0xe0, 0x0b, 0x01, 0x15, 0x59, 0xf0, 0x85, 0xfa, 0xa8, 0xfe, 0xc4, 0x3f, 0x7b, 0x20, 0x6e, - 0x8e, 0xe8, 0x36, 0x27, 0x72, 0x15, 0xbe, 0xc6, 0x8b, 0x4a, 0xab, 0xe3, 0x5c, 0xb3, 0x39, 0xce, - 0x29, 0x8c, 0xc8, 0xac, 0x8e, 0xf3, 0xe2, 0x7a, 0x87, 0xdf, 0x85, 0x77, 0x5c, 0xbf, 0xf4, 0x54, - 0x45, 0x17, 0xe1, 0x3c, 0xc4, 0x9a, 0xba, 0x6d, 0x4e, 0x85, 0x45, 0xcd, 0xfe, 0x14, 0x93, 0x66, - 0xae, 0xee, 0xa5, 0x48, 0x1d, 0x11, 0x6e, 0xd3, 0x30, 0x92, 0x53, 0xee, 0xf1, 0x0d, 0x91, 0xdf, - 0x6b, 0x3a, 0xc9, 0x18, 0xb6, 0x50, 0x6f, 0xc8, 0x33, 0x86, 0xae, 0x07, 0xb4, 0x84, 0xef, 0x05, - 0x9b, 0xce, 0x34, 0x84, 0x36, 0x44, 0x85, 0xab, 0x54, 0xf8, 0xf2, 0x1e, 0xbb, 0xbf, 0x26, 0x1d, - 0x7d, 0x1e, 0x82, 0x9b, 0x55, 0x4e, 0x2c, 0x0a, 0x65, 0x52, 0xba, 0xeb, 0xcb, 0xf6, 0x62, 0xce, - 0xc1, 0xa4, 0x3f, 0xfa, 0x8b, 0x53, 0x17, 0xd0, 0x3c, 0x62, 0x03, 0xf8, 0x71, 0xbe, 0x8c, 0x23, - 0x0e, 0xc9, 0x49, 0x35, 0xe4, 0x4f, 0x02, 0x54, 0xe7, 0x5d, 0x5b, 0xc0, 0xa4, 0x5a, 0x01, 0x8d, - 0x5e, 0xd3, 0x1b, 0xea, 0x4b, 0x37, 0xb8, 0xf4, 0xfa, 0x4e, 0xf5, 0xd8, 0xac, 0x6f, 0x47, 0xf3, - 0x7a, 0x22, 0x43, 0x4f, 0x98, 0xef, 0x42, 0xb8, 0xb9, 0xe2, 0x45, 0x5c, 0x96, 0x94, 0x9c, 0x01, - 0xc2, 0xbc, 0x47, 0x2b, 0x29, 0x91, 0xf5, 0xf4, 0x15, 0x18, 0x10, 0xa5, 0xa2, 0x50, 0xdf, 0x9c, - 0x34, 0xf3, 0x82, 0x53, 0x5d, 0x06, 0xee, 0x65, 0xfb, 0x44, 0x29, 0x5f, 0xdf, 0x9c, 0x34, 0x72, - 0x04, 0x01, 0x86, 0xcc, 0x7e, 0x59, 0x78, 0xc4, 0x0f, 0xd7, 0x43, 0x2f, 0x3b, 0x68, 0xf4, 0xb0, - 0x29, 0xea, 0x1b, 0x08, 0x28, 0x4d, 0xc8, 0x86, 0x22, 0x19, 0x45, 0xb0, 0xd3, 0x44, 0xd0, 0xf8, - 0x3e, 0x4b, 0x86, 0x64, 0x9a, 0xcf, 0x7d, 0xf8, 0xe8, 0xa5, 0x32, 0x5f, 0x93, 0x52, 0x8c, 0xc2, - 0xcb, 0x0a, 0x53, 0x6a, 0x28, 0x8c, 0xac, 0x70, 0x15, 0x41, 0xac, 0x30, 0xb2, 0xb4, 0xae, 0xac, - 0x71, 0xe2, 0xfd, 0x62, 0x8d, 0x2f, 0xcd, 0x7b, 0xd9, 0x7e, 0x2c, 0xb6, 0xd9, 0x1a, 0x27, 0xfe, - 0x18, 0xa5, 0x17, 0xb5, 0x82, 0x8d, 0x2e, 0x2c, 0xda, 0xd7, 0x65, 0xde, 0x7c, 0x2c, 0x85, 0x5b, - 0x90, 0x5a, 0x8d, 0xb1, 0x79, 0x5e, 0x81, 0x63, 0x16, 0x2e, 0x82, 0x28, 0x0b, 0x65, 0xde, 0x64, - 0xd6, 0x6d, 0xe9, 0x19, 0x7e, 0xb2, 0x85, 0x28, 0xe8, 0xdf, 0x94, 0xaa, 0x8a, 0xac, 0x70, 0xa5, - 0xfb, 0x45, 0xcc, 0x66, 0xde, 0xc7, 0x1e, 0x31, 0x45, 0xe4, 0x09, 0x33, 0x43, 0xd0, 0x3a, 0xf4, - 0xdb, 0xb8, 0x0f, 0xb8, 0x46, 0xbc, 0xc7, 0x9e, 0x3c, 0x1a, 0xd8, 0x14, 0x1a, 0xca, 0x46, 0x73, - 0xa0, 0xfa, 0x89, 0xa3, 0x79, 0x1f, 0xdb, 0x27, 0xb4, 0xc8, 0xf9, 0x12, 0x0c, 0xc8, 0x8a, 0xd4, - 0xe0, 0x2a, 0x4d, 0x41, 0x23, 0x5d, 0x86, 0x71, 0x0c, 0x87, 0xc3, 0x27, 0x5b, 0x68, 0x10, 0x06, - 0x64, 0xbe, 0xb4, 0xd1, 0xe0, 0x6b, 0xbc, 0x7c, 0xcf, 0x18, 0x4b, 0xbf, 0xce, 0xc9, 0xe0, 0xbd, - 0x06, 0xbd, 0x72, 0x63, 0x73, 0xd2, 0x64, 0x7c, 0xec, 0xd9, 0x8c, 0x20, 0x82, 0x99, 0x1a, 0x32, - 0x3e, 0x0f, 0x83, 0x42, 0xbd, 0xb8, 0xce, 0xad, 0x35, 0x84, 0x92, 0x29, 0x68, 0xb4, 0xcb, 0x08, - 0x82, 0x4d, 0x46, 0x03, 0x42, 0xfd, 0x16, 0x69, 0x68, 0x30, 0xfb, 0x2d, 0x84, 0x87, 0x55, 0xc1, - 0xb1, 0xdb, 0xe4, 0x75, 0xdc, 0x75, 0xa7, 0x27, 0x9e, 0x3c, 0x0a, 0xea, 0xad, 0x9f, 0x6c, 0xa1, - 0x73, 0xc9, 0xa0, 0x6e, 0x99, 0x49, 0x5f, 0xbd, 0x21, 0x95, 0x93, 0xbd, 0x56, 0x03, 0x4d, 0x06, - 0xd7, 0xf9, 0x72, 0x83, 0xab, 0xd5, 0xc9, 0xb4, 0x69, 0x8d, 0x8c, 0x5e, 0xe8, 0xeb, 0x0f, 0xb5, - 0x5f, 0x74, 0x36, 0xb8, 0x3f, 0x74, 0x36, 0xd4, 0xc5, 0xf4, 0xfd, 0x5d, 0xd0, 0xd9, 0x70, 0xd7, - 0x76, 0x7b, 0xa0, 0xb3, 0xa3, 0x7b, 0xa2, 0xb3, 0x40, 0x57, 0x74, 0x16, 0x7d, 0x36, 0xe8, 0x2c, - 0xd0, 0x44, 0x67, 0xf2, 0x53, 0x15, 0x49, 0x70, 0x12, 0x68, 0x63, 0xc5, 0xb5, 0xac, 0xda, 0xc1, - 0x14, 0x13, 0x4f, 0x33, 0xf1, 0xab, 0x30, 0x02, 0x54, 0x7e, 0xc5, 0x06, 0xce, 0xd0, 0x14, 0x8c, - 0xc0, 0xc0, 0x5d, 0xcd, 0x4a, 0xcd, 0xd3, 0x35, 0x9e, 0x54, 0x1a, 0xe2, 0x1d, 0xe0, 0x5c, 0x28, - 0x35, 0xc9, 0xa4, 0xae, 0x31, 0xe9, 0xf4, 0x9e, 0x80, 0x2e, 0x06, 0x11, 0xb2, 0xfe, 0x59, 0x9e, - 0x1b, 0x67, 0x44, 0xbc, 0x93, 0xcc, 0xb5, 0xec, 0xd9, 0xb6, 0x5d, 0x80, 0xa1, 0x6d, 0x15, 0x85, - 0x77, 0x54, 0x14, 0xda, 0x55, 0x51, 0x70, 0x9a, 0x21, 0xe7, 0x44, 0xb2, 0x2c, 0x0c, 0x59, 0x23, - 0xbc, 0x41, 0x7b, 0x63, 0x5b, 0x45, 0xa7, 0x76, 0x54, 0x14, 0xdb, 0x55, 0x51, 0x68, 0x3c, 0xc5, - 0x8c, 0xa7, 0x99, 0xf1, 0xf1, 0xc7, 0x1f, 0x23, 0x37, 0x91, 0x35, 0x7b, 0xb1, 0xb9, 0xb7, 0xa2, - 0xb3, 0x3b, 0xba, 0xad, 0xa2, 0xbe, 0x1d, 0x15, 0xf5, 0xee, 0xaa, 0x28, 0x92, 0x1a, 0x67, 0x52, - 0x13, 0x4c, 0xfa, 0x1a, 0x93, 0x4e, 0x75, 0x80, 0xa5, 0x43, 0x3b, 0x2a, 0xa2, 0x09, 0xd4, 0x9c, - 0x66, 0xd2, 0x63, 0x9d, 0x61, 0xe9, 0x51, 0x1d, 0x96, 0x1e, 0x21, 0x79, 0xda, 0x38, 0x93, 0x9e, - 0xb0, 0xc1, 0xd2, 0x10, 0x15, 0x5e, 0xf0, 0x85, 0x62, 0xd4, 0xa9, 0x05, 0x5f, 0xa8, 0x97, 0xea, - 0x5b, 0xf0, 0x85, 0x68, 0x6a, 0x68, 0xc1, 0x17, 0x3a, 0x42, 0x1d, 0x4d, 0xfc, 0x20, 0x00, 0x43, - 0xda, 0xd1, 0xd5, 0x56, 0x00, 0x35, 0xd9, 0xc4, 0x41, 0x9e, 0x6e, 0xa6, 0xa8, 0xe7, 0x94, 0x26, - 0x1a, 0x9a, 0xd1, 0xd1, 0x90, 0x96, 0xe2, 0x5f, 0xda, 0x1b, 0x0d, 0x39, 0x21, 0xa1, 0x9c, 0x79, - 0x88, 0xd6, 0xe7, 0x3a, 0xa8, 0x84, 0xcd, 0xa3, 0xb4, 0xc6, 0x01, 0x5a, 0x7a, 0xd5, 0x0a, 0x2b, - 0xfc, 0x87, 0x5a, 0xb4, 0x2d, 0xa0, 0xc2, 0x79, 0x7d, 0xec, 0x7e, 0xe4, 0xae, 0x7d, 0x7d, 0xfc, - 0x42, 0xb7, 0xf5, 0x31, 0xd4, 0x95, 0x99, 0xfb, 0x95, 0x30, 0xfc, 0x2c, 0xd6, 0x11, 0x64, 0x5f, - 0x09, 0xf5, 0xb0, 0x0b, 0xfb, 0x0d, 0xbb, 0x91, 0xee, 0x61, 0xf7, 0xfa, 0xeb, 0x4f, 0x55, 0xb4, - 0x0e, 0x51, 0xa0, 0x34, 0x7b, 0xb4, 0x84, 0x17, 0x5f, 0x8a, 0x89, 0x4f, 0x38, 0xc7, 0x96, 0xab, - 0x30, 0xdc, 0x1e, 0x5b, 0xd0, 0x24, 0x9c, 0xec, 0x10, 0x5a, 0xb4, 0x83, 0x61, 0x9d, 0xe2, 0x8a, - 0xf5, 0xf8, 0x99, 0xcd, 0x79, 0xb1, 0x47, 0x06, 0x77, 0x54, 0x14, 0xc0, 0x5e, 0x76, 0x8d, 0x99, - 0x62, 0xa6, 0xcd, 0xd3, 0x65, 0x01, 0x2a, 0x98, 0xf8, 0xf3, 0x08, 0x0c, 0x2d, 0xf2, 0x15, 0xae, - 0xf4, 0xb0, 0xd5, 0x8f, 0xbe, 0x08, 0x3e, 0xe5, 0x61, 0xdd, 0x38, 0xb9, 0x7e, 0x75, 0xdf, 0x27, - 0xd7, 0x89, 0x76, 0xfa, 0xf0, 0x7c, 0x85, 0xde, 0x42, 0xfe, 0x51, 0x6f, 0x0f, 0xf2, 0xb2, 0x84, - 0xa3, 0xa1, 0x06, 0xaf, 0x1b, 0x35, 0x94, 0xc0, 0xae, 0x5d, 0xfd, 0x08, 0x6b, 0xf7, 0xe3, 0xe9, - 0x27, 0xda, 0xad, 0xc2, 0x72, 0x4e, 0xbd, 0x5f, 0x7f, 0x64, 0xcc, 0xfa, 0x17, 0x81, 0xec, 0x45, - 0xb5, 0x6c, 0x2f, 0x1e, 0x64, 0xc8, 0x38, 0x75, 0x60, 0x49, 0xd2, 0x61, 0x80, 0xe3, 0x79, 0xa0, - 0x74, 0x47, 0xd6, 0x79, 0xf3, 0xb2, 0xbe, 0xbd, 0x73, 0xd2, 0xe1, 0xcc, 0x7e, 0x61, 0x63, 0x4d, - 0xd4, 0x2a, 0x5f, 0xec, 0x80, 0xd6, 0x2c, 0x63, 0xb4, 0xa2, 0xbf, 0x06, 0x03, 0xb6, 0x97, 0x17, - 0x74, 0xcf, 0x3d, 0x40, 0x37, 0x6f, 0xcd, 0xbd, 0xca, 0xf6, 0xb7, 0xbe, 0xcb, 0x40, 0x17, 0xc8, - 0x09, 0x49, 0x23, 0x59, 0x0a, 0xb9, 0xdc, 0xe9, 0x74, 0x78, 0x5d, 0x81, 0x0d, 0xcf, 0x2e, 0x15, - 0xf4, 0xf4, 0xe8, 0x2b, 0x10, 0xc1, 0x73, 0x62, 0x70, 0x0d, 0x93, 0x79, 0xbd, 0x71, 0xa0, 0x79, - 0xd5, 0x38, 0xb2, 0xd0, 0xfc, 0x4c, 0x17, 0xa1, 0x97, 0x2c, 0xa1, 0x38, 0xa3, 0x14, 0xc4, 0x0a, - 0xf1, 0xeb, 0x83, 0xbc, 0x37, 0x72, 0x77, 0x31, 0xb3, 0xb4, 0xaa, 0xf1, 0x60, 0xc9, 0xa2, 0xac, - 0x7f, 0xa1, 0x4f, 0x41, 0x44, 0x4b, 0xae, 0x8b, 0x22, 0x57, 0xe3, 0xb5, 0x83, 0xbf, 0x2c, 0x68, - 0xb7, 0x96, 0xb8, 0x1a, 0x4f, 0x9f, 0x85, 0x90, 0xd1, 0x03, 0x92, 0x67, 0xf4, 0xe9, 0xe7, 0x0f, - 0x92, 0xde, 0xe8, 0xff, 0x9c, 0x62, 0x83, 0x3a, 0x2f, 0x7a, 0xd9, 0x5c, 0x15, 0xfa, 0x5d, 0xc6, - 0x72, 0xe7, 0x77, 0x34, 0xcc, 0xf5, 0xc1, 0x1a, 0x9c, 0x06, 0xf6, 0xc0, 0x84, 0x02, 0xb4, 0xd7, - 0xc6, 0xa3, 0x94, 0x0b, 0x1f, 0x8a, 0x39, 0x55, 0xd5, 0x2d, 0x5e, 0x44, 0xe9, 0x0f, 0x9b, 0x95, - 0x75, 0x27, 0x38, 0x48, 0xef, 0x09, 0x07, 0x7b, 0xba, 0xc2, 0xc1, 0xa1, 0x67, 0x03, 0x07, 0x7b, - 0x9a, 0x70, 0xf0, 0x4d, 0xf4, 0x54, 0x45, 0xbf, 0x0e, 0xa7, 0x81, 0xd2, 0xc2, 0x9e, 0x25, 0x5c, - 0xf7, 0xa5, 0x98, 0x54, 0x8a, 0x20, 0x2b, 0x8c, 0x71, 0x20, 0xee, 0x10, 0xb7, 0x7b, 0xaf, 0x32, - 0xe4, 0x08, 0x2f, 0x33, 0xcd, 0xa4, 0x26, 0x1d, 0x43, 0xf8, 0x04, 0x9c, 0xea, 0x10, 0xc2, 0x83, - 0xe3, 0x4c, 0xea, 0x2a, 0x93, 0xba, 0xd6, 0x19, 0x11, 0xd1, 0x3a, 0x22, 0x1a, 0x24, 0xe8, 0x69, - 0x8a, 0x49, 0xe1, 0x58, 0x3d, 0x48, 0xd1, 0x89, 0x8f, 0xc3, 0x30, 0xb2, 0x28, 0x49, 0xf5, 0x35, - 0xae, 0xd4, 0x1a, 0x62, 0xe9, 0x92, 0xad, 0x60, 0xf4, 0xf9, 0x5d, 0x15, 0x4d, 0x81, 0xb7, 0x2a, - 0x8d, 0xe1, 0x4b, 0x0a, 0x5f, 0xd2, 0xf8, 0x32, 0x8e, 0x2f, 0x13, 0xf8, 0x72, 0x15, 0x5f, 0x26, - 0xf1, 0xe5, 0x1a, 0xbe, 0x10, 0xe2, 0x69, 0xf0, 0x55, 0xa5, 0xd4, 0x8b, 0x58, 0xc9, 0xb6, 0xd5, - 0x7f, 0xba, 0xd7, 0x97, 0xba, 0xd4, 0x7f, 0x82, 0xcf, 0xa6, 0xfe, 0x83, 0x3a, 0xd7, 0x7f, 0x42, - 0x87, 0xab, 0xae, 0xa0, 0x83, 0xd7, 0x7f, 0x3c, 0xcf, 0xa7, 0xfe, 0xe3, 0x71, 0xaa, 0xff, 0x38, - 0xa3, 0xca, 0x48, 0xd7, 0x6a, 0xd5, 0x3e, 0xab, 0x2e, 0xbd, 0xfb, 0xae, 0xba, 0x78, 0x3b, 0x62, - 0x4d, 0xc7, 0x6a, 0x42, 0x9f, 0x9b, 0x6a, 0x82, 0xb7, 0xbd, 0x9a, 0xa0, 0x23, 0x99, 0xb0, 0x9b, - 0x3a, 0xf2, 0xfa, 0x53, 0x15, 0xad, 0xc1, 0x51, 0x18, 0x30, 0xdc, 0x38, 0x3e, 0xab, 0xf9, 0x16, - 0xc6, 0x88, 0xe9, 0x4e, 0x18, 0xd1, 0x31, 0xff, 0x1c, 0x83, 0x63, 0x1d, 0x22, 0x0c, 0x9a, 0x76, - 0xb3, 0x93, 0x60, 0x4b, 0x16, 0x1d, 0xde, 0x4f, 0x58, 0x76, 0x4e, 0x2b, 0xa7, 0x2c, 0x69, 0xa5, - 0x9f, 0xa4, 0x95, 0x6e, 0x73, 0x4a, 0x67, 0x58, 0xda, 0xba, 0x7f, 0x61, 0x4b, 0xfe, 0xb4, 0xb4, - 0x0f, 0xa8, 0x48, 0x62, 0x14, 0xa2, 0x9d, 0xc2, 0x7b, 0xe2, 0x9f, 0x10, 0xd0, 0x77, 0xef, 0x49, - 0xb2, 0xad, 0x8c, 0x7e, 0x05, 0x82, 0xa2, 0x54, 0x74, 0x71, 0xd8, 0x31, 0x20, 0x4a, 0xf3, 0x92, - 0xac, 0xd0, 0x0c, 0xf8, 0x37, 0x09, 0x79, 0xf7, 0xf8, 0xa6, 0x11, 0xe1, 0x78, 0xa8, 0x63, 0xc8, - 0x3d, 0x0e, 0x16, 0x19, 0x64, 0xd9, 0x38, 0x44, 0x70, 0x4b, 0xc7, 0x23, 0x68, 0xd6, 0x2d, 0xca, - 0xbf, 0x46, 0x70, 0x74, 0x91, 0x7b, 0xc8, 0x37, 0xd2, 0x77, 0xab, 0x9c, 0xd8, 0x3a, 0x28, 0xd1, - 0x16, 0xea, 0xef, 0xee, 0xaa, 0x68, 0xa6, 0x6d, 0x8f, 0x32, 0x4d, 0xae, 0xe3, 0xe4, 0x3a, 0x41, - 0xae, 0x57, 0xc9, 0x75, 0x92, 0x5c, 0xaf, 0x91, 0xeb, 0x54, 0xcb, 0x6e, 0x66, 0xa7, 0xa8, 0x7f, - 0xb6, 0x59, 0xa3, 0xf7, 0xb4, 0xd7, 0xe8, 0x8d, 0x0a, 0x7d, 0x62, 0x06, 0x46, 0xb5, 0x1e, 0x17, - 0xaa, 0x52, 0x7b, 0xa7, 0x2d, 0x4c, 0x50, 0x17, 0x26, 0xbf, 0xe7, 0x81, 0xa8, 0xce, 0xa5, 0x21, - 0x48, 0x9b, 0x9f, 0xec, 0xc0, 0xad, 0x1b, 0x1a, 0xdd, 0xed, 0xc1, 0x71, 0x43, 0xc3, 0xe7, 0xb0, - 0xa1, 0xd1, 0x63, 0x8c, 0xd4, 0xa9, 0xf2, 0xe3, 0xb0, 0x43, 0xf4, 0xbb, 0x5e, 0x18, 0xd2, 0xe6, - 0xa3, 0x75, 0x2a, 0x78, 0xa0, 0xaa, 0x69, 0x4d, 0x90, 0x71, 0x5f, 0xb7, 0xf0, 0xbd, 0x5f, 0x2e, - 0xee, 0x60, 0x57, 0x18, 0x81, 0x69, 0x3c, 0x9b, 0x48, 0x48, 0x82, 0x61, 0x5d, 0x8c, 0x5c, 0x95, - 0x2c, 0xa2, 0xbc, 0x2e, 0xcf, 0x2c, 0x74, 0x36, 0x88, 0xf9, 0x1e, 0x96, 0xd6, 0x58, 0x17, 0xaa, - 0x52, 0x53, 0xe0, 0x3d, 0x18, 0xac, 0xa6, 0x65, 0xac, 0x7a, 0x8b, 0x34, 0x9f, 0x5b, 0xf0, 0xd7, - 0xc1, 0x70, 0xe6, 0x7b, 0x58, 0x4a, 0xe7, 0x6a, 0xde, 0xcf, 0x32, 0x70, 0xb4, 0x4a, 0xe8, 0x9b, - 0x0c, 0xf6, 0x3c, 0x38, 0xf0, 0xe6, 0x09, 0xe8, 0x9f, 0xab, 0x4a, 0x6b, 0x5c, 0xb5, 0x50, 0xe7, - 0x4b, 0x44, 0x11, 0xf9, 0x67, 0x90, 0x1f, 0xeb, 0x09, 0xf1, 0x39, 0x6b, 0x42, 0x3c, 0xfc, 0x2b, - 0x9b, 0x0c, 0x7f, 0xed, 0x80, 0xc9, 0x70, 0x87, 0xf7, 0x4f, 0xdb, 0x52, 0x64, 0x11, 0x46, 0x1c, - 0x40, 0x0f, 0x2f, 0x47, 0xcf, 0x75, 0x12, 0x32, 0x69, 0x11, 0x72, 0x5c, 0x5f, 0xe7, 0x1d, 0x65, - 0x0d, 0xb5, 0xe1, 0x9e, 0x4f, 0x53, 0xf2, 0x17, 0x33, 0x25, 0x7f, 0x04, 0xd1, 0x3a, 0xd7, 0xb0, - 0x6c, 0xef, 0x58, 0xc2, 0x49, 0xaf, 0x0b, 0x67, 0x39, 0xfb, 0xe4, 0xd1, 0x60, 0x5b, 0x4b, 0xbb, - 0x69, 0x20, 0xf6, 0x88, 0x26, 0xc4, 0xde, 0xef, 0x4f, 0xac, 0x22, 0x70, 0xae, 0xad, 0x22, 0x00, - 0x9f, 0x74, 0x35, 0xe0, 0xab, 0x0e, 0xfb, 0xc2, 0xe7, 0x0f, 0xbc, 0x2f, 0xdc, 0xb6, 0xdb, 0x5b, - 0x01, 0xda, 0x92, 0xde, 0x15, 0xc9, 0xc1, 0x4a, 0x39, 0x7a, 0xe2, 0x90, 0x59, 0x1e, 0x4b, 0x35, - 0xb3, 0x3b, 0xf2, 0x44, 0xa6, 0xbf, 0x62, 0x81, 0xae, 0xda, 0x28, 0x4e, 0xba, 0x0c, 0x89, 0xa6, - 0xb2, 0x2c, 0xc7, 0xe2, 0xcd, 0x77, 0x52, 0xf4, 0x61, 0x7c, 0x1f, 0x39, 0x9c, 0xa5, 0x8d, 0x11, - 0x85, 0xcc, 0xec, 0x29, 0xa0, 0x75, 0x49, 0x72, 0x3c, 0x3c, 0xcb, 0xee, 0xeb, 0xc5, 0xdd, 0xce, - 0x67, 0xb5, 0xbb, 0xbc, 0xca, 0x48, 0x9f, 0x6c, 0xd9, 0x3d, 0xc4, 0x89, 0x6a, 0xc8, 0xba, 0x4b, - 0x98, 0x71, 0x28, 0x0b, 0x9d, 0xee, 0x8a, 0xaa, 0xda, 0x0a, 0x42, 0x77, 0x9a, 0x05, 0xa1, 0xc4, - 0x21, 0x0b, 0x42, 0x96, 0x52, 0x10, 0xad, 0xc0, 0x08, 0x31, 0xd1, 0xb6, 0x65, 0xe9, 0xa5, 0x43, - 0x25, 0xca, 0xcd, 0x9f, 0xff, 0x20, 0x59, 0x54, 0xc1, 0xb6, 0x4e, 0x69, 0x52, 0x27, 0xda, 0xa5, - 0x9e, 0x7d, 0x86, 0x52, 0x27, 0xec, 0x52, 0xbf, 0x0c, 0x40, 0x72, 0x17, 0xf2, 0xbb, 0x40, 0xd1, - 0x33, 0x2e, 0x1d, 0xb1, 0x3d, 0xb5, 0x6a, 0x8a, 0x09, 0x13, 0x7e, 0x04, 0x0c, 0xad, 0xc2, 0x88, - 0xbe, 0xc5, 0x4d, 0xf2, 0xd0, 0xa6, 0x9e, 0x2f, 0xba, 0xc9, 0xac, 0x11, 0x3b, 0x6c, 0x6d, 0x6d, - 0x6a, 0x9d, 0x85, 0x96, 0xfb, 0x45, 0x5e, 0xd4, 0x98, 0x26, 0xdd, 0x31, 0x1d, 0xb2, 0x36, 0xce, - 0x69, 0x6d, 0x69, 0x05, 0x86, 0xca, 0xc6, 0x41, 0x2e, 0xcb, 0xd2, 0xf0, 0x41, 0xd0, 0xed, 0xfb, - 0x60, 0x8e, 0xc7, 0x47, 0x9b, 0x62, 0x3d, 0x2c, 0x5d, 0x6e, 0x23, 0xa1, 0x7f, 0x0d, 0x68, 0x5e, - 0xdf, 0x7c, 0xb6, 0x08, 0xfd, 0x30, 0xe8, 0xf2, 0x85, 0x12, 0xc7, 0xa3, 0x62, 0x56, 0x99, 0x83, - 0xbc, 0x9d, 0x82, 0xbe, 0x0f, 0x94, 0xb6, 0x36, 0x58, 0x04, 0xfe, 0x7b, 0xd0, 0x25, 0x88, 0x70, - 0xd8, 0x58, 0xb5, 0x8a, 0x1b, 0x50, 0x5a, 0x9f, 0xd3, 0x53, 0x10, 0xa8, 0x92, 0x62, 0x6a, 0xf4, - 0x3f, 0x82, 0x6e, 0x94, 0xe3, 0x61, 0x75, 0x7a, 0xfa, 0x5b, 0x08, 0x62, 0x4d, 0x85, 0xd4, 0xcc, - 0x93, 0x75, 0x96, 0x5e, 0xff, 0x44, 0x63, 0x99, 0x71, 0xaf, 0x9b, 0x0e, 0x67, 0x15, 0xad, 0xf2, - 0x4f, 0x94, 0xbb, 0x10, 0x63, 0x7d, 0x55, 0xf5, 0x32, 0x8d, 0xa5, 0x23, 0xff, 0xe9, 0x56, 0x5f, - 0x8e, 0x95, 0xda, 0x16, 0x7d, 0x55, 0xed, 0x14, 0x58, 0x5f, 0xf6, 0xb4, 0x24, 0xfa, 0x91, 0x5b, - 0x7d, 0x39, 0x64, 0x8a, 0x2d, 0xfa, 0xaa, 0xb6, 0x3e, 0x7f, 0x06, 0x2f, 0x9f, 0x67, 0xcf, 0x39, - 0xd5, 0xb0, 0x71, 0x02, 0x75, 0x7a, 0x47, 0x45, 0x71, 0x52, 0x20, 0x1a, 0x67, 0xc6, 0x27, 0xb2, - 0x97, 0x4c, 0x27, 0x2e, 0xd6, 0x36, 0xaa, 0x8a, 0x50, 0xaf, 0xf2, 0x6f, 0x60, 0x24, 0x37, 0xb2, - 0xad, 0xa2, 0x8b, 0x3b, 0x2a, 0xba, 0x80, 0x49, 0x27, 0x52, 0xcc, 0x44, 0xfa, 0x23, 0x15, 0xa1, - 0xec, 0xb4, 0x75, 0x39, 0xd4, 0xb9, 0x9e, 0xdd, 0x56, 0xd1, 0x07, 0xc1, 0x1d, 0x15, 0xbd, 0x1f, - 0xdc, 0x55, 0xd1, 0x50, 0x6a, 0x6c, 0x2c, 0xc5, 0xa4, 0xc6, 0xc6, 0xd2, 0xf8, 0x32, 0x8e, 0x2f, - 0x13, 0xb8, 0xa9, 0x56, 0x29, 0x37, 0xcf, 0x08, 0x0c, 0x51, 0xc3, 0x0b, 0xbe, 0xd0, 0x30, 0x35, - 0xb2, 0xe0, 0x0b, 0x8d, 0x50, 0x47, 0xb4, 0x53, 0x03, 0x0b, 0xbe, 0xd0, 0x51, 0x2a, 0xba, 0xe0, - 0x0b, 0x45, 0xa9, 0x63, 0x0b, 0xbe, 0xd0, 0x31, 0x6a, 0x74, 0xc1, 0x17, 0x1a, 0xa5, 0x8e, 0x2f, - 0xf8, 0x42, 0xc7, 0xa9, 0x13, 0x0b, 0xbe, 0x50, 0x9c, 0x3a, 0xbd, 0xe0, 0x0b, 0x5d, 0xa0, 0x2e, - 0x2e, 0x04, 0x42, 0xef, 0x07, 0xa9, 0x0f, 0x82, 0x0b, 0x81, 0xd0, 0x4f, 0x83, 0xd4, 0x47, 0xc1, - 0xc4, 0xdf, 0x05, 0xa0, 0x7f, 0xa6, 0xc1, 0x73, 0x0a, 0x6f, 0xa6, 0x80, 0xaf, 0x3b, 0xc7, 0x12, - 0xfa, 0x50, 0xa1, 0x04, 0xe7, 0xc7, 0x0e, 0x11, 0xa4, 0xe6, 0x18, 0x41, 0x86, 0x0e, 0x15, 0x40, - 0x7c, 0xfa, 0x71, 0x7e, 0x97, 0xd1, 0x63, 0xf8, 0x10, 0xc1, 0xa3, 0xe5, 0xed, 0x01, 0x7b, 0xf4, - 0x10, 0x81, 0xd2, 0xa2, 0x81, 0x45, 0xd8, 0x88, 0x5b, 0xcb, 0x6f, 0xdf, 0xba, 0x26, 0xaf, 0x0d, - 0xec, 0x34, 0x5f, 0x1b, 0x18, 0xa8, 0xb6, 0xd2, 0xb8, 0x89, 0x39, 0x47, 0x9e, 0x55, 0xc8, 0xb1, - 0x0e, 0xbc, 0x7b, 0xcc, 0xe1, 0x1c, 0x02, 0x40, 0xf4, 0xe0, 0xfe, 0x4f, 0x06, 0xde, 0x7a, 0xfb, - 0xfa, 0x67, 0x7e, 0xf8, 0x8a, 0xad, 0x8c, 0xf1, 0x54, 0x45, 0x47, 0x60, 0x18, 0xfa, 0x9b, 0x6f, - 0xa9, 0x13, 0xcb, 0xf6, 0xa4, 0xae, 0x65, 0x6f, 0x38, 0x78, 0xe2, 0x79, 0xfd, 0x74, 0xcf, 0xe0, - 0xae, 0x8a, 0x06, 0x53, 0xd3, 0x4c, 0x6a, 0x8a, 0x49, 0x8f, 0x31, 0xe9, 0x34, 0x93, 0x4e, 0x31, - 0xe9, 0x89, 0xb7, 0x3e, 0x46, 0x81, 0x97, 0x45, 0x49, 0xe4, 0x5f, 0x31, 0x7d, 0xf1, 0x28, 0x15, - 0x4d, 0x7c, 0x2f, 0x00, 0x03, 0x2c, 0x5f, 0xaf, 0x72, 0xa5, 0xff, 0x17, 0xae, 0x53, 0x79, 0xc6, - 0xae, 0xe3, 0xeb, 0xe4, 0x36, 0x95, 0x67, 0xec, 0x36, 0xa6, 0xa0, 0x4f, 0xfd, 0xe5, 0x13, 0xf5, - 0x97, 0x77, 0x68, 0x88, 0xcc, 0xf1, 0xca, 0x2f, 0xa3, 0xd2, 0x48, 0x59, 0x2a, 0x8d, 0x9f, 0x1e, - 0xb0, 0xf9, 0xf4, 0x80, 0xcd, 0xa7, 0xd5, 0xbc, 0x4f, 0xab, 0x79, 0xee, 0xaa, 0x79, 0xaf, 0x77, - 0x2c, 0x53, 0xdd, 0xdc, 0xbb, 0x4c, 0xd5, 0x0c, 0x66, 0x4e, 0x35, 0xaa, 0x5f, 0x9d, 0x7a, 0xd2, - 0x2f, 0x07, 0xd5, 0xa0, 0xe7, 0x8c, 0x6a, 0xd0, 0xf3, 0x43, 0x35, 0xe8, 0x79, 0xa1, 0x1a, 0xf4, - 0xa2, 0xa0, 0x1a, 0xf4, 0x9c, 0x51, 0x0d, 0xfa, 0x65, 0x24, 0xff, 0xfb, 0x03, 0x46, 0xce, 0xa7, - 0xdd, 0xde, 0xfa, 0x18, 0xb5, 0xdf, 0x3e, 0x2c, 0x88, 0xd2, 0xd2, 0xf7, 0x26, 0x94, 0x7a, 0xbd, - 0xfd, 0xe7, 0xae, 0x0b, 0x0a, 0xa7, 0x6c, 0xc8, 0xf4, 0x0a, 0x04, 0x37, 0xea, 0xc5, 0xb2, 0xf4, - 0x40, 0xd4, 0x71, 0xd5, 0xfe, 0x83, 0xf6, 0x9d, 0xfa, 0xac, 0xf4, 0x40, 0x64, 0x03, 0x1b, 0xe4, - 0x6f, 0x52, 0xd2, 0x7e, 0x9f, 0xd3, 0xf6, 0xf3, 0xad, 0xf4, 0x05, 0x38, 0x93, 0x5f, 0x9a, 0x59, - 0xbc, 0x33, 0x9b, 0x2b, 0xe6, 0x57, 0x8a, 0x99, 0xd9, 0x59, 0x36, 0x57, 0x28, 0xe4, 0x0a, 0xc5, - 0x5b, 0xec, 0xf2, 0xed, 0x22, 0x59, 0xbc, 0x57, 0x96, 0x97, 0x17, 0x0b, 0x54, 0x0f, 0xa6, 0xcc, - 0x7d, 0xd1, 0x05, 0x25, 0x22, 0x3f, 0xf6, 0xd0, 0x93, 0xfc, 0xa6, 0x07, 0x86, 0x9d, 0xb6, 0x18, - 0xe8, 0xd3, 0x70, 0x72, 0x29, 0xb7, 0xfa, 0xea, 0x32, 0xfb, 0xf9, 0x62, 0x7e, 0x69, 0x35, 0xc7, - 0xde, 0xca, 0xcc, 0xe4, 0x8a, 0xc6, 0x1d, 0x36, 0x77, 0x8b, 0xea, 0xa1, 0xe3, 0x70, 0xa2, 0x9d, - 0xa4, 0x90, 0x5f, 0xcd, 0x15, 0x17, 0x97, 0x67, 0x32, 0x8b, 0x14, 0xa2, 0xcf, 0xc3, 0x4b, 0xdd, - 0x28, 0x8a, 0xf9, 0xa5, 0x42, 0x7e, 0x36, 0x47, 0x79, 0xe8, 0x93, 0x70, 0xcc, 0x81, 0x70, 0x75, - 0x99, 0xcd, 0xcc, 0xe5, 0x28, 0xaf, 0xb3, 0xa4, 0xdb, 0x99, 0xa5, 0xcc, 0x5c, 0xee, 0x76, 0x6e, - 0x69, 0x95, 0xf2, 0xd1, 0x2f, 0xc1, 0x68, 0x3b, 0x45, 0x7e, 0xe5, 0x56, 0x26, 0xcb, 0xe6, 0x67, - 0x28, 0xff, 0xa8, 0xf7, 0xcd, 0x47, 0x88, 0x4e, 0x38, 0x4a, 0xc9, 0xcd, 0x11, 0x1e, 0x01, 0x42, - 0x93, 0xfc, 0xba, 0xa7, 0xfd, 0x97, 0xe6, 0xc9, 0x84, 0xc4, 0x9c, 0x24, 0xe4, 0x56, 0xe7, 0x73, - 0xec, 0x52, 0x6e, 0x95, 0xea, 0xa1, 0xcf, 0x40, 0xbc, 0xfd, 0x39, 0x46, 0x2d, 0xcd, 0xaf, 0x14, - 0x72, 0xa6, 0x5a, 0xcc, 0xcc, 0xac, 0x58, 0xa8, 0x3c, 0xf4, 0x39, 0x48, 0xb4, 0x53, 0xad, 0xde, - 0x59, 0x5a, 0xca, 0x2d, 0x5a, 0xe8, 0xbc, 0xf4, 0x25, 0x38, 0xe3, 0xc0, 0x6d, 0x79, 0x79, 0x25, - 0x9b, 0x99, 0xb1, 0xdc, 0xa2, 0x7c, 0xda, 0xf8, 0x1d, 0xd9, 0x2e, 0x66, 0x5e, 0xcb, 0xb1, 0x69, - 0x0b, 0xb1, 0x3f, 0xf9, 0x55, 0x87, 0x1f, 0xdb, 0x9f, 0x9f, 0x59, 0xa1, 0x13, 0x10, 0x6b, 0x6f, - 0x4f, 0x8c, 0x6a, 0x36, 0x5f, 0xc8, 0x64, 0x17, 0x73, 0x54, 0x8f, 0xb3, 0xdd, 0x10, 0x9a, 0xdc, - 0x12, 0x21, 0x41, 0x49, 0x05, 0x8e, 0x77, 0x41, 0x77, 0x74, 0x12, 0xce, 0x75, 0x98, 0xc8, 0xd5, - 0xcc, 0xdc, 0x5c, 0x7e, 0x69, 0xce, 0x22, 0xed, 0x22, 0x9c, 0xdd, 0x83, 0xd6, 0x94, 0xfa, 0x67, - 0xa8, 0x5d, 0xac, 0xf5, 0x97, 0xfd, 0xcf, 0xc2, 0xe9, 0x76, 0x56, 0x73, 0x99, 0xd5, 0xdc, 0xab, - 0x99, 0xd7, 0x2c, 0x12, 0x3f, 0x03, 0xe7, 0x3b, 0x93, 0x65, 0xee, 0xac, 0x2e, 0x17, 0x33, 0x8b, - 0xd8, 0xb8, 0x57, 0xb1, 0xb6, 0x19, 0xb8, 0xd0, 0x99, 0xf8, 0x4e, 0x21, 0x57, 0x9c, 0x59, 0x5e, - 0xba, 0x95, 0x9f, 0xbb, 0xc3, 0xe6, 0x66, 0x29, 0x4f, 0xf2, 0xf7, 0x11, 0x1c, 0xed, 0xf0, 0xdb, - 0xfd, 0x1d, 0xa6, 0x75, 0xa9, 0x60, 0xe9, 0x99, 0xa3, 0xb3, 0x61, 0x12, 0x7b, 0xaf, 0x2e, 0x38, - 0x59, 0x0d, 0x26, 0x6c, 0xeb, 0xd1, 0x5f, 0x20, 0x18, 0xed, 0x8c, 0xf3, 0x9d, 0x67, 0x9f, 0xe8, - 0xba, 0x90, 0x63, 0xef, 0xe6, 0x58, 0x4b, 0xe7, 0x9c, 0x65, 0x5a, 0x48, 0x0d, 0x3d, 0xd1, 0x29, - 0xb8, 0xe4, 0xe0, 0x67, 0x4b, 0xf3, 0x99, 0xa5, 0x99, 0xdc, 0xac, 0x53, 0x13, 0x4f, 0xf2, 0x8f, - 0x50, 0x7b, 0x88, 0xd6, 0x02, 0xab, 0xb3, 0xba, 0x32, 0xb3, 0xb7, 0xf3, 0x4b, 0xf9, 0xc2, 0x2a, - 0x9b, 0x59, 0xcd, 0xdf, 0xcd, 0x2d, 0xbe, 0x56, 0x9c, 0x5d, 0x7e, 0x75, 0xa9, 0xd3, 0x0c, 0x2e, - 0xaf, 0xe4, 0x30, 0xdd, 0xf2, 0x52, 0xc6, 0x20, 0x44, 0xce, 0xb6, 0xd2, 0x42, 0x78, 0x67, 0x85, - 0xf2, 0x64, 0xbf, 0x85, 0x76, 0x7e, 0x1c, 0xeb, 0x79, 0xf7, 0xc7, 0xb1, 0x9e, 0x8f, 0x7e, 0x1c, - 0x43, 0x6f, 0xee, 0xc6, 0xd0, 0xb7, 0x77, 0x63, 0xe8, 0x9d, 0xdd, 0x18, 0xda, 0xd9, 0x8d, 0xa1, - 0x77, 0x77, 0x63, 0xe8, 0x47, 0xbb, 0x31, 0xf4, 0xfe, 0x6e, 0xac, 0xe7, 0xa3, 0xdd, 0x18, 0xfa, - 0x83, 0xf7, 0x62, 0x3d, 0xdb, 0xef, 0xc5, 0xd0, 0xce, 0x7b, 0xb1, 0x9e, 0x77, 0xdf, 0x8b, 0xf5, - 0x7c, 0xe9, 0x4e, 0x45, 0xaa, 0xdf, 0xaf, 0x5c, 0xde, 0x94, 0xaa, 0x0a, 0xdf, 0x68, 0x70, 0x97, - 0x37, 0xe4, 0x2b, 0xe4, 0xc3, 0xba, 0xd4, 0xa8, 0x5d, 0xaa, 0x37, 0xa4, 0x4d, 0xa1, 0xcc, 0x37, - 0x2e, 0x19, 0x8f, 0xaf, 0xd4, 0xd7, 0x2a, 0xd2, 0x15, 0xfe, 0x0d, 0x45, 0xff, 0x27, 0x1a, 0x9d, - 0xfe, 0x33, 0xc9, 0x5a, 0x80, 0xfc, 0x4b, 0x8d, 0xf1, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xba, - 0x3c, 0x0c, 0xa5, 0xc3, 0x64, 0x00, 0x00, + // 6129 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x6c, 0x1b, 0xd9, + 0x79, 0xbf, 0x0e, 0xef, 0xfc, 0xa8, 0xcb, 0x68, 0x24, 0xd9, 0xb4, 0x6c, 0xd3, 0x34, 0xd7, 0x5e, + 0xcb, 0xda, 0xb1, 0x2d, 0x52, 0xb2, 0x2e, 0xde, 0x4b, 0x4c, 0x4a, 0xb4, 0x44, 0x45, 0x96, 0x94, + 0xa1, 0x6c, 0x67, 0x73, 0x23, 0x46, 0xe4, 0x88, 0x9e, 0x35, 0x39, 0xc3, 0x3f, 0x67, 0x24, 0xaf, + 0x81, 0xbf, 0xff, 0xff, 0xcd, 0xa2, 0x68, 0x51, 0xb7, 0x4d, 0x8b, 0x06, 0x45, 0x81, 0x45, 0xd1, + 0x3e, 0xb4, 0x40, 0x13, 0x37, 0x01, 0xfa, 0xd0, 0xa2, 0x45, 0x46, 0x0f, 0x8a, 0x81, 0x00, 0xdb, + 0x00, 0x01, 0xf4, 0xd6, 0x45, 0x1f, 0x8a, 0x44, 0xfb, 0xd0, 0xdd, 0x6d, 0xd3, 0x2c, 0x8a, 0x3e, + 0x04, 0x1b, 0xa0, 0x29, 0xce, 0x99, 0x0b, 0x87, 0xc3, 0x21, 0x35, 0x92, 0x1c, 0xaf, 0x9b, 0xee, + 0xcb, 0x88, 0x9c, 0xf9, 0xce, 0xf7, 0x9d, 0x73, 0xbe, 0xcb, 0xf9, 0x7d, 0xdf, 0x39, 0x43, 0xc1, + 0x4b, 0x5b, 0xbc, 0x7c, 0x59, 0x90, 0xae, 0xc8, 0xc5, 0xbb, 0x7c, 0x95, 0xbb, 0x22, 0xf2, 0xca, + 0x7d, 0xa9, 0x7e, 0xaf, 0x20, 0x88, 0x0a, 0x5f, 0xdf, 0xe0, 0x8a, 0xfc, 0x15, 0xe5, 0x41, 0x8d, + 0x97, 0x2f, 0xd7, 0xea, 0x92, 0x22, 0xd1, 0x67, 0x34, 0xe2, 0xcb, 0x1a, 0xf1, 0xe5, 0x16, 0xe2, + 0xe1, 0x4b, 0x65, 0x41, 0xb9, 0xbb, 0xb9, 0x7e, 0xb9, 0x28, 0x55, 0xaf, 0x94, 0xa5, 0xb2, 0x74, + 0x85, 0xb4, 0x5b, 0xdf, 0xdc, 0x20, 0xdf, 0xc8, 0x17, 0xf2, 0x49, 0xe3, 0x37, 0x7c, 0xa6, 0x2c, + 0x49, 0xe5, 0x0a, 0xdf, 0xa0, 0x52, 0x84, 0x2a, 0x2f, 0x2b, 0x5c, 0xb5, 0xa6, 0x13, 0x1c, 0x6f, + 0xe9, 0x9d, 0xfe, 0xe0, 0x64, 0xf3, 0x03, 0xa9, 0xa6, 0x08, 0x92, 0xa8, 0x77, 0x73, 0xf8, 0x74, + 0xf3, 0xc3, 0xda, 0x96, 0x52, 0xb0, 0x8c, 0x62, 0xf8, 0x44, 0xf3, 0x63, 0xeb, 0xa3, 0x53, 0xcd, + 0x8f, 0xb6, 0xb8, 0x8a, 0x50, 0xe2, 0x14, 0x5e, 0x7f, 0x1a, 0xb7, 0x3d, 0x15, 0xf8, 0xfb, 0x85, + 0x66, 0xc9, 0x67, 0x5a, 0x29, 0x64, 0xab, 0x80, 0xc4, 0x3f, 0x23, 0x18, 0x5c, 0xd6, 0xa6, 0x2d, + 0x67, 0xcc, 0xda, 0xdc, 0x8d, 0xf9, 0x3b, 0xb4, 0x08, 0x83, 0x25, 0x7e, 0x83, 0xdb, 0xac, 0x28, + 0x85, 0x32, 0xa7, 0xf0, 0xf7, 0xb9, 0x07, 0x85, 0xaa, 0x54, 0xe2, 0xa3, 0x28, 0x8e, 0x46, 0x7a, + 0x53, 0xaf, 0x5c, 0xde, 0x67, 0xe6, 0x2f, 0xdb, 0x99, 0xce, 0x6b, 0x4c, 0x6e, 0x4a, 0x25, 0x9e, + 0xa5, 0x75, 0xce, 0x96, 0x7b, 0xf4, 0x6d, 0x38, 0x6e, 0x97, 0xc7, 0x95, 0x4a, 0x75, 0x5e, 0x96, + 0xa3, 0x9e, 0x38, 0x1a, 0x89, 0xa4, 0x62, 0x36, 0x91, 0xb9, 0xda, 0xd6, 0x44, 0x5a, 0xa3, 0x58, + 0x7b, 0x50, 0xe3, 0xd9, 0xa1, 0x66, 0xa6, 0xfa, 0xa3, 0xc4, 0xb7, 0x11, 0x0c, 0xb4, 0x0c, 0x70, + 0x39, 0x4f, 0xe7, 0x21, 0x54, 0x12, 0x65, 0xeb, 0x98, 0xa6, 0x0f, 0x3c, 0xa6, 0xb9, 0xe5, 0x3c, + 0x19, 0x4f, 0xb0, 0x24, 0xca, 0x64, 0x10, 0xaf, 0x02, 0x60, 0xa6, 0x32, 0x5f, 0xdf, 0xe2, 0xeb, + 0x51, 0x4f, 0xdc, 0xeb, 0xa2, 0xdf, 0xe1, 0x92, 0x28, 0xe7, 0x49, 0x83, 0x84, 0x00, 0xc7, 0xec, + 0x22, 0xd6, 0x36, 0x45, 0x91, 0xaf, 0xd0, 0x39, 0x08, 0x28, 0xe4, 0x53, 0x14, 0x11, 0xa6, 0xa7, + 0x6c, 0x4c, 0x57, 0xd6, 0xdf, 0xe0, 0x8b, 0x0a, 0xcb, 0x6f, 0x60, 0x96, 0x99, 0x81, 0xc7, 0x0f, + 0x75, 0xf2, 0xef, 0x7d, 0xb8, 0xe3, 0xf5, 0xff, 0x21, 0xf2, 0x50, 0x88, 0xd5, 0xef, 0x2c, 0xfa, + 0x42, 0x1e, 0xca, 0x9b, 0xf8, 0x3a, 0x82, 0xee, 0xb9, 0x85, 0xd9, 0xd5, 0x55, 0x49, 0xaa, 0xe0, + 0x36, 0xf4, 0x08, 0x84, 0x64, 0x85, 0xab, 0x2b, 0x05, 0xa1, 0x46, 0xe6, 0x23, 0x9c, 0xe9, 0xf9, + 0xb9, 0x8a, 0xba, 0x30, 0x03, 0x5f, 0xdd, 0xf3, 0x26, 0x62, 0x83, 0xe4, 0x71, 0xae, 0x46, 0x9f, + 0x83, 0x00, 0x2f, 0x96, 0x30, 0x9d, 0xc7, 0x89, 0xce, 0xcf, 0x8b, 0xa5, 0x5c, 0x8d, 0x3e, 0x0b, + 0x41, 0xfe, 0xcd, 0x62, 0x65, 0xb3, 0xc4, 0x47, 0xbd, 0x71, 0x34, 0x12, 0xca, 0x04, 0xdf, 0x7b, + 0x88, 0x3e, 0x50, 0x11, 0x62, 0x8d, 0xfb, 0x89, 0xdf, 0x42, 0x40, 0xe1, 0x3e, 0xe4, 0x56, 0x6f, + 0x4f, 0x9a, 0xfd, 0xb8, 0xd8, 0xd2, 0x8f, 0x5e, 0x83, 0xbf, 0xbf, 0xee, 0x7d, 0x0b, 0x59, 0x3a, + 0x72, 0xde, 0xd6, 0x11, 0x3b, 0xa1, 0xfb, 0x9e, 0x7c, 0xd7, 0x0b, 0x03, 0x46, 0x4f, 0x74, 0x0d, + 0x90, 0xce, 0x4c, 0x41, 0xaf, 0x61, 0x05, 0xb5, 0x3a, 0xbf, 0x21, 0xbc, 0xe9, 0x24, 0xc9, 0x83, + 0x16, 0xba, 0xd8, 0x1e, 0x9d, 0x6e, 0x95, 0x90, 0xd1, 0xff, 0x1f, 0xa2, 0xcd, 0x0d, 0x0b, 0x5c, + 0xa5, 0x22, 0x15, 0x39, 0x45, 0xaa, 0x93, 0x4e, 0x44, 0x52, 0x09, 0x9b, 0x06, 0x89, 0x6b, 0xda, + 0xf4, 0x78, 0xe6, 0xf1, 0xc3, 0x7e, 0xdd, 0x09, 0x1a, 0xed, 0xdf, 0x7b, 0x88, 0x76, 0x54, 0x44, + 0x06, 0xb0, 0xd0, 0xc5, 0x1e, 0x6b, 0x92, 0x9b, 0x36, 0x88, 0xe8, 0xaf, 0x82, 0xbf, 0x26, 0x49, + 0x15, 0x39, 0xea, 0x23, 0xf6, 0x92, 0xdc, 0xd7, 0xb6, 0xed, 0x8a, 0xc8, 0x0c, 0x9a, 0xb6, 0x43, + 0x19, 0x9f, 0xa2, 0x88, 0xd5, 0xb8, 0x5e, 0xbb, 0xf9, 0x43, 0x15, 0xe5, 0x60, 0x1e, 0x02, 0x9a, + 0xdc, 0xd1, 0x57, 0xe1, 0x65, 0xa0, 0xec, 0x93, 0x05, 0x17, 0xda, 0xcf, 0x02, 0x1d, 0x19, 0x0e, + 0x9b, 0xbd, 0xcd, 0x8c, 0xc0, 0x90, 0x8d, 0xb0, 0x78, 0x57, 0x12, 0x8a, 0x3c, 0xdd, 0xb7, 0xa3, + 0x22, 0xcf, 0xae, 0x8a, 0xd0, 0x9e, 0x8a, 0xbc, 0x29, 0x66, 0x7c, 0xd1, 0x17, 0x42, 0x94, 0x27, + 0xf1, 0x8d, 0x30, 0xf4, 0xe1, 0x0e, 0x1f, 0x54, 0x57, 0x3f, 0x47, 0xcf, 0xa3, 0xae, 0x5e, 0x6f, + 0xd6, 0xd5, 0x25, 0x57, 0xba, 0x72, 0xa5, 0x27, 0xfa, 0x65, 0xe8, 0xd9, 0x10, 0xea, 0xb2, 0x62, + 0xc6, 0xd2, 0x00, 0x19, 0xd0, 0xa0, 0x4d, 0x44, 0xb6, 0x5a, 0x53, 0x1e, 0x2c, 0x20, 0xb6, 0x9b, + 0x10, 0xeb, 0xd1, 0x89, 0x9e, 0x81, 0xee, 0x0a, 0x67, 0x69, 0x1b, 0xec, 0xd8, 0x36, 0x82, 0x69, + 0x8d, 0xa6, 0x63, 0x10, 0x29, 0x95, 0xef, 0x9b, 0x2d, 0x43, 0x0e, 0x81, 0x62, 0x01, 0xb1, 0x50, + 0x2a, 0xdf, 0x37, 0x5a, 0x4c, 0x42, 0x44, 0xe6, 0xaa, 0x7c, 0x81, 0x93, 0x0b, 0xa5, 0xf2, 0xfd, + 0x28, 0x74, 0x90, 0xe5, 0x61, 0xc3, 0x98, 0x34, 0x2d, 0xcf, 0x95, 0xef, 0x13, 0x49, 0xa2, 0x6c, + 0x4a, 0x8a, 0x38, 0x49, 0xf2, 0xb0, 0x38, 0x2c, 0x1b, 0x92, 0x5e, 0x87, 0x1e, 0x3c, 0x39, 0x05, + 0x99, 0x57, 0x14, 0x41, 0x2c, 0xcb, 0xd1, 0x6e, 0x12, 0xfe, 0x27, 0x5c, 0x4f, 0x7b, 0x5e, 0x6b, + 0x48, 0xa2, 0x77, 0x77, 0xad, 0x71, 0x43, 0xbe, 0xf6, 0x9f, 0x9e, 0xff, 0x78, 0x0d, 0x92, 0x4c, + 0x32, 0xc5, 0x4c, 0x30, 0x57, 0x99, 0x99, 0x27, 0x2a, 0xfa, 0x0a, 0xf4, 0x6b, 0x81, 0x36, 0xae, + 0xdb, 0x2a, 0x8d, 0x92, 0x10, 0x87, 0x28, 0xb9, 0x85, 0x99, 0xc9, 0xf1, 0x59, 0x49, 0xdc, 0x10, + 0xca, 0x9b, 0x75, 0x0e, 0x2f, 0xdc, 0xb4, 0x0f, 0x37, 0x86, 0xf3, 0x10, 0x9b, 0xd3, 0x96, 0xb3, + 0xb8, 0xbe, 0x9e, 0xc5, 0x39, 0xb1, 0x14, 0x9f, 0x5b, 0xce, 0xc7, 0xb5, 0xb5, 0x82, 0xf6, 0x5e, + 0x65, 0x66, 0x7e, 0xa8, 0xa2, 0xb7, 0x3d, 0x4f, 0xcd, 0x0b, 0x81, 0x06, 0x3f, 0xe9, 0x51, 0x26, + 0xac, 0x1b, 0x24, 0xe5, 0x85, 0x75, 0xe8, 0xb3, 0x75, 0x64, 0x74, 0x05, 0x6e, 0x42, 0xcc, 0x66, + 0x57, 0xa9, 0x9e, 0x1b, 0xf8, 0x6b, 0x5c, 0x9f, 0x63, 0x38, 0xd5, 0x6c, 0x3a, 0xa9, 0xee, 0x25, + 0xce, 0xf2, 0xb4, 0xa7, 0xc9, 0x3a, 0xe0, 0x73, 0x00, 0x8d, 0x81, 0x8d, 0x26, 0xe1, 0x0a, 0xc4, + 0x9a, 0x8c, 0x21, 0x65, 0xef, 0x02, 0x61, 0xd0, 0x50, 0xba, 0xfb, 0xf0, 0x91, 0x79, 0x01, 0x7a, + 0x0d, 0x74, 0xa1, 0x93, 0xf4, 0xef, 0xa8, 0x28, 0xb0, 0xab, 0x22, 0xff, 0x9e, 0x8a, 0xfc, 0x93, + 0xcc, 0x14, 0x33, 0x9d, 0x39, 0xa3, 0xad, 0xe2, 0x16, 0x02, 0xd8, 0x55, 0x51, 0x18, 0x13, 0x24, + 0xc7, 0x98, 0x64, 0x52, 0x0b, 0x42, 0x8b, 0xbe, 0x90, 0x9f, 0x0a, 0x2c, 0xfa, 0x42, 0x61, 0x0a, + 0x12, 0xbf, 0xe1, 0xd3, 0x17, 0x10, 0xc3, 0x58, 0x72, 0xab, 0x24, 0x28, 0x7d, 0xdb, 0x0b, 0x94, + 0x69, 0x40, 0x05, 0xa1, 0x56, 0xa8, 0x72, 0x35, 0x7d, 0x09, 0x5f, 0x70, 0x17, 0x92, 0x9b, 0x19, + 0x5e, 0x6e, 0x7c, 0xaf, 0xdd, 0xe4, 0x6a, 0x59, 0x51, 0xa9, 0x3f, 0xc8, 0xfc, 0x8d, 0x07, 0x9b, + 0x7a, 0xf7, 0x3b, 0x28, 0x9c, 0x08, 0xd6, 0xfd, 0x14, 0x8a, 0xbe, 0x85, 0x48, 0x24, 0x78, 0x07, + 0x79, 0xa8, 0xeb, 0xf8, 0x53, 0xf8, 0x1d, 0x14, 0x18, 0x25, 0xae, 0xb0, 0xf7, 0xe3, 0x1f, 0x78, + 0x47, 0x1e, 0x6d, 0xa3, 0x73, 0x74, 0xe2, 0x9f, 0x54, 0x14, 0x83, 0x50, 0x95, 0x93, 0x15, 0xbe, + 0x7e, 0x69, 0xcc, 0xfc, 0x94, 0x34, 0x3f, 0xa5, 0x30, 0x71, 0xf6, 0xd1, 0x36, 0x4a, 0xd3, 0x9f, + 0xfb, 0x48, 0x45, 0x2f, 0x2f, 0x4b, 0x25, 0x3e, 0xbe, 0x21, 0xd5, 0xe3, 0x66, 0x0f, 0xe3, 0x72, + 0x8d, 0x2f, 0x0a, 0x1b, 0x02, 0x5f, 0x8a, 0x73, 0x72, 0x5c, 0x16, 0x14, 0xfe, 0x9a, 0x28, 0x95, + 0x78, 0x86, 0x7c, 0x8c, 0x0b, 0x72, 0x5c, 0x03, 0xa3, 0x5c, 0x05, 0x73, 0xea, 0x7d, 0xb4, 0x8d, + 0x80, 0x0e, 0xed, 0xa9, 0xc8, 0x87, 0x39, 0xe1, 0x5b, 0xf0, 0x68, 0x1b, 0x05, 0x68, 0xdf, 0xbb, + 0x2a, 0xea, 0xc2, 0x5f, 0x03, 0x8f, 0xb6, 0x91, 0x27, 0x44, 0xfa, 0x38, 0xfd, 0x68, 0x1b, 0x4d, + 0x0c, 0xa7, 0x3e, 0x52, 0xd1, 0xe5, 0xdc, 0xea, 0xd6, 0x44, 0x5c, 0xd7, 0x34, 0x11, 0xaf, 0xdc, + 0xe5, 0x2d, 0x5d, 0x90, 0xc4, 0x38, 0x17, 0x2f, 0x0b, 0x5b, 0xbc, 0x18, 0x17, 0x75, 0xb6, 0xc7, + 0x1e, 0x6d, 0x23, 0x7a, 0x98, 0xda, 0x53, 0x51, 0x37, 0x69, 0xac, 0x9b, 0x9d, 0x29, 0x71, 0x98, + 0x48, 0x64, 0x7b, 0x85, 0xa6, 0xb9, 0x1c, 0x4e, 0xc3, 0x80, 0xc3, 0xec, 0xd2, 0x14, 0x78, 0xef, + 0xf1, 0x0f, 0x34, 0x2c, 0xc2, 0xe2, 0x8f, 0xf4, 0x20, 0xf8, 0xb7, 0xb8, 0xca, 0x26, 0xaf, 0x2d, + 0x30, 0xac, 0xf6, 0xe5, 0x9a, 0x67, 0x1a, 0x25, 0x7e, 0xdb, 0x07, 0x43, 0x36, 0xad, 0xdd, 0x9e, + 0x24, 0x86, 0xf0, 0x9d, 0xf6, 0x86, 0xb0, 0x78, 0x50, 0x43, 0xd0, 0x58, 0x3a, 0x9a, 0xc2, 0xdf, + 0xee, 0x67, 0x0a, 0xf0, 0x0e, 0x0a, 0x8e, 0x6a, 0xf8, 0xe8, 0x7f, 0xa6, 0x2d, 0x4c, 0x1e, 0xc5, + 0x16, 0x26, 0x9f, 0xa1, 0x2d, 0xfc, 0x71, 0x48, 0x8b, 0xf2, 0x5a, 0x58, 0x5b, 0xe5, 0xea, 0x5c, + 0x95, 0x57, 0xf8, 0x3a, 0x01, 0xfd, 0xf4, 0x26, 0xf4, 0x94, 0xee, 0x16, 0x6b, 0x05, 0x5d, 0xd7, + 0xb2, 0x6e, 0x0a, 0x63, 0xae, 0x4c, 0xc1, 0x82, 0x7a, 0x32, 0xb1, 0x06, 0xc2, 0x37, 0x3e, 0x85, + 0x90, 0x05, 0x07, 0x74, 0x63, 0x31, 0x7a, 0x03, 0x99, 0x5e, 0x80, 0x41, 0x6e, 0x53, 0x91, 0xaa, + 0x9c, 0x22, 0x14, 0x0b, 0x1b, 0x75, 0xa9, 0x5a, 0x20, 0x58, 0x5a, 0x87, 0x39, 0xce, 0xab, 0x6d, + 0x17, 0x4b, 0x9b, 0x6d, 0x6e, 0xd4, 0xa5, 0x6a, 0x1e, 0xb7, 0xa0, 0xe7, 0x80, 0xb6, 0x71, 0xe2, + 0xc5, 0x52, 0xd4, 0xd7, 0x91, 0x0f, 0xd5, 0xc4, 0x27, 0x2b, 0x96, 0xe8, 0x0d, 0x07, 0xa7, 0xf0, + 0x13, 0x1e, 0x13, 0x87, 0x89, 0x8e, 0x19, 0xdf, 0x8e, 0x86, 0xb4, 0x6c, 0xea, 0xa4, 0x3f, 0xf0, + 0x40, 0xf7, 0x86, 0xf0, 0x26, 0x5f, 0x32, 0x84, 0x04, 0xc8, 0x74, 0xe7, 0x5c, 0x09, 0x71, 0x52, + 0xe0, 0xe5, 0x1b, 0x98, 0x9b, 0xc5, 0xf1, 0x3e, 0x41, 0x86, 0x77, 0x25, 0xfc, 0x75, 0xef, 0xdf, + 0x23, 0xf2, 0x35, 0xf0, 0x0e, 0xf2, 0x52, 0x0d, 0x0f, 0x1c, 0x43, 0x6d, 0x83, 0xf1, 0x47, 0x2a, + 0x8a, 0xdd, 0x4c, 0xcf, 0x1a, 0xe6, 0x19, 0x97, 0x36, 0x88, 0x69, 0x13, 0x94, 0x50, 0xac, 0x08, + 0xbc, 0xa8, 0x60, 0xe2, 0xa1, 0x47, 0xdb, 0xa8, 0x9f, 0xee, 0xdb, 0x53, 0x51, 0xc4, 0x42, 0x7c, + 0xb0, 0x48, 0x6a, 0x48, 0x50, 0xa4, 0xf8, 0x3a, 0x1f, 0xe7, 0x64, 0x59, 0x28, 0x8b, 0x7c, 0x09, + 0x7f, 0x75, 0x10, 0xe8, 0x32, 0x92, 0xc2, 0x86, 0x39, 0x1b, 0xf4, 0x75, 0xe8, 0x27, 0x96, 0xad, + 0xb9, 0xfb, 0x74, 0xaa, 0xa0, 0x70, 0x65, 0x82, 0x1c, 0xc3, 0x99, 0x41, 0x0b, 0x1c, 0xd6, 0xc1, + 0x59, 0xf4, 0x3a, 0xdb, 0x87, 0xc9, 0x57, 0x74, 0xea, 0x35, 0xae, 0x3c, 0xfc, 0x2a, 0xf4, 0xd9, + 0x66, 0xf7, 0x20, 0x7e, 0x77, 0xad, 0xfc, 0x44, 0x45, 0x45, 0x48, 0xc0, 0x69, 0x2b, 0xea, 0x92, + 0x19, 0x0d, 0x6c, 0x31, 0x06, 0x84, 0xc0, 0x30, 0xec, 0x18, 0xf4, 0x9b, 0x06, 0x64, 0x0c, 0x8d, + 0x46, 0x29, 0x38, 0x0f, 0x71, 0xd2, 0x81, 0x78, 0x6e, 0x35, 0x9e, 0x26, 0x13, 0x54, 0xe5, 0x45, + 0x45, 0x0b, 0x38, 0xb3, 0x64, 0x6e, 0x64, 0x1a, 0x4d, 0x66, 0x92, 0x70, 0xca, 0x34, 0x14, 0x13, + 0x8b, 0x08, 0x62, 0xd9, 0x0a, 0x1c, 0xbc, 0xbb, 0x2a, 0xf2, 0x60, 0xe0, 0x30, 0x8e, 0x11, 0xa1, + 0x9e, 0x7b, 0x7f, 0x1f, 0x01, 0x8d, 0xa3, 0x78, 0x7a, 0x53, 0x91, 0x34, 0xf0, 0x47, 0x62, 0xc2, + 0x28, 0xf8, 0xee, 0x4a, 0xb2, 0xa2, 0x97, 0x3b, 0xda, 0x39, 0x11, 0xa1, 0xa1, 0xf3, 0x10, 0xa8, + 0x4b, 0x9b, 0x0a, 0x6f, 0x64, 0x28, 0x33, 0xfb, 0x5a, 0x72, 0xb3, 0x40, 0x96, 0x34, 0xc6, 0x62, + 0x17, 0xba, 0x58, 0x9d, 0x55, 0xe6, 0x1c, 0xf4, 0x63, 0x0f, 0x2d, 0x12, 0x8a, 0x7d, 0x32, 0xb0, + 0x3f, 0xf5, 0x40, 0xb4, 0x1d, 0x4b, 0x7a, 0xbc, 0x4d, 0x2a, 0x06, 0x9d, 0x52, 0xe6, 0x5b, 0x24, + 0xf1, 0x57, 0xf8, 0x8d, 0xcd, 0x8a, 0x3e, 0xa8, 0x29, 0xd7, 0x49, 0x6b, 0x5e, 0x6f, 0xa8, 0xb9, + 0xea, 0x42, 0x17, 0x6b, 0xb2, 0xa2, 0x6f, 0xea, 0x60, 0x8e, 0xf4, 0x51, 0x0f, 0x50, 0x97, 0x5d, + 0xcd, 0xd6, 0x9c, 0x28, 0xeb, 0x23, 0x0b, 0x97, 0x8c, 0x8f, 0x99, 0xb3, 0xd0, 0x6b, 0x64, 0x79, + 0x9d, 0x27, 0x88, 0x85, 0x88, 0xce, 0x64, 0x49, 0x90, 0x15, 0x7a, 0x56, 0x2b, 0x37, 0x55, 0x04, + 0x59, 0x21, 0xb1, 0x3e, 0x9c, 0x19, 0x31, 0x23, 0xb7, 0xcf, 0x29, 0x72, 0x5b, 0x0b, 0x1e, 0x25, + 0x8d, 0x49, 0xe2, 0x17, 0x08, 0x06, 0x30, 0xd3, 0x25, 0xa9, 0xc8, 0x55, 0xe6, 0x1a, 0x19, 0x4d, + 0x4b, 0x96, 0xd7, 0x39, 0x9e, 0x77, 0xce, 0xf2, 0x3a, 0xc7, 0xf0, 0xa6, 0x2c, 0xef, 0x73, 0x40, + 0x17, 0xf5, 0xe4, 0x85, 0x2f, 0x99, 0x0c, 0xfc, 0x4e, 0xc5, 0x98, 0x85, 0x2e, 0xb6, 0xbf, 0x41, + 0xab, 0x33, 0xc8, 0x9c, 0x07, 0x0a, 0x27, 0x1f, 0x95, 0x82, 0x0d, 0x6f, 0x7b, 0xf5, 0xf9, 0x34, + 0xdd, 0x06, 0xcf, 0xe8, 0x1e, 0x82, 0x9e, 0x26, 0xbd, 0xd0, 0x79, 0x08, 0x9b, 0xcd, 0x75, 0xb7, + 0x99, 0x70, 0xa5, 0x5a, 0xdb, 0x04, 0x62, 0x83, 0xa9, 0xe8, 0xb7, 0xe8, 0x3b, 0xd0, 0x67, 0x19, + 0x14, 0x51, 0x98, 0x36, 0x9d, 0x8c, 0x5b, 0xab, 0xc1, 0xba, 0xc2, 0x8b, 0x50, 0x83, 0x0d, 0xbe, + 0x93, 0x39, 0xdd, 0x94, 0x56, 0xb4, 0x31, 0x9b, 0x9f, 0x05, 0xe0, 0x98, 0xb3, 0x55, 0xd3, 0x0f, + 0x9c, 0x31, 0xc3, 0x84, 0x6b, 0x2f, 0xf9, 0xf5, 0xc1, 0x0d, 0x77, 0xdb, 0xe2, 0x86, 0xc9, 0xc3, + 0x81, 0xe9, 0xb6, 0xc8, 0xe1, 0x5f, 0x9c, 0x91, 0xc3, 0xfc, 0x21, 0x43, 0x53, 0x0b, 0x6e, 0xf8, + 0x85, 0x6b, 0xdc, 0xe0, 0x8c, 0xdc, 0x9f, 0x15, 0x70, 0x98, 0x3c, 0x0a, 0x70, 0x98, 0x74, 0x01, + 0x1c, 0x8e, 0xb8, 0xec, 0x1f, 0x7e, 0x35, 0xfe, 0x2b, 0x04, 0xc3, 0x58, 0x49, 0x42, 0x31, 0x57, + 0x6b, 0x80, 0x3c, 0x9c, 0x96, 0x90, 0xb5, 0xec, 0x12, 0x80, 0x50, 0x33, 0x63, 0x5b, 0x6b, 0x45, + 0xfa, 0x5b, 0x08, 0xb1, 0x61, 0xa1, 0x66, 0x84, 0x44, 0x06, 0xc0, 0xdc, 0xc6, 0xb8, 0xef, 0x50, + 0x20, 0xaf, 0x21, 0x36, 0x6c, 0x6c, 0x54, 0xdc, 0xa7, 0xc7, 0x9a, 0xf6, 0x0b, 0xbc, 0x84, 0xba, + 0x1f, 0xc3, 0x23, 0x7b, 0x0b, 0x73, 0x8b, 0xe0, 0x1f, 0x7c, 0x70, 0xba, 0xb5, 0xb7, 0xb3, 0x95, + 0x4d, 0xd9, 0x58, 0x7c, 0xff, 0xb2, 0x7d, 0xa6, 0xc9, 0xee, 0x6b, 0xb5, 0x1d, 0x59, 0x3b, 0x66, + 0x9c, 0xdf, 0x72, 0xce, 0x38, 0x75, 0x13, 0x7e, 0xbe, 0x72, 0x4c, 0x8b, 0x75, 0x5f, 0x7f, 0xb4, + 0x8d, 0x5e, 0x19, 0xbe, 0xf6, 0x91, 0x8a, 0x26, 0xb5, 0x31, 0x63, 0xb0, 0x57, 0x33, 0x47, 0xed, + 0x90, 0x5c, 0x72, 0x38, 0xbd, 0x6c, 0x4e, 0x2e, 0x63, 0x8f, 0xb6, 0xd1, 0xf0, 0x70, 0x74, 0x4f, + 0x45, 0x83, 0x0d, 0x26, 0x8d, 0xa9, 0xb3, 0x58, 0x3b, 0x8e, 0x2e, 0x2d, 0x49, 0xe6, 0xff, 0x73, + 0x9b, 0x64, 0x7e, 0xc1, 0x6a, 0xf5, 0x91, 0xd4, 0xcb, 0x87, 0x50, 0xa3, 0x61, 0xcf, 0xd6, 0x0c, + 0xf5, 0xa7, 0x08, 0x4e, 0xb6, 0x52, 0xde, 0xa8, 0xf0, 0xbc, 0x42, 0x2c, 0xa9, 0xde, 0xa1, 0x30, + 0x8e, 0x5c, 0x17, 0xc6, 0x07, 0x9d, 0x0a, 0xe3, 0x6d, 0x6b, 0xe1, 0x07, 0xf3, 0x1f, 0xc6, 0xc1, + 0x7f, 0x7a, 0xda, 0xfa, 0xce, 0x9f, 0x78, 0xe1, 0x98, 0x3e, 0xde, 0x55, 0x5b, 0x3e, 0x5e, 0x84, + 0x5e, 0xac, 0x54, 0xbc, 0xac, 0xe1, 0x85, 0x49, 0xdf, 0x52, 0x3a, 0xda, 0x54, 0x63, 0xa4, 0x85, + 0x99, 0x1a, 0x14, 0xf4, 0x16, 0xf4, 0x17, 0x35, 0x6f, 0xb2, 0xc8, 0xd1, 0x96, 0xd0, 0xd7, 0x8e, + 0xe6, 0x99, 0x99, 0x10, 0x36, 0xb0, 0x5d, 0x6d, 0x09, 0xeb, 0xd3, 0x85, 0x98, 0x72, 0x65, 0xe8, + 0xdb, 0xc0, 0x4a, 0xb5, 0x48, 0xd5, 0x16, 0xdc, 0x57, 0x0e, 0x21, 0xd5, 0x34, 0x8f, 0x4c, 0xa4, + 0x79, 0x77, 0xa3, 0x87, 0xc8, 0x30, 0x1a, 0x64, 0x46, 0xdb, 0xd5, 0x64, 0xfb, 0x2d, 0xc0, 0xc7, + 0x9f, 0x62, 0xc6, 0x99, 0x09, 0x1d, 0xfa, 0x7c, 0x07, 0x43, 0x1f, 0xbe, 0x24, 0x14, 0x39, 0x85, + 0x2f, 0x35, 0x36, 0x40, 0xb1, 0x7a, 0x58, 0x08, 0x94, 0xf8, 0x2d, 0xa1, 0xc8, 0xeb, 0x01, 0xf8, + 0xda, 0x9e, 0x8a, 0x2e, 0x80, 0x8f, 0x57, 0xee, 0x8e, 0x91, 0x6b, 0x92, 0x5c, 0x67, 0xc0, 0x8f, + 0x3f, 0x8f, 0x81, 0xff, 0x7e, 0x85, 0x13, 0xf1, 0x9f, 0xfb, 0x9c, 0x38, 0x66, 0x98, 0x43, 0xa0, + 0xee, 0xa3, 0x50, 0xf4, 0x3a, 0xab, 0x73, 0xa2, 0xc7, 0x20, 0xa8, 0x4f, 0xd4, 0x3e, 0x30, 0xc6, + 0x20, 0xa3, 0xe7, 0xc1, 0x87, 0xf5, 0x49, 0x26, 0x2f, 0x9c, 0x49, 0xee, 0xed, 0x1b, 0xd0, 0x6c, + 0xa2, 0x71, 0xf6, 0x86, 0x19, 0xd0, 0xa3, 0xe0, 0xad, 0x2a, 0x9b, 0x64, 0x57, 0xa4, 0x27, 0x13, + 0xdd, 0xd1, 0xd3, 0xe1, 0xbe, 0xd1, 0x9e, 0x4c, 0x64, 0x8c, 0xb9, 0x9a, 0x4c, 0x5d, 0x4a, 0x4e, + 0x8e, 0x4f, 0x4f, 0xb0, 0x98, 0x88, 0x1e, 0x85, 0x50, 0xad, 0x2e, 0x48, 0x75, 0x41, 0x79, 0x10, + 0x0d, 0x93, 0x06, 0xbd, 0x46, 0x03, 0xff, 0xa8, 0x37, 0xfa, 0x4b, 0xc4, 0x9a, 0xcf, 0xe9, 0x29, + 0x88, 0x88, 0x92, 0x52, 0xa8, 0xd5, 0x85, 0x2a, 0x57, 0x7f, 0x40, 0xf6, 0x42, 0xda, 0xef, 0xd7, + 0x80, 0x28, 0x29, 0xab, 0x1a, 0x25, 0x7d, 0x15, 0x40, 0x90, 0xcd, 0x76, 0xdd, 0x1d, 0xdb, 0x85, + 0x05, 0xd9, 0x68, 0x36, 0x0f, 0x54, 0x55, 0x12, 0x05, 0x45, 0xaa, 0x17, 0x4a, 0x82, 0xcc, 0xad, + 0x57, 0xf8, 0x52, 0xb4, 0xb7, 0x7d, 0x63, 0x1d, 0x64, 0x79, 0xd8, 0x3e, 0xbd, 0xd5, 0x9c, 0xde, + 0x88, 0xfe, 0x32, 0x04, 0xf5, 0x5b, 0xd1, 0x3e, 0x97, 0xf9, 0xec, 0x92, 0x20, 0xde, 0xfb, 0xc2, + 0x26, 0x57, 0x11, 0x94, 0x07, 0x37, 0xb5, 0xa6, 0x7a, 0x86, 0x66, 0x08, 0x31, 0x38, 0x5e, 0xbb, + 0xfe, 0x44, 0x45, 0xaf, 0xc0, 0x30, 0x0c, 0x98, 0xc6, 0x15, 0x37, 0xad, 0x8b, 0xf6, 0x26, 0x99, + 0x14, 0xc4, 0x60, 0x70, 0x56, 0xaa, 0x56, 0x25, 0xd1, 0xb6, 0x17, 0x13, 0x98, 0x66, 0x66, 0x98, + 0xe4, 0x78, 0x26, 0x86, 0xe7, 0xb5, 0xc4, 0x5b, 0xa1, 0xbb, 0x01, 0x25, 0xbc, 0xe3, 0xcc, 0x44, + 0xe6, 0x05, 0xe8, 0xd5, 0xe7, 0xce, 0x6a, 0xe4, 0x91, 0x5d, 0x15, 0x01, 0xd9, 0x34, 0x48, 0x32, + 0xc9, 0x54, 0x66, 0x14, 0xfa, 0xf5, 0x1e, 0x59, 0x50, 0xc9, 0xd0, 0x8e, 0x8a, 0x7a, 0xdf, 0xd5, + 0x7c, 0xb7, 0x87, 0xd0, 0x4e, 0x30, 0x49, 0x1d, 0x99, 0x98, 0x1b, 0x0c, 0x01, 0x2a, 0xb8, 0xe8, + 0x0b, 0x05, 0xa9, 0xd0, 0xa2, 0x2f, 0x04, 0x54, 0x64, 0xd1, 0x17, 0xea, 0xa1, 0x7a, 0x13, 0xff, + 0xe8, 0x81, 0xb8, 0x39, 0xa2, 0x9b, 0x9c, 0xc8, 0x95, 0xf9, 0x2a, 0x2f, 0x2a, 0xcd, 0x8e, 0x33, + 0x65, 0x73, 0x9c, 0x33, 0x18, 0x91, 0x59, 0x1d, 0xe7, 0xf9, 0xf5, 0x0e, 0xbf, 0x0b, 0xef, 0xb8, + 0x76, 0xe9, 0x89, 0x8a, 0x2e, 0xc2, 0x05, 0x88, 0x35, 0x74, 0xdb, 0x98, 0x0a, 0x8b, 0x9a, 0xfd, + 0x49, 0x26, 0xc5, 0x5c, 0xdd, 0x4f, 0x91, 0x3a, 0x22, 0xfc, 0x11, 0x0d, 0x43, 0x59, 0xe5, 0x2e, + 0x5f, 0x17, 0xf9, 0xfd, 0xa6, 0x93, 0x8c, 0x61, 0x1b, 0x75, 0x87, 0x3c, 0x63, 0xe8, 0x5a, 0x40, + 0x4b, 0xf8, 0x9e, 0xb3, 0xe9, 0x4c, 0x41, 0x68, 0x53, 0x54, 0xb8, 0x72, 0x99, 0x2f, 0xed, 0xb3, + 0xfb, 0x6b, 0xd2, 0xd1, 0x17, 0x20, 0xb8, 0x55, 0xe1, 0xc4, 0x82, 0x50, 0x22, 0xa5, 0xbb, 0x9e, + 0x4c, 0x37, 0xe6, 0x1c, 0x1c, 0xf5, 0x47, 0x7f, 0x79, 0x66, 0x04, 0x2d, 0x20, 0x36, 0x80, 0x1f, + 0xe7, 0x4a, 0x38, 0xe2, 0x90, 0x9c, 0x54, 0x43, 0xfe, 0x24, 0x40, 0xb5, 0xdf, 0xb5, 0x05, 0x4c, + 0xaa, 0x15, 0xd0, 0xe8, 0x75, 0xbd, 0xa1, 0xbe, 0x74, 0x83, 0x4b, 0xaf, 0x6f, 0x57, 0x8f, 0xcd, + 0xf8, 0x76, 0x35, 0xaf, 0x27, 0x32, 0xf4, 0x84, 0xf9, 0x36, 0x84, 0x1b, 0x2b, 0x5e, 0xc4, 0x65, + 0x49, 0xc9, 0x19, 0x20, 0x2c, 0x78, 0xb4, 0x92, 0x12, 0x59, 0x4f, 0x5f, 0x83, 0x3e, 0x51, 0x2a, + 0x08, 0xb5, 0xad, 0x49, 0x33, 0x2f, 0x38, 0xd3, 0x61, 0xe0, 0x5e, 0xb6, 0x47, 0x94, 0x72, 0xb5, + 0xad, 0x49, 0x23, 0x47, 0x10, 0x60, 0xc0, 0xec, 0x97, 0x85, 0x47, 0xfc, 0x68, 0x3d, 0xf4, 0xb2, + 0xfd, 0x46, 0x0f, 0x1b, 0xa2, 0x7e, 0x17, 0x01, 0xa5, 0x09, 0xd9, 0x54, 0x24, 0xa3, 0x08, 0x76, + 0x96, 0x08, 0x1a, 0x3f, 0x60, 0xc9, 0x90, 0x4c, 0xf3, 0x4b, 0x1f, 0x3d, 0x1c, 0x29, 0xf1, 0x55, + 0x29, 0xc9, 0x28, 0xbc, 0xac, 0x30, 0xc5, 0xba, 0xc2, 0xc8, 0x0a, 0x57, 0x16, 0xc4, 0x32, 0x23, + 0x4b, 0x1b, 0xca, 0x3a, 0x27, 0xde, 0x2b, 0x54, 0xf9, 0x22, 0x53, 0xab, 0x4b, 0xa5, 0x05, 0x2f, + 0xdb, 0x8b, 0x65, 0x37, 0x58, 0xe0, 0xec, 0x1f, 0x43, 0xf5, 0x82, 0x56, 0xb5, 0xd1, 0x25, 0x46, + 0x7b, 0x3a, 0x4c, 0x9e, 0x8f, 0xa5, 0x70, 0x0b, 0x52, 0xb0, 0x31, 0x76, 0xd0, 0xcb, 0x70, 0xc2, + 0xc2, 0x45, 0x10, 0x65, 0xa1, 0xc4, 0x9b, 0xcc, 0x3a, 0xad, 0x3f, 0x83, 0x8f, 0xb7, 0x11, 0x05, + 0xbd, 0x5b, 0x52, 0x45, 0x91, 0x15, 0xae, 0x78, 0xaf, 0x80, 0xd9, 0x2c, 0xf8, 0xd8, 0x63, 0xa6, + 0x88, 0x1c, 0x61, 0x66, 0x08, 0xda, 0x80, 0x5e, 0x1b, 0xf7, 0x3e, 0xd7, 0xb0, 0xf7, 0xc4, 0xe3, + 0x87, 0x7d, 0x5b, 0x42, 0x5d, 0xd9, 0x6c, 0x0c, 0x54, 0x3f, 0x76, 0xb4, 0xe0, 0x63, 0x7b, 0x84, + 0x26, 0x39, 0x5f, 0x82, 0x3e, 0x59, 0x91, 0xea, 0x5c, 0xb9, 0x21, 0x68, 0xa8, 0xc3, 0x30, 0x4e, + 0xe0, 0x98, 0xf8, 0x78, 0x1b, 0xf5, 0x43, 0x9f, 0xcc, 0x17, 0x37, 0xeb, 0x7c, 0x95, 0x97, 0xef, + 0x1a, 0x63, 0xe9, 0xd5, 0x39, 0x19, 0xbc, 0xd7, 0xa1, 0x5b, 0xae, 0x6f, 0x4d, 0x9a, 0x8c, 0x4f, + 0x3c, 0x9d, 0x11, 0x44, 0x30, 0x53, 0x43, 0xc6, 0xe7, 0xa1, 0x5f, 0xa8, 0x15, 0x36, 0xb8, 0xf5, + 0xba, 0x50, 0x34, 0x05, 0x0d, 0x77, 0x18, 0x41, 0xb0, 0xc1, 0xa8, 0x4f, 0xa8, 0xdd, 0x20, 0x0d, + 0x0d, 0x66, 0xbf, 0x89, 0xf0, 0xb0, 0xca, 0x38, 0x80, 0x9b, 0xbc, 0x4e, 0xba, 0xee, 0xf4, 0xd4, + 0xe3, 0x87, 0x41, 0xbd, 0xf5, 0xe3, 0x6d, 0x74, 0x7c, 0xb4, 0xdb, 0x6a, 0x96, 0xa3, 0xc1, 0x0d, + 0xbe, 0x54, 0xe7, 0xaa, 0xb5, 0xef, 0x6d, 0xa3, 0xde, 0x10, 0x1a, 0x41, 0x8d, 0xa0, 0x4d, 0x66, + 0x4e, 0x6b, 0x67, 0x74, 0x44, 0x5f, 0x87, 0xa8, 0x83, 0xa2, 0xb4, 0xfe, 0x83, 0xa1, 0xb4, 0x81, + 0x0e, 0xd6, 0xef, 0xef, 0x80, 0xd2, 0x06, 0x3b, 0xb6, 0xdb, 0x07, 0xa5, 0x1d, 0xdf, 0x17, 0xa5, + 0x05, 0x3a, 0xa2, 0xb4, 0xe8, 0xd3, 0x41, 0x69, 0x81, 0x06, 0x4a, 0x93, 0x9f, 0xa8, 0x48, 0x82, + 0xd3, 0x40, 0x1b, 0x2b, 0xaf, 0x65, 0xf5, 0x0e, 0x26, 0x99, 0x78, 0x8a, 0x89, 0x5f, 0x85, 0x21, + 0xa0, 0x72, 0xab, 0x36, 0x90, 0x86, 0xa6, 0x61, 0x08, 0xfa, 0x6e, 0x6b, 0x86, 0x6a, 0x9e, 0xb2, + 0xf1, 0x24, 0x53, 0x10, 0x6f, 0x03, 0xeb, 0x42, 0xc9, 0x49, 0x26, 0x39, 0xc5, 0xa4, 0x52, 0xfb, + 0x02, 0xbb, 0x18, 0x44, 0xc8, 0x3a, 0x68, 0x79, 0x6e, 0x9c, 0x15, 0xf1, 0x4e, 0x32, 0x53, 0x99, + 0xf3, 0x2d, 0xbb, 0x01, 0x03, 0x3b, 0x2a, 0x0a, 0xef, 0xaa, 0x28, 0xb4, 0xa7, 0xa2, 0xe0, 0x0c, + 0x43, 0xce, 0x8b, 0x64, 0xee, 0xc0, 0x80, 0x35, 0xd2, 0x1b, 0xb4, 0xd7, 0x77, 0x54, 0x74, 0x66, + 0x57, 0x45, 0xb1, 0x3d, 0x15, 0x85, 0xc6, 0x93, 0xcc, 0x78, 0x8a, 0x19, 0x1f, 0x7f, 0xf4, 0x09, + 0x72, 0x1d, 0x61, 0x33, 0x17, 0x1b, 0x1b, 0x2d, 0x3a, 0xcf, 0xe3, 0x3b, 0x2a, 0xea, 0xd9, 0x55, + 0x51, 0xf7, 0x9e, 0x8a, 0x22, 0xc9, 0x71, 0x26, 0x39, 0xc1, 0xa4, 0xa6, 0x98, 0x54, 0xb2, 0x0d, + 0x46, 0x1d, 0xd8, 0x55, 0x11, 0x4d, 0x70, 0xe7, 0x0c, 0x93, 0x1a, 0x6b, 0x8f, 0x51, 0x8f, 0xeb, + 0x18, 0xf5, 0x18, 0x49, 0xda, 0xc6, 0x99, 0xd4, 0x84, 0x0d, 0xa3, 0x86, 0xa8, 0xf0, 0xa2, 0x2f, + 0x14, 0xa3, 0xce, 0x2c, 0xfa, 0x42, 0xdd, 0x54, 0xcf, 0xa2, 0x2f, 0x44, 0x53, 0x03, 0x8b, 0xbe, + 0xd0, 0x31, 0xea, 0x78, 0xe2, 0x07, 0x01, 0x18, 0xd0, 0xce, 0xb1, 0x36, 0xa3, 0xa9, 0xc9, 0x06, + 0x28, 0xf2, 0x74, 0xb2, 0x47, 0x3d, 0xc1, 0x34, 0xa1, 0xd1, 0xac, 0x0e, 0x8d, 0xb4, 0x7c, 0xff, + 0xd2, 0xfe, 0xd0, 0xc8, 0x09, 0x16, 0x65, 0xcd, 0x13, 0xb5, 0x3e, 0xd7, 0xc1, 0x25, 0x6c, 0x9e, + 0xab, 0x35, 0x4e, 0xd3, 0xd2, 0x6b, 0x56, 0x8c, 0xe1, 0x3f, 0xd2, 0x0a, 0x6e, 0x41, 0x18, 0xce, + 0xeb, 0x64, 0xe7, 0xf3, 0x77, 0xad, 0xeb, 0xe4, 0x17, 0x3a, 0xad, 0x93, 0xa1, 0x8e, 0xcc, 0xdc, + 0xaf, 0x88, 0xe1, 0xa7, 0xb1, 0x9e, 0x20, 0xfb, 0x8a, 0xa8, 0xc7, 0x5e, 0x38, 0x68, 0xec, 0x8d, + 0x74, 0x8e, 0xbd, 0xd7, 0xde, 0x78, 0xa2, 0xa2, 0x0d, 0x88, 0x02, 0xa5, 0xd9, 0xa3, 0x25, 0xc6, + 0xf8, 0x92, 0x4c, 0x7c, 0xc2, 0x39, 0xc0, 0x5c, 0x85, 0xc1, 0xd6, 0x00, 0x83, 0x26, 0xe1, 0x74, + 0x9b, 0xf8, 0xa2, 0x9d, 0x12, 0x6b, 0x17, 0x5c, 0xac, 0x67, 0xd1, 0x6c, 0xce, 0x8b, 0x3d, 0x32, + 0xb8, 0xab, 0xa2, 0x00, 0xf6, 0xb2, 0x29, 0x66, 0x9a, 0x99, 0x31, 0x8f, 0x9a, 0x05, 0xa8, 0x60, + 0xe2, 0xcf, 0x23, 0x30, 0xb0, 0xc4, 0x97, 0xb9, 0xe2, 0x83, 0x66, 0x3f, 0xfa, 0x22, 0xf8, 0x94, + 0x07, 0x35, 0xe3, 0x18, 0xfb, 0xd5, 0x03, 0x1f, 0x63, 0x27, 0xda, 0xe9, 0xc1, 0xf3, 0x15, 0x7a, + 0x1b, 0xf9, 0x87, 0xbd, 0x5d, 0xc8, 0xcb, 0x12, 0x8e, 0x86, 0x1a, 0xbc, 0x6e, 0xd4, 0x50, 0x04, + 0xbb, 0x76, 0xf5, 0xf3, 0xac, 0x9d, 0xcf, 0xaa, 0x9f, 0x6a, 0xb5, 0x0a, 0xcb, 0xa1, 0xf5, 0x5e, + 0xfd, 0x91, 0x31, 0xeb, 0x5f, 0x04, 0xb2, 0x31, 0xd5, 0xb4, 0xd7, 0x78, 0x98, 0x21, 0xe3, 0x3c, + 0x82, 0x25, 0x19, 0x88, 0x81, 0x94, 0x17, 0x80, 0xd2, 0x1d, 0x59, 0xe7, 0xcd, 0xcb, 0xfa, 0x5e, + 0xcf, 0x69, 0x87, 0x03, 0xfc, 0xf9, 0xcd, 0x75, 0x51, 0x2b, 0x83, 0xb1, 0x7d, 0x5a, 0xb3, 0xb4, + 0xd1, 0x8a, 0xfe, 0x1a, 0xf4, 0xd9, 0xde, 0x64, 0xd0, 0x3d, 0xf7, 0x10, 0xdd, 0xbc, 0x31, 0x7f, + 0x87, 0xed, 0x6d, 0x7e, 0xb1, 0x81, 0xce, 0x93, 0xe3, 0x92, 0x46, 0xe6, 0x14, 0x72, 0xb9, 0xed, + 0xe9, 0xf0, 0xee, 0x02, 0x1b, 0x9e, 0x5b, 0xce, 0xeb, 0xb9, 0xd2, 0x57, 0x20, 0x82, 0xe7, 0xc4, + 0xe0, 0x1a, 0x26, 0xf3, 0xfa, 0xf2, 0xa1, 0xe6, 0x55, 0xe3, 0xc8, 0x42, 0xe3, 0x33, 0x5d, 0x80, + 0x6e, 0xb2, 0x8e, 0xe2, 0xf4, 0x52, 0x10, 0xcb, 0xc4, 0xaf, 0x0f, 0xf3, 0x12, 0xc9, 0xed, 0xa5, + 0xf4, 0xf2, 0x9a, 0xc6, 0x83, 0x25, 0x2b, 0xb3, 0xfe, 0x85, 0x3e, 0x03, 0x11, 0x2d, 0xd3, 0x2e, + 0x88, 0x5c, 0x95, 0xd7, 0x4e, 0x01, 0xb3, 0xa0, 0xdd, 0x5a, 0xe6, 0xaa, 0x3c, 0x7d, 0x1e, 0x42, + 0x46, 0x0f, 0x48, 0xbe, 0xd1, 0xa3, 0x1f, 0x46, 0x18, 0xf5, 0x46, 0xff, 0xeb, 0x0c, 0x1b, 0xd4, + 0x79, 0xd1, 0x2b, 0xe6, 0xaa, 0xd0, 0xeb, 0x32, 0x96, 0x3b, 0xbf, 0xb0, 0x61, 0xae, 0x0f, 0xd6, + 0xe0, 0xd4, 0xb7, 0x0f, 0x30, 0x14, 0xa0, 0xb5, 0x50, 0x1e, 0xa5, 0x5c, 0xf8, 0x50, 0xcc, 0xa9, + 0xc4, 0x6e, 0xf1, 0x22, 0x4a, 0x7f, 0xd8, 0x28, 0xb3, 0x3b, 0x61, 0x42, 0x7a, 0x5f, 0x4c, 0xd8, + 0xd5, 0x11, 0x13, 0x0e, 0x3c, 0x1d, 0x4c, 0xd8, 0xd5, 0xc0, 0x84, 0x6f, 0xa1, 0x27, 0x2a, 0xfa, + 0xbf, 0x70, 0x16, 0x28, 0x2d, 0xec, 0x59, 0xc2, 0x75, 0x4f, 0x92, 0x49, 0x26, 0x09, 0xbc, 0xc2, + 0x18, 0x07, 0xe2, 0x0e, 0x71, 0xbb, 0xfb, 0x2a, 0x43, 0xce, 0xf3, 0x32, 0x33, 0x4c, 0x72, 0xd2, + 0x31, 0x84, 0x4f, 0xc0, 0x99, 0x36, 0x21, 0x3c, 0x38, 0xce, 0x24, 0xaf, 0x32, 0xc9, 0xa9, 0xf6, + 0x88, 0x88, 0xd6, 0x11, 0x51, 0x3f, 0x41, 0x4f, 0xd3, 0x4c, 0x12, 0xc7, 0xea, 0x7e, 0x8a, 0x4e, + 0xfc, 0x32, 0x0c, 0x43, 0x4b, 0x92, 0x54, 0x5b, 0xe7, 0x8a, 0xcd, 0x21, 0x96, 0x2e, 0xda, 0xaa, + 0x47, 0x9f, 0xdf, 0x53, 0xd1, 0x34, 0x78, 0x2b, 0xd2, 0x18, 0xbe, 0x24, 0xf1, 0x25, 0x85, 0x2f, + 0xe3, 0xf8, 0x32, 0x81, 0x2f, 0x57, 0xf1, 0x65, 0x12, 0x5f, 0xa6, 0xf0, 0x85, 0x10, 0xcf, 0x80, + 0xaf, 0x22, 0x25, 0x9f, 0xc7, 0xb2, 0xb6, 0xad, 0x18, 0xd4, 0xb9, 0xd8, 0xd4, 0xa1, 0x18, 0x14, + 0x7c, 0x3a, 0xc5, 0x20, 0xd4, 0xbe, 0x18, 0x14, 0x3a, 0x5a, 0xa9, 0x05, 0x1d, 0xbe, 0x18, 0xe4, + 0x79, 0x36, 0xc5, 0x20, 0x8f, 0x53, 0x31, 0xc8, 0x19, 0x55, 0x46, 0x3a, 0x96, 0xae, 0x0e, 0x58, + 0x7d, 0xe9, 0x3e, 0x70, 0xf5, 0xc5, 0xdb, 0x16, 0x6b, 0x3a, 0x56, 0x15, 0x7a, 0xdc, 0x54, 0x15, + 0xbc, 0xad, 0x55, 0x05, 0x1d, 0xc9, 0x84, 0xdd, 0x14, 0x95, 0x37, 0x9e, 0xa8, 0x68, 0x1d, 0x8e, + 0x43, 0x9f, 0xe1, 0xc6, 0xf1, 0x39, 0xcd, 0xb7, 0x30, 0x46, 0x4c, 0xb5, 0xc3, 0x88, 0x8e, 0x49, + 0xe8, 0x18, 0x9c, 0x68, 0x13, 0x61, 0xd0, 0x8c, 0x9b, 0x6d, 0x05, 0x5b, 0xc6, 0xe8, 0xf0, 0xb2, + 0xc2, 0x9a, 0x73, 0x6e, 0xf9, 0xaa, 0x25, 0xb7, 0xf4, 0x93, 0xdc, 0xf2, 0x40, 0x89, 0xa5, 0x33, + 0x36, 0x6d, 0xde, 0xd1, 0xb0, 0x65, 0x80, 0x5a, 0xee, 0x07, 0x54, 0x24, 0x31, 0x0c, 0xd1, 0x76, + 0x31, 0x3e, 0xf1, 0x23, 0x04, 0xf4, 0xed, 0xbb, 0x92, 0x6c, 0x2b, 0xac, 0x5f, 0x81, 0xa0, 0x28, + 0x15, 0x5c, 0x1c, 0x7f, 0x0c, 0x88, 0xd2, 0x82, 0x24, 0x2b, 0x34, 0x03, 0xfe, 0x2d, 0x42, 0xde, + 0x39, 0xc8, 0x69, 0x44, 0x38, 0x28, 0xea, 0x40, 0x72, 0x9f, 0xa3, 0x46, 0x06, 0x59, 0x26, 0x0e, + 0x11, 0xdc, 0xd2, 0xf1, 0x50, 0x9a, 0x75, 0xd3, 0xf2, 0xaf, 0x11, 0x1c, 0x5f, 0xe2, 0x1e, 0xf0, + 0xf5, 0xd4, 0xed, 0x0a, 0x27, 0x36, 0x0f, 0x4a, 0xb4, 0xc5, 0xfb, 0xdb, 0x7b, 0x2a, 0x9a, 0x6d, + 0xd9, 0xb5, 0x4c, 0x91, 0xeb, 0x38, 0xb9, 0x4e, 0x90, 0xeb, 0x55, 0x72, 0x9d, 0x24, 0xd7, 0x29, + 0x72, 0x9d, 0x6e, 0xda, 0xdf, 0x6c, 0x17, 0xfa, 0xcf, 0x37, 0xaa, 0xf6, 0x9e, 0xd6, 0xaa, 0xbd, + 0x51, 0xb3, 0x4f, 0xcc, 0xc2, 0xb0, 0xd6, 0xe3, 0x7c, 0x45, 0x6a, 0xed, 0xb4, 0x85, 0x09, 0xea, + 0xc0, 0xe4, 0xf7, 0x3c, 0x10, 0xd5, 0xb9, 0xd4, 0x05, 0x69, 0xeb, 0xd3, 0x1d, 0xb8, 0x75, 0x8b, + 0xa3, 0xb3, 0x3d, 0x38, 0x6e, 0x71, 0xf8, 0x1c, 0xb6, 0x38, 0xba, 0x8c, 0x91, 0x3a, 0xd5, 0x80, + 0x1c, 0xf6, 0x8c, 0x7e, 0xc7, 0x0b, 0x03, 0xda, 0x7c, 0x34, 0x4f, 0x05, 0x0f, 0x54, 0x25, 0xa5, + 0x09, 0x32, 0xee, 0xeb, 0x16, 0xbe, 0xff, 0xeb, 0xc6, 0x6d, 0xec, 0x0a, 0xc3, 0x30, 0x8d, 0x67, + 0x03, 0x0e, 0x49, 0x30, 0xa8, 0x8b, 0x91, 0x2b, 0x92, 0x45, 0x94, 0xd7, 0xe5, 0x29, 0x86, 0xf6, + 0x06, 0xb1, 0xd0, 0xc5, 0xd2, 0x1a, 0xeb, 0x7c, 0x45, 0x6a, 0x08, 0xbc, 0x0b, 0xfd, 0x95, 0x94, + 0x8c, 0x55, 0x6f, 0x91, 0xe6, 0x73, 0x8b, 0x00, 0xdb, 0x18, 0xce, 0x42, 0x17, 0x4b, 0xe9, 0x5c, + 0xcd, 0xfb, 0x19, 0x06, 0x8e, 0x57, 0x08, 0x7d, 0x83, 0xc1, 0xbe, 0x47, 0x09, 0xde, 0x3a, 0x05, + 0xbd, 0xf3, 0x15, 0x69, 0x9d, 0xab, 0xe4, 0x6b, 0x7c, 0x91, 0x28, 0x22, 0xf7, 0x14, 0x92, 0x64, + 0x3d, 0x2b, 0x7e, 0xd1, 0x9a, 0x15, 0x0f, 0xfe, 0xda, 0x66, 0xc4, 0x5f, 0x3b, 0x64, 0x46, 0xdc, + 0xe6, 0x8d, 0xd4, 0x96, 0x3c, 0x59, 0x84, 0x21, 0x07, 0xe4, 0xc3, 0xcb, 0xd1, 0x17, 0xdb, 0x09, + 0x99, 0xb4, 0x08, 0x39, 0xa9, 0x2f, 0xf6, 0x8e, 0xb2, 0x06, 0x5a, 0xc0, 0xcf, 0x67, 0x79, 0xf9, + 0xf3, 0x99, 0x97, 0x3f, 0x84, 0x68, 0x8d, 0xab, 0x5b, 0xf6, 0x7a, 0x2c, 0xe1, 0xa4, 0xdb, 0x85, + 0xb3, 0x9c, 0x7f, 0xfc, 0xb0, 0xbf, 0xa5, 0xa5, 0xdd, 0x34, 0x10, 0x7b, 0x4c, 0x13, 0x62, 0xef, + 0xf7, 0xa7, 0x56, 0x16, 0x78, 0xb1, 0xa5, 0x2c, 0x00, 0x9f, 0x76, 0x49, 0xe0, 0xab, 0x0e, 0x3b, + 0xc5, 0x17, 0x0e, 0xbd, 0x53, 0xdc, 0xb2, 0xf5, 0x5b, 0x06, 0xda, 0x92, 0xe3, 0x15, 0xc8, 0x51, + 0x4b, 0x39, 0x7a, 0xea, 0x88, 0xa9, 0x1e, 0x4b, 0x35, 0x52, 0x3c, 0xf2, 0x44, 0xa6, 0xbf, 0x62, + 0x81, 0xae, 0xda, 0x28, 0x4e, 0xbb, 0x0c, 0x89, 0xa6, 0xb2, 0x2c, 0x07, 0xe5, 0xcd, 0xb7, 0x54, + 0xf4, 0x61, 0x7c, 0x1f, 0x39, 0x9c, 0xae, 0x8d, 0x11, 0x85, 0xcc, 0xee, 0x2b, 0xa0, 0x79, 0x49, + 0x72, 0x3c, 0x4e, 0xcb, 0x1e, 0xe8, 0x55, 0xde, 0xf6, 0xa7, 0xb7, 0x3b, 0xbc, 0xdc, 0x48, 0x9f, + 0x6e, 0xda, 0x47, 0xc4, 0xd9, 0x6a, 0xc8, 0xba, 0x5f, 0x98, 0x76, 0xa8, 0x0d, 0x9d, 0xed, 0x88, + 0xaa, 0x5a, 0xaa, 0x42, 0xb7, 0x1a, 0x55, 0xa1, 0xc4, 0x11, 0xab, 0x42, 0x96, 0x7a, 0x10, 0xad, + 0xc0, 0x10, 0x31, 0xd1, 0x96, 0x65, 0xe9, 0x85, 0x23, 0x65, 0xcb, 0x8d, 0x1f, 0x04, 0x21, 0xa9, + 0x54, 0xde, 0xb6, 0x4e, 0x69, 0x52, 0x27, 0x5a, 0xa5, 0x9e, 0x7f, 0x8a, 0x52, 0x27, 0xec, 0x52, + 0xbf, 0x0c, 0x40, 0x72, 0x17, 0xf2, 0x4b, 0x41, 0xd1, 0x73, 0x2e, 0x1d, 0xb1, 0x35, 0xb5, 0x6a, + 0x88, 0x09, 0x13, 0x7e, 0x04, 0x0c, 0xad, 0xc1, 0x90, 0xbe, 0xd9, 0x4d, 0x92, 0xd1, 0x86, 0x9e, + 0x2f, 0xba, 0x49, 0xaf, 0x11, 0x3b, 0x68, 0x6d, 0x6d, 0x6a, 0x9d, 0x85, 0xa6, 0xfb, 0x05, 0x5e, + 0xd4, 0x98, 0x8e, 0xba, 0x63, 0x3a, 0x60, 0x6d, 0x9c, 0xd5, 0xda, 0xd2, 0x0a, 0x0c, 0x94, 0x8c, + 0xa3, 0x5d, 0x96, 0xa5, 0xe1, 0xc3, 0xa0, 0xdb, 0x37, 0xc4, 0x1c, 0x0f, 0x94, 0x36, 0xc4, 0x7a, + 0x58, 0xba, 0xd4, 0x42, 0x42, 0xff, 0x1f, 0xa0, 0x79, 0x7d, 0x1b, 0xda, 0x22, 0xf4, 0xa3, 0xa0, + 0xcb, 0x57, 0x4c, 0x1c, 0x0f, 0x8f, 0x59, 0x65, 0xf6, 0xf3, 0x76, 0x0a, 0xfa, 0x1e, 0x50, 0xda, + 0xda, 0x60, 0x11, 0xf8, 0xaf, 0x41, 0x97, 0x20, 0xc2, 0x61, 0x77, 0xd5, 0x2a, 0xae, 0x4f, 0x69, + 0x7e, 0x4e, 0x4f, 0x43, 0xa0, 0x42, 0x2a, 0xaa, 0xd1, 0x7f, 0x0b, 0xba, 0x51, 0x8e, 0x87, 0xd5, + 0xe9, 0xe9, 0x6f, 0x22, 0x88, 0x35, 0x14, 0x52, 0x35, 0xcf, 0xda, 0x59, 0x7a, 0xfd, 0x53, 0x8d, + 0x65, 0xda, 0xbd, 0x6e, 0xda, 0x9c, 0x5e, 0xb4, 0xca, 0x3f, 0x55, 0xea, 0x40, 0x8c, 0xf5, 0x55, + 0xd1, 0x6b, 0x35, 0x96, 0x8e, 0xfc, 0xbb, 0x5b, 0x7d, 0x39, 0x96, 0x6b, 0x9b, 0xf4, 0x55, 0xb1, + 0x53, 0x60, 0x7d, 0xd9, 0xd3, 0x92, 0xe8, 0xc7, 0x6e, 0xf5, 0xe5, 0x90, 0x29, 0x36, 0xe9, 0xab, + 0xd2, 0xfc, 0xfc, 0x29, 0xbc, 0x8e, 0x9e, 0x79, 0xd1, 0xa9, 0x90, 0x8d, 0x13, 0xa8, 0xb3, 0xbb, + 0x2a, 0x8a, 0x93, 0x2a, 0xd1, 0x38, 0x33, 0x3e, 0x91, 0xb9, 0x64, 0x3a, 0x71, 0xa1, 0xba, 0x59, + 0x51, 0x84, 0x5a, 0x85, 0x7f, 0x13, 0x23, 0xb9, 0xa1, 0x1d, 0x15, 0x5d, 0xdc, 0x55, 0xd1, 0x08, + 0x26, 0x9d, 0x48, 0x32, 0x13, 0xa9, 0x8f, 0x55, 0x84, 0x32, 0x33, 0xd6, 0xe5, 0x50, 0xe7, 0x7a, + 0x7e, 0x47, 0x45, 0x1f, 0x06, 0x77, 0x55, 0xf4, 0x41, 0x70, 0x4f, 0x45, 0x03, 0xc9, 0xb1, 0xb1, + 0x24, 0x93, 0x1c, 0x1b, 0x4b, 0xe1, 0xcb, 0x38, 0xbe, 0x4c, 0xe0, 0xa6, 0x5a, 0xb9, 0xdc, 0x3c, + 0x28, 0x30, 0x40, 0x0d, 0x2e, 0xfa, 0x42, 0x83, 0xd4, 0xd0, 0xa2, 0x2f, 0x34, 0x44, 0x1d, 0xd3, + 0x8e, 0x0e, 0x2c, 0xfa, 0x42, 0xc7, 0xa9, 0xe8, 0xa2, 0x2f, 0x14, 0xa5, 0x4e, 0x2c, 0xfa, 0x42, + 0x27, 0xa8, 0xe1, 0x45, 0x5f, 0x68, 0x98, 0x3a, 0xb9, 0xe8, 0x0b, 0x9d, 0xa4, 0x4e, 0x2d, 0xfa, + 0x42, 0x71, 0xea, 0xec, 0xa2, 0x2f, 0x34, 0x42, 0x5d, 0x5c, 0x0c, 0x84, 0x3e, 0x08, 0x52, 0x1f, + 0x06, 0x17, 0x03, 0xa1, 0x9f, 0x05, 0xa9, 0x8f, 0x83, 0x89, 0xbf, 0x0b, 0x40, 0xef, 0x6c, 0x9d, + 0xe7, 0x14, 0xde, 0x4c, 0x01, 0xdf, 0x70, 0x8e, 0x25, 0xf4, 0x91, 0x42, 0x09, 0xce, 0x8f, 0x1d, + 0x22, 0x48, 0xd5, 0x31, 0x82, 0x0c, 0x1c, 0x29, 0x80, 0xf8, 0xf4, 0x03, 0xfe, 0x2e, 0xa3, 0xc7, + 0xe0, 0x11, 0x82, 0x47, 0xd3, 0xfb, 0x04, 0xf6, 0xe8, 0x21, 0x02, 0xa5, 0x45, 0x03, 0x8b, 0xb0, + 0x21, 0xb7, 0x96, 0xdf, 0xba, 0x7f, 0x4d, 0x5e, 0x24, 0xd8, 0x6d, 0xbc, 0x48, 0xd0, 0x57, 0x69, + 0xa6, 0x71, 0x13, 0x73, 0x8e, 0x3d, 0xad, 0x90, 0x63, 0x1d, 0x78, 0xe7, 0x98, 0xc3, 0x39, 0x04, + 0x80, 0xe8, 0xe1, 0xfd, 0x9f, 0x0c, 0xbc, 0xf9, 0xf6, 0xb5, 0x97, 0x7e, 0xf8, 0x9a, 0xad, 0x8c, + 0xf1, 0x44, 0x45, 0xc7, 0x60, 0x10, 0x7a, 0x1b, 0xef, 0xad, 0x13, 0xcb, 0xf6, 0x24, 0xa7, 0x32, + 0x2f, 0x3b, 0x78, 0xe2, 0x05, 0xfd, 0x88, 0x4f, 0xff, 0x9e, 0x8a, 0xfa, 0x93, 0x33, 0x4c, 0x72, + 0x9a, 0x49, 0x8d, 0x31, 0xa9, 0x14, 0x93, 0x4a, 0x32, 0xa9, 0x89, 0xb7, 0x3f, 0x41, 0x81, 0x57, + 0x44, 0x49, 0xe4, 0x5f, 0x33, 0x7d, 0xf1, 0x38, 0x15, 0x4d, 0x7c, 0x37, 0x00, 0x7d, 0x2c, 0x5f, + 0xab, 0x70, 0xc5, 0xff, 0x15, 0xae, 0x53, 0x7e, 0xca, 0xae, 0xe3, 0x6b, 0xe7, 0x36, 0xe5, 0xa7, + 0xec, 0x36, 0xa6, 0xa0, 0xcf, 0xfc, 0xe5, 0x53, 0xf5, 0x97, 0x77, 0x69, 0x88, 0xcc, 0xf3, 0xca, + 0xaf, 0xa2, 0xd2, 0x48, 0x59, 0x2a, 0x8d, 0x9f, 0x9d, 0xb2, 0xf9, 0xec, 0x94, 0xcd, 0x67, 0xd5, + 0xbc, 0xcf, 0xaa, 0x79, 0xee, 0xaa, 0x79, 0x6f, 0xb4, 0x2d, 0x53, 0x5d, 0xdf, 0xbf, 0x4c, 0xd5, + 0x08, 0x66, 0x4e, 0x35, 0xaa, 0x5f, 0x9f, 0x7a, 0xd2, 0xaf, 0x06, 0xd5, 0xa0, 0x67, 0x8c, 0x6a, + 0xd0, 0xb3, 0x43, 0x35, 0xe8, 0x59, 0xa1, 0x1a, 0xf4, 0xbc, 0xa0, 0x1a, 0xf4, 0x8c, 0x51, 0x0d, + 0xfa, 0x55, 0x24, 0xff, 0x07, 0x03, 0x46, 0xce, 0x47, 0xde, 0xde, 0xfe, 0x04, 0xb5, 0xde, 0x3e, + 0x2a, 0x88, 0xd2, 0xd2, 0xf7, 0x06, 0x94, 0x7a, 0xa3, 0xf5, 0x07, 0xb0, 0xf3, 0x0a, 0xa7, 0x6c, + 0xca, 0xf4, 0x2a, 0x04, 0x37, 0x6b, 0x85, 0x92, 0x74, 0x5f, 0xd4, 0x71, 0xd5, 0xc1, 0x83, 0xf6, + 0xad, 0xda, 0x9c, 0x74, 0x5f, 0x64, 0x03, 0x9b, 0xe4, 0xef, 0xa8, 0xa4, 0xfd, 0x62, 0xa7, 0xed, + 0x07, 0x5d, 0xe9, 0x11, 0x38, 0x97, 0x5b, 0x9e, 0x5d, 0xba, 0x35, 0x97, 0x2d, 0xe4, 0x56, 0x0b, + 0xe9, 0xb9, 0x39, 0x36, 0x9b, 0xcf, 0x67, 0xf3, 0x85, 0x1b, 0xec, 0xca, 0xcd, 0x02, 0x59, 0xbc, + 0x57, 0x57, 0x56, 0x96, 0xf2, 0x54, 0x17, 0xa6, 0xcc, 0x7e, 0xd1, 0x05, 0x25, 0x22, 0x3f, 0xff, + 0xd0, 0x35, 0xfa, 0x0d, 0x0f, 0x0c, 0x3a, 0x6d, 0x31, 0xd0, 0x67, 0xe1, 0xf4, 0x72, 0x76, 0xed, + 0xce, 0x0a, 0xfb, 0xf9, 0x42, 0x6e, 0x79, 0x2d, 0xcb, 0xde, 0x48, 0xcf, 0x66, 0x0b, 0xc6, 0x1d, + 0x36, 0x7b, 0x83, 0xea, 0xa2, 0xe3, 0x70, 0xaa, 0x95, 0x24, 0x9f, 0x5b, 0xcb, 0x16, 0x96, 0x56, + 0x66, 0xd3, 0x4b, 0x14, 0xa2, 0x2f, 0xc0, 0x0b, 0x9d, 0x28, 0x0a, 0xb9, 0xe5, 0x7c, 0x6e, 0x2e, + 0x4b, 0x79, 0xe8, 0xd3, 0x70, 0xc2, 0x81, 0x70, 0x6d, 0x85, 0x4d, 0xcf, 0x67, 0x29, 0xaf, 0xb3, + 0xa4, 0x9b, 0xe9, 0xe5, 0xf4, 0x7c, 0xf6, 0x66, 0x76, 0x79, 0x8d, 0xf2, 0xd1, 0x2f, 0xc0, 0x70, + 0x2b, 0x45, 0x6e, 0xf5, 0x46, 0x3a, 0xc3, 0xe6, 0x66, 0x29, 0xff, 0xb0, 0xf7, 0xad, 0x87, 0x88, + 0x4e, 0x38, 0x4a, 0xc9, 0xce, 0x13, 0x1e, 0x01, 0x42, 0x33, 0xfa, 0x75, 0x4f, 0xeb, 0x6f, 0xcf, + 0x93, 0x09, 0x89, 0x39, 0x49, 0xc8, 0xae, 0x2d, 0x64, 0xd9, 0xe5, 0xec, 0x1a, 0xd5, 0x45, 0x9f, + 0x83, 0x78, 0xeb, 0x73, 0x8c, 0x5a, 0x1a, 0x5f, 0x29, 0xe4, 0x4c, 0xb5, 0x94, 0x9e, 0x5d, 0xb5, + 0x50, 0x79, 0xe8, 0x17, 0x21, 0xd1, 0x4a, 0xb5, 0x76, 0x6b, 0x79, 0x39, 0xbb, 0x64, 0xa1, 0xf3, + 0xd2, 0x97, 0xe0, 0x9c, 0x03, 0xb7, 0x95, 0x95, 0xd5, 0x4c, 0x7a, 0xd6, 0x72, 0x8b, 0xf2, 0x69, + 0xe3, 0x77, 0x64, 0xbb, 0x94, 0x7e, 0x3d, 0xcb, 0xa6, 0x2c, 0xc4, 0xfe, 0xd1, 0xaf, 0x3a, 0xfc, + 0xfc, 0xfe, 0xc2, 0xec, 0x2a, 0x9d, 0x80, 0x58, 0x6b, 0x7b, 0x62, 0x54, 0x73, 0xb9, 0x7c, 0x3a, + 0xb3, 0x94, 0xa5, 0xba, 0x9c, 0xed, 0x86, 0xd0, 0x64, 0x97, 0x09, 0x09, 0x1a, 0x55, 0xe0, 0x64, + 0x07, 0x74, 0x47, 0x8f, 0xc2, 0x8b, 0x6d, 0x26, 0x72, 0x2d, 0x3d, 0x3f, 0x9f, 0x5b, 0x9e, 0xb7, + 0x48, 0xbb, 0x08, 0xe7, 0xf7, 0xa1, 0x35, 0xa5, 0xfe, 0x19, 0x6a, 0x15, 0x6b, 0xfd, 0xad, 0xff, + 0xf3, 0x70, 0xb6, 0x95, 0xd5, 0x7c, 0x7a, 0x2d, 0x7b, 0x27, 0xfd, 0xba, 0x45, 0xe2, 0x4b, 0x70, + 0xa1, 0x3d, 0x59, 0xfa, 0xd6, 0xda, 0x4a, 0x21, 0xbd, 0x84, 0x8d, 0x7b, 0x0d, 0x6b, 0x9b, 0x81, + 0x91, 0xf6, 0xc4, 0xb7, 0xf2, 0xd9, 0xc2, 0xec, 0xca, 0xf2, 0x8d, 0xdc, 0xfc, 0x2d, 0x36, 0x3b, + 0x47, 0x79, 0x46, 0x7f, 0x1f, 0xc1, 0xf1, 0x36, 0xbf, 0xe6, 0xdf, 0x66, 0x5a, 0x97, 0xf3, 0x96, + 0x9e, 0x39, 0x3a, 0x1b, 0x26, 0xb1, 0xf7, 0x6a, 0xc4, 0xc9, 0x6a, 0x30, 0x61, 0x4b, 0x8f, 0xfe, + 0x02, 0xc1, 0x70, 0x7b, 0x9c, 0xef, 0x3c, 0xfb, 0x44, 0xd7, 0xf9, 0x2c, 0x7b, 0x3b, 0xcb, 0x5a, + 0x3a, 0xe7, 0x2c, 0xd3, 0x42, 0x6a, 0xe8, 0x89, 0x4e, 0xc2, 0x25, 0x07, 0x3f, 0x5b, 0x5e, 0x48, + 0x2f, 0xcf, 0x66, 0xe7, 0x9c, 0x9a, 0x78, 0x46, 0xff, 0x08, 0xb5, 0x86, 0x68, 0x2d, 0xb0, 0x3a, + 0xab, 0x2b, 0x3d, 0x77, 0x33, 0xb7, 0x9c, 0xcb, 0xaf, 0xb1, 0xe9, 0xb5, 0xdc, 0xed, 0xec, 0xd2, + 0xeb, 0x85, 0xb9, 0x95, 0x3b, 0xcb, 0xed, 0x66, 0x70, 0x65, 0x35, 0x8b, 0xe9, 0x56, 0x96, 0xd3, + 0x06, 0x21, 0x72, 0xb6, 0x95, 0x26, 0xc2, 0x5b, 0xab, 0x94, 0x27, 0xf3, 0x4d, 0xb4, 0xfb, 0x93, + 0x58, 0xd7, 0x7b, 0x3f, 0x89, 0x75, 0x7d, 0xfc, 0x93, 0x18, 0x7a, 0x6b, 0x2f, 0x86, 0xbe, 0xb5, + 0x17, 0x43, 0xef, 0xee, 0xc5, 0xd0, 0xee, 0x5e, 0x0c, 0xbd, 0xb7, 0x17, 0x43, 0x3f, 0xde, 0x8b, + 0xa1, 0x0f, 0xf6, 0x62, 0x5d, 0x1f, 0xef, 0xc5, 0xd0, 0x1f, 0xbc, 0x1f, 0xeb, 0xda, 0x79, 0x3f, + 0x86, 0x76, 0xdf, 0x8f, 0x75, 0xbd, 0xf7, 0x7e, 0xac, 0xeb, 0x4b, 0xb7, 0xca, 0x52, 0xed, 0x5e, + 0xf9, 0xf2, 0x96, 0x54, 0x51, 0xf8, 0x7a, 0x9d, 0xbb, 0xbc, 0x29, 0x5f, 0x21, 0x1f, 0x36, 0xa4, + 0x7a, 0xf5, 0x52, 0xad, 0x2e, 0x6d, 0x09, 0x25, 0xbe, 0x7e, 0xc9, 0x78, 0x7c, 0xa5, 0xb6, 0x5e, + 0x96, 0xae, 0xf0, 0x6f, 0x2a, 0xfa, 0xbf, 0xd5, 0x68, 0xf7, 0xbf, 0x4a, 0xd6, 0x03, 0xe4, 0x9f, + 0x6c, 0x8c, 0xff, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x94, 0xd1, 0x5c, 0x89, 0xd5, 0x64, 0x00, + 0x00, } func (x DHCPPoolSettingType) String() string { diff --git a/pbgo/extschema/schema/network_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/network_policy/crudapi/api.vesapi.go index 9e3a2af1b..5cf4987e7 100644 --- a/pbgo/extschema/schema/network_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/network_policy/crudapi/api.vesapi.go @@ -3554,10 +3554,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_policy/object.pb.go b/pbgo/extschema/schema/network_policy/object.pb.go index e4b61eb21..946a0d048 100644 --- a/pbgo/extschema/schema/network_policy/object.pb.go +++ b/pbgo/extschema/schema/network_policy/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_32bef374d839cd1f = []byte{ - // 603 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xc1, 0x4f, 0x13, 0x4f, - 0x14, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0xfc, 0xf8, 0xad, 0x97, 0x8a, 0x38, 0x69, 0x6a, 0x62, - 0x30, 0x61, 0x77, 0x0d, 0xc6, 0x03, 0xd5, 0x48, 0x02, 0x1a, 0x2e, 0x10, 0xb5, 0x78, 0xf2, 0xd2, - 0xcc, 0x4e, 0x5f, 0xb7, 0x23, 0xbb, 0x9d, 0xcd, 0xcc, 0xec, 0x42, 0x0f, 0x26, 0xc6, 0x93, 0x47, - 0xae, 0xfe, 0x07, 0xc6, 0xf8, 0x47, 0x88, 0x27, 0xbd, 0x11, 0x4e, 0x1c, 0x65, 0x7b, 0xf1, 0x64, - 0xf8, 0x13, 0x0c, 0xb3, 0x2c, 0x61, 0xb1, 0x21, 0xa6, 0xb7, 0xd9, 0xbc, 0xcf, 0xf7, 0x3b, 0xef, - 0xcd, 0x7b, 0x6f, 0xf1, 0xbd, 0x04, 0x94, 0xc3, 0x85, 0xab, 0x58, 0x0f, 0x42, 0xea, 0xf6, 0x41, - 0xef, 0x0a, 0xb9, 0xd3, 0x8e, 0x44, 0xc0, 0xd9, 0xc0, 0x15, 0xde, 0x1b, 0x60, 0xda, 0x89, 0xa4, - 0xd0, 0xc2, 0x5a, 0xc8, 0x50, 0x27, 0x43, 0x9d, 0x22, 0x3a, 0x6f, 0xfb, 0x5c, 0xf7, 0x62, 0xcf, - 0x61, 0x22, 0x74, 0x7d, 0xe1, 0x0b, 0xd7, 0x88, 0xbc, 0xb8, 0x6b, 0xbe, 0xcc, 0x87, 0x39, 0x65, - 0x66, 0xf3, 0x8b, 0xd7, 0xde, 0xab, 0x07, 0x11, 0xa8, 0x73, 0xf2, 0x56, 0x91, 0x14, 0x91, 0xe6, - 0xa2, 0x9f, 0x07, 0x6f, 0x16, 0x83, 0x97, 0x75, 0x8d, 0x62, 0x28, 0x01, 0x05, 0xfd, 0xa4, 0x28, - 0x6f, 0x7c, 0x9c, 0xc0, 0xd5, 0xe7, 0xa6, 0x46, 0x6b, 0x05, 0x4f, 0x85, 0xa0, 0x69, 0x87, 0x6a, - 0x5a, 0x43, 0x75, 0xb4, 0x38, 0xbd, 0x7c, 0xdb, 0x29, 0x16, 0x9c, 0x81, 0x5b, 0xa0, 0xe9, 0xab, - 0x41, 0x04, 0xad, 0x0b, 0xdc, 0xda, 0xc4, 0xff, 0xa9, 0x81, 0xd2, 0x10, 0xb6, 0x2f, 0x1c, 0xca, - 0xc6, 0xe1, 0xce, 0x15, 0x87, 0x6d, 0x43, 0x5d, 0xf1, 0x99, 0xcd, 0xb4, 0x5b, 0xb9, 0x5b, 0x13, - 0x4f, 0xa8, 0x08, 0x58, 0xad, 0x62, 0x2c, 0xee, 0x3a, 0xd7, 0xbd, 0xba, 0xb3, 0x1d, 0x01, 0x33, - 0x2e, 0x46, 0xd3, 0xfc, 0x51, 0x7e, 0xbf, 0x3a, 0xa3, 0x7a, 0x54, 0x42, 0x67, 0xa9, 0x1e, 0x2b, - 0x90, 0x1f, 0x56, 0xd1, 0xb7, 0x83, 0x5a, 0x79, 0x0e, 0x1d, 0x1d, 0xd4, 0xbe, 0x94, 0xf1, 0x0a, - 0xae, 0x6c, 0x80, 0xb6, 0x96, 0xbb, 0x0f, 0xf7, 0x98, 0xad, 0x80, 0xc5, 0x12, 0x42, 0x50, 0x3d, - 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x14, 0x7d, 0xae, 0x85, 0x5c, 0xaa, 0x27, 0xa0, 0x6c, 0x2e, 0xec, - 0xf3, 0xbb, 0x6c, 0x09, 0xb4, 0x83, 0x1f, 0xe1, 0xc9, 0x16, 0x44, 0x01, 0x65, 0x60, 0xdd, 0x1f, - 0x2d, 0x3f, 0xbb, 0xef, 0x2f, 0xed, 0xae, 0xe4, 0x1a, 0x70, 0x13, 0x57, 0xd7, 0x25, 0x50, 0x3d, - 0xa6, 0xf6, 0x29, 0x04, 0x30, 0xa6, 0x76, 0x62, 0x93, 0xab, 0xb1, 0x0a, 0x6e, 0xbc, 0xc4, 0x53, - 0xf9, 0xeb, 0x5a, 0xcf, 0xf0, 0xa4, 0xcf, 0xda, 0xa6, 0x2d, 0x59, 0x67, 0x97, 0xae, 0x6f, 0xcb, - 0x46, 0x20, 0x3c, 0x1a, 0x5c, 0x34, 0xa7, 0xea, 0xb3, 0xb3, 0x73, 0xe3, 0x37, 0xc2, 0x33, 0xdb, - 0x9a, 0xea, 0x58, 0xfd, 0xf3, 0xd0, 0x65, 0xf8, 0x88, 0xa1, 0x7b, 0x81, 0xa7, 0xb3, 0xed, 0x6c, - 0x4b, 0xe8, 0xaa, 0x5a, 0xb9, 0x5e, 0x59, 0x9c, 0x5e, 0x5e, 0x18, 0x39, 0xb2, 0x2d, 0xe8, 0x9e, - 0x89, 0xd7, 0xfe, 0xff, 0xfc, 0x76, 0xb6, 0x98, 0x68, 0x0b, 0x8b, 0x9c, 0x50, 0xd6, 0x63, 0x8c, - 0x99, 0xe8, 0x77, 0xb8, 0x59, 0x90, 0x5a, 0x65, 0xa4, 0xe1, 0x7a, 0x0e, 0x98, 0x6c, 0x2e, 0xf1, - 0xcd, 0x1b, 0x47, 0x4f, 0xe6, 0xf0, 0x2c, 0x9e, 0xc9, 0x13, 0x74, 0x62, 0xde, 0x59, 0xdb, 0x47, - 0x87, 0x27, 0xa4, 0x74, 0x7c, 0x42, 0x4a, 0xa7, 0x27, 0x04, 0xbd, 0x4b, 0x09, 0xfa, 0x94, 0x12, - 0xf4, 0x3d, 0x25, 0xe8, 0x30, 0x25, 0xe8, 0x38, 0x25, 0xe8, 0x67, 0x4a, 0xd0, 0xaf, 0x94, 0x94, - 0x4e, 0x53, 0x82, 0xf6, 0x87, 0xa4, 0xf4, 0x75, 0x48, 0xd0, 0xe1, 0x90, 0x94, 0x8e, 0x87, 0xa4, - 0xf4, 0xba, 0xe5, 0x8b, 0x68, 0xc7, 0x77, 0x12, 0x11, 0x68, 0x90, 0x92, 0x3a, 0xb1, 0x72, 0xcd, - 0xa1, 0x2b, 0x64, 0x68, 0x47, 0x52, 0x24, 0xbc, 0x03, 0xd2, 0xce, 0xc3, 0x6e, 0xe4, 0xf9, 0xc2, - 0x85, 0x3d, 0x7d, 0xbe, 0xf1, 0x23, 0x7f, 0x2d, 0x5e, 0xd5, 0x6c, 0xfe, 0x83, 0x3f, 0x01, 0x00, - 0x00, 0xff, 0xff, 0x1a, 0xb0, 0x79, 0x37, 0xf9, 0x04, 0x00, 0x00, + // 621 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0x13, 0x4f, + 0x14, 0xc0, 0x3b, 0x94, 0x7f, 0x21, 0x03, 0xe1, 0x8f, 0xeb, 0xa5, 0x22, 0x4e, 0x9a, 0x9a, 0x18, + 0x4c, 0xd8, 0xdd, 0x04, 0xe3, 0x41, 0x62, 0x24, 0x01, 0x0d, 0x17, 0x08, 0x5a, 0xb8, 0x88, 0x26, + 0xcd, 0xec, 0xec, 0xeb, 0x76, 0xa4, 0xdb, 0xd9, 0xcc, 0xcc, 0x16, 0x7a, 0x30, 0x31, 0x9e, 0x3c, + 0xf2, 0x31, 0x8c, 0x1f, 0xc1, 0x93, 0x78, 0xf2, 0x62, 0x42, 0x38, 0x71, 0x94, 0xed, 0xc5, 0x78, + 0x30, 0x7c, 0x04, 0xc3, 0x2c, 0x8b, 0x6c, 0xd3, 0x34, 0x5e, 0x7a, 0x9b, 0xcd, 0xfb, 0xbd, 0xdf, + 0xbe, 0x9d, 0x7d, 0xef, 0xe1, 0xfb, 0x1d, 0x50, 0x0e, 0x17, 0xae, 0x62, 0x4d, 0x08, 0xa9, 0xdb, + 0x06, 0xbd, 0x2f, 0xe4, 0x5e, 0x3d, 0x12, 0x2d, 0xce, 0xba, 0xae, 0xf0, 0xde, 0x00, 0xd3, 0x4e, + 0x24, 0x85, 0x16, 0xd6, 0x7c, 0x8a, 0x3a, 0x29, 0xea, 0xe4, 0xd1, 0x39, 0x3b, 0xe0, 0xba, 0x19, + 0x7b, 0x0e, 0x13, 0xa1, 0x1b, 0x88, 0x40, 0xb8, 0x26, 0xc9, 0x8b, 0x1b, 0xe6, 0xc9, 0x3c, 0x98, + 0x53, 0x2a, 0x9b, 0x5b, 0x18, 0xfa, 0x5e, 0xdd, 0x8d, 0x40, 0x5d, 0x92, 0xb7, 0xf3, 0xa4, 0x88, + 0x34, 0x17, 0xed, 0x2c, 0x78, 0x2b, 0x1f, 0xbc, 0x9e, 0x57, 0xcd, 0x87, 0x3a, 0xa0, 0xa0, 0xdd, + 0xc9, 0xa7, 0x57, 0x3f, 0xff, 0x87, 0x4b, 0x5b, 0xe6, 0x1b, 0xad, 0x47, 0x78, 0x32, 0x04, 0x4d, + 0x7d, 0xaa, 0x69, 0x19, 0x55, 0xd0, 0xc2, 0xd4, 0xd2, 0x1d, 0x27, 0xff, 0xc1, 0x29, 0xb8, 0x09, + 0x9a, 0xee, 0x74, 0x23, 0xa8, 0x5d, 0xe1, 0xd6, 0x06, 0xfe, 0x5f, 0x75, 0x95, 0x86, 0xb0, 0x7e, + 0x65, 0x18, 0x33, 0x86, 0xbb, 0x7d, 0x86, 0x6d, 0x43, 0xf5, 0x79, 0x66, 0xd2, 0xdc, 0xcd, 0xcc, + 0xb6, 0x8c, 0xc7, 0x55, 0x04, 0xac, 0x5c, 0x34, 0x8a, 0x7b, 0xce, 0xb0, 0x5b, 0x77, 0xb6, 0x23, + 0x60, 0xc6, 0x62, 0x72, 0x96, 0x7f, 0x15, 0xdf, 0xaf, 0x4c, 0xab, 0x26, 0x95, 0xe0, 0x2f, 0x56, + 0x62, 0x05, 0xf2, 0xc3, 0x0a, 0xfa, 0x7a, 0x54, 0x1e, 0x9b, 0x45, 0x27, 0x47, 0xe5, 0xef, 0x45, + 0xfc, 0x0a, 0x17, 0xd7, 0x41, 0x5b, 0x3b, 0x8d, 0x87, 0x07, 0xcc, 0x56, 0xc0, 0x62, 0x09, 0x21, + 0xa8, 0xa6, 0xed, 0x51, 0xc5, 0x99, 0x1d, 0x8a, 0x36, 0xd7, 0x42, 0x2e, 0x56, 0xfa, 0xc3, 0x4a, + 0xd3, 0xb6, 0x4f, 0xa5, 0xff, 0x97, 0xe8, 0x80, 0xb2, 0xb9, 0xb0, 0x2f, 0xab, 0xb1, 0x25, 0x50, + 0x1f, 0xef, 0xe2, 0x89, 0x1a, 0x44, 0x2d, 0xca, 0xc0, 0xda, 0x1a, 0xfc, 0x82, 0x8b, 0x8a, 0x86, + 0xd8, 0xd3, 0x70, 0x9f, 0x7a, 0x5f, 0x72, 0x0d, 0xf8, 0x25, 0x2e, 0xad, 0x49, 0xa0, 0x7a, 0x34, + 0xea, 0xa7, 0xd0, 0x82, 0x51, 0xa8, 0x5f, 0xe3, 0xf1, 0x0d, 0xae, 0x46, 0x74, 0xdf, 0xd5, 0x17, + 0x78, 0x32, 0xfb, 0xfd, 0xd6, 0x33, 0x3c, 0x11, 0xb0, 0xba, 0xe9, 0x9b, 0xb4, 0xf5, 0x16, 0x87, + 0xf7, 0xcd, 0x7a, 0x4b, 0x78, 0xb4, 0x75, 0xd5, 0x3d, 0xa5, 0x80, 0x5d, 0x9c, 0xab, 0xbf, 0x11, + 0x9e, 0xde, 0xd6, 0x54, 0xc7, 0xea, 0x9f, 0xa7, 0x22, 0xc5, 0x07, 0x4c, 0xc5, 0x73, 0x3c, 0x95, + 0xae, 0x8f, 0xba, 0x84, 0x86, 0x2a, 0x8f, 0x55, 0x8a, 0x0b, 0x53, 0x4b, 0xf3, 0x03, 0x67, 0xaa, + 0x06, 0x8d, 0x8b, 0xe4, 0xd5, 0x1b, 0x9f, 0xde, 0xce, 0xe4, 0x0b, 0xad, 0x61, 0x91, 0x11, 0xca, + 0x7a, 0x8c, 0x31, 0x13, 0x6d, 0x9f, 0x9b, 0x09, 0x2e, 0x17, 0x07, 0x0a, 0xd7, 0x32, 0xc0, 0x54, + 0x73, 0x8d, 0x5f, 0xbe, 0x79, 0xf2, 0x64, 0x16, 0xcf, 0xe0, 0xe9, 0xac, 0x40, 0x27, 0xe6, 0xfe, + 0xea, 0x21, 0x3a, 0x3e, 0x23, 0x85, 0xd3, 0x33, 0x52, 0x38, 0x3f, 0x23, 0xe8, 0x5d, 0x42, 0xd0, + 0xc7, 0x84, 0xa0, 0x6f, 0x09, 0x41, 0xc7, 0x09, 0x41, 0xa7, 0x09, 0x41, 0x3f, 0x12, 0x82, 0x7e, + 0x26, 0xa4, 0x70, 0x9e, 0x10, 0x74, 0xd8, 0x23, 0x85, 0x2f, 0x3d, 0x82, 0x8e, 0x7b, 0xa4, 0x70, + 0xda, 0x23, 0x85, 0xdd, 0x5a, 0x20, 0xa2, 0xbd, 0xc0, 0xe9, 0x88, 0x96, 0x06, 0x29, 0xa9, 0x13, + 0x2b, 0xd7, 0x1c, 0x1a, 0x42, 0x86, 0x76, 0x24, 0x45, 0x87, 0xfb, 0x20, 0xed, 0x2c, 0xec, 0x46, + 0x5e, 0x20, 0x5c, 0x38, 0xd0, 0x97, 0x2b, 0x69, 0xe0, 0xee, 0xf3, 0x4a, 0x66, 0x35, 0x3d, 0xf8, + 0x13, 0x00, 0x00, 0xff, 0xff, 0x17, 0xa6, 0x40, 0xd7, 0x9a, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/network_policy/pkg.vespkg.go b/pbgo/extschema/schema/network_policy/pkg.vespkg.go index ae29cd306..4e9b9f53d 100644 --- a/pbgo/extschema/schema/network_policy/pkg.vespkg.go +++ b/pbgo/extschema/schema/network_policy/pkg.vespkg.go @@ -76,84 +76,84 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.network_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_policy.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_policy.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -171,15 +171,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.network_policy.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rules.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/network_policy/public_crudapi.pb.go b/pbgo/extschema/schema/network_policy/public_crudapi.pb.go index fc7d15d29..ecd866414 100644 --- a/pbgo/extschema/schema/network_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/network_policy/public_crudapi.pb.go @@ -1111,108 +1111,109 @@ func init() { } var fileDescriptor_031d088bb1988818 = []byte{ - // 1608 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x68, 0x1b, 0xc7, + // 1623 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x68, 0x1b, 0xc7, 0x1a, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x67, 0x33, 0x2f, 0x71, 0x64, 0x3d, 0x3f, 0xa1, 0xa7, - 0x84, 0x87, 0xed, 0x17, 0xad, 0x12, 0x87, 0x90, 0x17, 0x13, 0x92, 0x27, 0xdb, 0x6b, 0xe3, 0x3c, - 0xc7, 0xce, 0x1b, 0x29, 0xe1, 0xf1, 0x28, 0x2c, 0xab, 0xd5, 0x48, 0xd9, 0x5a, 0xd2, 0x6e, 0x77, - 0x46, 0x72, 0x44, 0x31, 0x94, 0x40, 0x7b, 0x2e, 0xb4, 0xbd, 0x94, 0x1c, 0x4a, 0xa1, 0xd0, 0x53, - 0xcf, 0x05, 0x5f, 0x42, 0x29, 0x24, 0xe4, 0x10, 0x42, 0x7a, 0x09, 0x3d, 0x35, 0x72, 0x0f, 0x39, - 0x95, 0xd0, 0x63, 0x4f, 0x65, 0x67, 0x76, 0x15, 0x49, 0x56, 0x14, 0xc9, 0xf1, 0x49, 0x33, 0xf3, - 0x7d, 0xdf, 0x6f, 0xbf, 0xdf, 0x7c, 0x7f, 0xf6, 0xd3, 0xc2, 0xf3, 0x75, 0x42, 0x65, 0xc3, 0x4c, - 0x53, 0xfd, 0x0e, 0xa9, 0x68, 0xe9, 0x2a, 0x61, 0x3b, 0xa6, 0xbd, 0xad, 0x5a, 0x66, 0xd9, 0xd0, - 0x1b, 0x69, 0xab, 0x96, 0x2f, 0x1b, 0xba, 0xaa, 0xdb, 0xb5, 0x82, 0x66, 0x19, 0xb2, 0x65, 0x9b, - 0xcc, 0x44, 0x33, 0xc2, 0x44, 0x16, 0x26, 0x72, 0xa7, 0x49, 0x2c, 0x55, 0x32, 0xd8, 0x9d, 0x5a, - 0x5e, 0xd6, 0xcd, 0x4a, 0xba, 0x64, 0x96, 0xcc, 0x34, 0x37, 0xca, 0xd7, 0x8a, 0x7c, 0xc7, 0x37, - 0x7c, 0x25, 0xc0, 0x62, 0x33, 0x25, 0xd3, 0x2c, 0x95, 0x49, 0x5a, 0xb3, 0x8c, 0xb4, 0x56, 0xad, - 0x9a, 0x4c, 0x63, 0x86, 0x59, 0xa5, 0xae, 0xf4, 0xaf, 0xae, 0xb4, 0x85, 0x41, 0x2a, 0x16, 0x6b, - 0xb8, 0xc2, 0x58, 0xa7, 0xeb, 0xc4, 0xb6, 0x4d, 0xdb, 0x33, 0x9c, 0xeb, 0x4b, 0xcb, 0xcc, 0xbf, - 0x4f, 0x74, 0xe6, 0xaa, 0xce, 0xf6, 0x55, 0x65, 0x0d, 0x8b, 0xb4, 0xbc, 0xe9, 0xd4, 0x34, 0xad, - 0x76, 0x57, 0xa7, 0x3b, 0x85, 0xed, 0x76, 0xc9, 0x4e, 0x51, 0x9d, 0x50, 0x52, 0xad, 0x77, 0x99, - 0x27, 0xba, 0x74, 0x0c, 0xb2, 0xa3, 0x76, 0x68, 0x24, 0xbf, 0x03, 0x70, 0x7c, 0xd9, 0x26, 0x1a, - 0x23, 0x98, 0x7c, 0x50, 0x23, 0x94, 0xa1, 0x6b, 0x30, 0x54, 0x21, 0x4c, 0x2b, 0x68, 0x4c, 0x8b, - 0x82, 0x04, 0x98, 0x8d, 0x2c, 0x9c, 0x96, 0x3b, 0x63, 0xb3, 0xc5, 0x89, 0x0a, 0xab, 0x1b, 0x84, - 0x69, 0xb9, 0x86, 0x45, 0x70, 0xcb, 0x08, 0xfd, 0x17, 0x06, 0xa8, 0x45, 0xf4, 0xa8, 0x8f, 0x1b, - 0x9f, 0x95, 0xfb, 0x05, 0x56, 0x16, 0x28, 0x59, 0x8b, 0xe8, 0x0e, 0xca, 0xd2, 0xe4, 0x97, 0xbb, - 0x63, 0x8e, 0xb1, 0x5c, 0xd2, 0x55, 0xe7, 0x17, 0x73, 0xa8, 0xc5, 0xf0, 0xe3, 0xab, 0x41, 0xf1, - 0xd4, 0xe4, 0x1f, 0x00, 0x4e, 0x78, 0x0e, 0x53, 0xcb, 0xac, 0x52, 0x82, 0xae, 0x1c, 0xf0, 0x38, - 0xd1, 0xd3, 0xe3, 0x35, 0xc2, 0x7a, 0xb8, 0xbb, 0x05, 0x27, 0x69, 0x83, 0x32, 0x52, 0x51, 0x5b, - 0x20, 0x7e, 0x0e, 0xf2, 0x8f, 0x2e, 0x90, 0x2c, 0xd7, 0x3a, 0x08, 0x35, 0x21, 0xcc, 0x6f, 0x78, - 0x80, 0x9b, 0x1d, 0xfc, 0xe7, 0xfa, 0xf3, 0x5f, 0x23, 0x6c, 0x08, 0xf2, 0x4d, 0x00, 0x27, 0x30, - 0xb1, 0xca, 0x9a, 0xde, 0x0a, 0xd7, 0xbf, 0x0f, 0x90, 0x3f, 0xd3, 0x93, 0xbc, 0x6b, 0xd6, 0xe3, - 0x02, 0x70, 0x87, 0xbf, 0xa9, 0xfe, 0xfe, 0xba, 0x30, 0x6f, 0xf1, 0x19, 0xa5, 0xa1, 0x64, 0x13, - 0x6a, 0xd6, 0x6c, 0x9d, 0xa8, 0x75, 0x62, 0x53, 0xc3, 0xac, 0xf2, 0x5b, 0x0d, 0x2f, 0x05, 0x5e, - 0xee, 0x01, 0x80, 0x27, 0x3d, 0xe9, 0x6d, 0x21, 0x6c, 0x27, 0x79, 0x1c, 0x4e, 0xb6, 0x38, 0x8a, - 0x08, 0x27, 0xef, 0x03, 0x08, 0xd7, 0x08, 0xf3, 0x38, 0xcf, 0xc0, 0x70, 0x55, 0xab, 0x10, 0x6a, - 0x69, 0x3a, 0xe1, 0xa4, 0xc3, 0xf8, 0xf5, 0x01, 0x42, 0x30, 0xe0, 0x6c, 0x38, 0x9f, 0x30, 0xe6, - 0x6b, 0xf4, 0x1e, 0x74, 0x9e, 0xc8, 0xc1, 0xd4, 0xa2, 0x69, 0x57, 0x34, 0xc6, 0xdd, 0x99, 0x58, - 0xb8, 0xf0, 0xd6, 0xf0, 0x78, 0x4e, 0xac, 0x72, 0xb3, 0x65, 0xb3, 0x40, 0xf0, 0x84, 0xdd, 0x71, - 0x96, 0xfc, 0x22, 0x08, 0x23, 0x6d, 0x9a, 0x68, 0x03, 0x46, 0x74, 0x9e, 0xa2, 0xfc, 0x59, 0xee, - 0xc5, 0xfe, 0x73, 0x90, 0x42, 0x70, 0x19, 0x62, 0x28, 0xec, 0x1d, 0x7c, 0xb4, 0x05, 0xc7, 0x6c, - 0x71, 0x1f, 0x02, 0xce, 0x3f, 0x48, 0x5d, 0x75, 0x66, 0x09, 0x8e, 0xb8, 0x08, 0x1c, 0xb0, 0x57, - 0x70, 0x02, 0x7d, 0x82, 0xd3, 0x51, 0x60, 0xa3, 0x47, 0x51, 0x60, 0xc7, 0x8e, 0xa4, 0xc0, 0x82, - 0x47, 0x53, 0x60, 0x68, 0x1d, 0x06, 0x29, 0xd3, 0x58, 0x8d, 0x46, 0xbf, 0xba, 0x0f, 0x12, 0xfe, - 0xd9, 0xc8, 0xc2, 0x7c, 0x7f, 0xcc, 0x2c, 0xd7, 0x16, 0x8e, 0x2e, 0xf9, 0x1f, 0xec, 0x02, 0xec, - 0x02, 0xa0, 0x75, 0x78, 0xdc, 0x26, 0x45, 0x62, 0xdb, 0x46, 0xb5, 0xa4, 0x8a, 0x17, 0x02, 0x8d, - 0x86, 0x38, 0xe6, 0xcc, 0x1b, 0xca, 0xb2, 0xc8, 0x39, 0x4a, 0x2d, 0x33, 0x71, 0x4e, 0xd1, 0x6d, - 0x18, 0x2d, 0x90, 0x32, 0x61, 0xa4, 0xa0, 0x0a, 0x19, 0x29, 0xb4, 0x10, 0xc3, 0x03, 0x20, 0x4e, - 0xb9, 0xd6, 0xd8, 0x35, 0xf6, 0x70, 0xff, 0x07, 0xa7, 0x0b, 0x06, 0xd5, 0xf2, 0xe5, 0x5e, 0xc0, - 0x70, 0x00, 0xe0, 0x53, 0x9e, 0x79, 0x17, 0x72, 0x5b, 0x0d, 0x5f, 0x0f, 0x84, 0x80, 0xe4, 0x4b, - 0x7e, 0x03, 0x60, 0x64, 0xc3, 0xa0, 0x03, 0xd6, 0xed, 0xdf, 0xe1, 0x58, 0x59, 0xcb, 0x93, 0xb2, - 0x5a, 0x34, 0xca, 0x8c, 0xd8, 0x6e, 0xfd, 0x46, 0xf8, 0xd9, 0x2a, 0x3f, 0x42, 0xa7, 0xe1, 0xb8, - 0x4d, 0x2c, 0xd3, 0x66, 0x6a, 0xd1, 0x20, 0xe5, 0x02, 0x8d, 0xfa, 0x13, 0xfe, 0xd9, 0x30, 0x1e, - 0x13, 0x87, 0xab, 0xfc, 0x0c, 0x9d, 0x83, 0x27, 0x5c, 0x25, 0x11, 0x14, 0x4f, 0x37, 0xc0, 0x75, - 0x91, 0x90, 0x89, 0x10, 0x0a, 0x8b, 0xe4, 0x8f, 0x41, 0x28, 0x09, 0x3f, 0x45, 0x01, 0xaf, 0x33, - 0x52, 0x41, 0x53, 0x30, 0xc8, 0x48, 0x55, 0xab, 0x32, 0x9e, 0x67, 0x61, 0xec, 0xee, 0x0e, 0xd1, - 0x7c, 0x24, 0xe8, 0xaf, 0x19, 0x05, 0xd1, 0xff, 0xb0, 0xb3, 0x44, 0x09, 0x18, 0x29, 0x10, 0xaa, - 0xdb, 0x06, 0x7f, 0x17, 0x47, 0x23, 0x82, 0x69, 0xdb, 0x11, 0x8a, 0xc1, 0x90, 0x77, 0xcd, 0xd1, - 0xb1, 0x04, 0x98, 0x0d, 0xe1, 0xd6, 0x1e, 0x61, 0x18, 0xe4, 0x97, 0x22, 0x28, 0x45, 0x16, 0x16, - 0xfb, 0x67, 0x6b, 0x37, 0x33, 0x79, 0x83, 0x1b, 0x2b, 0x55, 0x66, 0x37, 0xb0, 0x8b, 0x84, 0x34, - 0x18, 0x69, 0x1b, 0x94, 0xdc, 0x3c, 0xb8, 0x36, 0x24, 0x70, 0xe6, 0x35, 0x82, 0x40, 0x6f, 0xc7, - 0x44, 0x97, 0x21, 0x34, 0x77, 0xaa, 0xc4, 0x56, 0x9d, 0x31, 0x24, 0x1a, 0xe6, 0xc5, 0x1b, 0xeb, - 0x7a, 0xc2, 0x6d, 0x83, 0xec, 0x78, 0x79, 0x16, 0xe6, 0xda, 0xce, 0x49, 0x47, 0x03, 0x1a, 0x3f, - 0x8a, 0x06, 0x34, 0xf1, 0x4e, 0x0d, 0x68, 0x05, 0x86, 0x4a, 0x84, 0xf1, 0x16, 0xe2, 0xb6, 0xb2, - 0xc1, 0x9b, 0x10, 0x3e, 0x56, 0x12, 0x1b, 0xb4, 0x09, 0xa1, 0x9b, 0xa0, 0x94, 0x30, 0xb7, 0x49, - 0x0c, 0xdd, 0x78, 0xc2, 0x02, 0x22, 0x4b, 0x58, 0xec, 0x32, 0x8c, 0xb4, 0x45, 0xd6, 0xc9, 0xba, - 0x6d, 0xd2, 0x70, 0x33, 0xd4, 0x59, 0xa2, 0x13, 0x70, 0xb4, 0xae, 0x95, 0x6b, 0x5e, 0x72, 0x8a, - 0xcd, 0xa2, 0xef, 0x5f, 0x20, 0x76, 0x15, 0x4a, 0xdd, 0xb1, 0x1b, 0xc6, 0xfe, 0x7a, 0x20, 0x34, - 0x2a, 0x05, 0x93, 0x9f, 0x00, 0x38, 0xd6, 0x9e, 0x13, 0x68, 0x05, 0x8e, 0x1a, 0x8c, 0x54, 0x68, - 0x54, 0x74, 0x55, 0x79, 0xb8, 0x74, 0xc2, 0xc2, 0x18, 0x9d, 0x83, 0x41, 0x31, 0x85, 0x47, 0x7d, - 0x1c, 0x26, 0xda, 0x05, 0xa3, 0x38, 0x42, 0x7e, 0xb5, 0xae, 0x5e, 0x72, 0x1b, 0x8e, 0xaf, 0xf0, - 0xe6, 0x77, 0xf8, 0x81, 0x61, 0x16, 0x4a, 0x45, 0xcd, 0x28, 0xab, 0x46, 0xb1, 0xd5, 0x24, 0x79, - 0x01, 0x87, 0xf0, 0x84, 0x73, 0xbe, 0x5e, 0xf4, 0x9a, 0xdf, 0xfc, 0xef, 0x00, 0x9e, 0xec, 0x39, - 0x26, 0xa0, 0x18, 0x9c, 0x5a, 0x53, 0x72, 0x2a, 0xce, 0xde, 0x54, 0x57, 0xb7, 0xf0, 0x8d, 0x4c, - 0x4e, 0x5d, 0x51, 0x56, 0x33, 0xb7, 0x36, 0x72, 0xd2, 0x08, 0xfa, 0x1b, 0x9c, 0xee, 0x92, 0xad, - 0x6e, 0x61, 0x75, 0x19, 0x2b, 0x99, 0x9c, 0x22, 0x01, 0x14, 0x87, 0xb1, 0x1e, 0x62, 0xac, 0xdc, - 0xdc, 0xc8, 0x2c, 0x2b, 0x92, 0x0f, 0x4d, 0xc3, 0x93, 0x5d, 0xf2, 0x6c, 0x2e, 0x93, 0xbb, 0x95, - 0x95, 0xfc, 0xe8, 0x14, 0xfc, 0x4b, 0x97, 0x08, 0x2b, 0x99, 0x15, 0x29, 0x80, 0xce, 0xc0, 0xc4, - 0x01, 0xc1, 0xaa, 0x82, 0xf1, 0xfa, 0xe6, 0x9a, 0xba, 0xb5, 0x74, 0x5d, 0x59, 0xce, 0x65, 0xa5, - 0xd1, 0x1e, 0x5a, 0x4b, 0x78, 0xeb, 0x3f, 0xca, 0xa6, 0x50, 0x56, 0x36, 0x97, 0x95, 0xac, 0x14, - 0x5c, 0xf8, 0x3a, 0x0c, 0xfd, 0x99, 0x9b, 0xeb, 0xe8, 0x67, 0x00, 0x83, 0x62, 0x72, 0x41, 0xc3, - 0xcc, 0x37, 0xb1, 0xb3, 0x83, 0x29, 0xbb, 0xe3, 0x5f, 0xad, 0xf9, 0x30, 0x9a, 0x2e, 0x5e, 0xbc, - 0xab, 0xa7, 0x28, 0xd1, 0x6b, 0x36, 0xa9, 0x10, 0x7a, 0x27, 0x95, 0xd7, 0xa8, 0xa1, 0xa7, 0x6a, - 0x94, 0xd8, 0x67, 0xeb, 0x84, 0xa6, 0x0c, 0x33, 0xe5, 0x82, 0xa4, 0x76, 0x6c, 0x83, 0x91, 0x7b, - 0x3f, 0xfd, 0xfa, 0x99, 0xef, 0x4a, 0xf2, 0x92, 0xfb, 0x6f, 0x33, 0xdd, 0x0a, 0x37, 0x4d, 0x7f, - 0xe8, 0xb5, 0x01, 0xb9, 0x75, 0xb8, 0xdb, 0xf5, 0x0f, 0x8d, 0x2e, 0x82, 0x79, 0xf4, 0x0c, 0x40, - 0xff, 0x1a, 0x61, 0x68, 0x76, 0x80, 0x19, 0x51, 0xd0, 0x9a, 0x1b, 0x78, 0x9a, 0x4c, 0xd6, 0x1f, - 0x7d, 0xef, 0x03, 0xcd, 0x87, 0xd1, 0xf3, 0xbd, 0x79, 0x55, 0xcc, 0xaa, 0xc1, 0xcc, 0x03, 0xd4, - 0x6c, 0xa2, 0x15, 0x38, 0xb3, 0x4b, 0xe8, 0x62, 0x2f, 0x66, 0x6f, 0x26, 0x24, 0x64, 0xbb, 0xe8, - 0x09, 0x80, 0x01, 0xa7, 0xd2, 0xd0, 0xdc, 0x20, 0xd5, 0x28, 0x68, 0xcd, 0x0f, 0x5e, 0xb8, 0x49, - 0xf3, 0xdd, 0x78, 0x9d, 0x43, 0xf2, 0x70, 0xbc, 0xd0, 0x6f, 0x00, 0x1e, 0x73, 0xa7, 0x5d, 0x34, - 0xd4, 0x50, 0x1c, 0x4b, 0x0d, 0xa8, 0xed, 0x32, 0xfb, 0x18, 0x1c, 0x36, 0x0d, 0x37, 0x62, 0x6b, - 0x87, 0x4c, 0xc3, 0x2e, 0xa5, 0x5d, 0x27, 0x2d, 0x7f, 0x00, 0x30, 0x28, 0xda, 0xdb, 0xdb, 0x6a, - 0xae, 0xa3, 0x09, 0xc6, 0xa6, 0x64, 0xf1, 0xdd, 0x43, 0xf6, 0xbe, 0x7b, 0xc8, 0x4a, 0xc5, 0x62, - 0x8d, 0x24, 0x3d, 0x2c, 0xad, 0xc5, 0xf9, 0xc3, 0xe5, 0xe0, 0x22, 0x98, 0x8f, 0xe5, 0x1f, 0xec, - 0x01, 0xdf, 0xb3, 0x3d, 0x70, 0xba, 0x2f, 0x01, 0xf1, 0xa6, 0x7b, 0xbe, 0x07, 0x40, 0x73, 0x0f, - 0xcc, 0x0d, 0xfc, 0x6a, 0xbc, 0xf7, 0x24, 0xea, 0x93, 0xc0, 0xd2, 0xe7, 0xe0, 0xf1, 0xd5, 0xd1, - 0x65, 0x7c, 0x6b, 0x65, 0xe3, 0xe9, 0x8b, 0xf8, 0xc8, 0xf3, 0x17, 0xf1, 0x91, 0x57, 0x2f, 0xe2, - 0xe0, 0xa3, 0x66, 0x1c, 0x7c, 0xdb, 0x8c, 0x83, 0x47, 0xcd, 0x38, 0x78, 0xda, 0x8c, 0x83, 0x5f, - 0x9a, 0x71, 0xf0, 0xb2, 0x19, 0x1f, 0x79, 0xd5, 0x8c, 0x83, 0x4f, 0xf7, 0xe3, 0x23, 0x0f, 0xf6, - 0xe3, 0xe0, 0xe9, 0x7e, 0x7c, 0xe4, 0xf9, 0x7e, 0x7c, 0xe4, 0xff, 0xb8, 0x64, 0x5a, 0xdb, 0x25, - 0xb9, 0x6e, 0x3a, 0xe3, 0xa7, 0xad, 0xc9, 0x35, 0x9a, 0xe6, 0x0b, 0xe7, 0x8f, 0x58, 0xca, 0xb2, - 0xcd, 0xba, 0x51, 0x20, 0x76, 0xca, 0x13, 0xa7, 0xad, 0x7c, 0xc9, 0x4c, 0x93, 0xbb, 0xcc, 0xfd, - 0xde, 0xd2, 0xf3, 0xe3, 0x4f, 0x3e, 0xc8, 0xef, 0xff, 0xc2, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, - 0xed, 0xaa, 0x36, 0x0f, 0x25, 0x13, 0x00, 0x00, + 0x84, 0x87, 0xed, 0x17, 0xad, 0x52, 0x87, 0x90, 0xc6, 0x84, 0xa4, 0xb2, 0x2d, 0x1b, 0xa7, 0xfe, + 0x93, 0x8e, 0x94, 0x50, 0x4a, 0x61, 0x59, 0xad, 0x46, 0xca, 0xd6, 0x92, 0x76, 0xbb, 0x33, 0x92, + 0x23, 0x8a, 0xa1, 0xe4, 0xd0, 0x53, 0x0f, 0x29, 0x69, 0x29, 0x94, 0x1c, 0x0a, 0xa5, 0xd0, 0x53, + 0xcf, 0x05, 0x5f, 0x42, 0x29, 0x34, 0xe4, 0x50, 0x42, 0x7b, 0xc9, 0xb1, 0x96, 0x7b, 0xc8, 0x31, + 0x94, 0x5e, 0xda, 0x53, 0xd9, 0x99, 0x5d, 0x45, 0x92, 0x15, 0x45, 0x72, 0x9d, 0x93, 0x76, 0xe6, + 0xfb, 0xbe, 0xdf, 0x7c, 0xbf, 0xf9, 0xfe, 0xec, 0xa7, 0x85, 0xaf, 0xd5, 0x08, 0x95, 0x75, 0x23, + 0x49, 0xb5, 0x5b, 0xa4, 0xac, 0x26, 0x2b, 0x84, 0x6d, 0x1b, 0xd6, 0x96, 0x62, 0x1a, 0x25, 0x5d, + 0xab, 0x27, 0xcd, 0x6a, 0xae, 0xa4, 0x6b, 0x8a, 0x66, 0x55, 0xf3, 0xaa, 0xa9, 0xcb, 0xa6, 0x65, + 0x30, 0x03, 0x4d, 0x09, 0x13, 0x59, 0x98, 0xc8, 0xed, 0x26, 0x91, 0x44, 0x51, 0x67, 0xb7, 0xaa, + 0x39, 0x59, 0x33, 0xca, 0xc9, 0xa2, 0x51, 0x34, 0x92, 0xdc, 0x28, 0x57, 0x2d, 0xf0, 0x15, 0x5f, + 0xf0, 0x27, 0x01, 0x16, 0x99, 0x2a, 0x1a, 0x46, 0xb1, 0x44, 0x92, 0xaa, 0xa9, 0x27, 0xd5, 0x4a, + 0xc5, 0x60, 0x2a, 0xd3, 0x8d, 0x0a, 0x75, 0xa4, 0xff, 0x76, 0xa4, 0x4d, 0x0c, 0x52, 0x36, 0x59, + 0xdd, 0x11, 0x46, 0xda, 0x5d, 0x27, 0x96, 0x65, 0x58, 0xae, 0xe1, 0x4c, 0x4f, 0x5a, 0x46, 0xee, + 0x3d, 0xa2, 0x31, 0x47, 0x75, 0xba, 0xa7, 0x2a, 0xab, 0x9b, 0xa4, 0xe9, 0x4d, 0xbb, 0xa6, 0x61, + 0xb6, 0xba, 0x3a, 0xd9, 0x2e, 0x6c, 0xb5, 0x8b, 0xb7, 0x8b, 0x6a, 0x84, 0x92, 0x4a, 0xad, 0xc3, + 0x3c, 0xd6, 0xa1, 0xa3, 0x93, 0x6d, 0xa5, 0x4d, 0x23, 0xfe, 0x2d, 0x80, 0xa3, 0x8b, 0x16, 0x51, + 0x19, 0xc1, 0xe4, 0xfd, 0x2a, 0xa1, 0x0c, 0x5d, 0x85, 0x81, 0x32, 0x61, 0x6a, 0x5e, 0x65, 0x6a, + 0x18, 0xc4, 0xc0, 0x74, 0x68, 0xee, 0xb4, 0xdc, 0x1e, 0x9b, 0x4d, 0x4e, 0x54, 0x58, 0xad, 0x13, + 0xa6, 0x66, 0xeb, 0x26, 0xc1, 0x4d, 0x23, 0xf4, 0x16, 0xf4, 0x51, 0x93, 0x68, 0x61, 0x0f, 0x37, + 0x3e, 0x2b, 0xf7, 0x0a, 0xac, 0x2c, 0x50, 0x32, 0x26, 0xd1, 0x6c, 0x94, 0x85, 0xf1, 0x2f, 0x76, + 0x46, 0x6c, 0x63, 0xb9, 0xa8, 0x29, 0xf6, 0x2f, 0xe6, 0x50, 0xf3, 0xc1, 0x47, 0x57, 0xfc, 0xe2, + 0xd4, 0xf8, 0x5f, 0x00, 0x8e, 0xb9, 0x0e, 0x53, 0xd3, 0xa8, 0x50, 0x82, 0x2e, 0x1f, 0xf0, 0x38, + 0xd6, 0xd5, 0xe3, 0x15, 0xc2, 0xba, 0xb8, 0xbb, 0x09, 0xc7, 0x69, 0x9d, 0x32, 0x52, 0x56, 0x9a, + 0x20, 0x5e, 0x0e, 0xf2, 0xbf, 0x0e, 0x90, 0x0c, 0xd7, 0x3a, 0x08, 0x35, 0x26, 0xcc, 0xd7, 0x5d, + 0xc0, 0x8d, 0x36, 0xfe, 0x33, 0xbd, 0xf9, 0xaf, 0x10, 0x36, 0x00, 0xf9, 0x06, 0x80, 0x63, 0x98, + 0x98, 0x25, 0x55, 0x6b, 0x86, 0xeb, 0x8d, 0x03, 0xe4, 0xcf, 0x74, 0x25, 0xef, 0x98, 0x75, 0xb9, + 0x00, 0xdc, 0xe6, 0x6f, 0xa2, 0xb7, 0xbf, 0x0e, 0xcc, 0x4b, 0x7c, 0x46, 0x49, 0x28, 0x59, 0x84, + 0x1a, 0x55, 0x4b, 0x23, 0x4a, 0x8d, 0x58, 0x54, 0x37, 0x2a, 0xfc, 0x56, 0x83, 0x0b, 0xbe, 0xa7, + 0xbb, 0x00, 0xe0, 0x71, 0x57, 0x7a, 0x53, 0x08, 0x5b, 0x49, 0x1e, 0x87, 0xe3, 0x4d, 0x8e, 0x22, + 0xc2, 0xf1, 0xfb, 0x00, 0xc2, 0x15, 0xc2, 0x5c, 0xce, 0x53, 0x30, 0x58, 0x51, 0xcb, 0x84, 0x9a, + 0xaa, 0x46, 0x38, 0xe9, 0x20, 0x7e, 0xbe, 0x81, 0x10, 0xf4, 0xd9, 0x0b, 0xce, 0x27, 0x88, 0xf9, + 0x33, 0x7a, 0x17, 0xda, 0x27, 0x72, 0x30, 0xa5, 0x60, 0x58, 0x65, 0x95, 0x71, 0x77, 0xc6, 0xe6, + 0xce, 0xbf, 0x34, 0x3c, 0xae, 0x13, 0xcb, 0xdc, 0x6c, 0xd1, 0xc8, 0x13, 0x3c, 0x66, 0xb5, 0xed, + 0xc5, 0x3f, 0xf3, 0xc3, 0x50, 0x8b, 0x26, 0x5a, 0x83, 0x21, 0x8d, 0xa7, 0x28, 0x3f, 0xcb, 0xb9, + 0xd8, 0xff, 0xf7, 0x53, 0x08, 0x0e, 0x43, 0x0c, 0x85, 0xbd, 0x8d, 0x8f, 0x36, 0xe1, 0x88, 0x25, + 0xee, 0x43, 0xc0, 0x79, 0xfb, 0xa9, 0xab, 0xf6, 0x2c, 0xc1, 0x21, 0x07, 0x81, 0x03, 0x76, 0x0b, + 0x8e, 0xaf, 0x47, 0x70, 0xda, 0x0a, 0x6c, 0xf8, 0x28, 0x0a, 0xec, 0xd8, 0x91, 0x14, 0x98, 0xff, + 0x68, 0x0a, 0x0c, 0xad, 0x42, 0x3f, 0x65, 0x2a, 0xab, 0xd2, 0xf0, 0x97, 0xf7, 0x41, 0xcc, 0x3b, + 0x1d, 0x9a, 0x9b, 0xed, 0x8d, 0x99, 0xe1, 0xda, 0xc2, 0xd1, 0x05, 0xef, 0x83, 0x1d, 0x80, 0x1d, + 0x00, 0xb4, 0x0a, 0x8f, 0x5b, 0xa4, 0x40, 0x2c, 0x4b, 0xaf, 0x14, 0x15, 0xf1, 0x42, 0xa0, 0xe1, + 0x00, 0xc7, 0x9c, 0x7a, 0x41, 0x59, 0x16, 0x38, 0x47, 0xa9, 0x69, 0x26, 0xf6, 0x29, 0xba, 0x09, + 0xc3, 0x79, 0x52, 0x22, 0x8c, 0xe4, 0x15, 0x21, 0x23, 0xf9, 0x26, 0x62, 0xb0, 0x0f, 0xc4, 0x09, + 0xc7, 0x1a, 0x3b, 0xc6, 0x2e, 0xee, 0xdb, 0x70, 0x32, 0xaf, 0x53, 0x35, 0x57, 0xea, 0x06, 0x0c, + 0xfb, 0x00, 0x3e, 0xe5, 0x9a, 0x77, 0x20, 0xb7, 0xd4, 0xf0, 0x35, 0x5f, 0x00, 0x48, 0x9e, 0xf8, + 0xd7, 0x00, 0x86, 0xd6, 0x74, 0xda, 0x67, 0xdd, 0xfe, 0x17, 0x8e, 0x94, 0xd4, 0x1c, 0x29, 0x29, + 0x05, 0xbd, 0xc4, 0x88, 0xe5, 0xd4, 0x6f, 0x88, 0xef, 0x2d, 0xf3, 0x2d, 0x74, 0x1a, 0x8e, 0x5a, + 0xc4, 0x34, 0x2c, 0xa6, 0x14, 0x74, 0x52, 0xca, 0xd3, 0xb0, 0x37, 0xe6, 0x9d, 0x0e, 0xe2, 0x11, + 0xb1, 0xb9, 0xcc, 0xf7, 0xd0, 0x39, 0x78, 0xc2, 0x51, 0x12, 0x41, 0x71, 0x75, 0x7d, 0x5c, 0x17, + 0x09, 0x99, 0x08, 0xa1, 0xb0, 0x88, 0xff, 0xe0, 0x87, 0x92, 0xf0, 0x53, 0x14, 0xf0, 0x2a, 0x23, + 0x65, 0x34, 0x01, 0xfd, 0x8c, 0x54, 0xd4, 0x0a, 0xe3, 0x79, 0x16, 0xc4, 0xce, 0xea, 0x10, 0xcd, + 0x47, 0x82, 0xde, 0xaa, 0x9e, 0x17, 0xfd, 0x0f, 0xdb, 0x8f, 0x28, 0x06, 0x43, 0x79, 0x42, 0x35, + 0x4b, 0xe7, 0xef, 0xe2, 0x70, 0x48, 0x30, 0x6d, 0xd9, 0x42, 0x11, 0x18, 0x70, 0xaf, 0x39, 0x3c, + 0x12, 0x03, 0xd3, 0x01, 0xdc, 0x5c, 0x23, 0x0c, 0xfd, 0xfc, 0x52, 0x04, 0xa5, 0xd0, 0xdc, 0x7c, + 0xef, 0x6c, 0xed, 0x64, 0x26, 0xaf, 0x71, 0xe3, 0x74, 0x85, 0x59, 0x75, 0xec, 0x20, 0x21, 0x15, + 0x86, 0x5a, 0x06, 0x25, 0x27, 0x0f, 0xae, 0x0e, 0x08, 0x9c, 0x7a, 0x8e, 0x20, 0xd0, 0x5b, 0x31, + 0xd1, 0x25, 0x08, 0x8d, 0xed, 0x0a, 0xb1, 0x14, 0x7b, 0x0c, 0x09, 0x07, 0x79, 0xf1, 0x46, 0x3a, + 0x4e, 0xb8, 0xa9, 0x93, 0x6d, 0x37, 0xcf, 0x82, 0x5c, 0xdb, 0xde, 0x69, 0x6b, 0x40, 0xa3, 0x47, + 0xd1, 0x80, 0xc6, 0xfe, 0x51, 0x03, 0x5a, 0x82, 0x81, 0x22, 0x61, 0xbc, 0x85, 0x38, 0xad, 0xac, + 0xff, 0x26, 0x84, 0x8f, 0x15, 0xc5, 0x02, 0x6d, 0x40, 0xe8, 0x24, 0x28, 0x25, 0xcc, 0x69, 0x12, + 0x03, 0x37, 0x9e, 0xa0, 0x80, 0xc8, 0x10, 0x16, 0xb9, 0x04, 0x43, 0x2d, 0x91, 0xb5, 0xb3, 0x6e, + 0x8b, 0xd4, 0x9d, 0x0c, 0xb5, 0x1f, 0xd1, 0x09, 0x38, 0x5c, 0x53, 0x4b, 0x55, 0x37, 0x39, 0xc5, + 0x62, 0xde, 0xf3, 0x3a, 0x88, 0x5c, 0x81, 0x52, 0x67, 0xec, 0x06, 0xb1, 0xbf, 0xe6, 0x0b, 0x0c, + 0x4b, 0xfe, 0xf8, 0x47, 0x00, 0x8e, 0xb4, 0xe6, 0x04, 0x5a, 0x82, 0xc3, 0x3a, 0x23, 0x65, 0x1a, + 0x16, 0x5d, 0x55, 0x1e, 0x2c, 0x9d, 0xb0, 0x30, 0x46, 0xe7, 0xa0, 0x5f, 0x4c, 0xe1, 0x61, 0x0f, + 0x87, 0x09, 0x77, 0xc0, 0xa4, 0x6d, 0x21, 0xbf, 0x5a, 0x47, 0x2f, 0xbe, 0x05, 0x47, 0x97, 0x78, + 0xf3, 0x3b, 0xfc, 0xc0, 0x30, 0x0d, 0xa5, 0x82, 0xaa, 0x97, 0x14, 0xbd, 0xd0, 0x6c, 0x92, 0xbc, + 0x80, 0x03, 0x78, 0xcc, 0xde, 0x5f, 0x2d, 0xb8, 0xcd, 0x6f, 0xf6, 0x77, 0x00, 0x4f, 0x76, 0x1d, + 0x13, 0x50, 0x04, 0x4e, 0xac, 0xa4, 0xb3, 0x0a, 0xce, 0x5c, 0x57, 0x96, 0x37, 0xf1, 0x7a, 0x2a, + 0xab, 0x2c, 0xa5, 0x97, 0x53, 0x37, 0xd6, 0xb2, 0xd2, 0x10, 0xfa, 0x0f, 0x9c, 0xec, 0x90, 0x2d, + 0x6f, 0x62, 0x65, 0x11, 0xa7, 0x53, 0xd9, 0xb4, 0x04, 0x50, 0x14, 0x46, 0xba, 0x88, 0x71, 0xfa, + 0xfa, 0x5a, 0x6a, 0x31, 0x2d, 0x79, 0xd0, 0x24, 0x3c, 0xd9, 0x21, 0xcf, 0x64, 0x53, 0xd9, 0x1b, + 0x19, 0xc9, 0x8b, 0x4e, 0xc1, 0x7f, 0x75, 0x88, 0x70, 0x3a, 0xb5, 0x24, 0xf9, 0xd0, 0x19, 0x18, + 0x3b, 0x20, 0x58, 0x4e, 0x63, 0xbc, 0xba, 0xb1, 0xa2, 0x6c, 0x2e, 0x5c, 0x4b, 0x2f, 0x66, 0x33, + 0xd2, 0x70, 0x17, 0xad, 0x05, 0xbc, 0xf9, 0x66, 0x7a, 0x43, 0x28, 0xa7, 0x37, 0x16, 0xd3, 0x19, + 0xc9, 0x3f, 0xf7, 0x3d, 0x84, 0xde, 0xd4, 0xf5, 0x55, 0xf4, 0x27, 0x80, 0x7e, 0x31, 0xb9, 0xa0, + 0x41, 0xe6, 0x9b, 0xc8, 0xd9, 0xfe, 0x94, 0x9d, 0xf1, 0xef, 0x1e, 0x68, 0xfc, 0x18, 0x5e, 0x2f, + 0x5c, 0xb8, 0xad, 0x25, 0x28, 0xd1, 0xaa, 0x16, 0x29, 0x13, 0x7a, 0x2b, 0x91, 0x53, 0xa9, 0xae, + 0x25, 0xaa, 0x94, 0x58, 0x67, 0x3b, 0x45, 0x94, 0xa9, 0x95, 0xbc, 0x6a, 0xe5, 0x85, 0xb4, 0x46, + 0x68, 0x42, 0x37, 0x12, 0xce, 0x19, 0x89, 0x6d, 0x4b, 0x67, 0xe4, 0xce, 0x2f, 0xbf, 0xdd, 0xf3, + 0x5c, 0x8e, 0x5f, 0x74, 0xfe, 0x8c, 0x26, 0x9b, 0xd9, 0x40, 0x93, 0x1f, 0xb8, 0x5d, 0x42, 0x6e, + 0x6e, 0xee, 0x74, 0xfc, 0x81, 0xa3, 0xf3, 0x60, 0x16, 0xfd, 0x01, 0xa0, 0x77, 0x85, 0x30, 0x34, + 0xdd, 0xc7, 0x08, 0x29, 0x58, 0xcf, 0xf4, 0x3d, 0x6c, 0xc6, 0x3f, 0x07, 0x0f, 0xbf, 0xf3, 0xd8, + 0xb4, 0x71, 0x77, 0xda, 0x65, 0xa3, 0xa2, 0x33, 0xa3, 0x07, 0x73, 0x57, 0xa1, 0x83, 0xbc, 0x45, + 0xd4, 0x3c, 0xe7, 0x7e, 0x11, 0x5d, 0xe8, 0xc6, 0xfd, 0xc5, 0x94, 0x85, 0x6c, 0x07, 0x3d, 0x03, + 0xd0, 0x67, 0x97, 0x2a, 0x9a, 0xe9, 0xa7, 0x9c, 0x05, 0xf1, 0xd9, 0xfe, 0x2b, 0x3f, 0x7e, 0xf7, + 0x55, 0x33, 0x3f, 0x87, 0xe4, 0xc1, 0x98, 0xa3, 0x8f, 0x3d, 0xf0, 0x98, 0x33, 0x50, 0xa3, 0x81, + 0xe6, 0xee, 0x48, 0xa2, 0x4f, 0x6d, 0x87, 0xfb, 0x57, 0xaf, 0x28, 0xd1, 0xd7, 0x22, 0x2b, 0x87, + 0x4c, 0xf4, 0x0e, 0xa5, 0x1d, 0x3b, 0xf1, 0xf7, 0x00, 0xf4, 0x8b, 0xfe, 0xfa, 0xb2, 0xa2, 0x6f, + 0xeb, 0xc2, 0x91, 0x09, 0x59, 0x7c, 0x78, 0x91, 0xdd, 0x0f, 0x2f, 0x72, 0xba, 0x6c, 0xb2, 0x7a, + 0xfc, 0x93, 0x57, 0xc4, 0x7a, 0x7e, 0xf6, 0x70, 0x29, 0x3e, 0x0f, 0x66, 0x23, 0xb9, 0x07, 0xbb, + 0xc0, 0xf3, 0xf3, 0x2e, 0x38, 0xdd, 0x93, 0x9f, 0x78, 0x13, 0x3f, 0xd9, 0x05, 0xa0, 0xb1, 0x0b, + 0x66, 0xfa, 0x7e, 0x75, 0xdf, 0xf9, 0x29, 0xec, 0x91, 0xc0, 0xc2, 0xa7, 0xe0, 0xd1, 0x95, 0xe1, + 0x45, 0x7c, 0x63, 0x69, 0xed, 0xf1, 0x5e, 0x74, 0xe8, 0xc9, 0x5e, 0x74, 0xe8, 0xd9, 0x5e, 0x14, + 0x7c, 0xd8, 0x88, 0x82, 0x6f, 0x1a, 0x51, 0xf0, 0xb0, 0x11, 0x05, 0x8f, 0x1b, 0x51, 0xf0, 0x6b, + 0x23, 0x0a, 0x9e, 0x36, 0xa2, 0x43, 0xcf, 0x1a, 0x51, 0x70, 0x77, 0x3f, 0x3a, 0xf4, 0x60, 0x3f, + 0x0a, 0x1e, 0xef, 0x47, 0x87, 0x9e, 0xec, 0x47, 0x87, 0xde, 0xc1, 0x45, 0xc3, 0xdc, 0x2a, 0xca, + 0x35, 0xc3, 0x1e, 0x8f, 0x2d, 0x55, 0xae, 0xd2, 0x24, 0x7f, 0xb0, 0xff, 0x28, 0x26, 0x4c, 0xcb, + 0xa8, 0xe9, 0x79, 0x62, 0x25, 0x5c, 0x71, 0xd2, 0xcc, 0x15, 0x8d, 0x24, 0xb9, 0xcd, 0x9c, 0xef, + 0x41, 0x5d, 0x3f, 0x4e, 0xe5, 0xfc, 0x3c, 0x3c, 0xe7, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x9b, + 0x0c, 0x8a, 0xf2, 0xc5, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/network_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/network_policy/public_crudapi.vesapi.go index 846b8f39a..dcd63bc64 100644 --- a/pbgo/extschema/schema/network_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/network_policy/public_crudapi.vesapi.go @@ -3212,10 +3212,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3272,10 +3276,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3334,10 +3342,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_policy/public_custom_data_api.pb.go b/pbgo/extschema/schema/network_policy/public_custom_data_api.pb.go index 1d137e406..f7a00c032 100644 --- a/pbgo/extschema/schema/network_policy/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/network_policy/public_custom_data_api.pb.go @@ -563,61 +563,63 @@ func init() { } var fileDescriptor_c3993df7e9b98d54 = []byte{ - // 862 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0xcf, 0x6f, 0xe3, 0x44, - 0x14, 0xce, 0x38, 0x3f, 0xb6, 0x79, 0x61, 0x97, 0x30, 0x8b, 0x90, 0x37, 0x04, 0x53, 0x05, 0x21, - 0x95, 0x15, 0xb1, 0xb5, 0x41, 0xda, 0x15, 0x88, 0x4b, 0x1a, 0x82, 0x88, 0xd4, 0x6d, 0x8b, 0x1b, - 0x90, 0xe0, 0x62, 0x4d, 0xec, 0xa9, 0x3b, 0xac, 0xe3, 0x19, 0x3c, 0xe3, 0x40, 0x85, 0x90, 0x56, - 0x7b, 0x44, 0x1c, 0x90, 0xb8, 0x70, 0x83, 0x23, 0x67, 0x2e, 0x48, 0xec, 0xa5, 0x37, 0x38, 0xa1, - 0x0a, 0x2e, 0x2b, 0x0e, 0x88, 0xa6, 0x1c, 0xe0, 0xd6, 0x3f, 0x01, 0x65, 0xec, 0xed, 0x36, 0x6d, - 0x55, 0x94, 0xde, 0xde, 0xf3, 0xf7, 0xde, 0x37, 0xef, 0xbd, 0xf9, 0xfc, 0x06, 0x5e, 0x9f, 0x50, - 0x69, 0x33, 0xee, 0x48, 0x7f, 0x87, 0x8e, 0x89, 0x13, 0x53, 0xf5, 0x09, 0x4f, 0xee, 0x79, 0x82, - 0x47, 0xcc, 0xdf, 0x75, 0x44, 0x3a, 0x8a, 0x98, 0xef, 0xf9, 0xa9, 0x54, 0x7c, 0xec, 0x05, 0x44, - 0x11, 0x8f, 0x08, 0x66, 0x8b, 0x84, 0x2b, 0x8e, 0x9b, 0x59, 0xaa, 0x9d, 0xa5, 0xda, 0xf3, 0xa9, - 0x8d, 0x76, 0xc8, 0xd4, 0x4e, 0x3a, 0xb2, 0x7d, 0x3e, 0x76, 0x42, 0x1e, 0x72, 0x47, 0x27, 0x8d, - 0xd2, 0x6d, 0xed, 0x69, 0x47, 0x5b, 0x19, 0x59, 0xa3, 0x19, 0x72, 0x1e, 0x46, 0xd4, 0x21, 0x82, - 0x39, 0x24, 0x8e, 0xb9, 0x22, 0x8a, 0xf1, 0x58, 0xe6, 0xe8, 0xf3, 0xf3, 0x55, 0x72, 0x71, 0x12, - 0xbc, 0x31, 0x0f, 0xaa, 0x5d, 0x41, 0x1f, 0x43, 0xcd, 0x79, 0x68, 0x42, 0x22, 0x16, 0x10, 0x45, - 0x73, 0xb4, 0x75, 0x0a, 0xa5, 0x92, 0xc6, 0x93, 0x79, 0xf2, 0xd6, 0x9f, 0x06, 0x98, 0xeb, 0x59, - 0x67, 0x9b, 0xba, 0xb1, 0x77, 0x98, 0x92, 0x2e, 0xfd, 0x38, 0xa5, 0x52, 0xe1, 0x26, 0x54, 0x63, - 0x32, 0xa6, 0x52, 0x10, 0x9f, 0x9a, 0x68, 0x19, 0xad, 0x54, 0xdd, 0x27, 0x1f, 0xb0, 0x07, 0x4f, - 0x45, 0x64, 0x44, 0x23, 0x6f, 0x9b, 0x45, 0x8a, 0x26, 0xa6, 0xb1, 0x5c, 0x5c, 0xa9, 0x75, 0xde, - 0xb4, 0x2f, 0x1a, 0x9b, 0x3d, 0x77, 0xd6, 0x5d, 0xaa, 0x12, 0xe6, 0xaf, 0xcd, 0x48, 0xde, 0xd6, - 0x1c, 0x6e, 0x2d, 0x7a, 0xe2, 0xe0, 0x77, 0x61, 0x29, 0x4c, 0x78, 0x2a, 0xbc, 0xd1, 0xae, 0x59, - 0x5c, 0x2e, 0xae, 0x5c, 0xeb, 0xdc, 0xbe, 0x1c, 0xb9, 0x7b, 0x45, 0xf3, 0xac, 0xee, 0xe2, 0x57, - 0x00, 0xa4, 0x22, 0x89, 0xf2, 0x14, 0x1b, 0x53, 0xb3, 0x34, 0x6b, 0x69, 0x15, 0x7e, 0xfa, 0x77, - 0xaf, 0x58, 0x4e, 0x8a, 0xdf, 0x94, 0x90, 0x5b, 0xd5, 0xe8, 0x90, 0x8d, 0x29, 0x7e, 0x19, 0x96, - 0x68, 0x1c, 0x64, 0x81, 0xe5, 0x33, 0x81, 0x57, 0x68, 0x1c, 0xe8, 0x30, 0x0b, 0x4a, 0x52, 0x51, - 0x61, 0x56, 0xe6, 0x42, 0xbe, 0x2b, 0x21, 0x57, 0x7f, 0x6f, 0xfd, 0x80, 0xc0, 0xba, 0xb8, 0x69, - 0xbc, 0x06, 0x65, 0xdd, 0xb6, 0x1e, 0xf1, 0xe5, 0x9b, 0xcc, 0x48, 0xf0, 0xab, 0x60, 0x70, 0x61, - 0x1a, 0x9a, 0xaa, 0x79, 0x8a, 0xea, 0x44, 0xf8, 0x86, 0x70, 0x0d, 0x2e, 0xf0, 0xb3, 0x50, 0x9e, - 0x90, 0x28, 0xa5, 0x66, 0x51, 0x5f, 0x6f, 0xe6, 0xb4, 0x7e, 0x44, 0x70, 0xfd, 0x8c, 0x2a, 0x06, - 0xc1, 0xff, 0x08, 0xe2, 0x39, 0xa8, 0x64, 0x35, 0xea, 0xd3, 0xab, 0x6e, 0xee, 0xe1, 0x17, 0x00, - 0x32, 0xcb, 0x93, 0x54, 0xe5, 0x07, 0x55, 0xb3, 0x2f, 0x5b, 0x54, 0xe1, 0x17, 0xa1, 0x96, 0xc3, - 0x49, 0x1a, 0xe5, 0x97, 0xe2, 0xe6, 0x19, 0x6e, 0x1a, 0x69, 0x5e, 0xe2, 0xcf, 0x44, 0x9b, 0xdd, - 0x83, 0x9b, 0x7b, 0x18, 0x43, 0x49, 0x32, 0x45, 0xb3, 0xd1, 0xbb, 0xda, 0x6e, 0x7d, 0x81, 0xe0, - 0x99, 0x33, 0x95, 0xe3, 0x2e, 0x18, 0x2c, 0xd0, 0x05, 0xd7, 0x3a, 0xb7, 0x16, 0x18, 0x6f, 0xd6, - 0xb6, 0x6b, 0xb0, 0x00, 0x77, 0xa0, 0x32, 0xd6, 0xd3, 0xcb, 0x75, 0xde, 0x38, 0x77, 0xb4, 0xef, - 0xcf, 0xc6, 0xe7, 0xe6, 0x91, 0xad, 0xfb, 0x08, 0x6e, 0x9c, 0xf3, 0x73, 0x49, 0xc1, 0x63, 0x49, - 0x71, 0x0f, 0x4a, 0xb3, 0x8d, 0x63, 0x22, 0xcd, 0xe7, 0x2c, 0x58, 0x96, 0xab, 0x93, 0x8f, 0xe5, - 0x67, 0xcc, 0xc9, 0xef, 0xc8, 0xc8, 0xe5, 0x77, 0x33, 0x3a, 0xf5, 0x7b, 0x9f, 0x50, 0x00, 0xbe, - 0x0a, 0xd5, 0xf5, 0xee, 0xdd, 0xfe, 0xd6, 0x66, 0xb7, 0xd7, 0xaf, 0x17, 0x30, 0x40, 0x65, 0x73, - 0x63, 0x6d, 0xd0, 0xfb, 0xa0, 0x8e, 0xf0, 0x35, 0x80, 0xcc, 0xf6, 0xb6, 0xfa, 0xc3, 0xba, 0x81, - 0x9f, 0x86, 0x5a, 0xee, 0xbb, 0xef, 0xad, 0xf5, 0xeb, 0xc5, 0x59, 0x70, 0xb7, 0x37, 0x1c, 0x6c, - 0xac, 0xd7, 0x4b, 0x78, 0x09, 0x4a, 0x5b, 0x83, 0x61, 0xbf, 0x5e, 0xee, 0x7c, 0x6b, 0xc0, 0xd5, - 0x9e, 0x5e, 0xa6, 0x6f, 0x11, 0x45, 0xba, 0x9b, 0x03, 0xfc, 0xc7, 0xb9, 0xf7, 0x71, 0x7b, 0xd1, - 0x66, 0xb3, 0x85, 0xd4, 0xb8, 0xb3, 0x70, 0x5e, 0x36, 0xeb, 0xd6, 0x70, 0xfa, 0xb3, 0x79, 0x7d, - 0x42, 0x65, 0x9b, 0xf1, 0x76, 0x9e, 0xd4, 0x4e, 0x28, 0x09, 0x1e, 0xfc, 0xfe, 0xf7, 0xd7, 0xc6, - 0x9d, 0x56, 0x27, 0x7f, 0x09, 0x9c, 0x63, 0x31, 0x4b, 0xe7, 0xb3, 0x63, 0xfb, 0xf3, 0xd3, 0xcf, - 0xc6, 0x0e, 0x53, 0xf2, 0x0d, 0x74, 0xb3, 0x71, 0x6b, 0xef, 0x21, 0x2a, 0xfe, 0xf6, 0x10, 0xbd, - 0x74, 0x61, 0x55, 0x1b, 0xa3, 0x8f, 0xa8, 0xaf, 0x1e, 0xfc, 0x6a, 0x1a, 0x26, 0x5a, 0xfd, 0x12, - 0xed, 0x1f, 0x58, 0x85, 0x47, 0x07, 0x56, 0xe1, 0xe8, 0xc0, 0x42, 0xf7, 0xa7, 0x16, 0xfa, 0x7e, - 0x6a, 0xa1, 0x5f, 0xa6, 0x16, 0xda, 0x9f, 0x5a, 0xe8, 0xaf, 0xa9, 0x85, 0xfe, 0x99, 0x5a, 0x85, - 0xa3, 0xa9, 0x85, 0xbe, 0x3a, 0xb4, 0x0a, 0x7b, 0x87, 0x16, 0xda, 0x3f, 0xb4, 0x0a, 0x8f, 0x0e, - 0xad, 0xc2, 0x87, 0x6e, 0xc8, 0xc5, 0xbd, 0xd0, 0x9e, 0xf0, 0xd9, 0xd2, 0x48, 0x88, 0x9d, 0x4a, - 0x47, 0x1b, 0xdb, 0x3c, 0x19, 0xb7, 0x45, 0xc2, 0x27, 0x2c, 0xa0, 0x49, 0xfb, 0x31, 0xec, 0x88, - 0x51, 0xc8, 0x1d, 0xfa, 0xa9, 0xca, 0xb7, 0xff, 0xb9, 0x0f, 0xe0, 0xa8, 0xa2, 0x5f, 0x81, 0xd7, - 0xfe, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x55, 0x3c, 0xe9, 0xd2, 0x27, 0x07, 0x00, 0x00, + // 895 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0xcf, 0x6b, 0x24, 0x45, + 0x14, 0x9e, 0xea, 0xf9, 0xb1, 0x99, 0x1a, 0x77, 0x1d, 0x4b, 0x91, 0xde, 0x71, 0x6c, 0xc3, 0x88, + 0x10, 0x97, 0xed, 0x6e, 0x76, 0xc4, 0x5d, 0x14, 0x2f, 0x93, 0x71, 0xc4, 0x81, 0x6c, 0x12, 0x3b, + 0x51, 0xd0, 0x4b, 0x53, 0xdd, 0x5d, 0xe9, 0x94, 0xe9, 0xee, 0x2a, 0xbb, 0xaa, 0xc7, 0x0d, 0x22, + 0x2c, 0x7b, 0x14, 0x41, 0x41, 0x10, 0x8f, 0x1e, 0x3d, 0x7b, 0x11, 0xdc, 0x4b, 0x6e, 0x7a, 0x92, + 0xa0, 0x97, 0x05, 0x41, 0xcc, 0xc4, 0x83, 0xde, 0xf2, 0x27, 0xc8, 0x54, 0xf7, 0x66, 0xd3, 0x49, + 0xc8, 0x32, 0x7b, 0x7b, 0xaf, 0xbe, 0xf7, 0xbe, 0xaa, 0xef, 0xd5, 0xab, 0x7a, 0xf0, 0x8d, 0x09, + 0x11, 0x16, 0x65, 0xb6, 0xf0, 0xb7, 0x49, 0x8c, 0xed, 0x84, 0xc8, 0x4f, 0x59, 0xba, 0xe3, 0x72, + 0x16, 0x51, 0x7f, 0xd7, 0xe6, 0x99, 0x17, 0x51, 0xdf, 0xf5, 0x33, 0x21, 0x59, 0xec, 0x06, 0x58, + 0x62, 0x17, 0x73, 0x6a, 0xf1, 0x94, 0x49, 0x86, 0xba, 0x79, 0xaa, 0x95, 0xa7, 0x5a, 0xe5, 0xd4, + 0x8e, 0x19, 0x52, 0xb9, 0x9d, 0x79, 0x96, 0xcf, 0x62, 0x3b, 0x64, 0x21, 0xb3, 0x55, 0x92, 0x97, + 0x6d, 0x29, 0x4f, 0x39, 0xca, 0xca, 0xc9, 0x3a, 0xdd, 0x90, 0xb1, 0x30, 0x22, 0x36, 0xe6, 0xd4, + 0xc6, 0x49, 0xc2, 0x24, 0x96, 0x94, 0x25, 0xa2, 0x40, 0x5f, 0x28, 0x9f, 0x92, 0xf1, 0x93, 0xe0, + 0xd5, 0x32, 0x28, 0x77, 0x39, 0x79, 0x08, 0x75, 0xcb, 0xd0, 0x04, 0x47, 0x34, 0xc0, 0x92, 0x14, + 0x68, 0xef, 0x14, 0x4a, 0x04, 0x49, 0x26, 0x65, 0xf2, 0xde, 0x5f, 0x1a, 0xd4, 0x57, 0x73, 0x65, + 0xeb, 0x4a, 0xd8, 0xbb, 0x54, 0x0a, 0x87, 0x7c, 0x92, 0x11, 0x21, 0x51, 0x17, 0x36, 0x13, 0x1c, + 0x13, 0xc1, 0xb1, 0x4f, 0x74, 0xb0, 0x08, 0x96, 0x9a, 0xce, 0xa3, 0x05, 0xe4, 0xc2, 0xa7, 0x22, + 0xec, 0x91, 0xc8, 0xdd, 0xa2, 0x91, 0x24, 0xa9, 0xae, 0x2d, 0x56, 0x97, 0x5a, 0xfd, 0xb7, 0xac, + 0x8b, 0xca, 0x66, 0x95, 0xf6, 0xba, 0x4d, 0x64, 0x4a, 0xfd, 0x95, 0x19, 0xc9, 0x3b, 0x8a, 0xc3, + 0x69, 0x45, 0x8f, 0x1c, 0xf4, 0x1e, 0x5c, 0x08, 0x53, 0x96, 0x71, 0xd7, 0xdb, 0xd5, 0xab, 0x8b, + 0xd5, 0xa5, 0x2b, 0xfd, 0x9b, 0x4f, 0x46, 0xee, 0x5c, 0x52, 0x3c, 0xcb, 0xbb, 0xe8, 0x55, 0x08, + 0x85, 0xc4, 0xa9, 0x74, 0x25, 0x8d, 0x89, 0x5e, 0x9b, 0x49, 0x5a, 0x86, 0x3f, 0xff, 0xb7, 0x57, + 0xad, 0xa7, 0xd5, 0xef, 0x6a, 0xc0, 0x69, 0x2a, 0x74, 0x93, 0xc6, 0x04, 0xbd, 0x02, 0x17, 0x48, + 0x12, 0xe4, 0x81, 0xf5, 0x33, 0x81, 0x97, 0x48, 0x12, 0xa8, 0x30, 0x03, 0xd6, 0x84, 0x24, 0x5c, + 0x6f, 0x94, 0x42, 0xbe, 0xaf, 0x01, 0x47, 0xad, 0xf7, 0x7e, 0x04, 0xd0, 0xb8, 0x58, 0x34, 0x5a, + 0x81, 0x75, 0x25, 0x5b, 0x95, 0xf8, 0xc9, 0x45, 0xe6, 0x24, 0xe8, 0x3a, 0xd4, 0x18, 0xd7, 0x35, + 0x45, 0xd5, 0x3d, 0x45, 0x75, 0x22, 0x7c, 0x8d, 0x3b, 0x1a, 0xe3, 0xe8, 0x39, 0x58, 0x9f, 0xe0, + 0x28, 0x23, 0x7a, 0x55, 0x5d, 0x6f, 0xee, 0xf4, 0x7e, 0x02, 0xf0, 0xd9, 0x33, 0x5d, 0x31, 0x0e, + 0x1e, 0xd3, 0x10, 0xcf, 0xc3, 0x46, 0x7e, 0x46, 0xb5, 0x7b, 0xd3, 0x29, 0x3c, 0xf4, 0x22, 0x84, + 0xb9, 0xe5, 0x0a, 0x22, 0x8b, 0x8d, 0x9a, 0xf9, 0xca, 0x06, 0x91, 0xe8, 0x25, 0xd8, 0x2a, 0xe0, + 0x34, 0x8b, 0x8a, 0x4b, 0x71, 0x8a, 0x0c, 0x27, 0x8b, 0x14, 0x2f, 0xf6, 0x67, 0x4d, 0x9b, 0xdf, + 0x83, 0x53, 0x78, 0x08, 0xc1, 0x9a, 0xa0, 0x92, 0xe4, 0xa5, 0x77, 0x94, 0xdd, 0xfb, 0x02, 0xc0, + 0x67, 0xce, 0x9c, 0x1c, 0x0d, 0xa0, 0x46, 0x03, 0x75, 0xe0, 0x56, 0xff, 0xc6, 0x1c, 0xe5, 0xcd, + 0x65, 0x3b, 0x1a, 0x0d, 0x50, 0x1f, 0x36, 0x62, 0x55, 0xbd, 0xa2, 0xcf, 0x3b, 0xe7, 0x96, 0xf6, + 0x83, 0x59, 0xf9, 0x9c, 0x22, 0xb2, 0x77, 0x17, 0xc0, 0xab, 0xe7, 0x3c, 0x2e, 0xc1, 0x59, 0x22, + 0x08, 0x1a, 0xc2, 0xda, 0xec, 0xc7, 0xd1, 0x81, 0xe2, 0xb3, 0xe7, 0x3c, 0x96, 0xa3, 0x92, 0x8f, + 0xdb, 0x4f, 0x2b, 0xb5, 0xdf, 0x91, 0x56, 0xb4, 0xdf, 0xb5, 0xe8, 0xd4, 0xf3, 0x3e, 0xd1, 0x01, + 0xe8, 0x32, 0x6c, 0xae, 0x0e, 0x6e, 0x8f, 0x36, 0xd6, 0x07, 0xc3, 0x51, 0xbb, 0x82, 0x20, 0x6c, + 0xac, 0xaf, 0xad, 0x8c, 0x87, 0x1f, 0xb6, 0x01, 0xba, 0x02, 0x61, 0x6e, 0xbb, 0x1b, 0xa3, 0xcd, + 0xb6, 0x86, 0x9e, 0x86, 0xad, 0xc2, 0x77, 0xde, 0x5f, 0x19, 0xb5, 0xab, 0xb3, 0xe0, 0xc1, 0x70, + 0x73, 0xbc, 0xb6, 0xda, 0xae, 0xa1, 0x05, 0x58, 0xdb, 0x18, 0x6f, 0x8e, 0xda, 0xf5, 0xfe, 0x9f, + 0x1a, 0xbc, 0x3c, 0x54, 0x9f, 0xe9, 0xdb, 0x58, 0xe2, 0xc1, 0xfa, 0x18, 0x7d, 0xab, 0x9d, 0x77, + 0x1f, 0x37, 0xe7, 0x15, 0x9b, 0x7f, 0x48, 0x9d, 0x5b, 0x73, 0xe7, 0xe5, 0xb5, 0xee, 0x7d, 0x05, + 0xa6, 0xbf, 0xe8, 0xab, 0x5b, 0xaf, 0xdf, 0xf1, 0x4d, 0xcc, 0xb9, 0x90, 0xd8, 0xdf, 0x31, 0x3d, + 0x2c, 0xa8, 0x6f, 0xc6, 0x2c, 0xa1, 0x92, 0xa5, 0xd7, 0xcb, 0x98, 0x90, 0x38, 0x09, 0x70, 0x1a, + 0x1c, 0xc3, 0x13, 0x22, 0x4c, 0xca, 0xcc, 0x62, 0x43, 0x33, 0x25, 0x38, 0xb8, 0xf7, 0xc7, 0x3f, + 0xdf, 0x68, 0xb7, 0x7a, 0xfd, 0x62, 0x8a, 0xd8, 0xc7, 0x0f, 0x41, 0xd8, 0x9f, 0x1d, 0xdb, 0x9f, + 0x9f, 0x1e, 0x39, 0xdb, 0x54, 0x8a, 0x37, 0xc1, 0xb5, 0xce, 0x8d, 0xbd, 0xfb, 0xa0, 0xfa, 0xfb, + 0x7d, 0xf0, 0xf2, 0x85, 0x8a, 0xd6, 0xbc, 0x8f, 0x89, 0x2f, 0xef, 0xfd, 0xa6, 0x6b, 0x3a, 0x58, + 0xfe, 0x12, 0xec, 0x1f, 0x18, 0x95, 0x07, 0x07, 0x46, 0xe5, 0xe8, 0xc0, 0x00, 0x77, 0xa7, 0x06, + 0xf8, 0x61, 0x6a, 0x80, 0x5f, 0xa7, 0x06, 0xd8, 0x9f, 0x1a, 0xe0, 0xef, 0xa9, 0x01, 0xfe, 0x9d, + 0x1a, 0x95, 0xa3, 0xa9, 0x01, 0xbe, 0x3e, 0x34, 0x2a, 0x7b, 0x87, 0x06, 0xd8, 0x3f, 0x34, 0x2a, + 0x0f, 0x0e, 0x8d, 0xca, 0x47, 0x4e, 0xc8, 0xf8, 0x4e, 0x68, 0x4d, 0xd8, 0xec, 0xc3, 0x49, 0xb1, + 0x95, 0x09, 0x5b, 0x19, 0x5b, 0x2c, 0x8d, 0x4d, 0x9e, 0xb2, 0x09, 0x0d, 0x48, 0x6a, 0x3e, 0x84, + 0x6d, 0xee, 0x85, 0xcc, 0x26, 0x77, 0x64, 0x31, 0x39, 0xce, 0x1d, 0x9e, 0x5e, 0x43, 0x4d, 0x90, + 0xd7, 0xfe, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x8c, 0xa5, 0x1a, 0x29, 0x63, 0x07, 0x00, 0x00, } func (x NetworkPolicyMetricLabel) String() string { diff --git a/pbgo/extschema/schema/network_policy_rule/crudapi/api.vesapi.go b/pbgo/extschema/schema/network_policy_rule/crudapi/api.vesapi.go index cbca1b9cd..1a9a00c23 100644 --- a/pbgo/extschema/schema/network_policy_rule/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/network_policy_rule/crudapi/api.vesapi.go @@ -3308,10 +3308,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_policy_rule/object.pb.go b/pbgo/extschema/schema/network_policy_rule/object.pb.go index bc5b19188..bb1f31821 100644 --- a/pbgo/extschema/schema/network_policy_rule/object.pb.go +++ b/pbgo/extschema/schema/network_policy_rule/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_5090d891ece22b62 = []byte{ - // 594 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x6b, 0x14, 0x4d, - 0x10, 0xc6, 0xb7, 0x77, 0xc3, 0x26, 0x74, 0x42, 0xde, 0x30, 0x81, 0x97, 0x35, 0x6a, 0x13, 0xd7, - 0x4b, 0x40, 0xa7, 0x47, 0x23, 0x1e, 0x12, 0x45, 0x21, 0x11, 0x02, 0x92, 0x20, 0x6c, 0xfc, 0x03, - 0x5e, 0x96, 0x9e, 0xde, 0xda, 0x49, 0x9b, 0x99, 0xed, 0xa1, 0xbb, 0x67, 0x92, 0x3d, 0x08, 0x7e, - 0x00, 0x0f, 0x5e, 0xfc, 0x0e, 0x22, 0xde, 0xbd, 0x1a, 0x4f, 0x1e, 0x43, 0x4e, 0x39, 0x9a, 0xd9, - 0x8b, 0xc7, 0x80, 0x5f, 0x40, 0xd2, 0x93, 0x09, 0xd9, 0x38, 0x92, 0x90, 0x5b, 0x0d, 0xf5, 0x7b, - 0x1e, 0xaa, 0xba, 0xaa, 0x06, 0xd3, 0x14, 0x34, 0x15, 0xd2, 0xd3, 0x7c, 0x03, 0x22, 0xe6, 0xf5, - 0xc0, 0x6c, 0x49, 0xb5, 0xd9, 0x8e, 0x65, 0x28, 0x78, 0xbf, 0xad, 0x92, 0x10, 0x3c, 0xe9, 0xbf, - 0x01, 0x6e, 0x68, 0xac, 0xa4, 0x91, 0xce, 0x8d, 0x9c, 0xa7, 0x39, 0x4f, 0x4b, 0xf8, 0x19, 0x37, - 0x10, 0x66, 0x23, 0xf1, 0x29, 0x97, 0x91, 0x17, 0xc8, 0x40, 0x7a, 0x56, 0xe9, 0x27, 0x5d, 0xfb, - 0x65, 0x3f, 0x6c, 0x94, 0x3b, 0xce, 0xb8, 0xe7, 0x57, 0x60, 0xfa, 0x31, 0xe8, 0x63, 0xfc, 0xea, - 0x30, 0x2e, 0x63, 0x23, 0x64, 0xaf, 0x48, 0x5e, 0x19, 0x4e, 0x9e, 0xd6, 0x35, 0x87, 0x53, 0x29, - 0x68, 0xe8, 0xa5, 0xc3, 0xf2, 0xe6, 0xfb, 0x11, 0x5c, 0x7f, 0x66, 0xbb, 0x75, 0x16, 0xf0, 0x58, - 0x04, 0x86, 0x75, 0x98, 0x61, 0x0d, 0x34, 0x8b, 0xe6, 0xc6, 0xe7, 0xaf, 0xd3, 0xe1, 0xd6, 0x73, - 0x70, 0x0d, 0x0c, 0x7b, 0xde, 0x8f, 0xa1, 0x75, 0x82, 0x3b, 0xab, 0xf8, 0x3f, 0xdd, 0xd7, 0x06, - 0xa2, 0xf6, 0x89, 0x43, 0xd5, 0x3a, 0xdc, 0x3c, 0xe3, 0xb0, 0x6e, 0xa9, 0x33, 0x3e, 0x93, 0xb9, - 0x76, 0xad, 0x70, 0x7b, 0x8c, 0x47, 0x74, 0x0c, 0xbc, 0x51, 0xb3, 0x16, 0xb7, 0xe8, 0xb9, 0xef, - 0x4f, 0xd7, 0x63, 0xe0, 0xd6, 0xca, 0x0a, 0x17, 0xbf, 0x56, 0xbf, 0xef, 0x34, 0xaa, 0x53, 0x68, - 0x6f, 0xa7, 0xf1, 0xa5, 0x8a, 0x17, 0x70, 0x6d, 0x05, 0x8c, 0x33, 0xdf, 0xbd, 0xbf, 0xcd, 0x5d, - 0x0d, 0x3c, 0x51, 0x10, 0x81, 0xde, 0x70, 0x7d, 0xa6, 0x05, 0x77, 0x23, 0xd9, 0x13, 0x46, 0xaa, - 0xdb, 0xb3, 0x29, 0x68, 0x57, 0x48, 0xf7, 0xd8, 0xde, 0x55, 0xc0, 0x3a, 0xf8, 0x01, 0x1e, 0x6d, - 0x41, 0x1c, 0x32, 0x0e, 0xce, 0x9d, 0x72, 0x79, 0xa2, 0xe1, 0x6f, 0xed, 0x96, 0x12, 0x06, 0xf0, - 0x22, 0xae, 0x2f, 0x2b, 0x60, 0xe6, 0x92, 0xda, 0x27, 0x10, 0xc2, 0x25, 0xb5, 0x23, 0xab, 0x42, - 0x5f, 0xaa, 0xe1, 0xe6, 0x4b, 0x3c, 0x56, 0xbc, 0xa5, 0xf3, 0x14, 0x8f, 0x06, 0xbc, 0x6d, 0x27, - 0x91, 0x0f, 0xf3, 0xee, 0x05, 0x26, 0xb1, 0x12, 0x4a, 0x9f, 0x85, 0x27, 0xf3, 0xa8, 0x07, 0xfc, - 0x28, 0x6e, 0xfe, 0x46, 0x78, 0x62, 0xdd, 0x30, 0x93, 0xe8, 0x0b, 0x2f, 0x5b, 0x8e, 0x97, 0x2c, - 0xdb, 0x0b, 0x3c, 0x9e, 0xdf, 0x67, 0x5b, 0x41, 0x57, 0x37, 0xaa, 0xb3, 0xb5, 0xb9, 0xf1, 0xf9, - 0x6b, 0xa5, 0xab, 0xda, 0x82, 0xee, 0x91, 0x78, 0xe9, 0xff, 0xcf, 0x6f, 0xa7, 0x4b, 0xaa, 0x6d, - 0x61, 0x59, 0x60, 0xda, 0x79, 0x88, 0x31, 0x97, 0xbd, 0x8e, 0xb0, 0xd7, 0xd1, 0xa8, 0x95, 0xba, - 0x2e, 0x17, 0x80, 0x2d, 0xe9, 0x14, 0xbf, 0x38, 0xbd, 0xf7, 0x68, 0x0a, 0x4f, 0xe2, 0x89, 0xa2, - 0x4a, 0x9a, 0x88, 0xce, 0xd2, 0x47, 0xb4, 0x7b, 0x40, 0x2a, 0xfb, 0x07, 0xa4, 0x72, 0x78, 0x40, - 0xd0, 0xbb, 0x8c, 0xa0, 0x4f, 0x19, 0x41, 0x3f, 0x32, 0x82, 0x76, 0x33, 0x82, 0xf6, 0x33, 0x82, - 0x7e, 0x66, 0x04, 0xfd, 0xca, 0x48, 0xe5, 0x30, 0x23, 0xe8, 0xc3, 0x80, 0x54, 0xbe, 0x0d, 0x08, - 0xda, 0x1d, 0x90, 0xca, 0xfe, 0x80, 0x54, 0x5e, 0xbf, 0x0a, 0x64, 0xbc, 0x19, 0xd0, 0x54, 0x86, - 0x06, 0x94, 0x62, 0x34, 0xd1, 0x9e, 0x0d, 0xba, 0x52, 0x45, 0x6e, 0xac, 0x64, 0x2a, 0x3a, 0xa0, - 0xdc, 0x22, 0xed, 0xc5, 0x7e, 0x20, 0x3d, 0xd8, 0x36, 0xc7, 0xe7, 0xfe, 0xef, 0x9f, 0x8b, 0x5f, - 0xb7, 0xb7, 0x7f, 0xef, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0xe8, 0x3a, 0x63, 0x0a, 0x05, - 0x00, 0x00, + // 611 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x6b, 0x13, 0x4f, + 0x14, 0xc0, 0x33, 0x4d, 0xff, 0x69, 0x99, 0x96, 0xfe, 0xcb, 0x16, 0x24, 0x56, 0x1d, 0x6a, 0xbc, + 0x14, 0x74, 0x77, 0xb1, 0xe2, 0xc1, 0x22, 0x0a, 0xad, 0x50, 0x90, 0x96, 0x42, 0x5a, 0x15, 0xab, + 0x10, 0x66, 0x67, 0x5f, 0xb6, 0x63, 0x77, 0x33, 0xcb, 0xcc, 0x6c, 0xda, 0x1c, 0x04, 0x3f, 0x82, + 0x17, 0xbf, 0x83, 0x08, 0x7e, 0x07, 0xeb, 0xc9, 0x8b, 0x50, 0x7a, 0xca, 0xd1, 0x6e, 0x2e, 0x1e, + 0x0b, 0x7e, 0x01, 0xe9, 0x6c, 0xb7, 0x36, 0x61, 0xb5, 0xbd, 0xe4, 0x36, 0xcb, 0xfb, 0xbd, 0x5f, + 0xde, 0x4c, 0xde, 0x7b, 0xd8, 0x69, 0x83, 0x72, 0xb8, 0x70, 0x15, 0xdb, 0x86, 0x88, 0xba, 0x2d, + 0xd0, 0xbb, 0x42, 0xee, 0x34, 0x62, 0x11, 0x72, 0xd6, 0x69, 0xc8, 0x24, 0x04, 0x57, 0x78, 0x6f, + 0x80, 0x69, 0x27, 0x96, 0x42, 0x0b, 0xeb, 0x66, 0xc6, 0x3b, 0x19, 0xef, 0x14, 0xf0, 0xb3, 0x76, + 0xc0, 0xf5, 0x76, 0xe2, 0x39, 0x4c, 0x44, 0x6e, 0x20, 0x02, 0xe1, 0x9a, 0x4c, 0x2f, 0x69, 0x9a, + 0x2f, 0xf3, 0x61, 0x4e, 0x99, 0x71, 0xd6, 0xbe, 0xb8, 0x02, 0xdd, 0x89, 0x41, 0x9d, 0xe2, 0xd7, + 0xfa, 0x71, 0x11, 0x6b, 0x2e, 0x5a, 0x79, 0xf0, 0x6a, 0x7f, 0xf0, 0x7c, 0x5e, 0xad, 0x3f, 0xd4, + 0x06, 0x05, 0xad, 0x76, 0x7f, 0x7a, 0xed, 0xf3, 0x7f, 0xb8, 0xb2, 0x6e, 0x6e, 0x6b, 0x3d, 0xc0, + 0xe3, 0x11, 0x68, 0xea, 0x53, 0x4d, 0xab, 0x68, 0x0e, 0xcd, 0x4f, 0x2c, 0xdc, 0x70, 0xfa, 0xaf, + 0x9e, 0x81, 0x6b, 0xa0, 0xe9, 0x66, 0x27, 0x86, 0xfa, 0x19, 0x6e, 0xad, 0xe2, 0xff, 0x55, 0x47, + 0x69, 0x88, 0x1a, 0x67, 0x86, 0x11, 0x63, 0xb8, 0x35, 0x60, 0xd8, 0x30, 0xd4, 0x80, 0x67, 0x2a, + 0xcb, 0x5d, 0xcb, 0x6d, 0x8f, 0xf1, 0xa8, 0x8a, 0x81, 0x55, 0xcb, 0x46, 0x71, 0xdb, 0xb9, 0xf0, + 0xfd, 0x9d, 0x8d, 0x18, 0x98, 0x51, 0x99, 0xc4, 0xc5, 0x6e, 0xf9, 0xeb, 0x7e, 0x75, 0x64, 0x1a, + 0x1d, 0xee, 0x57, 0xbf, 0x97, 0xf1, 0x2b, 0x5c, 0x5e, 0x01, 0x6d, 0x6d, 0x36, 0xef, 0xef, 0x31, + 0x5b, 0x01, 0x4b, 0x24, 0x44, 0xa0, 0xb6, 0x6d, 0x8f, 0x2a, 0xce, 0xec, 0x48, 0xb4, 0xb8, 0x16, + 0xf2, 0xce, 0xdc, 0x60, 0x58, 0x69, 0xda, 0xf2, 0xa9, 0xf4, 0xff, 0x10, 0x6d, 0x50, 0x36, 0x17, + 0xf6, 0x69, 0x01, 0xb6, 0x04, 0xea, 0xe3, 0x2d, 0x3c, 0x56, 0x87, 0x38, 0xa4, 0x0c, 0xac, 0xf5, + 0xe2, 0x1f, 0x48, 0x14, 0xfc, 0xcb, 0x9e, 0x85, 0x07, 0xd4, 0xbb, 0x92, 0x6b, 0xc0, 0x2f, 0x71, + 0x65, 0x59, 0x02, 0xd5, 0xc3, 0x51, 0x3f, 0x81, 0x10, 0x86, 0xa1, 0x7e, 0x8d, 0x47, 0x57, 0xb9, + 0x1a, 0xd2, 0x7b, 0xd7, 0x9e, 0xe3, 0xf1, 0xfc, 0xcf, 0xb6, 0x9e, 0xe2, 0xb1, 0x80, 0x35, 0x4c, + 0xab, 0x64, 0xdd, 0x76, 0xf7, 0x12, 0xad, 0xb2, 0x12, 0x0a, 0x8f, 0x86, 0x67, 0x0d, 0x53, 0x09, + 0xd8, 0xc9, 0xb9, 0xf6, 0x0b, 0xe1, 0xc9, 0x0d, 0x4d, 0x75, 0xa2, 0x2e, 0x3d, 0x0d, 0x19, 0x5e, + 0x30, 0x0d, 0xcf, 0xf0, 0x44, 0xb6, 0x40, 0x1a, 0x12, 0x9a, 0xaa, 0x3a, 0x32, 0x57, 0x9e, 0x9f, + 0x58, 0xb8, 0x5e, 0x38, 0x4b, 0x75, 0x68, 0x9e, 0x24, 0x2f, 0x5d, 0xf9, 0xf4, 0x76, 0xa6, 0xa0, + 0xda, 0x3a, 0x16, 0x39, 0xa6, 0xac, 0x87, 0x18, 0x33, 0xd1, 0xf2, 0xb9, 0x19, 0xdf, 0x6a, 0xb9, + 0xd0, 0xba, 0x9c, 0x03, 0xa6, 0xa4, 0x73, 0xfc, 0xe2, 0xcc, 0xe1, 0xa3, 0x69, 0x3c, 0x85, 0x27, + 0xf3, 0x2a, 0x9d, 0x84, 0xfb, 0x4b, 0x1f, 0xd0, 0xc1, 0x11, 0x29, 0x75, 0x8f, 0x48, 0xe9, 0xf8, + 0x88, 0xa0, 0x77, 0x29, 0x41, 0x1f, 0x53, 0x82, 0xbe, 0xa5, 0x04, 0x1d, 0xa4, 0x04, 0x75, 0x53, + 0x82, 0x7e, 0xa4, 0x04, 0xfd, 0x4c, 0x49, 0xe9, 0x38, 0x25, 0xe8, 0x7d, 0x8f, 0x94, 0xbe, 0xf4, + 0x08, 0x3a, 0xe8, 0x91, 0x52, 0xb7, 0x47, 0x4a, 0x5b, 0x2f, 0x02, 0x11, 0xef, 0x04, 0x4e, 0x5b, + 0x84, 0x1a, 0xa4, 0xa4, 0x4e, 0xa2, 0x5c, 0x73, 0x68, 0x0a, 0x19, 0xd9, 0xb1, 0x14, 0x6d, 0xee, + 0x83, 0xb4, 0xf3, 0xb0, 0x1b, 0x7b, 0x81, 0x70, 0x61, 0x4f, 0x9f, 0xee, 0xa3, 0xbf, 0x6f, 0x3f, + 0xaf, 0x62, 0x96, 0xd3, 0xbd, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x80, 0xc5, 0x7d, 0xd9, 0xab, + 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/network_policy_rule/pkg.vespkg.go b/pbgo/extschema/schema/network_policy_rule/pkg.vespkg.go index 92ccb93da..8c5e3d754 100644 --- a/pbgo/extschema/schema/network_policy_rule/pkg.vespkg.go +++ b/pbgo/extschema/schema/network_policy_rule/pkg.vespkg.go @@ -54,43 +54,43 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.network_policy_rule.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_policy_rule.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_policy_rule.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.network_policy_rule.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.network_policy_rule.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.prefix.ipv6_prefix.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/network_policy_rule/public_crudapi.pb.go b/pbgo/extschema/schema/network_policy_rule/public_crudapi.pb.go index 65a40be86..85362fb3d 100644 --- a/pbgo/extschema/schema/network_policy_rule/public_crudapi.pb.go +++ b/pbgo/extschema/schema/network_policy_rule/public_crudapi.pb.go @@ -1110,108 +1110,110 @@ func init() { } var fileDescriptor_6f5117c0bea6a0a2 = []byte{ - // 1614 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x04, 0x4d, 0x1b, - 0x85, 0x20, 0x94, 0xbb, 0xb6, 0x0c, 0x17, 0xb6, 0x60, 0xd8, 0xa5, 0x24, 0x4a, 0x90, 0x2b, 0x4b, - 0xf6, 0x92, 0x96, 0x8b, 0x5e, 0x16, 0xcb, 0xe5, 0x23, 0xbd, 0x15, 0xc9, 0xdd, 0xee, 0x0e, 0x29, - 0xb3, 0x86, 0x80, 0xc2, 0xc7, 0xf6, 0x52, 0xa0, 0xa7, 0x04, 0x39, 0x24, 0x87, 0x00, 0xc9, 0x39, - 0x97, 0x00, 0xba, 0xf8, 0x66, 0xc3, 0x08, 0x02, 0x23, 0xb9, 0xe8, 0x12, 0x20, 0xa2, 0x02, 0xc4, - 0xb9, 0x19, 0xbe, 0x07, 0x09, 0x76, 0x66, 0x97, 0x26, 0x29, 0x3a, 0x22, 0x29, 0x9d, 0xb8, 0x33, - 0xef, 0xbd, 0x6f, 0xde, 0x37, 0xef, 0x67, 0x1f, 0x17, 0xff, 0xb9, 0x0e, 0xb6, 0xa8, 0x1b, 0x92, - 0xad, 0x3d, 0x82, 0x8a, 0x2a, 0x55, 0x81, 0x6e, 0x1b, 0xd6, 0x96, 0x62, 0x1a, 0x65, 0x5d, 0x6b, - 0x28, 0x56, 0xad, 0x0c, 0x92, 0x59, 0xcb, 0x97, 0x75, 0x4d, 0xd1, 0xac, 0x5a, 0x41, 0x35, 0x75, - 0xd1, 0xb4, 0x0c, 0x6a, 0x90, 0x0b, 0xdc, 0x4e, 0xe4, 0x76, 0x62, 0x0f, 0xbb, 0x58, 0xaa, 0xa4, - 0xd3, 0x47, 0xb5, 0xbc, 0xa8, 0x19, 0x15, 0xa9, 0x64, 0x94, 0x0c, 0x89, 0x59, 0xe6, 0x6b, 0x45, - 0xb6, 0x62, 0x0b, 0xf6, 0xc4, 0x11, 0x63, 0xe7, 0x4b, 0x86, 0x51, 0x2a, 0x83, 0xa4, 0x9a, 0xba, - 0xa4, 0x56, 0xab, 0x06, 0x55, 0xa9, 0x6e, 0x54, 0x6d, 0x57, 0xfa, 0x7b, 0x57, 0xda, 0xc2, 0x80, - 0x8a, 0x49, 0x1b, 0xae, 0x30, 0xd6, 0x49, 0x02, 0x2c, 0xcb, 0xb0, 0x3c, 0x43, 0xf1, 0x68, 0x82, - 0x46, 0xfe, 0x1f, 0xa0, 0x51, 0x57, 0x3f, 0x75, 0xb4, 0x3e, 0x6d, 0x98, 0xd0, 0xf2, 0xab, 0x53, - 0xdd, 0x30, 0xdb, 0x9d, 0x9e, 0xee, 0x14, 0xb6, 0xdb, 0x25, 0x3b, 0x45, 0x75, 0xb0, 0xa1, 0x5a, - 0xef, 0x32, 0x4f, 0x74, 0xe9, 0xe8, 0xb0, 0xad, 0x74, 0x68, 0x24, 0xbf, 0x40, 0x78, 0x7c, 0xd1, - 0x02, 0x95, 0x82, 0x0c, 0xff, 0xac, 0x81, 0x4d, 0xc9, 0x6d, 0x1c, 0xaa, 0x00, 0x55, 0x0b, 0x2a, - 0x55, 0xa3, 0x28, 0x81, 0x66, 0x22, 0x73, 0x17, 0xc5, 0xce, 0x50, 0x6d, 0x30, 0xb6, 0xdc, 0xea, - 0x2e, 0x50, 0x35, 0xd7, 0x30, 0x41, 0x6e, 0x19, 0x91, 0x4d, 0x1c, 0xb0, 0x4d, 0xd0, 0xa2, 0x3e, - 0x66, 0x7c, 0x45, 0x3c, 0x32, 0xce, 0x22, 0x87, 0xca, 0x9a, 0xa0, 0x39, 0x50, 0x0b, 0x93, 0x1f, - 0xee, 0x8c, 0x39, 0x08, 0x62, 0x49, 0x53, 0x9c, 0x5f, 0x99, 0xe1, 0xcd, 0x87, 0x5f, 0xde, 0x0a, - 0xf2, 0xa3, 0x93, 0xbf, 0x20, 0x3c, 0xe1, 0x79, 0x6d, 0x9b, 0x46, 0xd5, 0x06, 0x72, 0xf3, 0x90, - 0xdb, 0x89, 0x9e, 0x6e, 0xaf, 0x00, 0xed, 0xe1, 0xf3, 0x06, 0x9e, 0xb4, 0x1b, 0x36, 0x85, 0x8a, - 0xd2, 0x02, 0xf1, 0x33, 0x90, 0x3f, 0x76, 0x81, 0x64, 0x99, 0xd6, 0x61, 0xa8, 0x09, 0x6e, 0x7e, - 0xd7, 0x03, 0xcc, 0x76, 0x5c, 0x82, 0xd8, 0xc7, 0x25, 0xac, 0x00, 0x1d, 0xe0, 0x06, 0x7e, 0x44, - 0x78, 0x42, 0x06, 0xb3, 0xac, 0x6a, 0xad, 0xc0, 0xfd, 0xe5, 0xd0, 0x0d, 0x5c, 0xea, 0x79, 0x03, - 0xae, 0x59, 0x8f, 0x5b, 0x78, 0xd8, 0xe1, 0xf4, 0x5c, 0x1f, 0x4e, 0xbb, 0x58, 0x47, 0x38, 0x4e, - 0x24, 0x2c, 0x58, 0x60, 0x1b, 0x35, 0x4b, 0x03, 0xa5, 0x0e, 0x96, 0xad, 0x1b, 0x55, 0x76, 0xbf, - 0xe1, 0x85, 0xc0, 0xeb, 0x5d, 0x84, 0xe4, 0x49, 0x4f, 0xba, 0xc9, 0x85, 0xed, 0x4c, 0x4f, 0xe3, - 0xc9, 0x16, 0x51, 0x1e, 0xeb, 0xe4, 0x27, 0x08, 0xe3, 0x15, 0xa0, 0x1e, 0xf1, 0xf3, 0x38, 0x5c, - 0x55, 0x2b, 0x60, 0x9b, 0xaa, 0x06, 0x8c, 0x79, 0x58, 0x7e, 0xb7, 0x41, 0x08, 0x0e, 0x38, 0x0b, - 0x46, 0x2a, 0x2c, 0xb3, 0x67, 0xa2, 0x62, 0xe7, 0x44, 0x06, 0xa6, 0x14, 0x0d, 0xab, 0xa2, 0x52, - 0xe6, 0xce, 0xc4, 0xdc, 0xf5, 0xfe, 0x02, 0xe5, 0x79, 0xb2, 0xcc, 0x6c, 0x17, 0x8d, 0x02, 0xc8, - 0x13, 0x56, 0xc7, 0x5e, 0xf2, 0xf3, 0x20, 0x8e, 0xb4, 0x69, 0x92, 0xfb, 0x38, 0xa2, 0xb1, 0x8c, - 0x65, 0x07, 0xba, 0x57, 0x7c, 0xb9, 0xef, 0xe2, 0x70, 0xb9, 0xca, 0x98, 0x83, 0x38, 0x87, 0x90, - 0x1c, 0x1e, 0xb3, 0xf8, 0xcd, 0x70, 0x4c, 0x7f, 0xdf, 0x05, 0xd7, 0x99, 0x39, 0x72, 0xc4, 0x85, - 0x61, 0xa8, 0xbd, 0x62, 0x15, 0xf8, 0x8d, 0x58, 0x75, 0x54, 0xde, 0xe8, 0x49, 0x54, 0xde, 0xa9, - 0x13, 0xa9, 0xbc, 0xe0, 0x09, 0x56, 0x1e, 0x59, 0xc7, 0x41, 0x9b, 0xaa, 0xb4, 0x66, 0x47, 0x3f, - 0xfe, 0x08, 0x25, 0xfc, 0x33, 0x91, 0x39, 0xa9, 0x0f, 0xe0, 0x2c, 0x33, 0xe1, 0x2e, 0x2f, 0xf8, - 0x9f, 0xed, 0x20, 0xd9, 0x45, 0x21, 0xab, 0xf8, 0xb4, 0x05, 0x45, 0xb0, 0x2c, 0xbd, 0x5a, 0x52, - 0xf8, 0xdb, 0xc3, 0x8e, 0x86, 0x18, 0xf0, 0xf9, 0xf7, 0x14, 0x6d, 0x91, 0xb1, 0x15, 0x5a, 0x66, - 0x7c, 0xdf, 0x26, 0x9b, 0x38, 0x5a, 0x80, 0x32, 0x50, 0x28, 0x28, 0x5c, 0x06, 0x85, 0x16, 0x62, - 0xb8, 0x0f, 0xc4, 0x29, 0xd7, 0x5a, 0x76, 0x8d, 0x3d, 0xdc, 0xbf, 0xe1, 0xe9, 0x82, 0x6e, 0xab, - 0xf9, 0x72, 0x2f, 0x60, 0xdc, 0x07, 0xf0, 0x39, 0xcf, 0xbc, 0x0b, 0xb9, 0xad, 0xb8, 0xef, 0x04, - 0x42, 0x48, 0xf0, 0x25, 0x3f, 0x45, 0x38, 0xb2, 0xa6, 0xdb, 0x7d, 0x16, 0xf4, 0x05, 0x3c, 0x56, - 0x56, 0xf3, 0x50, 0x56, 0x8a, 0x7a, 0x99, 0x82, 0xe5, 0x16, 0x76, 0x84, 0xed, 0x2d, 0xb3, 0x2d, - 0x72, 0x11, 0x8f, 0x5b, 0x60, 0x1a, 0x16, 0x55, 0x8a, 0x3a, 0x94, 0x0b, 0x76, 0xd4, 0x9f, 0xf0, - 0xcf, 0x84, 0xe5, 0x31, 0xbe, 0xb9, 0xcc, 0xf6, 0xc8, 0x65, 0x7c, 0xc6, 0x55, 0xe2, 0x41, 0xf1, - 0x74, 0x03, 0x4c, 0x97, 0x70, 0x19, 0x0f, 0x21, 0xb7, 0x48, 0xee, 0x05, 0xb1, 0xc0, 0xfd, 0xe4, - 0x45, 0xbd, 0x4a, 0xa1, 0x42, 0xa6, 0x70, 0x90, 0x42, 0x55, 0xad, 0x52, 0x96, 0x71, 0x61, 0xd9, - 0x5d, 0x0d, 0xd1, 0x95, 0x04, 0xec, 0xaf, 0xe9, 0x05, 0xde, 0x18, 0x65, 0xe7, 0x91, 0x24, 0x70, - 0xa4, 0x00, 0xb6, 0x66, 0xe9, 0xec, 0x9d, 0x1d, 0x8d, 0x70, 0xa6, 0x6d, 0x5b, 0x24, 0x86, 0x43, - 0xde, 0x35, 0x47, 0xc7, 0x12, 0x68, 0x26, 0x24, 0xb7, 0xd6, 0xe4, 0x21, 0x0e, 0xb2, 0x4b, 0xe1, - 0x94, 0x22, 0x73, 0xb7, 0xfb, 0x48, 0xd9, 0x6e, 0x7a, 0xe2, 0x1a, 0x43, 0xc8, 0x54, 0xa9, 0xd5, - 0x90, 0x5d, 0x38, 0x52, 0xc4, 0x91, 0xb6, 0xf9, 0xca, 0x4d, 0x86, 0xa5, 0x61, 0xd0, 0xd3, 0xef, - 0x60, 0xf8, 0x11, 0xed, 0xc0, 0xe4, 0x06, 0xc6, 0xc6, 0x76, 0x15, 0x2c, 0xc5, 0x19, 0x5c, 0xa2, - 0x61, 0x56, 0xd0, 0xb1, 0xae, 0x63, 0x36, 0x75, 0xd8, 0xf6, 0x32, 0x2e, 0xcc, 0xb4, 0x9d, 0x9d, - 0x8e, 0xa6, 0x34, 0x7e, 0x12, 0x4d, 0x69, 0xe2, 0x58, 0x4d, 0x69, 0x15, 0x87, 0x4a, 0x40, 0x59, - 0x47, 0x71, 0xdb, 0xdb, 0x80, 0x8d, 0x49, 0x3e, 0x55, 0xe2, 0x0b, 0x92, 0xc5, 0xd8, 0xcd, 0x57, - 0x1b, 0xa8, 0xdb, 0x33, 0x86, 0x6b, 0x46, 0x61, 0x8e, 0x93, 0x05, 0x1a, 0xbb, 0x81, 0x23, 0x6d, - 0x81, 0x76, 0x32, 0x71, 0x0b, 0x1a, 0x6e, 0xd6, 0x3a, 0x8f, 0xe4, 0x0c, 0x1e, 0xad, 0xab, 0xe5, - 0x9a, 0x97, 0xb0, 0x7c, 0x31, 0xef, 0xbb, 0x8e, 0x62, 0xb7, 0xb0, 0xd0, 0x1d, 0xc5, 0x41, 0xec, - 0xef, 0x04, 0x42, 0xa3, 0x42, 0x30, 0xf9, 0x5f, 0x84, 0xc7, 0xda, 0xb3, 0x83, 0xac, 0xe2, 0x51, - 0x9d, 0x42, 0xc5, 0x8e, 0xf2, 0x76, 0x7b, 0x75, 0x88, 0xec, 0x92, 0x39, 0x02, 0xb9, 0x8c, 0x83, - 0x7c, 0xa0, 0x8f, 0xfa, 0x18, 0x56, 0xb4, 0x0b, 0x2b, 0xe3, 0x08, 0xd9, 0x25, 0xbb, 0x7a, 0xc9, - 0x2d, 0x3c, 0xbe, 0xc4, 0xba, 0xe2, 0xf0, 0x23, 0xc6, 0x0c, 0x16, 0x8a, 0xaa, 0x5e, 0x56, 0xf4, - 0x62, 0xab, 0x7b, 0xb2, 0xca, 0x0e, 0xc9, 0x13, 0xce, 0xfe, 0x6a, 0xd1, 0xeb, 0x8a, 0xb3, 0x6f, - 0x11, 0x3e, 0xdb, 0x73, 0xa6, 0x20, 0x31, 0x3c, 0xb5, 0x92, 0xc9, 0x29, 0x72, 0xf6, 0x9e, 0xb2, - 0xbc, 0x21, 0xdf, 0x4d, 0xe7, 0x94, 0xa5, 0xcc, 0x72, 0xfa, 0xc1, 0x5a, 0x4e, 0x18, 0x21, 0x7f, - 0xc0, 0xd3, 0x5d, 0xb2, 0xe5, 0x0d, 0x59, 0x59, 0x94, 0x33, 0xe9, 0x5c, 0x46, 0x40, 0x24, 0x8e, - 0x63, 0x3d, 0xc4, 0x72, 0xe6, 0xde, 0x5a, 0x7a, 0x31, 0x23, 0xf8, 0xc8, 0x34, 0x3e, 0xdb, 0x25, - 0xcf, 0xe6, 0xd2, 0xb9, 0x07, 0x59, 0xc1, 0x4f, 0xce, 0xe1, 0xdf, 0x75, 0x89, 0xe4, 0x4c, 0x7a, - 0x49, 0x08, 0x90, 0x4b, 0x38, 0x71, 0x48, 0xb0, 0x9c, 0x91, 0xe5, 0xd5, 0xf5, 0x15, 0x65, 0x63, - 0xe1, 0x4e, 0x66, 0x31, 0x97, 0x15, 0x46, 0x7b, 0x68, 0x2d, 0xc8, 0x1b, 0x7f, 0xcd, 0xac, 0x73, - 0xe5, 0xcc, 0xfa, 0x62, 0x26, 0x2b, 0x04, 0xe7, 0xde, 0x86, 0xb1, 0x3f, 0x7d, 0x6f, 0x95, 0xfc, - 0x84, 0x70, 0x90, 0x4f, 0x38, 0x64, 0xe0, 0x61, 0x28, 0x76, 0x65, 0x00, 0x0b, 0x77, 0x74, 0xfc, - 0x57, 0xf3, 0x79, 0x54, 0x2a, 0x5e, 0x7b, 0xac, 0xa5, 0x6c, 0xd0, 0x6a, 0x16, 0x54, 0xc0, 0x7e, - 0x94, 0xca, 0xab, 0xb6, 0xae, 0xa5, 0x6a, 0x36, 0x58, 0x7f, 0xaa, 0x83, 0x9d, 0xd2, 0x8d, 0x94, - 0x8b, 0x94, 0xda, 0xb6, 0x74, 0x0a, 0x4f, 0xbf, 0xfd, 0xe1, 0xff, 0xbe, 0x74, 0xf2, 0xa6, 0xfb, - 0x3f, 0x56, 0x6a, 0x05, 0xde, 0x96, 0x9e, 0x78, 0xfd, 0x41, 0x6c, 0x6d, 0xee, 0xf4, 0xfa, 0xc7, - 0x67, 0xcf, 0xa3, 0x59, 0xb2, 0x8f, 0xb0, 0x7f, 0x05, 0x28, 0x49, 0xf5, 0x3b, 0x64, 0x72, 0x96, - 0xe2, 0x60, 0x33, 0x69, 0xf2, 0xc9, 0x8b, 0x2f, 0x7d, 0xa8, 0xf9, 0x3c, 0x7a, 0xa5, 0x37, 0xcd, - 0x8a, 0x51, 0xd5, 0xa9, 0x71, 0x88, 0xa9, 0x05, 0x6a, 0x81, 0x11, 0xbd, 0x49, 0xe6, 0x7b, 0x11, - 0x3d, 0x82, 0x1f, 0x57, 0xd8, 0x21, 0xdf, 0x21, 0x1c, 0x70, 0xea, 0x90, 0x88, 0x7d, 0x17, 0x2c, - 0x67, 0x29, 0x0d, 0x58, 0xe0, 0x49, 0x7a, 0x3c, 0x9a, 0xd7, 0xc8, 0xd5, 0x21, 0x68, 0x92, 0x9f, - 0x11, 0x3e, 0xe5, 0x4e, 0xcf, 0x64, 0xf0, 0x49, 0x3b, 0x36, 0x37, 0x88, 0x89, 0x4b, 0xf4, 0x3f, - 0x68, 0xd8, 0x9c, 0xbd, 0x1f, 0x5b, 0x3b, 0x4e, 0xce, 0x76, 0x69, 0xee, 0x38, 0x39, 0xfc, 0x15, - 0xc2, 0x41, 0xde, 0x1a, 0xfb, 0xaa, 0xd7, 0x8e, 0x2e, 0x1a, 0x9b, 0x12, 0xf9, 0x37, 0x18, 0xd1, - 0xfb, 0x06, 0x23, 0x66, 0x2a, 0x26, 0x6d, 0x24, 0x1f, 0x0f, 0x4b, 0xf0, 0xf6, 0xec, 0x31, 0x72, - 0x75, 0x1e, 0xcd, 0xc6, 0xca, 0xcf, 0x76, 0x91, 0xef, 0x9b, 0x5d, 0x34, 0x73, 0x34, 0x15, 0xfe, - 0xe6, 0xdc, 0xdb, 0x45, 0xa8, 0xb9, 0x8b, 0x06, 0x7c, 0xdf, 0x3e, 0xfd, 0x3a, 0xea, 0x13, 0xd0, - 0xc2, 0x07, 0xe8, 0xe5, 0xad, 0xd1, 0x45, 0xf9, 0xc1, 0xd2, 0xda, 0xab, 0xfd, 0xf8, 0xc8, 0xde, - 0x7e, 0x7c, 0xe4, 0xcd, 0x7e, 0x1c, 0xfd, 0xbb, 0x19, 0x47, 0x9f, 0x35, 0xe3, 0xe8, 0x45, 0x33, - 0x8e, 0x5e, 0x35, 0xe3, 0xe8, 0xfb, 0x66, 0x1c, 0xbd, 0x6e, 0xc6, 0x47, 0xde, 0x34, 0xe3, 0xe8, - 0x7f, 0x07, 0xf1, 0x91, 0x67, 0x07, 0x71, 0xf4, 0xea, 0x20, 0x3e, 0xb2, 0x77, 0x10, 0x1f, 0xf9, - 0xfb, 0xc3, 0x92, 0x61, 0x6e, 0x95, 0xc4, 0xba, 0xe1, 0xcc, 0xb9, 0x96, 0x2a, 0xd6, 0x6c, 0x89, - 0x3d, 0x38, 0x7f, 0x00, 0x53, 0xa6, 0x65, 0xd4, 0xf5, 0x02, 0x58, 0x29, 0x4f, 0x2c, 0x99, 0xf9, - 0x92, 0x21, 0xc1, 0x63, 0xea, 0x7e, 0x00, 0x7a, 0xff, 0x27, 0xa9, 0x7c, 0x90, 0xc5, 0xe4, 0xea, - 0xaf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x41, 0x62, 0x8f, 0x8a, 0xcf, 0x13, 0x00, 0x00, + // 1634 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x13, 0xdb, + 0x15, 0xcf, 0xb5, 0x1d, 0x63, 0x5f, 0xe7, 0x63, 0xb8, 0x85, 0xe0, 0xb8, 0xd4, 0x32, 0x06, 0x55, + 0x51, 0x54, 0x8f, 0x21, 0x88, 0x0a, 0x22, 0x04, 0x75, 0x12, 0x27, 0x0a, 0xcd, 0x07, 0x8c, 0x4d, + 0xa8, 0xba, 0x19, 0x8d, 0xc7, 0xc7, 0x66, 0x1a, 0xdb, 0x33, 0x9d, 0x7b, 0xed, 0x60, 0x55, 0x91, + 0x2a, 0xba, 0xa9, 0xd4, 0x4d, 0xd5, 0xaa, 0x55, 0x3f, 0x58, 0xb4, 0x8b, 0x4a, 0x74, 0xdd, 0x4d, + 0xa5, 0x6c, 0xd8, 0x3d, 0xc4, 0xe2, 0x09, 0xbd, 0xb7, 0xc9, 0xf2, 0xe1, 0x3c, 0xe9, 0x21, 0xbd, + 0x0d, 0x7a, 0xff, 0x00, 0x4f, 0x73, 0xef, 0x8c, 0xb1, 0x1d, 0x43, 0xec, 0x10, 0x56, 0x9e, 0x7b, + 0xcf, 0x39, 0xbf, 0x7b, 0xce, 0xef, 0x9e, 0x73, 0x7c, 0x66, 0xf0, 0x4f, 0x1b, 0x40, 0x65, 0xc3, + 0x4c, 0x53, 0xfd, 0x21, 0x54, 0xb5, 0x74, 0x0d, 0xd8, 0x8e, 0x69, 0x6f, 0xab, 0x96, 0x59, 0x31, + 0xf4, 0xa6, 0x6a, 0xd7, 0x2b, 0x90, 0xb6, 0xea, 0x85, 0x8a, 0xa1, 0xab, 0xba, 0x5d, 0x2f, 0x6a, + 0x96, 0x21, 0x5b, 0xb6, 0xc9, 0x4c, 0x72, 0x41, 0xd8, 0xc9, 0xc2, 0x4e, 0xee, 0x63, 0x17, 0x4b, + 0x95, 0x0d, 0xf6, 0xb0, 0x5e, 0x90, 0x75, 0xb3, 0x9a, 0x2e, 0x9b, 0x65, 0x33, 0xcd, 0x2d, 0x0b, + 0xf5, 0x12, 0x5f, 0xf1, 0x05, 0x7f, 0x12, 0x88, 0xb1, 0xf3, 0x65, 0xd3, 0x2c, 0x57, 0x20, 0xad, + 0x59, 0x46, 0x5a, 0xab, 0xd5, 0x4c, 0xa6, 0x31, 0xc3, 0xac, 0x51, 0x57, 0xfa, 0x43, 0x57, 0xda, + 0xc6, 0x80, 0xaa, 0xc5, 0x9a, 0xae, 0x30, 0xd6, 0x1d, 0x04, 0xd8, 0xb6, 0x69, 0x7b, 0x86, 0xf2, + 0xd1, 0x01, 0x9a, 0x85, 0x5f, 0x81, 0xce, 0x5c, 0xfd, 0xd4, 0xd1, 0xfa, 0xac, 0x69, 0x41, 0xdb, + 0xaf, 0x6e, 0x75, 0xd3, 0xea, 0x74, 0x7a, 0xba, 0x5b, 0xd8, 0x69, 0x97, 0xec, 0x16, 0x35, 0x80, + 0x42, 0xad, 0xd1, 0x63, 0x9e, 0xe8, 0xd1, 0x31, 0x60, 0x47, 0xed, 0xd2, 0x48, 0xfe, 0x0f, 0xe1, + 0xf1, 0x45, 0x1b, 0x34, 0x06, 0x0a, 0xfc, 0xba, 0x0e, 0x94, 0x91, 0xdb, 0x38, 0x54, 0x05, 0xa6, + 0x15, 0x35, 0xa6, 0x45, 0x51, 0x02, 0xcd, 0x44, 0xe6, 0x2e, 0xca, 0xdd, 0x57, 0xb5, 0xc9, 0xa3, + 0x15, 0x56, 0xeb, 0xc0, 0xb4, 0x7c, 0xd3, 0x02, 0xa5, 0x6d, 0x44, 0xb6, 0x70, 0x80, 0x5a, 0xa0, + 0x47, 0x7d, 0xdc, 0xf8, 0x8a, 0x7c, 0xe4, 0x3d, 0xcb, 0x02, 0x2a, 0x67, 0x81, 0xee, 0x40, 0x2d, + 0x4c, 0xfe, 0x63, 0x77, 0xcc, 0x41, 0x90, 0xcb, 0xba, 0xea, 0xfc, 0x2a, 0x1c, 0x6f, 0x3e, 0xfc, + 0xe2, 0x56, 0x50, 0x1c, 0x9d, 0x7c, 0x8b, 0xf0, 0x84, 0xe7, 0x35, 0xb5, 0xcc, 0x1a, 0x05, 0x72, + 0xf3, 0x90, 0xdb, 0x89, 0xbe, 0x6e, 0xaf, 0x00, 0xeb, 0xe3, 0xf3, 0x26, 0x9e, 0xa4, 0x4d, 0xca, + 0xa0, 0xaa, 0xb6, 0x41, 0xfc, 0x1c, 0xe4, 0xc7, 0x3d, 0x20, 0x39, 0xae, 0x75, 0x18, 0x6a, 0x42, + 0x98, 0xaf, 0x7b, 0x80, 0xb9, 0x2e, 0x12, 0xe4, 0x01, 0x48, 0x58, 0x01, 0x36, 0x04, 0x03, 0xdf, + 0x20, 0x3c, 0xa1, 0x80, 0x55, 0xd1, 0xf4, 0xf6, 0xc5, 0xfd, 0xec, 0x10, 0x03, 0x97, 0xfa, 0x32, + 0xe0, 0x9a, 0xf5, 0x61, 0xe1, 0x41, 0x97, 0xd3, 0x73, 0x03, 0x38, 0xed, 0x62, 0x1d, 0xe1, 0x38, + 0x49, 0x63, 0xc9, 0x06, 0x6a, 0xd6, 0x6d, 0x1d, 0xd4, 0x06, 0xd8, 0xd4, 0x30, 0x6b, 0x9c, 0xdf, + 0xf0, 0x42, 0xe0, 0xf5, 0x1e, 0x42, 0xca, 0xa4, 0x27, 0xdd, 0x12, 0xc2, 0xce, 0x48, 0x4f, 0xe3, + 0xc9, 0x76, 0xa0, 0xe2, 0xae, 0x93, 0xff, 0x46, 0x18, 0xaf, 0x00, 0xf3, 0x02, 0x3f, 0x8f, 0xc3, + 0x35, 0xad, 0x0a, 0xd4, 0xd2, 0x74, 0xe0, 0x91, 0x87, 0x95, 0x77, 0x1b, 0x84, 0xe0, 0x80, 0xb3, + 0xe0, 0x41, 0x85, 0x15, 0xfe, 0x4c, 0x34, 0xec, 0x9c, 0xc8, 0xc1, 0xd4, 0x92, 0x69, 0x57, 0x35, + 0xc6, 0xdd, 0x99, 0x98, 0xbb, 0x3e, 0xd8, 0x45, 0x79, 0x9e, 0x2c, 0x73, 0xdb, 0x45, 0xb3, 0x08, + 0xca, 0x84, 0xdd, 0xb5, 0x97, 0xfc, 0x6f, 0x10, 0x47, 0x3a, 0x34, 0xc9, 0x3d, 0x1c, 0xd1, 0x79, + 0xc6, 0xf2, 0x03, 0x5d, 0x8a, 0x2f, 0x0f, 0x5c, 0x1c, 0x6e, 0xac, 0x0a, 0x16, 0x20, 0xce, 0x21, + 0x24, 0x8f, 0xc7, 0x6c, 0xc1, 0x8c, 0xc0, 0xf4, 0x0f, 0x5c, 0x70, 0xdd, 0x99, 0xa3, 0x44, 0x5c, + 0x18, 0x8e, 0xda, 0xef, 0xae, 0x02, 0x1f, 0xb8, 0xab, 0xae, 0xca, 0x1b, 0x3d, 0x89, 0xca, 0x3b, + 0x75, 0x22, 0x95, 0x17, 0x3c, 0xc1, 0xca, 0x23, 0x1b, 0x38, 0x48, 0x99, 0xc6, 0xea, 0x34, 0xfa, + 0xaf, 0x27, 0x28, 0xe1, 0x9f, 0x89, 0xcc, 0xa5, 0x07, 0x00, 0xce, 0x71, 0x13, 0xe1, 0xf2, 0x82, + 0xff, 0xd9, 0x2e, 0x52, 0x5c, 0x14, 0xb2, 0x8a, 0x4f, 0xdb, 0x50, 0x02, 0xdb, 0x36, 0x6a, 0x65, + 0x55, 0xfc, 0x7b, 0xd0, 0x68, 0x88, 0x03, 0x9f, 0x7f, 0x4f, 0xd1, 0x96, 0x78, 0xb4, 0x52, 0xdb, + 0x4c, 0xec, 0x53, 0xb2, 0x85, 0xa3, 0x45, 0xa8, 0x00, 0x83, 0xa2, 0x2a, 0x64, 0x50, 0x6c, 0x23, + 0x86, 0x07, 0x40, 0x9c, 0x72, 0xad, 0x15, 0xd7, 0xd8, 0xc3, 0xfd, 0x05, 0x9e, 0x2e, 0x1a, 0x54, + 0x2b, 0x54, 0xfa, 0x01, 0xe3, 0x01, 0x80, 0xcf, 0x79, 0xe6, 0x3d, 0xc8, 0x1d, 0xc5, 0x7d, 0x27, + 0x10, 0x42, 0x92, 0x2f, 0xf9, 0x1f, 0x84, 0x23, 0x6b, 0x06, 0x1d, 0xb0, 0xa0, 0x2f, 0xe0, 0xb1, + 0x8a, 0x56, 0x80, 0x8a, 0x5a, 0x32, 0x2a, 0x0c, 0x6c, 0xb7, 0xb0, 0x23, 0x7c, 0x6f, 0x99, 0x6f, + 0x91, 0x8b, 0x78, 0xdc, 0x06, 0xcb, 0xb4, 0x99, 0x5a, 0x32, 0xa0, 0x52, 0xa4, 0x51, 0x7f, 0xc2, + 0x3f, 0x13, 0x56, 0xc6, 0xc4, 0xe6, 0x32, 0xdf, 0x23, 0x97, 0xf1, 0x19, 0x57, 0x49, 0x5c, 0x8a, + 0xa7, 0x1b, 0xe0, 0xba, 0x44, 0xc8, 0xc4, 0x15, 0x0a, 0x8b, 0xe4, 0x7e, 0x10, 0x4b, 0xc2, 0x4f, + 0x51, 0xd4, 0xab, 0x0c, 0xaa, 0x64, 0x0a, 0x07, 0x19, 0xd4, 0xb4, 0x1a, 0xe3, 0x19, 0x17, 0x56, + 0xdc, 0xd5, 0x31, 0xba, 0x92, 0x84, 0xfd, 0x75, 0xa3, 0x28, 0x1a, 0xa3, 0xe2, 0x3c, 0x92, 0x04, + 0x8e, 0x14, 0x81, 0xea, 0xb6, 0xc1, 0xff, 0xb3, 0xa3, 0x11, 0x11, 0x69, 0xc7, 0x16, 0x89, 0xe1, + 0x90, 0x47, 0x73, 0x74, 0x2c, 0x81, 0x66, 0x42, 0x4a, 0x7b, 0x4d, 0x1e, 0xe0, 0x20, 0x27, 0x45, + 0x84, 0x14, 0x99, 0xbb, 0x3d, 0x40, 0xca, 0xf6, 0x86, 0x27, 0xaf, 0x71, 0x84, 0x6c, 0x8d, 0xd9, + 0x4d, 0xc5, 0x85, 0x23, 0x25, 0x1c, 0xe9, 0x98, 0xaf, 0xdc, 0x64, 0x58, 0x3a, 0x0e, 0x7a, 0xe6, + 0x1d, 0x8c, 0x38, 0xa2, 0x13, 0x98, 0xdc, 0xc0, 0xd8, 0xdc, 0xa9, 0x81, 0xad, 0x3a, 0x83, 0x4b, + 0x34, 0xcc, 0x0b, 0x3a, 0xd6, 0x73, 0xcc, 0x96, 0x01, 0x3b, 0x5e, 0xc6, 0x85, 0xb9, 0xb6, 0xb3, + 0xd3, 0xd5, 0x94, 0xc6, 0x4f, 0xa2, 0x29, 0x4d, 0x7c, 0x54, 0x53, 0x5a, 0xc5, 0xa1, 0x32, 0x30, + 0xde, 0x51, 0xdc, 0xf6, 0x36, 0x64, 0x63, 0x52, 0x4e, 0x95, 0xc5, 0x82, 0xe4, 0x30, 0x76, 0xf3, + 0x95, 0x02, 0x73, 0x7b, 0xc6, 0xf1, 0x9a, 0x51, 0x58, 0xe0, 0xe4, 0x80, 0xc5, 0x6e, 0xe0, 0x48, + 0xc7, 0x45, 0x3b, 0x99, 0xb8, 0x0d, 0x4d, 0x37, 0x6b, 0x9d, 0x47, 0x72, 0x06, 0x8f, 0x36, 0xb4, + 0x4a, 0xdd, 0x4b, 0x58, 0xb1, 0x98, 0xf7, 0x5d, 0x47, 0xb1, 0x5b, 0x58, 0xea, 0xbd, 0xc5, 0x61, + 0xec, 0xef, 0x04, 0x42, 0xa3, 0x52, 0x30, 0xf9, 0x07, 0x84, 0xc7, 0x3a, 0xb3, 0x83, 0xac, 0xe2, + 0x51, 0x83, 0x41, 0x95, 0x46, 0x45, 0xbb, 0xbd, 0x7a, 0x8c, 0xec, 0x52, 0x04, 0x02, 0xb9, 0x8c, + 0x83, 0x62, 0xa0, 0x8f, 0xfa, 0x38, 0x56, 0xb4, 0x07, 0x2b, 0xeb, 0x08, 0x39, 0xc9, 0xae, 0x5e, + 0x72, 0x1b, 0x8f, 0x2f, 0xf1, 0xae, 0x78, 0xfc, 0x11, 0x63, 0x06, 0x4b, 0x25, 0xcd, 0xa8, 0xa8, + 0x46, 0xa9, 0xdd, 0x3d, 0x79, 0x65, 0x87, 0x94, 0x09, 0x67, 0x7f, 0xb5, 0xe4, 0x75, 0xc5, 0xd9, + 0xef, 0x10, 0x3e, 0xdb, 0x77, 0xa6, 0x20, 0x31, 0x3c, 0xb5, 0x92, 0xcd, 0xab, 0x4a, 0xee, 0xae, + 0xba, 0xbc, 0xa9, 0xac, 0x67, 0xf2, 0xea, 0x52, 0x76, 0x39, 0x73, 0x7f, 0x2d, 0x2f, 0x8d, 0x90, + 0x1f, 0xe1, 0xe9, 0x1e, 0xd9, 0xf2, 0xa6, 0xa2, 0x2e, 0x2a, 0xd9, 0x4c, 0x3e, 0x2b, 0x21, 0x12, + 0xc7, 0xb1, 0x3e, 0x62, 0x25, 0x7b, 0x77, 0x2d, 0xb3, 0x98, 0x95, 0x7c, 0x64, 0x1a, 0x9f, 0xed, + 0x91, 0xe7, 0xf2, 0x99, 0xfc, 0xfd, 0x9c, 0xe4, 0x27, 0xe7, 0xf0, 0x0f, 0x7a, 0x44, 0x4a, 0x36, + 0xb3, 0x24, 0x05, 0xc8, 0x25, 0x9c, 0x38, 0x24, 0x58, 0xce, 0x2a, 0xca, 0xea, 0xc6, 0x8a, 0xba, + 0xb9, 0x70, 0x27, 0xbb, 0x98, 0xcf, 0x49, 0xa3, 0x7d, 0xb4, 0x16, 0x94, 0xcd, 0x9f, 0x67, 0x37, + 0x84, 0x72, 0x76, 0x63, 0x31, 0x9b, 0x93, 0x82, 0x73, 0x7f, 0x8a, 0x60, 0x7f, 0xe6, 0xee, 0x2a, + 0xf9, 0xbd, 0x0f, 0x07, 0xc5, 0x84, 0x43, 0x86, 0x1e, 0x86, 0x62, 0x57, 0x86, 0xb0, 0x70, 0x47, + 0xc7, 0xbf, 0xa1, 0xd6, 0x67, 0xd1, 0xf5, 0xd2, 0xb5, 0x47, 0x7a, 0x8a, 0x82, 0x5e, 0xb7, 0xa1, + 0x0a, 0xf4, 0x61, 0xaa, 0xa0, 0x51, 0x43, 0x4f, 0xd5, 0x29, 0xd8, 0x3f, 0xe9, 0x15, 0x51, 0xa6, + 0xd5, 0x8a, 0x9a, 0x5d, 0x14, 0xd2, 0x06, 0xd0, 0x94, 0x61, 0xa6, 0xdc, 0x83, 0x52, 0x3b, 0xb6, + 0xc1, 0xe0, 0xf1, 0x97, 0x5f, 0xff, 0xd9, 0x97, 0x49, 0xde, 0x74, 0x5f, 0x73, 0xd3, 0xed, 0xbc, + 0xa0, 0xe9, 0xdf, 0x78, 0xed, 0x43, 0x6e, 0x6f, 0xee, 0xf6, 0x7b, 0x21, 0xa4, 0xf3, 0x68, 0x96, + 0xfc, 0xce, 0x87, 0xfd, 0x2b, 0xc0, 0x48, 0x6a, 0xd0, 0x19, 0x54, 0x90, 0x20, 0x0f, 0x37, 0xb2, + 0x26, 0x9f, 0xa0, 0xe7, 0xff, 0xf7, 0x39, 0x2c, 0x28, 0xfd, 0x59, 0xa8, 0x9a, 0x35, 0x83, 0x99, + 0x1f, 0x20, 0xc2, 0x53, 0xe8, 0xe1, 0xc2, 0x06, 0xad, 0xc8, 0xa9, 0xb8, 0x49, 0xe6, 0xfb, 0x51, + 0x71, 0x04, 0x03, 0x42, 0x61, 0x97, 0xbc, 0x45, 0x38, 0xe0, 0x14, 0x32, 0x91, 0x07, 0xae, 0x78, + 0xc1, 0x43, 0x7a, 0xc8, 0x0e, 0x91, 0xfc, 0xcb, 0xa7, 0x26, 0xe2, 0x1a, 0xb9, 0x7a, 0x0c, 0x22, + 0xc8, 0x3f, 0x7d, 0xf8, 0x94, 0x3b, 0xa0, 0x93, 0xe1, 0x87, 0xf9, 0xd8, 0xdc, 0x30, 0x26, 0x2e, + 0x15, 0x4f, 0x3f, 0x51, 0x55, 0xdc, 0x8b, 0xad, 0x7d, 0x4c, 0x55, 0xf4, 0x68, 0xee, 0x3a, 0x55, + 0xf2, 0x2d, 0xc2, 0x41, 0xd1, 0x9b, 0x07, 0x6a, 0x18, 0x5d, 0x6d, 0x3c, 0x36, 0x25, 0x8b, 0x8f, + 0x40, 0xb2, 0xf7, 0x11, 0x48, 0xce, 0x56, 0x2d, 0xd6, 0x4c, 0xfe, 0xf5, 0x13, 0xc5, 0x7f, 0x7b, + 0xf6, 0x23, 0x4a, 0x61, 0x1e, 0xcd, 0xc6, 0x2a, 0xcf, 0xf6, 0x90, 0xef, 0x8b, 0x3d, 0x34, 0x73, + 0x74, 0xa4, 0xe2, 0x9f, 0x7d, 0x7f, 0x0f, 0xa1, 0xd6, 0x1e, 0x1a, 0x72, 0x1e, 0x78, 0xfc, 0x79, + 0xd4, 0x27, 0xa1, 0x85, 0xbf, 0xa3, 0x17, 0xb7, 0x46, 0x17, 0x95, 0xfb, 0x4b, 0x6b, 0x2f, 0x5f, + 0xc5, 0x47, 0xf6, 0x5f, 0xc5, 0x47, 0xde, 0xbc, 0x8a, 0xa3, 0xdf, 0xb6, 0xe2, 0xe8, 0x69, 0x2b, + 0x8e, 0x9e, 0xb7, 0xe2, 0xe8, 0x65, 0x2b, 0x8e, 0xbe, 0x6a, 0xc5, 0xd1, 0xeb, 0x56, 0x7c, 0xe4, + 0x4d, 0x2b, 0x8e, 0xfe, 0x78, 0x10, 0x1f, 0x79, 0x76, 0x10, 0x47, 0x2f, 0x0f, 0xe2, 0x23, 0xfb, + 0x07, 0xf1, 0x91, 0x5f, 0x3e, 0x28, 0x9b, 0xd6, 0x76, 0x59, 0x6e, 0x98, 0xce, 0x1c, 0x6e, 0x6b, + 0x72, 0x9d, 0xa6, 0xf9, 0x83, 0xf3, 0x82, 0x9a, 0xb2, 0x6c, 0xb3, 0x61, 0x14, 0xc1, 0x4e, 0x79, + 0xe2, 0xb4, 0x55, 0x28, 0x9b, 0x69, 0x78, 0xc4, 0xdc, 0x0f, 0x54, 0xef, 0xff, 0x64, 0x56, 0x08, + 0xf2, 0x2b, 0xbb, 0xfa, 0x7d, 0x00, 0x00, 0x00, 0xff, 0xff, 0x4e, 0xcb, 0xfa, 0x49, 0x6f, 0x14, + 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/network_policy_rule/public_crudapi.vesapi.go b/pbgo/extschema/schema/network_policy_rule/public_crudapi.vesapi.go index 39302bf9e..890a2d423 100644 --- a/pbgo/extschema/schema/network_policy_rule/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/network_policy_rule/public_crudapi.vesapi.go @@ -3076,10 +3076,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3136,10 +3140,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3198,10 +3206,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_policy_set/crudapi/api.vesapi.go b/pbgo/extschema/schema/network_policy_set/crudapi/api.vesapi.go index 6982e072d..5041b5481 100644 --- a/pbgo/extschema/schema/network_policy_set/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/network_policy_set/crudapi/api.vesapi.go @@ -3089,10 +3089,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/network_policy_set/object.pb.go b/pbgo/extschema/schema/network_policy_set/object.pb.go index d880e8296..f9fb58657 100644 --- a/pbgo/extschema/schema/network_policy_set/object.pb.go +++ b/pbgo/extschema/schema/network_policy_set/object.pb.go @@ -234,39 +234,43 @@ func init() { } var fileDescriptor_9d597657a34bd572 = []byte{ - // 512 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x41, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0x12, 0x89, 0x65, 0x52, 0x62, 0x59, 0x11, 0xd6, 0xaa, 0x43, 0x88, 0x97, 0x22, - 0xee, 0xac, 0xd4, 0x93, 0x45, 0x72, 0xa8, 0x07, 0x11, 0x5a, 0x84, 0xa4, 0x7a, 0xf0, 0x12, 0x76, - 0x37, 0x2f, 0xdb, 0xb5, 0x49, 0xde, 0xb0, 0x33, 0xbb, 0x9a, 0x83, 0xe0, 0x47, 0xf0, 0xea, 0x37, - 0x10, 0x3f, 0x85, 0xf5, 0x24, 0x3d, 0x05, 0x4f, 0x39, 0x9a, 0xcd, 0x45, 0xf0, 0x52, 0xfc, 0x04, - 0xd2, 0xd9, 0x6c, 0xe8, 0xb6, 0x91, 0xf4, 0xf6, 0x86, 0xf7, 0xfb, 0xff, 0xdf, 0x9b, 0x37, 0x6f, - 0xa8, 0x9d, 0x80, 0xe4, 0x21, 0x3a, 0xd2, 0x3f, 0x84, 0x81, 0xeb, 0x0c, 0x41, 0xbd, 0xc3, 0xe8, - 0xa8, 0x23, 0xb0, 0x1f, 0xfa, 0xa3, 0x8e, 0x04, 0xe5, 0xa0, 0xf7, 0x16, 0x7c, 0xc5, 0x45, 0x84, - 0x0a, 0xcd, 0x7a, 0x86, 0xf3, 0x0c, 0xe7, 0x97, 0xf1, 0x4d, 0x3b, 0x08, 0xd5, 0x61, 0xec, 0x71, - 0x1f, 0x07, 0x4e, 0x80, 0x01, 0x3a, 0x5a, 0xe8, 0xc5, 0x3d, 0x7d, 0xd2, 0x07, 0x1d, 0x65, 0x86, - 0x9b, 0x0f, 0x57, 0xd6, 0x57, 0x23, 0x01, 0x72, 0x4e, 0xdf, 0x29, 0xd2, 0x28, 0x54, 0x88, 0xc3, - 0x3c, 0x79, 0xbb, 0x98, 0x3c, 0xaf, 0x6b, 0x14, 0x53, 0x09, 0x48, 0x18, 0x26, 0x45, 0x79, 0xe3, - 0x0f, 0xa1, 0x95, 0x97, 0xfa, 0xae, 0xe6, 0x13, 0xba, 0x36, 0x00, 0xe5, 0x76, 0x5d, 0xe5, 0x5a, - 0xa4, 0x4e, 0xb6, 0xaa, 0xdb, 0xf7, 0x78, 0xf1, 0xe2, 0x19, 0xb8, 0x0f, 0xca, 0x3d, 0x18, 0x09, - 0x68, 0x2d, 0x70, 0x73, 0x8f, 0xde, 0x90, 0x23, 0xa9, 0x60, 0xd0, 0x59, 0x38, 0x94, 0xb4, 0xc3, - 0xfd, 0x0b, 0x0e, 0x6d, 0x4d, 0x5d, 0xf0, 0xa9, 0x65, 0xda, 0xfd, 0xdc, 0xad, 0x49, 0xaf, 0x49, - 0x01, 0xbe, 0x55, 0xd6, 0x16, 0x0f, 0xf8, 0xaa, 0xe9, 0xf3, 0xb6, 0x00, 0x5f, 0x3b, 0x69, 0xdd, - 0x8e, 0xf5, 0xfd, 0xd8, 0x2a, 0x6d, 0x90, 0x93, 0x63, 0xab, 0x96, 0x80, 0xb4, 0x43, 0xb4, 0xe7, - 0x9a, 0xc6, 0x2b, 0xba, 0x96, 0xb3, 0xe6, 0x0b, 0x7a, 0x3d, 0xf0, 0x3b, 0xba, 0x50, 0xd6, 0xeb, - 0xa3, 0xd5, 0x85, 0x9e, 0xf7, 0xd1, 0x73, 0xfb, 0x8b, 0x72, 0x95, 0xc0, 0x3f, 0x8b, 0x1b, 0x7f, - 0x09, 0x5d, 0x6f, 0x2b, 0x57, 0xc5, 0xf2, 0xca, 0xa3, 0xcc, 0xf0, 0x25, 0xa3, 0x3c, 0xa0, 0xd5, - 0x6c, 0xf7, 0x3a, 0x11, 0xf4, 0xa4, 0x55, 0xaa, 0x97, 0xb7, 0xaa, 0xdb, 0x77, 0x97, 0x3e, 0x44, - 0x0b, 0x7a, 0x67, 0xe2, 0xdd, 0x5b, 0x5f, 0x3f, 0x98, 0x97, 0x9b, 0x6d, 0x51, 0xcc, 0x29, 0x69, - 0x3e, 0xa5, 0xd4, 0xc7, 0x61, 0x37, 0xd4, 0x4f, 0x6f, 0x95, 0x97, 0x9a, 0x3e, 0xcb, 0x01, 0xdd, - 0xd1, 0x39, 0x7e, 0xe7, 0xe6, 0xcf, 0xe6, 0x06, 0xad, 0xd1, 0xf5, 0xbc, 0x49, 0x1e, 0x87, 0xdd, - 0xdd, 0xcf, 0xe4, 0xa4, 0x59, 0x6a, 0xed, 0x8d, 0xa7, 0xcc, 0x98, 0x4c, 0x99, 0x71, 0x3a, 0x65, - 0xe4, 0x63, 0xca, 0xc8, 0x97, 0x94, 0x91, 0x1f, 0x29, 0x23, 0xe3, 0x94, 0x91, 0x49, 0xca, 0xc8, - 0xaf, 0x94, 0x91, 0xdf, 0x29, 0x33, 0x4e, 0x53, 0x46, 0x3e, 0xcd, 0x98, 0xf1, 0x6d, 0xc6, 0xc8, - 0x78, 0xc6, 0x8c, 0xc9, 0x8c, 0x19, 0x6f, 0x5e, 0x07, 0x28, 0x8e, 0x02, 0x9e, 0x60, 0x5f, 0x41, - 0x14, 0xb9, 0x3c, 0x96, 0x8e, 0x0e, 0x7a, 0x18, 0x0d, 0x6c, 0x11, 0x61, 0x12, 0x76, 0x21, 0xb2, - 0xf3, 0xb4, 0x23, 0xbc, 0x00, 0x1d, 0x78, 0xaf, 0xe6, 0x0b, 0xfd, 0xdf, 0xdf, 0xe3, 0x55, 0xf4, - 0x72, 0x3f, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0x91, 0x2b, 0xf9, 0x3a, 0xe8, 0x03, 0x00, 0x00, + // 573 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x93, 0x41, 0x6b, 0x13, 0x41, + 0x14, 0xc7, 0x77, 0x92, 0x52, 0xcb, 0xb4, 0xd4, 0xb2, 0x22, 0xac, 0x55, 0x87, 0x10, 0x2f, 0x45, + 0xba, 0xbb, 0x52, 0xf1, 0x60, 0x91, 0x1e, 0xea, 0xa1, 0x08, 0x2d, 0x42, 0x5a, 0x3d, 0xa8, 0x10, + 0x66, 0x67, 0x5f, 0xb6, 0x6b, 0xb3, 0x3b, 0xcb, 0xcc, 0xec, 0xda, 0x1c, 0x04, 0x3f, 0x82, 0x57, + 0xfd, 0x04, 0xe2, 0x57, 0xf0, 0x62, 0x3d, 0x88, 0x78, 0x2a, 0x3d, 0xe5, 0x68, 0x36, 0x17, 0x8f, + 0xc5, 0x4f, 0x20, 0x9d, 0xcd, 0xc6, 0x26, 0x8d, 0xc4, 0x8b, 0xb7, 0x37, 0xbc, 0xdf, 0xff, 0x3f, + 0xef, 0xbd, 0x99, 0x87, 0xed, 0x0c, 0xa4, 0x13, 0x72, 0x57, 0xb2, 0x7d, 0x88, 0xa8, 0x1b, 0x83, + 0x7a, 0xc5, 0xc5, 0x41, 0x33, 0xe1, 0xed, 0x90, 0x75, 0x9a, 0x12, 0x94, 0xcb, 0xbd, 0x97, 0xc0, + 0x94, 0x93, 0x08, 0xae, 0xb8, 0x59, 0x2b, 0x70, 0xa7, 0xc0, 0x9d, 0x8b, 0xf8, 0xb2, 0x1d, 0x84, + 0x6a, 0x3f, 0xf5, 0x1c, 0xc6, 0x23, 0x37, 0xe0, 0x01, 0x77, 0xb5, 0xd0, 0x4b, 0x5b, 0xfa, 0xa4, + 0x0f, 0x3a, 0x2a, 0x0c, 0x97, 0x57, 0xa7, 0xde, 0xaf, 0x3a, 0x09, 0xc8, 0x01, 0x7d, 0x7d, 0x94, + 0xe6, 0x89, 0x0a, 0x79, 0x5c, 0x26, 0xaf, 0x8d, 0x26, 0xcf, 0xeb, 0xea, 0xa3, 0xa9, 0x0c, 0x24, + 0xc4, 0xd9, 0xa8, 0xbc, 0xfe, 0xbe, 0x8a, 0x67, 0x1f, 0xeb, 0x5e, 0xcd, 0xfb, 0x78, 0x2e, 0x02, + 0x45, 0x7d, 0xaa, 0xa8, 0x85, 0x6a, 0x68, 0x65, 0x7e, 0xed, 0xa6, 0x33, 0xda, 0x78, 0x01, 0xee, + 0x80, 0xa2, 0x7b, 0x9d, 0x04, 0x1a, 0x43, 0xdc, 0xdc, 0xc6, 0x97, 0x65, 0x47, 0x2a, 0x88, 0x9a, + 0x43, 0x87, 0x8a, 0x76, 0xb8, 0x35, 0xe6, 0xb0, 0xab, 0xa9, 0x31, 0x9f, 0xc5, 0x42, 0xbb, 0x53, + 0xba, 0x6d, 0xe0, 0x19, 0x99, 0x00, 0xb3, 0xaa, 0xda, 0xe2, 0xb6, 0x33, 0x6d, 0xfa, 0xce, 0x6e, + 0x02, 0x4c, 0x3b, 0x69, 0xdd, 0xfa, 0x57, 0xf4, 0xe5, 0xc8, 0xaa, 0x2c, 0xa1, 0x93, 0x23, 0xeb, + 0x13, 0xc2, 0xcf, 0x71, 0x75, 0x0b, 0x94, 0xb9, 0xd7, 0xba, 0x77, 0xc8, 0x6c, 0x09, 0x2c, 0x15, + 0x10, 0x81, 0xdc, 0xb7, 0x3d, 0x2a, 0x43, 0x66, 0x47, 0x3c, 0x0e, 0x15, 0x17, 0xab, 0xb5, 0xf1, + 0xb4, 0x54, 0x34, 0xf6, 0xa9, 0xf0, 0xff, 0x10, 0x19, 0x48, 0x3b, 0xe4, 0xf6, 0xe0, 0x7e, 0x5b, + 0x00, 0xf5, 0xf1, 0x0b, 0x3c, 0xb3, 0x1d, 0xca, 0xff, 0xe4, 0x5e, 0x7f, 0x82, 0xe7, 0xca, 0xd6, + 0xcc, 0x47, 0xf8, 0x52, 0xc0, 0x9a, 0x7a, 0x2e, 0xc5, 0x68, 0xef, 0x4c, 0x9f, 0xcb, 0x56, 0x9b, + 0x7b, 0xb4, 0x3d, 0x9c, 0xce, 0x6c, 0xc0, 0xce, 0xe2, 0xfa, 0x2f, 0x84, 0x17, 0x76, 0x15, 0x55, + 0xa9, 0xfc, 0xe7, 0x97, 0x2f, 0xf0, 0x09, 0x2f, 0xbf, 0x87, 0xe7, 0x8b, 0x55, 0x69, 0x0a, 0x68, + 0x49, 0xab, 0x52, 0xab, 0xae, 0xcc, 0xaf, 0xdd, 0x98, 0xf8, 0x6f, 0x1a, 0xd0, 0x3a, 0x13, 0x6f, + 0x5e, 0xfd, 0xf8, 0xda, 0xbc, 0x58, 0x6c, 0x03, 0xf3, 0x92, 0x92, 0xe6, 0x03, 0x8c, 0x19, 0x8f, + 0xfd, 0x50, 0xff, 0x54, 0xab, 0x3a, 0xd1, 0xf4, 0x61, 0x09, 0xe8, 0x8a, 0xce, 0xf1, 0xeb, 0x57, + 0x4e, 0x36, 0x96, 0xf0, 0x22, 0x5e, 0x28, 0x8b, 0x74, 0xd2, 0xd0, 0xdf, 0x7c, 0x87, 0xbe, 0x6f, + 0x54, 0x1a, 0xdb, 0xc7, 0x3d, 0x62, 0x74, 0x7b, 0xc4, 0x38, 0xed, 0x11, 0xf4, 0x26, 0x27, 0xe8, + 0x43, 0x4e, 0xd0, 0xb7, 0x9c, 0xa0, 0xe3, 0x9c, 0xa0, 0x6e, 0x4e, 0xd0, 0x8f, 0x9c, 0xa0, 0x9f, + 0x39, 0x31, 0x4e, 0x73, 0x82, 0xde, 0xf6, 0x89, 0xf1, 0xb9, 0x4f, 0xd0, 0x71, 0x9f, 0x18, 0xdd, + 0x3e, 0x31, 0x9e, 0x3d, 0x0d, 0x78, 0x72, 0x10, 0x38, 0x19, 0x6f, 0x2b, 0x10, 0x82, 0x3a, 0xa9, + 0x74, 0x75, 0xd0, 0xe2, 0x22, 0xb2, 0x13, 0xc1, 0xb3, 0xd0, 0x07, 0x61, 0x97, 0x69, 0x37, 0xf1, + 0x02, 0xee, 0xc2, 0xa1, 0x1a, 0xec, 0xdf, 0x5f, 0x97, 0xdd, 0x9b, 0xd5, 0xbb, 0x78, 0xf7, 0x77, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x39, 0xc5, 0x52, 0xf4, 0x97, 0x04, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/network_policy_set/public_crudapi.pb.go b/pbgo/extschema/schema/network_policy_set/public_crudapi.pb.go index 13a15d9ec..8ff16be88 100644 --- a/pbgo/extschema/schema/network_policy_set/public_crudapi.pb.go +++ b/pbgo/extschema/schema/network_policy_set/public_crudapi.pb.go @@ -702,86 +702,88 @@ func init() { } var fileDescriptor_58b265a693f27612 = []byte{ - // 1253 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4d, 0x6c, 0x1b, 0x45, - 0x14, 0xf6, 0xd8, 0x8e, 0x6b, 0x8f, 0xd3, 0x64, 0x99, 0xfe, 0x6d, 0x4d, 0xb5, 0x32, 0x06, 0x41, - 0x84, 0xea, 0xdd, 0xca, 0x80, 0xa0, 0x05, 0x45, 0x4a, 0x52, 0x27, 0x4d, 0x49, 0x9a, 0x6a, 0xed, - 0x46, 0x08, 0x21, 0x2d, 0x6b, 0xfb, 0xc5, 0xdd, 0xd6, 0xde, 0x59, 0x76, 0xc6, 0x0e, 0x16, 0x8a, - 0x84, 0x7a, 0xe4, 0x84, 0x84, 0xb8, 0x20, 0x0e, 0xbd, 0x20, 0x71, 0xe7, 0x82, 0x14, 0x0e, 0xb9, - 0x51, 0xf5, 0x80, 0x2a, 0xe0, 0xd0, 0x23, 0x75, 0x38, 0xf4, 0x58, 0x89, 0x3b, 0x42, 0x3b, 0xb3, - 0x76, 0x6d, 0x37, 0xc8, 0x76, 0xe1, 0xe4, 0x99, 0xf7, 0xbd, 0xef, 0xdb, 0x79, 0x33, 0xef, 0x3d, - 0x3f, 0xfc, 0x56, 0x1b, 0x98, 0xee, 0x50, 0x83, 0x55, 0x6f, 0x42, 0xd3, 0x36, 0x5c, 0xe0, 0xbb, - 0xd4, 0xbf, 0x6d, 0x79, 0xb4, 0xe1, 0x54, 0x3b, 0x16, 0x03, 0x6e, 0x78, 0xad, 0x4a, 0xc3, 0xa9, - 0x5a, 0x55, 0xbf, 0x55, 0xb3, 0x3d, 0x47, 0xf7, 0x7c, 0xca, 0x29, 0xc9, 0x4a, 0x9a, 0x2e, 0x69, - 0xfa, 0xb3, 0xb4, 0x4c, 0xbe, 0xee, 0xf0, 0x9b, 0xad, 0x8a, 0x5e, 0xa5, 0x4d, 0xa3, 0x4e, 0xeb, - 0xd4, 0x10, 0xc4, 0x4a, 0x6b, 0x47, 0xec, 0xc4, 0x46, 0xac, 0xa4, 0x60, 0xe6, 0x5c, 0x9d, 0xd2, - 0x7a, 0x03, 0x0c, 0xdb, 0x73, 0x0c, 0xdb, 0x75, 0x29, 0xb7, 0xb9, 0x43, 0x5d, 0x16, 0xa2, 0x2f, - 0x86, 0x68, 0x5f, 0x03, 0x9a, 0x1e, 0xef, 0x84, 0x60, 0x66, 0x38, 0x04, 0xf0, 0x7d, 0xea, 0xf7, - 0x88, 0xf9, 0xb1, 0xe1, 0xd1, 0xca, 0x2d, 0xa8, 0xf2, 0xd0, 0xfd, 0xfc, 0x58, 0x77, 0xde, 0xf1, - 0xa0, 0x7f, 0xaa, 0x61, 0x6f, 0xea, 0x0d, 0x1e, 0xf9, 0xec, 0x30, 0x38, 0xc8, 0xcb, 0x0d, 0x43, - 0x6d, 0x60, 0xe0, 0xb6, 0x47, 0xe8, 0xd9, 0x11, 0x1f, 0x07, 0x76, 0xad, 0x21, 0x8f, 0xdc, 0x5d, - 0x84, 0xf1, 0x1a, 0x70, 0x13, 0x3e, 0x69, 0x01, 0xe3, 0xe4, 0x1c, 0x4e, 0xb9, 0x76, 0x13, 0x98, - 0x67, 0x57, 0x41, 0x45, 0x59, 0xb4, 0x90, 0x32, 0x9f, 0x1a, 0x08, 0xc1, 0xf1, 0x60, 0xa3, 0x46, - 0x05, 0x20, 0xd6, 0xe4, 0x63, 0x3c, 0xef, 0x03, 0xf3, 0xa8, 0xcb, 0xc0, 0xda, 0xa1, 0x7e, 0xd3, - 0xe6, 0x6a, 0x2c, 0x8b, 0x16, 0xe6, 0x0a, 0x6f, 0xeb, 0xe3, 0x5e, 0x57, 0x17, 0x1f, 0x96, 0xdc, - 0x55, 0x41, 0x5d, 0xa1, 0x35, 0x30, 0xe7, 0xfc, 0x21, 0x5b, 0xee, 0xef, 0x38, 0x4e, 0x0f, 0x78, - 0x12, 0x03, 0x2b, 0x3e, 0x30, 0xda, 0xf2, 0xab, 0x60, 0xb5, 0xc1, 0x67, 0x0e, 0x75, 0xd5, 0x78, - 0x70, 0xa2, 0xe5, 0xf8, 0xe3, 0x7d, 0x84, 0xcc, 0xf9, 0x1e, 0xba, 0x2d, 0x41, 0xf2, 0x1e, 0x4e, - 0x36, 0x81, 0xdb, 0x35, 0x9b, 0xdb, 0xea, 0x4c, 0x16, 0x2d, 0xa4, 0x0b, 0xd9, 0x91, 0xb3, 0x6d, - 0x89, 0xe7, 0x5b, 0x03, 0xbe, 0x09, 0xdc, 0x2e, 0x77, 0x3c, 0x30, 0xfb, 0x0c, 0xb2, 0x85, 0xe7, - 0x59, 0x87, 0x71, 0x68, 0x5a, 0x7d, 0x91, 0x63, 0x42, 0xe4, 0xd5, 0x11, 0x91, 0x92, 0xf0, 0x7a, - 0x56, 0x6a, 0x4e, 0xd2, 0x37, 0x7b, 0x82, 0x26, 0x8e, 0x33, 0x0f, 0xaa, 0x6a, 0x42, 0xa8, 0xe4, - 0x27, 0xba, 0xa6, 0x92, 0x07, 0xd5, 0x40, 0x6c, 0x79, 0xfe, 0x9b, 0xbd, 0xd9, 0x80, 0xad, 0xd7, - 0xab, 0x56, 0xf0, 0x6b, 0x0a, 0x2d, 0xb2, 0x89, 0x13, 0x8c, 0xdb, 0xbc, 0xc5, 0xd4, 0xbb, 0xdf, - 0xa2, 0x6c, 0x6c, 0x21, 0x5d, 0xd0, 0xc7, 0xeb, 0x96, 0x04, 0x43, 0x1e, 0x78, 0x39, 0x76, 0xb0, - 0x87, 0xcc, 0x50, 0x84, 0xac, 0xe3, 0x17, 0x7c, 0xd8, 0x01, 0xdf, 0x77, 0xdc, 0xba, 0x25, 0x73, - 0x9b, 0xa9, 0x49, 0xa1, 0x7b, 0xee, 0xc8, 0xab, 0x33, 0x61, 0x47, 0xc4, 0xaa, 0xf4, 0x69, 0xd2, - 0xce, 0xc8, 0x36, 0x56, 0x6b, 0xd0, 0x00, 0x0e, 0x35, 0x4b, 0x62, 0x50, 0xeb, 0x2b, 0xa6, 0x26, - 0x50, 0x3c, 0x1d, 0xb2, 0xcd, 0x90, 0xdc, 0xd3, 0xfd, 0x00, 0x9f, 0xad, 0x39, 0xcc, 0xae, 0x34, - 0x8e, 0x12, 0xc6, 0x13, 0x08, 0x9f, 0xe9, 0xd1, 0x47, 0x94, 0x2f, 0xa5, 0xee, 0x2f, 0x26, 0xe4, - 0xfa, 0x6a, 0x3c, 0x89, 0x94, 0x68, 0xee, 0x3b, 0x84, 0xd3, 0x1b, 0x0e, 0x9b, 0xb0, 0x48, 0x5e, - 0xc2, 0xb3, 0x0d, 0xbb, 0x02, 0x0d, 0x6b, 0xc7, 0x69, 0x70, 0xf0, 0xc3, 0x62, 0x49, 0x0b, 0xdb, - 0xaa, 0x30, 0x91, 0x97, 0xf1, 0x71, 0x1f, 0x3c, 0xea, 0x73, 0x6b, 0xc7, 0x81, 0x46, 0x8d, 0xa9, - 0xb1, 0x6c, 0x6c, 0x21, 0x65, 0xce, 0x4a, 0xe3, 0xaa, 0xb0, 0x91, 0x0b, 0xf8, 0x64, 0xe8, 0x24, - 0x1f, 0xa5, 0xe7, 0x1b, 0x17, 0xbe, 0x44, 0x62, 0xf2, 0x09, 0x25, 0x23, 0xf7, 0x7b, 0x02, 0x2b, - 0xf2, 0x9c, 0xb2, 0x52, 0xd6, 0x39, 0x34, 0xc9, 0x69, 0x9c, 0xe0, 0xe0, 0xda, 0x2e, 0x17, 0xf9, - 0x96, 0x32, 0xc3, 0xdd, 0x73, 0x54, 0xba, 0x82, 0x63, 0x2d, 0xa7, 0x26, 0xaa, 0x3b, 0x65, 0x06, - 0x4b, 0x92, 0xc5, 0xe9, 0x1a, 0xb0, 0xaa, 0xef, 0x88, 0x96, 0xa2, 0xa6, 0x65, 0xa4, 0x03, 0x26, - 0x92, 0xc1, 0xc9, 0xde, 0x35, 0xab, 0xb3, 0x59, 0xb4, 0x90, 0x34, 0xfb, 0x7b, 0xb2, 0x8d, 0x13, - 0xe2, 0x52, 0x64, 0x48, 0xe9, 0xc2, 0xe2, 0xf8, 0x8c, 0x1d, 0x8d, 0x4e, 0xdf, 0x10, 0x02, 0x45, - 0x97, 0xfb, 0x1d, 0x33, 0x54, 0x23, 0x80, 0xd3, 0x03, 0xbd, 0x3f, 0xcc, 0x85, 0x95, 0xe7, 0x10, - 0x5f, 0x7a, 0xaa, 0x22, 0xbf, 0x30, 0xa8, 0x4b, 0x2e, 0x62, 0x4c, 0x77, 0x5d, 0xf0, 0xad, 0xa0, - 0xab, 0xaa, 0x29, 0x51, 0xcc, 0x99, 0x91, 0xaf, 0x6c, 0x3b, 0xb0, 0xdb, 0xcb, 0xb7, 0x94, 0xf0, - 0x0e, 0x2c, 0x43, 0x0d, 0xe9, 0xf8, 0xff, 0xd1, 0x90, 0xe6, 0xfe, 0x53, 0x43, 0xba, 0x82, 0x93, - 0x75, 0xe0, 0xa2, 0x9d, 0x84, 0xad, 0x6d, 0xba, 0xa6, 0x64, 0x1e, 0xab, 0xcb, 0x0d, 0x31, 0x31, - 0x0e, 0x93, 0x95, 0x01, 0x0f, 0x1b, 0xc6, 0x73, 0x35, 0xa2, 0x94, 0x94, 0x29, 0x01, 0xcf, 0x5c, - 0xc4, 0xe9, 0x81, 0x57, 0x0e, 0xb2, 0xf0, 0x36, 0x74, 0xc2, 0x8c, 0x0d, 0x96, 0xe4, 0x24, 0x9e, - 0x69, 0xdb, 0x8d, 0x56, 0x2f, 0x59, 0xe5, 0xe6, 0x52, 0xf4, 0x1d, 0x94, 0x59, 0xc4, 0xca, 0xe8, - 0x1b, 0x4e, 0xc3, 0xbf, 0x1a, 0x4f, 0xce, 0x28, 0x89, 0xdc, 0x17, 0x08, 0xcf, 0x0e, 0xe6, 0x06, - 0xb9, 0x82, 0x67, 0x1c, 0x0e, 0x4d, 0xa6, 0xca, 0x4e, 0x5b, 0x98, 0x3e, 0xb5, 0x4c, 0x29, 0x40, - 0x2e, 0xe0, 0x84, 0x1c, 0x34, 0xd4, 0xa8, 0x90, 0x52, 0x47, 0xa4, 0x8a, 0x01, 0x28, 0xae, 0x38, - 0xf4, 0x7b, 0xfd, 0x07, 0x84, 0x4f, 0x1d, 0xf9, 0xb7, 0x49, 0x32, 0xf8, 0xf4, 0x5a, 0xb1, 0x6c, - 0x99, 0xa5, 0xeb, 0xd6, 0xea, 0x96, 0xb9, 0xb9, 0x54, 0xb6, 0x2e, 0x17, 0x57, 0x97, 0x6e, 0x6c, - 0x94, 0x95, 0x08, 0x39, 0x8b, 0x4f, 0x8d, 0x60, 0xa5, 0xf2, 0x52, 0xf9, 0x46, 0x49, 0x89, 0x91, - 0x33, 0xf8, 0xc4, 0x08, 0x64, 0x16, 0x97, 0x2e, 0x2b, 0x71, 0xf2, 0x0a, 0xce, 0x3e, 0x03, 0xac, - 0x16, 0x4d, 0x73, 0xfd, 0xda, 0x9a, 0xb5, 0xb5, 0x7c, 0xb5, 0xb8, 0x52, 0x2e, 0x29, 0x33, 0x47, - 0x78, 0x2d, 0x9b, 0x5b, 0xef, 0x17, 0xaf, 0x49, 0xe7, 0xe2, 0xb5, 0x95, 0x62, 0x49, 0x49, 0x14, - 0xfe, 0x8a, 0xe1, 0xd8, 0xd2, 0xf5, 0x75, 0x72, 0x80, 0x70, 0x6c, 0x0d, 0x38, 0x39, 0x3f, 0xe1, - 0x6c, 0x20, 0xfa, 0x6d, 0x26, 0x3f, 0xd5, 0x24, 0x91, 0xfb, 0xe8, 0xde, 0x8f, 0x51, 0xd4, 0xfd, - 0x59, 0x3d, 0xd1, 0x06, 0x96, 0x77, 0x68, 0x3e, 0x74, 0xcf, 0xfb, 0x60, 0xd7, 0xee, 0xfc, 0xf6, - 0xe7, 0x57, 0xd1, 0x77, 0xc9, 0xc5, 0x70, 0x1e, 0x35, 0xfa, 0x1d, 0x8f, 0x19, 0x9f, 0xf5, 0xd7, - 0x7b, 0x47, 0x8c, 0x6c, 0x21, 0xbe, 0x47, 0x7e, 0x42, 0x38, 0x1e, 0x3c, 0x27, 0xc9, 0x4f, 0xfa, - 0xec, 0x32, 0x08, 0x7d, 0xba, 0x2c, 0xc9, 0xdd, 0x18, 0x17, 0xc5, 0x9b, 0xa4, 0x30, 0x7d, 0x14, - 0x99, 0x5b, 0x07, 0xfb, 0x28, 0xfa, 0xeb, 0x3e, 0x7a, 0x6d, 0xec, 0x69, 0x64, 0x39, 0x3e, 0xdc, - 0x47, 0xa8, 0xbb, 0x8f, 0xf2, 0x53, 0xd5, 0xf0, 0x9d, 0x5f, 0xd4, 0xa8, 0x82, 0x96, 0xbf, 0x46, - 0xf7, 0x17, 0xa3, 0xe6, 0xc6, 0x83, 0x47, 0x5a, 0xe4, 0xe1, 0x23, 0x2d, 0xf2, 0xe4, 0x91, 0x86, - 0x3e, 0xef, 0x6a, 0xe8, 0xfb, 0xae, 0x86, 0xee, 0x75, 0x35, 0xf4, 0xa0, 0xab, 0xa1, 0x3f, 0xba, - 0x1a, 0x7a, 0xdc, 0xd5, 0x22, 0x4f, 0xba, 0x1a, 0xfa, 0xf2, 0x50, 0x8b, 0x1c, 0x1c, 0x6a, 0xe8, - 0xc1, 0xa1, 0x16, 0x79, 0x78, 0xa8, 0x45, 0x3e, 0xdc, 0xae, 0x53, 0xef, 0x76, 0x5d, 0x6f, 0xd3, - 0xe0, 0x4f, 0xd3, 0xb7, 0xf5, 0x16, 0x33, 0xc4, 0x22, 0x18, 0x33, 0xf3, 0x9e, 0x4f, 0xdb, 0x4e, - 0x0d, 0xfc, 0x7c, 0x0f, 0x36, 0xbc, 0x4a, 0x9d, 0x1a, 0xf0, 0x29, 0x0f, 0x87, 0xdd, 0x7f, 0x9d, - 0xbe, 0x2b, 0x09, 0x31, 0xfa, 0xbe, 0xf1, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa4, 0x86, 0x9b, - 0x51, 0xb6, 0x0c, 0x00, 0x00, + // 1291 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0x4d, 0x6c, 0x1b, 0x45, + 0x1b, 0xce, 0xd8, 0x8e, 0x1b, 0x8f, 0xd3, 0xc4, 0xdf, 0x7c, 0xfd, 0xd9, 0xfa, 0xab, 0x56, 0xfe, + 0x0c, 0x82, 0x08, 0x75, 0xed, 0x2a, 0x50, 0x41, 0x0b, 0x8a, 0x94, 0xa4, 0x4e, 0x9a, 0x92, 0x34, + 0xd5, 0xda, 0x8d, 0x10, 0x97, 0x65, 0xbd, 0xfb, 0xda, 0xdd, 0xd6, 0xde, 0x59, 0x66, 0xc6, 0x4e, + 0x2d, 0x14, 0xa9, 0xea, 0x91, 0x13, 0x12, 0x70, 0x01, 0x0e, 0xbd, 0x20, 0x71, 0xe7, 0x82, 0x94, + 0x4b, 0x6f, 0x54, 0x3d, 0xa0, 0x0a, 0x38, 0xf4, 0x48, 0x1d, 0x0e, 0x3d, 0x56, 0xe2, 0x8a, 0x10, + 0xda, 0x99, 0xb5, 0x6b, 0xbb, 0x41, 0x89, 0x0b, 0x9c, 0x3c, 0xf3, 0x3e, 0xef, 0xf3, 0xec, 0xfc, + 0xbc, 0xf3, 0xf8, 0xc5, 0xe7, 0xda, 0xc0, 0x0b, 0x1e, 0x2d, 0x72, 0xe7, 0x3a, 0x34, 0xed, 0xa2, + 0x0f, 0x62, 0x9b, 0xb2, 0x9b, 0x56, 0x40, 0x1b, 0x9e, 0xd3, 0xb1, 0x38, 0x88, 0x62, 0xd0, 0xaa, + 0x36, 0x3c, 0xc7, 0x72, 0x58, 0xcb, 0xb5, 0x03, 0xaf, 0x10, 0x30, 0x2a, 0x28, 0xc9, 0x29, 0x5a, + 0x41, 0xd1, 0x0a, 0xcf, 0xd3, 0xb2, 0x46, 0xdd, 0x13, 0xd7, 0x5b, 0xd5, 0x82, 0x43, 0x9b, 0xc5, + 0x3a, 0xad, 0xd3, 0xa2, 0x24, 0x56, 0x5b, 0x35, 0x39, 0x93, 0x13, 0x39, 0x52, 0x82, 0xd9, 0xd3, + 0x75, 0x4a, 0xeb, 0x0d, 0x28, 0xda, 0x81, 0x57, 0xb4, 0x7d, 0x9f, 0x0a, 0x5b, 0x78, 0xd4, 0xe7, + 0x11, 0xfa, 0xbf, 0x08, 0xed, 0x6b, 0x40, 0x33, 0x10, 0x9d, 0x08, 0xcc, 0x0e, 0x6f, 0x01, 0x18, + 0xa3, 0xac, 0x47, 0x34, 0x0e, 0xdc, 0x1e, 0xad, 0xde, 0x00, 0x47, 0x44, 0xe9, 0x67, 0x0e, 0x4c, + 0x17, 0x9d, 0x00, 0xfa, 0xab, 0x1a, 0xce, 0xa6, 0xc1, 0xe0, 0x92, 0x4f, 0x0d, 0x83, 0x83, 0xbc, + 0xfc, 0x30, 0xd4, 0x06, 0x0e, 0x7e, 0x7b, 0x84, 0x9e, 0x1b, 0xc9, 0xf1, 0x60, 0xdb, 0x1a, 0xca, + 0xc8, 0xdf, 0x45, 0x18, 0xaf, 0x82, 0x30, 0xe1, 0xc3, 0x16, 0x70, 0x41, 0x4e, 0xe3, 0x94, 0x6f, + 0x37, 0x81, 0x07, 0xb6, 0x03, 0x1a, 0xca, 0xa1, 0xb9, 0x94, 0xf9, 0x2c, 0x40, 0x08, 0x4e, 0x84, + 0x13, 0x2d, 0x26, 0x01, 0x39, 0x26, 0x1f, 0xe0, 0x59, 0x06, 0x3c, 0xa0, 0x3e, 0x07, 0xab, 0x46, + 0x59, 0xd3, 0x16, 0x5a, 0x3c, 0x87, 0xe6, 0x66, 0xe6, 0xdf, 0x2c, 0x1c, 0x74, 0xbb, 0x05, 0xf9, + 0x61, 0xc5, 0x5d, 0x91, 0xd4, 0x65, 0xea, 0x82, 0x39, 0xc3, 0x86, 0x62, 0xf9, 0x3f, 0x12, 0x38, + 0x3d, 0x90, 0x49, 0x8a, 0x38, 0xc3, 0x80, 0xd3, 0x16, 0x73, 0xc0, 0x6a, 0x03, 0xe3, 0x1e, 0xf5, + 0xb5, 0x44, 0xb8, 0xa2, 0xa5, 0xc4, 0x93, 0x5d, 0x84, 0xcc, 0xd9, 0x1e, 0xba, 0xa5, 0x40, 0xf2, + 0x0e, 0x9e, 0x6a, 0x82, 0xb0, 0x5d, 0x5b, 0xd8, 0xda, 0x64, 0x0e, 0xcd, 0xa5, 0xe7, 0x73, 0x23, + 0x6b, 0xdb, 0x94, 0xd7, 0xb7, 0x0a, 0x62, 0x03, 0x84, 0x5d, 0xe9, 0x04, 0x60, 0xf6, 0x19, 0x64, + 0x13, 0xcf, 0xf2, 0x0e, 0x17, 0xd0, 0xb4, 0xfa, 0x22, 0x47, 0xa4, 0xc8, 0x2b, 0x23, 0x22, 0x65, + 0x99, 0xf5, 0xbc, 0xd4, 0x8c, 0xa2, 0x6f, 0xf4, 0x04, 0x4d, 0x9c, 0xe0, 0x01, 0x38, 0x5a, 0x52, + 0xaa, 0x18, 0x87, 0x3a, 0xa6, 0x72, 0x00, 0x4e, 0x28, 0xb6, 0x34, 0xfb, 0xc5, 0xce, 0x74, 0xc8, + 0x2e, 0xd4, 0x1d, 0x2b, 0xfc, 0x35, 0xa5, 0x16, 0xd9, 0xc0, 0x49, 0x2e, 0x6c, 0xd1, 0xe2, 0xda, + 0xdd, 0xaf, 0x50, 0x2e, 0x3e, 0x97, 0x9e, 0x2f, 0x1c, 0xac, 0x5b, 0x96, 0x0c, 0xb5, 0xe0, 0xa5, + 0xf8, 0xbd, 0x1d, 0x64, 0x46, 0x22, 0x64, 0x0d, 0xff, 0x87, 0x41, 0x0d, 0x18, 0xf3, 0xfc, 0xba, + 0xa5, 0x6a, 0x9b, 0x6b, 0x53, 0x52, 0xf7, 0xf4, 0xbe, 0x47, 0x67, 0x42, 0x4d, 0xee, 0x35, 0xd3, + 0xa7, 0xa9, 0x38, 0x27, 0x5b, 0x58, 0x73, 0xa1, 0x01, 0x02, 0x5c, 0x4b, 0x61, 0xe0, 0xf6, 0x15, + 0x53, 0x87, 0x50, 0x3c, 0x11, 0xb1, 0xcd, 0x88, 0xdc, 0xd3, 0x7d, 0x0f, 0x9f, 0x72, 0x3d, 0x6e, + 0x57, 0x1b, 0xfb, 0x09, 0xe3, 0x43, 0x08, 0x9f, 0xec, 0xd1, 0x47, 0x94, 0x2f, 0xa4, 0x1e, 0x2c, + 0x24, 0xd5, 0xf8, 0x72, 0x62, 0x0a, 0x65, 0x62, 0xf9, 0xaf, 0x11, 0x4e, 0xaf, 0x7b, 0xfc, 0x90, + 0x8f, 0xe4, 0xff, 0x78, 0xba, 0x61, 0x57, 0xa1, 0x61, 0xd5, 0xbc, 0x86, 0x00, 0x16, 0x3d, 0x96, + 0xb4, 0x8c, 0xad, 0xc8, 0x10, 0x79, 0x09, 0x1f, 0x65, 0x10, 0x50, 0x26, 0xac, 0x9a, 0x07, 0x0d, + 0x97, 0x6b, 0xf1, 0x5c, 0x7c, 0x2e, 0x65, 0x4e, 0xab, 0xe0, 0x8a, 0x8c, 0x91, 0xb3, 0xf8, 0x58, + 0x94, 0xa4, 0x2e, 0xa5, 0x97, 0x9b, 0x90, 0xb9, 0x44, 0x61, 0xea, 0x0a, 0x15, 0x23, 0xff, 0x73, + 0x12, 0x67, 0xd4, 0x3a, 0xd5, 0x4b, 0x59, 0x13, 0xd0, 0x24, 0x27, 0x70, 0x52, 0x80, 0x6f, 0xfb, + 0x42, 0xd6, 0x5b, 0xca, 0x8c, 0x66, 0x2f, 0xf0, 0xd2, 0x33, 0x38, 0xde, 0xf2, 0x5c, 0xf9, 0xba, + 0x53, 0x66, 0x38, 0x24, 0x39, 0x9c, 0x76, 0x81, 0x3b, 0xcc, 0x93, 0x96, 0xa2, 0xa5, 0xd5, 0x4e, + 0x07, 0x42, 0x24, 0x8b, 0xa7, 0x7a, 0xc7, 0xac, 0x4d, 0xe7, 0xd0, 0xdc, 0x94, 0xd9, 0x9f, 0x93, + 0x2d, 0x9c, 0x94, 0x87, 0xa2, 0xb6, 0x94, 0x9e, 0x5f, 0x38, 0xb8, 0x62, 0x47, 0x77, 0x57, 0x58, + 0x97, 0x02, 0x25, 0x5f, 0xb0, 0x8e, 0x19, 0xa9, 0x11, 0xc0, 0xe9, 0x01, 0xef, 0x8f, 0x6a, 0x61, + 0xf9, 0x05, 0xc4, 0x17, 0x9f, 0xa9, 0xa8, 0x2f, 0x0c, 0xea, 0x92, 0xf3, 0x18, 0xd3, 0x6d, 0x1f, + 0x98, 0x15, 0xba, 0xaa, 0x96, 0x92, 0x8f, 0x39, 0x3b, 0xf2, 0x95, 0x2d, 0x0f, 0xb6, 0x7b, 0xf5, + 0x96, 0x92, 0xd9, 0x61, 0x64, 0xc8, 0x90, 0x8e, 0xfe, 0x13, 0x86, 0x34, 0xf3, 0xb7, 0x0c, 0xe9, + 0x12, 0x9e, 0xaa, 0x83, 0x90, 0x76, 0x12, 0x59, 0xdb, 0x78, 0xa6, 0x64, 0x1e, 0xa9, 0xab, 0x09, + 0x31, 0x31, 0x8e, 0x8a, 0x95, 0x83, 0x88, 0x0c, 0xe3, 0x85, 0x8c, 0x28, 0xa5, 0x64, 0xca, 0x20, + 0xb2, 0xe7, 0x71, 0x7a, 0xe0, 0x96, 0xc3, 0x2a, 0xbc, 0x09, 0x9d, 0xa8, 0x62, 0xc3, 0x21, 0x39, + 0x86, 0x27, 0xdb, 0x76, 0xa3, 0xd5, 0x2b, 0x56, 0x35, 0xb9, 0x10, 0x7b, 0x0b, 0x65, 0x17, 0x70, + 0x66, 0xf4, 0x0e, 0xc7, 0xe1, 0x5f, 0x4e, 0x4c, 0x4d, 0x66, 0x92, 0xf9, 0x8f, 0x11, 0x9e, 0x1e, + 0xac, 0x0d, 0x72, 0x09, 0x4f, 0x7a, 0x02, 0x9a, 0x5c, 0x53, 0x4e, 0x3b, 0x3f, 0x7e, 0x69, 0x99, + 0x4a, 0x80, 0x9c, 0xc5, 0x49, 0xd5, 0x68, 0x68, 0x31, 0x29, 0xa5, 0x8d, 0x48, 0x95, 0x42, 0x50, + 0x1e, 0x71, 0x94, 0xf7, 0xda, 0xb7, 0x08, 0x1f, 0xdf, 0xf7, 0x6f, 0x93, 0x64, 0xf1, 0x89, 0xd5, + 0x52, 0xc5, 0x32, 0xcb, 0x57, 0xad, 0x95, 0x4d, 0x73, 0x63, 0xb1, 0x62, 0x5d, 0x2c, 0xad, 0x2c, + 0x5e, 0x5b, 0xaf, 0x64, 0x26, 0xc8, 0x29, 0x7c, 0x7c, 0x04, 0x2b, 0x57, 0x16, 0x2b, 0xd7, 0xca, + 0x99, 0x38, 0x39, 0x89, 0xff, 0x3b, 0x02, 0x99, 0xa5, 0xc5, 0x8b, 0x99, 0x04, 0x79, 0x19, 0xe7, + 0x9e, 0x03, 0x56, 0x4a, 0xa6, 0xb9, 0x76, 0x65, 0xd5, 0xda, 0x5c, 0xba, 0x5c, 0x5a, 0xae, 0x94, + 0x33, 0x93, 0xfb, 0x64, 0x2d, 0x99, 0x9b, 0xef, 0x96, 0xae, 0xa8, 0xe4, 0xd2, 0x95, 0xe5, 0x52, + 0x39, 0x93, 0x9c, 0xff, 0x2d, 0x81, 0xe3, 0x8b, 0x57, 0xd7, 0xc8, 0xed, 0x18, 0x8e, 0xaf, 0x82, + 0x20, 0x67, 0x0e, 0xd9, 0x1b, 0x48, 0xbf, 0xcd, 0x1a, 0x63, 0x75, 0x12, 0xf9, 0x2f, 0xd1, 0xfd, + 0xef, 0x62, 0xa8, 0xfb, 0xbd, 0x66, 0xd6, 0xce, 0xdd, 0x72, 0x0c, 0x0e, 0x4e, 0x8b, 0x41, 0x13, + 0xf8, 0x75, 0xa3, 0x6a, 0x73, 0xcf, 0x31, 0x9a, 0xd4, 0xf7, 0x04, 0x65, 0x67, 0x46, 0x51, 0x2e, + 0x6c, 0xdf, 0xb5, 0x99, 0xdb, 0x4f, 0x68, 0x03, 0x37, 0x3c, 0x6a, 0x44, 0x9f, 0x33, 0x18, 0xd8, + 0xee, 0x9d, 0x9f, 0x7e, 0xfd, 0x34, 0xf6, 0x36, 0x39, 0x1f, 0xf5, 0xb3, 0xc5, 0xbe, 0x63, 0xf2, + 0xe2, 0x47, 0xfd, 0xf1, 0xce, 0x3e, 0x2d, 0x5f, 0x84, 0xef, 0x90, 0xdf, 0x11, 0x4e, 0x84, 0xe5, + 0x40, 0x8c, 0xc3, 0x96, 0x8d, 0x3a, 0x84, 0xc2, 0x78, 0x55, 0x96, 0xff, 0xec, 0xdf, 0x3e, 0x85, + 0x37, 0xc8, 0xfc, 0xf8, 0xa7, 0x90, 0xbd, 0x71, 0x6f, 0x17, 0xc5, 0x7e, 0xdc, 0x45, 0xaf, 0x1e, + 0xb8, 0x1b, 0x65, 0x07, 0x8f, 0x76, 0x11, 0xea, 0xee, 0x22, 0x63, 0x2c, 0x0f, 0xb9, 0xf3, 0x83, + 0x16, 0xcb, 0xa0, 0xa5, 0xcf, 0xd1, 0x83, 0x85, 0x98, 0xb9, 0xfe, 0xf0, 0xb1, 0x3e, 0xf1, 0xe8, + 0xb1, 0x3e, 0xf1, 0xf4, 0xb1, 0x8e, 0x6e, 0x77, 0x75, 0xf4, 0x4d, 0x57, 0x47, 0xf7, 0xbb, 0x3a, + 0x7a, 0xd8, 0xd5, 0xd1, 0x2f, 0x5d, 0x1d, 0x3d, 0xe9, 0xea, 0x13, 0x4f, 0xbb, 0x3a, 0xfa, 0x64, + 0x4f, 0x9f, 0xb8, 0xb7, 0xa7, 0xa3, 0x87, 0x7b, 0xfa, 0xc4, 0xa3, 0x3d, 0x7d, 0xe2, 0xfd, 0xad, + 0x3a, 0x0d, 0x6e, 0xd6, 0x0b, 0x6d, 0x1a, 0xfe, 0x69, 0x33, 0xbb, 0xd0, 0xe2, 0x45, 0x39, 0x08, + 0xdb, 0x5c, 0x23, 0x60, 0xb4, 0xed, 0xb9, 0xc0, 0x8c, 0x1e, 0x5c, 0x0c, 0xaa, 0x75, 0x5a, 0x84, + 0x5b, 0x22, 0x6a, 0xb6, 0xff, 0xb2, 0xfb, 0xaf, 0x26, 0x65, 0xeb, 0xfd, 0xfa, 0x9f, 0x01, 0x00, + 0x00, 0xff, 0xff, 0xd9, 0x0d, 0xce, 0xcd, 0x36, 0x0d, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/network_policy_set/public_crudapi.vesapi.go b/pbgo/extschema/schema/network_policy_set/public_crudapi.vesapi.go index bad7c1d92..df1ceabd1 100644 --- a/pbgo/extschema/schema/network_policy_set/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/network_policy_set/public_crudapi.vesapi.go @@ -1676,10 +1676,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/nfv_service/crudapi/api.vesapi.go b/pbgo/extschema/schema/nfv_service/crudapi/api.vesapi.go index 0fa22628c..fcea013bc 100644 --- a/pbgo/extschema/schema/nfv_service/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/nfv_service/crudapi/api.vesapi.go @@ -4374,10 +4374,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/nfv_service/object.pb.go b/pbgo/extschema/schema/nfv_service/object.pb.go index e87a5e7eb..885248350 100644 --- a/pbgo/extschema/schema/nfv_service/object.pb.go +++ b/pbgo/extschema/schema/nfv_service/object.pb.go @@ -296,72 +296,74 @@ func init() { } var fileDescriptor_7024d83a8a0a7c23 = []byte{ - // 1040 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0x26, 0xc1, 0x49, 0x26, 0x6d, 0x6a, 0xf6, 0xc2, 0x36, 0xc0, 0x2a, 0x4a, 0x95, 0x2a, - 0x15, 0xde, 0xb5, 0x68, 0x1a, 0x25, 0xad, 0x20, 0x40, 0x52, 0xa9, 0x02, 0x35, 0x54, 0x72, 0x50, - 0x0f, 0x5c, 0x46, 0xb3, 0xeb, 0xb7, 0xeb, 0xc1, 0xbb, 0x3b, 0xd3, 0x99, 0xf1, 0x3a, 0xae, 0x00, - 0x71, 0x05, 0x09, 0x89, 0x2b, 0x7f, 0x01, 0x3f, 0xfe, 0x0a, 0x82, 0x54, 0x89, 0x63, 0x54, 0x71, - 0x88, 0x38, 0x11, 0xe7, 0xc2, 0xb1, 0xe2, 0xc0, 0x19, 0xed, 0xac, 0x37, 0xd8, 0x8e, 0x13, 0x95, - 0x46, 0x3d, 0x79, 0xfd, 0xde, 0xf7, 0xbe, 0xf7, 0xe9, 0xbd, 0x99, 0xf7, 0x06, 0x5d, 0x4f, 0x41, - 0xba, 0x94, 0xd5, 0xa4, 0xdf, 0x84, 0x98, 0xd4, 0x92, 0x20, 0xc5, 0x12, 0x44, 0x4a, 0x7d, 0xa8, - 0x31, 0xef, 0x33, 0xf0, 0x95, 0xcb, 0x05, 0x53, 0xcc, 0xbc, 0x9a, 0xe3, 0xdc, 0x1c, 0xe7, 0x0e, - 0xe0, 0x16, 0x9c, 0x90, 0xaa, 0x66, 0xdb, 0x73, 0x7d, 0x16, 0xd7, 0x42, 0x16, 0xb2, 0x9a, 0x8e, - 0xf0, 0xda, 0x81, 0xfe, 0xa7, 0xff, 0xe8, 0xaf, 0x9c, 0x69, 0x61, 0xf9, 0xec, 0x8c, 0xaa, 0xcb, - 0x41, 0xf6, 0x61, 0xaf, 0x0f, 0xc3, 0x18, 0x57, 0x94, 0x25, 0x85, 0xf3, 0xea, 0xb0, 0x73, 0x30, - 0x6e, 0x69, 0xd8, 0x95, 0x82, 0x84, 0x24, 0x1d, 0x09, 0x5f, 0x1d, 0xc1, 0x50, 0xe8, 0xc8, 0x5a, - 0x6b, 0x43, 0xe2, 0x98, 0x24, 0x34, 0x00, 0xa9, 0x30, 0x27, 0x82, 0xc4, 0x72, 0x88, 0xf8, 0xd6, - 0xb8, 0x20, 0x05, 0x42, 0x90, 0x80, 0x89, 0x38, 0x8f, 0x00, 0x05, 0x62, 0x28, 0x6a, 0xe9, 0x1f, - 0x84, 0xca, 0x0f, 0x74, 0x21, 0xcd, 0xdb, 0x68, 0x26, 0x06, 0x45, 0x1a, 0x44, 0x11, 0xcb, 0x58, - 0x34, 0x56, 0xe6, 0x6e, 0xbe, 0xe9, 0x0e, 0x57, 0x35, 0x07, 0xee, 0x80, 0x22, 0x9f, 0x74, 0x39, - 0xd4, 0x4f, 0xe0, 0xe6, 0x7d, 0x74, 0x45, 0x76, 0xa5, 0x82, 0x18, 0x9f, 0x30, 0x4c, 0x68, 0x86, - 0x6b, 0x23, 0x0c, 0xbb, 0x1a, 0x35, 0xc2, 0x33, 0x9f, 0xc7, 0xee, 0x14, 0x6c, 0xeb, 0x68, 0x4a, - 0x72, 0xf0, 0xad, 0xc9, 0xb1, 0x14, 0x03, 0x0d, 0x71, 0x77, 0x39, 0xf8, 0x9a, 0x42, 0x07, 0xdc, - 0xf9, 0x69, 0xf6, 0xd7, 0x7d, 0x6b, 0xa2, 0x62, 0x3c, 0xdd, 0xb7, 0x9e, 0x4c, 0xa0, 0x4d, 0x34, - 0x79, 0x0f, 0x94, 0xb9, 0x1e, 0xac, 0xed, 0xf9, 0x8e, 0xa4, 0x0a, 0x9c, 0x98, 0x24, 0x24, 0x84, - 0x18, 0x12, 0xe5, 0x78, 0x44, 0x52, 0xdf, 0x89, 0x59, 0x42, 0x15, 0x13, 0xd5, 0xc5, 0x14, 0xa4, - 0x43, 0x99, 0x93, 0x80, 0xea, 0x30, 0xd1, 0x72, 0x04, 0x90, 0x06, 0x7a, 0x1f, 0x4d, 0xd7, 0x81, - 0x47, 0xc4, 0x07, 0x73, 0xed, 0x1c, 0x8e, 0xb6, 0x84, 0xd3, 0x04, 0x1d, 0x41, 0x15, 0xa0, 0xf7, - 0x50, 0x79, 0x5b, 0x00, 0x51, 0x17, 0x21, 0xb8, 0x0b, 0x11, 0x5c, 0x84, 0x60, 0xea, 0x3e, 0x95, - 0x2f, 0x5e, 0x84, 0x3f, 0xf6, 0xad, 0xdf, 0xcb, 0xa8, 0x8d, 0x3e, 0xcc, 0xea, 0xeb, 0x86, 0x3e, - 0xd6, 0xbf, 0xfd, 0xf2, 0x63, 0x2e, 0x58, 0x4a, 0x1b, 0x20, 0xb0, 0xdf, 0x64, 0x59, 0x3b, 0x82, - 0x35, 0xec, 0xd1, 0x10, 0x53, 0x8e, 0x49, 0x47, 0x9e, 0x34, 0x89, 0x34, 0x62, 0x9a, 0x60, 0x4e, - 0xa4, 0xec, 0x30, 0xd1, 0x30, 0x57, 0x8a, 0x34, 0x41, 0xea, 0xf4, 0x21, 0x8e, 0x47, 0x43, 0x87, - 0x72, 0x47, 0x23, 0x9d, 0x02, 0x89, 0xbe, 0x37, 0x10, 0x7b, 0xae, 0xbc, 0x9c, 0x44, 0x0c, 0x93, - 0x48, 0x31, 0x1c, 0x74, 0x4e, 0xd2, 0x72, 0x92, 0x10, 0xc1, 0x62, 0x82, 0x7d, 0x96, 0x24, 0xe0, - 0x67, 0xf7, 0x2b, 0xb3, 0x31, 0x41, 0x62, 0xa2, 0x41, 0x20, 0x5c, 0xd2, 0x56, 0x4d, 0x26, 0xe8, - 0x63, 0x92, 0x79, 0x71, 0x0b, 0xba, 0xe6, 0xf5, 0x31, 0xea, 0x38, 0x49, 0x9c, 0xa0, 0xe3, 0x14, - 0xc1, 0x4e, 0x0b, 0xba, 0xe8, 0x07, 0x03, 0x7d, 0xf9, 0xe2, 0xda, 0x24, 0xa8, 0x36, 0xc7, 0xc5, - 0xa5, 0x27, 0x6d, 0xc5, 0xb0, 0x36, 0xb9, 0x52, 0x36, 0x33, 0x19, 0xb2, 0x88, 0x8e, 0x49, 0xd2, - 0x26, 0x11, 0x2e, 0xcc, 0x2e, 0x17, 0x34, 0x25, 0x0a, 0xb4, 0xd4, 0xe5, 0xb3, 0xa5, 0x4a, 0xd9, - 0x74, 0x78, 0xaa, 0xb4, 0xd2, 0x6f, 0x0c, 0x44, 0x5e, 0x82, 0xd2, 0x91, 0xae, 0x9e, 0x23, 0x26, - 0x3b, 0x9e, 0x79, 0x53, 0x1b, 0xe8, 0x73, 0xb4, 0xf3, 0x3f, 0x4f, 0x92, 0x47, 0x04, 0xe8, 0xa9, - 0x12, 0xe1, 0x6c, 0x6e, 0x8d, 0xe6, 0x7d, 0xeb, 0xec, 0xd3, 0xe4, 0xc5, 0xa3, 0x07, 0xea, 0x6b, - 0x03, 0x3d, 0xbc, 0x60, 0x7a, 0x8f, 0x86, 0xf4, 0x11, 0xa6, 0x89, 0x54, 0x24, 0xd1, 0x35, 0xeb, - 0xeb, 0xa8, 0x9d, 0xa5, 0xe3, 0x91, 0x13, 0x51, 0xff, 0xb4, 0x96, 0xa5, 0x8f, 0xd1, 0x4c, 0x31, - 0xbd, 0xcc, 0x2d, 0x34, 0xdd, 0x57, 0xd4, 0x1f, 0x9b, 0x37, 0xce, 0x99, 0x79, 0xf7, 0x22, 0xe6, - 0x91, 0xe8, 0x64, 0xf2, 0x95, 0x43, 0x3f, 0xfb, 0x5e, 0x7a, 0x32, 0x85, 0x2e, 0xed, 0x2a, 0xa2, - 0xda, 0xf2, 0xb9, 0xc7, 0x79, 0x0e, 0x1f, 0x33, 0xce, 0x77, 0xd0, 0x5c, 0xbe, 0x5c, 0xb1, 0x80, - 0x40, 0x5a, 0x13, 0x8b, 0x93, 0x2b, 0x73, 0x37, 0xdf, 0x18, 0xbb, 0x0c, 0xea, 0x10, 0x64, 0xc1, - 0x5b, 0xf3, 0x3f, 0x7f, 0x31, 0x37, 0xa0, 0xb2, 0x8e, 0x58, 0xe1, 0x96, 0xe6, 0x3b, 0x08, 0xf9, - 0x2c, 0x69, 0x50, 0x7d, 0x86, 0xac, 0xc9, 0xb1, 0x6c, 0xdb, 0x05, 0x40, 0x4b, 0x19, 0xc0, 0x9b, - 0x37, 0x50, 0x45, 0xb2, 0x40, 0x75, 0xb2, 0x46, 0xa4, 0x20, 0x24, 0x65, 0x89, 0x35, 0xb5, 0x68, - 0xac, 0xcc, 0xd6, 0xaf, 0x14, 0xf6, 0x87, 0xb9, 0xd9, 0xac, 0xa0, 0xc9, 0x94, 0x72, 0xeb, 0x15, - 0xed, 0xcd, 0x3e, 0xcd, 0x65, 0x34, 0x0f, 0x7b, 0x0a, 0x44, 0x42, 0x22, 0xec, 0x27, 0x24, 0x06, - 0x6b, 0x46, 0x3b, 0x2f, 0x17, 0xd6, 0xed, 0xcc, 0x68, 0x7a, 0xe8, 0xd5, 0x06, 0xf0, 0x88, 0x75, - 0xb3, 0xb1, 0x88, 0xa5, 0xae, 0x8b, 0x35, 0xad, 0x8b, 0xb6, 0x36, 0x22, 0x54, 0xef, 0x55, 0x77, - 0xdc, 0x5e, 0x75, 0x3f, 0xe0, 0x3c, 0xea, 0xe6, 0x45, 0xad, 0x57, 0xfe, 0xe3, 0xcb, 0x2d, 0xe6, - 0x63, 0xb4, 0x90, 0xad, 0xf0, 0x53, 0x79, 0xf4, 0xb9, 0xb2, 0x66, 0x75, 0xb2, 0x77, 0xc7, 0x26, - 0x1b, 0xb3, 0xf9, 0xdd, 0xbb, 0x23, 0xf4, 0xba, 0x6c, 0xaf, 0xb5, 0x36, 0xe4, 0x38, 0xc7, 0x9d, - 0x6b, 0x4f, 0x37, 0x2b, 0x68, 0x1e, 0x5d, 0x2a, 0x3a, 0xec, 0xb6, 0x69, 0xe3, 0xef, 0xcd, 0xcb, - 0x6f, 0x57, 0x57, 0xab, 0xb7, 0xaa, 0x6b, 0xd5, 0x8d, 0xea, 0x7a, 0xf5, 0xf6, 0x47, 0x53, 0x33, - 0xe5, 0xca, 0xf4, 0xd6, 0xb7, 0xc6, 0xc1, 0x91, 0x5d, 0x3a, 0x3c, 0xb2, 0x4b, 0xcf, 0x8e, 0x6c, - 0xe3, 0xab, 0x9e, 0x6d, 0xfc, 0xd8, 0xb3, 0x8d, 0xdf, 0x7a, 0xb6, 0x71, 0xd0, 0xb3, 0x8d, 0xc3, - 0x9e, 0x6d, 0xfc, 0xd9, 0xb3, 0x8d, 0xbf, 0x7a, 0x76, 0xe9, 0x59, 0xcf, 0x36, 0xbe, 0x3b, 0xb6, - 0x4b, 0xbf, 0x1c, 0xdb, 0xc6, 0xc1, 0xb1, 0x5d, 0x3a, 0x3c, 0xb6, 0x4b, 0x9f, 0x3e, 0x08, 0x19, - 0x6f, 0x85, 0x6e, 0xca, 0x22, 0x5d, 0x22, 0xb7, 0x3d, 0xf0, 0x06, 0x71, 0x8a, 0x6b, 0xe6, 0x14, - 0xee, 0x1a, 0xf7, 0x42, 0x56, 0x83, 0x3d, 0xd5, 0x7f, 0xb4, 0x9c, 0x7e, 0x73, 0x79, 0x65, 0xfd, - 0x4e, 0x59, 0xfd, 0x37, 0x00, 0x00, 0xff, 0xff, 0x5b, 0xdb, 0x05, 0x96, 0x09, 0x0a, 0x00, 0x00, + // 1058 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0x41, 0x6f, 0xdc, 0xc4, + 0x17, 0x5f, 0x77, 0xf3, 0xdf, 0xa4, 0x93, 0x36, 0xdd, 0xbf, 0x2f, 0xb8, 0x05, 0xac, 0x28, 0x55, + 0xaa, 0x54, 0xac, 0xbd, 0xa2, 0x69, 0xd4, 0xb4, 0x82, 0x4a, 0x24, 0x95, 0x2a, 0x50, 0x43, 0xa5, + 0x0d, 0xaa, 0x04, 0x07, 0x46, 0x63, 0xfb, 0xd9, 0x3b, 0xac, 0xed, 0x99, 0xce, 0xcc, 0x7a, 0xb3, + 0x15, 0x20, 0xae, 0x20, 0x21, 0x71, 0xe5, 0x13, 0x80, 0x38, 0xf1, 0x11, 0x08, 0x12, 0x12, 0xc7, + 0xa8, 0xe2, 0x10, 0x71, 0x22, 0x9b, 0x0b, 0xc7, 0x8a, 0x2f, 0x00, 0xf2, 0x78, 0x9d, 0xee, 0x6e, + 0x36, 0xa1, 0x80, 0x72, 0x5a, 0xef, 0x7b, 0xbf, 0xf7, 0x7e, 0x3f, 0xbd, 0xf7, 0xfc, 0xfc, 0xd0, + 0xb5, 0x0c, 0xa4, 0x4b, 0x59, 0x53, 0xfa, 0x6d, 0x48, 0x48, 0x33, 0x0d, 0x33, 0x2c, 0x41, 0x64, + 0xd4, 0x87, 0x26, 0xf3, 0x3e, 0x02, 0x5f, 0xb9, 0x5c, 0x30, 0xc5, 0xcc, 0xcb, 0x05, 0xce, 0x2d, + 0x70, 0xee, 0x08, 0xee, 0x8a, 0x13, 0x51, 0xd5, 0xee, 0x7a, 0xae, 0xcf, 0x92, 0x66, 0xc4, 0x22, + 0xd6, 0xd4, 0x11, 0x5e, 0x37, 0xd4, 0xff, 0xf4, 0x1f, 0xfd, 0x54, 0x64, 0xba, 0xb2, 0x7c, 0x32, + 0xa3, 0xea, 0x73, 0x90, 0x43, 0xd8, 0xcb, 0xe3, 0x30, 0xc6, 0x15, 0x65, 0x69, 0xe9, 0xbc, 0x3c, + 0xee, 0x1c, 0x8d, 0x5b, 0x1a, 0x77, 0x65, 0x20, 0x21, 0xcd, 0x26, 0xc2, 0x57, 0x27, 0x30, 0x14, + 0x7a, 0xb2, 0xd9, 0x59, 0x97, 0x38, 0x21, 0x29, 0x0d, 0x41, 0x2a, 0xcc, 0x89, 0x20, 0x89, 0x1c, + 0x4b, 0x7c, 0x73, 0x5a, 0x90, 0x02, 0x21, 0x48, 0xc8, 0x44, 0x52, 0x44, 0x80, 0x02, 0x31, 0x16, + 0xb5, 0xf4, 0xfd, 0x05, 0x54, 0x7b, 0xa8, 0x0b, 0x69, 0xde, 0x46, 0x73, 0x09, 0x28, 0x12, 0x10, + 0x45, 0x2c, 0x63, 0xd1, 0x58, 0x99, 0xbf, 0xf1, 0xaa, 0x3b, 0x5e, 0xd5, 0x02, 0xb8, 0x05, 0x8a, + 0xbc, 0xd7, 0xe7, 0xd0, 0x3a, 0x82, 0x9b, 0x0f, 0xd0, 0x25, 0xd9, 0x97, 0x0a, 0x12, 0x7c, 0x94, + 0xe1, 0x9c, 0xce, 0x70, 0x75, 0x22, 0xc3, 0xb6, 0x46, 0x4d, 0xe4, 0x59, 0x28, 0x62, 0xb7, 0xca, + 0x6c, 0xb7, 0xd0, 0x8c, 0xe4, 0xe0, 0x5b, 0xd5, 0xa9, 0x29, 0x46, 0x1a, 0xe2, 0x6e, 0x73, 0xf0, + 0x75, 0x0a, 0x1d, 0x70, 0xe7, 0x10, 0xfd, 0xb8, 0x6b, 0x9d, 0xab, 0x1b, 0x4f, 0x77, 0xad, 0x3f, + 0xab, 0x08, 0x50, 0xf5, 0x3e, 0x28, 0xf3, 0xc3, 0x70, 0x6d, 0xc7, 0x77, 0x24, 0x55, 0xe0, 0x24, + 0x24, 0x25, 0x11, 0x24, 0x90, 0x2a, 0xc7, 0x23, 0x92, 0xfa, 0x4e, 0xc2, 0x52, 0xaa, 0x98, 0x68, + 0x2c, 0x4e, 0xc5, 0x48, 0x45, 0xd2, 0x80, 0x88, 0xe0, 0x39, 0x2c, 0x03, 0xe9, 0x50, 0xe6, 0xa4, + 0xa0, 0x7a, 0x4c, 0x74, 0x1c, 0x01, 0x24, 0x40, 0x01, 0x9a, 0x6d, 0x01, 0x8f, 0x89, 0x0f, 0xe6, + 0xfb, 0xa7, 0x50, 0x75, 0x25, 0xfc, 0x2d, 0x4f, 0x81, 0x99, 0x20, 0xe9, 0x09, 0xaa, 0x00, 0xf9, + 0xa8, 0xb6, 0x29, 0x80, 0xa8, 0xb3, 0x26, 0xb9, 0x07, 0x31, 0x9c, 0x2d, 0x49, 0x88, 0x66, 0x1e, + 0x50, 0x79, 0xe6, 0x7d, 0xf9, 0x75, 0xd7, 0xfa, 0xa5, 0x86, 0xba, 0xe8, 0xed, 0x7c, 0x32, 0xdc, + 0xc8, 0xc7, 0xfa, 0x77, 0x38, 0x38, 0x98, 0x0b, 0x96, 0xd1, 0x00, 0x04, 0xf6, 0xdb, 0x2c, 0x1f, + 0xa4, 0x70, 0x0d, 0x7b, 0x34, 0xc2, 0x94, 0x63, 0xd2, 0x93, 0x47, 0xe3, 0x45, 0x82, 0x84, 0xa6, + 0x98, 0x13, 0x29, 0x7b, 0x4c, 0x04, 0xe6, 0x4a, 0x49, 0x13, 0x66, 0xce, 0x10, 0xe2, 0x78, 0x34, + 0x72, 0x28, 0x77, 0x34, 0xd2, 0x29, 0x91, 0xe8, 0x6b, 0x03, 0xb1, 0x17, 0xe2, 0xe5, 0x24, 0x66, + 0x98, 0xc4, 0x8a, 0xe1, 0xb0, 0x77, 0x44, 0xcb, 0x49, 0x4a, 0x04, 0x4b, 0x08, 0xf6, 0x59, 0x9a, + 0x82, 0x9f, 0x6f, 0x86, 0xdc, 0xc6, 0x04, 0x49, 0x88, 0x06, 0x81, 0x70, 0x49, 0x57, 0xb5, 0x99, + 0xa0, 0x4f, 0x48, 0xee, 0xc5, 0x1d, 0xe8, 0x9b, 0xd7, 0xa6, 0xa8, 0xe3, 0x24, 0x75, 0xc2, 0x9e, + 0x53, 0x06, 0x3b, 0x1d, 0xe8, 0xa3, 0x6f, 0x0c, 0xf4, 0xe9, 0xbf, 0xd7, 0x26, 0x41, 0x75, 0x39, + 0x2e, 0xd7, 0x15, 0xe9, 0x2a, 0x86, 0xb5, 0xc9, 0x95, 0xb2, 0x9d, 0xcb, 0x90, 0x65, 0x74, 0x42, + 0xd2, 0x2e, 0x89, 0x71, 0x69, 0x76, 0xb9, 0xa0, 0x19, 0x51, 0xa0, 0xa5, 0x2e, 0x9f, 0x2c, 0x55, + 0xca, 0xb6, 0xc3, 0x33, 0xa5, 0x95, 0x7e, 0x61, 0x20, 0x72, 0x06, 0x4a, 0x27, 0xba, 0x7a, 0x8a, + 0x98, 0x7c, 0x8a, 0x8b, 0xa6, 0x06, 0xe8, 0x63, 0xb4, 0xf5, 0x0f, 0x27, 0xc9, 0x23, 0x02, 0xf4, + 0x3e, 0x8c, 0x71, 0xbe, 0x71, 0x27, 0x79, 0x5f, 0x3b, 0x79, 0x9a, 0xbc, 0x64, 0x72, 0xa0, 0x3e, + 0x37, 0xd0, 0xa3, 0xff, 0x48, 0xef, 0xd1, 0x88, 0x3e, 0xc6, 0x34, 0xcd, 0xdf, 0x1e, 0x5d, 0xb3, + 0xa1, 0x8e, 0xe6, 0x49, 0x3a, 0x1e, 0x3b, 0x31, 0xf5, 0x8f, 0x6b, 0x59, 0x7a, 0x17, 0xcd, 0x95, + 0x7b, 0xd7, 0xdc, 0x40, 0xb3, 0x43, 0x45, 0xc3, 0x85, 0x7f, 0xfd, 0x94, 0x6d, 0x7d, 0x3f, 0x66, + 0x1e, 0x89, 0x8f, 0x76, 0x76, 0x2d, 0xf2, 0xf3, 0xe7, 0xa5, 0x9f, 0x66, 0xd0, 0x85, 0x6d, 0x45, + 0x54, 0x57, 0xbe, 0xf0, 0x87, 0xa8, 0x80, 0x4f, 0xf9, 0x10, 0x6d, 0xa1, 0xf9, 0xe2, 0x2c, 0xc0, + 0x02, 0x42, 0x69, 0x9d, 0x5b, 0xac, 0xae, 0xcc, 0xdf, 0x78, 0x65, 0xea, 0x67, 0xac, 0x05, 0x61, + 0x1e, 0xbc, 0xb1, 0xf0, 0xdd, 0x27, 0xf3, 0x23, 0x2a, 0x5b, 0x88, 0x95, 0x6e, 0x69, 0xbe, 0x81, + 0x90, 0xcf, 0xd2, 0x80, 0xea, 0x19, 0xb2, 0xaa, 0x53, 0xb3, 0x6d, 0x96, 0x00, 0x2d, 0x65, 0x04, + 0x6f, 0x5e, 0x47, 0x75, 0xc9, 0x42, 0xd5, 0xcb, 0x1b, 0x91, 0x81, 0x90, 0x94, 0xa5, 0xd6, 0xcc, + 0xa2, 0xb1, 0x72, 0xbe, 0x75, 0xa9, 0xb4, 0x3f, 0x2a, 0xcc, 0x66, 0x1d, 0x55, 0x33, 0xca, 0xad, + 0xff, 0x69, 0x6f, 0xfe, 0x68, 0x2e, 0xa3, 0x05, 0xd8, 0x51, 0x20, 0x52, 0x12, 0x63, 0x3f, 0x25, + 0x09, 0x58, 0x73, 0xda, 0x79, 0xb1, 0xb4, 0x6e, 0xe6, 0x46, 0xd3, 0x43, 0xff, 0x0f, 0x80, 0xc7, + 0xac, 0x9f, 0x6f, 0x46, 0x2c, 0x75, 0x5d, 0xac, 0x59, 0x5d, 0xb4, 0xb5, 0x09, 0xa1, 0xfa, 0x22, + 0x70, 0xa7, 0x5d, 0x04, 0xee, 0x5b, 0x9c, 0xc7, 0xfd, 0xa2, 0xa8, 0xad, 0xfa, 0xf3, 0x7c, 0x85, + 0xc5, 0x7c, 0x82, 0xae, 0xe4, 0xc7, 0xc7, 0x31, 0x1e, 0x3d, 0x57, 0xd6, 0x79, 0x4d, 0xf6, 0xe6, + 0x54, 0xb2, 0x29, 0x37, 0x8b, 0x7b, 0x6f, 0x22, 0xbd, 0x2e, 0xdb, 0x4b, 0x9d, 0x75, 0x39, 0xcd, + 0x71, 0xe7, 0xea, 0xd3, 0xbb, 0x75, 0xb4, 0x80, 0x2e, 0x94, 0x1d, 0x76, 0xbb, 0x34, 0xf8, 0xe3, + 0xee, 0xc5, 0xd7, 0x1b, 0xab, 0x8d, 0x9b, 0x8d, 0xb5, 0xc6, 0x7a, 0xe3, 0x56, 0xe3, 0xf6, 0x3b, + 0x33, 0x73, 0xb5, 0xfa, 0xec, 0xc6, 0x97, 0xc6, 0xde, 0x81, 0x5d, 0xd9, 0x3f, 0xb0, 0x2b, 0xcf, + 0x0e, 0x6c, 0xe3, 0xb3, 0x81, 0x6d, 0x7c, 0x3b, 0xb0, 0x8d, 0x9f, 0x07, 0xb6, 0xb1, 0x37, 0xb0, + 0x8d, 0xfd, 0x81, 0x6d, 0xfc, 0x36, 0xb0, 0x8d, 0xdf, 0x07, 0x76, 0xe5, 0xd9, 0xc0, 0x36, 0xbe, + 0x3a, 0xb4, 0x2b, 0x3f, 0x1c, 0xda, 0xc6, 0xde, 0xa1, 0x5d, 0xd9, 0x3f, 0xb4, 0x2b, 0x1f, 0x3c, + 0x8c, 0x18, 0xef, 0x44, 0x6e, 0xc6, 0x62, 0x5d, 0x22, 0xb7, 0x3b, 0x72, 0x3d, 0x39, 0xe5, 0x6b, + 0xe6, 0x94, 0xee, 0x26, 0xf7, 0x22, 0xd6, 0x84, 0x1d, 0x35, 0x3c, 0xb7, 0x8e, 0x5f, 0x8b, 0x5e, + 0x4d, 0x5f, 0x58, 0xab, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x0f, 0x2f, 0x30, 0x32, 0xc3, 0x0a, + 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/nfv_service/pkg.vespkg.go b/pbgo/extschema/schema/nfv_service/pkg.vespkg.go index 786a91063..e9f19d0a3 100644 --- a/pbgo/extschema/schema/nfv_service/pkg.vespkg.go +++ b/pbgo/extschema/schema/nfv_service/pkg.vespkg.go @@ -142,22 +142,22 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.nfv_service.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.f5_big_ip_aws_service.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.palo_alto_fw_service.service_nodes.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.nfv_service.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.f5_big_ip_aws_service.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.palo_alto_fw_service.service_nodes.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -172,19 +172,19 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.nfv_service.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.f5_big_ip_aws_service.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.palo_alto_fw_service.service_nodes.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.f5_big_ip_aws_service.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.palo_alto_fw_service.service_nodes.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -195,11 +195,11 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.nfv_service.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.f5_big_ip_aws_service.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.palo_alto_fw_service.service_nodes.nodes.#.mgmt_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/nfv_service/public_crudapi.pb.go b/pbgo/extschema/schema/nfv_service/public_crudapi.pb.go index b38a1a500..0467b7cb2 100644 --- a/pbgo/extschema/schema/nfv_service/public_crudapi.pb.go +++ b/pbgo/extschema/schema/nfv_service/public_crudapi.pb.go @@ -1063,111 +1063,112 @@ func init() { } var fileDescriptor_feaf49a6f9634dce = []byte{ - // 1653 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x41, 0x6f, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x8a, 0x75, 0x09, 0x96, 0x49, - 0x14, 0x45, 0x29, 0x97, 0x86, 0xe2, 0x36, 0xb1, 0x11, 0xb8, 0xa5, 0x24, 0x52, 0x90, 0x2d, 0x8b, - 0xc6, 0x92, 0x36, 0xda, 0xa2, 0xe8, 0x62, 0xb9, 0x7c, 0x64, 0xb6, 0x22, 0x77, 0x37, 0x33, 0x43, - 0xca, 0x42, 0x21, 0xa0, 0x48, 0x0f, 0x45, 0xd1, 0x4b, 0x8b, 0x9e, 0x5a, 0xf4, 0xd0, 0x4b, 0x81, - 0x02, 0xfd, 0x03, 0x01, 0x74, 0x71, 0x4f, 0x09, 0x7c, 0x08, 0x8c, 0x16, 0x28, 0x7c, 0x6b, 0x4d, - 0xf5, 0x10, 0xf4, 0x14, 0xf4, 0xd2, 0x6b, 0xb1, 0x33, 0xbb, 0x34, 0x49, 0x91, 0x14, 0x25, 0xeb, - 0xc4, 0x9d, 0x79, 0xef, 0xfb, 0xf6, 0x7d, 0x33, 0xef, 0xbd, 0x1d, 0x0e, 0x56, 0xbb, 0xc0, 0x54, - 0xcb, 0xc9, 0x33, 0xf3, 0x23, 0x68, 0x1b, 0x79, 0xbb, 0xd1, 0xd5, 0x19, 0xd0, 0xae, 0x65, 0x42, - 0xde, 0xed, 0xd4, 0x5a, 0x96, 0xa9, 0x9b, 0xb4, 0x53, 0x37, 0x5c, 0x4b, 0x75, 0xa9, 0xc3, 0x1d, - 0xb2, 0x24, 0xfd, 0x55, 0xe9, 0xaf, 0x0e, 0xf8, 0xa7, 0x72, 0x4d, 0x8b, 0x7f, 0xd4, 0xa9, 0xa9, - 0xa6, 0xd3, 0xce, 0x37, 0x9d, 0xa6, 0x93, 0x17, 0x88, 0x5a, 0xa7, 0x21, 0x46, 0x62, 0x20, 0x9e, - 0x24, 0x53, 0xea, 0x5a, 0xd3, 0x71, 0x9a, 0x2d, 0xc8, 0x1b, 0xae, 0x95, 0x37, 0x6c, 0xdb, 0xe1, - 0x06, 0xb7, 0x1c, 0x9b, 0xf9, 0xd6, 0xaf, 0xfb, 0xd6, 0x3e, 0x07, 0xb4, 0x5d, 0x7e, 0xe0, 0x1b, - 0x53, 0xc3, 0x41, 0x03, 0xa5, 0x0e, 0x0d, 0x80, 0xcb, 0x93, 0x05, 0x39, 0xb5, 0x9f, 0x80, 0xc9, - 0x7d, 0xbf, 0xb7, 0x26, 0xfb, 0xf1, 0x03, 0x17, 0xfa, 0x71, 0x0c, 0xbb, 0x39, 0xee, 0x60, 0x90, - 0x4b, 0xc3, 0xc6, 0x41, 0x5c, 0x76, 0xd8, 0xd4, 0x05, 0x06, 0x76, 0x77, 0x04, 0x9e, 0x19, 0xf1, - 0xb1, 0x60, 0x5f, 0x1f, 0xf6, 0x78, 0xef, 0xa4, 0x07, 0xcb, 0xef, 0x7d, 0xc0, 0xf4, 0xb6, 0x61, - 0x5b, 0x0d, 0x60, 0x5c, 0x77, 0x0d, 0x6a, 0xb4, 0xd9, 0xd0, 0xab, 0x6f, 0x8c, 0x03, 0x71, 0xa0, - 0xd4, 0x68, 0x38, 0xb4, 0x2d, 0x11, 0xc0, 0x81, 0x0e, 0xa1, 0xb2, 0x7f, 0x41, 0xf8, 0xf2, 0x06, - 0x05, 0x83, 0x83, 0x06, 0x1f, 0x77, 0x80, 0x71, 0xf2, 0x5d, 0x1c, 0x6b, 0x03, 0x37, 0xea, 0x06, - 0x37, 0x92, 0x28, 0x83, 0x56, 0x12, 0x6b, 0x6f, 0xa8, 0xc3, 0xbb, 0x5f, 0x16, 0x0b, 0x2a, 0x51, - 0xf7, 0x80, 0x1b, 0xd5, 0x03, 0x17, 0xb4, 0x3e, 0x88, 0xec, 0xe2, 0x08, 0x73, 0xc1, 0x4c, 0x86, - 0x04, 0xf8, 0x1d, 0x75, 0x62, 0xea, 0xa8, 0x92, 0xa2, 0xe2, 0x82, 0xe9, 0x51, 0xac, 0x5f, 0xf9, - 0xfd, 0xe1, 0x82, 0x87, 0x54, 0x9b, 0xa6, 0xee, 0xfd, 0x6a, 0x82, 0xe7, 0x56, 0xfc, 0xc9, 0xed, - 0xa8, 0x7c, 0x65, 0xf6, 0x7f, 0x08, 0x2f, 0x06, 0xd1, 0x32, 0xd7, 0xb1, 0x19, 0x90, 0x0f, 0x4f, - 0x84, 0x9b, 0x19, 0x1b, 0xee, 0x16, 0xf0, 0x31, 0xb1, 0x96, 0xf1, 0x15, 0x76, 0xc0, 0x38, 0xb4, - 0xf5, 0x3e, 0x49, 0x58, 0x90, 0x2c, 0x8f, 0x90, 0x54, 0x84, 0xd7, 0x49, 0xaa, 0x45, 0x09, 0xbf, - 0x17, 0x10, 0xde, 0x1d, 0x12, 0xbf, 0x3c, 0x45, 0xfc, 0x16, 0xf0, 0x33, 0x28, 0xff, 0x27, 0xc2, - 0x8b, 0x1a, 0xb8, 0x2d, 0xc3, 0xec, 0x6f, 0xd4, 0xf7, 0x4e, 0x28, 0x7f, 0x73, 0xac, 0x72, 0x1f, - 0x36, 0x56, 0xfd, 0x60, 0xb0, 0xab, 0x53, 0x82, 0xf5, 0x39, 0x4e, 0x09, 0x98, 0xe4, 0xb1, 0x42, - 0x81, 0x39, 0x1d, 0x6a, 0x82, 0xde, 0x05, 0xca, 0x2c, 0xc7, 0x16, 0xeb, 0x19, 0x5f, 0x8f, 0x7c, - 0x79, 0x84, 0x90, 0x76, 0x25, 0xb0, 0x3e, 0x94, 0xc6, 0x41, 0x85, 0xaf, 0xe0, 0x2b, 0x7d, 0x81, - 0x72, 0x6f, 0xb3, 0xbf, 0x43, 0x18, 0x6f, 0x01, 0x0f, 0x04, 0x5f, 0xc3, 0x71, 0xdb, 0x68, 0x03, - 0x73, 0x0d, 0x13, 0x84, 0xe2, 0xb8, 0xf6, 0x62, 0x82, 0x10, 0x1c, 0xf1, 0x06, 0x42, 0x4c, 0x5c, - 0x13, 0xcf, 0xe4, 0x07, 0xd8, 0x7b, 0xa3, 0x20, 0xd3, 0xbd, 0x2a, 0x30, 0xb8, 0x08, 0x67, 0x71, - 0xed, 0xfa, 0xf4, 0x8d, 0x09, 0x22, 0x28, 0x09, 0xcc, 0x86, 0x53, 0x07, 0x6d, 0x91, 0x0e, 0xcd, - 0x65, 0x7f, 0x19, 0xc5, 0x89, 0x01, 0x4f, 0xb2, 0x8d, 0x13, 0xa6, 0xc8, 0x4c, 0xf1, 0x22, 0x7f, - 0x49, 0x57, 0x4e, 0x4d, 0x7e, 0x5f, 0x9b, 0x86, 0x25, 0xd8, 0x23, 0x27, 0x3b, 0x78, 0x81, 0xca, - 0x95, 0x90, 0x5c, 0xe1, 0x53, 0x0b, 0x69, 0x38, 0x33, 0xb4, 0x84, 0x0f, 0x17, 0x6c, 0xe3, 0xf6, - 0x24, 0x32, 0x65, 0x4f, 0x86, 0x2a, 0x6a, 0xfe, 0x22, 0x2a, 0xea, 0xd2, 0x85, 0x54, 0x54, 0xf4, - 0x02, 0x2a, 0x8a, 0x94, 0x70, 0x94, 0x71, 0x83, 0x77, 0x58, 0xf2, 0x8f, 0x7f, 0x40, 0x99, 0xf0, - 0x4a, 0x62, 0xed, 0xed, 0x29, 0x84, 0x15, 0xe1, 0x2a, 0x43, 0x5c, 0x0f, 0x3f, 0x3e, 0x44, 0x9a, - 0x8f, 0x26, 0xdb, 0xf8, 0x15, 0x0a, 0x0d, 0xa0, 0xd4, 0xb2, 0x9b, 0xba, 0xfc, 0xc0, 0xb0, 0x64, - 0x4c, 0x10, 0x5e, 0x9b, 0x50, 0x84, 0x0d, 0xa1, 0x4e, 0xe9, 0xc3, 0xe4, 0x3c, 0x23, 0x0f, 0x71, - 0xb2, 0x0e, 0x2d, 0xe0, 0x50, 0xd7, 0xa5, 0x0d, 0xea, 0x7d, 0xc6, 0xf8, 0x0c, 0x8c, 0x57, 0x7d, - 0xb4, 0xe6, 0x83, 0x03, 0xde, 0xef, 0xe3, 0xa5, 0xba, 0xc5, 0x8c, 0x5a, 0x6b, 0x1c, 0x31, 0x9e, - 0x81, 0xf8, 0xf5, 0x00, 0x3e, 0xc2, 0x3c, 0x50, 0xb4, 0x77, 0x22, 0x31, 0xa4, 0x84, 0xb2, 0x7f, - 0x42, 0x38, 0xb1, 0x63, 0xb1, 0x19, 0x0b, 0xf5, 0x9b, 0x78, 0xa1, 0x65, 0xd4, 0xa0, 0xa5, 0x37, - 0xac, 0x16, 0x07, 0xea, 0x17, 0x6c, 0x42, 0xcc, 0x95, 0xc4, 0x14, 0x79, 0x03, 0x5f, 0xa6, 0xe0, - 0x3a, 0x94, 0xeb, 0x0d, 0x0b, 0x5a, 0x75, 0x96, 0x0c, 0x67, 0xc2, 0x2b, 0x71, 0x6d, 0x41, 0x4e, - 0x96, 0xc4, 0x1c, 0xb9, 0x8e, 0x5f, 0xf5, 0x9d, 0xe4, 0xa6, 0x04, 0xbe, 0x11, 0xe1, 0x4b, 0xa4, - 0x4d, 0x6e, 0xa1, 0x44, 0x64, 0x3f, 0x8d, 0x62, 0x45, 0xc6, 0x29, 0x8b, 0x76, 0x9b, 0x43, 0x9b, - 0x5c, 0xc5, 0x51, 0x0e, 0xb6, 0x61, 0x73, 0x91, 0x61, 0x71, 0xcd, 0x1f, 0x9d, 0xa3, 0xdb, 0x28, - 0x38, 0xdc, 0xb1, 0xea, 0xb2, 0xe1, 0x69, 0xde, 0x23, 0xc9, 0xe0, 0x44, 0x1d, 0x98, 0x49, 0x2d, - 0xf1, 0x79, 0x4f, 0x26, 0xa4, 0xd2, 0x81, 0x29, 0x92, 0xc2, 0xb1, 0x60, 0x99, 0x93, 0x0b, 0x19, - 0xb4, 0x12, 0xd3, 0xfa, 0x63, 0x52, 0xc6, 0x51, 0xb1, 0x28, 0x52, 0x52, 0x62, 0xed, 0xfd, 0x29, - 0xa9, 0x3a, 0x2a, 0x4b, 0xdd, 0x11, 0xc8, 0xa2, 0xcd, 0xe9, 0x81, 0xe6, 0xd3, 0x90, 0x1f, 0xe3, - 0xc4, 0xc0, 0x91, 0xcb, 0x4f, 0x82, 0x0f, 0xcf, 0xc2, 0x5a, 0x78, 0x01, 0x97, 0xd4, 0x83, 0x84, - 0xe4, 0x26, 0xc6, 0xce, 0xbe, 0x0d, 0x54, 0xf7, 0x0e, 0x1f, 0xc9, 0xb8, 0x28, 0xd8, 0xd4, 0x08, - 0xfd, 0x43, 0x0b, 0xf6, 0x83, 0x0c, 0x8b, 0x0b, 0x6f, 0x6f, 0x66, 0xa8, 0xe9, 0x5c, 0xbe, 0x88, - 0xa6, 0xb3, 0xf8, 0x52, 0x4d, 0xa7, 0x80, 0x63, 0x4d, 0xe0, 0xa2, 0x73, 0x4c, 0x68, 0x5f, 0x13, - 0x1a, 0x8f, 0x76, 0xa9, 0x29, 0x07, 0xe4, 0x2e, 0xc6, 0x7e, 0x5e, 0x32, 0xe0, 0x7e, 0x6f, 0x38, - 0x5b, 0xb3, 0x89, 0x4b, 0x7c, 0x05, 0x78, 0xea, 0x26, 0x4e, 0x0c, 0x6c, 0xa8, 0x97, 0x69, 0x7b, - 0x70, 0xe0, 0x67, 0xa5, 0xf7, 0x48, 0x5e, 0xc5, 0xf3, 0x5d, 0xa3, 0xd5, 0x09, 0x12, 0x52, 0x0e, - 0x6e, 0x85, 0x3e, 0x40, 0xa9, 0xdb, 0x58, 0x19, 0xdd, 0xb5, 0xb3, 0xe0, 0xef, 0x44, 0x62, 0xf3, - 0x4a, 0x34, 0xfb, 0x73, 0x84, 0x17, 0x06, 0xb3, 0x81, 0x14, 0xf0, 0xbc, 0xc5, 0xa1, 0xcd, 0x92, - 0xb2, 0x8d, 0xbe, 0x7b, 0x86, 0x2c, 0xd2, 0x24, 0x92, 0x5c, 0xc7, 0x51, 0x79, 0x86, 0x4f, 0x86, - 0x04, 0x47, 0x72, 0x84, 0xa3, 0xe8, 0x19, 0xc5, 0xa2, 0xfa, 0x7e, 0xd9, 0x3d, 0x7c, 0x79, 0x53, - 0x74, 0xbb, 0xf3, 0x1f, 0x09, 0x56, 0xb0, 0xd2, 0x30, 0xac, 0x96, 0x6e, 0x35, 0xfa, 0x5d, 0x51, - 0x54, 0x6c, 0x4c, 0x5b, 0xf4, 0xe6, 0xb7, 0x1b, 0x41, 0xb7, 0x5b, 0xfd, 0x2f, 0xc2, 0xaf, 0x8d, - 0x3d, 0x0b, 0x90, 0x14, 0xbe, 0xba, 0x55, 0xac, 0xea, 0x5a, 0xe5, 0xbe, 0x5e, 0x2a, 0x6b, 0xf7, - 0x0a, 0x55, 0x7d, 0xb3, 0x58, 0x2a, 0x3c, 0xd8, 0xa9, 0x2a, 0x73, 0xe4, 0x1b, 0x78, 0x69, 0xc4, - 0x56, 0x2a, 0x6b, 0xfa, 0x86, 0x56, 0x2c, 0x54, 0x8b, 0x0a, 0x22, 0x69, 0x9c, 0x1a, 0x63, 0xd6, - 0x8a, 0xf7, 0x77, 0x0a, 0x1b, 0x45, 0x25, 0x44, 0x96, 0xf0, 0x6b, 0x23, 0xf6, 0x4a, 0xb5, 0x50, - 0x7d, 0x50, 0x51, 0xc2, 0xe4, 0x75, 0xfc, 0xb5, 0x11, 0x93, 0x56, 0x2c, 0x6c, 0x2a, 0x11, 0xf2, - 0x26, 0xce, 0x9c, 0x30, 0x94, 0x8a, 0x9a, 0xb6, 0xbd, 0xbb, 0xa5, 0x97, 0xd7, 0xef, 0x14, 0x37, - 0xaa, 0x15, 0x65, 0x7e, 0x8c, 0xd7, 0xba, 0x56, 0xbe, 0x5b, 0xdc, 0x95, 0xce, 0xc5, 0xdd, 0x8d, - 0x62, 0x45, 0x89, 0xae, 0xfd, 0x2a, 0x8e, 0xc3, 0x85, 0xfb, 0xdb, 0xe4, 0x1f, 0x08, 0x47, 0xe5, - 0x09, 0x85, 0xcc, 0x7c, 0x88, 0x49, 0xbd, 0x33, 0x83, 0xa7, 0x7f, 0xb4, 0xdb, 0xef, 0x7d, 0x96, - 0xbc, 0xd1, 0xf8, 0xf6, 0x23, 0x33, 0xc7, 0x2c, 0x0e, 0xb9, 0xb6, 0x61, 0x1b, 0x4d, 0x68, 0x83, - 0xcd, 0x73, 0x35, 0x83, 0x59, 0x66, 0xae, 0xc3, 0x80, 0x7e, 0xab, 0x0b, 0x2c, 0x67, 0x39, 0x39, - 0x1b, 0xf8, 0xbe, 0x43, 0xf7, 0x72, 0xfb, 0xd4, 0xe2, 0xf0, 0xc9, 0xdf, 0xff, 0xfd, 0xdb, 0xd0, - 0xcd, 0xec, 0x0d, 0xff, 0x7f, 0x6a, 0xbe, 0xbf, 0xdb, 0x2c, 0xff, 0xd3, 0xa0, 0xf8, 0xd5, 0xfe, - 0xe4, 0xe1, 0xe0, 0x3f, 0x3c, 0x76, 0x0b, 0xad, 0x92, 0x2f, 0x10, 0x0e, 0x6f, 0x01, 0x27, 0x6f, - 0x9d, 0x76, 0x02, 0x94, 0x92, 0x96, 0x67, 0x3b, 0x28, 0x66, 0x1f, 0x7d, 0xfe, 0x69, 0x08, 0xf5, - 0x3e, 0x4b, 0x7e, 0x67, 0x8a, 0xa6, 0xb6, 0x63, 0x5b, 0xdc, 0x39, 0x21, 0x8b, 0x82, 0x51, 0x17, - 0xaa, 0x6e, 0x90, 0xb5, 0x71, 0xaa, 0x26, 0x88, 0x91, 0x86, 0x43, 0xf2, 0x04, 0xe1, 0x88, 0x57, - 0x61, 0x64, 0xf9, 0xd4, 0x12, 0x94, 0x92, 0xde, 0x9e, 0xb1, 0x54, 0xb3, 0x1f, 0x5f, 0x80, 0xa6, - 0x1c, 0x79, 0xf7, 0x0c, 0x9a, 0xc8, 0x7f, 0x10, 0xbe, 0xe4, 0x1f, 0x66, 0xc9, 0xec, 0x07, 0xde, - 0xd4, 0xea, 0x2c, 0xae, 0xbe, 0xaa, 0x5f, 0xa0, 0x97, 0x4a, 0xbd, 0xed, 0xd4, 0xe6, 0x79, 0x52, - 0x6f, 0xc4, 0xe3, 0xd0, 0x4b, 0xc5, 0xbf, 0x22, 0x1c, 0x95, 0xed, 0x6c, 0x6a, 0x8d, 0x0d, 0x75, - 0xbc, 0xd4, 0x55, 0x55, 0x5e, 0x91, 0xa8, 0xc1, 0x15, 0x89, 0x5a, 0x6c, 0xbb, 0xfc, 0x20, 0xdb, - 0x79, 0x29, 0x55, 0xef, 0xaf, 0x9e, 0x23, 0xf5, 0x6e, 0xa1, 0xd5, 0xd4, 0x8f, 0x1e, 0x1f, 0xa1, - 0xd0, 0xdf, 0x8e, 0x50, 0x66, 0x72, 0xfc, 0xf2, 0x93, 0xf6, 0xec, 0x08, 0xa1, 0xde, 0x11, 0x5a, - 0x9e, 0xed, 0x03, 0xf8, 0xc9, 0x17, 0xc9, 0x90, 0x82, 0xd6, 0x7f, 0x83, 0x9e, 0xdc, 0x9e, 0xdf, - 0xd0, 0x1e, 0x6c, 0xee, 0x3c, 0x7d, 0x9e, 0x9e, 0x7b, 0xf6, 0x3c, 0x3d, 0xf7, 0xd5, 0xf3, 0x34, - 0xfa, 0x59, 0x2f, 0x8d, 0xfe, 0xdc, 0x4b, 0xa3, 0xcf, 0x7b, 0x69, 0xf4, 0xb4, 0x97, 0x46, 0xff, - 0xea, 0xa5, 0xd1, 0x97, 0xbd, 0xf4, 0xdc, 0x57, 0xbd, 0x34, 0xfa, 0xf5, 0x71, 0x7a, 0xee, 0xf1, - 0x71, 0x1a, 0x3d, 0x3d, 0x4e, 0xcf, 0x3d, 0x3b, 0x4e, 0xcf, 0xfd, 0xb0, 0xdc, 0x74, 0xdc, 0xbd, - 0xa6, 0xda, 0x75, 0x5a, 0xe2, 0x2e, 0x44, 0xed, 0x0c, 0x5c, 0x8a, 0xe4, 0x5c, 0xea, 0x74, 0xad, - 0x3a, 0xd0, 0x5c, 0x60, 0xce, 0xbb, 0xb5, 0xa6, 0x93, 0x87, 0x47, 0xdc, 0xbf, 0x45, 0x39, 0x79, - 0x4d, 0x54, 0x8b, 0x8a, 0x85, 0x7f, 0xef, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x3d, 0x71, 0x09, - 0x84, 0x43, 0x13, 0x00, 0x00, + // 1671 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcf, 0x6f, 0x23, 0x49, + 0x15, 0x4e, 0xd9, 0x8e, 0xc7, 0x2e, 0x67, 0x32, 0xbd, 0xc5, 0xee, 0xac, 0x63, 0x06, 0xcb, 0x78, + 0x77, 0xb3, 0xd9, 0x2c, 0x6e, 0x8f, 0xb2, 0x83, 0x76, 0x67, 0xb4, 0x1a, 0x70, 0x12, 0x3b, 0xca, + 0x4c, 0x26, 0x1e, 0xb5, 0x3d, 0xc3, 0x0f, 0xad, 0x68, 0xb5, 0xdb, 0xcf, 0xde, 0x26, 0x76, 0x77, + 0x53, 0x55, 0x76, 0x36, 0x42, 0x91, 0xd0, 0x72, 0xe2, 0x80, 0x04, 0xe2, 0x00, 0xac, 0x10, 0xe2, + 0x82, 0x84, 0xe0, 0x1f, 0x58, 0x29, 0x97, 0x39, 0x20, 0xb1, 0xda, 0x03, 0x1a, 0xc1, 0x65, 0x6e, + 0x30, 0x0e, 0x48, 0x7b, 0x5c, 0x90, 0x10, 0x12, 0x27, 0xd4, 0x55, 0xdd, 0x5e, 0xdb, 0xb1, 0x1d, + 0x27, 0x64, 0x38, 0xb9, 0xab, 0xde, 0xfb, 0xbe, 0x7e, 0x5f, 0xd5, 0x7b, 0xaf, 0xcb, 0x85, 0xd5, + 0x2e, 0x30, 0xd5, 0x72, 0xf2, 0xcc, 0x7c, 0x17, 0xda, 0x46, 0xde, 0x6e, 0x74, 0x75, 0x06, 0xb4, + 0x6b, 0x99, 0x90, 0x77, 0x3b, 0xb5, 0x96, 0x65, 0xea, 0x26, 0xed, 0xd4, 0x0d, 0xd7, 0x52, 0x5d, + 0xea, 0x70, 0x87, 0x2c, 0x49, 0x7f, 0x55, 0xfa, 0xab, 0x03, 0xfe, 0xa9, 0x5c, 0xd3, 0xe2, 0xef, + 0x76, 0x6a, 0xaa, 0xe9, 0xb4, 0xf3, 0x4d, 0xa7, 0xe9, 0xe4, 0x05, 0xa2, 0xd6, 0x69, 0x88, 0x91, + 0x18, 0x88, 0x27, 0xc9, 0x94, 0xba, 0xd6, 0x74, 0x9c, 0x66, 0x0b, 0xf2, 0x86, 0x6b, 0xe5, 0x0d, + 0xdb, 0x76, 0xb8, 0xc1, 0x2d, 0xc7, 0x66, 0xbe, 0xf5, 0xf3, 0xbe, 0xb5, 0xcf, 0x01, 0x6d, 0x97, + 0x1f, 0xf8, 0xc6, 0xd4, 0x70, 0xd0, 0x40, 0xa9, 0x43, 0x03, 0xe0, 0xf2, 0x64, 0x41, 0x4e, 0xed, + 0xdb, 0x60, 0x72, 0xdf, 0xef, 0x95, 0xc9, 0x7e, 0xfc, 0xc0, 0x85, 0x7e, 0x1c, 0xc3, 0x6e, 0x8e, + 0x3b, 0x18, 0xe4, 0xd2, 0xb0, 0x71, 0x10, 0x97, 0x1d, 0x36, 0x75, 0x81, 0x81, 0xdd, 0x1d, 0x81, + 0x67, 0x46, 0x7c, 0x2c, 0xd8, 0xd7, 0x87, 0x3d, 0xde, 0x38, 0xe9, 0xc1, 0xf2, 0x7b, 0x6f, 0x31, + 0xbd, 0x6d, 0xd8, 0x56, 0x03, 0x18, 0xd7, 0x5d, 0x83, 0x1a, 0x6d, 0x36, 0xf4, 0xea, 0x1b, 0xe3, + 0x40, 0x1c, 0x28, 0x35, 0x1a, 0x0e, 0x6d, 0x4b, 0x04, 0x70, 0xa0, 0x43, 0xa8, 0xec, 0xef, 0x10, + 0xbe, 0xbc, 0x41, 0xc1, 0xe0, 0xa0, 0xc1, 0x77, 0x3a, 0xc0, 0x38, 0xf9, 0x0a, 0x8e, 0xb5, 0x81, + 0x1b, 0x75, 0x83, 0x1b, 0x49, 0x94, 0x41, 0x2b, 0x89, 0xb5, 0x97, 0xd4, 0xe1, 0xdd, 0x2f, 0x8b, + 0x05, 0x95, 0xa8, 0x7b, 0xc0, 0x8d, 0xea, 0x81, 0x0b, 0x5a, 0x1f, 0x44, 0x76, 0x71, 0x84, 0xb9, + 0x60, 0x26, 0x43, 0x02, 0xfc, 0x9a, 0x3a, 0x31, 0x75, 0x54, 0x49, 0x51, 0x71, 0xc1, 0xf4, 0x28, + 0xd6, 0xaf, 0x7c, 0x70, 0xb8, 0xe0, 0x21, 0xd5, 0xa6, 0xa9, 0x7b, 0xbf, 0x9a, 0xe0, 0xb9, 0x15, + 0xff, 0xf8, 0x76, 0x54, 0xbe, 0x32, 0xfb, 0x6f, 0x84, 0x17, 0x83, 0x68, 0x99, 0xeb, 0xd8, 0x0c, + 0xc8, 0xdb, 0x27, 0xc2, 0xcd, 0x8c, 0x0d, 0x77, 0x0b, 0xf8, 0x98, 0x58, 0xcb, 0xf8, 0x0a, 0x3b, + 0x60, 0x1c, 0xda, 0x7a, 0x9f, 0x24, 0x2c, 0x48, 0x96, 0x47, 0x48, 0x2a, 0xc2, 0xeb, 0x24, 0xd5, + 0xa2, 0x84, 0xdf, 0x0b, 0x08, 0xef, 0x0e, 0x89, 0x5f, 0x9e, 0x22, 0x7e, 0x0b, 0xf8, 0x19, 0x94, + 0xff, 0x05, 0xe1, 0x45, 0x0d, 0xdc, 0x96, 0x61, 0xf6, 0x37, 0xea, 0xab, 0x27, 0x94, 0xbf, 0x3c, + 0x56, 0xb9, 0x0f, 0x1b, 0xab, 0x7e, 0x30, 0xd8, 0xd5, 0x29, 0xc1, 0xfa, 0x1c, 0xa7, 0x04, 0x4c, + 0xf2, 0x58, 0xa1, 0xc0, 0x9c, 0x0e, 0x35, 0x41, 0xef, 0x02, 0x65, 0x96, 0x63, 0x8b, 0xf5, 0x8c, + 0xaf, 0x47, 0x3e, 0x39, 0x42, 0x48, 0xbb, 0x12, 0x58, 0x1f, 0x4a, 0xe3, 0xa0, 0xc2, 0xe7, 0xf0, + 0x95, 0xbe, 0x40, 0xb9, 0xb7, 0xd9, 0x9f, 0x23, 0x8c, 0xb7, 0x80, 0x07, 0x82, 0xaf, 0xe1, 0xb8, + 0x6d, 0xb4, 0x81, 0xb9, 0x86, 0x09, 0x42, 0x71, 0x5c, 0xfb, 0x6c, 0x82, 0x10, 0x1c, 0xf1, 0x06, + 0x42, 0x4c, 0x5c, 0x13, 0xcf, 0xe4, 0x1b, 0xd8, 0x7b, 0xa3, 0x20, 0xd3, 0xbd, 0x2a, 0x30, 0xb8, + 0x08, 0x67, 0x71, 0xed, 0xfa, 0xf4, 0x8d, 0x09, 0x22, 0x28, 0x09, 0xcc, 0x86, 0x53, 0x07, 0x6d, + 0x91, 0x0e, 0xcd, 0x65, 0x7f, 0x10, 0xc5, 0x89, 0x01, 0x4f, 0xb2, 0x8d, 0x13, 0xa6, 0xc8, 0x4c, + 0xf1, 0x22, 0x7f, 0x49, 0x57, 0x4e, 0x4d, 0x7e, 0x5f, 0x9b, 0x86, 0x25, 0xd8, 0x23, 0x27, 0x3b, + 0x78, 0x81, 0xca, 0x95, 0x90, 0x5c, 0xe1, 0x53, 0x0b, 0x69, 0x38, 0x33, 0xb4, 0x84, 0x0f, 0x17, + 0x6c, 0xe3, 0xf6, 0x24, 0x32, 0x65, 0x4f, 0x86, 0x2a, 0x6a, 0xfe, 0x22, 0x2a, 0xea, 0xd2, 0x85, + 0x54, 0x54, 0xf4, 0x02, 0x2a, 0x8a, 0x94, 0x70, 0x94, 0x71, 0x83, 0x77, 0x58, 0xf2, 0x57, 0xbf, + 0x40, 0x99, 0xf0, 0x4a, 0x62, 0xed, 0xd5, 0x29, 0x84, 0x15, 0xe1, 0x2a, 0x43, 0x5c, 0x0f, 0x3f, + 0x3a, 0x44, 0x9a, 0x8f, 0x26, 0xdb, 0xf8, 0x39, 0x0a, 0x0d, 0xa0, 0xd4, 0xb2, 0x9b, 0xba, 0xfc, + 0xc0, 0xb0, 0x64, 0x4c, 0x10, 0x5e, 0x9b, 0x50, 0x84, 0x0d, 0xa1, 0x4e, 0xe9, 0xc3, 0xe4, 0x3c, + 0x23, 0x0f, 0x71, 0xb2, 0x0e, 0x2d, 0xe0, 0x50, 0xd7, 0xa5, 0x0d, 0xea, 0x7d, 0xc6, 0xf8, 0x0c, + 0x8c, 0x57, 0x7d, 0xb4, 0xe6, 0x83, 0x03, 0xde, 0xaf, 0xe3, 0xa5, 0xba, 0xc5, 0x8c, 0x5a, 0x6b, + 0x1c, 0x31, 0x9e, 0x81, 0xf8, 0xc5, 0x00, 0x3e, 0xc2, 0x3c, 0x50, 0xb4, 0x77, 0x22, 0x31, 0xa4, + 0x84, 0xb2, 0xbf, 0x46, 0x38, 0xb1, 0x63, 0xb1, 0x19, 0x0b, 0xf5, 0x8b, 0x78, 0xa1, 0x65, 0xd4, + 0xa0, 0xa5, 0x37, 0xac, 0x16, 0x07, 0xea, 0x17, 0x6c, 0x42, 0xcc, 0x95, 0xc4, 0x14, 0x79, 0x09, + 0x5f, 0xa6, 0xe0, 0x3a, 0x94, 0xeb, 0x0d, 0x0b, 0x5a, 0x75, 0x96, 0x0c, 0x67, 0xc2, 0x2b, 0x71, + 0x6d, 0x41, 0x4e, 0x96, 0xc4, 0x1c, 0xb9, 0x8e, 0x9f, 0xf7, 0x9d, 0xe4, 0xa6, 0x04, 0xbe, 0x11, + 0xe1, 0x4b, 0xa4, 0x4d, 0x6e, 0xa1, 0x44, 0x64, 0x3f, 0x8c, 0x62, 0x45, 0xc6, 0x29, 0x8b, 0x76, + 0x9b, 0x43, 0x9b, 0x5c, 0xc5, 0x51, 0x0e, 0xb6, 0x61, 0x73, 0x91, 0x61, 0x71, 0xcd, 0x1f, 0x9d, + 0xa3, 0xdb, 0x28, 0x38, 0xdc, 0xb1, 0xea, 0xb2, 0xe1, 0x69, 0xde, 0x23, 0xc9, 0xe0, 0x44, 0x1d, + 0x98, 0x49, 0x2d, 0xf1, 0x79, 0x4f, 0x26, 0xa4, 0xd2, 0x81, 0x29, 0x92, 0xc2, 0xb1, 0x60, 0x99, + 0x93, 0x0b, 0x19, 0xb4, 0x12, 0xd3, 0xfa, 0x63, 0x52, 0xc6, 0x51, 0xb1, 0x28, 0x52, 0x52, 0x62, + 0xed, 0xcd, 0x29, 0xa9, 0x3a, 0x2a, 0x4b, 0xdd, 0x11, 0xc8, 0xa2, 0xcd, 0xe9, 0x81, 0xe6, 0xd3, + 0x90, 0x6f, 0xe1, 0xc4, 0xc0, 0x91, 0xcb, 0x4f, 0x82, 0xb7, 0xcf, 0xc2, 0x5a, 0xf8, 0x0c, 0x2e, + 0xa9, 0x07, 0x09, 0xc9, 0x4d, 0x8c, 0x9d, 0x7d, 0x1b, 0xa8, 0xee, 0x1d, 0x3e, 0x92, 0x71, 0x51, + 0xb0, 0xa9, 0x11, 0xfa, 0x87, 0x16, 0xec, 0x07, 0x19, 0x16, 0x17, 0xde, 0xde, 0xcc, 0x50, 0xd3, + 0xb9, 0x7c, 0x11, 0x4d, 0x67, 0xf1, 0x7f, 0x6a, 0x3a, 0x05, 0x1c, 0x6b, 0x02, 0x17, 0x9d, 0x63, + 0x42, 0xfb, 0x9a, 0xd0, 0x78, 0xb4, 0x4b, 0x4d, 0x39, 0x20, 0x77, 0x31, 0xf6, 0xf3, 0x92, 0x01, + 0xf7, 0x7b, 0xc3, 0xd9, 0x9a, 0x4d, 0x5c, 0xe2, 0x2b, 0xc0, 0x53, 0x37, 0x71, 0x62, 0x60, 0x43, + 0xbd, 0x4c, 0xdb, 0x83, 0x03, 0x3f, 0x2b, 0xbd, 0x47, 0xf2, 0x3c, 0x9e, 0xef, 0x1a, 0xad, 0x4e, + 0x90, 0x90, 0x72, 0x70, 0x2b, 0xf4, 0x16, 0x4a, 0xdd, 0xc6, 0xca, 0xe8, 0xae, 0x9d, 0x05, 0x7f, + 0x27, 0x12, 0x9b, 0x57, 0xa2, 0xd9, 0xef, 0x23, 0xbc, 0x30, 0x98, 0x0d, 0xa4, 0x80, 0xe7, 0x2d, + 0x0e, 0x6d, 0x96, 0x94, 0x6d, 0xf4, 0xf5, 0x33, 0x64, 0x91, 0x26, 0x91, 0xe4, 0x3a, 0x8e, 0xca, + 0x33, 0x7c, 0x32, 0x24, 0x38, 0x92, 0x23, 0x1c, 0x45, 0xcf, 0x28, 0x16, 0xd5, 0xf7, 0xcb, 0xee, + 0xe1, 0xcb, 0x9b, 0xa2, 0xdb, 0x9d, 0xff, 0x48, 0xb0, 0x82, 0x95, 0x86, 0x61, 0xb5, 0x74, 0xab, + 0xd1, 0xef, 0x8a, 0xa2, 0x62, 0x63, 0xda, 0xa2, 0x37, 0xbf, 0xdd, 0x08, 0xba, 0xdd, 0xea, 0x3f, + 0x11, 0x7e, 0x61, 0xec, 0x59, 0x80, 0xa4, 0xf0, 0xd5, 0xad, 0x62, 0x55, 0xd7, 0x2a, 0xf7, 0xf5, + 0x52, 0x59, 0xbb, 0x57, 0xa8, 0xea, 0x9b, 0xc5, 0x52, 0xe1, 0xc1, 0x4e, 0x55, 0x99, 0x23, 0x5f, + 0xc0, 0x4b, 0x23, 0xb6, 0x52, 0x59, 0xd3, 0x37, 0xb4, 0x62, 0xa1, 0x5a, 0x54, 0x10, 0x49, 0xe3, + 0xd4, 0x18, 0xb3, 0x56, 0xbc, 0xbf, 0x53, 0xd8, 0x28, 0x2a, 0x21, 0xb2, 0x84, 0x5f, 0x18, 0xb1, + 0x57, 0xaa, 0x85, 0xea, 0x83, 0x8a, 0x12, 0x26, 0x2f, 0xe2, 0xcf, 0x8d, 0x98, 0xb4, 0x62, 0x61, + 0x53, 0x89, 0x90, 0x97, 0x71, 0xe6, 0x84, 0xa1, 0x54, 0xd4, 0xb4, 0xed, 0xdd, 0x2d, 0xbd, 0xbc, + 0x7e, 0xa7, 0xb8, 0x51, 0xad, 0x28, 0xf3, 0x63, 0xbc, 0xd6, 0xb5, 0xf2, 0xdd, 0xe2, 0xae, 0x74, + 0x2e, 0xee, 0x6e, 0x14, 0x2b, 0x4a, 0x74, 0xed, 0xf7, 0x18, 0x87, 0x0b, 0xf7, 0xb7, 0xc9, 0x7f, + 0x10, 0x8e, 0xca, 0x13, 0x0a, 0x99, 0xf9, 0x10, 0x93, 0x7a, 0x6d, 0x06, 0x4f, 0xff, 0x68, 0xf7, + 0x01, 0xea, 0xfd, 0x21, 0xf9, 0xb5, 0xc6, 0x97, 0xdf, 0x33, 0x73, 0xcc, 0xe2, 0x90, 0x6b, 0x1b, + 0xb6, 0xd1, 0x84, 0x36, 0xd8, 0x3c, 0x57, 0x33, 0x98, 0x65, 0xe6, 0x3a, 0x0c, 0xe8, 0x97, 0xc6, + 0xda, 0x19, 0x37, 0xec, 0xba, 0x41, 0xeb, 0xd2, 0xa5, 0x0b, 0x2c, 0x67, 0x39, 0x39, 0x1b, 0xf8, + 0xbe, 0x43, 0xf7, 0x72, 0xfb, 0xd4, 0xe2, 0xf0, 0xfe, 0x9f, 0xff, 0xf6, 0x93, 0xd0, 0xcd, 0xec, + 0x0d, 0xff, 0xbf, 0x6c, 0xbe, 0x9f, 0x11, 0x2c, 0xff, 0xdd, 0xa0, 0x41, 0xa8, 0xfd, 0xc9, 0xc3, + 0xc1, 0x7f, 0x81, 0xec, 0x16, 0x5a, 0x25, 0xff, 0x42, 0x38, 0xbc, 0x05, 0x9c, 0xbc, 0x72, 0xda, + 0x29, 0x51, 0xca, 0x5e, 0x9e, 0xed, 0x30, 0x99, 0xfd, 0x25, 0xfa, 0xe8, 0xc3, 0x90, 0xa7, 0xfb, + 0x9d, 0x29, 0xba, 0xdb, 0x8e, 0x6d, 0x71, 0xe7, 0x34, 0xe9, 0x81, 0xd7, 0x88, 0x7a, 0x0a, 0x46, + 0x5d, 0x88, 0xbf, 0x41, 0xd6, 0xc6, 0x89, 0x9f, 0xa0, 0x59, 0x1a, 0x0e, 0xc9, 0x3f, 0x10, 0x8e, + 0x78, 0xc5, 0x4a, 0x96, 0x4f, 0xad, 0x66, 0xa9, 0xfc, 0xd5, 0x19, 0xab, 0x3e, 0xfb, 0xd3, 0xff, + 0x9f, 0xf4, 0x1c, 0x79, 0xfd, 0x0c, 0xd2, 0xc9, 0x0f, 0x43, 0xf8, 0x92, 0x7f, 0x7c, 0x26, 0xb3, + 0x1f, 0xb1, 0x53, 0xab, 0xb3, 0xb8, 0xfa, 0xe2, 0x7f, 0xfb, 0xcc, 0x73, 0x7d, 0x3b, 0xb5, 0x79, + 0x9e, 0x5c, 0x1f, 0xf1, 0x38, 0xf4, 0x72, 0xff, 0xef, 0x08, 0x47, 0x65, 0x8f, 0x9d, 0x5a, 0xf8, + 0x43, 0x6d, 0x38, 0x75, 0x55, 0x95, 0xf7, 0x36, 0x6a, 0x70, 0x6f, 0xa3, 0x16, 0xdb, 0x2e, 0x3f, + 0xc8, 0xfe, 0xec, 0x99, 0x2b, 0x7f, 0x73, 0xf5, 0x1c, 0x89, 0x7e, 0x0b, 0xad, 0xa6, 0xde, 0x79, + 0x74, 0x84, 0x42, 0x7f, 0x3a, 0x42, 0x99, 0xc9, 0x1a, 0xe5, 0xb7, 0xf8, 0xc9, 0x11, 0x42, 0xbd, + 0x23, 0xb4, 0x3c, 0xdb, 0x97, 0xfb, 0xfd, 0x3f, 0x26, 0x43, 0x0a, 0x5a, 0xff, 0x31, 0xfa, 0xf8, + 0xf6, 0xfc, 0x86, 0xf6, 0x60, 0x73, 0xe7, 0xf1, 0xd3, 0xf4, 0xdc, 0x93, 0xa7, 0xe9, 0xb9, 0x4f, + 0x9f, 0xa6, 0xd1, 0xf7, 0x7a, 0x69, 0xf4, 0x9b, 0x5e, 0x1a, 0x7d, 0xd4, 0x4b, 0xa3, 0xc7, 0xbd, + 0x34, 0xfa, 0x6b, 0x2f, 0x8d, 0x3e, 0xe9, 0xa5, 0xe7, 0x3e, 0xed, 0xa5, 0xd1, 0x8f, 0x8e, 0xd3, + 0x73, 0x8f, 0x8e, 0xd3, 0xe8, 0xf1, 0x71, 0x7a, 0xee, 0xc9, 0x71, 0x7a, 0xee, 0x9b, 0xe5, 0xa6, + 0xe3, 0xee, 0x35, 0xd5, 0xae, 0xd3, 0x12, 0x97, 0x38, 0x6a, 0x67, 0xe0, 0x36, 0x27, 0xe7, 0x52, + 0xa7, 0x6b, 0xd5, 0x81, 0xe6, 0x02, 0x73, 0xde, 0xad, 0x35, 0x9d, 0x3c, 0xbc, 0xc7, 0xfd, 0xeb, + 0x9f, 0x93, 0xf7, 0x5b, 0xb5, 0xa8, 0xd8, 0x9c, 0x37, 0xfe, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xba, + 0x1e, 0x95, 0x8d, 0xfc, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/nfv_service/public_crudapi.vesapi.go b/pbgo/extschema/schema/nfv_service/public_crudapi.vesapi.go index 04bfcfb15..064aa6f16 100644 --- a/pbgo/extschema/schema/nfv_service/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/nfv_service/public_crudapi.vesapi.go @@ -3956,10 +3956,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4016,10 +4020,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4078,10 +4086,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/nfv_service/public_custom_api.pb.go b/pbgo/extschema/schema/nfv_service/public_custom_api.pb.go index 780796c67..d3bfe2756 100644 --- a/pbgo/extschema/schema/nfv_service/public_custom_api.pb.go +++ b/pbgo/extschema/schema/nfv_service/public_custom_api.pb.go @@ -145,38 +145,39 @@ func init() { } var fileDescriptor_87a7006c909a6e9b = []byte{ - // 496 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x93, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0xa2, 0x08, 0xdd, 0x93, 0x04, 0x84, 0x36, 0xc6, 0x31, 0xe4, 0x24, 0xe2, 0xcc, - 0x60, 0x45, 0xfc, 0x81, 0x08, 0xfe, 0xa0, 0xe0, 0xc5, 0x4a, 0x05, 0x0f, 0x5e, 0xc2, 0xec, 0xe4, - 0xed, 0x76, 0x34, 0x3b, 0x6f, 0x9c, 0x99, 0x5d, 0x5b, 0x44, 0x90, 0xe2, 0xc5, 0x9b, 0xe2, 0x3f, - 0xe1, 0xff, 0xd0, 0x4b, 0x6f, 0x7a, 0xd2, 0xa0, 0x97, 0x1e, 0xcd, 0xc6, 0x83, 0xc7, 0xfe, 0x09, - 0x92, 0x4d, 0x0a, 0x8d, 0x1a, 0xc1, 0xdb, 0x7b, 0x7c, 0xe6, 0xfb, 0xf8, 0xbe, 0xc7, 0x77, 0xe2, - 0x8b, 0x25, 0x78, 0xae, 0x51, 0x78, 0xb5, 0x09, 0xb9, 0x14, 0x26, 0x2d, 0x7b, 0x1e, 0x5c, 0xa9, - 0x15, 0x08, 0x5b, 0x24, 0x03, 0xad, 0x7a, 0xaa, 0xf0, 0x01, 0xf3, 0x9e, 0xb4, 0x9a, 0x5b, 0x87, - 0x01, 0x9b, 0x2b, 0x53, 0x09, 0x9f, 0x4a, 0xf8, 0x11, 0x49, 0x8b, 0x65, 0x3a, 0x6c, 0x16, 0x09, - 0x57, 0x98, 0x8b, 0x0c, 0x33, 0x14, 0xb5, 0x22, 0x29, 0xd2, 0xba, 0xab, 0x9b, 0xba, 0x9a, 0x4e, - 0x6a, 0xb5, 0x33, 0xc4, 0x6c, 0x00, 0x42, 0x5a, 0x2d, 0xa4, 0x31, 0x18, 0x64, 0xd0, 0x68, 0xfc, - 0x8c, 0x9e, 0x9e, 0xb7, 0x86, 0xf6, 0x28, 0x5c, 0x99, 0x87, 0x61, 0xdb, 0xc2, 0x21, 0x6a, 0xcf, - 0xa3, 0x52, 0x0e, 0x74, 0x5f, 0x06, 0x98, 0xd1, 0xee, 0x6f, 0x14, 0x3c, 0x98, 0x72, 0x7e, 0x78, - 0x77, 0x35, 0x6e, 0xaf, 0xa1, 0x53, 0x70, 0x17, 0x06, 0x10, 0xe0, 0xfe, 0xda, 0xa3, 0x87, 0xd3, - 0xfd, 0x36, 0xe0, 0x59, 0x01, 0x3e, 0x34, 0x9b, 0xf1, 0x71, 0x23, 0x73, 0x58, 0x26, 0x1d, 0x72, - 0x6e, 0x69, 0xa3, 0xae, 0xbb, 0x67, 0xe3, 0x33, 0x0b, 0x34, 0xde, 0xa2, 0xf1, 0xb0, 0xfa, 0xa5, - 0x11, 0x2f, 0xdd, 0xa9, 0x6f, 0x79, 0xeb, 0xc1, 0xbd, 0xe6, 0xbb, 0x46, 0x7c, 0xea, 0xaf, 0xef, - 0x9b, 0x57, 0xf8, 0xc2, 0xfb, 0xf2, 0x7f, 0xb9, 0x6a, 0x5d, 0xfd, 0x7f, 0xe1, 0xd4, 0x5a, 0xf7, - 0x35, 0xa9, 0x3e, 0x2e, 0xdf, 0x28, 0xc1, 0x33, 0x8d, 0x4c, 0x9b, 0xd4, 0x49, 0x1f, 0x5c, 0xa1, - 0x42, 0xe1, 0x80, 0x3d, 0x77, 0x3a, 0xc0, 0x85, 0x4e, 0x7a, 0x79, 0x4b, 0x31, 0xaf, 0x03, 0xb0, - 0x5c, 0x1a, 0x99, 0x41, 0x0e, 0x26, 0xb0, 0x44, 0x7a, 0xad, 0x58, 0xe1, 0xc1, 0xed, 0x7c, 0xfb, - 0xf1, 0xbe, 0x71, 0xb3, 0x7b, 0x6d, 0x16, 0x1a, 0x31, 0x39, 0x89, 0xb7, 0x52, 0x81, 0x17, 0x7e, - 0xdb, 0x07, 0xc8, 0xe7, 0x92, 0xf5, 0x62, 0x82, 0x5f, 0x8a, 0x74, 0x62, 0x8a, 0xf5, 0x6b, 0x57, - 0xd7, 0xc9, 0xf9, 0x16, 0xdf, 0xdb, 0x25, 0xc7, 0xbe, 0xee, 0x92, 0xce, 0xe2, 0x3d, 0xd6, 0x93, - 0x27, 0xa0, 0xc2, 0xce, 0xe7, 0xe5, 0xc6, 0x49, 0x72, 0xfb, 0x0d, 0x19, 0x8e, 0x68, 0xb4, 0x3f, - 0xa2, 0xd1, 0xc1, 0x88, 0x92, 0x57, 0x15, 0x25, 0x1f, 0x2a, 0x4a, 0x3e, 0x55, 0x94, 0x0c, 0x2b, - 0x4a, 0xbe, 0x57, 0x94, 0xfc, 0xac, 0x68, 0x74, 0x50, 0x51, 0xf2, 0x76, 0x4c, 0xa3, 0xbd, 0x31, - 0x25, 0xc3, 0x31, 0x8d, 0xf6, 0xc7, 0x34, 0x7a, 0xbc, 0x9e, 0xa1, 0x7d, 0x9a, 0xf1, 0x12, 0x07, - 0x01, 0x9c, 0x93, 0xbc, 0xf0, 0xa2, 0x2e, 0x52, 0x74, 0x39, 0xb3, 0x0e, 0x4b, 0xdd, 0x07, 0xc7, - 0x0e, 0xb1, 0xb0, 0x49, 0x86, 0x02, 0xb6, 0xc2, 0x2c, 0x34, 0x7f, 0x7e, 0x96, 0xe4, 0x44, 0x9d, - 0x9c, 0x4b, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x84, 0x8c, 0xf8, 0x3a, 0x50, 0x03, 0x00, 0x00, + // 507 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x93, 0xbf, 0x6b, 0x14, 0x41, + 0x14, 0xc7, 0x77, 0x4e, 0x11, 0xb2, 0x95, 0x1c, 0x08, 0xc9, 0x79, 0x8e, 0xc7, 0x55, 0x22, 0xce, + 0x0e, 0x46, 0xc4, 0x1f, 0x85, 0xe0, 0x0f, 0x02, 0x36, 0x46, 0x22, 0x58, 0xd8, 0x9c, 0xb3, 0x73, + 0x6f, 0x37, 0xa3, 0xb7, 0x33, 0xe3, 0xbc, 0xd9, 0x35, 0x41, 0x04, 0x49, 0x67, 0x27, 0xf8, 0x4f, + 0xe4, 0x1f, 0xb0, 0x4a, 0x93, 0x4e, 0x2b, 0x39, 0xb4, 0x49, 0xe9, 0xed, 0x59, 0x58, 0x06, 0xfc, + 0x07, 0xe4, 0xe6, 0x2e, 0x90, 0x53, 0x4f, 0xb0, 0x7b, 0xc3, 0xe7, 0x7d, 0x1f, 0xdf, 0xf7, 0xf8, + 0x4e, 0x7c, 0xb9, 0x02, 0x4c, 0x94, 0xe1, 0x28, 0x37, 0xa1, 0x10, 0x5c, 0x67, 0x55, 0x0f, 0xc1, + 0x55, 0x4a, 0x02, 0xb7, 0x65, 0x3a, 0x50, 0xb2, 0x27, 0x4b, 0xf4, 0xa6, 0xe8, 0x09, 0xab, 0x12, + 0xeb, 0x8c, 0x37, 0xcd, 0x95, 0xa9, 0x24, 0x99, 0x4a, 0x92, 0x63, 0x92, 0x16, 0xcb, 0x95, 0xdf, + 0x2c, 0xd3, 0x44, 0x9a, 0x82, 0xe7, 0x26, 0x37, 0x3c, 0x28, 0xd2, 0x32, 0x0b, 0xaf, 0xf0, 0x08, + 0xd5, 0x74, 0x52, 0xab, 0x9d, 0x1b, 0x93, 0x0f, 0x80, 0x0b, 0xab, 0xb8, 0xd0, 0xda, 0x78, 0xe1, + 0x95, 0xd1, 0x38, 0xa3, 0x67, 0xe7, 0xad, 0x19, 0x7b, 0x1c, 0xae, 0xcc, 0x43, 0xbf, 0x6d, 0xe1, + 0x08, 0xb5, 0xe7, 0x51, 0x25, 0x06, 0xaa, 0x2f, 0x3c, 0xcc, 0x68, 0xf7, 0x37, 0x0a, 0x08, 0xba, + 0x9a, 0x1f, 0xde, 0x5d, 0x8d, 0xdb, 0x6b, 0xc6, 0x49, 0xb8, 0x07, 0x03, 0xf0, 0xf0, 0x60, 0xed, + 0xf1, 0xa3, 0xe9, 0x7e, 0x1b, 0xf0, 0xa2, 0x04, 0xf4, 0xcd, 0x66, 0x7c, 0x52, 0x8b, 0x02, 0x96, + 0x49, 0x87, 0x5c, 0x58, 0xda, 0x08, 0x75, 0xf7, 0x7c, 0x7c, 0x6e, 0x81, 0x06, 0xad, 0xd1, 0x08, + 0xab, 0x3f, 0x1b, 0xf1, 0xd2, 0xdd, 0x70, 0xcb, 0xdb, 0x0f, 0xef, 0x37, 0x3f, 0x34, 0xe2, 0x33, + 0x7f, 0xed, 0x6f, 0x5e, 0x4b, 0x16, 0xde, 0x37, 0xf9, 0x97, 0xab, 0xd6, 0xf5, 0xff, 0x17, 0x4e, + 0xad, 0x75, 0x77, 0x49, 0xfd, 0x71, 0xf9, 0x69, 0x05, 0xc8, 0x94, 0x61, 0x4a, 0x67, 0x4e, 0xa0, + 0x77, 0xa5, 0xf4, 0xa5, 0x03, 0xf6, 0xd2, 0x29, 0x0f, 0x97, 0x3a, 0xd9, 0xd5, 0x2d, 0xc9, 0x50, + 0x79, 0x60, 0x85, 0xd0, 0x22, 0x87, 0x02, 0xb4, 0x67, 0xa9, 0x40, 0x25, 0x59, 0x89, 0xe0, 0x16, + 0x34, 0xa0, 0x17, 0xba, 0x2f, 0x5c, 0x3f, 0xf4, 0xec, 0x7c, 0xfd, 0xfe, 0xbe, 0x71, 0xab, 0x7b, + 0x63, 0x16, 0x2c, 0x3e, 0x39, 0x1b, 0x5a, 0x21, 0x01, 0x39, 0x6e, 0xa3, 0x87, 0x62, 0x2e, 0x7d, + 0xaf, 0x26, 0xf8, 0x35, 0xcf, 0x26, 0xc6, 0x59, 0x3f, 0x38, 0xbf, 0x49, 0x2e, 0xb6, 0x92, 0xfd, + 0x3d, 0x72, 0xe2, 0xcb, 0x1e, 0xe9, 0x2c, 0xde, 0x75, 0x3d, 0x7d, 0x06, 0xd2, 0xef, 0x7c, 0x5e, + 0x6e, 0x9c, 0x26, 0x77, 0xde, 0x92, 0xe1, 0x88, 0x46, 0x07, 0x23, 0x1a, 0x1d, 0x8e, 0x28, 0x79, + 0x53, 0x53, 0xb2, 0x5b, 0x53, 0xf2, 0xa9, 0xa6, 0x64, 0x58, 0x53, 0xf2, 0xad, 0xa6, 0xe4, 0x47, + 0x4d, 0xa3, 0xc3, 0x9a, 0x92, 0x77, 0x63, 0x1a, 0xed, 0x8f, 0x29, 0x19, 0x8e, 0x69, 0x74, 0x30, + 0xa6, 0xd1, 0x93, 0xf5, 0xdc, 0xd8, 0xe7, 0x79, 0x52, 0x99, 0x81, 0x07, 0xe7, 0x44, 0x52, 0x22, + 0x0f, 0x45, 0x66, 0x5c, 0xc1, 0xac, 0x33, 0x95, 0xea, 0x83, 0x63, 0x47, 0x98, 0xdb, 0x34, 0x37, + 0x1c, 0xb6, 0xfc, 0x2c, 0x58, 0x7f, 0x7e, 0xa8, 0xf4, 0x54, 0x48, 0xd7, 0x95, 0x5f, 0x01, 0x00, + 0x00, 0xff, 0xff, 0xfe, 0xfc, 0x5d, 0xd2, 0x74, 0x03, 0x00, 0x00, } func (this *ForceDeleteNFVServiceRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/nfv_service/public_custom_data_api.pb.go b/pbgo/extschema/schema/nfv_service/public_custom_data_api.pb.go index e0be7bc5b..962ac96cb 100644 --- a/pbgo/extschema/schema/nfv_service/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/nfv_service/public_custom_data_api.pb.go @@ -542,72 +542,73 @@ func init() { } var fileDescriptor_3e07e1351eaf318f = []byte{ - // 1032 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xbf, 0x6f, 0xdb, 0xc6, - 0x17, 0xd7, 0x51, 0xb2, 0x25, 0x9f, 0xbf, 0xb6, 0x99, 0x8b, 0x93, 0x2f, 0xad, 0xba, 0x84, 0x21, - 0x20, 0x85, 0x63, 0x54, 0x64, 0xe1, 0xa0, 0x69, 0x1a, 0xa0, 0x83, 0x2c, 0x13, 0xb5, 0x60, 0x47, - 0x32, 0x28, 0x3a, 0x69, 0xb2, 0x10, 0x27, 0xea, 0xa4, 0xb0, 0x16, 0x79, 0x2c, 0x79, 0x52, 0x23, - 0x14, 0x01, 0x8a, 0x0c, 0x05, 0xba, 0x15, 0xed, 0xd2, 0xb1, 0xdd, 0xfa, 0x27, 0x14, 0xcd, 0xe2, - 0xad, 0x99, 0x0a, 0xa3, 0x5d, 0xb2, 0xa5, 0x96, 0x3b, 0x34, 0x9b, 0xff, 0x84, 0xe2, 0x8e, 0xa4, - 0x2d, 0x39, 0x09, 0xe2, 0xed, 0xee, 0x7d, 0x7e, 0xbc, 0x77, 0x8f, 0xc7, 0x7b, 0xf0, 0xe6, 0x80, - 0x44, 0x9a, 0x4b, 0xf5, 0xc8, 0x79, 0x48, 0x3c, 0xac, 0xfb, 0x9d, 0x81, 0x1d, 0x91, 0x70, 0xe0, - 0x3a, 0x44, 0x0f, 0xfa, 0xad, 0x9e, 0xeb, 0xd8, 0x4e, 0x3f, 0x62, 0xd4, 0xb3, 0xdb, 0x98, 0x61, - 0x1b, 0x07, 0xae, 0x16, 0x84, 0x94, 0x51, 0xb4, 0x14, 0xeb, 0xb4, 0x58, 0xa7, 0x8d, 0xe9, 0x8a, - 0xe5, 0xae, 0xcb, 0x1e, 0xf6, 0x5b, 0x9a, 0x43, 0x3d, 0xbd, 0x4b, 0xbb, 0x54, 0x17, 0x8a, 0x56, - 0xbf, 0x23, 0x76, 0x62, 0x23, 0x56, 0xb1, 0x53, 0x71, 0xb9, 0x4b, 0x69, 0xb7, 0x47, 0x74, 0x1c, - 0xb8, 0x3a, 0xf6, 0x7d, 0xca, 0x30, 0x73, 0xa9, 0x1f, 0x25, 0xe8, 0x3b, 0x93, 0xf5, 0xd1, 0x60, - 0x1c, 0x5c, 0x9a, 0x04, 0xd9, 0x30, 0x20, 0x29, 0xb4, 0x3c, 0x09, 0x0d, 0x70, 0xcf, 0x6d, 0x63, - 0x46, 0x12, 0xb4, 0x74, 0x0e, 0x25, 0x11, 0xf1, 0x07, 0x93, 0xe6, 0xa5, 0x97, 0x12, 0x9c, 0xbf, - 0x43, 0x58, 0xe8, 0x3a, 0x91, 0x49, 0xbe, 0xe8, 0x93, 0x88, 0xa1, 0x65, 0x38, 0xe3, 0x63, 0x8f, - 0x44, 0x01, 0x76, 0x88, 0x02, 0x56, 0xc0, 0xea, 0x8c, 0x79, 0x16, 0x40, 0x57, 0xe1, 0x74, 0xc7, - 0xed, 0x31, 0x12, 0x2a, 0x92, 0x80, 0x92, 0x1d, 0xaa, 0xc0, 0x42, 0x37, 0xa4, 0xfd, 0xc0, 0x6e, - 0x0d, 0x95, 0xec, 0x4a, 0x76, 0x75, 0x7e, 0xfd, 0x3d, 0xed, 0x8d, 0xdd, 0xd3, 0xe2, 0x94, 0x3b, - 0xb8, 0x45, 0x7a, 0x66, 0x5e, 0xe8, 0x36, 0x86, 0xa8, 0x07, 0xe7, 0x3b, 0x2e, 0xe9, 0xb5, 0xed, - 0x88, 0xf4, 0x88, 0xc3, 0x68, 0xa8, 0xe4, 0x84, 0xd1, 0xb5, 0xb7, 0x1a, 0x59, 0xc3, 0x80, 0x6c, - 0xa8, 0xbf, 0xbd, 0x3c, 0xc8, 0x4e, 0x7d, 0x0f, 0x24, 0xb9, 0x90, 0xae, 0x0a, 0x20, 0x5d, 0x29, - 0xc0, 0x9c, 0x13, 0xe6, 0xcd, 0xc4, 0x1b, 0x5d, 0x87, 0x30, 0x62, 0x38, 0x64, 0x36, 0x73, 0x3d, - 0xa2, 0x4c, 0xf1, 0xc3, 0x6c, 0x40, 0x41, 0x0f, 0xb3, 0x3f, 0xe6, 0x80, 0x39, 0x23, 0x50, 0xcb, - 0xf5, 0x08, 0xba, 0x06, 0x0b, 0xc4, 0x6f, 0xc7, 0xc4, 0xe9, 0x57, 0x88, 0x79, 0xe2, 0xb7, 0x05, - 0x4d, 0x85, 0xb9, 0x88, 0x91, 0x40, 0xc9, 0x4f, 0x50, 0x7e, 0xca, 0x01, 0x53, 0xc4, 0x4b, 0x3d, - 0xb8, 0x70, 0xda, 0xea, 0x28, 0xa0, 0x7e, 0x44, 0xd0, 0xc7, 0x30, 0xc7, 0xaf, 0x9c, 0x02, 0x56, - 0xb2, 0xab, 0xb3, 0x17, 0x38, 0xe8, 0x26, 0x66, 0xd8, 0x14, 0x92, 0xd3, 0x6c, 0xd2, 0x44, 0xb6, - 0x13, 0x29, 0xcd, 0x76, 0x00, 0xd2, 0x2f, 0xcb, 0xbb, 0xc3, 0x85, 0x68, 0x13, 0x66, 0xf7, 0xc9, - 0x30, 0x49, 0xb6, 0x7e, 0xa1, 0xae, 0x72, 0x9d, 0xb6, 0x4d, 0x86, 0x86, 0xcf, 0xc2, 0xa1, 0xc9, - 0xe5, 0xe8, 0x03, 0x38, 0x35, 0xc0, 0xbd, 0x3e, 0x51, 0x24, 0xe1, 0x53, 0x3c, 0xe7, 0x13, 0x6b, - 0xef, 0x72, 0x86, 0x19, 0x13, 0x8b, 0x37, 0x61, 0x21, 0xb5, 0x40, 0x72, 0x5a, 0x03, 0xbf, 0x3c, - 0xc2, 0x6f, 0xf1, 0xcc, 0x8f, 0xc7, 0xe2, 0xcd, 0x6d, 0xe9, 0x16, 0x28, 0x7d, 0x03, 0x20, 0x3c, - 0x3b, 0x37, 0x6f, 0x16, 0xbf, 0xfc, 0x42, 0x7b, 0xd1, 0x5b, 0x61, 0x0a, 0x09, 0xfa, 0x24, 0xe9, - 0x73, 0x5c, 0xf2, 0xf5, 0x0b, 0x1f, 0x3d, 0xee, 0xf5, 0xda, 0x0b, 0x29, 0x2d, 0x84, 0x03, 0xe8, - 0xff, 0xf0, 0xb2, 0xf5, 0x99, 0x6d, 0x6d, 0x99, 0x8d, 0xbd, 0x4f, 0xb7, 0x76, 0xf7, 0x2c, 0x7b, - 0xe3, 0xbe, 0x65, 0x34, 0xe5, 0x0c, 0xba, 0x0c, 0x17, 0xaa, 0x8d, 0x7a, 0xdd, 0xa8, 0x5a, 0xb5, - 0x46, 0xdd, 0x36, 0x2b, 0x96, 0x21, 0x03, 0xb4, 0x04, 0xaf, 0x4c, 0xb2, 0x77, 0x2b, 0xd5, 0x6d, - 0xc3, 0x6a, 0xca, 0x12, 0x37, 0x32, 0x5f, 0x63, 0x94, 0xe5, 0x1a, 0xf3, 0xb5, 0x9a, 0x29, 0x91, - 0x63, 0x77, 0xcf, 0xde, 0xb3, 0x6a, 0x3b, 0xb5, 0x07, 0x15, 0x9e, 0x48, 0x9e, 0x46, 0x97, 0xe0, - 0xdc, 0x66, 0xad, 0xb9, 0x6d, 0x9b, 0x46, 0x65, 0xd3, 0x6e, 0xec, 0x36, 0xe5, 0x3c, 0x42, 0x70, - 0x5e, 0x84, 0xee, 0x99, 0x35, 0xcb, 0x10, 0xb1, 0x02, 0xd7, 0x9e, 0xd1, 0xe2, 0x5c, 0x33, 0x68, - 0x11, 0xca, 0x63, 0xc4, 0x38, 0x0a, 0x79, 0xb4, 0x6e, 0x58, 0xf7, 0x1a, 0xe6, 0xb6, 0x5d, 0xab, - 0x27, 0xd1, 0x59, 0x74, 0x05, 0x5e, 0x4a, 0xa3, 0x8d, 0xd3, 0x72, 0xff, 0x87, 0xae, 0x42, 0x34, - 0x46, 0x4e, 0x6b, 0x9d, 0xe3, 0xe7, 0x1b, 0xa7, 0xa7, 0xc0, 0x3c, 0x5a, 0x80, 0xb3, 0x5b, 0x46, - 0x65, 0xc7, 0xda, 0x6a, 0x56, 0x1b, 0xa6, 0x21, 0x2f, 0xac, 0xdd, 0x87, 0xb3, 0x63, 0x6f, 0x02, - 0x2a, 0xc0, 0x5c, 0xb3, 0x66, 0x19, 0x72, 0x06, 0xcd, 0xc2, 0x7c, 0xd3, 0x30, 0xef, 0xd6, 0xaa, - 0xbc, 0x95, 0x8b, 0x50, 0x4e, 0x36, 0x76, 0xad, 0xde, 0xb4, 0x2a, 0xf5, 0xaa, 0x21, 0x4b, 0xe8, - 0x5d, 0xb8, 0x74, 0x3e, 0x6a, 0x6f, 0x35, 0x9a, 0x56, 0xbd, 0x72, 0xc7, 0x90, 0xb3, 0xeb, 0x3f, - 0x4b, 0x70, 0xae, 0x2a, 0x9e, 0x77, 0xfe, 0x45, 0x2b, 0xbb, 0x35, 0xf4, 0x02, 0xc0, 0x7c, 0xf2, - 0x27, 0xa2, 0xb7, 0xdf, 0x85, 0xf4, 0x61, 0x2c, 0xae, 0x5d, 0x84, 0x1a, 0xff, 0xd8, 0xa5, 0xc7, - 0xcf, 0x7e, 0x95, 0xc0, 0xe8, 0x77, 0xe5, 0xa3, 0x01, 0x89, 0xca, 0x2e, 0x2d, 0xfb, 0x84, 0x7d, - 0x49, 0xc3, 0xfd, 0x72, 0x48, 0x70, 0xfb, 0xfd, 0x95, 0xce, 0x87, 0x8f, 0x9c, 0x72, 0xe4, 0x32, - 0x52, 0xf6, 0xb0, 0x8f, 0xbb, 0xc4, 0x23, 0x3e, 0x2b, 0xb7, 0x70, 0xe4, 0x3a, 0x65, 0x8f, 0xfa, - 0x2e, 0xa3, 0xe1, 0x93, 0xbf, 0xfe, 0xf9, 0x41, 0xba, 0x55, 0xba, 0x91, 0xcc, 0x27, 0xfd, 0xf4, - 0x01, 0x8e, 0xf4, 0xaf, 0x4e, 0xd7, 0x8f, 0xc7, 0x27, 0x59, 0xa4, 0x7b, 0x71, 0x0d, 0xb7, 0xc1, - 0x5a, 0x51, 0x3b, 0x78, 0x0a, 0xb2, 0x7f, 0x3e, 0x05, 0x2b, 0x6f, 0xae, 0xb8, 0xd1, 0xfa, 0x9c, - 0x38, 0xec, 0xc9, 0x1f, 0x8a, 0xa4, 0x80, 0x8d, 0x6f, 0xc1, 0xe1, 0x91, 0x9a, 0x79, 0x7e, 0xa4, - 0x66, 0x4e, 0x8e, 0x54, 0xf0, 0xf5, 0x48, 0x05, 0xbf, 0x8c, 0x54, 0xf0, 0x6c, 0xa4, 0x82, 0xc3, - 0x91, 0x0a, 0xfe, 0x1e, 0xa9, 0xe0, 0xdf, 0x91, 0x9a, 0x39, 0x19, 0xa9, 0xe0, 0xbb, 0x63, 0x35, - 0x73, 0x70, 0xac, 0x82, 0xc3, 0x63, 0x35, 0xf3, 0xfc, 0x58, 0xcd, 0x3c, 0x68, 0x74, 0x69, 0xb0, - 0xdf, 0xd5, 0x06, 0x94, 0x8f, 0x81, 0x10, 0x6b, 0xfd, 0x48, 0x17, 0x8b, 0x0e, 0x0d, 0xbd, 0x72, - 0x10, 0xd2, 0x81, 0xdb, 0x26, 0x61, 0x39, 0x85, 0xf5, 0xa0, 0xd5, 0xa5, 0x3a, 0x79, 0xc4, 0x92, - 0xa1, 0xf4, 0xea, 0x44, 0x6e, 0x4d, 0x8b, 0xc9, 0x74, 0xe3, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x88, 0x7d, 0xa9, 0x2d, 0xb5, 0x07, 0x00, 0x00, + // 1044 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xf7, 0xac, 0x9d, 0xd8, 0x99, 0x7c, 0x93, 0x6c, 0xa7, 0x3f, 0xbe, 0x1b, 0x13, 0x56, 0x91, + 0xa5, 0xa2, 0x34, 0xc2, 0xbb, 0x28, 0x15, 0x55, 0xa9, 0xc4, 0xc1, 0x71, 0x56, 0xc4, 0x4a, 0x6a, + 0x47, 0xeb, 0x4d, 0x4b, 0x7b, 0x60, 0x35, 0x5e, 0x8f, 0xdd, 0x25, 0xde, 0x9d, 0x65, 0x77, 0x6c, + 0x6a, 0x21, 0x24, 0xd4, 0x03, 0x88, 0x1b, 0x82, 0x0b, 0x47, 0x0e, 0x1c, 0xf8, 0x13, 0x10, 0xbd, + 0xe4, 0x46, 0xb9, 0xa0, 0x08, 0x2e, 0xbd, 0x41, 0x1c, 0x0e, 0xf4, 0x96, 0x3f, 0x01, 0xcd, 0xec, + 0x6e, 0x62, 0xa7, 0x8d, 0x9a, 0xdb, 0xcc, 0xfb, 0xfc, 0x78, 0x6f, 0xde, 0xce, 0xce, 0x83, 0xb7, + 0x06, 0x24, 0xd2, 0x5c, 0xaa, 0x47, 0xce, 0x23, 0xe2, 0x61, 0xdd, 0xef, 0x0c, 0xec, 0x88, 0x84, + 0x03, 0xd7, 0x21, 0x7a, 0xd0, 0x6f, 0xf5, 0x5c, 0xc7, 0x76, 0xfa, 0x11, 0xa3, 0x9e, 0xdd, 0xc6, + 0x0c, 0xdb, 0x38, 0x70, 0xb5, 0x20, 0xa4, 0x8c, 0xa2, 0xc5, 0x58, 0xa7, 0xc5, 0x3a, 0x6d, 0x4c, + 0x57, 0x2c, 0x77, 0x5d, 0xf6, 0xa8, 0xdf, 0xd2, 0x1c, 0xea, 0xe9, 0x5d, 0xda, 0xa5, 0xba, 0x50, + 0xb4, 0xfa, 0x1d, 0xb1, 0x13, 0x1b, 0xb1, 0x8a, 0x9d, 0x8a, 0x4b, 0x5d, 0x4a, 0xbb, 0x3d, 0xa2, + 0xe3, 0xc0, 0xd5, 0xb1, 0xef, 0x53, 0x86, 0x99, 0x4b, 0xfd, 0x28, 0x41, 0xdf, 0x98, 0xac, 0x8f, + 0x06, 0xe3, 0xe0, 0xe2, 0x24, 0xc8, 0x86, 0x01, 0x49, 0xa1, 0xa5, 0x49, 0x68, 0x80, 0x7b, 0x6e, + 0x1b, 0x33, 0x92, 0xa0, 0xa5, 0x33, 0x28, 0x89, 0x88, 0x3f, 0x98, 0x34, 0x2f, 0xbd, 0x90, 0xe0, + 0xfc, 0x5d, 0xc2, 0x42, 0xd7, 0x89, 0x4c, 0xf2, 0x49, 0x9f, 0x44, 0x0c, 0x2d, 0xc1, 0x19, 0x1f, + 0x7b, 0x24, 0x0a, 0xb0, 0x43, 0x14, 0xb0, 0x0c, 0x56, 0x66, 0xcc, 0xd3, 0x00, 0xba, 0x06, 0xa7, + 0x3b, 0x6e, 0x8f, 0x91, 0x50, 0x91, 0x04, 0x94, 0xec, 0x50, 0x05, 0x16, 0xba, 0x21, 0xed, 0x07, + 0x76, 0x6b, 0xa8, 0x64, 0x97, 0xb3, 0x2b, 0xf3, 0x6b, 0x6f, 0x69, 0xe7, 0x76, 0x4f, 0x8b, 0x53, + 0x6e, 0xe3, 0x16, 0xe9, 0x99, 0x79, 0xa1, 0x5b, 0x1f, 0xa2, 0x1e, 0x9c, 0xef, 0xb8, 0xa4, 0xd7, + 0xb6, 0x23, 0xd2, 0x23, 0x0e, 0xa3, 0xa1, 0x92, 0x13, 0x46, 0xd7, 0x5f, 0x6b, 0x64, 0x0d, 0x03, + 0xb2, 0xae, 0xfe, 0xf2, 0x62, 0x3f, 0x3b, 0xf5, 0x2d, 0x90, 0xe4, 0x42, 0xba, 0x2a, 0x80, 0x74, + 0xa5, 0x00, 0x73, 0x4e, 0x98, 0x37, 0x13, 0x6f, 0x74, 0x03, 0xc2, 0x88, 0xe1, 0x90, 0xd9, 0xcc, + 0xf5, 0x88, 0x32, 0xc5, 0x0f, 0xb3, 0x0e, 0x05, 0x3d, 0xcc, 0x7e, 0x9f, 0x03, 0xe6, 0x8c, 0x40, + 0x2d, 0xd7, 0x23, 0xe8, 0x3a, 0x2c, 0x10, 0xbf, 0x1d, 0x13, 0xa7, 0x5f, 0x22, 0xe6, 0x89, 0xdf, + 0x16, 0x34, 0x15, 0xe6, 0x22, 0x46, 0x02, 0x25, 0x3f, 0x41, 0xf9, 0x21, 0x07, 0x4c, 0x11, 0x2f, + 0xf5, 0xe0, 0xc2, 0x49, 0xab, 0xa3, 0x80, 0xfa, 0x11, 0x41, 0xef, 0xc1, 0x1c, 0xbf, 0x72, 0x0a, + 0x58, 0xce, 0xae, 0xcc, 0x5e, 0xe0, 0xa0, 0x1b, 0x98, 0x61, 0x53, 0x48, 0x4e, 0xb2, 0x49, 0x13, + 0xd9, 0x8e, 0xa5, 0x34, 0xdb, 0x3e, 0x48, 0xbf, 0x2c, 0xef, 0x0e, 0x17, 0xa2, 0x0d, 0x98, 0xdd, + 0x23, 0xc3, 0x24, 0xd9, 0xda, 0x85, 0xba, 0xca, 0x75, 0xda, 0x16, 0x19, 0x1a, 0x3e, 0x0b, 0x87, + 0x26, 0x97, 0xa3, 0x77, 0xe0, 0xd4, 0x00, 0xf7, 0xfa, 0x44, 0x91, 0x84, 0x4f, 0xf1, 0x8c, 0x4f, + 0xac, 0xbd, 0xc7, 0x19, 0x66, 0x4c, 0x2c, 0xde, 0x82, 0x85, 0xd4, 0x02, 0xc9, 0x69, 0x0d, 0xfc, + 0xf2, 0x08, 0xbf, 0x2b, 0xa7, 0x7e, 0x3c, 0x16, 0x6f, 0xee, 0x48, 0xb7, 0x41, 0xe9, 0x4b, 0x00, + 0xe1, 0xe9, 0xb9, 0x79, 0xb3, 0xf8, 0xe5, 0x17, 0xda, 0x8b, 0xde, 0x0a, 0x53, 0x48, 0xd0, 0xfb, + 0x49, 0x9f, 0xe3, 0x92, 0x6f, 0x5c, 0xf8, 0xe8, 0x71, 0xaf, 0x57, 0xff, 0x92, 0xd2, 0x42, 0x38, + 0x80, 0xfe, 0x0f, 0x2f, 0x5b, 0x1f, 0xda, 0xd6, 0xa6, 0xd9, 0xd8, 0xfd, 0x60, 0x73, 0x67, 0xd7, + 0xb2, 0xd7, 0x1f, 0x58, 0x46, 0x53, 0xce, 0xa0, 0xcb, 0x70, 0xa1, 0xda, 0xa8, 0xd7, 0x8d, 0xaa, + 0x55, 0x6b, 0xd4, 0x6d, 0xb3, 0x62, 0x19, 0x32, 0x40, 0x8b, 0xf0, 0xea, 0x24, 0x7b, 0xa7, 0x52, + 0xdd, 0x32, 0xac, 0xa6, 0x2c, 0x71, 0x23, 0xf3, 0x15, 0x46, 0x59, 0xae, 0x31, 0x5f, 0xa9, 0x99, + 0x12, 0x39, 0x76, 0x76, 0xed, 0x5d, 0xab, 0xb6, 0x5d, 0x7b, 0x58, 0xe1, 0x89, 0xe4, 0x69, 0x74, + 0x09, 0xce, 0x6d, 0xd4, 0x9a, 0x5b, 0xb6, 0x69, 0x54, 0x36, 0xec, 0xc6, 0x4e, 0x53, 0xce, 0x23, + 0x04, 0xe7, 0x45, 0xe8, 0xbe, 0x59, 0xb3, 0x0c, 0x11, 0x2b, 0x70, 0xed, 0x29, 0x2d, 0xce, 0x35, + 0x83, 0xae, 0x40, 0x79, 0x8c, 0x18, 0x47, 0x21, 0x8f, 0xd6, 0x0d, 0xeb, 0x7e, 0xc3, 0xdc, 0xb2, + 0x6b, 0xf5, 0x24, 0x3a, 0x8b, 0xae, 0xc2, 0x4b, 0x69, 0xb4, 0x71, 0x52, 0xee, 0xff, 0xd0, 0x35, + 0x88, 0xc6, 0xc8, 0x69, 0xad, 0x73, 0xfc, 0x7c, 0xe3, 0xf4, 0x14, 0x98, 0x47, 0x0b, 0x70, 0x76, + 0xd3, 0xa8, 0x6c, 0x5b, 0x9b, 0xcd, 0x6a, 0xc3, 0x34, 0xe4, 0x85, 0xd5, 0x07, 0x70, 0x76, 0xec, + 0x4d, 0x40, 0x05, 0x98, 0x6b, 0xd6, 0x2c, 0x43, 0xce, 0xa0, 0x59, 0x98, 0x6f, 0x1a, 0xe6, 0xbd, + 0x5a, 0x95, 0xb7, 0xf2, 0x0a, 0x94, 0x93, 0x8d, 0x5d, 0xab, 0x37, 0xad, 0x4a, 0xbd, 0x6a, 0xc8, + 0x12, 0x7a, 0x13, 0x2e, 0x9e, 0x8d, 0xda, 0x9b, 0x8d, 0xa6, 0x55, 0xaf, 0xdc, 0x35, 0xe4, 0xec, + 0xda, 0x6f, 0x12, 0x9c, 0xab, 0x8a, 0xe7, 0x9d, 0x7f, 0xd1, 0xca, 0x4e, 0x0d, 0x7d, 0x25, 0xc1, + 0x7c, 0xf2, 0x27, 0xa2, 0xd7, 0xdf, 0x85, 0xf4, 0x61, 0x2c, 0xae, 0x5e, 0x84, 0x1a, 0xff, 0xd8, + 0xa5, 0x1f, 0xc1, 0xb3, 0x9f, 0x25, 0x30, 0xfa, 0x55, 0xf9, 0x68, 0x40, 0xa2, 0xb2, 0x4b, 0xcb, + 0x3e, 0x61, 0x9f, 0xd2, 0x70, 0xaf, 0x1c, 0x12, 0xdc, 0x7e, 0x7b, 0xb9, 0xf3, 0xee, 0x63, 0xa7, + 0x1c, 0xb9, 0x8c, 0x94, 0x3d, 0xec, 0xe3, 0x2e, 0xf1, 0x88, 0xcf, 0xca, 0x2d, 0x1c, 0xb9, 0x4e, + 0xd9, 0xa3, 0xbe, 0xcb, 0x68, 0x78, 0x0e, 0x27, 0x62, 0xd8, 0x6f, 0xe3, 0xb0, 0x9d, 0xd2, 0x9e, + 0xfc, 0xf9, 0xcf, 0x77, 0xd2, 0xed, 0xd2, 0xcd, 0x64, 0x8e, 0xe9, 0x27, 0x0f, 0x75, 0xa4, 0x7f, + 0x76, 0xb2, 0xfe, 0x7c, 0x7c, 0xe2, 0x45, 0xba, 0x17, 0xd7, 0x7a, 0x07, 0xac, 0x16, 0xb5, 0xfd, + 0xa7, 0x20, 0xfb, 0xc7, 0x53, 0xb0, 0x7c, 0xfe, 0xc9, 0x1a, 0xad, 0x8f, 0x89, 0xc3, 0x9e, 0xfc, + 0xae, 0x48, 0x0a, 0x58, 0xff, 0x1a, 0x1c, 0x1c, 0xaa, 0x99, 0xe7, 0x87, 0x6a, 0xe6, 0xf8, 0x50, + 0x05, 0x5f, 0x8c, 0x54, 0xf0, 0xd3, 0x48, 0x05, 0xcf, 0x46, 0x2a, 0x38, 0x18, 0xa9, 0xe0, 0xef, + 0x91, 0x0a, 0xfe, 0x1d, 0xa9, 0x99, 0xe3, 0x91, 0x0a, 0xbe, 0x39, 0x52, 0x33, 0xfb, 0x47, 0x2a, + 0x38, 0x38, 0x52, 0x33, 0xcf, 0x8f, 0xd4, 0xcc, 0xc3, 0x46, 0x97, 0x06, 0x7b, 0x5d, 0x6d, 0x40, + 0xf9, 0xb8, 0x08, 0xb1, 0xd6, 0x8f, 0x74, 0xb1, 0xe8, 0xd0, 0xd0, 0x2b, 0x07, 0x21, 0x1d, 0xb8, + 0x6d, 0x12, 0x96, 0x53, 0x58, 0x0f, 0x5a, 0x5d, 0xaa, 0x93, 0xc7, 0x2c, 0x19, 0x5e, 0x2f, 0x4f, + 0xee, 0xd6, 0xb4, 0x98, 0x60, 0x37, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xcb, 0x64, 0x75, 0x9b, + 0xdd, 0x07, 0x00, 0x00, } func (x MetricType) String() string { diff --git a/pbgo/extschema/schema/options.pb.go b/pbgo/extschema/schema/options.pb.go index b0d964137..729e9fe81 100644 --- a/pbgo/extschema/schema/options.pb.go +++ b/pbgo/extschema/schema/options.pb.go @@ -555,31 +555,26 @@ type MetricDef struct { // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // name of the metric Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Human readable description of the metric Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Describes what type of metric this is. Type MetricType `protobuf:"varint,3,opt,name=type,proto3,enum=ves.io.schema.MetricType" json:"type,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Label configuration to use Labels []string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Buckets to use for histogram Buckets []float64 `protobuf:"fixed64,5,rep,packed,name=buckets,proto3" json:"buckets,omitempty"` } @@ -1083,6 +1078,15 @@ var E_FieldAvailableIn = &proto.ExtensionDesc{ Filename: "ves.io/schema/options.proto", } +var E_RedactValue = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.FieldOptions)(nil), + ExtensionType: (*string)(nil), + Field: 2014, + Name: "ves.io.schema.redact_value", + Tag: "bytes,2014,opt,name=redact_value", + Filename: "ves.io/schema/options.proto", +} + var E_ServiceType = &proto.ExtensionDesc{ ExtendedType: (*descriptor.ServiceOptions)(nil), ExtensionType: (*ServiceType)(nil), @@ -1281,6 +1285,7 @@ func init() { proto.RegisterExtension(E_Internal) proto.RegisterExtension(E_Deprecated) proto.RegisterExtension(E_FieldAvailableIn) + proto.RegisterExtension(E_RedactValue) proto.RegisterExtension(E_ServiceType) proto.RegisterExtension(E_IsSdro) proto.RegisterExtension(E_ObjectType) @@ -1303,127 +1308,128 @@ func init() { func init() { proto.RegisterFile("ves.io/schema/options.proto", fileDescriptor_8562c0a0fb65343f) } var fileDescriptor_8562c0a0fb65343f = []byte{ - // 1915 bytes of a gzipped FileDescriptorProto + // 1933 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x98, 0x49, 0x6f, 0xe3, 0xc8, - 0x15, 0xc7, 0x45, 0xc9, 0x6d, 0x5b, 0xcf, 0xb2, 0xc5, 0xa6, 0x7b, 0x6c, 0xf5, 0x12, 0x8d, 0xdb, - 0x18, 0x64, 0x0c, 0x23, 0x2d, 0x03, 0x13, 0x04, 0x83, 0x30, 0xc0, 0xcc, 0xc8, 0x92, 0xec, 0x51, - 0x6c, 0x59, 0x1e, 0xca, 0x72, 0xd2, 0x49, 0x80, 0x02, 0x4d, 0x96, 0xe8, 0x8a, 0xa8, 0x2a, 0x0e, - 0x8b, 0xd2, 0xb4, 0x0e, 0x01, 0x72, 0x0d, 0x92, 0x43, 0x6e, 0xb9, 0x26, 0x39, 0xe5, 0x23, 0x64, - 0x43, 0x72, 0xcd, 0xb1, 0x67, 0x49, 0xd2, 0xd9, 0x80, 0xb4, 0xfb, 0x32, 0xd9, 0x3b, 0xdb, 0x3d, - 0x60, 0x15, 0x69, 0x2d, 0x76, 0x86, 0x9a, 0x93, 0x58, 0xcb, 0xff, 0x57, 0xaf, 0x1e, 0xdf, 0x7b, - 0x55, 0x14, 0xdc, 0x1d, 0x60, 0x5e, 0x22, 0x6c, 0x87, 0x5b, 0xe7, 0xb8, 0x67, 0xee, 0x30, 0x2f, - 0x20, 0x8c, 0xf2, 0x92, 0xe7, 0xb3, 0x80, 0x69, 0xcb, 0x72, 0xb0, 0x24, 0x07, 0xef, 0x3c, 0x70, - 0x48, 0x70, 0xde, 0x3f, 0x2b, 0x59, 0xac, 0xb7, 0xe3, 0x30, 0x87, 0xed, 0x88, 0x59, 0x67, 0xfd, - 0x8e, 0x68, 0x89, 0x86, 0x78, 0x92, 0xea, 0x3b, 0x1b, 0x0e, 0x63, 0x8e, 0x8b, 0x47, 0xb3, 0x6c, - 0xcc, 0x2d, 0x9f, 0x78, 0x01, 0xf3, 0xe5, 0x8c, 0xcd, 0xef, 0x28, 0x90, 0x39, 0x25, 0xa6, 0xa6, - 0xc1, 0x5c, 0x30, 0xf4, 0x70, 0x41, 0xd9, 0x50, 0xb6, 0xb2, 0x86, 0x78, 0xd6, 0x3e, 0x01, 0xd0, - 0x21, 0xd8, 0xb5, 0x91, 0x67, 0x06, 0xe7, 0x85, 0xb4, 0x18, 0xc9, 0x8a, 0x9e, 0x63, 0x33, 0x38, - 0xd7, 0x5e, 0x85, 0x45, 0x1f, 0x77, 0x90, 0x90, 0x65, 0x36, 0x94, 0xad, 0x95, 0x57, 0xee, 0x95, - 0x26, 0xac, 0x2d, 0x19, 0xb8, 0x83, 0x7d, 0x4c, 0x2d, 0x7c, 0x32, 0xf4, 0xb0, 0xb1, 0xe0, 0xe3, - 0x4e, 0xf8, 0xa0, 0xbd, 0x04, 0x2b, 0x0e, 0xa6, 0x68, 0x8c, 0x3d, 0xb7, 0xa1, 0x6c, 0x2d, 0x1a, - 0x39, 0x07, 0xd3, 0xbd, 0x18, 0xbf, 0xf9, 0x1a, 0xa4, 0x9b, 0xf4, 0x5a, 0xbb, 0x5e, 0x82, 0xcc, - 0x80, 0x98, 0x85, 0xf4, 0x46, 0x66, 0x6b, 0xe9, 0x15, 0x6d, 0x6a, 0xcd, 0x53, 0x62, 0x1a, 0xe1, - 0xf0, 0x66, 0x05, 0x72, 0x55, 0xec, 0x61, 0x6a, 0x63, 0x6a, 0x11, 0xcc, 0xb5, 0xfb, 0x90, 0x66, - 0xb4, 0xa0, 0x08, 0xd1, 0xcd, 0x29, 0x51, 0x93, 0x1a, 0x69, 0x46, 0x35, 0x15, 0x32, 0x1d, 0xe6, - 0x47, 0x3b, 0x0d, 0x1f, 0x37, 0x0d, 0xc8, 0x8f, 0x43, 0x5a, 0x38, 0xd0, 0x5e, 0x87, 0x9c, 0x3d, - 0xd6, 0x15, 0x11, 0xef, 0x4e, 0x11, 0xc7, 0x55, 0xc6, 0x84, 0x60, 0xf3, 0x18, 0x32, 0x07, 0x78, - 0x38, 0xe5, 0x5d, 0x65, 0xda, 0xbb, 0xdb, 0xd1, 0xc6, 0xd3, 0xc2, 0xb3, 0x6b, 0x53, 0xf8, 0x03, - 0x3c, 0x14, 0x3e, 0x15, 0x73, 0x36, 0x4b, 0x30, 0x77, 0x80, 0x87, 0x5c, 0xfb, 0x24, 0xcc, 0x75, - 0xf1, 0x30, 0x36, 0x49, 0xbb, 0xaa, 0x31, 0xc4, 0xf8, 0xe6, 0xf7, 0x15, 0xc8, 0x36, 0x70, 0xe0, - 0x13, 0xab, 0x8a, 0x3b, 0xa1, 0x8b, 0xa9, 0xd9, 0xbb, 0x74, 0x71, 0xf8, 0xac, 0x6d, 0xc0, 0x52, - 0x1c, 0x2a, 0x84, 0xd1, 0xc8, 0x23, 0xe3, 0x5d, 0xda, 0x83, 0xc8, 0x3e, 0xf9, 0xe6, 0x6f, 0x4f, - 0xad, 0x25, 0xe9, 0x23, 0x13, 0xb5, 0x35, 0x98, 0x77, 0xcd, 0x33, 0xec, 0xf2, 0xc2, 0xdc, 0x46, - 0x66, 0x2b, 0x6b, 0x44, 0x2d, 0xad, 0x00, 0x0b, 0x67, 0x7d, 0xab, 0x8b, 0x03, 0x5e, 0xb8, 0xb1, - 0x91, 0xd9, 0x52, 0x8c, 0xb8, 0xb9, 0x59, 0x84, 0xc5, 0x43, 0xe6, 0x88, 0x78, 0xb8, 0xce, 0xc4, - 0x4d, 0x04, 0xf9, 0x93, 0x73, 0x1f, 0x9b, 0xc1, 0x21, 0x1e, 0x60, 0xb7, 0x4e, 0x3b, 0x4c, 0xbb, - 0x0b, 0xd9, 0x9e, 0xf9, 0x08, 0x0d, 0x4c, 0xb7, 0x2f, 0xe7, 0x2a, 0xc6, 0x62, 0xcf, 0x7c, 0x74, - 0x1a, 0xb6, 0xc5, 0x20, 0xa1, 0xd1, 0x60, 0x3a, 0x1a, 0x24, 0x54, 0x0e, 0xc6, 0x0b, 0x64, 0xc6, - 0x16, 0xf8, 0x14, 0x2c, 0xd6, 0x68, 0xbf, 0x27, 0xc8, 0x53, 0xfe, 0x50, 0xae, 0xf8, 0x63, 0xbb, - 0x04, 0xcb, 0x13, 0xe1, 0xae, 0xe5, 0x61, 0x69, 0xaf, 0x69, 0x7c, 0xa1, 0x6c, 0x54, 0x91, 0x51, - 0xdb, 0x53, 0x53, 0x5a, 0x0e, 0x16, 0x77, 0xcb, 0x95, 0x03, 0xd1, 0x52, 0xb6, 0xf7, 0x61, 0x21, - 0x7a, 0x89, 0xe1, 0xcc, 0x63, 0xa3, 0xde, 0x28, 0x1b, 0x0f, 0xd1, 0x41, 0xed, 0xa1, 0x9a, 0xd2, - 0x6e, 0xc2, 0x72, 0xab, 0x56, 0x69, 0x1e, 0x55, 0xe3, 0x2e, 0x45, 0x2b, 0xc0, 0xad, 0x89, 0x2e, - 0xd4, 0x3e, 0xaa, 0xbf, 0xd5, 0xae, 0xa9, 0xe9, 0xed, 0xb7, 0x00, 0x46, 0xde, 0x0e, 0x59, 0xed, - 0xa3, 0xd6, 0x71, 0xad, 0x52, 0xdf, 0xab, 0xd7, 0xaa, 0x6a, 0x4a, 0xcb, 0xc2, 0x8d, 0xfd, 0x72, - 0x7b, 0xbf, 0xa6, 0x2a, 0xda, 0x12, 0x2c, 0x54, 0x9a, 0xed, 0xa3, 0x93, 0x9a, 0xa1, 0xa6, 0xb5, - 0x65, 0xc8, 0xbe, 0x59, 0x6f, 0x9d, 0x34, 0xf7, 0x8d, 0x72, 0x43, 0xcd, 0x84, 0x63, 0xad, 0x76, - 0x23, 0xb4, 0x41, 0x9d, 0xdb, 0xc6, 0xb0, 0xd4, 0xc2, 0xfe, 0x80, 0x44, 0x3b, 0x01, 0x98, 0xaf, - 0xb4, 0x5b, 0x27, 0xcd, 0x86, 0x9a, 0x0a, 0x65, 0xe5, 0xf6, 0x49, 0x13, 0x55, 0x8c, 0x76, 0x55, - 0x55, 0xb4, 0x5b, 0xa0, 0x5e, 0x36, 0xd1, 0x71, 0x7b, 0xf7, 0xb0, 0x5e, 0x51, 0xd3, 0xa1, 0xfd, - 0x52, 0x10, 0x77, 0x65, 0x34, 0x0d, 0x56, 0xe2, 0x2e, 0xa3, 0x7e, 0x5a, 0x3e, 0xa9, 0xa9, 0x73, - 0xba, 0x39, 0x99, 0x49, 0xda, 0x8b, 0x25, 0x59, 0xae, 0x4a, 0x71, 0xb9, 0x2a, 0x35, 0x30, 0xe7, - 0xa6, 0x83, 0x9b, 0xb2, 0x24, 0x16, 0x3e, 0x5c, 0xd8, 0x50, 0x3e, 0x56, 0xae, 0xe9, 0x6f, 0xc0, - 0x52, 0xcf, 0xf4, 0x38, 0x0a, 0x18, 0xea, 0x71, 0x27, 0x79, 0x85, 0x3f, 0x2d, 0xc8, 0x3c, 0x0c, - 0x45, 0x27, 0xac, 0xc1, 0x9d, 0x71, 0x02, 0x1f, 0x58, 0xc9, 0x84, 0xbf, 0x4c, 0x10, 0x5a, 0x03, - 0x4b, 0xaf, 0xcb, 0xac, 0x4c, 0x96, 0xfe, 0x59, 0x6e, 0x6f, 0xf5, 0x6a, 0xde, 0x72, 0x99, 0xb8, - 0xfa, 0x31, 0xac, 0x12, 0x1e, 0xee, 0x04, 0x59, 0x8c, 0x76, 0x88, 0x8d, 0x69, 0x40, 0x4c, 0x37, - 0x99, 0xfc, 0xd7, 0x05, 0x51, 0x60, 0x6f, 0x12, 0xde, 0xe0, 0x4e, 0x65, 0x4c, 0xaa, 0x13, 0xb8, - 0xef, 0xe0, 0x00, 0x71, 0x0f, 0x5b, 0x88, 0xb2, 0x00, 0x59, 0x61, 0x46, 0x61, 0xd9, 0xe6, 0x7d, - 0x0f, 0xfb, 0x1c, 0x07, 0xc9, 0xfc, 0xbf, 0x49, 0xfe, 0x3d, 0x07, 0x07, 0x2d, 0x0f, 0x5b, 0x47, - 0x2c, 0xa8, 0x08, 0x4e, 0xd8, 0x68, 0x45, 0x14, 0xbd, 0x06, 0xcb, 0x36, 0xe1, 0x9e, 0x6b, 0x0e, - 0x11, 0xf3, 0x6d, 0xec, 0x27, 0x63, 0xff, 0x2e, 0x7d, 0x99, 0x8b, 0x64, 0xcd, 0x50, 0xa5, 0x9b, - 0x70, 0xcf, 0xc1, 0x14, 0xfb, 0xa1, 0x99, 0x9e, 0x4f, 0x06, 0xe1, 0xaf, 0xe9, 0x11, 0xd4, 0xc3, - 0xc1, 0x39, 0xb3, 0x67, 0x70, 0xf3, 0x3f, 0x24, 0xf5, 0x76, 0x4c, 0x39, 0x96, 0x90, 0xb2, 0x47, - 0x1a, 0x12, 0xa1, 0x1f, 0x81, 0x46, 0x28, 0x0a, 0x8b, 0x00, 0xf7, 0x4c, 0x0b, 0x8b, 0x23, 0x6e, - 0x06, 0xf0, 0x73, 0x09, 0x56, 0x09, 0x3d, 0x8a, 0xa5, 0x61, 0xfe, 0x70, 0xfd, 0xf3, 0xa0, 0x52, - 0x86, 0xfa, 0x94, 0x9b, 0x1d, 0x8c, 0x6c, 0xec, 0xe2, 0x00, 0x27, 0xd3, 0xfe, 0x29, 0x7d, 0xba, - 0x42, 0x59, 0x5b, 0x08, 0xab, 0x42, 0xa7, 0x37, 0x61, 0xd5, 0x74, 0x5d, 0xf6, 0x0e, 0xb2, 0x98, - 0xcb, 0x28, 0x8a, 0xec, 0x4c, 0xc6, 0xfd, 0x4b, 0xe2, 0x54, 0x21, 0xae, 0x84, 0xda, 0xba, 0x30, - 0x53, 0xc4, 0x14, 0x45, 0x76, 0x58, 0x44, 0x99, 0xd7, 0xc3, 0x34, 0x8c, 0x81, 0xbe, 0x9d, 0x0c, - 0xfc, 0xb7, 0xdc, 0xed, 0x4d, 0x42, 0xab, 0x23, 0x6d, 0xc5, 0xef, 0xdb, 0x7a, 0x17, 0xd4, 0xf1, - 0x24, 0x44, 0x33, 0x85, 0xd0, 0x7f, 0x64, 0xf0, 0x17, 0x3f, 0x22, 0xb7, 0x5b, 0x38, 0x30, 0xf2, - 0xf6, 0x64, 0x47, 0x18, 0x55, 0xd2, 0x1f, 0x36, 0xe1, 0xe6, 0x99, 0x3b, 0x83, 0x27, 0xfe, 0x2b, - 0x3d, 0x91, 0x13, 0xb2, 0xaa, 0x54, 0xe9, 0x4d, 0xb8, 0x35, 0x8a, 0xaa, 0xfe, 0x99, 0x4b, 0x2c, - 0xe9, 0x86, 0x7b, 0x57, 0x68, 0x7b, 0xc4, 0x9d, 0x2c, 0x48, 0x8b, 0x86, 0x76, 0x19, 0x4a, 0x42, - 0x29, 0x9c, 0xf0, 0x15, 0xb8, 0x3b, 0x0d, 0x1c, 0x8f, 0xd2, 0x8f, 0xe6, 0x46, 0x65, 0xa8, 0x30, - 0xc9, 0x1d, 0x8b, 0xd0, 0x57, 0x61, 0x81, 0x70, 0xe4, 0x75, 0xc3, 0x7b, 0xc4, 0x35, 0x24, 0xec, - 0xda, 0x31, 0xea, 0x71, 0x5e, 0x98, 0x38, 0x4f, 0xf8, 0x71, 0x17, 0x0f, 0xf5, 0x37, 0x20, 0x47, - 0x38, 0xe2, 0x5d, 0x3c, 0x44, 0x7d, 0x4a, 0xde, 0x4e, 0x52, 0xbf, 0x2b, 0xd5, 0x40, 0x78, 0xab, - 0x8b, 0x87, 0x6d, 0x4a, 0xde, 0x8e, 0x96, 0xe6, 0x33, 0x2c, 0xfd, 0xde, 0xe5, 0xd2, 0xa1, 0x58, - 0xdf, 0x85, 0xe5, 0xb8, 0x92, 0x8a, 0x6b, 0x4e, 0x92, 0xfc, 0xfd, 0xbc, 0x3c, 0x65, 0x65, 0x25, - 0x15, 0x43, 0xfa, 0x31, 0xcc, 0xf7, 0xc4, 0x61, 0x97, 0x24, 0xfe, 0x20, 0x2f, 0xc2, 0xa9, 0x70, - 0xed, 0xbd, 0xa4, 0x8a, 0x3b, 0x46, 0xc4, 0xd1, 0x3f, 0x03, 0xf3, 0xe2, 0x16, 0xcb, 0x92, 0x88, - 0xbf, 0x94, 0xe6, 0xdc, 0x08, 0x6f, 0xb1, 0x4c, 0x7f, 0x13, 0x54, 0xc2, 0x51, 0xa8, 0xe4, 0xd8, - 0x62, 0xd4, 0x36, 0xfd, 0x44, 0x77, 0xfc, 0x4a, 0xba, 0x63, 0x85, 0x70, 0x03, 0x77, 0x5a, 0xb1, - 0x4a, 0xff, 0x32, 0xdc, 0x11, 0x77, 0x21, 0xc4, 0xb1, 0x8b, 0xad, 0x80, 0xf9, 0x88, 0x9d, 0x7d, - 0x15, 0x5b, 0x01, 0xea, 0x12, 0x9a, 0xe8, 0xa3, 0x5f, 0x4b, 0xa3, 0xd6, 0x05, 0xa1, 0x15, 0x01, - 0x9a, 0x42, 0x7f, 0x40, 0xa8, 0xad, 0x7f, 0x0e, 0xb2, 0x84, 0x47, 0xc0, 0x24, 0xd6, 0x13, 0x69, - 0xdf, 0x22, 0xe1, 0x12, 0xa0, 0x1b, 0xf0, 0x02, 0xe1, 0xd1, 0x35, 0x7d, 0xe2, 0xbc, 0x49, 0x00, - 0xfd, 0x46, 0x82, 0x56, 0x09, 0x17, 0xdd, 0x13, 0xe7, 0xcd, 0x3e, 0xe4, 0x2f, 0xd3, 0x82, 0xe3, - 0x20, 0xc0, 0x7e, 0x12, 0xed, 0xb7, 0x91, 0xdb, 0x62, 0x59, 0x4b, 0xa8, 0x74, 0x1d, 0x16, 0x09, - 0x0d, 0xb0, 0x4f, 0x93, 0xed, 0xf9, 0x5d, 0xbc, 0xb1, 0x68, 0xbe, 0xfe, 0x1a, 0x80, 0x8d, 0x3d, - 0x1f, 0x5b, 0x66, 0x80, 0x13, 0x5d, 0xfc, 0x7b, 0xe9, 0xe2, 0x31, 0x85, 0x7e, 0x08, 0x9a, 0xf4, - 0x8a, 0x39, 0x30, 0x89, 0x1b, 0xd6, 0x0f, 0x44, 0x68, 0x12, 0xe7, 0x0f, 0x92, 0xa3, 0x0a, 0x65, - 0x39, 0x16, 0xd6, 0xa9, 0x8e, 0x20, 0xc7, 0xe5, 0x6d, 0x4b, 0x1c, 0x34, 0xd7, 0x14, 0xb0, 0xe8, - 0x32, 0x16, 0x93, 0x7e, 0xb8, 0x2e, 0xee, 0xdc, 0x77, 0xa6, 0x62, 0x7b, 0xec, 0xca, 0x66, 0x2c, - 0xf1, 0x51, 0x43, 0xff, 0xac, 0xcc, 0x58, 0xdb, 0x67, 0xc9, 0xec, 0x1f, 0xad, 0x5f, 0xe6, 0xac, - 0xed, 0x33, 0xbd, 0x0c, 0x4b, 0x51, 0x34, 0xce, 0x66, 0xda, 0x8f, 0xd7, 0xa5, 0xb3, 0xa4, 0x48, - 0xac, 0xfe, 0x3a, 0xc0, 0xb9, 0xc9, 0x11, 0x0f, 0xcc, 0xa0, 0xcf, 0x93, 0x09, 0x3f, 0x91, 0x06, - 0x64, 0xcf, 0x4d, 0xde, 0x12, 0x92, 0xf0, 0x34, 0x8e, 0x6c, 0x90, 0x8c, 0x19, 0x4d, 0xf9, 0xa9, - 0x34, 0x45, 0x95, 0x5a, 0xc9, 0x12, 0x06, 0x35, 0x41, 0x1b, 0xbd, 0x4b, 0x14, 0x39, 0x2a, 0x99, - 0xf7, 0x33, 0xc9, 0xbb, 0x39, 0xd2, 0x46, 0x13, 0xf4, 0x53, 0x58, 0x9b, 0x3a, 0x41, 0x67, 0x86, - 0xfe, 0x5c, 0x42, 0x6f, 0x4d, 0x1c, 0xa2, 0x31, 0xb7, 0x01, 0xab, 0x71, 0xc1, 0x64, 0x14, 0xb3, - 0xce, 0xff, 0x2d, 0x9b, 0xcd, 0x70, 0x34, 0x46, 0x7e, 0xf7, 0x45, 0xb9, 0x6f, 0x59, 0x36, 0xc5, - 0x90, 0xac, 0x9d, 0x0f, 0xe1, 0xf6, 0x18, 0x86, 0x27, 0x05, 0xef, 0x04, 0xf4, 0x7b, 0x12, 0xba, - 0xc6, 0x2e, 0x71, 0x7c, 0x3c, 0x84, 0xf7, 0x61, 0x39, 0x4e, 0x2e, 0x84, 0x69, 0xbf, 0xa7, 0xdd, - 0xbf, 0x82, 0x0b, 0x3f, 0xa5, 0xc4, 0xb7, 0xd6, 0xd4, 0xc1, 0x94, 0x8b, 0x85, 0xe1, 0x04, 0xfd, - 0x00, 0xf2, 0x63, 0xef, 0x66, 0x56, 0xd4, 0xbb, 0x32, 0xb5, 0x56, 0x46, 0x52, 0x01, 0x33, 0x61, - 0xc5, 0x65, 0x4e, 0x54, 0xc0, 0x66, 0x65, 0xbd, 0x27, 0x0f, 0x8e, 0xf5, 0xa9, 0xe4, 0x8a, 0x3f, - 0x45, 0x8d, 0x9c, 0x1b, 0x3d, 0x89, 0x25, 0xde, 0x81, 0xb5, 0x40, 0x7c, 0x84, 0x22, 0x37, 0x7c, - 0x7f, 0x88, 0xd0, 0x0e, 0x9b, 0x79, 0xa9, 0xf7, 0xf3, 0xd7, 0x5e, 0x79, 0xa6, 0xbe, 0x6a, 0x8d, - 0xd5, 0x60, 0xb2, 0x43, 0x2c, 0xfc, 0x45, 0xc8, 0x7e, 0xac, 0xb5, 0x3e, 0xb8, 0x7e, 0x5b, 0xf1, - 0x07, 0x6e, 0x58, 0x1c, 0x23, 0xf2, 0xae, 0xb8, 0x21, 0x90, 0x5e, 0xaf, 0x1f, 0x88, 0xfb, 0x54, - 0xf1, 0x9a, 0xfb, 0x54, 0x78, 0x09, 0x89, 0xc9, 0xdf, 0x78, 0x59, 0xbc, 0xc7, 0x25, 0xc2, 0xeb, - 0xb1, 0x46, 0x3f, 0x84, 0xb1, 0x34, 0x89, 0xee, 0x3c, 0x89, 0xa0, 0x6f, 0xbe, 0x2c, 0x03, 0x77, - 0xa4, 0x94, 0xe3, 0x7a, 0x0b, 0x5e, 0x98, 0xca, 0xaf, 0x19, 0x89, 0xdf, 0x92, 0xc4, 0xd5, 0x89, - 0xec, 0x92, 0x53, 0x76, 0xbf, 0xf6, 0xf8, 0x69, 0x31, 0xf5, 0xe4, 0x69, 0x31, 0xf5, 0xfc, 0x69, - 0x51, 0xf9, 0xfa, 0x45, 0x51, 0xf9, 0xc1, 0x45, 0x51, 0xf9, 0xc5, 0x45, 0x51, 0x79, 0x7c, 0x51, - 0x54, 0x9e, 0x5c, 0x14, 0x95, 0x3f, 0x5e, 0x14, 0x95, 0x0f, 0x2f, 0x8a, 0xa9, 0xe7, 0x17, 0x45, - 0xe5, 0xdb, 0xcf, 0x8a, 0xa9, 0xc7, 0xcf, 0x8a, 0xa9, 0x27, 0xcf, 0x8a, 0xa9, 0x2f, 0x55, 0x1c, - 0xe6, 0x75, 0x9d, 0xd2, 0x80, 0xb9, 0x01, 0xf6, 0x7d, 0xb3, 0xd4, 0xe7, 0x3b, 0xe2, 0xa1, 0xc3, - 0xfc, 0xde, 0x03, 0xcf, 0x67, 0x03, 0x62, 0x63, 0xff, 0x41, 0x3c, 0xbc, 0xe3, 0x9d, 0x39, 0x6c, - 0x07, 0x3f, 0x0a, 0xa2, 0xbf, 0xf7, 0xe4, 0xcf, 0xd9, 0xbc, 0x30, 0xf9, 0xd3, 0xff, 0x0b, 0x00, - 0x00, 0xff, 0xff, 0x24, 0xcd, 0xfc, 0x64, 0xfd, 0x13, 0x00, 0x00, + 0x15, 0xc7, 0x45, 0xc9, 0x6d, 0x5b, 0xcf, 0xb2, 0x45, 0xd3, 0x3d, 0xb6, 0x7a, 0x89, 0xc6, 0x6d, + 0x0c, 0x32, 0x86, 0x91, 0x96, 0x81, 0x09, 0x82, 0x41, 0x18, 0x60, 0x66, 0x64, 0x49, 0xf6, 0x28, + 0xb6, 0x2c, 0x0f, 0x65, 0x39, 0xe9, 0x24, 0x40, 0x81, 0x26, 0x4b, 0x74, 0xc5, 0x54, 0x15, 0x87, + 0x45, 0x69, 0x5a, 0x87, 0x00, 0xb9, 0x06, 0xc9, 0x21, 0xb7, 0x5c, 0x93, 0x9c, 0xf2, 0x11, 0xb2, + 0x21, 0xb9, 0xe6, 0xd8, 0xb3, 0x24, 0xe9, 0xac, 0x48, 0xbb, 0x2f, 0x93, 0xbd, 0xb3, 0xdd, 0x03, + 0x56, 0x91, 0xd6, 0x62, 0xcf, 0x50, 0x7d, 0x32, 0x6b, 0xf9, 0xff, 0xea, 0xf1, 0xe9, 0xbd, 0x57, + 0x8f, 0x86, 0x3b, 0x7d, 0xcc, 0x4b, 0x84, 0x6d, 0x73, 0xeb, 0x0c, 0x77, 0xcd, 0x6d, 0xe6, 0x05, + 0x84, 0x51, 0x5e, 0xf2, 0x7c, 0x16, 0x30, 0x6d, 0x51, 0x2e, 0x96, 0xe4, 0xe2, 0xed, 0xfb, 0x0e, + 0x09, 0xce, 0x7a, 0xa7, 0x25, 0x8b, 0x75, 0xb7, 0x1d, 0xe6, 0xb0, 0x6d, 0xb1, 0xeb, 0xb4, 0xd7, + 0x11, 0x23, 0x31, 0x10, 0x4f, 0x52, 0x7d, 0x7b, 0xdd, 0x61, 0xcc, 0x71, 0xf1, 0x70, 0x97, 0x8d, + 0xb9, 0xe5, 0x13, 0x2f, 0x60, 0xbe, 0xdc, 0xb1, 0xf1, 0x1d, 0x05, 0x32, 0x27, 0xc4, 0xd4, 0x34, + 0x98, 0x09, 0x06, 0x1e, 0x2e, 0x28, 0xeb, 0xca, 0x66, 0xd6, 0x10, 0xcf, 0xda, 0x27, 0x00, 0x3a, + 0x04, 0xbb, 0x36, 0xf2, 0xcc, 0xe0, 0xac, 0x90, 0x16, 0x2b, 0x59, 0x31, 0x73, 0x64, 0x06, 0x67, + 0xda, 0xab, 0x30, 0xef, 0xe3, 0x0e, 0x12, 0xb2, 0xcc, 0xba, 0xb2, 0xb9, 0xf4, 0xca, 0xdd, 0xd2, + 0x98, 0xb5, 0x25, 0x03, 0x77, 0xb0, 0x8f, 0xa9, 0x85, 0x8f, 0x07, 0x1e, 0x36, 0xe6, 0x7c, 0xdc, + 0x09, 0x1f, 0xb4, 0x97, 0x60, 0xc9, 0xc1, 0x14, 0x8d, 0xb0, 0x67, 0xd6, 0x95, 0xcd, 0x79, 0x23, + 0xe7, 0x60, 0xba, 0x1b, 0xe3, 0x37, 0x5e, 0x83, 0x74, 0x93, 0x5e, 0x6b, 0xd7, 0x4b, 0x90, 0xe9, + 0x13, 0xb3, 0x90, 0x5e, 0xcf, 0x6c, 0x2e, 0xbc, 0xa2, 0x4d, 0x9c, 0x79, 0x42, 0x4c, 0x23, 0x5c, + 0xde, 0xa8, 0x40, 0xae, 0x8a, 0x3d, 0x4c, 0x6d, 0x4c, 0x2d, 0x82, 0xb9, 0x76, 0x0f, 0xd2, 0x8c, + 0x16, 0x14, 0x21, 0x5a, 0x9e, 0x10, 0x35, 0xa9, 0x91, 0x66, 0x54, 0x53, 0x21, 0xd3, 0x61, 0x7e, + 0xf4, 0xa6, 0xe1, 0xe3, 0x86, 0x01, 0xf9, 0x51, 0x48, 0x0b, 0x07, 0xda, 0xeb, 0x90, 0xb3, 0x47, + 0xa6, 0x22, 0xe2, 0x9d, 0x09, 0xe2, 0xa8, 0xca, 0x18, 0x13, 0x6c, 0x1c, 0x41, 0x66, 0x1f, 0x0f, + 0x26, 0xbc, 0xab, 0x4c, 0x7a, 0x77, 0x2b, 0x7a, 0xf1, 0xb4, 0xf0, 0xec, 0xea, 0x04, 0x7e, 0x1f, + 0x0f, 0x84, 0x4f, 0xc5, 0x9e, 0x8d, 0x12, 0xcc, 0xec, 0xe3, 0x01, 0xd7, 0x3e, 0x09, 0x33, 0xe7, + 0x78, 0x10, 0x9b, 0xa4, 0x5d, 0xd5, 0x18, 0x62, 0x7d, 0xe3, 0xfb, 0x0a, 0x64, 0x1b, 0x38, 0xf0, + 0x89, 0x55, 0xc5, 0x9d, 0xd0, 0xc5, 0xd4, 0xec, 0x5e, 0xba, 0x38, 0x7c, 0xd6, 0xd6, 0x61, 0x21, + 0x0e, 0x15, 0xc2, 0x68, 0xe4, 0x91, 0xd1, 0x29, 0xed, 0x7e, 0x64, 0x9f, 0xfc, 0xe5, 0x6f, 0x4d, + 0x9c, 0x25, 0xe9, 0x43, 0x13, 0xb5, 0x55, 0x98, 0x75, 0xcd, 0x53, 0xec, 0xf2, 0xc2, 0xcc, 0x7a, + 0x66, 0x33, 0x6b, 0x44, 0x23, 0xad, 0x00, 0x73, 0xa7, 0x3d, 0xeb, 0x1c, 0x07, 0xbc, 0x70, 0x63, + 0x3d, 0xb3, 0xa9, 0x18, 0xf1, 0x70, 0xa3, 0x08, 0xf3, 0x07, 0xcc, 0x11, 0xf1, 0x70, 0x9d, 0x89, + 0x1b, 0x08, 0xf2, 0xc7, 0x67, 0x3e, 0x36, 0x83, 0x03, 0xdc, 0xc7, 0x6e, 0x9d, 0x76, 0x98, 0x76, + 0x07, 0xb2, 0x5d, 0xf3, 0x21, 0xea, 0x9b, 0x6e, 0x4f, 0xee, 0x55, 0x8c, 0xf9, 0xae, 0xf9, 0xf0, + 0x24, 0x1c, 0x8b, 0x45, 0x42, 0xa3, 0xc5, 0x74, 0xb4, 0x48, 0xa8, 0x5c, 0x8c, 0x0f, 0xc8, 0x8c, + 0x1c, 0xf0, 0x29, 0x98, 0xaf, 0xd1, 0x5e, 0x57, 0x90, 0x27, 0xfc, 0xa1, 0x5c, 0xf1, 0xc7, 0x56, + 0x09, 0x16, 0xc7, 0xc2, 0x5d, 0xcb, 0xc3, 0xc2, 0x6e, 0xd3, 0xf8, 0x42, 0xd9, 0xa8, 0x22, 0xa3, + 0xb6, 0xab, 0xa6, 0xb4, 0x1c, 0xcc, 0xef, 0x94, 0x2b, 0xfb, 0x62, 0xa4, 0x6c, 0xed, 0xc1, 0x5c, + 0xf4, 0x23, 0x86, 0x3b, 0x8f, 0x8c, 0x7a, 0xa3, 0x6c, 0x3c, 0x40, 0xfb, 0xb5, 0x07, 0x6a, 0x4a, + 0x5b, 0x86, 0xc5, 0x56, 0xad, 0xd2, 0x3c, 0xac, 0xc6, 0x53, 0x8a, 0x56, 0x80, 0x9b, 0x63, 0x53, + 0xa8, 0x7d, 0x58, 0x7f, 0xab, 0x5d, 0x53, 0xd3, 0x5b, 0x6f, 0x01, 0x0c, 0xbd, 0x1d, 0xb2, 0xda, + 0x87, 0xad, 0xa3, 0x5a, 0xa5, 0xbe, 0x5b, 0xaf, 0x55, 0xd5, 0x94, 0x96, 0x85, 0x1b, 0x7b, 0xe5, + 0xf6, 0x5e, 0x4d, 0x55, 0xb4, 0x05, 0x98, 0xab, 0x34, 0xdb, 0x87, 0xc7, 0x35, 0x43, 0x4d, 0x6b, + 0x8b, 0x90, 0x7d, 0xb3, 0xde, 0x3a, 0x6e, 0xee, 0x19, 0xe5, 0x86, 0x9a, 0x09, 0xd7, 0x5a, 0xed, + 0x46, 0x68, 0x83, 0x3a, 0xb3, 0x85, 0x61, 0xa1, 0x85, 0xfd, 0x3e, 0x89, 0xde, 0x04, 0x60, 0xb6, + 0xd2, 0x6e, 0x1d, 0x37, 0x1b, 0x6a, 0x2a, 0x94, 0x95, 0xdb, 0xc7, 0x4d, 0x54, 0x31, 0xda, 0x55, + 0x55, 0xd1, 0x6e, 0x82, 0x7a, 0x39, 0x44, 0x47, 0xed, 0x9d, 0x83, 0x7a, 0x45, 0x4d, 0x87, 0xf6, + 0x4b, 0x41, 0x3c, 0x95, 0xd1, 0x34, 0x58, 0x8a, 0xa7, 0x8c, 0xfa, 0x49, 0xf9, 0xb8, 0xa6, 0xce, + 0xe8, 0xe6, 0x78, 0x26, 0x69, 0x2f, 0x96, 0x64, 0xb9, 0x2a, 0xc5, 0xe5, 0xaa, 0xd4, 0xc0, 0x9c, + 0x9b, 0x0e, 0x6e, 0xca, 0x92, 0x58, 0xf8, 0x70, 0x6e, 0x5d, 0x79, 0xae, 0x5c, 0xd3, 0xdf, 0x80, + 0x85, 0xae, 0xe9, 0x71, 0x14, 0x30, 0xd4, 0xe5, 0x4e, 0xf2, 0x09, 0x7f, 0x9e, 0x93, 0x79, 0x18, + 0x8a, 0x8e, 0x59, 0x83, 0x3b, 0xa3, 0x04, 0xde, 0xb7, 0x92, 0x09, 0x7f, 0x1d, 0x23, 0xb4, 0xfa, + 0x96, 0x5e, 0x97, 0x59, 0x99, 0x2c, 0xfd, 0x8b, 0x7c, 0xbd, 0x95, 0xab, 0x79, 0xcb, 0x65, 0xe2, + 0xea, 0x47, 0xb0, 0x42, 0x78, 0xf8, 0x26, 0xc8, 0x62, 0xb4, 0x43, 0x6c, 0x4c, 0x03, 0x62, 0xba, + 0xc9, 0xe4, 0xbf, 0xcd, 0x89, 0x02, 0xbb, 0x4c, 0x78, 0x83, 0x3b, 0x95, 0x11, 0xa9, 0x4e, 0xe0, + 0x9e, 0x83, 0x03, 0xc4, 0x3d, 0x6c, 0x21, 0xca, 0x02, 0x64, 0x85, 0x19, 0x85, 0xe5, 0x98, 0xf7, + 0x3c, 0xec, 0x73, 0x1c, 0x24, 0xf3, 0xff, 0x2e, 0xf9, 0x77, 0x1d, 0x1c, 0xb4, 0x3c, 0x6c, 0x1d, + 0xb2, 0xa0, 0x22, 0x38, 0xe1, 0xa0, 0x15, 0x51, 0xf4, 0x1a, 0x2c, 0xda, 0x84, 0x7b, 0xae, 0x39, + 0x40, 0xcc, 0xb7, 0xb1, 0x9f, 0x8c, 0xfd, 0x87, 0xf4, 0x65, 0x2e, 0x92, 0x35, 0x43, 0x95, 0x6e, + 0xc2, 0x5d, 0x07, 0x53, 0xec, 0x87, 0x66, 0x7a, 0x3e, 0xe9, 0x87, 0x7f, 0x4d, 0x8f, 0xa0, 0x2e, + 0x0e, 0xce, 0x98, 0x3d, 0x85, 0x9b, 0xff, 0x29, 0xa9, 0xb7, 0x62, 0xca, 0x91, 0x84, 0x94, 0x3d, + 0xd2, 0x90, 0x08, 0xfd, 0x10, 0x34, 0x42, 0x51, 0x58, 0x04, 0xb8, 0x67, 0x5a, 0x58, 0x5c, 0x71, + 0x53, 0x80, 0x9f, 0x49, 0xb0, 0x4a, 0xe8, 0x61, 0x2c, 0x0d, 0xf3, 0x87, 0xeb, 0x9f, 0x07, 0x95, + 0x32, 0xd4, 0xa3, 0xdc, 0xec, 0x60, 0x64, 0x63, 0x17, 0x07, 0x38, 0x99, 0xf6, 0x2f, 0xe9, 0xd3, + 0x25, 0xca, 0xda, 0x42, 0x58, 0x15, 0x3a, 0xbd, 0x09, 0x2b, 0xa6, 0xeb, 0xb2, 0x77, 0x90, 0xc5, + 0x5c, 0x46, 0x51, 0x64, 0x67, 0x32, 0xee, 0xdf, 0x12, 0xa7, 0x0a, 0x71, 0x25, 0xd4, 0xd6, 0x85, + 0x99, 0x22, 0xa6, 0x28, 0xb2, 0xc3, 0x22, 0xca, 0xbc, 0x2e, 0xa6, 0x61, 0x0c, 0xf4, 0xec, 0x64, + 0xe0, 0x7f, 0xe4, 0xdb, 0x2e, 0x13, 0x5a, 0x1d, 0x6a, 0x2b, 0x7e, 0xcf, 0xd6, 0xcf, 0x41, 0x1d, + 0x4d, 0x42, 0x34, 0x55, 0x08, 0xfd, 0x57, 0x06, 0x7f, 0xf1, 0x63, 0x72, 0xbb, 0x85, 0x03, 0x23, + 0x6f, 0x8f, 0x4f, 0x84, 0x51, 0x25, 0xfd, 0x61, 0x13, 0x6e, 0x9e, 0xba, 0x53, 0x78, 0xe2, 0x7f, + 0xd2, 0x13, 0x39, 0x21, 0xab, 0x4a, 0x95, 0xde, 0x84, 0x9b, 0xc3, 0xa8, 0xea, 0x9d, 0xba, 0xc4, + 0x92, 0x6e, 0xb8, 0x7b, 0x85, 0xb6, 0x4b, 0xdc, 0xf1, 0x82, 0x34, 0x6f, 0x68, 0x97, 0xa1, 0x24, + 0x94, 0xc2, 0x09, 0x5f, 0x81, 0x3b, 0x93, 0xc0, 0xd1, 0x28, 0xfd, 0x78, 0x6e, 0x54, 0x86, 0x0a, + 0xe3, 0xdc, 0x91, 0x08, 0x7d, 0x15, 0xe6, 0x08, 0x47, 0xde, 0x79, 0xd8, 0x47, 0x5c, 0x43, 0xc2, + 0xae, 0x1d, 0xa3, 0x1e, 0xe5, 0x85, 0x89, 0xb3, 0x84, 0x1f, 0x9d, 0xe3, 0x81, 0xfe, 0x06, 0xe4, + 0x08, 0x47, 0xfc, 0x1c, 0x0f, 0x50, 0x8f, 0x92, 0xb7, 0x93, 0xd4, 0xef, 0x4a, 0x35, 0x10, 0xde, + 0x3a, 0xc7, 0x83, 0x36, 0x25, 0x6f, 0x47, 0x47, 0xf3, 0x29, 0x8e, 0x7e, 0xef, 0xf2, 0xe8, 0x50, + 0xac, 0xef, 0xc0, 0x62, 0x5c, 0x49, 0x45, 0x9b, 0x93, 0x24, 0x7f, 0x3f, 0x2f, 0x6f, 0x59, 0x59, + 0x49, 0xc5, 0x92, 0x7e, 0x04, 0xb3, 0x5d, 0x71, 0xd9, 0x25, 0x89, 0x3f, 0xc8, 0x8b, 0x70, 0x2a, + 0x5c, 0xdb, 0x97, 0x54, 0x71, 0xc7, 0x88, 0x38, 0xfa, 0x67, 0x60, 0x56, 0x74, 0xb1, 0x2c, 0x89, + 0xf8, 0x4b, 0x69, 0xce, 0x8d, 0xb0, 0x8b, 0x65, 0xfa, 0x9b, 0xa0, 0x12, 0x8e, 0x42, 0x25, 0xc7, + 0x16, 0xa3, 0xb6, 0xe9, 0x27, 0xba, 0xe3, 0x57, 0xd2, 0x1d, 0x4b, 0x84, 0x1b, 0xb8, 0xd3, 0x8a, + 0x55, 0xfa, 0x97, 0xe1, 0xb6, 0xe8, 0x85, 0x10, 0xc7, 0x2e, 0xb6, 0x02, 0xe6, 0x23, 0x76, 0xfa, + 0x55, 0x6c, 0x05, 0xe8, 0x9c, 0xd0, 0x44, 0x1f, 0xfd, 0x5a, 0x1a, 0xb5, 0x26, 0x08, 0xad, 0x08, + 0xd0, 0x14, 0xfa, 0x7d, 0x42, 0x6d, 0xfd, 0x73, 0x90, 0x25, 0x3c, 0x02, 0x26, 0xb1, 0x1e, 0x4b, + 0xfb, 0xe6, 0x09, 0x97, 0x00, 0xdd, 0x80, 0x17, 0x08, 0x8f, 0xda, 0xf4, 0xb1, 0xfb, 0x26, 0x01, + 0xf4, 0x1b, 0x09, 0x5a, 0x21, 0x5c, 0x4c, 0x8f, 0xdd, 0x37, 0x7b, 0x90, 0xbf, 0x4c, 0x0b, 0x8e, + 0x83, 0x00, 0xfb, 0x49, 0xb4, 0xdf, 0x46, 0x6e, 0x8b, 0x65, 0x2d, 0xa1, 0xd2, 0x75, 0x98, 0x27, + 0x34, 0xc0, 0x3e, 0x4d, 0xb6, 0xe7, 0x77, 0xf1, 0x8b, 0x45, 0xfb, 0xf5, 0xd7, 0x00, 0x6c, 0xec, + 0xf9, 0xd8, 0x32, 0x03, 0x9c, 0xe8, 0xe2, 0xdf, 0x4b, 0x17, 0x8f, 0x28, 0xf4, 0x03, 0xd0, 0xa4, + 0x57, 0xcc, 0xbe, 0x49, 0xdc, 0xb0, 0x7e, 0x20, 0x42, 0x93, 0x38, 0x7f, 0x90, 0x1c, 0x55, 0x28, + 0xcb, 0xb1, 0xb0, 0x4e, 0xf5, 0x32, 0xe4, 0x7c, 0x6c, 0x9b, 0x56, 0x20, 0x7b, 0xd3, 0x24, 0xce, + 0x1f, 0xa3, 0xb4, 0x90, 0x1a, 0xd1, 0xbe, 0xea, 0x08, 0x72, 0x5c, 0x36, 0x6c, 0xe2, 0xae, 0xba, + 0xa6, 0x06, 0x46, 0xfd, 0x5c, 0x0c, 0xf9, 0xe1, 0x9a, 0x68, 0xdb, 0x6f, 0x4f, 0xa4, 0xc7, 0x48, + 0xd7, 0x67, 0x2c, 0xf0, 0xe1, 0x40, 0xff, 0xac, 0x4c, 0x7a, 0xdb, 0x67, 0xc9, 0xec, 0x1f, 0xad, + 0x5d, 0xa6, 0xbd, 0xed, 0x33, 0xbd, 0x0c, 0x0b, 0x51, 0x40, 0x4f, 0x67, 0xda, 0x8f, 0xd7, 0xa4, + 0xbf, 0xa5, 0x48, 0x9c, 0xfe, 0x3a, 0xc0, 0x99, 0xc9, 0x11, 0x0f, 0xcc, 0xa0, 0xc7, 0x93, 0x09, + 0x3f, 0x91, 0x06, 0x64, 0xcf, 0x4c, 0xde, 0x12, 0x92, 0xf0, 0x42, 0x8f, 0x6c, 0x90, 0x8c, 0x29, + 0x4d, 0xf9, 0xa9, 0x34, 0x45, 0x95, 0x5a, 0xc9, 0x12, 0x06, 0x35, 0x41, 0x1b, 0x86, 0x03, 0x8a, + 0x1c, 0x95, 0xcc, 0xfb, 0x99, 0xe4, 0x2d, 0x0f, 0xb5, 0xd1, 0x06, 0xfd, 0x04, 0x56, 0x27, 0x2e, + 0xe1, 0xa9, 0xa1, 0x3f, 0x97, 0xd0, 0x9b, 0x63, 0xf7, 0x70, 0xcc, 0x6d, 0xc0, 0x4a, 0x5c, 0x73, + 0x19, 0xc5, 0xac, 0xf3, 0x91, 0x95, 0xb7, 0x19, 0xae, 0xc6, 0xc8, 0xef, 0xbe, 0x28, 0xdf, 0x5b, + 0x56, 0x5e, 0xb1, 0x24, 0xcb, 0xef, 0x03, 0xb8, 0x35, 0x82, 0xe1, 0x49, 0xf1, 0x3f, 0x06, 0xfd, + 0x9e, 0x84, 0xae, 0xb2, 0x4b, 0x1c, 0x1f, 0xcd, 0x82, 0x3d, 0x58, 0x8c, 0xf3, 0x13, 0x61, 0xda, + 0xeb, 0x6a, 0xf7, 0xae, 0xe0, 0xc2, 0xaf, 0x31, 0x11, 0xef, 0x13, 0x77, 0x5b, 0x2e, 0x16, 0x86, + 0x1b, 0xf4, 0x7d, 0xc8, 0x8f, 0xfc, 0x36, 0xd3, 0xa2, 0xde, 0x95, 0x59, 0xb5, 0x34, 0x94, 0x0a, + 0x98, 0x09, 0x4b, 0x2e, 0x73, 0xa2, 0x1a, 0x38, 0x2d, 0xeb, 0x3d, 0x79, 0xf7, 0xac, 0x4d, 0x24, + 0x57, 0xfc, 0x35, 0x6b, 0xe4, 0xdc, 0xe8, 0x49, 0x1c, 0xf1, 0x0e, 0xac, 0x06, 0xe2, 0x3b, 0x16, + 0xb9, 0xe1, 0xef, 0x87, 0x08, 0xed, 0xb0, 0xa9, 0x8f, 0x7a, 0x3f, 0x7f, 0x6d, 0xd7, 0x34, 0xf1, + 0x61, 0x6c, 0xac, 0x04, 0xe3, 0x13, 0xe2, 0xe0, 0x2f, 0x42, 0xf6, 0xb9, 0xce, 0xfa, 0xe0, 0xfa, + 0xd7, 0x8a, 0xbf, 0x91, 0xc3, 0xfa, 0x1a, 0x91, 0x77, 0x44, 0x93, 0x41, 0xba, 0xdd, 0x5e, 0x20, + 0x5a, 0xb2, 0xe2, 0x35, 0x2d, 0x59, 0xd8, 0xc7, 0xc4, 0xe4, 0x6f, 0xbc, 0x2c, 0x7e, 0xc7, 0x05, + 0xc2, 0xeb, 0xb1, 0x46, 0x3f, 0x80, 0x91, 0x34, 0x89, 0xda, 0xa6, 0x44, 0xd0, 0x37, 0x5f, 0x96, + 0x81, 0x3b, 0x54, 0xca, 0x75, 0xbd, 0x05, 0x2f, 0x4c, 0xe4, 0xd7, 0x94, 0xc4, 0x6f, 0x49, 0xe2, + 0xca, 0x58, 0x76, 0xc9, 0x2d, 0x3b, 0x5f, 0x7b, 0xf4, 0xa4, 0x98, 0x7a, 0xfc, 0xa4, 0x98, 0x7a, + 0xf6, 0xa4, 0xa8, 0x7c, 0xfd, 0xa2, 0xa8, 0xfc, 0xe0, 0xa2, 0xa8, 0xfc, 0xe2, 0xa2, 0xa8, 0x3c, + 0xba, 0x28, 0x2a, 0x8f, 0x2f, 0x8a, 0xca, 0x9f, 0x2e, 0x8a, 0xca, 0x87, 0x17, 0xc5, 0xd4, 0xb3, + 0x8b, 0xa2, 0xf2, 0xed, 0xa7, 0xc5, 0xd4, 0xa3, 0xa7, 0xc5, 0xd4, 0xe3, 0xa7, 0xc5, 0xd4, 0x97, + 0x2a, 0x0e, 0xf3, 0xce, 0x9d, 0x52, 0x9f, 0xb9, 0x01, 0xf6, 0x7d, 0xb3, 0xd4, 0xe3, 0xdb, 0xe2, + 0xa1, 0xc3, 0xfc, 0xee, 0x7d, 0xcf, 0x67, 0x7d, 0x62, 0x63, 0xff, 0x7e, 0xbc, 0xbc, 0xed, 0x9d, + 0x3a, 0x6c, 0x1b, 0x3f, 0x0c, 0xa2, 0xff, 0x10, 0xca, 0x3f, 0xa7, 0xb3, 0xc2, 0xe4, 0x4f, 0xff, + 0x3f, 0x00, 0x00, 0xff, 0xff, 0xa9, 0x0f, 0x28, 0x25, 0x40, 0x14, 0x00, 0x00, } func (x ReferenceType) String() string { diff --git a/pbgo/extschema/schema/policer/crudapi/api.vesapi.go b/pbgo/extschema/schema/policer/crudapi/api.vesapi.go index d09bdcf10..143fc3616 100644 --- a/pbgo/extschema/schema/policer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/policer/crudapi/api.vesapi.go @@ -3130,10 +3130,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/policer/object.pb.go b/pbgo/extschema/schema/policer/object.pb.go index 4917c0bf0..64b4040be 100644 --- a/pbgo/extschema/schema/policer/object.pb.go +++ b/pbgo/extschema/schema/policer/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_669a621a84da895e = []byte{ - // 601 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x41, 0x6b, 0x14, 0x31, - 0x14, 0x80, 0x37, 0xbb, 0xeb, 0xb6, 0xa4, 0xa5, 0x96, 0x01, 0x61, 0x6d, 0x35, 0xd6, 0x15, 0xa1, - 0x87, 0xce, 0x0c, 0x6e, 0x11, 0x69, 0x91, 0x45, 0x5b, 0xa1, 0x88, 0x2d, 0xca, 0xd6, 0x93, 0x97, - 0x92, 0xc9, 0xbe, 0x99, 0x46, 0x67, 0x36, 0x43, 0x92, 0x19, 0xdb, 0x83, 0xe0, 0xd5, 0x9b, 0x3f, - 0x43, 0xf4, 0x4f, 0x58, 0x4f, 0xde, 0x2c, 0x3d, 0xf5, 0x68, 0x67, 0x2f, 0xde, 0x2c, 0xfd, 0x05, - 0xd2, 0xcc, 0x4e, 0xe9, 0x96, 0x29, 0x08, 0xbd, 0x25, 0xbc, 0x2f, 0x5f, 0x5e, 0xf2, 0x5e, 0x82, - 0x5b, 0x29, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x6d, 0x88, 0xa8, 0x1b, 0x8b, 0x90, 0x33, 0x90, 0xae, - 0xf0, 0xde, 0x02, 0xd3, 0x4e, 0x2c, 0x85, 0x16, 0xd6, 0x8d, 0x9c, 0x71, 0x72, 0xc6, 0x19, 0x32, - 0x33, 0x76, 0xc0, 0xf5, 0x76, 0xe2, 0x39, 0x4c, 0x44, 0x6e, 0x20, 0x02, 0xe1, 0x1a, 0xda, 0x4b, - 0x7c, 0x33, 0x33, 0x13, 0x33, 0xca, 0x2d, 0x33, 0xb3, 0xa3, 0x3b, 0x89, 0x58, 0x73, 0xd1, 0x57, - 0xc3, 0xe0, 0xdd, 0xf2, 0x34, 0xf4, 0x6e, 0x0c, 0x05, 0x72, 0x73, 0x14, 0x39, 0x1f, 0xba, 0x70, - 0x88, 0x14, 0x14, 0xf4, 0xd3, 0xd1, 0x1d, 0x5a, 0xdf, 0xea, 0xb8, 0xf1, 0xd2, 0x9c, 0xca, 0x5a, - 0xc2, 0xe3, 0x11, 0x68, 0xda, 0xa3, 0x9a, 0x36, 0xd1, 0x1c, 0x9a, 0x9f, 0x68, 0xdf, 0x76, 0x46, - 0x8f, 0x98, 0x83, 0x1b, 0xa0, 0xe9, 0xeb, 0xdd, 0x18, 0xba, 0x67, 0xb8, 0xb5, 0x8e, 0xaf, 0xab, - 0x5d, 0xa5, 0x21, 0xda, 0x3a, 0x33, 0x54, 0x8d, 0xe1, 0xde, 0x05, 0xc3, 0xa6, 0xa1, 0x2e, 0x78, - 0xa6, 0xf2, 0xb5, 0x1b, 0x85, 0x6d, 0x11, 0xd7, 0x55, 0x0c, 0xac, 0x59, 0x33, 0x8a, 0x3b, 0x4e, - 0xe9, 0x3d, 0x3b, 0x9b, 0x31, 0x30, 0xb3, 0xdc, 0xc0, 0xcb, 0x59, 0xf5, 0xa4, 0x73, 0xed, 0xc1, - 0x42, 0x7b, 0x61, 0xf1, 0xc7, 0x5e, 0xb3, 0x3a, 0x8d, 0x0e, 0xf6, 0x9a, 0xbf, 0xaa, 0xf8, 0x09, - 0xae, 0xad, 0x81, 0xb6, 0x96, 0xfc, 0x87, 0x3b, 0xcc, 0x56, 0xc0, 0x12, 0x09, 0x11, 0xa8, 0x6d, - 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x12, 0x7d, 0xae, 0x85, 0x5c, 0x98, 0x4b, 0x41, 0xd9, 0x5c, 0xd8, - 0xbc, 0xef, 0x4b, 0xaa, 0xb4, 0x4c, 0x98, 0x4e, 0x24, 0xd8, 0x12, 0x68, 0x0f, 0xaf, 0xe0, 0xb1, - 0x2e, 0xc4, 0x21, 0x65, 0x60, 0x3d, 0x2a, 0xb7, 0x24, 0x0a, 0x2e, 0x55, 0xbc, 0x97, 0x5c, 0x03, - 0x7e, 0x8a, 0x1b, 0xab, 0x12, 0xa8, 0xbe, 0x9a, 0xe2, 0x19, 0x84, 0x70, 0x35, 0x45, 0x7d, 0x9d, - 0xab, 0xab, 0x5c, 0x46, 0xeb, 0x15, 0x1e, 0x2f, 0xae, 0xdd, 0xea, 0xe0, 0xb1, 0x80, 0x6d, 0x99, - 0x42, 0xe5, 0xb5, 0xbe, 0x7f, 0x49, 0xa1, 0xd6, 0x42, 0xe1, 0xd1, 0xf0, 0xac, 0x5c, 0x8d, 0x80, - 0x9d, 0x8e, 0x97, 0xeb, 0x27, 0x1d, 0xd4, 0x6e, 0xfd, 0x45, 0x78, 0x72, 0x53, 0x53, 0x9d, 0xa8, - 0xff, 0xee, 0xc2, 0x1c, 0x2f, 0xe9, 0xc2, 0xe7, 0x78, 0x22, 0x7f, 0xa0, 0x5b, 0x12, 0x7c, 0xd5, - 0xac, 0xce, 0xd5, 0xe6, 0x27, 0xda, 0xb7, 0x4a, 0x7b, 0xb8, 0x0b, 0xfe, 0xe9, 0xe2, 0x15, 0xfc, - 0xf5, 0xc3, 0xd8, 0x30, 0xcf, 0x2e, 0x16, 0x45, 0x48, 0x59, 0x8f, 0x31, 0x66, 0xa2, 0xdf, 0xe3, - 0xe6, 0xa9, 0x34, 0x6b, 0xa5, 0xa6, 0xd5, 0x02, 0x30, 0x69, 0x9c, 0xe3, 0x97, 0x67, 0x0f, 0x3a, - 0xd3, 0x78, 0x0a, 0x4f, 0x16, 0x99, 0x39, 0x09, 0xef, 0x15, 0xdd, 0xb9, 0xf2, 0x09, 0xed, 0x1f, - 0x91, 0xca, 0xe1, 0x11, 0xa9, 0x1c, 0x1f, 0x11, 0xf4, 0x31, 0x23, 0xe8, 0x4b, 0x46, 0xd0, 0xcf, - 0x8c, 0xa0, 0xfd, 0x8c, 0xa0, 0xc3, 0x8c, 0xa0, 0xdf, 0x19, 0x41, 0x7f, 0x32, 0x52, 0x39, 0xce, - 0x08, 0xfa, 0x3c, 0x20, 0x95, 0xef, 0x03, 0x82, 0xf6, 0x07, 0xa4, 0x72, 0x38, 0x20, 0x95, 0x37, - 0x2f, 0x02, 0x11, 0xbf, 0x0b, 0x9c, 0x54, 0x84, 0x1a, 0xa4, 0xa4, 0x4e, 0xa2, 0x5c, 0x33, 0xf0, - 0x85, 0x8c, 0xec, 0x58, 0x8a, 0x94, 0xf7, 0x40, 0xda, 0x45, 0xd8, 0x8d, 0xbd, 0x40, 0xb8, 0xb0, - 0xa3, 0x87, 0x7f, 0xc0, 0xe8, 0x47, 0xe2, 0x35, 0xcc, 0x27, 0xb0, 0xf8, 0x2f, 0x00, 0x00, 0xff, - 0xff, 0x2f, 0x7a, 0xc6, 0x87, 0xef, 0x04, 0x00, 0x00, + // 622 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4f, 0xd4, 0x4e, + 0x14, 0xc7, 0x77, 0xd8, 0x65, 0x21, 0x03, 0xe1, 0x47, 0x9a, 0xfc, 0x92, 0x15, 0x74, 0xc4, 0x35, + 0x26, 0x1c, 0x68, 0x1b, 0x97, 0x78, 0x90, 0x98, 0x3d, 0x80, 0x09, 0x31, 0x42, 0x34, 0x8b, 0xf1, + 0xa0, 0x07, 0x9c, 0x4e, 0xdf, 0x96, 0xd1, 0x6d, 0xa7, 0x99, 0x99, 0x56, 0x38, 0x98, 0x98, 0x78, + 0xf2, 0xe6, 0x9f, 0x61, 0xfc, 0x2b, 0xc4, 0x93, 0x07, 0x0f, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0xbc, + 0x49, 0xf8, 0x0b, 0x0c, 0xd3, 0x2d, 0xb2, 0x9b, 0x6a, 0xbc, 0x70, 0x9b, 0xc9, 0xfb, 0xcc, 0xf7, + 0xfb, 0x5e, 0xfb, 0xde, 0xc3, 0xcd, 0x14, 0x94, 0xc3, 0x85, 0xab, 0xd8, 0x0e, 0x84, 0xd4, 0x8d, + 0x45, 0x8f, 0x33, 0x90, 0xae, 0xf0, 0x5e, 0x02, 0xd3, 0x4e, 0x2c, 0x85, 0x16, 0xd6, 0xff, 0x39, + 0xe3, 0xe4, 0x8c, 0x33, 0x60, 0xe6, 0xec, 0x80, 0xeb, 0x9d, 0xc4, 0x73, 0x98, 0x08, 0xdd, 0x40, + 0x04, 0xc2, 0x35, 0xb4, 0x97, 0x74, 0xcd, 0xcd, 0x5c, 0xcc, 0x29, 0x57, 0x99, 0x9b, 0x1f, 0x76, + 0x12, 0xb1, 0xe6, 0x22, 0x52, 0x83, 0xe0, 0x8d, 0xf2, 0x34, 0xf4, 0x5e, 0x0c, 0x05, 0x72, 0x65, + 0x18, 0xb9, 0x18, 0x1a, 0x29, 0x22, 0x05, 0x05, 0x51, 0x3a, 0xec, 0xd0, 0xfc, 0x36, 0x8e, 0xeb, + 0x8f, 0x4c, 0x55, 0xd6, 0x5d, 0x3c, 0x19, 0x82, 0xa6, 0x3e, 0xd5, 0xb4, 0x81, 0x16, 0xd0, 0xe2, + 0x54, 0xeb, 0x9a, 0x33, 0x5c, 0x62, 0x0e, 0x6e, 0x82, 0xa6, 0x4f, 0xf6, 0x62, 0xe8, 0x9c, 0xe3, + 0xd6, 0x06, 0xfe, 0x4f, 0xed, 0x29, 0x0d, 0xe1, 0xf6, 0xb9, 0xc2, 0x98, 0x51, 0xb8, 0x39, 0xa2, + 0xb0, 0x65, 0xa8, 0x11, 0x9d, 0x99, 0xfc, 0xed, 0x66, 0xa1, 0xb6, 0x8c, 0x6b, 0x2a, 0x06, 0xd6, + 0xa8, 0x1a, 0x89, 0xeb, 0x4e, 0xe9, 0x77, 0x76, 0xb6, 0x62, 0x60, 0xe6, 0xb9, 0x81, 0x57, 0xde, + 0xd5, 0x4e, 0xdb, 0xe3, 0xb7, 0x97, 0x5a, 0x4b, 0xcb, 0x5f, 0xf6, 0x1b, 0x63, 0xb3, 0xe8, 0x70, + 0xbf, 0x71, 0x52, 0xc5, 0x1e, 0xae, 0xae, 0x83, 0xb6, 0x9e, 0x77, 0xef, 0xec, 0x32, 0x5b, 0x01, + 0x4b, 0x24, 0x84, 0xa0, 0x76, 0x6c, 0x8f, 0x2a, 0xce, 0xec, 0x50, 0x44, 0x5c, 0x0b, 0xb9, 0xb4, + 0x30, 0x1a, 0x56, 0x9a, 0x46, 0x3e, 0x95, 0xfe, 0x6f, 0x22, 0x05, 0x65, 0x73, 0x61, 0xf3, 0xa8, + 0x2b, 0xa9, 0xd2, 0x32, 0x61, 0x3a, 0x91, 0x60, 0x4b, 0xa0, 0x3e, 0xa6, 0x78, 0xa2, 0x03, 0x71, + 0x8f, 0x32, 0xb0, 0x9e, 0x96, 0xfb, 0x24, 0x0a, 0xfe, 0x66, 0x92, 0x87, 0xcb, 0x1d, 0x5e, 0x4b, + 0xae, 0x01, 0xbf, 0xc0, 0xf5, 0x35, 0x09, 0x54, 0x5f, 0xaa, 0xc3, 0x7d, 0xe8, 0xc1, 0x25, 0x3a, + 0x30, 0x5c, 0xdb, 0xe0, 0xea, 0x72, 0xff, 0x45, 0xf3, 0x31, 0x9e, 0x2c, 0xfa, 0xc2, 0x6a, 0xe3, + 0x89, 0x80, 0x6d, 0x9b, 0x4e, 0xca, 0x9b, 0xf1, 0xd6, 0x1f, 0x3a, 0x69, 0xbd, 0x27, 0x3c, 0xda, + 0x3b, 0xef, 0xa7, 0x7a, 0xc0, 0xce, 0xce, 0x2b, 0xb5, 0xd3, 0x36, 0x6a, 0x35, 0x7f, 0x22, 0x3c, + 0xbd, 0xa5, 0xa9, 0x4e, 0xd4, 0x3f, 0x8f, 0x49, 0x8e, 0x97, 0x8c, 0xc9, 0x03, 0x3c, 0x95, 0x6f, + 0x90, 0x6d, 0x09, 0x5d, 0xd5, 0x18, 0x5b, 0xa8, 0x2e, 0x4e, 0xb5, 0xae, 0x96, 0x0e, 0x59, 0x07, + 0xba, 0x67, 0x8f, 0x57, 0xf1, 0xa7, 0x37, 0x13, 0x83, 0x3c, 0x3b, 0x58, 0x14, 0x21, 0x65, 0xdd, + 0xc3, 0x98, 0x89, 0xc8, 0xe7, 0x66, 0x96, 0x1b, 0xd5, 0x52, 0xa5, 0xb5, 0x02, 0x30, 0x69, 0x5c, + 0xe0, 0x57, 0xe6, 0x0f, 0xdb, 0xb3, 0x78, 0x06, 0x4f, 0x17, 0x99, 0x39, 0x09, 0xf7, 0x8b, 0xf1, + 0x59, 0x7d, 0x8f, 0x0e, 0x8e, 0x49, 0xe5, 0xe8, 0x98, 0x54, 0x4e, 0x8e, 0x09, 0x7a, 0x9b, 0x11, + 0xf4, 0x31, 0x23, 0xe8, 0x6b, 0x46, 0xd0, 0x41, 0x46, 0xd0, 0x51, 0x46, 0xd0, 0xf7, 0x8c, 0xa0, + 0x1f, 0x19, 0xa9, 0x9c, 0x64, 0x04, 0x7d, 0xe8, 0x93, 0xca, 0xe7, 0x3e, 0x41, 0x07, 0x7d, 0x52, + 0x39, 0xea, 0x93, 0xca, 0xb3, 0x87, 0x81, 0x88, 0x5f, 0x05, 0x4e, 0x2a, 0x7a, 0x1a, 0xa4, 0xa4, + 0x4e, 0xa2, 0x5c, 0x73, 0xe8, 0x0a, 0x19, 0xda, 0xb1, 0x14, 0x29, 0xf7, 0x41, 0xda, 0x45, 0xd8, + 0x8d, 0xbd, 0x40, 0xb8, 0xb0, 0xab, 0x07, 0x4b, 0x6a, 0x78, 0xd3, 0x79, 0x75, 0xb3, 0xa5, 0x96, + 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0xa7, 0x64, 0x04, 0x53, 0x90, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/policer/public_crudapi.pb.go b/pbgo/extschema/schema/policer/public_crudapi.pb.go index a119b1dd1..8347589c6 100644 --- a/pbgo/extschema/schema/policer/public_crudapi.pb.go +++ b/pbgo/extschema/schema/policer/public_crudapi.pb.go @@ -1059,108 +1059,109 @@ func init() { } var fileDescriptor_70b597afc9488a91 = []byte{ - // 1607 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6b, 0x1b, 0xcb, - 0x1d, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x63, 0xdf, 0xf4, 0xc5, 0x4f, 0x56, 0x5d, 0xa1, 0x6c, - 0xf2, 0xf2, 0x5c, 0xf3, 0xb4, 0x32, 0x0e, 0xaf, 0x24, 0xa6, 0x49, 0x23, 0xdb, 0x6b, 0xd5, 0x3f, - 0x12, 0x87, 0x95, 0x1c, 0x4a, 0x2e, 0xcb, 0x6a, 0x35, 0x52, 0xb6, 0x91, 0xb4, 0xdb, 0x99, 0x91, - 0x1c, 0x53, 0x4c, 0x4b, 0xa0, 0xc7, 0x42, 0xa1, 0xf4, 0x52, 0x7a, 0xe8, 0xa5, 0x34, 0x7f, 0x42, - 0xc1, 0x17, 0x1f, 0x0a, 0x09, 0xa1, 0x94, 0xd0, 0x52, 0x08, 0xf4, 0x92, 0xc8, 0x3d, 0xe4, 0x18, - 0xda, 0x53, 0x6f, 0x8f, 0x9d, 0xd9, 0x55, 0x24, 0x79, 0x6d, 0xcb, 0xb1, 0x4f, 0xda, 0x9d, 0xef, - 0xf7, 0xf3, 0xd9, 0xef, 0x67, 0xbe, 0x3f, 0x76, 0xb4, 0x70, 0xae, 0x8d, 0xa9, 0x62, 0xd9, 0x39, - 0x6a, 0x3e, 0xc6, 0x0d, 0x23, 0xe7, 0xd8, 0x75, 0xcb, 0xc4, 0x24, 0xe7, 0xb4, 0xca, 0x75, 0xcb, - 0xd4, 0x4d, 0xd2, 0xaa, 0x18, 0x8e, 0xa5, 0x38, 0xc4, 0x66, 0x36, 0xba, 0x2c, 0x7c, 0x15, 0xe1, - 0xab, 0x78, 0xbe, 0xa9, 0x6c, 0xcd, 0x62, 0x8f, 0x5b, 0x65, 0xc5, 0xb4, 0x1b, 0xb9, 0x9a, 0x5d, - 0xb3, 0x73, 0xdc, 0xbb, 0xdc, 0xaa, 0xf2, 0x3b, 0x7e, 0xc3, 0xaf, 0x04, 0x4b, 0x6a, 0xa6, 0x66, + // 1623 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcd, 0x6f, 0x1b, 0x4d, + 0x19, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0xef, 0xf0, 0x36, 0xaf, 0x63, 0x82, 0xe5, 0x6e, + 0xfb, 0xf6, 0x0d, 0x51, 0xbd, 0x8e, 0x52, 0x55, 0x6a, 0x23, 0x5a, 0xea, 0x24, 0x1b, 0x93, 0x8f, + 0x36, 0xd5, 0xda, 0xa9, 0xa0, 0x97, 0xd5, 0x7a, 0x3d, 0x76, 0x97, 0xda, 0xde, 0x65, 0x66, 0xec, + 0x34, 0x42, 0x11, 0xa8, 0x77, 0xa4, 0xa2, 0x0a, 0x21, 0x21, 0x0e, 0x48, 0x08, 0xd1, 0x3f, 0x01, + 0x29, 0x97, 0xde, 0xa8, 0x7a, 0x40, 0x15, 0x5c, 0x2a, 0xb8, 0x50, 0x07, 0xa1, 0x4a, 0x5c, 0x2a, + 0x10, 0x07, 0x2e, 0x08, 0xed, 0xcc, 0xae, 0x6b, 0x3b, 0x9b, 0xc4, 0xe9, 0x07, 0x27, 0xef, 0xcc, + 0xf3, 0xfc, 0x7e, 0xfb, 0xfc, 0xf6, 0xf9, 0xd8, 0xf1, 0xc2, 0xb9, 0x36, 0xa6, 0x8a, 0x65, 0xe7, + 0xa8, 0x79, 0x1f, 0x37, 0x8c, 0x9c, 0x63, 0xd7, 0x2d, 0x13, 0x93, 0x9c, 0xd3, 0x2a, 0xd7, 0x2d, + 0x53, 0x37, 0x49, 0xab, 0x62, 0x38, 0x96, 0xe2, 0x10, 0x9b, 0xd9, 0xe8, 0xac, 0xf0, 0x55, 0x84, + 0xaf, 0xe2, 0xf9, 0xa6, 0xb2, 0x35, 0x8b, 0xdd, 0x6f, 0x95, 0x15, 0xd3, 0x6e, 0xe4, 0x6a, 0x76, + 0xcd, 0xce, 0x71, 0xef, 0x72, 0xab, 0xca, 0x57, 0x7c, 0xc1, 0xaf, 0x04, 0x4b, 0x6a, 0xa6, 0x66, 0xdb, 0xb5, 0x3a, 0xce, 0x19, 0x8e, 0x95, 0x33, 0x9a, 0x4d, 0x9b, 0x19, 0xcc, 0xb2, 0x9b, 0xd4, - 0xb3, 0x7e, 0xd7, 0xb3, 0x76, 0x39, 0x70, 0xc3, 0x61, 0xbb, 0x9e, 0x31, 0xd5, 0x1f, 0x2c, 0x26, - 0xc4, 0x26, 0x5d, 0x60, 0xbf, 0xcd, 0x76, 0x7a, 0x59, 0xe5, 0x60, 0x95, 0x76, 0xf9, 0xa7, 0xd8, - 0x64, 0x9e, 0xcf, 0x95, 0x60, 0x1f, 0xb6, 0xeb, 0x60, 0x9f, 0x66, 0xba, 0xdf, 0xa5, 0xd7, 0x34, - 0xf0, 0x84, 0x36, 0xa6, 0xb8, 0xd9, 0x1e, 0x88, 0x22, 0x33, 0xe0, 0x63, 0xe1, 0x1d, 0xbd, 0xcf, - 0x43, 0xfe, 0x33, 0x80, 0xe3, 0xcb, 0x04, 0x1b, 0x0c, 0x6b, 0xf8, 0x67, 0x2d, 0x4c, 0x19, 0xfa, - 0x11, 0x8c, 0x35, 0x30, 0x33, 0x2a, 0x06, 0x33, 0x92, 0x20, 0x03, 0x66, 0x13, 0x0b, 0x57, 0x95, - 0xfe, 0x34, 0x6c, 0x71, 0x11, 0x02, 0x75, 0x0f, 0x33, 0xa3, 0xb4, 0xeb, 0x60, 0xad, 0x0b, 0x42, + 0xb3, 0x7e, 0xdd, 0xb3, 0x76, 0x39, 0x70, 0xc3, 0x61, 0xbb, 0x9e, 0x31, 0xd5, 0x1f, 0x2c, 0x26, + 0xc4, 0x26, 0x5d, 0x60, 0xbf, 0xcd, 0x76, 0x7a, 0x59, 0xe5, 0x60, 0x95, 0x76, 0xf9, 0xfb, 0xd8, + 0x64, 0x9e, 0xcf, 0xb9, 0x60, 0x1f, 0xb6, 0xeb, 0x60, 0x9f, 0x66, 0xba, 0xdf, 0xa5, 0xd7, 0x34, + 0x70, 0x87, 0x36, 0xa6, 0xb8, 0xd9, 0x1e, 0x88, 0x22, 0x33, 0xe0, 0x63, 0xe1, 0x1d, 0xbd, 0xcf, + 0x43, 0xfe, 0x2d, 0x80, 0xe3, 0xcb, 0x04, 0x1b, 0x0c, 0x6b, 0xf8, 0x07, 0x2d, 0x4c, 0x19, 0xfa, + 0x36, 0x8c, 0x35, 0x30, 0x33, 0x2a, 0x06, 0x33, 0x92, 0x20, 0x03, 0x66, 0x13, 0x0b, 0xe7, 0x95, + 0xfe, 0x34, 0x6c, 0x71, 0x11, 0x02, 0x75, 0x0b, 0x33, 0xa3, 0xb4, 0xeb, 0x60, 0xad, 0x0b, 0x42, 0xeb, 0x30, 0x42, 0x1d, 0x6c, 0x26, 0x43, 0x1c, 0xfc, 0xa5, 0x12, 0x98, 0x43, 0x45, 0xc0, 0x8b, - 0x0e, 0x36, 0x5d, 0xf8, 0xd2, 0xe4, 0xef, 0xf7, 0xc6, 0x5c, 0x94, 0x52, 0x33, 0x75, 0xf7, 0x57, - 0xe3, 0x1c, 0x8b, 0xf1, 0x57, 0x77, 0xa2, 0xe2, 0x71, 0xf2, 0xff, 0x00, 0x9c, 0xf0, 0x23, 0xa5, - 0x8e, 0xdd, 0xa4, 0x18, 0xfd, 0xf0, 0x48, 0xa8, 0x99, 0xc0, 0x50, 0x0b, 0x98, 0x05, 0xc4, 0xb9, - 0x05, 0x27, 0xe9, 0x2e, 0x65, 0xb8, 0xa1, 0x77, 0x49, 0xc2, 0x9c, 0xe4, 0xfa, 0x00, 0x49, 0x91, - 0x7b, 0x1d, 0xa5, 0x9a, 0x10, 0xf0, 0x7b, 0x3e, 0x61, 0xa1, 0x4f, 0xb8, 0x7c, 0x8c, 0xf0, 0x02, - 0x66, 0x67, 0x50, 0xfd, 0x6f, 0x00, 0x27, 0x34, 0xec, 0xd4, 0x0d, 0xb3, 0x9b, 0xa0, 0xbb, 0x47, - 0x54, 0x5f, 0x0b, 0x54, 0xed, 0xc1, 0x02, 0x94, 0x6f, 0xf4, 0x05, 0x7a, 0xfd, 0x98, 0x40, 0x3d, - 0xfc, 0x29, 0xc1, 0xa2, 0x1c, 0x94, 0x08, 0xa6, 0x76, 0x8b, 0x98, 0x58, 0x6f, 0x63, 0x42, 0x2d, - 0xbb, 0xc9, 0xf7, 0x31, 0xbe, 0x14, 0x79, 0xbf, 0x0f, 0x80, 0x36, 0xe9, 0x5b, 0x1f, 0x0a, 0x63, - 0xaf, 0xba, 0xcf, 0xe0, 0x64, 0x57, 0x9c, 0xc8, 0xa9, 0xfc, 0x3b, 0x00, 0x61, 0x01, 0x33, 0x5f, - 0xec, 0x0c, 0x8c, 0x37, 0x8d, 0x06, 0xa6, 0x8e, 0x61, 0x62, 0xae, 0x36, 0xae, 0x7d, 0x5c, 0x40, - 0x08, 0x46, 0xdc, 0x1b, 0x2e, 0x24, 0xae, 0xf1, 0x6b, 0xb4, 0x0d, 0xdd, 0x27, 0x72, 0x32, 0xbd, - 0x6a, 0x93, 0x86, 0xc1, 0x78, 0x38, 0x13, 0x0b, 0x5f, 0x1f, 0x9f, 0x10, 0xff, 0xe9, 0xab, 0xdc, - 0x7f, 0xd9, 0xae, 0x60, 0x6d, 0x82, 0xf4, 0xad, 0xc9, 0xff, 0x1f, 0x85, 0x89, 0x1e, 0x4f, 0xa4, - 0xc2, 0x84, 0xc9, 0xab, 0x91, 0x3f, 0xc4, 0xdb, 0xca, 0x6b, 0x27, 0x16, 0xbb, 0xa7, 0x49, 0x83, - 0x02, 0xe8, 0x12, 0xa3, 0x1f, 0xc3, 0x31, 0x22, 0x76, 0x40, 0xf0, 0x84, 0x4f, 0x6c, 0x9a, 0xfe, - 0x4a, 0xd0, 0x12, 0x1e, 0x94, 0x33, 0x05, 0xe5, 0x21, 0x72, 0x42, 0x1e, 0xfa, 0xba, 0x67, 0xf4, - 0x22, 0xba, 0xe7, 0xd2, 0x85, 0x74, 0x4f, 0xf4, 0x9c, 0xdd, 0x83, 0x96, 0x60, 0x94, 0x32, 0x83, - 0xb5, 0x68, 0xf2, 0x8f, 0x7f, 0x00, 0x99, 0x70, 0xc0, 0x00, 0xf3, 0xc9, 0x8a, 0xdc, 0x4d, 0x84, - 0xb6, 0x14, 0x3e, 0xd8, 0x03, 0x9a, 0x87, 0x44, 0x6b, 0xf0, 0x33, 0x82, 0xab, 0x98, 0x10, 0xab, - 0x59, 0xd3, 0xc5, 0xd0, 0xa6, 0xc9, 0x18, 0x27, 0x9b, 0x39, 0xa6, 0xd9, 0xaa, 0x5c, 0x95, 0xd4, - 0x85, 0x89, 0x75, 0x8a, 0x1e, 0xc2, 0x64, 0x05, 0xd7, 0x31, 0xc3, 0x15, 0x5d, 0xd8, 0x70, 0xa5, - 0xcb, 0x18, 0x1f, 0x82, 0x71, 0xca, 0x43, 0x6b, 0x1e, 0xd8, 0xe7, 0xfd, 0x09, 0x9c, 0xae, 0x58, - 0xd4, 0x28, 0xd7, 0x83, 0x88, 0xe1, 0x10, 0xc4, 0x5f, 0xf8, 0xf0, 0x01, 0xe6, 0x9e, 0x06, 0x5d, - 0x8f, 0xc4, 0x80, 0x14, 0x92, 0xff, 0x04, 0x60, 0x62, 0xd3, 0xa2, 0x43, 0x36, 0xe5, 0x15, 0x38, - 0x56, 0x37, 0xca, 0xb8, 0xae, 0x57, 0xad, 0x3a, 0xc3, 0xc4, 0x6b, 0xce, 0x04, 0x5f, 0x5b, 0xe5, - 0x4b, 0xe8, 0x2a, 0x1c, 0x27, 0xd8, 0xb1, 0x09, 0xd3, 0xab, 0x16, 0xae, 0x57, 0x68, 0x32, 0x9c, - 0x09, 0xcf, 0xc6, 0xb5, 0x31, 0xb1, 0xb8, 0xca, 0xd7, 0xd0, 0x3c, 0xfc, 0xdc, 0x73, 0x12, 0x49, - 0xf1, 0x7d, 0x23, 0xdc, 0x17, 0x09, 0x9b, 0x48, 0xa1, 0x40, 0xc8, 0xcf, 0xa3, 0x50, 0x12, 0x71, - 0x8a, 0x26, 0x5d, 0x63, 0xb8, 0x81, 0xa6, 0x60, 0x94, 0xe1, 0xa6, 0xd1, 0x64, 0xbc, 0xb2, 0xe2, - 0x9a, 0x77, 0xf7, 0x09, 0x93, 0x45, 0x82, 0xe1, 0x96, 0x55, 0x11, 0xc3, 0x4d, 0x73, 0x2f, 0x51, - 0x06, 0x26, 0x2a, 0x98, 0x9a, 0xc4, 0xe2, 0xef, 0xd4, 0x64, 0x42, 0x28, 0xed, 0x59, 0x42, 0x29, - 0x18, 0xf3, 0xb7, 0x39, 0x39, 0x96, 0x01, 0xb3, 0x31, 0xad, 0x7b, 0x8f, 0x36, 0x60, 0x94, 0x6f, - 0x8a, 0x90, 0x94, 0x58, 0xb8, 0x71, 0x4c, 0x99, 0x0e, 0x4a, 0x52, 0x36, 0x39, 0x4a, 0x6d, 0x32, - 0xb2, 0xab, 0x79, 0x14, 0xe8, 0x11, 0x4c, 0xf4, 0x9c, 0x6d, 0xbc, 0x02, 0xb8, 0x39, 0x2c, 0x63, - 0xfe, 0x23, 0x54, 0xd0, 0xf6, 0x92, 0xa1, 0x5b, 0x10, 0xda, 0x3b, 0x4d, 0x4c, 0x74, 0xf7, 0x00, - 0x91, 0x8c, 0xf3, 0x06, 0x4d, 0x0d, 0x50, 0x3f, 0xb4, 0xf0, 0x8e, 0x5f, 0x59, 0x71, 0xee, 0xed, - 0xae, 0xf4, 0x0d, 0x99, 0xf1, 0x8b, 0x18, 0x32, 0x13, 0xe7, 0x1a, 0x32, 0xb7, 0x61, 0xac, 0x86, - 0x19, 0x9f, 0x16, 0xde, 0xb8, 0x1a, 0x62, 0xd0, 0x68, 0x97, 0x6a, 0xe2, 0x06, 0x15, 0x20, 0xf4, - 0x6a, 0x91, 0x62, 0xe6, 0xcd, 0x83, 0xe1, 0x87, 0x4b, 0x5c, 0x60, 0x8b, 0x98, 0xa5, 0x6e, 0xc1, - 0x44, 0x4f, 0x12, 0xdd, 0xca, 0x7a, 0x82, 0x77, 0xbd, 0x2a, 0x74, 0x2f, 0xd1, 0xe7, 0x70, 0xb4, - 0x6d, 0xd4, 0x5b, 0x7e, 0x01, 0x8a, 0x9b, 0xc5, 0xd0, 0x4d, 0x90, 0xba, 0x03, 0xa5, 0xc1, 0x6c, - 0x9d, 0x05, 0xbf, 0x1e, 0x89, 0x8d, 0x4a, 0x51, 0xf9, 0x17, 0x70, 0xac, 0xb7, 0x08, 0xd0, 0x6d, - 0x38, 0x6a, 0x31, 0xdc, 0xa0, 0x49, 0x31, 0x31, 0xbf, 0x1a, 0xb2, 0x70, 0x34, 0x81, 0x42, 0xf3, - 0x30, 0x2a, 0xce, 0xc6, 0xc9, 0x10, 0xc7, 0x27, 0x07, 0xf0, 0xaa, 0x6b, 0xe4, 0x7b, 0xe9, 0xf9, - 0xc9, 0x4f, 0xe0, 0xf8, 0x0a, 0x1f, 0x6c, 0x9f, 0xfe, 0xa6, 0x9f, 0x85, 0x52, 0xd5, 0xb0, 0xea, - 0xba, 0x55, 0xed, 0x0e, 0x40, 0xde, 0x9c, 0x31, 0x6d, 0xc2, 0x5d, 0x5f, 0xab, 0xfa, 0x83, 0x6d, - 0xee, 0xbf, 0x00, 0x5e, 0x0e, 0x7c, 0xcd, 0xa3, 0x14, 0x9c, 0x2a, 0xa8, 0x25, 0x5d, 0x2b, 0x3e, - 0xd0, 0x57, 0xb7, 0xb4, 0x7b, 0xf9, 0x92, 0xbe, 0xa2, 0xae, 0xe6, 0xb7, 0x37, 0x4b, 0xd2, 0x08, - 0xfa, 0x1e, 0x9c, 0x1e, 0xb0, 0xad, 0x6e, 0x69, 0xfa, 0xb2, 0xa6, 0xe6, 0x4b, 0xaa, 0x04, 0x50, - 0x1a, 0xa6, 0x02, 0xcc, 0x9a, 0xfa, 0x60, 0x33, 0xbf, 0xac, 0x4a, 0x21, 0x34, 0x0d, 0x2f, 0x0f, - 0xd8, 0x8b, 0xa5, 0x7c, 0x69, 0xbb, 0x28, 0x85, 0xd1, 0x17, 0xf0, 0x3b, 0x03, 0x26, 0x4d, 0xcd, - 0xaf, 0x48, 0x11, 0x74, 0x0d, 0x66, 0x8e, 0x18, 0x56, 0x55, 0x4d, 0x5b, 0xbb, 0x5f, 0xd0, 0xb7, - 0x96, 0xd6, 0xd5, 0xe5, 0x52, 0x51, 0x1a, 0x0d, 0xf0, 0x5a, 0xd2, 0xb6, 0x36, 0xd4, 0xfb, 0xc2, - 0x59, 0xbd, 0xbf, 0xac, 0x16, 0xa5, 0xe8, 0xc2, 0xbf, 0x62, 0x30, 0x9c, 0x7f, 0xb0, 0x86, 0xfe, - 0x06, 0x60, 0x54, 0x1c, 0x40, 0xd0, 0x50, 0xe7, 0x93, 0xd4, 0x97, 0xa7, 0x78, 0x79, 0x27, 0xb5, - 0x56, 0xe7, 0x45, 0xf2, 0x07, 0xd5, 0x6f, 0x9e, 0x9a, 0x59, 0x8a, 0xcd, 0x16, 0xc1, 0x0d, 0x4c, - 0x1f, 0x67, 0xcb, 0x06, 0xb5, 0xcc, 0x6c, 0x8b, 0x62, 0xf2, 0x75, 0x1b, 0xd3, 0xac, 0x65, 0x67, - 0xad, 0x66, 0x95, 0x18, 0x94, 0x91, 0x96, 0xc9, 0x5a, 0x04, 0x67, 0x77, 0x88, 0xc5, 0xf0, 0xb3, - 0x7f, 0xfe, 0xe7, 0xb7, 0xa1, 0x6f, 0xe4, 0x79, 0xef, 0x5f, 0x5f, 0xae, 0x9b, 0x67, 0x9a, 0xfb, - 0xb9, 0xdf, 0xe9, 0x4a, 0x77, 0x71, 0xcf, 0xff, 0x6b, 0x44, 0x17, 0xc1, 0x1c, 0xfa, 0x2b, 0x80, - 0xe1, 0x02, 0x66, 0xe8, 0xca, 0x49, 0xc7, 0x39, 0x21, 0x44, 0x3e, 0xfd, 0xc4, 0x27, 0xb7, 0x5f, - 0xfe, 0x25, 0x04, 0x3a, 0x2f, 0x92, 0x37, 0x83, 0x95, 0x34, 0xec, 0xa6, 0xc5, 0xec, 0xe3, 0xc4, - 0x10, 0x6c, 0x54, 0xb8, 0x96, 0x79, 0xa4, 0x04, 0x69, 0x09, 0x90, 0x20, 0x16, 0xf7, 0xd0, 0x01, - 0x80, 0x11, 0xb7, 0x9b, 0x90, 0x7c, 0x62, 0xab, 0x09, 0x21, 0x57, 0x87, 0x68, 0x47, 0xd9, 0xbe, - 0x10, 0x25, 0xdf, 0x47, 0x5f, 0x0d, 0xa9, 0x04, 0xbd, 0x05, 0xf0, 0x92, 0x77, 0x22, 0x45, 0xc3, - 0x9d, 0x58, 0x53, 0xd7, 0x4f, 0x73, 0xf3, 0xb4, 0xfc, 0x0a, 0x9c, 0xb3, 0xb8, 0xd4, 0xd4, 0xdd, - 0xb3, 0x16, 0xd7, 0x80, 0x75, 0xcf, 0x2d, 0xb6, 0x7d, 0x00, 0xa3, 0x62, 0x4c, 0x1d, 0xdb, 0x3b, - 0x7d, 0x53, 0x2c, 0x35, 0xa5, 0x88, 0xcf, 0x09, 0x8a, 0xff, 0x39, 0x41, 0x51, 0x1b, 0x0e, 0xdb, - 0x95, 0xe9, 0x39, 0xf5, 0xdc, 0x98, 0x3b, 0x63, 0x81, 0x2d, 0x82, 0xb9, 0x54, 0xe9, 0x60, 0x1f, - 0x84, 0xfe, 0xb1, 0x0f, 0x66, 0x82, 0x23, 0x17, 0xef, 0xa6, 0x37, 0xfb, 0x00, 0x74, 0xf6, 0x81, - 0x7c, 0xfa, 0x5b, 0xec, 0xd9, 0xdf, 0x93, 0x21, 0x09, 0x2c, 0xfd, 0x1a, 0xbc, 0xba, 0x33, 0xba, - 0xac, 0x6d, 0xaf, 0x6c, 0xbe, 0x7e, 0x97, 0x1e, 0x79, 0xf3, 0x2e, 0x3d, 0xf2, 0xe1, 0x5d, 0x1a, - 0xfc, 0xb2, 0x93, 0x06, 0xcf, 0x3b, 0x69, 0xf0, 0xb2, 0x93, 0x06, 0xaf, 0x3b, 0x69, 0xf0, 0xb6, - 0x93, 0x06, 0xef, 0x3b, 0xe9, 0x91, 0x0f, 0x9d, 0x34, 0xf8, 0xcd, 0x61, 0x7a, 0xe4, 0xe0, 0x30, - 0x0d, 0x5e, 0x1f, 0xa6, 0x47, 0xde, 0x1c, 0xa6, 0x47, 0x1e, 0x6d, 0xd4, 0x6c, 0xe7, 0x49, 0x4d, - 0x69, 0xdb, 0xee, 0x69, 0x90, 0x18, 0x4a, 0x8b, 0xe6, 0xf8, 0x85, 0xfb, 0x17, 0x28, 0xeb, 0x10, - 0xbb, 0x6d, 0x55, 0x30, 0xc9, 0xfa, 0xe6, 0x9c, 0x53, 0xae, 0xd9, 0x39, 0xfc, 0x94, 0x79, 0x9f, - 0x31, 0xfa, 0xbf, 0x97, 0x94, 0xa3, 0x7c, 0xab, 0x6f, 0x7c, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xec, - 0xfa, 0xd2, 0x41, 0x59, 0x12, 0x00, 0x00, + 0x0e, 0x36, 0x5d, 0xf8, 0xd2, 0xe4, 0x2f, 0xf6, 0xc6, 0x5c, 0x94, 0x52, 0x33, 0x75, 0xf7, 0x57, + 0xe3, 0x1c, 0x8b, 0xf1, 0x17, 0x37, 0xa2, 0xe2, 0x76, 0xf2, 0xbf, 0x00, 0x9c, 0xf0, 0x23, 0xa5, + 0x8e, 0xdd, 0xa4, 0x18, 0x7d, 0xeb, 0x50, 0xa8, 0x99, 0xc0, 0x50, 0x0b, 0x98, 0x05, 0xc4, 0xb9, + 0x05, 0x27, 0xe9, 0x2e, 0x65, 0xb8, 0xa1, 0x77, 0x49, 0xc2, 0x9c, 0xe4, 0xe2, 0x00, 0x49, 0x91, + 0x7b, 0x1d, 0xa6, 0x9a, 0x10, 0xf0, 0x5b, 0x3e, 0x61, 0xa1, 0x4f, 0xb8, 0x7c, 0x84, 0xf0, 0x02, + 0x66, 0xa7, 0x50, 0xfd, 0x17, 0x00, 0x27, 0x34, 0xec, 0xd4, 0x0d, 0xb3, 0x9b, 0xa0, 0x9b, 0x87, + 0x54, 0x5f, 0x08, 0x54, 0xed, 0xc1, 0x02, 0x94, 0x6f, 0xf4, 0x05, 0x7a, 0xf1, 0x88, 0x40, 0x3d, + 0xfc, 0x09, 0xc1, 0xa2, 0x1c, 0x94, 0x08, 0xa6, 0x76, 0x8b, 0x98, 0x58, 0x6f, 0x63, 0x42, 0x2d, + 0xbb, 0xc9, 0x9f, 0x63, 0x7c, 0x29, 0xf2, 0x66, 0x1f, 0x00, 0x6d, 0xd2, 0xb7, 0xde, 0x15, 0xc6, + 0x5e, 0x75, 0x9f, 0xc1, 0xc9, 0xae, 0x38, 0x91, 0x53, 0xf9, 0x67, 0x00, 0xc2, 0x02, 0x66, 0xbe, + 0xd8, 0x19, 0x18, 0x6f, 0x1a, 0x0d, 0x4c, 0x1d, 0xc3, 0xc4, 0x5c, 0x6d, 0x5c, 0x7b, 0xb7, 0x81, + 0x10, 0x8c, 0xb8, 0x0b, 0x2e, 0x24, 0xae, 0xf1, 0x6b, 0xb4, 0x0d, 0xdd, 0x3b, 0x72, 0x32, 0xbd, + 0x6a, 0x93, 0x86, 0xc1, 0x78, 0x38, 0x13, 0x0b, 0x97, 0x8e, 0x4e, 0x88, 0x7f, 0xf7, 0x55, 0xee, + 0xbf, 0x6c, 0x57, 0xb0, 0x36, 0x41, 0xfa, 0xf6, 0xe4, 0xff, 0x8c, 0xc2, 0x44, 0x8f, 0x27, 0x52, + 0x61, 0xc2, 0xe4, 0xd5, 0xc8, 0x6f, 0xe2, 0x3d, 0xca, 0x0b, 0xc7, 0x16, 0xbb, 0xa7, 0x49, 0x83, + 0x02, 0xe8, 0x12, 0xa3, 0xef, 0xc0, 0x31, 0x22, 0x9e, 0x80, 0xe0, 0x09, 0x1f, 0xdb, 0x34, 0xfd, + 0x95, 0xa0, 0x25, 0x3c, 0x28, 0x67, 0x0a, 0xca, 0x43, 0xe4, 0x98, 0x3c, 0xf4, 0x75, 0xcf, 0xe8, + 0xc7, 0xe8, 0x9e, 0x33, 0x1f, 0xa5, 0x7b, 0xa2, 0x1f, 0xd8, 0x3d, 0x68, 0x09, 0x46, 0x29, 0x33, + 0x58, 0x8b, 0x26, 0x7f, 0xf5, 0x4b, 0x90, 0x09, 0x07, 0x0c, 0x30, 0x9f, 0xac, 0xc8, 0xdd, 0x44, + 0x68, 0x4b, 0xe1, 0x67, 0x7b, 0x40, 0xf3, 0x90, 0x68, 0x0d, 0x7e, 0x46, 0x70, 0x15, 0x13, 0x62, + 0x35, 0x6b, 0xba, 0x18, 0xda, 0x34, 0x19, 0xe3, 0x64, 0x33, 0x47, 0x34, 0x5b, 0x95, 0xab, 0x92, + 0xba, 0x30, 0xb1, 0x4f, 0xd1, 0x5d, 0x98, 0xac, 0xe0, 0x3a, 0x66, 0xb8, 0xa2, 0x0b, 0x1b, 0xae, + 0x74, 0x19, 0xe3, 0x43, 0x30, 0x4e, 0x79, 0x68, 0xcd, 0x03, 0xfb, 0xbc, 0xdf, 0x85, 0xd3, 0x15, + 0x8b, 0x1a, 0xe5, 0x7a, 0x10, 0x31, 0x1c, 0x82, 0xf8, 0x0b, 0x1f, 0x3e, 0xc0, 0xdc, 0xd3, 0xa0, + 0xeb, 0x91, 0x18, 0x90, 0x42, 0xf2, 0x6f, 0x00, 0x4c, 0x6c, 0x5a, 0x74, 0xc8, 0xa6, 0x3c, 0x07, + 0xc7, 0xea, 0x46, 0x19, 0xd7, 0xf5, 0xaa, 0x55, 0x67, 0x98, 0x78, 0xcd, 0x99, 0xe0, 0x7b, 0xab, + 0x7c, 0x0b, 0x9d, 0x87, 0xe3, 0x04, 0x3b, 0x36, 0x61, 0x7a, 0xd5, 0xc2, 0xf5, 0x0a, 0x4d, 0x86, + 0x33, 0xe1, 0xd9, 0xb8, 0x36, 0x26, 0x36, 0x57, 0xf9, 0x1e, 0x9a, 0x87, 0x9f, 0x7b, 0x4e, 0x22, + 0x29, 0xbe, 0x6f, 0x84, 0xfb, 0x22, 0x61, 0x13, 0x29, 0x14, 0x08, 0xf9, 0x69, 0x14, 0x4a, 0x22, + 0x4e, 0xd1, 0xa4, 0x6b, 0x0c, 0x37, 0xd0, 0x14, 0x8c, 0x32, 0xdc, 0x34, 0x9a, 0x8c, 0x57, 0x56, + 0x5c, 0xf3, 0x56, 0xef, 0x31, 0x59, 0x24, 0x18, 0x6e, 0x59, 0x15, 0x31, 0xdc, 0x34, 0xf7, 0x12, + 0x65, 0x60, 0xa2, 0x82, 0xa9, 0x49, 0x2c, 0xfe, 0x4e, 0x4d, 0x26, 0x84, 0xd2, 0x9e, 0x2d, 0x94, + 0x82, 0x31, 0xff, 0x31, 0x27, 0xc7, 0x32, 0x60, 0x36, 0xa6, 0x75, 0xd7, 0x68, 0x03, 0x46, 0xf9, + 0x43, 0x11, 0x92, 0x12, 0x0b, 0x97, 0x8f, 0x28, 0xd3, 0x41, 0x49, 0xca, 0x26, 0x47, 0xa9, 0x4d, + 0x46, 0x76, 0x35, 0x8f, 0x02, 0xdd, 0x83, 0x89, 0x9e, 0xb3, 0x8d, 0x57, 0x00, 0x57, 0x87, 0x65, + 0xcc, 0xbf, 0x83, 0x0a, 0xda, 0x5e, 0x32, 0x74, 0x0d, 0x42, 0x7b, 0xa7, 0x89, 0x89, 0xee, 0x1e, + 0x20, 0x92, 0x71, 0xde, 0xa0, 0xa9, 0x01, 0xea, 0xbb, 0x16, 0xde, 0xf1, 0x2b, 0x2b, 0xce, 0xbd, + 0xdd, 0x9d, 0xbe, 0x21, 0x33, 0xfe, 0x31, 0x86, 0xcc, 0xc4, 0x07, 0x0d, 0x99, 0xeb, 0x30, 0x56, + 0xc3, 0x8c, 0x4f, 0x0b, 0x6f, 0x5c, 0x0d, 0x31, 0x68, 0xb4, 0x33, 0x35, 0xb1, 0x40, 0x05, 0x08, + 0xbd, 0x5a, 0xa4, 0x98, 0x79, 0xf3, 0x60, 0xf8, 0xe1, 0x12, 0x17, 0xd8, 0x22, 0x66, 0xa9, 0x6b, + 0x30, 0xd1, 0x93, 0x44, 0xb7, 0xb2, 0x1e, 0xe0, 0x5d, 0xaf, 0x0a, 0xdd, 0x4b, 0xf4, 0x39, 0x1c, + 0x6d, 0x1b, 0xf5, 0x96, 0x5f, 0x80, 0x62, 0xb1, 0x18, 0xba, 0x0a, 0x52, 0x37, 0xa0, 0x34, 0x98, + 0xad, 0xd3, 0xe0, 0xd7, 0x23, 0xb1, 0x51, 0x29, 0x2a, 0xff, 0x08, 0x8e, 0xf5, 0x16, 0x01, 0xba, + 0x0e, 0x47, 0x2d, 0x86, 0x1b, 0x34, 0x29, 0x26, 0xe6, 0x57, 0x43, 0x16, 0x8e, 0x26, 0x50, 0x68, + 0x1e, 0x46, 0xc5, 0xd9, 0x38, 0x19, 0xe2, 0xf8, 0xe4, 0x00, 0x5e, 0x75, 0x8d, 0xfc, 0x59, 0x7a, + 0x7e, 0xf2, 0x03, 0x38, 0xbe, 0xc2, 0x07, 0xdb, 0xfb, 0xbf, 0xe9, 0x67, 0xa1, 0x54, 0x35, 0xac, + 0xba, 0x6e, 0x55, 0xbb, 0x03, 0x90, 0x37, 0x67, 0x4c, 0x9b, 0x70, 0xf7, 0xd7, 0xaa, 0xfe, 0x60, + 0x9b, 0xfb, 0x27, 0x80, 0x67, 0x03, 0x5f, 0xf3, 0x28, 0x05, 0xa7, 0x0a, 0x6a, 0x49, 0xd7, 0x8a, + 0x77, 0xf4, 0xd5, 0x2d, 0xed, 0x56, 0xbe, 0xa4, 0xaf, 0xa8, 0xab, 0xf9, 0xed, 0xcd, 0x92, 0x34, + 0x82, 0xbe, 0x01, 0xa7, 0x07, 0x6c, 0xab, 0x5b, 0x9a, 0xbe, 0xac, 0xa9, 0xf9, 0x92, 0x2a, 0x01, + 0x94, 0x86, 0xa9, 0x00, 0xb3, 0xa6, 0xde, 0xd9, 0xcc, 0x2f, 0xab, 0x52, 0x08, 0x4d, 0xc3, 0xb3, + 0x03, 0xf6, 0x62, 0x29, 0x5f, 0xda, 0x2e, 0x4a, 0x61, 0xf4, 0x05, 0xfc, 0xda, 0x80, 0x49, 0x53, + 0xf3, 0x2b, 0x52, 0x04, 0x5d, 0x80, 0x99, 0x43, 0x86, 0x55, 0x55, 0xd3, 0xd6, 0x6e, 0x17, 0xf4, + 0xad, 0xa5, 0x75, 0x75, 0xb9, 0x54, 0x94, 0x46, 0x03, 0xbc, 0x96, 0xb4, 0xad, 0x0d, 0xf5, 0xb6, + 0x70, 0x56, 0x6f, 0x2f, 0xab, 0x45, 0x29, 0xba, 0xf0, 0xef, 0x38, 0x0c, 0xe7, 0xef, 0xac, 0xa1, + 0x7f, 0x00, 0x18, 0x15, 0x07, 0x10, 0x34, 0xd4, 0xf9, 0x24, 0xf5, 0xe5, 0x09, 0x5e, 0xde, 0x49, + 0xed, 0x09, 0xe8, 0xfc, 0x3e, 0x59, 0xaa, 0x5e, 0x79, 0x68, 0x66, 0x29, 0x36, 0x5b, 0x04, 0x37, + 0x30, 0xbd, 0x9f, 0x2d, 0x1b, 0xd4, 0x32, 0xb3, 0x2d, 0x8a, 0xc9, 0xa5, 0x41, 0x13, 0x65, 0x46, + 0xb3, 0x62, 0x90, 0x8a, 0xb0, 0xb6, 0x31, 0xcd, 0x5a, 0x76, 0xd6, 0x6a, 0x56, 0x89, 0x41, 0x19, + 0x69, 0x99, 0xac, 0x45, 0x70, 0x76, 0x87, 0x58, 0x0c, 0x3f, 0xfa, 0xd3, 0xdf, 0x9e, 0x84, 0xae, + 0xc8, 0xf3, 0xde, 0x9f, 0xc2, 0x5c, 0xb7, 0x0c, 0x68, 0xee, 0x87, 0xfe, 0x20, 0x50, 0xba, 0x9b, + 0x7b, 0xfe, 0x3f, 0x27, 0xba, 0x08, 0xe6, 0xd0, 0xdf, 0x01, 0x0c, 0x17, 0x30, 0x43, 0xe7, 0x8e, + 0x3b, 0xed, 0x09, 0x9d, 0xf2, 0xc9, 0x07, 0x42, 0xf9, 0xe7, 0xe0, 0xf9, 0xef, 0x42, 0xae, 0xd0, + 0xef, 0x05, 0x0b, 0x6d, 0xd8, 0x4d, 0x8b, 0xd9, 0xc7, 0x68, 0xf5, 0x1d, 0x82, 0xe5, 0x12, 0x6c, + 0x54, 0xb8, 0xda, 0x79, 0xa4, 0x04, 0xa9, 0x0d, 0x10, 0x29, 0x36, 0xf7, 0x50, 0x07, 0xc0, 0x88, + 0xdb, 0x8e, 0x48, 0x3e, 0xb6, 0x57, 0x85, 0xd4, 0xf3, 0x43, 0xf4, 0xb3, 0xfc, 0xf8, 0xff, 0xa4, + 0xf5, 0x9b, 0xe8, 0xab, 0x21, 0xb5, 0xa2, 0xff, 0x02, 0x78, 0xc6, 0x3b, 0xf4, 0xa2, 0xe1, 0x0e, + 0xc5, 0xa9, 0x8b, 0x27, 0xb9, 0x79, 0x6a, 0x7f, 0xfd, 0x69, 0xcb, 0x57, 0x4d, 0xdd, 0x3c, 0x6d, + 0xf9, 0x0e, 0x58, 0xf7, 0xdc, 0x72, 0xfe, 0x33, 0x80, 0x51, 0x31, 0x27, 0x8f, 0x6c, 0xde, 0xbe, + 0x31, 0x9a, 0x9a, 0x52, 0xc4, 0xf7, 0x0c, 0xc5, 0xff, 0x9e, 0xa1, 0xa8, 0x0d, 0x87, 0xed, 0xca, + 0x3f, 0xfd, 0xb4, 0x72, 0x2f, 0xcf, 0x9d, 0xb2, 0x7e, 0x17, 0xc1, 0x5c, 0xaa, 0xf4, 0x6c, 0x1f, + 0x84, 0xfe, 0xb8, 0x0f, 0x66, 0x82, 0x85, 0x89, 0x77, 0xe7, 0xab, 0x7d, 0x00, 0x3a, 0xfb, 0x40, + 0x3e, 0xf9, 0x2d, 0xfb, 0xe8, 0x0f, 0xc9, 0x90, 0x04, 0x96, 0x7e, 0x02, 0x5e, 0xdc, 0x18, 0x5d, + 0xd6, 0xb6, 0x57, 0x36, 0x5f, 0xbe, 0x4e, 0x8f, 0xbc, 0x7a, 0x9d, 0x1e, 0x79, 0xfb, 0x3a, 0x0d, + 0x7e, 0xdc, 0x49, 0x83, 0xa7, 0x9d, 0x34, 0x78, 0xde, 0x49, 0x83, 0x97, 0x9d, 0x34, 0xf8, 0x6b, + 0x27, 0x0d, 0xde, 0x74, 0xd2, 0x23, 0x6f, 0x3b, 0x69, 0xf0, 0xf8, 0x20, 0x3d, 0xf2, 0xec, 0x20, + 0x0d, 0x5e, 0x1e, 0xa4, 0x47, 0x5e, 0x1d, 0xa4, 0x47, 0xee, 0x6d, 0xd4, 0x6c, 0xe7, 0x41, 0x4d, + 0x69, 0xdb, 0xee, 0x69, 0x95, 0x18, 0x4a, 0x8b, 0xe6, 0xf8, 0x85, 0xfb, 0x17, 0x2d, 0xeb, 0x10, + 0xbb, 0x6d, 0x55, 0x30, 0xc9, 0xfa, 0xe6, 0x9c, 0x53, 0xae, 0xd9, 0x39, 0xfc, 0x90, 0x79, 0x9f, + 0x59, 0xfa, 0xbf, 0xe7, 0x94, 0xa3, 0x3c, 0x13, 0x97, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0x56, + 0x2f, 0xa3, 0x4e, 0xf9, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/policer/public_crudapi.vesapi.go b/pbgo/extschema/schema/policer/public_crudapi.vesapi.go index e2a7d5000..d57b4debe 100644 --- a/pbgo/extschema/schema/policer/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/policer/public_crudapi.vesapi.go @@ -2874,10 +2874,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2934,10 +2938,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3040,10 +3048,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/policy/types.pb.go b/pbgo/extschema/schema/policy/types.pb.go index 07dcf7bd2..81339b6cf 100644 --- a/pbgo/extschema/schema/policy/types.pb.go +++ b/pbgo/extschema/schema/policy/types.pb.go @@ -3842,14 +3842,14 @@ func (m *PrefixMatchList) GetInvertMatch() bool { // Asn Match List // // x-displayName: "ASN Match List" -// An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. +// An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. type AsnMatchList struct { // as numbers // // x-displayName: "AS Numbers" // x-example: "[713, 7932, 847325, 4683, 15269, 1000001]" // x-required - // An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. + // An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. AsNumbers []uint32 `protobuf:"varint,1,rep,packed,name=as_numbers,json=asNumbers,proto3" json:"as_numbers,omitempty"` } @@ -7564,6 +7564,14 @@ type RequestMatcher struct { // instances. The actual HTTP header values are extracted from the request API as a list of strings for each HTTP header type. // Note that all specified header predicates must evaluate to true. Headers []*HeaderMatcherType `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty"` + // JWT claims + // + // x-displayName: "JWT Claims" + // A list of predicates for various JWT claims that need to match. The criteria for matching each JWT claim are described in individual JWTClaimMatcherType + // instances. The actual JWT claims values are extracted from the JWT payload as a list of strings. + // Note that all specified JWT claim predicates must evaluate to true. + // Note that this feature only works on LBs with JWT Validation feature enabled. + JwtClaims []*JWTClaimMatcherType `protobuf:"bytes,4,rep,name=jwt_claims,json=jwtClaims,proto3" json:"jwt_claims,omitempty"` // cookie matchers // // x-displayName: "Cookie Matchers" @@ -7615,6 +7623,13 @@ func (m *RequestMatcher) GetHeaders() []*HeaderMatcherType { return nil } +func (m *RequestMatcher) GetJwtClaims() []*JWTClaimMatcherType { + if m != nil { + return m.JwtClaims + } + return nil +} + func (m *RequestMatcher) GetCookieMatchers() []*CookieMatcherType { if m != nil { return m.CookieMatchers @@ -8884,824 +8899,828 @@ func init() { } var fileDescriptor_d3fbb7e1d0915ae2 = []byte{ - // 13063 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x78, 0x64, 0xc9, - 0x75, 0x18, 0x86, 0x0b, 0x34, 0x80, 0x46, 0xe1, 0x55, 0x73, 0xe7, 0x85, 0xc1, 0xce, 0x60, 0x7b, - 0x7b, 0x1f, 0x9c, 0x05, 0x7b, 0x31, 0xf7, 0xfd, 0x18, 0x8a, 0xbb, 0x7b, 0xbb, 0x71, 0x81, 0x6e, - 0x4c, 0xbf, 0xf6, 0x76, 0x63, 0x66, 0x30, 0x12, 0xd5, 0xba, 0x8f, 0xba, 0x40, 0x73, 0x81, 0x6e, - 0xb0, 0xbb, 0xb1, 0x33, 0x90, 0xb3, 0xf1, 0x88, 0x96, 0x68, 0x99, 0x76, 0x2c, 0x99, 0x89, 0x63, - 0x9a, 0xb1, 0x15, 0x59, 0x7e, 0x49, 0xeb, 0xd8, 0x91, 0x9d, 0xd8, 0xb1, 0xd5, 0x1b, 0x6b, 0xac, - 0x44, 0x0e, 0xb3, 0xb1, 0x93, 0x49, 0x62, 0xc7, 0xd4, 0xda, 0x89, 0xc5, 0x65, 0xec, 0xd0, 0x79, - 0x58, 0x0c, 0xad, 0x28, 0xb2, 0x13, 0x7f, 0xc9, 0x57, 0x75, 0xef, 0x6d, 0xdc, 0x02, 0x1a, 0x98, - 0xd9, 0x25, 0x45, 0x7d, 0xfa, 0xb4, 0xbf, 0xd0, 0xe7, 0xd4, 0xa9, 0x53, 0xa7, 0xce, 0x39, 0x75, - 0xea, 0x54, 0xd5, 0xad, 0x02, 0x48, 0xbd, 0x85, 0xba, 0x2b, 0xcd, 0xf6, 0x8d, 0xae, 0xbb, 0x83, - 0xf6, 0xec, 0x1b, 0xfb, 0xed, 0xdd, 0xa6, 0x7b, 0x78, 0xa3, 0x77, 0xb8, 0x8f, 0xba, 0x2b, 0xfb, - 0x9d, 0x76, 0xaf, 0xcd, 0x5e, 0x08, 0x28, 0x56, 0x02, 0x8a, 0x95, 0x80, 0x62, 0xf1, 0x95, 0xed, - 0x66, 0x6f, 0xe7, 0xc0, 0x59, 0x71, 0xdb, 0x7b, 0x37, 0xb6, 0xdb, 0xdb, 0xed, 0x1b, 0x84, 0xd8, - 0x39, 0xf0, 0x09, 0x44, 0x00, 0xf2, 0x2b, 0x60, 0xb2, 0xf8, 0xec, 0x76, 0xbb, 0xbd, 0xbd, 0x8b, - 0x8e, 0xa8, 0x7a, 0xcd, 0x3d, 0xd4, 0xed, 0xd9, 0x7b, 0xfb, 0x21, 0xc1, 0x4b, 0xb4, 0x1c, 0xf6, - 0xfe, 0x7e, 0xc3, 0x6f, 0x76, 0xd0, 0x7d, 0x7b, 0x77, 0x37, 0x2e, 0xcd, 0xe2, 0x65, 0x9a, 0xae, - 0x85, 0x7a, 0x61, 0xc1, 0x33, 0x74, 0x41, 0x7b, 0xbf, 0xd7, 0x6c, 0xb7, 0xa2, 0x5a, 0x57, 0xe8, - 0xc2, 0x38, 0xc3, 0xab, 0x74, 0xd1, 0x5b, 0xf6, 0x6e, 0xd3, 0xb3, 0x7b, 0x28, 0x2c, 0x3d, 0xa6, - 0x9e, 0xb7, 0x9a, 0xe8, 0x7e, 0x83, 0x66, 0xfd, 0xec, 0x49, 0x8a, 0x6e, 0xbc, 0x81, 0xf4, 0xb7, - 0x18, 0xf0, 0x8c, 0xb1, 0xbf, 0xbf, 0x16, 0xf6, 0xe6, 0x76, 0xb3, 0xbd, 0x6b, 0x63, 0x06, 0xb9, - 0x76, 0xab, 0x87, 0x1e, 0xf4, 0x58, 0x1b, 0x9c, 0x43, 0x0f, 0xdc, 0xdd, 0x03, 0x0f, 0x35, 0xde, - 0x8a, 0xca, 0x16, 0x98, 0x14, 0x73, 0x7d, 0x4e, 0x90, 0x56, 0x68, 0xdd, 0xc7, 0xb5, 0xb2, 0x32, - 0x8c, 0x67, 0xfd, 0x70, 0x1f, 0x59, 0x30, 0x64, 0x37, 0xc0, 0xb2, 0xaf, 0x83, 0x49, 0x37, 0x68, - 0x6d, 0x61, 0x94, 0x30, 0x7e, 0x69, 0x65, 0x98, 0x51, 0x57, 0x56, 0x51, 0x0f, 0xb9, 0x31, 0xd9, - 0xac, 0xa8, 0x1a, 0x9b, 0x01, 0x33, 0xe1, 0xcf, 0x46, 0xcb, 0xde, 0x43, 0x0b, 0x63, 0x29, 0xe6, - 0xfa, 0x54, 0x76, 0xea, 0x17, 0xfe, 0xd9, 0xa3, 0xb1, 0x44, 0x67, 0x74, 0xe1, 0x75, 0x6b, 0x3a, - 0x2c, 0x2e, 0xdb, 0x7b, 0x28, 0xfd, 0x8b, 0x74, 0x97, 0x6b, 0xcd, 0xed, 0x96, 0xdd, 0x3b, 0xe8, + // 13134 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x78, 0x5c, 0x49, + 0x76, 0x18, 0x86, 0x0b, 0x34, 0x80, 0x46, 0xe1, 0x55, 0xbc, 0x7c, 0x81, 0x20, 0x89, 0xe9, 0xe9, + 0x79, 0x2c, 0x07, 0xdb, 0x03, 0xde, 0xf7, 0x83, 0xab, 0x9d, 0x99, 0xdb, 0x8d, 0x0b, 0x74, 0x83, + 0xfd, 0x9a, 0xdb, 0x0d, 0x92, 0xa0, 0xb4, 0x6a, 0xdd, 0x47, 0x5d, 0xb0, 0x77, 0x80, 0x6e, 0x6c, + 0x77, 0x63, 0x48, 0xc8, 0x99, 0x98, 0x1a, 0x4b, 0xb2, 0xbc, 0x79, 0xac, 0xbc, 0x89, 0x93, 0xf5, + 0xc6, 0x71, 0x64, 0xc5, 0xb2, 0xa5, 0x49, 0xec, 0xc8, 0x4e, 0xa4, 0xd8, 0x02, 0x63, 0xd1, 0x4a, + 0xe4, 0x6c, 0xc6, 0x76, 0x42, 0x27, 0x7e, 0xac, 0x27, 0x4e, 0xac, 0x9d, 0x8d, 0x9d, 0x75, 0x1e, + 0xd6, 0x7a, 0xa5, 0x28, 0xb2, 0x13, 0x7f, 0xc9, 0x57, 0x75, 0xef, 0x6d, 0xdc, 0x6a, 0x34, 0x40, + 0xce, 0xec, 0x5a, 0xfe, 0xf4, 0x69, 0x7e, 0xa1, 0xcf, 0xa9, 0x53, 0xa7, 0x4e, 0x9d, 0x73, 0xea, + 0xd4, 0xa9, 0xaa, 0x5b, 0x05, 0x90, 0x7a, 0x1b, 0x75, 0x57, 0x9a, 0xed, 0xeb, 0x5d, 0xf7, 0x1e, + 0xda, 0xb5, 0xaf, 0xef, 0xb5, 0x77, 0x9a, 0xee, 0xc1, 0xf5, 0xde, 0xc1, 0x1e, 0xea, 0xae, 0xec, + 0x75, 0xda, 0xbd, 0x36, 0x7b, 0x2e, 0xa0, 0x58, 0x09, 0x28, 0x56, 0x02, 0x8a, 0xc5, 0x57, 0xb7, + 0x9b, 0xbd, 0x7b, 0xfb, 0xce, 0x8a, 0xdb, 0xde, 0xbd, 0xbe, 0xdd, 0xde, 0x6e, 0x5f, 0x27, 0xc4, + 0xce, 0xbe, 0x4f, 0x20, 0x02, 0x90, 0x5f, 0x01, 0x93, 0xc5, 0xe7, 0xb6, 0xdb, 0xed, 0xed, 0x1d, + 0x74, 0x44, 0xd5, 0x6b, 0xee, 0xa2, 0x6e, 0xcf, 0xde, 0xdd, 0x0b, 0x09, 0x5e, 0xa6, 0xe5, 0xb0, + 0xf7, 0xf6, 0x1a, 0x7e, 0xb3, 0x83, 0xee, 0xdb, 0x3b, 0x3b, 0x71, 0x69, 0x16, 0x2f, 0xd2, 0x74, + 0x2d, 0xd4, 0x0b, 0x0b, 0x2e, 0xd3, 0x05, 0xed, 0xbd, 0x5e, 0xb3, 0xdd, 0x8a, 0x6a, 0x5d, 0xa2, + 0x0b, 0xe3, 0x0c, 0xaf, 0xd0, 0x45, 0x6f, 0xdb, 0x3b, 0x4d, 0xcf, 0xee, 0xa1, 0xb0, 0x74, 0x40, + 0x3d, 0x6f, 0x37, 0xd1, 0xfd, 0x06, 0xcd, 0xfa, 0xb9, 0xe3, 0x14, 0xdd, 0x78, 0x03, 0xe9, 0x6f, + 0x33, 0xe0, 0xb2, 0xb1, 0xb7, 0xb7, 0x16, 0xf6, 0xe6, 0x56, 0xb3, 0xbd, 0x63, 0x63, 0x06, 0xb9, + 0x76, 0xab, 0x87, 0x1e, 0xf4, 0x58, 0x1b, 0x9c, 0x41, 0x0f, 0xdc, 0x9d, 0x7d, 0x0f, 0x35, 0xde, + 0x8e, 0xca, 0x16, 0x98, 0x14, 0x73, 0x6d, 0x4e, 0x90, 0x56, 0x68, 0xdd, 0xc7, 0xb5, 0xb2, 0x32, + 0x8c, 0x67, 0xfd, 0x60, 0x0f, 0x59, 0x30, 0x64, 0xd7, 0xc7, 0xb2, 0x6f, 0x80, 0x49, 0x37, 0x68, + 0x6d, 0x61, 0x94, 0x30, 0x7e, 0x79, 0x65, 0x98, 0x51, 0x57, 0x56, 0x51, 0x0f, 0xb9, 0x31, 0xd9, + 0xac, 0xa8, 0x1a, 0x9b, 0x01, 0x33, 0xe1, 0xcf, 0x46, 0xcb, 0xde, 0x45, 0x0b, 0x63, 0x29, 0xe6, + 0xda, 0x54, 0x76, 0xea, 0x97, 0xfe, 0xd1, 0xe3, 0xb1, 0x44, 0x67, 0x74, 0xe1, 0x0d, 0x6b, 0x3a, + 0x2c, 0x2e, 0xdb, 0xbb, 0x28, 0xfd, 0xcb, 0x74, 0x97, 0x6b, 0xcd, 0xed, 0x96, 0xdd, 0xdb, 0xef, 0xa0, 0xa8, 0xcb, 0x1c, 0x98, 0xe9, 0x46, 0xb8, 0x46, 0xd3, 0x23, 0xbd, 0x9d, 0xcd, 0xce, 0x62, - 0x6e, 0xc9, 0xe5, 0x89, 0x85, 0xff, 0xef, 0x97, 0xbf, 0xf0, 0x13, 0x8c, 0x35, 0x3d, 0x20, 0x29, - 0x78, 0xdf, 0xf3, 0x1e, 0xfc, 0x53, 0x06, 0x5c, 0x8d, 0xf5, 0xc0, 0xe8, 0xf5, 0x6c, 0xf7, 0x4d, - 0xac, 0xdd, 0xa8, 0x0b, 0xb7, 0xc1, 0xf9, 0xc8, 0x6a, 0x36, 0x29, 0x6c, 0x60, 0x9b, 0x87, 0x76, - 0x7b, 0xe9, 0x4c, 0xbb, 0x0d, 0x78, 0x59, 0x91, 0xe1, 0x8f, 0x50, 0xdf, 0xf3, 0x8e, 0x7e, 0x12, - 0xcc, 0x65, 0xdb, 0xe4, 0x67, 0xd4, 0xb3, 0x2b, 0x20, 0xe9, 0xb4, 0xc3, 0xba, 0xb8, 0x3b, 0x53, - 0xd6, 0xa4, 0x13, 0x50, 0xa4, 0xff, 0x72, 0x82, 0xb2, 0x2b, 0x25, 0x43, 0xa7, 0xbd, 0xcb, 0x7e, - 0x81, 0x01, 0x8b, 0x91, 0x56, 0x8e, 0x0c, 0x1c, 0x36, 0xd7, 0x5d, 0x60, 0x52, 0x63, 0xd7, 0xa7, - 0x05, 0x7e, 0x78, 0x87, 0xce, 0xf0, 0x97, 0xec, 0x45, 0x2c, 0xfc, 0xc4, 0x97, 0x98, 0x31, 0xf8, - 0x30, 0x89, 0x7f, 0x8e, 0x7f, 0x89, 0x19, 0x5d, 0x60, 0xac, 0x85, 0xb0, 0xad, 0xe3, 0xf4, 0x5d, - 0xf6, 0xc7, 0x62, 0x82, 0x0c, 0x06, 0xd5, 0x91, 0x20, 0xa3, 0x4f, 0x29, 0xc8, 0xf1, 0xb1, 0x9a, - 0xbd, 0x10, 0xb5, 0x0e, 0x5f, 0x1f, 0x22, 0xc7, 0x71, 0xf2, 0x2e, 0xfb, 0x07, 0x18, 0x70, 0x75, - 0x88, 0x9b, 0x1c, 0x49, 0x32, 0x46, 0x24, 0x11, 0x9e, 0x28, 0xc9, 0x09, 0x07, 0x3c, 0x45, 0x94, - 0x2b, 0x27, 0x3c, 0x6a, 0x20, 0xcb, 0x01, 0x88, 0x0a, 0x1b, 0x91, 0x7d, 0x8f, 0xe4, 0x48, 0x10, - 0x39, 0x5e, 0x18, 0x2e, 0x07, 0xed, 0x20, 0xa7, 0xb4, 0x7c, 0x29, 0x64, 0x4e, 0x13, 0x77, 0xd3, - 0x22, 0x80, 0xab, 0x76, 0xcf, 0x5e, 0x3f, 0xb0, 0x3b, 0x5e, 0xe4, 0x27, 0xcf, 0x82, 0xe9, 0x80, - 0x75, 0xdc, 0xcb, 0x40, 0x80, 0x22, 0x8e, 0xf6, 0x67, 0x19, 0x30, 0x95, 0x6d, 0xf7, 0x0c, 0xe2, - 0x5d, 0xec, 0x32, 0x48, 0xb4, 0xda, 0x2d, 0x44, 0x06, 0xc4, 0xb4, 0x70, 0xe1, 0x98, 0x90, 0xe6, - 0xde, 0x7e, 0xef, 0x30, 0x3f, 0x62, 0x11, 0x1a, 0x76, 0x0d, 0x9c, 0xc7, 0xbd, 0xeb, 0xbe, 0xd9, - 0xdc, 0x6f, 0xec, 0x77, 0xda, 0x2e, 0xea, 0x76, 0x9b, 0xad, 0x6d, 0x32, 0x08, 0x4e, 0xaf, 0x7a, - 0xce, 0x69, 0xf7, 0x6a, 0x6f, 0x36, 0xf7, 0xab, 0x83, 0x0a, 0xd9, 0x25, 0x30, 0x6d, 0x93, 0xd6, - 0x89, 0xc1, 0xd8, 0xf9, 0x47, 0x7d, 0x66, 0xf4, 0x71, 0x9f, 0x61, 0x3e, 0xe8, 0x33, 0x63, 0x42, - 0x46, 0xdc, 0x48, 0x24, 0x19, 0x38, 0x9a, 0xfe, 0xf3, 0x0c, 0x98, 0x29, 0xb5, 0xbd, 0xa6, 0x7f, - 0x18, 0x8a, 0xca, 0x81, 0x49, 0x0f, 0xf9, 0xf6, 0xc1, 0x6e, 0xef, 0x09, 0xd2, 0x46, 0x64, 0xec, - 0x6b, 0x60, 0xfe, 0xc3, 0x09, 0x3b, 0xd7, 0xfd, 0x28, 0x92, 0xfe, 0xe4, 0x38, 0x98, 0xba, 0x63, - 0xfb, 0xc7, 0x34, 0x3a, 0xf6, 0x74, 0x1a, 0xbd, 0x6f, 0xfb, 0x27, 0x34, 0xca, 0x9c, 0xad, 0xd1, - 0xfb, 0xb6, 0x4f, 0x6b, 0x94, 0xad, 0x83, 0x4b, 0x98, 0x4f, 0xb3, 0xd5, 0xd8, 0x6b, 0xb7, 0x9a, - 0xbd, 0x76, 0xa7, 0xd9, 0xda, 0x6e, 0xec, 0xb5, 0x3d, 0xb4, 0x30, 0x71, 0x3a, 0xab, 0xec, 0xe4, - 0xd7, 0xde, 0x66, 0xbe, 0xd9, 0x67, 0x98, 0xfc, 0x88, 0x85, 0xc5, 0x28, 0xb4, 0x4a, 0x83, 0xca, - 0xa5, 0xb6, 0x87, 0xd8, 0x1f, 0x65, 0xc0, 0x52, 0x3c, 0xbc, 0x36, 0xbc, 0x28, 0x28, 0x11, 0xe7, - 0xee, 0xb4, 0x77, 0x17, 0x26, 0x09, 0xfb, 0x27, 0x8f, 0xf6, 0xe3, 0xe1, 0x2c, 0x0b, 0x88, 0x7b, - 0x7f, 0x91, 0x19, 0x4d, 0xe1, 0xe6, 0x9f, 0xb1, 0xcf, 0x88, 0x7c, 0x0d, 0xc0, 0x7a, 0x76, 0xcf, - 0x6e, 0x6c, 0x63, 0x37, 0x1f, 0xb4, 0x9c, 0x24, 0x2d, 0x9f, 0x16, 0xc1, 0x8f, 0x8d, 0x8a, 0x78, - 0x57, 0xa1, 0x77, 0x7c, 0xc8, 0xac, 0x81, 0xb9, 0xcf, 0xde, 0xef, 0x35, 0xc2, 0xf4, 0x04, 0xa7, - 0x08, 0x53, 0x4f, 0xa7, 0xb5, 0xd9, 0xcf, 0xde, 0xef, 0xdd, 0x1e, 0xd4, 0x62, 0x6b, 0xe0, 0x22, - 0xe6, 0xe3, 0xee, 0xda, 0xcd, 0xbd, 0x6e, 0x9c, 0x1d, 0x78, 0x4a, 0x23, 0x7c, 0xf6, 0x7e, 0x2f, - 0x47, 0x2a, 0x1f, 0x31, 0xcd, 0xa6, 0x69, 0x17, 0x3c, 0xff, 0xa8, 0xcf, 0x8c, 0x3d, 0xee, 0x33, - 0xe3, 0x1f, 0xf4, 0x99, 0x49, 0x31, 0xa3, 0x64, 0xf8, 0x8c, 0xba, 0x91, 0x48, 0x8e, 0xc3, 0x89, - 0x8d, 0x44, 0x72, 0x14, 0x8e, 0x6d, 0x24, 0x92, 0x09, 0x38, 0x9e, 0xfe, 0xd6, 0x28, 0xb8, 0x40, + 0x6e, 0xc9, 0xe5, 0x89, 0x85, 0xff, 0xef, 0x57, 0x7f, 0xfc, 0x4b, 0x8c, 0x35, 0xdd, 0x27, 0x29, + 0x78, 0xbf, 0xe3, 0x3d, 0xf8, 0x87, 0x0c, 0xb8, 0x12, 0xeb, 0x81, 0xd1, 0xeb, 0xd9, 0xee, 0x5b, + 0x58, 0xbb, 0x51, 0x17, 0x6e, 0x81, 0xb3, 0x91, 0xd5, 0x6c, 0x52, 0xd8, 0xc0, 0x36, 0x0f, 0xed, + 0xf6, 0xf2, 0xa9, 0x76, 0xeb, 0xf3, 0xb2, 0x22, 0xc3, 0x1f, 0xa1, 0x7e, 0xc7, 0x3b, 0xfa, 0x69, + 0x30, 0x97, 0x6d, 0x93, 0x9f, 0x51, 0xcf, 0x2e, 0x81, 0xa4, 0xd3, 0x0e, 0xeb, 0xe2, 0xee, 0x4c, + 0x59, 0x93, 0x4e, 0x40, 0x91, 0xfe, 0x73, 0x09, 0xca, 0xae, 0x94, 0x0c, 0x9d, 0xf6, 0x0e, 0xfb, + 0xe3, 0x0c, 0x58, 0x8c, 0xb4, 0x72, 0x64, 0xe0, 0xb0, 0xb9, 0xee, 0x02, 0x93, 0x1a, 0xbb, 0x36, + 0x2d, 0xf0, 0xc3, 0x3b, 0x74, 0x8a, 0xbf, 0x64, 0xcf, 0x63, 0xe1, 0x27, 0xbe, 0xcc, 0x8c, 0xc1, + 0x87, 0x49, 0xfc, 0x73, 0xfc, 0xcb, 0xcc, 0xe8, 0x02, 0x63, 0x2d, 0x84, 0x6d, 0x0d, 0xd2, 0x77, + 0xd9, 0x1f, 0x8b, 0x09, 0xd2, 0x1f, 0x54, 0x47, 0x82, 0x8c, 0x3e, 0xa3, 0x20, 0x83, 0x63, 0x35, + 0x7b, 0x2e, 0x6a, 0x1d, 0xbe, 0x31, 0x44, 0x8e, 0x41, 0xf2, 0x2e, 0xfb, 0x87, 0x18, 0x70, 0x65, + 0x88, 0x9b, 0x1c, 0x49, 0x32, 0x46, 0x24, 0x11, 0x9e, 0x2a, 0xc9, 0x31, 0x07, 0x3c, 0x41, 0x94, + 0x4b, 0xc7, 0x3c, 0xaa, 0x2f, 0xcb, 0x3e, 0x88, 0x0a, 0x1b, 0x91, 0x7d, 0x8f, 0xe4, 0x48, 0x10, + 0x39, 0x5e, 0x1c, 0x2e, 0x07, 0xed, 0x20, 0x27, 0xb4, 0x7c, 0x21, 0x64, 0x4e, 0x13, 0x77, 0xd3, + 0x22, 0x80, 0xab, 0x76, 0xcf, 0x5e, 0xdf, 0xb7, 0x3b, 0x5e, 0xe4, 0x27, 0xcf, 0x81, 0xe9, 0x80, + 0x75, 0xdc, 0xcb, 0x40, 0x80, 0x22, 0x8e, 0xf6, 0x33, 0x0c, 0x98, 0xca, 0xb6, 0x7b, 0x06, 0xf1, + 0x2e, 0x76, 0x19, 0x24, 0x5a, 0xed, 0x16, 0x22, 0x03, 0x62, 0x5a, 0x38, 0x37, 0x20, 0xa4, 0xb9, + 0xbb, 0xd7, 0x3b, 0xc8, 0x8f, 0x58, 0x84, 0x86, 0x5d, 0x03, 0x67, 0x71, 0xef, 0xba, 0x6f, 0x35, + 0xf7, 0x1a, 0x7b, 0x9d, 0xb6, 0x8b, 0xba, 0xdd, 0x66, 0x6b, 0x9b, 0x0c, 0x82, 0x93, 0xab, 0x9e, + 0x71, 0xda, 0xbd, 0xda, 0x5b, 0xcd, 0xbd, 0x6a, 0xbf, 0x42, 0x76, 0x09, 0x4c, 0xdb, 0xa4, 0x75, + 0x62, 0x30, 0x76, 0xfe, 0xf1, 0x21, 0x33, 0xfa, 0xe4, 0x90, 0x61, 0x3e, 0x3c, 0x64, 0xc6, 0x84, + 0x8c, 0xb8, 0x91, 0x48, 0x32, 0x70, 0x34, 0xfd, 0xa7, 0x19, 0x30, 0x53, 0x6a, 0x7b, 0x4d, 0xff, + 0x20, 0x14, 0x95, 0x03, 0x93, 0x1e, 0xf2, 0xed, 0xfd, 0x9d, 0xde, 0x53, 0xa4, 0x8d, 0xc8, 0xd8, + 0xd7, 0xc1, 0xfc, 0x47, 0x13, 0x76, 0xae, 0xfb, 0x71, 0x24, 0xfd, 0xc9, 0x71, 0x30, 0x75, 0xdb, + 0xf6, 0x07, 0x34, 0x3a, 0xf6, 0x6c, 0x1a, 0xbd, 0x6f, 0xfb, 0xc7, 0x34, 0xca, 0x9c, 0xae, 0xd1, + 0xfb, 0xb6, 0x4f, 0x6b, 0x94, 0xad, 0x83, 0x0b, 0x98, 0x4f, 0xb3, 0xd5, 0xd8, 0x6d, 0xb7, 0x9a, + 0xbd, 0x76, 0xa7, 0xd9, 0xda, 0x6e, 0xec, 0xb6, 0x3d, 0xb4, 0x30, 0x71, 0x32, 0xab, 0xec, 0xe4, + 0xd7, 0xdf, 0x61, 0xbe, 0x75, 0xc8, 0x30, 0xf9, 0x11, 0x0b, 0x8b, 0x51, 0x68, 0x95, 0xfa, 0x95, + 0x4b, 0x6d, 0x0f, 0xb1, 0x3f, 0xca, 0x80, 0xa5, 0x78, 0x78, 0x6d, 0x78, 0x51, 0x50, 0x22, 0xce, + 0xdd, 0x69, 0xef, 0x2c, 0x4c, 0x12, 0xf6, 0x4f, 0x1f, 0xed, 0x83, 0xe1, 0x2c, 0x0b, 0x88, 0x7b, + 0x7f, 0x91, 0x19, 0x4d, 0xe1, 0xe6, 0x2f, 0xdb, 0xa7, 0x44, 0xbe, 0x06, 0x60, 0x3d, 0xbb, 0x67, + 0x37, 0xb6, 0xb1, 0x9b, 0xf7, 0x5b, 0x4e, 0x92, 0x96, 0x4f, 0x8a, 0xe0, 0x03, 0xa3, 0x22, 0xde, + 0x55, 0xe8, 0x0d, 0x0e, 0x99, 0x35, 0x30, 0xf7, 0xf9, 0xfb, 0xbd, 0x46, 0x98, 0x9e, 0xe0, 0x14, + 0x61, 0xea, 0xd9, 0xb4, 0x36, 0xfb, 0xf9, 0xfb, 0xbd, 0x5b, 0xfd, 0x5a, 0x6c, 0x0d, 0x9c, 0xc7, + 0x7c, 0xdc, 0x1d, 0xbb, 0xb9, 0xdb, 0x8d, 0xb3, 0x03, 0xcf, 0x68, 0x84, 0xcf, 0xdf, 0xef, 0xe5, + 0x48, 0xe5, 0x23, 0xa6, 0xd9, 0x34, 0xed, 0x82, 0x67, 0x1f, 0x1f, 0x32, 0x63, 0x4f, 0x0e, 0x99, + 0xf1, 0x0f, 0x0f, 0x99, 0x49, 0x31, 0xa3, 0x64, 0xf8, 0x8c, 0xba, 0x91, 0x48, 0x8e, 0xc3, 0x89, + 0x8d, 0x44, 0x72, 0x14, 0x8e, 0x6d, 0x24, 0x92, 0x09, 0x38, 0x9e, 0xfe, 0xf6, 0x28, 0x38, 0x47, 0xc2, 0x44, 0xab, 0x67, 0xa1, 0xfb, 0x9d, 0x66, 0x0f, 0x85, 0xde, 0xc9, 0x83, 0xb9, 0x66, 0xab, - 0x8b, 0x3a, 0xbd, 0x20, 0x3e, 0xb5, 0x7a, 0x41, 0x84, 0x08, 0xed, 0xd1, 0x19, 0x5b, 0xf8, 0xe9, - 0xd7, 0xac, 0xd9, 0x80, 0x22, 0xac, 0xcf, 0x7e, 0x1a, 0x40, 0xb4, 0x8b, 0xf6, 0x50, 0xab, 0xd7, - 0xe8, 0xa2, 0x5d, 0xe4, 0xf6, 0xda, 0x1d, 0x32, 0x00, 0xa7, 0xb2, 0xec, 0x60, 0xe2, 0x0b, 0x7f, - 0x40, 0xc6, 0x9a, 0x0f, 0x69, 0x6b, 0x21, 0x29, 0xfb, 0x2a, 0x48, 0xee, 0xb7, 0xbb, 0x4d, 0xa2, - 0x88, 0x31, 0x32, 0xed, 0xa6, 0x87, 0x1b, 0x2d, 0x5f, 0x2f, 0x15, 0xab, 0x21, 0xa5, 0x35, 0xa8, - 0xc3, 0x7a, 0x91, 0xc4, 0xc8, 0x23, 0x2a, 0x88, 0x02, 0xea, 0xa7, 0x87, 0x73, 0x19, 0xd6, 0xeb, - 0x95, 0x42, 0xc8, 0x00, 0x07, 0xed, 0xae, 0xd9, 0xea, 0x75, 0x0e, 0xa3, 0x4e, 0x86, 0xb8, 0xc5, - 0xd7, 0x01, 0x7b, 0x92, 0x88, 0x85, 0x60, 0xec, 0x4d, 0x74, 0x18, 0x06, 0x51, 0xfc, 0x93, 0xbd, - 0x00, 0xc6, 0xdf, 0xb2, 0x77, 0x0f, 0x82, 0x80, 0x99, 0xb4, 0x02, 0xe0, 0xe6, 0xa8, 0xc6, 0xa4, - 0x7f, 0x76, 0x0c, 0x5c, 0xad, 0xed, 0xd8, 0xfb, 0xa8, 0xda, 0x69, 0x63, 0x0f, 0x46, 0x9e, 0xd9, - 0xf2, 0xf6, 0xdb, 0xcd, 0x56, 0x14, 0x6a, 0xcb, 0x00, 0xe2, 0xd1, 0xd4, 0xeb, 0xd8, 0xbe, 0xdf, - 0x74, 0xe3, 0x39, 0xcd, 0x0b, 0xa7, 0x8e, 0x9f, 0x7a, 0x40, 0x4c, 0x32, 0x9a, 0x39, 0x9b, 0x82, - 0xd9, 0x32, 0x00, 0x7b, 0xcd, 0x5e, 0x73, 0x3b, 0xf0, 0xb1, 0x20, 0x24, 0xae, 0x0c, 0xe7, 0x44, - 0xe4, 0xca, 0xb6, 0x7b, 0xa5, 0x01, 0x7d, 0x20, 0x93, 0x15, 0xe3, 0xc0, 0x2e, 0x83, 0x99, 0xfb, - 0xc8, 0x69, 0x74, 0xdd, 0x8e, 0xbd, 0x1f, 0x85, 0xca, 0xe4, 0xc0, 0x3f, 0xad, 0xe9, 0xfb, 0xc8, - 0xa9, 0x85, 0x65, 0xec, 0xcb, 0x00, 0xf8, 0xbb, 0xed, 0xfb, 0x8d, 0x5d, 0xdb, 0x41, 0xbb, 0x0b, - 0x09, 0xda, 0x85, 0x1e, 0x32, 0xd6, 0x14, 0x2e, 0x2d, 0xe2, 0x42, 0xf6, 0x33, 0x80, 0xed, 0x75, - 0xec, 0x56, 0x37, 0xf4, 0xe2, 0x0e, 0xea, 0xe2, 0x08, 0x3e, 0x3e, 0x54, 0xdc, 0x6c, 0xbb, 0xb7, - 0x8a, 0x7c, 0xd4, 0xea, 0xa2, 0xfa, 0x51, 0x15, 0x8b, 0xd4, 0x08, 0x92, 0xba, 0xde, 0x71, 0x34, - 0x9b, 0x01, 0xb3, 0xf6, 0x2e, 0x16, 0x65, 0xbb, 0xdd, 0xf6, 0x9c, 0x76, 0x8f, 0x84, 0xa4, 0x98, - 0xd8, 0x33, 0xa4, 0x74, 0x3d, 0x28, 0xdc, 0x48, 0x24, 0x27, 0xe0, 0x64, 0xfa, 0x37, 0x46, 0xc1, - 0xc2, 0x69, 0x2a, 0x61, 0xc5, 0x27, 0xcf, 0x88, 0xf1, 0x41, 0x1b, 0x04, 0xf2, 0x0a, 0x18, 0x77, - 0x76, 0xdb, 0xee, 0x9b, 0x61, 0xd4, 0x57, 0xcf, 0x36, 0x43, 0x16, 0x93, 0x1e, 0x6f, 0x18, 0x77, - 0x30, 0x3f, 0x62, 0x05, 0x7c, 0xd8, 0xbb, 0x20, 0xd9, 0x41, 0x5e, 0xb3, 0x83, 0xdc, 0x1e, 0x51, - 0xef, 0xb4, 0x70, 0xf3, 0x6c, 0x9e, 0x56, 0x48, 0x7d, 0x0a, 0xdb, 0x01, 0x37, 0xd6, 0x02, 0x09, - 0x7f, 0xd7, 0xde, 0x0e, 0x2d, 0xf0, 0x7d, 0x67, 0x73, 0x5d, 0xdb, 0xb5, 0xb7, 0x8f, 0x73, 0xcc, - 0xed, 0xb4, 0x9b, 0x2e, 0x0a, 0xf9, 0x12, 0x5e, 0xd9, 0x14, 0x1d, 0xa4, 0xce, 0x3d, 0xea, 0x33, - 0xe3, 0xe1, 0x3c, 0x39, 0x2e, 0x67, 0xa4, 0xc1, 0x4c, 0xf9, 0xcf, 0x19, 0xf0, 0xd2, 0xd3, 0xb1, - 0x66, 0x65, 0x00, 0x5a, 0xed, 0xc6, 0x0e, 0xb2, 0x3d, 0xd4, 0xe9, 0x3e, 0x61, 0xc2, 0x9f, 0x6a, - 0xb5, 0xf3, 0x01, 0x21, 0xdb, 0x00, 0x78, 0x98, 0xa0, 0x96, 0x37, 0xa8, 0x1a, 0x58, 0x44, 0xf9, - 0xf0, 0xfd, 0x0c, 0x7b, 0x38, 0x1b, 0xf0, 0x0b, 0x1b, 0xc8, 0xbe, 0x04, 0xce, 0x77, 0x63, 0xec, - 0x1b, 0x2e, 0x11, 0xf9, 0xb4, 0xd4, 0xe0, 0x9f, 0x30, 0x20, 0xf5, 0xa4, 0x36, 0xd8, 0xcf, 0x80, - 0x8b, 0xcd, 0x96, 0x8f, 0x3a, 0xa8, 0xe5, 0xa2, 0x90, 0x6f, 0x2c, 0x79, 0xcb, 0xbe, 0xfc, 0x7e, - 0x9f, 0x99, 0xcd, 0xb6, 0x7b, 0xaf, 0x14, 0x22, 0xa2, 0xdf, 0xec, 0x33, 0x23, 0xe1, 0x60, 0xfb, - 0x2a, 0xc3, 0x84, 0xbf, 0xae, 0x3f, 0x1c, 0xb5, 0xce, 0x0f, 0xf8, 0x04, 0xe2, 0xe2, 0x84, 0x8f, - 0x75, 0xc0, 0x45, 0xfb, 0xa0, 0xd7, 0x0e, 0xb2, 0xe3, 0x38, 0xfb, 0x20, 0x88, 0xdf, 0x78, 0xbf, - 0xcf, 0x9c, 0xc7, 0xec, 0x8d, 0x83, 0x5e, 0x7b, 0x8f, 0xc8, 0xf6, 0x0a, 0x16, 0xeb, 0xd4, 0x46, - 0x58, 0xcc, 0x8d, 0x28, 0x67, 0xd0, 0x46, 0xfa, 0xcf, 0x8c, 0x82, 0xe7, 0x9e, 0xe8, 0xdd, 0xec, - 0x06, 0x98, 0xe8, 0xf6, 0xec, 0xde, 0x41, 0x37, 0x8c, 0x7b, 0xd7, 0x8e, 0x19, 0x25, 0xdf, 0xeb, - 0xed, 0xd7, 0x08, 0x41, 0xae, 0xed, 0xa1, 0xec, 0xf9, 0xf7, 0xfb, 0xcc, 0x68, 0xe5, 0x16, 0x59, - 0xba, 0x7e, 0x9e, 0x19, 0x87, 0x4c, 0x9a, 0x19, 0xb1, 0x42, 0x0e, 0xec, 0x8f, 0x30, 0x20, 0xe1, - 0xb4, 0xbd, 0xc3, 0xb0, 0x17, 0x7b, 0xef, 0xf7, 0x99, 0xf5, 0xfa, 0x0e, 0x4a, 0x75, 0xd0, 0xe7, - 0x0e, 0x50, 0xb7, 0x87, 0xbc, 0xd4, 0xa6, 0x55, 0x4c, 0xdd, 0xb7, 0xbb, 0xa9, 0x0e, 0xfa, 0x2c, - 0x09, 0xc7, 0x2b, 0xa9, 0xea, 0x2e, 0xb2, 0xbb, 0x28, 0xe5, 0xb6, 0x5b, 0x38, 0x74, 0xa4, 0xee, - 0x37, 0x7b, 0x3b, 0xa9, 0xc3, 0xf6, 0x41, 0x27, 0x65, 0x7b, 0x7b, 0xcd, 0x56, 0xb3, 0xdb, 0xeb, - 0xd8, 0xbd, 0x76, 0x67, 0xe5, 0x37, 0xfb, 0x4c, 0xe2, 0x67, 0xde, 0x65, 0x66, 0xed, 0xae, 0xdb, - 0x6c, 0x66, 0x52, 0x8e, 0xdd, 0x45, 0x8a, 0x44, 0xa4, 0xe8, 0x4c, 0x2c, 0x3c, 0x4c, 0xfd, 0x24, - 0xc3, 0x58, 0xa4, 0x69, 0xf6, 0x06, 0x98, 0xc2, 0x7f, 0x1b, 0x3b, 0x76, 0x77, 0x27, 0x5c, 0x0b, - 0xb2, 0x61, 0x64, 0x20, 0xab, 0xaa, 0x4e, 0x02, 0xa6, 0x16, 0x52, 0x56, 0x12, 0x13, 0xe5, 0xed, - 0xee, 0x4e, 0x7a, 0x15, 0xbc, 0xf0, 0x34, 0xe3, 0x95, 0xbd, 0x0a, 0xc6, 0x0e, 0x3a, 0xcd, 0x63, - 0x53, 0xf3, 0xc3, 0x71, 0xc6, 0xc2, 0xe8, 0xf4, 0x9f, 0x1e, 0x05, 0xf3, 0xd5, 0x0e, 0xf2, 0x9b, - 0x0f, 0x4a, 0x76, 0xcf, 0xdd, 0x29, 0x36, 0xbb, 0x3d, 0xf6, 0x2e, 0x98, 0x26, 0x39, 0x24, 0xc6, - 0xa2, 0x60, 0x39, 0x38, 0x95, 0x55, 0x23, 0x1b, 0x82, 0x2f, 0x31, 0x93, 0xe9, 0xf1, 0xce, 0xd8, - 0x6f, 0x06, 0x82, 0x45, 0xe0, 0xd7, 0x42, 0x39, 0xc9, 0xea, 0x8f, 0x89, 0x2d, 0x38, 0x00, 0xce, - 0x2e, 0x03, 0x56, 0x6c, 0x1b, 0xcc, 0x36, 0xf7, 0xdf, 0x52, 0x8e, 0x78, 0x8f, 0x11, 0xde, 0x1b, - 0x98, 0xf7, 0x3b, 0xef, 0x32, 0xf3, 0xcb, 0x89, 0xfd, 0x4e, 0xdb, 0x5b, 0x9e, 0xf4, 0x91, 0xd7, - 0xb1, 0xf7, 0xf6, 0xe3, 0xfc, 0x1f, 0x8e, 0x3e, 0x5d, 0x73, 0x33, 0xb8, 0x81, 0x41, 0x83, 0x26, - 0x98, 0x69, 0xb6, 0xde, 0xc2, 0x29, 0xca, 0x1e, 0xee, 0x5e, 0x30, 0xd3, 0x66, 0xd3, 0x8f, 0xfa, - 0x0c, 0xf3, 0xce, 0xbb, 0xcc, 0x22, 0x80, 0xae, 0xd7, 0x6a, 0xec, 0xb6, 0x6d, 0xcf, 0xb1, 0x77, - 0xed, 0x96, 0x8b, 0x3a, 0x60, 0x62, 0x57, 0x6d, 0xd8, 0xee, 0xae, 0x35, 0x1d, 0xd4, 0x23, 0x5a, - 0x49, 0xbf, 0x01, 0x66, 0x8c, 0x6e, 0xeb, 0x48, 0x43, 0x06, 0x00, 0x76, 0xb7, 0xd1, 0x3a, 0xd8, - 0x73, 0x70, 0x54, 0xc0, 0x0a, 0x9a, 0xcd, 0xa6, 0x07, 0x4e, 0x8e, 0x97, 0x5c, 0x30, 0xfa, 0x95, - 0x8c, 0x0b, 0x37, 0x65, 0x77, 0xcb, 0x41, 0xa5, 0xf4, 0x6f, 0xcc, 0x80, 0x4b, 0xb5, 0xe6, 0xde, - 0xfe, 0x2e, 0xba, 0x63, 0xfb, 0x26, 0x5e, 0x93, 0x75, 0xf1, 0x44, 0x74, 0xb0, 0x4b, 0xc2, 0x95, - 0xdd, 0x3a, 0x6c, 0x78, 0xed, 0x3d, 0xbb, 0xd9, 0x0a, 0x23, 0xf6, 0xa9, 0xe1, 0xca, 0x6e, 0x1d, - 0xae, 0x12, 0x42, 0x56, 0x06, 0xd3, 0xe8, 0x81, 0xed, 0x92, 0xe4, 0xf3, 0x00, 0x2d, 0xcc, 0x04, - 0x3e, 0x14, 0x49, 0x35, 0xd5, 0x99, 0x84, 0xcc, 0xc2, 0xc3, 0xd1, 0x1d, 0x3c, 0xd1, 0x00, 0x42, - 0x78, 0x1b, 0xd3, 0xb1, 0x2a, 0x98, 0xe9, 0x1e, 0xf8, 0x7e, 0xf3, 0x41, 0x58, 0x6f, 0xf6, 0x8c, - 0x7a, 0xd3, 0x01, 0x65, 0x50, 0x91, 0x07, 0x49, 0x2c, 0xe6, 0xbe, 0xdd, 0xdb, 0x59, 0x38, 0x77, - 0x86, 0x90, 0x8c, 0x35, 0x69, 0xb7, 0x0e, 0xab, 0x76, 0x6f, 0x87, 0xe5, 0xc0, 0x34, 0x26, 0x0f, - 0xed, 0xbf, 0xc0, 0x92, 0xa6, 0x66, 0x07, 0xc3, 0x61, 0xf4, 0x9b, 0xa3, 0x4c, 0x9e, 0xb1, 0x00, - 0xa6, 0x09, 0x4c, 0xc8, 0xae, 0x00, 0x02, 0x35, 0x3a, 0x68, 0x1b, 0x3d, 0x20, 0x2b, 0x90, 0xa3, - 0x0a, 0xd7, 0x1f, 0x8e, 0x3e, 0x62, 0x70, 0x85, 0x29, 0x4c, 0x62, 0x61, 0x0a, 0xf6, 0x2e, 0x98, - 0xdc, 0x43, 0xbd, 0x9d, 0xb6, 0xd7, 0x5d, 0x98, 0x4c, 0x8d, 0x5d, 0x9f, 0x13, 0xae, 0x0c, 0x89, - 0x0b, 0x25, 0x42, 0x91, 0x7d, 0xfe, 0xc8, 0xa1, 0x3e, 0xcf, 0x8c, 0x42, 0xe6, 0xa4, 0xf1, 0x16, - 0x18, 0x2b, 0x62, 0xc7, 0x96, 0xc0, 0x05, 0xf4, 0x60, 0xbf, 0xd9, 0x09, 0xf6, 0x28, 0x06, 0xfb, - 0xa2, 0x61, 0x7e, 0xbf, 0xb8, 0x12, 0xec, 0x9c, 0xae, 0x44, 0x3b, 0xa7, 0x2b, 0xf5, 0x88, 0xc2, - 0x3a, 0x7f, 0x54, 0x6f, 0x80, 0x64, 0x6f, 0x82, 0xe4, 0x1e, 0xea, 0xd9, 0x78, 0x01, 0x11, 0xe6, - 0xf4, 0x4b, 0xc7, 0x24, 0x2d, 0xa1, 0x6e, 0xd7, 0xde, 0x46, 0x25, 0xd4, 0xb3, 0x49, 0xc2, 0x32, - 0xa0, 0x7f, 0x9a, 0xc5, 0xd4, 0xf4, 0x77, 0x63, 0x31, 0x35, 0x7a, 0xf6, 0x62, 0xea, 0x94, 0x15, - 0xe7, 0xfc, 0x19, 0xbe, 0x30, 0x3a, 0x64, 0xc5, 0x79, 0xf3, 0x6f, 0x8f, 0x7f, 0xfb, 0xd5, 0x39, - 0x9e, 0xcb, 0x88, 0x19, 0x5e, 0xc9, 0xa8, 0x19, 0x5e, 0xca, 0xe8, 0xef, 0xf5, 0x99, 0x9f, 0x1f, - 0x07, 0x97, 0x41, 0x02, 0xcf, 0x08, 0x8b, 0xf3, 0x60, 0x36, 0xea, 0xfb, 0x0a, 0x9e, 0x6d, 0x40, - 0x09, 0x4c, 0x04, 0x4e, 0xbf, 0x9c, 0x03, 0x06, 0x38, 0x17, 0x1f, 0x2f, 0xc2, 0x98, 0xd1, 0x3a, - 0x04, 0x17, 0xa8, 0xb1, 0x20, 0x8c, 0x9b, 0x18, 0x00, 0x97, 0x68, 0x57, 0x17, 0x26, 0x6a, 0x04, - 0x02, 0xb7, 0x40, 0x02, 0xbb, 0x27, 0x61, 0x36, 0x7f, 0xe4, 0xd5, 0x01, 0xab, 0xcb, 0x94, 0xcf, - 0xb2, 0xc9, 0xc5, 0x89, 0xc0, 0x35, 0xc1, 0xc5, 0xb8, 0x6b, 0xb2, 0x93, 0x8b, 0xe3, 0xc4, 0x03, - 0xc1, 0x02, 0x98, 0x0c, 0xfc, 0xab, 0x9b, 0x9d, 0x1d, 0x38, 0x23, 0x1c, 0xe3, 0x18, 0xf0, 0xfd, - 0x00, 0x0c, 0xb6, 0xc0, 0xba, 0xd9, 0x12, 0xd0, 0xcf, 0xb6, 0xe1, 0xca, 0xe9, 0x5b, 0x74, 0x70, - 0x3c, 0x4d, 0xed, 0xcc, 0x72, 0x0c, 0xf8, 0x21, 0x00, 0x06, 0xfb, 0x5a, 0xdd, 0xac, 0xf5, 0xd4, - 0xcc, 0x4f, 0x6e, 0xbb, 0xc1, 0xf1, 0xf4, 0xc9, 0x9d, 0x6e, 0x8e, 0x01, 0x3e, 0x98, 0x09, 0xb6, - 0xab, 0x52, 0x64, 0x55, 0x93, 0xbd, 0x0d, 0x3e, 0xf5, 0x94, 0x6d, 0x0c, 0xdb, 0x52, 0x83, 0xe3, - 0xe9, 0x61, 0x3b, 0xb3, 0x1c, 0x03, 0x6a, 0x64, 0x4f, 0x29, 0x85, 0x2d, 0xdf, 0xcd, 0xae, 0x01, - 0xed, 0x29, 0x1b, 0x39, 0xb1, 0x59, 0x06, 0xc7, 0xd3, 0x83, 0x1d, 0x52, 0xa0, 0x81, 0x24, 0xf6, - 0xba, 0xd4, 0x1d, 0x63, 0x2d, 0x9d, 0x79, 0xd2, 0xe8, 0x59, 0x04, 0xb9, 0x76, 0xcb, 0x6f, 0x6e, - 0x1f, 0x74, 0x90, 0x07, 0x5e, 0x06, 0xf3, 0xe6, 0x60, 0xfc, 0xa6, 0xf0, 0x00, 0x5e, 0xbc, 0x34, - 0x3c, 0x14, 0x64, 0x5f, 0x00, 0xb3, 0x81, 0x13, 0x46, 0x99, 0x1c, 0x5e, 0x61, 0x27, 0x1e, 0xf7, - 0x99, 0x31, 0xbc, 0xc2, 0x96, 0x32, 0xbc, 0x90, 0xe1, 0x45, 0xbc, 0x0a, 0x27, 0x7e, 0x13, 0xa3, - 0x39, 0xf7, 0xb8, 0xcf, 0x40, 0x4c, 0xc3, 0xab, 0x19, 0x5e, 0xcb, 0x28, 0xd9, 0x1b, 0x60, 0x11, - 0x0f, 0x2d, 0xdb, 0x7b, 0x0b, 0xcf, 0x4a, 0x64, 0xa7, 0x82, 0xc8, 0x13, 0xac, 0xae, 0x70, 0x4e, - 0x3c, 0xfd, 0xb8, 0xcf, 0xcc, 0xe1, 0x9c, 0x98, 0xe7, 0x33, 0xbc, 0x1c, 0xa4, 0x88, 0x83, 0x65, - 0xfb, 0x18, 0x4c, 0x0c, 0x16, 0xf2, 0x10, 0x9e, 0xdb, 0x48, 0x24, 0x93, 0x70, 0x6a, 0x23, 0x91, - 0x9c, 0x83, 0xf3, 0xe9, 0xc7, 0xb3, 0xe0, 0x52, 0xa5, 0xd3, 0xdc, 0x6e, 0xb6, 0x6a, 0xa8, 0xf3, - 0x16, 0xea, 0xd4, 0x0e, 0x9c, 0x2e, 0xea, 0x91, 0x89, 0x27, 0x1e, 0x93, 0x98, 0x0f, 0x19, 0x93, - 0x36, 0xc1, 0x4c, 0x07, 0x05, 0x06, 0xd8, 0x6d, 0x76, 0x7b, 0xe1, 0xcc, 0x2e, 0x92, 0x69, 0xe4, - 0x5d, 0x66, 0x2e, 0xc9, 0x5c, 0x67, 0x38, 0xe6, 0xe6, 0x44, 0xd0, 0x91, 0x41, 0xa4, 0x4d, 0x1d, - 0x45, 0xda, 0xa3, 0x8d, 0x6f, 0xd0, 0x41, 0xd8, 0xf8, 0x64, 0xa6, 0xfd, 0x21, 0x30, 0xeb, 0xb6, - 0x0f, 0xf0, 0x02, 0xba, 0xe1, 0xb6, 0xbd, 0x70, 0xc1, 0x3e, 0x27, 0x3c, 0x77, 0xda, 0x82, 0x9d, - 0x90, 0x92, 0x8c, 0x6f, 0x81, 0x9a, 0x8f, 0xe3, 0x5b, 0xa0, 0x33, 0xee, 0x11, 0x59, 0x77, 0xb0, - 0xc7, 0xb6, 0xf8, 0x14, 0x7b, 0x6c, 0xf7, 0xc0, 0xbc, 0xbb, 0xdb, 0xa4, 0x76, 0x2f, 0x82, 0xa5, - 0x4f, 0xea, 0x58, 0x35, 0xb2, 0x5c, 0x8d, 0xb6, 0x2d, 0xb0, 0xa6, 0xb2, 0xb3, 0xdf, 0xea, 0x33, - 0xcc, 0x57, 0xde, 0x65, 0xc6, 0xc1, 0x18, 0x33, 0x9a, 0xc8, 0x8f, 0x58, 0x73, 0x01, 0xa7, 0xc1, - 0xde, 0xc6, 0x2b, 0x60, 0x02, 0x07, 0x9e, 0xe6, 0xfe, 0xc2, 0xb3, 0x67, 0x4e, 0xa6, 0xe3, 0x76, - 0xeb, 0xb0, 0xb0, 0xcf, 0x96, 0xc0, 0xdc, 0x20, 0x49, 0x0b, 0x34, 0x9e, 0x22, 0xd5, 0x5e, 0x1c, - 0xae, 0x99, 0x63, 0x39, 0x5e, 0x9e, 0x24, 0x4a, 0x01, 0x92, 0xe8, 0x79, 0x15, 0x80, 0xe6, 0x7e, - 0x90, 0x24, 0xa1, 0x0e, 0xc9, 0x1d, 0xa6, 0x85, 0xe7, 0x87, 0xb3, 0x2a, 0xec, 0x97, 0x02, 0x32, - 0x92, 0xb7, 0x33, 0xd6, 0x54, 0x33, 0x42, 0xb0, 0x37, 0x00, 0x9e, 0xea, 0x1b, 0x76, 0xb7, 0xb5, - 0x90, 0x3e, 0x73, 0x16, 0xc0, 0x5d, 0x35, 0xba, 0x2d, 0xf6, 0x35, 0x90, 0xb4, 0xbb, 0xad, 0x40, - 0xfe, 0xe7, 0x49, 0x8d, 0x53, 0x36, 0x74, 0xe2, 0xe9, 0x57, 0x7e, 0xd4, 0x9a, 0xb4, 0xbb, 0x2d, - 0x22, 0xf7, 0x3a, 0x98, 0xc6, 0x0c, 0x22, 0xc1, 0x67, 0x09, 0x8f, 0x17, 0xce, 0xe6, 0x11, 0x4a, - 0x3e, 0x6a, 0x01, 0x7b, 0x80, 0x61, 0x4b, 0x60, 0x86, 0xe4, 0xdf, 0x11, 0xa7, 0x60, 0x4e, 0x3e, - 0xc5, 0xcf, 0x62, 0x6c, 0x62, 0x9b, 0x1a, 0xb8, 0x7e, 0xc4, 0xee, 0xef, 0x32, 0xe0, 0x6a, 0x9b, - 0x8c, 0xb2, 0x46, 0x97, 0x0c, 0xb3, 0x46, 0x97, 0x8c, 0xb3, 0x6e, 0x23, 0x58, 0xdc, 0x2e, 0x4c, - 0x91, 0x8d, 0xa7, 0x5b, 0xc3, 0xf9, 0x0f, 0x1f, 0x9f, 0x43, 0xd0, 0xdd, 0x20, 0xd1, 0x27, 0x3b, - 0x4c, 0xd9, 0xd7, 0xbe, 0xf2, 0x2e, 0x93, 0x00, 0xa3, 0x23, 0x64, 0x28, 0xcd, 0x7c, 0x85, 0x99, - 0x4a, 0x4f, 0x76, 0xc6, 0x71, 0xf2, 0x16, 0x64, 0x36, 0x5f, 0x89, 0x32, 0x1b, 0x5c, 0xb4, 0x1c, - 0x15, 0x7d, 0xf0, 0xab, 0xbf, 0x3c, 0x36, 0xf1, 0xc5, 0x77, 0x99, 0xd1, 0xe4, 0x88, 0x75, 0xa5, - 0x7d, 0x5a, 0x03, 0x8b, 0x45, 0xb0, 0x74, 0x76, 0xeb, 0x4f, 0xda, 0xdf, 0x9a, 0x8a, 0xed, 0x6f, - 0xdd, 0xfc, 0x9b, 0x63, 0xdf, 0x7e, 0x95, 0xe5, 0x33, 0x7a, 0x46, 0xca, 0x08, 0x72, 0x46, 0xce, - 0x88, 0x5c, 0x46, 0x14, 0x33, 0xe2, 0x2f, 0xf5, 0x99, 0x3c, 0x98, 0x05, 0xc9, 0x52, 0x14, 0x54, - 0x18, 0x1e, 0x4c, 0x83, 0x89, 0x70, 0x33, 0x85, 0xd1, 0xc1, 0x45, 0x30, 0x99, 0x23, 0xa3, 0xa6, - 0xcb, 0x02, 0x52, 0x95, 0x54, 0x04, 0xe7, 0xc1, 0x9c, 0x85, 0xb6, 0x9b, 0xed, 0x96, 0xbd, 0x9b, - 0x32, 0xbd, 0x6d, 0xd4, 0x65, 0x19, 0xf1, 0xbd, 0x3e, 0xf3, 0xb5, 0xd1, 0xd3, 0x33, 0x88, 0xab, - 0x20, 0x69, 0x99, 0xe1, 0x1c, 0x03, 0xe9, 0xd0, 0x05, 0xc7, 0xc0, 0x0b, 0x60, 0x36, 0x0c, 0x25, - 0x29, 0x12, 0x24, 0xb2, 0xe7, 0x8f, 0x85, 0x21, 0x32, 0x9f, 0x5f, 0x03, 0x13, 0x81, 0x34, 0x90, - 0x59, 0x3c, 0x77, 0x22, 0x32, 0x80, 0x7d, 0x30, 0x5a, 0xa8, 0x42, 0x66, 0x79, 0x07, 0xf8, 0x60, - 0x36, 0x1a, 0xdc, 0x41, 0x4e, 0xb1, 0x0c, 0x16, 0xe9, 0xc1, 0xbb, 0x12, 0x5b, 0x70, 0xa5, 0x67, - 0xe0, 0xd8, 0x72, 0x32, 0x5a, 0xc2, 0x80, 0x97, 0xc1, 0xa5, 0xa3, 0x91, 0xb9, 0x12, 0xd6, 0xc1, - 0xca, 0x4f, 0xcf, 0xc3, 0xb1, 0xe5, 0xe9, 0x80, 0x2e, 0x55, 0x43, 0xbd, 0x2e, 0xd8, 0x01, 0x63, - 0x46, 0xad, 0x0c, 0x99, 0xe5, 0x06, 0xf8, 0x0c, 0x98, 0x1b, 0x8c, 0xc5, 0xa0, 0xcd, 0x17, 0xc1, - 0xf9, 0x68, 0xa8, 0xad, 0x1c, 0x2d, 0x5e, 0xd2, 0x73, 0x70, 0x6c, 0x19, 0x18, 0xb5, 0x54, 0xb8, - 0x2e, 0x01, 0x2f, 0x80, 0x0b, 0xb1, 0x01, 0xb5, 0x82, 0x7f, 0x93, 0xc6, 0x88, 0x50, 0x46, 0xad, - 0x4c, 0x5a, 0xca, 0x3e, 0x0f, 0xe6, 0xa3, 0x7e, 0x46, 0xf3, 0x18, 0x7c, 0xd4, 0x67, 0x16, 0x1f, - 0xf7, 0x99, 0x2b, 0x1f, 0xf4, 0x99, 0x84, 0xa0, 0x64, 0xe4, 0xec, 0x73, 0x60, 0xaa, 0xb9, 0x1f, - 0x15, 0x5f, 0x78, 0xd4, 0x67, 0x9e, 0x7d, 0xdc, 0x67, 0x96, 0x3e, 0xe8, 0x33, 0x49, 0x91, 0xcf, - 0x88, 0x42, 0x86, 0x17, 0xb2, 0x02, 0x5e, 0x48, 0x0d, 0xa6, 0xcb, 0x17, 0x1e, 0xf5, 0x99, 0xf4, - 0xe3, 0x3e, 0xf3, 0x1c, 0xa1, 0x91, 0x32, 0xa2, 0x9c, 0xe1, 0xc5, 0xcf, 0xbf, 0xcb, 0xcc, 0x74, - 0x77, 0xec, 0x0e, 0xf2, 0x32, 0xa9, 0x83, 0x2e, 0xea, 0x6c, 0x24, 0x92, 0x57, 0xe0, 0xe2, 0x46, - 0x22, 0xb9, 0x04, 0x9f, 0xdd, 0x48, 0x24, 0x9f, 0x83, 0xe9, 0xf4, 0x4f, 0x4c, 0x80, 0xf3, 0xc1, - 0x5a, 0x6a, 0xb0, 0x59, 0x7f, 0x62, 0x3e, 0xfb, 0xb0, 0x39, 0xf6, 0xeb, 0x64, 0x87, 0x75, 0xf7, - 0xb0, 0x71, 0x74, 0x5e, 0x70, 0x66, 0x66, 0x3b, 0x42, 0xf6, 0x54, 0x77, 0x0f, 0x07, 0x12, 0xb0, - 0xaf, 0x86, 0x27, 0x46, 0x31, 0x06, 0xf0, 0x4c, 0x06, 0xb3, 0x98, 0xfc, 0xa8, 0xfe, 0xd3, 0x2f, - 0x03, 0x99, 0x8f, 0xb4, 0x0c, 0x64, 0x3e, 0xe2, 0x32, 0x90, 0xa1, 0x97, 0x81, 0x02, 0x48, 0x90, - 0x25, 0xe0, 0xc4, 0x50, 0x05, 0xe3, 0xbc, 0x3a, 0x16, 0x2d, 0x2d, 0x42, 0x7b, 0xf3, 0x47, 0x47, - 0xbf, 0xfd, 0xea, 0x14, 0xcf, 0xe1, 0x54, 0x5f, 0xcc, 0x28, 0xef, 0xf5, 0x99, 0x7f, 0xc1, 0x9c, - 0x3e, 0x54, 0xf3, 0x83, 0x64, 0xff, 0x55, 0xf0, 0x7d, 0xc3, 0x92, 0xfd, 0x59, 0xaa, 0xc7, 0x60, - 0x81, 0xee, 0x09, 0xce, 0xd8, 0xc3, 0x3c, 0x7f, 0x3d, 0xcc, 0xf3, 0x5f, 0x03, 0x9f, 0x8e, 0xd2, - 0xfa, 0x95, 0x13, 0x69, 0xfd, 0x34, 0x98, 0x0a, 0x0a, 0xec, 0xde, 0x4e, 0x94, 0xe3, 0xaf, 0x1c, - 0xcb, 0xf1, 0x4d, 0x30, 0x8d, 0x1d, 0x2c, 0x15, 0x44, 0xa6, 0x65, 0x05, 0x48, 0xe0, 0xca, 0x49, - 0x7f, 0x11, 0xc6, 0x0d, 0x8c, 0x01, 0x97, 0x4f, 0x38, 0x82, 0x90, 0xc0, 0xc9, 0x68, 0xf6, 0x25, - 0x30, 0x1b, 0x6e, 0x75, 0x86, 0x03, 0xe0, 0xe2, 0xa3, 0x3e, 0x33, 0x3f, 0x48, 0xec, 0xe4, 0x0c, - 0xaf, 0x7c, 0xab, 0xcf, 0x8c, 0x3c, 0x5d, 0x5e, 0x19, 0xa4, 0x77, 0x41, 0xf2, 0x97, 0xfe, 0xb5, - 0x24, 0x98, 0x5e, 0xef, 0xd8, 0xfb, 0x3b, 0x6f, 0x14, 0xbf, 0xe3, 0xcc, 0x8e, 0xf6, 0xc3, 0xb1, - 0x8f, 0xb8, 0x1d, 0x91, 0xf8, 0x88, 0xdb, 0x11, 0xe3, 0x4f, 0xbb, 0x1d, 0xa1, 0x81, 0x80, 0x4d, - 0x63, 0xe0, 0x8d, 0x53, 0xd9, 0x2b, 0xef, 0xf7, 0x99, 0xe4, 0x8d, 0x6d, 0xac, 0x88, 0xcf, 0xed, - 0x52, 0xdb, 0x0c, 0xd6, 0x14, 0x21, 0x26, 0xbb, 0x12, 0x75, 0x00, 0x43, 0x12, 0x1c, 0xea, 0x7a, - 0xcd, 0xd6, 0x76, 0x37, 0x3c, 0x8c, 0x7c, 0x79, 0xf8, 0xf4, 0x1c, 0x6a, 0xb6, 0x16, 0x12, 0x13, - 0x7d, 0xcd, 0x87, 0x2c, 0x22, 0x24, 0x56, 0x5b, 0xb0, 0xf8, 0x6b, 0x6c, 0xa3, 0xde, 0x59, 0xa7, - 0x80, 0x78, 0xf8, 0x06, 0x94, 0xeb, 0xa8, 0xc7, 0xaa, 0x60, 0x3a, 0xac, 0xb6, 0xdf, 0xee, 0xf6, - 0xce, 0x3a, 0xee, 0xc3, 0x03, 0x38, 0x20, 0xad, 0xb6, 0xbb, 0xbd, 0x9b, 0x3f, 0x97, 0xc0, 0x63, - 0x2a, 0x23, 0x64, 0x94, 0x8c, 0x96, 0x51, 0xdf, 0xeb, 0x33, 0x5f, 0x4e, 0x7c, 0x2f, 0xc6, 0xd4, - 0x85, 0x60, 0x4c, 0x2d, 0xce, 0xc4, 0xd5, 0x0f, 0x24, 0x30, 0x11, 0x2c, 0x82, 0x97, 0x97, 0xc1, - 0x75, 0xcc, 0xff, 0x48, 0x15, 0xc2, 0xd8, 0xba, 0x59, 0x07, 0xe7, 0xa9, 0x6e, 0x0a, 0x89, 0x6a, - 0xa5, 0x56, 0x07, 0x9f, 0x02, 0x17, 0x4a, 0xf6, 0x83, 0xe6, 0xde, 0xc1, 0x5e, 0xaa, 0xde, 0xee, - 0xd9, 0xbb, 0xa9, 0x22, 0x6a, 0x6d, 0xf7, 0x76, 0x16, 0x9f, 0x07, 0xcf, 0x1d, 0x37, 0xd0, 0xca, - 0x9e, 0xfd, 0xa0, 0xd1, 0xc3, 0x44, 0x8d, 0x5d, 0x42, 0x14, 0xaf, 0x4c, 0x1c, 0xe2, 0x49, 0x95, - 0x49, 0x47, 0xa2, 0xca, 0xaf, 0x80, 0xd9, 0xa8, 0xf2, 0x2a, 0xda, 0xef, 0xed, 0x2c, 0x5e, 0x05, - 0x8b, 0x43, 0x6b, 0x79, 0xb8, 0x14, 0x18, 0xe0, 0x72, 0x44, 0x9e, 0x25, 0xc1, 0xcd, 0x4b, 0xbd, - 0x71, 0x80, 0x3a, 0x4d, 0xd4, 0x5d, 0x7c, 0x09, 0xbc, 0x30, 0xb4, 0xa2, 0x13, 0xd0, 0x35, 0x3e, - 0x17, 0xd0, 0x81, 0xdf, 0x03, 0xae, 0x18, 0xbb, 0xbb, 0xed, 0xfb, 0xa9, 0x02, 0x5e, 0x72, 0x76, - 0xf7, 0x83, 0x15, 0x28, 0x61, 0x73, 0xb8, 0xfc, 0x83, 0xe0, 0x07, 0x40, 0x06, 0xbc, 0x74, 0x82, - 0x91, 0xd7, 0xec, 0xda, 0xce, 0x2e, 0x6a, 0x34, 0xe3, 0x75, 0x84, 0xd1, 0x72, 0x1b, 0x64, 0xc0, - 0x8b, 0x27, 0xa8, 0x51, 0x6b, 0x08, 0xf1, 0xd8, 0x16, 0xea, 0x66, 0xd3, 0xc7, 0x03, 0xca, 0xb9, - 0xf0, 0x28, 0x78, 0x14, 0x07, 0x1e, 0x31, 0x23, 0x91, 0xd9, 0x7b, 0x36, 0xb4, 0x50, 0x6c, 0x82, - 0x9f, 0x7a, 0xdc, 0x67, 0x92, 0x78, 0x82, 0xd7, 0x33, 0x3c, 0x37, 0x58, 0x6e, 0x26, 0xe1, 0x54, - 0xfa, 0x0f, 0x27, 0xc0, 0xf9, 0x21, 0xe3, 0x82, 0xbd, 0x3e, 0xe4, 0x1b, 0x92, 0xa3, 0x9c, 0x39, - 0xf6, 0x31, 0x09, 0x9e, 0x71, 0x8f, 0x1b, 0x95, 0x64, 0x8e, 0xb3, 0xd9, 0x4b, 0xef, 0xf7, 0x99, - 0x84, 0xcc, 0x71, 0xdc, 0x8f, 0xbf, 0xcb, 0x04, 0xfb, 0x53, 0xcb, 0xe4, 0x70, 0x79, 0x6e, 0xcf, - 0x7e, 0x40, 0x1c, 0x25, 0x30, 0x35, 0xbb, 0x1e, 0x70, 0x88, 0x5b, 0x96, 0xc4, 0xab, 0xd9, 0xec, - 0xb5, 0xaf, 0xbd, 0xcd, 0x60, 0x26, 0x3c, 0x27, 0x48, 0xb8, 0xe1, 0x38, 0xa3, 0x87, 0x29, 0xc2, - 0x88, 0x38, 0x4d, 0xc8, 0x28, 0x03, 0xa6, 0x06, 0xc6, 0x26, 0x91, 0x6b, 0x36, 0x3b, 0xff, 0x7e, - 0x9f, 0x19, 0xe5, 0x39, 0xb2, 0x4a, 0x5d, 0x1e, 0x5d, 0xb8, 0x60, 0x25, 0xf7, 0xec, 0x07, 0xc4, - 0x57, 0xd8, 0xd7, 0xc0, 0xf9, 0x21, 0x16, 0x26, 0x91, 0x6b, 0x48, 0xbd, 0x73, 0x7b, 0xf6, 0x83, - 0xd0, 0x69, 0x42, 0x9f, 0x61, 0x6f, 0x81, 0x8b, 0x43, 0x2d, 0x1b, 0x46, 0xa1, 0xd3, 0x82, 0xed, - 0x85, 0xb0, 0x12, 0xe5, 0x41, 0x6c, 0x01, 0x5c, 0x18, 0x66, 0xf8, 0xf0, 0x23, 0x87, 0xd3, 0x78, - 0x9d, 0x0f, 0xea, 0x50, 0xac, 0xb2, 0x32, 0x48, 0x07, 0xe7, 0xa1, 0x14, 0xa7, 0xa8, 0x83, 0xf1, - 0xe3, 0xaa, 0xc9, 0xc7, 0x7d, 0x66, 0xe2, 0x83, 0x3e, 0x33, 0xa6, 0x66, 0xb4, 0xf0, 0x60, 0xf4, - 0x2f, 0x26, 0xc0, 0xe5, 0xca, 0x3e, 0x6a, 0x19, 0xfb, 0xcd, 0xa3, 0x4f, 0x10, 0xc2, 0x54, 0xfe, - 0x8b, 0x0c, 0xb8, 0x1a, 0x1e, 0xae, 0x34, 0xf6, 0x3b, 0xed, 0x7d, 0xd4, 0xe9, 0x61, 0x86, 0x41, - 0x4a, 0x19, 0x7c, 0x57, 0x89, 0x57, 0xf9, 0xcb, 0xc7, 0x84, 0x3d, 0xc1, 0xae, 0x3a, 0xa8, 0x9b, - 0xbd, 0x8a, 0x35, 0x3c, 0xfb, 0x25, 0x06, 0xa4, 0xa3, 0xf3, 0x9d, 0xc9, 0xd8, 0x92, 0x7f, 0x31, - 0x6c, 0xed, 0xa8, 0x42, 0x2d, 0x6a, 0x8b, 0xdd, 0x03, 0x17, 0xdb, 0x76, 0xfc, 0x1b, 0x8b, 0x68, - 0x89, 0x16, 0x7c, 0xd8, 0xf7, 0xca, 0x29, 0x4b, 0x34, 0xbb, 0x7b, 0xbc, 0x5b, 0x64, 0x39, 0x18, - 0xb8, 0x15, 0xd9, 0x4f, 0xb6, 0xce, 0xb7, 0x4f, 0x12, 0xb1, 0x3f, 0xc1, 0x80, 0x6b, 0x1d, 0xd4, - 0xdd, 0x6f, 0xb7, 0xba, 0x68, 0x78, 0xe7, 0xc7, 0x3e, 0x74, 0xe7, 0x9f, 0xc5, 0x8d, 0xc2, 0x2f, - 0x31, 0xb3, 0xe9, 0xe9, 0xcf, 0x33, 0x49, 0xc8, 0x2c, 0x26, 0x46, 0x13, 0xe3, 0xf1, 0xfe, 0x3f, - 0x13, 0xb5, 0x38, 0x4c, 0x01, 0xbf, 0x8f, 0x01, 0x4b, 0x58, 0x03, 0x03, 0xa9, 0x4e, 0xaa, 0x22, - 0xf1, 0x51, 0x54, 0x31, 0x4f, 0xf6, 0xd7, 0x3f, 0xcf, 0x4c, 0x42, 0x66, 0x71, 0x6c, 0x84, 0x19, - 0xb5, 0x9e, 0x69, 0xdb, 0x5d, 0x2b, 0x6c, 0xe4, 0x78, 0x8d, 0xf4, 0x1f, 0x1d, 0x05, 0xf3, 0xab, - 0xa8, 0x75, 0x58, 0x68, 0xf9, 0xed, 0x4e, 0x70, 0x76, 0xc8, 0xde, 0x00, 0xb3, 0x03, 0xa1, 0xf0, - 0xba, 0x2b, 0xfc, 0x02, 0x75, 0x30, 0x74, 0xff, 0x41, 0xc2, 0x9a, 0x89, 0x08, 0xf0, 0x42, 0x0d, - 0x57, 0x40, 0x9d, 0x4e, 0xbb, 0xd3, 0xd8, 0x0b, 0xd2, 0x99, 0xf0, 0x44, 0x0f, 0x0c, 0x8e, 0x1c, - 0x13, 0xd6, 0x0c, 0x21, 0x08, 0xd3, 0x1d, 0x76, 0x0d, 0x9c, 0x3f, 0x68, 0x79, 0xc8, 0x6f, 0xb6, - 0x90, 0xd7, 0xe8, 0x22, 0xb7, 0x81, 0xde, 0x42, 0xad, 0xde, 0x13, 0x0e, 0x5d, 0xce, 0x0d, 0xaa, - 0xd4, 0x90, 0x6b, 0xe2, 0x0a, 0xec, 0x4d, 0x30, 0x6b, 0xef, 0x37, 0x63, 0x1c, 0xc6, 0xcf, 0xe4, - 0x30, 0x6d, 0xef, 0x37, 0xa3, 0xba, 0xd9, 0x4b, 0x00, 0x90, 0x3a, 0xc1, 0x81, 0x77, 0x32, 0xca, - 0xed, 0xc2, 0x54, 0xae, 0xff, 0x09, 0x70, 0xa5, 0xbe, 0xdb, 0x5d, 0x6b, 0xb6, 0xb6, 0x51, 0x67, - 0xbf, 0xd3, 0x6c, 0xf5, 0x62, 0xf9, 0x34, 0xeb, 0x80, 0x49, 0x77, 0xd7, 0xee, 0x76, 0xc3, 0x73, - 0xba, 0xb9, 0xd3, 0xbe, 0xda, 0xb8, 0xd5, 0x6a, 0xdf, 0x6f, 0xd1, 0x6c, 0x72, 0xb8, 0x1e, 0xd9, - 0x26, 0x1b, 0x1d, 0x7e, 0xf2, 0x11, 0x32, 0x66, 0xbf, 0x7c, 0x1e, 0xcc, 0xc4, 0x92, 0x81, 0xe0, - 0xbb, 0xcc, 0xa9, 0xec, 0xaf, 0xb3, 0x1f, 0xf4, 0x99, 0xbf, 0xc3, 0x82, 0x14, 0x6f, 0xdb, 0xaa, - 0xe3, 0x6b, 0x8e, 0xae, 0x22, 0x59, 0xe2, 0x5c, 0x5b, 0x46, 0x9e, 0xa7, 0xca, 0xbe, 0xea, 0x68, - 0xa2, 0x26, 0x39, 0xbe, 0x0d, 0x52, 0xa2, 0xeb, 0xd9, 0xb2, 0xe0, 0xd9, 0x92, 0xed, 0x21, 0x4e, - 0xf7, 0x79, 0x5f, 0xd5, 0x78, 0xdb, 0x13, 0x90, 0x26, 0x78, 0xae, 0x6f, 0x0b, 0x1c, 0x48, 0xa9, - 0x9e, 0x27, 0x73, 0x88, 0xe7, 0x05, 0xd7, 0x13, 0x44, 0x55, 0x94, 0x6c, 0x91, 0xe7, 0x1c, 0x9d, - 0xf3, 0x15, 0x5f, 0x92, 0x6c, 0xd5, 0xf5, 0x40, 0x8a, 0x77, 0x90, 0x88, 0x5c, 0xe4, 0x20, 0xd9, - 0xb6, 0x75, 0x4f, 0x54, 0x64, 0x09, 0x29, 0x48, 0xe5, 0x44, 0x4f, 0xe3, 0x7d, 0x45, 0x17, 0x34, - 0x90, 0x72, 0x65, 0x41, 0x94, 0x3d, 0xd1, 0xd6, 0x1c, 0x5d, 0x17, 0x25, 0x47, 0xf5, 0x1d, 0xc7, - 0x13, 0x38, 0xc9, 0x93, 0x39, 0xc7, 0xe5, 0x64, 0xcd, 0x03, 0x29, 0xa4, 0x08, 0xb6, 0xec, 0x4b, - 0x9e, 0x2c, 0x6a, 0xae, 0xe3, 0xf3, 0x8a, 0xee, 0x0a, 0xb6, 0xaf, 0xf2, 0x0e, 0x72, 0x05, 0x51, - 0xd7, 0x1d, 0x09, 0xa4, 0x3c, 0x41, 0x17, 0x65, 0x57, 0xd6, 0x7c, 0xa4, 0xa8, 0x8a, 0x2a, 0x49, - 0x3e, 0x72, 0x5d, 0x4d, 0xe1, 0x25, 0x84, 0x64, 0x51, 0x56, 0x5c, 0x15, 0xa4, 0x3c, 0xe4, 0xfa, - 0x8e, 0xa4, 0xd9, 0xb2, 0xa8, 0x6a, 0x3a, 0x72, 0x10, 0xa7, 0xf1, 0x8e, 0xa6, 0xd9, 0xb6, 0xe3, - 0xc8, 0x1a, 0x42, 0xa2, 0x04, 0x52, 0x32, 0xef, 0x2a, 0x92, 0xab, 0xaa, 0x48, 0xe1, 0x7c, 0x51, - 0xd7, 0x38, 0x84, 0x6c, 0x9d, 0xd3, 0x14, 0xdd, 0x51, 0x34, 0x57, 0xd6, 0x6c, 0x2c, 0xa9, 0xa3, - 0x6b, 0xb6, 0x20, 0x21, 0x24, 0x39, 0x3a, 0x2f, 0x4a, 0x92, 0xa4, 0xf9, 0xbe, 0x23, 0xab, 0xbc, - 0xe4, 0x7b, 0x9a, 0xca, 0xd9, 0x2e, 0x48, 0x89, 0x92, 0xcf, 0x4b, 0xb6, 0xa2, 0xdb, 0x9e, 0xca, - 0x71, 0xba, 0x6b, 0xcb, 0x9a, 0x22, 0x8a, 0xaa, 0x2e, 0xf0, 0x9a, 0xed, 0xf3, 0xaa, 0x2f, 0x82, - 0x94, 0xa7, 0x2a, 0x08, 0x29, 0x92, 0xef, 0xa8, 0x82, 0x2a, 0xaa, 0xa2, 0xe8, 0x3a, 0x48, 0x92, - 0x65, 0xdb, 0xd5, 0x78, 0x57, 0xd0, 0x05, 0xa4, 0x80, 0x94, 0xe6, 0x2b, 0xae, 0xce, 0x6b, 0x9e, - 0xeb, 0xc8, 0x9a, 0x8c, 0x1c, 0x07, 0xd9, 0x9c, 0x8c, 0x04, 0xd7, 0xd5, 0x25, 0x59, 0xe4, 0x90, - 0x88, 0x75, 0xea, 0x71, 0xba, 0x8c, 0x14, 0x4d, 0xd2, 0x74, 0x4f, 0x74, 0x65, 0x51, 0x16, 0x74, - 0xd5, 0xf5, 0x34, 0xcf, 0xf7, 0x1d, 0x4e, 0x71, 0x1d, 0x1d, 0xa4, 0x7c, 0x41, 0x70, 0x3c, 0x4f, - 0x56, 0x91, 0x88, 0x0d, 0x88, 0x34, 0xc5, 0xf5, 0x6c, 0x89, 0xf3, 0x6c, 0xc1, 0xd3, 0x24, 0xa4, - 0x89, 0x0e, 0x48, 0xf9, 0x8e, 0xac, 0x69, 0x22, 0xef, 0x6b, 0xba, 0xc0, 0xeb, 0x9c, 0x82, 0x55, - 0x26, 0x49, 0x48, 0x90, 0x1d, 0x57, 0x13, 0x39, 0x47, 0x92, 0x41, 0x8a, 0x73, 0x5d, 0x1e, 0x69, - 0x92, 0xac, 0x68, 0x48, 0x52, 0x79, 0xdb, 0xe6, 0x3d, 0x45, 0xb0, 0x3d, 0x89, 0x97, 0x35, 0xdb, - 0x43, 0x8a, 0x23, 0x83, 0x94, 0xc0, 0xe9, 0x02, 0xe2, 0x7d, 0xdf, 0x77, 0x24, 0xd9, 0x53, 0x91, - 0x64, 0xf3, 0xba, 0x2d, 0xab, 0xbe, 0xee, 0xb8, 0x32, 0x12, 0x38, 0xd1, 0x06, 0x29, 0x8f, 0xd7, - 0x6c, 0xc9, 0xb3, 0x35, 0xc9, 0xf6, 0x65, 0x1d, 0xf1, 0x3c, 0xa7, 0x69, 0x8a, 0x60, 0x8b, 0xba, - 0x63, 0x23, 0xd5, 0xd5, 0x3d, 0x09, 0xa4, 0x6c, 0x85, 0x17, 0x74, 0xdd, 0xd7, 0x1d, 0x99, 0xe3, - 0x6d, 0xcf, 0xf5, 0x15, 0x8d, 0x73, 0x74, 0x41, 0x95, 0x3d, 0x55, 0xf7, 0x24, 0xdb, 0x55, 0x40, - 0xca, 0x11, 0x35, 0x45, 0x97, 0x14, 0x5b, 0xb6, 0x25, 0xc9, 0xe3, 0x3d, 0xcf, 0x75, 0x35, 0x49, - 0x74, 0x5c, 0x55, 0x16, 0x45, 0xc5, 0xf3, 0x5d, 0x04, 0x52, 0x9a, 0xa4, 0x6b, 0x3e, 0x92, 0x04, - 0x45, 0x53, 0x15, 0xc9, 0x73, 0x7c, 0x5d, 0x50, 0x6c, 0x51, 0x13, 0x34, 0x11, 0xe9, 0x9e, 0xe8, - 0x69, 0x3e, 0x96, 0xd4, 0xf3, 0x78, 0xcd, 0xf1, 0x3c, 0x51, 0xe0, 0x74, 0x64, 0xab, 0xbc, 0xa6, - 0x6b, 0x3a, 0x27, 0x72, 0xb6, 0xe2, 0xeb, 0xa2, 0xa8, 0x48, 0x20, 0xa5, 0xe9, 0x3a, 0x6f, 0x8b, - 0x9a, 0x8a, 0x24, 0xcc, 0x9f, 0x57, 0x25, 0xce, 0x17, 0x64, 0x4f, 0xf1, 0x65, 0x5e, 0xd4, 0x7d, - 0x5d, 0xf0, 0x40, 0x4a, 0xf4, 0x34, 0xdd, 0xe5, 0x3c, 0xdf, 0xe1, 0x7d, 0x5b, 0x92, 0x74, 0x9e, - 0x77, 0x34, 0xdf, 0x56, 0x65, 0x41, 0x44, 0xbe, 0xe6, 0x21, 0xcf, 0x01, 0x29, 0x24, 0x8a, 0x9c, - 0xe3, 0xda, 0xba, 0xee, 0x6a, 0xb6, 0x2c, 0xc8, 0x8a, 0x8d, 0x78, 0x41, 0xb1, 0x65, 0xd9, 0x95, - 0x5c, 0x55, 0x90, 0x5d, 0x19, 0xa4, 0x34, 0x11, 0x71, 0x92, 0xe3, 0xca, 0x9a, 0x27, 0x71, 0x82, - 0xaf, 0x2b, 0xa2, 0xa8, 0x6b, 0xa2, 0xeb, 0xf8, 0x82, 0xa0, 0x0a, 0x92, 0xc3, 0x09, 0x20, 0xe5, - 0x68, 0xbe, 0xc6, 0x2b, 0xaa, 0xe8, 0x72, 0x88, 0xf7, 0x04, 0x5d, 0xe7, 0x34, 0x51, 0x52, 0x7c, - 0xd1, 0xb1, 0x1d, 0x4d, 0x17, 0x1c, 0xdd, 0x01, 0x29, 0x4f, 0x96, 0x79, 0xdf, 0xf6, 0x5d, 0xc9, - 0x97, 0x38, 0x9f, 0xf7, 0x90, 0x2b, 0x38, 0x8e, 0x24, 0xeb, 0x1a, 0xe7, 0xf8, 0xb6, 0x2e, 0xe9, - 0x02, 0x48, 0x09, 0x3a, 0xa7, 0xc9, 0x3e, 0x27, 0xfa, 0x1a, 0xd2, 0x6c, 0x4e, 0xf4, 0x39, 0x47, - 0xd4, 0x75, 0x57, 0x76, 0x55, 0xd7, 0xe7, 0x1c, 0xce, 0xd1, 0xb0, 0xaf, 0xdb, 0xaa, 0xed, 0xf1, - 0x92, 0xcc, 0xe9, 0xbe, 0xa7, 0xf0, 0x92, 0xab, 0x3a, 0x8e, 0x68, 0xcb, 0x9c, 0x2b, 0xe9, 0x9a, - 0xe0, 0x68, 0x2e, 0x48, 0x39, 0xae, 0xe2, 0x8a, 0x9a, 0xe2, 0x4b, 0x78, 0x20, 0xe8, 0xaa, 0xa3, - 0x7b, 0x3a, 0x92, 0x05, 0x4f, 0x52, 0x05, 0x47, 0x55, 0x05, 0x4f, 0x03, 0x29, 0x87, 0x17, 0x3d, - 0x8e, 0xd7, 0x24, 0xc5, 0xf6, 0x54, 0x9b, 0x97, 0x6c, 0x95, 0x73, 0x7c, 0xac, 0x52, 0x5e, 0x51, - 0x55, 0xd9, 0x55, 0x35, 0x90, 0x52, 0x74, 0x0d, 0x89, 0x8a, 0xc0, 0xeb, 0xbe, 0xa8, 0xab, 0xba, - 0x24, 0x70, 0xbe, 0x2d, 0xc8, 0x1a, 0xef, 0x08, 0xbc, 0x67, 0xbb, 0x2a, 0x72, 0x41, 0x8a, 0x57, - 0x79, 0x41, 0xd0, 0x54, 0x8d, 0xe3, 0x6c, 0x57, 0xe7, 0x1d, 0x51, 0x72, 0x6d, 0xcf, 0x93, 0x35, - 0x4d, 0x72, 0x91, 0x26, 0xcb, 0x0a, 0x96, 0x54, 0xe6, 0x3c, 0x17, 0xf1, 0x9a, 0x87, 0x78, 0xc7, - 0xe1, 0x25, 0x11, 0x29, 0xba, 0xa7, 0x78, 0x9e, 0x2e, 0xf1, 0xa2, 0xa3, 0x89, 0xb2, 0x8c, 0x47, - 0x14, 0x2f, 0x73, 0xb6, 0x2f, 0xc9, 0xbc, 0xe4, 0x68, 0x8a, 0xe6, 0x21, 0xdf, 0xd1, 0x64, 0xc9, - 0x73, 0x38, 0x5f, 0x11, 0x6c, 0x49, 0xe2, 0x41, 0xca, 0xf3, 0x65, 0x57, 0xe4, 0x90, 0xa2, 0x72, - 0x9e, 0x63, 0x63, 0x67, 0x13, 0x54, 0x0e, 0x79, 0xa2, 0xc2, 0x29, 0x9c, 0xeb, 0x73, 0xb2, 0x04, - 0x52, 0xa2, 0xec, 0x72, 0xb6, 0xc8, 0xbb, 0x92, 0xc6, 0xeb, 0x82, 0xea, 0x73, 0x82, 0x60, 0x8b, - 0x8e, 0x2c, 0x72, 0x02, 0x1e, 0x9a, 0x9c, 0x46, 0x22, 0x9d, 0xeb, 0x22, 0xd9, 0x51, 0x15, 0x57, - 0x73, 0x78, 0x55, 0x52, 0x05, 0x8f, 0x13, 0x24, 0x55, 0xd6, 0x74, 0x95, 0xb3, 0x25, 0x4e, 0x71, - 0x40, 0x4a, 0xe7, 0x79, 0x49, 0xd5, 0x6d, 0x57, 0xb3, 0x39, 0x8d, 0x17, 0x91, 0xc7, 0x0b, 0x12, - 0xef, 0x88, 0x8a, 0xa6, 0xb8, 0xae, 0x67, 0x7b, 0x48, 0x07, 0x29, 0x4e, 0x44, 0xbc, 0xa6, 0xd8, - 0xaa, 0xaf, 0x89, 0x82, 0x26, 0x23, 0x5d, 0x14, 0x25, 0xde, 0x43, 0x92, 0xaa, 0x89, 0xa2, 0xc4, - 0x71, 0x0a, 0xc2, 0xfa, 0xf0, 0x3d, 0x49, 0x57, 0x05, 0xc1, 0xd7, 0x3c, 0x9e, 0xf7, 0x45, 0x4f, - 0x55, 0x3c, 0x17, 0x69, 0x92, 0xaf, 0x21, 0x4e, 0xd7, 0x6d, 0x15, 0x8f, 0x5b, 0x8e, 0xe3, 0x64, - 0xd9, 0xe6, 0x79, 0x5d, 0xb1, 0x11, 0xb2, 0x35, 0x8f, 0x77, 0x5c, 0x85, 0xd3, 0x35, 0x4d, 0x76, - 0x6c, 0x5d, 0x16, 0x41, 0x8a, 0xd3, 0x35, 0x5f, 0x96, 0x91, 0xa0, 0x7a, 0x9a, 0x2b, 0x39, 0x9c, - 0x2d, 0xeb, 0x1c, 0xcf, 0x09, 0xae, 0xe3, 0x61, 0x0b, 0xfb, 0x78, 0x54, 0x22, 0xd1, 0x11, 0x6c, - 0x87, 0xf7, 0x75, 0x5b, 0x56, 0x7c, 0xc1, 0x77, 0x24, 0x57, 0x17, 0x24, 0xcd, 0x17, 0x7c, 0x89, - 0x57, 0x44, 0x1e, 0x47, 0x7e, 0x49, 0x41, 0x58, 0x10, 0xdb, 0x71, 0x5d, 0x5b, 0x43, 0xb6, 0xee, - 0xd8, 0xb6, 0x2e, 0x0a, 0x9e, 0xad, 0x68, 0xbe, 0xe7, 0xc8, 0x82, 0x0e, 0x52, 0x92, 0xa7, 0xda, - 0x82, 0xe6, 0x29, 0xbe, 0x20, 0x28, 0x22, 0xf2, 0x14, 0xde, 0x43, 0x9a, 0xe6, 0xda, 0x8a, 0x82, - 0x1c, 0x8e, 0xe7, 0x91, 0x08, 0x52, 0x8e, 0xe0, 0x28, 0xbc, 0xe7, 0xa8, 0x8e, 0x2e, 0xe9, 0x9c, - 0xad, 0x70, 0x9e, 0xa0, 0x72, 0xae, 0xeb, 0x08, 0x9c, 0x23, 0x29, 0x82, 0x26, 0x28, 0x20, 0xa5, - 0x0b, 0xb2, 0xaa, 0xab, 0x1c, 0xef, 0xf3, 0x92, 0xac, 0x70, 0x32, 0xd2, 0x91, 0xe7, 0x72, 0x0e, - 0xc7, 0xdb, 0x3a, 0xc7, 0xbb, 0x8a, 0x27, 0x83, 0x94, 0xaa, 0xe8, 0xbc, 0xa0, 0xab, 0x0e, 0xae, - 0x66, 0x4b, 0xbc, 0x20, 0x8a, 0xbe, 0xc7, 0xd9, 0x9c, 0x63, 0xdb, 0x9c, 0x2d, 0x2a, 0x78, 0xf6, - 0xe0, 0x15, 0xe4, 0xbb, 0x3e, 0x87, 0x38, 0x4e, 0xe6, 0x24, 0xcf, 0xf3, 0x91, 0xe7, 0x21, 0x5e, - 0x74, 0x7c, 0x64, 0xeb, 0xba, 0xaa, 0xcb, 0x02, 0x48, 0xf1, 0xb2, 0x24, 0xda, 0xaa, 0x2b, 0x29, - 0x8a, 0x28, 0xda, 0xae, 0xaf, 0xe2, 0xa0, 0xc6, 0xf1, 0x8e, 0xed, 0xba, 0x8e, 0xc7, 0x11, 0x1f, - 0xf3, 0x14, 0x9f, 0x93, 0x1c, 0xd9, 0xd6, 0x79, 0x8e, 0xe7, 0x65, 0x5f, 0x72, 0x64, 0x0e, 0xb9, - 0xc8, 0xe5, 0x74, 0x4f, 0xe2, 0x6c, 0xde, 0xf3, 0x41, 0x4a, 0x17, 0x31, 0xa9, 0xaa, 0x09, 0x9e, - 0x22, 0xe9, 0x1e, 0x72, 0x64, 0x1e, 0x07, 0x54, 0x09, 0xb9, 0x8e, 0xca, 0x4b, 0x8e, 0xc3, 0x81, - 0x94, 0x8c, 0x64, 0x55, 0x74, 0x75, 0x57, 0xf7, 0x35, 0xc7, 0x56, 0x05, 0x0e, 0xf9, 0xba, 0xc3, - 0x6b, 0x48, 0xf7, 0x5d, 0x24, 0x20, 0xc1, 0x57, 0x41, 0x4a, 0xd6, 0x39, 0x5b, 0x10, 0x05, 0x0f, - 0x4f, 0x6d, 0x8a, 0xc4, 0xe9, 0xbe, 0xed, 0xa8, 0x02, 0x52, 0x65, 0xc1, 0xd6, 0x6c, 0x41, 0xc1, - 0x33, 0x90, 0x26, 0xe9, 0x0e, 0x27, 0x39, 0x9e, 0xe3, 0xf1, 0x9e, 0xe0, 0xe8, 0x9a, 0xe8, 0x2b, - 0x48, 0xb3, 0x25, 0x59, 0x45, 0x9c, 0x22, 0x0a, 0x78, 0x06, 0xd2, 0x5d, 0x41, 0xd6, 0x74, 0xc4, - 0xbb, 0x1c, 0xd2, 0x7d, 0x59, 0x14, 0x6d, 0x4e, 0x10, 0x5c, 0x45, 0xe0, 0x64, 0x5f, 0x57, 0x79, - 0x1d, 0xf1, 0x20, 0xa5, 0x2b, 0xc8, 0xb1, 0x15, 0x01, 0x4f, 0x1f, 0x82, 0x23, 0xa9, 0x0a, 0xa7, - 0xf2, 0xba, 0xe0, 0xd8, 0xaa, 0x84, 0x1d, 0x5a, 0x76, 0x6c, 0x90, 0x52, 0x5d, 0x89, 0xe7, 0x5c, - 0xa4, 0x89, 0x02, 0xd2, 0x24, 0xcd, 0x16, 0x45, 0x81, 0x97, 0x44, 0xc1, 0xd5, 0x6d, 0x4d, 0x40, - 0xba, 0x2a, 0xe0, 0xb9, 0x41, 0xf1, 0x3d, 0x4d, 0xb4, 0x05, 0xde, 0xd7, 0x7d, 0xd1, 0x95, 0x7d, - 0xdd, 0xf7, 0x55, 0x47, 0x76, 0x15, 0xd1, 0x71, 0x5c, 0x5e, 0xd5, 0x3d, 0x90, 0x12, 0x3c, 0x4d, - 0xd5, 0x25, 0xd7, 0x51, 0x1d, 0x19, 0xc7, 0x03, 0xd5, 0x41, 0x48, 0x50, 0x74, 0x19, 0xa9, 0xba, - 0xcb, 0xcb, 0xaa, 0xc2, 0x81, 0x94, 0xef, 0x69, 0x9c, 0x6f, 0xeb, 0xae, 0xc2, 0x0b, 0x9c, 0xeb, - 0x61, 0x47, 0x95, 0x05, 0x4e, 0xe6, 0x39, 0x5f, 0x74, 0x15, 0x49, 0xc2, 0x73, 0xa5, 0xac, 0xfa, - 0xa2, 0x22, 0x09, 0x8e, 0x84, 0x44, 0x15, 0x09, 0x9a, 0x2f, 0xbb, 0x0e, 0x12, 0x39, 0x81, 0x73, - 0x75, 0x51, 0xe4, 0x1d, 0xc9, 0x05, 0x29, 0x9d, 0x53, 0x38, 0x4e, 0x12, 0x82, 0xf8, 0x27, 0x23, - 0x55, 0x96, 0x1d, 0x4e, 0x12, 0x5d, 0x4e, 0x56, 0x05, 0x59, 0xb2, 0xb1, 0x17, 0xba, 0x32, 0xe7, - 0x2b, 0x38, 0x73, 0xe0, 0x55, 0x51, 0x51, 0x15, 0x47, 0x52, 0x1d, 0x5b, 0xe1, 0x34, 0xd9, 0xf1, - 0x38, 0x57, 0x71, 0x11, 0x02, 0x29, 0x57, 0xe0, 0x78, 0x47, 0x17, 0x7c, 0xcd, 0x91, 0x34, 0xd1, - 0xb7, 0x45, 0x4d, 0x73, 0x10, 0xaf, 0x4a, 0x9e, 0xa2, 0x68, 0x58, 0x83, 0x12, 0x48, 0x39, 0x3a, - 0xe7, 0x78, 0x0e, 0xd2, 0x15, 0xde, 0x56, 0x24, 0xcd, 0xe7, 0x24, 0x41, 0xf5, 0x1c, 0x81, 0xb7, - 0x6d, 0x5b, 0x71, 0x5d, 0x47, 0xd6, 0x41, 0x4a, 0xf7, 0x15, 0xc1, 0x95, 0x7c, 0x41, 0x71, 0x74, - 0xce, 0x13, 0x3d, 0x55, 0x56, 0x1d, 0x64, 0x2b, 0x9c, 0x8e, 0x34, 0xc1, 0x17, 0x90, 0xed, 0xc7, - 0xbf, 0x70, 0xfa, 0x32, 0x93, 0x1a, 0x9a, 0x96, 0x4d, 0x1f, 0x6d, 0x96, 0x75, 0xd9, 0x9f, 0x3a, - 0x0f, 0xe6, 0xc3, 0x03, 0x70, 0x2f, 0xca, 0xce, 0xc6, 0x3e, 0xce, 0xce, 0x3e, 0xce, 0xce, 0x3e, - 0xce, 0xce, 0x3e, 0xce, 0xce, 0x3e, 0xce, 0xce, 0x3e, 0xce, 0xce, 0x3e, 0xce, 0xce, 0x3e, 0xce, - 0xce, 0x3e, 0xce, 0xce, 0x7e, 0x6b, 0xb3, 0xb3, 0xd8, 0x47, 0x6c, 0xd6, 0x5c, 0x94, 0x8d, 0x05, - 0x09, 0x5a, 0xfa, 0x4f, 0x25, 0xc0, 0xfc, 0xb1, 0x33, 0x70, 0xd6, 0x07, 0xb3, 0xe1, 0x67, 0x1c, - 0x61, 0xc6, 0x16, 0x7c, 0x61, 0x6f, 0xc4, 0xf9, 0x7f, 0x93, 0xfe, 0xdc, 0xfd, 0xfa, 0xc3, 0xd1, - 0x21, 0x5f, 0xbf, 0x9f, 0xc8, 0x0d, 0x67, 0x02, 0xbe, 0x61, 0x72, 0xe8, 0x0d, 0xdd, 0xb6, 0xfb, - 0x2e, 0x34, 0x43, 0xa5, 0xa0, 0x1e, 0x98, 0x21, 0xa7, 0xe3, 0x74, 0xfa, 0x69, 0x3c, 0x99, 0x6d, - 0x04, 0x3e, 0x3a, 0xad, 0x15, 0xc2, 0x36, 0x6c, 0xe5, 0x36, 0x98, 0x8d, 0x1f, 0x40, 0x76, 0x17, - 0xc6, 0x49, 0x33, 0x3c, 0x39, 0x13, 0xfe, 0x12, 0x33, 0x91, 0x4e, 0x74, 0x46, 0xaf, 0xbf, 0x7e, - 0x9a, 0xf0, 0xd4, 0xd7, 0x7f, 0xb1, 0x43, 0xe3, 0x2e, 0xfb, 0xfd, 0x60, 0x86, 0xdc, 0x03, 0xf3, - 0xdb, 0x9d, 0x3d, 0xd4, 0x79, 0xc2, 0xe7, 0x85, 0xf5, 0x23, 0xca, 0xd8, 0xed, 0xea, 0xa9, 0x38, - 0xf3, 0x38, 0x33, 0xf6, 0x45, 0x30, 0x17, 0xbf, 0x7d, 0x80, 0x3a, 0xe4, 0x58, 0x3a, 0x69, 0xcd, - 0xc6, 0xee, 0x16, 0xa0, 0x4e, 0xfa, 0x6f, 0x8d, 0x82, 0xe9, 0xb8, 0x7f, 0x6c, 0x1e, 0xb3, 0x5b, - 0xe0, 0x1e, 0xc2, 0x53, 0x1a, 0xea, 0xf5, 0xa7, 0x35, 0xd4, 0xe8, 0x6f, 0x89, 0xa1, 0x0e, 0x8e, - 0x29, 0x74, 0xec, 0x69, 0x15, 0xba, 0x12, 0x5e, 0xca, 0x60, 0x4f, 0x5e, 0xca, 0x78, 0xb2, 0xaa, - 0xd3, 0xff, 0x98, 0x01, 0x30, 0xfe, 0x55, 0x9e, 0xdd, 0x6d, 0xba, 0xdf, 0xa1, 0x22, 0xe1, 0x6f, - 0xab, 0x22, 0x6f, 0xce, 0xbd, 0xf7, 0x6a, 0xdc, 0x2b, 0xd2, 0x5f, 0x4f, 0x80, 0x73, 0xb9, 0x76, - 0xfb, 0xcd, 0x26, 0x8a, 0xfb, 0xca, 0x12, 0x48, 0xc4, 0xce, 0x55, 0x41, 0xec, 0x6a, 0x15, 0xc1, - 0xb3, 0x69, 0x90, 0xdc, 0xef, 0xa0, 0x2e, 0x6a, 0xb9, 0xe1, 0x35, 0xd3, 0x6c, 0x22, 0xbc, 0x6c, - 0x38, 0xc0, 0xb3, 0x35, 0x30, 0xeb, 0xee, 0x20, 0xf7, 0xcd, 0x46, 0x80, 0xe9, 0x9d, 0x75, 0xec, - 0x98, 0xbd, 0x34, 0xdc, 0x44, 0xf9, 0x11, 0x6b, 0x86, 0x30, 0xa9, 0x06, 0x3c, 0xd8, 0x7b, 0xe0, - 0x5c, 0xc0, 0xb4, 0xd5, 0xee, 0x0d, 0x18, 0x27, 0x3f, 0x12, 0xe3, 0x79, 0xc2, 0xa8, 0xdc, 0xee, - 0x45, 0xbc, 0x55, 0x90, 0x68, 0xf6, 0xd0, 0x5e, 0xf8, 0x2d, 0xca, 0x93, 0xbf, 0xd1, 0xcc, 0x8f, - 0x58, 0xa4, 0x02, 0xfb, 0xe9, 0x13, 0x03, 0x32, 0x41, 0x74, 0x72, 0x4a, 0xdb, 0xc7, 0x06, 0xea, - 0xcd, 0xbf, 0xc6, 0x7c, 0xfb, 0xd5, 0x71, 0x3e, 0xa3, 0x64, 0xa4, 0xf7, 0xfa, 0xcc, 0xcf, 0x31, - 0x60, 0x2e, 0xfc, 0xbc, 0x62, 0x22, 0x30, 0x02, 0xb8, 0x03, 0xc6, 0x73, 0x58, 0xd4, 0xe5, 0x32, - 0x28, 0x82, 0x85, 0x63, 0x5a, 0x15, 0x26, 0x43, 0xf1, 0x41, 0x6a, 0x88, 0x6a, 0x84, 0xe9, 0x72, - 0xbb, 0x97, 0x8a, 0x28, 0xe6, 0x82, 0x0e, 0x0a, 0x13, 0x81, 0x2f, 0x80, 0x25, 0x10, 0xdc, 0x60, - 0xc8, 0x5e, 0x04, 0xe7, 0x70, 0xc1, 0x4a, 0xdc, 0xad, 0xe1, 0x28, 0x2e, 0x27, 0x1f, 0x26, 0x0d, - 0xca, 0xe3, 0xfe, 0x09, 0x47, 0xb3, 0x8b, 0x60, 0x9c, 0x74, 0x78, 0x70, 0xce, 0x3f, 0x11, 0x9c, - 0xf3, 0x0f, 0x4e, 0x6b, 0x83, 0xaf, 0xc5, 0xd3, 0x3f, 0x9d, 0x00, 0x73, 0x46, 0x67, 0x3b, 0xee, - 0x60, 0xd7, 0x29, 0x07, 0xbb, 0x10, 0x3a, 0xd8, 0x37, 0xa9, 0x5b, 0x7c, 0x4f, 0xef, 0x6a, 0x9f, - 0xfa, 0x10, 0xae, 0x76, 0xc2, 0xa5, 0xb2, 0x1f, 0xd2, 0xa5, 0xbe, 0xab, 0xae, 0xf3, 0xe2, 0x70, - 0xd7, 0xf9, 0x5d, 0xe7, 0x22, 0x7f, 0x70, 0x1c, 0x9c, 0x0b, 0x2e, 0x6b, 0x3e, 0xd9, 0x4b, 0xbe, - 0xfa, 0xbb, 0xce, 0x4b, 0xfe, 0x10, 0x73, 0x4a, 0x84, 0x41, 0xef, 0xbc, 0xcb, 0xd8, 0xec, 0x27, - 0x69, 0x46, 0xe4, 0x11, 0xaa, 0x15, 0xb7, 0xbd, 0xb7, 0xd7, 0x6e, 0x35, 0xee, 0xdb, 0xfe, 0x8a, - 0x51, 0x2d, 0x58, 0x76, 0x0f, 0x15, 0x9b, 0x7b, 0xcd, 0x1e, 0x2b, 0x0c, 0x23, 0xde, 0xe9, 0xf5, - 0xf6, 0xa9, 0x18, 0x45, 0xd5, 0xf9, 0x5d, 0xe7, 0x8d, 0xbf, 0x92, 0x00, 0xe7, 0x37, 0xee, 0xd4, - 0xc9, 0x4b, 0x17, 0x1f, 0x66, 0x5a, 0x3c, 0xe1, 0x61, 0x63, 0xdf, 0xa9, 0x87, 0x25, 0x3e, 0x9a, - 0x87, 0x8d, 0x7f, 0x17, 0x3c, 0x6c, 0xe2, 0xb7, 0xdf, 0xc3, 0x04, 0xf2, 0x15, 0xef, 0xef, 0x58, - 0x0f, 0x1b, 0x8f, 0x3e, 0x7d, 0x93, 0x33, 0x62, 0x46, 0x0a, 0xbe, 0x6b, 0x4b, 0xbf, 0x9f, 0x00, - 0x97, 0x4e, 0x44, 0xba, 0x20, 0xb1, 0x7c, 0xfa, 0x70, 0xf7, 0xdb, 0x1e, 0xca, 0x7e, 0x8a, 0xf9, - 0x90, 0xb1, 0xec, 0x7b, 0xe4, 0x48, 0x91, 0x43, 0xdf, 0xfc, 0x2a, 0xf3, 0xde, 0xab, 0x27, 0x67, - 0x94, 0x6f, 0xbf, 0x3a, 0xc6, 0xff, 0x8e, 0xf3, 0xa9, 0xe7, 0x23, 0x9f, 0x5a, 0x3c, 0x11, 0xb5, - 0x3e, 0xff, 0xaf, 0x98, 0xa0, 0x2c, 0xfc, 0x3a, 0xee, 0x0b, 0xe3, 0xe0, 0x0a, 0xf9, 0xd6, 0xb3, - 0x6a, 0x77, 0xec, 0x3d, 0xd4, 0xa3, 0xa7, 0xd3, 0xab, 0xb1, 0xbb, 0x34, 0x54, 0xf4, 0x22, 0xf7, - 0x6a, 0x3e, 0x9e, 0x42, 0xbf, 0x87, 0x01, 0xee, 0xaf, 0xc6, 0xa7, 0xd0, 0x9f, 0x65, 0xc0, 0x6c, - 0xe8, 0x8c, 0xe3, 0xc4, 0x44, 0xbf, 0xf3, 0x67, 0xd0, 0x2f, 0x33, 0xe0, 0xe2, 0xd1, 0x9d, 0xf8, - 0xb8, 0x13, 0xc6, 0xae, 0xd2, 0x33, 0xdf, 0xdd, 0xab, 0xf4, 0x27, 0x73, 0xe9, 0xd1, 0x61, 0xfb, - 0x22, 0x02, 0x98, 0xb7, 0xda, 0xbb, 0xd4, 0x72, 0xf7, 0xd9, 0xb0, 0x57, 0xe1, 0xd0, 0x88, 0x5e, - 0x4b, 0xbc, 0xfe, 0x9a, 0x15, 0xe0, 0xd3, 0x7f, 0x9d, 0x01, 0xe7, 0x6a, 0x3d, 0xf2, 0xec, 0x58, - 0xac, 0xda, 0xce, 0x51, 0x35, 0xbc, 0x54, 0xb7, 0x7e, 0xe1, 0x5d, 0x26, 0x93, 0x64, 0xd2, 0x57, - 0xbb, 0xfb, 0xc8, 0x5d, 0xb1, 0xf7, 0x9b, 0x8d, 0xed, 0x4e, 0xfb, 0xe0, 0xe8, 0x92, 0x15, 0xf9, - 0x7b, 0xfc, 0xbe, 0xea, 0x60, 0x97, 0xe9, 0xb5, 0xa1, 0x5b, 0x2d, 0xa1, 0xb6, 0xc5, 0xe1, 0x5d, - 0xcb, 0xce, 0xbc, 0xf3, 0x2e, 0x93, 0x1c, 0x3c, 0x2e, 0x41, 0x77, 0x34, 0xfc, 0xd0, 0xef, 0x8f, - 0x31, 0x60, 0x96, 0xba, 0x5b, 0xc9, 0x6e, 0x81, 0xe9, 0xd8, 0x7d, 0xaf, 0xf0, 0x5d, 0xc6, 0xab, - 0xc7, 0xbf, 0x0b, 0x75, 0x3e, 0x8b, 0xdc, 0x9e, 0x85, 0x7c, 0x12, 0xbc, 0x17, 0xdf, 0x79, 0x7b, - 0xf6, 0xe8, 0x6a, 0x59, 0x17, 0xf5, 0x06, 0xc2, 0x26, 0x2c, 0x10, 0x60, 0x6b, 0xa8, 0xd7, 0x65, - 0x3f, 0x79, 0x8a, 0x9c, 0x89, 0x47, 0x7d, 0x86, 0x39, 0x6e, 0x08, 0x17, 0xcc, 0xd1, 0x77, 0x27, - 0xd9, 0x37, 0x82, 0x7b, 0x9b, 0x4f, 0x2d, 0xd6, 0xc2, 0x3b, 0x6f, 0x4f, 0x3b, 0xdb, 0xfb, 0x8d, - 0xb0, 0x52, 0x4c, 0xa8, 0x49, 0xbb, 0xdb, 0xc2, 0x12, 0xa5, 0xbb, 0x60, 0xbe, 0xda, 0xee, 0x50, - 0x1f, 0x37, 0xea, 0x60, 0x7c, 0xbf, 0xdd, 0xe9, 0x45, 0x1b, 0x37, 0xcf, 0xc7, 0xf7, 0x50, 0x7e, - 0xfe, 0x94, 0x3d, 0x94, 0xa0, 0xc6, 0xd3, 0xba, 0xd8, 0xaf, 0x8d, 0x82, 0xc9, 0x4d, 0xab, 0x58, - 0xc0, 0x81, 0x67, 0x05, 0xcc, 0x84, 0x1f, 0xc5, 0xc7, 0x6e, 0x2d, 0x0e, 0x5c, 0x2c, 0xb8, 0x70, - 0x12, 0x10, 0x04, 0x17, 0x4e, 0x6e, 0x0c, 0xe8, 0x83, 0xc7, 0x29, 0xc6, 0xa8, 0x68, 0xfd, 0x88, - 0x89, 0x55, 0x08, 0xde, 0xa6, 0x90, 0xc3, 0x07, 0x03, 0xe2, 0x17, 0x5b, 0x06, 0x0b, 0xea, 0x51, - 0x66, 0xf0, 0xe4, 0xd5, 0x68, 0xf4, 0xa4, 0x45, 0x74, 0x23, 0x86, 0x7a, 0x34, 0x63, 0xf2, 0xcc, - 0x7a, 0xf1, 0xb7, 0x33, 0xe4, 0x21, 0x6f, 0x67, 0x5c, 0x38, 0xa2, 0x8e, 0x09, 0x1a, 0x7f, 0x42, - 0xe3, 0xe6, 0x0c, 0x99, 0x7b, 0x71, 0xb8, 0x1b, 0x85, 0x4c, 0x36, 0x75, 0xfc, 0xaa, 0xc0, 0xf1, - 0xd7, 0x89, 0xb2, 0x29, 0xfa, 0x3e, 0x3b, 0x8e, 0x37, 0x13, 0x8f, 0xfb, 0x4c, 0x22, 0xc8, 0xa7, - 0xd4, 0x8c, 0x32, 0xb8, 0x9c, 0x9e, 0x80, 0xe3, 0xe9, 0x3f, 0xce, 0x80, 0xb9, 0x4d, 0xab, 0x18, - 0x37, 0xf3, 0x3d, 0x30, 0x75, 0xd0, 0xd9, 0x6d, 0xe0, 0x28, 0x16, 0x79, 0xd3, 0xb5, 0xe1, 0xf3, - 0x45, 0x68, 0xaa, 0xec, 0xd2, 0xc9, 0x21, 0x48, 0xbd, 0xb3, 0x92, 0x3c, 0xe8, 0xec, 0x62, 0xc2, - 0x0f, 0xe9, 0xe7, 0x3f, 0xc3, 0x80, 0x73, 0x45, 0x69, 0x15, 0x75, 0x29, 0x2f, 0xac, 0x83, 0xe4, - 0xae, 0xd4, 0xf0, 0x50, 0x77, 0xf0, 0xfe, 0xe6, 0xf1, 0x40, 0x18, 0xd4, 0x21, 0x8e, 0xbe, 0x74, - 0xf2, 0x54, 0x80, 0x92, 0x6c, 0x72, 0x97, 0xd0, 0x0e, 0x13, 0x6c, 0xec, 0x54, 0xc1, 0xe2, 0xb7, - 0xfb, 0xd3, 0xbf, 0xc2, 0x80, 0xf9, 0xd8, 0x3d, 0x77, 0x72, 0x0b, 0xfa, 0xb3, 0xc7, 0x6f, 0xc9, - 0x33, 0x4f, 0x7b, 0x4b, 0x3e, 0x3d, 0xfc, 0x96, 0x3c, 0x25, 0x33, 0x7d, 0x5f, 0xfe, 0xde, 0xd0, - 0x27, 0x75, 0xd4, 0x70, 0xf7, 0xf6, 0xc6, 0xe9, 0x4f, 0xea, 0x80, 0xf3, 0x1d, 0xbb, 0x87, 0x1a, - 0xbb, 0x78, 0x96, 0x45, 0x9d, 0x46, 0x20, 0x0c, 0xfd, 0xce, 0xce, 0x4d, 0x30, 0x87, 0x27, 0x95, - 0xd8, 0x83, 0x53, 0x4f, 0x9d, 0x69, 0xa7, 0xb9, 0xa0, 0x6e, 0xb0, 0x45, 0x4a, 0xea, 0x3e, 0x61, - 0x11, 0x98, 0x56, 0xc0, 0x25, 0x5c, 0x83, 0x4e, 0xc3, 0x48, 0xcd, 0x33, 0xf3, 0xaf, 0xf4, 0x2f, - 0x8e, 0x81, 0xf3, 0x1b, 0xf7, 0x7b, 0xf5, 0xf6, 0x9b, 0xa8, 0x65, 0x1c, 0xf4, 0x76, 0x2a, 0xc1, - 0x43, 0xd3, 0xac, 0x06, 0x40, 0x17, 0xb9, 0x1d, 0xd4, 0x6b, 0x44, 0x95, 0x4f, 0xba, 0x4a, 0x8d, - 0x10, 0x90, 0x1b, 0x63, 0x53, 0x01, 0xf1, 0x2d, 0x74, 0xc8, 0xbe, 0x0a, 0x26, 0x82, 0xc7, 0xb4, - 0xc2, 0x74, 0xe9, 0x94, 0x0b, 0xec, 0xb4, 0x6e, 0xf2, 0x23, 0x56, 0x58, 0x0b, 0xd7, 0x77, 0x49, - 0xbf, 0xc3, 0x65, 0xe8, 0x19, 0xf5, 0x8f, 0xf4, 0x83, 0xeb, 0x07, 0xb5, 0xd8, 0x0a, 0x98, 0xfe, - 0x1c, 0xd6, 0x42, 0x63, 0x1f, 0xab, 0x21, 0x5c, 0x94, 0x66, 0x4e, 0x67, 0x72, 0x52, 0x65, 0xf9, - 0x11, 0x0b, 0x7c, 0x6e, 0x80, 0x65, 0x75, 0x30, 0xe3, 0x20, 0xbb, 0x83, 0x3a, 0x8d, 0x1e, 0xd6, - 0xd2, 0x59, 0x4f, 0x87, 0xe2, 0x28, 0x19, 0xd0, 0x12, 0x85, 0x62, 0x2d, 0x3a, 0xb6, 0xfb, 0xe6, - 0xc1, 0x3e, 0xd1, 0xe2, 0xe4, 0x13, 0xb5, 0x18, 0x10, 0xdf, 0x42, 0x87, 0x37, 0x93, 0x24, 0x53, - 0x53, 0x33, 0x42, 0x76, 0x01, 0xcc, 0x90, 0x76, 0x1b, 0xdd, 0xf6, 0x41, 0xc7, 0x0d, 0xbe, 0xa9, - 0x27, 0xd7, 0x9b, 0xc2, 0x31, 0xf4, 0x45, 0x06, 0x2c, 0x14, 0xaa, 0xf5, 0x9d, 0x0e, 0xb2, 0x7b, - 0x39, 0xbb, 0x87, 0xb6, 0xdb, 0x9d, 0x43, 0x3c, 0x90, 0xc8, 0x78, 0x6f, 0x81, 0x0b, 0xcd, 0xfd, - 0x46, 0x8f, 0x14, 0x36, 0xdc, 0xa0, 0xb4, 0x39, 0x18, 0x53, 0xa7, 0xbc, 0x12, 0x7a, 0x9c, 0x5b, - 0xec, 0x7c, 0x28, 0x7e, 0x3c, 0xc8, 0x36, 0xf7, 0x29, 0xba, 0x26, 0xea, 0xa6, 0xff, 0xe1, 0x24, - 0x98, 0x0d, 0xee, 0x91, 0x47, 0x8f, 0x07, 0x84, 0x37, 0x2e, 0x83, 0x0b, 0xe5, 0x4f, 0x7a, 0xaf, - 0xce, 0x6e, 0x1d, 0x06, 0xb5, 0xd9, 0x6d, 0x70, 0xf9, 0x84, 0xe0, 0x87, 0xd1, 0x6b, 0x1c, 0x67, - 0xbc, 0xe8, 0x78, 0x9a, 0x26, 0xf2, 0x23, 0xd6, 0x85, 0x63, 0xf2, 0x92, 0x32, 0xf6, 0xce, 0xc9, - 0x67, 0x30, 0x12, 0x4f, 0xf9, 0x0c, 0x06, 0xf8, 0xca, 0xbb, 0xcc, 0x04, 0x48, 0x30, 0xa3, 0x63, - 0x67, 0xbf, 0x81, 0x91, 0xfc, 0x68, 0x6f, 0x60, 0x4c, 0x7d, 0x27, 0x6f, 0x60, 0xfc, 0x05, 0x86, - 0x7a, 0x04, 0x03, 0x3c, 0xf5, 0x23, 0x18, 0xdf, 0xab, 0x25, 0x33, 0xf5, 0xd6, 0x46, 0xfc, 0xe9, - 0x8c, 0xe9, 0xa7, 0x7e, 0x3a, 0x83, 0x39, 0x7a, 0x3a, 0xe3, 0x2f, 0x31, 0xf4, 0xdb, 0x19, 0x33, - 0x4f, 0xff, 0x76, 0xc6, 0xf7, 0xae, 0xc3, 0xf1, 0x27, 0x3a, 0xf6, 0xc0, 0xe5, 0xde, 0x6e, 0xb7, - 0xe1, 0x1f, 0x5d, 0x61, 0x39, 0xf6, 0xee, 0xc7, 0x8d, 0x53, 0x4e, 0x19, 0x4f, 0xbb, 0x3d, 0x13, - 0x4e, 0xb6, 0x17, 0x7b, 0xc3, 0x08, 0xb2, 0x57, 0xc0, 0x6c, 0xe8, 0xe5, 0x61, 0x66, 0x93, 0x8c, - 0x32, 0x9f, 0xec, 0x35, 0x80, 0x93, 0xec, 0xd8, 0xcb, 0x05, 0x33, 0x8f, 0xfa, 0x4c, 0xf2, 0xab, - 0x7d, 0x86, 0x79, 0xdc, 0x67, 0x26, 0x07, 0xd3, 0xf5, 0x24, 0x4c, 0xa6, 0xff, 0xe4, 0x28, 0x98, - 0xb3, 0x82, 0xcb, 0x67, 0x51, 0x3f, 0x7e, 0x10, 0xcc, 0xc4, 0xa2, 0x6d, 0x94, 0xf2, 0x9c, 0x22, - 0xfc, 0xa9, 0x9b, 0x04, 0xe1, 0xbc, 0x44, 0xf2, 0x5f, 0x6b, 0xfa, 0x28, 0xf6, 0x76, 0xd9, 0x12, - 0x98, 0x3c, 0x7a, 0xeb, 0x12, 0xb3, 0xfe, 0xc4, 0x29, 0x91, 0xfc, 0xc4, 0xe6, 0x56, 0x9c, 0x65, - 0xc4, 0x83, 0xfd, 0x01, 0x30, 0x1f, 0x4c, 0x13, 0x91, 0xb6, 0xa3, 0xe7, 0xd0, 0x3f, 0x71, 0x5a, - 0x7a, 0x71, 0xec, 0x90, 0x92, 0x62, 0x3b, 0xe7, 0xc6, 0x8b, 0xbb, 0xe9, 0x1f, 0x5b, 0x00, 0x17, - 0x43, 0xfd, 0xe4, 0xda, 0xad, 0x6e, 0xaf, 0x63, 0x37, 0x5b, 0x41, 0x1c, 0x2e, 0x80, 0x8b, 0x7b, - 0xf6, 0x83, 0x46, 0xd8, 0x36, 0xc9, 0x41, 0x1a, 0x4f, 0xf1, 0xbe, 0x38, 0xbb, 0x67, 0x3f, 0x08, - 0x44, 0x20, 0x79, 0x4e, 0xb9, 0xdd, 0x42, 0x6c, 0x09, 0x2c, 0x9c, 0x60, 0x85, 0x1e, 0xb8, 0x08, - 0x79, 0xdd, 0xf0, 0x82, 0x28, 0xfb, 0x7e, 0x9f, 0x19, 0x95, 0xc8, 0x35, 0xcd, 0xc9, 0xe5, 0xf1, - 0x85, 0x87, 0xc9, 0xeb, 0x38, 0x7d, 0xbf, 0x48, 0xf3, 0x32, 0x83, 0x2a, 0x6c, 0x99, 0x62, 0xf7, - 0x26, 0x3a, 0x6c, 0x74, 0x9b, 0x3f, 0x8c, 0x02, 0xe1, 0xc6, 0xcf, 0x0c, 0x5c, 0x17, 0x06, 0x0c, - 0x6f, 0xa1, 0xc3, 0x5a, 0xf3, 0x87, 0x11, 0x11, 0xef, 0x36, 0x78, 0x66, 0x18, 0xbf, 0x48, 0xc2, - 0x89, 0xc1, 0x25, 0xd8, 0x51, 0x45, 0x8a, 0x6e, 0xae, 0x0e, 0xa4, 0x64, 0xac, 0xcb, 0xc7, 0x99, - 0x46, 0x72, 0x5a, 0x60, 0x31, 0xc6, 0x37, 0xb8, 0x16, 0x7b, 0x24, 0x69, 0xf2, 0xcc, 0x17, 0x7a, - 0x2e, 0x0d, 0x98, 0x92, 0x55, 0xc8, 0x40, 0xd6, 0xcf, 0x80, 0x6b, 0xc3, 0x79, 0x46, 0xd2, 0x4e, - 0x11, 0x69, 0xaf, 0xbc, 0xdf, 0x67, 0x12, 0x12, 0xa7, 0x2b, 0x91, 0xbc, 0xc9, 0xe5, 0x89, 0x85, - 0x87, 0x0f, 0x47, 0xaf, 0x33, 0xf9, 0x51, 0xeb, 0xca, 0x49, 0xde, 0x91, 0xc8, 0xa1, 0xd1, 0xc3, - 0xa7, 0x45, 0x63, 0x46, 0x9f, 0x3e, 0x43, 0xda, 0x31, 0x62, 0xf4, 0xc0, 0x9d, 0x8f, 0x8c, 0x5e, - 0x0c, 0xac, 0x44, 0xb1, 0x8a, 0x84, 0x9c, 0x21, 0x42, 0x9e, 0xc3, 0x2a, 0x15, 0x88, 0xd1, 0x27, - 0x96, 0x13, 0x0b, 0xd7, 0xaf, 0x33, 0xf9, 0x31, 0x62, 0xf3, 0x18, 0xab, 0x63, 0x36, 0x0f, 0xb9, - 0xd1, 0x36, 0x9f, 0x3b, 0x43, 0xb6, 0x04, 0xb1, 0x79, 0xc0, 0x70, 0x88, 0xcd, 0x8f, 0xf3, 0x8b, - 0x04, 0x9c, 0x3f, 0xb2, 0xb9, 0x28, 0x9c, 0xb0, 0x79, 0x82, 0xd8, 0x9c, 0x62, 0x7a, 0xcc, 0xe6, - 0x21, 0xdf, 0xe3, 0x36, 0x3f, 0xeb, 0x9d, 0xc6, 0x71, 0x62, 0xf3, 0x80, 0xe9, 0x50, 0x9b, 0x9f, - 0xe4, 0x19, 0x49, 0xcb, 0x1e, 0xd9, 0x9c, 0xe7, 0x04, 0x89, 0xb2, 0xf9, 0xaf, 0x8f, 0x5d, 0x67, - 0xf2, 0xe3, 0xc4, 0xe6, 0xc7, 0x78, 0x47, 0x22, 0x1b, 0xe0, 0x1c, 0x66, 0x8f, 0xd7, 0x80, 0x47, - 0x92, 0x5e, 0x38, 0x43, 0xd2, 0x09, 0x72, 0x61, 0x7b, 0xb3, 0xb3, 0x3b, 0x90, 0xb0, 0x08, 0x2e, - 0x50, 0x2c, 0x22, 0xc1, 0x2e, 0x9e, 0xe1, 0x8c, 0xdf, 0x9c, 0xbc, 0xce, 0xe4, 0x27, 0xc8, 0x7d, - 0xec, 0x90, 0x55, 0x24, 0x90, 0x19, 0x5c, 0xe8, 0x0e, 0x82, 0xf4, 0x91, 0x48, 0x97, 0xcf, 0x10, - 0x69, 0xd2, 0x82, 0x7b, 0xf6, 0x03, 0x12, 0xac, 0x07, 0x42, 0x55, 0xc1, 0xa5, 0x63, 0x6c, 0x22, - 0xb1, 0x16, 0x4e, 0x17, 0xeb, 0x57, 0xff, 0x1e, 0xd6, 0xd7, 0xa4, 0x75, 0x3e, 0xce, 0xee, 0x98, - 0x71, 0xa3, 0xab, 0xd3, 0xbb, 0xcd, 0x56, 0xdc, 0xb8, 0x67, 0xbd, 0x60, 0x96, 0x24, 0xc6, 0x0d, - 0x03, 0x6d, 0xb1, 0xd9, 0x3a, 0x61, 0xdc, 0x93, 0x3c, 0x23, 0x61, 0x9f, 0x39, 0x6b, 0x40, 0x27, - 0xae, 0x33, 0xf9, 0x24, 0x31, 0xee, 0x31, 0xde, 0xc7, 0x06, 0x74, 0xc4, 0xfe, 0x48, 0xda, 0x6b, - 0x67, 0x48, 0x3b, 0x45, 0x06, 0x74, 0xc8, 0x71, 0x20, 0xe9, 0x66, 0x30, 0x04, 0x29, 0x56, 0x91, - 0x90, 0x4b, 0x44, 0xc8, 0xc5, 0xf7, 0xfb, 0xcc, 0xb8, 0x28, 0xa8, 0x8a, 0x76, 0x52, 0xca, 0x29, - 0x32, 0xb2, 0x63, 0x3c, 0x23, 0x09, 0x2b, 0x01, 0xdb, 0xfd, 0x68, 0x8e, 0x8d, 0x47, 0x9d, 0x97, - 0xce, 0x10, 0x12, 0x10, 0x86, 0x83, 0xa9, 0x39, 0x3e, 0xdb, 0x3c, 0x33, 0x8c, 0x61, 0x24, 0xea, - 0x27, 0x88, 0xa8, 0x33, 0xd4, 0x80, 0x06, 0xd6, 0xc2, 0x09, 0x5e, 0x91, 0x7c, 0xb7, 0xc1, 0x55, - 0x9a, 0x1d, 0x79, 0xa9, 0xea, 0x48, 0x91, 0x2f, 0x9f, 0x21, 0xe3, 0x34, 0xcd, 0x17, 0xaf, 0xd4, - 0x06, 0xea, 0xfc, 0x41, 0xf0, 0xec, 0x69, 0x7c, 0x23, 0x51, 0x97, 0xcf, 0x9c, 0x79, 0xa6, 0xad, - 0x67, 0x86, 0x31, 0x8f, 0xe4, 0xbe, 0x1b, 0x38, 0xd6, 0x11, 0xff, 0xe3, 0xc1, 0x28, 0x73, 0x86, - 0xe0, 0x33, 0xc4, 0xa7, 0x06, 0xbc, 0xe9, 0x78, 0x84, 0x40, 0xea, 0x54, 0xce, 0x91, 0xe8, 0xaf, - 0x10, 0xd1, 0x9f, 0x09, 0x42, 0xd2, 0xd1, 0xcb, 0x11, 0x60, 0x39, 0xb9, 0xf0, 0xf0, 0x61, 0xe0, - 0x11, 0x33, 0xd6, 0xd5, 0xa1, 0x6d, 0x84, 0x1d, 0xb8, 0xf9, 0xfb, 0x99, 0x5f, 0xea, 0x33, 0x9f, - 0x67, 0xc0, 0x33, 0x80, 0x0d, 0x66, 0xab, 0xd4, 0x51, 0x86, 0xd2, 0x65, 0xc7, 0xf9, 0x8c, 0x94, - 0x51, 0xc1, 0x12, 0x60, 0x83, 0xb0, 0x46, 0x15, 0x26, 0x79, 0x2e, 0xc3, 0x8b, 0x19, 0x5e, 0x01, - 0xcf, 0x81, 0x8b, 0x83, 0x16, 0x68, 0x12, 0x51, 0xcd, 0x48, 0x5c, 0x46, 0x12, 0x41, 0x0a, 0x9c, - 0xab, 0xf4, 0x76, 0x8e, 0x15, 0x4f, 0x0b, 0x42, 0x86, 0xd7, 0x33, 0x82, 0x9c, 0x11, 0xb4, 0xec, - 0x32, 0xb8, 0x7c, 0x22, 0x7f, 0x39, 0x6d, 0x3b, 0xee, 0x15, 0x6a, 0xd2, 0x1f, 0x4c, 0x2c, 0x31, - 0xf2, 0xf1, 0x70, 0x77, 0x6e, 0x4c, 0x26, 0x2f, 0x4d, 0x5e, 0x1d, 0x3e, 0x9f, 0xc7, 0x2a, 0x24, - 0x71, 0x56, 0x8b, 0x2b, 0x68, 0x19, 0x3d, 0x9b, 0x09, 0x64, 0xa1, 0xa6, 0xd5, 0xd8, 0xd6, 0xdf, - 0xf4, 0xe3, 0x3e, 0x03, 0xa2, 0x77, 0x29, 0x85, 0xec, 0x0d, 0x6a, 0x3a, 0x3a, 0x2e, 0x0d, 0xae, - 0x30, 0xf7, 0xb8, 0xcf, 0xcc, 0x92, 0x0a, 0x52, 0x86, 0x97, 0xb3, 0x7c, 0x20, 0xcf, 0xc9, 0xb9, - 0x26, 0x56, 0x25, 0x7a, 0x2e, 0x73, 0x9c, 0x3c, 0x97, 0x99, 0xbd, 0x1e, 0x84, 0xeb, 0x41, 0xf0, - 0x8f, 0x51, 0x5e, 0x78, 0xdc, 0x67, 0xce, 0x63, 0x4a, 0x81, 0xcb, 0x08, 0x7c, 0x76, 0x39, 0x08, - 0x46, 0xb1, 0x88, 0x1c, 0xa3, 0xbd, 0xfc, 0xb8, 0xcf, 0x5c, 0x22, 0xb4, 0x62, 0x46, 0x90, 0x22, - 0x41, 0x4e, 0xc6, 0xc5, 0x58, 0x95, 0xe8, 0xbd, 0xb3, 0x71, 0x41, 0xc9, 0x08, 0x6a, 0xa4, 0x1a, - 0x2a, 0x40, 0xc5, 0xa8, 0xaf, 0x3d, 0xee, 0x33, 0x57, 0x09, 0xb5, 0x9e, 0x11, 0xb9, 0x48, 0x35, - 0xc7, 0xc3, 0x44, 0xac, 0xc2, 0x4b, 0x8f, 0xfb, 0xcc, 0x8b, 0xe4, 0xd8, 0x46, 0xcb, 0x88, 0x7a, - 0x56, 0x04, 0x4b, 0xa7, 0x0d, 0xd8, 0x58, 0xa5, 0x97, 0x1f, 0xf7, 0x99, 0xeb, 0xb8, 0x92, 0xc4, - 0x67, 0x24, 0x21, 0x2b, 0x1d, 0x1f, 0xe5, 0xc3, 0x55, 0x9a, 0x79, 0xdc, 0x67, 0x3e, 0x49, 0x6a, - 0x49, 0x19, 0x49, 0x8e, 0xef, 0xd8, 0x06, 0xeb, 0x98, 0x8d, 0x44, 0x12, 0xc0, 0xe9, 0x8d, 0x44, - 0x72, 0x16, 0xce, 0x0d, 0x1e, 0x15, 0x3d, 0x0f, 0x2f, 0x6c, 0x24, 0x92, 0x97, 0xe0, 0xe5, 0xc1, - 0x9b, 0x6c, 0x57, 0xe1, 0xb5, 0x8d, 0x44, 0xf2, 0x59, 0x98, 0xda, 0x48, 0x24, 0x53, 0xf0, 0xb9, - 0xe0, 0x7d, 0xb6, 0x8d, 0x44, 0x32, 0x0d, 0x9f, 0xdf, 0x48, 0x24, 0x9f, 0x87, 0x2f, 0x6c, 0x24, - 0x92, 0x2f, 0xc0, 0x17, 0x37, 0x12, 0xc9, 0x17, 0xe1, 0x4b, 0x1b, 0x89, 0xe4, 0x75, 0xf8, 0xf2, - 0x46, 0x22, 0xf9, 0x49, 0x98, 0x49, 0xff, 0x0d, 0x06, 0xa4, 0x0d, 0xb7, 0xd7, 0x7c, 0x0b, 0x99, - 0xad, 0x1d, 0xf2, 0xe8, 0x69, 0xf4, 0xee, 0x70, 0x15, 0x2f, 0x2b, 0x9a, 0x28, 0x78, 0x4e, 0xe6, - 0x4b, 0x0c, 0x58, 0x44, 0x21, 0xc1, 0xd1, 0x0b, 0xae, 0xfb, 0x21, 0x49, 0xb8, 0x94, 0x3a, 0xbe, - 0x10, 0x0e, 0xd6, 0x9a, 0xf4, 0x89, 0x04, 0xf7, 0xce, 0xdb, 0x0b, 0xa7, 0x30, 0x3a, 0x1c, 0xf2, - 0xb2, 0x78, 0x92, 0xb1, 0x06, 0xe4, 0xc7, 0x05, 0x4b, 0xff, 0x11, 0x06, 0x5c, 0x09, 0x64, 0xaf, - 0xa1, 0xce, 0x5b, 0x4d, 0x17, 0x51, 0x22, 0xf7, 0x00, 0xec, 0x06, 0xe8, 0x8f, 0x22, 0xe7, 0x8b, - 0xef, 0xbc, 0x3d, 0x47, 0x55, 0x3f, 0x1c, 0xba, 0xb1, 0x34, 0xdf, 0xa5, 0x5b, 0x4e, 0xff, 0x1c, - 0x03, 0x96, 0x02, 0x99, 0xd6, 0xda, 0x9d, 0xfb, 0x76, 0xc7, 0xab, 0x76, 0xda, 0x0f, 0x0e, 0x29, - 0xc1, 0xbe, 0xc0, 0x80, 0x4b, 0x7e, 0x50, 0xd8, 0xd8, 0xc7, 0xa5, 0x1f, 0x45, 0xbe, 0xcc, 0x3b, - 0x6f, 0x5f, 0x18, 0xc2, 0xe4, 0x14, 0x1d, 0x46, 0xa4, 0x94, 0x30, 0xe9, 0xbf, 0x32, 0x0e, 0x2e, - 0xd4, 0x90, 0x7b, 0xd0, 0x69, 0xf6, 0x68, 0x09, 0x5f, 0x07, 0xb0, 0xd5, 0x6e, 0x50, 0xec, 0x9f, - 0xb0, 0xfa, 0x9b, 0x6b, 0xb5, 0xe3, 0xfd, 0x65, 0x0f, 0xc1, 0x35, 0x9b, 0x68, 0xa1, 0x71, 0x4a, - 0x4f, 0x83, 0x9d, 0x31, 0xe9, 0x94, 0x5d, 0x8f, 0x33, 0x15, 0x98, 0x1f, 0xb1, 0x16, 0xed, 0x53, - 0x29, 0xd8, 0x3f, 0xc7, 0x80, 0xcb, 0x61, 0xdb, 0x27, 0xec, 0x9f, 0x3c, 0x6b, 0xbf, 0xe2, 0x54, - 0x57, 0xca, 0x7e, 0xea, 0x9d, 0x77, 0x19, 0x95, 0x95, 0xe9, 0x5a, 0x07, 0xad, 0xa6, 0xdf, 0x44, - 0x5e, 0xa8, 0xf7, 0xe0, 0x28, 0x73, 0xa5, 0xd0, 0xea, 0xa1, 0x4e, 0x0b, 0xf5, 0x48, 0xf5, 0xc3, - 0x50, 0xda, 0x8b, 0xf6, 0x30, 0xce, 0xec, 0x2a, 0x60, 0xb1, 0x96, 0xe9, 0x31, 0xf0, 0x84, 0x85, - 0x2c, 0x6c, 0xb5, 0xa9, 0x61, 0x70, 0xc8, 0xfe, 0x18, 0x03, 0x9e, 0x0b, 0xbb, 0x7b, 0xc6, 0x00, - 0x0d, 0x36, 0x82, 0xb5, 0xb3, 0x3a, 0x7e, 0xd6, 0xf8, 0xcf, 0x33, 0xd6, 0x92, 0x7d, 0x26, 0x55, - 0xf6, 0x65, 0x70, 0xcc, 0x1f, 0x63, 0x51, 0x2e, 0x9a, 0x28, 0xc7, 0x85, 0x8c, 0x98, 0xd1, 0xb2, - 0x2f, 0x83, 0x4b, 0xc7, 0x7a, 0x7d, 0xda, 0x34, 0x19, 0xdf, 0xd2, 0x09, 0x0f, 0xb2, 0x7e, 0x66, - 0x0c, 0x9c, 0xab, 0xa1, 0xed, 0x3d, 0xd4, 0x8a, 0x29, 0x99, 0xbd, 0x01, 0x26, 0xbb, 0x1d, 0xb7, - 0x61, 0xb7, 0x9e, 0xe4, 0xa8, 0x13, 0xdd, 0x8e, 0x6b, 0xb4, 0x0e, 0xd9, 0x3c, 0x98, 0xc1, 0x15, - 0xba, 0x01, 0xa7, 0xc8, 0x1f, 0x9f, 0x1f, 0x3a, 0xf2, 0xc2, 0xe6, 0x2c, 0xe4, 0x93, 0xbd, 0xbc, - 0x11, 0x6b, 0xba, 0xdb, 0x71, 0x43, 0x64, 0x17, 0x37, 0xed, 0x75, 0x7b, 0xa4, 0xe9, 0xb3, 0x6d, - 0x37, 0xe1, 0x75, 0x7b, 0xb8, 0xe9, 0x4f, 0x81, 0xd9, 0x66, 0xab, 0xd7, 0xb1, 0xa3, 0xc6, 0xcf, - 0xdc, 0xa5, 0x67, 0xac, 0x19, 0x42, 0x1c, 0x36, 0x87, 0xe5, 0xc6, 0xad, 0x0d, 0xe4, 0x9e, 0x7c, - 0x7a, 0xb9, 0x19, 0x6b, 0xda, 0xeb, 0xf6, 0x22, 0xb9, 0xb3, 0x2f, 0x02, 0x36, 0xa6, 0x81, 0x53, - 0xf3, 0x9a, 0x4f, 0x00, 0x36, 0xd6, 0x60, 0xdc, 0xaa, 0xe3, 0x47, 0xa7, 0x8d, 0x0a, 0xf9, 0x0f, - 0x56, 0x83, 0xb9, 0x6b, 0xf9, 0xf7, 0x82, 0xd9, 0xc0, 0x38, 0xb5, 0xe0, 0xb8, 0x80, 0xbd, 0x00, - 0x60, 0xd9, 0xac, 0xdf, 0xa9, 0x58, 0xb7, 0x1a, 0x35, 0x33, 0xb7, 0x69, 0x15, 0xea, 0x5b, 0x70, - 0x84, 0x3d, 0x07, 0x66, 0x2d, 0xa3, 0x6e, 0x36, 0x8a, 0x85, 0x52, 0xa1, 0x5e, 0x28, 0xaf, 0x43, - 0x86, 0x5d, 0x00, 0x17, 0xaa, 0x95, 0x62, 0x21, 0xb7, 0xd5, 0xc8, 0x1a, 0x35, 0x73, 0xb5, 0x61, - 0x55, 0x36, 0x49, 0xc9, 0x28, 0x26, 0xbe, 0x63, 0xac, 0x35, 0xcc, 0xbb, 0xb9, 0xe2, 0x66, 0xad, - 0x50, 0x29, 0xc3, 0x31, 0x4c, 0x5c, 0xcb, 0x1b, 0x55, 0xb3, 0x91, 0xad, 0xd4, 0x1b, 0x55, 0xab, - 0x52, 0x37, 0x73, 0x75, 0x5c, 0x92, 0x58, 0xae, 0x81, 0xb9, 0x81, 0x00, 0x35, 0xb7, 0x4d, 0x3e, - 0x4d, 0x5c, 0x0c, 0x19, 0xd7, 0xcc, 0x7a, 0xa3, 0x96, 0xab, 0x54, 0xcd, 0x46, 0xd9, 0x28, 0x99, - 0xb5, 0xaa, 0x91, 0x33, 0xe1, 0x08, 0xfb, 0x1c, 0xb8, 0x76, 0xa2, 0xfc, 0x76, 0xc1, 0xaa, 0x6f, - 0x1a, 0xc5, 0x46, 0xbe, 0x52, 0xab, 0x43, 0x66, 0xf9, 0x2e, 0xb8, 0x64, 0x1d, 0xec, 0xa2, 0x5c, - 0x7b, 0xcf, 0x69, 0xb6, 0x9a, 0xad, 0x6d, 0x63, 0x77, 0xbb, 0xdd, 0x69, 0xf6, 0x76, 0xf6, 0xd8, - 0x79, 0x30, 0xbd, 0x56, 0xb0, 0x6a, 0xf5, 0x46, 0xc9, 0xa8, 0xe7, 0xf2, 0x70, 0x84, 0x65, 0xc1, - 0xdc, 0xaa, 0x59, 0xde, 0x6a, 0x54, 0x6e, 0x9b, 0x96, 0x55, 0x58, 0x35, 0x6b, 0x90, 0x61, 0xcf, - 0x83, 0x79, 0xa3, 0x58, 0xac, 0xdc, 0x89, 0x21, 0x47, 0x17, 0x13, 0x8f, 0xfa, 0xcc, 0xc8, 0xf2, - 0x23, 0x06, 0x4c, 0xc7, 0x2e, 0x65, 0xb0, 0x8b, 0x00, 0xd6, 0x2d, 0xa3, 0x5c, 0x5b, 0xab, 0x58, - 0x25, 0xd3, 0x6a, 0x94, 0x2b, 0x65, 0x13, 0x8e, 0x10, 0x5a, 0x86, 0x9d, 0x03, 0xa0, 0x58, 0xb9, - 0x63, 0x5a, 0x8d, 0x9c, 0x51, 0x33, 0x21, 0x81, 0x37, 0xab, 0xd5, 0x08, 0x26, 0x7a, 0xc2, 0xaa, - 0x53, 0xa4, 0xc6, 0xaa, 0x99, 0xab, 0xac, 0x9a, 0x70, 0x0c, 0x4b, 0x53, 0xae, 0x58, 0x25, 0xa3, - 0x58, 0xb8, 0x67, 0x36, 0xaa, 0x46, 0x3d, 0x0f, 0x13, 0xec, 0x45, 0x70, 0xce, 0x32, 0x4b, 0x95, - 0xdb, 0x66, 0xe3, 0x4e, 0xbe, 0x50, 0x0f, 0xd5, 0x30, 0x4e, 0xb8, 0x59, 0xc5, 0xa8, 0xea, 0x04, - 0x3b, 0x0b, 0xa6, 0xea, 0x56, 0xa1, 0xd4, 0x28, 0x9a, 0x6b, 0x75, 0x38, 0x89, 0x8b, 0x09, 0x68, - 0x15, 0xd6, 0xf3, 0x75, 0x98, 0x64, 0x93, 0x20, 0x81, 0x61, 0x38, 0xb5, 0xfc, 0xaf, 0x67, 0xc1, - 0xf4, 0xa6, 0x55, 0x8c, 0x0e, 0x2c, 0xb0, 0x18, 0x9b, 0xe5, 0x9c, 0x51, 0x37, 0xd7, 0x2b, 0x56, - 0xe1, 0x9e, 0xb9, 0x0a, 0x47, 0xb0, 0x96, 0x2c, 0xd3, 0x28, 0x36, 0xcc, 0x5a, 0xdd, 0xa8, 0x63, - 0xd1, 0xd3, 0x60, 0x29, 0x57, 0x29, 0x55, 0x37, 0xeb, 0xa6, 0xd5, 0x30, 0xca, 0xab, 0x8d, 0x42, - 0xb9, 0x6e, 0x5a, 0x65, 0xac, 0xfe, 0xc8, 0x47, 0x46, 0xd9, 0x4b, 0x80, 0x5d, 0x2b, 0x94, 0x8d, - 0x72, 0xae, 0x60, 0x14, 0x1b, 0x35, 0xd3, 0xba, 0x5d, 0xc8, 0x99, 0xb5, 0xc0, 0xf6, 0xd9, 0xcd, - 0x5a, 0xa1, 0x6c, 0xd6, 0x6a, 0xa4, 0xae, 0x99, 0xab, 0x94, 0x2b, 0xa5, 0x2d, 0x98, 0xc0, 0x96, - 0x1e, 0xce, 0xb5, 0x50, 0x5e, 0xab, 0xc0, 0x71, 0x76, 0x06, 0x24, 0x8d, 0x4d, 0xe2, 0x28, 0x35, - 0x38, 0x81, 0xa1, 0x5a, 0xbe, 0x52, 0xad, 0x62, 0x27, 0x9b, 0xc4, 0x36, 0xca, 0x6d, 0x16, 0xeb, - 0xa4, 0x5e, 0x25, 0x87, 0x7f, 0xc2, 0x24, 0x0b, 0xc0, 0x44, 0xdd, 0x32, 0x6e, 0x9b, 0x45, 0x38, - 0xc5, 0x42, 0x30, 0x63, 0x64, 0x37, 0xb1, 0x67, 0xae, 0x5a, 0x9b, 0xeb, 0x35, 0x08, 0xd8, 0x2b, - 0xe0, 0xa2, 0xb1, 0x1a, 0xd5, 0xa9, 0x56, 0xac, 0x72, 0x65, 0xdd, 0x32, 0xaa, 0xf9, 0x2d, 0x38, - 0x8d, 0xb9, 0xe5, 0x2b, 0x25, 0x93, 0x94, 0xac, 0x1b, 0xd6, 0xaa, 0x59, 0x86, 0x33, 0xb8, 0xc1, - 0x52, 0xa1, 0x58, 0xa8, 0x1b, 0xd6, 0x16, 0x9c, 0xc5, 0x66, 0xa8, 0x55, 0x48, 0xdf, 0xc2, 0xf1, - 0x81, 0xe5, 0x98, 0xc3, 0x7a, 0x5e, 0x35, 0x8d, 0xd5, 0x46, 0x0d, 0x9b, 0x06, 0xce, 0xb3, 0x2f, - 0x82, 0xe7, 0x0a, 0xe5, 0xd5, 0xc2, 0xed, 0xc2, 0x2a, 0xf6, 0xc7, 0x5a, 0xbd, 0x92, 0xbb, 0xd5, - 0x30, 0x56, 0xb1, 0x2e, 0x08, 0xf3, 0x7a, 0xa5, 0x52, 0xac, 0x41, 0x88, 0x95, 0x55, 0xb7, 0x8c, - 0x42, 0xb9, 0x50, 0x5e, 0x8f, 0xe1, 0xcf, 0xe1, 0x1e, 0xac, 0x1a, 0x64, 0x1c, 0xb1, 0xd8, 0x30, - 0x35, 0xf3, 0x6e, 0xc3, 0x5c, 0xdd, 0xcc, 0x19, 0x64, 0xb4, 0x9c, 0xc7, 0x22, 0x59, 0x66, 0xb1, - 0xb0, 0x8e, 0xa1, 0x0b, 0xec, 0x22, 0xb8, 0x64, 0x62, 0x95, 0xd5, 0x8d, 0x42, 0xb9, 0x64, 0x96, - 0x83, 0x8e, 0x19, 0x56, 0xbd, 0x06, 0x2f, 0xb2, 0x57, 0xc1, 0x42, 0xd5, 0xb4, 0x6a, 0x95, 0x32, - 0x96, 0x02, 0xcb, 0x46, 0x0a, 0xb3, 0xc5, 0xca, 0x7a, 0x0d, 0x5e, 0x62, 0xa7, 0xc0, 0x78, 0xd1, - 0x5c, 0x37, 0x8a, 0xf0, 0x32, 0xee, 0x57, 0xb1, 0x92, 0x33, 0x8a, 0x44, 0xe9, 0x56, 0x29, 0x68, - 0x69, 0x01, 0x6b, 0xa4, 0x56, 0xb7, 0x4c, 0xa3, 0x84, 0x25, 0x2c, 0x99, 0xab, 0x05, 0x03, 0x5e, - 0xc1, 0x9d, 0xdd, 0xa8, 0x64, 0x1b, 0x35, 0xd3, 0xb0, 0x72, 0x79, 0xb8, 0x88, 0xc5, 0x59, 0x37, - 0x4a, 0xd9, 0x22, 0x96, 0xf7, 0x19, 0xec, 0x35, 0x64, 0x2c, 0x14, 0x03, 0x1e, 0x57, 0xb1, 0x7c, - 0x96, 0xb9, 0x66, 0x5a, 0x66, 0x39, 0xec, 0xbd, 0x65, 0x86, 0x55, 0xaf, 0xe1, 0xb2, 0x5a, 0xde, - 0xb0, 0xcc, 0x3b, 0x86, 0x15, 0x94, 0xad, 0x59, 0x26, 0x01, 0xe0, 0x12, 0x36, 0x5d, 0xd5, 0x34, - 0xad, 0x46, 0xbd, 0xd2, 0xc0, 0x7f, 0xe1, 0xb3, 0xd8, 0xb9, 0x4b, 0x86, 0x55, 0xd8, 0xd8, 0x34, - 0xca, 0x06, 0x4c, 0xb1, 0xd3, 0x60, 0x32, 0x6f, 0xe4, 0x88, 0x05, 0x9e, 0xc3, 0x7d, 0x59, 0xc7, - 0xe1, 0x01, 0xa6, 0xb1, 0xf2, 0xab, 0xf9, 0x42, 0xb1, 0x52, 0xab, 0x54, 0xf3, 0x5b, 0xa1, 0x99, - 0x8b, 0x85, 0x7a, 0x01, 0x77, 0xcf, 0x58, 0xbd, 0x5d, 0xc9, 0x19, 0xb9, 0x2d, 0xf8, 0x3c, 0xae, - 0x7e, 0xc7, 0x34, 0xaa, 0xd8, 0xad, 0x5e, 0xc0, 0x52, 0x57, 0x8d, 0x2d, 0xdc, 0x56, 0x6d, 0xd3, - 0x5a, 0x83, 0x2f, 0xb2, 0x97, 0xc1, 0xf9, 0xfc, 0x66, 0xb9, 0x1e, 0x59, 0x66, 0xad, 0x50, 0xcb, - 0xe3, 0x86, 0x5e, 0xc2, 0xd5, 0xb0, 0x07, 0x98, 0xf5, 0x2d, 0xf8, 0x09, 0xac, 0xdf, 0x81, 0x61, - 0x88, 0xf2, 0x6a, 0xf5, 0x42, 0x7d, 0x33, 0xf0, 0xd5, 0xeb, 0xd8, 0xd5, 0x2a, 0xe5, 0x62, 0xa1, - 0x6c, 0x36, 0xd6, 0x2d, 0xd3, 0x24, 0xbc, 0x72, 0x86, 0xb5, 0x5a, 0x83, 0x2f, 0x63, 0x0b, 0xd7, - 0xaa, 0x15, 0x6c, 0xa4, 0x65, 0x3c, 0xac, 0x6a, 0x77, 0x0a, 0xa5, 0xda, 0x66, 0xa1, 0x5e, 0x8b, - 0x46, 0x40, 0xa1, 0x84, 0x03, 0xad, 0x51, 0xad, 0x1a, 0x96, 0x59, 0x84, 0x9f, 0xc4, 0xca, 0x78, - 0x63, 0xd3, 0xac, 0x91, 0x76, 0xb2, 0x45, 0x13, 0x66, 0xf0, 0x50, 0xbe, 0x55, 0x58, 0xad, 0xc1, - 0x57, 0x88, 0xdb, 0x12, 0x6a, 0xac, 0x5b, 0x23, 0x57, 0xa8, 0x95, 0xe0, 0x0a, 0x8e, 0xe0, 0x47, - 0x96, 0xaf, 0x57, 0x2c, 0x63, 0xdd, 0x84, 0x37, 0xb0, 0xa9, 0x6e, 0x17, 0x2a, 0x45, 0x6c, 0x0a, - 0xc8, 0xb1, 0xd7, 0xc0, 0x95, 0x5b, 0xe6, 0x56, 0xb1, 0xb2, 0xbe, 0x6e, 0x5a, 0x41, 0xcb, 0xa5, - 0x4a, 0xb9, 0x50, 0xaf, 0x58, 0xb8, 0xa7, 0x3c, 0x0e, 0x43, 0x81, 0xa1, 0x1a, 0x66, 0x79, 0x1d, - 0x8f, 0x5c, 0x28, 0x60, 0xb6, 0x83, 0xf1, 0x89, 0xe5, 0x37, 0x8a, 0x35, 0x28, 0x62, 0x3f, 0xbe, - 0x63, 0x66, 0xb1, 0x72, 0x4d, 0xab, 0x5e, 0xa8, 0x99, 0xd8, 0x0d, 0x6b, 0x50, 0xc2, 0xcd, 0xe5, - 0xf2, 0x66, 0xe0, 0xc9, 0x32, 0x31, 0x91, 0x55, 0xa9, 0xd5, 0xa0, 0x82, 0x45, 0xc6, 0x15, 0x82, - 0x39, 0xc3, 0x2c, 0x19, 0x85, 0x22, 0x54, 0xb1, 0xa7, 0x97, 0x8c, 0x22, 0x71, 0x85, 0x60, 0x1c, - 0x69, 0x58, 0xc2, 0x6a, 0x3e, 0x50, 0x7d, 0x30, 0xc6, 0xeb, 0x79, 0xd3, 0x6a, 0xac, 0x59, 0xc6, - 0xe6, 0x6a, 0x0d, 0xea, 0xec, 0xf3, 0xe0, 0xd9, 0xaa, 0x55, 0xb9, 0xbb, 0xd5, 0x30, 0x6e, 0x57, - 0x0a, 0xab, 0x46, 0xe4, 0x60, 0x46, 0xb9, 0x52, 0xde, 0x2a, 0x15, 0xee, 0x99, 0x56, 0x0d, 0xde, - 0xc4, 0xc2, 0xd5, 0xaa, 0x5b, 0x03, 0x0f, 0x33, 0x56, 0x89, 0x7f, 0x7d, 0x0a, 0x8b, 0x53, 0xda, - 0xac, 0x15, 0x72, 0xf0, 0xfb, 0xb0, 0x47, 0xaf, 0xe3, 0x28, 0x4f, 0xc6, 0x0f, 0xfc, 0x34, 0xb6, - 0x4e, 0x79, 0x73, 0x15, 0x07, 0xb4, 0x57, 0x49, 0x30, 0x36, 0xef, 0x84, 0xea, 0x21, 0x23, 0xe0, - 0x35, 0xec, 0x03, 0x85, 0x62, 0x30, 0x74, 0x5e, 0xc7, 0x32, 0xe6, 0x2a, 0xe5, 0x3a, 0x1e, 0x79, - 0xab, 0x66, 0xb1, 0x70, 0xdb, 0xb4, 0xb6, 0xa2, 0xe0, 0x50, 0x83, 0x06, 0xfb, 0x0c, 0xb8, 0x3c, - 0xd0, 0x58, 0xae, 0x52, 0x2a, 0x6d, 0x96, 0x0b, 0x81, 0xbf, 0xd4, 0x60, 0x16, 0x2b, 0x08, 0xcf, - 0x85, 0x65, 0xb3, 0x5e, 0x83, 0x39, 0x12, 0xe9, 0xb2, 0x15, 0x8b, 0x8c, 0x9b, 0x55, 0xe2, 0x81, - 0xa6, 0x51, 0xac, 0xe7, 0x07, 0x4d, 0xe7, 0x0a, 0x65, 0x13, 0x9a, 0x78, 0xd0, 0xe4, 0x2a, 0xe5, - 0xb5, 0x82, 0x55, 0x32, 0x57, 0x1b, 0xb5, 0xaa, 0x51, 0x6a, 0xd4, 0x2a, 0x9b, 0x16, 0x0e, 0xb3, - 0x6b, 0x78, 0x88, 0x10, 0xcc, 0xa6, 0x55, 0xac, 0xc1, 0x75, 0xec, 0x9f, 0x9b, 0xe5, 0x53, 0x88, - 0xf3, 0x78, 0xd0, 0x57, 0xaa, 0x66, 0xb9, 0x91, 0xaf, 0xd7, 0xab, 0x78, 0x3e, 0xbe, 0x5b, 0x30, - 0x6b, 0xb0, 0x80, 0xa7, 0xd6, 0xd5, 0xad, 0xb2, 0x51, 0xc2, 0x03, 0xa6, 0xb8, 0xd5, 0x58, 0x37, - 0xcb, 0x26, 0x9e, 0xf6, 0x57, 0x1b, 0x61, 0x37, 0xe1, 0x06, 0x56, 0x4a, 0xd5, 0xb0, 0x6e, 0xe1, - 0xb0, 0x5a, 0x29, 0x19, 0x85, 0x72, 0x0d, 0xde, 0xc2, 0xf2, 0x1a, 0xc5, 0x5c, 0x25, 0x5f, 0x29, - 0x86, 0xb1, 0x2c, 0x6b, 0xe4, 0x72, 0x15, 0x58, 0x24, 0x39, 0x82, 0x55, 0xb8, 0x8d, 0x5d, 0xb4, - 0x50, 0x6d, 0x18, 0xab, 0xab, 0x96, 0x59, 0xab, 0x99, 0x35, 0x58, 0xc2, 0x3d, 0x29, 0x94, 0x8c, - 0xf5, 0xc0, 0x30, 0xb7, 0x0b, 0xab, 0x66, 0x25, 0x8a, 0x2a, 0x65, 0x32, 0x91, 0x18, 0xb5, 0x7c, - 0xa1, 0x52, 0x0e, 0x62, 0x96, 0x69, 0x6c, 0xd6, 0xb7, 0x60, 0x25, 0x08, 0x27, 0x39, 0xcb, 0x24, - 0x3a, 0x24, 0x45, 0xf9, 0x4a, 0x36, 0x8b, 0x25, 0xaf, 0x62, 0xb1, 0x4a, 0x95, 0x7a, 0xc5, 0x6a, - 0xdc, 0x36, 0xf3, 0x85, 0x5c, 0xd1, 0xac, 0xc1, 0x37, 0xf0, 0xc8, 0xc6, 0xae, 0x86, 0x73, 0x02, - 0xec, 0x86, 0x56, 0x38, 0x85, 0xff, 0x23, 0x06, 0xc0, 0xe3, 0x27, 0xfa, 0x78, 0x94, 0x51, 0x2a, - 0x1a, 0xc1, 0xfe, 0x7e, 0xa7, 0x50, 0x5e, 0xad, 0xdc, 0xa9, 0x35, 0xcc, 0xbb, 0xd5, 0x62, 0xa5, - 0x50, 0xc7, 0xa9, 0x41, 0xc8, 0xd3, 0xa8, 0xd7, 0x8d, 0xdc, 0xad, 0x1a, 0x1c, 0xc5, 0x0e, 0x91, - 0xad, 0xd4, 0x89, 0x19, 0xc7, 0xc8, 0x14, 0x95, 0x33, 0xca, 0x65, 0xec, 0x7e, 0x09, 0xec, 0x5b, - 0x96, 0x59, 0xdd, 0xac, 0x07, 0xe1, 0x90, 0x4c, 0x67, 0x91, 0x4b, 0xc3, 0x09, 0xec, 0x84, 0xc4, - 0x83, 0xe1, 0x64, 0x20, 0x7c, 0xb6, 0x50, 0x34, 0x1b, 0xf5, 0x3c, 0xee, 0x5e, 0x0d, 0x26, 0xc9, - 0x74, 0x5e, 0xb1, 0x1a, 0x01, 0xc9, 0x14, 0x36, 0xd8, 0xaa, 0x59, 0xc6, 0xb3, 0x4f, 0x65, 0x2d, - 0x9a, 0x5c, 0x21, 0xc0, 0xad, 0x87, 0x0e, 0x07, 0xa7, 0xc3, 0xee, 0xfd, 0x7d, 0x06, 0xc0, 0xe3, - 0xff, 0x54, 0x1b, 0x8b, 0x4d, 0x4c, 0x78, 0x17, 0xcf, 0x11, 0x38, 0xa1, 0x83, 0x60, 0x26, 0x42, - 0x64, 0x2b, 0xab, 0x5b, 0x41, 0xd2, 0x13, 0x61, 0x2c, 0x93, 0x44, 0x1c, 0x38, 0xca, 0x5e, 0x01, - 0xf0, 0x08, 0x59, 0xc3, 0x11, 0xd3, 0x84, 0x63, 0x8b, 0x63, 0x0f, 0xdf, 0x66, 0xb0, 0x44, 0x51, - 0x51, 0xd5, 0xb0, 0x8c, 0x92, 0x59, 0x37, 0x2d, 0x98, 0xc0, 0x7d, 0x89, 0xd0, 0x79, 0xd3, 0x58, - 0x35, 0x2d, 0x38, 0x1e, 0xc7, 0xe5, 0x2a, 0x95, 0x5b, 0x05, 0x9c, 0xae, 0xc4, 0x24, 0xda, 0xb4, - 0x8a, 0x70, 0x92, 0xbd, 0x10, 0x47, 0x14, 0x60, 0x92, 0xb4, 0xb2, 0x98, 0xc4, 0x7d, 0xfa, 0x66, - 0x9f, 0x61, 0x96, 0xff, 0x25, 0x03, 0x16, 0x4e, 0x7b, 0xa4, 0x91, 0xbd, 0x06, 0x2e, 0xd4, 0x8b, - 0xb5, 0xc6, 0x5a, 0xa1, 0xbc, 0x6e, 0x5a, 0x55, 0xab, 0x50, 0xae, 0x47, 0xa9, 0x18, 0x91, 0xf5, - 0x1a, 0xb8, 0x62, 0x94, 0xb7, 0x1a, 0x38, 0xaf, 0xca, 0x15, 0x2a, 0x9b, 0x14, 0x21, 0x64, 0xf0, - 0xa0, 0x0f, 0x63, 0xc3, 0x68, 0xf8, 0xbb, 0x50, 0x5e, 0x85, 0x63, 0x64, 0x32, 0xc6, 0xe9, 0xdf, - 0x5d, 0x98, 0xc0, 0x9a, 0x5e, 0xaf, 0x54, 0xea, 0xb7, 0x0a, 0x75, 0x38, 0x8e, 0x23, 0xf0, 0x7a, - 0xe5, 0x5e, 0x21, 0x48, 0x4a, 0x36, 0xb2, 0x85, 0x35, 0x0b, 0xe7, 0x9d, 0x93, 0x98, 0xe8, 0x8d, - 0x4d, 0xe3, 0x56, 0xb6, 0x82, 0x93, 0x11, 0x6c, 0x7e, 0xa3, 0x5c, 0xab, 0x94, 0x08, 0xe7, 0x29, - 0x4c, 0x5a, 0xb7, 0x2a, 0xc5, 0x55, 0xb3, 0x96, 0x87, 0x80, 0xa4, 0x2a, 0x95, 0xb5, 0x9a, 0x69, - 0xc2, 0x69, 0x1c, 0xfe, 0xea, 0x15, 0xcb, 0x32, 0xcb, 0xf5, 0x62, 0x25, 0x77, 0xcb, 0xb4, 0x82, - 0xdc, 0xa3, 0x6e, 0x15, 0x72, 0x84, 0xd5, 0xec, 0xf2, 0x97, 0x9f, 0x03, 0xd3, 0xb1, 0x8f, 0xd2, - 0xd8, 0x4f, 0x61, 0xeb, 0x6d, 0x96, 0xeb, 0x38, 0xde, 0x04, 0xdd, 0x7c, 0xf9, 0xbd, 0x3e, 0xf3, - 0xe2, 0x90, 0x4f, 0xcb, 0xce, 0x9d, 0xf8, 0x80, 0x00, 0xcb, 0x15, 0x55, 0x36, 0x56, 0x83, 0xb4, - 0x74, 0x00, 0x63, 0x0d, 0xc4, 0xe1, 0x35, 0x38, 0x46, 0xc1, 0xeb, 0x81, 0x5b, 0x0f, 0xe0, 0x42, - 0x90, 0x88, 0x0e, 0xe0, 0x22, 0x9c, 0xa0, 0xe0, 0x52, 0x90, 0x89, 0x0e, 0xe0, 0x72, 0xa0, 0x97, - 0x01, 0x5c, 0x81, 0x53, 0x14, 0xfc, 0x06, 0x04, 0x14, 0x6c, 0xc1, 0x69, 0x0a, 0xae, 0xc1, 0x19, - 0x0a, 0xae, 0xc3, 0x59, 0x0a, 0xde, 0x0c, 0x32, 0xb2, 0x01, 0x7c, 0x07, 0xce, 0x53, 0xf0, 0x5d, - 0x08, 0x29, 0xf8, 0x1e, 0x3c, 0x17, 0x87, 0xb3, 0x06, 0x64, 0x29, 0x38, 0x0b, 0xcf, 0x53, 0xf0, - 0x2a, 0xbc, 0x40, 0xc1, 0x26, 0xbc, 0x48, 0xc1, 0x6b, 0xf0, 0x12, 0x05, 0xaf, 0xc3, 0xcb, 0x14, - 0x9c, 0x87, 0x0b, 0x14, 0x5c, 0x08, 0x92, 0xaa, 0x01, 0xbc, 0x01, 0x17, 0x29, 0xb8, 0x08, 0x9f, - 0xa1, 0xe0, 0x12, 0xbc, 0x4a, 0xc1, 0x65, 0x78, 0x8d, 0x82, 0x2b, 0x70, 0x89, 0x82, 0xdf, 0x80, - 0xcf, 0x52, 0xb0, 0x05, 0x53, 0x14, 0x5c, 0x83, 0xcf, 0x51, 0x70, 0x1d, 0xa6, 0x29, 0xf8, 0x36, - 0x7c, 0x9e, 0x82, 0xef, 0xc0, 0x17, 0x28, 0x78, 0x0b, 0xbe, 0x48, 0xc1, 0xf7, 0xe0, 0x4b, 0x71, - 0x38, 0x67, 0xc0, 0x4f, 0x50, 0x70, 0x0e, 0x5e, 0xa7, 0xe0, 0x55, 0xf8, 0x32, 0x05, 0xaf, 0xc1, - 0x65, 0x0a, 0x5e, 0x87, 0x9f, 0xa4, 0xe0, 0x3c, 0xcc, 0x50, 0x70, 0x01, 0xbe, 0x42, 0xc1, 0xb7, - 0xe0, 0x0a, 0x05, 0x17, 0xe1, 0x0d, 0x0a, 0x2e, 0x41, 0x8e, 0x82, 0xcb, 0x90, 0xa7, 0xe0, 0x0a, - 0x14, 0x28, 0xd8, 0x82, 0x22, 0x05, 0xe3, 0xd4, 0x26, 0x0e, 0x6f, 0x42, 0x99, 0x82, 0x6f, 0x43, - 0x85, 0x82, 0xef, 0x40, 0x95, 0x82, 0xef, 0x42, 0x8d, 0x82, 0xb7, 0xa0, 0x4e, 0xc1, 0xf7, 0xe0, - 0xcd, 0x38, 0xbc, 0x8a, 0xb3, 0x95, 0x38, 0xbc, 0x11, 0xa4, 0x2c, 0x03, 0xf8, 0x16, 0xfc, 0x34, - 0x05, 0x97, 0xe0, 0xab, 0x14, 0x5c, 0x81, 0xaf, 0x51, 0xf0, 0x3d, 0xf8, 0x7a, 0x1c, 0x36, 0x73, - 0xd0, 0xa0, 0x60, 0x13, 0x66, 0x29, 0x78, 0x1d, 0xe6, 0x28, 0x38, 0x0f, 0x57, 0x29, 0xd8, 0x82, - 0x26, 0x05, 0xe3, 0x44, 0x24, 0x0e, 0xd7, 0xe1, 0x7a, 0x1c, 0x5e, 0x2b, 0xc0, 0x3c, 0x05, 0x6f, - 0xc0, 0x02, 0x05, 0xdf, 0x82, 0x1b, 0x14, 0x5c, 0x82, 0xb7, 0x28, 0x18, 0x27, 0x15, 0x71, 0xd8, - 0x82, 0xa5, 0x38, 0xbc, 0x6e, 0xc0, 0x32, 0x05, 0x67, 0x61, 0x85, 0x82, 0x57, 0x61, 0x95, 0x82, - 0x4d, 0xf8, 0x06, 0x05, 0xaf, 0x41, 0x8b, 0x82, 0xd7, 0x61, 0x8d, 0x82, 0xf3, 0xb0, 0x4e, 0xc1, - 0x05, 0xb8, 0x49, 0xc1, 0x45, 0x78, 0x9b, 0x82, 0x4b, 0xf0, 0x0e, 0x05, 0x97, 0xe1, 0x5d, 0x0a, - 0xae, 0xc2, 0x2d, 0x0a, 0x7e, 0x03, 0xde, 0xa3, 0x60, 0x0b, 0x7e, 0x3f, 0x05, 0xd7, 0xe0, 0x0f, - 0x50, 0x70, 0x1d, 0x7e, 0x86, 0x82, 0x37, 0xe1, 0x0f, 0x52, 0xf0, 0x1d, 0xd8, 0xa0, 0xe0, 0x2d, - 0xf8, 0x43, 0x71, 0x38, 0x7f, 0x0b, 0xda, 0x14, 0x5c, 0x82, 0x0e, 0x05, 0x97, 0xa1, 0x4b, 0xc1, - 0x16, 0xf4, 0x28, 0xb8, 0x0e, 0x11, 0x05, 0x6f, 0x42, 0x3f, 0x0e, 0x17, 0x56, 0xe1, 0x36, 0x05, - 0x9b, 0x70, 0x87, 0x82, 0x8b, 0xb0, 0x49, 0xc1, 0x25, 0xf8, 0x59, 0x0a, 0x2e, 0xc3, 0x37, 0x29, - 0xb8, 0x02, 0x77, 0x29, 0xf8, 0x0d, 0xb8, 0x47, 0xc1, 0x16, 0x6c, 0x51, 0x70, 0x0d, 0xb6, 0x29, - 0xb8, 0x0e, 0xf7, 0xe3, 0xf0, 0x86, 0x09, 0x3f, 0x47, 0xc1, 0x25, 0x48, 0xcd, 0x8f, 0x1b, 0x15, - 0xd8, 0xa5, 0xe0, 0x2a, 0xec, 0xc5, 0xe1, 0x5b, 0x26, 0x3c, 0xa0, 0xe0, 0x75, 0xf8, 0x16, 0x05, - 0xe7, 0xe1, 0x7d, 0x0a, 0x2e, 0xc0, 0x07, 0x14, 0x5c, 0x82, 0x87, 0x14, 0x5c, 0x86, 0x3f, 0x4c, - 0xc1, 0x55, 0xf8, 0x7b, 0x28, 0xd8, 0x82, 0xff, 0x06, 0x05, 0xdf, 0x81, 0x6f, 0x53, 0xf0, 0x16, - 0xfc, 0x37, 0x29, 0xf8, 0x1e, 0xfc, 0xbd, 0xec, 0xfc, 0x11, 0x5c, 0x34, 0xe0, 0x43, 0x86, 0x42, - 0x64, 0xe1, 0x8f, 0xd0, 0x88, 0x1c, 0xfc, 0x3c, 0x8d, 0x28, 0xc0, 0xdf, 0x47, 0x23, 0x6e, 0xc1, - 0x1f, 0xa5, 0x11, 0x16, 0xfc, 0x31, 0x1a, 0x51, 0x83, 0x5f, 0xa0, 0x11, 0x75, 0xf8, 0xfb, 0x69, - 0xc4, 0x26, 0xfc, 0x71, 0x1a, 0x71, 0x1b, 0xfe, 0x01, 0x1a, 0xb1, 0x05, 0xbf, 0x48, 0x21, 0x4a, - 0x06, 0xfc, 0x83, 0x34, 0x22, 0x07, 0xff, 0x10, 0x8d, 0x58, 0x85, 0xff, 0x16, 0x8d, 0x30, 0xe1, - 0x1f, 0xa6, 0x11, 0x6b, 0xf0, 0x27, 0x68, 0xc4, 0x3a, 0xfc, 0x49, 0x1a, 0x91, 0x87, 0x7f, 0x84, - 0x46, 0xdc, 0x82, 0x5f, 0xa2, 0x11, 0x45, 0xf8, 0x6f, 0xd3, 0x88, 0x12, 0xfc, 0x77, 0x68, 0x44, - 0x19, 0xfe, 0x51, 0x1a, 0x51, 0x81, 0xff, 0x2e, 0x8d, 0xa8, 0xc2, 0x3f, 0x46, 0x23, 0xde, 0x80, - 0x5f, 0xa6, 0x11, 0x16, 0xfc, 0xe3, 0x34, 0xa2, 0x06, 0xbf, 0x42, 0x23, 0xea, 0xf0, 0xdf, 0xa3, - 0x11, 0x9b, 0xf0, 0x4f, 0xd0, 0x88, 0xdb, 0xf0, 0x4f, 0xd2, 0x88, 0x3b, 0xf0, 0xa7, 0x68, 0xc4, - 0x5d, 0xf8, 0xef, 0xd3, 0x88, 0x2d, 0xf8, 0xd3, 0x34, 0xe2, 0x1e, 0xfc, 0x53, 0x14, 0xa2, 0x6c, - 0xc0, 0x9f, 0xa1, 0x11, 0x39, 0xf8, 0xa7, 0x69, 0x84, 0x09, 0xff, 0x0c, 0x8d, 0x58, 0x83, 0x7f, - 0x96, 0x46, 0xac, 0xc3, 0x3f, 0x47, 0x23, 0x0a, 0xf0, 0xcf, 0xd3, 0x88, 0x22, 0xfc, 0x59, 0x1a, - 0x51, 0x81, 0x3f, 0x47, 0x23, 0xaa, 0xf0, 0x1d, 0x1a, 0x61, 0xc1, 0xbf, 0x40, 0x23, 0x36, 0xe1, - 0x7f, 0x40, 0x23, 0xee, 0xc1, 0xbf, 0x48, 0x21, 0x2a, 0x25, 0xf8, 0x97, 0x28, 0x44, 0xd5, 0x80, - 0xff, 0x21, 0x8d, 0x30, 0xe1, 0xcf, 0xd3, 0x88, 0x35, 0xf8, 0x97, 0x69, 0xc4, 0x3a, 0xfc, 0x2b, - 0x34, 0x22, 0x0f, 0xff, 0x23, 0x1a, 0x71, 0x0b, 0xfe, 0xc7, 0x34, 0xa2, 0x08, 0xff, 0x2a, 0x8d, - 0x28, 0xc1, 0xbf, 0x46, 0x23, 0xca, 0xf0, 0x3f, 0xa1, 0x11, 0x16, 0xfc, 0xeb, 0x34, 0xa2, 0x06, - 0xff, 0x06, 0x8d, 0xa8, 0xc3, 0x5f, 0xa0, 0x11, 0x77, 0x60, 0x9f, 0x46, 0x6c, 0xc1, 0x77, 0x29, - 0xc4, 0x1b, 0x06, 0xfc, 0x4f, 0x29, 0x84, 0x65, 0xc2, 0xbf, 0x49, 0x23, 0x2a, 0xf0, 0x17, 0x69, - 0x44, 0x0d, 0x3e, 0xa2, 0x11, 0x9b, 0xf0, 0x6f, 0xd1, 0x88, 0x3b, 0xf0, 0x97, 0x28, 0x44, 0xcd, - 0x80, 0xff, 0x19, 0x8d, 0xc8, 0xc2, 0xff, 0x9c, 0x46, 0xe4, 0xe0, 0x2f, 0xd3, 0x88, 0x55, 0xf8, - 0xb7, 0x69, 0x84, 0x09, 0xff, 0x0b, 0x1a, 0xb1, 0x0e, 0xbf, 0x4a, 0x23, 0xf2, 0xf0, 0xbf, 0xa4, - 0x11, 0x05, 0xf8, 0x1e, 0x8d, 0xd8, 0x80, 0xff, 0x15, 0x8d, 0xb8, 0x05, 0xff, 0x0e, 0x8d, 0x28, - 0xc2, 0xbf, 0x4b, 0x23, 0x4a, 0xf0, 0xbf, 0xa6, 0x11, 0x65, 0xf8, 0xdf, 0xd0, 0x88, 0x0a, 0x7c, - 0x4c, 0x23, 0x2c, 0xf8, 0xdf, 0xd2, 0x88, 0x1a, 0xfc, 0xef, 0x68, 0x44, 0x1d, 0xfe, 0xf7, 0x34, - 0xe2, 0x36, 0xfc, 0x7b, 0x34, 0xe2, 0x2e, 0xfc, 0xfb, 0x34, 0x62, 0x0b, 0xfe, 0x0f, 0x34, 0xe2, - 0x1e, 0xfc, 0x07, 0x14, 0xa2, 0x9e, 0x83, 0x5f, 0xa3, 0x11, 0xab, 0xf0, 0x57, 0x68, 0xc4, 0x1a, - 0x7c, 0x9f, 0x46, 0xac, 0xc3, 0x7f, 0x48, 0x23, 0xf2, 0xf0, 0x1f, 0xd1, 0x88, 0x0d, 0xf8, 0x3f, - 0xd2, 0x88, 0x5b, 0xf0, 0x7f, 0xa2, 0x11, 0x45, 0xf8, 0x8f, 0x69, 0x44, 0x09, 0xfe, 0x2a, 0x8d, - 0x28, 0xc3, 0xaf, 0xd3, 0x88, 0x0a, 0xfc, 0x80, 0x46, 0x58, 0xf0, 0x1b, 0x34, 0xa2, 0x0e, 0xff, - 0x67, 0x1a, 0x71, 0x1b, 0xfe, 0x13, 0x1a, 0x71, 0x07, 0xfe, 0x53, 0x1a, 0x71, 0x0f, 0xfe, 0x2f, - 0x14, 0x62, 0xd3, 0x80, 0xdf, 0xa4, 0x11, 0xeb, 0xf0, 0x9f, 0xd1, 0x88, 0x12, 0xfc, 0x5f, 0x69, - 0x44, 0x0d, 0xfe, 0x6f, 0x34, 0x62, 0x0b, 0xfe, 0xef, 0x34, 0xe2, 0x1e, 0xfc, 0x3f, 0x28, 0xc4, - 0x6d, 0x03, 0xfe, 0x73, 0x1a, 0x91, 0x83, 0xbf, 0x46, 0x23, 0x4c, 0xf8, 0x2d, 0x1a, 0xb1, 0x0e, - 0xff, 0x4f, 0x1a, 0x51, 0x80, 0xdf, 0xa6, 0x11, 0x65, 0xf8, 0x2f, 0x68, 0xc4, 0x26, 0xfc, 0x75, - 0x0a, 0x71, 0x67, 0x0d, 0xfe, 0x5f, 0x34, 0xa2, 0x06, 0x7f, 0x83, 0x42, 0xdc, 0xbd, 0x05, 0xff, - 0x6f, 0x1a, 0x51, 0x87, 0xbf, 0x49, 0x21, 0xb6, 0x4c, 0xf8, 0x2f, 0x69, 0x44, 0x1d, 0xfe, 0x2b, - 0x0a, 0x71, 0xcf, 0x80, 0xff, 0x0f, 0x8d, 0x28, 0xc1, 0xff, 0x97, 0x46, 0xdc, 0x81, 0xff, 0x9a, - 0x59, 0xfe, 0x11, 0x06, 0x00, 0xeb, 0x60, 0x17, 0x85, 0xff, 0xbc, 0x25, 0x09, 0x12, 0xab, 0x26, - 0xd9, 0x61, 0x9a, 0x02, 0xe3, 0xe4, 0x10, 0x0d, 0x32, 0xec, 0x15, 0x30, 0x5f, 0x26, 0xfb, 0x44, - 0x83, 0x63, 0xbb, 0xf0, 0x3c, 0x8d, 0xec, 0xa7, 0xc5, 0x8a, 0xe0, 0x18, 0x7b, 0x11, 0x4c, 0x17, - 0x8d, 0xda, 0x00, 0x91, 0x08, 0xe9, 0x2e, 0x82, 0xe9, 0xf5, 0x4a, 0xbd, 0x12, 0xa1, 0xc7, 0x03, - 0x74, 0xb8, 0xe5, 0xf5, 0x27, 0x18, 0x30, 0x9f, 0xdb, 0xb1, 0x77, 0x77, 0x51, 0x6b, 0x3b, 0x12, - 0x84, 0x6c, 0x98, 0xad, 0x19, 0x9b, 0xc5, 0x7a, 0x23, 0x97, 0x37, 0x8a, 0x45, 0xb3, 0xbc, 0x6e, - 0xc2, 0x11, 0xf6, 0x59, 0xf0, 0x8c, 0x49, 0xf6, 0xd1, 0x1b, 0x1b, 0xc6, 0x6d, 0xa3, 0x96, 0xb3, - 0x0a, 0xd5, 0x38, 0x01, 0x43, 0xf6, 0xf5, 0x03, 0x82, 0x9c, 0x51, 0xad, 0xe7, 0xf2, 0x46, 0xac, - 0x74, 0x94, 0x70, 0x2d, 0xd4, 0x82, 0xe2, 0x01, 0x7a, 0x8c, 0x9c, 0xe6, 0x98, 0xa5, 0x6a, 0xc5, - 0x32, 0xc8, 0xa2, 0xbd, 0x12, 0x1c, 0x4d, 0x24, 0x42, 0xf1, 0x5e, 0x04, 0x73, 0xc6, 0xfe, 0x7e, - 0xbd, 0x63, 0xfb, 0x7e, 0xd3, 0x25, 0x87, 0xac, 0x93, 0x60, 0xec, 0x8e, 0x99, 0x85, 0x23, 0x2c, - 0x00, 0x13, 0xc1, 0xce, 0x1f, 0x64, 0x96, 0x3f, 0x0d, 0x66, 0xf2, 0xf5, 0x52, 0xb1, 0xda, 0xee, - 0x36, 0x49, 0x0f, 0x66, 0xc1, 0x54, 0xd6, 0x5c, 0x2f, 0x94, 0xcb, 0x98, 0xd7, 0x08, 0xae, 0x63, - 0x96, 0x57, 0x83, 0xdd, 0xaa, 0xac, 0xb9, 0x56, 0x21, 0xbb, 0x55, 0x58, 0xc9, 0x6b, 0x75, 0xd3, - 0x82, 0x63, 0xcb, 0x87, 0xe0, 0xf2, 0x29, 0xff, 0x67, 0x86, 0x9d, 0x01, 0xc9, 0x8a, 0x51, 0x0b, - 0xb7, 0x8a, 0xd8, 0x05, 0x70, 0x01, 0x43, 0x96, 0x59, 0xad, 0x58, 0xf5, 0xc6, 0xed, 0x42, 0x25, - 0x3c, 0xaf, 0x61, 0xd8, 0xcb, 0xe0, 0x3c, 0x2e, 0x21, 0x1d, 0x88, 0x15, 0x8c, 0x62, 0x51, 0x06, - 0x05, 0xc1, 0x8e, 0xd0, 0x11, 0x07, 0x98, 0xc8, 0xfe, 0x38, 0xf3, 0xf8, 0xeb, 0x4b, 0x23, 0x5f, - 0xfb, 0xfa, 0xd2, 0xc8, 0xb7, 0xbe, 0xbe, 0xc4, 0x3c, 0xfc, 0x60, 0x89, 0xf9, 0xd9, 0x0f, 0x96, - 0x98, 0xaf, 0x7e, 0xb0, 0xc4, 0x3c, 0xfe, 0x60, 0x89, 0xf9, 0xda, 0x07, 0x4b, 0xcc, 0xaf, 0x7e, - 0xb0, 0xc4, 0x7c, 0xf3, 0x83, 0xa5, 0x91, 0x6f, 0x7d, 0xb0, 0xc4, 0xfc, 0xe4, 0x37, 0x96, 0x46, - 0x1e, 0x7d, 0x63, 0x89, 0x79, 0xfc, 0x8d, 0xa5, 0x91, 0xaf, 0x7d, 0x63, 0x69, 0xe4, 0xde, 0xc6, - 0x76, 0x7b, 0xff, 0xcd, 0xed, 0x95, 0xb7, 0xda, 0xbb, 0x3d, 0xd4, 0xe9, 0xd8, 0x2b, 0x07, 0xdd, - 0x1b, 0xe4, 0x87, 0xdf, 0xee, 0xec, 0xbd, 0xb2, 0xdf, 0x69, 0xbf, 0xd5, 0xf4, 0x50, 0xe7, 0x95, - 0xa8, 0xf8, 0xc6, 0xbe, 0xb3, 0xdd, 0xbe, 0x81, 0x1e, 0xf4, 0x82, 0x13, 0xf4, 0x1b, 0xe1, 0x9f, - 0xe0, 0xf3, 0x04, 0x67, 0x82, 0xfc, 0x7b, 0x79, 0xf1, 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x15, - 0x46, 0x25, 0x18, 0x0f, 0x94, 0x00, 0x00, + 0x8b, 0x3a, 0xbd, 0x20, 0x3e, 0xb5, 0x7a, 0x41, 0x84, 0x08, 0xed, 0xd1, 0x19, 0x5b, 0xf8, 0xa9, + 0xd7, 0xad, 0xd9, 0x80, 0x22, 0xac, 0xcf, 0x7e, 0x16, 0x40, 0xb4, 0x83, 0x76, 0x51, 0xab, 0xd7, + 0xe8, 0xa2, 0x1d, 0xe4, 0xf6, 0xda, 0x1d, 0x32, 0x00, 0xa7, 0xb2, 0x6c, 0x7f, 0xe2, 0x0b, 0x7f, + 0x40, 0xc6, 0x9a, 0x0f, 0x69, 0x6b, 0x21, 0x29, 0xfb, 0x1a, 0x48, 0xee, 0xb5, 0xbb, 0x4d, 0xa2, + 0x88, 0x31, 0x32, 0xed, 0xa6, 0x87, 0x1b, 0x2d, 0x5f, 0x2f, 0x15, 0xab, 0x21, 0xa5, 0xd5, 0xaf, + 0xc3, 0x7a, 0x91, 0xc4, 0xc8, 0x23, 0x2a, 0x88, 0x02, 0xea, 0x67, 0x87, 0x73, 0x19, 0xd6, 0xeb, + 0x95, 0x42, 0xc8, 0x00, 0x07, 0xed, 0xae, 0xd9, 0xea, 0x75, 0x0e, 0xa2, 0x4e, 0x86, 0xb8, 0xc5, + 0x37, 0x00, 0x7b, 0x9c, 0x88, 0x85, 0x60, 0xec, 0x2d, 0x74, 0x10, 0x06, 0x51, 0xfc, 0x93, 0x3d, + 0x07, 0xc6, 0xdf, 0xb6, 0x77, 0xf6, 0x83, 0x80, 0x99, 0xb4, 0x02, 0xe0, 0xc6, 0xa8, 0xc6, 0xa4, + 0x7f, 0x76, 0x0c, 0x5c, 0xa9, 0xdd, 0xb3, 0xf7, 0x50, 0xb5, 0xd3, 0xc6, 0x1e, 0x8c, 0x3c, 0xb3, + 0xe5, 0xed, 0xb5, 0x9b, 0xad, 0x28, 0xd4, 0x96, 0x01, 0xc4, 0xa3, 0xa9, 0xd7, 0xb1, 0x7d, 0xbf, + 0xe9, 0xc6, 0x73, 0x9a, 0x17, 0x4f, 0x1c, 0x3f, 0xf5, 0x80, 0x98, 0x64, 0x34, 0x73, 0x36, 0x05, + 0xb3, 0x65, 0x00, 0x76, 0x9b, 0xbd, 0xe6, 0x76, 0xe0, 0x63, 0x41, 0x48, 0x5c, 0x19, 0xce, 0x89, + 0xc8, 0x95, 0x6d, 0xf7, 0x4a, 0x7d, 0xfa, 0x40, 0x26, 0x2b, 0xc6, 0x81, 0x5d, 0x06, 0x33, 0xf7, + 0x91, 0xd3, 0xe8, 0xba, 0x1d, 0x7b, 0x2f, 0x0a, 0x95, 0xc9, 0xbe, 0x7f, 0x5a, 0xd3, 0xf7, 0x91, + 0x53, 0x0b, 0xcb, 0xd8, 0x57, 0x00, 0xf0, 0x77, 0xda, 0xf7, 0x1b, 0x3b, 0xb6, 0x83, 0x76, 0x16, + 0x12, 0xb4, 0x0b, 0x3d, 0x64, 0xac, 0x29, 0x5c, 0x5a, 0xc4, 0x85, 0xec, 0xe7, 0x00, 0xdb, 0xeb, + 0xd8, 0xad, 0x6e, 0xe8, 0xc5, 0x1d, 0xd4, 0xc5, 0x11, 0x7c, 0x7c, 0xa8, 0xb8, 0xd9, 0x76, 0x6f, + 0x15, 0xf9, 0xa8, 0xd5, 0x45, 0xf5, 0xa3, 0x2a, 0x16, 0xa9, 0x11, 0x24, 0x75, 0xbd, 0x41, 0x34, + 0x9b, 0x01, 0xb3, 0xf6, 0x0e, 0x16, 0x65, 0xbb, 0xdd, 0xf6, 0x9c, 0x76, 0x8f, 0x84, 0xa4, 0x98, + 0xd8, 0x33, 0xa4, 0x74, 0x3d, 0x28, 0xdc, 0x48, 0x24, 0x27, 0xe0, 0x64, 0xfa, 0xb7, 0x46, 0xc1, + 0xc2, 0x49, 0x2a, 0x61, 0xc5, 0xa7, 0xcf, 0x88, 0xf1, 0x41, 0x1b, 0x04, 0xf2, 0x0a, 0x18, 0x77, + 0x76, 0xda, 0xee, 0x5b, 0x61, 0xd4, 0x57, 0x4f, 0x37, 0x43, 0x16, 0x93, 0x0e, 0x36, 0x8c, 0x3b, + 0x98, 0x1f, 0xb1, 0x02, 0x3e, 0xec, 0x1d, 0x90, 0xec, 0x20, 0xaf, 0xd9, 0x41, 0x6e, 0x8f, 0xa8, + 0x77, 0x5a, 0xb8, 0x71, 0x3a, 0x4f, 0x2b, 0xa4, 0x3e, 0x81, 0x6d, 0x9f, 0x1b, 0x6b, 0x81, 0x84, + 0xbf, 0x63, 0x6f, 0x87, 0x16, 0xf8, 0xbe, 0xd3, 0xb9, 0xae, 0xed, 0xd8, 0xdb, 0x83, 0x1c, 0x73, + 0xf7, 0xda, 0x4d, 0x17, 0x85, 0x7c, 0x09, 0xaf, 0x6c, 0x8a, 0x0e, 0x52, 0x67, 0x1e, 0x1f, 0x32, + 0xe3, 0xe1, 0x3c, 0x39, 0x2e, 0x67, 0xa4, 0xfe, 0x4c, 0xf9, 0x8f, 0x19, 0xf0, 0xf2, 0xb3, 0xb1, + 0x66, 0x65, 0x00, 0x5a, 0xed, 0xc6, 0x3d, 0x64, 0x7b, 0xa8, 0xd3, 0x7d, 0xca, 0x84, 0x3f, 0xd5, + 0x6a, 0xe7, 0x03, 0x42, 0xb6, 0x01, 0xf0, 0x30, 0x41, 0x2d, 0xaf, 0x5f, 0x35, 0xb0, 0x88, 0xf2, + 0xd1, 0xfb, 0x19, 0xf6, 0x70, 0x36, 0xe0, 0x17, 0x36, 0x90, 0x7d, 0x19, 0x9c, 0xed, 0xc6, 0xd8, + 0x37, 0x5c, 0x22, 0xf2, 0x49, 0xa9, 0xc1, 0x3f, 0x60, 0x40, 0xea, 0x69, 0x6d, 0xb0, 0x9f, 0x03, + 0xe7, 0x9b, 0x2d, 0x1f, 0x75, 0x50, 0xcb, 0x45, 0x21, 0xdf, 0x58, 0xf2, 0x96, 0x7d, 0xe5, 0x83, + 0x43, 0x66, 0x36, 0xdb, 0xee, 0xbd, 0x5a, 0x88, 0x88, 0x7e, 0xfb, 0x90, 0x19, 0x09, 0x07, 0xdb, + 0xd7, 0x18, 0x26, 0xfc, 0x75, 0xed, 0xe1, 0xa8, 0x75, 0xb6, 0xcf, 0x27, 0x10, 0x17, 0x27, 0x7c, + 0xac, 0x03, 0xce, 0xdb, 0xfb, 0xbd, 0x76, 0x90, 0x1d, 0xc7, 0xd9, 0x07, 0x41, 0xfc, 0xfa, 0x07, + 0x87, 0xcc, 0x59, 0xcc, 0xde, 0xd8, 0xef, 0xb5, 0x77, 0x89, 0x6c, 0xaf, 0x62, 0xb1, 0x4e, 0x6c, + 0x84, 0xc5, 0xdc, 0x88, 0x72, 0xfa, 0x6d, 0xa4, 0xff, 0xe4, 0x28, 0x78, 0xfe, 0xa9, 0xde, 0xcd, + 0x6e, 0x80, 0x89, 0x6e, 0xcf, 0xee, 0xed, 0x77, 0xc3, 0xb8, 0x77, 0x75, 0xc0, 0x28, 0xf9, 0x5e, + 0x6f, 0xaf, 0x46, 0x08, 0x72, 0x6d, 0x0f, 0x65, 0xcf, 0x7e, 0x70, 0xc8, 0x8c, 0x56, 0x6e, 0x92, + 0xa5, 0xeb, 0xbb, 0xcc, 0x38, 0x64, 0xd2, 0xcc, 0x88, 0x15, 0x72, 0x60, 0x7f, 0x84, 0x01, 0x09, + 0xa7, 0xed, 0x1d, 0x84, 0xbd, 0xd8, 0xfd, 0xe0, 0x90, 0x59, 0xaf, 0xdf, 0x43, 0xa9, 0x0e, 0xfa, + 0xc2, 0x3e, 0xea, 0xf6, 0x90, 0x97, 0xda, 0xb4, 0x8a, 0xa9, 0xfb, 0x76, 0x37, 0xd5, 0x41, 0x9f, + 0x27, 0xe1, 0x78, 0x25, 0x55, 0xdd, 0x41, 0x76, 0x17, 0xa5, 0xdc, 0x76, 0x0b, 0x87, 0x8e, 0xd4, + 0xfd, 0x66, 0xef, 0x5e, 0xea, 0xa0, 0xbd, 0xdf, 0x49, 0xd9, 0xde, 0x6e, 0xb3, 0xd5, 0xec, 0xf6, + 0x3a, 0x76, 0xaf, 0xdd, 0x59, 0xf9, 0xed, 0x43, 0x26, 0xf1, 0xd3, 0x8f, 0x98, 0x59, 0xbb, 0xeb, + 0x36, 0x9b, 0x99, 0x94, 0x63, 0x77, 0x91, 0x22, 0x11, 0x29, 0x3a, 0x13, 0x0b, 0x0f, 0x53, 0x3f, + 0xc9, 0x30, 0x16, 0x69, 0x9a, 0xbd, 0x0e, 0xa6, 0xf0, 0xdf, 0xc6, 0x3d, 0xbb, 0x7b, 0x2f, 0x5c, + 0x0b, 0xb2, 0x61, 0x64, 0x20, 0xab, 0xaa, 0x4e, 0x02, 0xa6, 0x16, 0x52, 0x56, 0x12, 0x13, 0xe5, + 0xed, 0xee, 0xbd, 0xf4, 0x2a, 0x78, 0xf1, 0x59, 0xc6, 0x2b, 0x7b, 0x05, 0x8c, 0xed, 0x77, 0x9a, + 0x03, 0x53, 0xf3, 0xc3, 0x71, 0xc6, 0xc2, 0xe8, 0xf4, 0x2f, 0x8e, 0x82, 0xf9, 0x6a, 0x07, 0xf9, + 0xcd, 0x07, 0x25, 0xbb, 0xe7, 0xde, 0x2b, 0x36, 0xbb, 0x3d, 0xf6, 0x0e, 0x98, 0x26, 0x39, 0x24, + 0xc6, 0xa2, 0x60, 0x39, 0x38, 0x95, 0x55, 0x23, 0x1b, 0x82, 0x2f, 0x33, 0x93, 0xe9, 0xf1, 0xce, + 0xd8, 0x6f, 0x07, 0x82, 0x45, 0xe0, 0xd7, 0x43, 0x39, 0xc9, 0xea, 0x8f, 0x89, 0x2d, 0x38, 0x00, + 0xce, 0x2e, 0x03, 0x56, 0x6c, 0x1b, 0xcc, 0x36, 0xf7, 0xde, 0x56, 0x8e, 0x78, 0x8f, 0x11, 0xde, + 0x1b, 0x98, 0xf7, 0x7b, 0x8f, 0x98, 0xf9, 0xe5, 0xc4, 0x5e, 0xa7, 0xed, 0x2d, 0x4f, 0xfa, 0xc8, + 0xeb, 0xd8, 0xbb, 0x7b, 0x71, 0xfe, 0x0f, 0x47, 0x9f, 0xad, 0xb9, 0x19, 0xdc, 0x40, 0xbf, 0xc1, + 0x3b, 0x60, 0xa6, 0xd9, 0x7a, 0x1b, 0xa7, 0x28, 0xbb, 0xb8, 0x7b, 0xc1, 0x4c, 0x9b, 0x95, 0x1f, + 0x1f, 0x32, 0xcc, 0x7b, 0x8f, 0x98, 0x57, 0x01, 0x74, 0xbd, 0x56, 0x63, 0xa7, 0x6d, 0x7b, 0x8e, + 0xbd, 0x63, 0xb7, 0x5c, 0xd4, 0x01, 0x13, 0x3b, 0x6a, 0xc3, 0x76, 0x77, 0xc0, 0x19, 0xaf, 0xd5, + 0x25, 0x25, 0x8d, 0xa8, 0xc8, 0x9a, 0x0e, 0x58, 0x11, 0x45, 0xa5, 0xdf, 0x04, 0x33, 0x46, 0xb7, + 0x75, 0xa4, 0x34, 0x03, 0x00, 0xbb, 0xdb, 0x68, 0xed, 0xef, 0x3a, 0x38, 0x50, 0x60, 0x9d, 0xcd, + 0x66, 0xd3, 0x7d, 0xbf, 0xc7, 0xab, 0x30, 0x18, 0xfd, 0x4a, 0xc6, 0xe5, 0x9d, 0xb2, 0xbb, 0xe5, + 0xa0, 0x52, 0xfa, 0xb7, 0x66, 0xc0, 0x85, 0x5a, 0x73, 0x77, 0x6f, 0x07, 0xdd, 0xb6, 0x7d, 0x13, + 0x2f, 0xd3, 0xba, 0x78, 0x6e, 0xda, 0xdf, 0x21, 0x11, 0xcc, 0x6e, 0x1d, 0x34, 0xbc, 0xf6, 0xae, + 0xdd, 0x6c, 0x85, 0x41, 0xfc, 0xc4, 0x08, 0x66, 0xb7, 0x0e, 0x56, 0x09, 0x21, 0x2b, 0x83, 0x69, + 0xf4, 0xc0, 0x76, 0x49, 0x3e, 0xba, 0x8f, 0x16, 0x66, 0x02, 0xb7, 0x8a, 0xa4, 0x9a, 0xea, 0x4c, + 0x42, 0x66, 0xe1, 0xe1, 0xe8, 0x3d, 0x3c, 0xf7, 0x00, 0x42, 0x78, 0x0b, 0xd3, 0xb1, 0x2a, 0x98, + 0xe9, 0xee, 0xfb, 0x7e, 0xf3, 0x41, 0x58, 0x6f, 0xf6, 0x94, 0x7a, 0xd3, 0x01, 0x65, 0x50, 0x91, + 0x07, 0x49, 0x2c, 0xe6, 0x9e, 0xdd, 0xbb, 0xb7, 0x70, 0xe6, 0x14, 0x21, 0x19, 0x6b, 0xd2, 0x6e, + 0x1d, 0x54, 0xed, 0xde, 0x3d, 0x96, 0x03, 0xd3, 0x98, 0x3c, 0x74, 0x89, 0x05, 0x96, 0x34, 0x35, + 0xdb, 0x1f, 0x21, 0xa3, 0xdf, 0x1a, 0x65, 0xf2, 0x8c, 0x05, 0x30, 0x4d, 0x60, 0x55, 0x76, 0x05, + 0x10, 0xa8, 0xd1, 0x41, 0xdb, 0xe8, 0x01, 0x59, 0x94, 0x1c, 0x55, 0xb8, 0xf6, 0x70, 0xf4, 0x31, + 0x83, 0x2b, 0x4c, 0x61, 0x12, 0x0b, 0x53, 0xb0, 0x77, 0xc0, 0xe4, 0x2e, 0xea, 0xdd, 0x6b, 0x7b, + 0xdd, 0x85, 0xc9, 0xd4, 0xd8, 0xb5, 0x39, 0xe1, 0xd2, 0x90, 0x50, 0x51, 0x22, 0x14, 0xd9, 0x17, + 0x8e, 0x7c, 0xec, 0x5d, 0x66, 0x14, 0x32, 0xc7, 0x8d, 0xb7, 0xc0, 0x58, 0x11, 0x3b, 0xb6, 0x04, + 0xce, 0xa1, 0x07, 0x7b, 0xcd, 0x4e, 0xb0, 0x6d, 0xd1, 0xdf, 0x2a, 0x0d, 0x53, 0xfe, 0xc5, 0x95, + 0x60, 0x33, 0x75, 0x25, 0xda, 0x4c, 0x5d, 0xa9, 0x47, 0x14, 0xd6, 0xd9, 0xa3, 0x7a, 0x7d, 0x24, + 0x7b, 0x03, 0x24, 0x77, 0x51, 0xcf, 0xc6, 0x6b, 0x8a, 0x30, 0xcd, 0x5f, 0x1a, 0x90, 0xb4, 0x84, + 0xba, 0x5d, 0x7b, 0x1b, 0x95, 0x50, 0xcf, 0x26, 0x39, 0x4c, 0x9f, 0xfe, 0x59, 0xd6, 0x57, 0xd3, + 0xdf, 0x8b, 0xf5, 0xd5, 0xe8, 0xe9, 0xeb, 0xab, 0x13, 0x16, 0xa1, 0xf3, 0xa7, 0xf8, 0xc2, 0xe8, + 0x90, 0x45, 0xe8, 0x8d, 0xbf, 0x32, 0xfe, 0x9d, 0xd7, 0xe6, 0x78, 0x2e, 0x23, 0x66, 0x78, 0x25, + 0xa3, 0x66, 0x78, 0x29, 0xa3, 0xbf, 0x7f, 0xc8, 0xfc, 0xfc, 0x38, 0xb8, 0x08, 0x12, 0x78, 0x92, + 0x58, 0x9c, 0x07, 0xb3, 0x51, 0xdf, 0x57, 0xf0, 0x04, 0x04, 0x4a, 0x60, 0x22, 0x70, 0xfa, 0xe5, + 0x1c, 0x30, 0xc0, 0x99, 0xf8, 0x78, 0x11, 0xc6, 0x8c, 0xd6, 0x01, 0x38, 0x47, 0x8d, 0x05, 0x61, + 0xdc, 0xc4, 0x00, 0xb8, 0x40, 0xbb, 0xba, 0x30, 0x51, 0x23, 0x10, 0xb8, 0x09, 0x12, 0xd8, 0x3d, + 0x09, 0xb3, 0xf9, 0x23, 0xaf, 0x0e, 0x58, 0x5d, 0xa4, 0x7c, 0x96, 0x4d, 0x2e, 0x4e, 0x04, 0xae, + 0x09, 0xce, 0xc7, 0x5d, 0x93, 0x9d, 0x5c, 0x1c, 0x27, 0x1e, 0x08, 0x16, 0xc0, 0x64, 0xe0, 0x5f, + 0xdd, 0xec, 0x6c, 0xdf, 0x19, 0xe1, 0x18, 0xc7, 0x80, 0xef, 0x07, 0xa0, 0xbf, 0x2b, 0xd6, 0xcd, + 0x96, 0x80, 0x7e, 0xba, 0x0d, 0x57, 0x4e, 0xde, 0xb5, 0x83, 0xe3, 0x69, 0x6a, 0xb3, 0x96, 0x63, + 0xc0, 0x0f, 0x01, 0xd0, 0xdf, 0xea, 0xea, 0x66, 0xad, 0x67, 0x66, 0x7e, 0x7c, 0x27, 0x0e, 0x8e, + 0xa7, 0x8f, 0x6f, 0x7e, 0x73, 0x0c, 0xf0, 0xc1, 0x4c, 0xb0, 0x83, 0x95, 0x22, 0x0b, 0x9d, 0xec, + 0x2d, 0xf0, 0x99, 0x67, 0x6c, 0x63, 0xd8, 0x2e, 0x1b, 0x1c, 0x4f, 0x0f, 0xdb, 0xac, 0xe5, 0x18, + 0x50, 0x23, 0xdb, 0x4c, 0x29, 0x6c, 0xf9, 0x6e, 0x76, 0x0d, 0x68, 0xcf, 0xd8, 0xc8, 0xb1, 0xfd, + 0x33, 0x38, 0x9e, 0xee, 0x6f, 0x9a, 0x02, 0x0d, 0x24, 0xb1, 0xd7, 0xa5, 0x6e, 0x1b, 0x6b, 0xe9, + 0xcc, 0xd3, 0x46, 0xcf, 0x22, 0xc8, 0xb5, 0x5b, 0x7e, 0x73, 0x7b, 0xbf, 0x83, 0x3c, 0xf0, 0x0a, + 0x98, 0x37, 0xfb, 0xe3, 0x37, 0x85, 0x07, 0xf0, 0xe2, 0x85, 0xe1, 0xa1, 0x20, 0xfb, 0x22, 0x98, + 0x0d, 0x9c, 0x30, 0x4a, 0xee, 0xf0, 0xa2, 0x3b, 0xf1, 0xe4, 0x90, 0x19, 0xc3, 0x8b, 0x6e, 0x29, + 0xc3, 0x0b, 0x19, 0x5e, 0xc4, 0x0b, 0x73, 0xe2, 0x37, 0x31, 0x9a, 0x33, 0x4f, 0x0e, 0x19, 0x88, + 0x69, 0x78, 0x35, 0xc3, 0x6b, 0x19, 0x25, 0x7b, 0x1d, 0x2c, 0xe2, 0xa1, 0x65, 0x7b, 0x6f, 0xe3, + 0xd9, 0x88, 0x6c, 0x5e, 0x10, 0x79, 0x82, 0x05, 0x17, 0x4e, 0x93, 0xa7, 0x9f, 0x1c, 0x32, 0x73, + 0x38, 0x4d, 0xe6, 0xf9, 0x0c, 0x2f, 0x07, 0x59, 0x63, 0x7f, 0x25, 0x3f, 0x06, 0x13, 0xfd, 0xb5, + 0x3d, 0x84, 0x67, 0x36, 0x12, 0xc9, 0x24, 0x9c, 0xda, 0x48, 0x24, 0xe7, 0xe0, 0x7c, 0xfa, 0xc9, + 0x2c, 0xb8, 0x50, 0xe9, 0x34, 0xb7, 0x9b, 0xad, 0x1a, 0xea, 0xbc, 0x8d, 0x3a, 0xb5, 0x7d, 0xa7, + 0x8b, 0x7a, 0x64, 0xe2, 0x89, 0xc7, 0x24, 0xe6, 0x23, 0xc6, 0xa4, 0x4d, 0x30, 0xd3, 0x41, 0x81, + 0x01, 0x76, 0x9a, 0xdd, 0x5e, 0x38, 0xd9, 0x8b, 0x64, 0x1a, 0x79, 0xc4, 0xcc, 0x25, 0x99, 0x6b, + 0x0c, 0xc7, 0xdc, 0x98, 0x08, 0x3a, 0xd2, 0x8f, 0xb4, 0xa9, 0xa3, 0x48, 0x7b, 0xb4, 0x17, 0x0e, + 0x3a, 0x08, 0x1b, 0x9f, 0xcc, 0xb4, 0x3f, 0x04, 0x66, 0xdd, 0xf6, 0x3e, 0x5e, 0x53, 0x37, 0xdc, + 0xb6, 0x17, 0xae, 0xe1, 0xe7, 0x84, 0xe7, 0x4f, 0x5a, 0xc3, 0x13, 0x52, 0x92, 0x04, 0x2e, 0x50, + 0xf3, 0x71, 0x7c, 0x57, 0x74, 0xc6, 0x3d, 0x22, 0xeb, 0xf6, 0xb7, 0xdd, 0x16, 0x9f, 0x61, 0xdb, + 0xed, 0x2e, 0x98, 0x77, 0x77, 0x9a, 0xd4, 0x86, 0x46, 0xb0, 0x1a, 0x4a, 0x0d, 0x54, 0x23, 0x2b, + 0xd8, 0x68, 0x27, 0x03, 0x6b, 0x2a, 0x3b, 0xfb, 0xed, 0x43, 0x86, 0xf9, 0xea, 0x23, 0x66, 0x1c, + 0x8c, 0x31, 0xa3, 0x89, 0xfc, 0x88, 0x35, 0x17, 0x70, 0xea, 0x6f, 0x77, 0xbc, 0x0a, 0x26, 0x70, + 0xe0, 0x69, 0xee, 0x2d, 0x3c, 0x77, 0xea, 0x64, 0x3a, 0x6e, 0xb7, 0x0e, 0x0a, 0x7b, 0x6c, 0x09, + 0xcc, 0xf5, 0xf3, 0xb6, 0x40, 0xe3, 0x29, 0x52, 0xed, 0xa5, 0xe1, 0x9a, 0x19, 0x48, 0xfb, 0xf2, + 0x24, 0x77, 0x0a, 0x90, 0x44, 0xcf, 0xab, 0x00, 0x34, 0xf7, 0x82, 0xbc, 0x09, 0x75, 0x48, 0xee, + 0x30, 0x2d, 0xbc, 0x30, 0x9c, 0x55, 0x61, 0xaf, 0x14, 0x90, 0x91, 0x54, 0x9e, 0xb1, 0xa6, 0x9a, + 0x11, 0x82, 0xbd, 0x0e, 0xf0, 0x54, 0xdf, 0xb0, 0xbb, 0xad, 0x85, 0xf4, 0xa9, 0xb3, 0x00, 0xee, + 0xaa, 0xd1, 0x6d, 0xb1, 0xaf, 0x83, 0xa4, 0xdd, 0x6d, 0x05, 0xf2, 0xbf, 0x40, 0x6a, 0x9c, 0xb0, + 0xc7, 0x13, 0x4f, 0xbf, 0xf2, 0xa3, 0xd6, 0xa4, 0xdd, 0x6d, 0x11, 0xb9, 0xd7, 0xc1, 0x34, 0x66, + 0x10, 0x09, 0x3e, 0x4b, 0x78, 0xbc, 0x78, 0x3a, 0x8f, 0x50, 0xf2, 0x51, 0x0b, 0xd8, 0x7d, 0x0c, + 0x5b, 0x02, 0x33, 0x24, 0x25, 0x8f, 0x38, 0x05, 0x73, 0xf2, 0x09, 0x7e, 0x16, 0x63, 0x13, 0xdb, + 0xe7, 0xc0, 0xf5, 0x23, 0x76, 0x7f, 0x9d, 0x01, 0x57, 0xda, 0x64, 0x94, 0x35, 0xba, 0x64, 0x98, + 0x35, 0xba, 0x64, 0x9c, 0x75, 0x1b, 0xc1, 0x7a, 0x77, 0x61, 0x8a, 0xec, 0x45, 0xdd, 0x1c, 0xce, + 0x7f, 0xf8, 0xf8, 0x1c, 0x82, 0xee, 0x06, 0xb9, 0x3f, 0xd9, 0x74, 0xca, 0xbe, 0xfe, 0xd5, 0x47, + 0x4c, 0x02, 0x8c, 0x8e, 0x90, 0xa1, 0x34, 0xf3, 0x55, 0x66, 0x2a, 0x3d, 0xd9, 0x19, 0xc7, 0xc9, + 0x5b, 0x90, 0xd9, 0x7c, 0x35, 0xca, 0x6c, 0x70, 0xd1, 0x72, 0x54, 0xf4, 0xe1, 0xaf, 0xfd, 0xea, + 0xd8, 0xc4, 0x17, 0x1f, 0x31, 0xa3, 0xc9, 0x11, 0xeb, 0x52, 0xfb, 0xa4, 0x06, 0x16, 0x8b, 0x60, + 0xe9, 0xf4, 0xd6, 0x9f, 0xb6, 0xe5, 0x35, 0x15, 0xdb, 0xf2, 0xba, 0xf1, 0x97, 0xc6, 0xbe, 0xf3, + 0x1a, 0xcb, 0x67, 0xf4, 0x8c, 0x94, 0x11, 0xe4, 0x8c, 0x9c, 0x11, 0xb9, 0x8c, 0x28, 0x66, 0xc4, + 0x5f, 0x39, 0x64, 0xf2, 0x60, 0x16, 0x24, 0x4b, 0x51, 0x50, 0x61, 0x78, 0x30, 0x0d, 0x26, 0xc2, + 0xfd, 0x15, 0x46, 0x07, 0xe7, 0xc1, 0x64, 0x8e, 0x8c, 0x9a, 0x2e, 0x0b, 0x48, 0x55, 0x52, 0x11, + 0x9c, 0x05, 0x73, 0x16, 0xda, 0x6e, 0xb6, 0x5b, 0xf6, 0x4e, 0xca, 0xf4, 0xb6, 0x51, 0x97, 0x65, + 0xc4, 0xf7, 0x0f, 0x99, 0xaf, 0x8f, 0x9e, 0x9c, 0x41, 0x5c, 0x01, 0x49, 0xcb, 0x0c, 0xe7, 0x18, + 0x48, 0x87, 0x2e, 0x38, 0x06, 0x5e, 0x04, 0xb3, 0x61, 0x28, 0x49, 0x91, 0x20, 0x91, 0x3d, 0x3b, + 0x10, 0x86, 0xc8, 0x7c, 0x7e, 0x15, 0x4c, 0x04, 0xd2, 0x40, 0x66, 0xf1, 0xcc, 0xb1, 0xc8, 0x00, + 0xf6, 0xc0, 0x68, 0xa1, 0x0a, 0x99, 0xe5, 0x7b, 0xc0, 0x07, 0xb3, 0xd1, 0xe0, 0x0e, 0x72, 0x8a, + 0x65, 0xb0, 0x48, 0x0f, 0xde, 0x95, 0xd8, 0x1a, 0x2c, 0x3d, 0x03, 0xc7, 0x96, 0x93, 0xd1, 0xaa, + 0x06, 0xbc, 0x02, 0x2e, 0x1c, 0x8d, 0xcc, 0x95, 0xb0, 0x0e, 0x56, 0x7e, 0x7a, 0x1e, 0x8e, 0x2d, + 0x4f, 0x07, 0x74, 0xa9, 0x1a, 0xea, 0x75, 0xc1, 0x3d, 0x30, 0x66, 0xd4, 0xca, 0x90, 0x59, 0x6e, + 0x80, 0xcf, 0x81, 0xb9, 0xfe, 0x58, 0x0c, 0xda, 0x7c, 0x09, 0x9c, 0x8d, 0x86, 0xda, 0xca, 0xd1, + 0xe2, 0x25, 0x3d, 0x07, 0xc7, 0x96, 0x81, 0x51, 0x4b, 0x85, 0xeb, 0x12, 0xf0, 0x22, 0x38, 0x17, + 0x1b, 0x50, 0x2b, 0xf8, 0x37, 0x69, 0x8c, 0x08, 0x65, 0xd4, 0xca, 0xa4, 0xa5, 0xec, 0x0b, 0x60, + 0x3e, 0xea, 0x67, 0x34, 0x8f, 0xc1, 0xc7, 0x87, 0xcc, 0xe2, 0x93, 0x43, 0xe6, 0xd2, 0x87, 0x87, + 0x4c, 0x42, 0x50, 0x32, 0x72, 0xf6, 0x79, 0x30, 0xd5, 0xdc, 0x8b, 0x8a, 0xcf, 0x3d, 0x3e, 0x64, + 0x9e, 0x7b, 0x72, 0xc8, 0x2c, 0x7d, 0x78, 0xc8, 0x24, 0x45, 0x3e, 0x23, 0x0a, 0x19, 0x5e, 0xc8, + 0x0a, 0x78, 0x21, 0xd5, 0x9f, 0x2e, 0x5f, 0x7c, 0x7c, 0xc8, 0xa4, 0x9f, 0x1c, 0x32, 0xcf, 0x13, + 0x1a, 0x29, 0x23, 0xca, 0x19, 0x5e, 0x7c, 0xf7, 0x11, 0x33, 0xd3, 0xbd, 0x67, 0x77, 0x90, 0x97, + 0x49, 0xed, 0x77, 0x51, 0x67, 0x23, 0x91, 0xbc, 0x04, 0x17, 0x37, 0x12, 0xc9, 0x25, 0xf8, 0xdc, + 0x46, 0x22, 0xf9, 0x3c, 0x4c, 0xa7, 0xbf, 0x34, 0x01, 0xce, 0x06, 0x6b, 0xa9, 0xfe, 0xfe, 0xfd, + 0xb1, 0xf9, 0xec, 0xa3, 0xe6, 0xd8, 0x6f, 0x90, 0x4d, 0xd7, 0x9d, 0x83, 0xc6, 0xd1, 0x11, 0xc2, + 0xa9, 0x99, 0xed, 0x08, 0xd9, 0x66, 0xdd, 0x39, 0xe8, 0x4b, 0xc0, 0xbe, 0x16, 0x1e, 0x22, 0xc5, + 0x18, 0xc0, 0x53, 0x19, 0xcc, 0x62, 0xf2, 0xa3, 0xfa, 0xcf, 0xbe, 0x0c, 0x64, 0x3e, 0xd6, 0x32, + 0x90, 0xf9, 0x98, 0xcb, 0x40, 0x86, 0x5e, 0x06, 0x0a, 0x20, 0x41, 0x96, 0x80, 0x13, 0x43, 0x15, + 0x8c, 0xf3, 0xea, 0x58, 0xb4, 0xb4, 0x08, 0xed, 0x8d, 0x1f, 0x1d, 0xfd, 0xce, 0x6b, 0x53, 0x3c, + 0x87, 0x53, 0x7d, 0x31, 0xa3, 0xbc, 0x7f, 0xc8, 0xfc, 0x06, 0x73, 0xf2, 0x50, 0xcd, 0xf7, 0x93, + 0xfd, 0xd7, 0xc0, 0xf7, 0x0d, 0x4b, 0xf6, 0x67, 0xa9, 0x1e, 0x83, 0x05, 0xba, 0x27, 0x38, 0x63, + 0x0f, 0xf3, 0xfc, 0xf5, 0x30, 0xcf, 0x7f, 0x1d, 0x7c, 0x36, 0x4a, 0xeb, 0x57, 0x8e, 0xa5, 0xf5, + 0xd3, 0x60, 0x2a, 0x28, 0xb0, 0x7b, 0xf7, 0xa2, 0x1c, 0x7f, 0x65, 0x20, 0xc7, 0x37, 0xc1, 0x34, + 0x76, 0xb0, 0x54, 0x10, 0x99, 0x96, 0x15, 0x20, 0x81, 0x4b, 0xc7, 0xfd, 0x45, 0x18, 0x37, 0x30, + 0x06, 0x5c, 0x3c, 0xe6, 0x08, 0x42, 0x02, 0x27, 0xa3, 0xd9, 0x97, 0xc1, 0x6c, 0xb8, 0xfb, 0x19, + 0x0e, 0x80, 0xf3, 0x8f, 0x0f, 0x99, 0xf9, 0x7e, 0x62, 0x27, 0x67, 0x78, 0xe5, 0xdb, 0x87, 0xcc, + 0xc8, 0xb3, 0xe5, 0x95, 0x41, 0x7a, 0x17, 0x24, 0x7f, 0xe9, 0x5f, 0x4f, 0x82, 0xe9, 0xf5, 0x8e, + 0xbd, 0x77, 0xef, 0xcd, 0xe2, 0x77, 0x9d, 0xd9, 0xd1, 0x7e, 0x38, 0xf6, 0x31, 0xb7, 0x23, 0x12, + 0x1f, 0x73, 0x3b, 0x62, 0xfc, 0x59, 0xb7, 0x23, 0x34, 0x10, 0xb0, 0x69, 0xf4, 0xbd, 0x71, 0x2a, + 0x7b, 0xe9, 0x83, 0x43, 0x26, 0x79, 0x7d, 0x1b, 0x2b, 0xe2, 0x0b, 0x3b, 0xd4, 0x36, 0x83, 0x35, + 0x45, 0x88, 0xc9, 0xae, 0x44, 0x1d, 0xc0, 0x90, 0x04, 0x87, 0xba, 0x5e, 0xb3, 0xb5, 0xdd, 0x0d, + 0xcf, 0x27, 0x5f, 0x19, 0x3e, 0x3d, 0x87, 0x9a, 0xad, 0x85, 0xc4, 0x44, 0x5f, 0xf3, 0x21, 0x8b, + 0x08, 0x89, 0xd5, 0x16, 0x2c, 0xfe, 0x1a, 0xdb, 0xa8, 0x77, 0xda, 0xc1, 0x20, 0x1e, 0xbe, 0x01, + 0xe5, 0x3a, 0xea, 0xb1, 0x2a, 0x98, 0x0e, 0xab, 0xed, 0xb5, 0xbb, 0xbd, 0xd3, 0x4e, 0x00, 0xf1, + 0x00, 0x0e, 0x48, 0xab, 0xed, 0x6e, 0xef, 0xc6, 0xcf, 0x25, 0xf0, 0x98, 0xca, 0x08, 0x19, 0x25, + 0xa3, 0x65, 0xd4, 0xf7, 0x0f, 0x99, 0xaf, 0x24, 0x7e, 0x27, 0xc6, 0xd4, 0xb9, 0x60, 0x4c, 0x2d, + 0xce, 0xc4, 0xd5, 0x0f, 0x24, 0x30, 0x11, 0x2c, 0x82, 0x97, 0x97, 0xc1, 0x35, 0xcc, 0xff, 0x48, + 0x15, 0xc2, 0xd8, 0xba, 0x59, 0x07, 0x67, 0xa9, 0x6e, 0x0a, 0x89, 0x6a, 0xa5, 0x56, 0x07, 0x9f, + 0x01, 0xe7, 0x4a, 0xf6, 0x83, 0xe6, 0xee, 0xfe, 0x6e, 0xaa, 0xde, 0xee, 0xd9, 0x3b, 0xa9, 0x22, + 0x6a, 0x6d, 0xf7, 0xee, 0x2d, 0xbe, 0x00, 0x9e, 0x1f, 0x34, 0xd0, 0xca, 0xae, 0xfd, 0xa0, 0xd1, + 0xc3, 0x44, 0x8d, 0x1d, 0x42, 0x14, 0xaf, 0x4c, 0x1c, 0xe2, 0x69, 0x95, 0x49, 0x47, 0xa2, 0xca, + 0xaf, 0x82, 0xd9, 0xa8, 0xf2, 0x2a, 0xda, 0xeb, 0xdd, 0x5b, 0xbc, 0x02, 0x16, 0x87, 0xd6, 0xf2, + 0x70, 0x29, 0x30, 0xc0, 0xc5, 0x88, 0x3c, 0x4b, 0x82, 0x9b, 0x97, 0x7a, 0x73, 0x1f, 0x75, 0x9a, + 0xa8, 0xbb, 0xf8, 0x32, 0x78, 0x71, 0x68, 0x45, 0x27, 0xa0, 0x6b, 0x7c, 0x21, 0xa0, 0x03, 0xbf, + 0x0f, 0x5c, 0x32, 0x76, 0x76, 0xda, 0xf7, 0x53, 0x05, 0xbc, 0xe4, 0xec, 0xee, 0x05, 0x2b, 0x50, + 0xc2, 0xe6, 0x60, 0xf9, 0x07, 0xc1, 0x0f, 0x80, 0x0c, 0x78, 0xf9, 0x18, 0x23, 0xaf, 0xd9, 0xb5, + 0x9d, 0x1d, 0xd4, 0x68, 0xc6, 0xeb, 0x08, 0xa3, 0xe5, 0x36, 0xc8, 0x80, 0x97, 0x8e, 0x51, 0xa3, + 0xd6, 0x10, 0xe2, 0xb1, 0x2d, 0xd4, 0xcd, 0xa6, 0x07, 0x03, 0xca, 0x99, 0xf0, 0x74, 0x78, 0x14, + 0x07, 0x1e, 0x31, 0x23, 0x91, 0xd9, 0x7b, 0x36, 0xb4, 0x50, 0x6c, 0x82, 0x9f, 0x7a, 0x72, 0xc8, + 0x24, 0xf1, 0x04, 0xaf, 0x67, 0x78, 0xae, 0xbf, 0xdc, 0x4c, 0xc2, 0xa9, 0xf4, 0x97, 0x12, 0xe0, + 0xec, 0x90, 0x71, 0xc1, 0x5e, 0x1b, 0xf2, 0x59, 0xc9, 0x51, 0xce, 0x1c, 0xfb, 0xbe, 0x84, 0x35, + 0x00, 0x1c, 0x34, 0x2a, 0xc9, 0x1c, 0x67, 0xb3, 0x17, 0x3f, 0x38, 0x64, 0x12, 0x32, 0xc7, 0x71, + 0x3f, 0xf1, 0x88, 0x21, 0xfb, 0x53, 0x13, 0xcb, 0x89, 0x85, 0x77, 0x1f, 0x32, 0xd6, 0xdc, 0xae, + 0xfd, 0x80, 0x78, 0x4a, 0x60, 0x6b, 0x76, 0x3d, 0x60, 0x11, 0x37, 0x2d, 0x09, 0x58, 0xb3, 0xd9, + 0xab, 0x5f, 0x7f, 0x87, 0xc1, 0x5c, 0x78, 0x4e, 0x90, 0x70, 0xcb, 0x11, 0xa7, 0xf1, 0xe5, 0xb1, + 0x85, 0x87, 0x29, 0xc2, 0x88, 0x78, 0x4d, 0xc8, 0x28, 0x03, 0xa6, 0xfa, 0xd6, 0x26, 0xa1, 0x6b, + 0x36, 0x3b, 0xff, 0xc1, 0x21, 0x33, 0xca, 0x73, 0x64, 0x99, 0xba, 0x3c, 0xba, 0x70, 0xce, 0x4a, + 0xee, 0xda, 0x0f, 0x88, 0xb3, 0xb0, 0xaf, 0x83, 0xb3, 0x43, 0x4c, 0x4c, 0x42, 0xd7, 0x90, 0x7a, + 0x67, 0x76, 0xed, 0x07, 0xa1, 0xd7, 0x84, 0x4e, 0xc3, 0xde, 0x04, 0xe7, 0x87, 0x9a, 0x36, 0x0c, + 0x43, 0x27, 0x45, 0xdb, 0x73, 0x61, 0x25, 0xca, 0x85, 0xd8, 0x02, 0x38, 0x37, 0xcc, 0xf2, 0xe1, + 0x87, 0x0f, 0x27, 0xf1, 0x3a, 0x1b, 0xd4, 0xa1, 0x58, 0x65, 0x65, 0x90, 0x0e, 0xce, 0x48, 0x29, + 0x4e, 0x51, 0x07, 0xe3, 0x47, 0x58, 0x93, 0x4f, 0x0e, 0x99, 0x89, 0x0f, 0x0f, 0x99, 0x31, 0x35, + 0xa3, 0x85, 0x87, 0xa5, 0x7f, 0x26, 0x01, 0x2e, 0x56, 0xf6, 0x50, 0xcb, 0xd8, 0x6b, 0x1e, 0x7d, + 0x96, 0x10, 0xe6, 0xf2, 0x5f, 0x64, 0xc0, 0x95, 0xf0, 0xc0, 0xa5, 0xb1, 0xd7, 0x69, 0xef, 0xa1, + 0x4e, 0x0f, 0x33, 0x0c, 0x72, 0xca, 0xe0, 0x5b, 0x4b, 0xbc, 0xcc, 0x5f, 0x1e, 0x10, 0xf6, 0x18, + 0xbb, 0x6a, 0xbf, 0x6e, 0xf6, 0x0a, 0xd6, 0xf0, 0xec, 0x97, 0x19, 0x90, 0x8e, 0xce, 0x7c, 0x26, + 0x63, 0x6b, 0xfe, 0xc5, 0xb0, 0xb5, 0xa3, 0x0a, 0xb5, 0xa8, 0x2d, 0x76, 0x17, 0x9c, 0x6f, 0xdb, + 0xf1, 0xef, 0x2e, 0xa2, 0x35, 0x5a, 0xf0, 0xb1, 0xdf, 0xab, 0x27, 0xac, 0xd1, 0xec, 0xee, 0x60, + 0xb7, 0xc8, 0x7a, 0x30, 0x70, 0x2b, 0xb2, 0xa1, 0x6c, 0x9d, 0x6d, 0x1f, 0x27, 0x62, 0xbf, 0xc4, + 0x80, 0xab, 0x1d, 0xd4, 0xdd, 0x6b, 0xb7, 0xba, 0x68, 0x78, 0xe7, 0xc7, 0x3e, 0x72, 0xe7, 0x9f, + 0xc3, 0x8d, 0xc2, 0x2f, 0x33, 0xb3, 0xe9, 0xe9, 0x77, 0x99, 0x24, 0x64, 0x16, 0x13, 0xa3, 0x89, + 0xf1, 0x78, 0xff, 0x2f, 0x47, 0x2d, 0x0e, 0x53, 0xc0, 0x1f, 0x60, 0xc0, 0x12, 0xd6, 0x40, 0x5f, + 0xaa, 0xe3, 0xaa, 0x48, 0x7c, 0x1c, 0x55, 0xcc, 0x93, 0x0d, 0xf6, 0x77, 0x99, 0x49, 0xc8, 0x2c, + 0x8e, 0x8d, 0x30, 0xa3, 0xd6, 0xe5, 0xb6, 0xdd, 0xb5, 0xc2, 0x46, 0x06, 0x6b, 0xa4, 0xff, 0xc8, + 0x28, 0x98, 0x5f, 0x45, 0xad, 0x83, 0x42, 0xcb, 0x6f, 0x77, 0x82, 0xf3, 0x44, 0xf6, 0x3a, 0x98, + 0xed, 0x0b, 0x85, 0x17, 0x5e, 0xe1, 0x57, 0xa9, 0xfd, 0xa1, 0xfb, 0x77, 0x12, 0xd6, 0x4c, 0x44, + 0x80, 0x57, 0x6a, 0xb8, 0x02, 0xea, 0x74, 0xda, 0x9d, 0xc6, 0x6e, 0x90, 0xcf, 0x84, 0xa7, 0x7c, + 0xa0, 0x7f, 0x0c, 0x99, 0xb0, 0x66, 0x08, 0x41, 0x98, 0xef, 0xb0, 0x6b, 0xe0, 0xec, 0x7e, 0xcb, + 0x43, 0x7e, 0xb3, 0x85, 0xbc, 0x46, 0x17, 0xb9, 0x0d, 0xf4, 0x36, 0x6a, 0xf5, 0x9e, 0x72, 0xea, + 0x72, 0xa6, 0x5f, 0xa5, 0x86, 0x5c, 0x13, 0x57, 0x60, 0x6f, 0x80, 0x59, 0x7b, 0xaf, 0x19, 0xe3, + 0x30, 0x7e, 0x2a, 0x87, 0x69, 0x7b, 0xaf, 0x19, 0xd5, 0xcd, 0x5e, 0x00, 0x80, 0xd4, 0x09, 0x0e, + 0xc1, 0x93, 0x51, 0x72, 0x17, 0xe6, 0x72, 0x87, 0x9f, 0x02, 0x97, 0xea, 0x3b, 0xdd, 0xb5, 0x66, + 0x6b, 0x1b, 0x75, 0xf6, 0x3a, 0xcd, 0x56, 0x2f, 0x96, 0x50, 0xb3, 0x0e, 0x98, 0x74, 0x77, 0xec, + 0x6e, 0x37, 0x3c, 0xbb, 0x9b, 0x3b, 0xe9, 0x4b, 0x8e, 0x9b, 0xad, 0xf6, 0xfd, 0x16, 0xcd, 0x26, + 0x87, 0xeb, 0x91, 0x7d, 0xb2, 0xd1, 0xe1, 0x47, 0x1f, 0x21, 0x63, 0xf6, 0x2b, 0x67, 0xc1, 0x4c, + 0x2c, 0x1b, 0x08, 0xbe, 0xd5, 0x9c, 0xca, 0xfe, 0x26, 0xfb, 0xe1, 0x21, 0xf3, 0xd7, 0x58, 0x90, + 0xe2, 0x6d, 0x5b, 0x75, 0x7c, 0xcd, 0xd1, 0x55, 0x24, 0x4b, 0x9c, 0x6b, 0xcb, 0xc8, 0xf3, 0x54, + 0xd9, 0x57, 0x1d, 0x4d, 0xd4, 0x24, 0xc7, 0xb7, 0x41, 0x4a, 0x74, 0x3d, 0x5b, 0x16, 0x3c, 0x5b, + 0xb2, 0x3d, 0xc4, 0xe9, 0x3e, 0xef, 0xab, 0x1a, 0x6f, 0x7b, 0x02, 0xd2, 0x04, 0xcf, 0xf5, 0x6d, + 0x81, 0x03, 0x29, 0xd5, 0xf3, 0x64, 0x0e, 0xf1, 0xbc, 0xe0, 0x7a, 0x82, 0xa8, 0x8a, 0x92, 0x2d, + 0xf2, 0x9c, 0xa3, 0x73, 0xbe, 0xe2, 0x4b, 0x92, 0xad, 0xba, 0x1e, 0x48, 0xf1, 0x0e, 0x12, 0x91, + 0x8b, 0x1c, 0x24, 0xdb, 0xb6, 0xee, 0x89, 0x8a, 0x2c, 0x21, 0x05, 0xa9, 0x9c, 0xe8, 0x69, 0xbc, + 0xaf, 0xe8, 0x82, 0x06, 0x52, 0xae, 0x2c, 0x88, 0xb2, 0x27, 0xda, 0x9a, 0xa3, 0xeb, 0xa2, 0xe4, + 0xa8, 0xbe, 0xe3, 0x78, 0x02, 0x27, 0x79, 0x32, 0xe7, 0xb8, 0x9c, 0xac, 0x79, 0x20, 0x85, 0x14, + 0xc1, 0x96, 0x7d, 0xc9, 0x93, 0x45, 0xcd, 0x75, 0x7c, 0x5e, 0xd1, 0x5d, 0xc1, 0xf6, 0x55, 0xde, + 0x41, 0xae, 0x20, 0xea, 0xba, 0x23, 0x81, 0x94, 0x27, 0xe8, 0xa2, 0xec, 0xca, 0x9a, 0x8f, 0x14, + 0x55, 0x51, 0x25, 0xc9, 0x47, 0xae, 0xab, 0x29, 0xbc, 0x84, 0x90, 0x2c, 0xca, 0x8a, 0xab, 0x82, + 0x94, 0x87, 0x5c, 0xdf, 0x91, 0x34, 0x5b, 0x16, 0x55, 0x4d, 0x47, 0x0e, 0xe2, 0x34, 0xde, 0xd1, + 0x34, 0xdb, 0x76, 0x1c, 0x59, 0x43, 0x48, 0x94, 0x40, 0x4a, 0xe6, 0x5d, 0x45, 0x72, 0x55, 0x15, + 0x29, 0x9c, 0x2f, 0xea, 0x1a, 0x87, 0x90, 0xad, 0x73, 0x9a, 0xa2, 0x3b, 0x8a, 0xe6, 0xca, 0x9a, + 0x8d, 0x25, 0x75, 0x74, 0xcd, 0x16, 0x24, 0x84, 0x24, 0x47, 0xe7, 0x45, 0x49, 0x92, 0x34, 0xdf, + 0x77, 0x64, 0x95, 0x97, 0x7c, 0x4f, 0x53, 0x39, 0xdb, 0x05, 0x29, 0x51, 0xf2, 0x79, 0xc9, 0x56, + 0x74, 0xdb, 0x53, 0x39, 0x4e, 0x77, 0x6d, 0x59, 0x53, 0x44, 0x51, 0xd5, 0x05, 0x5e, 0xb3, 0x7d, + 0x5e, 0xf5, 0x45, 0x90, 0xf2, 0x54, 0x05, 0x21, 0x45, 0xf2, 0x1d, 0x55, 0x50, 0x45, 0x55, 0x14, + 0x5d, 0x07, 0x49, 0xb2, 0x6c, 0xbb, 0x1a, 0xef, 0x0a, 0xba, 0x80, 0x14, 0x90, 0xd2, 0x7c, 0xc5, + 0xd5, 0x79, 0xcd, 0x73, 0x1d, 0x59, 0x93, 0x91, 0xe3, 0x20, 0x9b, 0x93, 0x91, 0xe0, 0xba, 0xba, + 0x24, 0x8b, 0x1c, 0x12, 0xb1, 0x4e, 0x3d, 0x4e, 0x97, 0x91, 0xa2, 0x49, 0x9a, 0xee, 0x89, 0xae, + 0x2c, 0xca, 0x82, 0xae, 0xba, 0x9e, 0xe6, 0xf9, 0xbe, 0xc3, 0x29, 0xae, 0xa3, 0x83, 0x94, 0x2f, + 0x08, 0x8e, 0xe7, 0xc9, 0x2a, 0x12, 0xb1, 0x01, 0x91, 0xa6, 0xb8, 0x9e, 0x2d, 0x71, 0x9e, 0x2d, + 0x78, 0x9a, 0x84, 0x34, 0xd1, 0x01, 0x29, 0xdf, 0x91, 0x35, 0x4d, 0xe4, 0x7d, 0x4d, 0x17, 0x78, + 0x9d, 0x53, 0xb0, 0xca, 0x24, 0x09, 0x09, 0xb2, 0xe3, 0x6a, 0x22, 0xe7, 0x48, 0x32, 0x48, 0x71, + 0xae, 0xcb, 0x23, 0x4d, 0x92, 0x15, 0x0d, 0x49, 0x2a, 0x6f, 0xdb, 0xbc, 0xa7, 0x08, 0xb6, 0x27, + 0xf1, 0xb2, 0x66, 0x7b, 0x48, 0x71, 0x64, 0x90, 0x12, 0x38, 0x5d, 0x40, 0xbc, 0xef, 0xfb, 0x8e, + 0x24, 0x7b, 0x2a, 0x92, 0x6c, 0x5e, 0xb7, 0x65, 0xd5, 0xd7, 0x1d, 0x57, 0x46, 0x02, 0x27, 0xda, + 0x20, 0xe5, 0xf1, 0x9a, 0x2d, 0x79, 0xb6, 0x26, 0xd9, 0xbe, 0xac, 0x23, 0x9e, 0xe7, 0x34, 0x4d, + 0x11, 0x6c, 0x51, 0x77, 0x6c, 0xa4, 0xba, 0xba, 0x27, 0x81, 0x94, 0xad, 0xf0, 0x82, 0xae, 0xfb, + 0xba, 0x23, 0x73, 0xbc, 0xed, 0xb9, 0xbe, 0xa2, 0x71, 0x8e, 0x2e, 0xa8, 0xb2, 0xa7, 0xea, 0x9e, + 0x64, 0xbb, 0x0a, 0x48, 0x39, 0xa2, 0xa6, 0xe8, 0x92, 0x62, 0xcb, 0xb6, 0x24, 0x79, 0xbc, 0xe7, + 0xb9, 0xae, 0x26, 0x89, 0x8e, 0xab, 0xca, 0xa2, 0xa8, 0x78, 0xbe, 0x8b, 0x40, 0x4a, 0x93, 0x74, + 0xcd, 0x47, 0x92, 0xa0, 0x68, 0xaa, 0x22, 0x79, 0x8e, 0xaf, 0x0b, 0x8a, 0x2d, 0x6a, 0x82, 0x26, + 0x22, 0xdd, 0x13, 0x3d, 0xcd, 0xc7, 0x92, 0x7a, 0x1e, 0xaf, 0x39, 0x9e, 0x27, 0x0a, 0x9c, 0x8e, + 0x6c, 0x95, 0xd7, 0x74, 0x4d, 0xe7, 0x44, 0xce, 0x56, 0x7c, 0x5d, 0x14, 0x15, 0x09, 0xa4, 0x34, + 0x5d, 0xe7, 0x6d, 0x51, 0x53, 0x91, 0x84, 0xf9, 0xf3, 0xaa, 0xc4, 0xf9, 0x82, 0xec, 0x29, 0xbe, + 0xcc, 0x8b, 0xba, 0xaf, 0x0b, 0x1e, 0x48, 0x89, 0x9e, 0xa6, 0xbb, 0x9c, 0xe7, 0x3b, 0xbc, 0x6f, + 0x4b, 0x92, 0xce, 0xf3, 0x8e, 0xe6, 0xdb, 0xaa, 0x2c, 0x88, 0xc8, 0xd7, 0x3c, 0xe4, 0x39, 0x20, + 0x85, 0x44, 0x91, 0x73, 0x5c, 0x5b, 0xd7, 0x5d, 0xcd, 0x96, 0x05, 0x59, 0xb1, 0x11, 0x2f, 0x28, + 0xb6, 0x2c, 0xbb, 0x92, 0xab, 0x0a, 0xb2, 0x2b, 0x83, 0x94, 0x26, 0x22, 0x4e, 0x72, 0x5c, 0x59, + 0xf3, 0x24, 0x4e, 0xf0, 0x75, 0x45, 0x14, 0x75, 0x4d, 0x74, 0x1d, 0x5f, 0x10, 0x54, 0x41, 0x72, + 0x38, 0x01, 0xa4, 0x1c, 0xcd, 0xd7, 0x78, 0x45, 0x15, 0x5d, 0x0e, 0xf1, 0x9e, 0xa0, 0xeb, 0x9c, + 0x26, 0x4a, 0x8a, 0x2f, 0x3a, 0xb6, 0xa3, 0xe9, 0x82, 0xa3, 0x3b, 0x20, 0xe5, 0xc9, 0x32, 0xef, + 0xdb, 0xbe, 0x2b, 0xf9, 0x12, 0xe7, 0xf3, 0x1e, 0x72, 0x05, 0xc7, 0x91, 0x64, 0x5d, 0xe3, 0x1c, + 0xdf, 0xd6, 0x25, 0x5d, 0x00, 0x29, 0x41, 0xe7, 0x34, 0xd9, 0xe7, 0x44, 0x5f, 0x43, 0x9a, 0xcd, + 0x89, 0x3e, 0xe7, 0x88, 0xba, 0xee, 0xca, 0xae, 0xea, 0xfa, 0x9c, 0xc3, 0x39, 0x1a, 0xf6, 0x75, + 0x5b, 0xb5, 0x3d, 0x5e, 0x92, 0x39, 0xdd, 0xf7, 0x14, 0x5e, 0x72, 0x55, 0xc7, 0x11, 0x6d, 0x99, + 0x73, 0x25, 0x5d, 0x13, 0x1c, 0xcd, 0x05, 0x29, 0xc7, 0x55, 0x5c, 0x51, 0x53, 0x7c, 0x09, 0x0f, + 0x04, 0x5d, 0x75, 0x74, 0x4f, 0x47, 0xb2, 0xe0, 0x49, 0xaa, 0xe0, 0xa8, 0xaa, 0xe0, 0x69, 0x20, + 0xe5, 0xf0, 0xa2, 0xc7, 0xf1, 0x9a, 0xa4, 0xd8, 0x9e, 0x6a, 0xf3, 0x92, 0xad, 0x72, 0x8e, 0x8f, + 0x55, 0xca, 0x2b, 0xaa, 0x2a, 0xbb, 0xaa, 0x06, 0x52, 0x8a, 0xae, 0x21, 0x51, 0x11, 0x78, 0xdd, + 0x17, 0x75, 0x55, 0x97, 0x04, 0xce, 0xb7, 0x05, 0x59, 0xe3, 0x1d, 0x81, 0xf7, 0x6c, 0x57, 0x45, + 0x2e, 0x48, 0xf1, 0x2a, 0x2f, 0x08, 0x9a, 0xaa, 0x71, 0x9c, 0xed, 0xea, 0xbc, 0x23, 0x4a, 0xae, + 0xed, 0x79, 0xb2, 0xa6, 0x49, 0x2e, 0xd2, 0x64, 0x59, 0xc1, 0x92, 0xca, 0x9c, 0xe7, 0x22, 0x5e, + 0xf3, 0x10, 0xef, 0x38, 0xbc, 0x24, 0x22, 0x45, 0xf7, 0x14, 0xcf, 0xd3, 0x25, 0x5e, 0x74, 0x34, + 0x51, 0x96, 0xf1, 0x88, 0xe2, 0x65, 0xce, 0xf6, 0x25, 0x99, 0x97, 0x1c, 0x4d, 0xd1, 0x3c, 0xe4, + 0x3b, 0x9a, 0x2c, 0x79, 0x0e, 0xe7, 0x2b, 0x82, 0x2d, 0x49, 0x3c, 0x48, 0x79, 0xbe, 0xec, 0x8a, + 0x1c, 0x52, 0x54, 0xce, 0x73, 0x6c, 0xec, 0x6c, 0x82, 0xca, 0x21, 0x4f, 0x54, 0x38, 0x85, 0x73, + 0x7d, 0x4e, 0x96, 0x40, 0x4a, 0x94, 0x5d, 0xce, 0x16, 0x79, 0x57, 0xd2, 0x78, 0x5d, 0x50, 0x7d, + 0x4e, 0x10, 0x6c, 0xd1, 0x91, 0x45, 0x4e, 0xc0, 0x43, 0x93, 0xd3, 0x48, 0xa4, 0x73, 0x5d, 0x24, + 0x3b, 0xaa, 0xe2, 0x6a, 0x0e, 0xaf, 0x4a, 0xaa, 0xe0, 0x71, 0x82, 0xa4, 0xca, 0x9a, 0xae, 0x72, + 0xb6, 0xc4, 0x29, 0x0e, 0x48, 0xe9, 0x3c, 0x2f, 0xa9, 0xba, 0xed, 0x6a, 0x36, 0xa7, 0xf1, 0x22, + 0xf2, 0x78, 0x41, 0xe2, 0x1d, 0x51, 0xd1, 0x14, 0xd7, 0xf5, 0x6c, 0x0f, 0xe9, 0x20, 0xc5, 0x89, + 0x88, 0xd7, 0x14, 0x5b, 0xf5, 0x35, 0x51, 0xd0, 0x64, 0xa4, 0x8b, 0xa2, 0xc4, 0x7b, 0x48, 0x52, + 0x35, 0x51, 0x94, 0x38, 0x4e, 0x41, 0x58, 0x1f, 0xbe, 0x27, 0xe9, 0xaa, 0x20, 0xf8, 0x9a, 0xc7, + 0xf3, 0xbe, 0xe8, 0xa9, 0x8a, 0xe7, 0x22, 0x4d, 0xf2, 0x35, 0xc4, 0xe9, 0xba, 0xad, 0xe2, 0x71, + 0xcb, 0x71, 0x9c, 0x2c, 0xdb, 0x3c, 0xaf, 0x2b, 0x36, 0x42, 0xb6, 0xe6, 0xf1, 0x8e, 0xab, 0x70, + 0xba, 0xa6, 0xc9, 0x8e, 0xad, 0xcb, 0x22, 0x48, 0x71, 0xba, 0xe6, 0xcb, 0x32, 0x12, 0x54, 0x4f, + 0x73, 0x25, 0x87, 0xb3, 0x65, 0x9d, 0xe3, 0x39, 0xc1, 0x75, 0x3c, 0x6c, 0x61, 0x1f, 0x8f, 0x4a, + 0x24, 0x3a, 0x82, 0xed, 0xf0, 0xbe, 0x6e, 0xcb, 0x8a, 0x2f, 0xf8, 0x8e, 0xe4, 0xea, 0x82, 0xa4, + 0xf9, 0x82, 0x2f, 0xf1, 0x8a, 0xc8, 0xe3, 0xc8, 0x2f, 0x29, 0x08, 0x0b, 0x62, 0x3b, 0xae, 0x6b, + 0x6b, 0xc8, 0xd6, 0x1d, 0xdb, 0xd6, 0x45, 0xc1, 0xb3, 0x15, 0xcd, 0xf7, 0x1c, 0x59, 0xd0, 0x41, + 0x4a, 0xf2, 0x54, 0x5b, 0xd0, 0x3c, 0xc5, 0x17, 0x04, 0x45, 0x44, 0x9e, 0xc2, 0x7b, 0x48, 0xd3, + 0x5c, 0x5b, 0x51, 0x90, 0xc3, 0xf1, 0x3c, 0x12, 0x41, 0xca, 0x11, 0x1c, 0x85, 0xf7, 0x1c, 0xd5, + 0xd1, 0x25, 0x9d, 0xb3, 0x15, 0xce, 0x13, 0x54, 0xce, 0x75, 0x1d, 0x81, 0x73, 0x24, 0x45, 0xd0, + 0x04, 0x05, 0xa4, 0x74, 0x41, 0x56, 0x75, 0x95, 0xe3, 0x7d, 0x5e, 0x92, 0x15, 0x4e, 0x46, 0x3a, + 0xf2, 0x5c, 0xce, 0xe1, 0x78, 0x5b, 0xe7, 0x78, 0x57, 0xf1, 0x64, 0x90, 0x52, 0x15, 0x9d, 0x17, + 0x74, 0xd5, 0xc1, 0xd5, 0x6c, 0x89, 0x17, 0x44, 0xd1, 0xf7, 0x38, 0x9b, 0x73, 0x6c, 0x9b, 0xb3, + 0x45, 0x05, 0xcf, 0x1e, 0xbc, 0x82, 0x7c, 0xd7, 0xe7, 0x10, 0xc7, 0xc9, 0x9c, 0xe4, 0x79, 0x3e, + 0xf2, 0x3c, 0xc4, 0x8b, 0x8e, 0x8f, 0x6c, 0x5d, 0x57, 0x75, 0x59, 0x00, 0x29, 0x5e, 0x96, 0x44, + 0x5b, 0x75, 0x25, 0x45, 0x11, 0x45, 0xdb, 0xf5, 0x55, 0x1c, 0xd4, 0x38, 0xde, 0xb1, 0x5d, 0xd7, + 0xf1, 0x38, 0xe2, 0x63, 0x9e, 0xe2, 0x73, 0x92, 0x23, 0xdb, 0x3a, 0xcf, 0xf1, 0xbc, 0xec, 0x4b, + 0x8e, 0xcc, 0x21, 0x17, 0xb9, 0x9c, 0xee, 0x49, 0x9c, 0xcd, 0x7b, 0x3e, 0x48, 0xe9, 0x22, 0x26, + 0x55, 0x35, 0xc1, 0x53, 0x24, 0xdd, 0x43, 0x8e, 0xcc, 0xe3, 0x80, 0x2a, 0x21, 0xd7, 0x51, 0x79, + 0xc9, 0x71, 0x38, 0x90, 0x92, 0x91, 0xac, 0x8a, 0xae, 0xee, 0xea, 0xbe, 0xe6, 0xd8, 0xaa, 0xc0, + 0x21, 0x5f, 0x77, 0x78, 0x0d, 0xe9, 0xbe, 0x8b, 0x04, 0x24, 0xf8, 0x2a, 0x48, 0xc9, 0x3a, 0x67, + 0x0b, 0xa2, 0xe0, 0xe1, 0xa9, 0x4d, 0x91, 0x38, 0xdd, 0xb7, 0x1d, 0x55, 0x40, 0xaa, 0x2c, 0xd8, + 0x9a, 0x2d, 0x28, 0x78, 0x06, 0xd2, 0x24, 0xdd, 0xe1, 0x24, 0xc7, 0x73, 0x3c, 0xde, 0x13, 0x1c, + 0x5d, 0x13, 0x7d, 0x05, 0x69, 0xb6, 0x24, 0xab, 0x88, 0x53, 0x44, 0x01, 0xcf, 0x40, 0xba, 0x2b, + 0xc8, 0x9a, 0x8e, 0x78, 0x97, 0x43, 0xba, 0x2f, 0x8b, 0xa2, 0xcd, 0x09, 0x82, 0xab, 0x08, 0x9c, + 0xec, 0xeb, 0x2a, 0xaf, 0x23, 0x1e, 0xa4, 0x74, 0x05, 0x39, 0xb6, 0x22, 0xe0, 0xe9, 0x43, 0x70, + 0x24, 0x55, 0xe1, 0x54, 0x5e, 0x17, 0x1c, 0x5b, 0x95, 0xb0, 0x43, 0xcb, 0x8e, 0x0d, 0x52, 0xaa, + 0x2b, 0xf1, 0x9c, 0x8b, 0x34, 0x51, 0x40, 0x9a, 0xa4, 0xd9, 0xa2, 0x28, 0xf0, 0x92, 0x28, 0xb8, + 0xba, 0xad, 0x09, 0x48, 0x57, 0x05, 0x3c, 0x37, 0x28, 0xbe, 0xa7, 0x89, 0xb6, 0xc0, 0xfb, 0xba, + 0x2f, 0xba, 0xb2, 0xaf, 0xfb, 0xbe, 0xea, 0xc8, 0xae, 0x22, 0x3a, 0x8e, 0xcb, 0xab, 0xba, 0x07, + 0x52, 0x82, 0xa7, 0xa9, 0xba, 0xe4, 0x3a, 0xaa, 0x23, 0xe3, 0x78, 0xa0, 0x3a, 0x08, 0x09, 0x8a, + 0x2e, 0x23, 0x55, 0x77, 0x79, 0x59, 0x55, 0x38, 0x90, 0xf2, 0x3d, 0x8d, 0xf3, 0x6d, 0xdd, 0x55, + 0x78, 0x81, 0x73, 0x3d, 0xec, 0xa8, 0xb2, 0xc0, 0xc9, 0x3c, 0xe7, 0x8b, 0xae, 0x22, 0x49, 0x78, + 0xae, 0x94, 0x55, 0x5f, 0x54, 0x24, 0xc1, 0x91, 0x90, 0xa8, 0x22, 0x41, 0xf3, 0x65, 0xd7, 0x41, + 0x22, 0x27, 0x70, 0xae, 0x2e, 0x8a, 0xbc, 0x23, 0xb9, 0x20, 0xa5, 0x73, 0x0a, 0xc7, 0x49, 0x42, + 0x10, 0xff, 0x64, 0xa4, 0xca, 0xb2, 0xc3, 0x49, 0xa2, 0xcb, 0xc9, 0xaa, 0x20, 0x4b, 0x36, 0xf6, + 0x42, 0x57, 0xe6, 0x7c, 0x05, 0x67, 0x0e, 0xbc, 0x2a, 0x2a, 0xaa, 0xe2, 0x48, 0xaa, 0x63, 0x2b, + 0x9c, 0x26, 0x3b, 0x1e, 0xe7, 0x2a, 0x2e, 0x42, 0x20, 0xe5, 0x0a, 0x1c, 0xef, 0xe8, 0x82, 0xaf, + 0x39, 0x92, 0x26, 0xfa, 0xb6, 0xa8, 0x69, 0x0e, 0xe2, 0x55, 0xc9, 0x53, 0x14, 0x0d, 0x6b, 0x50, + 0x02, 0x29, 0x47, 0xe7, 0x1c, 0xcf, 0x41, 0xba, 0xc2, 0xdb, 0x8a, 0xa4, 0xf9, 0x9c, 0x24, 0xa8, + 0x9e, 0x23, 0xf0, 0xb6, 0x6d, 0x2b, 0xae, 0xeb, 0xc8, 0x3a, 0x48, 0xe9, 0xbe, 0x22, 0xb8, 0x92, + 0x2f, 0x28, 0x8e, 0xce, 0x79, 0xa2, 0xa7, 0xca, 0xaa, 0x83, 0x6c, 0x85, 0xd3, 0x91, 0x26, 0xf8, + 0x02, 0xb2, 0xfd, 0xf8, 0x57, 0x4f, 0x5f, 0x61, 0x52, 0x43, 0xd3, 0xb2, 0xe9, 0xa3, 0xdd, 0xb2, + 0x2e, 0xfb, 0xc7, 0xcf, 0x82, 0xf9, 0xf0, 0x04, 0xdc, 0x8b, 0xb2, 0xb3, 0xb1, 0x4f, 0xb2, 0xb3, + 0x4f, 0xb2, 0xb3, 0x4f, 0xb2, 0xb3, 0x4f, 0xb2, 0xb3, 0x4f, 0xb2, 0xb3, 0x4f, 0xb2, 0xb3, 0x4f, + 0xb2, 0xb3, 0x4f, 0xb2, 0xb3, 0x4f, 0xb2, 0xb3, 0x7f, 0xb1, 0xd9, 0x59, 0xec, 0x2b, 0x36, 0x6b, + 0x2e, 0xca, 0xc6, 0x82, 0x04, 0x2d, 0xfd, 0x27, 0x12, 0x60, 0x7e, 0xe0, 0x10, 0x9c, 0xf5, 0xc1, + 0x6c, 0xf8, 0x1d, 0x47, 0x98, 0xb1, 0x05, 0x5f, 0xdd, 0x1b, 0x71, 0xfe, 0xdf, 0xa2, 0x3f, 0x81, + 0xbf, 0xf6, 0x70, 0x74, 0xc8, 0x17, 0xf1, 0xc7, 0x72, 0xc3, 0x99, 0x80, 0x6f, 0x98, 0x1c, 0x7a, + 0x43, 0xb7, 0xed, 0xbe, 0x07, 0xcd, 0x50, 0x29, 0xa8, 0x07, 0x66, 0xc8, 0xf1, 0x38, 0x9d, 0x7e, + 0x1a, 0x4f, 0x67, 0x1b, 0x81, 0x8f, 0x4f, 0x6a, 0x85, 0xb0, 0x0d, 0x5b, 0xb9, 0x05, 0x66, 0xe3, + 0x27, 0x90, 0xdd, 0x85, 0x71, 0xd2, 0x0c, 0x4f, 0x0e, 0x85, 0xbf, 0xcc, 0x4c, 0xa4, 0x13, 0x9d, + 0xd1, 0x6b, 0x6f, 0x9c, 0x24, 0x3c, 0xf5, 0xf9, 0x5f, 0xec, 0xd4, 0xb8, 0xcb, 0x7e, 0x3f, 0x98, + 0x21, 0x77, 0xc3, 0xfc, 0x76, 0x67, 0x17, 0x75, 0x9e, 0xf2, 0x7d, 0x61, 0xfd, 0x88, 0x32, 0x76, + 0xe3, 0x7a, 0x2a, 0xce, 0x3c, 0xce, 0x8c, 0x7d, 0x09, 0xcc, 0xc5, 0x6f, 0x24, 0xa0, 0x0e, 0x39, + 0x97, 0x4e, 0x5a, 0xb3, 0xb1, 0xcb, 0x05, 0xa8, 0x93, 0xfe, 0xcb, 0xa3, 0x60, 0x3a, 0xee, 0x1f, + 0x9b, 0x03, 0x76, 0x0b, 0xdc, 0x43, 0x78, 0x46, 0x43, 0xbd, 0xf1, 0xac, 0x86, 0x1a, 0xfd, 0x17, + 0x62, 0xa8, 0xfd, 0x01, 0x85, 0x8e, 0x3d, 0xab, 0x42, 0x57, 0xc2, 0x8b, 0x1a, 0xec, 0xf1, 0x8b, + 0x1a, 0x4f, 0x57, 0x75, 0xfa, 0xef, 0x33, 0x00, 0xc6, 0x3f, 0xcb, 0xb3, 0xbb, 0x4d, 0xf7, 0xbb, + 0x54, 0x24, 0xfc, 0x97, 0xaa, 0xc8, 0x1b, 0x73, 0xef, 0xbf, 0x16, 0xf7, 0x8a, 0xf4, 0x37, 0x12, + 0xe0, 0x4c, 0xae, 0xdd, 0x7e, 0xab, 0x89, 0xe2, 0xbe, 0xb2, 0x04, 0x12, 0xb1, 0x83, 0x55, 0x10, + 0xbb, 0x6e, 0x45, 0xf0, 0x6c, 0x1a, 0x24, 0xf7, 0x3a, 0xa8, 0x8b, 0x5a, 0x6e, 0x78, 0xf5, 0x34, + 0x9b, 0x08, 0x2f, 0x20, 0xf6, 0xf1, 0x6c, 0x0d, 0xcc, 0xba, 0xf7, 0x90, 0xfb, 0x56, 0x23, 0xc0, + 0xf4, 0x4e, 0x3b, 0x76, 0xcc, 0x5e, 0x18, 0x6e, 0xa2, 0xfc, 0x88, 0x35, 0x43, 0x98, 0x54, 0x03, + 0x1e, 0xec, 0x5d, 0x70, 0x26, 0x60, 0xda, 0x6a, 0xf7, 0xfa, 0x8c, 0x93, 0x1f, 0x8b, 0xf1, 0x3c, + 0x61, 0x54, 0x6e, 0xf7, 0x22, 0xde, 0x2a, 0x48, 0x34, 0x7b, 0x68, 0x37, 0xfc, 0x18, 0xe5, 0xe9, + 0x1f, 0x69, 0xe6, 0x47, 0x2c, 0x52, 0x81, 0xfd, 0xec, 0xb1, 0x01, 0x99, 0x20, 0x3a, 0x39, 0xa1, + 0xed, 0x81, 0x81, 0x7a, 0xe3, 0x17, 0x99, 0xef, 0xbc, 0x36, 0xce, 0x67, 0x94, 0x8c, 0xf4, 0xfe, + 0x21, 0xf3, 0x73, 0x0c, 0x98, 0x0b, 0xbf, 0xaf, 0x98, 0x08, 0x8c, 0x00, 0x6e, 0x83, 0xf1, 0x1c, + 0x16, 0x75, 0xb9, 0x0c, 0x8a, 0x60, 0x61, 0x40, 0xab, 0xc2, 0x64, 0x28, 0x3e, 0x48, 0x0d, 0x51, + 0x8d, 0x30, 0x5d, 0x6e, 0xf7, 0x52, 0x11, 0xc5, 0x5c, 0xd0, 0x41, 0x61, 0x22, 0xf0, 0x05, 0xb0, + 0x04, 0x82, 0x2b, 0x0c, 0xd9, 0xf3, 0xe0, 0x0c, 0x2e, 0x58, 0x89, 0xbb, 0x35, 0x1c, 0xc5, 0xe5, + 0xe4, 0xcb, 0xa4, 0x7e, 0x79, 0xdc, 0x3f, 0xe1, 0x68, 0x76, 0x11, 0x8c, 0x93, 0x0e, 0xf7, 0x0f, + 0xfa, 0x27, 0x82, 0x83, 0xfe, 0xfe, 0x69, 0x6d, 0xf0, 0xb9, 0x78, 0xfa, 0xa7, 0x12, 0x60, 0xce, + 0xe8, 0x6c, 0xc7, 0x1d, 0xec, 0x1a, 0xe5, 0x60, 0xe7, 0x42, 0x07, 0xfb, 0x16, 0x75, 0xb3, 0xef, + 0xd9, 0x5d, 0xed, 0x33, 0x1f, 0xc1, 0xd5, 0x8e, 0xb9, 0x54, 0xf6, 0x23, 0xba, 0xd4, 0xf7, 0xd4, + 0x75, 0x5e, 0x1a, 0xee, 0x3a, 0xbf, 0xe7, 0x5c, 0xe4, 0x6f, 0x27, 0xc0, 0x99, 0xe0, 0x02, 0xe7, + 0xd3, 0xbd, 0xe4, 0x6b, 0xbf, 0xe7, 0xbc, 0xe4, 0xce, 0x09, 0x01, 0x86, 0x7f, 0xef, 0x11, 0xf3, + 0x2a, 0xfb, 0x69, 0x9a, 0x0f, 0x79, 0x97, 0x6a, 0xc5, 0x6d, 0xef, 0xee, 0xb6, 0x5b, 0x8d, 0xfb, + 0xb6, 0xbf, 0x62, 0x54, 0x0b, 0x96, 0xdd, 0x43, 0xc5, 0xe6, 0x6e, 0xb3, 0xf7, 0x7b, 0xce, 0xb1, + 0x7e, 0x21, 0x01, 0xce, 0x6e, 0xdc, 0xae, 0x93, 0x87, 0x2c, 0xe2, 0xae, 0x75, 0x9d, 0x72, 0xad, + 0xcb, 0xbf, 0xf4, 0x88, 0x99, 0x4d, 0x32, 0x1c, 0x73, 0x63, 0x72, 0x77, 0xe7, 0xba, 0x67, 0xf7, + 0xec, 0x63, 0x1e, 0x76, 0xcc, 0x7b, 0xc6, 0xbe, 0x5b, 0xef, 0x49, 0x7c, 0x3c, 0xef, 0x19, 0xff, + 0xee, 0xbd, 0x67, 0xe2, 0x7b, 0xeb, 0x3d, 0x02, 0xf9, 0xda, 0xf6, 0x77, 0xad, 0xf7, 0x8c, 0x47, + 0x9f, 0xa8, 0xc9, 0x19, 0x31, 0x23, 0x05, 0xdf, 0x9f, 0xa5, 0x7f, 0x26, 0x01, 0x2e, 0x1c, 0x0b, + 0x48, 0x41, 0xfe, 0xf7, 0xec, 0x51, 0xe9, 0x5f, 0x7a, 0xc4, 0xf9, 0xfc, 0x47, 0x8c, 0x38, 0x1f, + 0xc3, 0x27, 0x22, 0x37, 0xbb, 0xf1, 0x35, 0xe6, 0xfd, 0xd7, 0x8e, 0xc7, 0xf0, 0xef, 0xbc, 0x36, + 0xc6, 0xff, 0xae, 0x73, 0x8f, 0x17, 0x22, 0xf7, 0x58, 0x3c, 0x16, 0x5c, 0xde, 0xfd, 0x67, 0x4c, + 0x50, 0x16, 0x7e, 0x8f, 0xf6, 0x37, 0x12, 0xe0, 0x12, 0xf9, 0xbc, 0xb2, 0x6a, 0x77, 0xec, 0x5d, + 0xd4, 0xa3, 0x27, 0xb0, 0x2b, 0xb1, 0xeb, 0x2b, 0x54, 0x1a, 0x4d, 0xae, 0xb2, 0x7c, 0x32, 0x69, + 0x7d, 0xbc, 0xb0, 0xf3, 0x0b, 0xf1, 0x49, 0xeb, 0x67, 0x19, 0x30, 0x1b, 0xfa, 0xd5, 0x38, 0xd1, + 0xf6, 0xef, 0xfe, 0x39, 0xeb, 0x2b, 0x0c, 0x38, 0x7f, 0x74, 0xa3, 0x3c, 0xee, 0x4f, 0xb1, 0x8b, + 0xe8, 0xcc, 0xf7, 0xf6, 0x22, 0xfa, 0xf1, 0x44, 0x74, 0x74, 0xd8, 0xa6, 0x82, 0x00, 0xe6, 0xad, + 0xf6, 0x0e, 0xb5, 0x56, 0x7c, 0x2e, 0xec, 0x55, 0xe8, 0xe5, 0xd1, 0xf3, 0x83, 0xd7, 0x5e, 0xb7, + 0x02, 0x7c, 0xfa, 0x2f, 0x30, 0xe0, 0x4c, 0xad, 0x47, 0xde, 0xf1, 0x8a, 0x55, 0xbb, 0x77, 0x54, + 0x0d, 0xaf, 0x73, 0xad, 0x5f, 0x7a, 0xc4, 0x64, 0x92, 0x4c, 0xfa, 0x4a, 0x77, 0x0f, 0xb9, 0x2b, + 0xf6, 0x5e, 0xb3, 0xb1, 0xdd, 0x69, 0xef, 0x1f, 0x5d, 0x51, 0x22, 0x7f, 0x07, 0x6f, 0x7b, 0xf6, + 0xb7, 0x68, 0x5e, 0x1f, 0xba, 0x4f, 0x11, 0x6a, 0x5b, 0x1c, 0xde, 0xb5, 0xec, 0xcc, 0x7b, 0x8f, + 0x98, 0x64, 0xf4, 0x5a, 0xc3, 0x40, 0x47, 0xc3, 0xaf, 0xe4, 0xfe, 0x2c, 0x03, 0x66, 0xa9, 0x9b, + 0x89, 0xec, 0x16, 0x98, 0x8e, 0xdd, 0x96, 0x0a, 0x1f, 0x3a, 0xbc, 0x32, 0xf8, 0x51, 0xa5, 0xf3, + 0x79, 0xe4, 0xf6, 0x2c, 0xe4, 0x93, 0x98, 0xba, 0xf8, 0xde, 0x3b, 0xb3, 0x47, 0x17, 0xb3, 0xba, + 0xa8, 0xd7, 0x17, 0x36, 0x61, 0x81, 0x00, 0x5b, 0x43, 0xbd, 0x2e, 0x9b, 0x3d, 0x41, 0xce, 0xcb, + 0xe1, 0x16, 0xc6, 0xd9, 0x61, 0x2f, 0x4a, 0x0c, 0xd8, 0xc7, 0x05, 0x73, 0xf4, 0x85, 0x44, 0xf6, + 0xcd, 0xe0, 0x32, 0xe4, 0x33, 0x4b, 0xbb, 0xf0, 0xde, 0x3b, 0xd3, 0xce, 0xf6, 0x5e, 0x23, 0xac, + 0x14, 0x93, 0x75, 0xd2, 0xee, 0xb6, 0xb0, 0xa0, 0xe9, 0x2e, 0x98, 0xaf, 0xb6, 0x3b, 0xd4, 0x07, + 0x83, 0x3a, 0x18, 0xdf, 0x6b, 0x77, 0x7a, 0xd1, 0x66, 0xc8, 0x0b, 0xf1, 0x7d, 0x89, 0x9f, 0x3f, + 0x61, 0x5f, 0x22, 0xa8, 0xf1, 0xac, 0x9e, 0xf7, 0xeb, 0xa3, 0x60, 0x72, 0xd3, 0x2a, 0x16, 0x70, + 0x68, 0x59, 0x01, 0x33, 0xe1, 0x97, 0xe6, 0xb1, 0xab, 0x80, 0x7d, 0xcf, 0x0b, 0x6e, 0x71, 0x04, + 0x04, 0xc1, 0x2d, 0x8e, 0xeb, 0x7d, 0xfa, 0xe0, 0xc5, 0x87, 0x31, 0x2a, 0x1e, 0x3f, 0x66, 0x62, + 0x15, 0x82, 0x07, 0x1f, 0xe4, 0xf0, 0x16, 0x7e, 0xfc, 0xb6, 0x48, 0x7f, 0x91, 0x3a, 0xca, 0xf4, + 0x9f, 0x96, 0x1a, 0x8d, 0xde, 0x89, 0x88, 0xae, 0x99, 0x50, 0x2f, 0x51, 0x4c, 0x9e, 0x5a, 0x2f, + 0xfe, 0x20, 0x85, 0x3c, 0xe4, 0x41, 0x8a, 0x73, 0x47, 0xd4, 0x31, 0x41, 0xe3, 0xef, 0x52, 0xdc, + 0x98, 0x21, 0xb3, 0x2b, 0x8e, 0x82, 0xa3, 0x90, 0xc9, 0xa6, 0x06, 0xbf, 0xbf, 0x1f, 0x7c, 0x05, + 0x28, 0x9b, 0xa2, 0x2f, 0x89, 0xe3, 0x30, 0x34, 0xf1, 0xe4, 0x90, 0x49, 0x04, 0xc9, 0x8f, 0x9a, + 0x51, 0xfa, 0x37, 0xbe, 0x13, 0x70, 0x3c, 0xfd, 0x47, 0x19, 0x30, 0xb7, 0x69, 0x15, 0xe3, 0x66, + 0xbe, 0x0b, 0xa6, 0xf6, 0x3b, 0x3b, 0x0d, 0x1c, 0xdc, 0x22, 0x6f, 0xba, 0x3a, 0x7c, 0x46, 0x08, + 0x4d, 0x95, 0x5d, 0x3a, 0x3e, 0x32, 0xa9, 0xc7, 0x4b, 0x92, 0xfb, 0x9d, 0x1d, 0x4c, 0xd8, 0x65, + 0x3f, 0x7d, 0x82, 0xfb, 0x27, 0xb0, 0xfb, 0x0f, 0x7a, 0xc3, 0x4f, 0x33, 0xe0, 0x4c, 0x51, 0x5a, + 0x45, 0x5d, 0xca, 0x0b, 0xeb, 0x20, 0xb9, 0x23, 0x35, 0x3c, 0xd4, 0xed, 0xbf, 0x73, 0x39, 0x18, + 0x1f, 0x83, 0x3a, 0xc4, 0xd1, 0x97, 0x8e, 0xef, 0xb4, 0x53, 0x92, 0x4d, 0xee, 0x10, 0xda, 0x61, + 0x82, 0x8d, 0x9d, 0x28, 0x58, 0xfc, 0xca, 0x7c, 0xfa, 0xef, 0x32, 0x60, 0x3e, 0x76, 0x79, 0x9c, + 0x5c, 0x2d, 0xfe, 0xfc, 0xe0, 0xd5, 0x73, 0xe6, 0x59, 0xaf, 0x9e, 0xa7, 0x87, 0x5f, 0x3d, 0xa7, + 0x64, 0xa6, 0x2f, 0xa1, 0xdf, 0x1d, 0xfa, 0x74, 0x8d, 0x1a, 0x86, 0x93, 0xeb, 0xa7, 0x3c, 0x5d, + 0x73, 0xb6, 0x63, 0xf7, 0x50, 0x63, 0x07, 0x4f, 0xbe, 0xa8, 0xd3, 0x08, 0x84, 0xa1, 0x1f, 0xaf, + 0xb9, 0x01, 0xe6, 0xf0, 0x5c, 0x13, 0x7b, 0xd8, 0xe9, 0x99, 0xd3, 0xe2, 0x34, 0x17, 0xd4, 0x0d, + 0xb6, 0x1d, 0x49, 0xdd, 0xa7, 0xec, 0x37, 0xa6, 0x15, 0x70, 0x01, 0xd7, 0xa0, 0x13, 0x2d, 0x52, + 0xf3, 0xd4, 0x0c, 0x2b, 0xfd, 0xcb, 0x63, 0xe0, 0xec, 0xc6, 0xfd, 0x5e, 0xbd, 0xfd, 0x16, 0x6a, + 0x19, 0xfb, 0xbd, 0x7b, 0x95, 0xe0, 0x41, 0x67, 0x56, 0x03, 0xa0, 0x8b, 0xdc, 0x0e, 0xea, 0x35, + 0xa2, 0xca, 0xc7, 0x5d, 0xa5, 0x46, 0x08, 0xc8, 0x35, 0xac, 0xa9, 0x80, 0xf8, 0x26, 0x3a, 0x60, + 0x5f, 0x03, 0x13, 0xc1, 0xa3, 0x55, 0x61, 0x42, 0x74, 0xc2, 0xad, 0x70, 0x5a, 0x37, 0xf9, 0x11, + 0x2b, 0xac, 0x85, 0xeb, 0xbb, 0xa4, 0xdf, 0xe1, 0xf2, 0xef, 0x94, 0xfa, 0x47, 0xfa, 0xc1, 0xf5, + 0x83, 0x5a, 0x6c, 0x05, 0x4c, 0x7f, 0x01, 0x6b, 0xa1, 0xb1, 0x87, 0xd5, 0x10, 0x2e, 0x06, 0x33, + 0x27, 0x33, 0x39, 0xae, 0xb2, 0xfc, 0x88, 0x05, 0xbe, 0xd0, 0xc7, 0xb2, 0x3a, 0x98, 0x71, 0x90, + 0xdd, 0x41, 0x9d, 0x46, 0x0f, 0x6b, 0xe9, 0xb4, 0x27, 0x3a, 0x71, 0x94, 0x0c, 0x68, 0x89, 0x42, + 0xb1, 0x16, 0x1d, 0xdb, 0x7d, 0x6b, 0x7f, 0x8f, 0x68, 0x71, 0xf2, 0xa9, 0x5a, 0x0c, 0x88, 0x6f, + 0xa2, 0x83, 0x1b, 0x49, 0x92, 0xc0, 0xa9, 0x19, 0x21, 0xbb, 0x00, 0x66, 0x48, 0xbb, 0x8d, 0x6e, + 0x7b, 0xbf, 0xe3, 0x06, 0xdf, 0xa9, 0x93, 0x3b, 0x43, 0xe1, 0x18, 0xfa, 0x22, 0x03, 0x16, 0x0a, + 0xd5, 0xfa, 0xbd, 0x0e, 0xb2, 0x7b, 0x39, 0xbb, 0x87, 0xb6, 0xdb, 0x9d, 0x03, 0x3c, 0x90, 0xc8, + 0x78, 0x6f, 0x81, 0x73, 0xcd, 0xbd, 0x46, 0x8f, 0x14, 0x36, 0xdc, 0xa0, 0xb4, 0xd9, 0x1f, 0x53, + 0x27, 0xbc, 0xc6, 0x39, 0xc8, 0x2d, 0x76, 0xe6, 0x12, 0x3f, 0x72, 0x63, 0x9b, 0x7b, 0x14, 0x5d, + 0x13, 0x75, 0xd3, 0xff, 0x64, 0x02, 0xcc, 0x06, 0x97, 0xb3, 0xa3, 0x1b, 0xf9, 0xe1, 0x35, 0xc6, + 0xe0, 0x96, 0xf6, 0xd3, 0xde, 0x85, 0xb3, 0x5b, 0x07, 0x41, 0x6d, 0x76, 0x1b, 0x5c, 0x3c, 0x26, + 0xf8, 0x41, 0xf4, 0xc4, 0xc5, 0x29, 0x2f, 0x27, 0x9e, 0xa4, 0x89, 0xfc, 0x88, 0x75, 0x6e, 0x40, + 0x5e, 0x52, 0xc6, 0xde, 0x3e, 0xfe, 0xb6, 0x44, 0xe2, 0x19, 0xdf, 0x96, 0x00, 0x5f, 0x7d, 0xc4, + 0x4c, 0x80, 0x04, 0x33, 0x3a, 0x76, 0xfa, 0xc3, 0x12, 0xc9, 0x8f, 0xf7, 0xb0, 0xc4, 0xd4, 0x77, + 0xf3, 0xb0, 0xc4, 0x7d, 0xea, 0x61, 0x09, 0xf0, 0xcc, 0x0f, 0x4b, 0x7c, 0x9c, 0xf5, 0x2d, 0xf5, + 0x16, 0x45, 0xfc, 0x69, 0x89, 0xe9, 0x67, 0x7e, 0x5a, 0x82, 0x39, 0x7a, 0x5a, 0xe2, 0x87, 0xe9, + 0xa7, 0x25, 0x66, 0x9e, 0xfd, 0x69, 0x89, 0x8f, 0x27, 0x7b, 0xfc, 0x35, 0x8a, 0x5d, 0x70, 0xb1, + 0xb7, 0xd3, 0x6d, 0xf8, 0x47, 0x97, 0x35, 0x06, 0x9e, 0xb8, 0xb8, 0x7e, 0xc2, 0x79, 0xda, 0x49, + 0xf7, 0x44, 0xc2, 0x29, 0xf0, 0x7c, 0x6f, 0x18, 0x41, 0xf6, 0x12, 0x98, 0x0d, 0x7d, 0x2f, 0xcc, + 0x37, 0x92, 0x51, 0x3e, 0x92, 0xbd, 0x0a, 0x70, 0x46, 0x1c, 0xbb, 0xa4, 0x3f, 0xf3, 0xf8, 0x90, + 0x49, 0x7e, 0xed, 0x90, 0x61, 0x9e, 0x1c, 0x32, 0x93, 0xfd, 0x49, 0x74, 0x12, 0x26, 0xd3, 0xbf, + 0x31, 0x0a, 0xe6, 0xac, 0xe0, 0x9a, 0x55, 0xd4, 0x8f, 0x1f, 0x04, 0x33, 0xb1, 0x18, 0x18, 0x25, + 0x22, 0x27, 0x08, 0x7f, 0xe2, 0xe2, 0x3c, 0x9c, 0x2d, 0x48, 0x56, 0x6a, 0x4d, 0x1f, 0x45, 0xc4, + 0x2e, 0x5b, 0x02, 0x93, 0x47, 0x2f, 0x3d, 0x62, 0xd6, 0x9f, 0x3a, 0x21, 0xbe, 0x1e, 0xdb, 0x1f, + 0x8a, 0xb3, 0x8c, 0x78, 0xb0, 0x75, 0x00, 0x8e, 0x1e, 0xe2, 0x0d, 0xf3, 0x92, 0x13, 0xee, 0x00, + 0x0f, 0xd9, 0xa9, 0xa4, 0x78, 0x4e, 0xf5, 0xdf, 0xe4, 0x65, 0x7f, 0x00, 0xcc, 0x07, 0x53, 0x42, + 0x64, 0xc3, 0xe8, 0x89, 0xf1, 0x4f, 0x9d, 0x94, 0x4a, 0x0c, 0x1c, 0xf2, 0x51, 0x8c, 0xe7, 0xdc, + 0x78, 0x71, 0x37, 0xfd, 0x63, 0x0b, 0xe0, 0x7c, 0xa8, 0xf5, 0x5c, 0xbb, 0xd5, 0xed, 0x75, 0xec, + 0x66, 0x2b, 0x88, 0xb9, 0x05, 0x70, 0x7e, 0xd7, 0x7e, 0xd0, 0x08, 0xdb, 0x26, 0xf9, 0x46, 0xe3, + 0x19, 0xde, 0xec, 0x66, 0x77, 0xed, 0x07, 0x81, 0x08, 0x24, 0xa7, 0x29, 0xb7, 0x5b, 0x88, 0x2d, + 0x81, 0x85, 0x63, 0xac, 0xd0, 0x03, 0x17, 0x21, 0xaf, 0x1b, 0x5e, 0xb0, 0x64, 0x3f, 0x38, 0x64, + 0x46, 0x25, 0x72, 0xcd, 0x71, 0x72, 0x79, 0x7c, 0xe1, 0x61, 0xf2, 0x1a, 0x4e, 0xd5, 0xcf, 0xd3, + 0xbc, 0xcc, 0xa0, 0x0a, 0x5b, 0xa6, 0xd8, 0xbd, 0x85, 0x0e, 0x1a, 0xdd, 0xe6, 0x0f, 0xa3, 0x40, + 0xb8, 0xf1, 0x53, 0x83, 0xd4, 0xb9, 0x3e, 0xc3, 0x9b, 0xe8, 0xa0, 0xd6, 0xfc, 0x61, 0x44, 0xc4, + 0xbb, 0x05, 0x2e, 0x0f, 0xe3, 0x17, 0x49, 0x38, 0x41, 0x24, 0xbc, 0x80, 0x25, 0x54, 0xa4, 0xe8, + 0xe6, 0x67, 0x5f, 0x4a, 0xc6, 0xba, 0x38, 0xc8, 0x34, 0x92, 0xd3, 0x02, 0x8b, 0x31, 0xbe, 0xc1, + 0xb5, 0xd2, 0x23, 0x49, 0x93, 0xa7, 0x3e, 0x71, 0x73, 0xa1, 0xcf, 0x94, 0xac, 0x38, 0xfa, 0xb2, + 0x7e, 0x0e, 0x5c, 0x1d, 0xce, 0x33, 0x92, 0x76, 0x8a, 0x48, 0x7b, 0xe9, 0x83, 0x43, 0x26, 0x21, + 0x71, 0xba, 0x12, 0xc9, 0x9b, 0x5c, 0x9e, 0x58, 0x78, 0xf8, 0x70, 0xf4, 0x1a, 0x93, 0x1f, 0xb5, + 0x2e, 0x1d, 0xe7, 0x1d, 0x89, 0x1c, 0x1a, 0x3d, 0x7c, 0xae, 0x33, 0x66, 0xf4, 0xe9, 0x53, 0xa4, + 0x1d, 0x23, 0x46, 0x0f, 0x06, 0xc9, 0x91, 0xd1, 0x8b, 0x81, 0x95, 0x28, 0x56, 0x91, 0x90, 0x33, + 0x44, 0xc8, 0x33, 0x58, 0xa5, 0x02, 0x17, 0x5d, 0xc9, 0xbd, 0x76, 0x8d, 0xc9, 0x8f, 0x11, 0x9b, + 0xc7, 0x58, 0x0d, 0xd8, 0x3c, 0xe4, 0x46, 0xdb, 0x7c, 0xee, 0x14, 0xd9, 0x12, 0xc4, 0xe6, 0x01, + 0xc3, 0x21, 0x36, 0x1f, 0xe4, 0x17, 0x09, 0x38, 0x7f, 0x64, 0x73, 0x51, 0x38, 0x66, 0xf3, 0x04, + 0xb1, 0x39, 0xc5, 0x74, 0xc0, 0xe6, 0x21, 0xdf, 0x41, 0x9b, 0x9f, 0xf6, 0xd0, 0xe1, 0x38, 0xb1, + 0x79, 0xc0, 0x74, 0xa8, 0xcd, 0x8f, 0xf3, 0x8c, 0xa4, 0x65, 0x8f, 0x6c, 0xce, 0x73, 0x82, 0x44, + 0xd9, 0xfc, 0x37, 0xc7, 0xae, 0x31, 0xf9, 0x71, 0x62, 0xf3, 0x01, 0xde, 0x91, 0xc8, 0x06, 0x38, + 0x83, 0xd9, 0xe3, 0xf5, 0xde, 0x91, 0xa4, 0xe7, 0x4e, 0x91, 0x74, 0x82, 0x5c, 0x78, 0xde, 0xec, + 0xec, 0xf4, 0x25, 0x2c, 0x82, 0x73, 0x14, 0x8b, 0x48, 0xb0, 0xf3, 0xa7, 0x38, 0xe3, 0xb7, 0x26, + 0xaf, 0x31, 0xf9, 0x09, 0x72, 0x9f, 0x39, 0x64, 0x15, 0x09, 0x64, 0x06, 0x17, 0xa2, 0x83, 0xd0, + 0x7f, 0x24, 0xd2, 0xc5, 0x53, 0x44, 0x9a, 0xb4, 0xe0, 0xae, 0xfd, 0x80, 0x4c, 0x01, 0x7d, 0xa1, + 0xaa, 0xe0, 0xc2, 0x00, 0x9b, 0x48, 0xac, 0x85, 0x93, 0xc5, 0xfa, 0xb5, 0xbf, 0x89, 0xf5, 0x35, + 0x69, 0x9d, 0x8d, 0xb3, 0x1b, 0x30, 0x6e, 0x74, 0xf5, 0x78, 0xa7, 0xd9, 0x8a, 0x1b, 0xf7, 0xb4, + 0x27, 0xc0, 0x92, 0xc4, 0xb8, 0x61, 0xa0, 0x2d, 0x36, 0x5b, 0xc7, 0x8c, 0x7b, 0x9c, 0x67, 0x24, + 0xec, 0xe5, 0xd3, 0x06, 0x74, 0xe2, 0x1a, 0x93, 0x4f, 0x12, 0xe3, 0x0e, 0xf0, 0x1e, 0x18, 0xd0, + 0x11, 0xfb, 0x23, 0x69, 0xaf, 0x9e, 0x22, 0xed, 0x14, 0x19, 0xd0, 0x21, 0xc7, 0xbe, 0xa4, 0x9b, + 0xc1, 0x10, 0xa4, 0x58, 0x45, 0x42, 0x2e, 0x11, 0x21, 0x17, 0x3f, 0x38, 0x64, 0xc6, 0x45, 0x41, + 0x55, 0xb4, 0xe3, 0x52, 0x4e, 0x91, 0x91, 0x1d, 0xe3, 0x19, 0x49, 0x58, 0x09, 0xd8, 0xee, 0x45, + 0x33, 0x77, 0x3c, 0xea, 0xbc, 0x7c, 0x8a, 0x90, 0x80, 0x30, 0xec, 0x4f, 0xf8, 0xf1, 0xd9, 0xe6, + 0xf2, 0x30, 0x86, 0x91, 0xa8, 0x9f, 0x22, 0xa2, 0xce, 0x50, 0x03, 0x1a, 0x58, 0x0b, 0xc7, 0x78, + 0x45, 0xf2, 0xdd, 0x02, 0x57, 0x68, 0x76, 0xe4, 0xa9, 0xa7, 0x23, 0x45, 0xbe, 0x72, 0x8a, 0x8c, + 0xd3, 0x34, 0x5f, 0xbc, 0x2a, 0xeb, 0xab, 0xf3, 0x07, 0xc1, 0x73, 0x27, 0xf1, 0x8d, 0x44, 0x5d, + 0x3e, 0x75, 0xe6, 0x99, 0xb6, 0x2e, 0x0f, 0x63, 0x1e, 0xc9, 0x7d, 0x27, 0x70, 0xac, 0x23, 0xfe, + 0x83, 0xc1, 0x28, 0x73, 0x8a, 0xe0, 0x33, 0xc4, 0xa7, 0xfa, 0xbc, 0xe9, 0x78, 0x84, 0x40, 0xea, + 0x44, 0xce, 0x91, 0xe8, 0xaf, 0x12, 0xd1, 0x2f, 0x07, 0x21, 0xe9, 0xe8, 0xe9, 0x05, 0xb0, 0x9c, + 0x5c, 0x78, 0xf8, 0x30, 0xf0, 0x88, 0x19, 0xeb, 0xca, 0xd0, 0x36, 0xc2, 0x0e, 0xdc, 0xf8, 0x83, + 0xcc, 0xaf, 0x1c, 0x32, 0xef, 0x32, 0xe0, 0x32, 0x60, 0x83, 0xd9, 0x2a, 0x75, 0x94, 0xa1, 0x74, + 0xd9, 0x71, 0x3e, 0x23, 0x65, 0x54, 0xb0, 0x04, 0xd8, 0x20, 0xac, 0x51, 0x85, 0x49, 0x9e, 0xcb, + 0xf0, 0x62, 0x86, 0x57, 0xc0, 0xf3, 0xe0, 0x7c, 0xbf, 0x05, 0x9a, 0x44, 0x54, 0x33, 0x12, 0x97, + 0x91, 0x44, 0x90, 0x02, 0x67, 0x2a, 0xbd, 0x7b, 0x03, 0xc5, 0xd3, 0x82, 0x90, 0xe1, 0xf5, 0x8c, + 0x20, 0x67, 0x04, 0x2d, 0xbb, 0x0c, 0x2e, 0x1e, 0xcb, 0x5f, 0x4e, 0xda, 0x7a, 0x7b, 0x95, 0x9a, + 0xf4, 0xfb, 0x13, 0x4b, 0x8c, 0x7c, 0x3c, 0xdc, 0x89, 0x1b, 0x93, 0xc9, 0x53, 0x8d, 0x57, 0x86, + 0xcf, 0xe7, 0xb1, 0x0a, 0x49, 0x9c, 0x2b, 0xe3, 0x0a, 0x5a, 0x46, 0xcf, 0x66, 0x02, 0x59, 0xa8, + 0x69, 0x35, 0xb6, 0xcd, 0x37, 0xfd, 0xe4, 0x90, 0x01, 0xd1, 0xc3, 0x8e, 0x42, 0xf6, 0x3a, 0x35, + 0x1d, 0x0d, 0x4a, 0x83, 0x2b, 0xcc, 0x3d, 0x39, 0x64, 0x66, 0x49, 0x05, 0x29, 0xc3, 0xcb, 0x59, + 0x3e, 0x90, 0xe7, 0xf8, 0x5c, 0x13, 0xab, 0x12, 0xbd, 0x37, 0x39, 0x4e, 0xde, 0x9b, 0xcc, 0x5e, + 0x0b, 0xc2, 0x75, 0x3f, 0xf8, 0xc7, 0x28, 0xcf, 0x3d, 0x39, 0x64, 0xce, 0x62, 0x4a, 0x81, 0xcb, + 0x08, 0x7c, 0x76, 0x39, 0x08, 0x46, 0xb1, 0x88, 0x1c, 0xa3, 0xbd, 0xf8, 0xe4, 0x90, 0xb9, 0x40, + 0x68, 0xc5, 0x8c, 0x20, 0x45, 0x82, 0x1c, 0x8f, 0x8b, 0xb1, 0x2a, 0xd1, 0x83, 0x61, 0xe3, 0x82, + 0x92, 0x11, 0xd4, 0x48, 0x35, 0x54, 0x80, 0x8a, 0x51, 0x5f, 0x7d, 0x72, 0xc8, 0x5c, 0x21, 0xd4, + 0x7a, 0x46, 0xe4, 0x22, 0xd5, 0x0c, 0x86, 0x89, 0x58, 0x85, 0x97, 0x9f, 0x1c, 0x32, 0x2f, 0x91, + 0x93, 0x1b, 0x2d, 0x23, 0xea, 0x59, 0x11, 0x2c, 0x9d, 0x34, 0x60, 0x63, 0x95, 0x5e, 0x79, 0x72, + 0xc8, 0x5c, 0xc3, 0x95, 0x24, 0x3e, 0x23, 0x09, 0x59, 0x69, 0x70, 0x94, 0x0f, 0x57, 0x69, 0xe6, + 0xc9, 0x21, 0xf3, 0x69, 0x52, 0x4b, 0xca, 0x48, 0x72, 0x7c, 0x77, 0x36, 0x58, 0x1d, 0x6d, 0x24, + 0x92, 0x00, 0x4e, 0x6f, 0x24, 0x92, 0xb3, 0x70, 0xae, 0xff, 0x2a, 0xe7, 0x59, 0x78, 0x6e, 0x23, + 0x91, 0xbc, 0x00, 0x2f, 0xf6, 0x1f, 0x35, 0xbb, 0x02, 0xaf, 0x6e, 0x24, 0x92, 0xcf, 0xc1, 0xd4, + 0x46, 0x22, 0x99, 0x82, 0xcf, 0x07, 0x0f, 0x9c, 0x6d, 0x24, 0x92, 0x69, 0xf8, 0xc2, 0x46, 0x22, + 0xf9, 0x02, 0x7c, 0x71, 0x23, 0x91, 0x7c, 0x11, 0xbe, 0xb4, 0x91, 0x48, 0xbe, 0x04, 0x5f, 0xde, + 0x48, 0x24, 0xaf, 0xc1, 0x57, 0x36, 0x12, 0xc9, 0x4f, 0xc3, 0x4c, 0xfa, 0x2f, 0x32, 0x20, 0x6d, + 0xb8, 0xbd, 0xe6, 0xdb, 0xc8, 0x6c, 0xdd, 0x23, 0xaf, 0x86, 0x46, 0x0f, 0xf7, 0x56, 0xf1, 0xb2, + 0xa2, 0x89, 0x82, 0xf7, 0x58, 0xbe, 0xcc, 0x80, 0x45, 0x14, 0x12, 0x1c, 0x3d, 0x81, 0xba, 0x17, + 0x92, 0x84, 0x0b, 0xb4, 0xc1, 0x95, 0x72, 0xb0, 0x74, 0xa5, 0x4f, 0x1f, 0xb8, 0xf7, 0xde, 0x59, + 0x38, 0x81, 0xd1, 0xc1, 0x90, 0xd7, 0xba, 0x93, 0x8c, 0xd5, 0x27, 0x1f, 0x14, 0x2c, 0xfd, 0x87, + 0x19, 0x70, 0x29, 0x90, 0xbd, 0x86, 0x3a, 0x6f, 0x37, 0x5d, 0x44, 0x89, 0xdc, 0x03, 0xb0, 0x1b, + 0xa0, 0x3f, 0x8e, 0x9c, 0x2f, 0xbd, 0xf7, 0xce, 0x1c, 0x55, 0xfd, 0x60, 0xe8, 0x26, 0xd2, 0x7c, + 0x97, 0x6e, 0x39, 0xfd, 0x73, 0x0c, 0x58, 0x0a, 0x64, 0x5a, 0x6b, 0x77, 0xee, 0xdb, 0x1d, 0xaf, + 0xda, 0x69, 0x3f, 0x38, 0xa0, 0x04, 0xfb, 0x71, 0x06, 0x5c, 0xf0, 0x83, 0xc2, 0xc6, 0x1e, 0x2e, + 0xfd, 0x38, 0xf2, 0x65, 0xde, 0x7b, 0xe7, 0xdc, 0x10, 0x26, 0x27, 0xe8, 0x30, 0x22, 0xa5, 0x84, + 0x49, 0xff, 0xf9, 0x71, 0x70, 0xae, 0x86, 0xdc, 0xfd, 0x4e, 0xb3, 0x47, 0x4b, 0xf8, 0x06, 0x80, + 0xad, 0x76, 0x83, 0x62, 0xff, 0x94, 0xd5, 0xdf, 0x5c, 0xab, 0x1d, 0xef, 0x2f, 0x7b, 0x00, 0xae, + 0xda, 0x44, 0x0b, 0x8d, 0x13, 0x7a, 0x1a, 0xec, 0x82, 0x49, 0x27, 0xec, 0x8b, 0x9c, 0xaa, 0xc0, + 0xfc, 0x88, 0xb5, 0x68, 0x9f, 0x48, 0xc1, 0xfe, 0x29, 0x06, 0x5c, 0x0c, 0xdb, 0x3e, 0x66, 0xff, + 0xe4, 0x69, 0xbb, 0x20, 0x27, 0xba, 0x52, 0xf6, 0x33, 0xef, 0x3d, 0x62, 0x54, 0x56, 0xa6, 0x6b, + 0xed, 0xb7, 0x9a, 0x7e, 0x13, 0x79, 0xa1, 0xde, 0x83, 0xd3, 0xcc, 0x95, 0x42, 0xab, 0x87, 0x3a, + 0x2d, 0xd4, 0x23, 0xd5, 0x0f, 0x42, 0x69, 0xcf, 0xdb, 0xc3, 0x38, 0xb3, 0xab, 0x80, 0xc5, 0x5a, + 0xa6, 0xc7, 0xc0, 0x53, 0x16, 0xb2, 0xb0, 0xd5, 0xa6, 0x86, 0xc1, 0x01, 0xfb, 0x63, 0x0c, 0x78, + 0x3e, 0xec, 0xee, 0x29, 0x03, 0x34, 0xd8, 0xf4, 0xd5, 0x4e, 0xeb, 0xf8, 0x69, 0xe3, 0x3f, 0xcf, + 0x58, 0x4b, 0xf6, 0xa9, 0x54, 0xd9, 0x57, 0xc0, 0x80, 0x3f, 0xc6, 0xa2, 0x5c, 0x34, 0x51, 0x8e, + 0x0b, 0x19, 0x31, 0xa3, 0x65, 0x5f, 0x01, 0x17, 0x06, 0x7a, 0x7d, 0xd2, 0x34, 0x19, 0xdf, 0x28, + 0x0a, 0x0f, 0xad, 0xfe, 0xea, 0x18, 0x38, 0x53, 0x43, 0xdb, 0xbb, 0xa8, 0x15, 0x53, 0x32, 0x7b, + 0x1d, 0x4c, 0x76, 0x3b, 0x6e, 0xc3, 0x6e, 0x3d, 0xcd, 0x51, 0x27, 0xba, 0x1d, 0xd7, 0x68, 0x1d, + 0xb0, 0x79, 0x30, 0x83, 0x2b, 0x74, 0x03, 0x4e, 0x91, 0x3f, 0xbe, 0x30, 0x74, 0xe4, 0x85, 0xcd, + 0x59, 0xc8, 0x27, 0x9b, 0x7d, 0x23, 0xd6, 0x74, 0xb7, 0xe3, 0x86, 0xc8, 0x2e, 0x6e, 0xda, 0xeb, + 0xf6, 0x48, 0xd3, 0xa7, 0xdb, 0x6e, 0xc2, 0xeb, 0xf6, 0x70, 0xd3, 0x9f, 0x01, 0xb3, 0xcd, 0x56, + 0xaf, 0x63, 0x47, 0x8d, 0x9f, 0xba, 0x23, 0xcf, 0x58, 0x33, 0x84, 0x38, 0x6c, 0x0e, 0xcb, 0x8d, + 0x5b, 0xeb, 0xcb, 0x3d, 0xf9, 0xec, 0x72, 0x33, 0xd6, 0xb4, 0xd7, 0xed, 0x45, 0x72, 0x67, 0x5f, + 0x02, 0x6c, 0x4c, 0x03, 0x27, 0xe6, 0x35, 0x55, 0xc0, 0xc6, 0x1a, 0x8c, 0xc8, 0x6e, 0xc4, 0x0c, + 0x35, 0x2e, 0x67, 0x94, 0x8c, 0xfa, 0xc5, 0x47, 0xcc, 0x4b, 0xe0, 0x2c, 0x1d, 0x32, 0x1b, 0x9d, + 0xfd, 0x1d, 0x04, 0x06, 0xe2, 0x68, 0x7c, 0x92, 0x5b, 0xfe, 0xfd, 0x60, 0x36, 0xb0, 0x62, 0x2d, + 0x38, 0x43, 0x60, 0xcf, 0x01, 0x58, 0x36, 0xeb, 0xb7, 0x2b, 0xd6, 0xcd, 0x46, 0xcd, 0xcc, 0x6d, + 0x5a, 0x85, 0xfa, 0x16, 0x1c, 0x61, 0xcf, 0x80, 0x59, 0xcb, 0xa8, 0x9b, 0x8d, 0x62, 0xa1, 0x54, + 0xa8, 0x17, 0xca, 0xeb, 0x90, 0x61, 0x17, 0xc0, 0xb9, 0x6a, 0xa5, 0x58, 0xc8, 0x6d, 0x35, 0xb2, + 0x46, 0xcd, 0x5c, 0x6d, 0x58, 0x95, 0x4d, 0x52, 0x32, 0x8a, 0x89, 0x6f, 0x1b, 0x6b, 0x0d, 0xf3, + 0x4e, 0xae, 0xb8, 0x59, 0x2b, 0x54, 0xca, 0x70, 0x0c, 0x13, 0xd7, 0xf2, 0x46, 0xd5, 0x6c, 0x64, + 0x2b, 0xf5, 0x46, 0xd5, 0xaa, 0xd4, 0xcd, 0x5c, 0x1d, 0x97, 0x24, 0x96, 0x6b, 0x60, 0xae, 0x2f, + 0x40, 0xcd, 0x6d, 0x93, 0x4f, 0xe3, 0x17, 0x43, 0xc6, 0x35, 0xb3, 0xde, 0xa8, 0xe5, 0x2a, 0x55, + 0xb3, 0x51, 0x36, 0x4a, 0x66, 0xad, 0x6a, 0xe4, 0x4c, 0x38, 0xc2, 0x3e, 0x0f, 0xae, 0x1e, 0x2b, + 0xbf, 0x55, 0xb0, 0xea, 0x9b, 0x46, 0xb1, 0x91, 0xaf, 0xd4, 0xea, 0x90, 0x59, 0xbe, 0x03, 0x2e, + 0x58, 0xfb, 0x3b, 0x28, 0xd7, 0xde, 0x75, 0x9a, 0xad, 0x66, 0x6b, 0xdb, 0xd8, 0xd9, 0x6e, 0x77, + 0x9a, 0xbd, 0x7b, 0xbb, 0xec, 0x3c, 0x98, 0x5e, 0x2b, 0x58, 0xb5, 0x7a, 0xa3, 0x64, 0xd4, 0x73, + 0x79, 0x38, 0xc2, 0xb2, 0x60, 0x6e, 0xd5, 0x2c, 0x6f, 0x35, 0x2a, 0xb7, 0x4c, 0xcb, 0x2a, 0xac, + 0x9a, 0x35, 0xc8, 0xb0, 0x67, 0xc1, 0xbc, 0x51, 0x2c, 0x56, 0x6e, 0xc7, 0x90, 0xa3, 0x8b, 0x89, + 0xc7, 0x87, 0xcc, 0xc8, 0xf2, 0x63, 0x06, 0x4c, 0xc7, 0x6e, 0x3f, 0xb0, 0x8b, 0x00, 0xd6, 0x2d, + 0xa3, 0x5c, 0x5b, 0xab, 0x58, 0x25, 0xd3, 0x6a, 0x94, 0x2b, 0x65, 0x13, 0x8e, 0x10, 0x5a, 0x86, + 0x9d, 0x03, 0xa0, 0x58, 0xb9, 0x6d, 0x5a, 0x8d, 0x9c, 0x51, 0x33, 0x21, 0x81, 0x37, 0xab, 0xd5, + 0x08, 0x26, 0x7a, 0xc2, 0xaa, 0x53, 0xa4, 0xc6, 0xaa, 0x99, 0xab, 0xac, 0x9a, 0x70, 0x0c, 0x4b, + 0x53, 0xae, 0x58, 0x25, 0xa3, 0x58, 0xb8, 0x6b, 0x36, 0xaa, 0x46, 0x3d, 0x0f, 0x13, 0xec, 0x79, + 0x70, 0xc6, 0x32, 0x4b, 0x95, 0x5b, 0x66, 0xe3, 0x76, 0xbe, 0x50, 0x0f, 0xd5, 0x30, 0x4e, 0xb8, + 0x59, 0xc5, 0xa8, 0xea, 0x04, 0x3b, 0x0b, 0xa6, 0xea, 0x56, 0xa1, 0xd4, 0x28, 0x9a, 0x6b, 0x75, + 0x38, 0x89, 0x8b, 0x09, 0x68, 0x15, 0xd6, 0xf3, 0x75, 0x98, 0x64, 0x93, 0x20, 0x81, 0x61, 0x38, + 0xb5, 0xfc, 0xcf, 0x67, 0xc1, 0xf4, 0xa6, 0x55, 0x8c, 0x4e, 0x31, 0xb0, 0x18, 0x9b, 0xe5, 0x9c, + 0x51, 0x37, 0xd7, 0x2b, 0x56, 0xe1, 0xae, 0xb9, 0x0a, 0x47, 0xb0, 0x96, 0x2c, 0xd3, 0x28, 0x36, + 0xcc, 0x5a, 0xdd, 0xa8, 0x63, 0xd1, 0xd3, 0x60, 0x29, 0x57, 0x29, 0x55, 0x37, 0xeb, 0xa6, 0xd5, + 0x30, 0xca, 0xab, 0x8d, 0x42, 0xb9, 0x6e, 0x5a, 0x65, 0xac, 0xfe, 0xc8, 0x47, 0x46, 0xd9, 0x0b, + 0x80, 0x5d, 0x2b, 0x94, 0x8d, 0x72, 0xae, 0x60, 0x14, 0x1b, 0x35, 0xd3, 0xba, 0x55, 0xc8, 0x99, + 0xb5, 0xc0, 0xf6, 0xd9, 0xcd, 0x5a, 0xa1, 0x6c, 0xd6, 0x6a, 0xa4, 0xae, 0x99, 0xab, 0x94, 0x2b, + 0xa5, 0x2d, 0x98, 0xc0, 0x96, 0x1e, 0xce, 0xb5, 0x50, 0x5e, 0xab, 0xc0, 0x71, 0x76, 0x06, 0x24, + 0x8d, 0x4d, 0xe2, 0x28, 0x35, 0x38, 0x81, 0xa1, 0x5a, 0xbe, 0x52, 0xad, 0x62, 0x27, 0x9b, 0xc4, + 0x36, 0xca, 0x6d, 0x16, 0xeb, 0xa4, 0x5e, 0x25, 0x87, 0x7f, 0xc2, 0x24, 0x0b, 0xc0, 0x44, 0xdd, + 0x32, 0x6e, 0x99, 0x45, 0x38, 0xc5, 0x42, 0x30, 0x63, 0x64, 0x37, 0xb1, 0x67, 0xae, 0x5a, 0x9b, + 0xeb, 0x35, 0x08, 0xd8, 0x4b, 0xe0, 0xbc, 0xb1, 0x1a, 0xd5, 0xa9, 0x56, 0xac, 0x72, 0x65, 0xdd, + 0x32, 0xaa, 0xf9, 0x2d, 0x38, 0x8d, 0xb9, 0xe5, 0x2b, 0x25, 0x93, 0x94, 0xac, 0x1b, 0xd6, 0xaa, + 0x59, 0x86, 0x33, 0xb8, 0xc1, 0x52, 0xa1, 0x58, 0xa8, 0x1b, 0xd6, 0x16, 0x9c, 0xc5, 0x66, 0xa8, + 0x55, 0x48, 0xdf, 0xc2, 0xf1, 0x81, 0xe5, 0x98, 0xc3, 0x7a, 0x5e, 0x35, 0x8d, 0xd5, 0x46, 0x0d, + 0x9b, 0x06, 0xce, 0xb3, 0x2f, 0x81, 0xe7, 0x0b, 0xe5, 0xd5, 0xc2, 0xad, 0xc2, 0x2a, 0xf6, 0xc7, + 0x5a, 0xbd, 0x92, 0xbb, 0xd9, 0x30, 0x56, 0xb1, 0x2e, 0x08, 0xf3, 0x7a, 0xa5, 0x52, 0xac, 0x41, + 0x88, 0x95, 0x55, 0xb7, 0x8c, 0x42, 0xb9, 0x50, 0x5e, 0x8f, 0xe1, 0xcf, 0xe0, 0x1e, 0xac, 0x1a, + 0x64, 0x1c, 0xb1, 0xd8, 0x30, 0x35, 0xf3, 0x4e, 0xc3, 0x5c, 0xdd, 0xcc, 0x19, 0x64, 0xb4, 0x9c, + 0xc5, 0x22, 0x59, 0x66, 0xb1, 0xb0, 0x8e, 0xa1, 0x73, 0xec, 0x22, 0xb8, 0x60, 0x62, 0x95, 0xd5, + 0x8d, 0x42, 0xb9, 0x64, 0x96, 0x83, 0x8e, 0x19, 0x56, 0xbd, 0x06, 0xcf, 0xb3, 0x57, 0xc0, 0x42, + 0xd5, 0xb4, 0x6a, 0x95, 0x32, 0x96, 0x02, 0xcb, 0x46, 0x0a, 0xb3, 0xc5, 0xca, 0x7a, 0x0d, 0x5e, + 0x60, 0xa7, 0xc0, 0x78, 0xd1, 0x5c, 0x37, 0x8a, 0xf0, 0x22, 0xee, 0x57, 0xb1, 0x92, 0x33, 0x8a, + 0x44, 0xe9, 0x56, 0x29, 0x68, 0x69, 0x01, 0x6b, 0xa4, 0x56, 0xb7, 0x4c, 0xa3, 0x84, 0x25, 0x2c, + 0x99, 0xab, 0x05, 0x03, 0x5e, 0xc2, 0x9d, 0xdd, 0xa8, 0x64, 0x1b, 0x35, 0xd3, 0xb0, 0x72, 0x79, + 0xb8, 0x88, 0xc5, 0x59, 0x37, 0x4a, 0xd9, 0x22, 0x96, 0xf7, 0x32, 0xf6, 0x1a, 0x32, 0x16, 0x8a, + 0x01, 0x8f, 0x2b, 0x58, 0x3e, 0xcb, 0x5c, 0x33, 0x2d, 0xb3, 0x1c, 0xf6, 0xde, 0x32, 0xc3, 0xaa, + 0x57, 0x71, 0x59, 0x2d, 0x6f, 0x58, 0xe6, 0x6d, 0xc3, 0x0a, 0xca, 0xd6, 0x2c, 0x93, 0x00, 0x70, + 0x09, 0x9b, 0xae, 0x6a, 0x9a, 0x56, 0xa3, 0x5e, 0x69, 0xe0, 0xbf, 0xf0, 0x39, 0xec, 0xdc, 0x25, + 0xc3, 0x2a, 0x6c, 0x6c, 0x1a, 0x65, 0x03, 0xa6, 0xd8, 0x69, 0x30, 0x99, 0x37, 0x72, 0xc4, 0x02, + 0xcf, 0xe3, 0xbe, 0xac, 0xe3, 0xf0, 0x00, 0xd3, 0x58, 0xf9, 0xd5, 0x7c, 0xa1, 0x58, 0xa9, 0x55, + 0xaa, 0xf9, 0xad, 0xd0, 0xcc, 0xc5, 0x42, 0xbd, 0x80, 0xbb, 0x67, 0xac, 0xde, 0xaa, 0xe4, 0x8c, + 0xdc, 0x16, 0x7c, 0x01, 0x57, 0xbf, 0x6d, 0x1a, 0x55, 0xec, 0x56, 0x2f, 0x62, 0xa9, 0xab, 0xc6, + 0x16, 0x6e, 0xab, 0xb6, 0x69, 0xad, 0xc1, 0x97, 0xd8, 0x8b, 0xe0, 0x6c, 0x7e, 0xb3, 0x5c, 0x8f, + 0x2c, 0xb3, 0x56, 0xa8, 0xe5, 0x71, 0x43, 0x2f, 0xe3, 0x6a, 0xd8, 0x03, 0xcc, 0xfa, 0x16, 0xfc, + 0x14, 0xd6, 0x6f, 0xdf, 0x30, 0x44, 0x79, 0xb5, 0x7a, 0xa1, 0xbe, 0x19, 0xf8, 0xea, 0x35, 0xec, + 0x6a, 0x95, 0x72, 0xb1, 0x50, 0x36, 0x1b, 0xeb, 0x96, 0x69, 0x12, 0x5e, 0x39, 0xc3, 0x5a, 0xad, + 0xc1, 0x57, 0xb0, 0x85, 0x6b, 0xd5, 0x0a, 0x36, 0xd2, 0x32, 0x1e, 0x56, 0xb5, 0xdb, 0x85, 0x52, + 0x6d, 0xb3, 0x50, 0xaf, 0x45, 0x23, 0xa0, 0x50, 0xc2, 0x81, 0xd6, 0xa8, 0x56, 0x0d, 0xcb, 0x2c, + 0xc2, 0x4f, 0x63, 0x65, 0xbc, 0xb9, 0x69, 0xd6, 0x48, 0x3b, 0xd9, 0xa2, 0x09, 0x33, 0x78, 0x28, + 0xdf, 0x2c, 0xac, 0xd6, 0xe0, 0xab, 0xc4, 0x6d, 0x09, 0x35, 0xd6, 0xad, 0x91, 0x2b, 0xd4, 0x4a, + 0x70, 0x05, 0x47, 0xf0, 0x23, 0xcb, 0xd7, 0x2b, 0x96, 0xb1, 0x6e, 0xc2, 0xeb, 0xd8, 0x54, 0xb7, + 0x0a, 0x95, 0x22, 0x36, 0x05, 0xe4, 0xd8, 0xab, 0xe0, 0xd2, 0x4d, 0x73, 0xab, 0x58, 0x59, 0x5f, + 0x37, 0xad, 0xa0, 0xe5, 0x52, 0xa5, 0x5c, 0xa8, 0x57, 0x2c, 0xdc, 0x53, 0x1e, 0x87, 0xa1, 0xc0, + 0x50, 0x0d, 0xb3, 0xbc, 0x8e, 0x47, 0x2e, 0x14, 0x30, 0xdb, 0xfe, 0xf8, 0xc4, 0xf2, 0x1b, 0xc5, + 0x1a, 0x14, 0xb1, 0x1f, 0xdf, 0x36, 0xb3, 0x58, 0xb9, 0xa6, 0x55, 0x2f, 0xd4, 0x4c, 0xec, 0x86, + 0x35, 0x28, 0xe1, 0xe6, 0x72, 0x79, 0x33, 0xf0, 0x64, 0x99, 0x98, 0xc8, 0xaa, 0xd4, 0x6a, 0x50, + 0xc1, 0x22, 0xe3, 0x0a, 0xc1, 0x9c, 0x61, 0x96, 0x8c, 0x42, 0x11, 0xaa, 0xd8, 0xd3, 0x4b, 0x46, + 0x91, 0xb8, 0x42, 0x30, 0x8e, 0x34, 0x2c, 0x61, 0x35, 0x1f, 0xa8, 0x3e, 0x18, 0xe3, 0xf5, 0xbc, + 0x69, 0x35, 0xd6, 0x2c, 0x63, 0x73, 0xb5, 0x06, 0x75, 0xf6, 0x05, 0xf0, 0x5c, 0xd5, 0xaa, 0xdc, + 0xd9, 0x6a, 0x18, 0xb7, 0x2a, 0x85, 0x55, 0x23, 0x72, 0x30, 0xa3, 0x5c, 0x29, 0x6f, 0x95, 0x0a, + 0x77, 0x4d, 0xab, 0x06, 0x6f, 0x60, 0xe1, 0x6a, 0xd5, 0xad, 0xbe, 0x87, 0x19, 0xab, 0xc4, 0xbf, + 0x3e, 0x83, 0xc5, 0x29, 0x6d, 0xd6, 0x0a, 0x39, 0xf8, 0x7d, 0xd8, 0xa3, 0xd7, 0x71, 0x94, 0x27, + 0xe3, 0x07, 0x7e, 0x16, 0x5b, 0xa7, 0xbc, 0xb9, 0x8a, 0x03, 0xda, 0x6b, 0x24, 0x18, 0x9b, 0xb7, + 0x43, 0xf5, 0x90, 0x11, 0xf0, 0x3a, 0xf6, 0x81, 0x42, 0x31, 0x18, 0x3a, 0x6f, 0x60, 0x19, 0x73, + 0x95, 0x72, 0x1d, 0x8f, 0xbc, 0x55, 0xb3, 0x58, 0xb8, 0x65, 0x5a, 0x5b, 0x51, 0x70, 0xa8, 0x41, + 0x83, 0xbd, 0x0c, 0x2e, 0xf6, 0x35, 0x96, 0xab, 0x94, 0x4a, 0x9b, 0xe5, 0x42, 0xe0, 0x2f, 0x35, + 0x98, 0xc5, 0x0a, 0xc2, 0x73, 0x61, 0xd9, 0xac, 0xd7, 0x60, 0x8e, 0x44, 0xba, 0x6c, 0xc5, 0x22, + 0xe3, 0x66, 0x95, 0x78, 0xa0, 0x69, 0x14, 0xeb, 0xf9, 0x7e, 0xd3, 0xb9, 0x42, 0xd9, 0x84, 0x26, + 0x1e, 0x34, 0xb9, 0x4a, 0x79, 0xad, 0x60, 0x95, 0xcc, 0xd5, 0x46, 0xad, 0x6a, 0x94, 0x1a, 0xb5, + 0xca, 0xa6, 0x85, 0xc3, 0xec, 0x1a, 0x1e, 0x22, 0x04, 0xb3, 0x69, 0x15, 0x6b, 0x70, 0x1d, 0xfb, + 0xe7, 0x66, 0xf9, 0x04, 0xe2, 0x3c, 0x1e, 0xf4, 0x95, 0xaa, 0x59, 0x6e, 0xe4, 0xeb, 0xf5, 0x2a, + 0x9e, 0x8f, 0xef, 0x14, 0xcc, 0x1a, 0x2c, 0xe0, 0xa9, 0x75, 0x75, 0xab, 0x6c, 0x94, 0xf0, 0x80, + 0x29, 0x6e, 0x35, 0xd6, 0xcd, 0xb2, 0x89, 0xa7, 0xfd, 0xd5, 0x46, 0xd8, 0x4d, 0xb8, 0x81, 0x95, + 0x52, 0x35, 0xac, 0x9b, 0x38, 0xac, 0x56, 0x4a, 0x46, 0xa1, 0x5c, 0x83, 0x37, 0xb1, 0xbc, 0x46, + 0x31, 0x57, 0xc9, 0x57, 0x8a, 0x61, 0x2c, 0xcb, 0x1a, 0xb9, 0x5c, 0x05, 0x16, 0x49, 0x8e, 0x60, + 0x15, 0x6e, 0x61, 0x17, 0x2d, 0x54, 0x1b, 0xc6, 0xea, 0xaa, 0x65, 0xd6, 0x6a, 0x66, 0x0d, 0x96, + 0x70, 0x4f, 0x0a, 0x25, 0x63, 0x3d, 0x30, 0xcc, 0xad, 0xc2, 0xaa, 0x59, 0x89, 0xa2, 0x4a, 0x99, + 0x4c, 0x24, 0x46, 0x2d, 0x5f, 0xa8, 0x94, 0x83, 0x98, 0x65, 0x1a, 0x9b, 0xf5, 0x2d, 0x58, 0x09, + 0xc2, 0x49, 0xce, 0x32, 0x89, 0x0e, 0x49, 0x51, 0xbe, 0x92, 0xcd, 0x62, 0xc9, 0xab, 0x58, 0xac, + 0x52, 0xa5, 0x5e, 0xb1, 0x1a, 0xb7, 0xcc, 0x7c, 0x21, 0x57, 0x34, 0x6b, 0xf0, 0x4d, 0x3c, 0xb2, + 0xb1, 0xab, 0xe1, 0x9c, 0x00, 0xbb, 0xa1, 0x15, 0x4e, 0xe1, 0x7f, 0x8f, 0x01, 0x70, 0xf0, 0x98, + 0x1f, 0x8f, 0x32, 0x4a, 0x45, 0x23, 0xd8, 0xdf, 0x6f, 0x17, 0xca, 0xab, 0x95, 0xdb, 0xb5, 0x86, + 0x79, 0xa7, 0x5a, 0xac, 0x14, 0xea, 0x38, 0x35, 0x08, 0x79, 0x1a, 0xf5, 0xba, 0x91, 0xbb, 0x59, + 0x83, 0xa3, 0xd8, 0x21, 0xb2, 0x95, 0x3a, 0x31, 0xe3, 0x18, 0x99, 0xa2, 0x72, 0x46, 0xb9, 0x8c, + 0xdd, 0x2f, 0x81, 0x7d, 0xcb, 0x32, 0xab, 0x9b, 0xf5, 0x20, 0x1c, 0x92, 0xe9, 0x2c, 0x72, 0x69, + 0x38, 0x81, 0x9d, 0x90, 0x78, 0x30, 0x9c, 0x0c, 0x84, 0xcf, 0x16, 0x8a, 0x66, 0xa3, 0x9e, 0xc7, + 0xdd, 0xab, 0xc1, 0x24, 0x99, 0xce, 0x2b, 0x56, 0x23, 0x20, 0x99, 0xc2, 0x06, 0x5b, 0x35, 0xcb, + 0x78, 0xf6, 0xa9, 0xac, 0x45, 0x93, 0x2b, 0x04, 0xb8, 0xf5, 0xd0, 0xe1, 0xe0, 0x74, 0xd8, 0xbd, + 0xbf, 0xc5, 0x00, 0x38, 0xf8, 0x1f, 0xad, 0xb1, 0xd8, 0xc4, 0x84, 0x77, 0xf0, 0x1c, 0x81, 0x13, + 0x3a, 0x08, 0x66, 0x22, 0x44, 0xb6, 0xb2, 0xba, 0x15, 0x24, 0x3d, 0x11, 0xc6, 0x32, 0x49, 0xc4, + 0x81, 0xa3, 0xec, 0x25, 0x00, 0x8f, 0x90, 0x35, 0x1c, 0x31, 0x4d, 0x38, 0xb6, 0x38, 0xf6, 0xf0, + 0x1d, 0x06, 0x4b, 0x14, 0x15, 0x55, 0x0d, 0xcb, 0x28, 0x99, 0x75, 0xd3, 0x82, 0x09, 0xdc, 0x97, + 0x08, 0x9d, 0x37, 0x8d, 0x55, 0xd3, 0x82, 0xe3, 0x71, 0x5c, 0xae, 0x52, 0xb9, 0x59, 0xc0, 0xe9, + 0x4a, 0x4c, 0xa2, 0x4d, 0xab, 0x08, 0x27, 0xd9, 0x73, 0x71, 0x44, 0x01, 0x26, 0x49, 0x2b, 0x8b, + 0x49, 0xdc, 0xa7, 0x6f, 0x1d, 0x32, 0xcc, 0xf2, 0x3f, 0x65, 0xc0, 0xc2, 0x49, 0xaf, 0x21, 0xb2, + 0x57, 0xc1, 0xb9, 0x7a, 0xb1, 0xd6, 0x58, 0x2b, 0x94, 0xd7, 0x4d, 0xab, 0x6a, 0x15, 0xca, 0xf5, + 0x28, 0x15, 0x23, 0xb2, 0x5e, 0x05, 0x97, 0x8c, 0xf2, 0x56, 0x03, 0xe7, 0x55, 0xb9, 0x42, 0x65, + 0x93, 0x22, 0x84, 0x0c, 0x1e, 0xf4, 0x61, 0x6c, 0x18, 0x0d, 0x7f, 0x17, 0xca, 0xab, 0x70, 0x8c, + 0x4c, 0xc6, 0x38, 0xfd, 0xbb, 0x03, 0x13, 0x58, 0xd3, 0xeb, 0x95, 0x4a, 0xfd, 0x66, 0xa1, 0x0e, + 0xc7, 0x71, 0x04, 0x5e, 0xaf, 0xdc, 0x2d, 0x04, 0x49, 0xc9, 0x46, 0xb6, 0xb0, 0x66, 0xe1, 0xbc, + 0x73, 0x12, 0x13, 0xbd, 0xb9, 0x69, 0xdc, 0xcc, 0x56, 0x70, 0x32, 0x82, 0xcd, 0x6f, 0x94, 0x6b, + 0x95, 0x12, 0xe1, 0x3c, 0x85, 0x49, 0xeb, 0x56, 0xa5, 0xb8, 0x6a, 0xd6, 0xf2, 0x10, 0x90, 0x54, + 0xa5, 0xb2, 0x56, 0x33, 0x4d, 0x38, 0x8d, 0xc3, 0x5f, 0xbd, 0x62, 0x59, 0x66, 0xb9, 0x5e, 0xac, + 0xe4, 0x6e, 0x9a, 0x56, 0x90, 0x7b, 0xd4, 0xad, 0x42, 0x8e, 0xb0, 0x9a, 0x5d, 0xfe, 0xca, 0xf3, + 0x60, 0x3a, 0xf6, 0xa5, 0x1a, 0xfb, 0x19, 0x6c, 0xbd, 0xcd, 0x72, 0x1d, 0xc7, 0x9b, 0xa0, 0x9b, + 0xaf, 0xbc, 0x7f, 0xc8, 0xbc, 0x34, 0xe4, 0x7b, 0xb3, 0x33, 0xf7, 0x7a, 0xbd, 0x3d, 0x0a, 0x85, + 0xe5, 0x8a, 0x2a, 0x1b, 0xab, 0x41, 0x5a, 0xda, 0x87, 0xb1, 0x06, 0xe2, 0xf0, 0x1a, 0x1c, 0xa3, + 0xe0, 0xf5, 0xc0, 0xad, 0xfb, 0x70, 0x21, 0x48, 0x44, 0xfb, 0x70, 0x11, 0x4e, 0x50, 0x70, 0x29, + 0xc8, 0x44, 0xfb, 0x70, 0x39, 0xd0, 0x4b, 0x1f, 0xae, 0xc0, 0x29, 0x0a, 0x7e, 0x13, 0x02, 0x0a, + 0xb6, 0xe0, 0x34, 0x05, 0xd7, 0xe0, 0x0c, 0x05, 0xd7, 0xe1, 0x2c, 0x05, 0x6f, 0x06, 0x19, 0x59, + 0x1f, 0xbe, 0x0d, 0xe7, 0x29, 0xf8, 0x0e, 0x84, 0x14, 0x7c, 0x17, 0x9e, 0x89, 0xc3, 0x59, 0x03, + 0xb2, 0x14, 0x9c, 0x85, 0x67, 0x29, 0x78, 0x15, 0x9e, 0xa3, 0x60, 0x13, 0x9e, 0xa7, 0xe0, 0x35, + 0x78, 0x81, 0x82, 0xd7, 0xe1, 0x45, 0x0a, 0xce, 0xc3, 0x05, 0x0a, 0x2e, 0x04, 0x49, 0x55, 0x1f, + 0xde, 0x80, 0x8b, 0x14, 0x5c, 0x84, 0x97, 0x29, 0xb8, 0x04, 0xaf, 0x50, 0x70, 0x19, 0x5e, 0xa5, + 0xe0, 0x0a, 0x5c, 0xa2, 0xe0, 0x37, 0xe1, 0x73, 0x14, 0x6c, 0xc1, 0x14, 0x05, 0xd7, 0xe0, 0xf3, + 0x14, 0x5c, 0x87, 0x69, 0x0a, 0xbe, 0x05, 0x5f, 0xa0, 0xe0, 0xdb, 0xf0, 0x45, 0x0a, 0xde, 0x82, + 0x2f, 0x51, 0xf0, 0x5d, 0xf8, 0x72, 0x1c, 0xce, 0x19, 0xf0, 0x53, 0x14, 0x9c, 0x83, 0xd7, 0x28, + 0x78, 0x15, 0xbe, 0x42, 0xc1, 0x6b, 0x70, 0x99, 0x82, 0xd7, 0xe1, 0xa7, 0x29, 0x38, 0x0f, 0x33, + 0x14, 0x5c, 0x80, 0xaf, 0x52, 0xf0, 0x4d, 0xb8, 0x42, 0xc1, 0x45, 0x78, 0x9d, 0x82, 0x4b, 0x90, + 0xa3, 0xe0, 0x32, 0xe4, 0x29, 0xb8, 0x02, 0x05, 0x0a, 0xb6, 0xa0, 0x48, 0xc1, 0x38, 0xb5, 0x89, + 0xc3, 0x9b, 0x50, 0xa6, 0xe0, 0x5b, 0x50, 0xa1, 0xe0, 0xdb, 0x50, 0xa5, 0xe0, 0x3b, 0x50, 0xa3, + 0xe0, 0x2d, 0xa8, 0x53, 0xf0, 0x5d, 0x78, 0x23, 0x0e, 0xaf, 0xe2, 0x6c, 0x25, 0x0e, 0x6f, 0x04, + 0x29, 0x4b, 0x1f, 0xbe, 0x09, 0x3f, 0x4b, 0xc1, 0x25, 0xf8, 0x1a, 0x05, 0x57, 0xe0, 0xeb, 0x14, + 0x7c, 0x17, 0xbe, 0x11, 0x87, 0xcd, 0x1c, 0x34, 0x28, 0xd8, 0x84, 0x59, 0x0a, 0x5e, 0x87, 0x39, + 0x0a, 0xce, 0xc3, 0x55, 0x0a, 0xb6, 0xa0, 0x49, 0xc1, 0x38, 0x11, 0x89, 0xc3, 0x75, 0xb8, 0x1e, + 0x87, 0xd7, 0x0a, 0x30, 0x4f, 0xc1, 0x1b, 0xb0, 0x40, 0xc1, 0x37, 0xe1, 0x06, 0x05, 0x97, 0xe0, + 0x4d, 0x0a, 0xc6, 0x49, 0x45, 0x1c, 0xb6, 0x60, 0x29, 0x0e, 0xaf, 0x1b, 0xb0, 0x4c, 0xc1, 0x59, + 0x58, 0xa1, 0xe0, 0x55, 0x58, 0xa5, 0x60, 0x13, 0xbe, 0x49, 0xc1, 0x6b, 0xd0, 0xa2, 0xe0, 0x75, + 0x58, 0xa3, 0xe0, 0x3c, 0xac, 0x53, 0x70, 0x01, 0x6e, 0x52, 0x70, 0x11, 0xde, 0xa2, 0xe0, 0x12, + 0xbc, 0x4d, 0xc1, 0x65, 0x78, 0x87, 0x82, 0xab, 0x70, 0x8b, 0x82, 0xdf, 0x84, 0x77, 0x29, 0xd8, + 0x82, 0xdf, 0x4f, 0xc1, 0x35, 0xf8, 0x03, 0x14, 0x5c, 0x87, 0x9f, 0xa3, 0xe0, 0x4d, 0xf8, 0x83, + 0x14, 0x7c, 0x1b, 0x36, 0x28, 0x78, 0x0b, 0xfe, 0x50, 0x1c, 0xce, 0xdf, 0x84, 0x36, 0x05, 0x97, + 0xa0, 0x43, 0xc1, 0x65, 0xe8, 0x52, 0xb0, 0x05, 0x3d, 0x0a, 0xae, 0x43, 0x44, 0xc1, 0x9b, 0xd0, + 0x8f, 0xc3, 0x85, 0x55, 0xb8, 0x4d, 0xc1, 0x26, 0xbc, 0x47, 0xc1, 0x45, 0xd8, 0xa4, 0xe0, 0x12, + 0xfc, 0x3c, 0x05, 0x97, 0xe1, 0x5b, 0x14, 0x5c, 0x81, 0x3b, 0x14, 0xfc, 0x26, 0xdc, 0xa5, 0x60, + 0x0b, 0xb6, 0x28, 0xb8, 0x06, 0xdb, 0x14, 0x5c, 0x87, 0x7b, 0x71, 0x78, 0xc3, 0x84, 0x5f, 0xa0, + 0xe0, 0x12, 0xa4, 0xe6, 0xc7, 0x8d, 0x0a, 0xec, 0x52, 0x70, 0x15, 0xf6, 0xe2, 0xf0, 0x4d, 0x13, + 0xee, 0x53, 0xf0, 0x3a, 0x7c, 0x9b, 0x82, 0xf3, 0xf0, 0x3e, 0x05, 0x17, 0xe0, 0x03, 0x0a, 0x2e, + 0xc1, 0x03, 0x0a, 0x2e, 0xc3, 0x1f, 0xa6, 0xe0, 0x2a, 0xfc, 0x7d, 0x14, 0x6c, 0xc1, 0x7f, 0x85, + 0x82, 0x6f, 0xc3, 0x77, 0x28, 0x78, 0x0b, 0xfe, 0xab, 0x14, 0x7c, 0x17, 0xfe, 0x7e, 0x76, 0xfe, + 0x08, 0x2e, 0x1a, 0xf0, 0x21, 0x43, 0x21, 0xb2, 0xf0, 0x47, 0x68, 0x44, 0x0e, 0xbe, 0x4b, 0x23, + 0x0a, 0xf0, 0x0f, 0xd0, 0x88, 0x9b, 0xf0, 0x47, 0x69, 0x84, 0x05, 0x7f, 0x8c, 0x46, 0xd4, 0xe0, + 0x8f, 0xd3, 0x88, 0x3a, 0xfc, 0x83, 0x34, 0x62, 0x13, 0xfe, 0x04, 0x8d, 0xb8, 0x05, 0xff, 0x10, + 0x8d, 0xd8, 0x82, 0x5f, 0xa4, 0x10, 0x25, 0x03, 0xfe, 0x6b, 0x34, 0x22, 0x07, 0xff, 0x75, 0x1a, + 0xb1, 0x0a, 0xff, 0x0d, 0x1a, 0x61, 0xc2, 0x7f, 0x93, 0x46, 0xac, 0xc1, 0x2f, 0xd1, 0x88, 0x75, + 0xf8, 0x93, 0x34, 0x22, 0x0f, 0xff, 0x30, 0x8d, 0xb8, 0x09, 0xbf, 0x4c, 0x23, 0x8a, 0xf0, 0xdf, + 0xa2, 0x11, 0x25, 0xf8, 0x6f, 0xd3, 0x88, 0x32, 0xfc, 0x23, 0x34, 0xa2, 0x02, 0xff, 0x1d, 0x1a, + 0x51, 0x85, 0xff, 0x2e, 0x8d, 0x78, 0x13, 0x7e, 0x85, 0x46, 0x58, 0xf0, 0x8f, 0xd2, 0x88, 0x1a, + 0xfc, 0x2a, 0x8d, 0xa8, 0xc3, 0x7f, 0x8f, 0x46, 0x6c, 0xc2, 0x3f, 0x46, 0x23, 0x6e, 0xc1, 0x7f, + 0x9f, 0x46, 0xdc, 0x86, 0x7f, 0x9c, 0x46, 0xdc, 0x81, 0xff, 0x01, 0x8d, 0xd8, 0x82, 0x3f, 0x45, + 0x23, 0xee, 0xc2, 0x3f, 0x41, 0x21, 0xca, 0x06, 0xfc, 0x69, 0x1a, 0x91, 0x83, 0xff, 0x21, 0x8d, + 0x30, 0xe1, 0x9f, 0xa4, 0x11, 0x6b, 0xf0, 0x67, 0x68, 0xc4, 0x3a, 0xfc, 0x53, 0x34, 0xa2, 0x00, + 0xff, 0x34, 0x8d, 0x28, 0xc2, 0x9f, 0xa5, 0x11, 0x15, 0xf8, 0x73, 0x34, 0xa2, 0x0a, 0xdf, 0xa3, + 0x11, 0x16, 0xfc, 0x8f, 0x68, 0xc4, 0x26, 0xfc, 0x8f, 0x69, 0xc4, 0x5d, 0xf8, 0x67, 0x28, 0x44, + 0xa5, 0x04, 0xff, 0x2c, 0x85, 0xa8, 0x1a, 0xf0, 0x3f, 0xa1, 0x11, 0x26, 0xfc, 0x79, 0x1a, 0xb1, + 0x06, 0xff, 0x1c, 0x8d, 0x58, 0x87, 0x7f, 0x9e, 0x46, 0xe4, 0xe1, 0x7f, 0x4a, 0x23, 0x6e, 0xc2, + 0xff, 0x8c, 0x46, 0x14, 0xe1, 0x2f, 0xd0, 0x88, 0x12, 0xfc, 0x45, 0x1a, 0x51, 0x86, 0xff, 0x39, + 0x8d, 0xb0, 0xe0, 0x5f, 0xa0, 0x11, 0x35, 0xf8, 0x17, 0x69, 0x44, 0x1d, 0xfe, 0x12, 0x8d, 0xb8, + 0x0d, 0x0f, 0x69, 0xc4, 0x16, 0x7c, 0x44, 0x21, 0xde, 0x34, 0xe0, 0x7f, 0x41, 0x21, 0x2c, 0x13, + 0xfe, 0x25, 0x1a, 0x51, 0x81, 0xbf, 0x4c, 0x23, 0x6a, 0xf0, 0x31, 0x8d, 0xd8, 0x84, 0x7f, 0x99, + 0x46, 0xdc, 0x86, 0xbf, 0x42, 0x21, 0x6a, 0x06, 0xfc, 0x2f, 0x69, 0x44, 0x16, 0xfe, 0x57, 0x34, + 0x22, 0x07, 0x7f, 0x95, 0x46, 0xac, 0xc2, 0xbf, 0x42, 0x23, 0x4c, 0xf8, 0x5f, 0xd3, 0x88, 0x75, + 0xf8, 0x35, 0x1a, 0x91, 0x87, 0xff, 0x0d, 0x8d, 0x28, 0xc0, 0xf7, 0x69, 0xc4, 0x06, 0xfc, 0xab, + 0x34, 0xe2, 0x26, 0xfc, 0x6b, 0x34, 0xa2, 0x08, 0xff, 0x3a, 0x8d, 0x28, 0xc1, 0xff, 0x96, 0x46, + 0x94, 0xe1, 0x7f, 0x47, 0x23, 0x2a, 0xf0, 0x09, 0x8d, 0xb0, 0xe0, 0xdf, 0xa0, 0x11, 0x35, 0xf8, + 0xdf, 0xd3, 0x88, 0x3a, 0xfc, 0x1f, 0x68, 0xc4, 0x2d, 0xf8, 0x37, 0x69, 0xc4, 0x1d, 0xf8, 0xb7, + 0x68, 0xc4, 0x16, 0xfc, 0xdb, 0x34, 0xe2, 0x2e, 0xfc, 0x3b, 0x14, 0xa2, 0x9e, 0x83, 0x5f, 0xa7, + 0x11, 0xab, 0xf0, 0xef, 0xd2, 0x88, 0x35, 0xf8, 0x01, 0x8d, 0x58, 0x87, 0xff, 0x23, 0x8d, 0xc8, + 0xc3, 0xbf, 0x47, 0x23, 0x36, 0xe0, 0xff, 0x44, 0x23, 0x6e, 0xc2, 0xff, 0x99, 0x46, 0x14, 0xe1, + 0xdf, 0xa7, 0x11, 0x25, 0xf8, 0x6b, 0x34, 0xa2, 0x0c, 0xbf, 0x41, 0x23, 0x2a, 0xf0, 0x43, 0x1a, + 0x61, 0xc1, 0x6f, 0xd2, 0x88, 0x3a, 0xfc, 0x5f, 0x68, 0xc4, 0x2d, 0xf8, 0x0f, 0x68, 0xc4, 0x6d, + 0xf8, 0x0f, 0x69, 0xc4, 0x5d, 0xf8, 0xbf, 0x52, 0x88, 0x4d, 0x03, 0x7e, 0x8b, 0x46, 0xac, 0xc3, + 0x7f, 0x44, 0x23, 0x4a, 0xf0, 0x7f, 0xa3, 0x11, 0x35, 0xf8, 0xbf, 0xd3, 0x88, 0x2d, 0xf8, 0x7f, + 0xd0, 0x88, 0xbb, 0xf0, 0xff, 0xa4, 0x10, 0xb7, 0x0c, 0xf8, 0x8f, 0x69, 0x44, 0x0e, 0xfe, 0x3a, + 0x8d, 0x30, 0xe1, 0xb7, 0x69, 0xc4, 0x3a, 0xfc, 0x27, 0x34, 0xa2, 0x00, 0xbf, 0x43, 0x23, 0xca, + 0xf0, 0x37, 0x68, 0xc4, 0x26, 0xfc, 0x4d, 0x0a, 0x71, 0x7b, 0x0d, 0xfe, 0x5f, 0x34, 0xa2, 0x06, + 0x7f, 0x8b, 0x42, 0xdc, 0xb9, 0x09, 0xff, 0x6f, 0x1a, 0x51, 0x87, 0xbf, 0x4d, 0x21, 0xb6, 0x4c, + 0xf8, 0x4f, 0x69, 0x44, 0x1d, 0xfe, 0x33, 0x0a, 0x71, 0xd7, 0x80, 0xff, 0x0f, 0x8d, 0x28, 0xc1, + 0xff, 0x97, 0x46, 0xdc, 0x86, 0xff, 0x9c, 0x59, 0xfe, 0x11, 0x06, 0x00, 0x6b, 0x7f, 0x07, 0x85, + 0xff, 0x25, 0x25, 0x09, 0x12, 0xab, 0x26, 0xd9, 0x61, 0x9a, 0x02, 0xe3, 0xe4, 0x10, 0x0d, 0x32, + 0xec, 0x25, 0x30, 0x5f, 0x26, 0xfb, 0x44, 0xfd, 0x63, 0xbb, 0xf0, 0x3c, 0x8d, 0xec, 0xa7, 0xc5, + 0x8a, 0xe0, 0x18, 0x7b, 0x1e, 0x4c, 0x17, 0x8d, 0x5a, 0x1f, 0x91, 0x08, 0xe9, 0xce, 0x83, 0xe9, + 0xf5, 0x4a, 0xbd, 0x12, 0xa1, 0xc7, 0x03, 0x74, 0xb8, 0xe5, 0xf5, 0xc7, 0x18, 0x30, 0x9f, 0xbb, + 0x67, 0xef, 0xec, 0xa0, 0xd6, 0x76, 0x24, 0x08, 0xd9, 0x30, 0x5b, 0x33, 0x36, 0x8b, 0xf5, 0x46, + 0x2e, 0x6f, 0x14, 0x8b, 0x66, 0x79, 0xdd, 0x84, 0x23, 0xec, 0x73, 0xe0, 0xb2, 0x49, 0xf6, 0xd1, + 0x1b, 0x1b, 0xc6, 0x2d, 0xa3, 0x96, 0xb3, 0x0a, 0xd5, 0x38, 0x01, 0x43, 0xf6, 0xf5, 0x03, 0x82, + 0x9c, 0x51, 0xad, 0xe7, 0xf2, 0x46, 0xac, 0x74, 0x94, 0x70, 0x2d, 0xd4, 0x82, 0xe2, 0x3e, 0x7a, + 0x8c, 0x9c, 0xe6, 0x98, 0xa5, 0x6a, 0xc5, 0x32, 0xc8, 0xa2, 0xbd, 0x12, 0x1c, 0x4d, 0x24, 0x42, + 0xf1, 0x5e, 0x02, 0x73, 0xc6, 0xde, 0x5e, 0xbd, 0x63, 0xfb, 0x7e, 0xd3, 0x25, 0x87, 0xac, 0x93, + 0x60, 0xec, 0xb6, 0x99, 0x85, 0x23, 0x2c, 0x00, 0x13, 0xc1, 0xce, 0x1f, 0x64, 0x96, 0x3f, 0x0b, + 0x66, 0xf2, 0xf5, 0x52, 0xb1, 0xda, 0xee, 0x36, 0x49, 0x0f, 0x66, 0xc1, 0x54, 0xd6, 0x5c, 0x2f, + 0x94, 0xcb, 0x98, 0xd7, 0x08, 0xae, 0x63, 0x96, 0x57, 0x83, 0xdd, 0xaa, 0xac, 0xb9, 0x56, 0x21, + 0xbb, 0x55, 0x58, 0xc9, 0x6b, 0x75, 0xd3, 0x82, 0x63, 0xcb, 0x07, 0xe0, 0xe2, 0x09, 0xff, 0xd0, + 0x85, 0x9d, 0x01, 0xc9, 0x8a, 0x51, 0x0b, 0xb7, 0x8a, 0xd8, 0x05, 0x70, 0x0e, 0x43, 0x96, 0x59, + 0xad, 0x58, 0xf5, 0xc6, 0xad, 0x42, 0x25, 0x3c, 0xaf, 0x61, 0xd8, 0x8b, 0xe0, 0x2c, 0x2e, 0x21, + 0x1d, 0x88, 0x15, 0x8c, 0x62, 0x51, 0xfa, 0x05, 0xc1, 0x8e, 0xd0, 0x11, 0x07, 0x98, 0xc8, 0xfe, + 0x04, 0xf3, 0xe4, 0x1b, 0x4b, 0x23, 0x5f, 0xff, 0xc6, 0xd2, 0xc8, 0xb7, 0xbf, 0xb1, 0xc4, 0x3c, + 0xfc, 0x70, 0x89, 0xf9, 0xd9, 0x0f, 0x97, 0x98, 0xaf, 0x7d, 0xb8, 0xc4, 0x3c, 0xf9, 0x70, 0x89, + 0xf9, 0xfa, 0x87, 0x4b, 0xcc, 0xaf, 0x7d, 0xb8, 0xc4, 0x7c, 0xeb, 0xc3, 0xa5, 0x91, 0x6f, 0x7f, + 0xb8, 0xc4, 0xfc, 0xe4, 0x37, 0x97, 0x46, 0x1e, 0x7f, 0x73, 0x89, 0x79, 0xf2, 0xcd, 0xa5, 0x91, + 0xaf, 0x7f, 0x73, 0x69, 0xe4, 0xee, 0xc6, 0x76, 0x7b, 0xef, 0xad, 0xed, 0x95, 0xb7, 0xdb, 0x3b, + 0x3d, 0xd4, 0xe9, 0xd8, 0x2b, 0xfb, 0xdd, 0xeb, 0xe4, 0x87, 0xdf, 0xee, 0xec, 0xbe, 0xba, 0xd7, + 0x69, 0xbf, 0xdd, 0xf4, 0x50, 0xe7, 0xd5, 0xa8, 0xf8, 0xfa, 0x9e, 0xb3, 0xdd, 0xbe, 0x8e, 0x1e, + 0xf4, 0x82, 0xa3, 0xf6, 0xeb, 0xe1, 0x9f, 0xe0, 0x6c, 0xdb, 0x99, 0x20, 0xff, 0xc8, 0x5d, 0xfc, + 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0xaa, 0x04, 0x91, 0xb6, 0x8c, 0x93, 0x00, 0x00, } func (x PolicySetType) String() string { @@ -13725,6 +13744,14 @@ func (this *RequestMatcher) Equal(that interface{}) bool { return false } } + if len(this.JwtClaims) != len(that1.JwtClaims) { + return false + } + for i := range this.JwtClaims { + if !this.JwtClaims[i].Equal(that1.JwtClaims[i]) { + return false + } + } if len(this.CookieMatchers) != len(that1.CookieMatchers) { return false } @@ -16310,7 +16337,7 @@ func (this *RequestMatcher) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 7) + s := make([]string, 0, 8) s = append(s, "&policy.RequestMatcher{") if this.QueryParams != nil { s = append(s, "QueryParams: "+fmt.Sprintf("%#v", this.QueryParams)+",\n") @@ -16318,6 +16345,9 @@ func (this *RequestMatcher) GoString() string { if this.Headers != nil { s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") } + if this.JwtClaims != nil { + s = append(s, "JwtClaims: "+fmt.Sprintf("%#v", this.JwtClaims)+",\n") + } if this.CookieMatchers != nil { s = append(s, "CookieMatchers: "+fmt.Sprintf("%#v", this.CookieMatchers)+",\n") } @@ -20968,6 +20998,20 @@ func (m *RequestMatcher) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.JwtClaims) > 0 { + for iNdEx := len(m.JwtClaims) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.JwtClaims[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + } if len(m.CookieMatchers) > 0 { for iNdEx := len(m.CookieMatchers) - 1; iNdEx >= 0; iNdEx-- { { @@ -24072,6 +24116,12 @@ func (m *RequestMatcher) Size() (n int) { n += 1 + l + sovTypes(uint64(l)) } } + if len(m.JwtClaims) > 0 { + for _, e := range m.JwtClaims { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } return n } @@ -26131,10 +26181,16 @@ func (this *RequestMatcher) String() string { repeatedStringForCookieMatchers += strings.Replace(f.String(), "CookieMatcherType", "CookieMatcherType", 1) + "," } repeatedStringForCookieMatchers += "}" + repeatedStringForJwtClaims := "[]*JWTClaimMatcherType{" + for _, f := range this.JwtClaims { + repeatedStringForJwtClaims += strings.Replace(f.String(), "JWTClaimMatcherType", "JWTClaimMatcherType", 1) + "," + } + repeatedStringForJwtClaims += "}" s := strings.Join([]string{`&RequestMatcher{`, `QueryParams:` + repeatedStringForQueryParams + `,`, `Headers:` + repeatedStringForHeaders + `,`, `CookieMatchers:` + repeatedStringForCookieMatchers + `,`, + `JwtClaims:` + repeatedStringForJwtClaims + `,`, `}`, }, "") return s @@ -36029,6 +36085,40 @@ func (m *RequestMatcher) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JwtClaims", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.JwtClaims = append(m.JwtClaims, &JWTClaimMatcherType{}) + if err := m.JwtClaims[len(m.JwtClaims)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/policy/types.vesmsg.go b/pbgo/extschema/schema/policy/types.vesmsg.go index a4cec9579..e6def8d87 100644 --- a/pbgo/extschema/schema/policy/types.vesmsg.go +++ b/pbgo/extschema/schema/policy/types.vesmsg.go @@ -3910,7 +3910,7 @@ var DefaultGraphQLSettingsTypeValidator = func() *ValidateGraphQLSettingsType { rulesMaxTotalLength := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.uint32.gte": "0", - "ves.io.schema.rules.uint32.lte": "8096", + "ves.io.schema.rules.uint32.lte": "16386", } vFn, err = vrhMaxTotalLength(rulesMaxTotalLength) if err != nil { @@ -9448,6 +9448,54 @@ func (v *ValidateRequestMatcher) CookieMatchersValidationRuleHandler(rules map[s return validatorFn, nil } +func (v *ValidateRequestMatcher) JwtClaimsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for jwt_claims") + } + itemsValidatorFn := func(ctx context.Context, elems []*JWTClaimMatcherType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := JWTClaimMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for jwt_claims") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*JWTClaimMatcherType) + if !ok { + return fmt.Errorf("Repeated validation expected []*JWTClaimMatcherType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated jwt_claims") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items jwt_claims") + } + return nil + } + + return validatorFn, nil +} + func (v *ValidateRequestMatcher) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*RequestMatcher) if !ok { @@ -9478,6 +9526,14 @@ func (v *ValidateRequestMatcher) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["jwt_claims"]; exists { + vOpts := append(opts, db.WithValidateField("jwt_claims")) + if err := fv(ctx, m.GetJwtClaims(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["query_params"]; exists { vOpts := append(opts, db.WithValidateField("query_params")) if err := fv(ctx, m.GetQueryParams(), vOpts...); err != nil { @@ -9534,6 +9590,17 @@ var DefaultRequestMatcherValidator = func() *ValidateRequestMatcher { } v.FldValidators["cookie_matchers"] = vFn + vrhJwtClaims := v.JwtClaimsValidationRuleHandler + rulesJwtClaims := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + } + vFn, err = vrhJwtClaims(rulesJwtClaims) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RequestMatcher.jwt_claims: %s", err) + panic(errMsg) + } + v.FldValidators["jwt_claims"] = vFn + return v }() diff --git a/pbgo/extschema/schema/protocol_inspection/crudapi/api.vesapi.go b/pbgo/extschema/schema/protocol_inspection/crudapi/api.vesapi.go index 32b37997e..66362fc39 100644 --- a/pbgo/extschema/schema/protocol_inspection/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/protocol_inspection/crudapi/api.vesapi.go @@ -3235,10 +3235,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/protocol_inspection/public_crudapi.vesapi.go b/pbgo/extschema/schema/protocol_inspection/public_crudapi.vesapi.go index e4bda4a6f..ddfd11d1e 100644 --- a/pbgo/extschema/schema/protocol_inspection/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/protocol_inspection/public_crudapi.vesapi.go @@ -2941,10 +2941,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3001,10 +3005,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3063,10 +3071,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/protocol_policer/crudapi/api.vesapi.go b/pbgo/extschema/schema/protocol_policer/crudapi/api.vesapi.go index f5ac19df8..707d7a211 100644 --- a/pbgo/extschema/schema/protocol_policer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/protocol_policer/crudapi/api.vesapi.go @@ -3233,10 +3233,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/protocol_policer/object.pb.go b/pbgo/extschema/schema/protocol_policer/object.pb.go index c4f4ae8f0..8f8d13bb6 100644 --- a/pbgo/extschema/schema/protocol_policer/object.pb.go +++ b/pbgo/extschema/schema/protocol_policer/object.pb.go @@ -234,46 +234,47 @@ func init() { } var fileDescriptor_473bb2a8a89ff3dd = []byte{ - // 616 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xc1, 0x4f, 0x13, 0x4f, - 0x14, 0xc7, 0x3b, 0x6d, 0x7f, 0x85, 0x0c, 0x84, 0x1f, 0x59, 0x2f, 0x15, 0x74, 0x42, 0xea, 0x85, - 0x28, 0x3b, 0x1b, 0x4b, 0x8c, 0x81, 0x10, 0x54, 0x30, 0xe1, 0x02, 0x31, 0x29, 0x5c, 0xf4, 0xd2, - 0xcc, 0x4e, 0x5f, 0x97, 0xd1, 0xdd, 0xce, 0x66, 0x66, 0xb6, 0xc2, 0xc1, 0xc4, 0xf8, 0x17, 0x18, - 0xff, 0x0a, 0xe3, 0xff, 0x60, 0x22, 0x9e, 0xbc, 0x49, 0x38, 0x71, 0x94, 0xed, 0xc5, 0xc4, 0x0b, - 0xe1, 0xe4, 0xd1, 0x30, 0xcb, 0x12, 0xda, 0x14, 0x31, 0xe1, 0xf6, 0x66, 0xde, 0xf7, 0x7d, 0xe6, - 0xcd, 0x7b, 0x6f, 0x06, 0xdf, 0xeb, 0x82, 0xa6, 0x42, 0x7a, 0x9a, 0x6f, 0x43, 0xc4, 0xbc, 0x58, - 0x49, 0x23, 0xb9, 0x0c, 0x9b, 0xb1, 0x0c, 0x05, 0x07, 0xe5, 0x49, 0xff, 0x25, 0x70, 0x43, 0xed, - 0xbe, 0x43, 0x32, 0x31, 0xcd, 0xc4, 0x74, 0x50, 0x3c, 0xe5, 0x06, 0xc2, 0x6c, 0x27, 0x3e, 0xe5, - 0x32, 0xf2, 0x02, 0x19, 0xc8, 0x0c, 0xe7, 0x27, 0x6d, 0xbb, 0xb2, 0x0b, 0x6b, 0x65, 0x91, 0x53, - 0xd3, 0xfd, 0x67, 0xcb, 0xd8, 0x08, 0xd9, 0xd1, 0x67, 0xce, 0xbb, 0x57, 0x24, 0x66, 0x76, 0x63, - 0xc8, 0xb5, 0x37, 0xfb, 0xb5, 0x17, 0x5d, 0xb5, 0x7e, 0x57, 0x17, 0x34, 0x74, 0xba, 0xfd, 0x47, - 0xd5, 0x3e, 0x97, 0x71, 0xe5, 0x99, 0xbd, 0xa7, 0xb3, 0x80, 0x47, 0x23, 0x30, 0xac, 0xc5, 0x0c, - 0xab, 0xa2, 0x19, 0x34, 0x3b, 0x56, 0xbf, 0x4d, 0xfb, 0x2f, 0x9d, 0x09, 0x37, 0xc0, 0xb0, 0xad, - 0xdd, 0x18, 0x1a, 0xe7, 0x72, 0x67, 0x1d, 0xff, 0xaf, 0x77, 0xb5, 0x81, 0xa8, 0x79, 0x4e, 0x28, - 0x5a, 0xc2, 0x9d, 0x01, 0xc2, 0xa6, 0x55, 0x0d, 0x70, 0x26, 0xb2, 0xd8, 0x8d, 0x9c, 0xb6, 0x84, - 0xcb, 0x3a, 0x06, 0x5e, 0x2d, 0x59, 0xc4, 0x2c, 0xfd, 0x7b, 0xe5, 0xe9, 0x66, 0x0c, 0xdc, 0x72, - 0x6c, 0xd4, 0xe2, 0xaf, 0xe2, 0xc9, 0xf2, 0x7f, 0xf7, 0xe7, 0xea, 0x73, 0xf3, 0xef, 0x1e, 0x55, - 0x32, 0xf2, 0xd7, 0xbd, 0x6a, 0x71, 0x12, 0x1d, 0xec, 0x55, 0xbf, 0x17, 0xf1, 0x63, 0x5c, 0x5a, - 0x03, 0xe3, 0x2c, 0xb4, 0x1f, 0xec, 0x70, 0x57, 0x03, 0x4f, 0x14, 0x44, 0xa0, 0xb7, 0x5d, 0x9f, - 0x69, 0xc1, 0xdd, 0x48, 0x76, 0x84, 0x91, 0x6a, 0x6e, 0xa6, 0x0b, 0xda, 0x15, 0xd2, 0x15, 0x9d, - 0xb6, 0x62, 0xda, 0xa8, 0x84, 0x9b, 0x44, 0x81, 0xab, 0x80, 0xb5, 0xf0, 0x0a, 0x1e, 0x69, 0x40, - 0x1c, 0x32, 0x0e, 0xce, 0xc3, 0xe1, 0x94, 0x44, 0xc3, 0xa5, 0x88, 0xd7, 0x4a, 0x18, 0xc0, 0x4f, - 0x70, 0x65, 0x55, 0x01, 0x33, 0xd7, 0x43, 0x3c, 0x85, 0x10, 0xae, 0x87, 0x28, 0xaf, 0x0b, 0x7d, - 0x9d, 0x62, 0xd4, 0x9e, 0xe3, 0xd1, 0xbc, 0xfe, 0xce, 0x1a, 0x1e, 0x09, 0x78, 0xd3, 0xb6, 0x2e, - 0xeb, 0x3e, 0xbd, 0xaa, 0x75, 0x6b, 0xa1, 0xf4, 0x59, 0x78, 0xde, 0xc0, 0x4a, 0xc0, 0x4f, 0xed, - 0xc5, 0xf2, 0xc9, 0x32, 0xaa, 0xd7, 0x7e, 0x23, 0x3c, 0xbe, 0x69, 0x98, 0x49, 0xf4, 0x3f, 0x0f, - 0x68, 0x26, 0x1f, 0x32, 0xa0, 0x0d, 0x3c, 0x96, 0xbd, 0xe6, 0xa6, 0x82, 0xb6, 0xae, 0x16, 0x67, - 0x4a, 0xb3, 0x63, 0xf5, 0x5b, 0x43, 0xc7, 0xbb, 0x01, 0xed, 0xd3, 0xe0, 0x95, 0x1b, 0x9f, 0xde, - 0x4c, 0x0e, 0x26, 0xdc, 0xc0, 0x32, 0xd7, 0x68, 0x67, 0x09, 0x63, 0x2e, 0x3b, 0x2d, 0x61, 0x9f, - 0x53, 0xb5, 0x34, 0x14, 0xb9, 0x9a, 0x0b, 0x6c, 0x3e, 0x17, 0xf4, 0x8b, 0xd3, 0x07, 0xcb, 0x93, - 0x78, 0x02, 0x8f, 0xe7, 0x29, 0xd2, 0x44, 0xb4, 0xf2, 0xc1, 0x5d, 0xf9, 0x80, 0xf6, 0x8f, 0x48, - 0xe1, 0xf0, 0x88, 0x14, 0x8e, 0x8f, 0x08, 0x7a, 0x9b, 0x12, 0xf4, 0x31, 0x25, 0xe8, 0x5b, 0x4a, - 0xd0, 0x7e, 0x4a, 0xd0, 0x61, 0x4a, 0xd0, 0x8f, 0x94, 0xa0, 0x9f, 0x29, 0x29, 0x1c, 0xa7, 0x04, - 0xbd, 0xef, 0x91, 0xc2, 0x97, 0x1e, 0x41, 0xfb, 0x3d, 0x52, 0x38, 0xec, 0x91, 0xc2, 0x8b, 0xad, - 0x40, 0xc6, 0xaf, 0x02, 0xda, 0x95, 0xa1, 0x01, 0xa5, 0x18, 0x4d, 0xb4, 0x67, 0x8d, 0xb6, 0x54, - 0x91, 0x1b, 0x2b, 0xd9, 0x15, 0x2d, 0x50, 0x6e, 0xee, 0xf6, 0x62, 0x3f, 0x90, 0x1e, 0xec, 0x98, - 0xb3, 0x7f, 0xe2, 0x92, 0x5f, 0xc7, 0xaf, 0xd8, 0x9d, 0xf9, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, - 0x42, 0x3c, 0x87, 0x38, 0x37, 0x05, 0x00, 0x00, + // 631 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xb1, 0x4f, 0x14, 0x4f, + 0x14, 0xc7, 0x6f, 0xb8, 0xe3, 0x20, 0x03, 0xe1, 0x47, 0xf6, 0xd7, 0x9c, 0xa0, 0x13, 0x72, 0x36, + 0x44, 0xd9, 0xdd, 0x78, 0xc4, 0x42, 0x42, 0x30, 0x01, 0x13, 0x1a, 0x88, 0xc9, 0x41, 0x4c, 0xd4, + 0xe2, 0x9c, 0x9d, 0x7d, 0xb7, 0x8c, 0xee, 0xde, 0x6c, 0x66, 0x66, 0x57, 0x28, 0x4c, 0x8c, 0xb5, + 0x85, 0xf1, 0xaf, 0x30, 0xfe, 0x15, 0x62, 0x65, 0x49, 0xa8, 0xa8, 0x8c, 0xec, 0x35, 0x96, 0x84, + 0xca, 0xd2, 0x30, 0xcb, 0x22, 0x77, 0x39, 0xc1, 0xe6, 0xba, 0x99, 0x79, 0x9f, 0xf7, 0xfd, 0xbe, + 0xd9, 0x7d, 0x6f, 0xf0, 0xdd, 0x14, 0x94, 0xc3, 0x85, 0xab, 0xd8, 0x0e, 0x44, 0xd4, 0x8d, 0xa5, + 0xd0, 0x82, 0x89, 0xb0, 0x15, 0x8b, 0x90, 0x33, 0x90, 0xae, 0xf0, 0x5e, 0x02, 0xd3, 0x8e, 0x39, + 0xb7, 0x48, 0x0e, 0x3b, 0x39, 0xec, 0xf4, 0xc3, 0x33, 0x76, 0xc0, 0xf5, 0x4e, 0xe2, 0x39, 0x4c, + 0x44, 0x6e, 0x20, 0x02, 0x91, 0xcb, 0x79, 0x49, 0xdb, 0xec, 0xcc, 0xc6, 0xac, 0xf2, 0xcc, 0x99, + 0xd9, 0x5e, 0x6f, 0x11, 0x6b, 0x2e, 0x3a, 0xea, 0x3c, 0x78, 0xe7, 0x9a, 0xc2, 0xf4, 0x5e, 0x0c, + 0x05, 0x7b, 0xa3, 0x97, 0xbd, 0x1c, 0xaa, 0xf7, 0x86, 0x52, 0x50, 0xd0, 0x49, 0x7b, 0xad, 0xea, + 0xdf, 0x47, 0x71, 0xf5, 0xb1, 0xb9, 0xa7, 0xf5, 0x00, 0x8f, 0x47, 0xa0, 0xa9, 0x4f, 0x35, 0xad, + 0xa1, 0x39, 0x34, 0x3f, 0xd1, 0xb8, 0xe5, 0xf4, 0x5e, 0x3a, 0x07, 0x37, 0x41, 0xd3, 0xed, 0xbd, + 0x18, 0x9a, 0x17, 0xb8, 0xb5, 0x81, 0xff, 0x53, 0x7b, 0x4a, 0x43, 0xd4, 0xba, 0x50, 0x18, 0x31, + 0x0a, 0xb7, 0xfb, 0x14, 0xb6, 0x0c, 0xd5, 0xa7, 0x33, 0x95, 0xe7, 0x6e, 0x16, 0x6a, 0xcb, 0xb8, + 0xa2, 0x62, 0x60, 0xb5, 0xb2, 0x91, 0x98, 0x77, 0xae, 0xfe, 0xf2, 0xce, 0x56, 0x0c, 0xcc, 0xe8, + 0x98, 0xac, 0xa5, 0xf7, 0x95, 0xd3, 0x95, 0xd1, 0x7b, 0x0b, 0x8d, 0x85, 0xc5, 0x77, 0x0f, 0xab, + 0xb9, 0xf2, 0xd7, 0xfd, 0xda, 0xc8, 0x34, 0x3a, 0xdc, 0xaf, 0x9d, 0x94, 0xb1, 0x87, 0xcb, 0xeb, + 0xa0, 0xad, 0xe7, 0xed, 0xfb, 0xbb, 0xcc, 0x56, 0xc0, 0x12, 0x09, 0x11, 0xa8, 0x1d, 0xdb, 0xa3, + 0x8a, 0x33, 0x3b, 0x12, 0x1d, 0xae, 0x85, 0x5c, 0x98, 0xeb, 0x0f, 0x2b, 0x4d, 0x3b, 0x3e, 0x95, + 0xfe, 0x1f, 0x22, 0x05, 0x65, 0x73, 0x61, 0xf3, 0x4e, 0x5b, 0x52, 0xa5, 0x65, 0xc2, 0x74, 0x22, + 0xc1, 0x96, 0x40, 0x7d, 0x4c, 0xf1, 0x58, 0x13, 0xe2, 0x90, 0x32, 0xb0, 0x9e, 0x0c, 0xf6, 0x49, + 0x14, 0x5c, 0x65, 0x92, 0x87, 0x07, 0x3b, 0xbc, 0x96, 0x5c, 0x03, 0x7e, 0x81, 0xab, 0x6b, 0x12, + 0xa8, 0x1e, 0xaa, 0xc3, 0x23, 0x08, 0x61, 0x88, 0x0e, 0x0c, 0x57, 0x36, 0xb8, 0x1a, 0xee, 0xbf, + 0xa8, 0x3f, 0xc5, 0xe3, 0x45, 0x83, 0x58, 0xeb, 0x78, 0x2c, 0x60, 0x2d, 0xd3, 0x5b, 0x79, 0x7b, + 0x3a, 0xd7, 0xf5, 0xd6, 0x7a, 0x28, 0x3c, 0x1a, 0x5e, 0x74, 0x58, 0x35, 0x60, 0x67, 0xeb, 0xa5, + 0xca, 0xe9, 0x0a, 0x6a, 0xd4, 0x7f, 0x21, 0x3c, 0xb9, 0xa5, 0xa9, 0x4e, 0xd4, 0x3f, 0x4f, 0x50, + 0x8e, 0x0f, 0x98, 0xa0, 0x26, 0x9e, 0xc8, 0x9f, 0x9b, 0x96, 0x84, 0xb6, 0xaa, 0x8d, 0xcc, 0x95, + 0xe7, 0x27, 0x1a, 0x37, 0x07, 0xce, 0x5f, 0x13, 0xda, 0x67, 0xc9, 0xab, 0xff, 0x7f, 0x7e, 0x33, + 0xdd, 0x5f, 0x70, 0x13, 0x8b, 0x82, 0x51, 0xd6, 0x32, 0xc6, 0x4c, 0x74, 0x7c, 0x6e, 0xe6, 0xbd, + 0x56, 0x1e, 0x28, 0xb9, 0x56, 0x00, 0xa6, 0x9e, 0x4b, 0xfc, 0xd2, 0xec, 0xe1, 0xca, 0x34, 0x9e, + 0xc2, 0x93, 0x45, 0x89, 0x4e, 0xc2, 0xfd, 0x62, 0xb2, 0x56, 0x3f, 0xa2, 0x83, 0x63, 0x52, 0x3a, + 0x3a, 0x26, 0xa5, 0x93, 0x63, 0x82, 0xde, 0x66, 0x04, 0x7d, 0xca, 0x08, 0xfa, 0x96, 0x11, 0x74, + 0x90, 0x11, 0x74, 0x94, 0x11, 0xf4, 0x23, 0x23, 0xe8, 0x67, 0x46, 0x4a, 0x27, 0x19, 0x41, 0x1f, + 0xba, 0xa4, 0xf4, 0xa5, 0x4b, 0xd0, 0x41, 0x97, 0x94, 0x8e, 0xba, 0xa4, 0xf4, 0x6c, 0x3b, 0x10, + 0xf1, 0xab, 0xc0, 0x49, 0x45, 0xa8, 0x41, 0x4a, 0xea, 0x24, 0xca, 0x35, 0x8b, 0xb6, 0x90, 0x91, + 0x1d, 0x4b, 0x91, 0x72, 0x1f, 0xa4, 0x5d, 0x84, 0xdd, 0xd8, 0x0b, 0x84, 0x0b, 0xbb, 0xfa, 0xfc, + 0x21, 0xfb, 0xcb, 0xb3, 0xe8, 0x55, 0xcd, 0xc9, 0xe2, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd4, + 0xce, 0x9d, 0x60, 0xd8, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/protocol_policer/public_crudapi.pb.go b/pbgo/extschema/schema/protocol_policer/public_crudapi.pb.go index cdcbc9dd5..c9b465b2f 100644 --- a/pbgo/extschema/schema/protocol_policer/public_crudapi.pb.go +++ b/pbgo/extschema/schema/protocol_policer/public_crudapi.pb.go @@ -1062,109 +1062,110 @@ func init() { } var fileDescriptor_ff5fa975d1627d6b = []byte{ - // 1619 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x0b, 0x96, 0x76, - 0x0b, 0x41, 0x32, 0x97, 0x82, 0x0c, 0xb7, 0x96, 0x60, 0xa8, 0xa5, 0x24, 0x52, 0x90, 0x2d, 0x4b, - 0xea, 0x92, 0x36, 0x8a, 0x1e, 0xba, 0x58, 0x2e, 0x87, 0xf4, 0xd6, 0x24, 0x77, 0x3b, 0x33, 0xa4, - 0x2c, 0xb4, 0x6a, 0x0b, 0x9f, 0x7a, 0x2a, 0x0a, 0x14, 0xe8, 0x21, 0x48, 0x82, 0x5c, 0x02, 0xe4, - 0x98, 0x63, 0x00, 0x5d, 0x7c, 0xb3, 0x61, 0x24, 0x81, 0x91, 0x5c, 0x0c, 0xe4, 0x90, 0x98, 0x72, - 0x10, 0x1f, 0x8d, 0x5c, 0x93, 0x43, 0xb0, 0x33, 0xbb, 0x34, 0x49, 0xd1, 0x26, 0x29, 0xeb, 0xc4, - 0xdd, 0xf7, 0xf3, 0xed, 0xfb, 0xe6, 0xfd, 0xec, 0xe3, 0xc2, 0xcb, 0x0d, 0x4c, 0x15, 0xd3, 0x4a, - 0x51, 0xe3, 0x0e, 0xae, 0xea, 0x29, 0x9b, 0x58, 0xcc, 0x32, 0xac, 0x8a, 0x66, 0x5b, 0x15, 0xd3, - 0xc0, 0x24, 0x65, 0xd7, 0x0b, 0x15, 0xd3, 0xd0, 0x0c, 0x52, 0x2f, 0xea, 0xb6, 0xa9, 0x70, 0x3d, - 0x92, 0x85, 0x93, 0x22, 0x9c, 0x94, 0x6e, 0xa7, 0x58, 0xb2, 0x6c, 0xb2, 0x3b, 0xf5, 0x82, 0x62, - 0x58, 0xd5, 0x54, 0xd9, 0x2a, 0x5b, 0x02, 0xb6, 0x50, 0x2f, 0xf1, 0x3b, 0x7e, 0xc3, 0xaf, 0x84, - 0x67, 0xec, 0x7c, 0xd9, 0xb2, 0xca, 0x15, 0x9c, 0xd2, 0x6d, 0x33, 0xa5, 0xd7, 0x6a, 0x16, 0xd3, - 0x99, 0x69, 0xd5, 0xa8, 0xab, 0xfd, 0xb9, 0xab, 0x6d, 0x61, 0xe0, 0xaa, 0xcd, 0xf6, 0x5c, 0x65, - 0xac, 0x33, 0x7c, 0x4c, 0x88, 0x45, 0x5a, 0x8e, 0x9d, 0x3a, 0xcb, 0x6e, 0x47, 0x9d, 0xeb, 0xc3, - 0xdb, 0x2a, 0xfc, 0x05, 0x1b, 0xcc, 0x35, 0x9e, 0xed, 0x63, 0xcc, 0xf6, 0x6c, 0xec, 0x01, 0x4f, - 0x77, 0xda, 0xb6, 0xab, 0x12, 0x9d, 0xaa, 0x06, 0xa6, 0xb8, 0xd6, 0xe8, 0x8a, 0x2b, 0xde, 0x65, - 0x63, 0xe2, 0x5d, 0xad, 0xc3, 0x22, 0xf1, 0x31, 0x80, 0xe3, 0xab, 0x04, 0xeb, 0x0c, 0xab, 0xf8, - 0xaf, 0x75, 0x4c, 0x19, 0xfa, 0x1d, 0x0c, 0x55, 0x31, 0xd3, 0x8b, 0x3a, 0xd3, 0xa3, 0x20, 0x0e, - 0x66, 0x22, 0x0b, 0x17, 0x94, 0xce, 0x0c, 0x6d, 0x73, 0x36, 0xc2, 0xeb, 0x26, 0x66, 0x7a, 0x7e, - 0xcf, 0xc6, 0x6a, 0xcb, 0x09, 0xe5, 0x60, 0x80, 0xda, 0xd8, 0x88, 0xfa, 0xb8, 0xb3, 0xa2, 0xbc, - 0x39, 0xbd, 0x8a, 0xc0, 0xc9, 0xd9, 0xd8, 0x70, 0x70, 0x56, 0x26, 0xdf, 0xd9, 0x1f, 0x73, 0xdc, - 0x95, 0xb2, 0xa1, 0x39, 0xbf, 0x2a, 0x07, 0x5b, 0x0a, 0x3f, 0x5e, 0x0e, 0x8a, 0xe7, 0x26, 0x7e, - 0x04, 0x70, 0xc2, 0x0b, 0x99, 0xda, 0x56, 0x8d, 0x62, 0x74, 0xed, 0x48, 0xcc, 0xf1, 0x9e, 0x31, - 0xaf, 0x63, 0xd6, 0x23, 0xe0, 0x6d, 0x38, 0x49, 0xf7, 0x28, 0xc3, 0x55, 0xad, 0x05, 0xe2, 0xe7, - 0x20, 0xbf, 0xee, 0x02, 0xc9, 0x71, 0xab, 0xa3, 0x50, 0x13, 0xc2, 0xfd, 0xa6, 0x07, 0xb8, 0xd3, - 0x71, 0x02, 0x73, 0xfd, 0x4e, 0x60, 0x1d, 0xb3, 0x21, 0xe8, 0x3f, 0x07, 0x70, 0x42, 0xc5, 0x76, - 0x45, 0x37, 0x5a, 0x29, 0xfb, 0xfd, 0x11, 0xfa, 0x17, 0x7b, 0xd2, 0x77, 0xdd, 0x7a, 0x1c, 0x41, - 0xbe, 0x23, 0xe2, 0x54, 0xbf, 0x88, 0x5d, 0xa0, 0x3e, 0x51, 0xa3, 0x14, 0x94, 0x08, 0xa6, 0x56, - 0x9d, 0x18, 0x58, 0x6b, 0x60, 0x42, 0x4d, 0xab, 0xc6, 0x4f, 0x36, 0xbc, 0x12, 0x78, 0x71, 0x00, - 0x80, 0x3a, 0xe9, 0x69, 0x6f, 0x0b, 0x65, 0x3b, 0xcd, 0xd3, 0x70, 0xb2, 0xc5, 0x52, 0x64, 0x39, - 0xf1, 0x3e, 0x80, 0x70, 0x1d, 0x33, 0x8f, 0xf5, 0x79, 0x18, 0xae, 0xe9, 0x55, 0x4c, 0x6d, 0xdd, - 0xc0, 0x9c, 0x76, 0x58, 0x7d, 0x25, 0x40, 0x08, 0x06, 0x9c, 0x1b, 0xce, 0x28, 0xac, 0xf2, 0x6b, - 0xf4, 0x67, 0xe8, 0x3c, 0x91, 0x83, 0x69, 0x25, 0x8b, 0x54, 0x75, 0xc6, 0xc3, 0x99, 0x58, 0xb8, - 0x32, 0x40, 0x8a, 0xbc, 0x30, 0xb2, 0xdc, 0x71, 0xd5, 0x2a, 0x62, 0x75, 0x82, 0x74, 0xc8, 0x12, - 0xef, 0x05, 0x61, 0xa4, 0xcd, 0x12, 0x6d, 0xc1, 0x88, 0xc1, 0x0b, 0x95, 0x3f, 0xcd, 0x3d, 0xdc, - 0xe4, 0x60, 0x0d, 0xe1, 0xb2, 0x54, 0xa1, 0x40, 0x70, 0x9e, 0x80, 0xfe, 0x00, 0xc7, 0x88, 0x38, - 0x13, 0x01, 0xe8, 0x1f, 0xac, 0xc3, 0x3a, 0xab, 0x45, 0x8d, 0xb8, 0x18, 0x1c, 0xb2, 0x57, 0x8a, - 0x02, 0x6f, 0x48, 0x51, 0x47, 0xab, 0x8d, 0x9e, 0x44, 0xab, 0x9d, 0x3a, 0x91, 0x56, 0x0b, 0x9e, - 0x54, 0xab, 0xa1, 0x1b, 0x30, 0x48, 0x99, 0xce, 0xea, 0x34, 0xfa, 0xc1, 0xbb, 0x20, 0xee, 0x9f, - 0x89, 0x2c, 0x5c, 0xea, 0x87, 0x9a, 0xe3, 0xf6, 0x22, 0xd8, 0x15, 0xff, 0x83, 0x7d, 0xa0, 0xba, - 0x10, 0x68, 0x03, 0x9e, 0x26, 0xb8, 0x84, 0x09, 0x31, 0x6b, 0x65, 0x4d, 0xbc, 0x05, 0x68, 0x34, - 0xc4, 0x51, 0xcf, 0xbf, 0xa6, 0x45, 0x4b, 0x9c, 0xa7, 0xd4, 0x72, 0x13, 0x72, 0x8a, 0x6e, 0xc3, - 0x68, 0x11, 0x57, 0x30, 0xc3, 0x45, 0x4d, 0xe8, 0x70, 0xb1, 0x85, 0x18, 0x1e, 0x00, 0x71, 0xca, - 0xf5, 0x56, 0x5d, 0x67, 0x0f, 0xf7, 0x8f, 0x70, 0xba, 0x68, 0x52, 0xbd, 0x50, 0xe9, 0x05, 0x0c, - 0x07, 0x00, 0x3e, 0xe7, 0xb9, 0x77, 0x21, 0xb7, 0x75, 0xf3, 0xf5, 0x40, 0x08, 0x48, 0xbe, 0xc4, - 0x87, 0x00, 0x46, 0x36, 0x4d, 0x3a, 0x60, 0x07, 0xff, 0x12, 0x8e, 0x55, 0xf4, 0x02, 0xae, 0x68, - 0x25, 0xb3, 0xc2, 0x30, 0x71, 0x3b, 0x39, 0xc2, 0x65, 0x59, 0x2e, 0x42, 0x17, 0xe0, 0x38, 0xc1, - 0xb6, 0x45, 0x98, 0x56, 0x32, 0x71, 0xa5, 0x48, 0xa3, 0xfe, 0xb8, 0x7f, 0x26, 0xac, 0x8e, 0x09, - 0x61, 0x96, 0xcb, 0xd0, 0x3c, 0x3c, 0xe3, 0x1a, 0x89, 0xa4, 0x78, 0xb6, 0x01, 0x6e, 0x8b, 0x84, - 0x4e, 0xa4, 0x50, 0x78, 0x24, 0x3e, 0x0d, 0x42, 0x49, 0xc4, 0x29, 0x1a, 0x79, 0x83, 0xe1, 0x2a, - 0x9a, 0x82, 0x41, 0x86, 0x6b, 0x7a, 0x8d, 0xf1, 0x5a, 0x0b, 0xab, 0xee, 0xdd, 0x31, 0xc6, 0x90, - 0x04, 0xfd, 0x75, 0xb3, 0x28, 0x26, 0xa1, 0xea, 0x5c, 0xa2, 0x38, 0x8c, 0x14, 0x31, 0x35, 0x88, - 0xc9, 0xdf, 0xcd, 0xd1, 0x88, 0x60, 0xda, 0x26, 0x42, 0x31, 0x18, 0xf2, 0x8e, 0x39, 0x3a, 0x16, - 0x07, 0x33, 0x21, 0xb5, 0x75, 0x8f, 0xf2, 0x30, 0xc8, 0x0f, 0x45, 0x50, 0x8a, 0x2c, 0x5c, 0xeb, - 0x57, 0xaf, 0xdd, 0xdc, 0x94, 0x4d, 0xee, 0x9e, 0xa9, 0x31, 0xb2, 0xa7, 0xba, 0x58, 0xc8, 0x80, - 0x91, 0xb6, 0xf5, 0xc9, 0xad, 0x84, 0xf4, 0xd0, 0xd0, 0xe9, 0x57, 0x18, 0x02, 0xbf, 0x1d, 0x15, - 0x2d, 0x42, 0x68, 0xed, 0xd6, 0x30, 0xd1, 0x9c, 0xd5, 0x24, 0x1a, 0xe6, 0x4d, 0x1c, 0xeb, 0x7a, - 0xc6, 0x6d, 0x13, 0xef, 0x7a, 0xb5, 0x16, 0xe6, 0xd6, 0x8e, 0xa4, 0x63, 0x10, 0x8d, 0x9f, 0xc4, - 0x20, 0x9a, 0x78, 0xab, 0x41, 0x94, 0x85, 0xa1, 0x32, 0x66, 0x7c, 0x90, 0xb8, 0x23, 0x6d, 0x98, - 0x61, 0xa4, 0x9e, 0x2a, 0x8b, 0x1b, 0xb4, 0x03, 0xa1, 0x5b, 0xa6, 0x14, 0x33, 0x77, 0x54, 0x1c, - 0x63, 0x00, 0x85, 0x05, 0x48, 0x0e, 0xb3, 0xd8, 0x22, 0x8c, 0xb4, 0xe5, 0xd7, 0xa9, 0xbe, 0xbb, - 0x78, 0xcf, 0xad, 0x54, 0xe7, 0x12, 0x9d, 0x81, 0xa3, 0x0d, 0xbd, 0x52, 0xf7, 0x8a, 0x54, 0xdc, - 0x2c, 0xf9, 0xae, 0x82, 0xd8, 0x32, 0x94, 0xba, 0xf3, 0x37, 0x8c, 0xff, 0xf5, 0x40, 0x68, 0x54, - 0x0a, 0x26, 0xfe, 0x0d, 0xe0, 0x58, 0x7b, 0x5d, 0xa0, 0x2c, 0x1c, 0x35, 0x19, 0xae, 0xd2, 0xa8, - 0x98, 0xaf, 0xf3, 0xc3, 0x16, 0x95, 0x2a, 0xdc, 0xd1, 0x3c, 0x0c, 0x8a, 0x1d, 0x3d, 0xea, 0xe3, - 0x40, 0xd1, 0x2e, 0xa0, 0x8c, 0xa3, 0xe4, 0xc7, 0xeb, 0xda, 0x25, 0xee, 0xc2, 0xf1, 0x35, 0x3e, - 0x06, 0x8f, 0xbf, 0x44, 0xcc, 0x40, 0xa9, 0xa4, 0x9b, 0x15, 0xcd, 0x2c, 0xb5, 0xc6, 0x25, 0x6f, - 0xe5, 0x90, 0x3a, 0xe1, 0xc8, 0x37, 0x4a, 0xde, 0x18, 0x9c, 0xfd, 0x1e, 0xc0, 0xb3, 0x3d, 0x17, - 0x07, 0x14, 0x83, 0x53, 0xeb, 0x99, 0xbc, 0xa6, 0xe6, 0x76, 0xb4, 0xec, 0xb6, 0x7a, 0x33, 0x9d, - 0xd7, 0xd6, 0x32, 0xd9, 0xf4, 0xad, 0xcd, 0xbc, 0x34, 0x82, 0x7e, 0x01, 0xa7, 0xbb, 0x74, 0xd9, - 0x6d, 0x55, 0x5b, 0x55, 0x33, 0xe9, 0x7c, 0x46, 0x02, 0x48, 0x86, 0xb1, 0x1e, 0x6a, 0x35, 0xb3, - 0xb3, 0x99, 0x5e, 0xcd, 0x48, 0x3e, 0x34, 0x0d, 0xcf, 0x76, 0xe9, 0x73, 0xf9, 0x74, 0xfe, 0x56, - 0x4e, 0xf2, 0xa3, 0x73, 0xf0, 0x67, 0x5d, 0x2a, 0x35, 0x93, 0x5e, 0x93, 0x02, 0xe8, 0x22, 0x8c, - 0x1f, 0x51, 0x64, 0x33, 0xaa, 0xba, 0xb1, 0xb5, 0xae, 0x6d, 0xaf, 0x5c, 0xcf, 0xac, 0xe6, 0x73, - 0xd2, 0x68, 0x0f, 0xab, 0x15, 0x75, 0xfb, 0x46, 0x66, 0x4b, 0x18, 0x67, 0xb6, 0x56, 0x33, 0x39, - 0x29, 0xb8, 0xf0, 0x6d, 0x18, 0xfa, 0xd3, 0x3b, 0x1b, 0xe8, 0x3b, 0x00, 0x83, 0x62, 0x93, 0x41, - 0xc3, 0x6d, 0x3c, 0x31, 0x65, 0x50, 0x73, 0x77, 0x2d, 0xfc, 0x47, 0xf3, 0x61, 0xf4, 0x37, 0xa5, - 0x2b, 0xf7, 0x8c, 0x24, 0xc5, 0x46, 0x9d, 0xe0, 0x2a, 0xa6, 0x77, 0x92, 0x05, 0x9d, 0x9a, 0x46, - 0xb2, 0x4e, 0x31, 0xb9, 0xd4, 0xc0, 0x34, 0x69, 0x5a, 0x49, 0xb3, 0x56, 0x22, 0x3a, 0x65, 0xa4, - 0x6e, 0xb0, 0x3a, 0xc1, 0xc9, 0x5d, 0x62, 0x32, 0x7c, 0xff, 0xcb, 0xe7, 0xff, 0xf3, 0x2d, 0x27, - 0x16, 0xdd, 0x3f, 0xa6, 0xa9, 0x56, 0xe6, 0x69, 0xea, 0x6f, 0xde, 0x5c, 0x50, 0x5a, 0xc2, 0xfd, - 0x23, 0xff, 0xd5, 0xe8, 0x12, 0x98, 0x45, 0x5f, 0x03, 0xe8, 0x5f, 0xc7, 0x0c, 0xcd, 0x0e, 0xb4, - 0x44, 0x0a, 0x8e, 0x73, 0x43, 0x2c, 0x9c, 0x89, 0x7f, 0x3e, 0xfa, 0xc4, 0x07, 0x9a, 0x0f, 0xa3, - 0x57, 0x7b, 0x93, 0xac, 0x5a, 0x35, 0x93, 0x59, 0xaf, 0xe3, 0x49, 0xb0, 0x5e, 0xe4, 0x34, 0x17, - 0xd1, 0x6f, 0x7b, 0xd1, 0x7c, 0x13, 0x3b, 0xa1, 0xdd, 0x47, 0x5f, 0x01, 0x18, 0x70, 0x7a, 0x10, - 0xcd, 0x0d, 0xd6, 0xa9, 0x82, 0xe3, 0xa5, 0x61, 0xda, 0x3a, 0x71, 0xef, 0x44, 0x48, 0x2e, 0xa0, - 0xf9, 0x61, 0x49, 0xa2, 0x1f, 0x00, 0x3c, 0xe5, 0xae, 0xc8, 0x68, 0xc8, 0x5d, 0x3a, 0x96, 0x1a, - 0xd8, 0xde, 0xa5, 0xf9, 0x1f, 0xf0, 0x96, 0xd5, 0xba, 0x15, 0xdb, 0x38, 0x76, 0xb5, 0x76, 0x99, - 0xed, 0x3b, 0xd5, 0xfb, 0x19, 0x80, 0x41, 0x31, 0x12, 0xfb, 0xf7, 0x69, 0xc7, 0xe8, 0x8c, 0x4d, - 0x29, 0xe2, 0x5b, 0x8a, 0xe2, 0x7d, 0x4b, 0x51, 0x32, 0x55, 0x9b, 0xed, 0x25, 0xfe, 0xfe, 0x96, - 0x0c, 0xaf, 0xcd, 0x1e, 0xb7, 0x50, 0x97, 0xc0, 0x6c, 0xac, 0xf4, 0xe0, 0x00, 0xf8, 0xbe, 0x38, - 0x00, 0xbf, 0xea, 0xc3, 0x45, 0xbc, 0x2c, 0x9f, 0x1e, 0x00, 0xd0, 0x3c, 0x00, 0x73, 0x43, 0xbc, - 0x5f, 0xef, 0x7f, 0x1e, 0xf5, 0x49, 0x60, 0xe5, 0xff, 0xe0, 0xf1, 0xf2, 0xe8, 0xaa, 0x7a, 0x6b, - 0x6d, 0xf3, 0xc9, 0x33, 0x79, 0xe4, 0xe9, 0x33, 0x79, 0xe4, 0xe5, 0x33, 0x19, 0xfc, 0xab, 0x29, - 0x83, 0x8f, 0x9a, 0x32, 0x78, 0xd4, 0x94, 0xc1, 0x93, 0xa6, 0x0c, 0xbe, 0x69, 0xca, 0xe0, 0x45, - 0x53, 0x1e, 0x79, 0xd9, 0x94, 0xc1, 0x7f, 0x0f, 0xe5, 0x91, 0x07, 0x87, 0x32, 0x78, 0x72, 0x28, - 0x8f, 0x3c, 0x3d, 0x94, 0x47, 0xfe, 0x94, 0x2f, 0x5b, 0xf6, 0xdd, 0xb2, 0xd2, 0xb0, 0x9c, 0x5d, - 0x96, 0xe8, 0x4a, 0x9d, 0xa6, 0xf8, 0x85, 0xf3, 0xdf, 0x2e, 0x69, 0x13, 0xab, 0x61, 0x16, 0x31, - 0x49, 0x7a, 0xea, 0x94, 0x5d, 0x28, 0x5b, 0x29, 0x7c, 0x8f, 0xb9, 0x1f, 0x73, 0x5e, 0xf3, 0xf9, - 0xa8, 0x10, 0xe4, 0x92, 0xcb, 0x3f, 0x05, 0x00, 0x00, 0xff, 0xff, 0xc5, 0xaf, 0xd3, 0x06, 0x8c, - 0x13, 0x00, 0x00, + // 1634 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x68, 0x1b, 0xd9, + 0x1d, 0xf7, 0x93, 0x64, 0x45, 0x7a, 0xf2, 0xc7, 0xe4, 0x35, 0x71, 0x64, 0x35, 0x1d, 0x54, 0x25, + 0x2d, 0xc6, 0x8e, 0x46, 0xc6, 0x21, 0xb4, 0x36, 0xc1, 0xad, 0x6c, 0x4b, 0xc6, 0x89, 0x63, 0xbb, + 0x23, 0x25, 0xb4, 0x3d, 0x74, 0x18, 0x8d, 0x9e, 0x94, 0x69, 0x24, 0xcd, 0xf4, 0xbd, 0x27, 0x39, + 0xa6, 0x18, 0xda, 0x40, 0x4b, 0x8f, 0x85, 0x42, 0x21, 0x21, 0x2d, 0xb9, 0x14, 0x7a, 0xe8, 0xa1, + 0xc7, 0x05, 0x5f, 0x72, 0xdb, 0x10, 0x96, 0x25, 0xec, 0x5e, 0x72, 0xdc, 0xc8, 0x39, 0xe4, 0xb0, + 0x87, 0xb0, 0xe7, 0x5d, 0x58, 0xe6, 0xbd, 0x19, 0x45, 0x92, 0x15, 0x4b, 0xf2, 0x3a, 0x7b, 0xd2, + 0xbc, 0xff, 0xc7, 0xef, 0xfd, 0xbf, 0xe7, 0xaf, 0x81, 0x57, 0x1b, 0x98, 0x2a, 0xa6, 0x95, 0xa2, + 0xc6, 0x5d, 0x5c, 0xd5, 0x53, 0x36, 0xb1, 0x98, 0x65, 0x58, 0x15, 0xcd, 0xb6, 0x2a, 0xa6, 0x81, + 0x49, 0xca, 0xae, 0x17, 0x2a, 0xa6, 0xa1, 0x19, 0xa4, 0x5e, 0xd4, 0x6d, 0x53, 0xe1, 0x7c, 0x24, + 0x0b, 0x25, 0x45, 0x28, 0x29, 0xdd, 0x4a, 0xb1, 0x64, 0xd9, 0x64, 0x77, 0xeb, 0x05, 0xc5, 0xb0, + 0xaa, 0xa9, 0xb2, 0x55, 0xb6, 0x04, 0x6c, 0xa1, 0x5e, 0xe2, 0x27, 0x7e, 0xe0, 0x4f, 0x42, 0x33, + 0x76, 0xb1, 0x6c, 0x59, 0xe5, 0x0a, 0x4e, 0xe9, 0xb6, 0x99, 0xd2, 0x6b, 0x35, 0x8b, 0xe9, 0xcc, + 0xb4, 0x6a, 0xd4, 0xe5, 0xfe, 0xd0, 0xe5, 0xb6, 0x30, 0x70, 0xd5, 0x66, 0x7b, 0x2e, 0x33, 0xd6, + 0x69, 0x3e, 0x26, 0xc4, 0x22, 0x2d, 0xc5, 0x4e, 0x9e, 0x65, 0xb7, 0xa3, 0xce, 0xf5, 0xf1, 0xdb, + 0x2a, 0xfc, 0x1e, 0x1b, 0xcc, 0x15, 0x9e, 0xed, 0x23, 0xcc, 0xf6, 0x6c, 0xec, 0x01, 0x4f, 0x77, + 0xca, 0xb6, 0xb3, 0x12, 0x9d, 0xac, 0x06, 0xa6, 0xb8, 0xd6, 0xe8, 0xb2, 0x2b, 0xde, 0x25, 0x63, + 0xe2, 0x5d, 0xad, 0x43, 0x22, 0xf1, 0x7f, 0x00, 0xc7, 0x57, 0x09, 0xd6, 0x19, 0x56, 0xf1, 0x1f, + 0xea, 0x98, 0x32, 0xf4, 0x0b, 0x18, 0xaa, 0x62, 0xa6, 0x17, 0x75, 0xa6, 0x47, 0x41, 0x1c, 0xcc, + 0x44, 0x16, 0x2e, 0x29, 0x9d, 0x19, 0xda, 0xe6, 0xde, 0x08, 0xad, 0x5b, 0x98, 0xe9, 0xf9, 0x3d, + 0x1b, 0xab, 0x2d, 0x25, 0x94, 0x83, 0x01, 0x6a, 0x63, 0x23, 0xea, 0xe3, 0xca, 0x8a, 0x72, 0x7c, + 0x7a, 0x15, 0x81, 0x93, 0xb3, 0xb1, 0xe1, 0xe0, 0xac, 0x4c, 0x3e, 0xda, 0x1f, 0x73, 0xd4, 0x95, + 0xb2, 0xa1, 0x39, 0xbf, 0x2a, 0x07, 0x5b, 0x0a, 0x3f, 0x5f, 0x0e, 0x8a, 0x7b, 0x13, 0x5f, 0x03, + 0x38, 0xe1, 0x99, 0x4c, 0x6d, 0xab, 0x46, 0x31, 0xba, 0x7e, 0xc4, 0xe6, 0x78, 0x4f, 0x9b, 0xd7, + 0x31, 0xeb, 0x61, 0xf0, 0x36, 0x9c, 0xa4, 0x7b, 0x94, 0xe1, 0xaa, 0xd6, 0x02, 0xf1, 0x73, 0x90, + 0x9f, 0x76, 0x81, 0xe4, 0xb8, 0xd4, 0x51, 0xa8, 0x09, 0xa1, 0x7e, 0xcb, 0x03, 0xdc, 0xe9, 0x88, + 0xc0, 0x5c, 0xbf, 0x08, 0xac, 0x63, 0x36, 0x84, 0xfb, 0xaf, 0x01, 0x9c, 0x50, 0xb1, 0x5d, 0xd1, + 0x8d, 0x56, 0xca, 0x7e, 0x79, 0xc4, 0xfd, 0xcb, 0x3d, 0xdd, 0x77, 0xd5, 0x7a, 0x84, 0x20, 0xdf, + 0x61, 0x71, 0xaa, 0x9f, 0xc5, 0x2e, 0x50, 0x1f, 0xab, 0x51, 0x0a, 0x4a, 0x04, 0x53, 0xab, 0x4e, + 0x0c, 0xac, 0x35, 0x30, 0xa1, 0xa6, 0x55, 0xe3, 0x91, 0x0d, 0xaf, 0x04, 0xde, 0x1c, 0x00, 0xa0, + 0x4e, 0x7a, 0xdc, 0x3b, 0x82, 0xd9, 0xee, 0xe6, 0x59, 0x38, 0xd9, 0xf2, 0x52, 0x64, 0x39, 0xf1, + 0x6f, 0x00, 0xe1, 0x3a, 0x66, 0x9e, 0xd7, 0x17, 0x61, 0xb8, 0xa6, 0x57, 0x31, 0xb5, 0x75, 0x03, + 0x73, 0xb7, 0xc3, 0xea, 0x3b, 0x02, 0x42, 0x30, 0xe0, 0x1c, 0xb8, 0x47, 0x61, 0x95, 0x3f, 0xa3, + 0xdf, 0x41, 0xe7, 0x46, 0x0e, 0xa6, 0x95, 0x2c, 0x52, 0xd5, 0x19, 0x37, 0x67, 0x62, 0xe1, 0xda, + 0x00, 0x29, 0xf2, 0xcc, 0xc8, 0x72, 0xc5, 0x55, 0xab, 0x88, 0xd5, 0x09, 0xd2, 0x41, 0x4b, 0xfc, + 0x2b, 0x08, 0x23, 0x6d, 0x92, 0x68, 0x0b, 0x46, 0x0c, 0x5e, 0xa8, 0xfc, 0x36, 0x37, 0xb8, 0xc9, + 0xc1, 0x1a, 0xc2, 0xf5, 0x52, 0x85, 0x02, 0xc1, 0xb9, 0x01, 0xfd, 0x0a, 0x8e, 0x11, 0x11, 0x13, + 0x01, 0xe8, 0x1f, 0xac, 0xc3, 0x3a, 0xab, 0x45, 0x8d, 0xb8, 0x18, 0x1c, 0xb2, 0x57, 0x8a, 0x02, + 0xc7, 0xa4, 0xa8, 0xa3, 0xd5, 0x46, 0x4f, 0xa3, 0xd5, 0xce, 0x9c, 0x4a, 0xab, 0x05, 0x4f, 0xab, + 0xd5, 0xd0, 0x4d, 0x18, 0xa4, 0x4c, 0x67, 0x75, 0x1a, 0x7d, 0xf2, 0x18, 0xc4, 0xfd, 0x33, 0x91, + 0x85, 0x2b, 0xfd, 0x50, 0x73, 0x5c, 0x5e, 0x18, 0xbb, 0xe2, 0x7f, 0xba, 0x0f, 0x54, 0x17, 0x02, + 0x6d, 0xc0, 0xb3, 0x04, 0x97, 0x30, 0x21, 0x66, 0xad, 0xac, 0x89, 0xb7, 0x00, 0x8d, 0x86, 0x38, + 0xea, 0xc5, 0xf7, 0xb4, 0x68, 0x89, 0xfb, 0x29, 0xb5, 0xd4, 0x04, 0x9d, 0xa2, 0x3b, 0x30, 0x5a, + 0xc4, 0x15, 0xcc, 0x70, 0x51, 0x13, 0x3c, 0x5c, 0x6c, 0x21, 0x86, 0x07, 0x40, 0x9c, 0x72, 0xb5, + 0x55, 0x57, 0xd9, 0xc3, 0xfd, 0x35, 0x9c, 0x2e, 0x9a, 0x54, 0x2f, 0x54, 0x7a, 0x01, 0xc3, 0x01, + 0x80, 0x2f, 0x78, 0xea, 0x5d, 0xc8, 0x6d, 0xdd, 0x7c, 0x23, 0x10, 0x02, 0x92, 0x2f, 0xf1, 0x1f, + 0x00, 0x23, 0x9b, 0x26, 0x1d, 0xb0, 0x83, 0x7f, 0x0c, 0xc7, 0x2a, 0x7a, 0x01, 0x57, 0xb4, 0x92, + 0x59, 0x61, 0x98, 0xb8, 0x9d, 0x1c, 0xe1, 0xb4, 0x2c, 0x27, 0xa1, 0x4b, 0x70, 0x9c, 0x60, 0xdb, + 0x22, 0x4c, 0x2b, 0x99, 0xb8, 0x52, 0xa4, 0x51, 0x7f, 0xdc, 0x3f, 0x13, 0x56, 0xc7, 0x04, 0x31, + 0xcb, 0x69, 0x68, 0x1e, 0x9e, 0x73, 0x85, 0x44, 0x52, 0x3c, 0xd9, 0x00, 0x97, 0x45, 0x82, 0x27, + 0x52, 0x28, 0x34, 0x12, 0x9f, 0x04, 0xa1, 0x24, 0xec, 0x14, 0x8d, 0xbc, 0xc1, 0x70, 0x15, 0x4d, + 0xc1, 0x20, 0xc3, 0x35, 0xbd, 0xc6, 0x78, 0xad, 0x85, 0x55, 0xf7, 0x74, 0x82, 0x31, 0x24, 0x41, + 0x7f, 0xdd, 0x2c, 0x8a, 0x49, 0xa8, 0x3a, 0x8f, 0x28, 0x0e, 0x23, 0x45, 0x4c, 0x0d, 0x62, 0xf2, + 0x77, 0x73, 0x34, 0x22, 0x3c, 0x6d, 0x23, 0xa1, 0x18, 0x0c, 0x79, 0x61, 0x8e, 0x8e, 0xc5, 0xc1, + 0x4c, 0x48, 0x6d, 0x9d, 0x51, 0x1e, 0x06, 0x79, 0x50, 0x84, 0x4b, 0x91, 0x85, 0xeb, 0xfd, 0xea, + 0xb5, 0xdb, 0x37, 0x65, 0x93, 0xab, 0x67, 0x6a, 0x8c, 0xec, 0xa9, 0x2e, 0x16, 0x32, 0x60, 0xa4, + 0x6d, 0x7d, 0x72, 0x2b, 0x21, 0x3d, 0x34, 0x74, 0xfa, 0x1d, 0x86, 0xc0, 0x6f, 0x47, 0x45, 0x8b, + 0x10, 0x5a, 0xbb, 0x35, 0x4c, 0x34, 0x67, 0x35, 0x89, 0x86, 0x79, 0x13, 0xc7, 0xba, 0xee, 0xb8, + 0x63, 0xe2, 0x5d, 0xaf, 0xd6, 0xc2, 0x5c, 0xda, 0xa1, 0x74, 0x0c, 0xa2, 0xf1, 0xd3, 0x18, 0x44, + 0x13, 0xdf, 0x69, 0x10, 0x65, 0x61, 0xa8, 0x8c, 0x19, 0x1f, 0x24, 0xee, 0x48, 0x1b, 0x66, 0x18, + 0xa9, 0x67, 0xca, 0xe2, 0x80, 0x76, 0x20, 0x74, 0xcb, 0x94, 0x62, 0xe6, 0x8e, 0x8a, 0x13, 0x0c, + 0xa0, 0xb0, 0x00, 0xc9, 0x61, 0x16, 0x5b, 0x84, 0x91, 0xb6, 0xfc, 0x3a, 0xd5, 0x77, 0x0f, 0xef, + 0xb9, 0x95, 0xea, 0x3c, 0xa2, 0x73, 0x70, 0xb4, 0xa1, 0x57, 0xea, 0x5e, 0x91, 0x8a, 0xc3, 0x92, + 0xef, 0xe7, 0x20, 0xb6, 0x0c, 0xa5, 0xee, 0xfc, 0x0d, 0xa3, 0x7f, 0x23, 0x10, 0x1a, 0x95, 0x82, + 0x89, 0xbf, 0x01, 0x38, 0xd6, 0x5e, 0x17, 0x28, 0x0b, 0x47, 0x4d, 0x86, 0xab, 0x34, 0x2a, 0xe6, + 0xeb, 0xfc, 0xb0, 0x45, 0xa5, 0x0a, 0x75, 0x34, 0x0f, 0x83, 0x62, 0x47, 0x8f, 0xfa, 0x38, 0x50, + 0xb4, 0x0b, 0x28, 0xe3, 0x30, 0x79, 0x78, 0x5d, 0xb9, 0xc4, 0x3d, 0x38, 0xbe, 0xc6, 0xc7, 0xe0, + 0xc9, 0x97, 0x88, 0x19, 0x28, 0x95, 0x74, 0xb3, 0xa2, 0x99, 0xa5, 0xd6, 0xb8, 0xe4, 0xad, 0x1c, + 0x52, 0x27, 0x1c, 0xfa, 0x46, 0xc9, 0x1b, 0x83, 0xb3, 0x5f, 0x01, 0x78, 0xbe, 0xe7, 0xe2, 0x80, + 0x62, 0x70, 0x6a, 0x3d, 0x93, 0xd7, 0xd4, 0xdc, 0x8e, 0x96, 0xdd, 0x56, 0x6f, 0xa5, 0xf3, 0xda, + 0x5a, 0x26, 0x9b, 0xbe, 0xbd, 0x99, 0x97, 0x46, 0xd0, 0x8f, 0xe0, 0x74, 0x17, 0x2f, 0xbb, 0xad, + 0x6a, 0xab, 0x6a, 0x26, 0x9d, 0xcf, 0x48, 0x00, 0xc9, 0x30, 0xd6, 0x83, 0xad, 0x66, 0x76, 0x36, + 0xd3, 0xab, 0x19, 0xc9, 0x87, 0xa6, 0xe1, 0xf9, 0x2e, 0x7e, 0x2e, 0x9f, 0xce, 0xdf, 0xce, 0x49, + 0x7e, 0x74, 0x01, 0xfe, 0xa0, 0x8b, 0xa5, 0x66, 0xd2, 0x6b, 0x52, 0x00, 0x5d, 0x86, 0xf1, 0x23, + 0x8c, 0x6c, 0x46, 0x55, 0x37, 0xb6, 0xd6, 0xb5, 0xed, 0x95, 0x1b, 0x99, 0xd5, 0x7c, 0x4e, 0x1a, + 0xed, 0x21, 0xb5, 0xa2, 0x6e, 0xdf, 0xcc, 0x6c, 0x09, 0xe1, 0xcc, 0xd6, 0x6a, 0x26, 0x27, 0x05, + 0x17, 0xfe, 0x12, 0x81, 0xfe, 0xf4, 0xce, 0x06, 0xfa, 0xab, 0x0f, 0x06, 0xc5, 0x26, 0x83, 0x86, + 0xdb, 0x78, 0x62, 0xca, 0xa0, 0xe2, 0xee, 0x5a, 0xf8, 0x18, 0x34, 0x3f, 0x8e, 0xe6, 0x4b, 0xd7, + 0xee, 0x1b, 0x49, 0x8a, 0x8d, 0x3a, 0xc1, 0x55, 0x4c, 0xef, 0x26, 0x0b, 0x3a, 0x35, 0x8d, 0x64, + 0x9d, 0x62, 0x72, 0xa5, 0x9b, 0x45, 0x99, 0x5e, 0x2b, 0xea, 0xa4, 0x28, 0xb8, 0x0d, 0x4c, 0x93, + 0xa6, 0x95, 0x34, 0x6b, 0x25, 0xa2, 0x53, 0x46, 0xea, 0x06, 0xab, 0x13, 0x9c, 0xdc, 0x25, 0x26, + 0xc3, 0x0f, 0x3e, 0x7f, 0xfd, 0x0f, 0xdf, 0x72, 0x62, 0xd1, 0xfd, 0xdf, 0x9a, 0x6a, 0x15, 0x06, + 0x4d, 0xfd, 0xd1, 0x1b, 0x1b, 0x4a, 0x8b, 0xb8, 0x7f, 0xe4, 0xaf, 0x1c, 0x5d, 0x02, 0xb3, 0xe8, + 0xcf, 0x3e, 0xe8, 0x5f, 0xc7, 0x0c, 0xcd, 0x0e, 0xb4, 0x63, 0x8a, 0x10, 0xcc, 0x0d, 0xb1, 0x8f, + 0x26, 0x9e, 0x80, 0x67, 0x1f, 0xf9, 0x9c, 0x18, 0xfc, 0xa6, 0x77, 0x0c, 0xaa, 0x56, 0xcd, 0x64, + 0xd6, 0x31, 0x61, 0xf0, 0x04, 0x7a, 0x47, 0x82, 0x60, 0xbd, 0xc8, 0x03, 0xb1, 0x88, 0x7e, 0xd6, + 0x2b, 0x10, 0xc7, 0xf9, 0x2f, 0xb8, 0xfb, 0xe8, 0x1b, 0x00, 0x03, 0x4e, 0x13, 0xa3, 0xb9, 0xc1, + 0x5a, 0x5d, 0x44, 0xe1, 0xca, 0x30, 0x73, 0x21, 0xf1, 0xf0, 0x7b, 0x0a, 0xc3, 0x02, 0x9a, 0x1f, + 0x36, 0x0c, 0xe8, 0xa1, 0x0f, 0x9e, 0x71, 0xb7, 0x70, 0x34, 0xe4, 0xba, 0x1e, 0x4b, 0x0d, 0x2c, + 0xef, 0x06, 0xe2, 0x7f, 0x1f, 0xb6, 0x1f, 0xb6, 0x62, 0x1b, 0x27, 0xee, 0x87, 0x2e, 0xb1, 0x7d, + 0xa7, 0x3f, 0xbe, 0x04, 0x30, 0x28, 0x66, 0x72, 0xff, 0x41, 0xd1, 0x31, 0xbb, 0x63, 0x53, 0x8a, + 0xf8, 0x98, 0xa3, 0x78, 0x1f, 0x73, 0x94, 0x4c, 0xd5, 0x66, 0x7b, 0x89, 0x47, 0x1f, 0x36, 0x00, + 0xd7, 0x67, 0x4f, 0xda, 0x07, 0x4b, 0x60, 0x36, 0x56, 0x7a, 0x7a, 0x00, 0x7c, 0x9f, 0x1d, 0x80, + 0x9f, 0xf4, 0x71, 0x55, 0xbc, 0xcc, 0x5f, 0x1e, 0x00, 0xd0, 0x3c, 0x00, 0x73, 0x43, 0xbc, 0xff, + 0x1f, 0x7c, 0x1a, 0xf5, 0x49, 0x60, 0xe5, 0x9f, 0xe0, 0xf9, 0xf2, 0xe8, 0xaa, 0x7a, 0x7b, 0x6d, + 0xf3, 0xc5, 0x2b, 0x79, 0xe4, 0xe5, 0x2b, 0x79, 0xe4, 0xed, 0x2b, 0x19, 0xfc, 0xa9, 0x29, 0x83, + 0xff, 0x36, 0x65, 0xf0, 0xac, 0x29, 0x83, 0x17, 0x4d, 0x19, 0x7c, 0xd1, 0x94, 0xc1, 0x9b, 0xa6, + 0x3c, 0xf2, 0xb6, 0x29, 0x83, 0xbf, 0x1f, 0xca, 0x23, 0x4f, 0x0f, 0x65, 0xf0, 0xe2, 0x50, 0x1e, + 0x79, 0x79, 0x28, 0x8f, 0xfc, 0x36, 0x5f, 0xb6, 0xec, 0x7b, 0x65, 0xa5, 0x61, 0x39, 0xbb, 0x36, + 0xd1, 0x95, 0x3a, 0x4d, 0xf1, 0x07, 0xe7, 0xbf, 0x67, 0xd2, 0x26, 0x56, 0xc3, 0x2c, 0x62, 0x92, + 0xf4, 0xd8, 0x29, 0xbb, 0x50, 0xb6, 0x52, 0xf8, 0x3e, 0x73, 0x3f, 0x36, 0xbd, 0xe7, 0xf3, 0x56, + 0x21, 0xc8, 0x29, 0x57, 0xbf, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xbc, 0x04, 0x2e, 0xfb, 0x2c, 0x14, + 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/protocol_policer/public_crudapi.vesapi.go b/pbgo/extschema/schema/protocol_policer/public_crudapi.vesapi.go index dae05f7ed..90f7acc26 100644 --- a/pbgo/extschema/schema/protocol_policer/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/protocol_policer/public_crudapi.vesapi.go @@ -2936,10 +2936,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2996,10 +3000,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3102,10 +3110,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/public_ip/crudapi/api.vesapi.go b/pbgo/extschema/schema/public_ip/crudapi/api.vesapi.go index 92fa63198..a96931bbf 100644 --- a/pbgo/extschema/schema/public_ip/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/public_ip/crudapi/api.vesapi.go @@ -3106,10 +3106,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/public_ip/object.pb.go b/pbgo/extschema/schema/public_ip/object.pb.go index cb85ef295..4298af714 100644 --- a/pbgo/extschema/schema/public_ip/object.pb.go +++ b/pbgo/extschema/schema/public_ip/object.pb.go @@ -234,40 +234,45 @@ func init() { } var fileDescriptor_a4f37fee36356fbf = []byte{ - // 522 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0x12, 0x89, 0x75, 0x12, 0xda, 0x90, 0x22, 0xae, 0x55, 0x87, 0x9a, 0x0a, 0xf6, - 0x92, 0x59, 0xa8, 0x88, 0x58, 0xa4, 0x4a, 0x3d, 0x78, 0xb0, 0x41, 0x48, 0x3c, 0x79, 0x09, 0xbb, - 0x9b, 0x97, 0xcd, 0x68, 0x36, 0x33, 0xec, 0xcc, 0x2e, 0xcd, 0x41, 0x50, 0xaf, 0x5e, 0xfc, 0x33, - 0xc4, 0xbf, 0xc2, 0x7a, 0x12, 0x4f, 0xa1, 0xa7, 0x1c, 0xcd, 0xe6, 0xa2, 0xb7, 0xfe, 0x09, 0x92, - 0xd9, 0xec, 0xd2, 0x0d, 0x09, 0x78, 0xda, 0x79, 0xbc, 0xcf, 0xfb, 0xbe, 0x9f, 0x8b, 0xef, 0x45, - 0x20, 0x29, 0xe3, 0x96, 0x74, 0xfb, 0xe0, 0xdb, 0x96, 0x08, 0x9d, 0x01, 0x73, 0x3b, 0x4c, 0x58, - 0xdc, 0x79, 0x0b, 0xae, 0xa2, 0x22, 0xe0, 0x8a, 0xd7, 0x6e, 0x24, 0x14, 0x4d, 0x28, 0x9a, 0x51, - 0x3b, 0x0d, 0x8f, 0xa9, 0x7e, 0xe8, 0x50, 0x97, 0xfb, 0x96, 0xc7, 0x3d, 0x6e, 0x69, 0xde, 0x09, - 0x7b, 0xda, 0xd2, 0x86, 0x7e, 0x25, 0x3a, 0x3b, 0xb7, 0xf2, 0xd9, 0xb8, 0x50, 0x8c, 0x0f, 0xe5, - 0xc2, 0xb9, 0xb7, 0xae, 0x14, 0x35, 0x12, 0x90, 0x42, 0x37, 0xf3, 0xd0, 0x65, 0x57, 0x3d, 0xef, - 0x8a, 0x40, 0xc2, 0x30, 0xca, 0xe7, 0xa8, 0x7f, 0x2c, 0xe0, 0xd2, 0x2b, 0xdd, 0x59, 0xed, 0x31, - 0xde, 0xf0, 0x41, 0xd9, 0x5d, 0x5b, 0xd9, 0x26, 0xda, 0x45, 0xfb, 0xe5, 0x83, 0x3b, 0x34, 0xdf, - 0x66, 0x02, 0x36, 0x41, 0xd9, 0xaf, 0x47, 0x02, 0x5a, 0x19, 0x5e, 0x3b, 0xc1, 0x5b, 0x72, 0x24, - 0x15, 0xf8, 0x9d, 0x4c, 0xa1, 0xa0, 0x15, 0xf6, 0x96, 0x14, 0xda, 0x9a, 0x5a, 0xd2, 0xd9, 0x4c, - 0x62, 0x9b, 0xa9, 0xda, 0x43, 0x7c, 0x45, 0x0a, 0x70, 0xcd, 0xa2, 0x96, 0xb8, 0x4b, 0xd7, 0xcc, - 0x9a, 0xb6, 0x05, 0xb8, 0x5a, 0x40, 0xe3, 0x87, 0x8f, 0xce, 0x8f, 0xae, 0xe3, 0x6d, 0xbc, 0x35, - 0x37, 0xa8, 0xe7, 0x76, 0xf4, 0x97, 0x89, 0x6a, 0xe1, 0xd3, 0xd3, 0x92, 0xec, 0xdb, 0x01, 0x74, - 0x7f, 0x9c, 0x99, 0x85, 0x2a, 0xfa, 0x75, 0x66, 0x56, 0x22, 0x90, 0x0d, 0xc6, 0x1b, 0x22, 0xe0, - 0xa7, 0xa3, 0xfa, 0x09, 0xde, 0x48, 0xa5, 0x6a, 0xcf, 0xf0, 0xd5, 0x45, 0xe8, 0xa2, 0x83, 0xfb, - 0x6b, 0xd3, 0xbf, 0x18, 0x70, 0xc7, 0x1e, 0x64, 0x45, 0x94, 0x3c, 0x77, 0xfe, 0xae, 0xff, 0x45, - 0xb8, 0xd2, 0x56, 0xb6, 0x0a, 0xe5, 0x7f, 0xcf, 0x35, 0xc1, 0x57, 0xcc, 0xf5, 0x25, 0x2e, 0x27, - 0x67, 0xd7, 0x09, 0xa0, 0x27, 0xcd, 0xc2, 0x6e, 0x71, 0xbf, 0x7c, 0x70, 0x7b, 0xe5, 0x56, 0x5a, - 0xd0, 0x9b, 0x07, 0x1f, 0x57, 0xbe, 0xbd, 0xbf, 0x96, 0xd5, 0xd8, 0xc2, 0x3c, 0x75, 0xca, 0xda, - 0x13, 0x8c, 0x5d, 0x3e, 0xec, 0x32, 0xbd, 0x7e, 0xb3, 0xb8, 0x52, 0xeb, 0x79, 0x0a, 0xe8, 0x42, - 0x2e, 0xf1, 0x87, 0xdb, 0xe7, 0x47, 0x55, 0xbc, 0x89, 0x2b, 0x69, 0x6d, 0x34, 0x64, 0xdd, 0xe3, - 0xcf, 0x68, 0x3c, 0x25, 0xc6, 0x64, 0x4a, 0x8c, 0x8b, 0x29, 0x41, 0x1f, 0x62, 0x82, 0xbe, 0xc6, - 0x04, 0xfd, 0x8c, 0x09, 0x1a, 0xc7, 0x04, 0x4d, 0x62, 0x82, 0x7e, 0xc7, 0x04, 0xfd, 0x89, 0x89, - 0x71, 0x11, 0x13, 0xf4, 0x65, 0x46, 0x8c, 0xef, 0x33, 0x82, 0xc6, 0x33, 0x62, 0x4c, 0x66, 0xc4, - 0x78, 0xd3, 0xf4, 0xb8, 0x78, 0xe7, 0xd1, 0x88, 0x0f, 0x14, 0x04, 0x81, 0x4d, 0x43, 0x69, 0xe9, - 0x47, 0x8f, 0x07, 0xfe, 0x7c, 0x37, 0x11, 0xeb, 0x42, 0xd0, 0x48, 0xdd, 0x96, 0x70, 0x3c, 0x6e, - 0xc1, 0xa9, 0x5a, 0xdc, 0xf3, 0xf2, 0x6f, 0xe1, 0x94, 0xf4, 0x49, 0x3f, 0xf8, 0x17, 0x00, 0x00, - 0xff, 0xff, 0xfe, 0xfa, 0x95, 0xb4, 0xc3, 0x03, 0x00, 0x00, + // 602 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0xc1, 0x4f, 0x13, 0x4f, + 0x14, 0xc7, 0x3b, 0x2d, 0x29, 0xfc, 0x06, 0x02, 0x64, 0xc9, 0x2f, 0x56, 0xd4, 0x09, 0x16, 0x13, + 0x39, 0xb8, 0xb3, 0x09, 0x86, 0x83, 0xc4, 0xa0, 0x81, 0x03, 0x26, 0x82, 0x98, 0xe2, 0xc9, 0x4b, + 0x33, 0x3b, 0x7d, 0x5d, 0x46, 0xdb, 0xce, 0x64, 0x67, 0x76, 0xa5, 0x07, 0x13, 0xe3, 0xd5, 0x8b, + 0xff, 0x81, 0x57, 0xe3, 0x5f, 0x21, 0x9e, 0x3c, 0x12, 0x4e, 0x1c, 0x65, 0x7b, 0x51, 0x4f, 0x24, + 0xfe, 0x03, 0xa6, 0xb3, 0xdd, 0x86, 0xc5, 0x36, 0xf1, 0xe0, 0x69, 0xe7, 0xed, 0xf7, 0x33, 0xdf, + 0x79, 0xf3, 0xe6, 0x3d, 0x7c, 0x2b, 0x06, 0x4d, 0x85, 0xf4, 0x34, 0x3f, 0x80, 0x36, 0xf3, 0x54, + 0xe4, 0xb7, 0x04, 0xaf, 0x0b, 0xe5, 0x49, 0xff, 0x05, 0x70, 0x43, 0x55, 0x28, 0x8d, 0x74, 0xae, + 0xa4, 0x14, 0x4d, 0x29, 0x3a, 0xa4, 0x16, 0xdd, 0x40, 0x98, 0x83, 0xc8, 0xa7, 0x5c, 0xb6, 0xbd, + 0x40, 0x06, 0xd2, 0xb3, 0xbc, 0x1f, 0x35, 0x6d, 0x64, 0x03, 0xbb, 0x4a, 0x7d, 0x16, 0xaf, 0xe5, + 0x4f, 0x93, 0xca, 0x08, 0xd9, 0xd1, 0x03, 0x71, 0x79, 0x5c, 0x2a, 0xa6, 0xab, 0x20, 0x83, 0xae, + 0xe6, 0xa1, 0x8b, 0x52, 0x35, 0x2f, 0xc5, 0xa0, 0xa1, 0x13, 0xe7, 0xcf, 0xa8, 0xfe, 0x2c, 0xe1, + 0xf2, 0x9e, 0xbd, 0x99, 0x73, 0x0f, 0x4f, 0xb5, 0xc1, 0xb0, 0x06, 0x33, 0xac, 0x82, 0x96, 0xd0, + 0xca, 0xf4, 0xea, 0x0d, 0x9a, 0xbf, 0x66, 0x0a, 0xee, 0x82, 0x61, 0xcf, 0xba, 0x0a, 0x6a, 0x43, + 0xdc, 0xd9, 0xc1, 0x73, 0xba, 0xab, 0x0d, 0xb4, 0xeb, 0x43, 0x87, 0xa2, 0x75, 0x58, 0xbe, 0xe4, + 0xb0, 0x6f, 0xa9, 0x4b, 0x3e, 0xb3, 0xe9, 0xde, 0xdd, 0xcc, 0x6d, 0x0d, 0x4f, 0x68, 0x05, 0xbc, + 0x52, 0xb2, 0x16, 0x37, 0xe9, 0x98, 0x5a, 0xd3, 0x7d, 0x05, 0xdc, 0x1a, 0x58, 0x7c, 0xfd, 0x43, + 0xf1, 0x64, 0xe3, 0x7f, 0xbc, 0x80, 0xe7, 0xfa, 0x11, 0x0d, 0x78, 0xdd, 0x7e, 0x85, 0x9a, 0x2f, + 0xbe, 0x7d, 0x50, 0xd6, 0x07, 0x2c, 0x84, 0xc6, 0x97, 0xa3, 0x4a, 0x71, 0x1e, 0x9d, 0x1c, 0x55, + 0x7e, 0x21, 0xbc, 0x87, 0x4b, 0xdb, 0x60, 0x9c, 0x47, 0x31, 0x68, 0x57, 0x48, 0x57, 0x85, 0xf2, + 0xb0, 0xeb, 0x86, 0xc0, 0x1a, 0x77, 0x96, 0x9a, 0x6b, 0x87, 0xdc, 0xe5, 0xb2, 0xa3, 0x65, 0x0b, + 0x5c, 0x9f, 0x69, 0xc1, 0xdd, 0xb6, 0xec, 0x08, 0x23, 0xc3, 0x3f, 0x35, 0xc8, 0x24, 0xfc, 0x04, + 0x4f, 0xd6, 0x40, 0xb5, 0x18, 0x07, 0x67, 0x2b, 0x67, 0xfa, 0x2a, 0x14, 0x06, 0x46, 0xba, 0x46, + 0x1a, 0x46, 0x5a, 0xf6, 0xff, 0xe3, 0xa7, 0x78, 0x62, 0x47, 0xe8, 0x7f, 0x98, 0x61, 0x75, 0x07, + 0x4f, 0x65, 0x35, 0x73, 0x1e, 0xe2, 0xc9, 0x41, 0x89, 0x06, 0x4f, 0x75, 0x7b, 0x6c, 0x9d, 0xb7, + 0x5b, 0xd2, 0x67, 0xad, 0x61, 0xb5, 0xcb, 0x01, 0xef, 0xaf, 0xab, 0x3f, 0x10, 0x9e, 0xd9, 0x37, + 0xcc, 0x44, 0xfa, 0xaf, 0x1b, 0x28, 0xc5, 0x47, 0x34, 0xd0, 0x63, 0x3c, 0x9d, 0xce, 0x57, 0x3d, + 0x84, 0xa6, 0xae, 0x14, 0x97, 0x4a, 0x2b, 0xd3, 0xab, 0xd7, 0x47, 0xb6, 0x5f, 0x0d, 0x9a, 0xfd, + 0xcd, 0x9b, 0x33, 0x9f, 0x5e, 0xff, 0x37, 0xcc, 0xb1, 0x86, 0x65, 0x26, 0x6a, 0xe7, 0x3e, 0xc6, + 0x5c, 0x76, 0x1a, 0xc2, 0xf6, 0x79, 0xa5, 0x34, 0xd2, 0x6b, 0x2b, 0x03, 0x6c, 0x22, 0x17, 0xf8, + 0xf5, 0x85, 0x93, 0x8d, 0x79, 0x3c, 0x8b, 0x67, 0xb2, 0xdc, 0x68, 0x24, 0x1a, 0x9b, 0xef, 0xd0, + 0xf1, 0x19, 0x29, 0x9c, 0x9e, 0x91, 0xc2, 0xf9, 0x19, 0x41, 0x6f, 0x12, 0x82, 0x3e, 0x26, 0x04, + 0x7d, 0x4d, 0x08, 0x3a, 0x4e, 0x08, 0x3a, 0x4d, 0x08, 0xfa, 0x96, 0x10, 0xf4, 0x3d, 0x21, 0x85, + 0xf3, 0x84, 0xa0, 0xf7, 0x3d, 0x52, 0xf8, 0xdc, 0x23, 0xe8, 0xb8, 0x47, 0x0a, 0xa7, 0x3d, 0x52, + 0x78, 0xbe, 0x1b, 0x48, 0xf5, 0x32, 0xa0, 0xb1, 0x6c, 0x19, 0x08, 0x43, 0x46, 0x23, 0xed, 0xd9, + 0x45, 0x53, 0x86, 0xed, 0xfe, 0xbb, 0xc6, 0xa2, 0x01, 0xa1, 0x9b, 0xc9, 0x9e, 0xf2, 0x03, 0xe9, + 0xc1, 0xa1, 0x19, 0x0c, 0xee, 0xe5, 0xf9, 0xf7, 0xcb, 0x76, 0x76, 0xef, 0xfe, 0x0e, 0x00, 0x00, + 0xff, 0xff, 0x7e, 0x8c, 0x47, 0xf2, 0xac, 0x04, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/public_ip/public_crudapi.pb.go b/pbgo/extschema/schema/public_ip/public_crudapi.pb.go index 3c8e1d483..a3e0c64ea 100644 --- a/pbgo/extschema/schema/public_ip/public_crudapi.pb.go +++ b/pbgo/extschema/schema/public_ip/public_crudapi.pb.go @@ -822,94 +822,97 @@ func init() { } var fileDescriptor_24469489c7028164 = []byte{ - // 1388 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcf, 0x6f, 0x1b, 0xc5, - 0x17, 0xcf, 0xd8, 0x8e, 0x1b, 0x8f, 0xd3, 0x64, 0x3b, 0xdf, 0xfe, 0xd8, 0xfa, 0x5b, 0xad, 0x8c, - 0x9b, 0x82, 0x5b, 0xc8, 0xba, 0x32, 0x42, 0xa2, 0x11, 0x6a, 0xb1, 0x53, 0x3b, 0x4a, 0x48, 0x9a, - 0x32, 0x76, 0x4b, 0x85, 0x90, 0x56, 0x6b, 0xfb, 0xc5, 0x5d, 0x6a, 0x7b, 0x97, 0xdd, 0xb1, 0x53, - 0x0b, 0x45, 0x82, 0xde, 0x91, 0x90, 0x38, 0x20, 0x21, 0x24, 0x90, 0x10, 0x12, 0x47, 0x8e, 0x95, - 0x72, 0x29, 0xa7, 0x56, 0x3d, 0xa0, 0x8a, 0x5e, 0x7a, 0x41, 0xa2, 0x0e, 0x87, 0x4a, 0x5c, 0xfa, - 0x27, 0xa0, 0x9d, 0x19, 0xbb, 0xb6, 0x6b, 0x37, 0x2e, 0x70, 0xf2, 0xcc, 0x7b, 0x9f, 0xcf, 0x67, - 0xde, 0x9b, 0x79, 0xf3, 0x76, 0x8c, 0xdf, 0x68, 0x81, 0xa7, 0x5b, 0x76, 0xca, 0x2b, 0x5f, 0x87, - 0xba, 0x99, 0x72, 0x9a, 0xa5, 0x9a, 0x55, 0x36, 0x2c, 0xa7, 0x3b, 0x2a, 0xbb, 0xcd, 0x8a, 0xe9, - 0x58, 0xba, 0xe3, 0xda, 0xcc, 0x26, 0xc7, 0x04, 0x5a, 0x17, 0x68, 0xbd, 0x87, 0x8e, 0x2d, 0x56, - 0x2d, 0x76, 0xbd, 0x59, 0xd2, 0xcb, 0x76, 0x3d, 0x55, 0xb5, 0xab, 0x76, 0x8a, 0xe3, 0x4b, 0xcd, - 0x2d, 0x3e, 0xe3, 0x13, 0x3e, 0x12, 0x3a, 0xb1, 0x13, 0x55, 0xdb, 0xae, 0xd6, 0x20, 0x65, 0x3a, - 0x56, 0xca, 0x6c, 0x34, 0x6c, 0x66, 0x32, 0xcb, 0x6e, 0x78, 0xd2, 0xfb, 0x7f, 0xe9, 0xed, 0x69, - 0x40, 0xdd, 0x61, 0x6d, 0xe9, 0x8c, 0x0d, 0x06, 0x0c, 0xae, 0x6b, 0xbb, 0x3d, 0xe2, 0xa0, 0xcf, - 0x76, 0xfa, 0x55, 0x17, 0xc6, 0x65, 0x6a, 0x97, 0x3e, 0x86, 0x32, 0x93, 0xa8, 0x93, 0xe3, 0x50, - 0xac, 0xed, 0x40, 0x57, 0xea, 0xf8, 0x20, 0xa8, 0xdf, 0x95, 0x18, 0x74, 0xb5, 0xc0, 0x83, 0x46, - 0x6b, 0x28, 0x92, 0xf8, 0x10, 0xc6, 0x82, 0x6d, 0x63, 0x00, 0x91, 0xf8, 0x1d, 0xe1, 0x39, 0x0a, - 0x4e, 0xcd, 0x2c, 0x03, 0x85, 0x4f, 0x9a, 0xe0, 0x31, 0xf2, 0x2e, 0x9e, 0xa9, 0x03, 0x33, 0x2b, - 0x26, 0x33, 0x55, 0x14, 0x47, 0xc9, 0x68, 0x7a, 0x41, 0x1f, 0x3c, 0x8d, 0x4d, 0x9e, 0x87, 0xa4, - 0x6d, 0x00, 0x33, 0x8b, 0x6d, 0x07, 0x68, 0x8f, 0x45, 0x36, 0x70, 0xc8, 0x73, 0xa0, 0xac, 0x06, - 0x38, 0x3b, 0xa9, 0x8f, 0x39, 0x4b, 0x5d, 0x2a, 0x14, 0x1c, 0x28, 0xfb, 0x0a, 0xd9, 0xf9, 0x6f, - 0x76, 0x66, 0x7d, 0xa2, 0x5e, 0x2d, 0x1b, 0xfe, 0x2f, 0xe5, 0x32, 0x24, 0x85, 0x15, 0x17, 0x3c, - 0xbb, 0xe9, 0x96, 0xc1, 0x68, 0x81, 0xeb, 0x59, 0x76, 0x43, 0x0d, 0xc6, 0x51, 0x32, 0x92, 0x0d, - 0x3d, 0xd9, 0x45, 0x88, 0xce, 0x77, 0xbd, 0x57, 0x85, 0x73, 0x29, 0x72, 0xff, 0x7c, 0x58, 0xc4, - 0x98, 0x38, 0x84, 0xe7, 0x7b, 0xe9, 0x79, 0x8e, 0xdd, 0xf0, 0x20, 0xf1, 0x35, 0xc2, 0x78, 0x05, - 0x58, 0x37, 0xdd, 0x13, 0x38, 0xd2, 0x30, 0xeb, 0xe0, 0x39, 0x66, 0x19, 0x78, 0xbe, 0x11, 0xfa, - 0xcc, 0x40, 0x08, 0x0e, 0xf9, 0x13, 0x9e, 0x4a, 0x84, 0xf2, 0x31, 0xf9, 0x00, 0xfb, 0x2b, 0x72, - 0x31, 0x63, 0xcb, 0x76, 0xeb, 0x26, 0xe3, 0xe1, 0xcc, 0xa5, 0xf5, 0xb1, 0x99, 0xf2, 0xf5, 0x04, - 0x25, 0xcf, 0x19, 0xcb, 0x76, 0x05, 0xe8, 0x9c, 0x3b, 0x60, 0x4b, 0xdc, 0x9e, 0xc6, 0xd1, 0x3e, - 0x24, 0x59, 0xc3, 0xb3, 0xae, 0x08, 0x9e, 0xaf, 0xc3, 0x57, 0x89, 0xa6, 0x5f, 0xdb, 0x6f, 0x3f, - 0x65, 0x66, 0x34, 0x2a, 0xc9, 0xbe, 0xfa, 0xc8, 0x4d, 0x0c, 0xbd, 0x60, 0x13, 0xc9, 0x3b, 0x7d, - 0x65, 0x30, 0xcd, 0x17, 0x8e, 0x8f, 0x2c, 0x83, 0x15, 0x60, 0x23, 0x4a, 0x60, 0x13, 0xcf, 0x7b, - 0x6d, 0x8f, 0x41, 0xdd, 0xe8, 0x89, 0x1c, 0xe0, 0x22, 0xaf, 0x0e, 0x89, 0x14, 0x38, 0xea, 0x79, - 0xa9, 0x39, 0x41, 0xdf, 0xe8, 0x0a, 0xae, 0xca, 0x9a, 0x0a, 0x8f, 0xac, 0xc8, 0x81, 0x9d, 0xde, - 0xaf, 0x9e, 0x2e, 0xe2, 0xb0, 0xc7, 0x4c, 0xd6, 0xf4, 0xd4, 0xef, 0xbf, 0x45, 0xf1, 0x60, 0x32, - 0x9a, 0x3e, 0x35, 0x56, 0xae, 0xc0, 0x81, 0x22, 0xbc, 0x6c, 0xf0, 0xce, 0x0e, 0xa2, 0x92, 0x4b, - 0x56, 0xf1, 0x21, 0x17, 0xb6, 0xc0, 0x75, 0xad, 0x46, 0xd5, 0x10, 0x37, 0xdb, 0x53, 0x67, 0xb8, - 0xdc, 0x89, 0x31, 0xf7, 0x65, 0x8b, 0x67, 0xa6, 0xf4, 0x68, 0xc2, 0xee, 0x91, 0xab, 0x58, 0xad, - 0x40, 0x0d, 0x18, 0x54, 0x0c, 0xe1, 0x83, 0x4a, 0x4f, 0x31, 0x32, 0x81, 0xe2, 0x51, 0xc9, 0xa6, - 0x92, 0xdc, 0xd5, 0xbd, 0x86, 0x8f, 0x57, 0x2c, 0xcf, 0x2c, 0xd5, 0x46, 0x09, 0xe3, 0x09, 0x84, - 0x8f, 0x75, 0xe9, 0x43, 0xca, 0x7d, 0x37, 0x6c, 0x2d, 0x34, 0x83, 0x94, 0x40, 0xe2, 0x47, 0x84, - 0xa3, 0xeb, 0x96, 0x37, 0xe1, 0xad, 0x7a, 0x05, 0xcf, 0xd6, 0xcc, 0x12, 0xd4, 0x8c, 0x2d, 0xab, - 0xc6, 0xc0, 0x95, 0xb7, 0x2b, 0xca, 0x6d, 0x79, 0x6e, 0x22, 0x27, 0xf1, 0x41, 0x17, 0x1c, 0xdb, - 0x65, 0xc6, 0x96, 0x05, 0xb5, 0x8a, 0xa7, 0x06, 0xe3, 0xc1, 0x64, 0x84, 0xce, 0x0a, 0x63, 0x9e, - 0xdb, 0xc8, 0x59, 0x7c, 0x58, 0x82, 0xc4, 0xa1, 0x74, 0xb1, 0x21, 0x8e, 0x25, 0xc2, 0x27, 0x8e, - 0x50, 0x30, 0x12, 0x3f, 0x87, 0xb1, 0x22, 0xe2, 0x14, 0x77, 0x6c, 0x95, 0x41, 0x9d, 0x1c, 0xc5, - 0x61, 0x06, 0x0d, 0xb3, 0xc1, 0x78, 0x75, 0x45, 0xa8, 0x9c, 0xfd, 0x83, 0xd6, 0xa0, 0xe0, 0x60, - 0xd3, 0xaa, 0x88, 0xee, 0x44, 0xfd, 0x21, 0x89, 0xe3, 0x68, 0x05, 0xbc, 0xb2, 0x6b, 0xf1, 0xb6, - 0xab, 0x46, 0x45, 0xa6, 0x7d, 0x26, 0x12, 0xc3, 0x33, 0xdd, 0x6d, 0x56, 0x67, 0xe3, 0x28, 0x39, - 0x43, 0x7b, 0x73, 0xb2, 0x81, 0xc3, 0x7c, 0x53, 0x44, 0x4a, 0xd1, 0xf4, 0x5b, 0x63, 0x0b, 0x75, - 0x38, 0x29, 0x7d, 0x9d, 0xf3, 0x72, 0x0d, 0xe6, 0xb6, 0xa9, 0x14, 0x21, 0x1f, 0xe1, 0x68, 0xdf, - 0x47, 0x50, 0x96, 0xc0, 0xd2, 0xe4, 0x9a, 0x99, 0x67, 0x64, 0x21, 0xdc, 0x2f, 0x47, 0xce, 0x61, - 0x6c, 0x6f, 0x37, 0xc0, 0x35, 0xfc, 0xef, 0x8c, 0x1a, 0xe1, 0x17, 0x35, 0x36, 0x24, 0x7e, 0xd5, - 0x82, 0xed, 0x6e, 0x75, 0x45, 0x38, 0xda, 0xb7, 0x0c, 0x34, 0x9b, 0x83, 0xff, 0x45, 0xb3, 0x99, - 0xfb, 0x57, 0xcd, 0xe6, 0x02, 0x9e, 0xa9, 0x02, 0xe3, 0x3d, 0x43, 0xb6, 0xad, 0x89, 0x1a, 0x0e, - 0x3d, 0x50, 0x15, 0x13, 0xb2, 0x8a, 0xb1, 0xac, 0x48, 0x0f, 0x98, 0xec, 0x0a, 0x2f, 0xd3, 0x64, - 0x22, 0x82, 0x5d, 0x00, 0x16, 0x3b, 0x87, 0xa3, 0x7d, 0x47, 0xe9, 0x57, 0xd8, 0x0d, 0x68, 0xcb, - 0x6a, 0xf4, 0x87, 0xe4, 0x30, 0x9e, 0x6e, 0x99, 0xb5, 0x66, 0xb7, 0x10, 0xc5, 0x64, 0x29, 0xf0, - 0x36, 0x8a, 0x9d, 0xc7, 0xca, 0xf0, 0x89, 0xbd, 0x0c, 0x7f, 0x2d, 0x34, 0x33, 0xad, 0x84, 0x13, - 0x9f, 0x23, 0x3c, 0xdb, 0x5f, 0x09, 0xe4, 0x02, 0x9e, 0xb6, 0x18, 0xd4, 0x3d, 0x55, 0x34, 0xcf, - 0xd3, 0x13, 0xd7, 0x0f, 0x15, 0x3c, 0x72, 0x16, 0x87, 0xc5, 0x6b, 0x4a, 0x0d, 0x70, 0x05, 0x75, - 0x48, 0x21, 0xe7, 0x3b, 0xf9, 0x86, 0x4a, 0xdc, 0x99, 0x87, 0x08, 0x1f, 0x19, 0xf9, 0x0d, 0x25, - 0x31, 0x7c, 0x74, 0x25, 0x57, 0x34, 0x68, 0xe1, 0xb2, 0x91, 0xdf, 0xa4, 0x1b, 0x99, 0xa2, 0x71, - 0x31, 0x97, 0xcf, 0x5c, 0x59, 0x2f, 0x2a, 0x53, 0x44, 0xc3, 0xb1, 0x21, 0x5f, 0x7e, 0x93, 0x1a, - 0x34, 0x77, 0x79, 0x3d, 0xb3, 0x9c, 0x53, 0x02, 0xe4, 0x38, 0x3e, 0x32, 0xe4, 0x2f, 0x14, 0x33, - 0xc5, 0x2b, 0x05, 0x25, 0x48, 0x8e, 0xe1, 0xff, 0x0d, 0xb9, 0x68, 0x2e, 0x73, 0x51, 0x09, 0x91, - 0x05, 0x1c, 0x7f, 0xce, 0x91, 0xcf, 0x51, 0xba, 0x7a, 0x69, 0xc5, 0xd8, 0xcc, 0xae, 0xe5, 0x96, - 0x8b, 0x05, 0x65, 0x7a, 0x04, 0x2a, 0x4b, 0x37, 0xdf, 0xcb, 0x5d, 0x12, 0xe0, 0xdc, 0xa5, 0xe5, - 0x5c, 0x41, 0x09, 0xa7, 0xff, 0x0a, 0xe1, 0x60, 0xe6, 0xf2, 0x2a, 0xf9, 0x01, 0xe1, 0xe0, 0x0a, - 0x30, 0x72, 0xf2, 0xc5, 0xef, 0x07, 0xde, 0x59, 0x63, 0x0b, 0x93, 0x3c, 0x32, 0x12, 0xef, 0xdf, - 0xbb, 0x1d, 0x40, 0x9d, 0xbb, 0xea, 0xa1, 0x16, 0x78, 0x8b, 0x96, 0xbd, 0xe8, 0xb8, 0xf6, 0xcd, - 0xf6, 0xa2, 0x0b, 0x66, 0xe5, 0xd6, 0xc3, 0x3f, 0xbf, 0x0a, 0xa4, 0xc9, 0x59, 0xf9, 0xe2, 0x4c, - 0xf5, 0x1a, 0x9a, 0x97, 0xfa, 0xb4, 0x37, 0xde, 0x79, 0xf6, 0x1e, 0x95, 0xe6, 0x1d, 0xf2, 0x1d, - 0xc2, 0x21, 0xff, 0x44, 0xc9, 0xc2, 0x3e, 0x07, 0x2e, 0xe2, 0x3c, 0x35, 0x51, 0x59, 0x24, 0xd6, - 0x5e, 0x1c, 0xe8, 0xeb, 0xe4, 0xf4, 0xc4, 0x81, 0x92, 0x5f, 0x10, 0x3e, 0x20, 0xdf, 0x40, 0x64, - 0xd2, 0x57, 0x52, 0x2c, 0xb9, 0x3f, 0x50, 0x86, 0x5a, 0xee, 0xdc, 0x55, 0xc9, 0x40, 0x98, 0xdb, - 0xae, 0xc5, 0x80, 0xc7, 0xb9, 0x12, 0xcb, 0x8e, 0x8a, 0xb3, 0xdb, 0x8f, 0xf4, 0x31, 0x3b, 0x3b, - 0xe0, 0xdf, 0x59, 0x42, 0x67, 0x62, 0xd7, 0xee, 0xec, 0xa2, 0xc0, 0x6f, 0xbb, 0x48, 0x1b, 0x17, - 0x95, 0x68, 0x13, 0x8f, 0x76, 0x11, 0xea, 0xec, 0xa2, 0x85, 0x49, 0x5a, 0xca, 0xad, 0x5f, 0xd5, - 0x80, 0x82, 0xb2, 0x5f, 0xa0, 0xfb, 0xe7, 0x83, 0x74, 0xfd, 0xca, 0x83, 0xc7, 0xda, 0xd4, 0xa3, - 0xc7, 0xda, 0xd4, 0xd3, 0xc7, 0x1a, 0xfa, 0xac, 0xa3, 0xa1, 0x9f, 0x3a, 0x1a, 0xba, 0xd7, 0xd1, - 0xd0, 0x83, 0x8e, 0x86, 0xfe, 0xe8, 0x68, 0xe8, 0x49, 0x47, 0x9b, 0x7a, 0xda, 0xd1, 0xd0, 0x97, - 0x7b, 0xda, 0xd4, 0x9d, 0x3d, 0x0d, 0x3d, 0xd8, 0xd3, 0xa6, 0x1e, 0xed, 0x69, 0x53, 0x1f, 0x6e, - 0x54, 0x6d, 0xe7, 0x46, 0x55, 0x6f, 0xd9, 0xfe, 0x07, 0xda, 0x35, 0xf5, 0xa6, 0x97, 0xe2, 0x03, - 0xff, 0x6d, 0xea, 0x6f, 0x48, 0xcb, 0xaa, 0x80, 0xbb, 0xd8, 0x75, 0xa7, 0x9c, 0x52, 0xd5, 0x4e, - 0xc1, 0x4d, 0x26, 0xff, 0x7c, 0x0c, 0xff, 0xcf, 0x29, 0x85, 0xf9, 0x3f, 0x90, 0x37, 0xff, 0x0e, - 0x00, 0x00, 0xff, 0xff, 0xd2, 0x42, 0x31, 0x0d, 0x19, 0x0e, 0x00, 0x00, + // 1425 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0xcd, 0x6f, 0x13, 0xc7, + 0x1b, 0xce, 0xd8, 0x8e, 0x89, 0xc7, 0x21, 0x31, 0xf3, 0xe3, 0x63, 0xf1, 0x0f, 0xad, 0x5c, 0x13, + 0xda, 0x40, 0xb1, 0x8d, 0x52, 0x21, 0x95, 0xa8, 0x82, 0x3a, 0xc1, 0x8e, 0x92, 0x26, 0x04, 0xad, + 0x03, 0x45, 0x55, 0xa5, 0xd5, 0x7a, 0xfd, 0xc6, 0x6c, 0xb1, 0x77, 0xb6, 0x3b, 0x63, 0x07, 0xab, + 0x8a, 0xda, 0x72, 0xe0, 0x56, 0xa9, 0x6a, 0x0f, 0x95, 0xaa, 0x1e, 0x7a, 0xa9, 0xd4, 0x63, 0x8f, + 0x48, 0xb9, 0x70, 0x2b, 0xe2, 0x50, 0xa1, 0xd2, 0x03, 0x3d, 0x54, 0x2a, 0x4e, 0x0f, 0x1c, 0xe9, + 0x7f, 0x50, 0xed, 0xcc, 0xae, 0xb1, 0x8d, 0x4d, 0x4c, 0x3f, 0x4e, 0x9e, 0x99, 0xf7, 0x79, 0x9e, + 0x99, 0x67, 0xe6, 0x9d, 0xd7, 0xb3, 0xf8, 0x74, 0x13, 0x58, 0xd6, 0xa2, 0x39, 0x66, 0x5e, 0x87, + 0xba, 0x91, 0x73, 0x1a, 0xe5, 0x9a, 0x65, 0xea, 0x96, 0x13, 0xb4, 0x4c, 0xb7, 0x51, 0x31, 0x1c, + 0x2b, 0xeb, 0xb8, 0x94, 0x53, 0x72, 0x44, 0xa2, 0xb3, 0x12, 0x9d, 0xed, 0xa0, 0x93, 0x99, 0xaa, + 0xc5, 0xaf, 0x37, 0xca, 0x59, 0x93, 0xd6, 0x73, 0x55, 0x5a, 0xa5, 0x39, 0x81, 0x2f, 0x37, 0x36, + 0x45, 0x4f, 0x74, 0x44, 0x4b, 0xea, 0x24, 0x8f, 0x55, 0x29, 0xad, 0xd6, 0x20, 0x67, 0x38, 0x56, + 0xce, 0xb0, 0x6d, 0xca, 0x0d, 0x6e, 0x51, 0x9b, 0xf9, 0xd1, 0xff, 0xfb, 0xd1, 0x8e, 0x06, 0xd4, + 0x1d, 0xde, 0xf2, 0x83, 0xc9, 0xde, 0x05, 0x83, 0xeb, 0x52, 0xb7, 0x43, 0xec, 0x8d, 0x51, 0xa7, + 0x5b, 0x75, 0x66, 0x98, 0x53, 0x5a, 0xfe, 0x00, 0x4c, 0xee, 0xa3, 0x8e, 0x0f, 0x43, 0xf1, 0x96, + 0x03, 0x81, 0xd4, 0xd1, 0x5e, 0x50, 0x77, 0x28, 0xdd, 0x1b, 0x6a, 0x02, 0x03, 0xbb, 0xd9, 0xb7, + 0x92, 0x54, 0x1f, 0xc6, 0x82, 0x2d, 0xbd, 0x07, 0x91, 0xfe, 0x0d, 0xe1, 0x29, 0x0d, 0x9c, 0x9a, + 0x61, 0x82, 0x06, 0x1f, 0x36, 0x80, 0x71, 0xf2, 0x36, 0x9e, 0xa8, 0x03, 0x37, 0x2a, 0x06, 0x37, + 0x14, 0x94, 0x42, 0xb3, 0xf1, 0xb9, 0x99, 0x6c, 0xef, 0x69, 0xac, 0x0b, 0x1f, 0x3e, 0x6d, 0x0d, + 0xb8, 0xb1, 0xd1, 0x72, 0x40, 0xeb, 0xb0, 0xc8, 0x1a, 0x8e, 0x30, 0x07, 0x4c, 0x25, 0x24, 0xd8, + 0xb3, 0xd9, 0x21, 0x67, 0x99, 0xf5, 0x15, 0x4a, 0x0e, 0x98, 0x9e, 0xc2, 0xc2, 0xf4, 0xd7, 0xdb, + 0x93, 0x1e, 0x31, 0x5b, 0x35, 0x75, 0xef, 0x57, 0x13, 0x32, 0x24, 0x87, 0x13, 0x2e, 0x30, 0xda, + 0x70, 0x4d, 0xd0, 0x9b, 0xe0, 0x32, 0x8b, 0xda, 0x4a, 0x38, 0x85, 0x66, 0x63, 0x0b, 0x91, 0x27, + 0x3b, 0x08, 0x69, 0xd3, 0x41, 0xf4, 0xaa, 0x0c, 0xce, 0xc7, 0xee, 0x9f, 0x8f, 0xca, 0x35, 0xa6, + 0x0f, 0xe0, 0xe9, 0x8e, 0x3d, 0xe6, 0x50, 0x9b, 0x41, 0xfa, 0x2b, 0x84, 0xf1, 0x12, 0xf0, 0xc0, + 0xee, 0x31, 0x1c, 0xb3, 0x8d, 0x3a, 0x30, 0xc7, 0x30, 0x41, 0xf8, 0x8d, 0x69, 0xcf, 0x06, 0x08, + 0xc1, 0x11, 0xaf, 0x23, 0xac, 0xc4, 0x34, 0xd1, 0x26, 0xef, 0x62, 0x6f, 0x46, 0x21, 0xa6, 0x6f, + 0x52, 0xb7, 0x6e, 0x70, 0xb1, 0x9c, 0xa9, 0xb9, 0xec, 0x50, 0xa7, 0x62, 0x3e, 0x49, 0x29, 0x0a, + 0xc6, 0x22, 0xad, 0x80, 0x36, 0xe5, 0xf6, 0x8c, 0xa5, 0xef, 0x8c, 0xe3, 0x78, 0x17, 0x92, 0xac, + 0xe0, 0x49, 0x57, 0x2e, 0x5e, 0xcc, 0x23, 0x66, 0x89, 0xcf, 0xbd, 0xb6, 0xd7, 0x7e, 0xfa, 0xce, + 0xb4, 0xb8, 0x4f, 0xf6, 0xd4, 0x07, 0x6e, 0x62, 0xe4, 0x05, 0x9b, 0x48, 0xde, 0xea, 0x4a, 0x83, + 0x71, 0x31, 0x71, 0x6a, 0x60, 0x1a, 0x2c, 0x01, 0x1f, 0x90, 0x02, 0xeb, 0x78, 0x9a, 0xb5, 0x18, + 0x87, 0xba, 0xde, 0x11, 0xd9, 0x27, 0x44, 0x5e, 0xed, 0x13, 0x29, 0x09, 0xd4, 0xf3, 0x52, 0x53, + 0x92, 0xbe, 0x16, 0x08, 0x2e, 0xfb, 0x39, 0x15, 0x1d, 0x98, 0x91, 0x3d, 0x3b, 0xbd, 0x57, 0x3e, + 0x5d, 0xc4, 0x51, 0xc6, 0x0d, 0xde, 0x60, 0xca, 0xb7, 0xdf, 0xa0, 0x54, 0x78, 0x36, 0x3e, 0x77, + 0x62, 0xa8, 0x5c, 0x49, 0x00, 0xe5, 0xf2, 0x16, 0xc2, 0x77, 0xb7, 0x91, 0xe6, 0x73, 0xc9, 0x32, + 0x3e, 0xe0, 0xc2, 0x26, 0xb8, 0xae, 0x65, 0x57, 0x75, 0x79, 0xb3, 0x99, 0x32, 0x21, 0xe4, 0x8e, + 0x0d, 0xb9, 0x2f, 0x9b, 0xc2, 0x59, 0xa2, 0x43, 0x93, 0xe3, 0x8c, 0x5c, 0xc5, 0x4a, 0x05, 0x6a, + 0xc0, 0xa1, 0xa2, 0xcb, 0x18, 0x54, 0x3a, 0x8a, 0xb1, 0x11, 0x14, 0x0f, 0xfb, 0x6c, 0xcd, 0x27, + 0x07, 0xba, 0xd7, 0xf0, 0xd1, 0x8a, 0xc5, 0x8c, 0x72, 0x6d, 0x90, 0x30, 0x1e, 0x41, 0xf8, 0x48, + 0x40, 0xef, 0x53, 0xee, 0xba, 0x61, 0x2b, 0x91, 0x09, 0x94, 0x08, 0xa5, 0xbf, 0x43, 0x38, 0xbe, + 0x6a, 0xb1, 0x11, 0x6f, 0xd5, 0x2b, 0x78, 0xb2, 0x66, 0x94, 0xa1, 0xa6, 0x6f, 0x5a, 0x35, 0x0e, + 0xae, 0x7f, 0xbb, 0xe2, 0x62, 0xac, 0x28, 0x86, 0xc8, 0x71, 0xbc, 0xdf, 0x05, 0x87, 0xba, 0x5c, + 0xdf, 0xb4, 0xa0, 0x56, 0x61, 0x4a, 0x38, 0x15, 0x9e, 0x8d, 0x69, 0x93, 0x72, 0xb0, 0x28, 0xc6, + 0xc8, 0x19, 0x7c, 0xd0, 0x07, 0xc9, 0x43, 0x09, 0xb0, 0x11, 0x81, 0x25, 0x32, 0x26, 0x8f, 0x50, + 0x32, 0xd2, 0x3f, 0x44, 0x71, 0x42, 0xae, 0x53, 0xde, 0xb1, 0x65, 0x0e, 0x75, 0x72, 0x18, 0x47, + 0x39, 0xd8, 0x86, 0xcd, 0x45, 0x76, 0xc5, 0x34, 0xbf, 0xf7, 0x37, 0x4a, 0x43, 0x02, 0x87, 0x1b, + 0x56, 0x45, 0x56, 0x27, 0xcd, 0x6b, 0x92, 0x14, 0x8e, 0x57, 0x80, 0x99, 0xae, 0x25, 0xca, 0xae, + 0x12, 0x97, 0x4e, 0xbb, 0x86, 0x48, 0x12, 0x4f, 0x04, 0xdb, 0xac, 0x4c, 0xa6, 0xd0, 0xec, 0x84, + 0xd6, 0xe9, 0x93, 0x35, 0x1c, 0x15, 0x9b, 0x22, 0x2d, 0xc5, 0xe7, 0xce, 0x0e, 0x4d, 0xd4, 0x7e, + 0x53, 0xd9, 0x55, 0xc1, 0x2b, 0xd8, 0xdc, 0x6d, 0x69, 0xbe, 0x08, 0x79, 0x1f, 0xc7, 0xbb, 0xfe, + 0x04, 0xfd, 0x14, 0x98, 0x1f, 0x5d, 0x33, 0xff, 0x8c, 0x2c, 0x85, 0xbb, 0xe5, 0xc8, 0x39, 0x8c, + 0xe9, 0x96, 0x0d, 0xae, 0xee, 0xfd, 0xcf, 0x28, 0x31, 0x71, 0x51, 0x93, 0x7d, 0xe2, 0x57, 0x2d, + 0xd8, 0x0a, 0xb2, 0x2b, 0x26, 0xd0, 0xde, 0x48, 0x4f, 0xb1, 0xd9, 0xff, 0x6f, 0x14, 0x9b, 0xa9, + 0x7f, 0x54, 0x6c, 0x2e, 0xe0, 0x89, 0x2a, 0x70, 0x51, 0x33, 0xfc, 0xb2, 0x35, 0x52, 0xc1, 0xd1, + 0xf6, 0x55, 0x65, 0x87, 0x2c, 0x63, 0xec, 0x67, 0x24, 0x03, 0xee, 0x57, 0x85, 0x97, 0x29, 0x32, + 0x31, 0xc9, 0x2e, 0x01, 0x4f, 0x9e, 0xc3, 0xf1, 0xae, 0xa3, 0xf4, 0x32, 0xec, 0x06, 0xb4, 0xfc, + 0x6c, 0xf4, 0x9a, 0xe4, 0x20, 0x1e, 0x6f, 0x1a, 0xb5, 0x46, 0x90, 0x88, 0xb2, 0x33, 0x1f, 0x7a, + 0x13, 0x25, 0xcf, 0xe3, 0x44, 0xff, 0x89, 0xbd, 0x0c, 0x7f, 0x25, 0x32, 0x31, 0x9e, 0x88, 0xa6, + 0x3f, 0x45, 0x78, 0xb2, 0x3b, 0x13, 0xc8, 0x05, 0x3c, 0x6e, 0x71, 0xa8, 0x33, 0x45, 0x16, 0xcf, + 0x93, 0x23, 0xe7, 0x8f, 0x26, 0x79, 0xe4, 0x0c, 0x8e, 0xca, 0xd7, 0x94, 0x12, 0x12, 0x0a, 0x4a, + 0x9f, 0x42, 0xc1, 0x0b, 0x8a, 0x0d, 0xf5, 0x71, 0xa7, 0x1e, 0x22, 0x7c, 0x68, 0xe0, 0x7f, 0x28, + 0x49, 0xe2, 0xc3, 0x4b, 0x85, 0x0d, 0x5d, 0x2b, 0x5d, 0xd6, 0x8b, 0xeb, 0xda, 0x5a, 0x7e, 0x43, + 0xbf, 0x58, 0x28, 0xe6, 0xaf, 0xac, 0x6e, 0x24, 0xc6, 0x88, 0x8a, 0x93, 0x7d, 0xb1, 0xe2, 0xba, + 0xa6, 0x6b, 0x85, 0xcb, 0xab, 0xf9, 0xc5, 0x42, 0x22, 0x44, 0x8e, 0xe2, 0x43, 0x7d, 0xf1, 0xd2, + 0x46, 0x7e, 0xe3, 0x4a, 0x29, 0x11, 0x26, 0x47, 0xf0, 0xff, 0xfa, 0x42, 0x5a, 0x21, 0x7f, 0x31, + 0x11, 0x21, 0x33, 0x38, 0xf5, 0x5c, 0xa0, 0x58, 0xd0, 0xb4, 0xe5, 0x4b, 0x4b, 0xfa, 0xfa, 0xc2, + 0x4a, 0x61, 0x71, 0xa3, 0x94, 0x18, 0x1f, 0x80, 0x5a, 0xd0, 0xd6, 0xdf, 0x29, 0x5c, 0x92, 0xe0, + 0xc2, 0xa5, 0xc5, 0x42, 0x29, 0x11, 0x9d, 0xbb, 0x1d, 0xc5, 0xe1, 0xfc, 0xe5, 0x65, 0xf2, 0x2b, + 0xc2, 0xe1, 0x25, 0xe0, 0xe4, 0xf8, 0x8b, 0xdf, 0x0f, 0xa2, 0xb2, 0x26, 0x67, 0x46, 0x79, 0x64, + 0xa4, 0x6f, 0xa3, 0x7b, 0x77, 0x42, 0xa8, 0xfd, 0xa3, 0x52, 0x6c, 0x02, 0xcb, 0x58, 0x34, 0xe3, + 0xb8, 0xf4, 0x66, 0x2b, 0xe3, 0x82, 0x51, 0x39, 0xbd, 0x79, 0xf6, 0xa6, 0x99, 0x31, 0xa9, 0xcd, + 0x68, 0x0d, 0x32, 0x65, 0x83, 0x59, 0x66, 0xa6, 0x4e, 0x6d, 0x8b, 0x53, 0xf7, 0xb9, 0x10, 0x04, + 0x91, 0x5b, 0x0f, 0xff, 0xf8, 0x32, 0x34, 0x47, 0xce, 0xf8, 0xef, 0xd4, 0x5c, 0xa7, 0x0c, 0xb2, + 0xdc, 0x47, 0x9d, 0xf6, 0xf6, 0xb3, 0x57, 0xac, 0x3f, 0xbc, 0x4d, 0x7e, 0x41, 0x38, 0xe2, 0xe5, + 0x01, 0x99, 0xd9, 0x23, 0x4d, 0xa4, 0xbb, 0x13, 0x23, 0x25, 0x53, 0xfa, 0xe3, 0xff, 0xc0, 0xdd, + 0xeb, 0xe4, 0xe4, 0xc8, 0xee, 0xc8, 0x9f, 0x08, 0xef, 0xf3, 0x9f, 0x5b, 0x64, 0xd4, 0x07, 0x59, + 0x72, 0x76, 0x6f, 0xa0, 0xef, 0xef, 0x0b, 0xcf, 0x5c, 0xbe, 0xc7, 0xdc, 0x96, 0x6b, 0x71, 0x18, + 0xe4, 0xae, 0xc1, 0x60, 0x90, 0x35, 0x6f, 0x58, 0xf8, 0x5a, 0x4a, 0x2e, 0x0c, 0xf2, 0x15, 0x94, + 0xca, 0xec, 0x90, 0xe3, 0xeb, 0x89, 0x6f, 0xcf, 0xa3, 0x53, 0xc9, 0x6b, 0x77, 0x77, 0x50, 0xe8, + 0xe7, 0x1d, 0xa4, 0x0e, 0x73, 0x21, 0x2b, 0xd8, 0xa3, 0x1d, 0x84, 0xda, 0x3b, 0x68, 0x66, 0x94, + 0x6a, 0x77, 0xeb, 0x27, 0x25, 0x94, 0x40, 0x0b, 0x9f, 0xa1, 0xfb, 0xe7, 0xc3, 0xda, 0xea, 0x95, + 0x07, 0x8f, 0xd5, 0xb1, 0x47, 0x8f, 0xd5, 0xb1, 0xa7, 0x8f, 0x55, 0xf4, 0x49, 0x5b, 0x45, 0xdf, + 0xb7, 0x55, 0x74, 0xaf, 0xad, 0xa2, 0x07, 0x6d, 0x15, 0xfd, 0xde, 0x56, 0xd1, 0x93, 0xb6, 0x3a, + 0xf6, 0xb4, 0xad, 0xa2, 0xcf, 0x77, 0xd5, 0xb1, 0xbb, 0xbb, 0x2a, 0x7a, 0xb0, 0xab, 0x8e, 0x3d, + 0xda, 0x55, 0xc7, 0xde, 0x5b, 0xab, 0x52, 0xe7, 0x46, 0x35, 0xdb, 0xa4, 0xde, 0xdb, 0xc1, 0x35, + 0xb2, 0x0d, 0x96, 0x13, 0x0d, 0xef, 0xd9, 0xec, 0xed, 0x5f, 0xd3, 0xaa, 0x80, 0x9b, 0x09, 0xc2, + 0x39, 0xa7, 0x5c, 0xa5, 0x39, 0xb8, 0xc9, 0xfd, 0xef, 0xa2, 0xfe, 0x4f, 0xb0, 0x72, 0x54, 0x7c, + 0x1c, 0xbd, 0xf1, 0x57, 0x00, 0x00, 0x00, 0xff, 0xff, 0x9f, 0x41, 0x73, 0xda, 0xb4, 0x0e, 0x00, + 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/public_ip/public_crudapi.vesapi.go b/pbgo/extschema/schema/public_ip/public_crudapi.vesapi.go index ca3ad6e3e..b09bd753c 100644 --- a/pbgo/extschema/schema/public_ip/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/public_ip/public_crudapi.vesapi.go @@ -2076,10 +2076,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2182,10 +2186,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/pvt_types.pb.go b/pbgo/extschema/schema/pvt_types.pb.go index bb879c1bd..6d70a1404 100644 --- a/pbgo/extschema/schema/pvt_types.pb.go +++ b/pbgo/extschema/schema/pvt_types.pb.go @@ -292,7 +292,6 @@ func (m *DaemonTlsParametersType) GetTrustedCaUrl() string { // Title // // x-displayName "displayname" -// Only added so codegeneration does not break // UseragentType specifies all attributes encoded in Useragent header // emitted by a service-framework based client. type UseragentType struct { @@ -377,7 +376,6 @@ func (m *UseragentType) GetSiteName() string { // Title // // x-displayName "displayname" -// Only added so codegeneration does not break // ServiceParam groups all parameters required for a client to connect to a server type ServiceParameters struct { // Title @@ -437,7 +435,6 @@ func (m *ServiceParameters) GetCtype() ServiceConnectionType { // Title // // x-displayName "displayname" -// Only added so codegeneration does not break // OperMetaType is metadata that oper objects may have. // Implementors can decided whether individual oper objects should have this field or not. // If an oper object does have metadata, it should use this message type. @@ -445,42 +442,36 @@ type OperMetaType struct { // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Tenant to which this object belongs. Tenant string `protobuf:"bytes,1,opt,name=tenant,proto3" json:"tenant,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Namespace defines the space within each name must be unique. Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Name must be unique within a namespace. Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // UID is the unique in time and space value for this object. Uid string `protobuf:"bytes,4,opt,name=uid,proto3" json:"uid,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break - // Creation and last modification timestamps for this object. + // Creation timestamp for this object. CreationTimestamp *types.Timestamp `protobuf:"bytes,5,opt,name=creation_timestamp,json=creationTimestamp,proto3" json:"creation_timestamp,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break + // Last modification timestamp for this object. ModificationTimestamp *types.Timestamp `protobuf:"bytes,6,opt,name=modification_timestamp,json=modificationTimestamp,proto3" json:"modification_timestamp,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Annotations is the unstructured annotation for this object. Annotations map[string]string `protobuf:"bytes,7,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -565,19 +556,16 @@ func (m *OperMetaType) GetAnnotations() map[string]string { // Title // // x-displayName "displayname" -// Only added so codegeneration does not break // DaemonEnvironmentType is the specification of the environment in which the daemon is launched type DaemonEnvironmentType struct { // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // Name of the environment - staging, demo1, crt, etc. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Title // // x-displayName "displayname" - // Only added so codegeneration does not break // DNS suffix to use for internal communication - int.ves.io, int.volterra.us, etc. InternalDnsSuffix string `protobuf:"bytes,2,opt,name=internal_dns_suffix,json=internalDnsSuffix,proto3" json:"internal_dns_suffix,omitempty"` } diff --git a/pbgo/extschema/schema/rate_limiter/crudapi/api.vesapi.go b/pbgo/extschema/schema/rate_limiter/crudapi/api.vesapi.go index 84c691a72..59a5eff47 100644 --- a/pbgo/extschema/schema/rate_limiter/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/rate_limiter/crudapi/api.vesapi.go @@ -3163,10 +3163,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/rate_limiter/object.pb.go b/pbgo/extschema/schema/rate_limiter/object.pb.go index e1bbfaaf1..5239061ab 100644 --- a/pbgo/extschema/schema/rate_limiter/object.pb.go +++ b/pbgo/extschema/schema/rate_limiter/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_59f9ea91f86ee514 = []byte{ - // 588 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xb1, 0x4f, 0x14, 0x4f, - 0x14, 0xc7, 0x6f, 0xee, 0xc8, 0x41, 0x06, 0x02, 0x64, 0x7f, 0xcd, 0xfe, 0x50, 0x27, 0xe4, 0x34, - 0x4a, 0x8c, 0x3b, 0x6b, 0x30, 0x46, 0x20, 0xc6, 0x02, 0x4c, 0x68, 0x40, 0xcc, 0x61, 0x65, 0x73, - 0x99, 0x9d, 0x7b, 0xb7, 0x8c, 0xee, 0xde, 0x6c, 0x66, 0x66, 0x57, 0xae, 0x30, 0xf1, 0x2f, 0x30, - 0xfe, 0x0d, 0x56, 0xc6, 0xc4, 0xff, 0x41, 0xac, 0x2c, 0x09, 0x15, 0xa5, 0xec, 0x35, 0x16, 0x16, - 0xf4, 0x36, 0x86, 0x59, 0x96, 0xdc, 0x91, 0x93, 0x98, 0xeb, 0x66, 0xf3, 0x3e, 0xdf, 0xef, 0xbc, - 0xf7, 0xe6, 0xbd, 0xc5, 0x77, 0x32, 0xd0, 0x54, 0x48, 0x5f, 0xf3, 0x3d, 0x88, 0x99, 0xaf, 0x98, - 0x81, 0x56, 0x24, 0x62, 0x61, 0x40, 0xf9, 0x32, 0x78, 0x05, 0xdc, 0xd0, 0x44, 0x49, 0x23, 0x9d, - 0x85, 0x02, 0xa4, 0x05, 0x48, 0x07, 0xc1, 0x05, 0x2f, 0x14, 0x66, 0x2f, 0x0d, 0x28, 0x97, 0xb1, - 0x1f, 0xca, 0x50, 0xfa, 0x56, 0x12, 0xa4, 0x1d, 0xfb, 0x65, 0x3f, 0xec, 0xa9, 0xb0, 0x5a, 0xb8, - 0x36, 0x7c, 0xa7, 0x4c, 0x8c, 0x90, 0x5d, 0x7d, 0x1e, 0xbc, 0x7d, 0x45, 0x42, 0xa6, 0x97, 0x40, - 0xc9, 0xfd, 0x3f, 0xcc, 0x0d, 0x86, 0x1a, 0xc3, 0xa1, 0x0c, 0x34, 0x74, 0xb3, 0xe1, 0x6b, 0x1a, - 0xbf, 0x6b, 0xb8, 0xbe, 0x63, 0xeb, 0x73, 0x56, 0xf1, 0x54, 0x0c, 0x86, 0xb5, 0x99, 0x61, 0x2e, - 0x5a, 0x44, 0x4b, 0xd3, 0xcb, 0x37, 0xe8, 0x70, 0xb1, 0x05, 0xb8, 0x0d, 0x86, 0xbd, 0xe8, 0x25, - 0xd0, 0xbc, 0xc0, 0x9d, 0x2d, 0x3c, 0xa7, 0x7b, 0xda, 0x40, 0xdc, 0xba, 0x70, 0xa8, 0x5a, 0x87, - 0x9b, 0x97, 0x1c, 0x76, 0x2d, 0x75, 0xc9, 0x67, 0xb6, 0xd0, 0x6e, 0x97, 0x6e, 0x2b, 0x78, 0x42, - 0x27, 0xc0, 0xdd, 0x9a, 0xb5, 0xb8, 0x45, 0xff, 0xde, 0x71, 0xba, 0x9b, 0x00, 0xb7, 0x1e, 0x56, - 0xb1, 0xf6, 0xa5, 0xfa, 0xed, 0xc0, 0xad, 0xce, 0xa3, 0xa3, 0x03, 0xf7, 0x63, 0x15, 0x3f, 0xc2, - 0xb5, 0x4d, 0x30, 0xce, 0xfd, 0xce, 0xc3, 0x7d, 0xee, 0x69, 0xe0, 0xa9, 0x82, 0x18, 0xf4, 0x9e, - 0x17, 0x30, 0x2d, 0xb8, 0x17, 0xcb, 0xae, 0x30, 0x52, 0xdd, 0x5b, 0xcc, 0x40, 0x7b, 0x42, 0x7a, - 0x89, 0x92, 0xfb, 0x3d, 0x4f, 0x01, 0x6b, 0xe3, 0x55, 0x3c, 0xd9, 0x84, 0x24, 0x62, 0x1c, 0x1c, - 0x3a, 0x5a, 0x9c, 0x6a, 0xb8, 0xac, 0x7c, 0xa3, 0x84, 0x01, 0xbc, 0x82, 0xeb, 0x1b, 0x0a, 0x98, - 0x19, 0x4b, 0xf9, 0x14, 0x22, 0x18, 0x4b, 0x39, 0xb1, 0x25, 0xf4, 0x18, 0x85, 0x36, 0x76, 0xf0, - 0x54, 0xd9, 0x41, 0x67, 0x03, 0x4f, 0x86, 0xbc, 0x65, 0x1b, 0x5f, 0xbc, 0xdd, 0xdd, 0xab, 0x1a, - 0xbf, 0x19, 0xc9, 0x80, 0x45, 0x17, 0xed, 0xaf, 0x87, 0xfc, 0xec, 0xdc, 0xf8, 0x85, 0xf0, 0xcc, - 0xae, 0x61, 0x26, 0xd5, 0xff, 0x3c, 0x54, 0x05, 0x3e, 0x62, 0xa8, 0x9e, 0xe1, 0xe9, 0x62, 0xf3, - 0x5a, 0x0a, 0x3a, 0xda, 0xad, 0x2e, 0xd6, 0x96, 0xa6, 0x97, 0xaf, 0x8f, 0x1c, 0xc9, 0x26, 0x74, - 0xce, 0xc4, 0xeb, 0x73, 0x9f, 0xdf, 0xce, 0x0c, 0xa6, 0xd9, 0xc4, 0xb2, 0x8c, 0x6b, 0xe7, 0x31, - 0xc6, 0x5c, 0x76, 0xdb, 0xc2, 0x8e, 0xbf, 0x5b, 0x1b, 0x69, 0xb7, 0x51, 0x02, 0x36, 0x97, 0x01, - 0x7e, 0xed, 0xbf, 0xa3, 0x27, 0xf3, 0x78, 0x16, 0xcf, 0x94, 0xe9, 0xd1, 0x54, 0xb4, 0xd7, 0xdf, - 0xa3, 0xc3, 0x13, 0x52, 0x39, 0x3e, 0x21, 0x95, 0xd3, 0x13, 0x82, 0xde, 0xe5, 0x04, 0x7d, 0xca, - 0x09, 0xfa, 0x9e, 0x13, 0x74, 0x98, 0x13, 0x74, 0x9c, 0x13, 0xf4, 0x23, 0x27, 0xe8, 0x67, 0x4e, - 0x2a, 0xa7, 0x39, 0x41, 0x1f, 0xfa, 0xa4, 0xf2, 0xb5, 0x4f, 0xd0, 0x61, 0x9f, 0x54, 0x8e, 0xfb, - 0xa4, 0xf2, 0xf2, 0x79, 0x28, 0x93, 0xd7, 0x21, 0xcd, 0x64, 0x64, 0x40, 0x29, 0x46, 0x53, 0xed, - 0xdb, 0x43, 0x47, 0xaa, 0xf8, 0xec, 0x99, 0x32, 0xd1, 0x06, 0xe5, 0x95, 0x61, 0x3f, 0x09, 0x42, - 0xe9, 0xc3, 0xbe, 0x39, 0xdf, 0xe7, 0x11, 0x7f, 0x86, 0xa0, 0x6e, 0xb7, 0xfa, 0xc1, 0x9f, 0x00, - 0x00, 0x00, 0xff, 0xff, 0xc5, 0x4e, 0x69, 0x50, 0xcf, 0x04, 0x00, 0x00, + // 604 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0x58, 0x5c, 0xc8, 0x40, 0x80, 0xd4, 0x4b, 0x45, 0x9d, 0x90, 0xd5, 0x28, 0x31, + 0xb6, 0x4d, 0x30, 0x26, 0x4a, 0x8c, 0x07, 0x30, 0xe1, 0x02, 0x62, 0x16, 0x13, 0x95, 0xcb, 0x66, + 0x3a, 0x7d, 0x5b, 0x46, 0xdb, 0x9d, 0x66, 0x66, 0x5a, 0xd9, 0x83, 0x89, 0x9f, 0xc0, 0xf8, 0x01, + 0xfc, 0x00, 0xc6, 0x4f, 0x21, 0x7a, 0xf1, 0x64, 0x08, 0x27, 0x8e, 0xd2, 0xbd, 0x78, 0xf0, 0xc0, + 0x47, 0x30, 0x4c, 0x29, 0x6e, 0xc9, 0x4a, 0x3c, 0xc8, 0xed, 0x4d, 0xfe, 0xff, 0xf7, 0x9b, 0x37, + 0x33, 0x6f, 0x1e, 0xbe, 0x99, 0x81, 0x72, 0xb9, 0xf0, 0x14, 0xdb, 0x82, 0x98, 0x7a, 0x92, 0x6a, + 0x68, 0x47, 0x3c, 0xe6, 0x1a, 0xa4, 0x27, 0xfc, 0x97, 0xc0, 0xb4, 0x9b, 0x48, 0xa1, 0x85, 0x35, + 0x5b, 0x18, 0xdd, 0xc2, 0xe8, 0x0e, 0x1a, 0x67, 0x9d, 0x90, 0xeb, 0xad, 0xd4, 0x77, 0x99, 0x88, + 0xbd, 0x50, 0x84, 0xc2, 0x33, 0x29, 0x7e, 0xda, 0x31, 0x2b, 0xb3, 0x30, 0x51, 0x81, 0x9a, 0xbd, + 0x5c, 0xdd, 0x53, 0x24, 0x9a, 0x8b, 0xae, 0x3a, 0x16, 0x6f, 0x9c, 0x51, 0x90, 0xee, 0x25, 0x50, + 0xfa, 0x2e, 0x55, 0x7d, 0x83, 0x52, 0xb3, 0x2a, 0x65, 0xa0, 0xa0, 0x9b, 0x55, 0xb7, 0x69, 0x7e, + 0xb8, 0x80, 0x1b, 0xeb, 0xe6, 0x7c, 0xd6, 0x7d, 0x3c, 0x1e, 0x83, 0xa6, 0x01, 0xd5, 0xd4, 0x46, + 0x73, 0x68, 0x7e, 0x62, 0xe1, 0xaa, 0x5b, 0x3d, 0x6c, 0x61, 0x5c, 0x03, 0x4d, 0x9f, 0xf6, 0x12, + 0x68, 0x9d, 0xd8, 0xad, 0x55, 0x3c, 0xad, 0x7a, 0x4a, 0x43, 0xdc, 0x3e, 0x21, 0x8c, 0x18, 0xc2, + 0xb5, 0x53, 0x84, 0x0d, 0xe3, 0x3a, 0xc5, 0x99, 0x2a, 0x72, 0xd7, 0x4a, 0xda, 0x3d, 0x3c, 0xaa, + 0x12, 0x60, 0x76, 0xdd, 0x20, 0xae, 0xbb, 0x7f, 0xbf, 0x71, 0x77, 0x23, 0x01, 0x66, 0x18, 0x26, + 0x63, 0xf1, 0x7b, 0xfd, 0xcb, 0x8e, 0x3d, 0x32, 0x83, 0xf6, 0x76, 0xec, 0xaf, 0x75, 0xfc, 0x02, + 0xd7, 0x57, 0x40, 0x5b, 0xad, 0xce, 0xdd, 0x6d, 0xe6, 0x28, 0x60, 0xa9, 0x84, 0x18, 0xd4, 0x96, + 0xe3, 0x53, 0xc5, 0x99, 0x13, 0x8b, 0x2e, 0xd7, 0x42, 0xde, 0x9e, 0x3b, 0x2d, 0x2b, 0x4d, 0xbb, + 0x01, 0x95, 0xc1, 0x1f, 0x47, 0x06, 0xca, 0xe1, 0xc2, 0x49, 0xa4, 0xd8, 0xee, 0x39, 0x12, 0x68, + 0x80, 0x9f, 0xe3, 0xb1, 0x16, 0x24, 0x11, 0x65, 0x60, 0xad, 0x0d, 0xc7, 0xa7, 0x0a, 0xce, 0x62, + 0x17, 0x72, 0x05, 0xfc, 0x5a, 0x72, 0x0d, 0xf8, 0x19, 0x6e, 0x2c, 0x4b, 0xa0, 0xfa, 0x3c, 0xc0, + 0x8f, 0x20, 0x82, 0xff, 0x0f, 0xde, 0xc4, 0xa3, 0xab, 0x5c, 0x9d, 0xcb, 0x3d, 0x37, 0xd7, 0xf1, + 0x78, 0xf9, 0xc4, 0xd6, 0x32, 0x1e, 0x0b, 0x59, 0xdb, 0x74, 0x46, 0xd1, 0x5c, 0xb7, 0xce, 0xea, + 0x8c, 0x95, 0x48, 0xf8, 0x34, 0x3a, 0xe9, 0x8f, 0x46, 0xc8, 0x8e, 0xe2, 0xe6, 0x2f, 0x84, 0x27, + 0x37, 0x34, 0xd5, 0xa9, 0xfa, 0xe7, 0xae, 0x2f, 0xec, 0x43, 0xba, 0xfe, 0x31, 0x9e, 0x28, 0x46, + 0x43, 0x5b, 0x42, 0x47, 0xd9, 0x23, 0x73, 0xf5, 0xf9, 0x89, 0x85, 0x2b, 0x43, 0xff, 0x4c, 0x0b, + 0x3a, 0x47, 0xc9, 0x4b, 0xd3, 0x9f, 0xde, 0x4c, 0x0e, 0x96, 0xd9, 0xc2, 0xa2, 0xd4, 0x95, 0xf5, + 0x00, 0x63, 0x26, 0xba, 0x01, 0x37, 0xff, 0xd3, 0xae, 0x0f, 0xc5, 0x2d, 0x97, 0x06, 0x53, 0xcb, + 0x80, 0x7f, 0xf1, 0xe2, 0xde, 0xc3, 0x19, 0x3c, 0x85, 0x27, 0xcb, 0xf2, 0xdc, 0x94, 0x07, 0x4b, + 0xef, 0xd0, 0xee, 0x01, 0xa9, 0xed, 0x1f, 0x90, 0xda, 0xe1, 0x01, 0x41, 0x6f, 0x73, 0x82, 0x3e, + 0xe6, 0x04, 0x7d, 0xcb, 0x09, 0xda, 0xcd, 0x09, 0xda, 0xcf, 0x09, 0xfa, 0x91, 0x13, 0xf4, 0x33, + 0x27, 0xb5, 0xc3, 0x9c, 0xa0, 0xf7, 0x7d, 0x52, 0xfb, 0xdc, 0x27, 0x68, 0xb7, 0x4f, 0x6a, 0xfb, + 0x7d, 0x52, 0xdb, 0x7c, 0x12, 0x8a, 0xe4, 0x55, 0xe8, 0x66, 0x22, 0xd2, 0x20, 0x25, 0x75, 0x53, + 0xe5, 0x99, 0xa0, 0x23, 0x64, 0x7c, 0xf4, 0x4c, 0x19, 0x0f, 0x40, 0x3a, 0xa5, 0xec, 0x25, 0x7e, + 0x28, 0x3c, 0xd8, 0xd6, 0xc7, 0x03, 0x67, 0xc8, 0xe8, 0xf2, 0x1b, 0x66, 0xec, 0xdc, 0xf9, 0x1d, + 0x00, 0x00, 0xff, 0xff, 0xeb, 0xa9, 0x76, 0x81, 0x70, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/rate_limiter/public_crudapi.pb.go b/pbgo/extschema/schema/rate_limiter/public_crudapi.pb.go index 8f03cd451..b9901e738 100644 --- a/pbgo/extschema/schema/rate_limiter/public_crudapi.pb.go +++ b/pbgo/extschema/schema/rate_limiter/public_crudapi.pb.go @@ -1059,108 +1059,109 @@ func init() { } var fileDescriptor_39eecd97af2fdc20 = []byte{ - // 1604 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0xdb, - 0x15, 0xce, 0xb5, 0x1d, 0x63, 0x5f, 0xe7, 0xc7, 0x70, 0x0b, 0xc1, 0x71, 0xa9, 0x65, 0x0c, 0x22, - 0x69, 0xc0, 0x63, 0x1a, 0x84, 0x04, 0x51, 0x4b, 0x6b, 0x27, 0x93, 0x28, 0x69, 0x42, 0xa2, 0xb1, - 0x41, 0x15, 0x8b, 0x8e, 0xc6, 0xe3, 0x63, 0x33, 0x8d, 0xed, 0x19, 0x66, 0xae, 0x1d, 0xac, 0x2a, - 0x52, 0x8b, 0xba, 0xad, 0x54, 0xb5, 0x3b, 0xd4, 0x45, 0x37, 0x95, 0xde, 0xe2, 0xfd, 0x01, 0x4f, - 0x0a, 0x0b, 0x56, 0x0f, 0xc4, 0xe2, 0x09, 0xf1, 0x36, 0x2c, 0xc1, 0x79, 0x7a, 0x62, 0x89, 0xde, - 0x8a, 0xe5, 0xd3, 0xdc, 0x3b, 0x63, 0x6c, 0xc7, 0x38, 0x4e, 0xc8, 0xca, 0x73, 0xef, 0x39, 0xdf, - 0xe7, 0xf3, 0xdd, 0x7b, 0xce, 0xf1, 0xf1, 0xe0, 0x74, 0x03, 0x6c, 0x51, 0x37, 0xd2, 0xb6, 0xf6, - 0x00, 0xaa, 0x6a, 0xda, 0x52, 0x29, 0x28, 0x15, 0xbd, 0xaa, 0x53, 0xb0, 0xd2, 0x66, 0xbd, 0x50, - 0xd1, 0x35, 0x45, 0xb3, 0xea, 0x45, 0xd5, 0xd4, 0x45, 0xd3, 0x32, 0xa8, 0x41, 0x62, 0x1c, 0x20, - 0x72, 0x80, 0xd8, 0x09, 0x88, 0xa5, 0xca, 0x3a, 0x7d, 0x50, 0x2f, 0x88, 0x9a, 0x51, 0x4d, 0x97, - 0x8d, 0xb2, 0x91, 0x66, 0x90, 0x42, 0xbd, 0xc4, 0x56, 0x6c, 0xc1, 0x9e, 0x38, 0x55, 0xec, 0x7c, - 0xd9, 0x30, 0xca, 0x15, 0x48, 0xab, 0xa6, 0x9e, 0x56, 0x6b, 0x35, 0x83, 0xaa, 0x54, 0x37, 0x6a, - 0xb6, 0x6b, 0xfd, 0xa5, 0x6b, 0x6d, 0x73, 0x40, 0xd5, 0xa4, 0x4d, 0xd7, 0x18, 0xeb, 0x0e, 0x1b, - 0x2c, 0xcb, 0xb0, 0xda, 0xc0, 0x6e, 0x9b, 0x61, 0x76, 0xb2, 0xce, 0x0c, 0xd0, 0x6b, 0x14, 0xfe, - 0x02, 0x1a, 0x75, 0x1d, 0x2f, 0x0f, 0x70, 0xa4, 0x4d, 0x13, 0x3c, 0xc2, 0xe9, 0x6e, 0xbf, 0x4e, - 0x53, 0xb2, 0xdb, 0xd4, 0x00, 0x1b, 0x6a, 0x8d, 0x9e, 0x78, 0x12, 0x3d, 0x3e, 0x3a, 0xec, 0x28, - 0x5d, 0x1e, 0xc9, 0xaf, 0x11, 0x1e, 0x5f, 0xb4, 0x40, 0xa5, 0x20, 0xc3, 0xc3, 0x3a, 0xd8, 0x94, - 0xfc, 0x1e, 0x87, 0xaa, 0x40, 0xd5, 0xa2, 0x4a, 0xd5, 0x28, 0x4a, 0xa0, 0xd9, 0xc8, 0xfc, 0x45, - 0xb1, 0xfb, 0x56, 0x36, 0x99, 0x12, 0x8e, 0xda, 0x00, 0xaa, 0xe6, 0x9b, 0x26, 0xc8, 0x6d, 0x10, - 0xd9, 0xc4, 0x01, 0xdb, 0x04, 0x2d, 0xea, 0x63, 0xe0, 0x39, 0xf1, 0xf3, 0x57, 0x2a, 0x72, 0x8e, - 0x9c, 0x09, 0x9a, 0xc3, 0x91, 0x9d, 0x7c, 0xb2, 0x3b, 0xe6, 0x40, 0xc5, 0xb2, 0xa6, 0x38, 0x9f, - 0x32, 0x23, 0x5a, 0x08, 0xbf, 0xbc, 0x1d, 0xe4, 0xdf, 0x99, 0xfc, 0x88, 0xf0, 0x84, 0x17, 0xae, - 0x6d, 0x1a, 0x35, 0x1b, 0xc8, 0x6f, 0x0f, 0xc4, 0x9b, 0xe8, 0x1b, 0xef, 0x0a, 0xd0, 0xbe, 0xc1, - 0x4e, 0xda, 0x4d, 0x9b, 0x42, 0x55, 0x69, 0x93, 0xf8, 0x19, 0xc9, 0xe5, 0x1e, 0x92, 0x1c, 0xf3, - 0x3a, 0x48, 0x35, 0xc1, 0xe1, 0x1b, 0x1e, 0xe1, 0x7a, 0x97, 0xfa, 0x99, 0x41, 0xea, 0x57, 0x80, - 0x1e, 0x41, 0xfa, 0x5b, 0x84, 0x27, 0x64, 0x30, 0x2b, 0xaa, 0xd6, 0xbe, 0xaa, 0x3f, 0x1c, 0x90, - 0x7e, 0xa9, 0xaf, 0x74, 0x17, 0xd6, 0x47, 0xfe, 0x56, 0x57, 0xb4, 0x57, 0x06, 0x45, 0xeb, 0x92, - 0x1c, 0x12, 0x31, 0x49, 0x63, 0xc1, 0x02, 0xdb, 0xa8, 0x5b, 0x1a, 0x28, 0x0d, 0xb0, 0x6c, 0xdd, - 0xa8, 0xb1, 0x13, 0x0d, 0x67, 0x03, 0xef, 0xf7, 0x10, 0x92, 0x27, 0x3d, 0xeb, 0x3d, 0x6e, 0xec, - 0x94, 0x78, 0x1a, 0x4f, 0xb6, 0x15, 0xf2, 0xdb, 0x4d, 0x3e, 0x41, 0x18, 0xaf, 0x00, 0xf5, 0x14, - 0x9f, 0xc7, 0xe1, 0x9a, 0x5a, 0x05, 0xdb, 0x54, 0x35, 0x60, 0x92, 0xc3, 0xf2, 0xa7, 0x0d, 0x42, - 0x70, 0xc0, 0x59, 0x30, 0x35, 0x61, 0x99, 0x3d, 0x93, 0xfb, 0xd8, 0xf9, 0x46, 0x46, 0xa6, 0x94, - 0x0c, 0xab, 0xaa, 0x52, 0x16, 0xce, 0xc4, 0xfc, 0x6f, 0x0e, 0xb9, 0x1a, 0x2f, 0x84, 0x65, 0x06, - 0x5a, 0x34, 0x8a, 0x20, 0x4f, 0x58, 0x5d, 0x7b, 0xc9, 0x7f, 0x06, 0x71, 0xa4, 0xc3, 0x93, 0xac, - 0xe1, 0x88, 0xc6, 0x92, 0x93, 0x7d, 0x93, 0x7b, 0xa8, 0xbf, 0x3e, 0xbc, 0x00, 0x5c, 0x75, 0x32, - 0xe6, 0x68, 0x87, 0x9d, 0x6c, 0xe0, 0x31, 0x8b, 0x9f, 0x05, 0x27, 0xf3, 0x1f, 0x5e, 0x4d, 0xdd, - 0xd9, 0x21, 0x47, 0x5c, 0x3c, 0xa3, 0xeb, 0x77, 0x2d, 0x81, 0x01, 0xd7, 0xd2, 0x55, 0x56, 0xa3, - 0x27, 0x51, 0x56, 0xa7, 0x4e, 0xa4, 0xac, 0x82, 0x27, 0x51, 0x56, 0x64, 0x05, 0x07, 0x6d, 0xaa, - 0xd2, 0xba, 0x1d, 0xfd, 0xdf, 0x7f, 0x51, 0xc2, 0x3f, 0x1b, 0x99, 0x9f, 0x1d, 0xc4, 0x98, 0x63, - 0xbe, 0x3c, 0xc8, 0xac, 0xff, 0xd9, 0x2e, 0x92, 0x5d, 0x38, 0x59, 0xc5, 0xa7, 0x2d, 0x28, 0x81, - 0x65, 0xe9, 0xb5, 0xb2, 0xc2, 0x3b, 0xbc, 0x1d, 0x0d, 0x31, 0xc6, 0xf3, 0x9f, 0x29, 0xc5, 0x12, - 0xd3, 0x27, 0xb4, 0x61, 0x7c, 0xdf, 0x26, 0xf7, 0x70, 0xb4, 0x08, 0x15, 0xa0, 0x50, 0x54, 0xb8, - 0x0d, 0x8a, 0x6d, 0xc6, 0xf0, 0x10, 0x8c, 0x53, 0x2e, 0x5a, 0x76, 0xc1, 0x1e, 0xef, 0x9f, 0xf0, - 0x74, 0x51, 0xb7, 0xd5, 0x42, 0xa5, 0x1f, 0x31, 0x1e, 0x82, 0xf8, 0x9c, 0x07, 0xef, 0x61, 0xee, - 0xa8, 0xdc, 0xb5, 0x40, 0x08, 0x09, 0xbe, 0xe4, 0xff, 0x11, 0x8e, 0xac, 0xeb, 0xf6, 0x90, 0xd5, - 0x7a, 0x01, 0x8f, 0x55, 0xd4, 0x02, 0x54, 0x94, 0x92, 0x5e, 0xa1, 0x60, 0xb9, 0x55, 0x1b, 0x61, - 0x7b, 0xcb, 0x6c, 0x8b, 0x5c, 0xc4, 0xe3, 0x16, 0x98, 0x86, 0x45, 0x95, 0x92, 0x0e, 0x95, 0xa2, - 0x1d, 0xf5, 0x27, 0xfc, 0xb3, 0x61, 0x79, 0x8c, 0x6f, 0x2e, 0xb3, 0x3d, 0x72, 0x0d, 0x9f, 0x71, - 0x9d, 0xf8, 0xa5, 0x78, 0xbe, 0x01, 0xe6, 0x4b, 0xb8, 0x8d, 0x5f, 0x21, 0x47, 0x24, 0x9f, 0x06, - 0xb1, 0xc0, 0xe3, 0xe4, 0x85, 0xbb, 0x4a, 0xa1, 0x4a, 0xa6, 0x70, 0x90, 0x42, 0x4d, 0xad, 0x51, - 0x96, 0x63, 0x61, 0xd9, 0x5d, 0x1d, 0xa3, 0xe5, 0x08, 0xd8, 0x5f, 0xd7, 0x8b, 0xbc, 0xeb, 0xc9, - 0xce, 0x23, 0x49, 0xe0, 0x48, 0x11, 0x6c, 0xcd, 0xd2, 0xd9, 0x6f, 0x6f, 0x34, 0xc2, 0x95, 0x76, - 0x6c, 0x91, 0x18, 0x0e, 0x79, 0xc7, 0x1c, 0x1d, 0x4b, 0xa0, 0xd9, 0x90, 0xdc, 0x5e, 0x93, 0x2d, - 0x1c, 0x64, 0x87, 0xc2, 0x25, 0x45, 0xe6, 0x6f, 0x0e, 0xca, 0xd5, 0x5e, 0x5d, 0xe2, 0x3a, 0x83, - 0x4a, 0x35, 0x6a, 0x35, 0x65, 0x97, 0x87, 0x28, 0x38, 0xd2, 0x31, 0x12, 0xb9, 0x59, 0xf0, 0xbb, - 0x23, 0xd1, 0x66, 0x3e, 0xe1, 0x39, 0x77, 0x27, 0x23, 0xb9, 0x85, 0xb1, 0xb1, 0x53, 0x03, 0x4b, - 0x71, 0x46, 0x8e, 0x68, 0x98, 0x15, 0x6d, 0xac, 0x87, 0xff, 0x9e, 0x0e, 0x3b, 0x5e, 0x8e, 0x85, - 0x99, 0xb7, 0xb3, 0xd3, 0xd5, 0x78, 0xc6, 0x4f, 0xa2, 0xf1, 0x4c, 0x7c, 0x51, 0xe3, 0xc9, 0xe2, - 0x50, 0x19, 0x28, 0x6b, 0x1e, 0x6e, 0x0b, 0x1b, 0xb6, 0xf9, 0xc8, 0xa7, 0xca, 0x7c, 0x41, 0xd6, - 0x31, 0x76, 0x53, 0xd3, 0x06, 0xea, 0xb6, 0x87, 0x23, 0x36, 0x9c, 0x30, 0x27, 0xc8, 0x01, 0x8d, - 0xdd, 0xc2, 0x91, 0x8e, 0x3b, 0x75, 0xb2, 0x6d, 0x1b, 0x9a, 0x6e, 0x66, 0x3a, 0x8f, 0xe4, 0x0c, - 0x1e, 0x6d, 0xa8, 0x95, 0xba, 0x97, 0x94, 0x7c, 0xb1, 0xe0, 0xbb, 0x89, 0x62, 0xb7, 0xb1, 0xd0, - 0x7b, 0x6f, 0x47, 0xc1, 0xaf, 0x05, 0x42, 0xa3, 0x42, 0x30, 0xf9, 0x0f, 0x84, 0xc7, 0x3a, 0xf3, - 0x81, 0x64, 0xf1, 0xa8, 0x4e, 0xa1, 0x6a, 0x47, 0x79, 0x2f, 0xbd, 0x7a, 0x94, 0x44, 0x92, 0x39, - 0x94, 0x5c, 0xc3, 0x41, 0x3e, 0x67, 0x47, 0x7d, 0x8c, 0x24, 0xda, 0x43, 0x22, 0x39, 0x46, 0x76, - 0xac, 0xae, 0x5f, 0x72, 0x1b, 0x8f, 0x2f, 0xb1, 0x96, 0x77, 0xfc, 0xe1, 0x60, 0x16, 0x0b, 0x25, - 0x55, 0xaf, 0x28, 0x7a, 0xa9, 0xdd, 0x1a, 0x59, 0xd9, 0x86, 0xe4, 0x09, 0x67, 0x7f, 0xb5, 0xe4, - 0xb5, 0xbc, 0xb9, 0x9f, 0x10, 0x3e, 0xdb, 0x77, 0x28, 0x20, 0x31, 0x3c, 0xb5, 0x22, 0xe5, 0x15, - 0x39, 0xb7, 0xa5, 0x2c, 0x6f, 0xca, 0x1b, 0x99, 0xbc, 0xb2, 0x24, 0x2d, 0x67, 0xee, 0xae, 0xe7, - 0x85, 0x11, 0xf2, 0x2b, 0x3c, 0xdd, 0x63, 0x5b, 0xde, 0x94, 0x95, 0x45, 0x59, 0xca, 0xe4, 0x25, - 0x01, 0x91, 0x38, 0x8e, 0xf5, 0x31, 0xcb, 0xd2, 0xd6, 0x7a, 0x66, 0x51, 0x12, 0x7c, 0x64, 0x1a, - 0x9f, 0xed, 0xb1, 0xe7, 0xf2, 0x99, 0xfc, 0xdd, 0x9c, 0xe0, 0x27, 0xe7, 0xf0, 0x2f, 0x7a, 0x4c, - 0xb2, 0x94, 0x59, 0x12, 0x02, 0xe4, 0x12, 0x4e, 0x1c, 0x30, 0x2c, 0x4b, 0xb2, 0xbc, 0x7a, 0x67, - 0x45, 0xd9, 0xcc, 0xae, 0x49, 0x8b, 0xf9, 0x9c, 0x30, 0xda, 0xc7, 0x2b, 0x2b, 0x6f, 0xfe, 0x51, - 0xba, 0xc3, 0x9d, 0xa5, 0x3b, 0x8b, 0x52, 0x4e, 0x08, 0xce, 0x7f, 0x0c, 0x61, 0x7f, 0x66, 0x6b, - 0x95, 0xbc, 0x46, 0x38, 0xc8, 0x27, 0x15, 0x32, 0xfc, 0x34, 0x13, 0x9b, 0x1b, 0xc6, 0xd5, 0x1d, - 0xf3, 0x1e, 0xb6, 0x9e, 0x47, 0x53, 0xa5, 0x1b, 0x8f, 0xb4, 0x94, 0x0d, 0x5a, 0xdd, 0x82, 0x2a, - 0xd8, 0x0f, 0x52, 0x05, 0xd5, 0xd6, 0xb5, 0x54, 0xdd, 0x06, 0xeb, 0x6a, 0x03, 0xec, 0x94, 0x6e, - 0xa4, 0x4c, 0xcb, 0x78, 0xd4, 0x4c, 0xed, 0x58, 0x3a, 0x85, 0xc7, 0xdf, 0xff, 0xf0, 0x1f, 0xdf, - 0x42, 0xf2, 0x86, 0xfb, 0x3f, 0x32, 0xdd, 0xbe, 0x68, 0x3b, 0xfd, 0x57, 0xaf, 0xf4, 0xc5, 0xf6, - 0xe6, 0x6e, 0xd7, 0x5f, 0x2c, 0x7b, 0x01, 0xcd, 0x91, 0x97, 0x08, 0xfb, 0x57, 0x80, 0x92, 0xcb, - 0x87, 0xce, 0x81, 0x5c, 0xce, 0xcc, 0x90, 0xf3, 0x62, 0xd2, 0x7a, 0xf1, 0x8d, 0x0f, 0xb5, 0x9e, - 0x47, 0xd3, 0xfd, 0xf5, 0x54, 0x8d, 0x9a, 0x4e, 0x8d, 0x1e, 0x49, 0x16, 0xa8, 0x45, 0xa6, 0xe8, - 0x06, 0xb9, 0xde, 0x4f, 0xd1, 0xe7, 0x84, 0x70, 0xcb, 0x2e, 0xf9, 0x16, 0xe1, 0x80, 0x53, 0x59, - 0x64, 0xe6, 0xf0, 0xda, 0xe3, 0x72, 0x66, 0x87, 0x2d, 0xd2, 0xe4, 0xf6, 0x97, 0xe8, 0x11, 0xc9, - 0xd5, 0xa3, 0xe8, 0x21, 0x3f, 0x22, 0x7c, 0xca, 0x9d, 0x63, 0xc9, 0x11, 0x86, 0xdd, 0xd8, 0x95, - 0xa1, 0x7c, 0x5d, 0x45, 0x7f, 0x47, 0xc7, 0x4b, 0xb7, 0xb5, 0x98, 0x74, 0xac, 0x74, 0xeb, 0x71, - 0xd9, 0x75, 0xd2, 0xef, 0x29, 0xc2, 0x41, 0xde, 0xbe, 0x06, 0xd7, 0x54, 0x57, 0x8b, 0x8b, 0x4d, - 0x89, 0xfc, 0xbd, 0x85, 0xe8, 0xbd, 0xb7, 0x10, 0xa5, 0xaa, 0x49, 0x9b, 0x49, 0xe3, 0x78, 0x82, - 0x6e, 0xce, 0x1d, 0x27, 0xdb, 0x16, 0xd0, 0x5c, 0xec, 0xcf, 0xcf, 0xf6, 0x90, 0xef, 0xf5, 0x1e, - 0xba, 0x30, 0x20, 0x74, 0xfe, 0xfb, 0xf5, 0x66, 0x0f, 0xa1, 0xd6, 0x1e, 0x9a, 0x19, 0xf2, 0xe7, - 0xee, 0xf1, 0x77, 0x51, 0x9f, 0x80, 0xb2, 0xff, 0x46, 0x2f, 0x6f, 0x8f, 0x2e, 0xca, 0x77, 0x97, - 0xd6, 0x5f, 0xbd, 0x8b, 0x8f, 0xbc, 0x79, 0x17, 0x1f, 0xf9, 0xf0, 0x2e, 0x8e, 0xfe, 0xd6, 0x8a, - 0xa3, 0xaf, 0x5a, 0x71, 0xf4, 0xa2, 0x15, 0x47, 0xaf, 0x5a, 0x71, 0xf4, 0xb6, 0x15, 0x47, 0xef, - 0x5b, 0xf1, 0x91, 0x0f, 0xad, 0x38, 0xfa, 0xd7, 0x7e, 0x7c, 0xe4, 0xd9, 0x7e, 0x1c, 0xbd, 0xda, - 0x8f, 0x8f, 0xbc, 0xd9, 0x8f, 0x8f, 0xdc, 0xdf, 0x2a, 0x1b, 0xe6, 0x76, 0x59, 0x6c, 0x18, 0xce, - 0x28, 0x69, 0xa9, 0x62, 0xdd, 0x4e, 0xb3, 0x07, 0xe7, 0xef, 0x94, 0x73, 0x12, 0x0d, 0xbd, 0x08, - 0x56, 0xca, 0x33, 0xa7, 0xcd, 0x42, 0xd9, 0x48, 0xc3, 0x23, 0xea, 0xbe, 0x2b, 0xe9, 0xf3, 0x66, - 0xa6, 0x10, 0x64, 0xa7, 0x7e, 0xfd, 0xe7, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd3, 0x4f, 0xc2, 0xbe, - 0xd7, 0x12, 0x00, 0x00, + // 1624 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x1b, 0x5b, + 0x15, 0xce, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0x8f, 0x79, 0x97, 0xf7, 0xf2, 0x1c, 0x53, 0x2c, 0x3f, + 0xbf, 0xa7, 0x26, 0xe4, 0xd5, 0xe3, 0x47, 0x9e, 0x2a, 0xb5, 0x11, 0x14, 0xec, 0x64, 0x12, 0x25, + 0x4d, 0x9a, 0x68, 0xec, 0x56, 0xa8, 0x0b, 0x46, 0xe3, 0xf1, 0xb1, 0x3b, 0xd4, 0xf6, 0x0c, 0x73, + 0xaf, 0x9d, 0x5a, 0x28, 0x12, 0xaa, 0xba, 0xa4, 0x02, 0xd1, 0x0d, 0xaa, 0x90, 0x60, 0x83, 0xc4, + 0x82, 0x3f, 0x00, 0x29, 0x2c, 0xba, 0xa3, 0xea, 0x02, 0x55, 0xb0, 0xa9, 0xc4, 0xa6, 0x75, 0x58, + 0x74, 0xc1, 0xa2, 0xb0, 0x62, 0x89, 0xe6, 0xde, 0x19, 0xd7, 0x76, 0x5c, 0xc7, 0x09, 0xe9, 0xca, + 0x73, 0xef, 0x39, 0xdf, 0xe7, 0xf3, 0xdd, 0x7b, 0xce, 0xf1, 0xf1, 0xe0, 0x6c, 0x0b, 0xa8, 0x6c, + 0x5a, 0x59, 0x6a, 0xdc, 0x85, 0xba, 0x9e, 0x75, 0x74, 0x06, 0x5a, 0xcd, 0xac, 0x9b, 0x0c, 0x9c, + 0xac, 0xdd, 0x2c, 0xd5, 0x4c, 0x43, 0x33, 0x9c, 0x66, 0x59, 0xb7, 0x4d, 0xd9, 0x76, 0x2c, 0x66, + 0x91, 0x84, 0x00, 0xc8, 0x02, 0x20, 0xf7, 0x02, 0x12, 0x99, 0xaa, 0xc9, 0xee, 0x36, 0x4b, 0xb2, + 0x61, 0xd5, 0xb3, 0x55, 0xab, 0x6a, 0x65, 0x39, 0xa4, 0xd4, 0xac, 0xf0, 0x15, 0x5f, 0xf0, 0x27, + 0x41, 0x95, 0xb8, 0x58, 0xb5, 0xac, 0x6a, 0x0d, 0xb2, 0xba, 0x6d, 0x66, 0xf5, 0x46, 0xc3, 0x62, + 0x3a, 0x33, 0xad, 0x06, 0xf5, 0xac, 0xdf, 0xf4, 0xac, 0x5d, 0x0e, 0xa8, 0xdb, 0xac, 0xed, 0x19, + 0x13, 0xfd, 0x61, 0x83, 0xe3, 0x58, 0x4e, 0x17, 0xd8, 0x6f, 0xb3, 0xec, 0x5e, 0xd6, 0x85, 0x11, + 0x7a, 0xad, 0xd2, 0x8f, 0xc1, 0x60, 0x9e, 0xe3, 0xa5, 0x11, 0x8e, 0xac, 0x6d, 0x83, 0x4f, 0x38, + 0xdf, 0xef, 0xd7, 0x6b, 0x4a, 0xf7, 0x9b, 0x5a, 0x40, 0xa1, 0xd1, 0x1a, 0x88, 0x27, 0x35, 0xe0, + 0x63, 0xc2, 0xbe, 0xd6, 0xe7, 0x91, 0xfe, 0x23, 0xc2, 0xd3, 0xab, 0x0e, 0xe8, 0x0c, 0x54, 0xf8, + 0x49, 0x13, 0x28, 0x23, 0xdf, 0xc7, 0x91, 0x3a, 0x30, 0xbd, 0xac, 0x33, 0x3d, 0x8e, 0x52, 0x68, + 0x31, 0xb6, 0xfc, 0xb9, 0xdc, 0x7f, 0x2b, 0xbb, 0x5c, 0x89, 0x40, 0xed, 0x00, 0xd3, 0x8b, 0x6d, + 0x1b, 0xd4, 0x2e, 0x88, 0xec, 0xe2, 0x10, 0xb5, 0xc1, 0x88, 0x07, 0x38, 0x78, 0x49, 0x7e, 0xff, + 0x95, 0xca, 0x82, 0xa3, 0x60, 0x83, 0xe1, 0x72, 0xe4, 0x67, 0x9f, 0x1c, 0x4c, 0xb9, 0x50, 0xb9, + 0x6a, 0x68, 0xee, 0xa7, 0xca, 0x89, 0x56, 0xa2, 0xcf, 0xaf, 0x87, 0xc5, 0x77, 0xa6, 0xff, 0x8b, + 0xf0, 0x8c, 0x1f, 0x2e, 0xb5, 0xad, 0x06, 0x05, 0xf2, 0xdd, 0x63, 0xf1, 0xa6, 0x86, 0xc6, 0xbb, + 0x01, 0x6c, 0x68, 0xb0, 0xb3, 0xb4, 0x4d, 0x19, 0xd4, 0xb5, 0x2e, 0x49, 0x90, 0x93, 0x5c, 0x1a, + 0x20, 0x29, 0x70, 0xaf, 0xe3, 0x54, 0x33, 0x02, 0xbe, 0xe3, 0x13, 0x6e, 0xf7, 0xa9, 0x5f, 0x18, + 0xa5, 0x7e, 0x03, 0xd8, 0x29, 0xa4, 0xbf, 0x42, 0x78, 0x46, 0x05, 0xbb, 0xa6, 0x1b, 0xdd, 0xab, + 0xfa, 0xc1, 0x31, 0xe9, 0x5f, 0x0c, 0x95, 0xee, 0xc1, 0x86, 0xc8, 0xdf, 0xeb, 0x8b, 0xf6, 0xcb, + 0x51, 0xd1, 0x7a, 0x24, 0x27, 0x44, 0x4c, 0xb2, 0x58, 0x72, 0x80, 0x5a, 0x4d, 0xc7, 0x00, 0xad, + 0x05, 0x0e, 0x35, 0xad, 0x06, 0x3f, 0xd1, 0x68, 0x3e, 0xf4, 0xe6, 0x10, 0x21, 0x75, 0xd6, 0xb7, + 0xde, 0x16, 0xc6, 0x5e, 0x89, 0x1f, 0xe1, 0xd9, 0xae, 0x42, 0x71, 0xbb, 0xe9, 0x27, 0x08, 0xe3, + 0x0d, 0x60, 0xbe, 0xe2, 0x8b, 0x38, 0xda, 0xd0, 0xeb, 0x40, 0x6d, 0xdd, 0x00, 0x2e, 0x39, 0xaa, + 0xbe, 0xdb, 0x20, 0x04, 0x87, 0xdc, 0x05, 0x57, 0x13, 0x55, 0xf9, 0x33, 0xb9, 0x83, 0xdd, 0x6f, + 0xe4, 0x64, 0x5a, 0xc5, 0x72, 0xea, 0x3a, 0xe3, 0xe1, 0xcc, 0x2c, 0x7f, 0xe7, 0x84, 0xab, 0xf1, + 0x43, 0x58, 0xe7, 0xa0, 0x55, 0xab, 0x0c, 0xea, 0x8c, 0xd3, 0xb7, 0x97, 0x7e, 0x14, 0xc6, 0xb1, + 0x1e, 0x4f, 0xb2, 0x85, 0x63, 0x06, 0x4f, 0x4e, 0xfe, 0x4d, 0xde, 0xa1, 0x7e, 0xfb, 0xe4, 0x02, + 0xf0, 0xd4, 0xa9, 0x58, 0xa0, 0x5d, 0x76, 0xb2, 0x83, 0xa7, 0x1c, 0x71, 0x16, 0x82, 0x2c, 0x78, + 0x72, 0x35, 0xf5, 0x67, 0x87, 0x1a, 0xf3, 0xf0, 0x9c, 0x6e, 0xd8, 0xb5, 0x84, 0x46, 0x5c, 0x4b, + 0x5f, 0x59, 0x4d, 0x9e, 0x47, 0x59, 0x5d, 0x38, 0x97, 0xb2, 0x0a, 0x9f, 0x47, 0x59, 0x91, 0x0d, + 0x1c, 0xa6, 0x4c, 0x67, 0x4d, 0x1a, 0xff, 0xdd, 0x6f, 0x50, 0x2a, 0xb8, 0x18, 0x5b, 0x5e, 0x1c, + 0xc5, 0x58, 0xe0, 0xbe, 0x22, 0xc8, 0x7c, 0xf0, 0xe9, 0x01, 0x52, 0x3d, 0x38, 0xd9, 0xc4, 0x1f, + 0x39, 0x50, 0x01, 0xc7, 0x31, 0x1b, 0x55, 0x4d, 0x74, 0x78, 0x1a, 0x8f, 0x70, 0xc6, 0x8b, 0xef, + 0x29, 0xc5, 0x0a, 0xd7, 0x27, 0x75, 0x61, 0x62, 0x9f, 0x92, 0xdb, 0x38, 0x5e, 0x86, 0x1a, 0x30, + 0x28, 0x6b, 0xc2, 0x06, 0xe5, 0x2e, 0x63, 0x74, 0x0c, 0xc6, 0x39, 0x0f, 0xad, 0x7a, 0x60, 0x9f, + 0xf7, 0x87, 0x78, 0xbe, 0x6c, 0x52, 0xbd, 0x54, 0x1b, 0x46, 0x8c, 0xc7, 0x20, 0xfe, 0xd4, 0x87, + 0x0f, 0x30, 0xf7, 0x54, 0xee, 0x56, 0x28, 0x82, 0xa4, 0x40, 0xfa, 0xf7, 0x08, 0xc7, 0xb6, 0x4d, + 0x3a, 0x66, 0xb5, 0x7e, 0x86, 0xa7, 0x6a, 0x7a, 0x09, 0x6a, 0x5a, 0xc5, 0xac, 0x31, 0x70, 0xbc, + 0xaa, 0x8d, 0xf1, 0xbd, 0x75, 0xbe, 0x45, 0x3e, 0xc7, 0xd3, 0x0e, 0xd8, 0x96, 0xc3, 0xb4, 0x8a, + 0x09, 0xb5, 0x32, 0x8d, 0x07, 0x53, 0xc1, 0xc5, 0xa8, 0x3a, 0x25, 0x36, 0xd7, 0xf9, 0x1e, 0xf9, + 0x0a, 0x7f, 0xec, 0x39, 0x89, 0x4b, 0xf1, 0x7d, 0x43, 0xdc, 0x97, 0x08, 0x9b, 0xb8, 0x42, 0x81, + 0x48, 0xff, 0x39, 0x8c, 0x25, 0x11, 0xa7, 0x28, 0xdc, 0x4d, 0x06, 0x75, 0x32, 0x87, 0xc3, 0x0c, + 0x1a, 0x7a, 0x83, 0xf1, 0x1c, 0x8b, 0xaa, 0xde, 0xea, 0x0c, 0x2d, 0x47, 0xc2, 0xc1, 0xa6, 0x59, + 0x16, 0x5d, 0x4f, 0x75, 0x1f, 0x49, 0x0a, 0xc7, 0xca, 0x40, 0x0d, 0xc7, 0xe4, 0xbf, 0xbd, 0xf1, + 0x98, 0x50, 0xda, 0xb3, 0x45, 0x12, 0x38, 0xe2, 0x1f, 0x73, 0x7c, 0x2a, 0x85, 0x16, 0x23, 0x6a, + 0x77, 0x4d, 0xf6, 0x70, 0x98, 0x1f, 0x8a, 0x90, 0x14, 0x5b, 0xbe, 0x3a, 0x2a, 0x57, 0x07, 0x75, + 0xc9, 0xdb, 0x1c, 0xaa, 0x34, 0x98, 0xd3, 0x56, 0x3d, 0x1e, 0xa2, 0xe1, 0x58, 0xcf, 0x48, 0xe4, + 0x65, 0xc1, 0xf7, 0x4e, 0x45, 0x9b, 0x7b, 0x87, 0x17, 0xdc, 0xbd, 0x8c, 0xe4, 0x1a, 0xc6, 0xd6, + 0x7e, 0x03, 0x1c, 0xcd, 0x1d, 0x39, 0xe2, 0x51, 0x5e, 0xb4, 0x89, 0x01, 0xfe, 0xdb, 0x26, 0xec, + 0xfb, 0x39, 0x16, 0xe5, 0xde, 0xee, 0x4e, 0x5f, 0xe3, 0x99, 0x3e, 0x8f, 0xc6, 0x33, 0xf3, 0x7f, + 0x35, 0x9e, 0x3c, 0x8e, 0x54, 0x81, 0xf1, 0xe6, 0xe1, 0xb5, 0xb0, 0x71, 0x9b, 0x8f, 0x7a, 0xa1, + 0x2a, 0x16, 0x64, 0x1b, 0x63, 0x2f, 0x35, 0x29, 0x30, 0xaf, 0x3d, 0x9c, 0xb2, 0xe1, 0x44, 0x05, + 0x41, 0x01, 0x58, 0xe2, 0x1a, 0x8e, 0xf5, 0xdc, 0xa9, 0x9b, 0x6d, 0xf7, 0xa0, 0xed, 0x65, 0xa6, + 0xfb, 0x48, 0x3e, 0xc6, 0x93, 0x2d, 0xbd, 0xd6, 0xf4, 0x93, 0x52, 0x2c, 0x56, 0x02, 0x57, 0x51, + 0xe2, 0x3a, 0x96, 0x06, 0xef, 0xed, 0x34, 0xf8, 0xad, 0x50, 0x64, 0x52, 0x0a, 0xa7, 0x1f, 0x22, + 0x3c, 0xd5, 0x9b, 0x0f, 0x24, 0x8f, 0x27, 0x4d, 0x06, 0x75, 0x1a, 0x17, 0xbd, 0xf4, 0xf2, 0x69, + 0x12, 0x49, 0x15, 0x50, 0xf2, 0x15, 0x0e, 0x8b, 0x39, 0x3b, 0x1e, 0xe0, 0x24, 0xf1, 0x01, 0x12, + 0xc5, 0x35, 0xf2, 0x63, 0xf5, 0xfc, 0xd2, 0xf7, 0xf0, 0xf4, 0x1a, 0x6f, 0x79, 0x67, 0x1f, 0x0e, + 0x16, 0xb1, 0x54, 0xd1, 0xcd, 0x9a, 0x66, 0x56, 0xba, 0xad, 0x91, 0x97, 0x6d, 0x44, 0x9d, 0x71, + 0xf7, 0x37, 0x2b, 0x7e, 0xcb, 0x5b, 0xfa, 0x0f, 0xc2, 0x9f, 0x0c, 0x1d, 0x0a, 0x48, 0x02, 0xcf, + 0x6d, 0x28, 0x45, 0x4d, 0x2d, 0xec, 0x69, 0xeb, 0xbb, 0xea, 0x4e, 0xae, 0xa8, 0xad, 0x29, 0xeb, + 0xb9, 0x5b, 0xdb, 0x45, 0x69, 0x82, 0x7c, 0x0b, 0xcf, 0x0f, 0xd8, 0xd6, 0x77, 0x55, 0x6d, 0x55, + 0x55, 0x72, 0x45, 0x45, 0x42, 0x24, 0x89, 0x13, 0x43, 0xcc, 0xaa, 0xb2, 0xb7, 0x9d, 0x5b, 0x55, + 0xa4, 0x00, 0x99, 0xc7, 0x9f, 0x0c, 0xd8, 0x0b, 0xc5, 0x5c, 0xf1, 0x56, 0x41, 0x0a, 0x92, 0x4f, + 0xf1, 0x37, 0x06, 0x4c, 0xaa, 0x92, 0x5b, 0x93, 0x42, 0xe4, 0x0b, 0x9c, 0x3a, 0x66, 0x58, 0x57, + 0x54, 0x75, 0xf3, 0xe6, 0x86, 0xb6, 0x9b, 0xdf, 0x52, 0x56, 0x8b, 0x05, 0x69, 0x72, 0x88, 0x57, + 0x5e, 0xdd, 0xbd, 0xa1, 0xdc, 0x14, 0xce, 0xca, 0xcd, 0x55, 0xa5, 0x20, 0x85, 0x97, 0x7f, 0x8d, + 0x71, 0x30, 0xb7, 0xb7, 0x49, 0xfe, 0x8d, 0x70, 0x58, 0x4c, 0x2a, 0x64, 0xfc, 0x69, 0x26, 0xb1, + 0x34, 0x8e, 0xab, 0x37, 0xe6, 0xfd, 0x02, 0x75, 0xfe, 0x12, 0xbf, 0x51, 0xb9, 0x72, 0xdf, 0xc8, + 0x50, 0x30, 0x9a, 0x0e, 0xd4, 0x81, 0xde, 0xcd, 0x94, 0x74, 0x6a, 0x1a, 0x99, 0x26, 0x05, 0xe7, + 0xf2, 0xa0, 0x89, 0x32, 0xbd, 0x51, 0xd6, 0x9d, 0xb2, 0xb0, 0xb6, 0x80, 0x66, 0x4c, 0x2b, 0x63, + 0x3b, 0xd6, 0xfd, 0x76, 0x66, 0xdf, 0x31, 0x19, 0x3c, 0xf8, 0xfb, 0x3f, 0x1f, 0x07, 0x56, 0xd2, + 0x57, 0xbc, 0xbf, 0x99, 0xd9, 0x6e, 0x1e, 0xd0, 0xec, 0x4f, 0xfd, 0xce, 0x20, 0x77, 0x37, 0x0f, + 0xfa, 0xfe, 0x81, 0xd1, 0x15, 0xb4, 0x44, 0xfe, 0x85, 0x70, 0x70, 0x03, 0x18, 0xb9, 0x74, 0xe2, + 0x98, 0x28, 0xd4, 0x2e, 0x8c, 0x39, 0x4e, 0xa6, 0x1f, 0xa3, 0x67, 0x7f, 0x0a, 0xb8, 0x72, 0xf7, + 0x86, 0xcb, 0xad, 0x5b, 0x0d, 0x93, 0x59, 0x23, 0x14, 0xfb, 0x0e, 0x7d, 0xa2, 0x1d, 0xd0, 0xcb, + 0x5c, 0xf3, 0x15, 0xf2, 0xf5, 0x30, 0xcd, 0xef, 0x93, 0x2a, 0x2c, 0x07, 0xe4, 0x0d, 0xc2, 0x21, + 0xb7, 0x34, 0xc9, 0xc2, 0xc9, 0xc5, 0x2b, 0x04, 0x2f, 0x8e, 0x5b, 0xe5, 0xe9, 0x9f, 0x7f, 0x58, + 0xc5, 0x32, 0xb9, 0x7c, 0x1a, 0xc5, 0xe4, 0x61, 0x00, 0x5f, 0xf0, 0x46, 0x65, 0x72, 0x8a, 0x79, + 0x3a, 0xf1, 0xe5, 0x58, 0xbe, 0x9e, 0xe6, 0xdf, 0x7e, 0x90, 0x84, 0xde, 0x4a, 0x28, 0x67, 0x4a, + 0xe8, 0x01, 0x97, 0x03, 0x37, 0xc1, 0xff, 0x81, 0x70, 0x58, 0xf4, 0xcf, 0xd1, 0x45, 0xdd, 0xd7, + 0x63, 0x13, 0x73, 0xb2, 0x78, 0x71, 0x22, 0xfb, 0x2f, 0x4e, 0x64, 0xa5, 0x6e, 0xb3, 0x76, 0xfa, + 0xd1, 0x07, 0xd1, 0x7b, 0x75, 0xe9, 0x2c, 0xc9, 0xbc, 0x82, 0x96, 0x12, 0x3f, 0x7a, 0x7a, 0x88, + 0x02, 0x7f, 0x3b, 0x44, 0x9f, 0x8d, 0x50, 0x26, 0x7e, 0x5f, 0x5f, 0x1e, 0x22, 0xd4, 0x39, 0x44, + 0x0b, 0x63, 0xfe, 0x1c, 0x3f, 0xf8, 0x6b, 0x3c, 0x20, 0xa1, 0xfc, 0xaf, 0xd0, 0xf3, 0xeb, 0x93, + 0xab, 0xea, 0xad, 0xb5, 0xed, 0x17, 0xaf, 0x93, 0x13, 0x2f, 0x5f, 0x27, 0x27, 0xde, 0xbe, 0x4e, + 0xa2, 0x9f, 0x75, 0x92, 0xe8, 0x0f, 0x9d, 0x24, 0x7a, 0xd6, 0x49, 0xa2, 0x17, 0x9d, 0x24, 0x7a, + 0xd5, 0x49, 0xa2, 0x37, 0x9d, 0xe4, 0xc4, 0xdb, 0x4e, 0x12, 0xfd, 0xf2, 0x28, 0x39, 0xf1, 0xf4, + 0x28, 0x89, 0x5e, 0x1c, 0x25, 0x27, 0x5e, 0x1e, 0x25, 0x27, 0xee, 0xec, 0x55, 0x2d, 0xfb, 0x5e, + 0x55, 0x6e, 0x59, 0xee, 0xa8, 0xeb, 0xe8, 0x72, 0x93, 0x66, 0xf9, 0x83, 0xfb, 0x77, 0xcf, 0x3d, + 0x89, 0x96, 0x59, 0x06, 0x27, 0xe3, 0x9b, 0xb3, 0x76, 0xa9, 0x6a, 0x65, 0xe1, 0x3e, 0xf3, 0xde, + 0xe5, 0x0c, 0x79, 0x73, 0x54, 0x0a, 0xf3, 0x4b, 0xf9, 0xfa, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, + 0x3e, 0xe0, 0xa0, 0x79, 0x77, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/rate_limiter/public_crudapi.vesapi.go b/pbgo/extschema/schema/rate_limiter/public_crudapi.vesapi.go index 19db43dbb..56cb9e60f 100644 --- a/pbgo/extschema/schema/rate_limiter/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/rate_limiter/public_crudapi.vesapi.go @@ -2879,10 +2879,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2939,10 +2943,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3045,10 +3053,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/registration/crudapi/api.vesapi.go b/pbgo/extschema/schema/registration/crudapi/api.vesapi.go index d3c774e39..ebce604df 100644 --- a/pbgo/extschema/schema/registration/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/registration/crudapi/api.vesapi.go @@ -436,7 +436,10 @@ func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...serv if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } body, err := io.ReadAll(rsp.Body) if err != nil { @@ -520,7 +523,10 @@ func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...ser if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } body, err := io.ReadAll(rsp.Body) @@ -566,7 +572,10 @@ func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...serv defer rsp.Body.Close() if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } body, err := io.ReadAll(rsp.Body) if err != nil { @@ -707,7 +716,10 @@ func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt defer rsp.Body.Close() if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } body, err := io.ReadAll(rsp.Body) if err != nil { @@ -763,7 +775,10 @@ func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...serv if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } body, err := io.ReadAll(rsp.Body) @@ -806,7 +821,7 @@ func (c *APIInprocClient) Create(ctx context.Context, req *ObjectCreateReq, opts return nil, fmt.Errorf("No CRUD Server for ves.io.schema.registration.crudapi") } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.crudapi.API.Create", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.crudapi.API.Create") return oah.Create(ctx, req) } @@ -817,7 +832,7 @@ func (c *APIInprocClient) Replace(ctx context.Context, req *ObjectReplaceReq, op return nil, fmt.Errorf("No CRUD Server for ves.io.schema.registration.crudapi") } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.crudapi.API.Replace", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.crudapi.API.Replace") return oah.Replace(ctx, req) } @@ -828,7 +843,7 @@ func (c *APIInprocClient) Get(ctx context.Context, req *ObjectGetReq, opts ...gr return nil, fmt.Errorf("No CRUD Server for ves.io.schema.registration.crudapi") } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.crudapi.API.Get", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.crudapi.API.Get") return oah.Get(ctx, req) } @@ -839,7 +854,7 @@ func (c *APIInprocClient) List(ctx context.Context, req *ObjectListReq, opts ... return nil, fmt.Errorf("No CRUD Server for ves.io.schema.registration.crudapi") } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.crudapi.API.List", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.crudapi.API.List") return oah.List(ctx, req) } @@ -854,7 +869,7 @@ func (c *APIInprocClient) Delete(ctx context.Context, req *ObjectDeleteReq, opts return nil, fmt.Errorf("No CRUD Server for ves.io.schema.registration.crudapi") } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.crudapi.API.Delete", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.crudapi.API.Delete") return oah.Delete(ctx, req) } @@ -3355,10 +3370,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/registration/object.pb.go b/pbgo/extschema/schema/registration/object.pb.go index efb77c830..3cc415f09 100644 --- a/pbgo/extschema/schema/registration/object.pb.go +++ b/pbgo/extschema/schema/registration/object.pb.go @@ -233,40 +233,47 @@ func init() { } var fileDescriptor_b290cfc83001a664 = []byte{ - // 520 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x93, 0x31, 0x6f, 0xd3, 0x40, - 0x14, 0xc7, 0x7d, 0x6d, 0xe5, 0x56, 0x47, 0x5b, 0x24, 0x4b, 0x48, 0x69, 0x10, 0x27, 0x14, 0x50, - 0x8b, 0x50, 0x7c, 0x56, 0x5d, 0x06, 0xe8, 0x10, 0x10, 0x0c, 0x2c, 0xad, 0x82, 0x5a, 0x26, 0x96, - 0xe8, 0xec, 0xbe, 0xb8, 0x86, 0x38, 0x67, 0xdd, 0x9d, 0x2d, 0xb2, 0x21, 0x3e, 0x00, 0xe2, 0x33, - 0x30, 0xf1, 0x2d, 0xa0, 0x4c, 0x88, 0x29, 0x63, 0x46, 0xe2, 0x2c, 0x8c, 0x55, 0x3f, 0x01, 0xea, - 0x9d, 0x93, 0xd6, 0x11, 0x64, 0xbb, 0xcb, 0xfb, 0xff, 0x7f, 0xf7, 0x7f, 0x2f, 0xcf, 0x78, 0x27, - 0x07, 0x49, 0x63, 0xee, 0xc9, 0xf0, 0x14, 0x12, 0xe6, 0x09, 0x88, 0x62, 0xa9, 0x04, 0x53, 0x31, - 0xef, 0x7b, 0x3c, 0x78, 0x0b, 0xa1, 0xa2, 0xa9, 0xe0, 0x8a, 0x3b, 0x75, 0x23, 0xa4, 0x46, 0x48, - 0xaf, 0x0b, 0xeb, 0x6e, 0x14, 0xab, 0xd3, 0x2c, 0xa0, 0x21, 0x4f, 0xbc, 0x88, 0x47, 0xdc, 0xd3, - 0x96, 0x20, 0xeb, 0xea, 0x9b, 0xbe, 0xe8, 0x93, 0x41, 0xd5, 0x6f, 0x57, 0xdf, 0xe4, 0xe9, 0x25, - 0x44, 0x96, 0xc5, 0xed, 0x05, 0x81, 0xd4, 0x20, 0x85, 0xa9, 0x6e, 0xab, 0xaa, 0xbb, 0x5e, 0x6a, - 0x54, 0x4b, 0x39, 0x48, 0xe8, 0xe7, 0xd5, 0x67, 0x1a, 0xdf, 0x96, 0xb0, 0xdd, 0xd6, 0xfd, 0x39, - 0x4f, 0xf0, 0x5a, 0x02, 0x8a, 0x9d, 0x30, 0xc5, 0x6a, 0xe8, 0x2e, 0x7a, 0x70, 0xc3, 0xbf, 0x43, - 0xab, 0xcd, 0x1a, 0xe1, 0x21, 0x28, 0xf6, 0x7a, 0x90, 0xc2, 0xd1, 0x4c, 0xee, 0x1c, 0xe0, 0x9b, - 0x72, 0x20, 0x15, 0x24, 0x9d, 0x19, 0x61, 0x49, 0x13, 0xee, 0xcd, 0x11, 0x8e, 0xb5, 0x6a, 0x8e, - 0xb3, 0x69, 0xbc, 0x87, 0x53, 0xda, 0x63, 0xbc, 0x22, 0x53, 0x08, 0x6b, 0xcb, 0x1a, 0x71, 0x9f, - 0xfe, 0x7f, 0xe2, 0xf4, 0x38, 0x85, 0x50, 0x33, 0xb4, 0xc3, 0x69, 0x61, 0x5b, 0x2a, 0xa6, 0x32, - 0x59, 0x5b, 0xd1, 0xde, 0xed, 0x85, 0x5e, 0xad, 0xd4, 0xee, 0xd2, 0xb5, 0xef, 0x5f, 0xb4, 0x56, - 0x77, 0x9b, 0x7e, 0x73, 0xaf, 0xf9, 0xe8, 0xe3, 0x53, 0xdb, 0xc4, 0xfa, 0x71, 0x56, 0x5b, 0x7a, - 0x86, 0x7e, 0x9d, 0xd5, 0x6e, 0xe5, 0x20, 0xdd, 0x98, 0xbb, 0x71, 0xbf, 0x2b, 0x98, 0x54, 0x22, - 0x0b, 0x55, 0x26, 0xa0, 0xd1, 0xc6, 0x6b, 0xd3, 0x14, 0xce, 0x0b, 0xbc, 0x1a, 0x85, 0x1d, 0x1d, - 0xde, 0x4c, 0xf0, 0xe1, 0xa2, 0x00, 0x2f, 0x7b, 0x3c, 0x60, 0xbd, 0x59, 0x0b, 0x76, 0x14, 0x5e, - 0x9e, 0x1b, 0x5f, 0x10, 0xc6, 0x57, 0xd9, 0x9c, 0x16, 0xde, 0x30, 0x0b, 0xd8, 0x29, 0x5b, 0x33, - 0xe4, 0xad, 0xf9, 0xc9, 0x5e, 0x75, 0xb3, 0x6e, 0xf4, 0xe6, 0x17, 0xe7, 0x00, 0x6f, 0x84, 0x99, - 0x10, 0xd0, 0x37, 0x00, 0xd0, 0xff, 0xcc, 0xa6, 0xbf, 0xb3, 0x28, 0x59, 0x7b, 0x06, 0x80, 0xa3, - 0xf5, 0xd2, 0xad, 0x6f, 0xfb, 0xf6, 0x45, 0x6b, 0x79, 0xb7, 0xe9, 0x3f, 0xff, 0x84, 0x86, 0x63, - 0x62, 0x8d, 0xc6, 0xc4, 0x3a, 0x1f, 0x13, 0xf4, 0xa1, 0x20, 0xe8, 0x6b, 0x41, 0xd0, 0xcf, 0x82, - 0xa0, 0x61, 0x41, 0xd0, 0xa8, 0x20, 0xe8, 0x77, 0x41, 0xd0, 0x9f, 0x82, 0x58, 0xe7, 0x05, 0x41, - 0x9f, 0x27, 0xc4, 0xfa, 0x3e, 0x21, 0x68, 0x38, 0x21, 0xd6, 0x68, 0x42, 0xac, 0x37, 0xaf, 0x22, - 0x9e, 0xbe, 0x8b, 0x68, 0xce, 0x7b, 0x0a, 0x84, 0x60, 0x34, 0x93, 0x9e, 0x3e, 0x74, 0xb9, 0x48, - 0xdc, 0x54, 0xf0, 0x3c, 0x3e, 0x01, 0xe1, 0x4e, 0xcb, 0x5e, 0x1a, 0x44, 0xdc, 0x83, 0xf7, 0xaa, - 0xdc, 0xe4, 0x7f, 0x7c, 0x13, 0x81, 0xad, 0xf7, 0x79, 0xef, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, - 0xfc, 0x6d, 0x89, 0xb0, 0xc9, 0x03, 0x00, 0x00, + // 627 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x41, 0x4f, 0x13, 0x4f, + 0x18, 0xc6, 0x3b, 0xd0, 0x2c, 0x64, 0xfe, 0xc0, 0x3f, 0xd9, 0x53, 0xc1, 0x38, 0x21, 0xd5, 0x80, + 0x31, 0xdd, 0xdd, 0x50, 0x34, 0x51, 0x0e, 0xd5, 0x88, 0x09, 0x17, 0x08, 0x06, 0xf4, 0xe2, 0x05, + 0x67, 0xa7, 0x6f, 0x97, 0x81, 0xee, 0xce, 0x66, 0x66, 0x76, 0x85, 0x9b, 0xf1, 0x13, 0x98, 0xf8, + 0x0d, 0x38, 0xf9, 0x31, 0xc0, 0x93, 0xf1, 0x60, 0x88, 0x27, 0x8e, 0xb2, 0xbd, 0x78, 0x24, 0x7c, + 0x02, 0xc3, 0x4c, 0x5b, 0x28, 0xc1, 0x7a, 0xe3, 0x36, 0xd3, 0xf7, 0xf7, 0x3c, 0xef, 0x4c, 0xf7, + 0x99, 0x17, 0xcf, 0xe7, 0xa0, 0x7c, 0x2e, 0x02, 0xc5, 0xb6, 0x21, 0xa6, 0x81, 0x84, 0x88, 0x2b, + 0x2d, 0xa9, 0xe6, 0x22, 0x09, 0x44, 0xb8, 0x03, 0x4c, 0xfb, 0xa9, 0x14, 0x5a, 0xb8, 0x33, 0x16, + 0xf4, 0x2d, 0xe8, 0x5f, 0x05, 0x67, 0xbc, 0x88, 0xeb, 0xed, 0x2c, 0xf4, 0x99, 0x88, 0x83, 0x48, + 0x44, 0x22, 0x30, 0x92, 0x30, 0x6b, 0x99, 0x9d, 0xd9, 0x98, 0x95, 0xb5, 0x9a, 0xb9, 0x33, 0xd8, + 0x53, 0xa4, 0x17, 0x26, 0xaa, 0x5b, 0x9c, 0x1b, 0x72, 0x20, 0xbd, 0x9f, 0x42, 0x8f, 0x9b, 0x1e, + 0xe4, 0xae, 0x96, 0xaa, 0x83, 0xa5, 0x1c, 0x14, 0x24, 0xf9, 0x60, 0x9b, 0xea, 0x0f, 0x07, 0x3b, + 0xeb, 0xe6, 0x7e, 0xee, 0x53, 0x3c, 0x1e, 0x83, 0xa6, 0x4d, 0xaa, 0x69, 0x05, 0xcd, 0xa2, 0x07, + 0xff, 0xd5, 0xef, 0xfa, 0x83, 0x97, 0xb5, 0xe0, 0x1a, 0x68, 0xfa, 0x7a, 0x3f, 0x85, 0x8d, 0x3e, + 0xee, 0xae, 0xe2, 0xff, 0xd5, 0xbe, 0xd2, 0x10, 0x6f, 0xf5, 0x1d, 0x46, 0x8c, 0xc3, 0xbd, 0x6b, + 0x0e, 0x9b, 0x86, 0xba, 0xe6, 0x33, 0x65, 0xb5, 0x6b, 0x3d, 0xb7, 0x27, 0xb8, 0xac, 0x52, 0x60, + 0x95, 0x51, 0x63, 0x71, 0xdf, 0xff, 0xfb, 0x3f, 0xee, 0x6f, 0xa6, 0xc0, 0x8c, 0x87, 0x51, 0xb8, + 0x0d, 0xec, 0x28, 0x4d, 0x75, 0xa6, 0x2a, 0x65, 0xa3, 0x9d, 0x1b, 0xaa, 0x35, 0xa4, 0x51, 0x77, + 0x55, 0x4b, 0x87, 0xe5, 0xf3, 0xc6, 0xd8, 0x42, 0xad, 0x5e, 0x5b, 0xac, 0x3d, 0xfa, 0xf8, 0xcc, + 0xb1, 0xe7, 0xfa, 0x7a, 0x54, 0x19, 0x79, 0x8e, 0x7e, 0x1e, 0x55, 0x0e, 0xca, 0xb8, 0x8d, 0x47, + 0x57, 0x40, 0xbb, 0xd0, 0x7a, 0xbc, 0xc7, 0x3c, 0xc5, 0x35, 0x78, 0x31, 0x4d, 0x68, 0x04, 0x31, + 0x24, 0xda, 0x0b, 0xa9, 0xe2, 0xcc, 0x8b, 0x45, 0xc2, 0xb5, 0x90, 0xb5, 0xd9, 0x1b, 0x19, 0xa5, + 0x69, 0xd2, 0xa4, 0xb2, 0x79, 0x89, 0xe5, 0xa0, 0x3c, 0x2e, 0x3c, 0x9e, 0xb4, 0x24, 0x55, 0x5a, + 0x66, 0x4c, 0x67, 0x12, 0x3c, 0x09, 0xb4, 0x89, 0x77, 0xf1, 0xd8, 0x06, 0xa4, 0x6d, 0xca, 0xc0, + 0x7d, 0x37, 0xa4, 0x63, 0xa6, 0xe0, 0x9f, 0xed, 0x2c, 0x73, 0x73, 0xaf, 0xf7, 0x92, 0x6b, 0xc0, + 0x3b, 0xd8, 0x59, 0x96, 0x40, 0xf5, 0x2d, 0xf5, 0x7a, 0x09, 0x6d, 0xb8, 0x95, 0x5e, 0x31, 0x2e, + 0xaf, 0x72, 0x75, 0x5b, 0xdf, 0xac, 0xba, 0x8e, 0xc7, 0x7b, 0xa1, 0x74, 0x97, 0xf1, 0x58, 0xc4, + 0xb6, 0x4c, 0x96, 0xed, 0x83, 0x7a, 0x38, 0x2c, 0x8f, 0x2b, 0x6d, 0x11, 0xd2, 0x76, 0x3f, 0xd1, + 0x4e, 0xc4, 0x2e, 0xd6, 0xd5, 0x03, 0x84, 0xf1, 0x65, 0x54, 0xdd, 0x06, 0x9e, 0xb4, 0xf3, 0x68, + 0xab, 0x9b, 0x74, 0xeb, 0x3c, 0x7d, 0xfd, 0xa1, 0x5d, 0x86, 0x7b, 0xc2, 0xf2, 0xf6, 0x17, 0x77, + 0x15, 0x4f, 0xb2, 0x4c, 0x4a, 0x48, 0xac, 0x01, 0x98, 0x87, 0x3a, 0x55, 0x9f, 0x1f, 0x76, 0xb2, + 0xf5, 0xbe, 0x01, 0x6c, 0x4c, 0x74, 0xd5, 0x66, 0xb7, 0xe4, 0x9c, 0x37, 0x46, 0x17, 0x6a, 0xf5, + 0x17, 0x9f, 0xd1, 0xf7, 0xc6, 0xc8, 0xf2, 0x9b, 0xe3, 0x53, 0x52, 0x3a, 0x39, 0x25, 0xa5, 0xb3, + 0x53, 0x82, 0x3e, 0x14, 0x04, 0x7d, 0x29, 0x08, 0xfa, 0x56, 0x10, 0x74, 0x5c, 0x10, 0x74, 0x52, + 0x10, 0xf4, 0xab, 0x20, 0xe8, 0x77, 0x41, 0x4a, 0x67, 0x05, 0x41, 0x9f, 0x3a, 0xa4, 0x74, 0xd8, + 0x21, 0xe8, 0xb8, 0x43, 0x4a, 0x27, 0x1d, 0x52, 0x7a, 0xfb, 0x2a, 0x12, 0xe9, 0x6e, 0xe4, 0xe7, + 0xa2, 0xad, 0x41, 0x4a, 0xea, 0x67, 0x2a, 0x30, 0x8b, 0x96, 0x90, 0xb1, 0x97, 0x4a, 0x91, 0xf3, + 0x26, 0x48, 0xaf, 0x57, 0x0e, 0xd2, 0x30, 0x12, 0x01, 0xec, 0xe9, 0xee, 0x74, 0xbb, 0x61, 0x4e, + 0x86, 0x8e, 0x99, 0x71, 0x8b, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xd7, 0xf3, 0x7c, 0x3d, 0xdd, + 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/registration/pkg.vespkg.go b/pbgo/extschema/schema/registration/pkg.vespkg.go index 113573195..5afa396a1 100644 --- a/pbgo/extschema/schema/registration/pkg.vespkg.go +++ b/pbgo/extschema/schema/registration/pkg.vespkg.go @@ -20,19 +20,19 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.registration.CreateRequest"] = CreateRequestValidator() vr["ves.io.schema.registration.CreateResponse"] = CreateResponseValidator() - vr["ves.io.schema.registration.DeleteRequest"] = DeleteRequestValidator() - vr["ves.io.schema.registration.GetRequest"] = GetRequestValidator() - vr["ves.io.schema.registration.GetResponse"] = GetResponseValidator() - vr["ves.io.schema.registration.ListRequest"] = ListRequestValidator() - vr["ves.io.schema.registration.ListResponse"] = ListResponseValidator() - vr["ves.io.schema.registration.ListResponseItem"] = ListResponseItemValidator() vr["ves.io.schema.registration.ReplaceRequest"] = ReplaceRequestValidator() vr["ves.io.schema.registration.ReplaceResponse"] = ReplaceResponseValidator() vr["ves.io.schema.registration.ApprovalReq"] = ApprovalReqValidator() vr["ves.io.schema.registration.ConfigReq"] = ConfigReqValidator() vr["ves.io.schema.registration.ConfigResp"] = ConfigRespValidator() + vr["ves.io.schema.registration.DeleteRequest"] = DeleteRequestValidator() + vr["ves.io.schema.registration.GetRequest"] = GetRequestValidator() + vr["ves.io.schema.registration.GetResponse"] = GetResponseValidator() vr["ves.io.schema.registration.ListBySiteReq"] = ListBySiteReqValidator() + vr["ves.io.schema.registration.ListRequest"] = ListRequestValidator() + vr["ves.io.schema.registration.ListResponse"] = ListResponseValidator() + vr["ves.io.schema.registration.ListResponseItem"] = ListResponseItemValidator() vr["ves.io.schema.registration.ListStateReq"] = ListStateReqValidator() vr["ves.io.schema.registration.ObjectChangeResp"] = ObjectChangeRespValidator() vr["ves.io.schema.registration.RegistrationCreateRequest"] = RegistrationCreateRequestValidator() @@ -59,7 +59,7 @@ func initializeEntryRegistry(mdr *svcfw.MDRegistry) { func initializeRPCRegistry(mdr *svcfw.MDRegistry) { - mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.registration.API.Get"] = []string{ + mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.registration.CustomAPI.Get"] = []string{ "object", } diff --git a/pbgo/extschema/schema/registration/public_crudapi.pb.go b/pbgo/extschema/schema/registration/public_crudapi.pb.go index 17a01b603..cf97dbb97 100644 --- a/pbgo/extschema/schema/registration/public_crudapi.pb.go +++ b/pbgo/extschema/schema/registration/public_crudapi.pb.go @@ -20,8 +20,7 @@ import ( _ "github.com/gogo/googleapis/google/api" _ "github.com/gogo/protobuf/gogoproto" proto "github.com/gogo/protobuf/proto" - github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" - types "github.com/gogo/protobuf/types" + _ "github.com/gogo/protobuf/types" golang_proto "github.com/golang/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" @@ -32,7 +31,6 @@ import ( math "math" math_bits "math/bits" reflect "reflect" - strconv "strconv" strings "strings" ) @@ -48,55 +46,6 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package -// GetResponseFormatCode -// -// x-displayName: "Get Response Format" -// This is the various forms that can be requested to be sent in the GetResponse -type GetResponseFormatCode int32 - -const ( - // x-displayName: "Default Format" - // Default format of returned resource - GET_RSP_FORMAT_DEFAULT GetResponseFormatCode = 0 - // x-displayName: "Create request Format" - // Response should be in CreateRequest format - GET_RSP_FORMAT_FOR_CREATE GetResponseFormatCode = 1 - // x-displayName: "Replace request format" - // Response should be in ReplaceRequest format - GET_RSP_FORMAT_FOR_REPLACE GetResponseFormatCode = 2 - // x-displayName: "GetSpecType format" - // Response should be in format of GetSpecType - GET_RSP_FORMAT_READ GetResponseFormatCode = 4 - // x-displayName: "Referring Objects" - // Response should have other objects referring to this object - GET_RSP_FORMAT_REFERRING_OBJECTS GetResponseFormatCode = 5 - // x-displayName: "Broken Referred Objects" - // Response should have deleted and disabled objects referrred by this object - GET_RSP_FORMAT_BROKEN_REFERENCES GetResponseFormatCode = 6 -) - -var GetResponseFormatCode_name = map[int32]string{ - 0: "GET_RSP_FORMAT_DEFAULT", - 1: "GET_RSP_FORMAT_FOR_CREATE", - 2: "GET_RSP_FORMAT_FOR_REPLACE", - 4: "GET_RSP_FORMAT_READ", - 5: "GET_RSP_FORMAT_REFERRING_OBJECTS", - 6: "GET_RSP_FORMAT_BROKEN_REFERENCES", -} - -var GetResponseFormatCode_value = map[string]int32{ - "GET_RSP_FORMAT_DEFAULT": 0, - "GET_RSP_FORMAT_FOR_CREATE": 1, - "GET_RSP_FORMAT_FOR_REPLACE": 2, - "GET_RSP_FORMAT_READ": 4, - "GET_RSP_FORMAT_REFERRING_OBJECTS": 5, - "GET_RSP_FORMAT_BROKEN_REFERENCES": 6, -} - -func (GetResponseFormatCode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{0} -} - // CreateRequest is used to create an instance of registration // // x-displayName: "Create Request" @@ -342,4077 +291,703 @@ func (m *ReplaceResponse) XXX_DiscardUnknown() { var xxx_messageInfo_ReplaceResponse proto.InternalMessageInfo -// GetRequest is used to get different forms of a registration -// -// x-displayName: "Get Request" -// This is the input message of the 'Get' RPC. Different forms of a resource -// for e.g. a ReplaceRequest form (for editing), a CreateRequest form (for -// creating new instance of registration) etc. can be fetched -type GetRequest struct { - // namespace - // - // x-displayName: "Namespace" - // x-example: "ns1" - // The namespace in which the configuration object is present - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // name - // - // x-displayName: "Name" - // x-example: "name" - // The name of the configuration object to be fetched - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - // response_format - // - // x-displayName: "Response Format" - // The format in which the configuration object is to be fetched. This could be for example - // - in GetSpec form for the contents of object - // - in CreateRequest form to create a new similar object - // - to ReplaceRequest form to replace changeable values - ResponseFormat GetResponseFormatCode `protobuf:"varint,3,opt,name=response_format,json=responseFormat,proto3,enum=ves.io.schema.registration.GetResponseFormatCode" json:"response_format,omitempty"` +func init() { + proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.registration.CreateRequest") + golang_proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.registration.CreateRequest") + proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.registration.CreateResponse") + golang_proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.registration.CreateResponse") + proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.registration.ReplaceRequest") + golang_proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.registration.ReplaceRequest") + proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.registration.ReplaceResponse") + golang_proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.registration.ReplaceResponse") } -func (m *GetRequest) Reset() { *m = GetRequest{} } -func (*GetRequest) ProtoMessage() {} -func (*GetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{4} -} -func (m *GetRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *GetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetRequest.Merge(m, src) -} -func (m *GetRequest) XXX_Size() int { - return m.Size() -} -func (m *GetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_GetRequest.DiscardUnknown(m) +func init() { + proto.RegisterFile("ves.io/schema/registration/public_crudapi.proto", fileDescriptor_19950ce4cd26a3b9) } - -var xxx_messageInfo_GetRequest proto.InternalMessageInfo - -func (m *GetRequest) GetNamespace() string { - if m != nil { - return m.Namespace - } - return "" +func init() { + golang_proto.RegisterFile("ves.io/schema/registration/public_crudapi.proto", fileDescriptor_19950ce4cd26a3b9) } -func (m *GetRequest) GetName() string { - if m != nil { - return m.Name - } - return "" +var fileDescriptor_19950ce4cd26a3b9 = []byte{ + // 742 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0x3f, 0x4c, 0x13, 0x5f, + 0x1c, 0xef, 0x2b, 0x84, 0xdf, 0x8f, 0x53, 0xa9, 0xde, 0x54, 0xab, 0xb9, 0x60, 0x35, 0xa0, 0xc5, + 0xbb, 0x4b, 0x30, 0x2c, 0x8d, 0x41, 0x84, 0x18, 0xa2, 0x91, 0x40, 0x8a, 0x3a, 0x38, 0xd8, 0xbc, + 0x5e, 0xbf, 0x3d, 0x9e, 0xf6, 0xee, 0x3d, 0xdf, 0x7b, 0x57, 0x68, 0x0c, 0x89, 0x21, 0xee, 0x9a, + 0x38, 0x98, 0x38, 0x3a, 0x39, 0x38, 0xb9, 0xb2, 0xb0, 0x69, 0x18, 0x0c, 0xd1, 0x41, 0x46, 0xb8, + 0x3a, 0x30, 0x32, 0x3a, 0x1a, 0xee, 0xae, 0x4d, 0xaf, 0xd4, 0x82, 0x0e, 0x4e, 0xbd, 0xeb, 0xe7, + 0xcf, 0x7d, 0x3e, 0xdf, 0xef, 0xcb, 0x53, 0xcc, 0x1a, 0x08, 0x83, 0x50, 0x53, 0x58, 0x4b, 0xe0, + 0x60, 0x93, 0x83, 0x4d, 0x84, 0xe4, 0x58, 0x12, 0xea, 0x9a, 0xcc, 0x2b, 0x55, 0x89, 0x55, 0xb4, + 0xb8, 0x57, 0xc6, 0x8c, 0x18, 0x8c, 0x53, 0x49, 0xd5, 0x4c, 0x28, 0x30, 0x42, 0x81, 0xd1, 0x2e, + 0xc8, 0xe8, 0x36, 0x91, 0x4b, 0x5e, 0xc9, 0xb0, 0xa8, 0x63, 0xda, 0xd4, 0xa6, 0x66, 0x20, 0x29, + 0x79, 0x95, 0xe0, 0x2d, 0x78, 0x09, 0x9e, 0x42, 0xab, 0xcc, 0x79, 0x9b, 0x52, 0xbb, 0x0a, 0x26, + 0x66, 0xc4, 0xc4, 0xae, 0x4b, 0x65, 0xe0, 0x22, 0x22, 0xf4, 0x5c, 0x84, 0xb6, 0x3c, 0xc0, 0x61, + 0xb2, 0x1e, 0x81, 0x99, 0x78, 0x6c, 0xe0, 0x9c, 0xf2, 0x96, 0x30, 0x8e, 0x51, 0xd6, 0xee, 0x3a, + 0xda, 0xa3, 0x2f, 0x2d, 0x3d, 0x06, 0x4b, 0x46, 0xc4, 0x91, 0x1e, 0x44, 0x59, 0x67, 0xd0, 0x34, + 0x3c, 0x1b, 0xe7, 0xb5, 0x43, 0xd9, 0x38, 0x54, 0x03, 0x01, 0x6e, 0xad, 0x23, 0xcf, 0x70, 0x07, + 0x87, 0xc0, 0x72, 0x31, 0xc6, 0xc8, 0x7e, 0x40, 0xca, 0xa9, 0x19, 0x0e, 0x58, 0x42, 0x01, 0x9e, + 0x7a, 0x20, 0xa4, 0x7a, 0x43, 0xf9, 0xdf, 0x01, 0x89, 0xcb, 0x58, 0xe2, 0x34, 0x1a, 0x46, 0x97, + 0x4f, 0x8c, 0x5f, 0x34, 0xe2, 0x5b, 0x99, 0x0f, 0x9a, 0x84, 0xaa, 0x39, 0x90, 0xf8, 0x5e, 0x9d, + 0x41, 0xa1, 0x25, 0x52, 0xe7, 0x95, 0x7e, 0xc1, 0xc0, 0x4a, 0x27, 0x03, 0x71, 0xce, 0xf8, 0xfd, + 0x4a, 0x8d, 0xd0, 0x63, 0x91, 0x81, 0x75, 0xe0, 0x31, 0x9d, 0x7a, 0xbb, 0x7a, 0xf2, 0x40, 0x6a, + 0xd8, 0x56, 0xf1, 0xe0, 0xb7, 0x10, 0x18, 0xe5, 0x07, 0x37, 0x27, 0x07, 0xc2, 0x6f, 0x66, 0x7f, + 0x22, 0x65, 0xa8, 0x19, 0x57, 0x30, 0xea, 0x0a, 0x50, 0xaf, 0x1f, 0xca, 0x3b, 0xdc, 0x35, 0xef, + 0x2c, 0xc8, 0xae, 0x61, 0x53, 0xa2, 0x2e, 0x24, 0x38, 0xc5, 0x96, 0x49, 0x5f, 0x60, 0x32, 0xd2, + 0x61, 0xb2, 0x18, 0xb0, 0x0e, 0x5b, 0x0d, 0x85, 0xf2, 0xb9, 0xa6, 0xe1, 0xdd, 0x58, 0xfb, 0xd1, + 0x5e, 0xed, 0x67, 0x41, 0xfe, 0x41, 0xf5, 0x1d, 0xa4, 0x0c, 0x15, 0x80, 0x55, 0xb1, 0xd5, 0x5a, + 0xd5, 0xd4, 0xa1, 0xea, 0x97, 0xba, 0x56, 0x8f, 0x64, 0x5d, 0xea, 0x2f, 0xc4, 0xd2, 0x8e, 0xf5, + 0x4a, 0x1b, 0x99, 0x1c, 0x91, 0x58, 0x35, 0x95, 0xd3, 0x1c, 0x04, 0xf5, 0xb8, 0x05, 0xc5, 0x1a, + 0x70, 0x41, 0xa8, 0x1b, 0x4c, 0x74, 0x70, 0xba, 0x7f, 0x6f, 0x1d, 0xa1, 0x42, 0xaa, 0x89, 0x3e, + 0x08, 0xc1, 0xf6, 0x8a, 0x67, 0x94, 0x54, 0xab, 0x61, 0xb8, 0xdd, 0xf1, 0xef, 0xfd, 0x4a, 0xdf, + 0xcd, 0x85, 0xdb, 0xea, 0x8b, 0xa4, 0x32, 0x10, 0x2e, 0x5e, 0xbd, 0x72, 0xf4, 0x89, 0x8a, 0x06, + 0x94, 0xc9, 0x1d, 0x87, 0x1a, 0x7e, 0x29, 0xfb, 0x0e, 0xf9, 0x9f, 0xd2, 0x8f, 0x2a, 0x13, 0x2b, + 0x96, 0x2e, 0x88, 0x04, 0xdd, 0xc1, 0x2e, 0xb6, 0xc1, 0x01, 0x57, 0xea, 0x25, 0x2c, 0x88, 0xa5, + 0x7b, 0x02, 0xf8, 0xd5, 0xae, 0xb8, 0x90, 0xd8, 0x2d, 0x63, 0x5e, 0x0e, 0x29, 0x35, 0x10, 0x3a, + 0xa1, 0x3a, 0x71, 0x2b, 0x1c, 0x0b, 0xc9, 0x3d, 0x4b, 0x7a, 0x1c, 0xf4, 0x65, 0x4e, 0x24, 0xac, + 0x7d, 0xfb, 0xf1, 0x3a, 0x99, 0xcf, 0x4e, 0x44, 0x97, 0x9f, 0xe9, 0x62, 0x07, 0x04, 0xc3, 0x16, + 0x08, 0xf3, 0x59, 0x73, 0x27, 0x46, 0xeb, 0xcf, 0xd5, 0xd8, 0xbd, 0x20, 0xf2, 0x28, 0xa7, 0xbe, + 0x49, 0x2a, 0xff, 0x45, 0x23, 0x52, 0x73, 0xc7, 0xd8, 0x56, 0x73, 0x10, 0x63, 0xc7, 0xe2, 0x46, + 0x93, 0xf8, 0xf8, 0xaf, 0x26, 0x71, 0x27, 0x73, 0xeb, 0xaf, 0x26, 0xd1, 0x41, 0x59, 0xcd, 0xa3, + 0x5c, 0xc6, 0xdc, 0x58, 0x47, 0xc9, 0xaf, 0xeb, 0xe8, 0x42, 0x8f, 0xa2, 0xe1, 0x31, 0x5b, 0xfb, + 0x92, 0x4e, 0x4e, 0xa1, 0xe9, 0x97, 0x68, 0x73, 0x32, 0x39, 0x73, 0x7f, 0x6b, 0x57, 0x4b, 0x6c, + 0xef, 0x6a, 0x89, 0xfd, 0x5d, 0x0d, 0x3d, 0xf7, 0x35, 0xf4, 0xde, 0xd7, 0xd0, 0x67, 0x5f, 0x43, + 0x5b, 0xbe, 0x86, 0x76, 0x7c, 0x0d, 0xed, 0xf9, 0x5a, 0x62, 0xdf, 0xd7, 0xd0, 0xab, 0x86, 0x96, + 0xd8, 0x68, 0x68, 0x68, 0xab, 0xa1, 0x25, 0xb6, 0x1b, 0x5a, 0xe2, 0xe1, 0x82, 0x4d, 0xd9, 0x13, + 0xdb, 0xa8, 0xd1, 0xaa, 0x04, 0xce, 0xb1, 0xe1, 0x09, 0x33, 0x78, 0xa8, 0x50, 0xee, 0xe8, 0x8c, + 0xd3, 0x1a, 0x29, 0x03, 0xd7, 0x9b, 0xb0, 0xc9, 0x4a, 0x36, 0x35, 0x61, 0x45, 0x46, 0x57, 0x71, + 0x97, 0x8b, 0xbf, 0x34, 0x10, 0x5c, 0xc9, 0xd7, 0x7e, 0x05, 0x00, 0x00, 0xff, 0xff, 0xb9, 0x5e, + 0xf4, 0xcd, 0x36, 0x07, 0x00, 0x00, } -func (m *GetRequest) GetResponseFormat() GetResponseFormatCode { - if m != nil { - return m.ResponseFormat +func (this *CreateRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return GET_RSP_FORMAT_DEFAULT -} - -// GetResponse is the shape of a read registration -// -// x-displayName: "Get Response" -// This is the output message of the 'Get' RPC -type GetResponse struct { - // object - // - // x-displayName: "Object" - Object *Object `protobuf:"bytes,1,opt,name=object,proto3" json:"object,omitempty"` - // create_form - // - // x-displayName: "CreateRequest Format" - // Format used to create a new similar object - CreateForm *CreateRequest `protobuf:"bytes,2,opt,name=create_form,json=createForm,proto3" json:"create_form,omitempty"` - // replace_form - // - // x-displayName: "ReplaceRequest Format" - // Format to replace changeable values in object - ReplaceForm *ReplaceRequest `protobuf:"bytes,3,opt,name=replace_form,json=replaceForm,proto3" json:"replace_form,omitempty"` - // resource_version - // - // x-displayName: "Resource Version" - // x-example: "42" - // Version of the object - ResourceVersion string `protobuf:"bytes,4,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` - // metadata - // - // x-displayName: "Metadata" - // Common attributes of the object like name, labels etc. - Metadata *schema.ObjectGetMetaType `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` - // system metadata - // - // x-displayName: "System Metadata" - // System generated attributes of this object. - SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,7,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` - // spec - // - // x-displayName: "Spec" - // A specification of the configuration object read - Spec *GetSpecType `protobuf:"bytes,6,opt,name=spec,proto3" json:"spec,omitempty"` - // referring_objects - // - // x-displayName: "Referring Objects" - // The set of objects that are referring to this object in their spec - ReferringObjects []*schema.ObjectRefType `protobuf:"bytes,8,rep,name=referring_objects,json=referringObjects,proto3" json:"referring_objects,omitempty"` - // deleted_referred_objects - // - // x-displayName: "Deleted Referred Objects" - // The set of deleted objects that are referred by this object - DeletedReferredObjects []*schema.ObjectRefType `protobuf:"bytes,9,rep,name=deleted_referred_objects,json=deletedReferredObjects,proto3" json:"deleted_referred_objects,omitempty"` - // disabled_referred_objects - // - // x-displayName: "Disabled Referred Objects" - // The set of deleted objects that are referred by this object - DisabledReferredObjects []*schema.ObjectRefType `protobuf:"bytes,10,rep,name=disabled_referred_objects,json=disabledReferredObjects,proto3" json:"disabled_referred_objects,omitempty"` -} -func (m *GetResponse) Reset() { *m = GetResponse{} } -func (*GetResponse) ProtoMessage() {} -func (*GetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{5} -} -func (m *GetResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *GetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_GetResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + that1, ok := that.(*CreateRequest) + if !ok { + that2, ok := that.(CreateRequest) + if ok { + that1 = &that2 + } else { + return false } - return b[:n], nil } -} -func (m *GetResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetResponse.Merge(m, src) -} -func (m *GetResponse) XXX_Size() int { - return m.Size() -} -func (m *GetResponse) XXX_DiscardUnknown() { - xxx_messageInfo_GetResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_GetResponse proto.InternalMessageInfo - -func (m *GetResponse) GetObject() *Object { - if m != nil { - return m.Object + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetResponse) GetCreateForm() *CreateRequest { - if m != nil { - return m.CreateForm + if !this.Metadata.Equal(that1.Metadata) { + return false } - return nil -} - -func (m *GetResponse) GetReplaceForm() *ReplaceRequest { - if m != nil { - return m.ReplaceForm + if !this.Spec.Equal(that1.Spec) { + return false } - return nil + return true } - -func (m *GetResponse) GetResourceVersion() string { - if m != nil { - return m.ResourceVersion +func (this *CreateResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return "" -} -func (m *GetResponse) GetMetadata() *schema.ObjectGetMetaType { - if m != nil { - return m.Metadata + that1, ok := that.(*CreateResponse) + if !ok { + that2, ok := that.(CreateResponse) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { - if m != nil { - return m.SystemMetadata + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetResponse) GetSpec() *GetSpecType { - if m != nil { - return m.Spec + if !this.Metadata.Equal(that1.Metadata) { + return false } - return nil -} - -func (m *GetResponse) GetReferringObjects() []*schema.ObjectRefType { - if m != nil { - return m.ReferringObjects + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false } - return nil -} - -func (m *GetResponse) GetDeletedReferredObjects() []*schema.ObjectRefType { - if m != nil { - return m.DeletedReferredObjects + if !this.Spec.Equal(that1.Spec) { + return false } - return nil + return true } - -func (m *GetResponse) GetDisabledReferredObjects() []*schema.ObjectRefType { - if m != nil { - return m.DisabledReferredObjects +func (this *ReplaceRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} - -// ListRequest is used to get a collection of registration -// -// x-displayName: "List Request" -// This is the input message of the 'List' RPC. Fields can be used to control -// scope and filtering of collection. -type ListRequest struct { - // namespace - // - // x-displayName: "Namespace" - // x-example: "ns1" - // Namespace to scope the listing of registration - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // label_filter - // - // x-displayName: "Label Filter" - // x-example: "env in (staging, testing), tier in (web, db)" - // A LabelSelectorType expression that every item in list response will satisfy - LabelFilter string `protobuf:"bytes,2,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` - // report_fields - // - // x-displayName: "Report Fields" - // x-example: "" - // Extra fields to return along with summary fields - ReportFields []string `protobuf:"bytes,3,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` - // report_status_fields - // - // x-displayName: "Report Status Fields" - // x-example: "" - // Extra status fields to return along with summary fields - ReportStatusFields []string `protobuf:"bytes,4,rep,name=report_status_fields,json=reportStatusFields,proto3" json:"report_status_fields,omitempty"` -} -func (m *ListRequest) Reset() { *m = ListRequest{} } -func (*ListRequest) ProtoMessage() {} -func (*ListRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{6} -} -func (m *ListRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ListRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + that1, ok := that.(*ReplaceRequest) + if !ok { + that2, ok := that.(ReplaceRequest) + if ok { + that1 = &that2 + } else { + return false } - return b[:n], nil } -} -func (m *ListRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ListRequest.Merge(m, src) -} -func (m *ListRequest) XXX_Size() int { - return m.Size() -} -func (m *ListRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ListRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_ListRequest proto.InternalMessageInfo - -func (m *ListRequest) GetNamespace() string { - if m != nil { - return m.Namespace + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return "" -} - -func (m *ListRequest) GetLabelFilter() string { - if m != nil { - return m.LabelFilter + if !this.Metadata.Equal(that1.Metadata) { + return false } - return "" -} - -func (m *ListRequest) GetReportFields() []string { - if m != nil { - return m.ReportFields + if !this.Spec.Equal(that1.Spec) { + return false } - return nil + if this.ResourceVersion != that1.ResourceVersion { + return false + } + return true } +func (this *ReplaceResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ListRequest) GetReportStatusFields() []string { - if m != nil { - return m.ReportStatusFields + that1, ok := that.(*ReplaceResponse) + if !ok { + that2, ok := that.(ReplaceResponse) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true } - -// ListResponseItem is an individual item in a collection of registration -// -// x-displayName: "List Item" -// By default a summary of registration is returned in 'List'. By setting -// 'report_fields' in the ListRequest more details of each item can be got. -type ListResponseItem struct { - // tenant - // - // x-displayName: "Tenant" - // x-example: "acmecorp" - // The tenant this item belongs to - Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` - // namespace - // - // x-displayName: "Namespace" - // x-example: "ns1" - // The namespace this item belongs to - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // name - // - // x-displayName: "Name" - // x-example: "name" - // The name of this registration - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - // uid - // - // x-displayName: "UID" - // x-example: "d27938ba-967e-40a7-9709-57b8627f9f75" - // The unique uid of this registration - Uid string `protobuf:"bytes,3,opt,name=uid,proto3" json:"uid,omitempty"` - // description - // - // x-displayName: "Description" - // The description set for this registration - Description string `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"` - // disabled - // - // x-displayName: "Disabled" - // A value of true indicates registration is administratively disabled - Disabled bool `protobuf:"varint,12,opt,name=disabled,proto3" json:"disabled,omitempty"` - // labels - // - // x-displayName: "Labels" - // The set of labels present on this registration - Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // annotations - // - // x-displayName: "Annotations" - // The set of annotations present on this registration - Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // owner_view - // - // x-displayName: "Owner View" - // Reference to the view object that owns this object. - // If there is no view owner, this field will be nil. - // If not nil, this object can only be edited/deleted through the view - OwnerView *schema.ViewRefType `protobuf:"bytes,9,opt,name=owner_view,json=ownerView,proto3" json:"owner_view,omitempty"` - // metadata - // - // x-displayName: "Metadata" - // If list request has report_fields set then metadata will - // contain all the metadata associated with the object. - Metadata *schema.ObjectGetMetaType `protobuf:"bytes,13,opt,name=metadata,proto3" json:"metadata,omitempty"` - // system_metadata - // - // x-displayName: "System Metadata" - // If list request has report_fields set then system_metadata will - // contain all the system generated details of this object. - SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,14,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` - // object - // - // x-displayName: "Object" - // If ListRequest has any specified report_fields, it will appear in object - // DEPRECATED by get_spec, metadata and system_metadata - Object *Object `protobuf:"bytes,5,opt,name=object,proto3" json:"object,omitempty"` - // get_spec - // - // x-displayName: "Get Specification" - // If ListRequest has any specified report_fields, it will appear in object - GetSpec *GetSpecType `protobuf:"bytes,7,opt,name=get_spec,json=getSpec,proto3" json:"get_spec,omitempty"` -} - -func (m *ListResponseItem) Reset() { *m = ListResponseItem{} } -func (*ListResponseItem) ProtoMessage() {} -func (*ListResponseItem) Descriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{7} -} -func (m *ListResponseItem) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ListResponseItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ListResponseItem.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +func (this *CreateRequest) GoString() string { + if this == nil { + return "nil" } -} -func (m *ListResponseItem) XXX_Merge(src proto.Message) { - xxx_messageInfo_ListResponseItem.Merge(m, src) -} -func (m *ListResponseItem) XXX_Size() int { - return m.Size() -} -func (m *ListResponseItem) XXX_DiscardUnknown() { - xxx_messageInfo_ListResponseItem.DiscardUnknown(m) -} - -var xxx_messageInfo_ListResponseItem proto.InternalMessageInfo - -func (m *ListResponseItem) GetTenant() string { - if m != nil { - return m.Tenant + s := make([]string, 0, 6) + s = append(s, "®istration.CreateRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - return "" -} - -func (m *ListResponseItem) GetNamespace() string { - if m != nil { - return m.Namespace + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") } - return "" + s = append(s, "}") + return strings.Join(s, "") } - -func (m *ListResponseItem) GetName() string { - if m != nil { - return m.Name +func (this *CreateResponse) GoString() string { + if this == nil { + return "nil" } - return "" -} - -func (m *ListResponseItem) GetUid() string { - if m != nil { - return m.Uid + s := make([]string, 0, 7) + s = append(s, "®istration.CreateResponse{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - return "" -} - -func (m *ListResponseItem) GetDescription() string { - if m != nil { - return m.Description + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") } - return "" -} - -func (m *ListResponseItem) GetDisabled() bool { - if m != nil { - return m.Disabled + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") } - return false + s = append(s, "}") + return strings.Join(s, "") } - -func (m *ListResponseItem) GetLabels() map[string]string { - if m != nil { - return m.Labels +func (this *ReplaceRequest) GoString() string { + if this == nil { + return "nil" } - return nil -} - -func (m *ListResponseItem) GetAnnotations() map[string]string { - if m != nil { - return m.Annotations + s := make([]string, 0, 7) + s = append(s, "®istration.ReplaceRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - return nil -} - -func (m *ListResponseItem) GetOwnerView() *schema.ViewRefType { - if m != nil { - return m.OwnerView + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") } - return nil + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *ListResponseItem) GetMetadata() *schema.ObjectGetMetaType { - if m != nil { - return m.Metadata +func (this *ReplaceResponse) GoString() string { + if this == nil { + return "nil" } - return nil + s := make([]string, 0, 4) + s = append(s, "®istration.ReplaceResponse{") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *ListResponseItem) GetSystemMetadata() *schema.SystemObjectGetMetaType { - if m != nil { - return m.SystemMetadata +func valueToGoStringPublicCrudapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" } - return nil + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) } -func (m *ListResponseItem) GetObject() *Object { - if m != nil { - return m.Object - } - return nil -} +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn -func (m *ListResponseItem) GetGetSpec() *GetSpecType { - if m != nil { - return m.GetSpec - } - return nil -} +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 -// ListResponse is the collection of registration +// APIClient is the client API for API service. // -// x-displayName: "List Response" -// This is the output message of 'List' RPC. -type ListResponse struct { - // items +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + // Create registration // - // x-displayName: "Items" - // items represents the collection in response - Items []*ListResponseItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` - // errors + // x-displayName: "Create Registration" + // VPM creates registration using this message, never used by users. + Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) + // Replace registration // - // x-displayName: "Errors" - // Errors(if any) while listing items from collection - Errors []*schema.ErrorType `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` + // x-displayName: "Replace Registration" + // NO fields are allowed to be replaced + Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) } -func (m *ListResponse) Reset() { *m = ListResponse{} } -func (*ListResponse) ProtoMessage() {} -func (*ListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{8} -} -func (m *ListResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ListResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *ListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ListResponse.Merge(m, src) -} -func (m *ListResponse) XXX_Size() int { - return m.Size() -} -func (m *ListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ListResponse.DiscardUnknown(m) +type aPIClient struct { + cc *grpc.ClientConn } -var xxx_messageInfo_ListResponse proto.InternalMessageInfo +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} -func (m *ListResponse) GetItems() []*ListResponseItem { - if m != nil { - return m.Items +func (c *aPIClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + out := new(CreateResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/Create", in, out, opts...) + if err != nil { + return nil, err } - return nil + return out, nil } -func (m *ListResponse) GetErrors() []*schema.ErrorType { - if m != nil { - return m.Errors +func (c *aPIClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + out := new(ReplaceResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/Replace", in, out, opts...) + if err != nil { + return nil, err } - return nil + return out, nil } -// DeleteRequest is used to delete a registration -// -// x-displayName: "Delete Request" -// This is the input message of the 'Delete' RPC. -type DeleteRequest struct { - // namespace - // - // x-displayName: "Namespace" - // x-example: "ns1" - // Namespace in which the configuration object is present - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // name +// APIServer is the server API for API service. +type APIServer interface { + // Create registration // - // x-displayName: "Name" - // x-example: "name" - // Name of the configuration object - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - // fail_if_referred + // x-displayName: "Create Registration" + // VPM creates registration using this message, never used by users. + Create(context.Context, *CreateRequest) (*CreateResponse, error) + // Replace registration // - // x-displayName: "Fail-If-Referred" - // Fail the delete operation if this object is being referred by other objects - FailIfReferred bool `protobuf:"varint,3,opt,name=fail_if_referred,json=failIfReferred,proto3" json:"fail_if_referred,omitempty"` + // x-displayName: "Replace Registration" + // NO fields are allowed to be replaced + Replace(context.Context, *ReplaceRequest) (*ReplaceResponse, error) } -func (m *DeleteRequest) Reset() { *m = DeleteRequest{} } -func (*DeleteRequest) ProtoMessage() {} -func (*DeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_19950ce4cd26a3b9, []int{9} -} -func (m *DeleteRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *DeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_DeleteRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *DeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DeleteRequest.Merge(m, src) +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { } -func (m *DeleteRequest) XXX_Size() int { - return m.Size() + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") } -func (m *DeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DeleteRequest.DiscardUnknown(m) +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") } -var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo - -func (m *DeleteRequest) GetNamespace() string { - if m != nil { - return m.Namespace - } - return "" +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) } -func (m *DeleteRequest) GetName() string { - if m != nil { - return m.Name +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateRequest) + if err := dec(in); err != nil { + return nil, err } - return "" + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*CreateRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *DeleteRequest) GetFailIfReferred() bool { - if m != nil { - return m.FailIfReferred +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReplaceRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) } - return false + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ReplaceRequest)) + } + return interceptor(ctx, in, info, handler) } -func init() { - proto.RegisterEnum("ves.io.schema.registration.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) - golang_proto.RegisterEnum("ves.io.schema.registration.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) - proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.registration.CreateRequest") - golang_proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.registration.CreateRequest") - proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.registration.CreateResponse") - golang_proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.registration.CreateResponse") - proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.registration.ReplaceRequest") - golang_proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.registration.ReplaceRequest") - proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.registration.ReplaceResponse") - golang_proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.registration.ReplaceResponse") - proto.RegisterType((*GetRequest)(nil), "ves.io.schema.registration.GetRequest") - golang_proto.RegisterType((*GetRequest)(nil), "ves.io.schema.registration.GetRequest") - proto.RegisterType((*GetResponse)(nil), "ves.io.schema.registration.GetResponse") - golang_proto.RegisterType((*GetResponse)(nil), "ves.io.schema.registration.GetResponse") - proto.RegisterType((*ListRequest)(nil), "ves.io.schema.registration.ListRequest") - golang_proto.RegisterType((*ListRequest)(nil), "ves.io.schema.registration.ListRequest") - proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.registration.ListResponseItem") - golang_proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.registration.ListResponseItem") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.AnnotationsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.AnnotationsEntry") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.LabelsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.LabelsEntry") - proto.RegisterType((*ListResponse)(nil), "ves.io.schema.registration.ListResponse") - golang_proto.RegisterType((*ListResponse)(nil), "ves.io.schema.registration.ListResponse") - proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.registration.DeleteRequest") - golang_proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.registration.DeleteRequest") -} - -func init() { - proto.RegisterFile("ves.io/schema/registration/public_crudapi.proto", fileDescriptor_19950ce4cd26a3b9) -} -func init() { - golang_proto.RegisterFile("ves.io/schema/registration/public_crudapi.proto", fileDescriptor_19950ce4cd26a3b9) +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.registration.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/registration/public_crudapi.proto", } -var fileDescriptor_19950ce4cd26a3b9 = []byte{ - // 1540 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0xc7, - 0x17, 0xcf, 0xd8, 0x89, 0x13, 0x8f, 0xf3, 0xc3, 0xcc, 0x97, 0x6f, 0x30, 0x5b, 0xba, 0x32, 0x06, - 0x91, 0x34, 0x90, 0x5d, 0x1a, 0x84, 0x04, 0x51, 0x0b, 0xc4, 0xc9, 0x26, 0x0a, 0x4d, 0x48, 0x34, - 0x09, 0x51, 0x85, 0x84, 0x56, 0x6b, 0x7b, 0x6c, 0xb6, 0xd8, 0xde, 0xed, 0xec, 0x38, 0xa9, 0x55, - 0x45, 0xaa, 0x50, 0xff, 0x80, 0xaa, 0xdc, 0xb8, 0x57, 0x6a, 0xab, 0x5e, 0x7a, 0xa8, 0x54, 0x89, - 0x4b, 0x6e, 0x20, 0x0e, 0x15, 0x2a, 0x87, 0x72, 0x04, 0xa7, 0x07, 0x8e, 0x1c, 0x7b, 0xac, 0x76, - 0x66, 0x77, 0xf1, 0x3a, 0xc6, 0x71, 0xd2, 0x9c, 0x3c, 0x33, 0xef, 0xbd, 0xcf, 0x7e, 0xde, 0xbc, - 0x1f, 0x7e, 0xbb, 0x50, 0xdd, 0x24, 0x8e, 0x62, 0x5a, 0xaa, 0x93, 0xbf, 0x47, 0x2a, 0x86, 0x4a, - 0x49, 0xc9, 0x74, 0x18, 0x35, 0x98, 0x69, 0x55, 0x55, 0xbb, 0x96, 0x2b, 0x9b, 0x79, 0x3d, 0x4f, - 0x6b, 0x05, 0xc3, 0x36, 0x15, 0x9b, 0x5a, 0xcc, 0x42, 0x92, 0x30, 0x50, 0x84, 0x81, 0xd2, 0x6c, - 0x20, 0x4d, 0x96, 0x4c, 0x76, 0xaf, 0x96, 0x53, 0xf2, 0x56, 0x45, 0x2d, 0x59, 0x25, 0x4b, 0xe5, - 0x26, 0xb9, 0x5a, 0x91, 0xef, 0xf8, 0x86, 0xaf, 0x04, 0x94, 0x74, 0xaa, 0x64, 0x59, 0xa5, 0x32, - 0x51, 0x0d, 0xdb, 0x54, 0x8d, 0x6a, 0xd5, 0x62, 0x1c, 0xc5, 0xf1, 0xa4, 0x1f, 0x78, 0xd2, 0x00, - 0x83, 0x54, 0x6c, 0x56, 0xf7, 0x84, 0x52, 0x98, 0x36, 0xa1, 0xd4, 0xa2, 0x81, 0x61, 0x58, 0x66, - 0xd9, 0xcd, 0xa8, 0x63, 0x1d, 0xfc, 0xb5, 0x72, 0x5f, 0x90, 0x3c, 0xf3, 0x14, 0xcf, 0x75, 0x50, - 0x64, 0x75, 0x9b, 0xf8, 0x80, 0x27, 0xc3, 0x7a, 0xcd, 0xa2, 0x4c, 0x58, 0xb4, 0x49, 0x1c, 0x52, - 0xdd, 0x6c, 0xe1, 0x93, 0x6e, 0xd1, 0x31, 0xc9, 0x96, 0x1e, 0xd2, 0xc8, 0xfc, 0x02, 0xe0, 0xd0, - 0x2c, 0x25, 0x06, 0x23, 0x98, 0x7c, 0x59, 0x23, 0x0e, 0x43, 0xd7, 0xe1, 0x40, 0x85, 0x30, 0xa3, - 0x60, 0x30, 0x23, 0x05, 0xd2, 0x60, 0x3c, 0x31, 0x75, 0x46, 0x09, 0x47, 0x65, 0x85, 0x7b, 0x22, - 0xac, 0x96, 0x09, 0x33, 0xd6, 0xeb, 0x36, 0xc1, 0x81, 0x11, 0x5a, 0x81, 0xbd, 0x8e, 0x4d, 0xf2, - 0xa9, 0x08, 0x37, 0x9e, 0x50, 0xde, 0x1f, 0x52, 0x45, 0x60, 0xac, 0xd9, 0x24, 0xef, 0x62, 0x64, - 0x47, 0x1e, 0x6d, 0x0f, 0xba, 0xa6, 0x4a, 0x29, 0xaf, 0xbb, 0xbf, 0x98, 0x03, 0x4d, 0xc7, 0x9f, - 0x5d, 0x8b, 0x89, 0x67, 0x66, 0xfe, 0x01, 0x70, 0xd8, 0xa7, 0xeb, 0xd8, 0x56, 0xd5, 0x21, 0xe8, - 0x93, 0x3d, 0x7c, 0xd3, 0x6d, 0xf9, 0x2e, 0x10, 0xd6, 0x96, 0xec, 0x88, 0x53, 0x77, 0x18, 0xa9, - 0xe8, 0x01, 0x48, 0x94, 0x83, 0x9c, 0x6b, 0x01, 0x59, 0xe3, 0x5a, 0x7b, 0xa1, 0x86, 0x85, 0xf9, - 0xb2, 0x0f, 0xb8, 0x14, 0xf2, 0x7e, 0xac, 0x93, 0xf7, 0x0b, 0x84, 0x1d, 0xc0, 0xf5, 0x57, 0x00, - 0x0e, 0x63, 0x62, 0x97, 0x8d, 0x7c, 0x10, 0xaa, 0x1b, 0x7b, 0x5c, 0x3f, 0xdb, 0xd6, 0x75, 0xcf, - 0xac, 0x8d, 0xfb, 0xab, 0x21, 0xb6, 0xe7, 0x3b, 0xb1, 0xf5, 0x40, 0xf6, 0x61, 0x8c, 0x54, 0x98, - 0xa4, 0xc4, 0xb1, 0x6a, 0x34, 0x4f, 0xf4, 0x4d, 0x42, 0x1d, 0xd3, 0xaa, 0xf2, 0x1b, 0x8d, 0x67, - 0x7b, 0xdf, 0x3c, 0x06, 0x00, 0x8f, 0xf8, 0xd2, 0x0d, 0x21, 0x6c, 0x76, 0xf1, 0x18, 0x1c, 0x09, - 0x3c, 0x14, 0xd1, 0xcd, 0x3c, 0x02, 0x10, 0x2e, 0x10, 0xe6, 0x7b, 0x7c, 0x0a, 0xc6, 0xab, 0x46, - 0x85, 0x38, 0xb6, 0x91, 0x27, 0xdc, 0xe5, 0x38, 0x7e, 0x77, 0x80, 0x10, 0xec, 0x75, 0x37, 0xdc, - 0x9b, 0x38, 0xe6, 0x6b, 0x74, 0x07, 0xba, 0x4f, 0xe4, 0x60, 0x7a, 0xd1, 0xa2, 0x15, 0x83, 0x71, - 0x3a, 0xc3, 0x53, 0x1f, 0xef, 0x13, 0x1a, 0x9f, 0xc2, 0x3c, 0x37, 0x9a, 0xb5, 0x0a, 0x04, 0x0f, - 0xd3, 0xd0, 0x59, 0xe6, 0x61, 0x0c, 0x26, 0x9a, 0x34, 0xd1, 0x1a, 0x8c, 0x89, 0x2a, 0xf7, 0xa2, - 0x91, 0xe9, 0xf4, 0x08, 0xe1, 0x73, 0xf6, 0xc4, 0xce, 0x36, 0x68, 0x6c, 0x1f, 0xf3, 0xfc, 0x2e, - 0xa4, 0x73, 0xf5, 0xf4, 0x18, 0xbf, 0x4e, 0x0f, 0x0a, 0xdd, 0x84, 0x89, 0x3c, 0xcf, 0x78, 0x4e, - 0xdf, 0x8b, 0xd4, 0x47, 0xfb, 0x57, 0x95, 0x77, 0x65, 0x18, 0x0a, 0x6b, 0x97, 0x32, 0x5a, 0x86, - 0x83, 0x54, 0x3c, 0x48, 0x80, 0x45, 0xf7, 0x2f, 0xd1, 0x70, 0xca, 0xe1, 0x84, 0x67, 0xcf, 0xe1, - 0xda, 0xc5, 0xba, 0xb7, 0x43, 0xac, 0x43, 0xb5, 0xda, 0x77, 0x14, 0xb5, 0xda, 0x7f, 0x24, 0xb5, - 0x1a, 0x3b, 0x8a, 0x5a, 0x45, 0x8b, 0xf0, 0x18, 0x25, 0x45, 0x42, 0xa9, 0x59, 0x2d, 0xe9, 0x22, - 0x78, 0x4e, 0x6a, 0x20, 0x1d, 0x1d, 0x4f, 0x4c, 0x9d, 0x7a, 0x4f, 0x59, 0x16, 0x39, 0xad, 0x64, - 0x60, 0x26, 0xce, 0x1d, 0xb4, 0x01, 0x53, 0x05, 0x52, 0x26, 0x8c, 0x14, 0x74, 0x21, 0x23, 0x85, - 0x00, 0x31, 0xde, 0x05, 0xe2, 0xa8, 0x67, 0x8d, 0x3d, 0x63, 0x1f, 0xf7, 0x73, 0x78, 0xb2, 0x60, - 0x3a, 0x46, 0xae, 0xdc, 0x0e, 0x18, 0x76, 0x01, 0x7c, 0xc2, 0x37, 0x6f, 0x41, 0x6e, 0xae, 0xe2, - 0x1f, 0x00, 0x4c, 0x2c, 0x99, 0x4e, 0x97, 0x35, 0x7b, 0x1a, 0x0e, 0x96, 0x8d, 0x1c, 0x29, 0xeb, - 0x45, 0xb3, 0xcc, 0x08, 0xf5, 0x6a, 0x37, 0xc1, 0xcf, 0xe6, 0xf9, 0x11, 0x3a, 0x03, 0x87, 0x28, - 0xb1, 0x2d, 0xca, 0xf4, 0xa2, 0x49, 0xca, 0x05, 0x27, 0x15, 0x4d, 0x47, 0xc7, 0xe3, 0x78, 0x50, - 0x1c, 0xce, 0xf3, 0x33, 0x74, 0x11, 0x1e, 0xf7, 0x94, 0x1c, 0x66, 0xb0, 0x9a, 0xe3, 0xeb, 0xf6, - 0x72, 0x5d, 0x24, 0x64, 0x6b, 0x5c, 0x24, 0x2c, 0x32, 0x3f, 0xc5, 0x60, 0x52, 0xf0, 0x14, 0xe5, - 0xbb, 0xc8, 0x48, 0x05, 0x8d, 0xc2, 0x18, 0x23, 0x55, 0xa3, 0xca, 0x78, 0x52, 0xc4, 0xb1, 0xb7, - 0x3b, 0x44, 0xe3, 0x49, 0xc2, 0x68, 0xcd, 0x2c, 0x88, 0xde, 0x87, 0xdd, 0x25, 0x4a, 0xc3, 0x44, - 0x81, 0x38, 0x79, 0x6a, 0xf2, 0x7f, 0xe0, 0x54, 0x42, 0x78, 0xda, 0x74, 0x84, 0x24, 0x38, 0xe0, - 0x5f, 0x70, 0x6a, 0x30, 0x0d, 0xc6, 0x07, 0x70, 0xb0, 0x47, 0xab, 0x30, 0xc6, 0x2f, 0x45, 0xb8, - 0x94, 0x98, 0xba, 0xd2, 0x29, 0x5d, 0x5b, 0xfd, 0x52, 0x96, 0xb8, 0xa9, 0x56, 0x65, 0xb4, 0x8e, - 0x3d, 0x1c, 0xa4, 0xc3, 0x44, 0xd3, 0x60, 0xe4, 0xc5, 0xff, 0xd3, 0x03, 0xc1, 0xce, 0xbc, 0xb3, - 0x17, 0xd8, 0xcd, 0x88, 0xe8, 0x2a, 0x84, 0xd6, 0x56, 0x95, 0x50, 0xdd, 0x1d, 0x3c, 0x52, 0x71, - 0x5e, 0x65, 0x52, 0x0b, 0xfe, 0x86, 0x49, 0xb6, 0xfc, 0xec, 0x8a, 0x73, 0x6d, 0xf7, 0x24, 0xd4, - 0x29, 0x86, 0x8e, 0xa2, 0x53, 0x0c, 0xff, 0xa7, 0x4e, 0x71, 0x3d, 0xe8, 0xec, 0x7d, 0x5d, 0x77, - 0xf6, 0xe8, 0xce, 0x36, 0x08, 0xba, 0x78, 0x16, 0x0e, 0x94, 0x08, 0xe3, 0xed, 0xc2, 0x6b, 0x5a, - 0xdd, 0xb6, 0x1b, 0xdc, 0x5f, 0x12, 0x1b, 0xe9, 0x2a, 0x4c, 0x34, 0x85, 0xd1, 0x4d, 0xb0, 0xfb, - 0xa4, 0xee, 0x25, 0xa3, 0xbb, 0x44, 0xc7, 0x61, 0xdf, 0xa6, 0x51, 0xae, 0xf9, 0x79, 0x28, 0x36, - 0xd3, 0x91, 0x2b, 0x40, 0xba, 0x06, 0x93, 0xad, 0xa1, 0x3a, 0x88, 0x7d, 0xe6, 0x5b, 0x00, 0x07, - 0x9b, 0x83, 0x8f, 0xb2, 0xb0, 0xcf, 0x64, 0xa4, 0xe2, 0xa4, 0x00, 0xcf, 0x9a, 0x0b, 0x07, 0xc9, - 0x1a, 0x2c, 0x4c, 0xd1, 0x45, 0x18, 0x13, 0xa3, 0x75, 0x2a, 0xc2, 0x41, 0x52, 0x2d, 0x20, 0x9a, - 0x2b, 0xe4, 0x57, 0xe0, 0xe9, 0x65, 0xee, 0xc3, 0xa1, 0x39, 0xde, 0xd9, 0x0e, 0x3f, 0x0f, 0x8c, - 0xc3, 0x64, 0xd1, 0x30, 0xcb, 0xba, 0x59, 0x0c, 0x3a, 0x20, 0xaf, 0xd1, 0x01, 0x3c, 0xec, 0x9e, - 0x2f, 0x16, 0xfd, 0xce, 0x36, 0xf1, 0x17, 0x80, 0xff, 0x6f, 0x3b, 0x07, 0x20, 0x09, 0x8e, 0x2e, - 0x68, 0xeb, 0x3a, 0x5e, 0x5b, 0xd5, 0xe7, 0x57, 0xf0, 0xf2, 0xcc, 0xba, 0x3e, 0xa7, 0xcd, 0xcf, - 0xdc, 0x5e, 0x5a, 0x4f, 0xf6, 0xa0, 0x0f, 0xe1, 0xc9, 0x16, 0xd9, 0xfc, 0x0a, 0xd6, 0x67, 0xb1, - 0x36, 0xb3, 0xae, 0x25, 0x01, 0x92, 0xa1, 0xd4, 0x46, 0x8c, 0xb5, 0xd5, 0xa5, 0x99, 0x59, 0x2d, - 0x19, 0x41, 0x27, 0xe0, 0xff, 0x5a, 0xe4, 0x58, 0x9b, 0x99, 0x4b, 0xf6, 0xa2, 0xb3, 0x30, 0xbd, - 0x47, 0x30, 0xaf, 0x61, 0xbc, 0x78, 0x6b, 0x41, 0x5f, 0xc9, 0xde, 0xd4, 0x66, 0xd7, 0xd7, 0x92, - 0x7d, 0x6d, 0xb4, 0xb2, 0x78, 0xe5, 0x33, 0xed, 0x96, 0x50, 0xd6, 0x6e, 0xcd, 0x6a, 0x6b, 0xc9, - 0xd8, 0xd4, 0x9b, 0x7e, 0x18, 0x9d, 0x59, 0x5d, 0x44, 0x3b, 0x00, 0xc6, 0xc4, 0xb0, 0x80, 0xba, - 0x1f, 0x28, 0xa4, 0x89, 0x6e, 0x54, 0xbd, 0xf1, 0x4d, 0x6f, 0x3c, 0x49, 0xb9, 0x6f, 0x4c, 0x93, - 0xa6, 0x35, 0x69, 0x56, 0x8b, 0xd4, 0x70, 0x18, 0xad, 0xe5, 0x59, 0x8d, 0x92, 0xc9, 0x2d, 0x6a, - 0x32, 0xf2, 0xe0, 0xc5, 0xdf, 0x0f, 0x23, 0xd3, 0x99, 0xcb, 0xde, 0xdb, 0xa0, 0x1a, 0xc4, 0xce, - 0x51, 0xbf, 0xf6, 0x4b, 0x57, 0x09, 0x0e, 0xb7, 0x43, 0x2f, 0x4a, 0xce, 0x34, 0x98, 0x40, 0xbf, - 0x01, 0x18, 0x5d, 0x20, 0x0c, 0x9d, 0xdb, 0x77, 0x9a, 0x13, 0xe4, 0xc7, 0xba, 0x9c, 0xfa, 0x32, - 0x77, 0x9f, 0xfe, 0x1e, 0x01, 0x8d, 0x27, 0x29, 0xa9, 0x3d, 0x7b, 0x4a, 0x8c, 0x02, 0x27, 0x7f, - 0x19, 0x5d, 0x6a, 0x47, 0xfe, 0x7d, 0x9c, 0x85, 0x64, 0x1b, 0xfd, 0x0a, 0x60, 0xaf, 0x5b, 0x17, - 0x68, 0x6c, 0xff, 0xca, 0x11, 0xcc, 0xc7, 0xbb, 0x2d, 0xb1, 0xcc, 0x46, 0x97, 0xd4, 0x15, 0x74, - 0xe1, 0x20, 0xd4, 0xd1, 0x0b, 0x00, 0xfb, 0xbd, 0x71, 0x10, 0x1d, 0x60, 0x66, 0x94, 0xce, 0x77, - 0xa5, 0xeb, 0x91, 0xb7, 0xba, 0xc9, 0x98, 0x9b, 0x92, 0x76, 0xa8, 0x8c, 0x69, 0x51, 0xd9, 0x76, - 0x33, 0xe8, 0x67, 0x00, 0x63, 0xa2, 0xa9, 0x74, 0x2e, 0x82, 0x50, 0xe3, 0x91, 0x46, 0x15, 0xf1, - 0x01, 0x41, 0xf1, 0x3f, 0x20, 0x28, 0x5a, 0xc5, 0x66, 0xf5, 0xcc, 0xdd, 0x6e, 0xe8, 0x5f, 0x99, - 0x38, 0x4c, 0xce, 0x4c, 0x83, 0x09, 0x49, 0xdd, 0x79, 0x0c, 0x22, 0x7f, 0x3e, 0x06, 0xa7, 0xf7, - 0xfd, 0xfb, 0x79, 0xf0, 0x47, 0x2a, 0x72, 0x03, 0x64, 0xbf, 0x07, 0xcf, 0xae, 0xf5, 0xcd, 0xe2, - 0xdb, 0x73, 0x4b, 0xcf, 0x5f, 0xcb, 0x3d, 0x2f, 0x5f, 0xcb, 0x3d, 0x6f, 0x5f, 0xcb, 0xe0, 0x9b, - 0x86, 0x0c, 0x7e, 0x6c, 0xc8, 0xe0, 0x69, 0x43, 0x06, 0xcf, 0x1b, 0x32, 0x78, 0xd5, 0x90, 0xc1, - 0x9b, 0x86, 0xdc, 0xf3, 0xb6, 0x21, 0x83, 0xef, 0x76, 0xe5, 0x9e, 0x9d, 0x5d, 0x19, 0x3c, 0xdf, - 0x95, 0x7b, 0x5e, 0xee, 0xca, 0x3d, 0x77, 0x56, 0x4b, 0x96, 0x7d, 0xbf, 0xa4, 0x6c, 0x5a, 0xee, - 0x30, 0x46, 0x0d, 0xa5, 0xe6, 0xa8, 0x7c, 0xe1, 0xbe, 0x41, 0x4c, 0xda, 0xd4, 0xda, 0x34, 0x0b, - 0x84, 0x4e, 0xfa, 0x62, 0xd5, 0xce, 0x95, 0x2c, 0x95, 0x7c, 0xc5, 0xbc, 0x6f, 0x0e, 0x6d, 0xbe, - 0x70, 0xe4, 0x62, 0xfc, 0xd2, 0x2e, 0xfd, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xac, 0x85, 0x71, 0x17, - 0x1f, 0x12, 0x00, 0x00, +func (m *CreateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil } -func (x GetResponseFormatCode) String() string { - s, ok := GetResponseFormatCode_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) +func (m *CreateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CreateRequest) - if !ok { - that2, ok := that.(CreateRequest) - if ok { - that1 = &that2 - } else { - return false +func (m *CreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.Spec.Equal(that1.Spec) { - return false + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return true + return len(dAtA) - i, nil } -func (this *CreateResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CreateResponse) - if !ok { - that2, ok := that.(CreateResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.SystemMetadata.Equal(that1.SystemMetadata) { - return false - } - if !this.Spec.Equal(that1.Spec) { - return false +func (m *CreateResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return true + return dAtA[:n], nil } -func (this *ReplaceRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ReplaceRequest) - if !ok { - that2, ok := that.(ReplaceRequest) - if ok { - that1 = &that2 - } else { - return false +func (m *CreateResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.Spec.Equal(that1.Spec) { - return false + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - if this.ResourceVersion != that1.ResourceVersion { - return false + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return true + return len(dAtA) - i, nil } -func (this *ReplaceResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ReplaceResponse) - if !ok { - that2, ok := that.(ReplaceResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (m *ReplaceRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return true + return dAtA[:n], nil } -func (this *GetRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetRequest) - if !ok { - that2, ok := that.(GetRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.Name != that1.Name { - return false - } - if this.ResponseFormat != that1.ResponseFormat { - return false - } - return true +func (m *ReplaceRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetResponse) - if !ok { - that2, ok := that.(GetResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Object.Equal(that1.Object) { - return false - } - if !this.CreateForm.Equal(that1.CreateForm) { - return false - } - if !this.ReplaceForm.Equal(that1.ReplaceForm) { - return false - } - if this.ResourceVersion != that1.ResourceVersion { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.SystemMetadata.Equal(that1.SystemMetadata) { - return false - } - if !this.Spec.Equal(that1.Spec) { - return false - } - if len(this.ReferringObjects) != len(that1.ReferringObjects) { - return false - } - for i := range this.ReferringObjects { - if !this.ReferringObjects[i].Equal(that1.ReferringObjects[i]) { - return false - } - } - if len(this.DeletedReferredObjects) != len(that1.DeletedReferredObjects) { - return false +func (m *ReplaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x1a } - for i := range this.DeletedReferredObjects { - if !this.DeletedReferredObjects[i].Equal(that1.DeletedReferredObjects[i]) { - return false + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if len(this.DisabledReferredObjects) != len(that1.DisabledReferredObjects) { - return false - } - for i := range this.DisabledReferredObjects { - if !this.DisabledReferredObjects[i].Equal(that1.DisabledReferredObjects[i]) { - return false + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa } - return true + return len(dAtA) - i, nil } -func (this *ListRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ListRequest) - if !ok { - that2, ok := that.(ListRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.LabelFilter != that1.LabelFilter { - return false - } - if len(this.ReportFields) != len(that1.ReportFields) { - return false - } - for i := range this.ReportFields { - if this.ReportFields[i] != that1.ReportFields[i] { - return false - } - } - if len(this.ReportStatusFields) != len(that1.ReportStatusFields) { - return false - } - for i := range this.ReportStatusFields { - if this.ReportStatusFields[i] != that1.ReportStatusFields[i] { - return false - } +func (m *ReplaceResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return true + return dAtA[:n], nil } -func (this *ListResponseItem) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ListResponseItem) - if !ok { - that2, ok := that.(ListResponseItem) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Tenant != that1.Tenant { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.Name != that1.Name { - return false - } - if this.Uid != that1.Uid { - return false - } - if this.Description != that1.Description { - return false - } - if this.Disabled != that1.Disabled { - return false - } - if len(this.Labels) != len(that1.Labels) { - return false - } - for i := range this.Labels { - if this.Labels[i] != that1.Labels[i] { - return false - } +func (m *ReplaceResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func encodeVarintPublicCrudapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCrudapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ } - if len(this.Annotations) != len(that1.Annotations) { - return false + dAtA[offset] = uint8(v) + return base +} +func (m *CreateRequest) Size() (n int) { + if m == nil { + return 0 } - for i := range this.Annotations { - if this.Annotations[i] != that1.Annotations[i] { - return false - } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - if !this.OwnerView.Equal(that1.OwnerView) { - return false + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - if !this.Metadata.Equal(that1.Metadata) { - return false + return n +} + +func (m *CreateResponse) Size() (n int) { + if m == nil { + return 0 } - if !this.SystemMetadata.Equal(that1.SystemMetadata) { - return false + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - if !this.Object.Equal(that1.Object) { - return false + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - if !this.GetSpec.Equal(that1.GetSpec) { - return false + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - return true + return n } -func (this *ListResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ListResponse) - if !ok { - that2, ok := that.(ListResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Items) != len(that1.Items) { - return false +func (m *ReplaceRequest) Size() (n int) { + if m == nil { + return 0 } - for i := range this.Items { - if !this.Items[i].Equal(that1.Items[i]) { - return false - } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - if len(this.Errors) != len(that1.Errors) { - return false + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) } - for i := range this.Errors { - if !this.Errors[i].Equal(that1.Errors[i]) { - return false - } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) } - return true + return n } -func (this *DeleteRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil + +func (m *ReplaceResponse) Size() (n int) { + if m == nil { + return 0 } + var l int + _ = l + return n +} - that1, ok := that.(*DeleteRequest) - if !ok { - that2, ok := that.(DeleteRequest) - if ok { - that1 = &that2 - } else { - return false - } +func sovPublicCrudapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCrudapi(x uint64) (n int) { + return sovPublicCrudapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *CreateRequest) String() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.Name != that1.Name { - return false - } - if this.FailIfReferred != that1.FailIfReferred { - return false - } - return true -} -func (this *CreateRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "®istration.CreateRequest{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.Spec != nil { - s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CreateResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "®istration.CreateResponse{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.SystemMetadata != nil { - s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") - } - if this.Spec != nil { - s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ReplaceRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "®istration.ReplaceRequest{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.Spec != nil { - s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") - } - s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ReplaceResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 4) - s = append(s, "®istration.ReplaceResponse{") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *GetRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "®istration.GetRequest{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "ResponseFormat: "+fmt.Sprintf("%#v", this.ResponseFormat)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *GetResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 14) - s = append(s, "®istration.GetResponse{") - if this.Object != nil { - s = append(s, "Object: "+fmt.Sprintf("%#v", this.Object)+",\n") - } - if this.CreateForm != nil { - s = append(s, "CreateForm: "+fmt.Sprintf("%#v", this.CreateForm)+",\n") - } - if this.ReplaceForm != nil { - s = append(s, "ReplaceForm: "+fmt.Sprintf("%#v", this.ReplaceForm)+",\n") - } - s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.SystemMetadata != nil { - s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") - } - if this.Spec != nil { - s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") - } - if this.ReferringObjects != nil { - s = append(s, "ReferringObjects: "+fmt.Sprintf("%#v", this.ReferringObjects)+",\n") - } - if this.DeletedReferredObjects != nil { - s = append(s, "DeletedReferredObjects: "+fmt.Sprintf("%#v", this.DeletedReferredObjects)+",\n") - } - if this.DisabledReferredObjects != nil { - s = append(s, "DisabledReferredObjects: "+fmt.Sprintf("%#v", this.DisabledReferredObjects)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ListRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "®istration.ListRequest{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") - s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") - s = append(s, "ReportStatusFields: "+fmt.Sprintf("%#v", this.ReportStatusFields)+",\n") - s = append(s, "}") - return strings.Join(s, "") + s := strings.Join([]string{`&CreateRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, + `}`, + }, "") + return s } -func (this *ListResponseItem) GoString() string { +func (this *CreateResponse) String() string { if this == nil { return "nil" } - s := make([]string, 0, 17) - s = append(s, "®istration.ListResponseItem{") - s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "Uid: "+fmt.Sprintf("%#v", this.Uid)+",\n") - s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") - s = append(s, "Disabled: "+fmt.Sprintf("%#v", this.Disabled)+",\n") - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) - } - mapStringForLabels += "}" - if this.Labels != nil { - s = append(s, "Labels: "+mapStringForLabels+",\n") - } - keysForAnnotations := make([]string, 0, len(this.Annotations)) - for k, _ := range this.Annotations { - keysForAnnotations = append(keysForAnnotations, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) - mapStringForAnnotations := "map[string]string{" - for _, k := range keysForAnnotations { - mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) - } - mapStringForAnnotations += "}" - if this.Annotations != nil { - s = append(s, "Annotations: "+mapStringForAnnotations+",\n") - } - if this.OwnerView != nil { - s = append(s, "OwnerView: "+fmt.Sprintf("%#v", this.OwnerView)+",\n") - } - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.SystemMetadata != nil { - s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") - } - if this.Object != nil { - s = append(s, "Object: "+fmt.Sprintf("%#v", this.Object)+",\n") - } - if this.GetSpec != nil { - s = append(s, "GetSpec: "+fmt.Sprintf("%#v", this.GetSpec)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + s := strings.Join([]string{`&CreateResponse{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s } -func (this *ListResponse) GoString() string { +func (this *ReplaceRequest) String() string { if this == nil { return "nil" } - s := make([]string, 0, 6) - s = append(s, "®istration.ListResponse{") - if this.Items != nil { - s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") - } - if this.Errors != nil { - s = append(s, "Errors: "+fmt.Sprintf("%#v", this.Errors)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + s := strings.Join([]string{`&ReplaceRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectReplaceMetaType", "schema.ObjectReplaceMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ReplaceSpecType", "ReplaceSpecType", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s } -func (this *DeleteRequest) GoString() string { +func (this *ReplaceResponse) String() string { if this == nil { return "nil" } - s := make([]string, 0, 7) - s = append(s, "®istration.DeleteRequest{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "FailIfReferred: "+fmt.Sprintf("%#v", this.FailIfReferred)+",\n") - s = append(s, "}") - return strings.Join(s, "") + s := strings.Join([]string{`&ReplaceResponse{`, + `}`, + }, "") + return s } -func valueToGoStringPublicCrudapi(v interface{}, typ string) string { +func valueToStringPublicCrudapi(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { return "nil" } pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 - -// APIClient is the client API for API service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type APIClient interface { - // Create registration - // - // x-displayName: "Create Registration" - // VPM creates registration using this message, never used by users. - Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) - // Get registration - // - // x-displayName: "Get Registration" - // Get registration specification - Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) - // List - // - // x-displayName: "List Registration" - // List the set of registration in a namespace - List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) - // Replace registration - // - // x-displayName: "Replace Registration" - // NO fields are allowed to be replaced - Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) - // Delete - // - // x-displayName: "Delete Registration" - // Delete the specified registration - Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) -} - -type aPIClient struct { - cc *grpc.ClientConn -} - -func NewAPIClient(cc *grpc.ClientConn) APIClient { - return &aPIClient{cc} -} - -func (c *aPIClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { - out := new(CreateResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/Create", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *aPIClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { - out := new(GetResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/Get", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *aPIClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { - out := new(ListResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/List", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *aPIClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { - out := new(ReplaceResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/Replace", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *aPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) { - out := new(types.Empty) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.API/Delete", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// APIServer is the server API for API service. -type APIServer interface { - // Create registration - // - // x-displayName: "Create Registration" - // VPM creates registration using this message, never used by users. - Create(context.Context, *CreateRequest) (*CreateResponse, error) - // Get registration - // - // x-displayName: "Get Registration" - // Get registration specification - Get(context.Context, *GetRequest) (*GetResponse, error) - // List - // - // x-displayName: "List Registration" - // List the set of registration in a namespace - List(context.Context, *ListRequest) (*ListResponse, error) - // Replace registration - // - // x-displayName: "Replace Registration" - // NO fields are allowed to be replaced - Replace(context.Context, *ReplaceRequest) (*ReplaceResponse, error) - // Delete - // - // x-displayName: "Delete Registration" - // Delete the specified registration - Delete(context.Context, *DeleteRequest) (*types.Empty, error) -} - -// UnimplementedAPIServer can be embedded to have forward compatible implementations. -type UnimplementedAPIServer struct { + return fmt.Sprintf("*%v", pv) } - -func (*UnimplementedAPIServer) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") -} -func (*UnimplementedAPIServer) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") -} -func (*UnimplementedAPIServer) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method List not implemented") -} -func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") -} -func (*UnimplementedAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*types.Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") -} - -func RegisterAPIServer(s *grpc.Server, srv APIServer) { - s.RegisterService(&_API_serviceDesc, srv) -} - -func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APIServer).Create(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.API/Create", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APIServer).Create(ctx, req.(*CreateRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APIServer).Get(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.API/Get", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APIServer).Get(ctx, req.(*GetRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APIServer).List(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.API/List", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APIServer).List(ctx, req.(*ListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ReplaceRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APIServer).Replace(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.API/Replace", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APIServer).Replace(ctx, req.(*ReplaceRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APIServer).Delete(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.API/Delete", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APIServer).Delete(ctx, req.(*DeleteRequest)) - } - return interceptor(ctx, in, info, handler) -} - -var _API_serviceDesc = grpc.ServiceDesc{ - ServiceName: "ves.io.schema.registration.API", - HandlerType: (*APIServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Create", - Handler: _API_Create_Handler, - }, - { - MethodName: "Get", - Handler: _API_Get_Handler, - }, - { - MethodName: "List", - Handler: _API_List_Handler, - }, - { - MethodName: "Replace", - Handler: _API_Replace_Handler, - }, - { - MethodName: "Delete", - Handler: _API_Delete_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "ves.io/schema/registration/public_crudapi.proto", -} - -func (m *CreateRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CreateRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Spec != nil { - { - size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *CreateResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CreateResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.SystemMetadata != nil { - { - size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.Spec != nil { - { - size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *ReplaceRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ReplaceRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ReplaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ResourceVersion) > 0 { - i -= len(m.ResourceVersion) - copy(dAtA[i:], m.ResourceVersion) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) - i-- - dAtA[i] = 0x1a - } - if m.Spec != nil { - { - size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *ReplaceResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ReplaceResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ReplaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *GetRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GetRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GetRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.ResponseFormat != 0 { - i = encodeVarintPublicCrudapi(dAtA, i, uint64(m.ResponseFormat)) - i-- - dAtA[i] = 0x18 - } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0x12 - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *GetResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GetResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GetResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.DisabledReferredObjects) > 0 { - for iNdEx := len(m.DisabledReferredObjects) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DisabledReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x52 - } - } - if len(m.DeletedReferredObjects) > 0 { - for iNdEx := len(m.DeletedReferredObjects) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DeletedReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a - } - } - if len(m.ReferringObjects) > 0 { - for iNdEx := len(m.ReferringObjects) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ReferringObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 - } - } - if m.SystemMetadata != nil { - { - size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } - if m.Spec != nil { - { - size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } - if len(m.ResourceVersion) > 0 { - i -= len(m.ResourceVersion) - copy(dAtA[i:], m.ResourceVersion) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) - i-- - dAtA[i] = 0x22 - } - if m.ReplaceForm != nil { - { - size, err := m.ReplaceForm.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.CreateForm != nil { - { - size, err := m.CreateForm.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.Object != nil { - { - size, err := m.Object.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *ListRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ListRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ListRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ReportStatusFields) > 0 { - for iNdEx := len(m.ReportStatusFields) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ReportStatusFields[iNdEx]) - copy(dAtA[i:], m.ReportStatusFields[iNdEx]) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportStatusFields[iNdEx]))) - i-- - dAtA[i] = 0x22 - } - } - if len(m.ReportFields) > 0 { - for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ReportFields[iNdEx]) - copy(dAtA[i:], m.ReportFields[iNdEx]) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.LabelFilter) > 0 { - i -= len(m.LabelFilter) - copy(dAtA[i:], m.LabelFilter) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.LabelFilter))) - i-- - dAtA[i] = 0x12 - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *ListResponseItem) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ListResponseItem) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ListResponseItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.SystemMetadata != nil { - { - size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x72 - } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a - } - if m.Disabled { - i-- - if m.Disabled { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x60 - } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x5a - } - if len(m.Annotations) > 0 { - for k := range m.Annotations { - v := m.Annotations[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x52 - } - } - if m.OwnerView != nil { - { - size, err := m.OwnerView.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a - } - if m.GetSpec != nil { - { - size, err := m.GetSpec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } - if len(m.Tenant) > 0 { - i -= len(m.Tenant) - copy(dAtA[i:], m.Tenant) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Tenant))) - i-- - dAtA[i] = 0x32 - } - if m.Object != nil { - { - size, err := m.Object.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } - if len(m.Labels) > 0 { - for k := range m.Labels { - v := m.Labels[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x22 - } - } - if len(m.Uid) > 0 { - i -= len(m.Uid) - copy(dAtA[i:], m.Uid) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Uid))) - i-- - dAtA[i] = 0x1a - } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0x12 - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *ListResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ListResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ListResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Errors) > 0 { - for iNdEx := len(m.Errors) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Errors[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if len(m.Items) > 0 { - for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func (m *DeleteRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *DeleteRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *DeleteRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.FailIfReferred { - i-- - if m.FailIfReferred { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x18 - } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0x12 - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func encodeVarintPublicCrudapi(dAtA []byte, offset int, v uint64) int { - offset -= sovPublicCrudapi(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *CreateRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - return n -} - -func (m *CreateResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.SystemMetadata != nil { - l = m.SystemMetadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - return n -} - -func (m *ReplaceRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.ResourceVersion) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - return n -} - -func (m *ReplaceResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *GetRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.ResponseFormat != 0 { - n += 1 + sovPublicCrudapi(uint64(m.ResponseFormat)) - } - return n -} - -func (m *GetResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Object != nil { - l = m.Object.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.CreateForm != nil { - l = m.CreateForm.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.ReplaceForm != nil { - l = m.ReplaceForm.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.ResourceVersion) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.SystemMetadata != nil { - l = m.SystemMetadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if len(m.ReferringObjects) > 0 { - for _, e := range m.ReferringObjects { - l = e.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - if len(m.DeletedReferredObjects) > 0 { - for _, e := range m.DeletedReferredObjects { - l = e.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - if len(m.DisabledReferredObjects) > 0 { - for _, e := range m.DisabledReferredObjects { - l = e.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - return n -} - -func (m *ListRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.LabelFilter) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if len(m.ReportFields) > 0 { - for _, s := range m.ReportFields { - l = len(s) - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - if len(m.ReportStatusFields) > 0 { - for _, s := range m.ReportStatusFields { - l = len(s) - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - return n -} - -func (m *ListResponseItem) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.Uid) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if len(m.Labels) > 0 { - for k, v := range m.Labels { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) - } - } - if m.Object != nil { - l = m.Object.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.Tenant) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.GetSpec != nil { - l = m.GetSpec.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.OwnerView != nil { - l = m.OwnerView.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if len(m.Annotations) > 0 { - for k, v := range m.Annotations { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) - } - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.Disabled { - n += 2 - } - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.SystemMetadata != nil { - l = m.SystemMetadata.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - return n -} - -func (m *ListResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Items) > 0 { - for _, e := range m.Items { - l = e.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - if len(m.Errors) > 0 { - for _, e := range m.Errors { - l = e.Size() - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - } - return n -} - -func (m *DeleteRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCrudapi(uint64(l)) - } - if m.FailIfReferred { - n += 2 - } - return n -} - -func sovPublicCrudapi(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozPublicCrudapi(x uint64) (n int) { - return sovPublicCrudapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *CreateRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateRequest{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, - `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateResponse{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, - `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, - `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceRequest{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectReplaceMetaType", "schema.ObjectReplaceMetaType", 1) + `,`, - `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ReplaceSpecType", "ReplaceSpecType", 1) + `,`, - `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceResponse{`, - `}`, - }, "") - return s -} -func (this *GetRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetRequest{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `ResponseFormat:` + fmt.Sprintf("%v", this.ResponseFormat) + `,`, - `}`, - }, "") - return s -} -func (this *GetResponse) String() string { - if this == nil { - return "nil" - } - repeatedStringForReferringObjects := "[]*ObjectRefType{" - for _, f := range this.ReferringObjects { - repeatedStringForReferringObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," - } - repeatedStringForReferringObjects += "}" - repeatedStringForDeletedReferredObjects := "[]*ObjectRefType{" - for _, f := range this.DeletedReferredObjects { - repeatedStringForDeletedReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," - } - repeatedStringForDeletedReferredObjects += "}" - repeatedStringForDisabledReferredObjects := "[]*ObjectRefType{" - for _, f := range this.DisabledReferredObjects { - repeatedStringForDisabledReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," - } - repeatedStringForDisabledReferredObjects += "}" - s := strings.Join([]string{`&GetResponse{`, - `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "Object", "Object", 1) + `,`, - `CreateForm:` + strings.Replace(this.CreateForm.String(), "CreateRequest", "CreateRequest", 1) + `,`, - `ReplaceForm:` + strings.Replace(this.ReplaceForm.String(), "ReplaceRequest", "ReplaceRequest", 1) + `,`, - `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, - `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, - `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, - `ReferringObjects:` + repeatedStringForReferringObjects + `,`, - `DeletedReferredObjects:` + repeatedStringForDeletedReferredObjects + `,`, - `DisabledReferredObjects:` + repeatedStringForDisabledReferredObjects + `,`, - `}`, - }, "") - return s -} -func (this *ListRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ListRequest{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, - `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, - `ReportStatusFields:` + fmt.Sprintf("%v", this.ReportStatusFields) + `,`, - `}`, - }, "") - return s -} -func (this *ListResponseItem) String() string { - if this == nil { - return "nil" - } - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) - } - mapStringForLabels += "}" - keysForAnnotations := make([]string, 0, len(this.Annotations)) - for k, _ := range this.Annotations { - keysForAnnotations = append(keysForAnnotations, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) - mapStringForAnnotations := "map[string]string{" - for _, k := range keysForAnnotations { - mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) - } - mapStringForAnnotations += "}" - s := strings.Join([]string{`&ListResponseItem{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Uid:` + fmt.Sprintf("%v", this.Uid) + `,`, - `Labels:` + mapStringForLabels + `,`, - `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "Object", "Object", 1) + `,`, - `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, - `GetSpec:` + strings.Replace(fmt.Sprintf("%v", this.GetSpec), "GetSpecType", "GetSpecType", 1) + `,`, - `OwnerView:` + strings.Replace(fmt.Sprintf("%v", this.OwnerView), "ViewRefType", "schema.ViewRefType", 1) + `,`, - `Annotations:` + mapStringForAnnotations + `,`, - `Description:` + fmt.Sprintf("%v", this.Description) + `,`, - `Disabled:` + fmt.Sprintf("%v", this.Disabled) + `,`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, - `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ListResponse) String() string { - if this == nil { - return "nil" - } - repeatedStringForItems := "[]*ListResponseItem{" - for _, f := range this.Items { - repeatedStringForItems += strings.Replace(f.String(), "ListResponseItem", "ListResponseItem", 1) + "," - } - repeatedStringForItems += "}" - repeatedStringForErrors := "[]*ErrorType{" - for _, f := range this.Errors { - repeatedStringForErrors += strings.Replace(fmt.Sprintf("%v", f), "ErrorType", "schema.ErrorType", 1) + "," - } - repeatedStringForErrors += "}" - s := strings.Join([]string{`&ListResponse{`, - `Items:` + repeatedStringForItems + `,`, - `Errors:` + repeatedStringForErrors + `,`, - `}`, - }, "") - return s -} -func (this *DeleteRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DeleteRequest{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `FailIfReferred:` + fmt.Sprintf("%v", this.FailIfReferred) + `,`, - `}`, - }, "") - return s -} -func valueToStringPublicCrudapi(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" - } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) -} -func (m *CreateRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CreateRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CreateRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.ObjectCreateMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Spec == nil { - m.Spec = &CreateSpecType{} - } - if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *CreateResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CreateResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.ObjectGetMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Spec == nil { - m.Spec = &GetSpecType{} - } - if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SystemMetadata == nil { - m.SystemMetadata = &schema.SystemObjectGetMetaType{} - } - if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ReplaceRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReplaceRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReplaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.ObjectReplaceMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Spec == nil { - m.Spec = &ReplaceSpecType{} - } - if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ResourceVersion = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ReplaceResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReplaceResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReplaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GetRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: GetRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseFormat", wireType) - } - m.ResponseFormat = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.ResponseFormat |= GetResponseFormatCode(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GetResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: GetResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GetResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Object == nil { - m.Object = &Object{} - } - if err := m.Object.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CreateForm", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CreateForm == nil { - m.CreateForm = &CreateRequest{} - } - if err := m.CreateForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReplaceForm", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ReplaceForm == nil { - m.ReplaceForm = &ReplaceRequest{} - } - if err := m.ReplaceForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ResourceVersion = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.ObjectGetMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Spec == nil { - m.Spec = &GetSpecType{} - } - if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SystemMetadata == nil { - m.SystemMetadata = &schema.SystemObjectGetMetaType{} - } - if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReferringObjects", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ReferringObjects = append(m.ReferringObjects, &schema.ObjectRefType{}) - if err := m.ReferringObjects[len(m.ReferringObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DeletedReferredObjects", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DeletedReferredObjects = append(m.DeletedReferredObjects, &schema.ObjectRefType{}) - if err := m.DeletedReferredObjects[len(m.DeletedReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisabledReferredObjects", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DisabledReferredObjects = append(m.DisabledReferredObjects, &schema.ObjectRefType{}) - if err := m.DisabledReferredObjects[len(m.DisabledReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ListRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ListRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ListRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.LabelFilter = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReportStatusFields", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ReportStatusFields = append(m.ReportStatusFields, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ListResponseItem) Unmarshal(dAtA []byte) error { +func (m *CreateRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4425,316 +1000,25 @@ func (m *ListResponseItem) Unmarshal(dAtA []byte) error { if iNdEx >= l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ListResponseItem: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ListResponseItem: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Uid", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Uid = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Labels == nil { - m.Labels = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthPublicCrudapi - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthPublicCrudapi - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Labels[mapkey] = mapvalue - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Object == nil { - m.Object = &Object{} - } - if err := m.Object.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Tenant = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 7: + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GetSpec", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -4761,16 +1045,16 @@ func (m *ListResponseItem) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.GetSpec == nil { - m.GetSpec = &GetSpecType{} + if m.Metadata == nil { + m.Metadata = &schema.ObjectCreateMetaType{} } - if err := m.GetSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 9: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OwnerView", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -4797,145 +1081,71 @@ func (m *ListResponseItem) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.OwnerView == nil { - m.OwnerView = &schema.ViewRefType{} + if m.Spec == nil { + m.Spec = &CreateSpecType{} } - if err := m.OwnerView.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err } - if msglen < 0 { + if skippy < 0 { return ErrInvalidLengthPublicCrudapi } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthPublicCrudapi } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - if m.Annotations == nil { - m.Annotations = make(map[string]string) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthPublicCrudapi - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthPublicCrudapi - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCrudapi - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - m.Annotations[mapkey] = mapvalue - iNdEx = postIndex - case 11: + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCrudapi @@ -4945,47 +1155,31 @@ func (m *ListResponseItem) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthPublicCrudapi } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthPublicCrudapi } if postIndex > l { return io.ErrUnexpectedEOF } - m.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 12: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Disabled", wireType) + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.Disabled = bool(v != 0) - case 13: + iNdEx = postIndex + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -5012,14 +1206,14 @@ func (m *ListResponseItem) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.ObjectGetMetaType{} + if m.Spec == nil { + m.Spec = &GetSpecType{} } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 14: + case 3: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) } @@ -5079,7 +1273,7 @@ func (m *ListResponseItem) Unmarshal(dAtA []byte) error { } return nil } -func (m *ListResponse) Unmarshal(dAtA []byte) error { +func (m *ReplaceRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -5102,15 +1296,15 @@ func (m *ListResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ListResponse: wiretype end group for non-group") + return fmt.Errorf("proto: ReplaceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ReplaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -5137,14 +1331,16 @@ func (m *ListResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Items = append(m.Items, &ListResponseItem{}) - if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Metadata == nil { + m.Metadata = &schema.ObjectReplaceMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Errors", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -5171,11 +1367,45 @@ func (m *ListResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Errors = append(m.Errors, &schema.ErrorType{}) - if err := m.Errors[len(m.Errors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) @@ -5200,7 +1430,7 @@ func (m *ListResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *DeleteRequest) Unmarshal(dAtA []byte) error { +func (m *ReplaceResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -5223,96 +1453,12 @@ func (m *DeleteRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DeleteRequest: wiretype end group for non-group") + return fmt.Errorf("proto: ReplaceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DeleteRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ReplaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCrudapi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCrudapi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field FailIfReferred", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCrudapi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.FailIfReferred = bool(v != 0) default: iNdEx = preIndex skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/registration/public_crudapi.pb.gw.go b/pbgo/extschema/schema/registration/public_crudapi.pb.gw.go index 3bace958c..5b84f36bb 100644 --- a/pbgo/extschema/schema/registration/public_crudapi.pb.gw.go +++ b/pbgo/extschema/schema/registration/public_crudapi.pb.gw.go @@ -98,166 +98,6 @@ func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler } -var ( - filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} -) - -func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - val, ok = pathParams["name"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") - } - - protoReq.Name, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) - } - - if err := req.ParseForm(); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq GetRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - val, ok = pathParams["name"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") - } - - protoReq.Name, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) - } - - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.Get(ctx, &protoReq) - return msg, metadata, err - -} - -var ( - filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} -) - -func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - if err := req.ParseForm(); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ListRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.List(ctx, &protoReq) - return msg, metadata, err - -} - func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ReplaceRequest var metadata runtime.ServerMetadata @@ -350,98 +190,6 @@ func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshale } -func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq DeleteRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - val, ok = pathParams["name"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") - } - - protoReq.Name, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) - } - - msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq DeleteRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["namespace"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") - } - - protoReq.Namespace, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) - } - - val, ok = pathParams["name"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") - } - - protoReq.Name, err = runtime.String(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) - } - - msg, err := server.Delete(ctx, &protoReq) - return msg, metadata, err - -} - // RegisterAPIHandlerServer registers the http handlers for service API to "mux". // UnaryRPC :call APIServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -467,46 +215,6 @@ func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server }) - mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -527,26 +235,6 @@ func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server }) - mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - return nil } @@ -608,46 +296,6 @@ func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client }) - mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -668,49 +316,17 @@ func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client }) - mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - return nil } var ( pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "metadata.namespace", "registrations"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "registrations", "name"}, "", runtime.AssumeColonVerbOpt(false))) - - pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "registrations"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "metadata.namespace", "registrations", "metadata.name"}, "", runtime.AssumeColonVerbOpt(false))) - - pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "registrations", "name"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( forward_API_Create_0 = runtime.ForwardResponseMessage - forward_API_Get_0 = runtime.ForwardResponseMessage - - forward_API_List_0 = runtime.ForwardResponseMessage - forward_API_Replace_0 = runtime.ForwardResponseMessage - - forward_API_Delete_0 = runtime.ForwardResponseMessage ) diff --git a/pbgo/extschema/schema/registration/public_crudapi.vesapi.go b/pbgo/extschema/schema/registration/public_crudapi.vesapi.go index 5e6b52186..8b679c55c 100644 --- a/pbgo/extschema/schema/registration/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/registration/public_crudapi.vesapi.go @@ -12,9 +12,7 @@ import ( "net/http" "strings" - google_protobuf "github.com/gogo/protobuf/types" "github.com/grpc-ecosystem/grpc-gateway/runtime" - multierror "github.com/hashicorp/go-multierror" "go.uber.org/zap" "google.golang.org/grpc" @@ -23,8 +21,6 @@ import ( "gopkg.volterra.us/stdlib/codec" "gopkg.volterra.us/stdlib/db" "gopkg.volterra.us/stdlib/errors" - "gopkg.volterra.us/stdlib/flags" - "gopkg.volterra.us/stdlib/log" "gopkg.volterra.us/stdlib/server" "gopkg.volterra.us/stdlib/svcfw" @@ -73,52 +69,6 @@ func NewReplaceRequest(e db.Entry) (*ReplaceRequest, error) { return r, nil } -func NewGetRequest(key string, opts ...server.CRUDCallOpt) (*GetRequest, error) { - strs := strings.Split(key, "/") - if len(strs) != 2 { - return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) - } - ccOpts := server.NewCRUDCallOpts() - for _, o := range opts { - o(ccOpts) - } - var rspFmt GetResponseFormatCode - switch ccOpts.ResponseFormat { - case server.DefaultForm: - rspFmt = GET_RSP_FORMAT_DEFAULT - case server.CreateRequestForm: - rspFmt = GET_RSP_FORMAT_FOR_CREATE - case server.ReplaceRequestForm: - rspFmt = GET_RSP_FORMAT_FOR_REPLACE - case server.GetSpecForm: - rspFmt = GET_RSP_FORMAT_READ - case server.BrokenRefsForm: - rspFmt = GET_RSP_FORMAT_BROKEN_REFERENCES - default: - return nil, fmt.Errorf("Unsupported Response Format %s", ccOpts.ResponseFormat) - } - return &GetRequest{Namespace: strs[0], Name: strs[1], ResponseFormat: rspFmt}, nil -} -func (m *GetRequest) ResponseFormatString() string { - return m.GetResponseFormat().String() -} - -func NewListRequest(opts ...server.CRUDCallOpt) *ListRequest { - ccOpts := server.NewCRUDCallOpts() - for _, o := range opts { - o(ccOpts) - } - return &ListRequest{Namespace: ccOpts.Namespace} -} - -func NewDeleteRequest(key string) (*DeleteRequest, error) { - strs := strings.Split(key, "/") - if len(strs) != 2 { - return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) - } - return &DeleteRequest{Namespace: strs[0], Name: strs[1]}, nil -} - // GRPC Client type crudAPIGrpcClient struct { conn *grpc.ClientConn @@ -213,114 +163,28 @@ func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...ser } -func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { - req, err := NewGetRequest(key, opts...) - if err != nil { - return nil, errors.Wrap(err, "Get") - } - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - ctx = client.AddHdrsToCtx(cco.Headers, ctx) - - rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) - if err != nil { - return nil, err - } - if cco.OutResourceVersion != nil { - *cco.OutResourceVersion = rsp.ResourceVersion - } - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rsp - } - return rsp, nil -} - func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { - gRsp, err := c.GetRaw(ctx, key, opts...) - if gRsp != nil { - obj := NewDBObject(gRsp.Object) - if gRsp.Object == nil { - gRsp.ToObject(obj) - } - return obj, err - } - return nil, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { - gRsp, err := c.GetRaw(ctx, key, opts...) - respDetail := server.GetResponse{} - if gRsp != nil { - respDetail.Entry = NewDBObject(gRsp.Object) - if gRsp.Object == nil { - gRsp.ToObject(respDetail.Entry) - } - - return &respDetail, err - } - return nil, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { - idSet := []string{} - listRsp, err := c.List(ctx, opts...) - if listRsp == nil { - return idSet, err - } - for _, li := range listRsp.GetItems() { - idSet = append(idSet, li.GetUid()) - } - return idSet, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { - sliSet := []server.ListItem{} - listRsp, err := c.List(ctx, opts...) - if listRsp == nil { - return sliSet, err - } - for _, li := range listRsp.GetItems() { - sliSet = append(sliSet, li) - } - return sliSet, err - -} - -func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { - req := NewListRequest(opts...) - - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - ctx = client.AddHdrsToCtx(cco.Headers, ctx) + return nil, fmt.Errorf("Not implemented") - switch len(cco.LabelFilter) { - case 0: - case 1: - req.LabelFilter = cco.LabelFilter[0] - default: - return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) - } - req.ReportFields = cco.ReportFields - req.ReportStatusFields = cco.ReportStatusFields - rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) - if err != nil { - return nil, err - } - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rsp - } - return rsp, nil } func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { @@ -329,22 +193,7 @@ func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDC func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { - req, err := NewDeleteRequest(key) - if err != nil { - return errors.Wrap(err, "Delete") - } - - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - ctx = client.AddHdrsToCtx(cco.Headers, ctx) - - rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rsp - } - return err + return fmt.Errorf("Not implemented") } @@ -444,7 +293,10 @@ func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...serv defer rsp.Body.Close() if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } body, err := io.ReadAll(rsp.Body) if err != nil { @@ -565,7 +417,10 @@ func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...ser if rsp.StatusCode != http.StatusOK { body, err := io.ReadAll(rsp.Body) - return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) } if _, err := io.ReadAll(rsp.Body); err != nil { @@ -577,175 +432,28 @@ func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...ser } -func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { - req, err := NewGetRequest(key, opts...) - if err != nil { - return nil, errors.Wrap(err, "Get") - } - - url := fmt.Sprintf("%s/public/namespaces/%s/registrations/%s", c.baseURL, req.Namespace, req.Name) - hReq, err := http.NewRequest("GET", url, nil) - if err != nil { - return nil, err - } - hReq = hReq.WithContext(ctx) - - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - client.AddHdrsToReq(cco.Headers, hReq) - - q := hReq.URL.Query() - q.Add("response_format", fmt.Sprintf("%d", req.ResponseFormat)) - hReq.URL.RawQuery += q.Encode() - - rsp, err := c.client.Do(hReq) - if err != nil { - return nil, err - } - defer rsp.Body.Close() - if rsp.StatusCode != http.StatusOK { - body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) - } - body, err := io.ReadAll(rsp.Body) - if err != nil { - return nil, errors.Wrap(err, "RestClient Get") - } - - rspo := &GetResponse{} - if err := codec.FromJSON(string(body), rspo); err != nil { - return nil, errors.Wrap(err, "Converting json to response protobuf message") - } - if cco.OutResourceVersion != nil { - *cco.OutResourceVersion = rspo.ResourceVersion - } - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rspo - cco.OutCallResponse.JSON = string(body) - } - configapi.TranscribeCall(ctx, req, rspo) - return rspo, nil -} - func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { - gRsp, err := c.GetRaw(ctx, key, opts...) - if gRsp != nil { - obj := NewDBObject(gRsp.Object) - if gRsp.Object == nil { - gRsp.ToObject(obj) - } - return obj, err - } - return nil, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { - gRsp, err := c.GetRaw(ctx, key, opts...) - respDetail := server.GetResponse{} - if gRsp != nil { - respDetail.Entry = NewDBObject(gRsp.Object) - if gRsp.Object == nil { - gRsp.ToObject(respDetail.Entry) - } - - return &respDetail, err - } - - return nil, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { - idSet := []string{} - listRsp, err := c.List(ctx, opts...) - if listRsp == nil { - return idSet, err - } - for _, li := range listRsp.GetItems() { - idSet = append(idSet, li.GetUid()) - } - return idSet, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { - sliSet := []server.ListItem{} - listRsp, err := c.List(ctx, opts...) - if listRsp == nil { - return sliSet, err - } - for _, li := range listRsp.GetItems() { - sliSet = append(sliSet, li) - } - return sliSet, err - -} - -func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { - req := NewListRequest(opts...) - _ = req - url := fmt.Sprintf("%s/public/namespaces/%s/registrations", c.baseURL, req.Namespace) - - hReq, err := http.NewRequest("GET", url, nil) - if err != nil { - return nil, err - } - hReq = hReq.WithContext(ctx) - - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - client.AddHdrsToReq(cco.Headers, hReq) - - q := hReq.URL.Query() - switch len(cco.LabelFilter) { - case 0: - case 1: - q.Add("label_filter", cco.LabelFilter[0]) - default: - return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) - } - - for _, fName := range cco.ReportFields { - q.Add("report_fields", fName) - } - for _, fName := range cco.ReportStatusFields { - q.Add("report_status_fields", fName) - } - - hReq.URL.RawQuery += q.Encode() - rsp, err := c.client.Do(hReq) - if err != nil { - return nil, err - } - defer rsp.Body.Close() - if rsp.StatusCode != http.StatusOK { - body, err := io.ReadAll(rsp.Body) - return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) - } - body, err := io.ReadAll(rsp.Body) - if err != nil { - return nil, errors.Wrap(err, "RestClient List") - } + return nil, fmt.Errorf("Not implemented") - rspo := &ListResponse{} - if err := codec.FromJSON(string(body), rspo); err != nil { - return nil, errors.Wrap(err, "Converting json to response protobuf message") - } - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rspo - cco.OutCallResponse.JSON = string(body) - } - configapi.TranscribeCall(ctx, req, rspo) - return rspo, nil } func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { @@ -754,42 +462,7 @@ func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDC func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { - dReq, err := NewDeleteRequest(key) - if err != nil { - return errors.Wrap(err, "Delete") - } - - url := fmt.Sprintf("%s/public/namespaces/%s/registrations/%s", c.baseURL, dReq.Namespace, dReq.Name) - hReq, err := http.NewRequest(http.MethodDelete, url, nil) - if err != nil { - return errors.Wrap(err, "RestClient delete") - } - hReq = hReq.WithContext(ctx) - - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - client.AddHdrsToReq(cco.Headers, hReq) - - rsp, err := c.client.Do(hReq) - if err != nil { - return err - } - defer rsp.Body.Close() - - if rsp.StatusCode != http.StatusOK { - body, err := io.ReadAll(rsp.Body) - return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err) - } - - _, err = io.ReadAll(rsp.Body) - if err != nil { - return errors.Wrap(err, "RestClient delete") - } - configapi.TranscribeCall(ctx, dReq, nil) - - return nil + return fmt.Errorf("Not implemented") } @@ -817,7 +490,7 @@ func (c *APIInprocClient) Create(ctx context.Context, req *CreateRequest, opts . return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.API.Create", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.API.Create") rsp, err := oah.Create(ctx, req) if err != nil { return rsp, err @@ -832,58 +505,13 @@ func (c *APIInprocClient) Replace(ctx context.Context, req *ReplaceRequest, opts err := fmt.Errorf("No CRUD Server for ves.io.schema.registration") return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.API.Replace", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.API.Replace") if rsp, err := oah.Replace(ctx, req); err != nil { return rsp, err } return NewObjectReplaceRsp(nil) } -func (c *APIInprocClient) Get(ctx context.Context, req *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { - ah := c.svc.GetAPIHandler("ves.io.schema.registration.API") - oah, ok := ah.(*APISrv) - if !ok { - err := fmt.Errorf("No CRUD Server for ves.io.schema.registration") - return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() - } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.API.Get", nil) - rsp, err := oah.Get(ctx, req) - if err != nil { - return rsp, err - } - return rsp, nil -} - -func (c *APIInprocClient) List(ctx context.Context, req *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { - ah := c.svc.GetAPIHandler("ves.io.schema.registration.API") - oah, ok := ah.(*APISrv) - if !ok { - err := fmt.Errorf("No CRUD Server for ves.io.schema.registration") - return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() - } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.API.List", nil) - rsp, err := oah.List(ctx, req) - if err != nil { - return rsp, err - } - return rsp, nil -} - -func (c *APIInprocClient) Delete(ctx context.Context, req *DeleteRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error) { - ah := c.svc.GetAPIHandler("ves.io.schema.registration.API") - oah, ok := ah.(*APISrv) - if !ok { - err := fmt.Errorf("No CRUD Server for ves.io.schema.registration") - return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() - } - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.API.Delete", nil) - rsp, err := oah.Delete(ctx, req) - if err != nil { - return rsp, err - } - return rsp, nil -} - func NewAPIInprocClient(svc svcfw.Service) APIClient { return &APIInprocClient{svc: svc} } @@ -957,108 +585,28 @@ func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...s } -func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - req, err := NewGetRequest(key, opts...) - if err != nil { - return nil, errors.Wrap(err, "Get") - } - rsp, err := c.cl.Get(ctx, req) - if err != nil { - return nil, err - } - if cco.OutResourceVersion != nil { - *cco.OutResourceVersion = rsp.ResourceVersion - } - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rsp - } - return rsp, nil -} - func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { - gRsp, err := c.GetRaw(ctx, key, opts...) - if gRsp != nil { - obj := NewDBObject(gRsp.Object) - if gRsp.Object == nil { - gRsp.ToObject(obj) - } - return obj, err - } - return nil, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { - gRsp, err := c.GetRaw(ctx, key, opts...) - respDetail := server.GetResponse{} - if gRsp != nil { - respDetail.Entry = NewDBObject(gRsp.Object) - if gRsp.Object == nil { - gRsp.ToObject(respDetail.Entry) - } - - return &respDetail, err - } - - return nil, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { - idSet := []string{} - listRsp, err := c.List(ctx, opts...) - if listRsp == nil { - return idSet, err - } - for _, li := range listRsp.GetItems() { - idSet = append(idSet, li.GetUid()) - } - return idSet, err + return nil, fmt.Errorf("Not implemented") } func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { - sliSet := []server.ListItem{} - listRsp, err := c.List(ctx, opts...) - if listRsp == nil { - return sliSet, err - } - for _, li := range listRsp.GetItems() { - sliSet = append(sliSet, li) - } - return sliSet, err - -} - -func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - - req := NewListRequest(opts...) - switch len(cco.LabelFilter) { - case 0: - case 1: - req.LabelFilter = cco.LabelFilter[0] - default: - return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) - } - - rsp, err := c.cl.List(ctx, req) + return nil, fmt.Errorf("Not implemented") - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rsp - } - return rsp, err } func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { @@ -1067,22 +615,7 @@ func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRU func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { - cco := server.NewCRUDCallOpts() - for _, opt := range opts { - opt(cco) - } - - req, err := NewDeleteRequest(key) - if err != nil { - return errors.Wrap(err, "Delete") - } - - rsp, err := c.cl.Delete(ctx, req) - - if cco.OutCallResponse != nil { - cco.OutCallResponse.ProtoMsg = rsp - } - return err + return fmt.Errorf("Not implemented") } @@ -1217,133 +750,6 @@ func (s *APISrv) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResp return rsp, nil } -func (s *APISrv) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { - if err := s.validateTransport(ctx); err != nil { - return nil, err - } - if s.sf.Config().EnableAPIValidation { - if rvFn := s.sf.GetRPCValidator("ves.io.schema.registration.API.Get"); rvFn != nil { - if err := rvFn(ctx, req); err != nil { - err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) - return nil, server.GRPCStatusFromError(err).Err() - } - } - } - tenant := server.TenantFromContext(ctx) - rsrcReq := &server.ResourceGetRequest{IsPublic: true, Tenant: tenant, Namespace: req.GetNamespace(), Name: req.GetName()} - switch req.ResponseFormat { - case GET_RSP_FORMAT_FOR_CREATE: - rsrcReq.RspInCreateForm = true - - case GET_RSP_FORMAT_FOR_REPLACE: - rsrcReq.RspInReplaceForm = true - - case GET_RSP_FORMAT_READ: - rsrcReq.RspInReadForm = true - - case GET_RSP_FORMAT_REFERRING_OBJECTS: - rsrcReq.RspInReferringObjectsForm = true - - case GET_RSP_FORMAT_BROKEN_REFERENCES: - rsrcReq.RspInBrokenReferencesForm = true - - } - - rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) - if err != nil { - err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResource")) - return nil, server.GRPCStatusFromError(err).Err() - } - rsp, err := NewObjectGetRsp(ctx, s.sf, req, rsrcRsp) - if err != nil { - err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResponse")) - return nil, server.GRPCStatusFromError(err).Err() - } - rspMsgFQN := "ves.io.schema.registration.GetResponse" - if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { - if err := conv(rsrcRsp.Entry, rsp); err != nil { - return nil, err - } - } - return rsp, nil -} - -func (s *APISrv) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { - if err := s.validateTransport(ctx); err != nil { - return nil, err - } - if s.sf.Config().EnableAPIValidation { - if rvFn := s.sf.GetRPCValidator("ves.io.schema.registration.API.List"); rvFn != nil { - if err := rvFn(ctx, req); err != nil { - err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) - return nil, server.GRPCStatusFromError(err).Err() - } - } - } - var merr *multierror.Error - rsrcReq := &server.ResourceListRequest{ - Namespace: req.Namespace, - LabelFilter: req.LabelFilter, - RspStreamed: false, - } - if len(req.ReportStatusFields) > 0 { - rsrcReq.ReportStatusFields = &req.ReportStatusFields - } - rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) - if err != nil { - merr = multierror.Append(merr, errors.Wrap(err, "ListResource")) - } - rsp, err := NewListResponse(ctx, req, s.sf, rsrcRsp) - if err != nil { - merr = multierror.Append(merr, errors.Wrap(err, "ListResponse allocation failed")) - } - if merr != nil { - if rsp == nil { - return nil, merr - } - rsp.Errors = append(rsp.Errors, &ves_io_schema.ErrorType{ - Code: ves_io_schema.EINTERNAL, - Message: merr.Error(), - }) - - } - return rsp, nil -} - -func (s *APISrv) Delete(ctx context.Context, req *DeleteRequest) (*google_protobuf.Empty, error) { - if err := s.validateTransport(ctx); err != nil { - return nil, err - } - if s.sf.Config().EnableAPIValidation { - if rvFn := s.sf.GetRPCValidator("ves.io.schema.registration.API.Delete"); rvFn != nil { - if err := rvFn(ctx, req); err != nil { - if !server.NoReqValidateFromContext(ctx) { - err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) - return nil, server.GRPCStatusFromError(err).Err() - } - s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.registration.API.Delete"), zap.Error(err)) - } - } - } - bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.registration.API.DeleteRequest", req) - defer func() { - if len(bodyFields) > 0 { - server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) - } - }() - - tenant := server.TenantFromContext(ctx) - key := fmt.Sprintf("%s/%s/%s", tenant, req.GetNamespace(), req.GetName()) - rsrcReq := &server.ResourceDeleteRequest{Key: key} - rsrcReq.FailIfReferred = req.FailIfReferred - _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) - if err != nil { - err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "DeleteResource")) - return nil, server.GRPCStatusFromError(err).Err() - } - return &google_protobuf.Empty{}, nil -} - // Assert that APISrv implements the generated gRPC APIServer interface var _ APIServer = &APISrv{} @@ -1378,35 +784,6 @@ func (r *Object) Uid() string { return r.SystemMetadata.Uid } -func (r *ListResponse) GetKeys() []string { - var ret []string - for _, i := range r.Items { - ret = append(ret, i.Namespace+"/"+i.Name) - } - return ret -} - -// Implement server.SROListItem interface on ListResponseItem -func (l *ListResponseItem) GetObjUid() string { - return l.Uid -} - -func (l *ListResponseItem) GetObjTenant() string { - return l.Tenant -} - -func (l *ListResponseItem) GetObjNamespace() string { - return l.Namespace -} - -func (l *ListResponseItem) GetObjName() string { - return l.Name -} - -func (l *ListResponseItem) GetObjLabels() map[string]string { - return l.Labels -} - func NewObjectCreateRsp(e db.Entry) (*CreateResponse, error) { switch e.(type) { case nil: @@ -1423,213 +800,6 @@ func NewObjectReplaceRsp(e db.Entry) (*ReplaceResponse, error) { return &ReplaceResponse{}, nil } -func NewObjectGetRsp(ctx context.Context, sf svcfw.Service, req *GetRequest, rsrcRsp *server.ResourceGetResponse) (*GetResponse, error) { - rsp := &GetResponse{} - e := rsrcRsp.Entry - if e == nil { - return rsp, nil - } - o, ok := e.(*DBObject) - if !ok { - return nil, fmt.Errorf("entry not of type *DBObject in NewObjectGetRsp") - } - - rsp.ResourceVersion = rsrcRsp.ResourceVersion - var merr *multierror.Error - buildReadForm := func() { - rsp.Metadata = &ves_io_schema.ObjectGetMetaType{} - rsp.Metadata.FromObjectMetaType(o.Metadata) - rsp.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} - rsp.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) - rsp.Spec = &GetSpecType{} - if redactor, ok := e.(db.Redactor); ok { - if err := redactor.Redact(ctx); err != nil { - merr = multierror.Append(merr, errors.WithMessage(err, "Error while redacting entry")) - return - } - } - rsp.Spec.FromGlobalSpecType(o.Spec.GcSpec) - - } - _ = buildReadForm - buildStatusForm := func() { - - } - _ = buildStatusForm - buildReferringObjectsForm := func() { - for _, br := range rsrcRsp.ReferringObjects { - rsp.ReferringObjects = append(rsp.ReferringObjects, &ves_io_schema.ObjectRefType{ - Kind: db.KindForEntryType(br.Type), - Uid: br.UID, - Tenant: br.Tenant, - Namespace: br.Namespace, - Name: br.Name, - }) - } - - } - _ = buildReferringObjectsForm - buildBrokenReferencesForm := func() { - for _, br := range rsrcRsp.DeletedReferredObjects { - rsp.DeletedReferredObjects = append(rsp.DeletedReferredObjects, &ves_io_schema.ObjectRefType{ - Kind: db.KindForEntryType(br.Type), - Uid: br.UID, - Tenant: br.Tenant, - Namespace: br.Namespace, - Name: br.Name, - }) - } - for _, br := range rsrcRsp.DisabledReferredObjects { - rsp.DisabledReferredObjects = append(rsp.DisabledReferredObjects, &ves_io_schema.ObjectRefType{ - Kind: db.KindForEntryType(br.Type), - Uid: br.UID, - Tenant: br.Tenant, - Namespace: br.Namespace, - Name: br.Name, - }) - } - - } - _ = buildBrokenReferencesForm - - switch req.ResponseFormat { - - case GET_RSP_FORMAT_FOR_CREATE: - createReq, err := NewCreateRequest(e) - if err != nil { - return nil, errors.Wrap(err, "Building CreateRequest from entry") - } - // Name has to be specified for a new create - createReq.Metadata.Name = "" - rsp.CreateForm = createReq - - case GET_RSP_FORMAT_FOR_REPLACE: - replaceReq, err := NewReplaceRequest(e) - if err != nil { - return nil, errors.Wrap(err, "Building ReplaceRequest from entry") - } - rsp.ReplaceForm = replaceReq - - case GET_RSP_FORMAT_READ: - buildReadForm() - - case GET_RSP_FORMAT_REFERRING_OBJECTS: - buildReferringObjectsForm() - - case GET_RSP_FORMAT_BROKEN_REFERENCES: - buildBrokenReferencesForm() - - default: - noDBForm, _ := flags.GetEnvGetRspNoDBForm() - if !noDBForm { - rsp.Object = o.Object - sf.Logger().Alert(svcfw.GetResponseInDBForm, - log.MinorAlert, - zap.String("user", server.UserFromContext(ctx)), - zap.String("useragent", server.UseragentStrFromContext(ctx)), - zap.String("operation", "Get"), - ) - buildReadForm() - - } else { - buildReadForm() - - } - buildStatusForm() - } - - return rsp, errors.ErrOrNil(merr) -} - -func NewListResponse(ctx context.Context, req *ListRequest, sf svcfw.Service, rsrcRsp *server.ResourceListResponse) (*ListResponse, error) { - if req == nil { - return nil, fmt.Errorf("Nil ListRequest") - } - if rsrcRsp == nil { - return nil, fmt.Errorf("Nil ResourceResponse") - } - - errStrs := []string{} - resp := &ListResponse{} - resp.Items = []*ListResponseItem{} - - for _, rsrcItem := range rsrcRsp.Items { - if rsrcItem == nil { - errStrs = append(errStrs, fmt.Sprintf("Nil ResourceListResponseItem")) - continue - } - - e := rsrcItem.Entry - o, ok := e.(*DBObject) - if !ok { - resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ - Code: ves_io_schema.EINTERNAL, - Message: fmt.Sprintf("Entry %T not of type *DBObject in NewListResponse", e), - }) - - continue - } - if redactor, ok := e.(db.Redactor); ok { - if err := redactor.Redact(ctx); err != nil { - resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ - Code: ves_io_schema.EINTERNAL, - Message: fmt.Sprintf("Error while redacting in NewListResponse: %s", err), - }) - continue - } - } - item := &ListResponseItem{ - Tenant: o.GetSystemMetadata().GetTenant(), - Namespace: o.GetMetadata().GetNamespace(), - Name: o.GetMetadata().GetName(), - Uid: o.GetMetadata().GetUid(), - OwnerView: o.GetSystemMetadata().GetOwnerView(), - Labels: o.GetMetadata().GetLabels(), - } - - item.Description = o.GetMetadata().GetDescription() - item.Annotations = o.GetMetadata().GetAnnotations() - item.Disabled = o.GetMetadata().GetDisable() - - if len(req.ReportFields) > 0 { - noDBForm, _ := flags.GetEnvGetRspNoDBForm() - if !noDBForm { - item.Object = o.Object - } - - item.Metadata = &ves_io_schema.ObjectGetMetaType{} - item.Metadata.FromObjectMetaType(o.Metadata) - item.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} - item.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) - - if o.Object.GetSpec().GetGcSpec() != nil { - msgFQN := "ves.io.schema.registration.GetResponse" - if conv, exists := sf.Config().ObjToMsgConverters[msgFQN]; exists { - getSpec := &GetSpecType{} - getSpec.FromGlobalSpecType(o.Spec.GcSpec) - getRsp := &GetResponse{Spec: getSpec} - if err := conv(o, getRsp); err != nil { - resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ - Code: ves_io_schema.EINTERNAL, - Message: fmt.Sprintf("Converting entry to getResponse: %s", err), - }) - - continue - } - item.GetSpec = getRsp.Spec - } else { - item.GetSpec = &GetSpecType{} - item.GetSpec.FromGlobalSpecType(o.Spec.GcSpec) - } - } - - } - - resp.Items = append(resp.Items, item) - } - return resp, nil -} - func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { s, ok := svc.(svcfw.Service) if !ok { @@ -1848,392 +1018,30 @@ var APISwaggerJSON string = `{ "x-displayname": "Registration", "x-ves-proto-service": "ves.io.schema.registration.API", "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + } + }, + "definitions": { + "ioschemaEmpty": { + "type": "object", + "description": "This can be used for messages where no values are needed", + "title": "Empty", + "x-displayname": "Empty", + "x-ves-proto-message": "ves.io.schema.Empty" }, - "/public/namespaces/{namespace}/registrations": { - "get": { - "summary": "List Registration", - "description": "List the set of registration in a namespace", - "operationId": "ves.io.schema.registration.API.List", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/registrationListResponse" - } - }, - "401": { - "description": "Returned when operation is not authorized", - "schema": { - "format": "string" - } - }, - "403": { - "description": "Returned when there is no permission to access resource", - "schema": { - "format": "string" - } - }, - "404": { - "description": "Returned when resource is not found", - "schema": { - "format": "string" - } - }, - "409": { - "description": "Returned when operation on resource is conflicting with current value", - "schema": { - "format": "string" - } - }, - "429": { - "description": "Returned when operation has been rejected as it is happening too frequently", - "schema": { - "format": "string" - } - }, - "500": { - "description": "Returned when server encountered an error in processing API", - "schema": { - "format": "string" - } - }, - "503": { - "description": "Returned when service is unavailable temporarily", - "schema": { - "format": "string" - } - }, - "504": { - "description": "Returned when server timed out processing request", - "schema": { - "format": "string" - } - } - }, - "parameters": [ - { - "name": "namespace", - "description": "namespace\n\nx-example: \"ns1\"\nNamespace to scope the listing of registration", - "in": "path", - "required": true, - "type": "string", - "x-displayname": "Namespace" - }, - { - "name": "label_filter", - "description": "x-example: \"env in (staging, testing), tier in (web, db)\"\nA LabelSelectorType expression that every item in list response will satisfy", - "in": "query", - "required": false, - "type": "string", - "x-displayname": "Label Filter" - }, - { - "name": "report_fields", - "description": "x-example: \"\"\nExtra fields to return along with summary fields", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-displayname": "Report Fields" - }, - { - "name": "report_status_fields", - "description": "x-example: \"\"\nExtra status fields to return along with summary fields", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-displayname": "Report Status Fields" - } - ], - "tags": [ - "API" - ], - "externalDocs": { - "description": "Examples of this operation", - "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-api-list" - }, - "x-ves-proto-rpc": "ves.io.schema.registration.API.List" - }, - "x-displayname": "Registration", - "x-ves-proto-service": "ves.io.schema.registration.API", - "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" - }, - "/public/namespaces/{namespace}/registrations/{name}": { - "get": { - "summary": "Get Registration", - "description": "Get registration specification", - "operationId": "ves.io.schema.registration.API.Get", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/registrationGetResponse" - } - }, - "401": { - "description": "Returned when operation is not authorized", - "schema": { - "format": "string" - } - }, - "403": { - "description": "Returned when there is no permission to access resource", - "schema": { - "format": "string" - } - }, - "404": { - "description": "Returned when resource is not found", - "schema": { - "format": "string" - } - }, - "409": { - "description": "Returned when operation on resource is conflicting with current value", - "schema": { - "format": "string" - } - }, - "429": { - "description": "Returned when operation has been rejected as it is happening too frequently", - "schema": { - "format": "string" - } - }, - "500": { - "description": "Returned when server encountered an error in processing API", - "schema": { - "format": "string" - } - }, - "503": { - "description": "Returned when service is unavailable temporarily", - "schema": { - "format": "string" - } - }, - "504": { - "description": "Returned when server timed out processing request", - "schema": { - "format": "string" - } - } - }, - "parameters": [ - { - "name": "namespace", - "description": "namespace\n\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", - "in": "path", - "required": true, - "type": "string", - "x-displayname": "Namespace" - }, - { - "name": "name", - "description": "name\n\nx-example: \"name\"\nThe name of the configuration object to be fetched", - "in": "path", - "required": true, - "type": "string", - "x-displayname": "Name" - }, - { - "name": "response_format", - "description": "The format in which the configuration object is to be fetched. This could be for example\n - in GetSpec form for the contents of object\n - in CreateRequest form to create a new similar object\n - to ReplaceRequest form to replace changeable values\n\nDefault format of returned resource\nResponse should be in CreateRequest format\nResponse should be in ReplaceRequest format\nResponse should be in format of GetSpecType\nResponse should have other objects referring to this object\nResponse should have deleted and disabled objects referrred by this object", - "in": "query", - "required": false, - "type": "string", - "enum": [ - "GET_RSP_FORMAT_DEFAULT", - "GET_RSP_FORMAT_FOR_CREATE", - "GET_RSP_FORMAT_FOR_REPLACE", - "GET_RSP_FORMAT_READ", - "GET_RSP_FORMAT_REFERRING_OBJECTS", - "GET_RSP_FORMAT_BROKEN_REFERENCES" - ], - "default": "GET_RSP_FORMAT_DEFAULT", - "x-displayname": "Broken Referred Objects" - } - ], - "tags": [ - "API" - ], - "externalDocs": { - "description": "Examples of this operation", - "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-api-get" - }, - "x-ves-proto-rpc": "ves.io.schema.registration.API.Get" - }, - "delete": { - "summary": "Delete Registration", - "description": "Delete the specified registration", - "operationId": "ves.io.schema.registration.API.Delete", - "responses": { - "200": { - "description": "A successful response.", - "schema": {} - }, - "401": { - "description": "Returned when operation is not authorized", - "schema": { - "format": "string" - } - }, - "403": { - "description": "Returned when there is no permission to access resource", - "schema": { - "format": "string" - } - }, - "404": { - "description": "Returned when resource is not found", - "schema": { - "format": "string" - } - }, - "409": { - "description": "Returned when operation on resource is conflicting with current value", - "schema": { - "format": "string" - } - }, - "429": { - "description": "Returned when operation has been rejected as it is happening too frequently", - "schema": { - "format": "string" - } - }, - "500": { - "description": "Returned when server encountered an error in processing API", - "schema": { - "format": "string" - } - }, - "503": { - "description": "Returned when service is unavailable temporarily", - "schema": { - "format": "string" - } - }, - "504": { - "description": "Returned when server timed out processing request", - "schema": { - "format": "string" - } - } - }, - "parameters": [ - { - "name": "namespace", - "description": "namespace\n\nx-example: \"ns1\"\nNamespace in which the configuration object is present", - "in": "path", - "required": true, - "type": "string", - "x-displayname": "Namespace" - }, - { - "name": "name", - "description": "name\n\nx-example: \"name\"\nName of the configuration object", - "in": "path", - "required": true, - "type": "string", - "x-displayname": "Name" - }, - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/registrationDeleteRequest" - } - } - ], - "tags": [ - "API" - ], - "externalDocs": { - "description": "Examples of this operation", - "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-api-delete" - }, - "x-ves-proto-rpc": "ves.io.schema.registration.API.Delete" - }, - "x-displayname": "Registration", - "x-ves-proto-service": "ves.io.schema.registration.API", - "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" - } - }, - "definitions": { - "ioschemaEmpty": { - "type": "object", - "description": "This can be used for messages where no values are needed", - "title": "Empty", - "x-displayname": "Empty", - "x-ves-proto-message": "ves.io.schema.Empty" - }, - "ioschemaObjectRefType": { - "type": "object", - "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", - "title": "ObjectRefType", - "x-displayname": "Object reference", - "x-ves-proto-message": "ves.io.schema.ObjectRefType", - "properties": { - "kind": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", - "title": "kind", - "x-displayname": "Kind", - "x-ves-example": "virtual_site" - }, - "name": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "contactus-route" - }, - "namespace": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" - }, - "tenant": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" - }, - "uid": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" - } - } - }, - "ioschemaStatusType": { - "type": "object", - "description": "Status is a return value for calls that don't return other objects.", - "title": "StatusType", - "x-displayname": "Status", - "x-ves-proto-message": "ves.io.schema.StatusType", - "properties": { - "code": { - "type": "integer", - "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", - "title": "code", - "format": "int32", - "x-displayname": "Code", - "x-ves-example": "0" + "ioschemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" }, "reason": { "type": "string", @@ -2251,21 +1059,6 @@ var APISwaggerJSON string = `{ } } }, - "protobufAny": { - "type": "object", - "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", - "properties": { - "type_url": { - "type": "string", - "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." - }, - "value": { - "type": "string", - "description": "Must be a valid serialized protocol buffer of the above specified type.", - "format": "byte" - } - } - }, "registrationCreateRequest": { "type": "object", "description": "This is the input message of the 'Create' RPC", @@ -2311,122 +1104,6 @@ var APISwaggerJSON string = `{ } } }, - "registrationDeleteRequest": { - "type": "object", - "description": "This is the input message of the 'Delete' RPC.", - "title": "DeleteRequest is used to delete a registration", - "x-displayname": "Delete Request", - "x-ves-proto-message": "ves.io.schema.registration.DeleteRequest", - "properties": { - "fail_if_referred": { - "type": "boolean", - "description": " Fail the delete operation if this object is being referred by other objects", - "title": "fail_if_referred", - "format": "boolean", - "x-displayname": "Fail-If-Referred" - }, - "name": { - "type": "string", - "description": " Name of the configuration object\n\nExample: - \"name\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "name" - }, - "namespace": { - "type": "string", - "description": " Namespace in which the configuration object is present\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" - } - } - }, - "registrationGetResponse": { - "type": "object", - "description": "This is the output message of the 'Get' RPC", - "title": "GetResponse is the shape of a read registration", - "x-displayname": "Get Response", - "x-ves-proto-message": "ves.io.schema.registration.GetResponse", - "properties": { - "create_form": { - "description": "Format used to create a new similar object", - "title": "create_form", - "$ref": "#/definitions/registrationCreateRequest", - "x-displayname": "CreateRequest Format" - }, - "deleted_referred_objects": { - "type": "array", - "description": "The set of deleted objects that are referred by this object", - "title": "deleted_referred_objects", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Deleted Referred Objects" - }, - "disabled_referred_objects": { - "type": "array", - "description": "The set of deleted objects that are referred by this object", - "title": "disabled_referred_objects", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Disabled Referred Objects" - }, - "metadata": { - "description": " Standard object's metadata", - "title": "metadata", - "$ref": "#/definitions/schemaObjectGetMetaType", - "x-displayname": "Metadata" - }, - "object": { - "title": "object", - "$ref": "#/definitions/registrationObject", - "x-displayname": "Object", - "x-ves-deprecated": "Replaced by 'spec" - }, - "referring_objects": { - "type": "array", - "description": "The set of objects that are referring to this object in their spec", - "title": "referring_objects", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Referring Objects" - }, - "replace_form": { - "description": "Format to replace changeable values in object", - "title": "replace_form", - "$ref": "#/definitions/registrationReplaceRequest", - "x-displayname": "ReplaceRequest Format" - }, - "spec": { - "description": " Specification of the desired behavior of the registration", - "title": "spec", - "$ref": "#/definitions/schemaregistrationGetSpecType", - "x-displayname": "Spec" - }, - "system_metadata": { - "description": " System generated object's metadata", - "title": "system metadata", - "$ref": "#/definitions/schemaSystemObjectGetMetaType", - "x-displayname": "System Metadata" - } - } - }, - "registrationGetResponseFormatCode": { - "type": "string", - "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", - "title": "GetResponseFormatCode", - "enum": [ - "GET_RSP_FORMAT_DEFAULT", - "GET_RSP_FORMAT_FOR_CREATE", - "GET_RSP_FORMAT_FOR_REPLACE", - "GET_RSP_FORMAT_READ", - "GET_RSP_FORMAT_REFERRING_OBJECTS", - "GET_RSP_FORMAT_BROKEN_REFERENCES" - ], - "default": "GET_RSP_FORMAT_DEFAULT" - }, "registrationInfra": { "type": "object", "description": "InfraMetadata stores information about instance infrastructure", @@ -2580,184 +1257,10 @@ var APISwaggerJSON string = `{ "description": " Allow optional different trust-store for proxy in HTTP CONNECT step\n by picking proxy ca certificate value.\n\nExample: - \"string:///LS0tLS1CRUdJTiBDRxxxx\"-", "title": "Proxy CA certificate URL", "x-displayname": "Proxy CA certificate URL", - "x-ves-example": "string:///LS0tLS1CRUdJTiBDRxxxx" - } - } - }, - "registrationListResponse": { - "type": "object", - "description": "This is the output message of 'List' RPC.", - "title": "ListResponse is the collection of registration", - "x-displayname": "List Response", - "x-ves-proto-message": "ves.io.schema.registration.ListResponse", - "properties": { - "errors": { - "type": "array", - "description": " Errors(if any) while listing items from collection", - "title": "errors", - "items": { - "$ref": "#/definitions/schemaErrorType" - }, - "x-displayname": "Errors" - }, - "items": { - "type": "array", - "description": " items represents the collection in response", - "title": "items", - "items": { - "$ref": "#/definitions/registrationListResponseItem" - }, - "x-displayname": "Items" - } - } - }, - "registrationListResponseItem": { - "type": "object", - "description": "By default a summary of registration is returned in 'List'. By setting\n'report_fields' in the ListRequest more details of each item can be got.", - "title": "ListResponseItem is an individual item in a collection of registration", - "x-displayname": "List Item", - "x-ves-proto-message": "ves.io.schema.registration.ListResponseItem", - "properties": { - "annotations": { - "type": "object", - "description": " The set of annotations present on this registration", - "title": "annotations", - "x-displayname": "Annotations" - }, - "description": { - "type": "string", - "description": " The description set for this registration", - "title": "description", - "x-displayname": "Description" - }, - "disabled": { - "type": "boolean", - "description": " A value of true indicates registration is administratively disabled", - "title": "disabled", - "format": "boolean", - "x-displayname": "Disabled" - }, - "get_spec": { - "description": " If ListRequest has any specified report_fields, it will appear in object", - "title": "get_spec", - "$ref": "#/definitions/schemaregistrationGetSpecType", - "x-displayname": "Get Specification" - }, - "labels": { - "type": "object", - "description": " The set of labels present on this registration", - "title": "labels", - "x-displayname": "Labels" - }, - "metadata": { - "description": " If list request has report_fields set then metadata will\n contain all the metadata associated with the object.", - "title": "metadata", - "$ref": "#/definitions/schemaObjectGetMetaType", - "x-displayname": "Metadata" - }, - "name": { - "type": "string", - "description": " The name of this registration\n\nExample: - \"name\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "name" - }, - "namespace": { - "type": "string", - "description": " The namespace this item belongs to\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" - }, - "object": { - "description": " If ListRequest has any specified report_fields, it will appear in object\n DEPRECATED by get_spec, metadata and system_metadata", - "title": "object", - "$ref": "#/definitions/registrationObject", - "x-displayname": "Object" - }, - "owner_view": { - "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", - "title": "owner_view", - "$ref": "#/definitions/schemaViewRefType", - "x-displayname": "Owner View" - }, - "system_metadata": { - "description": " If list request has report_fields set then system_metadata will\n contain all the system generated details of this object.", - "title": "system_metadata", - "$ref": "#/definitions/schemaSystemObjectGetMetaType", - "x-displayname": "System Metadata" - }, - "tenant": { - "type": "string", - "description": " The tenant this item belongs to\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" - }, - "uid": { - "type": "string", - "description": " The unique uid of this registration\n\nExample: - \"d27938ba-967e-40a7-9709-57b8627f9f75\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d27938ba-967e-40a7-9709-57b8627f9f75" - } - } - }, - "registrationObject": { - "type": "object", - "description": "Registration object stores node registration and information regarding the node", - "title": "Registration object", - "x-displayname": "Object", - "x-ves-displayorder": "1,2,3,4", - "x-ves-proto-message": "ves.io.schema.registration.Object", - "properties": { - "metadata": { - "description": " Standard object's metadata", - "title": "metadata", - "$ref": "#/definitions/schemaObjectMetaType", - "x-displayname": "Metadata" - }, - "spec": { - "description": " Specification of the desired behavior of the registration", - "title": "spec", - "$ref": "#/definitions/registrationSpecType", - "x-displayname": "Spec" - }, - "status": { - "description": " Most recently observed status of the registration", - "title": "status\nx-displayName: \"Status\"\nMost recently observed status of the registration", - "$ref": "#/definitions/schemaregistrationStatusType", - "x-displayname": "Status" - }, - "system_metadata": { - "description": " System generated object's metadata", - "title": "system_metadata", - "$ref": "#/definitions/schemaSystemObjectMetaType", - "x-displayname": "System Metadata" + "x-ves-example": "string:///LS0tLS1CRUdJTiBDRxxxx" } } }, - "registrationObjectState": { - "type": "string", - "description": "Defines states for registration object\n\nState isn't set\nObject was created (registration request was received and object created)\nRegistration was approved and waiting for configuration\nThis state can be set by user only if current state is NEW\nRegistration is approved and prepared for to connect\nIt can't be set manually.\nRegistration isn't valid anymore and it will be deleted in near future\nThis state can be set by user anytime.\nRegistration is failed (vpm reported or timeout)\nDEPRECATED. Registration is reported as finished (workload was deployed)\nUser action is required\nRegistration is online\nOperating system upgrade is in progress\nMaintenance is in progress", - "title": "ObjectState", - "enum": [ - "NOTSET", - "NEW", - "APPROVED", - "ADMITTED", - "RETIRED", - "FAILED", - "DONE", - "PENDING", - "ONLINE", - "UPGRADING", - "MAINTENANCE" - ], - "default": "NOTSET", - "x-displayname": "Object State", - "x-ves-proto-enum": "ves.io.schema.registration.ObjectState" - }, "registrationPassport": { "type": "object", "description": "Passport stores information about identification and node configuration provided by CE during registration. It can be manually updated by user during approval.", @@ -2930,67 +1433,6 @@ var APISwaggerJSON string = `{ "type": "object", "x-ves-proto-message": "ves.io.schema.registration.ReplaceResponse" }, - "registrationSpecType": { - "type": "object", - "description": "Shape of the registration specification", - "title": "Shape of the token specification", - "x-displayname": "Specification", - "x-ves-proto-message": "ves.io.schema.registration.SpecType", - "properties": { - "gc_spec": { - "title": "gc_spec", - "$ref": "#/definitions/schemaregistrationGlobalSpecType", - "x-displayname": "GC Spec" - } - } - }, - "schemaErrorCode": { - "type": "string", - "description": "Union of all possible error-codes from system\n\n - EOK: No error\n - EPERMS: Permissions error\n - EBADINPUT: Input is not correct\n - ENOTFOUND: Not found\n - EEXISTS: Already exists\n - EUNKNOWN: Unknown/catchall error\n - ESERIALIZE: Error in serializing/de-serializing\n - EINTERNAL: Server error\n - EPARTIAL: Partial error", - "title": "ErrorCode", - "enum": [ - "EOK", - "EPERMS", - "EBADINPUT", - "ENOTFOUND", - "EEXISTS", - "EUNKNOWN", - "ESERIALIZE", - "EINTERNAL", - "EPARTIAL" - ], - "default": "EOK", - "x-displayname": "Error Code", - "x-ves-proto-enum": "ves.io.schema.ErrorCode" - }, - "schemaErrorType": { - "type": "object", - "description": "Information about a error in API operation", - "title": "ErrorType", - "x-displayname": "Error Type", - "x-ves-proto-message": "ves.io.schema.ErrorType", - "properties": { - "code": { - "description": " A simple general code by category", - "title": "code", - "$ref": "#/definitions/schemaErrorCode", - "x-displayname": "Code" - }, - "error_obj": { - "description": " A structured error object for machine parsing", - "title": "error_obj", - "$ref": "#/definitions/protobufAny", - "x-displayname": "Error Object" - }, - "message": { - "type": "string", - "description": " A human readable string of the error\n\nExample: - \"value\"-", - "title": "message", - "x-displayname": "Message", - "x-ves-example": "value" - } - } - }, "schemaInitializerType": { "type": "object", "description": "Initializer is information about an initializer that has not yet completed.", @@ -3051,10 +1493,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3111,73 +1557,15 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" - }, - "disable": { - "type": "boolean", - "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", - "title": "disable", - "format": "boolean", - "x-displayname": "Disable", - "x-ves-example": "true" - }, - "labels": { - "type": "object", - "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", - "title": "labels", - "x-displayname": "Labels", - "x-ves-example": "value" - }, - "name": { - "type": "string", - "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "acmecorp-web", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "namespace": { - "type": "string", - "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "staging" - } - } - }, - "schemaObjectMetaType": { - "type": "object", - "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", - "title": "ObjectMetaType", - "x-displayname": "Metadata", - "x-ves-proto-message": "ves.io.schema.ObjectMetaType", - "properties": { - "annotations": { - "type": "object", - "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", - "title": "annotations", - "x-displayname": "Annotations", - "x-ves-example": "value", + "x-ves-example": "Virtual Host for acmecorp website", "x-ves-validation-rules": { - "ves.io.schema.rules.map.keys.string.max_len": "64", - "ves.io.schema.rules.map.keys.string.min_len": "1", - "ves.io.schema.rules.map.values.string.max_len": "1024", - "ves.io.schema.rules.map.values.string.min_len": "1" + "ves.io.schema.rules.string.max_bytes": "1200" } }, - "description": { - "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", - "title": "description", - "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" - }, "disable": { "type": "boolean", "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", @@ -3210,13 +1598,6 @@ var APISwaggerJSON string = `{ "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "staging" - }, - "uid": { - "type": "string", - "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" } } }, @@ -3242,10 +1623,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3280,19 +1665,6 @@ var APISwaggerJSON string = `{ } } }, - "schemaSiteToSiteTunnelType": { - "type": "string", - "description": "Tunnel encapsulation to be used between sites\n\nSite to site tunnel can operate in both ipsec and ssl\nipsec takes precedence over ssl\nSite to site tunnel is of type ipsec\nSite to site tunnel is of type ssl", - "title": "Site to site tunnel type", - "enum": [ - "SITE_TO_SITE_TUNNEL_IPSEC_OR_SSL", - "SITE_TO_SITE_TUNNEL_IPSEC", - "SITE_TO_SITE_TUNNEL_SSL" - ], - "default": "SITE_TO_SITE_TUNNEL_IPSEC_OR_SSL", - "x-displayname": "Tunnel type", - "x-ves-proto-enum": "ves.io.schema.SiteToSiteTunnelType" - }, "schemaSystemObjectGetMetaType": { "type": "object", "description": "SystemObjectGetMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", @@ -3388,149 +1760,6 @@ var APISwaggerJSON string = `{ } } }, - "schemaSystemObjectMetaType": { - "type": "object", - "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", - "title": "SystemObjectMetaType", - "x-displayname": "System Metadata", - "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", - "properties": { - "creation_timestamp": { - "type": "string", - "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", - "title": "creation_timestamp", - "format": "date-time", - "x-displayname": "Creation Timestamp" - }, - "creator_class": { - "type": "string", - "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", - "title": "creator_class", - "x-displayname": "Creator Class", - "x-ves-example": "value" - }, - "creator_cookie": { - "type": "string", - "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", - "title": "creator_cookie", - "x-displayname": "Creator Cookie", - "x-ves-example": "value" - }, - "creator_id": { - "type": "string", - "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", - "title": "creator_id", - "x-displayname": "Creator ID", - "x-ves-example": "value" - }, - "deletion_timestamp": { - "type": "string", - "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", - "title": "deletion_timestamp", - "format": "date-time", - "x-displayname": "Deletion Timestamp" - }, - "finalizers": { - "type": "array", - "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", - "title": "finalizers", - "items": { - "type": "string" - }, - "x-displayname": "Finalizers", - "x-ves-example": "value" - }, - "initializers": { - "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", - "title": "initializers", - "$ref": "#/definitions/schemaInitializersType", - "x-displayname": "Initializers" - }, - "labels": { - "type": "object", - "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", - "title": "labels", - "x-displayname": "Labels", - "x-ves-example": "'ves.io/soft-deleted': 'true'" - }, - "modification_timestamp": { - "type": "string", - "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", - "title": "modification_timestamp", - "format": "date-time", - "x-displayname": "Modification Timestamp" - }, - "namespace": { - "type": "array", - "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", - "title": "namespace", - "maxItems": 1, - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Namespace Reference", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "1" - } - }, - "object_index": { - "type": "integer", - "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", - "title": "object_index", - "format": "int64", - "x-displayname": "Object Index", - "x-ves-example": "0" - }, - "owner_view": { - "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", - "title": "owner_view", - "$ref": "#/definitions/schemaViewRefType", - "x-displayname": "Owner View" - }, - "sre_disable": { - "type": "boolean", - "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", - "title": "sre_disable", - "format": "boolean", - "x-displayname": "SRE Disable", - "x-ves-example": "true" - }, - "tenant": { - "type": "string", - "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" - }, - "trace_info": { - "type": "string", - "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", - "title": "trace_info", - "x-displayname": "Trace Info", - "x-ves-example": "value" - }, - "uid": { - "type": "string", - "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" - }, - "vtrp_id": { - "type": "string", - "description": " Indicate origin of this object.", - "title": "vtrp_id", - "x-displayname": "VTRP ID" - }, - "vtrp_stale": { - "type": "boolean", - "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", - "title": "vtrp_stale", - "format": "boolean", - "x-displayname": "VTRP Stale" - } - } - }, "schemaViewRefType": { "type": "object", "description": "ViewRefType represents a reference to a view", @@ -3644,73 +1873,6 @@ var APISwaggerJSON string = `{ } } }, - "schemaregistrationGlobalSpecType": { - "type": "object", - "title": "Shape of the registration specification", - "x-displayname": "Global Specification", - "x-ves-proto-message": "ves.io.schema.registration.GlobalSpecType", - "properties": { - "infra": { - "description": " Infrastructure metadata section\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Infra", - "$ref": "#/definitions/registrationInfra", - "x-displayname": "Infrastructure", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "passport": { - "description": " Passport is storing identification for instance as site name, latitude, longitude, etc.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Passport", - "$ref": "#/definitions/registrationPassport", - "x-displayname": "Passport", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "role": { - "type": "array", - "description": " Role of registered node. Used by system to determine what roles should be enforced.\n\nExample: - \"k8s-master, etcd\"-", - "title": "Instance role", - "items": { - "type": "string" - }, - "x-displayname": "Role", - "x-ves-example": "k8s-master, etcd" - }, - "site": { - "type": "array", - "description": " Site for this registration, assigned after registration is assigned to site.", - "title": "Site", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Site" - }, - "token": { - "type": "string", - "description": " Token is used for machine and tenant identification\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Token", - "x-displayname": "Token", - "x-ves-example": "value", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "tunnel_type": { - "description": " Tunnel type specifies the type of tunnel to be used for traffic between the sites.\n\nValidation Rules:\n ves.io.schema.rules.enum.in: [0,1,2]\n", - "title": "Site to site tunnel type", - "$ref": "#/definitions/schemaSiteToSiteTunnelType", - "x-displayname": "Site to Site Tunnel Type", - "x-ves-validation-rules": { - "ves.io.schema.rules.enum.in": "[0,1,2]" - } - } - } - }, "schemaregistrationReplaceSpecType": { "type": "object", "description": "NO fields are allowed to be replaced", @@ -3718,28 +1880,6 @@ var APISwaggerJSON string = `{ "x-displayname": "Replace Registration", "x-ves-proto-message": "ves.io.schema.registration.ReplaceSpecType" }, - "schemaregistrationStatusType": { - "type": "object", - "description": "Most recent observer status of object", - "title": "Shape of the registration status", - "x-displayname": "Status Type", - "x-ves-displayorder": "1,2", - "x-ves-proto-message": "ves.io.schema.registration.StatusType", - "properties": { - "current_state": { - "description": " It defines current state of registration and if (and how) it should be handled.", - "title": "Current state of registration", - "$ref": "#/definitions/registrationObjectState", - "x-displayname": "Registration state" - }, - "object_status": { - "description": " Shape of the registration status", - "title": "object status", - "$ref": "#/definitions/ioschemaStatusType", - "x-displayname": "Object Status" - } - } - }, "siteBios": { "type": "object", "description": "BIOS information.", diff --git a/pbgo/extschema/schema/registration/public_crudapi.vesmsg.go b/pbgo/extschema/schema/registration/public_crudapi.vesmsg.go index ba61396a9..0cf57c920 100644 --- a/pbgo/extschema/schema/registration/public_crudapi.vesmsg.go +++ b/pbgo/extschema/schema/registration/public_crudapi.vesmsg.go @@ -217,829 +217,6 @@ func CreateResponseValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *DeleteRequest) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *DeleteRequest) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *DeleteRequest) DeepCopy() *DeleteRequest { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &DeleteRequest{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *DeleteRequest) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *DeleteRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return DeleteRequestValidator().Validate(ctx, m, opts...) -} - -type ValidateDeleteRequest struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateDeleteRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*DeleteRequest) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *DeleteRequest got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["fail_if_referred"]; exists { - - vOpts := append(opts, db.WithValidateField("fail_if_referred")) - if err := fv(ctx, m.GetFailIfReferred(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["name"]; exists { - - vOpts := append(opts, db.WithValidateField("name")) - if err := fv(ctx, m.GetName(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["namespace"]; exists { - - vOpts := append(opts, db.WithValidateField("namespace")) - if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultDeleteRequestValidator = func() *ValidateDeleteRequest { - v := &ValidateDeleteRequest{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func DeleteRequestValidator() db.Validator { - return DefaultDeleteRequestValidator -} - -// augmented methods on protoc/std generated struct - -func (m *GetRequest) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *GetRequest) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *GetRequest) DeepCopy() *GetRequest { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &GetRequest{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *GetRequest) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *GetRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GetRequestValidator().Validate(ctx, m, opts...) -} - -type ValidateGetRequest struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateGetRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GetRequest) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *GetRequest got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["name"]; exists { - - vOpts := append(opts, db.WithValidateField("name")) - if err := fv(ctx, m.GetName(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["namespace"]; exists { - - vOpts := append(opts, db.WithValidateField("namespace")) - if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["response_format"]; exists { - - vOpts := append(opts, db.WithValidateField("response_format")) - if err := fv(ctx, m.GetResponseFormat(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultGetRequestValidator = func() *ValidateGetRequest { - v := &ValidateGetRequest{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func GetRequestValidator() db.Validator { - return DefaultGetRequestValidator -} - -// augmented methods on protoc/std generated struct - -func (m *GetResponse) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *GetResponse) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *GetResponse) DeepCopy() *GetResponse { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &GetResponse{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *GetResponse) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *GetResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GetResponseValidator().Validate(ctx, m, opts...) -} - -func (m *GetResponse) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return nil, nil - -} - -type ValidateGetResponse struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateGetResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GetResponse) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *GetResponse got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["create_form"]; exists { - - vOpts := append(opts, db.WithValidateField("create_form")) - if err := fv(ctx, m.GetCreateForm(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["deleted_referred_objects"]; exists { - - vOpts := append(opts, db.WithValidateField("deleted_referred_objects")) - for idx, item := range m.GetDeletedReferredObjects() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["disabled_referred_objects"]; exists { - - vOpts := append(opts, db.WithValidateField("disabled_referred_objects")) - for idx, item := range m.GetDisabledReferredObjects() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["object"]; exists { - - vOpts := append(opts, db.WithValidateField("object")) - if err := fv(ctx, m.GetObject(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["referring_objects"]; exists { - - vOpts := append(opts, db.WithValidateField("referring_objects")) - for idx, item := range m.GetReferringObjects() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["replace_form"]; exists { - - vOpts := append(opts, db.WithValidateField("replace_form")) - if err := fv(ctx, m.GetReplaceForm(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["resource_version"]; exists { - - vOpts := append(opts, db.WithValidateField("resource_version")) - if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["spec"]; exists { - - vOpts := append(opts, db.WithValidateField("spec")) - if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["system_metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("system_metadata")) - if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultGetResponseValidator = func() *ValidateGetResponse { - v := &ValidateGetResponse{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["object"] = ObjectValidator().Validate - - v.FldValidators["create_form"] = CreateRequestValidator().Validate - - v.FldValidators["replace_form"] = ReplaceRequestValidator().Validate - - v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate - - v.FldValidators["spec"] = GetSpecTypeValidator().Validate - - return v -}() - -func GetResponseValidator() db.Validator { - return DefaultGetResponseValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ListRequest) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ListRequest) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ListRequest) DeepCopy() *ListRequest { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ListRequest{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ListRequest) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ListRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ListRequestValidator().Validate(ctx, m, opts...) -} - -type ValidateListRequest struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateListRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ListRequest) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ListRequest got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["label_filter"]; exists { - - vOpts := append(opts, db.WithValidateField("label_filter")) - if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["namespace"]; exists { - - vOpts := append(opts, db.WithValidateField("namespace")) - if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["report_fields"]; exists { - - vOpts := append(opts, db.WithValidateField("report_fields")) - for idx, item := range m.GetReportFields() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["report_status_fields"]; exists { - - vOpts := append(opts, db.WithValidateField("report_status_fields")) - for idx, item := range m.GetReportStatusFields() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultListRequestValidator = func() *ValidateListRequest { - v := &ValidateListRequest{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func ListRequestValidator() db.Validator { - return DefaultListRequestValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ListResponse) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ListResponse) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ListResponse) DeepCopy() *ListResponse { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ListResponse{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ListResponse) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ListResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ListResponseValidator().Validate(ctx, m, opts...) -} - -func (m *ListResponse) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetItemsDRefInfo() - -} - -// GetDRefInfo for the field's type -func (m *ListResponse) GetItemsDRefInfo() ([]db.DRefInfo, error) { - if m.GetItems() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetItems() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -type ValidateListResponse struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateListResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ListResponse) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ListResponse got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["errors"]; exists { - - vOpts := append(opts, db.WithValidateField("errors")) - for idx, item := range m.GetErrors() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["items"]; exists { - - vOpts := append(opts, db.WithValidateField("items")) - for idx, item := range m.GetItems() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultListResponseValidator = func() *ValidateListResponse { - v := &ValidateListResponse{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["items"] = ListResponseItemValidator().Validate - - return v -}() - -func ListResponseValidator() db.Validator { - return DefaultListResponseValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ListResponseItem) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ListResponseItem) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ListResponseItem) DeepCopy() *ListResponseItem { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ListResponseItem{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ListResponseItem) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ListResponseItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ListResponseItemValidator().Validate(ctx, m, opts...) -} - -func (m *ListResponseItem) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return nil, nil - -} - -type ValidateListResponseItem struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateListResponseItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ListResponseItem) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ListResponseItem got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["annotations"]; exists { - - vOpts := append(opts, db.WithValidateField("annotations")) - for key, value := range m.GetAnnotations() { - vOpts := append(vOpts, db.WithValidateMapKey(key)) - if err := fv(ctx, value, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["description"]; exists { - - vOpts := append(opts, db.WithValidateField("description")) - if err := fv(ctx, m.GetDescription(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["disabled"]; exists { - - vOpts := append(opts, db.WithValidateField("disabled")) - if err := fv(ctx, m.GetDisabled(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["get_spec"]; exists { - - vOpts := append(opts, db.WithValidateField("get_spec")) - if err := fv(ctx, m.GetGetSpec(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["labels"]; exists { - - vOpts := append(opts, db.WithValidateField("labels")) - for key, value := range m.GetLabels() { - vOpts := append(vOpts, db.WithValidateMapKey(key)) - if err := fv(ctx, value, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["name"]; exists { - - vOpts := append(opts, db.WithValidateField("name")) - if err := fv(ctx, m.GetName(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["namespace"]; exists { - - vOpts := append(opts, db.WithValidateField("namespace")) - if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["object"]; exists { - - vOpts := append(opts, db.WithValidateField("object")) - if err := fv(ctx, m.GetObject(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["owner_view"]; exists { - - vOpts := append(opts, db.WithValidateField("owner_view")) - if err := fv(ctx, m.GetOwnerView(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["system_metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("system_metadata")) - if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["tenant"]; exists { - - vOpts := append(opts, db.WithValidateField("tenant")) - if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["uid"]; exists { - - vOpts := append(opts, db.WithValidateField("uid")) - if err := fv(ctx, m.GetUid(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultListResponseItemValidator = func() *ValidateListResponseItem { - v := &ValidateListResponseItem{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["object"] = ObjectValidator().Validate - - v.FldValidators["get_spec"] = GetSpecTypeValidator().Validate - - v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate - - return v -}() - -func ListResponseItemValidator() db.Validator { - return DefaultListResponseItemValidator -} - -// augmented methods on protoc/std generated struct - func (m *ReplaceRequest) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -1380,101 +557,6 @@ func (m *CreateResponse) ToObjectWithoutDeepCopy(e db.Entry) { m.toObject(e, false) } -func (m *GetResponse) fromObject(e db.Entry, withDeepCopy bool) { - f := e.(*DBObject) - if withDeepCopy { - f = e.DeepCopy().(*DBObject) - } - _ = f - - if m.Metadata == nil { - m.Metadata = &ves_io_schema.ObjectGetMetaType{} - } - m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) - - if m.Spec == nil { - m.Spec = &GetSpecType{} - } - m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) - - if m.SystemMetadata == nil { - m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} - } - m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) - -} - -func (m *GetResponse) FromObject(e db.Entry) { - m.fromObject(e, true) -} - -func (m *GetResponse) FromObjectWithoutDeepCopy(e db.Entry) { - m.fromObject(e, false) -} - -func (m *GetResponse) toObject(e db.Entry, withDeepCopy bool) { - m1 := m - if withDeepCopy { - m1 = m.DeepCopy() - } - _ = m1 - f := e.(*DBObject) - _ = f - - if m1.Metadata != nil { - if f.Metadata == nil { - f.Metadata = &ves_io_schema.ObjectMetaType{} - } - } else if f.Metadata != nil { - f.Metadata = nil - } - - if m1.Metadata != nil { - m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) - } - - if m1.Spec != nil { - if f.Spec == nil { - f.Spec = &SpecType{} - } - } else if f.Spec != nil { - f.Spec = nil - } - - if m1.Spec != nil { - if f.Spec.GcSpec == nil { - f.Spec.GcSpec = &GlobalSpecType{} - } - } else if f.Spec != nil { - f.Spec.GcSpec = nil - } - - if m1.Spec != nil { - m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) - } - - if m1.SystemMetadata != nil { - if f.SystemMetadata == nil { - f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} - } - } else if f.SystemMetadata != nil { - f.SystemMetadata = nil - } - - if m1.SystemMetadata != nil { - m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) - } - -} - -func (m *GetResponse) ToObject(e db.Entry) { - m.toObject(e, true) -} - -func (m *GetResponse) ToObjectWithoutDeepCopy(e db.Entry) { - m.toObject(e, false) -} - func (m *ReplaceRequest) fromObject(e db.Entry, withDeepCopy bool) { f := e.(*DBObject) if withDeepCopy { diff --git a/pbgo/extschema/schema/registration/public_customapi.pb.go b/pbgo/extschema/schema/registration/public_customapi.pb.go index f38d63f85..adb34002d 100644 --- a/pbgo/extschema/schema/registration/public_customapi.pb.go +++ b/pbgo/extschema/schema/registration/public_customapi.pb.go @@ -18,6 +18,7 @@ import ( _ "github.com/gogo/protobuf/gogoproto" proto "github.com/gogo/protobuf/proto" github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" golang_proto "github.com/golang/protobuf/proto" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" @@ -28,6 +29,7 @@ import ( math "math" math_bits "math/bits" reflect "reflect" + strconv "strconv" strings "strings" ) @@ -43,104 +45,95 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package -// ListBySiteReq +// GetResponseFormatCode // -// x-displayName: "List Registrations by Site" -// Request for list registrations by site -type ListBySiteReq struct { - // Namespace - // - // x-displayName: "Namespace" - // x-required - // x-example: "system" - // Registration namespace, only "system" namespaces is accepted - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // SiteName - // - // x-displayName: "Site name" - // x-required - // x-example: "ce02" - // Site name to be used for registration filtering - SiteName string `protobuf:"bytes,2,opt,name=site_name,json=siteName,proto3" json:"site_name,omitempty"` -} +// x-displayName: "Get Response Format" +// This is the various forms that can be requested to be sent in the GetResponse +type GetResponseFormatCode int32 -func (m *ListBySiteReq) Reset() { *m = ListBySiteReq{} } -func (*ListBySiteReq) ProtoMessage() {} -func (*ListBySiteReq) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{0} -} -func (m *ListBySiteReq) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ListBySiteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ListBySiteReq.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *ListBySiteReq) XXX_Merge(src proto.Message) { - xxx_messageInfo_ListBySiteReq.Merge(m, src) -} -func (m *ListBySiteReq) XXX_Size() int { - return m.Size() -} -func (m *ListBySiteReq) XXX_DiscardUnknown() { - xxx_messageInfo_ListBySiteReq.DiscardUnknown(m) -} +const ( + // x-displayName: "Default Format" + // Default format of returned resource + GET_RSP_FORMAT_DEFAULT GetResponseFormatCode = 0 + // x-displayName: "Create request Format" + // Response should be in CreateRequest format + GET_RSP_FORMAT_FOR_CREATE GetResponseFormatCode = 1 + // x-displayName: "Replace request format" + // Response should be in ReplaceRequest format + GET_RSP_FORMAT_FOR_REPLACE GetResponseFormatCode = 2 + // x-displayName: "GetSpecType format" + // Response should be in format of GetSpecType + GET_RSP_FORMAT_READ GetResponseFormatCode = 4 + // x-displayName: "Referring Objects" + // Response should have other objects referring to this object + GET_RSP_FORMAT_REFERRING_OBJECTS GetResponseFormatCode = 5 + // x-displayName: "Broken Referred Objects" + // Response should have deleted and disabled objects referrred by this object + GET_RSP_FORMAT_BROKEN_REFERENCES GetResponseFormatCode = 6 +) -var xxx_messageInfo_ListBySiteReq proto.InternalMessageInfo +var GetResponseFormatCode_name = map[int32]string{ + 0: "GET_RSP_FORMAT_DEFAULT", + 1: "GET_RSP_FORMAT_FOR_CREATE", + 2: "GET_RSP_FORMAT_FOR_REPLACE", + 4: "GET_RSP_FORMAT_READ", + 5: "GET_RSP_FORMAT_REFERRING_OBJECTS", + 6: "GET_RSP_FORMAT_BROKEN_REFERENCES", +} -func (m *ListBySiteReq) GetNamespace() string { - if m != nil { - return m.Namespace - } - return "" +var GetResponseFormatCode_value = map[string]int32{ + "GET_RSP_FORMAT_DEFAULT": 0, + "GET_RSP_FORMAT_FOR_CREATE": 1, + "GET_RSP_FORMAT_FOR_REPLACE": 2, + "GET_RSP_FORMAT_READ": 4, + "GET_RSP_FORMAT_REFERRING_OBJECTS": 5, + "GET_RSP_FORMAT_BROKEN_REFERENCES": 6, } -func (m *ListBySiteReq) GetSiteName() string { - if m != nil { - return m.SiteName - } - return "" +func (GetResponseFormatCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{0} } -// ListStateReq +// GetRequest is used to get different forms of a registration // -// x-displayName: "List State Request" -// Request for list registrations -type ListStateReq struct { - // Namespace +// x-displayName: "Get Request" +// This is the input message of the 'Get' RPC. Different forms of a resource +// for e.g. a ReplaceRequest form (for editing), a CreateRequest form (for +// creating new instance of registration) etc. can be fetched +type GetRequest struct { + // namespace // // x-displayName: "Namespace" - // x-required - // x-example: "system" - // Registration namespace, only "system" namespaces is accepted + // x-example: "ns1" + // The namespace in which the configuration object is present Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // ObjectState + // name // - // x-displayName: "Object State" - // x-required - // State to get list of registrations (NEW, APPROVED, ADMITTED or RETIRED) - State ObjectState `protobuf:"varint,2,opt,name=state,proto3,enum=ves.io.schema.registration.ObjectState" json:"state,omitempty"` + // x-displayName: "Name" + // x-example: "name" + // The name of the configuration object to be fetched + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // response_format + // + // x-displayName: "Response Format" + // The format in which the configuration object is to be fetched. This could be for example + // - in GetSpec form for the contents of object + // - in CreateRequest form to create a new similar object + // - to ReplaceRequest form to replace changeable values + ResponseFormat GetResponseFormatCode `protobuf:"varint,3,opt,name=response_format,json=responseFormat,proto3,enum=ves.io.schema.registration.GetResponseFormatCode" json:"response_format,omitempty"` } -func (m *ListStateReq) Reset() { *m = ListStateReq{} } -func (*ListStateReq) ProtoMessage() {} -func (*ListStateReq) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{1} +func (m *GetRequest) Reset() { *m = GetRequest{} } +func (*GetRequest) ProtoMessage() {} +func (*GetRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{0} } -func (m *ListStateReq) XXX_Unmarshal(b []byte) error { +func (m *GetRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ListStateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ListStateReq.Marshal(b, m, deterministic) + return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -150,103 +143,107 @@ func (m *ListStateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *ListStateReq) XXX_Merge(src proto.Message) { - xxx_messageInfo_ListStateReq.Merge(m, src) +func (m *GetRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetRequest.Merge(m, src) } -func (m *ListStateReq) XXX_Size() int { +func (m *GetRequest) XXX_Size() int { return m.Size() } -func (m *ListStateReq) XXX_DiscardUnknown() { - xxx_messageInfo_ListStateReq.DiscardUnknown(m) +func (m *GetRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetRequest.DiscardUnknown(m) } -var xxx_messageInfo_ListStateReq proto.InternalMessageInfo +var xxx_messageInfo_GetRequest proto.InternalMessageInfo -func (m *ListStateReq) GetNamespace() string { +func (m *GetRequest) GetNamespace() string { if m != nil { return m.Namespace } return "" } -func (m *ListStateReq) GetState() ObjectState { +func (m *GetRequest) GetName() string { if m != nil { - return m.State + return m.Name } - return NOTSET + return "" } -// Approval request +func (m *GetRequest) GetResponseFormat() GetResponseFormatCode { + if m != nil { + return m.ResponseFormat + } + return GET_RSP_FORMAT_DEFAULT +} + +// GetResponse is the shape of a read registration // -// x-displayName: "Approval" -// Request for admission approval -type ApprovalReq struct { - // Namespace +// x-displayName: "Get Response" +// This is the output message of the 'Get' RPC +type GetResponse struct { + // object // - // x-displayName: "Namespace" - // x-required - // x-example: "system" - // Registration namespace, only "system" namespaces is accepted - Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // Name + // x-displayName: "Object" + Object *Object `protobuf:"bytes,1,opt,name=object,proto3" json:"object,omitempty"` + // create_form // - // x-displayName: "Name" - // x-required - // x-example: "r-e9030963-639e-41cd-aba6-261504f4a6be" - // Registration name (= "r-" + uid) to approve. Registration name is taken from listing pending registrations. - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - // Target registration state + // x-displayName: "CreateRequest Format" + // Format used to create a new similar object + CreateForm *CreateRequest `protobuf:"bytes,2,opt,name=create_form,json=createForm,proto3" json:"create_form,omitempty"` + // replace_form // - // x-displayName: "Target state" - // x-required - // State to approve (APPROVED or RETIRED) - State ObjectState `protobuf:"varint,3,opt,name=state,proto3,enum=ves.io.schema.registration.ObjectState" json:"state,omitempty"` - // Passport + // x-displayName: "ReplaceRequest Format" + // Format to replace changeable values in object + ReplaceForm *ReplaceRequest `protobuf:"bytes,3,opt,name=replace_form,json=replaceForm,proto3" json:"replace_form,omitempty"` + // resource_version // - // x-displayName: "Passport" - // Passport to be changed in registration, must be valid and always provided - Passport *Passport `protobuf:"bytes,4,opt,name=passport,proto3" json:"passport,omitempty"` - // Labels + // x-displayName: "Resource Version" + // x-example: "42" + // Version of the object + ResourceVersion string `protobuf:"bytes,4,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // metadata // - // Optional. - // x-displayName: "Labels" - // x-example: "key:value" - // Labels to set (add if missing, overwrite if exists) - Labels map[string]string `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Annotations + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata // - // Optional. - // x-displayName: "Annotations" - // x-example: "key:value" - // Annotations to set (add if missing, overwrite if exists) - Annotations map[string]string `protobuf:"bytes,6,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Connected Region + // x-displayName: "System Metadata" + // System generated attributes of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,7,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec // - // x-displayName: "Connected Region" - // x-example: "value" - // Optional. - // closest REs to which to connect in selected region. If there is more than one RE with the label - // then select 2 of them. Otherwise default "geo-ip" database is consulted to find closest RE(s) to - // public ip with which node registration request was received. - ConnectedRegion string `protobuf:"bytes,7,opt,name=connected_region,json=connectedRegion,proto3" json:"connected_region,omitempty"` - // Site to site tunnel type + // x-displayName: "Spec" + // A specification of the configuration object read + Spec *GetSpecType `protobuf:"bytes,6,opt,name=spec,proto3" json:"spec,omitempty"` + // referring_objects // - // x-displayName: "Site to Site Tunnel Type" - // Tunnel type specifies the type of tunnel to be used for traffic between the sites. - TunnelType schema.SiteToSiteTunnelType `protobuf:"varint,8,opt,name=tunnel_type,json=tunnelType,proto3,enum=ves.io.schema.SiteToSiteTunnelType" json:"tunnel_type,omitempty"` + // x-displayName: "Referring Objects" + // The set of objects that are referring to this object in their spec + ReferringObjects []*schema.ObjectRefType `protobuf:"bytes,8,rep,name=referring_objects,json=referringObjects,proto3" json:"referring_objects,omitempty"` + // deleted_referred_objects + // + // x-displayName: "Deleted Referred Objects" + // The set of deleted objects that are referred by this object + DeletedReferredObjects []*schema.ObjectRefType `protobuf:"bytes,9,rep,name=deleted_referred_objects,json=deletedReferredObjects,proto3" json:"deleted_referred_objects,omitempty"` + // disabled_referred_objects + // + // x-displayName: "Disabled Referred Objects" + // The set of deleted objects that are referred by this object + DisabledReferredObjects []*schema.ObjectRefType `protobuf:"bytes,10,rep,name=disabled_referred_objects,json=disabledReferredObjects,proto3" json:"disabled_referred_objects,omitempty"` } -func (m *ApprovalReq) Reset() { *m = ApprovalReq{} } -func (*ApprovalReq) ProtoMessage() {} -func (*ApprovalReq) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{2} +func (m *GetResponse) Reset() { *m = GetResponse{} } +func (*GetResponse) ProtoMessage() {} +func (*GetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{1} } -func (m *ApprovalReq) XXX_Unmarshal(b []byte) error { +func (m *GetResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ApprovalReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ApprovalReq.Marshal(b, m, deterministic) + return xxx_messageInfo_GetResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -256,113 +253,131 @@ func (m *ApprovalReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *ApprovalReq) XXX_Merge(src proto.Message) { - xxx_messageInfo_ApprovalReq.Merge(m, src) +func (m *GetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetResponse.Merge(m, src) } -func (m *ApprovalReq) XXX_Size() int { +func (m *GetResponse) XXX_Size() int { return m.Size() } -func (m *ApprovalReq) XXX_DiscardUnknown() { - xxx_messageInfo_ApprovalReq.DiscardUnknown(m) +func (m *GetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetResponse.DiscardUnknown(m) } -var xxx_messageInfo_ApprovalReq proto.InternalMessageInfo +var xxx_messageInfo_GetResponse proto.InternalMessageInfo -func (m *ApprovalReq) GetNamespace() string { +func (m *GetResponse) GetObject() *Object { if m != nil { - return m.Namespace + return m.Object } - return "" + return nil } -func (m *ApprovalReq) GetName() string { +func (m *GetResponse) GetCreateForm() *CreateRequest { if m != nil { - return m.Name + return m.CreateForm + } + return nil +} + +func (m *GetResponse) GetReplaceForm() *ReplaceRequest { + if m != nil { + return m.ReplaceForm + } + return nil +} + +func (m *GetResponse) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion } return "" } -func (m *ApprovalReq) GetState() ObjectState { +func (m *GetResponse) GetMetadata() *schema.ObjectGetMetaType { if m != nil { - return m.State + return m.Metadata } - return NOTSET + return nil } -func (m *ApprovalReq) GetPassport() *Passport { +func (m *GetResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { if m != nil { - return m.Passport + return m.SystemMetadata } return nil } -func (m *ApprovalReq) GetLabels() map[string]string { +func (m *GetResponse) GetSpec() *GetSpecType { if m != nil { - return m.Labels + return m.Spec } return nil } -func (m *ApprovalReq) GetAnnotations() map[string]string { +func (m *GetResponse) GetReferringObjects() []*schema.ObjectRefType { if m != nil { - return m.Annotations + return m.ReferringObjects } return nil } -func (m *ApprovalReq) GetConnectedRegion() string { +func (m *GetResponse) GetDeletedReferredObjects() []*schema.ObjectRefType { if m != nil { - return m.ConnectedRegion + return m.DeletedReferredObjects } - return "" + return nil } -func (m *ApprovalReq) GetTunnelType() schema.SiteToSiteTunnelType { +func (m *GetResponse) GetDisabledReferredObjects() []*schema.ObjectRefType { if m != nil { - return m.TunnelType + return m.DisabledReferredObjects } - return schema.SITE_TO_SITE_TUNNEL_IPSEC_OR_SSL + return nil } -// Configuration request +// ListRequest is used to get a collection of registration // -// x-displayName: "Configuration Request" -// Request to get configuration -type ConfigReq struct { - // Namespace +// x-displayName: "List Request" +// This is the input message of the 'List' RPC. Fields can be used to control +// scope and filtering of collection. +type ListRequest struct { + // namespace // // x-displayName: "Namespace" - // x-required - // x-example: "system" - // Registration namespace + // x-example: "ns1" + // Namespace to scope the listing of registration Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` - // Name + // label_filter // - // x-displayName: "Name" - // x-required - // x-example: "r-e9030963-639e-41cd-aba6-261504f4a6be" - // Registration name - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - // Token + // x-displayName: "Label Filter" + // x-example: "env in (staging, testing), tier in (web, db)" + // A LabelSelectorType expression that every item in list response will satisfy + LabelFilter string `protobuf:"bytes,2,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // report_fields // - // x-displayName: "Token" - // x-required - // x-example: "835af393-3056-46af-a9e4-57613fbe0339" - // Token - verify node identity - Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` + // x-displayName: "Report Fields" + // x-example: "" + // Extra fields to return along with summary fields + ReportFields []string `protobuf:"bytes,3,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // report_status_fields + // + // x-displayName: "Report Status Fields" + // x-example: "" + // Extra status fields to return along with summary fields + ReportStatusFields []string `protobuf:"bytes,4,rep,name=report_status_fields,json=reportStatusFields,proto3" json:"report_status_fields,omitempty"` } -func (m *ConfigReq) Reset() { *m = ConfigReq{} } -func (*ConfigReq) ProtoMessage() {} -func (*ConfigReq) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{3} +func (m *ListRequest) Reset() { *m = ListRequest{} } +func (*ListRequest) ProtoMessage() {} +func (*ListRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{2} } -func (m *ConfigReq) XXX_Unmarshal(b []byte) error { +func (m *ListRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ConfigReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ConfigReq.Marshal(b, m, deterministic) + return xxx_messageInfo_ListRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -372,61 +387,139 @@ func (m *ConfigReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *ConfigReq) XXX_Merge(src proto.Message) { - xxx_messageInfo_ConfigReq.Merge(m, src) +func (m *ListRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListRequest.Merge(m, src) } -func (m *ConfigReq) XXX_Size() int { +func (m *ListRequest) XXX_Size() int { return m.Size() } -func (m *ConfigReq) XXX_DiscardUnknown() { - xxx_messageInfo_ConfigReq.DiscardUnknown(m) +func (m *ListRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ListRequest.DiscardUnknown(m) } -var xxx_messageInfo_ConfigReq proto.InternalMessageInfo +var xxx_messageInfo_ListRequest proto.InternalMessageInfo -func (m *ConfigReq) GetNamespace() string { +func (m *ListRequest) GetNamespace() string { if m != nil { return m.Namespace } return "" } -func (m *ConfigReq) GetName() string { +func (m *ListRequest) GetLabelFilter() string { if m != nil { - return m.Name + return m.LabelFilter } return "" } -func (m *ConfigReq) GetToken() string { +func (m *ListRequest) GetReportFields() []string { if m != nil { - return m.Token + return m.ReportFields } - return "" + return nil } -// Registration change +func (m *ListRequest) GetReportStatusFields() []string { + if m != nil { + return m.ReportStatusFields + } + return nil +} + +// ListResponseItem is an individual item in a collection of registration // -// x-displayName: "Registration Change" -// Generic response when object is changed, registration can be changed only via custom API. -type ObjectChangeResp struct { - // Registration object +// x-displayName: "List Item" +// By default a summary of registration is returned in 'List'. By setting +// 'report_fields' in the ListRequest more details of each item can be got. +type ListResponseItem struct { + // tenant + // + // x-displayName: "Tenant" + // x-example: "acmecorp" + // The tenant this item belongs to + Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace this item belongs to + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of this registration + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // uid + // + // x-displayName: "UID" + // x-example: "d27938ba-967e-40a7-9709-57b8627f9f75" + // The unique uid of this registration + Uid string `protobuf:"bytes,3,opt,name=uid,proto3" json:"uid,omitempty"` + // description + // + // x-displayName: "Description" + // The description set for this registration + Description string `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"` + // disabled + // + // x-displayName: "Disabled" + // A value of true indicates registration is administratively disabled + Disabled bool `protobuf:"varint,12,opt,name=disabled,proto3" json:"disabled,omitempty"` + // labels + // + // x-displayName: "Labels" + // The set of labels present on this registration + Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // annotations + // + // x-displayName: "Annotations" + // The set of annotations present on this registration + Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // owner_view + // + // x-displayName: "Owner View" + // Reference to the view object that owns this object. + // If there is no view owner, this field will be nil. + // If not nil, this object can only be edited/deleted through the view + OwnerView *schema.ViewRefType `protobuf:"bytes,9,opt,name=owner_view,json=ownerView,proto3" json:"owner_view,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // If list request has report_fields set then metadata will + // contain all the metadata associated with the object. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,13,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // If list request has report_fields set then system_metadata will + // contain all the system generated details of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,14,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // object // // x-displayName: "Object" - Obj *Object `protobuf:"bytes,1,opt,name=obj,proto3" json:"obj,omitempty"` + // If ListRequest has any specified report_fields, it will appear in object + // DEPRECATED by get_spec, metadata and system_metadata + Object *Object `protobuf:"bytes,5,opt,name=object,proto3" json:"object,omitempty"` + // get_spec + // + // x-displayName: "Get Specification" + // If ListRequest has any specified report_fields, it will appear in object + GetSpec *GetSpecType `protobuf:"bytes,7,opt,name=get_spec,json=getSpec,proto3" json:"get_spec,omitempty"` } -func (m *ObjectChangeResp) Reset() { *m = ObjectChangeResp{} } -func (*ObjectChangeResp) ProtoMessage() {} -func (*ObjectChangeResp) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{4} +func (m *ListResponseItem) Reset() { *m = ListResponseItem{} } +func (*ListResponseItem) ProtoMessage() {} +func (*ListResponseItem) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{3} } -func (m *ObjectChangeResp) XXX_Unmarshal(b []byte) error { +func (m *ListResponseItem) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ObjectChangeResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ListResponseItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ObjectChangeResp.Marshal(b, m, deterministic) + return xxx_messageInfo_ListResponseItem.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -436,54 +529,137 @@ func (m *ObjectChangeResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, er return b[:n], nil } } -func (m *ObjectChangeResp) XXX_Merge(src proto.Message) { - xxx_messageInfo_ObjectChangeResp.Merge(m, src) +func (m *ListResponseItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponseItem.Merge(m, src) } -func (m *ObjectChangeResp) XXX_Size() int { +func (m *ListResponseItem) XXX_Size() int { return m.Size() } -func (m *ObjectChangeResp) XXX_DiscardUnknown() { - xxx_messageInfo_ObjectChangeResp.DiscardUnknown(m) +func (m *ListResponseItem) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponseItem.DiscardUnknown(m) } -var xxx_messageInfo_ObjectChangeResp proto.InternalMessageInfo +var xxx_messageInfo_ListResponseItem proto.InternalMessageInfo -func (m *ObjectChangeResp) GetObj() *Object { +func (m *ListResponseItem) GetTenant() string { if m != nil { - return m.Obj + return m.Tenant + } + return "" +} + +func (m *ListResponseItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListResponseItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ListResponseItem) GetUid() string { + if m != nil { + return m.Uid + } + return "" +} + +func (m *ListResponseItem) GetDescription() string { + if m != nil { + return m.Description + } + return "" +} + +func (m *ListResponseItem) GetDisabled() bool { + if m != nil { + return m.Disabled + } + return false +} + +func (m *ListResponseItem) GetLabels() map[string]string { + if m != nil { + return m.Labels } return nil } -// Configuration +func (m *ListResponseItem) GetAnnotations() map[string]string { + if m != nil { + return m.Annotations + } + return nil +} + +func (m *ListResponseItem) GetOwnerView() *schema.ViewRefType { + if m != nil { + return m.OwnerView + } + return nil +} + +func (m *ListResponseItem) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ListResponseItem) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ListResponseItem) GetObject() *Object { + if m != nil { + return m.Object + } + return nil +} + +func (m *ListResponseItem) GetGetSpec() *GetSpecType { + if m != nil { + return m.GetSpec + } + return nil +} + +// ListResponse is the collection of registration // -// x-displayName: "Configuration" -// Response for configuration request. This response is consumed by node. -type ConfigResp struct { - // Workload +// x-displayName: "List Response" +// This is the output message of 'List' RPC. +type ListResponse struct { + // items // - // x-displayName: "Workload" - // Configuration for applications and infrastructure - Workload map[string]*WorkloadContext `protobuf:"bytes,11,rep,name=workload,proto3" json:"workload,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Hash + // x-displayName: "Items" + // items represents the collection in response + Items []*ListResponseItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` + // errors // - // x-displayName: "Hash" - // Hash of workload map which is used to verify consistency - // and check changes - Hash string `protobuf:"bytes,12,opt,name=hash,proto3" json:"hash,omitempty"` + // x-displayName: "Errors" + // Errors(if any) while listing items from collection + Errors []*schema.ErrorType `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` } -func (m *ConfigResp) Reset() { *m = ConfigResp{} } -func (*ConfigResp) ProtoMessage() {} -func (*ConfigResp) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{5} +func (m *ListResponse) Reset() { *m = ListResponse{} } +func (*ListResponse) ProtoMessage() {} +func (*ListResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{4} } -func (m *ConfigResp) XXX_Unmarshal(b []byte) error { +func (m *ListResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ConfigResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ConfigResp.Marshal(b, m, deterministic) + return xxx_messageInfo_ListResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -493,60 +669,67 @@ func (m *ConfigResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *ConfigResp) XXX_Merge(src proto.Message) { - xxx_messageInfo_ConfigResp.Merge(m, src) +func (m *ListResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponse.Merge(m, src) } -func (m *ConfigResp) XXX_Size() int { +func (m *ListResponse) XXX_Size() int { return m.Size() } -func (m *ConfigResp) XXX_DiscardUnknown() { - xxx_messageInfo_ConfigResp.DiscardUnknown(m) +func (m *ListResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponse.DiscardUnknown(m) } -var xxx_messageInfo_ConfigResp proto.InternalMessageInfo +var xxx_messageInfo_ListResponse proto.InternalMessageInfo -func (m *ConfigResp) GetWorkload() map[string]*WorkloadContext { +func (m *ListResponse) GetItems() []*ListResponseItem { if m != nil { - return m.Workload + return m.Items } return nil } -func (m *ConfigResp) GetHash() string { +func (m *ListResponse) GetErrors() []*schema.ErrorType { if m != nil { - return m.Hash + return m.Errors } - return "" + return nil } -// Create registration +// DeleteRequest is used to delete a registration // -// x-displayName: "Create registration" -// Register node. This API isn't designed to be used by users, it's only for node. -type RegistrationCreateRequest struct { - // Metadata +// x-displayName: "Delete Request" +// This is the input message of the 'Delete' RPC. +type DeleteRequest struct { + // namespace // - // x-displayName: "Metadata" - // Metadata of registration - Metadata *schema.ObjectCreateMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // Registration specification + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name // - // x-displayName: "Specification" - // Specification of the registration - Spec *CreateSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` + // x-displayName: "Name" + // x-example: "name" + // Name of the configuration object + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // fail_if_referred + // + // x-displayName: "Fail-If-Referred" + // Fail the delete operation if this object is being referred by other objects + FailIfReferred bool `protobuf:"varint,3,opt,name=fail_if_referred,json=failIfReferred,proto3" json:"fail_if_referred,omitempty"` } -func (m *RegistrationCreateRequest) Reset() { *m = RegistrationCreateRequest{} } -func (*RegistrationCreateRequest) ProtoMessage() {} -func (*RegistrationCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d63ccec1c7290f8a, []int{6} +func (m *DeleteRequest) Reset() { *m = DeleteRequest{} } +func (*DeleteRequest) ProtoMessage() {} +func (*DeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{5} } -func (m *RegistrationCreateRequest) XXX_Unmarshal(b []byte) error { +func (m *DeleteRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *RegistrationCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *DeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_RegistrationCreateRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_DeleteRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -556,1414 +739,5091 @@ func (m *RegistrationCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([ return b[:n], nil } } -func (m *RegistrationCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_RegistrationCreateRequest.Merge(m, src) +func (m *DeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteRequest.Merge(m, src) } -func (m *RegistrationCreateRequest) XXX_Size() int { +func (m *DeleteRequest) XXX_Size() int { return m.Size() } -func (m *RegistrationCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_RegistrationCreateRequest.DiscardUnknown(m) +func (m *DeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_RegistrationCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo -func (m *RegistrationCreateRequest) GetMetadata() *schema.ObjectCreateMetaType { +func (m *DeleteRequest) GetNamespace() string { if m != nil { - return m.Metadata + return m.Namespace } - return nil + return "" } -func (m *RegistrationCreateRequest) GetSpec() *CreateSpecType { +func (m *DeleteRequest) GetName() string { if m != nil { - return m.Spec + return m.Name } - return nil + return "" } -func init() { - proto.RegisterType((*ListBySiteReq)(nil), "ves.io.schema.registration.ListBySiteReq") - golang_proto.RegisterType((*ListBySiteReq)(nil), "ves.io.schema.registration.ListBySiteReq") - proto.RegisterType((*ListStateReq)(nil), "ves.io.schema.registration.ListStateReq") - golang_proto.RegisterType((*ListStateReq)(nil), "ves.io.schema.registration.ListStateReq") - proto.RegisterType((*ApprovalReq)(nil), "ves.io.schema.registration.ApprovalReq") - golang_proto.RegisterType((*ApprovalReq)(nil), "ves.io.schema.registration.ApprovalReq") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.AnnotationsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.AnnotationsEntry") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.LabelsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.LabelsEntry") - proto.RegisterType((*ConfigReq)(nil), "ves.io.schema.registration.ConfigReq") - golang_proto.RegisterType((*ConfigReq)(nil), "ves.io.schema.registration.ConfigReq") - proto.RegisterType((*ObjectChangeResp)(nil), "ves.io.schema.registration.ObjectChangeResp") - golang_proto.RegisterType((*ObjectChangeResp)(nil), "ves.io.schema.registration.ObjectChangeResp") - proto.RegisterType((*ConfigResp)(nil), "ves.io.schema.registration.ConfigResp") - golang_proto.RegisterType((*ConfigResp)(nil), "ves.io.schema.registration.ConfigResp") - proto.RegisterMapType((map[string]*WorkloadContext)(nil), "ves.io.schema.registration.ConfigResp.WorkloadEntry") - golang_proto.RegisterMapType((map[string]*WorkloadContext)(nil), "ves.io.schema.registration.ConfigResp.WorkloadEntry") - proto.RegisterType((*RegistrationCreateRequest)(nil), "ves.io.schema.registration.RegistrationCreateRequest") - golang_proto.RegisterType((*RegistrationCreateRequest)(nil), "ves.io.schema.registration.RegistrationCreateRequest") +func (m *DeleteRequest) GetFailIfReferred() bool { + if m != nil { + return m.FailIfReferred + } + return false } -func init() { - proto.RegisterFile("ves.io/schema/registration/public_customapi.proto", fileDescriptor_d63ccec1c7290f8a) -} -func init() { - golang_proto.RegisterFile("ves.io/schema/registration/public_customapi.proto", fileDescriptor_d63ccec1c7290f8a) +// ListBySiteReq +// +// x-displayName: "List Registrations by Site" +// Request for list registrations by site +type ListBySiteReq struct { + // Namespace + // + // x-displayName: "Namespace" + // x-required + // x-example: "system" + // Registration namespace, only "system" namespaces is accepted + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // SiteName + // + // x-displayName: "Site name" + // x-required + // x-example: "ce02" + // Site name to be used for registration filtering + SiteName string `protobuf:"bytes,2,opt,name=site_name,json=siteName,proto3" json:"site_name,omitempty"` } -var fileDescriptor_d63ccec1c7290f8a = []byte{ - // 1141 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0xcd, 0x6f, 0xdb, 0x36, - 0x1c, 0x35, 0xe3, 0x24, 0xb3, 0xe9, 0x7e, 0x04, 0x5c, 0x8b, 0x29, 0x6a, 0x21, 0x64, 0xda, 0xd6, - 0xa4, 0x5d, 0x2d, 0x61, 0xee, 0x86, 0x35, 0xc1, 0xda, 0x26, 0xce, 0x06, 0xec, 0xa3, 0x5d, 0x03, - 0xa7, 0xc0, 0x80, 0x5e, 0x0c, 0x5a, 0x66, 0x64, 0x25, 0xb2, 0xa8, 0x8a, 0x94, 0x53, 0xa3, 0x08, - 0x30, 0xf4, 0xb8, 0xd3, 0x80, 0x1d, 0x06, 0xec, 0xb0, 0xf3, 0x4e, 0x3b, 0x17, 0xc8, 0x25, 0xb7, - 0x14, 0x3b, 0x0c, 0x41, 0xb7, 0x43, 0x11, 0xec, 0xb0, 0x38, 0x3b, 0xf4, 0x98, 0x3f, 0x61, 0x20, - 0x25, 0x2b, 0xb2, 0x9b, 0xda, 0xce, 0x25, 0xa1, 0xc8, 0xdf, 0x7b, 0x7c, 0x8f, 0x7c, 0x34, 0x09, - 0x3f, 0x6a, 0x11, 0x66, 0x38, 0xd4, 0x64, 0x56, 0x83, 0x34, 0xb1, 0x19, 0x10, 0xdb, 0x61, 0x3c, - 0xc0, 0xdc, 0xa1, 0x9e, 0xe9, 0x87, 0x35, 0xd7, 0xb1, 0xaa, 0x56, 0xc8, 0x38, 0x6d, 0x62, 0xdf, - 0x31, 0xfc, 0x80, 0x72, 0x8a, 0xd4, 0x08, 0x62, 0x44, 0x10, 0x23, 0x0d, 0x51, 0x8b, 0xb6, 0xc3, - 0x1b, 0x61, 0xcd, 0xb0, 0x68, 0xd3, 0xb4, 0xa9, 0x4d, 0x4d, 0x09, 0xa9, 0x85, 0x6b, 0xf2, 0x4b, - 0x7e, 0xc8, 0x56, 0x44, 0xa5, 0x5e, 0xb6, 0x29, 0xb5, 0x5d, 0x62, 0x62, 0xdf, 0x31, 0xb1, 0xe7, - 0x51, 0x2e, 0x59, 0x58, 0x3c, 0x7a, 0xa9, 0x57, 0x1b, 0xf5, 0xd3, 0x83, 0xb3, 0x03, 0x84, 0xd3, - 0xda, 0x3a, 0xb1, 0x78, 0x5c, 0x68, 0x8e, 0xe0, 0x30, 0x08, 0xeb, 0x89, 0x3f, 0xf5, 0xca, 0x00, - 0x00, 0x6f, 0xfb, 0xa4, 0xab, 0x60, 0xba, 0xb7, 0x2e, 0x3d, 0xa4, 0xf7, 0x0e, 0xb5, 0x08, 0x23, - 0x5e, 0xab, 0xcf, 0xc0, 0x4c, 0x5f, 0x8d, 0x43, 0x36, 0xab, 0x3d, 0x15, 0xfa, 0xd7, 0xf0, 0xec, - 0x5d, 0x87, 0xf1, 0x72, 0x7b, 0xd5, 0xe1, 0xa4, 0x42, 0x1e, 0xa1, 0xcb, 0x30, 0xef, 0xe1, 0x26, - 0x61, 0x3e, 0xb6, 0x88, 0x02, 0x66, 0xc0, 0x5c, 0xbe, 0x72, 0xdc, 0x81, 0x2e, 0xc1, 0x3c, 0x73, - 0x38, 0xa9, 0x8a, 0x1e, 0x65, 0x4c, 0x8e, 0xe6, 0x44, 0xc7, 0xb7, 0xb8, 0x49, 0xf4, 0x0d, 0x78, - 0x46, 0x70, 0xad, 0x72, 0x3c, 0x0a, 0xd5, 0x2d, 0x38, 0xc1, 0x44, 0xa5, 0xa4, 0x39, 0x57, 0x9a, - 0x35, 0xde, 0xbc, 0xe5, 0xc6, 0x7d, 0xb9, 0xd8, 0x11, 0x71, 0x84, 0xd2, 0x8f, 0xc6, 0x61, 0x61, - 0xc9, 0xf7, 0x03, 0xda, 0xc2, 0xae, 0x98, 0xec, 0xfa, 0x6b, 0x93, 0x95, 0xcf, 0xed, 0x6f, 0x83, - 0x49, 0xd6, 0x66, 0x9c, 0x34, 0x5f, 0x6d, 0x03, 0x90, 0x9e, 0x1c, 0xc1, 0xf1, 0x94, 0x05, 0xd9, - 0x46, 0x5f, 0x76, 0x05, 0x65, 0x4f, 0x25, 0xa8, 0x9c, 0xdf, 0xdf, 0x06, 0xa0, 0x24, 0x67, 0x88, - 0x08, 0xd0, 0x22, 0xcc, 0xf9, 0x98, 0x31, 0x9f, 0x06, 0x5c, 0x19, 0x9f, 0x01, 0x73, 0x85, 0xd2, - 0xfb, 0x83, 0xc8, 0x56, 0xe2, 0xda, 0x4a, 0x82, 0x42, 0xdf, 0xc0, 0x49, 0x17, 0xd7, 0x88, 0xcb, - 0x94, 0x89, 0x99, 0xec, 0x5c, 0xa1, 0x74, 0x63, 0x10, 0x3e, 0xb5, 0x0c, 0xc6, 0x5d, 0x89, 0xfa, - 0xc2, 0xe3, 0x41, 0xbb, 0x12, 0x53, 0xa0, 0x87, 0xb0, 0x90, 0x0a, 0xbe, 0x32, 0x29, 0x19, 0x6f, - 0x8e, 0xca, 0xb8, 0x74, 0x0c, 0x8d, 0x68, 0xd3, 0x64, 0xe8, 0x2a, 0x9c, 0xb2, 0xa8, 0xe7, 0x11, - 0x8b, 0x93, 0x7a, 0x55, 0x70, 0x50, 0x4f, 0x79, 0x4b, 0x2e, 0xea, 0xf9, 0xa4, 0xbf, 0x22, 0xbb, - 0xd1, 0xe7, 0xb0, 0xc0, 0x43, 0xcf, 0x23, 0x6e, 0x55, 0xc4, 0x58, 0xc9, 0xc9, 0x55, 0x7e, 0xaf, - 0x4f, 0x86, 0x88, 0xe1, 0x03, 0x2a, 0xff, 0xca, 0xda, 0x07, 0x6d, 0x9f, 0x54, 0x20, 0x4f, 0xda, - 0xea, 0x3c, 0x2c, 0xa4, 0x3c, 0xa2, 0x29, 0x98, 0xdd, 0x20, 0xed, 0x38, 0x5d, 0xa2, 0x89, 0x2e, - 0xc0, 0x89, 0x16, 0x76, 0xc3, 0xee, 0xde, 0x46, 0x1f, 0x0b, 0x63, 0x37, 0x81, 0x7a, 0x1b, 0x4e, - 0xf5, 0x9b, 0x39, 0x0d, 0x5e, 0x5f, 0x85, 0xf9, 0x65, 0xea, 0xad, 0x39, 0xf6, 0xf0, 0x70, 0x9f, - 0x94, 0xaf, 0x0b, 0x70, 0x82, 0xd3, 0x0d, 0xe2, 0xc9, 0x7c, 0xe5, 0x2b, 0xd1, 0x87, 0x7e, 0x0f, - 0x4e, 0x45, 0x61, 0x5a, 0x6e, 0x60, 0xcf, 0x26, 0x15, 0xc2, 0x7c, 0x34, 0x0f, 0xb3, 0xb4, 0xb6, - 0x2e, 0x59, 0x0b, 0x25, 0x7d, 0x78, 0x0e, 0xcb, 0xd9, 0x9d, 0x2d, 0x50, 0x11, 0x18, 0xfd, 0x1f, - 0x00, 0x61, 0x57, 0x24, 0xf3, 0xd1, 0x0a, 0xcc, 0x6d, 0xd2, 0x60, 0xc3, 0xa5, 0xb8, 0xae, 0x14, - 0xe4, 0xbe, 0x7f, 0x3c, 0x88, 0xee, 0x18, 0x69, 0x7c, 0x17, 0xc3, 0xa2, 0x3d, 0x4f, 0x58, 0x84, - 0xb3, 0x06, 0x66, 0x0d, 0xe5, 0x4c, 0xe4, 0x4c, 0xb4, 0xd5, 0x06, 0x3c, 0xdb, 0x53, 0x7e, 0xc2, - 0xaa, 0x2e, 0xa5, 0x57, 0xb5, 0x50, 0xfa, 0x70, 0x90, 0x8a, 0x2e, 0xd7, 0x32, 0xf5, 0x38, 0x79, - 0xcc, 0xd3, 0x5b, 0xf0, 0x0c, 0xc0, 0xe9, 0x4a, 0xaa, 0x76, 0x39, 0x20, 0xd1, 0x8f, 0x4d, 0x48, - 0x18, 0x47, 0x77, 0x60, 0xae, 0x49, 0x38, 0xae, 0x63, 0x8e, 0xe3, 0xc5, 0xeb, 0x8f, 0x57, 0xbc, - 0xd4, 0x12, 0x75, 0x8f, 0x70, 0x2c, 0xe3, 0x95, 0x80, 0xd0, 0x7d, 0x38, 0xce, 0x7c, 0x62, 0xc5, - 0x22, 0xaf, 0x0d, 0x5c, 0x2a, 0xc9, 0xb1, 0xea, 0x13, 0x4b, 0x70, 0x94, 0xcf, 0xff, 0xb2, 0x75, - 0x46, 0x40, 0x0d, 0xdb, 0xaa, 0x8a, 0xff, 0x15, 0x49, 0xb4, 0x90, 0xff, 0xe3, 0xf6, 0x64, 0x34, - 0x67, 0xe9, 0xe7, 0x1c, 0xcc, 0x2f, 0xcb, 0x6b, 0x6e, 0x69, 0xe5, 0x2b, 0xf4, 0x02, 0xc0, 0xb7, - 0xd3, 0x46, 0xa2, 0x13, 0x47, 0xd0, 0xec, 0x88, 0xc7, 0x52, 0xbd, 0x3e, 0x3c, 0x16, 0xc7, 0x89, - 0xd2, 0xeb, 0x9d, 0x5d, 0x45, 0x5c, 0x75, 0x45, 0x87, 0x16, 0x1d, 0x6f, 0x2d, 0xc0, 0x8c, 0x07, - 0xa1, 0xc5, 0xc3, 0x80, 0x14, 0x37, 0x03, 0x87, 0x93, 0xa7, 0x7f, 0xfd, 0xf7, 0xd3, 0xd8, 0x1d, - 0x7d, 0x21, 0xbe, 0xad, 0xcc, 0x24, 0xc9, 0xcc, 0x7c, 0x92, 0xb4, 0xb7, 0x7a, 0xef, 0x29, 0x39, - 0xb0, 0x65, 0xe2, 0x48, 0xf9, 0x02, 0xb8, 0x86, 0x7e, 0x07, 0x10, 0xbd, 0xbe, 0x3b, 0xe8, 0x93, - 0x41, 0x52, 0xdf, 0xb8, 0x9b, 0xea, 0x08, 0xc1, 0xd7, 0x6f, 0x75, 0x76, 0x95, 0x8b, 0x89, 0x2f, - 0x4e, 0x02, 0x0f, 0xbb, 0x29, 0x47, 0x9a, 0x3e, 0xdd, 0x75, 0x14, 0xa1, 0x49, 0x50, 0xa6, 0x94, - 0x0b, 0x16, 0x5f, 0x08, 0xfe, 0xb5, 0x5f, 0xb0, 0xcc, 0x3f, 0xfa, 0x60, 0x94, 0x33, 0xf2, 0x48, - 0xbd, 0x32, 0xda, 0x51, 0xd2, 0xe7, 0x07, 0x8b, 0x54, 0xf5, 0x8b, 0xc7, 0x22, 0xa5, 0xf5, 0x08, - 0x2b, 0x04, 0xfe, 0x0d, 0xa0, 0x22, 0xee, 0xd4, 0xb4, 0x48, 0x56, 0x6e, 0xcb, 0x8b, 0x07, 0xcd, - 0x0d, 0x9a, 0x3f, 0x7d, 0x13, 0xab, 0x43, 0x2b, 0x85, 0x4e, 0xea, 0x31, 0xa2, 0xd7, 0x9f, 0x3f, - 0x1b, 0x03, 0x9d, 0x5d, 0x45, 0x3d, 0x39, 0x2c, 0x01, 0xc1, 0x75, 0x29, 0xfa, 0x33, 0xfd, 0xd3, - 0x21, 0x59, 0x71, 0xc5, 0x0c, 0x69, 0xd9, 0xb5, 0xb6, 0xbc, 0x1d, 0x85, 0xad, 0x7d, 0x00, 0xdf, - 0x39, 0xc9, 0x96, 0xc3, 0x09, 0xba, 0x3a, 0x4c, 0x6b, 0xf2, 0x56, 0x39, 0x85, 0xad, 0xf5, 0x11, - 0x6d, 0x95, 0xd1, 0xe2, 0x29, 0x8e, 0x00, 0xab, 0xd6, 0xda, 0x55, 0xf1, 0xfc, 0x31, 0x9f, 0x24, - 0xaf, 0xa2, 0x2d, 0xd5, 0xdc, 0xd9, 0x06, 0xd9, 0x17, 0xdb, 0xe0, 0xdd, 0xa1, 0xf1, 0x7d, 0xfa, - 0xa7, 0x32, 0xb6, 0x08, 0xca, 0x3f, 0x80, 0xbd, 0x03, 0x2d, 0xf3, 0xf2, 0x40, 0xcb, 0x1c, 0x1d, - 0x68, 0xe0, 0xfb, 0x8e, 0x06, 0x7e, 0xeb, 0x68, 0xe0, 0x79, 0x47, 0x03, 0x7b, 0x1d, 0x0d, 0xfc, - 0xdb, 0xd1, 0xc0, 0xab, 0x8e, 0x96, 0x39, 0xea, 0x68, 0xe0, 0xc7, 0x43, 0x2d, 0xb3, 0x73, 0xa8, - 0x81, 0xbd, 0x43, 0x2d, 0xf3, 0xf2, 0x50, 0xcb, 0x3c, 0x5c, 0xb1, 0xa9, 0xbf, 0x61, 0x1b, 0x2d, - 0xea, 0x72, 0x12, 0x04, 0xd8, 0x08, 0x99, 0x29, 0x1b, 0x6b, 0x34, 0x68, 0x16, 0xc5, 0xb9, 0x74, - 0xea, 0x24, 0x28, 0x76, 0x87, 0x4d, 0xbf, 0x66, 0x53, 0x93, 0x3c, 0xe6, 0xf1, 0x7b, 0xf0, 0x84, - 0xd7, 0x67, 0x6d, 0x52, 0xbe, 0x0b, 0x6f, 0xfc, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xbe, 0x06, 0x56, - 0xac, 0xb5, 0x0b, 0x00, 0x00, +func (m *ListBySiteReq) Reset() { *m = ListBySiteReq{} } +func (*ListBySiteReq) ProtoMessage() {} +func (*ListBySiteReq) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{6} } - -func (this *ListBySiteReq) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*ListBySiteReq) - if !ok { - that2, ok := that.(ListBySiteReq) - if ok { - that1 = &that2 - } else { - return false +func (m *ListBySiteReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListBySiteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListBySiteReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.SiteName != that1.SiteName { - return false - } - return true } -func (this *ListStateReq) Equal(that interface{}) bool { - if that == nil { - return this == nil - } +func (m *ListBySiteReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListBySiteReq.Merge(m, src) +} +func (m *ListBySiteReq) XXX_Size() int { + return m.Size() +} +func (m *ListBySiteReq) XXX_DiscardUnknown() { + xxx_messageInfo_ListBySiteReq.DiscardUnknown(m) +} - that1, ok := that.(*ListStateReq) - if !ok { - that2, ok := that.(ListStateReq) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.State != that1.State { - return false +var xxx_messageInfo_ListBySiteReq proto.InternalMessageInfo + +func (m *ListBySiteReq) GetNamespace() string { + if m != nil { + return m.Namespace } - return true + return "" } -func (this *ApprovalReq) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ApprovalReq) - if !ok { - that2, ok := that.(ApprovalReq) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.Name != that1.Name { - return false - } - if this.State != that1.State { - return false - } - if !this.Passport.Equal(that1.Passport) { - return false - } - if len(this.Labels) != len(that1.Labels) { - return false - } - for i := range this.Labels { - if this.Labels[i] != that1.Labels[i] { - return false - } - } - if len(this.Annotations) != len(that1.Annotations) { - return false - } - for i := range this.Annotations { - if this.Annotations[i] != that1.Annotations[i] { - return false - } - } - if this.ConnectedRegion != that1.ConnectedRegion { - return false - } - if this.TunnelType != that1.TunnelType { - return false +func (m *ListBySiteReq) GetSiteName() string { + if m != nil { + return m.SiteName } - return true + return "" } -func (this *ConfigReq) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ConfigReq) - if !ok { - that2, ok := that.(ConfigReq) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Namespace != that1.Namespace { - return false - } - if this.Name != that1.Name { - return false - } - if this.Token != that1.Token { - return false - } - return true +// ListStateReq +// +// x-displayName: "List State Request" +// Request for list registrations +type ListStateReq struct { + // Namespace + // + // x-displayName: "Namespace" + // x-required + // x-example: "system" + // Registration namespace, only "system" namespaces is accepted + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // ObjectState + // + // x-displayName: "Object State" + // x-required + // State to get list of registrations (NEW, APPROVED, ADMITTED or RETIRED) + State ObjectState `protobuf:"varint,2,opt,name=state,proto3,enum=ves.io.schema.registration.ObjectState" json:"state,omitempty"` } -func (this *ObjectChangeResp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ObjectChangeResp) - if !ok { - that2, ok := that.(ObjectChangeResp) - if ok { - that1 = &that2 - } else { - return false +func (m *ListStateReq) Reset() { *m = ListStateReq{} } +func (*ListStateReq) ProtoMessage() {} +func (*ListStateReq) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{7} +} +func (m *ListStateReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListStateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListStateReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Obj.Equal(that1.Obj) { - return false - } - return true } -func (this *ConfigResp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } +func (m *ListStateReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListStateReq.Merge(m, src) +} +func (m *ListStateReq) XXX_Size() int { + return m.Size() +} +func (m *ListStateReq) XXX_DiscardUnknown() { + xxx_messageInfo_ListStateReq.DiscardUnknown(m) +} - that1, ok := that.(*ConfigResp) - if !ok { - that2, ok := that.(ConfigResp) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Workload) != len(that1.Workload) { - return false - } - for i := range this.Workload { - if !this.Workload[i].Equal(that1.Workload[i]) { - return false - } - } - if this.Hash != that1.Hash { - return false +var xxx_messageInfo_ListStateReq proto.InternalMessageInfo + +func (m *ListStateReq) GetNamespace() string { + if m != nil { + return m.Namespace } - return true + return "" } -func (this *RegistrationCreateRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*RegistrationCreateRequest) - if !ok { - that2, ok := that.(RegistrationCreateRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.Spec.Equal(that1.Spec) { - return false +func (m *ListStateReq) GetState() ObjectState { + if m != nil { + return m.State } - return true + return NOTSET } -func (this *ListBySiteReq) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "®istration.ListBySiteReq{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "SiteName: "+fmt.Sprintf("%#v", this.SiteName)+",\n") - s = append(s, "}") - return strings.Join(s, "") + +// Approval request +// +// x-displayName: "Approval" +// Request for admission approval +type ApprovalReq struct { + // Namespace + // + // x-displayName: "Namespace" + // x-required + // x-example: "system" + // Registration namespace, only "system" namespaces is accepted + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // Name + // + // x-displayName: "Name" + // x-required + // x-example: "r-e9030963-639e-41cd-aba6-261504f4a6be" + // Registration name (= "r-" + uid) to approve. Registration name is taken from listing pending registrations. + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // Target registration state + // + // x-displayName: "Target state" + // x-required + // State to approve (APPROVED or RETIRED) + State ObjectState `protobuf:"varint,3,opt,name=state,proto3,enum=ves.io.schema.registration.ObjectState" json:"state,omitempty"` + // Passport + // + // x-displayName: "Passport" + // Passport to be changed in registration, must be valid and always provided + Passport *Passport `protobuf:"bytes,4,opt,name=passport,proto3" json:"passport,omitempty"` + // Labels + // + // Optional. + // x-displayName: "Labels" + // x-example: "key:value" + // Labels to set (add if missing, overwrite if exists) + Labels map[string]string `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Annotations + // + // Optional. + // x-displayName: "Annotations" + // x-example: "key:value" + // Annotations to set (add if missing, overwrite if exists) + Annotations map[string]string `protobuf:"bytes,6,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Connected Region + // + // x-displayName: "Connected Region" + // x-example: "value" + // Optional. + // closest REs to which to connect in selected region. If there is more than one RE with the label + // then select 2 of them. Otherwise default "geo-ip" database is consulted to find closest RE(s) to + // public ip with which node registration request was received. + ConnectedRegion string `protobuf:"bytes,7,opt,name=connected_region,json=connectedRegion,proto3" json:"connected_region,omitempty"` + // Site to site tunnel type + // + // x-displayName: "Site to Site Tunnel Type" + // Tunnel type specifies the type of tunnel to be used for traffic between the sites. + TunnelType schema.SiteToSiteTunnelType `protobuf:"varint,8,opt,name=tunnel_type,json=tunnelType,proto3,enum=ves.io.schema.SiteToSiteTunnelType" json:"tunnel_type,omitempty"` } -func (this *ListStateReq) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "®istration.ListStateReq{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") - s = append(s, "}") - return strings.Join(s, "") + +func (m *ApprovalReq) Reset() { *m = ApprovalReq{} } +func (*ApprovalReq) ProtoMessage() {} +func (*ApprovalReq) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{8} } -func (this *ApprovalReq) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 12) - s = append(s, "®istration.ApprovalReq{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") - if this.Passport != nil { - s = append(s, "Passport: "+fmt.Sprintf("%#v", this.Passport)+",\n") - } - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) - } - mapStringForLabels += "}" - if this.Labels != nil { - s = append(s, "Labels: "+mapStringForLabels+",\n") - } - keysForAnnotations := make([]string, 0, len(this.Annotations)) - for k, _ := range this.Annotations { - keysForAnnotations = append(keysForAnnotations, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) - mapStringForAnnotations := "map[string]string{" - for _, k := range keysForAnnotations { - mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) - } - mapStringForAnnotations += "}" - if this.Annotations != nil { - s = append(s, "Annotations: "+mapStringForAnnotations+",\n") - } - s = append(s, "ConnectedRegion: "+fmt.Sprintf("%#v", this.ConnectedRegion)+",\n") - s = append(s, "TunnelType: "+fmt.Sprintf("%#v", this.TunnelType)+",\n") - s = append(s, "}") - return strings.Join(s, "") +func (m *ApprovalReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } -func (this *ConfigReq) GoString() string { - if this == nil { - return "nil" +func (m *ApprovalReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ApprovalReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - s := make([]string, 0, 7) - s = append(s, "®istration.ConfigReq{") - s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "Token: "+fmt.Sprintf("%#v", this.Token)+",\n") - s = append(s, "}") - return strings.Join(s, "") } -func (this *ObjectChangeResp) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "®istration.ObjectChangeResp{") - if this.Obj != nil { - s = append(s, "Obj: "+fmt.Sprintf("%#v", this.Obj)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *ApprovalReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApprovalReq.Merge(m, src) } -func (this *ConfigResp) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "®istration.ConfigResp{") - keysForWorkload := make([]string, 0, len(this.Workload)) - for k, _ := range this.Workload { - keysForWorkload = append(keysForWorkload, k) +func (m *ApprovalReq) XXX_Size() int { + return m.Size() +} +func (m *ApprovalReq) XXX_DiscardUnknown() { + xxx_messageInfo_ApprovalReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ApprovalReq proto.InternalMessageInfo + +func (m *ApprovalReq) GetNamespace() string { + if m != nil { + return m.Namespace } - github_com_gogo_protobuf_sortkeys.Strings(keysForWorkload) - mapStringForWorkload := "map[string]*WorkloadContext{" - for _, k := range keysForWorkload { - mapStringForWorkload += fmt.Sprintf("%#v: %#v,", k, this.Workload[k]) + return "" +} + +func (m *ApprovalReq) GetName() string { + if m != nil { + return m.Name } - mapStringForWorkload += "}" - if this.Workload != nil { - s = append(s, "Workload: "+mapStringForWorkload+",\n") + return "" +} + +func (m *ApprovalReq) GetState() ObjectState { + if m != nil { + return m.State } - s = append(s, "Hash: "+fmt.Sprintf("%#v", this.Hash)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return NOTSET } -func (this *RegistrationCreateRequest) GoString() string { - if this == nil { - return "nil" + +func (m *ApprovalReq) GetPassport() *Passport { + if m != nil { + return m.Passport } - s := make([]string, 0, 6) - s = append(s, "®istration.RegistrationCreateRequest{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + return nil +} + +func (m *ApprovalReq) GetLabels() map[string]string { + if m != nil { + return m.Labels } - if this.Spec != nil { - s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + return nil +} + +func (m *ApprovalReq) GetAnnotations() map[string]string { + if m != nil { + return m.Annotations } - s = append(s, "}") - return strings.Join(s, "") + return nil } -func valueToGoStringPublicCustomapi(v interface{}, typ string) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" + +func (m *ApprovalReq) GetConnectedRegion() string { + if m != nil { + return m.ConnectedRegion } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) + return "" } -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn +func (m *ApprovalReq) GetTunnelType() schema.SiteToSiteTunnelType { + if m != nil { + return m.TunnelType + } + return schema.SITE_TO_SITE_TUNNEL_IPSEC_OR_SSL +} -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 - -// CustomAPIClient is the client API for CustomAPI service. +// Configuration request // -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type CustomAPIClient interface { - // Change registration state - // - // x-displayName: "Registration Approve" - // RegistrationApprove approved pending registration and it can also decommission by changing state to RETIRED. - RegistrationApprove(ctx context.Context, in *ApprovalReq, opts ...grpc.CallOption) (*ObjectChangeResp, error) - // Create registration - // - // x-displayName: "Registration Create" - // Registration request to create registration is sent by the node on first boot. User never creates registration on her own. - RegistrationCreate(ctx context.Context, in *RegistrationCreateRequest, opts ...grpc.CallOption) (*Object, error) - // Get configuration for registration +// x-displayName: "Configuration Request" +// Request to get configuration +type ConfigReq struct { + // Namespace // - // x-displayName: "Registration Config" - // API endpoint for returning configuration for admitted registrations. - // It will fail with known error for non-ADMITTED registration - RegistrationConfig(ctx context.Context, in *ConfigReq, opts ...grpc.CallOption) (*ConfigResp, error) - // List Registrations By Status + // x-displayName: "Namespace" + // x-required + // x-example: "system" + // Registration namespace + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // Name // - // x-displayName: "List Registrations By State" - // API endpoint for returning Registrations by status, e.g APPROVED, NEW, or RETIRED - ListRegistrationsByState(ctx context.Context, in *ListStateReq, opts ...grpc.CallOption) (*ListResponse, error) - // List Registrations by site + // x-displayName: "Name" + // x-required + // x-example: "r-e9030963-639e-41cd-aba6-261504f4a6be" + // Registration name + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // Token // - // x-displayName: "List registrations by site" - // List all registration in site - ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq, opts ...grpc.CallOption) (*ListResponse, error) + // x-displayName: "Token" + // x-required + // x-example: "835af393-3056-46af-a9e4-57613fbe0339" + // Token - verify node identity + Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` } -type customAPIClient struct { - cc *grpc.ClientConn +func (m *ConfigReq) Reset() { *m = ConfigReq{} } +func (*ConfigReq) ProtoMessage() {} +func (*ConfigReq) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{9} } - -func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { - return &customAPIClient{cc} +func (m *ConfigReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (c *customAPIClient) RegistrationApprove(ctx context.Context, in *ApprovalReq, opts ...grpc.CallOption) (*ObjectChangeResp, error) { - out := new(ObjectChangeResp) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/RegistrationApprove", in, out, opts...) - if err != nil { - return nil, err +func (m *ConfigReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ConfigReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return out, nil } - -func (c *customAPIClient) RegistrationCreate(ctx context.Context, in *RegistrationCreateRequest, opts ...grpc.CallOption) (*Object, error) { - out := new(Object) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/RegistrationCreate", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +func (m *ConfigReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ConfigReq.Merge(m, src) +} +func (m *ConfigReq) XXX_Size() int { + return m.Size() +} +func (m *ConfigReq) XXX_DiscardUnknown() { + xxx_messageInfo_ConfigReq.DiscardUnknown(m) } -func (c *customAPIClient) RegistrationConfig(ctx context.Context, in *ConfigReq, opts ...grpc.CallOption) (*ConfigResp, error) { - out := new(ConfigResp) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/RegistrationConfig", in, out, opts...) - if err != nil { - return nil, err +var xxx_messageInfo_ConfigReq proto.InternalMessageInfo + +func (m *ConfigReq) GetNamespace() string { + if m != nil { + return m.Namespace } - return out, nil + return "" } -func (c *customAPIClient) ListRegistrationsByState(ctx context.Context, in *ListStateReq, opts ...grpc.CallOption) (*ListResponse, error) { - out := new(ListResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/ListRegistrationsByState", in, out, opts...) - if err != nil { - return nil, err +func (m *ConfigReq) GetName() string { + if m != nil { + return m.Name } - return out, nil + return "" } -func (c *customAPIClient) ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq, opts ...grpc.CallOption) (*ListResponse, error) { - out := new(ListResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/ListRegistrationsBySite", in, out, opts...) - if err != nil { - return nil, err +func (m *ConfigReq) GetToken() string { + if m != nil { + return m.Token } - return out, nil + return "" } -// CustomAPIServer is the server API for CustomAPI service. -type CustomAPIServer interface { - // Change registration state - // - // x-displayName: "Registration Approve" - // RegistrationApprove approved pending registration and it can also decommission by changing state to RETIRED. - RegistrationApprove(context.Context, *ApprovalReq) (*ObjectChangeResp, error) - // Create registration - // - // x-displayName: "Registration Create" - // Registration request to create registration is sent by the node on first boot. User never creates registration on her own. - RegistrationCreate(context.Context, *RegistrationCreateRequest) (*Object, error) - // Get configuration for registration - // - // x-displayName: "Registration Config" - // API endpoint for returning configuration for admitted registrations. - // It will fail with known error for non-ADMITTED registration - RegistrationConfig(context.Context, *ConfigReq) (*ConfigResp, error) - // List Registrations By Status - // - // x-displayName: "List Registrations By State" - // API endpoint for returning Registrations by status, e.g APPROVED, NEW, or RETIRED - ListRegistrationsByState(context.Context, *ListStateReq) (*ListResponse, error) - // List Registrations by site +// Registration change +// +// x-displayName: "Registration Change" +// Generic response when object is changed, registration can be changed only via custom API. +type ObjectChangeResp struct { + // Registration object // - // x-displayName: "List registrations by site" - // List all registration in site - ListRegistrationsBySite(context.Context, *ListBySiteReq) (*ListResponse, error) + // x-displayName: "Object" + Obj *Object `protobuf:"bytes,1,opt,name=obj,proto3" json:"obj,omitempty"` } -// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. -type UnimplementedCustomAPIServer struct { +func (m *ObjectChangeResp) Reset() { *m = ObjectChangeResp{} } +func (*ObjectChangeResp) ProtoMessage() {} +func (*ObjectChangeResp) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{10} } - -func (*UnimplementedCustomAPIServer) RegistrationApprove(ctx context.Context, req *ApprovalReq) (*ObjectChangeResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method RegistrationApprove not implemented") +func (m *ObjectChangeResp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } -func (*UnimplementedCustomAPIServer) RegistrationCreate(ctx context.Context, req *RegistrationCreateRequest) (*Object, error) { - return nil, status.Errorf(codes.Unimplemented, "method RegistrationCreate not implemented") +func (m *ObjectChangeResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectChangeResp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } } -func (*UnimplementedCustomAPIServer) RegistrationConfig(ctx context.Context, req *ConfigReq) (*ConfigResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method RegistrationConfig not implemented") +func (m *ObjectChangeResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectChangeResp.Merge(m, src) } -func (*UnimplementedCustomAPIServer) ListRegistrationsByState(ctx context.Context, req *ListStateReq) (*ListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListRegistrationsByState not implemented") +func (m *ObjectChangeResp) XXX_Size() int { + return m.Size() } -func (*UnimplementedCustomAPIServer) ListRegistrationsBySite(ctx context.Context, req *ListBySiteReq) (*ListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListRegistrationsBySite not implemented") +func (m *ObjectChangeResp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectChangeResp.DiscardUnknown(m) } -func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { - s.RegisterService(&_CustomAPI_serviceDesc, srv) -} +var xxx_messageInfo_ObjectChangeResp proto.InternalMessageInfo -func _CustomAPI_RegistrationApprove_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ApprovalReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(CustomAPIServer).RegistrationApprove(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.CustomAPI/RegistrationApprove", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomAPIServer).RegistrationApprove(ctx, req.(*ApprovalReq)) +func (m *ObjectChangeResp) GetObj() *Object { + if m != nil { + return m.Obj } - return interceptor(ctx, in, info, handler) + return nil } -func _CustomAPI_RegistrationCreate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RegistrationCreateRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(CustomAPIServer).RegistrationCreate(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.CustomAPI/RegistrationCreate", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomAPIServer).RegistrationCreate(ctx, req.(*RegistrationCreateRequest)) - } - return interceptor(ctx, in, info, handler) +// Configuration +// +// x-displayName: "Configuration" +// Response for configuration request. This response is consumed by node. +type ConfigResp struct { + // Workload + // + // x-displayName: "Workload" + // Configuration for applications and infrastructure + Workload map[string]*WorkloadContext `protobuf:"bytes,11,rep,name=workload,proto3" json:"workload,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Hash + // + // x-displayName: "Hash" + // Hash of workload map which is used to verify consistency + // and check changes + Hash string `protobuf:"bytes,12,opt,name=hash,proto3" json:"hash,omitempty"` } -func _CustomAPI_RegistrationConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ConfigReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(CustomAPIServer).RegistrationConfig(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.CustomAPI/RegistrationConfig", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomAPIServer).RegistrationConfig(ctx, req.(*ConfigReq)) +func (m *ConfigResp) Reset() { *m = ConfigResp{} } +func (*ConfigResp) ProtoMessage() {} +func (*ConfigResp) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{11} +} +func (m *ConfigResp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ConfigResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ConfigResp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return interceptor(ctx, in, info, handler) +} +func (m *ConfigResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ConfigResp.Merge(m, src) +} +func (m *ConfigResp) XXX_Size() int { + return m.Size() +} +func (m *ConfigResp) XXX_DiscardUnknown() { + xxx_messageInfo_ConfigResp.DiscardUnknown(m) } -func _CustomAPI_ListRegistrationsByState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListStateReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(CustomAPIServer).ListRegistrationsByState(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.CustomAPI/ListRegistrationsByState", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomAPIServer).ListRegistrationsByState(ctx, req.(*ListStateReq)) +var xxx_messageInfo_ConfigResp proto.InternalMessageInfo + +func (m *ConfigResp) GetWorkload() map[string]*WorkloadContext { + if m != nil { + return m.Workload } - return interceptor(ctx, in, info, handler) + return nil } -func _CustomAPI_ListRegistrationsBySite_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListBySiteReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(CustomAPIServer).ListRegistrationsBySite(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.registration.CustomAPI/ListRegistrationsBySite", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomAPIServer).ListRegistrationsBySite(ctx, req.(*ListBySiteReq)) +func (m *ConfigResp) GetHash() string { + if m != nil { + return m.Hash } - return interceptor(ctx, in, info, handler) + return "" } -var _CustomAPI_serviceDesc = grpc.ServiceDesc{ - ServiceName: "ves.io.schema.registration.CustomAPI", - HandlerType: (*CustomAPIServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "RegistrationApprove", - Handler: _CustomAPI_RegistrationApprove_Handler, - }, - { - MethodName: "RegistrationCreate", - Handler: _CustomAPI_RegistrationCreate_Handler, - }, - { - MethodName: "RegistrationConfig", - Handler: _CustomAPI_RegistrationConfig_Handler, - }, - { - MethodName: "ListRegistrationsByState", - Handler: _CustomAPI_ListRegistrationsByState_Handler, - }, - { - MethodName: "ListRegistrationsBySite", - Handler: _CustomAPI_ListRegistrationsBySite_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "ves.io/schema/registration/public_customapi.proto", +// Create registration +// +// x-displayName: "Create registration" +// Register node. This API isn't designed to be used by users, it's only for node. +type RegistrationCreateRequest struct { + // Metadata + // + // x-displayName: "Metadata" + // Metadata of registration + Metadata *schema.ObjectCreateMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Registration specification + // + // x-displayName: "Specification" + // Specification of the registration + Spec *CreateSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` } -func (m *ListBySiteReq) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RegistrationCreateRequest) Reset() { *m = RegistrationCreateRequest{} } +func (*RegistrationCreateRequest) ProtoMessage() {} +func (*RegistrationCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_d63ccec1c7290f8a, []int{12} +} +func (m *RegistrationCreateRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RegistrationCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RegistrationCreateRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return dAtA[:n], nil } - -func (m *ListBySiteReq) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RegistrationCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_RegistrationCreateRequest.Merge(m, src) +} +func (m *RegistrationCreateRequest) XXX_Size() int { + return m.Size() +} +func (m *RegistrationCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_RegistrationCreateRequest.DiscardUnknown(m) } -func (m *ListBySiteReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.SiteName) > 0 { - i -= len(m.SiteName) - copy(dAtA[i:], m.SiteName) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.SiteName))) - i-- - dAtA[i] = 0x12 - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa +var xxx_messageInfo_RegistrationCreateRequest proto.InternalMessageInfo + +func (m *RegistrationCreateRequest) GetMetadata() *schema.ObjectCreateMetaType { + if m != nil { + return m.Metadata } - return len(dAtA) - i, nil + return nil } -func (m *ListStateReq) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RegistrationCreateRequest) GetSpec() *CreateSpecType { + if m != nil { + return m.Spec } - return dAtA[:n], nil + return nil } -func (m *ListStateReq) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func init() { + proto.RegisterEnum("ves.io.schema.registration.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + golang_proto.RegisterEnum("ves.io.schema.registration.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + proto.RegisterType((*GetRequest)(nil), "ves.io.schema.registration.GetRequest") + golang_proto.RegisterType((*GetRequest)(nil), "ves.io.schema.registration.GetRequest") + proto.RegisterType((*GetResponse)(nil), "ves.io.schema.registration.GetResponse") + golang_proto.RegisterType((*GetResponse)(nil), "ves.io.schema.registration.GetResponse") + proto.RegisterType((*ListRequest)(nil), "ves.io.schema.registration.ListRequest") + golang_proto.RegisterType((*ListRequest)(nil), "ves.io.schema.registration.ListRequest") + proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.registration.ListResponseItem") + golang_proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.registration.ListResponseItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.AnnotationsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.AnnotationsEntry") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ListResponseItem.LabelsEntry") + proto.RegisterType((*ListResponse)(nil), "ves.io.schema.registration.ListResponse") + golang_proto.RegisterType((*ListResponse)(nil), "ves.io.schema.registration.ListResponse") + proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.registration.DeleteRequest") + golang_proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.registration.DeleteRequest") + proto.RegisterType((*ListBySiteReq)(nil), "ves.io.schema.registration.ListBySiteReq") + golang_proto.RegisterType((*ListBySiteReq)(nil), "ves.io.schema.registration.ListBySiteReq") + proto.RegisterType((*ListStateReq)(nil), "ves.io.schema.registration.ListStateReq") + golang_proto.RegisterType((*ListStateReq)(nil), "ves.io.schema.registration.ListStateReq") + proto.RegisterType((*ApprovalReq)(nil), "ves.io.schema.registration.ApprovalReq") + golang_proto.RegisterType((*ApprovalReq)(nil), "ves.io.schema.registration.ApprovalReq") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.AnnotationsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.AnnotationsEntry") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.registration.ApprovalReq.LabelsEntry") + proto.RegisterType((*ConfigReq)(nil), "ves.io.schema.registration.ConfigReq") + golang_proto.RegisterType((*ConfigReq)(nil), "ves.io.schema.registration.ConfigReq") + proto.RegisterType((*ObjectChangeResp)(nil), "ves.io.schema.registration.ObjectChangeResp") + golang_proto.RegisterType((*ObjectChangeResp)(nil), "ves.io.schema.registration.ObjectChangeResp") + proto.RegisterType((*ConfigResp)(nil), "ves.io.schema.registration.ConfigResp") + golang_proto.RegisterType((*ConfigResp)(nil), "ves.io.schema.registration.ConfigResp") + proto.RegisterMapType((map[string]*WorkloadContext)(nil), "ves.io.schema.registration.ConfigResp.WorkloadEntry") + golang_proto.RegisterMapType((map[string]*WorkloadContext)(nil), "ves.io.schema.registration.ConfigResp.WorkloadEntry") + proto.RegisterType((*RegistrationCreateRequest)(nil), "ves.io.schema.registration.RegistrationCreateRequest") + golang_proto.RegisterType((*RegistrationCreateRequest)(nil), "ves.io.schema.registration.RegistrationCreateRequest") } -func (m *ListStateReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.State != 0 { - i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x10 - } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +func init() { + proto.RegisterFile("ves.io/schema/registration/public_customapi.proto", fileDescriptor_d63ccec1c7290f8a) } - -func (m *ApprovalReq) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil +func init() { + golang_proto.RegisterFile("ves.io/schema/registration/public_customapi.proto", fileDescriptor_d63ccec1c7290f8a) } -func (m *ApprovalReq) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +var fileDescriptor_d63ccec1c7290f8a = []byte{ + // 2035 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x59, 0x4f, 0x6c, 0x1b, 0xc7, + 0xf5, 0xd6, 0x90, 0x12, 0x4d, 0x0e, 0x65, 0x89, 0x99, 0x38, 0xf6, 0x8a, 0xf1, 0x8f, 0x60, 0xd6, + 0xf9, 0x59, 0x8a, 0x2b, 0x92, 0x89, 0x5c, 0xa3, 0xb1, 0x91, 0xc4, 0x16, 0x69, 0x4a, 0x95, 0x23, + 0x59, 0xc2, 0x4a, 0x75, 0x0b, 0x5f, 0xb6, 0x4b, 0xf2, 0x91, 0xda, 0x88, 0xdc, 0xd9, 0xcc, 0x0e, + 0x25, 0x13, 0x81, 0x8a, 0xc0, 0xe8, 0xa9, 0xa7, 0x02, 0xb9, 0x14, 0x39, 0x14, 0xb9, 0xf4, 0x4f, + 0x4e, 0x3d, 0x15, 0x08, 0xa0, 0x8b, 0x6f, 0x0d, 0x7a, 0x28, 0x8c, 0xf6, 0xd0, 0x20, 0xe8, 0xa1, + 0x96, 0x7a, 0xc8, 0xa1, 0x07, 0x17, 0xe8, 0xb1, 0x87, 0x62, 0x67, 0x76, 0xd7, 0x4b, 0x9a, 0xe1, + 0x1f, 0xd7, 0x48, 0x2e, 0xc4, 0xee, 0xbc, 0xf7, 0xbe, 0x79, 0xf3, 0xcd, 0x9b, 0x6f, 0x66, 0x96, + 0xf8, 0x8d, 0x7d, 0x70, 0xf2, 0x26, 0x2d, 0x38, 0xd5, 0x5d, 0x68, 0x19, 0x05, 0x06, 0x0d, 0xd3, + 0xe1, 0xcc, 0xe0, 0x26, 0xb5, 0x0a, 0x76, 0xbb, 0xd2, 0x34, 0xab, 0x7a, 0xb5, 0xed, 0x70, 0xda, + 0x32, 0x6c, 0x33, 0x6f, 0x33, 0xca, 0x29, 0x49, 0xcb, 0x90, 0xbc, 0x0c, 0xc9, 0x87, 0x43, 0xd2, + 0xb9, 0x86, 0xc9, 0x77, 0xdb, 0x95, 0x7c, 0x95, 0xb6, 0x0a, 0x0d, 0xda, 0xa0, 0x05, 0x11, 0x52, + 0x69, 0xd7, 0xc5, 0x9b, 0x78, 0x11, 0x4f, 0x12, 0x2a, 0x7d, 0xbe, 0x41, 0x69, 0xa3, 0x09, 0x05, + 0xc3, 0x36, 0x0b, 0x86, 0x65, 0x51, 0x2e, 0x50, 0x1c, 0xcf, 0xfa, 0xb2, 0x67, 0x0d, 0x30, 0xa0, + 0x65, 0xf3, 0x8e, 0x67, 0x4c, 0x77, 0x27, 0x0e, 0x8c, 0x51, 0x16, 0x04, 0x76, 0xdb, 0xa8, 0x1d, + 0x46, 0x9d, 0x1f, 0x30, 0x62, 0x5a, 0x79, 0x0f, 0xaa, 0xdc, 0x73, 0x2c, 0x8c, 0x40, 0x0d, 0x6b, + 0xd7, 0x02, 0x62, 0xd2, 0x17, 0x07, 0x04, 0xf0, 0x8e, 0x0d, 0x7e, 0x06, 0x73, 0xdd, 0x7e, 0x61, + 0x93, 0xda, 0x6d, 0xda, 0x07, 0x07, 0xac, 0xfd, 0x9e, 0x01, 0x64, 0x7b, 0x7c, 0x4c, 0x38, 0xd0, + 0xbb, 0x3c, 0xd4, 0x8f, 0x11, 0xc6, 0xab, 0xc0, 0x35, 0x78, 0xbf, 0x0d, 0x0e, 0x27, 0xe7, 0x71, + 0xc2, 0x32, 0x5a, 0xe0, 0xd8, 0x46, 0x15, 0x14, 0x94, 0x45, 0x0b, 0x09, 0xed, 0x49, 0x03, 0x21, + 0x78, 0xd2, 0x7d, 0x51, 0x22, 0xc2, 0x20, 0x9e, 0xc9, 0x5d, 0x3c, 0xcb, 0xc0, 0xb1, 0xa9, 0xe5, + 0x80, 0x5e, 0xa7, 0xac, 0x65, 0x70, 0x25, 0x9a, 0x45, 0x0b, 0x33, 0x4b, 0x6f, 0xe4, 0xbf, 0x7e, + 0xf2, 0xf3, 0xa2, 0x4b, 0x19, 0xb5, 0x22, 0x82, 0x4a, 0xb4, 0x06, 0xda, 0x0c, 0xeb, 0x6a, 0x53, + 0x3f, 0x8a, 0xe1, 0x64, 0xc8, 0x93, 0x6c, 0xe3, 0x98, 0xa4, 0x5d, 0xa4, 0x96, 0x5c, 0x52, 0x07, + 0x75, 0xb1, 0x29, 0x3c, 0x8b, 0xe7, 0x1e, 0x1c, 0xa2, 0xe3, 0xc3, 0x17, 0x34, 0xb0, 0x9b, 0x46, + 0x15, 0x6a, 0xd9, 0x4a, 0x27, 0x3b, 0xef, 0xd8, 0x50, 0xd5, 0x3c, 0x28, 0x72, 0x0b, 0x27, 0xab, + 0x0c, 0x0c, 0x2e, 0xd3, 0x17, 0x63, 0x4b, 0x2e, 0xbd, 0x36, 0x08, 0xb9, 0x24, 0xdc, 0x3d, 0xca, + 0x34, 0x2c, 0xa3, 0xdd, 0x94, 0xc9, 0x06, 0x9e, 0x66, 0xb2, 0x23, 0x09, 0x16, 0x15, 0x60, 0x97, + 0x06, 0x81, 0x79, 0x89, 0xf9, 0x68, 0x49, 0x2f, 0x5e, 0xc0, 0x15, 0x70, 0x8a, 0x81, 0x43, 0xdb, + 0xac, 0x0a, 0xfa, 0x3e, 0x30, 0xc7, 0xa4, 0x96, 0x32, 0xe9, 0x72, 0x5f, 0x9c, 0xfc, 0xea, 0x08, + 0x21, 0x6d, 0xd6, 0xb7, 0xde, 0x91, 0x46, 0xf2, 0x16, 0x8e, 0xb7, 0x80, 0x1b, 0x35, 0x83, 0x1b, + 0xca, 0x94, 0xe8, 0x3b, 0xdb, 0xd3, 0xb7, 0x64, 0x65, 0x15, 0xf8, 0x06, 0x70, 0x63, 0xa7, 0x63, + 0x83, 0x16, 0x44, 0x90, 0x4d, 0x3c, 0xeb, 0x74, 0x1c, 0x0e, 0x2d, 0x3d, 0x00, 0x39, 0x25, 0x40, + 0x2e, 0xf6, 0x80, 0x6c, 0x0b, 0xaf, 0xa7, 0xa1, 0x66, 0x64, 0xf8, 0x86, 0x0f, 0xb8, 0x8e, 0x27, + 0x5d, 0xaa, 0x95, 0x98, 0x40, 0x99, 0x1f, 0x52, 0x10, 0xdb, 0x36, 0x54, 0x5d, 0x98, 0xe2, 0xec, + 0xc7, 0x87, 0xd3, 0x6e, 0x5c, 0xbe, 0x51, 0xd5, 0xc5, 0x54, 0x09, 0x14, 0xb2, 0x86, 0x5f, 0x60, + 0x50, 0x07, 0xc6, 0x4c, 0xab, 0xa1, 0xcb, 0xc9, 0x73, 0x94, 0x78, 0x36, 0xba, 0x90, 0x5c, 0x3a, + 0xdf, 0x77, 0x94, 0x1a, 0xd4, 0x45, 0x5a, 0xa9, 0x20, 0x4c, 0xb6, 0x3b, 0xe4, 0x0e, 0x56, 0x6a, + 0xd0, 0x04, 0x0e, 0x35, 0x5d, 0xda, 0xa0, 0x16, 0x20, 0x26, 0x46, 0x40, 0x3c, 0xeb, 0x45, 0x6b, + 0x5e, 0xb0, 0x8f, 0xfb, 0x23, 0x3c, 0x57, 0x33, 0x1d, 0xa3, 0xd2, 0xec, 0x07, 0x8c, 0x47, 0x00, + 0x3e, 0xe7, 0x87, 0xf7, 0x20, 0x5f, 0x4b, 0xfc, 0xf1, 0x9d, 0x98, 0x7c, 0x56, 0x7f, 0x85, 0x70, + 0x72, 0xdd, 0x74, 0x46, 0x5c, 0xb3, 0xaf, 0xe0, 0xe9, 0xa6, 0x51, 0x81, 0xa6, 0x5e, 0x37, 0x9b, + 0x1c, 0x98, 0xb7, 0x76, 0x93, 0xa2, 0x6d, 0x45, 0x34, 0x91, 0x0b, 0xf8, 0x34, 0x03, 0x9b, 0x32, + 0xae, 0xd7, 0x4d, 0x68, 0xd6, 0x1c, 0x25, 0x9a, 0x8d, 0x2e, 0x24, 0xb4, 0x69, 0xd9, 0xb8, 0x22, + 0xda, 0xc8, 0xeb, 0xf8, 0x8c, 0xe7, 0xe4, 0x70, 0x83, 0xb7, 0x1d, 0xdf, 0x77, 0x52, 0xf8, 0x12, + 0x69, 0xdb, 0x16, 0x26, 0x19, 0xa1, 0x7e, 0x1a, 0xc3, 0x29, 0x99, 0xa7, 0x5c, 0xbe, 0x6b, 0x1c, + 0x5a, 0xe4, 0x2c, 0x8e, 0x71, 0xb0, 0x0c, 0x8b, 0x8b, 0xa2, 0x48, 0x68, 0xde, 0xdb, 0x33, 0x08, + 0x4f, 0x0a, 0x47, 0xdb, 0x66, 0x4d, 0x2c, 0xb1, 0x84, 0xe6, 0x3e, 0x92, 0x2c, 0x4e, 0xd6, 0xc0, + 0xa9, 0x32, 0x53, 0x28, 0x9c, 0x92, 0x94, 0x23, 0x0d, 0x35, 0x91, 0x34, 0x8e, 0xfb, 0x04, 0x2b, + 0xd3, 0x59, 0xb4, 0x10, 0xd7, 0x82, 0x77, 0xb2, 0x85, 0x63, 0x82, 0x14, 0x39, 0xa4, 0xe4, 0xd2, + 0x9b, 0x83, 0xca, 0xb5, 0x77, 0x5c, 0xf9, 0x75, 0x11, 0x5a, 0xb6, 0x38, 0xeb, 0x68, 0x1e, 0x0e, + 0xd1, 0x71, 0x32, 0xb4, 0x53, 0x79, 0xf3, 0xff, 0xf6, 0x58, 0xb0, 0xcb, 0x4f, 0xe2, 0x25, 0x76, + 0x18, 0x91, 0x5c, 0xc5, 0x98, 0x1e, 0x58, 0xc0, 0x74, 0x57, 0xd8, 0x95, 0x84, 0x58, 0x65, 0xe9, + 0x1e, 0xfc, 0x3b, 0x26, 0x1c, 0xf8, 0xd5, 0x95, 0x10, 0xde, 0x6e, 0x4b, 0x97, 0x52, 0x9c, 0x7e, + 0x1e, 0x4a, 0x31, 0xf3, 0x3f, 0x29, 0xc5, 0xf5, 0x40, 0xd9, 0xa7, 0x46, 0x56, 0xf6, 0xe8, 0x83, + 0x43, 0x14, 0xa8, 0x78, 0x11, 0xc7, 0x1b, 0xc0, 0x85, 0x5c, 0x78, 0xa2, 0x35, 0xaa, 0xdc, 0x68, + 0xa7, 0x1a, 0xf2, 0x25, 0x7d, 0x15, 0x27, 0x43, 0xd3, 0xe8, 0x16, 0xd8, 0x1e, 0x74, 0xbc, 0x62, + 0x74, 0x1f, 0xc9, 0x19, 0x3c, 0xb5, 0x6f, 0x34, 0xdb, 0x7e, 0x1d, 0xca, 0x97, 0x6b, 0x91, 0x37, + 0x51, 0xfa, 0x1d, 0x9c, 0xea, 0x9d, 0xaa, 0x71, 0xe2, 0xd5, 0x9f, 0x22, 0x3c, 0x1d, 0x9e, 0x7c, + 0x52, 0xc4, 0x53, 0x26, 0x87, 0x96, 0xa3, 0x20, 0x51, 0x35, 0x8b, 0xe3, 0x54, 0x8d, 0x26, 0x43, + 0xc9, 0xeb, 0x38, 0x26, 0xcf, 0x3a, 0x4a, 0x44, 0x80, 0x28, 0x3d, 0x20, 0x65, 0xd7, 0x28, 0x28, + 0xf0, 0xfc, 0xd4, 0x3d, 0x7c, 0xfa, 0xa6, 0x50, 0xb6, 0x67, 0x3f, 0x0f, 0x2c, 0xe0, 0x54, 0xdd, + 0x30, 0x9b, 0xba, 0x59, 0x0f, 0x14, 0x50, 0xac, 0xd1, 0xb8, 0x36, 0xe3, 0xb6, 0xaf, 0xd5, 0x7d, + 0x65, 0x53, 0x6f, 0xe1, 0xd3, 0x6e, 0xe6, 0xc5, 0xce, 0xb6, 0x29, 0x3a, 0x1c, 0xd2, 0xd9, 0xcb, + 0x38, 0xe1, 0x98, 0x1c, 0xf4, 0x50, 0x8f, 0x71, 0xb7, 0xe1, 0xb6, 0xd1, 0x02, 0x75, 0x4f, 0xd2, + 0xe7, 0xea, 0xcf, 0x08, 0x50, 0x6f, 0xe3, 0x29, 0x57, 0xc4, 0x24, 0xcc, 0xcc, 0xe0, 0x4a, 0x91, + 0xc5, 0x26, 0x81, 0x65, 0x94, 0xfa, 0x78, 0x12, 0x27, 0x97, 0x6d, 0x9b, 0xd1, 0x7d, 0xa3, 0xe9, + 0x76, 0xb6, 0xf8, 0x54, 0x67, 0xc5, 0x99, 0x2f, 0x8f, 0x50, 0x4c, 0xd6, 0xb8, 0xd8, 0xa9, 0x87, + 0x90, 0xf6, 0x7d, 0x3f, 0xa1, 0xe8, 0x58, 0x09, 0x15, 0x13, 0x5f, 0x1e, 0x21, 0xb4, 0x24, 0x7a, + 0x90, 0x00, 0xe4, 0x06, 0x8e, 0xdb, 0x86, 0xe3, 0xb8, 0x62, 0x2c, 0x8e, 0x0a, 0xc9, 0xa5, 0x57, + 0x07, 0x81, 0x6d, 0x79, 0xbe, 0x5a, 0x10, 0x45, 0xde, 0x0d, 0x74, 0x70, 0x4a, 0x54, 0xcd, 0xe5, + 0x41, 0xf1, 0x21, 0x1a, 0xfa, 0x4a, 0xe0, 0xdd, 0x6e, 0x09, 0x8c, 0x0d, 0x57, 0xd6, 0x30, 0xe2, + 0x60, 0xf5, 0x7b, 0x0d, 0xa7, 0xaa, 0xd4, 0xb2, 0xa0, 0x2a, 0xb7, 0xf1, 0x86, 0xab, 0xf9, 0xa7, + 0x04, 0xa9, 0xb3, 0x41, 0xbb, 0x26, 0x9a, 0xc9, 0x4d, 0x9c, 0xe4, 0x6d, 0xcb, 0x82, 0xa6, 0xee, + 0x9e, 0xa0, 0x95, 0xb8, 0x60, 0xf9, 0x42, 0xaf, 0x56, 0x99, 0x1c, 0x76, 0xa8, 0xf8, 0x15, 0xbe, + 0x62, 0x65, 0x60, 0x1e, 0x3c, 0x7f, 0x9b, 0xfa, 0xb0, 0x8d, 0x13, 0x25, 0x6a, 0xd5, 0xcd, 0xc6, + 0xf0, 0xe2, 0xee, 0x57, 0x5f, 0x67, 0xf0, 0x14, 0xa7, 0x7b, 0x60, 0x79, 0xbb, 0xa5, 0x7c, 0x51, + 0x37, 0x70, 0x4a, 0x16, 0x53, 0x69, 0xd7, 0xb0, 0x1a, 0xe0, 0x4a, 0x08, 0xb9, 0x8a, 0xa3, 0xb4, + 0xf2, 0xde, 0x18, 0xe7, 0x6b, 0xa1, 0xc2, 0x6e, 0x8c, 0xfa, 0x37, 0x84, 0xb1, 0x9f, 0xa4, 0x63, + 0x93, 0x2d, 0x1c, 0x3f, 0xa0, 0x6c, 0xaf, 0x49, 0x8d, 0x9a, 0x92, 0x14, 0xf3, 0xfe, 0xdd, 0x81, + 0x87, 0xea, 0x20, 0x32, 0xff, 0x43, 0x2f, 0x4c, 0xce, 0x79, 0x80, 0xe2, 0x8e, 0x6c, 0xd7, 0x70, + 0x76, 0xc5, 0xce, 0x9d, 0xd0, 0xc4, 0x73, 0x7a, 0x17, 0x9f, 0xee, 0x72, 0xef, 0xc3, 0xea, 0x72, + 0x98, 0xd5, 0xe4, 0xd2, 0x77, 0x06, 0x65, 0xe1, 0x63, 0x95, 0xa8, 0xc5, 0xe1, 0x1e, 0x0f, 0x4f, + 0xc1, 0x67, 0x08, 0xcf, 0x69, 0x21, 0xdf, 0xae, 0x5b, 0x00, 0xb9, 0x1e, 0xda, 0x4f, 0x25, 0x79, + 0x17, 0xfa, 0xee, 0xa7, 0x32, 0xaa, 0xef, 0x96, 0x2a, 0xcf, 0xca, 0x91, 0xe1, 0x57, 0x06, 0x89, + 0x31, 0xe4, 0xb8, 0x1c, 0x3a, 0x31, 0x5e, 0xfa, 0x2b, 0xc2, 0x2f, 0xf5, 0xbd, 0x71, 0x91, 0x34, + 0x3e, 0xbb, 0x5a, 0xde, 0xd1, 0xb5, 0xed, 0x2d, 0x7d, 0x65, 0x53, 0xdb, 0x58, 0xde, 0xd1, 0x6f, + 0x96, 0x57, 0x96, 0x7f, 0xb0, 0xbe, 0x93, 0x9a, 0x20, 0xff, 0x87, 0xe7, 0x7a, 0x6c, 0x2b, 0x9b, + 0x9a, 0x5e, 0xd2, 0xca, 0xcb, 0x3b, 0xe5, 0x14, 0x22, 0x19, 0x9c, 0xee, 0x63, 0xd6, 0xca, 0x5b, + 0xeb, 0xcb, 0xa5, 0x72, 0x2a, 0x42, 0xce, 0xe1, 0x17, 0x7b, 0xec, 0x5a, 0x79, 0xf9, 0x66, 0x6a, + 0x92, 0xbc, 0x8a, 0xb3, 0x4f, 0x19, 0x56, 0xca, 0x9a, 0xb6, 0x76, 0x7b, 0x55, 0xdf, 0x2c, 0xde, + 0x2a, 0x97, 0x76, 0xb6, 0x53, 0x53, 0x7d, 0xbc, 0x8a, 0xda, 0xe6, 0xbb, 0xe5, 0xdb, 0xd2, 0xb9, + 0x7c, 0xbb, 0x54, 0xde, 0x4e, 0xc5, 0x96, 0xfe, 0x95, 0xc2, 0x89, 0x92, 0xf8, 0xe8, 0xb0, 0xbc, + 0xb5, 0x46, 0x3e, 0x8c, 0xe0, 0xe8, 0x2a, 0x70, 0x72, 0x71, 0xe8, 0xd5, 0x53, 0x4c, 0x5a, 0x7a, + 0x7e, 0xc4, 0x2b, 0xaa, 0xfa, 0x1b, 0xf4, 0xf9, 0x67, 0x11, 0x74, 0xfc, 0x07, 0xa5, 0x56, 0xbf, + 0x72, 0xaf, 0x9a, 0x73, 0xb7, 0x9d, 0x5c, 0xcb, 0xb0, 0x8c, 0x06, 0xb4, 0xc0, 0xe2, 0xb9, 0x8a, + 0xe1, 0x98, 0xd5, 0x5c, 0x8b, 0x5a, 0x26, 0xa7, 0x6c, 0x31, 0xdb, 0xd7, 0xc7, 0xe1, 0x86, 0x55, + 0x33, 0x58, 0x2d, 0x70, 0xdb, 0x07, 0x27, 0x67, 0xd2, 0x9c, 0x69, 0xd5, 0x99, 0xe1, 0x70, 0xd6, + 0xae, 0xf2, 0x36, 0x83, 0x1c, 0x03, 0xa3, 0x76, 0xff, 0x2f, 0xff, 0xf8, 0x28, 0x72, 0x85, 0x5c, + 0xf6, 0x3e, 0x1d, 0x14, 0x82, 0xb5, 0xed, 0x14, 0x3e, 0x08, 0x9e, 0x0f, 0xbb, 0x3e, 0x1a, 0x78, + 0x96, 0x43, 0xf2, 0x1f, 0x84, 0x27, 0xdd, 0x9d, 0x90, 0xcc, 0x0f, 0x3f, 0x31, 0x48, 0x12, 0x16, + 0x46, 0x3d, 0x5a, 0xa8, 0x9f, 0x7c, 0xf3, 0x2c, 0xe4, 0xc9, 0xe2, 0x38, 0x2c, 0x90, 0x5f, 0x44, + 0xf0, 0x8b, 0xe1, 0x45, 0x2a, 0x77, 0x13, 0x18, 0xcc, 0x46, 0x68, 0xcb, 0x49, 0x2f, 0x0e, 0x97, + 0xbc, 0x27, 0x6a, 0xa9, 0x7e, 0xea, 0xb2, 0xf1, 0xe3, 0x01, 0x6c, 0xb4, 0x1d, 0x18, 0x4a, 0x85, + 0xf4, 0xe9, 0x4f, 0xc4, 0x01, 0x33, 0x39, 0x08, 0x26, 0xae, 0xab, 0xd7, 0xc6, 0x60, 0xc2, 0x2b, + 0x87, 0x82, 0x21, 0xc7, 0x7f, 0x0d, 0x5d, 0x22, 0xff, 0x44, 0x38, 0x26, 0x0f, 0x77, 0x64, 0xe0, + 0xd7, 0x8d, 0xae, 0x03, 0x60, 0xfa, 0x6c, 0x5e, 0x7e, 0x59, 0xcb, 0xfb, 0x5f, 0xd6, 0xf2, 0xe5, + 0x96, 0xcd, 0x3b, 0xea, 0x2f, 0xdd, 0x91, 0xeb, 0xcf, 0x63, 0xe4, 0xc3, 0x06, 0x7e, 0xe5, 0xd2, + 0x33, 0x2d, 0x84, 0x7f, 0x23, 0x4c, 0x9e, 0x96, 0x6b, 0x72, 0x65, 0xf0, 0xb7, 0x98, 0xaf, 0x91, + 0xf7, 0xf4, 0x08, 0x3b, 0xa1, 0x7a, 0xdf, 0xa5, 0xe4, 0xee, 0xf3, 0x2d, 0x06, 0x0e, 0xcc, 0x32, + 0x9a, 0x21, 0x36, 0x32, 0xea, 0x9c, 0xcf, 0x86, 0xcc, 0x01, 0x58, 0x91, 0x52, 0xee, 0xe6, 0x62, + 0xbb, 0xb3, 0x7c, 0xd2, 0x3b, 0x6c, 0xb1, 0xad, 0x92, 0xff, 0x1f, 0x65, 0xeb, 0x7d, 0x3f, 0x7d, + 0x71, 0xb4, 0x1d, 0x5a, 0xfd, 0xc9, 0x37, 0x30, 0xd2, 0xb4, 0xfa, 0xd2, 0x93, 0x91, 0x8a, 0x59, + 0x90, 0x09, 0xb8, 0xa3, 0xfc, 0x24, 0x82, 0x15, 0x29, 0x4d, 0xa1, 0x99, 0x2f, 0x76, 0xc4, 0xa1, + 0x98, 0x0c, 0x15, 0x34, 0xff, 0x96, 0x30, 0x86, 0xf4, 0xfd, 0xce, 0x97, 0x3e, 0x78, 0x7e, 0xd2, + 0x97, 0x1d, 0xa2, 0x7d, 0x6f, 0xa9, 0xdf, 0x1b, 0x52, 0xf8, 0x4d, 0x37, 0xdb, 0x30, 0x05, 0x95, + 0x8e, 0xb8, 0x05, 0xb8, 0x14, 0xfd, 0x3a, 0x82, 0xcf, 0xf5, 0xa3, 0xc8, 0x1c, 0xb6, 0xfe, 0xbb, + 0xee, 0x64, 0x63, 0x50, 0xf4, 0xfb, 0x6f, 0x81, 0xa2, 0x22, 0xb9, 0x31, 0x8e, 0x36, 0xe8, 0x95, + 0x8e, 0xee, 0xf6, 0x59, 0xf8, 0x20, 0xb8, 0x49, 0x1e, 0xa6, 0x0b, 0x0f, 0x8e, 0x50, 0xf4, 0xcf, + 0x47, 0xe8, 0x95, 0xa1, 0x2b, 0xfc, 0xfe, 0x9f, 0x94, 0xc8, 0x0d, 0x54, 0xfc, 0x19, 0x7a, 0xf8, + 0x28, 0x33, 0xf1, 0xc5, 0xa3, 0xcc, 0xc4, 0xe3, 0x47, 0x19, 0xf4, 0xe1, 0x71, 0x06, 0xfd, 0xf6, + 0x38, 0x83, 0x3e, 0x3f, 0xce, 0xa0, 0x87, 0xc7, 0x19, 0xf4, 0xf7, 0xe3, 0x0c, 0xfa, 0xea, 0x38, + 0x33, 0xf1, 0xf8, 0x38, 0x83, 0x7e, 0x7e, 0x92, 0x99, 0x78, 0x70, 0x92, 0x41, 0x0f, 0x4f, 0x32, + 0x13, 0x5f, 0x9c, 0x64, 0x26, 0xee, 0x6e, 0x35, 0xa8, 0xbd, 0xd7, 0xc8, 0xef, 0xd3, 0x26, 0x07, + 0xc6, 0x8c, 0x7c, 0xdb, 0x29, 0x88, 0x87, 0x3a, 0x65, 0xad, 0x9c, 0xab, 0xd4, 0x66, 0x0d, 0x58, + 0xce, 0x37, 0x17, 0xec, 0x4a, 0x83, 0x16, 0xe0, 0x1e, 0xf7, 0x3e, 0xdf, 0xf7, 0xf9, 0xb3, 0xa0, + 0x12, 0x13, 0xba, 0x7c, 0xf9, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xc9, 0xb0, 0x21, 0x60, 0x9d, + 0x19, 0x00, 0x00, } -func (m *ApprovalReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TunnelType != 0 { - i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.TunnelType)) - i-- - dAtA[i] = 0x40 +func (x GetResponseFormatCode) String() string { + s, ok := GetResponseFormatCode_name[int32(x)] + if ok { + return s } - if len(m.ConnectedRegion) > 0 { - i -= len(m.ConnectedRegion) - copy(dAtA[i:], m.ConnectedRegion) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.ConnectedRegion))) - i-- - dAtA[i] = 0x3a - } - if len(m.Annotations) > 0 { - for k := range m.Annotations { - v := m.Annotations[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x32 - } + return strconv.Itoa(int(x)) +} +func (this *GetRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if len(m.Labels) > 0 { - for k := range m.Labels { - v := m.Labels[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x2a + + that1, ok := that.(*GetRequest) + if !ok { + that2, ok := that.(GetRequest) + if ok { + that1 = &that2 + } else { + return false } } - if m.Passport != nil { - { - size, err := m.Passport.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if m.State != 0 { - i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x18 + if this.Namespace != that1.Namespace { + return false } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0x12 + if this.Name != that1.Name { + return false } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa + if this.ResponseFormat != that1.ResponseFormat { + return false } - return len(dAtA) - i, nil + return true } - -func (m *ConfigReq) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *GetResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return dAtA[:n], nil -} - -func (m *ConfigReq) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} -func (m *ConfigReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Token) > 0 { - i -= len(m.Token) - copy(dAtA[i:], m.Token) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Token))) - i-- - dAtA[i] = 0x1a + that1, ok := that.(*GetResponse) + if !ok { + that2, ok := that.(GetResponse) + if ok { + that1 = &that2 + } else { + return false + } } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0x12 + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if len(m.Namespace) > 0 { - i -= len(m.Namespace) - copy(dAtA[i:], m.Namespace) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) - i-- - dAtA[i] = 0xa + if !this.Object.Equal(that1.Object) { + return false } - return len(dAtA) - i, nil -} - -func (m *ObjectChangeResp) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if !this.CreateForm.Equal(that1.CreateForm) { + return false } - return dAtA[:n], nil -} - -func (m *ObjectChangeResp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ObjectChangeResp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Obj != nil { - { - size, err := m.Obj.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + if !this.ReplaceForm.Equal(that1.ReplaceForm) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.ReferringObjects) != len(that1.ReferringObjects) { + return false + } + for i := range this.ReferringObjects { + if !this.ReferringObjects[i].Equal(that1.ReferringObjects[i]) { + return false } - i-- - dAtA[i] = 0xa } - return len(dAtA) - i, nil -} - -func (m *ConfigResp) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if len(this.DeletedReferredObjects) != len(that1.DeletedReferredObjects) { + return false } - return dAtA[:n], nil -} - -func (m *ConfigResp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ConfigResp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Hash) > 0 { - i -= len(m.Hash) - copy(dAtA[i:], m.Hash) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Hash))) - i-- - dAtA[i] = 0x62 + for i := range this.DeletedReferredObjects { + if !this.DeletedReferredObjects[i].Equal(that1.DeletedReferredObjects[i]) { + return false + } } - if len(m.Workload) > 0 { - for k := range m.Workload { - v := m.Workload[k] - baseI := i - if v != nil { - { - size, err := v.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x5a + if len(this.DisabledReferredObjects) != len(that1.DisabledReferredObjects) { + return false + } + for i := range this.DisabledReferredObjects { + if !this.DisabledReferredObjects[i].Equal(that1.DisabledReferredObjects[i]) { + return false } } - return len(dAtA) - i, nil + return true } - -func (m *RegistrationCreateRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *ListRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return dAtA[:n], nil -} - -func (m *RegistrationCreateRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} -func (m *RegistrationCreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Spec != nil { - { - size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + that1, ok := that.(*ListRequest) + if !ok { + that2, ok := that.(ListRequest) + if ok { + that1 = &that2 + } else { + return false } - i-- - dAtA[i] = 0x12 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return len(dAtA) - i, nil -} - -func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { - offset -= sovPublicCustomapi(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ + if this.Namespace != that1.Namespace { + return false } - dAtA[offset] = uint8(v) - return base -} -func (m *ListBySiteReq) Size() (n int) { - if m == nil { - return 0 + if this.LabelFilter != that1.LabelFilter { + return false } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if len(this.ReportFields) != len(that1.ReportFields) { + return false } - l = len(m.SiteName) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } } - return n + if len(this.ReportStatusFields) != len(that1.ReportStatusFields) { + return false + } + for i := range this.ReportStatusFields { + if this.ReportStatusFields[i] != that1.ReportStatusFields[i] { + return false + } + } + return true } +func (this *ListResponseItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ListStateReq) Size() (n int) { - if m == nil { - return 0 + that1, ok := that.(*ListResponseItem) + if !ok { + that2, ok := that.(ListResponseItem) + if ok { + that1 = &that2 + } else { + return false + } } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if m.State != 0 { - n += 1 + sovPublicCustomapi(uint64(m.State)) + if this.Tenant != that1.Tenant { + return false } - return n -} - -func (m *ApprovalReq) Size() (n int) { - if m == nil { - return 0 + if this.Namespace != that1.Namespace { + return false } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if this.Name != that1.Name { + return false } - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if this.Uid != that1.Uid { + return false } - if m.State != 0 { - n += 1 + sovPublicCustomapi(uint64(m.State)) + if this.Description != that1.Description { + return false } - if m.Passport != nil { - l = m.Passport.Size() - n += 1 + l + sovPublicCustomapi(uint64(l)) + if this.Disabled != that1.Disabled { + return false } - if len(m.Labels) > 0 { - for k, v := range m.Labels { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) - } + if len(this.Labels) != len(that1.Labels) { + return false } - if len(m.Annotations) > 0 { - for k, v := range m.Annotations { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false } } - l = len(m.ConnectedRegion) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if len(this.Annotations) != len(that1.Annotations) { + return false } - if m.TunnelType != 0 { - n += 1 + sovPublicCustomapi(uint64(m.TunnelType)) + for i := range this.Annotations { + if this.Annotations[i] != that1.Annotations[i] { + return false + } } - return n -} - -func (m *ConfigReq) Size() (n int) { - if m == nil { - return 0 + if !this.OwnerView.Equal(that1.OwnerView) { + return false } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if !this.Metadata.Equal(that1.Metadata) { + return false } - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false } - l = len(m.Token) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if !this.Object.Equal(that1.Object) { + return false } - return n + if !this.GetSpec.Equal(that1.GetSpec) { + return false + } + return true } +func (this *ListResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ObjectChangeResp) Size() (n int) { - if m == nil { - return 0 + that1, ok := that.(*ListResponse) + if !ok { + that2, ok := that.(ListResponse) + if ok { + that1 = &that2 + } else { + return false + } } - var l int - _ = l - if m.Obj != nil { - l = m.Obj.Size() - n += 1 + l + sovPublicCustomapi(uint64(l)) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return n -} - -func (m *ConfigResp) Size() (n int) { - if m == nil { - return 0 + if len(this.Items) != len(that1.Items) { + return false } - var l int - _ = l - if len(m.Workload) > 0 { - for k, v := range m.Workload { - _ = k - _ = v - l = 0 - if v != nil { - l = v.Size() - l += 1 + sovPublicCustomapi(uint64(l)) - } - mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + l - n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false } } - l = len(m.Hash) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if len(this.Errors) != len(that1.Errors) { + return false } - return n + for i := range this.Errors { + if !this.Errors[i].Equal(that1.Errors[i]) { + return false + } + } + return true } +func (this *DeleteRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *RegistrationCreateRequest) Size() (n int) { - if m == nil { - return 0 + that1, ok := that.(*DeleteRequest) + if !ok { + that2, ok := that.(DeleteRequest) + if ok { + that1 = &that2 + } else { + return false + } } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCustomapi(uint64(l)) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovPublicCustomapi(uint64(l)) + if this.Namespace != that1.Namespace { + return false } - return n + if this.Name != that1.Name { + return false + } + if this.FailIfReferred != that1.FailIfReferred { + return false + } + return true } +func (this *ListBySiteReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func sovPublicCustomapi(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozPublicCustomapi(x uint64) (n int) { - return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *ListBySiteReq) String() string { - if this == nil { - return "nil" + that1, ok := that.(*ListBySiteReq) + if !ok { + that2, ok := that.(ListBySiteReq) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&ListBySiteReq{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `SiteName:` + fmt.Sprintf("%v", this.SiteName) + `,`, - `}`, - }, "") - return s -} -func (this *ListStateReq) String() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&ListStateReq{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, - `}`, - }, "") - return s + if this.Namespace != that1.Namespace { + return false + } + if this.SiteName != that1.SiteName { + return false + } + return true } -func (this *ApprovalReq) String() string { - if this == nil { - return "nil" +func (this *ListStateReq) Equal(that interface{}) bool { + if that == nil { + return this == nil } - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) + + that1, ok := that.(*ListStateReq) + if !ok { + that2, ok := that.(ListStateReq) + if ok { + that1 = &that2 + } else { + return false + } } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - mapStringForLabels += "}" - keysForAnnotations := make([]string, 0, len(this.Annotations)) - for k, _ := range this.Annotations { - keysForAnnotations = append(keysForAnnotations, k) + if this.Namespace != that1.Namespace { + return false } - github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) - mapStringForAnnotations := "map[string]string{" - for _, k := range keysForAnnotations { - mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + if this.State != that1.State { + return false } - mapStringForAnnotations += "}" - s := strings.Join([]string{`&ApprovalReq{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, - `Passport:` + strings.Replace(fmt.Sprintf("%v", this.Passport), "Passport", "Passport", 1) + `,`, - `Labels:` + mapStringForLabels + `,`, - `Annotations:` + mapStringForAnnotations + `,`, - `ConnectedRegion:` + fmt.Sprintf("%v", this.ConnectedRegion) + `,`, - `TunnelType:` + fmt.Sprintf("%v", this.TunnelType) + `,`, - `}`, - }, "") - return s + return true } -func (this *ConfigReq) String() string { - if this == nil { - return "nil" +func (this *ApprovalReq) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&ConfigReq{`, - `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Token:` + fmt.Sprintf("%v", this.Token) + `,`, - `}`, - }, "") - return s -} -func (this *ObjectChangeResp) String() string { - if this == nil { - return "nil" + + that1, ok := that.(*ApprovalReq) + if !ok { + that2, ok := that.(ApprovalReq) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&ObjectChangeResp{`, - `Obj:` + strings.Replace(fmt.Sprintf("%v", this.Obj), "Object", "Object", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ConfigResp) String() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - keysForWorkload := make([]string, 0, len(this.Workload)) - for k, _ := range this.Workload { - keysForWorkload = append(keysForWorkload, k) + if this.Namespace != that1.Namespace { + return false } - github_com_gogo_protobuf_sortkeys.Strings(keysForWorkload) - mapStringForWorkload := "map[string]*WorkloadContext{" - for _, k := range keysForWorkload { - mapStringForWorkload += fmt.Sprintf("%v: %v,", k, this.Workload[k]) + if this.Name != that1.Name { + return false } - mapStringForWorkload += "}" - s := strings.Join([]string{`&ConfigResp{`, - `Workload:` + mapStringForWorkload + `,`, - `Hash:` + fmt.Sprintf("%v", this.Hash) + `,`, - `}`, - }, "") - return s + if this.State != that1.State { + return false + } + if !this.Passport.Equal(that1.Passport) { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + if len(this.Annotations) != len(that1.Annotations) { + return false + } + for i := range this.Annotations { + if this.Annotations[i] != that1.Annotations[i] { + return false + } + } + if this.ConnectedRegion != that1.ConnectedRegion { + return false + } + if this.TunnelType != that1.TunnelType { + return false + } + return true } -func (this *RegistrationCreateRequest) String() string { - if this == nil { - return "nil" +func (this *ConfigReq) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&RegistrationCreateRequest{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, - `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, - `}`, - }, "") - return s + + that1, ok := that.(*ConfigReq) + if !ok { + that2, ok := that.(ConfigReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.Token != that1.Token { + return false + } + return true } -func valueToStringPublicCustomapi(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" +func (this *ObjectChangeResp) Equal(that interface{}) bool { + if that == nil { + return this == nil } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) + + that1, ok := that.(*ObjectChangeResp) + if !ok { + that2, ok := that.(ObjectChangeResp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Obj.Equal(that1.Obj) { + return false + } + return true +} +func (this *ConfigResp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ConfigResp) + if !ok { + that2, ok := that.(ConfigResp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Workload) != len(that1.Workload) { + return false + } + for i := range this.Workload { + if !this.Workload[i].Equal(that1.Workload[i]) { + return false + } + } + if this.Hash != that1.Hash { + return false + } + return true +} +func (this *RegistrationCreateRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RegistrationCreateRequest) + if !ok { + that2, ok := that.(RegistrationCreateRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *GetRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "®istration.GetRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "ResponseFormat: "+fmt.Sprintf("%#v", this.ResponseFormat)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 14) + s = append(s, "®istration.GetResponse{") + if this.Object != nil { + s = append(s, "Object: "+fmt.Sprintf("%#v", this.Object)+",\n") + } + if this.CreateForm != nil { + s = append(s, "CreateForm: "+fmt.Sprintf("%#v", this.CreateForm)+",\n") + } + if this.ReplaceForm != nil { + s = append(s, "ReplaceForm: "+fmt.Sprintf("%#v", this.ReplaceForm)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.ReferringObjects != nil { + s = append(s, "ReferringObjects: "+fmt.Sprintf("%#v", this.ReferringObjects)+",\n") + } + if this.DeletedReferredObjects != nil { + s = append(s, "DeletedReferredObjects: "+fmt.Sprintf("%#v", this.DeletedReferredObjects)+",\n") + } + if this.DisabledReferredObjects != nil { + s = append(s, "DisabledReferredObjects: "+fmt.Sprintf("%#v", this.DisabledReferredObjects)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "®istration.ListRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ReportStatusFields: "+fmt.Sprintf("%#v", this.ReportStatusFields)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponseItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 17) + s = append(s, "®istration.ListResponseItem{") + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Uid: "+fmt.Sprintf("%#v", this.Uid)+",\n") + s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") + s = append(s, "Disabled: "+fmt.Sprintf("%#v", this.Disabled)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + if this.Annotations != nil { + s = append(s, "Annotations: "+mapStringForAnnotations+",\n") + } + if this.OwnerView != nil { + s = append(s, "OwnerView: "+fmt.Sprintf("%#v", this.OwnerView)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Object != nil { + s = append(s, "Object: "+fmt.Sprintf("%#v", this.Object)+",\n") + } + if this.GetSpec != nil { + s = append(s, "GetSpec: "+fmt.Sprintf("%#v", this.GetSpec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "®istration.ListResponse{") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Errors != nil { + s = append(s, "Errors: "+fmt.Sprintf("%#v", this.Errors)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DeleteRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "®istration.DeleteRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "FailIfReferred: "+fmt.Sprintf("%#v", this.FailIfReferred)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListBySiteReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "®istration.ListBySiteReq{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "SiteName: "+fmt.Sprintf("%#v", this.SiteName)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListStateReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "®istration.ListStateReq{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ApprovalReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "®istration.ApprovalReq{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + if this.Passport != nil { + s = append(s, "Passport: "+fmt.Sprintf("%#v", this.Passport)+",\n") + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + if this.Annotations != nil { + s = append(s, "Annotations: "+mapStringForAnnotations+",\n") + } + s = append(s, "ConnectedRegion: "+fmt.Sprintf("%#v", this.ConnectedRegion)+",\n") + s = append(s, "TunnelType: "+fmt.Sprintf("%#v", this.TunnelType)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ConfigReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "®istration.ConfigReq{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Token: "+fmt.Sprintf("%#v", this.Token)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectChangeResp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "®istration.ObjectChangeResp{") + if this.Obj != nil { + s = append(s, "Obj: "+fmt.Sprintf("%#v", this.Obj)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ConfigResp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "®istration.ConfigResp{") + keysForWorkload := make([]string, 0, len(this.Workload)) + for k, _ := range this.Workload { + keysForWorkload = append(keysForWorkload, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForWorkload) + mapStringForWorkload := "map[string]*WorkloadContext{" + for _, k := range keysForWorkload { + mapStringForWorkload += fmt.Sprintf("%#v: %#v,", k, this.Workload[k]) + } + mapStringForWorkload += "}" + if this.Workload != nil { + s = append(s, "Workload: "+mapStringForWorkload+",\n") + } + s = append(s, "Hash: "+fmt.Sprintf("%#v", this.Hash)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RegistrationCreateRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "®istration.RegistrationCreateRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomAPIClient is the client API for CustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomAPIClient interface { + // Get registration + // + // x-displayName: "Get Registration" + // Get registration specification + Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) + // List + // + // x-displayName: "List Registration" + // List the set of registration in a namespace + List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) + // Change registration state + // + // x-displayName: "Registration Approve" + // RegistrationApprove approved pending registration and it can also decommission by changing state to RETIRED. + RegistrationApprove(ctx context.Context, in *ApprovalReq, opts ...grpc.CallOption) (*ObjectChangeResp, error) + // Delete + // + // x-displayName: "Delete Registration" + // Delete the specified registration + Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) + // Create registration + // + // x-displayName: "Registration Create" + // Registration request to create registration is sent by the node on first boot. User never creates registration on her own. + RegistrationCreate(ctx context.Context, in *RegistrationCreateRequest, opts ...grpc.CallOption) (*Object, error) + // Get configuration for registration + // + // x-displayName: "Registration Config" + // API endpoint for returning configuration for admitted registrations. + // It will fail with known error for non-ADMITTED registration + RegistrationConfig(ctx context.Context, in *ConfigReq, opts ...grpc.CallOption) (*ConfigResp, error) + // List Registrations By Status + // + // x-displayName: "List Registrations By State" + // API endpoint for returning Registrations by status, e.g APPROVED, NEW, or RETIRED + ListRegistrationsByState(ctx context.Context, in *ListStateReq, opts ...grpc.CallOption) (*ListResponse, error) + // List Registrations by site + // + // x-displayName: "List registrations by site" + // List all registration in site + ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq, opts ...grpc.CallOption) (*ListResponse, error) +} + +type customAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { + return &customAPIClient{cc} +} + +func (c *customAPIClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + out := new(GetResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) RegistrationApprove(ctx context.Context, in *ApprovalReq, opts ...grpc.CallOption) (*ObjectChangeResp, error) { + out := new(ObjectChangeResp) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/RegistrationApprove", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) { + out := new(types.Empty) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) RegistrationCreate(ctx context.Context, in *RegistrationCreateRequest, opts ...grpc.CallOption) (*Object, error) { + out := new(Object) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/RegistrationCreate", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) RegistrationConfig(ctx context.Context, in *ConfigReq, opts ...grpc.CallOption) (*ConfigResp, error) { + out := new(ConfigResp) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/RegistrationConfig", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) ListRegistrationsByState(ctx context.Context, in *ListStateReq, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/ListRegistrationsByState", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.registration.CustomAPI/ListRegistrationsBySite", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CustomAPIServer is the server API for CustomAPI service. +type CustomAPIServer interface { + // Get registration + // + // x-displayName: "Get Registration" + // Get registration specification + Get(context.Context, *GetRequest) (*GetResponse, error) + // List + // + // x-displayName: "List Registration" + // List the set of registration in a namespace + List(context.Context, *ListRequest) (*ListResponse, error) + // Change registration state + // + // x-displayName: "Registration Approve" + // RegistrationApprove approved pending registration and it can also decommission by changing state to RETIRED. + RegistrationApprove(context.Context, *ApprovalReq) (*ObjectChangeResp, error) + // Delete + // + // x-displayName: "Delete Registration" + // Delete the specified registration + Delete(context.Context, *DeleteRequest) (*types.Empty, error) + // Create registration + // + // x-displayName: "Registration Create" + // Registration request to create registration is sent by the node on first boot. User never creates registration on her own. + RegistrationCreate(context.Context, *RegistrationCreateRequest) (*Object, error) + // Get configuration for registration + // + // x-displayName: "Registration Config" + // API endpoint for returning configuration for admitted registrations. + // It will fail with known error for non-ADMITTED registration + RegistrationConfig(context.Context, *ConfigReq) (*ConfigResp, error) + // List Registrations By Status + // + // x-displayName: "List Registrations By State" + // API endpoint for returning Registrations by status, e.g APPROVED, NEW, or RETIRED + ListRegistrationsByState(context.Context, *ListStateReq) (*ListResponse, error) + // List Registrations by site + // + // x-displayName: "List registrations by site" + // List all registration in site + ListRegistrationsBySite(context.Context, *ListBySiteReq) (*ListResponse, error) +} + +// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomAPIServer struct { +} + +func (*UnimplementedCustomAPIServer) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedCustomAPIServer) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedCustomAPIServer) RegistrationApprove(ctx context.Context, req *ApprovalReq) (*ObjectChangeResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method RegistrationApprove not implemented") +} +func (*UnimplementedCustomAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*types.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} +func (*UnimplementedCustomAPIServer) RegistrationCreate(ctx context.Context, req *RegistrationCreateRequest) (*Object, error) { + return nil, status.Errorf(codes.Unimplemented, "method RegistrationCreate not implemented") +} +func (*UnimplementedCustomAPIServer) RegistrationConfig(ctx context.Context, req *ConfigReq) (*ConfigResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method RegistrationConfig not implemented") +} +func (*UnimplementedCustomAPIServer) ListRegistrationsByState(ctx context.Context, req *ListStateReq) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListRegistrationsByState not implemented") +} +func (*UnimplementedCustomAPIServer) ListRegistrationsBySite(ctx context.Context, req *ListBySiteReq) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListRegistrationsBySite not implemented") +} + +func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { + s.RegisterService(&_CustomAPI_serviceDesc, srv) +} + +func _CustomAPI_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Get(ctx, req.(*GetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).List(ctx, req.(*ListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_RegistrationApprove_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ApprovalReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).RegistrationApprove(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/RegistrationApprove", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).RegistrationApprove(ctx, req.(*ApprovalReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Delete(ctx, req.(*DeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_RegistrationCreate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(RegistrationCreateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).RegistrationCreate(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/RegistrationCreate", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).RegistrationCreate(ctx, req.(*RegistrationCreateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_RegistrationConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ConfigReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).RegistrationConfig(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/RegistrationConfig", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).RegistrationConfig(ctx, req.(*ConfigReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_ListRegistrationsByState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListStateReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).ListRegistrationsByState(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/ListRegistrationsByState", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).ListRegistrationsByState(ctx, req.(*ListStateReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_ListRegistrationsBySite_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListBySiteReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).ListRegistrationsBySite(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.registration.CustomAPI/ListRegistrationsBySite", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).ListRegistrationsBySite(ctx, req.(*ListBySiteReq)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.registration.CustomAPI", + HandlerType: (*CustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Get", + Handler: _CustomAPI_Get_Handler, + }, + { + MethodName: "List", + Handler: _CustomAPI_List_Handler, + }, + { + MethodName: "RegistrationApprove", + Handler: _CustomAPI_RegistrationApprove_Handler, + }, + { + MethodName: "Delete", + Handler: _CustomAPI_Delete_Handler, + }, + { + MethodName: "RegistrationCreate", + Handler: _CustomAPI_RegistrationCreate_Handler, + }, + { + MethodName: "RegistrationConfig", + Handler: _CustomAPI_RegistrationConfig_Handler, + }, + { + MethodName: "ListRegistrationsByState", + Handler: _CustomAPI_ListRegistrationsByState_Handler, + }, + { + MethodName: "ListRegistrationsBySite", + Handler: _CustomAPI_ListRegistrationsBySite_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/registration/public_customapi.proto", +} + +func (m *GetRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResponseFormat != 0 { + i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.ResponseFormat)) + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.DisabledReferredObjects) > 0 { + for iNdEx := len(m.DisabledReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DisabledReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + } + if len(m.DeletedReferredObjects) > 0 { + for iNdEx := len(m.DeletedReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DeletedReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + } + if len(m.ReferringObjects) > 0 { + for iNdEx := len(m.ReferringObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ReferringObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x22 + } + if m.ReplaceForm != nil { + { + size, err := m.ReplaceForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.CreateForm != nil { + { + size, err := m.CreateForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Object != nil { + { + size, err := m.Object.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ReportStatusFields) > 0 { + for iNdEx := len(m.ReportStatusFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportStatusFields[iNdEx]) + copy(dAtA[i:], m.ReportStatusFields[iNdEx]) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.ReportStatusFields[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponseItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponseItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponseItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + if m.Disabled { + i-- + if m.Disabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x60 + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x5a + } + if len(m.Annotations) > 0 { + for k := range m.Annotations { + v := m.Annotations[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x52 + } + } + if m.OwnerView != nil { + { + size, err := m.OwnerView.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if m.GetSpec != nil { + { + size, err := m.GetSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x32 + } + if m.Object != nil { + { + size, err := m.Object.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x22 + } + } + if len(m.Uid) > 0 { + i -= len(m.Uid) + copy(dAtA[i:], m.Uid) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Uid))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Errors) > 0 { + for iNdEx := len(m.Errors) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Errors[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *DeleteRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DeleteRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DeleteRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FailIfReferred { + i-- + if m.FailIfReferred { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListBySiteReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListBySiteReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListBySiteReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.SiteName) > 0 { + i -= len(m.SiteName) + copy(dAtA[i:], m.SiteName) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.SiteName))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListStateReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListStateReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListStateReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.State != 0 { + i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x10 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ApprovalReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ApprovalReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApprovalReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TunnelType != 0 { + i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.TunnelType)) + i-- + dAtA[i] = 0x40 + } + if len(m.ConnectedRegion) > 0 { + i -= len(m.ConnectedRegion) + copy(dAtA[i:], m.ConnectedRegion) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.ConnectedRegion))) + i-- + dAtA[i] = 0x3a + } + if len(m.Annotations) > 0 { + for k := range m.Annotations { + v := m.Annotations[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x32 + } + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x2a + } + } + if m.Passport != nil { + { + size, err := m.Passport.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.State != 0 { + i = encodeVarintPublicCustomapi(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ConfigReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ConfigReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ConfigReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Token) > 0 { + i -= len(m.Token) + copy(dAtA[i:], m.Token) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Token))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectChangeResp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectChangeResp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectChangeResp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Obj != nil { + { + size, err := m.Obj.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ConfigResp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ConfigResp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ConfigResp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Hash) > 0 { + i -= len(m.Hash) + copy(dAtA[i:], m.Hash) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Hash))) + i-- + dAtA[i] = 0x62 + } + if len(m.Workload) > 0 { + for k := range m.Workload { + v := m.Workload[k] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x5a + } + } + return len(dAtA) - i, nil +} + +func (m *RegistrationCreateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RegistrationCreateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RegistrationCreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *GetRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.ResponseFormat != 0 { + n += 1 + sovPublicCustomapi(uint64(m.ResponseFormat)) + } + return n +} + +func (m *GetResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Object != nil { + l = m.Object.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.CreateForm != nil { + l = m.CreateForm.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.ReplaceForm != nil { + l = m.ReplaceForm.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.ReferringObjects) > 0 { + for _, e := range m.ReferringObjects { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.DeletedReferredObjects) > 0 { + for _, e := range m.DeletedReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.DisabledReferredObjects) > 0 { + for _, e := range m.DisabledReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + return n +} + +func (m *ListRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.LabelFilter) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.ReportStatusFields) > 0 { + for _, s := range m.ReportStatusFields { + l = len(s) + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + return n +} + +func (m *ListResponseItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Uid) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + } + } + if m.Object != nil { + l = m.Object.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Tenant) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.GetSpec != nil { + l = m.GetSpec.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.OwnerView != nil { + l = m.OwnerView.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.Annotations) > 0 { + for k, v := range m.Annotations { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + } + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Disabled { + n += 2 + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ListResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + if len(m.Errors) > 0 { + for _, e := range m.Errors { + l = e.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + } + return n +} + +func (m *DeleteRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.FailIfReferred { + n += 2 + } + return n +} + +func (m *ListBySiteReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.SiteName) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ListStateReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.State != 0 { + n += 1 + sovPublicCustomapi(uint64(m.State)) + } + return n +} + +func (m *ApprovalReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.State != 0 { + n += 1 + sovPublicCustomapi(uint64(m.State)) + } + if m.Passport != nil { + l = m.Passport.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + } + } + if len(m.Annotations) > 0 { + for k, v := range m.Annotations { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + 1 + len(v) + sovPublicCustomapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + } + } + l = len(m.ConnectedRegion) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.TunnelType != 0 { + n += 1 + sovPublicCustomapi(uint64(m.TunnelType)) + } + return n +} + +func (m *ConfigReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + l = len(m.Token) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ObjectChangeResp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Obj != nil { + l = m.Obj.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *ConfigResp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Workload) > 0 { + for k, v := range m.Workload { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovPublicCustomapi(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovPublicCustomapi(uint64(len(k))) + l + n += mapEntrySize + 1 + sovPublicCustomapi(uint64(mapEntrySize)) + } + } + l = len(m.Hash) + if l > 0 { + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func (m *RegistrationCreateRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *GetRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ResponseFormat:` + fmt.Sprintf("%v", this.ResponseFormat) + `,`, + `}`, + }, "") + return s +} +func (this *GetResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForReferringObjects := "[]*ObjectRefType{" + for _, f := range this.ReferringObjects { + repeatedStringForReferringObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForReferringObjects += "}" + repeatedStringForDeletedReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DeletedReferredObjects { + repeatedStringForDeletedReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDeletedReferredObjects += "}" + repeatedStringForDisabledReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DisabledReferredObjects { + repeatedStringForDisabledReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDisabledReferredObjects += "}" + s := strings.Join([]string{`&GetResponse{`, + `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "Object", "Object", 1) + `,`, + `CreateForm:` + strings.Replace(fmt.Sprintf("%v", this.CreateForm), "CreateRequest", "CreateRequest", 1) + `,`, + `ReplaceForm:` + strings.Replace(fmt.Sprintf("%v", this.ReplaceForm), "ReplaceRequest", "ReplaceRequest", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `ReferringObjects:` + repeatedStringForReferringObjects + `,`, + `DeletedReferredObjects:` + repeatedStringForDeletedReferredObjects + `,`, + `DisabledReferredObjects:` + repeatedStringForDisabledReferredObjects + `,`, + `}`, + }, "") + return s +} +func (this *ListRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ReportStatusFields:` + fmt.Sprintf("%v", this.ReportStatusFields) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponseItem) String() string { + if this == nil { + return "nil" + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + s := strings.Join([]string{`&ListResponseItem{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Uid:` + fmt.Sprintf("%v", this.Uid) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "Object", "Object", 1) + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `GetSpec:` + strings.Replace(fmt.Sprintf("%v", this.GetSpec), "GetSpecType", "GetSpecType", 1) + `,`, + `OwnerView:` + strings.Replace(fmt.Sprintf("%v", this.OwnerView), "ViewRefType", "schema.ViewRefType", 1) + `,`, + `Annotations:` + mapStringForAnnotations + `,`, + `Description:` + fmt.Sprintf("%v", this.Description) + `,`, + `Disabled:` + fmt.Sprintf("%v", this.Disabled) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ListResponseItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ListResponseItem", "ListResponseItem", 1) + "," + } + repeatedStringForItems += "}" + repeatedStringForErrors := "[]*ErrorType{" + for _, f := range this.Errors { + repeatedStringForErrors += strings.Replace(fmt.Sprintf("%v", f), "ErrorType", "schema.ErrorType", 1) + "," + } + repeatedStringForErrors += "}" + s := strings.Join([]string{`&ListResponse{`, + `Items:` + repeatedStringForItems + `,`, + `Errors:` + repeatedStringForErrors + `,`, + `}`, + }, "") + return s +} +func (this *DeleteRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DeleteRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `FailIfReferred:` + fmt.Sprintf("%v", this.FailIfReferred) + `,`, + `}`, + }, "") + return s +} +func (this *ListBySiteReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListBySiteReq{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `SiteName:` + fmt.Sprintf("%v", this.SiteName) + `,`, + `}`, + }, "") + return s +} +func (this *ListStateReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListStateReq{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `}`, + }, "") + return s +} +func (this *ApprovalReq) String() string { + if this == nil { + return "nil" + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + s := strings.Join([]string{`&ApprovalReq{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `Passport:` + strings.Replace(fmt.Sprintf("%v", this.Passport), "Passport", "Passport", 1) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Annotations:` + mapStringForAnnotations + `,`, + `ConnectedRegion:` + fmt.Sprintf("%v", this.ConnectedRegion) + `,`, + `TunnelType:` + fmt.Sprintf("%v", this.TunnelType) + `,`, + `}`, + }, "") + return s +} +func (this *ConfigReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ConfigReq{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Token:` + fmt.Sprintf("%v", this.Token) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectChangeResp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectChangeResp{`, + `Obj:` + strings.Replace(fmt.Sprintf("%v", this.Obj), "Object", "Object", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ConfigResp) String() string { + if this == nil { + return "nil" + } + keysForWorkload := make([]string, 0, len(this.Workload)) + for k, _ := range this.Workload { + keysForWorkload = append(keysForWorkload, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForWorkload) + mapStringForWorkload := "map[string]*WorkloadContext{" + for _, k := range keysForWorkload { + mapStringForWorkload += fmt.Sprintf("%v: %v,", k, this.Workload[k]) + } + mapStringForWorkload += "}" + s := strings.Join([]string{`&ConfigResp{`, + `Workload:` + mapStringForWorkload + `,`, + `Hash:` + fmt.Sprintf("%v", this.Hash) + `,`, + `}`, + }, "") + return s +} +func (this *RegistrationCreateRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RegistrationCreateRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *GetRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseFormat", wireType) + } + m.ResponseFormat = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ResponseFormat |= GetResponseFormatCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Object == nil { + m.Object = &Object{} + } + if err := m.Object.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CreateForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CreateForm == nil { + m.CreateForm = &CreateRequest{} + } + if err := m.CreateForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReplaceForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ReplaceForm == nil { + m.ReplaceForm = &ReplaceRequest{} + } + if err := m.ReplaceForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReferringObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReferringObjects = append(m.ReferringObjects, &schema.ObjectRefType{}) + if err := m.ReferringObjects[len(m.ReferringObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DeletedReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DeletedReferredObjects = append(m.DeletedReferredObjects, &schema.ObjectRefType{}) + if err := m.DeletedReferredObjects[len(m.DeletedReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisabledReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DisabledReferredObjects = append(m.DisabledReferredObjects, &schema.ObjectRefType{}) + if err := m.DisabledReferredObjects[len(m.DisabledReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportStatusFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportStatusFields = append(m.ReportStatusFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponseItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponseItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponseItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCustomapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCustomapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Object == nil { + m.Object = &Object{} + } + if err := m.Object.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GetSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GetSpec == nil { + m.GetSpec = &GetSpecType{} + } + if err := m.GetSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OwnerView", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OwnerView == nil { + m.OwnerView = &schema.ViewRefType{} + } + if err := m.OwnerView.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Annotations == nil { + m.Annotations = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCustomapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCustomapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Annotations[mapkey] = mapvalue + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Disabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Disabled = bool(v != 0) + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ListResponseItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Errors", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Errors = append(m.Errors, &schema.ErrorType{}) + if err := m.Errors[len(m.Errors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeleteRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DeleteRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeleteRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field FailIfReferred", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FailIfReferred = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil } func (m *ListBySiteReq) Unmarshal(dAtA []byte) error { l := len(dAtA) diff --git a/pbgo/extschema/schema/registration/public_customapi.pb.gw.go b/pbgo/extschema/schema/registration/public_customapi.pb.gw.go index 79dd7689e..5e4762425 100644 --- a/pbgo/extschema/schema/registration/public_customapi.pb.gw.go +++ b/pbgo/extschema/schema/registration/public_customapi.pb.gw.go @@ -28,6 +28,166 @@ var _ status.Status var _ = runtime.String var _ = utilities.NewDoubleArray +var ( + filter_CustomAPI_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} +) + +func request_CustomAPI_Get_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_CustomAPI_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Get_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_CustomAPI_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_CustomAPI_List_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_CustomAPI_List_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_CustomAPI_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_List_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_CustomAPI_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + func request_CustomAPI_RegistrationApprove_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ApprovalReq var metadata runtime.ServerMetadata @@ -120,6 +280,97 @@ func local_request_CustomAPI_RegistrationApprove_0(ctx context.Context, marshale } +var ( + filter_CustomAPI_Delete_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} +) + +func request_CustomAPI_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_CustomAPI_Delete_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_CustomAPI_Delete_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + func request_CustomAPI_RegistrationCreate_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq RegistrationCreateRequest var metadata runtime.ServerMetadata @@ -339,6 +590,46 @@ func local_request_CustomAPI_ListRegistrationsBySite_0(ctx context.Context, mars // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CustomAPIServer) error { + mux.Handle("GET", pattern_CustomAPI_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_CustomAPI_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("POST", pattern_CustomAPI_RegistrationApprove_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -359,6 +650,26 @@ func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, }) + mux.Handle("DELETE", pattern_CustomAPI_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("POST", pattern_CustomAPI_RegistrationCreate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -480,6 +791,46 @@ func RegisterCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn * // "CustomAPIClient" to call the correct interceptors. func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CustomAPIClient) error { + mux.Handle("GET", pattern_CustomAPI_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_CustomAPI_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("POST", pattern_CustomAPI_RegistrationApprove_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -500,6 +851,26 @@ func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, }) + mux.Handle("DELETE", pattern_CustomAPI_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("POST", pattern_CustomAPI_RegistrationCreate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -584,8 +955,14 @@ func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, } var ( + pattern_CustomAPI_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "registrations", "name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "registrations"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_CustomAPI_RegistrationApprove_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"public", "namespaces", "namespace", "registration", "name", "approve"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_CustomAPI_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "registrations", "name"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_CustomAPI_RegistrationCreate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"public", "registerBootstrap"}, "", runtime.AssumeColonVerbOpt(false))) pattern_CustomAPI_RegistrationConfig_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"public", "requestConfig"}, "", runtime.AssumeColonVerbOpt(false))) @@ -596,8 +973,14 @@ var ( ) var ( + forward_CustomAPI_Get_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_List_0 = runtime.ForwardResponseMessage + forward_CustomAPI_RegistrationApprove_0 = runtime.ForwardResponseMessage + forward_CustomAPI_Delete_0 = runtime.ForwardResponseMessage + forward_CustomAPI_RegistrationCreate_0 = runtime.ForwardResponseMessage forward_CustomAPI_RegistrationConfig_0 = runtime.ForwardResponseMessage diff --git a/pbgo/extschema/schema/registration/public_customapi.vesapi.go b/pbgo/extschema/schema/registration/public_customapi.vesapi.go index 54535f0bf..0a4a8ce77 100644 --- a/pbgo/extschema/schema/registration/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/registration/public_customapi.vesapi.go @@ -12,6 +12,7 @@ import ( "strings" "github.com/gogo/protobuf/proto" + google_protobuf "github.com/gogo/protobuf/types" "github.com/grpc-ecosystem/grpc-gateway/runtime" "google.golang.org/grpc" @@ -34,6 +35,33 @@ type CustomAPIGrpcClient struct { rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) } +func (c *CustomAPIGrpcClient) doRPCDelete(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &DeleteRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.DeleteRequest", yamlReq) + } + rsp, err := c.grpcClient.Delete(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCGet(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &GetRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.GetRequest", yamlReq) + } + rsp, err := c.grpcClient.Get(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCList(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &ListRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ListRequest", yamlReq) + } + rsp, err := c.grpcClient.List(ctx, req, opts...) + return rsp, err +} + func (c *CustomAPIGrpcClient) doRPCListRegistrationsBySite(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { req := &ListBySiteReq{} if err := codec.FromYAML(yamlReq, req); err != nil { @@ -109,6 +137,12 @@ func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { grpcClient: NewCustomAPIClient(cc), } rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["Delete"] = ccl.doRPCDelete + + rpcFns["Get"] = ccl.doRPCGet + + rpcFns["List"] = ccl.doRPCList + rpcFns["ListRegistrationsBySite"] = ccl.doRPCListRegistrationsBySite rpcFns["ListRegistrationsByState"] = ccl.doRPCListRegistrationsByState @@ -132,16 +166,16 @@ type CustomAPIRestClient struct { rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) } -func (c *CustomAPIRestClient) doRPCListRegistrationsBySite(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { +func (c *CustomAPIRestClient) doRPCDelete(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") } url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) yamlReq := callOpts.YAMLReq - req := &ListBySiteReq{} + req := &DeleteRequest{} if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ListBySiteReq: %s", yamlReq, err) + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.DeleteRequest: %s", yamlReq, err) } var hReq *http.Request @@ -171,8 +205,9 @@ func (c *CustomAPIRestClient) doRPCListRegistrationsBySite(ctx context.Context, hReq = newReq q := hReq.URL.Query() _ = q + q.Add("fail_if_referred", fmt.Sprintf("%v", req.FailIfReferred)) + q.Add("name", fmt.Sprintf("%v", req.Name)) q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) - q.Add("site_name", fmt.Sprintf("%v", req.SiteName)) hReq.URL.RawQuery += q.Encode() case "delete": @@ -204,9 +239,9 @@ func (c *CustomAPIRestClient) doRPCListRegistrationsBySite(ctx context.Context, if err != nil { return nil, errors.Wrap(err, "Custom API RestClient read body") } - pbRsp := &ListResponse{} + pbRsp := &google_protobuf.Empty{} if err := codec.FromJSON(string(body), pbRsp); err != nil { - return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ListResponse", body) + return nil, errors.Wrapf(err, "JSON Response %s is not of type *google.protobuf.Empty", body) } if callOpts.OutCallResponse != nil { @@ -216,16 +251,16 @@ func (c *CustomAPIRestClient) doRPCListRegistrationsBySite(ctx context.Context, return pbRsp, nil } -func (c *CustomAPIRestClient) doRPCListRegistrationsByState(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { +func (c *CustomAPIRestClient) doRPCGet(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") } url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) yamlReq := callOpts.YAMLReq - req := &ListStateReq{} + req := &GetRequest{} if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ListStateReq: %s", yamlReq, err) + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.GetRequest: %s", yamlReq, err) } var hReq *http.Request @@ -255,8 +290,9 @@ func (c *CustomAPIRestClient) doRPCListRegistrationsByState(ctx context.Context, hReq = newReq q := hReq.URL.Query() _ = q + q.Add("name", fmt.Sprintf("%v", req.Name)) q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) - q.Add("state", fmt.Sprintf("%v", req.State)) + q.Add("response_format", fmt.Sprintf("%v", req.ResponseFormat)) hReq.URL.RawQuery += q.Encode() case "delete": @@ -288,9 +324,9 @@ func (c *CustomAPIRestClient) doRPCListRegistrationsByState(ctx context.Context, if err != nil { return nil, errors.Wrap(err, "Custom API RestClient read body") } - pbRsp := &ListResponse{} + pbRsp := &GetResponse{} if err := codec.FromJSON(string(body), pbRsp); err != nil { - return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ListResponse", body) + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.GetResponse", body) } if callOpts.OutCallResponse != nil { @@ -300,16 +336,16 @@ func (c *CustomAPIRestClient) doRPCListRegistrationsByState(ctx context.Context, return pbRsp, nil } -func (c *CustomAPIRestClient) doRPCRegistrationApprove(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { +func (c *CustomAPIRestClient) doRPCList(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") } url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) yamlReq := callOpts.YAMLReq - req := &ApprovalReq{} + req := &ListRequest{} if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ApprovalReq: %s", yamlReq, err) + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ListRequest: %s", yamlReq, err) } var hReq *http.Request @@ -339,14 +375,14 @@ func (c *CustomAPIRestClient) doRPCRegistrationApprove(ctx context.Context, call hReq = newReq q := hReq.URL.Query() _ = q - q.Add("annotations", fmt.Sprintf("%v", req.Annotations)) - q.Add("connected_region", fmt.Sprintf("%v", req.ConnectedRegion)) - q.Add("labels", fmt.Sprintf("%v", req.Labels)) - q.Add("name", fmt.Sprintf("%v", req.Name)) + q.Add("label_filter", fmt.Sprintf("%v", req.LabelFilter)) q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) - q.Add("passport", fmt.Sprintf("%v", req.Passport)) - q.Add("state", fmt.Sprintf("%v", req.State)) - q.Add("tunnel_type", fmt.Sprintf("%v", req.TunnelType)) + for _, item := range req.ReportFields { + q.Add("report_fields", fmt.Sprintf("%v", item)) + } + for _, item := range req.ReportStatusFields { + q.Add("report_status_fields", fmt.Sprintf("%v", item)) + } hReq.URL.RawQuery += q.Encode() case "delete": @@ -378,9 +414,9 @@ func (c *CustomAPIRestClient) doRPCRegistrationApprove(ctx context.Context, call if err != nil { return nil, errors.Wrap(err, "Custom API RestClient read body") } - pbRsp := &ObjectChangeResp{} + pbRsp := &ListResponse{} if err := codec.FromJSON(string(body), pbRsp); err != nil { - return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ObjectChangeResp", body) + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ListResponse", body) } if callOpts.OutCallResponse != nil { @@ -390,16 +426,16 @@ func (c *CustomAPIRestClient) doRPCRegistrationApprove(ctx context.Context, call return pbRsp, nil } -func (c *CustomAPIRestClient) doRPCRegistrationConfig(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { +func (c *CustomAPIRestClient) doRPCListRegistrationsBySite(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") } url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) yamlReq := callOpts.YAMLReq - req := &ConfigReq{} + req := &ListBySiteReq{} if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ConfigReq: %s", yamlReq, err) + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ListBySiteReq: %s", yamlReq, err) } var hReq *http.Request @@ -429,9 +465,8 @@ func (c *CustomAPIRestClient) doRPCRegistrationConfig(ctx context.Context, callO hReq = newReq q := hReq.URL.Query() _ = q - q.Add("name", fmt.Sprintf("%v", req.Name)) q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) - q.Add("token", fmt.Sprintf("%v", req.Token)) + q.Add("site_name", fmt.Sprintf("%v", req.SiteName)) hReq.URL.RawQuery += q.Encode() case "delete": @@ -463,9 +498,9 @@ func (c *CustomAPIRestClient) doRPCRegistrationConfig(ctx context.Context, callO if err != nil { return nil, errors.Wrap(err, "Custom API RestClient read body") } - pbRsp := &ConfigResp{} + pbRsp := &ListResponse{} if err := codec.FromJSON(string(body), pbRsp); err != nil { - return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ConfigResp", body) + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ListResponse", body) } if callOpts.OutCallResponse != nil { @@ -475,16 +510,16 @@ func (c *CustomAPIRestClient) doRPCRegistrationConfig(ctx context.Context, callO return pbRsp, nil } -func (c *CustomAPIRestClient) doRPCRegistrationCreate(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { +func (c *CustomAPIRestClient) doRPCListRegistrationsByState(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") } url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) yamlReq := callOpts.YAMLReq - req := &RegistrationCreateRequest{} + req := &ListStateReq{} if err := codec.FromYAML(yamlReq, req); err != nil { - return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.RegistrationCreateRequest: %s", yamlReq, err) + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ListStateReq: %s", yamlReq, err) } var hReq *http.Request @@ -514,8 +549,8 @@ func (c *CustomAPIRestClient) doRPCRegistrationCreate(ctx context.Context, callO hReq = newReq q := hReq.URL.Query() _ = q - q.Add("metadata", fmt.Sprintf("%v", req.Metadata)) - q.Add("spec", fmt.Sprintf("%v", req.Spec)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + q.Add("state", fmt.Sprintf("%v", req.State)) hReq.URL.RawQuery += q.Encode() case "delete": @@ -547,9 +582,9 @@ func (c *CustomAPIRestClient) doRPCRegistrationCreate(ctx context.Context, callO if err != nil { return nil, errors.Wrap(err, "Custom API RestClient read body") } - pbRsp := &Object{} + pbRsp := &ListResponse{} if err := codec.FromJSON(string(body), pbRsp); err != nil { - return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.Object", body) + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ListResponse", body) } if callOpts.OutCallResponse != nil { @@ -559,70 +594,347 @@ func (c *CustomAPIRestClient) doRPCRegistrationCreate(ctx context.Context, callO return pbRsp, nil } -func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { - rpcFn, exists := c.rpcFns[rpc] - if !exists { - return nil, fmt.Errorf("Error, no such rpc %s", rpc) +func (c *CustomAPIRestClient) doRPCRegistrationApprove(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") } - cco := server.NewCustomCallOpts() - for _, opt := range opts { - opt(cco) + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &ApprovalReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ApprovalReq: %s", yamlReq, err) } - rsp, err := rpcFn(ctx, cco) + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("annotations", fmt.Sprintf("%v", req.Annotations)) + q.Add("connected_region", fmt.Sprintf("%v", req.ConnectedRegion)) + q.Add("labels", fmt.Sprintf("%v", req.Labels)) + q.Add("name", fmt.Sprintf("%v", req.Name)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + q.Add("passport", fmt.Sprintf("%v", req.Passport)) + q.Add("state", fmt.Sprintf("%v", req.State)) + q.Add("tunnel_type", fmt.Sprintf("%v", req.TunnelType)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) if err != nil { - return nil, errors.Wrap(err, "Doing custom RPC using Rest") + return nil, errors.Wrap(err, "Custom API RestClient") } - return rsp, nil -} + defer rsp.Body.Close() -func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { - ccl := &CustomAPIRestClient{ - baseURL: baseURL, - client: hc, + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) } - rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) - rpcFns["ListRegistrationsBySite"] = ccl.doRPCListRegistrationsBySite + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &ObjectChangeResp{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ObjectChangeResp", body) - rpcFns["ListRegistrationsByState"] = ccl.doRPCListRegistrationsByState + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} - rpcFns["RegistrationApprove"] = ccl.doRPCRegistrationApprove +func (c *CustomAPIRestClient) doRPCRegistrationConfig(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) - rpcFns["RegistrationConfig"] = ccl.doRPCRegistrationConfig + yamlReq := callOpts.YAMLReq + req := &ConfigReq{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.ConfigReq: %s", yamlReq, err) + } - rpcFns["RegistrationCreate"] = ccl.doRPCRegistrationCreate + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("name", fmt.Sprintf("%v", req.Name)) + q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) + q.Add("token", fmt.Sprintf("%v", req.Token)) - ccl.rpcFns = rpcFns + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) - return ccl -} + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() -// Create customAPIInprocClient + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } -// INPROC Client (satisfying CustomAPIClient interface) -type customAPIInprocClient struct { - CustomAPIServer -} + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &ConfigResp{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.ConfigResp", body) -func (c *customAPIInprocClient) ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq, opts ...grpc.CallOption) (*ListResponse, error) { - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.CustomAPI.ListRegistrationsBySite", nil) - return c.CustomAPIServer.ListRegistrationsBySite(ctx, in) + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCRegistrationCreate(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &RegistrationCreateRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.registration.RegistrationCreateRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("metadata", fmt.Sprintf("%v", req.Metadata)) + q.Add("spec", fmt.Sprintf("%v", req.Spec)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &Object{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.registration.Object", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["Delete"] = ccl.doRPCDelete + + rpcFns["Get"] = ccl.doRPCGet + + rpcFns["List"] = ccl.doRPCList + + rpcFns["ListRegistrationsBySite"] = ccl.doRPCListRegistrationsBySite + + rpcFns["ListRegistrationsByState"] = ccl.doRPCListRegistrationsByState + + rpcFns["RegistrationApprove"] = ccl.doRPCRegistrationApprove + + rpcFns["RegistrationConfig"] = ccl.doRPCRegistrationConfig + + rpcFns["RegistrationCreate"] = ccl.doRPCRegistrationCreate + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create customAPIInprocClient + +// INPROC Client (satisfying CustomAPIClient interface) +type customAPIInprocClient struct { + CustomAPIServer +} + +func (c *customAPIInprocClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.Delete") + return c.CustomAPIServer.Delete(ctx, in) +} +func (c *customAPIInprocClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.Get") + return c.CustomAPIServer.Get(ctx, in) +} +func (c *customAPIInprocClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.List") + return c.CustomAPIServer.List(ctx, in) +} +func (c *customAPIInprocClient) ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq, opts ...grpc.CallOption) (*ListResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.ListRegistrationsBySite") + return c.CustomAPIServer.ListRegistrationsBySite(ctx, in) } func (c *customAPIInprocClient) ListRegistrationsByState(ctx context.Context, in *ListStateReq, opts ...grpc.CallOption) (*ListResponse, error) { - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.CustomAPI.ListRegistrationsByState", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.ListRegistrationsByState") return c.CustomAPIServer.ListRegistrationsByState(ctx, in) } func (c *customAPIInprocClient) RegistrationApprove(ctx context.Context, in *ApprovalReq, opts ...grpc.CallOption) (*ObjectChangeResp, error) { - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.CustomAPI.RegistrationApprove", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.RegistrationApprove") return c.CustomAPIServer.RegistrationApprove(ctx, in) } func (c *customAPIInprocClient) RegistrationConfig(ctx context.Context, in *ConfigReq, opts ...grpc.CallOption) (*ConfigResp, error) { - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.CustomAPI.RegistrationConfig", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.RegistrationConfig") return c.CustomAPIServer.RegistrationConfig(ctx, in) } func (c *customAPIInprocClient) RegistrationCreate(ctx context.Context, in *RegistrationCreateRequest, opts ...grpc.CallOption) (*Object, error) { - ctx = server.ContextFromInprocReq(ctx, "ves.io.schema.registration.CustomAPI.RegistrationCreate", nil) + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.registration.CustomAPI.RegistrationCreate") return c.CustomAPIServer.RegistrationCreate(ctx, in) } @@ -647,6 +959,153 @@ type customAPISrv struct { svc svcfw.Service } +func (s *customAPISrv) Delete(ctx context.Context, in *DeleteRequest) (*google_protobuf.Empty, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.registration.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *google_protobuf.Empty + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.registration.DeleteRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Delete' operation on 'registration'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.registration.CustomAPI.Delete"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Delete(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "google.protobuf.Empty", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) Get(ctx context.Context, in *GetRequest) (*GetResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.registration.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *GetResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.registration.GetRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Get' operation on 'registration'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.registration.CustomAPI.Get"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Get(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.registration.GetResponse", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) List(ctx context.Context, in *ListRequest) (*ListResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.registration.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *ListResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.registration.ListRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.List' operation on 'registration'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.registration.CustomAPI.List"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.List(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.registration.ListResponse", rsp)...) + + return rsp, nil +} func (s *customAPISrv) ListRegistrationsBySite(ctx context.Context, in *ListBySiteReq) (*ListResponse, error) { ah := s.svc.GetAPIHandler("ves.io.schema.registration.CustomAPI") cah, ok := ah.(CustomAPIServer) @@ -980,19 +1439,235 @@ var CustomAPISwaggerJSON string = `{ "parameters": [ { "name": "namespace", - "description": "Namespace\n\nx-required\nx-example: \"system\"\nRegistration namespace, only \"system\" namespaces is accepted", + "description": "Namespace\n\nx-required\nx-example: \"system\"\nRegistration namespace, only \"system\" namespaces is accepted", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/registrationListStateReq" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-listregistrationsbystate" + }, + "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.ListRegistrationsByState" + }, + "x-displayname": "Registration", + "x-ves-proto-service": "ves.io.schema.registration.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/{namespace}/registration/{name}/approve": { + "post": { + "summary": "Registration Approve", + "description": "RegistrationApprove approved pending registration and it can also decommission by changing state to RETIRED.", + "operationId": "ves.io.schema.registration.CustomAPI.RegistrationApprove", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/registrationObjectChangeResp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "Namespace\n\nx-required\nx-example: \"system\"\nRegistration namespace, only \"system\" namespaces is accepted", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "Name\n\nx-required\nx-example: \"r-e9030963-639e-41cd-aba6-261504f4a6be\"\nRegistration name (= \"r-\" + uid) to approve. Registration name is taken from listing pending registrations.", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/registrationApprovalReq" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-registrationapprove" + }, + "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.RegistrationApprove" + }, + "x-displayname": "Registration", + "x-ves-proto-service": "ves.io.schema.registration.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/{namespace}/registrations": { + "get": { + "summary": "List Registration", + "description": "List the set of registration in a namespace", + "operationId": "ves.io.schema.registration.CustomAPI.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/registrationListResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace to scope the listing of registration", "in": "path", "required": true, "type": "string", "x-displayname": "Namespace" }, { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/registrationListStateReq" - } + "name": "label_filter", + "description": "x-example: \"env in (staging, testing), tier in (web, db)\"\nA LabelSelectorType expression that every item in list response will satisfy", + "in": "query", + "required": false, + "type": "string", + "x-displayname": "Label Filter" + }, + { + "name": "report_fields", + "description": "x-example: \"\"\nExtra fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Fields" + }, + { + "name": "report_status_fields", + "description": "x-example: \"\"\nExtra status fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Status Fields" } ], "tags": [ @@ -1000,24 +1675,24 @@ var CustomAPISwaggerJSON string = `{ ], "externalDocs": { "description": "Examples of this operation", - "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-listregistrationsbystate" + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-list" }, - "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.ListRegistrationsByState" + "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.List" }, "x-displayname": "Registration", "x-ves-proto-service": "ves.io.schema.registration.CustomAPI", "x-ves-proto-service-type": "CUSTOM_PUBLIC" }, - "/public/namespaces/{namespace}/registration/{name}/approve": { - "post": { - "summary": "Registration Approve", - "description": "RegistrationApprove approved pending registration and it can also decommission by changing state to RETIRED.", - "operationId": "ves.io.schema.registration.CustomAPI.RegistrationApprove", + "/public/namespaces/{namespace}/registrations/{name}": { + "get": { + "summary": "Get Registration", + "description": "Get registration specification", + "operationId": "ves.io.schema.registration.CustomAPI.Get", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/registrationObjectChangeResp" + "$ref": "#/definitions/registrationGetResponse" } }, "401": { @@ -1072,7 +1747,7 @@ var CustomAPISwaggerJSON string = `{ "parameters": [ { "name": "namespace", - "description": "Namespace\n\nx-required\nx-example: \"system\"\nRegistration namespace, only \"system\" namespaces is accepted", + "description": "namespace\n\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", "in": "path", "required": true, "type": "string", @@ -1080,29 +1755,132 @@ var CustomAPISwaggerJSON string = `{ }, { "name": "name", - "description": "Name\n\nx-required\nx-example: \"r-e9030963-639e-41cd-aba6-261504f4a6be\"\nRegistration name (= \"r-\" + uid) to approve. Registration name is taken from listing pending registrations.", + "description": "name\n\nx-example: \"name\"\nThe name of the configuration object to be fetched", "in": "path", "required": true, "type": "string", "x-displayname": "Name" }, { - "name": "body", - "in": "body", - "required": true, + "name": "response_format", + "description": "The format in which the configuration object is to be fetched. This could be for example\n - in GetSpec form for the contents of object\n - in CreateRequest form to create a new similar object\n - to ReplaceRequest form to replace changeable values\n\nDefault format of returned resource\nResponse should be in CreateRequest format\nResponse should be in ReplaceRequest format\nResponse should be in format of GetSpecType\nResponse should have other objects referring to this object\nResponse should have deleted and disabled objects referrred by this object", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT", + "x-displayname": "Broken Referred Objects" + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-get" + }, + "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.Get" + }, + "delete": { + "summary": "Delete Registration", + "description": "Delete the specified registration", + "operationId": "ves.io.schema.registration.CustomAPI.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": {} + }, + "401": { + "description": "Returned when operation is not authorized", "schema": { - "$ref": "#/definitions/registrationApprovalReq" + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" } } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nName of the configuration object", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "fail_if_referred", + "description": "Fail the delete operation if this object is being referred by other objects", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean", + "x-displayname": "Fail-If-Referred" + } ], "tags": [ "CustomAPI" ], "externalDocs": { "description": "Examples of this operation", - "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-registrationapprove" + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-registration-customapi-delete" }, - "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.RegistrationApprove" + "x-ves-proto-rpc": "ves.io.schema.registration.CustomAPI.Delete" }, "x-displayname": "Registration", "x-ves-proto-service": "ves.io.schema.registration.CustomAPI", @@ -1583,6 +2361,113 @@ var CustomAPISwaggerJSON string = `{ } } }, + "registrationCreateRequest": { + "type": "object", + "description": "This is the input message of the 'Create' RPC", + "title": "CreateRequest is used to create an instance of registration", + "x-displayname": "Create Request", + "x-ves-proto-message": "ves.io.schema.registration.CreateRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectCreateMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the registration", + "title": "spec", + "$ref": "#/definitions/schemaregistrationCreateSpecType", + "x-displayname": "Spec" + } + } + }, + "registrationGetResponse": { + "type": "object", + "description": "This is the output message of the 'Get' RPC", + "title": "GetResponse is the shape of a read registration", + "x-displayname": "Get Response", + "x-ves-proto-message": "ves.io.schema.registration.GetResponse", + "properties": { + "create_form": { + "description": "Format used to create a new similar object", + "title": "create_form", + "$ref": "#/definitions/registrationCreateRequest", + "x-displayname": "CreateRequest Format" + }, + "deleted_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "deleted_referred_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Deleted Referred Objects" + }, + "disabled_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "disabled_referred_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Disabled Referred Objects" + }, + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "object": { + "title": "object", + "$ref": "#/definitions/registrationObject", + "x-displayname": "Object", + "x-ves-deprecated": "Replaced by 'spec" + }, + "referring_objects": { + "type": "array", + "description": "The set of objects that are referring to this object in their spec", + "title": "referring_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Referring Objects" + }, + "replace_form": { + "description": "Format to replace changeable values in object", + "title": "replace_form", + "$ref": "#/definitions/registrationReplaceRequest", + "x-displayname": "ReplaceRequest Format" + }, + "spec": { + "description": " Specification of the desired behavior of the registration", + "title": "spec", + "$ref": "#/definitions/schemaregistrationGetSpecType", + "x-displayname": "Spec" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "registrationGetResponseFormatCode": { + "type": "string", + "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", + "title": "GetResponseFormatCode", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT" + }, "registrationInfra": { "type": "object", "description": "InfraMetadata stores information about instance infrastructure", @@ -2126,6 +3011,27 @@ var CustomAPISwaggerJSON string = `{ } } }, + "registrationReplaceRequest": { + "type": "object", + "description": "This is the input message of the 'Replace' RPC", + "title": "ReplaceRequest is used to replace contents of a registration", + "x-displayname": "Replace Request", + "x-ves-proto-message": "ves.io.schema.registration.ReplaceRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectReplaceMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the registration", + "title": "spec", + "$ref": "#/definitions/schemaregistrationReplaceSpecType", + "x-displayname": "Spec" + } + } + }, "registrationSpecType": { "type": "object", "description": "Shape of the registration specification", @@ -2264,10 +3170,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2324,10 +3234,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2386,10 +3300,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2433,6 +3351,70 @@ var CustomAPISwaggerJSON string = `{ } } }, + "schemaObjectReplaceMetaType": { + "type": "object", + "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", + "title": "ObjectReplaceMetaType", + "x-displayname": "Replace Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectReplaceMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, "schemaSiteToSiteTunnelType": { "type": "string", "description": "Tunnel encapsulation to be used between sites\n\nSite to site tunnel can operate in both ipsec and ssl\nipsec takes precedence over ssl\nSite to site tunnel is of type ipsec\nSite to site tunnel is of type ssl", @@ -2864,6 +3846,13 @@ var CustomAPISwaggerJSON string = `{ } } }, + "schemaregistrationReplaceSpecType": { + "type": "object", + "description": "NO fields are allowed to be replaced", + "title": "Replace registration", + "x-displayname": "Replace Registration", + "x-ves-proto-message": "ves.io.schema.registration.ReplaceSpecType" + }, "schemaregistrationStatusType": { "type": "object", "description": "Most recent observer status of object", diff --git a/pbgo/extschema/schema/registration/public_customapi.vesmsg.go b/pbgo/extschema/schema/registration/public_customapi.vesmsg.go index b60357a70..912a1390c 100644 --- a/pbgo/extschema/schema/registration/public_customapi.vesmsg.go +++ b/pbgo/extschema/schema/registration/public_customapi.vesmsg.go @@ -509,15 +509,768 @@ func ConfigRespValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *DeleteRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DeleteRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DeleteRequest) DeepCopy() *DeleteRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DeleteRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DeleteRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DeleteRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DeleteRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateDeleteRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDeleteRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DeleteRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DeleteRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fail_if_referred"]; exists { + + vOpts := append(opts, db.WithValidateField("fail_if_referred")) + if err := fv(ctx, m.GetFailIfReferred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDeleteRequestValidator = func() *ValidateDeleteRequest { + v := &ValidateDeleteRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func DeleteRequestValidator() db.Validator { + return DefaultDeleteRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetRequest) DeepCopy() *GetRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateGetRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["response_format"]; exists { + + vOpts := append(opts, db.WithValidateField("response_format")) + if err := fv(ctx, m.GetResponseFormat(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetRequestValidator = func() *ValidateGetRequest { + v := &ValidateGetRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GetRequestValidator() db.Validator { + return DefaultGetRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetResponse) DeepCopy() *GetResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetResponseValidator().Validate(ctx, m, opts...) +} + +func (m *GetResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return nil, nil + +} + +type ValidateGetResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["create_form"]; exists { + + vOpts := append(opts, db.WithValidateField("create_form")) + if err := fv(ctx, m.GetCreateForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["deleted_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("deleted_referred_objects")) + for idx, item := range m.GetDeletedReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["disabled_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled_referred_objects")) + for idx, item := range m.GetDisabledReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object"]; exists { + + vOpts := append(opts, db.WithValidateField("object")) + if err := fv(ctx, m.GetObject(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["referring_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("referring_objects")) + for idx, item := range m.GetReferringObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["replace_form"]; exists { + + vOpts := append(opts, db.WithValidateField("replace_form")) + if err := fv(ctx, m.GetReplaceForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetResponseValidator = func() *ValidateGetResponse { + v := &ValidateGetResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["object"] = ObjectValidator().Validate + + v.FldValidators["create_form"] = CreateRequestValidator().Validate + + v.FldValidators["replace_form"] = ReplaceRequestValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + return v +}() + +func GetResponseValidator() db.Validator { + return DefaultGetResponseValidator +} + +// augmented methods on protoc/std generated struct + func (m *ListBySiteReq) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ListBySiteReq) ToYAML() (string, error) { +func (m *ListBySiteReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListBySiteReq) DeepCopy() *ListBySiteReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListBySiteReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListBySiteReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListBySiteReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListBySiteReqValidator().Validate(ctx, m, opts...) +} + +type ValidateListBySiteReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListBySiteReq) NamespaceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for namespace") + } + + return validatorFn, nil +} + +func (v *ValidateListBySiteReq) SiteNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for site_name") + } + + return validatorFn, nil +} + +func (v *ValidateListBySiteReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListBySiteReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListBySiteReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["site_name"]; exists { + + vOpts := append(opts, db.WithValidateField("site_name")) + if err := fv(ctx, m.GetSiteName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListBySiteReqValidator = func() *ValidateListBySiteReq { + v := &ValidateListBySiteReq{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhNamespace := v.NamespaceValidationRuleHandler + rulesNamespace := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhNamespace(rulesNamespace) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListBySiteReq.namespace: %s", err) + panic(errMsg) + } + v.FldValidators["namespace"] = vFn + + vrhSiteName := v.SiteNameValidationRuleHandler + rulesSiteName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhSiteName(rulesSiteName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ListBySiteReq.site_name: %s", err) + panic(errMsg) + } + v.FldValidators["site_name"] = vFn + + return v +}() + +func ListBySiteReqValidator() db.Validator { + return DefaultListBySiteReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListRequest) DeepCopy() *ListRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateListRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["report_status_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_status_fields")) + for idx, item := range m.GetReportStatusFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListRequestValidator = func() *ValidateListRequest { + v := &ValidateListRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ListRequestValidator() db.Validator { + return DefaultListRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListResponse) DeepCopy() *ListResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ListResponse) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateListResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["errors"]; exists { + + vOpts := append(opts, db.WithValidateField("errors")) + for idx, item := range m.GetErrors() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseValidator = func() *ValidateListResponse { + v := &ValidateListResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ListResponseItemValidator().Validate + + return v +}() + +func ListResponseValidator() db.Validator { + return DefaultListResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponseItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponseItem) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ListBySiteReq) DeepCopy() *ListBySiteReq { +func (m *ListResponseItem) DeepCopy() *ListResponseItem { if m == nil { return nil } @@ -525,7 +1278,7 @@ func (m *ListBySiteReq) DeepCopy() *ListBySiteReq { if err != nil { return nil } - c := &ListBySiteReq{} + c := &ListResponseItem{} err = c.Unmarshal(ser) if err != nil { return nil @@ -533,55 +1286,113 @@ func (m *ListBySiteReq) DeepCopy() *ListBySiteReq { return c } -func (m *ListBySiteReq) DeepCopyProto() proto.Message { +func (m *ListResponseItem) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ListBySiteReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ListBySiteReqValidator().Validate(ctx, m, opts...) -} - -type ValidateListBySiteReq struct { - FldValidators map[string]db.ValidatorFunc +func (m *ListResponseItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseItemValidator().Validate(ctx, m, opts...) } -func (v *ValidateListBySiteReq) NamespaceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for namespace") +func (m *ListResponseItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - return validatorFn, nil -} - -func (v *ValidateListBySiteReq) SiteNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + return nil, nil - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for site_name") - } +} - return validatorFn, nil +type ValidateListResponseItem struct { + FldValidators map[string]db.ValidatorFunc } -func (v *ValidateListBySiteReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ListBySiteReq) +func (v *ValidateListResponseItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponseItem) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ListBySiteReq got type %s", t) + return fmt.Errorf("Expected type *ListResponseItem got type %s", t) } } if m == nil { return nil } + if fv, exists := v.FldValidators["annotations"]; exists { + + vOpts := append(opts, db.WithValidateField("annotations")) + for key, value := range m.GetAnnotations() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["description"]; exists { + + vOpts := append(opts, db.WithValidateField("description")) + if err := fv(ctx, m.GetDescription(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["disabled"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled")) + if err := fv(ctx, m.GetDisabled(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["get_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("get_spec")) + if err := fv(ctx, m.GetGetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["namespace"]; exists { vOpts := append(opts, db.WithValidateField("namespace")) @@ -591,57 +1402,69 @@ func (v *ValidateListBySiteReq) Validate(ctx context.Context, pm interface{}, op } - if fv, exists := v.FldValidators["site_name"]; exists { + if fv, exists := v.FldValidators["object"]; exists { - vOpts := append(opts, db.WithValidateField("site_name")) - if err := fv(ctx, m.GetSiteName(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("object")) + if err := fv(ctx, m.GetObject(), vOpts...); err != nil { return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultListBySiteReqValidator = func() *ValidateListBySiteReq { - v := &ValidateListBySiteReq{FldValidators: map[string]db.ValidatorFunc{}} + if fv, exists := v.FldValidators["owner_view"]; exists { - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + vOpts := append(opts, db.WithValidateField("owner_view")) + if err := fv(ctx, m.GetOwnerView(), vOpts...); err != nil { + return err + } - vrhNamespace := v.NamespaceValidationRuleHandler - rulesNamespace := map[string]string{ - "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhNamespace(rulesNamespace) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ListBySiteReq.namespace: %s", err) - panic(errMsg) + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + } - v.FldValidators["namespace"] = vFn - vrhSiteName := v.SiteNameValidationRuleHandler - rulesSiteName := map[string]string{ - "ves.io.schema.rules.message.required": "true", + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + } - vFn, err = vrhSiteName(rulesSiteName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ListBySiteReq.site_name: %s", err) - panic(errMsg) + + if fv, exists := v.FldValidators["uid"]; exists { + + vOpts := append(opts, db.WithValidateField("uid")) + if err := fv(ctx, m.GetUid(), vOpts...); err != nil { + return err + } + } - v.FldValidators["site_name"] = vFn + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseItemValidator = func() *ValidateListResponseItem { + v := &ValidateListResponseItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["object"] = ObjectValidator().Validate + + v.FldValidators["get_spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate return v }() -func ListBySiteReqValidator() db.Validator { - return DefaultListBySiteReqValidator +func ListResponseItemValidator() db.Validator { + return DefaultListResponseItemValidator } // augmented methods on protoc/std generated struct @@ -967,6 +1790,101 @@ func RegistrationCreateRequestValidator() db.Validator { return DefaultRegistrationCreateRequestValidator } +func (m *GetResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *GetResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *GetResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *GetResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *GetResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *GetResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + func (m *RegistrationCreateRequest) fromObject(e db.Entry, withDeepCopy bool) { f := e.(*DBObject) if withDeepCopy { diff --git a/pbgo/extschema/schema/role/crudapi/api.vesapi.go b/pbgo/extschema/schema/role/crudapi/api.vesapi.go index e8408397e..d9ccc8c1c 100644 --- a/pbgo/extschema/schema/role/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/role/crudapi/api.vesapi.go @@ -3081,10 +3081,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/role/object.pb.go b/pbgo/extschema/schema/role/object.pb.go index cdcf6f434..2bee8cafb 100644 --- a/pbgo/extschema/schema/role/object.pb.go +++ b/pbgo/extschema/schema/role/object.pb.go @@ -232,44 +232,44 @@ func init() { } var fileDescriptor_60fab4ca2404e934 = []byte{ - // 581 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x54, 0x3f, 0x6f, 0xd3, 0x40, - 0x14, 0xf7, 0x25, 0x51, 0x5a, 0x5d, 0xab, 0x82, 0xcc, 0x62, 0x0a, 0x1c, 0x51, 0x58, 0x18, 0x6a, - 0x1b, 0x81, 0x3a, 0x50, 0x0a, 0x43, 0x5b, 0x28, 0x43, 0x2b, 0xa4, 0x84, 0x89, 0x25, 0x3a, 0xdb, - 0x2f, 0x8e, 0xc1, 0xf6, 0x59, 0x77, 0x67, 0xd3, 0x0c, 0x48, 0x4c, 0xcc, 0x7c, 0x05, 0x36, 0xc4, - 0xa7, 0xa0, 0x4c, 0x8c, 0x51, 0xa7, 0x48, 0x2c, 0xc4, 0x61, 0x60, 0xec, 0x47, 0x40, 0x39, 0xd7, - 0x51, 0xd2, 0x06, 0x09, 0xd1, 0xed, 0xdd, 0xfd, 0x7e, 0xef, 0x77, 0xef, 0xef, 0xe1, 0xdb, 0x19, - 0x08, 0x2b, 0x60, 0xb6, 0x70, 0x7b, 0x10, 0x51, 0x9b, 0xb3, 0x10, 0x6c, 0xe6, 0xbc, 0x06, 0x57, - 0x5a, 0x09, 0x67, 0x92, 0xe9, 0x7a, 0x41, 0xb0, 0x0a, 0x82, 0x35, 0x21, 0xac, 0x9b, 0x7e, 0x20, - 0x7b, 0xa9, 0x63, 0xb9, 0x2c, 0xb2, 0x7d, 0xe6, 0x33, 0x5b, 0x51, 0x9d, 0xb4, 0xab, 0x4e, 0xea, - 0xa0, 0xac, 0x42, 0x62, 0xfd, 0xc6, 0xfc, 0x1b, 0x2c, 0x91, 0x01, 0x8b, 0xc5, 0x19, 0x48, 0x16, - 0x04, 0x20, 0xfb, 0x09, 0x94, 0xf8, 0xf5, 0x79, 0x7c, 0x16, 0x6a, 0xce, 0x43, 0x19, 0x08, 0x88, - 0xb3, 0x79, 0xf9, 0xe6, 0xa7, 0x1a, 0xae, 0xbf, 0x50, 0xf9, 0xe8, 0x0f, 0xf1, 0x72, 0x04, 0x92, - 0x7a, 0x54, 0x52, 0x03, 0x35, 0xd0, 0xdd, 0x95, 0xfb, 0xb7, 0xac, 0xf9, 0xe4, 0x0a, 0xe2, 0x21, - 0x48, 0xfa, 0xb2, 0x9f, 0x40, 0x6b, 0x4a, 0xd7, 0x0f, 0xf0, 0x15, 0xd1, 0x17, 0x12, 0xa2, 0xce, - 0x54, 0xa1, 0xa2, 0x14, 0xee, 0x9c, 0x53, 0x68, 0x2b, 0xd6, 0x39, 0x9d, 0xb5, 0xc2, 0xf7, 0xb0, - 0x54, 0xbb, 0x87, 0x6b, 0x22, 0x01, 0xd7, 0xa8, 0x2a, 0x89, 0x9b, 0xd6, 0xc5, 0x0a, 0x5b, 0xed, - 0x04, 0x5c, 0xe5, 0xab, 0x98, 0x5b, 0x3f, 0x2a, 0xdf, 0x8e, 0x8d, 0x4a, 0x0f, 0x9d, 0x1c, 0x1b, - 0x83, 0x0a, 0xde, 0xc3, 0xf5, 0x5d, 0x0e, 0x54, 0x82, 0xbe, 0xd5, 0xdd, 0x3c, 0x72, 0x4d, 0x97, - 0xc5, 0x82, 0x85, 0x60, 0x3a, 0x54, 0x80, 0x49, 0xbd, 0x28, 0x88, 0x37, 0x1a, 0x0a, 0x98, 0x5c, - 0x6c, 0x34, 0x32, 0x10, 0x66, 0xc0, 0xcc, 0x94, 0x46, 0x05, 0x68, 0xbe, 0xe5, 0x81, 0x04, 0xbc, - 0x8d, 0xab, 0xfb, 0x20, 0xf5, 0xcd, 0x8b, 0x12, 0x11, 0x8b, 0x03, 0xc9, 0xf8, 0xdf, 0x44, 0x38, - 0x50, 0x0f, 0x3f, 0xc6, 0xb5, 0x83, 0x40, 0xfc, 0xb7, 0xfb, 0x53, 0xbc, 0xd4, 0x82, 0x24, 0xa4, - 0xee, 0xe5, 0x72, 0xd8, 0xc3, 0xf5, 0x3d, 0x08, 0xe1, 0x72, 0x95, 0x68, 0xee, 0xe3, 0xe5, 0xb2, - 0xde, 0xfa, 0x23, 0xbc, 0xe4, 0xbb, 0x1d, 0xd5, 0x9e, 0xa2, 0xc3, 0xcd, 0x45, 0xed, 0xd9, 0x0f, - 0x99, 0x43, 0xc3, 0x69, 0x93, 0xea, 0xbe, 0x3b, 0xb1, 0x9b, 0xbf, 0x10, 0x5e, 0x6d, 0x4b, 0x2a, - 0x53, 0xf1, 0xcf, 0x23, 0x57, 0xd0, 0x17, 0x8c, 0xdc, 0x33, 0xbc, 0x52, 0xec, 0x61, 0x87, 0x43, - 0x57, 0x18, 0x95, 0x46, 0x75, 0xc1, 0xac, 0x14, 0xcf, 0xb4, 0xa0, 0x3b, 0x71, 0xde, 0x59, 0xfa, - 0xf2, 0xae, 0x36, 0x09, 0xaf, 0x85, 0x59, 0x79, 0x2f, 0xf4, 0x6d, 0x8c, 0x5d, 0x16, 0x7b, 0x81, - 0x5a, 0x0a, 0xa3, 0xba, 0x50, 0x66, 0xb7, 0x24, 0xa8, 0x18, 0x66, 0xf8, 0x5b, 0xd7, 0x4e, 0x9e, - 0x5c, 0xc5, 0x6b, 0x78, 0xb5, 0x0c, 0xcb, 0x4a, 0x03, 0x6f, 0xe7, 0x03, 0x1a, 0x8c, 0x88, 0x36, - 0x1c, 0x11, 0xed, 0x74, 0x44, 0xd0, 0xfb, 0x9c, 0xa0, 0xcf, 0x39, 0x41, 0xdf, 0x73, 0x82, 0x06, - 0x39, 0x41, 0xc3, 0x9c, 0xa0, 0x9f, 0x39, 0x41, 0xbf, 0x73, 0xa2, 0x9d, 0xe6, 0x04, 0x7d, 0x1c, - 0x13, 0xed, 0xeb, 0x98, 0xa0, 0xc1, 0x98, 0x68, 0xc3, 0x31, 0xd1, 0x5e, 0x3d, 0xf7, 0x59, 0xf2, - 0xc6, 0xb7, 0x32, 0x16, 0x4a, 0xe0, 0x9c, 0x5a, 0xa9, 0xb0, 0x95, 0xd1, 0x65, 0x3c, 0x32, 0x13, - 0xce, 0xb2, 0xc0, 0x03, 0x6e, 0x96, 0xb0, 0x9d, 0x38, 0x3e, 0xb3, 0xe1, 0x48, 0x9e, 0x6d, 0xf9, - 0xcc, 0x3f, 0xe1, 0xd4, 0xd5, 0x8e, 0x3f, 0xf8, 0x13, 0x00, 0x00, 0xff, 0xff, 0x28, 0x48, 0x61, - 0x82, 0xc5, 0x04, 0x00, 0x00, + // 591 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0xd4, 0x30, + 0x14, 0xc7, 0xcf, 0xbd, 0x72, 0xad, 0xdc, 0xaa, 0xa0, 0xb0, 0x1c, 0x05, 0xcc, 0xe9, 0x58, 0x18, + 0x9a, 0x04, 0x81, 0x18, 0x28, 0x88, 0xa1, 0x45, 0x94, 0xa1, 0x15, 0xe2, 0xda, 0x01, 0x18, 0x7a, + 0x72, 0x9c, 0x77, 0xa9, 0x21, 0x89, 0x23, 0xdb, 0x09, 0xed, 0x80, 0xc4, 0xc4, 0xcc, 0xb7, 0x00, + 0xf1, 0x29, 0x28, 0x13, 0x63, 0xd5, 0x01, 0x75, 0xe4, 0x72, 0x0c, 0x8c, 0xfd, 0x08, 0xe8, 0x9c, + 0xa6, 0x6a, 0xda, 0x0c, 0x2c, 0xb7, 0xd9, 0xf7, 0xff, 0xfb, 0xe7, 0xe7, 0x77, 0xff, 0x3c, 0x7c, + 0x2b, 0x03, 0xe5, 0x70, 0xe1, 0x2a, 0xb6, 0x03, 0x11, 0x75, 0xa5, 0x08, 0xc1, 0x15, 0xde, 0x5b, + 0x60, 0xda, 0x49, 0xa4, 0xd0, 0xc2, 0xb2, 0x0a, 0x83, 0x53, 0x18, 0x9c, 0xb1, 0x61, 0xd1, 0x0e, + 0xb8, 0xde, 0x49, 0x3d, 0x87, 0x89, 0xc8, 0x0d, 0x44, 0x20, 0x5c, 0x63, 0xf5, 0xd2, 0x81, 0xd9, + 0x99, 0x8d, 0x59, 0x15, 0x88, 0xc5, 0xeb, 0xd5, 0x3b, 0x44, 0xa2, 0xb9, 0x88, 0xd5, 0x89, 0x48, + 0x6a, 0x0a, 0xd0, 0x7b, 0x09, 0x94, 0xfa, 0xb5, 0xaa, 0x7e, 0x56, 0xea, 0x56, 0xa5, 0x0c, 0x14, + 0xc4, 0x59, 0x15, 0xdf, 0xfd, 0x72, 0x09, 0xb7, 0x5e, 0x98, 0xf7, 0x58, 0x0f, 0xf1, 0x6c, 0x04, + 0x9a, 0xfa, 0x54, 0xd3, 0x36, 0xea, 0xa0, 0x3b, 0x73, 0xf7, 0x6e, 0x3a, 0xd5, 0xc7, 0x15, 0xc6, + 0x0d, 0xd0, 0x74, 0x6b, 0x2f, 0x81, 0xde, 0xa9, 0xdd, 0x5a, 0xc7, 0x97, 0xd5, 0x9e, 0xd2, 0x10, + 0xf5, 0x4f, 0x09, 0x53, 0x86, 0x70, 0xfb, 0x1c, 0x61, 0xd3, 0xb8, 0xce, 0x71, 0x16, 0x8a, 0xb3, + 0x1b, 0x25, 0xed, 0x2e, 0x9e, 0x56, 0x09, 0xb0, 0x76, 0xd3, 0x20, 0x6e, 0x38, 0x17, 0x3b, 0xec, + 0x6c, 0x26, 0xc0, 0xcc, 0x59, 0xe3, 0x5c, 0x1e, 0x36, 0x7f, 0xec, 0xb7, 0xa7, 0x76, 0xd0, 0xe1, + 0x7e, 0xfb, 0x57, 0x13, 0x6f, 0xe3, 0xd6, 0xaa, 0x04, 0xaa, 0xc1, 0xda, 0x1a, 0x3c, 0xd8, 0x65, + 0x36, 0x13, 0xb1, 0x12, 0x21, 0xd8, 0x1e, 0x55, 0x60, 0x53, 0x3f, 0xe2, 0xf1, 0x52, 0xe7, 0xbc, + 0xc0, 0x59, 0x45, 0x19, 0x5b, 0x97, 0x3a, 0x19, 0x28, 0x9b, 0x0b, 0x3b, 0xa5, 0x51, 0x21, 0xda, + 0xef, 0x25, 0xd7, 0x80, 0x5f, 0xe1, 0xe6, 0x1a, 0x68, 0xeb, 0xe5, 0x45, 0x78, 0x24, 0x62, 0xae, + 0x85, 0xac, 0xc5, 0x57, 0xb5, 0x0b, 0x17, 0x48, 0xa0, 0x3e, 0x7e, 0x8d, 0xa7, 0xd7, 0xb9, 0x9a, + 0x08, 0xba, 0x8f, 0x67, 0x7a, 0x90, 0x84, 0x94, 0x4d, 0xaa, 0x2b, 0xdb, 0xb8, 0xf5, 0x14, 0x42, + 0x98, 0x54, 0xd7, 0xbb, 0x6b, 0x78, 0xb6, 0xfc, 0xd7, 0xad, 0x47, 0x78, 0x26, 0x60, 0x7d, 0x13, + 0x92, 0x22, 0x67, 0xdd, 0xba, 0x90, 0xac, 0x85, 0xc2, 0xa3, 0xe1, 0x69, 0x54, 0x5a, 0x01, 0x1b, + 0xaf, 0xbb, 0x7f, 0x10, 0x9e, 0xdf, 0xd4, 0x54, 0xa7, 0xea, 0xbf, 0x83, 0x5f, 0xd8, 0x6b, 0x82, + 0xff, 0x0c, 0xcf, 0x15, 0xd3, 0xa0, 0x2f, 0x61, 0xa0, 0xda, 0x53, 0x9d, 0x66, 0x4d, 0x62, 0x8b, + 0x6b, 0x7a, 0x30, 0x18, 0x1f, 0x5e, 0x99, 0xf9, 0xf6, 0x61, 0x7a, 0x5c, 0x5e, 0x0f, 0x8b, 0xf2, + 0x77, 0x65, 0x3d, 0xc6, 0x98, 0x89, 0xd8, 0xe7, 0xe6, 0xd3, 0x6c, 0x37, 0x6b, 0x31, 0xab, 0xa5, + 0xc1, 0xd4, 0x70, 0xc6, 0xbf, 0x7c, 0xf5, 0xf0, 0xc9, 0x15, 0xbc, 0x80, 0xe7, 0xcb, 0xb2, 0x9c, + 0x94, 0xfb, 0x2b, 0x9f, 0xd0, 0xc1, 0x90, 0x34, 0x8e, 0x86, 0xa4, 0x71, 0x3c, 0x24, 0xe8, 0x63, + 0x4e, 0xd0, 0xd7, 0x9c, 0xa0, 0x9f, 0x39, 0x41, 0x07, 0x39, 0x41, 0x47, 0x39, 0x41, 0xbf, 0x73, + 0x82, 0xfe, 0xe6, 0xa4, 0x71, 0x9c, 0x13, 0xf4, 0x79, 0x44, 0x1a, 0xdf, 0x47, 0x04, 0x1d, 0x8c, + 0x48, 0xe3, 0x68, 0x44, 0x1a, 0x6f, 0x9e, 0x07, 0x22, 0x79, 0x17, 0x38, 0x99, 0x08, 0x35, 0x48, + 0x49, 0x9d, 0x54, 0xb9, 0x66, 0x31, 0x10, 0x32, 0xb2, 0x13, 0x29, 0x32, 0xee, 0x83, 0xb4, 0x4b, + 0xd9, 0x4d, 0xbc, 0x40, 0xb8, 0xb0, 0xab, 0x4f, 0x66, 0xcd, 0x99, 0x69, 0xe5, 0xb5, 0xcc, 0xa4, + 0xb9, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x94, 0xb3, 0xe9, 0x27, 0x4b, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/role/public_crudapi.pb.go b/pbgo/extschema/schema/role/public_crudapi.pb.go index 0d15c283b..7e6125427 100644 --- a/pbgo/extschema/schema/role/public_crudapi.pb.go +++ b/pbgo/extschema/schema/role/public_crudapi.pb.go @@ -1058,107 +1058,108 @@ func init() { } var fileDescriptor_df067243f76717ce = []byte{ - // 1597 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x13, 0x47, - 0x1b, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0x30, 0xf3, 0x42, 0x70, 0xfc, 0xf2, 0x6e, 0x8c, 0x13, - 0xf1, 0xe6, 0xcd, 0x8b, 0xd7, 0x51, 0x10, 0x12, 0x44, 0x2d, 0xd4, 0x4e, 0x36, 0x21, 0x34, 0x24, - 0x68, 0x6c, 0x68, 0xd5, 0xcb, 0x6a, 0xbd, 0x1e, 0x9b, 0x2d, 0xf6, 0xee, 0x76, 0x77, 0xec, 0x10, - 0xb5, 0x91, 0x2a, 0xd4, 0x53, 0x4f, 0x55, 0x7b, 0xab, 0x38, 0xb4, 0x52, 0x2b, 0xf5, 0xdc, 0x43, - 0x5b, 0x29, 0x17, 0x2e, 0x15, 0x88, 0x43, 0x85, 0xda, 0x4b, 0x7a, 0x2b, 0x4e, 0x0f, 0x5c, 0x2a, - 0xa1, 0xfe, 0x05, 0xd5, 0xce, 0xec, 0x1a, 0xdb, 0xd9, 0x10, 0x87, 0x70, 0xf2, 0xce, 0xf3, 0x3c, - 0xbf, 0xdf, 0x3e, 0xcf, 0x3c, 0x1f, 0x3b, 0x63, 0xf8, 0xdf, 0x26, 0xb1, 0x45, 0xcd, 0xc8, 0xda, - 0xea, 0x6d, 0x52, 0x57, 0xb2, 0x96, 0x51, 0x23, 0x59, 0xb3, 0x51, 0xaa, 0x69, 0xaa, 0xac, 0x5a, - 0x8d, 0xb2, 0x62, 0x6a, 0xa2, 0x69, 0x19, 0xd4, 0x40, 0x88, 0x1b, 0x8a, 0xdc, 0x50, 0x74, 0x0c, - 0x93, 0x99, 0xaa, 0x46, 0x6f, 0x37, 0x4a, 0xa2, 0x6a, 0xd4, 0xb3, 0x55, 0xa3, 0x6a, 0x64, 0x99, - 0x69, 0xa9, 0x51, 0x61, 0x2b, 0xb6, 0x60, 0x4f, 0x9c, 0x22, 0x79, 0xba, 0x6a, 0x18, 0xd5, 0x1a, - 0xc9, 0x2a, 0xa6, 0x96, 0x55, 0x74, 0xdd, 0xa0, 0x0a, 0xd5, 0x0c, 0xdd, 0x76, 0xb5, 0xff, 0x76, - 0xb5, 0x6d, 0x0e, 0x52, 0x37, 0xe9, 0xa6, 0xab, 0x4c, 0x76, 0xbb, 0x49, 0x2c, 0xcb, 0xb0, 0xda, - 0xc0, 0x6e, 0x9d, 0x61, 0x76, 0xb2, 0x4e, 0xf8, 0xc4, 0x67, 0x94, 0xde, 0x27, 0x2a, 0x75, 0x0d, - 0x04, 0x1f, 0x03, 0xba, 0x69, 0x12, 0x8f, 0x60, 0xbc, 0x5b, 0xdf, 0xa9, 0x4a, 0x77, 0xab, 0x9a, - 0xc4, 0x26, 0x7a, 0xb3, 0xe7, 0xfd, 0xa9, 0x1e, 0x1b, 0x8d, 0x6c, 0xc8, 0x5d, 0x16, 0xe9, 0x6f, - 0x00, 0x1c, 0x5e, 0xb0, 0x88, 0x42, 0x09, 0x26, 0x1f, 0x34, 0x88, 0x4d, 0xd1, 0x15, 0x18, 0xa9, - 0x13, 0xaa, 0x94, 0x15, 0xaa, 0x24, 0x40, 0x0a, 0x4c, 0xc7, 0xe6, 0x26, 0xc5, 0xee, 0xdd, 0x5f, - 0x67, 0x11, 0x70, 0xd4, 0x75, 0x42, 0x95, 0xe2, 0xa6, 0x49, 0x70, 0x1b, 0x84, 0x96, 0x61, 0xc8, - 0x36, 0x89, 0x9a, 0x08, 0x30, 0x70, 0x5a, 0xdc, 0x9b, 0x3a, 0x91, 0x63, 0x0b, 0x26, 0x51, 0x1d, - 0x6c, 0x7e, 0xf4, 0xcb, 0xad, 0x21, 0x07, 0x22, 0x56, 0x55, 0xd9, 0xf9, 0xc5, 0x8c, 0x60, 0x3e, - 0xfa, 0xf8, 0x72, 0x98, 0xbf, 0x2b, 0xfd, 0x1c, 0xc0, 0x11, 0xcf, 0x4d, 0xdb, 0x34, 0x74, 0x9b, - 0xa0, 0x37, 0xf6, 0xf8, 0x99, 0xf2, 0xf5, 0x73, 0x99, 0x50, 0x1f, 0x27, 0xd7, 0xe1, 0xa8, 0xbd, - 0x69, 0x53, 0x52, 0x97, 0xdb, 0x24, 0x41, 0x46, 0x72, 0xb6, 0x87, 0xa4, 0xc0, 0xac, 0xf6, 0x52, - 0x8d, 0x70, 0xf8, 0x75, 0x8f, 0x70, 0xb1, 0x2b, 0xea, 0x09, 0xbf, 0xa8, 0x97, 0x09, 0x3d, 0x44, - 0xc8, 0x3b, 0x00, 0x8e, 0x60, 0x62, 0xd6, 0x14, 0xb5, 0x9d, 0x9a, 0xb7, 0xf6, 0x84, 0x3c, 0xe5, - 0x1b, 0xb2, 0x0b, 0xf3, 0x09, 0xfb, 0x6a, 0x97, 0x97, 0x93, 0x7e, 0x5e, 0xba, 0xe0, 0x03, 0x3c, - 0x45, 0x59, 0x18, 0xb7, 0x88, 0x6d, 0x34, 0x2c, 0x95, 0xc8, 0x4d, 0x62, 0xd9, 0x9a, 0xa1, 0xb3, - 0x1d, 0x8c, 0xe6, 0x43, 0xcf, 0xb6, 0x01, 0xc0, 0xa3, 0x9e, 0xf6, 0x16, 0x57, 0x76, 0x86, 0x76, - 0x1c, 0x8e, 0xb6, 0x23, 0xe3, 0xd9, 0x4c, 0x7f, 0x0e, 0x20, 0x5c, 0x26, 0xd4, 0x8b, 0xf4, 0x34, - 0x8c, 0xea, 0x4a, 0x9d, 0xd8, 0xa6, 0xa2, 0x12, 0x16, 0x6a, 0x14, 0xbf, 0x10, 0x20, 0x04, 0x43, - 0xce, 0x82, 0x45, 0x11, 0xc5, 0xec, 0x19, 0x61, 0xe8, 0xbc, 0x91, 0x91, 0xc9, 0x15, 0xc3, 0xaa, - 0x2b, 0x94, 0xb9, 0x33, 0x32, 0xf7, 0xbf, 0x7d, 0x52, 0xe1, 0xbd, 0x7a, 0x89, 0x19, 0x2f, 0x18, - 0x65, 0x82, 0x47, 0xac, 0x2e, 0x59, 0xfa, 0xaf, 0x41, 0x18, 0xeb, 0xb0, 0x44, 0x79, 0x18, 0x53, - 0x59, 0x11, 0xb2, 0x37, 0xb8, 0x9b, 0x78, 0x66, 0xff, 0x02, 0x77, 0xa3, 0xc1, 0x90, 0xa3, 0x1c, - 0x56, 0x24, 0xc1, 0x21, 0x8b, 0xc7, 0xce, 0x49, 0x82, 0xfb, 0x77, 0x49, 0x77, 0xf6, 0x71, 0xcc, - 0xc5, 0x31, 0x1a, 0xbf, 0xed, 0x0f, 0xbd, 0x64, 0xfb, 0xbb, 0xda, 0x65, 0xf0, 0x75, 0xb4, 0xcb, - 0xb1, 0xd7, 0xd2, 0x2e, 0xe1, 0xa3, 0xb4, 0x0b, 0xba, 0x02, 0xc3, 0x36, 0x55, 0x68, 0xc3, 0x4e, - 0x7c, 0x75, 0x1f, 0xa4, 0x82, 0x3e, 0x41, 0x31, 0xa6, 0x02, 0xb3, 0xe1, 0x4e, 0xe5, 0x83, 0x0f, - 0xb6, 0x00, 0x76, 0x61, 0x68, 0x05, 0x1e, 0xb7, 0x48, 0x85, 0x58, 0x96, 0xa6, 0x57, 0x65, 0x3e, - 0x99, 0xed, 0x44, 0x84, 0x31, 0x9d, 0xde, 0xa7, 0xb5, 0x2a, 0x2c, 0x9e, 0x78, 0x1b, 0xc6, 0xe5, - 0x36, 0xba, 0x05, 0x13, 0x65, 0x52, 0x23, 0x94, 0x94, 0x65, 0xae, 0x23, 0xe5, 0x36, 0x63, 0xb4, - 0x0f, 0xc6, 0x31, 0x17, 0x8d, 0x5d, 0xb0, 0xc7, 0xfb, 0x2e, 0x1c, 0x2f, 0x6b, 0xb6, 0x52, 0xaa, - 0xf9, 0x11, 0xc3, 0x3e, 0x88, 0x4f, 0x79, 0xf0, 0x1e, 0xe6, 0x8e, 0x8e, 0xbc, 0x16, 0x8a, 0x80, - 0x78, 0x20, 0xfd, 0x2d, 0x80, 0xb1, 0x55, 0xcd, 0xee, 0xb3, 0x0b, 0xcf, 0xc0, 0xa1, 0x9a, 0x52, - 0x22, 0x35, 0xb9, 0xa2, 0xd5, 0x28, 0xb1, 0xdc, 0x6e, 0x8c, 0x31, 0xd9, 0x12, 0x13, 0xa1, 0x49, - 0x38, 0x6c, 0x11, 0xd3, 0xb0, 0xa8, 0x5c, 0xd1, 0x48, 0xad, 0x6c, 0x27, 0x82, 0xa9, 0xe0, 0x74, - 0x14, 0x0f, 0x71, 0xe1, 0x12, 0x93, 0xa1, 0x59, 0x78, 0xc2, 0x35, 0xe2, 0x49, 0xf1, 0x6c, 0x43, - 0xcc, 0x16, 0x71, 0x1d, 0x4f, 0x21, 0x47, 0xa4, 0xef, 0x87, 0x61, 0x9c, 0xfb, 0xc9, 0x1b, 0x73, - 0x85, 0x92, 0x3a, 0x1a, 0x83, 0x61, 0x4a, 0x74, 0x45, 0xa7, 0xac, 0xa6, 0xa2, 0xd8, 0x5d, 0xbd, - 0xc2, 0x28, 0x89, 0xc3, 0x60, 0x43, 0x2b, 0xf3, 0x69, 0x86, 0x9d, 0x47, 0x94, 0x82, 0xb1, 0x32, - 0xb1, 0x55, 0x4b, 0x63, 0xdf, 0xce, 0x44, 0x8c, 0x47, 0xda, 0x21, 0x42, 0x49, 0x18, 0xf1, 0xb6, - 0x39, 0x31, 0x94, 0x02, 0xd3, 0x11, 0xdc, 0x5e, 0xa3, 0xab, 0x30, 0xcc, 0x36, 0x85, 0x87, 0x14, - 0x9b, 0x9b, 0xf5, 0xab, 0xd1, 0xde, 0x78, 0xc4, 0x55, 0x06, 0x91, 0x74, 0x6a, 0x6d, 0x62, 0x17, - 0x8f, 0xde, 0x81, 0xb1, 0x8e, 0xa3, 0x8b, 0x9b, 0xfd, 0x0b, 0x7d, 0xd1, 0xe5, 0x5e, 0xe0, 0x38, - 0x67, 0x27, 0x13, 0xba, 0x04, 0xa1, 0xb1, 0xa1, 0x13, 0x4b, 0x76, 0x8e, 0x08, 0x89, 0x28, 0x6b, - 0xca, 0x64, 0x0f, 0xef, 0x2d, 0x8d, 0x6c, 0x78, 0x35, 0x15, 0x65, 0xd6, 0x8e, 0xa4, 0x6b, 0xb0, - 0x0c, 0xbf, 0x8e, 0xc1, 0x32, 0x72, 0xa4, 0xc1, 0x32, 0x0f, 0x23, 0x55, 0x42, 0xd9, 0x90, 0x70, - 0x47, 0xd4, 0x41, 0xc3, 0x05, 0x1f, 0xab, 0xf2, 0x05, 0x5a, 0x84, 0xd0, 0x2d, 0x41, 0x9b, 0x50, - 0x77, 0x0c, 0xf4, 0x39, 0x50, 0xa2, 0x1c, 0x58, 0x20, 0x34, 0x79, 0x09, 0xc6, 0x3a, 0x72, 0xe7, - 0x54, 0xd3, 0x1d, 0xb2, 0xe9, 0x56, 0x9e, 0xf3, 0x88, 0x4e, 0xc0, 0xc1, 0xa6, 0x52, 0x6b, 0x78, - 0x45, 0xc7, 0x17, 0xf3, 0x81, 0x8b, 0x20, 0x79, 0x19, 0xc6, 0x7b, 0xf3, 0x74, 0x18, 0xfc, 0xb5, - 0x50, 0x64, 0x30, 0x1e, 0x4e, 0x7f, 0x04, 0x87, 0x3a, 0xd3, 0x8f, 0xe6, 0xe1, 0xa0, 0x46, 0x49, - 0xdd, 0x4e, 0xf0, 0x11, 0x39, 0xd5, 0x4f, 0xbd, 0x60, 0x0e, 0x41, 0xb3, 0x30, 0xcc, 0x8f, 0xbb, - 0x89, 0x00, 0x03, 0x27, 0x7a, 0xc0, 0x92, 0xa3, 0x64, 0xbb, 0xe8, 0xda, 0xa5, 0xef, 0xc0, 0xe1, - 0x45, 0x36, 0xc9, 0x5e, 0xfd, 0x5b, 0x3e, 0x0d, 0xe3, 0x15, 0x45, 0xab, 0xc9, 0x5a, 0xa5, 0x3d, - 0xf1, 0x58, 0x37, 0x46, 0xf0, 0x88, 0x23, 0x5f, 0xa9, 0x78, 0x93, 0x6c, 0xe6, 0x6f, 0x00, 0x4f, - 0xfa, 0x7e, 0xcb, 0x51, 0x12, 0x8e, 0x2d, 0x4b, 0x45, 0x19, 0x17, 0x6e, 0xc8, 0x4b, 0xeb, 0xf8, - 0x7a, 0xae, 0x28, 0x2f, 0x4a, 0x4b, 0xb9, 0x9b, 0xab, 0xc5, 0xf8, 0x00, 0xfa, 0x0f, 0x1c, 0xef, - 0xd1, 0x2d, 0xad, 0x63, 0x79, 0x01, 0x4b, 0xb9, 0xa2, 0x14, 0x07, 0x48, 0x80, 0x49, 0x1f, 0x35, - 0x96, 0x6e, 0xac, 0xe6, 0x16, 0xa4, 0x78, 0x00, 0x8d, 0xc3, 0x93, 0x3d, 0xfa, 0x42, 0x31, 0x57, - 0xbc, 0x59, 0x88, 0x07, 0xd1, 0x29, 0xf8, 0xaf, 0x1e, 0x15, 0x96, 0x72, 0x8b, 0xf1, 0x10, 0x9a, - 0x82, 0xa9, 0x3d, 0x8a, 0x25, 0x09, 0xe3, 0x95, 0xb5, 0x65, 0x79, 0x3d, 0x7f, 0x4d, 0x5a, 0x28, - 0x16, 0xe2, 0x83, 0x3e, 0x56, 0x79, 0xbc, 0xfe, 0xb6, 0xb4, 0xc6, 0x8d, 0xa5, 0xb5, 0x05, 0xa9, - 0x10, 0x0f, 0xcf, 0x7d, 0x1d, 0x81, 0xc1, 0xdc, 0x8d, 0x15, 0xf4, 0x33, 0x80, 0x61, 0x7e, 0xd0, - 0x40, 0x07, 0x1f, 0x42, 0x92, 0xe9, 0x97, 0x99, 0xb8, 0xa7, 0x30, 0xda, 0x7a, 0x98, 0xb8, 0x58, - 0xb9, 0x70, 0x57, 0xcd, 0xa8, 0x86, 0x6e, 0x1b, 0x35, 0x92, 0x29, 0x29, 0x36, 0xc9, 0x28, 0xe5, - 0xba, 0xa6, 0x9f, 0x63, 0x72, 0x67, 0x7d, 0xae, 0x49, 0xec, 0x8c, 0x66, 0x64, 0x1a, 0x4a, 0x9d, - 0xab, 0x32, 0x1b, 0x96, 0x46, 0xc9, 0xbd, 0xdf, 0xfe, 0xfc, 0x22, 0x30, 0x97, 0xce, 0xb8, 0x37, - 0xb8, 0x6c, 0x3b, 0xc7, 0x76, 0xf6, 0x43, 0xaf, 0xb9, 0xc5, 0xb6, 0x70, 0x8b, 0x5d, 0x76, 0xec, - 0x79, 0x30, 0x83, 0x7e, 0x00, 0x30, 0xb8, 0x4c, 0x28, 0x12, 0xf6, 0x3d, 0xa9, 0xf1, 0x08, 0x26, - 0x0e, 0x38, 0xc9, 0xa5, 0xf5, 0x47, 0x3f, 0x05, 0x40, 0xeb, 0x61, 0xe2, 0xfc, 0xde, 0x10, 0xea, - 0x86, 0xae, 0x51, 0xc3, 0xf2, 0x0f, 0xc2, 0x22, 0x4a, 0x99, 0x79, 0x9f, 0x41, 0xff, 0xf7, 0xf3, - 0xbe, 0xd7, 0x69, 0x2e, 0xd9, 0x42, 0xdf, 0x03, 0x18, 0x72, 0x1a, 0x07, 0x4d, 0xec, 0xdf, 0x52, - 0xdc, 0xf5, 0xd4, 0x41, 0x3d, 0x97, 0xae, 0x1e, 0xd5, 0xf7, 0xb3, 0x68, 0xaa, 0x1f, 0xdf, 0xd1, - 0xef, 0x00, 0x1e, 0x73, 0x4f, 0x96, 0xa8, 0x8f, 0x63, 0x67, 0x72, 0xf2, 0xa5, 0x36, 0xae, 0xf7, - 0x9f, 0x80, 0x23, 0x57, 0x4e, 0x3e, 0xf9, 0xe6, 0xa1, 0x2a, 0xa7, 0x47, 0xb5, 0xe5, 0x54, 0xd2, - 0x8f, 0x00, 0x86, 0xf9, 0xf0, 0xf1, 0xef, 0x88, 0xae, 0xc1, 0x94, 0x1c, 0x13, 0xf9, 0xa5, 0x5f, - 0xf4, 0x2e, 0xfd, 0xa2, 0xe4, 0x5c, 0xfa, 0xd3, 0xd6, 0x91, 0x63, 0x99, 0x9d, 0x39, 0x4c, 0x1d, - 0xcd, 0x83, 0x99, 0xe4, 0xda, 0x83, 0x6d, 0x10, 0xf8, 0x75, 0x1b, 0x8c, 0xfb, 0x78, 0xcd, 0xbf, - 0x33, 0x3b, 0xdb, 0x00, 0xb4, 0xb6, 0xc1, 0xc4, 0x01, 0x9f, 0xa3, 0x7b, 0xbf, 0x24, 0x02, 0xb7, - 0x41, 0xfe, 0x53, 0xf0, 0xf8, 0xf2, 0xe0, 0x02, 0xbe, 0xb9, 0xb8, 0xfa, 0xe4, 0xa9, 0x30, 0xb0, - 0xf3, 0x54, 0x18, 0x78, 0xfe, 0x54, 0x00, 0x1f, 0xb7, 0x04, 0xf0, 0x5d, 0x4b, 0x00, 0x8f, 0x5a, - 0x02, 0x78, 0xd2, 0x12, 0xc0, 0x1f, 0x2d, 0x01, 0x3c, 0x6b, 0x09, 0x03, 0xcf, 0x5b, 0x02, 0xf8, - 0x6c, 0x57, 0x18, 0x78, 0xb0, 0x2b, 0x80, 0x27, 0xbb, 0xc2, 0xc0, 0xce, 0xae, 0x30, 0xf0, 0xde, - 0xd5, 0xaa, 0x61, 0xde, 0xa9, 0x8a, 0x4d, 0xc3, 0x39, 0xca, 0x59, 0x8a, 0xd8, 0xb0, 0xb3, 0xec, - 0xc1, 0xb9, 0xb6, 0x64, 0x4c, 0xcb, 0x68, 0x6a, 0x65, 0x62, 0x65, 0x3c, 0x75, 0xd6, 0x2c, 0x55, - 0x8d, 0x2c, 0xb9, 0x4b, 0xdd, 0xff, 0x1a, 0x3a, 0xfe, 0xd1, 0x28, 0x85, 0xd9, 0x06, 0x9f, 0xff, - 0x27, 0x00, 0x00, 0xff, 0xff, 0x4c, 0x20, 0x5f, 0x67, 0xef, 0x11, 0x00, 0x00, + // 1606 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6f, 0xdb, 0x46, + 0x1a, 0xf6, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xa1, 0xcc, 0x26, 0x8e, 0xac, 0xcd, 0xd2, 0x8a, 0x6c, + 0x64, 0xbd, 0xde, 0x88, 0x32, 0xbc, 0x08, 0xb0, 0x31, 0xda, 0xa4, 0x92, 0x4d, 0x3b, 0x4e, 0x1d, + 0x3b, 0x1d, 0x29, 0x69, 0xd1, 0x0b, 0x41, 0x51, 0x23, 0x85, 0x8d, 0x24, 0xb2, 0xe4, 0x48, 0x8e, + 0xd1, 0x1a, 0x28, 0x72, 0x6b, 0x8b, 0x02, 0x45, 0x7b, 0x2b, 0x52, 0xa0, 0x87, 0xb6, 0xe8, 0x4f, + 0x28, 0xe0, 0x4b, 0x6e, 0x0d, 0x72, 0x08, 0xd2, 0xf4, 0xe2, 0x5b, 0x1b, 0xb9, 0x87, 0x5c, 0x0a, + 0x04, 0xf9, 0x05, 0x05, 0x67, 0x48, 0x45, 0xa2, 0xe9, 0x58, 0xce, 0xc7, 0x49, 0xe4, 0xfb, 0xbe, + 0xcf, 0xc3, 0x79, 0xe6, 0xfd, 0xe0, 0x88, 0xf0, 0xdf, 0x2d, 0x62, 0x89, 0x9a, 0x9e, 0xb5, 0xd4, + 0xeb, 0xa4, 0xae, 0x64, 0x4d, 0xbd, 0x46, 0xb2, 0x46, 0xb3, 0x54, 0xd3, 0x54, 0x59, 0x35, 0x9b, + 0x65, 0xc5, 0xd0, 0x44, 0xc3, 0xd4, 0xa9, 0x8e, 0x10, 0x0f, 0x14, 0x79, 0xa0, 0x68, 0x07, 0x26, + 0x33, 0x55, 0x8d, 0x5e, 0x6f, 0x96, 0x44, 0x55, 0xaf, 0x67, 0xab, 0x7a, 0x55, 0xcf, 0xb2, 0xd0, + 0x52, 0xb3, 0xc2, 0xee, 0xd8, 0x0d, 0xbb, 0xe2, 0x14, 0xc9, 0x93, 0x55, 0x5d, 0xaf, 0xd6, 0x48, + 0x56, 0x31, 0xb4, 0xac, 0xd2, 0x68, 0xe8, 0x54, 0xa1, 0x9a, 0xde, 0xb0, 0x1c, 0xef, 0x3f, 0x1d, + 0x6f, 0x87, 0x83, 0xd4, 0x0d, 0xba, 0xe9, 0x38, 0x93, 0xbd, 0xcb, 0x24, 0xa6, 0xa9, 0x9b, 0x1d, + 0x60, 0xaf, 0x4f, 0x37, 0xba, 0x59, 0x27, 0x7c, 0xf4, 0xe9, 0xa5, 0x0f, 0x88, 0x4a, 0x9d, 0x00, + 0xc1, 0x27, 0x80, 0x6e, 0x1a, 0xc4, 0x25, 0x18, 0xef, 0xf5, 0x77, 0xbb, 0xd2, 0xbd, 0xae, 0x16, + 0xb1, 0x48, 0xa3, 0xe5, 0x79, 0x7e, 0xca, 0x13, 0xa3, 0x91, 0x0d, 0xb9, 0x27, 0x22, 0xfd, 0x3d, + 0x80, 0xc3, 0x0b, 0x26, 0x51, 0x28, 0xc1, 0xe4, 0xc3, 0x26, 0xb1, 0x28, 0xba, 0x00, 0x23, 0x75, + 0x42, 0x95, 0xb2, 0x42, 0x95, 0x04, 0x48, 0x81, 0xe9, 0xd8, 0xdc, 0xa4, 0xd8, 0xbb, 0xfb, 0xeb, + 0x4c, 0x01, 0x47, 0x5d, 0x26, 0x54, 0x29, 0x6e, 0x1a, 0x04, 0x77, 0x40, 0x68, 0x19, 0x86, 0x2c, + 0x83, 0xa8, 0x89, 0x00, 0x03, 0xa7, 0xc5, 0xbd, 0xa9, 0x13, 0x39, 0xb6, 0x60, 0x10, 0xd5, 0xc6, + 0xe6, 0x47, 0xbf, 0xd9, 0x1a, 0xb2, 0x21, 0x62, 0x55, 0x95, 0xed, 0x5f, 0xcc, 0x08, 0xe6, 0xa3, + 0xf7, 0xce, 0x87, 0xf9, 0xb3, 0xd2, 0x4f, 0x00, 0x1c, 0x71, 0x97, 0x69, 0x19, 0x7a, 0xc3, 0x22, + 0xe8, 0x8d, 0x3d, 0xeb, 0x4c, 0xf9, 0xae, 0x73, 0x99, 0x50, 0x9f, 0x45, 0xae, 0xc3, 0x51, 0x6b, + 0xd3, 0xa2, 0xa4, 0x2e, 0x77, 0x48, 0x82, 0x8c, 0xe4, 0xb4, 0x87, 0xa4, 0xc0, 0xa2, 0xf6, 0x52, + 0x8d, 0x70, 0xf8, 0x65, 0x97, 0x70, 0xb1, 0x47, 0xf5, 0x84, 0x9f, 0xea, 0x65, 0x42, 0x0f, 0x21, + 0x79, 0x07, 0xc0, 0x11, 0x4c, 0x8c, 0x9a, 0xa2, 0x76, 0x52, 0xf3, 0xd6, 0x1e, 0xc9, 0x53, 0xbe, + 0x92, 0x1d, 0x98, 0x8f, 0xec, 0x8b, 0x3d, 0xab, 0x9c, 0xf4, 0x5b, 0xa5, 0x03, 0x3e, 0x60, 0xa5, + 0x28, 0x0b, 0xe3, 0x26, 0xb1, 0xf4, 0xa6, 0xa9, 0x12, 0xb9, 0x45, 0x4c, 0x4b, 0xd3, 0x1b, 0x6c, + 0x07, 0xa3, 0xf9, 0xd0, 0xe3, 0x6d, 0x00, 0xf0, 0xa8, 0xeb, 0xbd, 0xc6, 0x9d, 0xdd, 0xd2, 0x8e, + 0xc2, 0xd1, 0x8e, 0x32, 0x9e, 0xcd, 0xf4, 0x57, 0x00, 0xc2, 0x65, 0x42, 0x5d, 0xa5, 0x27, 0x61, + 0xb4, 0xa1, 0xd4, 0x89, 0x65, 0x28, 0x2a, 0x61, 0x52, 0xa3, 0xf8, 0x99, 0x01, 0x21, 0x18, 0xb2, + 0x6f, 0x98, 0x8a, 0x28, 0x66, 0xd7, 0x08, 0x43, 0xfb, 0x89, 0x8c, 0x4c, 0xae, 0xe8, 0x66, 0x5d, + 0xa1, 0x6c, 0x39, 0x23, 0x73, 0xff, 0xd9, 0x27, 0x15, 0xee, 0xa3, 0x97, 0x58, 0xf0, 0x82, 0x5e, + 0x26, 0x78, 0xc4, 0xec, 0xb1, 0xa5, 0xff, 0x1a, 0x84, 0xb1, 0xae, 0x48, 0x94, 0x87, 0x31, 0x95, + 0x15, 0x21, 0x7b, 0x82, 0xb3, 0x89, 0xa7, 0xf6, 0x2f, 0x70, 0x47, 0x0d, 0x86, 0x1c, 0x65, 0xb3, + 0x22, 0x09, 0x0e, 0x99, 0x5c, 0x3b, 0x27, 0x09, 0xee, 0xdf, 0x25, 0xbd, 0xd9, 0xc7, 0x31, 0x07, + 0xc7, 0x68, 0xfc, 0xb6, 0x3f, 0xf4, 0x9c, 0xed, 0xef, 0x69, 0x97, 0xc1, 0x57, 0xd1, 0x2e, 0x47, + 0x5e, 0x49, 0xbb, 0x84, 0x5f, 0xa6, 0x5d, 0xd0, 0x05, 0x18, 0xb6, 0xa8, 0x42, 0x9b, 0x56, 0xe2, + 0xbb, 0xdb, 0x20, 0x15, 0xf4, 0x11, 0xc5, 0x98, 0x0a, 0x2c, 0x86, 0x2f, 0x2a, 0x1f, 0xbc, 0xb3, + 0x05, 0xb0, 0x03, 0x43, 0x2b, 0xf0, 0xa8, 0x49, 0x2a, 0xc4, 0x34, 0xb5, 0x46, 0x55, 0xe6, 0x93, + 0xd9, 0x4a, 0x44, 0x18, 0xd3, 0xc9, 0x7d, 0x5a, 0xab, 0xc2, 0xf4, 0xc4, 0x3b, 0x30, 0x6e, 0xb7, + 0xd0, 0x35, 0x98, 0x28, 0x93, 0x1a, 0xa1, 0xa4, 0x2c, 0x73, 0x1f, 0x29, 0x77, 0x18, 0xa3, 0x7d, + 0x30, 0x8e, 0x39, 0x68, 0xec, 0x80, 0x5d, 0xde, 0xf7, 0xe0, 0x78, 0x59, 0xb3, 0x94, 0x52, 0xcd, + 0x8f, 0x18, 0xf6, 0x41, 0x7c, 0xc2, 0x85, 0x7b, 0x98, 0xbb, 0x3a, 0xf2, 0x52, 0x28, 0x02, 0xe2, + 0x81, 0xf4, 0x0f, 0x00, 0xc6, 0x56, 0x35, 0xab, 0xcf, 0x2e, 0x3c, 0x05, 0x87, 0x6a, 0x4a, 0x89, + 0xd4, 0xe4, 0x8a, 0x56, 0xa3, 0xc4, 0x74, 0xba, 0x31, 0xc6, 0x6c, 0x4b, 0xcc, 0x84, 0x26, 0xe1, + 0xb0, 0x49, 0x0c, 0xdd, 0xa4, 0x72, 0x45, 0x23, 0xb5, 0xb2, 0x95, 0x08, 0xa6, 0x82, 0xd3, 0x51, + 0x3c, 0xc4, 0x8d, 0x4b, 0xcc, 0x86, 0x66, 0xe1, 0x31, 0x27, 0x88, 0x27, 0xc5, 0x8d, 0x0d, 0xb1, + 0x58, 0xc4, 0x7d, 0x3c, 0x85, 0x1c, 0x91, 0xbe, 0x1d, 0x86, 0x71, 0xbe, 0x4e, 0xde, 0x98, 0x2b, + 0x94, 0xd4, 0xd1, 0x18, 0x0c, 0x53, 0xd2, 0x50, 0x1a, 0x94, 0xd5, 0x54, 0x14, 0x3b, 0x77, 0x2f, + 0x30, 0x4a, 0xe2, 0x30, 0xd8, 0xd4, 0xca, 0x7c, 0x9a, 0x61, 0xfb, 0x12, 0xa5, 0x60, 0xac, 0x4c, + 0x2c, 0xd5, 0xd4, 0xd8, 0xbb, 0x33, 0x11, 0xe3, 0x4a, 0xbb, 0x4c, 0x28, 0x09, 0x23, 0xee, 0x36, + 0x27, 0x86, 0x52, 0x60, 0x3a, 0x82, 0x3b, 0xf7, 0xe8, 0x22, 0x0c, 0xb3, 0x4d, 0xe1, 0x92, 0x62, + 0x73, 0xb3, 0x7e, 0x35, 0xea, 0xd5, 0x23, 0xae, 0x32, 0x88, 0xd4, 0xa0, 0xe6, 0x26, 0x76, 0xf0, + 0xe8, 0x5d, 0x18, 0xeb, 0x3a, 0xba, 0x38, 0xd9, 0x3f, 0xdb, 0x17, 0x5d, 0xee, 0x19, 0x8e, 0x73, + 0x76, 0x33, 0xa1, 0x73, 0x10, 0xea, 0x1b, 0x0d, 0x62, 0xca, 0xf6, 0x11, 0x21, 0x11, 0x65, 0x4d, + 0x99, 0xf4, 0xf0, 0x5e, 0xd3, 0xc8, 0x86, 0x5b, 0x53, 0x51, 0x16, 0x6d, 0x5b, 0x7a, 0x06, 0xcb, + 0xf0, 0xab, 0x18, 0x2c, 0x23, 0x2f, 0x35, 0x58, 0xe6, 0x61, 0xa4, 0x4a, 0x28, 0x1b, 0x12, 0xce, + 0x88, 0x3a, 0x68, 0xb8, 0xe0, 0x23, 0x55, 0x7e, 0x83, 0x16, 0x21, 0x74, 0x4a, 0xd0, 0x22, 0xd4, + 0x19, 0x03, 0x7d, 0x0e, 0x94, 0x28, 0x07, 0x16, 0x08, 0x4d, 0x9e, 0x83, 0xb1, 0xae, 0xdc, 0xd9, + 0xd5, 0x74, 0x83, 0x6c, 0x3a, 0x95, 0x67, 0x5f, 0xa2, 0x63, 0x70, 0xb0, 0xa5, 0xd4, 0x9a, 0x6e, + 0xd1, 0xf1, 0x9b, 0xf9, 0xc0, 0xff, 0x41, 0xf2, 0x3c, 0x8c, 0x7b, 0xf3, 0x74, 0x18, 0xfc, 0xa5, + 0x50, 0x64, 0x30, 0x1e, 0x4e, 0x7f, 0x0c, 0x87, 0xba, 0xd3, 0x8f, 0xe6, 0xe1, 0xa0, 0x46, 0x49, + 0xdd, 0x4a, 0xf0, 0x11, 0x39, 0xd5, 0x4f, 0xbd, 0x60, 0x0e, 0x41, 0xb3, 0x30, 0xcc, 0x8f, 0xbb, + 0x89, 0x00, 0x03, 0x27, 0x3c, 0x60, 0xc9, 0x76, 0xb2, 0x5d, 0x74, 0xe2, 0xd2, 0x37, 0xe0, 0xf0, + 0x22, 0x9b, 0x64, 0x2f, 0xfe, 0x2e, 0x9f, 0x86, 0xf1, 0x8a, 0xa2, 0xd5, 0x64, 0xad, 0xd2, 0x99, + 0x78, 0xac, 0x1b, 0x23, 0x78, 0xc4, 0xb6, 0xaf, 0x54, 0xdc, 0x49, 0x36, 0xf3, 0x14, 0xc0, 0xe3, + 0xbe, 0xef, 0x72, 0x94, 0x84, 0x63, 0xcb, 0x52, 0x51, 0xc6, 0x85, 0x2b, 0xf2, 0xd2, 0x3a, 0xbe, + 0x9c, 0x2b, 0xca, 0x8b, 0xd2, 0x52, 0xee, 0xea, 0x6a, 0x31, 0x3e, 0x80, 0xfe, 0x05, 0xc7, 0x3d, + 0xbe, 0xa5, 0x75, 0x2c, 0x2f, 0x60, 0x29, 0x57, 0x94, 0xe2, 0x00, 0x09, 0x30, 0xe9, 0xe3, 0xc6, + 0xd2, 0x95, 0xd5, 0xdc, 0x82, 0x14, 0x0f, 0xa0, 0x71, 0x78, 0xdc, 0xe3, 0x2f, 0x14, 0x73, 0xc5, + 0xab, 0x85, 0x78, 0x10, 0x9d, 0x80, 0xff, 0xf0, 0xb8, 0xb0, 0x94, 0x5b, 0x8c, 0x87, 0xd0, 0x14, + 0x4c, 0xed, 0x71, 0x2c, 0x49, 0x18, 0xaf, 0xac, 0x2d, 0xcb, 0xeb, 0xf9, 0x4b, 0xd2, 0x42, 0xb1, + 0x10, 0x1f, 0xf4, 0x89, 0xca, 0xe3, 0xf5, 0xb7, 0xa5, 0x35, 0x1e, 0x2c, 0xad, 0x2d, 0x48, 0x85, + 0x78, 0x78, 0xee, 0xc7, 0x28, 0x0c, 0xe6, 0xae, 0xac, 0xa0, 0xdf, 0x01, 0x0c, 0xf3, 0x83, 0x06, + 0x3a, 0xf8, 0x10, 0x92, 0x4c, 0x3f, 0x2f, 0xc4, 0x39, 0x85, 0x7d, 0x01, 0xda, 0xbf, 0x24, 0xde, + 0xa9, 0x9c, 0xbd, 0xa9, 0x66, 0x54, 0xbd, 0x61, 0xe9, 0x35, 0x92, 0x29, 0x29, 0x16, 0xc9, 0x28, + 0xe5, 0xba, 0xd6, 0x38, 0xe3, 0xb5, 0x6b, 0x6a, 0xb7, 0xc3, 0x0e, 0x3c, 0xd3, 0x22, 0x56, 0x46, + 0xd3, 0x33, 0x4d, 0xa5, 0xce, 0x5d, 0x99, 0x0d, 0x53, 0xa3, 0xe4, 0xd6, 0x6f, 0x7f, 0x7e, 0x1d, + 0x98, 0x4b, 0x67, 0x9c, 0xff, 0x76, 0xd9, 0x4e, 0xf6, 0xad, 0xec, 0x47, 0x6e, 0xdb, 0x8b, 0x1d, + 0xe3, 0x16, 0xfb, 0x1b, 0x64, 0xcd, 0x83, 0x19, 0xf4, 0x10, 0xc0, 0xe0, 0x32, 0xa1, 0x48, 0xd8, + 0xf7, 0x0c, 0xc7, 0xb5, 0x4d, 0x1c, 0x70, 0xc6, 0x4b, 0x7f, 0x0a, 0xee, 0xfe, 0x1c, 0xb0, 0xc5, + 0xad, 0xed, 0x15, 0x57, 0xd7, 0x1b, 0x1a, 0xd5, 0x4d, 0x3f, 0x79, 0x3d, 0x2e, 0xaf, 0x40, 0x93, + 0x28, 0x65, 0xa6, 0x2c, 0x83, 0xfe, 0xeb, 0xa7, 0xcc, 0x2b, 0x88, 0x5b, 0xb6, 0xd0, 0x7d, 0x00, + 0x43, 0x76, 0xbb, 0xa1, 0x89, 0xfd, 0x1b, 0x91, 0xcb, 0x4a, 0x1d, 0xd4, 0xa9, 0xe9, 0x5b, 0xaf, + 0x53, 0xd7, 0x69, 0x34, 0xd5, 0x8f, 0x2e, 0xf4, 0x14, 0xc0, 0x23, 0xce, 0x59, 0x15, 0xf5, 0x71, + 0x90, 0x4d, 0x4e, 0x3e, 0x37, 0xc6, 0x51, 0xf6, 0xed, 0x6b, 0x2c, 0xc5, 0x7c, 0xf2, 0xcd, 0x43, + 0x95, 0xa2, 0xc7, 0xb5, 0x65, 0x97, 0xe6, 0xaf, 0x00, 0x86, 0xf9, 0x9c, 0xf3, 0x6f, 0xbe, 0x9e, + 0x19, 0x98, 0x1c, 0x13, 0xf9, 0xf7, 0x05, 0xd1, 0xfd, 0xbe, 0x20, 0x4a, 0x75, 0x83, 0x6e, 0xa6, + 0x3f, 0x7f, 0x8d, 0x2a, 0x67, 0x67, 0x0e, 0x53, 0x96, 0xf3, 0x60, 0x26, 0xb9, 0x76, 0x67, 0x1b, + 0x04, 0x1e, 0x6e, 0x83, 0x71, 0x1f, 0x3d, 0xfc, 0x65, 0xb7, 0xb3, 0x0d, 0x40, 0x7b, 0x1b, 0x4c, + 0x1c, 0xf0, 0x4e, 0xbc, 0x75, 0x3f, 0x11, 0xb8, 0x0e, 0xf2, 0x9f, 0x81, 0x7b, 0xe7, 0x07, 0x17, + 0xf0, 0xd5, 0xc5, 0xd5, 0x07, 0x8f, 0x84, 0x81, 0x9d, 0x47, 0xc2, 0xc0, 0x93, 0x47, 0x02, 0xf8, + 0xa4, 0x2d, 0x80, 0x9f, 0xda, 0x02, 0xb8, 0xdb, 0x16, 0xc0, 0x83, 0xb6, 0x00, 0xfe, 0x68, 0x0b, + 0xe0, 0x71, 0x5b, 0x18, 0x78, 0xd2, 0x16, 0xc0, 0x97, 0xbb, 0xc2, 0xc0, 0x9d, 0x5d, 0x01, 0x3c, + 0xd8, 0x15, 0x06, 0x76, 0x76, 0x85, 0x81, 0xf7, 0x2f, 0x56, 0x75, 0xe3, 0x46, 0x55, 0x6c, 0xe9, + 0xf6, 0x79, 0xd2, 0x54, 0xc4, 0xa6, 0x95, 0x65, 0x17, 0xf6, 0x7f, 0xa7, 0x8c, 0x61, 0xea, 0x2d, + 0xad, 0x4c, 0xcc, 0x8c, 0xeb, 0xce, 0x1a, 0xa5, 0xaa, 0x9e, 0x25, 0x37, 0xa9, 0xf3, 0xc1, 0xa3, + 0xeb, 0xb3, 0x4a, 0x29, 0xcc, 0xb6, 0xfe, 0x7f, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x4c, 0x20, + 0xee, 0x01, 0x74, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/role/public_crudapi.vesapi.go b/pbgo/extschema/schema/role/public_crudapi.vesapi.go index 4d0eb0ee0..997559055 100644 --- a/pbgo/extschema/schema/role/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/role/public_crudapi.vesapi.go @@ -2753,10 +2753,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2813,10 +2817,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2919,10 +2927,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/role/public_customapi.pb.go b/pbgo/extschema/schema/role/public_customapi.pb.go index 00ca1bd7d..8d7ac2b11 100644 --- a/pbgo/extschema/schema/role/public_customapi.pb.go +++ b/pbgo/extschema/schema/role/public_customapi.pb.go @@ -610,64 +610,64 @@ func init() { } var fileDescriptor_b010d9b29cd8d246 = []byte{ - // 899 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4f, 0x8f, 0xdb, 0x44, - 0x14, 0xcf, 0x24, 0xd9, 0x34, 0x3b, 0x5b, 0x44, 0x19, 0x10, 0x72, 0xc3, 0xe2, 0x46, 0x2e, 0xa5, - 0x69, 0xa9, 0x6d, 0x08, 0x54, 0x95, 0xf6, 0x82, 0xd8, 0x56, 0x4a, 0x91, 0x40, 0x20, 0xc3, 0x89, - 0xcb, 0x6a, 0xe2, 0xbc, 0xf5, 0x0e, 0xb5, 0x3d, 0x83, 0x67, 0x9c, 0xb6, 0xaa, 0x56, 0x42, 0xfb, - 0x09, 0x10, 0xdc, 0xf8, 0x04, 0x7c, 0x04, 0x44, 0x85, 0xb4, 0xb7, 0x96, 0x03, 0x68, 0x29, 0x97, - 0x72, 0x63, 0xbd, 0x1c, 0xca, 0xad, 0x57, 0x6e, 0x28, 0x63, 0x27, 0x1b, 0xa7, 0x49, 0xff, 0xb1, - 0xb7, 0x79, 0xf3, 0x7e, 0xef, 0xcd, 0xef, 0xf7, 0xde, 0xbc, 0xb1, 0xf1, 0xb9, 0x21, 0x48, 0x87, - 0x71, 0x57, 0xfa, 0x5b, 0x10, 0x51, 0x37, 0xe1, 0x21, 0xb8, 0x22, 0xed, 0x87, 0xcc, 0xdf, 0xf0, - 0x53, 0xa9, 0x78, 0x44, 0x05, 0x73, 0x44, 0xc2, 0x15, 0x27, 0x24, 0x87, 0x3a, 0x39, 0xd4, 0x19, - 0x41, 0x5b, 0x76, 0xc0, 0xd4, 0x56, 0xda, 0x77, 0x7c, 0x1e, 0xb9, 0x01, 0x0f, 0xb8, 0xab, 0xa1, - 0xfd, 0x74, 0x53, 0x5b, 0xda, 0xd0, 0xab, 0x3c, 0x45, 0x6b, 0x35, 0xe0, 0x3c, 0x08, 0xc1, 0xa5, - 0x82, 0xb9, 0x34, 0x8e, 0xb9, 0xa2, 0x8a, 0xf1, 0x58, 0x16, 0xde, 0xd7, 0xca, 0x5c, 0xb8, 0x98, - 0x76, 0x9e, 0x9a, 0x43, 0x94, 0xf7, 0xbf, 0x04, 0x5f, 0x15, 0x00, 0x73, 0x0e, 0x40, 0xdd, 0x14, - 0x30, 0x4e, 0x70, 0xb2, 0xec, 0x9f, 0x76, 0xad, 0x96, 0x5d, 0x43, 0x1a, 0xb2, 0x01, 0x55, 0x50, - 0x78, 0xad, 0x19, 0x2f, 0x48, 0x88, 0x87, 0x65, 0x76, 0xd6, 0x3b, 0xf8, 0xa5, 0xcb, 0xba, 0x5c, - 0x1f, 0x31, 0xa9, 0x3c, 0xf8, 0x2a, 0x05, 0xa9, 0xc8, 0x2a, 0x5e, 0x8e, 0x69, 0x04, 0x52, 0x50, - 0x1f, 0x0c, 0xd4, 0x46, 0x9d, 0x65, 0xef, 0x70, 0xc3, 0xfa, 0x13, 0xe1, 0xba, 0xc7, 0x43, 0x20, - 0xaf, 0xe2, 0x86, 0x82, 0x98, 0xc6, 0xaa, 0xc0, 0x14, 0x56, 0x39, 0xbc, 0x3a, 0x13, 0x4e, 0x08, - 0xae, 0x8f, 0x0c, 0xa3, 0xa6, 0x1d, 0x7a, 0x4d, 0x4e, 0xe0, 0x5a, 0xca, 0x06, 0x46, 0x5d, 0x6f, - 0x8d, 0x96, 0xa4, 0x85, 0x9b, 0x03, 0x26, 0x69, 0x3f, 0x84, 0x81, 0xb1, 0xd4, 0x46, 0x9d, 0xa6, - 0x37, 0xb1, 0xc9, 0x1a, 0x6e, 0x06, 0xa0, 0x36, 0xa4, 0x00, 0xdf, 0x68, 0xb4, 0x51, 0x67, 0xa5, - 0x7b, 0xca, 0x79, 0xb4, 0xc5, 0x4e, 0x0f, 0xd4, 0x67, 0x02, 0xfc, 0xcf, 0x6f, 0x0a, 0xf0, 0x8e, - 0x05, 0xb9, 0x41, 0x5e, 0xc7, 0x98, 0x0a, 0xb6, 0x11, 0x24, 0x3c, 0x15, 0xd2, 0x38, 0xd6, 0xae, - 0x8d, 0xc8, 0x51, 0xc1, 0x7a, 0x7a, 0xc3, 0xba, 0x82, 0xc9, 0x74, 0x39, 0xa4, 0xe0, 0xb1, 0x04, - 0xe2, 0xe0, 0x25, 0xa6, 0x20, 0x92, 0x46, 0xb5, 0x5d, 0xeb, 0xac, 0x74, 0x8d, 0x79, 0xa7, 0x8d, - 0x2a, 0xe2, 0xe5, 0x30, 0xeb, 0x0a, 0x3e, 0x91, 0x67, 0xe9, 0xc1, 0xd3, 0xd5, 0x74, 0x52, 0x94, - 0xea, 0x61, 0x51, 0xac, 0x6b, 0xe3, 0xd6, 0xe8, 0x2c, 0x05, 0x95, 0x4b, 0xb8, 0x91, 0x5f, 0x1e, - 0x9d, 0x63, 0xa5, 0xdb, 0x9a, 0xc7, 0xe5, 0x13, 0x8d, 0x58, 0xaf, 0xed, 0x6e, 0x23, 0xaf, 0x80, - 0xcf, 0x08, 0xaf, 0xce, 0x0a, 0x7f, 0x80, 0xf0, 0xcb, 0xf9, 0x69, 0x97, 0x13, 0xa0, 0x0a, 0x9e, - 0x8e, 0xf6, 0xfb, 0xb8, 0x19, 0x81, 0xa2, 0x03, 0xaa, 0xa8, 0xa6, 0xbe, 0xd2, 0x3d, 0x3d, 0xc3, - 0x27, 0xa7, 0x92, 0xe7, 0xfc, 0x18, 0x14, 0xd5, 0xdd, 0x98, 0x04, 0x91, 0x1e, 0xae, 0xeb, 0x36, - 0xd6, 0x74, 0xb0, 0x35, 0x4f, 0x4c, 0x1e, 0x3b, 0xee, 0xe4, 0xfa, 0x8b, 0xdf, 0x6f, 0x1f, 0x1f, - 0x85, 0x38, 0x81, 0xaf, 0x6f, 0x80, 0xa7, 0x13, 0x90, 0x73, 0x25, 0x79, 0xf5, 0x91, 0xbc, 0x75, - 0xfc, 0xd3, 0x3f, 0xbb, 0xb5, 0xa5, 0x6f, 0x51, 0xb5, 0x89, 0xa6, 0xa5, 0xfe, 0x8c, 0xf0, 0x2b, - 0xb9, 0x54, 0x0f, 0x44, 0x48, 0x7d, 0x78, 0xee, 0x16, 0x91, 0xab, 0x25, 0xfa, 0xa7, 0xe7, 0xde, - 0x8b, 0xfc, 0x8c, 0xa3, 0xe3, 0xdf, 0xfd, 0xb7, 0x81, 0x97, 0x73, 0xfe, 0x1f, 0x7c, 0xfa, 0x21, - 0xf9, 0x15, 0x61, 0x7c, 0x78, 0x65, 0xc9, 0x99, 0xb9, 0x25, 0x9c, 0x9d, 0xf0, 0xd6, 0x9b, 0x4f, - 0x82, 0xe5, 0xd7, 0xcd, 0x12, 0x77, 0x7f, 0xac, 0xa2, 0xec, 0x8e, 0x71, 0x71, 0xf3, 0xe2, 0x0d, - 0xdf, 0xf6, 0x79, 0x2c, 0x79, 0x08, 0x76, 0x9f, 0x4a, 0xb0, 0x23, 0x1e, 0x33, 0xc5, 0x93, 0x0b, - 0x6d, 0xed, 0x1a, 0x6d, 0x5d, 0x68, 0x0f, 0x41, 0xda, 0x8c, 0xdb, 0x29, 0x8d, 0xec, 0x04, 0xe8, - 0x60, 0xe7, 0x8f, 0xbf, 0xbf, 0xab, 0xda, 0xe4, 0xad, 0xe2, 0x61, 0x76, 0xf3, 0x87, 0xd9, 0x9d, - 0xd4, 0x54, 0xba, 0xb7, 0x26, 0xeb, 0x6d, 0xfd, 0xf0, 0x49, 0xf2, 0x3b, 0x1a, 0xab, 0xeb, 0x81, - 0x22, 0x6f, 0x2c, 0xe6, 0x79, 0x38, 0x5b, 0xad, 0x33, 0x4f, 0x40, 0x15, 0x62, 0xae, 0xff, 0x7f, - 0x31, 0xef, 0x91, 0xee, 0x33, 0x88, 0xc9, 0x77, 0xb6, 0xc9, 0x2f, 0x08, 0x1f, 0x9f, 0x1e, 0x2e, - 0x72, 0x76, 0x31, 0xe1, 0xd2, 0xf8, 0xb5, 0x1e, 0x33, 0xde, 0x96, 0xca, 0xee, 0x18, 0x6b, 0x8f, - 0x4a, 0xa1, 0x83, 0x88, 0xc5, 0x8b, 0x84, 0x68, 0xa7, 0x7d, 0x3d, 0x61, 0x0a, 0xb4, 0x9e, 0xb7, - 0xad, 0x67, 0x69, 0xce, 0x1a, 0x3a, 0x4f, 0xee, 0x21, 0xfc, 0x42, 0x69, 0x7a, 0x48, 0x67, 0xb1, - 0x98, 0xf2, 0x80, 0x3d, 0x56, 0xcd, 0xad, 0x23, 0x50, 0x73, 0xa9, 0xf5, 0x1c, 0xdd, 0x59, 0x43, - 0xe7, 0x5b, 0x67, 0x77, 0x6f, 0xa3, 0xda, 0xbd, 0xdb, 0xe8, 0xe4, 0x42, 0x7e, 0x3b, 0xbf, 0x19, - 0xd5, 0x2d, 0xb4, 0xbe, 0x83, 0xf6, 0xf6, 0xcd, 0xca, 0xfd, 0x7d, 0xb3, 0xf2, 0x70, 0xdf, 0x44, - 0x5f, 0x67, 0x26, 0xfa, 0x21, 0x33, 0xd1, 0xdd, 0xcc, 0x44, 0x7b, 0x99, 0x89, 0xfe, 0xca, 0x4c, - 0xf4, 0x20, 0x33, 0x2b, 0x0f, 0x33, 0x13, 0x7d, 0x73, 0x60, 0x56, 0x76, 0x0f, 0x4c, 0xb4, 0x77, - 0x60, 0x56, 0xee, 0x1f, 0x98, 0x95, 0x2f, 0xae, 0x06, 0x5c, 0x5c, 0x0b, 0x9c, 0x21, 0x0f, 0x15, - 0x24, 0x09, 0x75, 0x52, 0xe9, 0xea, 0xc5, 0x26, 0x4f, 0x22, 0x5b, 0x24, 0x7c, 0xc8, 0x06, 0x90, - 0xd8, 0x63, 0xb7, 0x2b, 0xfa, 0x01, 0x77, 0xe1, 0x86, 0x2a, 0x3e, 0xde, 0x53, 0x3f, 0x07, 0xfd, - 0x86, 0xfe, 0x74, 0xbf, 0xfb, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb7, 0xe5, 0xa7, 0x8a, 0x03, - 0x09, 0x00, 0x00, + // 910 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcf, 0x6f, 0xdc, 0x44, + 0x14, 0xde, 0xd9, 0xcd, 0x8f, 0xcd, 0xa4, 0x88, 0x32, 0x20, 0xe4, 0x9a, 0xe0, 0xae, 0x5c, 0x4a, + 0xb7, 0xa5, 0xb6, 0x61, 0x01, 0x55, 0xca, 0x05, 0x91, 0x56, 0xda, 0x22, 0x81, 0x00, 0xd3, 0x13, + 0x97, 0x68, 0xd6, 0xfb, 0xe2, 0x0c, 0xb5, 0x3d, 0x83, 0x67, 0xbc, 0xb4, 0x42, 0x91, 0x50, 0xce, + 0x08, 0x21, 0x2a, 0x2e, 0xfc, 0x05, 0xfc, 0x09, 0x88, 0x0a, 0x29, 0x37, 0x7a, 0x42, 0x11, 0x5c, + 0xca, 0x8d, 0x6c, 0x7a, 0x68, 0x91, 0x40, 0xfd, 0x13, 0x90, 0xc7, 0xde, 0xcd, 0x7a, 0xb3, 0xe9, + 0x2f, 0xd1, 0xdb, 0xcc, 0x7c, 0xdf, 0x7b, 0xfe, 0xbe, 0xf7, 0xe6, 0x8d, 0x8c, 0xcf, 0x0e, 0x40, + 0xba, 0x8c, 0x7b, 0x32, 0xd8, 0x84, 0x98, 0x7a, 0x29, 0x8f, 0xc0, 0x13, 0x59, 0x2f, 0x62, 0xc1, + 0x7a, 0x90, 0x49, 0xc5, 0x63, 0x2a, 0x98, 0x2b, 0x52, 0xae, 0x38, 0x21, 0x05, 0xd5, 0x2d, 0xa8, + 0x6e, 0x4e, 0x35, 0x9d, 0x90, 0xa9, 0xcd, 0xac, 0xe7, 0x06, 0x3c, 0xf6, 0x42, 0x1e, 0x72, 0x4f, + 0x53, 0x7b, 0xd9, 0x86, 0xde, 0xe9, 0x8d, 0x5e, 0x15, 0x29, 0xcc, 0x95, 0x90, 0xf3, 0x30, 0x02, + 0x8f, 0x0a, 0xe6, 0xd1, 0x24, 0xe1, 0x8a, 0x2a, 0xc6, 0x13, 0x59, 0xa2, 0x2f, 0x55, 0xb5, 0x70, + 0x31, 0x09, 0x9e, 0x9c, 0x21, 0x94, 0xf7, 0x3e, 0x83, 0x40, 0x95, 0x04, 0x6b, 0x06, 0x41, 0x5d, + 0x17, 0x30, 0x4a, 0x70, 0xa2, 0x8a, 0x4f, 0x42, 0x2b, 0x55, 0x68, 0x40, 0x23, 0xd6, 0xa7, 0x0a, + 0x4a, 0xd4, 0x9e, 0x42, 0x41, 0x42, 0x32, 0xa8, 0xaa, 0xb3, 0xdf, 0xc0, 0xcf, 0x5d, 0xd4, 0xe5, + 0x7a, 0x9f, 0x49, 0xe5, 0xc3, 0xe7, 0x19, 0x48, 0x45, 0x56, 0xf0, 0x52, 0x42, 0x63, 0x90, 0x82, + 0x06, 0x60, 0xa0, 0x16, 0x6a, 0x2f, 0xf9, 0x07, 0x07, 0xf6, 0x9f, 0x08, 0xcf, 0xf9, 0x3c, 0x02, + 0xf2, 0x22, 0x5e, 0x50, 0x90, 0xd0, 0x44, 0x95, 0x9c, 0x72, 0x57, 0x0d, 0xaf, 0x4f, 0x85, 0x13, + 0x82, 0xe7, 0xf2, 0x8d, 0xd1, 0xd0, 0x80, 0x5e, 0x93, 0xe3, 0xb8, 0x91, 0xb1, 0xbe, 0x31, 0xa7, + 0x8f, 0xf2, 0x25, 0x31, 0x71, 0xb3, 0xcf, 0x24, 0xed, 0x45, 0xd0, 0x37, 0xe6, 0x5b, 0xa8, 0xdd, + 0xf4, 0xc7, 0x7b, 0xb2, 0x8a, 0x9b, 0x21, 0xa8, 0x75, 0x29, 0x20, 0x30, 0x16, 0x5a, 0xa8, 0xbd, + 0xdc, 0x39, 0xe9, 0x1e, 0x6e, 0xb1, 0xdb, 0x05, 0xf5, 0x89, 0x80, 0xe0, 0xca, 0x75, 0x01, 0xfe, + 0x62, 0x58, 0x6c, 0xc8, 0xcb, 0x18, 0x53, 0xc1, 0xd6, 0xc3, 0x94, 0x67, 0x42, 0x1a, 0x8b, 0xad, + 0x46, 0x2e, 0x8e, 0x0a, 0xd6, 0xd5, 0x07, 0xf6, 0x25, 0x4c, 0x26, 0xcb, 0x21, 0x05, 0x4f, 0x24, + 0x10, 0x17, 0xcf, 0x33, 0x05, 0xb1, 0x34, 0xea, 0xad, 0x46, 0x7b, 0xb9, 0x63, 0xcc, 0xfa, 0x5a, + 0x5e, 0x11, 0xbf, 0xa0, 0xd9, 0x97, 0xf0, 0xf1, 0x22, 0x4b, 0x17, 0x1e, 0xad, 0xa6, 0xe3, 0xa2, + 0xd4, 0x0f, 0x8a, 0x62, 0x5f, 0x1d, 0xb5, 0x46, 0x67, 0x29, 0xa5, 0x5c, 0xc0, 0x0b, 0xc5, 0xe5, + 0xd1, 0x39, 0x96, 0x3b, 0xe6, 0x2c, 0x2d, 0x1f, 0x6a, 0xc6, 0x5a, 0x63, 0x67, 0x0b, 0xf9, 0x25, + 0x7d, 0xca, 0x78, 0x7d, 0xda, 0xf8, 0x5d, 0x84, 0x9f, 0x2f, 0xbe, 0x76, 0x31, 0x05, 0xaa, 0xe0, + 0xd1, 0x64, 0xbf, 0x83, 0x9b, 0x31, 0x28, 0xda, 0xa7, 0x8a, 0x6a, 0xe9, 0xcb, 0x9d, 0x53, 0x53, + 0x7a, 0x0a, 0x29, 0x45, 0xce, 0x0f, 0x40, 0x51, 0xdd, 0x8d, 0x71, 0x10, 0xe9, 0xe2, 0x39, 0xdd, + 0xc6, 0x86, 0x0e, 0xb6, 0x67, 0x99, 0x29, 0x62, 0x47, 0x9d, 0x5c, 0x7b, 0xf6, 0x87, 0xad, 0x63, + 0x79, 0x88, 0x1b, 0x06, 0xfa, 0x06, 0xf8, 0x3a, 0x01, 0x39, 0x5b, 0xb1, 0x37, 0x97, 0xdb, 0x5b, + 0xc3, 0x3f, 0xdf, 0xdb, 0x69, 0xcc, 0x7f, 0x87, 0xea, 0x4d, 0x34, 0x69, 0xf5, 0x17, 0x84, 0x5f, + 0x28, 0xac, 0xfa, 0x20, 0x22, 0x1a, 0xc0, 0x13, 0xb7, 0x88, 0x5c, 0xae, 0xc8, 0x3f, 0x35, 0xf3, + 0x5e, 0x14, 0xdf, 0xf8, 0xff, 0xf4, 0x77, 0xee, 0x2d, 0xe2, 0xa5, 0x42, 0xff, 0xbb, 0x1f, 0xbd, + 0x47, 0xfe, 0x46, 0x18, 0x1f, 0x5c, 0x59, 0x72, 0x7a, 0x66, 0x09, 0xa7, 0x27, 0xdc, 0x7c, 0xf5, + 0x61, 0xb4, 0xe2, 0xba, 0xd9, 0x5f, 0xa3, 0x5b, 0x3f, 0xd5, 0xd1, 0xf0, 0x57, 0xe3, 0xe3, 0x8d, + 0xb7, 0xaf, 0x05, 0x4e, 0xc0, 0x13, 0xc9, 0x23, 0x70, 0x7a, 0x54, 0x82, 0x13, 0xf3, 0x84, 0x29, + 0x9e, 0x9e, 0x6f, 0x4d, 0x43, 0x2c, 0x98, 0xc2, 0x72, 0xfa, 0xf9, 0xd6, 0x00, 0xa4, 0xc3, 0xb8, + 0x93, 0xd1, 0xd8, 0x49, 0x81, 0xf6, 0xb7, 0xff, 0xb8, 0x73, 0xa3, 0xee, 0x90, 0xd7, 0xca, 0x57, + 0xdb, 0x2b, 0x5e, 0x6d, 0x6f, 0x5c, 0x70, 0xe9, 0x7d, 0x39, 0x5e, 0x6f, 0xe9, 0x57, 0x51, 0x92, + 0x7f, 0xd1, 0xc8, 0x7a, 0x17, 0x14, 0x79, 0xe5, 0x68, 0x13, 0x07, 0x83, 0x67, 0x9e, 0x7e, 0x08, + 0xab, 0x74, 0x7a, 0xe3, 0x29, 0x3b, 0x7d, 0x8b, 0x74, 0x1e, 0xc3, 0x69, 0x71, 0xb2, 0x45, 0xee, + 0x20, 0x7c, 0x6c, 0x72, 0x2c, 0xc9, 0x99, 0xa3, 0xdd, 0x54, 0x06, 0xd7, 0x7c, 0xc0, 0xc3, 0x60, + 0x7f, 0x93, 0xfb, 0xbc, 0x72, 0xd8, 0x27, 0xed, 0xc7, 0x2c, 0x99, 0xe9, 0x72, 0x12, 0x39, 0xe4, + 0x51, 0x83, 0xce, 0x17, 0x29, 0x53, 0xa0, 0xad, 0xbe, 0x6e, 0x3f, 0x4e, 0x53, 0x57, 0xd1, 0x39, + 0xf2, 0x0f, 0xc2, 0xcf, 0x54, 0x46, 0x92, 0xb4, 0x8f, 0xf6, 0x59, 0x9d, 0xda, 0x07, 0x1a, 0xfd, + 0xfe, 0xe9, 0x1a, 0xbd, 0x60, 0x3e, 0x41, 0x4f, 0x57, 0xd1, 0x39, 0xf3, 0xcc, 0xce, 0x4d, 0xd4, + 0xf8, 0xfd, 0x26, 0x3a, 0x71, 0xa4, 0xf4, 0xed, 0xdf, 0x8c, 0xfa, 0x26, 0x5a, 0xdb, 0x46, 0xbb, + 0x7b, 0x56, 0xed, 0xf6, 0x9e, 0x55, 0xbb, 0xbf, 0x67, 0xa1, 0xaf, 0x86, 0x16, 0xfa, 0x71, 0x68, + 0xa1, 0x5b, 0x43, 0x0b, 0xed, 0x0e, 0x2d, 0xf4, 0xd7, 0xd0, 0x42, 0x77, 0x87, 0x56, 0xed, 0xfe, + 0xd0, 0x42, 0xdf, 0xee, 0x5b, 0xb5, 0x9d, 0x7d, 0x0b, 0xed, 0xee, 0x5b, 0xb5, 0xdb, 0xfb, 0x56, + 0xed, 0xd3, 0xcb, 0x21, 0x17, 0x57, 0x43, 0x77, 0xc0, 0x23, 0x05, 0x69, 0x4a, 0xdd, 0x4c, 0x7a, + 0x7a, 0xb1, 0xc1, 0xd3, 0xd8, 0x11, 0x29, 0x1f, 0xb0, 0x3e, 0xa4, 0xce, 0x08, 0xf6, 0x44, 0x2f, + 0xe4, 0x1e, 0x5c, 0x53, 0xe5, 0xcf, 0xc2, 0xc4, 0xcf, 0x48, 0x6f, 0x41, 0xff, 0x2a, 0xbc, 0xf9, + 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0b, 0xc7, 0x88, 0x09, 0x73, 0x09, 0x00, 0x00, } func (this *CustomListRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/role/public_customapi.vesapi.go b/pbgo/extschema/schema/role/public_customapi.vesapi.go index 1aece38ec..16c733d31 100644 --- a/pbgo/extschema/schema/role/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/role/public_customapi.vesapi.go @@ -1478,10 +1478,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -1538,10 +1542,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/route/crudapi/api.vesapi.go b/pbgo/extschema/schema/route/crudapi/api.vesapi.go index adafc777f..904bd90a6 100644 --- a/pbgo/extschema/schema/route/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/route/crudapi/api.vesapi.go @@ -3446,7 +3446,7 @@ var APISwaggerJSON string = `{ "x-ves-displayorder": "1,8,9,25,20,10,11,13,14,15,16,18,19,23", "x-ves-oneof-field-cluster_retract_choice": "[\"do_not_retract_cluster\",\"retract_cluster\"]", "x-ves-oneof-field-host_rewrite_params": "[\"auto_host_rewrite\",\"host_rewrite\"]", - "x-ves-oneof-field-route_destination_rewrite": "[\"prefix_rewrite\"]", + "x-ves-oneof-field-route_destination_rewrite": "[\"prefix_rewrite\",\"regex_rewrite\"]", "x-ves-proto-message": "ves.io.schema.route.RouteDestinationList", "properties": { "auto_host_rewrite": { @@ -3533,7 +3533,7 @@ var APISwaggerJSON string = `{ }, "prefix_rewrite": { "type": "string", - "description": "Exclusive with []\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value. This option allows application\n URLs to be rooted at a different path from those exposed at the reverse proxy layer.\n\n Example :\n gcSpec:\n routes:\n - match:\n - headers: []\n path:\n prefix : /register/\n query_params: []\n - headers: []\n path:\n prefix: /register\n query_params: []\n routeDestination:\n prefixRewrite: \"/\"\n destinations:\n - cluster:\n - kind: cluster.Object\n uid: cluster-1\n\n Having above entries in the config, requests to /register will be stripped to /,\n while requests to /register/public will be stripped to /public\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "description": "Exclusive with [regex_rewrite]\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value. This option allows application\n URLs to be rooted at a different path from those exposed at the reverse proxy layer.\n\n Example :\n gcSpec:\n routes:\n - match:\n - headers: []\n path:\n prefix : /register/\n query_params: []\n - headers: []\n path:\n prefix: /register\n query_params: []\n routeDestination:\n prefixRewrite: \"/\"\n destinations:\n - cluster:\n - kind: cluster.Object\n uid: cluster-1\n\n Having above entries in the config, requests to /register will be stripped to /,\n while requests to /register/public will be stripped to /public\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", "title": "prefix_rewrite", "maxLength": 256, "x-displayname": "Prefix Rewrite", @@ -3549,6 +3549,13 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaRoutingPriority", "x-displayname": "Priority" }, + "regex_rewrite": { + "description": "Exclusive with [prefix_rewrite]\n regex_rewrite indicates that during forwarding, the matched regex should be swapped\n with the substitution value. \n\n Example :\n gcSpec:\n routes:\n - match:\n - headers: []\n path:\n regex : \"^/service/([^/]+)(/.*)$\"\n query_params: []\n routeDestination:\n regexRewrite: \n pattern: \"^/service/([^/]+)(/.*)$\" \n substitution: \"\\\\2/instance/\\\\1\"\n destinations:\n - cluster:\n - kind: cluster.Object\n uid: cluster-1\n\n The path pattern \"^/service/([^/]+)(/.*)$\" paired with a substitution string of \"\\\\2/instance/\\\\1\" \n would transform \"/service/foo/v1/api\" into \"/v1/api/instance/foo\".\n\nExample: - \"^/service/([^/]+)(/.*)$\"-", + "title": "regex_rewrite", + "$ref": "#/definitions/schemaRegexMatchRewrite", + "x-displayname": "Regex Rewrite", + "x-ves-example": "^/service/([^/]+)(/.*)$" + }, "retract_cluster": { "description": "Exclusive with [do_not_retract_cluster]\n When this option is enabled, weighted cluster will not be considered\n for loadbalancing, if all its endpoints are unhealthy.\n Since the cluster with all unhealthy endpoints is removed, the traffic\n will be distributed among remaining clusters as per their weight.\n Also panic-threshold configuration is ignored for retracted cluster.\n\n This option is ignored when single destination cluster is configured\n for route", "title": "retract_cluster", @@ -4589,10 +4596,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4638,18 +4649,35 @@ var APISwaggerJSON string = `{ }, "schemaRegexMatchRewrite": { "type": "object", - "description": "x-displayName: \"Regex Match Rewrite\"\nRegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", + "description": "RegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", "title": "RegexMatchRewrite", + "x-displayname": "Regex Match Rewrite", + "x-ves-proto-message": "ves.io.schema.RegexMatchRewrite", "properties": { "pattern": { "type": "string", - "description": "x-displayName: \"Pattern\"\nx-example: \"^/service/([^/]+)(/.*)$\"\nThe regular expression used to find portions of a string that should be replaced.", - "title": "Pattern" + "description": " The regular expression used to find portions of a string that should be replaced.\n\nExample: - \"^/service/([^/]+)(/.*)$\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.regex: true\n", + "title": "Pattern", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Pattern", + "x-ves-example": "^/service/([^/]+)(/.*)$", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true" + } }, "substitution": { "type": "string", - "description": "x-displayName: \"Substitution\"\nx-example: \"\\\\2/instance/\\\\1\"\nThe string that should be substituted into matching portions of the subject string during a \nsubstitution operation to produce a new string.", - "title": "Substitution" + "description": " The string that should be substituted into matching portions of the subject string during a \n substitution operation to produce a new string.\n\nExample: - \"\\\\2/instance/\\\\1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Substitution", + "maxLength": 256, + "x-displayname": "Substitution", + "x-ves-example": "\\\\2/instance/\\\\1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } } } }, diff --git a/pbgo/extschema/schema/route/object.pb.go b/pbgo/extschema/schema/route/object.pb.go index 8261ce51e..9fc406d6b 100644 --- a/pbgo/extschema/schema/route/object.pb.go +++ b/pbgo/extschema/schema/route/object.pb.go @@ -244,45 +244,46 @@ func init() { } var fileDescriptor_60c193a3b7d05bda = []byte{ - // 601 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xb1, 0x6f, 0xd3, 0x4e, - 0x14, 0xc7, 0x7d, 0x4e, 0x7f, 0x69, 0x7f, 0xd7, 0xaa, 0x54, 0xee, 0x62, 0x0a, 0x1c, 0x55, 0x58, - 0x3a, 0x60, 0x1b, 0x8a, 0x10, 0xb4, 0xaa, 0x90, 0x68, 0x91, 0x0a, 0x52, 0x2b, 0xa4, 0x14, 0x31, - 0xb0, 0x44, 0xe7, 0xcb, 0x8b, 0x6b, 0x88, 0x73, 0xd6, 0xdd, 0xd9, 0x34, 0x03, 0x12, 0x1b, 0x2b, - 0x7f, 0x03, 0x53, 0x85, 0xc4, 0xff, 0x40, 0x99, 0x18, 0xab, 0x4e, 0x19, 0x89, 0xb3, 0x30, 0x76, - 0xe0, 0x0f, 0x40, 0x39, 0xd7, 0x51, 0x12, 0x79, 0x40, 0xd9, 0xee, 0xf4, 0x3e, 0xdf, 0xaf, 0xdf, - 0x7b, 0xf7, 0x9e, 0xf1, 0x7a, 0x0a, 0xd2, 0x0d, 0xb9, 0x27, 0xd9, 0x31, 0x44, 0xd4, 0x13, 0x3c, - 0x51, 0xe0, 0x71, 0xff, 0x2d, 0x30, 0xe5, 0xc6, 0x82, 0x2b, 0x6e, 0xad, 0xe6, 0x84, 0x9b, 0x13, - 0xae, 0x26, 0xd6, 0x9c, 0x20, 0x54, 0xc7, 0x89, 0xef, 0x32, 0x1e, 0x79, 0x01, 0x0f, 0xb8, 0xa7, - 0x59, 0x3f, 0x69, 0xe9, 0x9b, 0xbe, 0xe8, 0x53, 0xee, 0xb1, 0x76, 0x63, 0xf2, 0x2b, 0x3c, 0x56, - 0x21, 0xef, 0xc8, 0xab, 0xe0, 0xed, 0xb2, 0x14, 0x54, 0x37, 0x86, 0x02, 0xb8, 0x3e, 0x09, 0x8c, - 0x87, 0x6a, 0x93, 0xa1, 0x14, 0x24, 0x74, 0xd2, 0x49, 0xff, 0xda, 0x9f, 0x0a, 0xae, 0xbe, 0xd4, - 0x15, 0x59, 0x5b, 0x78, 0x21, 0x02, 0x45, 0x9b, 0x54, 0x51, 0x1b, 0xad, 0xa3, 0x8d, 0xc5, 0xcd, - 0x5b, 0xee, 0x64, 0x79, 0x39, 0x78, 0x08, 0x8a, 0xbe, 0xea, 0xc6, 0x50, 0x1f, 0xe1, 0xd6, 0x01, - 0xbe, 0x26, 0xbb, 0x52, 0x41, 0xd4, 0x18, 0x39, 0x98, 0xda, 0xe1, 0xce, 0x94, 0xc3, 0x91, 0xa6, - 0xa6, 0x7c, 0x96, 0x73, 0xed, 0x61, 0xe1, 0x76, 0x1f, 0xcf, 0xc9, 0x18, 0x98, 0x5d, 0x29, 0x4d, - 0x42, 0xb7, 0xc0, 0x3d, 0x8a, 0x81, 0x69, 0xb1, 0x46, 0xb7, 0xbf, 0x99, 0x3f, 0xce, 0x6c, 0x73, - 0x05, 0x5d, 0x9c, 0xd9, 0x5f, 0x4c, 0xfc, 0x08, 0x57, 0xf6, 0x41, 0x59, 0xf7, 0x5a, 0x0f, 0x4f, - 0x98, 0x23, 0x81, 0x25, 0x02, 0x22, 0x90, 0xc7, 0x8e, 0x4f, 0x65, 0xc8, 0x9c, 0x88, 0x77, 0x42, - 0xc5, 0xc5, 0xdd, 0xe1, 0xeb, 0x3a, 0x21, 0x77, 0x62, 0xc1, 0x4f, 0xba, 0x8e, 0x00, 0xda, 0xc4, - 0x5b, 0x78, 0xbe, 0x0e, 0x71, 0x9b, 0x32, 0xb0, 0xdc, 0x72, 0x71, 0x22, 0x61, 0x5a, 0xf9, 0x5e, - 0x84, 0x0a, 0xf0, 0x63, 0x5c, 0xdd, 0x13, 0x40, 0xd5, 0x4c, 0xca, 0x67, 0xd0, 0x86, 0x99, 0x94, - 0x73, 0x07, 0xa1, 0x9c, 0xa1, 0xd0, 0xda, 0x73, 0xbc, 0x50, 0x74, 0xd0, 0xda, 0xc1, 0xf3, 0x01, - 0x6b, 0xe8, 0x8e, 0x97, 0x3f, 0x5a, 0xde, 0xf1, 0xfd, 0x36, 0xf7, 0x69, 0x7b, 0xd4, 0xf7, 0x6a, - 0xc0, 0x86, 0xe7, 0xda, 0xa9, 0x89, 0x97, 0x8e, 0x14, 0x55, 0x89, 0xfc, 0xe7, 0x31, 0xca, 0xf1, - 0x92, 0x31, 0xda, 0xc7, 0x8b, 0xf9, 0x76, 0x35, 0x04, 0xb4, 0xa4, 0x6d, 0xae, 0x57, 0x36, 0x16, - 0x37, 0x6f, 0x96, 0x0e, 0x61, 0x1d, 0x5a, 0x43, 0xf1, 0xee, 0xc2, 0xd7, 0x0f, 0xff, 0xe9, 0xfc, - 0xea, 0x98, 0x17, 0x01, 0x69, 0xed, 0x60, 0xcc, 0x78, 0xa7, 0x19, 0xea, 0x49, 0xb7, 0x2b, 0xa5, - 0x3e, 0x7b, 0x05, 0xa0, 0x93, 0x18, 0xe3, 0xad, 0xa7, 0x18, 0xa7, 0x20, 0x1a, 0x52, 0xa7, 0x69, - 0xcf, 0x69, 0x75, 0xad, 0xb4, 0x27, 0xaf, 0x41, 0xe4, 0xc5, 0x68, 0x8f, 0xff, 0xd3, 0xe2, 0xba, - 0xbd, 0x7a, 0xf1, 0x64, 0x05, 0x2f, 0xe3, 0xa5, 0xa2, 0x34, 0x37, 0x09, 0x9b, 0xbb, 0x9f, 0xd0, - 0x79, 0x9f, 0x18, 0xbd, 0x3e, 0x31, 0x2e, 0xfb, 0x04, 0x7d, 0xcc, 0x08, 0x3a, 0xcd, 0x08, 0xfa, - 0x99, 0x11, 0x74, 0x9e, 0x11, 0xd4, 0xcb, 0x08, 0xfa, 0x95, 0x11, 0xf4, 0x3b, 0x23, 0xc6, 0x65, - 0x46, 0xd0, 0xe7, 0x01, 0x31, 0xbe, 0x0f, 0x08, 0x3a, 0x1f, 0x10, 0xa3, 0x37, 0x20, 0xc6, 0x9b, - 0x17, 0x01, 0x8f, 0xdf, 0x05, 0x6e, 0xca, 0xdb, 0x0a, 0x84, 0xa0, 0x6e, 0x22, 0x3d, 0x7d, 0x68, - 0x71, 0x11, 0x0d, 0xdf, 0x36, 0x0d, 0x9b, 0x20, 0x9c, 0x22, 0xec, 0xc5, 0x7e, 0xc0, 0x3d, 0x38, - 0x51, 0x57, 0xdb, 0x3f, 0xfe, 0x03, 0xf1, 0xab, 0x7a, 0xf9, 0x1f, 0xfc, 0x0d, 0x00, 0x00, 0xff, - 0xff, 0xca, 0x81, 0x71, 0xb6, 0xe1, 0x04, 0x00, 0x00, + // 618 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xcf, 0x4f, 0xd4, 0x4e, + 0x14, 0xc0, 0x3b, 0x5b, 0x58, 0xf8, 0x0e, 0x84, 0x2f, 0x29, 0x97, 0x8a, 0x3a, 0x6e, 0xd6, 0x0b, + 0x07, 0xdb, 0x46, 0x8c, 0x07, 0x09, 0x31, 0x11, 0x4c, 0xd0, 0x04, 0x62, 0xb2, 0x18, 0x7f, 0x70, + 0xd9, 0x4c, 0xa7, 0x6f, 0x4b, 0x75, 0xbb, 0xd3, 0xcc, 0x4c, 0x2b, 0x7b, 0x30, 0xf1, 0xe6, 0xd5, + 0x8b, 0xff, 0x03, 0xf1, 0xaf, 0x10, 0xbd, 0x78, 0x32, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0x3c, 0xf2, + 0x27, 0x18, 0xa6, 0x14, 0x29, 0x69, 0x8c, 0x07, 0xb9, 0xcd, 0xe4, 0x7d, 0xde, 0xa7, 0xef, 0x4d, + 0xdf, 0x0c, 0x6e, 0x65, 0x20, 0xdd, 0x88, 0x7b, 0x92, 0x6d, 0x43, 0x4c, 0x3d, 0xc1, 0x53, 0x05, + 0x1e, 0xf7, 0x5f, 0x01, 0x53, 0x6e, 0x22, 0xb8, 0xe2, 0xd6, 0x5c, 0x41, 0xb8, 0x05, 0xe1, 0x6a, + 0x62, 0xde, 0x09, 0x23, 0xb5, 0x9d, 0xfa, 0x2e, 0xe3, 0xb1, 0x17, 0xf2, 0x90, 0x7b, 0x9a, 0xf5, + 0xd3, 0x9e, 0xde, 0xe9, 0x8d, 0x5e, 0x15, 0x8e, 0xf9, 0xab, 0xd5, 0xaf, 0xf0, 0x44, 0x45, 0x7c, + 0x20, 0x4f, 0x83, 0x37, 0xea, 0x4a, 0x50, 0xc3, 0x04, 0x4a, 0xe0, 0x4a, 0x15, 0x38, 0x1f, 0x6a, + 0x57, 0x43, 0x19, 0x48, 0x18, 0x64, 0x55, 0x7f, 0xfb, 0xe3, 0x38, 0x6e, 0x3e, 0xd1, 0x1d, 0x59, + 0xf7, 0xf0, 0x64, 0x0c, 0x8a, 0x06, 0x54, 0x51, 0x1b, 0xb5, 0xd0, 0xc2, 0xd4, 0xe2, 0x75, 0xb7, + 0xda, 0x5e, 0x01, 0x6e, 0x80, 0xa2, 0x4f, 0x87, 0x09, 0x74, 0xce, 0x70, 0x6b, 0x1d, 0xff, 0x2f, + 0x87, 0x52, 0x41, 0xdc, 0x3d, 0x33, 0x34, 0xb4, 0xe1, 0xe6, 0x05, 0xc3, 0xa6, 0xa6, 0x2e, 0x78, + 0x66, 0x8a, 0xdc, 0x8d, 0xd2, 0x76, 0x1b, 0x8f, 0xc9, 0x04, 0x98, 0x6d, 0xd6, 0x16, 0xa1, 0x8f, + 0xc0, 0xdd, 0x4c, 0x80, 0xe9, 0x64, 0x8d, 0x2e, 0x7d, 0x37, 0xbf, 0xec, 0xd9, 0x8d, 0x59, 0x74, + 0xb0, 0x67, 0x7f, 0x35, 0xf1, 0x4b, 0x6c, 0xae, 0x81, 0xb2, 0x3a, 0xbd, 0xbb, 0x3b, 0xcc, 0x91, + 0xc0, 0x52, 0x01, 0x31, 0xc8, 0x6d, 0xc7, 0xa7, 0x32, 0x62, 0x4e, 0xcc, 0x07, 0x91, 0xe2, 0xe2, + 0x56, 0xeb, 0x62, 0x58, 0x2a, 0x3a, 0x08, 0xa8, 0x08, 0x7e, 0x13, 0x19, 0x48, 0x27, 0xe2, 0x4e, + 0x22, 0xf8, 0xce, 0xd0, 0x11, 0x40, 0x03, 0xfc, 0x02, 0x4f, 0x74, 0x20, 0xe9, 0x53, 0x06, 0xd6, + 0x46, 0xbd, 0x3e, 0x95, 0xf0, 0x27, 0x77, 0x11, 0xae, 0x88, 0xdf, 0x88, 0x48, 0x01, 0x7e, 0x8e, + 0x9b, 0xab, 0x02, 0xa8, 0xba, 0x0c, 0xf1, 0x43, 0xe8, 0xc3, 0xbf, 0x17, 0x6f, 0xe1, 0xb1, 0xf5, + 0x48, 0x5e, 0xca, 0x39, 0xb7, 0x1f, 0xe1, 0xc9, 0xf2, 0x17, 0x5b, 0xcb, 0x78, 0x22, 0x64, 0x5d, + 0x3d, 0x12, 0xf5, 0x53, 0x55, 0x8c, 0xc4, 0x5a, 0x9f, 0xfb, 0xb4, 0x7f, 0x36, 0x18, 0xcd, 0x90, + 0x9d, 0xac, 0xdb, 0xbb, 0x0d, 0x3c, 0xbd, 0xa9, 0xa8, 0x4a, 0xe5, 0x5f, 0xcf, 0x79, 0x81, 0xd7, + 0xcc, 0xf9, 0x1a, 0x9e, 0x2a, 0xae, 0x7f, 0x57, 0x40, 0x4f, 0xda, 0x8d, 0x96, 0xb9, 0x30, 0xb5, + 0x78, 0xad, 0xf6, 0x96, 0x74, 0xa0, 0x77, 0x92, 0xbc, 0x32, 0xf9, 0xe9, 0xed, 0xb8, 0xae, 0xaf, + 0x83, 0x79, 0x19, 0x90, 0xd6, 0x32, 0xc6, 0x8c, 0x0f, 0x82, 0x48, 0x5f, 0x45, 0xdb, 0xac, 0xf5, + 0xac, 0x96, 0x80, 0x2e, 0xe2, 0x1c, 0x6f, 0x3d, 0xc0, 0x38, 0x03, 0xd1, 0x95, 0xba, 0x4c, 0x7b, + 0x4c, 0x67, 0xb7, 0x6b, 0xcf, 0xe4, 0x19, 0x88, 0xa2, 0x19, 0xed, 0xf8, 0x2f, 0x2b, 0xb7, 0x4b, + 0x73, 0x07, 0xf7, 0x67, 0xf1, 0x0c, 0x9e, 0x2e, 0x5b, 0x73, 0xd3, 0x28, 0x58, 0x79, 0x8f, 0xf6, + 0x8f, 0x88, 0x71, 0x78, 0x44, 0x8c, 0xe3, 0x23, 0x82, 0xde, 0xe5, 0x04, 0xed, 0xe6, 0x04, 0x7d, + 0xcb, 0x09, 0xda, 0xcf, 0x09, 0x3a, 0xcc, 0x09, 0xfa, 0x91, 0x13, 0xf4, 0x33, 0x27, 0xc6, 0x71, + 0x4e, 0xd0, 0x87, 0x11, 0x31, 0x3e, 0x8f, 0x08, 0xda, 0x1f, 0x11, 0xe3, 0x70, 0x44, 0x8c, 0xad, + 0xc7, 0x21, 0x4f, 0x5e, 0x87, 0x6e, 0xc6, 0xfb, 0x0a, 0x84, 0xa0, 0x6e, 0x2a, 0x3d, 0xbd, 0xe8, + 0x71, 0x11, 0x9f, 0xfc, 0xdb, 0x2c, 0x0a, 0x40, 0x38, 0x65, 0xd8, 0x4b, 0xfc, 0x90, 0x7b, 0xb0, + 0xa3, 0x4e, 0x9f, 0xa7, 0xf3, 0x2f, 0x9c, 0xdf, 0xd4, 0xaf, 0xd3, 0x9d, 0x5f, 0x01, 0x00, 0x00, + 0xff, 0xff, 0xea, 0x8c, 0x99, 0x4b, 0x82, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/route/public_crudapi.pb.go b/pbgo/extschema/schema/route/public_crudapi.pb.go index 9454dbc06..5cde388ce 100644 --- a/pbgo/extschema/schema/route/public_crudapi.pb.go +++ b/pbgo/extschema/schema/route/public_crudapi.pb.go @@ -1059,107 +1059,108 @@ func init() { } var fileDescriptor_32475e2cc26718cc = []byte{ - // 1592 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0xdb, 0x46, - 0x16, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xc1, 0x4c, 0x12, 0x47, 0xd6, 0x66, 0x15, 0x45, 0x71, - 0x76, 0x0d, 0x23, 0xa2, 0x12, 0x07, 0xbb, 0xd8, 0x38, 0x0b, 0x6f, 0x64, 0x99, 0xf2, 0x2a, 0xeb, - 0xc4, 0x06, 0xa5, 0x04, 0xc1, 0x5e, 0x08, 0x8a, 0x1a, 0xc9, 0x8c, 0x25, 0x91, 0xe5, 0x8c, 0xe4, - 0xb8, 0x85, 0x81, 0x22, 0x97, 0x1e, 0x7a, 0x29, 0x90, 0x5b, 0xd1, 0x43, 0x2e, 0x05, 0x7a, 0x2a, - 0xd0, 0x43, 0x81, 0x02, 0x46, 0x81, 0xdc, 0x12, 0xe4, 0x50, 0x18, 0xed, 0x25, 0xbd, 0x35, 0x72, - 0x0f, 0x39, 0x26, 0xfd, 0x0b, 0x0a, 0xce, 0x90, 0x8a, 0x24, 0xd3, 0xb6, 0xec, 0xe4, 0x24, 0xce, - 0x7b, 0xef, 0xf7, 0xe3, 0x7b, 0x7c, 0x1f, 0x33, 0x23, 0x38, 0xdd, 0xc2, 0x44, 0xd4, 0x8d, 0x34, - 0xd1, 0xd6, 0x70, 0x5d, 0x4d, 0x5b, 0x46, 0x93, 0xe2, 0xb4, 0xd9, 0x2c, 0xd5, 0x74, 0x4d, 0xd1, - 0xac, 0x66, 0x59, 0x35, 0x75, 0xd1, 0xb4, 0x0c, 0x6a, 0xa0, 0x53, 0xdc, 0x52, 0xe4, 0x96, 0x22, - 0xb3, 0x8c, 0xa5, 0xaa, 0x3a, 0x5d, 0x6b, 0x96, 0x44, 0xcd, 0xa8, 0xa7, 0xab, 0x46, 0xd5, 0x48, - 0x33, 0xdb, 0x52, 0xb3, 0xc2, 0x56, 0x6c, 0xc1, 0x9e, 0x38, 0x47, 0xec, 0x5c, 0xd5, 0x30, 0xaa, - 0x35, 0x9c, 0x56, 0x4d, 0x3d, 0xad, 0x36, 0x1a, 0x06, 0x55, 0xa9, 0x6e, 0x34, 0x88, 0xa3, 0xfd, - 0x8b, 0xa3, 0xed, 0x70, 0xe0, 0xba, 0x49, 0x37, 0x1d, 0x65, 0xac, 0xd7, 0x51, 0x6c, 0x59, 0x86, - 0xd5, 0x01, 0xf6, 0xea, 0x0c, 0xb3, 0x9b, 0x35, 0xe1, 0x15, 0xa1, 0x51, 0x7a, 0x80, 0x35, 0xea, - 0x58, 0x9c, 0xf7, 0xb2, 0xa0, 0x9b, 0x26, 0x76, 0x29, 0x26, 0x7b, 0x0d, 0xba, 0x55, 0xc9, 0x5e, - 0x55, 0x0b, 0x13, 0xdc, 0x68, 0x1d, 0xec, 0x41, 0x4b, 0xc7, 0x1b, 0x4a, 0x8f, 0x45, 0xf2, 0x6b, - 0x00, 0x47, 0xb3, 0x16, 0x56, 0x29, 0x96, 0xf1, 0x47, 0x4d, 0x4c, 0x28, 0xfa, 0x0f, 0x0c, 0xd5, - 0x31, 0x55, 0xcb, 0x2a, 0x55, 0xa3, 0x20, 0x01, 0xa6, 0x23, 0xb3, 0x17, 0xc5, 0xde, 0x04, 0xac, - 0xb0, 0x10, 0x38, 0xea, 0x36, 0xa6, 0x6a, 0x71, 0xd3, 0xc4, 0x72, 0x07, 0x84, 0xfe, 0x0b, 0x03, - 0xc4, 0xc4, 0x5a, 0xd4, 0xe7, 0x09, 0x66, 0x31, 0x8a, 0x1c, 0x5c, 0x30, 0xb1, 0x66, 0x83, 0x17, - 0xc6, 0xbf, 0xdc, 0x1a, 0xb1, 0x31, 0x62, 0x55, 0x53, 0xec, 0x5f, 0x99, 0x31, 0xcc, 0x85, 0x5f, - 0xcc, 0x07, 0xf9, 0xcb, 0x92, 0x6f, 0x01, 0x1c, 0x73, 0xfd, 0x24, 0xa6, 0xd1, 0x20, 0x18, 0xfd, - 0x7b, 0x8f, 0xa3, 0x09, 0x4f, 0x47, 0x97, 0x30, 0xf5, 0xf0, 0x72, 0x05, 0x8e, 0x93, 0x4d, 0x42, - 0x71, 0x5d, 0xe9, 0x90, 0xf8, 0x19, 0xc9, 0xdf, 0xfa, 0x48, 0x0a, 0xcc, 0x6a, 0x2f, 0xd5, 0x18, - 0x87, 0xdf, 0x76, 0x09, 0xa5, 0x9e, 0xb0, 0x13, 0x9e, 0x61, 0x2f, 0x61, 0x7a, 0x84, 0x98, 0x7f, - 0x05, 0x70, 0x4c, 0xc6, 0x66, 0x4d, 0xd5, 0x3a, 0xc9, 0xb9, 0xb9, 0x27, 0xe6, 0x29, 0xcf, 0x98, - 0x1d, 0x98, 0x47, 0xdc, 0xf9, 0x1e, 0x37, 0xa7, 0x3c, 0xdd, 0x74, 0xd0, 0x87, 0xb8, 0x8a, 0xd2, - 0x50, 0xb0, 0x30, 0x31, 0x9a, 0x96, 0x86, 0x95, 0x16, 0xb6, 0x88, 0x6e, 0x34, 0xd8, 0x37, 0x0c, - 0x2f, 0x04, 0x5e, 0x6f, 0x03, 0x20, 0x8f, 0xbb, 0xda, 0x7b, 0x5c, 0xd9, 0x1d, 0xdb, 0x49, 0x38, - 0xde, 0x09, 0x8d, 0xe7, 0x33, 0xf9, 0x18, 0x40, 0xb8, 0x84, 0xa9, 0x1b, 0xea, 0x39, 0x18, 0x6e, - 0xa8, 0x75, 0x4c, 0x4c, 0x55, 0xc3, 0x2c, 0xd6, 0xb0, 0xfc, 0x4e, 0x80, 0x10, 0x0c, 0xd8, 0x0b, - 0x16, 0x46, 0x58, 0x66, 0xcf, 0xa8, 0x00, 0xed, 0x37, 0x32, 0x32, 0xa5, 0x62, 0x58, 0x75, 0x95, - 0x32, 0x77, 0xc6, 0x66, 0x67, 0xf6, 0x4b, 0x86, 0xfb, 0xee, 0x1c, 0xb3, 0xce, 0x1a, 0x65, 0x2c, - 0x8f, 0x59, 0x3d, 0xb2, 0xe4, 0xdb, 0x61, 0x18, 0xe9, 0xb2, 0x44, 0x59, 0x18, 0xd1, 0x58, 0x1d, - 0xb2, 0x57, 0x38, 0x9f, 0x31, 0x79, 0x40, 0x91, 0x3b, 0xf1, 0xc8, 0x90, 0xc3, 0x6c, 0x5a, 0x94, - 0x83, 0x23, 0x16, 0x8f, 0x9e, 0xb3, 0xf8, 0x0f, 0x68, 0x95, 0xde, 0x0a, 0x90, 0x23, 0x0e, 0x90, - 0xf1, 0x78, 0x65, 0x20, 0x70, 0x40, 0x06, 0x7a, 0x7a, 0x66, 0xf8, 0x43, 0xf4, 0xcc, 0x89, 0x0f, - 0xd2, 0x33, 0xc1, 0xf7, 0xea, 0x19, 0x74, 0x13, 0x06, 0x09, 0x55, 0x69, 0x93, 0x44, 0x9f, 0x7c, - 0x05, 0x12, 0xfe, 0xe9, 0xc8, 0xec, 0x05, 0x4f, 0xaa, 0x02, 0x33, 0xe2, 0x6e, 0x2d, 0xf8, 0x9f, - 0x6e, 0x01, 0xd9, 0xc1, 0xa1, 0x3c, 0x3c, 0x69, 0xe1, 0x0a, 0xb6, 0x2c, 0xbd, 0x51, 0x55, 0xf8, - 0x88, 0x26, 0xd1, 0x10, 0xa3, 0x3a, 0xb7, 0x4f, 0x83, 0x55, 0x58, 0x44, 0x42, 0x07, 0xc6, 0xe5, - 0x04, 0xdd, 0x83, 0xd1, 0x32, 0xae, 0x61, 0x8a, 0xcb, 0x0a, 0xd7, 0xe1, 0x72, 0x87, 0x31, 0x3c, - 0x00, 0xe3, 0x84, 0x83, 0x96, 0x1d, 0xb0, 0xcb, 0x7b, 0x1f, 0x4e, 0x96, 0x75, 0xa2, 0x96, 0x6a, - 0x5e, 0xc4, 0x70, 0x00, 0xe2, 0xb3, 0x2e, 0xbc, 0x8f, 0xb9, 0xab, 0x2d, 0x6f, 0x05, 0x42, 0x40, - 0xf0, 0xd9, 0x9b, 0x42, 0x64, 0x59, 0x27, 0x03, 0xb6, 0xe2, 0x05, 0x38, 0x52, 0x53, 0x4b, 0xb8, - 0xa6, 0x54, 0xf4, 0x1a, 0xc5, 0x96, 0xd3, 0x92, 0x11, 0x26, 0xcb, 0x31, 0x11, 0xba, 0x08, 0x47, - 0x2d, 0x6c, 0x1a, 0x16, 0x55, 0x2a, 0x3a, 0xae, 0x95, 0x49, 0xd4, 0x9f, 0xf0, 0x4f, 0x87, 0xe5, - 0x11, 0x2e, 0xcc, 0x31, 0x19, 0xba, 0x02, 0x4f, 0x3b, 0x46, 0x3c, 0x29, 0xae, 0x6d, 0x80, 0xd9, - 0x22, 0xae, 0xe3, 0x29, 0xe4, 0x88, 0xe4, 0x93, 0x20, 0x14, 0xb8, 0x9f, 0xbc, 0x39, 0xf3, 0x14, - 0xd7, 0xd1, 0x04, 0x0c, 0x52, 0xdc, 0x50, 0x1b, 0x94, 0x55, 0x55, 0x58, 0x76, 0x56, 0xc7, 0x98, - 0x27, 0x02, 0xf4, 0x37, 0xf5, 0x32, 0x1f, 0x69, 0xb2, 0xfd, 0x88, 0x12, 0x30, 0x52, 0xc6, 0x44, - 0xb3, 0x74, 0xb6, 0x87, 0x46, 0x23, 0x3c, 0xd2, 0x2e, 0x11, 0x8a, 0xc1, 0x90, 0xfb, 0x99, 0xa3, - 0x23, 0x09, 0x30, 0x1d, 0x92, 0x3b, 0x6b, 0x94, 0x87, 0x41, 0xf6, 0x51, 0x78, 0x48, 0x91, 0xd9, - 0xab, 0x9e, 0x45, 0xda, 0x1f, 0x90, 0xb8, 0xcc, 0x30, 0x52, 0x83, 0x5a, 0x9b, 0xb2, 0x43, 0x80, - 0xee, 0xc3, 0x48, 0xd7, 0x29, 0xc6, 0x49, 0xff, 0x3f, 0x07, 0xe3, 0xcb, 0xbc, 0x03, 0x72, 0xd2, - 0x6e, 0x2a, 0x74, 0x1d, 0x42, 0x63, 0xa3, 0x81, 0x2d, 0xc5, 0x3e, 0x2c, 0x44, 0xc3, 0xac, 0x31, - 0x63, 0x7d, 0xc4, 0xf7, 0x74, 0xbc, 0xe1, 0x56, 0x55, 0x98, 0x59, 0xdb, 0x92, 0x9e, 0xe1, 0x32, - 0xfa, 0x21, 0x86, 0xcb, 0xd8, 0x7b, 0x0d, 0x97, 0x1b, 0x30, 0x54, 0xc5, 0x94, 0xcd, 0x09, 0x67, - 0x4c, 0x1d, 0x3a, 0x60, 0xe4, 0x13, 0x55, 0xbe, 0x40, 0x12, 0x84, 0x4e, 0x15, 0x12, 0x4c, 0x9d, - 0x49, 0x30, 0xe8, 0x50, 0x09, 0x73, 0x64, 0x01, 0xd3, 0xd8, 0x75, 0x18, 0xe9, 0x4a, 0x9f, 0x5d, - 0x51, 0xeb, 0x78, 0xd3, 0xa9, 0x3e, 0xfb, 0x11, 0x9d, 0x86, 0xc3, 0x2d, 0xb5, 0xd6, 0x74, 0x0b, - 0x8f, 0x2f, 0xe6, 0x7c, 0xff, 0x02, 0xb1, 0x79, 0x28, 0xf4, 0x67, 0xea, 0x28, 0xf8, 0x5b, 0x81, - 0xd0, 0xb0, 0x10, 0x4c, 0x6e, 0xc1, 0x91, 0xee, 0x02, 0x40, 0x37, 0xe0, 0xb0, 0x4e, 0x71, 0x9d, - 0x44, 0xf9, 0x9c, 0xbc, 0x34, 0x50, 0xc9, 0xc8, 0x1c, 0x83, 0xae, 0xc0, 0x20, 0x3f, 0xfd, 0x46, - 0x7d, 0x0c, 0x1d, 0xed, 0x43, 0x4b, 0xb6, 0x92, 0x7d, 0x47, 0xc7, 0x2e, 0xb9, 0x0e, 0x47, 0x17, - 0xd9, 0x38, 0x3b, 0xfe, 0xae, 0x3e, 0x0d, 0x85, 0x8a, 0xaa, 0xd7, 0x14, 0xbd, 0xd2, 0x19, 0x7b, - 0xac, 0x25, 0x43, 0xf2, 0x98, 0x2d, 0xcf, 0x57, 0xdc, 0x71, 0x36, 0xf3, 0x07, 0x80, 0x67, 0x3c, - 0x37, 0x75, 0x14, 0x83, 0x13, 0x4b, 0x52, 0x51, 0x91, 0x0b, 0xab, 0x4a, 0x6e, 0x45, 0xbe, 0x9d, - 0x29, 0x2a, 0x8b, 0x52, 0x2e, 0x73, 0x77, 0xb9, 0x28, 0x0c, 0xa1, 0xbf, 0xc2, 0xc9, 0x3e, 0x5d, - 0x6e, 0x45, 0x56, 0xb2, 0xb2, 0x94, 0x29, 0x4a, 0x02, 0x40, 0x71, 0x18, 0xf3, 0x50, 0xcb, 0xd2, - 0xea, 0x72, 0x26, 0x2b, 0x09, 0x3e, 0x34, 0x09, 0xcf, 0xf4, 0xe9, 0x0b, 0xc5, 0x4c, 0xf1, 0x6e, - 0x41, 0xf0, 0xa3, 0xb3, 0xf0, 0x54, 0x9f, 0x4a, 0x96, 0x32, 0x8b, 0x42, 0x00, 0x4d, 0xc1, 0xc4, - 0x1e, 0x45, 0x4e, 0x92, 0xe5, 0xfc, 0x9d, 0x25, 0x65, 0x65, 0xe1, 0x96, 0x94, 0x2d, 0x16, 0x84, - 0x61, 0x0f, 0xab, 0x05, 0x79, 0xe5, 0x7f, 0xd2, 0x1d, 0x6e, 0x2c, 0xdd, 0xc9, 0x4a, 0x05, 0x21, - 0x38, 0xfb, 0x59, 0x08, 0xfa, 0x33, 0xab, 0x79, 0xf4, 0x23, 0x80, 0x41, 0x7e, 0xe0, 0x40, 0x03, - 0x9c, 0x46, 0x62, 0x17, 0x0f, 0xb4, 0x71, 0x4e, 0x64, 0x0f, 0xda, 0xcf, 0xa2, 0xa9, 0xca, 0x3f, - 0x1e, 0x6a, 0x29, 0x82, 0xb5, 0xa6, 0x85, 0xeb, 0x98, 0xac, 0xa5, 0x4a, 0x2a, 0xd1, 0xb5, 0x54, - 0x93, 0x60, 0xeb, 0x72, 0x0b, 0x93, 0x94, 0x6e, 0xa4, 0x4c, 0xcb, 0x78, 0xb8, 0x99, 0xda, 0xb0, - 0x74, 0x8a, 0x1f, 0xfd, 0xf2, 0xfb, 0x63, 0xdf, 0xb5, 0xa4, 0xe8, 0x5c, 0xe4, 0xd2, 0x9d, 0xd4, - 0x92, 0xf4, 0x27, 0x6e, 0x5b, 0x8b, 0x1d, 0xe1, 0x16, 0xbf, 0xf1, 0x90, 0x39, 0x30, 0x83, 0xbe, - 0x07, 0xd0, 0xbf, 0x84, 0x29, 0x3a, 0xbf, 0xff, 0x59, 0x8d, 0x7b, 0x9e, 0x38, 0xec, 0x30, 0x97, - 0x5c, 0x7f, 0xfe, 0x83, 0x0f, 0xb4, 0x9f, 0x45, 0xd3, 0xde, 0xae, 0xd7, 0x8d, 0x86, 0x4e, 0x8d, - 0x3e, 0xef, 0x2d, 0xac, 0x96, 0x99, 0xf3, 0x22, 0xba, 0xec, 0xe5, 0xfc, 0x1e, 0x9f, 0xb9, 0x68, - 0x0b, 0x7d, 0x07, 0x60, 0xc0, 0xee, 0x17, 0x94, 0x38, 0xa0, 0x95, 0xb8, 0xe7, 0x17, 0x0e, 0x6d, - 0xb6, 0x64, 0xf9, 0x7d, 0x5c, 0xff, 0x3b, 0xba, 0x34, 0x90, 0xeb, 0x68, 0x07, 0xc0, 0x13, 0xce, - 0xb1, 0x12, 0x0d, 0x72, 0xe8, 0x8c, 0x4d, 0x1d, 0x6c, 0xe4, 0x38, 0xff, 0xf1, 0xf1, 0xca, 0x25, - 0x1b, 0x9b, 0x3f, 0x5a, 0xb9, 0xf4, 0xe9, 0xb6, 0xec, 0xf2, 0xf9, 0x16, 0xc0, 0x20, 0x9f, 0x34, - 0xfb, 0x94, 0x7f, 0xcf, 0x18, 0x8a, 0x4d, 0x88, 0xfc, 0xc6, 0x2f, 0xba, 0x37, 0x7e, 0x51, 0xb2, - 0x6f, 0xfc, 0xc9, 0xb5, 0xe3, 0x85, 0x70, 0x75, 0xe6, 0x48, 0x45, 0x33, 0x07, 0x66, 0x62, 0xab, - 0x4f, 0xb7, 0x81, 0xef, 0xe7, 0x6d, 0x10, 0xf3, 0x72, 0x96, 0xef, 0x26, 0x2f, 0xb7, 0x01, 0x68, - 0x6f, 0x83, 0xc4, 0x61, 0xbb, 0xce, 0xa3, 0x9f, 0xa2, 0x3e, 0x01, 0x2c, 0x7c, 0x0e, 0x5e, 0xcc, - 0x0f, 0x67, 0xe5, 0xbb, 0x8b, 0xcb, 0x3b, 0xaf, 0xe2, 0x43, 0x2f, 0x5f, 0xc5, 0x87, 0xde, 0xbc, - 0x8a, 0x83, 0x4f, 0xdb, 0x71, 0xf0, 0x4d, 0x3b, 0x0e, 0x9e, 0xb7, 0xe3, 0x60, 0xa7, 0x1d, 0x07, - 0xbf, 0xb5, 0xe3, 0xe0, 0x75, 0x3b, 0x3e, 0xf4, 0xa6, 0x1d, 0x07, 0x5f, 0xec, 0xc6, 0x87, 0x9e, - 0xee, 0xc6, 0xc1, 0xce, 0x6e, 0x7c, 0xe8, 0xe5, 0x6e, 0x7c, 0xe8, 0xff, 0xf9, 0xaa, 0x61, 0xae, - 0x57, 0xc5, 0x96, 0x61, 0x9f, 0xda, 0x2c, 0x55, 0x6c, 0x92, 0x34, 0x7b, 0xb0, 0x2f, 0x29, 0x76, - 0xd0, 0x2d, 0xbd, 0x8c, 0xad, 0x94, 0xab, 0x4e, 0x9b, 0xa5, 0xaa, 0x91, 0xc6, 0x0f, 0xa9, 0xf3, - 0xf7, 0x42, 0xf7, 0xbf, 0x18, 0xa5, 0x20, 0xfb, 0xb2, 0xd7, 0xfe, 0x0c, 0x00, 0x00, 0xff, 0xff, - 0x48, 0x4e, 0x6a, 0x37, 0xe7, 0x11, 0x00, 0x00, + // 1609 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x13, 0xd9, + 0x1d, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0xc7, 0xf0, 0x80, 0xe0, 0xb8, 0xd4, 0x18, 0x13, 0xda, + 0x28, 0xc2, 0x63, 0x08, 0x6a, 0x55, 0x42, 0x95, 0xe2, 0x38, 0xe3, 0xd4, 0x10, 0x48, 0x34, 0x36, + 0x08, 0xf5, 0x32, 0x1a, 0x8f, 0x9f, 0xcd, 0x14, 0xdb, 0x33, 0x9d, 0xf7, 0xec, 0x60, 0x55, 0x91, + 0x2a, 0xa4, 0x56, 0x95, 0xda, 0x43, 0x25, 0x2e, 0x55, 0xd5, 0x03, 0x97, 0x95, 0xf8, 0x13, 0x56, + 0xca, 0x85, 0xdb, 0x22, 0xa4, 0x5d, 0xa1, 0xe5, 0xb0, 0xac, 0xb4, 0x87, 0xc5, 0xd9, 0x03, 0xb7, + 0x85, 0xfd, 0x0b, 0x56, 0xf3, 0xde, 0x8c, 0xb1, 0x9d, 0x89, 0xe3, 0xf0, 0xe3, 0xe4, 0x79, 0xef, + 0xfb, 0xfd, 0x7c, 0xe6, 0xfb, 0x99, 0xef, 0x8f, 0x79, 0x1e, 0x38, 0xdf, 0xc2, 0x44, 0xd4, 0x8d, + 0x34, 0xd1, 0xee, 0xe2, 0xba, 0x9a, 0xb6, 0x8c, 0x26, 0xc5, 0x69, 0xb3, 0x59, 0xaa, 0xe9, 0x9a, + 0xa2, 0x59, 0xcd, 0xb2, 0x6a, 0xea, 0xa2, 0x69, 0x19, 0xd4, 0x40, 0xc7, 0xb8, 0xa7, 0xc8, 0x3d, + 0x45, 0xe6, 0x19, 0x4b, 0x55, 0x75, 0x7a, 0xb7, 0x59, 0x12, 0x35, 0xa3, 0x9e, 0xae, 0x1a, 0x55, + 0x23, 0xcd, 0x7c, 0x4b, 0xcd, 0x0a, 0x5b, 0xb1, 0x05, 0xbb, 0xe2, 0x1c, 0xb1, 0x53, 0x55, 0xc3, + 0xa8, 0xd6, 0x70, 0x5a, 0x35, 0xf5, 0xb4, 0xda, 0x68, 0x18, 0x54, 0xa5, 0xba, 0xd1, 0x20, 0x8e, + 0xf5, 0x17, 0x8e, 0xb5, 0xcb, 0x81, 0xeb, 0x26, 0x6d, 0x3b, 0xc6, 0x58, 0x7f, 0xa0, 0xd8, 0xb2, + 0x0c, 0xab, 0x0b, 0xec, 0xb7, 0x19, 0x66, 0x2f, 0x6b, 0xc2, 0x4b, 0xa1, 0x51, 0xfa, 0x33, 0xd6, + 0xa8, 0xe3, 0x71, 0xda, 0xcb, 0x83, 0xb6, 0x4d, 0xec, 0x52, 0xcc, 0xf6, 0x3b, 0xf4, 0x9a, 0x92, + 0xfd, 0xa6, 0x16, 0x26, 0xb8, 0xd1, 0x1a, 0x1e, 0x41, 0x4b, 0xc7, 0x5b, 0x4a, 0x9f, 0x47, 0xf2, + 0x33, 0x00, 0x27, 0xb3, 0x16, 0x56, 0x29, 0x96, 0xf1, 0x5f, 0x9a, 0x98, 0x50, 0xf4, 0x07, 0x18, + 0xaa, 0x63, 0xaa, 0x96, 0x55, 0xaa, 0x46, 0x41, 0x02, 0xcc, 0x47, 0x16, 0xcf, 0x8a, 0xfd, 0x09, + 0xd8, 0x60, 0x12, 0x38, 0xea, 0x06, 0xa6, 0x6a, 0xb1, 0x6d, 0x62, 0xb9, 0x0b, 0x42, 0x7f, 0x84, + 0x01, 0x62, 0x62, 0x2d, 0xea, 0xf3, 0x04, 0x33, 0x8d, 0x22, 0x07, 0x17, 0x4c, 0xac, 0xd9, 0xe0, + 0x95, 0xe9, 0xff, 0x6d, 0x4f, 0xd8, 0x18, 0xb1, 0xaa, 0x29, 0xf6, 0xaf, 0xcc, 0x18, 0x96, 0xc2, + 0xcf, 0x96, 0x83, 0xfc, 0x66, 0xc9, 0xb7, 0x00, 0x4e, 0xb9, 0x71, 0x12, 0xd3, 0x68, 0x10, 0x8c, + 0x7e, 0xbf, 0x27, 0xd0, 0x84, 0x67, 0xa0, 0x6b, 0x98, 0x7a, 0x44, 0xb9, 0x01, 0xa7, 0x49, 0x9b, + 0x50, 0x5c, 0x57, 0xba, 0x24, 0x7e, 0x46, 0xf2, 0xab, 0x01, 0x92, 0x02, 0xf3, 0xda, 0x4b, 0x35, + 0xc5, 0xe1, 0x37, 0x5c, 0x42, 0xa9, 0x4f, 0x76, 0xc2, 0x53, 0xf6, 0x1a, 0xa6, 0x87, 0xd0, 0xfc, + 0x2d, 0x80, 0x53, 0x32, 0x36, 0x6b, 0xaa, 0xd6, 0x4d, 0xce, 0xd5, 0x3d, 0x9a, 0xe7, 0x3c, 0x35, + 0x3b, 0x30, 0x0f, 0xdd, 0xf9, 0xbe, 0x30, 0xe7, 0x3c, 0xc3, 0x74, 0xd0, 0x07, 0x84, 0x8a, 0xd2, + 0x50, 0xb0, 0x30, 0x31, 0x9a, 0x96, 0x86, 0x95, 0x16, 0xb6, 0x88, 0x6e, 0x34, 0xd8, 0x33, 0x0c, + 0xaf, 0x04, 0x5e, 0xef, 0x00, 0x20, 0x4f, 0xbb, 0xd6, 0xdb, 0xdc, 0xd8, 0xab, 0xed, 0x28, 0x9c, + 0xee, 0x4a, 0xe3, 0xf9, 0x4c, 0x3e, 0x04, 0x10, 0xae, 0x61, 0xea, 0x4a, 0x3d, 0x05, 0xc3, 0x0d, + 0xb5, 0x8e, 0x89, 0xa9, 0x6a, 0x98, 0x69, 0x0d, 0xcb, 0xef, 0x36, 0x10, 0x82, 0x01, 0x7b, 0xc1, + 0x64, 0x84, 0x65, 0x76, 0x8d, 0x0a, 0xd0, 0xbe, 0x23, 0x23, 0x53, 0x2a, 0x86, 0x55, 0x57, 0x29, + 0x0b, 0x67, 0x6a, 0x71, 0x61, 0xbf, 0x64, 0xb8, 0xf7, 0xce, 0x31, 0xef, 0xac, 0x51, 0xc6, 0xf2, + 0x94, 0xd5, 0xb7, 0x97, 0x7c, 0x3b, 0x0e, 0x23, 0x3d, 0x9e, 0x28, 0x0b, 0x23, 0x1a, 0xab, 0x43, + 0x76, 0x0b, 0xe7, 0x31, 0x26, 0x87, 0x14, 0xb9, 0xa3, 0x47, 0x86, 0x1c, 0x66, 0xd3, 0xa2, 0x1c, + 0x9c, 0xb0, 0xb8, 0x7a, 0xce, 0xe2, 0x1f, 0xd2, 0x2a, 0xfd, 0x15, 0x20, 0x47, 0x1c, 0x20, 0xe3, + 0xf1, 0xca, 0x40, 0x60, 0x48, 0x06, 0xfa, 0x7a, 0x66, 0xfc, 0x63, 0xf4, 0xcc, 0x91, 0x8f, 0xd2, + 0x33, 0xc1, 0x0f, 0xea, 0x19, 0x74, 0x15, 0x06, 0x09, 0x55, 0x69, 0x93, 0x44, 0x1f, 0xfd, 0x1f, + 0x24, 0xfc, 0xf3, 0x91, 0xc5, 0x33, 0x9e, 0x54, 0x05, 0xe6, 0xc4, 0xc3, 0x5a, 0xf1, 0x3f, 0xd9, + 0x06, 0xb2, 0x83, 0x43, 0x79, 0x78, 0xd4, 0xc2, 0x15, 0x6c, 0x59, 0x7a, 0xa3, 0xaa, 0xf0, 0x11, + 0x4d, 0xa2, 0x21, 0x46, 0x75, 0x6a, 0x9f, 0x06, 0xab, 0x30, 0x45, 0x42, 0x17, 0xc6, 0xf7, 0x09, + 0xba, 0x0d, 0xa3, 0x65, 0x5c, 0xc3, 0x14, 0x97, 0x15, 0x6e, 0xc3, 0xe5, 0x2e, 0x63, 0x78, 0x04, + 0xc6, 0x19, 0x07, 0x2d, 0x3b, 0x60, 0x97, 0xf7, 0x0e, 0x9c, 0x2d, 0xeb, 0x44, 0x2d, 0xd5, 0xbc, + 0x88, 0xe1, 0x08, 0xc4, 0x27, 0x5d, 0xf8, 0x00, 0x73, 0x4f, 0x5b, 0x5e, 0x0b, 0x84, 0x80, 0xe0, + 0xb3, 0x5f, 0x0a, 0x91, 0x75, 0x9d, 0x8c, 0xd8, 0x8a, 0x67, 0xe0, 0x44, 0x4d, 0x2d, 0xe1, 0x9a, + 0x52, 0xd1, 0x6b, 0x14, 0x5b, 0x4e, 0x4b, 0x46, 0xd8, 0x5e, 0x8e, 0x6d, 0xa1, 0xb3, 0x70, 0xd2, + 0xc2, 0xa6, 0x61, 0x51, 0xa5, 0xa2, 0xe3, 0x5a, 0x99, 0x44, 0xfd, 0x09, 0xff, 0x7c, 0x58, 0x9e, + 0xe0, 0x9b, 0x39, 0xb6, 0x87, 0x2e, 0xc0, 0xe3, 0x8e, 0x13, 0x4f, 0x8a, 0xeb, 0x1b, 0x60, 0xbe, + 0x88, 0xdb, 0x78, 0x0a, 0x39, 0x22, 0xf9, 0x28, 0x08, 0x05, 0x1e, 0x27, 0x6f, 0xce, 0x3c, 0xc5, + 0x75, 0x34, 0x03, 0x83, 0x14, 0x37, 0xd4, 0x06, 0x65, 0x55, 0x15, 0x96, 0x9d, 0xd5, 0x7b, 0xcc, + 0x13, 0x01, 0xfa, 0x9b, 0x7a, 0x99, 0x8f, 0x34, 0xd9, 0xbe, 0x44, 0x09, 0x18, 0x29, 0x63, 0xa2, + 0x59, 0x3a, 0x7b, 0x87, 0x46, 0x23, 0x5c, 0x69, 0xcf, 0x16, 0x8a, 0xc1, 0x90, 0xfb, 0x98, 0xa3, + 0x13, 0x09, 0x30, 0x1f, 0x92, 0xbb, 0x6b, 0x94, 0x87, 0x41, 0xf6, 0x50, 0xb8, 0xa4, 0xc8, 0xe2, + 0x45, 0xcf, 0x22, 0x1d, 0x14, 0x24, 0xae, 0x33, 0x8c, 0xd4, 0xa0, 0x56, 0x5b, 0x76, 0x08, 0xd0, + 0x1d, 0x18, 0xe9, 0x39, 0xc5, 0x38, 0xe9, 0xff, 0xed, 0x68, 0x7c, 0x99, 0x77, 0x40, 0x4e, 0xda, + 0x4b, 0x85, 0x2e, 0x43, 0x68, 0x6c, 0x35, 0xb0, 0xa5, 0xd8, 0x87, 0x85, 0x68, 0x98, 0x35, 0x66, + 0x6c, 0x80, 0xf8, 0xb6, 0x8e, 0xb7, 0xdc, 0xaa, 0x0a, 0x33, 0x6f, 0x7b, 0xa7, 0x6f, 0xb8, 0x4c, + 0x7e, 0x8c, 0xe1, 0x32, 0xf5, 0x41, 0xc3, 0xe5, 0x0a, 0x0c, 0x55, 0x31, 0x65, 0x73, 0xc2, 0x19, + 0x53, 0x07, 0x0e, 0x18, 0xf9, 0x48, 0x95, 0x2f, 0x90, 0x04, 0xa1, 0x53, 0x85, 0x04, 0x53, 0x67, + 0x12, 0x8c, 0x3a, 0x54, 0xc2, 0x1c, 0x59, 0xc0, 0x34, 0x76, 0x19, 0x46, 0x7a, 0xd2, 0x67, 0x57, + 0xd4, 0x3d, 0xdc, 0x76, 0xaa, 0xcf, 0xbe, 0x44, 0xc7, 0xe1, 0x78, 0x4b, 0xad, 0x35, 0xdd, 0xc2, + 0xe3, 0x8b, 0x25, 0xdf, 0xef, 0x40, 0x6c, 0x19, 0x0a, 0x83, 0x99, 0x3a, 0x0c, 0xfe, 0x5a, 0x20, + 0x34, 0x2e, 0x04, 0x93, 0xdb, 0x70, 0xa2, 0xb7, 0x00, 0xd0, 0x15, 0x38, 0xae, 0x53, 0x5c, 0x27, + 0x51, 0x3e, 0x27, 0xcf, 0x8d, 0x54, 0x32, 0x32, 0xc7, 0xa0, 0x0b, 0x30, 0xc8, 0x4f, 0xbf, 0x51, + 0x1f, 0x43, 0x47, 0x07, 0xd0, 0x92, 0x6d, 0x64, 0xcf, 0xd1, 0xf1, 0x4b, 0xde, 0x83, 0x93, 0xab, + 0x6c, 0x9c, 0xbd, 0xff, 0x5b, 0x7d, 0x1e, 0x0a, 0x15, 0x55, 0xaf, 0x29, 0x7a, 0xa5, 0x3b, 0xf6, + 0x58, 0x4b, 0x86, 0xe4, 0x29, 0x7b, 0x3f, 0x5f, 0x71, 0xc7, 0xd9, 0xc2, 0x4f, 0x00, 0x9e, 0xf0, + 0x7c, 0xa9, 0xa3, 0x18, 0x9c, 0x59, 0x93, 0x8a, 0x8a, 0x5c, 0xd8, 0x54, 0x72, 0x1b, 0xf2, 0x8d, + 0x4c, 0x51, 0x59, 0x95, 0x72, 0x99, 0x5b, 0xeb, 0x45, 0x61, 0x0c, 0xfd, 0x12, 0xce, 0x0e, 0xd8, + 0x72, 0x1b, 0xb2, 0x92, 0x95, 0xa5, 0x4c, 0x51, 0x12, 0x00, 0x8a, 0xc3, 0x98, 0x87, 0x59, 0x96, + 0x36, 0xd7, 0x33, 0x59, 0x49, 0xf0, 0xa1, 0x59, 0x78, 0x62, 0xc0, 0x5e, 0x28, 0x66, 0x8a, 0xb7, + 0x0a, 0x82, 0x1f, 0x9d, 0x84, 0xc7, 0x06, 0x4c, 0xb2, 0x94, 0x59, 0x15, 0x02, 0x68, 0x0e, 0x26, + 0xf6, 0x18, 0x72, 0x92, 0x2c, 0xe7, 0x6f, 0xae, 0x29, 0x1b, 0x2b, 0xd7, 0xa4, 0x6c, 0xb1, 0x20, + 0x8c, 0x7b, 0x78, 0xad, 0xc8, 0x1b, 0xd7, 0xa5, 0x9b, 0xdc, 0x59, 0xba, 0x99, 0x95, 0x0a, 0x42, + 0x70, 0xf1, 0x71, 0x18, 0xfa, 0x33, 0x9b, 0x79, 0xf4, 0x1d, 0x80, 0x41, 0x7e, 0xe0, 0x40, 0x23, + 0x9c, 0x46, 0x62, 0x67, 0x87, 0xfa, 0x38, 0x27, 0xb2, 0x7f, 0x82, 0xce, 0x17, 0xd1, 0xeb, 0x95, + 0xdf, 0xdc, 0xd7, 0x52, 0x04, 0x6b, 0x4d, 0x0b, 0xd7, 0x31, 0xb9, 0x9b, 0x2a, 0xa9, 0x44, 0xd7, + 0x52, 0x4d, 0x82, 0xad, 0xf3, 0x83, 0x26, 0x42, 0xd5, 0x46, 0x59, 0xb5, 0xca, 0xdc, 0xda, 0xc2, + 0x24, 0xa5, 0x1b, 0x29, 0xd3, 0x32, 0xee, 0xb7, 0x53, 0x5b, 0x96, 0x4e, 0xf1, 0x83, 0x17, 0x3f, + 0x3c, 0xf4, 0x5d, 0x4a, 0x8a, 0xce, 0xff, 0xbc, 0x74, 0x37, 0xf3, 0x24, 0xfd, 0x57, 0xb7, 0xeb, + 0xc5, 0xee, 0xe6, 0x36, 0xff, 0x43, 0x44, 0x96, 0xc0, 0x02, 0xfa, 0x06, 0x40, 0xff, 0x1a, 0xa6, + 0xe8, 0xf4, 0xfe, 0x47, 0x39, 0x2e, 0x2c, 0x71, 0xd0, 0x59, 0x2f, 0xf9, 0x6f, 0xf0, 0xf4, 0x73, + 0x9f, 0xad, 0x6c, 0xd3, 0x5b, 0x59, 0xdd, 0x68, 0xe8, 0xd4, 0x18, 0x22, 0xce, 0x75, 0xe8, 0xd3, + 0x67, 0x61, 0xb5, 0xcc, 0xe4, 0x89, 0xe8, 0xbc, 0x97, 0xbc, 0x3d, 0xaa, 0xf8, 0xd6, 0x36, 0x7a, + 0x01, 0x60, 0xc0, 0x6e, 0x38, 0x94, 0x18, 0xd2, 0x8b, 0x5c, 0xdb, 0x99, 0x03, 0xbb, 0x35, 0xf9, + 0xf7, 0x4f, 0x2b, 0xee, 0xd7, 0xe8, 0xdc, 0x48, 0xe2, 0xd0, 0x8f, 0x00, 0x1e, 0x71, 0x4e, 0xae, + 0x68, 0x94, 0x73, 0x6d, 0x6c, 0x6e, 0xb8, 0x93, 0x23, 0xef, 0xbf, 0x9f, 0xa4, 0x22, 0xb3, 0xb1, + 0xe5, 0xc3, 0x55, 0xe4, 0x80, 0x6d, 0xdb, 0xae, 0xd0, 0x2f, 0x01, 0x0c, 0xf2, 0x59, 0xb7, 0x4f, + 0x03, 0xf6, 0x0d, 0xc2, 0xd8, 0x8c, 0xc8, 0xbf, 0x39, 0x88, 0xee, 0x37, 0x07, 0x51, 0xaa, 0x9b, + 0xb4, 0x9d, 0xfc, 0xc7, 0x27, 0x51, 0x78, 0x71, 0xe1, 0x50, 0x45, 0xb9, 0x04, 0x16, 0x62, 0x9b, + 0x4f, 0x76, 0x80, 0xef, 0xeb, 0x1d, 0x10, 0xf3, 0xd2, 0xc2, 0x5f, 0x77, 0x2f, 0x77, 0x00, 0xe8, + 0xec, 0x80, 0xc4, 0x41, 0xaf, 0xc5, 0x07, 0x5f, 0x45, 0x7d, 0x02, 0x58, 0xf9, 0x17, 0x78, 0xb6, + 0x3c, 0x9e, 0x95, 0x6f, 0xad, 0xae, 0x3f, 0x7f, 0x15, 0x1f, 0x7b, 0xf9, 0x2a, 0x3e, 0xf6, 0xe6, + 0x55, 0x1c, 0xfc, 0xad, 0x13, 0x07, 0x8f, 0x3b, 0x71, 0xf0, 0xb4, 0x13, 0x07, 0xcf, 0x3b, 0x71, + 0xf0, 0x7d, 0x27, 0x0e, 0x5e, 0x77, 0xe2, 0x63, 0x6f, 0x3a, 0x71, 0xf0, 0x9f, 0xdd, 0xf8, 0xd8, + 0x93, 0xdd, 0x38, 0x78, 0xbe, 0x1b, 0x1f, 0x7b, 0xb9, 0x1b, 0x1f, 0xfb, 0x53, 0xbe, 0x6a, 0x98, + 0xf7, 0xaa, 0x62, 0xcb, 0xb0, 0x8f, 0x95, 0x96, 0x2a, 0x36, 0x49, 0x9a, 0x5d, 0xd8, 0xff, 0xa2, + 0x6c, 0xd1, 0x2d, 0xbd, 0x8c, 0xad, 0x94, 0x6b, 0x4e, 0x9b, 0xa5, 0xaa, 0x91, 0xc6, 0xf7, 0xa9, + 0xf3, 0xfd, 0xa3, 0xf7, 0x33, 0x4b, 0x29, 0xc8, 0x1e, 0xfc, 0xa5, 0x9f, 0x03, 0x00, 0x00, 0xff, + 0xff, 0x50, 0xad, 0x3b, 0x52, 0x88, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/route/public_crudapi.vesapi.go b/pbgo/extschema/schema/route/public_crudapi.vesapi.go index f916d21f4..2c5596c95 100644 --- a/pbgo/extschema/schema/route/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/route/public_crudapi.vesapi.go @@ -3123,7 +3123,7 @@ var APISwaggerJSON string = `{ "x-ves-displayorder": "1,8,9,25,20,10,11,13,14,15,16,18,19,23", "x-ves-oneof-field-cluster_retract_choice": "[\"do_not_retract_cluster\",\"retract_cluster\"]", "x-ves-oneof-field-host_rewrite_params": "[\"auto_host_rewrite\",\"host_rewrite\"]", - "x-ves-oneof-field-route_destination_rewrite": "[\"prefix_rewrite\"]", + "x-ves-oneof-field-route_destination_rewrite": "[\"prefix_rewrite\",\"regex_rewrite\"]", "x-ves-proto-message": "ves.io.schema.route.RouteDestinationList", "properties": { "auto_host_rewrite": { @@ -3210,7 +3210,7 @@ var APISwaggerJSON string = `{ }, "prefix_rewrite": { "type": "string", - "description": "Exclusive with []\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value. This option allows application\n URLs to be rooted at a different path from those exposed at the reverse proxy layer.\n\n Example :\n gcSpec:\n routes:\n - match:\n - headers: []\n path:\n prefix : /register/\n query_params: []\n - headers: []\n path:\n prefix: /register\n query_params: []\n routeDestination:\n prefixRewrite: \"/\"\n destinations:\n - cluster:\n - kind: cluster.Object\n uid: cluster-1\n\n Having above entries in the config, requests to /register will be stripped to /,\n while requests to /register/public will be stripped to /public\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "description": "Exclusive with [regex_rewrite]\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value. This option allows application\n URLs to be rooted at a different path from those exposed at the reverse proxy layer.\n\n Example :\n gcSpec:\n routes:\n - match:\n - headers: []\n path:\n prefix : /register/\n query_params: []\n - headers: []\n path:\n prefix: /register\n query_params: []\n routeDestination:\n prefixRewrite: \"/\"\n destinations:\n - cluster:\n - kind: cluster.Object\n uid: cluster-1\n\n Having above entries in the config, requests to /register will be stripped to /,\n while requests to /register/public will be stripped to /public\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", "title": "prefix_rewrite", "maxLength": 256, "x-displayname": "Prefix Rewrite", @@ -3226,6 +3226,13 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaRoutingPriority", "x-displayname": "Priority" }, + "regex_rewrite": { + "description": "Exclusive with [prefix_rewrite]\n regex_rewrite indicates that during forwarding, the matched regex should be swapped\n with the substitution value. \n\n Example :\n gcSpec:\n routes:\n - match:\n - headers: []\n path:\n regex : \"^/service/([^/]+)(/.*)$\"\n query_params: []\n routeDestination:\n regexRewrite: \n pattern: \"^/service/([^/]+)(/.*)$\" \n substitution: \"\\\\2/instance/\\\\1\"\n destinations:\n - cluster:\n - kind: cluster.Object\n uid: cluster-1\n\n The path pattern \"^/service/([^/]+)(/.*)$\" paired with a substitution string of \"\\\\2/instance/\\\\1\" \n would transform \"/service/foo/v1/api\" into \"/v1/api/instance/foo\".\n\nExample: - \"^/service/([^/]+)(/.*)$\"-", + "title": "regex_rewrite", + "$ref": "#/definitions/schemaRegexMatchRewrite", + "x-displayname": "Regex Rewrite", + "x-ves-example": "^/service/([^/]+)(/.*)$" + }, "retract_cluster": { "description": "Exclusive with [do_not_retract_cluster]\n When this option is enabled, weighted cluster will not be considered\n for loadbalancing, if all its endpoints are unhealthy.\n Since the cluster with all unhealthy endpoints is removed, the traffic\n will be distributed among remaining clusters as per their weight.\n Also panic-threshold configuration is ignored for retracted cluster.\n\n This option is ignored when single destination cluster is configured\n for route", "title": "retract_cluster", @@ -4247,10 +4254,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4307,10 +4318,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4369,10 +4384,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4409,18 +4428,35 @@ var APISwaggerJSON string = `{ }, "schemaRegexMatchRewrite": { "type": "object", - "description": "x-displayName: \"Regex Match Rewrite\"\nRegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", + "description": "RegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", "title": "RegexMatchRewrite", + "x-displayname": "Regex Match Rewrite", + "x-ves-proto-message": "ves.io.schema.RegexMatchRewrite", "properties": { "pattern": { "type": "string", - "description": "x-displayName: \"Pattern\"\nx-example: \"^/service/([^/]+)(/.*)$\"\nThe regular expression used to find portions of a string that should be replaced.", - "title": "Pattern" + "description": " The regular expression used to find portions of a string that should be replaced.\n\nExample: - \"^/service/([^/]+)(/.*)$\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.regex: true\n", + "title": "Pattern", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Pattern", + "x-ves-example": "^/service/([^/]+)(/.*)$", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true" + } }, "substitution": { "type": "string", - "description": "x-displayName: \"Substitution\"\nx-example: \"\\\\2/instance/\\\\1\"\nThe string that should be substituted into matching portions of the subject string during a \nsubstitution operation to produce a new string.", - "title": "Substitution" + "description": " The string that should be substituted into matching portions of the subject string during a \n substitution operation to produce a new string.\n\nExample: - \"\\\\2/instance/\\\\1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Substitution", + "maxLength": 256, + "x-displayname": "Substitution", + "x-ves-example": "\\\\2/instance/\\\\1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } } } }, diff --git a/pbgo/extschema/schema/route/types.pb.go b/pbgo/extschema/schema/route/types.pb.go index 57ae54ac8..5cb9d9d60 100644 --- a/pbgo/extschema/schema/route/types.pb.go +++ b/pbgo/extschema/schema/route/types.pb.go @@ -2573,265 +2573,264 @@ func init() { } var fileDescriptor_d8d3aa2b5dcc5c84 = []byte{ - // 4114 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x5a, 0x4d, 0x6c, 0x1b, 0x57, - 0x7e, 0xd7, 0x23, 0x29, 0x6a, 0xf8, 0xe7, 0x87, 0x46, 0x4f, 0x1f, 0xa6, 0xb8, 0x31, 0xc3, 0x30, - 0x75, 0x2c, 0x2b, 0x63, 0xda, 0xa4, 0xfc, 0x15, 0x19, 0x75, 0x2c, 0xca, 0x72, 0x24, 0x45, 0xb6, - 0xd5, 0x91, 0x92, 0xb4, 0x9b, 0x6e, 0xa6, 0x43, 0xf2, 0x89, 0x9a, 0x98, 0x9c, 0x61, 0x66, 0x1e, - 0x65, 0xeb, 0x10, 0xac, 0xf7, 0x50, 0xb4, 0x58, 0x14, 0xe8, 0x22, 0x47, 0x23, 0x28, 0x5a, 0x14, - 0x05, 0xda, 0xa2, 0xa7, 0x1e, 0x4b, 0x03, 0x55, 0x0d, 0x14, 0x5d, 0xf8, 0xa4, 0x4b, 0xb1, 0xc1, - 0xa2, 0x87, 0x8d, 0xd2, 0x43, 0x7a, 0x0b, 0x72, 0x28, 0x0a, 0xf4, 0xb0, 0xc5, 0x7b, 0x6f, 0x66, - 0x38, 0x43, 0xd1, 0xb2, 0x8d, 0xee, 0x5e, 0x04, 0xbe, 0xf7, 0x7e, 0xff, 0xdf, 0xfb, 0xff, 0xdf, - 0xc7, 0xff, 0xe3, 0x8d, 0xe0, 0xf5, 0x3d, 0xe2, 0x94, 0x0c, 0xeb, 0x82, 0x53, 0xdf, 0x25, 0x6d, - 0xfd, 0x82, 0x6d, 0x75, 0x29, 0xb9, 0x40, 0xf7, 0x3b, 0xc4, 0x29, 0x75, 0x6c, 0x8b, 0x5a, 0x78, - 0x52, 0x00, 0x4a, 0x02, 0x50, 0xe2, 0x80, 0xdc, 0xf9, 0xa6, 0x41, 0x77, 0xbb, 0xb5, 0x52, 0xdd, - 0x6a, 0x5f, 0x68, 0x5a, 0x4d, 0xeb, 0x02, 0xc7, 0xd6, 0xba, 0x3b, 0xbc, 0xc5, 0x1b, 0xfc, 0x97, - 0xe0, 0xc8, 0xfd, 0x20, 0x3c, 0x89, 0xd5, 0xa1, 0x86, 0x65, 0xba, 0x13, 0xe4, 0x0a, 0xe1, 0xc1, - 0x8e, 0xd5, 0x32, 0xea, 0xfb, 0x41, 0x15, 0x72, 0xb3, 0x61, 0x44, 0x70, 0xe8, 0xb5, 0xf0, 0xd0, - 0x9e, 0xde, 0x32, 0x1a, 0x3a, 0x25, 0xc3, 0xa9, 0xf7, 0x0c, 0xf2, 0x40, 0x0b, 0x4d, 0x5e, 0xd4, - 0x20, 0xfd, 0x21, 0xb1, 0xb7, 0xa8, 0x4e, 0xbb, 0xce, 0xf6, 0x7e, 0x87, 0xe0, 0x2b, 0x10, 0x77, - 0x78, 0x2b, 0x8b, 0x0a, 0x68, 0x2e, 0x51, 0xcd, 0xff, 0xd3, 0x7f, 0x1d, 0x44, 0x67, 0xed, 0x53, + // 4111 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x5a, 0x4f, 0x6c, 0x1b, 0x57, + 0x7a, 0xd7, 0x23, 0x29, 0x6a, 0xf8, 0xf1, 0x8f, 0x46, 0x4f, 0x7f, 0x4c, 0x71, 0x63, 0x86, 0x61, + 0xea, 0x58, 0x56, 0xc6, 0xb4, 0x49, 0xf9, 0x5f, 0x64, 0xd4, 0xb1, 0x28, 0xcb, 0x91, 0x14, 0xd9, + 0x56, 0x47, 0x4a, 0xd2, 0x6e, 0xba, 0x99, 0x0e, 0xc9, 0x27, 0x6a, 0x62, 0x72, 0x86, 0x99, 0x79, + 0x94, 0xad, 0x43, 0xb0, 0xde, 0x43, 0xd1, 0x62, 0x51, 0xa0, 0x8b, 0x1c, 0x8d, 0xa0, 0x68, 0x51, + 0x14, 0x68, 0x8b, 0x9e, 0x7a, 0x2c, 0x0d, 0x54, 0x35, 0x50, 0x74, 0xe1, 0x93, 0x2e, 0xc5, 0x06, + 0x8b, 0x1e, 0x36, 0x4a, 0x0f, 0xe9, 0x2d, 0xc8, 0xa9, 0x40, 0x0f, 0x5b, 0xbc, 0xf7, 0x66, 0x86, + 0x33, 0x14, 0x2d, 0xdb, 0xd8, 0xdd, 0x8b, 0xc0, 0x99, 0xf7, 0xfb, 0x7e, 0xef, 0x7b, 0xff, 0xbe, + 0xef, 0xf7, 0xbd, 0x11, 0xbc, 0xbe, 0x47, 0x9c, 0x92, 0x61, 0x5d, 0x70, 0xea, 0xbb, 0xa4, 0xad, + 0x5f, 0xb0, 0xad, 0x2e, 0x25, 0x17, 0xe8, 0x7e, 0x87, 0x38, 0xa5, 0x8e, 0x6d, 0x51, 0x0b, 0x4f, + 0x0a, 0x40, 0x49, 0x00, 0x4a, 0x1c, 0x90, 0x3b, 0xdf, 0x34, 0xe8, 0x6e, 0xb7, 0x56, 0xaa, 0x5b, + 0xed, 0x0b, 0x4d, 0xab, 0x69, 0x5d, 0xe0, 0xd8, 0x5a, 0x77, 0x87, 0x3f, 0xf1, 0x07, 0xfe, 0x4b, + 0x70, 0xe4, 0x7e, 0x10, 0xee, 0xc4, 0xea, 0x50, 0xc3, 0x32, 0xdd, 0x0e, 0x72, 0x85, 0x70, 0x63, + 0xc7, 0x6a, 0x19, 0xf5, 0xfd, 0xa0, 0x0b, 0xb9, 0xd9, 0x30, 0x22, 0xd8, 0xf4, 0x5a, 0xb8, 0x69, + 0x4f, 0x6f, 0x19, 0x0d, 0x9d, 0x92, 0xe1, 0xd4, 0x7b, 0x06, 0x79, 0xa0, 0x85, 0x3a, 0x2f, 0x6a, + 0x90, 0xfe, 0x90, 0xd8, 0x5b, 0x54, 0xa7, 0x5d, 0x67, 0x7b, 0xbf, 0x43, 0xf0, 0x15, 0x88, 0x3b, + 0xfc, 0x29, 0x8b, 0x0a, 0x68, 0x2e, 0x51, 0xcd, 0xff, 0xcb, 0xff, 0x1c, 0x44, 0x67, 0xed, 0x53, 0x2a, 0xac, 0x99, 0x75, 0xab, 0xdd, 0x69, 0x11, 0x4a, 0xd4, 0xc4, 0x9a, 0xe9, 0x50, 0xbd, 0xd5, - 0x22, 0x0d, 0xd5, 0x45, 0xe3, 0x19, 0x88, 0xdb, 0x44, 0x77, 0x2c, 0x33, 0x1b, 0x61, 0x72, 0xaa, - 0xdb, 0x2a, 0xfe, 0x5d, 0x0c, 0x64, 0x95, 0xad, 0xd9, 0x2d, 0xe2, 0x50, 0xc3, 0xd4, 0xd9, 0xe4, - 0x78, 0x03, 0xc6, 0xea, 0xad, 0xae, 0x43, 0x89, 0x9d, 0x45, 0x85, 0xe8, 0x5c, 0xb2, 0xf2, 0x5a, - 0x29, 0xbc, 0xca, 0xf7, 0x6a, 0x9f, 0x92, 0x3a, 0x55, 0xc9, 0x0e, 0xd3, 0xa9, 0x3a, 0xf5, 0xf7, - 0x9f, 0x7b, 0x78, 0xa6, 0xcd, 0xe8, 0x17, 0x28, 0x22, 0x23, 0xd5, 0xeb, 0xc2, 0xaf, 0x41, 0xfc, - 0x01, 0x31, 0x9a, 0xbb, 0x34, 0x1b, 0x2d, 0xa0, 0xb9, 0x74, 0x35, 0xf6, 0x3f, 0x3d, 0x34, 0xa2, - 0xba, 0x7d, 0xb8, 0x04, 0x52, 0xc7, 0x36, 0x2c, 0xdb, 0xa0, 0xfb, 0xd9, 0x51, 0x3e, 0x8e, 0x0f, - 0x7a, 0x08, 0xfd, 0xb2, 0x87, 0x50, 0x99, 0xb1, 0xc5, 0xe6, 0x23, 0xd9, 0x82, 0xea, 0x63, 0xf0, - 0x9f, 0x22, 0x90, 0x89, 0xd9, 0xe8, 0x58, 0x86, 0x49, 0x35, 0xa7, 0x5b, 0x73, 0x08, 0x75, 0xb2, - 0x31, 0xae, 0xe5, 0x62, 0x69, 0xc8, 0x59, 0x28, 0x0d, 0x5a, 0x57, 0x5a, 0x71, 0xa5, 0xb7, 0x84, - 0xf0, 0x8a, 0x49, 0xed, 0xfd, 0xea, 0x1b, 0x6c, 0xd2, 0xc7, 0x4f, 0x50, 0x0c, 0x22, 0x23, 0x88, - 0x5b, 0xf1, 0x18, 0x45, 0x64, 0xf9, 0xe8, 0x57, 0xff, 0x1a, 0x8d, 0xff, 0xf4, 0x09, 0x8a, 0x48, - 0x23, 0xea, 0x38, 0x09, 0x0b, 0xe6, 0xaa, 0x30, 0x35, 0x8c, 0x0b, 0xcb, 0x10, 0xbd, 0x4f, 0xf6, - 0xc5, 0x06, 0xa9, 0xec, 0x27, 0x9e, 0x82, 0xd1, 0x3d, 0xbd, 0xd5, 0x25, 0xee, 0xe2, 0x8b, 0xc6, - 0x62, 0xe4, 0x1a, 0x5a, 0xfc, 0x6b, 0xf4, 0xb4, 0x87, 0xce, 0xc3, 0xdb, 0x50, 0x58, 0x16, 0xcb, - 0x55, 0x78, 0x60, 0xd0, 0xdd, 0xc2, 0x47, 0x7c, 0x71, 0x0a, 0xba, 0xd9, 0x28, 0x6c, 0x7a, 0x96, - 0x8f, 0x95, 0x95, 0x05, 0xe5, 0xb2, 0x72, 0xe9, 0x59, 0x0f, 0x99, 0x30, 0x03, 0x63, 0xae, 0x40, - 0x35, 0xe9, 0xef, 0x96, 0x8c, 0x00, 0x43, 0x5c, 0xc8, 0xe6, 0x24, 0x6f, 0xd9, 0x61, 0x06, 0x24, - 0x8f, 0x24, 0x07, 0xfd, 0xe5, 0x86, 0x39, 0x90, 0x3d, 0xfd, 0x0b, 0xae, 0x01, 0xeb, 0x53, 0xc7, - 0x57, 0x57, 0x8e, 0xad, 0xc7, 0xa4, 0x88, 0x1c, 0x2d, 0x7e, 0x89, 0x40, 0xbe, 0x63, 0xd8, 0xb6, - 0x65, 0x6f, 0xf2, 0x4b, 0xc0, 0x0f, 0xe4, 0x6f, 0xf6, 0xac, 0x2c, 0xc2, 0x58, 0x87, 0xd8, 0x75, - 0x62, 0x52, 0xbe, 0x54, 0xc9, 0x4a, 0x61, 0x80, 0xed, 0xb6, 0xad, 0xd7, 0xd9, 0x2e, 0xea, 0xad, - 0x4d, 0x81, 0x53, 0x3d, 0x81, 0xe2, 0xdb, 0x90, 0xd9, 0xea, 0x34, 0xf6, 0x97, 0x2d, 0x73, 0xc7, - 0x68, 0x72, 0xdd, 0x66, 0x41, 0xea, 0x3a, 0x44, 0x73, 0x3a, 0x0d, 0xb1, 0x1b, 0x92, 0x3a, 0xd6, - 0x75, 0x08, 0x03, 0x15, 0xff, 0x06, 0xc1, 0xe4, 0x47, 0xa4, 0xe6, 0x58, 0xf5, 0xfb, 0x84, 0x06, - 0x44, 0xde, 0x84, 0x34, 0x13, 0x79, 0xe0, 0x0d, 0xb9, 0x72, 0xa9, 0xae, 0x43, 0x7c, 0x38, 0x56, - 0x20, 0x65, 0x34, 0x5a, 0x44, 0xa3, 0x46, 0x9b, 0x58, 0x5d, 0xa1, 0x6a, 0xba, 0x9a, 0xf8, 0xea, - 0x73, 0xf4, 0x6d, 0x0f, 0xa1, 0x2c, 0x52, 0x93, 0x6c, 0x78, 0x5b, 0x8c, 0xe2, 0xeb, 0x30, 0xd5, - 0xd6, 0x1f, 0x6a, 0x75, 0xcb, 0x34, 0x49, 0x9d, 0x6a, 0x3a, 0xa5, 0xa4, 0xdd, 0xa1, 0x8e, 0x7b, - 0x1b, 0x02, 0x52, 0xb8, 0xad, 0x3f, 0x5c, 0x16, 0xa8, 0x25, 0x17, 0x54, 0xfc, 0xb7, 0x38, 0xc8, - 0xcb, 0x96, 0x75, 0xdf, 0x20, 0xb7, 0x2d, 0x7b, 0x55, 0x77, 0x76, 0x0d, 0xb3, 0x89, 0x7f, 0x07, - 0x62, 0xa6, 0xde, 0x26, 0xae, 0x0b, 0x90, 0xd9, 0x7d, 0x62, 0x8b, 0x39, 0x66, 0x8f, 0xca, 0x28, - 0xfb, 0x28, 0xa2, 0xf2, 0x51, 0x76, 0x0c, 0x29, 0x6d, 0x09, 0xe5, 0x54, 0xf6, 0x13, 0x63, 0x88, - 0x75, 0x74, 0xba, 0xcb, 0x67, 0x4e, 0xa8, 0xfc, 0x37, 0x7e, 0x17, 0xc6, 0x8d, 0xa6, 0x69, 0xd9, - 0x44, 0x73, 0xf4, 0x36, 0x71, 0x0c, 0x4a, 0xf8, 0x35, 0x4c, 0x56, 0xa6, 0x06, 0x56, 0x7e, 0xa5, - 0xdd, 0xa1, 0xfb, 0xab, 0x23, 0x6a, 0x46, 0xc0, 0xb7, 0x5c, 0x34, 0x23, 0xf0, 0x24, 0x35, 0x87, - 0xda, 0x46, 0x9d, 0x66, 0xe3, 0x27, 0x13, 0x78, 0xf0, 0x2d, 0x8e, 0xc6, 0xef, 0x40, 0xca, 0x27, - 0x68, 0xe9, 0x0f, 0xb3, 0x63, 0x27, 0x4a, 0x27, 0x3d, 0xec, 0x86, 0xfe, 0x10, 0x5f, 0x87, 0xb4, - 0x2f, 0x6a, 0x5a, 0x26, 0xc9, 0x4a, 0x27, 0xca, 0xfa, 0xf3, 0xdc, 0xb5, 0x4c, 0xc2, 0x84, 0x3d, - 0xcb, 0x49, 0xbd, 0x6b, 0x93, 0x2c, 0x9c, 0x20, 0x8c, 0xd4, 0x94, 0x6b, 0x37, 0xc7, 0xe2, 0xcb, - 0x00, 0x7a, 0xa3, 0xe1, 0x49, 0x26, 0x4f, 0x94, 0x4c, 0xe8, 0x8d, 0x86, 0x2b, 0xd6, 0x5f, 0xed, - 0x5d, 0x4a, 0x3b, 0x96, 0xd9, 0xda, 0xcf, 0xa6, 0x4f, 0x90, 0x8d, 0x78, 0xab, 0xbd, 0xea, 0xa2, - 0xd9, 0x62, 0xb1, 0x79, 0x7d, 0xe9, 0xcc, 0x89, 0xd2, 0x49, 0xbd, 0xd1, 0xf0, 0x44, 0xab, 0xf7, - 0x40, 0xf2, 0xec, 0xc7, 0xcb, 0x07, 0x3d, 0x34, 0x7a, 0xd8, 0x43, 0xb1, 0xa3, 0x1e, 0x1a, 0xbb, - 0xac, 0x5c, 0x51, 0xae, 0x2a, 0xd7, 0x7e, 0xfa, 0x04, 0x29, 0xb9, 0x39, 0xc6, 0xac, 0xb5, 0x2c, - 0xbd, 0x51, 0xd3, 0x5b, 0xba, 0x59, 0x27, 0x76, 0xc9, 0xe9, 0x90, 0x7a, 0xa9, 0xce, 0xcf, 0xa0, - 0xe6, 0x50, 0xa3, 0x7e, 0xdf, 0x30, 0x89, 0xe3, 0x14, 0x50, 0xf5, 0x7d, 0x88, 0x0b, 0xfb, 0xf1, - 0xd2, 0x41, 0x0f, 0xc1, 0x61, 0x0f, 0x25, 0x8e, 0x7a, 0x68, 0xb4, 0x7c, 0x51, 0x29, 0x97, 0x5f, - 0x99, 0xec, 0x0e, 0x48, 0x9e, 0x51, 0x9c, 0x2e, 0x7d, 0xd8, 0x43, 0x29, 0x4e, 0xb7, 0xa0, 0x94, - 0x2f, 0xbd, 0x2a, 0xdd, 0x7a, 0x4c, 0x8a, 0xc9, 0xa3, 0xeb, 0x31, 0x29, 0x21, 0xc3, 0x7a, 0x4c, - 0x4a, 0xc9, 0xe9, 0xe2, 0x93, 0x28, 0x64, 0xd8, 0x05, 0x0a, 0xf8, 0xae, 0x05, 0x48, 0xee, 0x12, - 0xbd, 0x41, 0x6c, 0xed, 0xa4, 0xeb, 0xb4, 0x3a, 0xa2, 0x82, 0x80, 0xdd, 0x65, 0xd7, 0xea, 0x5d, - 0x88, 0x8b, 0x09, 0x5d, 0x0f, 0x75, 0x66, 0x68, 0xd4, 0x19, 0xbc, 0xb3, 0xab, 0x23, 0xaa, 0x2b, - 0x86, 0xdf, 0x84, 0x84, 0x63, 0x75, 0xed, 0x3a, 0xd1, 0x8c, 0x0e, 0xbf, 0x8a, 0x92, 0x08, 0x89, - 0xab, 0x23, 0xaa, 0x24, 0x06, 0xd6, 0x3a, 0xb8, 0x00, 0x12, 0x25, 0x76, 0xdb, 0x30, 0xf5, 0x56, - 0x36, 0xd6, 0xc7, 0xa8, 0x7e, 0xef, 0xe2, 0x3f, 0xb3, 0xc8, 0x91, 0x83, 0x2c, 0x4c, 0xb0, 0x29, - 0x0a, 0xc2, 0xac, 0x82, 0xda, 0x6d, 0x11, 0x07, 0x47, 0x45, 0x98, 0xf8, 0x12, 0x81, 0x0a, 0x49, - 0x77, 0x84, 0x59, 0x3c, 0xbf, 0x0c, 0x4b, 0x30, 0x1d, 0xb2, 0xba, 0x12, 0x5f, 0xe5, 0x0d, 0x90, - 0x3d, 0xbb, 0x2a, 0x71, 0xa1, 0x3c, 0xcc, 0x04, 0x14, 0xad, 0x24, 0xb6, 0xf8, 0xcf, 0xc2, 0xda, - 0x26, 0x94, 0x60, 0xf4, 0x43, 0x16, 0xc0, 0x2a, 0x67, 0x42, 0x4c, 0x90, 0x14, 0xf2, 0x25, 0xde, - 0xe8, 0x8b, 0xb2, 0xf8, 0xb3, 0xed, 0x6a, 0xcd, 0xe2, 0x8f, 0x67, 0x41, 0xf5, 0x0c, 0xc8, 0x22, - 0x9b, 0xd2, 0xd8, 0x36, 0x1a, 0x3b, 0x06, 0xb1, 0xf1, 0xc4, 0x41, 0x0f, 0x45, 0x0e, 0x7b, 0x68, - 0x94, 0x6d, 0x7d, 0x45, 0x29, 0x2b, 0x0b, 0xeb, 0x31, 0x69, 0x54, 0x8e, 0x17, 0xff, 0x3b, 0x0d, - 0x53, 0x83, 0xa1, 0x7c, 0xc3, 0x70, 0x28, 0xfe, 0x00, 0x52, 0x8d, 0x7e, 0x97, 0xe3, 0x46, 0xa1, - 0x33, 0x2f, 0x95, 0x0b, 0x54, 0xc1, 0x0f, 0x42, 0xb2, 0x1a, 0xa2, 0xc1, 0x8b, 0x90, 0xe9, 0xd8, - 0x64, 0xc7, 0x78, 0xa8, 0xd9, 0xe4, 0x81, 0xed, 0xb9, 0xc5, 0x44, 0x75, 0xc2, 0x3b, 0x1e, 0x92, - 0x1d, 0xcf, 0x3e, 0x8a, 0x7c, 0x1b, 0x41, 0xab, 0x23, 0x6a, 0x5a, 0x40, 0x55, 0x81, 0xc4, 0x77, - 0x20, 0x6d, 0x93, 0x26, 0xe9, 0x8b, 0xe6, 0x86, 0xc6, 0x32, 0x95, 0x61, 0xee, 0xe8, 0xb4, 0xbe, - 0xeb, 0x0a, 0x56, 0x63, 0x2c, 0x12, 0x30, 0x47, 0xc5, 0xc5, 0x3d, 0xba, 0x73, 0x90, 0xda, 0xb5, - 0x1c, 0xea, 0xb3, 0xc5, 0xb9, 0x22, 0xe2, 0xcc, 0x20, 0x35, 0xc9, 0xc6, 0x3c, 0x68, 0x05, 0x26, - 0xf4, 0x2e, 0xb5, 0xb4, 0x10, 0x7e, 0x2c, 0x70, 0xc6, 0x90, 0x3a, 0xce, 0x00, 0xab, 0x01, 0x99, - 0x3c, 0x8c, 0x79, 0x81, 0x4c, 0x0a, 0x24, 0x68, 0x5e, 0x27, 0x7e, 0x0f, 0x52, 0x36, 0xa1, 0xf6, - 0xbe, 0x26, 0x36, 0x2b, 0x9b, 0xe0, 0xc6, 0xe4, 0x8f, 0x19, 0x43, 0xed, 0xfd, 0xfe, 0xdd, 0xaa, - 0xc6, 0x0e, 0x7b, 0x08, 0xa9, 0x49, 0xbb, 0xdf, 0x8d, 0x7f, 0x36, 0x2c, 0x75, 0x03, 0xbe, 0x5d, - 0x37, 0x5e, 0x6a, 0xbb, 0xd8, 0x7e, 0x0f, 0x4f, 0xdf, 0xce, 0xb0, 0xf4, 0xed, 0xf0, 0x95, 0x53, - 0x38, 0xbc, 0x0d, 0xe9, 0x36, 0xcf, 0x68, 0x3c, 0xe3, 0x92, 0x27, 0xdc, 0xe9, 0xc1, 0xdc, 0xa7, - 0x2a, 0x79, 0xb3, 0xaa, 0xa9, 0x76, 0x60, 0x0c, 0x7f, 0x02, 0x13, 0x0f, 0x48, 0x4d, 0x13, 0xd9, - 0x02, 0x0b, 0xfc, 0x3b, 0x46, 0xd3, 0xf5, 0xf3, 0x73, 0x43, 0x99, 0x87, 0x64, 0x22, 0x01, 0xf2, - 0xf1, 0x07, 0xa4, 0xb6, 0x15, 0x18, 0xc6, 0x77, 0x21, 0x5d, 0xeb, 0xee, 0xec, 0x10, 0x5f, 0x6b, - 0x11, 0x05, 0x5e, 0x1f, 0xe0, 0xae, 0x72, 0xcc, 0x50, 0xca, 0x94, 0x90, 0x77, 0xf5, 0xbd, 0xc5, - 0xae, 0xae, 0xed, 0x78, 0x6c, 0xe3, 0x9c, 0x6d, 0x76, 0x80, 0x6d, 0xd9, 0xb2, 0x1d, 0x81, 0x0f, - 0xf0, 0x40, 0xdd, 0xef, 0xe5, 0x2c, 0x8e, 0xbd, 0xe3, 0xb1, 0x64, 0x87, 0xb3, 0x38, 0xf6, 0xce, - 0x10, 0x16, 0xbf, 0x17, 0xd7, 0x21, 0xb9, 0xab, 0x3b, 0xbb, 0x1e, 0x8b, 0xcc, 0x8f, 0xc7, 0x9b, - 0x43, 0x57, 0x2d, 0xec, 0xcd, 0xab, 0xa7, 0x3d, 0x3e, 0xff, 0x4e, 0x4b, 0x7c, 0xef, 0xbf, 0x78, - 0xc2, 0x73, 0x4c, 0xd8, 0xf5, 0xe1, 0xf8, 0x66, 0xa0, 0xe8, 0xc0, 0x05, 0x34, 0x97, 0x39, 0x7e, - 0x9c, 0xad, 0x2e, 0x35, 0xcc, 0xa6, 0x97, 0x37, 0x57, 0x63, 0x8c, 0x3c, 0x50, 0x86, 0xdc, 0x85, - 0x24, 0x4b, 0x2b, 0xbd, 0xcd, 0x9d, 0xe4, 0xc6, 0x0e, 0x57, 0x33, 0x9c, 0x94, 0x0a, 0xb3, 0xbf, - 0xe3, 0x66, 0x3b, 0xfe, 0x08, 0x4b, 0x0c, 0xd8, 0x55, 0xd1, 0xeb, 0x54, 0xf3, 0xd2, 0xe9, 0xe9, - 0x93, 0x13, 0x03, 0x17, 0xee, 0x56, 0x01, 0xf8, 0x7d, 0x98, 0x69, 0x58, 0x9a, 0x69, 0xb1, 0x6b, - 0x1f, 0xe6, 0x99, 0x39, 0x91, 0x67, 0xb2, 0x61, 0xdd, 0xb5, 0xa8, 0x1a, 0x22, 0xfb, 0x8d, 0x54, - 0x36, 0x7f, 0x86, 0xbe, 0xbf, 0xf1, 0x56, 0x59, 0xb9, 0xa6, 0xbc, 0xa3, 0x54, 0x2e, 0x2b, 0x95, - 0x8b, 0x0a, 0xcf, 0x0b, 0x14, 0x1e, 0xce, 0x95, 0xf2, 0x65, 0xa5, 0x7c, 0x45, 0x29, 0x5f, 0x53, - 0xca, 0xef, 0x28, 0x95, 0x85, 0xa7, 0x3d, 0xa4, 0xc1, 0x69, 0xc8, 0xde, 0xb3, 0x8d, 0xa6, 0x61, - 0x16, 0x36, 0x2d, 0xab, 0xe5, 0xf0, 0xda, 0x47, 0x94, 0x32, 0x0e, 0x46, 0x65, 0xb8, 0x01, 0x93, - 0x01, 0x4f, 0x50, 0x58, 0xaa, 0x0b, 0x37, 0x7d, 0xf6, 0x65, 0xf8, 0x95, 0xca, 0xa5, 0xea, 0x79, - 0x98, 0xe5, 0xdb, 0xa1, 0x05, 0xbc, 0xbc, 0xe7, 0x21, 0xb1, 0xec, 0xa6, 0x43, 0xb3, 0x47, 0x3d, - 0x14, 0xbb, 0xac, 0x54, 0xae, 0x54, 0xdf, 0x82, 0xc9, 0xa0, 0x0f, 0xd5, 0x3a, 0xba, 0xad, 0xb7, - 0x1d, 0x3c, 0x7e, 0xd0, 0x43, 0x63, 0x87, 0x3d, 0x34, 0x75, 0xd4, 0x43, 0xd1, 0xab, 0xca, 0x95, - 0xea, 0x45, 0x98, 0x71, 0xd7, 0xb9, 0xbf, 0xee, 0xbb, 0x96, 0x51, 0x27, 0x78, 0xe6, 0xa0, 0x87, - 0x66, 0x7e, 0x2e, 0x8e, 0xe4, 0xa9, 0xa3, 0x1e, 0x8a, 0x57, 0x2a, 0x4a, 0xa1, 0x52, 0x16, 0xb5, - 0xd4, 0x7a, 0x4c, 0x8a, 0xf2, 0xba, 0x4a, 0x64, 0x29, 0x13, 0x32, 0x5e, 0x8f, 0x49, 0xb3, 0x72, - 0x6e, 0x3d, 0x26, 0x4d, 0xc9, 0xd3, 0x22, 0x63, 0x59, 0x8f, 0x49, 0xa7, 0xe4, 0x6c, 0x71, 0xc5, - 0x2d, 0xd0, 0x7f, 0xaf, 0x4b, 0xec, 0xfd, 0x4d, 0xa1, 0x46, 0x19, 0x52, 0x9f, 0xb1, 0xa6, 0xab, - 0x16, 0x8f, 0x79, 0x89, 0x6a, 0xc6, 0x0b, 0x4d, 0xfc, 0xf0, 0x17, 0xd4, 0xe4, 0x67, 0x7d, 0x91, - 0xe2, 0x3f, 0xc4, 0x21, 0xcd, 0x79, 0x54, 0xd2, 0x30, 0x6c, 0x52, 0xa7, 0xf8, 0x1c, 0xa4, 0x5d, - 0x13, 0x45, 0x87, 0x9b, 0xff, 0x08, 0xef, 0x9f, 0x12, 0x51, 0xc5, 0x85, 0x5e, 0x83, 0x34, 0x2b, - 0x16, 0xfa, 0xd0, 0x88, 0x1f, 0x0b, 0xd1, 0x60, 0x2c, 0x4c, 0x31, 0xa4, 0x2f, 0x79, 0x3c, 0x8c, - 0x26, 0x9f, 0x2f, 0x3a, 0x10, 0x46, 0xef, 0x31, 0x59, 0x8b, 0x5a, 0xfd, 0x69, 0x79, 0xe1, 0x52, - 0x9d, 0xf3, 0xec, 0x7c, 0xdd, 0x3e, 0xad, 0x66, 0x0c, 0xb3, 0x6e, 0xb5, 0x0d, 0xb3, 0x79, 0x9e, - 0x63, 0xd5, 0x18, 0x4b, 0x12, 0xd5, 0x51, 0xf6, 0xd7, 0x61, 0x84, 0xac, 0xcf, 0x53, 0xe6, 0x3a, - 0xa4, 0x3b, 0x96, 0x1d, 0xb0, 0x38, 0xcd, 0xe3, 0xdd, 0x8c, 0x5b, 0x82, 0x79, 0xb4, 0xf1, 0xf9, - 0x58, 0xf6, 0xd7, 0xbf, 0x8e, 0xaa, 0x29, 0x06, 0xf6, 0x85, 0x3f, 0x01, 0xcc, 0xca, 0x9b, 0x8e, - 0x16, 0x5a, 0xf9, 0xd8, 0x09, 0xf1, 0x62, 0x70, 0xdb, 0xaa, 0x63, 0xee, 0x44, 0xab, 0x48, 0x95, - 0x39, 0x57, 0x70, 0x4f, 0xe7, 0x00, 0xf4, 0x56, 0xcb, 0xe3, 0x1d, 0xe5, 0x31, 0x3b, 0x20, 0x90, - 0xd0, 0x5b, 0x2d, 0x17, 0x59, 0x85, 0x09, 0x9b, 0x50, 0xdd, 0x30, 0xb5, 0x80, 0x80, 0x74, 0x62, - 0x09, 0x32, 0x2e, 0x04, 0x96, 0xc2, 0x1c, 0x6d, 0x6b, 0x8f, 0x04, 0x39, 0x12, 0x2f, 0xe2, 0x60, - 0x02, 0x7d, 0x8e, 0xcb, 0x90, 0xb1, 0x49, 0xa7, 0xa5, 0xd7, 0xbd, 0xeb, 0x91, 0x4d, 0xf1, 0xfd, - 0x49, 0x85, 0xb2, 0x67, 0xa4, 0xa6, 0x5d, 0x94, 0x2b, 0xb6, 0xc8, 0xb2, 0x23, 0xa7, 0x63, 0x99, - 0x0e, 0xd1, 0xea, 0x56, 0x43, 0xe4, 0x33, 0xe9, 0xea, 0xf4, 0x2f, 0x7b, 0x28, 0xba, 0x70, 0xb1, - 0xec, 0x1f, 0xe2, 0xf9, 0x68, 0xf6, 0x17, 0x31, 0x96, 0x0a, 0x09, 0xec, 0xb2, 0xd5, 0x20, 0x8b, - 0xe9, 0xef, 0x6f, 0xc0, 0x82, 0x52, 0x66, 0x77, 0xfd, 0x8a, 0x72, 0xb5, 0x3a, 0x07, 0x53, 0xde, - 0x5e, 0x6a, 0xfc, 0x80, 0xba, 0x77, 0x4f, 0x76, 0xb3, 0x48, 0x60, 0xf7, 0xb9, 0xa2, 0x94, 0xcb, - 0xd5, 0x62, 0xf8, 0xc6, 0x60, 0x7c, 0xd0, 0x43, 0xd2, 0x61, 0x0f, 0x8d, 0xb1, 0x9b, 0xc9, 0x7c, - 0x48, 0xb9, 0xb2, 0x1e, 0x93, 0x40, 0x4e, 0xae, 0xc7, 0xa4, 0x31, 0x59, 0x2a, 0xfe, 0x15, 0x82, - 0x49, 0x91, 0x7e, 0x70, 0x76, 0xd5, 0x55, 0x02, 0x5f, 0x1e, 0x54, 0x1e, 0x71, 0xe5, 0xfb, 0x45, - 0xc3, 0xfc, 0x68, 0xf6, 0x17, 0xb1, 0xb9, 0x46, 0x58, 0xef, 0x90, 0x58, 0xcd, 0x6a, 0xec, 0xbb, - 0x17, 0x88, 0x89, 0x45, 0xdd, 0xd5, 0x2a, 0xa0, 0xb9, 0x47, 0x85, 0xbe, 0x58, 0xd5, 0x6a, 0xec, - 0x2f, 0xbe, 0xf6, 0xb4, 0x87, 0xb2, 0x30, 0x03, 0xe3, 0x42, 0x8b, 0x82, 0xaf, 0x46, 0xb4, 0xac, - 0x54, 0x8a, 0xff, 0x8b, 0x60, 0x6a, 0xd9, 0x32, 0x29, 0x79, 0x48, 0x57, 0x1e, 0x52, 0x62, 0x3a, - 0x86, 0x65, 0xae, 0x99, 0x3b, 0x16, 0xfe, 0x12, 0x01, 0xae, 0x8b, 0x01, 0x8d, 0x78, 0x23, 0x5e, - 0x66, 0x7c, 0xf3, 0x39, 0xf5, 0xca, 0x71, 0x9e, 0x63, 0x9d, 0x6e, 0xb2, 0xf5, 0x36, 0xd3, 0x38, - 0xf9, 0x18, 0x49, 0xc5, 0xb8, 0x1d, 0x93, 0x51, 0xf6, 0x66, 0x3f, 0xd9, 0x62, 0xbf, 0x52, 0x8f, - 0x51, 0x62, 0xde, 0x7f, 0x8b, 0x98, 0xa8, 0x0f, 0x92, 0xe4, 0x6e, 0xc1, 0xcc, 0x70, 0xe6, 0x57, - 0x89, 0x2f, 0xcc, 0xfa, 0x37, 0xaa, 0x16, 0xbd, 0x45, 0x76, 0x88, 0xe9, 0x90, 0x75, 0x7d, 0x4f, - 0x77, 0xea, 0xb6, 0xd1, 0xa1, 0x6b, 0xe6, 0xa7, 0x84, 0x07, 0x07, 0x5e, 0xe2, 0xfd, 0x3e, 0x4c, - 0x7e, 0xea, 0x0f, 0x69, 0x2d, 0xab, 0xce, 0x1d, 0x3f, 0x67, 0xcb, 0x54, 0xce, 0x0e, 0x5d, 0x0a, - 0x46, 0xb5, 0xc5, 0xf1, 0x1b, 0x2e, 0x5c, 0xc5, 0x7d, 0x0e, 0xaf, 0x0f, 0xef, 0xc1, 0x78, 0x80, - 0x99, 0xea, 0x4d, 0x27, 0x1b, 0xe5, 0x0b, 0x5c, 0x7c, 0x01, 0xeb, 0xb6, 0xde, 0xac, 0x9e, 0xf3, - 0xdd, 0xf4, 0xa8, 0xf7, 0x4b, 0xf2, 0xf3, 0x96, 0x2c, 0x0a, 0xe6, 0x2d, 0x99, 0xfe, 0x2c, 0xdb, - 0x7a, 0xd3, 0x59, 0x8f, 0x49, 0x48, 0x8e, 0x14, 0x9f, 0x21, 0x48, 0x87, 0x28, 0x99, 0xa7, 0x0d, - 0xe8, 0xd3, 0xb5, 0x5b, 0xae, 0x3f, 0x9f, 0xe4, 0xb4, 0x76, 0x74, 0xee, 0x11, 0xdf, 0x9d, 0x98, - 0x1d, 0x29, 0x20, 0x35, 0xdd, 0x87, 0x7e, 0x60, 0xb7, 0xf0, 0x27, 0x90, 0xa1, 0x7a, 0x53, 0xd3, - 0x29, 0xb5, 0x8d, 0x5a, 0x97, 0x12, 0x27, 0x1b, 0xe1, 0xa6, 0xbc, 0x31, 0xd4, 0x94, 0x6d, 0xbd, - 0xb9, 0xe4, 0x21, 0xab, 0x53, 0xbe, 0x25, 0x89, 0xbe, 0xfe, 0x6a, 0x9a, 0x06, 0x30, 0xce, 0xe2, - 0xe9, 0x67, 0x3d, 0x34, 0x0b, 0xa7, 0x20, 0xfa, 0x81, 0xba, 0x91, 0x93, 0x07, 0x15, 0x2d, 0xfe, - 0x31, 0x82, 0x54, 0x90, 0x14, 0x6f, 0x84, 0x20, 0x54, 0x6f, 0x72, 0x5b, 0x32, 0xcf, 0xf1, 0xb3, - 0x41, 0x51, 0x56, 0xa2, 0x07, 0xad, 0x63, 0x2b, 0x73, 0x16, 0x12, 0xcc, 0xba, 0xc0, 0x39, 0x72, - 0xeb, 0x3e, 0xb6, 0x28, 0x92, 0x2a, 0x51, 0xbd, 0xc9, 0xeb, 0x59, 0xb6, 0xa8, 0x98, 0x9f, 0x4c, - 0xd3, 0x2b, 0x8e, 0xf8, 0x19, 0xba, 0x0c, 0x19, 0xc3, 0x74, 0x88, 0xcd, 0x53, 0x79, 0x36, 0xe8, - 0xae, 0x6c, 0xc6, 0xbb, 0xbd, 0xa3, 0x76, 0x34, 0xfb, 0x97, 0xef, 0xaa, 0x69, 0x81, 0x72, 0x19, - 0xf0, 0xef, 0x82, 0x4c, 0x5a, 0xa4, 0x4d, 0x58, 0xb1, 0x43, 0x5a, 0xa4, 0x4e, 0x2d, 0xdb, 0x9d, - 0x1d, 0xbb, 0x1b, 0x21, 0x6e, 0x4e, 0xcc, 0x66, 0xdb, 0x3c, 0xee, 0x62, 0xb7, 0x5c, 0x28, 0xbe, - 0x01, 0x52, 0xc7, 0x72, 0x0c, 0x7e, 0x5c, 0xa3, 0xdc, 0xfa, 0xc1, 0x83, 0x25, 0x52, 0xe4, 0xd2, - 0xea, 0xf6, 0x9d, 0x8d, 0x4d, 0x17, 0xa9, 0xfa, 0x32, 0xc5, 0x7f, 0x41, 0x30, 0xb1, 0x45, 0xec, - 0x3d, 0xa3, 0x4e, 0x44, 0xd6, 0xcb, 0x5d, 0x43, 0x0e, 0xc6, 0x1a, 0x86, 0xa3, 0xd7, 0x5a, 0xc2, - 0x73, 0x49, 0xab, 0x23, 0xaa, 0xd7, 0x81, 0xff, 0x68, 0xa8, 0xd7, 0x88, 0xf2, 0xa0, 0x70, 0xee, - 0xa5, 0xbd, 0x86, 0x5f, 0xc4, 0x1e, 0xbf, 0xf9, 0xd5, 0x39, 0x98, 0x76, 0x84, 0x4a, 0x6e, 0x7e, - 0xef, 0x39, 0xec, 0x71, 0x37, 0x77, 0x8f, 0xb0, 0xbc, 0x4a, 0x14, 0xfd, 0x11, 0x39, 0x5a, 0xfc, - 0x8b, 0x53, 0x90, 0xe0, 0x5e, 0x98, 0xef, 0xc3, 0x3a, 0x8c, 0xb6, 0x59, 0xb5, 0xec, 0x3a, 0xb2, - 0xd9, 0x21, 0x29, 0x3b, 0xe1, 0xe5, 0x74, 0x75, 0x36, 0x54, 0x06, 0xc8, 0xc1, 0xeb, 0x24, 0x28, - 0x58, 0x89, 0x76, 0x2c, 0x1d, 0x74, 0x1f, 0x74, 0xce, 0xbd, 0x74, 0x2d, 0x2a, 0x8a, 0xdc, 0xd5, - 0x11, 0x55, 0xb6, 0x07, 0x3f, 0xa1, 0xbc, 0x0f, 0x19, 0xc1, 0x1f, 0xca, 0x5d, 0x9e, 0xe7, 0x1c, - 0x42, 0x89, 0x19, 0x4b, 0x84, 0xec, 0x50, 0xa6, 0xd6, 0x80, 0x69, 0x57, 0x59, 0x11, 0xea, 0xbc, - 0x18, 0xe1, 0x66, 0x1f, 0x73, 0x27, 0x28, 0x1c, 0x8a, 0x5e, 0xbe, 0xbe, 0x93, 0xf6, 0x90, 0xd0, - 0x76, 0x1d, 0xa6, 0xdd, 0x93, 0xa0, 0xd5, 0xbb, 0x0e, 0xb5, 0xda, 0x9a, 0xb8, 0x42, 0x03, 0xb9, - 0x88, 0x3a, 0xe9, 0xa2, 0x96, 0x39, 0x48, 0x38, 0x20, 0xfc, 0x11, 0x64, 0xc2, 0x3b, 0xcb, 0x73, - 0x81, 0x64, 0xe5, 0xad, 0xe1, 0x25, 0xd1, 0xe0, 0xb9, 0x0c, 0x54, 0x45, 0x69, 0x27, 0x38, 0x88, - 0x3b, 0x30, 0x63, 0x93, 0xcf, 0xba, 0xc4, 0xa1, 0x9a, 0x78, 0x6b, 0x72, 0x34, 0x6a, 0x69, 0x7a, - 0xa3, 0x91, 0x1d, 0xe3, 0xa7, 0xe0, 0xed, 0x81, 0x09, 0xc4, 0x6b, 0xd6, 0x1d, 0xdd, 0x34, 0x3a, - 0xdd, 0x16, 0xdf, 0x8b, 0x7b, 0x1d, 0x2f, 0x1a, 0x54, 0x33, 0x07, 0xc1, 0x73, 0x51, 0x50, 0x27, - 0x5d, 0x6a, 0x21, 0xe4, 0x6c, 0x5b, 0x4b, 0x8d, 0x06, 0xb6, 0xe1, 0x94, 0x1f, 0xab, 0x07, 0xa6, - 0x94, 0xfe, 0xff, 0x53, 0x4e, 0x79, 0xdc, 0xa1, 0x39, 0x7f, 0x08, 0xb3, 0x43, 0xac, 0x14, 0x09, - 0x57, 0x36, 0xc1, 0xb3, 0xfb, 0xd7, 0x3d, 0xa2, 0xd4, 0x17, 0x28, 0x51, 0x74, 0x13, 0x86, 0x48, - 0x80, 0x79, 0x66, 0xd0, 0x18, 0x95, 0x8b, 0xe3, 0x3f, 0x84, 0xdc, 0x30, 0x7b, 0x5c, 0x72, 0x78, - 0x39, 0xf2, 0x53, 0xc7, 0xd4, 0x76, 0xd9, 0xaf, 0x82, 0xf4, 0x40, 0xdf, 0xd1, 0xe8, 0x7e, 0xc7, - 0x7b, 0x06, 0x9f, 0x19, 0x58, 0x9e, 0x8f, 0x74, 0xf1, 0xe9, 0x47, 0x94, 0xd0, 0x63, 0x0f, 0x44, - 0x13, 0x5f, 0x81, 0x29, 0xef, 0xb8, 0x79, 0x61, 0x99, 0xaf, 0x71, 0x5a, 0xbc, 0x56, 0x71, 0x30, - 0x76, 0x11, 0x5e, 0xd0, 0x65, 0x4b, 0x55, 0x06, 0xd9, 0xb9, 0x6f, 0x74, 0xb4, 0x56, 0x4d, 0xb3, - 0xf6, 0x88, 0x6d, 0x1b, 0x0d, 0xc2, 0x5f, 0x2c, 0x02, 0x27, 0x34, 0xc3, 0x00, 0x1b, 0xb5, 0x7b, - 0xee, 0x30, 0xb6, 0x61, 0xde, 0x30, 0x77, 0x09, 0x73, 0xe8, 0x0d, 0xad, 0x66, 0x51, 0xad, 0x21, - 0x92, 0x06, 0x2d, 0x10, 0x64, 0x0c, 0x2f, 0x6d, 0xc8, 0x4e, 0x9c, 0x98, 0x05, 0xbf, 0xe5, 0x33, - 0x9d, 0x98, 0x7c, 0xe0, 0x9f, 0x20, 0x28, 0xbc, 0x70, 0x2a, 0xcc, 0xa7, 0xba, 0x32, 0xf4, 0x8e, - 0xbc, 0x30, 0xb7, 0x59, 0x45, 0xea, 0xe9, 0xda, 0x89, 0x3a, 0xfc, 0x39, 0x02, 0xe5, 0x45, 0x3a, - 0x68, 0x86, 0xd9, 0x32, 0x4c, 0xa2, 0xb5, 0x59, 0x32, 0x2b, 0x9e, 0x31, 0xce, 0x3e, 0xdf, 0xd7, - 0x87, 0x02, 0x63, 0x7f, 0xc1, 0xcf, 0x9e, 0xa8, 0xc7, 0x1a, 0x9f, 0xe1, 0x0e, 0xcb, 0xdf, 0xff, - 0x03, 0xbe, 0xbf, 0xf1, 0x83, 0x32, 0xaf, 0xd0, 0x17, 0x94, 0x32, 0xcb, 0xcc, 0x95, 0xab, 0xca, - 0x3b, 0xca, 0x35, 0x96, 0xd0, 0xb3, 0x92, 0xfd, 0x69, 0x0f, 0xdd, 0x01, 0x0c, 0x69, 0x55, 0x1c, - 0xe5, 0x02, 0x77, 0xe7, 0xac, 0xfc, 0x9f, 0x81, 0x31, 0xaf, 0xe4, 0x4f, 0x96, 0x2f, 0xf9, 0x42, - 0xf0, 0x3a, 0xc8, 0x4b, 0x8d, 0x3d, 0xdd, 0xac, 0x93, 0x46, 0xa1, 0x0f, 0x28, 0x73, 0xee, 0x2b, - 0x4a, 0x79, 0xe1, 0x59, 0x0f, 0x7d, 0x9b, 0x80, 0x1f, 0x43, 0x8a, 0xbb, 0x43, 0x17, 0x32, 0x6f, - 0x41, 0x1b, 0xce, 0x0c, 0x89, 0x00, 0x15, 0x39, 0xf8, 0xc6, 0xc0, 0x5c, 0x3c, 0xe4, 0x06, 0x1d, - 0x79, 0x45, 0xf2, 0xfc, 0x32, 0xcc, 0x3d, 0xc7, 0x2f, 0x57, 0x06, 0xf3, 0x75, 0xf8, 0x4f, 0x09, - 0x80, 0x97, 0x3f, 0x84, 0x12, 0xdb, 0x51, 0xff, 0x5d, 0x82, 0x33, 0x90, 0x70, 0xc3, 0x99, 0x8c, - 0x30, 0xe6, 0x3f, 0x3e, 0xbe, 0xf8, 0xa3, 0x12, 0xab, 0x62, 0xf8, 0x9f, 0x5c, 0x6c, 0x53, 0xa7, - 0xbb, 0x50, 0x0a, 0xc2, 0xa6, 0x06, 0x60, 0xbc, 0x5a, 0xce, 0x25, 0x19, 0xb0, 0xb0, 0xc9, 0x1b, - 0xa0, 0x04, 0xf1, 0x93, 0x61, 0x3c, 0x7f, 0x54, 0xce, 0x01, 0x87, 0xf3, 0xb7, 0x67, 0xb8, 0x1e, - 0x44, 0x4f, 0xfb, 0xe8, 0x60, 0xa5, 0x94, 0x9b, 0xe4, 0x45, 0x6a, 0x81, 0x6b, 0x2f, 0xf6, 0x83, - 0x38, 0xc5, 0x48, 0x16, 0x41, 0x39, 0x28, 0x2c, 0xfb, 0xc2, 0xae, 0x8b, 0xc9, 0x65, 0x84, 0xa7, - 0x08, 0x89, 0xbc, 0xe9, 0x8b, 0x64, 0x11, 0x16, 0x3f, 0x72, 0x49, 0x0e, 0x28, 0x2c, 0x5b, 0x5d, - 0x93, 0x72, 0xd0, 0xc7, 0x50, 0x84, 0xfc, 0xb1, 0xad, 0x29, 0x05, 0x5f, 0xe7, 0x65, 0x84, 0x95, - 0x93, 0x11, 0x4c, 0x13, 0xf7, 0x61, 0xe6, 0xe3, 0x8b, 0x3f, 0xca, 0x79, 0x1f, 0xcb, 0xe1, 0xc3, - 0x97, 0x22, 0x9f, 0x7b, 0x31, 0xb9, 0xf8, 0xb6, 0x9e, 0x73, 0xbf, 0xb6, 0xbf, 0x0c, 0x6f, 0x16, - 0xe1, 0x17, 0x20, 0x72, 0xa9, 0xc0, 0xf1, 0x13, 0x2b, 0x56, 0x1a, 0x26, 0x13, 0x7c, 0x99, 0xca, - 0xa5, 0x56, 0x2d, 0x87, 0x9d, 0x34, 0xde, 0x82, 0x6b, 0xf8, 0xcd, 0xe3, 0xf8, 0x63, 0x9f, 0x04, - 0x72, 0x13, 0x4b, 0x5d, 0x6a, 0x15, 0x42, 0x92, 0x15, 0x5c, 0x38, 0x2e, 0x19, 0x7e, 0xbb, 0xc9, - 0x65, 0xc4, 0x29, 0xf3, 0x65, 0x6e, 0xe2, 0xb3, 0xc7, 0x65, 0x42, 0x9f, 0x3e, 0xd8, 0xc9, 0xa3, - 0xc4, 0x36, 0x73, 0xd3, 0xfc, 0xc4, 0x79, 0x92, 0x85, 0x4d, 0xd1, 0x0d, 0xeb, 0xc3, 0x36, 0x32, - 0xcc, 0xe0, 0x74, 0x6b, 0x0e, 0x35, 0x68, 0x97, 0x0d, 0xe5, 0x72, 0x61, 0x9a, 0xad, 0xc0, 0x18, - 0x9c, 0xc7, 0xaf, 0x85, 0xaf, 0x6a, 0x29, 0xf4, 0xbe, 0x95, 0x4b, 0x7b, 0x17, 0x97, 0x1b, 0x3e, - 0x04, 0x1e, 0x7a, 0xe3, 0x0a, 0xc0, 0xf9, 0x4d, 0xbc, 0x86, 0x4f, 0x0f, 0xc2, 0xc3, 0x8b, 0x73, - 0xaa, 0x8f, 0x0f, 0xaf, 0x52, 0x65, 0x88, 0x64, 0xf0, 0x59, 0x2b, 0x37, 0x11, 0x90, 0xb4, 0xa8, - 0x55, 0xb7, 0x5a, 0x70, 0xc9, 0xdf, 0xc7, 0xb0, 0x6b, 0x29, 0x85, 0x5e, 0x1f, 0x98, 0x8e, 0xa2, - 0x59, 0x58, 0xb6, 0x1a, 0xa4, 0xfa, 0x06, 0xa4, 0x84, 0x94, 0xf8, 0x27, 0x09, 0xff, 0x6b, 0x5a, - 0x46, 0x7c, 0x4d, 0x5b, 0x50, 0x2e, 0x55, 0x6f, 0xc2, 0xd9, 0x17, 0x86, 0x04, 0x37, 0x29, 0x9f, - 0x3e, 0xe8, 0xa1, 0x09, 0xf7, 0x05, 0x53, 0xe6, 0x9f, 0x62, 0xaf, 0x2a, 0xe5, 0x6b, 0xeb, 0x31, - 0x29, 0x23, 0x8f, 0xaf, 0xc7, 0x24, 0x59, 0x9e, 0x28, 0xfe, 0x18, 0x32, 0xef, 0xb5, 0xac, 0x9a, - 0xde, 0xda, 0xea, 0x90, 0x3a, 0x0f, 0xeb, 0x2a, 0xc4, 0xb9, 0x0a, 0xde, 0x73, 0x43, 0xfe, 0xf9, - 0xc9, 0x29, 0x8f, 0x21, 0x39, 0x2f, 0x55, 0x8f, 0x7f, 0x81, 0xa2, 0xf2, 0x4f, 0x22, 0xc1, 0x5c, - 0xdd, 0x65, 0x5a, 0x9c, 0x7d, 0xda, 0x43, 0xd3, 0x30, 0x09, 0x19, 0xe6, 0x91, 0x0b, 0xd6, 0x8e, - 0x38, 0xa8, 0x0e, 0x46, 0xe5, 0xe2, 0x0e, 0x64, 0x96, 0x6d, 0xa2, 0x53, 0xe2, 0x2b, 0xb0, 0xf4, - 0x8a, 0x0a, 0x24, 0x1e, 0x7f, 0xee, 0x0a, 0xf8, 0xf3, 0x4d, 0x3c, 0xbb, 0x31, 0x60, 0x56, 0xb1, - 0x09, 0xe3, 0xaa, 0x78, 0xc5, 0xfa, 0x2d, 0x4f, 0x54, 0x87, 0xe4, 0x7b, 0x84, 0xfe, 0x76, 0x27, - 0x99, 0x57, 0x01, 0x1f, 0x7f, 0xe5, 0xc0, 0x19, 0x80, 0xa5, 0xdb, 0xdb, 0x2b, 0xaa, 0xb6, 0xba, - 0xb2, 0x74, 0x4b, 0x1e, 0xc1, 0x93, 0x30, 0x2e, 0xda, 0xdb, 0x6b, 0xdb, 0x1b, 0x2b, 0xda, 0xca, - 0xdd, 0x5b, 0x32, 0xc2, 0x13, 0x90, 0xae, 0xae, 0xdc, 0xbe, 0xa7, 0xae, 0x68, 0x5b, 0xcb, 0xea, - 0xda, 0xe6, 0xb6, 0x1c, 0xc9, 0xb1, 0x5c, 0x6d, 0x64, 0xfe, 0x1f, 0x11, 0xc8, 0x83, 0x95, 0x38, - 0xa3, 0x5c, 0xdf, 0xd2, 0x96, 0xb6, 0xb7, 0x55, 0x6d, 0x8d, 0x51, 0x8e, 0x43, 0xd2, 0x6b, 0x2f, - 0xaf, 0x31, 0xba, 0x00, 0x60, 0xf9, 0xae, 0x1c, 0xc1, 0x33, 0x80, 0xbd, 0xf6, 0xd2, 0xe6, 0x9a, - 0x76, 0xeb, 0xde, 0x9d, 0xa5, 0xb5, 0xbb, 0x72, 0x94, 0xe9, 0x12, 0xec, 0xff, 0x40, 0xdd, 0x90, - 0x63, 0x78, 0x0a, 0xe4, 0x60, 0xe7, 0xe6, 0xd2, 0xf6, 0xaa, 0x3c, 0xca, 0x34, 0xf4, 0x7b, 0xb7, - 0xfe, 0xe0, 0xee, 0xb2, 0x1c, 0x0f, 0x76, 0xdd, 0x5a, 0xb9, 0xbd, 0xa2, 0xca, 0x63, 0x42, 0xe9, - 0xea, 0x9f, 0xa0, 0xc3, 0xaf, 0xf3, 0x23, 0x5f, 0x7d, 0x9d, 0x1f, 0xf9, 0xee, 0xeb, 0x3c, 0x7a, - 0x74, 0x94, 0x47, 0x7f, 0x7b, 0x94, 0x47, 0x3f, 0x3f, 0xca, 0xa3, 0xc3, 0xa3, 0x3c, 0xfa, 0xea, - 0x28, 0x8f, 0x7e, 0x75, 0x94, 0x47, 0xdf, 0x1e, 0xe5, 0x47, 0xbe, 0x3b, 0xca, 0xa3, 0x9f, 0x7d, - 0x93, 0x1f, 0x39, 0xf8, 0x26, 0x8f, 0x0e, 0xbf, 0xc9, 0x8f, 0x7c, 0xf5, 0x4d, 0x7e, 0xe4, 0x87, - 0x6b, 0x4d, 0xab, 0x73, 0xbf, 0x59, 0xda, 0xb3, 0x5a, 0x94, 0xd8, 0xb6, 0x5e, 0xea, 0x3a, 0x17, - 0xf8, 0x8f, 0x1d, 0xcb, 0x6e, 0x9f, 0xef, 0xd8, 0xd6, 0x9e, 0xd1, 0x20, 0xf6, 0x79, 0x6f, 0xf8, - 0x42, 0xa7, 0xd6, 0xb4, 0x2e, 0x90, 0x87, 0xd4, 0xfd, 0x7f, 0xbf, 0xe0, 0xff, 0x34, 0xd6, 0xe2, - 0xdc, 0x27, 0x2c, 0xfc, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xad, 0xbf, 0x43, 0xf7, 0xf1, 0x28, - 0x00, 0x00, + 0x22, 0x0d, 0xd5, 0x45, 0xe3, 0x19, 0x88, 0xdb, 0x44, 0x77, 0x2c, 0x33, 0x1b, 0x61, 0x76, 0xaa, + 0xfb, 0x54, 0xfc, 0x87, 0x18, 0xc8, 0x2a, 0x9b, 0xb3, 0x5b, 0xc4, 0xa1, 0x86, 0xa9, 0xb3, 0xce, + 0xf1, 0x06, 0x8c, 0xd5, 0x5b, 0x5d, 0x87, 0x12, 0x3b, 0x8b, 0x0a, 0xd1, 0xb9, 0x64, 0xe5, 0xb5, + 0x52, 0x78, 0x96, 0xef, 0xd5, 0x3e, 0x25, 0x75, 0xaa, 0x92, 0x1d, 0xe6, 0x53, 0x75, 0xea, 0x1f, + 0x3f, 0xf7, 0xf0, 0xcc, 0x9b, 0xd1, 0x2f, 0x50, 0x44, 0x46, 0xaa, 0xf7, 0x0a, 0xbf, 0x06, 0xf1, + 0x07, 0xc4, 0x68, 0xee, 0xd2, 0x6c, 0xb4, 0x80, 0xe6, 0xd2, 0xd5, 0xd8, 0xff, 0xf6, 0xd0, 0x88, + 0xea, 0xbe, 0xc3, 0x25, 0x90, 0x3a, 0xb6, 0x61, 0xd9, 0x06, 0xdd, 0xcf, 0x8e, 0xf2, 0x76, 0x7c, + 0xd0, 0x43, 0xe8, 0x97, 0x3d, 0x84, 0xca, 0x8c, 0x2d, 0x36, 0x1f, 0xc9, 0x16, 0x54, 0x1f, 0x83, + 0xff, 0x1c, 0x81, 0x4c, 0xcc, 0x46, 0xc7, 0x32, 0x4c, 0xaa, 0x39, 0xdd, 0x9a, 0x43, 0xa8, 0x93, + 0x8d, 0x71, 0x2f, 0x17, 0x4b, 0x43, 0xf6, 0x42, 0x69, 0x70, 0x74, 0xa5, 0x15, 0xd7, 0x7a, 0x4b, + 0x18, 0xaf, 0x98, 0xd4, 0xde, 0xaf, 0xbe, 0xc1, 0x3a, 0x7d, 0xfc, 0x04, 0xc5, 0x20, 0x32, 0x82, + 0xf8, 0x28, 0x1e, 0xa3, 0x88, 0x2c, 0x1f, 0xfd, 0xea, 0xdf, 0xa3, 0xf1, 0x9f, 0x3e, 0x41, 0x11, + 0x69, 0x44, 0x1d, 0x27, 0x61, 0xc3, 0x5c, 0x15, 0xa6, 0x86, 0x71, 0x61, 0x19, 0xa2, 0xf7, 0xc9, + 0xbe, 0x58, 0x20, 0x95, 0xfd, 0xc4, 0x53, 0x30, 0xba, 0xa7, 0xb7, 0xba, 0xc4, 0x9d, 0x7c, 0xf1, + 0xb0, 0x18, 0xb9, 0x86, 0x16, 0xff, 0x16, 0x3d, 0xed, 0xa1, 0xf3, 0xf0, 0x36, 0x14, 0x96, 0xc5, + 0x74, 0x15, 0x1e, 0x18, 0x74, 0xb7, 0xf0, 0x11, 0x9f, 0x9c, 0x82, 0x6e, 0x36, 0x0a, 0x9b, 0xde, + 0xc8, 0xc7, 0xca, 0xca, 0x82, 0x72, 0x59, 0xb9, 0xf4, 0xac, 0x87, 0x4c, 0x98, 0x81, 0x31, 0xd7, + 0xa0, 0x9a, 0xf4, 0x57, 0x4b, 0x46, 0x80, 0x21, 0x2e, 0x6c, 0x73, 0x92, 0x37, 0xed, 0x30, 0x03, + 0x92, 0x47, 0x92, 0x83, 0xfe, 0x74, 0xc3, 0x1c, 0xc8, 0x9e, 0xff, 0x05, 0x77, 0x00, 0xeb, 0x53, + 0xc7, 0x67, 0x57, 0x8e, 0xad, 0xc7, 0xa4, 0x88, 0x1c, 0x2d, 0x7e, 0x89, 0x40, 0xbe, 0x63, 0xd8, + 0xb6, 0x65, 0x6f, 0xf2, 0x43, 0xc0, 0x37, 0xe4, 0x6f, 0x77, 0xaf, 0x2c, 0xc2, 0x58, 0x87, 0xd8, + 0x75, 0x62, 0x52, 0x3e, 0x55, 0xc9, 0x4a, 0x61, 0x80, 0xed, 0xb6, 0xad, 0xd7, 0xd9, 0x2a, 0xea, + 0xad, 0x4d, 0x81, 0x53, 0x3d, 0x83, 0xe2, 0xdb, 0x90, 0xd9, 0xea, 0x34, 0xf6, 0x97, 0x2d, 0x73, + 0xc7, 0x68, 0x72, 0xdf, 0x66, 0x41, 0xea, 0x3a, 0x44, 0x73, 0x3a, 0x0d, 0xb1, 0x1a, 0x92, 0x3a, + 0xd6, 0x75, 0x08, 0x03, 0x15, 0xff, 0x0e, 0xc1, 0xe4, 0x47, 0xa4, 0xe6, 0x58, 0xf5, 0xfb, 0x84, + 0x06, 0x4c, 0xde, 0x84, 0x34, 0x33, 0x79, 0xe0, 0x35, 0xb9, 0x76, 0xa9, 0xae, 0x43, 0x7c, 0x38, + 0x56, 0x20, 0x65, 0x34, 0x5a, 0x44, 0xa3, 0x46, 0x9b, 0x58, 0x5d, 0xe1, 0x6a, 0xba, 0x9a, 0xf8, + 0xea, 0x73, 0xf4, 0x6d, 0x0f, 0xa1, 0x2c, 0x52, 0x93, 0xac, 0x79, 0x5b, 0xb4, 0xe2, 0xeb, 0x30, + 0xd5, 0xd6, 0x1f, 0x6a, 0x75, 0xcb, 0x34, 0x49, 0x9d, 0x6a, 0x3a, 0xa5, 0xa4, 0xdd, 0xa1, 0x8e, + 0x7b, 0x1a, 0x02, 0x56, 0xb8, 0xad, 0x3f, 0x5c, 0x16, 0xa8, 0x25, 0x17, 0x54, 0xfc, 0x8f, 0x38, + 0xc8, 0xcb, 0x96, 0x75, 0xdf, 0x20, 0xb7, 0x2d, 0x7b, 0x55, 0x77, 0x76, 0x0d, 0xb3, 0x89, 0x7f, + 0x0f, 0x62, 0xa6, 0xde, 0x26, 0x6e, 0x08, 0x90, 0xd9, 0x79, 0x62, 0x93, 0x39, 0x66, 0x8f, 0xca, + 0x28, 0xfb, 0x28, 0xa2, 0xf2, 0x56, 0xb6, 0x0d, 0x29, 0x6d, 0x09, 0xe7, 0x54, 0xf6, 0x13, 0x63, + 0x88, 0x75, 0x74, 0xba, 0xcb, 0x7b, 0x4e, 0xa8, 0xfc, 0x37, 0x7e, 0x17, 0xc6, 0x8d, 0xa6, 0x69, + 0xd9, 0x44, 0x73, 0xf4, 0x36, 0x71, 0x0c, 0x4a, 0xf8, 0x31, 0x4c, 0x56, 0xa6, 0x06, 0x66, 0x7e, + 0xa5, 0xdd, 0xa1, 0xfb, 0xab, 0x23, 0x6a, 0x46, 0xc0, 0xb7, 0x5c, 0x34, 0x23, 0xf0, 0x2c, 0x35, + 0x87, 0xda, 0x46, 0x9d, 0x66, 0xe3, 0x27, 0x13, 0x78, 0xf0, 0x2d, 0x8e, 0xc6, 0xef, 0x40, 0xca, + 0x27, 0x68, 0xe9, 0x0f, 0xb3, 0x63, 0x27, 0x5a, 0x27, 0x3d, 0xec, 0x86, 0xfe, 0x10, 0x5f, 0x87, + 0xb4, 0x6f, 0x6a, 0x5a, 0x26, 0xc9, 0x4a, 0x27, 0xda, 0xfa, 0xfd, 0xdc, 0xb5, 0x4c, 0xc2, 0x8c, + 0xbd, 0x91, 0x93, 0x7a, 0xd7, 0x26, 0x59, 0x38, 0xc1, 0x18, 0xa9, 0x29, 0x77, 0xdc, 0x1c, 0x8b, + 0x2f, 0x03, 0xe8, 0x8d, 0x86, 0x67, 0x99, 0x3c, 0xd1, 0x32, 0xa1, 0x37, 0x1a, 0xae, 0x59, 0x7f, + 0xb6, 0x77, 0x29, 0xed, 0x58, 0x66, 0x6b, 0x3f, 0x9b, 0x3e, 0xc1, 0x36, 0xe2, 0xcd, 0xf6, 0xaa, + 0x8b, 0x66, 0x93, 0xc5, 0xfa, 0xf5, 0xad, 0x33, 0x27, 0x5a, 0x27, 0xf5, 0x46, 0xc3, 0x33, 0xad, + 0xde, 0x03, 0xc9, 0x1b, 0x3f, 0x5e, 0x3e, 0xe8, 0xa1, 0xd1, 0xc3, 0x1e, 0x8a, 0x1d, 0xf5, 0xd0, + 0xd8, 0x65, 0xe5, 0x8a, 0x72, 0x55, 0xb9, 0xf6, 0xd3, 0x27, 0x48, 0xc9, 0xcd, 0x31, 0x66, 0xad, + 0x65, 0xe9, 0x8d, 0x9a, 0xde, 0xd2, 0xcd, 0x3a, 0xb1, 0x4b, 0x4e, 0x87, 0xd4, 0x4b, 0x75, 0xbe, + 0x07, 0x35, 0x87, 0x1a, 0xf5, 0xfb, 0x86, 0x49, 0x1c, 0xa7, 0x80, 0xaa, 0xef, 0x43, 0x5c, 0x8c, + 0x1f, 0x2f, 0x1d, 0xf4, 0x10, 0x1c, 0xf6, 0x50, 0xe2, 0xa8, 0x87, 0x46, 0xcb, 0x17, 0x95, 0x72, + 0xf9, 0x95, 0xc9, 0xee, 0x80, 0xe4, 0x0d, 0x8a, 0xd3, 0xa5, 0x0f, 0x7b, 0x28, 0xc5, 0xe9, 0x16, + 0x94, 0xf2, 0xa5, 0x57, 0xa5, 0x5b, 0x8f, 0x49, 0x31, 0x79, 0x74, 0x3d, 0x26, 0x25, 0x64, 0x58, + 0x8f, 0x49, 0x29, 0x39, 0x5d, 0x7c, 0x12, 0x85, 0x0c, 0x3b, 0x40, 0x81, 0xd8, 0xb5, 0x00, 0xc9, + 0x5d, 0xa2, 0x37, 0x88, 0xad, 0x9d, 0x74, 0x9c, 0x56, 0x47, 0x54, 0x10, 0xb0, 0xbb, 0xec, 0x58, + 0xbd, 0x0b, 0x71, 0xd1, 0xa1, 0x1b, 0xa1, 0xce, 0x0c, 0xcd, 0x3a, 0x83, 0x67, 0x76, 0x75, 0x44, + 0x75, 0xcd, 0xf0, 0x9b, 0x90, 0x70, 0xac, 0xae, 0x5d, 0x27, 0x9a, 0xd1, 0xe1, 0x47, 0x51, 0x12, + 0x29, 0x71, 0x75, 0x44, 0x95, 0x44, 0xc3, 0x5a, 0x07, 0x17, 0x40, 0xa2, 0xc4, 0x6e, 0x1b, 0xa6, + 0xde, 0xca, 0xc6, 0xfa, 0x18, 0xd5, 0x7f, 0xbb, 0xf8, 0xaf, 0x2c, 0x73, 0xe4, 0x20, 0x0b, 0x13, + 0xac, 0x8b, 0x82, 0x18, 0x56, 0x41, 0xed, 0xb6, 0x88, 0x83, 0xa3, 0x22, 0x4d, 0x7c, 0x89, 0x40, + 0x85, 0xa4, 0xdb, 0xc2, 0x46, 0x3c, 0xbf, 0x0c, 0x4b, 0x30, 0x1d, 0x1a, 0x75, 0x25, 0xbe, 0xca, + 0x1f, 0x40, 0xf6, 0xc6, 0x55, 0x89, 0x0b, 0xe7, 0x61, 0x26, 0xe0, 0x68, 0x25, 0xb1, 0xc5, 0x7f, + 0x16, 0xd6, 0x36, 0xa1, 0x04, 0xa3, 0x1f, 0xb2, 0x04, 0x56, 0x39, 0x13, 0x62, 0x82, 0xa4, 0xb0, + 0x2f, 0xf1, 0x87, 0xbe, 0x29, 0xcb, 0x3f, 0xdb, 0xae, 0xd7, 0x2c, 0xff, 0x78, 0x23, 0xa8, 0x9e, + 0x01, 0x59, 0xa8, 0x29, 0x8d, 0x2d, 0xa3, 0xb1, 0x63, 0x10, 0x1b, 0x4f, 0x1c, 0xf4, 0x50, 0xe4, + 0xb0, 0x87, 0x46, 0xd9, 0xd2, 0x57, 0x94, 0xb2, 0xb2, 0xb0, 0x1e, 0x93, 0x46, 0xe5, 0x78, 0xf1, + 0xbb, 0x34, 0x4c, 0x0d, 0xa6, 0xf2, 0x0d, 0xc3, 0xa1, 0xf8, 0x03, 0x48, 0x35, 0xfa, 0xaf, 0x1c, + 0x37, 0x0b, 0x9d, 0x79, 0x29, 0x2d, 0x50, 0x05, 0x3f, 0x09, 0xc9, 0x6a, 0x88, 0x06, 0x2f, 0x42, + 0xa6, 0x63, 0x93, 0x1d, 0xe3, 0xa1, 0x66, 0x93, 0x07, 0xb6, 0x17, 0x16, 0x13, 0xd5, 0x09, 0x6f, + 0x7b, 0x48, 0x76, 0x3c, 0xfb, 0x28, 0xf2, 0x6d, 0x04, 0xad, 0x8e, 0xa8, 0x69, 0x01, 0x55, 0x05, + 0x12, 0xbf, 0x07, 0x69, 0x9b, 0x34, 0x49, 0xdf, 0x34, 0x37, 0x34, 0x97, 0xa9, 0x0c, 0x73, 0x47, + 0xa7, 0xf5, 0x5d, 0xd7, 0x90, 0x85, 0x28, 0x6e, 0xe8, 0x11, 0x9d, 0x83, 0xd4, 0xae, 0xe5, 0x50, + 0x9f, 0x27, 0xce, 0x5d, 0x10, 0xbb, 0x05, 0xa9, 0x49, 0xd6, 0xe6, 0x41, 0x2b, 0x30, 0xa1, 0x77, + 0xa9, 0xa5, 0x85, 0xf0, 0x63, 0x81, 0xdd, 0x85, 0xd4, 0x71, 0x06, 0x58, 0x0d, 0xd8, 0xe4, 0x61, + 0xcc, 0x4b, 0x61, 0x52, 0x40, 0x9a, 0x79, 0x2f, 0xf1, 0x7b, 0x90, 0xb2, 0x09, 0xb5, 0xf7, 0x35, + 0xb1, 0x4c, 0xd9, 0x04, 0x1f, 0x46, 0xfe, 0xd8, 0x30, 0xa8, 0xbd, 0xdf, 0x3f, 0x55, 0xd5, 0xd8, + 0x61, 0x0f, 0x21, 0x35, 0x69, 0xf7, 0x5f, 0xe3, 0x9f, 0x0d, 0x13, 0x6d, 0xc0, 0x17, 0xea, 0xc6, + 0x4b, 0x2d, 0x14, 0x5b, 0xe9, 0xe1, 0xc2, 0xed, 0x0c, 0x13, 0x6e, 0x87, 0xaf, 0x2c, 0xde, 0xf0, + 0x36, 0xa4, 0xdb, 0x5c, 0xcb, 0x78, 0x83, 0x4b, 0x9e, 0x70, 0x9a, 0x07, 0x55, 0x4f, 0x55, 0xf2, + 0x7a, 0x55, 0x53, 0xed, 0x40, 0x1b, 0xfe, 0x04, 0x26, 0x1e, 0x90, 0x9a, 0x26, 0x74, 0x02, 0x4b, + 0xf9, 0x3b, 0x46, 0xd3, 0x8d, 0xf0, 0x73, 0x43, 0x99, 0x87, 0x68, 0x90, 0x00, 0xf9, 0xf8, 0x03, + 0x52, 0xdb, 0x0a, 0x34, 0xe3, 0xbb, 0x90, 0xae, 0x75, 0x77, 0x76, 0x88, 0xef, 0xb5, 0x88, 0xff, + 0xaf, 0x0f, 0x70, 0x57, 0x39, 0x66, 0x28, 0x65, 0x4a, 0xd8, 0xbb, 0xfe, 0xde, 0x62, 0x87, 0xd6, + 0x76, 0x3c, 0xb6, 0x71, 0xce, 0x36, 0x3b, 0xc0, 0xb6, 0x6c, 0xd9, 0x8e, 0xc0, 0x07, 0x78, 0xa0, + 0xee, 0xbf, 0xe5, 0x2c, 0x8e, 0xbd, 0xe3, 0xb1, 0x64, 0x87, 0xb3, 0x38, 0xf6, 0xce, 0x10, 0x16, + 0xff, 0x2d, 0xae, 0x43, 0x72, 0x57, 0x77, 0x76, 0x3d, 0x16, 0x99, 0x6f, 0x8f, 0x37, 0x87, 0xce, + 0x5a, 0x38, 0x8e, 0x57, 0x4f, 0x7b, 0x7c, 0xfe, 0x69, 0x96, 0xf8, 0xda, 0x7f, 0xf1, 0x84, 0xab, + 0x4b, 0xd8, 0xf5, 0xe1, 0xf8, 0x66, 0xa0, 0xdc, 0xc0, 0x05, 0x34, 0x97, 0x39, 0xbe, 0x9d, 0xad, + 0x2e, 0x35, 0xcc, 0xa6, 0xa7, 0x98, 0xab, 0x31, 0x46, 0x1e, 0x28, 0x40, 0xee, 0x42, 0x92, 0x09, + 0x4a, 0x6f, 0x71, 0x27, 0xf9, 0x60, 0x87, 0xbb, 0x19, 0x96, 0xa3, 0x62, 0xd8, 0xdf, 0xf1, 0x61, + 0x3b, 0x7e, 0x0b, 0x93, 0x04, 0xec, 0xa8, 0xe8, 0x75, 0xaa, 0x79, 0x42, 0x7a, 0xfa, 0x64, 0x49, + 0xe0, 0xc2, 0x5d, 0xfd, 0x8f, 0xdf, 0x87, 0x99, 0x86, 0xa5, 0x99, 0x16, 0x3b, 0xf6, 0x61, 0x9e, + 0x99, 0x13, 0x79, 0x26, 0x1b, 0xd6, 0x5d, 0x8b, 0xaa, 0x21, 0xb2, 0xdf, 0x4a, 0x4d, 0xf3, 0x17, + 0xe8, 0xfb, 0x1b, 0x6f, 0x95, 0x95, 0x6b, 0xca, 0x3b, 0x4a, 0xe5, 0xb2, 0x52, 0xb9, 0xa8, 0x70, + 0x45, 0xa0, 0xf0, 0x44, 0xae, 0x94, 0x2f, 0x2b, 0xe5, 0x2b, 0x4a, 0xf9, 0x9a, 0x52, 0x7e, 0x47, + 0xa9, 0x2c, 0x3c, 0xed, 0x21, 0x0d, 0x4e, 0x43, 0xf6, 0x9e, 0x6d, 0x34, 0x0d, 0xb3, 0xb0, 0x69, + 0x59, 0x2d, 0x87, 0x57, 0x3d, 0xa2, 0x88, 0x71, 0x30, 0x2a, 0xc3, 0x0d, 0x98, 0x0c, 0x44, 0x82, + 0xc2, 0x52, 0x5d, 0x04, 0xe8, 0xb3, 0x2f, 0xc3, 0xaf, 0x54, 0x2e, 0x55, 0xcf, 0xc3, 0x2c, 0x5f, + 0x0e, 0x2d, 0x10, 0xdf, 0xbd, 0x08, 0x89, 0x65, 0x57, 0x08, 0xcd, 0x1e, 0xf5, 0x50, 0xec, 0xb2, + 0x52, 0xb9, 0x52, 0x7d, 0x0b, 0x26, 0x83, 0x31, 0x54, 0xeb, 0xe8, 0xb6, 0xde, 0x76, 0xf0, 0xf8, + 0x41, 0x0f, 0x8d, 0x1d, 0xf6, 0xd0, 0xd4, 0x51, 0x0f, 0x45, 0xaf, 0x2a, 0x57, 0xaa, 0x17, 0x61, + 0xc6, 0x9d, 0xe7, 0xfe, 0xbc, 0xef, 0x5a, 0x46, 0x9d, 0xe0, 0x99, 0x83, 0x1e, 0x9a, 0xf9, 0xb9, + 0xd8, 0x92, 0xa7, 0x8e, 0x7a, 0x28, 0x5e, 0xa9, 0x28, 0x85, 0x4a, 0x59, 0x54, 0x51, 0xeb, 0x31, + 0x29, 0xca, 0x2b, 0x2a, 0xa1, 0x4f, 0x26, 0x64, 0xbc, 0x1e, 0x93, 0x66, 0xe5, 0xdc, 0x7a, 0x4c, + 0x9a, 0x92, 0xa7, 0x85, 0x56, 0x59, 0x8f, 0x49, 0xa7, 0xe4, 0x6c, 0x71, 0xc5, 0x2d, 0xcd, 0xff, + 0xa0, 0x4b, 0xec, 0xfd, 0x4d, 0xe1, 0x46, 0x19, 0x52, 0x9f, 0xb1, 0x47, 0xd7, 0x2d, 0x9e, 0xed, + 0x12, 0xd5, 0x8c, 0x97, 0x94, 0xf8, 0xe6, 0x2f, 0xa8, 0xc9, 0xcf, 0xfa, 0x26, 0xc5, 0x7f, 0x8a, + 0x43, 0x9a, 0xf3, 0xa8, 0xa4, 0x61, 0xd8, 0xa4, 0x4e, 0xf1, 0x39, 0x48, 0xbb, 0x43, 0x14, 0x2f, + 0x5c, 0xe5, 0x23, 0xa2, 0x7f, 0x4a, 0x64, 0x15, 0x17, 0x7a, 0x0d, 0xd2, 0xac, 0x4c, 0xe8, 0x43, + 0x23, 0x7e, 0x16, 0x44, 0x83, 0x59, 0x30, 0xc5, 0x90, 0xbe, 0xe5, 0xf1, 0x04, 0x9a, 0x7c, 0xbe, + 0xe9, 0x40, 0x02, 0xbd, 0xc7, 0x6c, 0x2d, 0x6a, 0xf5, 0xbb, 0xe5, 0x25, 0x4b, 0x75, 0xce, 0x1b, + 0xe7, 0xeb, 0xf6, 0x69, 0x35, 0x63, 0x98, 0x75, 0xab, 0x6d, 0x98, 0xcd, 0xf3, 0x1c, 0xab, 0xc6, + 0x98, 0x3c, 0x54, 0x47, 0xd9, 0x5f, 0x87, 0x11, 0xb2, 0x77, 0x9e, 0x33, 0xd7, 0x21, 0xdd, 0xb1, + 0xec, 0xc0, 0x88, 0xd3, 0x3c, 0xdf, 0xcd, 0xb8, 0xc5, 0x97, 0x47, 0x1b, 0x9f, 0x8f, 0x65, 0x7f, + 0xfd, 0xeb, 0xa8, 0x9a, 0x62, 0x60, 0xdf, 0xf8, 0x13, 0xc0, 0xac, 0xb0, 0xe9, 0x68, 0xa1, 0x99, + 0x8f, 0x9d, 0x90, 0x2f, 0x06, 0x97, 0xad, 0x3a, 0xe6, 0x76, 0xb4, 0x8a, 0x54, 0x99, 0x73, 0x05, + 0xd7, 0x74, 0x0e, 0x40, 0x6f, 0xb5, 0x3c, 0xde, 0x51, 0x9e, 0xb3, 0x03, 0x06, 0x09, 0xbd, 0xd5, + 0x72, 0x91, 0x55, 0x98, 0xb0, 0x09, 0xd5, 0x0d, 0x53, 0x0b, 0x18, 0x48, 0x27, 0x16, 0x1f, 0xe3, + 0xc2, 0x60, 0x29, 0xcc, 0xd1, 0xb6, 0xf6, 0x48, 0x90, 0x23, 0xf1, 0x22, 0x0e, 0x66, 0xd0, 0xe7, + 0xb8, 0x0c, 0x19, 0x9b, 0x74, 0x5a, 0x7a, 0xdd, 0x3b, 0x1e, 0xd9, 0x14, 0x5f, 0x9f, 0x54, 0x48, + 0x37, 0x23, 0x35, 0xed, 0xa2, 0x5c, 0xb3, 0x45, 0xa6, 0x8b, 0x9c, 0x8e, 0x65, 0x3a, 0x44, 0xab, + 0x5b, 0x0d, 0xa1, 0x67, 0xd2, 0xd5, 0xe9, 0x5f, 0xf6, 0x50, 0x74, 0xe1, 0x62, 0xd9, 0xdf, 0xc4, + 0xf3, 0xd1, 0xec, 0x2f, 0x62, 0x4c, 0x0a, 0x09, 0xec, 0xb2, 0xd5, 0x20, 0x8b, 0xe9, 0xef, 0x6f, + 0xc0, 0x82, 0x52, 0x66, 0x67, 0xfd, 0x8a, 0x72, 0xb5, 0x3a, 0x07, 0x53, 0xde, 0x5a, 0x6a, 0x7c, + 0x83, 0xba, 0x67, 0x4f, 0x76, 0xf5, 0x23, 0xb0, 0xf3, 0x5c, 0x51, 0xca, 0xe5, 0x6a, 0x31, 0x7c, + 0x62, 0x30, 0x3e, 0xe8, 0x21, 0xe9, 0xb0, 0x87, 0xc6, 0xd8, 0xc9, 0x64, 0x31, 0xa4, 0x5c, 0x59, + 0x8f, 0x49, 0x20, 0x27, 0xd7, 0x63, 0xd2, 0x98, 0x2c, 0x15, 0xff, 0x06, 0xc1, 0xa4, 0x90, 0x1f, + 0x9c, 0x5d, 0x75, 0x9d, 0xc0, 0x97, 0x07, 0x9d, 0x47, 0xdc, 0xf9, 0x7e, 0xb9, 0x30, 0x3f, 0x9a, + 0xfd, 0x45, 0x6c, 0xae, 0x11, 0xf6, 0x3b, 0x64, 0x56, 0xb3, 0x1a, 0xfb, 0xee, 0x01, 0x62, 0x66, + 0x51, 0x77, 0xb6, 0x0a, 0x68, 0xee, 0x51, 0xa1, 0x6f, 0x56, 0xb5, 0x1a, 0xfb, 0x8b, 0xaf, 0x3d, + 0xed, 0xa1, 0x2c, 0xcc, 0xc0, 0xb8, 0xf0, 0xa2, 0xe0, 0xbb, 0x11, 0x2d, 0x2b, 0x95, 0xe2, 0xff, + 0x21, 0x98, 0x5a, 0xb6, 0x4c, 0x4a, 0x1e, 0xd2, 0x95, 0x87, 0x94, 0x98, 0x8e, 0x61, 0x99, 0x6b, + 0xe6, 0x8e, 0x85, 0xbf, 0x44, 0x80, 0xeb, 0xa2, 0x41, 0x23, 0x5e, 0x8b, 0xa7, 0x89, 0x6f, 0x3e, + 0xa7, 0x52, 0x39, 0xce, 0x73, 0xec, 0xa5, 0x2b, 0xb6, 0xde, 0x66, 0x1e, 0x27, 0x1f, 0x23, 0xa9, + 0x18, 0xb7, 0x63, 0x32, 0xca, 0xde, 0xec, 0x8b, 0x2d, 0xf6, 0x2b, 0xf5, 0x18, 0x25, 0xe6, 0xfd, + 0x5b, 0x88, 0x89, 0xfa, 0x20, 0x49, 0xee, 0x16, 0xcc, 0x0c, 0x67, 0x7e, 0x95, 0xfc, 0xc2, 0x46, + 0xff, 0x46, 0xd5, 0xa2, 0xb7, 0xc8, 0x0e, 0x31, 0x1d, 0xb2, 0xae, 0xef, 0xe9, 0x4e, 0xdd, 0x36, + 0x3a, 0x74, 0xcd, 0xfc, 0x94, 0xf0, 0xe4, 0xc0, 0x8b, 0xbb, 0x3f, 0x84, 0xc9, 0x4f, 0xfd, 0x26, + 0xad, 0x65, 0xd5, 0x79, 0xe0, 0xe7, 0x6c, 0x99, 0xca, 0xd9, 0xa1, 0x53, 0xc1, 0xa8, 0xb6, 0x38, + 0x7e, 0xc3, 0x85, 0xab, 0xb8, 0xcf, 0xe1, 0xbd, 0xc3, 0x7b, 0x30, 0x1e, 0x60, 0xa6, 0x7a, 0xd3, + 0xc9, 0x46, 0xf9, 0x04, 0x17, 0x5f, 0xc0, 0xba, 0xad, 0x37, 0xab, 0xe7, 0xfc, 0x30, 0x3d, 0xea, + 0xfd, 0x92, 0x7c, 0xdd, 0x92, 0x45, 0x41, 0xdd, 0x92, 0xe9, 0xf7, 0xb2, 0xad, 0x37, 0x9d, 0xf5, + 0x98, 0x84, 0xe4, 0x48, 0xf1, 0x19, 0x82, 0x74, 0x88, 0x92, 0x45, 0xda, 0x80, 0x3f, 0x5d, 0xbb, + 0xe5, 0xc6, 0xf3, 0x49, 0x4e, 0x6b, 0x47, 0xe7, 0x1e, 0xf1, 0xd5, 0x89, 0xd9, 0x91, 0x02, 0x52, + 0xd3, 0x7d, 0xe8, 0x07, 0x76, 0x0b, 0x7f, 0x02, 0x19, 0xaa, 0x37, 0x35, 0x9d, 0x52, 0xdb, 0xa8, + 0x75, 0x29, 0x71, 0xb2, 0x11, 0x3e, 0x94, 0x37, 0x86, 0x0e, 0x65, 0x5b, 0x6f, 0x2e, 0x79, 0xc8, + 0xea, 0x94, 0x3f, 0x92, 0x44, 0xdf, 0x7f, 0x35, 0x4d, 0x03, 0x18, 0x67, 0xf1, 0xf4, 0xb3, 0x1e, + 0x9a, 0x85, 0x53, 0x10, 0xfd, 0x40, 0xdd, 0xc8, 0xc9, 0x83, 0x8e, 0x16, 0xff, 0x14, 0x41, 0x2a, + 0x48, 0x8a, 0x37, 0x42, 0x10, 0xaa, 0x37, 0xf9, 0x58, 0x32, 0xcf, 0x89, 0xb3, 0x41, 0x53, 0x56, + 0x9c, 0x07, 0x47, 0xc7, 0x66, 0xe6, 0x2c, 0x24, 0xd8, 0xe8, 0x02, 0xfb, 0xc8, 0xad, 0xf8, 0xd8, + 0xa4, 0x48, 0xaa, 0x44, 0xf5, 0x26, 0xaf, 0x64, 0xd9, 0xa4, 0x62, 0xbe, 0x33, 0x4d, 0xaf, 0x38, + 0xe2, 0x7b, 0xe8, 0x32, 0x64, 0x0c, 0xd3, 0x21, 0x36, 0x97, 0xf2, 0xac, 0xd1, 0x9d, 0xd9, 0x8c, + 0x77, 0x7a, 0x47, 0xed, 0x68, 0xf6, 0xaf, 0xdf, 0x55, 0xd3, 0x02, 0xe5, 0x32, 0xe0, 0xdf, 0x07, + 0x99, 0xb4, 0x48, 0x9b, 0xb0, 0x62, 0x87, 0xb4, 0x48, 0x9d, 0x5a, 0xb6, 0xdb, 0x3b, 0x76, 0x17, + 0x42, 0x9c, 0x9c, 0x98, 0xcd, 0x96, 0x79, 0xdc, 0xc5, 0x6e, 0xb9, 0x50, 0x7c, 0x03, 0xa4, 0x8e, + 0xe5, 0x18, 0x7c, 0xbb, 0x46, 0xf9, 0xe8, 0x07, 0x37, 0x96, 0x90, 0xc8, 0xa5, 0xd5, 0xed, 0x3b, + 0x1b, 0x9b, 0x2e, 0x52, 0xf5, 0x6d, 0x8a, 0xff, 0x86, 0x60, 0x62, 0x8b, 0xd8, 0x7b, 0x46, 0x9d, + 0x08, 0xd5, 0xcb, 0x43, 0x43, 0x0e, 0xc6, 0x1a, 0x86, 0xa3, 0xd7, 0x5a, 0x22, 0x72, 0x49, 0xab, + 0x23, 0xaa, 0xf7, 0x02, 0xff, 0xc9, 0xd0, 0xa8, 0x11, 0xe5, 0x49, 0xe1, 0xdc, 0x4b, 0x47, 0x8d, + 0x6a, 0x8c, 0x67, 0xac, 0x91, 0x21, 0x27, 0xbf, 0x3a, 0x07, 0xd3, 0x8e, 0x70, 0xc9, 0xd5, 0xf7, + 0x5e, 0xc0, 0x1e, 0x77, 0xb5, 0x7b, 0x84, 0xe9, 0x2a, 0x51, 0xee, 0x47, 0xe4, 0x68, 0xf1, 0xaf, + 0x4e, 0x41, 0x82, 0x47, 0x61, 0xbe, 0x0e, 0xeb, 0x30, 0xda, 0x66, 0x75, 0xb2, 0x1b, 0xc8, 0x66, + 0x87, 0x48, 0x76, 0xc2, 0x0b, 0xe9, 0xea, 0x6c, 0xa8, 0x0c, 0x90, 0x83, 0xc7, 0x49, 0x50, 0xb0, + 0x12, 0xed, 0x98, 0x1c, 0x74, 0xaf, 0x72, 0xce, 0xbd, 0x74, 0x2d, 0x2a, 0x8a, 0xdc, 0xd5, 0x11, + 0x55, 0xb6, 0x07, 0x3f, 0x9e, 0xbc, 0x0f, 0x19, 0xc1, 0x1f, 0xd2, 0x2e, 0xcf, 0x0b, 0x0e, 0x21, + 0x61, 0xc6, 0x84, 0x90, 0x1d, 0x52, 0x6a, 0x0d, 0x98, 0x76, 0x9d, 0x15, 0xa9, 0xce, 0xcb, 0x11, + 0xae, 0xfa, 0x98, 0x3b, 0xc1, 0xe1, 0x50, 0xf6, 0xf2, 0xfd, 0x9d, 0xb4, 0x87, 0xa4, 0xb6, 0xeb, + 0x30, 0xed, 0xee, 0x04, 0xad, 0xde, 0x75, 0xa8, 0xd5, 0xd6, 0xc4, 0x11, 0x1a, 0xd0, 0x22, 0xea, + 0xa4, 0x8b, 0x5a, 0xe6, 0x20, 0x11, 0x80, 0xf0, 0x47, 0x90, 0x09, 0xaf, 0x2c, 0xd7, 0x02, 0xc9, + 0xca, 0x5b, 0xc3, 0x4b, 0xa2, 0xc1, 0x7d, 0x19, 0xa8, 0x8a, 0xd2, 0x4e, 0xb0, 0x11, 0x77, 0x60, + 0xc6, 0x26, 0x9f, 0x75, 0x89, 0x43, 0x35, 0x71, 0xcb, 0xe4, 0x68, 0xd4, 0xd2, 0xf4, 0x46, 0x23, + 0x3b, 0xc6, 0x77, 0xc1, 0xdb, 0x03, 0x1d, 0x88, 0x7b, 0xac, 0x3b, 0xba, 0x69, 0x74, 0xba, 0x2d, + 0xbe, 0x16, 0xf7, 0x3a, 0x5e, 0x36, 0xa8, 0x66, 0x0e, 0x82, 0xfb, 0xa2, 0xa0, 0x4e, 0xba, 0xd4, + 0xc2, 0xc8, 0xd9, 0xb6, 0x96, 0x1a, 0x0d, 0x6c, 0xc3, 0x29, 0x3f, 0x57, 0x0f, 0x74, 0x29, 0xfd, + 0xe6, 0x5d, 0x4e, 0x79, 0xdc, 0xa1, 0x3e, 0x7f, 0x08, 0xb3, 0x43, 0x46, 0x29, 0x04, 0x57, 0x36, + 0xc1, 0xd5, 0xfd, 0xeb, 0x1e, 0x51, 0xea, 0x0b, 0x94, 0x28, 0xba, 0x82, 0x21, 0x12, 0x60, 0x9e, + 0x19, 0x1c, 0x8c, 0xca, 0xcd, 0xf1, 0x1f, 0x43, 0x6e, 0xd8, 0x78, 0x5c, 0x72, 0x78, 0x39, 0xf2, + 0x53, 0xc7, 0xdc, 0x76, 0xd9, 0xaf, 0x82, 0xf4, 0x40, 0xdf, 0xd1, 0xe8, 0x7e, 0xc7, 0xbb, 0x00, + 0x9f, 0x19, 0x98, 0x9e, 0x8f, 0x74, 0xf1, 0xd1, 0x47, 0x94, 0xd0, 0x63, 0x0f, 0xc4, 0x23, 0xbe, + 0x02, 0x53, 0xde, 0x76, 0xf3, 0xd2, 0x32, 0x9f, 0xe3, 0xb4, 0xb8, 0xad, 0xe2, 0x60, 0xec, 0x22, + 0xbc, 0xa4, 0xcb, 0xa6, 0xaa, 0x0c, 0xb2, 0x73, 0xdf, 0xe8, 0x68, 0xad, 0x9a, 0x66, 0xed, 0x11, + 0xdb, 0x36, 0x1a, 0x84, 0xdf, 0x58, 0x04, 0x76, 0x68, 0x86, 0x01, 0x36, 0x6a, 0xf7, 0xdc, 0x66, + 0x6c, 0xc3, 0xbc, 0x61, 0xee, 0x12, 0x16, 0xd0, 0x1b, 0x5a, 0xcd, 0xa2, 0x5a, 0x43, 0x88, 0x06, + 0x2d, 0x90, 0x64, 0x0c, 0x4f, 0x36, 0x64, 0x27, 0x4e, 0x54, 0xc1, 0x6f, 0xf9, 0x4c, 0x27, 0x8a, + 0x0f, 0xfc, 0x13, 0x04, 0x85, 0x17, 0x76, 0x85, 0x79, 0x57, 0x57, 0x86, 0x9e, 0x91, 0x17, 0x6a, + 0x9b, 0x55, 0xa4, 0x9e, 0xae, 0x9d, 0xe8, 0xc3, 0x5f, 0x22, 0x50, 0x5e, 0xe4, 0x83, 0x66, 0x98, + 0x2d, 0xc3, 0x24, 0x5a, 0x9b, 0x89, 0x59, 0x71, 0x8d, 0x71, 0xf6, 0xf9, 0xb1, 0x3e, 0x94, 0x18, + 0xfb, 0x13, 0x7e, 0xf6, 0x44, 0x3f, 0xd6, 0x78, 0x0f, 0x77, 0x98, 0x7e, 0xff, 0x2f, 0xf8, 0xfe, + 0xc6, 0x0f, 0xca, 0xbc, 0x42, 0x5f, 0x50, 0xca, 0x4c, 0x99, 0x2b, 0x57, 0x95, 0x77, 0x94, 0x6b, + 0x4c, 0xd0, 0xb3, 0x92, 0xfd, 0x69, 0x0f, 0xdd, 0x01, 0x0c, 0x69, 0x55, 0x6c, 0xe5, 0x02, 0x0f, + 0xe7, 0xac, 0xfc, 0x9f, 0x81, 0x31, 0xaf, 0xe4, 0x4f, 0x96, 0x2f, 0xf9, 0x46, 0xf0, 0x3a, 0xc8, + 0x4b, 0x8d, 0x3d, 0xdd, 0xac, 0x93, 0x46, 0xa1, 0x0f, 0x28, 0x73, 0xee, 0x2b, 0x4a, 0x79, 0xe1, + 0x59, 0x0f, 0x7d, 0x9b, 0x80, 0x1f, 0x43, 0x8a, 0x87, 0x43, 0x17, 0x32, 0x6f, 0x41, 0x1b, 0xce, + 0x0c, 0xc9, 0x00, 0x15, 0x39, 0x78, 0xc7, 0xc0, 0x42, 0x3c, 0xe4, 0x06, 0x03, 0x79, 0x45, 0xf2, + 0xe2, 0x32, 0xcc, 0x3d, 0x27, 0x2e, 0x57, 0x06, 0xf5, 0x3a, 0xfc, 0xb7, 0x04, 0xc0, 0xcb, 0x1f, + 0x42, 0x89, 0xed, 0xa8, 0xff, 0x29, 0xc1, 0x19, 0x48, 0xb8, 0xe9, 0x4c, 0x46, 0x18, 0xf3, 0x1f, + 0x1f, 0x5f, 0xfc, 0x51, 0x89, 0x55, 0x31, 0xfc, 0x4f, 0x2e, 0xb6, 0xa9, 0xd3, 0x5d, 0x28, 0x05, + 0x61, 0x53, 0x03, 0x30, 0x5e, 0x2d, 0xe7, 0x92, 0x0c, 0x58, 0xd8, 0xe4, 0x0f, 0xa0, 0x04, 0xf1, + 0x93, 0x61, 0x3c, 0xbf, 0x54, 0xce, 0x01, 0x87, 0xf3, 0x5b, 0x67, 0xb8, 0x1e, 0x44, 0x4f, 0xfb, + 0xe8, 0x60, 0xa5, 0x94, 0x9b, 0xe4, 0x45, 0x6a, 0x81, 0x7b, 0x2f, 0xd6, 0x83, 0x38, 0xc5, 0x48, + 0x16, 0x41, 0x39, 0x68, 0x2c, 0xfb, 0xc6, 0x6e, 0x88, 0xc9, 0x65, 0x44, 0xa4, 0x08, 0x99, 0xbc, + 0xe9, 0x9b, 0x64, 0x11, 0x16, 0x3f, 0x72, 0x49, 0x0e, 0x28, 0x2c, 0x5b, 0x5d, 0x93, 0x72, 0xd0, + 0xc7, 0x50, 0x84, 0xfc, 0xb1, 0xa5, 0x29, 0x05, 0xef, 0xe5, 0x65, 0x84, 0x95, 0x93, 0x11, 0xcc, + 0x13, 0xf7, 0x62, 0xe6, 0xe3, 0x8b, 0x3f, 0xca, 0x79, 0x9f, 0xc9, 0xe1, 0xc3, 0x97, 0x22, 0x9f, + 0x7b, 0x31, 0xb9, 0xf8, 0xaa, 0x9e, 0x73, 0xbf, 0xb3, 0xbf, 0x0c, 0x6f, 0x16, 0xe1, 0x17, 0x20, + 0x72, 0xa9, 0xc0, 0xf6, 0x13, 0x33, 0x56, 0x1a, 0x66, 0x13, 0xbc, 0x99, 0xca, 0xa5, 0x56, 0x2d, + 0x87, 0xed, 0x34, 0xfe, 0x04, 0xd7, 0xf0, 0x9b, 0xc7, 0xf1, 0xc7, 0x3e, 0x09, 0xe4, 0x26, 0x96, + 0xba, 0xd4, 0x2a, 0x84, 0x2c, 0x2b, 0xb8, 0x70, 0xdc, 0x32, 0x7c, 0x77, 0x93, 0xcb, 0x88, 0x5d, + 0xe6, 0xdb, 0xdc, 0xc4, 0x67, 0x8f, 0xdb, 0x84, 0x3e, 0x7a, 0xb0, 0x9d, 0x47, 0x89, 0x6d, 0xe6, + 0xa6, 0xf9, 0x8e, 0xf3, 0x2c, 0x0b, 0x9b, 0xe2, 0x35, 0xac, 0x0f, 0x5b, 0xc8, 0x30, 0x83, 0xd3, + 0xad, 0x39, 0xd4, 0xa0, 0x5d, 0xd6, 0x94, 0xcb, 0x85, 0x69, 0xb6, 0x02, 0x6d, 0x70, 0x1e, 0xbf, + 0x16, 0x3e, 0xaa, 0xa5, 0xd0, 0xfd, 0x56, 0x2e, 0xed, 0x1d, 0x5c, 0x3e, 0xf0, 0x21, 0xf0, 0xd0, + 0x1d, 0x57, 0x00, 0xce, 0x4f, 0xe2, 0x35, 0x7c, 0x7a, 0x10, 0x1e, 0x9e, 0x9c, 0x53, 0x7d, 0x7c, + 0x78, 0x96, 0x2a, 0x43, 0x2c, 0x83, 0xd7, 0x5a, 0xb9, 0x89, 0x80, 0xa5, 0x45, 0xad, 0xba, 0xd5, + 0x82, 0x4b, 0xfe, 0x3a, 0x86, 0x43, 0x4b, 0x29, 0x74, 0xfb, 0xc0, 0x7c, 0x14, 0x8f, 0x85, 0x65, + 0xab, 0x41, 0xaa, 0x6f, 0x40, 0x4a, 0x58, 0x89, 0x7f, 0x8f, 0xf0, 0xbf, 0xa3, 0x65, 0xc4, 0x77, + 0xb4, 0x05, 0xe5, 0x52, 0xf5, 0x26, 0x9c, 0x7d, 0x61, 0x4a, 0x70, 0x45, 0xf9, 0xf4, 0x41, 0x0f, + 0x4d, 0xb8, 0x37, 0x98, 0x32, 0xff, 0x08, 0x7b, 0x55, 0x29, 0x5f, 0x5b, 0x8f, 0x49, 0x19, 0x79, + 0x7c, 0x3d, 0x26, 0xc9, 0xf2, 0x44, 0xf1, 0xc7, 0x90, 0x79, 0xaf, 0x65, 0xd5, 0xf4, 0xd6, 0x56, + 0x87, 0xd4, 0x79, 0x5a, 0x57, 0x21, 0xce, 0x5d, 0xf0, 0xae, 0x1b, 0xf2, 0xcf, 0x17, 0xa7, 0x3c, + 0x87, 0xe4, 0x3c, 0xa9, 0x1e, 0xff, 0x02, 0x45, 0xe5, 0x9f, 0x44, 0x82, 0x5a, 0xdd, 0x65, 0x5a, + 0x9c, 0x7d, 0xda, 0x43, 0xd3, 0x30, 0x09, 0x19, 0x16, 0x91, 0x0b, 0xd6, 0x8e, 0xd8, 0xa8, 0x0e, + 0x46, 0xe5, 0xe2, 0x0e, 0x64, 0x96, 0x6d, 0xa2, 0x53, 0xe2, 0x3b, 0xb0, 0xf4, 0x8a, 0x0e, 0x24, + 0x1e, 0x7f, 0xee, 0x1a, 0xf8, 0xfd, 0x4d, 0x3c, 0xbb, 0x31, 0x30, 0xac, 0x62, 0x13, 0xc6, 0x55, + 0x71, 0x8b, 0xf5, 0x3b, 0xee, 0xa8, 0x0e, 0xc9, 0xf7, 0x08, 0xfd, 0xdd, 0x76, 0x32, 0xaf, 0x02, + 0x3e, 0x7e, 0xcb, 0x81, 0x33, 0x00, 0x4b, 0xb7, 0xb7, 0x57, 0x54, 0x6d, 0x75, 0x65, 0xe9, 0x96, + 0x3c, 0x82, 0x27, 0x61, 0x5c, 0x3c, 0x6f, 0xaf, 0x6d, 0x6f, 0xac, 0x68, 0x2b, 0x77, 0x6f, 0xc9, + 0x08, 0x4f, 0x40, 0xba, 0xba, 0x72, 0xfb, 0x9e, 0xba, 0xa2, 0x6d, 0x2d, 0xab, 0x6b, 0x9b, 0xdb, + 0x72, 0x24, 0xc7, 0xb4, 0xda, 0xc8, 0xfc, 0x3f, 0x23, 0x90, 0x07, 0x2b, 0x71, 0x46, 0xb9, 0xbe, + 0xa5, 0x2d, 0x6d, 0x6f, 0xab, 0xda, 0x1a, 0xa3, 0x1c, 0x87, 0xa4, 0xf7, 0xbc, 0xbc, 0xc6, 0xe8, + 0x02, 0x80, 0xe5, 0xbb, 0x72, 0x04, 0xcf, 0x00, 0xf6, 0x9e, 0x97, 0x36, 0xd7, 0xb4, 0x5b, 0xf7, + 0xee, 0x2c, 0xad, 0xdd, 0x95, 0xa3, 0xcc, 0x97, 0xe0, 0xfb, 0x0f, 0xd4, 0x0d, 0x39, 0x86, 0xa7, + 0x40, 0x0e, 0xbe, 0xdc, 0x5c, 0xda, 0x5e, 0x95, 0x47, 0x99, 0x87, 0xfe, 0xdb, 0xad, 0x3f, 0xba, + 0xbb, 0x2c, 0xc7, 0x83, 0xaf, 0x6e, 0xad, 0xdc, 0x5e, 0x51, 0xe5, 0x31, 0xe1, 0x74, 0xf5, 0xcf, + 0xd0, 0xe1, 0xd7, 0xf9, 0x91, 0xaf, 0xbe, 0xce, 0x8f, 0x7c, 0xf7, 0x75, 0x1e, 0x3d, 0x3a, 0xca, + 0xa3, 0xbf, 0x3f, 0xca, 0xa3, 0x9f, 0x1f, 0xe5, 0xd1, 0xe1, 0x51, 0x1e, 0x7d, 0x75, 0x94, 0x47, + 0xbf, 0x3a, 0xca, 0xa3, 0x6f, 0x8f, 0xf2, 0x23, 0xdf, 0x1d, 0xe5, 0xd1, 0xcf, 0xbe, 0xc9, 0x8f, + 0x1c, 0x7c, 0x93, 0x47, 0x87, 0xdf, 0xe4, 0x47, 0xbe, 0xfa, 0x26, 0x3f, 0xf2, 0xc3, 0xb5, 0xa6, + 0xd5, 0xb9, 0xdf, 0x2c, 0xed, 0x59, 0x2d, 0x4a, 0x6c, 0x5b, 0x2f, 0x75, 0x9d, 0x0b, 0xfc, 0xc7, + 0x8e, 0x65, 0xb7, 0xcf, 0x77, 0x6c, 0x6b, 0xcf, 0x68, 0x10, 0xfb, 0xbc, 0xd7, 0x7c, 0xa1, 0x53, + 0x6b, 0x5a, 0x17, 0xc8, 0x43, 0xea, 0xfe, 0xa7, 0x5f, 0xf0, 0xbf, 0x19, 0x6b, 0x71, 0x1e, 0x13, + 0x16, 0xfe, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x2c, 0xcc, 0x3e, 0x4c, 0xeb, 0x28, 0x00, 0x00, } func (x JavaScriptLocation) String() string { diff --git a/pbgo/extschema/schema/secret_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/secret_policy/crudapi/api.vesapi.go index e73ee2aba..497f0f491 100644 --- a/pbgo/extschema/schema/secret_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/secret_policy/crudapi/api.vesapi.go @@ -3224,10 +3224,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/secret_policy/object.pb.go b/pbgo/extschema/schema/secret_policy/object.pb.go index d75533b56..9ffe12243 100644 --- a/pbgo/extschema/schema/secret_policy/object.pb.go +++ b/pbgo/extschema/schema/secret_policy/object.pb.go @@ -235,39 +235,45 @@ func init() { } var fileDescriptor_8b91b1db8a501001 = []byte{ - // 503 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xc1, 0x6b, 0x13, 0x4f, - 0x14, 0xc7, 0x77, 0x92, 0x1f, 0xf9, 0x95, 0x49, 0x8d, 0x65, 0xbd, 0xac, 0xad, 0x0e, 0x25, 0x22, - 0x06, 0x64, 0x67, 0xa1, 0x9e, 0x5a, 0xc4, 0x43, 0x15, 0xf4, 0x60, 0xa9, 0x26, 0x9e, 0xbc, 0x84, - 0xdd, 0xc9, 0xcb, 0x76, 0x35, 0x9b, 0x37, 0xec, 0xcc, 0x2e, 0xe6, 0x20, 0xf8, 0x1f, 0xe8, 0x9f, - 0x21, 0xfe, 0x15, 0xd6, 0x93, 0x78, 0x0a, 0x9e, 0x72, 0x34, 0x1b, 0x10, 0x2f, 0x42, 0xff, 0x04, - 0xe9, 0xac, 0x1b, 0xba, 0x25, 0x04, 0x6f, 0x6f, 0x78, 0x9f, 0xf7, 0xfd, 0xbe, 0xf7, 0x66, 0x86, - 0x76, 0x32, 0x50, 0x3c, 0x42, 0x4f, 0x89, 0x13, 0x88, 0x7d, 0x4f, 0x81, 0x48, 0x40, 0xf7, 0x25, - 0x8e, 0x22, 0x31, 0xf1, 0x30, 0x78, 0x05, 0x42, 0x73, 0x99, 0xa0, 0x46, 0x7b, 0xa7, 0x20, 0x79, - 0x41, 0xf2, 0x0a, 0xb9, 0xed, 0x86, 0x91, 0x3e, 0x49, 0x03, 0x2e, 0x30, 0xf6, 0x42, 0x0c, 0xd1, - 0x33, 0x35, 0x41, 0x3a, 0x34, 0x27, 0x73, 0x30, 0x51, 0xa1, 0xb5, 0xbd, 0x53, 0x75, 0x45, 0xa9, - 0x23, 0x1c, 0xab, 0xbf, 0xc9, 0x3b, 0xeb, 0x5a, 0xd2, 0x13, 0x09, 0x25, 0x78, 0xbd, 0x0a, 0x5e, - 0x4c, 0xb5, 0xab, 0xa9, 0x0c, 0x14, 0x8c, 0xb3, 0xaa, 0x4f, 0xfb, 0x27, 0xa1, 0x8d, 0x63, 0x33, - 0xa1, 0xbd, 0x4f, 0x37, 0x62, 0xd0, 0xfe, 0xc0, 0xd7, 0xbe, 0x43, 0x76, 0x49, 0xa7, 0xb9, 0x77, - 0x93, 0x57, 0xc7, 0x2d, 0xc0, 0x23, 0xd0, 0xfe, 0x8b, 0x89, 0x84, 0xee, 0x12, 0xb7, 0x9f, 0xd2, - 0xab, 0x6a, 0xa2, 0x34, 0xc4, 0xfd, 0xa5, 0x42, 0xcd, 0x28, 0xdc, 0xba, 0xa4, 0xd0, 0x33, 0xd4, - 0x25, 0x9d, 0x56, 0x51, 0x7b, 0x54, 0xaa, 0xed, 0xd3, 0xff, 0x94, 0x04, 0xe1, 0xd4, 0x8d, 0xc4, - 0x6d, 0xbe, 0x66, 0xe7, 0xbc, 0x27, 0x41, 0x18, 0x11, 0x53, 0x72, 0xe0, 0x7c, 0x39, 0x75, 0x6a, - 0x4f, 0xc8, 0xb7, 0x53, 0xa7, 0x95, 0x81, 0x72, 0x23, 0x74, 0x0b, 0x5c, 0xb5, 0x9f, 0xd1, 0x8d, - 0x92, 0xb5, 0x1f, 0xd1, 0xff, 0x43, 0xd1, 0x37, 0x1e, 0xc5, 0xa0, 0x77, 0xd7, 0x7a, 0x3c, 0x1e, - 0x61, 0xe0, 0x8f, 0x96, 0x4e, 0x8d, 0x50, 0x9c, 0xc7, 0xed, 0xdf, 0x84, 0x6e, 0xf6, 0xb4, 0xaf, - 0x53, 0xf5, 0xcf, 0x0b, 0x2c, 0xf0, 0x15, 0x0b, 0x3c, 0xa6, 0xcd, 0xe2, 0x9d, 0xf5, 0x13, 0x18, - 0x2a, 0xa7, 0xb6, 0x5b, 0xef, 0x34, 0xf7, 0x6e, 0xac, 0x5c, 0x7f, 0x17, 0x86, 0xe7, 0xc5, 0x87, - 0x5b, 0x9f, 0xde, 0x5e, 0xa9, 0xf4, 0xd9, 0xa5, 0x58, 0x02, 0xca, 0xbe, 0x4f, 0xa9, 0xc0, 0xf1, - 0x20, 0x32, 0x77, 0xed, 0xd4, 0x57, 0xea, 0x3d, 0x2c, 0x01, 0xd3, 0xcc, 0x05, 0xfe, 0xe0, 0xda, - 0xf7, 0x07, 0x5b, 0xb4, 0x45, 0x37, 0xcb, 0xfe, 0x78, 0x1a, 0x0d, 0x0e, 0xdf, 0x93, 0xe9, 0x9c, - 0x59, 0xb3, 0x39, 0xb3, 0xce, 0xe6, 0x8c, 0xbc, 0xcb, 0x19, 0xf9, 0x98, 0x33, 0xf2, 0x35, 0x67, - 0x64, 0x9a, 0x33, 0x32, 0xcb, 0x19, 0xf9, 0x91, 0x33, 0xf2, 0x2b, 0x67, 0xd6, 0x59, 0xce, 0xc8, - 0x87, 0x05, 0xb3, 0x3e, 0x2f, 0x18, 0x99, 0x2e, 0x98, 0x35, 0x5b, 0x30, 0xeb, 0xe5, 0xf3, 0x10, - 0xe5, 0xeb, 0x90, 0x67, 0x38, 0xd2, 0x90, 0x24, 0x3e, 0x4f, 0x95, 0x67, 0x82, 0x21, 0x26, 0xb1, - 0x2b, 0x13, 0xcc, 0xa2, 0x01, 0x24, 0x6e, 0x99, 0xf6, 0x64, 0x10, 0xa2, 0x07, 0x6f, 0x74, 0xf9, - 0x01, 0x56, 0xfc, 0x83, 0xa0, 0x61, 0xde, 0xf0, 0xbd, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x8f, - 0x17, 0x3f, 0x2a, 0xc0, 0x03, 0x00, 0x00, + // 604 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4f, 0xd4, 0x4e, + 0x14, 0xc7, 0x77, 0x58, 0x7e, 0x0b, 0x19, 0xf8, 0x21, 0xa9, 0x97, 0x15, 0x74, 0x42, 0xd6, 0x18, + 0x49, 0xb4, 0x6d, 0x82, 0xf1, 0x00, 0x31, 0x1e, 0x80, 0x04, 0x0f, 0x10, 0x74, 0xe1, 0x22, 0x9a, + 0x6c, 0xa6, 0xd3, 0xb7, 0x65, 0xb4, 0xdd, 0x69, 0x66, 0xa6, 0x95, 0x3d, 0x98, 0xf8, 0x1f, 0xe8, + 0x7f, 0xa1, 0xf1, 0xaf, 0x10, 0x4f, 0x5e, 0x4c, 0x08, 0xa7, 0x3d, 0x4a, 0xf7, 0xe2, 0xc5, 0x84, + 0x3f, 0xc1, 0x30, 0xb5, 0x48, 0x37, 0x9b, 0x8d, 0x97, 0xbd, 0x4d, 0xf3, 0xfd, 0xbe, 0xcf, 0x7b, + 0x33, 0x7d, 0xef, 0xe1, 0xe5, 0x14, 0x94, 0xc3, 0x85, 0xab, 0xd8, 0x21, 0x44, 0xd4, 0x55, 0xc0, + 0x24, 0xe8, 0x56, 0x2c, 0x42, 0xce, 0xba, 0xae, 0xf0, 0x5e, 0x01, 0xd3, 0x4e, 0x2c, 0x85, 0x16, + 0xd6, 0x62, 0xee, 0x74, 0x72, 0xa7, 0x53, 0x72, 0x2e, 0xd8, 0x01, 0xd7, 0x87, 0x89, 0xe7, 0x30, + 0x11, 0xb9, 0x81, 0x08, 0x84, 0x6b, 0x62, 0xbc, 0xa4, 0x6d, 0xbe, 0xcc, 0x87, 0x39, 0xe5, 0xac, + 0x85, 0xc5, 0x72, 0x56, 0x11, 0x6b, 0x2e, 0x3a, 0xea, 0x8f, 0x78, 0x77, 0x54, 0x49, 0xba, 0x1b, + 0x43, 0x61, 0xbc, 0x51, 0x36, 0x5e, 0x95, 0x1a, 0x65, 0x29, 0x05, 0x05, 0x9d, 0xb4, 0x9c, 0xa7, + 0xf1, 0xf1, 0x3f, 0x5c, 0xdb, 0x35, 0x37, 0xb4, 0x56, 0xf1, 0x74, 0x04, 0x9a, 0xfa, 0x54, 0xd3, + 0x3a, 0x5a, 0x42, 0xcb, 0x33, 0x2b, 0xb7, 0x9c, 0xf2, 0x75, 0x73, 0xe3, 0x0e, 0x68, 0xba, 0xdf, + 0x8d, 0xa1, 0x79, 0x69, 0xb7, 0xb6, 0xf1, 0x35, 0xd5, 0x55, 0x1a, 0xa2, 0xd6, 0x25, 0x61, 0xc2, + 0x10, 0x6e, 0x0f, 0x10, 0xf6, 0x8c, 0x6b, 0x80, 0x33, 0x97, 0xc7, 0xee, 0x14, 0xb4, 0x55, 0x3c, + 0xa9, 0x62, 0x60, 0xf5, 0xaa, 0x41, 0xdc, 0x71, 0x46, 0xbc, 0xb9, 0xb3, 0x17, 0x03, 0x33, 0x10, + 0x13, 0xb2, 0xd6, 0xab, 0x7e, 0x3d, 0xae, 0x4f, 0x3c, 0x41, 0xa7, 0xc7, 0xf5, 0xef, 0x55, 0xfc, + 0x02, 0x57, 0xb7, 0x40, 0x5b, 0xfb, 0xed, 0x87, 0x47, 0xcc, 0x56, 0xc0, 0x12, 0x09, 0x11, 0xa8, + 0x43, 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x12, 0x1d, 0xae, 0x85, 0xbc, 0xbf, 0x34, 0x28, 0x2b, 0x4d, + 0x3b, 0x3e, 0x95, 0xfe, 0x5f, 0x47, 0x0a, 0xca, 0xe6, 0xc2, 0xce, 0x53, 0x2b, 0x5b, 0x02, 0xf5, + 0xf1, 0x01, 0x9e, 0x6a, 0x42, 0x1c, 0x52, 0x06, 0xd6, 0xee, 0xf0, 0x04, 0x89, 0x82, 0x51, 0xf4, + 0x5c, 0x1e, 0x40, 0xbf, 0x91, 0x5c, 0x03, 0x7e, 0x8e, 0x6b, 0x1b, 0x12, 0xa8, 0x1e, 0x0f, 0x7a, + 0x13, 0x42, 0x18, 0x07, 0xfa, 0x25, 0x9e, 0xdc, 0xe6, 0x6a, 0x4c, 0xef, 0xdd, 0x78, 0x8a, 0xa7, + 0x8b, 0x9f, 0x6d, 0x6d, 0xe2, 0xa9, 0x80, 0xb5, 0x4c, 0x93, 0xe4, 0x9d, 0x7a, 0x6f, 0x64, 0x93, + 0x6c, 0x85, 0xc2, 0xa3, 0xe1, 0x65, 0xab, 0xd4, 0x02, 0x76, 0x71, 0x6e, 0xfc, 0x42, 0x78, 0x76, + 0x4f, 0x53, 0x9d, 0xa8, 0x7f, 0x9e, 0x80, 0xdc, 0x3e, 0x64, 0x02, 0x76, 0xf1, 0x4c, 0xbe, 0x28, + 0x5a, 0x12, 0xda, 0xaa, 0x3e, 0xb1, 0x54, 0x5d, 0x9e, 0x59, 0xb9, 0x39, 0x74, 0x7e, 0x9a, 0xd0, + 0xbe, 0x08, 0x5e, 0x9f, 0xff, 0xfc, 0xf6, 0xff, 0x52, 0x9d, 0x4d, 0x2c, 0x0a, 0x83, 0xb2, 0x1e, + 0x61, 0xcc, 0x44, 0xc7, 0xe7, 0x66, 0x58, 0xeb, 0xd5, 0xa1, 0xbc, 0x8d, 0xc2, 0x60, 0x8a, 0xb9, + 0xe2, 0x5f, 0xbb, 0x7e, 0xfa, 0x78, 0x1e, 0xcf, 0xe1, 0xd9, 0xa2, 0x3e, 0x27, 0xe1, 0xfe, 0xfa, + 0x7b, 0x74, 0x72, 0x46, 0x2a, 0xbd, 0x33, 0x52, 0x39, 0x3f, 0x23, 0xe8, 0x5d, 0x46, 0xd0, 0xa7, + 0x8c, 0xa0, 0x6f, 0x19, 0x41, 0x27, 0x19, 0x41, 0xbd, 0x8c, 0xa0, 0x1f, 0x19, 0x41, 0x3f, 0x33, + 0x52, 0x39, 0xcf, 0x08, 0xfa, 0xd0, 0x27, 0x95, 0x2f, 0x7d, 0x82, 0x4e, 0xfa, 0xa4, 0xd2, 0xeb, + 0x93, 0xca, 0xc1, 0xb3, 0x40, 0xc4, 0xaf, 0x03, 0x27, 0x15, 0xa1, 0x06, 0x29, 0xa9, 0x93, 0x28, + 0xd7, 0x1c, 0xda, 0x42, 0x46, 0x76, 0x2c, 0x45, 0xca, 0x7d, 0x90, 0x76, 0x21, 0xbb, 0xb1, 0x17, + 0x08, 0x17, 0x8e, 0x74, 0xb1, 0xc1, 0x86, 0x2c, 0x32, 0xaf, 0x66, 0x96, 0xd0, 0x83, 0xdf, 0x01, + 0x00, 0x00, 0xff, 0xff, 0x87, 0x87, 0xa6, 0x42, 0x81, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/secret_policy/public_crudapi.pb.go b/pbgo/extschema/schema/secret_policy/public_crudapi.pb.go index 5458874e8..f4f82deeb 100644 --- a/pbgo/extschema/schema/secret_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/secret_policy/public_crudapi.pb.go @@ -1066,106 +1066,109 @@ func init() { } var fileDescriptor_b3aeafb9db7f3eb1 = []byte{ - // 1577 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1a, 0xd7, - 0x16, 0xf6, 0x05, 0x4c, 0xe0, 0xe0, 0x1f, 0x72, 0x93, 0x38, 0x98, 0xe4, 0x21, 0x1e, 0x89, 0x5e, - 0x88, 0x13, 0x86, 0xc8, 0xef, 0x29, 0x7a, 0xf6, 0x7b, 0xf2, 0x7b, 0x18, 0x83, 0xe3, 0xc4, 0x7f, - 0x19, 0x48, 0xf2, 0x7e, 0x16, 0x93, 0x01, 0x2e, 0x64, 0x1a, 0x60, 0xa6, 0x33, 0x17, 0x5c, 0x54, - 0x59, 0xaa, 0xa2, 0x76, 0xdf, 0x2a, 0xbb, 0xb6, 0x8b, 0x6e, 0x22, 0x75, 0x93, 0x45, 0x77, 0x95, - 0xdc, 0x85, 0x77, 0x89, 0xb2, 0x68, 0xa3, 0x76, 0x93, 0x65, 0x8d, 0xbb, 0xc8, 0x32, 0xea, 0xae, - 0xbb, 0x6a, 0xee, 0x9d, 0x21, 0x80, 0x09, 0x06, 0xd7, 0x2b, 0xee, 0xbd, 0xe7, 0x9c, 0x6f, 0xbe, - 0x73, 0xcf, 0x0f, 0x67, 0x06, 0xae, 0xd5, 0x89, 0x21, 0x28, 0x6a, 0xdc, 0xc8, 0x3f, 0x20, 0x15, - 0x39, 0x6e, 0x90, 0xbc, 0x4e, 0xa8, 0xa4, 0xa9, 0x65, 0x25, 0xdf, 0x88, 0x6b, 0xb5, 0x5c, 0x59, - 0xc9, 0x4b, 0x79, 0xbd, 0x56, 0x90, 0x35, 0x45, 0xd0, 0x74, 0x95, 0xaa, 0xf8, 0x1c, 0xb7, 0x10, - 0xb8, 0x85, 0xd0, 0x61, 0x11, 0x8c, 0x95, 0x14, 0xfa, 0xa0, 0x96, 0x13, 0xf2, 0x6a, 0x25, 0x5e, - 0x52, 0x4b, 0x6a, 0x9c, 0xd9, 0xe4, 0x6a, 0x45, 0xb6, 0x63, 0x1b, 0xb6, 0xe2, 0x58, 0xc1, 0xf3, - 0x25, 0x55, 0x2d, 0x95, 0x49, 0x5c, 0xd6, 0x94, 0xb8, 0x5c, 0xad, 0xaa, 0x54, 0xa6, 0x8a, 0x5a, - 0x35, 0x2c, 0xe9, 0x39, 0x4b, 0xda, 0xc2, 0x20, 0x15, 0x8d, 0x36, 0x2c, 0x61, 0xb0, 0x93, 0x38, - 0xd1, 0x75, 0x55, 0x6f, 0x19, 0x76, 0xca, 0x54, 0xad, 0x1d, 0x35, 0xda, 0xcf, 0x63, 0x35, 0xf7, - 0x1e, 0xc9, 0x53, 0x4b, 0xf3, 0x52, 0x3f, 0x4d, 0xda, 0xd0, 0x88, 0x0d, 0x39, 0xdd, 0xa9, 0xd8, - 0x2e, 0x8a, 0x74, 0x8a, 0xea, 0xc4, 0x20, 0xd5, 0x7a, 0x17, 0xa3, 0x70, 0x97, 0x8e, 0x42, 0xb6, - 0xa4, 0x0e, 0x8d, 0xc8, 0x53, 0x04, 0xe3, 0x49, 0x9d, 0xc8, 0x94, 0x88, 0xe4, 0xfd, 0x1a, 0x31, - 0x28, 0xfe, 0x17, 0x78, 0x2a, 0x84, 0xca, 0x05, 0x99, 0xca, 0x01, 0x14, 0x46, 0x51, 0xdf, 0xec, - 0x05, 0xa1, 0x33, 0x30, 0x1b, 0xcc, 0x15, 0x6e, 0xb5, 0x46, 0xa8, 0x9c, 0x6d, 0x68, 0x44, 0x6c, - 0x19, 0xe1, 0x4d, 0x70, 0x19, 0x1a, 0xc9, 0x07, 0x1c, 0xcc, 0xf8, 0x8a, 0xd0, 0x27, 0xaa, 0x02, - 0x07, 0xc9, 0x68, 0x24, 0x6f, 0x82, 0x2c, 0x4e, 0x7e, 0xbe, 0x3d, 0x66, 0xda, 0x0a, 0xa5, 0xbc, - 0x64, 0xfe, 0x8a, 0x0c, 0x69, 0xde, 0xfb, 0x62, 0xc1, 0xcd, 0x1f, 0x1a, 0xf9, 0x0d, 0xc1, 0x84, - 0xcd, 0xd7, 0xd0, 0xd4, 0xaa, 0x41, 0xf0, 0x3f, 0x0f, 0x10, 0x0e, 0xf7, 0x24, 0xbc, 0x4c, 0x68, - 0x0f, 0xb6, 0x1b, 0x30, 0x69, 0x34, 0x0c, 0x4a, 0x2a, 0x52, 0x0b, 0xc4, 0xc9, 0x40, 0xfe, 0xd2, - 0x05, 0x92, 0x61, 0x5a, 0x07, 0xa1, 0x26, 0xb8, 0xf9, 0x9a, 0x0d, 0xb8, 0xd6, 0xe1, 0x7e, 0xb4, - 0xaf, 0xfb, 0xcb, 0x84, 0x0e, 0xe1, 0xfb, 0x1e, 0x82, 0x09, 0x91, 0x68, 0x65, 0x39, 0xdf, 0x0a, - 0xd6, 0xbf, 0x0f, 0xf8, 0x7e, 0xb1, 0xa7, 0xef, 0x96, 0x59, 0x0f, 0xff, 0x6f, 0x77, 0xd0, 0xbd, - 0xda, 0x97, 0xae, 0x85, 0x72, 0x08, 0x65, 0x1c, 0x07, 0xbf, 0x4e, 0x0c, 0xb5, 0xa6, 0xe7, 0x89, - 0x54, 0x27, 0xba, 0xa1, 0xa8, 0x55, 0x76, 0xa7, 0xde, 0x45, 0xd7, 0xeb, 0x1d, 0x84, 0xc4, 0x49, - 0x5b, 0x7a, 0x97, 0x0b, 0xdb, 0x7d, 0x3c, 0x09, 0x93, 0x2d, 0x17, 0x79, 0x7c, 0x23, 0x5f, 0x20, - 0x80, 0x65, 0x42, 0x6d, 0x97, 0xcf, 0x83, 0xb7, 0x2a, 0x57, 0x88, 0xa1, 0xc9, 0x79, 0xc2, 0x7c, - 0xf6, 0x8a, 0x6f, 0x0f, 0x30, 0x06, 0x97, 0xb9, 0x61, 0xee, 0x78, 0x45, 0xb6, 0xc6, 0xff, 0x07, - 0xf3, 0x89, 0x0c, 0x4c, 0x2a, 0xaa, 0x7a, 0x45, 0xa6, 0x8c, 0xce, 0xc4, 0xec, 0xec, 0x61, 0xc1, - 0xb1, 0x39, 0xa4, 0x99, 0x55, 0x52, 0x2d, 0x10, 0x71, 0x42, 0xef, 0x38, 0x8b, 0x7c, 0xe6, 0x06, - 0x5f, 0x9b, 0x26, 0xbe, 0x05, 0xbe, 0x3c, 0xcb, 0x4f, 0xf6, 0x28, 0xeb, 0x5a, 0x67, 0x06, 0x28, - 0x02, 0xcb, 0x3f, 0x11, 0xb8, 0xb9, 0x09, 0x8f, 0xd7, 0x61, 0x4c, 0xe7, 0xb7, 0xc1, 0xd1, 0x9c, - 0x03, 0x94, 0x54, 0x67, 0x86, 0x88, 0x3e, 0x0b, 0x80, 0xe1, 0xf5, 0x8a, 0x8c, 0xab, 0x4f, 0x64, - 0x3a, 0x6a, 0x6b, 0xf4, 0x38, 0x6a, 0xeb, 0xc4, 0xb1, 0xd4, 0x96, 0xfb, 0x58, 0x6a, 0x0b, 0xdf, - 0x00, 0xb7, 0x41, 0x65, 0x5a, 0x33, 0x02, 0x5f, 0x7d, 0x89, 0xc2, 0xce, 0xa8, 0x6f, 0xf6, 0x72, - 0x5f, 0xc8, 0x0c, 0x53, 0xe6, 0x34, 0x17, 0x9d, 0xbb, 0xdb, 0x48, 0xb4, 0xec, 0xf1, 0x0a, 0x9c, - 0xd4, 0x49, 0x91, 0xe8, 0xba, 0x52, 0x2d, 0x49, 0xbc, 0xd5, 0x1b, 0x01, 0x0f, 0x83, 0x3c, 0xff, - 0x8e, 0x82, 0x2c, 0x32, 0x0f, 0xfd, 0x2d, 0x33, 0x7e, 0x6e, 0xe0, 0xbb, 0x10, 0x28, 0x90, 0x32, - 0xa1, 0xa4, 0x20, 0x71, 0x19, 0x29, 0xb4, 0x10, 0xbd, 0x03, 0x20, 0x4e, 0x59, 0xd6, 0xa2, 0x65, - 0x6c, 0xe3, 0xfe, 0x07, 0xa6, 0x0b, 0x8a, 0x21, 0xe7, 0xca, 0xbd, 0x80, 0x61, 0x00, 0xe0, 0xb3, - 0xb6, 0x79, 0x17, 0x72, 0x5b, 0xf9, 0xde, 0x74, 0x79, 0x90, 0xdf, 0x11, 0x79, 0x82, 0xc0, 0xb7, - 0xaa, 0x18, 0x03, 0x96, 0xec, 0x9f, 0x61, 0xac, 0x2c, 0xe7, 0x48, 0x59, 0x2a, 0x2a, 0x65, 0x4a, - 0x74, 0xab, 0x74, 0x7d, 0xec, 0x2c, 0xcd, 0x8e, 0xf0, 0x05, 0x18, 0xd7, 0x89, 0xa6, 0xea, 0x54, - 0x2a, 0x2a, 0xa4, 0x5c, 0x30, 0x02, 0xce, 0xb0, 0x33, 0xea, 0x15, 0xc7, 0xf8, 0x61, 0x9a, 0x9d, - 0xe1, 0x6b, 0x70, 0xda, 0x52, 0xe2, 0x41, 0xb1, 0x75, 0x5d, 0x4c, 0x17, 0x73, 0x19, 0x0f, 0x21, - 0xb7, 0x88, 0xec, 0xba, 0xc1, 0xcf, 0x79, 0xf2, 0xe2, 0x5d, 0xa1, 0xa4, 0x82, 0xa7, 0xc0, 0x4d, - 0x49, 0x55, 0xae, 0x52, 0x96, 0x65, 0x5e, 0xd1, 0xda, 0x1d, 0xa1, 0xef, 0xf8, 0xc1, 0x59, 0x53, - 0x0a, 0xbc, 0xf5, 0x89, 0xe6, 0x12, 0x87, 0xc1, 0x57, 0x20, 0x46, 0x5e, 0x57, 0xd8, 0x7f, 0x70, - 0xc0, 0xc7, 0x3d, 0x6d, 0x3b, 0xc2, 0x41, 0xf0, 0xd8, 0xd7, 0x1c, 0x18, 0x0b, 0xa3, 0xa8, 0x47, - 0x6c, 0xed, 0xf1, 0x6d, 0x70, 0xb3, 0x4b, 0xe1, 0x2e, 0xf9, 0x66, 0xe7, 0xfa, 0x26, 0x6b, 0xb7, - 0x63, 0xc2, 0x2a, 0xb3, 0x4d, 0x55, 0xa9, 0xde, 0x10, 0x2d, 0x20, 0x7c, 0x1f, 0x7c, 0x6d, 0xd3, - 0x91, 0x95, 0x06, 0x0b, 0xc3, 0xe1, 0x26, 0xde, 0x02, 0x70, 0xf0, 0x76, 0x48, 0x3c, 0x07, 0xa0, - 0x6e, 0x55, 0x89, 0x2e, 0x99, 0xc3, 0x47, 0xc0, 0xcb, 0x0a, 0x37, 0xd8, 0xf5, 0x80, 0xbb, 0x0a, - 0xd9, 0xb2, 0xb3, 0xcc, 0xcb, 0xb4, 0xcd, 0x93, 0x8e, 0xe6, 0x33, 0x7e, 0x1c, 0xcd, 0x67, 0xe2, - 0x0f, 0x35, 0x9f, 0x24, 0x78, 0x4a, 0x84, 0xb2, 0xfe, 0x61, 0xb5, 0xb1, 0x81, 0x1b, 0x90, 0x78, - 0xa2, 0xc4, 0x37, 0x78, 0x0d, 0xc0, 0xca, 0x4e, 0x83, 0x50, 0xab, 0x43, 0x0c, 0xdb, 0x74, 0xbc, - 0x1c, 0x21, 0x43, 0x68, 0x70, 0x0e, 0x7c, 0x6d, 0x61, 0x35, 0x33, 0xee, 0x21, 0x69, 0x58, 0xd9, - 0x69, 0x2e, 0xf1, 0x69, 0x18, 0xad, 0xcb, 0xe5, 0x9a, 0x9d, 0x98, 0x7c, 0x33, 0xef, 0xf8, 0x3b, - 0x0a, 0x2e, 0x80, 0xbf, 0x3b, 0x72, 0xc3, 0xd8, 0xdf, 0x74, 0x79, 0x46, 0xfd, 0xee, 0xc8, 0x27, - 0x08, 0xc6, 0xda, 0x33, 0x02, 0x27, 0x61, 0x54, 0xa1, 0xa4, 0x62, 0x04, 0x78, 0x43, 0x8d, 0x0d, - 0x95, 0x4b, 0x22, 0xb7, 0xc5, 0xd7, 0xc0, 0xcd, 0xc7, 0xee, 0x80, 0x83, 0xa1, 0x04, 0xba, 0x50, - 0x52, 0xa6, 0x90, 0x5d, 0xac, 0xa5, 0x17, 0x79, 0x08, 0xe3, 0x4b, 0xac, 0xef, 0x1d, 0x7d, 0x4c, - 0x88, 0x82, 0xbf, 0x28, 0x2b, 0x65, 0x49, 0x29, 0xb6, 0xfa, 0x23, 0xab, 0x5d, 0x8f, 0x38, 0x61, - 0x9e, 0xaf, 0x14, 0xed, 0xbe, 0x37, 0xf3, 0x2b, 0x82, 0x33, 0x3d, 0xa7, 0x03, 0x1c, 0x84, 0xa9, - 0xe5, 0x54, 0x56, 0x12, 0x33, 0x9b, 0x52, 0x7a, 0x43, 0x5c, 0x4b, 0x64, 0xa5, 0xa5, 0x54, 0x3a, - 0x71, 0x67, 0x35, 0xeb, 0x1f, 0xc1, 0x7f, 0x82, 0xe9, 0x2e, 0x59, 0x7a, 0x43, 0x94, 0x92, 0x62, - 0x2a, 0x91, 0x4d, 0xf9, 0x11, 0x0e, 0x41, 0xb0, 0x87, 0x58, 0x4c, 0x6d, 0xae, 0x26, 0x92, 0x29, - 0xbf, 0x03, 0x4f, 0xc3, 0x99, 0x2e, 0x79, 0x26, 0x9b, 0xc8, 0xde, 0xc9, 0xf8, 0x9d, 0xf8, 0x2c, - 0x9c, 0xea, 0x12, 0x89, 0xa9, 0xc4, 0x92, 0xdf, 0x85, 0x2f, 0x42, 0xf8, 0x80, 0x20, 0x9d, 0x12, - 0xc5, 0x95, 0xf5, 0x65, 0x69, 0x63, 0xf1, 0x66, 0x2a, 0x99, 0xcd, 0xf8, 0x47, 0x7b, 0x68, 0x2d, - 0x8a, 0x1b, 0xb7, 0x52, 0xeb, 0x5c, 0x39, 0xb5, 0x9e, 0x4c, 0x65, 0xfc, 0xee, 0xd9, 0x8f, 0x3d, - 0xe0, 0x4c, 0x6c, 0xae, 0xe0, 0xef, 0x10, 0xb8, 0xf9, 0xc4, 0x82, 0x87, 0x18, 0x6b, 0x82, 0x57, - 0x06, 0xd2, 0xb5, 0x46, 0xbe, 0xff, 0x36, 0x9f, 0x05, 0x4e, 0xd7, 0x89, 0x11, 0x53, 0xd4, 0x18, - 0x57, 0x34, 0x62, 0x5b, 0xba, 0x42, 0xc9, 0xa3, 0x9f, 0x7e, 0x79, 0xec, 0xf8, 0x47, 0xe4, 0xba, - 0xf5, 0x02, 0x19, 0x6f, 0x45, 0xd4, 0x88, 0x7f, 0x68, 0x97, 0xb9, 0xd0, 0x3a, 0xdc, 0xee, 0x7c, - 0xb3, 0x32, 0xe6, 0xd1, 0x0c, 0xfe, 0x06, 0x81, 0x73, 0x99, 0x50, 0x7c, 0xe9, 0xf0, 0xd9, 0x8f, - 0x13, 0x8f, 0x0e, 0x3a, 0x24, 0x46, 0xee, 0x3d, 0xff, 0xd6, 0x81, 0x9a, 0xcf, 0x02, 0xa7, 0xba, - 0x98, 0xeb, 0x44, 0x2e, 0x30, 0xe2, 0xd7, 0xf1, 0xdf, 0x7a, 0x11, 0x7f, 0x27, 0x5f, 0x2e, 0xda, - 0xc6, 0x4f, 0x11, 0xb8, 0xcc, 0x52, 0xc1, 0xd1, 0x01, 0xaa, 0x89, 0xb3, 0xbe, 0x3c, 0x70, 0xdd, - 0x45, 0x36, 0x0f, 0xa3, 0x1d, 0xc7, 0xb1, 0xa1, 0x68, 0xe3, 0x1f, 0x10, 0x9c, 0xb0, 0xc6, 0x50, - 0x3c, 0xcc, 0xb0, 0x1a, 0xbc, 0x3a, 0x98, 0xb2, 0x45, 0x5c, 0xe9, 0x9b, 0x25, 0xb7, 0x82, 0xe9, - 0xa3, 0x65, 0x49, 0x97, 0xce, 0xb6, 0x99, 0x35, 0x4f, 0x10, 0xb8, 0x79, 0x7f, 0x39, 0x24, 0xe9, - 0x3b, 0x9a, 0x50, 0x70, 0x4a, 0xe0, 0x1f, 0x1a, 0x04, 0xfb, 0x43, 0x83, 0x90, 0xaa, 0x68, 0xb4, - 0x11, 0xb9, 0xd7, 0x97, 0xf9, 0xdc, 0xcc, 0x91, 0xd2, 0x64, 0x1e, 0xcd, 0x04, 0xef, 0xef, 0xee, - 0x20, 0xc7, 0x8f, 0x3b, 0x28, 0xd2, 0x8f, 0x23, 0xff, 0x2f, 0x79, 0xb5, 0x83, 0x50, 0x73, 0x07, - 0x45, 0x07, 0xfd, 0xef, 0x79, 0xf4, 0x7d, 0xc0, 0x71, 0x03, 0x2d, 0x3e, 0x46, 0x2f, 0x16, 0x46, - 0x93, 0xe2, 0x9d, 0xa5, 0xd5, 0x97, 0x7b, 0xa1, 0x91, 0x57, 0x7b, 0xa1, 0x91, 0x37, 0x7b, 0x21, - 0xf4, 0x51, 0x33, 0x84, 0xbe, 0x6e, 0x86, 0xd0, 0xf3, 0x66, 0x08, 0xbd, 0x6c, 0x86, 0xd0, 0xcf, - 0xcd, 0x10, 0x7a, 0xdd, 0x0c, 0x8d, 0xbc, 0x69, 0x86, 0xd0, 0xa7, 0xfb, 0xa1, 0x91, 0xdd, 0xfd, - 0x10, 0x7a, 0xb9, 0x1f, 0x1a, 0x79, 0xb5, 0x1f, 0x1a, 0xf9, 0xdf, 0xed, 0x92, 0xaa, 0x3d, 0x2c, - 0x09, 0x75, 0xd5, 0x9c, 0xed, 0x74, 0x59, 0xa8, 0x19, 0x71, 0xb6, 0x30, 0x5f, 0x71, 0x62, 0x9a, - 0xae, 0xd6, 0x95, 0x02, 0xd1, 0x63, 0xb6, 0x38, 0xae, 0xe5, 0x4a, 0x6a, 0x9c, 0x7c, 0x40, 0xed, - 0x8f, 0x25, 0x3d, 0xbe, 0x99, 0xe4, 0xdc, 0xec, 0x82, 0xff, 0xfa, 0x7b, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x95, 0x0b, 0x05, 0x5d, 0x75, 0x12, 0x00, 0x00, + // 1626 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4b, 0x6c, 0x1b, 0xd5, + 0x1a, 0xce, 0xb1, 0x1d, 0xd7, 0x3e, 0xce, 0xc3, 0x3d, 0xb7, 0x4d, 0x1d, 0xb7, 0xd7, 0xf2, 0x75, + 0xab, 0x5b, 0x37, 0xad, 0xc7, 0x55, 0xee, 0xa5, 0x22, 0x01, 0x05, 0x1c, 0xc7, 0x4e, 0xd3, 0xe6, + 0xd5, 0xb1, 0x5b, 0x21, 0x58, 0x4c, 0xc7, 0xe3, 0x63, 0x77, 0xa8, 0xed, 0x19, 0xe6, 0x1c, 0x3b, + 0xb5, 0x50, 0x24, 0x54, 0x89, 0x05, 0x2b, 0x0a, 0x95, 0x58, 0x00, 0x0b, 0x84, 0x84, 0xc4, 0x86, + 0x0d, 0x2b, 0xa4, 0x6c, 0xb2, 0xa3, 0xea, 0x02, 0x55, 0xb0, 0xe9, 0x0e, 0xe2, 0xb0, 0xe8, 0x06, + 0xa9, 0xb0, 0x40, 0x62, 0x87, 0xe6, 0x9c, 0x19, 0xd7, 0x76, 0x5c, 0xc7, 0x0e, 0xe9, 0xca, 0x73, + 0xfe, 0xc7, 0x37, 0xff, 0x37, 0xff, 0xc3, 0xff, 0x0c, 0xbc, 0x58, 0xc3, 0x44, 0x50, 0xb5, 0x38, + 0x51, 0x6e, 0xe1, 0xb2, 0x1c, 0x27, 0x58, 0x31, 0x30, 0x95, 0x74, 0xad, 0xa4, 0x2a, 0xf5, 0xb8, + 0x5e, 0xcd, 0x95, 0x54, 0x45, 0x52, 0x8c, 0x6a, 0x5e, 0xd6, 0x55, 0x41, 0x37, 0x34, 0xaa, 0xa1, + 0x93, 0xdc, 0x43, 0xe0, 0x1e, 0x42, 0x9b, 0x47, 0x30, 0x56, 0x54, 0xe9, 0xad, 0x6a, 0x4e, 0x50, + 0xb4, 0x72, 0xbc, 0xa8, 0x15, 0xb5, 0x38, 0xf3, 0xc9, 0x55, 0x0b, 0xec, 0xc4, 0x0e, 0xec, 0x8a, + 0x63, 0x05, 0x4f, 0x15, 0x35, 0xad, 0x58, 0xc2, 0x71, 0x59, 0x57, 0xe3, 0x72, 0xa5, 0xa2, 0x51, + 0x99, 0xaa, 0x5a, 0x85, 0x58, 0xda, 0x93, 0x96, 0xb6, 0x89, 0x81, 0xcb, 0x3a, 0xad, 0x5b, 0xca, + 0x60, 0x7b, 0xe0, 0xd8, 0x30, 0x34, 0xa3, 0xe9, 0xd8, 0xae, 0xd3, 0xf4, 0x56, 0xd4, 0x68, 0x2f, + 0xc6, 0x5a, 0xee, 0x6d, 0xac, 0x50, 0xcb, 0xf2, 0x6c, 0x2f, 0x4b, 0x5a, 0xd7, 0xb1, 0x0d, 0x39, + 0xd9, 0x6e, 0xd8, 0xaa, 0x8a, 0xb4, 0xab, 0x6a, 0x98, 0xe0, 0x4a, 0xad, 0x23, 0xa2, 0x70, 0x87, + 0x8d, 0x8a, 0x37, 0xa4, 0x36, 0x8b, 0xc8, 0x37, 0x00, 0x8e, 0x26, 0x0d, 0x2c, 0x53, 0x2c, 0xe2, + 0x77, 0xaa, 0x98, 0x50, 0xf4, 0x1a, 0xf4, 0x94, 0x31, 0x95, 0xf3, 0x32, 0x95, 0x03, 0x20, 0x0c, + 0xa2, 0xbe, 0xe9, 0xd3, 0x42, 0x7b, 0x62, 0xd6, 0x18, 0x15, 0xee, 0xb5, 0x82, 0xa9, 0x9c, 0xad, + 0xeb, 0x58, 0x6c, 0x3a, 0xa1, 0x75, 0xe8, 0x22, 0x3a, 0x56, 0x02, 0x0e, 0xe6, 0x7c, 0x5e, 0xe8, + 0x91, 0x55, 0x81, 0x83, 0x64, 0x74, 0xac, 0x98, 0x20, 0xf3, 0xe3, 0x9f, 0x6e, 0x8e, 0x98, 0xbe, + 0x42, 0x51, 0x91, 0xcc, 0x5f, 0x91, 0x21, 0xcd, 0x7a, 0x1f, 0xce, 0xb9, 0xf9, 0x4d, 0x23, 0x7f, + 0x01, 0x38, 0x66, 0xc7, 0x4b, 0x74, 0xad, 0x42, 0x30, 0x7a, 0x75, 0x4f, 0xc0, 0xe1, 0xae, 0x01, + 0x2f, 0x62, 0xda, 0x25, 0xda, 0x35, 0x38, 0x4e, 0xea, 0x84, 0xe2, 0xb2, 0xd4, 0x04, 0x71, 0x32, + 0x90, 0xff, 0x76, 0x80, 0x64, 0x98, 0xd5, 0x5e, 0xa8, 0x31, 0xee, 0xbe, 0x62, 0x03, 0xae, 0xb4, + 0xd1, 0x8f, 0xf6, 0xa4, 0xbf, 0x88, 0xe9, 0x00, 0xdc, 0x77, 0x00, 0x1c, 0x13, 0xb1, 0x5e, 0x92, + 0x95, 0x66, 0xb2, 0x5e, 0xdf, 0xc3, 0xfd, 0x4c, 0x57, 0xee, 0x96, 0x5b, 0x17, 0xfe, 0xd7, 0xda, + 0xc2, 0xbd, 0xd0, 0x33, 0x5c, 0x0b, 0x65, 0x9f, 0x90, 0x51, 0x1c, 0xfa, 0x0d, 0x4c, 0xb4, 0xaa, + 0xa1, 0x60, 0xa9, 0x86, 0x0d, 0xa2, 0x6a, 0x15, 0xf6, 0x4c, 0xbd, 0xf3, 0xae, 0x27, 0x5b, 0x00, + 0x88, 0xe3, 0xb6, 0xf6, 0x06, 0x57, 0xb6, 0x72, 0x3c, 0x0a, 0xc7, 0x9b, 0x14, 0x79, 0x7e, 0x23, + 0x9f, 0x01, 0x08, 0x17, 0x31, 0xb5, 0x29, 0x9f, 0x82, 0xde, 0x8a, 0x5c, 0xc6, 0x44, 0x97, 0x15, + 0xcc, 0x38, 0x7b, 0xc5, 0x67, 0x02, 0x84, 0xa0, 0xcb, 0x3c, 0x30, 0x3a, 0x5e, 0x91, 0x5d, 0xa3, + 0xb7, 0xa0, 0x79, 0x47, 0x06, 0x26, 0x15, 0x34, 0xa3, 0x2c, 0x53, 0x16, 0xce, 0xd8, 0xf4, 0xf4, + 0x7e, 0xc9, 0xb1, 0x63, 0x48, 0x33, 0xaf, 0xa4, 0x96, 0xc7, 0xe2, 0x98, 0xd1, 0x26, 0x8b, 0x7c, + 0xe4, 0x86, 0xbe, 0x16, 0x4b, 0x74, 0x15, 0xfa, 0x14, 0x56, 0x9f, 0xec, 0x56, 0xd6, 0x63, 0x9d, + 0xea, 0xa3, 0x09, 0x2c, 0x7e, 0x22, 0xe4, 0xee, 0x26, 0x3c, 0x5a, 0x85, 0x23, 0x06, 0x7f, 0x1a, + 0x1c, 0xcd, 0xd9, 0x47, 0x4b, 0xb5, 0x57, 0x88, 0xe8, 0xb3, 0x00, 0x18, 0x5e, 0xb7, 0xcc, 0xb8, + 0x7a, 0x64, 0xa6, 0xad, 0xb7, 0x86, 0x0f, 0xa3, 0xb7, 0x8e, 0x1c, 0x4a, 0x6f, 0xb9, 0x0f, 0xa5, + 0xb7, 0xd0, 0x65, 0xe8, 0x26, 0x54, 0xa6, 0x55, 0x12, 0xf8, 0xe2, 0x73, 0x10, 0x76, 0x46, 0x7d, + 0xd3, 0xe7, 0x7a, 0x42, 0x66, 0x98, 0x31, 0x0f, 0x73, 0xde, 0xb9, 0xbd, 0x09, 0x44, 0xcb, 0x1f, + 0x2d, 0xc1, 0xa3, 0x06, 0x2e, 0x60, 0xc3, 0x50, 0x2b, 0x45, 0x89, 0x8f, 0x7a, 0x12, 0xf0, 0x30, + 0xc8, 0x53, 0xcf, 0x69, 0xc8, 0x02, 0x63, 0xe8, 0x6f, 0xba, 0x71, 0x39, 0x41, 0x37, 0x60, 0x20, + 0x8f, 0x4b, 0x98, 0xe2, 0xbc, 0xc4, 0x75, 0x38, 0xdf, 0x44, 0xf4, 0xf6, 0x81, 0x38, 0x61, 0x79, + 0x8b, 0x96, 0xb3, 0x8d, 0xfb, 0x06, 0x9c, 0xcc, 0xab, 0x44, 0xce, 0x95, 0xba, 0x01, 0xc3, 0x3e, + 0x80, 0x4f, 0xd8, 0xee, 0x1d, 0xc8, 0x2d, 0xed, 0x7b, 0xc5, 0xe5, 0x01, 0x7e, 0x47, 0xe4, 0x2b, + 0x00, 0x7d, 0xcb, 0x2a, 0xe9, 0xb3, 0x65, 0xff, 0x03, 0x47, 0x4a, 0x72, 0x0e, 0x97, 0xa4, 0x82, + 0x5a, 0xa2, 0xd8, 0xb0, 0x5a, 0xd7, 0xc7, 0x64, 0x69, 0x26, 0x42, 0xa7, 0xe1, 0xa8, 0x81, 0x75, + 0xcd, 0xa0, 0x52, 0x41, 0xc5, 0xa5, 0x3c, 0x09, 0x38, 0xc3, 0xce, 0xa8, 0x57, 0x1c, 0xe1, 0xc2, + 0x34, 0x93, 0xa1, 0x8b, 0xf0, 0x98, 0x65, 0xc4, 0x93, 0x62, 0xdb, 0xba, 0x98, 0x2d, 0xe2, 0x3a, + 0x9e, 0x42, 0xee, 0x11, 0xd9, 0x76, 0x43, 0x3f, 0x8f, 0x93, 0x37, 0xef, 0x12, 0xc5, 0x65, 0x34, + 0x01, 0xdd, 0x14, 0x57, 0xe4, 0x0a, 0x65, 0x55, 0xe6, 0x15, 0xad, 0xd3, 0x01, 0xe6, 0x8e, 0x1f, + 0x3a, 0xab, 0x6a, 0x9e, 0x8f, 0x3e, 0xd1, 0xbc, 0x44, 0x61, 0xe8, 0xcb, 0x63, 0xa2, 0x18, 0x2a, + 0xfb, 0x0f, 0x0e, 0xf8, 0x38, 0xd3, 0x16, 0x11, 0x0a, 0x42, 0x8f, 0xfd, 0x98, 0x03, 0x23, 0x61, + 0x10, 0xf5, 0x88, 0xcd, 0x33, 0xba, 0x06, 0xdd, 0xec, 0xa1, 0x70, 0x4a, 0xbe, 0xe9, 0x99, 0x9e, + 0xc5, 0xda, 0x49, 0x4c, 0x58, 0x66, 0xbe, 0xa9, 0x0a, 0x35, 0xea, 0xa2, 0x05, 0x84, 0x6e, 0x42, + 0x5f, 0xcb, 0x76, 0x64, 0x95, 0xc1, 0xdc, 0x60, 0xb8, 0x89, 0x67, 0x00, 0x1c, 0xbc, 0x15, 0x12, + 0xcd, 0x40, 0xa8, 0x6d, 0x54, 0xb0, 0x21, 0x99, 0xcb, 0x47, 0xc0, 0xcb, 0x1a, 0x37, 0xd8, 0x71, + 0x83, 0x1b, 0x2a, 0xde, 0xb0, 0xab, 0xcc, 0xcb, 0xac, 0x4d, 0x49, 0xdb, 0xf0, 0x19, 0x3d, 0x8c, + 0xe1, 0x33, 0xf6, 0x8f, 0x86, 0x4f, 0x12, 0x7a, 0x8a, 0x98, 0xb2, 0xf9, 0x61, 0x8d, 0xb1, 0xbe, + 0x07, 0x90, 0x78, 0xa4, 0xc8, 0x0f, 0x68, 0x05, 0x42, 0xab, 0x3a, 0x09, 0xa6, 0xd6, 0x84, 0x18, + 0x74, 0xe8, 0x78, 0x39, 0x42, 0x06, 0xd3, 0xe0, 0x0c, 0xf4, 0xb5, 0xa4, 0xd5, 0xac, 0xb8, 0xdb, + 0xb8, 0x6e, 0x55, 0xa7, 0x79, 0x89, 0x8e, 0xc1, 0xe1, 0x9a, 0x5c, 0xaa, 0xda, 0x85, 0xc9, 0x0f, + 0xb3, 0x8e, 0x97, 0x41, 0x70, 0x0e, 0xfa, 0x3b, 0x33, 0x37, 0x88, 0xff, 0x15, 0x97, 0x67, 0xd8, + 0xef, 0x8e, 0xbc, 0x0f, 0xe0, 0x48, 0x6b, 0x45, 0xa0, 0x24, 0x1c, 0x56, 0x29, 0x2e, 0x93, 0x00, + 0x1f, 0xa8, 0xb1, 0x81, 0x6a, 0x49, 0xe4, 0xbe, 0xe8, 0x22, 0x74, 0xf3, 0xb5, 0x3b, 0xe0, 0x60, + 0x28, 0x81, 0x0e, 0x94, 0x94, 0xa9, 0x64, 0x0f, 0xd6, 0xb2, 0x8b, 0xdc, 0x86, 0xa3, 0x0b, 0x6c, + 0xee, 0x1d, 0x7c, 0x4d, 0x88, 0x42, 0x7f, 0x41, 0x56, 0x4b, 0x92, 0x5a, 0x68, 0xce, 0x47, 0xd6, + 0xbb, 0x1e, 0x71, 0xcc, 0x94, 0x2f, 0x15, 0xec, 0xb9, 0x37, 0xf5, 0x07, 0x80, 0xc7, 0xbb, 0x6e, + 0x07, 0x28, 0x08, 0x27, 0x16, 0x53, 0x59, 0x49, 0xcc, 0xac, 0x4b, 0xe9, 0x35, 0x71, 0x25, 0x91, + 0x95, 0x16, 0x52, 0xe9, 0xc4, 0xf5, 0xe5, 0xac, 0x7f, 0x08, 0xfd, 0x1b, 0x4e, 0x76, 0xe8, 0xd2, + 0x6b, 0xa2, 0x94, 0x14, 0x53, 0x89, 0x6c, 0xca, 0x0f, 0x50, 0x08, 0x06, 0xbb, 0xa8, 0xc5, 0xd4, + 0xfa, 0x72, 0x22, 0x99, 0xf2, 0x3b, 0xd0, 0x24, 0x3c, 0xde, 0xa1, 0xcf, 0x64, 0x13, 0xd9, 0xeb, + 0x19, 0xbf, 0x13, 0x9d, 0x80, 0xff, 0xea, 0x50, 0x89, 0xa9, 0xc4, 0x82, 0xdf, 0x85, 0xce, 0xc0, + 0xf0, 0x1e, 0x45, 0x3a, 0x25, 0x8a, 0x4b, 0xab, 0x8b, 0xd2, 0xda, 0xfc, 0x95, 0x54, 0x32, 0x9b, + 0xf1, 0x0f, 0x77, 0xb1, 0x9a, 0x17, 0xd7, 0xae, 0xa6, 0x56, 0xb9, 0x71, 0x6a, 0x35, 0x99, 0xca, + 0xf8, 0xdd, 0xd3, 0xdf, 0x42, 0xe8, 0x4c, 0xac, 0x2f, 0xa1, 0x3f, 0x01, 0x74, 0xf3, 0x8d, 0x05, + 0x0d, 0xb0, 0xd6, 0x04, 0xcf, 0xf7, 0x65, 0x6b, 0xad, 0x7c, 0x1f, 0x83, 0xc6, 0xf7, 0x81, 0x95, + 0xc2, 0x4b, 0x77, 0x94, 0x18, 0xc1, 0x4a, 0xd5, 0xc0, 0x65, 0x4c, 0x6e, 0xc5, 0x72, 0x32, 0x51, + 0x95, 0x58, 0x95, 0x60, 0xe3, 0x42, 0xa7, 0x8a, 0x50, 0xb9, 0x92, 0x97, 0x8d, 0x3c, 0xd7, 0xd6, + 0x30, 0x89, 0xa9, 0x5a, 0x8c, 0xdf, 0x82, 0xc4, 0x36, 0x0c, 0x95, 0xe2, 0xbb, 0x3f, 0xfd, 0x7a, + 0xdf, 0xf1, 0x4a, 0xe4, 0x92, 0xf5, 0xea, 0x19, 0x6f, 0xd6, 0x02, 0x89, 0xbf, 0x6b, 0x0f, 0x08, + 0xa1, 0x29, 0xdc, 0x6c, 0x7f, 0x27, 0x23, 0xb3, 0x60, 0x0a, 0xfd, 0x0e, 0xa0, 0x73, 0x11, 0x53, + 0x74, 0x76, 0xff, 0xad, 0x91, 0x53, 0x8e, 0xf6, 0xbb, 0x5e, 0x46, 0x3e, 0x01, 0x0f, 0xbe, 0x73, + 0x98, 0x9c, 0xc5, 0xee, 0x9c, 0xcb, 0x5a, 0x45, 0xa5, 0x5a, 0x0f, 0xda, 0xb6, 0x41, 0x07, 0x73, + 0x03, 0xcb, 0x79, 0x46, 0xfc, 0x12, 0xfa, 0x7f, 0x37, 0xe2, 0xcf, 0xe5, 0xcb, 0x55, 0x9b, 0xe8, + 0x37, 0x00, 0x5d, 0x66, 0x93, 0xa2, 0x68, 0x1f, 0x7d, 0xcc, 0x59, 0x9f, 0xeb, 0xbb, 0xe3, 0x23, + 0x1f, 0xbe, 0x68, 0xda, 0x71, 0x14, 0x1b, 0x88, 0x36, 0xfa, 0xc0, 0x01, 0x8f, 0x58, 0x0b, 0x34, + 0x1a, 0x64, 0xcd, 0x0e, 0x5e, 0xe8, 0xcf, 0xd8, 0x22, 0xfe, 0xe5, 0x0b, 0xaa, 0xef, 0xab, 0xc1, + 0xf4, 0xc1, 0xea, 0xbb, 0xc3, 0x66, 0xd3, 0xac, 0xf7, 0x9f, 0x01, 0x74, 0xf3, 0x99, 0xba, 0x4f, + 0xa3, 0xb7, 0x0d, 0xde, 0xe0, 0x84, 0xc0, 0x3f, 0xae, 0x08, 0xf6, 0xc7, 0x15, 0x21, 0x55, 0xd6, + 0x69, 0x3d, 0x72, 0xef, 0x05, 0x71, 0x9e, 0x99, 0x3a, 0x50, 0x69, 0xcf, 0x82, 0xa9, 0xe0, 0xcd, + 0xed, 0x2d, 0xe0, 0xf8, 0x71, 0x0b, 0x44, 0x7a, 0xb1, 0xe3, 0xff, 0xbc, 0x8f, 0xb7, 0x00, 0x68, + 0x6c, 0x81, 0x68, 0xbf, 0xff, 0xd4, 0x77, 0x7f, 0x08, 0x38, 0x2e, 0x83, 0xf9, 0xfb, 0xe0, 0xe1, + 0xdc, 0x70, 0x52, 0xbc, 0xbe, 0xb0, 0xfc, 0x68, 0x27, 0x34, 0xf4, 0x78, 0x27, 0x34, 0xf4, 0x74, + 0x27, 0x04, 0xde, 0x6b, 0x84, 0xc0, 0xd7, 0x8d, 0x10, 0x78, 0xd0, 0x08, 0x81, 0x47, 0x8d, 0x10, + 0xf8, 0xa5, 0x11, 0x02, 0x4f, 0x1a, 0xa1, 0xa1, 0xa7, 0x8d, 0x10, 0xb8, 0xb7, 0x1b, 0x1a, 0xda, + 0xde, 0x0d, 0x81, 0x47, 0xbb, 0xa1, 0xa1, 0xc7, 0xbb, 0xa1, 0xa1, 0x37, 0xaf, 0x15, 0x35, 0xfd, + 0x76, 0x51, 0xa8, 0x69, 0xe6, 0x26, 0x6c, 0xc8, 0x42, 0x95, 0xc4, 0xd9, 0x85, 0xf9, 0x42, 0x18, + 0xd3, 0x0d, 0xad, 0xa6, 0xe6, 0xb1, 0x11, 0xb3, 0xd5, 0x71, 0x3d, 0x57, 0xd4, 0xe2, 0xf8, 0x0e, + 0xb5, 0x3f, 0x2d, 0x75, 0xf9, 0xc2, 0x94, 0x73, 0xb3, 0xd4, 0xfc, 0xef, 0xef, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x35, 0xf8, 0xf0, 0x21, 0xa3, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/secret_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/secret_policy/public_crudapi.vesapi.go index 050558d38..e7c2ab6c9 100644 --- a/pbgo/extschema/schema/secret_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/secret_policy/public_crudapi.vesapi.go @@ -2596,10 +2596,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2656,10 +2660,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2718,10 +2726,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/secret_policy/public_custom_policy_api.pb.go b/pbgo/extschema/schema/secret_policy/public_custom_policy_api.pb.go index 91fda9f6c..c85cc1465 100644 --- a/pbgo/extschema/schema/secret_policy/public_custom_policy_api.pb.go +++ b/pbgo/extschema/schema/secret_policy/public_custom_policy_api.pb.go @@ -595,68 +595,71 @@ func init() { } var fileDescriptor_92490649efc01524 = []byte{ - // 970 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0x4f, 0x6f, 0x1b, 0x45, - 0x14, 0xf7, 0xd8, 0x8d, 0x93, 0x8c, 0xd3, 0xb4, 0x1d, 0xaa, 0x68, 0x71, 0xa3, 0x95, 0xb5, 0x07, - 0x6a, 0xa0, 0xde, 0xad, 0xd2, 0x0b, 0x04, 0x54, 0x68, 0xd2, 0x28, 0x04, 0xb5, 0x6a, 0xd9, 0x20, - 0x21, 0x71, 0xc0, 0x1a, 0xef, 0x3e, 0x6f, 0x87, 0xae, 0x3d, 0xcb, 0xce, 0xd8, 0xc5, 0x42, 0x91, - 0x50, 0xbf, 0x00, 0x20, 0xbe, 0x04, 0xdf, 0x00, 0x89, 0x5c, 0x22, 0x2e, 0x45, 0x1c, 0x50, 0x54, - 0x84, 0x14, 0x71, 0x22, 0x1b, 0x0e, 0x70, 0xeb, 0x47, 0xa8, 0x76, 0x66, 0xed, 0xf8, 0x4f, 0xe5, - 0xfc, 0xb9, 0xbd, 0x37, 0xef, 0xbd, 0xdf, 0x7b, 0xbf, 0x79, 0x33, 0x6f, 0x06, 0xaf, 0x76, 0x41, - 0xd8, 0x8c, 0x3b, 0xc2, 0x7b, 0x04, 0x2d, 0xea, 0x08, 0xf0, 0x62, 0x90, 0xf5, 0x88, 0x87, 0xcc, - 0xeb, 0x39, 0x51, 0xa7, 0x11, 0x32, 0xaf, 0xee, 0x75, 0x84, 0xe4, 0xad, 0x6c, 0xb1, 0x4e, 0x23, - 0x66, 0x47, 0x31, 0x97, 0x9c, 0x5c, 0xd3, 0xb1, 0xb6, 0x8e, 0xb5, 0x47, 0x62, 0xcb, 0xb5, 0x80, - 0xc9, 0x47, 0x9d, 0x86, 0xed, 0xf1, 0x96, 0x13, 0xf0, 0x80, 0x3b, 0x2a, 0xa6, 0xd1, 0x69, 0x2a, - 0x4d, 0x29, 0x4a, 0xd2, 0x58, 0xe5, 0xe5, 0x80, 0xf3, 0x20, 0x04, 0x87, 0x46, 0xcc, 0xa1, 0xed, - 0x36, 0x97, 0x54, 0x32, 0xde, 0x16, 0x99, 0xb5, 0x3c, 0x5a, 0x25, 0xc4, 0x31, 0x8f, 0xfb, 0xb6, - 0x6b, 0xa3, 0x36, 0x1e, 0x0d, 0x07, 0x56, 0xa7, 0xd1, 0xe3, 0x8d, 0x2f, 0xc1, 0x93, 0x99, 0xe7, - 0xf5, 0x69, 0x9e, 0xb2, 0x17, 0x41, 0x1f, 0xf2, 0xf5, 0x51, 0xc7, 0x61, 0xd3, 0xf2, 0xa8, 0xa9, - 0x4b, 0x43, 0xe6, 0x53, 0x09, 0x99, 0xd5, 0x1a, 0xb3, 0x82, 0x80, 0x76, 0x77, 0xac, 0xde, 0xca, - 0x98, 0x0f, 0x83, 0x27, 0xf5, 0x11, 0x0f, 0x6b, 0x03, 0x5f, 0xd9, 0xe6, 0x4d, 0x79, 0x17, 0x42, - 0x90, 0xe0, 0xc2, 0x57, 0x1d, 0x10, 0x92, 0x2c, 0xe3, 0xf9, 0x36, 0x6d, 0x81, 0x88, 0xa8, 0x07, - 0x06, 0xaa, 0xa0, 0xea, 0xbc, 0x7b, 0xbc, 0x40, 0x08, 0xbe, 0x90, 0x2a, 0x46, 0x5e, 0x19, 0x94, - 0x6c, 0xdd, 0xc0, 0x64, 0x18, 0x46, 0x44, 0xbc, 0x2d, 0x80, 0x2c, 0xe1, 0xa2, 0x90, 0x54, 0x76, - 0x84, 0x02, 0x29, 0xb8, 0x99, 0x66, 0xad, 0xe1, 0x45, 0x17, 0x3c, 0xde, 0x85, 0xf8, 0xfc, 0x19, - 0xdf, 0xc4, 0x97, 0x06, 0x18, 0x27, 0xa4, 0xdb, 0xc1, 0x57, 0xee, 0x31, 0x21, 0x1f, 0xaa, 0xcd, - 0x3f, 0x5d, 0xc6, 0x8f, 0xf1, 0x42, 0x76, 0x3e, 0x53, 0x8c, 0x2c, 0xf3, 0xda, 0xf5, 0xbf, 0x77, - 0x51, 0x91, 0x7a, 0x92, 0x75, 0xe1, 0x97, 0xff, 0xf7, 0x0a, 0x46, 0xbc, 0xe4, 0x66, 0xaa, 0x3b, - 0xeb, 0x2b, 0xea, 0xbe, 0x5b, 0xa0, 0x61, 0xe8, 0x96, 0x74, 0xf0, 0x76, 0x1a, 0x6b, 0xfd, 0x3a, - 0x83, 0x97, 0x86, 0xf3, 0xeb, 0x6a, 0xb7, 0x24, 0xb4, 0xd2, 0x8a, 0x25, 0xb4, 0x69, 0x5b, 0x1a, - 0x45, 0x55, 0x41, 0xa6, 0x9d, 0x7d, 0x3b, 0xc8, 0x65, 0x5c, 0xe8, 0x30, 0xdf, 0x28, 0xa8, 0xa5, - 0x54, 0x24, 0x15, 0x5c, 0xf2, 0x41, 0x78, 0x31, 0x53, 0xfd, 0x36, 0x4a, 0xca, 0x32, 0xbc, 0x44, - 0xca, 0x78, 0xce, 0x67, 0x82, 0x36, 0x42, 0xf0, 0x8d, 0x85, 0x0a, 0xaa, 0xce, 0xb9, 0x03, 0x9d, - 0x7c, 0x86, 0x8b, 0x21, 0x6d, 0x40, 0x28, 0x8c, 0x0b, 0x95, 0x42, 0xb5, 0xb4, 0xf2, 0x81, 0x3d, - 0xe5, 0x76, 0xda, 0xaf, 0xa6, 0x67, 0xdf, 0x53, 0x08, 0x1b, 0x6d, 0x19, 0xf7, 0xdc, 0x0c, 0x8e, - 0x34, 0x71, 0x69, 0xe8, 0x42, 0x1a, 0x58, 0xa1, 0xdf, 0x3d, 0x0f, 0xfa, 0x9d, 0x63, 0x18, 0x9d, - 0x62, 0x18, 0x98, 0xbc, 0x8f, 0xe7, 0x5a, 0x20, 0xa9, 0x4f, 0x25, 0x35, 0x2e, 0x56, 0x50, 0xb5, - 0xb4, 0x52, 0x19, 0x4b, 0xf2, 0x40, 0xdd, 0xd7, 0x4d, 0x90, 0xf7, 0x41, 0xd2, 0x4f, 0x7b, 0x11, - 0xb8, 0x83, 0x08, 0xf2, 0x00, 0x5f, 0x12, 0x3d, 0x21, 0xa1, 0x55, 0x1f, 0x80, 0x2c, 0x2a, 0x90, - 0x37, 0xc6, 0x40, 0xb6, 0x95, 0xd7, 0x24, 0xd4, 0xa2, 0x0e, 0xbf, 0xdf, 0x07, 0x5c, 0xc7, 0x73, - 0x01, 0xc8, 0xba, 0x88, 0xc0, 0x33, 0x66, 0x15, 0x52, 0x75, 0x2a, 0xe7, 0x4d, 0x90, 0xdb, 0x11, - 0x78, 0x0a, 0x6b, 0x36, 0xd0, 0x4a, 0xf9, 0x5d, 0x5c, 0x1a, 0xda, 0xd2, 0xb4, 0xe7, 0x8f, 0xa1, - 0x97, 0x9d, 0x8f, 0x54, 0x24, 0x57, 0xf1, 0x4c, 0x97, 0x86, 0x9d, 0xfe, 0xd1, 0xd0, 0xca, 0x6a, - 0xfe, 0x1d, 0x54, 0xbe, 0x8d, 0x2f, 0x8f, 0xef, 0xd7, 0x59, 0xe2, 0xad, 0x1f, 0x10, 0x26, 0x93, - 0x7d, 0x20, 0x5b, 0x78, 0x86, 0x49, 0x68, 0xa5, 0x37, 0x2e, 0xed, 0xe3, 0xad, 0x73, 0xf4, 0xd1, - 0xd5, 0x08, 0xe4, 0x26, 0x2e, 0xea, 0x41, 0x6c, 0xe4, 0x15, 0x96, 0x31, 0x86, 0xb5, 0x91, 0x1a, - 0xd5, 0x7e, 0x64, 0x7e, 0x2b, 0x3f, 0xcf, 0xe0, 0xf9, 0x75, 0xf5, 0x98, 0xdc, 0x79, 0xb8, 0x45, - 0x9e, 0x23, 0xbc, 0xa0, 0xe7, 0x8f, 0xce, 0x41, 0xec, 0xa9, 0xc5, 0x4c, 0x4c, 0xbd, 0xb2, 0x73, - 0x6a, 0x7f, 0x5d, 0xbc, 0x45, 0x93, 0x67, 0xc6, 0xd5, 0x2e, 0x88, 0x1a, 0xe3, 0x35, 0xed, 0x2c, - 0x6a, 0x4f, 0x62, 0x26, 0xe1, 0xe9, 0x9f, 0xff, 0xfe, 0x98, 0x5f, 0xb7, 0x6e, 0x67, 0x2f, 0x9e, - 0x33, 0xb8, 0xba, 0xc2, 0xf9, 0x66, 0x20, 0xef, 0x8c, 0x3d, 0x0a, 0xca, 0xb2, 0xe3, 0x08, 0xde, - 0x94, 0x7a, 0x96, 0xac, 0xa2, 0xb7, 0xc8, 0xef, 0x08, 0x5f, 0xcc, 0xc6, 0x5c, 0xc6, 0xea, 0xed, - 0xa9, 0x55, 0x8e, 0x8e, 0xd5, 0xf2, 0x8d, 0xd3, 0x39, 0x67, 0x7c, 0xbe, 0x98, 0xca, 0xe7, 0x43, - 0xeb, 0xbd, 0xf3, 0xf0, 0x89, 0x75, 0x92, 0x94, 0xcc, 0x5f, 0x08, 0xe3, 0xe3, 0x33, 0x70, 0x42, - 0x7f, 0x26, 0x26, 0xf6, 0x09, 0xfd, 0x99, 0x3c, 0x5c, 0x56, 0x33, 0x79, 0x66, 0xbc, 0x36, 0xc6, - 0x27, 0x06, 0xea, 0x2b, 0x3a, 0x5b, 0x64, 0xf3, 0x4c, 0x74, 0x42, 0x26, 0x8e, 0xa9, 0x0d, 0xbf, - 0x0d, 0x3b, 0xe5, 0x9b, 0x7b, 0xbb, 0xa8, 0xf0, 0x7c, 0x17, 0x59, 0xd3, 0xea, 0xd3, 0x23, 0xe2, - 0xe9, 0x1f, 0x46, 0xfe, 0x23, 0xb4, 0xf6, 0x1d, 0xda, 0x3f, 0x34, 0x73, 0x07, 0x87, 0x66, 0xee, - 0xc5, 0xa1, 0x89, 0xbe, 0x4d, 0x4c, 0xf4, 0x53, 0x62, 0xa2, 0xdf, 0x12, 0x13, 0xed, 0x27, 0x26, - 0x3a, 0x48, 0x4c, 0xf4, 0x4f, 0x62, 0xa2, 0xff, 0x12, 0x33, 0xf7, 0x22, 0x31, 0xd1, 0xf7, 0x47, - 0x66, 0x6e, 0xef, 0xc8, 0x44, 0xfb, 0x47, 0x66, 0xee, 0xe0, 0xc8, 0xcc, 0x7d, 0xfe, 0x49, 0xc0, - 0xa3, 0xc7, 0x81, 0xdd, 0xe5, 0xa1, 0x84, 0x38, 0xa6, 0x76, 0x47, 0x38, 0x4a, 0x68, 0xf2, 0xb8, - 0x55, 0x8b, 0x62, 0xde, 0x65, 0x3e, 0xc4, 0xb5, 0xbe, 0xd9, 0x89, 0x1a, 0x01, 0x77, 0xe0, 0x6b, - 0xd9, 0xff, 0x8b, 0xbc, 0xe2, 0x4b, 0xd2, 0x28, 0xaa, 0xef, 0xc0, 0xad, 0x97, 0x01, 0x00, 0x00, - 0xff, 0xff, 0xd4, 0x55, 0xf1, 0xcf, 0xc1, 0x09, 0x00, 0x00, + // 1019 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcf, 0x6b, 0x24, 0xc5, + 0x17, 0x9f, 0x9a, 0xd9, 0x4c, 0x92, 0x9a, 0x6c, 0x76, 0xb7, 0xf8, 0x12, 0xfa, 0x3b, 0x1b, 0x9a, + 0xa1, 0x0f, 0xee, 0xa8, 0x99, 0xee, 0x25, 0x8b, 0xa0, 0x51, 0x56, 0x37, 0xd9, 0x10, 0x23, 0x1b, + 0x76, 0xed, 0x08, 0x82, 0x97, 0xa1, 0xa6, 0xfb, 0xcd, 0xa4, 0xdc, 0xee, 0xae, 0xb6, 0xab, 0x7a, + 0x76, 0x07, 0x09, 0xc8, 0xe2, 0x51, 0x50, 0x11, 0x11, 0xbc, 0x0b, 0xfe, 0x0d, 0xe6, 0x12, 0xbc, + 0xe8, 0x49, 0x82, 0x5e, 0x82, 0x27, 0x33, 0xf1, 0xa0, 0x78, 0xd9, 0x3f, 0x41, 0xba, 0xba, 0x67, + 0x32, 0x3f, 0xc2, 0xe4, 0x07, 0x78, 0xab, 0xd7, 0x9f, 0xf7, 0x3e, 0xef, 0xd5, 0xa7, 0x5e, 0xbd, + 0x6a, 0xbc, 0xd2, 0x06, 0x61, 0x32, 0x6e, 0x09, 0x67, 0x07, 0x7c, 0x6a, 0x09, 0x70, 0x22, 0x90, + 0xf5, 0x90, 0x7b, 0xcc, 0xe9, 0x58, 0x61, 0xdc, 0xf0, 0x98, 0x53, 0x77, 0x62, 0x21, 0xb9, 0x9f, + 0x7d, 0xac, 0xd3, 0x90, 0x99, 0x61, 0xc4, 0x25, 0x27, 0x37, 0xd3, 0x58, 0x33, 0x8d, 0x35, 0x87, + 0x62, 0xcb, 0xb5, 0x16, 0x93, 0x3b, 0x71, 0xc3, 0x74, 0xb8, 0x6f, 0xb5, 0x78, 0x8b, 0x5b, 0x2a, + 0xa6, 0x11, 0x37, 0x95, 0xa5, 0x0c, 0xb5, 0x4a, 0xb9, 0xca, 0x8b, 0x2d, 0xce, 0x5b, 0x1e, 0x58, + 0x34, 0x64, 0x16, 0x0d, 0x02, 0x2e, 0xa9, 0x64, 0x3c, 0x10, 0x19, 0x5a, 0x1e, 0xae, 0x12, 0xa2, + 0x88, 0x47, 0x3d, 0xec, 0xe6, 0x30, 0xc6, 0xc3, 0xc1, 0xc0, 0xea, 0xa4, 0xed, 0xf1, 0xc6, 0x87, + 0xe0, 0xc8, 0xcc, 0xf3, 0xd6, 0x24, 0x4f, 0xd9, 0x09, 0xa1, 0x47, 0xf9, 0xff, 0x61, 0xc7, 0x41, + 0x68, 0x71, 0x18, 0x6a, 0x53, 0x8f, 0xb9, 0x54, 0x42, 0x86, 0x1a, 0x23, 0x28, 0x08, 0x08, 0xda, + 0x23, 0xf5, 0x56, 0x46, 0x7c, 0x18, 0x3c, 0xa9, 0x0f, 0x79, 0x18, 0xeb, 0xf8, 0xc6, 0x36, 0x6f, + 0xca, 0xfb, 0xe0, 0x81, 0x04, 0x1b, 0x3e, 0x8a, 0x41, 0x48, 0xb2, 0x88, 0x67, 0x03, 0xea, 0x83, + 0x08, 0xa9, 0x03, 0x1a, 0xaa, 0xa0, 0xea, 0xac, 0x7d, 0xf2, 0x81, 0x10, 0x7c, 0x25, 0x31, 0xb4, + 0xbc, 0x02, 0xd4, 0xda, 0x58, 0xc2, 0x64, 0x90, 0x46, 0x84, 0x3c, 0x10, 0x40, 0x16, 0x70, 0x51, + 0x48, 0x2a, 0x63, 0xa1, 0x48, 0x0a, 0x76, 0x66, 0x19, 0xab, 0x78, 0xde, 0x06, 0x87, 0xb7, 0x21, + 0xba, 0x7c, 0xc6, 0x17, 0xf1, 0xb5, 0x3e, 0xc7, 0x19, 0xe9, 0x76, 0xf1, 0x8d, 0x07, 0x4c, 0xc8, + 0x47, 0x4a, 0xfc, 0xf3, 0x65, 0x7c, 0x07, 0xcf, 0x65, 0xfd, 0x99, 0x70, 0x64, 0x99, 0x57, 0x6f, + 0xfd, 0xbe, 0x87, 0x8a, 0xd4, 0x91, 0xac, 0x0d, 0x3f, 0xfc, 0xbd, 0x5f, 0xd0, 0xa2, 0x05, 0x3b, + 0x33, 0xed, 0x69, 0x57, 0x6d, 0xdd, 0xb5, 0x0b, 0xd4, 0xf3, 0xec, 0x52, 0x1a, 0xbc, 0x9d, 0xc4, + 0x1a, 0x3f, 0x4e, 0xe1, 0x85, 0xc1, 0xfc, 0x69, 0xb5, 0x9b, 0x12, 0xfc, 0xa4, 0x62, 0x09, 0x01, + 0x0d, 0xa4, 0x56, 0x54, 0x15, 0x64, 0xd6, 0xc5, 0xe5, 0x20, 0xd7, 0x71, 0x21, 0x66, 0xae, 0x56, + 0x50, 0x9f, 0x92, 0x25, 0xa9, 0xe0, 0x92, 0x0b, 0xc2, 0x89, 0x98, 0x3a, 0x6f, 0xad, 0xa4, 0x90, + 0xc1, 0x4f, 0xa4, 0x8c, 0x67, 0x5c, 0x26, 0x68, 0xc3, 0x03, 0x57, 0x9b, 0xab, 0xa0, 0xea, 0x8c, + 0xdd, 0xb7, 0xc9, 0xfb, 0xb8, 0xe8, 0xd1, 0x06, 0x78, 0x42, 0xbb, 0x52, 0x29, 0x54, 0x4b, 0xcb, + 0x6f, 0x9a, 0x13, 0x6e, 0xa7, 0x79, 0xfa, 0xf6, 0xcc, 0x07, 0x8a, 0x61, 0x3d, 0x90, 0x51, 0xc7, + 0xce, 0xe8, 0x48, 0x13, 0x97, 0x06, 0x2e, 0xa4, 0x86, 0x15, 0xfb, 0xfd, 0xcb, 0xb0, 0xdf, 0x3b, + 0xa1, 0x49, 0x53, 0x0c, 0x12, 0x93, 0x37, 0xf0, 0x8c, 0x0f, 0x92, 0xba, 0x54, 0x52, 0xed, 0x6a, + 0x05, 0x55, 0x4b, 0xcb, 0x95, 0x91, 0x24, 0x0f, 0xd5, 0x7d, 0xdd, 0x00, 0xb9, 0x05, 0x92, 0xbe, + 0xd7, 0x09, 0xc1, 0xee, 0x47, 0x90, 0x87, 0xf8, 0x9a, 0xe8, 0x08, 0x09, 0x7e, 0xbd, 0x4f, 0x32, + 0xaf, 0x48, 0x5e, 0x18, 0x21, 0xd9, 0x56, 0x5e, 0xe3, 0x54, 0xf3, 0x69, 0xf8, 0x56, 0x8f, 0x70, + 0x0d, 0xcf, 0xb4, 0x40, 0xd6, 0x45, 0x08, 0x8e, 0x36, 0xad, 0x98, 0xaa, 0x13, 0xf7, 0xbc, 0x01, + 0x72, 0x3b, 0x04, 0x47, 0x71, 0x4d, 0xb7, 0x52, 0xa3, 0xfc, 0x1a, 0x2e, 0x0d, 0x48, 0x9a, 0x9c, + 0xf9, 0x63, 0xe8, 0x64, 0xfd, 0x91, 0x2c, 0xc9, 0xff, 0xf0, 0x54, 0x9b, 0x7a, 0x71, 0xaf, 0x35, + 0x52, 0x63, 0x25, 0xff, 0x2a, 0x2a, 0xdf, 0xc5, 0xd7, 0x47, 0xf5, 0xba, 0x48, 0xbc, 0xf1, 0x25, + 0xc2, 0x64, 0xfc, 0x1c, 0xc8, 0x26, 0x9e, 0x62, 0x12, 0xfc, 0xe4, 0xc6, 0x25, 0xe7, 0x78, 0xe7, + 0x12, 0xe7, 0x68, 0xa7, 0x0c, 0xe4, 0x36, 0x2e, 0xa6, 0x83, 0x58, 0xcb, 0x2b, 0x2e, 0x6d, 0x84, + 0x6b, 0x3d, 0x01, 0x95, 0x1e, 0x99, 0xdf, 0xf2, 0x3f, 0x45, 0x3c, 0xbb, 0xa6, 0x1e, 0x93, 0x7b, + 0x8f, 0x36, 0xc9, 0x67, 0x79, 0x3c, 0x97, 0xce, 0x9f, 0x34, 0x07, 0x31, 0x27, 0x16, 0x33, 0x36, + 0xf5, 0xca, 0xd6, 0xb9, 0xfd, 0xd3, 0xe2, 0x8d, 0x6f, 0x51, 0xf7, 0x27, 0x6d, 0xab, 0xf9, 0xca, + 0x53, 0xa7, 0x26, 0xc0, 0x89, 0x23, 0xf0, 0x41, 0xec, 0xd4, 0x1a, 0x54, 0x30, 0xa7, 0x16, 0x0b, + 0x88, 0x96, 0x46, 0x21, 0x21, 0x69, 0xe0, 0xd2, 0xc8, 0x4d, 0xd1, 0x36, 0x88, 0x1a, 0xe3, 0xb5, + 0x34, 0x8d, 0xa8, 0x3d, 0x89, 0x98, 0x84, 0x67, 0xbf, 0xfd, 0xf9, 0x55, 0x7e, 0xcd, 0xb8, 0x9b, + 0xbd, 0x95, 0x56, 0xff, 0xd2, 0x0b, 0xeb, 0xe3, 0xfe, 0x7a, 0x77, 0xe4, 0x39, 0x51, 0xc8, 0xae, + 0x25, 0x78, 0x53, 0xa6, 0x53, 0x68, 0x05, 0xbd, 0x44, 0x3e, 0xcd, 0xe3, 0xab, 0xd9, 0x80, 0xcc, + 0xf4, 0x78, 0x79, 0xe2, 0xfe, 0x86, 0x07, 0x72, 0x79, 0xe9, 0x7c, 0xce, 0x99, 0x12, 0xdf, 0xfc, + 0x47, 0x4a, 0xbc, 0x65, 0xbc, 0x7e, 0x19, 0x25, 0xa2, 0xb4, 0xbc, 0x44, 0x86, 0xaf, 0xf3, 0x18, + 0x9f, 0xf4, 0xdd, 0x19, 0x3d, 0x31, 0xf6, 0x4a, 0x9c, 0xd1, 0x13, 0xe3, 0x0d, 0x6d, 0x7c, 0x97, + 0x28, 0x61, 0x9f, 0xae, 0x84, 0xcf, 0x03, 0x26, 0xf9, 0x04, 0x31, 0x7a, 0x0e, 0x23, 0x7a, 0x44, + 0x40, 0x5d, 0x25, 0xc7, 0x26, 0xd9, 0xb8, 0x90, 0x1c, 0x1e, 0x13, 0x27, 0xd2, 0x0c, 0xbe, 0x67, + 0xbb, 0xe5, 0xdb, 0xfb, 0x7b, 0xa8, 0xf0, 0xeb, 0x1e, 0x32, 0x26, 0xed, 0x2f, 0x1d, 0x6b, 0xcf, + 0x7e, 0xd1, 0xf2, 0x6f, 0xa3, 0xd5, 0xcf, 0xd1, 0xc1, 0x91, 0x9e, 0x3b, 0x3c, 0xd2, 0x73, 0xcf, + 0x8f, 0x74, 0xf4, 0x49, 0x57, 0x47, 0xdf, 0x77, 0x75, 0xf4, 0x73, 0x57, 0x47, 0x07, 0x5d, 0x1d, + 0x1d, 0x76, 0x75, 0xf4, 0x47, 0x57, 0x47, 0x7f, 0x75, 0xf5, 0xdc, 0xf3, 0xae, 0x8e, 0xbe, 0x38, + 0xd6, 0x73, 0xfb, 0xc7, 0x3a, 0x3a, 0x38, 0xd6, 0x73, 0x87, 0xc7, 0x7a, 0xee, 0x83, 0x77, 0x5b, + 0x3c, 0x7c, 0xdc, 0x32, 0xdb, 0xdc, 0x93, 0x10, 0x45, 0xd4, 0x8c, 0x85, 0xa5, 0x16, 0x4d, 0x1e, + 0xf9, 0xb5, 0x30, 0xe2, 0x6d, 0xe6, 0x42, 0x54, 0xeb, 0xc1, 0x56, 0xd8, 0x68, 0x71, 0x0b, 0x9e, + 0xca, 0xde, 0xff, 0xd3, 0x29, 0xbf, 0x51, 0x8d, 0xa2, 0xfa, 0x85, 0xb9, 0xf3, 0x6f, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xbc, 0x79, 0x81, 0xa8, 0x75, 0x0a, 0x00, 0x00, } func (this *SoftDeleteRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/secret_policy/public_custom_policy_api.vesapi.go b/pbgo/extschema/schema/secret_policy/public_custom_policy_api.vesapi.go index 65a64b37a..6667cb606 100644 --- a/pbgo/extschema/schema/secret_policy/public_custom_policy_api.vesapi.go +++ b/pbgo/extschema/schema/secret_policy/public_custom_policy_api.vesapi.go @@ -1249,10 +1249,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/secret_policy_rule/crudapi/api.vesapi.go b/pbgo/extschema/schema/secret_policy_rule/crudapi/api.vesapi.go index 47e86d62d..39978ad89 100644 --- a/pbgo/extschema/schema/secret_policy_rule/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/secret_policy_rule/crudapi/api.vesapi.go @@ -3179,10 +3179,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/secret_policy_rule/object.pb.go b/pbgo/extschema/schema/secret_policy_rule/object.pb.go index cdca65870..724298d6a 100644 --- a/pbgo/extschema/schema/secret_policy_rule/object.pb.go +++ b/pbgo/extschema/schema/secret_policy_rule/object.pb.go @@ -235,39 +235,46 @@ func init() { } var fileDescriptor_5b38aa98ae230ed9 = []byte{ - // 507 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x41, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0x1a, 0x89, 0x65, 0x52, 0xa2, 0xac, 0x08, 0x6b, 0xd5, 0x21, 0xc4, 0x4b, 0x11, - 0x77, 0x56, 0xea, 0xc9, 0x22, 0x3d, 0xd4, 0x83, 0x0a, 0x16, 0x21, 0xa9, 0x1e, 0xbc, 0x84, 0xdd, - 0xc9, 0xcb, 0x76, 0x35, 0x9b, 0x37, 0xec, 0xcc, 0x2e, 0xe6, 0x20, 0xf8, 0x11, 0x3c, 0xf8, 0x21, - 0xc4, 0x4f, 0x61, 0x3d, 0x89, 0xa7, 0xe0, 0x29, 0x47, 0xb3, 0xb9, 0x08, 0x5e, 0x8a, 0x9f, 0x40, - 0x3a, 0xeb, 0x86, 0x6e, 0x1b, 0x89, 0xb7, 0x37, 0xbc, 0xdf, 0xfb, 0xff, 0xdf, 0x7b, 0x33, 0x43, - 0xdd, 0x0c, 0x14, 0x8f, 0xd0, 0x53, 0xe2, 0x10, 0x62, 0xdf, 0x53, 0x20, 0x12, 0xd0, 0x3d, 0x89, - 0xc3, 0x48, 0x8c, 0x7b, 0x49, 0x3a, 0x04, 0x0f, 0x83, 0x57, 0x20, 0x34, 0x97, 0x09, 0x6a, 0xb4, - 0x5b, 0x05, 0xce, 0x0b, 0x9c, 0x9f, 0xc7, 0x37, 0xdd, 0x30, 0xd2, 0x87, 0x69, 0xc0, 0x05, 0xc6, - 0x5e, 0x88, 0x21, 0x7a, 0xa6, 0x30, 0x48, 0x07, 0xe6, 0x64, 0x0e, 0x26, 0x2a, 0x04, 0x37, 0xaf, - 0x57, 0xfd, 0x51, 0xea, 0x08, 0x47, 0xea, 0x6f, 0xf2, 0xce, 0xca, 0xe6, 0xf4, 0x58, 0x42, 0x49, - 0x5f, 0xab, 0xd2, 0xa7, 0x53, 0xed, 0x6a, 0x2a, 0x03, 0x05, 0xa3, 0xac, 0x6a, 0xd6, 0xfe, 0x45, - 0x68, 0xfd, 0x99, 0x99, 0xd5, 0xbe, 0x4f, 0xd7, 0x63, 0xd0, 0x7e, 0xdf, 0xd7, 0xbe, 0x43, 0x5a, - 0x64, 0xab, 0xb1, 0x7d, 0x93, 0x57, 0x07, 0x2f, 0xc0, 0x7d, 0xd0, 0xfe, 0xc1, 0x58, 0x42, 0x67, - 0x81, 0xdb, 0x4f, 0xe9, 0x25, 0x35, 0x56, 0x1a, 0xe2, 0xde, 0x42, 0x61, 0xcd, 0x28, 0xdc, 0x3a, - 0xa3, 0xd0, 0x35, 0xd4, 0x19, 0x9d, 0x66, 0x51, 0xbb, 0x5f, 0xaa, 0xed, 0xd2, 0x0b, 0x4a, 0x82, - 0x70, 0x6a, 0x46, 0xe2, 0x36, 0x5f, 0xb5, 0x7d, 0xde, 0x95, 0x20, 0x8c, 0x92, 0xa9, 0xdb, 0x71, - 0xbe, 0x1c, 0x39, 0x6b, 0x8f, 0xc9, 0xb7, 0x23, 0xa7, 0x99, 0x81, 0x72, 0x23, 0x74, 0x8b, 0x1a, - 0xd5, 0x7e, 0x4e, 0xd7, 0x4b, 0xd6, 0x7e, 0x42, 0x2f, 0x86, 0xa2, 0x67, 0x8c, 0x8a, 0x69, 0xef, - 0xae, 0x36, 0x7a, 0x34, 0xc4, 0xc0, 0x1f, 0x2e, 0xec, 0xea, 0xa1, 0x38, 0x89, 0xdb, 0xbf, 0x09, - 0xdd, 0xe8, 0x6a, 0x5f, 0xa7, 0xea, 0xbf, 0x57, 0x59, 0xe0, 0x4b, 0x56, 0x79, 0x40, 0x1b, 0xc5, - 0xdb, 0xeb, 0x25, 0x30, 0x50, 0xce, 0x5a, 0xab, 0xb6, 0xd5, 0xd8, 0xbe, 0xb1, 0xf4, 0x22, 0x3a, - 0x30, 0x38, 0x29, 0xde, 0xbb, 0xfa, 0xe9, 0xad, 0x7d, 0xbe, 0xd9, 0x0e, 0xc5, 0x92, 0x52, 0xf6, - 0x03, 0x4a, 0x05, 0x8e, 0xfa, 0x91, 0xb9, 0x7a, 0xa7, 0xb6, 0x54, 0xf4, 0x61, 0x09, 0x98, 0x8e, - 0x4e, 0xf1, 0x3b, 0x57, 0xbe, 0xef, 0x5e, 0xa6, 0x4d, 0xba, 0x51, 0x36, 0xc9, 0xd3, 0xa8, 0xbf, - 0xf7, 0x81, 0x4c, 0x66, 0xcc, 0x9a, 0xce, 0x98, 0x75, 0x3c, 0x63, 0xe4, 0x5d, 0xce, 0xc8, 0xc7, - 0x9c, 0x91, 0xaf, 0x39, 0x23, 0x93, 0x9c, 0x91, 0x69, 0xce, 0xc8, 0x8f, 0x9c, 0x91, 0x9f, 0x39, - 0xb3, 0x8e, 0x73, 0x46, 0xde, 0xcf, 0x99, 0xf5, 0x79, 0xce, 0xc8, 0x64, 0xce, 0xac, 0xe9, 0x9c, - 0x59, 0x2f, 0x5f, 0x84, 0x28, 0x5f, 0x87, 0x3c, 0xc3, 0xa1, 0x86, 0x24, 0xf1, 0x79, 0xaa, 0x3c, - 0x13, 0x0c, 0x30, 0x89, 0x5d, 0x99, 0x60, 0x16, 0xf5, 0x21, 0x71, 0xcb, 0xb4, 0x27, 0x83, 0x10, - 0x3d, 0x78, 0xa3, 0xcb, 0x4f, 0xf1, 0xaf, 0xbf, 0x11, 0xd4, 0xcd, 0xbb, 0xbe, 0xf7, 0x27, 0x00, - 0x00, 0xff, 0xff, 0x4a, 0x0b, 0xe1, 0x85, 0xe3, 0x03, 0x00, 0x00, + // 609 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x6b, 0xd4, 0x4e, + 0x14, 0xc7, 0x77, 0xba, 0xfd, 0x6d, 0xcb, 0xb4, 0xf4, 0x27, 0x11, 0x21, 0x56, 0x1d, 0x96, 0xf5, + 0x52, 0xa4, 0x49, 0xa4, 0xe2, 0xc1, 0x22, 0x3d, 0xb4, 0x42, 0x15, 0x5a, 0x0a, 0xdb, 0x2a, 0x58, + 0x85, 0x65, 0x32, 0x79, 0x9b, 0x8e, 0x26, 0x3b, 0x61, 0x66, 0x12, 0xbb, 0x07, 0xc1, 0x3f, 0xc1, + 0x83, 0x7f, 0x84, 0x88, 0x7f, 0x84, 0xf5, 0xe4, 0x45, 0x28, 0x3d, 0xed, 0xd1, 0x66, 0x2f, 0x1e, + 0x8b, 0x7f, 0x81, 0x74, 0x62, 0x6a, 0x77, 0xbb, 0x5a, 0x2f, 0xbd, 0x4d, 0xf8, 0x7e, 0xdf, 0xe7, + 0xbd, 0x99, 0xbc, 0xf7, 0xb0, 0x93, 0x81, 0x72, 0xb9, 0xf0, 0x14, 0xdb, 0x81, 0x98, 0x7a, 0x0a, + 0x98, 0x04, 0xdd, 0x4a, 0x44, 0xc4, 0x59, 0xb7, 0x25, 0xd3, 0x08, 0x3c, 0xe1, 0xbf, 0x00, 0xa6, + 0xdd, 0x44, 0x0a, 0x2d, 0xac, 0x7a, 0x61, 0x77, 0x0b, 0xbb, 0x7b, 0xd6, 0x3e, 0xeb, 0x84, 0x5c, + 0xef, 0xa4, 0xbe, 0xcb, 0x44, 0xec, 0x85, 0x22, 0x14, 0x9e, 0x09, 0xf4, 0xd3, 0xb6, 0xf9, 0x32, + 0x1f, 0xe6, 0x54, 0x00, 0x67, 0xaf, 0x0d, 0xe6, 0x17, 0x89, 0xe6, 0xa2, 0xa3, 0x7e, 0x89, 0xf3, + 0xe7, 0x16, 0xa7, 0xbb, 0x09, 0x94, 0xee, 0xab, 0x83, 0xee, 0xd3, 0x52, 0x63, 0x50, 0xca, 0x40, + 0x41, 0x27, 0x1b, 0x4c, 0xd6, 0xf8, 0xf8, 0x1f, 0xae, 0x6d, 0x98, 0xbb, 0x5a, 0xf7, 0xf0, 0x64, + 0x0c, 0x9a, 0x06, 0x54, 0x53, 0x1b, 0xd5, 0xd1, 0xdc, 0xd4, 0xc2, 0x0d, 0x77, 0xf0, 0xe2, 0x85, + 0x71, 0x1d, 0x34, 0xdd, 0xea, 0x26, 0xd0, 0x3c, 0xb1, 0x5b, 0x6b, 0xf8, 0x7f, 0xd5, 0x55, 0x1a, + 0xe2, 0xd6, 0x09, 0x61, 0xcc, 0x10, 0x6e, 0x0e, 0x11, 0x36, 0x8d, 0x6b, 0x88, 0x33, 0x53, 0xc4, + 0xae, 0x97, 0xb4, 0x25, 0x3c, 0xae, 0x12, 0x60, 0x76, 0xd5, 0x20, 0x6e, 0xb9, 0xe7, 0xbd, 0xbe, + 0xbb, 0x99, 0x00, 0x33, 0x24, 0x13, 0xb7, 0xd8, 0xab, 0x7e, 0xde, 0xb3, 0xc7, 0x1e, 0xa2, 0x83, + 0x3d, 0xfb, 0x6b, 0x15, 0x3f, 0xc3, 0xd5, 0x55, 0xd0, 0xd6, 0x56, 0xfb, 0xee, 0x2e, 0x73, 0x14, + 0xb0, 0x54, 0x42, 0x0c, 0x6a, 0xc7, 0xf1, 0xa9, 0xe2, 0xcc, 0x89, 0x45, 0x87, 0x6b, 0x21, 0xe7, + 0xeb, 0xc3, 0xb2, 0xd2, 0xb4, 0x13, 0x50, 0x19, 0xfc, 0x76, 0x64, 0xa0, 0x1c, 0x2e, 0x9c, 0x22, + 0xbf, 0x72, 0x24, 0xd0, 0x00, 0x6f, 0xe3, 0x89, 0x26, 0x24, 0x11, 0x65, 0x60, 0x6d, 0x8c, 0x4e, + 0x90, 0x2a, 0xf8, 0x1b, 0xbd, 0x90, 0x87, 0xd0, 0xaf, 0x24, 0xd7, 0x80, 0x9f, 0xe2, 0xda, 0x8a, + 0x04, 0xaa, 0x2f, 0x06, 0xfd, 0x00, 0x22, 0xb8, 0x08, 0xf4, 0x73, 0x3c, 0xbe, 0xc6, 0xd5, 0x05, + 0xbd, 0x77, 0xe3, 0x31, 0x9e, 0x2c, 0x7f, 0xb6, 0xf5, 0x08, 0x4f, 0x84, 0xac, 0x65, 0x3a, 0xa5, + 0x68, 0xd7, 0xdb, 0xe7, 0x77, 0xca, 0x6a, 0x24, 0x7c, 0x1a, 0x9d, 0xf4, 0x4b, 0x2d, 0x64, 0xc7, + 0xe7, 0xc6, 0x0f, 0x84, 0xa7, 0x37, 0x35, 0xd5, 0xa9, 0xfa, 0xe7, 0x59, 0x28, 0xec, 0x23, 0x66, + 0x61, 0x0b, 0x4f, 0x15, 0xcb, 0xa3, 0x25, 0xa1, 0xad, 0xec, 0xb1, 0x7a, 0x75, 0x6e, 0x6a, 0xe1, + 0xfa, 0xc8, 0x49, 0x6a, 0x42, 0xfb, 0x38, 0x78, 0xf9, 0xca, 0x87, 0xd7, 0xd6, 0xd9, 0x62, 0x9b, + 0x58, 0x94, 0x2e, 0x65, 0xdd, 0xc7, 0x98, 0x89, 0x4e, 0xc0, 0xcd, 0xec, 0xda, 0xd5, 0x91, 0xd0, + 0x95, 0xd2, 0x60, 0x2a, 0x3a, 0xe5, 0x5f, 0xbc, 0x7c, 0xb0, 0x74, 0x09, 0xcf, 0xe0, 0xe9, 0xb2, + 0x48, 0x37, 0xe5, 0xc1, 0xf2, 0x3b, 0xb4, 0x7f, 0x48, 0x2a, 0xbd, 0x43, 0x52, 0x39, 0x3a, 0x24, + 0xe8, 0x4d, 0x4e, 0xd0, 0xfb, 0x9c, 0xa0, 0x2f, 0x39, 0x41, 0xfb, 0x39, 0x41, 0xbd, 0x9c, 0xa0, + 0x6f, 0x39, 0x41, 0xdf, 0x73, 0x52, 0x39, 0xca, 0x09, 0x7a, 0xdb, 0x27, 0x95, 0x4f, 0x7d, 0x82, + 0xf6, 0xfb, 0xa4, 0xd2, 0xeb, 0x93, 0xca, 0xf6, 0x93, 0x50, 0x24, 0x2f, 0x43, 0x37, 0x13, 0x91, + 0x06, 0x29, 0xa9, 0x9b, 0x2a, 0xcf, 0x1c, 0xda, 0x42, 0xc6, 0x4e, 0x22, 0x45, 0xc6, 0x03, 0x90, + 0x4e, 0x29, 0x7b, 0x89, 0x1f, 0x0a, 0x0f, 0x76, 0x75, 0xb9, 0xd5, 0xfe, 0xb4, 0xdc, 0xfc, 0x9a, + 0x59, 0x4c, 0x77, 0x7e, 0x06, 0x00, 0x00, 0xff, 0xff, 0x59, 0x0d, 0xfa, 0x3c, 0xa4, 0x05, 0x00, + 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/secret_policy_rule/public_crudapi.pb.go b/pbgo/extschema/schema/secret_policy_rule/public_crudapi.pb.go index 54bd551bd..3e546cb50 100644 --- a/pbgo/extschema/schema/secret_policy_rule/public_crudapi.pb.go +++ b/pbgo/extschema/schema/secret_policy_rule/public_crudapi.pb.go @@ -1063,106 +1063,109 @@ func init() { } var fileDescriptor_348ccda96d00aa5e = []byte{ - // 1583 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1a, 0xd9, - 0x1d, 0xf7, 0x03, 0x4c, 0xe0, 0xe1, 0x1f, 0xe4, 0x25, 0x71, 0x30, 0x4d, 0x11, 0x25, 0x51, 0x6b, - 0x59, 0x61, 0x70, 0xdc, 0x56, 0x6d, 0x9c, 0xca, 0x0d, 0xc6, 0xd8, 0x71, 0x62, 0xc7, 0xd6, 0x03, - 0x5b, 0x55, 0x15, 0x75, 0x3a, 0xc0, 0x17, 0x32, 0x09, 0x30, 0xd3, 0x99, 0x07, 0x2e, 0xaa, 0x2c, - 0x55, 0x39, 0xf6, 0x54, 0xa9, 0x97, 0x6a, 0xb5, 0x87, 0x5c, 0x22, 0xed, 0x6d, 0xa5, 0x3d, 0xad, - 0xe4, 0x3d, 0xf8, 0x96, 0x28, 0x2b, 0xad, 0xa2, 0xdd, 0x1c, 0x72, 0x5a, 0x6d, 0xf0, 0x6a, 0x95, - 0x63, 0xb4, 0x7f, 0xc0, 0x6a, 0x35, 0xef, 0xcd, 0x10, 0xc0, 0xc4, 0x80, 0xe3, 0x13, 0xf3, 0xbe, - 0x3f, 0x3e, 0xef, 0xfb, 0x7b, 0xbe, 0x0c, 0xfe, 0x7d, 0x1d, 0x4c, 0x49, 0xd5, 0x12, 0x66, 0xfe, - 0x3e, 0x54, 0x94, 0x84, 0x09, 0x79, 0x03, 0x98, 0xac, 0x6b, 0x65, 0x35, 0xdf, 0x90, 0x8d, 0x5a, - 0x19, 0x12, 0x7a, 0x2d, 0x57, 0x56, 0xf3, 0x72, 0xde, 0xa8, 0x15, 0x14, 0x5d, 0x95, 0x74, 0x43, - 0x63, 0x1a, 0x89, 0x0a, 0x35, 0x49, 0xa8, 0x49, 0x47, 0xd5, 0xc2, 0xf1, 0x92, 0xca, 0xee, 0xd7, - 0x72, 0x52, 0x5e, 0xab, 0x24, 0x4a, 0x5a, 0x49, 0x4b, 0x70, 0xc5, 0x5c, 0xad, 0xc8, 0x4f, 0xfc, - 0xc0, 0x9f, 0x04, 0x60, 0xf8, 0x52, 0x49, 0xd3, 0x4a, 0x65, 0x48, 0x28, 0xba, 0x9a, 0x50, 0xaa, - 0x55, 0x8d, 0x29, 0x4c, 0xd5, 0xaa, 0xa6, 0xcd, 0xfd, 0x85, 0xcd, 0x6d, 0x61, 0x40, 0x45, 0x67, - 0x0d, 0x9b, 0x19, 0xee, 0x74, 0x01, 0x0c, 0x43, 0x33, 0x5a, 0x8a, 0x9d, 0x3c, 0x4d, 0x6f, 0x47, - 0x8d, 0xf7, 0xf5, 0x5d, 0xcb, 0x3d, 0x80, 0x3c, 0xb3, 0xc5, 0xaf, 0xf6, 0x15, 0x67, 0x0d, 0x1d, - 0x1c, 0xf0, 0xe9, 0x4e, 0xe9, 0x76, 0x56, 0xac, 0x93, 0x55, 0x07, 0x13, 0xaa, 0xf5, 0x2e, 0xdb, - 0xa2, 0x5d, 0x32, 0x2a, 0xec, 0xca, 0x1d, 0x12, 0xb1, 0xcf, 0x10, 0x1e, 0x4f, 0x19, 0xa0, 0x30, - 0xa0, 0xf0, 0x8f, 0x1a, 0x98, 0x8c, 0xfc, 0x19, 0xfb, 0x2a, 0xc0, 0x94, 0x82, 0xc2, 0x94, 0x10, - 0x8a, 0xa2, 0x99, 0xc0, 0xfc, 0x65, 0xa9, 0x33, 0x4f, 0x9b, 0xdc, 0x1f, 0xa1, 0xb5, 0x01, 0x4c, - 0xc9, 0x36, 0x74, 0xa0, 0x2d, 0x25, 0xb2, 0x8d, 0x3d, 0xa6, 0x0e, 0xf9, 0x90, 0x8b, 0x2b, 0xcf, - 0x49, 0xfd, 0x92, 0x2c, 0x09, 0xa4, 0x8c, 0x0e, 0x79, 0x0b, 0x69, 0x69, 0xf2, 0xa3, 0xbd, 0x31, - 0x0b, 0x40, 0x2a, 0xe5, 0x65, 0xeb, 0x97, 0x72, 0xb8, 0x05, 0xff, 0xf3, 0x45, 0xaf, 0xb8, 0x39, - 0xf6, 0x13, 0xc2, 0x13, 0x8e, 0xd1, 0xa6, 0xae, 0x55, 0x4d, 0x20, 0x7f, 0x3a, 0x62, 0x75, 0xb4, - 0xa7, 0xd5, 0xab, 0xc0, 0x7a, 0x98, 0xbc, 0x89, 0x27, 0xcd, 0x86, 0xc9, 0xa0, 0x22, 0xb7, 0x40, - 0xdc, 0x1c, 0xe4, 0xd7, 0x5d, 0x20, 0x19, 0x2e, 0x75, 0x14, 0x6a, 0x42, 0xa8, 0x6f, 0x38, 0x80, - 0xb4, 0x23, 0x06, 0xf1, 0xfe, 0x31, 0x58, 0x05, 0x36, 0x44, 0x00, 0x7e, 0x40, 0x78, 0x82, 0x82, - 0x5e, 0x56, 0xf2, 0xad, 0xb4, 0xdd, 0x3c, 0x12, 0x80, 0x2b, 0x3d, 0x03, 0x60, 0xab, 0xf5, 0x08, - 0xc2, 0x4e, 0x87, 0xcd, 0xd7, 0xfa, 0xdb, 0x6c, 0x43, 0xf5, 0xb1, 0x9b, 0x24, 0x70, 0xd0, 0x00, - 0x53, 0xab, 0x19, 0x79, 0x90, 0xeb, 0x60, 0x98, 0xaa, 0x56, 0xe5, 0xd1, 0xf5, 0x2f, 0x79, 0xde, - 0xec, 0x23, 0x44, 0x27, 0x1d, 0xee, 0x8e, 0x60, 0xb6, 0x3b, 0x7a, 0x16, 0x4f, 0xb6, 0xfc, 0x14, - 0x99, 0x8e, 0x3d, 0x46, 0x18, 0xaf, 0x02, 0x73, 0xfc, 0xbe, 0x84, 0xfd, 0x55, 0xa5, 0x02, 0xa6, - 0xae, 0xe4, 0x81, 0x3b, 0xee, 0xa7, 0xef, 0x08, 0x84, 0x60, 0x8f, 0x75, 0xe0, 0x3e, 0xf9, 0x29, - 0x7f, 0x26, 0x7f, 0xc7, 0xd6, 0x8d, 0x1c, 0x4c, 0x2e, 0x6a, 0x46, 0x45, 0x61, 0xdc, 0x9c, 0x89, - 0xf9, 0x3f, 0x0c, 0x94, 0x26, 0xc7, 0x90, 0x15, 0xae, 0x9a, 0xd2, 0x0a, 0x40, 0x27, 0x8c, 0x0e, - 0x5a, 0xec, 0x89, 0x17, 0x07, 0xda, 0x24, 0xc9, 0x16, 0x0e, 0xe4, 0x79, 0xb9, 0xf2, 0xfb, 0xec, - 0x00, 0x27, 0x06, 0x6d, 0x0c, 0xdb, 0x53, 0x8a, 0x05, 0x86, 0x75, 0x07, 0xc9, 0xe0, 0x31, 0x43, - 0xc4, 0x45, 0x40, 0xba, 0x07, 0xed, 0xb5, 0xce, 0xaa, 0xa1, 0x01, 0x1b, 0x85, 0x83, 0xf6, 0x4a, - 0x94, 0xe7, 0x98, 0x44, 0x75, 0x34, 0xdd, 0xe8, 0x69, 0x34, 0xdd, 0x99, 0x53, 0x69, 0x3a, 0xef, - 0xe9, 0x35, 0x1d, 0xd9, 0xc0, 0x5e, 0x93, 0x29, 0xac, 0x66, 0x86, 0x1e, 0x7f, 0x8c, 0xa2, 0xee, - 0x99, 0xc0, 0xbc, 0xd4, 0x1f, 0x37, 0xc3, 0x35, 0x84, 0xc1, 0x4b, 0xee, 0x83, 0x3d, 0x44, 0x6d, - 0x10, 0xb2, 0x86, 0xcf, 0x1a, 0x50, 0x04, 0xc3, 0x50, 0xab, 0x25, 0x59, 0xbc, 0x17, 0xcc, 0x90, - 0x8f, 0xe3, 0x5e, 0x7a, 0x4f, 0xbb, 0x16, 0xb9, 0xaf, 0xc1, 0x96, 0x9a, 0xa0, 0x9b, 0x64, 0x07, - 0x87, 0x0a, 0x50, 0x06, 0x06, 0x05, 0x59, 0xf0, 0xa0, 0xd0, 0x42, 0xf4, 0x0f, 0x80, 0x38, 0x65, - 0x6b, 0x53, 0x5b, 0xd9, 0xc1, 0xfd, 0x0b, 0x9e, 0x2e, 0xa8, 0xa6, 0x92, 0x2b, 0xf7, 0x02, 0xc6, - 0x03, 0x00, 0x5f, 0x74, 0xd4, 0xbb, 0x90, 0xdb, 0xfa, 0xfa, 0xb6, 0xc7, 0x87, 0x82, 0xae, 0xd8, - 0x13, 0x84, 0x03, 0xeb, 0xaa, 0x39, 0x60, 0x2f, 0xff, 0x0a, 0x8f, 0x95, 0x95, 0x1c, 0x94, 0xe5, - 0xa2, 0x5a, 0x66, 0x60, 0xd8, 0x3d, 0x1d, 0xe0, 0xb4, 0x15, 0x4e, 0x22, 0x97, 0xf1, 0xb8, 0x01, - 0xba, 0x66, 0x30, 0xb9, 0xa8, 0x42, 0xb9, 0x60, 0x86, 0xdc, 0x51, 0xf7, 0x8c, 0x9f, 0x8e, 0x09, - 0xe2, 0x0a, 0xa7, 0x91, 0x39, 0x7c, 0xde, 0x16, 0x12, 0x49, 0x71, 0x64, 0x3d, 0x5c, 0x96, 0x08, - 0x9e, 0x48, 0xa1, 0xd0, 0x88, 0xbd, 0xf4, 0xe2, 0xa0, 0xb0, 0x53, 0x34, 0xf4, 0x1a, 0x83, 0x0a, - 0x99, 0xc2, 0x5e, 0x06, 0x55, 0xa5, 0xca, 0x78, 0xbd, 0xf9, 0xa9, 0x7d, 0x3a, 0xc1, 0x40, 0x0a, - 0x62, 0x77, 0x4d, 0x2d, 0x88, 0x99, 0x48, 0xad, 0x47, 0x12, 0xc5, 0x81, 0x02, 0x98, 0x79, 0x43, - 0xe5, 0xef, 0xea, 0x50, 0x40, 0x78, 0xda, 0x46, 0x22, 0x61, 0xec, 0x73, 0xc2, 0x1c, 0x1a, 0x8b, - 0xa2, 0x19, 0x1f, 0x6d, 0x9d, 0xc9, 0x0e, 0xf6, 0xf2, 0xa0, 0x08, 0x97, 0x02, 0xf3, 0x8b, 0xfd, - 0x2b, 0xb6, 0xdb, 0x3b, 0x69, 0x9d, 0x03, 0xa4, 0xab, 0xcc, 0x68, 0x50, 0x1b, 0x8d, 0x00, 0x0e, - 0xb4, 0x2d, 0x55, 0x76, 0x2d, 0xa4, 0x4e, 0x00, 0x9e, 0x7c, 0x87, 0x22, 0x6e, 0x68, 0xc7, 0x25, - 0xd7, 0x31, 0xd6, 0x76, 0xab, 0x60, 0xc8, 0xd6, 0xba, 0x12, 0xf2, 0xf3, 0x66, 0x0e, 0x77, 0xdd, - 0xb2, 0xa3, 0xc2, 0xae, 0x53, 0x6f, 0x7e, 0x2e, 0x6d, 0x51, 0x3a, 0x06, 0xd2, 0xf8, 0x69, 0x0c, - 0xa4, 0x89, 0x0f, 0x1a, 0x48, 0xb7, 0xb0, 0xaf, 0x04, 0x8c, 0x8f, 0x13, 0x7b, 0xb4, 0x0d, 0x37, - 0x94, 0xe8, 0x99, 0x92, 0x38, 0x10, 0x8a, 0xb1, 0x5d, 0xac, 0x26, 0x30, 0x7b, 0x60, 0x9c, 0x68, - 0x10, 0xf9, 0x05, 0x4c, 0x06, 0x58, 0xf8, 0x3a, 0x0e, 0xb4, 0x65, 0xd9, 0xaa, 0xc2, 0x87, 0xd0, - 0xb0, 0x2b, 0xd6, 0x7a, 0x24, 0xe7, 0xf1, 0x68, 0x5d, 0x29, 0xd7, 0x9c, 0x62, 0x15, 0x87, 0x05, - 0xd7, 0x1f, 0x51, 0x78, 0x11, 0x07, 0xbb, 0x73, 0x38, 0x8c, 0xfe, 0x6d, 0x8f, 0x6f, 0x34, 0xe8, - 0x8d, 0xfd, 0x07, 0xe1, 0xb1, 0xf6, 0xda, 0x20, 0xb7, 0xf0, 0xa8, 0xca, 0xa0, 0x62, 0x86, 0xc4, - 0xa4, 0x9d, 0x1f, 0xbe, 0xb4, 0xa8, 0x00, 0x20, 0x73, 0xd8, 0x2b, 0x36, 0xf8, 0x90, 0x8b, 0x43, - 0x85, 0xba, 0xa0, 0xd2, 0x16, 0x93, 0x87, 0xd8, 0x96, 0x8b, 0x3d, 0xc4, 0xe3, 0xcb, 0x7c, 0x20, - 0x9e, 0x7c, 0xb1, 0x98, 0xc1, 0xc1, 0xa2, 0xa2, 0x96, 0x65, 0xb5, 0xd8, 0x1a, 0x9c, 0xbc, 0xa9, - 0x7d, 0x74, 0xc2, 0xa2, 0xaf, 0x15, 0x9d, 0x81, 0x38, 0xfb, 0x23, 0xc2, 0x17, 0x7a, 0xae, 0x12, - 0x24, 0x8c, 0xa7, 0x56, 0xd3, 0x59, 0x99, 0x66, 0xb6, 0xe4, 0x95, 0x4d, 0xba, 0x91, 0xcc, 0xca, - 0xcb, 0xe9, 0x95, 0xe4, 0xf6, 0x7a, 0x36, 0x38, 0x42, 0x7e, 0x89, 0xa7, 0xbb, 0x78, 0x2b, 0x9b, - 0x54, 0x4e, 0xd1, 0x74, 0x32, 0x9b, 0x0e, 0x22, 0x12, 0xc1, 0xe1, 0x1e, 0x6c, 0x9a, 0xde, 0x5a, - 0x4f, 0xa6, 0xd2, 0x41, 0x17, 0x99, 0xc6, 0x17, 0xba, 0xf8, 0x99, 0x6c, 0x32, 0xbb, 0x9d, 0x09, - 0xba, 0xc9, 0x45, 0x7c, 0xae, 0x8b, 0x45, 0xd3, 0xc9, 0xe5, 0xa0, 0x87, 0x5c, 0xc1, 0xd1, 0x23, - 0x8c, 0x95, 0x34, 0xa5, 0x6b, 0x77, 0x57, 0xe5, 0xcd, 0xa5, 0xdb, 0xe9, 0x54, 0x36, 0x13, 0x1c, - 0xed, 0x21, 0xb5, 0x44, 0x37, 0xef, 0xa4, 0xef, 0x0a, 0xe1, 0xf4, 0xdd, 0x54, 0x3a, 0x13, 0xf4, - 0xce, 0xbf, 0xf4, 0x61, 0x77, 0x72, 0x6b, 0x8d, 0x7c, 0x89, 0xb0, 0x57, 0x6c, 0x36, 0x64, 0xd8, - 0x1d, 0x28, 0x3c, 0x37, 0xb8, 0x82, 0xbd, 0x2e, 0xfe, 0xad, 0xf9, 0x34, 0x74, 0xbe, 0x0e, 0x66, - 0x5c, 0xd5, 0xe2, 0x42, 0xda, 0x8c, 0xef, 0x1a, 0x2a, 0x83, 0x47, 0xdf, 0x7c, 0xff, 0x3f, 0xd7, - 0xcd, 0xd8, 0x0d, 0xfb, 0xaf, 0x69, 0xa2, 0x95, 0x5b, 0x33, 0xf1, 0x2f, 0xa7, 0xff, 0xa5, 0x16, - 0x71, 0xaf, 0xc7, 0x3f, 0x35, 0x73, 0x01, 0xcd, 0x92, 0x03, 0x84, 0xdd, 0xab, 0xc0, 0xc8, 0xd5, - 0x01, 0x97, 0x47, 0xe1, 0x47, 0x7c, 0xa8, 0x55, 0x33, 0x76, 0xef, 0xd9, 0xe7, 0x2e, 0xd4, 0x7c, - 0x1a, 0x3a, 0xd7, 0xe5, 0x88, 0x01, 0x4a, 0x81, 0xfb, 0x71, 0x83, 0x5c, 0xef, 0xe5, 0xc7, 0xf1, - 0xe6, 0x0b, 0xfe, 0x1e, 0xf9, 0x02, 0x61, 0x8f, 0xd5, 0x48, 0x24, 0x3e, 0x68, 0xc3, 0x09, 0x27, - 0xa4, 0xe1, 0xfa, 0x33, 0xb6, 0xdd, 0xcf, 0x8b, 0xdf, 0x91, 0xf9, 0xe1, 0xbd, 0x20, 0xdf, 0x22, - 0x7c, 0xc6, 0x5e, 0x6b, 0xc9, 0xd0, 0x1b, 0x70, 0xf8, 0xda, 0x10, 0x1a, 0xb6, 0x1f, 0xd5, 0x63, - 0x4b, 0x6a, 0x2b, 0x7c, 0xe7, 0x03, 0x4a, 0xaa, 0x4b, 0x70, 0xcf, 0x2a, 0xb1, 0x4f, 0x11, 0xf6, - 0x8a, 0xd9, 0x34, 0x48, 0xc3, 0x74, 0x4c, 0xb1, 0xf0, 0x94, 0x24, 0x3e, 0x7a, 0x48, 0xce, 0x47, - 0x0f, 0x29, 0x5d, 0xd1, 0x59, 0x23, 0x76, 0xef, 0x58, 0x1f, 0x16, 0x67, 0x4f, 0x5e, 0x4e, 0x0b, - 0x68, 0x36, 0xfc, 0xe0, 0x60, 0x1f, 0xb9, 0xbe, 0xde, 0x47, 0xbf, 0xe9, 0x6b, 0xad, 0x78, 0x37, - 0xbd, 0xda, 0x47, 0xa8, 0xb9, 0x8f, 0xe2, 0x43, 0xbd, 0xd0, 0x1e, 0x7d, 0x15, 0x72, 0xdd, 0x42, - 0x4b, 0xff, 0x47, 0xcf, 0x17, 0x47, 0x53, 0x74, 0x7b, 0x79, 0xfd, 0xc5, 0xeb, 0xc8, 0xc8, 0xab, - 0xd7, 0x91, 0x91, 0xb7, 0xaf, 0x23, 0xe8, 0xdf, 0xcd, 0x08, 0xfa, 0xa4, 0x19, 0x41, 0xcf, 0x9a, - 0x11, 0xf4, 0xa2, 0x19, 0x41, 0xdf, 0x35, 0x23, 0xe8, 0x4d, 0x33, 0x32, 0xf2, 0xb6, 0x19, 0x41, - 0xff, 0x3d, 0x8c, 0x8c, 0x1c, 0x1c, 0x46, 0xd0, 0x8b, 0xc3, 0xc8, 0xc8, 0xab, 0xc3, 0xc8, 0xc8, - 0x5f, 0x77, 0x4a, 0x9a, 0xfe, 0xb0, 0x24, 0xd5, 0x35, 0x6b, 0x89, 0x34, 0x14, 0xa9, 0x66, 0x26, - 0xf8, 0x83, 0xf5, 0xd7, 0x2a, 0xae, 0x1b, 0x5a, 0x5d, 0x2d, 0x80, 0x11, 0x77, 0xd8, 0x09, 0x3d, - 0x57, 0xd2, 0x12, 0xf0, 0x4f, 0xe6, 0x7c, 0xc2, 0x79, 0xdf, 0x97, 0x9c, 0x9c, 0x97, 0x07, 0xfd, - 0xb7, 0x3f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x5c, 0x3f, 0xa0, 0xeb, 0x1f, 0x13, 0x00, 0x00, + // 1632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x1b, 0x59, + 0x19, 0xcf, 0xb3, 0x1d, 0xd7, 0x7e, 0xce, 0x1f, 0xef, 0x63, 0x37, 0xeb, 0x98, 0x62, 0x19, 0xef, + 0x0a, 0xa2, 0xa8, 0x1e, 0x67, 0x03, 0x2b, 0x68, 0x16, 0x85, 0x75, 0x1c, 0x27, 0x4d, 0x37, 0x69, + 0xa2, 0x67, 0x27, 0x42, 0x5c, 0x86, 0xf1, 0xf8, 0xb3, 0x3b, 0x5b, 0xdb, 0x33, 0xcc, 0x7b, 0x76, + 0xd6, 0x42, 0x91, 0x56, 0x95, 0xb8, 0x70, 0x42, 0x02, 0x44, 0x05, 0x1c, 0x7a, 0xa9, 0xe0, 0xcc, + 0x09, 0x29, 0x97, 0xde, 0xa8, 0x7a, 0x40, 0x15, 0x70, 0xe8, 0x91, 0x3a, 0x08, 0x95, 0x5b, 0xc5, + 0x19, 0x21, 0x34, 0xef, 0xcd, 0xb8, 0xb6, 0xe3, 0xd6, 0x76, 0x9a, 0x9e, 0x3c, 0xef, 0x7d, 0xdf, + 0xf7, 0x7b, 0xef, 0xfb, 0x7d, 0x7f, 0xe6, 0xf3, 0xe0, 0x8f, 0x5b, 0xc0, 0x14, 0xc3, 0xcc, 0x30, + 0xfd, 0x36, 0xd4, 0xb5, 0x0c, 0x03, 0xdd, 0x06, 0xae, 0x5a, 0x66, 0xcd, 0xd0, 0xdb, 0xaa, 0xdd, + 0xac, 0x41, 0xc6, 0x6a, 0x96, 0x6a, 0x86, 0xae, 0xea, 0x76, 0xb3, 0xac, 0x59, 0x86, 0x62, 0xd9, + 0x26, 0x37, 0x49, 0x52, 0x9a, 0x29, 0xd2, 0x4c, 0x39, 0x6f, 0x16, 0x4f, 0x57, 0x0d, 0x7e, 0xbb, + 0x59, 0x52, 0x74, 0xb3, 0x9e, 0xa9, 0x9a, 0x55, 0x33, 0x23, 0x0c, 0x4b, 0xcd, 0x8a, 0x58, 0x89, + 0x85, 0x78, 0x92, 0x80, 0xf1, 0xab, 0x55, 0xd3, 0xac, 0xd6, 0x20, 0xa3, 0x59, 0x46, 0x46, 0x6b, + 0x34, 0x4c, 0xae, 0x71, 0xc3, 0x6c, 0x30, 0x57, 0xfa, 0x55, 0x57, 0xda, 0xc5, 0x80, 0xba, 0xc5, + 0xdb, 0xae, 0x30, 0xde, 0xef, 0x02, 0xd8, 0xb6, 0x69, 0x77, 0x0d, 0xfb, 0x65, 0xa6, 0xd5, 0x8b, + 0x9a, 0x1e, 0xe9, 0xbb, 0x59, 0xfa, 0x1c, 0x74, 0xee, 0xaa, 0x5f, 0x1b, 0xa9, 0xce, 0xdb, 0x16, + 0x78, 0xe0, 0x8b, 0xfd, 0xda, 0xbd, 0xa2, 0x54, 0xbf, 0xa8, 0x05, 0x0c, 0x1a, 0xad, 0x81, 0xbb, + 0x25, 0x07, 0x74, 0x0c, 0x38, 0x56, 0xfb, 0x34, 0x52, 0x7f, 0x44, 0x78, 0x36, 0x67, 0x83, 0xc6, + 0x81, 0xc2, 0x8f, 0x9b, 0xc0, 0x38, 0xf9, 0x3e, 0x0e, 0xd5, 0x81, 0x6b, 0x65, 0x8d, 0x6b, 0x31, + 0x94, 0x44, 0x4b, 0x91, 0xd5, 0x0f, 0x94, 0xfe, 0x38, 0xed, 0x0b, 0x7f, 0xa4, 0xd5, 0x1e, 0x70, + 0xad, 0xd8, 0xb6, 0x80, 0x76, 0x8d, 0xc8, 0x21, 0x0e, 0x30, 0x0b, 0xf4, 0x98, 0x4f, 0x18, 0xaf, + 0x28, 0xa3, 0x82, 0xac, 0x48, 0xa4, 0x82, 0x05, 0xba, 0x83, 0xb4, 0x31, 0xff, 0x9b, 0x93, 0x19, + 0x07, 0x40, 0xa9, 0xea, 0xaa, 0xf3, 0x4b, 0x05, 0xdc, 0x5a, 0xf8, 0xf1, 0x7a, 0x50, 0x9e, 0x9c, + 0xfa, 0x1f, 0xc2, 0x73, 0xde, 0xa5, 0x99, 0x65, 0x36, 0x18, 0x90, 0xef, 0x9d, 0xbb, 0x75, 0x72, + 0xe8, 0xad, 0xb7, 0x81, 0x0f, 0xb9, 0xf2, 0x3e, 0x9e, 0x67, 0x6d, 0xc6, 0xa1, 0xae, 0x76, 0x41, + 0xfc, 0x02, 0xe4, 0x1b, 0x03, 0x20, 0x05, 0xa1, 0x75, 0x1e, 0x6a, 0x4e, 0x9a, 0xef, 0x79, 0x80, + 0xb4, 0x8f, 0x83, 0xf4, 0x68, 0x0e, 0xb6, 0x81, 0x4f, 0x40, 0xc0, 0xbf, 0x10, 0x9e, 0xa3, 0x60, + 0xd5, 0x34, 0xbd, 0x1b, 0xb6, 0x4f, 0xcf, 0x11, 0xf0, 0xe1, 0x50, 0x02, 0x5c, 0xb3, 0x21, 0x24, + 0x1c, 0xf5, 0xdd, 0xf9, 0xa3, 0xd1, 0x77, 0x76, 0xa1, 0x46, 0xdc, 0x9b, 0x64, 0x70, 0xd4, 0x06, + 0x66, 0x36, 0x6d, 0x1d, 0xd4, 0x16, 0xd8, 0xcc, 0x30, 0x1b, 0x82, 0xdd, 0xf0, 0x46, 0xe0, 0xf9, + 0x29, 0x42, 0x74, 0xde, 0x93, 0x1e, 0x49, 0x61, 0xaf, 0xa3, 0xef, 0xe0, 0xf9, 0xae, 0x9f, 0x32, + 0xd2, 0xa9, 0xfb, 0x08, 0xe3, 0x6d, 0xe0, 0x9e, 0xdf, 0x57, 0x71, 0xb8, 0xa1, 0xd5, 0x81, 0x59, + 0x9a, 0x0e, 0xc2, 0xf1, 0x30, 0x7d, 0xb9, 0x41, 0x08, 0x0e, 0x38, 0x0b, 0xe1, 0x53, 0x98, 0x8a, + 0x67, 0xf2, 0x23, 0xec, 0x9c, 0x28, 0xc0, 0xd4, 0x8a, 0x69, 0xd7, 0x35, 0x2e, 0xae, 0x33, 0xb7, + 0xfa, 0x9d, 0xb1, 0xc2, 0xe4, 0x5d, 0x64, 0x4b, 0x98, 0xe6, 0xcc, 0x32, 0xd0, 0x39, 0xbb, 0x6f, + 0x2f, 0xf5, 0x20, 0x88, 0x23, 0x3d, 0x9a, 0xe4, 0x00, 0x47, 0x74, 0x91, 0xae, 0xe2, 0x3c, 0x97, + 0xe0, 0xcc, 0xb8, 0x85, 0xe1, 0x7a, 0x4a, 0xb1, 0xc4, 0x70, 0xce, 0x20, 0x05, 0x3c, 0x63, 0x4b, + 0x5e, 0x24, 0xa4, 0x7f, 0xdc, 0x5a, 0xeb, 0xcf, 0x1a, 0x1a, 0x71, 0x51, 0x04, 0xe8, 0xb0, 0x40, + 0x05, 0x5e, 0x13, 0xa8, 0xbe, 0xa2, 0x9b, 0xbe, 0x8c, 0xa2, 0xbb, 0x72, 0x29, 0x45, 0x17, 0xbc, + 0xbc, 0xa2, 0x23, 0x7b, 0x38, 0xc8, 0xb8, 0xc6, 0x9b, 0x2c, 0x76, 0xff, 0x77, 0x28, 0xe9, 0x5f, + 0x8a, 0xac, 0x2a, 0xa3, 0x71, 0x0b, 0xc2, 0x42, 0x5e, 0x78, 0xc3, 0xff, 0xf0, 0x04, 0x51, 0x17, + 0x84, 0xec, 0xe0, 0x77, 0x6c, 0xa8, 0x80, 0x6d, 0x1b, 0x8d, 0xaa, 0x2a, 0xdf, 0x0b, 0x2c, 0x16, + 0x12, 0xb8, 0x57, 0x5f, 0x51, 0xae, 0x15, 0xe1, 0x6b, 0xb4, 0x6b, 0x26, 0xf7, 0x19, 0x39, 0xc2, + 0xb1, 0x32, 0xd4, 0x80, 0x43, 0x59, 0x95, 0x32, 0x28, 0x77, 0x11, 0xc3, 0x63, 0x20, 0x2e, 0xb8, + 0xd6, 0xd4, 0x35, 0xf6, 0x70, 0x7f, 0x80, 0x17, 0xcb, 0x06, 0xd3, 0x4a, 0xb5, 0x61, 0xc0, 0x78, + 0x0c, 0xe0, 0xf7, 0x3d, 0xf3, 0x01, 0xe4, 0x9e, 0xba, 0xbe, 0x19, 0x08, 0xa1, 0xa8, 0x2f, 0xf5, + 0x00, 0xe1, 0xc8, 0xae, 0xc1, 0xc6, 0xac, 0xe5, 0xaf, 0xe3, 0x99, 0x9a, 0x56, 0x82, 0x9a, 0x5a, + 0x31, 0x6a, 0x1c, 0x6c, 0xb7, 0xa6, 0x23, 0x62, 0x6f, 0x4b, 0x6c, 0x91, 0x0f, 0xf0, 0xac, 0x0d, + 0x96, 0x69, 0x73, 0xb5, 0x62, 0x40, 0xad, 0xcc, 0x62, 0xfe, 0xa4, 0x7f, 0x29, 0x4c, 0x67, 0xe4, + 0xe6, 0x96, 0xd8, 0x23, 0x2b, 0xf8, 0x5d, 0x57, 0x49, 0x06, 0xc5, 0xd3, 0x0d, 0x08, 0x5d, 0x22, + 0x65, 0x32, 0x84, 0xd2, 0x22, 0xf5, 0xf7, 0x20, 0x8e, 0xca, 0x7b, 0xca, 0x82, 0xde, 0xe1, 0x50, + 0x27, 0x0b, 0x38, 0xc8, 0xa1, 0xa1, 0x35, 0xb8, 0xc8, 0xb7, 0x30, 0x75, 0x57, 0x17, 0x68, 0x48, + 0x51, 0xec, 0x6f, 0x1a, 0x65, 0xd9, 0x13, 0xa9, 0xf3, 0x48, 0x92, 0x38, 0x52, 0x06, 0xa6, 0xdb, + 0x86, 0x78, 0x57, 0xc7, 0x22, 0xd2, 0xd3, 0x9e, 0x2d, 0x12, 0xc7, 0x21, 0x8f, 0xe6, 0xd8, 0x4c, + 0x12, 0x2d, 0x85, 0x68, 0x77, 0x4d, 0x8e, 0x70, 0x50, 0x90, 0x22, 0x5d, 0x8a, 0xac, 0xae, 0x8f, + 0xce, 0xd8, 0x41, 0xef, 0x94, 0x5d, 0x01, 0x90, 0x6f, 0x70, 0xbb, 0x4d, 0x5d, 0x34, 0x02, 0x38, + 0xd2, 0x33, 0x54, 0xb9, 0xb9, 0x90, 0xbb, 0x00, 0x78, 0xf6, 0x25, 0x8a, 0x3c, 0xa1, 0x17, 0x97, + 0x5c, 0xc7, 0xd8, 0x3c, 0x6e, 0x80, 0xad, 0x3a, 0xe3, 0x4a, 0x2c, 0x2c, 0x8a, 0x39, 0x3e, 0x70, + 0xca, 0x91, 0x01, 0xc7, 0x5e, 0xbe, 0x85, 0x85, 0xb6, 0xb3, 0xd3, 0xd7, 0x90, 0x66, 0x2f, 0xa3, + 0x21, 0xcd, 0xbd, 0x51, 0x43, 0xba, 0x81, 0x43, 0x55, 0xe0, 0xa2, 0x9d, 0xb8, 0xad, 0x6d, 0xb2, + 0xa6, 0x44, 0xaf, 0x54, 0xe5, 0x82, 0x50, 0x8c, 0xdd, 0x64, 0x65, 0xc0, 0xdd, 0x86, 0x71, 0xa1, + 0x46, 0x14, 0x96, 0x30, 0x05, 0xe0, 0xf1, 0xeb, 0x38, 0xd2, 0x13, 0x65, 0x27, 0x0b, 0xef, 0x40, + 0xdb, 0xcd, 0x58, 0xe7, 0x91, 0xbc, 0x8b, 0xa7, 0x5b, 0x5a, 0xad, 0xe9, 0x25, 0xab, 0x5c, 0xac, + 0xf9, 0xbe, 0x8b, 0xe2, 0xeb, 0x38, 0x3a, 0x18, 0xc3, 0x49, 0xec, 0x6f, 0x06, 0x42, 0xd3, 0xd1, + 0x60, 0xea, 0x67, 0x08, 0xcf, 0xf4, 0xe6, 0x06, 0xb9, 0x81, 0xa7, 0x0d, 0x0e, 0x75, 0x16, 0x93, + 0x9d, 0x76, 0x75, 0xf2, 0xd4, 0xa2, 0x12, 0x80, 0xac, 0xe0, 0xa0, 0x9c, 0xe0, 0x63, 0x3e, 0x01, + 0x15, 0x1b, 0x80, 0xca, 0x3b, 0x42, 0x41, 0xb1, 0xab, 0x97, 0xba, 0x83, 0x67, 0x37, 0x45, 0x43, + 0xbc, 0xf8, 0x60, 0xb1, 0x84, 0xa3, 0x15, 0xcd, 0xa8, 0xa9, 0x46, 0xa5, 0xdb, 0x38, 0x45, 0x51, + 0x87, 0xe8, 0x9c, 0xb3, 0xbf, 0x53, 0xf1, 0x1a, 0xe2, 0xf2, 0x7f, 0x10, 0x7e, 0x6f, 0xe8, 0x28, + 0x41, 0xe2, 0x78, 0x61, 0x3b, 0x5f, 0x54, 0x69, 0xe1, 0x40, 0xdd, 0xda, 0xa7, 0x7b, 0xd9, 0xa2, + 0xba, 0x99, 0xdf, 0xca, 0x1e, 0xee, 0x16, 0xa3, 0x53, 0xe4, 0x6b, 0x78, 0x71, 0x40, 0xb6, 0xb5, + 0x4f, 0xd5, 0x1c, 0xcd, 0x67, 0x8b, 0xf9, 0x28, 0x22, 0x09, 0x1c, 0x1f, 0x22, 0xa6, 0xf9, 0x83, + 0xdd, 0x6c, 0x2e, 0x1f, 0xf5, 0x91, 0x45, 0xfc, 0xde, 0x80, 0xbc, 0x50, 0xcc, 0x16, 0x0f, 0x0b, + 0x51, 0x3f, 0x79, 0x1f, 0x7f, 0x65, 0x40, 0x44, 0xf3, 0xd9, 0xcd, 0x68, 0x80, 0x7c, 0x88, 0x93, + 0xe7, 0x04, 0x5b, 0x79, 0x4a, 0x77, 0x6e, 0x6d, 0xab, 0xfb, 0x1b, 0x37, 0xf3, 0xb9, 0x62, 0x21, + 0x3a, 0x3d, 0x44, 0x6b, 0x83, 0xee, 0x7f, 0x96, 0xbf, 0x25, 0x95, 0xf3, 0xb7, 0x72, 0xf9, 0x42, + 0x34, 0xb8, 0x7a, 0x37, 0x82, 0xfd, 0xd9, 0x83, 0x1d, 0xf2, 0x53, 0x1f, 0x0e, 0xca, 0xc9, 0x86, + 0x4c, 0x3a, 0x03, 0xc5, 0x57, 0xc6, 0x37, 0x70, 0xc7, 0xc5, 0x5f, 0xa3, 0xce, 0x9f, 0x63, 0x7b, + 0x95, 0x8f, 0xbf, 0xd0, 0xd3, 0x0c, 0xf4, 0xa6, 0x0d, 0x75, 0x60, 0xb7, 0xd3, 0x25, 0x8d, 0x19, + 0x7a, 0xba, 0xc9, 0xc0, 0xbe, 0x36, 0x28, 0x62, 0x5c, 0x6b, 0x94, 0x35, 0xbb, 0x2c, 0xa5, 0x2d, + 0x60, 0x69, 0xc3, 0x4c, 0xcb, 0x73, 0x58, 0xfa, 0xd8, 0x36, 0x38, 0xdc, 0xfd, 0xdb, 0x3f, 0x7f, + 0xe1, 0xfb, 0x34, 0xf5, 0x89, 0xfb, 0xa7, 0x36, 0xd3, 0xcd, 0x0a, 0x96, 0xf9, 0x89, 0xd7, 0x39, + 0x94, 0xee, 0xe6, 0xc9, 0x90, 0xff, 0x78, 0x6c, 0x0d, 0x2d, 0x93, 0x2f, 0x7d, 0xd8, 0xbf, 0x0d, + 0x9c, 0x5c, 0x1b, 0x73, 0xec, 0x94, 0x0c, 0xa4, 0x27, 0x1a, 0x52, 0x53, 0xbf, 0x45, 0x8f, 0xfe, + 0xe4, 0x73, 0x28, 0xa0, 0xc3, 0x29, 0xa8, 0x9b, 0x0d, 0x83, 0x9b, 0xaf, 0x61, 0xc1, 0x53, 0x18, + 0x20, 0xc2, 0x06, 0xad, 0x2c, 0x78, 0xf8, 0x84, 0x5c, 0x1f, 0xc6, 0xc3, 0xeb, 0xdd, 0x97, 0xf2, + 0x13, 0xf2, 0x5f, 0x84, 0x03, 0x4e, 0x09, 0x93, 0xf4, 0xb8, 0xa5, 0x2e, 0x49, 0x50, 0x26, 0xeb, + 0x0c, 0xa9, 0x5f, 0xbe, 0x6d, 0x16, 0xbe, 0x4d, 0x56, 0x27, 0x67, 0x81, 0xdc, 0xf3, 0xe1, 0x2b, + 0xee, 0x40, 0x4e, 0x26, 0x9e, 0xdd, 0xe3, 0x1f, 0x4d, 0x60, 0xe1, 0xf2, 0xf0, 0xfb, 0xb7, 0x54, + 0x0c, 0x07, 0xf1, 0xcf, 0xde, 0xa0, 0x18, 0x06, 0x14, 0x4f, 0x9c, 0xe2, 0xf8, 0x37, 0xc2, 0x41, + 0xd9, 0x8f, 0xc7, 0x69, 0x12, 0x7d, 0x9d, 0x3b, 0xbe, 0xa0, 0xc8, 0x0f, 0x3d, 0x8a, 0xf7, 0xa1, + 0x47, 0xc9, 0xd7, 0x2d, 0xde, 0x4e, 0xfd, 0xea, 0x2d, 0x79, 0xbf, 0xbe, 0x7c, 0xf1, 0x12, 0x58, + 0x43, 0xcb, 0xf1, 0xcf, 0x1f, 0x9e, 0x22, 0xdf, 0x5f, 0x4f, 0xd1, 0x37, 0x47, 0xfa, 0x29, 0xdf, + 0xe4, 0x4f, 0x4f, 0x11, 0xea, 0x9c, 0xa2, 0xf4, 0x44, 0xaf, 0xff, 0xbb, 0x7f, 0x89, 0xf9, 0x6e, + 0xa0, 0x8d, 0x7b, 0xe8, 0xf1, 0xfa, 0x74, 0x8e, 0x1e, 0x6e, 0xee, 0x3e, 0x79, 0x96, 0x98, 0x7a, + 0xfa, 0x2c, 0x31, 0xf5, 0xe2, 0x59, 0x02, 0x7d, 0xd9, 0x49, 0xa0, 0x3f, 0x74, 0x12, 0xe8, 0x51, + 0x27, 0x81, 0x9e, 0x74, 0x12, 0xe8, 0x1f, 0x9d, 0x04, 0x7a, 0xde, 0x49, 0x4c, 0xbd, 0xe8, 0x24, + 0xd0, 0xcf, 0xcf, 0x12, 0x53, 0x0f, 0xcf, 0x12, 0xe8, 0xc9, 0x59, 0x62, 0xea, 0xe9, 0x59, 0x62, + 0xea, 0x87, 0x47, 0x55, 0xd3, 0xba, 0x53, 0x55, 0x5a, 0xa6, 0x33, 0x72, 0xdb, 0x9a, 0xd2, 0x64, + 0x19, 0xf1, 0xe0, 0xfc, 0x11, 0x4d, 0x5b, 0xb6, 0xd9, 0x32, 0xca, 0x60, 0xa7, 0x3d, 0x71, 0xc6, + 0x2a, 0x55, 0xcd, 0x0c, 0x7c, 0xc1, 0xbd, 0x0f, 0x5e, 0xaf, 0xfa, 0xee, 0x55, 0x0a, 0x8a, 0x70, + 0x7d, 0xeb, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x3b, 0x03, 0xd5, 0xe7, 0x4d, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/secret_policy_rule/public_crudapi.vesapi.go b/pbgo/extschema/schema/secret_policy_rule/public_crudapi.vesapi.go index b2dab417a..ce7b186d1 100644 --- a/pbgo/extschema/schema/secret_policy_rule/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/secret_policy_rule/public_crudapi.vesapi.go @@ -2518,10 +2518,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2578,10 +2582,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2640,10 +2648,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/service_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/service_policy/crudapi/api.vesapi.go index 1757758b5..65b36e5d7 100644 --- a/pbgo/extschema/schema/service_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/service_policy/crudapi/api.vesapi.go @@ -3219,14 +3219,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -5154,7 +5154,7 @@ var APISwaggerJSON string = `{ }, "prefixes": { "type": "array", - "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0./24\"\nx-required\nDestination IPv4 prefixes.", + "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0.1/24\"\nx-required\nDestination IPv4 prefixes.", "title": "prefixes", "items": { "type": "string" @@ -5283,10 +5283,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5970,12 +5974,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/service_policyRuleList", "x-displayname": "Custom Rule List" }, - "segment_policy": { - "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", - "title": "Segments", - "$ref": "#/definitions/policySegmentPolicyType", - "x-displayname": "Configure Segments" - }, "server_name": { "type": "string", "description": "Exclusive with [any_server server_name_matcher server_selector]\n The expected name of the server to which the request API is directed. The actual names for the server are extracted from the HTTP Host header and the name\n of the virtual_host to which the request is directed. If the request is directed to a virtual K8s service, the actual names also contain the name of that\n service.\n The predicate evaluates to true if any of the actual names is the same as the expected server name.\n\nExample: - \"database.production.customer.volterra.us\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n", @@ -6228,6 +6226,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyRequestConstraintType", "x-displayname": "Request Constraints" }, + "segment_policy": { + "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", + "title": "Segments", + "$ref": "#/definitions/policySegmentPolicyType", + "x-displayname": "Configure Segments" + }, "tls_fingerprint_matcher": { "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", "title": "TLS JA3 fingerprint matcher", @@ -6664,9 +6668,9 @@ var APISwaggerJSON string = `{ "title": "Shape Protected Endpoint Action", "$ref": "#/definitions/policyShapeProtectedEndpointAction" }, - "threat_intelligence_action": { - "description": "x-displayName: \"Threat Intelligence Action\"\nSpecifies how Threat Intelligence is handled", - "title": "Threat Intelligence Action", + "threat_mesh_action": { + "description": "x-displayName: \"Threat Mesh Action\"\nSpecifies how Threat Mesh is handled", + "title": "Threat Mesh Action", "$ref": "#/definitions/policyModifyAction" }, "tls_fingerprint_matcher": { diff --git a/pbgo/extschema/schema/service_policy/object.pb.go b/pbgo/extschema/schema/service_policy/object.pb.go index ae9ab51f0..275674e68 100644 --- a/pbgo/extschema/schema/service_policy/object.pb.go +++ b/pbgo/extschema/schema/service_policy/object.pb.go @@ -234,45 +234,45 @@ func init() { } var fileDescriptor_310a23958a1c9e6e = []byte{ - // 595 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xcf, 0x6b, 0x14, 0x3f, - 0x14, 0xc0, 0x27, 0xbb, 0x65, 0x5b, 0xd2, 0xd2, 0x6f, 0xbf, 0xe3, 0x65, 0xac, 0x35, 0x94, 0x15, - 0xa4, 0x42, 0x67, 0x06, 0x2a, 0x22, 0x2d, 0xe2, 0x8f, 0x56, 0xe9, 0xa5, 0x45, 0xdd, 0x7a, 0xf2, - 0xb2, 0x64, 0xb2, 0x6f, 0xa7, 0xd1, 0x99, 0xcd, 0x90, 0x64, 0xc6, 0xce, 0x41, 0xf0, 0xe8, 0xb1, - 0x7f, 0x86, 0x08, 0xfe, 0x0f, 0xd6, 0x93, 0x37, 0x4b, 0x4f, 0xbd, 0x08, 0x76, 0xf6, 0xe2, 0x49, - 0xfa, 0x27, 0x48, 0x33, 0x4e, 0xe9, 0x94, 0xb5, 0x08, 0xbd, 0x25, 0xbc, 0xcf, 0xfb, 0xe4, 0x25, - 0x2f, 0x09, 0xbe, 0x95, 0x81, 0xf2, 0xb8, 0xf0, 0x15, 0xdb, 0x86, 0x98, 0xfa, 0x0a, 0x64, 0xc6, - 0x19, 0x74, 0x13, 0x11, 0x71, 0x96, 0xfb, 0x22, 0x78, 0x05, 0x4c, 0x7b, 0x89, 0x14, 0x5a, 0xd8, - 0x73, 0x25, 0xea, 0x95, 0xa8, 0x57, 0x47, 0x67, 0xdd, 0x90, 0xeb, 0xed, 0x34, 0xf0, 0x98, 0x88, - 0xfd, 0x50, 0x84, 0xc2, 0x37, 0x49, 0x41, 0xda, 0x37, 0x33, 0x33, 0x31, 0xa3, 0x52, 0x36, 0x7b, - 0xad, 0xbe, 0xae, 0x48, 0x34, 0x17, 0x03, 0xf5, 0x27, 0xb8, 0x70, 0x61, 0x51, 0x3a, 0x4f, 0xa0, - 0x22, 0xaf, 0xd6, 0xc9, 0xb3, 0xa1, 0x76, 0x3d, 0x94, 0x81, 0x82, 0x41, 0x56, 0x5f, 0xa8, 0xfd, - 0x69, 0x0c, 0xb7, 0x9e, 0x9a, 0x3d, 0xda, 0xcb, 0x78, 0x22, 0x06, 0x4d, 0x7b, 0x54, 0x53, 0x07, - 0xcd, 0xa3, 0x85, 0xc9, 0xa5, 0xeb, 0x5e, 0x7d, 0xc3, 0x25, 0xb8, 0x09, 0x9a, 0xbe, 0xc8, 0x13, - 0xe8, 0x9c, 0xe2, 0xf6, 0x06, 0xfe, 0x4f, 0xe5, 0x4a, 0x43, 0xdc, 0x3d, 0x35, 0x34, 0x8c, 0xe1, - 0xc6, 0x39, 0xc3, 0x96, 0xa1, 0xce, 0x79, 0xa6, 0xcb, 0xdc, 0xcd, 0xca, 0xb6, 0x82, 0xc7, 0x54, - 0x02, 0xcc, 0x69, 0x1a, 0xc5, 0x4d, 0xef, 0xa2, 0x53, 0xf7, 0xb6, 0x12, 0x60, 0xc6, 0x62, 0x72, - 0x56, 0xbe, 0x37, 0xde, 0x3f, 0x40, 0x5f, 0xf6, 0x9c, 0xc6, 0x0c, 0x3a, 0xd8, 0x73, 0xbe, 0x35, - 0xf0, 0x43, 0xdc, 0x5c, 0x07, 0x6d, 0x2f, 0xf7, 0xef, 0xec, 0x30, 0x57, 0x01, 0x4b, 0x25, 0xc4, - 0xa0, 0xb6, 0xdd, 0x80, 0x2a, 0xce, 0xdc, 0x58, 0x0c, 0xb8, 0x16, 0x72, 0x71, 0x3e, 0x03, 0xe5, - 0x72, 0xe1, 0x26, 0x52, 0xec, 0xe4, 0x25, 0xc6, 0x75, 0xee, 0x4a, 0xa0, 0x3d, 0xbc, 0x8a, 0xc7, - 0x3b, 0x90, 0x44, 0x94, 0x81, 0x7d, 0x77, 0xb4, 0x25, 0x55, 0xf0, 0x57, 0xc5, 0x1b, 0xc9, 0x35, - 0xe0, 0x47, 0xb8, 0xb5, 0x26, 0x81, 0xea, 0xcb, 0x29, 0x1e, 0x43, 0x04, 0x97, 0x53, 0x8c, 0x6d, - 0x70, 0x75, 0x99, 0xc3, 0x68, 0x3f, 0xc7, 0x13, 0xd5, 0x89, 0xdb, 0x4f, 0xf0, 0x78, 0xc8, 0xba, - 0xa6, 0x55, 0x65, 0xb7, 0x17, 0x2f, 0x6e, 0xd5, 0x7a, 0x24, 0x02, 0x1a, 0x9d, 0x36, 0xac, 0x15, - 0xb2, 0x93, 0x71, 0xfb, 0x17, 0xc2, 0x53, 0x5b, 0x9a, 0xea, 0x54, 0xfd, 0xf3, 0x45, 0x2c, 0xf1, - 0x11, 0x17, 0xf1, 0x19, 0x9e, 0x2c, 0x5f, 0x6c, 0x57, 0x42, 0x5f, 0x39, 0x8d, 0xf9, 0xe6, 0xc2, - 0xe4, 0xd2, 0xdc, 0xc8, 0x6b, 0xdc, 0x81, 0xfe, 0x49, 0xf2, 0xea, 0xff, 0x1f, 0xdf, 0x4e, 0xd7, - 0x0b, 0xed, 0x60, 0x51, 0x11, 0xca, 0xbe, 0x87, 0x31, 0x13, 0x83, 0x1e, 0x37, 0x8f, 0xc6, 0x69, - 0x8e, 0x14, 0xae, 0x55, 0x80, 0xa9, 0xe6, 0x0c, 0xbf, 0x72, 0xe5, 0xe0, 0xfe, 0x0c, 0x9e, 0xc6, - 0x53, 0x55, 0x81, 0x5e, 0xca, 0x7b, 0xab, 0xbb, 0x68, 0xff, 0x88, 0x58, 0x87, 0x47, 0xc4, 0x3a, - 0x3e, 0x22, 0xe8, 0x5d, 0x41, 0xd0, 0x87, 0x82, 0xa0, 0xaf, 0x05, 0x41, 0xfb, 0x05, 0x41, 0x87, - 0x05, 0x41, 0x3f, 0x0a, 0x82, 0x7e, 0x16, 0xc4, 0x3a, 0x2e, 0x08, 0xda, 0x1d, 0x12, 0xeb, 0xf3, - 0x90, 0xa0, 0xfd, 0x21, 0xb1, 0x0e, 0x87, 0xc4, 0x7a, 0xd9, 0x09, 0x45, 0xf2, 0x3a, 0xf4, 0x32, - 0x11, 0x69, 0x90, 0x92, 0x7a, 0xa9, 0xf2, 0xcd, 0xa0, 0x2f, 0x64, 0x7c, 0xd2, 0xb3, 0x8c, 0xf7, - 0x40, 0xba, 0x55, 0xd8, 0x4f, 0x82, 0x50, 0xf8, 0xb0, 0xa3, 0xab, 0xaf, 0x64, 0xd4, 0x8f, 0x12, - 0xb4, 0xcc, 0x6f, 0x70, 0xfb, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x2e, 0x48, 0xa9, 0x12, 0x0d, - 0x05, 0x00, 0x00, + // 608 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0x58, 0x5c, 0xc8, 0x40, 0x10, 0xeb, 0x65, 0x45, 0x9c, 0x90, 0x35, 0x31, 0x98, + 0xd0, 0x36, 0xc1, 0x78, 0x90, 0x18, 0x4d, 0x40, 0xc3, 0x05, 0xa2, 0x2e, 0xc6, 0x83, 0x1e, 0xd6, + 0xe9, 0xf4, 0x6d, 0x19, 0x6d, 0x77, 0x9a, 0x99, 0x69, 0xa5, 0x07, 0x13, 0x8f, 0x1e, 0xf9, 0x18, + 0xc6, 0x4f, 0x21, 0x9e, 0x3c, 0x19, 0xc2, 0x89, 0xa3, 0x74, 0x2f, 0x9e, 0x0c, 0x9f, 0xc0, 0x18, + 0xa6, 0x16, 0x29, 0x69, 0x36, 0x5e, 0xb8, 0x4d, 0xf3, 0x7e, 0xef, 0xff, 0x7f, 0xd3, 0x79, 0xef, + 0xe1, 0xdb, 0x29, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x6d, 0x88, 0xa8, 0xab, 0x40, 0xa6, 0x9c, 0x41, + 0x2f, 0x16, 0x21, 0x67, 0x99, 0x2b, 0xbc, 0x37, 0xc0, 0xb4, 0x13, 0x4b, 0xa1, 0x85, 0x35, 0x5f, + 0xa0, 0x4e, 0x81, 0x3a, 0x55, 0x74, 0xce, 0x0e, 0xb8, 0xde, 0x4e, 0x3c, 0x87, 0x89, 0xc8, 0x0d, + 0x44, 0x20, 0x5c, 0x93, 0xe4, 0x25, 0x7d, 0xf3, 0x65, 0x3e, 0xcc, 0xa9, 0x10, 0x9b, 0xbb, 0x5e, + 0xf5, 0x15, 0xb1, 0xe6, 0x62, 0xa0, 0xfe, 0x06, 0x17, 0x47, 0x16, 0xa5, 0xb3, 0x18, 0x4a, 0xf2, + 0x5a, 0x95, 0x3c, 0x1b, 0xea, 0x54, 0x43, 0x29, 0x28, 0x18, 0xa4, 0x55, 0xa3, 0xce, 0xf7, 0x4b, + 0xb8, 0xf5, 0xc4, 0xdc, 0xd1, 0xba, 0x87, 0x27, 0x23, 0xd0, 0xd4, 0xa7, 0x9a, 0xb6, 0xd1, 0x02, + 0x5a, 0x9c, 0x5a, 0xbe, 0xe1, 0x54, 0x2f, 0x5c, 0x80, 0x9b, 0xa0, 0xe9, 0xf3, 0x2c, 0x86, 0xee, + 0x29, 0x6e, 0x6d, 0xe0, 0xcb, 0x2a, 0x53, 0x1a, 0xa2, 0xde, 0xa9, 0xc2, 0x98, 0x51, 0xb8, 0x79, + 0x4e, 0x61, 0xcb, 0x50, 0xe7, 0x74, 0x66, 0x8a, 0xdc, 0xcd, 0x52, 0x6d, 0x05, 0x8f, 0xab, 0x18, + 0x58, 0xbb, 0x69, 0x24, 0x6e, 0x39, 0xa3, 0xfe, 0xba, 0xb3, 0x15, 0x03, 0x33, 0x2a, 0x26, 0x67, + 0xe5, 0x77, 0xf3, 0xe3, 0x43, 0xf4, 0x75, 0xaf, 0x3d, 0x36, 0x8b, 0x0e, 0xf6, 0xda, 0xc7, 0x4d, + 0xec, 0xe1, 0xe6, 0x3a, 0x68, 0xeb, 0x55, 0xff, 0xee, 0x0e, 0xb3, 0x15, 0xb0, 0x44, 0x42, 0x04, + 0x6a, 0xdb, 0xf6, 0xa8, 0xe2, 0xcc, 0x8e, 0xc4, 0x80, 0x6b, 0x21, 0x97, 0x16, 0xce, 0x87, 0x95, + 0xa6, 0x03, 0x9f, 0x4a, 0xff, 0x1f, 0x91, 0x82, 0xb2, 0xb9, 0xb0, 0x63, 0x29, 0x76, 0xb2, 0x82, + 0xe4, 0x3a, 0xb3, 0x25, 0x50, 0x1f, 0x53, 0x3c, 0xd1, 0x85, 0x38, 0xa4, 0x0c, 0xac, 0x17, 0xf5, + 0x3e, 0x89, 0x82, 0x51, 0x26, 0x45, 0xb8, 0xde, 0xe1, 0x9d, 0xe4, 0x1a, 0xf0, 0x6b, 0xdc, 0x5a, + 0x93, 0x40, 0xf5, 0x85, 0x3a, 0x3c, 0x82, 0x10, 0x2e, 0xd0, 0x81, 0xe1, 0xf1, 0x0d, 0xae, 0x2e, + 0xf6, 0x2d, 0x3a, 0xcf, 0xf0, 0x64, 0xd9, 0x12, 0xd6, 0x63, 0x3c, 0x11, 0xb0, 0x9e, 0xe9, 0xa5, + 0xa2, 0x1d, 0x97, 0x46, 0xf7, 0xd2, 0x7a, 0x28, 0x3c, 0x1a, 0x9e, 0x76, 0x54, 0x2b, 0x60, 0x27, + 0xe7, 0xce, 0x2f, 0x84, 0xa7, 0xb7, 0x34, 0xd5, 0x89, 0xfa, 0xef, 0x49, 0x29, 0xf0, 0x9a, 0x49, + 0x79, 0x8a, 0xa7, 0x8a, 0x95, 0xd2, 0x93, 0xd0, 0x57, 0xed, 0xb1, 0x85, 0xe6, 0xe2, 0xd4, 0xf2, + 0x7c, 0xed, 0x9c, 0x75, 0xa1, 0x7f, 0x92, 0xbc, 0x7a, 0xe5, 0xf3, 0xfb, 0x99, 0x6a, 0xa1, 0x5d, + 0x2c, 0x4a, 0x42, 0x59, 0xf7, 0x31, 0x66, 0x62, 0xe0, 0x73, 0x33, 0xd5, 0xed, 0x66, 0xad, 0xe0, + 0x5a, 0x09, 0x98, 0x6a, 0xce, 0xf0, 0x2b, 0x57, 0x0f, 0x1e, 0xcc, 0xe2, 0x19, 0x3c, 0x5d, 0x16, + 0xe8, 0x24, 0xdc, 0x5f, 0xdd, 0x45, 0xfb, 0x47, 0xa4, 0x71, 0x78, 0x44, 0x1a, 0xc7, 0x47, 0x04, + 0x7d, 0xc8, 0x09, 0xfa, 0x94, 0x13, 0xf4, 0x2d, 0x27, 0x68, 0x3f, 0x27, 0xe8, 0x30, 0x27, 0xe8, + 0x47, 0x4e, 0xd0, 0xcf, 0x9c, 0x34, 0x8e, 0x73, 0x82, 0x76, 0x87, 0xa4, 0xf1, 0x65, 0x48, 0xd0, + 0xfe, 0x90, 0x34, 0x0e, 0x87, 0xa4, 0xf1, 0xb2, 0x1b, 0x88, 0xf8, 0x6d, 0xe0, 0xa4, 0x22, 0xd4, + 0x20, 0x25, 0x75, 0x12, 0xe5, 0x9a, 0x43, 0x5f, 0xc8, 0xe8, 0xe4, 0xcd, 0x52, 0xee, 0x83, 0xb4, + 0xcb, 0xb0, 0x1b, 0x7b, 0x81, 0x70, 0x61, 0x47, 0x97, 0xbb, 0xae, 0x6e, 0xe5, 0x79, 0x2d, 0xb3, + 0xae, 0xee, 0xfc, 0x09, 0x00, 0x00, 0xff, 0xff, 0x66, 0xb9, 0xe8, 0x1e, 0xae, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/service_policy/pkg.vespkg.go b/pbgo/extschema/schema/service_policy/pkg.vespkg.go index 683baab90..bcef43685 100644 --- a/pbgo/extschema/schema/service_policy/pkg.vespkg.go +++ b/pbgo/extschema/schema/service_policy/pkg.vespkg.go @@ -88,7 +88,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.rule_list.rules.#.spec.scheme.#", "spec.rule_list.rules.#.spec.server_selector", "spec.rule_list.rules.#.spec.shape_protected_endpoint_action", - "spec.rule_list.rules.#.spec.threat_intelligence_action", + "spec.rule_list.rules.#.spec.threat_mesh_action", "spec.rule_list.rules.#.spec.url_matcher", "spec.rule_list.rules.#.spec.virtual_host_matcher", "spec.rule_list.rules.#.spec.waf_action.data_guard_control", @@ -100,25 +100,25 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.service_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.service_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "spec.simple_rules.#.threat_intelligence_action", + FieldPath: "spec.simple_rules.#.threat_mesh_action", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } @@ -126,30 +126,30 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.service_policy.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "spec.simple_rules.#.threat_intelligence_action", + FieldPath: "spec.simple_rules.#.threat_mesh_action", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } @@ -157,14 +157,14 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.service_policy.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "items.#.get_spec.simple_rules.#.threat_intelligence_action", + FieldPath: "items.#.get_spec.simple_rules.#.threat_mesh_action", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } @@ -195,7 +195,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.rule_list.rules.#.spec.scheme.#", "spec.rule_list.rules.#.spec.server_selector", "spec.rule_list.rules.#.spec.shape_protected_endpoint_action", - "spec.rule_list.rules.#.spec.threat_intelligence_action", + "spec.rule_list.rules.#.spec.threat_mesh_action", "spec.rule_list.rules.#.spec.url_matcher", "spec.rule_list.rules.#.spec.virtual_host_matcher", "spec.rule_list.rules.#.spec.waf_action.data_guard_control", @@ -207,11 +207,11 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.service_policy.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.allow_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.deny_list.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/service_policy/public_crudapi.pb.go b/pbgo/extschema/schema/service_policy/public_crudapi.pb.go index fd504054c..3a2a842f6 100644 --- a/pbgo/extschema/schema/service_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/service_policy/public_crudapi.pb.go @@ -1068,108 +1068,109 @@ func init() { } var fileDescriptor_ce7ea868032c949f = []byte{ - // 1611 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0x45, + // 1627 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x1b, 0x45, 0x14, 0xce, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb3, 0x1d, 0xda, 0xd4, 0x31, 0xc1, 0x32, 0x6e, 0x85, - 0x92, 0x50, 0xaf, 0x4b, 0xaa, 0xd2, 0x36, 0xaa, 0x5a, 0x9c, 0xc4, 0x89, 0x52, 0xd2, 0xa4, 0x8c, - 0xdd, 0x0a, 0x21, 0xa4, 0xd5, 0x7a, 0x3d, 0x76, 0x97, 0xda, 0xde, 0x65, 0x67, 0xec, 0xd4, 0x40, - 0x24, 0xd4, 0x03, 0x27, 0x0e, 0x48, 0xc0, 0x05, 0xf5, 0xc0, 0x05, 0x89, 0x13, 0x67, 0xa4, 0x5c, - 0x7a, 0x00, 0xb5, 0xf4, 0x80, 0x2a, 0x10, 0x52, 0xb9, 0x11, 0x87, 0x43, 0x8f, 0x15, 0x12, 0x17, - 0x4e, 0x68, 0x67, 0x76, 0x5d, 0xdb, 0x71, 0x5d, 0x3b, 0xcd, 0xc9, 0x33, 0xf3, 0xde, 0xfb, 0xf6, - 0x7d, 0xf3, 0x7e, 0xfc, 0x76, 0xe1, 0x1b, 0x35, 0x42, 0x65, 0xdd, 0x48, 0x52, 0xed, 0x06, 0x29, - 0xab, 0x49, 0x4a, 0xac, 0x9a, 0xae, 0x11, 0xc5, 0x34, 0x4a, 0xba, 0x56, 0x4f, 0x9a, 0xd5, 0x5c, - 0x49, 0xd7, 0x14, 0xcd, 0xaa, 0xe6, 0x55, 0x53, 0x97, 0x4d, 0xcb, 0x60, 0x06, 0x9a, 0x12, 0x26, - 0xb2, 0x30, 0x91, 0xdb, 0x4d, 0x22, 0x89, 0xa2, 0xce, 0x6e, 0x54, 0x73, 0xb2, 0x66, 0x94, 0x93, - 0x45, 0xa3, 0x68, 0x24, 0xb9, 0x51, 0xae, 0x5a, 0xe0, 0x3b, 0xbe, 0xe1, 0x2b, 0x01, 0x16, 0x99, - 0x2a, 0x1a, 0x46, 0xb1, 0x44, 0x92, 0xaa, 0xa9, 0x27, 0xd5, 0x4a, 0xc5, 0x60, 0x2a, 0xd3, 0x8d, - 0x0a, 0x75, 0xa4, 0x2f, 0x3b, 0xd2, 0x26, 0x06, 0x29, 0x9b, 0xac, 0xee, 0x08, 0x23, 0xed, 0xae, - 0x13, 0xcb, 0x32, 0xac, 0xa6, 0x61, 0xbb, 0xcc, 0x30, 0x5b, 0x51, 0x67, 0x7a, 0x72, 0x36, 0x72, - 0x1f, 0x10, 0x8d, 0x39, 0xaa, 0xd3, 0x3d, 0x55, 0x59, 0xdd, 0x24, 0x2e, 0xe8, 0x64, 0xbb, 0x66, - 0xab, 0x28, 0xde, 0x2e, 0xaa, 0x11, 0x4a, 0x2a, 0xb5, 0x0e, 0x9f, 0x62, 0x1d, 0x3a, 0x3a, 0xd9, - 0x54, 0xda, 0x34, 0xe2, 0x3f, 0x00, 0x38, 0xba, 0x68, 0x11, 0x95, 0x11, 0x4c, 0x3e, 0xac, 0x12, - 0xca, 0xd0, 0x25, 0x18, 0x28, 0x13, 0xa6, 0xe6, 0x55, 0xa6, 0x86, 0x41, 0x0c, 0x4c, 0x87, 0xe6, - 0x8e, 0xcb, 0xed, 0xb1, 0xd9, 0xe0, 0x5c, 0x84, 0xd5, 0x15, 0xc2, 0xd4, 0x6c, 0xdd, 0x24, 0xb8, - 0x69, 0x84, 0xde, 0x81, 0x3e, 0x6a, 0x12, 0x2d, 0xec, 0xe1, 0xc6, 0x27, 0xe5, 0x5e, 0x81, 0x95, - 0x05, 0x4a, 0xc6, 0x24, 0x9a, 0x8d, 0xb2, 0x30, 0xfe, 0xcd, 0xd6, 0x88, 0x6d, 0x2c, 0x17, 0x35, - 0xc5, 0xfe, 0xc5, 0x1c, 0x6a, 0x3e, 0xf8, 0xe0, 0xa2, 0x5f, 0x3c, 0x35, 0xfe, 0x1f, 0x80, 0x63, - 0xae, 0xc3, 0xd4, 0x34, 0x2a, 0x94, 0xa0, 0x0b, 0x7b, 0x3c, 0x8e, 0x75, 0xf5, 0x78, 0x85, 0xb0, - 0x2e, 0xee, 0x6e, 0xc0, 0x71, 0x5a, 0xa7, 0x8c, 0x94, 0x95, 0x26, 0x88, 0x97, 0x83, 0xbc, 0xd6, - 0x01, 0x92, 0xe1, 0x5a, 0x7b, 0xa1, 0xc6, 0x84, 0xf9, 0x15, 0x17, 0x70, 0xbd, 0x8d, 0xff, 0x4c, - 0x6f, 0xfe, 0x2b, 0x84, 0x0d, 0x40, 0xbe, 0x01, 0xe0, 0x18, 0x26, 0x66, 0x49, 0xd5, 0x9a, 0xe1, - 0x7a, 0x6b, 0x0f, 0xf9, 0x13, 0x5d, 0xc9, 0x3b, 0x66, 0x5d, 0x2e, 0x00, 0xb7, 0xf9, 0x9b, 0xe8, - 0xed, 0xaf, 0x03, 0xf3, 0x1c, 0x9f, 0x51, 0x12, 0x4a, 0x16, 0xa1, 0x46, 0xd5, 0xd2, 0x88, 0x52, - 0x23, 0x16, 0xd5, 0x8d, 0x0a, 0xbf, 0xd5, 0xe0, 0x82, 0xef, 0xf1, 0x36, 0x00, 0x78, 0xdc, 0x95, - 0x5e, 0x17, 0xc2, 0x56, 0x92, 0x87, 0xe1, 0x78, 0x93, 0xa3, 0x88, 0x70, 0xfc, 0x0e, 0x80, 0x70, + 0x92, 0x50, 0xaf, 0x4b, 0xaa, 0xaa, 0x34, 0xaa, 0x5a, 0x9c, 0xc4, 0x89, 0x52, 0xd2, 0xa4, 0x8c, + 0xdd, 0x0a, 0x10, 0xd2, 0x6a, 0xbd, 0x1e, 0xbb, 0x4b, 0x6d, 0xef, 0xb2, 0x33, 0x76, 0x6a, 0xa1, + 0x48, 0x55, 0x0f, 0x9c, 0x91, 0x0a, 0x02, 0x55, 0x15, 0xe2, 0x82, 0x84, 0x38, 0x70, 0x46, 0xca, + 0xa5, 0x07, 0x24, 0xaa, 0x1e, 0x50, 0x05, 0x97, 0x1e, 0xa9, 0x03, 0x52, 0x8f, 0x15, 0x17, 0x24, + 0xb8, 0xa0, 0x9d, 0xd9, 0x75, 0x6d, 0xc7, 0x75, 0xed, 0x90, 0x72, 0xca, 0xce, 0xbc, 0xf7, 0xbe, + 0x7d, 0xdf, 0xfb, 0xcb, 0xf3, 0xc2, 0x37, 0x6a, 0x84, 0xca, 0xba, 0x91, 0xa4, 0xda, 0x55, 0x52, + 0x56, 0x93, 0x94, 0x58, 0x35, 0x5d, 0x23, 0x8a, 0x69, 0x94, 0x74, 0xad, 0x9e, 0x34, 0xab, 0xb9, + 0x92, 0xae, 0x29, 0x9a, 0x55, 0xcd, 0xab, 0xa6, 0x2e, 0x9b, 0x96, 0xc1, 0x0c, 0x34, 0x25, 0x4c, + 0x64, 0x61, 0x22, 0xb7, 0x9b, 0x44, 0x12, 0x45, 0x9d, 0x5d, 0xad, 0xe6, 0x64, 0xcd, 0x28, 0x27, + 0x8b, 0x46, 0xd1, 0x48, 0x72, 0xa3, 0x5c, 0xb5, 0xc0, 0x4f, 0xfc, 0xc0, 0x9f, 0x04, 0x58, 0x64, + 0xaa, 0x68, 0x18, 0xc5, 0x12, 0x49, 0xaa, 0xa6, 0x9e, 0x54, 0x2b, 0x15, 0x83, 0xa9, 0x4c, 0x37, + 0x2a, 0xd4, 0x91, 0xbe, 0xec, 0x48, 0x9b, 0x18, 0xa4, 0x6c, 0xb2, 0xba, 0x23, 0x8c, 0xb4, 0xbb, + 0x4e, 0x2c, 0xcb, 0xb0, 0x9a, 0x86, 0xed, 0x32, 0xc3, 0x6c, 0x45, 0x9d, 0xe9, 0xc9, 0xd9, 0xc8, + 0x7d, 0x48, 0x34, 0xe6, 0xa8, 0x4e, 0xf7, 0x54, 0x65, 0x75, 0x93, 0xb8, 0xa0, 0x93, 0xed, 0x9a, + 0xad, 0xa2, 0x78, 0xbb, 0xa8, 0x46, 0x28, 0xa9, 0xd4, 0x3a, 0x7c, 0x8a, 0x75, 0xe8, 0xe8, 0x64, + 0x53, 0x69, 0xd3, 0x88, 0x7f, 0x0f, 0xe0, 0xe8, 0xa2, 0x45, 0x54, 0x46, 0x30, 0xf9, 0xa8, 0x4a, + 0x28, 0x43, 0xe7, 0x61, 0xa0, 0x4c, 0x98, 0x9a, 0x57, 0x99, 0x1a, 0x06, 0x31, 0x30, 0x1d, 0x9a, + 0x3b, 0x2a, 0xb7, 0xe7, 0x66, 0x83, 0x73, 0x11, 0x56, 0x17, 0x09, 0x53, 0xb3, 0x75, 0x93, 0xe0, + 0xa6, 0x11, 0x7a, 0x07, 0xfa, 0xa8, 0x49, 0xb4, 0xb0, 0x87, 0x1b, 0x1f, 0x97, 0x7b, 0x25, 0x56, + 0x16, 0x28, 0x19, 0x93, 0x68, 0x36, 0xca, 0xc2, 0xf8, 0xed, 0xad, 0x11, 0xdb, 0x58, 0x2e, 0x6a, + 0x8a, 0xfd, 0x17, 0x73, 0xa8, 0xf9, 0xe0, 0xfd, 0x73, 0x7e, 0xf1, 0xd6, 0xf8, 0xdf, 0x00, 0x8e, + 0xb9, 0x0e, 0x53, 0xd3, 0xa8, 0x50, 0x82, 0xce, 0xee, 0xf2, 0x38, 0xd6, 0xd5, 0xe3, 0x15, 0xc2, + 0xba, 0xb8, 0xbb, 0x01, 0xc7, 0x69, 0x9d, 0x32, 0x52, 0x56, 0x9a, 0x20, 0x5e, 0x0e, 0xf2, 0x5a, + 0x07, 0x48, 0x86, 0x6b, 0xed, 0x86, 0x1a, 0x13, 0xe6, 0x17, 0x5d, 0xc0, 0xf5, 0x36, 0xfe, 0x33, + 0xbd, 0xf9, 0xaf, 0x10, 0x36, 0x00, 0xf9, 0x06, 0x80, 0x63, 0x98, 0x98, 0x25, 0x55, 0x6b, 0xa6, + 0xeb, 0xad, 0x5d, 0xe4, 0x8f, 0x75, 0x25, 0xef, 0x98, 0x75, 0x09, 0x00, 0x6e, 0xf3, 0x37, 0xd1, + 0xdb, 0x5f, 0x07, 0xe6, 0x39, 0x3e, 0xa3, 0x24, 0x94, 0x2c, 0x42, 0x8d, 0xaa, 0xa5, 0x11, 0xa5, + 0x46, 0x2c, 0xaa, 0x1b, 0x15, 0x1e, 0xd5, 0xe0, 0x82, 0xef, 0xf1, 0x36, 0x00, 0x78, 0xdc, 0x95, + 0x5e, 0x11, 0xc2, 0x56, 0x92, 0x07, 0xe1, 0x78, 0x93, 0xa3, 0xc8, 0x70, 0xfc, 0x0e, 0x80, 0x70, 0x85, 0x30, 0x97, 0xf3, 0x14, 0x0c, 0x56, 0xd4, 0x32, 0xa1, 0xa6, 0xaa, 0x11, 0x4e, 0x3a, 0x88, - 0x9f, 0x1e, 0x20, 0x04, 0x7d, 0xf6, 0x86, 0xf3, 0x09, 0x62, 0xbe, 0x46, 0xef, 0x43, 0xfb, 0x89, - 0x1c, 0x4c, 0x29, 0x18, 0x56, 0x59, 0x65, 0xdc, 0x9d, 0xb1, 0xb9, 0xd3, 0xcf, 0x0d, 0x8f, 0xeb, - 0xc4, 0x32, 0x37, 0x5b, 0x34, 0xf2, 0x04, 0x8f, 0x59, 0x6d, 0x67, 0xf1, 0xaf, 0xfd, 0x30, 0xd4, - 0xa2, 0x89, 0xd6, 0x60, 0x48, 0xe3, 0x29, 0xca, 0x9f, 0xe5, 0x5c, 0xec, 0xeb, 0xfd, 0x14, 0x82, - 0xc3, 0x10, 0x43, 0x61, 0x6f, 0xe3, 0xa3, 0x0d, 0x38, 0x62, 0x89, 0xfb, 0x10, 0x70, 0xde, 0x7e, - 0xea, 0xaa, 0x3d, 0x4b, 0x70, 0xc8, 0x41, 0xe0, 0x80, 0xdd, 0x82, 0xe3, 0xeb, 0x11, 0x9c, 0xb6, - 0x02, 0x1b, 0x3e, 0x88, 0x02, 0x3b, 0x74, 0x20, 0x05, 0xe6, 0x3f, 0x98, 0x02, 0x43, 0xab, 0xd0, - 0x4f, 0x99, 0xca, 0xaa, 0x34, 0xfc, 0xed, 0x1d, 0x10, 0xf3, 0x4e, 0x87, 0xe6, 0x66, 0x7b, 0x63, - 0x66, 0xb8, 0xb6, 0x70, 0x74, 0xc1, 0x7b, 0x77, 0x0b, 0x60, 0x07, 0x00, 0xad, 0xc2, 0xc3, 0x16, - 0x29, 0x10, 0xcb, 0xd2, 0x2b, 0x45, 0x45, 0xf4, 0x7c, 0x1a, 0x0e, 0x70, 0xcc, 0xa9, 0x67, 0x94, - 0x65, 0x81, 0x73, 0x94, 0x9a, 0x66, 0xe2, 0x9c, 0xa2, 0xeb, 0x30, 0x9c, 0x27, 0x25, 0xc2, 0x48, - 0x5e, 0x11, 0x32, 0x92, 0x6f, 0x22, 0x06, 0xfb, 0x40, 0x9c, 0x70, 0xac, 0xb1, 0x63, 0xec, 0xe2, - 0xbe, 0x0b, 0x27, 0xf3, 0x3a, 0x55, 0x73, 0xa5, 0x6e, 0xc0, 0xb0, 0x0f, 0xe0, 0x63, 0xae, 0x79, - 0x07, 0x72, 0x4b, 0x0d, 0x5f, 0xf6, 0x05, 0x80, 0xe4, 0x89, 0x7f, 0x07, 0x60, 0x68, 0x4d, 0xa7, - 0x7d, 0xd6, 0xed, 0xab, 0x70, 0xa4, 0xa4, 0xe6, 0x48, 0x49, 0x29, 0xe8, 0x25, 0x46, 0x2c, 0xa7, - 0x7e, 0x43, 0xfc, 0x6c, 0x99, 0x1f, 0xa1, 0xe3, 0x70, 0xd4, 0x22, 0xa6, 0x61, 0x31, 0xa5, 0xa0, - 0x93, 0x52, 0x9e, 0x86, 0xbd, 0x31, 0xef, 0x74, 0x10, 0x8f, 0x88, 0xc3, 0x65, 0x7e, 0x86, 0x4e, - 0xc1, 0x23, 0x8e, 0x92, 0x08, 0x8a, 0xab, 0xeb, 0xe3, 0xba, 0x48, 0xc8, 0x44, 0x08, 0x85, 0x45, - 0xfc, 0x27, 0x3f, 0x94, 0x84, 0x9f, 0xa2, 0x80, 0x57, 0x19, 0x29, 0xa3, 0x09, 0xe8, 0x67, 0xa4, - 0xa2, 0x56, 0x18, 0xcf, 0xb3, 0x20, 0x76, 0x76, 0xfb, 0x68, 0x3e, 0x12, 0xf4, 0x56, 0xf5, 0xbc, - 0xe8, 0x7f, 0xd8, 0x5e, 0xa2, 0x18, 0x0c, 0xe5, 0x09, 0xd5, 0x2c, 0x9d, 0xff, 0x17, 0x87, 0x43, - 0x82, 0x69, 0xcb, 0x11, 0x8a, 0xc0, 0x80, 0x7b, 0xcd, 0xe1, 0x91, 0x18, 0x98, 0x0e, 0xe0, 0xe6, - 0x1e, 0x61, 0xe8, 0xe7, 0x97, 0x22, 0x28, 0x85, 0xe6, 0xe6, 0x7b, 0x67, 0x6b, 0x27, 0x33, 0x79, - 0x8d, 0x1b, 0xa7, 0x2b, 0xcc, 0xaa, 0x63, 0x07, 0x09, 0xa9, 0x30, 0xd4, 0x32, 0x28, 0x39, 0x79, - 0x70, 0x69, 0x40, 0xe0, 0xd4, 0x53, 0x04, 0x81, 0xde, 0x8a, 0x89, 0xce, 0x43, 0x68, 0x6c, 0x56, - 0x88, 0xa5, 0xd8, 0x63, 0x48, 0x38, 0xc8, 0x8b, 0x37, 0xd2, 0xf1, 0x84, 0xeb, 0x3a, 0xd9, 0x74, - 0xf3, 0x2c, 0xc8, 0xb5, 0xed, 0x93, 0xb6, 0x06, 0x34, 0x7a, 0x10, 0x0d, 0x68, 0xec, 0x85, 0x1a, - 0xd0, 0x12, 0x0c, 0x14, 0x09, 0xe3, 0x2d, 0xc4, 0x69, 0x65, 0xfd, 0x37, 0x21, 0x7c, 0xa8, 0x28, - 0x36, 0x68, 0x1d, 0x42, 0x27, 0x41, 0x29, 0x61, 0x4e, 0x93, 0x18, 0xb8, 0xf1, 0x04, 0x05, 0x44, - 0x86, 0xb0, 0xc8, 0x79, 0x18, 0x6a, 0x89, 0xac, 0x9d, 0x75, 0x37, 0x49, 0xdd, 0xc9, 0x50, 0x7b, - 0x89, 0x8e, 0xc0, 0xe1, 0x9a, 0x5a, 0xaa, 0xba, 0xc9, 0x29, 0x36, 0xf3, 0x9e, 0x73, 0x20, 0x72, - 0x11, 0x4a, 0x9d, 0xb1, 0x1b, 0xc4, 0xfe, 0xb2, 0x2f, 0x30, 0x2c, 0xf9, 0xe3, 0x9f, 0x01, 0x38, - 0xd2, 0x9a, 0x13, 0x68, 0x09, 0x0e, 0xeb, 0x8c, 0x94, 0x69, 0x58, 0x74, 0x55, 0x79, 0xb0, 0x74, - 0xc2, 0xc2, 0x18, 0x9d, 0x82, 0x7e, 0x31, 0x85, 0x87, 0x3d, 0x1c, 0x26, 0xdc, 0x01, 0x93, 0xb6, - 0x85, 0xfc, 0x6a, 0x1d, 0xbd, 0xf8, 0x4d, 0x38, 0xba, 0xc4, 0x9b, 0xdf, 0xfe, 0x07, 0x86, 0x69, - 0x28, 0x15, 0x54, 0xbd, 0xa4, 0xe8, 0x85, 0x66, 0x93, 0xe4, 0x05, 0x1c, 0xc0, 0x63, 0xf6, 0xf9, - 0x6a, 0xc1, 0x6d, 0x7e, 0xb3, 0xff, 0x00, 0x78, 0xb4, 0xeb, 0x98, 0x80, 0x22, 0x70, 0x62, 0x25, - 0x9d, 0x55, 0x70, 0xe6, 0xaa, 0xb2, 0xbc, 0x81, 0xaf, 0xa4, 0xb2, 0xca, 0x52, 0x7a, 0x39, 0x75, - 0x6d, 0x2d, 0x2b, 0x0d, 0xa1, 0x57, 0xe0, 0x64, 0x87, 0x6c, 0x79, 0x03, 0x2b, 0x8b, 0x38, 0x9d, - 0xca, 0xa6, 0x25, 0x80, 0xa2, 0x30, 0xd2, 0x45, 0x8c, 0xd3, 0x57, 0xd7, 0x52, 0x8b, 0x69, 0xc9, - 0x83, 0x26, 0xe1, 0xd1, 0x0e, 0x79, 0x26, 0x9b, 0xca, 0x5e, 0xcb, 0x48, 0x5e, 0x74, 0x0c, 0xbe, - 0xd4, 0x21, 0xc2, 0xe9, 0xd4, 0x92, 0xe4, 0x43, 0x27, 0x60, 0x6c, 0x8f, 0x60, 0x39, 0x8d, 0xf1, - 0xea, 0xfa, 0x8a, 0xb2, 0xb1, 0x70, 0x39, 0xbd, 0x98, 0xcd, 0x48, 0xc3, 0x5d, 0xb4, 0x16, 0xf0, - 0xc6, 0xdb, 0xe9, 0x75, 0xa1, 0x9c, 0x5e, 0x5f, 0x4c, 0x67, 0x24, 0xff, 0xdc, 0xcf, 0x41, 0xe8, - 0x4d, 0x5d, 0x5d, 0x45, 0x3b, 0x00, 0xfa, 0xc5, 0xe4, 0x82, 0x06, 0x99, 0x6f, 0x22, 0x27, 0xfb, - 0x53, 0x76, 0xc6, 0xbf, 0x4f, 0x1a, 0xf7, 0xc2, 0x6f, 0x16, 0xce, 0xdc, 0xd2, 0x12, 0x94, 0x68, - 0x55, 0x8b, 0x94, 0x09, 0xbd, 0x91, 0xc8, 0xa9, 0x54, 0xd7, 0x12, 0x55, 0x4a, 0xac, 0x93, 0x35, - 0x42, 0x13, 0xba, 0x91, 0x30, 0x2d, 0xe3, 0x56, 0x5d, 0xa8, 0xe8, 0xac, 0x9e, 0xd8, 0xb4, 0x74, - 0x46, 0x6e, 0xff, 0xfe, 0xf7, 0x97, 0x9e, 0x0b, 0xf1, 0xb3, 0xce, 0x4b, 0x67, 0xb2, 0x19, 0x75, - 0x9a, 0xfc, 0xd8, 0xed, 0x06, 0x72, 0xf3, 0x70, 0xab, 0xe3, 0x5d, 0x8c, 0xce, 0x83, 0x59, 0xf4, - 0x27, 0x80, 0xde, 0x15, 0xc2, 0xd0, 0x74, 0x1f, 0xa3, 0xa2, 0x60, 0x37, 0xd3, 0xf7, 0x50, 0x19, - 0xdf, 0xba, 0xff, 0xa3, 0x07, 0x34, 0xee, 0x85, 0xcf, 0x75, 0xa7, 0x57, 0x36, 0x2a, 0x3a, 0x33, - 0x9e, 0xc5, 0xd0, 0x22, 0x6a, 0x9e, 0x13, 0x3c, 0x8b, 0xce, 0x74, 0x23, 0xf8, 0x6c, 0x5e, 0x42, - 0xb6, 0x85, 0xfe, 0x00, 0xd0, 0x67, 0xd7, 0x1d, 0x9a, 0xe9, 0xa7, 0x36, 0x05, 0xbb, 0xd9, 0xfe, - 0xcb, 0x38, 0x5e, 0x3b, 0x10, 0x7a, 0xa7, 0x90, 0x3c, 0x18, 0x3d, 0xf4, 0x2f, 0x80, 0x87, 0x9c, - 0x11, 0x18, 0x0d, 0x34, 0x29, 0x47, 0x12, 0x7d, 0x6a, 0x3b, 0x04, 0x3f, 0x07, 0x2f, 0x98, 0x9b, - 0x6b, 0x91, 0x95, 0x7d, 0xe6, 0x66, 0x87, 0xd2, 0x96, 0x9d, 0xab, 0xbf, 0x00, 0xe8, 0x17, 0xad, - 0xef, 0x79, 0xf5, 0xd8, 0xd6, 0x20, 0x23, 0x13, 0xb2, 0xf8, 0x26, 0x22, 0xbb, 0xdf, 0x44, 0xe4, - 0x74, 0xd9, 0x64, 0xf5, 0xf8, 0x47, 0x2f, 0xc8, 0x6e, 0x7e, 0x76, 0x7f, 0x89, 0x39, 0x0f, 0x66, - 0x23, 0xb9, 0xbb, 0xdb, 0xc0, 0xf3, 0xdb, 0x36, 0x38, 0xde, 0x93, 0x87, 0xf8, 0x33, 0x7c, 0xb4, - 0x0d, 0x40, 0x63, 0x1b, 0xcc, 0xf4, 0xfd, 0xef, 0x79, 0xfb, 0xd7, 0xb0, 0x47, 0x02, 0x0b, 0x5f, - 0x81, 0x07, 0x17, 0x87, 0x17, 0xf1, 0xb5, 0xa5, 0xb5, 0x87, 0x3b, 0xd1, 0xa1, 0x47, 0x3b, 0xd1, - 0xa1, 0x27, 0x3b, 0x51, 0xf0, 0x69, 0x23, 0x0a, 0xbe, 0x6f, 0x44, 0xc1, 0xfd, 0x46, 0x14, 0x3c, - 0x6c, 0x44, 0xc1, 0x5f, 0x8d, 0x28, 0x78, 0xdc, 0x88, 0x0e, 0x3d, 0x69, 0x44, 0xc1, 0x17, 0xbb, - 0xd1, 0xa1, 0xbb, 0xbb, 0x51, 0xf0, 0x70, 0x37, 0x3a, 0xf4, 0x68, 0x37, 0x3a, 0xf4, 0x1e, 0x2e, - 0x1a, 0xe6, 0xcd, 0xa2, 0x5c, 0x33, 0xec, 0x09, 0xd5, 0x52, 0xe5, 0x2a, 0x4d, 0xf2, 0x85, 0xfd, - 0xae, 0x66, 0x5f, 0x4c, 0x4d, 0xcf, 0x13, 0x2b, 0xe1, 0x8a, 0x93, 0x66, 0xae, 0x68, 0x24, 0xc9, - 0x2d, 0xe6, 0x7e, 0xfb, 0xe9, 0xf6, 0x09, 0x28, 0xe7, 0xe7, 0x61, 0x38, 0xfd, 0x7f, 0x00, 0x00, - 0x00, 0xff, 0xff, 0x09, 0x7d, 0x77, 0x8c, 0x48, 0x13, 0x00, 0x00, + 0x9f, 0x5e, 0x20, 0x04, 0x7d, 0xf6, 0x81, 0xf3, 0x09, 0x62, 0xfe, 0x8c, 0x3e, 0x80, 0xf6, 0x1b, + 0x39, 0x98, 0x52, 0x30, 0xac, 0xb2, 0xca, 0xb8, 0x3b, 0x63, 0x73, 0x27, 0x9f, 0x9b, 0x1e, 0xd7, + 0x89, 0x65, 0x6e, 0xb6, 0x68, 0xe4, 0x09, 0x1e, 0xb3, 0xda, 0xee, 0xe2, 0x9f, 0xfb, 0x61, 0xa8, + 0x45, 0x13, 0xad, 0xc1, 0x90, 0xc6, 0x4b, 0x94, 0xbf, 0xcb, 0x09, 0xec, 0xeb, 0xfd, 0x34, 0x82, + 0xc3, 0x10, 0x43, 0x61, 0x6f, 0xe3, 0xa3, 0x0d, 0x38, 0x62, 0x89, 0x78, 0x08, 0x38, 0x6f, 0x3f, + 0x7d, 0xd5, 0x5e, 0x25, 0x38, 0xe4, 0x20, 0x70, 0xc0, 0x6e, 0xc9, 0xf1, 0xf5, 0x48, 0x4e, 0x5b, + 0x83, 0x0d, 0xef, 0x47, 0x83, 0x1d, 0xd8, 0x97, 0x06, 0xf3, 0xef, 0x4f, 0x83, 0xa1, 0x55, 0xe8, + 0xa7, 0x4c, 0x65, 0x55, 0x1a, 0xfe, 0xfa, 0x0e, 0x88, 0x79, 0xa7, 0x43, 0x73, 0xb3, 0xbd, 0x31, + 0x33, 0x5c, 0x5b, 0x38, 0xba, 0xe0, 0xbd, 0xbb, 0x05, 0xb0, 0x03, 0x80, 0x56, 0xe1, 0x41, 0x8b, + 0x14, 0x88, 0x65, 0xe9, 0x95, 0xa2, 0x22, 0x66, 0x3e, 0x0d, 0x07, 0x38, 0xe6, 0xd4, 0x33, 0xda, + 0xb2, 0xc0, 0x39, 0x4a, 0x4d, 0x33, 0x71, 0x4f, 0xd1, 0x15, 0x18, 0xce, 0x93, 0x12, 0x61, 0x24, + 0xaf, 0x08, 0x19, 0xc9, 0x37, 0x11, 0x83, 0x7d, 0x20, 0x4e, 0x38, 0xd6, 0xd8, 0x31, 0x76, 0x71, + 0xdf, 0x85, 0x93, 0x79, 0x9d, 0xaa, 0xb9, 0x52, 0x37, 0x60, 0xd8, 0x07, 0xf0, 0x11, 0xd7, 0xbc, + 0x03, 0xb9, 0xa5, 0x87, 0x2f, 0xf8, 0x02, 0x40, 0xf2, 0xc4, 0xbf, 0x01, 0x30, 0xb4, 0xa6, 0xd3, + 0x3e, 0xfb, 0xf6, 0x55, 0x38, 0x52, 0x52, 0x73, 0xa4, 0xa4, 0x14, 0xf4, 0x12, 0x23, 0x96, 0xd3, + 0xbf, 0x21, 0x7e, 0xb7, 0xcc, 0xaf, 0xd0, 0x51, 0x38, 0x6a, 0x11, 0xd3, 0xb0, 0x98, 0x52, 0xd0, + 0x49, 0x29, 0x4f, 0xc3, 0xde, 0x98, 0x77, 0x3a, 0x88, 0x47, 0xc4, 0xe5, 0x32, 0xbf, 0x43, 0x27, + 0xe0, 0x21, 0x47, 0x49, 0x24, 0xc5, 0xd5, 0xf5, 0x71, 0x5d, 0x24, 0x64, 0x22, 0x85, 0xc2, 0x22, + 0xfe, 0xa3, 0x1f, 0x4a, 0xc2, 0x4f, 0xd1, 0xc0, 0xab, 0x8c, 0x94, 0xd1, 0x04, 0xf4, 0x33, 0x52, + 0x51, 0x2b, 0x8c, 0xd7, 0x59, 0x10, 0x3b, 0xa7, 0x3d, 0x0c, 0x1f, 0x09, 0x7a, 0xab, 0x7a, 0x5e, + 0xcc, 0x3f, 0x6c, 0x3f, 0xa2, 0x18, 0x0c, 0xe5, 0x09, 0xd5, 0x2c, 0x9d, 0xff, 0x2f, 0x0e, 0x87, + 0x04, 0xd3, 0x96, 0x2b, 0x14, 0x81, 0x01, 0x37, 0xcc, 0xe1, 0x91, 0x18, 0x98, 0x0e, 0xe0, 0xe6, + 0x19, 0x61, 0xe8, 0xe7, 0x41, 0x11, 0x94, 0x42, 0x73, 0xf3, 0xbd, 0xab, 0xb5, 0x93, 0x99, 0xbc, + 0xc6, 0x8d, 0xd3, 0x15, 0x66, 0xd5, 0xb1, 0x83, 0x84, 0x54, 0x18, 0x6a, 0x59, 0x94, 0x9c, 0x3a, + 0x38, 0x3f, 0x20, 0x70, 0xea, 0x29, 0x82, 0x40, 0x6f, 0xc5, 0x44, 0x67, 0x20, 0x34, 0x36, 0x2b, + 0xc4, 0x52, 0xec, 0x35, 0x24, 0x1c, 0xe4, 0xcd, 0x1b, 0xe9, 0x78, 0xc3, 0x15, 0x9d, 0x6c, 0xba, + 0x75, 0x16, 0xe4, 0xda, 0xf6, 0x4d, 0xdb, 0x00, 0x1a, 0xdd, 0x8f, 0x01, 0x34, 0xf6, 0x9f, 0x06, + 0xd0, 0x12, 0x0c, 0x14, 0x09, 0xe3, 0x23, 0xc4, 0x19, 0x65, 0xfd, 0x0f, 0x21, 0x7c, 0xa0, 0x28, + 0x0e, 0x68, 0x1d, 0x42, 0xa7, 0x40, 0x29, 0x61, 0xce, 0x90, 0x18, 0x78, 0xf0, 0x04, 0x05, 0x44, + 0x86, 0xb0, 0xc8, 0x19, 0x18, 0x6a, 0xc9, 0xac, 0x5d, 0x75, 0xd7, 0x48, 0xdd, 0xa9, 0x50, 0xfb, + 0x11, 0x1d, 0x82, 0xc3, 0x35, 0xb5, 0x54, 0x75, 0x8b, 0x53, 0x1c, 0xe6, 0x3d, 0x6f, 0x82, 0xc8, + 0x39, 0x28, 0x75, 0xe6, 0x6e, 0x10, 0xfb, 0x0b, 0xbe, 0xc0, 0xb0, 0xe4, 0x8f, 0x7f, 0x02, 0xe0, + 0x48, 0x6b, 0x4d, 0xa0, 0x25, 0x38, 0xac, 0x33, 0x52, 0xa6, 0x61, 0x31, 0x55, 0xe5, 0xc1, 0xca, + 0x09, 0x0b, 0x63, 0x74, 0x02, 0xfa, 0xc5, 0x16, 0x1e, 0xf6, 0x70, 0x98, 0x70, 0x07, 0x4c, 0xda, + 0x16, 0xf2, 0xd0, 0x3a, 0x7a, 0xf1, 0x6b, 0x70, 0x74, 0x89, 0x0f, 0xbf, 0xbd, 0x2f, 0x0c, 0xd3, + 0x50, 0x2a, 0xa8, 0x7a, 0x49, 0xd1, 0x0b, 0xcd, 0x21, 0xc9, 0x1b, 0x38, 0x80, 0xc7, 0xec, 0xfb, + 0xd5, 0x82, 0x3b, 0xfc, 0x66, 0xff, 0x04, 0xf0, 0x70, 0xd7, 0x35, 0x01, 0x45, 0xe0, 0xc4, 0x4a, + 0x3a, 0xab, 0xe0, 0xcc, 0x25, 0x65, 0x79, 0x03, 0x5f, 0x4c, 0x65, 0x95, 0xa5, 0xf4, 0x72, 0xea, + 0xf2, 0x5a, 0x56, 0x1a, 0x42, 0xaf, 0xc0, 0xc9, 0x0e, 0xd9, 0xf2, 0x06, 0x56, 0x16, 0x71, 0x3a, + 0x95, 0x4d, 0x4b, 0x00, 0x45, 0x61, 0xa4, 0x8b, 0x18, 0xa7, 0x2f, 0xad, 0xa5, 0x16, 0xd3, 0x92, + 0x07, 0x4d, 0xc2, 0xc3, 0x1d, 0xf2, 0x4c, 0x36, 0x95, 0xbd, 0x9c, 0x91, 0xbc, 0xe8, 0x08, 0x7c, + 0xa9, 0x43, 0x84, 0xd3, 0xa9, 0x25, 0xc9, 0x87, 0x8e, 0xc1, 0xd8, 0x2e, 0xc1, 0x72, 0x1a, 0xe3, + 0xd5, 0xf5, 0x15, 0x65, 0x63, 0xe1, 0x42, 0x7a, 0x31, 0x9b, 0x91, 0x86, 0xbb, 0x68, 0x2d, 0xe0, + 0x8d, 0xb7, 0xd3, 0xeb, 0x42, 0x39, 0xbd, 0xbe, 0x98, 0xce, 0x48, 0xfe, 0xb9, 0x3f, 0x20, 0xf4, + 0xa6, 0x2e, 0xad, 0xa2, 0x1b, 0x1e, 0xe8, 0x17, 0x9b, 0x0b, 0x1a, 0x64, 0xbf, 0x89, 0x1c, 0xef, + 0x4f, 0xd9, 0x59, 0xff, 0x6e, 0x83, 0xc6, 0x4f, 0xe1, 0x6c, 0xe1, 0xd4, 0x75, 0x2d, 0x41, 0x89, + 0x56, 0xb5, 0x48, 0x99, 0xd0, 0xab, 0x89, 0x9c, 0x4a, 0x75, 0x2d, 0x51, 0xa5, 0xc4, 0x3a, 0xde, + 0x29, 0xa2, 0x4c, 0xad, 0xe4, 0x55, 0x2b, 0x2f, 0xa4, 0x35, 0x42, 0x13, 0xba, 0x91, 0x30, 0x2d, + 0xe3, 0x7a, 0x5d, 0x68, 0xe9, 0xac, 0x9e, 0xd8, 0xb4, 0x74, 0x46, 0x6e, 0xfe, 0xfa, 0xfb, 0x2d, + 0xcf, 0xd9, 0xf8, 0x69, 0xe7, 0x37, 0x69, 0xb2, 0x59, 0x14, 0x34, 0xf9, 0xb1, 0x3b, 0x2c, 0xe4, + 0xe6, 0xe5, 0x56, 0xc7, 0x4f, 0x35, 0x3a, 0x0f, 0x66, 0xd1, 0x3f, 0x00, 0x7a, 0x57, 0x08, 0x43, + 0xd3, 0x7d, 0x6c, 0x92, 0x82, 0xfc, 0x4c, 0xdf, 0x3b, 0x67, 0xfc, 0x2b, 0x70, 0xef, 0x07, 0x8f, + 0xcd, 0xfe, 0xbd, 0xee, 0xec, 0xcb, 0x46, 0x45, 0x67, 0x46, 0x8f, 0x00, 0xb8, 0x0a, 0xdd, 0x63, + 0x60, 0x11, 0x35, 0xcf, 0x43, 0x70, 0x1a, 0x9d, 0xea, 0x16, 0x82, 0x67, 0x33, 0x17, 0xb2, 0x2d, + 0xf4, 0x17, 0x80, 0x3e, 0xbb, 0x71, 0xd1, 0x4c, 0x3f, 0xcd, 0x2d, 0xf8, 0xcf, 0xf6, 0x3f, 0x07, + 0xe2, 0x5f, 0xfc, 0x4f, 0x01, 0x38, 0x81, 0xe4, 0xc1, 0x02, 0x80, 0x6e, 0x79, 0xe0, 0x01, 0x67, + 0xcb, 0x46, 0x03, 0x2d, 0xe3, 0x91, 0x44, 0x9f, 0xda, 0x4e, 0x08, 0xbe, 0x7b, 0xb1, 0xd5, 0xbf, + 0x16, 0x59, 0xd9, 0x63, 0xf5, 0x77, 0x28, 0x6d, 0xd9, 0xdd, 0xf0, 0x18, 0x40, 0xbf, 0x98, 0xbd, + 0xcf, 0x1b, 0x08, 0x6d, 0x13, 0x3a, 0x32, 0x21, 0x8b, 0x8f, 0x32, 0xb2, 0xfb, 0x51, 0x46, 0x4e, + 0x97, 0x4d, 0x56, 0x8f, 0x7f, 0xf9, 0x62, 0xc9, 0xcf, 0xcf, 0xee, 0xad, 0xee, 0xe7, 0xc1, 0x6c, + 0x24, 0x77, 0x77, 0x1b, 0x78, 0x7e, 0xd9, 0x06, 0x47, 0x7b, 0xd2, 0x14, 0xff, 0xac, 0x1f, 0x6e, + 0x03, 0xd0, 0xd8, 0x06, 0x33, 0x7d, 0xff, 0x77, 0xbf, 0xf9, 0x73, 0xd8, 0x23, 0x81, 0x85, 0xcf, + 0xc0, 0xfd, 0x73, 0xc3, 0x8b, 0xf8, 0xf2, 0xd2, 0xda, 0x83, 0x47, 0xd1, 0xa1, 0x87, 0x8f, 0xa2, + 0x43, 0x4f, 0x1e, 0x45, 0xc1, 0x8d, 0x46, 0x14, 0x7c, 0xdb, 0x88, 0x82, 0x7b, 0x8d, 0x28, 0x78, + 0xd0, 0x88, 0x82, 0xdf, 0x1a, 0x51, 0xf0, 0xb8, 0x11, 0x1d, 0x7a, 0xd2, 0x88, 0x82, 0x4f, 0x77, + 0xa2, 0x43, 0x77, 0x77, 0xa2, 0xe0, 0xc1, 0x4e, 0x74, 0xe8, 0xe1, 0x4e, 0x74, 0xe8, 0x7d, 0x5c, + 0x34, 0xcc, 0x6b, 0x45, 0xb9, 0x66, 0xd8, 0x1b, 0xb4, 0xa5, 0xca, 0x55, 0x9a, 0xe4, 0x0f, 0xf6, + 0x6f, 0x49, 0x3b, 0x30, 0x35, 0x3d, 0x4f, 0xac, 0x84, 0x2b, 0x4e, 0x9a, 0xb9, 0xa2, 0x91, 0x24, + 0xd7, 0x99, 0xfb, 0x6d, 0xaa, 0xdb, 0x27, 0xaa, 0x9c, 0x9f, 0x67, 0xe9, 0xe4, 0xbf, 0x01, 0x00, + 0x00, 0xff, 0xff, 0x5f, 0x61, 0x3b, 0x5e, 0xe8, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/service_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/service_policy/public_crudapi.vesapi.go index 8c926ae2d..c5d5fe8e8 100644 --- a/pbgo/extschema/schema/service_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/service_policy/public_crudapi.vesapi.go @@ -2584,14 +2584,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -4506,7 +4506,7 @@ var APISwaggerJSON string = `{ }, "prefixes": { "type": "array", - "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0./24\"\nx-required\nDestination IPv4 prefixes.", + "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0.1/24\"\nx-required\nDestination IPv4 prefixes.", "title": "prefixes", "items": { "type": "string" @@ -4627,10 +4627,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4687,10 +4691,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4749,10 +4757,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5367,11 +5379,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/service_policyRuleList", "x-displayname": "Custom Rule List" }, - "segment_policy": { - "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", - "$ref": "#/definitions/policySegmentPolicyType", - "x-displayname": "Configure Segments" - }, "server_name": { "type": "string", "description": "Exclusive with [any_server server_name_matcher server_selector]\n The expected name of the server to which the request API is directed. The actual names for the server are extracted from the HTTP Host header and the name\n of the virtual_host to which the request is directed. If the request is directed to a virtual K8s service, the actual names also contain the name of that\n service.\n The predicate evaluates to true if any of the actual names is the same as the expected server name.\n\nExample: - \"database.production.customer.volterra.us\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n", @@ -5438,11 +5445,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/service_policyRuleList", "x-displayname": "Custom Rule List" }, - "segment_policy": { - "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", - "$ref": "#/definitions/policySegmentPolicyType", - "x-displayname": "Configure Segments" - }, "server_name": { "type": "string", "description": "Exclusive with [any_server server_name_matcher server_selector]\n The expected name of the server to which the request API is directed. The actual names for the server are extracted from the HTTP Host header and the name\n of the virtual_host to which the request is directed. If the request is directed to a virtual K8s service, the actual names also contain the name of that\n service.\n The predicate evaluates to true if any of the actual names is the same as the expected server name.\n\nExample: - \"database.production.customer.volterra.us\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n", @@ -5509,11 +5511,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/service_policyRuleList", "x-displayname": "Custom Rule List" }, - "segment_policy": { - "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", - "$ref": "#/definitions/policySegmentPolicyType", - "x-displayname": "Configure Segments" - }, "server_name": { "type": "string", "description": "Exclusive with [any_server server_name_matcher server_selector]\n The expected name of the server to which the request API is directed. The actual names for the server are extracted from the HTTP Host header and the name\n of the virtual_host to which the request is directed. If the request is directed to a virtual K8s service, the actual names also contain the name of that\n service.\n The predicate evaluates to true if any of the actual names is the same as the expected server name.\n\nExample: - \"database.production.customer.volterra.us\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n", @@ -5763,6 +5760,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyRequestConstraintType", "x-displayname": "Request Constraints" }, + "segment_policy": { + "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", + "title": "Segments", + "$ref": "#/definitions/policySegmentPolicyType", + "x-displayname": "Configure Segments" + }, "tls_fingerprint_matcher": { "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", "title": "TLS JA3 fingerprint matcher", @@ -6511,9 +6514,9 @@ var APISwaggerJSON string = `{ "title": "Shape Protected Endpoint Action", "$ref": "#/definitions/policyShapeProtectedEndpointAction" }, - "threat_intelligence_action": { - "description": "x-displayName: \"Threat Intelligence Action\"\nSpecifies how Threat Intelligence is handled", - "title": "Threat Intelligence Action", + "threat_mesh_action": { + "description": "x-displayName: \"Threat Mesh Action\"\nSpecifies how Threat Mesh is handled", + "title": "Threat Mesh Action", "$ref": "#/definitions/policyModifyAction" }, "tls_fingerprint_matcher": { diff --git a/pbgo/extschema/schema/service_policy/public_custom_data_api.pb.go b/pbgo/extschema/schema/service_policy/public_custom_data_api.pb.go index d72150a37..82dd754c5 100644 --- a/pbgo/extschema/schema/service_policy/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/service_policy/public_custom_data_api.pb.go @@ -580,68 +580,69 @@ func init() { } var fileDescriptor_e6590d510adb5b0a = []byte{ - // 965 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcd, 0x6f, 0x1b, 0x45, - 0x14, 0xf7, 0xac, 0x3f, 0x1a, 0x8f, 0xd3, 0x62, 0x06, 0x84, 0xb6, 0xc6, 0x2c, 0xc1, 0x08, 0x29, - 0x44, 0xb5, 0x57, 0x35, 0x6a, 0xab, 0x46, 0x5c, 0x1c, 0x63, 0x14, 0x4b, 0x6e, 0x1d, 0xd6, 0x6e, - 0x25, 0xb8, 0xac, 0xc6, 0xeb, 0x89, 0x3d, 0xb0, 0xbb, 0xb3, 0xec, 0xcc, 0x5a, 0xb1, 0x10, 0x55, - 0xa9, 0x38, 0x21, 0x24, 0x90, 0xb8, 0x70, 0xe4, 0xc8, 0x99, 0x13, 0xa2, 0x97, 0xdc, 0xe8, 0x09, - 0x45, 0x70, 0xa9, 0x40, 0x42, 0xc4, 0xe1, 0x00, 0xb7, 0xfc, 0x09, 0xc8, 0x33, 0x9b, 0x34, 0x4e, - 0xac, 0x20, 0x57, 0x88, 0xdb, 0xfb, 0xfc, 0xed, 0xfc, 0xde, 0x7b, 0xf3, 0x66, 0xe1, 0xcd, 0x11, - 0xe1, 0x15, 0xca, 0x4c, 0xee, 0x0c, 0x89, 0x87, 0x4d, 0x4e, 0xc2, 0x11, 0x75, 0x88, 0x1d, 0x30, - 0x97, 0x3a, 0x63, 0x33, 0x88, 0x7a, 0x2e, 0x75, 0x6c, 0x27, 0xe2, 0x82, 0x79, 0x76, 0x1f, 0x0b, - 0x6c, 0xe3, 0x80, 0x56, 0x82, 0x90, 0x09, 0x86, 0x8a, 0x2a, 0xb5, 0xa2, 0x52, 0x2b, 0xb3, 0xa9, - 0x85, 0xf2, 0x80, 0x8a, 0x61, 0xd4, 0xab, 0x38, 0xcc, 0x33, 0x07, 0x6c, 0xc0, 0x4c, 0x99, 0xd4, - 0x8b, 0xb6, 0xa5, 0x26, 0x15, 0x29, 0x29, 0xb0, 0x42, 0x71, 0xc0, 0xd8, 0xc0, 0x25, 0x26, 0x0e, - 0xa8, 0x89, 0x7d, 0x9f, 0x09, 0x2c, 0x28, 0xf3, 0x79, 0xec, 0x7d, 0x71, 0xf6, 0x94, 0x2c, 0x38, - 0xe9, 0xbc, 0x3c, 0xeb, 0x14, 0xe3, 0x80, 0x1c, 0xb9, 0x8a, 0xb3, 0xae, 0x11, 0x76, 0x69, 0x1f, - 0x0b, 0x12, 0x7b, 0x4b, 0xa7, 0xbc, 0x84, 0x13, 0x7f, 0x34, 0x0b, 0x5e, 0xfa, 0x5d, 0x83, 0x7a, - 0x47, 0x31, 0xdb, 0x92, 0xc4, 0x36, 0xa9, 0xe0, 0x16, 0xf9, 0x30, 0x22, 0x5c, 0xa0, 0x22, 0xcc, - 0xfa, 0xd8, 0x23, 0x3c, 0xc0, 0x0e, 0xd1, 0xc1, 0x0a, 0x58, 0xcd, 0x5a, 0x4f, 0x0c, 0xc8, 0x86, - 0xcb, 0x2e, 0xee, 0x11, 0xd7, 0xde, 0xa6, 0xae, 0x20, 0xa1, 0xae, 0xad, 0x24, 0x57, 0x73, 0xd5, - 0x37, 0x2b, 0xe7, 0x95, 0xad, 0x32, 0xf3, 0xad, 0x5b, 0x44, 0x84, 0xd4, 0x69, 0x4d, 0x41, 0xde, - 0x96, 0x18, 0x56, 0xce, 0x7d, 0xa2, 0xa0, 0x77, 0xe0, 0xd2, 0x20, 0x64, 0x51, 0x60, 0xf7, 0xc6, - 0x7a, 0x72, 0x25, 0xb9, 0x7a, 0xa9, 0x7a, 0xfd, 0xe9, 0xc0, 0xad, 0x0b, 0x12, 0x67, 0x63, 0x8c, - 0x5e, 0x87, 0x90, 0x0b, 0x1c, 0x0a, 0x5b, 0x50, 0x8f, 0xe8, 0xa9, 0x29, 0xa5, 0x0d, 0xf8, 0xc3, - 0xdf, 0xbb, 0xc9, 0x74, 0x98, 0xfc, 0x3a, 0x05, 0xac, 0xac, 0xf4, 0x76, 0xa9, 0x47, 0xd0, 0x6b, - 0x70, 0x89, 0xf8, 0x7d, 0x15, 0x98, 0x3e, 0x13, 0x78, 0x81, 0xf8, 0x7d, 0x19, 0x66, 0xc0, 0x14, - 0x17, 0x24, 0xd0, 0x33, 0x33, 0x21, 0xdf, 0xa4, 0x80, 0x25, 0xed, 0xa5, 0xef, 0x00, 0x34, 0xce, - 0x27, 0x8d, 0x5a, 0x30, 0x2d, 0x69, 0xcb, 0x12, 0x3f, 0x3d, 0x49, 0x05, 0x82, 0xae, 0x40, 0x8d, - 0x05, 0xba, 0x26, 0xa1, 0x8a, 0xa7, 0xa0, 0x4e, 0x84, 0xb7, 0x03, 0x4b, 0x63, 0x01, 0x7a, 0x1e, - 0xa6, 0x47, 0xd8, 0x8d, 0x88, 0x9e, 0x94, 0xed, 0x55, 0x4a, 0xe9, 0x57, 0x00, 0x9f, 0x3b, 0x33, - 0x15, 0xcd, 0xfe, 0xbf, 0x0c, 0xc4, 0x0b, 0x30, 0xa3, 0xce, 0x28, 0xbf, 0x9e, 0xb5, 0x62, 0x0d, - 0xbd, 0x0c, 0x73, 0x4a, 0xb2, 0xc3, 0xc8, 0x3d, 0xfa, 0x12, 0x54, 0x26, 0x2b, 0x72, 0x09, 0x7a, - 0x09, 0xc6, 0x9a, 0xcd, 0x89, 0xd0, 0x2f, 0x28, 0x5c, 0x65, 0xe9, 0x10, 0x31, 0xc5, 0xc5, 0xce, - 0x74, 0x68, 0x55, 0xc3, 0xac, 0x58, 0x43, 0x08, 0xa6, 0x38, 0x15, 0x71, 0x77, 0x2c, 0x29, 0xa3, - 0x57, 0xe0, 0xf2, 0x88, 0x86, 0x22, 0xc2, 0xae, 0x3d, 0x64, 0x5c, 0xa8, 0xb6, 0x58, 0xb9, 0xd8, - 0xb6, 0xc9, 0xb8, 0x28, 0x7d, 0x06, 0xe0, 0xb3, 0x67, 0xc8, 0xa1, 0x1a, 0xd4, 0x68, 0x5f, 0x72, - 0xca, 0x55, 0xaf, 0x2e, 0xd0, 0x01, 0x55, 0x19, 0x4b, 0xa3, 0x7d, 0x54, 0x85, 0x19, 0x4f, 0x16, - 0x38, 0xbe, 0x0a, 0x85, 0xb9, 0xd5, 0xbf, 0x3b, 0xad, 0xb0, 0x15, 0x47, 0x96, 0xee, 0x03, 0x78, - 0x79, 0xce, 0xfd, 0xe3, 0x01, 0xf3, 0x39, 0x41, 0x75, 0x98, 0x9a, 0x2e, 0x25, 0x1d, 0x48, 0x3c, - 0x73, 0xc1, 0x63, 0x59, 0x32, 0xf9, 0x78, 0x42, 0xb5, 0x99, 0x09, 0x3d, 0xd4, 0xe2, 0x09, 0x5d, - 0xbb, 0x77, 0x6a, 0x03, 0x9c, 0x18, 0x12, 0x74, 0x11, 0x66, 0x6f, 0xd7, 0x6e, 0x35, 0x3a, 0x5b, - 0xb5, 0x7a, 0x23, 0x9f, 0x40, 0x10, 0x66, 0xb6, 0xda, 0xad, 0x66, 0xfd, 0xdd, 0x3c, 0x40, 0xcf, - 0xc0, 0x9c, 0x92, 0x6d, 0xeb, 0x4e, 0xab, 0x91, 0xd7, 0xd0, 0x25, 0x08, 0x63, 0x43, 0xa7, 0xd1, - 0xcd, 0x67, 0xa6, 0xc1, 0xb5, 0x7a, 0xb7, 0xd9, 0xbe, 0x9d, 0x4f, 0xa2, 0x25, 0x98, 0xea, 0x34, - 0xbb, 0x8d, 0x7c, 0x0a, 0xe5, 0xe1, 0xf2, 0xdd, 0xa6, 0xd5, 0xbd, 0x53, 0x6b, 0xd9, 0x9b, 0xed, - 0x4e, 0x37, 0x9f, 0xae, 0xfe, 0x96, 0x82, 0x17, 0xeb, 0x72, 0x03, 0xbf, 0x85, 0x05, 0xae, 0x6d, - 0x35, 0xd1, 0xa7, 0xda, 0xbc, 0x0e, 0x5d, 0x5f, 0x94, 0xbe, 0xda, 0x62, 0x85, 0x1b, 0x0b, 0xe7, - 0xa9, 0xea, 0x97, 0xee, 0x3d, 0xfa, 0x5e, 0x03, 0x93, 0x1f, 0xf5, 0x9b, 0xdb, 0xd7, 0x76, 0x9c, - 0x32, 0x27, 0x4e, 0x14, 0x12, 0x8f, 0xf0, 0x61, 0xb9, 0x87, 0x39, 0x75, 0xca, 0x1e, 0xf3, 0xa9, - 0x60, 0xe1, 0x95, 0x95, 0x11, 0xe1, 0x65, 0xca, 0xca, 0x41, 0xc8, 0x76, 0xc6, 0x2a, 0x8c, 0x8a, - 0x71, 0x39, 0x24, 0xb8, 0xff, 0xe0, 0x97, 0x3f, 0xbf, 0xd2, 0x6e, 0x94, 0xaa, 0xf1, 0x43, 0x63, - 0x1e, 0xdf, 0x15, 0x6e, 0x7e, 0x74, 0x2c, 0x7f, 0x7c, 0xfa, 0x55, 0x1a, 0x52, 0xc1, 0xd7, 0xc1, - 0x1a, 0xfa, 0x62, 0xde, 0x6e, 0x6e, 0x61, 0x41, 0x7c, 0x67, 0xfc, 0xff, 0x57, 0xe3, 0x13, 0xf0, - 0xdf, 0x94, 0x63, 0xbd, 0x74, 0x6d, 0xb1, 0x72, 0xb8, 0x8a, 0xf1, 0x3a, 0x58, 0x2b, 0x5c, 0xdd, - 0x7d, 0x08, 0x92, 0x3f, 0x3f, 0x04, 0xaf, 0x9e, 0xcb, 0xa1, 0xdd, 0x7b, 0x9f, 0x38, 0xe2, 0xc1, - 0x4f, 0xba, 0xa6, 0x83, 0x8d, 0xcf, 0xc1, 0xde, 0xbe, 0x91, 0x78, 0xbc, 0x6f, 0x24, 0x0e, 0xf7, - 0x0d, 0x70, 0x7f, 0x62, 0x80, 0x6f, 0x27, 0x06, 0x78, 0x34, 0x31, 0xc0, 0xde, 0xc4, 0x00, 0x7f, - 0x4c, 0x0c, 0xf0, 0xd7, 0xc4, 0x48, 0x1c, 0x4e, 0x0c, 0xf0, 0xe5, 0x81, 0x91, 0xd8, 0x3d, 0x30, - 0xc0, 0xde, 0x81, 0x91, 0x78, 0x7c, 0x60, 0x24, 0xde, 0xb3, 0x06, 0x2c, 0xf8, 0x60, 0x50, 0x19, - 0xb1, 0xe9, 0x96, 0x0e, 0x71, 0x25, 0xe2, 0xa6, 0x14, 0xb6, 0x59, 0xe8, 0x4d, 0xe9, 0x8d, 0x68, - 0x9f, 0x84, 0xe5, 0x23, 0xb7, 0x19, 0xf4, 0x06, 0xcc, 0x24, 0x3b, 0xe2, 0xe8, 0x57, 0x63, 0xde, - 0x1f, 0x47, 0x2f, 0x23, 0x9f, 0xdd, 0x37, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0x6e, 0x39, 0x23, - 0x7f, 0x98, 0x08, 0x00, 0x00, + // 977 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xf7, 0xac, 0x7f, 0x24, 0x19, 0xa7, 0xfd, 0xfa, 0x3b, 0x20, 0xb4, 0x0d, 0x61, 0x09, 0x46, + 0x48, 0x21, 0xaa, 0xbd, 0xaa, 0x51, 0x5b, 0x11, 0x71, 0x71, 0x82, 0x51, 0x2c, 0xb9, 0x75, 0x58, + 0xbb, 0x95, 0x80, 0xc3, 0x6a, 0xbc, 0x3b, 0xb1, 0x07, 0x76, 0x77, 0x96, 0x9d, 0x59, 0x2b, 0x16, + 0x02, 0x55, 0x3d, 0x22, 0x0e, 0x48, 0x5c, 0x38, 0x46, 0xe2, 0x00, 0x57, 0x38, 0x21, 0x7a, 0xc9, + 0x8d, 0x9e, 0x50, 0x04, 0x97, 0x8a, 0x03, 0x22, 0x0e, 0x07, 0xb8, 0xe5, 0x4f, 0x40, 0x9e, 0xd9, + 0xfc, 0xb0, 0x63, 0x05, 0xb9, 0x87, 0xde, 0xde, 0xcf, 0xcf, 0xce, 0xfb, 0xbc, 0x37, 0x6f, 0x16, + 0xbe, 0xd9, 0x27, 0xbc, 0x4c, 0x99, 0xc9, 0x9d, 0x1e, 0xf1, 0xb1, 0xc9, 0x49, 0xd4, 0xa7, 0x0e, + 0xb1, 0x43, 0xe6, 0x51, 0x67, 0x60, 0x86, 0x71, 0xc7, 0xa3, 0x8e, 0xed, 0xc4, 0x5c, 0x30, 0xdf, + 0x76, 0xb1, 0xc0, 0x36, 0x0e, 0x69, 0x39, 0x8c, 0x98, 0x60, 0x68, 0x59, 0xa5, 0x96, 0x55, 0x6a, + 0x79, 0x3c, 0x75, 0xa9, 0xd4, 0xa5, 0xa2, 0x17, 0x77, 0xca, 0x0e, 0xf3, 0xcd, 0x2e, 0xeb, 0x32, + 0x53, 0x26, 0x75, 0xe2, 0x1d, 0xa9, 0x49, 0x45, 0x4a, 0x0a, 0x6c, 0x69, 0xb9, 0xcb, 0x58, 0xd7, + 0x23, 0x26, 0x0e, 0xa9, 0x89, 0x83, 0x80, 0x09, 0x2c, 0x28, 0x0b, 0x78, 0xe2, 0x7d, 0x71, 0xfc, + 0x94, 0x2c, 0x3c, 0xef, 0xbc, 0x36, 0xee, 0x14, 0x83, 0x90, 0x9c, 0xb8, 0x96, 0xc7, 0x5d, 0x7d, + 0xec, 0x51, 0x17, 0x0b, 0x92, 0x78, 0x8b, 0x13, 0x5e, 0xc2, 0x49, 0xd0, 0x1f, 0x07, 0x2f, 0xfe, + 0xa1, 0x41, 0xbd, 0xa5, 0x2a, 0xdb, 0x96, 0x85, 0x6d, 0x51, 0xc1, 0x2d, 0xf2, 0x71, 0x4c, 0xb8, + 0x40, 0xcb, 0x70, 0x21, 0xc0, 0x3e, 0xe1, 0x21, 0x76, 0x88, 0x0e, 0x56, 0xc0, 0xea, 0x82, 0x75, + 0x66, 0x40, 0x36, 0x5c, 0xf4, 0x70, 0x87, 0x78, 0xf6, 0x0e, 0xf5, 0x04, 0x89, 0x74, 0x6d, 0x25, + 0xbd, 0x9a, 0xaf, 0xbc, 0x55, 0xbe, 0x8c, 0xb6, 0xf2, 0xd8, 0xb7, 0xee, 0x10, 0x11, 0x51, 0xa7, + 0x31, 0x02, 0x79, 0x47, 0x62, 0x58, 0x79, 0xef, 0x4c, 0x41, 0xef, 0xc2, 0xf9, 0x6e, 0xc4, 0xe2, + 0xd0, 0xee, 0x0c, 0xf4, 0xf4, 0x4a, 0x7a, 0xf5, 0x6a, 0xe5, 0xd6, 0xd3, 0x81, 0x5b, 0x73, 0x12, + 0x67, 0x63, 0x80, 0x5e, 0x87, 0x90, 0x0b, 0x1c, 0x09, 0x5b, 0x50, 0x9f, 0xe8, 0x99, 0x51, 0x49, + 0x1b, 0xf0, 0xa7, 0x7f, 0xf6, 0xd3, 0xd9, 0x28, 0xfd, 0x75, 0x06, 0x58, 0x0b, 0xd2, 0xdb, 0xa6, + 0x3e, 0x41, 0xaf, 0xc1, 0x79, 0x12, 0xb8, 0x2a, 0x30, 0x7b, 0x21, 0x70, 0x8e, 0x04, 0xae, 0x0c, + 0x33, 0x60, 0x86, 0x0b, 0x12, 0xea, 0xb9, 0xb1, 0x90, 0xbd, 0x0c, 0xb0, 0xa4, 0xbd, 0xf8, 0x03, + 0x80, 0xc6, 0xe5, 0x45, 0xa3, 0x06, 0xcc, 0xca, 0xb2, 0x25, 0xc5, 0x4f, 0x5f, 0xa4, 0x02, 0x41, + 0xd7, 0xa1, 0xc6, 0x42, 0x5d, 0x93, 0x50, 0xcb, 0x13, 0x50, 0xe7, 0xc2, 0x9b, 0xa1, 0xa5, 0xb1, + 0x10, 0x3d, 0x0f, 0xb3, 0x7d, 0xec, 0xc5, 0x44, 0x4f, 0xcb, 0xf6, 0x2a, 0xa5, 0xf8, 0x3b, 0x80, + 0xcf, 0x5d, 0x98, 0x8a, 0xba, 0xfb, 0x1f, 0x03, 0xf1, 0x02, 0xcc, 0xa9, 0x33, 0xca, 0xaf, 0x2f, + 0x58, 0x89, 0x86, 0x5e, 0x86, 0x79, 0x25, 0xd9, 0x51, 0xec, 0x9d, 0x7c, 0x09, 0x2a, 0x93, 0x15, + 0x7b, 0x04, 0xbd, 0x04, 0x13, 0xcd, 0xe6, 0x44, 0xe8, 0x73, 0x0a, 0x57, 0x59, 0x5a, 0x44, 0x8c, + 0x70, 0xb1, 0x33, 0x1a, 0x5a, 0xd5, 0x30, 0x2b, 0xd1, 0x10, 0x82, 0x19, 0x4e, 0x45, 0xd2, 0x1d, + 0x4b, 0xca, 0xe8, 0x15, 0xb8, 0xd8, 0xa7, 0x91, 0x88, 0xb1, 0x67, 0xf7, 0x18, 0x17, 0xaa, 0x2d, + 0x56, 0x3e, 0xb1, 0x6d, 0x31, 0x2e, 0x8a, 0x9f, 0x03, 0xf8, 0xff, 0x0b, 0xc5, 0xa1, 0x2a, 0xd4, + 0xa8, 0x2b, 0x6b, 0xca, 0x57, 0x6e, 0xcc, 0xd0, 0x01, 0xc5, 0x8c, 0xa5, 0x51, 0x17, 0x55, 0x60, + 0xce, 0x97, 0x04, 0x27, 0x57, 0x61, 0x69, 0x2a, 0xfb, 0xf7, 0x47, 0x0c, 0x5b, 0x49, 0x64, 0xf1, + 0x01, 0x80, 0xd7, 0xa6, 0xdc, 0x3f, 0x1e, 0xb2, 0x80, 0x13, 0xb4, 0x09, 0x33, 0xa3, 0xa5, 0xa4, + 0x03, 0x89, 0x67, 0xce, 0x78, 0x2c, 0x4b, 0x26, 0x9f, 0x4e, 0xa8, 0x36, 0x36, 0xa1, 0xc7, 0x5a, + 0x32, 0xa1, 0x6b, 0x9f, 0x4d, 0x6c, 0x80, 0x73, 0x43, 0x82, 0xae, 0xc0, 0x85, 0xbb, 0xd5, 0x3b, + 0xb5, 0xd6, 0x76, 0x75, 0xb3, 0x56, 0x48, 0x21, 0x08, 0x73, 0xdb, 0xcd, 0x46, 0x7d, 0xf3, 0xbd, + 0x02, 0x40, 0xff, 0x83, 0x79, 0x25, 0xdb, 0xd6, 0xbd, 0x46, 0xad, 0xa0, 0xa1, 0xab, 0x10, 0x26, + 0x86, 0x56, 0xad, 0x5d, 0xc8, 0x8d, 0x82, 0xab, 0x9b, 0xed, 0x7a, 0xf3, 0x6e, 0x21, 0x8d, 0xe6, + 0x61, 0xa6, 0x55, 0x6f, 0xd7, 0x0a, 0x19, 0x54, 0x80, 0x8b, 0xf7, 0xeb, 0x56, 0xfb, 0x5e, 0xb5, + 0x61, 0x6f, 0x35, 0x5b, 0xed, 0x42, 0xb6, 0xb2, 0x97, 0x85, 0x57, 0x36, 0xe5, 0x06, 0x7e, 0x1b, + 0x0b, 0x5c, 0xdd, 0xae, 0xa3, 0x6f, 0xb5, 0x69, 0x1d, 0xba, 0x35, 0x6b, 0xf9, 0x6a, 0x8b, 0x2d, + 0xdd, 0x9e, 0x39, 0x4f, 0xb1, 0x5f, 0xdc, 0x03, 0x8f, 0x7f, 0xd4, 0xc0, 0xf0, 0x67, 0xfd, 0x83, + 0x9d, 0x9b, 0xbb, 0x4e, 0x89, 0x13, 0x27, 0x8e, 0x88, 0x4f, 0x78, 0xaf, 0xd4, 0xc1, 0x9c, 0x3a, + 0x25, 0x9f, 0x05, 0x54, 0xb0, 0xe8, 0xfa, 0xca, 0xa4, 0x9b, 0x0b, 0x1c, 0xb8, 0x38, 0x72, 0xcf, + 0x22, 0xfa, 0x84, 0x97, 0x28, 0x2b, 0x85, 0x11, 0xdb, 0x1d, 0xa8, 0x48, 0x2a, 0x06, 0xa5, 0x88, + 0x60, 0xf7, 0xe1, 0x6f, 0x7f, 0x7d, 0xa5, 0xdd, 0x2e, 0x56, 0x92, 0xb7, 0xc8, 0x3c, 0xbd, 0x4e, + 0xdc, 0xfc, 0xe4, 0x54, 0xfe, 0x74, 0xf2, 0xe1, 0xea, 0x51, 0xc1, 0xd7, 0xc1, 0x1a, 0xfa, 0x7e, + 0xda, 0xfa, 0x6e, 0x60, 0x41, 0x02, 0x67, 0xf0, 0xec, 0x09, 0xfb, 0xe6, 0x99, 0x11, 0xb6, 0x5e, + 0xbc, 0x39, 0x1b, 0x61, 0x9e, 0xe2, 0x64, 0x1d, 0xac, 0x2d, 0xdd, 0xd8, 0x7f, 0x04, 0xd2, 0xbf, + 0x3e, 0x02, 0xaf, 0x5e, 0x5a, 0x65, 0xb3, 0xf3, 0x21, 0x71, 0xc4, 0xc3, 0x5f, 0x74, 0x4d, 0x07, + 0x1b, 0x5f, 0x80, 0x83, 0x43, 0x23, 0xf5, 0xe4, 0xd0, 0x48, 0x1d, 0x1f, 0x1a, 0xe0, 0xc1, 0xd0, + 0x00, 0xdf, 0x0d, 0x0d, 0xf0, 0x78, 0x68, 0x80, 0x83, 0xa1, 0x01, 0xfe, 0x1c, 0x1a, 0xe0, 0xef, + 0xa1, 0x91, 0x3a, 0x1e, 0x1a, 0xe0, 0xcb, 0x23, 0x23, 0xb5, 0x7f, 0x64, 0x80, 0x83, 0x23, 0x23, + 0xf5, 0xe4, 0xc8, 0x48, 0xbd, 0x6f, 0x75, 0x59, 0xf8, 0x51, 0xb7, 0xdc, 0x67, 0xa3, 0x55, 0x1f, + 0xe1, 0x72, 0xcc, 0x4d, 0x29, 0xec, 0xb0, 0xc8, 0x1f, 0x95, 0xd7, 0xa7, 0x2e, 0x89, 0x4a, 0x27, + 0x6e, 0x33, 0xec, 0x74, 0x99, 0x49, 0x76, 0xc5, 0xc9, 0xff, 0xca, 0xb4, 0xdf, 0x96, 0x4e, 0x4e, + 0xbe, 0xdd, 0x6f, 0xfc, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xf5, 0xe3, 0x3b, 0xcf, 0xdd, 0x08, 0x00, + 0x00, } func (x ServicePolicyMetricLabel) String() string { diff --git a/pbgo/extschema/schema/service_policy/types.pb.go b/pbgo/extschema/schema/service_policy/types.pb.go index 07fe21ed1..9b86c367c 100644 --- a/pbgo/extschema/schema/service_policy/types.pb.go +++ b/pbgo/extschema/schema/service_policy/types.pb.go @@ -358,11 +358,11 @@ type SimpleRule struct { // instances. The actual JWT claims values are extracted from the JWT payload as a list of strings. // Note that all specified JWT claim predicates must evaluate to true. JwtClaims []*policy.JWTClaimMatcherType `protobuf:"bytes,52,rep,name=jwt_claims,json=jwtClaims,proto3" json:"jwt_claims,omitempty"` - // Threat Intelligence Action + // Threat Mesh Action // - // x-displayName: "Threat Intelligence Action" - // Specifies how Threat Intelligence is handled - ThreatIntelligenceAction *policy.ModifyAction `protobuf:"bytes,53,opt,name=threat_intelligence_action,json=threatIntelligenceAction,proto3" json:"threat_intelligence_action,omitempty"` + // x-displayName: "Threat Mesh Action" + // Specifies how Threat Mesh is handled + ThreatMeshAction *policy.ModifyAction `protobuf:"bytes,53,opt,name=threat_mesh_action,json=threatMeshAction,proto3" json:"threat_mesh_action,omitempty"` } func (m *SimpleRule) Reset() { *m = SimpleRule{} } @@ -750,9 +750,9 @@ func (m *SimpleRule) GetJwtClaims() []*policy.JWTClaimMatcherType { return nil } -func (m *SimpleRule) GetThreatIntelligenceAction() *policy.ModifyAction { +func (m *SimpleRule) GetThreatMeshAction() *policy.ModifyAction { if m != nil { - return m.ThreatIntelligenceAction + return m.ThreatMeshAction } return nil } @@ -1184,12 +1184,6 @@ type GlobalSpecType struct { // *GlobalSpecType_DenyAllRequests // *GlobalSpecType_InternallyGenerated RuleChoice isGlobalSpecType_RuleChoice `protobuf_oneof:"rule_choice"` - // Segments - // - // x-displayName: "Configure Segments" - // Select source and destination segments where rule is applied - // Skip the configuration or set option as Any to ignore corresponding segment match - SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,28,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` // view_internal // // x-displayName: "View Internal" @@ -1423,13 +1417,6 @@ func (m *GlobalSpecType) GetInternallyGenerated() *schema.Empty { return nil } -func (m *GlobalSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { - if m != nil { - return m.SegmentPolicy - } - return nil -} - func (m *GlobalSpecType) GetViewInternal() *views.ObjectRefType { if m != nil { return m.ViewInternal @@ -1482,8 +1469,7 @@ type CreateSpecType struct { // *CreateSpecType_AllowAllRequests // *CreateSpecType_DenyAllRequests // *CreateSpecType_InternallyGenerated - RuleChoice isCreateSpecType_RuleChoice `protobuf_oneof:"rule_choice"` - SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,28,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` + RuleChoice isCreateSpecType_RuleChoice `protobuf_oneof:"rule_choice"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -1677,13 +1663,6 @@ func (m *CreateSpecType) GetInternallyGenerated() *schema.Empty { return nil } -func (m *CreateSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { - if m != nil { - return m.SegmentPolicy - } - return nil -} - // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1722,8 +1701,7 @@ type ReplaceSpecType struct { // *ReplaceSpecType_AllowAllRequests // *ReplaceSpecType_DenyAllRequests // *ReplaceSpecType_InternallyGenerated - RuleChoice isReplaceSpecType_RuleChoice `protobuf_oneof:"rule_choice"` - SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,28,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` + RuleChoice isReplaceSpecType_RuleChoice `protobuf_oneof:"rule_choice"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -1917,13 +1895,6 @@ func (m *ReplaceSpecType) GetInternallyGenerated() *schema.Empty { return nil } -func (m *ReplaceSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { - if m != nil { - return m.SegmentPolicy - } - return nil -} - // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1963,9 +1934,8 @@ type GetSpecType struct { // *GetSpecType_AllowAllRequests // *GetSpecType_DenyAllRequests // *GetSpecType_InternallyGenerated - RuleChoice isGetSpecType_RuleChoice `protobuf_oneof:"rule_choice"` - SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,28,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` - SimpleRules []*SimpleRule `protobuf:"bytes,1001,rep,name=simple_rules,json=simpleRules,proto3" json:"simple_rules,omitempty"` + RuleChoice isGetSpecType_RuleChoice `protobuf_oneof:"rule_choice"` + SimpleRules []*SimpleRule `protobuf:"bytes,1001,rep,name=simple_rules,json=simpleRules,proto3" json:"simple_rules,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -2166,13 +2136,6 @@ func (m *GetSpecType) GetInternallyGenerated() *schema.Empty { return nil } -func (m *GetSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { - if m != nil { - return m.SegmentPolicy - } - return nil -} - func (m *GetSpecType) GetSimpleRules() []*SimpleRule { if m != nil { return m.SimpleRules @@ -2228,348 +2191,342 @@ func init() { } var fileDescriptor_27dbd931e83f25b2 = []byte{ - // 5448 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7b, 0xdb, 0x6f, 0x1d, 0xd7, - 0x79, 0xaf, 0x46, 0xa4, 0x44, 0x6a, 0x91, 0x22, 0xb7, 0x46, 0xb4, 0xb4, 0x2d, 0x3b, 0xf4, 0x98, - 0xb1, 0x1d, 0x99, 0xa6, 0xa8, 0x75, 0x9d, 0x59, 0xcb, 0xc0, 0x09, 0x22, 0xd2, 0xb2, 0x24, 0x5b, - 0x92, 0xe5, 0x4d, 0x9e, 0xc4, 0x27, 0x27, 0xc9, 0xf6, 0xba, 0x6e, 0x6e, 0x7b, 0xdf, 0x3c, 0x33, - 0x94, 0x4c, 0xe0, 0x08, 0xc7, 0x48, 0x81, 0xa2, 0x7d, 0x4b, 0xfd, 0x50, 0x14, 0xf9, 0x0b, 0x0a, - 0xf5, 0xb1, 0x6f, 0x95, 0x0b, 0x18, 0x01, 0x0a, 0x14, 0x69, 0x81, 0xfa, 0xa9, 0x35, 0xfa, 0x14, - 0xcb, 0x28, 0x90, 0xa4, 0x2f, 0x41, 0xd1, 0xa7, 0x3c, 0x15, 0x73, 0xd9, 0x37, 0x6a, 0x93, 0xa1, - 0xe3, 0x24, 0xc8, 0x83, 0x9f, 0xb8, 0x67, 0xcd, 0xf7, 0xfd, 0xbe, 0x6f, 0xd6, 0xfa, 0xd6, 0x77, - 0x5b, 0x8b, 0xe0, 0xe2, 0x5d, 0x9b, 0xac, 0x37, 0xbb, 0x97, 0x13, 0xbd, 0x63, 0xdb, 0xf2, 0x72, - 0x62, 0xe3, 0xbb, 0x4d, 0x6d, 0xeb, 0xbd, 0x6e, 0xab, 0xa9, 0xf7, 0x2e, 0xa7, 0x7b, 0x3d, 0x9b, - 0xac, 0xf7, 0xe2, 0x6e, 0xda, 0xf5, 0x9f, 0x2e, 0x28, 0xd7, 0x0b, 0xca, 0xf5, 0x71, 0xca, 0x0b, - 0x97, 0x1a, 0xcd, 0x74, 0x67, 0x57, 0xad, 0xeb, 0x6e, 0xfb, 0x72, 0xa3, 0xdb, 0xe8, 0x5e, 0xce, - 0x99, 0xd4, 0xae, 0xcb, 0x9f, 0xf2, 0x87, 0xfc, 0x57, 0x01, 0x76, 0xe1, 0x99, 0x46, 0xb7, 0xdb, - 0x68, 0xd9, 0x21, 0x55, 0xda, 0x6c, 0xdb, 0x24, 0x95, 0xed, 0x5e, 0x49, 0xf0, 0xd4, 0xb8, 0x5e, - 0xdd, 0x5e, 0xda, 0xec, 0x76, 0x4a, 0x55, 0x2e, 0x04, 0xe3, 0x2f, 0x1f, 0x57, 0xf6, 0xc2, 0x0b, - 0xe3, 0x14, 0xb1, 0x4c, 0x6d, 0xbd, 0xd5, 0x6c, 0x37, 0x53, 0x1b, 0x8f, 0xd1, 0x5d, 0x3a, 0xec, - 0xf3, 0xeb, 0xf1, 0x6e, 0xcb, 0x8e, 0x91, 0x3f, 0x39, 0x4e, 0x3e, 0xfa, 0xea, 0xe9, 0xf1, 0x57, - 0x77, 0x65, 0xab, 0x69, 0x64, 0x6a, 0x27, 0x6b, 0x7c, 0xb7, 0x69, 0xef, 0xd5, 0xc7, 0xbf, 0xe9, - 0x99, 0xc7, 0x29, 0x92, 0x51, 0x01, 0x2b, 0xff, 0xfa, 0x2c, 0x00, 0x5b, 0xcd, 0x76, 0xaf, 0x65, - 0x6b, 0xbb, 0x2d, 0xeb, 0xfb, 0x60, 0xba, 0x23, 0xdb, 0xb6, 0xea, 0x05, 0xde, 0xc5, 0x53, 0xb5, - 0xfc, 0xb7, 0xbf, 0x0a, 0xce, 0xb4, 0x6d, 0x1a, 0x37, 0x75, 0x3d, 0x7b, 0xac, 0xb7, 0xa4, 0xb2, - 0xad, 0xea, 0x99, 0x9c, 0x60, 0xb1, 0x78, 0x71, 0x5b, 0xb6, 0xed, 0xcd, 0x6c, 0xd8, 0xe7, 0xe0, - 0xa4, 0xd4, 0x99, 0x02, 0xd5, 0xe3, 0x81, 0x77, 0x71, 0x01, 0x07, 0xeb, 0xe3, 0xeb, 0x5b, 0x4c, - 0xc1, 0x7a, 0x26, 0xeb, 0x4a, 0x4e, 0x57, 0x2b, 0xe9, 0xfd, 0xeb, 0x60, 0xc1, 0x74, 0xdb, 0xb2, - 0xd9, 0xa9, 0xb7, 0x65, 0xaa, 0x77, 0x6c, 0x5c, 0x9d, 0x0a, 0xbc, 0x8b, 0x73, 0xf8, 0xd9, 0xc9, - 0x08, 0xb7, 0x0a, 0xa2, 0xed, 0xbd, 0x9e, 0xad, 0x9d, 0x2e, 0x18, 0xcb, 0x21, 0x5f, 0x80, 0xe9, - 0x9e, 0x4c, 0x77, 0xaa, 0xd3, 0x39, 0xff, 0xf3, 0x93, 0xf9, 0xef, 0xc8, 0x74, 0x67, 0x14, 0x23, - 0x67, 0xf1, 0x6f, 0x81, 0x99, 0x1d, 0x2b, 0x8d, 0x8d, 0x93, 0xea, 0x89, 0x60, 0xea, 0xe2, 0x1c, - 0xfe, 0xc6, 0x64, 0xee, 0xeb, 0x39, 0xd1, 0x08, 0xff, 0x06, 0xf8, 0xbb, 0x5f, 0x7c, 0x3c, 0x75, - 0xe2, 0x43, 0xef, 0x78, 0xa5, 0x52, 0xeb, 0x63, 0xf8, 0x37, 0xc1, 0xdc, 0x4e, 0x9a, 0xf6, 0xea, - 0x6d, 0x9b, 0xee, 0x74, 0x4d, 0xf5, 0x64, 0xae, 0xd0, 0x4b, 0x07, 0x40, 0xa6, 0x69, 0xef, 0x56, - 0x4e, 0x37, 0xaa, 0x16, 0xd8, 0x19, 0x0c, 0xfb, 0xdf, 0x04, 0xe0, 0x9e, 0x74, 0xf5, 0x72, 0x7e, - 0x67, 0x72, 0xb0, 0x67, 0x26, 0x83, 0x7d, 0x47, 0xba, 0x72, 0x7a, 0x4f, 0xdd, 0xeb, 0xff, 0xf4, - 0x6f, 0x81, 0x25, 0xfb, 0x7e, 0xaf, 0x19, 0xcb, 0xec, 0xa9, 0x3e, 0xd8, 0x1a, 0xd5, 0xd9, 0x1c, - 0xe9, 0xc2, 0x7a, 0xb1, 0x79, 0xd6, 0xfb, 0x9b, 0x67, 0x7d, 0xbb, 0x4f, 0x51, 0x3b, 0x3b, 0xe4, - 0x1b, 0x0c, 0xfa, 0x6f, 0x83, 0x93, 0xb9, 0x50, 0x5b, 0x9d, 0x0f, 0xa6, 0x2e, 0x9e, 0xda, 0xb8, - 0x9e, 0xcd, 0xc0, 0xe5, 0x0f, 0xbd, 0xb5, 0x95, 0xd5, 0xf8, 0x62, 0xed, 0x85, 0xff, 0xbb, 0x72, - 0xe5, 0xf6, 0xff, 0x59, 0x59, 0x0b, 0x56, 0xae, 0x6f, 0x6f, 0xdf, 0xe9, 0xff, 0xdd, 0xca, 0x7e, - 0x6c, 0x6f, 0xe6, 0xcf, 0xdb, 0x37, 0xb7, 0x56, 0xbe, 0x3f, 0x98, 0xb5, 0xe9, 0xfe, 0xaf, 0xaa, - 0x57, 0x2b, 0x71, 0xfd, 0xeb, 0x60, 0xbe, 0xd7, 0x8d, 0xd3, 0x81, 0x41, 0x80, 0x43, 0x17, 0xb4, - 0x1b, 0xa7, 0xa3, 0x33, 0x37, 0xd7, 0x1b, 0x0e, 0xf8, 0x6b, 0x60, 0xce, 0xd8, 0x44, 0xc7, 0xcd, - 0x7c, 0x73, 0x54, 0xe7, 0x32, 0xe3, 0x2d, 0x97, 0x2c, 0x9e, 0xaa, 0x7e, 0x70, 0xbc, 0x36, 0xfa, - 0xda, 0xbf, 0x0a, 0xe6, 0x76, 0xe3, 0xd6, 0x40, 0xec, 0xe9, 0x5c, 0xec, 0x73, 0x93, 0xc5, 0xfe, - 0xef, 0xda, 0xcd, 0xb1, 0xf5, 0xda, 0x8d, 0x5b, 0x7d, 0xa1, 0x6f, 0x81, 0xc5, 0x16, 0xad, 0x1b, - 0x9b, 0x0c, 0xbf, 0x60, 0x21, 0x87, 0x3a, 0xc0, 0xa8, 0x6e, 0xd2, 0x57, 0x6c, 0x32, 0xfa, 0x0d, - 0x1b, 0x33, 0x9f, 0xde, 0xf7, 0x7e, 0xfe, 0xd0, 0xf3, 0x6a, 0xa7, 0x5b, 0xa3, 0xef, 0xfc, 0xd7, - 0xc1, 0x42, 0xb3, 0x57, 0xef, 0xc5, 0xd6, 0x35, 0xdf, 0xaf, 0xb7, 0x9a, 0x49, 0x5a, 0x5d, 0x3c, - 0x74, 0x6a, 0x72, 0xc2, 0x9c, 0xf9, 0x66, 0x33, 0x49, 0x6b, 0xf3, 0xcd, 0x5e, 0x31, 0x94, 0x3d, - 0xf9, 0x35, 0xe0, 0x9b, 0x24, 0xad, 0xef, 0x03, 0xac, 0x7c, 0x11, 0xc0, 0x45, 0x93, 0xa4, 0x37, - 0x46, 0x31, 0x1b, 0xe0, 0x7c, 0xda, 0x4a, 0xea, 0xae, 0xd9, 0x69, 0xd8, 0xb8, 0x17, 0x37, 0x3b, - 0xc3, 0x29, 0xf0, 0x73, 0xe0, 0xcb, 0x93, 0x81, 0xb7, 0x5b, 0xc9, 0xab, 0x43, 0x9e, 0xd1, 0x89, - 0x7d, 0x22, 0x9d, 0xf4, 0xca, 0xff, 0x5f, 0x60, 0x56, 0x26, 0x9d, 0x42, 0xe5, 0xb3, 0x39, 0xf2, - 0xca, 0x64, 0xe4, 0x2b, 0x49, 0x67, 0xa8, 0xef, 0x8c, 0x4c, 0x3a, 0xb9, 0x9e, 0x5b, 0xe0, 0x8c, - 0xec, 0x35, 0xeb, 0x8d, 0xb8, 0xbb, 0xdb, 0x1b, 0x68, 0xb8, 0x74, 0xd8, 0x22, 0x6d, 0xa5, 0x71, - 0xb3, 0xd3, 0x18, 0xd5, 0x6c, 0x51, 0xf6, 0x9a, 0xd7, 0x32, 0x80, 0xbe, 0x4e, 0x77, 0xc1, 0xd7, - 0xa4, 0x31, 0xcd, 0xcc, 0x94, 0x64, 0xab, 0xfe, 0x18, 0x7e, 0x52, 0xbd, 0x74, 0x98, 0x6b, 0x79, - 0x4c, 0xc0, 0x88, 0x6b, 0x99, 0xae, 0x5d, 0x18, 0x22, 0x5f, 0x19, 0x17, 0x9b, 0xf8, 0xaf, 0x82, - 0x39, 0xdd, 0x6a, 0xda, 0x4e, 0x5a, 0x8f, 0xbb, 0x2d, 0x5b, 0x7d, 0xe2, 0xb0, 0x15, 0xac, 0x75, - 0x5b, 0x76, 0xcc, 0x6e, 0x0b, 0xce, 0x6c, 0xd8, 0xbf, 0x01, 0x16, 0x4b, 0x9c, 0xc4, 0xb6, 0xac, - 0x4e, 0xbb, 0x71, 0xf5, 0x5c, 0x8e, 0xb5, 0xdf, 0x99, 0xe7, 0x2e, 0x7f, 0xab, 0xa4, 0xc9, 0x61, - 0x16, 0x0a, 0xc6, 0xfe, 0x58, 0x06, 0x95, 0x05, 0x3f, 0x1b, 0x0f, 0xa1, 0xce, 0x1f, 0x15, 0xaa, - 0x60, 0x1c, 0x40, 0xbd, 0x02, 0x4e, 0xe7, 0x91, 0x67, 0xb0, 0x4c, 0xd5, 0x89, 0x0e, 0x30, 0x07, - 0x1a, 0xfd, 0xb2, 0xf9, 0xd6, 0xc8, 0x48, 0xe6, 0x43, 0x55, 0x37, 0xed, 0xfb, 0xd0, 0x27, 0x0f, - 0xf3, 0xa1, 0x1b, 0xdd, 0xb4, 0xef, 0x43, 0x55, 0xff, 0xa7, 0xff, 0x36, 0x38, 0xa7, 0xbb, 0x9d, - 0x34, 0x9f, 0x64, 0x7b, 0x2f, 0x6e, 0xa6, 0xb6, 0x8f, 0x75, 0x21, 0xc7, 0x5a, 0x9d, 0x8c, 0xb5, - 0x59, 0xf0, 0xd4, 0x0a, 0x96, 0x12, 0x76, 0x49, 0x4f, 0x18, 0xf5, 0xf7, 0xc0, 0x33, 0xc9, 0x8e, - 0xec, 0xd9, 0x7a, 0xe6, 0x87, 0xad, 0x4e, 0xad, 0xa9, 0xdb, 0x8e, 0xe9, 0x75, 0xb3, 0x3d, 0x54, - 0x8a, 0x7a, 0x2a, 0x17, 0x85, 0x0f, 0xb0, 0x9f, 0x8c, 0xf9, 0x4e, 0x9f, 0xf7, 0x6a, 0xc9, 0x5a, - 0x8a, 0x7c, 0x3a, 0x39, 0xe4, 0xad, 0xff, 0x3d, 0x70, 0x7a, 0x34, 0xa5, 0x49, 0xaa, 0x4f, 0xe7, - 0x86, 0xfa, 0xf4, 0x3e, 0x41, 0x6f, 0xa8, 0x77, 0xac, 0x4e, 0x6b, 0xd6, 0xe5, 0xd6, 0xf9, 0xe4, - 0x83, 0xfb, 0xf3, 0xa3, 0x5c, 0x03, 0x63, 0x3d, 0x5e, 0xcb, 0xc7, 0x6f, 0x96, 0x60, 0xbe, 0x01, - 0xfe, 0x28, 0x5d, 0x3d, 0xe9, 0x59, 0x9d, 0x54, 0xbf, 0x96, 0x8b, 0xd8, 0x3f, 0x6d, 0xa3, 0x84, - 0xeb, 0xd7, 0x5a, 0x5d, 0x25, 0x5b, 0x5b, 0x3d, 0xab, 0xf7, 0x6d, 0x87, 0xe3, 0xb5, 0xca, 0x88, - 0x84, 0x8c, 0x20, 0xf1, 0xaf, 0x00, 0xd0, 0xde, 0x6d, 0xf7, 0x67, 0x6a, 0xf9, 0x30, 0x97, 0x70, - 0xab, 0x6b, 0x9a, 0x6e, 0xaf, 0xbf, 0xc6, 0xed, 0xdd, 0x76, 0x39, 0x0d, 0xdb, 0x60, 0xa9, 0xd9, - 0xab, 0xc7, 0xb6, 0xb7, 0x9b, 0x16, 0xa1, 0xb2, 0x04, 0x7b, 0xe6, 0xc8, 0x60, 0x7e, 0xb3, 0x57, - 0x1b, 0xb0, 0x97, 0xa8, 0xdf, 0x05, 0x73, 0x8d, 0x6e, 0xda, 0x2d, 0x93, 0xc0, 0x6a, 0x70, 0x84, - 0xa9, 0x7d, 0xea, 0xc1, 0xfd, 0x85, 0xf1, 0xdc, 0x71, 0xf0, 0xe9, 0x5e, 0x0d, 0x64, 0x68, 0x77, - 0xf2, 0x51, 0x7f, 0x03, 0x80, 0xe6, 0xd0, 0x7f, 0x3d, 0x9b, 0xeb, 0xf9, 0xf5, 0xc9, 0x7a, 0xde, - 0xe8, 0x8d, 0x6e, 0x8e, 0x53, 0xcd, 0x81, 0xd7, 0xba, 0x0a, 0xe6, 0x32, 0x4f, 0xda, 0x07, 0x59, - 0x39, 0x2c, 0xe8, 0xf5, 0x9d, 0x69, 0xdf, 0x79, 0xc8, 0xc1, 0xb3, 0xff, 0x5d, 0xf0, 0xc4, 0x6e, - 0x62, 0xe3, 0x7a, 0xd3, 0xd8, 0x4e, 0xda, 0x4c, 0xf7, 0x06, 0x80, 0x5f, 0xcf, 0x01, 0x5f, 0xf8, - 0x8d, 0xd9, 0xdc, 0x86, 0x4c, 0x9a, 0xba, 0x76, 0x36, 0x03, 0xb9, 0x51, 0x62, 0xf4, 0xb1, 0x5f, - 0x01, 0xf3, 0xaa, 0x6b, 0x86, 0x90, 0xcf, 0x1d, 0x35, 0x41, 0x9c, 0xcb, 0xd8, 0xfa, 0x28, 0x5b, - 0x60, 0xe9, 0x6e, 0x33, 0x4e, 0x77, 0x65, 0xab, 0xbe, 0xd3, 0x1d, 0x89, 0xcd, 0xcf, 0x1f, 0x15, - 0xcd, 0x2f, 0xd9, 0xaf, 0x77, 0x87, 0x11, 0xf9, 0x0e, 0xa8, 0xe8, 0x1d, 0xd9, 0x6a, 0xd9, 0x4e, - 0x63, 0xe0, 0x11, 0x5e, 0xc8, 0x33, 0xe0, 0x03, 0x1c, 0xf0, 0x66, 0x9f, 0xba, 0x34, 0x99, 0x45, - 0x3d, 0x3e, 0xe0, 0xd7, 0xc0, 0xfc, 0x7b, 0xbb, 0x36, 0xde, 0xab, 0xf7, 0x64, 0x2c, 0xdb, 0x49, - 0xf5, 0x1b, 0xb9, 0xc1, 0x1c, 0x10, 0x37, 0xdf, 0xcc, 0x28, 0xef, 0x64, 0x84, 0x36, 0x1d, 0xcb, - 0x4b, 0x6b, 0x73, 0xef, 0x0d, 0x5e, 0x25, 0xfe, 0x35, 0x30, 0x2f, 0xe3, 0xc6, 0x30, 0x10, 0x5d, - 0xcc, 0x31, 0x0f, 0x5a, 0xe4, 0x78, 0x2c, 0xcc, 0xcd, 0xc9, 0xc1, 0x73, 0xe2, 0xdf, 0x01, 0x8b, - 0xba, 0xdb, 0x7d, 0xb7, 0x69, 0x87, 0x58, 0x2f, 0x1e, 0x16, 0xd4, 0x36, 0x73, 0xe2, 0x51, 0xb8, - 0x05, 0x3d, 0x3a, 0x94, 0xf8, 0x0a, 0x9c, 0x8d, 0xed, 0x7b, 0xbb, 0x59, 0xb2, 0xa4, 0xbb, 0x9d, - 0x24, 0x8d, 0x65, 0xb3, 0x93, 0x26, 0xd5, 0xd5, 0xc3, 0x52, 0xe6, 0x5a, 0xc1, 0xb0, 0x39, 0xa0, - 0xcf, 0xed, 0x67, 0xfa, 0x93, 0x2c, 0x63, 0xf2, 0xe3, 0xfd, 0x2f, 0x13, 0xff, 0xfb, 0xa0, 0xd2, - 0x88, 0x65, 0x6f, 0xe7, 0xbd, 0x56, 0x3d, 0xb1, 0x69, 0xda, 0xec, 0x34, 0x92, 0xea, 0x4b, 0xb9, - 0x80, 0x17, 0x27, 0x0b, 0xb8, 0x96, 0x51, 0xbf, 0x79, 0x73, 0xab, 0x24, 0x1e, 0xcf, 0xc9, 0x16, - 0x4b, 0xac, 0xfe, 0x5b, 0x3f, 0x06, 0x4f, 0x76, 0x7b, 0xb6, 0x93, 0x05, 0xfc, 0xb2, 0x4e, 0x1b, - 0x71, 0x1e, 0x6b, 0xb9, 0x9c, 0x4b, 0x93, 0xe5, 0xbc, 0xd1, 0xb3, 0x9d, 0x2b, 0xbd, 0xe6, 0xb7, - 0x07, 0x5c, 0x85, 0x0d, 0x0c, 0x65, 0x9d, 0x2f, 0x81, 0xf7, 0x53, 0xf8, 0x2f, 0x0d, 0x62, 0x7e, - 0x5e, 0xb6, 0xad, 0x8f, 0x25, 0xb6, 0x17, 0x3f, 0x38, 0xde, 0x0f, 0xec, 0x59, 0x85, 0xe6, 0xbf, - 0x09, 0xce, 0x8e, 0x10, 0x0f, 0x0c, 0xff, 0xf2, 0x51, 0x0d, 0xff, 0xcc, 0x10, 0xab, 0x6f, 0xf7, - 0x37, 0xc0, 0x42, 0x99, 0x3c, 0xf6, 0xd1, 0xe0, 0xd1, 0xbd, 0xcf, 0x7c, 0x9e, 0x36, 0x8e, 0xec, - 0xee, 0x0c, 0x6a, 0x90, 0xce, 0xa1, 0x23, 0xa7, 0x73, 0xc0, 0x24, 0xe9, 0x95, 0x32, 0xa3, 0xbb, - 0x09, 0x16, 0xfb, 0x28, 0x7d, 0x8d, 0xf0, 0x17, 0x70, 0x65, 0xa7, 0x0b, 0xa8, 0xbe, 0x4e, 0x7f, - 0xe1, 0x81, 0xa7, 0xbb, 0x71, 0xb3, 0xd1, 0xec, 0xd4, 0xfb, 0x79, 0xcc, 0xae, 0x4a, 0x6c, 0x9a, - 0xf4, 0x97, 0x95, 0xe4, 0x56, 0x7f, 0x6d, 0xfd, 0xb0, 0x2e, 0xc6, 0xfa, 0xb0, 0xbe, 0x5e, 0x7f, - 0x23, 0x07, 0xdb, 0x2a, 0x52, 0x9b, 0x02, 0xaa, 0x58, 0xc9, 0xab, 0x9d, 0x34, 0xde, 0x1b, 0x2e, - 0xf8, 0x93, 0xdd, 0x83, 0x08, 0xfd, 0x6d, 0x00, 0xde, 0xb9, 0x97, 0xd6, 0x75, 0x4b, 0x36, 0xdb, - 0x49, 0x95, 0xe6, 0x0a, 0x1c, 0x60, 0xbf, 0xaf, 0x7d, 0x67, 0x7b, 0x33, 0x23, 0x3b, 0xa8, 0x50, - 0x3d, 0xf5, 0xce, 0xbd, 0x34, 0x27, 0x48, 0xfc, 0x04, 0x5c, 0x48, 0x77, 0x62, 0x2b, 0xd3, 0x7a, - 0xb3, 0x93, 0xda, 0x56, 0xab, 0xd9, 0xb0, 0x1d, 0x3d, 0x70, 0x65, 0xec, 0xa8, 0xa1, 0x6f, 0xe3, - 0xcc, 0x2f, 0xef, 0x2f, 0x18, 0xdb, 0xee, 0xa2, 0xb5, 0xd4, 0x26, 0xe9, 0x9a, 0x8e, 0xd3, 0x5a, - 0xb5, 0x00, 0xbe, 0x31, 0x82, 0x5b, 0x10, 0x5f, 0xb8, 0x09, 0x96, 0x0f, 0x9f, 0x10, 0xbf, 0x02, - 0xa6, 0xde, 0xb5, 0x7b, 0x65, 0x3b, 0x22, 0xfb, 0xe9, 0x2f, 0x81, 0x13, 0x77, 0x65, 0x6b, 0xd7, - 0xe6, 0x0d, 0x86, 0x53, 0xb5, 0xe2, 0xe1, 0xe5, 0xe3, 0xdc, 0x7b, 0xf9, 0xe4, 0x4f, 0x1f, 0x66, - 0x91, 0xf1, 0xb5, 0xe9, 0xd9, 0x53, 0x15, 0xb0, 0xf2, 0xf7, 0x17, 0x00, 0xd8, 0xea, 0xee, 0xc6, - 0xda, 0xe6, 0x76, 0x71, 0x07, 0xcc, 0x8d, 0x96, 0x37, 0xc7, 0x27, 0x6e, 0xfb, 0xbc, 0x3d, 0x52, - 0x56, 0x37, 0x45, 0x1e, 0x9e, 0xf1, 0x8e, 0x78, 0x15, 0xd0, 0x1b, 0xd6, 0x38, 0x2d, 0x70, 0x7a, - 0x58, 0x33, 0x25, 0x36, 0xad, 0x4e, 0xe5, 0x4b, 0xb1, 0x32, 0x11, 0x73, 0x3c, 0xb0, 0x3f, 0xf7, - 0xe0, 0xfe, 0x38, 0xef, 0xc4, 0x32, 0x78, 0xae, 0x5f, 0xa6, 0x6d, 0xd9, 0xd4, 0xdf, 0x1c, 0x29, - 0x74, 0xa6, 0x8f, 0xba, 0x33, 0x4a, 0xad, 0x07, 0xe5, 0x4e, 0x1d, 0x64, 0x3f, 0x73, 0x65, 0x4f, - 0x1c, 0x59, 0xd9, 0x95, 0x07, 0xf7, 0xe7, 0x54, 0xa3, 0x57, 0x2f, 0x39, 0x27, 0x57, 0xec, 0x32, - 0xe9, 0x64, 0x5a, 0xb6, 0xc0, 0xbc, 0xee, 0xee, 0x66, 0x2b, 0x57, 0x68, 0x7a, 0x32, 0x98, 0xba, - 0xb8, 0x70, 0x90, 0x6b, 0xd9, 0x2c, 0x28, 0x37, 0xbb, 0xc6, 0x6e, 0xbc, 0x90, 0x81, 0x9d, 0xfe, - 0xd0, 0x03, 0x2b, 0xb3, 0x3f, 0xf4, 0x4e, 0x54, 0xbc, 0x15, 0xef, 0xd8, 0x40, 0xd0, 0xb7, 0x46, - 0xe7, 0xa4, 0x84, 0xcf, 0x3f, 0xe7, 0xff, 0x3d, 0x5e, 0x65, 0xea, 0x96, 0x4c, 0x12, 0x9b, 0x54, - 0x67, 0x72, 0xc1, 0xeb, 0x93, 0x05, 0xbf, 0xde, 0xe9, 0xde, 0xeb, 0x8c, 0x97, 0x9a, 0x9b, 0x19, - 0xdf, 0xc6, 0xd2, 0x70, 0x6f, 0x8c, 0xc8, 0xdc, 0x57, 0x7a, 0x6e, 0x16, 0x22, 0xfc, 0xbf, 0x39, - 0x0b, 0xce, 0xed, 0x17, 0x9f, 0x1b, 0x63, 0x52, 0x9d, 0xcd, 0x1b, 0x22, 0xff, 0xed, 0x3f, 0x7a, - 0xe8, 0xfd, 0xb3, 0x0f, 0x02, 0x24, 0x65, 0xa4, 0x1c, 0x57, 0x22, 0xb2, 0x8c, 0x42, 0x2d, 0x99, - 0x35, 0x26, 0x62, 0x2e, 0x52, 0x9c, 0x70, 0xaa, 0x9c, 0x04, 0x01, 0xd1, 0x46, 0x32, 0x6c, 0x24, - 0x95, 0xc6, 0x42, 0xe1, 0x90, 0x8b, 0x38, 0x92, 0x06, 0x5b, 0x8e, 0x8d, 0x76, 0x12, 0x43, 0x10, - 0x44, 0xc6, 0x30, 0x68, 0x11, 0xc2, 0xda, 0x60, 0x12, 0x11, 0x2a, 0x09, 0x82, 0x4a, 0x40, 0x17, - 0x3a, 0x4a, 0x65, 0xa4, 0x0d, 0x08, 0x90, 0xb2, 0xc4, 0x6a, 0xab, 0x2c, 0x93, 0x52, 0x18, 0x12, - 0x32, 0x6a, 0x43, 0x1b, 0x41, 0x62, 0x38, 0x72, 0xa1, 0xc0, 0x1c, 0x04, 0x9a, 0x61, 0xc2, 0x0c, - 0x91, 0x5c, 0x09, 0x41, 0xa8, 0x8a, 0x9c, 0x52, 0x06, 0x43, 0x6a, 0x18, 0x54, 0x1a, 0x32, 0x6e, - 0x40, 0x60, 0x43, 0x2c, 0x99, 0xa3, 0x86, 0x11, 0xae, 0x95, 0x43, 0xa1, 0xd0, 0x58, 0xba, 0x08, - 0x29, 0xab, 0x31, 0x11, 0x42, 0x51, 0x10, 0x18, 0x2c, 0x08, 0xd3, 0x8c, 0x3b, 0x1b, 0x46, 0x61, - 0x44, 0xa9, 0xb3, 0x5a, 0xf3, 0x10, 0x51, 0x6b, 0x19, 0x61, 0xa1, 0x8e, 0x40, 0x60, 0xac, 0x76, - 0x8a, 0x72, 0xc9, 0x48, 0xc4, 0x85, 0x55, 0x16, 0x72, 0xa4, 0x38, 0x97, 0x52, 0x29, 0xc6, 0xad, - 0x25, 0x14, 0x04, 0x0c, 0xe9, 0x90, 0xea, 0x28, 0xb2, 0x21, 0x74, 0x44, 0x70, 0x68, 0xad, 0x14, - 0x90, 0x87, 0x42, 0x85, 0x5c, 0x33, 0x2e, 0x33, 0x4d, 0x95, 0xe0, 0x12, 0x53, 0x6b, 0xa9, 0x12, - 0x88, 0x50, 0x4a, 0xb9, 0x73, 0x8a, 0x45, 0x88, 0x3a, 0xc3, 0x23, 0x28, 0x35, 0x08, 0x08, 0x75, - 0x88, 0xca, 0x50, 0x48, 0x13, 0x41, 0x28, 0xb4, 0x64, 0x3c, 0x24, 0x24, 0x12, 0x18, 0x71, 0xe9, - 0x50, 0xe4, 0x08, 0x08, 0x4c, 0x14, 0x5a, 0x1b, 0x52, 0xa7, 0x22, 0x1c, 0x91, 0x88, 0x10, 0xad, - 0x2c, 0x65, 0x4c, 0x6a, 0x8e, 0x34, 0x16, 0xd8, 0x86, 0x20, 0xe0, 0x2e, 0xd4, 0x02, 0x71, 0xa3, - 0x15, 0xe3, 0xcc, 0x2a, 0x65, 0x25, 0x64, 0x16, 0x6b, 0x2d, 0x28, 0x23, 0xd0, 0x92, 0x6c, 0x4e, - 0x0d, 0x14, 0xcc, 0x86, 0x9c, 0x72, 0x61, 0x88, 0x66, 0x84, 0x61, 0x11, 0x69, 0xc3, 0x8d, 0x73, - 0x0a, 0x86, 0x5a, 0x09, 0x10, 0x38, 0x8c, 0x95, 0x31, 0x2c, 0xb2, 0x24, 0x5b, 0x40, 0xcb, 0x43, - 0x6d, 0x24, 0x85, 0x46, 0x62, 0xc3, 0xa9, 0xe5, 0x44, 0x81, 0xc0, 0x29, 0xc6, 0x39, 0x41, 0x8e, - 0x0b, 0x8c, 0x04, 0x0c, 0xb3, 0x29, 0xa3, 0xd4, 0x62, 0xa6, 0x34, 0x27, 0x50, 0x51, 0x06, 0x02, - 0xa8, 0x35, 0xb2, 0x9c, 0xb2, 0x90, 0x5b, 0x1a, 0x21, 0x29, 0x91, 0x09, 0xb1, 0x34, 0x14, 0x31, - 0x2e, 0x8d, 0x0d, 0x15, 0x03, 0x01, 0x86, 0x02, 0x5b, 0xe4, 0x9c, 0x53, 0x94, 0x99, 0xc8, 0x52, - 0x89, 0x84, 0x64, 0x91, 0x13, 0x4a, 0x33, 0x8b, 0x21, 0x91, 0x20, 0x30, 0x88, 0x4b, 0x6a, 0x24, - 0xa7, 0xd2, 0x31, 0x61, 0x11, 0x82, 0x9c, 0x87, 0x58, 0x12, 0xa1, 0xa4, 0x8d, 0xb4, 0x30, 0x14, - 0x04, 0x32, 0x44, 0x58, 0x08, 0x27, 0x14, 0x83, 0x48, 0x1a, 0xed, 0x42, 0x0e, 0x95, 0xc0, 0x11, - 0x33, 0x91, 0x30, 0x54, 0xea, 0x10, 0x04, 0x8a, 0xf0, 0x50, 0xd0, 0x50, 0x32, 0x49, 0xa9, 0x41, - 0xc6, 0x68, 0xcd, 0x29, 0x51, 0x3a, 0x62, 0x84, 0x84, 0xc6, 0x69, 0x0b, 0x02, 0x4e, 0x05, 0x77, - 0x96, 0xe2, 0x90, 0x47, 0x21, 0x35, 0xca, 0x09, 0x1c, 0x4a, 0xc2, 0x31, 0x27, 0x56, 0x18, 0x62, - 0xb8, 0xcb, 0x34, 0x35, 0x06, 0x71, 0x65, 0x0c, 0xc1, 0x50, 0x58, 0x19, 0x21, 0x2e, 0xb8, 0x80, - 0x04, 0xca, 0xd0, 0x09, 0x42, 0x42, 0x0a, 0x02, 0x2e, 0x04, 0x92, 0x84, 0x47, 0x96, 0x66, 0xf8, - 0x28, 0xa2, 0xd0, 0x61, 0x66, 0x42, 0xc7, 0x10, 0x11, 0x4e, 0x60, 0x03, 0x02, 0x62, 0xb8, 0xd0, - 0xd0, 0x38, 0x85, 0x9c, 0xa4, 0x54, 0x20, 0xa4, 0xb8, 0x93, 0x11, 0xc3, 0xc4, 0x3a, 0x6e, 0xac, - 0x51, 0x20, 0xb0, 0x84, 0x40, 0xa5, 0xa5, 0x10, 0x9a, 0x4b, 0x86, 0x59, 0x28, 0x2d, 0xc2, 0xa1, - 0x64, 0x4c, 0x53, 0x1d, 0x61, 0xa6, 0x19, 0x08, 0x38, 0xb1, 0x90, 0x2a, 0xcd, 0xb8, 0xa1, 0x10, - 0x3b, 0x11, 0x12, 0x22, 0x38, 0xd1, 0xca, 0x61, 0x1c, 0x61, 0xaa, 0x20, 0x06, 0x81, 0xe2, 0x8e, - 0xa3, 0x30, 0x22, 0x1a, 0x5a, 0x64, 0xb0, 0x10, 0x90, 0x13, 0x1a, 0x3a, 0xa2, 0xa4, 0xe2, 0x02, - 0x2b, 0xa1, 0x40, 0x60, 0x18, 0x43, 0x4e, 0x3a, 0x4d, 0x1d, 0x85, 0x0e, 0x19, 0xab, 0xb1, 0x52, - 0x94, 0x09, 0x0e, 0x95, 0x93, 0x82, 0x0a, 0x0c, 0x02, 0x2c, 0x20, 0x67, 0x0e, 0x12, 0xc7, 0x2d, - 0x97, 0x90, 0x38, 0xa8, 0x88, 0x10, 0x9a, 0xe9, 0x48, 0x3b, 0xa8, 0xa0, 0xe2, 0x99, 0xad, 0xcb, - 0x48, 0x1a, 0x44, 0x19, 0x14, 0xce, 0x84, 0x88, 0xea, 0x48, 0x29, 0x22, 0x19, 0xd4, 0x54, 0x70, - 0xac, 0xb8, 0x06, 0x81, 0xd2, 0xa1, 0x26, 0x3c, 0x74, 0x34, 0xdb, 0x08, 0x22, 0x52, 0xc2, 0x08, - 0xcb, 0xb0, 0xa1, 0x11, 0x56, 0x51, 0x84, 0x0d, 0x07, 0x81, 0x42, 0xc4, 0x40, 0xc4, 0x69, 0x28, - 0x4d, 0x24, 0x11, 0x95, 0x11, 0x54, 0x2e, 0x9b, 0x52, 0x14, 0x46, 0x11, 0xd3, 0x11, 0x07, 0x41, - 0x28, 0xb8, 0x25, 0x21, 0x46, 0xc2, 0x11, 0x11, 0x09, 0x8a, 0xa1, 0x93, 0x98, 0x71, 0xa4, 0x30, - 0x32, 0x52, 0x47, 0x56, 0x83, 0x00, 0x45, 0x08, 0x63, 0x1e, 0x71, 0x08, 0xa5, 0x16, 0x48, 0x11, - 0xaa, 0xa5, 0x31, 0x8c, 0x73, 0xaa, 0x2d, 0x67, 0x2c, 0xcc, 0x34, 0x65, 0xd0, 0x68, 0x8b, 0xb8, - 0xb1, 0x48, 0x29, 0x44, 0x89, 0x0d, 0x85, 0x09, 0x8d, 0x11, 0x14, 0x11, 0xc5, 0x09, 0x63, 0xd9, - 0x8e, 0x42, 0x0c, 0x4a, 0x47, 0x19, 0xa2, 0x8a, 0x87, 0xdc, 0x58, 0xa7, 0x38, 0xa3, 0x46, 0x41, - 0x17, 0x62, 0x49, 0x29, 0x02, 0x81, 0x71, 0x4c, 0x13, 0x68, 0xc3, 0x08, 0x1a, 0x25, 0x33, 0x63, - 0xc3, 0x11, 0xb4, 0x86, 0x84, 0x30, 0x84, 0xda, 0x41, 0x46, 0x41, 0x40, 0x98, 0x86, 0x92, 0x20, - 0x4d, 0x39, 0x12, 0x38, 0x72, 0x10, 0x63, 0x49, 0x14, 0x23, 0x10, 0x67, 0x5b, 0x13, 0xf2, 0xdc, - 0xd3, 0x69, 0x6d, 0x99, 0x8a, 0x42, 0xcd, 0x15, 0x8a, 0x68, 0x84, 0x0d, 0xc4, 0x34, 0x62, 0x5c, - 0x44, 0x50, 0x52, 0x18, 0x2a, 0x10, 0x08, 0x84, 0x68, 0x24, 0xa4, 0xe6, 0x12, 0x72, 0x44, 0xac, - 0x41, 0x98, 0x22, 0x45, 0x42, 0x1e, 0x6a, 0x6d, 0xa4, 0xb1, 0x02, 0x04, 0x90, 0x58, 0xc4, 0x43, - 0x19, 0x39, 0x4e, 0x30, 0x67, 0x56, 0x10, 0x42, 0x91, 0xb1, 0x34, 0xe2, 0x84, 0x50, 0x08, 0x43, - 0x9b, 0xcd, 0x87, 0x33, 0x54, 0x44, 0x18, 0x3b, 0x6e, 0x10, 0x72, 0xc4, 0x44, 0xa1, 0xd1, 0x96, - 0x53, 0xc7, 0x2d, 0x14, 0x42, 0x46, 0xd9, 0xbe, 0x85, 0x10, 0x32, 0x26, 0x11, 0x12, 0xa1, 0xb4, - 0x56, 0x72, 0x83, 0x94, 0x0e, 0xa1, 0xe0, 0x9c, 0x29, 0x29, 0x18, 0x01, 0x01, 0x14, 0xdc, 0x31, - 0x66, 0x71, 0x64, 0xb8, 0xa6, 0x0a, 0x4a, 0x26, 0x20, 0x82, 0x58, 0x2b, 0x93, 0xad, 0xb0, 0xcb, - 0x76, 0xa5, 0x25, 0x0a, 0x4b, 0x85, 0x9c, 0x90, 0x2c, 0x74, 0xd8, 0x29, 0xaa, 0x05, 0xa6, 0xdc, - 0x61, 0x47, 0x51, 0x48, 0x50, 0xe6, 0xf9, 0x69, 0x68, 0x33, 0x45, 0xa4, 0xd2, 0x5a, 0x72, 0x2b, - 0x85, 0x92, 0x52, 0x10, 0x6c, 0x64, 0xc8, 0x9d, 0x51, 0x0c, 0x0b, 0x10, 0x50, 0x13, 0x49, 0xcc, - 0x4d, 0xe8, 0x30, 0x0e, 0x89, 0x35, 0x21, 0x32, 0x96, 0x73, 0x2d, 0xc3, 0xd0, 0x2a, 0x88, 0x90, - 0x25, 0x20, 0x50, 0x58, 0x85, 0xc8, 0xa8, 0x48, 0x09, 0x2a, 0xa0, 0x0c, 0xa1, 0xc1, 0x11, 0xd4, - 0x5a, 0x61, 0xa8, 0x68, 0x88, 0x39, 0x0e, 0x41, 0x20, 0x30, 0x8b, 0x44, 0x04, 0x91, 0x43, 0x94, - 0x85, 0x90, 0x59, 0x61, 0x8d, 0x86, 0x0a, 0x22, 0x29, 0x20, 0xd2, 0xa1, 0x61, 0x20, 0x88, 0x42, - 0x81, 0xb0, 0x88, 0x54, 0xc6, 0x26, 0x29, 0xc2, 0x84, 0x38, 0x03, 0x25, 0x54, 0x52, 0x42, 0x49, - 0xc2, 0x2c, 0x7a, 0xa0, 0xd0, 0x3a, 0xed, 0xa0, 0x85, 0x90, 0x41, 0x6a, 0x8c, 0xb3, 0xc6, 0x58, - 0x44, 0x94, 0xb3, 0x52, 0x88, 0x48, 0x30, 0x0c, 0x02, 0xc4, 0x28, 0x91, 0x91, 0xa6, 0x61, 0x48, - 0x88, 0xd4, 0x2e, 0xca, 0x9c, 0x1a, 0x44, 0x4a, 0x6a, 0xad, 0x0c, 0xcc, 0x6d, 0xcc, 0x84, 0x0e, - 0x52, 0xc5, 0xa4, 0x40, 0x10, 0x21, 0xe6, 0xa8, 0x62, 0xd0, 0x6a, 0xab, 0xa1, 0x30, 0x14, 0x4a, - 0x64, 0x1c, 0x08, 0x04, 0xc9, 0x48, 0x23, 0x8e, 0x4d, 0x48, 0x85, 0xb1, 0x8a, 0xa1, 0xcc, 0xa1, - 0x52, 0xab, 0x55, 0x84, 0xa8, 0x52, 0x10, 0x04, 0xcc, 0xb2, 0x88, 0x68, 0xa1, 0x85, 0xe3, 0x4a, - 0x46, 0x18, 0x5a, 0x27, 0x14, 0xe2, 0x56, 0x38, 0x6d, 0xb1, 0xc5, 0x2e, 0x02, 0x01, 0x13, 0x50, - 0x62, 0x82, 0x4d, 0x16, 0xda, 0x42, 0x0a, 0x85, 0x93, 0x2a, 0xc2, 0x36, 0x62, 0x58, 0x72, 0x89, - 0xc3, 0x2c, 0x02, 0x71, 0x2a, 0x14, 0xa4, 0xca, 0x28, 0x83, 0x0c, 0x56, 0x82, 0x13, 0x17, 0x5a, - 0x2e, 0x29, 0x8b, 0x2c, 0x0c, 0x09, 0xce, 0x22, 0x90, 0xd0, 0x98, 0x71, 0x61, 0x91, 0x86, 0x56, - 0x38, 0x46, 0x88, 0x84, 0x18, 0xeb, 0x10, 0x43, 0xe6, 0x44, 0x84, 0x84, 0x45, 0x20, 0x10, 0xa1, - 0x55, 0x32, 0xc4, 0x59, 0xf8, 0xc0, 0x8a, 0x46, 0x21, 0x8c, 0x90, 0xc0, 0x4a, 0x46, 0x34, 0x33, - 0x68, 0xa6, 0x24, 0x08, 0x22, 0x4d, 0x11, 0xd4, 0x96, 0x13, 0x6c, 0x39, 0xe5, 0x92, 0x10, 0x8c, - 0x28, 0xc1, 0x5a, 0x48, 0x8e, 0xad, 0x88, 0x70, 0x16, 0x1b, 0x42, 0x67, 0x38, 0x91, 0x18, 0x39, - 0xe1, 0x88, 0x66, 0x4e, 0x38, 0x17, 0x29, 0xa6, 0x43, 0xa2, 0x94, 0x46, 0x91, 0x30, 0x20, 0xc0, - 0x86, 0x47, 0x82, 0x6a, 0x15, 0x29, 0x96, 0xf9, 0x83, 0x48, 0x59, 0x8b, 0x43, 0xc1, 0x6c, 0x24, - 0x34, 0x62, 0x51, 0x08, 0x41, 0xe0, 0x0c, 0x87, 0x4e, 0x0a, 0x1d, 0x22, 0x0c, 0xb5, 0xc9, 0x0c, - 0x95, 0x61, 0xc8, 0x10, 0x74, 0x44, 0x87, 0x94, 0x66, 0xb1, 0x92, 0x45, 0x8e, 0x84, 0x14, 0x2b, - 0x6a, 0x49, 0x64, 0x31, 0x77, 0x4c, 0x2b, 0x4b, 0x20, 0x86, 0x5a, 0x10, 0x82, 0x14, 0xd5, 0x20, - 0x10, 0x30, 0x84, 0x90, 0xe2, 0xc2, 0xff, 0x31, 0x1b, 0x31, 0xa6, 0x20, 0x25, 0x1a, 0xb2, 0x08, - 0x33, 0x2a, 0x33, 0x2b, 0xd4, 0x0c, 0xba, 0x30, 0xcb, 0x1c, 0x50, 0x44, 0xc2, 0x28, 0x54, 0x34, - 0x52, 0x32, 0x84, 0x9c, 0x29, 0x03, 0x75, 0xa8, 0xad, 0x05, 0x81, 0xc6, 0x10, 0x29, 0x81, 0x1d, - 0x57, 0x94, 0x13, 0x27, 0x09, 0xe7, 0xca, 0xa2, 0x88, 0x9a, 0x30, 0xe4, 0xd9, 0x0c, 0x52, 0x10, - 0x28, 0x01, 0x95, 0x51, 0x56, 0x84, 0x48, 0x86, 0x94, 0x3b, 0x48, 0x71, 0x64, 0x14, 0x46, 0x52, - 0xca, 0x50, 0x6b, 0xc5, 0x04, 0x08, 0x84, 0x0b, 0xb1, 0xa6, 0x0e, 0x87, 0x4a, 0x40, 0x43, 0x4c, - 0xc4, 0x22, 0x65, 0x65, 0x08, 0x85, 0xe5, 0xd8, 0x61, 0x2b, 0x5d, 0x96, 0x95, 0x81, 0x0f, 0xbd, - 0x99, 0x95, 0x13, 0xf1, 0xd4, 0x5f, 0x79, 0xc1, 0xc4, 0x74, 0x6d, 0x69, 0x3c, 0x5d, 0xfb, 0x76, - 0x9e, 0x92, 0xf9, 0x5b, 0xe0, 0x82, 0xb1, 0x4e, 0xee, 0xb6, 0xfa, 0x5d, 0xd4, 0x7a, 0xc7, 0xbe, - 0x9f, 0xf6, 0xbb, 0x71, 0x73, 0x79, 0x46, 0xbd, 0xb4, 0x2f, 0x5d, 0xbc, 0xda, 0xee, 0xa5, 0x7b, - 0xd7, 0x8f, 0xd5, 0xce, 0x97, 0x9c, 0x45, 0x61, 0x72, 0xdb, 0xbe, 0x9f, 0x96, 0x7d, 0xb7, 0x57, - 0xc1, 0xd9, 0x7d, 0xa0, 0xc6, 0x76, 0xf6, 0xaa, 0xf3, 0x87, 0xa2, 0x9d, 0x19, 0x43, 0x7b, 0xc5, - 0x76, 0xf6, 0xfc, 0xeb, 0x60, 0x69, 0x1f, 0x8e, 0x6c, 0xb5, 0xba, 0xf7, 0xca, 0x93, 0xa7, 0x83, - 0x80, 0xfc, 0x31, 0xa0, 0x2b, 0x19, 0xc7, 0xcb, 0x67, 0xff, 0xeb, 0x9b, 0x15, 0xbc, 0x46, 0xd6, - 0xe8, 0x1a, 0x5b, 0x0b, 0xd7, 0xa2, 0x35, 0xbe, 0x86, 0xe0, 0xc6, 0x25, 0xf0, 0xc4, 0x3e, 0x78, - 0xbd, 0xd3, 0x6d, 0x6a, 0xeb, 0x2f, 0x7d, 0xfc, 0xd0, 0x9b, 0xfb, 0xe4, 0xa1, 0x07, 0x1e, 0x3d, - 0xf4, 0x66, 0x11, 0x5a, 0x43, 0x78, 0x0d, 0x91, 0xd7, 0xa6, 0x67, 0x41, 0x65, 0x6e, 0xe5, 0x33, - 0x00, 0xa6, 0xf3, 0x23, 0xe1, 0x97, 0xc1, 0x6c, 0xdb, 0xa6, 0xd2, 0xc8, 0x54, 0xe6, 0x75, 0xd8, - 0x1c, 0x5e, 0xde, 0xa7, 0xd0, 0x2d, 0x9b, 0x24, 0xb2, 0x61, 0x6f, 0xd9, 0x54, 0xe6, 0x45, 0xf4, - 0x80, 0xde, 0x7f, 0x03, 0x4c, 0x27, 0x3d, 0xab, 0xcb, 0x72, 0x0b, 0x1d, 0x5a, 0x26, 0xe7, 0xe7, - 0xe2, 0xfb, 0x9b, 0xbd, 0xb3, 0x59, 0x01, 0xf3, 0xc9, 0x47, 0x9e, 0x57, 0xcb, 0x81, 0x5e, 0xfe, - 0xa7, 0x53, 0x3f, 0x79, 0xe8, 0x2d, 0x82, 0xd3, 0x60, 0xf6, 0x56, 0x5f, 0x86, 0x87, 0x7e, 0xfa, - 0xd0, 0xfb, 0xdb, 0x53, 0xe0, 0x3c, 0x98, 0xbe, 0x2d, 0xdb, 0xf6, 0xc2, 0x22, 0x38, 0xdd, 0x97, - 0xbf, 0xde, 0x91, 0x6d, 0x0b, 0x96, 0xc1, 0x5c, 0xf6, 0x21, 0x41, 0x59, 0x74, 0x2e, 0x82, 0xb9, - 0x0c, 0x6a, 0xbd, 0x98, 0x8a, 0xc0, 0x03, 0x2f, 0x82, 0x99, 0xe2, 0x84, 0x35, 0xd9, 0x58, 0x06, - 0xd5, 0xfc, 0xdd, 0xc8, 0xa9, 0xed, 0x7a, 0xf1, 0x27, 0xa9, 0x4c, 0x41, 0x0f, 0xac, 0x80, 0xe9, - 0x3b, 0x32, 0xdd, 0xd9, 0xb8, 0x00, 0xce, 0xe5, 0x74, 0x3d, 0x99, 0xee, 0xac, 0xdb, 0xf7, 0xa5, - 0xee, 0xa7, 0xfe, 0x95, 0x29, 0xb0, 0x0a, 0xe6, 0x32, 0x9a, 0xa0, 0xa8, 0xdd, 0x36, 0x9e, 0x02, - 0xe7, 0x87, 0xa4, 0x65, 0xc5, 0x37, 0xa0, 0xbd, 0x08, 0x40, 0x4e, 0x5b, 0xb3, 0x0d, 0xfb, 0xfe, - 0x38, 0x6a, 0x9c, 0x0d, 0x0d, 0x29, 0xff, 0x72, 0x0a, 0x9c, 0xdc, 0xcc, 0xdb, 0x2f, 0x15, 0x6f, - 0xf5, 0xcf, 0xa7, 0xc0, 0x9f, 0x4e, 0x81, 0x73, 0x60, 0xb1, 0xf8, 0x90, 0xce, 0x5e, 0xbd, 0xe8, - 0xcc, 0xe0, 0xa9, 0x2b, 0x9d, 0x3d, 0xe0, 0x83, 0x4a, 0x3e, 0x3e, 0xd2, 0xeb, 0x01, 0x06, 0x3c, - 0xbf, 0x7f, 0xac, 0xdf, 0x1f, 0x19, 0xd3, 0x7f, 0xa5, 0x52, 0x99, 0x5a, 0x9d, 0xbf, 0x9a, 0x8d, - 0x04, 0xc5, 0xce, 0xa9, 0xbd, 0x78, 0x08, 0xeb, 0x98, 0x92, 0xc7, 0x0e, 0x95, 0x32, 0x4a, 0x5a, - 0x48, 0xc9, 0x3f, 0xfa, 0x28, 0x52, 0xc6, 0x26, 0xf8, 0x18, 0x78, 0xa1, 0x5c, 0xa4, 0x09, 0xa4, - 0x18, 0x6c, 0x76, 0x3b, 0xae, 0xd9, 0xd8, 0x8d, 0xad, 0x01, 0xe7, 0xc0, 0xd2, 0x28, 0x5d, 0xff, - 0x04, 0x0a, 0xdc, 0x04, 0x28, 0x1f, 0x6f, 0xf6, 0xea, 0x65, 0xcb, 0x43, 0xcb, 0xd4, 0x36, 0xba, - 0x65, 0xd1, 0xfa, 0xf8, 0x78, 0xd3, 0x26, 0x2b, 0xe7, 0x2b, 0x53, 0xab, 0x67, 0xb6, 0xf3, 0xe1, - 0x60, 0x73, 0x30, 0x0c, 0x3d, 0xf0, 0xff, 0xc1, 0xf1, 0x1b, 0x77, 0x2a, 0xde, 0xea, 0x3d, 0xb0, - 0x0b, 0xfc, 0xbe, 0x69, 0x75, 0xf6, 0xea, 0xcd, 0x5e, 0xb1, 0x1a, 0x97, 0xc1, 0x33, 0x7d, 0x69, - 0x23, 0x0d, 0x88, 0xe1, 0xa3, 0x4d, 0x56, 0xe6, 0x2b, 0x53, 0xab, 0xb3, 0x77, 0xca, 0x27, 0xb0, - 0x0e, 0x9e, 0xea, 0x33, 0xf4, 0x27, 0x60, 0xd8, 0x28, 0x48, 0x56, 0x16, 0x2b, 0x53, 0xab, 0x73, - 0x05, 0x71, 0xb0, 0x65, 0xd3, 0x04, 0xdc, 0x03, 0x53, 0x57, 0xb6, 0x6e, 0x57, 0xbc, 0xd5, 0x0e, - 0x68, 0x81, 0xb3, 0x60, 0x7e, 0xa0, 0x81, 0x4c, 0x3a, 0x85, 0x0a, 0xab, 0xe5, 0x84, 0xf5, 0x1b, - 0x08, 0xeb, 0x32, 0xa9, 0x77, 0x76, 0xdb, 0xca, 0xc6, 0xc9, 0xca, 0x42, 0x65, 0x6a, 0x15, 0x5c, - 0xd9, 0x0a, 0x6e, 0x17, 0xcf, 0xe0, 0x45, 0xf0, 0xe4, 0x80, 0xb6, 0x2f, 0xbe, 0xac, 0xfc, 0x4b, - 0x45, 0xaf, 0x6c, 0xdd, 0x2e, 0x04, 0x43, 0x70, 0xf2, 0x95, 0xfc, 0xe2, 0x45, 0xc5, 0xdb, 0x78, - 0x0e, 0x04, 0x39, 0xdb, 0xf8, 0x15, 0x8e, 0xfd, 0x5b, 0x23, 0x04, 0xf3, 0x05, 0x47, 0x61, 0xf0, - 0x07, 0xf3, 0xed, 0x33, 0xfe, 0xaf, 0x83, 0x99, 0xe2, 0xc6, 0x45, 0x52, 0xf1, 0x36, 0xce, 0x95, - 0x9f, 0x58, 0x5e, 0xb2, 0xa8, 0x4c, 0xad, 0xe4, 0xd7, 0x54, 0xc0, 0x8b, 0x00, 0xbc, 0xf6, 0x9d, - 0xed, 0xa0, 0xe8, 0x67, 0x55, 0xbc, 0x8d, 0x27, 0xcb, 0xed, 0x31, 0x6c, 0x96, 0x0d, 0x48, 0xd7, - 0xc0, 0x7c, 0xde, 0x31, 0x0f, 0x8a, 0xbe, 0x78, 0xc5, 0xdb, 0xb8, 0x00, 0xce, 0xe4, 0xc4, 0xa3, - 0x2d, 0xf7, 0xca, 0xd4, 0xca, 0xd4, 0xbb, 0x76, 0x0f, 0xbc, 0x04, 0x66, 0x8a, 0xfe, 0x75, 0x46, - 0xb8, 0xdc, 0x37, 0xaa, 0xf1, 0xf6, 0xf7, 0x00, 0xfa, 0x25, 0x00, 0xae, 0x0e, 0x2e, 0x4b, 0x54, - 0xbc, 0x0b, 0x4f, 0x95, 0xf3, 0x39, 0xe9, 0xe6, 0xc5, 0xca, 0x3b, 0x60, 0x36, 0xf3, 0x4c, 0x79, - 0x33, 0xe3, 0x07, 0xe0, 0x44, 0xe6, 0x00, 0x93, 0xaa, 0x37, 0xb1, 0x33, 0xb3, 0xaf, 0xa5, 0x98, - 0xb1, 0x6d, 0x3c, 0x97, 0x39, 0xc7, 0x2c, 0xf2, 0x9d, 0xfc, 0xd0, 0x9b, 0xaa, 0x7c, 0x70, 0xbc, - 0x1f, 0x04, 0xa1, 0xf7, 0xe8, 0x67, 0xff, 0x30, 0x75, 0xf2, 0xc3, 0x8f, 0xf2, 0x83, 0xa2, 0x02, - 0x76, 0x25, 0x06, 0x0b, 0x37, 0x6d, 0x43, 0xea, 0xbd, 0x81, 0xc4, 0xb7, 0xc7, 0x25, 0x1e, 0x7e, - 0x16, 0xb5, 0xf6, 0xe0, 0xfe, 0xd9, 0x09, 0xfe, 0x7a, 0x44, 0xfa, 0x04, 0x99, 0x7f, 0xb6, 0x08, - 0x16, 0xc6, 0x1d, 0xba, 0xff, 0x16, 0x98, 0x96, 0xad, 0x46, 0x37, 0x8f, 0x24, 0x0b, 0x78, 0xed, - 0xe0, 0xeb, 0x41, 0x9b, 0xdd, 0xb6, 0x6a, 0x76, 0x9a, 0x9d, 0xc6, 0x95, 0x56, 0xb6, 0xd7, 0xd2, - 0x9d, 0xf6, 0xc6, 0xb9, 0x4f, 0xef, 0x7b, 0xff, 0xfe, 0xd0, 0x9b, 0x7b, 0xf5, 0x46, 0x6d, 0x6b, - 0xbb, 0x7e, 0xeb, 0xca, 0xf6, 0xe6, 0xf5, 0xbc, 0x59, 0x9a, 0x23, 0xfa, 0x0c, 0x80, 0xcc, 0xea, - 0x8b, 0x3e, 0xed, 0x6f, 0x88, 0xe8, 0xa7, 0x64, 0x67, 0xaf, 0xe8, 0x39, 0xfa, 0x97, 0xc0, 0x5c, - 0xd9, 0xda, 0xcd, 0x3b, 0xe8, 0xc7, 0xf7, 0x77, 0xd0, 0xaf, 0x1f, 0xab, 0x81, 0x82, 0x20, 0xef, - 0xa1, 0x6f, 0x3f, 0x7e, 0xa2, 0x3d, 0x75, 0xb4, 0x13, 0xed, 0x8d, 0x99, 0x1f, 0x7f, 0xe4, 0x4d, - 0x01, 0xcf, 0xbb, 0x7e, 0xec, 0xb1, 0xc3, 0xed, 0xb7, 0xc0, 0xd9, 0x11, 0x25, 0x06, 0x9d, 0xeb, - 0x13, 0x5f, 0xe4, 0xcc, 0x2c, 0x4b, 0x2d, 0x86, 0x8a, 0xf6, 0x3b, 0xd8, 0x6f, 0xee, 0xbb, 0x43, - 0x73, 0xf2, 0x0b, 0xdc, 0xa1, 0x19, 0xb6, 0xa3, 0xc7, 0x2e, 0xd3, 0x6c, 0x80, 0xe9, 0xfc, 0x82, - 0xc1, 0xcc, 0x17, 0xb8, 0x60, 0x30, 0x84, 0xca, 0x79, 0xfd, 0xd7, 0xc1, 0xa9, 0x2c, 0x55, 0xaa, - 0x37, 0x3b, 0xae, 0x5b, 0x5e, 0x40, 0x3a, 0x00, 0x28, 0x4b, 0x90, 0x6e, 0x74, 0x5c, 0x37, 0x6e, - 0xcb, 0xf1, 0x33, 0x91, 0x59, 0x53, 0xbe, 0xf1, 0x3f, 0xf0, 0x86, 0xc9, 0x9d, 0xeb, 0xc6, 0xf7, - 0x64, 0x6c, 0x9a, 0x9d, 0xc6, 0xa0, 0x17, 0x78, 0xea, 0x08, 0xe6, 0xfd, 0xdc, 0x83, 0xfb, 0x95, - 0xfd, 0xac, 0xa5, 0xa0, 0x41, 0x92, 0x39, 0x55, 0xab, 0x96, 0x52, 0x5e, 0x1d, 0x50, 0xf6, 0x9b, - 0x81, 0xdf, 0xeb, 0xef, 0xa5, 0xe9, 0x23, 0x08, 0xbb, 0x38, 0x79, 0x2f, 0x8d, 0xc8, 0x2b, 0xb7, - 0x54, 0xb9, 0x8f, 0xfc, 0xb7, 0x01, 0xc8, 0x13, 0xc2, 0xa2, 0xa9, 0x5a, 0x5c, 0xec, 0xb8, 0xf8, - 0x1b, 0xce, 0x1c, 0x06, 0xad, 0xef, 0x8d, 0x27, 0xb2, 0x9d, 0x59, 0xf9, 0xf1, 0x47, 0xde, 0x7c, - 0xb2, 0x23, 0x63, 0x6b, 0xd6, 0x82, 0xdd, 0xc4, 0xc6, 0xd7, 0xbd, 0xda, 0xa9, 0x1c, 0xb4, 0xf4, - 0x3e, 0xc5, 0x7a, 0xe4, 0x02, 0xce, 0xfd, 0xae, 0x04, 0xe4, 0x4b, 0x94, 0xe3, 0x5f, 0x05, 0xa7, - 0xb2, 0x4f, 0x29, 0xf0, 0xcf, 0x4f, 0x34, 0xeb, 0x09, 0x1e, 0x2e, 0x63, 0xcd, 0x60, 0xe2, 0xbe, - 0xcb, 0xea, 0x82, 0x4a, 0x2b, 0x77, 0x62, 0xf5, 0x21, 0x5a, 0x71, 0x0f, 0x64, 0xed, 0x70, 0xb4, - 0x71, 0xd7, 0x77, 0xb0, 0xc6, 0x0b, 0xad, 0x71, 0x1f, 0xf9, 0x0a, 0xf0, 0x8b, 0x99, 0x97, 0xad, - 0x56, 0xbd, 0x3c, 0x52, 0x4c, 0xca, 0xbb, 0x1e, 0x93, 0x9d, 0x8b, 0x57, 0xab, 0xe4, 0x1c, 0x57, - 0x5a, 0xad, 0xf2, 0x7c, 0x32, 0xf1, 0x37, 0xc0, 0x99, 0x7c, 0x76, 0xc7, 0x40, 0x9e, 0x3a, 0x14, - 0x64, 0x31, 0x63, 0x18, 0xc5, 0xa8, 0x81, 0xa5, 0x66, 0x27, 0xb5, 0x71, 0x47, 0xb6, 0x5a, 0x7b, - 0xf5, 0x86, 0xed, 0xd8, 0x58, 0xa6, 0xd6, 0x94, 0x77, 0x58, 0x26, 0xc2, 0x0c, 0xf6, 0xca, 0x75, - 0xaf, 0x76, 0x76, 0xc8, 0x7c, 0xad, 0xcf, 0xeb, 0xff, 0x89, 0x07, 0x16, 0x12, 0xdb, 0x68, 0x67, - 0xe9, 0x51, 0x59, 0x09, 0x3d, 0x7d, 0xe8, 0xe5, 0xa7, 0x82, 0xb6, 0xa8, 0x7e, 0x72, 0x53, 0x26, - 0xbf, 0x7a, 0xe8, 0x79, 0x0f, 0x3e, 0xf2, 0x5e, 0x5a, 0x9d, 0xd2, 0x71, 0xba, 0x3a, 0x93, 0xa4, - 0xb2, 0xd1, 0xec, 0x34, 0x56, 0xa7, 0x7b, 0x71, 0xd7, 0xac, 0xce, 0x27, 0x5d, 0x97, 0x2a, 0xd9, - 0x79, 0xb7, 0xde, 0xb6, 0x7a, 0x75, 0xc6, 0x59, 0x13, 0xcb, 0x76, 0xaf, 0x76, 0x3a, 0x19, 0xc5, - 0xf1, 0x7f, 0x00, 0x4e, 0xe7, 0x37, 0x57, 0xfb, 0x1a, 0x56, 0x7f, 0x3e, 0x33, 0xf1, 0x80, 0x63, - 0xd2, 0xe1, 0xc4, 0xd2, 0x83, 0xfb, 0xe3, 0xcc, 0xb9, 0x6b, 0x98, 0xcf, 0x86, 0x6e, 0x94, 0x23, - 0xfe, 0xdb, 0x60, 0x3e, 0xc9, 0x4f, 0xe0, 0xea, 0xc5, 0x16, 0xfd, 0xc5, 0x4c, 0xbe, 0x47, 0x2f, - 0x1e, 0xf5, 0xd0, 0x6e, 0xc3, 0x7f, 0x6c, 0x67, 0xce, 0xd6, 0xe6, 0x92, 0xc1, 0xfb, 0xe4, 0x65, - 0xfe, 0x93, 0x87, 0x1e, 0x05, 0xa7, 0xc1, 0x4c, 0x11, 0x53, 0x12, 0xff, 0x38, 0x82, 0x60, 0x0e, - 0x9c, 0xc8, 0xdf, 0xfa, 0xc7, 0x31, 0x04, 0xe7, 0x40, 0xa5, 0x9c, 0xbc, 0x60, 0xe0, 0xf4, 0x8f, - 0x63, 0xbe, 0xf1, 0x3c, 0x38, 0x5d, 0x3a, 0xfe, 0x03, 0x4a, 0x32, 0xbc, 0xc6, 0xd6, 0xc8, 0xc6, - 0x1a, 0x98, 0xcb, 0x0d, 0xbe, 0x24, 0xfa, 0xda, 0xc7, 0x0f, 0xbd, 0xf3, 0x9f, 0x3c, 0xf4, 0x96, - 0x1e, 0x3d, 0xf4, 0xce, 0x60, 0xb2, 0x86, 0xd1, 0x1a, 0xc6, 0x6b, 0x38, 0x5c, 0xc3, 0xd1, 0x1a, - 0xa6, 0x45, 0x01, 0xf7, 0xda, 0xf4, 0xec, 0x52, 0xe5, 0x89, 0xd7, 0x4e, 0xce, 0xfe, 0x72, 0xa6, - 0xf2, 0x9f, 0x33, 0x2b, 0xff, 0x36, 0x0b, 0x16, 0x36, 0xb3, 0xec, 0xd5, 0x0e, 0x42, 0xf1, 0xb7, - 0x7e, 0xfb, 0x50, 0xfc, 0xe5, 0x42, 0xee, 0xb3, 0x13, 0x42, 0xee, 0xbe, 0x30, 0xfb, 0xfa, 0x6f, - 0x1d, 0x66, 0xff, 0xa0, 0xd1, 0xf5, 0xfa, 0x97, 0x88, 0xae, 0xe3, 0x41, 0xf5, 0xc6, 0x97, 0x71, - 0xf1, 0xe3, 0xbe, 0xfc, 0xda, 0x97, 0xf0, 0xe5, 0xbf, 0x0f, 0xa7, 0x2d, 0x7f, 0x47, 0x4e, 0x7b, - 0xc4, 0x9b, 0xfd, 0xf1, 0xba, 0xe9, 0x1b, 0x5f, 0xdc, 0x4d, 0x1f, 0xe4, 0x9d, 0x6f, 0x7f, 0x49, - 0xe7, 0xbc, 0xcf, 0xcf, 0xbe, 0x7c, 0xe6, 0xa7, 0xdf, 0xdc, 0x97, 0x8d, 0x6f, 0xac, 0xec, 0x77, - 0x3f, 0x67, 0x7e, 0xf8, 0x6b, 0x6f, 0x7c, 0x68, 0x63, 0x79, 0xdc, 0xf7, 0x2c, 0xfe, 0xf0, 0xd7, - 0xde, 0xe8, 0xc0, 0xca, 0xbf, 0xcc, 0x82, 0xc5, 0x9a, 0xed, 0xb5, 0xa4, 0xfe, 0xca, 0xb5, 0x7c, - 0xe5, 0x5a, 0xfe, 0xb0, 0xae, 0xe5, 0xad, 0xdf, 0x8d, 0x6b, 0xf9, 0xca, 0xa3, 0xfc, 0x51, 0x79, - 0x94, 0xff, 0x38, 0x05, 0xe6, 0xae, 0xd9, 0xf4, 0x2b, 0x6f, 0xf2, 0xc7, 0xe8, 0x4d, 0x5e, 0xfb, - 0x22, 0x95, 0xee, 0xb9, 0xc9, 0x95, 0x6e, 0xbf, 0xae, 0xfd, 0xca, 0x33, 0x7d, 0xe5, 0x99, 0x7e, - 0x2f, 0x9e, 0xc9, 0xbf, 0xf9, 0x25, 0x6b, 0xbe, 0xf1, 0xfa, 0xee, 0xf7, 0xe3, 0xe7, 0x36, 0x7e, - 0xe4, 0x7d, 0xf2, 0xd9, 0xf2, 0xb1, 0x4f, 0x3f, 0x5b, 0x3e, 0xf6, 0xab, 0xcf, 0x96, 0xbd, 0x0f, - 0x1e, 0x2d, 0x7b, 0x7f, 0xfd, 0x68, 0xd9, 0xfb, 0xc7, 0x47, 0xcb, 0xde, 0x27, 0x8f, 0x96, 0xbd, - 0x4f, 0x1f, 0x2d, 0x7b, 0x3f, 0x7b, 0xb4, 0xec, 0xfd, 0xfc, 0xd1, 0xf2, 0xb1, 0x5f, 0x3d, 0x5a, - 0xf6, 0x7e, 0xf4, 0xf9, 0xf2, 0xb1, 0x8f, 0x3f, 0x5f, 0xf6, 0x3e, 0xf9, 0x7c, 0xf9, 0xd8, 0xa7, - 0x9f, 0x2f, 0x1f, 0xfb, 0x6e, 0xad, 0xd1, 0xed, 0xbd, 0xdb, 0x58, 0xbf, 0xdb, 0x6d, 0xa5, 0x36, - 0x8e, 0xe5, 0xfa, 0x6e, 0x72, 0x39, 0xff, 0xe1, 0xba, 0x71, 0xfb, 0x52, 0x2f, 0xee, 0xde, 0x6d, - 0x1a, 0x1b, 0x5f, 0xea, 0xbf, 0xbe, 0xdc, 0x53, 0x8d, 0xee, 0x65, 0xfb, 0x7e, 0xda, 0xff, 0xa7, - 0xd4, 0x49, 0xff, 0x9b, 0xaa, 0x4e, 0xe6, 0xff, 0xfd, 0x47, 0xfe, 0x27, 0x00, 0x00, 0xff, 0xff, - 0x0a, 0x78, 0x10, 0x52, 0xc1, 0x3b, 0x00, 0x00, + // 5359 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7b, 0xcb, 0x6f, 0x5c, 0xc7, + 0x99, 0xaf, 0x8e, 0x48, 0x89, 0x54, 0x35, 0x45, 0xb6, 0x8e, 0x68, 0xa9, 0x2d, 0xcb, 0xf4, 0x31, + 0x63, 0x3b, 0xb2, 0x4c, 0x51, 0xf5, 0x3e, 0x55, 0x06, 0x6e, 0x10, 0x91, 0x96, 0xf5, 0xb0, 0x64, + 0xcb, 0x4d, 0xdd, 0xc4, 0x37, 0x37, 0x49, 0xbb, 0x9e, 0x64, 0xdb, 0xcd, 0xee, 0x76, 0x9f, 0x43, + 0xc9, 0x04, 0xae, 0x70, 0x8d, 0x00, 0xf7, 0x02, 0x77, 0x71, 0x81, 0x8c, 0x17, 0x83, 0x41, 0xe6, + 0x1f, 0x18, 0x78, 0x96, 0xb3, 0x1b, 0x79, 0x00, 0x23, 0xc0, 0x0c, 0x06, 0x99, 0x59, 0x78, 0x69, + 0xcc, 0x2a, 0x96, 0x37, 0x49, 0x66, 0x13, 0x0c, 0x66, 0x95, 0xd5, 0xe0, 0x3c, 0xfa, 0x45, 0x35, + 0x19, 0x3a, 0x76, 0x82, 0x2c, 0xbc, 0x62, 0x9f, 0x3a, 0xdf, 0xf7, 0xfb, 0xbe, 0x53, 0xf5, 0xd5, + 0xf7, 0xaa, 0x22, 0xb8, 0x70, 0xcf, 0x25, 0xab, 0xcd, 0xce, 0xe5, 0xc4, 0x6c, 0xb9, 0x6d, 0x75, + 0x39, 0x71, 0xbd, 0x7b, 0x4d, 0xe3, 0x1a, 0xdd, 0x4e, 0xab, 0x69, 0x76, 0x2f, 0xa7, 0xbb, 0x5d, + 0x97, 0xac, 0x76, 0x7b, 0x9d, 0xb4, 0x13, 0x9e, 0x2f, 0x28, 0x57, 0x0b, 0xca, 0xd5, 0x71, 0xca, + 0x73, 0x97, 0x36, 0x9b, 0xe9, 0xd6, 0x8e, 0x5e, 0x35, 0x9d, 0xed, 0xcb, 0x9b, 0x9d, 0xcd, 0xce, + 0xe5, 0x9c, 0x49, 0xef, 0xf8, 0xfc, 0x29, 0x7f, 0xc8, 0x7f, 0x15, 0x60, 0xe7, 0x9e, 0xd9, 0xec, + 0x74, 0x36, 0x5b, 0x6e, 0x48, 0x95, 0x36, 0xb7, 0x5d, 0x92, 0xaa, 0xed, 0x6e, 0x49, 0xf0, 0xd4, + 0xb8, 0x5e, 0x9d, 0x6e, 0xda, 0xec, 0xb4, 0x4b, 0x55, 0xce, 0x45, 0xe3, 0x2f, 0x1f, 0x57, 0xf6, + 0xdc, 0x0b, 0xe3, 0x14, 0x3d, 0x95, 0xba, 0x46, 0xab, 0xb9, 0xdd, 0x4c, 0x5d, 0x6f, 0x8c, 0xee, + 0xd2, 0x41, 0x9f, 0xdf, 0xe8, 0xed, 0xb4, 0xdc, 0x18, 0xf9, 0x93, 0xe3, 0xe4, 0xa3, 0xaf, 0xce, + 0x8f, 0xbf, 0xba, 0xa7, 0x5a, 0x4d, 0xab, 0x52, 0x37, 0x59, 0xe3, 0x7b, 0x4d, 0x77, 0xbf, 0x31, + 0xfe, 0x4d, 0xcf, 0x3c, 0x4e, 0x91, 0x8c, 0x0a, 0x58, 0xfe, 0xa7, 0x67, 0x01, 0xd8, 0x68, 0x6e, + 0x77, 0x5b, 0xae, 0xbe, 0xd3, 0x72, 0x61, 0x08, 0xa6, 0xdb, 0x6a, 0xdb, 0xd5, 0x82, 0x28, 0xb8, + 0x70, 0xa2, 0x9e, 0xff, 0x0e, 0x2f, 0x82, 0x53, 0xdb, 0x2e, 0xed, 0x35, 0x4d, 0x23, 0x7b, 0x6c, + 0xb4, 0x94, 0x76, 0xad, 0xda, 0xa9, 0x9c, 0x60, 0xa1, 0x78, 0xf1, 0xba, 0xda, 0x76, 0xb7, 0xb2, + 0xe1, 0x50, 0x80, 0xe3, 0xca, 0x64, 0x0a, 0xd4, 0x8e, 0x46, 0xc1, 0x85, 0x79, 0x1c, 0xad, 0x8e, + 0xaf, 0x6f, 0x31, 0x05, 0xab, 0x99, 0xac, 0x2b, 0x39, 0x5d, 0xbd, 0xa4, 0x0f, 0xaf, 0x83, 0x79, + 0xdb, 0xd9, 0x56, 0xcd, 0x76, 0x63, 0x5b, 0xa5, 0x66, 0xcb, 0xf5, 0x6a, 0x53, 0x51, 0x70, 0xa1, + 0x82, 0x9f, 0x9d, 0x8c, 0x70, 0xbb, 0x20, 0xba, 0xbb, 0xdb, 0x75, 0xf5, 0x93, 0x05, 0x63, 0x39, + 0x14, 0x4a, 0x30, 0xdd, 0x55, 0xe9, 0x56, 0x6d, 0x3a, 0xe7, 0x7f, 0x7e, 0x32, 0xff, 0x1d, 0x95, + 0x6e, 0x8d, 0x62, 0xe4, 0x2c, 0xe1, 0x6d, 0x30, 0xb3, 0xe5, 0x94, 0x75, 0xbd, 0xa4, 0x76, 0x2c, + 0x9a, 0xba, 0x50, 0xc1, 0xdf, 0x9e, 0xcc, 0x7d, 0x3d, 0x27, 0x1a, 0xe1, 0x5f, 0x03, 0x7f, 0xff, + 0xeb, 0x4f, 0xa6, 0x8e, 0x7d, 0x18, 0x1c, 0xad, 0x56, 0xeb, 0x7d, 0x8c, 0xf0, 0x16, 0xa8, 0x6c, + 0xa5, 0x69, 0xb7, 0xb1, 0xed, 0xd2, 0xad, 0x8e, 0xad, 0x1d, 0xcf, 0x15, 0x7a, 0x69, 0x1f, 0xc8, + 0x34, 0xed, 0xde, 0xce, 0xe9, 0x46, 0xd5, 0x02, 0x5b, 0x83, 0xe1, 0xf0, 0x3b, 0x00, 0xdc, 0x57, + 0xbe, 0x51, 0xce, 0xef, 0x4c, 0x0e, 0xf6, 0xcc, 0x64, 0xb0, 0xef, 0x2b, 0x5f, 0x4e, 0xef, 0x89, + 0xfb, 0xfd, 0x9f, 0xe1, 0x6d, 0xb0, 0xe8, 0xde, 0xef, 0x36, 0x7b, 0x2a, 0x7b, 0x6a, 0x0c, 0xb6, + 0x46, 0x6d, 0x36, 0x47, 0x3a, 0xb7, 0x5a, 0x6c, 0x9e, 0xd5, 0xfe, 0xe6, 0x59, 0xbd, 0xdb, 0xa7, + 0xa8, 0x9f, 0x1e, 0xf2, 0x0d, 0x06, 0xc3, 0xb7, 0xc1, 0xf1, 0x5c, 0xa8, 0xab, 0xcd, 0x45, 0x53, + 0x17, 0x4e, 0xac, 0x5d, 0xcf, 0x66, 0xe0, 0xf2, 0x87, 0xc1, 0xca, 0xf2, 0xc5, 0xde, 0x85, 0xfa, + 0x0b, 0xff, 0x73, 0xf9, 0xca, 0xeb, 0xff, 0x63, 0x79, 0x25, 0x5a, 0xbe, 0x7e, 0xf7, 0xee, 0x9d, + 0xfe, 0xdf, 0x8d, 0xec, 0xc7, 0xdd, 0xf5, 0xfc, 0xf9, 0xee, 0xad, 0x8d, 0xe5, 0x1f, 0x0d, 0x66, + 0x6d, 0xba, 0xff, 0xab, 0x16, 0xd4, 0x4b, 0xdc, 0xf0, 0x3a, 0x98, 0xeb, 0x76, 0x7a, 0xe9, 0xc0, + 0x20, 0xc0, 0x81, 0x0b, 0xda, 0xe9, 0xa5, 0xa3, 0x33, 0x57, 0xe9, 0x0e, 0x07, 0xc2, 0x15, 0x50, + 0xb1, 0x2e, 0x31, 0xbd, 0x66, 0xbe, 0x39, 0x6a, 0x95, 0xcc, 0x78, 0xcb, 0x25, 0xeb, 0x4d, 0xd5, + 0x3e, 0x38, 0x5a, 0x1f, 0x7d, 0x1d, 0x5e, 0x05, 0x95, 0x9d, 0x5e, 0x6b, 0x20, 0xf6, 0x64, 0x2e, + 0xf6, 0xb9, 0xc9, 0x62, 0xff, 0x7b, 0xfd, 0xd6, 0xd8, 0x7a, 0xed, 0xf4, 0x5a, 0x7d, 0xa1, 0x6f, + 0x81, 0x85, 0x16, 0x6d, 0x58, 0x97, 0x0c, 0xbf, 0x60, 0x3e, 0x87, 0xda, 0xc7, 0xa8, 0x6e, 0xd1, + 0x57, 0x5c, 0x32, 0xfa, 0x0d, 0x6b, 0x33, 0x9f, 0x3d, 0x08, 0x7e, 0xf5, 0x30, 0x08, 0xea, 0x27, + 0x5b, 0xa3, 0xef, 0xc2, 0xd7, 0xc0, 0x7c, 0xb3, 0xdb, 0xe8, 0xf6, 0x9c, 0x6f, 0xbe, 0xdf, 0x68, + 0x35, 0x93, 0xb4, 0xb6, 0x70, 0xe0, 0xd4, 0xe4, 0x84, 0x39, 0xf3, 0xad, 0x66, 0x92, 0xd6, 0xe7, + 0x9a, 0xdd, 0x62, 0x28, 0x7b, 0x0a, 0xeb, 0x20, 0xb4, 0x49, 0xda, 0xd8, 0x03, 0x58, 0xfd, 0x32, + 0x80, 0x0b, 0x36, 0x49, 0x6f, 0x8c, 0x62, 0x6e, 0x82, 0xb3, 0x69, 0x2b, 0x69, 0xf8, 0x66, 0x7b, + 0xd3, 0xf5, 0xba, 0xbd, 0x66, 0x7b, 0x38, 0x05, 0x61, 0x0e, 0x7c, 0x79, 0x32, 0xf0, 0xdd, 0x56, + 0xf2, 0xea, 0x90, 0x67, 0x74, 0x62, 0x9f, 0x48, 0x27, 0xbd, 0x0a, 0xff, 0x1b, 0x98, 0x55, 0x49, + 0xbb, 0x50, 0xf9, 0x74, 0x8e, 0xbc, 0x3c, 0x19, 0xf9, 0x4a, 0xd2, 0x1e, 0xea, 0x3b, 0xa3, 0x92, + 0x76, 0xae, 0xe7, 0x06, 0x38, 0xa5, 0xba, 0xcd, 0xc6, 0x66, 0xaf, 0xb3, 0xd3, 0x1d, 0x68, 0xb8, + 0x78, 0xd0, 0x22, 0x6d, 0xa4, 0xbd, 0x66, 0x7b, 0x73, 0x54, 0xb3, 0x05, 0xd5, 0x6d, 0x5e, 0xcb, + 0x00, 0xfa, 0x3a, 0xdd, 0x03, 0x4f, 0x2b, 0x6b, 0x9b, 0x99, 0x29, 0xa9, 0x56, 0xe3, 0x31, 0xfc, + 0xa4, 0x76, 0xe9, 0x20, 0xd7, 0xf2, 0x98, 0x80, 0x11, 0xd7, 0x32, 0x5d, 0x3f, 0x37, 0x44, 0xbe, + 0x32, 0x2e, 0x36, 0x09, 0x5f, 0x05, 0x15, 0xd3, 0x6a, 0xba, 0x76, 0xda, 0xe8, 0x75, 0x5a, 0xae, + 0xf6, 0xc4, 0x41, 0x2b, 0x58, 0xef, 0xb4, 0xdc, 0x98, 0xdd, 0x16, 0x9c, 0xd9, 0x70, 0x78, 0x03, + 0x2c, 0x94, 0x38, 0x89, 0x6b, 0x39, 0x93, 0x76, 0x7a, 0xb5, 0x33, 0x39, 0xd6, 0x5e, 0x67, 0x9e, + 0xbb, 0xfc, 0x8d, 0x92, 0x26, 0x87, 0x99, 0x2f, 0x18, 0xfb, 0x63, 0x19, 0x54, 0x16, 0xfc, 0x5c, + 0x6f, 0x08, 0x75, 0xf6, 0xb0, 0x50, 0x05, 0xe3, 0x00, 0xea, 0x15, 0x70, 0x32, 0x8f, 0x3c, 0x83, + 0x65, 0xaa, 0x4d, 0x74, 0x80, 0x39, 0xd0, 0xe8, 0x97, 0xcd, 0xb5, 0x46, 0x46, 0x32, 0x1f, 0xaa, + 0x3b, 0x69, 0xdf, 0x87, 0x3e, 0x79, 0x90, 0x0f, 0x5d, 0xeb, 0xa4, 0x7d, 0x1f, 0xaa, 0xfb, 0x3f, + 0xc3, 0xb7, 0xc1, 0x19, 0xd3, 0x69, 0xa7, 0xf9, 0x24, 0xbb, 0xfb, 0xbd, 0x66, 0xea, 0xfa, 0x58, + 0xe7, 0x72, 0xac, 0x8b, 0x93, 0xb1, 0xd6, 0x0b, 0x9e, 0x7a, 0xc1, 0x52, 0xc2, 0x2e, 0x9a, 0x09, + 0xa3, 0xe1, 0x2e, 0x78, 0x26, 0xd9, 0x52, 0x5d, 0xd7, 0xc8, 0xfc, 0xb0, 0x33, 0xa9, 0xb3, 0x0d, + 0xd7, 0xb6, 0xdd, 0x4e, 0xb6, 0x87, 0x4a, 0x51, 0x4f, 0xe5, 0xa2, 0xf0, 0x3e, 0xf6, 0x93, 0x31, + 0xdf, 0xe9, 0xf3, 0x5e, 0x2d, 0x59, 0x4b, 0x91, 0xe7, 0x93, 0x03, 0xde, 0x86, 0x3f, 0x04, 0x27, + 0x47, 0x53, 0x9a, 0xa4, 0x76, 0x3e, 0x37, 0xd4, 0xf3, 0x7b, 0x04, 0xbd, 0xa1, 0xdf, 0x71, 0x26, + 0xad, 0x3b, 0x9f, 0x5b, 0xe7, 0x93, 0x1f, 0x3d, 0x98, 0x1b, 0xe5, 0x1a, 0x18, 0xeb, 0xd1, 0x7a, + 0x3e, 0x7e, 0xab, 0x04, 0x0b, 0x2d, 0x08, 0x47, 0xe9, 0x1a, 0x49, 0xd7, 0x99, 0xa4, 0xf6, 0x74, + 0x2e, 0x62, 0xef, 0xb4, 0x8d, 0x12, 0xae, 0x5e, 0x6b, 0x75, 0xb4, 0x6a, 0x6d, 0x74, 0x9d, 0xd9, + 0xb3, 0x1d, 0x8e, 0xd6, 0xab, 0x23, 0x12, 0x32, 0x82, 0x24, 0xbc, 0x02, 0xc0, 0xf6, 0xce, 0x76, + 0x7f, 0xa6, 0x96, 0x0e, 0x72, 0x09, 0xb7, 0x3b, 0xb6, 0xe9, 0x77, 0xfb, 0x6b, 0xbc, 0xbd, 0xb3, + 0x5d, 0x4e, 0xc3, 0x5d, 0xb0, 0xd8, 0xec, 0x36, 0x7a, 0xae, 0xbb, 0x93, 0x16, 0xa1, 0xb2, 0x04, + 0x7b, 0xe6, 0xd0, 0x60, 0x61, 0xb3, 0x5b, 0x1f, 0xb0, 0x97, 0xa8, 0x3f, 0x00, 0x95, 0xcd, 0x4e, + 0xda, 0x29, 0x93, 0xc0, 0x5a, 0x74, 0x88, 0xa9, 0x7d, 0xea, 0xa3, 0x07, 0xf3, 0xe3, 0xb9, 0xe3, + 0xe0, 0xd3, 0x83, 0x3a, 0xc8, 0xd0, 0xee, 0xe4, 0xa3, 0xe1, 0x1a, 0x00, 0xcd, 0xa1, 0xff, 0x7a, + 0x36, 0xd7, 0xf3, 0x5b, 0x93, 0xf5, 0xbc, 0xd1, 0x1d, 0xdd, 0x1c, 0x27, 0x9a, 0x03, 0xaf, 0x75, + 0x15, 0x54, 0x32, 0x4f, 0xda, 0x07, 0x59, 0x3e, 0x28, 0xe8, 0xf5, 0x9d, 0x69, 0xdf, 0x79, 0xa8, + 0xc1, 0x73, 0xf8, 0x03, 0xf0, 0xc4, 0x4e, 0xe2, 0x7a, 0x8d, 0xa6, 0x75, 0xed, 0xb4, 0x99, 0xee, + 0x0e, 0x00, 0xbf, 0x95, 0x03, 0xbe, 0xf0, 0x7b, 0xb3, 0xb9, 0x35, 0x95, 0x34, 0x4d, 0xfd, 0x74, + 0x06, 0x72, 0xa3, 0xc4, 0xe8, 0x63, 0xbf, 0x02, 0xe6, 0x74, 0xc7, 0x0e, 0x21, 0x9f, 0x3b, 0x6c, + 0x82, 0x58, 0xc9, 0xd8, 0xfa, 0x28, 0x1b, 0x60, 0xf1, 0x5e, 0xb3, 0x97, 0xee, 0xa8, 0x56, 0x63, + 0xab, 0x33, 0x12, 0x9b, 0x9f, 0x3f, 0x2c, 0x5a, 0x58, 0xb2, 0x5f, 0xef, 0x0c, 0x23, 0xf2, 0x1d, + 0x50, 0x35, 0x5b, 0xaa, 0xd5, 0x72, 0xed, 0xcd, 0x81, 0x47, 0x78, 0x21, 0xcf, 0x80, 0xf7, 0x71, + 0xc0, 0xeb, 0x7d, 0xea, 0xd2, 0x64, 0x16, 0xcc, 0xf8, 0x40, 0x58, 0x07, 0x73, 0xef, 0xed, 0xb8, + 0xde, 0x6e, 0xa3, 0xab, 0x7a, 0x6a, 0x3b, 0xa9, 0x7d, 0x3b, 0x37, 0x98, 0x7d, 0xe2, 0xe6, 0x9b, + 0x19, 0xe5, 0x9d, 0x8c, 0xd0, 0xa5, 0x63, 0x79, 0x69, 0xbd, 0xf2, 0xde, 0xe0, 0x55, 0x12, 0x5e, + 0x03, 0x73, 0xaa, 0xb7, 0x39, 0x0c, 0x44, 0x17, 0x72, 0xcc, 0xfd, 0x16, 0xb9, 0x37, 0x16, 0xe6, + 0x2a, 0x6a, 0xf0, 0x9c, 0x84, 0x77, 0xc0, 0x82, 0xe9, 0x74, 0xde, 0x6d, 0xba, 0x21, 0xd6, 0x8b, + 0x07, 0x05, 0xb5, 0xf5, 0x9c, 0x78, 0x14, 0x6e, 0xde, 0x8c, 0x0e, 0x25, 0xa1, 0x06, 0xa7, 0x7b, + 0xee, 0xbd, 0x9d, 0x2c, 0x59, 0x32, 0x9d, 0x76, 0x92, 0xf6, 0x54, 0xb3, 0x9d, 0x26, 0xb5, 0x8b, + 0x07, 0xa5, 0xcc, 0xf5, 0x82, 0x61, 0x7d, 0x40, 0x9f, 0xdb, 0xcf, 0xf4, 0xa7, 0x59, 0xc6, 0x14, + 0xf6, 0xf6, 0xbe, 0x4c, 0xc2, 0x1f, 0x81, 0xea, 0x66, 0x4f, 0x75, 0xb7, 0xde, 0x6b, 0x35, 0x12, + 0x97, 0xa6, 0xcd, 0xf6, 0x66, 0x52, 0x7b, 0x29, 0x17, 0xf0, 0xe2, 0x64, 0x01, 0xd7, 0x32, 0xea, + 0x37, 0x6f, 0x6d, 0x94, 0xc4, 0xe3, 0x39, 0xd9, 0x42, 0x89, 0xd5, 0x7f, 0x1b, 0xf6, 0xc0, 0x93, + 0x9d, 0xae, 0x6b, 0x67, 0x01, 0xbf, 0xac, 0xd3, 0x46, 0x9c, 0xc7, 0x4a, 0x2e, 0xe7, 0xd2, 0x64, + 0x39, 0x6f, 0x74, 0x5d, 0xfb, 0x4a, 0xb7, 0xf9, 0xbd, 0x01, 0x57, 0x61, 0x03, 0x43, 0x59, 0x67, + 0x4b, 0xe0, 0xbd, 0x14, 0xe1, 0x4b, 0x83, 0x98, 0x9f, 0x97, 0x6d, 0xab, 0x63, 0x89, 0xed, 0x85, + 0x0f, 0x8e, 0xf6, 0x03, 0x7b, 0x56, 0xa1, 0x85, 0x6f, 0x82, 0xd3, 0x23, 0xc4, 0x03, 0xc3, 0xbf, + 0x7c, 0x58, 0xc3, 0x3f, 0x35, 0xc4, 0xea, 0xdb, 0xfd, 0x0d, 0x30, 0x5f, 0x26, 0x8f, 0x7d, 0x34, + 0x78, 0x78, 0xef, 0x33, 0x97, 0xa7, 0x8d, 0x23, 0xbb, 0x3b, 0x83, 0x1a, 0xa4, 0x73, 0xe8, 0xd0, + 0xe9, 0x1c, 0xb0, 0x49, 0x7a, 0xa5, 0xcc, 0xe8, 0x6e, 0x81, 0x85, 0x3e, 0x4a, 0x5f, 0x23, 0xfc, + 0x25, 0x5c, 0xd9, 0xc9, 0x02, 0xaa, 0xaf, 0xd3, 0x5f, 0x04, 0xe0, 0x7c, 0xa7, 0xd7, 0xdc, 0x6c, + 0xb6, 0x1b, 0xfd, 0x3c, 0x66, 0x47, 0x27, 0x2e, 0x4d, 0xfa, 0xcb, 0x4a, 0x72, 0xab, 0xbf, 0xb6, + 0x7a, 0x50, 0x17, 0x63, 0x75, 0x58, 0x5f, 0xaf, 0xbe, 0x91, 0x83, 0x6d, 0x14, 0xa9, 0x4d, 0x01, + 0x55, 0xac, 0xe4, 0xd5, 0x76, 0xda, 0xdb, 0x1d, 0x2e, 0xf8, 0x93, 0x9d, 0xfd, 0x08, 0xc3, 0xbb, + 0x00, 0xbc, 0x73, 0x3f, 0x6d, 0x98, 0x96, 0x6a, 0x6e, 0x27, 0x35, 0x9a, 0x2b, 0xb0, 0x8f, 0xfd, + 0xde, 0xfc, 0xfe, 0xdd, 0xf5, 0x8c, 0x6c, 0xbf, 0x42, 0xf5, 0xc4, 0x3b, 0xf7, 0xd3, 0x9c, 0x20, + 0x09, 0x0d, 0x08, 0xd3, 0xad, 0x9e, 0x53, 0x69, 0x63, 0xdb, 0x25, 0x5b, 0xfd, 0xcf, 0x63, 0x87, + 0x0d, 0x79, 0x6b, 0xa7, 0x7e, 0xf3, 0x60, 0xde, 0xba, 0xed, 0x0e, 0x5a, 0x49, 0x5d, 0x92, 0xae, + 0x98, 0x5e, 0x5a, 0xaf, 0x16, 0x80, 0xb7, 0x5d, 0xb2, 0x55, 0x10, 0x9d, 0xbb, 0x05, 0x96, 0x0e, + 0x9e, 0x80, 0xb0, 0x0a, 0xa6, 0xde, 0x75, 0xbb, 0x65, 0xfb, 0x21, 0xfb, 0x19, 0x2e, 0x82, 0x63, + 0xf7, 0x54, 0x6b, 0xc7, 0xe5, 0x0d, 0x85, 0x13, 0xf5, 0xe2, 0xe1, 0xe5, 0xa3, 0x22, 0x78, 0xf9, + 0xf8, 0x2f, 0x1e, 0x66, 0x91, 0xf0, 0xe6, 0xf4, 0xec, 0x89, 0x2a, 0x58, 0xfe, 0x87, 0x73, 0x00, + 0x6c, 0x74, 0x76, 0x7a, 0xc6, 0xe5, 0x76, 0x70, 0x07, 0x54, 0x46, 0xcb, 0x99, 0xa3, 0x13, 0xb7, + 0x79, 0xde, 0x0e, 0x29, 0xab, 0x99, 0x22, 0xef, 0xce, 0x78, 0x47, 0xbc, 0x08, 0xe8, 0x0e, 0x6b, + 0x9a, 0x16, 0x38, 0x39, 0xac, 0x91, 0x12, 0x97, 0xd6, 0xa6, 0xf2, 0xa9, 0x5f, 0x9e, 0x88, 0x39, + 0x1e, 0xc8, 0x9f, 0xfb, 0xe8, 0xc1, 0x38, 0xef, 0xc4, 0xb2, 0xb7, 0xd2, 0x2f, 0xcb, 0x36, 0x5c, + 0x1a, 0xae, 0x8f, 0x14, 0x36, 0xd3, 0x87, 0xdd, 0x09, 0xa5, 0xd6, 0x83, 0xf2, 0xa6, 0x01, 0xb2, + 0x9f, 0xb9, 0xb2, 0xc7, 0x0e, 0xad, 0xec, 0xf2, 0x47, 0x0f, 0x2a, 0x7a, 0xb3, 0xdb, 0x28, 0x39, + 0x27, 0x57, 0xe8, 0x2a, 0x69, 0x67, 0x5a, 0xb6, 0xc0, 0x9c, 0xe9, 0xec, 0x64, 0x2b, 0x57, 0x68, + 0x7a, 0x3c, 0x9a, 0xba, 0x30, 0xbf, 0x9f, 0x2b, 0x59, 0x2f, 0x28, 0xd7, 0x3b, 0xd6, 0xad, 0xbd, + 0x90, 0x81, 0x9d, 0xfc, 0x30, 0x00, 0xcb, 0xb3, 0x3f, 0x09, 0x8e, 0x55, 0x83, 0xe5, 0xe0, 0xc8, + 0x40, 0xd0, 0x77, 0x47, 0xe7, 0xa4, 0x84, 0xcf, 0x3f, 0xe7, 0x7f, 0x3d, 0x5e, 0x55, 0x9a, 0x96, + 0x4a, 0x12, 0x97, 0xd4, 0x66, 0x72, 0xc1, 0xab, 0x93, 0x05, 0xbf, 0xd6, 0xee, 0xdc, 0x6f, 0x8f, + 0x97, 0x96, 0xeb, 0x19, 0xdf, 0xda, 0xe2, 0x70, 0x2f, 0x8c, 0xc8, 0xdc, 0x53, 0x6a, 0xae, 0x17, + 0x22, 0xc2, 0xbf, 0x3d, 0x0d, 0xce, 0xec, 0x15, 0x9f, 0x1b, 0x63, 0x52, 0x9b, 0xcd, 0x1b, 0x20, + 0xff, 0x19, 0x3e, 0x7a, 0x18, 0xfc, 0x6b, 0x08, 0x22, 0xa4, 0x54, 0xac, 0xbd, 0xd0, 0x32, 0x76, + 0x8c, 0x42, 0xa3, 0x98, 0xb3, 0x36, 0x66, 0x3e, 0xd6, 0x82, 0x08, 0xaa, 0xbd, 0x02, 0x11, 0x31, + 0x56, 0x31, 0x6c, 0x15, 0x55, 0xd6, 0x41, 0xe9, 0x91, 0x8f, 0x05, 0x52, 0x16, 0x3b, 0x81, 0xad, + 0xf1, 0x0a, 0x43, 0x10, 0xc5, 0xd6, 0x32, 0xe8, 0x10, 0xc2, 0xc6, 0x62, 0x12, 0x13, 0xaa, 0x08, + 0x82, 0x5a, 0x42, 0xcf, 0x3d, 0xa5, 0x2a, 0x36, 0x16, 0x44, 0x48, 0x3b, 0xe2, 0x8c, 0xd3, 0x8e, + 0x29, 0x25, 0x2d, 0xe1, 0x8c, 0x3a, 0xee, 0x62, 0x48, 0xac, 0x40, 0x9e, 0x4b, 0x2c, 0x40, 0x64, + 0x18, 0x26, 0xcc, 0x12, 0x25, 0xb4, 0x94, 0x84, 0xea, 0xd8, 0x6b, 0x6d, 0x31, 0xa4, 0x96, 0x41, + 0x6d, 0x20, 0x13, 0x16, 0x44, 0x8e, 0x63, 0xc5, 0x3c, 0xb5, 0x8c, 0x08, 0xa3, 0x3d, 0xe2, 0xd2, + 0x60, 0xe5, 0x63, 0xa4, 0x9d, 0xc1, 0x44, 0x4a, 0x4d, 0x41, 0x64, 0xb1, 0x24, 0xcc, 0x30, 0xe1, + 0x1d, 0x8f, 0x79, 0x4c, 0xa9, 0x77, 0xc6, 0x08, 0x8e, 0xa8, 0x73, 0x8c, 0x30, 0x6e, 0x62, 0x10, + 0x59, 0x67, 0xbc, 0xa6, 0x42, 0x31, 0x12, 0x0b, 0xe9, 0xb4, 0x83, 0x02, 0x69, 0x21, 0x94, 0xd2, + 0x9a, 0x09, 0xe7, 0x08, 0x05, 0x11, 0x43, 0x86, 0x53, 0x13, 0xc7, 0x8e, 0x43, 0x4f, 0xa4, 0x80, + 0xce, 0x29, 0x09, 0x05, 0x97, 0x9a, 0x0b, 0xc3, 0x84, 0xca, 0x34, 0xd5, 0x52, 0x28, 0x4c, 0x9d, + 0xa3, 0x5a, 0x22, 0x42, 0x29, 0x15, 0xde, 0x6b, 0x16, 0x23, 0xea, 0xad, 0x88, 0xa1, 0x32, 0x20, + 0x22, 0xd4, 0x23, 0xaa, 0xb8, 0x54, 0x36, 0x86, 0x50, 0x1a, 0xc5, 0x04, 0x27, 0x24, 0x96, 0x18, + 0x09, 0xe5, 0x51, 0xec, 0x09, 0x88, 0x6c, 0xcc, 0x9d, 0xe3, 0xd4, 0xeb, 0x18, 0xc7, 0x24, 0x26, + 0xc4, 0x68, 0x47, 0x19, 0x53, 0x46, 0x20, 0x83, 0x25, 0x76, 0x1c, 0x44, 0xc2, 0x73, 0x23, 0x91, + 0xb0, 0x46, 0x33, 0xc1, 0x9c, 0xd6, 0x4e, 0x41, 0xe6, 0xb0, 0x31, 0x92, 0x32, 0x02, 0x1d, 0xc9, + 0xe6, 0xd4, 0x42, 0xc9, 0x1c, 0x17, 0x54, 0x48, 0x4b, 0x0c, 0x23, 0x0c, 0xcb, 0xd8, 0x58, 0x61, + 0xbd, 0xd7, 0x90, 0x1b, 0x2d, 0x41, 0xe4, 0x31, 0xd6, 0xd6, 0xb2, 0xd8, 0x91, 0x6c, 0x01, 0x9d, + 0xe0, 0xc6, 0x2a, 0x0a, 0xad, 0xc2, 0x56, 0x50, 0x27, 0x88, 0x06, 0x91, 0xd7, 0x4c, 0x08, 0x82, + 0xbc, 0x90, 0x18, 0x49, 0xc8, 0xb3, 0x29, 0xa3, 0xd4, 0x61, 0xa6, 0x8d, 0x20, 0x50, 0x53, 0x06, + 0x22, 0x68, 0x0c, 0x72, 0x82, 0x32, 0x2e, 0x1c, 0x8d, 0x91, 0x52, 0xc8, 0x72, 0xac, 0x2c, 0x45, + 0x4c, 0x28, 0xeb, 0xb8, 0x66, 0x20, 0xc2, 0x50, 0x62, 0x87, 0xbc, 0xf7, 0x9a, 0x32, 0x1b, 0x3b, + 0xaa, 0x90, 0x54, 0x2c, 0xf6, 0x52, 0x1b, 0xe6, 0x30, 0x24, 0x0a, 0x44, 0x16, 0x09, 0x45, 0xad, + 0x12, 0x54, 0x79, 0x26, 0x1d, 0x42, 0x50, 0x08, 0x8e, 0x15, 0x91, 0x5a, 0xb9, 0xd8, 0x48, 0x4b, + 0x41, 0xa4, 0x38, 0xc2, 0x52, 0x7a, 0xa9, 0x19, 0x44, 0xca, 0x1a, 0xcf, 0x05, 0xd4, 0x12, 0xc7, + 0xcc, 0xc6, 0xd2, 0x52, 0x65, 0x38, 0x88, 0x34, 0x11, 0x5c, 0x52, 0xae, 0x98, 0xa2, 0xd4, 0x22, + 0x6b, 0x8d, 0x11, 0x94, 0x68, 0x13, 0x33, 0x42, 0xb8, 0xf5, 0xc6, 0x81, 0x48, 0x50, 0x29, 0xbc, + 0xa3, 0x98, 0x8b, 0x98, 0x53, 0xab, 0xbd, 0xc4, 0x5c, 0x11, 0x81, 0x05, 0x71, 0xd2, 0x12, 0x2b, + 0x7c, 0xa6, 0xa9, 0xb5, 0x48, 0x68, 0x6b, 0x09, 0x86, 0xd2, 0xa9, 0x18, 0x09, 0x29, 0x24, 0x24, + 0x50, 0x71, 0x2f, 0x09, 0xe1, 0x14, 0x44, 0x42, 0x4a, 0xa4, 0x88, 0x88, 0x1d, 0xcd, 0xf0, 0x51, + 0x4c, 0xa1, 0xc7, 0xcc, 0x72, 0xcf, 0x10, 0x91, 0x5e, 0x62, 0x0b, 0x22, 0x62, 0x85, 0x34, 0xd0, + 0x7a, 0x8d, 0xbc, 0xa2, 0x54, 0x22, 0xa4, 0x85, 0x57, 0x31, 0xc3, 0xc4, 0x79, 0x61, 0x9d, 0xd5, + 0x20, 0x72, 0x84, 0x40, 0x6d, 0x94, 0x94, 0x46, 0x28, 0x86, 0x19, 0x57, 0x0e, 0x61, 0xae, 0x18, + 0x33, 0xd4, 0xc4, 0x98, 0x19, 0x06, 0x22, 0x41, 0x1c, 0xa4, 0xda, 0x30, 0x61, 0x29, 0xc4, 0x5e, + 0x72, 0x42, 0xa4, 0x20, 0x46, 0x7b, 0x8c, 0x63, 0x4c, 0x35, 0xc4, 0x20, 0xd2, 0xc2, 0x0b, 0xc4, + 0x63, 0x62, 0xa0, 0x43, 0x16, 0x4b, 0x09, 0x05, 0xa1, 0xdc, 0x13, 0xad, 0xb4, 0x90, 0x58, 0x4b, + 0x0d, 0x22, 0xcb, 0x18, 0xf2, 0xca, 0x1b, 0xea, 0x29, 0xf4, 0xc8, 0x3a, 0x83, 0xb5, 0xa6, 0x4c, + 0x0a, 0xa8, 0xbd, 0x92, 0x54, 0x62, 0x10, 0x61, 0x09, 0x05, 0xf3, 0x90, 0x78, 0xe1, 0x84, 0x82, + 0xc4, 0x43, 0x4d, 0xa4, 0x34, 0xcc, 0xc4, 0xc6, 0x43, 0x0d, 0xb5, 0xc8, 0x6c, 0x5d, 0xc5, 0xca, + 0x22, 0xca, 0xa0, 0xf4, 0x96, 0x23, 0x6a, 0x62, 0xad, 0x89, 0x62, 0xd0, 0x50, 0x29, 0xb0, 0x16, + 0x06, 0x44, 0xda, 0x70, 0x43, 0x04, 0xf7, 0x34, 0xdb, 0x08, 0x32, 0xd6, 0xd2, 0x4a, 0xc7, 0xb0, + 0xa5, 0x31, 0xd6, 0x71, 0x8c, 0xad, 0x00, 0x91, 0x46, 0xc4, 0x42, 0x24, 0x28, 0x57, 0x36, 0x56, + 0x88, 0xaa, 0x18, 0x6a, 0x9f, 0x4d, 0x29, 0xe2, 0x71, 0xcc, 0x4c, 0x2c, 0x40, 0xc4, 0xa5, 0x70, + 0x84, 0x63, 0x24, 0x3d, 0x91, 0xb1, 0xa4, 0x18, 0x7a, 0x85, 0x99, 0x40, 0x1a, 0x23, 0xab, 0x4c, + 0xec, 0x0c, 0x88, 0x50, 0x8c, 0x30, 0x16, 0xb1, 0x80, 0x50, 0x19, 0x89, 0x34, 0xa1, 0x46, 0x59, + 0xcb, 0x84, 0xa0, 0xc6, 0x09, 0xc6, 0x78, 0xa6, 0x29, 0x83, 0xd6, 0x38, 0x24, 0xac, 0x43, 0x5a, + 0x23, 0x4a, 0x1c, 0x97, 0x96, 0x5b, 0x2b, 0x29, 0x22, 0x5a, 0x10, 0xc6, 0xb2, 0x1d, 0x85, 0x18, + 0x54, 0x9e, 0x32, 0x44, 0xb5, 0xe0, 0xc2, 0x3a, 0xaf, 0x05, 0xa3, 0x56, 0x43, 0xcf, 0xb1, 0xa2, + 0x14, 0x81, 0xc8, 0x7a, 0x66, 0x08, 0x74, 0x3c, 0x86, 0x56, 0xab, 0xcc, 0xd8, 0x70, 0x0c, 0x9d, + 0x25, 0x1c, 0x72, 0x68, 0x3c, 0x64, 0x14, 0x44, 0x84, 0x19, 0xa8, 0x08, 0x32, 0x54, 0x20, 0x89, + 0x63, 0x0f, 0x31, 0x56, 0x44, 0x33, 0x02, 0x71, 0xb6, 0x35, 0xa1, 0xc8, 0x3d, 0x9d, 0x31, 0x8e, + 0xe9, 0x98, 0x1b, 0xa1, 0x51, 0x4c, 0x63, 0x6c, 0x21, 0xa6, 0x31, 0x13, 0x32, 0x86, 0x8a, 0x42, + 0xae, 0x41, 0x24, 0x11, 0xa2, 0xb1, 0x54, 0x46, 0x28, 0x28, 0x10, 0x71, 0x16, 0x61, 0x8a, 0x34, + 0xe1, 0x82, 0x1b, 0x63, 0x95, 0x75, 0x12, 0x44, 0x90, 0x38, 0x24, 0xb8, 0x8a, 0xbd, 0x20, 0x58, + 0x30, 0x27, 0x09, 0xa1, 0xc8, 0x3a, 0x1a, 0x0b, 0x42, 0x28, 0x84, 0xdc, 0x65, 0xf3, 0xe1, 0x2d, + 0x95, 0x31, 0xc6, 0x5e, 0x58, 0x84, 0x3c, 0xb1, 0x31, 0xb7, 0xc6, 0x09, 0xea, 0x85, 0x83, 0x52, + 0xaa, 0x38, 0xdb, 0xb7, 0x10, 0x42, 0xc6, 0x14, 0x42, 0x92, 0x2b, 0xe7, 0x94, 0xb0, 0x48, 0x1b, + 0x0e, 0xa5, 0x10, 0x4c, 0x2b, 0xc9, 0x08, 0x88, 0xa0, 0x14, 0x9e, 0x31, 0x87, 0x63, 0x2b, 0x0c, + 0xd5, 0x50, 0x31, 0x09, 0x11, 0xc4, 0x46, 0xdb, 0x6c, 0x85, 0x7d, 0xb6, 0x2b, 0x1d, 0xd1, 0x58, + 0x69, 0xe4, 0xa5, 0x62, 0xdc, 0x63, 0xaf, 0xa9, 0x91, 0x98, 0x0a, 0x8f, 0x3d, 0x45, 0x9c, 0xa0, + 0xcc, 0xf3, 0x53, 0xee, 0x32, 0x45, 0x94, 0x36, 0x46, 0x09, 0xa7, 0xa4, 0x56, 0x4a, 0x12, 0x6c, + 0x15, 0x17, 0xde, 0x6a, 0x86, 0x25, 0x88, 0xa8, 0x8d, 0x15, 0x16, 0x96, 0x7b, 0x8c, 0x39, 0x71, + 0x96, 0x23, 0xeb, 0x84, 0x30, 0x8a, 0x73, 0xa7, 0x21, 0x42, 0x8e, 0x80, 0x48, 0x63, 0xcd, 0x91, + 0xd5, 0xb1, 0x96, 0x54, 0x42, 0xc5, 0xa1, 0xc5, 0x31, 0x34, 0x46, 0x63, 0xa8, 0x29, 0xc7, 0x02, + 0x73, 0x10, 0x49, 0xcc, 0x62, 0x19, 0x43, 0xe4, 0x11, 0x65, 0x1c, 0x32, 0x27, 0x9d, 0x35, 0x50, + 0x43, 0xa4, 0x24, 0x44, 0x86, 0x5b, 0x06, 0xa2, 0x98, 0x4b, 0x84, 0x65, 0xac, 0x33, 0x36, 0x45, + 0x11, 0x26, 0xc4, 0x5b, 0xa8, 0xa0, 0x56, 0x0a, 0x2a, 0xc2, 0xb3, 0xe8, 0x81, 0xb8, 0xf3, 0xc6, + 0x43, 0x07, 0x21, 0x83, 0xd4, 0x5a, 0xef, 0xac, 0x75, 0x88, 0x68, 0xef, 0x94, 0x94, 0xb1, 0x64, + 0x18, 0x44, 0x88, 0x51, 0xa2, 0x62, 0x43, 0x39, 0x27, 0x44, 0x19, 0x1f, 0x67, 0x4e, 0x0d, 0x22, + 0xad, 0x8c, 0xd1, 0x16, 0xe6, 0x36, 0x66, 0xb9, 0x87, 0x54, 0x33, 0x25, 0x11, 0x44, 0x88, 0x79, + 0xaa, 0x19, 0x74, 0xc6, 0x19, 0x28, 0x2d, 0x85, 0x0a, 0x59, 0x0f, 0x22, 0x49, 0x32, 0xd2, 0x58, + 0x60, 0xcb, 0xa9, 0xb4, 0x4e, 0x33, 0x94, 0x39, 0x54, 0xea, 0x8c, 0x8e, 0x11, 0xd5, 0x1a, 0x82, + 0x88, 0x39, 0x16, 0x13, 0x23, 0x8d, 0xf4, 0x42, 0xab, 0x18, 0x43, 0xe7, 0xa5, 0x46, 0xc2, 0x49, + 0x6f, 0x1c, 0x76, 0xd8, 0xc7, 0x20, 0x62, 0x12, 0x2a, 0x4c, 0xb0, 0xcd, 0x42, 0x1b, 0xa7, 0x50, + 0x7a, 0xa5, 0x63, 0xec, 0x62, 0x86, 0x95, 0x50, 0x98, 0x67, 0x11, 0x48, 0x50, 0xa9, 0x21, 0xd5, + 0x56, 0x5b, 0x64, 0xb1, 0x96, 0x82, 0x78, 0xee, 0x84, 0xa2, 0x2c, 0x76, 0x90, 0x13, 0x9c, 0x45, + 0x20, 0x69, 0x30, 0x13, 0xd2, 0x21, 0x03, 0x9d, 0xf4, 0x8c, 0x10, 0x05, 0x31, 0x36, 0x1c, 0x43, + 0xe6, 0x65, 0x8c, 0xa4, 0x43, 0x20, 0x92, 0xdc, 0x69, 0xc5, 0x71, 0x16, 0x3e, 0xb0, 0xa6, 0x31, + 0x87, 0x31, 0x92, 0x58, 0xab, 0x98, 0x66, 0x06, 0xcd, 0xb4, 0x02, 0x51, 0x6c, 0x28, 0x82, 0xc6, + 0x09, 0x82, 0x9d, 0xa0, 0x42, 0x11, 0x82, 0x11, 0x25, 0xd8, 0x48, 0x25, 0xb0, 0x93, 0x31, 0xce, + 0x62, 0x03, 0xf7, 0x56, 0x10, 0x85, 0x91, 0x97, 0x9e, 0x18, 0xe6, 0xa5, 0xf7, 0xb1, 0x66, 0x86, + 0x13, 0xad, 0x0d, 0x8a, 0xa5, 0x05, 0x11, 0xb6, 0x22, 0x96, 0xd4, 0xe8, 0x58, 0xb3, 0xcc, 0x1f, + 0xc4, 0xda, 0x39, 0xcc, 0x25, 0x73, 0xb1, 0x34, 0x88, 0xc5, 0x1c, 0x82, 0xc8, 0x5b, 0x01, 0xbd, + 0x92, 0x86, 0x23, 0x0c, 0x8d, 0xcd, 0x0c, 0x95, 0x61, 0xc8, 0x10, 0xf4, 0xc4, 0x70, 0x4a, 0xb3, + 0x58, 0xc9, 0x62, 0x4f, 0x38, 0xc5, 0x9a, 0x3a, 0x12, 0x3b, 0x2c, 0x3c, 0x33, 0xda, 0x11, 0x88, + 0xa1, 0x91, 0x84, 0x20, 0x4d, 0x0d, 0x88, 0x24, 0xe4, 0x10, 0x52, 0x5c, 0xf8, 0x3f, 0xe6, 0x62, + 0xc6, 0x34, 0xa4, 0xc4, 0x40, 0x16, 0x63, 0x46, 0x55, 0x66, 0x85, 0x86, 0x41, 0xcf, 0xb3, 0xcc, + 0x01, 0xc5, 0x84, 0xc7, 0x5c, 0xd3, 0x58, 0x2b, 0x0e, 0x05, 0xd3, 0x16, 0x1a, 0x6e, 0x9c, 0x03, + 0x91, 0xc1, 0x10, 0x69, 0x89, 0xbd, 0xd0, 0x54, 0x10, 0xaf, 0x88, 0x10, 0xda, 0xa1, 0x98, 0x5a, + 0xce, 0x45, 0x36, 0x83, 0x14, 0x44, 0x5a, 0x42, 0x6d, 0xb5, 0x93, 0x1c, 0x29, 0x4e, 0x85, 0x87, + 0x14, 0xc7, 0x56, 0x63, 0xa4, 0x94, 0xe2, 0xc6, 0x68, 0x26, 0x41, 0x24, 0x3d, 0xc7, 0x86, 0x7a, + 0xcc, 0xb5, 0x84, 0x96, 0xd8, 0x98, 0xc5, 0xda, 0x29, 0x0e, 0xa5, 0x13, 0xd8, 0x63, 0xa7, 0x7c, + 0x96, 0x95, 0x81, 0x0f, 0x83, 0x99, 0xe5, 0x63, 0xbd, 0xa9, 0xbf, 0x0a, 0xa2, 0x89, 0xe9, 0xda, + 0xe2, 0x78, 0xba, 0xf6, 0xbd, 0x3c, 0x25, 0x0b, 0x37, 0xc0, 0x39, 0xeb, 0xbc, 0xda, 0x69, 0xf5, + 0xbb, 0xa6, 0x8d, 0xb6, 0x7b, 0x3f, 0xed, 0x77, 0xdf, 0x2a, 0x79, 0x46, 0xbd, 0xb8, 0x27, 0x5d, + 0xbc, 0xba, 0xdd, 0x4d, 0x77, 0xaf, 0x1f, 0xa9, 0x9f, 0x2d, 0x39, 0x8b, 0xc2, 0xe4, 0x75, 0xf7, + 0x7e, 0x5a, 0xf6, 0xd9, 0x5e, 0x05, 0xa7, 0xf7, 0x80, 0x5a, 0xd7, 0xde, 0xad, 0xcd, 0x1d, 0x88, + 0x76, 0x6a, 0x0c, 0xed, 0x15, 0xd7, 0xde, 0x0d, 0xaf, 0x83, 0xc5, 0x3d, 0x38, 0xaa, 0xd5, 0xea, + 0xdc, 0x2f, 0x4f, 0x9a, 0xf6, 0x03, 0x0a, 0xc7, 0x80, 0xae, 0x64, 0x1c, 0x2f, 0x9f, 0xfe, 0x8f, + 0xef, 0x54, 0xf1, 0x0a, 0x59, 0xa1, 0x2b, 0x6c, 0x85, 0xaf, 0xc4, 0x2b, 0x62, 0x05, 0xc1, 0xb5, + 0x4b, 0xe0, 0x89, 0x3d, 0xf0, 0x66, 0xab, 0xd3, 0x34, 0x2e, 0x5c, 0xfc, 0xe4, 0x61, 0x50, 0xf9, + 0xf4, 0x61, 0x00, 0x1e, 0x3d, 0x0c, 0x66, 0x11, 0x5a, 0x41, 0x78, 0x05, 0x91, 0x9b, 0xd3, 0xb3, + 0xa0, 0x5a, 0x59, 0xfe, 0x1c, 0x80, 0xe9, 0xfc, 0x08, 0xf8, 0x65, 0x30, 0xbb, 0xed, 0x52, 0x65, + 0x55, 0xaa, 0xf2, 0x3a, 0xac, 0x82, 0x97, 0xf6, 0x28, 0x74, 0xdb, 0x25, 0x89, 0xda, 0x74, 0xb7, + 0x5d, 0xaa, 0xf2, 0xa2, 0x79, 0x40, 0x1f, 0xbe, 0x01, 0xa6, 0x93, 0xae, 0x33, 0x65, 0xb9, 0x85, + 0x0e, 0x2c, 0x8b, 0xf3, 0x73, 0xf0, 0xbd, 0xcd, 0xdd, 0xd9, 0xac, 0x80, 0xf9, 0xf4, 0xe3, 0x20, + 0xa8, 0xe7, 0x40, 0x2f, 0xff, 0xcb, 0x89, 0x9f, 0x3f, 0x0c, 0x16, 0xc0, 0x49, 0x30, 0x7b, 0xbb, + 0x2f, 0x23, 0x40, 0xbf, 0x78, 0x18, 0xfc, 0xdd, 0x09, 0x70, 0x16, 0x4c, 0xbf, 0xae, 0xb6, 0xdd, + 0xb9, 0x05, 0x70, 0xb2, 0x2f, 0x7f, 0xb5, 0xad, 0xb6, 0x1d, 0x58, 0x02, 0x95, 0xec, 0x43, 0xa2, + 0xb2, 0xe8, 0x5c, 0x00, 0x95, 0x0c, 0x6a, 0xb5, 0x98, 0x8a, 0x28, 0x00, 0x2f, 0x82, 0x99, 0xe2, + 0x44, 0x35, 0x59, 0x5b, 0x02, 0xb5, 0xfc, 0xdd, 0xc8, 0x29, 0xed, 0x6a, 0xf1, 0x27, 0xa9, 0x4e, + 0xc1, 0x00, 0x2c, 0x83, 0xe9, 0x3b, 0x2a, 0xdd, 0x5a, 0x3b, 0x07, 0xce, 0xe4, 0x74, 0x5d, 0x95, + 0x6e, 0xad, 0xba, 0xf7, 0x95, 0xe9, 0xa7, 0xfe, 0xd5, 0x29, 0x70, 0x11, 0x54, 0x32, 0x9a, 0xa8, + 0xa8, 0xdd, 0xd6, 0x9e, 0x02, 0x67, 0x87, 0xa4, 0x65, 0xc5, 0x37, 0xa0, 0xbd, 0x00, 0x40, 0x4e, + 0x5b, 0x77, 0x9b, 0xee, 0xfd, 0x71, 0xd4, 0x5e, 0x36, 0x34, 0xa4, 0xfc, 0xcb, 0x29, 0x70, 0x7c, + 0x3d, 0x6f, 0xb7, 0x54, 0x83, 0x8b, 0xff, 0x6f, 0x0a, 0xfc, 0xdf, 0x29, 0x70, 0x06, 0x2c, 0x14, + 0x1f, 0xd2, 0xde, 0x6d, 0x14, 0x9d, 0x18, 0x3c, 0x75, 0xa5, 0xbd, 0x0b, 0x42, 0x50, 0xcd, 0xc7, + 0x47, 0x7a, 0x3b, 0xc0, 0x82, 0xe7, 0xf7, 0x8e, 0xf5, 0xfb, 0x21, 0x63, 0xfa, 0x2f, 0x57, 0xab, + 0x53, 0x17, 0xe7, 0xae, 0x66, 0x23, 0x51, 0xb1, 0x73, 0xea, 0x2f, 0x1e, 0xc0, 0x3a, 0xa6, 0xe4, + 0x91, 0x03, 0xa5, 0x8c, 0x92, 0x16, 0x52, 0xf2, 0x8f, 0x3e, 0x8c, 0x94, 0xb1, 0x09, 0x3e, 0x02, + 0x5e, 0x28, 0x17, 0x69, 0x02, 0x29, 0x06, 0xeb, 0x9d, 0xb6, 0x6f, 0x6e, 0xee, 0xf4, 0x9c, 0x05, + 0x67, 0xc0, 0xe2, 0x28, 0x5d, 0xff, 0xc4, 0x09, 0xdc, 0x02, 0x28, 0x1f, 0x6f, 0x76, 0x1b, 0x65, + 0x8b, 0xc3, 0xa8, 0xd4, 0x6d, 0x76, 0xca, 0xa2, 0xf5, 0xf1, 0xf1, 0xa6, 0x4b, 0x96, 0xcf, 0x56, + 0xa7, 0x2e, 0x9e, 0xba, 0x9b, 0x0f, 0x47, 0xeb, 0x83, 0x61, 0x18, 0x80, 0xff, 0x0d, 0x8e, 0xde, + 0xb8, 0x53, 0x0d, 0x2e, 0xde, 0x07, 0x3b, 0x20, 0xec, 0x9b, 0x56, 0x7b, 0xb7, 0xd1, 0xec, 0x16, + 0xab, 0x71, 0x19, 0x3c, 0xd3, 0x97, 0x36, 0xd2, 0x80, 0x18, 0x3e, 0xba, 0x64, 0x79, 0xae, 0x3a, + 0x75, 0x71, 0xf6, 0x4e, 0xf9, 0x04, 0x56, 0xc1, 0x53, 0x7d, 0x86, 0xfe, 0x04, 0x0c, 0x1b, 0x05, + 0xc9, 0xf2, 0x42, 0x75, 0xea, 0x62, 0xa5, 0x20, 0x8e, 0x36, 0x5c, 0x9a, 0x80, 0xfb, 0x60, 0xea, + 0xca, 0xc6, 0xeb, 0xd5, 0xe0, 0x62, 0x1b, 0xb4, 0xc0, 0x69, 0x30, 0x37, 0xd0, 0x40, 0x25, 0xed, + 0x42, 0x85, 0x8b, 0xe5, 0x84, 0xf5, 0x1b, 0x08, 0xab, 0x2a, 0x69, 0xb4, 0x77, 0xb6, 0xb5, 0xeb, + 0x25, 0xcb, 0xf3, 0xd5, 0xa9, 0x8b, 0xe0, 0xca, 0x46, 0xf4, 0x7a, 0xf1, 0x0c, 0x5e, 0x04, 0x4f, + 0x0e, 0x68, 0xfb, 0xe2, 0xcb, 0xca, 0xbf, 0x54, 0xf4, 0xca, 0xc6, 0xeb, 0x85, 0x60, 0x08, 0x8e, + 0xbf, 0x92, 0x5f, 0xb4, 0xa8, 0x06, 0x6b, 0xcf, 0x81, 0x28, 0x67, 0x1b, 0xbf, 0xb2, 0xb1, 0x77, + 0x6b, 0x70, 0x30, 0x57, 0x70, 0x14, 0x06, 0xbf, 0x3f, 0xdf, 0x1e, 0xe3, 0xff, 0x16, 0x98, 0x29, + 0x6e, 0x58, 0x24, 0xd5, 0x60, 0xed, 0x4c, 0xf9, 0x89, 0xe5, 0xa5, 0x8a, 0xea, 0xd4, 0x72, 0x7e, + 0x2d, 0x05, 0xbc, 0x08, 0xc0, 0xcd, 0xef, 0xdf, 0x8d, 0x8a, 0xfe, 0x55, 0x35, 0x58, 0x7b, 0xb2, + 0xdc, 0x1e, 0xc3, 0xe6, 0xd8, 0x80, 0x74, 0x05, 0xcc, 0xe5, 0x1d, 0xf2, 0xa8, 0xe8, 0x83, 0x57, + 0x83, 0xb5, 0x73, 0xe0, 0x54, 0x4e, 0x3c, 0xda, 0x62, 0xaf, 0x4e, 0x2d, 0x4f, 0xbd, 0xeb, 0x76, + 0xc1, 0x4b, 0x60, 0xa6, 0xe8, 0x57, 0x67, 0x84, 0x4b, 0x7d, 0xa3, 0x1a, 0x6f, 0x77, 0x0f, 0xa0, + 0x5f, 0x02, 0xe0, 0xea, 0xe0, 0x72, 0x44, 0x35, 0x38, 0xf7, 0x54, 0x39, 0x9f, 0x93, 0x6e, 0x5a, + 0x2c, 0xbf, 0x03, 0x66, 0x33, 0xcf, 0x94, 0x37, 0x33, 0x7e, 0x0c, 0x8e, 0x65, 0x0e, 0x30, 0xa9, + 0x05, 0x13, 0x3b, 0x33, 0x7b, 0x5a, 0x88, 0x19, 0xdb, 0xda, 0x73, 0x99, 0x73, 0xcc, 0x22, 0xdf, + 0xf1, 0x0f, 0x83, 0xa9, 0xea, 0x07, 0x47, 0xfb, 0x41, 0x10, 0x06, 0x8f, 0x7e, 0xf9, 0x8f, 0x53, + 0xc7, 0x3f, 0xfc, 0x38, 0x3f, 0x18, 0x2a, 0x60, 0x97, 0x7b, 0x60, 0xfe, 0x96, 0xdb, 0x54, 0x66, + 0x77, 0x20, 0xf1, 0xed, 0x71, 0x89, 0x07, 0x9f, 0x3d, 0xad, 0x7c, 0xf4, 0xe0, 0xf4, 0x04, 0x7f, + 0x3d, 0x22, 0x7d, 0x82, 0xcc, 0xdf, 0x9e, 0x04, 0xf3, 0xe3, 0x0e, 0x3d, 0x7c, 0x0b, 0x4c, 0xab, + 0xd6, 0x66, 0x27, 0x8f, 0x24, 0xf3, 0x78, 0x65, 0xff, 0xeb, 0x40, 0xeb, 0x9d, 0x6d, 0xdd, 0x6c, + 0x37, 0xdb, 0x9b, 0x57, 0x5a, 0xd9, 0x5e, 0x4b, 0xb7, 0xb6, 0xd7, 0xce, 0x7c, 0xf6, 0x20, 0xf8, + 0xb7, 0x87, 0x41, 0xe5, 0xd5, 0x1b, 0xf5, 0x8d, 0xbb, 0x8d, 0xdb, 0x57, 0xee, 0xae, 0x5f, 0xcf, + 0x9b, 0xa3, 0x39, 0x62, 0xc8, 0x00, 0xc8, 0xac, 0xbe, 0xe8, 0xcb, 0xfe, 0x9e, 0x88, 0x7e, 0x42, + 0xb5, 0x77, 0x8b, 0x9e, 0x63, 0x78, 0x09, 0x54, 0xca, 0x56, 0x6e, 0xde, 0x31, 0x3f, 0xba, 0xb7, + 0x63, 0x7e, 0xfd, 0x48, 0x1d, 0x14, 0x04, 0x79, 0xcf, 0xfc, 0xee, 0xe3, 0x27, 0xd8, 0x53, 0x87, + 0x3b, 0xc1, 0x5e, 0x9b, 0xf9, 0xd9, 0xc7, 0xc1, 0x14, 0x08, 0x82, 0xeb, 0x47, 0x1e, 0x3b, 0xcc, + 0x7e, 0x0b, 0x9c, 0x1e, 0x51, 0x62, 0xd0, 0xa9, 0x3e, 0xf6, 0x65, 0xce, 0xc8, 0xb2, 0xd4, 0x62, + 0xa8, 0x68, 0xbf, 0x63, 0xfd, 0xe6, 0x9e, 0x3b, 0x33, 0xc7, 0xbf, 0xc4, 0x9d, 0x99, 0x61, 0xfb, + 0x79, 0xec, 0xf2, 0xcc, 0x1a, 0x98, 0xce, 0x2f, 0x14, 0xcc, 0x7c, 0x89, 0x0b, 0x05, 0x43, 0xa8, + 0x9c, 0x37, 0x7c, 0x0d, 0x9c, 0xc8, 0x52, 0xa5, 0x46, 0xb3, 0xed, 0x3b, 0xe5, 0x85, 0xa3, 0x7d, + 0x80, 0xb2, 0x04, 0xe9, 0x46, 0xdb, 0x77, 0x7a, 0xdb, 0x6a, 0xfc, 0x0c, 0x64, 0xd6, 0x96, 0x6f, + 0xc2, 0x0f, 0x82, 0x61, 0x72, 0xe7, 0x3b, 0xbd, 0xfb, 0xaa, 0x67, 0x9b, 0xed, 0xcd, 0x41, 0x2f, + 0xf0, 0xc4, 0x21, 0xcc, 0xfb, 0xb9, 0x8f, 0x1e, 0x54, 0xf7, 0xb2, 0x96, 0x82, 0x06, 0x49, 0xe6, + 0x54, 0xbd, 0x56, 0x4a, 0x79, 0x75, 0x40, 0xd9, 0x6f, 0x06, 0xfe, 0xb0, 0xbf, 0x97, 0xa6, 0x0f, + 0x21, 0xec, 0xc2, 0xe4, 0xbd, 0x34, 0x22, 0xaf, 0xdc, 0x52, 0xe5, 0x3e, 0x0a, 0xdf, 0x06, 0x20, + 0x4f, 0x08, 0x8b, 0xa6, 0x6a, 0x71, 0x91, 0xe3, 0xc2, 0xef, 0x39, 0x63, 0x18, 0xb4, 0xbe, 0xd7, + 0x9e, 0xc8, 0x76, 0x66, 0xf5, 0x67, 0x1f, 0x07, 0x73, 0xc9, 0x96, 0xea, 0x39, 0xbb, 0x12, 0xed, + 0x24, 0xae, 0x77, 0x3d, 0xa8, 0x9f, 0xc8, 0x41, 0x4b, 0xef, 0x53, 0xac, 0x47, 0x2e, 0xe0, 0xcc, + 0xd7, 0x25, 0x20, 0x5f, 0xa2, 0x1c, 0xff, 0x2a, 0x38, 0x91, 0x7d, 0x4a, 0x81, 0x7f, 0x76, 0xa2, + 0x59, 0x4f, 0xf0, 0x70, 0x19, 0x6b, 0x06, 0xd3, 0xeb, 0xbb, 0xac, 0x0e, 0xa8, 0xb6, 0x72, 0x27, + 0xd6, 0x18, 0xa2, 0x15, 0xf7, 0x3e, 0x56, 0x0e, 0x46, 0x1b, 0x77, 0x7d, 0xfb, 0x6b, 0x3c, 0xdf, + 0x1a, 0xf7, 0x91, 0xaf, 0x80, 0xb0, 0x98, 0x79, 0xd5, 0x6a, 0x35, 0xca, 0x23, 0xc4, 0xa4, 0xbc, + 0xdb, 0x31, 0xd9, 0xb9, 0x04, 0xf5, 0x6a, 0xce, 0x71, 0xa5, 0xd5, 0x2a, 0xcf, 0x23, 0x93, 0x70, + 0x0d, 0x9c, 0xca, 0x67, 0x77, 0x0c, 0xe4, 0xa9, 0x03, 0x41, 0x16, 0x32, 0x86, 0x51, 0x8c, 0x3a, + 0x58, 0x6c, 0xb6, 0x53, 0xd7, 0x6b, 0xab, 0x56, 0x6b, 0xb7, 0xb1, 0xe9, 0xda, 0xae, 0xa7, 0x52, + 0x67, 0xcb, 0x3b, 0x2b, 0x13, 0x61, 0x06, 0x7b, 0xe5, 0x7a, 0x50, 0x3f, 0x3d, 0x64, 0xbe, 0xd6, + 0xe7, 0x0d, 0x7f, 0x0c, 0x4e, 0xe6, 0x77, 0x44, 0xfb, 0xef, 0x6a, 0xbf, 0x9a, 0x99, 0x78, 0xb4, + 0x30, 0xe9, 0x58, 0x60, 0xf1, 0xa3, 0x07, 0xe3, 0xcc, 0xf9, 0xa6, 0x9c, 0xcb, 0x86, 0x6e, 0x94, + 0x23, 0xe1, 0xdb, 0x60, 0x2e, 0xc9, 0xcf, 0xba, 0x1a, 0xc5, 0xe6, 0xf8, 0xf5, 0x4c, 0xbe, 0x3b, + 0x2e, 0x1c, 0xf6, 0x78, 0x6c, 0x2d, 0x7c, 0x6c, 0x4f, 0xcc, 0xd6, 0x2b, 0xc9, 0xe0, 0x7d, 0xf2, + 0x72, 0xf4, 0xf3, 0x87, 0xc1, 0x79, 0x70, 0x12, 0xcc, 0x14, 0xde, 0x3c, 0x09, 0x8f, 0x22, 0x08, + 0x2a, 0xe0, 0x58, 0xfe, 0x36, 0x3c, 0x8a, 0xe1, 0xda, 0xf3, 0xe0, 0x64, 0xe9, 0x5a, 0xf7, 0x29, + 0x7a, 0xf0, 0x0a, 0x5b, 0x21, 0x6b, 0x2b, 0xa0, 0x92, 0x9b, 0x54, 0x49, 0xf4, 0xf4, 0x27, 0x0f, + 0x83, 0xb3, 0x9f, 0x3e, 0x0c, 0x16, 0x1f, 0x3d, 0x0c, 0x4e, 0x61, 0xb2, 0x82, 0xd1, 0x0a, 0xc6, + 0x2b, 0x98, 0xaf, 0xe0, 0x78, 0x05, 0xd3, 0xa2, 0x44, 0xba, 0x39, 0x3d, 0xbb, 0x58, 0x7d, 0xe2, + 0xe6, 0xf4, 0xec, 0xf9, 0xea, 0xd3, 0x37, 0x8f, 0xcf, 0xfe, 0x66, 0xa6, 0xfa, 0xef, 0x33, 0xcb, + 0xff, 0x7f, 0x16, 0xcc, 0xaf, 0x67, 0x59, 0xa2, 0x1b, 0x84, 0xbc, 0xef, 0xfe, 0xe1, 0x21, 0xef, + 0xab, 0x85, 0xb6, 0x67, 0x27, 0x84, 0xb6, 0x3d, 0xe1, 0xec, 0xb5, 0x3f, 0x38, 0x9c, 0xfd, 0x49, + 0xa3, 0xd8, 0xf5, 0xaf, 0x10, 0xc5, 0xc6, 0x83, 0xd7, 0x8d, 0xaf, 0xe2, 0x4a, 0xc7, 0x7d, 0xe6, + 0xb5, 0xaf, 0xe0, 0x33, 0xff, 0x18, 0xce, 0x51, 0x7d, 0x4d, 0xce, 0x71, 0xc4, 0x6b, 0xfc, 0xf9, + 0xba, 0xc3, 0x1b, 0x5f, 0xde, 0x1d, 0xee, 0xe3, 0x05, 0x5f, 0x3e, 0xf5, 0x8b, 0xef, 0xec, 0xc9, + 0x52, 0xd7, 0x96, 0xf7, 0x3a, 0x8d, 0x53, 0x3f, 0xf9, 0x5d, 0x30, 0x3e, 0xb4, 0xb6, 0x34, 0xee, + 0x31, 0x16, 0x7e, 0xf2, 0xbb, 0x60, 0x74, 0xa0, 0xf0, 0x0b, 0xcb, 0xff, 0x67, 0x16, 0x2c, 0xd4, + 0x5d, 0xb7, 0xa5, 0xcc, 0x37, 0x0e, 0xe1, 0x1b, 0x87, 0xf0, 0xa7, 0x75, 0x08, 0x6f, 0x7d, 0x3d, + 0x0e, 0xe1, 0x1b, 0x3f, 0xf0, 0x35, 0xf8, 0x81, 0xbf, 0x3e, 0x01, 0x2a, 0xd7, 0x5c, 0xfa, 0x8d, + 0x0f, 0xf8, 0x73, 0xf4, 0x01, 0x37, 0xbf, 0x4c, 0xf5, 0x76, 0x66, 0x72, 0xf5, 0xd6, 0xaf, 0xd5, + 0xbe, 0xf1, 0x27, 0xdf, 0xf8, 0x93, 0xa2, 0xba, 0xba, 0xf5, 0x15, 0xab, 0x9f, 0xf1, 0x4a, 0xe7, + 0x8f, 0xe9, 0x9d, 0xd6, 0x7e, 0x1a, 0x7c, 0xfa, 0xf9, 0xd2, 0x91, 0xcf, 0x3e, 0x5f, 0x3a, 0xf2, + 0xdb, 0xcf, 0x97, 0x82, 0x0f, 0x1e, 0x2d, 0x05, 0x7f, 0xf3, 0x68, 0x29, 0xf8, 0xe7, 0x47, 0x4b, + 0xc1, 0xa7, 0x8f, 0x96, 0x82, 0xcf, 0x1e, 0x2d, 0x05, 0xbf, 0x7c, 0xb4, 0x14, 0xfc, 0xea, 0xd1, + 0xd2, 0x91, 0xdf, 0x3e, 0x5a, 0x0a, 0x7e, 0xfa, 0xc5, 0xd2, 0x91, 0x4f, 0xbe, 0x58, 0x0a, 0x3e, + 0xfd, 0x62, 0xe9, 0xc8, 0x67, 0x5f, 0x2c, 0x1d, 0xf9, 0x41, 0x7d, 0xb3, 0xd3, 0x7d, 0x77, 0x73, + 0xf5, 0x5e, 0xa7, 0x95, 0xba, 0x5e, 0x4f, 0xad, 0xee, 0x24, 0x97, 0xf3, 0x1f, 0xbe, 0xd3, 0xdb, + 0xbe, 0xd4, 0xed, 0x75, 0xee, 0x35, 0xad, 0xeb, 0x5d, 0xea, 0xbf, 0xbe, 0xdc, 0xd5, 0x9b, 0x9d, + 0xcb, 0xee, 0xfd, 0xb4, 0xff, 0xef, 0x90, 0x93, 0xfe, 0x2b, 0x52, 0x1f, 0xcf, 0xff, 0xef, 0x8c, + 0xfc, 0x57, 0x00, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x86, 0xc3, 0x76, 0x3b, 0x3a, 0x00, 0x00, } func (this *SimpleRule) Equal(that interface{}) bool { @@ -2799,7 +2756,7 @@ func (this *SimpleRule) Equal(that interface{}) bool { return false } } - if !this.ThreatIntelligenceAction.Equal(that1.ThreatIntelligenceAction) { + if !this.ThreatMeshAction.Equal(that1.ThreatMeshAction) { return false } return true @@ -3102,9 +3059,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.RuleChoice.Equal(that1.RuleChoice) { return false } - if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { - return false - } if !this.ViewInternal.Equal(that1.ViewInternal) { return false } @@ -3425,9 +3379,6 @@ func (this *CreateSpecType) Equal(that interface{}) bool { } else if !this.RuleChoice.Equal(that1.RuleChoice) { return false } - if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { - return false - } return true } func (this *CreateSpecType_AnyServer) Equal(that interface{}) bool { @@ -3737,9 +3688,6 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if !this.RuleChoice.Equal(that1.RuleChoice) { return false } - if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { - return false - } return true } func (this *ReplaceSpecType_AnyServer) Equal(that interface{}) bool { @@ -4057,9 +4005,6 @@ func (this *GetSpecType) Equal(that interface{}) bool { } else if !this.RuleChoice.Equal(that1.RuleChoice) { return false } - if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { - return false - } if len(this.SimpleRules) != len(that1.SimpleRules) { return false } @@ -4489,8 +4434,8 @@ func (this *SimpleRule) GoString() string { if this.JwtClaims != nil { s = append(s, "JwtClaims: "+fmt.Sprintf("%#v", this.JwtClaims)+",\n") } - if this.ThreatIntelligenceAction != nil { - s = append(s, "ThreatIntelligenceAction: "+fmt.Sprintf("%#v", this.ThreatIntelligenceAction)+",\n") + if this.ThreatMeshAction != nil { + s = append(s, "ThreatMeshAction: "+fmt.Sprintf("%#v", this.ThreatMeshAction)+",\n") } s = append(s, "}") return strings.Join(s, "") @@ -4589,7 +4534,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 24) + s := make([]string, 0, 23) s = append(s, "&service_policy.GlobalSpecType{") s = append(s, "Algo: "+fmt.Sprintf("%#v", this.Algo)+",\n") if this.ServerChoice != nil { @@ -4613,9 +4558,6 @@ func (this *GlobalSpecType) GoString() string { if this.RuleChoice != nil { s = append(s, "RuleChoice: "+fmt.Sprintf("%#v", this.RuleChoice)+",\n") } - if this.SegmentPolicy != nil { - s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") - } if this.ViewInternal != nil { s = append(s, "ViewInternal: "+fmt.Sprintf("%#v", this.ViewInternal)+",\n") } @@ -4717,7 +4659,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 18) + s := make([]string, 0, 17) s = append(s, "&service_policy.CreateSpecType{") s = append(s, "Algo: "+fmt.Sprintf("%#v", this.Algo)+",\n") if this.ServerChoice != nil { @@ -4729,9 +4671,6 @@ func (this *CreateSpecType) GoString() string { if this.RuleChoice != nil { s = append(s, "RuleChoice: "+fmt.Sprintf("%#v", this.RuleChoice)+",\n") } - if this.SegmentPolicy != nil { - s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") - } s = append(s, "}") return strings.Join(s, "") } @@ -4827,7 +4766,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 18) + s := make([]string, 0, 17) s = append(s, "&service_policy.ReplaceSpecType{") s = append(s, "Algo: "+fmt.Sprintf("%#v", this.Algo)+",\n") if this.ServerChoice != nil { @@ -4839,9 +4778,6 @@ func (this *ReplaceSpecType) GoString() string { if this.RuleChoice != nil { s = append(s, "RuleChoice: "+fmt.Sprintf("%#v", this.RuleChoice)+",\n") } - if this.SegmentPolicy != nil { - s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") - } s = append(s, "}") return strings.Join(s, "") } @@ -4937,7 +4873,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 20) + s := make([]string, 0, 19) s = append(s, "&service_policy.GetSpecType{") s = append(s, "Algo: "+fmt.Sprintf("%#v", this.Algo)+",\n") if this.ServerChoice != nil { @@ -4952,9 +4888,6 @@ func (this *GetSpecType) GoString() string { if this.RuleChoice != nil { s = append(s, "RuleChoice: "+fmt.Sprintf("%#v", this.RuleChoice)+",\n") } - if this.SegmentPolicy != nil { - s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") - } if this.SimpleRules != nil { s = append(s, "SimpleRules: "+fmt.Sprintf("%#v", this.SimpleRules)+",\n") } @@ -5077,9 +5010,9 @@ func (m *SimpleRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.ThreatIntelligenceAction != nil { + if m.ThreatMeshAction != nil { { - size, err := m.ThreatIntelligenceAction.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ThreatMeshAction.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -6136,20 +6069,6 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xc2 } - if m.SegmentPolicy != nil { - { - size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe2 - } if m.RuleChoice != nil { { size := m.RuleChoice.Size() @@ -6498,20 +6417,6 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.SegmentPolicy != nil { - { - size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe2 - } if m.RuleChoice != nil { { size := m.RuleChoice.Size() @@ -6808,20 +6713,6 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.SegmentPolicy != nil { - { - size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe2 - } if m.RuleChoice != nil { { size := m.RuleChoice.Size() @@ -7134,20 +7025,6 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xca } } - if m.SegmentPolicy != nil { - { - size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe2 - } if m.RuleChoice != nil { { size := m.RuleChoice.Size() @@ -7681,8 +7558,8 @@ func (m *SimpleRule) Size() (n int) { n += 2 + l + sovTypes(uint64(l)) } } - if m.ThreatIntelligenceAction != nil { - l = m.ThreatIntelligenceAction.Size() + if m.ThreatMeshAction != nil { + l = m.ThreatMeshAction.Size() n += 2 + l + sovTypes(uint64(l)) } return n @@ -7862,10 +7739,6 @@ func (m *GlobalSpecType) Size() (n int) { if m.RuleChoice != nil { n += m.RuleChoice.Size() } - if m.SegmentPolicy != nil { - l = m.SegmentPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } if m.ViewInternal != nil { l = m.ViewInternal.Size() n += 2 + l + sovTypes(uint64(l)) @@ -8028,10 +7901,6 @@ func (m *CreateSpecType) Size() (n int) { if m.RuleChoice != nil { n += m.RuleChoice.Size() } - if m.SegmentPolicy != nil { - l = m.SegmentPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } return n } @@ -8184,10 +8053,6 @@ func (m *ReplaceSpecType) Size() (n int) { if m.RuleChoice != nil { n += m.RuleChoice.Size() } - if m.SegmentPolicy != nil { - l = m.SegmentPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } return n } @@ -8346,10 +8211,6 @@ func (m *GetSpecType) Size() (n int) { if m.RuleChoice != nil { n += m.RuleChoice.Size() } - if m.SegmentPolicy != nil { - l = m.SegmentPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } if len(m.SimpleRules) > 0 { for _, e := range m.SimpleRules { l = e.Size() @@ -8607,7 +8468,7 @@ func (this *SimpleRule) String() string { `DstAsnMatcher:` + strings.Replace(fmt.Sprintf("%v", this.DstAsnMatcher), "AsnMatcherType", "policy.AsnMatcherType", 1) + `,`, `OriginServerSubsetsAction:` + mapStringForOriginServerSubsetsAction + `,`, `JwtClaims:` + repeatedStringForJwtClaims + `,`, - `ThreatIntelligenceAction:` + strings.Replace(fmt.Sprintf("%v", this.ThreatIntelligenceAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, + `ThreatMeshAction:` + strings.Replace(fmt.Sprintf("%v", this.ThreatMeshAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `}`, }, "") return s @@ -8738,7 +8599,6 @@ func (this *GlobalSpecType) String() string { `DenyInfo:` + strings.Replace(fmt.Sprintf("%v", this.DenyInfo), "DenyInformation", "policy.DenyInformation", 1) + `,`, `DefaultForwardingClasses:` + repeatedStringForDefaultForwardingClasses + `,`, `RuleChoice:` + fmt.Sprintf("%v", this.RuleChoice) + `,`, - `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `SimpleRules:` + repeatedStringForSimpleRules + `,`, `}`, @@ -8864,7 +8724,6 @@ func (this *CreateSpecType) String() string { `ServerChoice:` + fmt.Sprintf("%v", this.ServerChoice) + `,`, `PortMatcher:` + strings.Replace(fmt.Sprintf("%v", this.PortMatcher), "PortMatcherType", "policy.PortMatcherType", 1) + `,`, `RuleChoice:` + fmt.Sprintf("%v", this.RuleChoice) + `,`, - `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `}`, }, "") return s @@ -8988,7 +8847,6 @@ func (this *ReplaceSpecType) String() string { `ServerChoice:` + fmt.Sprintf("%v", this.ServerChoice) + `,`, `PortMatcher:` + strings.Replace(fmt.Sprintf("%v", this.PortMatcher), "PortMatcherType", "policy.PortMatcherType", 1) + `,`, `RuleChoice:` + fmt.Sprintf("%v", this.RuleChoice) + `,`, - `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `}`, }, "") return s @@ -9123,7 +8981,6 @@ func (this *GetSpecType) String() string { `Rules:` + repeatedStringForRules + `,`, `PortMatcher:` + strings.Replace(fmt.Sprintf("%v", this.PortMatcher), "PortMatcherType", "policy.PortMatcherType", 1) + `,`, `RuleChoice:` + fmt.Sprintf("%v", this.RuleChoice) + `,`, - `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `SimpleRules:` + repeatedStringForSimpleRules + `,`, `}`, }, "") @@ -11133,7 +10990,7 @@ func (m *SimpleRule) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 53: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ThreatIntelligenceAction", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ThreatMeshAction", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -11160,10 +11017,10 @@ func (m *SimpleRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ThreatIntelligenceAction == nil { - m.ThreatIntelligenceAction = &policy.ModifyAction{} + if m.ThreatMeshAction == nil { + m.ThreatMeshAction = &policy.ModifyAction{} } - if err := m.ThreatIntelligenceAction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ThreatMeshAction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -12564,42 +12421,6 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.RuleChoice = &GlobalSpecType_DenyAllRequests{v} iNdEx = postIndex - case 28: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SegmentPolicy == nil { - m.SegmentPolicy = &policy.SegmentPolicyType{} - } - if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 1000: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ViewInternal", wireType) @@ -13160,42 +12981,6 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } m.RuleChoice = &CreateSpecType_DenyAllRequests{v} iNdEx = postIndex - case 28: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SegmentPolicy == nil { - m.SegmentPolicy = &policy.SegmentPolicyType{} - } - if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -13686,42 +13471,6 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.RuleChoice = &ReplaceSpecType_DenyAllRequests{v} iNdEx = postIndex - case 28: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SegmentPolicy == nil { - m.SegmentPolicy = &policy.SegmentPolicyType{} - } - if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -14246,42 +13995,6 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.RuleChoice = &GetSpecType_DenyAllRequests{v} iNdEx = postIndex - case 28: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SegmentPolicy == nil { - m.SegmentPolicy = &policy.SegmentPolicyType{} - } - if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 1001: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field SimpleRules", wireType) diff --git a/pbgo/extschema/schema/service_policy/types.vesmsg.go b/pbgo/extschema/schema/service_policy/types.vesmsg.go index e904912b2..1ce384881 100644 --- a/pbgo/extschema/schema/service_policy/types.vesmsg.go +++ b/pbgo/extschema/schema/service_policy/types.vesmsg.go @@ -70,20 +70,7 @@ func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { return nil, nil } - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetRuleChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRuleChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil + return m.GetRuleChoiceDRefInfo() } @@ -159,24 +146,6 @@ func (m *CreateSpecType) GetRuleChoiceDRefInfo() ([]db.DRefInfo, error) { } -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { - if m.GetSegmentPolicy() == nil { - return nil, nil - } - - drInfos, err := m.GetSegmentPolicy().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "segment_policy." + dri.DRField - } - return drInfos, err - -} - type ValidateCreateSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -344,15 +313,6 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["segment_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("segment_policy")) - if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["server_choice"]; exists { val := m.GetServerChoice() vOpts := append(opts, @@ -481,8 +441,6 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["port_matcher"] = ves_io_schema_policy.PortMatcherTypeValidator().Validate - v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate - return v }() @@ -545,12 +503,6 @@ func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } - if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - if fdrInfos, err := m.GetSimpleRulesDRefInfo(); err != nil { return nil, errors.Wrap(err, "GetSimpleRulesDRefInfo() FAILED") } else { @@ -678,24 +630,6 @@ func (m *GetSpecType) GetRulesDBEntries(ctx context.Context, d db.Interface) ([] return entries, nil } -// GetDRefInfo for the field's type -func (m *GetSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { - if m.GetSegmentPolicy() == nil { - return nil, nil - } - - drInfos, err := m.GetSegmentPolicy().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "segment_policy." + dri.DRField - } - return drInfos, err - -} - // GetDRefInfo for the field's type func (m *GetSpecType) GetSimpleRulesDRefInfo() ([]db.DRefInfo, error) { if m.GetSimpleRules() == nil { @@ -989,15 +923,6 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } - if fv, exists := v.FldValidators["segment_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("segment_policy")) - if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["server_choice"]; exists { val := m.GetServerChoice() vOpts := append(opts, @@ -1156,8 +1081,6 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["port_matcher"] = ves_io_schema_policy.PortMatcherTypeValidator().Validate - v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate - return v }() @@ -1226,12 +1149,6 @@ func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } - if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - if fdrInfos, err := m.GetSimpleRulesDRefInfo(); err != nil { return nil, errors.Wrap(err, "GetSimpleRulesDRefInfo() FAILED") } else { @@ -1410,24 +1327,6 @@ func (m *GlobalSpecType) GetRulesDBEntries(ctx context.Context, d db.Interface) return entries, nil } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { - if m.GetSegmentPolicy() == nil { - return nil, nil - } - - drInfos, err := m.GetSegmentPolicy().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "segment_policy." + dri.DRField - } - return drInfos, err - -} - // GetDRefInfo for the field's type func (m *GlobalSpecType) GetSimpleRulesDRefInfo() ([]db.DRefInfo, error) { if m.GetSimpleRules() == nil { @@ -1844,15 +1743,6 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["segment_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("segment_policy")) - if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["server_choice"]; exists { val := m.GetServerChoice() vOpts := append(opts, @@ -2035,8 +1925,6 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["deny_info"] = ves_io_schema_policy.DenyInformationValidator().Validate - v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate - v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate return v @@ -2286,20 +2174,7 @@ func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { return nil, nil } - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetRuleChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRuleChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil + return m.GetRuleChoiceDRefInfo() } @@ -2375,24 +2250,6 @@ func (m *ReplaceSpecType) GetRuleChoiceDRefInfo() ([]db.DRefInfo, error) { } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { - if m.GetSegmentPolicy() == nil { - return nil, nil - } - - drInfos, err := m.GetSegmentPolicy().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "segment_policy." + dri.DRField - } - return drInfos, err - -} - type ValidateReplaceSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -2560,15 +2417,6 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["segment_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("segment_policy")) - if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["server_choice"]; exists { val := m.GetServerChoice() vOpts := append(opts, @@ -2697,8 +2545,6 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["port_matcher"] = ves_io_schema_policy.PortMatcherTypeValidator().Validate - v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate - return v }() @@ -4144,10 +3990,10 @@ func (v *ValidateSimpleRule) Validate(ctx context.Context, pm interface{}, opts } - if fv, exists := v.FldValidators["threat_intelligence_action"]; exists { + if fv, exists := v.FldValidators["threat_mesh_action"]; exists { - vOpts := append(opts, db.WithValidateField("threat_intelligence_action")) - if err := fv(ctx, m.GetThreatIntelligenceAction(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("threat_mesh_action")) + if err := fv(ctx, m.GetThreatMeshAction(), vOpts...); err != nil { return err } @@ -4397,7 +4243,7 @@ var DefaultSimpleRuleValidator = func() *ValidateSimpleRule { v.FldValidators["dst_asn_matcher"] = ves_io_schema_policy.AsnMatcherTypeValidator().Validate - v.FldValidators["threat_intelligence_action"] = ves_io_schema_policy.ModifyActionValidator().Validate + v.FldValidators["threat_mesh_action"] = ves_io_schema_policy.ModifyActionValidator().Validate return v }() @@ -5159,7 +5005,6 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.Algo = f.GetAlgo() m.PortMatcher = f.GetPortMatcher() m.GetRuleChoiceFromGlobalSpecType(f) - m.SegmentPolicy = f.GetSegmentPolicy() m.GetServerChoiceFromGlobalSpecType(f) } @@ -5181,7 +5026,6 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Algo = m1.Algo f.PortMatcher = m1.PortMatcher m1.SetRuleChoiceToGlobalSpecType(f) - f.SegmentPolicy = m1.SegmentPolicy m1.SetServerChoiceToGlobalSpecType(f) } @@ -5313,7 +5157,6 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.PortMatcher = f.GetPortMatcher() m.GetRuleChoiceFromGlobalSpecType(f) m.Rules = f.GetRules() - m.SegmentPolicy = f.GetSegmentPolicy() m.GetServerChoiceFromGlobalSpecType(f) m.SimpleRules = f.GetSimpleRules() } @@ -5337,7 +5180,6 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.PortMatcher = m1.PortMatcher m1.SetRuleChoiceToGlobalSpecType(f) f.Rules = m1.Rules - f.SegmentPolicy = m1.SegmentPolicy m1.SetServerChoiceToGlobalSpecType(f) f.SimpleRules = m1.SimpleRules } @@ -5469,7 +5311,6 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.Algo = f.GetAlgo() m.PortMatcher = f.GetPortMatcher() m.GetRuleChoiceFromGlobalSpecType(f) - m.SegmentPolicy = f.GetSegmentPolicy() m.GetServerChoiceFromGlobalSpecType(f) } @@ -5491,7 +5332,6 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Algo = m1.Algo f.PortMatcher = m1.PortMatcher m1.SetRuleChoiceToGlobalSpecType(f) - f.SegmentPolicy = m1.SegmentPolicy m1.SetServerChoiceToGlobalSpecType(f) } diff --git a/pbgo/extschema/schema/service_policy_rule/crudapi/api.vesapi.go b/pbgo/extschema/schema/service_policy_rule/crudapi/api.vesapi.go index b949f7cd9..ca3d2798f 100644 --- a/pbgo/extschema/schema/service_policy_rule/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/service_policy_rule/crudapi/api.vesapi.go @@ -3219,14 +3219,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -4151,6 +4151,47 @@ var APISwaggerJSON string = `{ "x-displayname": "Rule Action", "x-ves-proto-enum": "ves.io.schema.policy.RuleAction" }, + "policySegmentPolicyType": { + "type": "object", + "description": "Configure source and destination segment for policy", + "title": "Segment Choice", + "x-displayname": "Configure Segments", + "x-ves-oneof-field-dst_segment_choice": "[\"dst_any\",\"dst_segments\",\"intra_segment\"]", + "x-ves-oneof-field-src_segment_choice": "[\"src_any\",\"src_segments\"]", + "x-ves-proto-message": "ves.io.schema.policy.SegmentPolicyType", + "properties": { + "dst_any": { + "description": "Exclusive with [dst_segments intra_segment]\n Traffic is not matched against any segment", + "title": "Any segment", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any" + }, + "dst_segments": { + "description": "Exclusive with [dst_any intra_segment]\n Traffic is matched against destination segment in selected segments", + "title": "List of segments", + "$ref": "#/definitions/viewsSegmentRefList", + "x-displayname": "Segments" + }, + "intra_segment": { + "description": "Exclusive with [dst_any dst_segments]\n Traffic is matched for source and destination on the same segment", + "title": "Intra Segment Policy", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Intra Segment" + }, + "src_any": { + "description": "Exclusive with [src_segments]\n Traffic is not matched against any segment", + "title": "Any segment", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any" + }, + "src_segments": { + "description": "Exclusive with [src_any]\n Source traffic is matched against selected segments", + "title": "List of segments", + "$ref": "#/definitions/viewsSegmentRefList", + "x-displayname": "Segments" + } + } + }, "policyShapeBotBlockMitigationActionType": { "type": "object", "description": "x-displayName: \"Block bot mitigation\"\nBlock request and respond with custom content.", @@ -4764,7 +4805,7 @@ var APISwaggerJSON string = `{ }, "prefixes": { "type": "array", - "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0./24\"\nx-required\nDestination IPv4 prefixes.", + "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0.1/24\"\nx-required\nDestination IPv4 prefixes.", "title": "prefixes", "items": { "type": "string" @@ -4859,10 +4900,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5694,6 +5739,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyRequestConstraintType", "x-displayname": "Request Constraints" }, + "segment_policy": { + "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", + "title": "Segments", + "$ref": "#/definitions/policySegmentPolicyType", + "x-displayname": "Configure Segments" + }, "tls_fingerprint_matcher": { "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", "title": "TLS JA3 fingerprint matcher", @@ -5744,6 +5795,52 @@ var APISwaggerJSON string = `{ } } }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + }, "service_policy_ruleSpecType": { "type": "object", "description": "Shape of the service policy rule specification", @@ -5802,6 +5899,28 @@ var APISwaggerJSON string = `{ "default": "EOK", "x-displayname": "", "x-ves-proto-enum": "ves.io.schema.service_policy_rule.crudapi.ErrorCode" + }, + "viewsSegmentRefList": { + "type": "object", + "description": "List of references to Segments", + "title": "Segment List", + "x-displayname": "Segment List", + "x-ves-proto-message": "ves.io.schema.views.SegmentRefList", + "properties": { + "segments": { + "type": "array", + "description": " Select list of segments\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segments", + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Segments", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } } }, "x-displayname": "", diff --git a/pbgo/extschema/schema/service_policy_rule/object.pb.go b/pbgo/extschema/schema/service_policy_rule/object.pb.go index e6b33d118..98d7889fb 100644 --- a/pbgo/extschema/schema/service_policy_rule/object.pb.go +++ b/pbgo/extschema/schema/service_policy_rule/object.pb.go @@ -234,45 +234,46 @@ func init() { } var fileDescriptor_8768b45ae38520b8 = []byte{ - // 599 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xcf, 0x6b, 0x14, 0x3f, - 0x14, 0xc0, 0x37, 0xbb, 0x65, 0x5b, 0xd2, 0xd2, 0x6f, 0x99, 0xc2, 0x97, 0xb5, 0x6a, 0xa8, 0xeb, - 0xa5, 0xa0, 0x93, 0xc1, 0x8a, 0x48, 0x8b, 0xf8, 0xa3, 0x15, 0x0a, 0xd2, 0x22, 0x6c, 0xfd, 0x01, - 0x5e, 0x96, 0x4c, 0xf6, 0xed, 0x34, 0x3a, 0xb3, 0x19, 0x92, 0xcc, 0xd8, 0x3d, 0x08, 0xfe, 0x09, - 0x5e, 0xfc, 0x1f, 0xc4, 0x8b, 0xff, 0x82, 0xf5, 0xe4, 0xcd, 0xd2, 0x53, 0xf1, 0x64, 0x67, 0x2f, - 0x1e, 0x0b, 0xfe, 0x03, 0xd2, 0x8c, 0x53, 0xba, 0x65, 0x4a, 0x0b, 0x7b, 0xcb, 0xf0, 0x3e, 0xef, - 0x33, 0x2f, 0x79, 0xc9, 0xc3, 0x34, 0x05, 0x4d, 0x85, 0xf4, 0x34, 0xdf, 0x82, 0x88, 0x79, 0x1a, - 0x54, 0x2a, 0x38, 0xb4, 0x63, 0x19, 0x0a, 0xde, 0x6f, 0xab, 0x24, 0x04, 0x4f, 0xfa, 0xaf, 0x81, - 0x1b, 0x1a, 0x2b, 0x69, 0xa4, 0x73, 0x2d, 0xe7, 0x69, 0xce, 0xd3, 0x12, 0x7e, 0xce, 0x0d, 0x84, - 0xd9, 0x4a, 0x7c, 0xca, 0x65, 0xe4, 0x05, 0x32, 0x90, 0x9e, 0xcd, 0xf4, 0x93, 0xae, 0xfd, 0xb2, - 0x1f, 0x76, 0x95, 0x1b, 0xe7, 0x2e, 0x0f, 0x57, 0x20, 0x63, 0x23, 0x64, 0x4f, 0xff, 0x0b, 0xba, - 0xe7, 0x97, 0x67, 0xfa, 0x31, 0x14, 0xf8, 0xa5, 0x61, 0xfc, 0x64, 0xa8, 0x39, 0x1c, 0x4a, 0x41, - 0x43, 0x2f, 0x1d, 0xfe, 0x5b, 0xf3, 0xcb, 0x18, 0xae, 0x3f, 0xb5, 0xbb, 0x75, 0x96, 0xf0, 0x44, - 0x04, 0x86, 0x75, 0x98, 0x61, 0x0d, 0x34, 0x8f, 0x16, 0x26, 0x17, 0xaf, 0xd2, 0xe1, 0xad, 0xe7, - 0xe0, 0x06, 0x18, 0xf6, 0xac, 0x1f, 0x43, 0xeb, 0x18, 0x77, 0xd6, 0xf1, 0x7f, 0xba, 0xaf, 0x0d, - 0x44, 0xed, 0x63, 0x43, 0xd5, 0x1a, 0xae, 0x9f, 0x32, 0x6c, 0x5a, 0xea, 0x94, 0x67, 0x3a, 0xcf, - 0xdd, 0x28, 0x6c, 0x0f, 0xf0, 0x98, 0x8e, 0x81, 0x37, 0x6a, 0x56, 0x71, 0x83, 0x9e, 0x7b, 0xfe, - 0x74, 0x33, 0x06, 0x6e, 0x55, 0x36, 0x71, 0xf9, 0x67, 0xf5, 0xdb, 0x4e, 0xa3, 0x3a, 0x83, 0xf6, - 0x76, 0x1a, 0x3f, 0xaa, 0xf8, 0x21, 0xae, 0xad, 0x81, 0x71, 0x96, 0xba, 0x77, 0xb6, 0xb9, 0xab, - 0x81, 0x27, 0x0a, 0x22, 0xd0, 0x5b, 0xae, 0xcf, 0xb4, 0xe0, 0x6e, 0x24, 0x7b, 0xc2, 0x48, 0x75, - 0x73, 0x3e, 0x05, 0xed, 0x0a, 0xe9, 0xc6, 0x4a, 0x6e, 0xf7, 0x73, 0x4c, 0x98, 0xbe, 0xab, 0x80, - 0x75, 0xf0, 0x0a, 0x1e, 0x6f, 0x41, 0x1c, 0x32, 0x0e, 0xce, 0xdd, 0x72, 0x4b, 0xa2, 0xe1, 0x4c, - 0xc5, 0x5b, 0x25, 0x0c, 0xe0, 0x47, 0xb8, 0xbe, 0xaa, 0x80, 0x99, 0xd1, 0x14, 0x8f, 0x21, 0x84, - 0xd1, 0x14, 0x63, 0xeb, 0x42, 0x8f, 0x72, 0x18, 0xcd, 0x17, 0x78, 0xa2, 0x38, 0x6e, 0xe7, 0x09, - 0x1e, 0x0f, 0x78, 0xdb, 0x36, 0x2b, 0xef, 0xf7, 0xad, 0x0b, 0x34, 0x6b, 0x2d, 0x94, 0x3e, 0x0b, - 0x8f, 0x5b, 0x56, 0x0f, 0xf8, 0xd1, 0xba, 0xf9, 0x07, 0xe1, 0xa9, 0x4d, 0xc3, 0x4c, 0xa2, 0x2f, - 0x7c, 0x1f, 0x73, 0xbc, 0xe4, 0x3e, 0x3e, 0xc7, 0x93, 0xf9, 0x13, 0x6e, 0x2b, 0xe8, 0xea, 0x46, - 0x75, 0xbe, 0xb6, 0x30, 0xb9, 0x78, 0xa5, 0xf4, 0x36, 0xb7, 0xa0, 0x7b, 0x94, 0xbc, 0xf2, 0xff, - 0xe7, 0x77, 0xb3, 0x25, 0xd5, 0xb6, 0xb0, 0x2c, 0x30, 0xed, 0xdc, 0xc3, 0x98, 0xcb, 0x5e, 0x47, - 0xd8, 0x07, 0xd4, 0xa8, 0x95, 0x5a, 0x57, 0x0b, 0xc0, 0x96, 0x74, 0x82, 0x5f, 0x9e, 0xdd, 0xbb, - 0x3f, 0x83, 0xa7, 0xf1, 0x54, 0x51, 0x25, 0x4d, 0x44, 0x67, 0xe5, 0x23, 0xda, 0x3d, 0x20, 0x95, - 0xfd, 0x03, 0x52, 0x39, 0x3c, 0x20, 0xe8, 0x7d, 0x46, 0xd0, 0xa7, 0x8c, 0xa0, 0xef, 0x19, 0x41, - 0xbb, 0x19, 0x41, 0xfb, 0x19, 0x41, 0xbf, 0x32, 0x82, 0x7e, 0x67, 0xa4, 0x72, 0x98, 0x11, 0xf4, - 0x61, 0x40, 0x2a, 0x5f, 0x07, 0x04, 0xed, 0x0e, 0x48, 0x65, 0x7f, 0x40, 0x2a, 0xaf, 0x5e, 0x06, - 0x32, 0x7e, 0x13, 0xd0, 0x54, 0x86, 0x06, 0x94, 0x62, 0x34, 0xd1, 0x9e, 0x5d, 0x74, 0xa5, 0x8a, - 0x8e, 0xba, 0x97, 0x8a, 0x0e, 0x28, 0xb7, 0x08, 0x7b, 0xb1, 0x1f, 0x48, 0x0f, 0xb6, 0x4d, 0x31, - 0x5b, 0xce, 0x1c, 0x31, 0x7e, 0xdd, 0x8e, 0x87, 0xdb, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x0b, - 0x02, 0x9c, 0xd3, 0x2d, 0x05, 0x00, 0x00, + // 611 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x6b, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0xba, 0x75, 0x5b, 0xa6, 0xa5, 0x96, 0x14, 0x64, 0xad, 0x3a, 0xd4, 0xf5, 0x52, + 0xd0, 0x24, 0x58, 0xf1, 0x60, 0x11, 0x85, 0x56, 0x28, 0x48, 0x8b, 0xb0, 0xd5, 0x0a, 0x7a, 0x58, + 0x27, 0x93, 0xb7, 0xe9, 0x68, 0xb2, 0x13, 0x66, 0x26, 0xb1, 0x39, 0x08, 0x7e, 0x04, 0x2f, 0x7e, + 0x07, 0xf1, 0x53, 0x58, 0x4f, 0x1e, 0x97, 0x9e, 0x7a, 0xb4, 0xd9, 0x8b, 0xc7, 0x82, 0x47, 0x2f, + 0xd2, 0x89, 0xa9, 0xdd, 0x12, 0x6d, 0x2f, 0x7b, 0x9b, 0xf0, 0x7e, 0xef, 0xff, 0x7f, 0x93, 0x79, + 0xef, 0x61, 0x27, 0x05, 0xe5, 0x70, 0xe1, 0x2a, 0xb6, 0x0d, 0x11, 0x75, 0x15, 0xc8, 0x94, 0x33, + 0xe8, 0xc4, 0x22, 0xe4, 0x2c, 0xeb, 0xc8, 0x24, 0x04, 0x57, 0x78, 0xaf, 0x81, 0x69, 0x27, 0x96, + 0x42, 0x0b, 0xeb, 0x7a, 0xc1, 0x3b, 0x05, 0xef, 0x54, 0xf0, 0xf3, 0x76, 0xc0, 0xf5, 0x76, 0xe2, + 0x39, 0x4c, 0x44, 0x6e, 0x20, 0x02, 0xe1, 0x9a, 0x4c, 0x2f, 0xe9, 0x9a, 0x2f, 0xf3, 0x61, 0x4e, + 0x85, 0xe2, 0xfc, 0x95, 0xe1, 0x0a, 0x44, 0xac, 0xb9, 0xe8, 0xa9, 0x3f, 0x41, 0xfb, 0xec, 0xf2, + 0x74, 0x16, 0x43, 0x89, 0x5f, 0x1e, 0xc6, 0x4f, 0x86, 0x5a, 0xc3, 0xa1, 0x14, 0x14, 0xf4, 0xd2, + 0x61, 0xb7, 0x56, 0xff, 0x02, 0x6e, 0x3c, 0x31, 0xb7, 0xb5, 0xee, 0xe1, 0xc9, 0x08, 0x34, 0xf5, + 0xa9, 0xa6, 0x4d, 0xb4, 0x80, 0x16, 0xa7, 0x96, 0xae, 0x39, 0xc3, 0x57, 0x2f, 0xc0, 0x0d, 0xd0, + 0xf4, 0x69, 0x16, 0x43, 0xfb, 0x18, 0xb7, 0xd6, 0xf1, 0x45, 0x95, 0x29, 0x0d, 0x51, 0xe7, 0x58, + 0x61, 0xcc, 0x28, 0xdc, 0x38, 0xa5, 0xb0, 0x69, 0xa8, 0x53, 0x3a, 0x33, 0x45, 0xee, 0x46, 0xa9, + 0xf6, 0x10, 0x8f, 0xab, 0x18, 0x58, 0xb3, 0x6e, 0x24, 0x6e, 0x3a, 0x67, 0xfe, 0x7f, 0x67, 0x33, + 0x06, 0x66, 0xa4, 0x4c, 0xe2, 0xf2, 0xaf, 0xfa, 0xd7, 0xdd, 0xe6, 0xd8, 0x2c, 0xda, 0xdb, 0x6d, + 0x1e, 0xd6, 0xb1, 0x87, 0xeb, 0x6b, 0xa0, 0xad, 0x97, 0xdd, 0xbb, 0x3b, 0xcc, 0x56, 0xc0, 0x12, + 0x09, 0x11, 0xa8, 0x6d, 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x12, 0x3d, 0xae, 0x85, 0xbc, 0xb5, 0x70, + 0x3a, 0xac, 0x34, 0xed, 0xf9, 0x54, 0xfa, 0x7f, 0x89, 0x14, 0x94, 0xcd, 0x85, 0x1d, 0x4b, 0xb1, + 0x93, 0x15, 0x24, 0xd7, 0x99, 0x2d, 0x81, 0xfa, 0x98, 0xe2, 0x89, 0x36, 0xc4, 0x21, 0x65, 0x60, + 0x6d, 0x55, 0xfb, 0x24, 0x0a, 0xfe, 0x67, 0x52, 0x84, 0xab, 0x1d, 0xde, 0x4a, 0xae, 0x01, 0xbf, + 0xc2, 0x8d, 0x55, 0x09, 0x54, 0x8f, 0xd4, 0xe1, 0x11, 0x84, 0x30, 0x42, 0x07, 0x86, 0xc7, 0xd7, + 0xb9, 0x1a, 0xed, 0x5b, 0xb4, 0xb6, 0xf0, 0x64, 0xd9, 0x0f, 0xd6, 0x63, 0x3c, 0x11, 0xb0, 0x8e, + 0xe9, 0xa6, 0xa2, 0x21, 0x6f, 0x9f, 0xa3, 0x9b, 0xd6, 0x42, 0xe1, 0xd1, 0xf0, 0xb8, 0xa7, 0x1a, + 0x01, 0x3b, 0x3a, 0xb7, 0x7e, 0x22, 0x3c, 0xbd, 0xa9, 0xa9, 0x4e, 0xd4, 0xb9, 0x07, 0xa6, 0xc0, + 0x2b, 0x06, 0xe6, 0x19, 0x9e, 0x2a, 0x76, 0x4c, 0x47, 0x42, 0x57, 0x35, 0xc7, 0x16, 0xea, 0x8b, + 0x53, 0x4b, 0x57, 0x2b, 0xc7, 0xad, 0x0d, 0xdd, 0xa3, 0xe4, 0x95, 0x4b, 0x9f, 0xdf, 0xcd, 0x55, + 0x54, 0xdb, 0xc6, 0xa2, 0xc4, 0x94, 0x75, 0x1f, 0x63, 0x26, 0x7a, 0x3e, 0x37, 0x13, 0xde, 0xac, + 0x57, 0xaa, 0xae, 0x96, 0x80, 0x29, 0xe9, 0x04, 0xbf, 0x3c, 0xb7, 0xf7, 0x60, 0x16, 0xcf, 0xe0, + 0xe9, 0xb2, 0x4a, 0x27, 0xe1, 0xfe, 0xca, 0x47, 0xd4, 0x3f, 0x20, 0xb5, 0xfd, 0x03, 0x52, 0x3b, + 0x3c, 0x20, 0xe8, 0x7d, 0x4e, 0xd0, 0xa7, 0x9c, 0xa0, 0x6f, 0x39, 0x41, 0xfd, 0x9c, 0xa0, 0xfd, + 0x9c, 0xa0, 0xef, 0x39, 0x41, 0x3f, 0x72, 0x52, 0x3b, 0xcc, 0x09, 0xfa, 0x30, 0x20, 0xb5, 0x2f, + 0x03, 0x82, 0xfa, 0x03, 0x52, 0xdb, 0x1f, 0x90, 0xda, 0x8b, 0xe7, 0x81, 0x88, 0xdf, 0x04, 0x4e, + 0x2a, 0x42, 0x0d, 0x52, 0x52, 0x27, 0x51, 0xae, 0x39, 0x74, 0x85, 0x8c, 0x8e, 0x5e, 0x2f, 0xe5, + 0x3e, 0x48, 0xbb, 0x0c, 0xbb, 0xb1, 0x17, 0x08, 0x17, 0x76, 0x74, 0xb9, 0xfc, 0xfe, 0xb9, 0x03, + 0xbd, 0x86, 0xd9, 0x5f, 0x77, 0x7e, 0x07, 0x00, 0x00, 0xff, 0xff, 0x44, 0x29, 0xd3, 0x3f, 0xce, + 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/service_policy_rule/public_crudapi.pb.go b/pbgo/extschema/schema/service_policy_rule/public_crudapi.pb.go index 35c107c04..cf3824e96 100644 --- a/pbgo/extschema/schema/service_policy_rule/public_crudapi.pb.go +++ b/pbgo/extschema/schema/service_policy_rule/public_crudapi.pb.go @@ -1061,109 +1061,110 @@ func init() { } var fileDescriptor_8bc1aeff3eee4aa7 = []byte{ - // 1618 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x13, 0x49, - 0x16, 0x4f, 0xd9, 0x8e, 0xb1, 0xcb, 0xf9, 0x68, 0x6a, 0x21, 0x38, 0x5e, 0xd6, 0x32, 0x06, 0xad, - 0xa2, 0x68, 0xdd, 0x86, 0x20, 0x10, 0x44, 0x08, 0xd6, 0x49, 0x9c, 0x28, 0x6c, 0x48, 0xa0, 0x6d, - 0xc2, 0x6a, 0x2f, 0xad, 0x76, 0xfb, 0xd9, 0xf4, 0x62, 0xbb, 0x7b, 0xbb, 0xca, 0x0e, 0x16, 0x8a, - 0x76, 0x17, 0xed, 0x6d, 0x2f, 0xbb, 0xda, 0xc3, 0x6a, 0x57, 0x73, 0x98, 0x39, 0x8c, 0x34, 0x73, - 0x9e, 0xcb, 0x48, 0xb9, 0x70, 0x1b, 0xc4, 0x61, 0x84, 0x86, 0x4b, 0x8e, 0x83, 0x83, 0x34, 0xcc, - 0x8d, 0x99, 0x7f, 0x60, 0x46, 0x5d, 0xd5, 0x6d, 0x6c, 0xc7, 0x4c, 0xec, 0x24, 0x27, 0x77, 0xd5, - 0x7b, 0xef, 0x57, 0xf5, 0x7b, 0x5f, 0xfd, 0xdc, 0xf8, 0x6a, 0x03, 0xa8, 0x6c, 0x98, 0x69, 0xaa, - 0x3f, 0x84, 0xaa, 0x96, 0xa6, 0x60, 0x37, 0x0c, 0x1d, 0x54, 0xcb, 0xac, 0x18, 0x7a, 0x53, 0xb5, - 0xeb, 0x15, 0x48, 0x5b, 0xf5, 0x42, 0xc5, 0xd0, 0x55, 0xdd, 0xae, 0x17, 0x35, 0xcb, 0x90, 0x2d, - 0xdb, 0x64, 0x26, 0x39, 0x27, 0xec, 0x64, 0x61, 0x27, 0xf7, 0xb1, 0x8b, 0xa5, 0xca, 0x06, 0x7b, - 0x58, 0x2f, 0xc8, 0xba, 0x59, 0x4d, 0x97, 0xcd, 0xb2, 0x99, 0xe6, 0x96, 0x85, 0x7a, 0x89, 0xaf, - 0xf8, 0x82, 0x3f, 0x09, 0xc4, 0xd8, 0xd9, 0xb2, 0x69, 0x96, 0x2b, 0x90, 0xd6, 0x2c, 0x23, 0xad, - 0xd5, 0x6a, 0x26, 0xd3, 0x98, 0x61, 0xd6, 0xa8, 0x2b, 0xfd, 0xb5, 0x2b, 0x6d, 0x63, 0x40, 0xd5, - 0x62, 0x4d, 0x57, 0x18, 0xeb, 0x26, 0x01, 0xb6, 0x6d, 0xda, 0x6d, 0xc3, 0x6e, 0x99, 0x69, 0x75, - 0xa2, 0xca, 0x07, 0xb3, 0x37, 0x0b, 0x7f, 0x06, 0x9d, 0xb9, 0xfa, 0xa9, 0x83, 0xf5, 0x59, 0xd3, - 0x02, 0x0f, 0x7e, 0xba, 0x5b, 0xbd, 0x53, 0x94, 0xec, 0x16, 0x35, 0x80, 0x42, 0xad, 0xd1, 0x73, - 0xbb, 0x44, 0x8f, 0x8e, 0x01, 0x5b, 0x6a, 0x97, 0x46, 0xf2, 0x0b, 0x84, 0xc7, 0x17, 0x6d, 0xd0, - 0x18, 0x28, 0xf0, 0x97, 0x3a, 0x50, 0x46, 0x6e, 0xe1, 0x50, 0x15, 0x98, 0x56, 0xd4, 0x98, 0x16, - 0x45, 0x09, 0x34, 0x13, 0x99, 0x3b, 0x2f, 0x77, 0x87, 0x6a, 0x83, 0x13, 0x12, 0x56, 0x77, 0x80, - 0x69, 0xf9, 0xa6, 0x05, 0x4a, 0xdb, 0x88, 0x6c, 0xe2, 0x00, 0xb5, 0x40, 0x8f, 0xfa, 0xb8, 0xf1, - 0x25, 0xf9, 0xc0, 0x38, 0xcb, 0x02, 0x2a, 0x67, 0x81, 0xee, 0x40, 0x2d, 0x4c, 0xfe, 0x7f, 0x7b, - 0xcc, 0x41, 0x90, 0xcb, 0xba, 0xea, 0xfc, 0x2a, 0x1c, 0x6f, 0x3e, 0xfc, 0xe2, 0x66, 0x50, 0x1c, - 0x9d, 0xfc, 0x09, 0xe1, 0x09, 0xef, 0xd6, 0xd4, 0x32, 0x6b, 0x14, 0xc8, 0x8d, 0x7d, 0xd7, 0x4e, - 0xf4, 0xbd, 0xf6, 0x0a, 0xb0, 0x3e, 0x77, 0xde, 0xc0, 0x93, 0xb4, 0x49, 0x19, 0x54, 0xd5, 0x36, - 0x88, 0x9f, 0x83, 0xfc, 0xb6, 0x07, 0x24, 0xc7, 0xb5, 0xf6, 0x43, 0x4d, 0x08, 0xf3, 0x3b, 0x1e, - 0x60, 0xae, 0xcb, 0x09, 0xf2, 0x00, 0x4e, 0x58, 0x01, 0x36, 0x84, 0x07, 0xbe, 0x43, 0x78, 0x42, - 0x01, 0xab, 0xa2, 0xe9, 0xed, 0xc0, 0xfd, 0x7e, 0x9f, 0x07, 0x2e, 0xf4, 0xf5, 0x80, 0x6b, 0xd6, - 0xc7, 0x0b, 0x0f, 0xba, 0x2e, 0x3d, 0x37, 0xc0, 0xa5, 0x5d, 0xac, 0x03, 0x2e, 0x4e, 0xd2, 0x58, - 0xb2, 0x81, 0x9a, 0x75, 0x5b, 0x07, 0xb5, 0x01, 0x36, 0x35, 0xcc, 0x1a, 0xf7, 0x6f, 0x78, 0x21, - 0xf0, 0x76, 0x07, 0x21, 0x65, 0xd2, 0x93, 0x6e, 0x0a, 0x61, 0x27, 0xd3, 0x93, 0x78, 0xb2, 0x4d, - 0x54, 0xc4, 0x3a, 0xf9, 0x09, 0xc2, 0x78, 0x05, 0x98, 0x47, 0xfc, 0x2c, 0x0e, 0xd7, 0xb4, 0x2a, - 0x50, 0x4b, 0xd3, 0x81, 0x33, 0x0f, 0x2b, 0xef, 0x37, 0x08, 0xc1, 0x01, 0x67, 0xc1, 0x49, 0x85, - 0x15, 0xfe, 0x4c, 0x34, 0xec, 0x9c, 0xc8, 0xc1, 0xd4, 0x92, 0x69, 0x57, 0x35, 0xc6, 0xaf, 0x33, - 0x31, 0x77, 0x6d, 0xb0, 0x40, 0x79, 0x37, 0x59, 0xe6, 0xb6, 0x8b, 0x66, 0x11, 0x94, 0x09, 0xbb, - 0x6b, 0x2f, 0xf9, 0x79, 0x10, 0x47, 0x3a, 0x34, 0xc9, 0x3d, 0x1c, 0xd1, 0x79, 0xc6, 0xf2, 0x03, - 0x5d, 0x17, 0x5f, 0x1c, 0xb8, 0x38, 0x5c, 0xae, 0x0a, 0x16, 0x20, 0xce, 0x21, 0x24, 0x8f, 0xc7, - 0x6c, 0xe1, 0x19, 0x81, 0xe9, 0x1f, 0xb8, 0xe0, 0xba, 0x33, 0x47, 0x89, 0xb8, 0x30, 0x1c, 0xb5, - 0x5f, 0xac, 0x02, 0xbf, 0x10, 0xab, 0xae, 0xca, 0x1b, 0x3d, 0x8e, 0xca, 0x3b, 0x71, 0x2c, 0x95, - 0x17, 0x3c, 0xc6, 0xca, 0x23, 0xeb, 0x38, 0x48, 0x99, 0xc6, 0xea, 0x34, 0xfa, 0xf1, 0x47, 0x28, - 0xe1, 0x9f, 0x89, 0xcc, 0xa5, 0x07, 0x00, 0xce, 0x71, 0x13, 0x71, 0xe5, 0x05, 0xff, 0xb3, 0x6d, - 0xa4, 0xb8, 0x28, 0x64, 0x15, 0x9f, 0xb4, 0xa1, 0x04, 0xb6, 0x6d, 0xd4, 0xca, 0xaa, 0x78, 0x41, - 0xd0, 0x68, 0x88, 0x03, 0x9f, 0xfd, 0x40, 0xd1, 0x96, 0x38, 0x5b, 0xa9, 0x6d, 0x26, 0xf6, 0x29, - 0xd9, 0xc4, 0xd1, 0x22, 0x54, 0x80, 0x41, 0x51, 0x15, 0x32, 0x28, 0xb6, 0x11, 0xc3, 0x03, 0x20, - 0x4e, 0xb9, 0xd6, 0x8a, 0x6b, 0xec, 0xe1, 0xfe, 0x11, 0x4f, 0x17, 0x0d, 0xaa, 0x15, 0x2a, 0xfd, - 0x80, 0xf1, 0x00, 0xc0, 0x67, 0x3c, 0xf3, 0x1e, 0xe4, 0x8e, 0xe2, 0xbe, 0x1d, 0x08, 0x21, 0xc9, - 0x97, 0xfc, 0x14, 0xe1, 0xc8, 0x9a, 0x41, 0x07, 0x2c, 0xe8, 0x73, 0x78, 0xac, 0xa2, 0x15, 0xa0, - 0xa2, 0x96, 0x8c, 0x0a, 0x03, 0xdb, 0x2d, 0xec, 0x08, 0xdf, 0x5b, 0xe6, 0x5b, 0xe4, 0x3c, 0x1e, - 0xb7, 0xc1, 0x32, 0x6d, 0xa6, 0x96, 0x0c, 0xa8, 0x14, 0x69, 0xd4, 0x9f, 0xf0, 0xcf, 0x84, 0x95, - 0x31, 0xb1, 0xb9, 0xcc, 0xf7, 0xc8, 0x45, 0x7c, 0xca, 0x55, 0x12, 0x41, 0xf1, 0x74, 0x03, 0x5c, - 0x97, 0x08, 0x99, 0x08, 0xa1, 0xb0, 0x48, 0xee, 0x06, 0xb1, 0x24, 0xee, 0x29, 0x8a, 0x7a, 0x95, - 0x41, 0x95, 0x4c, 0xe1, 0x20, 0x83, 0x9a, 0x56, 0x63, 0x3c, 0xe3, 0xc2, 0x8a, 0xbb, 0x3a, 0x44, - 0x57, 0x92, 0xb0, 0xbf, 0x6e, 0x14, 0x45, 0x63, 0x54, 0x9c, 0x47, 0x92, 0xc0, 0x91, 0x22, 0x50, - 0xdd, 0x36, 0xf8, 0x3b, 0x3b, 0x1a, 0x11, 0x4c, 0x3b, 0xb6, 0x48, 0x0c, 0x87, 0x3c, 0x37, 0x47, - 0xc7, 0x12, 0x68, 0x26, 0xa4, 0xb4, 0xd7, 0xe4, 0x01, 0x0e, 0x72, 0xa7, 0x08, 0x4a, 0x91, 0xb9, - 0x5b, 0x03, 0xa4, 0x6c, 0x2f, 0x3d, 0x79, 0x8d, 0x23, 0x64, 0x6b, 0xcc, 0x6e, 0x2a, 0x2e, 0x1c, - 0x29, 0xe1, 0x48, 0xc7, 0x7c, 0xe5, 0x26, 0xc3, 0xd2, 0x61, 0xd0, 0x33, 0xef, 0x61, 0xc4, 0x11, - 0x9d, 0xc0, 0xe4, 0x3a, 0xc6, 0xe6, 0x56, 0x0d, 0x6c, 0xd5, 0x19, 0x5c, 0xa2, 0x61, 0x5e, 0xd0, - 0xb1, 0x9e, 0x63, 0x36, 0x0d, 0xd8, 0xf2, 0x32, 0x2e, 0xcc, 0xb5, 0x9d, 0x9d, 0xae, 0xa6, 0x34, - 0x7e, 0x1c, 0x4d, 0x69, 0xe2, 0x48, 0x4d, 0x69, 0x15, 0x87, 0xca, 0xc0, 0x78, 0x47, 0x71, 0xdb, - 0xdb, 0x90, 0x8d, 0x49, 0x39, 0x51, 0x16, 0x0b, 0x92, 0xc3, 0xd8, 0xcd, 0x57, 0x0a, 0xcc, 0xed, - 0x19, 0x87, 0x6b, 0x46, 0x61, 0x81, 0x93, 0x03, 0x16, 0xbb, 0x8e, 0x23, 0x1d, 0x81, 0x76, 0x32, - 0xf1, 0x11, 0x34, 0xdd, 0xac, 0x75, 0x1e, 0xc9, 0x29, 0x3c, 0xda, 0xd0, 0x2a, 0x75, 0x2f, 0x61, - 0xc5, 0x62, 0xde, 0x77, 0x0d, 0xc5, 0x6e, 0x62, 0xa9, 0x37, 0x8a, 0xc3, 0xd8, 0xdf, 0x0e, 0x84, - 0x46, 0xa5, 0x60, 0xf2, 0x9f, 0x08, 0x8f, 0x75, 0x66, 0x07, 0x59, 0xc5, 0xa3, 0x06, 0x83, 0x2a, - 0x8d, 0x8a, 0x76, 0x7b, 0xf9, 0x10, 0xd9, 0xa5, 0x08, 0x04, 0x72, 0x11, 0x07, 0xc5, 0x40, 0x1f, - 0xf5, 0x71, 0xac, 0x68, 0x0f, 0x56, 0xd6, 0x11, 0x72, 0x27, 0xbb, 0x7a, 0xc9, 0x47, 0x78, 0x7c, - 0x89, 0x77, 0xc5, 0xc3, 0x8f, 0x18, 0x33, 0x58, 0x2a, 0x69, 0x46, 0x45, 0x35, 0x4a, 0xed, 0xee, - 0xc9, 0x2b, 0x3b, 0xa4, 0x4c, 0x38, 0xfb, 0xab, 0x25, 0xaf, 0x2b, 0xce, 0xfe, 0x88, 0xf0, 0xe9, - 0xbe, 0x33, 0x05, 0x89, 0xe1, 0xa9, 0x95, 0x6c, 0x5e, 0x55, 0x72, 0x77, 0xd5, 0xe5, 0x0d, 0xe5, - 0x4e, 0x26, 0xaf, 0x2e, 0x65, 0x97, 0x33, 0xf7, 0xd7, 0xf2, 0xd2, 0x08, 0xf9, 0x0d, 0x9e, 0xee, - 0x91, 0x2d, 0x6f, 0x28, 0xea, 0xa2, 0x92, 0xcd, 0xe4, 0xb3, 0x12, 0x22, 0x71, 0x1c, 0xeb, 0x23, - 0x56, 0xb2, 0x77, 0xd7, 0x32, 0x8b, 0x59, 0xc9, 0x47, 0xa6, 0xf1, 0xe9, 0x1e, 0x79, 0x2e, 0x9f, - 0xc9, 0xdf, 0xcf, 0x49, 0x7e, 0x72, 0x06, 0xff, 0xaa, 0x47, 0xa4, 0x64, 0x33, 0x4b, 0x52, 0x80, - 0x5c, 0xc0, 0x89, 0x7d, 0x82, 0xe5, 0xac, 0xa2, 0xac, 0xae, 0xaf, 0xa8, 0x1b, 0x0b, 0xb7, 0xb3, - 0x8b, 0xf9, 0x9c, 0x34, 0xda, 0x47, 0x6b, 0x41, 0xd9, 0xf8, 0x43, 0x76, 0x5d, 0x28, 0x67, 0xd7, - 0x17, 0xb3, 0x39, 0x29, 0x38, 0xf7, 0x5f, 0x8c, 0xfd, 0x99, 0xbb, 0xab, 0xe4, 0x07, 0x84, 0x83, - 0x62, 0xc2, 0x21, 0x43, 0x0f, 0x43, 0xb1, 0x4b, 0x43, 0x58, 0xb8, 0xa3, 0xe3, 0xdf, 0x51, 0xeb, - 0xab, 0xe8, 0xd5, 0xd2, 0x95, 0xc7, 0x7a, 0x8a, 0x82, 0x5e, 0xb7, 0xa1, 0x0a, 0xf4, 0x61, 0xaa, - 0xa0, 0x51, 0x43, 0x4f, 0xd5, 0x29, 0xd8, 0xbf, 0x6b, 0x00, 0x4d, 0x19, 0x66, 0xca, 0xb2, 0xcd, - 0xc7, 0x4d, 0xa1, 0x62, 0xb0, 0x66, 0x6a, 0xcb, 0x36, 0x18, 0x3c, 0x7d, 0xf5, 0xe6, 0x3f, 0xbe, - 0x4c, 0xf2, 0x86, 0xfb, 0x7f, 0x36, 0xdd, 0x4e, 0x00, 0x9a, 0x7e, 0xe2, 0xf5, 0x09, 0xb9, 0xbd, - 0xb9, 0xdd, 0xef, 0xcf, 0x1d, 0x9d, 0x47, 0xb3, 0xe4, 0x7b, 0x84, 0xfd, 0x2b, 0xc0, 0x48, 0x6a, - 0xd0, 0x61, 0x53, 0xb0, 0x95, 0x87, 0x9b, 0x4d, 0x93, 0x4f, 0xd1, 0xf3, 0x2f, 0x7d, 0x0e, 0xdd, - 0x6b, 0xfd, 0xe9, 0x56, 0xcd, 0x9a, 0xc1, 0xcc, 0x0f, 0x31, 0xb6, 0x41, 0x2b, 0x72, 0xc2, 0x37, - 0xc8, 0x7c, 0x3f, 0xc2, 0x07, 0xf0, 0x14, 0x0a, 0xdb, 0xe4, 0x0d, 0xc2, 0x01, 0xa7, 0x2e, 0x89, - 0x3c, 0x70, 0x01, 0x0b, 0xb6, 0xe9, 0x21, 0x0b, 0x3e, 0xf9, 0xe4, 0x58, 0xd8, 0x5e, 0x21, 0x97, - 0x0f, 0xc1, 0x96, 0xfc, 0xc3, 0x87, 0x4f, 0xb8, 0x43, 0x35, 0x19, 0x7e, 0x00, 0x8f, 0xcd, 0x0d, - 0x63, 0xe2, 0xf2, 0xfd, 0xf7, 0x51, 0x33, 0xf9, 0x5e, 0x6c, 0xed, 0x28, 0x99, 0xdc, 0xa3, 0xb9, - 0xed, 0x64, 0xf6, 0x2b, 0x84, 0x83, 0xa2, 0x71, 0x0e, 0x54, 0xcd, 0x5d, 0x3d, 0x36, 0x36, 0x25, - 0x8b, 0x2f, 0x34, 0xb2, 0xf7, 0x85, 0x46, 0xce, 0x56, 0x2d, 0xd6, 0x4c, 0xfe, 0xf5, 0x88, 0x3c, - 0x6f, 0xcd, 0x1e, 0x21, 0x81, 0xe7, 0xd1, 0x6c, 0xac, 0xf2, 0x6c, 0x07, 0xf9, 0xbe, 0xd9, 0x41, - 0x33, 0x07, 0x33, 0x12, 0xaf, 0xd7, 0xdd, 0x1d, 0x84, 0x5a, 0x3b, 0x68, 0xc8, 0x97, 0xf2, 0xd3, - 0xaf, 0xa3, 0x3e, 0x09, 0x2d, 0xfc, 0x0f, 0xbd, 0xb8, 0x39, 0xba, 0xa8, 0xdc, 0x5f, 0x5a, 0x7b, - 0xf9, 0x3a, 0x3e, 0xb2, 0xfb, 0x3a, 0x3e, 0xf2, 0xee, 0x75, 0x1c, 0xfd, 0xad, 0x15, 0x47, 0x9f, - 0xb5, 0xe2, 0xe8, 0x79, 0x2b, 0x8e, 0x5e, 0xb6, 0xe2, 0xe8, 0xdb, 0x56, 0x1c, 0xbd, 0x6d, 0xc5, - 0x47, 0xde, 0xb5, 0xe2, 0xe8, 0x5f, 0x7b, 0xf1, 0x91, 0x67, 0x7b, 0x71, 0xf4, 0x72, 0x2f, 0x3e, - 0xb2, 0xbb, 0x17, 0x1f, 0xf9, 0xd3, 0x83, 0xb2, 0x69, 0x3d, 0x2a, 0xcb, 0x0d, 0xd3, 0x19, 0x86, - 0x6d, 0x4d, 0xae, 0xd3, 0x34, 0x7f, 0x70, 0xfe, 0x25, 0x3a, 0x7e, 0x6a, 0x18, 0x45, 0xb0, 0x53, - 0x9e, 0x38, 0x6d, 0x15, 0xca, 0x66, 0x1a, 0x1e, 0x33, 0xef, 0x9b, 0xd4, 0x07, 0x3f, 0x4d, 0x15, - 0x82, 0x3c, 0x34, 0x97, 0x7f, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x0e, 0xfb, 0xe9, 0xfd, 0xf4, 0x13, - 0x00, 0x00, + // 1640 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcd, 0x6f, 0x1b, 0xc7, + 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb1, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x04, 0x4d, 0x1b, + 0x85, 0x20, 0x94, 0x4b, 0x5b, 0x86, 0x0b, 0x5b, 0x30, 0xec, 0x52, 0x12, 0x25, 0xc8, 0x95, 0x25, + 0x7b, 0x49, 0xcb, 0x6d, 0x2f, 0x8b, 0xe5, 0xf2, 0x91, 0xde, 0x9a, 0xe4, 0x6e, 0x77, 0x86, 0x94, + 0x89, 0x42, 0x40, 0xe1, 0x43, 0x0f, 0xed, 0xa1, 0x05, 0x7a, 0x6a, 0xe1, 0xa2, 0x1f, 0x41, 0x80, + 0xe4, 0x94, 0x43, 0x10, 0x20, 0x80, 0x2e, 0xbe, 0xc5, 0xf0, 0x21, 0x30, 0x92, 0x8b, 0x8e, 0x31, + 0x15, 0x20, 0x3e, 0x1a, 0xfe, 0x07, 0x12, 0xec, 0xcc, 0x2e, 0x4d, 0x52, 0xb4, 0x45, 0xca, 0x72, + 0x4e, 0xdc, 0x99, 0xf7, 0xde, 0x6f, 0xe6, 0xfd, 0xde, 0x07, 0xdf, 0x2e, 0xfe, 0x65, 0x03, 0xa8, + 0x6c, 0x98, 0x69, 0xaa, 0xdf, 0x83, 0xaa, 0x96, 0xa6, 0x60, 0x37, 0x0c, 0x1d, 0x54, 0xcb, 0xac, + 0x18, 0x7a, 0x53, 0xb5, 0xeb, 0x15, 0x48, 0x5b, 0xf5, 0x42, 0xc5, 0xd0, 0x55, 0xdd, 0xae, 0x17, + 0x35, 0xcb, 0x90, 0x2d, 0xdb, 0x64, 0x26, 0x39, 0x23, 0xec, 0x64, 0x61, 0x27, 0xf7, 0xb1, 0x8b, + 0xa5, 0xca, 0x06, 0xbb, 0x57, 0x2f, 0xc8, 0xba, 0x59, 0x4d, 0x97, 0xcd, 0xb2, 0x99, 0xe6, 0x96, + 0x85, 0x7a, 0x89, 0xaf, 0xf8, 0x82, 0x3f, 0x09, 0xc4, 0xd8, 0xe9, 0xb2, 0x69, 0x96, 0x2b, 0x90, + 0xd6, 0x2c, 0x23, 0xad, 0xd5, 0x6a, 0x26, 0xd3, 0x98, 0x61, 0xd6, 0xa8, 0x2b, 0xfd, 0xa9, 0x2b, + 0x6d, 0x63, 0x40, 0xd5, 0x62, 0x4d, 0x57, 0x18, 0xeb, 0x76, 0x02, 0x6c, 0xdb, 0xb4, 0xdb, 0x86, + 0xdd, 0x32, 0xd3, 0xea, 0x44, 0x95, 0x0f, 0xf6, 0xde, 0x2c, 0xfc, 0x1e, 0x74, 0xe6, 0xea, 0xa7, + 0x0e, 0xd6, 0x67, 0x4d, 0x0b, 0x3c, 0xf8, 0xe9, 0x6e, 0xf5, 0x4e, 0x51, 0xb2, 0x5b, 0xd4, 0x00, + 0x0a, 0xb5, 0x46, 0xcf, 0xed, 0x12, 0x3d, 0x3a, 0x06, 0x6c, 0xa9, 0x5d, 0x1a, 0xc9, 0x4f, 0x11, + 0x1e, 0x5f, 0xb4, 0x41, 0x63, 0xa0, 0xc0, 0x1f, 0xea, 0x40, 0x19, 0xb9, 0x8e, 0x43, 0x55, 0x60, + 0x5a, 0x51, 0x63, 0x5a, 0x14, 0x25, 0xd0, 0x4c, 0x64, 0xee, 0xac, 0xdc, 0x1d, 0xaa, 0x0d, 0xee, + 0x90, 0xb0, 0xba, 0x09, 0x4c, 0xcb, 0x37, 0x2d, 0x50, 0xda, 0x46, 0x64, 0x13, 0x07, 0xa8, 0x05, + 0x7a, 0xd4, 0xc7, 0x8d, 0x2f, 0xc8, 0x07, 0xc6, 0x59, 0x16, 0x50, 0x39, 0x0b, 0x74, 0x07, 0x6a, + 0x61, 0xf2, 0x5f, 0xdb, 0x63, 0x0e, 0x82, 0x5c, 0xd6, 0x55, 0xe7, 0x57, 0xe1, 0x78, 0xf3, 0xe1, + 0xa7, 0xd7, 0x82, 0xe2, 0xe8, 0xe4, 0xf7, 0x08, 0x4f, 0x78, 0xb7, 0xa6, 0x96, 0x59, 0xa3, 0x40, + 0xae, 0xee, 0xbb, 0x76, 0xa2, 0xef, 0xb5, 0x57, 0x80, 0xf5, 0xb9, 0xf3, 0x06, 0x9e, 0xa4, 0x4d, + 0xca, 0xa0, 0xaa, 0xb6, 0x41, 0xfc, 0x1c, 0xe4, 0xe7, 0x3d, 0x20, 0x39, 0xae, 0xb5, 0x1f, 0x6a, + 0x42, 0x98, 0xdf, 0xf4, 0x00, 0x73, 0x5d, 0x24, 0xc8, 0x03, 0x90, 0xb0, 0x02, 0x6c, 0x08, 0x06, + 0xbe, 0x43, 0x78, 0x42, 0x01, 0xab, 0xa2, 0xe9, 0xed, 0xc0, 0xfd, 0x6a, 0x1f, 0x03, 0xe7, 0xfa, + 0x32, 0xe0, 0x9a, 0xf5, 0x61, 0xe1, 0x6e, 0xd7, 0xa5, 0xe7, 0x06, 0xb8, 0xb4, 0x8b, 0x75, 0xc0, + 0xc5, 0x49, 0x1a, 0x4b, 0x36, 0x50, 0xb3, 0x6e, 0xeb, 0xa0, 0x36, 0xc0, 0xa6, 0x86, 0x59, 0xe3, + 0xfc, 0x86, 0x17, 0x02, 0x2f, 0x76, 0x10, 0x52, 0x26, 0x3d, 0xe9, 0xa6, 0x10, 0x76, 0x7a, 0x7a, + 0x1c, 0x4f, 0xb6, 0x1d, 0x15, 0xb1, 0x4e, 0xfe, 0x0f, 0x61, 0xbc, 0x02, 0xcc, 0x73, 0xfc, 0x34, + 0x0e, 0xd7, 0xb4, 0x2a, 0x50, 0x4b, 0xd3, 0x81, 0x7b, 0x1e, 0x56, 0x5e, 0x6f, 0x10, 0x82, 0x03, + 0xce, 0x82, 0x3b, 0x15, 0x56, 0xf8, 0x33, 0xd1, 0xb0, 0x73, 0x22, 0x07, 0x53, 0x4b, 0xa6, 0x5d, + 0xd5, 0x18, 0xbf, 0xce, 0xc4, 0xdc, 0xe5, 0xc1, 0x02, 0xe5, 0xdd, 0x64, 0x99, 0xdb, 0x2e, 0x9a, + 0x45, 0x50, 0x26, 0xec, 0xae, 0xbd, 0xe4, 0xc7, 0x41, 0x1c, 0xe9, 0xd0, 0x24, 0xb7, 0x71, 0x44, + 0xe7, 0x19, 0xcb, 0x0f, 0x74, 0x29, 0x3e, 0x3f, 0x70, 0x71, 0xb8, 0xbe, 0x2a, 0x58, 0x80, 0x38, + 0x87, 0x90, 0x3c, 0x1e, 0xb3, 0x05, 0x33, 0x02, 0xd3, 0x3f, 0x70, 0xc1, 0x75, 0x67, 0x8e, 0x12, + 0x71, 0x61, 0x38, 0x6a, 0xbf, 0x58, 0x05, 0xde, 0x12, 0xab, 0xae, 0xca, 0x1b, 0x3d, 0x8a, 0xca, + 0x3b, 0x76, 0x24, 0x95, 0x17, 0x3c, 0xc2, 0xca, 0x23, 0xeb, 0x38, 0x48, 0x99, 0xc6, 0xea, 0x34, + 0xfa, 0xdf, 0x47, 0x28, 0xe1, 0x9f, 0x89, 0xcc, 0xa5, 0x07, 0x00, 0xce, 0x71, 0x13, 0x71, 0xe5, + 0x05, 0xff, 0xe3, 0x6d, 0xa4, 0xb8, 0x28, 0x64, 0x15, 0x1f, 0xb7, 0xa1, 0x04, 0xb6, 0x6d, 0xd4, + 0xca, 0xaa, 0xf8, 0x83, 0xa0, 0xd1, 0x10, 0x07, 0x3e, 0xfd, 0x86, 0xa2, 0x2d, 0x71, 0x6f, 0xa5, + 0xb6, 0x99, 0xd8, 0xa7, 0x64, 0x13, 0x47, 0x8b, 0x50, 0x01, 0x06, 0x45, 0x55, 0xc8, 0xa0, 0xd8, + 0x46, 0x0c, 0x0f, 0x80, 0x38, 0xe5, 0x5a, 0x2b, 0xae, 0xb1, 0x87, 0xfb, 0x1b, 0x3c, 0x5d, 0x34, + 0xa8, 0x56, 0xa8, 0xf4, 0x03, 0xc6, 0x03, 0x00, 0x9f, 0xf2, 0xcc, 0x7b, 0x90, 0x3b, 0x8a, 0xfb, + 0x46, 0x20, 0x84, 0x24, 0x5f, 0xf2, 0x43, 0x84, 0x23, 0x6b, 0x06, 0x1d, 0xb0, 0xa0, 0xcf, 0xe0, + 0xb1, 0x8a, 0x56, 0x80, 0x8a, 0x5a, 0x32, 0x2a, 0x0c, 0x6c, 0xb7, 0xb0, 0x23, 0x7c, 0x6f, 0x99, + 0x6f, 0x91, 0xb3, 0x78, 0xdc, 0x06, 0xcb, 0xb4, 0x99, 0x5a, 0x32, 0xa0, 0x52, 0xa4, 0x51, 0x7f, + 0xc2, 0x3f, 0x13, 0x56, 0xc6, 0xc4, 0xe6, 0x32, 0xdf, 0x23, 0xe7, 0xf1, 0x09, 0x57, 0x49, 0x04, + 0xc5, 0xd3, 0x0d, 0x70, 0x5d, 0x22, 0x64, 0x22, 0x84, 0xc2, 0x22, 0xb9, 0x1b, 0xc4, 0x92, 0xb8, + 0xa7, 0x28, 0xea, 0x55, 0x06, 0x55, 0x32, 0x85, 0x83, 0x0c, 0x6a, 0x5a, 0x8d, 0xf1, 0x8c, 0x0b, + 0x2b, 0xee, 0xea, 0x10, 0x5d, 0x49, 0xc2, 0xfe, 0xba, 0x51, 0x14, 0x8d, 0x51, 0x71, 0x1e, 0x49, + 0x02, 0x47, 0x8a, 0x40, 0x75, 0xdb, 0xe0, 0xff, 0xd9, 0xd1, 0x88, 0xf0, 0xb4, 0x63, 0x8b, 0xc4, + 0x70, 0xc8, 0xa3, 0x39, 0x3a, 0x96, 0x40, 0x33, 0x21, 0xa5, 0xbd, 0x26, 0x77, 0x71, 0x90, 0x93, + 0x22, 0x5c, 0x8a, 0xcc, 0x5d, 0x1f, 0x20, 0x65, 0x7b, 0xdd, 0x93, 0xd7, 0x38, 0x42, 0xb6, 0xc6, + 0xec, 0xa6, 0xe2, 0xc2, 0x91, 0x12, 0x8e, 0x74, 0xcc, 0x57, 0x6e, 0x32, 0x2c, 0x1d, 0x06, 0x3d, + 0xf3, 0x1a, 0x46, 0x1c, 0xd1, 0x09, 0x4c, 0xae, 0x60, 0x6c, 0x6e, 0xd5, 0xc0, 0x56, 0x9d, 0xc1, + 0x25, 0x1a, 0xe6, 0x05, 0x1d, 0xeb, 0x39, 0x66, 0xd3, 0x80, 0x2d, 0x2f, 0xe3, 0xc2, 0x5c, 0xdb, + 0xd9, 0xe9, 0x6a, 0x4a, 0xe3, 0x47, 0xd1, 0x94, 0x26, 0xde, 0xa9, 0x29, 0xad, 0xe2, 0x50, 0x19, + 0x18, 0xef, 0x28, 0x6e, 0x7b, 0x1b, 0xb2, 0x31, 0x29, 0xc7, 0xca, 0x62, 0x41, 0x72, 0x18, 0xbb, + 0xf9, 0x4a, 0x81, 0xb9, 0x3d, 0xe3, 0x70, 0xcd, 0x28, 0x2c, 0x70, 0x72, 0xc0, 0x62, 0x57, 0x70, + 0xa4, 0x23, 0xd0, 0x4e, 0x26, 0xde, 0x87, 0xa6, 0x9b, 0xb5, 0xce, 0x23, 0x39, 0x81, 0x47, 0x1b, + 0x5a, 0xa5, 0xee, 0x25, 0xac, 0x58, 0xcc, 0xfb, 0x2e, 0xa3, 0xd8, 0x35, 0x2c, 0xf5, 0x46, 0x71, + 0x18, 0xfb, 0x1b, 0x81, 0xd0, 0xa8, 0x14, 0x4c, 0xfe, 0x15, 0xe1, 0xb1, 0xce, 0xec, 0x20, 0xab, + 0x78, 0xd4, 0x60, 0x50, 0xa5, 0x51, 0xd1, 0x6e, 0x2f, 0x1e, 0x22, 0xbb, 0x14, 0x81, 0x40, 0xce, + 0xe3, 0xa0, 0x18, 0xe8, 0xa3, 0x3e, 0x8e, 0x15, 0xed, 0xc1, 0xca, 0x3a, 0x42, 0x4e, 0xb2, 0xab, + 0x97, 0xbc, 0x8f, 0xc7, 0x97, 0x78, 0x57, 0x3c, 0xfc, 0x88, 0x31, 0x83, 0xa5, 0x92, 0x66, 0x54, + 0x54, 0xa3, 0xd4, 0xee, 0x9e, 0xbc, 0xb2, 0x43, 0xca, 0x84, 0xb3, 0xbf, 0x5a, 0xf2, 0xba, 0xe2, + 0xec, 0x2b, 0x84, 0x4f, 0xf6, 0x9d, 0x29, 0x48, 0x0c, 0x4f, 0xad, 0x64, 0xf3, 0xaa, 0x92, 0xbb, + 0xa5, 0x2e, 0x6f, 0x28, 0x37, 0x33, 0x79, 0x75, 0x29, 0xbb, 0x9c, 0xb9, 0xb3, 0x96, 0x97, 0x46, + 0xc8, 0xcf, 0xf0, 0x74, 0x8f, 0x6c, 0x79, 0x43, 0x51, 0x17, 0x95, 0x6c, 0x26, 0x9f, 0x95, 0x10, + 0x89, 0xe3, 0x58, 0x1f, 0xb1, 0x92, 0xbd, 0xb5, 0x96, 0x59, 0xcc, 0x4a, 0x3e, 0x32, 0x8d, 0x4f, + 0xf6, 0xc8, 0x73, 0xf9, 0x4c, 0xfe, 0x4e, 0x4e, 0xf2, 0x93, 0x53, 0xf8, 0x27, 0x3d, 0x22, 0x25, + 0x9b, 0x59, 0x92, 0x02, 0xe4, 0x1c, 0x4e, 0xec, 0x13, 0x2c, 0x67, 0x15, 0x65, 0x75, 0x7d, 0x45, + 0xdd, 0x58, 0xb8, 0x91, 0x5d, 0xcc, 0xe7, 0xa4, 0xd1, 0x3e, 0x5a, 0x0b, 0xca, 0xc6, 0xaf, 0xb3, + 0xeb, 0x42, 0x39, 0xbb, 0xbe, 0x98, 0xcd, 0x49, 0xc1, 0xb9, 0xcf, 0x22, 0xd8, 0x9f, 0xb9, 0xb5, + 0x4a, 0xfe, 0xe6, 0xc3, 0x41, 0x31, 0xe1, 0x90, 0xa1, 0x87, 0xa1, 0xd8, 0x85, 0x21, 0x2c, 0xdc, + 0xd1, 0xf1, 0x3f, 0xa8, 0xf5, 0x45, 0x34, 0x5f, 0xba, 0xf4, 0x40, 0x4f, 0x51, 0xd0, 0xeb, 0x36, + 0x54, 0x81, 0xde, 0x4b, 0x15, 0x34, 0x6a, 0xe8, 0xa9, 0x3a, 0x05, 0xfb, 0x17, 0xbd, 0x22, 0xca, + 0xb4, 0x5a, 0x51, 0xb3, 0x8b, 0x42, 0xda, 0x00, 0x9a, 0x32, 0xcc, 0x94, 0x65, 0x9b, 0x0f, 0x9a, + 0x42, 0xcb, 0x60, 0xcd, 0xd4, 0x96, 0x6d, 0x30, 0x78, 0xf8, 0xf5, 0xb7, 0xff, 0xf0, 0x65, 0x92, + 0x57, 0xdd, 0xb7, 0xdd, 0x74, 0x3b, 0x3d, 0x68, 0xfa, 0x8f, 0x5e, 0x17, 0x91, 0xdb, 0x9b, 0xdb, + 0xfd, 0x5e, 0xfd, 0xe8, 0x3c, 0x9a, 0x25, 0x7f, 0xf1, 0x61, 0xff, 0x0a, 0x30, 0x92, 0x1a, 0x74, + 0x14, 0x15, 0x5c, 0xc8, 0xc3, 0x4d, 0xae, 0xc9, 0x0f, 0xd0, 0x93, 0xcf, 0x7d, 0x0e, 0x19, 0xbf, + 0xed, 0x4f, 0x46, 0xd5, 0xac, 0x19, 0xcc, 0x7c, 0x0b, 0x1f, 0x9e, 0x42, 0x7f, 0x4a, 0x6c, 0xd0, + 0x8a, 0x9c, 0x91, 0xab, 0x64, 0xbe, 0x1f, 0x23, 0x07, 0x10, 0x21, 0x14, 0xb6, 0xc9, 0x9f, 0x7d, + 0x38, 0xe0, 0x94, 0x35, 0x91, 0x07, 0xae, 0x7f, 0x41, 0x47, 0x7a, 0xc8, 0x7e, 0x91, 0x7c, 0xf4, + 0x23, 0xf1, 0x71, 0x89, 0x5c, 0x3c, 0x04, 0x1f, 0xe4, 0xff, 0x3e, 0x7c, 0xcc, 0x9d, 0xda, 0xc9, + 0xf0, 0x13, 0x7e, 0x6c, 0x6e, 0x18, 0x13, 0x97, 0x91, 0x4f, 0xde, 0x6f, 0xa9, 0xdc, 0x8e, 0xad, + 0xbd, 0x4b, 0xa9, 0xf4, 0x68, 0x6e, 0x3b, 0xa5, 0xf3, 0x0a, 0xe1, 0xa0, 0xe8, 0xdb, 0x03, 0x35, + 0x93, 0xae, 0x16, 0x1f, 0x9b, 0x92, 0xc5, 0x07, 0x22, 0xd9, 0xfb, 0x40, 0x24, 0x67, 0xab, 0x16, + 0x6b, 0x26, 0xff, 0xfd, 0x7e, 0x69, 0xb8, 0x3e, 0xfb, 0x0e, 0xf5, 0x31, 0x8f, 0x66, 0x63, 0x95, + 0xc7, 0x3b, 0xc8, 0xf7, 0xd5, 0x0e, 0x9a, 0x39, 0xd8, 0x61, 0xf1, 0xe7, 0xbf, 0xbb, 0x83, 0x50, + 0x6b, 0x07, 0x0d, 0x39, 0x32, 0x3c, 0xfc, 0x32, 0xea, 0x93, 0xd0, 0xc2, 0x3f, 0xd1, 0xd3, 0x6b, + 0xa3, 0x8b, 0xca, 0x9d, 0xa5, 0xb5, 0x67, 0xcf, 0xe3, 0x23, 0xbb, 0xcf, 0xe3, 0x23, 0x2f, 0x9f, + 0xc7, 0xd1, 0x9f, 0x5a, 0x71, 0xf4, 0x51, 0x2b, 0x8e, 0x9e, 0xb4, 0xe2, 0xe8, 0x59, 0x2b, 0x8e, + 0xbe, 0x69, 0xc5, 0xd1, 0x8b, 0x56, 0x7c, 0xe4, 0x65, 0x2b, 0x8e, 0xfe, 0xbe, 0x17, 0x1f, 0x79, + 0xbc, 0x17, 0x47, 0xcf, 0xf6, 0xe2, 0x23, 0xbb, 0x7b, 0xf1, 0x91, 0xdf, 0xdd, 0x2d, 0x9b, 0xd6, + 0xfd, 0xb2, 0xdc, 0x30, 0x9d, 0x51, 0xdd, 0xd6, 0xe4, 0x3a, 0x4d, 0xf3, 0x07, 0xe7, 0x1d, 0xd6, + 0xe1, 0xa9, 0x61, 0x14, 0xc1, 0x4e, 0x79, 0xe2, 0xb4, 0x55, 0x28, 0x9b, 0x69, 0x78, 0xc0, 0xbc, + 0x2f, 0x66, 0x6f, 0xfc, 0x70, 0x56, 0x08, 0xf2, 0xc8, 0x5d, 0xfc, 0x21, 0x00, 0x00, 0xff, 0xff, + 0x4e, 0x66, 0xcd, 0x81, 0x92, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/service_policy_rule/public_crudapi.vesapi.go b/pbgo/extschema/schema/service_policy_rule/public_crudapi.vesapi.go index fd6e3d399..943b7a085 100644 --- a/pbgo/extschema/schema/service_policy_rule/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/service_policy_rule/public_crudapi.vesapi.go @@ -2584,14 +2584,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -3424,6 +3424,47 @@ var APISwaggerJSON string = `{ "x-displayname": "Rule Action", "x-ves-proto-enum": "ves.io.schema.policy.RuleAction" }, + "policySegmentPolicyType": { + "type": "object", + "description": "Configure source and destination segment for policy", + "title": "Segment Choice", + "x-displayname": "Configure Segments", + "x-ves-oneof-field-dst_segment_choice": "[\"dst_any\",\"dst_segments\",\"intra_segment\"]", + "x-ves-oneof-field-src_segment_choice": "[\"src_any\",\"src_segments\"]", + "x-ves-proto-message": "ves.io.schema.policy.SegmentPolicyType", + "properties": { + "dst_any": { + "description": "Exclusive with [dst_segments intra_segment]\n Traffic is not matched against any segment", + "title": "Any segment", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any" + }, + "dst_segments": { + "description": "Exclusive with [dst_any intra_segment]\n Traffic is matched against destination segment in selected segments", + "title": "List of segments", + "$ref": "#/definitions/viewsSegmentRefList", + "x-displayname": "Segments" + }, + "intra_segment": { + "description": "Exclusive with [dst_any dst_segments]\n Traffic is matched for source and destination on the same segment", + "title": "Intra Segment Policy", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Intra Segment" + }, + "src_any": { + "description": "Exclusive with [src_segments]\n Traffic is not matched against any segment", + "title": "Any segment", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any" + }, + "src_segments": { + "description": "Exclusive with [src_any]\n Source traffic is matched against selected segments", + "title": "List of segments", + "$ref": "#/definitions/viewsSegmentRefList", + "x-displayname": "Segments" + } + } + }, "policyShapeBotBlockMitigationActionType": { "type": "object", "description": "x-displayName: \"Block bot mitigation\"\nBlock request and respond with custom content.", @@ -4052,7 +4093,7 @@ var APISwaggerJSON string = `{ }, "prefixes": { "type": "array", - "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0./24\"\nx-required\nDestination IPv4 prefixes.", + "description": "x-displayName: \"IPv4 Prefixes\"\nx-example: \"10.0.0.1/24\"\nx-required\nDestination IPv4 prefixes.", "title": "prefixes", "items": { "type": "string" @@ -4139,10 +4180,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4199,10 +4244,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4261,10 +4310,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4995,6 +5048,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyRequestConstraintType", "x-displayname": "Request Constraints" }, + "segment_policy": { + "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", + "$ref": "#/definitions/policySegmentPolicyType", + "x-displayname": "Configure Segments" + }, "tls_fingerprint_matcher": { "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", "$ref": "#/definitions/policyTlsFingerprintMatcherType", @@ -5210,6 +5268,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyRequestConstraintType", "x-displayname": "Request Constraints" }, + "segment_policy": { + "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", + "$ref": "#/definitions/policySegmentPolicyType", + "x-displayname": "Configure Segments" + }, "tls_fingerprint_matcher": { "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", "$ref": "#/definitions/policyTlsFingerprintMatcherType", @@ -5450,6 +5513,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyRequestConstraintType", "x-displayname": "Request Constraints" }, + "segment_policy": { + "description": " Select source and destination segments where rule is applied\n Skip the configuration or set option as Any to ignore corresponding segment match", + "$ref": "#/definitions/policySegmentPolicyType", + "x-displayname": "Configure Segments" + }, "tls_fingerprint_matcher": { "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", "$ref": "#/definitions/policyTlsFingerprintMatcherType", @@ -5466,6 +5534,52 @@ var APISwaggerJSON string = `{ } } }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + }, "service_policy_ruleCreateRequest": { "type": "object", "description": "This is the input message of the 'Create' RPC", @@ -5810,6 +5924,28 @@ var APISwaggerJSON string = `{ "x-displayname": "Config Object" } } + }, + "viewsSegmentRefList": { + "type": "object", + "description": "List of references to Segments", + "title": "Segment List", + "x-displayname": "Segment List", + "x-ves-proto-message": "ves.io.schema.views.SegmentRefList", + "properties": { + "segments": { + "type": "array", + "description": " Select list of segments\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segments", + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Segments", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } } }, "x-displayname": "Service Policy Rule", diff --git a/pbgo/extschema/schema/service_policy_rule/types.pb.go b/pbgo/extschema/schema/service_policy_rule/types.pb.go index 5940782c2..98002aae4 100644 --- a/pbgo/extschema/schema/service_policy_rule/types.pb.go +++ b/pbgo/extschema/schema/service_policy_rule/types.pb.go @@ -309,11 +309,17 @@ type GlobalSpecType struct { // x-displayName: "OpenAPI Validation Action" // OpenAPI validation policy settings to be applied for this request OpenapiValidationAction *policy.OpenApiValidationAction `protobuf:"bytes,65,opt,name=openapi_validation_action,json=openapiValidationAction,proto3" json:"openapi_validation_action,omitempty"` - // Threat Intelligence Action + // Threat Mesh Action // - // x-displayName: "Threat Intelligence Action" - // Specifies how Threat Intelligence is handled - ThreatIntelligenceAction *policy.ModifyAction `protobuf:"bytes,67,opt,name=threat_intelligence_action,json=threatIntelligenceAction,proto3" json:"threat_intelligence_action,omitempty"` + // x-displayName: "Threat Mesh Action" + // Specifies how Threat Mesh is handled + ThreatMeshAction *policy.ModifyAction `protobuf:"bytes,67,opt,name=threat_mesh_action,json=threatMeshAction,proto3" json:"threat_mesh_action,omitempty"` + // Segments + // + // x-displayName: "Configure Segments" + // Select source and destination segments where rule is applied + // Skip the configuration or set option as Any to ignore corresponding segment match + SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,68,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` // Origin Server Subsets Action // // x-displayName: "Origin Server Subsets Action" @@ -853,9 +859,16 @@ func (m *GlobalSpecType) GetOpenapiValidationAction() *policy.OpenApiValidationA return nil } -func (m *GlobalSpecType) GetThreatIntelligenceAction() *policy.ModifyAction { +func (m *GlobalSpecType) GetThreatMeshAction() *policy.ModifyAction { if m != nil { - return m.ThreatIntelligenceAction + return m.ThreatMeshAction + } + return nil +} + +func (m *GlobalSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { + if m != nil { + return m.SegmentPolicy } return nil } @@ -1007,6 +1020,7 @@ type CreateSpecType struct { MumAction *policy.ModifyAction `protobuf:"bytes,60,opt,name=mum_action,json=mumAction,proto3" json:"mum_action,omitempty"` IpReputationAction *policy.ModifyAction `protobuf:"bytes,61,opt,name=ip_reputation_action,json=ipReputationAction,proto3" json:"ip_reputation_action,omitempty"` RequestConstraints *policy.RequestConstraintType `protobuf:"bytes,63,opt,name=request_constraints,json=requestConstraints,proto3" json:"request_constraints,omitempty"` + SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,68,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` OriginServerSubsetsAction map[string]string `protobuf:"bytes,96,rep,name=origin_server_subsets_action,json=originServerSubsetsAction,proto3" json:"origin_server_subsets_action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` JwtClaims []*policy.JWTClaimMatcherType `protobuf:"bytes,97,rep,name=jwt_claims,json=jwtClaims,proto3" json:"jwt_claims,omitempty"` } @@ -1500,6 +1514,13 @@ func (m *CreateSpecType) GetRequestConstraints() *policy.RequestConstraintType { return nil } +func (m *CreateSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { + if m != nil { + return m.SegmentPolicy + } + return nil +} + func (m *CreateSpecType) GetOriginServerSubsetsAction() map[string]string { if m != nil { return m.OriginServerSubsetsAction @@ -1599,6 +1620,7 @@ type ReplaceSpecType struct { MumAction *policy.ModifyAction `protobuf:"bytes,60,opt,name=mum_action,json=mumAction,proto3" json:"mum_action,omitempty"` IpReputationAction *policy.ModifyAction `protobuf:"bytes,61,opt,name=ip_reputation_action,json=ipReputationAction,proto3" json:"ip_reputation_action,omitempty"` RequestConstraints *policy.RequestConstraintType `protobuf:"bytes,63,opt,name=request_constraints,json=requestConstraints,proto3" json:"request_constraints,omitempty"` + SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,68,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` OriginServerSubsetsAction map[string]string `protobuf:"bytes,96,rep,name=origin_server_subsets_action,json=originServerSubsetsAction,proto3" json:"origin_server_subsets_action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` JwtClaims []*policy.JWTClaimMatcherType `protobuf:"bytes,97,rep,name=jwt_claims,json=jwtClaims,proto3" json:"jwt_claims,omitempty"` } @@ -2092,6 +2114,13 @@ func (m *ReplaceSpecType) GetRequestConstraints() *policy.RequestConstraintType return nil } +func (m *ReplaceSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { + if m != nil { + return m.SegmentPolicy + } + return nil +} + func (m *ReplaceSpecType) GetOriginServerSubsetsAction() map[string]string { if m != nil { return m.OriginServerSubsetsAction @@ -2191,6 +2220,7 @@ type GetSpecType struct { MumAction *policy.ModifyAction `protobuf:"bytes,60,opt,name=mum_action,json=mumAction,proto3" json:"mum_action,omitempty"` IpReputationAction *policy.ModifyAction `protobuf:"bytes,61,opt,name=ip_reputation_action,json=ipReputationAction,proto3" json:"ip_reputation_action,omitempty"` RequestConstraints *policy.RequestConstraintType `protobuf:"bytes,63,opt,name=request_constraints,json=requestConstraints,proto3" json:"request_constraints,omitempty"` + SegmentPolicy *policy.SegmentPolicyType `protobuf:"bytes,68,opt,name=segment_policy,json=segmentPolicy,proto3" json:"segment_policy,omitempty"` OriginServerSubsetsAction map[string]string `protobuf:"bytes,96,rep,name=origin_server_subsets_action,json=originServerSubsetsAction,proto3" json:"origin_server_subsets_action,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` JwtClaims []*policy.JWTClaimMatcherType `protobuf:"bytes,97,rep,name=jwt_claims,json=jwtClaims,proto3" json:"jwt_claims,omitempty"` } @@ -2684,6 +2714,13 @@ func (m *GetSpecType) GetRequestConstraints() *policy.RequestConstraintType { return nil } +func (m *GetSpecType) GetSegmentPolicy() *policy.SegmentPolicyType { + if m != nil { + return m.SegmentPolicy + } + return nil +} + func (m *GetSpecType) GetOriginServerSubsetsAction() map[string]string { if m != nil { return m.OriginServerSubsetsAction @@ -3415,235 +3452,237 @@ func init() { } var fileDescriptor_771e54eb594e8c4b = []byte{ - // 3646 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5c, 0x4f, 0x70, 0xdb, 0x46, - 0x77, 0xd7, 0x92, 0x94, 0x44, 0x2d, 0x29, 0x12, 0x82, 0x64, 0x9b, 0x92, 0x65, 0x4a, 0x66, 0x6c, - 0x7f, 0xb2, 0x03, 0x51, 0xe2, 0x1f, 0xc9, 0xb2, 0xbf, 0x2f, 0x76, 0x45, 0xc9, 0xb6, 0xcc, 0x48, - 0xb6, 0x0c, 0xa9, 0xb1, 0x93, 0xc6, 0x65, 0x20, 0x72, 0x45, 0xc2, 0x01, 0x01, 0x18, 0x00, 0xe5, - 0xf0, 0xe0, 0x99, 0x8c, 0x0f, 0x3d, 0xb4, 0x9d, 0x4e, 0xeb, 0x69, 0x2f, 0xbe, 0xf5, 0xd2, 0xe9, - 0xe4, 0xd4, 0x73, 0xe9, 0x83, 0x26, 0x33, 0x9d, 0xc9, 0xf4, 0xa4, 0xa3, 0xa7, 0xd3, 0x43, 0x22, - 0x5f, 0xd2, 0x9b, 0xcf, 0x3e, 0x75, 0xb0, 0xf8, 0x0f, 0x82, 0x34, 0x45, 0xc9, 0x93, 0xcc, 0x37, - 0x3c, 0x45, 0xc4, 0xbe, 0xf7, 0xdb, 0x7d, 0xbb, 0xd8, 0xb7, 0xef, 0xf7, 0x8b, 0x17, 0x70, 0x76, - 0x0f, 0xc9, 0x49, 0x56, 0x98, 0x93, 0x8b, 0x15, 0x54, 0x65, 0xe6, 0x64, 0x24, 0xed, 0xb1, 0x45, - 0x54, 0x10, 0x05, 0x8e, 0x2d, 0xd6, 0x0b, 0x52, 0x8d, 0x43, 0x73, 0x4a, 0x5d, 0x44, 0x72, 0x52, - 0x94, 0x04, 0x45, 0x20, 0xcf, 0x6b, 0xe6, 0x49, 0xcd, 0x3c, 0xe9, 0x61, 0x3e, 0x31, 0x5b, 0x66, - 0x95, 0x4a, 0x6d, 0x27, 0x59, 0x14, 0xaa, 0x73, 0x65, 0xa1, 0x2c, 0xcc, 0x61, 0xcf, 0x9d, 0xda, - 0x2e, 0xfe, 0x85, 0x7f, 0xe0, 0xbf, 0x34, 0xc4, 0x89, 0xa9, 0xb2, 0x20, 0x94, 0x39, 0x64, 0x59, - 0x29, 0x6c, 0x15, 0xc9, 0x0a, 0x53, 0x15, 0x75, 0x83, 0xb3, 0xce, 0x11, 0x0a, 0xa2, 0xc2, 0x0a, - 0xbc, 0x3e, 0x9e, 0x89, 0x69, 0x67, 0xa3, 0x36, 0x0e, 0xfb, 0x88, 0x27, 0xc6, 0x9d, 0x16, 0xf6, - 0xa6, 0x49, 0x67, 0xd3, 0x1e, 0xc3, 0xb1, 0x25, 0x46, 0x41, 0xde, 0xd0, 0x7b, 0x2c, 0x7a, 0x56, - 0x70, 0x76, 0x3e, 0xd5, 0x6c, 0x21, 0xdb, 0x3b, 0x48, 0xfc, 0x74, 0x05, 0x46, 0xee, 0x70, 0xc2, - 0x0e, 0xc3, 0x6d, 0x89, 0xa8, 0xb8, 0x5d, 0x17, 0x11, 0x99, 0x83, 0x03, 0x4c, 0x51, 0x05, 0x89, - 0x81, 0x69, 0x30, 0x13, 0x49, 0x4f, 0x27, 0x9d, 0x33, 0xaa, 0x45, 0x90, 0xa4, 0x6b, 0x1c, 0x5a, - 0xc6, 0x76, 0xb9, 0xe0, 0xff, 0x34, 0x40, 0x60, 0xf5, 0xd6, 0xbd, 0x2f, 0x69, 0xdd, 0x93, 0x5c, - 0x80, 0x90, 0xe1, 0xeb, 0x85, 0x22, 0xc7, 0x22, 0x5e, 0x89, 0x5d, 0x9c, 0x06, 0x33, 0xa1, 0xf4, - 0x98, 0x0b, 0xe7, 0x56, 0x55, 0x54, 0xea, 0x6b, 0x7d, 0xf4, 0x10, 0xc3, 0xd7, 0x57, 0xb0, 0x21, - 0x39, 0x0b, 0x43, 0x9a, 0x4b, 0x81, 0x67, 0xaa, 0x28, 0xe6, 0x9b, 0x06, 0x33, 0x43, 0x39, 0xf8, - 0x9f, 0xff, 0xb7, 0xef, 0xef, 0x97, 0xfc, 0x33, 0xdf, 0xfb, 0xd6, 0xfa, 0x68, 0xa8, 0x19, 0xdc, - 0x63, 0xaa, 0x88, 0xfc, 0x3b, 0x00, 0xcf, 0xb0, 0x62, 0x41, 0xa9, 0x48, 0x88, 0x51, 0x0a, 0x45, - 0x46, 0x41, 0x65, 0x41, 0xaa, 0x17, 0x38, 0x56, 0x56, 0x62, 0x7f, 0xc4, 0x7d, 0xfe, 0x31, 0xf9, - 0xc1, 0xb7, 0x21, 0x79, 0x77, 0x73, 0x1b, 0x03, 0xac, 0xe8, 0xfe, 0xeb, 0xac, 0xac, 0xa8, 0x13, - 0x91, 0x3b, 0x75, 0xf8, 0xf3, 0x7f, 0xf9, 0x89, 0x57, 0xaf, 0x41, 0x58, 0xae, 0x30, 0x12, 0x2a, - 0x51, 0xd3, 0x35, 0x19, 0x49, 0x6b, 0x7d, 0xf4, 0x18, 0x2b, 0x36, 0xbb, 0x90, 0x0f, 0x61, 0x54, - 0x1f, 0xbc, 0x8c, 0x38, 0x54, 0x54, 0x04, 0x29, 0xe6, 0xc7, 0x83, 0x70, 0x4f, 0xe0, 0x3a, 0xb3, - 0x83, 0xb8, 0x2d, 0xdd, 0x06, 0xf7, 0x04, 0x5f, 0xbd, 0x06, 0x03, 0x30, 0x00, 0x7c, 0xfe, 0xc0, - 0x5a, 0x1f, 0x1d, 0xd1, 0x60, 0x0c, 0x0b, 0x72, 0x0b, 0x8e, 0xda, 0x66, 0xa5, 0x50, 0x65, 0x94, - 0x62, 0x05, 0x49, 0x31, 0x88, 0xc1, 0xcf, 0x7b, 0xaf, 0xce, 0x86, 0x66, 0xa4, 0xa2, 0xaf, 0xf5, - 0xd1, 0x23, 0xd6, 0xa4, 0xe9, 0x0d, 0xe4, 0x7d, 0x73, 0xaa, 0x25, 0x81, 0x43, 0xb1, 0x21, 0x0c, - 0x76, 0xb1, 0xc5, 0x52, 0x0b, 0x1c, 0xb2, 0x01, 0xe6, 0x06, 0xdf, 0x3c, 0x07, 0xbf, 0x36, 0x00, - 0x30, 0x16, 0x43, 0x6d, 0x27, 0xbf, 0x82, 0x51, 0x75, 0x76, 0x91, 0x64, 0x85, 0x3f, 0xdb, 0x61, - 0xf8, 0x51, 0x1d, 0xef, 0xd5, 0x6b, 0x10, 0x80, 0x3e, 0xe0, 0xa3, 0x23, 0x1a, 0x92, 0x6d, 0x06, - 0x86, 0x39, 0xd5, 0xcb, 0x8c, 0x3d, 0x80, 0x91, 0xa7, 0xbc, 0x90, 0xed, 0x03, 0x1d, 0x7e, 0xf5, - 0x1a, 0xf4, 0x43, 0x3f, 0xf0, 0xf9, 0xff, 0xe3, 0x35, 0x00, 0x74, 0x98, 0xb3, 0x19, 0x90, 0x37, - 0x61, 0x40, 0x64, 0x94, 0x4a, 0xac, 0xbf, 0x5d, 0xe8, 0x9b, 0x8c, 0x52, 0xb1, 0x23, 0x06, 0x0e, - 0xd4, 0xb8, 0xb1, 0x23, 0xb9, 0x01, 0x07, 0x2b, 0x88, 0x29, 0x21, 0x49, 0x8e, 0x0d, 0x4c, 0xfb, - 0x67, 0x42, 0xe9, 0x3f, 0x78, 0x63, 0xac, 0x61, 0x23, 0x3b, 0x8a, 0xf6, 0x4a, 0xbf, 0x04, 0x3e, - 0x82, 0xa0, 0x0d, 0x0c, 0xf2, 0xaf, 0x61, 0xf8, 0x69, 0x0d, 0x49, 0xf5, 0x82, 0xc8, 0x48, 0x4c, - 0x55, 0x8e, 0x0d, 0x62, 0xcc, 0x39, 0x6f, 0xcc, 0x07, 0xaa, 0xe5, 0xa6, 0x6a, 0x88, 0x94, 0xd6, - 0xd8, 0xa1, 0xa7, 0xa6, 0x99, 0x4c, 0xae, 0xc3, 0x50, 0x45, 0x51, 0xc4, 0x42, 0x15, 0x29, 0x15, - 0xa1, 0x14, 0x0b, 0xe2, 0xb0, 0x3f, 0x6d, 0x31, 0x64, 0x45, 0x11, 0x37, 0xb0, 0x9d, 0x0d, 0x9a, - 0x86, 0x15, 0xf3, 0x31, 0x39, 0x0b, 0x07, 0xd4, 0x1d, 0xce, 0x8a, 0xb1, 0xa9, 0x36, 0xbb, 0x1b, - 0xd0, 0xfd, 0x0c, 0x5f, 0xbf, 0x2b, 0x92, 0x1b, 0x30, 0xc2, 0x8a, 0x05, 0x51, 0x42, 0xbb, 0xec, - 0x77, 0xda, 0x06, 0x9d, 0x6e, 0x3b, 0xed, 0xd8, 0x10, 0xf7, 0xad, 0xee, 0xad, 0x35, 0x40, 0x87, - 0x59, 0x51, 0x7b, 0x88, 0xf7, 0xda, 0x2a, 0x84, 0xac, 0x68, 0xbe, 0x0d, 0x61, 0x0c, 0xf5, 0x89, - 0x37, 0xd4, 0x5d, 0xd1, 0xbe, 0x17, 0x00, 0x3d, 0xc4, 0x1a, 0x0f, 0xc8, 0xcf, 0xb4, 0x2c, 0x55, - 0x92, 0x15, 0x35, 0x8e, 0xcb, 0xad, 0xe3, 0x30, 0xdf, 0xf8, 0x35, 0x1f, 0x1d, 0x64, 0xf8, 0xfa, - 0xaa, 0xac, 0xdc, 0x15, 0xc9, 0xc7, 0x90, 0xd4, 0x5c, 0x1d, 0x71, 0x5d, 0x39, 0x42, 0x5c, 0x76, - 0xdc, 0x68, 0x49, 0x05, 0xb5, 0xc5, 0xb8, 0x0d, 0x23, 0x3a, 0xbc, 0x11, 0xe7, 0xa7, 0x1d, 0xc7, - 0x69, 0x07, 0x0e, 0x63, 0x60, 0x23, 0xe6, 0x39, 0x38, 0xa8, 0xc6, 0xcc, 0xc8, 0x7c, 0x2c, 0xd1, - 0x66, 0xe1, 0xfc, 0xb4, 0xba, 0xbc, 0xcb, 0x32, 0x4f, 0xde, 0x84, 0x41, 0x46, 0xe6, 0xb5, 0xd8, - 0x3e, 0xc1, 0x1e, 0x09, 0xef, 0x01, 0x2c, 0xcb, 0xbc, 0xb5, 0x60, 0x7e, 0x7a, 0x90, 0x91, 0x79, - 0x1c, 0xc7, 0x1d, 0x18, 0x52, 0x01, 0x8c, 0x20, 0x86, 0x31, 0xc6, 0x85, 0xf6, 0x18, 0xfa, 0x6a, - 0xf9, 0x69, 0xc8, 0x98, 0x4f, 0xc8, 0x9b, 0x30, 0x64, 0x2c, 0x97, 0x3a, 0xfc, 0x4c, 0x27, 0xeb, - 0x15, 0xc0, 0xc7, 0xcb, 0xaa, 0xac, 0xa8, 0xa1, 0xdc, 0x87, 0x61, 0xdd, 0x59, 0x0b, 0x27, 0xdb, - 0x69, 0x38, 0x76, 0x3c, 0x58, 0xc2, 0x60, 0x46, 0xca, 0x37, 0x00, 0x8d, 0xf0, 0x16, 0x3a, 0x0f, - 0xcf, 0x8e, 0x3a, 0xac, 0xa1, 0x1a, 0xa1, 0xf2, 0x70, 0x84, 0x11, 0xd9, 0x42, 0x59, 0x12, 0x6a, - 0xd6, 0xf2, 0x47, 0x30, 0x74, 0x8b, 0x24, 0xb3, 0xa5, 0x48, 0x2c, 0x5f, 0xb6, 0xa3, 0x8f, 0xab, - 0xa9, 0xca, 0xf3, 0x08, 0xa3, 0xa3, 0x8c, 0xc8, 0xde, 0x51, 0xb1, 0x8d, 0xfe, 0x9e, 0xc3, 0x73, - 0x4c, 0xa9, 0xc4, 0xaa, 0x67, 0x37, 0xc3, 0x15, 0x9a, 0xba, 0x96, 0x63, 0xb9, 0x76, 0x09, 0xae, - 0xb9, 0xef, 0x11, 0x3d, 0x32, 0x33, 0x17, 0x05, 0xe8, 0x09, 0xab, 0x83, 0x65, 0x67, 0xef, 0x32, - 0x49, 0xc3, 0xb0, 0x28, 0x48, 0x8a, 0x19, 0x69, 0xb4, 0xed, 0x1e, 0x12, 0x24, 0xc5, 0xde, 0x57, - 0x70, 0xbf, 0x01, 0x00, 0x4e, 0xcb, 0x21, 0xd1, 0x6a, 0x22, 0xb7, 0xe0, 0x18, 0xfa, 0x4e, 0x64, - 0x25, 0x46, 0xed, 0xb3, 0x60, 0x96, 0x6c, 0x31, 0x02, 0x63, 0x4f, 0x24, 0xb5, 0xa2, 0x2e, 0x69, - 0x14, 0x75, 0xc9, 0x6d, 0xc3, 0x22, 0x17, 0x50, 0x01, 0xe9, 0x51, 0xcb, 0xdb, 0x6c, 0x22, 0xf3, - 0x30, 0xbc, 0x23, 0x94, 0xea, 0xe6, 0x40, 0x4f, 0x75, 0x78, 0x06, 0xeb, 0x98, 0x21, 0xd5, 0xd9, - 0x18, 0xe0, 0x43, 0x18, 0x66, 0xa4, 0xb2, 0x35, 0xc5, 0x24, 0x9e, 0xe2, 0x56, 0x6f, 0x8e, 0xe4, - 0x98, 0xdf, 0xc8, 0xbe, 0x7d, 0x72, 0x09, 0x3a, 0xc4, 0x98, 0xed, 0x32, 0xf9, 0x0d, 0x8c, 0x16, - 0x05, 0xe1, 0x5b, 0x16, 0x59, 0xd8, 0xa3, 0xed, 0x96, 0x6f, 0x05, 0x1b, 0xb7, 0x83, 0x8f, 0x14, - 0xed, 0x26, 0x32, 0xb9, 0x06, 0xe1, 0x33, 0x66, 0xb7, 0xa0, 0x97, 0x89, 0x63, 0x9e, 0x87, 0xb1, - 0x0e, 0xfe, 0x90, 0xd9, 0x35, 0xaa, 0x44, 0x15, 0xf4, 0x9d, 0x3a, 0x0d, 0x43, 0xcf, 0x8c, 0x87, - 0xe4, 0x1a, 0x8c, 0x94, 0x84, 0x2a, 0xc3, 0x5a, 0x1b, 0xe8, 0x74, 0x87, 0x53, 0x4a, 0x0f, 0x6b, - 0x8e, 0xc6, 0x74, 0x32, 0x30, 0x2c, 0x31, 0x0a, 0x2a, 0x70, 0x6c, 0x95, 0x55, 0x90, 0x14, 0x3b, - 0x83, 0x43, 0x9e, 0x74, 0xe1, 0xdc, 0xdf, 0x79, 0x82, 0x8a, 0x0a, 0x8d, 0x76, 0x71, 0x9c, 0xd3, - 0x3f, 0x3c, 0x77, 0x38, 0xb9, 0xdf, 0x5a, 0x1f, 0x1d, 0x52, 0x9b, 0xd7, 0xb5, 0x56, 0xf2, 0x6b, - 0x38, 0xb6, 0xc7, 0x4a, 0x4a, 0x8d, 0xe1, 0x0a, 0x15, 0x41, 0xb6, 0x5e, 0xd7, 0x58, 0xa7, 0x6f, - 0x81, 0x59, 0x38, 0x91, 0x3a, 0xce, 0x9a, 0x20, 0x9b, 0x2f, 0xec, 0xdf, 0x00, 0x78, 0x46, 0xe1, - 0xe4, 0xc2, 0x2e, 0xcb, 0x97, 0x91, 0x24, 0x4a, 0x2c, 0x6f, 0xf5, 0x30, 0x8e, 0x7b, 0x68, 0x51, - 0x0b, 0x6c, 0x73, 0xf2, 0x6d, 0xcb, 0xc7, 0xde, 0xdf, 0x39, 0x63, 0x6b, 0x78, 0xa7, 0x81, 0x53, - 0x8a, 0x97, 0x27, 0x59, 0x85, 0xc4, 0xae, 0x20, 0x3d, 0x63, 0xa4, 0x12, 0xcb, 0x97, 0x0b, 0x45, - 0x8e, 0x91, 0xe5, 0xd8, 0x44, 0x07, 0xb3, 0x79, 0xe1, 0x87, 0xe7, 0x4d, 0x8e, 0xee, 0x19, 0xf5, - 0xd3, 0x51, 0xcb, 0x64, 0x45, 0xb5, 0x20, 0xcb, 0x70, 0x00, 0xc3, 0xa1, 0xd8, 0xa5, 0x69, 0xff, - 0xcc, 0x50, 0xee, 0xbe, 0xcd, 0x67, 0xee, 0x25, 0xa0, 0x12, 0x57, 0xa4, 0x19, 0xfa, 0xd2, 0x5f, - 0x25, 0x96, 0xef, 0x7d, 0x99, 0xa0, 0xa6, 0x13, 0x6b, 0xdb, 0xdb, 0x9b, 0xc6, 0x7f, 0xb7, 0xd4, - 0x3f, 0xb6, 0x57, 0xf0, 0xef, 0xed, 0xf5, 0xad, 0xc4, 0x63, 0x2b, 0xdf, 0x18, 0x7f, 0xc5, 0x00, - 0xad, 0xc3, 0x93, 0xf7, 0x60, 0xa8, 0x26, 0x59, 0x35, 0xe4, 0x1f, 0xda, 0x65, 0xea, 0xbf, 0xa4, - 0xd7, 0xbd, 0x2b, 0xde, 0x9a, 0x64, 0x16, 0x90, 0x8f, 0x60, 0x94, 0xcb, 0x16, 0x4a, 0xc8, 0xf6, - 0x26, 0x50, 0xed, 0x52, 0xf4, 0x7a, 0x76, 0x15, 0xc9, 0x8a, 0x27, 0xec, 0x30, 0x67, 0x6f, 0x23, - 0xbf, 0x84, 0x44, 0xb1, 0xc2, 0x70, 0x1c, 0xe2, 0xcb, 0xc8, 0xd8, 0x65, 0x8b, 0x98, 0x8c, 0xb5, - 0xc8, 0x89, 0x2b, 0x86, 0xb5, 0xbe, 0xd7, 0x4c, 0xe0, 0x68, 0xd1, 0xd9, 0x42, 0x32, 0x30, 0x54, - 0x16, 0x14, 0x41, 0x67, 0x40, 0xb1, 0xab, 0x1d, 0xac, 0x6b, 0xe2, 0x87, 0xe7, 0x11, 0x27, 0x71, - 0x72, 0xaf, 0x2a, 0xa0, 0xa1, 0x0a, 0xba, 0x89, 0x1b, 0x49, 0x16, 0x9e, 0x2e, 0x0a, 0xbc, 0x82, - 0xb9, 0x05, 0x7a, 0x26, 0xb1, 0x8a, 0x19, 0xc3, 0x12, 0x9e, 0x9e, 0x2b, 0xad, 0xd2, 0x10, 0xf6, - 0xa1, 0x35, 0x17, 0x77, 0x20, 0x63, 0x45, 0x8f, 0x66, 0xf2, 0x05, 0x80, 0x53, 0x72, 0x85, 0x11, - 0x51, 0x41, 0xcd, 0xe3, 0xa8, 0xa8, 0xa0, 0x52, 0x01, 0xf1, 0x25, 0x51, 0x50, 0x37, 0x8f, 0xde, - 0xe9, 0x35, 0xdc, 0x69, 0xba, 0xc5, 0xd1, 0xa5, 0x3a, 0x6f, 0x1a, 0xbe, 0xb7, 0x74, 0x57, 0x77, - 0xe7, 0x93, 0x72, 0x1b, 0x33, 0x35, 0x1b, 0xee, 0x08, 0x66, 0x77, 0xd7, 0xdb, 0x65, 0xc3, 0x9c, - 0xa0, 0x34, 0x67, 0xc3, 0x1d, 0xe3, 0x21, 0xf9, 0x39, 0x84, 0xd5, 0x5a, 0xd5, 0x40, 0xfa, 0x53, - 0xbb, 0xf2, 0x64, 0x43, 0x28, 0xb1, 0xbb, 0x75, 0x3b, 0x18, 0xa6, 0x38, 0x43, 0xd5, 0x5a, 0x55, - 0x07, 0x7b, 0x0c, 0xc7, 0x58, 0xb1, 0x20, 0x21, 0xb1, 0xa6, 0x68, 0x67, 0xa0, 0x0e, 0xfb, 0x59, - 0xc7, 0xb0, 0x56, 0xba, 0x62, 0x45, 0xda, 0xc4, 0xd1, 0xe1, 0xbf, 0x82, 0xa7, 0xd4, 0x24, 0x52, - 0x60, 0x4b, 0x88, 0x57, 0x58, 0xc5, 0x3a, 0x13, 0x6f, 0x60, 0xfc, 0x4b, 0x1f, 0xce, 0x86, 0x8c, - 0xcc, 0x16, 0xe9, 0x51, 0x15, 0xe4, 0xae, 0x8e, 0x61, 0xbc, 0xff, 0x3b, 0x70, 0x54, 0x42, 0x4f, - 0x6b, 0xea, 0xce, 0x2a, 0x0a, 0xbc, 0xac, 0x48, 0x0c, 0xcb, 0x2b, 0x72, 0xec, 0x66, 0x3b, 0xca, - 0x42, 0x6b, 0x0e, 0x2b, 0xa6, 0xbd, 0x8d, 0xaf, 0x91, 0x92, 0xbb, 0x51, 0x26, 0x1f, 0x43, 0xa2, - 0x2c, 0x31, 0x62, 0xe5, 0x29, 0x57, 0x90, 0x91, 0xa2, 0xb0, 0x7c, 0x59, 0x8e, 0xfd, 0x05, 0xee, - 0xe0, 0xb2, 0x77, 0x07, 0x77, 0x54, 0xeb, 0x07, 0xeb, 0x5b, 0xba, 0xb1, 0x73, 0x03, 0x47, 0x75, - 0x2c, 0xa3, 0x95, 0x94, 0xe0, 0xb8, 0x20, 0x22, 0x5e, 0x2d, 0xa5, 0x74, 0xd5, 0xc6, 0xb6, 0x04, - 0xcb, 0xb8, 0x9f, 0x59, 0xef, 0x7e, 0xee, 0x8b, 0x88, 0x5f, 0x16, 0xd9, 0x2f, 0x4c, 0x2f, 0xf7, - 0x6a, 0x9c, 0xd1, 0x81, 0xdd, 0x16, 0x24, 0x0b, 0x27, 0x74, 0x2d, 0x84, 0xe5, 0x15, 0xc4, 0x71, - 0x6c, 0x19, 0xf1, 0x45, 0x73, 0xf3, 0xad, 0x1c, 0x7d, 0xdd, 0x63, 0x1a, 0xdc, 0x5d, 0x1b, 0x9a, - 0xde, 0xd5, 0x2b, 0x00, 0x27, 0x05, 0x89, 0x2d, 0xb3, 0x7c, 0xc1, 0x60, 0xfd, 0xb5, 0x1d, 0x19, - 0x29, 0xb2, 0xd1, 0xdb, 0x37, 0x38, 0xb1, 0x6c, 0x76, 0xa0, 0xbf, 0x38, 0xe5, 0xa7, 0xe4, 0x7d, - 0x8c, 0xba, 0xa5, 0x09, 0x00, 0x1a, 0xa6, 0xd6, 0xe7, 0x2d, 0x5e, 0x91, 0xac, 0xca, 0x9e, 0x1e, - 0x17, 0x5a, 0x19, 0x92, 0x8f, 0x20, 0x7c, 0xf2, 0x4c, 0x51, 0x0f, 0x20, 0xb6, 0x2a, 0xc7, 0x18, - 0x3c, 0x92, 0x16, 0x8b, 0x9a, 0x7f, 0xb8, 0xbd, 0xa2, 0x9a, 0xb5, 0xab, 0x7e, 0x86, 0x9e, 0x3c, - 0x53, 0xb0, 0x91, 0x3c, 0xb1, 0x0e, 0xe3, 0xed, 0xc7, 0x47, 0x12, 0xd0, 0xff, 0x2d, 0xaa, 0x63, - 0xe9, 0x6c, 0x88, 0x56, 0xff, 0x24, 0xc7, 0x60, 0xff, 0x1e, 0xc3, 0xd5, 0x74, 0x39, 0x8b, 0xd6, - 0x7e, 0x5c, 0xf7, 0x2d, 0x81, 0xeb, 0xff, 0x06, 0x7e, 0x6c, 0x80, 0x7f, 0x05, 0x70, 0x0c, 0x0e, - 0xe8, 0x23, 0x87, 0x29, 0x2a, 0x3d, 0x4f, 0x2d, 0x2c, 0x51, 0x8b, 0xf3, 0xf0, 0x34, 0x1c, 0xd4, - 0x64, 0x31, 0x99, 0x0c, 0x65, 0x16, 0xa9, 0xcc, 0x3c, 0x95, 0xc9, 0x50, 0xe9, 0x05, 0x48, 0xc0, - 0x41, 0xad, 0x77, 0x99, 0xec, 0x4f, 0xa7, 0xa9, 0xd4, 0x02, 0xbc, 0x00, 0x87, 0xf5, 0xb7, 0x7f, - 0x1a, 0xc7, 0x41, 0x8e, 0x2e, 0x51, 0x0b, 0xd4, 0x55, 0x6a, 0x91, 0xba, 0x76, 0x95, 0x4a, 0x5d, - 0xa3, 0x52, 0x4b, 0x54, 0x3a, 0x05, 0xcf, 0xc2, 0x51, 0xc3, 0xca, 0xbe, 0x0f, 0x7c, 0x8b, 0x99, - 0x19, 0x00, 0x27, 0x61, 0x64, 0xb9, 0xb4, 0xc7, 0xf0, 0x45, 0x54, 0xd2, 0x31, 0x60, 0x96, 0x4a, - 0x65, 0xa9, 0xd4, 0x22, 0xb5, 0x98, 0xce, 0x5d, 0x86, 0xc3, 0xba, 0x58, 0x54, 0xac, 0x08, 0x6c, - 0x11, 0x91, 0xb1, 0xfd, 0x06, 0xb8, 0x78, 0xd0, 0x00, 0x17, 0x0e, 0x1b, 0x20, 0x9c, 0xb9, 0x4a, - 0xa5, 0xa9, 0xd4, 0x3c, 0xb5, 0x70, 0x8d, 0xca, 0xe4, 0x2e, 0xc2, 0x21, 0x56, 0xb4, 0x9b, 0x4d, - 0xfd, 0xa4, 0xd5, 0x20, 0xf1, 0xc3, 0x06, 0x08, 0x66, 0x52, 0x54, 0x26, 0x4d, 0xa5, 0xd2, 0xb9, - 0x59, 0x38, 0xac, 0x93, 0x5b, 0xdd, 0x74, 0x72, 0xbf, 0x01, 0x2e, 0xeb, 0xa6, 0x33, 0xaa, 0x69, - 0x36, 0x45, 0x65, 0xd3, 0x54, 0x36, 0xa3, 0xe6, 0xc8, 0xdc, 0x22, 0x54, 0x89, 0xa0, 0x61, 0x3b, - 0xb3, 0xdf, 0x00, 0x09, 0xdd, 0xf6, 0x3c, 0x86, 0xcd, 0x52, 0x99, 0x05, 0x2a, 0x95, 0x79, 0xe1, - 0xaa, 0x70, 0x72, 0x49, 0x8d, 0x43, 0xdb, 0x7c, 0xd5, 0x7e, 0x32, 0xba, 0x6f, 0x5a, 0xf5, 0x5d, - 0x48, 0x51, 0x0b, 0x69, 0x6a, 0x01, 0xf7, 0x93, 0x0f, 0x04, 0x2f, 0x10, 0x17, 0xf3, 0x81, 0x60, - 0x88, 0x08, 0xe7, 0x03, 0xc1, 0x38, 0x31, 0x95, 0x0f, 0x04, 0x67, 0x88, 0xcb, 0xf9, 0x40, 0xf0, - 0x3c, 0x91, 0xc8, 0x07, 0x82, 0x69, 0x22, 0x93, 0x0f, 0x04, 0x47, 0x08, 0x32, 0x1f, 0x08, 0x9e, - 0x25, 0x26, 0xf3, 0x81, 0xe0, 0x24, 0x71, 0x2e, 0x1f, 0x08, 0x9e, 0x23, 0xe2, 0x89, 0xbf, 0x05, - 0x30, 0xd6, 0x4a, 0x4b, 0x24, 0x79, 0x9c, 0x8c, 0x9d, 0x4a, 0x25, 0x8b, 0xe4, 0xd8, 0xf8, 0xb4, - 0x7f, 0x26, 0xd2, 0x2a, 0x59, 0xba, 0xd1, 0x72, 0x63, 0xe6, 0x5b, 0x39, 0x6d, 0xab, 0x6f, 0x48, - 0x97, 0x1c, 0xc9, 0x22, 0x39, 0xf1, 0x72, 0x0a, 0x46, 0x56, 0xd4, 0x67, 0xc8, 0xd4, 0x75, 0x97, - 0x8e, 0xaa, 0xeb, 0x1e, 0x57, 0xcd, 0x3d, 0xef, 0xa1, 0xe6, 0xba, 0x14, 0x5c, 0xe5, 0x63, 0x0a, - 0xb8, 0x2d, 0x95, 0xda, 0xcf, 0xbb, 0x56, 0x6a, 0x3d, 0xd4, 0xd9, 0x47, 0xed, 0xd4, 0xd9, 0x0e, - 0x4f, 0x41, 0x6f, 0x89, 0xf6, 0x76, 0xf7, 0x12, 0xad, 0x43, 0x99, 0xbd, 0xdb, 0xb5, 0x32, 0xdb, - 0x24, 0xc4, 0xae, 0x76, 0x27, 0xc4, 0xba, 0x94, 0xd7, 0x6b, 0x5d, 0x28, 0xaf, 0xba, 0xe6, 0xba, - 0xdc, 0xad, 0xe6, 0x6a, 0xe9, 0xac, 0xf4, 0x89, 0xe8, 0xac, 0x3d, 0x6d, 0xb5, 0xbd, 0xb6, 0x9a, - 0xed, 0x54, 0x5b, 0x75, 0x48, 0xaa, 0xdb, 0xc7, 0x96, 0x54, 0xbd, 0x94, 0xd4, 0xcf, 0x8f, 0xa1, - 0xa4, 0xfe, 0x39, 0x09, 0xa8, 0x8b, 0x1d, 0x0b, 0xa8, 0x4e, 0xdd, 0xf4, 0x76, 0xb7, 0xba, 0xa9, - 0x4b, 0x2e, 0xbd, 0x77, 0x2c, 0xb9, 0xb4, 0x59, 0x25, 0xdd, 0x3a, 0xbe, 0x4a, 0xda, 0x2c, 0x85, - 0xae, 0x1d, 0x43, 0x8b, 0x74, 0x2a, 0x90, 0x1b, 0xdd, 0x2a, 0x90, 0xde, 0xda, 0xe3, 0x6a, 0x97, - 0xda, 0xa3, 0x53, 0x75, 0xbc, 0xd3, 0xbd, 0xea, 0xe8, 0x54, 0x19, 0x37, 0x8f, 0xab, 0x32, 0x36, - 0xa9, 0x8a, 0x37, 0xba, 0x50, 0x15, 0xed, 0x5a, 0xe2, 0x46, 0x0b, 0x2d, 0xb1, 0x53, 0x2a, 0xea, - 0x12, 0x14, 0x6f, 0x1e, 0x5d, 0x50, 0x74, 0xca, 0x85, 0x8f, 0xda, 0xca, 0x85, 0x9d, 0x8e, 0xca, - 0x4b, 0x2a, 0x2c, 0x9f, 0xb4, 0x52, 0xd8, 0x4a, 0x0a, 0x3c, 0xed, 0xd4, 0xe6, 0x4c, 0x29, 0xed, - 0x56, 0xd7, 0x52, 0x9a, 0x43, 0x41, 0xbb, 0x7f, 0x5c, 0x05, 0xcd, 0x2d, 0x9c, 0x6d, 0x1e, 0x53, - 0x38, 0x6b, 0xd6, 0xcb, 0x3e, 0x3b, 0xb2, 0x5e, 0xe6, 0xd0, 0xc2, 0xbe, 0x39, 0x39, 0x2d, 0xac, - 0x85, 0x04, 0x56, 0xff, 0x88, 0x0a, 0xd8, 0x07, 0x84, 0xaf, 0x1b, 0x5d, 0x08, 0x5f, 0x76, 0xb9, - 0x6b, 0xb9, 0x3b, 0xb9, 0xcb, 0x2e, 0x72, 0x6d, 0x1f, 0x57, 0xe4, 0xf2, 0xd4, 0xb6, 0xbe, 0x3e, - 0x29, 0xfd, 0xc9, 0x53, 0x79, 0xfa, 0xa7, 0x93, 0xd3, 0x4e, 0x9c, 0x14, 0xef, 0x03, 0xda, 0x49, - 0x3b, 0xc9, 0x64, 0xed, 0x58, 0x92, 0xc9, 0xc7, 0x93, 0x48, 0x46, 0xfe, 0xfb, 0x86, 0xeb, 0xdf, - 0x27, 0xe5, 0x12, 0x6e, 0x31, 0x62, 0xe4, 0xc5, 0x7b, 0xe0, 0x7c, 0x94, 0x9b, 0xb0, 0xab, 0x10, - 0xc3, 0x2f, 0xde, 0x03, 0xeb, 0xa7, 0xea, 0xef, 0x94, 0x1e, 0xb0, 0xbf, 0xe3, 0x51, 0x6e, 0xd2, - 0xa1, 0x37, 0x44, 0x5e, 0xbc, 0x07, 0xb6, 0xdf, 0xb9, 0x0b, 0x4d, 0xaa, 0x02, 0xf9, 0xe2, 0x3d, - 0x70, 0x3d, 0x33, 0x55, 0x04, 0x4d, 0x2d, 0x98, 0x24, 0xce, 0x25, 0xfe, 0x79, 0x0a, 0x46, 0x69, - 0x24, 0x72, 0x4c, 0xb1, 0xc7, 0xca, 0x7b, 0xac, 0xbc, 0xc7, 0xca, 0x7b, 0xac, 0xbc, 0xc7, 0xca, - 0x7b, 0xac, 0xbc, 0xc7, 0xca, 0x7b, 0xac, 0xbc, 0xc7, 0xca, 0x7b, 0xac, 0xbc, 0xc7, 0xca, 0x7b, - 0xac, 0xbc, 0xc7, 0xca, 0x7f, 0x33, 0x56, 0xfe, 0xb2, 0x33, 0x56, 0xfe, 0xa0, 0x03, 0xea, 0xe3, - 0xe2, 0x78, 0x3d, 0x5a, 0xfe, 0xfb, 0xa6, 0xe5, 0x7f, 0x3f, 0x05, 0x43, 0x77, 0x90, 0xd2, 0xa3, - 0xe4, 0x3d, 0x4a, 0xde, 0xa3, 0xe4, 0x3d, 0x4a, 0xde, 0xa3, 0xe4, 0x3d, 0x4a, 0xde, 0xa3, 0xe4, - 0x3d, 0x4a, 0xde, 0xa3, 0xe4, 0x3d, 0x4a, 0xde, 0xa3, 0xe4, 0x3d, 0x4a, 0xde, 0xa3, 0xe4, 0xbf, - 0x15, 0x25, 0xff, 0x87, 0xce, 0x28, 0xf9, 0x46, 0x27, 0x97, 0x0c, 0x2c, 0x7e, 0xd7, 0xa3, 0xe3, - 0xbf, 0x6f, 0x3a, 0xfe, 0xbf, 0x04, 0x1c, 0x31, 0xb3, 0x8d, 0x4a, 0xb2, 0xd5, 0x98, 0xc8, 0x15, - 0x38, 0x52, 0x62, 0x65, 0x66, 0x87, 0x43, 0x05, 0x33, 0xf3, 0xe0, 0x89, 0x68, 0xcd, 0xb0, 0x09, - 0xdd, 0xc1, 0x04, 0x23, 0xbf, 0x80, 0x67, 0x11, 0x8f, 0x31, 0x9e, 0x30, 0x7b, 0x8c, 0x5c, 0x94, - 0x58, 0x51, 0xb1, 0xc1, 0xf9, 0xdb, 0xc2, 0x8d, 0x6b, 0xae, 0x79, 0xd3, 0xd3, 0xc2, 0xdd, 0x84, - 0x31, 0x1d, 0xb7, 0xc8, 0x88, 0x4a, 0xb1, 0xc2, 0xd8, 0x40, 0x03, 0x6d, 0x41, 0x4f, 0x6b, 0x7e, - 0x2b, 0x9a, 0x9b, 0x85, 0xf8, 0x7b, 0x62, 0x36, 0xe7, 0xbb, 0x64, 0x36, 0x36, 0x02, 0xd0, 0x9e, - 0xd6, 0x78, 0x11, 0x80, 0x2b, 0x1d, 0x97, 0xce, 0xbe, 0x96, 0x04, 0xe0, 0xd3, 0x23, 0xd4, 0xcc, - 0x3e, 0x07, 0x01, 0x68, 0xae, 0x90, 0xfa, 0x8f, 0x53, 0x21, 0x19, 0x3c, 0x7e, 0xe0, 0xe8, 0x3c, - 0xfe, 0x81, 0xc5, 0xe3, 0x07, 0x8f, 0xf6, 0x91, 0x11, 0xf7, 0x35, 0x26, 0x93, 0xd7, 0x9f, 0x2c, - 0x07, 0xaf, 0xb6, 0x2e, 0xb1, 0x60, 0x77, 0xb7, 0x96, 0xb5, 0x3b, 0x7b, 0x2d, 0x0a, 0xad, 0x1d, - 0x97, 0x28, 0x11, 0xea, 0xee, 0x2b, 0x29, 0x4d, 0x17, 0xe8, 0xed, 0x22, 0x85, 0xfb, 0x96, 0x7f, - 0xf8, 0x04, 0x6f, 0xf9, 0x0f, 0x7f, 0xc4, 0x5b, 0xfe, 0x91, 0x93, 0xbd, 0xe5, 0xef, 0x54, 0x33, - 0x89, 0xb6, 0x1c, 0xde, 0xa6, 0x66, 0x66, 0x9d, 0x6a, 0xe6, 0x08, 0xfe, 0x88, 0x93, 0xe3, 0x83, - 0x10, 0xda, 0xb7, 0x9c, 0xfc, 0x0e, 0x81, 0x73, 0xbb, 0x59, 0x6a, 0x24, 0x3b, 0xfc, 0x7c, 0xd0, - 0xe0, 0xab, 0xd7, 0xc0, 0x0f, 0x81, 0x8a, 0xe8, 0xd6, 0x1c, 0xbf, 0xf6, 0xd6, 0x1c, 0x47, 0x8f, - 0x7a, 0x61, 0x7f, 0xcd, 0xef, 0xa5, 0x3b, 0xb6, 0xe2, 0xad, 0x63, 0x5d, 0xf1, 0xd6, 0xeb, 0x7b, - 0x4d, 0xa7, 0xf8, 0x8f, 0x0d, 0xc0, 0xc0, 0x90, 0x79, 0x3b, 0x10, 0xa4, 0x9c, 0x97, 0x02, 0xe7, - 0xa9, 0xec, 0x3c, 0x95, 0x5a, 0xa0, 0x52, 0xf3, 0x1e, 0x57, 0x00, 0x17, 0xa8, 0x25, 0x6a, 0x91, - 0xba, 0x4a, 0xa5, 0x52, 0x54, 0x2a, 0x4d, 0xa5, 0x32, 0x54, 0x2a, 0x0b, 0xc7, 0x9a, 0x6e, 0xf9, - 0xf9, 0xd2, 0xf3, 0xb9, 0xb9, 0x66, 0x2e, 0x40, 0x9e, 0xdd, 0x6f, 0x00, 0x1f, 0xfe, 0x72, 0x40, - 0x03, 0xf4, 0xa7, 0xa9, 0x0c, 0x95, 0x7d, 0xf1, 0x1e, 0x0c, 0xfc, 0x89, 0x17, 0x78, 0x74, 0x23, - 0x97, 0xb6, 0xd7, 0x0d, 0x17, 0xf5, 0x3b, 0x7e, 0x7d, 0xce, 0x3b, 0x7e, 0x99, 0x8c, 0xb3, 0x9e, - 0xc8, 0x3a, 0x6a, 0x85, 0x4b, 0xfa, 0x6d, 0xbf, 0x3e, 0xf7, 0x6d, 0x3f, 0x57, 0x0d, 0x91, 0x71, - 0x57, 0x31, 0x89, 0xfd, 0x06, 0x20, 0x0e, 0x1a, 0x20, 0xaa, 0x8e, 0x2b, 0xb5, 0x48, 0xa5, 0x96, - 0x9a, 0xca, 0x9a, 0x7c, 0x20, 0x08, 0x08, 0x9f, 0xeb, 0xfa, 0xde, 0x10, 0x01, 0xf3, 0x81, 0x60, - 0x94, 0x20, 0x12, 0xef, 0x20, 0x1c, 0xa5, 0x2d, 0xf2, 0x69, 0x16, 0x18, 0xb7, 0xe1, 0xe8, 0x4e, - 0x5d, 0x64, 0x64, 0xb9, 0xe0, 0x20, 0xb3, 0xed, 0x6b, 0x82, 0x11, 0xcd, 0xc5, 0x86, 0x47, 0xae, - 0x42, 0x92, 0x11, 0x45, 0xae, 0xee, 0x84, 0x69, 0x5f, 0x05, 0x10, 0xd8, 0xc3, 0x8e, 0x82, 0xe0, - 0x68, 0xb1, 0x26, 0x2b, 0x42, 0xd5, 0x09, 0xd3, 0xef, 0x79, 0x2a, 0xe2, 0xcf, 0xba, 0xb9, 0x2e, - 0xed, 0x47, 0x5d, 0x9f, 0xb6, 0xc0, 0xca, 0x39, 0x46, 0xb4, 0x77, 0x63, 0x95, 0x19, 0xe1, 0xee, - 0xca, 0x8c, 0xe1, 0x93, 0x2b, 0x33, 0x22, 0xc7, 0x2f, 0x33, 0x88, 0x23, 0x97, 0x19, 0x23, 0x27, - 0x50, 0x66, 0x90, 0x5d, 0x97, 0x19, 0x57, 0x35, 0x9d, 0xb1, 0x28, 0xd4, 0xd4, 0x92, 0x5f, 0xcf, - 0x1b, 0xad, 0x52, 0xac, 0x9a, 0x8c, 0x57, 0x34, 0x4b, 0xf5, 0x84, 0xd2, 0x9d, 0xb4, 0x30, 0x4e, - 0xb5, 0x5b, 0x06, 0xdd, 0x69, 0x45, 0x28, 0x21, 0x5d, 0x31, 0x0d, 0xe9, 0xce, 0x38, 0x1a, 0xda, - 0x59, 0x0e, 0x0c, 0x1c, 0xb9, 0x1c, 0xd0, 0x0f, 0x6c, 0x7b, 0x51, 0xb0, 0xd5, 0x54, 0x3f, 0x1d, - 0xe9, 0x7f, 0xf3, 0xe8, 0x88, 0x4d, 0x3a, 0x93, 0x56, 0x45, 0x05, 0xbb, 0xfd, 0x60, 0xdb, 0x43, - 0xab, 0x96, 0x1a, 0x3a, 0x5a, 0x2d, 0x35, 0xe6, 0xf9, 0x61, 0x11, 0x03, 0xed, 0xfa, 0xb6, 0x57, - 0xe6, 0xbe, 0x09, 0x87, 0xad, 0xcc, 0x9d, 0x9e, 0x01, 0x70, 0xd4, 0xca, 0xdd, 0x41, 0x35, 0x2b, - 0x2f, 0x50, 0xa9, 0x6b, 0x70, 0xdc, 0x9d, 0xb8, 0x83, 0x8b, 0x54, 0x6a, 0x9e, 0x5a, 0xa2, 0xae, - 0xa9, 0x14, 0x4c, 0xcb, 0xc6, 0x26, 0x05, 0xdb, 0x6f, 0x00, 0xff, 0x41, 0x03, 0xf8, 0xd4, 0xe4, - 0x97, 0xa1, 0xb2, 0xd4, 0x42, 0x2e, 0x69, 0x4f, 0xc5, 0xe7, 0xf7, 0x1b, 0x20, 0x7c, 0xd0, 0x00, - 0x21, 0x35, 0xa3, 0x1a, 0x49, 0xdf, 0x99, 0x86, 0xe7, 0x1d, 0x69, 0xd8, 0x9e, 0x4d, 0x83, 0x6a, - 0x36, 0xbd, 0xaa, 0x25, 0x54, 0x7b, 0x0a, 0xfe, 0x04, 0x46, 0x8c, 0x57, 0xcd, 0x36, 0x8c, 0xb1, - 0x83, 0x06, 0x18, 0xc5, 0x67, 0xc3, 0x3c, 0x95, 0x4e, 0xe5, 0x03, 0x41, 0x1f, 0xe1, 0xcf, 0x07, - 0x82, 0x83, 0x44, 0xd0, 0x64, 0x74, 0x51, 0x82, 0xc8, 0x07, 0x82, 0xa3, 0xc4, 0x58, 0xee, 0x5f, - 0xc0, 0xc1, 0x2f, 0xf1, 0xbe, 0x37, 0xbf, 0xc4, 0xfb, 0xde, 0xfd, 0x12, 0x07, 0xdf, 0x1f, 0xc6, - 0xc1, 0xbf, 0x1f, 0xc6, 0xc1, 0x4f, 0x87, 0x71, 0x70, 0x70, 0x18, 0x07, 0x6f, 0x0e, 0xe3, 0xe0, - 0xe7, 0xc3, 0x38, 0xf8, 0xf5, 0x30, 0xde, 0xf7, 0xee, 0x30, 0x0e, 0xfe, 0xf1, 0x6d, 0xbc, 0x6f, - 0xff, 0x6d, 0x1c, 0x1c, 0xbc, 0x8d, 0xf7, 0xbd, 0x79, 0x1b, 0xef, 0xfb, 0xea, 0x61, 0x59, 0x10, - 0xbf, 0x2d, 0x27, 0xf7, 0x04, 0x4e, 0x41, 0x92, 0xc4, 0x24, 0x6b, 0xf2, 0x1c, 0xfe, 0x63, 0x57, - 0x90, 0xaa, 0xb3, 0xa2, 0x24, 0xec, 0xb1, 0x25, 0x24, 0xcd, 0x1a, 0xcd, 0x73, 0xe2, 0x4e, 0x59, - 0x98, 0x43, 0xdf, 0x29, 0xc6, 0xf7, 0x42, 0x5b, 0x7e, 0x36, 0x74, 0x67, 0x00, 0x9f, 0xcc, 0x99, - 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0xfc, 0xa7, 0x48, 0x34, 0x62, 0x54, 0x00, 0x00, + // 3676 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5c, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x94, 0x44, 0x0d, 0x29, 0x72, 0xb5, 0x92, 0x6d, 0x4a, 0x96, 0x29, 0x99, 0xb1, + 0x1d, 0xd9, 0x5e, 0x51, 0xe2, 0x8f, 0x64, 0xd9, 0x49, 0xec, 0x8a, 0x92, 0x6d, 0x99, 0x91, 0x6c, + 0x79, 0xa5, 0xc6, 0x76, 0x1a, 0x97, 0x59, 0x91, 0x23, 0x72, 0x1d, 0x72, 0x77, 0xbd, 0xbb, 0x94, + 0xc3, 0x83, 0x81, 0xc0, 0x87, 0x1e, 0x5a, 0xa0, 0x68, 0x02, 0xf4, 0xe2, 0x73, 0x0f, 0x6d, 0x4e, + 0x3d, 0x97, 0x3e, 0x08, 0x01, 0x0a, 0x04, 0x3d, 0xe9, 0x68, 0x14, 0x3d, 0x24, 0x72, 0x0f, 0xe9, + 0xcd, 0x67, 0x9f, 0x8a, 0x9d, 0xfd, 0x5f, 0x2e, 0x69, 0x8a, 0x92, 0x81, 0x20, 0xe0, 0x29, 0xe2, + 0xce, 0x7b, 0xdf, 0xcc, 0x9b, 0xd9, 0x79, 0xf3, 0xbe, 0x2f, 0xde, 0x81, 0xd3, 0x3b, 0x48, 0x8a, + 0xb3, 0xfc, 0x8c, 0x94, 0x2f, 0xa1, 0x0a, 0x33, 0x23, 0x21, 0x71, 0x87, 0xcd, 0xa3, 0x9c, 0xc0, + 0x97, 0xd9, 0x7c, 0x2d, 0x27, 0x56, 0xcb, 0x68, 0x46, 0xae, 0x09, 0x48, 0x8a, 0x0b, 0x22, 0x2f, + 0xf3, 0xe4, 0x69, 0xd5, 0x3c, 0xae, 0x9a, 0xc7, 0x5d, 0xcc, 0xc7, 0xa6, 0x8b, 0xac, 0x5c, 0xaa, + 0x6e, 0xc5, 0xf3, 0x7c, 0x65, 0xa6, 0xc8, 0x17, 0xf9, 0x19, 0xec, 0xb9, 0x55, 0xdd, 0xc6, 0xbf, + 0xf0, 0x0f, 0xfc, 0x97, 0x8a, 0x38, 0x36, 0x51, 0xe4, 0xf9, 0x62, 0x19, 0x99, 0x56, 0x32, 0x5b, + 0x41, 0x92, 0xcc, 0x54, 0x04, 0xcd, 0xe0, 0xa4, 0x7d, 0x84, 0xbc, 0x20, 0xb3, 0x3c, 0xa7, 0x8d, + 0x67, 0x6c, 0xd2, 0xde, 0xa8, 0x8e, 0xc3, 0x3a, 0xe2, 0xb1, 0x51, 0xbb, 0x85, 0xb5, 0x69, 0xdc, + 0xde, 0xb4, 0xc3, 0x94, 0xd9, 0x02, 0x23, 0x23, 0x77, 0xe8, 0x1d, 0x16, 0x3d, 0xc9, 0xd9, 0x3b, + 0x9f, 0x68, 0xb4, 0x90, 0xac, 0x1d, 0xc4, 0xbe, 0xbe, 0x08, 0x43, 0x37, 0xcb, 0xfc, 0x16, 0x53, + 0xde, 0x10, 0x50, 0x7e, 0xb3, 0x26, 0x20, 0x32, 0x03, 0xfb, 0x98, 0xbc, 0x02, 0x12, 0x01, 0x93, + 0x60, 0x2a, 0x94, 0x9c, 0x8c, 0xdb, 0x67, 0x54, 0x8d, 0x20, 0x4e, 0x57, 0xcb, 0x68, 0x11, 0xdb, + 0x65, 0xfc, 0xff, 0xae, 0x03, 0xdf, 0xf2, 0xf5, 0xdb, 0x0f, 0x68, 0xcd, 0x93, 0x9c, 0x83, 0x90, + 0xe1, 0x6a, 0xb9, 0x7c, 0x99, 0x45, 0x9c, 0x1c, 0x39, 0x3b, 0x09, 0xa6, 0x02, 0xc9, 0x11, 0x07, + 0xce, 0xf5, 0x8a, 0x20, 0xd7, 0x56, 0x7a, 0xe8, 0x01, 0x86, 0xab, 0x2d, 0x61, 0x43, 0x72, 0x1a, + 0x06, 0x54, 0x97, 0x1c, 0xc7, 0x54, 0x50, 0xc4, 0x33, 0x09, 0xa6, 0x06, 0x32, 0xf0, 0x1f, 0xff, + 0xdb, 0xf5, 0xf6, 0x8a, 0xde, 0xa9, 0xaf, 0x3c, 0x2b, 0x3d, 0x34, 0x54, 0x0d, 0x6e, 0x33, 0x15, + 0x44, 0xfe, 0x01, 0xc0, 0x13, 0xac, 0x90, 0x93, 0x4b, 0x22, 0x62, 0xe4, 0x5c, 0x9e, 0x91, 0x51, + 0x91, 0x17, 0x6b, 0xb9, 0x32, 0x2b, 0xc9, 0x91, 0x0f, 0x70, 0x9f, 0x1f, 0xc4, 0xdf, 0xfa, 0x36, + 0xc4, 0x6f, 0xad, 0x6f, 0x62, 0x80, 0x25, 0xcd, 0x7f, 0x95, 0x95, 0x64, 0x65, 0x22, 0x32, 0xc7, + 0xf6, 0x7f, 0xf8, 0xa7, 0x97, 0x78, 0xfe, 0x02, 0x04, 0xa5, 0x12, 0x23, 0xa2, 0x02, 0x35, 0x59, + 0x95, 0x90, 0xb8, 0xd2, 0x43, 0x8f, 0xb0, 0x42, 0xa3, 0x0b, 0x79, 0x0f, 0x86, 0xb5, 0xc1, 0x4b, + 0xa8, 0x8c, 0xf2, 0x32, 0x2f, 0x46, 0xbc, 0x78, 0x10, 0xce, 0x09, 0x5c, 0x65, 0xb6, 0x50, 0x79, + 0x43, 0xb3, 0xc1, 0x3d, 0xc1, 0xe7, 0x2f, 0x40, 0x1f, 0xf4, 0x01, 0x8f, 0xd7, 0xb7, 0xd2, 0x43, + 0x87, 0x54, 0x18, 0xdd, 0x82, 0xdc, 0x80, 0xc3, 0x96, 0x59, 0xc9, 0x55, 0x18, 0x39, 0x5f, 0x42, + 0x62, 0x04, 0x62, 0xf0, 0xd3, 0xee, 0xab, 0xb3, 0xa6, 0x1a, 0x29, 0xe8, 0x2b, 0x3d, 0xf4, 0x90, + 0x39, 0x69, 0x5a, 0x03, 0x79, 0xc7, 0x98, 0x6a, 0x91, 0x2f, 0xa3, 0xc8, 0x00, 0x06, 0x3b, 0xdb, + 0x64, 0xa9, 0xf9, 0x32, 0xb2, 0x00, 0x66, 0xfa, 0x5f, 0x3e, 0x05, 0x3f, 0xd5, 0x01, 0xd0, 0x17, + 0x43, 0x69, 0x27, 0x3f, 0x85, 0x61, 0x65, 0x76, 0x91, 0x68, 0x86, 0x3f, 0xdd, 0x66, 0xf8, 0x61, + 0x0d, 0xef, 0xf9, 0x0b, 0xe0, 0x83, 0x1e, 0xe0, 0xa1, 0x43, 0x2a, 0x92, 0x65, 0x06, 0x06, 0xcb, + 0x8a, 0x97, 0x11, 0xbb, 0x0f, 0x23, 0x4f, 0xb8, 0x21, 0x5b, 0x07, 0x3a, 0xf8, 0xfc, 0x05, 0xe8, + 0x85, 0x5e, 0xe0, 0xf1, 0xfe, 0xfd, 0x05, 0x00, 0x74, 0xb0, 0x6c, 0x31, 0x20, 0xaf, 0x41, 0x9f, + 0xc0, 0xc8, 0xa5, 0x48, 0x6f, 0xab, 0xd0, 0xd7, 0x19, 0xb9, 0x64, 0x45, 0xf4, 0xed, 0x29, 0x71, + 0x63, 0x47, 0x72, 0x0d, 0xf6, 0x97, 0x10, 0x53, 0x40, 0xa2, 0x14, 0xe9, 0x9b, 0xf4, 0x4e, 0x05, + 0x92, 0xef, 0xbb, 0x63, 0xac, 0x60, 0x23, 0x2b, 0x8a, 0xfa, 0x4a, 0x7f, 0x03, 0x3c, 0x04, 0x41, + 0xeb, 0x18, 0xe4, 0x6f, 0x61, 0xf0, 0x71, 0x15, 0x89, 0xb5, 0x9c, 0xc0, 0x88, 0x4c, 0x45, 0x8a, + 0xf4, 0x63, 0xcc, 0x19, 0x77, 0xcc, 0xbb, 0x8a, 0xe5, 0xba, 0x62, 0x88, 0xe4, 0xe6, 0xd8, 0x81, + 0xc7, 0x86, 0x99, 0x44, 0xae, 0xc2, 0x40, 0x49, 0x96, 0x85, 0x5c, 0x05, 0xc9, 0x25, 0xbe, 0x10, + 0xf1, 0xe3, 0xb0, 0x2f, 0x36, 0x19, 0xb2, 0x2c, 0x0b, 0x6b, 0xd8, 0xce, 0x02, 0x4d, 0xc3, 0x92, + 0xf1, 0x98, 0x9c, 0x86, 0x7d, 0xca, 0x0e, 0x67, 0x85, 0xc8, 0x44, 0x8b, 0xdd, 0x0d, 0xe8, 0x5e, + 0x86, 0xab, 0xdd, 0x12, 0xc8, 0x35, 0x18, 0x62, 0x85, 0x9c, 0x20, 0xa2, 0x6d, 0xf6, 0x4b, 0x75, + 0x83, 0x4e, 0xb6, 0x9c, 0x76, 0x6c, 0x88, 0xfb, 0x56, 0xf6, 0xd6, 0x0a, 0xa0, 0x83, 0xac, 0xa0, + 0x3e, 0xc4, 0x7b, 0x6d, 0x19, 0x42, 0x56, 0x30, 0xde, 0x86, 0x20, 0x86, 0x7a, 0xcf, 0x1d, 0xea, + 0x96, 0x60, 0xdd, 0x0b, 0x80, 0x1e, 0x60, 0xf5, 0x07, 0xe4, 0x47, 0x6a, 0x96, 0x2a, 0x48, 0xb2, + 0x12, 0xc7, 0xf9, 0xe6, 0x71, 0x18, 0x6f, 0xfc, 0x8a, 0x87, 0xf6, 0x33, 0x5c, 0x6d, 0x59, 0x92, + 0x6f, 0x09, 0xe4, 0x43, 0x48, 0xaa, 0xae, 0xb6, 0xb8, 0x2e, 0x1c, 0x20, 0x2e, 0x2b, 0x6e, 0xb8, + 0xa0, 0x80, 0x5a, 0x62, 0xdc, 0x84, 0x21, 0x0d, 0x5e, 0x8f, 0xf3, 0x62, 0xdb, 0x71, 0x5a, 0x81, + 0x83, 0x18, 0x58, 0x8f, 0x79, 0x06, 0xf6, 0x2b, 0x31, 0x33, 0x12, 0x17, 0x89, 0xb5, 0x58, 0x38, + 0x2f, 0xad, 0x2c, 0xef, 0xa2, 0xc4, 0x91, 0xd7, 0xa0, 0x9f, 0x91, 0x38, 0x35, 0xb6, 0xf7, 0xb0, + 0x47, 0xcc, 0x7d, 0x00, 0x8b, 0x12, 0x67, 0x2e, 0x98, 0x97, 0xee, 0x67, 0x24, 0x0e, 0xc7, 0x71, + 0x13, 0x06, 0x14, 0x00, 0x3d, 0x88, 0x41, 0x8c, 0x71, 0xa6, 0x35, 0x86, 0xb6, 0x5a, 0x5e, 0x1a, + 0x32, 0xc6, 0x13, 0xf2, 0x1a, 0x0c, 0xe8, 0xcb, 0xa5, 0x0c, 0x3f, 0xd5, 0xce, 0x7a, 0xf9, 0xf0, + 0xf1, 0xb2, 0x2c, 0xc9, 0x4a, 0x28, 0x77, 0x60, 0x50, 0x73, 0x56, 0xc3, 0x49, 0xb7, 0x1b, 0x8e, + 0x15, 0x0f, 0x16, 0x30, 0x98, 0x9e, 0xf2, 0x75, 0x40, 0x3d, 0xbc, 0xb9, 0xf6, 0xc3, 0xb3, 0xa2, + 0x0e, 0xaa, 0xa8, 0x7a, 0xa8, 0x1c, 0x1c, 0x62, 0x04, 0x36, 0x57, 0x14, 0xf9, 0xaa, 0xb9, 0xfc, + 0x21, 0x0c, 0xdd, 0x24, 0xc9, 0x6c, 0xc8, 0x22, 0xcb, 0x15, 0xad, 0xe8, 0xa3, 0x4a, 0xaa, 0x72, + 0x3d, 0xc2, 0xe8, 0x30, 0x23, 0xb0, 0x37, 0x15, 0x6c, 0xbd, 0xbf, 0xa7, 0xf0, 0x14, 0x53, 0x28, + 0xb0, 0xca, 0xd9, 0xcd, 0x94, 0x73, 0x0d, 0x5d, 0x4b, 0x91, 0x4c, 0xab, 0x04, 0xd7, 0xd8, 0xf7, + 0x90, 0x16, 0x99, 0x91, 0x8b, 0x7c, 0xf4, 0x98, 0xd9, 0xc1, 0xa2, 0xbd, 0x77, 0x89, 0xa4, 0x61, + 0x50, 0xe0, 0x45, 0xd9, 0x88, 0x34, 0xdc, 0x72, 0x0f, 0xf1, 0xa2, 0x6c, 0xed, 0xcb, 0xbf, 0x5b, + 0x07, 0x00, 0xa7, 0xe5, 0x80, 0x60, 0x36, 0x91, 0x1b, 0x70, 0x04, 0x7d, 0x29, 0xb0, 0x22, 0xa3, + 0xf4, 0x99, 0x33, 0x4a, 0xb6, 0x08, 0x81, 0xb1, 0xc7, 0xe2, 0x6a, 0x51, 0x17, 0xd7, 0x8b, 0xba, + 0xf8, 0xa6, 0x6e, 0x91, 0xf1, 0x29, 0x80, 0xf4, 0xb0, 0xe9, 0x6d, 0x34, 0x91, 0x59, 0x18, 0xdc, + 0xe2, 0x0b, 0x35, 0x63, 0xa0, 0xc7, 0xda, 0x3c, 0x83, 0x35, 0xcc, 0x80, 0xe2, 0xac, 0x0f, 0xf0, + 0x1e, 0x0c, 0x32, 0x62, 0xd1, 0x9c, 0x62, 0x12, 0x4f, 0x71, 0xb3, 0x37, 0x47, 0xb4, 0xcd, 0x6f, + 0x68, 0xd7, 0x3a, 0xb9, 0x04, 0x1d, 0x60, 0x8c, 0x76, 0x89, 0xfc, 0x1c, 0x86, 0xf3, 0x3c, 0xff, + 0x05, 0x8b, 0x4c, 0xec, 0xe1, 0x56, 0xcb, 0xb7, 0x84, 0x8d, 0x5b, 0xc1, 0x87, 0xf2, 0x56, 0x13, + 0x89, 0x5c, 0x81, 0xf0, 0x09, 0xb3, 0x9d, 0xd3, 0xca, 0xc4, 0x11, 0xd7, 0xc3, 0x58, 0x03, 0xbf, + 0xc7, 0x6c, 0xeb, 0x55, 0xa2, 0x02, 0xfa, 0x5a, 0x99, 0x86, 0x81, 0x27, 0xfa, 0x43, 0x72, 0x05, + 0x86, 0x0a, 0x7c, 0x85, 0x61, 0xcd, 0x0d, 0x74, 0xbc, 0xcd, 0x29, 0xa5, 0x07, 0x55, 0x47, 0x7d, + 0x3a, 0x19, 0x18, 0x14, 0x19, 0x19, 0xe5, 0xca, 0x6c, 0x85, 0x95, 0x91, 0x18, 0x39, 0x81, 0x43, + 0x1e, 0x77, 0xe0, 0xdc, 0xd9, 0x7a, 0x84, 0xf2, 0x32, 0x8d, 0xb6, 0x71, 0x9c, 0x93, 0xdf, 0x3e, + 0xb5, 0x39, 0x39, 0xdf, 0x5a, 0x0f, 0x1d, 0x50, 0x9a, 0x57, 0xd5, 0x56, 0xf2, 0x33, 0x38, 0xb2, + 0xc3, 0x8a, 0x72, 0x95, 0x29, 0xe7, 0x4a, 0xbc, 0x64, 0xbe, 0xae, 0x91, 0x76, 0xdf, 0x02, 0xa3, + 0x70, 0x22, 0x35, 0x9c, 0x15, 0x5e, 0x32, 0x5e, 0xd8, 0xdf, 0x01, 0x78, 0x42, 0x2e, 0x4b, 0xb9, + 0x6d, 0x96, 0x2b, 0x22, 0x51, 0x10, 0x59, 0xce, 0xec, 0x61, 0x14, 0xf7, 0xd0, 0xa4, 0x16, 0xd8, + 0x2c, 0x4b, 0x37, 0x4c, 0x1f, 0x6b, 0x7f, 0xa7, 0xf4, 0xad, 0xe1, 0x9e, 0x06, 0x8e, 0xc9, 0x6e, + 0x9e, 0x64, 0x05, 0x12, 0xdb, 0xbc, 0xf8, 0x84, 0x11, 0x0b, 0x2c, 0x57, 0xcc, 0xe5, 0xcb, 0x8c, + 0x24, 0x45, 0xc6, 0xda, 0x98, 0xcd, 0x33, 0xdf, 0x3e, 0x6d, 0x70, 0x74, 0xce, 0xa8, 0x97, 0x0e, + 0x9b, 0x26, 0x4b, 0x8a, 0x05, 0x59, 0x84, 0x7d, 0x18, 0x0e, 0x45, 0xce, 0x4d, 0x7a, 0xa7, 0x06, + 0x32, 0x77, 0x2c, 0x3e, 0x33, 0xdf, 0x00, 0x2a, 0x76, 0x41, 0x9c, 0xa2, 0xcf, 0xfd, 0x26, 0xb6, + 0x78, 0xfb, 0x41, 0x8c, 0x9a, 0x8c, 0xad, 0x6c, 0x6e, 0xae, 0xeb, 0xff, 0xdd, 0x50, 0xfe, 0xd8, + 0x5c, 0xc2, 0xbf, 0x37, 0x57, 0x37, 0x62, 0x0f, 0xcd, 0x7c, 0xa3, 0xff, 0x15, 0x01, 0xb4, 0x06, + 0x4f, 0xde, 0x86, 0x81, 0xaa, 0x68, 0xd6, 0x90, 0xef, 0xb7, 0xca, 0xd4, 0xbf, 0xa6, 0x57, 0xdd, + 0x2b, 0xde, 0xaa, 0x68, 0x14, 0x90, 0xf7, 0x61, 0xb8, 0x9c, 0xce, 0x15, 0x90, 0xe5, 0x4d, 0xa0, + 0x5a, 0xa5, 0xe8, 0xd5, 0xf4, 0x32, 0x92, 0x64, 0x57, 0xd8, 0xc1, 0xb2, 0xb5, 0x8d, 0x7c, 0x00, + 0x89, 0x7c, 0x89, 0x29, 0x97, 0x11, 0x57, 0x44, 0xfa, 0x2e, 0x9b, 0xc7, 0x64, 0xac, 0x49, 0x4e, + 0x5c, 0xd2, 0xad, 0xb5, 0xbd, 0x66, 0x00, 0x87, 0xf3, 0xf6, 0x16, 0x92, 0x81, 0x81, 0x22, 0x2f, + 0xf3, 0x1a, 0x03, 0x8a, 0x5c, 0x6a, 0x63, 0x5d, 0x63, 0xdf, 0x3e, 0x0d, 0xd9, 0x89, 0x93, 0x73, + 0x55, 0x01, 0x0d, 0x15, 0xd0, 0x75, 0xdc, 0x48, 0xb2, 0xf0, 0x78, 0x9e, 0xe7, 0x64, 0xcc, 0x2d, + 0xd0, 0x13, 0x91, 0x95, 0x8d, 0x18, 0x16, 0xf0, 0xf4, 0x5c, 0x68, 0x96, 0x86, 0xb0, 0x0f, 0xad, + 0xba, 0x38, 0x03, 0x19, 0xc9, 0xbb, 0x34, 0x93, 0xcf, 0x00, 0x9c, 0x90, 0x4a, 0x8c, 0x80, 0x72, + 0x4a, 0x1e, 0x47, 0x79, 0x19, 0x15, 0x72, 0x88, 0x2b, 0x08, 0xbc, 0xb2, 0x79, 0xb4, 0x4e, 0x2f, + 0xe3, 0x4e, 0x93, 0x4d, 0x8e, 0x2e, 0xc5, 0x79, 0x5d, 0xf7, 0xbd, 0xae, 0xb9, 0x3a, 0x3b, 0x1f, + 0x97, 0x5a, 0x98, 0x29, 0xd9, 0x70, 0x8b, 0x37, 0xba, 0xbb, 0xd2, 0x2a, 0x1b, 0x66, 0x78, 0xb9, + 0x31, 0x1b, 0x6e, 0xe9, 0x0f, 0xc9, 0x8f, 0x21, 0xac, 0x54, 0x2b, 0x3a, 0xd2, 0x87, 0xad, 0xca, + 0x93, 0x35, 0xbe, 0xc0, 0x6e, 0xd7, 0xac, 0x60, 0x98, 0xe2, 0x0c, 0x54, 0xaa, 0x15, 0x0d, 0xec, + 0x21, 0x1c, 0x61, 0x85, 0x9c, 0x88, 0x84, 0xaa, 0xac, 0x9e, 0x81, 0x1a, 0xec, 0x47, 0x6d, 0xc3, + 0x9a, 0xe9, 0x8a, 0x15, 0x68, 0x03, 0x47, 0x83, 0xff, 0x14, 0x1e, 0x53, 0x92, 0x48, 0x8e, 0x2d, + 0x20, 0x4e, 0x66, 0x65, 0xf3, 0x4c, 0xbc, 0x8a, 0xf1, 0xcf, 0xbd, 0x3d, 0x1b, 0x32, 0x12, 0x9b, + 0xa7, 0x87, 0x15, 0x90, 0x5b, 0x1a, 0x86, 0xfe, 0xfe, 0x6f, 0xc1, 0x61, 0x11, 0x3d, 0xae, 0x2a, + 0x3b, 0x2b, 0xcf, 0x73, 0x92, 0x2c, 0x32, 0x2c, 0x27, 0x4b, 0x91, 0x6b, 0xad, 0x28, 0x0b, 0xad, + 0x3a, 0x2c, 0x19, 0xf6, 0x16, 0xbe, 0x46, 0x8a, 0xce, 0x46, 0x89, 0x7c, 0x08, 0x89, 0xa2, 0xc8, + 0x08, 0xa5, 0xc7, 0xe5, 0x9c, 0x84, 0x64, 0x99, 0xe5, 0x8a, 0x52, 0xe4, 0x57, 0xb8, 0x83, 0xf3, + 0xee, 0x1d, 0xdc, 0x54, 0xac, 0xef, 0xae, 0x6e, 0x68, 0xc6, 0xf6, 0x0d, 0x1c, 0xd6, 0xb0, 0xf4, + 0x56, 0x52, 0x84, 0xa3, 0xbc, 0x80, 0x38, 0xa5, 0x94, 0xd2, 0x54, 0x1b, 0xcb, 0x12, 0x2c, 0xe2, + 0x7e, 0xa6, 0xdd, 0xfb, 0xb9, 0x23, 0x20, 0x6e, 0x51, 0x60, 0x3f, 0x31, 0xbc, 0x9c, 0xab, 0x71, + 0x42, 0x03, 0x76, 0x5a, 0x90, 0x0f, 0x20, 0xa9, 0x69, 0x21, 0x15, 0x24, 0x95, 0xf4, 0xce, 0x96, + 0x0e, 0xbe, 0xde, 0x84, 0x0a, 0xb3, 0x86, 0xa4, 0x92, 0x06, 0xbd, 0x09, 0x43, 0x12, 0x2a, 0x56, + 0x94, 0x3d, 0xad, 0x65, 0x8e, 0xe5, 0x96, 0xd5, 0xa8, 0x6a, 0xab, 0x26, 0x04, 0x75, 0x21, 0xf0, + 0xbb, 0x3e, 0x28, 0x59, 0x1b, 0xc8, 0xe7, 0x00, 0x8e, 0xf3, 0x22, 0x5b, 0x64, 0xb9, 0x9c, 0xae, + 0x1d, 0x54, 0xb7, 0x24, 0x24, 0x4b, 0xfa, 0xd8, 0x3f, 0xc7, 0xe9, 0x69, 0xbd, 0x0d, 0x15, 0xc7, + 0x2e, 0x62, 0xc5, 0xef, 0x60, 0xd4, 0x0d, 0x55, 0x46, 0x50, 0x31, 0xd5, 0x48, 0xae, 0x73, 0xb2, + 0x68, 0xf2, 0x03, 0x7a, 0x94, 0x6f, 0x66, 0x48, 0xde, 0x87, 0xf0, 0xd1, 0x13, 0x59, 0x39, 0xc6, + 0xd8, 0x8a, 0x14, 0x61, 0xf0, 0x48, 0x9a, 0xbc, 0x1a, 0xd9, 0x7b, 0x9b, 0x4b, 0x8a, 0x59, 0xab, + 0x1a, 0x6a, 0xe0, 0xd1, 0x13, 0x19, 0x1b, 0x49, 0x63, 0xab, 0x30, 0xda, 0x7a, 0x7c, 0x24, 0x01, + 0xbd, 0x5f, 0xa0, 0x1a, 0x16, 0xe0, 0x06, 0x68, 0xe5, 0x4f, 0x72, 0x04, 0xf6, 0xee, 0x30, 0xe5, + 0xaa, 0x26, 0x8a, 0xd1, 0xea, 0x8f, 0x2b, 0x9e, 0x05, 0x70, 0xe5, 0x6f, 0xe0, 0xbb, 0x3a, 0xf8, + 0x0b, 0x80, 0x23, 0xb0, 0x4f, 0x1b, 0x39, 0x4c, 0x50, 0xc9, 0x59, 0x6a, 0x6e, 0x81, 0x9a, 0x9f, + 0x85, 0xc7, 0x61, 0xbf, 0x2a, 0xae, 0x49, 0x64, 0x20, 0x35, 0x4f, 0xa5, 0x66, 0xa9, 0x54, 0x8a, + 0x4a, 0xce, 0x41, 0x02, 0xf6, 0xab, 0xbd, 0x4b, 0x64, 0x6f, 0x32, 0x49, 0x25, 0xe6, 0xe0, 0x19, + 0x38, 0xa8, 0xed, 0xa1, 0x49, 0x1c, 0x07, 0x39, 0xbc, 0x40, 0xcd, 0x51, 0x97, 0xa8, 0x79, 0xea, + 0xf2, 0x25, 0x2a, 0x71, 0x99, 0x4a, 0x2c, 0x50, 0xc9, 0x04, 0x3c, 0x09, 0x87, 0x75, 0x2b, 0xeb, + 0x6e, 0xf2, 0xcc, 0xa7, 0xa6, 0x00, 0x9c, 0x80, 0xa1, 0xc5, 0xc2, 0x0e, 0xc3, 0xe5, 0x51, 0x41, + 0xc3, 0x18, 0x4c, 0x53, 0x89, 0x34, 0x35, 0xbf, 0x40, 0x25, 0xe6, 0xa9, 0xf9, 0x64, 0xe6, 0x3c, + 0x1c, 0xd4, 0x54, 0xa7, 0x7c, 0x89, 0x67, 0xf3, 0x88, 0x8c, 0xec, 0xd6, 0xc1, 0xd9, 0xbd, 0x3a, + 0x38, 0xb3, 0x5f, 0x07, 0xc1, 0xd4, 0x25, 0x2a, 0x49, 0x25, 0x66, 0xa9, 0xb9, 0xcb, 0x54, 0x2a, + 0x73, 0x16, 0x0e, 0xb0, 0x82, 0xd5, 0x6c, 0xe2, 0x7b, 0xb5, 0x98, 0x89, 0xee, 0xd7, 0x81, 0x3f, + 0x95, 0xa0, 0x52, 0x49, 0x2a, 0x91, 0xcc, 0x4c, 0xc3, 0x41, 0x8d, 0x25, 0x6b, 0xa6, 0xe3, 0xbb, + 0x75, 0x70, 0x5e, 0x33, 0x9d, 0x52, 0x4c, 0xd3, 0x09, 0x2a, 0x9d, 0xa4, 0xd2, 0x29, 0xe5, 0x05, + 0xcc, 0xcc, 0x43, 0x85, 0x51, 0xea, 0xb6, 0x53, 0xbb, 0x75, 0x10, 0xd3, 0x6c, 0x4f, 0x63, 0xd8, + 0x34, 0x95, 0x9a, 0xa3, 0x12, 0xa9, 0x67, 0x8e, 0x52, 0x29, 0x13, 0x57, 0xc9, 0xb8, 0xc5, 0x57, + 0xe9, 0x27, 0xa5, 0xf9, 0x26, 0x15, 0xdf, 0xb9, 0x04, 0x35, 0x97, 0xa4, 0xe6, 0x70, 0x3f, 0x59, + 0x9f, 0xff, 0x0c, 0x71, 0x36, 0xeb, 0xf3, 0x07, 0x88, 0x60, 0xd6, 0xe7, 0x8f, 0x12, 0x13, 0x59, + 0x9f, 0x7f, 0x8a, 0x38, 0x9f, 0xf5, 0xf9, 0x4f, 0x13, 0xb1, 0xac, 0xcf, 0x9f, 0x24, 0x52, 0x59, + 0x9f, 0x7f, 0x88, 0x20, 0xb3, 0x3e, 0xff, 0x49, 0x62, 0x3c, 0xeb, 0xf3, 0x8f, 0x13, 0xa7, 0xb2, + 0x3e, 0xff, 0x29, 0x22, 0x1a, 0xfb, 0x3d, 0x80, 0x91, 0x66, 0xa2, 0x24, 0xc9, 0xe1, 0xac, 0x6e, + 0x97, 0x3c, 0x59, 0x24, 0x45, 0x46, 0x27, 0xbd, 0x53, 0xa1, 0x66, 0x59, 0xd7, 0x89, 0x96, 0x19, + 0x31, 0x5e, 0xcc, 0x49, 0x4b, 0xa1, 0x44, 0x3a, 0x74, 0x4d, 0x16, 0x49, 0xb1, 0xfd, 0x09, 0x18, + 0x5a, 0x52, 0x9e, 0x21, 0x43, 0x20, 0x5e, 0x38, 0xa8, 0x40, 0x7c, 0x58, 0x59, 0xf8, 0xb4, 0x8b, + 0x2c, 0xec, 0x90, 0x82, 0xe5, 0x77, 0xa9, 0x04, 0x37, 0x95, 0x7c, 0x3f, 0xee, 0x58, 0xf2, 0x75, + 0x91, 0x79, 0xef, 0xb7, 0x92, 0x79, 0xdb, 0x3c, 0x4e, 0xdd, 0xb5, 0xde, 0x1b, 0x9d, 0x6b, 0xbd, + 0x36, 0x89, 0xf7, 0x56, 0xc7, 0x12, 0x6f, 0x83, 0xa2, 0xbb, 0xdc, 0x99, 0xa2, 0xeb, 0x90, 0x70, + 0x2f, 0x77, 0x20, 0xe1, 0x6a, 0xe2, 0xed, 0x62, 0xa7, 0xe2, 0xad, 0x29, 0xd8, 0xd2, 0x47, 0x22, + 0xd8, 0x76, 0x45, 0xda, 0xd6, 0x22, 0x6d, 0xba, 0x5d, 0x91, 0xd6, 0xa6, 0xcd, 0x6e, 0x1e, 0x5a, + 0x9b, 0x75, 0x93, 0x64, 0x3f, 0x3e, 0x84, 0x24, 0xfb, 0x4b, 0x52, 0x62, 0xe7, 0xdb, 0x56, 0x62, + 0xed, 0x02, 0xec, 0x8d, 0x4e, 0x05, 0x58, 0x87, 0xee, 0x7a, 0xfb, 0x50, 0xba, 0x6b, 0xa3, 0xdc, + 0xba, 0x71, 0x78, 0xb9, 0xb5, 0x51, 0x53, 0x5d, 0x39, 0x84, 0xa8, 0x69, 0x97, 0x32, 0xd7, 0x3a, + 0x95, 0x32, 0xdd, 0x45, 0xcc, 0xe5, 0x0e, 0x45, 0x4c, 0xbb, 0x7c, 0x79, 0xb3, 0x73, 0xf9, 0xd2, + 0x2e, 0x57, 0xae, 0x1f, 0x56, 0xae, 0x6c, 0x90, 0x27, 0xaf, 0x76, 0x20, 0x4f, 0x5a, 0x45, 0xc9, + 0xb5, 0x26, 0xa2, 0x64, 0xbb, 0x9c, 0xd6, 0xa1, 0x4c, 0x5e, 0x3b, 0xb8, 0x32, 0x69, 0xd7, 0x1d, + 0xef, 0xb7, 0xd4, 0x1d, 0xdb, 0x1d, 0x95, 0x9b, 0xe6, 0x58, 0x3c, 0x6a, 0xc9, 0xb1, 0x99, 0xa6, + 0x78, 0xdc, 0x2e, 0xf2, 0x19, 0x9a, 0xdc, 0xf5, 0x8e, 0x35, 0x39, 0x9b, 0x14, 0x77, 0xe7, 0xb0, + 0x52, 0x9c, 0x53, 0x81, 0x5b, 0x3f, 0xa4, 0x02, 0xd7, 0x28, 0xbc, 0x7d, 0x74, 0x60, 0xe1, 0xcd, + 0x26, 0xaa, 0x7d, 0x7e, 0x74, 0xa2, 0x5a, 0x13, 0x2d, 0xad, 0xf6, 0x0e, 0xa5, 0xb4, 0xb7, 0x28, + 0x68, 0x57, 0x3b, 0x50, 0xd0, 0xac, 0xba, 0xd9, 0x62, 0x67, 0xba, 0x99, 0x55, 0x2d, 0xdb, 0x3c, + 0xac, 0x5a, 0xe6, 0x2a, 0x92, 0x7d, 0x76, 0x54, 0x42, 0x96, 0xab, 0x84, 0x75, 0xfb, 0x90, 0xa2, + 0x8c, 0x53, 0x8e, 0xf9, 0xfa, 0xe8, 0xe4, 0x18, 0x3b, 0x65, 0x7c, 0x8b, 0x1c, 0xd3, 0x4a, 0x85, + 0x59, 0x39, 0x94, 0x0a, 0xf3, 0xee, 0x54, 0x97, 0xa1, 0x7f, 0x5d, 0x75, 0xfc, 0xc3, 0xa9, 0x4c, + 0xcc, 0x29, 0x6e, 0x0c, 0x3d, 0x7b, 0x03, 0xec, 0x8f, 0x32, 0x63, 0x56, 0x55, 0x63, 0xf0, 0xd9, + 0x1b, 0x60, 0xfe, 0x54, 0xfc, 0xed, 0x52, 0x06, 0xf6, 0xb7, 0x3d, 0xca, 0x8c, 0xdb, 0xf4, 0x8b, + 0xd0, 0xb3, 0x37, 0xc0, 0xf2, 0x3b, 0x73, 0xa6, 0x41, 0xa5, 0x20, 0x9f, 0xbd, 0x01, 0x8e, 0x67, + 0x86, 0x2a, 0xa1, 0xaa, 0x0f, 0xe3, 0xc4, 0xa9, 0xd8, 0x7f, 0x27, 0x60, 0x98, 0x46, 0x42, 0x99, + 0xc9, 0x77, 0x59, 0x7e, 0x97, 0xe5, 0x77, 0x59, 0x7e, 0x97, 0xe5, 0x77, 0x59, 0x7e, 0x97, 0xe5, + 0x77, 0x59, 0x7e, 0x97, 0xe5, 0x77, 0x59, 0x7e, 0x97, 0xe5, 0x77, 0x59, 0x7e, 0x97, 0xe5, 0x77, + 0x59, 0xfe, 0x2f, 0x86, 0xe5, 0x7f, 0xd3, 0x1e, 0xcb, 0xbf, 0xdb, 0x06, 0x95, 0x72, 0x70, 0xc6, + 0x2e, 0xcd, 0xff, 0x79, 0xd3, 0xfc, 0xff, 0x4c, 0xc0, 0xc0, 0x4d, 0x24, 0x77, 0x29, 0x7e, 0x97, + 0xe2, 0x77, 0x29, 0x7e, 0x97, 0xe2, 0x77, 0x29, 0x7e, 0x97, 0xe2, 0x77, 0x29, 0x7e, 0x97, 0xe2, + 0x77, 0x29, 0x7e, 0x97, 0xe2, 0x77, 0x29, 0x7e, 0x97, 0xe2, 0x77, 0x29, 0xfe, 0x2f, 0x85, 0xe2, + 0xff, 0xb1, 0x3d, 0x8a, 0xbf, 0xd6, 0xce, 0x77, 0x15, 0x26, 0x5f, 0xec, 0xd2, 0xfb, 0x9f, 0x39, + 0xbd, 0x27, 0xe0, 0x90, 0x91, 0xbd, 0x14, 0xd2, 0xae, 0xc4, 0x44, 0x2e, 0xc1, 0xa1, 0x02, 0x2b, + 0x31, 0x5b, 0x65, 0x94, 0x33, 0x32, 0x19, 0x9e, 0x88, 0xe6, 0x8c, 0x9d, 0xd0, 0x1c, 0x0c, 0x30, + 0xf2, 0x13, 0x78, 0x12, 0x71, 0x18, 0xe3, 0x11, 0xb3, 0xc3, 0x48, 0x79, 0x91, 0x15, 0x64, 0x0b, + 0x9c, 0xb7, 0x25, 0xdc, 0xa8, 0xea, 0x9a, 0x35, 0x3c, 0x4d, 0xdc, 0x75, 0x18, 0xd1, 0x70, 0xf3, + 0x8c, 0x20, 0xe7, 0x4b, 0x8c, 0x05, 0xd4, 0xd7, 0x12, 0xf4, 0xb8, 0xea, 0xb7, 0xa4, 0xba, 0x99, + 0x88, 0x3f, 0x27, 0xa6, 0x74, 0xba, 0x43, 0xa6, 0x64, 0x21, 0x14, 0xad, 0x69, 0x92, 0x1b, 0xa1, + 0xb8, 0xd0, 0x76, 0x29, 0xee, 0x69, 0x4a, 0x28, 0x2e, 0x1e, 0xa0, 0x06, 0xf7, 0xd8, 0x08, 0x45, + 0x63, 0xc5, 0xd5, 0x7b, 0x98, 0x8a, 0x4b, 0xd7, 0x05, 0xfa, 0x0e, 0xae, 0x0b, 0xdc, 0x35, 0x75, + 0x81, 0xfe, 0x83, 0xdd, 0xce, 0xe2, 0xfc, 0x72, 0xcb, 0xd0, 0x09, 0x8e, 0x96, 0xd3, 0x57, 0x9a, + 0x97, 0x6c, 0xb0, 0xb3, 0xcf, 0xbd, 0xd5, 0x8f, 0x1d, 0x9b, 0x14, 0x6e, 0x5b, 0x0e, 0x91, 0x23, + 0xd0, 0xd9, 0xf5, 0x32, 0x0d, 0x37, 0x0f, 0x58, 0x45, 0x0f, 0xe7, 0xf5, 0x08, 0xc1, 0x23, 0xbc, + 0x1e, 0x61, 0xf0, 0x1d, 0x5e, 0x8f, 0x10, 0x3a, 0xda, 0xeb, 0x11, 0xec, 0xea, 0x28, 0xd1, 0x52, + 0x13, 0xb0, 0xa8, 0xa3, 0x69, 0xbb, 0x3a, 0x3a, 0x84, 0x6f, 0xbf, 0xb2, 0xdd, 0xa4, 0xa1, 0x5e, + 0x82, 0xe5, 0xb5, 0x09, 0xa6, 0x9b, 0x8d, 0xd2, 0x25, 0xd9, 0xe6, 0xbd, 0x4b, 0xfd, 0xcf, 0x5f, + 0x00, 0x2f, 0x04, 0x0a, 0xa2, 0x53, 0xc3, 0xfc, 0xcc, 0x5d, 0xc3, 0x1c, 0x3e, 0xe8, 0x4d, 0x07, + 0x2b, 0x5e, 0x37, 0x1d, 0xb3, 0x19, 0x0f, 0x1e, 0xe9, 0x88, 0x07, 0x5f, 0xd9, 0x69, 0x38, 0xc5, + 0xbf, 0xab, 0x03, 0x06, 0x06, 0x8c, 0x0f, 0x22, 0x41, 0xc2, 0xfe, 0x1d, 0xe4, 0x2c, 0x95, 0x9e, + 0xa5, 0x12, 0x73, 0x54, 0x62, 0xd6, 0xe5, 0xab, 0xc7, 0x39, 0x6a, 0x81, 0x9a, 0xa7, 0x2e, 0x51, + 0x89, 0x04, 0x95, 0x48, 0x52, 0x89, 0x14, 0x95, 0x48, 0xc3, 0x91, 0x86, 0x0f, 0x1b, 0x3d, 0xc9, + 0xd9, 0xcc, 0x4c, 0x23, 0xb7, 0x20, 0x4f, 0xee, 0xd6, 0x81, 0x07, 0x5f, 0xb9, 0x50, 0x07, 0xbd, + 0x49, 0x2a, 0x45, 0xa5, 0x9f, 0xbd, 0x01, 0x7d, 0x1f, 0x72, 0x3c, 0x87, 0xae, 0x66, 0x92, 0xd6, + 0xba, 0xe1, 0xac, 0xf6, 0x4d, 0x63, 0x8f, 0xfd, 0x9b, 0xc6, 0x54, 0xca, 0x5e, 0x4f, 0xa4, 0x6d, + 0xb5, 0xc2, 0x39, 0xed, 0xeb, 0xc6, 0x1e, 0xe7, 0xd7, 0x8d, 0x8e, 0x1a, 0x22, 0xe5, 0xac, 0x62, + 0x62, 0xbb, 0x75, 0x40, 0xec, 0xd5, 0x41, 0x58, 0x19, 0x57, 0x62, 0x9e, 0x4a, 0x2c, 0x34, 0x94, + 0x35, 0x59, 0x9f, 0x1f, 0x10, 0x1e, 0xc7, 0xe7, 0x8a, 0x03, 0x04, 0xcc, 0xfa, 0xfc, 0x61, 0x82, + 0x88, 0xbd, 0x86, 0x70, 0x98, 0x36, 0xc9, 0xac, 0x51, 0x60, 0xdc, 0x80, 0xc3, 0x5b, 0x35, 0x81, + 0x91, 0xa4, 0x9c, 0x8d, 0x1c, 0xb7, 0xae, 0x09, 0x86, 0x54, 0x17, 0x0b, 0x1e, 0xb9, 0x0c, 0x49, + 0x46, 0x10, 0xca, 0x35, 0x3b, 0x4c, 0xeb, 0x2a, 0x80, 0xc0, 0x1e, 0x56, 0x14, 0x04, 0x87, 0xf3, + 0x55, 0x49, 0xe6, 0x2b, 0x76, 0x98, 0x5e, 0xd7, 0x53, 0x11, 0xdf, 0x87, 0xe7, 0xb8, 0xed, 0x20, + 0xec, 0xb8, 0x13, 0x04, 0x2b, 0xf1, 0x18, 0xd1, 0xda, 0x8d, 0x59, 0x66, 0x04, 0x3b, 0x2b, 0x33, + 0x06, 0x8f, 0xae, 0xcc, 0x08, 0x1d, 0xbe, 0xcc, 0x20, 0x0e, 0x5c, 0x66, 0x0c, 0x1d, 0x41, 0x99, + 0x41, 0x76, 0x5c, 0x66, 0x5c, 0x52, 0x75, 0xcb, 0x3c, 0x5f, 0x55, 0x4a, 0x7e, 0x2d, 0x6f, 0x34, + 0x4b, 0xb1, 0x4a, 0x32, 0x5e, 0x52, 0x2d, 0x95, 0x13, 0x4a, 0x73, 0x52, 0xc3, 0x38, 0xd6, 0x6a, + 0x19, 0x34, 0xa7, 0x25, 0xbe, 0x80, 0x34, 0x05, 0x36, 0xa0, 0x39, 0xe3, 0x68, 0x68, 0x7b, 0x39, + 0xd0, 0x77, 0xe0, 0x72, 0x40, 0x3b, 0xb0, 0xad, 0x45, 0xc1, 0x46, 0x43, 0xfd, 0x74, 0xa0, 0xff, + 0x6d, 0xa4, 0x21, 0x36, 0xe8, 0x56, 0x6a, 0x15, 0xe5, 0xef, 0xf4, 0xa6, 0xbb, 0x7b, 0x66, 0x2d, + 0x35, 0x70, 0xb0, 0x5a, 0x6a, 0xc4, 0xf5, 0x46, 0x16, 0x1d, 0xed, 0xca, 0xa6, 0x5b, 0xe6, 0xbe, + 0x06, 0x07, 0xcd, 0xcc, 0x9d, 0x9c, 0x02, 0x70, 0xd8, 0xcc, 0xdd, 0x7e, 0x25, 0x2b, 0xcf, 0x51, + 0x89, 0xcb, 0x70, 0xd4, 0x99, 0xb8, 0xfd, 0xf3, 0x54, 0x62, 0x96, 0x5a, 0xa0, 0x2e, 0x2b, 0x14, + 0x4c, 0xcd, 0xc6, 0x06, 0x05, 0xdb, 0xad, 0x03, 0xef, 0x5e, 0x1d, 0x78, 0x94, 0xe4, 0x97, 0xa2, + 0xd2, 0xd4, 0x5c, 0x26, 0x6e, 0x4d, 0xc5, 0xa7, 0x77, 0xeb, 0x20, 0xb8, 0x57, 0x07, 0x01, 0x25, + 0xa3, 0xea, 0x49, 0xdf, 0x9e, 0x86, 0x67, 0x6d, 0x69, 0xd8, 0x9a, 0x4d, 0xfd, 0x4a, 0x36, 0xbd, + 0xa4, 0x26, 0x54, 0x6b, 0x0a, 0x7e, 0x0f, 0x86, 0xf4, 0x57, 0xcd, 0x32, 0x8c, 0x91, 0xbd, 0x3a, + 0x18, 0xc6, 0x67, 0xc3, 0x2c, 0x95, 0x4c, 0x64, 0x7d, 0x7e, 0x0f, 0xe1, 0xcd, 0xfa, 0xfc, 0xfd, + 0x84, 0xdf, 0x60, 0x74, 0x61, 0x82, 0xc8, 0xfa, 0xfc, 0xc3, 0xc4, 0x48, 0xe6, 0xcf, 0x60, 0xef, + 0xc7, 0x68, 0xcf, 0xcb, 0x1f, 0xa3, 0x3d, 0xaf, 0x7f, 0x8c, 0x82, 0xaf, 0xf6, 0xa3, 0xe0, 0xaf, + 0xfb, 0x51, 0xf0, 0xfd, 0x7e, 0x14, 0xec, 0xed, 0x47, 0xc1, 0xcb, 0xfd, 0x28, 0xf8, 0x61, 0x3f, + 0x0a, 0x7e, 0xda, 0x8f, 0xf6, 0xbc, 0xde, 0x8f, 0x82, 0x3f, 0xbd, 0x8a, 0xf6, 0xec, 0xbe, 0x8a, + 0x82, 0xbd, 0x57, 0xd1, 0x9e, 0x97, 0xaf, 0xa2, 0x3d, 0x9f, 0xde, 0x2b, 0xf2, 0xc2, 0x17, 0xc5, + 0xf8, 0x0e, 0x5f, 0x96, 0x91, 0x28, 0x32, 0xf1, 0xaa, 0x34, 0x83, 0xff, 0xd8, 0xe6, 0xc5, 0xca, + 0xb4, 0x20, 0xf2, 0x3b, 0x6c, 0x01, 0x89, 0xd3, 0x7a, 0xf3, 0x8c, 0xb0, 0x55, 0xe4, 0x67, 0xd0, + 0x97, 0xb2, 0x7e, 0xd1, 0x6a, 0xd3, 0xfb, 0x56, 0xb7, 0xfa, 0xf0, 0xc9, 0x9c, 0xfa, 0x7f, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x7a, 0xb8, 0x26, 0x5d, 0x9b, 0x55, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { @@ -3860,7 +3899,10 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.OpenapiValidationAction.Equal(that1.OpenapiValidationAction) { return false } - if !this.ThreatIntelligenceAction.Equal(that1.ThreatIntelligenceAction) { + if !this.ThreatMeshAction.Equal(that1.ThreatMeshAction) { + return false + } + if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { return false } if len(this.OriginServerSubsetsAction) != len(that1.OriginServerSubsetsAction) { @@ -4507,6 +4549,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.RequestConstraints.Equal(that1.RequestConstraints) { return false } + if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { + return false + } if len(this.OriginServerSubsetsAction) != len(that1.OriginServerSubsetsAction) { return false } @@ -5122,6 +5167,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.RequestConstraints.Equal(that1.RequestConstraints) { return false } + if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { + return false + } if len(this.OriginServerSubsetsAction) != len(that1.OriginServerSubsetsAction) { return false } @@ -5737,6 +5785,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.RequestConstraints.Equal(that1.RequestConstraints) { return false } + if !this.SegmentPolicy.Equal(that1.SegmentPolicy) { + return false + } if len(this.OriginServerSubsetsAction) != len(that1.OriginServerSubsetsAction) { return false } @@ -6924,7 +6975,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 59) + s := make([]string, 0, 60) s = append(s, "&service_policy_rule.GlobalSpecType{") s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") if this.ClientChoice != nil { @@ -7040,8 +7091,11 @@ func (this *GlobalSpecType) GoString() string { if this.OpenapiValidationAction != nil { s = append(s, "OpenapiValidationAction: "+fmt.Sprintf("%#v", this.OpenapiValidationAction)+",\n") } - if this.ThreatIntelligenceAction != nil { - s = append(s, "ThreatIntelligenceAction: "+fmt.Sprintf("%#v", this.ThreatIntelligenceAction)+",\n") + if this.ThreatMeshAction != nil { + s = append(s, "ThreatMeshAction: "+fmt.Sprintf("%#v", this.ThreatMeshAction)+",\n") + } + if this.SegmentPolicy != nil { + s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") } keysForOriginServerSubsetsAction := make([]string, 0, len(this.OriginServerSubsetsAction)) for k, _ := range this.OriginServerSubsetsAction { @@ -7212,7 +7266,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 53) + s := make([]string, 0, 54) s = append(s, "&service_policy_rule.CreateSpecType{") s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") if this.ClientChoice != nil { @@ -7313,6 +7367,9 @@ func (this *CreateSpecType) GoString() string { if this.RequestConstraints != nil { s = append(s, "RequestConstraints: "+fmt.Sprintf("%#v", this.RequestConstraints)+",\n") } + if this.SegmentPolicy != nil { + s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") + } keysForOriginServerSubsetsAction := make([]string, 0, len(this.OriginServerSubsetsAction)) for k, _ := range this.OriginServerSubsetsAction { keysForOriginServerSubsetsAction = append(keysForOriginServerSubsetsAction, k) @@ -7472,7 +7529,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 53) + s := make([]string, 0, 54) s = append(s, "&service_policy_rule.ReplaceSpecType{") s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") if this.ClientChoice != nil { @@ -7573,6 +7630,9 @@ func (this *ReplaceSpecType) GoString() string { if this.RequestConstraints != nil { s = append(s, "RequestConstraints: "+fmt.Sprintf("%#v", this.RequestConstraints)+",\n") } + if this.SegmentPolicy != nil { + s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") + } keysForOriginServerSubsetsAction := make([]string, 0, len(this.OriginServerSubsetsAction)) for k, _ := range this.OriginServerSubsetsAction { keysForOriginServerSubsetsAction = append(keysForOriginServerSubsetsAction, k) @@ -7732,7 +7792,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 53) + s := make([]string, 0, 54) s = append(s, "&service_policy_rule.GetSpecType{") s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") if this.ClientChoice != nil { @@ -7833,6 +7893,9 @@ func (this *GetSpecType) GoString() string { if this.RequestConstraints != nil { s = append(s, "RequestConstraints: "+fmt.Sprintf("%#v", this.RequestConstraints)+",\n") } + if this.SegmentPolicy != nil { + s = append(s, "SegmentPolicy: "+fmt.Sprintf("%#v", this.SegmentPolicy)+",\n") + } keysForOriginServerSubsetsAction := make([]string, 0, len(this.OriginServerSubsetsAction)) for k, _ := range this.OriginServerSubsetsAction { keysForOriginServerSubsetsAction = append(keysForOriginServerSubsetsAction, k) @@ -8334,9 +8397,23 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x82 } } - if m.ThreatIntelligenceAction != nil { + if m.SegmentPolicy != nil { { - size, err := m.ThreatIntelligenceAction.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xa2 + } + if m.ThreatMeshAction != nil { + { + size, err := m.ThreatMeshAction.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -9262,20 +9339,20 @@ func (m *IPThreatCategoryListType) MarshalToSizedBuffer(dAtA []byte) (int, error var l int _ = l if len(m.IpThreatCategories) > 0 { - dAtA43 := make([]byte, len(m.IpThreatCategories)*10) - var j42 int + dAtA44 := make([]byte, len(m.IpThreatCategories)*10) + var j43 int for _, num := range m.IpThreatCategories { for num >= 1<<7 { - dAtA43[j42] = uint8(uint64(num)&0x7f | 0x80) + dAtA44[j43] = uint8(uint64(num)&0x7f | 0x80) num >>= 7 - j42++ + j43++ } - dAtA43[j42] = uint8(num) - j42++ + dAtA44[j43] = uint8(num) + j43++ } - i -= j42 - copy(dAtA[i:], dAtA43[:j42]) - i = encodeVarintTypes(dAtA, i, uint64(j42)) + i -= j43 + copy(dAtA[i:], dAtA44[:j43]) + i = encodeVarintTypes(dAtA, i, uint64(j43)) i-- dAtA[i] = 0x1 i-- @@ -9346,6 +9423,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x82 } } + if m.SegmentPolicy != nil { + { + size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xa2 + } if m.RequestConstraints != nil { { size, err := m.RequestConstraints.MarshalToSizedBuffer(dAtA[:i]) @@ -10227,6 +10318,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x82 } } + if m.SegmentPolicy != nil { + { + size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xa2 + } if m.RequestConstraints != nil { { size, err := m.RequestConstraints.MarshalToSizedBuffer(dAtA[:i]) @@ -11108,6 +11213,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x82 } } + if m.SegmentPolicy != nil { + { + size, err := m.SegmentPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xa2 + } if m.RequestConstraints != nil { { size, err := m.RequestConstraints.MarshalToSizedBuffer(dAtA[:i]) @@ -12940,8 +13059,12 @@ func (m *GlobalSpecType) Size() (n int) { n += 2 + l + sovTypes(uint64(l)) } } - if m.ThreatIntelligenceAction != nil { - l = m.ThreatIntelligenceAction.Size() + if m.ThreatMeshAction != nil { + l = m.ThreatMeshAction.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.SegmentPolicy != nil { + l = m.SegmentPolicy.Size() n += 2 + l + sovTypes(uint64(l)) } if len(m.OriginServerSubsetsAction) > 0 { @@ -13332,6 +13455,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.RequestConstraints.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.SegmentPolicy != nil { + l = m.SegmentPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.OriginServerSubsetsAction) > 0 { for k, v := range m.OriginServerSubsetsAction { _ = k @@ -13704,6 +13831,10 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.RequestConstraints.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.SegmentPolicy != nil { + l = m.SegmentPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.OriginServerSubsetsAction) > 0 { for k, v := range m.OriginServerSubsetsAction { _ = k @@ -14076,6 +14207,10 @@ func (m *GetSpecType) Size() (n int) { l = m.RequestConstraints.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.SegmentPolicy != nil { + l = m.SegmentPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.OriginServerSubsetsAction) > 0 { for k, v := range m.OriginServerSubsetsAction { _ = k @@ -14796,7 +14931,8 @@ func (this *GlobalSpecType) String() string { `GraphqlSettings:` + strings.Replace(fmt.Sprintf("%v", this.GraphqlSettings), "GraphQLSettingsType", "policy.GraphQLSettingsType", 1) + `,`, `OpenapiValidationAction:` + strings.Replace(fmt.Sprintf("%v", this.OpenapiValidationAction), "OpenApiValidationAction", "policy.OpenApiValidationAction", 1) + `,`, `AdditionalApiGroupMatchers:` + repeatedStringForAdditionalApiGroupMatchers + `,`, - `ThreatIntelligenceAction:` + strings.Replace(fmt.Sprintf("%v", this.ThreatIntelligenceAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, + `ThreatMeshAction:` + strings.Replace(fmt.Sprintf("%v", this.ThreatMeshAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, + `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `OriginServerSubsetsAction:` + mapStringForOriginServerSubsetsAction + `,`, `JwtClaims:` + repeatedStringForJwtClaims + `,`, `}`, @@ -15068,6 +15204,7 @@ func (this *CreateSpecType) String() string { `MumAction:` + strings.Replace(fmt.Sprintf("%v", this.MumAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `IpReputationAction:` + strings.Replace(fmt.Sprintf("%v", this.IpReputationAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `RequestConstraints:` + strings.Replace(fmt.Sprintf("%v", this.RequestConstraints), "RequestConstraintType", "policy.RequestConstraintType", 1) + `,`, + `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `OriginServerSubsetsAction:` + mapStringForOriginServerSubsetsAction + `,`, `JwtClaims:` + repeatedStringForJwtClaims + `,`, `}`, @@ -15329,6 +15466,7 @@ func (this *ReplaceSpecType) String() string { `MumAction:` + strings.Replace(fmt.Sprintf("%v", this.MumAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `IpReputationAction:` + strings.Replace(fmt.Sprintf("%v", this.IpReputationAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `RequestConstraints:` + strings.Replace(fmt.Sprintf("%v", this.RequestConstraints), "RequestConstraintType", "policy.RequestConstraintType", 1) + `,`, + `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `OriginServerSubsetsAction:` + mapStringForOriginServerSubsetsAction + `,`, `JwtClaims:` + repeatedStringForJwtClaims + `,`, `}`, @@ -15590,6 +15728,7 @@ func (this *GetSpecType) String() string { `MumAction:` + strings.Replace(fmt.Sprintf("%v", this.MumAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `IpReputationAction:` + strings.Replace(fmt.Sprintf("%v", this.IpReputationAction), "ModifyAction", "policy.ModifyAction", 1) + `,`, `RequestConstraints:` + strings.Replace(fmt.Sprintf("%v", this.RequestConstraints), "RequestConstraintType", "policy.RequestConstraintType", 1) + `,`, + `SegmentPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SegmentPolicy), "SegmentPolicyType", "policy.SegmentPolicyType", 1) + `,`, `OriginServerSubsetsAction:` + mapStringForOriginServerSubsetsAction + `,`, `JwtClaims:` + repeatedStringForJwtClaims + `,`, `}`, @@ -17908,7 +18047,7 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 67: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ThreatIntelligenceAction", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ThreatMeshAction", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -17935,10 +18074,46 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ThreatIntelligenceAction == nil { - m.ThreatIntelligenceAction = &policy.ModifyAction{} + if m.ThreatMeshAction == nil { + m.ThreatMeshAction = &policy.ModifyAction{} } - if err := m.ThreatIntelligenceAction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ThreatMeshAction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 68: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SegmentPolicy == nil { + m.SegmentPolicy = &policy.SegmentPolicyType{} + } + if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -19900,6 +20075,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 68: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SegmentPolicy == nil { + m.SegmentPolicy = &policy.SegmentPolicyType{} + } + if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 96: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetsAction", wireType) @@ -21736,6 +21947,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 68: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SegmentPolicy == nil { + m.SegmentPolicy = &policy.SegmentPolicyType{} + } + if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 96: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetsAction", wireType) @@ -23572,6 +23819,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 68: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SegmentPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SegmentPolicy == nil { + m.SegmentPolicy = &policy.SegmentPolicyType{} + } + if err := m.SegmentPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 96: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetsAction", wireType) diff --git a/pbgo/extschema/schema/service_policy_rule/types.vesmsg.go b/pbgo/extschema/schema/service_policy_rule/types.vesmsg.go index 3e1e8256f..ba309ac63 100644 --- a/pbgo/extschema/schema/service_policy_rule/types.vesmsg.go +++ b/pbgo/extschema/schema/service_policy_rule/types.vesmsg.go @@ -817,6 +817,12 @@ func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -1039,6 +1045,24 @@ func (m *CreateSpecType) GetRateLimiterDBEntries(ctx context.Context, d db.Inter return entries, nil } +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { + if m.GetSegmentPolicy() == nil { + return nil, nil + } + + drInfos, err := m.GetSegmentPolicy().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "segment_policy." + dri.DRField + } + return drInfos, err + +} + type ValidateCreateSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -1986,6 +2010,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["segment_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("segment_policy")) + if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["server_selector"]; exists { vOpts := append(opts, db.WithValidateField("server_selector")) @@ -2277,6 +2310,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["request_constraints"] = ves_io_schema_policy.RequestConstraintTypeValidator().Validate + v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate + return v }() @@ -2363,6 +2398,12 @@ func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -2585,6 +2626,24 @@ func (m *GetSpecType) GetRateLimiterDBEntries(ctx context.Context, d db.Interfac return entries, nil } +// GetDRefInfo for the field's type +func (m *GetSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { + if m.GetSegmentPolicy() == nil { + return nil, nil + } + + drInfos, err := m.GetSegmentPolicy().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "segment_policy." + dri.DRField + } + return drInfos, err + +} + type ValidateGetSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -3532,6 +3591,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["segment_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("segment_policy")) + if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["server_selector"]; exists { vOpts := append(opts, db.WithValidateField("server_selector")) @@ -3823,6 +3891,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["request_constraints"] = ves_io_schema_policy.RequestConstraintTypeValidator().Validate + v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate + return v }() @@ -3915,6 +3985,12 @@ func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -4182,6 +4258,24 @@ func (m *GlobalSpecType) GetRateLimiterDBEntries(ctx context.Context, d db.Inter return entries, nil } +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { + if m.GetSegmentPolicy() == nil { + return nil, nil + } + + drInfos, err := m.GetSegmentPolicy().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "segment_policy." + dri.DRField + } + return drInfos, err + +} + type ValidateGlobalSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -5259,6 +5353,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["segment_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("segment_policy")) + if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["server_selector"]; exists { vOpts := append(opts, db.WithValidateField("server_selector")) @@ -5277,10 +5380,10 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["threat_intelligence_action"]; exists { + if fv, exists := v.FldValidators["threat_mesh_action"]; exists { - vOpts := append(opts, db.WithValidateField("threat_intelligence_action")) - if err := fv(ctx, m.GetThreatIntelligenceAction(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("threat_mesh_action")) + if err := fv(ctx, m.GetThreatMeshAction(), vOpts...); err != nil { return err } @@ -5596,7 +5699,9 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["openapi_validation_action"] = ves_io_schema_policy.OpenApiValidationActionValidator().Validate - v.FldValidators["threat_intelligence_action"] = ves_io_schema_policy.ModifyActionValidator().Validate + v.FldValidators["threat_mesh_action"] = ves_io_schema_policy.ModifyActionValidator().Validate + + v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate return v }() @@ -6376,6 +6481,12 @@ func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetSegmentPolicyDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicyDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -6598,6 +6709,24 @@ func (m *ReplaceSpecType) GetRateLimiterDBEntries(ctx context.Context, d db.Inte return entries, nil } +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetSegmentPolicyDRefInfo() ([]db.DRefInfo, error) { + if m.GetSegmentPolicy() == nil { + return nil, nil + } + + drInfos, err := m.GetSegmentPolicy().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSegmentPolicy().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "segment_policy." + dri.DRField + } + return drInfos, err + +} + type ValidateReplaceSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -7545,6 +7674,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["segment_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("segment_policy")) + if err := fv(ctx, m.GetSegmentPolicy(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["server_selector"]; exists { vOpts := append(opts, db.WithValidateField("server_selector")) @@ -7836,6 +7974,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["request_constraints"] = ves_io_schema_policy.RequestConstraintTypeValidator().Validate + v.FldValidators["segment_policy"] = ves_io_schema_policy.SegmentPolicyTypeValidator().Validate + return v }() @@ -8322,6 +8462,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.RateLimiter = f.GetRateLimiter() m.RequestConstraints = f.GetRequestConstraints() m.Scheme = f.GetScheme() + m.SegmentPolicy = f.GetSegmentPolicy() m.ServerSelector = f.GetServerSelector() m.ShapeProtectedEndpointAction = f.GetShapeProtectedEndpointAction() m.TlsFingerprintMatcher = f.GetTlsFingerprintMatcher() @@ -8397,6 +8538,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.RateLimiter = m1.RateLimiter f.RequestConstraints = m1.RequestConstraints f.Scheme = m1.Scheme + f.SegmentPolicy = m1.SegmentPolicy f.ServerSelector = m1.ServerSelector f.ShapeProtectedEndpointAction = m1.ShapeProtectedEndpointAction f.TlsFingerprintMatcher = m1.TlsFingerprintMatcher @@ -8695,6 +8837,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.RateLimiter = f.GetRateLimiter() m.RequestConstraints = f.GetRequestConstraints() m.Scheme = f.GetScheme() + m.SegmentPolicy = f.GetSegmentPolicy() m.ServerSelector = f.GetServerSelector() m.ShapeProtectedEndpointAction = f.GetShapeProtectedEndpointAction() m.TlsFingerprintMatcher = f.GetTlsFingerprintMatcher() @@ -8770,6 +8913,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.RateLimiter = m1.RateLimiter f.RequestConstraints = m1.RequestConstraints f.Scheme = m1.Scheme + f.SegmentPolicy = m1.SegmentPolicy f.ServerSelector = m1.ServerSelector f.ShapeProtectedEndpointAction = m1.ShapeProtectedEndpointAction f.TlsFingerprintMatcher = m1.TlsFingerprintMatcher @@ -9215,6 +9359,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.RateLimiter = f.GetRateLimiter() m.RequestConstraints = f.GetRequestConstraints() m.Scheme = f.GetScheme() + m.SegmentPolicy = f.GetSegmentPolicy() m.ServerSelector = f.GetServerSelector() m.ShapeProtectedEndpointAction = f.GetShapeProtectedEndpointAction() m.TlsFingerprintMatcher = f.GetTlsFingerprintMatcher() @@ -9290,6 +9435,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.RateLimiter = m1.RateLimiter f.RequestConstraints = m1.RequestConstraints f.Scheme = m1.Scheme + f.SegmentPolicy = m1.SegmentPolicy f.ServerSelector = m1.ServerSelector f.ShapeProtectedEndpointAction = m1.ShapeProtectedEndpointAction f.TlsFingerprintMatcher = m1.TlsFingerprintMatcher diff --git a/pbgo/extschema/schema/signup/crudapi/api.vesapi.go b/pbgo/extschema/schema/signup/crudapi/api.vesapi.go index 8cebe2686..29c02f03a 100644 --- a/pbgo/extschema/schema/signup/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/signup/crudapi/api.vesapi.go @@ -2848,6 +2848,25 @@ var APISwaggerJSON string = `{ } } }, + "infraprotect_informationPolicer": { + "type": "object", + "description": "Policer config for bandwidth restrictions", + "title": "Policer Config", + "x-displayname": "Policer Config", + "x-ves-proto-message": "ves.io.schema.infraprotect_information.Policer", + "properties": { + "bandwidth_max_mb": { + "type": "integer", + "description": " Bandwidth max allowed for a customer defined by contract\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 9999\n", + "title": "Bandwidth Max", + "format": "int64", + "x-displayname": "Bandwidth Max in MB", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "9999" + } + } + } + }, "protobufAny": { "type": "object", "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", @@ -3092,10 +3111,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3667,7 +3690,7 @@ var APISwaggerJSON string = `{ "schemainfraprotect_informationGlobalSpecType": { "type": "object", "description": "Organisation information", - "title": "information", + "title": "Information", "x-displayname": "Information", "x-ves-oneof-field-as_path_choice": "[\"as_path_choice_full\",\"as_path_choice_none\",\"as_path_choice_origin\"]", "x-ves-oneof-field-default_tunnel_bgp_secret_choice": "[\"default_tunnel_bgp_secret\",\"default_tunnel_bgp_secret_none\"]", @@ -3720,6 +3743,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "No default tunnel BGP secret" }, + "policer": { + "description": " Policer config for bandwidth restrictions", + "title": "Policer Config", + "$ref": "#/definitions/infraprotect_informationPolicer", + "x-displayname": "Policer Config" + }, "prefixes": { "type": "array", "description": " List of tenant 'super' prefixes noted in CIDR\n\nExample: - \"value\"-", @@ -3827,12 +3856,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaCRMInfo", "x-displayname": "CrmDetails" }, - "crm_info": { - "description": " message to include crm info in TEEM pipeline.\n This field is deprecated. use CrmDetails instead", - "title": "crm_info", - "$ref": "#/definitions/signupCrmInfo", - "x-displayname": "CrmInfo" - }, "currency": { "type": "string", "description": " preferred currency on the tenant level - individual billing accounts may\n override this.\n\nExample: - \"USD\"-", @@ -4087,13 +4110,6 @@ var APISwaggerJSON string = `{ } } }, - "signupCrmInfo": { - "type": "object", - "description": "Deprecated: use the CRMInfo defined in schema/types.proto", - "title": "fileds of crm info meesage", - "x-displayname": "Crm Info", - "x-ves-proto-message": "ves.io.schema.signup.CrmInfo" - }, "signupSpecType": { "type": "object", "description": "Shape of the signup specification", diff --git a/pbgo/extschema/schema/signup/pkg.vespkg.go b/pbgo/extschema/schema/signup/pkg.vespkg.go index 9ddce1ced..d7d836aac 100644 --- a/pbgo/extschema/schema/signup/pkg.vespkg.go +++ b/pbgo/extschema/schema/signup/pkg.vespkg.go @@ -41,7 +41,6 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.signup.ValidationErrorField"] = ValidationErrorFieldValidator() vr["ves.io.schema.signup.CreateSpecType"] = CreateSpecTypeValidator() - vr["ves.io.schema.signup.CrmInfo"] = CrmInfoValidator() vr["ves.io.schema.signup.GetSpecType"] = GetSpecTypeValidator() vr["ves.io.schema.signup.GlobalSpecType"] = GlobalSpecTypeValidator() vr["ves.io.schema.signup.ReplaceSpecType"] = ReplaceSpecTypeValidator() @@ -50,16 +49,14 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.signup.BillingMeta"] = BillingMetaValidator() vr["ves.io.schema.signup.CompanyMeta"] = CompanyMetaValidator() vr["ves.io.schema.signup.ContactMeta"] = ContactMetaValidator() - vr["ves.io.schema.signup.CrmInfoV2"] = CrmInfoV2Validator() vr["ves.io.schema.signup.InternalMeta"] = InternalMetaValidator() - vr["ves.io.schema.signup.MarketplaceAws"] = MarketplaceAwsValidator() - vr["ves.io.schema.signup.SourceInternalScaling"] = SourceInternalScalingValidator() - vr["ves.io.schema.signup.SourceInternalSre"] = SourceInternalSreValidator() - vr["ves.io.schema.signup.SourceInternalSso"] = SourceInternalSsoValidator() - vr["ves.io.schema.signup.SourceMarketplace"] = SourceMarketplaceValidator() - vr["ves.io.schema.signup.SourceMsp"] = SourceMspValidator() - vr["ves.io.schema.signup.SourcePlanTransition"] = SourcePlanTransitionValidator() - vr["ves.io.schema.signup.SourcePublic"] = SourcePublicValidator() + vr["ves.io.schema.signup.SignupTypeInternalScaling"] = SignupTypeInternalScalingValidator() + vr["ves.io.schema.signup.SignupTypeInternalSre"] = SignupTypeInternalSreValidator() + vr["ves.io.schema.signup.SignupTypeInternalSso"] = SignupTypeInternalSsoValidator() + vr["ves.io.schema.signup.SignupTypeMarketplace"] = SignupTypeMarketplaceValidator() + vr["ves.io.schema.signup.SignupTypeMsp"] = SignupTypeMspValidator() + vr["ves.io.schema.signup.SignupTypePlanTransition"] = SignupTypePlanTransitionValidator() + vr["ves.io.schema.signup.SignupTypePublic"] = SignupTypePublicValidator() vr["ves.io.schema.signup.UserMeta"] = UserMetaValidator() } diff --git a/pbgo/extschema/schema/signup/private_customapi_eywaprime.pb.go b/pbgo/extschema/schema/signup/private_customapi_eywaprime.pb.go index 0099fec58..084cd62d0 100644 --- a/pbgo/extschema/schema/signup/private_customapi_eywaprime.pb.go +++ b/pbgo/extschema/schema/signup/private_customapi_eywaprime.pb.go @@ -19,7 +19,7 @@ import ( grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" - _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/infraprotect_information" _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" io "io" @@ -67,19 +67,26 @@ type CreateV2Request struct { // x-required // details about the billing of the account BillingDetails *BillingMeta `protobuf:"bytes,4,opt,name=billing_details,json=billingDetails,proto3" json:"billing_details,omitempty"` - // Source Choice + // Signup Type // - // x-displayName: "Source Choice" + // x-displayName: "Signup Type" // x-required - // origin of the request + // indicates what type of signup is the request for, example scaling, msp...etc + // signup type can be defined as a specific usecase the tenant is created for // - // Types that are valid to be assigned to SourceChoice: - // *CreateV2Request_SourceInternalSre - // *CreateV2Request_SourceInternalScaling - // *CreateV2Request_SourcePlanTransition - // *CreateV2Request_SourceMsp - // *CreateV2Request_SourceMarketplace - SourceChoice isCreateV2Request_SourceChoice `protobuf_oneof:"source_choice"` + // Types that are valid to be assigned to SignupType: + // *CreateV2Request_SignupTypeInternalSre + // *CreateV2Request_SignupTypeInternalScaling + // *CreateV2Request_SignupTypePlanTransition + // *CreateV2Request_SignupTypeMsp + // *CreateV2Request_SignupTypeMarketplace + SignupType isCreateV2Request_SignupType `protobuf_oneof:"signup_type"` + // Origin + // + // x-displayName: "Origin" + // x-required + // origin of the signup, from which platform signup is originated, example f5xc, aws..etc + Origin schema.SignupOrigin `protobuf:"varint,12,opt,name=origin,proto3,enum=ves.io.schema.SignupOrigin" json:"origin,omitempty"` } func (m *CreateV2Request) Reset() { *m = CreateV2Request{} } @@ -114,38 +121,38 @@ func (m *CreateV2Request) XXX_DiscardUnknown() { var xxx_messageInfo_CreateV2Request proto.InternalMessageInfo -type isCreateV2Request_SourceChoice interface { - isCreateV2Request_SourceChoice() +type isCreateV2Request_SignupType interface { + isCreateV2Request_SignupType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CreateV2Request_SourceInternalSre struct { - SourceInternalSre *SourceInternalSre `protobuf:"bytes,7,opt,name=source_internal_sre,json=sourceInternalSre,proto3,oneof" json:"source_internal_sre,omitempty"` +type CreateV2Request_SignupTypeInternalSre struct { + SignupTypeInternalSre *SignupTypeInternalSre `protobuf:"bytes,7,opt,name=signup_type_internal_sre,json=signupTypeInternalSre,proto3,oneof" json:"signup_type_internal_sre,omitempty"` } -type CreateV2Request_SourceInternalScaling struct { - SourceInternalScaling *SourceInternalScaling `protobuf:"bytes,8,opt,name=source_internal_scaling,json=sourceInternalScaling,proto3,oneof" json:"source_internal_scaling,omitempty"` +type CreateV2Request_SignupTypeInternalScaling struct { + SignupTypeInternalScaling *SignupTypeInternalScaling `protobuf:"bytes,8,opt,name=signup_type_internal_scaling,json=signupTypeInternalScaling,proto3,oneof" json:"signup_type_internal_scaling,omitempty"` } -type CreateV2Request_SourcePlanTransition struct { - SourcePlanTransition *SourcePlanTransition `protobuf:"bytes,9,opt,name=source_plan_transition,json=sourcePlanTransition,proto3,oneof" json:"source_plan_transition,omitempty"` +type CreateV2Request_SignupTypePlanTransition struct { + SignupTypePlanTransition *SignupTypePlanTransition `protobuf:"bytes,9,opt,name=signup_type_plan_transition,json=signupTypePlanTransition,proto3,oneof" json:"signup_type_plan_transition,omitempty"` } -type CreateV2Request_SourceMsp struct { - SourceMsp *SourceMsp `protobuf:"bytes,10,opt,name=source_msp,json=sourceMsp,proto3,oneof" json:"source_msp,omitempty"` +type CreateV2Request_SignupTypeMsp struct { + SignupTypeMsp *SignupTypeMsp `protobuf:"bytes,10,opt,name=signup_type_msp,json=signupTypeMsp,proto3,oneof" json:"signup_type_msp,omitempty"` } -type CreateV2Request_SourceMarketplace struct { - SourceMarketplace *SourceMarketplace `protobuf:"bytes,11,opt,name=source_marketplace,json=sourceMarketplace,proto3,oneof" json:"source_marketplace,omitempty"` +type CreateV2Request_SignupTypeMarketplace struct { + SignupTypeMarketplace *SignupTypeMarketplace `protobuf:"bytes,11,opt,name=signup_type_marketplace,json=signupTypeMarketplace,proto3,oneof" json:"signup_type_marketplace,omitempty"` } -func (*CreateV2Request_SourceInternalSre) isCreateV2Request_SourceChoice() {} -func (*CreateV2Request_SourceInternalScaling) isCreateV2Request_SourceChoice() {} -func (*CreateV2Request_SourcePlanTransition) isCreateV2Request_SourceChoice() {} -func (*CreateV2Request_SourceMsp) isCreateV2Request_SourceChoice() {} -func (*CreateV2Request_SourceMarketplace) isCreateV2Request_SourceChoice() {} +func (*CreateV2Request_SignupTypeInternalSre) isCreateV2Request_SignupType() {} +func (*CreateV2Request_SignupTypeInternalScaling) isCreateV2Request_SignupType() {} +func (*CreateV2Request_SignupTypePlanTransition) isCreateV2Request_SignupType() {} +func (*CreateV2Request_SignupTypeMsp) isCreateV2Request_SignupType() {} +func (*CreateV2Request_SignupTypeMarketplace) isCreateV2Request_SignupType() {} -func (m *CreateV2Request) GetSourceChoice() isCreateV2Request_SourceChoice { +func (m *CreateV2Request) GetSignupType() isCreateV2Request_SignupType { if m != nil { - return m.SourceChoice + return m.SignupType } return nil } @@ -178,49 +185,56 @@ func (m *CreateV2Request) GetBillingDetails() *BillingMeta { return nil } -func (m *CreateV2Request) GetSourceInternalSre() *SourceInternalSre { - if x, ok := m.GetSourceChoice().(*CreateV2Request_SourceInternalSre); ok { - return x.SourceInternalSre +func (m *CreateV2Request) GetSignupTypeInternalSre() *SignupTypeInternalSre { + if x, ok := m.GetSignupType().(*CreateV2Request_SignupTypeInternalSre); ok { + return x.SignupTypeInternalSre } return nil } -func (m *CreateV2Request) GetSourceInternalScaling() *SourceInternalScaling { - if x, ok := m.GetSourceChoice().(*CreateV2Request_SourceInternalScaling); ok { - return x.SourceInternalScaling +func (m *CreateV2Request) GetSignupTypeInternalScaling() *SignupTypeInternalScaling { + if x, ok := m.GetSignupType().(*CreateV2Request_SignupTypeInternalScaling); ok { + return x.SignupTypeInternalScaling } return nil } -func (m *CreateV2Request) GetSourcePlanTransition() *SourcePlanTransition { - if x, ok := m.GetSourceChoice().(*CreateV2Request_SourcePlanTransition); ok { - return x.SourcePlanTransition +func (m *CreateV2Request) GetSignupTypePlanTransition() *SignupTypePlanTransition { + if x, ok := m.GetSignupType().(*CreateV2Request_SignupTypePlanTransition); ok { + return x.SignupTypePlanTransition } return nil } -func (m *CreateV2Request) GetSourceMsp() *SourceMsp { - if x, ok := m.GetSourceChoice().(*CreateV2Request_SourceMsp); ok { - return x.SourceMsp +func (m *CreateV2Request) GetSignupTypeMsp() *SignupTypeMsp { + if x, ok := m.GetSignupType().(*CreateV2Request_SignupTypeMsp); ok { + return x.SignupTypeMsp } return nil } -func (m *CreateV2Request) GetSourceMarketplace() *SourceMarketplace { - if x, ok := m.GetSourceChoice().(*CreateV2Request_SourceMarketplace); ok { - return x.SourceMarketplace +func (m *CreateV2Request) GetSignupTypeMarketplace() *SignupTypeMarketplace { + if x, ok := m.GetSignupType().(*CreateV2Request_SignupTypeMarketplace); ok { + return x.SignupTypeMarketplace } return nil } +func (m *CreateV2Request) GetOrigin() schema.SignupOrigin { + if m != nil { + return m.Origin + } + return schema.ORIGIN_UNKNOWN +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateV2Request) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*CreateV2Request_SourceInternalSre)(nil), - (*CreateV2Request_SourceInternalScaling)(nil), - (*CreateV2Request_SourcePlanTransition)(nil), - (*CreateV2Request_SourceMsp)(nil), - (*CreateV2Request_SourceMarketplace)(nil), + (*CreateV2Request_SignupTypeInternalSre)(nil), + (*CreateV2Request_SignupTypeInternalScaling)(nil), + (*CreateV2Request_SignupTypePlanTransition)(nil), + (*CreateV2Request_SignupTypeMsp)(nil), + (*CreateV2Request_SignupTypeMarketplace)(nil), } } @@ -301,60 +315,61 @@ func init() { } var fileDescriptor_bec8b2527b3ece35 = []byte{ - // 833 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x95, 0x4f, 0x6f, 0xe3, 0x44, - 0x18, 0xc6, 0x3d, 0xdb, 0x7f, 0xc9, 0x14, 0x68, 0x31, 0x0b, 0xa4, 0xe9, 0xca, 0xbb, 0x04, 0xf1, - 0x6f, 0xa1, 0x1e, 0x11, 0x56, 0x48, 0x70, 0x41, 0x6d, 0x41, 0xda, 0x46, 0xaa, 0xa8, 0xb2, 0x80, - 0x04, 0x17, 0x6b, 0x62, 0xbf, 0x75, 0x87, 0xda, 0x33, 0xc3, 0xcc, 0xd8, 0xa5, 0x07, 0x24, 0xb4, - 0xe2, 0x0e, 0x12, 0x5f, 0x81, 0x03, 0xdf, 0x21, 0x97, 0x5e, 0x90, 0x38, 0x56, 0x70, 0xe9, 0x91, - 0xa6, 0x1c, 0xf6, 0xb8, 0x67, 0x4e, 0x28, 0x63, 0x3b, 0xeb, 0x74, 0xb3, 0x5d, 0x2e, 0xdc, 0x26, - 0xf3, 0x3e, 0xcf, 0xef, 0x79, 0xe5, 0xc9, 0xbc, 0x83, 0xdf, 0xcf, 0x41, 0xfb, 0x4c, 0x10, 0x1d, - 0x1e, 0x40, 0x4a, 0x89, 0x66, 0x31, 0xcf, 0x24, 0x91, 0x8a, 0xe5, 0xd4, 0x40, 0x10, 0x66, 0xda, - 0x88, 0x94, 0x4a, 0x16, 0xc0, 0xf1, 0x11, 0x95, 0x8a, 0xa5, 0xe0, 0x4b, 0x25, 0x8c, 0x70, 0xaf, - 0x17, 0x3e, 0xbf, 0xf0, 0xf9, 0x85, 0xaf, 0xbd, 0x11, 0x33, 0x73, 0x90, 0x0d, 0xfc, 0x50, 0xa4, - 0x24, 0x16, 0xb1, 0x20, 0x56, 0x3c, 0xc8, 0xf6, 0xed, 0x2f, 0xfb, 0xc3, 0xae, 0x0a, 0x48, 0xfb, - 0x46, 0x2c, 0x44, 0x9c, 0x00, 0xa1, 0x92, 0x11, 0xca, 0xb9, 0x30, 0xd4, 0x30, 0xc1, 0x75, 0x59, - 0xbd, 0x59, 0x56, 0x27, 0x0c, 0xc3, 0x52, 0xd0, 0x86, 0xa6, 0xb2, 0x14, 0x74, 0xa7, 0x7b, 0x67, - 0x7c, 0x5f, 0xd1, 0x71, 0x05, 0x42, 0x13, 0x30, 0xbe, 0x2f, 0x54, 0x6a, 0x79, 0xc4, 0x1c, 0x4b, - 0xa8, 0xa0, 0xeb, 0xd3, 0x1e, 0x21, 0xeb, 0x89, 0xaf, 0xce, 0xfc, 0x18, 0xd6, 0x1e, 0xe4, 0xdd, - 0x52, 0xb4, 0x36, 0x2d, 0xaa, 0xc3, 0x6f, 0x4c, 0x97, 0x72, 0x9a, 0xb0, 0x88, 0x9a, 0xf2, 0x93, - 0xb5, 0x3b, 0x97, 0xaa, 0xa0, 0x81, 0xe7, 0x97, 0x3a, 0xb8, 0x75, 0x49, 0xc3, 0xe0, 0x28, 0x98, - 0x52, 0x74, 0x7e, 0x5b, 0xc4, 0x2b, 0xdb, 0x0a, 0xa8, 0x81, 0x2f, 0xba, 0x7d, 0xf8, 0x26, 0x03, - 0x6d, 0xdc, 0x1e, 0x5e, 0x09, 0x45, 0x2a, 0x29, 0x3f, 0x0e, 0x22, 0x30, 0x94, 0x25, 0xba, 0x85, - 0x6e, 0xa1, 0x37, 0x97, 0xbb, 0xaf, 0xf8, 0xb3, 0x8e, 0xc9, 0xdf, 0x2e, 0xc4, 0xbb, 0x60, 0x68, - 0xff, 0xb9, 0xd2, 0xf9, 0x71, 0x61, 0x74, 0x37, 0xf1, 0x33, 0x99, 0x06, 0x35, 0x01, 0x5d, 0xb3, - 0x20, 0x6f, 0x36, 0xe8, 0x73, 0x0d, 0xca, 0x52, 0x96, 0xc7, 0x9e, 0x0a, 0xd1, 0xc3, 0x2b, 0x34, - 0x0c, 0x45, 0xc6, 0xcd, 0x84, 0x32, 0x77, 0x55, 0x3b, 0x9b, 0x85, 0xb8, 0x68, 0xa7, 0x74, 0xd6, - 0x58, 0x03, 0x96, 0x24, 0x8c, 0xc7, 0x13, 0xd6, 0xfc, 0x55, 0xac, 0xad, 0x42, 0x5c, 0xb0, 0x4a, - 0x67, 0xc5, 0xfa, 0x12, 0xbf, 0xa0, 0x45, 0xa6, 0x42, 0x08, 0x18, 0x37, 0xa0, 0x38, 0x4d, 0x02, - 0xad, 0xa0, 0xb5, 0x64, 0x79, 0x6f, 0xcc, 0xe6, 0xdd, 0xb3, 0x86, 0x9d, 0x52, 0x7f, 0x4f, 0xc1, - 0x5d, 0xa7, 0xff, 0xbc, 0xbe, 0xbc, 0xe9, 0x72, 0xfc, 0xf2, 0x63, 0xe8, 0x90, 0x8e, 0xc3, 0x5b, - 0x0d, 0x8b, 0x7f, 0xfb, 0x3f, 0xe1, 0x0b, 0xcb, 0xd6, 0xd2, 0xd9, 0x77, 0xe8, 0xc1, 0x10, 0xa1, - 0xbb, 0x4e, 0xff, 0x45, 0x3d, 0x4b, 0xe1, 0x1e, 0xe2, 0x97, 0xca, 0x3c, 0x99, 0x50, 0x1e, 0x18, - 0x45, 0xb9, 0x66, 0xe3, 0xbf, 0x49, 0xab, 0x69, 0xe3, 0x6e, 0x5f, 0x15, 0xb7, 0x97, 0x50, 0xfe, - 0xd9, 0xc4, 0x51, 0x4f, 0xbb, 0xae, 0x67, 0x08, 0xdc, 0x1d, 0x8c, 0xcb, 0xb0, 0x54, 0xcb, 0x16, - 0xb6, 0x01, 0x37, 0xaf, 0x0a, 0xd8, 0xd5, 0xb2, 0x4e, 0x6d, 0xea, 0x6a, 0xd7, 0xa5, 0xd8, 0xad, - 0x50, 0x54, 0x1d, 0x82, 0x91, 0x09, 0x0d, 0xa1, 0xb5, 0xfc, 0xf4, 0x13, 0xd8, 0x7d, 0x24, 0xaf, - 0xa3, 0xcb, 0xa3, 0xa8, 0x57, 0xd7, 0xf0, 0xb3, 0x65, 0x44, 0x78, 0x20, 0x58, 0x08, 0x6e, 0xe3, - 0x64, 0x88, 0x96, 0x4e, 0x87, 0x68, 0xa1, 0x37, 0xdf, 0x58, 0x58, 0x5d, 0xec, 0xcd, 0x37, 0x16, - 0x57, 0x97, 0x3a, 0x9b, 0x78, 0xf5, 0xd1, 0x35, 0xd2, 0x52, 0x70, 0x0d, 0xee, 0x2a, 0x9e, 0xcb, - 0x58, 0x64, 0xef, 0x4e, 0xb3, 0x3f, 0x5e, 0xba, 0xeb, 0xb8, 0x69, 0x80, 0x53, 0x6e, 0x02, 0x16, - 0xd9, 0xab, 0xd0, 0xec, 0x37, 0x8a, 0x8d, 0x9d, 0xa8, 0x7b, 0x7f, 0x0e, 0xaf, 0x6d, 0xdb, 0x09, - 0xb9, 0x57, 0xcc, 0xcb, 0xcd, 0xbd, 0x9d, 0x4f, 0xaa, 0x39, 0xe9, 0xfe, 0x82, 0xb0, 0xdb, 0x07, - 0x6d, 0x14, 0x0b, 0x0d, 0x44, 0x55, 0x96, 0xfb, 0xda, 0x13, 0xae, 0xe4, 0xf4, 0x95, 0x6e, 0xbf, - 0xfe, 0x34, 0x59, 0xd1, 0x72, 0xe7, 0xa3, 0xfb, 0x7f, 0xfe, 0xfd, 0xf3, 0xb5, 0x0f, 0x3a, 0x77, - 0xc8, 0x94, 0x9e, 0x30, 0x6e, 0x94, 0xd0, 0x12, 0x42, 0x43, 0xd4, 0xa4, 0x09, 0x72, 0xa4, 0x98, - 0x01, 0x92, 0x77, 0xcb, 0xd1, 0xf6, 0x21, 0xba, 0xed, 0xfe, 0x88, 0x70, 0xe3, 0xff, 0x6a, 0xee, - 0x8e, 0x6d, 0xce, 0xef, 0xbc, 0xf5, 0xe4, 0xe6, 0x1e, 0xef, 0xa8, 0xfd, 0xce, 0xc9, 0x10, 0xcd, - 0xff, 0x31, 0x44, 0xeb, 0x33, 0x43, 0x3e, 0x1d, 0x7c, 0x0d, 0xa1, 0xf9, 0x67, 0x88, 0x16, 0x22, - 0x48, 0xc5, 0xbb, 0x5b, 0x3f, 0xa0, 0xd3, 0x73, 0xcf, 0x39, 0x3b, 0xf7, 0x9c, 0x87, 0xe7, 0x1e, - 0xfa, 0x7e, 0xe4, 0xa1, 0x5f, 0x47, 0x1e, 0xfa, 0x7d, 0xe4, 0xa1, 0xd3, 0x91, 0x87, 0xfe, 0x1a, - 0x79, 0xe8, 0xc1, 0xc8, 0x73, 0x1e, 0x8e, 0x3c, 0xf4, 0xd3, 0x85, 0xe7, 0x9c, 0x5c, 0x78, 0xe8, - 0xf4, 0xc2, 0x73, 0xce, 0x2e, 0x3c, 0xe7, 0xab, 0x5e, 0x2c, 0xe4, 0x61, 0xec, 0xe7, 0x22, 0x31, - 0xa0, 0x14, 0xf5, 0x33, 0x4d, 0xec, 0x62, 0xfc, 0x72, 0x6c, 0x48, 0x25, 0x72, 0x16, 0x81, 0xda, - 0xa8, 0xca, 0x44, 0x0e, 0x62, 0x41, 0xe0, 0x5b, 0x53, 0xbd, 0x0e, 0xf5, 0x47, 0x62, 0xb0, 0x68, - 0xa7, 0xf3, 0x7b, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x1e, 0x7e, 0xd3, 0x1a, 0x50, 0x07, 0x00, - 0x00, + // 860 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x95, 0xcf, 0x6f, 0x1b, 0x45, + 0x1c, 0xc5, 0x3d, 0xcd, 0x0f, 0x3b, 0x93, 0xd2, 0x44, 0x2b, 0x50, 0x37, 0x76, 0xb4, 0x04, 0x57, + 0xa0, 0xf2, 0x23, 0x3b, 0xc2, 0xad, 0x90, 0xe0, 0x82, 0x92, 0x80, 0xd4, 0x58, 0x8a, 0x1a, 0xb9, + 0xa5, 0x07, 0x2e, 0xab, 0xf1, 0xfa, 0x9b, 0xed, 0xd0, 0xdd, 0x99, 0x61, 0x66, 0xd6, 0x69, 0x84, + 0x90, 0x50, 0xc5, 0x1d, 0x24, 0xfe, 0x05, 0x0e, 0xfc, 0x0b, 0xc8, 0x97, 0x1c, 0x39, 0x46, 0x70, + 0xc9, 0x91, 0x38, 0x1c, 0x7a, 0xec, 0x99, 0x13, 0xf2, 0xec, 0xda, 0xdd, 0x0d, 0x76, 0x93, 0x4b, + 0x4f, 0xd9, 0xcd, 0xf7, 0xbd, 0xcf, 0x7b, 0xda, 0xf1, 0xcc, 0xe0, 0x4f, 0xfa, 0xa0, 0x7d, 0x26, + 0x88, 0x0e, 0x1f, 0x43, 0x42, 0x89, 0x66, 0x11, 0x4f, 0x25, 0x91, 0x8a, 0xf5, 0xa9, 0x81, 0x20, + 0x4c, 0xb5, 0x11, 0x09, 0x95, 0x2c, 0x80, 0xa3, 0x43, 0x2a, 0x15, 0x4b, 0xc0, 0x97, 0x4a, 0x18, + 0xe1, 0xbc, 0x99, 0xf9, 0xfc, 0xcc, 0xe7, 0x67, 0xbe, 0xfa, 0x66, 0xc4, 0xcc, 0xe3, 0xb4, 0xeb, + 0x87, 0x22, 0x21, 0x91, 0x88, 0x04, 0xb1, 0xe2, 0x6e, 0x7a, 0x60, 0xdf, 0xec, 0x8b, 0x7d, 0xca, + 0x20, 0xf5, 0xf5, 0x48, 0x88, 0x28, 0x06, 0x42, 0x25, 0x23, 0x94, 0x73, 0x61, 0xa8, 0x61, 0x82, + 0xeb, 0x7c, 0xfa, 0x76, 0x3e, 0x9d, 0x30, 0x0c, 0x4b, 0x40, 0x1b, 0x9a, 0xc8, 0x5c, 0xd0, 0x2a, + 0x77, 0x67, 0xfc, 0x40, 0xd1, 0xd1, 0x04, 0x42, 0x13, 0x30, 0x7e, 0x20, 0x54, 0x62, 0x79, 0xc4, + 0x1c, 0x49, 0x18, 0x43, 0x1b, 0x65, 0x8f, 0x90, 0xc5, 0xc4, 0x5b, 0x53, 0x3f, 0x86, 0xb5, 0x07, + 0xfd, 0x56, 0x2e, 0x5a, 0x2b, 0x8b, 0x8a, 0xf0, 0xf5, 0xf2, 0xa8, 0x4f, 0x63, 0xd6, 0xa3, 0x26, + 0xff, 0x64, 0xf5, 0xe6, 0x85, 0x29, 0x68, 0xe0, 0xfd, 0x0b, 0x0d, 0x36, 0x2e, 0x68, 0x18, 0x1c, + 0x06, 0x25, 0x45, 0xf3, 0xf7, 0x2a, 0x5e, 0xd9, 0x51, 0x40, 0x0d, 0x3c, 0x6a, 0x75, 0xe0, 0xdb, + 0x14, 0xb4, 0x71, 0xda, 0x78, 0x25, 0x14, 0x89, 0xa4, 0xfc, 0x28, 0xe8, 0x81, 0xa1, 0x2c, 0xd6, + 0x2e, 0xda, 0x40, 0xb7, 0x97, 0x5b, 0xef, 0xf8, 0xd3, 0x96, 0xc9, 0xdf, 0xc9, 0xc4, 0x7b, 0x60, + 0x68, 0xe7, 0x46, 0xee, 0xfc, 0x22, 0x33, 0x3a, 0x5b, 0xf8, 0x7a, 0xaa, 0x41, 0x4d, 0x40, 0xd7, + 0x2c, 0xc8, 0x9b, 0x0e, 0xfa, 0x4a, 0x83, 0xb2, 0x94, 0xe5, 0x91, 0x67, 0x8c, 0x68, 0xe3, 0x15, + 0x1a, 0x86, 0x22, 0xe5, 0x66, 0x42, 0x99, 0x7b, 0x55, 0x9d, 0xad, 0x4c, 0x9c, 0xd5, 0xc9, 0x9d, + 0x05, 0x56, 0x97, 0xc5, 0x31, 0xe3, 0xd1, 0x84, 0x35, 0xff, 0x2a, 0xd6, 0x76, 0x26, 0xce, 0x58, + 0xb9, 0x73, 0xcc, 0x3a, 0xc0, 0x6e, 0xa6, 0x0a, 0x46, 0x8b, 0x16, 0x30, 0x6e, 0x40, 0x71, 0x1a, + 0x07, 0x5a, 0x81, 0x5b, 0xb5, 0xd0, 0x0f, 0xa7, 0x43, 0x1f, 0xd8, 0x3f, 0x0f, 0x8f, 0x24, 0xec, + 0xe6, 0x9e, 0x07, 0x0a, 0xee, 0x55, 0x3a, 0x6f, 0xe9, 0x69, 0x03, 0xe7, 0x3b, 0xbc, 0x3e, 0x3d, + 0x27, 0xa4, 0xa3, 0x3a, 0x6e, 0xcd, 0x66, 0x91, 0x2b, 0x67, 0x65, 0xb6, 0xed, 0xea, 0xe9, 0xf7, + 0xe8, 0xf9, 0x00, 0xa1, 0x7b, 0x95, 0xce, 0x9a, 0x9e, 0xa5, 0x72, 0x9e, 0xe2, 0x46, 0x31, 0x5c, + 0xc6, 0x94, 0x07, 0x46, 0x51, 0xae, 0xd9, 0xe8, 0x57, 0xe4, 0x2e, 0xd9, 0x6c, 0xff, 0xb2, 0xec, + 0xfd, 0x98, 0xf2, 0x87, 0x13, 0x57, 0x31, 0xda, 0xd5, 0x33, 0x44, 0xce, 0x23, 0xbc, 0x52, 0x4c, + 0x4e, 0xb4, 0x74, 0xb1, 0x4d, 0xbb, 0x75, 0x59, 0xda, 0x9e, 0x96, 0xc5, 0x88, 0x37, 0x74, 0x71, + 0xe2, 0x70, 0x7c, 0xb3, 0xc4, 0xa5, 0xea, 0x09, 0x18, 0x19, 0xd3, 0x10, 0xdc, 0xe5, 0xab, 0xad, + 0xda, 0xde, 0x4b, 0x4b, 0x31, 0xa7, 0xb0, 0x7c, 0x05, 0x85, 0x73, 0x07, 0x2f, 0x0a, 0xc5, 0x22, + 0xc6, 0xdd, 0xeb, 0x1b, 0xe8, 0xf6, 0x8d, 0x56, 0xe3, 0x02, 0x3e, 0xe3, 0xde, 0xb7, 0x92, 0x4e, + 0x2e, 0xdd, 0xbe, 0x89, 0x97, 0x0b, 0x25, 0x9d, 0xda, 0xf1, 0x00, 0x55, 0x4f, 0x06, 0x68, 0xa1, + 0x3d, 0x5f, 0x5b, 0x58, 0x5d, 0x6c, 0xcf, 0xd7, 0x16, 0x57, 0xab, 0xcd, 0x2d, 0xbc, 0xfa, 0x72, + 0xeb, 0x6a, 0x29, 0xb8, 0x06, 0x67, 0x15, 0xcf, 0xa5, 0xac, 0x67, 0xf7, 0xeb, 0x52, 0x67, 0xf4, + 0xe8, 0x34, 0xf0, 0x92, 0x01, 0x4e, 0xb9, 0x09, 0x58, 0xcf, 0x6e, 0xbf, 0xa5, 0x4e, 0x2d, 0xfb, + 0xc7, 0x6e, 0xaf, 0xf5, 0x6c, 0x0e, 0xaf, 0xed, 0xd8, 0x53, 0x79, 0x3f, 0x3b, 0xa3, 0xb7, 0xf6, + 0x77, 0xbf, 0x1c, 0x9f, 0xcd, 0xce, 0xaf, 0x08, 0x3b, 0x1d, 0xd0, 0x46, 0xb1, 0xd0, 0x40, 0x6f, + 0x9c, 0xe5, 0xbc, 0x3b, 0xe3, 0x18, 0x28, 0x1f, 0x23, 0xf5, 0xf7, 0x2e, 0x93, 0x65, 0x95, 0x9b, + 0x9f, 0x3f, 0xfb, 0xeb, 0x9f, 0x5f, 0xae, 0x7d, 0xda, 0xbc, 0x4b, 0x4a, 0x7a, 0xc2, 0xb8, 0x51, + 0x42, 0x4b, 0x08, 0x0d, 0x51, 0x93, 0x12, 0xe4, 0x50, 0x31, 0x03, 0xa4, 0xdf, 0xca, 0x8f, 0xd3, + 0xcf, 0xd0, 0x07, 0xce, 0x4f, 0x08, 0xd7, 0x5e, 0x57, 0xb9, 0xbb, 0xb6, 0x9c, 0xdf, 0x7c, 0x7f, + 0x76, 0xb9, 0xff, 0x37, 0xaa, 0x7f, 0x74, 0x3c, 0x40, 0xf3, 0x7f, 0x0e, 0x50, 0x63, 0x6a, 0xc8, + 0xfd, 0xee, 0x37, 0x10, 0x9a, 0x7f, 0x07, 0x68, 0xa1, 0x07, 0x89, 0xf8, 0x78, 0xfb, 0x47, 0x74, + 0x72, 0xe6, 0x55, 0x4e, 0xcf, 0xbc, 0xca, 0x8b, 0x33, 0x0f, 0xfd, 0x30, 0xf4, 0xd0, 0x6f, 0x43, + 0x0f, 0xfd, 0x31, 0xf4, 0xd0, 0xc9, 0xd0, 0x43, 0x7f, 0x0f, 0x3d, 0xf4, 0x7c, 0xe8, 0x55, 0x5e, + 0x0c, 0x3d, 0xf4, 0xf3, 0xb9, 0x57, 0x39, 0x3e, 0xf7, 0xd0, 0xc9, 0xb9, 0x57, 0x39, 0x3d, 0xf7, + 0x2a, 0x5f, 0xb7, 0x23, 0x21, 0x9f, 0x44, 0x7e, 0x5f, 0xc4, 0x06, 0x94, 0xa2, 0x7e, 0xaa, 0x89, + 0x7d, 0x18, 0xdd, 0x56, 0x9b, 0x52, 0x89, 0x3e, 0xeb, 0x81, 0xda, 0x1c, 0x8f, 0x89, 0xec, 0x46, + 0x82, 0xc0, 0x53, 0x33, 0xbe, 0x91, 0x8a, 0x17, 0x53, 0x77, 0xd1, 0xde, 0x08, 0x77, 0xfe, 0x0b, + 0x00, 0x00, 0xff, 0xff, 0xc5, 0x53, 0x2f, 0x42, 0xc4, 0x07, 0x00, 0x00, } func (this *CreateV2Request) Equal(that interface{}) bool { @@ -388,25 +403,28 @@ func (this *CreateV2Request) Equal(that interface{}) bool { if !this.BillingDetails.Equal(that1.BillingDetails) { return false } - if that1.SourceChoice == nil { - if this.SourceChoice != nil { + if that1.SignupType == nil { + if this.SignupType != nil { return false } - } else if this.SourceChoice == nil { + } else if this.SignupType == nil { return false - } else if !this.SourceChoice.Equal(that1.SourceChoice) { + } else if !this.SignupType.Equal(that1.SignupType) { + return false + } + if this.Origin != that1.Origin { return false } return true } -func (this *CreateV2Request_SourceInternalSre) Equal(that interface{}) bool { +func (this *CreateV2Request_SignupTypeInternalSre) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateV2Request_SourceInternalSre) + that1, ok := that.(*CreateV2Request_SignupTypeInternalSre) if !ok { - that2, ok := that.(CreateV2Request_SourceInternalSre) + that2, ok := that.(CreateV2Request_SignupTypeInternalSre) if ok { that1 = &that2 } else { @@ -418,19 +436,19 @@ func (this *CreateV2Request_SourceInternalSre) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceInternalSre.Equal(that1.SourceInternalSre) { + if !this.SignupTypeInternalSre.Equal(that1.SignupTypeInternalSre) { return false } return true } -func (this *CreateV2Request_SourceInternalScaling) Equal(that interface{}) bool { +func (this *CreateV2Request_SignupTypeInternalScaling) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateV2Request_SourceInternalScaling) + that1, ok := that.(*CreateV2Request_SignupTypeInternalScaling) if !ok { - that2, ok := that.(CreateV2Request_SourceInternalScaling) + that2, ok := that.(CreateV2Request_SignupTypeInternalScaling) if ok { that1 = &that2 } else { @@ -442,19 +460,19 @@ func (this *CreateV2Request_SourceInternalScaling) Equal(that interface{}) bool } else if this == nil { return false } - if !this.SourceInternalScaling.Equal(that1.SourceInternalScaling) { + if !this.SignupTypeInternalScaling.Equal(that1.SignupTypeInternalScaling) { return false } return true } -func (this *CreateV2Request_SourcePlanTransition) Equal(that interface{}) bool { +func (this *CreateV2Request_SignupTypePlanTransition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateV2Request_SourcePlanTransition) + that1, ok := that.(*CreateV2Request_SignupTypePlanTransition) if !ok { - that2, ok := that.(CreateV2Request_SourcePlanTransition) + that2, ok := that.(CreateV2Request_SignupTypePlanTransition) if ok { that1 = &that2 } else { @@ -466,19 +484,19 @@ func (this *CreateV2Request_SourcePlanTransition) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourcePlanTransition.Equal(that1.SourcePlanTransition) { + if !this.SignupTypePlanTransition.Equal(that1.SignupTypePlanTransition) { return false } return true } -func (this *CreateV2Request_SourceMsp) Equal(that interface{}) bool { +func (this *CreateV2Request_SignupTypeMsp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateV2Request_SourceMsp) + that1, ok := that.(*CreateV2Request_SignupTypeMsp) if !ok { - that2, ok := that.(CreateV2Request_SourceMsp) + that2, ok := that.(CreateV2Request_SignupTypeMsp) if ok { that1 = &that2 } else { @@ -490,19 +508,19 @@ func (this *CreateV2Request_SourceMsp) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceMsp.Equal(that1.SourceMsp) { + if !this.SignupTypeMsp.Equal(that1.SignupTypeMsp) { return false } return true } -func (this *CreateV2Request_SourceMarketplace) Equal(that interface{}) bool { +func (this *CreateV2Request_SignupTypeMarketplace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateV2Request_SourceMarketplace) + that1, ok := that.(*CreateV2Request_SignupTypeMarketplace) if !ok { - that2, ok := that.(CreateV2Request_SourceMarketplace) + that2, ok := that.(CreateV2Request_SignupTypeMarketplace) if ok { that1 = &that2 } else { @@ -514,7 +532,7 @@ func (this *CreateV2Request_SourceMarketplace) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SourceMarketplace.Equal(that1.SourceMarketplace) { + if !this.SignupTypeMarketplace.Equal(that1.SignupTypeMarketplace) { return false } return true @@ -550,7 +568,7 @@ func (this *CreateV2Request) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 13) + s := make([]string, 0, 14) s = append(s, "&signup.CreateV2Request{") if this.CompanyDetails != nil { s = append(s, "CompanyDetails: "+fmt.Sprintf("%#v", this.CompanyDetails)+",\n") @@ -564,50 +582,51 @@ func (this *CreateV2Request) GoString() string { if this.BillingDetails != nil { s = append(s, "BillingDetails: "+fmt.Sprintf("%#v", this.BillingDetails)+",\n") } - if this.SourceChoice != nil { - s = append(s, "SourceChoice: "+fmt.Sprintf("%#v", this.SourceChoice)+",\n") + if this.SignupType != nil { + s = append(s, "SignupType: "+fmt.Sprintf("%#v", this.SignupType)+",\n") } + s = append(s, "Origin: "+fmt.Sprintf("%#v", this.Origin)+",\n") s = append(s, "}") return strings.Join(s, "") } -func (this *CreateV2Request_SourceInternalSre) GoString() string { +func (this *CreateV2Request_SignupTypeInternalSre) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&signup.CreateV2Request_SourceInternalSre{` + - `SourceInternalSre:` + fmt.Sprintf("%#v", this.SourceInternalSre) + `}`}, ", ") + s := strings.Join([]string{`&signup.CreateV2Request_SignupTypeInternalSre{` + + `SignupTypeInternalSre:` + fmt.Sprintf("%#v", this.SignupTypeInternalSre) + `}`}, ", ") return s } -func (this *CreateV2Request_SourceInternalScaling) GoString() string { +func (this *CreateV2Request_SignupTypeInternalScaling) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&signup.CreateV2Request_SourceInternalScaling{` + - `SourceInternalScaling:` + fmt.Sprintf("%#v", this.SourceInternalScaling) + `}`}, ", ") + s := strings.Join([]string{`&signup.CreateV2Request_SignupTypeInternalScaling{` + + `SignupTypeInternalScaling:` + fmt.Sprintf("%#v", this.SignupTypeInternalScaling) + `}`}, ", ") return s } -func (this *CreateV2Request_SourcePlanTransition) GoString() string { +func (this *CreateV2Request_SignupTypePlanTransition) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&signup.CreateV2Request_SourcePlanTransition{` + - `SourcePlanTransition:` + fmt.Sprintf("%#v", this.SourcePlanTransition) + `}`}, ", ") + s := strings.Join([]string{`&signup.CreateV2Request_SignupTypePlanTransition{` + + `SignupTypePlanTransition:` + fmt.Sprintf("%#v", this.SignupTypePlanTransition) + `}`}, ", ") return s } -func (this *CreateV2Request_SourceMsp) GoString() string { +func (this *CreateV2Request_SignupTypeMsp) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&signup.CreateV2Request_SourceMsp{` + - `SourceMsp:` + fmt.Sprintf("%#v", this.SourceMsp) + `}`}, ", ") + s := strings.Join([]string{`&signup.CreateV2Request_SignupTypeMsp{` + + `SignupTypeMsp:` + fmt.Sprintf("%#v", this.SignupTypeMsp) + `}`}, ", ") return s } -func (this *CreateV2Request_SourceMarketplace) GoString() string { +func (this *CreateV2Request_SignupTypeMarketplace) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&signup.CreateV2Request_SourceMarketplace{` + - `SourceMarketplace:` + fmt.Sprintf("%#v", this.SourceMarketplace) + `}`}, ", ") + s := strings.Join([]string{`&signup.CreateV2Request_SignupTypeMarketplace{` + + `SignupTypeMarketplace:` + fmt.Sprintf("%#v", this.SignupTypeMarketplace) + `}`}, ", ") return s } func (this *CreateV2Response) GoString() string { @@ -782,11 +801,16 @@ func (m *CreateV2Request) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.SourceChoice != nil { + if m.Origin != 0 { + i = encodeVarintPrivateCustomapiEywaprime(dAtA, i, uint64(m.Origin)) + i-- + dAtA[i] = 0x60 + } + if m.SignupType != nil { { - size := m.SourceChoice.Size() + size := m.SignupType.Size() i -= size - if _, err := m.SourceChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.SignupType.MarshalTo(dAtA[i:]); err != nil { return 0, err } } @@ -842,16 +866,16 @@ func (m *CreateV2Request) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *CreateV2Request_SourceInternalSre) MarshalTo(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeInternalSre) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateV2Request_SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceInternalSre != nil { + if m.SignupTypeInternalSre != nil { { - size, err := m.SourceInternalSre.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeInternalSre.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -863,16 +887,16 @@ func (m *CreateV2Request_SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (i } return len(dAtA) - i, nil } -func (m *CreateV2Request_SourceInternalScaling) MarshalTo(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeInternalScaling) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateV2Request_SourceInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceInternalScaling != nil { + if m.SignupTypeInternalScaling != nil { { - size, err := m.SourceInternalScaling.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeInternalScaling.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -884,16 +908,16 @@ func (m *CreateV2Request_SourceInternalScaling) MarshalToSizedBuffer(dAtA []byte } return len(dAtA) - i, nil } -func (m *CreateV2Request_SourcePlanTransition) MarshalTo(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypePlanTransition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateV2Request_SourcePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourcePlanTransition != nil { + if m.SignupTypePlanTransition != nil { { - size, err := m.SourcePlanTransition.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypePlanTransition.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -905,16 +929,16 @@ func (m *CreateV2Request_SourcePlanTransition) MarshalToSizedBuffer(dAtA []byte) } return len(dAtA) - i, nil } -func (m *CreateV2Request_SourceMsp) MarshalTo(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeMsp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateV2Request_SourceMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceMsp != nil { + if m.SignupTypeMsp != nil { { - size, err := m.SourceMsp.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeMsp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -926,16 +950,16 @@ func (m *CreateV2Request_SourceMsp) MarshalToSizedBuffer(dAtA []byte) (int, erro } return len(dAtA) - i, nil } -func (m *CreateV2Request_SourceMarketplace) MarshalTo(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeMarketplace) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateV2Request_SourceMarketplace) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CreateV2Request_SignupTypeMarketplace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SourceMarketplace != nil { + if m.SignupTypeMarketplace != nil { { - size, err := m.SourceMarketplace.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SignupTypeMarketplace.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -1017,68 +1041,71 @@ func (m *CreateV2Request) Size() (n int) { l = m.BillingDetails.Size() n += 1 + l + sovPrivateCustomapiEywaprime(uint64(l)) } - if m.SourceChoice != nil { - n += m.SourceChoice.Size() + if m.SignupType != nil { + n += m.SignupType.Size() + } + if m.Origin != 0 { + n += 1 + sovPrivateCustomapiEywaprime(uint64(m.Origin)) } return n } -func (m *CreateV2Request_SourceInternalSre) Size() (n int) { +func (m *CreateV2Request_SignupTypeInternalSre) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceInternalSre != nil { - l = m.SourceInternalSre.Size() + if m.SignupTypeInternalSre != nil { + l = m.SignupTypeInternalSre.Size() n += 1 + l + sovPrivateCustomapiEywaprime(uint64(l)) } return n } -func (m *CreateV2Request_SourceInternalScaling) Size() (n int) { +func (m *CreateV2Request_SignupTypeInternalScaling) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceInternalScaling != nil { - l = m.SourceInternalScaling.Size() + if m.SignupTypeInternalScaling != nil { + l = m.SignupTypeInternalScaling.Size() n += 1 + l + sovPrivateCustomapiEywaprime(uint64(l)) } return n } -func (m *CreateV2Request_SourcePlanTransition) Size() (n int) { +func (m *CreateV2Request_SignupTypePlanTransition) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourcePlanTransition != nil { - l = m.SourcePlanTransition.Size() + if m.SignupTypePlanTransition != nil { + l = m.SignupTypePlanTransition.Size() n += 1 + l + sovPrivateCustomapiEywaprime(uint64(l)) } return n } -func (m *CreateV2Request_SourceMsp) Size() (n int) { +func (m *CreateV2Request_SignupTypeMsp) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceMsp != nil { - l = m.SourceMsp.Size() + if m.SignupTypeMsp != nil { + l = m.SignupTypeMsp.Size() n += 1 + l + sovPrivateCustomapiEywaprime(uint64(l)) } return n } -func (m *CreateV2Request_SourceMarketplace) Size() (n int) { +func (m *CreateV2Request_SignupTypeMarketplace) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.SourceMarketplace != nil { - l = m.SourceMarketplace.Size() + if m.SignupTypeMarketplace != nil { + l = m.SignupTypeMarketplace.Size() n += 1 + l + sovPrivateCustomapiEywaprime(uint64(l)) } return n @@ -1115,57 +1142,58 @@ func (this *CreateV2Request) String() string { `UserDetails:` + strings.Replace(fmt.Sprintf("%v", this.UserDetails), "UserMeta", "UserMeta", 1) + `,`, `AccountDetails:` + strings.Replace(fmt.Sprintf("%v", this.AccountDetails), "AccountMeta", "AccountMeta", 1) + `,`, `BillingDetails:` + strings.Replace(fmt.Sprintf("%v", this.BillingDetails), "BillingMeta", "BillingMeta", 1) + `,`, - `SourceChoice:` + fmt.Sprintf("%v", this.SourceChoice) + `,`, + `SignupType:` + fmt.Sprintf("%v", this.SignupType) + `,`, + `Origin:` + fmt.Sprintf("%v", this.Origin) + `,`, `}`, }, "") return s } -func (this *CreateV2Request_SourceInternalSre) String() string { +func (this *CreateV2Request_SignupTypeInternalSre) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&CreateV2Request_SourceInternalSre{`, - `SourceInternalSre:` + strings.Replace(fmt.Sprintf("%v", this.SourceInternalSre), "SourceInternalSre", "SourceInternalSre", 1) + `,`, + s := strings.Join([]string{`&CreateV2Request_SignupTypeInternalSre{`, + `SignupTypeInternalSre:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeInternalSre), "SignupTypeInternalSre", "SignupTypeInternalSre", 1) + `,`, `}`, }, "") return s } -func (this *CreateV2Request_SourceInternalScaling) String() string { +func (this *CreateV2Request_SignupTypeInternalScaling) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&CreateV2Request_SourceInternalScaling{`, - `SourceInternalScaling:` + strings.Replace(fmt.Sprintf("%v", this.SourceInternalScaling), "SourceInternalScaling", "SourceInternalScaling", 1) + `,`, + s := strings.Join([]string{`&CreateV2Request_SignupTypeInternalScaling{`, + `SignupTypeInternalScaling:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeInternalScaling), "SignupTypeInternalScaling", "SignupTypeInternalScaling", 1) + `,`, `}`, }, "") return s } -func (this *CreateV2Request_SourcePlanTransition) String() string { +func (this *CreateV2Request_SignupTypePlanTransition) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&CreateV2Request_SourcePlanTransition{`, - `SourcePlanTransition:` + strings.Replace(fmt.Sprintf("%v", this.SourcePlanTransition), "SourcePlanTransition", "SourcePlanTransition", 1) + `,`, + s := strings.Join([]string{`&CreateV2Request_SignupTypePlanTransition{`, + `SignupTypePlanTransition:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypePlanTransition), "SignupTypePlanTransition", "SignupTypePlanTransition", 1) + `,`, `}`, }, "") return s } -func (this *CreateV2Request_SourceMsp) String() string { +func (this *CreateV2Request_SignupTypeMsp) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&CreateV2Request_SourceMsp{`, - `SourceMsp:` + strings.Replace(fmt.Sprintf("%v", this.SourceMsp), "SourceMsp", "SourceMsp", 1) + `,`, + s := strings.Join([]string{`&CreateV2Request_SignupTypeMsp{`, + `SignupTypeMsp:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeMsp), "SignupTypeMsp", "SignupTypeMsp", 1) + `,`, `}`, }, "") return s } -func (this *CreateV2Request_SourceMarketplace) String() string { +func (this *CreateV2Request_SignupTypeMarketplace) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&CreateV2Request_SourceMarketplace{`, - `SourceMarketplace:` + strings.Replace(fmt.Sprintf("%v", this.SourceMarketplace), "SourceMarketplace", "SourceMarketplace", 1) + `,`, + s := strings.Join([]string{`&CreateV2Request_SignupTypeMarketplace{`, + `SignupTypeMarketplace:` + strings.Replace(fmt.Sprintf("%v", this.SignupTypeMarketplace), "SignupTypeMarketplace", "SignupTypeMarketplace", 1) + `,`, `}`, }, "") return s @@ -1364,7 +1392,7 @@ func (m *CreateV2Request) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceInternalSre", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeInternalSre", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1391,15 +1419,15 @@ func (m *CreateV2Request) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SourceInternalSre{} + v := &SignupTypeInternalSre{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &CreateV2Request_SourceInternalSre{v} + m.SignupType = &CreateV2Request_SignupTypeInternalSre{v} iNdEx = postIndex case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceInternalScaling", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeInternalScaling", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1426,15 +1454,15 @@ func (m *CreateV2Request) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SourceInternalScaling{} + v := &SignupTypeInternalScaling{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &CreateV2Request_SourceInternalScaling{v} + m.SignupType = &CreateV2Request_SignupTypeInternalScaling{v} iNdEx = postIndex case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourcePlanTransition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypePlanTransition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1461,15 +1489,15 @@ func (m *CreateV2Request) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SourcePlanTransition{} + v := &SignupTypePlanTransition{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &CreateV2Request_SourcePlanTransition{v} + m.SignupType = &CreateV2Request_SignupTypePlanTransition{v} iNdEx = postIndex case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceMsp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeMsp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1496,15 +1524,15 @@ func (m *CreateV2Request) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SourceMsp{} + v := &SignupTypeMsp{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &CreateV2Request_SourceMsp{v} + m.SignupType = &CreateV2Request_SignupTypeMsp{v} iNdEx = postIndex case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceMarketplace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SignupTypeMarketplace", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -1531,12 +1559,31 @@ func (m *CreateV2Request) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SourceMarketplace{} + v := &SignupTypeMarketplace{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SourceChoice = &CreateV2Request_SourceMarketplace{v} + m.SignupType = &CreateV2Request_SignupTypeMarketplace{v} iNdEx = postIndex + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Origin", wireType) + } + m.Origin = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPrivateCustomapiEywaprime + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Origin |= schema.SignupOrigin(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipPrivateCustomapiEywaprime(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesapi.go b/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesapi.go index 03c23f934..023f7a641 100644 --- a/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesapi.go +++ b/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesapi.go @@ -141,7 +141,8 @@ func (c *CustomPrivateAPIEywaprimeRestClient) doRPCCreateV2(ctx context.Context, q.Add("account_details", fmt.Sprintf("%v", req.AccountDetails)) q.Add("billing_details", fmt.Sprintf("%v", req.BillingDetails)) q.Add("company_details", fmt.Sprintf("%v", req.CompanyDetails)) - q.Add("source_choice", fmt.Sprintf("%v", req.SourceChoice)) + q.Add("origin", fmt.Sprintf("%v", req.Origin)) + q.Add("signup_type", fmt.Sprintf("%v", req.SignupType)) q.Add("user_details", fmt.Sprintf("%v", req.UserDetails)) hReq.URL.RawQuery += q.Encode() @@ -228,7 +229,8 @@ func (c *CustomPrivateAPIEywaprimeRestClient) doRPCRestrictedCreateV2(ctx contex q.Add("account_details", fmt.Sprintf("%v", req.AccountDetails)) q.Add("billing_details", fmt.Sprintf("%v", req.BillingDetails)) q.Add("company_details", fmt.Sprintf("%v", req.CompanyDetails)) - q.Add("source_choice", fmt.Sprintf("%v", req.SourceChoice)) + q.Add("origin", fmt.Sprintf("%v", req.Origin)) + q.Add("signup_type", fmt.Sprintf("%v", req.SignupType)) q.Add("user_details", fmt.Sprintf("%v", req.UserDetails)) hReq.URL.RawQuery += q.Encode() @@ -605,6 +607,25 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ } }, "definitions": { + "infraprotect_informationPolicer": { + "type": "object", + "description": "Policer config for bandwidth restrictions", + "title": "Policer Config", + "x-displayname": "Policer Config", + "x-ves-proto-message": "ves.io.schema.infraprotect_information.Policer", + "properties": { + "bandwidth_max_mb": { + "type": "integer", + "description": " Bandwidth max allowed for a customer defined by contract\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 9999\n", + "title": "Bandwidth Max", + "format": "int64", + "x-displayname": "Bandwidth Max in MB", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "9999" + } + } + } + }, "schemaBlindfoldSecretInfoType": { "type": "object", "description": "BlindfoldSecretInfoType specifies information about the Secret managed by F5XC Secret Management", @@ -718,6 +739,19 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ } } }, + "schemaSignupOrigin": { + "type": "string", + "description": "x-required\nSignupOrigin indicates, from which platform signup is originated, example f5xc, aws..etc\n\n - ORIGIN_UNKNOWN: ORIGIN_UNKNOWN\n\nIndicates, the origin of the signup is unknown\n - ORIGIN_F5XC: ORIGIN_F5XC\n\nORIGIN_F5XC as an origin indicates, signup is initiated from console or by internal scaling/testing/support teams using private API\n - ORIGIN_AWS: ORIGIN_AWS\n\nORIGIN_AWS as an origin indicates, signup is initiated from AWS marketplace \u0026 it comes to eywaprime via tsahik", + "title": "SignupOrigin", + "enum": [ + "ORIGIN_UNKNOWN", + "ORIGIN_F5XC", + "ORIGIN_AWS" + ], + "default": "ORIGIN_UNKNOWN", + "x-displayname": "Signup Origin", + "x-ves-proto-enum": "ves.io.schema.SignupOrigin" + }, "schemaTaxExemptionType": { "type": "string", "description": "TaxExemptionType holds possible tax exemption option.\n\nUNKNOWN indicates the field not being set\nTAX_REGULAR indicates customers that are required to pay taxes\nTAX_EXEMPT indicates customers exempt from paying taxes - their status needs to be verified once signup is completed.\nTAX_EXEMPT indicates customers exempt from paying taxes - their status has been verified and the customer is not being taxed by us.\nTAX_EXEMPT_VERIFICATION_FAILED indicates customers that the tax exempt verification process failed - they can contact F5XC to get more details\nTAX_EXEMPT_VERIFICATION_PENDING indicates customers that the tax exempt verification process is ongoing", @@ -782,7 +816,7 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "schemainfraprotect_informationGlobalSpecType": { "type": "object", "description": "Organisation information", - "title": "information", + "title": "Information", "x-displayname": "Information", "x-ves-oneof-field-as_path_choice": "[\"as_path_choice_full\",\"as_path_choice_none\",\"as_path_choice_origin\"]", "x-ves-oneof-field-default_tunnel_bgp_secret_choice": "[\"default_tunnel_bgp_secret\",\"default_tunnel_bgp_secret_none\"]", @@ -835,6 +869,12 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "No default tunnel BGP secret" }, + "policer": { + "description": " Policer config for bandwidth restrictions", + "title": "Policer Config", + "$ref": "#/definitions/infraprotect_informationPolicer", + "x-displayname": "Policer Config" + }, "prefixes": { "type": "array", "description": " List of tenant 'super' prefixes noted in CIDR\n\nExample: - \"value\"-", @@ -1118,7 +1158,7 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "type": "object", "title": "Create V2 Request", "x-displayname": "Create V2 Request", - "x-ves-oneof-field-source_choice": "[\"source_internal_sre\"]", + "x-ves-oneof-field-signup_type": "[\"signup_type_internal_sre\"]", "x-ves-proto-message": "ves.io.schema.signup.CreateV2Request", "properties": { "account_details": { @@ -1147,11 +1187,21 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "$ref": "#/definitions/signupCompanyMeta", "x-displayname": "Company Details" }, - "source_internal_sre": { + "origin": { + "description": " origin of the signup, from which platform signup is originated, example f5xc, aws..etc\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Origin", + "$ref": "#/definitions/schemaSignupOrigin", + "x-displayname": "Origin", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "signup_type_internal_sre": { "description": "Exclusive with []\n For internal use ONLY\n payload for the request made internally, probably via SRE", - "title": "Source Internal SRE", - "$ref": "#/definitions/signupSourceInternalSre", - "x-displayname": "Source Internal SRE" + "title": "Signup Type Internal SRE", + "$ref": "#/definitions/signupSignupTypeInternalSre", + "x-displayname": "Signup Type Internal SRE" }, "user_details": { "description": " details of the user", @@ -1181,35 +1231,16 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ } } }, - "signupCrmInfoV2": { + "signupSignupTypeInternalScaling": { "type": "object", - "description": "Deprecated: use the CRMInfo defined in schema/types.proto", - "title": "fields of crm info message", - "x-displayname": "Crm Info", - "x-ves-proto-message": "ves.io.schema.signup.CrmInfoV2" + "description": "x-displayName: \"Signup Type Internal Scaling\"", + "title": "Signup Type Internal Scaling" }, - "signupMarketplaceAws": { + "signupSignupTypeInternalSre": { "type": "object", - "description": "x-displayName: \"Marketplace Aws\"\npayload for the creation request, for AWS Marketplace", - "title": "Marketplace Aws", - "properties": { - "crm_details": { - "description": "x-displayName: \"CRM Details\"\nx-required\nThis field holds CRM information", - "title": "CRM Details", - "$ref": "#/definitions/schemaCRMInfo" - } - } - }, - "signupSourceInternalScaling": { - "type": "object", - "description": "x-displayName: \"Source Internal Scaling\"", - "title": "Source Internal Scaling" - }, - "signupSourceInternalSre": { - "type": "object", - "title": "Source Internal SRE", - "x-displayname": "Source Internal SRE", - "x-ves-proto-message": "ves.io.schema.signup.SourceInternalSre", + "title": "Signup Type Internal SRE", + "x-displayname": "Signup Type Internal SRE", + "x-ves-proto-message": "ves.io.schema.signup.SignupTypeInternalSre", "properties": { "crm_details": { "description": " This field holds CRM information", @@ -1217,12 +1248,6 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "$ref": "#/definitions/schemaCRMInfo", "x-displayname": "CRM Details" }, - "crm_info": { - "description": " this field holds the CRM info\n This field is deprecated. use CrmDetails instead", - "title": "crm_info", - "$ref": "#/definitions/signupCrmInfoV2", - "x-displayname": "CRM Info" - }, "f5xc_instance_name": { "type": "string", "description": " this field holds the f5xc instance name to be used for tenant allocation\n\nExample: - \"f5xc-instance-2\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", @@ -1234,6 +1259,13 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "is_demo_tenant": { + "type": "boolean", + "description": " Indicates whether signup is for demo tenant or not.", + "title": "Is Demo Tenant", + "format": "boolean", + "x-displayname": "Is Demo Tenant" + }, "kc_instance_name": { "type": "string", "description": " this field holds the kc instance name to be used for tenant realm allocation\n\nExample: - \"kc-instance-3\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", @@ -1247,22 +1279,22 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ } } }, - "signupSourceMarketplace": { + "signupSignupTypeMarketplace": { "type": "object", - "description": "x-displayName: \"Source Marketplace\"\npayload for the creation request, for Marketplace source", - "title": "Source Marketplace", + "description": "x-displayName: \"Signup Type Marketplace\"\npayload for the creation request, for Marketplace Signup Type", + "title": "Signup Type Marketplace", "properties": { - "marketplace_aws": { - "description": "x-displayName: \"Marketplace Aws\"\npayload for the creation request, for Aws Marketplace", - "title": "MarketplaceAws", - "$ref": "#/definitions/signupMarketplaceAws" + "crm_details": { + "description": "x-displayName: \"CRM Details\"\nx-required\nThis field holds CRM information", + "title": "CRM Details", + "$ref": "#/definitions/schemaCRMInfo" } } }, - "signupSourceMsp": { + "signupSignupTypeMsp": { "type": "object", - "description": "x-displayName: \"Source MSP\"", - "title": "Source MSP", + "description": "x-displayName: \"Signup Type MSP\"", + "title": "Signup Type MSP", "properties": { "child_tenant_obj_name": { "type": "string", @@ -1273,18 +1305,13 @@ var CustomPrivateAPIEywaprimeSwaggerJSON string = `{ "description": "x-displayName: \"CRM Details\"\nThis field holds CRM information", "title": "CRM Details", "$ref": "#/definitions/schemaCRMInfo" - }, - "crm_info": { - "description": "x-displayName: \"CRM Info\"\nthis field holds the CRM info\nThis field is deprecated. use CrmDetails instead", - "title": "crm_info", - "$ref": "#/definitions/signupCrmInfoV2" } } }, - "signupSourcePlanTransition": { + "signupSignupTypePlanTransition": { "type": "object", - "description": "x-displayName: \"Source Plan Transition\"\nSourcePlanTransition can be only used for Free to Individual plan transition signups", - "title": "Source Plan Transition", + "description": "x-displayName: \"Signup Type Plan Transition\"\nSignupTypePlanTransition can be only used for Free to Individual plan transition signups", + "title": "Signup Type Plan Transition", "properties": { "is_sso_enabled": { "type": "boolean", diff --git a/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesmsg.go b/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesmsg.go index 30eeb97c0..772d93ef3 100644 --- a/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesmsg.go +++ b/pbgo/extschema/schema/signup/private_customapi_eywaprime.vesmsg.go @@ -13,6 +13,8 @@ import ( "gopkg.volterra.us/stdlib/codec" "gopkg.volterra.us/stdlib/db" "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ) var ( @@ -77,10 +79,10 @@ type ValidateCreateV2Request struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateCreateV2Request) SourceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCreateV2Request) SignupTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for source_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for signup_type") } return validatorFn, nil } @@ -127,6 +129,22 @@ func (v *ValidateCreateV2Request) BillingDetailsValidationRuleHandler(rules map[ return validatorFn, nil } +func (v *ValidateCreateV2Request) OriginValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.SignupOrigin) + return int32(i) + } + // ves_io_schema.SignupOrigin_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema.SignupOrigin_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for origin") + } + + return validatorFn, nil +} + func (v *ValidateCreateV2Request) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*CreateV2Request) if !ok { @@ -168,67 +186,76 @@ func (v *ValidateCreateV2Request) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["source_choice"]; exists { - val := m.GetSourceChoice() + if fv, exists := v.FldValidators["origin"]; exists { + + vOpts := append(opts, db.WithValidateField("origin")) + if err := fv(ctx, m.GetOrigin(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["signup_type"]; exists { + val := m.GetSignupType() vOpts := append(opts, - db.WithValidateField("source_choice"), + db.WithValidateField("signup_type"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetSourceChoice().(type) { - case *CreateV2Request_SourceInternalSre: - if fv, exists := v.FldValidators["source_choice.source_internal_sre"]; exists { - val := m.GetSourceChoice().(*CreateV2Request_SourceInternalSre).SourceInternalSre + switch m.GetSignupType().(type) { + case *CreateV2Request_SignupTypeInternalSre: + if fv, exists := v.FldValidators["signup_type.signup_type_internal_sre"]; exists { + val := m.GetSignupType().(*CreateV2Request_SignupTypeInternalSre).SignupTypeInternalSre vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_internal_sre"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_internal_sre"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *CreateV2Request_SourceInternalScaling: - if fv, exists := v.FldValidators["source_choice.source_internal_scaling"]; exists { - val := m.GetSourceChoice().(*CreateV2Request_SourceInternalScaling).SourceInternalScaling + case *CreateV2Request_SignupTypeInternalScaling: + if fv, exists := v.FldValidators["signup_type.signup_type_internal_scaling"]; exists { + val := m.GetSignupType().(*CreateV2Request_SignupTypeInternalScaling).SignupTypeInternalScaling vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_internal_scaling"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_internal_scaling"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *CreateV2Request_SourcePlanTransition: - if fv, exists := v.FldValidators["source_choice.source_plan_transition"]; exists { - val := m.GetSourceChoice().(*CreateV2Request_SourcePlanTransition).SourcePlanTransition + case *CreateV2Request_SignupTypePlanTransition: + if fv, exists := v.FldValidators["signup_type.signup_type_plan_transition"]; exists { + val := m.GetSignupType().(*CreateV2Request_SignupTypePlanTransition).SignupTypePlanTransition vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_plan_transition"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_plan_transition"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *CreateV2Request_SourceMsp: - if fv, exists := v.FldValidators["source_choice.source_msp"]; exists { - val := m.GetSourceChoice().(*CreateV2Request_SourceMsp).SourceMsp + case *CreateV2Request_SignupTypeMsp: + if fv, exists := v.FldValidators["signup_type.signup_type_msp"]; exists { + val := m.GetSignupType().(*CreateV2Request_SignupTypeMsp).SignupTypeMsp vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_msp"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_msp"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *CreateV2Request_SourceMarketplace: - if fv, exists := v.FldValidators["source_choice.source_marketplace"]; exists { - val := m.GetSourceChoice().(*CreateV2Request_SourceMarketplace).SourceMarketplace + case *CreateV2Request_SignupTypeMarketplace: + if fv, exists := v.FldValidators["signup_type.signup_type_marketplace"]; exists { + val := m.GetSignupType().(*CreateV2Request_SignupTypeMarketplace).SignupTypeMarketplace vOpts := append(opts, - db.WithValidateField("source_choice"), - db.WithValidateField("source_marketplace"), + db.WithValidateField("signup_type"), + db.WithValidateField("signup_type_marketplace"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -261,16 +288,16 @@ var DefaultCreateV2RequestValidator = func() *ValidateCreateV2Request { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhSourceChoice := v.SourceChoiceValidationRuleHandler - rulesSourceChoice := map[string]string{ + vrhSignupType := v.SignupTypeValidationRuleHandler + rulesSignupType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhSourceChoice(rulesSourceChoice) + vFn, err = vrhSignupType(rulesSignupType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateV2Request.source_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateV2Request.signup_type: %s", err) panic(errMsg) } - v.FldValidators["source_choice"] = vFn + v.FldValidators["signup_type"] = vFn vrhAccountDetails := v.AccountDetailsValidationRuleHandler rulesAccountDetails := map[string]string{ @@ -294,9 +321,20 @@ var DefaultCreateV2RequestValidator = func() *ValidateCreateV2Request { } v.FldValidators["billing_details"] = vFn - v.FldValidators["source_choice.source_internal_sre"] = SourceInternalSreValidator().Validate - v.FldValidators["source_choice.source_msp"] = SourceMspValidator().Validate - v.FldValidators["source_choice.source_marketplace"] = SourceMarketplaceValidator().Validate + vrhOrigin := v.OriginValidationRuleHandler + rulesOrigin := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOrigin(rulesOrigin) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateV2Request.origin: %s", err) + panic(errMsg) + } + v.FldValidators["origin"] = vFn + + v.FldValidators["signup_type.signup_type_internal_sre"] = SignupTypeInternalSreValidator().Validate + v.FldValidators["signup_type.signup_type_msp"] = SignupTypeMspValidator().Validate + v.FldValidators["signup_type.signup_type_marketplace"] = SignupTypeMarketplaceValidator().Validate v.FldValidators["company_details"] = CompanyMetaValidator().Validate diff --git a/pbgo/extschema/schema/signup/public_customapi.vesapi.go b/pbgo/extschema/schema/signup/public_customapi.vesapi.go index 9e8d396c0..2127d7b7d 100644 --- a/pbgo/extschema/schema/signup/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/signup/public_customapi.vesapi.go @@ -2113,6 +2113,25 @@ var CustomAPISwaggerJSON string = `{ "x-displayname": "Contact Type", "x-ves-proto-enum": "ves.io.schema.contact.ContactType" }, + "infraprotect_informationPolicer": { + "type": "object", + "description": "Policer config for bandwidth restrictions", + "title": "Policer Config", + "x-displayname": "Policer Config", + "x-ves-proto-message": "ves.io.schema.infraprotect_information.Policer", + "properties": { + "bandwidth_max_mb": { + "type": "integer", + "description": " Bandwidth max allowed for a customer defined by contract\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 9999\n", + "title": "Bandwidth Max", + "format": "int64", + "x-displayname": "Bandwidth Max in MB", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "9999" + } + } + } + }, "schemaBlindfoldSecretInfoType": { "type": "object", "description": "BlindfoldSecretInfoType specifies information about the Secret managed by F5XC Secret Management", @@ -2310,10 +2329,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2885,7 +2908,7 @@ var CustomAPISwaggerJSON string = `{ "schemainfraprotect_informationGlobalSpecType": { "type": "object", "description": "Organisation information", - "title": "information", + "title": "Information", "x-displayname": "Information", "x-ves-oneof-field-as_path_choice": "[\"as_path_choice_full\",\"as_path_choice_none\",\"as_path_choice_origin\"]", "x-ves-oneof-field-default_tunnel_bgp_secret_choice": "[\"default_tunnel_bgp_secret\",\"default_tunnel_bgp_secret_none\"]", @@ -2938,6 +2961,12 @@ var CustomAPISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "No default tunnel BGP secret" }, + "policer": { + "description": " Policer config for bandwidth restrictions", + "title": "Policer Config", + "$ref": "#/definitions/infraprotect_informationPolicer", + "x-displayname": "Policer Config" + }, "prefixes": { "type": "array", "description": " List of tenant 'super' prefixes noted in CIDR\n\nExample: - \"value\"-", @@ -3072,12 +3101,6 @@ var CustomAPISwaggerJSON string = `{ "$ref": "#/definitions/schemaCRMInfo", "x-displayname": "CrmDetails" }, - "crm_info": { - "description": " message to include crm info in TEEM pipeline.\n This field is deprecated. use CrmDetails instead", - "title": "crm_info", - "$ref": "#/definitions/signupCrmInfo", - "x-displayname": "CrmInfo" - }, "currency": { "type": "string", "description": " preferred currency on the tenant level - individual billing accounts may\n override this.\n\nExample: - \"USD\"-", @@ -3384,13 +3407,6 @@ var CustomAPISwaggerJSON string = `{ } } }, - "signupCrmInfo": { - "type": "object", - "description": "Deprecated: use the CRMInfo defined in schema/types.proto", - "title": "fileds of crm info meesage", - "x-displayname": "Crm Info", - "x-ves-proto-message": "ves.io.schema.signup.CrmInfo" - }, "signupGetResponse": { "type": "object", "description": "Signup object including its status. Use it when you want to see the progress of the signup flow.", diff --git a/pbgo/extschema/schema/signup/types.pb.go b/pbgo/extschema/schema/signup/types.pb.go index 05538be30..cfe748c6b 100644 --- a/pbgo/extschema/schema/signup/types.pb.go +++ b/pbgo/extschema/schema/signup/types.pb.go @@ -190,12 +190,6 @@ type GlobalSpecType struct { // x-example: "A-S00012023" // sales force subscription id SfdcSubscriptionId string `protobuf:"bytes,26,opt,name=sfdc_subscription_id,json=sfdcSubscriptionId,proto3" json:"sfdc_subscription_id,omitempty"` // Deprecated: Do not use. - // crm_info - // - // x-displayName: "CrmInfo" - // message to include crm info in TEEM pipeline. - // This field is deprecated. use CrmDetails instead - CrmInfo *CrmInfo `protobuf:"bytes,27,opt,name=crm_info,json=crmInfo,proto3" json:"crm_info,omitempty"` // Deprecated: Do not use. // crm_details // // x-displayName: "CrmDetails" @@ -410,14 +404,6 @@ func (m *GlobalSpecType) GetSfdcSubscriptionId() string { return "" } -// Deprecated: Do not use. -func (m *GlobalSpecType) GetCrmInfo() *CrmInfo { - if m != nil { - return m.CrmInfo - } - return nil -} - func (m *GlobalSpecType) GetCrmDetails() *schema.CRMInfo { if m != nil { return m.CrmDetails @@ -464,12 +450,6 @@ type CreateSpecType struct { // x-example: "A-S00012023" // sales force subscription id SfdcSubscriptionId string `protobuf:"bytes,25,opt,name=sfdc_subscription_id,json=sfdcSubscriptionId,proto3" json:"sfdc_subscription_id,omitempty"` // Deprecated: Do not use. - // crm_info - // - // x-displayName: "CrmInfo" - // message to include crm info in TEEM pipeline. - // This field is deprecated. use CrmDetails instead - CrmInfo *CrmInfo `protobuf:"bytes,26,opt,name=crm_info,json=crmInfo,proto3" json:"crm_info,omitempty"` // Deprecated: Do not use. // Crm Details // // x-displayName: "Crm Details" @@ -675,14 +655,6 @@ func (m *CreateSpecType) GetSfdcSubscriptionId() string { return "" } -// Deprecated: Do not use. -func (m *CreateSpecType) GetCrmInfo() *CrmInfo { - if m != nil { - return m.CrmInfo - } - return nil -} - func (m *CreateSpecType) GetCrmDetails() *schema.CRMInfo { if m != nil { return m.CrmDetails @@ -760,202 +732,81 @@ func (m *GetSpecType) XXX_DiscardUnknown() { var xxx_messageInfo_GetSpecType proto.InternalMessageInfo -// fileds of crm info meesage -// -// x-displayName: "Crm Info" -// Deprecated: use the CRMInfo defined in schema/types.proto -type CrmInfo struct { - // account_id - // - // x-displayName: "AccountID" - // x-example: "SFA-1478257" - // salesforce account ID - AccountId string `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` - // entitlement_id - // - // x-displayName: "EntitlementID" - // x-example: "e5712007-0560-4fcc-b8c9-f4ffbeaf3e4e" - EntitlementId string `protobuf:"bytes,2,opt,name=entitlement_id,json=entitlementId,proto3" json:"entitlement_id,omitempty"` - // subscription_id - // - // x-displayName: "SubscriptionId" - // x-example: "A-S00012023" - // sales force subscription id - SubscriptionId string `protobuf:"bytes,3,opt,name=subscription_id,json=subscriptionId,proto3" json:"subscription_id,omitempty"` - // order_type - // - // x-displayName: "OrderType" - // x-example: "PAID" - OrderType string `protobuf:"bytes,5,opt,name=order_type,json=orderType,proto3" json:"order_type,omitempty"` - // Entitled SKUs - // - // x-displayName: "Entitled SKUs" - // x-example: "['F5-V-O-ALL-BASE-PK-B','F5-XC-O-ALL-BOT-STD-B','F5-V-O-ADN-MSH-API-B','F5-V-O-ADN-MSH-RLM-B']" - // SKU information that is used mostly for reporting purposes. - EntitledSkus []string `protobuf:"bytes,6,rep,name=entitled_skus,json=entitledSkus,proto3" json:"entitled_skus,omitempty"` - // Customer Identifier - // - // x-displayName: "Customer Identifier" - // x-example: "HHhd4MFcSzM" - // Customer identifier is a unique account(tenant) identifier provided by source - CustomerIdentifier string `protobuf:"bytes,7,opt,name=customer_identifier,json=customerIdentifier,proto3" json:"customer_identifier,omitempty"` -} - -func (m *CrmInfo) Reset() { *m = CrmInfo{} } -func (*CrmInfo) ProtoMessage() {} -func (*CrmInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_06020f1e10ed9466, []int{4} -} -func (m *CrmInfo) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CrmInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *CrmInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_CrmInfo.Merge(m, src) -} -func (m *CrmInfo) XXX_Size() int { - return m.Size() -} -func (m *CrmInfo) XXX_DiscardUnknown() { - xxx_messageInfo_CrmInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_CrmInfo proto.InternalMessageInfo - -func (m *CrmInfo) GetAccountId() string { - if m != nil { - return m.AccountId - } - return "" -} - -func (m *CrmInfo) GetEntitlementId() string { - if m != nil { - return m.EntitlementId - } - return "" -} - -func (m *CrmInfo) GetSubscriptionId() string { - if m != nil { - return m.SubscriptionId - } - return "" -} - -func (m *CrmInfo) GetOrderType() string { - if m != nil { - return m.OrderType - } - return "" -} - -func (m *CrmInfo) GetEntitledSkus() []string { - if m != nil { - return m.EntitledSkus - } - return nil -} - -func (m *CrmInfo) GetCustomerIdentifier() string { - if m != nil { - return m.CustomerIdentifier - } - return "" -} - func init() { proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.signup.GlobalSpecType") proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.signup.CreateSpecType") proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.signup.ReplaceSpecType") proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.signup.GetSpecType") - proto.RegisterType((*CrmInfo)(nil), "ves.io.schema.signup.CrmInfo") } func init() { proto.RegisterFile("ves.io/schema/signup/types.proto", fileDescriptor_06020f1e10ed9466) } var fileDescriptor_06020f1e10ed9466 = []byte{ - // 1166 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0x4f, 0x6f, 0xdb, 0x36, - 0x14, 0xb7, 0x6a, 0x3b, 0xb6, 0xe9, 0xc4, 0x76, 0x58, 0x2f, 0x63, 0x9c, 0x46, 0x71, 0x83, 0x65, - 0x08, 0x86, 0x45, 0x2e, 0x32, 0x60, 0x7f, 0x8a, 0x2e, 0x40, 0x9c, 0x15, 0x45, 0x02, 0x2c, 0x08, - 0x94, 0x60, 0x87, 0x5d, 0x04, 0x5a, 0xa2, 0x5d, 0x22, 0x92, 0x28, 0x90, 0x94, 0x17, 0x1f, 0x0a, - 0xf4, 0xb0, 0x0f, 0xb0, 0x8f, 0xb1, 0xcf, 0xb0, 0x5d, 0x76, 0xd8, 0xa1, 0xd8, 0x29, 0xc7, 0x00, - 0xbb, 0x2c, 0xce, 0xa5, 0xbb, 0xf5, 0x13, 0x6c, 0x83, 0x28, 0xc9, 0xb3, 0xdc, 0x64, 0x68, 0xb7, - 0xdd, 0xda, 0x9b, 0xde, 0xfb, 0xfd, 0x1e, 0xdf, 0xe3, 0x7b, 0xe4, 0x8f, 0x36, 0x68, 0x0f, 0x89, - 0x30, 0x28, 0xeb, 0x08, 0xfb, 0x31, 0xf1, 0x70, 0x47, 0xd0, 0x81, 0x1f, 0x06, 0x1d, 0x39, 0x0a, - 0x88, 0x30, 0x02, 0xce, 0x24, 0x83, 0xcd, 0x98, 0x61, 0xc4, 0x0c, 0x23, 0x66, 0xb4, 0xb6, 0x06, - 0x54, 0x3e, 0x0e, 0x7b, 0x86, 0xcd, 0xbc, 0xce, 0x80, 0x0d, 0x58, 0x47, 0x91, 0x7b, 0x61, 0x5f, - 0x59, 0xca, 0x50, 0x5f, 0xf1, 0x22, 0xad, 0xe5, 0x01, 0x63, 0x03, 0x97, 0xfc, 0xcd, 0xc2, 0xfe, - 0x28, 0x81, 0xd6, 0x66, 0x21, 0x49, 0x3d, 0x22, 0x24, 0xf6, 0x82, 0x84, 0x70, 0x37, 0x5b, 0xa2, - 0xcd, 0x7c, 0x89, 0x6d, 0x39, 0x5d, 0x63, 0x6b, 0x3b, 0x4b, 0xa1, 0x7e, 0x9f, 0xe3, 0x08, 0x21, - 0xb6, 0xb4, 0xa8, 0xdf, 0x67, 0xdc, 0xc3, 0x92, 0x32, 0x3f, 0x13, 0xb3, 0x92, 0x8d, 0x61, 0x41, - 0xc4, 0x48, 0xc1, 0xe5, 0x2c, 0x38, 0x1d, 0xa7, 0x67, 0xa1, 0x50, 0x10, 0x9e, 0xc1, 0xef, 0x64, - 0xf1, 0x21, 0x76, 0xa9, 0x83, 0x25, 0x49, 0xd0, 0x99, 0x7e, 0x0f, 0x29, 0xf9, 0xc6, 0xca, 0xa4, - 0x5e, 0xff, 0x03, 0x80, 0xda, 0x23, 0x97, 0xf5, 0xb0, 0x7b, 0x1c, 0x10, 0xfb, 0x64, 0x14, 0x10, - 0xb8, 0x04, 0xe6, 0x5c, 0x66, 0x63, 0x97, 0x20, 0xad, 0xad, 0x6d, 0x56, 0xcc, 0xc4, 0x82, 0x5b, - 0xa0, 0x10, 0x65, 0x46, 0xb7, 0xda, 0xda, 0x66, 0x6d, 0x7b, 0xd9, 0xc8, 0x4e, 0xea, 0x84, 0xf8, - 0xd8, 0x97, 0xd1, 0x02, 0xa6, 0xa2, 0xc1, 0x55, 0x00, 0xfa, 0x94, 0x0b, 0x69, 0xf9, 0xd8, 0x23, - 0x28, 0xaf, 0x96, 0xaa, 0x28, 0xcf, 0x21, 0xf6, 0x08, 0x5c, 0x01, 0x15, 0x17, 0xa7, 0x68, 0x41, - 0xa1, 0xe5, 0xc8, 0xa1, 0xc0, 0x26, 0x28, 0x12, 0x0f, 0x53, 0x17, 0x15, 0x15, 0x10, 0x1b, 0x70, - 0x03, 0xd4, 0x92, 0x71, 0x58, 0x7e, 0xe8, 0xf5, 0x08, 0x47, 0x73, 0x0a, 0x5e, 0x48, 0xbc, 0x87, - 0xca, 0x19, 0xd5, 0xef, 0x30, 0x0f, 0x53, 0x1f, 0x95, 0xe3, 0xfa, 0x63, 0x0b, 0xb6, 0x40, 0xd9, - 0x0e, 0x39, 0x27, 0xbe, 0x3d, 0x42, 0x95, 0x38, 0x61, 0x6a, 0xc3, 0xcf, 0xc0, 0x52, 0x80, 0x47, - 0x1e, 0xf1, 0xa5, 0x15, 0x70, 0x36, 0xa4, 0x0e, 0xe1, 0x96, 0x64, 0xa7, 0xc4, 0x47, 0x20, 0x62, - 0x76, 0xf3, 0xcf, 0x9e, 0x68, 0x66, 0x33, 0xa1, 0x1c, 0x25, 0x8c, 0x93, 0x88, 0x00, 0x0f, 0x41, - 0xbd, 0x47, 0x5d, 0x97, 0xfa, 0x03, 0x0b, 0x3b, 0x0e, 0x27, 0x42, 0x20, 0xd8, 0xd6, 0x36, 0xab, - 0xdb, 0x1b, 0x33, 0x1d, 0x4a, 0xaa, 0x34, 0xb2, 0xed, 0x36, 0x6b, 0x49, 0xf4, 0x6e, 0x1c, 0x0c, - 0x37, 0xc0, 0xbc, 0x64, 0xc2, 0xc2, 0xb6, 0x4d, 0x02, 0x49, 0x1c, 0x54, 0x6d, 0x6b, 0x9b, 0xf9, - 0xee, 0x2d, 0xa4, 0x99, 0x55, 0xc9, 0xc4, 0x6e, 0xe2, 0x86, 0x3b, 0xd1, 0x6e, 0x84, 0x64, 0x1e, - 0xe1, 0x68, 0x5e, 0xe5, 0x5b, 0x9f, 0xc9, 0x17, 0x9d, 0x95, 0xd9, 0x64, 0x93, 0x18, 0x78, 0x04, - 0x1a, 0xe9, 0xb7, 0x95, 0x54, 0x86, 0x16, 0x5e, 0xa7, 0xee, 0x7a, 0x1a, 0xbe, 0x17, 0xe3, 0xf0, - 0x2e, 0x98, 0xb7, 0x99, 0x17, 0x60, 0x7f, 0x14, 0x0f, 0xb5, 0xa6, 0x7a, 0x5c, 0x4d, 0x7c, 0x6a, - 0xae, 0x0f, 0x40, 0x29, 0x31, 0x51, 0xfd, 0x95, 0x6b, 0x4e, 0x43, 0xa2, 0x4e, 0xa7, 0x09, 0xd2, - 0x8a, 0x1b, 0xaf, 0xd5, 0xe9, 0x24, 0x3a, 0x2d, 0x18, 0x81, 0x62, 0x3c, 0xe3, 0x45, 0x35, 0xe3, - 0xa8, 0xc5, 0xb1, 0x03, 0x1a, 0x60, 0x51, 0x84, 0x41, 0xc0, 0xb8, 0xb4, 0x02, 0x17, 0xfb, 0xf1, - 0x7e, 0x6e, 0x4f, 0x58, 0xf5, 0x04, 0x3c, 0x72, 0xb1, 0xaf, 0xf6, 0xf5, 0x3e, 0xa8, 0x87, 0x02, - 0x0f, 0xc8, 0x14, 0xbb, 0x19, 0x1f, 0x4d, 0xe5, 0x9e, 0xf0, 0xd6, 0x40, 0x34, 0x43, 0x6b, 0x48, - 0xb8, 0xa0, 0xcc, 0x47, 0xef, 0x28, 0x0e, 0x90, 0x4c, 0x7c, 0x15, 0x7b, 0xe0, 0x0e, 0x00, 0x12, - 0x9f, 0x59, 0xe4, 0x8c, 0x78, 0x81, 0x44, 0x4b, 0xea, 0xa6, 0xad, 0xcd, 0xde, 0x34, 0x7c, 0xf6, - 0x50, 0xe1, 0x94, 0xf9, 0x6a, 0x5f, 0x15, 0x99, 0x7a, 0xa0, 0x0d, 0x16, 0x5f, 0x92, 0x23, 0xf4, - 0xae, 0x6a, 0xd2, 0xc7, 0x33, 0xcb, 0xdc, 0x24, 0x5b, 0xb3, 0x5d, 0x6b, 0x4c, 0x13, 0xf7, 0xfd, - 0x3e, 0x83, 0x9f, 0x83, 0x95, 0xf4, 0xc4, 0x4f, 0x2e, 0x0b, 0xb6, 0x6d, 0x16, 0xfa, 0xd2, 0xa2, - 0x0e, 0x42, 0x6a, 0x57, 0x28, 0xa1, 0xa4, 0x97, 0x65, 0x37, 0x26, 0xec, 0x3b, 0xb0, 0x0b, 0xea, - 0xd3, 0x07, 0xdc, 0xc2, 0x12, 0x2d, 0xab, 0x0a, 0x5b, 0x46, 0x2c, 0xce, 0x46, 0x2a, 0xce, 0xc6, - 0x49, 0x2a, 0xce, 0xe6, 0xc2, 0xd4, 0xd9, 0xdf, 0x95, 0xf0, 0x21, 0x68, 0x8a, 0xbe, 0x63, 0x5b, - 0x22, 0xec, 0x09, 0x9b, 0x53, 0xd5, 0x8b, 0x28, 0x77, 0x4b, 0xcd, 0xe8, 0xf6, 0xc5, 0x13, 0xed, - 0xf9, 0x8f, 0x9a, 0xf6, 0xc3, 0xef, 0x3f, 0xe5, 0x8b, 0x3c, 0x8f, 0x9e, 0x46, 0x43, 0x83, 0x51, - 0xc0, 0xf1, 0x14, 0x7f, 0xdf, 0x81, 0x0f, 0x40, 0xd9, 0xe6, 0x5e, 0xdc, 0xa5, 0x15, 0x55, 0xc3, - 0xaa, 0x71, 0xdd, 0x03, 0x64, 0xec, 0x71, 0x2f, 0xda, 0xba, 0x9a, 0x7e, 0xc9, 0x8e, 0x0d, 0xf8, - 0x09, 0xa8, 0x46, 0xd1, 0x0e, 0x91, 0x98, 0xba, 0x02, 0xad, 0xaa, 0x05, 0x96, 0x66, 0x16, 0xd8, - 0x33, 0xbf, 0x8c, 0xc8, 0x26, 0xb0, 0xb9, 0xf7, 0x45, 0xcc, 0x3c, 0x28, 0x94, 0x4b, 0x8d, 0xf2, - 0x41, 0xa1, 0x7c, 0xa7, 0xb1, 0xba, 0xfe, 0x33, 0x00, 0xb5, 0x3d, 0x4e, 0xb0, 0x24, 0x6f, 0x05, - 0xf8, 0xad, 0x00, 0xbf, 0x59, 0x02, 0xdc, 0xcc, 0x08, 0x70, 0x2a, 0xbe, 0x1f, 0xdc, 0x28, 0xbe, - 0x6f, 0xba, 0xf0, 0x5e, 0xa3, 0x9c, 0xe8, 0xff, 0x52, 0xce, 0xe5, 0x7f, 0xaf, 0x9c, 0xad, 0xff, - 0xaa, 0x9c, 0x2b, 0xaf, 0xaa, 0x9c, 0xf7, 0x17, 0x7f, 0xd9, 0x99, 0xf9, 0xb9, 0x1a, 0x8b, 0xe9, - 0xfa, 0x7b, 0xa0, 0x6e, 0x92, 0xc0, 0xc5, 0xf6, 0x44, 0x46, 0xaf, 0xe1, 0xae, 0xb7, 0x41, 0xf5, - 0x11, 0x91, 0xff, 0xc4, 0xf8, 0xf5, 0x16, 0x28, 0x25, 0x25, 0xc3, 0x7b, 0x00, 0x4c, 0x3d, 0x6b, - 0x4a, 0x8b, 0xbb, 0x8b, 0x2f, 0x35, 0xc8, 0xac, 0xe0, 0xc9, 0xd3, 0xf6, 0x29, 0xa8, 0x11, 0x5f, - 0x52, 0xe9, 0x12, 0xa5, 0x64, 0xd4, 0x51, 0x5a, 0x7d, 0x6d, 0xd4, 0xc2, 0x14, 0x71, 0xdf, 0x81, - 0xf7, 0x41, 0x7d, 0x76, 0x22, 0xf9, 0x9b, 0x42, 0x6b, 0x22, 0x3b, 0x8b, 0x7b, 0x00, 0x30, 0xae, - 0x04, 0x33, 0x7a, 0x1d, 0x8a, 0x37, 0xd6, 0xa9, 0x48, 0xea, 0x85, 0xf9, 0x10, 0xa4, 0xe9, 0x1d, - 0x4b, 0x9c, 0x86, 0x02, 0xcd, 0xb5, 0xf3, 0x9b, 0x95, 0x6e, 0x29, 0x09, 0x32, 0xe7, 0x53, 0xf4, - 0xf8, 0x34, 0x14, 0xb0, 0x0b, 0x6e, 0x4f, 0x94, 0x8a, 0x3a, 0x11, 0xd4, 0xa7, 0x84, 0xa3, 0xd2, - 0xb5, 0x89, 0xfe, 0xd4, 0x4c, 0x98, 0xb2, 0xf7, 0x27, 0xe4, 0x83, 0x42, 0xb9, 0xd0, 0x28, 0x76, - 0xbf, 0xd5, 0xce, 0x2f, 0xf5, 0xdc, 0xc5, 0xa5, 0x9e, 0x7b, 0x71, 0xa9, 0x6b, 0x4f, 0xc7, 0xba, - 0xf6, 0xfd, 0x58, 0xd7, 0x9e, 0x8d, 0x75, 0xed, 0x7c, 0xac, 0x6b, 0x17, 0x63, 0x5d, 0xfb, 0x6d, - 0xac, 0x6b, 0xcf, 0xc7, 0x7a, 0xee, 0xc5, 0x58, 0xd7, 0xbe, 0xbb, 0xd2, 0x73, 0xe7, 0x57, 0x7a, - 0xee, 0xe2, 0x4a, 0xcf, 0x7d, 0x7d, 0x30, 0x60, 0xc1, 0xe9, 0xc0, 0x18, 0x32, 0x57, 0x12, 0xce, - 0x23, 0xa1, 0xea, 0xa8, 0x8f, 0xe8, 0xfa, 0x6c, 0xa5, 0x4f, 0xc6, 0x56, 0x0a, 0x77, 0x82, 0xde, - 0x80, 0x75, 0xc8, 0x99, 0x4c, 0xff, 0x69, 0x4e, 0xff, 0xe1, 0xec, 0xcd, 0xa9, 0x6b, 0xf2, 0xd1, - 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x78, 0x2d, 0xd7, 0xbf, 0x8f, 0x0e, 0x00, 0x00, + // 1017 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0x4f, 0x6f, 0x1b, 0x45, + 0x14, 0xf7, 0x36, 0x49, 0xeb, 0x8c, 0x13, 0xdb, 0x99, 0x9a, 0x30, 0xb1, 0x93, 0x8d, 0x1b, 0x11, + 0x14, 0x21, 0x65, 0x2d, 0x05, 0x09, 0x04, 0x82, 0x48, 0x49, 0xa8, 0xaa, 0x44, 0x22, 0x8a, 0xdc, + 0x88, 0x03, 0x97, 0xd5, 0x78, 0x76, 0xbc, 0x1d, 0x75, 0x77, 0x66, 0x35, 0x33, 0x6b, 0xe2, 0x43, + 0xa5, 0x1e, 0x38, 0x72, 0xe0, 0x63, 0xf0, 0x19, 0xe0, 0xc2, 0x09, 0x55, 0x9c, 0x72, 0xcc, 0x91, + 0x38, 0x97, 0x72, 0xeb, 0x47, 0x40, 0x3b, 0xbb, 0x6b, 0xbc, 0x4b, 0x8b, 0x5a, 0xc1, 0xad, 0xbd, + 0xed, 0x7b, 0xbf, 0xdf, 0x9b, 0xf7, 0x6f, 0xe6, 0x27, 0x1b, 0x74, 0x47, 0x54, 0x39, 0x4c, 0xf4, + 0x14, 0x79, 0x44, 0x43, 0xdc, 0x53, 0xcc, 0xe7, 0x71, 0xd4, 0xd3, 0xe3, 0x88, 0x2a, 0x27, 0x92, + 0x42, 0x0b, 0xd8, 0x4a, 0x19, 0x4e, 0xca, 0x70, 0x52, 0x46, 0x7b, 0xd7, 0x67, 0xfa, 0x51, 0x3c, + 0x70, 0x88, 0x08, 0x7b, 0xbe, 0xf0, 0x45, 0xcf, 0x90, 0x07, 0xf1, 0xd0, 0x58, 0xc6, 0x30, 0x5f, + 0xe9, 0x21, 0xed, 0x35, 0x5f, 0x08, 0x3f, 0xa0, 0x7f, 0xb3, 0x30, 0x1f, 0x67, 0xd0, 0x66, 0x19, + 0xd2, 0x2c, 0xa4, 0x4a, 0xe3, 0x30, 0xca, 0x08, 0xf7, 0x8a, 0x25, 0x12, 0xc1, 0x35, 0x26, 0x7a, + 0xb6, 0xc6, 0xf6, 0x5e, 0x91, 0xc2, 0xf8, 0x50, 0xe2, 0x04, 0xa1, 0x44, 0xbb, 0x8c, 0x0f, 0x85, + 0x0c, 0xb1, 0x66, 0x82, 0x17, 0x62, 0x3a, 0xc5, 0x18, 0x11, 0x25, 0x8c, 0x1c, 0x5c, 0x2b, 0x82, + 0xb3, 0x71, 0x76, 0x11, 0x8a, 0x15, 0x95, 0x05, 0x7c, 0xbd, 0x88, 0x8f, 0x70, 0xc0, 0x3c, 0xac, + 0x69, 0x86, 0x96, 0xe6, 0x3d, 0x62, 0xf4, 0x3b, 0xb7, 0x90, 0x7a, 0xeb, 0x37, 0x00, 0xea, 0x0f, + 0x02, 0x31, 0xc0, 0xc1, 0xc3, 0x88, 0x92, 0xf3, 0x71, 0x44, 0xe1, 0x2a, 0xb8, 0x1d, 0x08, 0x82, + 0x03, 0x8a, 0xac, 0xae, 0xb5, 0xb3, 0xd8, 0xcf, 0x2c, 0xb8, 0x0b, 0xe6, 0x93, 0xcc, 0xe8, 0x56, + 0xd7, 0xda, 0xa9, 0xef, 0xad, 0x39, 0xc5, 0x4d, 0x9d, 0x53, 0x8e, 0xb9, 0x4e, 0x0e, 0xe8, 0x1b, + 0x1a, 0xdc, 0x00, 0x60, 0xc8, 0xa4, 0xd2, 0x2e, 0xc7, 0x21, 0x45, 0x73, 0xe6, 0xa8, 0x45, 0xe3, + 0x39, 0xc5, 0x21, 0x85, 0x1d, 0xb0, 0x18, 0xe0, 0x1c, 0x9d, 0x37, 0x68, 0x35, 0x71, 0x18, 0xb0, + 0x05, 0x16, 0x68, 0x88, 0x59, 0x80, 0x16, 0x0c, 0x90, 0x1a, 0x70, 0x1b, 0xd4, 0xb3, 0x75, 0xb8, + 0x3c, 0x0e, 0x07, 0x54, 0xa2, 0xdb, 0x06, 0x5e, 0xce, 0xbc, 0xa7, 0xc6, 0x99, 0xd4, 0xef, 0x89, + 0x10, 0x33, 0x8e, 0xaa, 0x69, 0xfd, 0xa9, 0x05, 0xdb, 0xa0, 0x4a, 0x62, 0x29, 0x29, 0x27, 0x63, + 0xb4, 0x98, 0x26, 0xcc, 0x6d, 0xf8, 0x19, 0x58, 0x8d, 0xf0, 0x38, 0xa4, 0x5c, 0xbb, 0x91, 0x14, + 0x23, 0xe6, 0x51, 0xe9, 0x6a, 0xf1, 0x98, 0x72, 0x04, 0x12, 0xe6, 0xe1, 0xdc, 0xb3, 0x27, 0x56, + 0xbf, 0x95, 0x51, 0xce, 0x32, 0xc6, 0x79, 0x42, 0x80, 0xa7, 0xa0, 0x31, 0x60, 0x41, 0xc0, 0xb8, + 0xef, 0x62, 0xcf, 0x93, 0x54, 0x29, 0x04, 0xbb, 0xd6, 0x4e, 0x6d, 0x6f, 0xbb, 0x34, 0xa1, 0xac, + 0x4a, 0xa7, 0x38, 0xee, 0x7e, 0x3d, 0x8b, 0x3e, 0x48, 0x83, 0xe1, 0x36, 0x58, 0xd2, 0x42, 0xb9, + 0x98, 0x10, 0x1a, 0x69, 0xea, 0xa1, 0x5a, 0xd7, 0xda, 0x99, 0x3b, 0xbc, 0x85, 0xac, 0x7e, 0x4d, + 0x0b, 0x75, 0x90, 0xb9, 0xe1, 0x7e, 0xd2, 0x8d, 0xd2, 0x22, 0xa4, 0x12, 0x2d, 0x99, 0x7c, 0x5b, + 0xa5, 0x7c, 0xc9, 0x5d, 0x29, 0x27, 0x9b, 0xc6, 0xc0, 0x33, 0xd0, 0xcc, 0xbf, 0xdd, 0xac, 0x32, + 0xb4, 0xfc, 0x26, 0x75, 0x37, 0xf2, 0xf0, 0xa3, 0x14, 0x87, 0xf7, 0xc0, 0x12, 0x11, 0x61, 0x84, + 0xf9, 0x38, 0x5d, 0x6a, 0xdd, 0xcc, 0xb8, 0x96, 0xf9, 0xcc, 0x5e, 0xbf, 0x00, 0x77, 0x32, 0x13, + 0x35, 0x5e, 0xbb, 0xe6, 0x3c, 0x24, 0x99, 0x74, 0x9e, 0x20, 0xaf, 0xb8, 0xf9, 0x46, 0x93, 0xce, + 0xa2, 0xf3, 0x82, 0x11, 0x58, 0x48, 0x77, 0xbc, 0x62, 0x76, 0x9c, 0x8c, 0x38, 0x75, 0x40, 0x07, + 0xac, 0xa8, 0x38, 0x8a, 0x84, 0xd4, 0x6e, 0x14, 0x60, 0x9e, 0xf6, 0x73, 0x77, 0xca, 0x6a, 0x64, + 0xe0, 0x59, 0x80, 0xb9, 0xe9, 0xeb, 0x43, 0xd0, 0x88, 0x15, 0xf6, 0xe9, 0x0c, 0xbb, 0x95, 0x5e, + 0x4d, 0xe3, 0x9e, 0xf2, 0x36, 0x41, 0xb2, 0x43, 0x77, 0x44, 0xa5, 0x62, 0x82, 0xa3, 0xf7, 0x0c, + 0x07, 0x68, 0xa1, 0xbe, 0x49, 0x3d, 0x70, 0x1f, 0x00, 0x8d, 0x2f, 0x5c, 0x7a, 0x41, 0xc3, 0x48, + 0xa3, 0x55, 0xf3, 0xd2, 0x36, 0xcb, 0x2f, 0x0d, 0x5f, 0xdc, 0x37, 0x38, 0x13, 0xdc, 0xf4, 0xb5, + 0xa8, 0x73, 0x0f, 0x24, 0x60, 0xe5, 0x1f, 0x72, 0x84, 0xde, 0x37, 0x43, 0xfa, 0xa4, 0x74, 0xcc, + 0xab, 0x64, 0xab, 0x3c, 0xb5, 0xe6, 0x2c, 0xf1, 0x98, 0x0f, 0x05, 0xfc, 0x12, 0x74, 0xf2, 0x1b, + 0x3f, 0x7d, 0x2c, 0x98, 0x10, 0x11, 0x73, 0xed, 0x32, 0x0f, 0x21, 0xd3, 0x15, 0xca, 0x28, 0xf9, + 0x63, 0x39, 0x48, 0x09, 0xc7, 0x1e, 0x3c, 0x04, 0x8d, 0xd9, 0x0b, 0xee, 0x62, 0x8d, 0xd6, 0x4c, + 0x85, 0x6d, 0x27, 0x15, 0x67, 0x27, 0x17, 0x67, 0xe7, 0x3c, 0x17, 0xe7, 0xfe, 0xf2, 0xcc, 0xdd, + 0x3f, 0xd0, 0xf0, 0x3e, 0x68, 0xa9, 0xa1, 0x47, 0x5c, 0x15, 0x0f, 0x14, 0x91, 0xcc, 0xcc, 0x22, + 0xc9, 0xdd, 0x36, 0x3b, 0xba, 0x7b, 0xf5, 0xc4, 0x7a, 0xfe, 0x8b, 0x65, 0xfd, 0xfc, 0xe7, 0xaf, + 0x73, 0x0b, 0x72, 0x0e, 0x3d, 0x4d, 0x96, 0x06, 0x93, 0x80, 0x87, 0x33, 0xfc, 0x63, 0x0f, 0x7e, + 0x0a, 0x6a, 0x44, 0x86, 0xae, 0x47, 0x35, 0x66, 0x81, 0x42, 0x1b, 0xa6, 0x8c, 0xd5, 0xd2, 0xa0, + 0x8e, 0xfa, 0x5f, 0x27, 0x6d, 0xf7, 0x01, 0x91, 0xe1, 0x57, 0x29, 0xf3, 0x64, 0xbe, 0x7a, 0xa7, + 0x59, 0x3d, 0x99, 0xaf, 0x76, 0x9a, 0xeb, 0x27, 0xf3, 0xd5, 0xf5, 0xe6, 0xc6, 0xd6, 0x0f, 0x00, + 0xd4, 0x8f, 0x24, 0xc5, 0x9a, 0xbe, 0x13, 0xd2, 0x77, 0x42, 0xfa, 0x76, 0x09, 0x69, 0xab, 0x20, + 0xa4, 0xb9, 0x88, 0x7e, 0xf4, 0x4a, 0x11, 0x7d, 0xdb, 0x05, 0xf4, 0x25, 0x0a, 0x88, 0xfe, 0x2f, + 0x05, 0x5c, 0xfb, 0x4f, 0x0a, 0xd8, 0x79, 0x5d, 0x05, 0xfc, 0x7c, 0xe5, 0xf7, 0xfd, 0xd2, 0x0f, + 0xc7, 0xa9, 0x28, 0xb6, 0x9b, 0x9d, 0xad, 0x0f, 0x40, 0xa3, 0x4f, 0xa3, 0x00, 0x93, 0xa9, 0x1c, + 0xbe, 0x24, 0x62, 0xab, 0x0b, 0x6a, 0x0f, 0xa8, 0xfe, 0x17, 0xc6, 0xe1, 0xf7, 0xd6, 0xe5, 0xb5, + 0x5d, 0xb9, 0xba, 0xb6, 0x2b, 0x2f, 0xae, 0x6d, 0xeb, 0xe9, 0xc4, 0xb6, 0x7e, 0x9a, 0xd8, 0xd6, + 0xb3, 0x89, 0x6d, 0x5d, 0x4e, 0x6c, 0xeb, 0x6a, 0x62, 0x5b, 0x7f, 0x4c, 0x6c, 0xeb, 0xf9, 0xc4, + 0xae, 0xbc, 0x98, 0xd8, 0xd6, 0x8f, 0x37, 0x76, 0xe5, 0xf2, 0xc6, 0xae, 0x5c, 0xdd, 0xd8, 0x95, + 0x6f, 0x4f, 0x7c, 0x11, 0x3d, 0xf6, 0x9d, 0x91, 0x08, 0x34, 0x95, 0x32, 0x79, 0x12, 0x3d, 0xf3, + 0x91, 0x2c, 0x6a, 0x37, 0x17, 0xa7, 0xdd, 0x1c, 0xee, 0x45, 0x03, 0x5f, 0xf4, 0xe8, 0x85, 0xce, + 0xff, 0x9b, 0xcc, 0xfe, 0x45, 0x19, 0xdc, 0x36, 0x0b, 0xf9, 0xf8, 0xaf, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xc4, 0xba, 0x99, 0x6e, 0xc1, 0x0c, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { @@ -1052,9 +903,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if this.SfdcSubscriptionId != that1.SfdcSubscriptionId { return false } - if !this.CrmInfo.Equal(that1.CrmInfo) { - return false - } if !this.CrmDetails.Equal(that1.CrmDetails) { return false } @@ -1151,9 +999,6 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if this.SfdcSubscriptionId != that1.SfdcSubscriptionId { return false } - if !this.CrmInfo.Equal(that1.CrmInfo) { - return false - } if !this.CrmDetails.Equal(that1.CrmDetails) { return false } @@ -1201,55 +1046,11 @@ func (this *GetSpecType) Equal(that interface{}) bool { } return true } -func (this *CrmInfo) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CrmInfo) - if !ok { - that2, ok := that.(CrmInfo) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.AccountId != that1.AccountId { - return false - } - if this.EntitlementId != that1.EntitlementId { - return false - } - if this.SubscriptionId != that1.SubscriptionId { - return false - } - if this.OrderType != that1.OrderType { - return false - } - if len(this.EntitledSkus) != len(that1.EntitledSkus) { - return false - } - for i := range this.EntitledSkus { - if this.EntitledSkus[i] != that1.EntitledSkus[i] { - return false - } - } - if this.CustomerIdentifier != that1.CustomerIdentifier { - return false - } - return true -} func (this *GlobalSpecType) goString() string { if this == nil { return "nil" } - s := make([]string, 0, 31) + s := make([]string, 0, 30) s = append(s, "&signup.GlobalSpecType{") s = append(s, "Locale: "+fmt.Sprintf("%#v", this.Locale)+",\n") s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") @@ -1290,9 +1091,6 @@ func (this *GlobalSpecType) goString() string { s = append(s, "TosAcceptedAt: "+fmt.Sprintf("%#v", this.TosAcceptedAt)+",\n") } s = append(s, "SfdcSubscriptionId: "+fmt.Sprintf("%#v", this.SfdcSubscriptionId)+",\n") - if this.CrmInfo != nil { - s = append(s, "CrmInfo: "+fmt.Sprintf("%#v", this.CrmInfo)+",\n") - } if this.CrmDetails != nil { s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") } @@ -1303,7 +1101,7 @@ func (this *CreateSpecType) goString() string { if this == nil { return "nil" } - s := make([]string, 0, 30) + s := make([]string, 0, 29) s = append(s, "&signup.CreateSpecType{") s = append(s, "Locale: "+fmt.Sprintf("%#v", this.Locale)+",\n") s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") @@ -1343,9 +1141,6 @@ func (this *CreateSpecType) goString() string { s = append(s, "TosAcceptedAt: "+fmt.Sprintf("%#v", this.TosAcceptedAt)+",\n") } s = append(s, "SfdcSubscriptionId: "+fmt.Sprintf("%#v", this.SfdcSubscriptionId)+",\n") - if this.CrmInfo != nil { - s = append(s, "CrmInfo: "+fmt.Sprintf("%#v", this.CrmInfo)+",\n") - } if this.CrmDetails != nil { s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") } @@ -1370,21 +1165,6 @@ func (this *GetSpecType) GoString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *CrmInfo) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&signup.CrmInfo{") - s = append(s, "AccountId: "+fmt.Sprintf("%#v", this.AccountId)+",\n") - s = append(s, "EntitlementId: "+fmt.Sprintf("%#v", this.EntitlementId)+",\n") - s = append(s, "SubscriptionId: "+fmt.Sprintf("%#v", this.SubscriptionId)+",\n") - s = append(s, "OrderType: "+fmt.Sprintf("%#v", this.OrderType)+",\n") - s = append(s, "EntitledSkus: "+fmt.Sprintf("%#v", this.EntitledSkus)+",\n") - s = append(s, "CustomerIdentifier: "+fmt.Sprintf("%#v", this.CustomerIdentifier)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} func valueToGoStringTypes(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -1427,20 +1207,6 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xea } - if m.CrmInfo != nil { - { - size, err := m.CrmInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xda - } if len(m.SfdcSubscriptionId) > 0 { i -= len(m.SfdcSubscriptionId) copy(dAtA[i:], m.SfdcSubscriptionId) @@ -1704,20 +1470,6 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xda } - if m.CrmInfo != nil { - { - size, err := m.CrmInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd2 - } if len(m.SfdcSubscriptionId) > 0 { i -= len(m.SfdcSubscriptionId) copy(dAtA[i:], m.SfdcSubscriptionId) @@ -1984,73 +1736,6 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *CrmInfo) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CrmInfo) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CrmInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CustomerIdentifier) > 0 { - i -= len(m.CustomerIdentifier) - copy(dAtA[i:], m.CustomerIdentifier) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CustomerIdentifier))) - i-- - dAtA[i] = 0x3a - } - if len(m.EntitledSkus) > 0 { - for iNdEx := len(m.EntitledSkus) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.EntitledSkus[iNdEx]) - copy(dAtA[i:], m.EntitledSkus[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.EntitledSkus[iNdEx]))) - i-- - dAtA[i] = 0x32 - } - } - if len(m.OrderType) > 0 { - i -= len(m.OrderType) - copy(dAtA[i:], m.OrderType) - i = encodeVarintTypes(dAtA, i, uint64(len(m.OrderType))) - i-- - dAtA[i] = 0x2a - } - if len(m.SubscriptionId) > 0 { - i -= len(m.SubscriptionId) - copy(dAtA[i:], m.SubscriptionId) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SubscriptionId))) - i-- - dAtA[i] = 0x1a - } - if len(m.EntitlementId) > 0 { - i -= len(m.EntitlementId) - copy(dAtA[i:], m.EntitlementId) - i = encodeVarintTypes(dAtA, i, uint64(len(m.EntitlementId))) - i-- - dAtA[i] = 0x12 - } - if len(m.AccountId) > 0 { - i -= len(m.AccountId) - copy(dAtA[i:], m.AccountId) - i = encodeVarintTypes(dAtA, i, uint64(len(m.AccountId))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { offset -= sovTypes(v) base := offset @@ -2165,10 +1850,6 @@ func (m *GlobalSpecType) Size() (n int) { if l > 0 { n += 2 + l + sovTypes(uint64(l)) } - if m.CrmInfo != nil { - l = m.CrmInfo.Size() - n += 2 + l + sovTypes(uint64(l)) - } if m.CrmDetails != nil { l = m.CrmDetails.Size() n += 2 + l + sovTypes(uint64(l)) @@ -2275,10 +1956,6 @@ func (m *CreateSpecType) Size() (n int) { if l > 0 { n += 2 + l + sovTypes(uint64(l)) } - if m.CrmInfo != nil { - l = m.CrmInfo.Size() - n += 2 + l + sovTypes(uint64(l)) - } if m.CrmDetails != nil { l = m.CrmDetails.Size() n += 2 + l + sovTypes(uint64(l)) @@ -2304,41 +1981,6 @@ func (m *GetSpecType) Size() (n int) { return n } -func (m *CrmInfo) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AccountId) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.EntitlementId) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.SubscriptionId) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.OrderType) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.EntitledSkus) > 0 { - for _, s := range m.EntitledSkus { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - l = len(m.CustomerIdentifier) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - func sovTypes(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -2375,7 +2017,6 @@ func (this *GlobalSpecType) string() string { `BillingProviderAccountId:` + fmt.Sprintf("%v", this.BillingProviderAccountId) + `,`, `TosAcceptedAt:` + strings.Replace(fmt.Sprintf("%v", this.TosAcceptedAt), "Timestamp", "types.Timestamp", 1) + `,`, `SfdcSubscriptionId:` + fmt.Sprintf("%v", this.SfdcSubscriptionId) + `,`, - `CrmInfo:` + strings.Replace(this.CrmInfo.String(), "CrmInfo", "CrmInfo", 1) + `,`, `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, `}`, }, "") @@ -2410,7 +2051,6 @@ func (this *CreateSpecType) string() string { `InfraprotectInfo:` + strings.Replace(fmt.Sprintf("%v", this.InfraprotectInfo), "GlobalSpecType", "infraprotect_information.GlobalSpecType", 1) + `,`, `TosAcceptedAt:` + strings.Replace(fmt.Sprintf("%v", this.TosAcceptedAt), "Timestamp", "types.Timestamp", 1) + `,`, `SfdcSubscriptionId:` + fmt.Sprintf("%v", this.SfdcSubscriptionId) + `,`, - `CrmInfo:` + strings.Replace(this.CrmInfo.String(), "CrmInfo", "CrmInfo", 1) + `,`, `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, `}`, }, "") @@ -2434,21 +2074,6 @@ func (this *GetSpecType) String() string { }, "") return s } -func (this *CrmInfo) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CrmInfo{`, - `AccountId:` + fmt.Sprintf("%v", this.AccountId) + `,`, - `EntitlementId:` + fmt.Sprintf("%v", this.EntitlementId) + `,`, - `SubscriptionId:` + fmt.Sprintf("%v", this.SubscriptionId) + `,`, - `OrderType:` + fmt.Sprintf("%v", this.OrderType) + `,`, - `EntitledSkus:` + fmt.Sprintf("%v", this.EntitledSkus) + `,`, - `CustomerIdentifier:` + fmt.Sprintf("%v", this.CustomerIdentifier) + `,`, - `}`, - }, "") - return s -} func valueToStringTypes(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -3275,42 +2900,6 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.SfdcSubscriptionId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 27: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CrmInfo == nil { - m.CrmInfo = &CrmInfo{} - } - if err := m.CrmInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 29: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) @@ -4157,42 +3746,6 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } m.SfdcSubscriptionId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 26: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CrmInfo == nil { - m.CrmInfo = &CrmInfo{} - } - if err := m.CrmInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 27: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) @@ -4359,251 +3912,6 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } return nil } -func (m *CrmInfo) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CrmInfo: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CrmInfo: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AccountId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntitlementId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EntitlementId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubscriptionId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SubscriptionId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderType", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.OrderType = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntitledSkus", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EntitledSkus = append(m.EntitledSkus, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomerIdentifier", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.CustomerIdentifier = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func skipTypes(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/pbgo/extschema/schema/signup/types.vesmsg.go b/pbgo/extschema/schema/signup/types.vesmsg.go index b650e781b..f08778734 100644 --- a/pbgo/extschema/schema/signup/types.vesmsg.go +++ b/pbgo/extschema/schema/signup/types.vesmsg.go @@ -269,15 +269,6 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["crm_info"]; exists { - - vOpts := append(opts, db.WithValidateField("crm_info")) - if err := fv(ctx, m.GetCrmInfo(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["currency"]; exists { vOpts := append(opts, db.WithValidateField("currency")) @@ -510,8 +501,6 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["infraprotect_info"] = ves_io_schema_infraprotect_information.GlobalSpecTypeValidator().Validate - v.FldValidators["crm_info"] = CrmInfoValidator().Validate - v.FldValidators["crm_details"] = ves_io_schema.CRMInfoValidator().Validate return v @@ -523,245 +512,6 @@ func CreateSpecTypeValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *CrmInfo) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CrmInfo) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CrmInfo) DeepCopy() *CrmInfo { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CrmInfo{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CrmInfo) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CrmInfo) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CrmInfoValidator().Validate(ctx, m, opts...) -} - -type ValidateCrmInfo struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCrmInfo) AccountIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for account_id") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfo) EntitlementIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for entitlement_id") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfo) SubscriptionIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for subscription_id") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfo) OrderTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for order_type") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfo) CustomerIdentifierValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for customer_identifier") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfo) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CrmInfo) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CrmInfo got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["account_id"]; exists { - - vOpts := append(opts, db.WithValidateField("account_id")) - if err := fv(ctx, m.GetAccountId(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["customer_identifier"]; exists { - - vOpts := append(opts, db.WithValidateField("customer_identifier")) - if err := fv(ctx, m.GetCustomerIdentifier(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["entitled_skus"]; exists { - - vOpts := append(opts, db.WithValidateField("entitled_skus")) - for idx, item := range m.GetEntitledSkus() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["entitlement_id"]; exists { - - vOpts := append(opts, db.WithValidateField("entitlement_id")) - if err := fv(ctx, m.GetEntitlementId(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["order_type"]; exists { - - vOpts := append(opts, db.WithValidateField("order_type")) - if err := fv(ctx, m.GetOrderType(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["subscription_id"]; exists { - - vOpts := append(opts, db.WithValidateField("subscription_id")) - if err := fv(ctx, m.GetSubscriptionId(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCrmInfoValidator = func() *ValidateCrmInfo { - v := &ValidateCrmInfo{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhAccountId := v.AccountIdValidationRuleHandler - rulesAccountId := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhAccountId(rulesAccountId) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfo.account_id: %s", err) - panic(errMsg) - } - v.FldValidators["account_id"] = vFn - - vrhEntitlementId := v.EntitlementIdValidationRuleHandler - rulesEntitlementId := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhEntitlementId(rulesEntitlementId) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfo.entitlement_id: %s", err) - panic(errMsg) - } - v.FldValidators["entitlement_id"] = vFn - - vrhSubscriptionId := v.SubscriptionIdValidationRuleHandler - rulesSubscriptionId := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhSubscriptionId(rulesSubscriptionId) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfo.subscription_id: %s", err) - panic(errMsg) - } - v.FldValidators["subscription_id"] = vFn - - vrhOrderType := v.OrderTypeValidationRuleHandler - rulesOrderType := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhOrderType(rulesOrderType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfo.order_type: %s", err) - panic(errMsg) - } - v.FldValidators["order_type"] = vFn - - vrhCustomerIdentifier := v.CustomerIdentifierValidationRuleHandler - rulesCustomerIdentifier := map[string]string{ - "ves.io.schema.rules.string.max_len": "255", - } - vFn, err = vrhCustomerIdentifier(rulesCustomerIdentifier) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfo.customer_identifier: %s", err) - panic(errMsg) - } - v.FldValidators["customer_identifier"] = vFn - - return v -}() - -func CrmInfoValidator() db.Validator { - return DefaultCrmInfoValidator -} - -// augmented methods on protoc/std generated struct - func (m *GetSpecType) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -1092,15 +842,6 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["crm_info"]; exists { - - vOpts := append(opts, db.WithValidateField("crm_info")) - if err := fv(ctx, m.GetCrmInfo(), vOpts...); err != nil { - return err - } - - } - if fv, exists := v.FldValidators["currency"]; exists { vOpts := append(opts, db.WithValidateField("currency")) @@ -1333,8 +1074,6 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["infraprotect_info"] = ves_io_schema_infraprotect_information.GlobalSpecTypeValidator().Validate - v.FldValidators["crm_info"] = CrmInfoValidator().Validate - v.FldValidators["crm_details"] = ves_io_schema.CRMInfoValidator().Validate return v @@ -1433,7 +1172,6 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.CompanyName = f.GetCompanyName() m.ContactNumber = f.GetContactNumber() m.CrmDetails = f.GetCrmDetails() - m.CrmInfo = f.GetCrmInfo() m.Currency = f.GetCurrency() m.Customer = f.GetCustomer() m.CustomerContact = f.GetCustomerContact() @@ -1476,7 +1214,6 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.CompanyName = m1.CompanyName f.ContactNumber = m1.ContactNumber f.CrmDetails = m1.CrmDetails - f.CrmInfo = m1.CrmInfo f.Currency = m1.Currency f.Customer = m1.Customer f.CustomerContact = m1.CustomerContact diff --git a/pbgo/extschema/schema/signup/types_v2.pb.go b/pbgo/extschema/schema/signup/types_v2.pb.go index b4ac3c078..07a39080d 100644 --- a/pbgo/extschema/schema/signup/types_v2.pb.go +++ b/pbgo/extschema/schema/signup/types_v2.pb.go @@ -449,21 +449,21 @@ func (m *BillingMeta) GetInfraprotectInfo() *infraprotect_information.GlobalSpec return nil } -// Source Public +// Signup Type Public // -// x-displayName: "Source Public" -type SourcePublic struct { +// x-displayName: "Signup Type Public" +type SignupTypePublic struct { } -func (m *SourcePublic) Reset() { *m = SourcePublic{} } -func (*SourcePublic) ProtoMessage() {} -func (*SourcePublic) Descriptor() ([]byte, []int) { +func (m *SignupTypePublic) Reset() { *m = SignupTypePublic{} } +func (*SignupTypePublic) ProtoMessage() {} +func (*SignupTypePublic) Descriptor() ([]byte, []int) { return fileDescriptor_ff5d246d7ca2938f, []int{5} } -func (m *SourcePublic) XXX_Unmarshal(b []byte) error { +func (m *SignupTypePublic) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SourcePublic) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypePublic) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -471,22 +471,22 @@ func (m *SourcePublic) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) } return b[:n], nil } -func (m *SourcePublic) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourcePublic.Merge(m, src) +func (m *SignupTypePublic) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypePublic.Merge(m, src) } -func (m *SourcePublic) XXX_Size() int { +func (m *SignupTypePublic) XXX_Size() int { return m.Size() } -func (m *SourcePublic) XXX_DiscardUnknown() { - xxx_messageInfo_SourcePublic.DiscardUnknown(m) +func (m *SignupTypePublic) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypePublic.DiscardUnknown(m) } -var xxx_messageInfo_SourcePublic proto.InternalMessageInfo +var xxx_messageInfo_SignupTypePublic proto.InternalMessageInfo -// Source Internal SRE +// Signup Type Internal SRE // -// x-displayName: "Source Internal SRE" -type SourceInternalSre struct { +// x-displayName: "Signup Type Internal SRE" +type SignupTypeInternalSre struct { // f5xc_instance_name // // x-displayName: "F5XC Instance Name" @@ -499,28 +499,27 @@ type SourceInternalSre struct { // x-example: "kc-instance-3" // this field holds the kc instance name to be used for tenant realm allocation KcInstanceName string `protobuf:"bytes,2,opt,name=kc_instance_name,json=kcInstanceName,proto3" json:"kc_instance_name,omitempty"` - // crm_info - // - // x-displayName: "CRM Info" - // this field holds the CRM info - // This field is deprecated. use CrmDetails instead - CrmInfo *CrmInfoV2 `protobuf:"bytes,3,opt,name=crm_info,json=crmInfo,proto3" json:"crm_info,omitempty"` // Deprecated: Do not use. // CRM Details // // x-displayName: "CRM Details" // This field holds CRM information CrmDetails *schema.CRMInfo `protobuf:"bytes,4,opt,name=crm_details,json=crmDetails,proto3" json:"crm_details,omitempty"` + // Is Demo Tenant + // + // x-displayName: "Is Demo Tenant" + // Indicates whether signup is for demo tenant or not. + IsDemoTenant bool `protobuf:"varint,6,opt,name=is_demo_tenant,json=isDemoTenant,proto3" json:"is_demo_tenant,omitempty"` } -func (m *SourceInternalSre) Reset() { *m = SourceInternalSre{} } -func (*SourceInternalSre) ProtoMessage() {} -func (*SourceInternalSre) Descriptor() ([]byte, []int) { +func (m *SignupTypeInternalSre) Reset() { *m = SignupTypeInternalSre{} } +func (*SignupTypeInternalSre) ProtoMessage() {} +func (*SignupTypeInternalSre) Descriptor() ([]byte, []int) { return fileDescriptor_ff5d246d7ca2938f, []int{6} } -func (m *SourceInternalSre) XXX_Unmarshal(b []byte) error { +func (m *SignupTypeInternalSre) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SourceInternalSre) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypeInternalSre) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -528,105 +527,61 @@ func (m *SourceInternalSre) XXX_Marshal(b []byte, deterministic bool) ([]byte, e } return b[:n], nil } -func (m *SourceInternalSre) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourceInternalSre.Merge(m, src) +func (m *SignupTypeInternalSre) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypeInternalSre.Merge(m, src) } -func (m *SourceInternalSre) XXX_Size() int { +func (m *SignupTypeInternalSre) XXX_Size() int { return m.Size() } -func (m *SourceInternalSre) XXX_DiscardUnknown() { - xxx_messageInfo_SourceInternalSre.DiscardUnknown(m) +func (m *SignupTypeInternalSre) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypeInternalSre.DiscardUnknown(m) } -var xxx_messageInfo_SourceInternalSre proto.InternalMessageInfo +var xxx_messageInfo_SignupTypeInternalSre proto.InternalMessageInfo -func (m *SourceInternalSre) GetF5XcInstanceName() string { +func (m *SignupTypeInternalSre) GetF5XcInstanceName() string { if m != nil { return m.F5XcInstanceName } return "" } -func (m *SourceInternalSre) GetKcInstanceName() string { +func (m *SignupTypeInternalSre) GetKcInstanceName() string { if m != nil { return m.KcInstanceName } return "" } -// Deprecated: Do not use. -func (m *SourceInternalSre) GetCrmInfo() *CrmInfoV2 { +func (m *SignupTypeInternalSre) GetCrmDetails() *schema.CRMInfo { if m != nil { - return m.CrmInfo + return m.CrmDetails } return nil } -func (m *SourceInternalSre) GetCrmDetails() *schema.CRMInfo { +func (m *SignupTypeInternalSre) GetIsDemoTenant() bool { if m != nil { - return m.CrmDetails + return m.IsDemoTenant } - return nil + return false } -// Source Internal Scaling +// Signup Type Internal Scaling // -// x-displayName: "Source Internal Scaling" -type SourceInternalScaling struct { +// x-displayName: "Signup Type Internal Scaling" +type SignupTypeInternalScaling struct { } -func (m *SourceInternalScaling) Reset() { *m = SourceInternalScaling{} } -func (*SourceInternalScaling) ProtoMessage() {} -func (*SourceInternalScaling) Descriptor() ([]byte, []int) { +func (m *SignupTypeInternalScaling) Reset() { *m = SignupTypeInternalScaling{} } +func (*SignupTypeInternalScaling) ProtoMessage() {} +func (*SignupTypeInternalScaling) Descriptor() ([]byte, []int) { return fileDescriptor_ff5d246d7ca2938f, []int{7} } -func (m *SourceInternalScaling) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *SourceInternalScaling) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *SourceInternalScaling) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourceInternalScaling.Merge(m, src) -} -func (m *SourceInternalScaling) XXX_Size() int { - return m.Size() -} -func (m *SourceInternalScaling) XXX_DiscardUnknown() { - xxx_messageInfo_SourceInternalScaling.DiscardUnknown(m) -} - -var xxx_messageInfo_SourceInternalScaling proto.InternalMessageInfo - -// Source Marketplace -// -// x-displayName: "Source Marketplace" -// payload for the creation request, for Marketplace source -type SourceMarketplace struct { - // MarketplaceChoice - // - // x-displayName: "Marketplace Choice" - // marketplace provider choice - // - // Types that are valid to be assigned to MarketplaceChoice: - // *SourceMarketplace_MarketplaceAws - MarketplaceChoice isSourceMarketplace_MarketplaceChoice `protobuf_oneof:"marketplace_choice"` -} - -func (m *SourceMarketplace) Reset() { *m = SourceMarketplace{} } -func (*SourceMarketplace) ProtoMessage() {} -func (*SourceMarketplace) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{8} -} -func (m *SourceMarketplace) XXX_Unmarshal(b []byte) error { +func (m *SignupTypeInternalScaling) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SourceMarketplace) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypeInternalScaling) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -634,74 +589,40 @@ func (m *SourceMarketplace) XXX_Marshal(b []byte, deterministic bool) ([]byte, e } return b[:n], nil } -func (m *SourceMarketplace) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourceMarketplace.Merge(m, src) +func (m *SignupTypeInternalScaling) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypeInternalScaling.Merge(m, src) } -func (m *SourceMarketplace) XXX_Size() int { +func (m *SignupTypeInternalScaling) XXX_Size() int { return m.Size() } -func (m *SourceMarketplace) XXX_DiscardUnknown() { - xxx_messageInfo_SourceMarketplace.DiscardUnknown(m) -} - -var xxx_messageInfo_SourceMarketplace proto.InternalMessageInfo - -type isSourceMarketplace_MarketplaceChoice interface { - isSourceMarketplace_MarketplaceChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type SourceMarketplace_MarketplaceAws struct { - MarketplaceAws *MarketplaceAws `protobuf:"bytes,2,opt,name=marketplace_aws,json=marketplaceAws,proto3,oneof" json:"marketplace_aws,omitempty"` -} - -func (*SourceMarketplace_MarketplaceAws) isSourceMarketplace_MarketplaceChoice() {} - -func (m *SourceMarketplace) GetMarketplaceChoice() isSourceMarketplace_MarketplaceChoice { - if m != nil { - return m.MarketplaceChoice - } - return nil -} - -func (m *SourceMarketplace) GetMarketplaceAws() *MarketplaceAws { - if x, ok := m.GetMarketplaceChoice().(*SourceMarketplace_MarketplaceAws); ok { - return x.MarketplaceAws - } - return nil +func (m *SignupTypeInternalScaling) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypeInternalScaling.DiscardUnknown(m) } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*SourceMarketplace) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*SourceMarketplace_MarketplaceAws)(nil), - } -} +var xxx_messageInfo_SignupTypeInternalScaling proto.InternalMessageInfo -// Marketplace Aws +// Signup Type Marketplace // -// x-displayName: "Marketplace Aws" -// payload for the creation request, for AWS Marketplace -type MarketplaceAws struct { +// x-displayName: "Signup Type Marketplace" +// payload for the creation request, for Marketplace Signup Type +type SignupTypeMarketplace struct { // CRM Details // // x-displayName: "CRM Details" // x-required // This field holds CRM information - CrmDetails *schema.CRMInfo `protobuf:"bytes,2,opt,name=crm_details,json=crmDetails,proto3" json:"crm_details,omitempty"` + CrmDetails *schema.CRMInfo `protobuf:"bytes,3,opt,name=crm_details,json=crmDetails,proto3" json:"crm_details,omitempty"` } -func (m *MarketplaceAws) Reset() { *m = MarketplaceAws{} } -func (*MarketplaceAws) ProtoMessage() {} -func (*MarketplaceAws) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{9} +func (m *SignupTypeMarketplace) Reset() { *m = SignupTypeMarketplace{} } +func (*SignupTypeMarketplace) ProtoMessage() {} +func (*SignupTypeMarketplace) Descriptor() ([]byte, []int) { + return fileDescriptor_ff5d246d7ca2938f, []int{8} } -func (m *MarketplaceAws) XXX_Unmarshal(b []byte) error { +func (m *SignupTypeMarketplace) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *MarketplaceAws) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypeMarketplace) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -709,30 +630,30 @@ func (m *MarketplaceAws) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro } return b[:n], nil } -func (m *MarketplaceAws) XXX_Merge(src proto.Message) { - xxx_messageInfo_MarketplaceAws.Merge(m, src) +func (m *SignupTypeMarketplace) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypeMarketplace.Merge(m, src) } -func (m *MarketplaceAws) XXX_Size() int { +func (m *SignupTypeMarketplace) XXX_Size() int { return m.Size() } -func (m *MarketplaceAws) XXX_DiscardUnknown() { - xxx_messageInfo_MarketplaceAws.DiscardUnknown(m) +func (m *SignupTypeMarketplace) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypeMarketplace.DiscardUnknown(m) } -var xxx_messageInfo_MarketplaceAws proto.InternalMessageInfo +var xxx_messageInfo_SignupTypeMarketplace proto.InternalMessageInfo -func (m *MarketplaceAws) GetCrmDetails() *schema.CRMInfo { +func (m *SignupTypeMarketplace) GetCrmDetails() *schema.CRMInfo { if m != nil { return m.CrmDetails } return nil } -// Source Plan Transition +// Signup Type Plan Transition // -// x-displayName: "Source Plan Transition" -// SourcePlanTransition can be only used for Free to Individual plan transition signups -type SourcePlanTransition struct { +// x-displayName: "Signup Type Plan Transition" +// SignupTypePlanTransition can be only used for Free to Individual plan transition signups +type SignupTypePlanTransition struct { // IsSsoEnabled // // x-displayName: "IsSsoEnabled" @@ -741,15 +662,15 @@ type SourcePlanTransition struct { IsSsoEnabled bool `protobuf:"varint,1,opt,name=is_sso_enabled,json=isSsoEnabled,proto3" json:"is_sso_enabled,omitempty"` } -func (m *SourcePlanTransition) Reset() { *m = SourcePlanTransition{} } -func (*SourcePlanTransition) ProtoMessage() {} -func (*SourcePlanTransition) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{10} +func (m *SignupTypePlanTransition) Reset() { *m = SignupTypePlanTransition{} } +func (*SignupTypePlanTransition) ProtoMessage() {} +func (*SignupTypePlanTransition) Descriptor() ([]byte, []int) { + return fileDescriptor_ff5d246d7ca2938f, []int{9} } -func (m *SourcePlanTransition) XXX_Unmarshal(b []byte) error { +func (m *SignupTypePlanTransition) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SourcePlanTransition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypePlanTransition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -757,35 +678,29 @@ func (m *SourcePlanTransition) XXX_Marshal(b []byte, deterministic bool) ([]byte } return b[:n], nil } -func (m *SourcePlanTransition) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourcePlanTransition.Merge(m, src) +func (m *SignupTypePlanTransition) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypePlanTransition.Merge(m, src) } -func (m *SourcePlanTransition) XXX_Size() int { +func (m *SignupTypePlanTransition) XXX_Size() int { return m.Size() } -func (m *SourcePlanTransition) XXX_DiscardUnknown() { - xxx_messageInfo_SourcePlanTransition.DiscardUnknown(m) +func (m *SignupTypePlanTransition) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypePlanTransition.DiscardUnknown(m) } -var xxx_messageInfo_SourcePlanTransition proto.InternalMessageInfo +var xxx_messageInfo_SignupTypePlanTransition proto.InternalMessageInfo -func (m *SourcePlanTransition) GetIsSsoEnabled() bool { +func (m *SignupTypePlanTransition) GetIsSsoEnabled() bool { if m != nil { return m.IsSsoEnabled } return false } -// Source MSP +// Signup Type MSP // -// x-displayName: "Source MSP" -type SourceMsp struct { - // crm_info - // - // x-displayName: "CRM Info" - // this field holds the CRM info - // This field is deprecated. use CrmDetails instead - CrmInfo *CrmInfoV2 `protobuf:"bytes,1,opt,name=crm_info,json=crmInfo,proto3" json:"crm_info,omitempty"` // Deprecated: Do not use. +// x-displayName: "Signup Type MSP" +type SignupTypeMsp struct { // CRM Details // // x-displayName: "CRM Details" @@ -798,15 +713,15 @@ type SourceMsp struct { ChildTenantObjName string `protobuf:"bytes,4,opt,name=child_tenant_obj_name,json=childTenantObjName,proto3" json:"child_tenant_obj_name,omitempty"` } -func (m *SourceMsp) Reset() { *m = SourceMsp{} } -func (*SourceMsp) ProtoMessage() {} -func (*SourceMsp) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{11} +func (m *SignupTypeMsp) Reset() { *m = SignupTypeMsp{} } +func (*SignupTypeMsp) ProtoMessage() {} +func (*SignupTypeMsp) Descriptor() ([]byte, []int) { + return fileDescriptor_ff5d246d7ca2938f, []int{10} } -func (m *SourceMsp) XXX_Unmarshal(b []byte) error { +func (m *SignupTypeMsp) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SourceMsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypeMsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -814,55 +729,47 @@ func (m *SourceMsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { } return b[:n], nil } -func (m *SourceMsp) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourceMsp.Merge(m, src) +func (m *SignupTypeMsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypeMsp.Merge(m, src) } -func (m *SourceMsp) XXX_Size() int { +func (m *SignupTypeMsp) XXX_Size() int { return m.Size() } -func (m *SourceMsp) XXX_DiscardUnknown() { - xxx_messageInfo_SourceMsp.DiscardUnknown(m) +func (m *SignupTypeMsp) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypeMsp.DiscardUnknown(m) } -var xxx_messageInfo_SourceMsp proto.InternalMessageInfo - -// Deprecated: Do not use. -func (m *SourceMsp) GetCrmInfo() *CrmInfoV2 { - if m != nil { - return m.CrmInfo - } - return nil -} +var xxx_messageInfo_SignupTypeMsp proto.InternalMessageInfo -func (m *SourceMsp) GetCrmDetails() *schema.CRMInfo { +func (m *SignupTypeMsp) GetCrmDetails() *schema.CRMInfo { if m != nil { return m.CrmDetails } return nil } -func (m *SourceMsp) GetChildTenantObjName() string { +func (m *SignupTypeMsp) GetChildTenantObjName() string { if m != nil { return m.ChildTenantObjName } return "" } -// Source Internal SSO +// Signup Type Internal SSO // -// x-displayName: "Source Internal SSO" -type SourceInternalSso struct { +// x-displayName: "Signup Type Internal SSO" +type SignupTypeInternalSso struct { } -func (m *SourceInternalSso) Reset() { *m = SourceInternalSso{} } -func (*SourceInternalSso) ProtoMessage() {} -func (*SourceInternalSso) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{12} +func (m *SignupTypeInternalSso) Reset() { *m = SignupTypeInternalSso{} } +func (*SignupTypeInternalSso) ProtoMessage() {} +func (*SignupTypeInternalSso) Descriptor() ([]byte, []int) { + return fileDescriptor_ff5d246d7ca2938f, []int{11} } -func (m *SourceInternalSso) XXX_Unmarshal(b []byte) error { +func (m *SignupTypeInternalSso) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SourceInternalSso) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SignupTypeInternalSso) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -870,17 +777,17 @@ func (m *SourceInternalSso) XXX_Marshal(b []byte, deterministic bool) ([]byte, e } return b[:n], nil } -func (m *SourceInternalSso) XXX_Merge(src proto.Message) { - xxx_messageInfo_SourceInternalSso.Merge(m, src) +func (m *SignupTypeInternalSso) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignupTypeInternalSso.Merge(m, src) } -func (m *SourceInternalSso) XXX_Size() int { +func (m *SignupTypeInternalSso) XXX_Size() int { return m.Size() } -func (m *SourceInternalSso) XXX_DiscardUnknown() { - xxx_messageInfo_SourceInternalSso.DiscardUnknown(m) +func (m *SignupTypeInternalSso) XXX_DiscardUnknown() { + xxx_messageInfo_SignupTypeInternalSso.DiscardUnknown(m) } -var xxx_messageInfo_SourceInternalSso proto.InternalMessageInfo +var xxx_messageInfo_SignupTypeInternalSso proto.InternalMessageInfo // ContactMeta // @@ -947,7 +854,7 @@ type ContactMeta struct { func (m *ContactMeta) Reset() { *m = ContactMeta{} } func (*ContactMeta) ProtoMessage() {} func (*ContactMeta) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{13} + return fileDescriptor_ff5d246d7ca2938f, []int{12} } func (m *ContactMeta) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1035,133 +942,20 @@ func (m *ContactMeta) GetZipCode() string { return "" } -// fields of crm info message -// -// x-displayName: "Crm Info" -// Deprecated: use the CRMInfo defined in schema/types.proto -type CrmInfoV2 struct { - // account_id - // - // x-displayName: "AccountID" - // x-example: "SFA-1478257" - // salesforce account ID - AccountId string `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` - // entitlement_id - // - // x-displayName: "EntitlementID" - // x-example: "e5712007-0560-4fcc-b8c9-f4ffbeaf3e4e" - EntitlementId string `protobuf:"bytes,2,opt,name=entitlement_id,json=entitlementId,proto3" json:"entitlement_id,omitempty"` - // subscription_id - // - // x-displayName: "SubscriptionId" - // x-example: "A-S00012023" - // sales force subscription id - SubscriptionId string `protobuf:"bytes,3,opt,name=subscription_id,json=subscriptionId,proto3" json:"subscription_id,omitempty"` - // order_type - // - // x-displayName: "OrderType" - // x-example: "PAID" - OrderType string `protobuf:"bytes,5,opt,name=order_type,json=orderType,proto3" json:"order_type,omitempty"` - // Entitled SKUs - // - // x-displayName: "Entitled SKUs" - // x-example: "['F5-V-O-ALL-BASE-PK-B','F5-XC-O-ALL-BOT-STD-B','F5-V-O-ADN-MSH-API-B','F5-V-O-ADN-MSH-RLM-B']" - // SKU information that is used mostly for reporting purposes. - EntitledSkus []string `protobuf:"bytes,6,rep,name=entitled_skus,json=entitledSkus,proto3" json:"entitled_skus,omitempty"` - // Customer Identifier - // - // x-displayName: "Customer Identifier" - // x-example: "HHhd4MFcSzM" - // Customer identifier is a unique account(tenant) identifier provided by source - CustomerIdentifier string `protobuf:"bytes,7,opt,name=customer_identifier,json=customerIdentifier,proto3" json:"customer_identifier,omitempty"` -} - -func (m *CrmInfoV2) Reset() { *m = CrmInfoV2{} } -func (*CrmInfoV2) ProtoMessage() {} -func (*CrmInfoV2) Descriptor() ([]byte, []int) { - return fileDescriptor_ff5d246d7ca2938f, []int{14} -} -func (m *CrmInfoV2) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CrmInfoV2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *CrmInfoV2) XXX_Merge(src proto.Message) { - xxx_messageInfo_CrmInfoV2.Merge(m, src) -} -func (m *CrmInfoV2) XXX_Size() int { - return m.Size() -} -func (m *CrmInfoV2) XXX_DiscardUnknown() { - xxx_messageInfo_CrmInfoV2.DiscardUnknown(m) -} - -var xxx_messageInfo_CrmInfoV2 proto.InternalMessageInfo - -func (m *CrmInfoV2) GetAccountId() string { - if m != nil { - return m.AccountId - } - return "" -} - -func (m *CrmInfoV2) GetEntitlementId() string { - if m != nil { - return m.EntitlementId - } - return "" -} - -func (m *CrmInfoV2) GetSubscriptionId() string { - if m != nil { - return m.SubscriptionId - } - return "" -} - -func (m *CrmInfoV2) GetOrderType() string { - if m != nil { - return m.OrderType - } - return "" -} - -func (m *CrmInfoV2) GetEntitledSkus() []string { - if m != nil { - return m.EntitledSkus - } - return nil -} - -func (m *CrmInfoV2) GetCustomerIdentifier() string { - if m != nil { - return m.CustomerIdentifier - } - return "" -} - func init() { proto.RegisterType((*CompanyMeta)(nil), "ves.io.schema.signup.CompanyMeta") proto.RegisterType((*InternalMeta)(nil), "ves.io.schema.signup.InternalMeta") proto.RegisterType((*UserMeta)(nil), "ves.io.schema.signup.UserMeta") proto.RegisterType((*AccountMeta)(nil), "ves.io.schema.signup.AccountMeta") proto.RegisterType((*BillingMeta)(nil), "ves.io.schema.signup.BillingMeta") - proto.RegisterType((*SourcePublic)(nil), "ves.io.schema.signup.SourcePublic") - proto.RegisterType((*SourceInternalSre)(nil), "ves.io.schema.signup.SourceInternalSre") - proto.RegisterType((*SourceInternalScaling)(nil), "ves.io.schema.signup.SourceInternalScaling") - proto.RegisterType((*SourceMarketplace)(nil), "ves.io.schema.signup.SourceMarketplace") - proto.RegisterType((*MarketplaceAws)(nil), "ves.io.schema.signup.MarketplaceAws") - proto.RegisterType((*SourcePlanTransition)(nil), "ves.io.schema.signup.SourcePlanTransition") - proto.RegisterType((*SourceMsp)(nil), "ves.io.schema.signup.SourceMsp") - proto.RegisterType((*SourceInternalSso)(nil), "ves.io.schema.signup.SourceInternalSso") + proto.RegisterType((*SignupTypePublic)(nil), "ves.io.schema.signup.SignupTypePublic") + proto.RegisterType((*SignupTypeInternalSre)(nil), "ves.io.schema.signup.SignupTypeInternalSre") + proto.RegisterType((*SignupTypeInternalScaling)(nil), "ves.io.schema.signup.SignupTypeInternalScaling") + proto.RegisterType((*SignupTypeMarketplace)(nil), "ves.io.schema.signup.SignupTypeMarketplace") + proto.RegisterType((*SignupTypePlanTransition)(nil), "ves.io.schema.signup.SignupTypePlanTransition") + proto.RegisterType((*SignupTypeMsp)(nil), "ves.io.schema.signup.SignupTypeMsp") + proto.RegisterType((*SignupTypeInternalSso)(nil), "ves.io.schema.signup.SignupTypeInternalSso") proto.RegisterType((*ContactMeta)(nil), "ves.io.schema.signup.ContactMeta") - proto.RegisterType((*CrmInfoV2)(nil), "ves.io.schema.signup.CrmInfoV2") } func init() { @@ -1169,96 +963,82 @@ func init() { } var fileDescriptor_ff5d246d7ca2938f = []byte{ - // 1412 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xbf, 0x6f, 0x1b, 0x47, - 0x16, 0xd6, 0x2c, 0x29, 0x6a, 0x39, 0x94, 0x28, 0x6a, 0x2c, 0xeb, 0xd6, 0xf2, 0xdd, 0x5a, 0xe6, - 0x19, 0x77, 0xba, 0x83, 0x45, 0x9e, 0x69, 0xdc, 0xd9, 0x38, 0x18, 0x07, 0x8b, 0xb2, 0x71, 0x47, - 0x01, 0x96, 0x8d, 0x95, 0xec, 0xc2, 0xcd, 0x62, 0xb8, 0x3b, 0xa2, 0xc6, 0xda, 0xdd, 0x59, 0xcc, - 0x0c, 0x65, 0xd1, 0x80, 0x01, 0x15, 0x57, 0xa5, 0x0a, 0xfc, 0x17, 0xa4, 0x48, 0x91, 0x26, 0x4d, - 0xd2, 0x45, 0x8d, 0x4b, 0x97, 0x2a, 0x85, 0x54, 0x31, 0xdd, 0x38, 0x40, 0x0a, 0x57, 0x29, 0x93, - 0x60, 0x66, 0x77, 0xe5, 0x25, 0x25, 0x03, 0xf9, 0x01, 0xa4, 0xdb, 0x99, 0xf7, 0x7d, 0x6f, 0xdf, - 0xaf, 0xf9, 0x66, 0xe0, 0x9f, 0xf7, 0x88, 0x68, 0x50, 0xd6, 0x14, 0xde, 0x0e, 0x09, 0x71, 0x53, - 0xd0, 0x5e, 0xd4, 0x8f, 0x9b, 0x72, 0x10, 0x13, 0xe1, 0xee, 0xb5, 0x1a, 0x31, 0x67, 0x92, 0xa1, - 0xf9, 0x04, 0xd4, 0x48, 0x40, 0x8d, 0x04, 0xb4, 0xb8, 0xd2, 0xa3, 0x72, 0xa7, 0xdf, 0x6d, 0x78, - 0x2c, 0x6c, 0xf6, 0x58, 0x8f, 0x35, 0x35, 0xb8, 0xdb, 0xdf, 0xd6, 0x2b, 0xbd, 0xd0, 0x5f, 0x89, - 0x93, 0xc5, 0x4b, 0x3d, 0xc6, 0x7a, 0x01, 0x79, 0x8f, 0x92, 0x34, 0x24, 0x42, 0xe2, 0x30, 0x4e, - 0x01, 0xad, 0xd1, 0x50, 0x68, 0xb4, 0xcd, 0xb1, 0xb2, 0x10, 0x4f, 0xba, 0x34, 0xda, 0x66, 0x3c, - 0xc4, 0x92, 0xb2, 0x28, 0x09, 0x2e, 0xe5, 0x5c, 0x1c, 0xe5, 0xb0, 0x58, 0x21, 0x32, 0xe3, 0x85, - 0x51, 0x63, 0x9e, 0xf7, 0xc7, 0x51, 0xd3, 0x1e, 0x0e, 0xa8, 0x8f, 0x25, 0x49, 0xad, 0x4b, 0x63, - 0x56, 0x4a, 0x9e, 0xba, 0x23, 0xae, 0xeb, 0x03, 0x58, 0x59, 0x63, 0x61, 0x8c, 0xa3, 0xc1, 0x3d, - 0x22, 0x31, 0xb2, 0x61, 0x31, 0xc2, 0x21, 0xb1, 0xc0, 0x12, 0x58, 0x2e, 0xb7, 0xe1, 0x57, 0xdf, - 0xbe, 0x2c, 0x4c, 0xf2, 0x82, 0x75, 0x60, 0x38, 0x7a, 0x1f, 0xad, 0xc3, 0xd9, 0x10, 0xd3, 0x80, - 0x46, 0x3d, 0x17, 0xfb, 0x3e, 0x27, 0x42, 0x58, 0xc6, 0x12, 0x58, 0xae, 0xb4, 0x2e, 0x37, 0xce, - 0x2a, 0x6d, 0x63, 0x8d, 0x45, 0x12, 0x7b, 0x52, 0xf9, 0x76, 0xaa, 0x29, 0x73, 0x35, 0x21, 0xd6, - 0x3f, 0x05, 0x70, 0xba, 0x13, 0x49, 0xc2, 0x23, 0x1c, 0xe8, 0x9f, 0xdf, 0x80, 0x68, 0xfb, 0x9f, - 0xfb, 0x9e, 0x4b, 0x23, 0x21, 0x71, 0xe4, 0x11, 0x37, 0x17, 0x4a, 0x59, 0x85, 0x52, 0xe4, 0x86, - 0x75, 0xdb, 0xa9, 0x29, 0x50, 0x27, 0xc5, 0x6c, 0xa8, 0xa8, 0xae, 0xc3, 0xda, 0xee, 0x38, 0xcd, - 0x18, 0xa7, 0x55, 0x77, 0x47, 0x49, 0x7f, 0x81, 0x65, 0x49, 0x22, 0x1c, 0x49, 0x97, 0xfa, 0x56, - 0x61, 0x1c, 0x6d, 0x26, 0xb6, 0x8e, 0x5f, 0xff, 0x12, 0x40, 0xf3, 0xa1, 0x20, 0x5c, 0x87, 0xf8, - 0x37, 0x08, 0xb7, 0x29, 0x17, 0xd2, 0xfd, 0x40, 0x95, 0xca, 0xda, 0xaa, 0xfd, 0xff, 0x15, 0x96, - 0x03, 0x9c, 0x21, 0x8d, 0x53, 0x48, 0x53, 0x19, 0x35, 0x70, 0x09, 0x4e, 0x12, 0x55, 0x9a, 0x34, - 0x88, 0x3c, 0x28, 0x31, 0xa0, 0x6b, 0xb0, 0xea, 0x25, 0x85, 0x74, 0xa3, 0x7e, 0xd8, 0x25, 0xdc, - 0x2a, 0x9e, 0x82, 0xce, 0xa4, 0x88, 0x0d, 0x0d, 0xa8, 0x7f, 0x07, 0x60, 0x65, 0xd5, 0xf3, 0x58, - 0x3f, 0xd2, 0xc5, 0x47, 0x7f, 0x87, 0xa5, 0x80, 0x79, 0x38, 0xc8, 0x42, 0x41, 0x5f, 0x1f, 0x82, - 0x49, 0x12, 0xad, 0x3c, 0xdc, 0xcc, 0x72, 0xae, 0x39, 0x29, 0x02, 0x5d, 0x87, 0x25, 0x9f, 0x85, - 0x98, 0x46, 0x69, 0x44, 0x17, 0x15, 0x64, 0x81, 0xcf, 0x5b, 0x73, 0x8f, 0x0b, 0x7b, 0x44, 0x3c, - 0x36, 0xf7, 0x58, 0x20, 0x09, 0xe7, 0xf8, 0x13, 0x03, 0x38, 0x29, 0x14, 0x5d, 0x85, 0x15, 0xc9, - 0x84, 0xbb, 0x47, 0xb8, 0xa0, 0x2c, 0x4a, 0x03, 0xac, 0x28, 0x66, 0x89, 0x17, 0x6b, 0x86, 0x35, - 0xed, 0x40, 0xc9, 0xc4, 0xa3, 0xc4, 0x8c, 0x36, 0xe0, 0xac, 0x42, 0x63, 0xcf, 0x23, 0xb1, 0x24, - 0xbe, 0x8b, 0xa5, 0x35, 0xa9, 0xe7, 0x68, 0xb1, 0x91, 0x9c, 0xae, 0x46, 0x76, 0xba, 0x1a, 0x5b, - 0xd9, 0xe9, 0x4a, 0xd3, 0xfd, 0x02, 0x18, 0x37, 0x81, 0x33, 0x23, 0x99, 0x58, 0x4d, 0xd9, 0xab, - 0xb2, 0xfe, 0x79, 0x01, 0x56, 0xda, 0x34, 0x50, 0xe3, 0xa5, 0xd3, 0xbd, 0x0a, 0xcb, 0x71, 0x80, - 0xa3, 0x7c, 0x9b, 0x66, 0x15, 0x1b, 0x72, 0xb3, 0x06, 0xad, 0x03, 0x43, 0x45, 0x6e, 0x2a, 0xc4, - 0x46, 0x3a, 0xd5, 0xdd, 0x84, 0xfc, 0x2b, 0xa6, 0x3a, 0x65, 0xa6, 0x53, 0x8d, 0x1a, 0xd0, 0xf4, - 0xfa, 0x9c, 0x93, 0xc8, 0x1b, 0xa4, 0x45, 0x50, 0xa5, 0x2e, 0x3c, 0xdc, 0xbc, 0x93, 0xd5, 0x02, - 0x58, 0x25, 0xe7, 0x04, 0x83, 0xd6, 0xe0, 0x42, 0x8c, 0x07, 0x21, 0x89, 0xa4, 0x1b, 0x73, 0xb6, - 0x47, 0x7d, 0xc2, 0x5d, 0xc9, 0x76, 0x49, 0xa4, 0x0b, 0x52, 0x6e, 0xcf, 0xbc, 0x7a, 0x0e, 0x72, - 0x6d, 0x9e, 0x4f, 0xc1, 0x0f, 0x52, 0xec, 0x96, 0x82, 0xa2, 0x3b, 0x70, 0x46, 0xe2, 0x7d, 0x97, - 0xec, 0x93, 0x50, 0x9f, 0x6e, 0xab, 0xb4, 0x04, 0x96, 0xab, 0xad, 0x4b, 0x63, 0xe1, 0x6f, 0xe1, - 0xfd, 0xbb, 0x19, 0x64, 0x6b, 0x10, 0x13, 0x67, 0x5a, 0xe6, 0x76, 0x90, 0x07, 0xe7, 0x4e, 0x69, - 0x95, 0x35, 0xa5, 0x0b, 0xf1, 0xaf, 0x31, 0x4f, 0x1f, 0xd2, 0xb4, 0xc6, 0x7f, 0x03, 0xd6, 0xc5, - 0xc1, 0x66, 0x4c, 0x3c, 0xfd, 0x83, 0x5a, 0x1e, 0xd8, 0x89, 0xb6, 0xd9, 0x7a, 0xd1, 0x2c, 0xd4, - 0x8a, 0xf5, 0x2a, 0x9c, 0xde, 0x64, 0x7d, 0xee, 0x91, 0x07, 0xfd, 0x6e, 0x40, 0xbd, 0xfa, 0x81, - 0x01, 0xe7, 0x92, 0x8d, 0x4c, 0x11, 0x36, 0x39, 0xf9, 0x9d, 0x05, 0xe1, 0x3f, 0xd0, 0xf4, 0x78, - 0x98, 0x64, 0x5d, 0xd0, 0x59, 0x5f, 0xfa, 0x40, 0xfb, 0x79, 0xa8, 0x52, 0x79, 0xd4, 0x6a, 0x1b, - 0x16, 0x70, 0xa6, 0xbc, 0x64, 0x89, 0x6e, 0xc0, 0x8a, 0xe2, 0xfb, 0x44, 0x62, 0x1a, 0x08, 0xdd, - 0xfc, 0x4a, 0x6b, 0x61, 0xcc, 0xc5, 0x9a, 0x73, 0x4f, 0x81, 0x1d, 0xe8, 0xf1, 0xf0, 0x4e, 0x82, - 0x5c, 0x2f, 0x9a, 0x93, 0xb5, 0x52, 0xfd, 0x0f, 0xf0, 0xfc, 0x58, 0x05, 0x3c, 0xac, 0x06, 0xab, - 0xfe, 0x11, 0xc8, 0x6a, 0x73, 0x0f, 0xf3, 0x5d, 0x22, 0xe3, 0x00, 0x7b, 0x04, 0xdd, 0x57, 0x4a, - 0x7c, 0xb2, 0x74, 0xf1, 0xd3, 0x6c, 0x66, 0xaf, 0x9c, 0x1d, 0x74, 0x8e, 0xbb, 0xfa, 0x54, 0xfc, - 0x6f, 0x42, 0xc9, 0x71, 0x7e, 0xa7, 0x6d, 0x43, 0x94, 0x77, 0xe8, 0xed, 0x30, 0xea, 0x11, 0x64, - 0xbe, 0x3c, 0x04, 0xc6, 0xd1, 0x21, 0x00, 0xeb, 0x45, 0x13, 0xd4, 0x8c, 0xfa, 0x7d, 0x58, 0x1d, - 0xf5, 0x34, 0x9e, 0xb6, 0xf1, 0x0b, 0xd2, 0x56, 0x0e, 0x6f, 0xc1, 0xf9, 0x74, 0x12, 0x02, 0x1c, - 0x6d, 0x71, 0x1c, 0x09, 0xaa, 0x87, 0xf1, 0x0a, 0xac, 0x52, 0xe1, 0x0a, 0xc1, 0x5c, 0x12, 0xe1, - 0x6e, 0x40, 0x7c, 0xdd, 0x77, 0xd3, 0x99, 0xa6, 0x62, 0x53, 0xb0, 0xbb, 0xc9, 0x5e, 0xfd, 0x15, - 0x80, 0xe5, 0xb4, 0x36, 0x22, 0x1e, 0xe9, 0x20, 0xf8, 0xed, 0x1d, 0xfc, 0xd9, 0xa9, 0xa0, 0x5b, - 0xf0, 0xbc, 0xb7, 0x43, 0x03, 0xdf, 0x4d, 0x6f, 0x14, 0xd6, 0x7d, 0x92, 0x0c, 0x5d, 0x71, 0x64, - 0xe8, 0x6a, 0xc0, 0x41, 0x1a, 0xb7, 0xa5, 0x61, 0xf7, 0xbb, 0x4f, 0xd4, 0xe0, 0xa5, 0x47, 0xe2, - 0xdc, 0xa9, 0x13, 0x20, 0x58, 0xfd, 0x07, 0xa0, 0xee, 0xe7, 0x13, 0xb5, 0x41, 0x97, 0xe1, 0x74, - 0xbc, 0xc3, 0x22, 0x92, 0xdd, 0x03, 0xfa, 0x2c, 0x38, 0x15, 0xbd, 0x97, 0x28, 0x3f, 0x5a, 0x84, - 0x66, 0x2a, 0x62, 0xd7, 0x92, 0x99, 0x77, 0x4e, 0xd6, 0x39, 0x5b, 0x2b, 0xd1, 0xf6, 0x13, 0x5b, - 0x0b, 0x21, 0x58, 0xf4, 0xa8, 0x4c, 0x45, 0xcb, 0xd1, 0xdf, 0x68, 0x01, 0x96, 0xf4, 0x15, 0x32, - 0x48, 0xc4, 0xc8, 0x49, 0x57, 0x68, 0x1e, 0x4e, 0x0a, 0x89, 0x25, 0xd1, 0x3a, 0x53, 0x76, 0x92, - 0x05, 0xfa, 0x13, 0x84, 0xfa, 0xc3, 0xf5, 0x98, 0x4f, 0xb4, 0x70, 0x94, 0x9d, 0xb2, 0xde, 0x59, - 0x63, 0x3e, 0x41, 0x16, 0x9c, 0xd2, 0x74, 0x3e, 0xb0, 0x4c, 0x6d, 0xcb, 0x96, 0xe8, 0x02, 0x34, - 0x9f, 0xd1, 0x38, 0xa1, 0x95, 0x13, 0xd3, 0x33, 0x1a, 0x2b, 0x52, 0xfd, 0x7b, 0x03, 0x96, 0x4f, - 0xba, 0x85, 0xfe, 0x01, 0x21, 0x4e, 0x2e, 0x35, 0x75, 0x69, 0x27, 0x42, 0x30, 0x77, 0xfc, 0x1c, - 0xbc, 0x3d, 0x04, 0x79, 0x91, 0x2c, 0xa7, 0xa0, 0x8e, 0x8f, 0x6e, 0xc2, 0x2a, 0x89, 0x24, 0x95, - 0x01, 0xd1, 0x12, 0x4b, 0xfd, 0x54, 0x07, 0xce, 0x60, 0xcd, 0xe4, 0x80, 0x1d, 0x1f, 0xfd, 0x1b, - 0xce, 0x8a, 0x7e, 0x57, 0x78, 0x9c, 0x6a, 0x75, 0x7c, 0xff, 0x4a, 0x38, 0x83, 0x5a, 0xcd, 0x23, - 0x3b, 0xbe, 0x8a, 0x93, 0x71, 0xad, 0xe4, 0x83, 0x98, 0xa4, 0x42, 0x7e, 0x56, 0x9c, 0x1a, 0xa4, - 0x84, 0x12, 0xdd, 0x85, 0xd9, 0xef, 0x7d, 0x57, 0xec, 0xf6, 0x85, 0x55, 0x5a, 0x2a, 0x2c, 0x97, - 0xdb, 0x4b, 0x39, 0x12, 0x7c, 0x01, 0xa6, 0xea, 0x09, 0x53, 0xfb, 0x78, 0x01, 0x8c, 0xda, 0x6d, - 0x67, 0x3a, 0xa3, 0x6d, 0xee, 0xf6, 0x05, 0x6a, 0xc3, 0x73, 0x5e, 0x5f, 0x48, 0x16, 0x12, 0xee, - 0x52, 0x5f, 0x99, 0xb6, 0x29, 0xe1, 0x49, 0x2f, 0x4e, 0x45, 0xf0, 0xa3, 0x1a, 0xc7, 0x14, 0xdd, - 0x39, 0x01, 0xaf, 0x17, 0xcd, 0x62, 0x6d, 0xb2, 0xfd, 0x7f, 0x70, 0xf4, 0xda, 0x9e, 0x38, 0x7e, - 0x6d, 0x4f, 0xbc, 0x7b, 0x6d, 0x83, 0x83, 0xa1, 0x0d, 0x3e, 0x1b, 0xda, 0xe0, 0xd5, 0xd0, 0x06, - 0x47, 0x43, 0x1b, 0x1c, 0x0f, 0x6d, 0xf0, 0xcd, 0xd0, 0x06, 0x6f, 0x87, 0xf6, 0xc4, 0xbb, 0xa1, - 0x0d, 0x3e, 0x7e, 0x63, 0x4f, 0x1c, 0xbd, 0xb1, 0x27, 0x8e, 0xdf, 0xd8, 0x13, 0x8f, 0xd7, 0x7b, - 0x2c, 0xde, 0xed, 0x35, 0xb2, 0x57, 0x42, 0xa3, 0x2f, 0x9a, 0xfa, 0x43, 0xdd, 0x12, 0x2b, 0xd9, - 0x25, 0xb7, 0x92, 0x99, 0x9b, 0x71, 0xb7, 0xc7, 0x9a, 0x64, 0x5f, 0x66, 0x2f, 0xf7, 0xfc, 0x03, - 0xbe, 0x5b, 0xd2, 0xef, 0x80, 0xeb, 0x3f, 0x05, 0x00, 0x00, 0xff, 0xff, 0xcf, 0x07, 0xc6, 0xe9, - 0xdf, 0x0b, 0x00, 0x00, + // 1190 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0x4f, 0x6f, 0x1b, 0x45, + 0x1c, 0xcd, 0xd8, 0x8e, 0xbb, 0x1e, 0x27, 0xa9, 0x3b, 0x4a, 0xc3, 0x36, 0x85, 0x6d, 0x6a, 0x10, + 0x14, 0xd4, 0xac, 0x55, 0x57, 0x50, 0x0e, 0x1c, 0x9a, 0x3f, 0x15, 0x4a, 0xa4, 0x86, 0x6a, 0x93, + 0x72, 0xa8, 0x90, 0x56, 0xe3, 0xdd, 0xb1, 0x33, 0xcd, 0xee, 0xcc, 0x6a, 0x66, 0x6c, 0xe2, 0x4a, + 0x48, 0x3d, 0xf0, 0x01, 0x10, 0x9f, 0x80, 0x03, 0x07, 0x2e, 0x5c, 0xe0, 0x06, 0x17, 0x8e, 0x3d, + 0xf6, 0x58, 0x71, 0xa2, 0xee, 0x05, 0x24, 0x0e, 0xfd, 0x04, 0x08, 0xcd, 0xcc, 0x6e, 0xba, 0x76, + 0x5a, 0xa9, 0xe2, 0xc0, 0x6d, 0x66, 0x7e, 0xef, 0x8d, 0xdf, 0xbc, 0xdf, 0x1f, 0x2f, 0x7c, 0x7b, + 0x44, 0xa4, 0x4f, 0x79, 0x47, 0x46, 0x87, 0x24, 0xc5, 0x1d, 0x49, 0x07, 0x6c, 0x98, 0x75, 0xd4, + 0x38, 0x23, 0x32, 0x1c, 0x75, 0xfd, 0x4c, 0x70, 0xc5, 0xd1, 0xb2, 0x05, 0xf9, 0x16, 0xe4, 0x5b, + 0xd0, 0xea, 0xfa, 0x80, 0xaa, 0xc3, 0x61, 0xcf, 0x8f, 0x78, 0xda, 0x19, 0xf0, 0x01, 0xef, 0x18, + 0x70, 0x6f, 0xd8, 0x37, 0x3b, 0xb3, 0x31, 0x2b, 0x7b, 0xc9, 0xea, 0xa5, 0x01, 0xe7, 0x83, 0x84, + 0xbc, 0x40, 0x29, 0x9a, 0x12, 0xa9, 0x70, 0x9a, 0xe5, 0x80, 0xee, 0xb4, 0x14, 0xca, 0xfa, 0x02, + 0xeb, 0x08, 0x89, 0x54, 0x48, 0x59, 0x9f, 0x8b, 0x14, 0x2b, 0xca, 0x99, 0x15, 0x97, 0x73, 0x2e, + 0x4e, 0x73, 0x78, 0xa6, 0x11, 0x45, 0xf0, 0xc2, 0x74, 0xb0, 0xcc, 0x7b, 0x73, 0x3a, 0x34, 0xc2, + 0x09, 0x8d, 0xb1, 0x22, 0x79, 0x74, 0x6d, 0x26, 0x4a, 0xc9, 0x97, 0xe1, 0xd4, 0xd5, 0xed, 0x31, + 0x6c, 0x6e, 0xf1, 0x34, 0xc3, 0x6c, 0x7c, 0x9b, 0x28, 0x8c, 0x3c, 0x58, 0x63, 0x38, 0x25, 0x2e, + 0x58, 0x03, 0x57, 0x1a, 0x9b, 0xf0, 0x97, 0xbf, 0x7e, 0xab, 0xce, 0x8b, 0xaa, 0xfb, 0xb0, 0x12, + 0x98, 0x73, 0xb4, 0x0b, 0xcf, 0xa6, 0x98, 0x26, 0x94, 0x0d, 0x42, 0x1c, 0xc7, 0x82, 0x48, 0xe9, + 0x56, 0xd6, 0xc0, 0x95, 0x66, 0xf7, 0xb2, 0xff, 0x32, 0x6b, 0xfd, 0x2d, 0xce, 0x14, 0x8e, 0x94, + 0xbe, 0x3b, 0x58, 0xca, 0x99, 0x1b, 0x96, 0xd8, 0xfe, 0x1e, 0xc0, 0x85, 0x1d, 0xa6, 0x88, 0x60, + 0x38, 0x31, 0x3f, 0x7e, 0x03, 0xa2, 0xfe, 0x87, 0xc7, 0x51, 0x48, 0x99, 0x54, 0x98, 0x45, 0x24, + 0x2c, 0x49, 0x69, 0x68, 0x29, 0x35, 0x51, 0x71, 0x6f, 0x06, 0x2d, 0x0d, 0xda, 0xc9, 0x31, 0x7b, + 0x5a, 0xd5, 0x75, 0xd8, 0x3a, 0x9a, 0xa5, 0x55, 0x66, 0x69, 0x4b, 0x47, 0xd3, 0xa4, 0x77, 0x61, + 0x43, 0x11, 0x86, 0x99, 0x0a, 0x69, 0xec, 0x56, 0x67, 0xd1, 0x8e, 0x8d, 0xed, 0xc4, 0xed, 0x9f, + 0x01, 0x74, 0xee, 0x4a, 0x22, 0x8c, 0xc4, 0xf7, 0x21, 0xec, 0x53, 0x21, 0x55, 0xf8, 0x0a, 0x97, + 0x1a, 0x26, 0x6a, 0xee, 0x7f, 0x0f, 0x36, 0x12, 0x5c, 0x20, 0x2b, 0xa7, 0x90, 0x8e, 0x0e, 0x1a, + 0xe0, 0x1a, 0x9c, 0x27, 0xda, 0x9a, 0x5c, 0x44, 0x19, 0x64, 0x03, 0xe8, 0x1a, 0x5c, 0x8a, 0xac, + 0x91, 0x21, 0x1b, 0xa6, 0x3d, 0x22, 0xdc, 0xda, 0x29, 0xe8, 0x62, 0x8e, 0xd8, 0x33, 0x80, 0xf6, + 0xdf, 0x00, 0x36, 0x37, 0xa2, 0x88, 0x0f, 0x99, 0x31, 0x1f, 0x7d, 0x00, 0xeb, 0x09, 0x8f, 0x70, + 0x52, 0x48, 0x41, 0xbf, 0xff, 0x0a, 0xe6, 0x09, 0x5b, 0xbf, 0xbb, 0x5f, 0xbc, 0xb9, 0x15, 0xe4, + 0x08, 0x74, 0x1d, 0xd6, 0x63, 0x9e, 0x62, 0xca, 0x72, 0x45, 0x17, 0x35, 0x64, 0x45, 0x2c, 0xbb, + 0xe7, 0xee, 0x55, 0x47, 0x44, 0xde, 0x73, 0x46, 0x3c, 0x51, 0x44, 0x08, 0xfc, 0x5d, 0x05, 0x04, + 0x39, 0x14, 0x5d, 0x85, 0x4d, 0xc5, 0x65, 0x38, 0x22, 0x42, 0x52, 0xce, 0x72, 0x81, 0x4d, 0xcd, + 0xac, 0x8b, 0x5a, 0xab, 0xe2, 0x2e, 0x04, 0x50, 0x71, 0xf9, 0xb9, 0x0d, 0xa3, 0x3d, 0x78, 0x56, + 0xa3, 0x71, 0x14, 0x91, 0x4c, 0x91, 0x38, 0xc4, 0xca, 0x9d, 0x37, 0x75, 0xb4, 0xea, 0xdb, 0xee, + 0xf2, 0x8b, 0xee, 0xf2, 0x0f, 0x8a, 0xee, 0xca, 0x9f, 0xfb, 0x13, 0xa8, 0x7c, 0x0c, 0x82, 0x45, + 0xc5, 0xe5, 0x46, 0xce, 0xde, 0x50, 0xed, 0x1f, 0xab, 0xb0, 0xb9, 0x49, 0x13, 0x5d, 0x5e, 0xe6, + 0xb9, 0x57, 0x61, 0x23, 0x4b, 0x30, 0x2b, 0xa7, 0xe9, 0xac, 0x66, 0x43, 0xe1, 0xb4, 0xa0, 0xfb, + 0xb0, 0xa2, 0x95, 0x3b, 0x1a, 0xb1, 0x97, 0x57, 0x75, 0xcf, 0x92, 0xff, 0x43, 0x55, 0xe7, 0xcc, + 0xbc, 0xaa, 0x91, 0x0f, 0x9d, 0x68, 0x28, 0x04, 0x61, 0xd1, 0x38, 0x37, 0x41, 0x5b, 0x5d, 0xbd, + 0xbb, 0xbf, 0x5d, 0x78, 0x01, 0xdc, 0x7a, 0x70, 0x82, 0x41, 0x5b, 0x70, 0x25, 0xc3, 0xe3, 0x94, + 0x30, 0x15, 0x66, 0x82, 0x8f, 0x68, 0x4c, 0x44, 0xa8, 0xf8, 0x11, 0x61, 0xc6, 0x90, 0xc6, 0xe6, + 0xe2, 0xa3, 0xaf, 0x40, 0x29, 0xcd, 0xcb, 0x39, 0xf8, 0x4e, 0x8e, 0x3d, 0xd0, 0x50, 0xb4, 0x0d, + 0x17, 0x15, 0x3e, 0x0e, 0xc9, 0x31, 0x49, 0x4d, 0x77, 0xbb, 0xf5, 0x35, 0x70, 0x65, 0xa9, 0x7b, + 0x69, 0x46, 0xfe, 0x01, 0x3e, 0xbe, 0x55, 0x40, 0x0e, 0xc6, 0x19, 0x09, 0x16, 0x54, 0xe9, 0x04, + 0x45, 0xf0, 0xdc, 0xa9, 0x59, 0xe5, 0x9e, 0x31, 0x46, 0x7c, 0x34, 0x73, 0xd3, 0xab, 0x66, 0x9a, + 0xff, 0x69, 0xc2, 0x7b, 0x38, 0xd9, 0xcf, 0x48, 0x64, 0x7e, 0xa0, 0x55, 0x06, 0xee, 0xb0, 0x3e, + 0xdf, 0xad, 0x39, 0xd5, 0x56, 0xad, 0x8d, 0x60, 0x6b, 0xdf, 0x78, 0xa9, 0x51, 0x77, 0x86, 0xbd, + 0x84, 0x46, 0xed, 0xe7, 0x00, 0x9e, 0x7f, 0x71, 0x58, 0x4c, 0x86, 0x7d, 0x41, 0xfe, 0xe7, 0xc1, + 0x70, 0x03, 0x36, 0x23, 0x91, 0x86, 0x31, 0x51, 0x98, 0x26, 0xd2, 0x24, 0xb1, 0xd9, 0x5d, 0x99, + 0x31, 0x60, 0x2b, 0xb8, 0xad, 0x9f, 0x13, 0xc0, 0x48, 0xa4, 0xdb, 0x16, 0x89, 0xde, 0x81, 0x4b, + 0x54, 0x86, 0x31, 0x49, 0x79, 0x68, 0xa7, 0x87, 0x49, 0x83, 0x13, 0x2c, 0x50, 0xb9, 0x4d, 0x52, + 0x7e, 0x60, 0xce, 0xac, 0x01, 0xbb, 0x35, 0x67, 0xbe, 0x55, 0x6f, 0x5f, 0x84, 0x17, 0x5e, 0xf2, + 0xe2, 0x08, 0xeb, 0x82, 0x6a, 0x7f, 0x51, 0xb6, 0xe3, 0x36, 0x16, 0x47, 0x44, 0x65, 0x09, 0x8e, + 0x4e, 0x09, 0xac, 0xbe, 0xae, 0xc0, 0xdd, 0x9a, 0x03, 0x5a, 0x95, 0xdd, 0x9a, 0x53, 0x69, 0x55, + 0xdb, 0x37, 0xa1, 0x5b, 0xca, 0x40, 0x82, 0xd9, 0x81, 0xc0, 0x4c, 0x52, 0x53, 0x08, 0xf6, 0x21, + 0x52, 0xf2, 0x90, 0x30, 0xdc, 0x4b, 0x48, 0x6c, 0xbc, 0x36, 0x0f, 0xd9, 0x97, 0xfc, 0x96, 0x3d, + 0x6b, 0x7f, 0x0b, 0xe0, 0x62, 0x49, 0xa0, 0xcc, 0x66, 0x85, 0x55, 0x5e, 0xdb, 0xb9, 0x4f, 0xe0, + 0xf9, 0xe8, 0x90, 0x26, 0x71, 0xee, 0x5b, 0xc8, 0x7b, 0xf7, 0x6d, 0xb2, 0x6a, 0x53, 0xc9, 0x6a, + 0x81, 0x00, 0x19, 0x9c, 0xb5, 0xf2, 0xb3, 0xde, 0x7d, 0x9d, 0xb0, 0x93, 0x67, 0xe9, 0xc2, 0x7a, + 0xe3, 0xa5, 0x35, 0x24, 0x79, 0xfb, 0x1f, 0xa0, 0xff, 0xe9, 0x4e, 0xfa, 0x16, 0x5d, 0x86, 0x0b, + 0xd9, 0x21, 0x67, 0xa4, 0x98, 0xa8, 0xa6, 0x9a, 0x82, 0xa6, 0x39, 0xb3, 0x33, 0x14, 0xad, 0x42, + 0x27, 0x1f, 0x07, 0xd7, 0x6c, 0xd5, 0x04, 0x27, 0xfb, 0x52, 0xac, 0x6b, 0xa7, 0xe4, 0x49, 0xac, + 0x8b, 0x10, 0xac, 0x45, 0x54, 0xe5, 0xed, 0x1f, 0x98, 0x35, 0x5a, 0x81, 0x75, 0x33, 0x8c, 0xc7, + 0xb6, 0xad, 0x83, 0x7c, 0x87, 0x96, 0xe1, 0xbc, 0x54, 0x58, 0x11, 0x53, 0x2a, 0x8d, 0xc0, 0x6e, + 0xd0, 0x5b, 0x10, 0x9a, 0x45, 0x18, 0xf1, 0x98, 0x98, 0x16, 0x6c, 0x04, 0x0d, 0x73, 0xb2, 0xc5, + 0x63, 0x82, 0x5c, 0x78, 0xc6, 0xd0, 0xc5, 0xd8, 0x75, 0x4c, 0xac, 0xd8, 0xa2, 0x0b, 0xd0, 0x79, + 0x40, 0x33, 0x4b, 0x6b, 0xd8, 0xd0, 0x03, 0x9a, 0x69, 0xd2, 0xe6, 0xd7, 0xe0, 0xf1, 0x53, 0x6f, + 0xee, 0xc9, 0x53, 0x6f, 0xee, 0xf9, 0x53, 0x0f, 0x3c, 0x9c, 0x78, 0xe0, 0x87, 0x89, 0x07, 0x1e, + 0x4d, 0x3c, 0xf0, 0x78, 0xe2, 0x81, 0x27, 0x13, 0x0f, 0xfc, 0x31, 0xf1, 0xc0, 0x9f, 0x13, 0x6f, + 0xee, 0xf9, 0xc4, 0x03, 0xdf, 0x3c, 0xf3, 0xe6, 0x1e, 0x3f, 0xf3, 0xe6, 0x9e, 0x3c, 0xf3, 0xe6, + 0xee, 0xed, 0x0e, 0x78, 0x76, 0x34, 0xf0, 0x8b, 0xb1, 0xef, 0x0f, 0x65, 0xc7, 0x2c, 0x74, 0xdb, + 0xaf, 0x17, 0x53, 0x6b, 0xbd, 0x08, 0x77, 0xb2, 0xde, 0x80, 0x77, 0xc8, 0xb1, 0x2a, 0x3e, 0xc5, + 0xca, 0x5f, 0x64, 0xbd, 0xba, 0x19, 0xec, 0xd7, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x17, 0x19, + 0xda, 0x27, 0xb0, 0x09, 0x00, 0x00, } func (this *CompanyMeta) Equal(that interface{}) bool { @@ -1423,14 +1203,14 @@ func (this *BillingMeta) Equal(that interface{}) bool { } return true } -func (this *SourcePublic) Equal(that interface{}) bool { +func (this *SignupTypePublic) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SourcePublic) + that1, ok := that.(*SignupTypePublic) if !ok { - that2, ok := that.(SourcePublic) + that2, ok := that.(SignupTypePublic) if ok { that1 = &that2 } else { @@ -1444,14 +1224,14 @@ func (this *SourcePublic) Equal(that interface{}) bool { } return true } -func (this *SourceInternalSre) Equal(that interface{}) bool { +func (this *SignupTypeInternalSre) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SourceInternalSre) + that1, ok := that.(*SignupTypeInternalSre) if !ok { - that2, ok := that.(SourceInternalSre) + that2, ok := that.(SignupTypeInternalSre) if ok { that1 = &that2 } else { @@ -1469,73 +1249,22 @@ func (this *SourceInternalSre) Equal(that interface{}) bool { if this.KcInstanceName != that1.KcInstanceName { return false } - if !this.CrmInfo.Equal(that1.CrmInfo) { - return false - } if !this.CrmDetails.Equal(that1.CrmDetails) { return false } - return true -} -func (this *SourceInternalScaling) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*SourceInternalScaling) - if !ok { - that2, ok := that.(SourceInternalScaling) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - return true -} -func (this *SourceMarketplace) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*SourceMarketplace) - if !ok { - that2, ok := that.(SourceMarketplace) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if that1.MarketplaceChoice == nil { - if this.MarketplaceChoice != nil { - return false - } - } else if this.MarketplaceChoice == nil { - return false - } else if !this.MarketplaceChoice.Equal(that1.MarketplaceChoice) { + if this.IsDemoTenant != that1.IsDemoTenant { return false } return true } -func (this *SourceMarketplace_MarketplaceAws) Equal(that interface{}) bool { +func (this *SignupTypeInternalScaling) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SourceMarketplace_MarketplaceAws) + that1, ok := that.(*SignupTypeInternalScaling) if !ok { - that2, ok := that.(SourceMarketplace_MarketplaceAws) + that2, ok := that.(SignupTypeInternalScaling) if ok { that1 = &that2 } else { @@ -1547,19 +1276,16 @@ func (this *SourceMarketplace_MarketplaceAws) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.MarketplaceAws.Equal(that1.MarketplaceAws) { - return false - } return true } -func (this *MarketplaceAws) Equal(that interface{}) bool { +func (this *SignupTypeMarketplace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*MarketplaceAws) + that1, ok := that.(*SignupTypeMarketplace) if !ok { - that2, ok := that.(MarketplaceAws) + that2, ok := that.(SignupTypeMarketplace) if ok { that1 = &that2 } else { @@ -1576,14 +1302,14 @@ func (this *MarketplaceAws) Equal(that interface{}) bool { } return true } -func (this *SourcePlanTransition) Equal(that interface{}) bool { +func (this *SignupTypePlanTransition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SourcePlanTransition) + that1, ok := that.(*SignupTypePlanTransition) if !ok { - that2, ok := that.(SourcePlanTransition) + that2, ok := that.(SignupTypePlanTransition) if ok { that1 = &that2 } else { @@ -1600,14 +1326,14 @@ func (this *SourcePlanTransition) Equal(that interface{}) bool { } return true } -func (this *SourceMsp) Equal(that interface{}) bool { +func (this *SignupTypeMsp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SourceMsp) + that1, ok := that.(*SignupTypeMsp) if !ok { - that2, ok := that.(SourceMsp) + that2, ok := that.(SignupTypeMsp) if ok { that1 = &that2 } else { @@ -1619,9 +1345,6 @@ func (this *SourceMsp) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.CrmInfo.Equal(that1.CrmInfo) { - return false - } if !this.CrmDetails.Equal(that1.CrmDetails) { return false } @@ -1630,14 +1353,14 @@ func (this *SourceMsp) Equal(that interface{}) bool { } return true } -func (this *SourceInternalSso) Equal(that interface{}) bool { +func (this *SignupTypeInternalSso) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SourceInternalSso) + that1, ok := that.(*SignupTypeInternalSso) if !ok { - that2, ok := that.(SourceInternalSso) + that2, ok := that.(SignupTypeInternalSso) if ok { that1 = &that2 } else { @@ -1699,50 +1422,6 @@ func (this *ContactMeta) Equal(that interface{}) bool { } return true } -func (this *CrmInfoV2) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CrmInfoV2) - if !ok { - that2, ok := that.(CrmInfoV2) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.AccountId != that1.AccountId { - return false - } - if this.EntitlementId != that1.EntitlementId { - return false - } - if this.SubscriptionId != that1.SubscriptionId { - return false - } - if this.OrderType != that1.OrderType { - return false - } - if len(this.EntitledSkus) != len(that1.EntitledSkus) { - return false - } - for i := range this.EntitledSkus { - if this.EntitledSkus[i] != that1.EntitledSkus[i] { - return false - } - } - if this.CustomerIdentifier != that1.CustomerIdentifier { - return false - } - return true -} func (this *CompanyMeta) GoString() string { if this == nil { return "nil" @@ -1815,92 +1494,67 @@ func (this *BillingMeta) goString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *SourcePublic) GoString() string { +func (this *SignupTypePublic) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 4) - s = append(s, "&signup.SourcePublic{") + s = append(s, "&signup.SignupTypePublic{") s = append(s, "}") return strings.Join(s, "") } -func (this *SourceInternalSre) GoString() string { +func (this *SignupTypeInternalSre) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 8) - s = append(s, "&signup.SourceInternalSre{") + s = append(s, "&signup.SignupTypeInternalSre{") s = append(s, "F5XcInstanceName: "+fmt.Sprintf("%#v", this.F5XcInstanceName)+",\n") s = append(s, "KcInstanceName: "+fmt.Sprintf("%#v", this.KcInstanceName)+",\n") - if this.CrmInfo != nil { - s = append(s, "CrmInfo: "+fmt.Sprintf("%#v", this.CrmInfo)+",\n") - } if this.CrmDetails != nil { s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") } + s = append(s, "IsDemoTenant: "+fmt.Sprintf("%#v", this.IsDemoTenant)+",\n") s = append(s, "}") return strings.Join(s, "") } -func (this *SourceInternalScaling) GoString() string { +func (this *SignupTypeInternalScaling) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 4) - s = append(s, "&signup.SourceInternalScaling{") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *SourceMarketplace) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&signup.SourceMarketplace{") - if this.MarketplaceChoice != nil { - s = append(s, "MarketplaceChoice: "+fmt.Sprintf("%#v", this.MarketplaceChoice)+",\n") - } + s = append(s, "&signup.SignupTypeInternalScaling{") s = append(s, "}") return strings.Join(s, "") } -func (this *SourceMarketplace_MarketplaceAws) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&signup.SourceMarketplace_MarketplaceAws{` + - `MarketplaceAws:` + fmt.Sprintf("%#v", this.MarketplaceAws) + `}`}, ", ") - return s -} -func (this *MarketplaceAws) GoString() string { +func (this *SignupTypeMarketplace) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 5) - s = append(s, "&signup.MarketplaceAws{") + s = append(s, "&signup.SignupTypeMarketplace{") if this.CrmDetails != nil { s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") } s = append(s, "}") return strings.Join(s, "") } -func (this *SourcePlanTransition) GoString() string { +func (this *SignupTypePlanTransition) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 5) - s = append(s, "&signup.SourcePlanTransition{") + s = append(s, "&signup.SignupTypePlanTransition{") s = append(s, "IsSsoEnabled: "+fmt.Sprintf("%#v", this.IsSsoEnabled)+",\n") s = append(s, "}") return strings.Join(s, "") } -func (this *SourceMsp) GoString() string { +func (this *SignupTypeMsp) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 7) - s = append(s, "&signup.SourceMsp{") - if this.CrmInfo != nil { - s = append(s, "CrmInfo: "+fmt.Sprintf("%#v", this.CrmInfo)+",\n") - } + s := make([]string, 0, 6) + s = append(s, "&signup.SignupTypeMsp{") if this.CrmDetails != nil { s = append(s, "CrmDetails: "+fmt.Sprintf("%#v", this.CrmDetails)+",\n") } @@ -1908,12 +1562,12 @@ func (this *SourceMsp) GoString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *SourceInternalSso) GoString() string { +func (this *SignupTypeInternalSso) GoString() string { if this == nil { return "nil" } s := make([]string, 0, 4) - s = append(s, "&signup.SourceInternalSso{") + s = append(s, "&signup.SignupTypeInternalSso{") s = append(s, "}") return strings.Join(s, "") } @@ -1935,21 +1589,6 @@ func (this *ContactMeta) GoString() string { s = append(s, "}") return strings.Join(s, "") } -func (this *CrmInfoV2) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&signup.CrmInfoV2{") - s = append(s, "AccountId: "+fmt.Sprintf("%#v", this.AccountId)+",\n") - s = append(s, "EntitlementId: "+fmt.Sprintf("%#v", this.EntitlementId)+",\n") - s = append(s, "SubscriptionId: "+fmt.Sprintf("%#v", this.SubscriptionId)+",\n") - s = append(s, "OrderType: "+fmt.Sprintf("%#v", this.OrderType)+",\n") - s = append(s, "EntitledSkus: "+fmt.Sprintf("%#v", this.EntitledSkus)+",\n") - s = append(s, "CustomerIdentifier: "+fmt.Sprintf("%#v", this.CustomerIdentifier)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} func valueToGoStringTypesV2(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -2224,7 +1863,7 @@ func (m *BillingMeta) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *SourcePublic) Marshal() (dAtA []byte, err error) { +func (m *SignupTypePublic) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2234,12 +1873,12 @@ func (m *SourcePublic) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *SourcePublic) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypePublic) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SourcePublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypePublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2247,7 +1886,7 @@ func (m *SourcePublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *SourceInternalSre) Marshal() (dAtA []byte, err error) { +func (m *SignupTypeInternalSre) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2257,31 +1896,29 @@ func (m *SourceInternalSre) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *SourceInternalSre) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypeInternalSre) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypeInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.CrmDetails != nil { - { - size, err := m.CrmDetails.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypesV2(dAtA, i, uint64(size)) + if m.IsDemoTenant { + i-- + if m.IsDemoTenant { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x30 } - if m.CrmInfo != nil { + if m.CrmDetails != nil { { - size, err := m.CrmInfo.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CrmDetails.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -2289,7 +1926,7 @@ func (m *SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypesV2(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x22 } if len(m.KcInstanceName) > 0 { i -= len(m.KcInstanceName) @@ -2308,7 +1945,7 @@ func (m *SourceInternalSre) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *SourceInternalScaling) Marshal() (dAtA []byte, err error) { +func (m *SignupTypeInternalScaling) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2318,12 +1955,12 @@ func (m *SourceInternalScaling) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *SourceInternalScaling) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypeInternalScaling) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SourceInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypeInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2331,7 +1968,7 @@ func (m *SourceInternalScaling) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *SourceMarketplace) Marshal() (dAtA []byte, err error) { +func (m *SignupTypeMarketplace) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2341,38 +1978,19 @@ func (m *SourceMarketplace) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *SourceMarketplace) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypeMarketplace) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SourceMarketplace) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypeMarketplace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.MarketplaceChoice != nil { - { - size := m.MarketplaceChoice.Size() - i -= size - if _, err := m.MarketplaceChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - return len(dAtA) - i, nil -} - -func (m *SourceMarketplace_MarketplaceAws) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SourceMarketplace_MarketplaceAws) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MarketplaceAws != nil { + if m.CrmDetails != nil { { - size, err := m.MarketplaceAws.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CrmDetails.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -2380,11 +1998,12 @@ func (m *SourceMarketplace_MarketplaceAws) MarshalToSizedBuffer(dAtA []byte) (in i = encodeVarintTypesV2(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *MarketplaceAws) Marshal() (dAtA []byte, err error) { + +func (m *SignupTypePlanTransition) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2394,47 +2013,12 @@ func (m *MarketplaceAws) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MarketplaceAws) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypePlanTransition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MarketplaceAws) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.CrmDetails != nil { - { - size, err := m.CrmDetails.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypesV2(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - return len(dAtA) - i, nil -} - -func (m *SourcePlanTransition) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *SourcePlanTransition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SourcePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2452,7 +2036,7 @@ func (m *SourcePlanTransition) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *SourceMsp) Marshal() (dAtA []byte, err error) { +func (m *SignupTypeMsp) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2462,12 +2046,12 @@ func (m *SourceMsp) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *SourceMsp) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypeMsp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SourceMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypeMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2491,22 +2075,10 @@ func (m *SourceMsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x12 } - if m.CrmInfo != nil { - { - size, err := m.CrmInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypesV2(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *SourceInternalSso) Marshal() (dAtA []byte, err error) { +func (m *SignupTypeInternalSso) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2516,12 +2088,12 @@ func (m *SourceInternalSso) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *SourceInternalSso) MarshalTo(dAtA []byte) (int, error) { +func (m *SignupTypeInternalSso) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SourceInternalSso) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SignupTypeInternalSso) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2615,73 +2187,6 @@ func (m *ContactMeta) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *CrmInfoV2) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CrmInfoV2) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CrmInfoV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CustomerIdentifier) > 0 { - i -= len(m.CustomerIdentifier) - copy(dAtA[i:], m.CustomerIdentifier) - i = encodeVarintTypesV2(dAtA, i, uint64(len(m.CustomerIdentifier))) - i-- - dAtA[i] = 0x3a - } - if len(m.EntitledSkus) > 0 { - for iNdEx := len(m.EntitledSkus) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.EntitledSkus[iNdEx]) - copy(dAtA[i:], m.EntitledSkus[iNdEx]) - i = encodeVarintTypesV2(dAtA, i, uint64(len(m.EntitledSkus[iNdEx]))) - i-- - dAtA[i] = 0x32 - } - } - if len(m.OrderType) > 0 { - i -= len(m.OrderType) - copy(dAtA[i:], m.OrderType) - i = encodeVarintTypesV2(dAtA, i, uint64(len(m.OrderType))) - i-- - dAtA[i] = 0x2a - } - if len(m.SubscriptionId) > 0 { - i -= len(m.SubscriptionId) - copy(dAtA[i:], m.SubscriptionId) - i = encodeVarintTypesV2(dAtA, i, uint64(len(m.SubscriptionId))) - i-- - dAtA[i] = 0x1a - } - if len(m.EntitlementId) > 0 { - i -= len(m.EntitlementId) - copy(dAtA[i:], m.EntitlementId) - i = encodeVarintTypesV2(dAtA, i, uint64(len(m.EntitlementId))) - i-- - dAtA[i] = 0x12 - } - if len(m.AccountId) > 0 { - i -= len(m.AccountId) - copy(dAtA[i:], m.AccountId) - i = encodeVarintTypesV2(dAtA, i, uint64(len(m.AccountId))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func encodeVarintTypesV2(dAtA []byte, offset int, v uint64) int { offset -= sovTypesV2(v) base := offset @@ -2813,7 +2318,7 @@ func (m *BillingMeta) Size() (n int) { return n } -func (m *SourcePublic) Size() (n int) { +func (m *SignupTypePublic) Size() (n int) { if m == nil { return 0 } @@ -2822,7 +2327,7 @@ func (m *SourcePublic) Size() (n int) { return n } -func (m *SourceInternalSre) Size() (n int) { +func (m *SignupTypeInternalSre) Size() (n int) { if m == nil { return 0 } @@ -2836,51 +2341,26 @@ func (m *SourceInternalSre) Size() (n int) { if l > 0 { n += 1 + l + sovTypesV2(uint64(l)) } - if m.CrmInfo != nil { - l = m.CrmInfo.Size() - n += 1 + l + sovTypesV2(uint64(l)) - } if m.CrmDetails != nil { l = m.CrmDetails.Size() n += 1 + l + sovTypesV2(uint64(l)) } - return n -} - -func (m *SourceInternalScaling) Size() (n int) { - if m == nil { - return 0 + if m.IsDemoTenant { + n += 2 } - var l int - _ = l return n } -func (m *SourceMarketplace) Size() (n int) { +func (m *SignupTypeInternalScaling) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.MarketplaceChoice != nil { - n += m.MarketplaceChoice.Size() - } return n } -func (m *SourceMarketplace_MarketplaceAws) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MarketplaceAws != nil { - l = m.MarketplaceAws.Size() - n += 1 + l + sovTypesV2(uint64(l)) - } - return n -} -func (m *MarketplaceAws) Size() (n int) { +func (m *SignupTypeMarketplace) Size() (n int) { if m == nil { return 0 } @@ -2893,7 +2373,7 @@ func (m *MarketplaceAws) Size() (n int) { return n } -func (m *SourcePlanTransition) Size() (n int) { +func (m *SignupTypePlanTransition) Size() (n int) { if m == nil { return 0 } @@ -2905,16 +2385,12 @@ func (m *SourcePlanTransition) Size() (n int) { return n } -func (m *SourceMsp) Size() (n int) { +func (m *SignupTypeMsp) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.CrmInfo != nil { - l = m.CrmInfo.Size() - n += 1 + l + sovTypesV2(uint64(l)) - } if m.CrmDetails != nil { l = m.CrmDetails.Size() n += 1 + l + sovTypesV2(uint64(l)) @@ -2926,7 +2402,7 @@ func (m *SourceMsp) Size() (n int) { return n } -func (m *SourceInternalSso) Size() (n int) { +func (m *SignupTypeInternalSso) Size() (n int) { if m == nil { return 0 } @@ -2980,41 +2456,6 @@ func (m *ContactMeta) Size() (n int) { return n } -func (m *CrmInfoV2) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AccountId) - if l > 0 { - n += 1 + l + sovTypesV2(uint64(l)) - } - l = len(m.EntitlementId) - if l > 0 { - n += 1 + l + sovTypesV2(uint64(l)) - } - l = len(m.SubscriptionId) - if l > 0 { - n += 1 + l + sovTypesV2(uint64(l)) - } - l = len(m.OrderType) - if l > 0 { - n += 1 + l + sovTypesV2(uint64(l)) - } - if len(m.EntitledSkus) > 0 { - for _, s := range m.EntitledSkus { - l = len(s) - n += 1 + l + sovTypesV2(uint64(l)) - } - } - l = len(m.CustomerIdentifier) - if l > 0 { - n += 1 + l + sovTypesV2(uint64(l)) - } - return n -} - func sovTypesV2(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -3085,94 +2526,73 @@ func (this *BillingMeta) string() string { }, "") return s } -func (this *SourcePublic) String() string { +func (this *SignupTypePublic) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&SourcePublic{`, + s := strings.Join([]string{`&SignupTypePublic{`, `}`, }, "") return s } -func (this *SourceInternalSre) String() string { +func (this *SignupTypeInternalSre) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&SourceInternalSre{`, + s := strings.Join([]string{`&SignupTypeInternalSre{`, `F5XcInstanceName:` + fmt.Sprintf("%v", this.F5XcInstanceName) + `,`, `KcInstanceName:` + fmt.Sprintf("%v", this.KcInstanceName) + `,`, - `CrmInfo:` + strings.Replace(this.CrmInfo.String(), "CrmInfoV2", "CrmInfoV2", 1) + `,`, `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, + `IsDemoTenant:` + fmt.Sprintf("%v", this.IsDemoTenant) + `,`, `}`, }, "") return s } -func (this *SourceInternalScaling) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SourceInternalScaling{`, - `}`, - }, "") - return s -} -func (this *SourceMarketplace) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SourceMarketplace{`, - `MarketplaceChoice:` + fmt.Sprintf("%v", this.MarketplaceChoice) + `,`, - `}`, - }, "") - return s -} -func (this *SourceMarketplace_MarketplaceAws) String() string { +func (this *SignupTypeInternalScaling) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&SourceMarketplace_MarketplaceAws{`, - `MarketplaceAws:` + strings.Replace(fmt.Sprintf("%v", this.MarketplaceAws), "MarketplaceAws", "MarketplaceAws", 1) + `,`, + s := strings.Join([]string{`&SignupTypeInternalScaling{`, `}`, }, "") return s } -func (this *MarketplaceAws) String() string { +func (this *SignupTypeMarketplace) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&MarketplaceAws{`, + s := strings.Join([]string{`&SignupTypeMarketplace{`, `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, `}`, }, "") return s } -func (this *SourcePlanTransition) String() string { +func (this *SignupTypePlanTransition) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&SourcePlanTransition{`, + s := strings.Join([]string{`&SignupTypePlanTransition{`, `IsSsoEnabled:` + fmt.Sprintf("%v", this.IsSsoEnabled) + `,`, `}`, }, "") return s } -func (this *SourceMsp) String() string { +func (this *SignupTypeMsp) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&SourceMsp{`, - `CrmInfo:` + strings.Replace(this.CrmInfo.String(), "CrmInfoV2", "CrmInfoV2", 1) + `,`, + s := strings.Join([]string{`&SignupTypeMsp{`, `CrmDetails:` + strings.Replace(fmt.Sprintf("%v", this.CrmDetails), "CRMInfo", "schema.CRMInfo", 1) + `,`, `ChildTenantObjName:` + fmt.Sprintf("%v", this.ChildTenantObjName) + `,`, `}`, }, "") return s } -func (this *SourceInternalSso) String() string { +func (this *SignupTypeInternalSso) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&SourceInternalSso{`, + s := strings.Join([]string{`&SignupTypeInternalSso{`, `}`, }, "") return s @@ -3195,21 +2615,6 @@ func (this *ContactMeta) String() string { }, "") return s } -func (this *CrmInfoV2) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CrmInfoV2{`, - `AccountId:` + fmt.Sprintf("%v", this.AccountId) + `,`, - `EntitlementId:` + fmt.Sprintf("%v", this.EntitlementId) + `,`, - `SubscriptionId:` + fmt.Sprintf("%v", this.SubscriptionId) + `,`, - `OrderType:` + fmt.Sprintf("%v", this.OrderType) + `,`, - `EntitledSkus:` + fmt.Sprintf("%v", this.EntitledSkus) + `,`, - `CustomerIdentifier:` + fmt.Sprintf("%v", this.CustomerIdentifier) + `,`, - `}`, - }, "") - return s -} func valueToStringTypesV2(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -4094,7 +3499,7 @@ func (m *BillingMeta) Unmarshal(dAtA []byte) error { } return nil } -func (m *SourcePublic) Unmarshal(dAtA []byte) error { +func (m *SignupTypePublic) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4117,10 +3522,10 @@ func (m *SourcePublic) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SourcePublic: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypePublic: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SourcePublic: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypePublic: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -4147,7 +3552,7 @@ func (m *SourcePublic) Unmarshal(dAtA []byte) error { } return nil } -func (m *SourceInternalSre) Unmarshal(dAtA []byte) error { +func (m *SignupTypeInternalSre) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4170,10 +3575,10 @@ func (m *SourceInternalSre) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SourceInternalSre: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypeInternalSre: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SourceInternalSre: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypeInternalSre: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -4240,9 +3645,9 @@ func (m *SourceInternalSre) Unmarshal(dAtA []byte) error { } m.KcInstanceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -4269,18 +3674,18 @@ func (m *SourceInternalSre) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CrmInfo == nil { - m.CrmInfo = &CrmInfoV2{} + if m.CrmDetails == nil { + m.CrmDetails = &schema.CRMInfo{} } - if err := m.CrmInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.CrmDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsDemoTenant", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypesV2 @@ -4290,28 +3695,12 @@ func (m *SourceInternalSre) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CrmDetails == nil { - m.CrmDetails = &schema.CRMInfo{} - } - if err := m.CrmDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex + m.IsDemoTenant = bool(v != 0) default: iNdEx = preIndex skippy, err := skipTypesV2(dAtA[iNdEx:]) @@ -4336,7 +3725,7 @@ func (m *SourceInternalSre) Unmarshal(dAtA []byte) error { } return nil } -func (m *SourceInternalScaling) Unmarshal(dAtA []byte) error { +func (m *SignupTypeInternalScaling) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4359,10 +3748,10 @@ func (m *SourceInternalScaling) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SourceInternalScaling: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypeInternalScaling: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SourceInternalScaling: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypeInternalScaling: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -4389,7 +3778,7 @@ func (m *SourceInternalScaling) Unmarshal(dAtA []byte) error { } return nil } -func (m *SourceMarketplace) Unmarshal(dAtA []byte) error { +func (m *SignupTypeMarketplace) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4412,15 +3801,15 @@ func (m *SourceMarketplace) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SourceMarketplace: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypeMarketplace: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SourceMarketplace: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypeMarketplace: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MarketplaceAws", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -4447,11 +3836,12 @@ func (m *SourceMarketplace) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &MarketplaceAws{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.CrmDetails == nil { + m.CrmDetails = &schema.CRMInfo{} + } + if err := m.CrmDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MarketplaceChoice = &SourceMarketplace_MarketplaceAws{v} iNdEx = postIndex default: iNdEx = preIndex @@ -4477,7 +3867,7 @@ func (m *SourceMarketplace) Unmarshal(dAtA []byte) error { } return nil } -func (m *MarketplaceAws) Unmarshal(dAtA []byte) error { +func (m *SignupTypePlanTransition) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4500,17 +3890,17 @@ func (m *MarketplaceAws) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MarketplaceAws: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypePlanTransition: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MarketplaceAws: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypePlanTransition: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsSsoEnabled", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypesV2 @@ -4520,28 +3910,12 @@ func (m *MarketplaceAws) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CrmDetails == nil { - m.CrmDetails = &schema.CRMInfo{} - } - if err := m.CrmDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex + m.IsSsoEnabled = bool(v != 0) default: iNdEx = preIndex skippy, err := skipTypesV2(dAtA[iNdEx:]) @@ -4566,7 +3940,7 @@ func (m *MarketplaceAws) Unmarshal(dAtA []byte) error { } return nil } -func (m *SourcePlanTransition) Unmarshal(dAtA []byte) error { +func (m *SignupTypeMsp) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4589,17 +3963,17 @@ func (m *SourcePlanTransition) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SourcePlanTransition: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypeMsp: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SourcePlanTransition: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypeMsp: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsSsoEnabled", wireType) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypesV2 @@ -4609,132 +3983,23 @@ func (m *SourcePlanTransition) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.IsSsoEnabled = bool(v != 0) - default: - iNdEx = preIndex - skippy, err := skipTypesV2(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { + if msglen < 0 { return ErrInvalidLengthTypesV2 } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypesV2 } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SourceMsp) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SourceMsp: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SourceMsp: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CrmInfo == nil { - m.CrmInfo = &CrmInfoV2{} - } - if err := m.CrmInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CrmDetails", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CrmDetails == nil { - m.CrmDetails = &schema.CRMInfo{} + if m.CrmDetails == nil { + m.CrmDetails = &schema.CRMInfo{} } if err := m.CrmDetails.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -4796,7 +4061,7 @@ func (m *SourceMsp) Unmarshal(dAtA []byte) error { } return nil } -func (m *SourceInternalSso) Unmarshal(dAtA []byte) error { +func (m *SignupTypeInternalSso) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4819,10 +4084,10 @@ func (m *SourceInternalSso) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SourceInternalSso: wiretype end group for non-group") + return fmt.Errorf("proto: SignupTypeInternalSso: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SourceInternalSso: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SignupTypeInternalSso: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -5190,251 +4455,6 @@ func (m *ContactMeta) Unmarshal(dAtA []byte) error { } return nil } -func (m *CrmInfoV2) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CrmInfoV2: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CrmInfoV2: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccountId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AccountId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntitlementId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EntitlementId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubscriptionId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SubscriptionId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrderType", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.OrderType = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntitledSkus", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EntitledSkus = append(m.EntitledSkus, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomerIdentifier", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypesV2 - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypesV2 - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypesV2 - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.CustomerIdentifier = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypesV2(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypesV2 - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypesV2 - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func skipTypesV2(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/pbgo/extschema/schema/signup/types_v2.vesmsg.go b/pbgo/extschema/schema/signup/types_v2.vesmsg.go index 47e98614a..f9358e803 100644 --- a/pbgo/extschema/schema/signup/types_v2.vesmsg.go +++ b/pbgo/extschema/schema/signup/types_v2.vesmsg.go @@ -741,295 +741,6 @@ func ContactMetaValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *CrmInfoV2) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CrmInfoV2) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CrmInfoV2) DeepCopy() *CrmInfoV2 { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CrmInfoV2{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CrmInfoV2) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CrmInfoV2) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CrmInfoV2Validator().Validate(ctx, m, opts...) -} - -type ValidateCrmInfoV2 struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCrmInfoV2) AccountIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for account_id") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfoV2) EntitlementIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for entitlement_id") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfoV2) SubscriptionIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for subscription_id") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfoV2) OrderTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for order_type") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfoV2) EntitledSkusValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for entitled_skus") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for entitled_skus") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated entitled_skus") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items entitled_skus") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfoV2) CustomerIdentifierValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for customer_identifier") - } - - return validatorFn, nil -} - -func (v *ValidateCrmInfoV2) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CrmInfoV2) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CrmInfoV2 got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["account_id"]; exists { - - vOpts := append(opts, db.WithValidateField("account_id")) - if err := fv(ctx, m.GetAccountId(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["customer_identifier"]; exists { - - vOpts := append(opts, db.WithValidateField("customer_identifier")) - if err := fv(ctx, m.GetCustomerIdentifier(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["entitled_skus"]; exists { - vOpts := append(opts, db.WithValidateField("entitled_skus")) - if err := fv(ctx, m.GetEntitledSkus(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["entitlement_id"]; exists { - - vOpts := append(opts, db.WithValidateField("entitlement_id")) - if err := fv(ctx, m.GetEntitlementId(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["order_type"]; exists { - - vOpts := append(opts, db.WithValidateField("order_type")) - if err := fv(ctx, m.GetOrderType(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["subscription_id"]; exists { - - vOpts := append(opts, db.WithValidateField("subscription_id")) - if err := fv(ctx, m.GetSubscriptionId(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCrmInfoV2Validator = func() *ValidateCrmInfoV2 { - v := &ValidateCrmInfoV2{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhAccountId := v.AccountIdValidationRuleHandler - rulesAccountId := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhAccountId(rulesAccountId) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfoV2.account_id: %s", err) - panic(errMsg) - } - v.FldValidators["account_id"] = vFn - - vrhEntitlementId := v.EntitlementIdValidationRuleHandler - rulesEntitlementId := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhEntitlementId(rulesEntitlementId) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfoV2.entitlement_id: %s", err) - panic(errMsg) - } - v.FldValidators["entitlement_id"] = vFn - - vrhSubscriptionId := v.SubscriptionIdValidationRuleHandler - rulesSubscriptionId := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhSubscriptionId(rulesSubscriptionId) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfoV2.subscription_id: %s", err) - panic(errMsg) - } - v.FldValidators["subscription_id"] = vFn - - vrhOrderType := v.OrderTypeValidationRuleHandler - rulesOrderType := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFn, err = vrhOrderType(rulesOrderType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfoV2.order_type: %s", err) - panic(errMsg) - } - v.FldValidators["order_type"] = vFn - - vrhEntitledSkus := v.EntitledSkusValidationRuleHandler - rulesEntitledSkus := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.max_items": "64", - } - vFn, err = vrhEntitledSkus(rulesEntitledSkus) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfoV2.entitled_skus: %s", err) - panic(errMsg) - } - v.FldValidators["entitled_skus"] = vFn - - vrhCustomerIdentifier := v.CustomerIdentifierValidationRuleHandler - rulesCustomerIdentifier := map[string]string{ - "ves.io.schema.rules.string.max_len": "255", - } - vFn, err = vrhCustomerIdentifier(rulesCustomerIdentifier) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CrmInfoV2.customer_identifier: %s", err) - panic(errMsg) - } - v.FldValidators["customer_identifier"] = vFn - - return v -}() - -func CrmInfoV2Validator() db.Validator { - return DefaultCrmInfoV2Validator -} - -// augmented methods on protoc/std generated struct - func (m *InternalMeta) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -1197,15 +908,15 @@ func InternalMetaValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *MarketplaceAws) ToJSON() (string, error) { +func (m *SignupTypeInternalScaling) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *MarketplaceAws) ToYAML() (string, error) { +func (m *SignupTypeInternalScaling) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *MarketplaceAws) DeepCopy() *MarketplaceAws { +func (m *SignupTypeInternalScaling) DeepCopy() *SignupTypeInternalScaling { if m == nil { return nil } @@ -1213,7 +924,7 @@ func (m *MarketplaceAws) DeepCopy() *MarketplaceAws { if err != nil { return nil } - c := &MarketplaceAws{} + c := &SignupTypeInternalScaling{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1221,109 +932,60 @@ func (m *MarketplaceAws) DeepCopy() *MarketplaceAws { return c } -func (m *MarketplaceAws) DeepCopyProto() proto.Message { +func (m *SignupTypeInternalScaling) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *MarketplaceAws) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return MarketplaceAwsValidator().Validate(ctx, m, opts...) +func (m *SignupTypeInternalScaling) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypeInternalScalingValidator().Validate(ctx, m, opts...) } -type ValidateMarketplaceAws struct { +type ValidateSignupTypeInternalScaling struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateMarketplaceAws) CrmDetailsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for crm_details") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.CRMInfoValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateMarketplaceAws) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*MarketplaceAws) +func (v *ValidateSignupTypeInternalScaling) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypeInternalScaling) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *MarketplaceAws got type %s", t) + return fmt.Errorf("Expected type *SignupTypeInternalScaling got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["crm_details"]; exists { - - vOpts := append(opts, db.WithValidateField("crm_details")) - if err := fv(ctx, m.GetCrmDetails(), vOpts...); err != nil { - return err - } - - } - return nil } // Well-known symbol for default validator implementation -var DefaultMarketplaceAwsValidator = func() *ValidateMarketplaceAws { - v := &ValidateMarketplaceAws{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhCrmDetails := v.CrmDetailsValidationRuleHandler - rulesCrmDetails := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhCrmDetails(rulesCrmDetails) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for MarketplaceAws.crm_details: %s", err) - panic(errMsg) - } - v.FldValidators["crm_details"] = vFn +var DefaultSignupTypeInternalScalingValidator = func() *ValidateSignupTypeInternalScaling { + v := &ValidateSignupTypeInternalScaling{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func MarketplaceAwsValidator() db.Validator { - return DefaultMarketplaceAwsValidator +func SignupTypeInternalScalingValidator() db.Validator { + return DefaultSignupTypeInternalScalingValidator } // augmented methods on protoc/std generated struct -func (m *SourceInternalScaling) ToJSON() (string, error) { +func (m *SignupTypeInternalSre) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SourceInternalScaling) ToYAML() (string, error) { +func (m *SignupTypeInternalSre) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SourceInternalScaling) DeepCopy() *SourceInternalScaling { +func (m *SignupTypeInternalSre) DeepCopy() *SignupTypeInternalSre { if m == nil { return nil } @@ -1331,7 +993,7 @@ func (m *SourceInternalScaling) DeepCopy() *SourceInternalScaling { if err != nil { return nil } - c := &SourceInternalScaling{} + c := &SignupTypeInternalSre{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1339,91 +1001,22 @@ func (m *SourceInternalScaling) DeepCopy() *SourceInternalScaling { return c } -func (m *SourceInternalScaling) DeepCopyProto() proto.Message { +func (m *SignupTypeInternalSre) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SourceInternalScaling) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourceInternalScalingValidator().Validate(ctx, m, opts...) +func (m *SignupTypeInternalSre) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypeInternalSreValidator().Validate(ctx, m, opts...) } -type ValidateSourceInternalScaling struct { +type ValidateSignupTypeInternalSre struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSourceInternalScaling) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourceInternalScaling) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *SourceInternalScaling got type %s", t) - } - } - if m == nil { - return nil - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultSourceInternalScalingValidator = func() *ValidateSourceInternalScaling { - v := &ValidateSourceInternalScaling{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func SourceInternalScalingValidator() db.Validator { - return DefaultSourceInternalScalingValidator -} - -// augmented methods on protoc/std generated struct - -func (m *SourceInternalSre) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *SourceInternalSre) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *SourceInternalSre) DeepCopy() *SourceInternalSre { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &SourceInternalSre{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *SourceInternalSre) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *SourceInternalSre) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourceInternalSreValidator().Validate(ctx, m, opts...) -} - -type ValidateSourceInternalSre struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateSourceInternalSre) F5XcInstanceNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateSignupTypeInternalSre) F5XcInstanceNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) if err != nil { @@ -1433,7 +1026,7 @@ func (v *ValidateSourceInternalSre) F5XcInstanceNameValidationRuleHandler(rules return validatorFn, nil } -func (v *ValidateSourceInternalSre) KcInstanceNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateSignupTypeInternalSre) KcInstanceNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) if err != nil { @@ -1443,14 +1036,14 @@ func (v *ValidateSourceInternalSre) KcInstanceNameValidationRuleHandler(rules ma return validatorFn, nil } -func (v *ValidateSourceInternalSre) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourceInternalSre) +func (v *ValidateSignupTypeInternalSre) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypeInternalSre) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SourceInternalSre got type %s", t) + return fmt.Errorf("Expected type *SignupTypeInternalSre got type %s", t) } } if m == nil { @@ -1466,19 +1059,19 @@ func (v *ValidateSourceInternalSre) Validate(ctx context.Context, pm interface{} } - if fv, exists := v.FldValidators["crm_info"]; exists { + if fv, exists := v.FldValidators["f5xc_instance_name"]; exists { - vOpts := append(opts, db.WithValidateField("crm_info")) - if err := fv(ctx, m.GetCrmInfo(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("f5xc_instance_name")) + if err := fv(ctx, m.GetF5XcInstanceName(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["f5xc_instance_name"]; exists { + if fv, exists := v.FldValidators["is_demo_tenant"]; exists { - vOpts := append(opts, db.WithValidateField("f5xc_instance_name")) - if err := fv(ctx, m.GetF5XcInstanceName(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("is_demo_tenant")) + if err := fv(ctx, m.GetIsDemoTenant(), vOpts...); err != nil { return err } @@ -1497,8 +1090,8 @@ func (v *ValidateSourceInternalSre) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultSourceInternalSreValidator = func() *ValidateSourceInternalSre { - v := &ValidateSourceInternalSre{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSignupTypeInternalSreValidator = func() *ValidateSignupTypeInternalSre { + v := &ValidateSignupTypeInternalSre{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -1514,7 +1107,7 @@ var DefaultSourceInternalSreValidator = func() *ValidateSourceInternalSre { } vFn, err = vrhF5XcInstanceName(rulesF5XcInstanceName) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SourceInternalSre.f5xc_instance_name: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupTypeInternalSre.f5xc_instance_name: %s", err) panic(errMsg) } v.FldValidators["f5xc_instance_name"] = vFn @@ -1525,33 +1118,31 @@ var DefaultSourceInternalSreValidator = func() *ValidateSourceInternalSre { } vFn, err = vrhKcInstanceName(rulesKcInstanceName) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SourceInternalSre.kc_instance_name: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupTypeInternalSre.kc_instance_name: %s", err) panic(errMsg) } v.FldValidators["kc_instance_name"] = vFn - v.FldValidators["crm_info"] = CrmInfoV2Validator().Validate - v.FldValidators["crm_details"] = ves_io_schema.CRMInfoValidator().Validate return v }() -func SourceInternalSreValidator() db.Validator { - return DefaultSourceInternalSreValidator +func SignupTypeInternalSreValidator() db.Validator { + return DefaultSignupTypeInternalSreValidator } // augmented methods on protoc/std generated struct -func (m *SourceInternalSso) ToJSON() (string, error) { +func (m *SignupTypeInternalSso) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SourceInternalSso) ToYAML() (string, error) { +func (m *SignupTypeInternalSso) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SourceInternalSso) DeepCopy() *SourceInternalSso { +func (m *SignupTypeInternalSso) DeepCopy() *SignupTypeInternalSso { if m == nil { return nil } @@ -1559,7 +1150,7 @@ func (m *SourceInternalSso) DeepCopy() *SourceInternalSso { if err != nil { return nil } - c := &SourceInternalSso{} + c := &SignupTypeInternalSso{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1567,29 +1158,29 @@ func (m *SourceInternalSso) DeepCopy() *SourceInternalSso { return c } -func (m *SourceInternalSso) DeepCopyProto() proto.Message { +func (m *SignupTypeInternalSso) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SourceInternalSso) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourceInternalSsoValidator().Validate(ctx, m, opts...) +func (m *SignupTypeInternalSso) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypeInternalSsoValidator().Validate(ctx, m, opts...) } -type ValidateSourceInternalSso struct { +type ValidateSignupTypeInternalSso struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSourceInternalSso) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourceInternalSso) +func (v *ValidateSignupTypeInternalSso) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypeInternalSso) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SourceInternalSso got type %s", t) + return fmt.Errorf("Expected type *SignupTypeInternalSso got type %s", t) } } if m == nil { @@ -1600,27 +1191,27 @@ func (v *ValidateSourceInternalSso) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultSourceInternalSsoValidator = func() *ValidateSourceInternalSso { - v := &ValidateSourceInternalSso{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSignupTypeInternalSsoValidator = func() *ValidateSignupTypeInternalSso { + v := &ValidateSignupTypeInternalSso{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func SourceInternalSsoValidator() db.Validator { - return DefaultSourceInternalSsoValidator +func SignupTypeInternalSsoValidator() db.Validator { + return DefaultSignupTypeInternalSsoValidator } // augmented methods on protoc/std generated struct -func (m *SourceMarketplace) ToJSON() (string, error) { +func (m *SignupTypeMarketplace) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SourceMarketplace) ToYAML() (string, error) { +func (m *SignupTypeMarketplace) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SourceMarketplace) DeepCopy() *SourceMarketplace { +func (m *SignupTypeMarketplace) DeepCopy() *SignupTypeMarketplace { if m == nil { return nil } @@ -1628,7 +1219,7 @@ func (m *SourceMarketplace) DeepCopy() *SourceMarketplace { if err != nil { return nil } - c := &SourceMarketplace{} + c := &SignupTypeMarketplace{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1636,46 +1227,61 @@ func (m *SourceMarketplace) DeepCopy() *SourceMarketplace { return c } -func (m *SourceMarketplace) DeepCopyProto() proto.Message { +func (m *SignupTypeMarketplace) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SourceMarketplace) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourceMarketplaceValidator().Validate(ctx, m, opts...) +func (m *SignupTypeMarketplace) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypeMarketplaceValidator().Validate(ctx, m, opts...) } -type ValidateSourceMarketplace struct { +type ValidateSignupTypeMarketplace struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSourceMarketplace) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourceMarketplace) +func (v *ValidateSignupTypeMarketplace) CrmDetailsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for crm_details") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.CRMInfoValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSignupTypeMarketplace) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypeMarketplace) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SourceMarketplace got type %s", t) + return fmt.Errorf("Expected type *SignupTypeMarketplace got type %s", t) } } if m == nil { return nil } - switch m.GetMarketplaceChoice().(type) { - case *SourceMarketplace_MarketplaceAws: - if fv, exists := v.FldValidators["marketplace_choice.marketplace_aws"]; exists { - val := m.GetMarketplaceChoice().(*SourceMarketplace_MarketplaceAws).MarketplaceAws - vOpts := append(opts, - db.WithValidateField("marketplace_choice"), - db.WithValidateField("marketplace_aws"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["crm_details"]; exists { + + vOpts := append(opts, db.WithValidateField("crm_details")) + if err := fv(ctx, m.GetCrmDetails(), vOpts...); err != nil { + return err } } @@ -1684,29 +1290,46 @@ func (v *ValidateSourceMarketplace) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultSourceMarketplaceValidator = func() *ValidateSourceMarketplace { - v := &ValidateSourceMarketplace{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSignupTypeMarketplaceValidator = func() *ValidateSignupTypeMarketplace { + v := &ValidateSignupTypeMarketplace{FldValidators: map[string]db.ValidatorFunc{}} - v.FldValidators["marketplace_choice.marketplace_aws"] = MarketplaceAwsValidator().Validate + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCrmDetails := v.CrmDetailsValidationRuleHandler + rulesCrmDetails := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhCrmDetails(rulesCrmDetails) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupTypeMarketplace.crm_details: %s", err) + panic(errMsg) + } + v.FldValidators["crm_details"] = vFn return v }() -func SourceMarketplaceValidator() db.Validator { - return DefaultSourceMarketplaceValidator +func SignupTypeMarketplaceValidator() db.Validator { + return DefaultSignupTypeMarketplaceValidator } // augmented methods on protoc/std generated struct -func (m *SourceMsp) ToJSON() (string, error) { +func (m *SignupTypeMsp) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SourceMsp) ToYAML() (string, error) { +func (m *SignupTypeMsp) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SourceMsp) DeepCopy() *SourceMsp { +func (m *SignupTypeMsp) DeepCopy() *SignupTypeMsp { if m == nil { return nil } @@ -1714,7 +1337,7 @@ func (m *SourceMsp) DeepCopy() *SourceMsp { if err != nil { return nil } - c := &SourceMsp{} + c := &SignupTypeMsp{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1722,22 +1345,22 @@ func (m *SourceMsp) DeepCopy() *SourceMsp { return c } -func (m *SourceMsp) DeepCopyProto() proto.Message { +func (m *SignupTypeMsp) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SourceMsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourceMspValidator().Validate(ctx, m, opts...) +func (m *SignupTypeMsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypeMspValidator().Validate(ctx, m, opts...) } -type ValidateSourceMsp struct { +type ValidateSignupTypeMsp struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSourceMsp) ChildTenantObjNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateSignupTypeMsp) ChildTenantObjNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) if err != nil { @@ -1747,14 +1370,14 @@ func (v *ValidateSourceMsp) ChildTenantObjNameValidationRuleHandler(rules map[st return validatorFn, nil } -func (v *ValidateSourceMsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourceMsp) +func (v *ValidateSignupTypeMsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypeMsp) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SourceMsp got type %s", t) + return fmt.Errorf("Expected type *SignupTypeMsp got type %s", t) } } if m == nil { @@ -1779,21 +1402,12 @@ func (v *ValidateSourceMsp) Validate(ctx context.Context, pm interface{}, opts . } - if fv, exists := v.FldValidators["crm_info"]; exists { - - vOpts := append(opts, db.WithValidateField("crm_info")) - if err := fv(ctx, m.GetCrmInfo(), vOpts...); err != nil { - return err - } - - } - return nil } // Well-known symbol for default validator implementation -var DefaultSourceMspValidator = func() *ValidateSourceMsp { - v := &ValidateSourceMsp{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSignupTypeMspValidator = func() *ValidateSignupTypeMsp { + v := &ValidateSignupTypeMsp{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -1809,33 +1423,31 @@ var DefaultSourceMspValidator = func() *ValidateSourceMsp { } vFn, err = vrhChildTenantObjName(rulesChildTenantObjName) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SourceMsp.child_tenant_obj_name: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for SignupTypeMsp.child_tenant_obj_name: %s", err) panic(errMsg) } v.FldValidators["child_tenant_obj_name"] = vFn - v.FldValidators["crm_info"] = CrmInfoV2Validator().Validate - v.FldValidators["crm_details"] = ves_io_schema.CRMInfoValidator().Validate return v }() -func SourceMspValidator() db.Validator { - return DefaultSourceMspValidator +func SignupTypeMspValidator() db.Validator { + return DefaultSignupTypeMspValidator } // augmented methods on protoc/std generated struct -func (m *SourcePlanTransition) ToJSON() (string, error) { +func (m *SignupTypePlanTransition) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SourcePlanTransition) ToYAML() (string, error) { +func (m *SignupTypePlanTransition) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SourcePlanTransition) DeepCopy() *SourcePlanTransition { +func (m *SignupTypePlanTransition) DeepCopy() *SignupTypePlanTransition { if m == nil { return nil } @@ -1843,7 +1455,7 @@ func (m *SourcePlanTransition) DeepCopy() *SourcePlanTransition { if err != nil { return nil } - c := &SourcePlanTransition{} + c := &SignupTypePlanTransition{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1851,29 +1463,29 @@ func (m *SourcePlanTransition) DeepCopy() *SourcePlanTransition { return c } -func (m *SourcePlanTransition) DeepCopyProto() proto.Message { +func (m *SignupTypePlanTransition) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SourcePlanTransition) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourcePlanTransitionValidator().Validate(ctx, m, opts...) +func (m *SignupTypePlanTransition) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypePlanTransitionValidator().Validate(ctx, m, opts...) } -type ValidateSourcePlanTransition struct { +type ValidateSignupTypePlanTransition struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSourcePlanTransition) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourcePlanTransition) +func (v *ValidateSignupTypePlanTransition) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypePlanTransition) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SourcePlanTransition got type %s", t) + return fmt.Errorf("Expected type *SignupTypePlanTransition got type %s", t) } } if m == nil { @@ -1893,27 +1505,27 @@ func (v *ValidateSourcePlanTransition) Validate(ctx context.Context, pm interfac } // Well-known symbol for default validator implementation -var DefaultSourcePlanTransitionValidator = func() *ValidateSourcePlanTransition { - v := &ValidateSourcePlanTransition{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSignupTypePlanTransitionValidator = func() *ValidateSignupTypePlanTransition { + v := &ValidateSignupTypePlanTransition{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func SourcePlanTransitionValidator() db.Validator { - return DefaultSourcePlanTransitionValidator +func SignupTypePlanTransitionValidator() db.Validator { + return DefaultSignupTypePlanTransitionValidator } // augmented methods on protoc/std generated struct -func (m *SourcePublic) ToJSON() (string, error) { +func (m *SignupTypePublic) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SourcePublic) ToYAML() (string, error) { +func (m *SignupTypePublic) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SourcePublic) DeepCopy() *SourcePublic { +func (m *SignupTypePublic) DeepCopy() *SignupTypePublic { if m == nil { return nil } @@ -1921,7 +1533,7 @@ func (m *SourcePublic) DeepCopy() *SourcePublic { if err != nil { return nil } - c := &SourcePublic{} + c := &SignupTypePublic{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1929,29 +1541,29 @@ func (m *SourcePublic) DeepCopy() *SourcePublic { return c } -func (m *SourcePublic) DeepCopyProto() proto.Message { +func (m *SignupTypePublic) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SourcePublic) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SourcePublicValidator().Validate(ctx, m, opts...) +func (m *SignupTypePublic) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SignupTypePublicValidator().Validate(ctx, m, opts...) } -type ValidateSourcePublic struct { +type ValidateSignupTypePublic struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSourcePublic) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SourcePublic) +func (v *ValidateSignupTypePublic) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SignupTypePublic) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SourcePublic got type %s", t) + return fmt.Errorf("Expected type *SignupTypePublic got type %s", t) } } if m == nil { @@ -1962,14 +1574,14 @@ func (v *ValidateSourcePublic) Validate(ctx context.Context, pm interface{}, opt } // Well-known symbol for default validator implementation -var DefaultSourcePublicValidator = func() *ValidateSourcePublic { - v := &ValidateSourcePublic{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSignupTypePublicValidator = func() *ValidateSignupTypePublic { + v := &ValidateSignupTypePublic{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func SourcePublicValidator() db.Validator { - return DefaultSourcePublicValidator +func SignupTypePublicValidator() db.Validator { + return DefaultSignupTypePublicValidator } // augmented methods on protoc/std generated struct diff --git a/pbgo/extschema/schema/site/crudapi/api.vesapi.go b/pbgo/extschema/schema/site/crudapi/api.vesapi.go index 6face155c..cae72f572 100644 --- a/pbgo/extschema/schema/site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/site/crudapi/api.vesapi.go @@ -3167,10 +3167,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3228,7 +3232,7 @@ var APISwaggerJSON string = `{ }, "schemaServiceParameters": { "type": "object", - "description": "x-displayName \"displayname\"\nOnly added so codegeneration does not break\nServiceParam groups all parameters required for a client to connect to a server", + "description": "x-displayName \"displayname\"\nServiceParam groups all parameters required for a client to connect to a server", "title": "Title", "x-ves-proto-message": "ves.io.schema.ServiceParameters", "properties": { @@ -3866,6 +3870,12 @@ var APISwaggerJSON string = `{ "title": "k8s_api_servers", "x-displayname": "Kubernetes API Servers" }, + "kubernetes_upgrade_drain": { + "description": " K8s Node drain during OS or SW upgrade", + "title": "Kubernetes Upgrade Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "launch_ike_in_namespace": { "type": "boolean", "description": " identify that the CE needs to run IKE in namespace", @@ -5541,12 +5551,12 @@ var APISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { @@ -6118,6 +6128,12 @@ var APISwaggerJSON string = `{ "title": "url", "x-displayname": "URL" }, + "verNodeIp": { + "type": "string", + "description": " The VER node IP in the local site from which the connection is setup", + "title": "verNodeIP", + "x-displayname": "VER Node IP" + }, "verNodeName": { "type": "string", "description": " The VER node in the local site from which the connection is setup", @@ -6947,6 +6963,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsPrivateConnectivityType": { "type": "object", "description": "Private Connectivity Information like ADN network name and cloud link information", diff --git a/pbgo/extschema/schema/site/object.pb.go b/pbgo/extschema/schema/site/object.pb.go index 0faeb5bdc..e4bc9693e 100644 --- a/pbgo/extschema/schema/site/object.pb.go +++ b/pbgo/extschema/schema/site/object.pb.go @@ -452,83 +452,84 @@ func init() { } var fileDescriptor_1cbd8ec19bbb68ab = []byte{ - // 1206 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x96, 0xcf, 0x6f, 0xdc, 0x44, - 0x14, 0xc7, 0xe3, 0x24, 0xdd, 0x24, 0x93, 0x34, 0x4d, 0x26, 0xfd, 0xb1, 0x84, 0xd6, 0x0d, 0x41, - 0x82, 0x02, 0x5e, 0x6f, 0x9d, 0xf4, 0x57, 0x4a, 0x15, 0xa0, 0x49, 0x9b, 0xa4, 0x6a, 0x68, 0xb5, - 0x0b, 0x41, 0xea, 0x01, 0x6b, 0xd6, 0x7e, 0xde, 0x1d, 0xba, 0xeb, 0xb1, 0x66, 0xc6, 0x4e, 0x83, - 0x84, 0x84, 0x38, 0x73, 0xe0, 0xcf, 0x40, 0xfc, 0x15, 0xb4, 0x27, 0xc4, 0xa9, 0xaa, 0x84, 0xd4, - 0x23, 0xd9, 0x5c, 0x7a, 0xac, 0x38, 0x73, 0x40, 0x1e, 0xdb, 0x1b, 0xef, 0xc6, 0x41, 0x48, 0xf4, - 0x64, 0xcf, 0xbc, 0xef, 0xf7, 0xf3, 0x66, 0xe6, 0x8d, 0xc7, 0x83, 0x2e, 0x46, 0x20, 0x4c, 0xca, - 0xaa, 0xc2, 0x69, 0x41, 0x87, 0x54, 0x05, 0x95, 0x50, 0x65, 0x8d, 0x6f, 0xc0, 0x91, 0x66, 0xc0, - 0x99, 0x64, 0x18, 0x27, 0x02, 0x33, 0x11, 0x98, 0xb1, 0x60, 0xbe, 0xd2, 0xa4, 0xb2, 0x15, 0x36, - 0x4c, 0x87, 0x75, 0xaa, 0x4d, 0xd6, 0x64, 0x55, 0x25, 0x6d, 0x84, 0x9e, 0x6a, 0xa9, 0x86, 0x7a, - 0x4b, 0x10, 0xf3, 0x6f, 0xf7, 0xe7, 0x60, 0x81, 0xa4, 0xcc, 0x17, 0x69, 0xf0, 0x42, 0x7f, 0x30, - 0x88, 0xa4, 0x2d, 0xf7, 0x02, 0xc8, 0xc2, 0x7a, 0xc1, 0xf8, 0xf2, 0xf1, 0xb7, 0xfa, 0xe3, 0xf9, - 0xd0, 0x62, 0x7f, 0x28, 0x02, 0x01, 0x7e, 0x34, 0x90, 0xfd, 0xca, 0x80, 0x86, 0xc2, 0xae, 0xa8, - 0x4a, 0xe0, 0x9c, 0x78, 0x8c, 0x77, 0xec, 0x80, 0x70, 0xd2, 0x01, 0x09, 0x5c, 0xf4, 0x91, 0x2f, - 0x16, 0xba, 0x0e, 0x05, 0x8b, 0xcf, 0x46, 0x51, 0xe9, 0x81, 0x5a, 0x45, 0xbc, 0x82, 0xc6, 0x3b, - 0x20, 0x89, 0x4b, 0x24, 0x29, 0x6b, 0x0b, 0xda, 0xa5, 0xc9, 0xa5, 0x0b, 0x66, 0xff, 0x92, 0x26, - 0xc2, 0x6d, 0x90, 0xe4, 0x8b, 0xbd, 0x00, 0x6a, 0x3d, 0x39, 0xbe, 0x8f, 0x4e, 0x89, 0x3d, 0x21, - 0xa1, 0x63, 0xf7, 0x08, 0xc3, 0x8a, 0xf0, 0xee, 0x00, 0xa1, 0xae, 0x54, 0x03, 0x9c, 0xe9, 0xc4, - 0xbb, 0x9d, 0xd1, 0x2e, 0xa3, 0x51, 0x11, 0x80, 0x53, 0x1e, 0x51, 0x88, 0xf3, 0xe6, 0xd1, 0xba, - 0x9a, 0xf5, 0x00, 0x1c, 0xe5, 0x55, 0xca, 0x9b, 0x7f, 0x0f, 0xff, 0xf0, 0x49, 0x29, 0xa1, 0x3c, - 0x7b, 0x5a, 0x1e, 0x9e, 0xd1, 0x5e, 0x3c, 0x2d, 0xbf, 0x1a, 0x46, 0x77, 0xd0, 0xc8, 0x06, 0x48, - 0xbc, 0xea, 0x5d, 0x7d, 0xe2, 0x54, 0x62, 0x5f, 0xa5, 0x43, 0x7c, 0xd2, 0x84, 0x0e, 0xf8, 0xb2, - 0xd2, 0x20, 0x82, 0x3a, 0x95, 0x0e, 0xf3, 0xa9, 0x64, 0xdc, 0x58, 0x88, 0x40, 0x54, 0x28, 0xab, - 0x50, 0xdf, 0xe3, 0x44, 0x48, 0x1e, 0x3a, 0x32, 0xe4, 0x50, 0xe1, 0x40, 0x5c, 0xb4, 0x81, 0xc6, - 0x6a, 0x10, 0xb4, 0x89, 0x03, 0xf8, 0xd6, 0xbf, 0xa0, 0x42, 0x01, 0xc7, 0x72, 0x76, 0x39, 0x95, - 0x80, 0xee, 0xa2, 0xd2, 0x1a, 0x07, 0x22, 0xdf, 0x00, 0x67, 0x1d, 0xda, 0xf0, 0x06, 0x38, 0xa3, - 0xf7, 0xa9, 0xf8, 0xdf, 0x0b, 0xb4, 0xb8, 0x81, 0xc6, 0xb3, 0x82, 0xe0, 0x8f, 0xd1, 0x58, 0xd3, - 0xb1, 0x55, 0xfd, 0x92, 0x2d, 0xb0, 0x58, 0x54, 0xbf, 0x8d, 0x36, 0x6b, 0x90, 0x76, 0xaf, 0x8a, - 0xa5, 0xa6, 0x13, 0xbf, 0x2f, 0xfe, 0x71, 0x12, 0x4d, 0xd5, 0x25, 0x91, 0xa1, 0xf8, 0xcf, 0x7b, - 0x32, 0x91, 0x17, 0xec, 0xc9, 0xbb, 0x68, 0x32, 0x39, 0x1e, 0x6c, 0x0e, 0x9e, 0x28, 0x0f, 0x2f, - 0x8c, 0x14, 0x6c, 0xa6, 0x24, 0x4d, 0x0d, 0xbc, 0xd8, 0x7c, 0x7b, 0xec, 0x97, 0xef, 0x46, 0xe3, - 0xe1, 0xd5, 0x10, 0xcb, 0xfa, 0x05, 0xbe, 0x85, 0x90, 0xc3, 0x7c, 0x97, 0xaa, 0x8f, 0xb1, 0x3c, - 0x52, 0x88, 0x59, 0xcb, 0x04, 0x6a, 0x0c, 0x39, 0x3d, 0xfe, 0x14, 0xa1, 0x08, 0xb8, 0x2d, 0xd4, - 0x28, 0xcb, 0x27, 0xd4, 0x14, 0xde, 0x29, 0x5a, 0x91, 0x1d, 0xe0, 0xc9, 0x54, 0x14, 0x62, 0x22, - 0xca, 0x9a, 0xb8, 0x8e, 0x66, 0x63, 0x42, 0x87, 0x08, 0x79, 0x08, 0x3a, 0xa9, 0x40, 0xef, 0x1f, - 0x03, 0xda, 0x56, 0xda, 0x1c, 0xee, 0x54, 0xd4, 0xdf, 0x89, 0x5d, 0x54, 0x8e, 0x58, 0x5b, 0x1d, - 0x1f, 0xb6, 0x60, 0x9e, 0xdc, 0x25, 0x1c, 0x32, 0x76, 0x49, 0xb1, 0x3f, 0x2c, 0x64, 0xa7, 0x9e, - 0x7a, 0x6a, 0x49, 0x68, 0xb5, 0xb3, 0x51, 0x61, 0x3f, 0x9e, 0x47, 0xe3, 0x2d, 0x26, 0xa4, 0x4f, - 0x3a, 0x50, 0x1e, 0x5b, 0xd0, 0x2e, 0x4d, 0xd4, 0x7a, 0x6d, 0xbc, 0x8c, 0xc6, 0x5a, 0xbb, 0x36, - 0xf5, 0x3d, 0x56, 0x1e, 0x57, 0x09, 0xe7, 0x8b, 0x12, 0x3e, 0x10, 0x5b, 0xbe, 0xc7, 0x6a, 0xa5, - 0xd6, 0x6e, 0xfc, 0xc4, 0x2b, 0x68, 0xc2, 0x67, 0x2e, 0x24, 0xb6, 0xa9, 0xe3, 0x8f, 0x87, 0xcf, - 0x99, 0x0b, 0xca, 0x38, 0xee, 0xa7, 0x6f, 0x78, 0x13, 0x4d, 0x0b, 0x87, 0xb4, 0xa9, 0xdf, 0xcc, - 0xe6, 0x39, 0x71, 0x7c, 0x31, 0xea, 0x89, 0x32, 0x9d, 0xde, 0x49, 0x91, 0x6f, 0x62, 0x82, 0xce, - 0xb1, 0x00, 0x38, 0x91, 0x8a, 0x95, 0x1c, 0x7b, 0x29, 0x12, 0x29, 0xe4, 0x07, 0x85, 0x33, 0xc9, - 0x2c, 0xc9, 0x11, 0x98, 0xa2, 0xcf, 0xb0, 0xa2, 0x6e, 0x5c, 0x41, 0xd8, 0x01, 0x2e, 0xa9, 0x47, - 0xc1, 0xb5, 0x5b, 0x84, 0xbb, 0xf1, 0xa2, 0x96, 0x27, 0xd5, 0x12, 0xce, 0xf6, 0x22, 0x9b, 0x69, - 0x00, 0xdf, 0x46, 0x53, 0x5e, 0x1b, 0x40, 0x66, 0xc3, 0x98, 0x56, 0xc3, 0xb8, 0x58, 0x34, 0x8c, - 0xbb, 0xb1, 0x2e, 0x4d, 0x3e, 0xe9, 0x1d, 0x36, 0xb0, 0x8d, 0xce, 0xb8, 0x94, 0xc7, 0x9f, 0x8b, - 0xc3, 0x7c, 0x3f, 0x7e, 0xa6, 0xb0, 0x53, 0x0a, 0xf6, 0x51, 0x11, 0x6c, 0x5d, 0x19, 0xd6, 0x12, - 0x7d, 0xc2, 0x51, 0xab, 0x3e, 0xe7, 0x1e, 0x0d, 0x60, 0x0f, 0xcd, 0x45, 0x3e, 0x48, 0x3b, 0x00, - 0xe0, 0xb9, 0x2a, 0xcc, 0x28, 0xfc, 0xb5, 0x22, 0xfc, 0x67, 0xdf, 0x86, 0x1c, 0x36, 0xc3, 0x46, - 0x3d, 0x60, 0x8f, 0x61, 0xc7, 0x07, 0xf9, 0x30, 0xb1, 0xe6, 0x32, 0xcd, 0x46, 0x83, 0xdd, 0x98, - 0xa0, 0xd3, 0xf0, 0x24, 0xe0, 0x20, 0x84, 0xcd, 0x59, 0x28, 0x7b, 0xdb, 0x7a, 0x56, 0x25, 0xaa, - 0x1e, 0x9b, 0xe8, 0x4e, 0x62, 0xaa, 0xc5, 0x9e, 0xdc, 0xa7, 0x83, 0xe1, 0x48, 0x3f, 0x0e, 0xd0, - 0x79, 0xe6, 0x79, 0x6d, 0xea, 0x83, 0x2d, 0x42, 0x1e, 0xd1, 0x88, 0x34, 0x68, 0x9b, 0xca, 0xbd, - 0x2c, 0x15, 0x56, 0xa9, 0xcc, 0xc2, 0x6d, 0x90, 0xf8, 0xea, 0x79, 0x5b, 0x5a, 0x8e, 0x79, 0x76, - 0x6c, 0x0c, 0x7f, 0x85, 0xce, 0xc6, 0x76, 0xbb, 0x03, 0xa2, 0x65, 0x37, 0x39, 0x0b, 0x83, 0x2c, - 0xd7, 0x5c, 0xe1, 0x21, 0x5b, 0xa7, 0x12, 0xb6, 0x41, 0xb4, 0x36, 0x62, 0x69, 0xca, 0x9f, 0x13, - 0x47, 0x3b, 0xf1, 0x23, 0x74, 0xce, 0x75, 0x6c, 0xa7, 0x1d, 0xaa, 0xd3, 0xa5, 0x8f, 0x7c, 0xba, - 0xf0, 0x0f, 0xbe, 0xee, 0xac, 0x25, 0xe2, 0x3c, 0xfa, 0xb4, 0x5b, 0xd0, 0x8b, 0x77, 0xd0, 0x1c, - 0xf5, 0x25, 0xf0, 0xb8, 0xea, 0x3b, 0x5b, 0x0f, 0x33, 0xee, 0x19, 0xc5, 0x7d, 0x6f, 0x80, 0xab, - 0xae, 0x26, 0xe6, 0x56, 0xaa, 0xdf, 0xd9, 0x7a, 0x98, 0xa2, 0x67, 0xe9, 0x60, 0x17, 0xfe, 0x1a, - 0x21, 0x17, 0x82, 0x36, 0xdb, 0x8b, 0x7f, 0x53, 0xe5, 0xb3, 0x0a, 0xb7, 0x5a, 0x88, 0x2b, 0xba, - 0x1f, 0x99, 0xeb, 0x3d, 0x6f, 0xae, 0xcc, 0x39, 0xe2, 0xcd, 0x7b, 0x2f, 0x56, 0x67, 0xd0, 0x34, - 0x9a, 0xca, 0x7e, 0x25, 0x66, 0x48, 0xdd, 0xbf, 0x56, 0xaf, 0x58, 0xc6, 0xb2, 0x71, 0xd5, 0xb0, - 0x96, 0x8d, 0x6b, 0xc6, 0x75, 0xe3, 0x86, 0x61, 0x2d, 0x19, 0x2b, 0x86, 0x75, 0xd9, 0xb0, 0x2c, - 0xc3, 0xba, 0x62, 0x58, 0x57, 0x0d, 0xeb, 0x9a, 0x61, 0x5d, 0x37, 0xac, 0x1b, 0x86, 0xb5, 0x62, - 0x2c, 0x5d, 0x36, 0x96, 0x2c, 0x63, 0x69, 0xe9, 0xde, 0xe8, 0xf8, 0xe8, 0xcc, 0x89, 0xdb, 0x3f, - 0x6a, 0xbf, 0xaf, 0x8e, 0xd4, 0xbe, 0xbc, 0xff, 0x7c, 0x5f, 0x1f, 0x7a, 0xb9, 0xaf, 0x0f, 0xbd, - 0xde, 0xd7, 0xb5, 0xef, 0xbb, 0xba, 0xf6, 0x73, 0x57, 0xd7, 0x7e, 0xeb, 0xea, 0xda, 0xf3, 0xae, - 0xae, 0xbd, 0xec, 0xea, 0xda, 0x9f, 0x5d, 0x5d, 0x7b, 0xd5, 0xd5, 0x87, 0x5e, 0x77, 0x75, 0xed, - 0xa7, 0x03, 0x7d, 0xe8, 0xd7, 0x03, 0x5d, 0x7b, 0x7e, 0xa0, 0x0f, 0xbd, 0x3c, 0xd0, 0x87, 0x1e, - 0x6d, 0x36, 0x59, 0xf0, 0xb8, 0x69, 0x66, 0x67, 0xad, 0x19, 0xe6, 0xee, 0x7f, 0x95, 0x80, 0xb3, - 0x88, 0xba, 0xc0, 0x2b, 0x59, 0xb8, 0x1a, 0x34, 0x9a, 0xac, 0x0a, 0x4f, 0x64, 0x76, 0x1f, 0x3d, - 0xbc, 0x96, 0x36, 0x4a, 0xea, 0xee, 0xb7, 0xfc, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbb, 0x14, - 0x6f, 0xbd, 0x53, 0x0b, 0x00, 0x00, + // 1223 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x96, 0x4d, 0x6f, 0xdc, 0x44, + 0x18, 0xc7, 0xe3, 0x66, 0xbb, 0x49, 0x26, 0x69, 0x9a, 0x4c, 0xfa, 0xb2, 0x84, 0xd6, 0x0d, 0x41, + 0x82, 0x02, 0x5e, 0x6f, 0x37, 0xe9, 0x5b, 0x0a, 0x0a, 0xd0, 0x84, 0x26, 0xa9, 0x1a, 0x5a, 0xed, + 0x42, 0x90, 0x7a, 0xc0, 0xcc, 0xda, 0x8f, 0x77, 0xa7, 0x5d, 0x7b, 0xac, 0x99, 0xb1, 0xd3, 0x20, + 0x21, 0x21, 0xce, 0x1c, 0xf8, 0x0c, 0x9c, 0x10, 0x1f, 0x80, 0x33, 0xe5, 0x84, 0x38, 0x55, 0x95, + 0x90, 0x7a, 0xa4, 0x9b, 0x0b, 0xc7, 0x8a, 0x33, 0x07, 0xe4, 0xb1, 0xbd, 0xf1, 0x6e, 0x1c, 0xe0, + 0xd4, 0xd3, 0x7a, 0xe6, 0xf9, 0xff, 0x7f, 0xcf, 0xbc, 0x3e, 0x3b, 0xe8, 0x42, 0x04, 0xc2, 0xa4, + 0xac, 0x26, 0xec, 0x0e, 0x78, 0xa4, 0x26, 0xa8, 0x84, 0x1a, 0x6b, 0x3d, 0x00, 0x5b, 0x9a, 0x01, + 0x67, 0x92, 0x61, 0x9c, 0x08, 0xcc, 0x44, 0x60, 0xc6, 0x82, 0xf9, 0x6a, 0x9b, 0xca, 0x4e, 0xd8, + 0x32, 0x6d, 0xe6, 0xd5, 0xda, 0xac, 0xcd, 0x6a, 0x4a, 0xda, 0x0a, 0x5d, 0xd5, 0x52, 0x0d, 0xf5, + 0x95, 0x20, 0xe6, 0x5f, 0x1d, 0xcc, 0xc1, 0x02, 0x49, 0x99, 0x2f, 0xd2, 0xe0, 0xf9, 0xc1, 0x60, + 0x10, 0x49, 0x4b, 0xee, 0x05, 0x90, 0x85, 0xf5, 0x82, 0xf1, 0xe5, 0xe3, 0xaf, 0x0c, 0xc6, 0xf3, + 0xa1, 0xc5, 0xc1, 0x50, 0x04, 0x02, 0xfc, 0x68, 0x28, 0xfb, 0xe5, 0x21, 0x0d, 0x85, 0x5d, 0x51, + 0x93, 0xc0, 0x39, 0x71, 0x19, 0xf7, 0xac, 0x80, 0x70, 0xe2, 0x81, 0x04, 0x2e, 0x06, 0xc8, 0x17, + 0x0a, 0x5d, 0x07, 0x82, 0xc5, 0xbf, 0x8f, 0xa3, 0xf2, 0x5d, 0xb5, 0x8a, 0x78, 0x05, 0x8d, 0x7b, + 0x20, 0x89, 0x43, 0x24, 0xa9, 0x68, 0x0b, 0xda, 0xc5, 0xc9, 0xa5, 0xf3, 0xe6, 0xe0, 0x92, 0x26, + 0xc2, 0x6d, 0x90, 0xe4, 0x93, 0xbd, 0x00, 0x1a, 0x7d, 0x39, 0xbe, 0x83, 0x4e, 0x8a, 0x3d, 0x21, + 0xc1, 0xb3, 0xfa, 0x84, 0x63, 0x8a, 0xf0, 0xfa, 0x10, 0xa1, 0xa9, 0x54, 0x43, 0x9c, 0xe9, 0xc4, + 0xbb, 0x9d, 0xd1, 0x2e, 0xa1, 0x92, 0x08, 0xc0, 0xae, 0x8c, 0x2a, 0xc4, 0x39, 0xf3, 0xf0, 0xbe, + 0x9a, 0xcd, 0x00, 0x6c, 0xe5, 0x55, 0xca, 0x1b, 0x3f, 0x95, 0xbe, 0x79, 0xbf, 0x9c, 0x50, 0x7e, + 0x79, 0x5c, 0x39, 0x36, 0xa3, 0x3d, 0x7d, 0x5c, 0xf9, 0xbe, 0x84, 0xba, 0x68, 0x74, 0x03, 0x24, + 0x06, 0xf7, 0xca, 0x23, 0xbb, 0x1a, 0xfb, 0xaa, 0x1e, 0xf1, 0x49, 0x1b, 0x3c, 0xf0, 0x65, 0xb5, + 0x45, 0x04, 0xb5, 0xab, 0x1e, 0xf3, 0xa9, 0x64, 0xdc, 0x58, 0x28, 0xd4, 0x08, 0x49, 0x7c, 0x87, + 0x70, 0xe7, 0x40, 0x16, 0x81, 0xa8, 0x52, 0x56, 0xa5, 0xbe, 0xcb, 0x89, 0x90, 0x3c, 0xb4, 0x65, + 0xc8, 0xa1, 0xca, 0x81, 0x38, 0xe8, 0x21, 0x1a, 0x6b, 0x40, 0xd0, 0x25, 0x36, 0xe0, 0x2f, 0xfe, + 0x25, 0x63, 0x28, 0xe0, 0x3f, 0xd3, 0x25, 0x9a, 0xe2, 0x5c, 0xbb, 0x9c, 0x4a, 0x40, 0x0f, 0x50, + 0x79, 0x8d, 0x03, 0x91, 0x2f, 0x29, 0xd7, 0x3a, 0x74, 0xe1, 0xa5, 0xe4, 0xf2, 0x50, 0xe9, 0x0e, + 0x15, 0x2f, 0x6b, 0xcf, 0x16, 0x37, 0xd0, 0x78, 0x76, 0x94, 0xf0, 0xbb, 0x68, 0xac, 0x6d, 0x5b, + 0xea, 0xe4, 0x25, 0x87, 0x77, 0xb1, 0xe8, 0xe4, 0x6d, 0x74, 0x59, 0x8b, 0x74, 0xfb, 0xe7, 0xaf, + 0xdc, 0xb6, 0xe3, 0xef, 0xc5, 0xdf, 0x4f, 0xa0, 0xa9, 0xa6, 0x24, 0x32, 0x14, 0xff, 0xfb, 0x36, + 0x25, 0xf2, 0x82, 0xdb, 0x74, 0x0b, 0x4d, 0x26, 0x85, 0xcd, 0xe2, 0xe0, 0x8a, 0xca, 0xb1, 0x85, + 0xd1, 0x82, 0x6b, 0x90, 0xa4, 0x69, 0x80, 0x1b, 0x9b, 0x6f, 0x8e, 0xfd, 0xf8, 0x55, 0x29, 0x1e, + 0x5e, 0x03, 0xb1, 0xac, 0x5f, 0xe0, 0xf7, 0x10, 0xb2, 0x99, 0xef, 0x50, 0x55, 0x46, 0x2a, 0xa3, + 0x85, 0x98, 0xb5, 0x4c, 0xa0, 0xc6, 0x90, 0xd3, 0xe3, 0x0f, 0x10, 0x8a, 0x80, 0x5b, 0x42, 0x8d, + 0xb2, 0x72, 0x5c, 0x4d, 0xe1, 0xb5, 0xa2, 0x15, 0xd9, 0x01, 0x9e, 0x4c, 0x45, 0x21, 0x26, 0xa2, + 0xac, 0x89, 0x9b, 0x68, 0x36, 0x26, 0x78, 0x44, 0xc8, 0x03, 0xd0, 0x09, 0x05, 0x7a, 0xf3, 0x08, + 0xd0, 0xb6, 0xd2, 0xe6, 0x70, 0x27, 0xa3, 0xc1, 0x4e, 0xec, 0xa0, 0x4a, 0xc4, 0xba, 0xaa, 0xf0, + 0x59, 0x82, 0xb9, 0x72, 0x97, 0x70, 0xc8, 0xd8, 0x65, 0xc5, 0x7e, 0xbb, 0x90, 0x9d, 0x7a, 0x9a, + 0xa9, 0x25, 0xa1, 0x35, 0xce, 0x44, 0x85, 0xfd, 0x78, 0x1e, 0x8d, 0x77, 0x98, 0x90, 0x3e, 0xf1, + 0xa0, 0x32, 0xb6, 0xa0, 0x5d, 0x9c, 0x68, 0xf4, 0xdb, 0x78, 0x19, 0x8d, 0x75, 0x76, 0x2d, 0xea, + 0xbb, 0xac, 0x32, 0xae, 0x12, 0xce, 0x17, 0x25, 0xbc, 0x2b, 0xb6, 0x7c, 0x97, 0x35, 0xca, 0x9d, + 0xdd, 0xf8, 0x17, 0xaf, 0xa0, 0x09, 0x9f, 0x39, 0x90, 0xd8, 0xa6, 0x8e, 0x2e, 0x6c, 0x1f, 0x33, + 0x07, 0x94, 0x71, 0xdc, 0x4f, 0xbf, 0xf0, 0x26, 0x9a, 0x16, 0x36, 0xe9, 0x52, 0xbf, 0x9d, 0xcd, + 0x73, 0xe2, 0xe8, 0xcd, 0x68, 0x26, 0xca, 0x74, 0x7a, 0x27, 0x44, 0xbe, 0x89, 0x09, 0x3a, 0xcb, + 0x02, 0xe0, 0x44, 0x2a, 0x56, 0x52, 0xb0, 0x53, 0x24, 0x52, 0xc8, 0xb7, 0x0a, 0x67, 0x92, 0x59, + 0x92, 0xe2, 0x9d, 0xa2, 0x4f, 0xb3, 0xa2, 0x6e, 0x5c, 0x45, 0xd8, 0x06, 0x2e, 0xa9, 0x4b, 0xc1, + 0xb1, 0x3a, 0x84, 0x3b, 0xf1, 0xa2, 0x56, 0x26, 0xd5, 0x12, 0xce, 0xf6, 0x23, 0x9b, 0x69, 0x00, + 0xdf, 0x44, 0x53, 0x6e, 0x17, 0x40, 0x66, 0xc3, 0x98, 0x56, 0xc3, 0xb8, 0x50, 0x34, 0x8c, 0x5b, + 0xb1, 0x2e, 0x4d, 0x3e, 0xe9, 0x1e, 0x34, 0xb0, 0x85, 0x4e, 0x3b, 0x94, 0xc7, 0xd7, 0xc5, 0x66, + 0xbe, 0x1f, 0xff, 0xa6, 0xb0, 0x93, 0x0a, 0xf6, 0x4e, 0x11, 0x6c, 0x5d, 0x19, 0xd6, 0x12, 0x7d, + 0xc2, 0x51, 0xab, 0x3e, 0xe7, 0x1c, 0x0e, 0x60, 0x17, 0xcd, 0x45, 0x3e, 0x48, 0x2b, 0x00, 0xe0, + 0xb9, 0x5d, 0x98, 0x51, 0xf8, 0xab, 0x45, 0xf8, 0x0f, 0xbf, 0x0c, 0x39, 0x6c, 0x86, 0xad, 0x66, + 0xc0, 0x1e, 0xc2, 0x8e, 0x0f, 0xf2, 0x5e, 0x62, 0xcd, 0x65, 0x9a, 0x8d, 0x86, 0xbb, 0x31, 0x41, + 0xa7, 0xe0, 0x51, 0xc0, 0x41, 0x08, 0x8b, 0xb3, 0x50, 0xf6, 0x8f, 0xf5, 0xac, 0x4a, 0x54, 0x3b, + 0x32, 0xd1, 0x47, 0x89, 0xa9, 0x11, 0x7b, 0x72, 0x57, 0x07, 0xc3, 0xa1, 0x7e, 0x1c, 0xa0, 0x73, + 0xcc, 0x75, 0xbb, 0xd4, 0x07, 0x4b, 0x84, 0x3c, 0xa2, 0x11, 0x69, 0xd1, 0x2e, 0x95, 0x7b, 0x59, + 0x2a, 0xac, 0x52, 0x99, 0x85, 0xc7, 0x20, 0xf1, 0x35, 0xf3, 0xb6, 0x74, 0x3b, 0xe6, 0xd9, 0x91, + 0x31, 0xfc, 0x19, 0x3a, 0x13, 0xdb, 0x2d, 0x0f, 0x44, 0xc7, 0x6a, 0x73, 0x16, 0x06, 0x59, 0xae, + 0xb9, 0xc2, 0x22, 0xdb, 0xa4, 0x12, 0xb6, 0x41, 0x74, 0x36, 0x62, 0x69, 0xca, 0x9f, 0x13, 0x87, + 0x3b, 0xf1, 0x7d, 0x74, 0xd6, 0xb1, 0x2d, 0xbb, 0x1b, 0xaa, 0xea, 0x32, 0x40, 0x3e, 0x55, 0xf8, + 0xf6, 0x58, 0xb7, 0xd7, 0x12, 0x71, 0x1e, 0x7d, 0xca, 0x29, 0xe8, 0xc5, 0x3b, 0x68, 0x8e, 0xfa, + 0x12, 0x78, 0xbc, 0xeb, 0x3b, 0x5b, 0xf7, 0x32, 0xee, 0x69, 0xc5, 0x7d, 0x63, 0x88, 0xab, 0x1e, + 0x55, 0xe6, 0x56, 0xaa, 0xdf, 0xd9, 0xba, 0x97, 0xa2, 0x67, 0xe9, 0x70, 0x17, 0xfe, 0x1c, 0x21, + 0x07, 0x82, 0x2e, 0xdb, 0x8b, 0xff, 0xa9, 0x2a, 0x67, 0x14, 0x6e, 0xb5, 0x10, 0x57, 0xf4, 0xb2, + 0x33, 0xd7, 0xfb, 0xde, 0xdc, 0x36, 0xe7, 0x88, 0x37, 0x6e, 0x3f, 0x5d, 0x9d, 0x41, 0xd3, 0x68, + 0x2a, 0xfb, 0x2b, 0x31, 0x43, 0xea, 0xfc, 0xb5, 0x7a, 0xb9, 0x6e, 0x2c, 0x1b, 0x57, 0x8c, 0xfa, + 0xb2, 0x71, 0xd5, 0xb8, 0x66, 0x5c, 0x37, 0xea, 0x4b, 0xc6, 0x8a, 0x51, 0xbf, 0x64, 0xd4, 0xeb, + 0x46, 0xfd, 0xb2, 0x51, 0xbf, 0x62, 0xd4, 0xaf, 0x1a, 0xf5, 0x6b, 0x46, 0xfd, 0xba, 0x51, 0x5f, + 0x31, 0x96, 0x2e, 0x19, 0x4b, 0x75, 0x63, 0x69, 0xe9, 0x76, 0x69, 0xbc, 0x34, 0x73, 0xfc, 0xe6, + 0xb7, 0xda, 0x6f, 0xab, 0xa3, 0x8d, 0x4f, 0xef, 0x3c, 0x79, 0xae, 0x8f, 0x3c, 0x7b, 0xae, 0x8f, + 0xbc, 0x78, 0xae, 0x6b, 0x5f, 0xf7, 0x74, 0xed, 0x87, 0x9e, 0xae, 0xfd, 0xda, 0xd3, 0xb5, 0x27, + 0x3d, 0x5d, 0x7b, 0xd6, 0xd3, 0xb5, 0x3f, 0x7a, 0xba, 0xf6, 0x67, 0x4f, 0x1f, 0x79, 0xd1, 0xd3, + 0xb5, 0xef, 0xf6, 0xf5, 0x91, 0x9f, 0xf7, 0x75, 0xed, 0xc9, 0xbe, 0x3e, 0xf2, 0x6c, 0x5f, 0x1f, + 0xb9, 0xbf, 0xd9, 0x66, 0xc1, 0xc3, 0xb6, 0x99, 0xd5, 0x5a, 0x33, 0xcc, 0xbd, 0x5c, 0xab, 0x01, + 0x67, 0x11, 0x75, 0x80, 0x57, 0xb3, 0x70, 0x2d, 0x68, 0xb5, 0x59, 0x0d, 0x1e, 0xc9, 0xec, 0x25, + 0x7d, 0xf0, 0xa0, 0x6e, 0x95, 0xd5, 0xab, 0x75, 0xf9, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x54, + 0xfa, 0xa9, 0x8a, 0x0d, 0x0c, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/site/pkg.vespkg.go b/pbgo/extschema/schema/site/pkg.vespkg.go index 7d620639f..6fbce497d 100644 --- a/pbgo/extschema/schema/site/pkg.vespkg.go +++ b/pbgo/extschema/schema/site/pkg.vespkg.go @@ -147,89 +147,89 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.site.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "replace_form.spec.inside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.inside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.outside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.outside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.vip_selection", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.inside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.inside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.outside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.outside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.vip_selection", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.site.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.inside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.inside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.outside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.outside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.vip_selection", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.site.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.inside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.inside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.outside_nameserver_v6", - AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.outside_vip_v6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.vip_selection", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/site/public_config_kubeconfig.pb.go b/pbgo/extschema/schema/site/public_config_kubeconfig.pb.go index 9d11d8a4b..eb3c39b0a 100644 --- a/pbgo/extschema/schema/site/public_config_kubeconfig.pb.go +++ b/pbgo/extschema/schema/site/public_config_kubeconfig.pb.go @@ -45,41 +45,41 @@ func init() { } var fileDescriptor_d1ea8d623951f759 = []byte{ - // 533 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x52, 0xc1, 0x6b, 0x13, 0x4f, - 0x18, 0xdd, 0xc9, 0xef, 0x87, 0x87, 0x9c, 0x64, 0xab, 0xd0, 0x46, 0x19, 0x25, 0x20, 0x05, 0x71, - 0x67, 0x50, 0x11, 0x44, 0x14, 0x69, 0x7b, 0xb0, 0xc5, 0x82, 0xe2, 0xd1, 0x4b, 0x99, 0xdd, 0x7c, - 0xd9, 0x8c, 0xc9, 0xee, 0x37, 0xce, 0xcc, 0xae, 0x0d, 0x52, 0x90, 0xfc, 0x05, 0xa2, 0xe0, 0xdf, - 0x20, 0xf8, 0x0f, 0x08, 0xbd, 0xf4, 0x66, 0x4f, 0x12, 0xf4, 0xd2, 0xa3, 0xd9, 0x78, 0x10, 0xbc, - 0xf4, 0x0f, 0xf0, 0x20, 0xd9, 0xdd, 0x24, 0x5d, 0x0d, 0x28, 0x78, 0x7b, 0xfb, 0xbd, 0xf7, 0x3d, - 0xf6, 0xbd, 0xf9, 0xea, 0x57, 0x53, 0x30, 0x4c, 0x22, 0x37, 0x41, 0x07, 0x22, 0xc1, 0x8d, 0xb4, - 0xc0, 0x55, 0xe2, 0xf7, 0x64, 0xb0, 0x13, 0x60, 0xdc, 0x96, 0xe1, 0x4e, 0x37, 0xf1, 0xa1, 0x80, - 0x4c, 0x69, 0xb4, 0xe8, 0xba, 0xc5, 0x0a, 0x2b, 0x56, 0xd8, 0x64, 0xa5, 0xe1, 0x85, 0xd2, 0x76, - 0x12, 0x9f, 0x05, 0x18, 0xf1, 0x10, 0x43, 0xe4, 0xb9, 0xd4, 0x4f, 0xda, 0xf9, 0x57, 0xfe, 0x91, - 0xa3, 0xc2, 0xa2, 0x71, 0x3e, 0x44, 0x0c, 0x7b, 0xc0, 0x85, 0x92, 0x5c, 0xc4, 0x31, 0x5a, 0x61, - 0x25, 0xc6, 0xa6, 0x64, 0x57, 0x4e, 0xb0, 0x1d, 0x6b, 0x95, 0x8f, 0xad, 0x7e, 0x49, 0x5d, 0x28, - 0xa9, 0x99, 0xbd, 0x95, 0x11, 0x18, 0x2b, 0x22, 0x55, 0x0a, 0xce, 0x55, 0xf3, 0xa0, 0x3a, 0x69, - 0x4c, 0x17, 0x84, 0xb5, 0x7d, 0x05, 0x53, 0xbe, 0x59, 0xe5, 0x53, 0x30, 0x10, 0xa7, 0x55, 0x8f, - 0x6b, 0xef, 0xfe, 0xaf, 0x2f, 0x6d, 0xe4, 0x75, 0xdc, 0x4f, 0x7c, 0x28, 0xd0, 0xda, 0xc3, 0x2d, - 0xf7, 0x3b, 0xa9, 0x9f, 0xdd, 0xd0, 0x20, 0x2c, 0x6c, 0x63, 0x20, 0x7a, 0x73, 0xd2, 0x5d, 0x65, - 0xbf, 0x17, 0xc6, 0x0a, 0xe9, 0x5c, 0xf5, 0x08, 0x9e, 0x36, 0xce, 0xb0, 0x22, 0x1d, 0x13, 0x4a, - 0xb2, 0x4d, 0x6b, 0xd5, 0x3a, 0xb6, 0xfa, 0xcd, 0x57, 0x24, 0xfb, 0xb0, 0x7c, 0xaf, 0x7d, 0x63, - 0x37, 0xf0, 0x84, 0x52, 0xc6, 0x8a, 0xa0, 0xeb, 0xf9, 0xc2, 0xc8, 0xc0, 0x4b, 0x0c, 0xe8, 0x2b, - 0x17, 0x53, 0x30, 0x9e, 0x44, 0xaf, 0x7b, 0xd3, 0x78, 0xcf, 0xb4, 0xb4, 0x30, 0x9b, 0xf4, 0x26, - 0xff, 0x91, 0xcf, 0xe7, 0x4f, 0x38, 0xf8, 0xfc, 0xf5, 0x75, 0x6d, 0xad, 0x79, 0xbb, 0x7c, 0x63, - 0x1e, 0x8b, 0x08, 0x8c, 0x12, 0x01, 0x18, 0xfe, 0x7c, 0x86, 0xf7, 0xf2, 0x66, 0xca, 0xc9, 0x1e, - 0x2f, 0x7d, 0x66, 0x1e, 0xb7, 0xc8, 0x65, 0xf7, 0x07, 0xa9, 0x2f, 0x6d, 0x4b, 0x63, 0x7f, 0xcd, - 0x7a, 0x69, 0x51, 0xd6, 0x89, 0xb0, 0x9a, 0xf4, 0x6f, 0x64, 0x46, 0x35, 0xdf, 0x90, 0xc3, 0xf7, - 0xb5, 0x49, 0xfc, 0xad, 0x45, 0xf1, 0x23, 0x8c, 0xa5, 0xc5, 0x6a, 0x03, 0x1a, 0x44, 0xeb, 0xcf, - 0x05, 0xdc, 0x75, 0xef, 0xfc, 0x4b, 0x01, 0xa6, 0xb1, 0x7a, 0xb0, 0x4f, 0xfe, 0xfb, 0xb4, 0x4f, - 0x56, 0x16, 0xc4, 0x78, 0xe0, 0x3f, 0x81, 0xc0, 0x0e, 0x3e, 0x2e, 0xd7, 0x4e, 0x93, 0xf5, 0x01, - 0x19, 0x8e, 0xa8, 0x73, 0x34, 0xa2, 0xce, 0xf1, 0x88, 0x92, 0x17, 0x19, 0x25, 0x6f, 0x33, 0x4a, - 0x0e, 0x33, 0x4a, 0x86, 0x19, 0x25, 0x5f, 0x32, 0x4a, 0xbe, 0x65, 0xd4, 0x39, 0xce, 0x28, 0x79, - 0x39, 0xa6, 0xce, 0xc1, 0x98, 0x92, 0xe1, 0x98, 0x3a, 0x47, 0x63, 0xea, 0x3c, 0xde, 0x0c, 0x51, - 0x75, 0x43, 0x96, 0x62, 0xcf, 0x82, 0xd6, 0x82, 0x25, 0x86, 0xe7, 0xa0, 0x8d, 0x3a, 0xf2, 0x94, - 0xc6, 0x54, 0xb6, 0x40, 0x7b, 0x53, 0x9a, 0x2b, 0x3f, 0x44, 0x0e, 0xbb, 0x76, 0x7a, 0xdb, 0xf3, - 0x13, 0xf7, 0x4f, 0xe5, 0x97, 0x7b, 0xfd, 0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0xdf, 0x01, 0x45, - 0xa9, 0xec, 0x03, 0x00, 0x00, + // 544 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xbf, 0x6b, 0x14, 0x41, + 0x14, 0xc7, 0x77, 0x4e, 0xb1, 0xb8, 0x4a, 0x36, 0x0a, 0xc9, 0x29, 0xa3, 0x1c, 0x48, 0x40, 0xdc, + 0x19, 0x54, 0x04, 0x11, 0x45, 0x92, 0x34, 0x11, 0x03, 0x8a, 0xa5, 0x4d, 0x98, 0xdd, 0x7d, 0xb7, + 0x19, 0xef, 0x76, 0xdf, 0x38, 0x33, 0xbb, 0xe6, 0x90, 0x80, 0x5c, 0x65, 0x29, 0xd8, 0xfa, 0x07, + 0xd8, 0xd9, 0x89, 0x90, 0x26, 0x9d, 0xa9, 0xe4, 0xd0, 0x26, 0xa5, 0xb7, 0x67, 0x91, 0x32, 0x7f, + 0x82, 0xdc, 0xee, 0xde, 0x2f, 0x3d, 0x51, 0xb0, 0x7b, 0xf3, 0xbe, 0xdf, 0xf7, 0x65, 0xdf, 0x67, + 0x67, 0xea, 0xd7, 0x33, 0x30, 0x4c, 0x22, 0x37, 0xc1, 0x0e, 0xc4, 0x82, 0x1b, 0x69, 0x81, 0xab, + 0xd4, 0xef, 0xc8, 0x60, 0x3b, 0xc0, 0xa4, 0x25, 0xa3, 0xed, 0x76, 0xea, 0x43, 0x59, 0x32, 0xa5, + 0xd1, 0xa2, 0xeb, 0x96, 0x23, 0xac, 0x1c, 0x61, 0xa3, 0x91, 0x86, 0x17, 0x49, 0xbb, 0x93, 0xfa, + 0x2c, 0xc0, 0x98, 0x47, 0x18, 0x21, 0x2f, 0xac, 0x7e, 0xda, 0x2a, 0x4e, 0xc5, 0xa1, 0xa8, 0xca, + 0x88, 0xc6, 0xc5, 0x08, 0x31, 0xea, 0x00, 0x17, 0x4a, 0x72, 0x91, 0x24, 0x68, 0x85, 0x95, 0x98, + 0x98, 0x4a, 0x5d, 0x99, 0x51, 0x77, 0xac, 0x55, 0x3e, 0x86, 0xdd, 0x4a, 0xba, 0x54, 0x49, 0x93, + 0x78, 0x2b, 0x63, 0x30, 0x56, 0xc4, 0xaa, 0x32, 0x5c, 0x98, 0xdf, 0x07, 0xd5, 0x6c, 0x30, 0x5d, + 0xb0, 0xac, 0xed, 0x2a, 0x18, 0xeb, 0xcd, 0x79, 0x3d, 0x03, 0x03, 0x49, 0x36, 0x9f, 0x71, 0xe3, + 0xf8, 0x74, 0x7d, 0x69, 0xa3, 0xc0, 0xf1, 0x30, 0xf5, 0xa1, 0xac, 0xd6, 0x1e, 0x3f, 0x70, 0x5f, + 0xd7, 0xea, 0xe7, 0x37, 0x34, 0x08, 0x0b, 0x5b, 0x18, 0x88, 0xce, 0x54, 0x74, 0x57, 0xd9, 0xef, + 0xc0, 0x58, 0x69, 0x9d, 0xba, 0x9e, 0xc0, 0xf3, 0xc6, 0x39, 0x56, 0x6e, 0xc7, 0x84, 0x92, 0x6c, + 0xd3, 0x5a, 0xb5, 0x8e, 0x61, 0xb7, 0xf9, 0x81, 0xe4, 0x9f, 0x97, 0xc3, 0xd6, 0xad, 0xdd, 0xc0, + 0x13, 0x4a, 0x19, 0x2b, 0x82, 0xb6, 0xe7, 0x0b, 0x23, 0x03, 0x2f, 0x35, 0xa0, 0xaf, 0x5d, 0x9e, + 0x57, 0x8c, 0x15, 0x49, 0x28, 0x74, 0x58, 0x89, 0x19, 0x18, 0x4f, 0xa2, 0xd7, 0xbe, 0x6d, 0xbc, + 0x17, 0x5a, 0x5a, 0x98, 0x74, 0x3a, 0xa3, 0x8f, 0x2c, 0xfa, 0xd3, 0xff, 0xdb, 0xfb, 0xf6, 0xe3, + 0x6d, 0x6d, 0xad, 0x79, 0xb7, 0xba, 0x00, 0x3c, 0x11, 0x31, 0x18, 0x25, 0x02, 0x30, 0xfc, 0xe5, + 0xa4, 0xde, 0x2b, 0xb0, 0x55, 0x9d, 0x3d, 0x5e, 0xe5, 0x4c, 0x32, 0xee, 0x90, 0xab, 0xee, 0xbb, + 0x5a, 0x7d, 0x69, 0x4b, 0x1a, 0xfb, 0x2b, 0x88, 0x2b, 0x8b, 0x40, 0x8c, 0x8c, 0xf3, 0x18, 0xfe, + 0xc5, 0x66, 0x54, 0xf3, 0x23, 0x39, 0xfc, 0x54, 0x1b, 0xb1, 0x91, 0x8b, 0xd8, 0xc4, 0x98, 0x48, + 0x8b, 0x7f, 0xc6, 0x33, 0xd1, 0x67, 0x08, 0x69, 0x10, 0xe1, 0xdf, 0x01, 0xdd, 0x77, 0xef, 0xfd, + 0x0f, 0x20, 0xd3, 0x58, 0x3d, 0xd8, 0x27, 0xa7, 0xbe, 0xee, 0x93, 0x95, 0x05, 0x6b, 0x3e, 0xf2, + 0x9f, 0x41, 0x60, 0x7b, 0x5f, 0x96, 0x6b, 0x67, 0xc9, 0x7a, 0x8f, 0xf4, 0x07, 0xd4, 0x39, 0x1a, + 0x50, 0xe7, 0x64, 0x40, 0xc9, 0xab, 0x9c, 0x92, 0xf7, 0x39, 0x25, 0x87, 0x39, 0x25, 0xfd, 0x9c, + 0x92, 0xef, 0x39, 0x25, 0xc7, 0x39, 0x75, 0x4e, 0x72, 0x4a, 0xde, 0x0c, 0xa9, 0x73, 0x30, 0xa4, + 0xa4, 0x3f, 0xa4, 0xce, 0xd1, 0x90, 0x3a, 0x4f, 0x37, 0x23, 0x54, 0xed, 0x88, 0x65, 0xd8, 0xb1, + 0xa0, 0xb5, 0x60, 0xa9, 0xe1, 0x45, 0xd1, 0x42, 0x1d, 0x7b, 0x4a, 0x63, 0x26, 0x43, 0xd0, 0xde, + 0x58, 0xe6, 0xca, 0x8f, 0x90, 0xc3, 0xae, 0x1d, 0x3f, 0x8c, 0xe9, 0xfb, 0xf0, 0xcf, 0x14, 0xd7, + 0xfe, 0xe6, 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x77, 0xce, 0x3d, 0x1a, 0x29, 0x04, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/site/public_crudapi.pb.go b/pbgo/extschema/schema/site/public_crudapi.pb.go index 4b1a149a1..65b147c55 100644 --- a/pbgo/extschema/schema/site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/site/public_crudapi.pb.go @@ -843,98 +843,99 @@ func init() { } var fileDescriptor_ea095aa59c5157a0 = []byte{ - // 1450 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcf, 0x6f, 0x1b, 0x45, - 0x1b, 0xce, 0xd8, 0x8e, 0x1b, 0x8f, 0xd3, 0xc4, 0x9d, 0xaf, 0x3f, 0x36, 0xfe, 0xfa, 0x6d, 0xfc, - 0xb9, 0x51, 0x09, 0x05, 0x7b, 0xab, 0x40, 0x25, 0x1a, 0x68, 0x21, 0x3f, 0x9c, 0x34, 0x25, 0x4d, - 0xaa, 0x75, 0x5a, 0x10, 0x97, 0xd5, 0x7a, 0xfd, 0xda, 0x5d, 0x6a, 0xef, 0x6e, 0x67, 0xc6, 0x4e, - 0x23, 0x88, 0x84, 0x7a, 0x81, 0x23, 0x82, 0x1b, 0xea, 0x81, 0x0b, 0x12, 0xfc, 0x03, 0x08, 0x29, - 0x1c, 0x72, 0xa3, 0xea, 0x01, 0x55, 0xf4, 0x92, 0x03, 0x07, 0xea, 0x70, 0xe8, 0xb1, 0x7f, 0x02, - 0xda, 0x99, 0xb5, 0x63, 0x3b, 0x4e, 0x62, 0xa0, 0x27, 0xef, 0xcc, 0xfb, 0x3c, 0xcf, 0xce, 0x33, - 0xef, 0x3b, 0xaf, 0x67, 0xf1, 0x2b, 0x75, 0x60, 0x59, 0xdb, 0xd5, 0x98, 0x75, 0x07, 0xaa, 0xa6, - 0xc6, 0x6c, 0x0e, 0x9a, 0x57, 0x2b, 0x54, 0x6c, 0xcb, 0xb0, 0x68, 0xad, 0x68, 0x7a, 0x76, 0xd6, - 0xa3, 0x2e, 0x77, 0x09, 0x91, 0xc0, 0xac, 0x04, 0x66, 0x7d, 0x60, 0x32, 0x53, 0xb6, 0xf9, 0x9d, - 0x5a, 0x21, 0x6b, 0xb9, 0x55, 0xad, 0xec, 0x96, 0x5d, 0x4d, 0x40, 0x0b, 0xb5, 0x92, 0x18, 0x89, - 0x81, 0x78, 0x92, 0x12, 0xc9, 0xb3, 0x65, 0xd7, 0x2d, 0x57, 0x40, 0x33, 0x3d, 0x5b, 0x33, 0x1d, - 0xc7, 0xe5, 0x26, 0xb7, 0x5d, 0x87, 0x05, 0xd1, 0xff, 0x06, 0xd1, 0x96, 0x06, 0x54, 0x3d, 0xbe, - 0x11, 0x04, 0x93, 0x9d, 0xcb, 0x04, 0x4a, 0x5d, 0xda, 0x22, 0x76, 0xc6, 0x5c, 0xaf, 0x5d, 0xf5, - 0x7f, 0x9d, 0x41, 0xaf, 0xce, 0x0d, 0xbe, 0xe1, 0x41, 0x33, 0x3c, 0xde, 0xc3, 0xbe, 0x5b, 0xf8, - 0x18, 0x2c, 0x1e, 0x00, 0xd4, 0x1e, 0x80, 0x76, 0x81, 0xb1, 0xce, 0x78, 0x7b, 0x28, 0xdd, 0x19, - 0xaa, 0x03, 0x03, 0xa7, 0xde, 0xb5, 0xbc, 0x54, 0x17, 0xc6, 0x86, 0x75, 0xa3, 0x13, 0xf1, 0xe6, - 0x7e, 0x04, 0xd3, 0x38, 0x50, 0x6a, 0x96, 0x5c, 0x5a, 0x35, 0x3c, 0x93, 0x9a, 0x55, 0xe0, 0x40, - 0x99, 0x76, 0x88, 0xaf, 0x80, 0xb5, 0x07, 0x48, 0xef, 0x20, 0x3c, 0xa2, 0x83, 0x57, 0x31, 0x2d, - 0xd0, 0xe1, 0x5e, 0x0d, 0x18, 0x27, 0xef, 0xe1, 0xa1, 0x2a, 0x70, 0xb3, 0x68, 0x72, 0x53, 0x41, - 0x29, 0x34, 0x19, 0x9f, 0x9a, 0xc8, 0x76, 0x26, 0x7d, 0x55, 0xec, 0x4c, 0x40, 0xbb, 0x01, 0xdc, - 0x5c, 0xdb, 0xf0, 0x40, 0x6f, 0xb1, 0xc8, 0x35, 0x1c, 0x61, 0x1e, 0x58, 0x4a, 0x48, 0xb0, 0xcf, - 0x65, 0xf7, 0x97, 0x4c, 0x36, 0x20, 0xe7, 0x3d, 0xb0, 0x7c, 0xf2, 0xec, 0xe8, 0x37, 0x9b, 0xc3, - 0x3e, 0x27, 0x5b, 0xb6, 0x0c, 0xff, 0x57, 0x17, 0x0a, 0x44, 0xc3, 0x09, 0x0a, 0xcc, 0xad, 0x51, - 0x0b, 0x8c, 0x3a, 0x50, 0x66, 0xbb, 0x8e, 0x12, 0x4e, 0xa1, 0xc9, 0xd8, 0x6c, 0xe4, 0xf9, 0x16, - 0x42, 0xfa, 0x68, 0x33, 0x7a, 0x5b, 0x06, 0xa7, 0x63, 0x8f, 0xaf, 0x46, 0xe5, 0xf2, 0xd2, 0x27, - 0xf0, 0x68, 0xcb, 0x19, 0xf3, 0x5c, 0x87, 0x41, 0xfa, 0x2b, 0x84, 0xf1, 0x22, 0xf0, 0xa6, 0xd3, - 0xb3, 0x38, 0xe6, 0x98, 0x55, 0x60, 0x9e, 0x69, 0x81, 0xb0, 0x1a, 0xd3, 0xf7, 0x26, 0x08, 0xc1, - 0x11, 0x7f, 0x20, 0x5c, 0xc4, 0x74, 0xf1, 0x4c, 0x74, 0xec, 0xbf, 0x51, 0x88, 0x19, 0xfe, 0xbe, - 0x9b, 0x5c, 0x2c, 0x67, 0x64, 0xea, 0xd5, 0x5e, 0x26, 0xc5, 0xab, 0x24, 0x7a, 0x41, 0x80, 0xe7, - 0xdc, 0x22, 0xe8, 0x23, 0xb4, 0x63, 0x2e, 0xfd, 0xc3, 0x20, 0x8e, 0xb7, 0x21, 0x49, 0x0e, 0x0f, - 0x53, 0xb9, 0x6e, 0xf1, 0x0a, 0xf1, 0x82, 0xf8, 0x54, 0xfa, 0x90, 0x5d, 0x0c, 0xfc, 0xe8, 0xf1, - 0x80, 0xe7, 0x0b, 0xf7, 0xdc, 0xba, 0xc8, 0x21, 0x5b, 0x47, 0xde, 0x69, 0xcb, 0xfb, 0xa0, 0x78, - 0x67, 0xaa, 0x67, 0xde, 0x17, 0x81, 0xf7, 0xc8, 0xf9, 0x2a, 0x1e, 0x65, 0x1b, 0x8c, 0x43, 0xd5, - 0x68, 0x89, 0x1c, 0x13, 0x22, 0xe7, 0xbb, 0x44, 0xf2, 0x02, 0xb5, 0x5f, 0x6a, 0x44, 0xd2, 0x6f, - 0x34, 0x05, 0xe7, 0x83, 0x22, 0x8a, 0x0a, 0x95, 0xf1, 0x03, 0xf6, 0xf7, 0xa8, 0x02, 0x7a, 0x17, - 0x47, 0x19, 0x37, 0x79, 0x8d, 0x29, 0xdf, 0x3e, 0x44, 0xa9, 0x70, 0x0f, 0x53, 0x42, 0x29, 0x2f, - 0x30, 0x72, 0x51, 0xb3, 0xe1, 0xed, 0x4d, 0xa4, 0x07, 0x34, 0xb2, 0x84, 0x4f, 0x50, 0x28, 0x01, - 0xa5, 0xb6, 0x53, 0x36, 0x64, 0x4b, 0x60, 0xca, 0x90, 0x50, 0x3a, 0x7b, 0xc0, 0xb1, 0x28, 0x09, - 0x3f, 0x89, 0x16, 0x4d, 0xce, 0x33, 0x72, 0x1b, 0x2b, 0x45, 0xa8, 0x00, 0x87, 0xa2, 0x21, 0x63, - 0x50, 0x6c, 0x29, 0xc6, 0xfa, 0x50, 0x3c, 0x1d, 0xb0, 0xf5, 0x80, 0xdc, 0xd4, 0xfd, 0x10, 0x8f, - 0x15, 0x6d, 0x66, 0x16, 0x2a, 0xbd, 0x84, 0x71, 0x1f, 0xc2, 0x67, 0x9a, 0xf4, 0x2e, 0xe5, 0xb6, - 0xd3, 0x74, 0x3d, 0x32, 0x84, 0x12, 0xa1, 0xf4, 0x77, 0x08, 0xc7, 0x97, 0x6d, 0xd6, 0xe7, 0x09, - 0xfa, 0x3f, 0x1e, 0xae, 0x98, 0x05, 0xa8, 0x18, 0x25, 0xbb, 0xc2, 0x81, 0x06, 0x27, 0x29, 0x2e, - 0xe6, 0x16, 0xc4, 0x14, 0x39, 0x87, 0x8f, 0x53, 0xf0, 0x5c, 0xca, 0x8d, 0x92, 0x0d, 0x95, 0x22, - 0x53, 0xc2, 0xa9, 0xf0, 0x64, 0x4c, 0x1f, 0x96, 0x93, 0x0b, 0x62, 0x8e, 0x5c, 0xc4, 0x27, 0x03, - 0x90, 0x4c, 0x4a, 0x13, 0x1b, 0x11, 0x58, 0x22, 0x63, 0x32, 0x85, 0x92, 0x91, 0x7e, 0x18, 0xc5, - 0x09, 0xb9, 0x4e, 0x79, 0xa8, 0x96, 0x38, 0x54, 0xc9, 0x69, 0x1c, 0xe5, 0xe0, 0x98, 0x0e, 0x17, - 0x35, 0x15, 0xd3, 0x83, 0xd1, 0x3f, 0x68, 0x03, 0x09, 0x1c, 0xae, 0xd9, 0x45, 0xd9, 0x89, 0x74, - 0xff, 0x91, 0xa4, 0x70, 0xbc, 0x08, 0xcc, 0xa2, 0xb6, 0x68, 0xda, 0x4a, 0x5c, 0x3a, 0x6d, 0x9b, - 0x22, 0x49, 0x3c, 0xd4, 0xdc, 0x66, 0x65, 0x38, 0x85, 0x26, 0x87, 0xf4, 0xd6, 0x98, 0x5c, 0xc3, - 0x51, 0xb1, 0x29, 0xd2, 0x52, 0x7c, 0xea, 0x62, 0xaf, 0x1a, 0xed, 0xf6, 0x93, 0x5d, 0x16, 0x94, - 0x9c, 0xc3, 0xe9, 0x86, 0x1e, 0xf0, 0xc9, 0x07, 0x38, 0xde, 0xf6, 0x97, 0x1a, 0x64, 0xff, 0x52, - 0x5f, 0x72, 0x33, 0x7b, 0x3c, 0xa9, 0xd9, 0xae, 0x44, 0x2e, 0x63, 0xec, 0xae, 0x3b, 0x40, 0x0d, - 0xff, 0x3f, 0x44, 0x89, 0x89, 0x43, 0x99, 0xec, 0xd2, 0xbd, 0x6d, 0xc3, 0x7a, 0xb3, 0xa6, 0x62, - 0x02, 0xed, 0xcf, 0x74, 0x34, 0x96, 0xe3, 0x2f, 0xa3, 0xb1, 0x8c, 0xfc, 0xab, 0xc6, 0x32, 0x8d, - 0x87, 0xca, 0xc0, 0x45, 0x93, 0x08, 0x5a, 0xd4, 0x51, 0xcd, 0x45, 0x3f, 0x56, 0x96, 0x03, 0x32, - 0x8f, 0x71, 0x50, 0x82, 0x0c, 0x78, 0xd0, 0x06, 0xfa, 0x6c, 0x28, 0x31, 0x49, 0xcc, 0x03, 0x4f, - 0x5e, 0xc6, 0xf1, 0xb6, 0xdc, 0xf9, 0xd5, 0x74, 0x17, 0x36, 0x82, 0xca, 0xf3, 0x1f, 0xc9, 0x49, - 0x3c, 0x58, 0x37, 0x2b, 0xb5, 0x66, 0xd1, 0xc9, 0xc1, 0x74, 0xe8, 0x2d, 0x94, 0xbc, 0x8a, 0x13, - 0xdd, 0x79, 0xfa, 0x3b, 0xfc, 0xeb, 0x91, 0xa1, 0xc1, 0x44, 0x34, 0xfd, 0x29, 0x1e, 0x6e, 0x4f, - 0x3f, 0x99, 0xc6, 0x83, 0x36, 0x87, 0x2a, 0x53, 0x64, 0x8b, 0x9c, 0xe8, 0xa7, 0x5e, 0x74, 0x49, - 0x21, 0x17, 0x71, 0x54, 0x5e, 0xc3, 0x94, 0x90, 0x20, 0x2b, 0x5d, 0xe4, 0x9c, 0x1f, 0x14, 0xbb, - 0x18, 0xe0, 0x2e, 0x3c, 0x45, 0xf8, 0x54, 0xcf, 0xbf, 0x46, 0x92, 0xc4, 0xa7, 0x17, 0x73, 0x6b, - 0x86, 0x9e, 0xbf, 0x69, 0x2c, 0xac, 0xea, 0x37, 0x66, 0xd6, 0x8c, 0xf9, 0xdc, 0xc2, 0xcc, 0xad, - 0xe5, 0xb5, 0xc4, 0x00, 0x51, 0x71, 0xb2, 0x2b, 0xb6, 0xb0, 0xaa, 0x1b, 0x7a, 0xee, 0xe6, 0xf2, - 0xcc, 0x5c, 0x2e, 0x11, 0x22, 0x63, 0xf8, 0x54, 0x57, 0x3c, 0xbf, 0x36, 0xb3, 0x76, 0x2b, 0x9f, - 0x08, 0x93, 0x33, 0xf8, 0x3f, 0x5d, 0x21, 0x3d, 0x37, 0x33, 0x9f, 0x88, 0x90, 0x09, 0x9c, 0xda, - 0x17, 0x58, 0xc8, 0xe9, 0xfa, 0xd2, 0xca, 0xa2, 0xb1, 0x3a, 0x7b, 0x3d, 0x37, 0xb7, 0x96, 0x4f, - 0x0c, 0xf6, 0x40, 0xcd, 0xea, 0xab, 0xef, 0xe7, 0x56, 0x24, 0x38, 0xb7, 0x32, 0x97, 0xcb, 0x27, - 0xa2, 0x53, 0x3f, 0x0e, 0xe2, 0xf0, 0xcc, 0xcd, 0x25, 0xb2, 0x8d, 0x70, 0x78, 0x11, 0x38, 0x51, - 0x0f, 0xbc, 0x11, 0x88, 0xd6, 0x99, 0x1c, 0x3f, 0xe2, 0xc6, 0x90, 0xbe, 0xff, 0xe8, 0xa7, 0x10, - 0x6a, 0xfc, 0xa2, 0x5c, 0x29, 0x5d, 0xba, 0x6f, 0x65, 0xfc, 0x70, 0xa6, 0x6a, 0x3a, 0x66, 0x19, - 0xaa, 0xe0, 0xf0, 0x4c, 0xc1, 0x64, 0xb6, 0x95, 0xa9, 0xba, 0x8e, 0xcd, 0x5d, 0xfa, 0x7a, 0x1d, - 0x58, 0xc6, 0x76, 0x33, 0xb6, 0x53, 0xa2, 0x26, 0xe3, 0xb4, 0x66, 0xf1, 0x1a, 0x85, 0x0c, 0x05, - 0xb3, 0xf8, 0xe0, 0xe9, 0x9f, 0x5f, 0x87, 0x32, 0xe4, 0xb5, 0xe0, 0x36, 0xaf, 0xb5, 0x1a, 0x1b, - 0xd3, 0x3e, 0x69, 0x3d, 0x6f, 0x8a, 0x0b, 0x6d, 0x30, 0xb3, 0x49, 0x7e, 0x46, 0x38, 0xe2, 0xa7, - 0x9b, 0x8c, 0x1f, 0x5c, 0x08, 0xd2, 0x44, 0xea, 0xa8, 0x4a, 0x49, 0xdf, 0x7b, 0x79, 0x2e, 0xce, - 0x93, 0x89, 0x7e, 0x5c, 0x90, 0xdf, 0x11, 0x3e, 0x16, 0xdc, 0x8c, 0x48, 0x1f, 0xd7, 0xa6, 0xe4, - 0xb9, 0x43, 0x31, 0x81, 0x8f, 0xcf, 0x7d, 0x13, 0x6f, 0x1f, 0x62, 0xa2, 0xc6, 0xe0, 0x20, 0x07, - 0xeb, 0xd4, 0xe6, 0x20, 0x2c, 0xcc, 0x26, 0xaf, 0xf4, 0xb2, 0xd0, 0xec, 0x6c, 0xd9, 0xfd, 0x19, - 0xe9, 0x08, 0x6d, 0x4e, 0xa3, 0x0b, 0xc9, 0x95, 0xed, 0x2d, 0x14, 0xfa, 0x6d, 0x0b, 0x8d, 0xf5, - 0x58, 0xb5, 0x6c, 0x38, 0x3b, 0x5b, 0x08, 0x35, 0xb6, 0xd0, 0xf8, 0x11, 0x7d, 0xe9, 0xc1, 0xaf, - 0x4a, 0x28, 0x81, 0x66, 0xbf, 0x40, 0x8f, 0xaf, 0x86, 0xf5, 0x5b, 0xcb, 0x4f, 0x9e, 0xa9, 0x03, - 0x3b, 0xcf, 0xd4, 0x81, 0x17, 0xcf, 0x54, 0xf4, 0x59, 0x43, 0x45, 0xdf, 0x37, 0x54, 0xf4, 0xa8, - 0xa1, 0xa2, 0x27, 0x0d, 0x15, 0xfd, 0xd1, 0x50, 0xd1, 0xf3, 0x86, 0x3a, 0xf0, 0xa2, 0xa1, 0xa2, - 0x2f, 0x77, 0xd5, 0x81, 0xed, 0x5d, 0x15, 0x3d, 0xd9, 0x55, 0x07, 0x76, 0x76, 0xd5, 0x81, 0x8f, - 0xae, 0x95, 0x5d, 0xef, 0x6e, 0x39, 0x5b, 0x77, 0x2b, 0xe2, 0x7b, 0x24, 0x5b, 0x6b, 0xfb, 0x30, - 0xc9, 0x78, 0xd4, 0xad, 0xdb, 0x45, 0xa0, 0x99, 0x66, 0x58, 0xf3, 0x0a, 0x65, 0x57, 0x83, 0xfb, - 0xbc, 0xf9, 0x29, 0xb5, 0xf7, 0x45, 0x55, 0x88, 0x8a, 0x8f, 0x92, 0x37, 0xfe, 0x0a, 0x00, 0x00, - 0xff, 0xff, 0x39, 0x64, 0xe9, 0x18, 0x8e, 0x0e, 0x00, 0x00, + // 1462 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x57, 0x4d, 0x6f, 0x1b, 0x45, + 0x18, 0xce, 0xd8, 0x8e, 0x1b, 0x8f, 0xd3, 0xc4, 0x1d, 0xfa, 0xb1, 0x31, 0x65, 0x63, 0xdc, 0xa8, + 0x84, 0x82, 0xed, 0x2a, 0x50, 0x89, 0x46, 0x50, 0xc8, 0x87, 0x93, 0xa6, 0xa4, 0x49, 0xb5, 0x4e, + 0x0b, 0xe2, 0xc0, 0x6a, 0xbd, 0x7e, 0xed, 0x2e, 0xb5, 0x77, 0x97, 0x99, 0xb1, 0xd3, 0x08, 0x22, + 0xa1, 0x9e, 0x38, 0x22, 0x38, 0x20, 0xa1, 0x0a, 0x71, 0x41, 0x7c, 0xfc, 0x02, 0xa4, 0x5c, 0x7a, + 0xa3, 0xea, 0x01, 0x55, 0xf4, 0x92, 0x23, 0x75, 0x90, 0xe8, 0xb1, 0xff, 0x00, 0xb4, 0x33, 0x6b, + 0xc7, 0x76, 0x36, 0x89, 0xf9, 0x10, 0x27, 0xef, 0xcc, 0xfb, 0x3c, 0xcf, 0xce, 0x33, 0xef, 0x3b, + 0xaf, 0x67, 0xf1, 0x0b, 0x0d, 0x60, 0x59, 0xcb, 0xc9, 0x31, 0xf3, 0x26, 0xd4, 0x8c, 0x1c, 0xb3, + 0x38, 0xe4, 0xdc, 0x7a, 0xb1, 0x6a, 0x99, 0xba, 0x49, 0xeb, 0x25, 0xc3, 0xb5, 0xb2, 0x2e, 0x75, + 0xb8, 0x43, 0x88, 0x04, 0x66, 0x25, 0x30, 0xeb, 0x01, 0x93, 0x99, 0x8a, 0xc5, 0x6f, 0xd6, 0x8b, + 0x59, 0xd3, 0xa9, 0xe5, 0x2a, 0x4e, 0xc5, 0xc9, 0x09, 0x68, 0xb1, 0x5e, 0x16, 0x23, 0x31, 0x10, + 0x4f, 0x52, 0x22, 0x79, 0xba, 0xe2, 0x38, 0x95, 0x2a, 0xe4, 0x0c, 0xd7, 0xca, 0x19, 0xb6, 0xed, + 0x70, 0x83, 0x5b, 0x8e, 0xcd, 0xfc, 0xe8, 0xb3, 0x7e, 0xb4, 0xad, 0x01, 0x35, 0x97, 0x6f, 0xf8, + 0xc1, 0x64, 0xf7, 0x32, 0x81, 0x52, 0x87, 0xb6, 0x89, 0xdd, 0x31, 0xc7, 0xed, 0x54, 0x7d, 0xae, + 0x3b, 0xe8, 0x36, 0xb8, 0xce, 0x37, 0x5c, 0x68, 0x85, 0xc7, 0x03, 0xec, 0x3b, 0xc5, 0x0f, 0xc0, + 0xe4, 0x3e, 0x40, 0x0d, 0x00, 0x74, 0x0a, 0x8c, 0x75, 0xc7, 0x3b, 0x43, 0xe9, 0xee, 0x50, 0x03, + 0x18, 0xd8, 0x8d, 0x9e, 0xe5, 0xa5, 0x7a, 0x30, 0x16, 0xac, 0xeb, 0xdd, 0x88, 0x57, 0xf7, 0x22, + 0x58, 0x8e, 0x03, 0xa5, 0x46, 0xd9, 0xa1, 0x35, 0xdd, 0x35, 0xa8, 0x51, 0x03, 0x0e, 0x94, 0xe5, + 0x0e, 0xf0, 0xe5, 0xb3, 0x76, 0x01, 0xe9, 0x6d, 0x84, 0x47, 0x34, 0x70, 0xab, 0x86, 0x09, 0x1a, + 0x7c, 0x58, 0x07, 0xc6, 0xc9, 0x5b, 0x78, 0xa8, 0x06, 0xdc, 0x28, 0x19, 0xdc, 0x50, 0x50, 0x0a, + 0x4d, 0xc6, 0xa7, 0x26, 0xb2, 0xdd, 0x49, 0x5f, 0x15, 0x3b, 0xe3, 0xd3, 0xae, 0x02, 0x37, 0xd6, + 0x36, 0x5c, 0xd0, 0xda, 0x2c, 0x72, 0x19, 0x47, 0x98, 0x0b, 0xa6, 0x12, 0x12, 0xec, 0x33, 0xd9, + 0xbd, 0x25, 0x93, 0xf5, 0xc9, 0x05, 0x17, 0x4c, 0x8f, 0x3c, 0x3b, 0xfa, 0xd5, 0xe6, 0xb0, 0xc7, + 0xc9, 0x56, 0x4c, 0xdd, 0xfb, 0xd5, 0x84, 0x02, 0xc9, 0xe1, 0x04, 0x05, 0xe6, 0xd4, 0xa9, 0x09, + 0x7a, 0x03, 0x28, 0xb3, 0x1c, 0x5b, 0x09, 0xa7, 0xd0, 0x64, 0x6c, 0x36, 0xf2, 0x64, 0x0b, 0x21, + 0x6d, 0xb4, 0x15, 0xbd, 0x21, 0x83, 0xd3, 0xb1, 0x07, 0x97, 0xa2, 0x72, 0x79, 0xe9, 0x63, 0x78, + 0xb4, 0xed, 0x8c, 0xb9, 0x8e, 0xcd, 0x20, 0xfd, 0x39, 0xc2, 0x78, 0x11, 0x78, 0xcb, 0xe9, 0x69, + 0x1c, 0xb3, 0x8d, 0x1a, 0x30, 0xd7, 0x30, 0x41, 0x58, 0x8d, 0x69, 0xbb, 0x13, 0x84, 0xe0, 0x88, + 0x37, 0x10, 0x2e, 0x62, 0x9a, 0x78, 0x26, 0x1a, 0xf6, 0xde, 0x28, 0xc4, 0x74, 0x6f, 0xdf, 0x0d, + 0x2e, 0x96, 0x33, 0x32, 0xf5, 0x62, 0x90, 0x49, 0xf1, 0x2a, 0x89, 0x5e, 0x10, 0xe0, 0x39, 0xa7, + 0x04, 0xda, 0x08, 0xed, 0x9a, 0x4b, 0xff, 0x30, 0x88, 0xe3, 0x1d, 0x48, 0x92, 0xc7, 0xc3, 0x54, + 0xae, 0x5b, 0xbc, 0x42, 0xbc, 0x20, 0x3e, 0x95, 0x3e, 0x60, 0x17, 0x7d, 0x3f, 0x5a, 0xdc, 0xe7, + 0x79, 0xc2, 0x81, 0x5b, 0x17, 0x39, 0x60, 0xeb, 0xc8, 0xeb, 0x1d, 0x79, 0x1f, 0x14, 0xef, 0x4c, + 0x05, 0xe6, 0x7d, 0x11, 0x78, 0x40, 0xce, 0x57, 0xf1, 0x28, 0xdb, 0x60, 0x1c, 0x6a, 0x7a, 0x5b, + 0xe4, 0x88, 0x10, 0x39, 0xdb, 0x23, 0x52, 0x10, 0xa8, 0xbd, 0x52, 0x23, 0x92, 0x7e, 0xb5, 0x25, + 0x38, 0xef, 0x17, 0x51, 0x54, 0xa8, 0x8c, 0xef, 0xb3, 0xbf, 0x87, 0x15, 0xd0, 0x9b, 0x38, 0xca, + 0xb8, 0xc1, 0xeb, 0x4c, 0xf9, 0xe6, 0x2e, 0x4a, 0x85, 0x03, 0x4c, 0x09, 0xa5, 0x82, 0xc0, 0xc8, + 0x45, 0xcd, 0x86, 0xef, 0x6d, 0x22, 0xcd, 0xa7, 0x91, 0x25, 0x7c, 0x8c, 0x42, 0x19, 0x28, 0xb5, + 0xec, 0x8a, 0x2e, 0x5b, 0x02, 0x53, 0x86, 0x84, 0xd2, 0xe9, 0x7d, 0x8e, 0x45, 0x59, 0xf8, 0x49, + 0xb4, 0x69, 0x72, 0x9e, 0x91, 0x1b, 0x58, 0x29, 0x41, 0x15, 0x38, 0x94, 0x74, 0x19, 0x83, 0x52, + 0x5b, 0x31, 0xd6, 0x87, 0xe2, 0x49, 0x9f, 0xad, 0xf9, 0xe4, 0x96, 0xee, 0xbb, 0x78, 0xac, 0x64, + 0x31, 0xa3, 0x58, 0x0d, 0x12, 0xc6, 0x7d, 0x08, 0x9f, 0x6a, 0xd1, 0x7b, 0x94, 0x3b, 0x4e, 0xd3, + 0x95, 0xc8, 0x10, 0x4a, 0x84, 0xd2, 0xdf, 0x22, 0x1c, 0x5f, 0xb6, 0x58, 0x9f, 0x27, 0xe8, 0x79, + 0x3c, 0x5c, 0x35, 0x8a, 0x50, 0xd5, 0xcb, 0x56, 0x95, 0x03, 0xf5, 0x4f, 0x52, 0x5c, 0xcc, 0x2d, + 0x88, 0x29, 0x72, 0x06, 0x1f, 0xa5, 0xe0, 0x3a, 0x94, 0xeb, 0x65, 0x0b, 0xaa, 0x25, 0xa6, 0x84, + 0x53, 0xe1, 0xc9, 0x98, 0x36, 0x2c, 0x27, 0x17, 0xc4, 0x1c, 0x39, 0x8f, 0x8f, 0xfb, 0x20, 0x99, + 0x94, 0x16, 0x36, 0x22, 0xb0, 0x44, 0xc6, 0x64, 0x0a, 0x25, 0x23, 0x7d, 0x37, 0x8a, 0x13, 0x72, + 0x9d, 0xf2, 0x50, 0x2d, 0x71, 0xa8, 0x91, 0x93, 0x38, 0xca, 0xc1, 0x36, 0x6c, 0x2e, 0x6a, 0x2a, + 0xa6, 0xf9, 0xa3, 0x7f, 0xd0, 0x06, 0x12, 0x38, 0x5c, 0xb7, 0x4a, 0xb2, 0x13, 0x69, 0xde, 0x23, + 0x49, 0xe1, 0x78, 0x09, 0x98, 0x49, 0x2d, 0xd1, 0xb4, 0x95, 0xb8, 0x74, 0xda, 0x31, 0x45, 0x92, + 0x78, 0xa8, 0xb5, 0xcd, 0xca, 0x70, 0x0a, 0x4d, 0x0e, 0x69, 0xed, 0x31, 0xb9, 0x8c, 0xa3, 0x62, + 0x53, 0xa4, 0xa5, 0xf8, 0xd4, 0xf9, 0xa0, 0x1a, 0xed, 0xf5, 0x93, 0x5d, 0x16, 0x94, 0xbc, 0xcd, + 0xe9, 0x86, 0xe6, 0xf3, 0xc9, 0x3b, 0x38, 0xde, 0xf1, 0x97, 0xea, 0x67, 0xff, 0x42, 0x5f, 0x72, + 0x33, 0xbb, 0x3c, 0xa9, 0xd9, 0xa9, 0x44, 0x2e, 0x62, 0xec, 0xac, 0xdb, 0x40, 0x75, 0xef, 0x3f, + 0x44, 0x89, 0x89, 0x43, 0x99, 0xec, 0xd1, 0xbd, 0x61, 0xc1, 0x7a, 0xab, 0xa6, 0x62, 0x02, 0xed, + 0xcd, 0x74, 0x35, 0x96, 0xa3, 0xff, 0x45, 0x63, 0x19, 0xf9, 0x57, 0x8d, 0x65, 0x1a, 0x0f, 0x55, + 0x80, 0x8b, 0x26, 0xe1, 0xb7, 0xa8, 0xc3, 0x9a, 0x8b, 0x76, 0xa4, 0x22, 0x07, 0x64, 0x1e, 0x63, + 0xbf, 0x04, 0x19, 0x70, 0xbf, 0x0d, 0xf4, 0xd9, 0x50, 0x62, 0x92, 0x58, 0x00, 0x9e, 0xbc, 0x88, + 0xe3, 0x1d, 0xb9, 0xf3, 0xaa, 0xe9, 0x16, 0x6c, 0xf8, 0x95, 0xe7, 0x3d, 0x92, 0xe3, 0x78, 0xb0, + 0x61, 0x54, 0xeb, 0xad, 0xa2, 0x93, 0x83, 0xe9, 0xd0, 0x6b, 0x28, 0x79, 0x09, 0x27, 0x7a, 0xf3, + 0xf4, 0x77, 0xf8, 0x57, 0x22, 0x43, 0x83, 0x89, 0x68, 0xfa, 0x63, 0x3c, 0xdc, 0x99, 0x7e, 0x32, + 0x8d, 0x07, 0x2d, 0x0e, 0x35, 0xa6, 0xc8, 0x16, 0x39, 0xd1, 0x4f, 0xbd, 0x68, 0x92, 0x42, 0xce, + 0xe3, 0xa8, 0xbc, 0x86, 0x29, 0x21, 0x41, 0x56, 0x7a, 0xc8, 0x79, 0x2f, 0x28, 0x76, 0xd1, 0xc7, + 0x9d, 0x7b, 0x84, 0xf0, 0x89, 0xc0, 0xbf, 0x46, 0x92, 0xc4, 0x27, 0x17, 0xf3, 0x6b, 0xba, 0x56, + 0xb8, 0xa6, 0x2f, 0xac, 0x6a, 0x57, 0x67, 0xd6, 0xf4, 0xf9, 0xfc, 0xc2, 0xcc, 0xf5, 0xe5, 0xb5, + 0xc4, 0x00, 0x51, 0x71, 0xb2, 0x27, 0xb6, 0xb0, 0xaa, 0xe9, 0x5a, 0xfe, 0xda, 0xf2, 0xcc, 0x5c, + 0x3e, 0x11, 0x22, 0x63, 0xf8, 0x44, 0x4f, 0xbc, 0xb0, 0x36, 0xb3, 0x76, 0xbd, 0x90, 0x08, 0x93, + 0x53, 0xf8, 0x99, 0x9e, 0x90, 0x96, 0x9f, 0x99, 0x4f, 0x44, 0xc8, 0x04, 0x4e, 0xed, 0x09, 0x2c, + 0xe4, 0x35, 0x6d, 0x69, 0x65, 0x51, 0x5f, 0x9d, 0xbd, 0x92, 0x9f, 0x5b, 0x2b, 0x24, 0x06, 0x03, + 0x50, 0xb3, 0xda, 0xea, 0xdb, 0xf9, 0x15, 0x09, 0xce, 0xaf, 0xcc, 0xe5, 0x0b, 0x89, 0xe8, 0xd4, + 0x77, 0x51, 0x1c, 0x9e, 0xb9, 0xb6, 0x44, 0xfe, 0x40, 0x38, 0xbc, 0x08, 0x9c, 0xa8, 0xfb, 0xde, + 0x08, 0x44, 0xeb, 0x4c, 0x8e, 0x1f, 0x72, 0x63, 0x48, 0x7f, 0x8d, 0xee, 0xff, 0x14, 0x42, 0xcd, + 0x9f, 0x15, 0xb3, 0x7c, 0xe1, 0xb6, 0x99, 0xf1, 0xe2, 0x99, 0x9a, 0x61, 0x1b, 0x15, 0xa8, 0x81, + 0xcd, 0x33, 0x45, 0x83, 0x59, 0x66, 0xa6, 0xe6, 0xd8, 0x16, 0x77, 0xe8, 0xcb, 0x81, 0x10, 0xc6, + 0x0d, 0xbb, 0x64, 0xd0, 0x52, 0x1b, 0xd5, 0x00, 0x96, 0xb1, 0x9c, 0x8c, 0x65, 0x97, 0xa9, 0xc1, + 0x38, 0xad, 0x9b, 0xbc, 0x4e, 0x21, 0x43, 0xc1, 0x28, 0xdd, 0x79, 0xf4, 0xfb, 0x17, 0xa1, 0x0c, + 0x79, 0xc9, 0xbf, 0xf4, 0xe7, 0xda, 0xfd, 0x8f, 0xe5, 0x3e, 0x6a, 0x3f, 0x6f, 0x8a, 0x7b, 0xaf, + 0x3f, 0xb3, 0x49, 0x76, 0x10, 0x8e, 0x78, 0x55, 0x41, 0xc6, 0xf7, 0xaf, 0x17, 0xe9, 0x35, 0x75, + 0x58, 0x41, 0xa5, 0xbf, 0xfc, 0xdf, 0xcd, 0x9e, 0x25, 0x13, 0xfd, 0x98, 0x25, 0x7f, 0x22, 0x7c, + 0xc4, 0xbf, 0x67, 0x91, 0x3e, 0x2e, 0x61, 0xc9, 0x33, 0x07, 0x62, 0x7c, 0xbb, 0x3f, 0x7a, 0x56, + 0xdf, 0x3f, 0xc0, 0x6a, 0x9d, 0xc1, 0x61, 0x3e, 0x05, 0x24, 0xd8, 0xe4, 0x3a, 0xb5, 0x38, 0x08, + 0x97, 0xb3, 0xc9, 0x37, 0x82, 0x5c, 0xb6, 0x5a, 0x69, 0x76, 0x6f, 0x6e, 0xbb, 0x42, 0x9b, 0xd3, + 0xe8, 0x5c, 0x72, 0xe5, 0xde, 0x16, 0x0a, 0xfd, 0xba, 0x85, 0xc6, 0x02, 0x8c, 0xc9, 0x0e, 0xb7, + 0xbd, 0x85, 0x50, 0x73, 0x0b, 0x8d, 0x1f, 0xd2, 0x08, 0xef, 0xfc, 0xa2, 0x84, 0x12, 0x68, 0xf6, + 0x53, 0xf4, 0xe0, 0x52, 0x58, 0xbb, 0xbe, 0xfc, 0xf0, 0xb1, 0x3a, 0xb0, 0xfd, 0x58, 0x1d, 0x78, + 0xfa, 0x58, 0x45, 0x9f, 0x34, 0x55, 0xf4, 0x7d, 0x53, 0x45, 0xf7, 0x9b, 0x2a, 0x7a, 0xd8, 0x54, + 0xd1, 0x6f, 0x4d, 0x15, 0x3d, 0x69, 0xaa, 0x03, 0x4f, 0x9b, 0x2a, 0xfa, 0x6c, 0x47, 0x1d, 0xb8, + 0xb7, 0xa3, 0xa2, 0x87, 0x3b, 0xea, 0xc0, 0xf6, 0x8e, 0x3a, 0xf0, 0xde, 0xe5, 0x8a, 0xe3, 0xde, + 0xaa, 0x64, 0x1b, 0x4e, 0x55, 0x7c, 0x00, 0x65, 0xeb, 0x1d, 0x5f, 0x42, 0x19, 0x97, 0x3a, 0x0d, + 0xab, 0x04, 0x34, 0xd3, 0x0a, 0xe7, 0xdc, 0x62, 0xc5, 0xc9, 0xc1, 0x6d, 0xde, 0xfa, 0x76, 0xdb, + 0xfd, 0x84, 0x2b, 0x46, 0xc5, 0x57, 0xd0, 0x2b, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x21, 0xbb, + 0xfa, 0x78, 0xff, 0x0e, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/site/public_crudapi.vesapi.go b/pbgo/extschema/schema/site/public_crudapi.vesapi.go index 4ec97b0db..5adcd364b 100644 --- a/pbgo/extschema/schema/site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/site/public_crudapi.vesapi.go @@ -1940,10 +1940,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2002,10 +2006,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2405,6 +2413,33 @@ var APISwaggerJSON string = `{ "x-displayname": "Virtual Network Type", "x-ves-proto-enum": "ves.io.schema.VirtualNetworkType" }, + "schemasiteNode": { + "type": "object", + "description": "Node Information for connectivity across sites.", + "title": "Node", + "x-displayname": "Node", + "x-ves-proto-message": "ves.io.schema.site.Node", + "properties": { + "name": { + "type": "string", + "description": " Name of the master/main node on the site.", + "title": "name", + "x-displayname": "Node name" + }, + "sli_address": { + "type": "string", + "description": " Site Local Inside IP address.", + "title": "sli_address", + "x-displayname": "Site Local Inside IP addresses" + }, + "slo_address": { + "type": "string", + "description": " Site Local Outside IP address.", + "title": "slo_address", + "x-displayname": "Site Local Outside IP addresses" + } + } + }, "siteActiveState": { "type": "string", "description": "Active/Backup state for the interface\n\nUnknown state\nInterface in active state\nInterface in backup state", @@ -3473,6 +3508,14 @@ var APISwaggerJSON string = `{ "format": "boolean", "x-displayname": "Local K8s Cluster Access Enabled" }, + "main_nodes": { + "type": "array", + "description": " Connectivity information of main/master nodes to create a full mesh of Phobos services across all CEs in a site-mesh-group or dc-cluster-group.", + "items": { + "$ref": "#/definitions/schemasiteNode" + }, + "x-displayname": "Main Nodes" + }, "multus_enabled": { "type": "boolean", "description": " Indicates that Multus cni is enabled on the site", @@ -4266,12 +4309,12 @@ var APISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { @@ -5046,6 +5089,12 @@ var APISwaggerJSON string = `{ "title": "url", "x-displayname": "URL" }, + "verNodeIp": { + "type": "string", + "description": " The VER node IP in the local site from which the connection is setup", + "title": "verNodeIP", + "x-displayname": "VER Node IP" + }, "verNodeName": { "type": "string", "description": " The VER node in the local site from which the connection is setup", diff --git a/pbgo/extschema/schema/site/public_custom_data_k8s_api.pb.go b/pbgo/extschema/schema/site/public_custom_data_k8s_api.pb.go index f04cb8850..8c5b5fe01 100644 --- a/pbgo/extschema/schema/site/public_custom_data_k8s_api.pb.go +++ b/pbgo/extschema/schema/site/public_custom_data_k8s_api.pb.go @@ -1847,166 +1847,168 @@ func init() { } var fileDescriptor_2be8681db2efece2 = []byte{ - // 2544 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x9b, 0x5f, 0x8c, 0x1b, 0x47, - 0x1d, 0xc7, 0x6f, 0x6c, 0x5f, 0x2e, 0x9d, 0x23, 0x97, 0xeb, 0x10, 0xc0, 0x71, 0x82, 0x73, 0xdd, - 0x90, 0xf6, 0x72, 0xad, 0xed, 0xdc, 0x35, 0x09, 0x97, 0x48, 0x6d, 0xb9, 0x3f, 0x0e, 0xb9, 0x24, - 0xf6, 0xb9, 0xb6, 0xef, 0xd2, 0x38, 0x09, 0x66, 0x6d, 0xcf, 0x39, 0x9b, 0xb3, 0x77, 0x96, 0x9d, - 0xb5, 0xc9, 0x25, 0x8d, 0xda, 0x26, 0x94, 0xaa, 0x02, 0xa4, 0x8a, 0x20, 0x85, 0x82, 0x04, 0x42, - 0x88, 0x8a, 0x97, 0x3c, 0x54, 0xbc, 0x20, 0x2a, 0xa4, 0x48, 0x08, 0x35, 0x02, 0xa9, 0x84, 0xf0, - 0x12, 0x78, 0x22, 0x17, 0x1e, 0xa0, 0x80, 0x94, 0x97, 0x3c, 0xf0, 0x82, 0xd0, 0xce, 0xee, 0xda, - 0xbb, 0xbe, 0xb9, 0xf3, 0x7a, 0x6d, 0x0e, 0x5e, 0x4e, 0xf6, 0xce, 0x6f, 0xbe, 0xbf, 0x99, 0xdf, - 0x7c, 0x66, 0x7f, 0x9e, 0x3f, 0x07, 0x9f, 0xaf, 0x63, 0x1a, 0x95, 0x48, 0x8c, 0x16, 0x2f, 0xe0, - 0xaa, 0x18, 0xa3, 0x92, 0x86, 0x63, 0x4a, 0xad, 0x50, 0x91, 0x8a, 0xf9, 0x62, 0x8d, 0x6a, 0xa4, - 0x9a, 0x2f, 0x89, 0x9a, 0x98, 0x5f, 0x9e, 0xa4, 0x79, 0x51, 0x91, 0xa2, 0x8a, 0x4a, 0x34, 0x82, - 0x90, 0x51, 0x29, 0x6a, 0x54, 0x8a, 0xea, 0x95, 0x42, 0x91, 0xb2, 0xa4, 0x5d, 0xa8, 0x15, 0xa2, - 0x45, 0x52, 0x8d, 0x95, 0x49, 0x99, 0xc4, 0x98, 0x69, 0xa1, 0xb6, 0xc4, 0xbe, 0xb1, 0x2f, 0xec, - 0x93, 0x21, 0x11, 0xda, 0x5d, 0x26, 0xa4, 0x5c, 0xc1, 0x31, 0x51, 0x91, 0x62, 0xa2, 0x2c, 0x13, - 0x4d, 0xd4, 0x24, 0x22, 0x53, 0xb3, 0x54, 0x58, 0x9e, 0x64, 0xad, 0x62, 0xa5, 0x8a, 0x42, 0x63, - 0xf5, 0xf1, 0x58, 0x19, 0xcb, 0x58, 0x15, 0x35, 0x5c, 0x32, 0x6d, 0xf6, 0xda, 0x6c, 0x0a, 0xa2, - 0x56, 0xbc, 0xc0, 0x33, 0x1a, 0xe5, 0x18, 0x15, 0xb0, 0x26, 0xae, 0xb5, 0xb4, 0xbb, 0x2c, 0x12, - 0x15, 0xf3, 0xd4, 0x76, 0x39, 0x83, 0x45, 0x14, 0x7b, 0x9b, 0x77, 0x3a, 0x0b, 0xb5, 0x15, 0x05, - 0x5b, 0x45, 0xbb, 0x9d, 0x45, 0x75, 0xb1, 0x22, 0x95, 0x44, 0x0d, 0x5b, 0x9e, 0x5b, 0x4a, 0x31, - 0xc5, 0x72, 0xbd, 0x45, 0x7c, 0xa4, 0xc5, 0x46, 0xc2, 0x5f, 0xcd, 0x3b, 0x2c, 0x84, 0x31, 0xb8, - 0x23, 0x29, 0x56, 0x31, 0x55, 0xc4, 0x22, 0x3e, 0x25, 0x51, 0x2d, 0x8d, 0xbf, 0x52, 0xc3, 0x54, - 0x43, 0x08, 0x06, 0xf4, 0xf1, 0x09, 0x82, 0x11, 0x30, 0xfa, 0x44, 0x9a, 0x7d, 0x16, 0xf6, 0xc1, - 0xed, 0x49, 0x52, 0x6a, 0x6b, 0x36, 0x0d, 0x87, 0x52, 0xa4, 0x64, 0xb7, 0xda, 0x0d, 0x9f, 0x90, - 0x2d, 0x27, 0xa6, 0x69, 0xf3, 0x41, 0x43, 0xc3, 0x67, 0xd3, 0xc8, 0xc2, 0x91, 0x14, 0x56, 0xa9, - 0x44, 0x35, 0x2c, 0x6b, 0x8b, 0xa4, 0x52, 0xab, 0xe2, 0x99, 0x8a, 0x28, 0x55, 0xbb, 0x53, 0x1d, - 0x87, 0xbb, 0x5a, 0x55, 0x79, 0x9d, 0xb1, 0x57, 0x39, 0x06, 0x51, 0x06, 0xab, 0x75, 0xc9, 0x19, - 0x9d, 0xce, 0x5d, 0x1f, 0x87, 0x3b, 0xe2, 0x72, 0x49, 0x21, 0x92, 0xac, 0xd1, 0xae, 0x95, 0x66, - 0x88, 0xbc, 0x24, 0x95, 0x13, 0xa2, 0xd2, 0x9d, 0x52, 0x1c, 0x3e, 0x99, 0xc1, 0x45, 0x15, 0x6b, - 0xdd, 0xc9, 0xcc, 0xc1, 0x4f, 0xcd, 0x62, 0xa5, 0x42, 0x56, 0xaa, 0x58, 0xd6, 0xba, 0xee, 0xdb, - 0xac, 0x88, 0xab, 0x44, 0xce, 0x74, 0xdb, 0xa8, 0x13, 0xf0, 0xd3, 0x19, 0x4d, 0xd4, 0xf0, 0x52, - 0xad, 0x92, 0xe9, 0x41, 0x07, 0xd3, 0x58, 0xa9, 0x48, 0x45, 0xb1, 0x6b, 0xa9, 0x69, 0x38, 0x74, - 0x82, 0x14, 0xba, 0xd3, 0x38, 0x06, 0xd1, 0x8c, 0x4a, 0xe4, 0xae, 0x75, 0x6e, 0xfa, 0xe0, 0xbe, - 0x45, 0x49, 0xd5, 0x6a, 0x62, 0x25, 0x21, 0x16, 0x2f, 0x48, 0x32, 0x9e, 0x93, 0xa9, 0x26, 0xca, - 0x45, 0x4c, 0x13, 0x58, 0x53, 0xa5, 0x22, 0xf5, 0xac, 0x8d, 0x2e, 0xc2, 0xed, 0x55, 0xa6, 0x91, - 0xa7, 0xb8, 0x82, 0x8b, 0x1a, 0x51, 0x83, 0xfe, 0x11, 0xff, 0xe8, 0xd0, 0xc4, 0xa1, 0xe8, 0xda, - 0x24, 0x10, 0xdd, 0xb0, 0x15, 0xd9, 0x15, 0x05, 0x4f, 0xc3, 0x5f, 0xfc, 0xed, 0xb6, 0xbf, 0xff, - 0xdb, 0xc0, 0x17, 0x04, 0xe9, 0x21, 0x43, 0x39, 0x63, 0x0a, 0xa3, 0xfd, 0x10, 0x52, 0x4d, 0x54, - 0xb5, 0xbc, 0x26, 0x55, 0x71, 0x30, 0xa0, 0xb7, 0xc2, 0xb4, 0x57, 0xfd, 0xdf, 0x0d, 0x80, 0xf4, - 0x13, 0xac, 0x34, 0x2b, 0x55, 0x31, 0xda, 0x07, 0xb7, 0x62, 0xb9, 0x64, 0x18, 0xf6, 0xaf, 0x31, - 0x1c, 0xc0, 0x72, 0x49, 0x37, 0x13, 0x28, 0x7c, 0xba, 0x5d, 0x60, 0xa8, 0x42, 0x64, 0x8a, 0xd1, - 0x1c, 0x0c, 0xe8, 0x89, 0x2e, 0x08, 0x46, 0xfc, 0xa3, 0x83, 0x1e, 0x3a, 0x37, 0x2b, 0x6a, 0x62, - 0x9a, 0x49, 0x08, 0x1f, 0x03, 0xf8, 0x54, 0x5b, 0x5b, 0xdd, 0xa1, 0x9e, 0x22, 0xd8, 0x28, 0x78, - 0x8d, 0x66, 0x9a, 0x49, 0xa0, 0x67, 0x61, 0xa0, 0x26, 0x4b, 0x5a, 0xd0, 0xcf, 0xa4, 0x3e, 0xd3, - 0x22, 0xb5, 0x20, 0x4b, 0x9a, 0x61, 0xac, 0x1b, 0xa1, 0x84, 0xd9, 0x51, 0x1f, 0xeb, 0xe8, 0x11, - 0x4f, 0x7e, 0x6d, 0x9d, 0x7d, 0x0c, 0xda, 0xb0, 0x67, 0xd9, 0xa3, 0xf3, 0x70, 0x4b, 0x45, 0x2c, - 0xe0, 0x0a, 0x35, 0x63, 0x1c, 0xf7, 0xec, 0x3a, 0x7a, 0x8a, 0xe9, 0xc4, 0x65, 0x4d, 0x5d, 0x49, - 0x9b, 0xa2, 0x68, 0x02, 0x6e, 0xa9, 0x8b, 0x95, 0x1a, 0xa6, 0x66, 0xcf, 0x42, 0x2d, 0xf2, 0x86, - 0xc4, 0xa2, 0x6e, 0x92, 0x36, 0x2d, 0x43, 0x47, 0xe0, 0xa0, 0x4d, 0x0a, 0x0d, 0x43, 0xff, 0x32, - 0x5e, 0x31, 0xe7, 0x85, 0xfe, 0x11, 0xed, 0x80, 0xfd, 0xcc, 0xd4, 0x9c, 0x12, 0xc6, 0x97, 0xa3, - 0xbe, 0x49, 0x20, 0xfc, 0xd6, 0x07, 0x51, 0x8a, 0x94, 0xba, 0x9f, 0x60, 0xa7, 0xd7, 0x9b, 0x60, - 0x02, 0x2f, 0x3e, 0x4d, 0x97, 0x9b, 0x3f, 0x9b, 0x50, 0x10, 0x0e, 0x2c, 0x49, 0x15, 0x0d, 0xab, - 0x34, 0xb8, 0x85, 0xf5, 0xc0, 0xfa, 0x8a, 0x5e, 0x84, 0x5b, 0xcb, 0x2a, 0xa9, 0x29, 0xf9, 0xc2, - 0x4a, 0x70, 0x80, 0xb5, 0x7e, 0xef, 0xc6, 0xad, 0x67, 0x61, 0x4f, 0x0f, 0xb0, 0x4a, 0xd3, 0x2b, - 0x42, 0x02, 0x7e, 0xd2, 0x11, 0x4c, 0x73, 0x52, 0x1e, 0x76, 0x4c, 0xca, 0x36, 0x01, 0xb1, 0x41, - 0xf9, 0x3e, 0x60, 0xbf, 0x5c, 0xec, 0xd3, 0xed, 0xb0, 0x63, 0xba, 0xb9, 0x88, 0xad, 0x97, 0xb9, - 0x75, 0xd4, 0x31, 0xb7, 0x9e, 0x6e, 0xef, 0xc4, 0xd6, 0xe6, 0xdf, 0x01, 0x3b, 0x50, 0x8d, 0x59, - 0x73, 0xa2, 0x65, 0xd6, 0x4c, 0xb8, 0x13, 0xfd, 0x3f, 0x98, 0x22, 0x63, 0xff, 0x68, 0xf7, 0x1e, - 0xd4, 0x1b, 0x8b, 0x76, 0xc3, 0xe0, 0x62, 0x62, 0x2e, 0x9f, 0x88, 0x67, 0xd3, 0x73, 0x33, 0xf9, - 0xec, 0x99, 0x54, 0x3c, 0x3f, 0x97, 0xcc, 0x4f, 0x9f, 0xc9, 0xc6, 0x33, 0xc3, 0x7d, 0xe8, 0xb3, - 0x70, 0x67, 0x6b, 0xe9, 0xfc, 0x42, 0xd6, 0x2c, 0x06, 0x68, 0x2f, 0xdc, 0xc3, 0xa9, 0x3c, 0x9b, - 0x9e, 0x4f, 0xe5, 0x53, 0x53, 0x33, 0x27, 0xe3, 0xd9, 0xcc, 0xb0, 0x0f, 0x7d, 0x0e, 0x8e, 0xf0, - 0x34, 0x1c, 0x56, 0x7e, 0x14, 0x86, 0x21, 0x8e, 0x94, 0x55, 0x1e, 0x40, 0x7b, 0xe0, 0x2e, 0x9e, - 0x8a, 0x65, 0xd0, 0x3f, 0x76, 0x15, 0x0a, 0x1b, 0xf6, 0x96, 0x85, 0x11, 0x3d, 0x09, 0xb7, 0xe9, - 0x32, 0xc9, 0xa9, 0x44, 0x3c, 0x93, 0x9a, 0x9a, 0x89, 0x0f, 0xf7, 0xa1, 0x4f, 0xc0, 0xad, 0xd6, - 0xa3, 0x61, 0x80, 0xb6, 0xc3, 0x41, 0xfd, 0xdb, 0xdc, 0x31, 0xe3, 0x81, 0xcf, 0xaa, 0x31, 0x77, - 0x2c, 0x9f, 0x59, 0x98, 0x4e, 0xc6, 0xb3, 0xc3, 0x7e, 0x84, 0xe0, 0x90, 0xf9, 0x68, 0xf1, 0xd4, - 0x54, 0x32, 0x3f, 0x37, 0x3b, 0x1c, 0x18, 0xfb, 0xa3, 0x83, 0x79, 0x2b, 0xb4, 0xa9, 0xf9, 0xd9, - 0x0d, 0x42, 0xdb, 0x5a, 0xda, 0x12, 0x5a, 0x4e, 0xe5, 0xb5, 0xa1, 0xe5, 0x69, 0xac, 0x0d, 0x2d, - 0x47, 0xca, 0x11, 0x5a, 0x9e, 0x4a, 0x33, 0xb4, 0x17, 0xe1, 0xf6, 0x96, 0x57, 0x87, 0x1e, 0x15, - 0xbd, 0x4e, 0x4b, 0x1c, 0xad, 0x47, 0x46, 0x1c, 0xf5, 0x6f, 0x8e, 0x38, 0x9a, 0x0f, 0xec, 0x71, - 0x34, 0x1f, 0x35, 0xe2, 0x38, 0xf1, 0x93, 0x38, 0x1c, 0x9e, 0x61, 0x2b, 0x5f, 0x7d, 0x1e, 0x9d, - 0x9c, 0xcc, 0x4c, 0xa5, 0xe6, 0xd0, 0xef, 0x01, 0xdc, 0xe6, 0x58, 0x5d, 0xa1, 0x51, 0xde, 0x3c, - 0xe4, 0x2d, 0xc0, 0x42, 0x4f, 0x45, 0x8d, 0x95, 0x65, 0x54, 0x5f, 0x3f, 0xeb, 0x2b, 0xcb, 0x68, - 0x7d, 0xdc, 0x69, 0x29, 0xd0, 0x3b, 0x3f, 0xf7, 0x81, 0xd5, 0x0f, 0x83, 0xcf, 0x2d, 0x1d, 0xba, - 0x54, 0x8c, 0xe8, 0x0b, 0x5e, 0x4d, 0x2c, 0x2e, 0x47, 0x0a, 0x22, 0x95, 0x8a, 0x91, 0x2a, 0x91, - 0x25, 0x8d, 0xa8, 0xcf, 0xe9, 0x4b, 0xc0, 0x88, 0x44, 0x22, 0xcb, 0x93, 0x34, 0xa2, 0x62, 0xb1, - 0x74, 0xed, 0x0f, 0x7f, 0xb9, 0xe1, 0x3b, 0x82, 0x3e, 0x6f, 0x2e, 0xd7, 0x63, 0x8d, 0x34, 0x43, - 0x63, 0x74, 0x85, 0x6a, 0xb8, 0x6a, 0x2c, 0xe6, 0xaf, 0xe8, 0x7f, 0xaf, 0xb2, 0x65, 0x6d, 0x7d, - 0xdc, 0x66, 0x84, 0x7e, 0x09, 0xe0, 0x56, 0x6b, 0x15, 0x88, 0xb8, 0xaf, 0xeb, 0x96, 0x35, 0x62, - 0x68, 0x37, 0xb7, 0x27, 0xa6, 0x91, 0x20, 0x7b, 0xee, 0xc4, 0x41, 0x34, 0xd1, 0x59, 0x27, 0x48, - 0x09, 0x53, 0xf4, 0x7a, 0x00, 0x0e, 0x98, 0xcb, 0x53, 0xb4, 0xde, 0xfb, 0xdc, 0xde, 0xfa, 0x5d, - 0xbc, 0xd6, 0x9b, 0x36, 0xc2, 0xcf, 0xfc, 0x5e, 0x5a, 0xff, 0xf1, 0x87, 0xc1, 0xc7, 0x00, 0x3e, - 0x6b, 0x3e, 0x35, 0x7c, 0x47, 0x74, 0xdf, 0x11, 0x63, 0xef, 0x44, 0x7f, 0xb1, 0x2f, 0x4f, 0x52, - 0x51, 0x91, 0x22, 0x0a, 0x29, 0x55, 0xf4, 0x96, 0x26, 0xa1, 0xbf, 0x8c, 0x35, 0xf4, 0xc5, 0x36, - 0x1d, 0x1e, 0x3d, 0x2b, 0x46, 0x2e, 0x9f, 0x1f, 0x3d, 0x1b, 0x11, 0x23, 0x97, 0x0f, 0x44, 0x8e, - 0x9c, 0x1f, 0x3b, 0x6b, 0x7e, 0xd8, 0xff, 0xd2, 0x7e, 0x2b, 0x0c, 0x0a, 0x29, 0x51, 0x54, 0x37, - 0xf4, 0x48, 0x0f, 0xf4, 0x6c, 0x55, 0x37, 0x34, 0xd7, 0xfd, 0xb2, 0x71, 0x7b, 0x0d, 0x8d, 0x77, - 0x34, 0x6e, 0x7a, 0xc5, 0xdc, 0x09, 0x74, 0xdc, 0x23, 0xb1, 0xb1, 0x2b, 0x8d, 0xcf, 0x57, 0x8d, - 0xce, 0xdf, 0xe8, 0x87, 0x3b, 0xd7, 0xdd, 0x5d, 0x40, 0x07, 0xb9, 0x50, 0xb4, 0xd9, 0x8c, 0x08, - 0x45, 0xb8, 0x98, 0xac, 0x57, 0x4b, 0x78, 0x27, 0xe0, 0x11, 0x9c, 0x5b, 0x3e, 0xf8, 0x82, 0x2b, - 0x70, 0x1a, 0xae, 0xeb, 0xcc, 0x75, 0x51, 0x77, 0xcd, 0x50, 0xfa, 0xb2, 0x31, 0xf4, 0x67, 0x7a, - 0x81, 0x12, 0xcf, 0x09, 0x45, 0x6f, 0x03, 0xc3, 0xc5, 0x1b, 0x60, 0x33, 0xf1, 0xe2, 0xb6, 0x85, - 0x01, 0xf7, 0x63, 0x80, 0x66, 0x3a, 0x23, 0x8e, 0xab, 0x95, 0x3b, 0x87, 0x72, 0x3d, 0x61, 0x90, - 0x1f, 0xb5, 0x7f, 0x02, 0xb8, 0x83, 0xb7, 0x3b, 0x85, 0x62, 0x6e, 0x80, 0xb4, 0xb3, 0x38, 0xea, - 0x86, 0x45, 0x86, 0xe1, 0x65, 0xcf, 0x2f, 0xdf, 0x2f, 0xa0, 0x17, 0xbb, 0x0a, 0x29, 0x45, 0x3f, - 0x0a, 0xc0, 0x41, 0xdb, 0xd6, 0x1a, 0xe2, 0xfe, 0xee, 0x5d, 0xbb, 0xf7, 0x16, 0xda, 0xc3, 0xeb, - 0x9d, 0xcd, 0x4e, 0xb8, 0xe3, 0xf5, 0xa5, 0xfc, 0x86, 0x0f, 0xc6, 0xdc, 0xcc, 0x2d, 0x6a, 0x38, - 0x63, 0xb3, 0x29, 0x6d, 0xa0, 0x7e, 0xb2, 0x07, 0xa4, 0x9b, 0xb2, 0x14, 0x5d, 0x36, 0x34, 0xe9, - 0x26, 0xce, 0x1e, 0xcb, 0x37, 0x1b, 0xdb, 0xb7, 0x00, 0x3a, 0xd4, 0xd1, 0xe0, 0x5a, 0xb5, 0x73, - 0x49, 0x74, 0xaa, 0x17, 0x33, 0xa4, 0x11, 0x89, 0x5b, 0x01, 0xb8, 0xcd, 0xb1, 0x6d, 0xca, 0xff, - 0x01, 0xc5, 0xdb, 0x59, 0xe5, 0xff, 0x80, 0x72, 0x58, 0x0a, 0x1f, 0x79, 0x25, 0xe5, 0x4d, 0x1f, - 0x1c, 0x77, 0x43, 0x0a, 0xb6, 0xdc, 0x31, 0x56, 0x32, 0xc6, 0xb8, 0x9e, 0xea, 0xc1, 0xb8, 0x36, - 0x84, 0xd1, 0x15, 0x43, 0x54, 0xdb, 0x44, 0x58, 0x1a, 0xce, 0x19, 0x2d, 0x6f, 0x03, 0x74, 0xb8, - 0xa3, 0x41, 0x6f, 0x54, 0xcf, 0xcd, 0xa3, 0x44, 0x2f, 0x70, 0x69, 0x06, 0xe3, 0xfd, 0x00, 0xdc, - 0xe6, 0xd8, 0x1c, 0xe7, 0xf3, 0xc2, 0xdb, 0x3f, 0xe7, 0xf3, 0xe2, 0xb0, 0x14, 0xee, 0x79, 0xe5, - 0xe5, 0x2d, 0x97, 0xbc, 0x14, 0x99, 0xbb, 0xaa, 0xa8, 0x30, 0x5e, 0xb2, 0xc6, 0xd0, 0x26, 0x7a, - 0x30, 0xb4, 0x0d, 0x61, 0x8a, 0x5e, 0x35, 0x54, 0x6b, 0x9b, 0x08, 0x4c, 0xd3, 0x3b, 0x23, 0xe6, - 0x1b, 0xa0, 0xc3, 0xe5, 0x47, 0xb3, 0x7e, 0x2e, 0x85, 0x92, 0xbd, 0x40, 0xc6, 0x16, 0x8f, 0x77, - 0x03, 0x10, 0x36, 0x8f, 0x41, 0xd0, 0x3e, 0x7e, 0x1a, 0x6a, 0x39, 0x26, 0x09, 0x85, 0xf9, 0x59, - 0xc8, 0x32, 0x13, 0x7e, 0xe5, 0x15, 0x95, 0x7f, 0x03, 0x18, 0x75, 0x97, 0x84, 0x74, 0x5f, 0x8c, - 0x93, 0x97, 0x8d, 0x11, 0x3d, 0xd1, 0x93, 0x1c, 0xa4, 0xab, 0x52, 0xb4, 0x62, 0x48, 0xaa, 0x9b, - 0x9a, 0x82, 0x98, 0x6b, 0x46, 0xc8, 0x9b, 0x00, 0x1d, 0xec, 0x30, 0x03, 0xb1, 0xca, 0xb9, 0x44, - 0xdb, 0x4c, 0xec, 0x32, 0x01, 0x19, 0x61, 0xb8, 0x17, 0x80, 0x43, 0xce, 0xb3, 0x2d, 0xb4, 0x9f, - 0xc7, 0x07, 0xf7, 0xfc, 0x2b, 0x24, 0xd8, 0x19, 0xd1, 0x09, 0xd0, 0x19, 0x71, 0x9a, 0x0a, 0x8f, - 0xbc, 0x72, 0x72, 0xd3, 0x07, 0x27, 0xdc, 0x70, 0x52, 0x6a, 0xf8, 0x63, 0xac, 0x9c, 0x35, 0x06, - 0x36, 0xdb, 0xe5, 0xc0, 0xd2, 0xc6, 0xf9, 0x7a, 0x53, 0x9f, 0xa2, 0xeb, 0xe6, 0x0f, 0xff, 0x57, - 0x7b, 0xa6, 0xee, 0x16, 0x1e, 0x5b, 0x2b, 0x18, 0x40, 0xef, 0x82, 0x0e, 0x7e, 0x9f, 0x72, 0x3b, - 0x93, 0x3b, 0x8d, 0x16, 0x3c, 0x28, 0xac, 0x03, 0x94, 0x3d, 0x4a, 0xbf, 0x09, 0xc0, 0x6d, 0x8e, - 0x53, 0x4e, 0x7e, 0x92, 0xe2, 0x1d, 0x84, 0x3a, 0x93, 0x54, 0x03, 0x29, 0xbb, 0xa5, 0xf0, 0x77, - 0xaf, 0x44, 0x7d, 0xc7, 0x65, 0x92, 0x2a, 0x31, 0x77, 0xd4, 0x7c, 0xf9, 0xe4, 0x8c, 0x21, 0xcf, - 0xf4, 0x0e, 0x28, 0x4b, 0x9e, 0xa2, 0x6b, 0x26, 0x4f, 0x57, 0x36, 0x9f, 0xa7, 0x46, 0x23, 0x18, - 0x4e, 0x37, 0x01, 0x7a, 0xc1, 0x0b, 0x4e, 0x0d, 0x95, 0xdc, 0x62, 0xdb, 0x29, 0xd7, 0x09, 0x4d, - 0xcd, 0x10, 0xfd, 0x29, 0x00, 0xb7, 0xb7, 0x1c, 0x74, 0xa3, 0x31, 0x6e, 0x0a, 0xe3, 0x9e, 0x86, - 0x87, 0xf6, 0xf2, 0x80, 0x6a, 0xb1, 0x15, 0x1e, 0x7b, 0x45, 0xea, 0x7b, 0x3e, 0x76, 0x53, 0xa8, - 0x7d, 0x32, 0x33, 0x1d, 0x5a, 0x50, 0x9d, 0x33, 0xc6, 0x7d, 0xa1, 0x67, 0xe3, 0x6e, 0x73, 0x40, - 0xd1, 0xd7, 0x4c, 0xac, 0xae, 0x6e, 0x3a, 0x56, 0xf6, 0x66, 0x30, 0xb0, 0xbe, 0x0f, 0xd0, 0x4b, - 0x1e, 0xb8, 0xb0, 0xeb, 0xe4, 0x5e, 0x41, 0x8b, 0xbd, 0x43, 0xcb, 0x11, 0x28, 0x3d, 0xfd, 0x39, - 0x6f, 0x3e, 0xf0, 0xd3, 0x1f, 0xf7, 0x76, 0x04, 0x3f, 0xfd, 0x39, 0x4d, 0xff, 0xfb, 0xe9, 0x4f, - 0x35, 0xfc, 0x59, 0x60, 0xf5, 0x3c, 0xfd, 0x35, 0xf5, 0xff, 0x97, 0xe9, 0xcf, 0xd6, 0x8a, 0x6e, - 0xd2, 0x9f, 0x4d, 0xa6, 0xb7, 0xe9, 0xcf, 0x1e, 0xa5, 0x1f, 0x04, 0xe0, 0x80, 0x79, 0x77, 0x85, - 0xbf, 0x01, 0xef, 0xbc, 0xd8, 0xe2, 0x3c, 0x3e, 0x60, 0x97, 0xf1, 0x74, 0x8e, 0x4c, 0x23, 0xe1, - 0xae, 0x57, 0x80, 0xae, 0xfb, 0xdc, 0xed, 0xc0, 0x5f, 0x24, 0x05, 0x46, 0xce, 0x82, 0x31, 0xb6, - 0xc9, 0xae, 0xc7, 0xb6, 0x71, 0xe9, 0xf0, 0x22, 0x29, 0x50, 0x74, 0xd5, 0x90, 0xad, 0xf7, 0x4e, - 0xd6, 0x2d, 0x33, 0xba, 0x7b, 0x06, 0xcb, 0xb7, 0x00, 0x9a, 0xec, 0x60, 0xa8, 0x1d, 0xed, 0xcf, - 0xbd, 0x8c, 0xe6, 0xbd, 0xd4, 0x5d, 0x87, 0x13, 0x16, 0x92, 0xfb, 0x01, 0x38, 0x68, 0xbb, 0xe0, - 0xc4, 0xdf, 0x18, 0x5c, 0x7b, 0x03, 0x2a, 0xb4, 0x8f, 0x07, 0x0a, 0xbb, 0xb5, 0x69, 0xb7, 0x16, - 0xfe, 0xd5, 0x45, 0x32, 0x73, 0xb5, 0x3d, 0x58, 0x54, 0x89, 0x6c, 0x51, 0xf3, 0x25, 0x63, 0x78, - 0x4f, 0xf7, 0x6c, 0x78, 0x8d, 0x5b, 0xa8, 0xa6, 0x0b, 0x8a, 0xbe, 0x6e, 0xbe, 0x72, 0x5e, 0xeb, - 0xb1, 0x03, 0xd7, 0x2b, 0x7b, 0xb3, 0x21, 0x0c, 0xa4, 0x1f, 0x02, 0x34, 0xe5, 0x01, 0x06, 0x67, - 0x97, 0x72, 0x39, 0xf4, 0x8a, 0x67, 0x91, 0xf5, 0x56, 0xfb, 0x56, 0xb8, 0x6e, 0xf5, 0xc3, 0xf0, - 0xc6, 0x37, 0xbb, 0x50, 0xe7, 0x57, 0x9b, 0xac, 0x5b, 0x3c, 0xa1, 0xa3, 0x5e, 0xaa, 0x1a, 0x77, - 0x56, 0x84, 0x1b, 0x5e, 0x0f, 0x84, 0xde, 0xf3, 0xc1, 0x03, 0x6e, 0xa8, 0xac, 0x57, 0x25, 0x1a, - 0xa9, 0x9a, 0x9d, 0x2c, 0xc2, 0x80, 0x42, 0xf4, 0x74, 0xd8, 0x0d, 0x36, 0x75, 0xa3, 0x67, 0x55, - 0xa3, 0x67, 0x92, 0xd5, 0xb3, 0x98, 0xe5, 0xe4, 0x9b, 0xc0, 0xf4, 0x72, 0xbd, 0xab, 0x73, 0x20, - 0xb7, 0x28, 0xb6, 0x69, 0x0e, 0x23, 0xf4, 0x16, 0x10, 0xe2, 0xee, 0xe0, 0x6a, 0xa3, 0x76, 0x14, - 0x8c, 0xe5, 0x44, 0xe1, 0x9c, 0x3b, 0xad, 0x75, 0xa8, 0x6c, 0xef, 0x02, 0xbd, 0x17, 0x80, 0x83, - 0xb6, 0x1b, 0x4e, 0xa8, 0xcd, 0xdd, 0xa0, 0x06, 0x89, 0xcf, 0xb4, 0xb5, 0x33, 0xb1, 0xfb, 0x75, - 0x17, 0xdb, 0x54, 0x07, 0x5c, 0x1e, 0x60, 0x37, 0xb1, 0x4b, 0x99, 0x40, 0x1c, 0xef, 0x86, 0x07, - 0x5d, 0xb1, 0xc1, 0xd8, 0x25, 0x53, 0x51, 0xd9, 0x0c, 0xc2, 0xec, 0x9e, 0xcd, 0x83, 0x12, 0xc1, - 0xe5, 0x15, 0x04, 0x7b, 0x55, 0x9d, 0x9d, 0xa4, 0x30, 0xd7, 0x15, 0x3b, 0x2d, 0x7a, 0xa1, 0x67, - 0x6e, 0x7f, 0x00, 0xfc, 0xf7, 0x3e, 0x00, 0x3b, 0x39, 0xe3, 0x3e, 0x5f, 0xb8, 0x88, 0x8b, 0xda, - 0xb5, 0x8f, 0x82, 0xbe, 0x20, 0x98, 0xbe, 0x06, 0xee, 0x3e, 0x08, 0xf7, 0xdd, 0x7f, 0x10, 0xee, - 0x7b, 0xf4, 0x20, 0x0c, 0x5e, 0x5f, 0x0d, 0x83, 0x9f, 0xae, 0x86, 0xc1, 0x9d, 0xd5, 0x30, 0xb8, - 0xbb, 0x1a, 0x06, 0x7f, 0x5e, 0x0d, 0x83, 0xbf, 0xae, 0x86, 0xfb, 0x1e, 0xad, 0x86, 0xc1, 0x3b, - 0x0f, 0xc3, 0x7d, 0xb7, 0x1f, 0x86, 0xc1, 0xdd, 0x87, 0xe1, 0xbe, 0xfb, 0x0f, 0xc3, 0x7d, 0xb9, - 0xe3, 0x65, 0xa2, 0x2c, 0x97, 0xa3, 0x75, 0x52, 0xd1, 0xb0, 0xaa, 0x8a, 0xd1, 0x1a, 0x8d, 0xb1, - 0x0f, 0x4b, 0x44, 0xad, 0x46, 0x14, 0x95, 0xd4, 0xa5, 0x12, 0x56, 0x23, 0x56, 0x71, 0x4c, 0x29, - 0x94, 0x49, 0x0c, 0x5f, 0xd2, 0xac, 0x7f, 0x11, 0x69, 0xfe, 0xa7, 0x48, 0x61, 0x0b, 0xfb, 0xdf, - 0x83, 0xe7, 0xff, 0x13, 0x00, 0x00, 0xff, 0xff, 0x0a, 0xa3, 0xeb, 0xdf, 0x46, 0x32, 0x00, 0x00, + // 2566 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x9b, 0x5d, 0x8c, 0x1b, 0x57, + 0x15, 0xc7, 0xf7, 0xda, 0xde, 0x6c, 0x72, 0x97, 0x6c, 0xb6, 0x97, 0x00, 0x8e, 0x13, 0x9c, 0xed, + 0x84, 0xb4, 0x9b, 0x2d, 0xb6, 0xb3, 0xdb, 0x24, 0x6c, 0x22, 0xb5, 0x65, 0x3f, 0x1c, 0xb2, 0x49, + 0xd6, 0xeb, 0xda, 0xde, 0x4d, 0xe3, 0x24, 0x98, 0xb1, 0x7d, 0xd7, 0x99, 0xac, 0x3d, 0x77, 0x98, + 0x3b, 0x36, 0xd9, 0xa4, 0x51, 0xd3, 0x84, 0xb6, 0x54, 0x80, 0x84, 0x00, 0x29, 0x14, 0x2a, 0x10, + 0xaa, 0x04, 0x7d, 0x29, 0x12, 0x2f, 0x08, 0x51, 0x09, 0xa5, 0x4f, 0xa9, 0x04, 0xa2, 0x11, 0xf0, + 0x50, 0xd4, 0x07, 0xc8, 0x86, 0x07, 0xa8, 0xfa, 0x50, 0x84, 0x8a, 0x78, 0x40, 0x15, 0x9a, 0x3b, + 0x33, 0xf6, 0x8c, 0xf7, 0xee, 0x7a, 0xfc, 0xc1, 0xd0, 0x97, 0x95, 0x3d, 0x73, 0xee, 0xff, 0x9e, + 0x7b, 0xfc, 0x3b, 0x73, 0xe6, 0x7e, 0x2c, 0x7c, 0xb4, 0x86, 0x69, 0x54, 0x22, 0x31, 0x5a, 0xb8, + 0x88, 0x2b, 0x62, 0x8c, 0x4a, 0x1a, 0x8e, 0x29, 0xd5, 0x7c, 0x59, 0x2a, 0xe4, 0x0a, 0x55, 0xaa, + 0x91, 0x4a, 0xae, 0x28, 0x6a, 0x62, 0x6e, 0x65, 0x92, 0xe6, 0x44, 0x45, 0x8a, 0x2a, 0x2a, 0xd1, + 0x08, 0x42, 0x46, 0xa3, 0xa8, 0xd1, 0x28, 0xaa, 0x37, 0x0a, 0x45, 0x4a, 0x92, 0x76, 0xb1, 0x9a, + 0x8f, 0x16, 0x48, 0x25, 0x56, 0x22, 0x25, 0x12, 0x63, 0xa6, 0xf9, 0xea, 0x32, 0xfb, 0xc6, 0xbe, + 0xb0, 0x4f, 0x86, 0x44, 0x68, 0x4f, 0x89, 0x90, 0x52, 0x19, 0xc7, 0x44, 0x45, 0x8a, 0x89, 0xb2, + 0x4c, 0x34, 0x51, 0x93, 0x88, 0x4c, 0xcd, 0xbb, 0xc2, 0xca, 0x24, 0xf3, 0x8a, 0xdd, 0x55, 0x14, + 0x1a, 0xab, 0x8d, 0xc7, 0x4a, 0x58, 0xc6, 0xaa, 0xa8, 0xe1, 0xa2, 0x69, 0xb3, 0xcf, 0x66, 0x93, + 0x17, 0xb5, 0xc2, 0x45, 0x9e, 0xd1, 0x28, 0xc7, 0x28, 0x8f, 0x35, 0x71, 0xbd, 0xa5, 0xbd, 0xcb, + 0x02, 0x51, 0x31, 0x4f, 0x6d, 0xb7, 0x33, 0x58, 0x44, 0xb1, 0xfb, 0xbc, 0xcb, 0x79, 0x53, 0x5b, + 0x55, 0xb0, 0x75, 0x6b, 0x8f, 0xf3, 0x56, 0x4d, 0x2c, 0x4b, 0x45, 0x51, 0xc3, 0x56, 0xcf, 0x4d, + 0x77, 0x31, 0xc5, 0x72, 0xad, 0x49, 0x7c, 0xa4, 0xc9, 0x46, 0xc2, 0x5f, 0xc9, 0x39, 0x2c, 0x84, + 0x31, 0xb8, 0x33, 0x21, 0x56, 0x30, 0x55, 0xc4, 0x02, 0x3e, 0x2d, 0x51, 0x2d, 0x85, 0xbf, 0x5c, + 0xc5, 0x54, 0x43, 0x08, 0x06, 0xf4, 0xdf, 0x27, 0x08, 0x46, 0xc0, 0xe8, 0xb6, 0x14, 0xfb, 0x2c, + 0xec, 0x87, 0x3b, 0x12, 0xa4, 0xd8, 0xd2, 0x6c, 0x1a, 0x0e, 0x25, 0x49, 0xd1, 0x6e, 0xb5, 0x07, + 0x6e, 0x93, 0xad, 0x4e, 0x4c, 0xd3, 0xc6, 0x85, 0xba, 0x86, 0xcf, 0xa6, 0x91, 0x81, 0x23, 0x49, + 0xac, 0x52, 0x89, 0x6a, 0x58, 0xd6, 0x96, 0x48, 0xb9, 0x5a, 0xc1, 0x33, 0x65, 0x51, 0xaa, 0x74, + 0xa7, 0x3a, 0x0e, 0x77, 0x37, 0xab, 0xf2, 0x06, 0x63, 0x6f, 0x72, 0x1c, 0xa2, 0x34, 0x56, 0x6b, + 0x92, 0x33, 0x3a, 0xed, 0x77, 0x7d, 0x02, 0xee, 0x8c, 0xcb, 0x45, 0x85, 0x48, 0xb2, 0x46, 0xbb, + 0x56, 0x9a, 0x21, 0xf2, 0xb2, 0x54, 0x9a, 0x17, 0x95, 0xee, 0x94, 0xe2, 0xf0, 0x81, 0x34, 0x2e, + 0xa8, 0x58, 0xeb, 0x4e, 0x66, 0x0e, 0x7e, 0x62, 0x16, 0x2b, 0x65, 0xb2, 0x5a, 0xc1, 0xb2, 0xd6, + 0xf5, 0xd8, 0x66, 0x45, 0x5c, 0x21, 0x72, 0xba, 0x5b, 0xa7, 0x4e, 0xc2, 0x4f, 0xa6, 0x35, 0x51, + 0xc3, 0xcb, 0xd5, 0x72, 0xba, 0x07, 0x03, 0x4c, 0x61, 0xa5, 0x2c, 0x15, 0xc4, 0xae, 0xa5, 0xa6, + 0xe1, 0xd0, 0x49, 0x92, 0xef, 0x4e, 0xe3, 0x38, 0x44, 0x33, 0x2a, 0x91, 0xbb, 0xd6, 0xb9, 0xe5, + 0x83, 0xfb, 0x97, 0x24, 0x55, 0xab, 0x8a, 0xe5, 0x79, 0xb1, 0x70, 0x51, 0x92, 0xf1, 0x9c, 0x4c, + 0x35, 0x51, 0x2e, 0x60, 0x3a, 0x8f, 0x35, 0x55, 0x2a, 0xd0, 0x8e, 0xb5, 0xd1, 0x25, 0xb8, 0xa3, + 0xc2, 0x34, 0x72, 0x14, 0x97, 0x71, 0x41, 0x23, 0x6a, 0xd0, 0x3f, 0xe2, 0x1f, 0x1d, 0x9a, 0x38, + 0x1c, 0x5d, 0x5f, 0x04, 0xa2, 0x9b, 0x7a, 0x91, 0x59, 0x55, 0xf0, 0x34, 0xfc, 0xd5, 0xdf, 0x6f, + 0xfb, 0xfb, 0xbf, 0x0d, 0x7c, 0x41, 0x90, 0x1a, 0x32, 0x94, 0xd3, 0xa6, 0x30, 0x3a, 0x00, 0x21, + 0xd5, 0x44, 0x55, 0xcb, 0x69, 0x52, 0x05, 0x07, 0x03, 0xba, 0x17, 0xa6, 0xbd, 0xea, 0xff, 0x5e, + 0x00, 0xa4, 0xb6, 0xb1, 0xbb, 0x19, 0xa9, 0x82, 0xd1, 0x7e, 0xb8, 0x15, 0xcb, 0x45, 0xc3, 0xb0, + 0x7f, 0x9d, 0xe1, 0x00, 0x96, 0x8b, 0xba, 0x99, 0x40, 0xe1, 0x43, 0xad, 0x02, 0x43, 0x15, 0x22, + 0x53, 0x8c, 0xe6, 0x60, 0x40, 0x2f, 0x74, 0x41, 0x30, 0xe2, 0x1f, 0x1d, 0xec, 0x60, 0x70, 0xb3, + 0xa2, 0x26, 0xa6, 0x98, 0x84, 0xf0, 0x2e, 0x80, 0x0f, 0xb6, 0xb4, 0xd5, 0x3b, 0xd4, 0x4b, 0x04, + 0xfb, 0x15, 0x3a, 0x8d, 0x66, 0x8a, 0x49, 0xa0, 0x47, 0x60, 0xa0, 0x2a, 0x4b, 0x5a, 0xd0, 0xcf, + 0xa4, 0x3e, 0xd5, 0x24, 0xb5, 0x28, 0x4b, 0x9a, 0x61, 0xac, 0x1b, 0xa1, 0x79, 0x73, 0xa0, 0x3e, + 0x36, 0xd0, 0xa3, 0x1d, 0xf5, 0x6b, 0x1b, 0xec, 0x07, 0xa0, 0x05, 0x7b, 0x96, 0x3d, 0xba, 0x00, + 0xb7, 0x94, 0xc5, 0x3c, 0x2e, 0x53, 0x33, 0xc6, 0xf1, 0x8e, 0xbb, 0x8e, 0x9e, 0x66, 0x3a, 0x71, + 0x59, 0x53, 0x57, 0x53, 0xa6, 0x28, 0x9a, 0x80, 0x5b, 0x6a, 0x62, 0xb9, 0x8a, 0xa9, 0x39, 0xb2, + 0x50, 0x93, 0xbc, 0x21, 0xb1, 0xa4, 0x9b, 0xa4, 0x4c, 0xcb, 0xd0, 0x51, 0x38, 0x68, 0x93, 0x42, + 0xc3, 0xd0, 0xbf, 0x82, 0x57, 0xcd, 0xbc, 0xd0, 0x3f, 0xa2, 0x9d, 0xb0, 0x9f, 0x99, 0x9a, 0x29, + 0x61, 0x7c, 0x39, 0xe6, 0x9b, 0x04, 0xc2, 0x6f, 0x7c, 0x10, 0x25, 0x49, 0xb1, 0xfb, 0x04, 0x3b, + 0xb3, 0x51, 0x82, 0x09, 0xbc, 0xf8, 0x34, 0xba, 0xf4, 0x3e, 0x9b, 0x50, 0x10, 0x0e, 0x2c, 0x4b, + 0x65, 0x0d, 0xab, 0x34, 0xb8, 0x85, 0x8d, 0xc0, 0xfa, 0x8a, 0x1e, 0x87, 0x5b, 0x4b, 0x2a, 0xa9, + 0x2a, 0xb9, 0xfc, 0x6a, 0x70, 0x80, 0x79, 0xbf, 0x6f, 0x73, 0xef, 0x59, 0xd8, 0x53, 0x03, 0xac, + 0xd1, 0xf4, 0xaa, 0x30, 0x0f, 0x3f, 0xee, 0x08, 0xa6, 0x99, 0x94, 0x47, 0x1c, 0x49, 0xd9, 0x22, + 0x20, 0x36, 0x28, 0x7f, 0x0e, 0xd8, 0x9b, 0x8b, 0x3d, 0xdd, 0x8e, 0x38, 0xd2, 0xcd, 0x45, 0x6c, + 0x3b, 0xc9, 0xad, 0x63, 0x8e, 0xdc, 0x7a, 0xa8, 0x75, 0x27, 0x36, 0x9f, 0xdf, 0x02, 0x76, 0xa0, + 0xea, 0x59, 0x73, 0xb2, 0x29, 0x6b, 0x26, 0xdc, 0x89, 0x7e, 0x04, 0x52, 0x64, 0xec, 0xbd, 0x56, + 0xcf, 0x41, 0xdd, 0x59, 0xb4, 0x07, 0x06, 0x97, 0xe6, 0xe7, 0x72, 0xf3, 0xf1, 0x4c, 0x6a, 0x6e, + 0x26, 0x97, 0x39, 0x9b, 0x8c, 0xe7, 0xe6, 0x12, 0xb9, 0xe9, 0xb3, 0x99, 0x78, 0x7a, 0xb8, 0x0f, + 0x7d, 0x1a, 0xee, 0x6a, 0xbe, 0xbb, 0xb0, 0x98, 0x31, 0x6f, 0x03, 0xb4, 0x0f, 0xee, 0xe5, 0x34, + 0x9e, 0x4d, 0x2d, 0x24, 0x73, 0xc9, 0xa9, 0x99, 0x53, 0xf1, 0x4c, 0x7a, 0xd8, 0x87, 0x3e, 0x03, + 0x47, 0x78, 0x1a, 0x0e, 0x2b, 0x3f, 0x0a, 0xc3, 0x10, 0x47, 0xca, 0xba, 0x1f, 0x40, 0x7b, 0xe1, + 0x6e, 0x9e, 0x8a, 0x65, 0xd0, 0x3f, 0x76, 0x0d, 0x0a, 0x9b, 0x8e, 0x96, 0x85, 0x11, 0x3d, 0x00, + 0xb7, 0xeb, 0x32, 0x89, 0xa9, 0xf9, 0x78, 0x3a, 0x39, 0x35, 0x13, 0x1f, 0xee, 0x43, 0x1f, 0x83, + 0x5b, 0xad, 0x4b, 0xc3, 0x00, 0xed, 0x80, 0x83, 0xfa, 0xb7, 0xb9, 0xe3, 0xc6, 0x05, 0x9f, 0xd5, + 0x62, 0xee, 0x78, 0x2e, 0xbd, 0x38, 0x9d, 0x88, 0x67, 0x86, 0xfd, 0x08, 0xc1, 0x21, 0xf3, 0xd2, + 0xd2, 0xe9, 0xa9, 0x44, 0x6e, 0x6e, 0x76, 0x38, 0x30, 0xf6, 0x27, 0x07, 0xf3, 0x56, 0x68, 0x93, + 0x0b, 0xb3, 0x9b, 0x84, 0xb6, 0xf9, 0x6e, 0x53, 0x68, 0x39, 0x8d, 0xd7, 0x87, 0x96, 0xa7, 0xb1, + 0x3e, 0xb4, 0x1c, 0x29, 0x47, 0x68, 0x79, 0x2a, 0x8d, 0xd0, 0x5e, 0x82, 0x3b, 0x9a, 0x1e, 0x1d, + 0x7a, 0x54, 0xf4, 0x36, 0x4d, 0x71, 0xb4, 0x2e, 0x19, 0x71, 0xd4, 0xbf, 0x39, 0xe2, 0x68, 0x5e, + 0xb0, 0xc7, 0xd1, 0xbc, 0x54, 0x8f, 0xe3, 0xc4, 0x2f, 0x4e, 0xc1, 0xe1, 0x19, 0x36, 0xf3, 0xd5, + 0xf3, 0xe8, 0xd4, 0x64, 0x7a, 0x2a, 0x39, 0x87, 0xae, 0xfb, 0xe0, 0x76, 0xc7, 0xec, 0x0a, 0x8d, + 0xf2, 0xf2, 0x90, 0x37, 0x01, 0x0b, 0x3d, 0x18, 0x35, 0x66, 0x96, 0x51, 0x7d, 0xfe, 0xac, 0xcf, + 0x2c, 0xa3, 0xb5, 0x71, 0xa7, 0xa5, 0xf0, 0x63, 0xf0, 0xe6, 0x2f, 0x7d, 0x60, 0xed, 0x4e, 0x30, + 0xbb, 0x7c, 0xf8, 0x72, 0x21, 0xa2, 0x6b, 0x45, 0x2a, 0xa2, 0x2c, 0x96, 0xb0, 0xfe, 0x26, 0x1e, + 0xc9, 0x8b, 0x54, 0x2a, 0x44, 0x2a, 0x44, 0x96, 0x34, 0xa2, 0x7e, 0x76, 0x84, 0x6b, 0xa3, 0xa3, + 0x56, 0x14, 0xd5, 0x62, 0xc3, 0xac, 0x86, 0x69, 0x44, 0x22, 0x91, 0x95, 0x49, 0x1a, 0x51, 0xb1, + 0x58, 0xbc, 0xf1, 0x87, 0xbf, 0x7e, 0xc7, 0x77, 0x14, 0x7d, 0xce, 0x9c, 0xdd, 0xc7, 0xea, 0x55, + 0x89, 0xc6, 0xe8, 0x2a, 0xd5, 0x70, 0xc5, 0x98, 0xfb, 0x5f, 0xd5, 0xff, 0x5e, 0x63, 0xb3, 0xe0, + 0xda, 0xb8, 0xcd, 0x08, 0xbd, 0x07, 0xe0, 0x56, 0x6b, 0xd2, 0x88, 0xb8, 0x4f, 0xf7, 0xa6, 0x29, + 0x65, 0x68, 0x0f, 0x77, 0xe0, 0xa6, 0x91, 0xf0, 0xb2, 0x57, 0x63, 0x3e, 0x84, 0x26, 0xda, 0x1b, + 0x33, 0x29, 0x62, 0x8a, 0x7e, 0x16, 0x80, 0x03, 0xe6, 0xe4, 0x17, 0x6d, 0x54, 0x2d, 0xec, 0x83, + 0xdd, 0xcd, 0x1b, 0xac, 0x69, 0x23, 0xdc, 0xf3, 0xff, 0xef, 0xc7, 0xfa, 0xee, 0x9d, 0xe0, 0x07, + 0x00, 0x3e, 0x62, 0x5e, 0x35, 0x3c, 0x35, 0x54, 0x8c, 0x75, 0x1c, 0xbd, 0xc8, 0xac, 0x4c, 0x52, + 0x51, 0x91, 0x22, 0x0a, 0x29, 0x96, 0xf5, 0x71, 0x25, 0xa0, 0xbf, 0x84, 0x35, 0xf4, 0x85, 0x16, + 0xe1, 0x19, 0x3d, 0x27, 0x46, 0xae, 0x5c, 0x18, 0x3d, 0x17, 0x11, 0x23, 0x57, 0x0e, 0x46, 0x8e, + 0x5e, 0x18, 0x3b, 0x67, 0x7e, 0x38, 0xf0, 0xc4, 0x01, 0x2b, 0x68, 0x0a, 0x29, 0x52, 0x54, 0x33, + 0xf4, 0x48, 0x0f, 0xf4, 0x6c, 0x4d, 0x37, 0x35, 0xd7, 0xfb, 0x65, 0xbf, 0xf2, 0x33, 0x68, 0xbc, + 0xad, 0x5f, 0x59, 0x6f, 0x98, 0x3d, 0x89, 0x4e, 0x74, 0x98, 0x0e, 0xb1, 0xab, 0xf5, 0xcf, 0xd7, + 0x8c, 0xc1, 0xbf, 0xd1, 0x0f, 0x77, 0x6d, 0xb8, 0xd2, 0x81, 0x0e, 0x71, 0x11, 0x6a, 0xb1, 0x30, + 0x12, 0x8a, 0x70, 0xa1, 0xda, 0xa8, 0x95, 0xf0, 0xeb, 0x80, 0x27, 0x98, 0xbd, 0xe6, 0x83, 0x8f, + 0xb9, 0xc2, 0xac, 0xee, 0x68, 0x8d, 0x39, 0x5a, 0xd0, 0x1d, 0x65, 0xe0, 0x7d, 0xc9, 0x00, 0xe5, + 0x6c, 0x2f, 0xc0, 0xe3, 0x75, 0x42, 0xd1, 0x8b, 0xc0, 0xe8, 0xe2, 0x59, 0xe0, 0x25, 0x8c, 0x5c, + 0x5f, 0x18, 0x9e, 0xaf, 0x00, 0x34, 0xd3, 0x1e, 0x9f, 0x5c, 0xad, 0xec, 0x79, 0x94, 0xed, 0x09, + 0xb1, 0xfc, 0xa8, 0xbd, 0xec, 0x83, 0x3b, 0x79, 0xeb, 0x6a, 0x28, 0xe6, 0x06, 0x5f, 0x3b, 0xb9, + 0xa3, 0x6e, 0xc8, 0x65, 0xd0, 0xbe, 0xea, 0x55, 0x1d, 0xf8, 0x3c, 0x7a, 0xbc, 0xab, 0x5f, 0x80, + 0xa2, 0xb7, 0x02, 0x70, 0xd0, 0xb6, 0x86, 0x88, 0xb8, 0x2f, 0xf8, 0xeb, 0x17, 0x19, 0x43, 0x7b, + 0x79, 0xc1, 0xb0, 0xd9, 0x09, 0xff, 0xf2, 0xa6, 0x3e, 0x3c, 0xeb, 0x83, 0x31, 0x37, 0x89, 0x4b, + 0x0d, 0xd7, 0x58, 0xaa, 0xa6, 0x8c, 0x3c, 0x3a, 0xd5, 0x83, 0x34, 0x32, 0x65, 0x29, 0xba, 0x62, + 0x68, 0x52, 0x0f, 0x53, 0xd3, 0xea, 0x9b, 0x91, 0xf0, 0x02, 0x40, 0x87, 0xdb, 0x42, 0xc1, 0x6a, + 0x9d, 0x4d, 0xa0, 0xd3, 0xbd, 0x48, 0xbf, 0x7a, 0x24, 0xde, 0x09, 0xc0, 0xed, 0x8e, 0xd5, 0x64, + 0xfe, 0x7b, 0x25, 0x6f, 0xc1, 0x99, 0xff, 0x5e, 0xe9, 0xb0, 0x14, 0xfe, 0xe3, 0x0d, 0x57, 0xcf, + 0xf9, 0xe0, 0xb8, 0x1b, 0xae, 0xb0, 0xe5, 0x1c, 0x23, 0x2b, 0x6d, 0x50, 0x70, 0xba, 0x07, 0x14, + 0xd4, 0x85, 0xd1, 0x55, 0x43, 0x54, 0xf3, 0x10, 0xad, 0x7a, 0xe7, 0x8c, 0xad, 0x17, 0x01, 0x3a, + 0xd2, 0x16, 0x22, 0xf5, 0xe6, 0xd9, 0x05, 0x34, 0xdf, 0x0b, 0xb8, 0x1a, 0xc1, 0xf8, 0x73, 0x00, + 0x6e, 0x77, 0xec, 0x30, 0xf0, 0xe9, 0xe2, 0x6d, 0x42, 0xf0, 0xe9, 0x72, 0x58, 0x0a, 0xd7, 0xbd, + 0x79, 0xdd, 0x78, 0xc1, 0x25, 0x5d, 0x05, 0xe6, 0x5c, 0x45, 0x54, 0x18, 0x5d, 0x19, 0x03, 0x84, + 0xf9, 0x1e, 0x80, 0x50, 0x17, 0xa6, 0xe8, 0x69, 0x43, 0xb5, 0xea, 0x21, 0x5e, 0x8d, 0xde, 0x19, + 0x5f, 0x5f, 0x07, 0x6d, 0x4e, 0xe1, 0x1a, 0xed, 0xb3, 0x49, 0x94, 0xe8, 0x05, 0x60, 0xb6, 0x78, + 0xdc, 0x09, 0x40, 0xd8, 0xd8, 0x79, 0x42, 0xfb, 0xf9, 0x05, 0xb1, 0x69, 0x67, 0x2a, 0x14, 0xe6, + 0xd7, 0x43, 0xcb, 0x4c, 0xf8, 0x87, 0x37, 0x8f, 0xad, 0x0f, 0x01, 0x8c, 0xba, 0x2b, 0x87, 0xba, + 0x67, 0x8c, 0xaa, 0x27, 0x8d, 0xdf, 0xff, 0x64, 0x4f, 0xaa, 0xa1, 0xae, 0x4a, 0xd1, 0xaa, 0x21, + 0xa9, 0x7a, 0x5a, 0x0c, 0x59, 0xd7, 0x8c, 0xa7, 0xe7, 0x00, 0x3a, 0xd4, 0x66, 0x2d, 0x64, 0x8d, + 0xb3, 0xf3, 0x2d, 0xdf, 0x09, 0x5c, 0x96, 0x42, 0x23, 0x0c, 0xd7, 0xfb, 0xe1, 0x90, 0x73, 0xf3, + 0x11, 0x1d, 0xe0, 0xd1, 0xc4, 0xdd, 0xa0, 0x0c, 0x09, 0x76, 0xa2, 0x44, 0x45, 0xa1, 0x3a, 0x51, + 0x4e, 0x53, 0xe1, 0x87, 0xde, 0x3c, 0xae, 0x6e, 0xf9, 0xe0, 0x84, 0x1b, 0xaa, 0x8a, 0x75, 0xef, + 0x18, 0x59, 0xe7, 0x0c, 0x0c, 0x32, 0x5d, 0x62, 0x40, 0xeb, 0xc7, 0x25, 0x1a, 0xfa, 0x14, 0xdd, + 0x34, 0x67, 0x43, 0x4f, 0xf7, 0x4c, 0xdd, 0x2d, 0x6a, 0x36, 0x2f, 0x18, 0x6e, 0x2f, 0x81, 0x36, + 0xde, 0xc2, 0xb9, 0x83, 0xc9, 0x9e, 0x41, 0x8b, 0x1d, 0x28, 0x6c, 0x80, 0x9f, 0x3d, 0x4a, 0xff, + 0x0e, 0xc0, 0xed, 0x8e, 0x4d, 0x6b, 0x7e, 0xb9, 0xe4, 0xed, 0x6b, 0x3b, 0xcb, 0x65, 0x1d, 0x40, + 0xbb, 0xa5, 0xf0, 0x92, 0x37, 0xfc, 0x7d, 0xd7, 0x65, 0xb9, 0x2c, 0x32, 0xe7, 0xa8, 0xf9, 0x60, + 0xcb, 0x1a, 0x80, 0xa4, 0x7b, 0x87, 0x9f, 0x25, 0x4f, 0xd1, 0x0d, 0x93, 0xbe, 0xab, 0xde, 0xd3, + 0x57, 0x77, 0x82, 0xc1, 0x77, 0x0b, 0xa0, 0xc7, 0x3a, 0x81, 0xaf, 0xae, 0x92, 0x5d, 0x6a, 0x99, + 0xa0, 0xed, 0xb0, 0xd7, 0x08, 0xd1, 0xd7, 0xfa, 0xe1, 0x8e, 0xa6, 0x53, 0x0e, 0x68, 0x8c, 0x5b, + 0x4c, 0xb9, 0x47, 0x21, 0x42, 0xfb, 0x78, 0xf8, 0x35, 0xd9, 0x0a, 0xaf, 0x78, 0x03, 0xe0, 0xf7, + 0x7d, 0xec, 0x50, 0x59, 0xeb, 0xb2, 0x6a, 0xba, 0x67, 0x21, 0x78, 0xde, 0xa0, 0x64, 0xb1, 0x67, + 0x94, 0xd8, 0x3a, 0xa0, 0xe8, 0xab, 0x26, 0x84, 0xd7, 0x3c, 0x87, 0xd0, 0xee, 0x06, 0xc3, 0xf0, + 0x07, 0x00, 0x3d, 0xd1, 0x01, 0x45, 0x76, 0x9d, 0xec, 0x53, 0x68, 0xa9, 0x77, 0x20, 0x3a, 0x02, + 0xa5, 0x17, 0x62, 0xe7, 0x21, 0x19, 0x7e, 0x21, 0xe6, 0x1e, 0xa4, 0xe1, 0x17, 0x62, 0xa7, 0xe9, + 0x47, 0xad, 0x10, 0xab, 0x86, 0x77, 0x16, 0x86, 0x3d, 0x2f, 0xc4, 0x0d, 0xfd, 0xff, 0x67, 0x21, + 0xb6, 0x79, 0xd1, 0x4d, 0x21, 0xb6, 0xc9, 0xf4, 0xb6, 0x10, 0xdb, 0xa3, 0xf4, 0xdb, 0x00, 0x1c, + 0x30, 0x0f, 0x45, 0xf1, 0xf7, 0x5e, 0x9c, 0x27, 0xa6, 0x9c, 0x1b, 0x4d, 0xec, 0x94, 0xa7, 0x4e, + 0x9d, 0x69, 0x24, 0x7c, 0xe8, 0xcd, 0x6c, 0xe2, 0xa6, 0xcf, 0xdd, 0xe6, 0xcb, 0x25, 0x92, 0x67, + 0x9c, 0x2d, 0x1a, 0x24, 0x24, 0xba, 0x26, 0xa1, 0x7e, 0xf6, 0xf5, 0x12, 0xc9, 0x53, 0x74, 0xcd, + 0x90, 0xad, 0xf5, 0x4e, 0xd6, 0x2d, 0x61, 0x7a, 0xf7, 0x0c, 0xad, 0x6f, 0x02, 0x34, 0xd9, 0x06, + 0x18, 0x0e, 0xff, 0xb3, 0x4f, 0xa2, 0x85, 0x4e, 0xda, 0x6e, 0x40, 0x15, 0x0b, 0xc9, 0xf3, 0xfd, + 0x70, 0xd0, 0x76, 0xce, 0x8e, 0xbf, 0x6c, 0xbb, 0xfe, 0x20, 0x5e, 0x68, 0x3f, 0x0f, 0x2b, 0x76, + 0x78, 0xd8, 0x6e, 0x2d, 0xfc, 0xd4, 0xb3, 0xb2, 0xea, 0x6a, 0xf1, 0xb6, 0xa0, 0x12, 0xd9, 0x62, + 0xec, 0x8b, 0x06, 0x0c, 0x67, 0x7a, 0x06, 0x83, 0x71, 0x74, 0xda, 0xec, 0x82, 0xa2, 0xe7, 0xcd, + 0xc7, 0xd9, 0x33, 0x3d, 0xee, 0xc0, 0xf5, 0xda, 0x88, 0xe9, 0x08, 0xc3, 0xee, 0x47, 0x00, 0x4d, + 0x75, 0x80, 0x8e, 0x73, 0x48, 0xd9, 0x2c, 0x7a, 0xaa, 0x63, 0x91, 0x8d, 0xd6, 0x4b, 0xac, 0x70, + 0xbd, 0xd3, 0x0f, 0xc3, 0x9b, 0x1f, 0x47, 0x44, 0xed, 0x9f, 0xc7, 0xb3, 0x8e, 0x9e, 0x85, 0x8e, + 0x75, 0xd2, 0xd4, 0x38, 0x68, 0x25, 0xbc, 0xe1, 0x0d, 0xc3, 0x3f, 0xf1, 0xc1, 0x83, 0x6e, 0x18, + 0xae, 0x55, 0x24, 0x1a, 0xa9, 0x98, 0x21, 0x29, 0xc0, 0x80, 0x42, 0xf4, 0xc2, 0xdc, 0x0d, 0x64, + 0x35, 0x23, 0x0e, 0x15, 0x23, 0x0e, 0x92, 0x15, 0x87, 0x98, 0xd5, 0xc9, 0x37, 0x80, 0xd9, 0xcb, + 0xcd, 0xae, 0x36, 0x0c, 0xdd, 0x82, 0xdb, 0xc2, 0x1d, 0xc6, 0xf3, 0x6b, 0x40, 0x88, 0xbb, 0x43, + 0xb1, 0x85, 0xda, 0x31, 0x30, 0x96, 0x15, 0x85, 0xf3, 0xee, 0xb4, 0x36, 0x60, 0xb8, 0x75, 0x17, + 0xe8, 0x8f, 0x01, 0x38, 0x68, 0x3b, 0xc4, 0x87, 0x5a, 0x1c, 0x7f, 0xab, 0x73, 0xfb, 0x70, 0x4b, + 0x3b, 0x13, 0xd2, 0x7f, 0x7a, 0xb6, 0x2c, 0x78, 0xd0, 0xe5, 0x29, 0x8a, 0x06, 0xa4, 0x49, 0x13, + 0x9f, 0x13, 0xdd, 0xd0, 0xa3, 0x2b, 0xd6, 0x89, 0xbc, 0x6c, 0x2a, 0x2a, 0x5e, 0xf0, 0x68, 0xef, + 0xd9, 0xdc, 0x22, 0x13, 0x5c, 0x9e, 0x9a, 0xb1, 0x37, 0xd5, 0x49, 0x4b, 0x08, 0x73, 0x5d, 0x91, + 0xd6, 0xa4, 0x17, 0x7a, 0xf8, 0xf6, 0xeb, 0xc0, 0xff, 0xfb, 0xd7, 0xc1, 0x2e, 0x0e, 0x25, 0x0b, + 0xf9, 0x4b, 0xb8, 0xa0, 0xdd, 0xf8, 0x5d, 0xd0, 0x17, 0x04, 0xd3, 0x37, 0xc0, 0xdd, 0x7b, 0xe1, + 0xbe, 0xb7, 0xef, 0x85, 0xfb, 0xde, 0xbf, 0x17, 0x06, 0xd7, 0xd7, 0xc2, 0xe0, 0xd5, 0xb5, 0x30, + 0x78, 0x73, 0x2d, 0x0c, 0xee, 0xae, 0x85, 0xc1, 0x5f, 0xd6, 0xc2, 0xe0, 0x6f, 0x6b, 0xe1, 0xbe, + 0xf7, 0xd7, 0xc2, 0xe0, 0x5b, 0xf7, 0xc3, 0x7d, 0xb7, 0xef, 0x87, 0xc1, 0xdd, 0xfb, 0xe1, 0xbe, + 0xb7, 0xef, 0x87, 0xfb, 0xb2, 0x27, 0x4a, 0x44, 0x59, 0x29, 0x45, 0x6b, 0xa4, 0xac, 0x61, 0x55, + 0x15, 0xa3, 0x55, 0x1a, 0x63, 0x1f, 0x96, 0x89, 0x5a, 0x89, 0x28, 0x2a, 0xa9, 0x49, 0x45, 0xac, + 0x46, 0xac, 0xdb, 0x31, 0x25, 0x5f, 0x22, 0x31, 0x7c, 0x59, 0xb3, 0xfe, 0x67, 0xaa, 0xf1, 0xaf, + 0x53, 0xf9, 0x2d, 0xec, 0x9f, 0x71, 0x1e, 0xfd, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x57, 0xba, + 0x82, 0x42, 0x57, 0x35, 0x00, 0x00, } func (x VirtualMachineInstancesMetricType) String() string { diff --git a/pbgo/extschema/schema/site/public_customapi.pb.go b/pbgo/extschema/schema/site/public_customapi.pb.go index cd077990b..e9b59ac10 100644 --- a/pbgo/extschema/schema/site/public_customapi.pb.go +++ b/pbgo/extschema/schema/site/public_customapi.pb.go @@ -178,39 +178,39 @@ func init() { } var fileDescriptor_c0a519523e807a75 = []byte{ - // 500 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xbf, 0x6f, 0xd3, 0x40, - 0x14, 0xc7, 0x7d, 0x29, 0x20, 0x6a, 0x50, 0x06, 0x4f, 0x69, 0x28, 0x47, 0xe4, 0x85, 0x82, 0x7a, - 0x3e, 0xd4, 0xaa, 0x0b, 0x13, 0x3f, 0x16, 0x98, 0x40, 0xc9, 0xc6, 0x82, 0xce, 0xe6, 0xc5, 0x3d, - 0x88, 0x7d, 0xc7, 0xdd, 0xb3, 0x29, 0x42, 0x95, 0x50, 0xfe, 0x02, 0x10, 0x33, 0x3b, 0xff, 0x43, - 0x97, 0x6e, 0x30, 0xa1, 0x08, 0x96, 0x8e, 0xc4, 0x61, 0x60, 0xec, 0x9f, 0x80, 0x72, 0x6e, 0x92, - 0x46, 0x44, 0x6c, 0xef, 0xbd, 0xcf, 0xd7, 0xef, 0x9e, 0xbe, 0xfe, 0xfa, 0xb7, 0x4a, 0xb0, 0x91, - 0x54, 0xdc, 0x26, 0xfb, 0x90, 0x09, 0x6e, 0x25, 0x02, 0xd7, 0x45, 0x3c, 0x90, 0xc9, 0xf3, 0xa4, - 0xb0, 0xa8, 0x32, 0xa1, 0x65, 0xa4, 0x8d, 0x42, 0x15, 0x04, 0xb5, 0x34, 0xaa, 0xa5, 0xd1, 0x54, - 0xda, 0x66, 0xa9, 0xc4, 0xfd, 0x22, 0x8e, 0x12, 0x95, 0xf1, 0x54, 0xa5, 0x8a, 0x3b, 0x69, 0x5c, - 0xf4, 0x5d, 0xe7, 0x1a, 0x57, 0xd5, 0x2b, 0xda, 0x9b, 0xa9, 0x52, 0xe9, 0x00, 0xb8, 0xd0, 0x92, - 0x8b, 0x3c, 0x57, 0x28, 0x50, 0xaa, 0xdc, 0x9e, 0xd1, 0x6b, 0xcb, 0xb7, 0x28, 0x7d, 0x1e, 0xd2, - 0x15, 0x87, 0xe2, 0x5b, 0x0d, 0x33, 0xbe, 0xb1, 0xcc, 0xcf, 0xa3, 0x70, 0x19, 0x95, 0x60, 0x21, - 0x2f, 0x97, 0xd7, 0x87, 0xe8, 0x5f, 0xe9, 0x01, 0xf6, 0x50, 0x20, 0x74, 0xe1, 0x75, 0xb0, 0xe9, - 0xaf, 0xe7, 0x22, 0x03, 0xab, 0x45, 0x02, 0x2d, 0xd2, 0x21, 0x5b, 0xeb, 0xdd, 0xc5, 0x20, 0x08, - 0xfc, 0x0b, 0xd3, 0xa6, 0xd5, 0x70, 0xc0, 0xd5, 0xc1, 0xae, 0x7f, 0xd1, 0x4e, 0xbf, 0x6e, 0xad, - 0x75, 0xc8, 0x56, 0x73, 0xe7, 0x7a, 0xf4, 0xaf, 0x5b, 0x51, 0x4f, 0x22, 0xd4, 0x4f, 0xd4, 0xda, - 0xb0, 0xe9, 0x5f, 0x5d, 0xbc, 0x6a, 0xf5, 0xce, 0xe7, 0x86, 0xdf, 0x7c, 0xe8, 0x6c, 0x77, 0xb3, - 0xfb, 0x4f, 0x1f, 0x07, 0x63, 0xe2, 0x5f, 0x9e, 0x69, 0x82, 0x1b, 0x2b, 0xb7, 0x2e, 0xee, 0x6e, - 0x77, 0xfe, 0x2f, 0xb0, 0x3a, 0xfc, 0x48, 0xaa, 0xaf, 0xad, 0x6e, 0x7f, 0xef, 0x20, 0x61, 0x53, - 0xc8, 0x32, 0x91, 0x8b, 0x14, 0x32, 0xc8, 0x91, 0xc5, 0xc2, 0xca, 0x84, 0x15, 0x16, 0xcc, 0x76, - 0x09, 0x96, 0x49, 0xc5, 0x64, 0xde, 0x37, 0xc2, 0xa2, 0x29, 0x12, 0x2c, 0x0c, 0xb0, 0x37, 0x46, - 0x22, 0x6c, 0x77, 0xe6, 0x10, 0xc1, 0xe4, 0x62, 0x50, 0x8f, 0x87, 0x3f, 0x7f, 0x7f, 0x6a, 0xec, - 0x85, 0x77, 0xce, 0xd2, 0xc3, 0xe7, 0x6e, 0x59, 0xfe, 0x6e, 0x5e, 0x1f, 0xd6, 0xff, 0xcd, 0x0d, - 0x0e, 0xb9, 0xf3, 0xe0, 0x2e, 0xb9, 0xdd, 0xbe, 0x79, 0x7c, 0x44, 0xd6, 0x7e, 0x1c, 0x91, 0x8d, - 0x15, 0xc7, 0x3f, 0x89, 0x5f, 0x42, 0x82, 0xc3, 0xef, 0xad, 0xc6, 0x3d, 0xf2, 0x60, 0x48, 0x46, - 0x63, 0xea, 0x9d, 0x8c, 0xa9, 0x77, 0x3a, 0xa6, 0xe4, 0x7d, 0x45, 0xc9, 0x97, 0x8a, 0x92, 0x6f, - 0x15, 0x25, 0xa3, 0x8a, 0x92, 0x5f, 0x15, 0x25, 0x7f, 0x2a, 0xea, 0x9d, 0x56, 0x94, 0x7c, 0x98, - 0x50, 0xef, 0x78, 0x42, 0xc9, 0x68, 0x42, 0xbd, 0x93, 0x09, 0xf5, 0x9e, 0x3d, 0x4a, 0x95, 0x7e, - 0x95, 0x46, 0xa5, 0x1a, 0x20, 0x18, 0x23, 0xa2, 0xc2, 0x72, 0x57, 0xf4, 0x95, 0xc9, 0x98, 0x36, - 0xaa, 0x94, 0x2f, 0xc0, 0xb0, 0x19, 0xe6, 0x3a, 0x4e, 0x15, 0x87, 0x03, 0x9c, 0xc5, 0x6d, 0x91, - 0xba, 0xf8, 0x92, 0x4b, 0xcc, 0xee, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xed, 0x67, 0xf4, 0x71, - 0x3b, 0x03, 0x00, 0x00, + // 511 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0x3f, 0x6f, 0xd3, 0x40, + 0x14, 0xc0, 0x7d, 0x29, 0x20, 0x6a, 0x50, 0x07, 0x4f, 0x69, 0x28, 0x47, 0xe4, 0x85, 0x82, 0x6a, + 0x1f, 0x6a, 0xd5, 0x85, 0x89, 0x3f, 0x0b, 0x4c, 0xa0, 0x66, 0x63, 0x41, 0x67, 0xe7, 0xc5, 0x3d, + 0x88, 0xef, 0x8e, 0xbb, 0x67, 0x53, 0x84, 0x2a, 0xa1, 0x48, 0xec, 0x48, 0x7c, 0x09, 0xbe, 0x00, + 0x53, 0x97, 0x32, 0xc1, 0x84, 0x22, 0x58, 0x3a, 0x12, 0x87, 0x81, 0xb1, 0x1f, 0x01, 0xe5, 0xdc, + 0x24, 0x8d, 0x88, 0xd8, 0xde, 0x7b, 0xbf, 0x5f, 0xde, 0xbd, 0x3c, 0x3f, 0xff, 0x56, 0x09, 0x36, + 0x16, 0x8a, 0xd9, 0x74, 0x1f, 0x72, 0xce, 0xac, 0x40, 0x60, 0xba, 0x48, 0xfa, 0x22, 0x7d, 0x9e, + 0x16, 0x16, 0x55, 0xce, 0xb5, 0x88, 0xb5, 0x51, 0xa8, 0x82, 0xa0, 0x56, 0xe3, 0x5a, 0x8d, 0x27, + 0x6a, 0x2b, 0xca, 0x04, 0xee, 0x17, 0x49, 0x9c, 0xaa, 0x9c, 0x65, 0x2a, 0x53, 0xcc, 0xa9, 0x49, + 0xd1, 0x73, 0x99, 0x4b, 0x5c, 0x54, 0xb7, 0x68, 0x6d, 0x64, 0x4a, 0x65, 0x7d, 0x60, 0x5c, 0x0b, + 0xc6, 0xa5, 0x54, 0xc8, 0x51, 0x28, 0x69, 0xcf, 0xe8, 0xb5, 0xc5, 0x59, 0x94, 0x3e, 0x0f, 0xe9, + 0x92, 0x41, 0xf1, 0x8d, 0x86, 0x29, 0x5f, 0x5f, 0xe4, 0xe7, 0x51, 0xb8, 0x88, 0x4a, 0xb0, 0x20, + 0xcb, 0xc5, 0xf6, 0x21, 0xfa, 0x57, 0x3a, 0x80, 0x1d, 0xe4, 0x08, 0x7b, 0xf0, 0x2a, 0xd8, 0xf0, + 0x57, 0x25, 0xcf, 0xc1, 0x6a, 0x9e, 0x42, 0x93, 0xb4, 0xc9, 0xe6, 0xea, 0xde, 0xbc, 0x10, 0x04, + 0xfe, 0x85, 0x49, 0xd2, 0x6c, 0x38, 0xe0, 0xe2, 0x60, 0xc7, 0xbf, 0x68, 0x27, 0xbf, 0x6e, 0xae, + 0xb4, 0xc9, 0xe6, 0xda, 0xf6, 0xf5, 0xf8, 0xdf, 0x6d, 0xc5, 0x1d, 0x81, 0x50, 0x3f, 0x51, 0xbb, + 0xe1, 0x9a, 0x7f, 0x75, 0xfe, 0xaa, 0xd5, 0xdb, 0x5f, 0x1a, 0xfe, 0xda, 0x43, 0xb7, 0x76, 0x57, + 0xbb, 0xff, 0xf4, 0x71, 0xf0, 0xbe, 0xe1, 0x5f, 0x9e, 0x3a, 0xc1, 0x8d, 0xa5, 0x5d, 0xe7, 0x73, + 0xb7, 0xda, 0xff, 0x17, 0xac, 0x0e, 0x3f, 0x93, 0xea, 0x6b, 0xb3, 0xec, 0xed, 0x1e, 0xa4, 0xd1, + 0x04, 0x46, 0x39, 0x97, 0x3c, 0x83, 0x1c, 0x24, 0x46, 0x09, 0xb7, 0x22, 0x8d, 0x0a, 0x0b, 0x66, + 0xab, 0xbd, 0x54, 0xb0, 0xc8, 0x65, 0x97, 0x9b, 0x6e, 0xed, 0x94, 0x60, 0x23, 0xa1, 0x22, 0x21, + 0x7b, 0x86, 0x5b, 0x34, 0x45, 0x8a, 0x85, 0x81, 0xe8, 0xb5, 0x11, 0x08, 0x5b, 0xed, 0x19, 0x44, + 0x30, 0x92, 0xf7, 0xeb, 0xf2, 0xe0, 0xe7, 0xef, 0x8f, 0x8d, 0xdd, 0xf0, 0xce, 0xd9, 0x85, 0xb1, + 0xd9, 0x46, 0x2d, 0x7b, 0x3b, 0x8b, 0x0f, 0xeb, 0x6f, 0xeb, 0x0a, 0x87, 0xcc, 0xed, 0xe9, 0x2e, + 0xb9, 0xdd, 0xba, 0x79, 0x7c, 0x44, 0x56, 0x7e, 0x1c, 0x91, 0xf5, 0x25, 0x7f, 0xf0, 0x49, 0xf2, + 0x02, 0x52, 0x1c, 0x7c, 0x6f, 0x36, 0xee, 0x91, 0x07, 0x03, 0x32, 0x1c, 0x51, 0xef, 0x64, 0x44, + 0xbd, 0xd3, 0x11, 0x25, 0xef, 0x2a, 0x4a, 0x3e, 0x55, 0x94, 0x7c, 0xab, 0x28, 0x19, 0x56, 0x94, + 0xfc, 0xaa, 0x28, 0xf9, 0x53, 0x51, 0xef, 0xb4, 0xa2, 0xe4, 0xc3, 0x98, 0x7a, 0xc7, 0x63, 0x4a, + 0x86, 0x63, 0xea, 0x9d, 0x8c, 0xa9, 0xf7, 0xec, 0x51, 0xa6, 0xf4, 0xcb, 0x2c, 0x2e, 0x55, 0x1f, + 0xc1, 0x18, 0x1e, 0x17, 0x96, 0xb9, 0xa0, 0xa7, 0x4c, 0x1e, 0x69, 0xa3, 0x4a, 0xd1, 0x05, 0x13, + 0x4d, 0x31, 0xd3, 0x49, 0xa6, 0x18, 0x1c, 0xe0, 0xf4, 0x24, 0xe7, 0x97, 0x99, 0x5c, 0x72, 0x57, + 0xb5, 0xf3, 0x37, 0x00, 0x00, 0xff, 0xff, 0x50, 0xfe, 0x8d, 0x4c, 0x5f, 0x03, 0x00, 0x00, } func (this *SetStateReq) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/site/public_uam_kubeconfig.pb.go b/pbgo/extschema/schema/site/public_uam_kubeconfig.pb.go index cbf2a0242..98149700a 100644 --- a/pbgo/extschema/schema/site/public_uam_kubeconfig.pb.go +++ b/pbgo/extschema/schema/site/public_uam_kubeconfig.pb.go @@ -44,43 +44,44 @@ func init() { } var fileDescriptor_56ac8a9f27d6b79f = []byte{ - // 569 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0xcf, 0x6b, 0x13, 0x4f, - 0x18, 0xc6, 0x77, 0xf2, 0x85, 0x1e, 0x72, 0xfa, 0xb2, 0x94, 0xd2, 0x46, 0x19, 0x24, 0x20, 0x05, - 0x75, 0x67, 0xc0, 0x22, 0x54, 0x05, 0xc1, 0xf6, 0x60, 0xfd, 0x01, 0x4a, 0xc5, 0x8b, 0x97, 0x32, - 0xbb, 0x79, 0xb3, 0x19, 0x93, 0xdd, 0x77, 0xdc, 0x99, 0x5d, 0x1b, 0x44, 0x28, 0x39, 0x7a, 0x2a, - 0xf4, 0x9f, 0x10, 0xfc, 0x07, 0x84, 0x5e, 0x7a, 0xb3, 0x27, 0x09, 0x7a, 0xe9, 0xd1, 0x6c, 0x3c, - 0x78, 0xcc, 0xcd, 0xab, 0x64, 0x92, 0x34, 0x09, 0xd9, 0x82, 0x88, 0xa7, 0x9d, 0xd9, 0xe7, 0x33, - 0xb3, 0xef, 0xf3, 0xbc, 0xfb, 0x96, 0x59, 0x06, 0x9a, 0x49, 0xe4, 0x3a, 0x68, 0x40, 0x24, 0xb8, - 0x96, 0x06, 0xb8, 0x4a, 0xfd, 0x96, 0x0c, 0xf6, 0x52, 0x11, 0xed, 0x35, 0x53, 0x1f, 0x02, 0x8c, - 0xeb, 0x32, 0x64, 0x2a, 0x41, 0x83, 0xae, 0x3b, 0xe2, 0xd9, 0x88, 0x67, 0x43, 0xbe, 0xe2, 0x85, - 0xd2, 0x34, 0x52, 0x9f, 0x05, 0x18, 0xf1, 0x10, 0x43, 0xe4, 0x16, 0xf5, 0xd3, 0xba, 0xdd, 0xd9, - 0x8d, 0x5d, 0x8d, 0xae, 0xa8, 0x5c, 0x0e, 0x11, 0xc3, 0x16, 0x70, 0xa1, 0x24, 0x17, 0x71, 0x8c, - 0x46, 0x18, 0x89, 0xb1, 0x1e, 0xab, 0x6b, 0x33, 0x6a, 0xc3, 0x18, 0xe5, 0x63, 0xad, 0x3d, 0x96, - 0x2e, 0xcd, 0xd7, 0x8a, 0x6a, 0xf6, 0x1c, 0x2d, 0x30, 0x62, 0xda, 0x0a, 0x26, 0x7a, 0x75, 0x5e, - 0xcf, 0x40, 0x43, 0x9c, 0xcd, 0xdf, 0x71, 0xf3, 0xe3, 0x52, 0xf9, 0xff, 0x17, 0x22, 0x7a, 0x9c, - 0xfa, 0xb0, 0x6d, 0x4d, 0xdf, 0x7f, 0xf6, 0xd0, 0x1d, 0x90, 0xf2, 0xca, 0x76, 0x02, 0xc2, 0xc0, - 0x83, 0x16, 0xfa, 0xa2, 0x35, 0x55, 0x5d, 0x8f, 0x2d, 0xa6, 0xc1, 0x8a, 0xd9, 0x5d, 0x78, 0x5d, - 0x59, 0x66, 0x23, 0x6f, 0x4c, 0x28, 0xc9, 0x76, 0x8c, 0x51, 0x5b, 0x58, 0x6b, 0x57, 0x0f, 0x49, - 0xfe, 0x79, 0x75, 0xa7, 0x7e, 0x6b, 0x3f, 0xf0, 0x84, 0x52, 0xda, 0x88, 0xa0, 0xe9, 0xf9, 0x42, - 0xcb, 0xc0, 0x4b, 0x35, 0x24, 0x37, 0xae, 0x64, 0xa0, 0x3d, 0x89, 0x5e, 0x73, 0x53, 0x7b, 0x6f, - 0x12, 0x69, 0xe0, 0xfc, 0x4d, 0x68, 0x3f, 0x61, 0x85, 0x69, 0x9b, 0x3a, 0xdf, 0x7e, 0x1c, 0x95, - 0xee, 0x55, 0x6f, 0x8f, 0x9b, 0xc8, 0x63, 0x11, 0x81, 0x56, 0x22, 0x00, 0xcd, 0x75, 0x5b, 0x1b, - 0x88, 0x6c, 0x32, 0x9a, 0xbf, 0x1d, 0x3e, 0xde, 0xf1, 0xc9, 0x1d, 0xe7, 0xe7, 0xf5, 0x1d, 0x72, - 0xcd, 0x3d, 0x28, 0x95, 0x97, 0x9f, 0x48, 0x6d, 0x16, 0x0c, 0x5f, 0x2f, 0x32, 0x5c, 0x44, 0x0e, - 0xed, 0x5e, 0xbd, 0x08, 0x9e, 0xc1, 0xb4, 0xaa, 0x1e, 0x91, 0xd3, 0x4f, 0xa5, 0x61, 0x06, 0x8f, - 0x8a, 0x32, 0x88, 0x30, 0x96, 0x06, 0xe7, 0x63, 0x48, 0x40, 0xd4, 0xfe, 0x20, 0x85, 0xbb, 0xee, - 0xdf, 0xa7, 0xe0, 0xfe, 0x22, 0xe5, 0x95, 0x5d, 0xc8, 0xb0, 0xb9, 0xd8, 0xf5, 0xf5, 0x22, 0x5f, - 0x23, 0x76, 0x3e, 0x80, 0x42, 0x70, 0x8a, 0x3c, 0x37, 0xc2, 0xa4, 0x7a, 0x18, 0xc1, 0xfb, 0x7f, - 0xff, 0x0b, 0x6c, 0x56, 0x37, 0x2e, 0x36, 0x9f, 0xd8, 0x62, 0x8b, 0x9b, 0x5f, 0x59, 0x3f, 0x39, - 0x26, 0xff, 0x7d, 0x3d, 0x26, 0x6b, 0x05, 0xc5, 0x3f, 0xf5, 0x5f, 0x41, 0x60, 0x3a, 0x5f, 0x56, - 0x4b, 0x0d, 0xb2, 0xd5, 0x21, 0xdd, 0x1e, 0x75, 0xce, 0x7a, 0xd4, 0x19, 0xf4, 0x28, 0x39, 0xc8, - 0x29, 0xf9, 0x90, 0x53, 0x72, 0x9a, 0x53, 0xd2, 0xcd, 0x29, 0xf9, 0x9e, 0x53, 0xf2, 0x33, 0xa7, - 0xce, 0x20, 0xa7, 0xe4, 0xb0, 0x4f, 0x9d, 0x93, 0x3e, 0x25, 0xdd, 0x3e, 0x75, 0xce, 0xfa, 0xd4, - 0x79, 0xb9, 0x13, 0xa2, 0x6a, 0x86, 0x2c, 0xc3, 0x96, 0x81, 0x24, 0x11, 0x2c, 0xd5, 0xdc, 0x2e, - 0xea, 0x98, 0x44, 0x9e, 0x4a, 0x30, 0x93, 0x35, 0x48, 0xbc, 0x89, 0xcc, 0x95, 0x1f, 0x22, 0x87, - 0x7d, 0x33, 0x99, 0xed, 0xe9, 0x88, 0xfb, 0x4b, 0x76, 0x72, 0x37, 0x7e, 0x07, 0x00, 0x00, 0xff, - 0xff, 0x5d, 0xa4, 0x26, 0x0d, 0xc8, 0x04, 0x00, 0x00, + // 584 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0xc1, 0x6b, 0xd4, 0x40, + 0x14, 0xc6, 0x33, 0x11, 0x14, 0xf6, 0x24, 0xa1, 0x94, 0x76, 0x95, 0x41, 0x16, 0xa4, 0xa0, 0x66, + 0x06, 0x2c, 0x42, 0x55, 0x10, 0x6c, 0x0f, 0x56, 0x14, 0x94, 0x8a, 0x17, 0x2f, 0x65, 0x92, 0xbc, + 0xcd, 0x4e, 0x77, 0x93, 0x37, 0xce, 0x4c, 0x62, 0x17, 0x11, 0xa4, 0xe0, 0x51, 0x10, 0xf4, 0x0f, + 0xf0, 0xa6, 0x17, 0x4f, 0x5e, 0x84, 0x5e, 0x7a, 0xb3, 0x27, 0x29, 0x7a, 0xe9, 0xd1, 0x66, 0x3d, + 0x78, 0xec, 0x9f, 0x20, 0x9b, 0xdd, 0xed, 0xee, 0xd2, 0x14, 0xc4, 0x83, 0xa7, 0xcc, 0xe4, 0xfb, + 0xe6, 0x25, 0xdf, 0x6f, 0x1e, 0xaf, 0xc6, 0x72, 0x30, 0x4c, 0x22, 0x37, 0x61, 0x0b, 0x12, 0xc1, + 0x8d, 0xb4, 0xc0, 0x55, 0x16, 0x74, 0x64, 0xb8, 0x9e, 0x89, 0x64, 0xbd, 0x9d, 0x05, 0x10, 0x62, + 0xda, 0x94, 0x31, 0x53, 0x1a, 0x2d, 0x7a, 0xde, 0xc0, 0xcf, 0x06, 0x7e, 0xd6, 0xf7, 0xd7, 0xfd, + 0x58, 0xda, 0x56, 0x16, 0xb0, 0x10, 0x13, 0x1e, 0x63, 0x8c, 0xbc, 0xb4, 0x06, 0x59, 0xb3, 0xdc, + 0x95, 0x9b, 0x72, 0x35, 0x28, 0x51, 0x3f, 0x1f, 0x23, 0xc6, 0x1d, 0xe0, 0x42, 0x49, 0x2e, 0xd2, + 0x14, 0xad, 0xb0, 0x12, 0x53, 0x33, 0x54, 0xe7, 0x27, 0xd4, 0x96, 0xb5, 0x2a, 0xc0, 0xa8, 0x3b, + 0x94, 0xce, 0x4d, 0xff, 0x2b, 0xaa, 0xc9, 0x73, 0xb4, 0x22, 0x88, 0xed, 0x2a, 0x18, 0xe9, 0x8d, + 0x69, 0x3d, 0x07, 0x03, 0x69, 0x3e, 0x5d, 0xe3, 0xea, 0xab, 0x33, 0xb5, 0xb3, 0x8f, 0x45, 0x72, + 0x2f, 0x0b, 0x60, 0xa5, 0x0c, 0x7d, 0xfb, 0xe1, 0x5d, 0xef, 0xb5, 0x5b, 0x9b, 0x5d, 0xd1, 0x20, + 0x2c, 0xdc, 0xe9, 0x60, 0x20, 0x3a, 0x63, 0xd5, 0xf3, 0xd9, 0x71, 0x1a, 0xac, 0xda, 0xbb, 0x06, + 0x4f, 0xeb, 0x33, 0x6c, 0x90, 0x8d, 0x09, 0x25, 0xd9, 0xaa, 0xb5, 0x6a, 0x19, 0xa3, 0x6e, 0xe3, + 0x13, 0x29, 0xbe, 0xce, 0x41, 0xf3, 0xda, 0x66, 0xe8, 0x0b, 0xa5, 0x8c, 0x15, 0x61, 0xdb, 0x0f, + 0x84, 0x91, 0xa1, 0x9f, 0x19, 0xd0, 0x57, 0x2e, 0x4c, 0x2b, 0xc6, 0x8a, 0x34, 0x12, 0x3a, 0x1a, + 0x8a, 0x39, 0x18, 0x5f, 0xa2, 0xdf, 0x5e, 0x32, 0xfe, 0x33, 0x2d, 0x2d, 0x1c, 0xbd, 0x89, 0xcb, + 0xef, 0x97, 0xc2, 0xf8, 0x0e, 0xb7, 0x7e, 0xfc, 0x7a, 0xeb, 0xde, 0x6a, 0x5c, 0x1f, 0xde, 0x30, + 0x4f, 0x45, 0x02, 0x46, 0x89, 0x10, 0x0c, 0x37, 0x5d, 0x63, 0x21, 0x29, 0xb1, 0x19, 0xfe, 0xbc, + 0xff, 0x78, 0xc1, 0x47, 0x35, 0x8e, 0xce, 0x9b, 0x1b, 0xe4, 0x92, 0xf7, 0xde, 0xad, 0xcd, 0xdc, + 0x97, 0xc6, 0x1e, 0xa3, 0x71, 0xb9, 0x8a, 0x46, 0x95, 0xb3, 0xcf, 0xe2, 0xe2, 0x49, 0xe6, 0x09, + 0x9b, 0x51, 0x8d, 0xcf, 0x64, 0xf7, 0x8b, 0xdb, 0x07, 0xb4, 0x51, 0x05, 0x28, 0xc1, 0x54, 0x5a, + 0x3c, 0x99, 0xd1, 0x91, 0x3e, 0x81, 0x49, 0x83, 0x88, 0xfe, 0x82, 0xd2, 0x4d, 0xef, 0xdf, 0x29, + 0x79, 0xef, 0xdc, 0xda, 0xec, 0x1a, 0xe4, 0xd8, 0x3e, 0xde, 0x32, 0x0b, 0x55, 0xb9, 0x07, 0xde, + 0x69, 0x40, 0x95, 0xc6, 0xb1, 0xe5, 0x91, 0x15, 0x36, 0x33, 0x7d, 0x44, 0x1f, 0xfe, 0x73, 0xff, + 0x2c, 0x35, 0x16, 0x4f, 0x26, 0xa3, 0xcb, 0x24, 0xd5, 0x9d, 0x53, 0x5f, 0xd8, 0xd9, 0x26, 0xa7, + 0xbe, 0x6f, 0x93, 0xf9, 0x8a, 0x64, 0x0f, 0x82, 0x0d, 0x08, 0xed, 0xd6, 0xb7, 0x39, 0xb7, 0x45, + 0x96, 0xb7, 0xc8, 0xde, 0x01, 0x75, 0xf6, 0x0f, 0xa8, 0x73, 0x78, 0x40, 0xc9, 0xcb, 0x82, 0x92, + 0x8f, 0x05, 0x25, 0xbb, 0x05, 0x25, 0x7b, 0x05, 0x25, 0x3f, 0x0b, 0x4a, 0x7e, 0x17, 0xd4, 0x39, + 0x2c, 0x28, 0x79, 0xd3, 0xa3, 0xce, 0x4e, 0x8f, 0x92, 0xbd, 0x1e, 0x75, 0xf6, 0x7b, 0xd4, 0x79, + 0xb2, 0x1a, 0xa3, 0x6a, 0xc7, 0x2c, 0xc7, 0x8e, 0x05, 0xad, 0x05, 0xcb, 0x0c, 0x2f, 0x17, 0x4d, + 0xd4, 0x89, 0xaf, 0x34, 0xe6, 0x32, 0x02, 0xed, 0x8f, 0x64, 0xae, 0x82, 0x18, 0x39, 0x6c, 0xda, + 0xd1, 0xd4, 0x18, 0x0f, 0x8f, 0xe0, 0x74, 0x39, 0x13, 0x16, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, + 0xf3, 0x8d, 0x78, 0x28, 0x22, 0x05, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/site/public_upgradeapi.pb.go b/pbgo/extschema/schema/site/public_upgradeapi.pb.go index fc621c512..df11eb61c 100644 --- a/pbgo/extschema/schema/site/public_upgradeapi.pb.go +++ b/pbgo/extschema/schema/site/public_upgradeapi.pb.go @@ -300,40 +300,41 @@ func init() { } var fileDescriptor_b988dc1927df83d3 = []byte{ - // 518 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x53, 0xbd, 0x6e, 0x13, 0x41, - 0x10, 0xbe, 0x8d, 0x11, 0xc8, 0x57, 0x85, 0xa3, 0xb9, 0x98, 0x68, 0x85, 0x2c, 0x10, 0xc8, 0xe2, - 0x6e, 0x25, 0xfe, 0x8a, 0x50, 0x41, 0x05, 0x95, 0x51, 0x2c, 0x84, 0x44, 0x41, 0xb4, 0x77, 0x19, - 0x6f, 0x16, 0x7c, 0x37, 0xcb, 0xee, 0xde, 0x25, 0x11, 0x8a, 0x84, 0xfc, 0x04, 0x48, 0xbc, 0x04, - 0xef, 0x90, 0x26, 0x1d, 0x54, 0xc8, 0x22, 0x4d, 0x4a, 0x7c, 0xa6, 0xa0, 0xcc, 0x23, 0x20, 0x9f, - 0xcf, 0x7f, 0x10, 0x85, 0x0a, 0xd1, 0xcd, 0xcc, 0xf7, 0x69, 0xf6, 0xfb, 0x66, 0x67, 0xdc, 0x56, - 0x0e, 0x26, 0x94, 0xc8, 0x4c, 0xbc, 0x03, 0x09, 0x67, 0x46, 0x5a, 0x60, 0x2a, 0x8b, 0x7a, 0x32, - 0xde, 0xca, 0x94, 0xd0, 0x7c, 0x1b, 0xb8, 0x92, 0xa1, 0xd2, 0x68, 0xd1, 0xf3, 0x26, 0xdc, 0x70, - 0xc2, 0x0d, 0xc7, 0xdc, 0x46, 0x20, 0xa4, 0xdd, 0xc9, 0xa2, 0x30, 0xc6, 0x84, 0x09, 0x14, 0xc8, - 0x4a, 0x6a, 0x94, 0x75, 0xcb, 0xac, 0x4c, 0xca, 0x68, 0xd2, 0xa2, 0xb1, 0x2e, 0x10, 0x45, 0x0f, - 0x18, 0x57, 0x92, 0xf1, 0x34, 0x45, 0xcb, 0xad, 0xc4, 0xd4, 0x54, 0xe8, 0xd5, 0x65, 0x31, 0xa8, - 0x16, 0x41, 0x7a, 0x86, 0x52, 0xbb, 0xaf, 0x60, 0x8a, 0xaf, 0x2d, 0xe3, 0x8b, 0x50, 0x73, 0x19, - 0xca, 0xc1, 0x40, 0x9a, 0x2f, 0xb7, 0x6f, 0xbe, 0x72, 0x57, 0x9f, 0x4f, 0x0c, 0x77, 0x5e, 0x6c, - 0xc2, 0xdb, 0x0c, 0x8c, 0xf5, 0xd6, 0xdd, 0x7a, 0xca, 0x13, 0x30, 0x8a, 0xc7, 0xe0, 0x93, 0x6b, - 0xe4, 0x56, 0x7d, 0x73, 0x5e, 0xf0, 0x3c, 0xf7, 0xc2, 0x38, 0xf1, 0x57, 0x4a, 0xa0, 0x8c, 0x3d, - 0xdf, 0xbd, 0x94, 0x83, 0x36, 0x12, 0x53, 0xbf, 0x56, 0x96, 0xa7, 0x69, 0xf3, 0x8a, 0x7b, 0x79, - 0xa1, 0xbf, 0x51, 0x98, 0x1a, 0x58, 0x78, 0xb4, 0xdd, 0xf9, 0xb7, 0x8f, 0x8e, 0xfb, 0x4f, 0x1e, - 0xbd, 0x33, 0xac, 0xb9, 0x6e, 0x55, 0x7d, 0xf4, 0xec, 0xa9, 0x77, 0x4c, 0xdc, 0xfa, 0x4c, 0x99, - 0x77, 0x3d, 0xfc, 0xf3, 0x93, 0xc3, 0xdf, 0x07, 0xd3, 0xb8, 0xf1, 0x17, 0x56, 0x65, 0x6f, 0xbf, - 0xf8, 0xec, 0xdf, 0xeb, 0xde, 0xdf, 0x8b, 0x83, 0x31, 0x21, 0x48, 0x78, 0xca, 0x05, 0x24, 0x90, - 0xda, 0x20, 0xe2, 0x46, 0xc6, 0x41, 0x66, 0x40, 0xdf, 0xce, 0xc1, 0x04, 0x12, 0x03, 0x01, 0x29, - 0x68, 0xde, 0x0b, 0x76, 0xb5, 0xb4, 0xd0, 0x3f, 0xfe, 0xf1, 0x71, 0xe5, 0x61, 0xf3, 0x41, 0xb5, - 0x8a, 0x6c, 0xe6, 0xdf, 0xb0, 0x77, 0xb3, 0xf8, 0xa0, 0xdc, 0x81, 0xaa, 0x72, 0xc0, 0xaa, 0x75, - 0xdd, 0x32, 0xbb, 0x1b, 0xa4, 0xb5, 0xe8, 0xaa, 0xdd, 0x39, 0xd7, 0xd5, 0x6c, 0xf2, 0xe7, 0xba, - 0x9a, 0xcf, 0xef, 0xff, 0xb8, 0x42, 0xb3, 0x41, 0x5a, 0x8d, 0x9b, 0x47, 0x87, 0xa4, 0xf6, 0xed, - 0x90, 0xac, 0x9d, 0x21, 0xb4, 0x1d, 0xbd, 0x86, 0xd8, 0xf6, 0xbf, 0xfa, 0x2b, 0xab, 0xe4, 0x71, - 0x9f, 0x0c, 0x86, 0xd4, 0x39, 0x19, 0x52, 0xe7, 0x74, 0x48, 0xc9, 0xfb, 0x82, 0x92, 0x4f, 0x05, - 0x25, 0x5f, 0x0a, 0x4a, 0x06, 0x05, 0x25, 0xdf, 0x0b, 0x4a, 0x7e, 0x16, 0xd4, 0x39, 0x2d, 0x28, - 0xf9, 0x30, 0xa2, 0xce, 0xd1, 0x88, 0x92, 0xc1, 0x88, 0x3a, 0x27, 0x23, 0xea, 0xbc, 0x7c, 0x22, - 0x50, 0xbd, 0x11, 0x61, 0x8e, 0x3d, 0x0b, 0x5a, 0xf3, 0x30, 0x33, 0xac, 0x0c, 0xba, 0xa8, 0x93, - 0x40, 0x69, 0xcc, 0xe5, 0x36, 0xe8, 0x60, 0x0a, 0x33, 0x15, 0x09, 0x64, 0xb0, 0x67, 0xa7, 0x67, - 0x39, 0xbf, 0xce, 0xe8, 0x62, 0x79, 0x59, 0x77, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x5a, 0xef, - 0xdd, 0xad, 0x64, 0x04, 0x00, 0x00, + // 533 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x53, 0xbf, 0x6b, 0x14, 0x4f, + 0x14, 0xdf, 0x49, 0xc2, 0xf7, 0xcb, 0x6d, 0x15, 0xd7, 0x66, 0x73, 0x86, 0x21, 0x1c, 0x8a, 0x72, + 0xb8, 0x3b, 0xa0, 0x68, 0x11, 0x2b, 0xad, 0xb4, 0x3a, 0xc9, 0x21, 0x8a, 0x85, 0x61, 0x76, 0xef, + 0xdd, 0x64, 0xf4, 0x76, 0x66, 0x9c, 0x99, 0xdd, 0x44, 0x24, 0x20, 0xf7, 0x17, 0x08, 0xd6, 0xf6, + 0x82, 0x7f, 0x42, 0x9a, 0x74, 0x5a, 0xc9, 0xa1, 0x4d, 0x4a, 0x6f, 0xcf, 0xc2, 0x32, 0xa5, 0xa5, + 0xdc, 0xee, 0xde, 0x2f, 0x3d, 0x62, 0x25, 0xd8, 0xbd, 0xf7, 0x3e, 0x1f, 0xde, 0x7b, 0x9f, 0xf7, + 0xc3, 0x6d, 0x66, 0x60, 0x42, 0x2e, 0x89, 0x89, 0xf7, 0x20, 0xa1, 0xc4, 0x70, 0x0b, 0x44, 0xa5, + 0x51, 0x8f, 0xc7, 0xbb, 0xa9, 0x62, 0x9a, 0x76, 0x80, 0x2a, 0x1e, 0x2a, 0x2d, 0xad, 0xf4, 0xbc, + 0x92, 0x1b, 0x96, 0xdc, 0x70, 0xcc, 0xad, 0x07, 0x8c, 0xdb, 0xbd, 0x34, 0x0a, 0x63, 0x99, 0x10, + 0x26, 0x99, 0x24, 0x05, 0x35, 0x4a, 0xbb, 0x85, 0x57, 0x38, 0x85, 0x55, 0xa6, 0xa8, 0x6f, 0x32, + 0x29, 0x59, 0x0f, 0x08, 0x55, 0x9c, 0x50, 0x21, 0xa4, 0xa5, 0x96, 0x4b, 0x61, 0x2a, 0xf4, 0xc2, + 0x62, 0x33, 0x52, 0xcd, 0x83, 0x78, 0x49, 0xa7, 0xf6, 0x85, 0x82, 0x09, 0xbe, 0xb1, 0x88, 0xcf, + 0x43, 0x8d, 0x45, 0x28, 0x03, 0x03, 0x22, 0x5b, 0x4c, 0xdf, 0x78, 0xe2, 0xae, 0x3f, 0x28, 0x05, + 0xb7, 0x1f, 0xee, 0xc0, 0xf3, 0x14, 0x8c, 0xf5, 0x36, 0xdd, 0x9a, 0xa0, 0x09, 0x18, 0x45, 0x63, + 0xf0, 0xd1, 0x16, 0xba, 0x52, 0xdb, 0x99, 0x05, 0x3c, 0xcf, 0x5d, 0x1b, 0x3b, 0xfe, 0x4a, 0x01, + 0x14, 0xb6, 0xe7, 0xbb, 0xff, 0x67, 0xa0, 0x0d, 0x97, 0xc2, 0x5f, 0x2d, 0xc2, 0x13, 0xb7, 0x71, + 0xde, 0x3d, 0x37, 0x97, 0xdf, 0x28, 0x29, 0x0c, 0xcc, 0x15, 0x6d, 0xb5, 0xff, 0x6e, 0xd1, 0x71, + 0xfe, 0xb2, 0xe8, 0xb5, 0xf7, 0x6b, 0xae, 0x5b, 0x45, 0x6f, 0xdf, 0xbf, 0xe7, 0xfd, 0x40, 0x6e, + 0x6d, 0xda, 0x99, 0x77, 0x31, 0xfc, 0x7d, 0xc9, 0xe1, 0xaf, 0x83, 0xa9, 0x5f, 0xfa, 0x03, 0xab, + 0x92, 0xf7, 0x16, 0xe5, 0x1f, 0xfc, 0x47, 0xdd, 0x1b, 0x07, 0x71, 0x30, 0x66, 0x04, 0x09, 0x15, + 0x94, 0x41, 0x02, 0xc2, 0x06, 0x11, 0x35, 0x3c, 0x0e, 0x52, 0x03, 0xfa, 0xea, 0xd6, 0x52, 0x82, + 0xb1, 0x54, 0x74, 0xa8, 0xee, 0x94, 0x9c, 0x0c, 0x4c, 0xc0, 0x65, 0xc0, 0x40, 0x80, 0xa6, 0xbd, + 0x60, 0x5f, 0x73, 0x0b, 0xfd, 0x2f, 0xdf, 0xde, 0xac, 0xdc, 0x6a, 0xdc, 0xac, 0xee, 0x95, 0x4c, + 0x87, 0x64, 0xc8, 0xcb, 0xa9, 0x7d, 0x58, 0x1c, 0x4a, 0x15, 0x39, 0x24, 0xd5, 0x4d, 0xef, 0x9a, + 0xfd, 0x6d, 0xd4, 0x9c, 0x97, 0xde, 0x6a, 0x9f, 0x29, 0x7d, 0xba, 0x9e, 0x33, 0xa5, 0xcf, 0x86, + 0xfc, 0x0f, 0x4b, 0x97, 0x66, 0x1b, 0x35, 0xeb, 0x97, 0x8f, 0x8f, 0xd0, 0xea, 0xe7, 0x23, 0xb4, + 0xb1, 0x44, 0x4d, 0x2b, 0x7a, 0x0a, 0xb1, 0xed, 0x7f, 0xf2, 0x57, 0xd6, 0xd1, 0x9d, 0x3e, 0x1a, + 0x0c, 0xb1, 0x73, 0x32, 0xc4, 0xce, 0xe9, 0x10, 0xa3, 0x57, 0x39, 0x46, 0xef, 0x72, 0x8c, 0x3e, + 0xe6, 0x18, 0x0d, 0x72, 0x8c, 0xbe, 0xe6, 0x18, 0x7d, 0xcf, 0xb1, 0x73, 0x9a, 0x63, 0xf4, 0x7a, + 0x84, 0x9d, 0xe3, 0x11, 0x46, 0x83, 0x11, 0x76, 0x4e, 0x46, 0xd8, 0x79, 0x7c, 0x97, 0x49, 0xf5, + 0x8c, 0x85, 0x99, 0xec, 0x59, 0xd0, 0x9a, 0x86, 0xa9, 0x21, 0x85, 0xd1, 0x95, 0x3a, 0x09, 0x94, + 0x96, 0x19, 0xef, 0x80, 0x0e, 0x26, 0x30, 0x51, 0x11, 0x93, 0x04, 0x0e, 0xec, 0xe4, 0xc1, 0x67, + 0x7f, 0x1e, 0xfd, 0x57, 0xfc, 0xe8, 0xf5, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x37, 0xb0, 0xe5, + 0xb1, 0xae, 0x04, 0x00, 0x00, } func (this *UpgradeSWRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/site/site_status_info.pb.go b/pbgo/extschema/schema/site/site_status_info.pb.go index 54ef57691..1a6b59d3c 100644 --- a/pbgo/extschema/schema/site/site_status_info.pb.go +++ b/pbgo/extschema/schema/site/site_status_info.pb.go @@ -256,48 +256,48 @@ func init() { } var fileDescriptor_bc66d63407bdffe4 = []byte{ - // 646 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xb1, 0x6f, 0xd3, 0x4e, - 0x14, 0xc7, 0x73, 0x4e, 0xda, 0xdf, 0xaf, 0x87, 0xa8, 0x84, 0x59, 0xdc, 0x50, 0x9d, 0xaa, 0x48, - 0x88, 0xb6, 0xaa, 0x7d, 0x52, 0x11, 0x03, 0x48, 0x45, 0xa2, 0x20, 0x04, 0x03, 0x02, 0x52, 0x26, - 0x96, 0xe8, 0x6c, 0xbf, 0xb8, 0x07, 0xb1, 0xcf, 0xdc, 0x9d, 0xa3, 0x42, 0x55, 0x09, 0x55, 0x62, - 0x07, 0xb1, 0x30, 0x32, 0xf2, 0x2f, 0x40, 0x97, 0x6e, 0x30, 0xa1, 0x0a, 0x96, 0x8e, 0xd4, 0x61, - 0x80, 0xad, 0x23, 0x23, 0xca, 0x39, 0x69, 0x6b, 0xd2, 0x21, 0x8b, 0xf5, 0xee, 0x3e, 0xdf, 0x7b, - 0xdf, 0x77, 0xcf, 0xf7, 0xf0, 0x42, 0x17, 0x94, 0xc7, 0x05, 0x55, 0xc1, 0x3a, 0xc4, 0x8c, 0x2a, - 0xae, 0xc1, 0x7c, 0x5a, 0x4a, 0x33, 0x9d, 0xa9, 0x16, 0x4f, 0xda, 0xc2, 0x4b, 0xa5, 0xd0, 0xc2, - 0xb6, 0x0b, 0xa9, 0x57, 0x48, 0xbd, 0xbe, 0xaa, 0xee, 0x46, 0x5c, 0xaf, 0x67, 0xbe, 0x17, 0x88, - 0x98, 0x46, 0x22, 0x12, 0xd4, 0x48, 0xfd, 0xac, 0x6d, 0x56, 0x66, 0x61, 0xa2, 0x22, 0x45, 0x7d, - 0x36, 0x12, 0x22, 0xea, 0x00, 0x65, 0x29, 0xa7, 0x2c, 0x49, 0x84, 0x66, 0x9a, 0x8b, 0x44, 0x0d, - 0x68, 0xbd, 0x5c, 0x0b, 0x48, 0x29, 0xe4, 0x90, 0x5d, 0x28, 0x33, 0x91, 0x9e, 0x3c, 0x48, 0x4e, - 0xb9, 0x84, 0x7e, 0x9e, 0xc2, 0x90, 0xcf, 0x94, 0xf9, 0x49, 0x34, 0x5b, 0x46, 0x5d, 0xd6, 0xe1, - 0x21, 0xd3, 0x30, 0xa0, 0x8d, 0x7f, 0x28, 0x28, 0x48, 0xba, 0x65, 0xf3, 0xc6, 0x1b, 0x0b, 0x3b, - 0x6b, 0x5c, 0xc3, 0x9a, 0x69, 0xd8, 0x3d, 0xd0, 0x92, 0x07, 0xaa, 0x09, 0xcf, 0x32, 0x50, 0xda, - 0x9e, 0xc5, 0x53, 0x09, 0x8b, 0x41, 0xa5, 0x2c, 0x00, 0x07, 0xcd, 0xa1, 0xf9, 0xa9, 0xe6, 0xf1, - 0x86, 0x6d, 0xe3, 0x5a, 0xbf, 0x56, 0xc7, 0x32, 0xc0, 0xc4, 0xf6, 0x43, 0x3c, 0xdd, 0xe6, 0xd0, - 0x09, 0x5b, 0x0a, 0x3a, 0x10, 0x68, 0x21, 0x9d, 0xea, 0x5c, 0x75, 0x7e, 0x7a, 0x79, 0xd1, 0x1b, - 0x6d, 0xbf, 0x37, 0xe2, 0x7b, 0xbb, 0x7f, 0xb4, 0x79, 0xd6, 0x64, 0x58, 0x1b, 0x24, 0xb0, 0x17, - 0x30, 0x56, 0x9a, 0x49, 0xdd, 0xd2, 0x3c, 0x06, 0xa7, 0xd6, 0x37, 0x5b, 0xc5, 0x9f, 0x7e, 0xef, - 0x56, 0x27, 0x64, 0xf5, 0x5d, 0x0d, 0x35, 0xa7, 0x0c, 0x7d, 0xc4, 0x63, 0xb0, 0x2f, 0xe2, 0xff, - 0x21, 0x09, 0x0b, 0xe1, 0xc4, 0x88, 0xf0, 0x3f, 0x48, 0x42, 0x23, 0x23, 0xb8, 0xa6, 0x34, 0xa4, - 0xce, 0x64, 0x49, 0xf2, 0xbe, 0x86, 0x9a, 0x66, 0xbf, 0xf1, 0x02, 0xcf, 0x9c, 0xd2, 0x12, 0x95, - 0x8a, 0x44, 0x81, 0xbd, 0x82, 0x6b, 0x21, 0xd3, 0xcc, 0x41, 0x73, 0xd5, 0xf9, 0x33, 0xcb, 0x0b, - 0x63, 0xdd, 0xeb, 0x16, 0xd3, 0xac, 0x69, 0x8e, 0x1d, 0x79, 0x5b, 0x25, 0xef, 0x43, 0x6b, 0xe0, - 0xbd, 0xfc, 0xd1, 0xc2, 0xe7, 0x6f, 0x66, 0x4a, 0x8b, 0xf8, 0x38, 0xcb, 0x8d, 0x07, 0x77, 0xed, - 0x3f, 0x08, 0x9f, 0x1b, 0xc9, 0x6b, 0x2f, 0x8d, 0x65, 0x3f, 0xf8, 0x9d, 0x75, 0x77, 0x4c, 0x75, - 0x71, 0xd3, 0xc6, 0x2b, 0x94, 0x7f, 0x76, 0x56, 0xda, 0x57, 0x36, 0x02, 0xb7, 0xaf, 0x74, 0x63, - 0x96, 0xb0, 0x08, 0x62, 0x48, 0xb4, 0xeb, 0x33, 0xc5, 0x03, 0x37, 0x16, 0x09, 0xd7, 0x42, 0x2e, - 0x75, 0x41, 0xb9, 0x5c, 0xb8, 0x3c, 0x69, 0x4b, 0xa6, 0xb4, 0xcc, 0x02, 0x9d, 0x49, 0x70, 0x25, - 0xb0, 0x70, 0xfb, 0xfb, 0xcf, 0xb7, 0xd6, 0xf5, 0xc6, 0x55, 0x9a, 0x66, 0x7e, 0x87, 0x07, 0xf4, - 0xe8, 0xf1, 0x28, 0xba, 0x79, 0x14, 0x6f, 0x15, 0x4f, 0x7e, 0xb3, 0xff, 0xdd, 0xa2, 0xc5, 0xe4, - 0xd2, 0xb8, 0x28, 0xe6, 0x1a, 0x5a, 0xac, 0x5f, 0xda, 0xdd, 0x41, 0xd5, 0x6f, 0x3b, 0x68, 0xe6, - 0x94, 0xea, 0xef, 0xfb, 0x4f, 0x20, 0xd0, 0xdb, 0x5f, 0x1d, 0xcb, 0x41, 0xab, 0xdb, 0x68, 0xef, - 0x80, 0x54, 0xf6, 0x0f, 0x48, 0xe5, 0xf0, 0x80, 0xa0, 0x97, 0x39, 0x41, 0x1f, 0x72, 0x82, 0xbe, - 0xe4, 0x04, 0xed, 0xe5, 0x04, 0xfd, 0xc8, 0x09, 0xfa, 0x95, 0x93, 0xca, 0x61, 0x4e, 0xd0, 0xeb, - 0x1e, 0xa9, 0xec, 0xf6, 0x08, 0xda, 0xeb, 0x91, 0xca, 0x7e, 0x8f, 0x54, 0x1e, 0xdf, 0x89, 0x44, - 0xfa, 0x34, 0xf2, 0xba, 0xa2, 0xa3, 0x41, 0x4a, 0xe6, 0x65, 0x8a, 0x9a, 0xa0, 0x2d, 0x64, 0xec, - 0xa6, 0x52, 0x74, 0x79, 0x08, 0xd2, 0x1d, 0x62, 0x9a, 0xfa, 0x91, 0xa0, 0xb0, 0xa1, 0x87, 0x23, - 0x7b, 0x3c, 0xb9, 0xfe, 0xa4, 0x99, 0xab, 0xcb, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x82, 0x85, - 0xe5, 0x5d, 0x9b, 0x04, 0x00, 0x00, + // 655 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x31, 0x6f, 0xd3, 0x40, + 0x14, 0xc7, 0x73, 0x4e, 0x5a, 0xa8, 0x11, 0x95, 0x30, 0x8b, 0x1b, 0xaa, 0x53, 0x14, 0x09, 0xd1, + 0x56, 0xb5, 0x2d, 0x15, 0x31, 0x80, 0x04, 0x12, 0x05, 0x21, 0x18, 0x10, 0x90, 0x32, 0xb1, 0x44, + 0x17, 0xfb, 0xc5, 0x3d, 0x88, 0x7d, 0xe6, 0xee, 0x39, 0x2a, 0x54, 0x95, 0x50, 0x3f, 0x01, 0x88, + 0x85, 0x0d, 0x46, 0x06, 0x3e, 0x01, 0x5d, 0xba, 0xc1, 0x84, 0x2a, 0x58, 0x3a, 0xb6, 0x0e, 0x03, + 0x6c, 0xfd, 0x08, 0x28, 0xe7, 0x24, 0xad, 0x49, 0x86, 0x2e, 0xa7, 0x77, 0xf7, 0xff, 0xdd, 0xfb, + 0xdf, 0x7b, 0xf6, 0x33, 0x17, 0xbb, 0xa0, 0x5c, 0x2e, 0x3c, 0xe5, 0xaf, 0x43, 0xc4, 0x3c, 0xc5, + 0x11, 0xf4, 0xd2, 0x54, 0xc8, 0x30, 0x55, 0x4d, 0x1e, 0xb7, 0x85, 0x9b, 0x48, 0x81, 0xc2, 0xb2, + 0x72, 0xd4, 0xcd, 0x51, 0xb7, 0x4f, 0x55, 0x9d, 0x90, 0xe3, 0x7a, 0xda, 0x72, 0x7d, 0x11, 0x79, + 0xa1, 0x08, 0x85, 0xa7, 0xd1, 0x56, 0xda, 0xd6, 0x3b, 0xbd, 0xd1, 0x51, 0x9e, 0xa2, 0x3a, 0x1f, + 0x0a, 0x11, 0x76, 0xc0, 0x63, 0x09, 0xf7, 0x58, 0x1c, 0x0b, 0x64, 0xc8, 0x45, 0xac, 0x06, 0x6a, + 0xb5, 0xf8, 0x16, 0x90, 0x52, 0xc8, 0xa1, 0x76, 0xa9, 0xa8, 0x89, 0xe4, 0xe4, 0x45, 0x3a, 0xa1, + 0x08, 0x7c, 0x95, 0xc0, 0x50, 0x9f, 0x2b, 0xea, 0x27, 0xa5, 0xf9, 0xa2, 0xd4, 0x65, 0x1d, 0x1e, + 0x30, 0x84, 0x81, 0x5a, 0xff, 0x4f, 0x05, 0x05, 0x71, 0xb7, 0x68, 0x5e, 0x7f, 0x67, 0x98, 0xf6, + 0x1a, 0x47, 0x58, 0xd3, 0x0d, 0x7b, 0x08, 0x28, 0xb9, 0xaf, 0x1a, 0xf0, 0x32, 0x05, 0x85, 0xd6, + 0xbc, 0x39, 0x13, 0xb3, 0x08, 0x54, 0xc2, 0x7c, 0xb0, 0x49, 0x8d, 0x2c, 0xcc, 0x34, 0x8e, 0x0f, + 0x2c, 0xcb, 0xac, 0xf4, 0xdf, 0x6a, 0x1b, 0x5a, 0xd0, 0xb1, 0xf5, 0xc4, 0x9c, 0x6d, 0x73, 0xe8, + 0x04, 0x4d, 0x05, 0x1d, 0xf0, 0x51, 0x48, 0xbb, 0x5c, 0x2b, 0x2f, 0xcc, 0xae, 0x2c, 0xb9, 0xe3, + 0xed, 0x77, 0xc7, 0x7c, 0xef, 0xf5, 0xaf, 0x36, 0xce, 0xeb, 0x0c, 0x6b, 0x83, 0x04, 0xd6, 0xa2, + 0x69, 0x2a, 0x64, 0x12, 0x9b, 0xc8, 0x23, 0xb0, 0x2b, 0x7d, 0xb3, 0x55, 0xf3, 0xeb, 0xdf, 0xdd, + 0xf2, 0x94, 0x2c, 0x7f, 0xa8, 0x90, 0xc6, 0x8c, 0x56, 0x9f, 0xf2, 0x08, 0xac, 0xcb, 0xe6, 0x59, + 0x88, 0x83, 0x1c, 0x9c, 0x1a, 0x03, 0xcf, 0x40, 0x1c, 0x68, 0x8c, 0x9a, 0x15, 0x85, 0x90, 0xd8, + 0xd3, 0x05, 0xe4, 0x53, 0x85, 0x34, 0xf4, 0x79, 0xfd, 0xb5, 0x39, 0x37, 0xa1, 0x25, 0x2a, 0x11, + 0xb1, 0x02, 0xeb, 0xa6, 0x59, 0x09, 0x18, 0x32, 0x9b, 0xd4, 0xca, 0x0b, 0xe7, 0x56, 0x16, 0x4f, + 0x55, 0xd7, 0x5d, 0x86, 0xac, 0xa1, 0xaf, 0x8d, 0xbc, 0x8d, 0x82, 0xf7, 0x91, 0x31, 0xf0, 0x5e, + 0x39, 0x30, 0xcc, 0x8b, 0x77, 0x52, 0x85, 0x22, 0x3a, 0xce, 0x72, 0xfb, 0xf1, 0x03, 0xeb, 0xa3, + 0x61, 0x5e, 0x18, 0xcb, 0x6b, 0x2d, 0x9f, 0xca, 0x7e, 0xf0, 0x39, 0xab, 0xce, 0x29, 0xe9, 0xbc, + 0xd2, 0xfa, 0x17, 0x92, 0x7d, 0xb3, 0x83, 0xf6, 0xb5, 0x0d, 0xdf, 0xe9, 0x93, 0x4e, 0xc4, 0x62, + 0x16, 0x42, 0x04, 0x31, 0x3a, 0x2d, 0xa6, 0xb8, 0xef, 0x44, 0x22, 0xe6, 0x28, 0xe4, 0x72, 0x6d, + 0x22, 0xa3, 0x90, 0xc5, 0x01, 0x93, 0xc1, 0x08, 0xeb, 0x82, 0x72, 0xb8, 0x70, 0x78, 0xdc, 0x96, + 0x4c, 0xa1, 0x4c, 0x7d, 0x4c, 0x25, 0x38, 0x12, 0x58, 0xb0, 0xfd, 0xeb, 0xf7, 0x7b, 0xe3, 0x56, + 0xfd, 0xba, 0x97, 0xa4, 0xad, 0x0e, 0xf7, 0xbd, 0xd1, 0x3f, 0xa6, 0xbc, 0xcd, 0x51, 0xbc, 0x95, + 0x4f, 0xc6, 0x66, 0x7f, 0xdd, 0xf2, 0xf2, 0x01, 0xf7, 0xa2, 0xfc, 0xcd, 0x37, 0xc8, 0x52, 0xf5, + 0xca, 0xee, 0x0e, 0x29, 0xff, 0xdc, 0x21, 0x73, 0x13, 0x8a, 0x7c, 0xd4, 0x7a, 0x0e, 0x3e, 0x6e, + 0xff, 0xb0, 0x0d, 0x9b, 0xac, 0x6e, 0x93, 0xbd, 0x43, 0x5a, 0xda, 0x3f, 0xa4, 0xa5, 0xa3, 0x43, + 0x4a, 0xde, 0x64, 0x94, 0x7c, 0xce, 0x28, 0xf9, 0x9e, 0x51, 0xb2, 0x97, 0x51, 0x72, 0x90, 0x51, + 0xf2, 0x27, 0xa3, 0xa5, 0xa3, 0x8c, 0x92, 0xb7, 0x3d, 0x5a, 0xda, 0xed, 0x51, 0xb2, 0xd7, 0xa3, + 0xa5, 0xfd, 0x1e, 0x2d, 0x3d, 0xbb, 0x1f, 0x8a, 0xe4, 0x45, 0xe8, 0x76, 0x45, 0x07, 0x41, 0x4a, + 0xe6, 0xa6, 0xca, 0xd3, 0x41, 0x5b, 0xc8, 0xc8, 0x49, 0xa4, 0xe8, 0xf2, 0x00, 0xa4, 0x33, 0x94, + 0xbd, 0xa4, 0x15, 0x0a, 0x0f, 0x36, 0x70, 0x38, 0xd9, 0xc7, 0x03, 0xde, 0x9a, 0xd6, 0xe3, 0x77, + 0xf5, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x30, 0x1b, 0x2c, 0x3e, 0xc2, 0x04, 0x00, 0x00, } func (this *SiteStatusMetricsRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/site/types.pb.go b/pbgo/extschema/schema/site/types.pb.go index 4521b62c7..73582b31a 100644 --- a/pbgo/extschema/schema/site/types.pb.go +++ b/pbgo/extschema/schema/site/types.pb.go @@ -1845,6 +1845,11 @@ type GlobalSpecType struct { // Optional bgp peer IPv6 address that can be used as parameter for BGP configuration when BGP is configured // to fetch BGP peer IPv6 address from site Object. This can be used to change peer IPv6 address per site in fleet. BgpPeerAddressV6 string `protobuf:"bytes,168,opt,name=bgp_peer_address_v6,json=bgpPeerAddressV6,proto3" json:"bgp_peer_address_v6,omitempty"` + // Kubernetes Upgrade Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // K8s Node drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,169,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } @@ -2359,6 +2364,13 @@ func (m *GlobalSpecType) GetBgpPeerAddressV6() string { return "" } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // Create Site // // x-displayName: "Create Site" @@ -2880,6 +2892,7 @@ type GetSpecType struct { VmEnabled bool `protobuf:"varint,152,opt,name=vm_enabled,json=vmEnabled,proto3" json:"vm_enabled,omitempty"` SiteToSiteIpsecConnectivity []*SiteToSiteTunnelConnectivity `protobuf:"bytes,153,rep,name=site_to_site_ipsec_connectivity,json=siteToSiteIpsecConnectivity,proto3" json:"site_to_site_ipsec_connectivity,omitempty"` IpsecSslNodesFqdn []string `protobuf:"bytes,156,rep,name=ipsec_ssl_nodes_fqdn,json=ipsecSslNodesFqdn,proto3" json:"ipsec_ssl_nodes_fqdn,omitempty"` + MainNodes []*Node `protobuf:"bytes,158,rep,name=main_nodes,json=mainNodes,proto3" json:"main_nodes,omitempty"` MultusEnabled bool `protobuf:"varint,159,opt,name=multus_enabled,json=multusEnabled,proto3" json:"multus_enabled,omitempty"` PrivateConnectivity *views.PrivateConnectivityType `protobuf:"bytes,167,opt,name=private_connectivity,json=privateConnectivity,proto3" json:"private_connectivity,omitempty"` } @@ -3178,6 +3191,13 @@ func (m *GetSpecType) GetIpsecSslNodesFqdn() []string { return nil } +func (m *GetSpecType) GetMainNodes() []*Node { + if m != nil { + return m.MainNodes + } + return nil +} + func (m *GetSpecType) GetMultusEnabled() bool { if m != nil { return m.MultusEnabled @@ -3670,6 +3690,11 @@ type TunnelConnectionStatus struct { // x-displayName: "Ssl tunnel flap reason" // tunnel flap reason(Ssl) SslTunnelFlapReason *TunnelFlapReason `protobuf:"bytes,10,opt,name=ssl_tunnel_flap_reason,json=sslTunnelFlapReason,proto3" json:"ssl_tunnel_flap_reason,omitempty"` + // verNodeIP + // + // x-displayName: "VER Node IP" + // The VER node IP in the local site from which the connection is setup + VerNodeIp string `protobuf:"bytes,11,opt,name=verNodeIp,proto3" json:"verNodeIp,omitempty"` } func (m *TunnelConnectionStatus) Reset() { *m = TunnelConnectionStatus{} } @@ -3770,6 +3795,13 @@ func (m *TunnelConnectionStatus) GetSslTunnelFlapReason() *TunnelFlapReason { return nil } +func (m *TunnelConnectionStatus) GetVerNodeIp() string { + if m != nil { + return m.VerNodeIp + } + return "" +} + // F5XC Software Status // // x-displayName: "F5XC Software Status" @@ -8117,555 +8149,561 @@ func init() { } var fileDescriptor_3b1b2598d34ae46b = []byte{ - // 8761 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x70, 0x1c, 0xd9, - 0x75, 0x18, 0x7a, 0x1e, 0xc0, 0xcc, 0x19, 0x0c, 0xd0, 0xb8, 0x78, 0x0d, 0x86, 0x24, 0x38, 0x9c, - 0xa5, 0xd6, 0x24, 0x76, 0x08, 0x12, 0x20, 0x89, 0xe5, 0x42, 0x5a, 0x69, 0x81, 0xc1, 0x00, 0x1c, - 0x12, 0x98, 0x19, 0xf5, 0x00, 0xa0, 0x69, 0x69, 0xd5, 0xee, 0xe9, 0xb9, 0x18, 0xb4, 0x31, 0x33, - 0xdd, 0xdb, 0xdd, 0x33, 0x7c, 0x48, 0xb4, 0x56, 0x8a, 0xac, 0x38, 0x52, 0x2c, 0xc9, 0x4a, 0xe4, - 0xc4, 0x4e, 0x64, 0x3b, 0x89, 0xad, 0xb8, 0x54, 0x95, 0x4a, 0xca, 0xe5, 0xaa, 0xa4, 0x8c, 0x94, - 0xa2, 0xd0, 0xe5, 0xaa, 0xd4, 0xea, 0x67, 0xf3, 0x91, 0x64, 0x2b, 0x1f, 0x29, 0x8b, 0xfb, 0x11, - 0xc7, 0xa9, 0x4a, 0x54, 0xf9, 0xc8, 0xa3, 0x2a, 0x95, 0xa4, 0xee, 0xa3, 0x7b, 0xba, 0xe7, 0x41, - 0x82, 0xbb, 0xab, 0x8d, 0x5c, 0xb5, 0xfb, 0xb1, 0xe8, 0x3e, 0xf7, 0x9c, 0x73, 0xcf, 0x3d, 0xf7, - 0xdc, 0xf3, 0xb8, 0x7d, 0xef, 0x10, 0xe6, 0xdb, 0xd8, 0x5a, 0xd4, 0xf4, 0xcb, 0x96, 0x7a, 0x88, - 0x1b, 0xca, 0x65, 0x4b, 0xb3, 0xf1, 0x65, 0xfb, 0x81, 0x81, 0xad, 0x45, 0xc3, 0xd4, 0x6d, 0x1d, - 0x21, 0xd6, 0xbe, 0xc8, 0xda, 0x17, 0x49, 0x7b, 0xf2, 0x52, 0x4d, 0xb3, 0x0f, 0x5b, 0x95, 0x45, - 0x55, 0x6f, 0x5c, 0xae, 0xe9, 0x35, 0xfd, 0x32, 0x45, 0xad, 0xb4, 0x0e, 0xe8, 0x1b, 0x7d, 0xa1, - 0x4f, 0x8c, 0x45, 0xf2, 0x6c, 0x4d, 0xd7, 0x6b, 0x75, 0xdc, 0xc1, 0xb2, 0xb5, 0x06, 0xb6, 0x6c, - 0xa5, 0x61, 0x70, 0x84, 0x59, 0xbf, 0x0c, 0x4d, 0x6c, 0xf3, 0x86, 0x53, 0xfe, 0x06, 0xdd, 0xb0, - 0x35, 0xbd, 0xc9, 0x25, 0x4b, 0x9e, 0xf1, 0x37, 0x1a, 0x6d, 0x5b, 0xf6, 0x08, 0x9e, 0x9c, 0xf3, - 0x37, 0x7b, 0x9b, 0x4e, 0xfb, 0x9b, 0xda, 0x4a, 0x5d, 0xab, 0x2a, 0x36, 0xe6, 0xad, 0xa9, 0xae, - 0x56, 0x0d, 0xdf, 0x93, 0xfd, 0x3d, 0x9f, 0xef, 0xc5, 0xb0, 0xa8, 0xe6, 0xbc, 0x02, 0xa4, 0x55, - 0x18, 0x5f, 0xd7, 0x9b, 0xd5, 0x1d, 0xdc, 0xa8, 0x60, 0xd3, 0xda, 0x7d, 0x60, 0x60, 0x84, 0x20, - 0xd4, 0x54, 0x1a, 0x38, 0x21, 0xa4, 0x84, 0x0b, 0x51, 0x89, 0x3e, 0xa3, 0x33, 0x00, 0x75, 0xad, - 0x79, 0x24, 0x5b, 0xb6, 0x62, 0xe3, 0x44, 0x20, 0x25, 0x5c, 0x88, 0x48, 0x51, 0x02, 0x29, 0x13, - 0x40, 0xa7, 0xd9, 0xc0, 0xb8, 0x9a, 0x08, 0xa6, 0x84, 0x0b, 0x71, 0xde, 0x4c, 0x00, 0xe9, 0xcf, - 0xc2, 0xe9, 0xb2, 0x66, 0xe3, 0x5d, 0x9d, 0xfe, 0xbf, 0xd5, 0x6c, 0xe2, 0x7a, 0x56, 0x6f, 0x36, - 0xb1, 0x6a, 0x6b, 0x6d, 0xcd, 0x7e, 0x80, 0x52, 0x10, 0xab, 0x62, 0xcb, 0xd6, 0x9a, 0x0a, 0x19, - 0x40, 0x42, 0x48, 0x05, 0x2f, 0x44, 0x25, 0x2f, 0x88, 0xc8, 0x64, 0xe8, 0xa6, 0x4d, 0x7b, 0x8e, - 0x4b, 0xf4, 0x79, 0x75, 0xf8, 0xad, 0x63, 0x21, 0x20, 0x0a, 0xe9, 0x2a, 0x84, 0x0a, 0x7a, 0xb5, - 0xbf, 0xdc, 0x67, 0x21, 0x66, 0xd5, 0x75, 0x59, 0xa9, 0x56, 0x4d, 0x6c, 0x59, 0x94, 0x3c, 0x2a, - 0x81, 0x55, 0xd7, 0xd7, 0x18, 0x84, 0x21, 0x68, 0x2e, 0x42, 0xd0, 0x41, 0xd0, 0x38, 0x82, 0xdb, - 0x4b, 0x03, 0x62, 0x59, 0x5d, 0x37, 0xab, 0x44, 0x22, 0x6c, 0xa1, 0x4b, 0x10, 0xa9, 0x2b, 0xb6, - 0x66, 0xb7, 0xaa, 0xac, 0xc3, 0xc0, 0xfa, 0xc4, 0x1f, 0xff, 0xa7, 0x1f, 0x06, 0x47, 0x01, 0xce, - 0x0c, 0x0d, 0xfd, 0xd1, 0xfa, 0xa5, 0xa1, 0xa1, 0x3f, 0x7a, 0x2c, 0xb9, 0x28, 0xe8, 0x32, 0x44, - 0xeb, 0x7a, 0xb3, 0xc6, 0xf0, 0x03, 0xdd, 0xf8, 0xd7, 0xb2, 0x97, 0x86, 0x86, 0xae, 0xfd, 0x89, - 0xd4, 0xc1, 0x49, 0xcf, 0xc3, 0xcc, 0xed, 0x1b, 0xe5, 0x35, 0x43, 0x2b, 0x63, 0xb3, 0x8d, 0xcd, - 0x92, 0x62, 0x2a, 0x0d, 0x6c, 0x63, 0xd3, 0xba, 0x15, 0x8a, 0x08, 0x62, 0x20, 0xfd, 0x6f, 0x05, - 0x48, 0x6e, 0xe0, 0x03, 0xa5, 0x55, 0xb7, 0xf7, 0x9a, 0x55, 0x6c, 0xd6, 0x95, 0x07, 0x05, 0x6c, - 0xdf, 0xd3, 0xcd, 0x23, 0x3a, 0x87, 0x1b, 0x80, 0xe8, 0x54, 0xd7, 0x75, 0x55, 0xa9, 0xcb, 0x7a, - 0xcb, 0xb6, 0x34, 0xde, 0x71, 0x6c, 0x79, 0x6a, 0xd1, 0xbf, 0x5a, 0x72, 0x0d, 0xc3, 0x7e, 0x70, - 0x73, 0x48, 0x12, 0x09, 0xc5, 0x36, 0x21, 0x28, 0x32, 0x7c, 0xb4, 0x0e, 0x13, 0x1e, 0x2e, 0x5a, - 0x93, 0x32, 0x09, 0x3e, 0x95, 0xc9, 0xb8, 0xcb, 0x24, 0x4f, 0xd1, 0xd7, 0x2f, 0xc0, 0xb4, 0x61, - 0x6a, 0x6d, 0xc5, 0xc6, 0xb2, 0xa2, 0xaa, 0xd8, 0xb2, 0x64, 0xf5, 0x50, 0xd7, 0x54, 0x8c, 0xc6, - 0x7f, 0x78, 0x2c, 0x04, 0xde, 0x3e, 0x16, 0x84, 0x27, 0xc7, 0x42, 0x70, 0x39, 0x73, 0x95, 0x0f, - 0xec, 0x4f, 0x43, 0x30, 0x5d, 0x6a, 0x55, 0xea, 0x9a, 0x75, 0xb8, 0x9f, 0x2f, 0xd1, 0x71, 0x5b, - 0x25, 0x6c, 0xae, 0x3d, 0x44, 0x6b, 0x00, 0x4c, 0x04, 0xb9, 0xad, 0x19, 0xcc, 0x48, 0xd6, 0xd3, - 0x44, 0x89, 0xd1, 0x6f, 0x0b, 0xc3, 0xe9, 0x90, 0x19, 0xb8, 0x2f, 0x90, 0xb7, 0xf0, 0xb7, 0x85, - 0x80, 0x18, 0x74, 0x9e, 0x12, 0x82, 0x14, 0x65, 0x54, 0xfb, 0x9a, 0x81, 0x76, 0x20, 0xc6, 0x75, - 0x41, 0x79, 0x04, 0x28, 0x8f, 0xcc, 0xb3, 0x78, 0x44, 0x04, 0x0f, 0x37, 0xe0, 0x0c, 0x08, 0xbb, - 0x2d, 0x88, 0x77, 0x24, 0x92, 0xdb, 0x2b, 0x89, 0x61, 0xca, 0xf0, 0x05, 0x82, 0x0e, 0xdf, 0x16, - 0x46, 0xd2, 0x61, 0x33, 0xf8, 0xa6, 0xd0, 0x5f, 0xaa, 0x98, 0x2b, 0xd5, 0xfe, 0x0a, 0xca, 0xc3, - 0x98, 0x47, 0x2e, 0xc2, 0x69, 0xe4, 0xe4, 0x9c, 0x46, 0x3b, 0x12, 0xed, 0xaf, 0xa0, 0x15, 0x98, - 0xf0, 0xb2, 0x52, 0xe9, 0x92, 0xa0, 0x66, 0xbd, 0x0e, 0x94, 0xc8, 0x0c, 0x26, 0xde, 0x0c, 0x48, - 0xe3, 0x1d, 0xa2, 0x2c, 0x5d, 0x29, 0xd7, 0x40, 0xf4, 0x8c, 0x85, 0x91, 0x85, 0x7a, 0xc8, 0xc6, - 0x5c, 0xa9, 0x19, 0xd5, 0x37, 0x05, 0x18, 0x51, 0x1e, 0xca, 0x14, 0x3b, 0x4c, 0xb1, 0xdb, 0x04, - 0xfb, 0x0d, 0x53, 0x5f, 0x6e, 0x7c, 0xee, 0x33, 0x4b, 0x97, 0xae, 0xbf, 0xfe, 0xf9, 0xa5, 0x47, - 0xe7, 0xbf, 0xf0, 0xb9, 0xb5, 0x87, 0x2d, 0x13, 0xaf, 0xd5, 0x6d, 0x6c, 0x92, 0xe5, 0x23, 0xe1, - 0x9a, 0xa6, 0x37, 0xcf, 0x7f, 0xe1, 0x73, 0x9f, 0x51, 0x2e, 0x3d, 0x7c, 0xfd, 0xf3, 0xcb, 0x8f, - 0x2e, 0x91, 0x87, 0x2b, 0x97, 0x5e, 0x79, 0xfd, 0xf3, 0xd7, 0x32, 0xcb, 0x57, 0x3c, 0xaf, 0xcb, - 0x8f, 0x5c, 0xac, 0x6b, 0x99, 0xa5, 0xeb, 0x7d, 0x11, 0x69, 0x17, 0xd2, 0xb0, 0xf2, 0xb0, 0xa0, - 0x34, 0xb0, 0xbb, 0x5e, 0xbf, 0xf3, 0x73, 0x30, 0xb6, 0x55, 0xd7, 0x2b, 0x4a, 0xbd, 0x6c, 0x60, - 0x95, 0x2e, 0x8a, 0x1c, 0x44, 0x5d, 0xff, 0x47, 0x17, 0xed, 0xd8, 0xf2, 0xe9, 0xc5, 0xde, 0xc8, - 0xb1, 0x48, 0xbd, 0xd4, 0x03, 0x03, 0xf3, 0x91, 0x7f, 0x59, 0x08, 0xa4, 0x86, 0xa4, 0x88, 0xc5, - 0xa1, 0x68, 0x1d, 0x46, 0x29, 0x1b, 0xab, 0x55, 0xa1, 0x9c, 0xc2, 0x94, 0xd3, 0xd9, 0x41, 0x9c, - 0xca, 0x0c, 0x4d, 0x8a, 0x59, 0x9d, 0x17, 0x74, 0x1e, 0x46, 0x7c, 0x3e, 0xc9, 0xa7, 0x64, 0xa7, - 0x09, 0xad, 0x41, 0x4c, 0xed, 0xf8, 0x1c, 0xbe, 0xf2, 0xfa, 0x76, 0xe4, 0x71, 0x4d, 0x92, 0x97, - 0x06, 0xdd, 0x84, 0x51, 0x95, 0xb9, 0x5a, 0x5c, 0x95, 0x4d, 0x9c, 0xa8, 0xa5, 0x82, 0x17, 0x62, - 0x3d, 0xc3, 0x2e, 0x56, 0x7e, 0x09, 0xab, 0xb6, 0x84, 0x0f, 0xe8, 0xb0, 0x47, 0xbe, 0xff, 0x28, - 0x44, 0xb8, 0x12, 0x4e, 0x9c, 0x54, 0xc2, 0xe8, 0xb3, 0x30, 0xeb, 0xe5, 0x24, 0x1f, 0xe8, 0xa6, - 0xac, 0xea, 0xcd, 0x03, 0xad, 0x96, 0x38, 0x7c, 0x1e, 0xa6, 0x53, 0x1e, 0xa6, 0x9b, 0xba, 0x99, - 0xa5, 0x2c, 0xd0, 0x35, 0x08, 0xb5, 0x71, 0x4d, 0x49, 0x68, 0x74, 0x8c, 0xa9, 0x2e, 0x56, 0xc4, - 0x09, 0x6a, 0x2a, 0xee, 0x78, 0x41, 0x89, 0x62, 0xa3, 0x57, 0x21, 0xaa, 0x98, 0xd8, 0x92, 0xeb, - 0x9a, 0x65, 0x27, 0x7e, 0x89, 0x4a, 0xf1, 0x6c, 0xd2, 0x08, 0x21, 0xd9, 0xd6, 0x2c, 0x1b, 0xad, - 0x40, 0xd8, 0x54, 0x8e, 0x14, 0x33, 0x71, 0x74, 0xc2, 0x5e, 0x19, 0x3a, 0x7a, 0x19, 0xc2, 0xba, - 0x81, 0x4d, 0x25, 0xf1, 0x2b, 0xc2, 0x49, 0x09, 0x29, 0x3e, 0x7a, 0x05, 0x86, 0xf5, 0x0a, 0xae, - 0x6b, 0xf7, 0x13, 0x7f, 0xeb, 0xa4, 0x94, 0x9c, 0x00, 0x5d, 0x85, 0x60, 0xdb, 0x68, 0x24, 0x7e, - 0xef, 0xa4, 0x74, 0x04, 0x1b, 0x5d, 0x83, 0x38, 0x89, 0xd8, 0x9a, 0x2a, 0x9b, 0x7a, 0x8b, 0x98, - 0x50, 0x9d, 0xba, 0x95, 0x71, 0xaf, 0x5b, 0xf9, 0x9f, 0x82, 0x20, 0x8d, 0x32, 0x2c, 0x89, 0x22, - 0xa1, 0xd7, 0x61, 0xfc, 0xe8, 0x86, 0x25, 0x2b, 0x86, 0x26, 0x5b, 0x34, 0xfa, 0x58, 0x89, 0x06, - 0xd5, 0xed, 0xf5, 0x7e, 0xa6, 0xe7, 0x5f, 0x64, 0x8b, 0xb7, 0x6f, 0x58, 0x6e, 0xd4, 0xb2, 0x72, - 0x4d, 0xdb, 0x7c, 0x20, 0xc5, 0x8f, 0xbc, 0x30, 0xf4, 0x22, 0x44, 0x0d, 0xe2, 0xe0, 0x55, 0x59, - 0x33, 0x12, 0x4d, 0x6a, 0xfd, 0x51, 0x22, 0x50, 0xc8, 0x0c, 0x18, 0x82, 0x14, 0x61, 0x6d, 0x79, - 0x03, 0x5d, 0x04, 0x70, 0x22, 0x87, 0x66, 0x24, 0xbe, 0x26, 0x74, 0x63, 0x46, 0x79, 0x6b, 0xde, - 0x40, 0x2f, 0x03, 0xd2, 0x0c, 0x0b, 0xab, 0xb2, 0x65, 0xd5, 0xa9, 0xff, 0x3a, 0x78, 0xa3, 0xda, - 0x4c, 0x7c, 0xdd, 0x4f, 0x72, 0x28, 0x48, 0xe3, 0x14, 0xab, 0x6c, 0xd5, 0xf7, 0x35, 0x63, 0xf3, - 0x8d, 0x6a, 0x13, 0x5d, 0x00, 0x50, 0xeb, 0x2d, 0xcb, 0xc6, 0x26, 0xe9, 0x43, 0xef, 0xe9, 0x82, - 0x37, 0xe6, 0x0d, 0xb4, 0x09, 0x63, 0xd4, 0xd4, 0xda, 0xb6, 0x69, 0x30, 0x7b, 0x33, 0x4e, 0x68, - 0x6f, 0xa3, 0x84, 0x6e, 0xdf, 0x36, 0x0d, 0x6a, 0x73, 0xab, 0x30, 0xd7, 0xd6, 0x89, 0x23, 0x34, - 0x15, 0xd9, 0xd2, 0x0f, 0xec, 0x7b, 0x8a, 0x89, 0x65, 0xa2, 0x17, 0x92, 0xf9, 0xbc, 0x41, 0xd3, - 0x8f, 0x59, 0x07, 0xa1, 0xcc, 0xdb, 0xf7, 0x59, 0x33, 0x91, 0xd6, 0x13, 0x01, 0xcd, 0x1e, 0x69, - 0x3b, 0x81, 0x6e, 0xc1, 0x1f, 0xe8, 0xee, 0x77, 0xa3, 0x7a, 0xa3, 0xd8, 0x5e, 0x77, 0x14, 0xfb, - 0x7b, 0x4c, 0x6f, 0x57, 0xfe, 0xe2, 0xd1, 0x0b, 0x55, 0xdc, 0xd0, 0x97, 0x32, 0x36, 0xb6, 0xec, - 0x8c, 0x6a, 0xda, 0x19, 0xcb, 0x56, 0x6a, 0x5a, 0xb3, 0x96, 0x21, 0x82, 0x57, 0x94, 0xe6, 0x91, - 0xdc, 0xc0, 0x2a, 0x77, 0x5c, 0x6f, 0x0a, 0x5d, 0x31, 0xed, 0x4e, 0x4f, 0x4c, 0xfb, 0xfb, 0xef, - 0x95, 0xaf, 0x3f, 0xc2, 0x35, 0x21, 0x4e, 0x18, 0x5a, 0xb8, 0x4e, 0x12, 0x48, 0xbd, 0x99, 0xf8, - 0x07, 0xcc, 0x97, 0xa7, 0xfa, 0x59, 0xe7, 0x7e, 0xbe, 0x54, 0x76, 0x10, 0xd7, 0x5f, 0x3c, 0x59, - 0xcf, 0xd2, 0x68, 0x5b, 0x33, 0x5c, 0x2a, 0x74, 0x08, 0x13, 0xa4, 0x3f, 0x83, 0xa6, 0x22, 0xb2, - 0x81, 0x4d, 0x59, 0x79, 0x98, 0xf8, 0x96, 0x40, 0x67, 0xff, 0x62, 0xbf, 0x3e, 0xfb, 0xa6, 0x2f, - 0x3c, 0xdf, 0xfb, 0xb6, 0x10, 0x5d, 0x18, 0xb9, 0x92, 0x59, 0xca, 0x2c, 0x67, 0xae, 0x4a, 0x63, - 0x6d, 0xcd, 0xf0, 0x66, 0x38, 0x9f, 0x64, 0x23, 0x6b, 0x9b, 0xa6, 0x21, 0x37, 0xf4, 0x2a, 0x4e, - 0x3c, 0xa0, 0x03, 0x4b, 0x76, 0x75, 0x42, 0xd4, 0x60, 0x9a, 0xc6, 0x2e, 0x8d, 0x2a, 0x6d, 0xf6, - 0xb2, 0x43, 0x32, 0x60, 0x0d, 0x12, 0x55, 0x96, 0x13, 0xca, 0x2d, 0x9e, 0x14, 0xca, 0x4d, 0x96, - 0x15, 0x26, 0x7e, 0x8d, 0x39, 0x8e, 0xc5, 0x7e, 0x02, 0x0f, 0x4e, 0x24, 0xa5, 0x99, 0x6a, 0xdf, - 0x36, 0xa4, 0xc1, 0x1c, 0x8b, 0xa5, 0xba, 0x4c, 0xff, 0xf2, 0x6e, 0x58, 0x6c, 0x7d, 0x48, 0xc5, - 0x3e, 0xd7, 0x23, 0xb6, 0x69, 0xb7, 0x94, 0xba, 0x87, 0xfb, 0xfa, 0x28, 0xd1, 0xc9, 0xc8, 0x97, - 0x85, 0x50, 0x32, 0x30, 0x24, 0x48, 0xd3, 0x96, 0x5b, 0x24, 0x78, 0x73, 0xd9, 0x57, 0x61, 0xc6, - 0xd7, 0x95, 0x4d, 0x0b, 0x08, 0xb2, 0x5e, 0xad, 0x6e, 0xb3, 0x46, 0x56, 0x57, 0x99, 0x91, 0x37, - 0xd0, 0x61, 0xbf, 0x05, 0xa7, 0xb7, 0xb1, 0x49, 0x92, 0x59, 0x9b, 0x4a, 0x9a, 0x19, 0x18, 0xbb, - 0x39, 0x7e, 0xb1, 0x8d, 0x4d, 0x82, 0x4f, 0x55, 0xd2, 0xb3, 0x3c, 0x8b, 0x8c, 0x19, 0xba, 0x04, - 0xf1, 0x4a, 0xcd, 0x60, 0xae, 0xd6, 0x94, 0xb5, 0x6a, 0xa2, 0xd5, 0x2d, 0x5f, 0xac, 0x52, 0x33, - 0xa8, 0x93, 0x35, 0xf3, 0x55, 0x74, 0x15, 0x44, 0x82, 0x6e, 0x60, 0x62, 0x51, 0x3c, 0x19, 0x68, - 0x77, 0x53, 0x8c, 0x55, 0x6a, 0x46, 0x09, 0x63, 0xd3, 0xa9, 0x57, 0x8e, 0x60, 0xd2, 0xc6, 0x0d, - 0xa3, 0x4e, 0xbc, 0xa2, 0xe1, 0xfa, 0x98, 0xc4, 0x3d, 0x6a, 0x8d, 0xab, 0x27, 0xf0, 0xcf, 0xbb, - 0x9c, 0xba, 0xe3, 0xa0, 0x98, 0x93, 0x46, 0x76, 0x4f, 0x03, 0xc9, 0x25, 0xb9, 0x67, 0x20, 0x09, - 0x1e, 0x8b, 0x05, 0x89, 0xcf, 0x77, 0x8b, 0xc8, 0xf3, 0xc6, 0x82, 0x8b, 0x82, 0x6e, 0x00, 0x72, - 0x96, 0xbe, 0x87, 0xf0, 0x0b, 0xdd, 0x84, 0x4e, 0xa2, 0xea, 0xa1, 0x7c, 0x1d, 0xa6, 0x7a, 0x7a, - 0x24, 0xae, 0xe3, 0xf7, 0x99, 0xeb, 0x58, 0xf8, 0x8b, 0x47, 0x67, 0x4e, 0xea, 0x34, 0x50, 0xb7, - 0x58, 0xfb, 0x2b, 0x48, 0x86, 0xe9, 0x5e, 0xc1, 0x08, 0xff, 0xef, 0x3d, 0x3f, 0xff, 0xc9, 0x1e, - 0xe9, 0xf7, 0x57, 0xd0, 0x3a, 0xa0, 0x2a, 0xb6, 0x34, 0x13, 0x57, 0x65, 0x43, 0xd7, 0xeb, 0xb2, - 0xaa, 0xb7, 0x9a, 0x76, 0xe2, 0x51, 0x4a, 0xb8, 0x10, 0x5e, 0x9f, 0x22, 0xc4, 0xe3, 0xc9, 0x78, - 0xe2, 0xb5, 0x0b, 0xff, 0xd7, 0xf9, 0x4f, 0x90, 0x44, 0x8e, 0x5f, 0xd2, 0xf5, 0x7a, 0x96, 0x60, - 0xa3, 0x7b, 0x10, 0xe3, 0x26, 0x4e, 0x17, 0xd3, 0x2f, 0x53, 0x13, 0x7d, 0xa1, 0x3b, 0xcc, 0x74, - 0x19, 0x3a, 0x5d, 0x4e, 0x4b, 0xff, 0xfe, 0x58, 0x48, 0x95, 0xf3, 0xbb, 0x39, 0x79, 0xb7, 0x28, - 0xb3, 0xbf, 0x7b, 0x85, 0x42, 0x6e, 0x5b, 0xce, 0x97, 0xca, 0xb9, 0xac, 0x5c, 0x94, 0xe4, 0x72, - 0x79, 0x9b, 0x48, 0x11, 0xf9, 0xb2, 0x10, 0x4e, 0x06, 0x87, 0x84, 0x80, 0x04, 0xb6, 0x4b, 0x8e, - 0x3e, 0x01, 0xc0, 0x12, 0x5b, 0x5a, 0xe4, 0x7f, 0x91, 0xf6, 0x7b, 0x66, 0xe0, 0xd2, 0x20, 0x48, - 0x12, 0x4d, 0xa8, 0xd9, 0x1e, 0xc0, 0x2b, 0x90, 0xa0, 0x49, 0x8e, 0xad, 0x35, 0x6b, 0xb2, 0xf5, - 0xc0, 0xb2, 0x71, 0xc3, 0x8d, 0x6b, 0x6f, 0xb2, 0x9a, 0x7c, 0xc6, 0x45, 0x28, 0xd3, 0x76, 0x27, - 0xae, 0x7d, 0x12, 0xa2, 0x0d, 0xc5, 0xe4, 0x69, 0xdc, 0x97, 0x84, 0x93, 0xe6, 0x71, 0x84, 0x86, - 0xc6, 0xd4, 0xdb, 0x30, 0x46, 0xe9, 0x3b, 0xb1, 0xf9, 0xcb, 0x27, 0x64, 0xb2, 0x4e, 0x0b, 0x28, - 0x42, 0xec, 0x06, 0xe8, 0x75, 0x88, 0x19, 0x87, 0x7a, 0x45, 0xe7, 0xe2, 0x7c, 0xf7, 0xa4, 0xe2, - 0x00, 0xa3, 0xa2, 0x3c, 0x6e, 0x00, 0x34, 0x14, 0xad, 0x29, 0x37, 0xf5, 0x2a, 0xb6, 0x12, 0xbf, - 0xcd, 0x58, 0x24, 0xfa, 0xa9, 0xb2, 0xa0, 0x57, 0xb1, 0x14, 0x25, 0xc8, 0xe4, 0xc9, 0x42, 0x9f, - 0x80, 0x49, 0x3e, 0xf9, 0x55, 0xac, 0x54, 0x65, 0x5b, 0x6b, 0x60, 0xbd, 0x65, 0x27, 0xfe, 0x0a, - 0x51, 0x60, 0x7c, 0x3d, 0x46, 0x26, 0x6f, 0x78, 0x21, 0x94, 0xf8, 0xdd, 0xff, 0x03, 0xd2, 0x04, - 0x43, 0xdc, 0xc0, 0x4a, 0x75, 0x97, 0xa1, 0xa1, 0x59, 0x18, 0x36, 0x69, 0x6d, 0x95, 0xf8, 0x0a, - 0xd3, 0x38, 0x7f, 0x45, 0x6b, 0x30, 0xaa, 0x62, 0xe6, 0x3e, 0x69, 0x60, 0xf9, 0x2a, 0x0b, 0x99, - 0xf3, 0x7d, 0x6b, 0x09, 0x4c, 0xe6, 0x97, 0x04, 0x14, 0x09, 0x54, 0xf7, 0x19, 0xdd, 0x80, 0xa9, - 0xa6, 0x2e, 0xdb, 0xb8, 0xa9, 0x34, 0x6d, 0x59, 0x6b, 0xca, 0x6d, 0x92, 0x23, 0x36, 0xad, 0xc4, - 0x5f, 0x25, 0xac, 0x22, 0xeb, 0x23, 0xef, 0x3c, 0x12, 0xfe, 0xfc, 0x58, 0x10, 0x24, 0xb1, 0xa9, - 0xef, 0x52, 0xa4, 0x7c, 0x73, 0xff, 0xe8, 0x86, 0x55, 0xb0, 0xd0, 0x0d, 0x48, 0xb0, 0x1d, 0x04, - 0x9a, 0x55, 0xb2, 0x4d, 0x00, 0xdc, 0x54, 0x2a, 0x75, 0x5c, 0x4d, 0xfc, 0x2a, 0xa5, 0x96, 0xa6, - 0x29, 0x02, 0xc9, 0x1d, 0x69, 0x73, 0x8e, 0xb5, 0xa2, 0x3a, 0x20, 0x42, 0xe3, 0xa4, 0x68, 0x24, - 0x23, 0xad, 0xdd, 0x4b, 0xfc, 0x35, 0xe1, 0x04, 0xf5, 0x46, 0xea, 0xfb, 0x8f, 0x46, 0xdb, 0x2c, - 0xe2, 0xc8, 0x87, 0xba, 0x65, 0x73, 0xf1, 0xdc, 0x0a, 0x5a, 0x90, 0x48, 0x92, 0x9b, 0x65, 0x9c, - 0xd7, 0x0c, 0x6d, 0xeb, 0x1e, 0x5a, 0x84, 0xb1, 0x96, 0x85, 0x65, 0x4f, 0xd2, 0xf9, 0xd7, 0xbb, - 0xc6, 0x36, 0xda, 0xb2, 0x70, 0xc9, 0xcd, 0x3a, 0x5f, 0x82, 0x51, 0x57, 0x1d, 0x55, 0x7c, 0x3f, - 0xf1, 0x0d, 0x36, 0x49, 0x2e, 0x76, 0xcc, 0xe6, 0x7a, 0xa8, 0xe2, 0xfb, 0x04, 0xd9, 0xd0, 0x8e, - 0x5a, 0xee, 0xc0, 0x7f, 0xbd, 0x8b, 0x75, 0x8c, 0xb4, 0x3a, 0xe3, 0xbe, 0x0c, 0x63, 0xdc, 0x06, - 0x1d, 0xf4, 0x6f, 0x77, 0xa1, 0xc7, 0x59, 0xbb, 0x43, 0xf0, 0x12, 0x8c, 0x5a, 0x66, 0x7b, 0xc5, - 0x45, 0xff, 0x1b, 0xdd, 0xdc, 0x49, 0xab, 0x83, 0x9c, 0x83, 0x08, 0xa9, 0x9e, 0x64, 0xf5, 0xa0, - 0x96, 0xf8, 0x9b, 0x27, 0xac, 0x27, 0x3a, 0xac, 0x46, 0x08, 0x6d, 0xf6, 0xa0, 0x86, 0xee, 0x40, - 0xdc, 0xc4, 0x72, 0x03, 0x5b, 0x87, 0x72, 0xcd, 0xd4, 0x5b, 0x46, 0xe2, 0x3b, 0x6c, 0x5e, 0xfa, - 0x16, 0xa8, 0x12, 0xde, 0xc1, 0xd6, 0xe1, 0x16, 0xc1, 0x5b, 0x9f, 0xe8, 0x9e, 0x8b, 0x80, 0x14, - 0x33, 0x3b, 0xed, 0xc8, 0x86, 0x09, 0x62, 0xac, 0x4c, 0x04, 0xb9, 0xae, 0x54, 0x70, 0xdd, 0x4a, - 0xfc, 0x06, 0x63, 0xfe, 0xf2, 0x09, 0x42, 0x5c, 0x16, 0x73, 0xf1, 0xb7, 0x29, 0x29, 0x8d, 0x6f, - 0xeb, 0x63, 0xef, 0x3c, 0x12, 0x9e, 0xfc, 0xd9, 0x9f, 0x06, 0x87, 0xbf, 0xf6, 0xcf, 0x85, 0x40, - 0x64, 0x48, 0x1a, 0x57, 0xfd, 0x58, 0x68, 0x1e, 0xa0, 0xdd, 0x70, 0x15, 0xf8, 0xb7, 0x99, 0x5d, - 0x46, 0xdb, 0x0d, 0xcf, 0x9c, 0x1c, 0xe2, 0x7a, 0x5d, 0xe9, 0xcc, 0xc9, 0x6f, 0x76, 0xcf, 0x09, - 0x6b, 0x77, 0x08, 0xbe, 0x26, 0xc0, 0x59, 0x5f, 0xe2, 0xc2, 0x4a, 0x14, 0xd5, 0xb3, 0xf3, 0x99, - 0xf8, 0x2d, 0x36, 0xaa, 0x2b, 0x03, 0xb7, 0x21, 0x06, 0x6c, 0x99, 0xf6, 0xea, 0x30, 0x28, 0x9d, - 0xea, 0x24, 0x3f, 0x79, 0xd2, 0x93, 0x6f, 0x8b, 0x75, 0x0b, 0x4e, 0xb1, 0x35, 0xa8, 0xea, 0x4d, - 0xdb, 0xd4, 0xeb, 0xb2, 0x51, 0x57, 0x9a, 0xd8, 0x1d, 0xca, 0xdf, 0xe9, 0x1a, 0x0a, 0x5b, 0xb0, - 0x59, 0x86, 0x5b, 0x22, 0xa8, 0xce, 0xa8, 0x3e, 0x0e, 0x53, 0x9d, 0x52, 0x8b, 0xfa, 0x37, 0x56, - 0x6c, 0xfd, 0x5d, 0xb6, 0x21, 0xe7, 0x29, 0xb6, 0x26, 0x9c, 0x62, 0x8b, 0x7a, 0x36, 0x5a, 0x6e, - 0xbd, 0x08, 0x63, 0x8d, 0x56, 0xdd, 0x6e, 0x75, 0x74, 0xf8, 0x3b, 0x4c, 0xcf, 0x71, 0x06, 0x76, - 0x3a, 0x59, 0x81, 0xd9, 0xba, 0xd2, 0x6a, 0xaa, 0x87, 0xb2, 0x76, 0x84, 0x89, 0xb3, 0xa1, 0xd1, - 0xda, 0x50, 0x54, 0x9c, 0xf8, 0x5d, 0x46, 0x30, 0xc5, 0xda, 0xf3, 0x47, 0x38, 0xdf, 0x2c, 0x38, - 0x8d, 0xe8, 0x17, 0x61, 0xca, 0x59, 0xbd, 0x3e, 0x35, 0xff, 0x43, 0x66, 0xe5, 0xdd, 0x79, 0x1e, - 0xdd, 0x13, 0x5f, 0xe4, 0x0b, 0xda, 0xab, 0x2e, 0x9a, 0xe7, 0x4d, 0x1a, 0xbd, 0x0d, 0x68, 0x15, - 0x26, 0xbb, 0x93, 0x36, 0x92, 0x3f, 0xfc, 0x81, 0xe0, 0xdb, 0xc5, 0x21, 0xf9, 0x81, 0xe8, 0xcf, - 0xdc, 0xf6, 0x57, 0x92, 0x75, 0x40, 0xbd, 0xd5, 0x31, 0x12, 0x21, 0x78, 0x84, 0x1f, 0xf0, 0x5d, - 0x6b, 0xf2, 0x88, 0x5e, 0x83, 0x70, 0x5b, 0xa9, 0xb7, 0x9c, 0xfd, 0xda, 0x85, 0x7e, 0xc6, 0xd1, - 0x7f, 0x73, 0x58, 0x62, 0x84, 0xab, 0x81, 0x1b, 0x42, 0x32, 0x07, 0xb3, 0x03, 0x72, 0xbd, 0x3e, - 0x5d, 0x4e, 0x79, 0xbb, 0x8c, 0x7a, 0xd9, 0xac, 0xc3, 0x54, 0xbf, 0xf5, 0xf4, 0x3c, 0x3c, 0x6e, - 0x85, 0x22, 0x58, 0x3c, 0xb8, 0x15, 0x8a, 0x1c, 0x88, 0xb5, 0xf4, 0xf1, 0x28, 0x8c, 0x65, 0x4d, - 0xac, 0xd8, 0xd8, 0xdd, 0x97, 0x7b, 0xe5, 0x39, 0xf7, 0xe5, 0x3c, 0x7b, 0x71, 0x89, 0xae, 0x7d, - 0xb4, 0x0f, 0x74, 0xef, 0xec, 0xe4, 0xe5, 0xf6, 0xe5, 0x01, 0x25, 0x34, 0x0c, 0x2a, 0x8e, 0x9f, - 0xa7, 0x3e, 0x5f, 0x1a, 0x54, 0x48, 0xc3, 0xc0, 0x12, 0x79, 0xf3, 0xbd, 0x96, 0xc8, 0x5d, 0xa5, - 0xef, 0xfb, 0x2d, 0x48, 0x3f, 0xf3, 0x41, 0x54, 0x89, 0x1f, 0xd5, 0x85, 0x27, 0xa8, 0x0b, 0xdf, - 0x87, 0x5f, 0xfa, 0xff, 0x50, 0xe6, 0xbd, 0xfa, 0xf4, 0x32, 0x0f, 0x9e, 0x51, 0xc6, 0x7d, 0xea, - 0x19, 0x65, 0x1c, 0x3c, 0xab, 0x4c, 0xcb, 0x0c, 0x2e, 0xd3, 0xfa, 0x14, 0x64, 0x1b, 0xef, 0xb5, - 0x20, 0xf3, 0x55, 0x57, 0x37, 0x9e, 0x52, 0x1f, 0x7d, 0xf1, 0xa9, 0xe5, 0xd1, 0xe5, 0xfe, 0x35, - 0xc1, 0x97, 0x68, 0xba, 0xf9, 0x61, 0x97, 0x01, 0x1f, 0xde, 0x1e, 0xd3, 0xea, 0xc4, 0x5b, 0x9f, - 0xec, 0xfa, 0x84, 0x93, 0xfe, 0x67, 0xa3, 0x30, 0x2e, 0x61, 0xa3, 0xae, 0xa8, 0x9d, 0xf0, 0xf1, - 0x53, 0x8d, 0x01, 0x4f, 0xdd, 0xae, 0x0d, 0x7d, 0x50, 0xdb, 0xb5, 0x1f, 0xc5, 0x8f, 0x8f, 0xe2, - 0xc7, 0x47, 0xf1, 0xe3, 0xa3, 0xf8, 0xf1, 0xb3, 0x1e, 0x3f, 0x3e, 0x44, 0xe7, 0x9f, 0xef, 0x71, - 0xfe, 0xff, 0xed, 0x93, 0xd7, 0xaf, 0x65, 0x96, 0x96, 0x5f, 0xce, 0x2c, 0x67, 0xae, 0x66, 0x96, - 0x96, 0xaf, 0x67, 0x96, 0x96, 0xc8, 0xfb, 0x95, 0xcc, 0xd2, 0xf2, 0x52, 0x66, 0x69, 0xe9, 0xe5, - 0xcc, 0xd2, 0xd2, 0x8d, 0xcc, 0xd2, 0x32, 0x69, 0x23, 0xf0, 0xe5, 0xcc, 0xd2, 0xf2, 0x4a, 0x66, - 0x69, 0xe9, 0x3a, 0x3f, 0x58, 0xf2, 0xd5, 0x29, 0x88, 0x6d, 0x61, 0xfb, 0x67, 0xbe, 0xea, 0x78, - 0x3f, 0x11, 0xe7, 0x83, 0x38, 0x9a, 0xf0, 0x97, 0xe5, 0xc4, 0xc0, 0x47, 0xd1, 0x75, 0xef, 0x03, - 0xf9, 0x30, 0xf9, 0x81, 0x7f, 0x85, 0xfc, 0x28, 0x68, 0x7f, 0x14, 0xb4, 0x3f, 0x0a, 0xda, 0xef, - 0x37, 0x68, 0xbf, 0xea, 0xfb, 0x18, 0xf7, 0xa6, 0xf0, 0x9c, 0x5f, 0xe3, 0x7e, 0xa6, 0x6a, 0xc6, - 0xf7, 0xfe, 0x01, 0xe8, 0x43, 0x3c, 0xd1, 0xe0, 0x0a, 0xc9, 0x05, 0x24, 0xb2, 0x3a, 0x42, 0x7e, - 0xc3, 0x2b, 0x24, 0x93, 0xf0, 0xf6, 0x0d, 0x57, 0xc8, 0x55, 0x98, 0xab, 0xd1, 0x4c, 0xa5, 0x1f, - 0xe9, 0x37, 0x19, 0xe9, 0x0c, 0xc3, 0xe8, 0xa1, 0x7d, 0xd6, 0x57, 0x87, 0x7b, 0xcf, 0xfe, 0x86, - 0xf0, 0x9b, 0xef, 0xf1, 0x1b, 0xc2, 0xd3, 0x3f, 0x18, 0x7c, 0x28, 0xfb, 0xfc, 0x3f, 0xf5, 0xfd, - 0xfa, 0x7e, 0x7b, 0x08, 0xff, 0x38, 0x04, 0xf1, 0x7d, 0x6c, 0x92, 0x75, 0xd2, 0x62, 0x27, 0xde, - 0x17, 0x60, 0x82, 0xf8, 0x12, 0xad, 0x69, 0xd9, 0x4a, 0x53, 0x65, 0xfe, 0x85, 0xef, 0x6c, 0x8f, - 0xb7, 0xb1, 0x99, 0xe7, 0x70, 0xe2, 0x4d, 0x50, 0x1e, 0x62, 0xf4, 0x1c, 0x98, 0x45, 0xc9, 0x13, - 0x41, 0xaa, 0xfb, 0x0b, 0xfd, 0x74, 0xbf, 0x66, 0x62, 0xcb, 0x91, 0x45, 0x6f, 0xb2, 0xee, 0x24, - 0x20, 0xc4, 0xec, 0x99, 0xb8, 0x18, 0xad, 0x69, 0x1f, 0x38, 0xac, 0x42, 0x94, 0xd5, 0x0b, 0xfd, - 0x58, 0xe5, 0x9b, 0x36, 0x36, 0x0f, 0x14, 0x15, 0x3b, 0x5c, 0x08, 0x1d, 0xe7, 0x52, 0x85, 0x04, - 0x4b, 0xaa, 0x5a, 0xc4, 0xb3, 0xf1, 0x45, 0xcf, 0x59, 0x86, 0x29, 0xcb, 0xbe, 0x1f, 0x10, 0xfc, - 0xf6, 0xe0, 0xca, 0x37, 0xd3, 0xe1, 0xc5, 0x30, 0x78, 0x2f, 0x3f, 0xcf, 0x0f, 0x94, 0xfb, 0xf9, - 0x0f, 0x3f, 0x37, 0x7f, 0x7a, 0xc8, 0xdc, 0xc7, 0xb9, 0x06, 0x53, 0x66, 0xab, 0xd9, 0xa4, 0x0e, - 0x92, 0xb8, 0x2e, 0x87, 0x37, 0x50, 0x13, 0xe8, 0x7b, 0xe4, 0x70, 0xbf, 0x33, 0x27, 0x12, 0x23, - 0xa5, 0x4e, 0xaf, 0x33, 0xa3, 0x12, 0x32, 0x7b, 0xe0, 0xab, 0xa9, 0xc7, 0xc7, 0xc2, 0x69, 0x48, - 0x02, 0xec, 0xe7, 0xa4, 0x14, 0xef, 0x7c, 0x74, 0x29, 0x73, 0x35, 0x73, 0x2d, 0x73, 0x3d, 0xb3, - 0x92, 0x59, 0xba, 0x72, 0x2b, 0x14, 0x19, 0x11, 0x23, 0xb7, 0x42, 0x91, 0x88, 0x18, 0xbd, 0x15, - 0x8a, 0x04, 0xc4, 0xe0, 0xad, 0x50, 0x24, 0x2a, 0x42, 0xfa, 0x8f, 0x05, 0x98, 0xdc, 0xc7, 0xe6, - 0x8e, 0x62, 0xd9, 0x3e, 0xbb, 0x99, 0x83, 0x08, 0xb1, 0x1b, 0x8f, 0xb9, 0x8c, 0xb4, 0xb1, 0x49, - 0xcd, 0x64, 0x16, 0xc8, 0xa3, 0xbc, 0x97, 0xdf, 0xe0, 0x25, 0xc2, 0x70, 0x1b, 0x9b, 0x7b, 0xf9, - 0x0d, 0xb4, 0x03, 0x53, 0xb6, 0xa9, 0x34, 0x2d, 0x8d, 0x28, 0x45, 0x76, 0x2f, 0x99, 0xf0, 0x52, - 0x21, 0xb9, 0xc8, 0xae, 0xa1, 0x2c, 0x3a, 0xd7, 0x50, 0x16, 0x77, 0x1d, 0x0c, 0x69, 0xb2, 0x43, - 0xe7, 0x02, 0xdd, 0x41, 0x4d, 0x90, 0x41, 0x31, 0x01, 0x9d, 0xb1, 0x85, 0xe9, 0x21, 0xb3, 0xf4, - 0xaf, 0x08, 0x30, 0xd5, 0xcf, 0x14, 0x91, 0x08, 0xc1, 0x96, 0x59, 0x77, 0xbe, 0xe0, 0xb4, 0xcc, - 0x3a, 0xba, 0x0a, 0xe1, 0xce, 0x05, 0x8f, 0x01, 0xd1, 0x66, 0x7f, 0x57, 0x2a, 0xb1, 0x68, 0xc3, - 0x70, 0x57, 0x5f, 0x7c, 0xeb, 0x58, 0x48, 0xc3, 0x28, 0x04, 0xf7, 0xa4, 0xed, 0x64, 0x98, 0xf2, - 0x04, 0x04, 0x61, 0x8a, 0x93, 0x8c, 0x72, 0x8e, 0x29, 0x21, 0xfd, 0x5f, 0x87, 0x61, 0xbc, 0xcb, - 0x8e, 0xd1, 0x4b, 0x10, 0xa0, 0x47, 0xf9, 0xc9, 0xd0, 0x4f, 0x75, 0xf5, 0x96, 0x37, 0xca, 0xad, - 0x4a, 0x13, 0xdb, 0x74, 0x3e, 0x03, 0x9a, 0x41, 0xe4, 0x6d, 0x28, 0x2a, 0x57, 0x27, 0x79, 0x44, - 0x1b, 0x30, 0xea, 0x4b, 0x2e, 0x83, 0x27, 0x4d, 0x2e, 0x63, 0x4d, 0x4f, 0x4a, 0xe9, 0xdc, 0x1b, - 0x09, 0x79, 0xee, 0x8d, 0xdc, 0x80, 0x11, 0x8d, 0x67, 0xbf, 0x4f, 0xa9, 0xa1, 0x78, 0x36, 0x45, - 0xe3, 0xdd, 0xb0, 0xc6, 0xb2, 0xdf, 0xb3, 0x10, 0xab, 0x1e, 0xaa, 0x06, 0x3f, 0x39, 0x9b, 0x18, - 0xa6, 0x6e, 0x0f, 0x08, 0x88, 0x7d, 0xac, 0x43, 0xe7, 0x3a, 0x42, 0xd3, 0x6e, 0x23, 0xb4, 0x5b, - 0x47, 0xa2, 0x42, 0xef, 0x6d, 0x9b, 0x68, 0xf7, 0x6d, 0x9b, 0x75, 0x18, 0x55, 0x88, 0x7f, 0x73, - 0x92, 0x03, 0x78, 0x8a, 0x84, 0x14, 0x8f, 0xcd, 0x57, 0x4c, 0xe9, 0xbc, 0x10, 0x1e, 0xb4, 0x8b, - 0x37, 0x5a, 0x4a, 0x9d, 0x78, 0xdc, 0xd8, 0x60, 0x1e, 0xdb, 0x5a, 0xf3, 0xe8, 0xd3, 0x0c, 0x4d, - 0x8a, 0xd5, 0x3b, 0x2f, 0xa4, 0x82, 0xa6, 0x3c, 0xa8, 0xee, 0x47, 0x07, 0x57, 0xd0, 0x84, 0x01, - 0xab, 0xa0, 0xeb, 0xfc, 0x09, 0x6d, 0xc2, 0x68, 0x45, 0x6f, 0x56, 0xe5, 0x06, 0xbb, 0x77, 0x94, - 0x88, 0x0f, 0xf6, 0x7d, 0x5d, 0xd7, 0x93, 0xa4, 0x58, 0xa5, 0x03, 0x40, 0x97, 0x21, 0xa4, 0x19, - 0xed, 0x95, 0xc4, 0xd8, 0xb3, 0x4d, 0x88, 0x22, 0xae, 0xbe, 0x2b, 0xbc, 0x75, 0x2c, 0xfc, 0x07, - 0x01, 0x2e, 0x41, 0x34, 0x5f, 0x4a, 0xb1, 0xe6, 0xe5, 0x14, 0x8c, 0x69, 0xc6, 0xa2, 0x66, 0xb4, - 0xaf, 0x2d, 0x1a, 0x26, 0x3e, 0xd0, 0xee, 0x3b, 0xef, 0x2b, 0xce, 0xfb, 0x05, 0x98, 0xe2, 0x66, - 0x94, 0xe2, 0x76, 0x94, 0x22, 0x4c, 0x93, 0xa2, 0xdf, 0x02, 0x53, 0x02, 0x8c, 0x41, 0x88, 0xcc, - 0x61, 0x72, 0x98, 0x59, 0x15, 0xcc, 0xc0, 0x48, 0xbe, 0x94, 0x22, 0xa6, 0x91, 0x8c, 0xb9, 0x46, - 0x95, 0x12, 0xe0, 0xc5, 0x5e, 0x8e, 0x94, 0x6e, 0xcc, 0x6f, 0x1e, 0x70, 0x15, 0x62, 0xf9, 0xd2, - 0xfe, 0x4a, 0xca, 0x62, 0xa2, 0x9e, 0x07, 0x91, 0xca, 0xe5, 0x15, 0xd6, 0x85, 0x38, 0xe2, 0x32, - 0x47, 0x96, 0xfe, 0xbd, 0x30, 0xcc, 0xf4, 0x77, 0xc3, 0x7d, 0xd6, 0xfe, 0x75, 0xff, 0xda, 0x3f, - 0x3b, 0xd8, 0xa7, 0x7b, 0x57, 0x3f, 0x5a, 0x86, 0x90, 0xa9, 0xd7, 0x9d, 0xa5, 0x37, 0x3f, 0x98, - 0x4a, 0xd2, 0xeb, 0x58, 0xa2, 0xb8, 0xe8, 0x3c, 0xc4, 0x4d, 0xdc, 0xd0, 0x6d, 0xcc, 0xd7, 0x0f, - 0x5f, 0x79, 0x7e, 0x20, 0xfa, 0x04, 0x84, 0x71, 0x53, 0x55, 0x0c, 0xbe, 0x00, 0x5f, 0xec, 0x62, - 0xcd, 0xb8, 0xe6, 0x08, 0x86, 0xd5, 0xaa, 0xd3, 0x5b, 0x62, 0x74, 0x9a, 0x19, 0x11, 0x4a, 0xc0, - 0x88, 0x66, 0xd1, 0x7b, 0x48, 0x7c, 0x09, 0x3a, 0xaf, 0x28, 0x05, 0x31, 0xe2, 0xa4, 0x75, 0x56, - 0x1d, 0x24, 0x46, 0xd8, 0xf2, 0xf3, 0x80, 0x48, 0x4e, 0xc6, 0xc2, 0x5c, 0xa1, 0xb3, 0x3e, 0x3d, - 0x10, 0x74, 0x17, 0x66, 0xb4, 0x23, 0x37, 0x14, 0x1e, 0xd4, 0x15, 0x43, 0x36, 0xb1, 0x62, 0xe9, - 0x4d, 0xba, 0x54, 0x63, 0xcb, 0xe7, 0x07, 0x6b, 0x61, 0xb3, 0xae, 0x18, 0x12, 0xc5, 0x95, 0x26, - 0xb5, 0x23, 0xdc, 0x0d, 0x24, 0xac, 0x49, 0xbe, 0xd5, 0x87, 0x35, 0x3c, 0x0f, 0x6b, 0xcb, 0xaa, - 0x77, 0x03, 0x57, 0x7f, 0x83, 0x58, 0xfe, 0xaf, 0x0b, 0x5d, 0x9e, 0xfa, 0x0c, 0x88, 0x1d, 0xe3, - 0x48, 0x75, 0x3b, 0x6d, 0x38, 0x07, 0x63, 0x12, 0x9d, 0x95, 0x14, 0x9f, 0x96, 0xe4, 0x78, 0xd7, - 0xe4, 0xc1, 0x3c, 0xc4, 0x49, 0xec, 0x21, 0xda, 0x63, 0x16, 0x1c, 0xf7, 0x29, 0x18, 0xce, 0x02, - 0xf2, 0xcd, 0x12, 0x5b, 0x38, 0x51, 0x3e, 0xbb, 0x29, 0x21, 0xfd, 0xfd, 0x00, 0xcc, 0xec, 0x77, - 0x55, 0xd1, 0x6e, 0x7c, 0x98, 0x50, 0xda, 0x8a, 0x56, 0x27, 0xd9, 0xa2, 0x5b, 0x37, 0x31, 0xa3, - 0x15, 0xdd, 0x06, 0xa7, 0x62, 0x2a, 0x80, 0x58, 0xc5, 0x46, 0x5d, 0x7f, 0xd0, 0xc0, 0x4d, 0xdb, - 0x73, 0x53, 0x71, 0x80, 0x5f, 0xd9, 0x70, 0x71, 0x99, 0x41, 0x8f, 0x57, 0xfd, 0x00, 0xf4, 0x71, - 0x98, 0x6c, 0xea, 0x4d, 0x92, 0x0f, 0xe9, 0x66, 0xc3, 0x4d, 0x4f, 0xfa, 0xdc, 0xa5, 0x42, 0x3e, - 0x34, 0x46, 0x7c, 0x0d, 0x66, 0xea, 0x8a, 0x65, 0xb3, 0x9c, 0xb2, 0x5e, 0xc7, 0xd5, 0xae, 0x2d, - 0xbc, 0x29, 0xd2, 0x9a, 0x77, 0x1a, 0xf9, 0x10, 0xdc, 0x68, 0x3e, 0xee, 0xe8, 0xc1, 0x89, 0xe5, - 0x23, 0x4b, 0x99, 0x6b, 0x34, 0x9a, 0xff, 0x2f, 0x01, 0xa6, 0x8b, 0xfe, 0x8a, 0xf1, 0x2f, 0xbb, - 0xae, 0x56, 0x5f, 0x7c, 0x4c, 0x32, 0x88, 0x14, 0xcc, 0xba, 0x03, 0x4b, 0xb1, 0x91, 0x75, 0x65, - 0x32, 0x3f, 0x11, 0x60, 0xbc, 0x4b, 0x12, 0xb2, 0xce, 0xfd, 0x63, 0x75, 0x5e, 0xd1, 0xa7, 0x61, - 0xa6, 0xa1, 0x57, 0xb5, 0x03, 0x4d, 0x55, 0xba, 0x52, 0xad, 0xc0, 0x33, 0x53, 0xad, 0x69, 0x2f, - 0xa5, 0x0b, 0x46, 0x33, 0xa4, 0x46, 0xb6, 0x5a, 0x75, 0x9b, 0xdf, 0x13, 0xe5, 0x6f, 0x44, 0x88, - 0x06, 0xb6, 0x2c, 0xa5, 0xe6, 0x24, 0x11, 0xce, 0x2b, 0xfa, 0x24, 0x84, 0x8d, 0x43, 0xc5, 0x72, - 0xb2, 0x88, 0xbe, 0x75, 0x82, 0x33, 0xd7, 0x7b, 0x46, 0xcd, 0x54, 0xaa, 0xb8, 0x44, 0xf0, 0x25, - 0x46, 0x96, 0xfe, 0x77, 0x02, 0x4c, 0x6d, 0xd6, 0x31, 0xb6, 0xbb, 0xc7, 0x8d, 0x20, 0x74, 0xa8, - 0x58, 0x87, 0xce, 0x65, 0x57, 0xf2, 0xfc, 0x61, 0x8e, 0xf8, 0x35, 0x88, 0xaa, 0x7a, 0xb3, 0x4a, - 0x93, 0x51, 0x5e, 0xb8, 0xa4, 0xfb, 0x8d, 0x8d, 0xca, 0x9e, 0x75, 0x30, 0xa5, 0x0e, 0x51, 0xfa, - 0xdf, 0x08, 0x30, 0xe6, 0x6f, 0x1d, 0x74, 0x81, 0xb7, 0xa1, 0x57, 0x5b, 0x75, 0x5e, 0x94, 0xf1, - 0x0b, 0xbc, 0x0c, 0x44, 0x9d, 0xb1, 0x47, 0xf7, 0x41, 0xbf, 0xee, 0x3b, 0xb2, 0x87, 0xbc, 0xb2, - 0xaf, 0x7e, 0xf6, 0xad, 0x63, 0xe1, 0xe7, 0x7b, 0xe2, 0xf4, 0x69, 0x88, 0xed, 0x50, 0xae, 0xae, - 0x13, 0xf3, 0xf4, 0x0b, 0x53, 0x30, 0xb2, 0xc3, 0xd8, 0x26, 0xa3, 0x6e, 0x87, 0x80, 0x60, 0x58, - 0xa2, 0x3c, 0x93, 0x11, 0xa7, 0xaf, 0xf4, 0xe7, 0x21, 0x46, 0x87, 0xc5, 0x4d, 0xb7, 0xdc, 0x67, - 0xa1, 0xb1, 0x7c, 0xf7, 0xc2, 0x40, 0x7d, 0x3d, 0x6b, 0xb5, 0xad, 0xce, 0x3e, 0x3e, 0x16, 0x26, - 0x61, 0x02, 0x46, 0x29, 0xba, 0xb3, 0x4a, 0x84, 0xa5, 0xf4, 0x7f, 0x11, 0x20, 0x5e, 0x56, 0x95, - 0x3a, 0x5f, 0x5a, 0x2d, 0x0b, 0xad, 0x38, 0x06, 0xf8, 0x94, 0x2d, 0x66, 0x4e, 0xe1, 0x35, 0x3c, - 0xaf, 0x5a, 0x03, 0x7e, 0xb5, 0x5e, 0x87, 0x59, 0xba, 0x7d, 0xd6, 0xd4, 0xab, 0x98, 0xed, 0xa1, - 0xc9, 0x6a, 0xcb, 0x34, 0x71, 0x93, 0xd9, 0x48, 0x58, 0x9a, 0x22, 0xcd, 0xc4, 0xfd, 0xd3, 0x8d, - 0xb4, 0x2c, 0x6b, 0x43, 0x57, 0x61, 0xa6, 0x9b, 0xcc, 0x56, 0xcc, 0x1a, 0x66, 0xb3, 0x13, 0x96, - 0x26, 0x7d, 0x54, 0xbb, 0xb4, 0x69, 0xf5, 0xec, 0xe3, 0x63, 0xe1, 0x14, 0xcc, 0xc1, 0x18, 0x17, - 0xd1, 0xe3, 0x0e, 0x97, 0x49, 0xe1, 0x96, 0xfe, 0x9e, 0x00, 0xc9, 0xe2, 0xc1, 0x41, 0x5d, 0x6b, - 0xe2, 0x72, 0xcb, 0x6c, 0x6b, 0x6d, 0xa5, 0xa2, 0x91, 0xdc, 0x94, 0xe3, 0x65, 0xfd, 0xa3, 0xbf, - 0xd4, 0x6f, 0xf4, 0xfd, 0xc8, 0x4f, 0xa6, 0x8a, 0xd5, 0x8b, 0x8f, 0x8f, 0x85, 0x8f, 0xc1, 0x0b, - 0x70, 0x9a, 0xf3, 0x48, 0xf9, 0x98, 0x38, 0xc2, 0x06, 0x97, 0x32, 0xcb, 0xe9, 0x6f, 0x08, 0x70, - 0xee, 0x99, 0x65, 0x2b, 0xda, 0x72, 0x92, 0x30, 0x26, 0xef, 0xd2, 0x73, 0x17, 0xbf, 0x4e, 0x5a, - 0xc6, 0x6e, 0xd4, 0xab, 0xa6, 0x46, 0x7f, 0x12, 0x80, 0xcb, 0xed, 0x05, 0xa5, 0xef, 0x42, 0x84, - 0x68, 0x3b, 0xdf, 0x3c, 0xd0, 0x51, 0x12, 0x22, 0x87, 0xba, 0x65, 0x7b, 0x16, 0x9f, 0xfb, 0x4e, - 0x16, 0x25, 0x4d, 0xf0, 0xe8, 0x5d, 0x69, 0x96, 0xc0, 0xad, 0x9e, 0x79, 0x7c, 0x2c, 0xcc, 0xc1, - 0x2c, 0x88, 0x34, 0xe8, 0xe7, 0xa9, 0x37, 0x67, 0xf7, 0xf4, 0xe9, 0x58, 0x7f, 0x2b, 0x0c, 0xc3, - 0x45, 0x8b, 0x72, 0x7e, 0x11, 0x02, 0xba, 0xc5, 0x0d, 0x7e, 0xa6, 0xaf, 0xf6, 0xcb, 0x52, 0x40, - 0xb7, 0xd0, 0x75, 0x18, 0x31, 0x4c, 0xbd, 0xda, 0x52, 0x6d, 0xee, 0xab, 0x4e, 0xf5, 0xfd, 0x7e, - 0xc1, 0x50, 0x24, 0x07, 0x17, 0x5d, 0x86, 0x70, 0x45, 0x57, 0xcc, 0x2a, 0xaf, 0x9e, 0xe7, 0xfa, - 0xd7, 0x0f, 0x8a, 0x59, 0x95, 0x18, 0x1e, 0xe9, 0x47, 0x3d, 0x54, 0x2c, 0x4b, 0x63, 0x49, 0xe7, - 0x80, 0x7e, 0xb2, 0x0c, 0x45, 0x72, 0x70, 0x51, 0x06, 0x42, 0x15, 0x4d, 0xb7, 0xa8, 0x17, 0x1f, - 0x70, 0x90, 0x7f, 0x5d, 0xd3, 0x2d, 0x89, 0x62, 0xa1, 0x8b, 0x10, 0x54, 0x8d, 0x16, 0xcd, 0x3b, - 0x63, 0xcb, 0xb3, 0x7d, 0x3b, 0x30, 0x5a, 0x12, 0xc1, 0x41, 0xcb, 0x30, 0xdc, 0xc0, 0x0d, 0xdd, - 0x7c, 0x40, 0xf3, 0xd0, 0x58, 0xcf, 0x47, 0x16, 0x8a, 0xbd, 0x43, 0x31, 0x24, 0x8e, 0x89, 0x3e, - 0x0e, 0x23, 0x96, 0xad, 0x9b, 0xc4, 0x1e, 0x23, 0xd4, 0xf3, 0x9e, 0xeb, 0xbb, 0xa8, 0x19, 0xca, - 0x06, 0x6e, 0x6b, 0x2a, 0x96, 0x1c, 0x0a, 0x42, 0xec, 0xec, 0x9f, 0x46, 0x07, 0x13, 0xf3, 0x8a, - 0xc4, 0x21, 0xe6, 0x14, 0x44, 0xda, 0x23, 0x6c, 0x36, 0x71, 0x9d, 0x67, 0xa3, 0x7d, 0xa5, 0xbd, - 0x4d, 0x31, 0x24, 0x8e, 0x89, 0x2e, 0x43, 0xb0, 0x65, 0x55, 0x12, 0x31, 0xda, 0x59, 0xdf, 0x1d, - 0x85, 0xbd, 0xf2, 0x3a, 0xef, 0x88, 0x60, 0x12, 0xed, 0xd5, 0x8c, 0x16, 0xad, 0x27, 0x07, 0x68, - 0x6f, 0xab, 0xb4, 0x27, 0x11, 0x9c, 0xd5, 0xe5, 0xc7, 0xc7, 0xc2, 0x22, 0x64, 0x60, 0xea, 0xa6, - 0x62, 0x56, 0x69, 0xba, 0xe4, 0xb5, 0xc5, 0x29, 0xe2, 0x24, 0x56, 0x32, 0x2f, 0x67, 0x6e, 0x64, - 0x5e, 0xc9, 0x2c, 0x5d, 0xc9, 0x2c, 0x2d, 0x65, 0x96, 0x96, 0xd3, 0xbf, 0x2a, 0x40, 0xa0, 0x58, - 0xee, 0x1b, 0x6b, 0x66, 0x60, 0xb8, 0x8d, 0x9b, 0x55, 0xdd, 0xec, 0x6c, 0xd9, 0x90, 0x37, 0x6f, - 0x8e, 0x11, 0xf4, 0xe7, 0x18, 0x09, 0x18, 0x31, 0x71, 0x1d, 0x13, 0x0f, 0xc3, 0x03, 0x3f, 0x7f, - 0x45, 0x69, 0x18, 0x55, 0x4c, 0xf5, 0x50, 0xb3, 0xb1, 0x6a, 0xb7, 0x4c, 0x7e, 0x39, 0x5e, 0xf2, - 0xc1, 0xd2, 0xbf, 0x08, 0xc3, 0x4c, 0x59, 0x5e, 0x3e, 0x82, 0x9f, 0x8f, 0xa7, 0xef, 0x80, 0xbf, - 0xef, 0xee, 0x1e, 0x82, 0x7d, 0x7a, 0xa8, 0xc1, 0x08, 0x5f, 0x33, 0x1f, 0xd0, 0x80, 0x67, 0x60, - 0xd8, 0xc2, 0xa6, 0xa6, 0xd4, 0x9d, 0x98, 0xca, 0xde, 0xd2, 0x5f, 0x16, 0x20, 0x4c, 0x17, 0xda, - 0x4f, 0xb7, 0x1f, 0x74, 0x0a, 0xa2, 0x8a, 0x65, 0x61, 0x12, 0x3b, 0x6a, 0x5c, 0xa7, 0x11, 0x0a, - 0xd8, 0x55, 0x6a, 0xe9, 0xaf, 0x08, 0x30, 0xc2, 0x97, 0x2e, 0x11, 0xc3, 0xfd, 0xb0, 0x1f, 0x97, - 0xe8, 0xf3, 0x87, 0x25, 0xc6, 0x36, 0x84, 0x88, 0x33, 0xf0, 0x74, 0x27, 0x0c, 0xea, 0xae, 0x6b, - 0x4a, 0x11, 0x84, 0xaa, 0x6e, 0xda, 0x2c, 0xd1, 0xe7, 0xf4, 0xbf, 0x10, 0x20, 0x98, 0x35, 0x5a, - 0x03, 0xb9, 0x4d, 0x41, 0xb8, 0xa1, 0x57, 0x71, 0xdd, 0x39, 0x75, 0x4d, 0x5f, 0x08, 0xd4, 0xfb, - 0x5b, 0x2c, 0xec, 0x85, 0x40, 0x55, 0x45, 0x3d, 0x64, 0xc6, 0x1a, 0x97, 0xd8, 0x0b, 0xe9, 0x55, - 0x35, 0x5a, 0xcc, 0xb9, 0xc5, 0x25, 0xfa, 0x4c, 0x31, 0x75, 0x13, 0x5b, 0xd4, 0x89, 0x11, 0x4c, - 0xf2, 0x42, 0x24, 0xb7, 0x0f, 0x4d, 0xac, 0x54, 0x2d, 0xea, 0xae, 0xe2, 0x92, 0xf3, 0x8a, 0x92, - 0x10, 0x3e, 0xa8, 0x2b, 0x35, 0x8b, 0x55, 0xcb, 0xeb, 0x21, 0x7a, 0x89, 0x80, 0x81, 0xd2, 0xb7, - 0x61, 0x98, 0x79, 0x30, 0xdf, 0xa4, 0x44, 0xf9, 0xa4, 0xb8, 0x92, 0x06, 0xbc, 0x92, 0xce, 0xc2, - 0x88, 0xa5, 0x3d, 0xc4, 0x72, 0xa3, 0xc2, 0x47, 0x30, 0x4c, 0x5e, 0x77, 0x2a, 0xe9, 0xdf, 0x0e, - 0x40, 0xdc, 0xe7, 0xda, 0x06, 0x19, 0x5c, 0xd5, 0xd4, 0xda, 0xd8, 0x9d, 0x69, 0xf6, 0xe6, 0x51, - 0x62, 0xb0, 0xbf, 0x12, 0x43, 0x5e, 0x25, 0x76, 0x66, 0x3f, 0xec, 0x9b, 0x7d, 0x47, 0xb8, 0x5a, - 0x85, 0xab, 0x87, 0x0a, 0xb7, 0x55, 0x59, 0xfd, 0x12, 0x29, 0xb1, 0x1f, 0xf5, 0xa4, 0x96, 0x08, - 0x86, 0x37, 0x68, 0xff, 0x24, 0x4d, 0x64, 0x92, 0x10, 0xd8, 0x3e, 0xed, 0x9b, 0xc0, 0x98, 0x14, - 0x20, 0x42, 0x78, 0x87, 0x74, 0x9c, 0x1c, 0xe1, 0xe2, 0xc0, 0x1c, 0xc4, 0xcb, 0xb4, 0xcf, 0x54, - 0xa1, 0xd5, 0xa8, 0x30, 0x06, 0x4c, 0x08, 0x98, 0x81, 0x68, 0x59, 0x7b, 0x88, 0x53, 0x17, 0xb6, - 0xd6, 0x2f, 0x92, 0x9c, 0x94, 0x4b, 0x94, 0xfe, 0xa7, 0x41, 0x88, 0xfb, 0xdc, 0xf7, 0x73, 0x29, - 0xe8, 0x0c, 0x80, 0x66, 0x78, 0x7e, 0x0d, 0x87, 0xc4, 0xfc, 0xa8, 0x66, 0x78, 0x7e, 0x2d, 0xa7, - 0xa1, 0xa8, 0x6e, 0x7b, 0x88, 0x67, 0xe3, 0x8a, 0xea, 0x20, 0x38, 0xbf, 0xd3, 0xc3, 0x14, 0x46, - 0x9f, 0x3b, 0x33, 0x3c, 0xec, 0x9d, 0xe1, 0xee, 0x0d, 0xc8, 0x91, 0xf7, 0xbb, 0x01, 0x19, 0x79, - 0x9e, 0x0d, 0xc8, 0xd5, 0x6f, 0x91, 0xa9, 0xfa, 0xba, 0x70, 0xa2, 0xb9, 0x9a, 0x87, 0xd1, 0x7c, - 0xc9, 0xd9, 0x00, 0xc1, 0xd6, 0xfa, 0x98, 0x57, 0x49, 0x62, 0x90, 0x96, 0x0e, 0x6b, 0x59, 0x77, - 0x87, 0x24, 0xee, 0x53, 0x12, 0xe9, 0xa1, 0xa4, 0x9b, 0x36, 0xe9, 0x81, 0xa8, 0x03, 0x66, 0x61, - 0x94, 0xfe, 0x2a, 0x52, 0xea, 0xc2, 0x4e, 0xc5, 0xb0, 0x2e, 0x92, 0xc9, 0xa6, 0x1a, 0x49, 0xff, - 0x60, 0x18, 0xa2, 0x6e, 0x2c, 0x44, 0x22, 0x04, 0x2b, 0x2d, 0x8b, 0xfb, 0x2f, 0xf2, 0xd8, 0x7d, - 0xea, 0x28, 0xde, 0x39, 0x75, 0xe4, 0x68, 0x3d, 0xd8, 0xf9, 0x75, 0xa4, 0xee, 0x0c, 0x30, 0xda, - 0x93, 0x01, 0x92, 0xc9, 0x64, 0x86, 0xc7, 0x4a, 0x2b, 0x60, 0x93, 0xc9, 0x40, 0xb4, 0xb4, 0x3a, - 0x07, 0xa3, 0x3c, 0xd1, 0x62, 0x18, 0x31, 0xc6, 0x83, 0xc3, 0x28, 0xca, 0x1c, 0x44, 0xe8, 0x8f, - 0x44, 0x90, 0x45, 0x32, 0xc6, 0x9c, 0x99, 0x56, 0x76, 0x7d, 0xa4, 0x56, 0x95, 0xf9, 0x72, 0x1b, - 0x67, 0x3e, 0x52, 0xab, 0x32, 0xa3, 0xa7, 0x76, 0x56, 0x95, 0x9d, 0x94, 0x4f, 0xa4, 0xad, 0x51, - 0xad, 0xea, 0x04, 0xab, 0x8f, 0xc1, 0x98, 0x26, 0x37, 0x94, 0x66, 0xeb, 0x40, 0xa1, 0x81, 0xcc, - 0x4c, 0x4c, 0xb0, 0x2d, 0x42, 0x6d, 0xc7, 0x03, 0xec, 0x58, 0x16, 0x62, 0xcb, 0xd6, 0xf5, 0x1d, - 0x15, 0xb5, 0x2a, 0x93, 0xac, 0x63, 0x92, 0x19, 0x77, 0x45, 0xad, 0xee, 0x59, 0x15, 0xd2, 0x29, - 0x69, 0xa8, 0x52, 0x05, 0x27, 0xa6, 0x58, 0xa7, 0x15, 0xb5, 0xca, 0x35, 0x7e, 0x1e, 0xc6, 0x2a, - 0xbc, 0x51, 0x56, 0xeb, 0x8a, 0x65, 0x25, 0xa6, 0x59, 0x48, 0xad, 0x30, 0x84, 0x2c, 0x81, 0xa1, - 0x97, 0x00, 0xb9, 0x58, 0x56, 0xab, 0xc2, 0x31, 0x67, 0xd8, 0xc7, 0x42, 0x8e, 0x59, 0x6e, 0x55, - 0x18, 0xf2, 0x02, 0x4c, 0xb8, 0xc8, 0xb4, 0xe8, 0x56, 0xf5, 0x7a, 0x62, 0xd6, 0x87, 0x5b, 0xe2, - 0x60, 0x74, 0x91, 0xe0, 0x36, 0x94, 0xfb, 0xb2, 0xa1, 0xa8, 0x47, 0xd8, 0x96, 0xc9, 0x82, 0x4e, - 0x24, 0xe8, 0x8c, 0x8e, 0x55, 0x76, 0x94, 0xfb, 0x25, 0x0a, 0x26, 0x6b, 0x9e, 0xaa, 0xd6, 0x55, - 0xde, 0x1c, 0x57, 0xad, 0xa3, 0xbb, 0x15, 0x88, 0xb4, 0xac, 0x0a, 0x5b, 0x13, 0x49, 0xba, 0x26, - 0xfa, 0xe6, 0xb8, 0x7b, 0x56, 0x85, 0x2e, 0x89, 0x91, 0x16, 0x7b, 0x58, 0xfd, 0x0e, 0x59, 0x11, - 0xdf, 0xa2, 0xfb, 0x83, 0xeb, 0x2d, 0x2b, 0x19, 0xa6, 0xf6, 0x47, 0x0a, 0x5f, 0xc7, 0xae, 0xa3, - 0xae, 0xfd, 0xf5, 0xd8, 0xf4, 0x69, 0x88, 0x6d, 0x74, 0x2c, 0x8b, 0xac, 0x00, 0x8f, 0xa1, 0x91, - 0x56, 0x36, 0xed, 0x9e, 0xfd, 0x41, 0xd7, 0xee, 0xc8, 0xea, 0xe2, 0xa2, 0xbb, 0x1b, 0xe0, 0x5e, - 0xab, 0xbb, 0x15, 0x8a, 0x84, 0xc4, 0xf0, 0xad, 0x50, 0x24, 0x2c, 0x0e, 0xdf, 0x0a, 0x45, 0x86, - 0xc5, 0x91, 0xae, 0xcf, 0x74, 0xa3, 0x62, 0xfc, 0x56, 0x28, 0x12, 0x17, 0xc7, 0xd2, 0xbf, 0x26, - 0x40, 0x70, 0xab, 0xb4, 0x47, 0xac, 0x87, 0xad, 0xdc, 0xae, 0x6d, 0xb0, 0x38, 0x83, 0x3a, 0x7b, - 0x60, 0xe7, 0x60, 0x54, 0x6d, 0x55, 0x15, 0xd9, 0x1f, 0x8c, 0x63, 0x04, 0xe6, 0xa0, 0x7c, 0x02, - 0xa0, 0x66, 0xb4, 0x1c, 0x8b, 0x09, 0x0e, 0xce, 0x61, 0xb7, 0x4a, 0x7b, 0x3c, 0x87, 0x8d, 0xd6, - 0x8c, 0x16, 0x7b, 0x4c, 0x7f, 0x16, 0xa2, 0x2e, 0x1c, 0x8d, 0x41, 0x40, 0xab, 0x72, 0x41, 0x02, - 0x5a, 0xb5, 0x67, 0x71, 0x05, 0x7a, 0x17, 0xd7, 0x69, 0x88, 0x1a, 0xa6, 0xae, 0x52, 0xa7, 0xc3, - 0x03, 0x56, 0x07, 0x90, 0xfe, 0xd7, 0x02, 0x24, 0x9d, 0xa3, 0x1f, 0x2d, 0x6b, 0x07, 0xdb, 0xa6, - 0xa6, 0x5a, 0x9b, 0x1a, 0xae, 0x57, 0x37, 0x14, 0x5b, 0x41, 0x79, 0xe7, 0x7e, 0xd6, 0xc0, 0x5b, - 0x93, 0x83, 0x89, 0x17, 0x6f, 0xe3, 0x07, 0xec, 0x57, 0x01, 0xe8, 0xc5, 0xae, 0x2b, 0x9d, 0x8b, - 0x5d, 0xc1, 0x3e, 0x59, 0x3f, 0xa3, 0xde, 0x27, 0x18, 0xfc, 0xd2, 0x57, 0x72, 0x05, 0x22, 0x0e, - 0x8b, 0xe7, 0xb9, 0x28, 0x96, 0xfe, 0xae, 0x00, 0xd3, 0x3d, 0x62, 0xd1, 0xe1, 0xbc, 0x06, 0xe1, - 0x03, 0x22, 0x1e, 0xaf, 0x8c, 0x17, 0x4e, 0x3e, 0x20, 0x89, 0x11, 0xa2, 0x75, 0x9a, 0x5c, 0x29, - 0x7c, 0x10, 0x8b, 0xcf, 0xa7, 0x11, 0x9a, 0x8c, 0x29, 0x69, 0x05, 0x26, 0xd9, 0xdd, 0xb5, 0xdb, - 0xad, 0x0a, 0x66, 0xe7, 0x10, 0x25, 0xfc, 0x06, 0xba, 0x08, 0xd1, 0xce, 0x05, 0x45, 0x76, 0x1a, - 0x89, 0xdd, 0xd4, 0x36, 0x49, 0x84, 0x7c, 0x4d, 0xea, 0xb4, 0xa2, 0xb3, 0x3c, 0x18, 0x07, 0x7a, - 0xb1, 0x68, 0x43, 0x5a, 0x86, 0x89, 0x6d, 0xcd, 0xb2, 0x7f, 0x7a, 0x1d, 0xfc, 0x0f, 0x01, 0xa6, - 0xbb, 0x7a, 0xb0, 0x8c, 0xbc, 0x8d, 0x1b, 0xf4, 0xa3, 0x90, 0x56, 0xe5, 0x96, 0x46, 0x1e, 0x51, - 0x0e, 0x44, 0x95, 0x8e, 0xd7, 0xb3, 0x97, 0x18, 0x7e, 0xe6, 0x5e, 0xe2, 0x38, 0xa3, 0xe9, 0xec, - 0x22, 0xe6, 0x40, 0xc4, 0xf7, 0x0d, 0xcd, 0x7c, 0xe0, 0x61, 0x33, 0xfc, 0x6c, 0x36, 0x8c, 0xa6, - 0xc3, 0xe6, 0x0c, 0x40, 0xcb, 0xc2, 0xa6, 0x8c, 0x1b, 0x8a, 0x56, 0xe7, 0x1f, 0x6e, 0xa2, 0x04, - 0x92, 0x23, 0x00, 0x77, 0xe4, 0x91, 0x41, 0x23, 0xdf, 0xed, 0x51, 0xad, 0x65, 0xa0, 0x4f, 0x41, - 0x58, 0xb3, 0x71, 0xc3, 0x4a, 0x3c, 0xe5, 0xdc, 0x64, 0x5f, 0x75, 0x49, 0x8c, 0x2e, 0x7d, 0x00, - 0x89, 0x2d, 0xcf, 0xd9, 0x9e, 0xec, 0x21, 0x56, 0x8f, 0x24, 0xfc, 0x46, 0x0b, 0x5b, 0xf6, 0x07, - 0x3a, 0x6f, 0xd7, 0x61, 0xae, 0x4f, 0x3f, 0x96, 0xa1, 0x37, 0x59, 0x99, 0xe8, 0x9c, 0xb4, 0x61, - 0x07, 0x6d, 0x9c, 0xd7, 0xf4, 0xf7, 0x04, 0x98, 0x63, 0x36, 0xcb, 0xa8, 0xfd, 0x86, 0x75, 0x16, - 0xe8, 0x11, 0xdb, 0x7e, 0xb2, 0xd1, 0x06, 0x74, 0x08, 0x53, 0x74, 0x1a, 0x9e, 0x7b, 0x47, 0x79, - 0x7d, 0x8e, 0xee, 0xfa, 0xff, 0xa1, 0x10, 0x78, 0x8d, 0x5e, 0x52, 0x86, 0x3f, 0x14, 0x46, 0x6e, - 0x85, 0x23, 0x6f, 0xfe, 0xc7, 0xaf, 0x8c, 0x4b, 0x93, 0x1d, 0x96, 0x2e, 0x7e, 0x7a, 0x15, 0x66, - 0x89, 0x9e, 0xdf, 0x8b, 0x94, 0xe9, 0x15, 0x98, 0x94, 0x70, 0x5b, 0x3f, 0xc2, 0x3d, 0x74, 0x9d, - 0xcc, 0xb7, 0x9f, 0x4e, 0x2f, 0xc1, 0x64, 0x87, 0x82, 0xef, 0xa0, 0x59, 0x74, 0xd7, 0x9b, 0x1f, - 0x42, 0x61, 0xca, 0xe4, 0x6f, 0x69, 0x0b, 0x62, 0x9e, 0x7b, 0xec, 0xe8, 0x1c, 0xc4, 0xd8, 0x11, - 0x29, 0x76, 0xfd, 0x9d, 0x26, 0x50, 0x37, 0x87, 0x24, 0xa0, 0x40, 0x17, 0xa5, 0x7e, 0xb5, 0x6d, - 0x34, 0x39, 0x4a, 0xcc, 0x41, 0xa1, 0x40, 0x8a, 0xe2, 0xfc, 0x60, 0xdd, 0xba, 0xc8, 0x8a, 0x23, - 0x14, 0xf9, 0xe1, 0xb1, 0x00, 0x6f, 0x1f, 0x0b, 0x02, 0x3f, 0xb7, 0xfe, 0xbf, 0x83, 0x30, 0xbb, - 0xa1, 0x99, 0x58, 0xb5, 0xf9, 0x87, 0x3a, 0x26, 0x27, 0xdd, 0x5e, 0x7b, 0x05, 0xe6, 0xaa, 0xb4, - 0xc9, 0x39, 0x3e, 0x25, 0xd7, 0x14, 0x1b, 0xdf, 0x53, 0x1e, 0xc8, 0x6e, 0xac, 0x99, 0xa9, 0x7a, - 0x69, 0xb7, 0x58, 0x73, 0xbe, 0x8a, 0x3e, 0x05, 0xa7, 0x07, 0x90, 0x76, 0xbe, 0x06, 0x45, 0xa5, - 0xb9, 0x7e, 0xd4, 0xec, 0x0b, 0xc4, 0x34, 0x0c, 0xb7, 0x6b, 0xf7, 0x64, 0xd7, 0x61, 0x84, 0xdb, - 0xb5, 0x7b, 0xf9, 0x2a, 0xc9, 0x4d, 0x08, 0x98, 0x31, 0x61, 0x05, 0x42, 0xa4, 0x5d, 0xbb, 0xc7, - 0x68, 0x0a, 0x70, 0xbe, 0xab, 0x53, 0x82, 0xab, 0x58, 0x96, 0xae, 0x6a, 0xcc, 0xc2, 0x18, 0x1d, - 0x2b, 0x1f, 0x52, 0xbe, 0xce, 0xf7, 0x6b, 0xf7, 0xd6, 0x3a, 0x88, 0x8c, 0xdf, 0x36, 0x40, 0x5b, - 0x63, 0x07, 0xa8, 0xb0, 0x73, 0x1a, 0xa9, 0xef, 0x26, 0xaf, 0x4f, 0x81, 0xfb, 0xf9, 0x4d, 0x4a, - 0x4e, 0x54, 0x28, 0x45, 0xdb, 0x1a, 0x3d, 0x49, 0x85, 0x2d, 0x84, 0xe1, 0x8a, 0x61, 0xea, 0x86, - 0x42, 0x14, 0x51, 0xe5, 0xbf, 0x98, 0x26, 0x1f, 0x98, 0x7a, 0x43, 0xee, 0x12, 0x5a, 0x75, 0xbf, - 0x98, 0xb2, 0xdf, 0x69, 0x94, 0x5e, 0xea, 0xd0, 0xb1, 0xdf, 0x50, 0xdb, 0x34, 0xf5, 0x86, 0xaf, - 0xcf, 0xce, 0x47, 0xd6, 0xd5, 0xcc, 0xe3, 0x63, 0xe1, 0x02, 0xbc, 0x08, 0xd3, 0x0c, 0x21, 0xc5, - 0x9b, 0x9c, 0xed, 0xe2, 0x38, 0xdf, 0xdb, 0xa6, 0x87, 0x92, 0x5e, 0x4e, 0xff, 0x7e, 0x00, 0xe6, - 0x06, 0x4a, 0x4f, 0x27, 0x41, 0x3b, 0xe8, 0xcc, 0x76, 0xb8, 0xad, 0x1d, 0xf0, 0x49, 0x70, 0xf4, - 0xc2, 0x67, 0x32, 0xe2, 0x8c, 0x13, 0x5d, 0x04, 0x51, 0xb1, 0x6d, 0x45, 0x3d, 0xf4, 0x7c, 0x92, - 0x60, 0x53, 0x38, 0xde, 0x81, 0x33, 0xd4, 0x3c, 0x44, 0x9d, 0x03, 0xc6, 0xce, 0xf9, 0xb4, 0xcc, - 0x33, 0xd5, 0xbb, 0xbe, 0x55, 0x2a, 0x61, 0x6c, 0x52, 0xed, 0x46, 0xf8, 0xb9, 0x63, 0x6b, 0xf5, - 0x73, 0x6f, 0x1d, 0x0b, 0xbf, 0x40, 0xcb, 0xde, 0xfc, 0x66, 0x2a, 0xbf, 0x41, 0xcb, 0x5e, 0x2a, - 0x39, 0x24, 0x20, 0x4a, 0x60, 0xec, 0xdb, 0x73, 0xcc, 0x23, 0x39, 0x2c, 0xc0, 0x14, 0x69, 0x59, - 0x73, 0xa5, 0xe2, 0x48, 0xa8, 0x77, 0x04, 0xe9, 0xaf, 0x05, 0x21, 0x31, 0x48, 0x0c, 0x92, 0x11, - 0x3a, 0xe7, 0xa3, 0x0f, 0x94, 0x86, 0x56, 0x77, 0xd2, 0x91, 0x38, 0x87, 0x6e, 0x52, 0x20, 0x45, - 0x6b, 0x28, 0x0f, 0xf5, 0x66, 0xd7, 0x0f, 0xc6, 0xc6, 0x19, 0xd4, 0x29, 0x72, 0x45, 0x08, 0x2a, - 0x56, 0x93, 0x57, 0x5b, 0xe4, 0x11, 0xcd, 0x43, 0xcc, 0x3d, 0x88, 0xad, 0x55, 0xb9, 0xd9, 0x47, - 0xf9, 0xd8, 0xf3, 0x55, 0x5a, 0x5a, 0x38, 0xed, 0x5e, 0x0b, 0x1f, 0xe5, 0x28, 0xee, 0xaf, 0xe8, - 0x12, 0x2c, 0xf7, 0x6c, 0x9d, 0xc3, 0x84, 0x1b, 0xc6, 0x45, 0x10, 0xd5, 0x96, 0x65, 0xeb, 0x0d, - 0xcf, 0x11, 0x71, 0x16, 0x04, 0xc7, 0x1d, 0xb8, 0xf3, 0xa3, 0xb5, 0xbf, 0xfc, 0xd6, 0xb1, 0xf0, - 0x10, 0xd2, 0x30, 0xc6, 0x01, 0x29, 0x36, 0xc0, 0xa4, 0xd8, 0xad, 0x07, 0xf8, 0x39, 0x98, 0x5c, - 0xa3, 0x83, 0x4b, 0x95, 0xb5, 0x6a, 0xe7, 0x2b, 0xbf, 0xd8, 0xad, 0x09, 0x78, 0x09, 0xa6, 0xb3, - 0xbc, 0x17, 0x3f, 0x2a, 0xea, 0x15, 0x2b, 0xfd, 0xdf, 0x05, 0x48, 0xd3, 0x9f, 0xfc, 0xbc, 0xd9, - 0xaa, 0x94, 0x0d, 0xfd, 0x08, 0xef, 0x37, 0xb1, 0x4d, 0x06, 0xea, 0x7e, 0x98, 0xa2, 0xd3, 0x72, - 0x1b, 0x22, 0x87, 0xad, 0x8a, 0xdc, 0x6e, 0x62, 0x9b, 0x7f, 0x23, 0xe8, 0x7b, 0x88, 0x95, 0x72, - 0xda, 0x2f, 0x60, 0x7b, 0x57, 0xef, 0xe1, 0x23, 0x8d, 0x1c, 0xb6, 0x2a, 0x04, 0x8a, 0x3e, 0x0d, - 0x31, 0x8b, 0x74, 0x45, 0xd9, 0x59, 0x3c, 0xcd, 0x7b, 0x7e, 0x7e, 0x60, 0x39, 0xf2, 0x5a, 0xab, - 0x57, 0x1e, 0x1f, 0x0b, 0x19, 0x58, 0x80, 0x17, 0x28, 0x45, 0xea, 0x66, 0xab, 0x92, 0xa2, 0xa3, - 0x49, 0x91, 0xe6, 0x14, 0xa7, 0xf3, 0x7d, 0xe6, 0xf9, 0x51, 0x00, 0x4e, 0x3f, 0x8d, 0x3d, 0xfa, - 0x14, 0x44, 0x89, 0x7c, 0xb2, 0xd6, 0x3c, 0xd0, 0xf9, 0x98, 0xd3, 0x7d, 0x4f, 0xb9, 0x32, 0x2e, - 0xce, 0xe1, 0xa5, 0x08, 0x21, 0xa2, 0x3a, 0x5b, 0x81, 0x59, 0xea, 0x99, 0xfa, 0x78, 0x4d, 0x66, - 0xac, 0xd3, 0xb4, 0xb9, 0xc7, 0x55, 0x66, 0x21, 0xcc, 0x96, 0x71, 0x70, 0xb0, 0x97, 0x74, 0xfb, - 0xf4, 0xc8, 0xcc, 0xae, 0x39, 0x30, 0xda, 0xd5, 0xc6, 0x5b, 0xc7, 0x82, 0x06, 0xab, 0x70, 0x3a, - 0x77, 0x5f, 0xb3, 0xe8, 0x87, 0x7a, 0xaa, 0x09, 0x09, 0x5b, 0x7a, 0xcb, 0x54, 0x71, 0x8a, 0x46, - 0xb4, 0x64, 0x12, 0x12, 0xee, 0x18, 0x17, 0x4d, 0xde, 0xc6, 0x22, 0x20, 0xbc, 0x04, 0xc8, 0x4f, - 0x4b, 0x6b, 0xbe, 0x69, 0x98, 0xec, 0x50, 0xd0, 0x27, 0x1a, 0x9e, 0xff, 0x44, 0x80, 0xb9, 0x81, - 0x32, 0x91, 0x45, 0xc5, 0x4e, 0xa2, 0xc8, 0x8c, 0xd6, 0xf1, 0x81, 0xa3, 0x0c, 0x4a, 0x68, 0xf2, - 0x55, 0xf4, 0x02, 0xc4, 0x0d, 0x46, 0xe9, 0xd3, 0xd2, 0xa8, 0xe1, 0x61, 0x87, 0x32, 0x80, 0x5c, - 0xa4, 0x07, 0x4d, 0x55, 0xae, 0xe3, 0x36, 0xae, 0x73, 0xa7, 0x28, 0x3a, 0x98, 0x0f, 0x9a, 0xea, - 0x36, 0x81, 0xa3, 0x4b, 0x80, 0x0c, 0x53, 0x6f, 0x6b, 0xa4, 0x44, 0xec, 0xf0, 0x65, 0x8b, 0x7e, - 0xc2, 0xdb, 0x42, 0x99, 0xa7, 0xff, 0x73, 0x00, 0x4e, 0xd1, 0x51, 0xe4, 0xee, 0x1b, 0x64, 0x75, - 0xd0, 0x08, 0xe1, 0xf9, 0xe8, 0x77, 0x17, 0x16, 0x06, 0x84, 0x1d, 0x85, 0x50, 0xc9, 0x98, 0x91, - 0xb1, 0x16, 0xea, 0x85, 0xa3, 0xd2, 0xc7, 0xfa, 0x05, 0x9c, 0x9e, 0x4e, 0xd0, 0x5d, 0xae, 0x57, - 0x6f, 0x68, 0x6f, 0x39, 0x9f, 0xb1, 0xfa, 0xa6, 0xba, 0x44, 0x6b, 0x9e, 0x30, 0xcf, 0x8f, 0xd3, - 0x4e, 0xb4, 0xbb, 0xc1, 0x84, 0x35, 0xb3, 0x43, 0x7e, 0x11, 0xc3, 0xe3, 0xb5, 0x06, 0xb0, 0x66, - 0xe3, 0xa6, 0xd8, 0x5e, 0xd6, 0x66, 0x37, 0xd8, 0xfd, 0xac, 0x9a, 0x64, 0xcb, 0x8e, 0x8f, 0x28, - 0x45, 0xe9, 0xdd, 0x23, 0x21, 0x34, 0x3e, 0xb2, 0x14, 0xc9, 0x3d, 0xab, 0x1b, 0x14, 0x43, 0xe9, - 0xaf, 0x0c, 0x73, 0xd7, 0xe3, 0x55, 0x44, 0x56, 0x33, 0xd5, 0x96, 0x66, 0x7b, 0x94, 0xfe, 0x32, - 0x24, 0x7c, 0x7a, 0x95, 0x55, 0x86, 0xd2, 0x31, 0xa3, 0x69, 0xdc, 0xcb, 0x20, 0x5f, 0x45, 0x1f, - 0x87, 0x64, 0x7f, 0x42, 0x4f, 0x15, 0x3f, 0xdb, 0x87, 0x94, 0x56, 0xf4, 0xaf, 0xc2, 0xa9, 0xfe, - 0xc4, 0xde, 0x28, 0x9c, 0xc0, 0xfd, 0x25, 0xc7, 0x68, 0x0d, 0xce, 0x74, 0x91, 0xbb, 0x59, 0x85, - 0xe7, 0x27, 0x98, 0xa5, 0xa4, 0x8f, 0x81, 0x8b, 0x42, 0x25, 0xc8, 0xc1, 0xd9, 0x81, 0x2c, 0x7c, - 0x81, 0xe7, 0x74, 0x7f, 0x26, 0x5c, 0xfd, 0xb7, 0x61, 0x84, 0x2f, 0x0b, 0xfe, 0xe1, 0xb2, 0xef, - 0xa7, 0x6a, 0xef, 0x14, 0xf8, 0xdc, 0x20, 0xdb, 0x79, 0xe2, 0x1c, 0x56, 0x7f, 0x14, 0x78, 0x7c, - 0x2c, 0x5c, 0x85, 0x25, 0x38, 0xef, 0x9f, 0x6a, 0x3e, 0xf6, 0x94, 0xd2, 0xac, 0xa6, 0x3a, 0x12, - 0xa0, 0x28, 0x4b, 0x90, 0xae, 0x67, 0x56, 0xde, 0x3a, 0x16, 0xbe, 0x19, 0x80, 0x55, 0x48, 0xf6, - 0xa7, 0xa3, 0xae, 0xe5, 0xf4, 0xd3, 0xe6, 0x0b, 0xf2, 0x70, 0xa1, 0x3f, 0x6d, 0xc9, 0xb3, 0x8c, - 0x79, 0xd6, 0x71, 0xe6, 0xa9, 0x93, 0x07, 0xaf, 0xc1, 0x99, 0x2e, 0x56, 0x9d, 0x73, 0x75, 0x54, - 0x92, 0xb3, 0xcf, 0x98, 0x3d, 0xd8, 0x80, 0xb3, 0x03, 0x39, 0x30, 0xbd, 0x25, 0xcf, 0x3d, 0x73, - 0xfa, 0xd8, 0x7e, 0x59, 0xfa, 0x47, 0x02, 0x4c, 0xf7, 0x5d, 0xcb, 0x9e, 0xbc, 0x5d, 0xf0, 0xe6, - 0xed, 0x73, 0x40, 0xd2, 0x74, 0xaf, 0x15, 0x8f, 0xb4, 0x6b, 0xf7, 0xa8, 0xcd, 0xf8, 0x52, 0xfa, - 0x60, 0x57, 0x4a, 0xaf, 0xc2, 0x44, 0xaf, 0x09, 0xb1, 0x54, 0x71, 0x65, 0x60, 0x8c, 0x79, 0xea, - 0xda, 0x94, 0x44, 0xb5, 0xcb, 0xdc, 0xd2, 0x5f, 0x17, 0x60, 0xba, 0xaf, 0xfb, 0x40, 0x0b, 0x30, - 0xe1, 0x73, 0x43, 0xde, 0xab, 0x1b, 0x1e, 0xcf, 0x42, 0xc7, 0xb1, 0xe9, 0x84, 0xc0, 0xa7, 0xe4, - 0x06, 0x9e, 0x5e, 0x7a, 0x2d, 0x96, 0x91, 0xa7, 0xff, 0x89, 0x00, 0xa7, 0x9f, 0x86, 0x87, 0x32, - 0xd0, 0x1b, 0x06, 0xb8, 0x50, 0xbd, 0x0d, 0xa4, 0xda, 0x24, 0x7c, 0xf3, 0x25, 0xe7, 0x5b, 0x0c, - 0x7b, 0x23, 0x33, 0xc2, 0x6e, 0xf6, 0x59, 0xee, 0x77, 0x49, 0xf2, 0xbe, 0x66, 0x35, 0xd1, 0x65, - 0x10, 0xbb, 0x94, 0xee, 0xfc, 0x58, 0x3b, 0xfb, 0xf2, 0x36, 0xee, 0xd7, 0x20, 0x4e, 0xff, 0x40, - 0x70, 0xad, 0xb3, 0xff, 0x6a, 0x7c, 0x4e, 0x99, 0xa7, 0xbc, 0xa7, 0x85, 0xa3, 0xce, 0xa9, 0x93, - 0x53, 0x10, 0x65, 0x21, 0xab, 0x23, 0x72, 0x84, 0x02, 0x88, 0xcc, 0xde, 0xe1, 0x84, 0xfc, 0xc3, - 0x39, 0x07, 0x4e, 0x38, 0x96, 0xdd, 0x6b, 0xcb, 0x51, 0x29, 0xc6, 0x61, 0xf4, 0xd2, 0x8e, 0x0a, - 0x62, 0xcf, 0x61, 0xd9, 0xb3, 0x10, 0xf3, 0x9e, 0x90, 0x65, 0xc2, 0xc2, 0x41, 0x07, 0x61, 0x11, - 0x42, 0xb6, 0xd6, 0xc0, 0x27, 0x38, 0xfe, 0x46, 0xf1, 0x16, 0x5e, 0x85, 0x88, 0x73, 0xdb, 0x1b, - 0xc5, 0x60, 0x24, 0x5f, 0xd8, 0x5f, 0xdb, 0xce, 0x6f, 0x88, 0x43, 0x68, 0x02, 0xe2, 0x52, 0x6e, - 0x2b, 0x5f, 0x2c, 0xac, 0x6d, 0xcb, 0xb9, 0x8d, 0xad, 0x9c, 0x28, 0x10, 0x50, 0x76, 0xaf, 0xbc, - 0x5b, 0xdc, 0xc9, 0x49, 0x0c, 0x14, 0x58, 0xd8, 0x84, 0x98, 0xe7, 0x56, 0x35, 0x1a, 0x03, 0x28, - 0x14, 0xe5, 0xf2, 0xde, 0xfa, 0xee, 0xdd, 0x52, 0x8e, 0x31, 0xd9, 0xcf, 0x95, 0xe5, 0x7c, 0x51, - 0xde, 0x2b, 0xe7, 0x64, 0x89, 0x30, 0x99, 0x02, 0x91, 0x83, 0xb2, 0x39, 0x39, 0x5f, 0x90, 0x6f, - 0xdf, 0x28, 0x8b, 0x81, 0x85, 0xef, 0x0a, 0x00, 0x9d, 0x9b, 0x74, 0x28, 0x0d, 0xf3, 0xd9, 0x1c, - 0xfb, 0x39, 0xcf, 0x9d, 0xe2, 0x06, 0xc1, 0xdb, 0x92, 0x72, 0xe5, 0xb2, 0x9c, 0x63, 0x7f, 0xb6, - 0xee, 0x88, 0x43, 0xe8, 0x14, 0xcc, 0xf6, 0xc5, 0xd9, 0xba, 0x23, 0x0a, 0x28, 0x09, 0x33, 0xbe, - 0xc6, 0x0e, 0x61, 0x00, 0x9d, 0x86, 0x84, 0xaf, 0x6d, 0x23, 0x2b, 0x67, 0xb7, 0x8b, 0x7b, 0x1b, - 0xa4, 0x35, 0x48, 0xe4, 0xf3, 0xb5, 0x66, 0x4b, 0x39, 0x31, 0xb4, 0xf0, 0x59, 0x88, 0x79, 0x4e, - 0x82, 0xa3, 0x04, 0x4c, 0xed, 0x15, 0x6e, 0x17, 0x8a, 0x77, 0x0a, 0xce, 0xcf, 0x8d, 0x96, 0x77, - 0xd7, 0x76, 0xc9, 0x88, 0xe3, 0x10, 0xe5, 0x90, 0xbd, 0x92, 0x28, 0xa0, 0x71, 0x88, 0xf1, 0xd7, - 0x8d, 0xe2, 0x9d, 0x82, 0x18, 0x40, 0x93, 0x30, 0xee, 0x00, 0xf2, 0xe5, 0xb5, 0xf5, 0xed, 0xdc, - 0x86, 0x18, 0x5c, 0xf8, 0x34, 0x40, 0xe7, 0xc4, 0x38, 0x9a, 0x85, 0xc9, 0x2e, 0xe6, 0x52, 0x71, - 0x9b, 0xf0, 0x9e, 0x02, 0xd1, 0xf9, 0x71, 0xd3, 0x42, 0x7e, 0x37, 0xbf, 0xb6, 0x5b, 0x94, 0x98, - 0x42, 0x1d, 0xb4, 0x5c, 0xb9, 0x54, 0x2c, 0x6c, 0xe4, 0x24, 0x31, 0xb0, 0xf0, 0x3a, 0x44, 0xdd, - 0x6b, 0x2b, 0x28, 0x02, 0x21, 0x42, 0x21, 0x0e, 0x21, 0x80, 0xe1, 0xb5, 0xec, 0x6e, 0x7e, 0x9f, - 0xcc, 0xc4, 0x18, 0x40, 0xb6, 0x58, 0x28, 0xe4, 0xb2, 0xbb, 0xf9, 0xc2, 0x96, 0x18, 0x20, 0xa2, - 0xf3, 0x77, 0x22, 0x14, 0x11, 0x3d, 0x57, 0xde, 0x5d, 0x5b, 0xdf, 0xce, 0x97, 0x6f, 0xe6, 0x36, - 0xc4, 0x10, 0xa1, 0xdd, 0xc8, 0x6d, 0xe7, 0x76, 0x73, 0x62, 0x78, 0x61, 0x03, 0x62, 0x9e, 0x7b, - 0x16, 0x64, 0x9e, 0xa9, 0x02, 0x64, 0x2e, 0xb8, 0x38, 0x84, 0x44, 0x18, 0x65, 0x20, 0xb7, 0x3f, - 0x17, 0xb2, 0xbe, 0x96, 0xbd, 0xbd, 0x57, 0x12, 0x03, 0x44, 0xab, 0x9e, 0x0f, 0x9d, 0x44, 0x37, - 0x9f, 0xde, 0x5b, 0xdb, 0xce, 0xef, 0xde, 0xf5, 0xf3, 0x71, 0x80, 0x5b, 0xc5, 0xe2, 0x06, 0xe3, - 0xe3, 0x40, 0x4a, 0xc5, 0xa2, 0x24, 0x06, 0x88, 0x0a, 0x1c, 0x88, 0x47, 0xab, 0xff, 0x48, 0x80, - 0x88, 0xf3, 0x19, 0x14, 0x4d, 0xc3, 0xc4, 0x76, 0xbe, 0x70, 0x5b, 0x26, 0x86, 0xe9, 0xe1, 0x3e, - 0x03, 0xa8, 0x03, 0xce, 0xed, 0xde, 0xcc, 0x49, 0x85, 0xdc, 0xae, 0x28, 0x10, 0xe3, 0xea, 0xc0, - 0xef, 0xe4, 0x37, 0xf3, 0xf2, 0x8d, 0x2b, 0xcb, 0xf2, 0xd2, 0xd2, 0x5a, 0x96, 0x19, 0x50, 0xdf, - 0xc6, 0xf5, 0xad, 0x82, 0x18, 0x24, 0xe2, 0x75, 0x5a, 0xaf, 0x6d, 0x89, 0x21, 0x84, 0x60, 0xcc, - 0x8f, 0x2f, 0x86, 0x89, 0xc6, 0x3c, 0xb0, 0xb5, 0x82, 0x38, 0xbc, 0xf0, 0x19, 0x18, 0xf5, 0xde, - 0x7c, 0x27, 0x32, 0xec, 0xe7, 0x4b, 0x72, 0x39, 0xb7, 0x4d, 0xa6, 0xa8, 0x58, 0x90, 0xf3, 0xa5, - 0xfd, 0x6b, 0xe4, 0x7f, 0x2b, 0x4c, 0xf0, 0xde, 0x46, 0x51, 0xe8, 0x0b, 0x5f, 0x11, 0x03, 0x0b, - 0x2f, 0x40, 0xcc, 0x73, 0x75, 0x87, 0xcc, 0x25, 0x99, 0x8b, 0x7c, 0x56, 0x1c, 0x22, 0xd6, 0xb1, - 0x71, 0x33, 0x5b, 0x12, 0x85, 0x85, 0x2f, 0x42, 0x62, 0xd0, 0xad, 0x6f, 0x74, 0x16, 0x4e, 0xd1, - 0x45, 0x51, 0x2e, 0x6e, 0xee, 0xde, 0x59, 0x93, 0x72, 0x72, 0x71, 0x3f, 0x27, 0x49, 0xf9, 0x0d, - 0xb6, 0x56, 0xc4, 0x21, 0x94, 0x82, 0xd3, 0x03, 0x10, 0x0a, 0xb9, 0x3b, 0x39, 0x62, 0xa9, 0x83, - 0x31, 0x36, 0xb7, 0x73, 0xb9, 0x5d, 0x31, 0xb0, 0xf0, 0x55, 0x01, 0xa6, 0xfa, 0x9d, 0x0d, 0x26, - 0xa6, 0xb1, 0x57, 0xda, 0x92, 0xd6, 0xe8, 0x3a, 0x77, 0x5c, 0xd4, 0x34, 0x4c, 0x38, 0xc0, 0x5d, - 0x29, 0xbf, 0xb5, 0x95, 0x93, 0x72, 0xc4, 0x3e, 0xc8, 0xfa, 0x71, 0x71, 0xe5, 0x92, 0x54, 0xa4, - 0x6b, 0x5f, 0x0c, 0x78, 0xf1, 0xb3, 0xc5, 0x9d, 0x12, 0x31, 0x65, 0x62, 0xe8, 0x08, 0xc6, 0x1c, - 0xf0, 0xe6, 0x5a, 0x9e, 0xd8, 0x4e, 0x68, 0xa1, 0x02, 0xa3, 0xde, 0x23, 0xa2, 0xa4, 0xff, 0x72, - 0x76, 0x6d, 0x3b, 0x5f, 0xd8, 0xf2, 0xf4, 0x3f, 0x0b, 0x93, 0x1d, 0x60, 0xa7, 0x23, 0x81, 0x70, - 0x74, 0x1a, 0x38, 0xc7, 0x00, 0xb5, 0x7e, 0x0e, 0xdb, 0x28, 0x16, 0x72, 0x62, 0x70, 0xe1, 0x77, - 0x04, 0x98, 0x1b, 0x78, 0x12, 0x93, 0xd8, 0x74, 0x71, 0x73, 0x73, 0x3b, 0x5f, 0xc8, 0x75, 0x6c, - 0x7a, 0xc8, 0x0b, 0xcd, 0x15, 0xc8, 0xda, 0x2c, 0x6c, 0xb1, 0x49, 0x77, 0xa0, 0xd9, 0x62, 0x61, - 0x33, 0xbf, 0xb5, 0x27, 0xd1, 0x3e, 0x27, 0x61, 0xdc, 0x87, 0x4d, 0x87, 0x3b, 0x0d, 0x13, 0x7e, - 0xc6, 0x84, 0x07, 0x35, 0x52, 0x07, 0xcc, 0x65, 0x0e, 0x2f, 0x7c, 0x5f, 0x80, 0xa8, 0x7b, 0xd5, - 0x9a, 0xd8, 0x4c, 0xb1, 0x40, 0x10, 0xd8, 0xaa, 0x2c, 0x49, 0xc5, 0xfd, 0x7c, 0x39, 0x5f, 0x2c, - 0x30, 0x19, 0xe2, 0x10, 0x65, 0x5a, 0x64, 0xce, 0x24, 0x06, 0x23, 0xe5, 0xdd, 0xb5, 0xc2, 0xc6, - 0xfa, 0x5d, 0x31, 0x48, 0x28, 0x1d, 0xcd, 0x92, 0x7e, 0xa4, 0x1c, 0x89, 0x2c, 0xe5, 0x5d, 0x69, - 0x8d, 0x58, 0xa8, 0x18, 0x26, 0xdc, 0xee, 0xac, 0xe5, 0x89, 0x1b, 0x2a, 0x14, 0x37, 0x72, 0x65, - 0x71, 0x98, 0x48, 0xbe, 0x91, 0xcb, 0x16, 0x77, 0x76, 0xf2, 0x65, 0xa7, 0x8b, 0x11, 0xb2, 0xee, - 0x38, 0x9a, 0xbc, 0x59, 0x94, 0x64, 0x1f, 0x93, 0xc8, 0xc2, 0xbf, 0x14, 0xe0, 0xcc, 0x53, 0x0f, - 0x8a, 0xd2, 0x91, 0x97, 0x72, 0x8c, 0x60, 0x8d, 0xb8, 0xcb, 0xb5, 0x8d, 0xbb, 0x4c, 0xa7, 0xc4, - 0x3b, 0x76, 0xcd, 0xe1, 0x04, 0xc4, 0x1d, 0xab, 0x60, 0x88, 0x01, 0x74, 0x06, 0xe6, 0x7c, 0x20, - 0x1f, 0x45, 0x10, 0x9d, 0x83, 0x33, 0x3d, 0xec, 0x7d, 0x28, 0x21, 0x34, 0x0f, 0xc9, 0x5e, 0x94, - 0x8d, 0x1c, 0xe5, 0x49, 0x14, 0x7e, 0x0b, 0x46, 0xf8, 0x47, 0x6a, 0xe2, 0x7e, 0x9d, 0x28, 0xb0, - 0x57, 0x5e, 0x17, 0x87, 0xd0, 0x28, 0x44, 0xf2, 0x85, 0xdd, 0x9c, 0x54, 0x58, 0xdb, 0x66, 0xce, - 0x9b, 0x8d, 0x3f, 0x27, 0x39, 0xe6, 0xe5, 0x4c, 0x3d, 0x99, 0x68, 0x31, 0xb8, 0xf0, 0x83, 0x10, - 0xcc, 0xf4, 0xff, 0xba, 0x47, 0xa2, 0x23, 0x5d, 0x88, 0xcc, 0x35, 0xcb, 0x9b, 0xdb, 0xc5, 0x3b, - 0x72, 0xb6, 0xb8, 0x57, 0x20, 0x11, 0x22, 0x01, 0x53, 0xb4, 0x8d, 0x02, 0xcb, 0xb9, 0xdd, 0xbd, - 0x92, 0x2c, 0x91, 0xd0, 0x46, 0xad, 0x8c, 0xb6, 0xe4, 0x0b, 0xf2, 0xee, 0x4d, 0xa9, 0xb8, 0xb7, - 0x75, 0xb3, 0xb4, 0xb7, 0x2b, 0x06, 0xe8, 0x32, 0x20, 0xf0, 0xe2, 0xde, 0xae, 0xb7, 0x21, 0xd8, - 0x59, 0xef, 0x77, 0xcb, 0xbb, 0xb9, 0x1d, 0xa7, 0xb7, 0x52, 0x71, 0x83, 0x77, 0x46, 0xf5, 0x41, - 0x31, 0xf6, 0x6f, 0xdf, 0x28, 0xf7, 0xb6, 0x87, 0xd1, 0x1c, 0x4c, 0xd3, 0x76, 0xa9, 0xbb, 0xd7, - 0x61, 0x77, 0x0c, 0x52, 0x4f, 0xc7, 0x23, 0xc4, 0x73, 0xb2, 0x8e, 0x7b, 0xc5, 0x8d, 0x10, 0x2b, - 0xea, 0x34, 0x76, 0x91, 0x46, 0xdd, 0xc1, 0x14, 0x58, 0xec, 0xdf, 0x93, 0xf7, 0xca, 0x6b, 0x5b, - 0x39, 0x11, 0xdc, 0xfe, 0x68, 0xc3, 0x4e, 0x6e, 0xa7, 0x28, 0xdd, 0xe5, 0x6d, 0x31, 0x57, 0x67, - 0xb4, 0x6d, 0x23, 0x5f, 0xbe, 0xcd, 0x5b, 0x46, 0x5d, 0xaf, 0x49, 0x5b, 0x7a, 0xd5, 0x1d, 0x27, - 0x36, 0xd5, 0x41, 0xe8, 0xd6, 0xf9, 0x98, 0x3b, 0x92, 0x02, 0xcb, 0x70, 0xbc, 0xb2, 0x8e, 0xbb, - 0x23, 0xa1, 0x8d, 0x5d, 0x23, 0x11, 0x5d, 0xdd, 0x32, 0xd2, 0xcd, 0x2e, 0xea, 0x09, 0xbf, 0x68, - 0xf9, 0xcd, 0x6e, 0x06, 0x68, 0xfd, 0xab, 0xc2, 0xdb, 0x3f, 0x9e, 0x1f, 0x7a, 0xe7, 0xc7, 0xf3, - 0x43, 0x3f, 0xf9, 0xf1, 0xbc, 0xf0, 0xe6, 0x93, 0x79, 0xe1, 0x0f, 0x9e, 0xcc, 0x0b, 0xff, 0xea, - 0xc9, 0xbc, 0xf0, 0xf6, 0x93, 0x79, 0xe1, 0x9d, 0x27, 0xf3, 0xc2, 0x9f, 0x3d, 0x99, 0x17, 0xfe, - 0xfc, 0xc9, 0xfc, 0xd0, 0x4f, 0x9e, 0xcc, 0x0b, 0xdf, 0x7a, 0x77, 0x7e, 0xe8, 0x87, 0xef, 0xce, - 0x0b, 0x6f, 0xbf, 0x3b, 0x3f, 0xf4, 0xce, 0xbb, 0xf3, 0x43, 0xbf, 0x70, 0xb3, 0xa6, 0x1b, 0x47, - 0xb5, 0x45, 0xe7, 0xc7, 0x42, 0x16, 0x5b, 0xd6, 0x65, 0xfa, 0x70, 0xa0, 0x9b, 0x8d, 0x4b, 0x34, - 0xbd, 0xae, 0x62, 0xf3, 0x92, 0xd3, 0x7c, 0xd9, 0xa8, 0xd4, 0xf4, 0xcb, 0xf8, 0xbe, 0xed, 0xfc, - 0x7b, 0x77, 0x9d, 0x7f, 0xf6, 0xae, 0x32, 0x4c, 0xb3, 0xd7, 0xab, 0xff, 0x2f, 0x00, 0x00, 0xff, - 0xff, 0xf5, 0xeb, 0xe8, 0x14, 0x13, 0x6f, 0x00, 0x00, + // 8855 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x6c, 0x1c, 0x59, + 0x76, 0x18, 0xab, 0x1f, 0x64, 0xf7, 0x69, 0x3e, 0x8a, 0x97, 0xaf, 0x66, 0x4b, 0xa2, 0x5a, 0x3d, + 0xda, 0x89, 0xc4, 0x69, 0x51, 0x22, 0x25, 0x71, 0x34, 0xdc, 0x9d, 0x07, 0xd9, 0x6c, 0x52, 0x2d, + 0x91, 0xdd, 0x3d, 0xd5, 0x24, 0x65, 0xed, 0xce, 0x6c, 0xb9, 0xba, 0xeb, 0xb2, 0x59, 0x66, 0x77, + 0x57, 0x4d, 0x55, 0x75, 0xeb, 0x31, 0x2b, 0xef, 0xec, 0x64, 0xbd, 0x71, 0x76, 0xe3, 0xf5, 0x66, + 0x12, 0x3b, 0xb6, 0x93, 0xb5, 0x9d, 0x87, 0x37, 0xce, 0x02, 0x46, 0x82, 0x85, 0x81, 0x04, 0x66, + 0xb0, 0x99, 0xc8, 0x08, 0x10, 0xcc, 0x02, 0xc1, 0xe4, 0x23, 0xc9, 0x20, 0x1f, 0x86, 0x57, 0xf3, + 0x11, 0xc7, 0x01, 0x92, 0x45, 0x3e, 0xf2, 0x00, 0x82, 0x24, 0xb8, 0x8f, 0xaa, 0xae, 0xea, 0x87, + 0x44, 0xcd, 0xcc, 0x0e, 0xd6, 0xc0, 0xcc, 0xc7, 0xb0, 0xeb, 0xdc, 0x73, 0xce, 0x3d, 0xf7, 0xdc, + 0x73, 0xcf, 0xe3, 0xd6, 0xbd, 0x25, 0x98, 0x6b, 0x61, 0x6b, 0x41, 0xd3, 0x2f, 0x5a, 0x95, 0x03, + 0x5c, 0x57, 0x2e, 0x5a, 0x9a, 0x8d, 0x2f, 0xda, 0xf7, 0x0c, 0x6c, 0x2d, 0x18, 0xa6, 0x6e, 0xeb, + 0x08, 0xb1, 0xf6, 0x05, 0xd6, 0xbe, 0x40, 0xda, 0x13, 0x17, 0xaa, 0x9a, 0x7d, 0xd0, 0x2c, 0x2f, + 0x54, 0xf4, 0xfa, 0xc5, 0xaa, 0x5e, 0xd5, 0x2f, 0x52, 0xd4, 0x72, 0x73, 0x9f, 0x3e, 0xd1, 0x07, + 0xfa, 0x8b, 0xb1, 0x48, 0x9c, 0xae, 0xea, 0x7a, 0xb5, 0x86, 0xdb, 0x58, 0xb6, 0x56, 0xc7, 0x96, + 0xad, 0xd4, 0x0d, 0x8e, 0x30, 0xe3, 0x97, 0xa1, 0x81, 0x6d, 0xde, 0x70, 0xc2, 0xdf, 0xa0, 0x1b, + 0xb6, 0xa6, 0x37, 0xb8, 0x64, 0x89, 0x53, 0xfe, 0x46, 0xa3, 0x65, 0xcb, 0x1e, 0xc1, 0x13, 0xb3, + 0xfe, 0x66, 0x6f, 0xd3, 0x49, 0x7f, 0x53, 0x4b, 0xa9, 0x69, 0xaa, 0x62, 0x63, 0xde, 0x9a, 0xec, + 0x68, 0xd5, 0xf0, 0x1d, 0xd9, 0xdf, 0xf3, 0xd9, 0x6e, 0x0c, 0x8b, 0x6a, 0xce, 0x27, 0xc0, 0xe9, + 0x5e, 0x58, 0x1e, 0x84, 0x54, 0x05, 0xc6, 0xd6, 0xf4, 0x86, 0xba, 0x8d, 0xeb, 0x65, 0x6c, 0x5a, + 0x3b, 0xf7, 0x0c, 0x8c, 0x10, 0x84, 0x1a, 0x4a, 0x1d, 0xc7, 0x85, 0xa4, 0x70, 0x2e, 0x2a, 0xd1, + 0xdf, 0xe8, 0x14, 0x40, 0x4d, 0x6b, 0x1c, 0xca, 0x96, 0xad, 0xd8, 0x38, 0x1e, 0x48, 0x0a, 0xe7, + 0x22, 0x52, 0x94, 0x40, 0x4a, 0x04, 0xd0, 0x6e, 0x36, 0x30, 0x56, 0xe3, 0xc1, 0xa4, 0x70, 0x6e, + 0x84, 0x37, 0x13, 0x40, 0xea, 0x35, 0x38, 0x59, 0xd2, 0x6c, 0xbc, 0xa3, 0xd3, 0xff, 0x37, 0x1b, + 0x0d, 0x5c, 0xcb, 0xe8, 0x8d, 0x06, 0xae, 0xd8, 0x5a, 0x4b, 0xb3, 0xef, 0xa1, 0x24, 0xc4, 0x54, + 0x6c, 0xd9, 0x5a, 0x43, 0x21, 0x23, 0x8c, 0x0b, 0xc9, 0xe0, 0xb9, 0xa8, 0xe4, 0x05, 0x11, 0x99, + 0x0c, 0xdd, 0xb4, 0x69, 0xcf, 0x23, 0x12, 0xfd, 0xbd, 0x32, 0xf8, 0xde, 0x91, 0x10, 0x10, 0x85, + 0x94, 0x0a, 0xa1, 0xbc, 0xae, 0xf6, 0x96, 0xfb, 0x34, 0xc4, 0xac, 0x9a, 0x2e, 0x2b, 0xaa, 0x6a, + 0x62, 0xcb, 0xa2, 0xe4, 0x51, 0x09, 0xac, 0x9a, 0xbe, 0xca, 0x20, 0x0c, 0x41, 0x73, 0x11, 0x82, + 0x0e, 0x82, 0xc6, 0x11, 0xdc, 0x5e, 0xea, 0x10, 0xcb, 0xe8, 0xba, 0xa9, 0x12, 0x89, 0xb0, 0x85, + 0x2e, 0x40, 0xa4, 0xa6, 0xd8, 0x9a, 0xdd, 0x54, 0x59, 0x87, 0x81, 0xb5, 0xf1, 0x3f, 0xfa, 0xcf, + 0xef, 0x06, 0x87, 0x01, 0x4e, 0x0d, 0x0c, 0xfc, 0xe1, 0xda, 0x85, 0x81, 0x81, 0x3f, 0x7c, 0x28, + 0xb9, 0x28, 0xe8, 0x22, 0x44, 0x6b, 0x7a, 0xa3, 0xca, 0xf0, 0x03, 0x9d, 0xf8, 0x57, 0x32, 0x17, + 0x06, 0x06, 0xae, 0xfc, 0xb1, 0xd4, 0xc6, 0x49, 0xcd, 0xc1, 0xf4, 0xcd, 0x6b, 0xa5, 0x55, 0x43, + 0x2b, 0x61, 0xb3, 0x85, 0xcd, 0xa2, 0x62, 0x2a, 0x75, 0x6c, 0x63, 0xd3, 0xba, 0x11, 0x8a, 0x08, + 0x62, 0x20, 0xf5, 0xef, 0x05, 0x48, 0xac, 0xe3, 0x7d, 0xa5, 0x59, 0xb3, 0x77, 0x1b, 0x2a, 0x36, + 0x6b, 0xca, 0xbd, 0x3c, 0xb6, 0xef, 0xe8, 0xe6, 0x21, 0x9d, 0xc3, 0x75, 0x40, 0xd4, 0x16, 0x6a, + 0x7a, 0x45, 0xa9, 0xc9, 0x7a, 0xd3, 0xb6, 0x34, 0xde, 0x71, 0x6c, 0x69, 0x72, 0xc1, 0xbf, 0x9c, + 0xb2, 0x75, 0xc3, 0xbe, 0x77, 0x7d, 0x40, 0x12, 0x09, 0xc5, 0x16, 0x21, 0x28, 0x30, 0x7c, 0xb4, + 0x06, 0xe3, 0x1e, 0x2e, 0x5a, 0x83, 0x32, 0x09, 0x3e, 0x96, 0xc9, 0x98, 0xcb, 0x24, 0x47, 0xd1, + 0xd7, 0xce, 0xc1, 0x94, 0x61, 0x6a, 0x2d, 0xc5, 0xc6, 0xb2, 0x52, 0xa9, 0x60, 0xcb, 0x92, 0x2b, + 0x07, 0xba, 0x56, 0xc1, 0x68, 0xec, 0xdd, 0x23, 0x21, 0xf0, 0xfe, 0x91, 0x20, 0x3c, 0x3a, 0x12, + 0x82, 0x4b, 0xe9, 0xcb, 0x7c, 0x60, 0xff, 0x26, 0x04, 0x53, 0xc5, 0x66, 0xb9, 0xa6, 0x59, 0x07, + 0x7b, 0xb9, 0x22, 0x1d, 0xb7, 0x55, 0xc4, 0xe6, 0xea, 0x7d, 0xb4, 0x0a, 0xc0, 0x44, 0x90, 0x5b, + 0x9a, 0xc1, 0x8c, 0x64, 0x2d, 0x45, 0x94, 0x18, 0x7d, 0x47, 0x18, 0x4c, 0x85, 0xcc, 0xc0, 0x5d, + 0x81, 0x3c, 0x85, 0xdf, 0x11, 0x02, 0x62, 0xd0, 0xf9, 0x15, 0x17, 0xa4, 0x28, 0xa3, 0xda, 0xd3, + 0x0c, 0xb4, 0x0d, 0x31, 0xae, 0x0b, 0xca, 0x23, 0x40, 0x79, 0xa4, 0x9f, 0xc4, 0x23, 0x22, 0x78, + 0xb8, 0x01, 0x67, 0x40, 0xd8, 0x6d, 0xc2, 0x48, 0x5b, 0x22, 0xb9, 0xb5, 0x1c, 0x1f, 0xa4, 0x0c, + 0x9f, 0x21, 0xe8, 0xf0, 0x8e, 0x30, 0x94, 0x0a, 0x9b, 0xc1, 0xb7, 0x84, 0xde, 0x52, 0xc5, 0x5c, + 0xa9, 0xf6, 0x96, 0x51, 0x0e, 0x46, 0x3d, 0x72, 0x11, 0x4e, 0x43, 0xc7, 0xe7, 0x34, 0xdc, 0x96, + 0x68, 0x6f, 0x19, 0x2d, 0xc3, 0xb8, 0x97, 0x55, 0x85, 0x2e, 0x09, 0x6a, 0xd6, 0x6b, 0x40, 0x89, + 0xcc, 0x60, 0xfc, 0xad, 0x80, 0x34, 0xd6, 0x26, 0xca, 0xd0, 0x95, 0x72, 0x05, 0x44, 0xcf, 0x58, + 0x18, 0x59, 0xa8, 0x8b, 0x6c, 0xd4, 0x95, 0x9a, 0x51, 0xfd, 0x86, 0x00, 0x43, 0xca, 0x7d, 0x99, + 0x62, 0x87, 0x29, 0xf6, 0x57, 0x09, 0xf6, 0x7d, 0xf3, 0xee, 0x52, 0xeb, 0xcb, 0x5f, 0x5a, 0xbc, + 0x70, 0xf5, 0xf5, 0x37, 0x17, 0x1f, 0x9c, 0xfd, 0xca, 0x97, 0x57, 0xef, 0x37, 0x4d, 0xbc, 0x5a, + 0xb3, 0xb1, 0x49, 0x96, 0x8f, 0x84, 0xab, 0x9a, 0xde, 0x38, 0xfb, 0x95, 0x2f, 0x7f, 0x49, 0xb9, + 0x70, 0xff, 0xf5, 0x37, 0x97, 0x1e, 0x5c, 0x38, 0xf7, 0xf2, 0x4a, 0x55, 0x6f, 0x5d, 0x38, 0xff, + 0x32, 0x81, 0x5c, 0xba, 0xf0, 0xc2, 0xeb, 0x6f, 0x5e, 0x49, 0x2f, 0x5d, 0x7a, 0x70, 0xc1, 0x7d, + 0x5c, 0x7a, 0xe0, 0xa2, 0x5f, 0x49, 0x2f, 0x5e, 0xf5, 0xb4, 0xb4, 0x11, 0x69, 0x5f, 0xd2, 0xa0, + 0x72, 0x3f, 0xaf, 0xd4, 0xb1, 0xbb, 0x70, 0x7f, 0xfd, 0x1c, 0x8c, 0x6e, 0xd6, 0xf4, 0xb2, 0x52, + 0x2b, 0x19, 0xb8, 0x42, 0x57, 0x47, 0x16, 0xa2, 0xae, 0xa7, 0xa4, 0xab, 0x77, 0x74, 0xe9, 0xe4, + 0x42, 0x77, 0x8c, 0x59, 0xa0, 0xee, 0xea, 0x9e, 0x81, 0xb9, 0x0a, 0xde, 0x16, 0x02, 0xc9, 0x01, + 0x29, 0x62, 0x71, 0x28, 0x5a, 0x83, 0x61, 0xca, 0xc6, 0x6a, 0x96, 0x29, 0xa7, 0x30, 0xe5, 0x74, + 0xba, 0x1f, 0xa7, 0x12, 0x43, 0x93, 0x62, 0x56, 0xfb, 0x01, 0x9d, 0x85, 0x21, 0x9f, 0x73, 0xf2, + 0x69, 0xdb, 0x69, 0x42, 0xab, 0x10, 0xab, 0xb4, 0x9d, 0x0f, 0x5f, 0x82, 0x3d, 0x3b, 0xf2, 0xf8, + 0x28, 0xc9, 0x4b, 0x83, 0xae, 0xc3, 0x70, 0x85, 0xf9, 0x5c, 0xac, 0xca, 0x26, 0x8e, 0x57, 0x93, + 0xc1, 0x73, 0xb1, 0xae, 0x61, 0x17, 0xca, 0xbf, 0x80, 0x2b, 0xb6, 0x84, 0xf7, 0xe9, 0xb0, 0x87, + 0xbe, 0xff, 0x20, 0x44, 0xb8, 0x12, 0x4e, 0x9c, 0x54, 0xc2, 0xe8, 0x35, 0x98, 0xf1, 0x72, 0x92, + 0xf7, 0x75, 0x53, 0xae, 0xe8, 0x8d, 0x7d, 0xad, 0x1a, 0x3f, 0x78, 0x1a, 0xa6, 0x93, 0x1e, 0xa6, + 0x1b, 0xba, 0x99, 0xa1, 0x2c, 0xd0, 0x15, 0x08, 0xb5, 0x70, 0x55, 0x89, 0x6b, 0x74, 0x8c, 0xc9, + 0x0e, 0x56, 0xc4, 0x1b, 0x6a, 0x15, 0xdc, 0x76, 0x87, 0x12, 0xc5, 0x46, 0x2f, 0x42, 0x54, 0x31, + 0xb1, 0x25, 0xd7, 0x34, 0xcb, 0x8e, 0xff, 0x02, 0x95, 0xe2, 0xc9, 0xa4, 0x11, 0x42, 0xb2, 0xa5, + 0x59, 0x36, 0x5a, 0x86, 0xb0, 0xa9, 0x1c, 0x2a, 0x66, 0xfc, 0xf0, 0x98, 0xbd, 0x32, 0x74, 0xf4, + 0x3c, 0x84, 0x75, 0x03, 0x9b, 0x4a, 0xfc, 0x97, 0x84, 0xe3, 0x12, 0x52, 0x7c, 0xf4, 0x02, 0x0c, + 0xea, 0x65, 0x5c, 0xd3, 0xee, 0xc6, 0xff, 0xd6, 0x71, 0x29, 0x39, 0x01, 0xba, 0x0c, 0xc1, 0x96, + 0x51, 0x8f, 0xff, 0x83, 0xe3, 0xd2, 0x11, 0x6c, 0x74, 0x05, 0x46, 0x48, 0xe8, 0xd6, 0x2a, 0xb2, + 0xa9, 0x37, 0x89, 0x09, 0xd5, 0xa8, 0x7f, 0x19, 0xf3, 0xfa, 0x97, 0xff, 0x25, 0x08, 0xd2, 0x30, + 0xc3, 0x92, 0x28, 0x12, 0x7a, 0x1d, 0xc6, 0x0e, 0xaf, 0x59, 0xb2, 0x62, 0x68, 0xb2, 0x45, 0xc3, + 0x90, 0x15, 0xaf, 0x53, 0xdd, 0x5e, 0xed, 0x65, 0x7a, 0xfe, 0x45, 0xb6, 0x70, 0xf3, 0x9a, 0xe5, + 0x86, 0x2f, 0x2b, 0xdb, 0xb0, 0xcd, 0x7b, 0xd2, 0xc8, 0xa1, 0x17, 0x86, 0x9e, 0x85, 0xa8, 0x41, + 0x3c, 0x7d, 0x45, 0xd6, 0x8c, 0x78, 0x83, 0x5a, 0x7f, 0x94, 0x08, 0x14, 0x32, 0x03, 0x86, 0x20, + 0x45, 0x58, 0x5b, 0xce, 0x40, 0xe7, 0x01, 0x9c, 0x10, 0xa2, 0x19, 0xf1, 0x6f, 0x0a, 0x9d, 0x98, + 0x51, 0xde, 0x9a, 0x33, 0xd0, 0xf3, 0x80, 0x34, 0xc3, 0xc2, 0x15, 0xd9, 0xb2, 0x6a, 0xd4, 0x91, + 0xed, 0xbf, 0xa1, 0x36, 0xe2, 0xdf, 0xf2, 0x93, 0x1c, 0x08, 0xd2, 0x18, 0xc5, 0x2a, 0x59, 0xb5, + 0x3d, 0xcd, 0xd8, 0x78, 0x43, 0x6d, 0xa0, 0x73, 0x00, 0x95, 0x5a, 0xd3, 0xb2, 0xb1, 0x49, 0xfa, + 0xd0, 0xbb, 0xba, 0xe0, 0x8d, 0x39, 0x03, 0x6d, 0xc0, 0x28, 0x35, 0xb5, 0x96, 0x6d, 0x1a, 0xcc, + 0xde, 0x8c, 0x63, 0xda, 0xdb, 0x30, 0xa1, 0xdb, 0xb3, 0x4d, 0x83, 0xda, 0xdc, 0x0a, 0xcc, 0xb6, + 0x74, 0xe2, 0x11, 0x4d, 0x45, 0xb6, 0xf4, 0x7d, 0xfb, 0x8e, 0x62, 0x62, 0x99, 0xe8, 0x85, 0xa4, + 0x40, 0x6f, 0xd0, 0x3c, 0x64, 0xc6, 0x41, 0x28, 0xf1, 0xf6, 0x3d, 0xd6, 0x4c, 0xa4, 0xf5, 0x84, + 0x42, 0xb3, 0x4b, 0xda, 0x76, 0xc4, 0x9b, 0xf7, 0x47, 0xbc, 0xbb, 0x9d, 0xa8, 0xde, 0x70, 0xf6, + 0xc5, 0xce, 0x70, 0xf6, 0x77, 0x99, 0xde, 0xae, 0xfe, 0xf9, 0x83, 0x73, 0x2a, 0xae, 0xeb, 0x8b, + 0x69, 0x1b, 0x5b, 0x76, 0xba, 0x62, 0xda, 0x69, 0xcb, 0x56, 0xaa, 0x5a, 0xa3, 0x9a, 0x26, 0x82, + 0x97, 0x95, 0xc6, 0xa1, 0x5c, 0xc7, 0x95, 0xb4, 0x61, 0xea, 0x2a, 0xf7, 0x5e, 0x6f, 0x09, 0x1d, + 0x11, 0xee, 0xb5, 0xae, 0x08, 0xf7, 0xf7, 0x3e, 0x16, 0x73, 0x7f, 0xd0, 0xb3, 0x60, 0x84, 0x70, + 0xb5, 0x70, 0x8d, 0xe4, 0x94, 0x7a, 0x23, 0xfe, 0xf7, 0x99, 0x57, 0x4f, 0xf6, 0xb2, 0xd3, 0xbd, + 0x5c, 0xb1, 0xe4, 0x20, 0xae, 0x3d, 0xf7, 0x14, 0xdd, 0x4b, 0xc3, 0x2d, 0xcd, 0x70, 0x49, 0xd1, + 0x01, 0x8c, 0x93, 0x4e, 0x0d, 0x9a, 0xa2, 0xc8, 0x06, 0x36, 0x65, 0xe5, 0x7e, 0xfc, 0x3b, 0x02, + 0x35, 0x86, 0xf3, 0xbd, 0x3a, 0xee, 0x99, 0xd6, 0xf0, 0x3c, 0xf0, 0x1d, 0x21, 0x3a, 0x3f, 0x74, + 0x29, 0xbd, 0x98, 0x5e, 0x4a, 0x5f, 0x96, 0x46, 0x5b, 0x9a, 0xe1, 0xcd, 0x7c, 0x5e, 0x62, 0xc3, + 0x6b, 0x99, 0xa6, 0x21, 0xd7, 0x75, 0x15, 0xc7, 0xef, 0xd1, 0xd1, 0x25, 0x3a, 0x3a, 0x21, 0xba, + 0x30, 0x4d, 0x63, 0x87, 0x06, 0x99, 0x16, 0x7b, 0xd8, 0x26, 0x99, 0xb1, 0x06, 0x71, 0x95, 0xe5, + 0x8a, 0x72, 0x93, 0x27, 0x8b, 0x72, 0x83, 0x65, 0x8b, 0xf1, 0x5f, 0x61, 0x7e, 0x64, 0xa1, 0x97, + 0xc0, 0xfd, 0x13, 0x4c, 0x69, 0x5a, 0xed, 0xd9, 0x86, 0x34, 0x98, 0x65, 0xa1, 0x55, 0x97, 0xe9, + 0x5f, 0xde, 0x0d, 0x0b, 0xb5, 0xf7, 0xa9, 0xd8, 0x67, 0xba, 0xc4, 0x36, 0xed, 0xa6, 0x52, 0xf3, + 0x70, 0x5f, 0x1b, 0x26, 0x3a, 0x19, 0x7a, 0x5b, 0x08, 0x25, 0x02, 0x03, 0x82, 0x34, 0x65, 0xb9, + 0xc5, 0x83, 0x37, 0xc7, 0x7d, 0x11, 0xa6, 0x7d, 0x5d, 0xd9, 0xb4, 0xb0, 0x20, 0xcb, 0xd7, 0xea, + 0xb4, 0x72, 0x64, 0x75, 0x94, 0x1f, 0x39, 0x03, 0x1d, 0xf4, 0x5a, 0x7f, 0x7a, 0x0b, 0x9b, 0x24, + 0xc9, 0xb5, 0xa9, 0xa4, 0xe9, 0xbe, 0xa1, 0x9c, 0xe3, 0x17, 0x5a, 0xd8, 0x24, 0xf8, 0x54, 0x25, + 0x5d, 0xab, 0xb5, 0xc0, 0x98, 0xa1, 0x0b, 0x30, 0x52, 0xae, 0x1a, 0xcc, 0xf3, 0x9a, 0xb2, 0xa6, + 0xc6, 0x9b, 0x9d, 0xf2, 0xc5, 0xca, 0x55, 0x83, 0xfa, 0x5c, 0x33, 0xa7, 0xa2, 0xcb, 0x20, 0x12, + 0x74, 0x03, 0x13, 0x8b, 0xe2, 0xb9, 0x41, 0xab, 0x93, 0x62, 0xb4, 0x5c, 0x35, 0x8a, 0x18, 0x9b, + 0x4e, 0x1d, 0x73, 0x08, 0x13, 0x36, 0xae, 0x1b, 0x35, 0xe2, 0x24, 0x0d, 0xd7, 0xe5, 0xc4, 0xef, + 0x50, 0x6b, 0x5c, 0x39, 0x86, 0xbb, 0xde, 0xe1, 0xd4, 0x6d, 0x7f, 0xc5, 0x7c, 0x36, 0xb2, 0xbb, + 0x1a, 0x48, 0x8e, 0xc9, 0x1d, 0x05, 0x49, 0xfc, 0x58, 0x68, 0x88, 0xbf, 0xd9, 0x29, 0x22, 0xcf, + 0x27, 0xf3, 0x2e, 0x0a, 0xba, 0x06, 0xc8, 0x71, 0x02, 0x1e, 0xc2, 0xaf, 0x74, 0x12, 0x3a, 0x09, + 0xac, 0x87, 0xb2, 0x0c, 0x93, 0x5d, 0x3d, 0x12, 0x27, 0xf2, 0x7b, 0xcc, 0x89, 0x5c, 0xfc, 0xf3, + 0x07, 0xa9, 0xa7, 0x72, 0x1f, 0xa8, 0x53, 0xb6, 0xbd, 0x65, 0xa4, 0xc2, 0x54, 0xb7, 0x74, 0xa4, + 0x93, 0xef, 0x7d, 0xc4, 0x4e, 0x26, 0xba, 0xc6, 0xb1, 0xb7, 0x8c, 0xd6, 0x00, 0xa9, 0xd8, 0xd2, + 0x4c, 0xac, 0xca, 0x86, 0xae, 0xd7, 0xe4, 0x8a, 0xde, 0x6c, 0xd8, 0xf1, 0x07, 0x49, 0xe1, 0x5c, + 0x78, 0x6d, 0x92, 0x10, 0x8f, 0x25, 0x46, 0xe2, 0xaf, 0x9c, 0xfb, 0x7f, 0xce, 0x7f, 0x82, 0x24, + 0x72, 0xfc, 0xa2, 0xae, 0xd7, 0x32, 0x04, 0x1b, 0xdd, 0x81, 0x18, 0x37, 0x76, 0xba, 0xac, 0x7e, + 0x91, 0x1a, 0xeb, 0x33, 0x9d, 0xf1, 0xa7, 0xc3, 0xe4, 0xe9, 0xc2, 0x5a, 0xfc, 0x8f, 0x47, 0x42, + 0xb2, 0x94, 0xdb, 0xc9, 0xca, 0x3b, 0x05, 0x99, 0xfd, 0xdd, 0xcd, 0xe7, 0xb3, 0x5b, 0x72, 0xae, + 0x58, 0xca, 0x66, 0xe4, 0x82, 0x24, 0x97, 0x4a, 0x5b, 0x44, 0x8a, 0xc8, 0xdb, 0x42, 0x38, 0x11, + 0x1c, 0x10, 0x02, 0x12, 0xd8, 0x2e, 0x39, 0xfa, 0x02, 0x00, 0xcb, 0x78, 0xe9, 0x36, 0xc0, 0x57, + 0x69, 0xbf, 0xa7, 0xfa, 0x2e, 0x12, 0x82, 0x24, 0xd1, 0x4c, 0x9b, 0xed, 0x12, 0xbc, 0x00, 0x71, + 0x9a, 0xfd, 0xd8, 0x5a, 0xa3, 0x2a, 0x5b, 0xf7, 0x2c, 0x1b, 0xd7, 0xdd, 0x80, 0xf7, 0x16, 0xab, + 0xda, 0xa7, 0x5d, 0x84, 0x12, 0x6d, 0x77, 0x02, 0xde, 0x4b, 0x10, 0xad, 0x2b, 0x26, 0xcf, 0xef, + 0xbe, 0x26, 0x1c, 0x37, 0xc1, 0x23, 0x34, 0x34, 0xd8, 0xde, 0x84, 0x51, 0x4a, 0xdf, 0x0e, 0xda, + 0x6f, 0x1f, 0x93, 0xc9, 0x1a, 0x2d, 0xb1, 0x08, 0xb1, 0x1b, 0xb9, 0xd7, 0x20, 0x66, 0x1c, 0xe8, + 0x65, 0x9d, 0x8b, 0xf3, 0xdd, 0xe3, 0x8a, 0x03, 0x8c, 0x8a, 0xf2, 0xb8, 0x06, 0x50, 0x57, 0xb4, + 0x86, 0xdc, 0xd0, 0x55, 0x6c, 0xc5, 0x7f, 0x9b, 0xb1, 0x88, 0xf7, 0x52, 0x65, 0x5e, 0x57, 0xb1, + 0x14, 0x25, 0xc8, 0xe4, 0x97, 0x85, 0xbe, 0x00, 0x13, 0x7c, 0xf2, 0x55, 0xac, 0xa8, 0xb2, 0xad, + 0xd5, 0xb1, 0xde, 0xb4, 0xe3, 0x7f, 0x99, 0x28, 0x70, 0x64, 0x2d, 0x46, 0x26, 0x6f, 0x70, 0x3e, + 0x14, 0xff, 0xdd, 0xff, 0x0b, 0xd2, 0x38, 0x43, 0x5c, 0xc7, 0x8a, 0xba, 0xc3, 0xd0, 0xd0, 0x0c, + 0x0c, 0x9a, 0xb4, 0xfa, 0x8a, 0x7f, 0x9d, 0x69, 0x9c, 0x3f, 0xa2, 0x55, 0x18, 0xae, 0x60, 0xe6, + 0x48, 0x69, 0x88, 0xf9, 0x06, 0x8b, 0xa0, 0x73, 0x3d, 0x8b, 0x0c, 0x4c, 0xe6, 0x97, 0x84, 0x16, + 0x09, 0x2a, 0xee, 0x6f, 0x74, 0x0d, 0x26, 0x1b, 0xba, 0x6c, 0xe3, 0x86, 0xd2, 0xb0, 0x65, 0xad, + 0x21, 0xb7, 0x48, 0xf2, 0xd8, 0xb0, 0xe2, 0x7f, 0x85, 0xb0, 0x8a, 0xac, 0x0d, 0x7d, 0xf0, 0x40, + 0xf8, 0xb3, 0x23, 0x41, 0x90, 0xc4, 0x86, 0xbe, 0x43, 0x91, 0x72, 0x8d, 0xbd, 0xc3, 0x6b, 0x56, + 0xde, 0x42, 0xd7, 0x20, 0xce, 0xf6, 0x18, 0x68, 0xba, 0xc9, 0xb6, 0x09, 0x70, 0x43, 0x29, 0xd7, + 0xb0, 0x1a, 0xff, 0x65, 0x4a, 0x2d, 0x4d, 0x51, 0x04, 0x92, 0x54, 0xd2, 0xe6, 0x2c, 0x6b, 0x45, + 0x35, 0x40, 0x84, 0xc6, 0xc9, 0xdd, 0x48, 0xaa, 0x5a, 0xbd, 0x13, 0xff, 0xab, 0xc2, 0x31, 0x0a, + 0x91, 0xe4, 0xf7, 0x1f, 0x0c, 0xb7, 0x58, 0xec, 0x91, 0x0f, 0x74, 0xcb, 0xe6, 0xe2, 0xb9, 0x35, + 0xb6, 0x20, 0x91, 0xec, 0x37, 0xc3, 0x38, 0xaf, 0x1a, 0xda, 0xe6, 0x1d, 0xb4, 0x00, 0xa3, 0x4d, + 0x0b, 0xcb, 0x9e, 0x6c, 0xf4, 0xaf, 0x75, 0x8c, 0x6d, 0xb8, 0x69, 0xe1, 0xa2, 0x9b, 0x8e, 0x3e, + 0x07, 0xc3, 0xae, 0x3a, 0x54, 0x7c, 0x37, 0xfe, 0x6d, 0x36, 0x49, 0x2e, 0x76, 0xcc, 0xe6, 0x7a, + 0x50, 0xf1, 0x5d, 0x82, 0x6c, 0x68, 0x87, 0x4d, 0x77, 0xe0, 0x7f, 0xbd, 0x83, 0x75, 0x8c, 0xb4, + 0x3a, 0xe3, 0xbe, 0x08, 0xa3, 0xdc, 0x06, 0x1d, 0xf4, 0x77, 0x3a, 0xd0, 0x47, 0x58, 0xbb, 0x43, + 0xf0, 0x1c, 0x0c, 0x5b, 0x66, 0x6b, 0xd9, 0x45, 0xff, 0x1b, 0x9d, 0xdc, 0x49, 0xab, 0x83, 0x9c, + 0x85, 0x08, 0x29, 0xab, 0xe4, 0xca, 0x7e, 0x35, 0xfe, 0x37, 0x8f, 0x59, 0x68, 0xb4, 0x59, 0x0d, + 0x11, 0xda, 0xcc, 0x7e, 0x15, 0xdd, 0x82, 0x11, 0x13, 0xcb, 0x75, 0x6c, 0x1d, 0xc8, 0x55, 0x53, + 0x6f, 0x1a, 0xf1, 0x5f, 0x63, 0xf3, 0xd2, 0xb3, 0x72, 0x95, 0xf0, 0x36, 0xb6, 0x0e, 0x36, 0x09, + 0xde, 0xda, 0x78, 0xe7, 0x5c, 0x04, 0xa4, 0x98, 0xd9, 0x6e, 0x47, 0x36, 0x8c, 0x13, 0x63, 0x65, + 0x22, 0xc8, 0x35, 0xa5, 0x8c, 0x6b, 0x56, 0xfc, 0xd7, 0x19, 0xf3, 0xe7, 0x8f, 0x11, 0xec, 0x32, + 0x98, 0x8b, 0xbf, 0x45, 0x49, 0x69, 0xa4, 0x5b, 0x1b, 0xfd, 0xe0, 0x81, 0xf0, 0xe8, 0x4f, 0xff, + 0x55, 0x70, 0xf0, 0x9b, 0xff, 0x5c, 0x08, 0x44, 0x06, 0xa4, 0xb1, 0x8a, 0x1f, 0x0b, 0xcd, 0x01, + 0xb4, 0xea, 0xae, 0x02, 0x7f, 0x83, 0xd9, 0x65, 0xb4, 0x55, 0xf7, 0xcc, 0xc9, 0x01, 0xae, 0xd5, + 0x94, 0xf6, 0x9c, 0xfc, 0x66, 0xe7, 0x9c, 0xb0, 0x76, 0x87, 0xe0, 0x9b, 0x02, 0x9c, 0xf6, 0xa5, + 0x30, 0xac, 0x76, 0xa9, 0x78, 0xf6, 0x46, 0xe3, 0xbf, 0xc5, 0x46, 0x75, 0xa9, 0xef, 0xfe, 0x44, + 0x9f, 0x4d, 0xd5, 0x6e, 0x1d, 0x06, 0xa5, 0x13, 0xed, 0x34, 0x28, 0x47, 0x7a, 0xf2, 0x6d, 0xc2, + 0x6e, 0xc2, 0x09, 0xb6, 0x06, 0x2b, 0x7a, 0xc3, 0x36, 0xf5, 0x9a, 0x6c, 0xd4, 0x94, 0x06, 0x76, + 0x87, 0xf2, 0xb7, 0x3b, 0x86, 0xc2, 0x16, 0x6c, 0x86, 0xe1, 0x16, 0x09, 0xaa, 0x33, 0xaa, 0xcf, + 0xc3, 0x64, 0xbb, 0x06, 0xa3, 0xfe, 0x8d, 0x55, 0x61, 0x7f, 0x87, 0x6d, 0xd9, 0x79, 0xaa, 0xb0, + 0x71, 0xa7, 0x0a, 0xa3, 0x9e, 0x8d, 0xd6, 0x61, 0xcf, 0xc2, 0x68, 0xbd, 0x59, 0xb3, 0x9b, 0x6d, + 0x1d, 0xfe, 0x0e, 0xd3, 0xf3, 0x08, 0x03, 0x3b, 0x9d, 0x2c, 0xc3, 0x4c, 0x4d, 0x69, 0x36, 0x2a, + 0x07, 0xb2, 0x76, 0x88, 0x89, 0xb3, 0xa1, 0x21, 0xdb, 0x50, 0x2a, 0x38, 0xfe, 0xbb, 0x8c, 0x60, + 0x92, 0xb5, 0xe7, 0x0e, 0x71, 0xae, 0x91, 0x77, 0x1a, 0xd1, 0xcf, 0xc3, 0xa4, 0xb3, 0x7a, 0x7d, + 0x6a, 0xfe, 0x87, 0xcc, 0xca, 0x3b, 0x33, 0x3e, 0xba, 0x61, 0xbe, 0xc0, 0x17, 0xb4, 0x57, 0x5d, + 0x34, 0xe3, 0x9b, 0x30, 0xba, 0x1b, 0xd0, 0x0a, 0x4c, 0x74, 0xa6, 0x6f, 0x24, 0x89, 0xf8, 0x7d, + 0xc1, 0xb7, 0xbd, 0x43, 0xf2, 0x03, 0xd1, 0x9f, 0xc3, 0xed, 0x2d, 0xa3, 0x7d, 0x88, 0x1f, 0x36, + 0xcb, 0xd8, 0x6c, 0x60, 0x1b, 0x5b, 0x72, 0xd3, 0xa8, 0x9a, 0x8a, 0x8a, 0x65, 0xd5, 0x54, 0xb4, + 0x46, 0xfc, 0x1f, 0x31, 0x09, 0x9f, 0xeb, 0x29, 0xe1, 0x4d, 0x97, 0x6a, 0x97, 0x11, 0xad, 0x13, + 0x1a, 0x69, 0xfa, 0xb0, 0x27, 0x3c, 0x51, 0x03, 0xd4, 0x5d, 0x9e, 0x23, 0x11, 0x82, 0x87, 0xf8, + 0x1e, 0xdf, 0x3f, 0x27, 0x3f, 0xd1, 0x2b, 0x10, 0x6e, 0x29, 0xb5, 0xa6, 0xb3, 0x73, 0x3c, 0xdf, + 0xcb, 0x08, 0x7b, 0x6f, 0x53, 0x4b, 0x8c, 0x70, 0x25, 0x70, 0x4d, 0x48, 0x64, 0x61, 0xa6, 0x4f, + 0x76, 0xd9, 0xa3, 0xcb, 0x49, 0x6f, 0x97, 0x51, 0x2f, 0x9b, 0x35, 0x98, 0xec, 0xb5, 0x6e, 0x9f, + 0x86, 0xc7, 0x8d, 0x50, 0x04, 0x8b, 0xfb, 0x37, 0x42, 0x91, 0x7d, 0xb1, 0x9a, 0x3a, 0x1a, 0x86, + 0xd1, 0x8c, 0x89, 0x15, 0x1b, 0xbb, 0x1b, 0x83, 0x2f, 0x3c, 0xe5, 0xc6, 0xa0, 0x67, 0x33, 0x30, + 0xde, 0xb1, 0x91, 0xf7, 0x89, 0x6e, 0xde, 0x1d, 0xbf, 0xde, 0xbf, 0xd8, 0xa7, 0x86, 0x87, 0x7e, + 0x85, 0xf9, 0xd3, 0x6c, 0x10, 0x2c, 0xf6, 0x2b, 0xe2, 0xa1, 0x6f, 0x65, 0xbe, 0xf1, 0x51, 0x2b, + 0xf3, 0x8e, 0x62, 0xfb, 0xe3, 0x96, 0xc0, 0x5f, 0xfa, 0x24, 0xea, 0xd2, 0xcf, 0x2a, 0xd1, 0x63, + 0x54, 0xa2, 0x1f, 0xc7, 0xff, 0x7d, 0xfa, 0x85, 0xe5, 0x8b, 0x8f, 0x2f, 0x2c, 0xe1, 0x09, 0x35, + 0xe3, 0xcb, 0x4f, 0xa8, 0x19, 0xe1, 0x49, 0xe5, 0x60, 0xba, 0x7f, 0x39, 0xd8, 0xa3, 0xf0, 0x5b, + 0xff, 0xa8, 0x85, 0x9f, 0xaf, 0x8a, 0xbb, 0xf6, 0x98, 0x3a, 0xec, 0xab, 0x8f, 0x2d, 0xc3, 0x2e, + 0xf6, 0xae, 0x3d, 0xbe, 0x46, 0xd3, 0xda, 0x4f, 0xbb, 0xdc, 0xf8, 0xf4, 0x76, 0xb5, 0x56, 0xc6, + 0xdf, 0x7b, 0xa9, 0xe3, 0x1d, 0x52, 0xea, 0x9f, 0x0d, 0xc3, 0x98, 0x84, 0x8d, 0x9a, 0x52, 0x69, + 0x87, 0x8f, 0x9f, 0x6a, 0x0c, 0x78, 0xec, 0x7e, 0x71, 0xe8, 0x93, 0xda, 0x2f, 0xfe, 0x2c, 0x7e, + 0x7c, 0x16, 0x3f, 0x3e, 0x8b, 0x1f, 0x9f, 0xc5, 0x8f, 0x9f, 0xf5, 0xf8, 0xf1, 0x29, 0x3a, 0xff, + 0x5c, 0x97, 0xf3, 0xff, 0xef, 0x2f, 0x5d, 0xbd, 0x92, 0x5e, 0x5c, 0x7a, 0x3e, 0xbd, 0x94, 0xbe, + 0x9c, 0x5e, 0x5c, 0xba, 0x9a, 0x5e, 0x5c, 0x24, 0xcf, 0x97, 0xd2, 0x8b, 0x4b, 0x8b, 0xe9, 0xc5, + 0xc5, 0xe7, 0xd3, 0x8b, 0x8b, 0xd7, 0xd2, 0x8b, 0x4b, 0xa4, 0x8d, 0xc0, 0x97, 0xd2, 0x8b, 0x4b, + 0xcb, 0xe9, 0xc5, 0xc5, 0xab, 0xfc, 0x88, 0xcb, 0xbb, 0x93, 0x10, 0xdb, 0xc4, 0xf6, 0xcf, 0x7c, + 0xd5, 0xf1, 0x71, 0x22, 0xce, 0x27, 0x71, 0x36, 0xe2, 0x2f, 0xca, 0x91, 0x85, 0xcf, 0xa2, 0xeb, + 0xee, 0x27, 0xf2, 0x2a, 0xf4, 0x13, 0x7f, 0xef, 0xf9, 0x59, 0xd0, 0xfe, 0x2c, 0x68, 0x7f, 0x16, + 0xb4, 0x3f, 0x6e, 0xd0, 0x7e, 0xd1, 0xf7, 0xd2, 0xef, 0x2d, 0xe1, 0x29, 0xdf, 0xfa, 0xfd, 0x4c, + 0xd5, 0x8c, 0x1f, 0xfd, 0x45, 0xd3, 0xa7, 0x78, 0x86, 0xc2, 0x15, 0x92, 0x0b, 0x48, 0x64, 0x75, + 0x84, 0xfc, 0xb6, 0x57, 0x48, 0x26, 0xe1, 0xcd, 0x6b, 0xae, 0x90, 0x2b, 0x30, 0x5b, 0xa5, 0x99, + 0x4a, 0x2f, 0xd2, 0x5f, 0x65, 0xa4, 0xd3, 0x0c, 0xa3, 0x8b, 0xf6, 0x49, 0x6f, 0x37, 0xee, 0x3c, + 0xf9, 0x5d, 0xc5, 0x6f, 0x7e, 0xc4, 0x77, 0x15, 0x8f, 0x7f, 0x31, 0xf1, 0xb1, 0xde, 0x27, 0x7c, + 0xf4, 0xf7, 0xac, 0xc7, 0x7d, 0x13, 0xf1, 0x53, 0x7f, 0xa3, 0xd0, 0x6b, 0xf7, 0xe1, 0x1f, 0x87, + 0x60, 0x64, 0x0f, 0x9b, 0x64, 0x85, 0x35, 0xd9, 0xa9, 0xfd, 0x79, 0x18, 0x27, 0x5e, 0x48, 0x6b, + 0x58, 0xb6, 0xd2, 0xa8, 0x30, 0xcf, 0xc4, 0xf7, 0xc4, 0xc7, 0x5a, 0xd8, 0xcc, 0x71, 0x38, 0xf1, + 0x43, 0x28, 0x07, 0x31, 0x7a, 0x84, 0xcd, 0xa2, 0xe4, 0xf1, 0x20, 0x55, 0xca, 0xb9, 0x5e, 0x4a, + 0x59, 0x35, 0xb1, 0xe5, 0xc8, 0xa2, 0x37, 0x58, 0x77, 0x12, 0x10, 0x62, 0xf6, 0x9b, 0x38, 0x27, + 0xad, 0x61, 0xef, 0x3b, 0xac, 0x42, 0x94, 0xd5, 0x33, 0xbd, 0x58, 0xe5, 0x1a, 0x36, 0x36, 0xf7, + 0x95, 0x0a, 0x76, 0xb8, 0x10, 0x3a, 0xce, 0x45, 0x85, 0x38, 0x4b, 0xc7, 0x9a, 0xc4, 0x27, 0x72, + 0x77, 0xc1, 0x59, 0x86, 0x29, 0xcb, 0x9e, 0xaf, 0x1e, 0xfc, 0x96, 0xe4, 0xca, 0x37, 0xdd, 0xe6, + 0xc5, 0x30, 0x78, 0x2f, 0x3f, 0xc7, 0x0f, 0xc5, 0xfb, 0xf9, 0x0f, 0x3e, 0x35, 0x7f, 0x7a, 0x50, + 0xde, 0xc7, 0xb9, 0x0a, 0x93, 0x66, 0xb3, 0xd1, 0xa0, 0xae, 0x95, 0x38, 0x3d, 0x87, 0x37, 0x50, + 0x13, 0xe8, 0x79, 0x5a, 0x72, 0xaf, 0x3d, 0x27, 0x12, 0x23, 0xa5, 0xee, 0xb2, 0x3d, 0xa3, 0x12, + 0x32, 0xbb, 0xe0, 0x2b, 0xc9, 0x87, 0x47, 0xc2, 0x49, 0x48, 0x00, 0xec, 0x65, 0xa5, 0x24, 0xef, + 0x7c, 0x78, 0x31, 0x7d, 0x39, 0x7d, 0x25, 0x7d, 0x35, 0xbd, 0x9c, 0x5e, 0xbc, 0x74, 0x23, 0x14, + 0x19, 0x12, 0x23, 0x37, 0x42, 0x91, 0x88, 0x18, 0xbd, 0x11, 0x8a, 0x04, 0xc4, 0xe0, 0x8d, 0x50, + 0x24, 0x2a, 0x42, 0xea, 0x8f, 0x04, 0x98, 0xd8, 0xc3, 0xe6, 0xb6, 0x62, 0xd9, 0x3e, 0xbb, 0x99, + 0x85, 0x08, 0xb1, 0x1b, 0x8f, 0xb9, 0x0c, 0xb5, 0xb0, 0x49, 0xcd, 0x64, 0x06, 0xc8, 0x4f, 0x79, + 0x37, 0xb7, 0xce, 0x8b, 0x8b, 0xc1, 0x16, 0x36, 0x77, 0x73, 0xeb, 0x68, 0x1b, 0x26, 0x6d, 0x53, + 0x69, 0x58, 0x1a, 0x51, 0x8a, 0xec, 0xde, 0xa4, 0xe1, 0x45, 0x46, 0x62, 0x81, 0xdd, 0xb5, 0x59, + 0x70, 0xee, 0xda, 0x2c, 0xec, 0x38, 0x18, 0xd2, 0x44, 0x9b, 0xce, 0x05, 0xba, 0x83, 0x1a, 0x27, + 0x83, 0x62, 0x02, 0x3a, 0x63, 0x0b, 0xd3, 0x03, 0x71, 0xa9, 0x5f, 0x12, 0x60, 0xb2, 0x97, 0x29, + 0x22, 0x11, 0x82, 0x4d, 0xb3, 0xe6, 0xbc, 0xfb, 0x69, 0x9a, 0x35, 0x74, 0x19, 0xc2, 0xed, 0x4b, + 0x2a, 0x7d, 0xe2, 0xd4, 0xde, 0x8e, 0x54, 0x64, 0x71, 0x8a, 0xe1, 0xae, 0x3c, 0xfb, 0xde, 0x91, + 0x90, 0x82, 0x61, 0x08, 0xee, 0x4a, 0x5b, 0x89, 0x30, 0xe5, 0x09, 0x08, 0xc2, 0x14, 0x27, 0x11, + 0xe5, 0x1c, 0x93, 0x42, 0xea, 0xbf, 0x0d, 0xc2, 0x58, 0x87, 0x1d, 0xa3, 0xe7, 0x20, 0x40, 0xaf, + 0x23, 0x90, 0xa1, 0x9f, 0xe8, 0xe8, 0x2d, 0x67, 0x94, 0x9a, 0xe5, 0x06, 0xb6, 0xe9, 0x7c, 0x06, + 0x34, 0x83, 0xc8, 0x5b, 0x57, 0x2a, 0x5c, 0x9d, 0xe4, 0x27, 0x5a, 0x87, 0x61, 0x5f, 0x5a, 0x1a, + 0x3c, 0x6e, 0x5a, 0x1a, 0x6b, 0x78, 0x92, 0x51, 0xe7, 0xee, 0x4b, 0xc8, 0x73, 0xf7, 0xe5, 0x1a, + 0x0c, 0x69, 0x3c, 0x6f, 0x7e, 0x4c, 0xf5, 0xc5, 0xf3, 0x30, 0x1a, 0x29, 0x07, 0x35, 0x96, 0x37, + 0x9f, 0x86, 0x98, 0x7a, 0x50, 0x31, 0xf8, 0xa1, 0xdf, 0xf8, 0x20, 0x75, 0x7b, 0x40, 0x40, 0xec, + 0x35, 0x1f, 0x3a, 0xd3, 0x16, 0x9a, 0x76, 0x1b, 0xa1, 0xdd, 0x3a, 0x12, 0xe5, 0xbb, 0x6f, 0x0c, + 0x45, 0x3b, 0x6f, 0x0c, 0xad, 0xc1, 0xb0, 0x42, 0xfc, 0x9b, 0x93, 0x56, 0xc0, 0x63, 0x24, 0xa4, + 0x78, 0x6c, 0xbe, 0x62, 0x4a, 0xfb, 0x81, 0xf0, 0xa0, 0x5d, 0xbc, 0xd1, 0x54, 0x6a, 0xc4, 0xe3, + 0xc6, 0xfa, 0xf3, 0xd8, 0xd2, 0x1a, 0x87, 0xaf, 0x32, 0x34, 0x29, 0x56, 0x6b, 0x3f, 0x90, 0xda, + 0x9b, 0xf2, 0xa0, 0xba, 0x1f, 0xee, 0x5f, 0x7b, 0x13, 0x06, 0xac, 0xf6, 0xae, 0xf1, 0x5f, 0x68, + 0x03, 0x86, 0xcb, 0x7a, 0x43, 0x95, 0xeb, 0xec, 0xee, 0x54, 0x7c, 0xa4, 0xbf, 0xef, 0xeb, 0xb8, + 0x62, 0x25, 0xc5, 0xca, 0x6d, 0x00, 0xba, 0x08, 0x21, 0xcd, 0x68, 0x2d, 0xc7, 0x47, 0x9f, 0x6c, + 0x42, 0x14, 0x71, 0xe5, 0x43, 0xe1, 0xbd, 0x23, 0xe1, 0x4f, 0x04, 0xb8, 0x00, 0xd1, 0x5c, 0x31, + 0xc9, 0x9a, 0x97, 0x92, 0x30, 0xaa, 0x19, 0x0b, 0x9a, 0xd1, 0xba, 0xb2, 0x60, 0x98, 0x78, 0x5f, + 0xbb, 0xeb, 0x3c, 0x2f, 0x3b, 0xcf, 0xe7, 0x60, 0x92, 0x9b, 0x51, 0x92, 0xdb, 0x51, 0x92, 0x30, + 0x4d, 0x88, 0x7e, 0x0b, 0x4c, 0x0a, 0x30, 0x0a, 0x21, 0x32, 0x87, 0x89, 0x41, 0x66, 0x55, 0x30, + 0x0d, 0x43, 0xb9, 0x62, 0x92, 0x98, 0x46, 0x22, 0xe6, 0x1a, 0x55, 0x52, 0x80, 0x67, 0xbb, 0x39, + 0x52, 0xba, 0x51, 0xbf, 0x79, 0xc0, 0x65, 0x88, 0xe5, 0x8a, 0x7b, 0xcb, 0x49, 0x8b, 0x89, 0x7a, + 0x16, 0x44, 0x2a, 0x97, 0x57, 0x58, 0x17, 0xe2, 0x88, 0xcb, 0x1c, 0x59, 0xea, 0x4f, 0xc2, 0x30, + 0xdd, 0xdb, 0x0d, 0xf7, 0x58, 0xfb, 0x57, 0xfd, 0x6b, 0xff, 0x74, 0x7f, 0x9f, 0xee, 0x5d, 0xfd, + 0x68, 0x09, 0x42, 0xa6, 0x5e, 0x73, 0x96, 0xde, 0x5c, 0x7f, 0x2a, 0x49, 0xaf, 0x61, 0x89, 0xe2, + 0xa2, 0xb3, 0x30, 0x62, 0xe2, 0xba, 0x6e, 0x63, 0xbe, 0x7e, 0xf8, 0xca, 0xf3, 0x03, 0xd1, 0x17, + 0x20, 0x8c, 0x1b, 0x15, 0xc5, 0xe0, 0x0b, 0xf0, 0xd9, 0x0e, 0xd6, 0x8c, 0x6b, 0x96, 0x60, 0x58, + 0xcd, 0x1a, 0xbd, 0xe9, 0x46, 0xa7, 0x99, 0x11, 0xa1, 0x38, 0x0c, 0x69, 0x16, 0xbd, 0x4b, 0xc5, + 0x97, 0xa0, 0xf3, 0x88, 0x92, 0x10, 0x23, 0x4e, 0x5a, 0x67, 0x75, 0x45, 0x7c, 0x88, 0x2d, 0x3f, + 0x0f, 0x88, 0x64, 0x73, 0x2c, 0xcc, 0xe5, 0xdb, 0xeb, 0xd3, 0x03, 0x41, 0xb7, 0x61, 0x5a, 0x3b, + 0x74, 0x43, 0xe1, 0x7e, 0x4d, 0x31, 0x64, 0x13, 0x2b, 0x96, 0xde, 0xa0, 0x4b, 0x35, 0xb6, 0x74, + 0xb6, 0xbf, 0x16, 0x36, 0x6a, 0x8a, 0x21, 0x51, 0x5c, 0x69, 0x42, 0x3b, 0xc4, 0x9d, 0x40, 0xc2, + 0x9a, 0x64, 0x6a, 0x3d, 0x58, 0xc3, 0xd3, 0xb0, 0xb6, 0xac, 0x5a, 0x17, 0xeb, 0x93, 0x10, 0xe5, + 0x83, 0xcc, 0x19, 0x74, 0xb9, 0x47, 0xa5, 0x36, 0x60, 0xe5, 0x07, 0x64, 0x5d, 0xfc, 0x81, 0xd0, + 0xe1, 0xc7, 0x4f, 0x81, 0xd8, 0x36, 0x9d, 0x64, 0xa7, 0x4b, 0x87, 0x33, 0x30, 0x2a, 0xd1, 0x39, + 0x4b, 0xf2, 0x49, 0x4b, 0x8c, 0x75, 0x4c, 0x2d, 0xcc, 0xc1, 0x08, 0x89, 0x4c, 0xa4, 0x17, 0x66, + 0xdf, 0x23, 0x3e, 0xf5, 0x43, 0x02, 0x62, 0x6e, 0x7b, 0xae, 0x98, 0x88, 0x79, 0x84, 0x84, 0xd3, + 0x80, 0x7c, 0xf3, 0xcb, 0x96, 0x5c, 0x94, 0xdb, 0x45, 0x52, 0x48, 0x7d, 0x3f, 0x00, 0xd3, 0x7b, + 0x1d, 0x95, 0xbb, 0x1b, 0x59, 0xc6, 0x95, 0x96, 0xa2, 0xd5, 0x48, 0x9e, 0xe9, 0xd6, 0x6a, 0xcc, + 0xdc, 0x45, 0xb7, 0xc1, 0xa9, 0xd2, 0xf2, 0x20, 0xaa, 0xd8, 0xa8, 0xe9, 0xf7, 0xea, 0xb8, 0x61, + 0x7b, 0xee, 0x69, 0xf6, 0xf1, 0x48, 0xeb, 0x2e, 0x2e, 0x5b, 0x0a, 0x63, 0xaa, 0x1f, 0x80, 0x3e, + 0x0f, 0x13, 0x0d, 0xbd, 0x41, 0x32, 0x29, 0xdd, 0xac, 0xbb, 0x89, 0x4d, 0x8f, 0x9b, 0x64, 0xc8, + 0x87, 0xc6, 0x88, 0xaf, 0xc0, 0x74, 0x4d, 0xb1, 0x6c, 0x96, 0x8d, 0xd6, 0x6a, 0x58, 0xed, 0xd8, + 0x36, 0x9c, 0x24, 0xad, 0x39, 0xa7, 0x91, 0x0f, 0xc1, 0xcd, 0x03, 0xc6, 0x1c, 0x3d, 0x38, 0x59, + 0xc0, 0xd0, 0x62, 0xfa, 0x0a, 0xcd, 0x03, 0xfe, 0xb7, 0x00, 0x53, 0x05, 0x7f, 0x95, 0xfa, 0x17, + 0x5d, 0x57, 0x2b, 0xcf, 0x3e, 0x24, 0xb9, 0x47, 0x12, 0x66, 0xdc, 0x81, 0x25, 0xd9, 0xc8, 0x3a, + 0x72, 0xa0, 0x9f, 0x08, 0x30, 0xd6, 0x21, 0x09, 0xf1, 0x10, 0xfe, 0xb1, 0x3a, 0x8f, 0xe8, 0x55, + 0x98, 0xae, 0xeb, 0xaa, 0xb6, 0xaf, 0x55, 0x94, 0x8e, 0x24, 0x2d, 0xf0, 0xc4, 0x24, 0x6d, 0xca, + 0x4b, 0xe9, 0x82, 0xd1, 0x34, 0xa9, 0xcb, 0xad, 0x66, 0xcd, 0xe6, 0xb7, 0x64, 0xf9, 0x13, 0x11, + 0xa2, 0x8e, 0x2d, 0x4b, 0xa9, 0x3a, 0xe9, 0x87, 0xf3, 0x88, 0x5e, 0x82, 0xb0, 0x71, 0xa0, 0x58, + 0x4e, 0xfe, 0xd1, 0xb3, 0xc2, 0x70, 0xe6, 0x9a, 0x9f, 0x4f, 0x2a, 0x12, 0x7c, 0x89, 0x91, 0xa5, + 0xfe, 0x83, 0x00, 0x93, 0x1b, 0x35, 0x8c, 0xed, 0xce, 0x71, 0x23, 0x08, 0x1d, 0x28, 0xd6, 0x81, + 0x73, 0xd5, 0x97, 0xfc, 0xfe, 0x34, 0x47, 0xfc, 0x0a, 0x44, 0x2b, 0x7a, 0x43, 0xa5, 0x69, 0x2c, + 0x2f, 0x79, 0x52, 0xbd, 0xc6, 0x46, 0x65, 0xcf, 0x38, 0x98, 0x52, 0x9b, 0x28, 0xf5, 0xef, 0x04, + 0x18, 0xf5, 0xb7, 0xf6, 0xbb, 0xbe, 0x5c, 0xd7, 0xd5, 0x66, 0x8d, 0x97, 0x73, 0xfc, 0xfa, 0x32, + 0x03, 0x51, 0x37, 0xee, 0xd1, 0x7d, 0xd0, 0xaf, 0xfb, 0xb6, 0xec, 0x21, 0xaf, 0xec, 0x2b, 0xaf, + 0xbd, 0x77, 0x24, 0xfc, 0x5c, 0x57, 0x84, 0x3f, 0x09, 0xb1, 0x6d, 0xca, 0xd5, 0x75, 0x70, 0x9e, + 0x7e, 0x61, 0x12, 0x86, 0xb6, 0x19, 0xdb, 0x44, 0xd4, 0xed, 0x10, 0x10, 0x0c, 0x4a, 0x94, 0x67, + 0x22, 0xe2, 0xf4, 0x95, 0x7a, 0x13, 0x62, 0x74, 0x58, 0xdc, 0x74, 0x4b, 0x3d, 0x16, 0x1a, 0xcb, + 0x94, 0xcf, 0xf5, 0xd5, 0xd7, 0x93, 0x56, 0xdb, 0xca, 0xcc, 0xc3, 0x23, 0x61, 0x02, 0xc6, 0x61, + 0x98, 0xa2, 0x3b, 0xab, 0x44, 0x58, 0x4c, 0xfd, 0x57, 0x01, 0x46, 0x4a, 0x15, 0xa5, 0xc6, 0x97, + 0x56, 0xd3, 0x42, 0xcb, 0x8e, 0x01, 0x3e, 0x66, 0x5b, 0x9b, 0x53, 0x78, 0x0d, 0xcf, 0xab, 0xd6, + 0x80, 0x5f, 0xad, 0x57, 0x61, 0x86, 0x6e, 0xd9, 0x35, 0x74, 0x15, 0xb3, 0x7d, 0x3b, 0xb9, 0xd2, + 0x34, 0x4d, 0xdc, 0x60, 0x36, 0x12, 0x96, 0x26, 0x49, 0x33, 0x71, 0xfe, 0x74, 0xf3, 0x2e, 0xc3, + 0xda, 0xd0, 0x65, 0x98, 0xee, 0x24, 0xb3, 0x15, 0xb3, 0x8a, 0xd9, 0xec, 0x84, 0xa5, 0x09, 0x1f, + 0xd5, 0x0e, 0x6d, 0x5a, 0x39, 0xfd, 0xf0, 0x48, 0x38, 0x01, 0xb3, 0x30, 0xca, 0x45, 0xf4, 0xb8, + 0xc3, 0x25, 0x52, 0xf2, 0xa5, 0xbe, 0x27, 0x40, 0xa2, 0xb0, 0xbf, 0x5f, 0xd3, 0x1a, 0xb8, 0xd4, + 0x34, 0x5b, 0x5a, 0x4b, 0x29, 0x6b, 0x24, 0xab, 0xe5, 0x78, 0x19, 0xff, 0xe8, 0x2f, 0xf4, 0x1a, + 0x7d, 0x2f, 0xf2, 0xe3, 0xa9, 0x62, 0xe5, 0xfc, 0xc3, 0x23, 0xe1, 0x73, 0xf0, 0x0c, 0x9c, 0xe4, + 0x3c, 0x92, 0x3e, 0x26, 0x8e, 0xb0, 0xc1, 0xc5, 0xf4, 0x52, 0xea, 0xdb, 0x02, 0x9c, 0x79, 0x62, + 0xc1, 0x8b, 0x36, 0x9d, 0xf4, 0x8d, 0xc9, 0xbb, 0xf8, 0xd4, 0x65, 0xb3, 0x93, 0xd0, 0xb1, 0xef, + 0x09, 0x54, 0x4c, 0x8d, 0x7e, 0x31, 0x81, 0xcb, 0xed, 0x05, 0xa5, 0x6e, 0x43, 0x84, 0x06, 0xe8, + 0xc6, 0xbe, 0x8e, 0x12, 0x10, 0x39, 0xd0, 0x2d, 0xdb, 0xb3, 0xf8, 0xdc, 0x67, 0xb2, 0x28, 0x69, + 0x6a, 0x48, 0x6f, 0x8a, 0xb3, 0xd4, 0x6f, 0xe5, 0xd4, 0xc3, 0x23, 0x61, 0x16, 0x66, 0x40, 0x64, + 0x01, 0x9f, 0x7a, 0x73, 0xf6, 0x95, 0x02, 0x3a, 0xd6, 0xdf, 0x0a, 0xc3, 0x60, 0xc1, 0xa2, 0x9c, + 0x9f, 0x85, 0x80, 0x6e, 0x71, 0x83, 0x9f, 0xee, 0xa9, 0xfd, 0x92, 0x14, 0xd0, 0x2d, 0x74, 0x15, + 0x86, 0x0c, 0x53, 0x57, 0x9b, 0x15, 0x9b, 0xfb, 0xaa, 0x13, 0x3d, 0xdf, 0x99, 0x30, 0x14, 0xc9, + 0xc1, 0x45, 0x17, 0x21, 0x5c, 0xd6, 0x15, 0x53, 0xe5, 0x75, 0xf7, 0x6c, 0xef, 0xca, 0x43, 0x31, + 0x55, 0x89, 0xe1, 0x91, 0x7e, 0x2a, 0x07, 0x8a, 0x65, 0x69, 0x2c, 0x5d, 0xed, 0xd3, 0x4f, 0x86, + 0xa1, 0x48, 0x0e, 0x2e, 0x4a, 0x43, 0xa8, 0xac, 0xe9, 0x16, 0xf5, 0xe2, 0x7d, 0x36, 0xcf, 0xd6, + 0x34, 0xdd, 0x92, 0x28, 0x16, 0x3a, 0x0f, 0xc1, 0x8a, 0xd1, 0xa4, 0x19, 0x6b, 0x6c, 0x69, 0xa6, + 0x67, 0x07, 0x46, 0x53, 0x22, 0x38, 0x68, 0x09, 0x06, 0xeb, 0xb8, 0xae, 0x9b, 0xf7, 0x68, 0x06, + 0x1b, 0xeb, 0x7a, 0xb1, 0x43, 0xb1, 0xb7, 0x29, 0x86, 0xc4, 0x31, 0xd1, 0xe7, 0x61, 0xc8, 0xb2, + 0x75, 0x93, 0xd8, 0x63, 0x84, 0x7a, 0xde, 0x33, 0x3d, 0x17, 0x35, 0x43, 0x59, 0xc7, 0x2d, 0xad, + 0x82, 0x25, 0x87, 0x82, 0x10, 0x3b, 0x7b, 0xb6, 0xd1, 0xfe, 0xc4, 0xbc, 0x96, 0x71, 0x88, 0x39, + 0x05, 0x91, 0xf6, 0x10, 0x9b, 0x0d, 0x5c, 0xe3, 0x79, 0x6c, 0x4f, 0x69, 0x6f, 0x52, 0x0c, 0x89, + 0x63, 0xa2, 0x8b, 0x10, 0x6c, 0x5a, 0xe5, 0x78, 0x8c, 0x76, 0xd6, 0x73, 0x2f, 0x62, 0xb7, 0xb4, + 0xc6, 0x3b, 0x22, 0x98, 0x44, 0x7b, 0x55, 0xa3, 0x49, 0x2b, 0xd1, 0x3e, 0xda, 0xdb, 0x2c, 0xee, + 0x4a, 0x04, 0x67, 0x65, 0xe9, 0xe1, 0x91, 0xb0, 0x00, 0x69, 0x98, 0xbc, 0xae, 0x98, 0x2a, 0x4d, + 0x97, 0xbc, 0xb6, 0x38, 0x49, 0x9c, 0xc4, 0x72, 0xfa, 0xf9, 0xf4, 0xb5, 0xf4, 0x0b, 0xe9, 0xc5, + 0x4b, 0xe9, 0xc5, 0xc5, 0xf4, 0xe2, 0x52, 0xea, 0x97, 0x05, 0x08, 0x14, 0x4a, 0x3d, 0x63, 0xcd, + 0x34, 0x0c, 0xb6, 0x70, 0x43, 0xd5, 0xcd, 0xf6, 0x66, 0x0f, 0x79, 0xf2, 0xe6, 0x18, 0x41, 0x7f, + 0x8e, 0x11, 0x87, 0x21, 0x13, 0xd7, 0x30, 0xf1, 0x30, 0x3c, 0xf0, 0xf3, 0x47, 0x94, 0x82, 0x61, + 0xc5, 0xac, 0x1c, 0x68, 0x36, 0xae, 0xd8, 0x4d, 0x93, 0x7f, 0x1a, 0x40, 0xf2, 0xc1, 0x52, 0x3f, + 0x0f, 0x83, 0x4c, 0x59, 0x5e, 0x3e, 0x82, 0x9f, 0x8f, 0xa7, 0xef, 0x80, 0xbf, 0xef, 0xce, 0x1e, + 0x82, 0x3d, 0x7a, 0xa8, 0xc2, 0x10, 0x5f, 0x33, 0x9f, 0xd0, 0x80, 0xa7, 0x61, 0xd0, 0xc2, 0xa6, + 0xa6, 0xd4, 0x9c, 0x98, 0xca, 0x9e, 0x52, 0x6f, 0x0b, 0x10, 0xa6, 0x0b, 0xed, 0xa7, 0xdb, 0x0f, + 0x3a, 0x01, 0x51, 0xc5, 0xb2, 0x30, 0x89, 0x1d, 0x55, 0xae, 0xd3, 0x08, 0x05, 0xec, 0x28, 0xd5, + 0xd4, 0xd7, 0x05, 0x18, 0xe2, 0x4b, 0x97, 0x88, 0xe1, 0x1e, 0x26, 0x18, 0x91, 0xe8, 0xef, 0x4f, + 0x4b, 0x8c, 0x2d, 0x08, 0x11, 0x67, 0xe0, 0xe9, 0x4e, 0xe8, 0xd7, 0x5d, 0xc7, 0x94, 0x22, 0x08, + 0xa9, 0x6e, 0xda, 0x2c, 0xd1, 0xdf, 0xa9, 0x7f, 0x21, 0x40, 0x30, 0x63, 0x34, 0xfb, 0x72, 0x9b, + 0x84, 0x70, 0x5d, 0x57, 0x71, 0xcd, 0x39, 0xe9, 0x4d, 0x1f, 0x08, 0xd4, 0xfb, 0x25, 0x1a, 0xf6, + 0x40, 0xa0, 0x15, 0xa5, 0x72, 0xc0, 0x8c, 0x75, 0x44, 0x62, 0x0f, 0xa4, 0xd7, 0x8a, 0xd1, 0x64, + 0xce, 0x6d, 0x44, 0xa2, 0xbf, 0x29, 0xa6, 0x6e, 0x62, 0x8b, 0x3a, 0x31, 0x82, 0x49, 0x1e, 0x88, + 0xe4, 0xf6, 0x81, 0x89, 0x15, 0xd5, 0xa2, 0xee, 0x6a, 0x44, 0x72, 0x1e, 0x51, 0x02, 0xc2, 0xfb, + 0x35, 0xa5, 0x6a, 0xb1, 0x3a, 0x7b, 0x2d, 0x44, 0x2f, 0x48, 0x30, 0x50, 0xea, 0x26, 0x0c, 0x32, + 0x0f, 0xe6, 0x9b, 0x94, 0x28, 0x9f, 0x14, 0x57, 0xd2, 0x80, 0x57, 0xd2, 0x19, 0x18, 0xb2, 0xb4, + 0xfb, 0x58, 0xae, 0x97, 0xf9, 0x08, 0x06, 0xc9, 0xe3, 0x76, 0x39, 0xf5, 0xdb, 0x01, 0x18, 0xf1, + 0xb9, 0xb6, 0x7e, 0x06, 0xa7, 0x9a, 0x5a, 0x0b, 0xbb, 0x33, 0xcd, 0x9e, 0x3c, 0x4a, 0x0c, 0xf6, + 0x56, 0x62, 0xc8, 0xab, 0xc4, 0xf6, 0xec, 0x87, 0x7d, 0xb3, 0xef, 0x08, 0x57, 0x2d, 0x73, 0xf5, + 0x50, 0xe1, 0x36, 0xcb, 0x2b, 0x5f, 0x23, 0xe5, 0xf7, 0x83, 0xae, 0xd4, 0x12, 0xc1, 0xe0, 0x3a, + 0xed, 0x9f, 0xa4, 0x89, 0x4c, 0x12, 0x02, 0xdb, 0xa3, 0x7d, 0x13, 0x18, 0x93, 0x02, 0x44, 0x08, + 0x6f, 0x93, 0x8e, 0x13, 0x43, 0x5c, 0x1c, 0x98, 0x85, 0x91, 0x12, 0xed, 0x33, 0x99, 0x6f, 0xd6, + 0xcb, 0x8c, 0x01, 0x13, 0x02, 0xa6, 0x21, 0x5a, 0xd2, 0xee, 0xe3, 0xe4, 0xb9, 0xcd, 0xb5, 0xf3, + 0x24, 0x27, 0xe5, 0x12, 0xa5, 0xfe, 0x69, 0x10, 0x46, 0x7c, 0xee, 0xfb, 0xa9, 0x14, 0x74, 0x0a, + 0x40, 0x33, 0x3c, 0xdf, 0x02, 0x22, 0x31, 0x3f, 0xaa, 0x19, 0x9e, 0x6f, 0x05, 0xd5, 0x95, 0x8a, + 0xdb, 0x1e, 0xe2, 0xd9, 0xb8, 0x52, 0x71, 0x10, 0x9c, 0xaf, 0x14, 0x31, 0x85, 0xd1, 0xdf, 0xed, + 0x19, 0x1e, 0xf4, 0xce, 0x70, 0xe7, 0xd6, 0xe5, 0xd0, 0xc7, 0xdd, 0xba, 0x8c, 0x3c, 0xcd, 0xd6, + 0xe5, 0xca, 0x77, 0xc8, 0x54, 0x7d, 0x4b, 0x38, 0xd6, 0x5c, 0xcd, 0xc1, 0x70, 0xae, 0xe8, 0x6c, + 0x8e, 0x60, 0x6b, 0x6d, 0xd4, 0xab, 0x24, 0x31, 0x48, 0x4b, 0x87, 0xd5, 0x8c, 0xbb, 0x7b, 0x32, + 0xe2, 0x53, 0x12, 0xe9, 0xa1, 0xa8, 0x9b, 0x36, 0xe9, 0x81, 0xa8, 0x03, 0x66, 0x60, 0x98, 0x7e, + 0x13, 0x2a, 0x79, 0x6e, 0xbb, 0x6c, 0x58, 0xe7, 0xc9, 0x64, 0x53, 0x8d, 0xa4, 0x7e, 0x38, 0x08, + 0x51, 0x37, 0x16, 0x22, 0x11, 0x82, 0xe5, 0xa6, 0xc5, 0xfd, 0x17, 0xf9, 0xd9, 0x79, 0xd2, 0x69, + 0xa4, 0x7d, 0xd2, 0xc9, 0xd1, 0x7a, 0xb0, 0xfd, 0x6d, 0xa8, 0xce, 0x0c, 0x30, 0xda, 0x95, 0x01, + 0x92, 0xc9, 0x64, 0x86, 0xc7, 0x4a, 0x2b, 0x60, 0x93, 0xc9, 0x40, 0xb4, 0xb4, 0x3a, 0x03, 0xc3, + 0x3c, 0xd1, 0x62, 0x18, 0x6c, 0xbb, 0x29, 0xc6, 0x61, 0x14, 0x65, 0x16, 0x22, 0xf4, 0xcb, 0x18, + 0x64, 0x91, 0x8c, 0x32, 0x67, 0xa6, 0x95, 0x5c, 0x1f, 0xa9, 0xa9, 0x32, 0x5f, 0x6e, 0x63, 0xcc, + 0x47, 0x6a, 0x2a, 0x33, 0x7a, 0x6a, 0x67, 0xaa, 0xec, 0xa4, 0x7c, 0x22, 0xdb, 0xc7, 0xd2, 0x54, + 0x27, 0x58, 0x7d, 0x0e, 0x46, 0x35, 0xb9, 0xae, 0x34, 0x9a, 0xfb, 0x0a, 0x0d, 0x64, 0x66, 0x7c, + 0x9c, 0x6d, 0x2e, 0x6a, 0xdb, 0x1e, 0x60, 0xdb, 0xb2, 0x10, 0x5b, 0xb6, 0xae, 0xef, 0x28, 0x57, + 0x54, 0x99, 0x64, 0x1d, 0x13, 0xcc, 0xb8, 0xcb, 0x15, 0x75, 0xd7, 0x2a, 0x93, 0x4e, 0x49, 0x83, + 0x4a, 0x15, 0x1c, 0x9f, 0x64, 0x9d, 0x96, 0x2b, 0x2a, 0xd7, 0xf8, 0x59, 0x18, 0x2d, 0xf3, 0x46, + 0xb9, 0x52, 0x53, 0x2c, 0x2b, 0x3e, 0xc5, 0x42, 0x6a, 0x99, 0x21, 0x64, 0x08, 0x0c, 0x3d, 0x07, + 0xc8, 0xc5, 0xb2, 0x9a, 0x65, 0x8e, 0x39, 0xcd, 0x5e, 0x33, 0x72, 0xcc, 0x52, 0xb3, 0xcc, 0x90, + 0xe7, 0x61, 0xdc, 0x45, 0xa6, 0x45, 0x77, 0x45, 0xaf, 0xc5, 0x67, 0x7c, 0xb8, 0x45, 0x0e, 0x46, + 0xe7, 0x09, 0x6e, 0x5d, 0xb9, 0x2b, 0x1b, 0x4a, 0xe5, 0x10, 0xdb, 0x32, 0x59, 0xd0, 0xf1, 0x38, + 0x9d, 0xd1, 0xd1, 0xf2, 0xb6, 0x72, 0xb7, 0x48, 0xc1, 0x64, 0xcd, 0x53, 0xd5, 0xba, 0xca, 0x9b, + 0xe5, 0xaa, 0x75, 0x74, 0xb7, 0x0c, 0x91, 0xa6, 0x55, 0x66, 0x6b, 0x22, 0x41, 0xd7, 0x44, 0xcf, + 0x1c, 0x77, 0xd7, 0x2a, 0xd3, 0x25, 0x31, 0xd4, 0x64, 0x3f, 0x56, 0x7e, 0x8d, 0xac, 0x88, 0xef, + 0xd0, 0xbd, 0xc3, 0xb5, 0xa6, 0x95, 0x08, 0x53, 0xfb, 0x23, 0x85, 0xaf, 0x63, 0xd7, 0x51, 0xd7, + 0xfe, 0xba, 0x6c, 0xfa, 0x24, 0xc4, 0xd6, 0xdb, 0x96, 0x45, 0x56, 0x80, 0xc7, 0xd0, 0x48, 0x2b, + 0x9b, 0x76, 0xcf, 0xde, 0xa1, 0x6b, 0x77, 0x64, 0x75, 0x71, 0xd1, 0xdd, 0xad, 0x73, 0xaf, 0xd5, + 0xdd, 0x08, 0x45, 0x42, 0x62, 0xf8, 0x46, 0x28, 0x12, 0x16, 0x07, 0x6f, 0x84, 0x22, 0x83, 0xe2, + 0x50, 0xc7, 0x0b, 0xbe, 0x61, 0x71, 0xe4, 0x46, 0x28, 0x32, 0x22, 0x8e, 0xa6, 0x7e, 0x45, 0x80, + 0xe0, 0x66, 0x71, 0x97, 0x58, 0x0f, 0x5b, 0xb9, 0x1d, 0xdb, 0x60, 0x23, 0x0c, 0xea, 0xec, 0x81, + 0x9d, 0x81, 0xe1, 0x4a, 0x53, 0x55, 0x64, 0x7f, 0x30, 0x8e, 0x11, 0x98, 0x83, 0xf2, 0x05, 0x80, + 0xaa, 0xd1, 0x74, 0x2c, 0x26, 0xd8, 0x3f, 0x87, 0xdd, 0x2c, 0xee, 0xf2, 0x1c, 0x36, 0x5a, 0x35, + 0x9a, 0xec, 0x67, 0xea, 0x35, 0x88, 0xba, 0x70, 0x34, 0x0a, 0x01, 0x4d, 0xe5, 0x82, 0x04, 0x34, + 0xb5, 0x6b, 0x71, 0x05, 0xba, 0x17, 0xd7, 0x49, 0x88, 0x1a, 0xa6, 0x5e, 0xa1, 0x4e, 0x87, 0x07, + 0xac, 0x36, 0x20, 0xf5, 0x6f, 0x05, 0x48, 0x38, 0xc7, 0x4d, 0x9a, 0xd6, 0x36, 0xb6, 0x4d, 0xad, + 0x62, 0x6d, 0x68, 0xb8, 0xa6, 0xae, 0x2b, 0xb6, 0x82, 0x72, 0xce, 0x9d, 0xb0, 0xbe, 0x37, 0x42, + 0xfb, 0x13, 0x2f, 0xdc, 0xc4, 0xf7, 0xd8, 0xb7, 0x0f, 0xe8, 0x65, 0xb2, 0x4b, 0xed, 0xcb, 0x64, + 0xc1, 0x1e, 0x59, 0x3f, 0xa3, 0xde, 0x23, 0x18, 0xfc, 0xa2, 0x59, 0x62, 0x19, 0x22, 0x0e, 0x8b, + 0xa7, 0xb9, 0x9c, 0x96, 0xfa, 0xae, 0x00, 0x53, 0x5d, 0x62, 0xd1, 0xe1, 0xbc, 0x02, 0xe1, 0x7d, + 0x22, 0x1e, 0xaf, 0x8c, 0xe7, 0x8f, 0x3f, 0x20, 0x89, 0x11, 0xa2, 0x35, 0x9a, 0x5c, 0x29, 0x7c, + 0x10, 0x0b, 0x4f, 0xa7, 0x11, 0x9a, 0x8c, 0x29, 0x29, 0x05, 0x26, 0xd8, 0x7d, 0xb9, 0x9b, 0xcd, + 0x32, 0x66, 0x67, 0x1f, 0x25, 0xfc, 0x06, 0x3a, 0x0f, 0xd1, 0xf6, 0xe5, 0x4b, 0x76, 0x02, 0x8a, + 0xdd, 0x42, 0x37, 0x49, 0x84, 0x7c, 0x45, 0x6a, 0xb7, 0xa2, 0xd3, 0x3c, 0x18, 0x07, 0xba, 0xb1, + 0x68, 0x43, 0x4a, 0x86, 0xf1, 0x2d, 0xcd, 0xb2, 0x7f, 0x7a, 0x1d, 0xfc, 0x4f, 0x01, 0xa6, 0x3a, + 0x7a, 0xb0, 0x8c, 0x9c, 0x8d, 0xeb, 0xf4, 0x75, 0x92, 0xa6, 0x72, 0x4b, 0x23, 0x3f, 0x51, 0x16, + 0xc4, 0x0a, 0x1d, 0xaf, 0x67, 0x2f, 0x31, 0xfc, 0xc4, 0xbd, 0xc4, 0x31, 0x46, 0xd3, 0xde, 0x45, + 0xcc, 0x82, 0x88, 0xef, 0x1a, 0x9a, 0x79, 0xcf, 0xc3, 0x66, 0xf0, 0xc9, 0x6c, 0x18, 0x4d, 0x9b, + 0xcd, 0x29, 0x80, 0xa6, 0x85, 0x4d, 0x19, 0xd7, 0x15, 0xad, 0xc6, 0x5f, 0xf9, 0x44, 0x09, 0x24, + 0x4b, 0x00, 0xee, 0xc8, 0x23, 0xfd, 0x46, 0xbe, 0xd3, 0xa5, 0x5a, 0xcb, 0x40, 0x2f, 0x43, 0x58, + 0xb3, 0x71, 0xdd, 0x8a, 0x3f, 0xe6, 0xac, 0x66, 0x4f, 0x75, 0x49, 0x8c, 0x2e, 0xb5, 0x0f, 0xf1, + 0x4d, 0xcf, 0x79, 0xa2, 0xcc, 0x01, 0xae, 0x1c, 0x4a, 0xf8, 0x8d, 0x26, 0xb6, 0xec, 0x4f, 0x74, + 0xde, 0xae, 0xc2, 0x6c, 0x8f, 0x7e, 0x2c, 0x43, 0x6f, 0xb0, 0x32, 0xd1, 0x39, 0xa3, 0xc3, 0x8e, + 0xe8, 0x38, 0x8f, 0xa9, 0xef, 0x09, 0x30, 0xcb, 0x6c, 0x96, 0x51, 0xfb, 0x0d, 0xeb, 0x34, 0xd0, + 0x63, 0xbd, 0xbd, 0x64, 0xa3, 0x0d, 0xe8, 0x00, 0x26, 0xe9, 0x34, 0x3c, 0xf5, 0x8e, 0xf2, 0xda, + 0x2c, 0xdd, 0xf5, 0xff, 0x81, 0x10, 0x78, 0x85, 0x5e, 0xc0, 0x86, 0x1f, 0x08, 0x43, 0x37, 0xc2, + 0x91, 0xb7, 0xfe, 0xd3, 0xd7, 0xc7, 0xa4, 0x89, 0x36, 0x4b, 0x17, 0x3f, 0xb5, 0x02, 0x33, 0x44, + 0xcf, 0x1f, 0x45, 0xca, 0xd4, 0x32, 0x4c, 0x48, 0xb8, 0xa5, 0x1f, 0xe2, 0x2e, 0xba, 0x76, 0xe6, + 0xdb, 0x4b, 0xa7, 0x17, 0x60, 0xa2, 0x4d, 0xc1, 0x77, 0xd0, 0x2c, 0xba, 0xeb, 0xcd, 0x8f, 0xaf, + 0x30, 0x65, 0xf2, 0xa7, 0x94, 0x05, 0x31, 0xcf, 0x1d, 0x7d, 0x74, 0x06, 0x62, 0xec, 0x58, 0x16, + 0xbb, 0xda, 0x4f, 0x13, 0xa8, 0xeb, 0x03, 0x12, 0x50, 0xa0, 0x8b, 0x52, 0xbb, 0xdc, 0x32, 0x1a, + 0x1c, 0x25, 0xe6, 0xa0, 0x50, 0x20, 0x45, 0x71, 0xbe, 0xd2, 0xb7, 0x26, 0xb2, 0xe2, 0x08, 0x45, + 0xde, 0x3d, 0x12, 0xe0, 0xfd, 0x23, 0x41, 0xe0, 0x67, 0xe5, 0xff, 0x4f, 0x10, 0x66, 0xd6, 0x35, + 0x13, 0x57, 0x6c, 0xfe, 0x12, 0x8f, 0xc9, 0x49, 0xb7, 0xd7, 0x5e, 0x80, 0x59, 0x95, 0x36, 0x39, + 0x07, 0xaf, 0xe4, 0xaa, 0x62, 0xe3, 0x3b, 0xca, 0x3d, 0xd9, 0x8d, 0x35, 0xd3, 0xaa, 0x97, 0x76, + 0x93, 0x35, 0xe7, 0x54, 0xf4, 0x32, 0x9c, 0xec, 0x43, 0xda, 0x7e, 0x1b, 0x14, 0x95, 0x66, 0x7b, + 0x51, 0xb3, 0x37, 0x10, 0x53, 0x30, 0xd8, 0xaa, 0xde, 0x91, 0x5d, 0x87, 0x11, 0x6e, 0x55, 0xef, + 0xe4, 0x54, 0x92, 0x9b, 0x10, 0x30, 0x63, 0xc2, 0x0a, 0x84, 0x48, 0xab, 0x7a, 0x87, 0xd1, 0xe4, + 0xe1, 0x6c, 0x47, 0xa7, 0x04, 0x57, 0xb1, 0x2c, 0xbd, 0xa2, 0x31, 0x0b, 0x63, 0x74, 0xac, 0x7c, + 0x48, 0xfa, 0x3a, 0xdf, 0xab, 0xde, 0x59, 0x6d, 0x23, 0x32, 0x7e, 0x5b, 0x00, 0x2d, 0x8d, 0x1d, + 0xbd, 0xc2, 0xce, 0x39, 0xa6, 0x9e, 0x9b, 0xbc, 0x3e, 0x05, 0xee, 0xe5, 0x36, 0x28, 0x39, 0x51, + 0xa1, 0x14, 0x6d, 0x69, 0xf4, 0x0c, 0x16, 0xb6, 0x10, 0x86, 0x4b, 0x86, 0xa9, 0x1b, 0x0a, 0x51, + 0x84, 0xca, 0x3f, 0x13, 0x27, 0xef, 0x9b, 0x7a, 0x5d, 0xee, 0x10, 0xba, 0xe2, 0xbe, 0x4d, 0x65, + 0x5f, 0xa9, 0x94, 0x9e, 0x6b, 0xd3, 0xb1, 0x0f, 0xc7, 0x6d, 0x98, 0x7a, 0xdd, 0xd7, 0x67, 0xfb, + 0x05, 0xec, 0x4a, 0xfa, 0xe1, 0x91, 0x70, 0x0e, 0x9e, 0x85, 0x29, 0x86, 0x90, 0xe4, 0x4d, 0xce, + 0x76, 0xf1, 0x08, 0xdf, 0xdb, 0xa6, 0xc7, 0x99, 0x9e, 0x4f, 0xfd, 0x5e, 0x00, 0x66, 0xfb, 0x4a, + 0x4f, 0x27, 0x41, 0xdb, 0x6f, 0xcf, 0x76, 0xb8, 0xa5, 0xed, 0xf3, 0x49, 0x70, 0xf4, 0xc2, 0x67, + 0x32, 0xe2, 0x8c, 0x13, 0x9d, 0x07, 0x51, 0xb1, 0x6d, 0xa5, 0x72, 0xe0, 0x79, 0x25, 0xc1, 0xa6, + 0x70, 0xac, 0x0d, 0x67, 0xa8, 0x39, 0x88, 0x3a, 0x87, 0x9a, 0x9d, 0x93, 0x6d, 0xe9, 0x27, 0xaa, + 0x77, 0x6d, 0xb3, 0x58, 0xc4, 0xd8, 0xa4, 0xda, 0x8d, 0xf0, 0xb3, 0xce, 0xd6, 0xca, 0x97, 0xdf, + 0x3b, 0x12, 0xbe, 0x48, 0xcb, 0xde, 0xdc, 0x46, 0x32, 0xb7, 0x4e, 0xcb, 0x5e, 0x2a, 0x39, 0xc4, + 0x21, 0x4a, 0x60, 0xec, 0xbd, 0x74, 0xcc, 0x23, 0x39, 0xcc, 0xc3, 0x24, 0x69, 0x59, 0x75, 0xa5, + 0xe2, 0x48, 0xa8, 0x7b, 0x04, 0xa9, 0x6f, 0x06, 0x21, 0xde, 0x4f, 0x0c, 0x92, 0x11, 0x3a, 0x67, + 0xb2, 0xf7, 0x95, 0xba, 0x56, 0x73, 0xd2, 0x91, 0x11, 0x0e, 0xdd, 0xa0, 0x40, 0x8a, 0x56, 0x57, + 0xee, 0xeb, 0x8d, 0x8e, 0xcf, 0xe5, 0x8e, 0x30, 0xa8, 0x53, 0xe4, 0x8a, 0x10, 0x54, 0xac, 0x06, + 0xaf, 0xb6, 0xc8, 0x4f, 0x34, 0x07, 0x31, 0xf7, 0xf0, 0xb7, 0xa6, 0x72, 0xb3, 0x8f, 0xf2, 0xb1, + 0xe7, 0x54, 0x5a, 0x5a, 0x38, 0xed, 0x5e, 0x0b, 0x1f, 0xe6, 0x28, 0xee, 0x37, 0x84, 0x09, 0x96, + 0x7b, 0x2a, 0xcf, 0x61, 0xc2, 0x0d, 0xe3, 0x3c, 0x88, 0x95, 0xa6, 0x65, 0xeb, 0x75, 0xcf, 0xb1, + 0x74, 0x16, 0x04, 0xc7, 0x1c, 0xb8, 0xf3, 0xc9, 0xde, 0x5f, 0x7c, 0xef, 0x48, 0xb8, 0x0f, 0x29, + 0x18, 0xe5, 0x80, 0x24, 0x1b, 0x60, 0x42, 0xec, 0xd4, 0x03, 0xfc, 0x25, 0x98, 0x58, 0xa5, 0x83, + 0x4b, 0x96, 0x34, 0xb5, 0x7d, 0x02, 0x40, 0xec, 0xd4, 0x04, 0x3c, 0x07, 0x53, 0x19, 0xde, 0x8b, + 0x1f, 0x15, 0x75, 0x8b, 0x95, 0xfa, 0x1f, 0x02, 0xa4, 0xe8, 0x07, 0x4f, 0xaf, 0x37, 0xcb, 0x25, + 0x43, 0x3f, 0xc4, 0x7b, 0x0d, 0x6c, 0x93, 0x81, 0xba, 0x2f, 0xa6, 0xe8, 0xb4, 0xdc, 0x84, 0xc8, + 0x41, 0xb3, 0x2c, 0xb7, 0x1a, 0xd8, 0xe6, 0xef, 0x08, 0x7a, 0x1e, 0x9c, 0xa5, 0x9c, 0xf6, 0xf2, + 0xd8, 0xde, 0xd1, 0xbb, 0xf8, 0x48, 0x43, 0x07, 0xcd, 0x32, 0x81, 0xa2, 0x57, 0x21, 0x66, 0x91, + 0xae, 0x28, 0x3b, 0x8b, 0xa7, 0x79, 0x4f, 0xcf, 0x0f, 0x2c, 0x47, 0x5e, 0x6b, 0xe5, 0xd2, 0xc3, + 0x23, 0x21, 0x0d, 0xf3, 0xf0, 0x0c, 0xa5, 0x48, 0x5e, 0x6f, 0x96, 0x93, 0x74, 0x34, 0x49, 0xd2, + 0x9c, 0xe4, 0x74, 0xbe, 0xd7, 0x3c, 0x3f, 0x0a, 0xc0, 0xc9, 0xc7, 0xb1, 0x47, 0x2f, 0x43, 0x94, + 0xc8, 0x27, 0x6b, 0x8d, 0x7d, 0x9d, 0x8f, 0x39, 0xd5, 0xf3, 0x7c, 0x2c, 0xe3, 0xe2, 0x1c, 0x7b, + 0x8a, 0x10, 0x22, 0xaa, 0xb3, 0x65, 0x98, 0xa1, 0x9e, 0xa9, 0x87, 0xd7, 0x64, 0xc6, 0x3a, 0x45, + 0x9b, 0xbb, 0x5c, 0x65, 0x06, 0xc2, 0x6c, 0x19, 0x07, 0xfb, 0x7b, 0x49, 0xb7, 0x4f, 0x8f, 0xcc, + 0xec, 0x6a, 0x05, 0xa3, 0x5d, 0xa9, 0xbf, 0x77, 0x24, 0x68, 0xb0, 0x02, 0x27, 0xb3, 0x77, 0x35, + 0x8b, 0xbe, 0xa8, 0xa7, 0x9a, 0x90, 0xb0, 0xa5, 0x37, 0xcd, 0x0a, 0x4e, 0xd2, 0x88, 0x96, 0x48, + 0x40, 0xdc, 0x1d, 0xe3, 0x82, 0xc9, 0xdb, 0x58, 0x04, 0x84, 0xe7, 0x00, 0xf9, 0x69, 0x69, 0xcd, + 0x37, 0x05, 0x13, 0x6d, 0x0a, 0xfa, 0x8b, 0x86, 0xe7, 0x3f, 0x16, 0x60, 0xb6, 0xaf, 0x4c, 0x64, + 0x51, 0xb1, 0x53, 0x2a, 0x32, 0xa3, 0x75, 0x7c, 0xe0, 0x30, 0x83, 0x12, 0x9a, 0x9c, 0x8a, 0x9e, + 0x81, 0x11, 0x83, 0x51, 0xfa, 0xb4, 0x34, 0x6c, 0x78, 0xd8, 0xa1, 0x34, 0x20, 0x17, 0xe9, 0x5e, + 0xa3, 0x22, 0xd7, 0x70, 0x0b, 0xd7, 0xb8, 0x53, 0x14, 0x1d, 0xcc, 0x7b, 0x8d, 0xca, 0x16, 0x81, + 0xa3, 0x0b, 0x80, 0x0c, 0x53, 0x6f, 0x69, 0xa4, 0x44, 0x6c, 0xf3, 0x65, 0x8b, 0x7e, 0xdc, 0xdb, + 0x42, 0x99, 0xa7, 0xfe, 0x4b, 0x00, 0x4e, 0xd0, 0x51, 0x64, 0xef, 0x1a, 0x64, 0x75, 0xd0, 0x08, + 0xe1, 0x79, 0xe9, 0x77, 0x1b, 0xe6, 0xfb, 0x84, 0x1d, 0x85, 0x50, 0xc9, 0x98, 0x91, 0xb1, 0x16, + 0xea, 0x85, 0xa3, 0xd2, 0xe7, 0x7a, 0x05, 0x9c, 0xae, 0x4e, 0xd0, 0x6d, 0xae, 0x57, 0x6f, 0x68, + 0x6f, 0x3a, 0xaf, 0xb1, 0x7a, 0xa6, 0xba, 0x44, 0x6b, 0x9e, 0x30, 0xcf, 0x0f, 0xe2, 0x8e, 0xb7, + 0x3a, 0xc1, 0x84, 0x35, 0xb3, 0x43, 0x7e, 0xf9, 0xc3, 0xe3, 0xb5, 0xfa, 0xb0, 0x66, 0xe3, 0xa6, + 0xd8, 0x5e, 0xd6, 0x66, 0x27, 0xd8, 0x7d, 0xad, 0x9a, 0x60, 0xcb, 0x8e, 0x8f, 0x28, 0x49, 0xe9, + 0xdd, 0x23, 0x21, 0x34, 0x3e, 0xb2, 0x14, 0xc9, 0x3d, 0xe5, 0x1b, 0x14, 0x43, 0xa9, 0xaf, 0x0f, + 0x72, 0xd7, 0xe3, 0x55, 0x44, 0x46, 0x33, 0x2b, 0x4d, 0xcd, 0xf6, 0x28, 0xfd, 0x79, 0x88, 0xfb, + 0xf4, 0x2a, 0x57, 0x18, 0x4a, 0xdb, 0x8c, 0xa6, 0x70, 0x37, 0x83, 0x9c, 0x8a, 0x3e, 0x0f, 0x89, + 0xde, 0x84, 0x9e, 0x2a, 0x7e, 0xa6, 0x07, 0x29, 0xad, 0xe8, 0x5f, 0x84, 0x13, 0xbd, 0x89, 0xbd, + 0x51, 0x38, 0x8e, 0x7b, 0x4b, 0x8e, 0xd1, 0x2a, 0x9c, 0xea, 0x20, 0x77, 0xb3, 0x0a, 0xcf, 0x07, + 0xa8, 0xa5, 0x84, 0x8f, 0x81, 0x8b, 0x42, 0x25, 0xc8, 0xc2, 0xe9, 0xbe, 0x2c, 0x7c, 0x81, 0xe7, + 0x64, 0x6f, 0x26, 0x5c, 0xfd, 0x37, 0x61, 0x88, 0x2f, 0x0b, 0xfe, 0xe2, 0xb2, 0xe7, 0xab, 0x6a, + 0xef, 0x14, 0xf8, 0xdc, 0x20, 0xdb, 0x79, 0xe2, 0x1c, 0x56, 0x7e, 0x14, 0x78, 0x78, 0x24, 0x5c, + 0x86, 0x45, 0x38, 0xeb, 0x9f, 0x6a, 0x3e, 0xf6, 0xa4, 0xd2, 0x50, 0x93, 0x6d, 0x09, 0x50, 0x94, + 0x25, 0x48, 0x57, 0xd3, 0xcb, 0xef, 0x1d, 0x09, 0xbf, 0x1a, 0x80, 0x15, 0x48, 0xf4, 0xa6, 0xa3, + 0xae, 0xe5, 0xe4, 0xe3, 0xe6, 0x0b, 0x72, 0x70, 0xae, 0x37, 0x6d, 0xd1, 0xb3, 0x8c, 0x79, 0xd6, + 0x71, 0xea, 0xb1, 0x93, 0x07, 0xaf, 0xc0, 0xa9, 0x0e, 0x56, 0xed, 0x33, 0x77, 0x54, 0x92, 0xd3, + 0x4f, 0x98, 0x3d, 0x58, 0x87, 0xd3, 0x7d, 0x39, 0x30, 0xbd, 0x25, 0xce, 0x3c, 0x71, 0xfa, 0xd8, + 0x7e, 0x59, 0xea, 0x47, 0x02, 0x4c, 0xf5, 0x5c, 0xcb, 0x9e, 0xbc, 0x5d, 0xf0, 0xe6, 0xed, 0xb3, + 0x40, 0xd2, 0x74, 0xaf, 0x15, 0x0f, 0xb5, 0xaa, 0x77, 0xa8, 0xcd, 0xf8, 0x52, 0xfa, 0x60, 0x47, + 0x4a, 0x5f, 0x81, 0xf1, 0x6e, 0x13, 0x62, 0xa9, 0xe2, 0x72, 0xdf, 0x18, 0xf3, 0xd8, 0xb5, 0x29, + 0x89, 0x95, 0x0e, 0x73, 0x4b, 0x7d, 0x4b, 0x80, 0xa9, 0x9e, 0xee, 0x03, 0xcd, 0xc3, 0xb8, 0xcf, + 0x0d, 0x79, 0x2f, 0x7d, 0x78, 0x3c, 0x0b, 0x1d, 0xc7, 0x86, 0x13, 0x02, 0x1f, 0x93, 0x1b, 0x78, + 0x7a, 0xe9, 0xb6, 0x58, 0x46, 0x9e, 0xfa, 0x27, 0x02, 0x9c, 0x7c, 0x1c, 0x1e, 0x4a, 0x43, 0x77, + 0x18, 0xe0, 0x42, 0x75, 0x37, 0x90, 0x6a, 0x93, 0xf0, 0xcd, 0x15, 0x9d, 0x77, 0x31, 0xec, 0x89, + 0xcc, 0x08, 0xbb, 0x4d, 0x68, 0xb9, 0xef, 0x25, 0xc9, 0xf3, 0xaa, 0xd5, 0x40, 0x17, 0x41, 0xec, + 0x50, 0xba, 0xf3, 0xa9, 0x7a, 0xf6, 0xe6, 0x6d, 0xcc, 0xaf, 0x41, 0x9c, 0xfa, 0xa1, 0xe0, 0x5a, + 0x67, 0xef, 0xd5, 0xf8, 0x94, 0x32, 0x4f, 0x7a, 0xcf, 0x19, 0x47, 0x9d, 0x53, 0x27, 0x27, 0x20, + 0xca, 0x42, 0x56, 0x5b, 0xe4, 0x08, 0x05, 0x10, 0x99, 0xbd, 0xc3, 0x09, 0xf9, 0x87, 0x73, 0x06, + 0x9c, 0x70, 0x2c, 0xbb, 0x57, 0xa5, 0xa3, 0x52, 0x8c, 0xc3, 0xe8, 0x75, 0x9f, 0x0a, 0x88, 0x5d, + 0x67, 0x61, 0x4f, 0x43, 0xcc, 0x7b, 0xb6, 0x96, 0x09, 0x0b, 0xfb, 0x6d, 0x84, 0x05, 0x08, 0xd9, + 0x5a, 0x1d, 0x1f, 0xe3, 0xf8, 0x1b, 0xc5, 0x9b, 0x7f, 0x11, 0x22, 0xce, 0x0d, 0x73, 0x14, 0x83, + 0xa1, 0x5c, 0x7e, 0x6f, 0x75, 0x2b, 0xb7, 0x2e, 0x0e, 0xa0, 0x71, 0x18, 0x91, 0xb2, 0x9b, 0xb9, + 0x42, 0x7e, 0x75, 0x4b, 0xce, 0xae, 0x6f, 0x66, 0x45, 0x81, 0x80, 0x32, 0xbb, 0xa5, 0x9d, 0xc2, + 0x76, 0x56, 0x62, 0xa0, 0xc0, 0xfc, 0x06, 0xc4, 0x3c, 0x37, 0xb9, 0xd1, 0x28, 0x40, 0xbe, 0x20, + 0x97, 0x76, 0xd7, 0x76, 0x6e, 0x17, 0xb3, 0x8c, 0xc9, 0x5e, 0xb6, 0x24, 0xe7, 0x0a, 0xf2, 0x6e, + 0x29, 0x2b, 0x4b, 0x84, 0xc9, 0x24, 0x88, 0x1c, 0x94, 0xc9, 0xca, 0xb9, 0xbc, 0x7c, 0xf3, 0x5a, + 0x49, 0x0c, 0xcc, 0x7f, 0x57, 0x00, 0x68, 0xdf, 0xde, 0x43, 0x29, 0x98, 0xcb, 0x64, 0xd9, 0xa7, + 0x4a, 0xb7, 0x0b, 0xeb, 0x04, 0x6f, 0x53, 0xca, 0x96, 0x4a, 0x72, 0x96, 0xfd, 0xd9, 0xbc, 0x25, + 0x0e, 0xa0, 0x13, 0x30, 0xd3, 0x13, 0x67, 0xf3, 0x96, 0x28, 0xa0, 0x04, 0x4c, 0xfb, 0x1a, 0xdb, + 0x84, 0x01, 0x74, 0x12, 0xe2, 0xbe, 0xb6, 0xf5, 0x8c, 0x9c, 0xd9, 0x2a, 0xec, 0xae, 0x93, 0xd6, + 0x20, 0x91, 0xcf, 0xd7, 0x9a, 0x29, 0x66, 0xc5, 0xd0, 0xfc, 0x6b, 0x10, 0xf3, 0x9c, 0x21, 0x47, + 0x71, 0x98, 0xdc, 0xcd, 0xdf, 0xcc, 0x17, 0x6e, 0xe5, 0x9d, 0x4f, 0xa9, 0x96, 0x76, 0x56, 0x77, + 0xc8, 0x88, 0x47, 0x20, 0xca, 0x21, 0xbb, 0x45, 0x51, 0x40, 0x63, 0x10, 0xe3, 0x8f, 0xeb, 0x85, + 0x5b, 0x79, 0x31, 0x80, 0x26, 0x60, 0xcc, 0x01, 0xe4, 0x4a, 0xab, 0x6b, 0x5b, 0xd9, 0x75, 0x31, + 0x38, 0xff, 0x2a, 0x40, 0xfb, 0xac, 0x39, 0x9a, 0x81, 0x89, 0x0e, 0xe6, 0x52, 0x61, 0x8b, 0xf0, + 0x9e, 0x04, 0xd1, 0xf9, 0x70, 0x6b, 0x3e, 0xb7, 0x93, 0x5b, 0xdd, 0x29, 0x48, 0x4c, 0xa1, 0x0e, + 0x5a, 0xb6, 0x54, 0x2c, 0xe4, 0xd7, 0xb3, 0x92, 0x18, 0x98, 0x7f, 0x1d, 0xa2, 0xee, 0x85, 0x17, + 0x14, 0x81, 0x10, 0xa1, 0x10, 0x07, 0x10, 0xc0, 0xe0, 0x6a, 0x66, 0x27, 0xb7, 0x47, 0x66, 0x62, + 0x14, 0x20, 0x53, 0xc8, 0xe7, 0xb3, 0x99, 0x9d, 0x5c, 0x7e, 0x53, 0x0c, 0x10, 0xd1, 0xf9, 0x33, + 0x11, 0x8a, 0x88, 0x9e, 0x2d, 0xed, 0xac, 0xae, 0x6d, 0xe5, 0x4a, 0xd7, 0xb3, 0xeb, 0x62, 0x88, + 0xd0, 0xae, 0x67, 0xb7, 0xb2, 0x3b, 0x59, 0x31, 0x3c, 0xbf, 0x0e, 0x31, 0xcf, 0x0d, 0x0d, 0x32, + 0xcf, 0x54, 0x01, 0x32, 0x17, 0x5c, 0x1c, 0x40, 0x22, 0x0c, 0x33, 0x90, 0xdb, 0x9f, 0x0b, 0x59, + 0x5b, 0xcd, 0xdc, 0xdc, 0x2d, 0x8a, 0x01, 0xa2, 0x55, 0xcf, 0x8b, 0x4e, 0xa2, 0x9b, 0x57, 0x77, + 0x57, 0xb7, 0x72, 0x3b, 0xb7, 0xfd, 0x7c, 0x1c, 0xe0, 0x66, 0xa1, 0xb0, 0xce, 0xf8, 0x38, 0x90, + 0x62, 0xa1, 0x20, 0x89, 0x01, 0xa2, 0x02, 0x07, 0xe2, 0xd1, 0xea, 0x1f, 0x08, 0x10, 0x71, 0x5e, + 0x83, 0xa2, 0x29, 0x18, 0xdf, 0xca, 0xe5, 0x6f, 0xca, 0xc4, 0x30, 0x3d, 0xdc, 0xa7, 0x01, 0xb5, + 0xc1, 0xd9, 0x9d, 0xeb, 0x59, 0x29, 0x9f, 0xdd, 0x11, 0x05, 0x62, 0x5c, 0x6d, 0xf8, 0xad, 0xdc, + 0x46, 0x4e, 0xbe, 0x76, 0x69, 0x49, 0x5e, 0x5c, 0x5c, 0xcd, 0x30, 0x03, 0xea, 0xd9, 0xb8, 0xb6, + 0x99, 0x17, 0x83, 0x44, 0xbc, 0x76, 0xeb, 0x95, 0x4d, 0x31, 0x84, 0x10, 0x8c, 0xfa, 0xf1, 0xc5, + 0x30, 0xd1, 0x98, 0x07, 0xb6, 0x9a, 0x17, 0x07, 0xe7, 0xbf, 0x04, 0xc3, 0xde, 0xdb, 0xf6, 0x44, + 0x86, 0xbd, 0x5c, 0x51, 0x2e, 0x65, 0xb7, 0xc8, 0x14, 0x15, 0xf2, 0x72, 0xae, 0xb8, 0x77, 0x85, + 0xfc, 0x6f, 0x99, 0x09, 0xde, 0xdd, 0x28, 0x0a, 0x3d, 0xe1, 0xcb, 0x62, 0x60, 0xfe, 0x19, 0x88, + 0x79, 0x2e, 0xfd, 0x90, 0xb9, 0x24, 0x73, 0x91, 0xcb, 0x88, 0x03, 0xc4, 0x3a, 0xd6, 0xaf, 0x67, + 0x8a, 0xa2, 0x30, 0xff, 0x55, 0x88, 0xf7, 0xbb, 0x69, 0x8e, 0x4e, 0xc3, 0x09, 0xba, 0x28, 0x4a, + 0x85, 0x8d, 0x9d, 0x5b, 0xab, 0x52, 0x56, 0x2e, 0xec, 0x65, 0x25, 0x29, 0xb7, 0xce, 0xd6, 0x8a, + 0x38, 0x80, 0x92, 0x70, 0xb2, 0x0f, 0x42, 0x3e, 0x7b, 0x2b, 0x4b, 0x2c, 0xb5, 0x3f, 0xc6, 0xc6, + 0x56, 0x36, 0xbb, 0x23, 0x06, 0xe6, 0xbf, 0x21, 0xc0, 0x64, 0xaf, 0xb3, 0xc1, 0xc4, 0x34, 0x76, + 0x8b, 0x9b, 0xd2, 0x2a, 0x5d, 0xe7, 0x8e, 0x8b, 0x9a, 0x82, 0x71, 0x07, 0xb8, 0x23, 0xe5, 0x36, + 0x37, 0xb3, 0x52, 0x96, 0xd8, 0x07, 0x59, 0x3f, 0x2e, 0xae, 0x5c, 0x94, 0x0a, 0x74, 0xed, 0x8b, + 0x01, 0x2f, 0x7e, 0xa6, 0xb0, 0x5d, 0x24, 0xa6, 0x4c, 0x0c, 0x1d, 0xc1, 0xa8, 0x03, 0xde, 0x58, + 0xcd, 0x11, 0xdb, 0x09, 0xcd, 0x97, 0x61, 0xd8, 0x7b, 0x44, 0x94, 0xf4, 0x5f, 0xca, 0xac, 0x6e, + 0xe5, 0xf2, 0x9b, 0x9e, 0xfe, 0x67, 0x60, 0xa2, 0x0d, 0x6c, 0x77, 0x24, 0x10, 0x8e, 0x4e, 0x03, + 0xe7, 0x18, 0xa0, 0xd6, 0xcf, 0x61, 0xeb, 0x85, 0x7c, 0x56, 0x0c, 0xce, 0xff, 0x8e, 0x00, 0xb3, + 0x7d, 0x4f, 0x62, 0x12, 0x9b, 0x2e, 0x6c, 0x6c, 0x6c, 0xe5, 0xf2, 0xd9, 0xb6, 0x4d, 0x0f, 0x78, + 0xa1, 0xd9, 0x3c, 0x59, 0x9b, 0xf9, 0x4d, 0x36, 0xe9, 0x0e, 0x34, 0x53, 0xc8, 0x6f, 0xe4, 0x36, + 0x77, 0x25, 0xda, 0xe7, 0x04, 0x8c, 0xf9, 0xb0, 0xe9, 0x70, 0xa7, 0x60, 0xdc, 0xcf, 0x98, 0xf0, + 0xa0, 0x46, 0xea, 0x80, 0xb9, 0xcc, 0xe1, 0xf9, 0xef, 0x0b, 0x10, 0x75, 0xaf, 0x77, 0x13, 0x9b, + 0x29, 0xe4, 0x09, 0x02, 0x5b, 0x95, 0x45, 0xa9, 0xb0, 0x97, 0x2b, 0xe5, 0x0a, 0x79, 0x26, 0xc3, + 0x08, 0x44, 0x99, 0x16, 0x99, 0x33, 0x89, 0xc1, 0x50, 0x69, 0x67, 0x35, 0xbf, 0xbe, 0x76, 0x5b, + 0x0c, 0x12, 0x4a, 0x47, 0xb3, 0xa4, 0x1f, 0x29, 0x4b, 0x22, 0x4b, 0x69, 0x47, 0x5a, 0x25, 0x16, + 0x2a, 0x86, 0x09, 0xb7, 0x5b, 0xab, 0x39, 0xe2, 0x86, 0xf2, 0x85, 0xf5, 0x6c, 0x49, 0x1c, 0x24, + 0x92, 0xaf, 0x67, 0x33, 0x85, 0xed, 0xed, 0x5c, 0xc9, 0xe9, 0x62, 0x88, 0xac, 0x3b, 0x8e, 0x26, + 0x6f, 0x14, 0x24, 0xd9, 0xc7, 0x24, 0x32, 0xff, 0x2f, 0x05, 0x38, 0xf5, 0xd8, 0x83, 0xa2, 0x74, + 0xe4, 0xc5, 0x2c, 0x23, 0x58, 0x25, 0xee, 0x72, 0x75, 0xfd, 0x36, 0xd3, 0x29, 0xf1, 0x8e, 0x1d, + 0x73, 0x38, 0x0e, 0x23, 0x8e, 0x55, 0x30, 0xc4, 0x00, 0x3a, 0x05, 0xb3, 0x3e, 0x90, 0x8f, 0x22, + 0x88, 0xce, 0xc0, 0xa9, 0x2e, 0xf6, 0x3e, 0x94, 0x10, 0x9a, 0x83, 0x44, 0x37, 0xca, 0x7a, 0x96, + 0xf2, 0x24, 0x0a, 0xbf, 0x01, 0x43, 0xfc, 0x25, 0x35, 0x71, 0xbf, 0x4e, 0x14, 0xd8, 0x2d, 0xad, + 0x89, 0x03, 0x68, 0x18, 0x22, 0xb9, 0xfc, 0x4e, 0x56, 0xca, 0xaf, 0x6e, 0x31, 0xe7, 0xcd, 0xc6, + 0x9f, 0x95, 0x1c, 0xf3, 0x72, 0xa6, 0x9e, 0x4c, 0xb4, 0x18, 0x9c, 0xff, 0x61, 0x08, 0xa6, 0x7b, + 0xbf, 0xdd, 0x23, 0xd1, 0x91, 0x2e, 0x44, 0xe6, 0x9a, 0xe5, 0x8d, 0xad, 0xc2, 0x2d, 0x39, 0x53, + 0xd8, 0xcd, 0x93, 0x08, 0x11, 0x87, 0x49, 0xda, 0x46, 0x81, 0xa5, 0xec, 0xce, 0x6e, 0x51, 0x96, + 0x48, 0x68, 0xa3, 0x56, 0x46, 0x5b, 0x72, 0x79, 0x79, 0xe7, 0xba, 0x54, 0xd8, 0xdd, 0xbc, 0x5e, + 0xdc, 0xdd, 0x11, 0x03, 0x74, 0x19, 0x10, 0x78, 0x61, 0x77, 0xc7, 0xdb, 0x10, 0x6c, 0xaf, 0xf7, + 0xdb, 0xa5, 0x9d, 0xec, 0xb6, 0xd3, 0x5b, 0xb1, 0xb0, 0xce, 0x3b, 0xa3, 0xfa, 0xa0, 0x18, 0x7b, + 0x37, 0xaf, 0x95, 0xba, 0xdb, 0xc3, 0x68, 0x16, 0xa6, 0x68, 0xbb, 0xd4, 0xd9, 0xeb, 0xa0, 0x3b, + 0x06, 0xa9, 0xab, 0xe3, 0x21, 0xe2, 0x39, 0x59, 0xc7, 0xdd, 0xe2, 0x46, 0x88, 0x15, 0xb5, 0x1b, + 0x3b, 0x48, 0xa3, 0xee, 0x60, 0xf2, 0x2c, 0xf6, 0xef, 0xca, 0xbb, 0xa5, 0xd5, 0xcd, 0xac, 0x08, + 0x6e, 0x7f, 0xb4, 0x61, 0x3b, 0xbb, 0x5d, 0x90, 0x6e, 0xf3, 0xb6, 0x98, 0xab, 0x33, 0xda, 0xb6, + 0x9e, 0x2b, 0xdd, 0xe4, 0x2d, 0xc3, 0xae, 0xd7, 0xa4, 0x2d, 0xdd, 0xea, 0x1e, 0x21, 0x36, 0xd5, + 0x46, 0xe8, 0xd4, 0xf9, 0xa8, 0x3b, 0x92, 0x3c, 0xcb, 0x70, 0xbc, 0xb2, 0x8e, 0xb9, 0x23, 0xa1, + 0x8d, 0x1d, 0x23, 0x11, 0x5d, 0xdd, 0x32, 0xd2, 0x8d, 0x0e, 0xea, 0x71, 0xbf, 0x68, 0xb9, 0x8d, + 0x4e, 0x06, 0x68, 0xed, 0x1b, 0xc2, 0xfb, 0x3f, 0x9e, 0x1b, 0xf8, 0xe0, 0xc7, 0x73, 0x03, 0x3f, + 0xf9, 0xf1, 0x9c, 0xf0, 0xd6, 0xa3, 0x39, 0xe1, 0xf7, 0x1f, 0xcd, 0x09, 0xff, 0xfa, 0xd1, 0x9c, + 0xf0, 0xfe, 0xa3, 0x39, 0xe1, 0x83, 0x47, 0x73, 0xc2, 0x9f, 0x3e, 0x9a, 0x13, 0xfe, 0xec, 0xd1, + 0xdc, 0xc0, 0x4f, 0x1e, 0xcd, 0x09, 0xdf, 0xf9, 0x70, 0x6e, 0xe0, 0xdd, 0x0f, 0xe7, 0x84, 0xf7, + 0x3f, 0x9c, 0x1b, 0xf8, 0xe0, 0xc3, 0xb9, 0x81, 0x2f, 0x5e, 0xaf, 0xea, 0xc6, 0x61, 0x75, 0xc1, + 0xf9, 0x40, 0xc9, 0x42, 0xd3, 0xba, 0x48, 0x7f, 0xec, 0xeb, 0x66, 0xfd, 0x02, 0x4d, 0xaf, 0x55, + 0x6c, 0x5e, 0x70, 0x9a, 0x2f, 0x1a, 0xe5, 0xaa, 0x7e, 0x11, 0xdf, 0xb5, 0x9d, 0x7f, 0x0e, 0xb0, + 0xfd, 0xaf, 0x02, 0x96, 0x07, 0x69, 0xf6, 0x7a, 0xf9, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x8e, + 0x9c, 0xb7, 0xf8, 0x32, 0x70, 0x00, 0x00, } func (x SiteType) String() string { @@ -9392,6 +9430,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if this.BgpPeerAddressV6 != that1.BgpPeerAddressV6 { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType) Equal(that interface{}) bool { @@ -9747,6 +9788,14 @@ func (this *GetSpecType) Equal(that interface{}) bool { return false } } + if len(this.MainNodes) != len(that1.MainNodes) { + return false + } + for i := range this.MainNodes { + if !this.MainNodes[i].Equal(that1.MainNodes[i]) { + return false + } + } if this.MultusEnabled != that1.MultusEnabled { return false } @@ -9985,6 +10034,9 @@ func (this *TunnelConnectionStatus) Equal(that interface{}) bool { if !this.SslTunnelFlapReason.Equal(that1.SslTunnelFlapReason) { return false } + if this.VerNodeIp != that1.VerNodeIp { + return false + } return true } func (this *VolterraSoftwareStatus) Equal(that interface{}) bool { @@ -11871,7 +11923,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 73) + s := make([]string, 0, 74) s = append(s, "&site.GlobalSpecType{") s = append(s, "SiteType: "+fmt.Sprintf("%#v", this.SiteType)+",\n") s = append(s, "SiteSubtype: "+fmt.Sprintf("%#v", this.SiteSubtype)+",\n") @@ -12020,6 +12072,9 @@ func (this *GlobalSpecType) GoString() string { s = append(s, "PrivateConnectivity: "+fmt.Sprintf("%#v", this.PrivateConnectivity)+",\n") } s = append(s, "BgpPeerAddressV6: "+fmt.Sprintf("%#v", this.BgpPeerAddressV6)+",\n") + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -12104,7 +12159,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 44) + s := make([]string, 0, 45) s = append(s, "&site.GetSpecType{") s = append(s, "SiteType: "+fmt.Sprintf("%#v", this.SiteType)+",\n") s = append(s, "Address: "+fmt.Sprintf("%#v", this.Address)+",\n") @@ -12156,6 +12211,9 @@ func (this *GetSpecType) GoString() string { s = append(s, "SiteToSiteIpsecConnectivity: "+fmt.Sprintf("%#v", this.SiteToSiteIpsecConnectivity)+",\n") } s = append(s, "IpsecSslNodesFqdn: "+fmt.Sprintf("%#v", this.IpsecSslNodesFqdn)+",\n") + if this.MainNodes != nil { + s = append(s, "MainNodes: "+fmt.Sprintf("%#v", this.MainNodes)+",\n") + } s = append(s, "MultusEnabled: "+fmt.Sprintf("%#v", this.MultusEnabled)+",\n") if this.PrivateConnectivity != nil { s = append(s, "PrivateConnectivity: "+fmt.Sprintf("%#v", this.PrivateConnectivity)+",\n") @@ -12245,7 +12303,7 @@ func (this *TunnelConnectionStatus) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 14) + s := make([]string, 0, 15) s = append(s, "&site.TunnelConnectionStatus{") s = append(s, "Url: "+fmt.Sprintf("%#v", this.Url)+",\n") s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") @@ -12261,6 +12319,7 @@ func (this *TunnelConnectionStatus) GoString() string { if this.SslTunnelFlapReason != nil { s = append(s, "SslTunnelFlapReason: "+fmt.Sprintf("%#v", this.SslTunnelFlapReason)+",\n") } + s = append(s, "VerNodeIp: "+fmt.Sprintf("%#v", this.VerNodeIp)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -13378,6 +13437,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xca + } if len(m.BgpPeerAddressV6) > 0 { i -= len(m.BgpPeerAddressV6) copy(dAtA[i:], m.BgpPeerAddressV6) @@ -14773,6 +14846,22 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xf8 } + if len(m.MainNodes) > 0 { + for iNdEx := len(m.MainNodes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.MainNodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xf2 + } + } if len(m.IpsecSslNodesFqdn) > 0 { for iNdEx := len(m.IpsecSslNodesFqdn) - 1; iNdEx >= 0; iNdEx-- { i -= len(m.IpsecSslNodesFqdn[iNdEx]) @@ -15415,6 +15504,13 @@ func (m *TunnelConnectionStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) _ = i var l int _ = l + if len(m.VerNodeIp) > 0 { + i -= len(m.VerNodeIp) + copy(dAtA[i:], m.VerNodeIp) + i = encodeVarintTypes(dAtA, i, uint64(len(m.VerNodeIp))) + i-- + dAtA[i] = 0x5a + } if m.SslTunnelFlapReason != nil { { size, err := m.SslTunnelFlapReason.MarshalToSizedBuffer(dAtA[:i]) @@ -18727,6 +18823,10 @@ func (m *GlobalSpecType) Size() (n int) { if l > 0 { n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -19066,6 +19166,12 @@ func (m *GetSpecType) Size() (n int) { n += 2 + l + sovTypes(uint64(l)) } } + if len(m.MainNodes) > 0 { + for _, e := range m.MainNodes { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } if m.MultusEnabled { n += 3 } @@ -19275,6 +19381,10 @@ func (m *TunnelConnectionStatus) Size() (n int) { l = m.SslTunnelFlapReason.Size() n += 1 + l + sovTypes(uint64(l)) } + l = len(m.VerNodeIp) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } return n } @@ -20807,6 +20917,7 @@ func (this *GlobalSpecType) String() string { `OutsideNameserverV6:` + fmt.Sprintf("%v", this.OutsideNameserverV6) + `,`, `PrivateConnectivity:` + strings.Replace(fmt.Sprintf("%v", this.PrivateConnectivity), "PrivateConnectivityType", "views.PrivateConnectivityType", 1) + `,`, `BgpPeerAddressV6:` + fmt.Sprintf("%v", this.BgpPeerAddressV6) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -20904,6 +21015,11 @@ func (this *GetSpecType) String() string { repeatedStringForSiteToSiteIpsecConnectivity += strings.Replace(f.String(), "SiteToSiteTunnelConnectivity", "SiteToSiteTunnelConnectivity", 1) + "," } repeatedStringForSiteToSiteIpsecConnectivity += "}" + repeatedStringForMainNodes := "[]*Node{" + for _, f := range this.MainNodes { + repeatedStringForMainNodes += strings.Replace(f.String(), "Node", "Node", 1) + "," + } + repeatedStringForMainNodes += "}" s := strings.Join([]string{`&GetSpecType{`, `SiteType:` + fmt.Sprintf("%v", this.SiteType) + `,`, `Address:` + fmt.Sprintf("%v", this.Address) + `,`, @@ -20937,6 +21053,7 @@ func (this *GetSpecType) String() string { `VmEnabled:` + fmt.Sprintf("%v", this.VmEnabled) + `,`, `SiteToSiteIpsecConnectivity:` + repeatedStringForSiteToSiteIpsecConnectivity + `,`, `IpsecSslNodesFqdn:` + fmt.Sprintf("%v", this.IpsecSslNodesFqdn) + `,`, + `MainNodes:` + repeatedStringForMainNodes + `,`, `MultusEnabled:` + fmt.Sprintf("%v", this.MultusEnabled) + `,`, `InsideVipV6:` + fmt.Sprintf("%v", this.InsideVipV6) + `,`, `OutsideVipV6:` + fmt.Sprintf("%v", this.OutsideVipV6) + `,`, @@ -21049,6 +21166,7 @@ func (this *TunnelConnectionStatus) String() string { `TunnelName:` + fmt.Sprintf("%v", this.TunnelName) + `,`, `IkeTunnelFlapReason:` + strings.Replace(this.IkeTunnelFlapReason.String(), "TunnelFlapReason", "TunnelFlapReason", 1) + `,`, `SslTunnelFlapReason:` + strings.Replace(this.SslTunnelFlapReason.String(), "TunnelFlapReason", "TunnelFlapReason", 1) + `,`, + `VerNodeIp:` + fmt.Sprintf("%v", this.VerNodeIp) + `,`, `}`, }, "") return s @@ -25006,6 +25124,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.BgpPeerAddressV6 = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 169: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -27467,6 +27621,40 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.IpsecSslNodesFqdn = append(m.IpsecSslNodesFqdn, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 158: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MainNodes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MainNodes = append(m.MainNodes, &Node{}) + if err := m.MainNodes[len(m.MainNodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 159: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field MultusEnabled", wireType) @@ -28936,6 +29124,38 @@ func (m *TunnelConnectionStatus) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VerNodeIp", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VerNodeIp = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/site/types.vesmsg.go b/pbgo/extschema/schema/site/types.vesmsg.go index 369ed67a6..dbacd7d78 100644 --- a/pbgo/extschema/schema/site/types.vesmsg.go +++ b/pbgo/extschema/schema/site/types.vesmsg.go @@ -4320,6 +4320,18 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["main_nodes"]; exists { + + vOpts := append(opts, db.WithValidateField("main_nodes")) + for idx, item := range m.GetMainNodes() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["multus_enabled"]; exists { vOpts := append(opts, db.WithValidateField("multus_enabled")) @@ -6059,6 +6071,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["launch_ike_in_namespace"]; exists { vOpts := append(opts, db.WithValidateField("launch_ike_in_namespace")) @@ -6836,6 +6857,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["default_underlay_network"] = DefaultUnderlayNetworkTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -9178,7 +9201,7 @@ var DefaultPublishVIPParamsPerAzValidator = func() *ValidatePublishVIPParamsPerA vrhAzName := v.AzNameValidationRuleHandler rulesAzName := map[string]string{ - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$", + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$", } vFn, err = vrhAzName(rulesAzName) if err != nil { @@ -10933,6 +10956,15 @@ func (v *ValidateTunnelConnectionStatus) Validate(ctx context.Context, pm interf } + if fv, exists := v.FldValidators["verNodeIp"]; exists { + + vOpts := append(opts, db.WithValidateField("verNodeIp")) + if err := fv(ctx, m.GetVerNodeIp(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["verNodeName"]; exists { vOpts := append(opts, db.WithValidateField("verNodeName")) @@ -11950,6 +11982,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.IpsecSslNodesFqdn = f.GetIpsecSslNodesFqdn() m.LocalK8SAccessEnabled = f.GetLocalK8SAccessEnabled() + m.MainNodes = f.GetMainNodes() m.MultusEnabled = f.GetMultusEnabled() m.OperatingSystemVersion = f.GetOperatingSystemVersion() m.OutsideNameserver = f.GetOutsideNameserver() @@ -12007,6 +12040,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.IpsecSslNodesFqdn = m1.IpsecSslNodesFqdn f.LocalK8SAccessEnabled = m1.LocalK8SAccessEnabled + f.MainNodes = m1.MainNodes f.MultusEnabled = m1.MultusEnabled f.OperatingSystemVersion = m1.OperatingSystemVersion f.OutsideNameserver = m1.OutsideNameserver diff --git a/pbgo/extschema/schema/site_mesh_group/crudapi/api.vesapi.go b/pbgo/extschema/schema/site_mesh_group/crudapi/api.vesapi.go index 21f640891..226fd9663 100644 --- a/pbgo/extschema/schema/site_mesh_group/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/site_mesh_group/crudapi/api.vesapi.go @@ -3049,10 +3049,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/site_mesh_group/object.pb.go b/pbgo/extschema/schema/site_mesh_group/object.pb.go index e65e87c7b..555c08d7e 100644 --- a/pbgo/extschema/schema/site_mesh_group/object.pb.go +++ b/pbgo/extschema/schema/site_mesh_group/object.pb.go @@ -246,47 +246,49 @@ func init() { } var fileDescriptor_7cbf8cd8b047667b = []byte{ - // 639 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x41, 0x4f, 0x13, 0x41, - 0x14, 0xc7, 0x3b, 0x6d, 0x29, 0x64, 0x20, 0x40, 0x96, 0xc4, 0xac, 0x28, 0x13, 0x52, 0x0f, 0xa2, - 0x71, 0x77, 0x0d, 0xc6, 0x03, 0x60, 0x34, 0x01, 0x23, 0x89, 0x81, 0x18, 0x5b, 0x13, 0x13, 0x2f, - 0x9b, 0xdd, 0xed, 0xeb, 0x76, 0xa4, 0xdb, 0x99, 0xcc, 0xcc, 0x2e, 0x70, 0x30, 0x31, 0x7e, 0x02, - 0xf9, 0x16, 0xc6, 0xf8, 0x21, 0xc0, 0x93, 0x27, 0x43, 0x38, 0x71, 0x94, 0xed, 0xc5, 0x23, 0x1f, - 0xc1, 0x74, 0xd6, 0x25, 0xb4, 0x34, 0x68, 0x7a, 0x9b, 0xd9, 0xf7, 0xfb, 0xff, 0xf7, 0xbd, 0x79, - 0x33, 0x0f, 0xdf, 0x4f, 0x40, 0xda, 0x94, 0x39, 0x32, 0x68, 0x41, 0xe4, 0x39, 0x92, 0x2a, 0x70, - 0x23, 0x90, 0x2d, 0x37, 0x14, 0x2c, 0xe6, 0x0e, 0xf3, 0xdf, 0x43, 0xa0, 0x6c, 0x2e, 0x98, 0x62, - 0xc6, 0x42, 0xc6, 0xda, 0x19, 0x6b, 0x0f, 0xb0, 0xf3, 0x56, 0x48, 0x55, 0x2b, 0xf6, 0xed, 0x80, - 0x45, 0x4e, 0xc8, 0x42, 0xe6, 0x68, 0x95, 0x1f, 0x37, 0xf5, 0x4e, 0x6f, 0xf4, 0x2a, 0x73, 0x9b, - 0xbf, 0xd5, 0xff, 0x67, 0xc6, 0x15, 0x65, 0x1d, 0xf9, 0x37, 0xb8, 0xd0, 0x1f, 0xe4, 0x89, 0x72, - 0xd5, 0x3e, 0x87, 0x3c, 0x7c, 0xef, 0xfa, 0xac, 0x2f, 0xa3, 0x37, 0xfb, 0xd1, 0xcb, 0xa1, 0x6a, - 0x7f, 0x28, 0x01, 0x09, 0x9d, 0xa4, 0x3f, 0x91, 0xea, 0x41, 0x19, 0x57, 0x5e, 0xe9, 0x43, 0x30, - 0x56, 0xf0, 0x44, 0x04, 0xca, 0x6b, 0x78, 0xca, 0x33, 0xd1, 0x22, 0x5a, 0x9a, 0x5c, 0x5e, 0xb0, - 0xfb, 0x4f, 0x24, 0x03, 0xb7, 0x41, 0x79, 0x6f, 0xf6, 0x39, 0xd4, 0x2e, 0x70, 0x63, 0x0b, 0xcf, - 0xc8, 0x7d, 0xa9, 0x20, 0x72, 0x2f, 0x1c, 0x8a, 0xda, 0xe1, 0xce, 0x80, 0x43, 0x5d, 0x53, 0x03, - 0x3e, 0xd3, 0x99, 0x76, 0x3b, 0x77, 0x5b, 0xc3, 0x65, 0xc9, 0x21, 0x30, 0x4b, 0xda, 0xe2, 0xae, - 0x7d, 0x6d, 0x5b, 0xec, 0x3a, 0x87, 0x40, 0xdb, 0x68, 0xd1, 0xea, 0x61, 0xf1, 0xd3, 0xb3, 0x4a, - 0x66, 0xf8, 0xfd, 0xc8, 0x2c, 0xce, 0xa2, 0x93, 0x23, 0xf3, 0x5b, 0x11, 0xaf, 0xe0, 0xd2, 0x26, - 0x28, 0x63, 0xb9, 0xf9, 0x78, 0x2f, 0xb0, 0x24, 0x04, 0xb1, 0x80, 0x9e, 0x87, 0xe5, 0x7b, 0x92, - 0x06, 0x56, 0xc4, 0x3a, 0x54, 0x31, 0xf1, 0x60, 0x31, 0x01, 0x69, 0x51, 0x66, 0x75, 0x40, 0xed, - 0x32, 0xb1, 0x63, 0x09, 0xf0, 0x1a, 0x78, 0x0d, 0x8f, 0xd7, 0x80, 0xb7, 0xbd, 0x00, 0x8c, 0x87, - 0xc3, 0xe5, 0xb1, 0x84, 0xab, 0xda, 0x5d, 0x41, 0x15, 0xe0, 0x55, 0x5c, 0xd9, 0x10, 0xe0, 0xa9, - 0x11, 0xb5, 0xcf, 0xa1, 0x0d, 0x23, 0x6a, 0xcb, 0x5b, 0x54, 0x8e, 0x54, 0x70, 0xb5, 0x86, 0x27, - 0xf2, 0x43, 0x35, 0x5e, 0xe0, 0xf1, 0x30, 0x70, 0x75, 0x3b, 0xb2, 0x8e, 0x5a, 0xff, 0x68, 0xc7, - 0x66, 0x9b, 0xf9, 0x5e, 0xfb, 0xa2, 0x29, 0x95, 0x30, 0xe8, 0xad, 0xab, 0x3f, 0x8b, 0x78, 0xaa, - 0xae, 0x3c, 0x15, 0xcb, 0xff, 0xbe, 0x6d, 0x19, 0x3e, 0xe4, 0xb6, 0xbd, 0xc6, 0x93, 0xd9, 0xbb, - 0x75, 0x05, 0x34, 0xa5, 0x59, 0x5c, 0x2c, 0x2d, 0x4d, 0x2e, 0xdf, 0x1e, 0x7a, 0x57, 0x6b, 0xd0, - 0xec, 0x89, 0xd7, 0x8d, 0xaf, 0x1f, 0x66, 0x06, 0x32, 0xad, 0x61, 0x96, 0x23, 0xd2, 0x78, 0x82, - 0x71, 0xc0, 0x3a, 0x0d, 0xaa, 0x9f, 0x86, 0x59, 0x1a, 0xea, 0xb8, 0x91, 0x03, 0x3a, 0x9d, 0x4b, - 0xbc, 0xf1, 0x16, 0xdf, 0x18, 0x30, 0x77, 0xa5, 0x4e, 0xde, 0x1c, 0xd3, 0x95, 0x55, 0x07, 0x2b, - 0xa3, 0x0a, 0xb6, 0x41, 0xb6, 0x36, 0x7b, 0x68, 0x56, 0x66, 0x6d, 0x4e, 0x5e, 0xfd, 0xb8, 0x3a, - 0x77, 0xf2, 0x74, 0x16, 0x4f, 0xe3, 0xa9, 0xbc, 0x74, 0x3b, 0xa6, 0x8d, 0x97, 0xe5, 0x89, 0xf2, - 0xec, 0xd8, 0xfa, 0x01, 0x3a, 0x3e, 0x23, 0x85, 0xd3, 0x33, 0x52, 0x38, 0x3f, 0x23, 0xe8, 0x63, - 0x4a, 0xd0, 0x97, 0x94, 0xa0, 0x1f, 0x29, 0x41, 0xc7, 0x29, 0x41, 0xa7, 0x29, 0x41, 0xbf, 0x52, - 0x82, 0x7e, 0xa7, 0xa4, 0x70, 0x9e, 0x12, 0xf4, 0xb9, 0x4b, 0x0a, 0x87, 0x5d, 0x82, 0x8e, 0xbb, - 0xa4, 0x70, 0xda, 0x25, 0x85, 0x77, 0xf5, 0x90, 0xf1, 0x9d, 0xd0, 0x4e, 0x58, 0x5b, 0x81, 0x10, - 0x9e, 0x1d, 0x4b, 0x47, 0x2f, 0x9a, 0x4c, 0x44, 0x16, 0x17, 0x2c, 0xa1, 0x0d, 0x10, 0x56, 0x1e, - 0x76, 0xb8, 0x1f, 0x32, 0x07, 0xf6, 0x54, 0x3e, 0x90, 0x86, 0xce, 0x25, 0xbf, 0xa2, 0x67, 0xca, - 0xa3, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xf6, 0x1a, 0x64, 0xbf, 0x75, 0x05, 0x00, 0x00, + // 660 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x4c, + 0x18, 0xc7, 0xb7, 0xbb, 0xcb, 0x42, 0x06, 0x02, 0xa4, 0x24, 0x6f, 0xfa, 0xf2, 0xbe, 0x4c, 0xc8, + 0x7a, 0x10, 0x8d, 0x6d, 0x13, 0x8c, 0x07, 0xd1, 0x68, 0x02, 0x46, 0x12, 0x03, 0x21, 0xee, 0x92, + 0x18, 0xd1, 0xa4, 0x99, 0xb6, 0xcf, 0x76, 0x47, 0xb6, 0x3b, 0xcd, 0xcc, 0xb4, 0xc0, 0xc1, 0xc4, + 0xf8, 0x09, 0xf4, 0x5b, 0x18, 0x8f, 0x7e, 0x02, 0xf1, 0xe4, 0x45, 0x43, 0x38, 0x71, 0x74, 0xbb, + 0x17, 0x8f, 0x7c, 0x04, 0xb3, 0x53, 0x8b, 0x6c, 0xdd, 0xa0, 0x17, 0x6e, 0xd3, 0xfe, 0xff, 0xcf, + 0xaf, 0xcf, 0x33, 0x7d, 0x9e, 0x07, 0x5d, 0x4f, 0x40, 0x58, 0x94, 0xd9, 0xc2, 0x6b, 0x43, 0x48, + 0x6c, 0x41, 0x25, 0x38, 0x21, 0x88, 0xb6, 0x13, 0x70, 0x16, 0x47, 0x36, 0x73, 0x5f, 0x80, 0x27, + 0xad, 0x88, 0x33, 0xc9, 0xf4, 0x85, 0xcc, 0x6b, 0x65, 0x5e, 0xab, 0xe0, 0x9d, 0x37, 0x03, 0x2a, + 0xdb, 0xb1, 0x6b, 0x79, 0x2c, 0xb4, 0x03, 0x16, 0x30, 0x5b, 0x45, 0xb9, 0x71, 0x4b, 0x3d, 0xa9, + 0x07, 0x75, 0xca, 0x68, 0xf3, 0xff, 0x0d, 0x7f, 0x99, 0x45, 0x92, 0xb2, 0xae, 0xf8, 0x29, 0x2e, + 0x0c, 0x8b, 0x51, 0x22, 0x1d, 0x79, 0x10, 0x41, 0x2e, 0x5f, 0xbb, 0x38, 0xeb, 0xf3, 0xd6, 0x7f, + 0x87, 0xad, 0xe7, 0xa5, 0xfa, 0xb0, 0x94, 0x80, 0x80, 0x6e, 0x32, 0x9c, 0x48, 0xfd, 0xc3, 0x18, + 0xaa, 0x6d, 0xa9, 0x4b, 0xd0, 0x6f, 0xa3, 0x89, 0x10, 0x24, 0xf1, 0x89, 0x24, 0x86, 0xb6, 0xa8, + 0x2d, 0x4d, 0x2e, 0x2f, 0x58, 0xc3, 0x37, 0x92, 0x19, 0x37, 0x41, 0x92, 0xed, 0x83, 0x08, 0x1a, + 0x67, 0x76, 0x7d, 0x03, 0xcd, 0x88, 0x03, 0x21, 0x21, 0x74, 0xce, 0x08, 0x65, 0x45, 0xb8, 0x52, + 0x20, 0x34, 0x95, 0xab, 0xc0, 0x99, 0xce, 0x62, 0x37, 0x73, 0xda, 0x1d, 0x54, 0x15, 0x11, 0x78, + 0x46, 0x45, 0x21, 0xae, 0x5a, 0x17, 0xfe, 0x16, 0xab, 0x19, 0x81, 0xa7, 0x30, 0x2a, 0x68, 0xa5, + 0x57, 0x79, 0x7d, 0xbf, 0x96, 0x01, 0x3f, 0x1d, 0x1a, 0xe5, 0x59, 0xed, 0xf8, 0xd0, 0xf8, 0x52, + 0x41, 0xcf, 0x50, 0x65, 0x1d, 0xa4, 0xbe, 0xdd, 0xba, 0xb5, 0xef, 0x99, 0x02, 0xbc, 0x98, 0xc3, + 0x80, 0x61, 0xba, 0x44, 0x50, 0xcf, 0x0c, 0x59, 0x97, 0x4a, 0xc6, 0x6f, 0x2c, 0x16, 0x65, 0x21, + 0x49, 0xd7, 0x27, 0xdc, 0xff, 0xe5, 0x48, 0x40, 0x98, 0x94, 0x99, 0x5d, 0x90, 0x7b, 0x8c, 0xef, + 0x9a, 0x1c, 0x88, 0x8f, 0x76, 0xd0, 0x78, 0x03, 0xa2, 0x0e, 0xf1, 0x40, 0xdf, 0x1a, 0xfd, 0x81, + 0x58, 0xc0, 0x45, 0xf4, 0x4c, 0x2e, 0xa0, 0xf7, 0x38, 0x95, 0x80, 0x9e, 0xa2, 0xda, 0x1a, 0x07, + 0x22, 0x2f, 0x07, 0xfd, 0x00, 0x3a, 0x70, 0x19, 0xe8, 0xe7, 0xa8, 0xba, 0x41, 0xc5, 0x25, 0xdd, + 0x77, 0xbd, 0x81, 0x26, 0xf2, 0xbf, 0xae, 0x3f, 0x44, 0xe3, 0x81, 0xe7, 0xa8, 0x7e, 0xc9, 0x5a, + 0xce, 0xfc, 0x43, 0xbf, 0xac, 0x77, 0x98, 0x4b, 0x3a, 0x67, 0x5d, 0x53, 0x0b, 0xbc, 0xc1, 0xb9, + 0xfe, 0xb5, 0x8c, 0xa6, 0x9a, 0x92, 0xc8, 0x58, 0xfc, 0xf5, 0x38, 0x64, 0xf6, 0x11, 0xe3, 0xf0, + 0x18, 0x4d, 0x66, 0x8b, 0xc5, 0xe1, 0xd0, 0x12, 0x46, 0x79, 0xb1, 0xb2, 0x34, 0xb9, 0xfc, 0xff, + 0xc8, 0x61, 0x6a, 0x40, 0x6b, 0x10, 0xbc, 0xaa, 0xbf, 0x7f, 0x39, 0x53, 0xc8, 0xb4, 0x81, 0x58, + 0x6e, 0x11, 0xfa, 0x5d, 0x84, 0x3c, 0xd6, 0xf5, 0xa9, 0x9a, 0x5d, 0xa3, 0x32, 0x92, 0xb8, 0x96, + 0x1b, 0x54, 0x3a, 0xe7, 0xfc, 0xfa, 0x13, 0xf4, 0x4f, 0x01, 0xee, 0x08, 0x95, 0xbc, 0x31, 0xa6, + 0x2a, 0xab, 0x17, 0x2b, 0xa3, 0x12, 0x36, 0x41, 0xb4, 0xd7, 0x07, 0xd6, 0xac, 0xcc, 0xc6, 0x9c, + 0xf8, 0xfd, 0xe5, 0xca, 0xdc, 0xf1, 0xbd, 0x59, 0x34, 0x8d, 0xa6, 0xf2, 0xd2, 0xad, 0x98, 0xfa, + 0x8f, 0xaa, 0x13, 0xd5, 0xd9, 0xb1, 0xd5, 0xb7, 0xda, 0x51, 0x0f, 0x97, 0x4e, 0x7a, 0xb8, 0x74, + 0xda, 0xc3, 0xda, 0xab, 0x14, 0x6b, 0xef, 0x52, 0xac, 0x7d, 0x4e, 0xb1, 0x76, 0x94, 0x62, 0xed, + 0x24, 0xc5, 0xda, 0xb7, 0x14, 0x6b, 0xdf, 0x53, 0x5c, 0x3a, 0x4d, 0xb1, 0xf6, 0xa6, 0x8f, 0x4b, + 0x1f, 0xfb, 0x58, 0x3b, 0xea, 0xe3, 0xd2, 0x49, 0x1f, 0x97, 0x76, 0x9a, 0x01, 0x8b, 0x76, 0x03, + 0x2b, 0x61, 0x1d, 0x09, 0x9c, 0x13, 0x2b, 0x16, 0xb6, 0x3a, 0xb4, 0x18, 0x0f, 0xcd, 0x88, 0xb3, + 0x84, 0xfa, 0xc0, 0xcd, 0x5c, 0xb6, 0x23, 0x37, 0x60, 0x36, 0xec, 0xcb, 0x7c, 0x63, 0x8e, 0x5c, + 0x9c, 0x6e, 0x4d, 0x2d, 0xbd, 0x9b, 0x3f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x98, 0x8c, 0xca, 0xf4, + 0x16, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/site_mesh_group/public_crudapi.pb.go b/pbgo/extschema/schema/site_mesh_group/public_crudapi.pb.go index fd3c22397..90cc93d78 100644 --- a/pbgo/extschema/schema/site_mesh_group/public_crudapi.pb.go +++ b/pbgo/extschema/schema/site_mesh_group/public_crudapi.pb.go @@ -1083,109 +1083,110 @@ func init() { } var fileDescriptor_b9e94f6d78f47db6 = []byte{ - // 1619 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x6c, 0x1b, 0x4d, - 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x67, 0xbf, 0xe1, 0xfb, 0xf2, 0x39, 0xa6, 0xb5, 0x8c, - 0xbf, 0x0a, 0xa5, 0x6e, 0xbd, 0xdb, 0x86, 0x3f, 0x6a, 0x53, 0x28, 0x75, 0x92, 0x4d, 0x48, 0x48, - 0x9a, 0x68, 0xed, 0x56, 0x08, 0x09, 0xad, 0xd6, 0xeb, 0x67, 0x77, 0x89, 0xed, 0x5d, 0x76, 0xc6, - 0x4e, 0x23, 0x14, 0x09, 0xf5, 0x00, 0x57, 0x24, 0xc4, 0x01, 0x04, 0x12, 0x17, 0x24, 0x6e, 0x48, - 0x9c, 0x90, 0x72, 0xe9, 0x01, 0xa9, 0x55, 0x0f, 0xa8, 0x80, 0x90, 0x7a, 0x41, 0xa2, 0x0e, 0x87, - 0x1e, 0x0b, 0x57, 0x2e, 0x68, 0x67, 0x76, 0x5d, 0xdb, 0xf1, 0x97, 0xd8, 0x69, 0x4e, 0xde, 0x99, - 0xf7, 0xde, 0x6f, 0xde, 0x6f, 0xde, 0x1f, 0xbf, 0x5d, 0xbc, 0xd8, 0x06, 0x2a, 0x5b, 0xb6, 0x42, - 0xcd, 0xc7, 0xd0, 0x30, 0x14, 0x6a, 0x31, 0xd0, 0x1b, 0x40, 0x1f, 0xeb, 0x35, 0xd7, 0x6e, 0x39, - 0x8a, 0xd3, 0x2a, 0xd7, 0x2d, 0x53, 0x37, 0xdd, 0x56, 0xc5, 0x70, 0x2c, 0xd9, 0x71, 0x6d, 0x66, - 0x93, 0x2b, 0xc2, 0x46, 0x16, 0x36, 0xf2, 0x80, 0x4d, 0x2a, 0x5f, 0xb3, 0xd8, 0xe3, 0x56, 0x59, - 0x36, 0xed, 0x86, 0x52, 0xb3, 0x6b, 0xb6, 0xc2, 0xad, 0xca, 0xad, 0x2a, 0x5f, 0xf1, 0x05, 0x7f, - 0x12, 0x68, 0xa9, 0xcb, 0x35, 0xdb, 0xae, 0xd5, 0x41, 0x31, 0x1c, 0x4b, 0x31, 0x9a, 0x4d, 0x9b, - 0x19, 0xcc, 0xb2, 0x9b, 0xd4, 0x97, 0x7e, 0xd1, 0x97, 0x76, 0x31, 0xa0, 0xe1, 0xb0, 0x03, 0x5f, - 0x98, 0xea, 0x77, 0x1e, 0x5c, 0xd7, 0x76, 0xbb, 0x86, 0xfd, 0x32, 0xdb, 0xe9, 0x45, 0xbd, 0xd2, - 0x2f, 0x74, 0xda, 0x4c, 0x67, 0x07, 0x0e, 0x04, 0xe2, 0xdc, 0xe9, 0x97, 0x62, 0x97, 0x7f, 0x00, - 0x26, 0xf3, 0x75, 0xaf, 0x9d, 0xae, 0xdb, 0x0b, 0x3b, 0xdf, 0xaf, 0xda, 0x2b, 0xca, 0xf6, 0x8b, - 0xda, 0x40, 0xa1, 0xd9, 0x1e, 0x70, 0x3a, 0x33, 0xa0, 0x63, 0xc1, 0xbe, 0xde, 0xa7, 0x91, 0xfd, - 0x03, 0xc2, 0xd3, 0x2b, 0x2e, 0x18, 0x0c, 0x34, 0xf8, 0x61, 0x0b, 0x28, 0x23, 0xdf, 0xc2, 0xb1, - 0x06, 0x30, 0xa3, 0x62, 0x30, 0x23, 0x89, 0x32, 0x68, 0x21, 0xb1, 0xf8, 0x99, 0xdc, 0x1f, 0xbd, - 0x1d, 0x4e, 0x46, 0x58, 0x6d, 0x03, 0x33, 0x4a, 0x07, 0x0e, 0x68, 0x5d, 0x23, 0xa2, 0xe1, 0x08, - 0x75, 0xc0, 0x4c, 0x86, 0xb8, 0x71, 0x5e, 0x3e, 0x35, 0xf4, 0xb2, 0x80, 0x29, 0x3a, 0x60, 0x7a, - 0x30, 0xcb, 0xb3, 0xbf, 0x3a, 0x9c, 0xf2, 0xac, 0xe5, 0x9a, 0xa9, 0x7b, 0xbf, 0x1a, 0xc7, 0x5a, - 0x8a, 0xbf, 0xbc, 0x17, 0x15, 0xc7, 0x66, 0xff, 0x87, 0xf0, 0x4c, 0xe0, 0x31, 0x75, 0xec, 0x26, - 0x05, 0xf2, 0x8d, 0x13, 0x2e, 0x67, 0x86, 0xba, 0xbc, 0x0e, 0x6c, 0x88, 0xbf, 0x3b, 0x78, 0x96, - 0x1e, 0x50, 0x06, 0x0d, 0xbd, 0x0b, 0x12, 0xe6, 0x20, 0x5f, 0x1e, 0x00, 0x29, 0x72, 0xad, 0x93, - 0x50, 0x33, 0xc2, 0x7c, 0xfb, 0x3d, 0x60, 0xef, 0x05, 0xe4, 0xce, 0xb8, 0x80, 0x75, 0x60, 0x63, - 0xb0, 0x3f, 0x46, 0x78, 0x46, 0x03, 0xa7, 0x6e, 0x98, 0xdd, 0x80, 0xdd, 0x3f, 0xc1, 0xfe, 0xea, - 0x50, 0xf6, 0xbe, 0xd9, 0x90, 0x1b, 0x28, 0xf6, 0x39, 0x2c, 0x9f, 0xe1, 0xb0, 0x8f, 0x73, 0x86, - 0xd3, 0x44, 0xc1, 0x92, 0x0b, 0xd4, 0x6e, 0xb9, 0x26, 0xe8, 0x6d, 0x70, 0xa9, 0x65, 0x37, 0xf9, - 0xbd, 0xc6, 0x97, 0x23, 0x6f, 0x8f, 0x10, 0xd2, 0x66, 0x03, 0xe9, 0x23, 0x21, 0xec, 0x65, 0xf9, - 0x11, 0x9e, 0xed, 0x92, 0x14, 0x31, 0xce, 0xfe, 0x06, 0x61, 0xbc, 0x0e, 0x2c, 0x20, 0x7d, 0x19, - 0xc7, 0x9b, 0x46, 0x03, 0xa8, 0x63, 0x98, 0xc0, 0x59, 0xc7, 0xb5, 0xf7, 0x1b, 0x84, 0xe0, 0x88, - 0xb7, 0xe0, 0x84, 0xe2, 0x1a, 0x7f, 0x26, 0xdf, 0xc7, 0xde, 0x89, 0x1c, 0x4c, 0xaf, 0xda, 0x6e, - 0xc3, 0x60, 0xdc, 0x9d, 0x99, 0xc5, 0xaf, 0x9e, 0x1d, 0xa0, 0xc0, 0x8b, 0x35, 0x6e, 0xb7, 0x62, - 0x57, 0x40, 0x9b, 0x71, 0xfb, 0xf6, 0xb2, 0xbf, 0x8c, 0xe2, 0x44, 0x8f, 0x26, 0xd9, 0xc6, 0x09, - 0x93, 0x67, 0x29, 0x3f, 0xcc, 0xbf, 0xda, 0x1b, 0x23, 0x15, 0x83, 0xcf, 0x51, 0xc3, 0x02, 0xc0, - 0x3b, 0x80, 0xec, 0xe2, 0x29, 0x57, 0xdc, 0x88, 0xc0, 0x0b, 0x8f, 0x54, 0x5c, 0xfd, 0x99, 0xa2, - 0x25, 0x7c, 0x08, 0x8e, 0x38, 0x2c, 0x3e, 0x91, 0x53, 0xe2, 0xd3, 0x57, 0x65, 0x93, 0x17, 0x51, - 0x65, 0x97, 0x2e, 0xa4, 0xca, 0xa2, 0x17, 0x54, 0x65, 0x64, 0x13, 0x47, 0x29, 0x33, 0x58, 0x8b, - 0x26, 0x7f, 0xfb, 0x6b, 0x94, 0x09, 0x2f, 0x24, 0x16, 0xaf, 0x9f, 0x01, 0x5a, 0xe4, 0xea, 0xc2, - 0xd5, 0xe5, 0xf0, 0xb3, 0x43, 0xa4, 0xf9, 0x08, 0x64, 0x03, 0x7f, 0xe4, 0x42, 0x15, 0x5c, 0xd7, - 0x6a, 0xd6, 0x74, 0xd1, 0xfc, 0x69, 0x32, 0xc6, 0x41, 0x2f, 0x7f, 0x4e, 0x71, 0x56, 0x39, 0x4b, - 0xa9, 0x6b, 0x26, 0xf6, 0x29, 0x79, 0x84, 0x93, 0x15, 0xa8, 0x03, 0x83, 0x8a, 0x2e, 0x64, 0x50, - 0xe9, 0x22, 0xc6, 0x47, 0x40, 0x9c, 0xf3, 0xad, 0x35, 0xdf, 0x38, 0xc0, 0xfd, 0x2e, 0x9e, 0xaf, - 0x58, 0xd4, 0x28, 0xd7, 0x87, 0x01, 0xe3, 0x11, 0x80, 0x3f, 0x0d, 0xcc, 0x07, 0x90, 0x7b, 0x0a, - 0x79, 0x33, 0x12, 0x43, 0x52, 0x28, 0xfb, 0x3b, 0x84, 0x13, 0x5b, 0x16, 0x1d, 0xb1, 0x78, 0xbf, - 0x84, 0xa7, 0xea, 0x46, 0x19, 0xea, 0x7a, 0xd5, 0xaa, 0x33, 0x70, 0xfd, 0x22, 0x4e, 0xf0, 0xbd, - 0x35, 0xbe, 0x45, 0x3e, 0xc3, 0xd3, 0x2e, 0x38, 0xb6, 0xcb, 0xf4, 0xaa, 0x05, 0xf5, 0x0a, 0x4d, - 0x86, 0x33, 0xe1, 0x85, 0xb8, 0x36, 0x25, 0x36, 0xd7, 0xf8, 0x1e, 0xb9, 0x89, 0x3f, 0xf6, 0x95, - 0x44, 0x50, 0x02, 0xdd, 0x08, 0xd7, 0x25, 0x42, 0x26, 0x42, 0x28, 0x2c, 0xb2, 0x2f, 0xa2, 0x58, - 0x12, 0x7e, 0x8a, 0x22, 0xde, 0x60, 0xd0, 0x20, 0x73, 0x38, 0xca, 0xa0, 0x69, 0x34, 0x19, 0xcf, - 0xb4, 0xb8, 0xe6, 0xaf, 0xce, 0xd1, 0x81, 0x24, 0x1c, 0x6e, 0x59, 0x15, 0xd1, 0x04, 0x35, 0xef, - 0x91, 0x64, 0x70, 0xa2, 0x02, 0xd4, 0x74, 0x2d, 0xfe, 0x9f, 0x9c, 0x4c, 0x08, 0xa6, 0x3d, 0x5b, - 0x24, 0x85, 0x63, 0xc1, 0x35, 0x27, 0xa7, 0x32, 0x68, 0x21, 0xa6, 0x75, 0xd7, 0xa4, 0x88, 0xa3, - 0xfc, 0x52, 0x04, 0xa5, 0xc4, 0xe2, 0xdd, 0x33, 0xd2, 0x75, 0x90, 0x9a, 0xbc, 0xc5, 0xad, 0xd5, - 0x26, 0x73, 0x0f, 0x34, 0x1f, 0x8a, 0x94, 0x71, 0xa2, 0x67, 0xa4, 0xf2, 0x13, 0xe1, 0xfe, 0xb8, - 0xc8, 0x85, 0xf7, 0x10, 0x02, 0xbe, 0x17, 0x94, 0xdc, 0xc1, 0xd8, 0xde, 0x6f, 0x82, 0xab, 0x7b, - 0x03, 0x49, 0x32, 0xce, 0x0b, 0x38, 0x35, 0x70, 0xc4, 0x23, 0x0b, 0xf6, 0x83, 0x4c, 0x8b, 0x73, - 0x6d, 0x6f, 0xa7, 0xaf, 0x09, 0x4d, 0x5f, 0x44, 0x13, 0x9a, 0xf9, 0xa0, 0x26, 0xa4, 0xe2, 0x58, - 0x0d, 0x18, 0xef, 0x22, 0x7e, 0x3b, 0x1b, 0xa3, 0x11, 0x69, 0x97, 0x6a, 0x62, 0x41, 0x76, 0x30, - 0xf6, 0x73, 0x94, 0x02, 0xf3, 0xfb, 0xc4, 0xf8, 0xcd, 0x27, 0x2e, 0x30, 0x8a, 0xc0, 0x52, 0x77, - 0x70, 0xa2, 0x27, 0xb8, 0x5e, 0xe6, 0xed, 0xc1, 0x81, 0x9f, 0xa5, 0xde, 0x23, 0xf9, 0x18, 0x4f, - 0xb6, 0x8d, 0x7a, 0x2b, 0x48, 0x50, 0xb1, 0x58, 0x0a, 0xdd, 0x46, 0xa9, 0x7b, 0x58, 0x1a, 0x8c, - 0xde, 0x38, 0xf6, 0x9b, 0x91, 0xd8, 0xa4, 0x14, 0xcd, 0xfe, 0x14, 0xe1, 0xa9, 0xde, 0xac, 0x20, - 0x2a, 0x9e, 0xb4, 0x18, 0x34, 0x68, 0x52, 0xb4, 0x56, 0x65, 0xcc, 0x8c, 0xd2, 0x84, 0x35, 0xb9, - 0x89, 0xa3, 0x62, 0x66, 0x4f, 0x86, 0x38, 0x4e, 0x72, 0x00, 0x47, 0xf5, 0x84, 0xfc, 0x72, 0x7d, - 0xbd, 0xec, 0x1e, 0x9e, 0x5e, 0xe5, 0x1d, 0xf0, 0xfc, 0xa3, 0xc3, 0x02, 0x96, 0xaa, 0x86, 0x55, - 0xd7, 0xad, 0x6a, 0xb7, 0x53, 0xf2, 0x2a, 0x8e, 0x69, 0x33, 0xde, 0xfe, 0x46, 0x35, 0xe8, 0x80, - 0xb9, 0xff, 0x22, 0xfc, 0xc9, 0xd0, 0x79, 0x81, 0xa4, 0xf0, 0xdc, 0xba, 0x5a, 0xd2, 0xb5, 0xe2, - 0xae, 0xbe, 0xb6, 0xa3, 0x6d, 0x17, 0x4a, 0xfa, 0xaa, 0xba, 0x56, 0x78, 0xb8, 0x55, 0x92, 0x26, - 0xc8, 0x15, 0x3c, 0x3f, 0x20, 0x5b, 0xdb, 0xd1, 0xf4, 0x15, 0x4d, 0x2d, 0x94, 0x54, 0x09, 0x91, - 0x34, 0x4e, 0x0d, 0x11, 0x6b, 0xea, 0xee, 0x56, 0x61, 0x45, 0x95, 0x42, 0x64, 0x1e, 0x7f, 0x32, - 0x20, 0x2f, 0x96, 0x0a, 0xa5, 0x87, 0x45, 0x29, 0x4c, 0x3e, 0xc5, 0x5f, 0x18, 0x10, 0x69, 0x6a, - 0x61, 0x55, 0x8a, 0x90, 0xab, 0x38, 0x73, 0x42, 0xb0, 0xa6, 0x6a, 0xda, 0xc6, 0x83, 0x75, 0x7d, - 0x67, 0x79, 0x53, 0x5d, 0x29, 0x15, 0xa5, 0xc9, 0x21, 0x5a, 0xcb, 0xda, 0xce, 0x77, 0xd4, 0x07, - 0x42, 0x59, 0x7d, 0xb0, 0xa2, 0x16, 0xa5, 0xe8, 0xe2, 0x1f, 0xe3, 0x38, 0x5c, 0xd8, 0xdd, 0x20, - 0xff, 0x44, 0x38, 0x2a, 0x26, 0x18, 0x32, 0xd6, 0xa0, 0x93, 0xca, 0x8f, 0xa8, 0xed, 0x8f, 0x82, - 0xed, 0xce, 0xf3, 0xa4, 0x52, 0xfd, 0xda, 0x13, 0x33, 0x4f, 0xc1, 0x6c, 0xb9, 0xe0, 0x69, 0xe6, - 0xcb, 0x06, 0xb5, 0xcc, 0x7c, 0x8b, 0x82, 0x7b, 0xa3, 0x0d, 0x34, 0x6f, 0xd9, 0xf9, 0x26, 0xb0, - 0x7d, 0xdb, 0xdd, 0xcb, 0xef, 0xbb, 0x16, 0x83, 0xa7, 0x7f, 0xff, 0xf7, 0xcf, 0x43, 0xdf, 0xcc, - 0xde, 0xf6, 0x5f, 0x4f, 0x95, 0x6e, 0xc0, 0xa9, 0xf2, 0xa3, 0xa0, 0x17, 0xc8, 0xdd, 0xcd, 0xc3, - 0xc1, 0x97, 0x32, 0xba, 0x84, 0x72, 0xe4, 0x1f, 0x08, 0x87, 0xd7, 0x81, 0x91, 0x6b, 0xa3, 0x0c, - 0x8c, 0x82, 0x59, 0x6e, 0xf4, 0xd9, 0x32, 0xbb, 0xff, 0xe2, 0x4f, 0x21, 0xd4, 0x79, 0x9e, 0xbc, - 0x35, 0x9c, 0x5a, 0xc3, 0x6e, 0x5a, 0xcc, 0x3e, 0xc1, 0xce, 0x05, 0xa3, 0xc2, 0xc9, 0xdd, 0x26, - 0x5f, 0x1f, 0x46, 0xee, 0x14, 0x4e, 0x42, 0x78, 0x48, 0xfe, 0x8a, 0x70, 0xc4, 0xab, 0x37, 0x92, - 0x1b, 0xa9, 0x28, 0x05, 0xb3, 0xeb, 0x63, 0x14, 0x70, 0xd6, 0xf9, 0x30, 0x6a, 0xb7, 0x88, 0x32, - 0x26, 0x35, 0xf2, 0x1f, 0x84, 0x2f, 0xf9, 0xd3, 0x2f, 0x19, 0x6f, 0x4a, 0x4e, 0xc9, 0xa3, 0xaa, - 0xfb, 0xe4, 0x7e, 0x82, 0xce, 0x9b, 0x8f, 0xdb, 0xa9, 0x6f, 0x9f, 0x37, 0x1f, 0x07, 0xb4, 0x0e, - 0xbd, 0xfc, 0xfc, 0x33, 0xc2, 0x51, 0xd1, 0xea, 0xce, 0xac, 0xbf, 0xbe, 0x8e, 0x98, 0x9a, 0x93, - 0xc5, 0x27, 0x13, 0x39, 0xf8, 0x64, 0x22, 0xab, 0x0d, 0x87, 0x1d, 0x64, 0xd9, 0x79, 0x89, 0xdd, - 0xcd, 0x9d, 0x33, 0x17, 0x97, 0x50, 0x2e, 0x55, 0x79, 0x76, 0x84, 0x42, 0x7f, 0x3b, 0x42, 0x57, - 0x4f, 0xa7, 0x20, 0xfe, 0xf9, 0x5e, 0x1f, 0x21, 0xd4, 0x39, 0x42, 0xb9, 0xd1, 0xff, 0x2b, 0x9f, - 0xfe, 0x25, 0x19, 0x92, 0xd0, 0xf2, 0x2f, 0xd0, 0xcb, 0x7b, 0x93, 0x2b, 0xda, 0xc3, 0xd5, 0xad, - 0x57, 0x6f, 0xd2, 0x13, 0xaf, 0xdf, 0xa4, 0x27, 0xde, 0xbd, 0x49, 0xa3, 0x1f, 0x77, 0xd2, 0xe8, - 0xf7, 0x9d, 0x34, 0x7a, 0xd1, 0x49, 0xa3, 0x57, 0x9d, 0x34, 0xfa, 0x57, 0x27, 0x8d, 0xde, 0x76, - 0xd2, 0x13, 0xef, 0x3a, 0x69, 0xf4, 0xb3, 0xe3, 0xf4, 0xc4, 0xb3, 0xe3, 0x34, 0x7a, 0x75, 0x9c, - 0x9e, 0x78, 0x7d, 0x9c, 0x9e, 0xf8, 0x5e, 0xb1, 0x66, 0x3b, 0x7b, 0x35, 0xb9, 0x6d, 0x7b, 0x33, - 0xa9, 0x6b, 0xc8, 0x2d, 0xaa, 0xf0, 0x07, 0xef, 0x05, 0x2d, 0xef, 0xb8, 0x76, 0xdb, 0xaa, 0x80, - 0x9b, 0x0f, 0xc4, 0x8a, 0x53, 0xae, 0xd9, 0x0a, 0x3c, 0x61, 0xc1, 0x67, 0x9f, 0xa1, 0x5f, 0x7f, - 0xca, 0x51, 0x1e, 0x83, 0xaf, 0xfc, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x45, 0x60, 0x6a, 0x3f, 0x66, - 0x13, 0x00, 0x00, + // 1635 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xda, 0x04, 0x4b, 0x1b, + 0x85, 0x4c, 0x9b, 0x4b, 0x57, 0xfd, 0x81, 0x2d, 0xb7, 0xae, 0x29, 0x69, 0xa5, 0x4a, 0x95, 0x2c, + 0x61, 0x48, 0x1b, 0x45, 0x81, 0x62, 0xb1, 0x5c, 0x0e, 0xe9, 0xad, 0x48, 0xee, 0x76, 0x67, 0x48, + 0x59, 0x28, 0x04, 0x14, 0xbe, 0xf4, 0xd8, 0x7f, 0xa0, 0x09, 0x12, 0x20, 0x87, 0x04, 0xc8, 0x2d, + 0xd7, 0x00, 0xba, 0xf8, 0x16, 0xc3, 0x87, 0xc0, 0x70, 0x2e, 0x3e, 0xc6, 0x54, 0x0e, 0x3e, 0x1a, + 0xc9, 0x21, 0x87, 0xe4, 0x10, 0xec, 0xcc, 0x2e, 0x4d, 0xae, 0x18, 0x89, 0x54, 0xe4, 0x13, 0x77, + 0xe6, 0xbd, 0xf7, 0xcd, 0xfb, 0xe6, 0xfd, 0xf0, 0xed, 0xc2, 0xd9, 0x16, 0xa1, 0xb2, 0x61, 0xe6, + 0xa8, 0x7e, 0x9f, 0xd4, 0xb5, 0x1c, 0x35, 0x18, 0x51, 0xeb, 0x84, 0xde, 0x57, 0xab, 0xb6, 0xd9, + 0xb4, 0x72, 0x56, 0xb3, 0x54, 0x33, 0x74, 0x55, 0xb7, 0x9b, 0x65, 0xcd, 0x32, 0x64, 0xcb, 0x36, + 0x99, 0x89, 0x2e, 0x08, 0x1b, 0x59, 0xd8, 0xc8, 0x3e, 0x9b, 0x44, 0xb6, 0x6a, 0xb0, 0xfb, 0xcd, + 0x92, 0xac, 0x9b, 0xf5, 0x5c, 0xd5, 0xac, 0x9a, 0x39, 0x6e, 0x55, 0x6a, 0x56, 0xf8, 0x8a, 0x2f, + 0xf8, 0x93, 0x40, 0x4b, 0x9c, 0xaf, 0x9a, 0x66, 0xb5, 0x46, 0x72, 0x9a, 0x65, 0xe4, 0xb4, 0x46, + 0xc3, 0x64, 0x1a, 0x33, 0xcc, 0x06, 0x75, 0xa5, 0x3f, 0x76, 0xa5, 0x1d, 0x0c, 0x52, 0xb7, 0xd8, + 0x8e, 0x2b, 0x4c, 0xf4, 0x3a, 0x4f, 0x6c, 0xdb, 0xb4, 0x3b, 0x86, 0xbd, 0x32, 0xd3, 0xea, 0x46, + 0xbd, 0xd0, 0x2b, 0xb4, 0x5a, 0x4c, 0x65, 0x3b, 0x16, 0xf1, 0xc4, 0x99, 0xc3, 0x2f, 0xc5, 0x2c, + 0xfd, 0x99, 0xe8, 0xcc, 0xd5, 0xbd, 0x7c, 0xb8, 0x6e, 0x37, 0xec, 0x74, 0xaf, 0x6a, 0xb7, 0x28, + 0xdd, 0x2b, 0x6a, 0x11, 0x4a, 0x1a, 0x2d, 0x9f, 0xd3, 0x29, 0x9f, 0x8e, 0x41, 0xb6, 0xd5, 0x1e, + 0x8d, 0xf4, 0x47, 0x00, 0x8e, 0x2f, 0xd8, 0x44, 0x63, 0x04, 0x93, 0xbf, 0x34, 0x09, 0x65, 0xe8, + 0xb7, 0x30, 0x52, 0x27, 0x4c, 0x2b, 0x6b, 0x4c, 0x8b, 0x83, 0x14, 0x98, 0x89, 0xcd, 0x5e, 0x94, + 0x7b, 0xa3, 0xb7, 0xc1, 0xc9, 0x08, 0xab, 0x75, 0xc2, 0xb4, 0xe2, 0x8e, 0x45, 0x70, 0xc7, 0x08, + 0x61, 0x18, 0xa2, 0x16, 0xd1, 0xe3, 0x01, 0x6e, 0x9c, 0x95, 0x0f, 0x0d, 0xbd, 0x2c, 0x60, 0x0a, + 0x16, 0xd1, 0x1d, 0x98, 0xf9, 0xc9, 0xb7, 0x77, 0xc7, 0x1c, 0x6b, 0xb9, 0xaa, 0xab, 0xce, 0x2f, + 0xe6, 0x58, 0x73, 0xd1, 0x27, 0xb7, 0xc2, 0xe2, 0xd8, 0xf4, 0x37, 0x00, 0x4e, 0x78, 0x1e, 0x53, + 0xcb, 0x6c, 0x50, 0x82, 0x7e, 0x7d, 0xc0, 0xe5, 0x54, 0x5f, 0x97, 0x97, 0x09, 0xeb, 0xe3, 0xef, + 0x06, 0x9c, 0xa4, 0x3b, 0x94, 0x91, 0xba, 0xda, 0x01, 0x09, 0x72, 0x90, 0x9f, 0xfa, 0x40, 0x0a, + 0x5c, 0xeb, 0x20, 0xd4, 0x84, 0x30, 0x5f, 0x7f, 0x0d, 0xd8, 0x7d, 0x01, 0x99, 0x23, 0x2e, 0x60, + 0x99, 0xb0, 0x21, 0xd8, 0xef, 0x03, 0x38, 0x81, 0x89, 0x55, 0xd3, 0xf4, 0x4e, 0xc0, 0x6e, 0x1f, + 0x60, 0x7f, 0xa9, 0x2f, 0x7b, 0xd7, 0xac, 0xcf, 0x0d, 0x14, 0x7a, 0x1c, 0x96, 0x8f, 0x70, 0xd8, + 0xc5, 0x39, 0xc2, 0x69, 0x94, 0x83, 0x92, 0x4d, 0xa8, 0xd9, 0xb4, 0x75, 0xa2, 0xb6, 0x88, 0x4d, + 0x0d, 0xb3, 0xc1, 0xef, 0x35, 0x3a, 0x1f, 0x7a, 0xb9, 0x07, 0x00, 0x9e, 0xf4, 0xa4, 0xf7, 0x84, + 0xb0, 0x9b, 0xe5, 0x69, 0x38, 0xd9, 0x21, 0x29, 0x62, 0x9c, 0x7e, 0x17, 0x40, 0xb8, 0x4c, 0x98, + 0x47, 0xfa, 0x3c, 0x8c, 0x36, 0xb4, 0x3a, 0xa1, 0x96, 0xa6, 0x13, 0xce, 0x3a, 0x8a, 0x5f, 0x6f, + 0x20, 0x04, 0x43, 0xce, 0x82, 0x13, 0x8a, 0x62, 0xfe, 0x8c, 0xfe, 0x04, 0x9d, 0x13, 0x39, 0x98, + 0x5a, 0x31, 0xed, 0xba, 0xc6, 0xb8, 0x3b, 0x13, 0xb3, 0xbf, 0x38, 0x3a, 0x40, 0x9e, 0x17, 0x4b, + 0xdc, 0x6e, 0xc1, 0x2c, 0x13, 0x3c, 0x61, 0xf7, 0xec, 0xa5, 0xdf, 0x0a, 0xc3, 0x58, 0x97, 0x26, + 0x5a, 0x87, 0x31, 0x9d, 0x67, 0x29, 0x3f, 0xcc, 0xbd, 0xda, 0xab, 0x03, 0x15, 0x83, 0xcb, 0x11, + 0x43, 0x01, 0xe0, 0x1c, 0x80, 0x36, 0xe1, 0x98, 0x2d, 0x6e, 0x44, 0xe0, 0x05, 0x07, 0x2a, 0xae, + 0xde, 0x4c, 0xc1, 0x31, 0x17, 0x82, 0x23, 0xf6, 0x8b, 0x4f, 0xe8, 0x90, 0xf8, 0xf4, 0x54, 0xd9, + 0xe8, 0x49, 0x54, 0xd9, 0xa9, 0x13, 0xa9, 0xb2, 0xf0, 0x09, 0x55, 0x19, 0x5a, 0x85, 0x61, 0xca, + 0x34, 0xd6, 0xa4, 0xf1, 0xf7, 0xde, 0x01, 0xa9, 0xe0, 0x4c, 0x6c, 0xf6, 0xca, 0x11, 0xa0, 0x05, + 0xae, 0x2e, 0x5c, 0x9d, 0x0f, 0x3e, 0xda, 0x05, 0xd8, 0x45, 0x40, 0x2b, 0xf0, 0xb4, 0x4d, 0x2a, + 0xc4, 0xb6, 0x8d, 0x46, 0x55, 0x15, 0xcd, 0x9f, 0xc6, 0x23, 0x1c, 0xf4, 0xfc, 0xf7, 0x14, 0x67, + 0x85, 0xb3, 0x94, 0x3a, 0x66, 0x62, 0x9f, 0xa2, 0x7b, 0x30, 0x5e, 0x26, 0x35, 0xc2, 0x48, 0x59, + 0x15, 0x32, 0x52, 0xee, 0x20, 0x46, 0x07, 0x40, 0x9c, 0x72, 0xad, 0xb1, 0x6b, 0xec, 0xe1, 0xfe, + 0x01, 0x4e, 0x97, 0x0d, 0xaa, 0x95, 0x6a, 0xfd, 0x80, 0xe1, 0x00, 0xc0, 0xe7, 0x3c, 0x73, 0x1f, + 0x72, 0x57, 0x21, 0xaf, 0x86, 0x22, 0x40, 0x0a, 0xa4, 0x3f, 0x00, 0x30, 0xb6, 0x66, 0xd0, 0x01, + 0x8b, 0xf7, 0x27, 0x70, 0xac, 0xa6, 0x95, 0x48, 0x4d, 0xad, 0x18, 0x35, 0x46, 0x6c, 0xb7, 0x88, + 0x63, 0x7c, 0x6f, 0x89, 0x6f, 0xa1, 0x8b, 0x70, 0xdc, 0x26, 0x96, 0x69, 0x33, 0xb5, 0x62, 0x90, + 0x5a, 0x99, 0xc6, 0x83, 0xa9, 0xe0, 0x4c, 0x14, 0x8f, 0x89, 0xcd, 0x25, 0xbe, 0x87, 0xae, 0xc1, + 0x33, 0xae, 0x92, 0x08, 0x8a, 0xa7, 0x1b, 0xe2, 0xba, 0x48, 0xc8, 0x44, 0x08, 0x85, 0x45, 0xfa, + 0x71, 0x18, 0x4a, 0xc2, 0x4f, 0x51, 0xc4, 0x2b, 0x8c, 0xd4, 0xd1, 0x14, 0x0c, 0x33, 0xd2, 0xd0, + 0x1a, 0x8c, 0x67, 0x5a, 0x14, 0xbb, 0xab, 0x63, 0x74, 0x20, 0x09, 0x06, 0x9b, 0x46, 0x59, 0x34, + 0x41, 0xec, 0x3c, 0xa2, 0x14, 0x8c, 0x95, 0x09, 0xd5, 0x6d, 0x83, 0xff, 0x27, 0xc7, 0x63, 0x82, + 0x69, 0xd7, 0x16, 0x4a, 0xc0, 0x88, 0x77, 0xcd, 0xf1, 0xb1, 0x14, 0x98, 0x89, 0xe0, 0xce, 0x1a, + 0x15, 0x60, 0x98, 0x5f, 0x8a, 0xa0, 0x14, 0x9b, 0xbd, 0x79, 0x44, 0xba, 0xfa, 0xa9, 0xc9, 0x6b, + 0xdc, 0x5a, 0x69, 0x30, 0x7b, 0x07, 0xbb, 0x50, 0xa8, 0x04, 0x63, 0x5d, 0x23, 0x95, 0x9b, 0x08, + 0xb7, 0x87, 0x45, 0xce, 0xbf, 0x86, 0x10, 0xf0, 0xdd, 0xa0, 0xe8, 0x06, 0x84, 0xe6, 0x76, 0x83, + 0xd8, 0xaa, 0x33, 0x90, 0xc4, 0xa3, 0xbc, 0x80, 0x13, 0xbe, 0x23, 0xee, 0x19, 0x64, 0xdb, 0xcb, + 0xb4, 0x28, 0xd7, 0x76, 0x76, 0x7a, 0x9a, 0xd0, 0xf8, 0x49, 0x34, 0xa1, 0x89, 0x1f, 0xd4, 0x84, + 0x14, 0x18, 0xa9, 0x12, 0xc6, 0xbb, 0x88, 0xdb, 0xce, 0x86, 0x68, 0x44, 0xf8, 0x54, 0x55, 0x2c, + 0xd0, 0x06, 0x84, 0x6e, 0x8e, 0x52, 0xc2, 0xdc, 0x3e, 0x31, 0x7c, 0xf3, 0x89, 0x0a, 0x8c, 0x02, + 0x61, 0x89, 0x1b, 0x30, 0xd6, 0x15, 0x5c, 0x27, 0xf3, 0xb6, 0xc8, 0x8e, 0x9b, 0xa5, 0xce, 0x23, + 0x3a, 0x03, 0x47, 0x5b, 0x5a, 0xad, 0xe9, 0x25, 0xa8, 0x58, 0xcc, 0x05, 0xae, 0x83, 0xc4, 0x2d, + 0x28, 0xf9, 0xa3, 0x37, 0x8c, 0xfd, 0x6a, 0x28, 0x32, 0x2a, 0x85, 0xd3, 0x7f, 0x07, 0x70, 0xac, + 0x3b, 0x2b, 0x90, 0x02, 0x47, 0x0d, 0x46, 0xea, 0x34, 0x2e, 0x5a, 0x6b, 0x6e, 0xc8, 0x8c, 0xc2, + 0xc2, 0x1a, 0x5d, 0x83, 0x61, 0x31, 0xb3, 0xc7, 0x03, 0x1c, 0x27, 0xee, 0xc3, 0x51, 0x1c, 0x21, + 0xbf, 0x5c, 0x57, 0x2f, 0xbd, 0x05, 0xc7, 0x17, 0x79, 0x07, 0x3c, 0xfe, 0xe8, 0x30, 0x03, 0xa5, + 0x8a, 0x66, 0xd4, 0x54, 0xa3, 0xd2, 0xe9, 0x94, 0xbc, 0x8a, 0x23, 0x78, 0xc2, 0xd9, 0x5f, 0xa9, + 0x78, 0x1d, 0x30, 0xf3, 0x25, 0x80, 0x67, 0xfb, 0xce, 0x0b, 0x28, 0x01, 0xa7, 0x96, 0x95, 0xa2, + 0x8a, 0x0b, 0x9b, 0xea, 0xd2, 0x06, 0x5e, 0xcf, 0x17, 0xd5, 0x45, 0x65, 0x29, 0x7f, 0x77, 0xad, + 0x28, 0x8d, 0xa0, 0x0b, 0x70, 0xda, 0x27, 0x5b, 0xda, 0xc0, 0xea, 0x02, 0x56, 0xf2, 0x45, 0x45, + 0x02, 0x28, 0x09, 0x13, 0x7d, 0xc4, 0x58, 0xd9, 0x5c, 0xcb, 0x2f, 0x28, 0x52, 0x00, 0x4d, 0xc3, + 0xb3, 0x3e, 0x79, 0xa1, 0x98, 0x2f, 0xde, 0x2d, 0x48, 0x41, 0x74, 0x0e, 0xfe, 0xc8, 0x27, 0xc2, + 0x4a, 0x7e, 0x51, 0x0a, 0xa1, 0x4b, 0x30, 0x75, 0x40, 0xb0, 0xa4, 0x60, 0xbc, 0x72, 0x67, 0x59, + 0xdd, 0x98, 0x5f, 0x55, 0x16, 0x8a, 0x05, 0x69, 0xb4, 0x8f, 0xd6, 0x3c, 0xde, 0xf8, 0xbd, 0x72, + 0x47, 0x28, 0x2b, 0x77, 0x16, 0x94, 0x82, 0x14, 0x9e, 0x7d, 0x06, 0x61, 0x30, 0xbf, 0xb9, 0x82, + 0xbe, 0x05, 0x30, 0x2c, 0x26, 0x18, 0x34, 0xd4, 0xa0, 0x93, 0xc8, 0x0e, 0xa8, 0xed, 0x8e, 0x82, + 0xff, 0x05, 0xed, 0x4f, 0xe2, 0xeb, 0x95, 0x5f, 0x3e, 0xd0, 0xb3, 0x94, 0xe8, 0x4d, 0x9b, 0x38, + 0xaa, 0xd9, 0x92, 0x46, 0x0d, 0x3d, 0xdb, 0xa4, 0xc4, 0xbe, 0xea, 0x17, 0x51, 0xa6, 0x35, 0xca, + 0x9a, 0x5d, 0x16, 0xd2, 0x16, 0xa1, 0x59, 0xc3, 0xcc, 0x36, 0x08, 0xdb, 0x36, 0xed, 0xad, 0xec, + 0xb6, 0x6d, 0x30, 0xf2, 0xf0, 0xb3, 0x2f, 0xfe, 0x13, 0xf8, 0x4d, 0xfa, 0xba, 0xfb, 0xf6, 0x9a, + 0xeb, 0xe4, 0x03, 0xcd, 0xfd, 0xd5, 0x6b, 0x15, 0x72, 0x67, 0x73, 0xd7, 0xff, 0xce, 0x46, 0xe7, + 0x40, 0x06, 0x7d, 0x0d, 0x60, 0x70, 0x99, 0x30, 0x74, 0x79, 0x90, 0x79, 0x52, 0x10, 0xcf, 0x0c, + 0x3e, 0x7a, 0xa6, 0xff, 0x0f, 0x1e, 0x7f, 0x1c, 0x70, 0x98, 0xe3, 0xfe, 0xcc, 0xeb, 0x66, 0xc3, + 0x60, 0xe6, 0x21, 0xe4, 0x3d, 0x05, 0x1f, 0x7f, 0x9b, 0x68, 0x65, 0x4e, 0xff, 0x3a, 0xfa, 0x55, + 0x3f, 0xfa, 0x87, 0xb0, 0x16, 0xc2, 0x5d, 0xf4, 0x15, 0x80, 0x21, 0xa7, 0x60, 0x51, 0x66, 0xa0, + 0xaa, 0x16, 0xdc, 0xaf, 0x0c, 0xd1, 0x01, 0xd2, 0xff, 0x7a, 0xd3, 0xe4, 0x7f, 0x86, 0x72, 0x43, + 0x92, 0x47, 0xff, 0x08, 0xc0, 0x53, 0xee, 0x80, 0x8d, 0x86, 0x1b, 0xc4, 0x13, 0xf2, 0xa0, 0xea, + 0x2e, 0xfd, 0xf7, 0xdf, 0x50, 0xc6, 0xaf, 0x27, 0x7e, 0x77, 0xdc, 0x8c, 0xf7, 0x69, 0xed, 0x3a, + 0x15, 0xb0, 0x0f, 0x60, 0x58, 0xf4, 0xda, 0x23, 0x1b, 0x40, 0x4f, 0x4b, 0x4e, 0x4c, 0xc9, 0xe2, + 0x9b, 0x8d, 0xec, 0x7d, 0xb3, 0x91, 0x95, 0xba, 0xc5, 0x76, 0xd2, 0xff, 0x7e, 0x43, 0xbc, 0x6f, + 0x66, 0x8e, 0x99, 0xea, 0x73, 0x20, 0x93, 0x28, 0x3f, 0xda, 0x03, 0x81, 0x67, 0x7b, 0xe0, 0xd2, + 0xe1, 0x0c, 0xc5, 0x3f, 0xf3, 0xf3, 0x3d, 0x00, 0xda, 0x7b, 0x20, 0x33, 0xf8, 0x7f, 0xf9, 0xc3, + 0x4f, 0xe3, 0x01, 0x09, 0xcc, 0xff, 0x0f, 0x3c, 0xb9, 0x35, 0xba, 0x80, 0xef, 0x2e, 0xae, 0x3d, + 0x7d, 0x91, 0x1c, 0x79, 0xfe, 0x22, 0x39, 0xf2, 0xea, 0x45, 0x12, 0xfc, 0xad, 0x9d, 0x04, 0x1f, + 0xb6, 0x93, 0xe0, 0x71, 0x3b, 0x09, 0x9e, 0xb6, 0x93, 0xe0, 0xf3, 0x76, 0x12, 0xbc, 0x6c, 0x27, + 0x47, 0x5e, 0xb5, 0x93, 0xe0, 0x9f, 0xfb, 0xc9, 0x91, 0x47, 0xfb, 0x49, 0xf0, 0x74, 0x3f, 0x39, + 0xf2, 0x7c, 0x3f, 0x39, 0xf2, 0xc7, 0x42, 0xd5, 0xb4, 0xb6, 0xaa, 0x72, 0xcb, 0x74, 0x66, 0x66, + 0x5b, 0x93, 0x9b, 0x34, 0xc7, 0x1f, 0x9c, 0x17, 0xc8, 0xac, 0x65, 0x9b, 0x2d, 0xa3, 0x4c, 0xec, + 0xac, 0x27, 0xce, 0x59, 0xa5, 0xaa, 0x99, 0x23, 0x0f, 0x98, 0xf7, 0x59, 0xaa, 0xef, 0xd7, 0xa9, + 0x52, 0x98, 0x87, 0xe8, 0xe7, 0xdf, 0x05, 0x00, 0x00, 0xff, 0xff, 0xb0, 0x21, 0xd6, 0x3d, 0x06, + 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/site_mesh_group/public_crudapi.vesapi.go b/pbgo/extschema/schema/site_mesh_group/public_crudapi.vesapi.go index 6f3afdb48..825364017 100644 --- a/pbgo/extschema/schema/site_mesh_group/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/site_mesh_group/public_crudapi.vesapi.go @@ -2421,10 +2421,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2481,10 +2485,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2543,10 +2551,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/stored_object/crudapi/api.vesapi.go b/pbgo/extschema/schema/stored_object/crudapi/api.vesapi.go index 89cb75741..689757f04 100644 --- a/pbgo/extschema/schema/stored_object/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/stored_object/crudapi/api.vesapi.go @@ -3005,10 +3005,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/stored_object/public_customapi.pb.go b/pbgo/extschema/schema/stored_object/public_customapi.pb.go index 632f079c6..80dc58cd2 100644 --- a/pbgo/extschema/schema/stored_object/public_customapi.pb.go +++ b/pbgo/extschema/schema/stored_object/public_customapi.pb.go @@ -44,52 +44,54 @@ func init() { } var fileDescriptor_1c246fd1a6e8dd5b = []byte{ - // 705 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x55, 0x4d, 0x68, 0x13, 0x41, - 0x14, 0xce, 0x24, 0x52, 0xe8, 0x5a, 0x3c, 0xcc, 0x29, 0xa6, 0x32, 0x4a, 0x4e, 0x49, 0x64, 0x77, - 0xfa, 0x73, 0x52, 0x11, 0xb1, 0x2d, 0x14, 0xa1, 0xf8, 0x0b, 0x1e, 0x1a, 0x4a, 0xd9, 0x6c, 0x5e, - 0xb7, 0xab, 0xc9, 0xce, 0xba, 0x33, 0xbb, 0xd5, 0xa6, 0x11, 0xa9, 0x37, 0x45, 0x28, 0xfe, 0x1c, - 0x7b, 0xf7, 0xa6, 0x27, 0x29, 0xf4, 0xd2, 0x5b, 0x7a, 0x92, 0xa2, 0x97, 0x7a, 0xb3, 0x1b, 0x11, - 0x29, 0x1e, 0x7a, 0xf2, 0x2c, 0x9d, 0xdd, 0x94, 0xa4, 0x94, 0x35, 0xd2, 0x5a, 0x3c, 0xcd, 0x1b, - 0xe6, 0x7b, 0xdf, 0x9b, 0xf9, 0xbe, 0x99, 0x37, 0xca, 0x90, 0x0f, 0x5c, 0xb3, 0x18, 0xe5, 0xc6, - 0x2c, 0x54, 0x75, 0xca, 0x05, 0x73, 0xa1, 0x3c, 0xcd, 0x4a, 0xf7, 0xc0, 0x10, 0xd4, 0xf1, 0x4a, - 0x15, 0xcb, 0x98, 0x36, 0x3c, 0x2e, 0x58, 0x55, 0x77, 0x2c, 0xcd, 0x71, 0x99, 0x60, 0xb8, 0x3f, - 0xcc, 0xd1, 0xc2, 0x1c, 0xad, 0x23, 0x27, 0xa3, 0x9a, 0x96, 0x98, 0xf5, 0x4a, 0x9a, 0xc1, 0xaa, - 0xd4, 0x64, 0x26, 0xa3, 0x32, 0xa7, 0xe4, 0xcd, 0xc8, 0x99, 0x9c, 0xc8, 0x28, 0xe4, 0xca, 0x9c, - 0x31, 0x19, 0x33, 0x2b, 0x40, 0x75, 0xc7, 0xa2, 0xba, 0x6d, 0x33, 0xa1, 0x0b, 0x8b, 0xd9, 0x3c, - 0x5a, 0xed, 0xef, 0xdc, 0x1d, 0x73, 0xda, 0x17, 0xb5, 0xb8, 0xad, 0x1b, 0xac, 0x5a, 0x65, 0xf6, - 0xb4, 0x78, 0xe4, 0x40, 0x0b, 0x9f, 0xed, 0xc4, 0xfb, 0xc0, 0xc1, 0xf6, 0x3b, 0x39, 0x87, 0xde, - 0x9d, 0x52, 0x7a, 0x47, 0xe5, 0x71, 0xaf, 0xde, 0xbc, 0x86, 0x9f, 0xa6, 0x94, 0xbe, 0x51, 0x17, - 0x74, 0x01, 0x37, 0x24, 0x2b, 0x1e, 0xd0, 0x62, 0x8e, 0xae, 0xb5, 0x43, 0x6f, 0xc3, 0x03, 0x0f, - 0xb8, 0xc8, 0x0c, 0xfe, 0x45, 0x06, 0x77, 0x98, 0xcd, 0x21, 0xfb, 0x22, 0x19, 0x34, 0xd2, 0x19, - 0x1f, 0xb8, 0x6a, 0x31, 0x35, 0xc4, 0xab, 0x21, 0x5e, 0x9d, 0x73, 0x2d, 0x01, 0xdb, 0x8d, 0xf4, - 0x32, 0x52, 0xb2, 0x2d, 0x80, 0xe4, 0xdd, 0x87, 0x33, 0x24, 0x2f, 0x9e, 0x53, 0x52, 0x8e, 0x27, - 0xb0, 0x13, 0x19, 0x49, 0x6d, 0xbd, 0x0a, 0xdc, 0xd1, 0x0d, 0xe0, 0x34, 0x57, 0xd4, 0xd5, 0xf9, - 0xa9, 0x5c, 0x51, 0xd5, 0xd5, 0xf9, 0x01, 0xf5, 0xc2, 0x54, 0xa1, 0x18, 0x05, 0xf9, 0x2b, 0xf9, - 0x4e, 0x29, 0x39, 0xcd, 0xf1, 0x39, 0xdd, 0x34, 0xc1, 0x5d, 0x28, 0x59, 0x66, 0x54, 0x21, 0x1f, - 0x4b, 0xb0, 0xf8, 0xf9, 0xdb, 0xab, 0xe4, 0x78, 0x66, 0xe4, 0x80, 0xba, 0xb5, 0xbd, 0xb8, 0xbe, - 0xbf, 0x4c, 0x2d, 0x0c, 0xa4, 0x67, 0xf5, 0x10, 0x58, 0xbf, 0x88, 0x0a, 0x78, 0x39, 0xa5, 0xf4, - 0x8e, 0x83, 0x88, 0x2c, 0x50, 0x63, 0x05, 0xdd, 0xc3, 0xb5, 0xf4, 0xd7, 0xba, 0x85, 0x47, 0xe2, - 0xbf, 0x4f, 0xae, 0xaf, 0x24, 0x51, 0xd0, 0x48, 0x9f, 0x3e, 0xd0, 0x00, 0x17, 0xf4, 0xf2, 0x76, - 0x23, 0xfd, 0x01, 0x29, 0x67, 0xe3, 0xf4, 0x37, 0x41, 0xe0, 0x97, 0x48, 0x49, 0xed, 0x8e, 0xcf, - 0xd0, 0x71, 0xcb, 0x4f, 0x73, 0xfe, 0xc2, 0xdd, 0x7c, 0x71, 0x77, 0x76, 0x3e, 0xa7, 0xca, 0xb1, - 0x36, 0x54, 0xcf, 0xd7, 0x86, 0xeb, 0xd2, 0x98, 0xeb, 0x78, 0xe2, 0xf0, 0xc6, 0xd0, 0x9a, 0x0f, - 0x2e, 0xb7, 0x98, 0x5d, 0xc7, 0x5f, 0x92, 0xca, 0xc9, 0x09, 0x8b, 0x47, 0x4a, 0x72, 0x4c, 0x63, - 0x25, 0x6f, 0x43, 0xb6, 0x3c, 0x1a, 0xe8, 0x3e, 0x21, 0x72, 0xe9, 0x3b, 0xea, 0xc6, 0xa5, 0xc7, - 0xca, 0xb9, 0x38, 0x93, 0x2a, 0x16, 0x17, 0x78, 0x32, 0x34, 0xe9, 0xce, 0x3f, 0xf0, 0x48, 0x8a, - 0x7d, 0x19, 0x5f, 0x3a, 0x84, 0xd8, 0xf8, 0xe7, 0x09, 0xa5, 0x6f, 0x0c, 0x2a, 0xd0, 0x65, 0x07, - 0x6a, 0x87, 0x76, 0xd7, 0x81, 0x3a, 0x33, 0x22, 0x79, 0x7f, 0xa5, 0xfe, 0xd8, 0x81, 0x56, 0x92, - 0xf1, 0x1d, 0xa8, 0x2c, 0x79, 0xf1, 0xbc, 0xd2, 0x13, 0x45, 0xc7, 0xde, 0x84, 0xf0, 0x1b, 0xb4, - 0x57, 0xfc, 0xbf, 0x7b, 0x83, 0xaf, 0x51, 0xe1, 0x48, 0x1f, 0xe1, 0xe4, 0x58, 0xe1, 0x08, 0xba, - 0x6d, 0x66, 0x70, 0x6d, 0x15, 0xa5, 0x3e, 0xad, 0xa2, 0x6c, 0xdc, 0x95, 0x09, 0x2f, 0xcb, 0xe2, - 0xc7, 0x74, 0x6a, 0x09, 0xa1, 0x91, 0xe7, 0x68, 0x63, 0x8b, 0x24, 0x36, 0xb7, 0x48, 0x62, 0x67, - 0x8b, 0xa0, 0x27, 0x01, 0x41, 0x6f, 0x03, 0x82, 0xd6, 0x03, 0x82, 0x36, 0x02, 0x82, 0xbe, 0x06, - 0x04, 0xfd, 0x08, 0x48, 0x62, 0x27, 0x20, 0x68, 0xa9, 0x49, 0x12, 0x6b, 0x4d, 0x82, 0x36, 0x9a, - 0x24, 0xb1, 0xd9, 0x24, 0x89, 0xc9, 0x5b, 0x26, 0x73, 0xee, 0x9b, 0x9a, 0xcf, 0x2a, 0x02, 0x5c, - 0x57, 0xd7, 0x3c, 0x4e, 0x65, 0x30, 0xc3, 0xdc, 0xaa, 0xea, 0xb8, 0xcc, 0xb7, 0xca, 0xe0, 0xaa, - 0xad, 0x65, 0xea, 0x94, 0x4c, 0x46, 0xe1, 0xa1, 0x68, 0xfd, 0xf7, 0x07, 0x7c, 0xfb, 0xa5, 0x1e, - 0xf9, 0x8d, 0x0f, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0xf2, 0xc6, 0x1a, 0x6d, 0xd7, 0x08, 0x00, - 0x00, + // 740 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x96, 0xcf, 0x6b, 0x13, 0x4d, + 0x18, 0xc7, 0x33, 0xc9, 0xfb, 0x16, 0xba, 0x6f, 0xe1, 0x85, 0x39, 0x85, 0x54, 0xd6, 0x92, 0x53, + 0x12, 0x9d, 0x9d, 0xfe, 0x40, 0xf1, 0x07, 0x22, 0xb6, 0x85, 0x22, 0x14, 0x7f, 0x82, 0x87, 0x86, + 0x52, 0x26, 0x9b, 0xe9, 0x76, 0x35, 0xbb, 0xb3, 0xee, 0xcc, 0x6e, 0x6b, 0xd3, 0x88, 0x14, 0x04, + 0xd1, 0x4b, 0xa9, 0x7a, 0x14, 0x4f, 0x82, 0xfe, 0x03, 0x52, 0xa8, 0x87, 0xde, 0xd2, 0x93, 0x16, + 0xbd, 0xf4, 0x68, 0x37, 0x1e, 0xa4, 0xa7, 0x1e, 0x3d, 0x4a, 0x67, 0x37, 0x25, 0x29, 0x75, 0x89, + 0xb4, 0x16, 0x4f, 0xf3, 0x0c, 0xf3, 0x7d, 0x9e, 0x67, 0xe6, 0xf9, 0xcc, 0x3c, 0x8c, 0x32, 0xe8, + 0x53, 0xae, 0x99, 0x0c, 0x73, 0x7d, 0x86, 0x5a, 0x04, 0x73, 0xc1, 0x5c, 0x5a, 0x9e, 0x62, 0xa5, + 0xbb, 0x54, 0x17, 0xd8, 0xf1, 0x4a, 0x15, 0x53, 0x9f, 0xd2, 0x3d, 0x2e, 0x98, 0x45, 0x1c, 0x53, + 0x73, 0x5c, 0x26, 0x18, 0xec, 0x0d, 0x7d, 0xb4, 0xd0, 0x47, 0x6b, 0xf3, 0xc9, 0x20, 0xc3, 0x14, + 0x33, 0x5e, 0x49, 0xd3, 0x99, 0x85, 0x0d, 0x66, 0x30, 0x2c, 0x7d, 0x4a, 0xde, 0xb4, 0x9c, 0xc9, + 0x89, 0xb4, 0xc2, 0x58, 0x99, 0x13, 0x06, 0x63, 0x46, 0x85, 0x62, 0xe2, 0x98, 0x98, 0xd8, 0x36, + 0x13, 0x44, 0x98, 0xcc, 0xe6, 0xd1, 0x6a, 0x6f, 0xfb, 0xee, 0x98, 0xd3, 0xba, 0xa8, 0xc5, 0x6d, + 0x5d, 0x67, 0x96, 0xc5, 0xec, 0x29, 0xf1, 0xc0, 0xa1, 0x4d, 0x7d, 0xb6, 0x5d, 0xef, 0x53, 0x4e, + 0x6d, 0xbf, 0x3d, 0xe6, 0xe0, 0x9b, 0xff, 0x95, 0xee, 0x11, 0x79, 0xdc, 0x2b, 0x37, 0xae, 0xc2, + 0xd7, 0x29, 0xa5, 0x67, 0xc4, 0xa5, 0x44, 0xd0, 0xeb, 0x32, 0x2a, 0xec, 0xd7, 0x62, 0x8e, 0xae, + 0xb5, 0x4a, 0x6f, 0xd1, 0xfb, 0x1e, 0xe5, 0x22, 0x33, 0xf0, 0x1b, 0x1e, 0xdc, 0x61, 0x36, 0xa7, + 0xd9, 0x77, 0xc9, 0xa0, 0x9e, 0x3e, 0x3b, 0x7d, 0x66, 0x4e, 0x47, 0x3a, 0xb3, 0x39, 0xab, 0x50, + 0xc4, 0x05, 0xb1, 0xcb, 0xc4, 0x2d, 0x23, 0x8f, 0x53, 0xf7, 0x74, 0x9f, 0x4f, 0x39, 0x32, 0x19, + 0x0a, 0x63, 0xa1, 0x30, 0x16, 0x9a, 0x75, 0x4d, 0x41, 0xb7, 0xeb, 0xe9, 0x57, 0x40, 0xc9, 0x36, + 0x05, 0x32, 0xe7, 0x3e, 0x9d, 0x2e, 0x73, 0xc2, 0x59, 0x25, 0xe5, 0x78, 0x02, 0x3a, 0x11, 0x64, + 0x6c, 0x13, 0x8b, 0x72, 0x87, 0xe8, 0x94, 0xe3, 0x5c, 0x91, 0xa0, 0xf9, 0xc9, 0x5c, 0x11, 0x11, + 0x34, 0xdf, 0x8f, 0xce, 0x4f, 0x16, 0x8a, 0x91, 0x91, 0xbf, 0x9c, 0x6f, 0x2f, 0x33, 0xc7, 0x39, + 0x3e, 0x4b, 0x0c, 0x83, 0xba, 0x0b, 0x25, 0xd3, 0x88, 0x32, 0xe4, 0x63, 0x03, 0x2c, 0x7e, 0xf9, + 0xf6, 0x3c, 0x39, 0x96, 0x19, 0x3e, 0x20, 0x6f, 0x75, 0xcf, 0xae, 0xed, 0x4f, 0x53, 0x0d, 0x0d, + 0xc9, 0xb3, 0x16, 0x0a, 0x6b, 0x17, 0x40, 0x01, 0x7e, 0x48, 0x29, 0xdd, 0x63, 0x54, 0x44, 0x78, + 0x50, 0x6c, 0xb1, 0xf7, 0x74, 0x4d, 0x36, 0x5a, 0xa7, 0xf2, 0x08, 0xcc, 0xa7, 0xe4, 0xfa, 0x4a, + 0x12, 0x04, 0xf5, 0xf4, 0xb9, 0x83, 0xe1, 0x58, 0xcc, 0x36, 0x05, 0xfb, 0x15, 0x1f, 0x97, 0x92, + 0xf2, 0x76, 0x3d, 0xfd, 0x1e, 0x28, 0x27, 0xe3, 0xf0, 0x18, 0x54, 0xc0, 0x65, 0xa0, 0xa4, 0x76, + 0xc7, 0xa7, 0xe0, 0xb8, 0xe9, 0xe0, 0x9c, 0xbf, 0x70, 0x27, 0x5f, 0xdc, 0x9d, 0x9d, 0xca, 0x21, + 0x39, 0x56, 0x07, 0x6b, 0xf9, 0xea, 0x50, 0x4d, 0x72, 0xbb, 0x06, 0xc7, 0x0f, 0xcf, 0x0d, 0x57, + 0x7d, 0xea, 0x72, 0x93, 0xd9, 0x35, 0xf8, 0x23, 0xa9, 0xfc, 0x37, 0x6e, 0xf2, 0xa8, 0xd0, 0x1c, + 0xe2, 0x58, 0x22, 0x2d, 0xca, 0x26, 0xc2, 0xfe, 0xce, 0x1d, 0x22, 0x88, 0x8f, 0x8f, 0x02, 0xe2, + 0x43, 0xa5, 0x2f, 0x8e, 0x61, 0xc5, 0xe4, 0x02, 0x4e, 0x84, 0x0c, 0x6f, 0xff, 0x01, 0x84, 0x92, + 0xc5, 0x25, 0x78, 0xf1, 0x10, 0x2c, 0xe0, 0x93, 0x7f, 0x95, 0x9e, 0x51, 0x5a, 0xa1, 0x1d, 0xf6, + 0xb6, 0x56, 0x69, 0x67, 0xbd, 0xad, 0xdd, 0x23, 0xaa, 0xfe, 0xf2, 0x3f, 0x87, 0xea, 0x6d, 0x2b, + 0xc9, 0xf8, 0xde, 0x56, 0x96, 0x39, 0xe1, 0xbc, 0xd2, 0x15, 0x59, 0xc7, 0xde, 0xde, 0xe0, 0x4b, + 0xb0, 0x97, 0xfc, 0xaf, 0x7b, 0xbe, 0x2f, 0x40, 0xe1, 0x48, 0xdf, 0xef, 0xc4, 0x68, 0xe1, 0x08, + 0xfa, 0x78, 0x66, 0x60, 0x6d, 0x15, 0xa4, 0x3e, 0xaf, 0x82, 0x6c, 0xdc, 0x75, 0x0a, 0x2f, 0xd2, + 0xe2, 0xc7, 0x74, 0x6a, 0x09, 0x80, 0xe1, 0x67, 0x60, 0x63, 0x4b, 0x4d, 0x6c, 0x6e, 0xa9, 0x89, + 0x9d, 0x2d, 0x15, 0x3c, 0x0a, 0x54, 0xf0, 0x36, 0x50, 0xc1, 0x7a, 0xa0, 0x82, 0x8d, 0x40, 0x05, + 0x5f, 0x03, 0x15, 0x7c, 0x0f, 0xd4, 0xc4, 0x4e, 0xa0, 0x82, 0xa5, 0x86, 0x9a, 0x58, 0x6b, 0xa8, + 0x60, 0xa3, 0xa1, 0x26, 0x36, 0x1b, 0x6a, 0x62, 0xe2, 0xa6, 0xc1, 0x9c, 0x7b, 0x86, 0xe6, 0xb3, + 0x8a, 0xa0, 0xae, 0x4b, 0x34, 0x8f, 0x63, 0x69, 0x4c, 0x33, 0xd7, 0x42, 0x8e, 0xcb, 0x7c, 0xb3, + 0x4c, 0x5d, 0xd4, 0x5c, 0xc6, 0x4e, 0xc9, 0x60, 0x98, 0xce, 0x89, 0xe6, 0x2f, 0xe3, 0x80, 0xcf, + 0x46, 0xa9, 0x4b, 0x7e, 0x1e, 0x86, 0x7e, 0x06, 0x00, 0x00, 0xff, 0xff, 0xd9, 0xdf, 0x6a, 0x7b, + 0x4d, 0x09, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/subscription/crudapi/api.pb.go b/pbgo/extschema/schema/subscription/crudapi/api.pb.go new file mode 100644 index 000000000..1408ab3a5 --- /dev/null +++ b/pbgo/extschema/schema/subscription/crudapi/api.pb.go @@ -0,0 +1,3335 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/subscription/crudapi/api.proto + +package crudapi + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + subscription "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +type ErrorCode int32 + +const ( + EOK ErrorCode = 0 + ENOTFOUND ErrorCode = 1 + EEXISTS ErrorCode = 2 + EUNKNOWN ErrorCode = 3 +) + +var ErrorCode_name = map[int32]string{ + 0: "EOK", + 1: "ENOTFOUND", + 2: "EEXISTS", + 3: "EUNKNOWN", +} + +var ErrorCode_value = map[string]int32{ + "EOK": 0, + "ENOTFOUND": 1, + "EEXISTS": 2, + "EUNKNOWN": 3, +} + +func (ErrorCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_6d0fe769d3836949, []int{0} +} + +type ObjectGetReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + AllBackrefs bool `protobuf:"varint,10001,opt,name=all_backrefs,json=allBackrefs,proto3" json:"all_backrefs,omitempty"` + BackrefTypes []string `protobuf:"bytes,10002,rep,name=backref_types,json=backrefTypes,proto3" json:"backref_types,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10003,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` +} + +func (m *ObjectGetReq) Reset() { *m = ObjectGetReq{} } +func (*ObjectGetReq) ProtoMessage() {} +func (*ObjectGetReq) Descriptor() ([]byte, []int) { + return fileDescriptor_6d0fe769d3836949, []int{0} +} +func (m *ObjectGetReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetReq.Merge(m, src) +} +func (m *ObjectGetReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetReq proto.InternalMessageInfo + +func (m *ObjectGetReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectGetReq) GetAllBackrefs() bool { + if m != nil { + return m.AllBackrefs + } + return false +} + +func (m *ObjectGetReq) GetBackrefTypes() []string { + if m != nil { + return m.BackrefTypes + } + return nil +} + +func (m *ObjectGetReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +type ObjectGetRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.subscription.crudapi.ErrorCode" json:"err,omitempty"` + EntBackrefs []*types.Any `protobuf:"bytes,10001,rep,name=ent_backrefs,json=entBackrefs,proto3" json:"ent_backrefs,omitempty"` + ResourceVersion string `protobuf:"bytes,10002,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *subscription.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectGetRsp) Reset() { *m = ObjectGetRsp{} } +func (*ObjectGetRsp) ProtoMessage() {} +func (*ObjectGetRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_6d0fe769d3836949, []int{1} +} +func (m *ObjectGetRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetRsp.Merge(m, src) +} +func (m *ObjectGetRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetRsp proto.InternalMessageInfo + +func (m *ObjectGetRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectGetRsp) GetEntBackrefs() []*types.Any { + if m != nil { + return m.EntBackrefs + } + return nil +} + +func (m *ObjectGetRsp) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectGetRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectGetRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectGetRsp) GetSpec() *subscription.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectListReq struct { + // Filters executed on server-side - all types of filters ANDed + // Tenants to scope the listing of objects - if empty all tenants considered + TenantFilter []string `protobuf:"bytes,10000,rep,name=tenant_filter,json=tenantFilter,proto3" json:"tenant_filter,omitempty"` + // Namespaces to scope the listing of objects - if empty all namespaces considered + NamespaceFilter []string `protobuf:"bytes,10001,rep,name=namespace_filter,json=namespaceFilter,proto3" json:"namespace_filter,omitempty"` + // k8s style label selector expression + LabelFilter string `protobuf:"bytes,10002,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // TODO: currently even if one specified implementation will return all fields + ReportFields []string `protobuf:"bytes,10003,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // Get the resource_version associated with the list + ResourceVersion bool `protobuf:"varint,10004,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10005,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` + // The value for PageStart indicating from very first entry. This will be ignored unless page_limit + // is also defined + PageStart string `protobuf:"bytes,10006,opt,name=page_start,json=pageStart,proto3" json:"page_start,omitempty"` + // The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset, + // the first page will be returned. + PageLimit int32 `protobuf:"varint,10007,opt,name=page_limit,json=pageLimit,proto3" json:"page_limit,omitempty"` +} + +func (m *ObjectListReq) Reset() { *m = ObjectListReq{} } +func (*ObjectListReq) ProtoMessage() {} +func (*ObjectListReq) Descriptor() ([]byte, []int) { + return fileDescriptor_6d0fe769d3836949, []int{2} +} +func (m *ObjectListReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListReq.Merge(m, src) +} +func (m *ObjectListReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectListReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListReq proto.InternalMessageInfo + +func (m *ObjectListReq) GetTenantFilter() []string { + if m != nil { + return m.TenantFilter + } + return nil +} + +func (m *ObjectListReq) GetNamespaceFilter() []string { + if m != nil { + return m.NamespaceFilter + } + return nil +} + +func (m *ObjectListReq) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ObjectListReq) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ObjectListReq) GetResourceVersion() bool { + if m != nil { + return m.ResourceVersion + } + return false +} + +func (m *ObjectListReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +func (m *ObjectListReq) GetPageStart() string { + if m != nil { + return m.PageStart + } + return "" +} + +func (m *ObjectListReq) GetPageLimit() int32 { + if m != nil { + return m.PageLimit + } + return 0 +} + +type ObjectListRspItem struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + // If ObjectListReq has any specified report_fields, it will appear in below fields + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *subscription.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Tenant string `protobuf:"bytes,10001,opt,name=tenant,proto3" json:"tenant,omitempty"` + Namespace string `protobuf:"bytes,10002,opt,name=namespace,proto3" json:"namespace,omitempty"` + Name string `protobuf:"bytes,10003,opt,name=name,proto3" json:"name,omitempty"` + Labels map[string]string `protobuf:"bytes,10004,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ObjectListRspItem) Reset() { *m = ObjectListRspItem{} } +func (*ObjectListRspItem) ProtoMessage() {} +func (*ObjectListRspItem) Descriptor() ([]byte, []int) { + return fileDescriptor_6d0fe769d3836949, []int{3} +} +func (m *ObjectListRspItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRspItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRspItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRspItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRspItem.Merge(m, src) +} +func (m *ObjectListRspItem) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRspItem) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRspItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRspItem proto.InternalMessageInfo + +func (m *ObjectListRspItem) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectListRspItem) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRspItem) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectListRspItem) GetSpec() *subscription.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectListRspItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ObjectListRspItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ObjectListRspItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ObjectListRspItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +type ObjectListRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.subscription.crudapi.ErrorCode" json:"err,omitempty"` + Uids []string `protobuf:"bytes,10001,rep,name=uids,proto3" json:"uids,omitempty"` + Items []*ObjectListRspItem `protobuf:"bytes,10002,rep,name=items,proto3" json:"items,omitempty"` + Metadata *schema.ListMetaType `protobuf:"bytes,10003,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Will only be set if request included a page_limit and there are more pages beyond the current page + NextPage string `protobuf:"bytes,10004,opt,name=next_page,json=nextPage,proto3" json:"next_page,omitempty"` +} + +func (m *ObjectListRsp) Reset() { *m = ObjectListRsp{} } +func (*ObjectListRsp) ProtoMessage() {} +func (*ObjectListRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_6d0fe769d3836949, []int{4} +} +func (m *ObjectListRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRsp.Merge(m, src) +} +func (m *ObjectListRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRsp proto.InternalMessageInfo + +func (m *ObjectListRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectListRsp) GetUids() []string { + if m != nil { + return m.Uids + } + return nil +} + +func (m *ObjectListRsp) GetItems() []*ObjectListRspItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ObjectListRsp) GetMetadata() *schema.ListMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRsp) GetNextPage() string { + if m != nil { + return m.NextPage + } + return "" +} + +func init() { + proto.RegisterEnum("ves.io.schema.subscription.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + golang_proto.RegisterEnum("ves.io.schema.subscription.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.subscription.crudapi.ObjectGetReq") + golang_proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.subscription.crudapi.ObjectGetReq") + proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.subscription.crudapi.ObjectGetRsp") + golang_proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.subscription.crudapi.ObjectGetRsp") + proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.subscription.crudapi.ObjectListReq") + golang_proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.subscription.crudapi.ObjectListReq") + proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.subscription.crudapi.ObjectListRspItem") + golang_proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.subscription.crudapi.ObjectListRspItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.subscription.crudapi.ObjectListRspItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.subscription.crudapi.ObjectListRspItem.LabelsEntry") + proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.subscription.crudapi.ObjectListRsp") + golang_proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.subscription.crudapi.ObjectListRsp") +} + +func init() { + proto.RegisterFile("ves.io/schema/subscription/crudapi/api.proto", fileDescriptor_6d0fe769d3836949) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/subscription/crudapi/api.proto", fileDescriptor_6d0fe769d3836949) +} + +var fileDescriptor_6d0fe769d3836949 = []byte{ + // 1141 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x56, 0xcd, 0x6f, 0x1b, 0x45, + 0x14, 0xf7, 0xd8, 0x49, 0x9b, 0x1d, 0x3b, 0xad, 0x3b, 0xad, 0x84, 0x71, 0xdb, 0x55, 0x70, 0x23, + 0x88, 0xa2, 0x66, 0xb7, 0x75, 0x55, 0x29, 0xf4, 0x50, 0x48, 0xc0, 0xa9, 0xa2, 0xa6, 0x4e, 0xb5, + 0x4e, 0xa0, 0x8a, 0x90, 0xcc, 0xda, 0xfb, 0xec, 0x2e, 0x59, 0xef, 0x6e, 0x67, 0xc6, 0x56, 0x2d, + 0x14, 0x84, 0x38, 0x73, 0xe8, 0x07, 0x1f, 0x52, 0x8e, 0x9c, 0x0a, 0x7f, 0x01, 0x52, 0x2e, 0x3d, + 0x06, 0x4e, 0x11, 0x70, 0xe8, 0x91, 0x38, 0x1c, 0xe0, 0xd6, 0x3f, 0x01, 0xcd, 0xcc, 0xda, 0xb5, + 0xd3, 0xe6, 0x0b, 0x21, 0x2e, 0x5c, 0xac, 0x99, 0xdf, 0x7b, 0xef, 0x37, 0xef, 0xcd, 0xfb, 0xbd, + 0xf1, 0xe2, 0x8b, 0x2d, 0x60, 0x86, 0x1b, 0x98, 0xac, 0x7a, 0x17, 0x1a, 0xb6, 0xc9, 0x9a, 0x15, + 0x56, 0xa5, 0x6e, 0xc8, 0xdd, 0xc0, 0x37, 0xab, 0xb4, 0xe9, 0xd8, 0xa1, 0x6b, 0xda, 0xa1, 0x6b, + 0x84, 0x34, 0xe0, 0x01, 0xc9, 0x29, 0x6f, 0x43, 0x79, 0x1b, 0xfd, 0xde, 0x46, 0xe4, 0x9d, 0x9d, + 0xaa, 0xbb, 0xfc, 0x6e, 0xb3, 0x62, 0x54, 0x83, 0x86, 0x59, 0x0f, 0xea, 0x81, 0x29, 0x43, 0x2b, + 0xcd, 0x9a, 0xdc, 0xc9, 0x8d, 0x5c, 0x29, 0xca, 0xec, 0xb9, 0x7a, 0x10, 0xd4, 0x3d, 0x30, 0xe5, + 0x41, 0xbe, 0x1f, 0x70, 0x5b, 0xb0, 0xb1, 0xc8, 0xfa, 0x7a, 0x64, 0xed, 0x71, 0xd8, 0x7e, 0x3b, + 0x32, 0x9d, 0x1d, 0xcc, 0x3c, 0x08, 0xfb, 0xe3, 0xde, 0xda, 0xa7, 0xac, 0xa0, 0xf2, 0x09, 0x54, + 0x79, 0xe4, 0xf8, 0xe6, 0x3e, 0x8e, 0xbc, 0x1d, 0x42, 0x2f, 0x91, 0x41, 0xbf, 0x7e, 0x53, 0x6e, + 0xd0, 0xd4, 0x02, 0x06, 0x7e, 0x6b, 0x30, 0x9f, 0xdc, 0xf7, 0x08, 0xa7, 0x16, 0xe5, 0xb9, 0x37, + 0x80, 0x5b, 0x70, 0x8f, 0xe8, 0x18, 0xab, 0x3c, 0xca, 0x4d, 0xd7, 0xc9, 0x3c, 0x28, 0x8e, 0xa1, + 0x09, 0xcd, 0xd2, 0x14, 0xb4, 0xec, 0x3a, 0x24, 0x87, 0x53, 0xb6, 0xe7, 0x95, 0x2b, 0x76, 0x75, + 0x95, 0x42, 0x8d, 0x65, 0x1e, 0x0a, 0x8f, 0x11, 0x2b, 0x69, 0x7b, 0xde, 0x6c, 0x84, 0x91, 0x71, + 0x3c, 0x1a, 0xd9, 0xcb, 0x32, 0x9f, 0xcc, 0xa3, 0xe2, 0x58, 0x62, 0x42, 0xb3, 0x52, 0x11, 0xba, + 0x24, 0x40, 0x62, 0xe2, 0xd3, 0xae, 0x5f, 0xf5, 0x9a, 0x0e, 0x94, 0x29, 0xd4, 0x80, 0x52, 0x70, + 0xca, 0xae, 0x93, 0x79, 0xac, 0x08, 0x4f, 0x45, 0x36, 0x2b, 0x32, 0xcd, 0x3b, 0xb9, 0x9f, 0x12, + 0xfd, 0xb9, 0xb2, 0x90, 0xbc, 0x8b, 0x13, 0x40, 0xa9, 0x4a, 0xf2, 0x44, 0x7e, 0xca, 0x38, 0x58, + 0x04, 0x46, 0x81, 0xd2, 0x80, 0xbe, 0x17, 0x38, 0x60, 0x89, 0x50, 0x32, 0x8d, 0x53, 0xe0, 0xf3, + 0x81, 0x6a, 0x12, 0x13, 0xc9, 0xfc, 0x19, 0x43, 0xb5, 0xd7, 0xe8, 0xb6, 0xd7, 0x98, 0xf1, 0xdb, + 0x56, 0x12, 0x7c, 0xde, 0xab, 0x71, 0x12, 0xa7, 0x29, 0xb0, 0xa0, 0x49, 0xab, 0x50, 0x6e, 0x01, + 0x65, 0x6e, 0xe0, 0x8b, 0x32, 0xc5, 0x6d, 0x9d, 0xec, 0x1a, 0x3e, 0x50, 0x38, 0x99, 0xc3, 0x23, + 0x0d, 0xe0, 0xb6, 0x63, 0x73, 0x3b, 0x83, 0xc6, 0xd0, 0x44, 0x32, 0x7f, 0x7e, 0x57, 0xae, 0xaa, + 0xac, 0x5b, 0xc0, 0x6d, 0x71, 0x37, 0xb3, 0xc9, 0xf5, 0xb5, 0x5e, 0x84, 0xd5, 0x5b, 0x91, 0x8f, + 0xf1, 0x49, 0xd6, 0x66, 0x1c, 0x1a, 0xe5, 0x1e, 0x5d, 0x5c, 0xd2, 0x5d, 0xd8, 0x45, 0x57, 0x92, + 0x5e, 0xbb, 0x48, 0xc9, 0xfa, 0xda, 0xee, 0x70, 0xeb, 0x84, 0x02, 0x6e, 0x75, 0x4f, 0x98, 0xc1, + 0x43, 0x2c, 0x84, 0x6a, 0x26, 0x21, 0x69, 0xc7, 0xf7, 0xbb, 0xd1, 0x52, 0x08, 0x55, 0xc9, 0x7b, + 0x7c, 0x7d, 0x4d, 0x06, 0x59, 0xf2, 0xf7, 0xda, 0xf8, 0xcf, 0xd7, 0xdf, 0xd8, 0x27, 0x4c, 0x25, + 0x95, 0xdb, 0x8c, 0xe3, 0x51, 0xb5, 0x5c, 0x70, 0x99, 0x14, 0xde, 0x38, 0x1e, 0xe5, 0xe0, 0xdb, + 0x3e, 0x2f, 0xd7, 0x5c, 0x8f, 0x83, 0x6c, 0xab, 0x14, 0x8d, 0x42, 0xe7, 0x24, 0x28, 0xae, 0xdd, + 0xb7, 0x1b, 0xc0, 0x42, 0xbb, 0x0a, 0x5d, 0xc7, 0x87, 0xca, 0xf1, 0x64, 0xcf, 0x10, 0xf9, 0xe6, + 0x70, 0xca, 0xb3, 0x2b, 0xe0, 0x75, 0xfd, 0xa2, 0xf6, 0x24, 0x25, 0x18, 0xf9, 0x8c, 0xe3, 0x51, + 0x0a, 0x61, 0x40, 0xc5, 0xa9, 0xe0, 0x39, 0x4c, 0xc8, 0x4f, 0x9e, 0xaa, 0xd0, 0x39, 0x09, 0xbe, + 0xb2, 0xd9, 0x5f, 0x29, 0x9d, 0xbe, 0xd4, 0xec, 0x3d, 0x64, 0xfd, 0xf5, 0x5e, 0xb2, 0x16, 0x13, + 0x17, 0xda, 0x75, 0x28, 0x33, 0x6e, 0x53, 0x9e, 0xf9, 0x26, 0x9a, 0x38, 0x01, 0x95, 0x04, 0xd2, + 0xb3, 0x7b, 0x6e, 0xc3, 0xe5, 0x99, 0x6f, 0x85, 0x7d, 0x58, 0xd9, 0x17, 0x04, 0x92, 0xfb, 0x61, + 0x08, 0x9f, 0xea, 0xbb, 0x4a, 0x16, 0xce, 0x73, 0x68, 0x1c, 0x38, 0xc7, 0xff, 0x27, 0x4d, 0x92, + 0xd7, 0xf0, 0x31, 0xa5, 0x22, 0xf5, 0x5c, 0x69, 0x56, 0xb4, 0x25, 0xe7, 0xb1, 0xd6, 0x53, 0x4d, + 0x57, 0x1f, 0x2f, 0x10, 0x72, 0x1a, 0x0f, 0x89, 0x8d, 0x7a, 0x93, 0x34, 0x4b, 0x6e, 0xc8, 0x0a, + 0x3e, 0x26, 0x15, 0xc4, 0x84, 0x04, 0xc4, 0x6b, 0x31, 0x73, 0x98, 0x87, 0xe7, 0xa5, 0x0e, 0x19, + 0x0b, 0x92, 0xa4, 0xe0, 0x73, 0xda, 0xb6, 0x22, 0xc6, 0xec, 0xdb, 0x38, 0xd9, 0x07, 0x93, 0x34, + 0x4e, 0xac, 0x42, 0x5b, 0xf6, 0x47, 0xb3, 0xc4, 0x92, 0x9c, 0xc1, 0xc3, 0x2d, 0xdb, 0x6b, 0x82, + 0xbc, 0x64, 0xcd, 0x52, 0x9b, 0x6b, 0xf1, 0x69, 0x74, 0xc8, 0xb9, 0xfb, 0x72, 0x70, 0xee, 0xfe, + 0x95, 0x47, 0xf4, 0x34, 0x1e, 0x6a, 0xba, 0x0e, 0xeb, 0xce, 0xa1, 0xdc, 0x90, 0x05, 0x3c, 0xec, + 0x72, 0x68, 0x44, 0x6f, 0x7f, 0x32, 0x7f, 0xf5, 0x1f, 0x5d, 0x92, 0xa5, 0x48, 0xc8, 0x74, 0x9f, + 0x5a, 0x65, 0x33, 0x92, 0xf9, 0xb3, 0xbb, 0x08, 0x45, 0x54, 0x57, 0x57, 0x7d, 0xfa, 0x3c, 0x87, + 0x35, 0x1f, 0xee, 0xf3, 0xb2, 0x98, 0x17, 0x35, 0xb3, 0x9a, 0x35, 0x22, 0x90, 0xdb, 0x76, 0x1d, + 0x26, 0xaf, 0x63, 0xad, 0x57, 0x0c, 0x39, 0x8e, 0x13, 0x85, 0xc5, 0x9b, 0xe9, 0x18, 0x19, 0xc5, + 0x5a, 0xa1, 0xb8, 0xb8, 0x34, 0xb7, 0xb8, 0x5c, 0x7c, 0x3f, 0x8d, 0x48, 0x12, 0x1f, 0x2f, 0x14, + 0xee, 0xcc, 0x97, 0x96, 0x4a, 0xe9, 0x38, 0x49, 0xe1, 0x91, 0xc2, 0x72, 0xf1, 0x66, 0x71, 0xf1, + 0xc3, 0x62, 0x3a, 0x91, 0xff, 0x6e, 0x18, 0x27, 0x66, 0x6e, 0xcf, 0x93, 0xbf, 0x10, 0x4e, 0xdc, + 0x00, 0x4e, 0x2e, 0x1d, 0xbe, 0x4a, 0xf5, 0x7f, 0x9b, 0x3d, 0x62, 0x04, 0x0b, 0x73, 0x9f, 0x6d, + 0xfe, 0x18, 0x47, 0x5f, 0xfc, 0xfa, 0xc7, 0xe3, 0x38, 0x27, 0xa6, 0xb9, 0x77, 0xb4, 0xa9, 0xa2, + 0xcc, 0x4f, 0x5f, 0xbc, 0x03, 0x6b, 0x2b, 0x33, 0xe4, 0x9d, 0xfd, 0x42, 0x5c, 0x9f, 0xd3, 0x40, + 0x8c, 0x0c, 0x37, 0x29, 0xd8, 0xce, 0xab, 0x28, 0xc8, 0x6f, 0x08, 0x0f, 0x89, 0xcb, 0x26, 0x97, + 0x8f, 0xd8, 0x52, 0xb8, 0x97, 0xbd, 0x7c, 0x64, 0x15, 0xe4, 0x6a, 0xbd, 0x72, 0x3f, 0x22, 0x17, + 0x0e, 0x2e, 0x97, 0xad, 0x5c, 0x25, 0x57, 0x8e, 0x5e, 0x22, 0x23, 0x4f, 0x10, 0xc6, 0xe2, 0xcc, + 0x12, 0xa7, 0x60, 0x37, 0xfe, 0xa3, 0xe2, 0xf2, 0xb2, 0xb0, 0x8b, 0x64, 0xf2, 0x10, 0x85, 0x99, + 0x4c, 0x66, 0x76, 0x09, 0x65, 0xa7, 0x9e, 0x6e, 0x20, 0xb4, 0xb9, 0x81, 0xd0, 0x2f, 0x1b, 0xe8, + 0xe0, 0x99, 0x9f, 0x7d, 0x84, 0xb6, 0xb6, 0xf5, 0xd8, 0xb3, 0x6d, 0x3d, 0xf6, 0x7c, 0x5b, 0x47, + 0x9f, 0x77, 0x74, 0xf4, 0xa4, 0xa3, 0xa3, 0xcd, 0x8e, 0x8e, 0xb6, 0x3a, 0x3a, 0xfa, 0xbd, 0xa3, + 0xa3, 0x3f, 0x3b, 0x7a, 0xec, 0x79, 0x47, 0x47, 0x0f, 0x76, 0xf4, 0xd8, 0xd3, 0x1d, 0x1d, 0x6d, + 0xed, 0xe8, 0xb1, 0x67, 0x3b, 0x7a, 0x6c, 0xe5, 0x4e, 0x3d, 0x08, 0x57, 0xeb, 0x46, 0x2b, 0x10, + 0x7f, 0x96, 0xd4, 0x36, 0x9a, 0xcc, 0x94, 0x8b, 0x5a, 0x40, 0x1b, 0x53, 0x21, 0x0d, 0x5a, 0xae, + 0x03, 0x74, 0xaa, 0x6b, 0x36, 0xc3, 0x4a, 0x3d, 0x30, 0xe1, 0x3e, 0xef, 0x7e, 0xb4, 0xee, 0xfd, + 0xed, 0x5e, 0x39, 0x26, 0x3f, 0xad, 0xae, 0xfc, 0x1d, 0x00, 0x00, 0xff, 0xff, 0xbc, 0x46, 0x36, + 0x82, 0xe8, 0x0b, 0x00, 0x00, +} + +func (x ErrorCode) String() string { + s, ok := ErrorCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ObjectGetReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetReq) + if !ok { + that2, ok := that.(ObjectGetReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.AllBackrefs != that1.AllBackrefs { + return false + } + if len(this.BackrefTypes) != len(that1.BackrefTypes) { + return false + } + for i := range this.BackrefTypes { + if this.BackrefTypes[i] != that1.BackrefTypes[i] { + return false + } + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + return true +} +func (this *ObjectGetRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetRsp) + if !ok { + that2, ok := that.(ObjectGetRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.EntBackrefs) != len(that1.EntBackrefs) { + return false + } + for i := range this.EntBackrefs { + if !this.EntBackrefs[i].Equal(that1.EntBackrefs[i]) { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectListReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListReq) + if !ok { + that2, ok := that.(ObjectListReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.TenantFilter) != len(that1.TenantFilter) { + return false + } + for i := range this.TenantFilter { + if this.TenantFilter[i] != that1.TenantFilter[i] { + return false + } + } + if len(this.NamespaceFilter) != len(that1.NamespaceFilter) { + return false + } + for i := range this.NamespaceFilter { + if this.NamespaceFilter[i] != that1.NamespaceFilter[i] { + return false + } + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + if this.PageStart != that1.PageStart { + return false + } + if this.PageLimit != that1.PageLimit { + return false + } + return true +} +func (this *ObjectListRspItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRspItem) + if !ok { + that2, ok := that.(ObjectListRspItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + return true +} +func (this *ObjectListRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRsp) + if !ok { + that2, ok := that.(ObjectListRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.Uids) != len(that1.Uids) { + return false + } + for i := range this.Uids { + if this.Uids[i] != that1.Uids[i] { + return false + } + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if this.NextPage != that1.NextPage { + return false + } + return true +} +func (this *ObjectGetReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectGetReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "AllBackrefs: "+fmt.Sprintf("%#v", this.AllBackrefs)+",\n") + s = append(s, "BackrefTypes: "+fmt.Sprintf("%#v", this.BackrefTypes)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&crudapi.ObjectGetRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.EntBackrefs != nil { + s = append(s, "EntBackrefs: "+fmt.Sprintf("%#v", this.EntBackrefs)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListReq{") + s = append(s, "TenantFilter: "+fmt.Sprintf("%#v", this.TenantFilter)+",\n") + s = append(s, "NamespaceFilter: "+fmt.Sprintf("%#v", this.NamespaceFilter)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "PageStart: "+fmt.Sprintf("%#v", this.PageStart)+",\n") + s = append(s, "PageLimit: "+fmt.Sprintf("%#v", this.PageLimit)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRspItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListRspItem{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectListRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "Uids: "+fmt.Sprintf("%#v", this.Uids)+",\n") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + s = append(s, "NextPage: "+fmt.Sprintf("%#v", this.NextPage)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringApi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) + List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) + ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + out := new(ObjectGetRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.subscription.crudapi.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + out := new(ObjectListRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.subscription.crudapi.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + stream, err := c.cc.NewStream(ctx, &_API_serviceDesc.Streams[0], "/ves.io.schema.subscription.crudapi.API/ListStream", opts...) + if err != nil { + return nil, err + } + x := &aPIListStreamClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type API_ListStreamClient interface { + Recv() (*ObjectListRsp, error) + grpc.ClientStream +} + +type aPIListStreamClient struct { + grpc.ClientStream +} + +func (x *aPIListStreamClient) Recv() (*ObjectListRsp, error) { + m := new(ObjectListRsp) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + Get(context.Context, *ObjectGetReq) (*ObjectGetRsp, error) + List(context.Context, *ObjectListReq) (*ObjectListRsp, error) + ListStream(*ObjectListReq, API_ListStreamServer) error +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) ListStream(req *ObjectListReq, srv API_ListStreamServer) error { + return status.Errorf(codes.Unimplemented, "method ListStream not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectGetReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.subscription.crudapi.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*ObjectGetReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.subscription.crudapi.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ObjectListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ObjectListReq) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(APIServer).ListStream(m, &aPIListStreamServer{stream}) +} + +type API_ListStreamServer interface { + Send(*ObjectListRsp) error + grpc.ServerStream +} + +type aPIListStreamServer struct { + grpc.ServerStream +} + +func (x *aPIListStreamServer) Send(m *ObjectListRsp) error { + return x.ServerStream.SendMsg(m) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.subscription.crudapi.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "ListStream", + Handler: _API_ListStream_Handler, + ServerStreams: true, + }, + }, + Metadata: "ves.io/schema/subscription/crudapi/api.proto", +} + +func (m *ObjectGetReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x98 + } + if len(m.BackrefTypes) > 0 { + for iNdEx := len(m.BackrefTypes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.BackrefTypes[iNdEx]) + copy(dAtA[i:], m.BackrefTypes[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.BackrefTypes[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if m.AllBackrefs { + i-- + if m.AllBackrefs { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x88 + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.EntBackrefs) > 0 { + for iNdEx := len(m.EntBackrefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EntBackrefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PageLimit != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.PageLimit)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb8 + } + if len(m.PageStart) > 0 { + i -= len(m.PageStart) + copy(dAtA[i:], m.PageStart) + i = encodeVarintApi(dAtA, i, uint64(len(m.PageStart))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb2 + } + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa8 + } + if m.ResourceVersion { + i-- + if m.ResourceVersion { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa0 + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintApi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.NamespaceFilter) > 0 { + for iNdEx := len(m.NamespaceFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.NamespaceFilter[iNdEx]) + copy(dAtA[i:], m.NamespaceFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.NamespaceFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if len(m.TenantFilter) > 0 { + for iNdEx := len(m.TenantFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.TenantFilter[iNdEx]) + copy(dAtA[i:], m.TenantFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.TenantFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRspItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRspItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRspItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintApi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintApi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.NextPage) > 0 { + i -= len(m.NextPage) + copy(dAtA[i:], m.NextPage) + i = encodeVarintApi(dAtA, i, uint64(len(m.NextPage))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if len(m.Uids) > 0 { + for iNdEx := len(m.Uids) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Uids[iNdEx]) + copy(dAtA[i:], m.Uids[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.Uids[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func encodeVarintApi(dAtA []byte, offset int, v uint64) int { + offset -= sovApi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ObjectGetReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.AllBackrefs { + n += 4 + } + if len(m.BackrefTypes) > 0 { + for _, s := range m.BackrefTypes { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.IncludeReferredId { + n += 4 + } + return n +} + +func (m *ObjectGetRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.EntBackrefs) > 0 { + for _, e := range m.EntBackrefs { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectListReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.TenantFilter) > 0 { + for _, s := range m.TenantFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.NamespaceFilter) > 0 { + for _, s := range m.NamespaceFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.LabelFilter) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.ResourceVersion { + n += 4 + } + if m.IncludeReferredId { + n += 4 + } + l = len(m.PageStart) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.PageLimit != 0 { + n += 3 + sovApi(uint64(m.PageLimit)) + } + return n +} + +func (m *ObjectListRspItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Tenant) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Namespace) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 3 + sovApi(uint64(mapEntrySize)) + } + } + return n +} + +func (m *ObjectListRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.Uids) > 0 { + for _, s := range m.Uids { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.NextPage) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func sovApi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozApi(x uint64) (n int) { + return sovApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ObjectGetReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectGetReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `AllBackrefs:` + fmt.Sprintf("%v", this.AllBackrefs) + `,`, + `BackrefTypes:` + fmt.Sprintf("%v", this.BackrefTypes) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForEntBackrefs := "[]*Any{" + for _, f := range this.EntBackrefs { + repeatedStringForEntBackrefs += strings.Replace(fmt.Sprintf("%v", f), "Any", "types.Any", 1) + "," + } + repeatedStringForEntBackrefs += "}" + s := strings.Join([]string{`&ObjectGetRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "subscription.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `EntBackrefs:` + repeatedStringForEntBackrefs + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectListReq{`, + `TenantFilter:` + fmt.Sprintf("%v", this.TenantFilter) + `,`, + `NamespaceFilter:` + fmt.Sprintf("%v", this.NamespaceFilter) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `PageStart:` + fmt.Sprintf("%v", this.PageStart) + `,`, + `PageLimit:` + fmt.Sprintf("%v", this.PageLimit) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRspItem) String() string { + if this == nil { + return "nil" + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&ObjectListRspItem{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "subscription.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Labels:` + mapStringForLabels + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ObjectListRspItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ObjectListRspItem", "ObjectListRspItem", 1) + "," + } + repeatedStringForItems += "}" + s := strings.Join([]string{`&ObjectListRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `Uids:` + fmt.Sprintf("%v", this.Uids) + `,`, + `Items:` + repeatedStringForItems + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ListMetaType", "schema.ListMetaType", 1) + `,`, + `NextPage:` + fmt.Sprintf("%v", this.NextPage) + `,`, + `}`, + }, "") + return s +} +func valueToStringApi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ObjectGetReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllBackrefs", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AllBackrefs = bool(v != 0) + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackrefTypes", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackrefTypes = append(m.BackrefTypes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10003: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &subscription.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntBackrefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntBackrefs = append(m.EntBackrefs, &types.Any{}) + if err := m.EntBackrefs[len(m.EntBackrefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TenantFilter = append(m.TenantFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NamespaceFilter = append(m.NamespaceFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10004: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResourceVersion = bool(v != 0) + case 10005: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + case 10006: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PageStart", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PageStart = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10007: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PageLimit", wireType) + } + m.PageLimit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PageLimit |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRspItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRspItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRspItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &subscription.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uids", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uids = append(m.Uids, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ObjectListRspItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ListMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NextPage", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NextPage = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipApi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthApi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupApi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthApi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthApi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowApi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupApi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/subscription/crudapi/api.pb.gw.go b/pbgo/extschema/schema/subscription/crudapi/api.pb.gw.go new file mode 100644 index 000000000..2115d86dc --- /dev/null +++ b/pbgo/extschema/schema/subscription/crudapi/api.pb.gw.go @@ -0,0 +1,521 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/subscription/crudapi/api.proto + +/* +Package crudapi is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package crudapi + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_1 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_1 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_ListStream_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_ListStream_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (API_ListStreamClient, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_ListStream_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.ListStream(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_ListStream_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_ListStream_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.subscription", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.subscription", "introspect", "read", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.subscription", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.subscription", "introspect", "read", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_ListStream_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"ves.io.schema.subscription", "Objects", "stream"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_Get_1 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_List_1 = runtime.ForwardResponseMessage + + forward_API_ListStream_0 = runtime.ForwardResponseStream +) diff --git a/pbgo/extschema/schema/subscription/crudapi/api.vesapi.go b/pbgo/extschema/schema/subscription/crudapi/api.vesapi.go new file mode 100644 index 000000000..3208c6ad6 --- /dev/null +++ b/pbgo/extschema/schema/subscription/crudapi/api.vesapi.go @@ -0,0 +1,2220 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "context" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// augment methods on ObjectReq from api.pb.go + +// create setters in response from object for oneof fields + +// CLIENT side + +func NewObjectGetReq(uid string, opts ...server.CRUDCallOpt) *ObjectGetReq { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + req := &ObjectGetReq{ObjectUid: uid, AllBackrefs: ccOpts.AllBR, BackrefTypes: ccOpts.TypesBR} + req.IncludeReferredId = ccOpts.IncludeReferredID + return req +} + +func newObjectListReqFrom(cco *server.CrudCallOpts) (*ObjectListReq, error) { + r := &ObjectListReq{ + TenantFilter: cco.TenantFilter, + NamespaceFilter: cco.NamespaceFilter, + ReportFields: cco.ReportFields, + IncludeReferredId: cco.IncludeReferredID, + } + switch len(cco.LabelFilter) { + case 0: + case 1: + r.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + if cco.OutResourceVersion != nil { + r.ResourceVersion = true + } + if cco.PageStart != "" { + r.PageStart = cco.PageStart + } + if cco.PageLimit != 0 { + r.PageLimit = cco.PageLimit + } + return r, nil +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + return nil, fmt.Errorf("Not implemented") + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + return fmt.Errorf("Not implemented") + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Getting from grpcClient") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp == nil { + return nil, errors.ErrOrNil(merr) + } + respDetail := server.GetResponse{} + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + stream, err := c.grpcClient.ListStream(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Listing with grpc client") + } + lc := &crudAPIGrpcListStreamClient{stream} + return lc, nil + +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + return fmt.Errorf("Not implemented") + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +type crudAPIGrpcListStreamClient struct { + stream API_ListStreamClient +} + +func (lc *crudAPIGrpcListStreamClient) RecvIDs() ([]string, error) { + idSet := []string{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return idSet, err + } + for _, li := range rsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err +} + +func (lc *crudAPIGrpcListStreamClient) RecvItems() ([]server.ListItem, error) { + sliSet := []server.ListItem{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return sliSet, err + } + for _, li := range rsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + return nil, fmt.Errorf("Not implemented") + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + return fmt.Errorf("Not implemented") + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.subscription.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, req.ObjectUid) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &ObjectGetRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + o := object.NewDBObject(nil) + gRsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.subscription.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + for _, fVal := range cco.TenantFilter { + q.Add("tenant_filter", fVal) + } + for _, fVal := range cco.NamespaceFilter { + q.Add("namespace_filter", fVal) + } + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + + if cco.IncludeReferredID { + q.Add("include_referred_id", "true") + } + + if cco.OutResourceVersion != nil { + q.Add("resource_version", "true") + } + if cco.PageStart != "" { + q.Add("page_start", cco.PageStart) + } + if cco.PageLimit != 0 { + q.Add("page_limit", fmt.Sprintf("%d", cco.PageLimit)) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ObjectListRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rspo.GetNextPage() + } + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + return fmt.Errorf("Not implemented") + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Get(ctx context.Context, req *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.subscription.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.subscription.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.subscription.crudapi.API.Get") + return oah.Get(ctx, req) +} + +func (c *APIInprocClient) List(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.subscription.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.subscription.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.subscription.crudapi.API.List") + return oah.List(ctx, req) +} + +func (c *APIInprocClient) ListStream(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + return nil, fmt.Errorf("ListStream Not implemented") +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + return nil, fmt.Errorf("Not implemented") + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + return fmt.Errorf("Not implemented") + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req := NewObjectGetReq(key, opts...) + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + rsp, err := c.cl.List(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + return fmt.Errorf("Not implemented") + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.subscription.crudapi.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.subscription.crudapi.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.subscription.crudapi.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private get request") + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceGetRequest{IsPublic: false, UID: key, AllBackRefs: req.AllBackrefs, BackRefTypes: req.BackrefTypes} + rsrcReq.OmitReferredID = !req.IncludeReferredId + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Get")).Err() + } + rsp, err := NewObjectGetRsp(req, rsrcRsp) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Get with NewObjectGetRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.subscription.crudapi.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private list request") + } + } + } + var merr error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: false, + GetResourceVersion: req.ResourceVersion, + OmitReferredID: !req.IncludeReferredId, + PageStart: req.PageStart, + PageLimit: req.PageLimit, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "List")) + } + rsp, err := NewObjectListRsp(req, rsrcRsp.Items) + if err != nil { + merr = multierror.Append(merr, err) + } + rsp.Metadata.ResourceVersion = rsrcRsp.ResourceVersion + rsp.NextPage = rsrcRsp.NextPage + return rsp, merr +} + +func (s *APISrv) ListStream(req *ObjectListReq, stream API_ListStreamServer) error { + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: true, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(stream.Context(), rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListStream")) + } + streamSvr := &crudAPIListStreamServer{stream} + for item := range rsrcRsp.ItemsCh { + if err := streamSvr.SendResource(req, item); err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "Stream-Send")) + continue + } + } + return errors.ErrOrNil(merr) +} + +// Assert that APISrv implements both the generated gRPC APIServer interface and the +// stdlib CRUDServer interface +var ( + _ APIServer = &APISrv{} +) + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.crudapi.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.crudapi.API", strings.Join(sl[:len(sl)-1], ".")) +} + +// implements both stdlib.server.ListStreamServer and API_ListStreamServer +type crudAPIListStreamServer struct { + stream API_ListStreamServer +} + +func (lc *crudAPIListStreamServer) Context() context.Context { + return lc.stream.Context() +} + +func (lc *crudAPIListStreamServer) SendResource(r *ObjectListReq, item *server.ResourceListResponseItem) error { + lRsp, err := NewObjectListRsp(r, []*server.ResourceListResponseItem{item}) + if err != nil { + return errors.Wrap(err, "SendResource with NewObjectListRsp") + } + if err := lc.Send(lRsp); err != nil { + return errors.Wrap(err, "ListStreamServer.SendResource()") + } + return nil +} + +func (lc *crudAPIListStreamServer) Send(o *ObjectListRsp) error { + if err := lc.stream.Send(o); err != nil { + return errors.Wrap(err, "ListStreamServer.Send()") + } + return nil +} + +// Implement GetReq interface +func (r *ObjectGetReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectGetReq) GetBackrefParam() (bool, []string) { + return r.AllBackrefs, r.BackrefTypes +} + +func (r *ObjectGetRsp) GetBackrefs(ef db.NewEntryFunc) ([]db.Entry, error) { + brEnts := []db.Entry{} + bRefs := r.GetEntBackrefs() + for _, br := range bRefs { + // convert schema.ves.io/ves.io.examplesvc.objectone.Object to ves.io.examplesvc.objectone.Object + sl := strings.Split(br.TypeUrl, "/") + ot := sl[len(sl)-1] + ent, err := ef(ot, db.OpWithSerializedBytes(br.Value)) + if err != nil { + return nil, errors.Wrap(err, "NewEntry") + } + brEnts = append(brEnts, ent) + } + + return brEnts, nil +} + +// Implement server.ListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjUid() string { + return l.ObjectUid +} + +// Implement server.SROListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ObjectListRspItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ObjectListRspItem) GetObjName() string { + return l.Name +} + +func (l *ObjectListRspItem) GetObjLabels() map[string]string { + return l.Labels +} + +func NewObjectGetRsp(r *ObjectGetReq, rsrcRsp *server.ResourceGetResponse) (*ObjectGetRsp, error) { + rspo := &ObjectGetRsp{} + e := rsrcRsp.Entry + brEntries := rsrcRsp.BackRefs + if e == nil { + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *object.DBObject in NewObjectGetRsp") + } + rspo.ResourceVersion = rsrcRsp.ResourceVersion + rspo.FromObject(o) + // Backref + getBackrefsFunc := func() ([]*google_protobuf.Any, error) { + var merr *multierror.Error + var entBackrefs []*google_protobuf.Any + for _, brEnt := range brEntries { + brSer, err := brEnt.MarshalBytes() + if err != nil { + merr = multierror.Append(merr, err) + continue + } + entBackrefs = append(entBackrefs, &google_protobuf.Any{TypeUrl: "schema.ves.io/" + brEnt.Type(), Value: brSer}) + } + return entBackrefs, errors.ErrOrNil(merr) + } + entBackrefs, err := getBackrefsFunc() + if err != nil { + return nil, err + } + rspo.EntBackrefs = entBackrefs + return rspo, nil +} + +func NewObjectListRsp(req *ObjectListReq, rsrcRspItems []*server.ResourceListResponseItem) (*ObjectListRsp, error) { + if req == nil { + return nil, fmt.Errorf("Nil ObjectListReq") + } + var errs error + o := &ObjectListRsp{} + o.Metadata = &ves_io_schema.ListMetaType{} + o.Uids = []string{} + o.Items = []*ObjectListRspItem{} + for _, rsrcItem := range rsrcRspItems { + if rsrcItem == nil { + errs = multierror.Append(errs, fmt.Errorf("ResourceListResponseItem is nil")) + continue + } + e := rsrcItem.Entry + dbObj, ok := e.(*object.DBObject) + if !ok { + errs = multierror.Append(errs, fmt.Errorf("Expected %T, got %T: %v", &object.DBObject{}, e, e)) + continue + } + key, err := dbObj.Key() + if err != nil { + errs = multierror.Append(errs, errors.WithMessagef(err, "Key() %v FAILED", dbObj)) + continue + } + + tenant := dbObj.GetSystemMetadata().GetTenant() + namespace := dbObj.GetMetadata().GetNamespace() + name := dbObj.GetMetadata().GetName() + labels := dbObj.GetMetadata().GetLabels() + + // TODO: DEPRECATE setting to o.Uids + o.Uids = append(o.Uids, key) + + item := &ObjectListRspItem{ + ObjectUid: key, + Tenant: tenant, + Namespace: namespace, + Name: name, + Labels: labels, + } + if len(req.ReportFields) > 0 { + item.FromObject(e) + } + o.Items = append(o.Items, item) + } + return o, errs +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "ves.io/schema/subscription/crudapi/api.proto", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/ves.io.schema.subscription/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.subscription.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.crudapi.API.Get" + }, + "x-displayname": "", + "x-ves-object-kind": "subscription", + "x-ves-object-type": "ves.io.schema.subscription.Object", + "x-ves-proto-service": "ves.io.schema.subscription.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.subscription/Objects": { + "get": { + "operationId": "ves.io.schema.subscription.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.crudapi.API.List" + }, + "x-displayname": "", + "x-ves-object-kind": "subscription", + "x-ves-object-type": "ves.io.schema.subscription.Object", + "x-ves-proto-service": "ves.io.schema.subscription.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.subscription/Objects/stream": { + "get": { + "operationId": "ves.io.schema.subscription.crudapi.API.ListStream", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "schema": { + "$ref": "#/x-stream-definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-crudapi-api-liststream" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.crudapi.API.ListStream" + }, + "x-displayname": "", + "x-ves-object-kind": "subscription", + "x-ves-object-type": "ves.io.schema.subscription.Object", + "x-ves-proto-service": "ves.io.schema.subscription.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.subscription/introspect/read/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.subscription.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.crudapi.API.Get" + }, + "x-displayname": "", + "x-ves-object-kind": "subscription", + "x-ves-object-type": "ves.io.schema.subscription.Object", + "x-ves-proto-service": "ves.io.schema.subscription.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.subscription/introspect/read/Objects": { + "get": { + "operationId": "ves.io.schema.subscription.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.crudapi.API.List" + }, + "x-displayname": "", + "x-ves-object-kind": "subscription", + "x-ves-object-type": "ves.io.schema.subscription.Object", + "x-ves-proto-service": "ves.io.schema.subscription.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + } + }, + "definitions": { + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.subscription.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "err": { + "$ref": "#/definitions/subscriptioncrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/subscriptionSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectListRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.subscription.crudapi.ObjectListRsp", + "properties": { + "err": { + "$ref": "#/definitions/subscriptioncrudapiErrorCode" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } + }, + "metadata": { + "$ref": "#/definitions/schemaListMetaType" + }, + "next_page": { + "type": "string", + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "crudapiObjectListRspItem": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.subscription.crudapi.ObjectListRspItem", + "properties": { + "labels": { + "type": "object" + }, + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/subscriptionSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" + } + } + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "runtimeStreamError": { + "type": "object", + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "grpc_code": { + "type": "integer", + "format": "int32" + }, + "http_code": { + "type": "integer", + "format": "int32" + }, + "http_status": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaListMetaType": { + "type": "object", + "description": "ListMetaType is metadata that all lists must have.", + "title": "ListMetaType", + "x-displayname": "List Metadata", + "x-ves-proto-message": "ves.io.schema.ListMetaType" + }, + "schemaObjectMetaType": { + "type": "object", + "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "ObjectMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectMetaType": { + "type": "object", + "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "value" + }, + "creator_cookie": { + "type": "string", + "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", + "title": "creator_cookie", + "x-displayname": "Creator Cookie", + "x-ves-example": "value" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "value" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "namespace": { + "type": "array", + "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "namespace", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Namespace Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "sre_disable": { + "type": "boolean", + "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", + "title": "sre_disable", + "format": "boolean", + "x-displayname": "SRE Disable", + "x-ves-example": "true" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "trace_info": { + "type": "string", + "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", + "title": "trace_info", + "x-displayname": "Trace Info", + "x-ves-example": "value" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Indicate origin of this object.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "subscriptionAddonServiceStatus": { + "type": "object", + "description": "x-displayName: \"Addon Service Status\"\nDisplay current state of an addon service", + "title": "AddonServiceStatus", + "properties": { + "status": { + "description": "x-displayName: \"Addon Subscription Status\"\nStatus of an addon subscription", + "title": "Status", + "$ref": "#/definitions/subscriptionStatus" + } + } + }, + "subscriptionGlobalSpecType": { + "type": "object", + "description": "This is the shape of the subscription object in the database at Global Controller.", + "title": "GlobalSpecType", + "x-displayname": "Global Specification", + "x-ves-proto-message": "ves.io.schema.subscription.GlobalSpecType", + "properties": { + "addon_service_status": { + "type": "object", + "description": " Addon service status", + "title": "Addon Service Status", + "x-displayname": "Addon Service Status" + } + } + }, + "subscriptionSpecType": { + "type": "object", + "description": "Shape of the subscription object", + "title": "SpecType", + "x-displayname": "Specification", + "x-ves-proto-message": "ves.io.schema.subscription.SpecType", + "properties": { + "gc_spec": { + "title": "gc_spec", + "$ref": "#/definitions/subscriptionGlobalSpecType", + "x-displayname": "GC Spec" + } + } + }, + "subscriptionStatus": { + "type": "string", + "description": "x-displayName: \"Addon Subscription Status\"\nStatus of an addon subscription\n\n - AS_UNKNOWN: x-displayName: \"None\"\nDefault state\n - AS_SUBSCRIBED: x-displayName: \"Subscribed\"\nSuccessfully subscribed\n - AS_UNSUBSCRIBED: x-displayName: \"Unsubscribed\"\nSuccessfully unsubscribed\n - AS_ERROR: x-displayName: \"Error\"\nService subscription request ended up in error state.", + "title": "Status", + "enum": [ + "AS_UNKNOWN", + "AS_SUBSCRIBED", + "AS_UNSUBSCRIBED", + "AS_ERROR" + ], + "default": "AS_UNKNOWN" + }, + "subscriptioncrudapiErrorCode": { + "type": "string", + "enum": [ + "EOK", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN" + ], + "default": "EOK", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.subscription.crudapi.ErrorCode" + } + }, + "x-displayname": "", + "x-stream-definitions": { + "crudapiObjectListRsp": { + "properties": { + "error": { + "$ref": "#/definitions/runtimeStreamError" + }, + "result": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "title": "Stream result of crudapiObjectListRsp", + "type": "object" + } + }, + "x-ves-proto-file": "ves.io/schema/subscription/crudapi/api.proto" +}` diff --git a/pbgo/extschema/schema/subscription/crudapi/api.vesmsg.go b/pbgo/extschema/schema/subscription/crudapi/api.vesmsg.go new file mode 100644 index 000000000..e73490351 --- /dev/null +++ b/pbgo/extschema/schema/subscription/crudapi/api.vesmsg.go @@ -0,0 +1,859 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_subscription "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/subscription" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetReq) DeepCopy() *ObjectGetReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectGetReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["all_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("all_backrefs")) + if err := fv(ctx, m.GetAllBackrefs(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["backref_types"]; exists { + + vOpts := append(opts, db.WithValidateField("backref_types")) + for idx, item := range m.GetBackrefTypes() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetReqValidator = func() *ValidateObjectGetReq { + v := &ValidateObjectGetReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectGetReqValidator() db.Validator { + return DefaultObjectGetReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetRsp) DeepCopy() *ObjectGetRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectGetRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectGetRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectGetRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ent_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("ent_backrefs")) + for idx, item := range m.GetEntBackrefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetRspValidator = func() *ValidateObjectGetRsp { + v := &ValidateObjectGetRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + return v +}() + +func ObjectGetRspValidator() db.Validator { + return DefaultObjectGetRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListReq) DeepCopy() *ObjectListReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectListReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace_filter")) + for idx, item := range m.GetNamespaceFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["page_limit"]; exists { + + vOpts := append(opts, db.WithValidateField("page_limit")) + if err := fv(ctx, m.GetPageLimit(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["page_start"]; exists { + + vOpts := append(opts, db.WithValidateField("page_start")) + if err := fv(ctx, m.GetPageStart(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_filter")) + for idx, item := range m.GetTenantFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListReqValidator = func() *ValidateObjectListReq { + v := &ValidateObjectListReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectListReqValidator() db.Validator { + return DefaultObjectListReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRsp) DeepCopy() *ObjectListRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRsp) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateObjectListRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["next_page"]; exists { + + vOpts := append(opts, db.WithValidateField("next_page")) + if err := fv(ctx, m.GetNextPage(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uids"]; exists { + + vOpts := append(opts, db.WithValidateField("uids")) + for idx, item := range m.GetUids() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspValidator = func() *ValidateObjectListRsp { + v := &ValidateObjectListRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ObjectListRspItemValidator().Validate + + return v +}() + +func ObjectListRspValidator() db.Validator { + return DefaultObjectListRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRspItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRspItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRspItem) DeepCopy() *ObjectListRspItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRspItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRspItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRspItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspItemValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRspItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRspItem) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectListRspItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRspItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRspItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRspItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspItemValidator = func() *ValidateObjectListRspItem { + v := &ValidateObjectListRspItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + return v +}() + +func ObjectListRspItemValidator() db.Validator { + return DefaultObjectListRspItemValidator +} + +func (m *ObjectGetRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_subscription.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_subscription.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectGetRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectGetRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectGetRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_subscription.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectGetRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectGetRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectListRspItem) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_subscription.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_subscription.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() + +} + +func (m *ObjectListRspItem) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectListRspItem) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectListRspItem) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_subscription.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata + +} + +func (m *ObjectListRspItem) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectListRspItem) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/subscription/crudapi/pkg.vespkg.go b/pbgo/extschema/schema/subscription/crudapi/pkg.vespkg.go new file mode 100644 index 000000000..ded5dc186 --- /dev/null +++ b/pbgo/extschema/schema/subscription/crudapi/pkg.vespkg.go @@ -0,0 +1,75 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.subscription.crudapi.ObjectGetReq"] = ObjectGetReqValidator() + vr["ves.io.schema.subscription.crudapi.ObjectGetRsp"] = ObjectGetRspValidator() + vr["ves.io.schema.subscription.crudapi.ObjectListReq"] = ObjectListReqValidator() + vr["ves.io.schema.subscription.crudapi.ObjectListRsp"] = ObjectListRspValidator() + vr["ves.io.schema.subscription.crudapi.ObjectListRspItem"] = ObjectListRspItemValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + csr = mdr.PvtCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.subscription.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.subscription.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.subscription.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.subscription.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.subscription.crudapi.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.subscription.crudapi.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.subscription.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/subscription/object.pb.go b/pbgo/extschema/schema/subscription/object.pb.go new file mode 100644 index 000000000..f5541c7ba --- /dev/null +++ b/pbgo/extschema/schema/subscription/object.pb.go @@ -0,0 +1,792 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/subscription/object.proto + +package subscription + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Object +// +// x-displayName: "Object" +// Schema Subscription Object +type Object struct { + // metadata + // + // x-displayName: "Metadata" + // Standard object's metadata + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // System generated object's metadata + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // Specification of the desired behavior of the tenant + Spec *SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *Object) Reset() { *m = Object{} } +func (*Object) ProtoMessage() {} +func (*Object) Descriptor() ([]byte, []int) { + return fileDescriptor_826d63198e81738b, []int{0} +} +func (m *Object) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Object) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Object) XXX_Merge(src proto.Message) { + xxx_messageInfo_Object.Merge(m, src) +} +func (m *Object) XXX_Size() int { + return m.Size() +} +func (m *Object) XXX_DiscardUnknown() { + xxx_messageInfo_Object.DiscardUnknown(m) +} + +var xxx_messageInfo_Object proto.InternalMessageInfo + +func (m *Object) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *Object) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *Object) GetSpec() *SpecType { + if m != nil { + return m.Spec + } + return nil +} + +// SpecType +// +// x-displayName: "Specification" +// Shape of the subscription object +type SpecType struct { + // gc_spec + // + // x-displayName: "GC Spec" + GcSpec *GlobalSpecType `protobuf:"bytes,1,opt,name=gc_spec,json=gcSpec,proto3" json:"gc_spec,omitempty"` +} + +func (m *SpecType) Reset() { *m = SpecType{} } +func (*SpecType) ProtoMessage() {} +func (*SpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_826d63198e81738b, []int{1} +} +func (m *SpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_SpecType.Merge(m, src) +} +func (m *SpecType) XXX_Size() int { + return m.Size() +} +func (m *SpecType) XXX_DiscardUnknown() { + xxx_messageInfo_SpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_SpecType proto.InternalMessageInfo + +func (m *SpecType) GetGcSpec() *GlobalSpecType { + if m != nil { + return m.GcSpec + } + return nil +} + +func init() { + proto.RegisterType((*Object)(nil), "ves.io.schema.subscription.Object") + golang_proto.RegisterType((*Object)(nil), "ves.io.schema.subscription.Object") + proto.RegisterType((*SpecType)(nil), "ves.io.schema.subscription.SpecType") + golang_proto.RegisterType((*SpecType)(nil), "ves.io.schema.subscription.SpecType") +} + +func init() { + proto.RegisterFile("ves.io/schema/subscription/object.proto", fileDescriptor_826d63198e81738b) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/subscription/object.proto", fileDescriptor_826d63198e81738b) +} + +var fileDescriptor_826d63198e81738b = []byte{ + // 399 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0x31, 0x4f, 0xe3, 0x30, + 0x14, 0xc7, 0xe3, 0xde, 0x5d, 0xaf, 0xca, 0x49, 0x77, 0x52, 0xa6, 0x5e, 0x4f, 0x67, 0x9d, 0x7a, + 0xa7, 0x03, 0x21, 0xd5, 0x96, 0x60, 0x01, 0x86, 0x0e, 0x30, 0xb0, 0xb4, 0x2a, 0x6a, 0x99, 0x58, + 0xaa, 0xc4, 0x75, 0xdd, 0x40, 0x53, 0x5b, 0xb1, 0x13, 0xd1, 0x8d, 0x8f, 0x00, 0xdf, 0x82, 0x8f, + 0xd1, 0x91, 0xb1, 0x62, 0xea, 0x48, 0x9d, 0x85, 0xb1, 0x33, 0x13, 0xc2, 0x21, 0x55, 0x53, 0x44, + 0xb7, 0x67, 0xfd, 0x7f, 0xef, 0xe7, 0xbc, 0x3c, 0xdb, 0x5b, 0x31, 0x95, 0xc8, 0xe7, 0x58, 0x92, + 0x01, 0x0d, 0x5c, 0x2c, 0x23, 0x4f, 0x92, 0xd0, 0x17, 0xca, 0xe7, 0x23, 0xcc, 0xbd, 0x0b, 0x4a, + 0x14, 0x12, 0x21, 0x57, 0xdc, 0xa9, 0xa4, 0x20, 0x4a, 0x41, 0xb4, 0x0a, 0x56, 0x6a, 0xcc, 0x57, + 0x83, 0xc8, 0x43, 0x84, 0x07, 0x98, 0x71, 0xc6, 0xb1, 0x69, 0xf1, 0xa2, 0xbe, 0x39, 0x99, 0x83, + 0xa9, 0x52, 0x55, 0xe5, 0x57, 0xfe, 0x4e, 0x6e, 0x24, 0xf2, 0x2d, 0xfc, 0xbf, 0xe1, 0x83, 0xd4, + 0x58, 0xd0, 0x8c, 0xfb, 0x99, 0xe7, 0x56, 0xa3, 0x6a, 0x3e, 0x8a, 0xa9, 0xa4, 0xa3, 0x38, 0x7f, + 0x4d, 0xf5, 0x01, 0xd8, 0xc5, 0x96, 0x99, 0xcf, 0x39, 0xb0, 0x4b, 0x01, 0x55, 0x6e, 0xcf, 0x55, + 0x6e, 0x19, 0xfc, 0x01, 0xdb, 0xdf, 0x76, 0x7f, 0xa3, 0xfc, 0xb0, 0x29, 0xd8, 0xa4, 0xca, 0x3d, + 0x1b, 0x0b, 0xda, 0x5e, 0xe2, 0x4e, 0xc3, 0xfe, 0x21, 0xc7, 0x52, 0xd1, 0xa0, 0xbb, 0x34, 0x14, + 0x8c, 0xe1, 0xef, 0x9a, 0xa1, 0x63, 0xa8, 0x35, 0xcf, 0xf7, 0xb4, 0xb7, 0x99, 0xd9, 0xf6, 0xed, + 0xcf, 0x52, 0x50, 0x52, 0xfe, 0x64, 0x14, 0xff, 0xd0, 0xc7, 0x7f, 0x1c, 0x75, 0x04, 0x25, 0xc6, + 0x61, 0x3a, 0x0e, 0xbf, 0x3c, 0xd7, 0x0b, 0xed, 0x46, 0xb5, 0x65, 0x97, 0xb2, 0xc0, 0x39, 0xb6, + 0xbf, 0x32, 0xd2, 0x35, 0xbe, 0x74, 0xa8, 0x9d, 0x4d, 0xbe, 0x93, 0x21, 0xf7, 0xdc, 0xe1, 0xd2, + 0x5a, 0x64, 0xe4, 0xb5, 0x3e, 0xba, 0x05, 0x93, 0xba, 0x35, 0x9d, 0x43, 0x6b, 0x36, 0x87, 0xd6, + 0x62, 0x0e, 0xc1, 0xb5, 0x86, 0xe0, 0x4e, 0x43, 0x70, 0xaf, 0x21, 0x98, 0x6a, 0x08, 0x66, 0x1a, + 0x82, 0x47, 0x0d, 0xc1, 0x93, 0x86, 0xd6, 0x42, 0x43, 0x70, 0x93, 0x40, 0x6b, 0x92, 0x40, 0x30, + 0x4d, 0xa0, 0x35, 0x4b, 0xa0, 0x75, 0x7e, 0xca, 0xb8, 0xb8, 0x64, 0x28, 0xe6, 0x43, 0x45, 0xc3, + 0xd0, 0x45, 0x91, 0xc4, 0xa6, 0xe8, 0xf3, 0x30, 0xa8, 0x89, 0x90, 0xc7, 0x7e, 0x8f, 0x86, 0xb5, + 0x2c, 0xc6, 0xc2, 0x63, 0x1c, 0xd3, 0x2b, 0x95, 0x6d, 0xff, 0xfd, 0x23, 0xf0, 0x8a, 0x66, 0x81, + 0x7b, 0x2f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x51, 0x98, 0xd4, 0x26, 0xba, 0x02, 0x00, 0x00, +} + +func (this *Object) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Object) + if !ok { + that2, ok := that.(Object) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *SpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SpecType) + if !ok { + that2, ok := that.(SpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GcSpec.Equal(that1.GcSpec) { + return false + } + return true +} +func (this *Object) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&subscription.Object{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&subscription.SpecType{") + if this.GcSpec != nil { + s = append(s, "GcSpec: "+fmt.Sprintf("%#v", this.GcSpec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringObject(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *Object) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Object) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Object) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *SpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GcSpec != nil { + { + size, err := m.GcSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintObject(dAtA []byte, offset int, v uint64) int { + offset -= sovObject(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Object) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *SpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GcSpec != nil { + l = m.GcSpec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func sovObject(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozObject(x uint64) (n int) { + return sovObject(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *Object) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Object{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(this.Spec.String(), "SpecType", "SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SpecType{`, + `GcSpec:` + strings.Replace(fmt.Sprintf("%v", this.GcSpec), "GlobalSpecType", "GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringObject(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *Object) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Object: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Object: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GcSpec == nil { + m.GcSpec = &GlobalSpecType{} + } + if err := m.GcSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipObject(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthObject + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupObject + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthObject + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthObject = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowObject = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupObject = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/subscription/object.vesmsg.go b/pbgo/extschema/schema/subscription/object.vesmsg.go new file mode 100644 index 000000000..044a7e232 --- /dev/null +++ b/pbgo/extschema/schema/subscription/object.vesmsg.go @@ -0,0 +1,101 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package subscription + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *SpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SpecType) DeepCopy() *SpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["gc_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("gc_spec")) + if err := fv(ctx, m.GetGcSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSpecTypeValidator = func() *ValidateSpecType { + v := &ValidateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SpecTypeValidator() db.Validator { + return DefaultSpecTypeValidator +} diff --git a/pbgo/extschema/schema/subscription/object.vesobj.go b/pbgo/extschema/schema/subscription/object.vesobj.go new file mode 100644 index 000000000..ec5c39b33 --- /dev/null +++ b/pbgo/extschema/schema/subscription/object.vesobj.go @@ -0,0 +1,742 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package subscription + +import ( + "context" + "fmt" + "math/rand" + "strings" + "time" + + google_protobuf "github.com/gogo/protobuf/types" + multierror "github.com/hashicorp/go-multierror" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/store" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + + "github.com/google/uuid" + "gopkg.volterra.us/stdlib/db/sro" +) + +const ( + ObjectDefTblName = "ves.io.schema.subscription.Object.default" + ObjectType = "ves.io.schema.subscription.Object" +) + +// augmented methods on protoc/std generated struct +func (e *Object) Type() string { + return "ves.io.schema.subscription.Object" +} + +func (e *Object) ToEntry() db.Entry { + return NewDBObject(e, db.OpWithNoCopy()) +} + +func LocateObject(ctx context.Context, locator db.EntryLocator, uid, tenant, namespace, name string, opts ...db.FindEntryOpt) (*DBObject, error) { + timestamp, err := google_protobuf.TimestampProto(time.Now()) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if uid != "" { + obj, exist, err := FindObject(ctx, locator, uid, opts...) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if exist && obj != nil { + obj.SystemMetadata.ModificationTimestamp = timestamp + return obj, nil + } + } else { + uid = uuid.New().String() + } + + sysMD := &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: tenant, + CreatorClass: locator.GetCreatorClass(), + CreatorId: locator.GetCreatorID(), + CreationTimestamp: timestamp, + ModificationTimestamp: timestamp, + } + obj := NewDBObject(nil) + obj.SetObjUid(uid) + obj.SetObjName(name) + obj.SetObjNamespace(namespace) + obj.SetObjSystemMetadata(sysMD) + obj.Spec = &SpecType{} + return obj, nil +} + +func FindObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, ObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBObject, error) { + var ( + oList []*DBObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, ObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", ObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *Object) DeepCopy() *Object { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &Object{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *Object) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *Object) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +func (e *Object) GetTraceInfo() string { + sysMD := e.GetSystemMetadata() + if sysMD == nil { + return "" + } + return sysMD.GetTraceInfo() +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBObject struct { + // Anonymous embed of standard protobuf generated struct + *Object + + tbl db.Table +} + +// GetObjectIndexers returns the associated store.Indexers for Object +func GetObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBObject) Key(opts ...db.KeyOpt) (string, error) { + ko := db.NewKeyOpts(opts...) + if ko.Public { + md := e.GetMetadata() + if md == nil { + return "", fmt.Errorf("Metadata is nil") + } + return fmt.Sprintf("%s/%s", md.GetNamespace(), md.GetName()), nil + } else { + if e.GetSystemMetadata() == nil { + return "", fmt.Errorf("SystemMetadata is nil") + } + return e.GetSystemMetadata().GetUid(), nil + } +} + +func (e *DBObject) Type() string { + return "ves.io.schema.subscription.Object" +} + +func (e *DBObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBObject(e.Object) + n.tbl = e.tbl + return n +} + +func (e *DBObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBObject) Sample(r *rand.Rand) (db.Entry, error) { + uid := uuid.New().String() + o := &Object{ + Metadata: &ves_io_schema.ObjectMetaType{ + Name: uuid.New().String(), + Namespace: uuid.New().String(), + Uid: uid, + }, + SystemMetadata: &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: uuid.New().String(), + }, + Spec: &SpecType{}, + } + + return &DBObject{o, e.tbl}, nil +} + +func (e *DBObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectValidator().Validate(ctx, e.Object, opts...) +} + +func (e *DBObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetSystemMetadataDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.subscription.Object." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBObject) ToStore() store.Entry { + return e.Object +} + +func (e *DBObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBObject) GetTable() db.Table { + return e.tbl +} + +func NewDBObject(o *Object, opts ...db.OpOption) *DBObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBObject{Object: &Object{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBObject{Object: obj} +} + +func NewEntryObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBObject(nil, opts...) + case *Object: + return NewDBObject(v, opts...) + } + return nil +} + +// GetDRefInfo for the field's type +func (e *DBObject) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if e.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := e.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +// Implement sro.SRO interface +func (o *DBObject) GetObjMetadata() sro.ObjectMetadata { + if o.GetMetadata() == nil { + return nil + } + return o.GetMetadata() +} + +func (o *DBObject) SetObjMetadata(in sro.ObjectMetadata) error { + if in == nil { + o.Metadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.ObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjMetadata expected *ObjectMetaType, got %T", in) + } + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSystemMetadata() sro.SystemMetadata { + if o.GetSystemMetadata() == nil { + return nil + } + return o.GetSystemMetadata() +} + +func (o *DBObject) SetObjSystemMetadata(in sro.SystemMetadata) error { + if in == nil { + o.SystemMetadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.SystemObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjSystemMetadata expected *SystemObjectMetaType, got %T", in) + } + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjSpec() sro.Spec { + if o.GetSpec() == nil { + return nil + } + return o.GetSpec() +} + +func (o *DBObject) SetObjSpec(in sro.Spec) error { + if in == nil { + o.Spec = nil + return nil + } + + m, ok := in.(*SpecType) + if !ok { + return fmt.Errorf("Error: SetObjSpec expected *SpecType, got %T", in) + } + o.Spec = m + return nil +} + +func (o *DBObject) GetObjType() string { + return o.Type() +} + +// GetObjUid returns uuid from source-of-truth, in systemMetadata +func (o *DBObject) GetObjUid() string { + return o.GetSystemMetadata().GetUid() +} + +// GetObjTenant returns tenant from source-of-truth, in systemMetadata +func (o *DBObject) GetObjTenant() string { + return o.GetSystemMetadata().GetTenant() +} + +// GetObjCreatorClass returns creator-class from systemMetadata +func (o *DBObject) GetObjCreatorClass() string { + return o.GetSystemMetadata().GetCreatorClass() +} + +// GetObjectIndex returns object-index from systemMetadata +func (o *DBObject) GetObjectIndex() uint32 { + return o.GetSystemMetadata().GetObjectIndex() +} + +// SetObjUid sets uuid as a hint, in Metadata +func (o *DBObject) SetObjUid(u string) error { + // TODO: make sure 'u' is of uuid form + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Uid = u + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjName() string { + return o.GetMetadata().GetName() +} + +func (o *DBObject) SetObjName(n string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Name = n + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjNamespace() string { + return o.GetMetadata().GetNamespace() +} + +func (o *DBObject) SetObjNamespace(ns string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Namespace = ns + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjLabels() map[string]string { + return o.GetMetadata().GetLabels() +} + +func (o *DBObject) SetObjLabels(l map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Labels = l + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjAnnotations() map[string]string { + return o.GetMetadata().GetAnnotations() +} + +func (o *DBObject) SetObjAnnotations(a map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Annotations = a + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDescription() string { + return o.GetMetadata().GetDescription() +} + +func (o *DBObject) SetObjDescription(d string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Description = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDisable() bool { + return o.GetMetadata().GetDisable() +} + +func (o *DBObject) SetObjDisable(d bool) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Disable = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSREDisable() bool { + return o.GetSystemMetadata().GetSreDisable() +} + +func (o *DBObject) SetObjSREDisable(d bool) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.SreDisable = d + return nil +} + +func (o *DBObject) SetObjCreator(cls, inst string) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.CreatorClass = cls + m.CreatorId = inst + o.SystemMetadata = m + return nil +} + +func (o *DBObject) SetObjectIndex(idx uint32) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.ObjectIndex = idx + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjFinalizers() []string { + return o.GetSystemMetadata().GetFinalizers() +} + +func (o *DBObject) SetObjFinalizers(values ...string) error { + m := o.GetSystemMetadata() + if m == nil { + return fmt.Errorf("Object has nil system_metadata") + } + m.Finalizers = values + return nil +} + +func (o *DBObject) GetObjPendingInitializers() []string { + initializers := o.GetSystemMetadata().GetInitializers() + var pending []string + for _, p := range initializers.GetPending() { + pending = append(pending, p.GetName()) + } + return pending +} + +func (o *DBObject) SetObjPendingInitializers(pending ...string) { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + o.SystemMetadata = m + } + initializers := m.GetInitializers() + if initializers == nil { + initializers = &ves_io_schema.InitializersType{} + m.Initializers = initializers + } + var pendingInitializers []*ves_io_schema.InitializerType + for _, p := range pending { + pendingInitializers = append(pendingInitializers, &ves_io_schema.InitializerType{Name: p}) + } + initializers.Pending = pendingInitializers +} + +func (o *DBObject) IsSpecEqual(other sro.SRO) bool { + otherObjSpec := other.GetObjSpec() + otherSpec, ok := otherObjSpec.(*SpecType) + if !ok { + return false + } + + return o.GetSpec().Equal(otherSpec) +} + +// GetVtrpId returns vtrpId of the object. +func (o *DBObject) GetVtrpId() string { + return o.GetSystemMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the object. +func (o *DBObject) SetVtrpId(id string) { + o.GetSystemMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *DBObject) GetVtrpStale() bool { + return o.GetSystemMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the object +func (o *DBObject) SetVtrpStale(isStale bool) { + o.GetSystemMetadata().SetVtrpStale(isStale) +} + +type ValidateObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*Object) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *Object got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, e.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, e.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectValidator = func() *ValidateObject { + v := &ValidateObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + return v +}() + +func ObjectValidator() db.Validator { + return DefaultObjectValidator +} diff --git a/pbgo/extschema/schema/subscription/pkg.vespkg.go b/pbgo/extschema/schema/subscription/pkg.vespkg.go new file mode 100644 index 000000000..023385a4b --- /dev/null +++ b/pbgo/extschema/schema/subscription/pkg.vespkg.go @@ -0,0 +1,95 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package subscription + +import ( + "reflect" + + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/store" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.subscription.SpecType"] = SpecTypeValidator() + + vr["ves.io.schema.subscription.Object"] = ObjectValidator() + + vr["ves.io.schema.subscription.SubscribeRequest"] = SubscribeRequestValidator() + vr["ves.io.schema.subscription.SubscribeResponse"] = SubscribeResponseValidator() + vr["ves.io.schema.subscription.UnsubscribeRequest"] = UnsubscribeRequestValidator() + vr["ves.io.schema.subscription.UnsubscribeResponse"] = UnsubscribeResponseValidator() + + vr["ves.io.schema.subscription.AddonServiceStatus"] = AddonServiceStatusValidator() + vr["ves.io.schema.subscription.CreateSpecType"] = CreateSpecTypeValidator() + vr["ves.io.schema.subscription.GetSpecType"] = GetSpecTypeValidator() + vr["ves.io.schema.subscription.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.subscription.ReplaceSpecType"] = ReplaceSpecTypeValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + mdr.EntryFactory["ves.io.schema.subscription.Object"] = NewEntryObject + mdr.EntryStoreMap["ves.io.schema.subscription.Object"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.subscription.Object"] = reflect.TypeOf(&DBObject{}) + mdr.EntryIndexers["ves.io.schema.subscription.Object"] = GetObjectIndexers + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + sm["ves.io.schema.subscription.CustomAPI"] = "web" + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + + customCSR = mdr.PubCustomServiceRegistry + + func() { + // set swagger jsons for our and external schemas + customCSR.SwaggerRegistry["ves.io.schema.subscription.CustomAPI"] = CustomAPISwaggerJSON + + customCSR.GrpcClientRegistry["ves.io.schema.subscription.CustomAPI"] = NewCustomAPIGrpcClient + customCSR.RestClientRegistry["ves.io.schema.subscription.CustomAPI"] = NewCustomAPIRestClient + if isExternal { + return + } + mdr.SvcRegisterHandlers["ves.io.schema.subscription.CustomAPI"] = RegisterCustomAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.subscription.CustomAPI"] = RegisterGwCustomAPIHandler + customCSR.ServerRegistry["ves.io.schema.subscription.CustomAPI"] = func(svc svcfw.Service) server.APIHandler { + return NewCustomAPIServer(svc) + } + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/subscription/public_customapi.pb.go b/pbgo/extschema/schema/subscription/public_customapi.pb.go new file mode 100644 index 000000000..9218874ac --- /dev/null +++ b/pbgo/extschema/schema/subscription/public_customapi.pb.go @@ -0,0 +1,2826 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/subscription/public_customapi.proto + +// Subscription API for addons served by akar +// +// x-displayName: "Subscription API" +// Use this API to subscribe to XC addon services served by akar + +package subscription + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// SubscribeRequest +// +// x-displayName: "Subscribe request" +// Request to subscribe to one of addon services +type SubscribeRequest struct { + // addon_choice + // + // x-displayName: "addon service name" + // x-required + // Select one of the addon to subscribe to + // + // Types that are valid to be assigned to AddonChoice: + // *SubscribeRequest_F5XcSecuremeshStandard + // *SubscribeRequest_F5XcSecuremeshAdvanced + // *SubscribeRequest_F5XcAppstackStandard + // *SubscribeRequest_F5XcWaapStandard + // *SubscribeRequest_F5XcWaapAdvanced + // *SubscribeRequest_F5XcSiteManagementStandard + // *SubscribeRequest_F5XcWebAppScanningStandard + AddonChoice isSubscribeRequest_AddonChoice `protobuf_oneof:"addon_choice"` +} + +func (m *SubscribeRequest) Reset() { *m = SubscribeRequest{} } +func (*SubscribeRequest) ProtoMessage() {} +func (*SubscribeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_ad9451d9fdee72c4, []int{0} +} +func (m *SubscribeRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SubscribeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SubscribeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SubscribeRequest.Merge(m, src) +} +func (m *SubscribeRequest) XXX_Size() int { + return m.Size() +} +func (m *SubscribeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SubscribeRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SubscribeRequest proto.InternalMessageInfo + +type isSubscribeRequest_AddonChoice interface { + isSubscribeRequest_AddonChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type SubscribeRequest_F5XcSecuremeshStandard struct { + F5XcSecuremeshStandard *schema.Empty `protobuf:"bytes,2,opt,name=f5xc_securemesh_standard,json=f5xcSecuremeshStandard,proto3,oneof" json:"f5xc_securemesh_standard,omitempty"` +} +type SubscribeRequest_F5XcSecuremeshAdvanced struct { + F5XcSecuremeshAdvanced *schema.Empty `protobuf:"bytes,3,opt,name=f5xc_securemesh_advanced,json=f5xcSecuremeshAdvanced,proto3,oneof" json:"f5xc_securemesh_advanced,omitempty"` +} +type SubscribeRequest_F5XcAppstackStandard struct { + F5XcAppstackStandard *schema.Empty `protobuf:"bytes,4,opt,name=f5xc_appstack_standard,json=f5xcAppstackStandard,proto3,oneof" json:"f5xc_appstack_standard,omitempty"` +} +type SubscribeRequest_F5XcWaapStandard struct { + F5XcWaapStandard *schema.Empty `protobuf:"bytes,5,opt,name=f5xc_waap_standard,json=f5xcWaapStandard,proto3,oneof" json:"f5xc_waap_standard,omitempty"` +} +type SubscribeRequest_F5XcWaapAdvanced struct { + F5XcWaapAdvanced *schema.Empty `protobuf:"bytes,6,opt,name=f5xc_waap_advanced,json=f5xcWaapAdvanced,proto3,oneof" json:"f5xc_waap_advanced,omitempty"` +} +type SubscribeRequest_F5XcSiteManagementStandard struct { + F5XcSiteManagementStandard *schema.Empty `protobuf:"bytes,7,opt,name=f5xc_site_management_standard,json=f5xcSiteManagementStandard,proto3,oneof" json:"f5xc_site_management_standard,omitempty"` +} +type SubscribeRequest_F5XcWebAppScanningStandard struct { + F5XcWebAppScanningStandard *schema.Empty `protobuf:"bytes,8,opt,name=f5xc_web_app_scanning_standard,json=f5xcWebAppScanningStandard,proto3,oneof" json:"f5xc_web_app_scanning_standard,omitempty"` +} + +func (*SubscribeRequest_F5XcSecuremeshStandard) isSubscribeRequest_AddonChoice() {} +func (*SubscribeRequest_F5XcSecuremeshAdvanced) isSubscribeRequest_AddonChoice() {} +func (*SubscribeRequest_F5XcAppstackStandard) isSubscribeRequest_AddonChoice() {} +func (*SubscribeRequest_F5XcWaapStandard) isSubscribeRequest_AddonChoice() {} +func (*SubscribeRequest_F5XcWaapAdvanced) isSubscribeRequest_AddonChoice() {} +func (*SubscribeRequest_F5XcSiteManagementStandard) isSubscribeRequest_AddonChoice() {} +func (*SubscribeRequest_F5XcWebAppScanningStandard) isSubscribeRequest_AddonChoice() {} + +func (m *SubscribeRequest) GetAddonChoice() isSubscribeRequest_AddonChoice { + if m != nil { + return m.AddonChoice + } + return nil +} + +func (m *SubscribeRequest) GetF5XcSecuremeshStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcSecuremeshStandard); ok { + return x.F5XcSecuremeshStandard + } + return nil +} + +func (m *SubscribeRequest) GetF5XcSecuremeshAdvanced() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcSecuremeshAdvanced); ok { + return x.F5XcSecuremeshAdvanced + } + return nil +} + +func (m *SubscribeRequest) GetF5XcAppstackStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcAppstackStandard); ok { + return x.F5XcAppstackStandard + } + return nil +} + +func (m *SubscribeRequest) GetF5XcWaapStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcWaapStandard); ok { + return x.F5XcWaapStandard + } + return nil +} + +func (m *SubscribeRequest) GetF5XcWaapAdvanced() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcWaapAdvanced); ok { + return x.F5XcWaapAdvanced + } + return nil +} + +func (m *SubscribeRequest) GetF5XcSiteManagementStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcSiteManagementStandard); ok { + return x.F5XcSiteManagementStandard + } + return nil +} + +func (m *SubscribeRequest) GetF5XcWebAppScanningStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*SubscribeRequest_F5XcWebAppScanningStandard); ok { + return x.F5XcWebAppScanningStandard + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*SubscribeRequest) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*SubscribeRequest_F5XcSecuremeshStandard)(nil), + (*SubscribeRequest_F5XcSecuremeshAdvanced)(nil), + (*SubscribeRequest_F5XcAppstackStandard)(nil), + (*SubscribeRequest_F5XcWaapStandard)(nil), + (*SubscribeRequest_F5XcWaapAdvanced)(nil), + (*SubscribeRequest_F5XcSiteManagementStandard)(nil), + (*SubscribeRequest_F5XcWebAppScanningStandard)(nil), + } +} + +// SubscribeResponse +// +// x-displayName: "Subscribe response" +// Response for subscribe +type SubscribeResponse struct { +} + +func (m *SubscribeResponse) Reset() { *m = SubscribeResponse{} } +func (*SubscribeResponse) ProtoMessage() {} +func (*SubscribeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_ad9451d9fdee72c4, []int{1} +} +func (m *SubscribeResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SubscribeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SubscribeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SubscribeResponse.Merge(m, src) +} +func (m *SubscribeResponse) XXX_Size() int { + return m.Size() +} +func (m *SubscribeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SubscribeResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SubscribeResponse proto.InternalMessageInfo + +// UnsubscribeRequest +// +// x-displayName: "Unsubscribe request" +// Request to unsubscribe to one of addon services +type UnsubscribeRequest struct { + // addon_choice + // + // x-displayName: "addon service name" + // x-required + // Select one of the addon to unsubscribe to + // + // Types that are valid to be assigned to AddonChoice: + // *UnsubscribeRequest_F5XcSecuremeshStandard + // *UnsubscribeRequest_F5XcSecuremeshAdvanced + // *UnsubscribeRequest_F5XcAppstackStandard + // *UnsubscribeRequest_F5XcWaapStandard + // *UnsubscribeRequest_F5XcWaapAdvanced + // *UnsubscribeRequest_F5XcSiteManagementStandard + // *UnsubscribeRequest_F5XcWebAppScanningStandard + AddonChoice isUnsubscribeRequest_AddonChoice `protobuf_oneof:"addon_choice"` +} + +func (m *UnsubscribeRequest) Reset() { *m = UnsubscribeRequest{} } +func (*UnsubscribeRequest) ProtoMessage() {} +func (*UnsubscribeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_ad9451d9fdee72c4, []int{2} +} +func (m *UnsubscribeRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *UnsubscribeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *UnsubscribeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_UnsubscribeRequest.Merge(m, src) +} +func (m *UnsubscribeRequest) XXX_Size() int { + return m.Size() +} +func (m *UnsubscribeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_UnsubscribeRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_UnsubscribeRequest proto.InternalMessageInfo + +type isUnsubscribeRequest_AddonChoice interface { + isUnsubscribeRequest_AddonChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type UnsubscribeRequest_F5XcSecuremeshStandard struct { + F5XcSecuremeshStandard *schema.Empty `protobuf:"bytes,2,opt,name=f5xc_securemesh_standard,json=f5xcSecuremeshStandard,proto3,oneof" json:"f5xc_securemesh_standard,omitempty"` +} +type UnsubscribeRequest_F5XcSecuremeshAdvanced struct { + F5XcSecuremeshAdvanced *schema.Empty `protobuf:"bytes,3,opt,name=f5xc_securemesh_advanced,json=f5xcSecuremeshAdvanced,proto3,oneof" json:"f5xc_securemesh_advanced,omitempty"` +} +type UnsubscribeRequest_F5XcAppstackStandard struct { + F5XcAppstackStandard *schema.Empty `protobuf:"bytes,4,opt,name=f5xc_appstack_standard,json=f5xcAppstackStandard,proto3,oneof" json:"f5xc_appstack_standard,omitempty"` +} +type UnsubscribeRequest_F5XcWaapStandard struct { + F5XcWaapStandard *schema.Empty `protobuf:"bytes,5,opt,name=f5xc_waap_standard,json=f5xcWaapStandard,proto3,oneof" json:"f5xc_waap_standard,omitempty"` +} +type UnsubscribeRequest_F5XcWaapAdvanced struct { + F5XcWaapAdvanced *schema.Empty `protobuf:"bytes,6,opt,name=f5xc_waap_advanced,json=f5xcWaapAdvanced,proto3,oneof" json:"f5xc_waap_advanced,omitempty"` +} +type UnsubscribeRequest_F5XcSiteManagementStandard struct { + F5XcSiteManagementStandard *schema.Empty `protobuf:"bytes,7,opt,name=f5xc_site_management_standard,json=f5xcSiteManagementStandard,proto3,oneof" json:"f5xc_site_management_standard,omitempty"` +} +type UnsubscribeRequest_F5XcWebAppScanningStandard struct { + F5XcWebAppScanningStandard *schema.Empty `protobuf:"bytes,8,opt,name=f5xc_web_app_scanning_standard,json=f5xcWebAppScanningStandard,proto3,oneof" json:"f5xc_web_app_scanning_standard,omitempty"` +} + +func (*UnsubscribeRequest_F5XcSecuremeshStandard) isUnsubscribeRequest_AddonChoice() {} +func (*UnsubscribeRequest_F5XcSecuremeshAdvanced) isUnsubscribeRequest_AddonChoice() {} +func (*UnsubscribeRequest_F5XcAppstackStandard) isUnsubscribeRequest_AddonChoice() {} +func (*UnsubscribeRequest_F5XcWaapStandard) isUnsubscribeRequest_AddonChoice() {} +func (*UnsubscribeRequest_F5XcWaapAdvanced) isUnsubscribeRequest_AddonChoice() {} +func (*UnsubscribeRequest_F5XcSiteManagementStandard) isUnsubscribeRequest_AddonChoice() {} +func (*UnsubscribeRequest_F5XcWebAppScanningStandard) isUnsubscribeRequest_AddonChoice() {} + +func (m *UnsubscribeRequest) GetAddonChoice() isUnsubscribeRequest_AddonChoice { + if m != nil { + return m.AddonChoice + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcSecuremeshStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcSecuremeshStandard); ok { + return x.F5XcSecuremeshStandard + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcSecuremeshAdvanced() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcSecuremeshAdvanced); ok { + return x.F5XcSecuremeshAdvanced + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcAppstackStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcAppstackStandard); ok { + return x.F5XcAppstackStandard + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcWaapStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcWaapStandard); ok { + return x.F5XcWaapStandard + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcWaapAdvanced() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcWaapAdvanced); ok { + return x.F5XcWaapAdvanced + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcSiteManagementStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcSiteManagementStandard); ok { + return x.F5XcSiteManagementStandard + } + return nil +} + +func (m *UnsubscribeRequest) GetF5XcWebAppScanningStandard() *schema.Empty { + if x, ok := m.GetAddonChoice().(*UnsubscribeRequest_F5XcWebAppScanningStandard); ok { + return x.F5XcWebAppScanningStandard + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*UnsubscribeRequest) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*UnsubscribeRequest_F5XcSecuremeshStandard)(nil), + (*UnsubscribeRequest_F5XcSecuremeshAdvanced)(nil), + (*UnsubscribeRequest_F5XcAppstackStandard)(nil), + (*UnsubscribeRequest_F5XcWaapStandard)(nil), + (*UnsubscribeRequest_F5XcWaapAdvanced)(nil), + (*UnsubscribeRequest_F5XcSiteManagementStandard)(nil), + (*UnsubscribeRequest_F5XcWebAppScanningStandard)(nil), + } +} + +// UnsubscribeResponse +// +// x-displayName: "Unsubscribe response" +// Response for unsubscribe +type UnsubscribeResponse struct { +} + +func (m *UnsubscribeResponse) Reset() { *m = UnsubscribeResponse{} } +func (*UnsubscribeResponse) ProtoMessage() {} +func (*UnsubscribeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_ad9451d9fdee72c4, []int{3} +} +func (m *UnsubscribeResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *UnsubscribeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *UnsubscribeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_UnsubscribeResponse.Merge(m, src) +} +func (m *UnsubscribeResponse) XXX_Size() int { + return m.Size() +} +func (m *UnsubscribeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_UnsubscribeResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_UnsubscribeResponse proto.InternalMessageInfo + +func init() { + proto.RegisterType((*SubscribeRequest)(nil), "ves.io.schema.subscription.SubscribeRequest") + golang_proto.RegisterType((*SubscribeRequest)(nil), "ves.io.schema.subscription.SubscribeRequest") + proto.RegisterType((*SubscribeResponse)(nil), "ves.io.schema.subscription.SubscribeResponse") + golang_proto.RegisterType((*SubscribeResponse)(nil), "ves.io.schema.subscription.SubscribeResponse") + proto.RegisterType((*UnsubscribeRequest)(nil), "ves.io.schema.subscription.UnsubscribeRequest") + golang_proto.RegisterType((*UnsubscribeRequest)(nil), "ves.io.schema.subscription.UnsubscribeRequest") + proto.RegisterType((*UnsubscribeResponse)(nil), "ves.io.schema.subscription.UnsubscribeResponse") + golang_proto.RegisterType((*UnsubscribeResponse)(nil), "ves.io.schema.subscription.UnsubscribeResponse") +} + +func init() { + proto.RegisterFile("ves.io/schema/subscription/public_customapi.proto", fileDescriptor_ad9451d9fdee72c4) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/subscription/public_customapi.proto", fileDescriptor_ad9451d9fdee72c4) +} + +var fileDescriptor_ad9451d9fdee72c4 = []byte{ + // 697 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0xcf, 0x4f, 0x13, 0x41, + 0x18, 0xed, 0x94, 0x8a, 0x30, 0x70, 0xc0, 0x05, 0x4d, 0xad, 0x38, 0x92, 0x9e, 0xfc, 0xd5, 0x1d, + 0xc5, 0x78, 0xf1, 0x56, 0x44, 0xa3, 0x46, 0x13, 0x42, 0x63, 0x88, 0x5c, 0x36, 0xb3, 0xbb, 0xc3, + 0x76, 0x42, 0x77, 0x66, 0xdc, 0x99, 0x2d, 0x70, 0x53, 0xfe, 0x00, 0x63, 0xe2, 0x3f, 0xe1, 0xc9, + 0xa3, 0x17, 0x2e, 0xdc, 0xf4, 0x64, 0x9a, 0x78, 0xe1, 0x28, 0x5b, 0x13, 0xf1, 0xc6, 0x9f, 0x60, + 0xba, 0xdd, 0x6e, 0x7f, 0x80, 0x05, 0x0f, 0xde, 0xb8, 0xcd, 0xe4, 0x7d, 0xef, 0xe5, 0x7d, 0x5f, + 0xde, 0xee, 0x37, 0xf0, 0x6e, 0x9d, 0x2a, 0x93, 0x09, 0xac, 0x9c, 0x2a, 0xf5, 0x09, 0x56, 0xa1, + 0xad, 0x9c, 0x80, 0x49, 0xcd, 0x04, 0xc7, 0x32, 0xb4, 0x6b, 0xcc, 0xb1, 0x9c, 0x50, 0x69, 0xe1, + 0x13, 0xc9, 0x4c, 0x19, 0x08, 0x2d, 0x8c, 0x42, 0x9b, 0x62, 0xb6, 0x29, 0x66, 0x2f, 0xa5, 0x50, + 0xf2, 0x98, 0xae, 0x86, 0xb6, 0xe9, 0x08, 0x1f, 0x7b, 0xc2, 0x13, 0x38, 0xa6, 0xd8, 0xe1, 0x5a, + 0x7c, 0x8b, 0x2f, 0xf1, 0xa9, 0x2d, 0x55, 0x98, 0xf5, 0x84, 0xf0, 0x6a, 0x14, 0x13, 0xc9, 0x30, + 0xe1, 0x5c, 0x68, 0xd2, 0x52, 0x51, 0x09, 0x7a, 0xa5, 0xdf, 0x9b, 0x90, 0xbd, 0xe0, 0xe5, 0x7e, + 0x50, 0x6f, 0x49, 0xda, 0x81, 0x66, 0xfb, 0xa1, 0x3a, 0xa9, 0x31, 0x97, 0x68, 0x9a, 0xa0, 0xc5, + 0x01, 0x94, 0x2a, 0xca, 0xeb, 0x03, 0xe2, 0x73, 0x03, 0x35, 0x8c, 0x6e, 0x58, 0xfd, 0x15, 0xd7, + 0x8e, 0x56, 0xa8, 0x5e, 0x13, 0xc5, 0x5f, 0x39, 0x38, 0x55, 0x69, 0x8f, 0xc6, 0xa6, 0xcb, 0xf4, + 0x75, 0x48, 0x95, 0x36, 0x96, 0x60, 0x7e, 0xed, 0xfe, 0xa6, 0x63, 0x29, 0xea, 0x84, 0x01, 0xf5, + 0xa9, 0xaa, 0x5a, 0x4a, 0x13, 0xee, 0x92, 0xc0, 0xcd, 0x67, 0xe7, 0xc0, 0xf5, 0x89, 0xf9, 0x19, + 0xb3, 0x7f, 0xba, 0x8f, 0x7c, 0xa9, 0xb7, 0x9e, 0x64, 0x96, 0x2f, 0xb5, 0x78, 0x95, 0x94, 0x56, + 0x49, 0x58, 0xc7, 0x29, 0x12, 0xb7, 0x4e, 0xb8, 0x43, 0xdd, 0xfc, 0xc8, 0xbf, 0x28, 0x96, 0x13, + 0x96, 0xf1, 0x1c, 0xc6, 0x88, 0x45, 0xa4, 0x54, 0x9a, 0x38, 0xeb, 0x5d, 0x87, 0xb9, 0xa1, 0x7a, + 0x33, 0x2d, 0x56, 0x39, 0x21, 0xa5, 0xfe, 0x16, 0xa1, 0x11, 0xab, 0x6d, 0x10, 0x22, 0xbb, 0x4a, + 0xe7, 0x86, 0x2a, 0x4d, 0xb5, 0x18, 0x2b, 0x84, 0xc8, 0xe3, 0x55, 0xd2, 0xfe, 0x46, 0x4f, 0xa7, + 0x92, 0x76, 0xf6, 0x0a, 0x5e, 0x6d, 0xcf, 0x8a, 0x69, 0x6a, 0xf9, 0x84, 0x13, 0x8f, 0xfa, 0x94, + 0xeb, 0xae, 0xad, 0xf3, 0x43, 0x05, 0x0b, 0xf1, 0xc0, 0x98, 0xa6, 0x2f, 0x52, 0x6a, 0x6a, 0x70, + 0x15, 0xa2, 0xb6, 0x41, 0x6a, 0xb7, 0x06, 0x67, 0x29, 0x87, 0x70, 0xce, 0xb8, 0xd7, 0xd5, 0x1e, + 0x3b, 0x59, 0x7b, 0x85, 0xda, 0x65, 0x29, 0x2b, 0x09, 0xb5, 0xa3, 0xbd, 0x90, 0x87, 0x93, 0xc4, + 0x75, 0x05, 0xb7, 0x9c, 0xaa, 0x60, 0x0e, 0x35, 0xc6, 0x1a, 0x3b, 0x00, 0x1c, 0xec, 0x00, 0xf0, + 0x2c, 0x37, 0x06, 0xa6, 0xb2, 0xc5, 0x69, 0x78, 0xa1, 0x27, 0x68, 0x4a, 0x0a, 0xae, 0x68, 0xf1, + 0x77, 0x0e, 0x1a, 0x2f, 0xb9, 0x3a, 0x0b, 0xe0, 0x59, 0x00, 0xff, 0x7b, 0x00, 0x2f, 0xc2, 0xe9, + 0xbe, 0xa8, 0xb5, 0x23, 0x38, 0xff, 0x76, 0x04, 0x8e, 0x3f, 0x8c, 0x77, 0x47, 0x79, 0xe9, 0xa9, + 0xf1, 0x09, 0xc0, 0xf1, 0x34, 0xa6, 0xc6, 0x6d, 0xf3, 0xef, 0x4b, 0xc4, 0x1c, 0xfc, 0x6d, 0x16, + 0x4a, 0xa7, 0xac, 0x4e, 0xb2, 0xbf, 0x18, 0x7d, 0xc9, 0x4f, 0xb6, 0xfa, 0x29, 0xd9, 0xac, 0x56, + 0x63, 0xdc, 0xdb, 0xfe, 0xfe, 0xf3, 0x43, 0xd6, 0x2c, 0xde, 0x48, 0x36, 0x1a, 0xe6, 0xc4, 0xa7, + 0x4a, 0x12, 0x87, 0x2a, 0xac, 0xb6, 0x94, 0xa6, 0x3e, 0x8e, 0xfb, 0xc3, 0x69, 0x0f, 0x0f, 0xc0, + 0x4d, 0xe3, 0x33, 0x80, 0x13, 0x3d, 0x6d, 0x19, 0xe6, 0x30, 0x13, 0x47, 0x3f, 0xb5, 0x02, 0x3e, + 0x75, 0x7d, 0x62, 0xfb, 0xf1, 0xb1, 0xb6, 0xef, 0x14, 0x6f, 0x9d, 0x64, 0x3b, 0xe4, 0xbd, 0xc6, + 0x0b, 0x70, 0x77, 0x07, 0x8c, 0x6c, 0x7f, 0xcb, 0x67, 0xab, 0x60, 0xe1, 0x1d, 0x68, 0xec, 0xa3, + 0xcc, 0xde, 0x3e, 0xca, 0x1c, 0xee, 0x23, 0xf0, 0x26, 0x42, 0xe0, 0x63, 0x84, 0xc0, 0xd7, 0x08, + 0x81, 0x46, 0x84, 0xc0, 0x5e, 0x84, 0xc0, 0x8f, 0x08, 0x81, 0x83, 0x08, 0x65, 0x0e, 0x23, 0x04, + 0xde, 0x37, 0x51, 0x66, 0xb7, 0x89, 0x40, 0xa3, 0x89, 0x32, 0x7b, 0x4d, 0x94, 0x59, 0x5d, 0xf2, + 0x84, 0x5c, 0xf7, 0xcc, 0xba, 0xa8, 0x69, 0x1a, 0x04, 0xc4, 0x0c, 0x15, 0x8e, 0x0f, 0x6b, 0x22, + 0xf0, 0x4b, 0x32, 0x10, 0x75, 0xe6, 0xd2, 0xa0, 0xd4, 0x81, 0xb1, 0xb4, 0x3d, 0x81, 0xe9, 0xa6, + 0xee, 0x3c, 0x26, 0x8e, 0xbe, 0x29, 0xec, 0xd1, 0x78, 0x3b, 0xde, 0xfb, 0x13, 0x00, 0x00, 0xff, + 0xff, 0xd4, 0x7c, 0x91, 0x13, 0x78, 0x08, 0x00, 0x00, +} + +func (this *SubscribeRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest) + if !ok { + that2, ok := that.(SubscribeRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.AddonChoice == nil { + if this.AddonChoice != nil { + return false + } + } else if this.AddonChoice == nil { + return false + } else if !this.AddonChoice.Equal(that1.AddonChoice) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcSecuremeshStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcSecuremeshStandard) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcSecuremeshStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSecuremeshStandard.Equal(that1.F5XcSecuremeshStandard) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcSecuremeshAdvanced) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcSecuremeshAdvanced) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcSecuremeshAdvanced) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSecuremeshAdvanced.Equal(that1.F5XcSecuremeshAdvanced) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcAppstackStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcAppstackStandard) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcAppstackStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcAppstackStandard.Equal(that1.F5XcAppstackStandard) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcWaapStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcWaapStandard) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcWaapStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcWaapStandard.Equal(that1.F5XcWaapStandard) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcWaapAdvanced) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcWaapAdvanced) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcWaapAdvanced) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcWaapAdvanced.Equal(that1.F5XcWaapAdvanced) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcSiteManagementStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcSiteManagementStandard) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcSiteManagementStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSiteManagementStandard.Equal(that1.F5XcSiteManagementStandard) { + return false + } + return true +} +func (this *SubscribeRequest_F5XcWebAppScanningStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeRequest_F5XcWebAppScanningStandard) + if !ok { + that2, ok := that.(SubscribeRequest_F5XcWebAppScanningStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcWebAppScanningStandard.Equal(that1.F5XcWebAppScanningStandard) { + return false + } + return true +} +func (this *SubscribeResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubscribeResponse) + if !ok { + that2, ok := that.(SubscribeResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *UnsubscribeRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest) + if !ok { + that2, ok := that.(UnsubscribeRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.AddonChoice == nil { + if this.AddonChoice != nil { + return false + } + } else if this.AddonChoice == nil { + return false + } else if !this.AddonChoice.Equal(that1.AddonChoice) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcSecuremeshStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcSecuremeshStandard) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcSecuremeshStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSecuremeshStandard.Equal(that1.F5XcSecuremeshStandard) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcSecuremeshAdvanced) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcSecuremeshAdvanced) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcSecuremeshAdvanced) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSecuremeshAdvanced.Equal(that1.F5XcSecuremeshAdvanced) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcAppstackStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcAppstackStandard) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcAppstackStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcAppstackStandard.Equal(that1.F5XcAppstackStandard) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcWaapStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcWaapStandard) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcWaapStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcWaapStandard.Equal(that1.F5XcWaapStandard) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcWaapAdvanced) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcWaapAdvanced) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcWaapAdvanced) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcWaapAdvanced.Equal(that1.F5XcWaapAdvanced) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcSiteManagementStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcSiteManagementStandard) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcSiteManagementStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSiteManagementStandard.Equal(that1.F5XcSiteManagementStandard) { + return false + } + return true +} +func (this *UnsubscribeRequest_F5XcWebAppScanningStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeRequest_F5XcWebAppScanningStandard) + if !ok { + that2, ok := that.(UnsubscribeRequest_F5XcWebAppScanningStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcWebAppScanningStandard.Equal(that1.F5XcWebAppScanningStandard) { + return false + } + return true +} +func (this *UnsubscribeResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*UnsubscribeResponse) + if !ok { + that2, ok := that.(UnsubscribeResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *SubscribeRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&subscription.SubscribeRequest{") + if this.AddonChoice != nil { + s = append(s, "AddonChoice: "+fmt.Sprintf("%#v", this.AddonChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SubscribeRequest_F5XcSecuremeshStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcSecuremeshStandard{` + + `F5XcSecuremeshStandard:` + fmt.Sprintf("%#v", this.F5XcSecuremeshStandard) + `}`}, ", ") + return s +} +func (this *SubscribeRequest_F5XcSecuremeshAdvanced) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcSecuremeshAdvanced{` + + `F5XcSecuremeshAdvanced:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvanced) + `}`}, ", ") + return s +} +func (this *SubscribeRequest_F5XcAppstackStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcAppstackStandard{` + + `F5XcAppstackStandard:` + fmt.Sprintf("%#v", this.F5XcAppstackStandard) + `}`}, ", ") + return s +} +func (this *SubscribeRequest_F5XcWaapStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcWaapStandard{` + + `F5XcWaapStandard:` + fmt.Sprintf("%#v", this.F5XcWaapStandard) + `}`}, ", ") + return s +} +func (this *SubscribeRequest_F5XcWaapAdvanced) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcWaapAdvanced{` + + `F5XcWaapAdvanced:` + fmt.Sprintf("%#v", this.F5XcWaapAdvanced) + `}`}, ", ") + return s +} +func (this *SubscribeRequest_F5XcSiteManagementStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcSiteManagementStandard{` + + `F5XcSiteManagementStandard:` + fmt.Sprintf("%#v", this.F5XcSiteManagementStandard) + `}`}, ", ") + return s +} +func (this *SubscribeRequest_F5XcWebAppScanningStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.SubscribeRequest_F5XcWebAppScanningStandard{` + + `F5XcWebAppScanningStandard:` + fmt.Sprintf("%#v", this.F5XcWebAppScanningStandard) + `}`}, ", ") + return s +} +func (this *SubscribeResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&subscription.SubscribeResponse{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *UnsubscribeRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&subscription.UnsubscribeRequest{") + if this.AddonChoice != nil { + s = append(s, "AddonChoice: "+fmt.Sprintf("%#v", this.AddonChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *UnsubscribeRequest_F5XcSecuremeshStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcSecuremeshStandard{` + + `F5XcSecuremeshStandard:` + fmt.Sprintf("%#v", this.F5XcSecuremeshStandard) + `}`}, ", ") + return s +} +func (this *UnsubscribeRequest_F5XcSecuremeshAdvanced) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcSecuremeshAdvanced{` + + `F5XcSecuremeshAdvanced:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvanced) + `}`}, ", ") + return s +} +func (this *UnsubscribeRequest_F5XcAppstackStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcAppstackStandard{` + + `F5XcAppstackStandard:` + fmt.Sprintf("%#v", this.F5XcAppstackStandard) + `}`}, ", ") + return s +} +func (this *UnsubscribeRequest_F5XcWaapStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcWaapStandard{` + + `F5XcWaapStandard:` + fmt.Sprintf("%#v", this.F5XcWaapStandard) + `}`}, ", ") + return s +} +func (this *UnsubscribeRequest_F5XcWaapAdvanced) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcWaapAdvanced{` + + `F5XcWaapAdvanced:` + fmt.Sprintf("%#v", this.F5XcWaapAdvanced) + `}`}, ", ") + return s +} +func (this *UnsubscribeRequest_F5XcSiteManagementStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcSiteManagementStandard{` + + `F5XcSiteManagementStandard:` + fmt.Sprintf("%#v", this.F5XcSiteManagementStandard) + `}`}, ", ") + return s +} +func (this *UnsubscribeRequest_F5XcWebAppScanningStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&subscription.UnsubscribeRequest_F5XcWebAppScanningStandard{` + + `F5XcWebAppScanningStandard:` + fmt.Sprintf("%#v", this.F5XcWebAppScanningStandard) + `}`}, ", ") + return s +} +func (this *UnsubscribeResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&subscription.UnsubscribeResponse{") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomAPIClient is the client API for CustomAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomAPIClient interface { + // Subscribe + // + // x-displayName: "Subscribe to XC addon services" + // Subscribe to XC addon services + Subscribe(ctx context.Context, in *SubscribeRequest, opts ...grpc.CallOption) (*SubscribeResponse, error) + // Unsubscribe + // + // x-displayName: "Unsubscribe to XC addon services" + // Unsubscribe to XC addon services + Unsubscribe(ctx context.Context, in *UnsubscribeRequest, opts ...grpc.CallOption) (*UnsubscribeResponse, error) +} + +type customAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomAPIClient(cc *grpc.ClientConn) CustomAPIClient { + return &customAPIClient{cc} +} + +func (c *customAPIClient) Subscribe(ctx context.Context, in *SubscribeRequest, opts ...grpc.CallOption) (*SubscribeResponse, error) { + out := new(SubscribeResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.subscription.CustomAPI/Subscribe", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *customAPIClient) Unsubscribe(ctx context.Context, in *UnsubscribeRequest, opts ...grpc.CallOption) (*UnsubscribeResponse, error) { + out := new(UnsubscribeResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.subscription.CustomAPI/Unsubscribe", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CustomAPIServer is the server API for CustomAPI service. +type CustomAPIServer interface { + // Subscribe + // + // x-displayName: "Subscribe to XC addon services" + // Subscribe to XC addon services + Subscribe(context.Context, *SubscribeRequest) (*SubscribeResponse, error) + // Unsubscribe + // + // x-displayName: "Unsubscribe to XC addon services" + // Unsubscribe to XC addon services + Unsubscribe(context.Context, *UnsubscribeRequest) (*UnsubscribeResponse, error) +} + +// UnimplementedCustomAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomAPIServer struct { +} + +func (*UnimplementedCustomAPIServer) Subscribe(ctx context.Context, req *SubscribeRequest) (*SubscribeResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Subscribe not implemented") +} +func (*UnimplementedCustomAPIServer) Unsubscribe(ctx context.Context, req *UnsubscribeRequest) (*UnsubscribeResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Unsubscribe not implemented") +} + +func RegisterCustomAPIServer(s *grpc.Server, srv CustomAPIServer) { + s.RegisterService(&_CustomAPI_serviceDesc, srv) +} + +func _CustomAPI_Subscribe_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SubscribeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Subscribe(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.subscription.CustomAPI/Subscribe", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Subscribe(ctx, req.(*SubscribeRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomAPI_Unsubscribe_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UnsubscribeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomAPIServer).Unsubscribe(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.subscription.CustomAPI/Unsubscribe", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomAPIServer).Unsubscribe(ctx, req.(*UnsubscribeRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.subscription.CustomAPI", + HandlerType: (*CustomAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Subscribe", + Handler: _CustomAPI_Subscribe_Handler, + }, + { + MethodName: "Unsubscribe", + Handler: _CustomAPI_Unsubscribe_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/subscription/public_customapi.proto", +} + +func (m *SubscribeRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SubscribeRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AddonChoice != nil { + { + size := m.AddonChoice.Size() + i -= size + if _, err := m.AddonChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *SubscribeRequest_F5XcSecuremeshStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcSecuremeshStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSecuremeshStandard != nil { + { + size, err := m.F5XcSecuremeshStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *SubscribeRequest_F5XcSecuremeshAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcSecuremeshAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSecuremeshAdvanced != nil { + { + size, err := m.F5XcSecuremeshAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *SubscribeRequest_F5XcAppstackStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcAppstackStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcAppstackStandard != nil { + { + size, err := m.F5XcAppstackStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *SubscribeRequest_F5XcWaapStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcWaapStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcWaapStandard != nil { + { + size, err := m.F5XcWaapStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *SubscribeRequest_F5XcWaapAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcWaapAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcWaapAdvanced != nil { + { + size, err := m.F5XcWaapAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *SubscribeRequest_F5XcSiteManagementStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcSiteManagementStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSiteManagementStandard != nil { + { + size, err := m.F5XcSiteManagementStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *SubscribeRequest_F5XcWebAppScanningStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeRequest_F5XcWebAppScanningStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcWebAppScanningStandard != nil { + { + size, err := m.F5XcWebAppScanningStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *SubscribeResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SubscribeResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubscribeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *UnsubscribeRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *UnsubscribeRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AddonChoice != nil { + { + size := m.AddonChoice.Size() + i -= size + if _, err := m.AddonChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *UnsubscribeRequest_F5XcSecuremeshStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcSecuremeshStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSecuremeshStandard != nil { + { + size, err := m.F5XcSecuremeshStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeRequest_F5XcSecuremeshAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcSecuremeshAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSecuremeshAdvanced != nil { + { + size, err := m.F5XcSecuremeshAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeRequest_F5XcAppstackStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcAppstackStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcAppstackStandard != nil { + { + size, err := m.F5XcAppstackStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeRequest_F5XcWaapStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcWaapStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcWaapStandard != nil { + { + size, err := m.F5XcWaapStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeRequest_F5XcWaapAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcWaapAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcWaapAdvanced != nil { + { + size, err := m.F5XcWaapAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeRequest_F5XcSiteManagementStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcSiteManagementStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSiteManagementStandard != nil { + { + size, err := m.F5XcSiteManagementStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeRequest_F5XcWebAppScanningStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeRequest_F5XcWebAppScanningStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcWebAppScanningStandard != nil { + { + size, err := m.F5XcWebAppScanningStandard.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *UnsubscribeResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *UnsubscribeResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UnsubscribeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *SubscribeRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AddonChoice != nil { + n += m.AddonChoice.Size() + } + return n +} + +func (m *SubscribeRequest_F5XcSecuremeshStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSecuremeshStandard != nil { + l = m.F5XcSecuremeshStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeRequest_F5XcSecuremeshAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSecuremeshAdvanced != nil { + l = m.F5XcSecuremeshAdvanced.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeRequest_F5XcAppstackStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcAppstackStandard != nil { + l = m.F5XcAppstackStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeRequest_F5XcWaapStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcWaapStandard != nil { + l = m.F5XcWaapStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeRequest_F5XcWaapAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcWaapAdvanced != nil { + l = m.F5XcWaapAdvanced.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeRequest_F5XcSiteManagementStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSiteManagementStandard != nil { + l = m.F5XcSiteManagementStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeRequest_F5XcWebAppScanningStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcWebAppScanningStandard != nil { + l = m.F5XcWebAppScanningStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *SubscribeResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *UnsubscribeRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AddonChoice != nil { + n += m.AddonChoice.Size() + } + return n +} + +func (m *UnsubscribeRequest_F5XcSecuremeshStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSecuremeshStandard != nil { + l = m.F5XcSecuremeshStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeRequest_F5XcSecuremeshAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSecuremeshAdvanced != nil { + l = m.F5XcSecuremeshAdvanced.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeRequest_F5XcAppstackStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcAppstackStandard != nil { + l = m.F5XcAppstackStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeRequest_F5XcWaapStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcWaapStandard != nil { + l = m.F5XcWaapStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeRequest_F5XcWaapAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcWaapAdvanced != nil { + l = m.F5XcWaapAdvanced.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeRequest_F5XcSiteManagementStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSiteManagementStandard != nil { + l = m.F5XcSiteManagementStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeRequest_F5XcWebAppScanningStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcWebAppScanningStandard != nil { + l = m.F5XcWebAppScanningStandard.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *UnsubscribeResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func sovPublicCustomapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomapi(x uint64) (n int) { + return sovPublicCustomapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *SubscribeRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest{`, + `AddonChoice:` + fmt.Sprintf("%v", this.AddonChoice) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcSecuremeshStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcSecuremeshStandard{`, + `F5XcSecuremeshStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSecuremeshStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcSecuremeshAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcSecuremeshAdvanced{`, + `F5XcSecuremeshAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSecuremeshAdvanced), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcAppstackStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcAppstackStandard{`, + `F5XcAppstackStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcAppstackStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcWaapStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcWaapStandard{`, + `F5XcWaapStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcWaapStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcWaapAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcWaapAdvanced{`, + `F5XcWaapAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.F5XcWaapAdvanced), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcSiteManagementStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcSiteManagementStandard{`, + `F5XcSiteManagementStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSiteManagementStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeRequest_F5XcWebAppScanningStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeRequest_F5XcWebAppScanningStandard{`, + `F5XcWebAppScanningStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcWebAppScanningStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubscribeResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubscribeResponse{`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest{`, + `AddonChoice:` + fmt.Sprintf("%v", this.AddonChoice) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcSecuremeshStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcSecuremeshStandard{`, + `F5XcSecuremeshStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSecuremeshStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcSecuremeshAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcSecuremeshAdvanced{`, + `F5XcSecuremeshAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSecuremeshAdvanced), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcAppstackStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcAppstackStandard{`, + `F5XcAppstackStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcAppstackStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcWaapStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcWaapStandard{`, + `F5XcWaapStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcWaapStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcWaapAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcWaapAdvanced{`, + `F5XcWaapAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.F5XcWaapAdvanced), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcSiteManagementStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcSiteManagementStandard{`, + `F5XcSiteManagementStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSiteManagementStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeRequest_F5XcWebAppScanningStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeRequest_F5XcWebAppScanningStandard{`, + `F5XcWebAppScanningStandard:` + strings.Replace(fmt.Sprintf("%v", this.F5XcWebAppScanningStandard), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UnsubscribeResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UnsubscribeResponse{`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *SubscribeRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubscribeRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubscribeRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcSecuremeshStandard{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvanced", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcSecuremeshAdvanced{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcAppstackStandard{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcWaapStandard{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvanced", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcWaapAdvanced{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcSiteManagementStandard{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWebAppScanningStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &SubscribeRequest_F5XcWebAppScanningStandard{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SubscribeResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubscribeResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubscribeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *UnsubscribeRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: UnsubscribeRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UnsubscribeRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcSecuremeshStandard{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvanced", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcSecuremeshAdvanced{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcAppstackStandard{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcWaapStandard{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvanced", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcWaapAdvanced{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcSiteManagementStandard{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWebAppScanningStandard", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AddonChoice = &UnsubscribeRequest_F5XcWebAppScanningStandard{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *UnsubscribeResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: UnsubscribeResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UnsubscribeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCustomapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCustomapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCustomapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCustomapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCustomapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCustomapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/subscription/public_customapi.pb.gw.go b/pbgo/extschema/schema/subscription/public_customapi.pb.gw.go new file mode 100644 index 000000000..3b2e68725 --- /dev/null +++ b/pbgo/extschema/schema/subscription/public_customapi.pb.gw.go @@ -0,0 +1,238 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/subscription/public_customapi.proto + +/* +Package subscription is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package subscription + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_CustomAPI_Subscribe_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SubscribeRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Subscribe(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Subscribe_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SubscribeRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Subscribe(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CustomAPI_Unsubscribe_0(ctx context.Context, marshaler runtime.Marshaler, client CustomAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq UnsubscribeRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Unsubscribe(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomAPI_Unsubscribe_0(ctx context.Context, marshaler runtime.Marshaler, server CustomAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq UnsubscribeRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Unsubscribe(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterCustomAPIHandlerServer registers the http handlers for service CustomAPI to "mux". +// UnaryRPC :call CustomAPIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterCustomAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CustomAPIServer) error { + + mux.Handle("POST", pattern_CustomAPI_Subscribe_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Subscribe_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Subscribe_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CustomAPI_Unsubscribe_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomAPI_Unsubscribe_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Unsubscribe_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCustomAPIHandlerFromEndpoint is same as RegisterCustomAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCustomAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCustomAPIHandler(ctx, mux, conn) +} + +// RegisterCustomAPIHandler registers the http handlers for service CustomAPI to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIClient(conn)) +} + +// RegisterCustomAPIHandlerClient registers the http handlers for service CustomAPI +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CustomAPIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CustomAPIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CustomAPIClient" to call the correct interceptors. +func RegisterCustomAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CustomAPIClient) error { + + mux.Handle("POST", pattern_CustomAPI_Subscribe_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Subscribe_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Subscribe_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CustomAPI_Unsubscribe_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomAPI_Unsubscribe_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomAPI_Unsubscribe_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CustomAPI_Subscribe_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "addon", "subscribe"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomAPI_Unsubscribe_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"public", "namespaces", "system", "addon", "unsubscribe"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_CustomAPI_Subscribe_0 = runtime.ForwardResponseMessage + + forward_CustomAPI_Unsubscribe_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/subscription/public_customapi.vesapi.go b/pbgo/extschema/schema/subscription/public_customapi.vesapi.go new file mode 100644 index 000000000..289d46cdc --- /dev/null +++ b/pbgo/extschema/schema/subscription/public_customapi.vesapi.go @@ -0,0 +1,758 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package subscription + +import ( + "bytes" + "context" + "fmt" + io "io" + "net/http" + "strings" + + "github.com/gogo/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// Create CustomAPI GRPC Client satisfying server.CustomClient +type CustomAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient CustomAPIClient + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error) +} + +func (c *CustomAPIGrpcClient) doRPCSubscribe(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &SubscribeRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.subscription.SubscribeRequest", yamlReq) + } + rsp, err := c.grpcClient.Subscribe(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) doRPCUnsubscribe(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &UnsubscribeRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.subscription.UnsubscribeRequest", yamlReq) + } + rsp, err := c.grpcClient.Unsubscribe(ctx, req, opts...) + return rsp, err +} + +func (c *CustomAPIGrpcClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + if cco.YAMLReq == "" { + return nil, fmt.Errorf("Error, empty request body") + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := rpcFn(ctx, cco.YAMLReq, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using GRPC") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func NewCustomAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { + ccl := &CustomAPIGrpcClient{ + conn: cc, + grpcClient: NewCustomAPIClient(cc), + } + rpcFns := make(map[string]func(context.Context, string, ...grpc.CallOption) (proto.Message, error)) + rpcFns["Subscribe"] = ccl.doRPCSubscribe + + rpcFns["Unsubscribe"] = ccl.doRPCUnsubscribe + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create CustomAPI REST Client satisfying server.CustomClient +type CustomAPIRestClient struct { + baseURL string + client http.Client + // map of rpc name to its invocation + rpcFns map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error) +} + +func (c *CustomAPIRestClient) doRPCSubscribe(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &SubscribeRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.subscription.SubscribeRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("addon_choice", fmt.Sprintf("%v", req.AddonChoice)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &SubscribeResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.subscription.SubscribeResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) doRPCUnsubscribe(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &UnsubscribeRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.subscription.UnsubscribeRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("addon_choice", fmt.Sprintf("%v", req.AddonChoice)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &UnsubscribeResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.subscription.UnsubscribeResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + +func (c *CustomAPIRestClient) DoRPC(ctx context.Context, rpc string, opts ...server.CustomCallOpt) (proto.Message, error) { + rpcFn, exists := c.rpcFns[rpc] + if !exists { + return nil, fmt.Errorf("Error, no such rpc %s", rpc) + } + cco := server.NewCustomCallOpts() + for _, opt := range opts { + opt(cco) + } + + rsp, err := rpcFn(ctx, cco) + if err != nil { + return nil, errors.Wrap(err, "Doing custom RPC using Rest") + } + return rsp, nil +} + +func NewCustomAPIRestClient(baseURL string, hc http.Client) server.CustomClient { + ccl := &CustomAPIRestClient{ + baseURL: baseURL, + client: hc, + } + + rpcFns := make(map[string]func(context.Context, *server.CustomCallOpts) (proto.Message, error)) + rpcFns["Subscribe"] = ccl.doRPCSubscribe + + rpcFns["Unsubscribe"] = ccl.doRPCUnsubscribe + + ccl.rpcFns = rpcFns + + return ccl +} + +// Create customAPIInprocClient + +// INPROC Client (satisfying CustomAPIClient interface) +type customAPIInprocClient struct { + CustomAPIServer +} + +func (c *customAPIInprocClient) Subscribe(ctx context.Context, in *SubscribeRequest, opts ...grpc.CallOption) (*SubscribeResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.subscription.CustomAPI.Subscribe") + return c.CustomAPIServer.Subscribe(ctx, in) +} +func (c *customAPIInprocClient) Unsubscribe(ctx context.Context, in *UnsubscribeRequest, opts ...grpc.CallOption) (*UnsubscribeResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.subscription.CustomAPI.Unsubscribe") + return c.CustomAPIServer.Unsubscribe(ctx, in) +} + +func NewCustomAPIInprocClient(svc svcfw.Service) CustomAPIClient { + return &customAPIInprocClient{CustomAPIServer: NewCustomAPIServer(svc)} +} + +// RegisterGwCustomAPIHandler registers with grpc-gw with an inproc-client backing so that +// rest to grpc happens without a grpc.Dial (thus avoiding additional certs for mTLS) +func RegisterGwCustomAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterCustomAPIHandlerClient(ctx, mux, NewCustomAPIInprocClient(s)) +} + +// Create customAPISrv + +// SERVER (satisfying CustomAPIServer interface) +type customAPISrv struct { + svc svcfw.Service +} + +func (s *customAPISrv) Subscribe(ctx context.Context, in *SubscribeRequest) (*SubscribeResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.subscription.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *SubscribeResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.subscription.SubscribeRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Subscribe' operation on 'subscription'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.subscription.CustomAPI.Subscribe"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Subscribe(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.subscription.SubscribeResponse", rsp)...) + + return rsp, nil +} +func (s *customAPISrv) Unsubscribe(ctx context.Context, in *UnsubscribeRequest) (*UnsubscribeResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.subscription.CustomAPI") + cah, ok := ah.(CustomAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomAPIServer", ah) + } + + var ( + rsp *UnsubscribeResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.subscription.UnsubscribeRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomAPI.Unsubscribe' operation on 'subscription'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.subscription.CustomAPI.Unsubscribe"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.Unsubscribe(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.subscription.UnsubscribeResponse", rsp)...) + + return rsp, nil +} + +func NewCustomAPIServer(svc svcfw.Service) CustomAPIServer { + return &customAPISrv{svc: svc} +} + +var CustomAPISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Subscription API for addons served by akar", + "description": "Use this API to subscribe to XC addon services served by akar", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/system/addon/subscribe": { + "post": { + "summary": "Subscribe to XC addon services", + "description": "Subscribe to XC addon services", + "operationId": "ves.io.schema.subscription.CustomAPI.Subscribe", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/subscriptionSubscribeResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/subscriptionSubscribeRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-customapi-subscribe" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.CustomAPI.Subscribe" + }, + "x-displayname": "Subscription API", + "x-ves-proto-service": "ves.io.schema.subscription.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, + "/public/namespaces/system/addon/unsubscribe": { + "post": { + "summary": "Unsubscribe to XC addon services", + "description": "Unsubscribe to XC addon services", + "operationId": "ves.io.schema.subscription.CustomAPI.Unsubscribe", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/subscriptionUnsubscribeResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/subscriptionUnsubscribeRequest" + } + } + ], + "tags": [ + "CustomAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-subscription-customapi-unsubscribe" + }, + "x-ves-proto-rpc": "ves.io.schema.subscription.CustomAPI.Unsubscribe" + }, + "x-displayname": "Subscription API", + "x-ves-proto-service": "ves.io.schema.subscription.CustomAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + } + }, + "definitions": { + "schemaEmpty": { + "type": "object", + "description": "This can be used for messages where no values are needed", + "title": "Empty", + "x-displayname": "Empty", + "x-ves-proto-message": "ves.io.schema.Empty" + }, + "subscriptionSubscribeRequest": { + "type": "object", + "description": "Request to subscribe to one of addon services", + "title": "SubscribeRequest", + "x-displayname": "Subscribe request", + "x-ves-oneof-field-addon_choice": "[\"f5xc_appstack_standard\",\"f5xc_securemesh_advanced\",\"f5xc_securemesh_standard\",\"f5xc_site_management_standard\",\"f5xc_waap_advanced\",\"f5xc_waap_standard\",\"f5xc_web_app_scanning_standard\"]", + "x-ves-proto-message": "ves.io.schema.subscription.SubscribeRequest", + "properties": { + "f5xc_appstack_standard": { + "description": "Exclusive with [f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Appstack tier-standard", + "title": "addon-Appstack tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "appstack standard" + }, + "f5xc_securemesh_advanced": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Securemesh tier-advanced", + "title": "addon-Securemesh tier-advanced", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "secure mesh advance" + }, + "f5xc_securemesh_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Securemesh tier-standard", + "title": "addon-Securemesh tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "secure mesh standard" + }, + "f5xc_site_management_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Sitemanagement tier-standard ", + "title": "addon-Sitemanagement tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Site management standard" + }, + "f5xc_waap_advanced": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-WAAP tier-advanced", + "title": "addon-WAAP tier-advanced", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "WAAP advance" + }, + "f5xc_waap_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_web_app_scanning_standard]\n addon-WAAP tier-standard", + "title": "addon-WAAP tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "WAAP standard" + }, + "f5xc_web_app_scanning_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard]\n addon-web-app-scanning tier-standard", + "title": "addon-web-app-scanning tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Web App Scanning standard" + } + } + }, + "subscriptionSubscribeResponse": { + "type": "object", + "description": "Response for subscribe", + "title": "SubscribeResponse", + "x-displayname": "Subscribe response", + "x-ves-proto-message": "ves.io.schema.subscription.SubscribeResponse" + }, + "subscriptionUnsubscribeRequest": { + "type": "object", + "description": "Request to unsubscribe to one of addon services", + "title": "UnsubscribeRequest", + "x-displayname": "Unsubscribe request", + "x-ves-oneof-field-addon_choice": "[\"f5xc_appstack_standard\",\"f5xc_securemesh_advanced\",\"f5xc_securemesh_standard\",\"f5xc_site_management_standard\",\"f5xc_waap_advanced\",\"f5xc_waap_standard\",\"f5xc_web_app_scanning_standard\"]", + "x-ves-proto-message": "ves.io.schema.subscription.UnsubscribeRequest", + "properties": { + "f5xc_appstack_standard": { + "description": "Exclusive with [f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Appstack tier-standard", + "title": "addon-Appstack tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "appstack standard" + }, + "f5xc_securemesh_advanced": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Securemesh tier-advanced", + "title": "addon-Securemesh tier-advanced", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "secure mesh advance" + }, + "f5xc_securemesh_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Securemesh tier-standard", + "title": "addon-Securemesh tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "secure mesh standard" + }, + "f5xc_site_management_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_waap_advanced f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-Sitemanagement tier-standard ", + "title": "addon-Sitemanagement tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Site management standard" + }, + "f5xc_waap_advanced": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_standard f5xc_web_app_scanning_standard]\n addon-WAAP tier-advanced", + "title": "addon-WAAP tier-advanced", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "WAAP advance" + }, + "f5xc_waap_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_web_app_scanning_standard]\n addon-WAAP tier-standard", + "title": "addon-WAAP tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "WAAP standard" + }, + "f5xc_web_app_scanning_standard": { + "description": "Exclusive with [f5xc_appstack_standard f5xc_securemesh_advanced f5xc_securemesh_standard f5xc_site_management_standard f5xc_waap_advanced f5xc_waap_standard]\n addon-web-app-scanning tier-standard", + "title": "addon-web-app-scanning tier-standard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Web App Scanning standard" + } + } + }, + "subscriptionUnsubscribeResponse": { + "type": "object", + "description": "Response for unsubscribe", + "title": "UnsubscribeResponse", + "x-displayname": "Unsubscribe response", + "x-ves-proto-message": "ves.io.schema.subscription.UnsubscribeResponse" + } + }, + "x-displayname": "Subscription API", + "x-ves-proto-file": "ves.io/schema/subscription/public_customapi.proto" +}` diff --git a/pbgo/extschema/schema/subscription/public_customapi.vesmsg.go b/pbgo/extschema/schema/subscription/public_customapi.vesmsg.go new file mode 100644 index 000000000..4dbee46b2 --- /dev/null +++ b/pbgo/extschema/schema/subscription/public_customapi.vesmsg.go @@ -0,0 +1,535 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package subscription + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *SubscribeRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SubscribeRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SubscribeRequest) DeepCopy() *SubscribeRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SubscribeRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SubscribeRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SubscribeRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SubscribeRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateSubscribeRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSubscribeRequest) AddonChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for addon_choice") + } + return validatorFn, nil +} + +func (v *ValidateSubscribeRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SubscribeRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SubscribeRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["addon_choice"]; exists { + val := m.GetAddonChoice() + vOpts := append(opts, + db.WithValidateField("addon_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAddonChoice().(type) { + case *SubscribeRequest_F5XcSecuremeshStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_securemesh_standard"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcSecuremeshStandard).F5XcSecuremeshStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_securemesh_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SubscribeRequest_F5XcSecuremeshAdvanced: + if fv, exists := v.FldValidators["addon_choice.f5xc_securemesh_advanced"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcSecuremeshAdvanced).F5XcSecuremeshAdvanced + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_securemesh_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SubscribeRequest_F5XcAppstackStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_appstack_standard"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcAppstackStandard).F5XcAppstackStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_appstack_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SubscribeRequest_F5XcWaapStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_waap_standard"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcWaapStandard).F5XcWaapStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_waap_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SubscribeRequest_F5XcWaapAdvanced: + if fv, exists := v.FldValidators["addon_choice.f5xc_waap_advanced"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcWaapAdvanced).F5XcWaapAdvanced + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_waap_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SubscribeRequest_F5XcSiteManagementStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_site_management_standard"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcSiteManagementStandard).F5XcSiteManagementStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_site_management_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SubscribeRequest_F5XcWebAppScanningStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_web_app_scanning_standard"]; exists { + val := m.GetAddonChoice().(*SubscribeRequest_F5XcWebAppScanningStandard).F5XcWebAppScanningStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_web_app_scanning_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSubscribeRequestValidator = func() *ValidateSubscribeRequest { + v := &ValidateSubscribeRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAddonChoice := v.AddonChoiceValidationRuleHandler + rulesAddonChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAddonChoice(rulesAddonChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SubscribeRequest.addon_choice: %s", err) + panic(errMsg) + } + v.FldValidators["addon_choice"] = vFn + + return v +}() + +func SubscribeRequestValidator() db.Validator { + return DefaultSubscribeRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SubscribeResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SubscribeResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SubscribeResponse) DeepCopy() *SubscribeResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SubscribeResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SubscribeResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SubscribeResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SubscribeResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateSubscribeResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSubscribeResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SubscribeResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SubscribeResponse got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSubscribeResponseValidator = func() *ValidateSubscribeResponse { + v := &ValidateSubscribeResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SubscribeResponseValidator() db.Validator { + return DefaultSubscribeResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *UnsubscribeRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *UnsubscribeRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *UnsubscribeRequest) DeepCopy() *UnsubscribeRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &UnsubscribeRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *UnsubscribeRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *UnsubscribeRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return UnsubscribeRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateUnsubscribeRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateUnsubscribeRequest) AddonChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for addon_choice") + } + return validatorFn, nil +} + +func (v *ValidateUnsubscribeRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*UnsubscribeRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *UnsubscribeRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["addon_choice"]; exists { + val := m.GetAddonChoice() + vOpts := append(opts, + db.WithValidateField("addon_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAddonChoice().(type) { + case *UnsubscribeRequest_F5XcSecuremeshStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_securemesh_standard"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcSecuremeshStandard).F5XcSecuremeshStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_securemesh_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *UnsubscribeRequest_F5XcSecuremeshAdvanced: + if fv, exists := v.FldValidators["addon_choice.f5xc_securemesh_advanced"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcSecuremeshAdvanced).F5XcSecuremeshAdvanced + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_securemesh_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *UnsubscribeRequest_F5XcAppstackStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_appstack_standard"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcAppstackStandard).F5XcAppstackStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_appstack_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *UnsubscribeRequest_F5XcWaapStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_waap_standard"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcWaapStandard).F5XcWaapStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_waap_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *UnsubscribeRequest_F5XcWaapAdvanced: + if fv, exists := v.FldValidators["addon_choice.f5xc_waap_advanced"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcWaapAdvanced).F5XcWaapAdvanced + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_waap_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *UnsubscribeRequest_F5XcSiteManagementStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_site_management_standard"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcSiteManagementStandard).F5XcSiteManagementStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_site_management_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *UnsubscribeRequest_F5XcWebAppScanningStandard: + if fv, exists := v.FldValidators["addon_choice.f5xc_web_app_scanning_standard"]; exists { + val := m.GetAddonChoice().(*UnsubscribeRequest_F5XcWebAppScanningStandard).F5XcWebAppScanningStandard + vOpts := append(opts, + db.WithValidateField("addon_choice"), + db.WithValidateField("f5xc_web_app_scanning_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultUnsubscribeRequestValidator = func() *ValidateUnsubscribeRequest { + v := &ValidateUnsubscribeRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAddonChoice := v.AddonChoiceValidationRuleHandler + rulesAddonChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAddonChoice(rulesAddonChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for UnsubscribeRequest.addon_choice: %s", err) + panic(errMsg) + } + v.FldValidators["addon_choice"] = vFn + + return v +}() + +func UnsubscribeRequestValidator() db.Validator { + return DefaultUnsubscribeRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *UnsubscribeResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *UnsubscribeResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *UnsubscribeResponse) DeepCopy() *UnsubscribeResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &UnsubscribeResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *UnsubscribeResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *UnsubscribeResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return UnsubscribeResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateUnsubscribeResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateUnsubscribeResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*UnsubscribeResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *UnsubscribeResponse got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultUnsubscribeResponseValidator = func() *ValidateUnsubscribeResponse { + v := &ValidateUnsubscribeResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func UnsubscribeResponseValidator() db.Validator { + return DefaultUnsubscribeResponseValidator +} diff --git a/pbgo/extschema/schema/subscription/types.pb.go b/pbgo/extschema/schema/subscription/types.pb.go new file mode 100644 index 000000000..76b390a13 --- /dev/null +++ b/pbgo/extschema/schema/subscription/types.pb.go @@ -0,0 +1,1526 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/subscription/types.proto + +package subscription + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + golang_proto "github.com/golang/protobuf/proto" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Status +// +// x-displayName: "Addon Subscription Status" +// Status of an addon subscription +type Status int32 + +const ( + // x-displayName: "None" + // Default state + AS_UNKNOWN Status = 0 + // x-displayName: "Subscribed" + // Successfully subscribed + AS_SUBSCRIBED Status = 1 + // x-displayName: "Unsubscribed" + // Successfully unsubscribed + AS_UNSUBSCRIBED Status = 2 + // x-displayName: "Error" + // Service subscription request ended up in error state. + AS_ERROR Status = 3 +) + +var Status_name = map[int32]string{ + 0: "AS_UNKNOWN", + 1: "AS_SUBSCRIBED", + 2: "AS_UNSUBSCRIBED", + 3: "AS_ERROR", +} + +var Status_value = map[string]int32{ + "AS_UNKNOWN": 0, + "AS_SUBSCRIBED": 1, + "AS_UNSUBSCRIBED": 2, + "AS_ERROR": 3, +} + +func (Status) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_1a5c948ffa1e8591, []int{0} +} + +// GlobalSpecType +// +// x-displayName: "Global Specification" +// This is the shape of the subscription object in the database at Global Controller. +type GlobalSpecType struct { + // Addon Service Status + // + // x-displayName: "Addon Service Status" + // Addon service status + AddonServiceStatus map[string]*AddonServiceStatus `protobuf:"bytes,1,rep,name=addon_service_status,json=addonServiceStatus,proto3" json:"addon_service_status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1a5c948ffa1e8591, []int{0} +} +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) +} +func (m *GlobalSpecType) XXX_Size() int { + return m.Size() +} +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo + +func (m *GlobalSpecType) GetAddonServiceStatus() map[string]*AddonServiceStatus { + if m != nil { + return m.AddonServiceStatus + } + return nil +} + +// AddonServiceStatus +// +// x-displayName: "Addon Service Status" +// Display current state of an addon service +type AddonServiceStatus struct { + // Status + // + // x-displayName: "Addon Subscription Status" + // Status of an addon subscription + Status Status `protobuf:"varint,1,opt,name=status,proto3,enum=ves.io.schema.subscription.Status" json:"status,omitempty"` +} + +func (m *AddonServiceStatus) Reset() { *m = AddonServiceStatus{} } +func (*AddonServiceStatus) ProtoMessage() {} +func (*AddonServiceStatus) Descriptor() ([]byte, []int) { + return fileDescriptor_1a5c948ffa1e8591, []int{1} +} +func (m *AddonServiceStatus) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AddonServiceStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AddonServiceStatus) XXX_Merge(src proto.Message) { + xxx_messageInfo_AddonServiceStatus.Merge(m, src) +} +func (m *AddonServiceStatus) XXX_Size() int { + return m.Size() +} +func (m *AddonServiceStatus) XXX_DiscardUnknown() { + xxx_messageInfo_AddonServiceStatus.DiscardUnknown(m) +} + +var xxx_messageInfo_AddonServiceStatus proto.InternalMessageInfo + +func (m *AddonServiceStatus) GetStatus() Status { + if m != nil { + return m.Status + } + return AS_UNKNOWN +} + +// Get Subscription +// +// x-displayName: "Get Subscription" +// Get subscription +type GetSpecType struct { + AddonServiceStatus map[string]*AddonServiceStatus `protobuf:"bytes,1,rep,name=addon_service_status,json=addonServiceStatus,proto3" json:"addon_service_status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *GetSpecType) Reset() { *m = GetSpecType{} } +func (*GetSpecType) ProtoMessage() {} +func (*GetSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1a5c948ffa1e8591, []int{2} +} +func (m *GetSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GetSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetSpecType.Merge(m, src) +} +func (m *GetSpecType) XXX_Size() int { + return m.Size() +} +func (m *GetSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GetSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GetSpecType proto.InternalMessageInfo + +func (m *GetSpecType) GetAddonServiceStatus() map[string]*AddonServiceStatus { + if m != nil { + return m.AddonServiceStatus + } + return nil +} + +// Replace subscription +// +// x-displayName: "Replace Subscription" +// Replace a given subscription +type ReplaceSpecType struct { +} + +func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } +func (*ReplaceSpecType) ProtoMessage() {} +func (*ReplaceSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1a5c948ffa1e8591, []int{3} +} +func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceSpecType.Merge(m, src) +} +func (m *ReplaceSpecType) XXX_Size() int { + return m.Size() +} +func (m *ReplaceSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo + +// Create Subscription +// +// x-displayName: "Create Subscription" +// Create Subscription +type CreateSpecType struct { +} + +func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } +func (*CreateSpecType) ProtoMessage() {} +func (*CreateSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1a5c948ffa1e8591, []int{4} +} +func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CreateSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateSpecType.Merge(m, src) +} +func (m *CreateSpecType) XXX_Size() int { + return m.Size() +} +func (m *CreateSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_CreateSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo + +func init() { + proto.RegisterEnum("ves.io.schema.subscription.Status", Status_name, Status_value) + golang_proto.RegisterEnum("ves.io.schema.subscription.Status", Status_name, Status_value) + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.subscription.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.subscription.GlobalSpecType") + proto.RegisterMapType((map[string]*AddonServiceStatus)(nil), "ves.io.schema.subscription.GlobalSpecType.AddonServiceStatusEntry") + golang_proto.RegisterMapType((map[string]*AddonServiceStatus)(nil), "ves.io.schema.subscription.GlobalSpecType.AddonServiceStatusEntry") + proto.RegisterType((*AddonServiceStatus)(nil), "ves.io.schema.subscription.AddonServiceStatus") + golang_proto.RegisterType((*AddonServiceStatus)(nil), "ves.io.schema.subscription.AddonServiceStatus") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.subscription.GetSpecType") + golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.subscription.GetSpecType") + proto.RegisterMapType((map[string]*AddonServiceStatus)(nil), "ves.io.schema.subscription.GetSpecType.AddonServiceStatusEntry") + golang_proto.RegisterMapType((map[string]*AddonServiceStatus)(nil), "ves.io.schema.subscription.GetSpecType.AddonServiceStatusEntry") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.subscription.ReplaceSpecType") + golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.subscription.ReplaceSpecType") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.subscription.CreateSpecType") + golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.subscription.CreateSpecType") +} + +func init() { + proto.RegisterFile("ves.io/schema/subscription/types.proto", fileDescriptor_1a5c948ffa1e8591) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/subscription/types.proto", fileDescriptor_1a5c948ffa1e8591) +} + +var fileDescriptor_1a5c948ffa1e8591 = []byte{ + // 498 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x93, 0x41, 0x8b, 0xd3, 0x40, + 0x14, 0xc7, 0xf3, 0xba, 0x58, 0x74, 0xaa, 0xdd, 0x74, 0x14, 0xac, 0x11, 0x86, 0x92, 0x83, 0x14, + 0xa1, 0x13, 0xa8, 0x17, 0xe9, 0x41, 0x69, 0x77, 0xcb, 0x22, 0x42, 0x77, 0x49, 0x5c, 0x04, 0x2f, + 0x21, 0x49, 0x67, 0xb3, 0x61, 0xd3, 0x4e, 0x9c, 0x4c, 0x82, 0xbd, 0x79, 0xf6, 0x20, 0x7e, 0x0c, + 0x3f, 0x86, 0x47, 0xf1, 0xd4, 0x63, 0x8f, 0x36, 0xbd, 0x78, 0xdc, 0x2f, 0x20, 0xc8, 0x26, 0xdd, + 0xda, 0x5a, 0xb6, 0x77, 0x6f, 0x6f, 0xde, 0xfb, 0xbf, 0xdf, 0x7b, 0xf9, 0x93, 0x87, 0x9e, 0xa4, + 0x2c, 0xa6, 0x01, 0x37, 0x62, 0xef, 0x9c, 0x8d, 0x1c, 0x23, 0x4e, 0xdc, 0xd8, 0x13, 0x41, 0x24, + 0x03, 0x3e, 0x36, 0xe4, 0x24, 0x62, 0x31, 0x8d, 0x04, 0x97, 0x1c, 0x6b, 0x85, 0x8e, 0x16, 0x3a, + 0xba, 0xae, 0xd3, 0x5a, 0x7e, 0x20, 0xcf, 0x13, 0x97, 0x7a, 0x7c, 0x64, 0xf8, 0xdc, 0xe7, 0x46, + 0xde, 0xe2, 0x26, 0x67, 0xf9, 0x2b, 0x7f, 0xe4, 0x51, 0x81, 0xd2, 0x1e, 0x6f, 0x8e, 0xe4, 0x39, + 0x64, 0x39, 0x47, 0x7b, 0xb4, 0x59, 0x5c, 0x5b, 0x41, 0xff, 0x0d, 0xa8, 0x7a, 0x14, 0x72, 0xd7, + 0x09, 0xad, 0x88, 0x79, 0x6f, 0x26, 0x11, 0xc3, 0x12, 0x3d, 0x70, 0x86, 0x43, 0x3e, 0xb6, 0x63, + 0x26, 0xd2, 0xc0, 0x63, 0x76, 0x2c, 0x1d, 0x99, 0xc4, 0x75, 0x68, 0xec, 0x35, 0x2b, 0xed, 0x1e, + 0xbd, 0x79, 0x69, 0xba, 0x49, 0xa2, 0xdd, 0x2b, 0x8c, 0x55, 0x50, 0xac, 0x1c, 0xd2, 0x1f, 0x4b, + 0x31, 0x31, 0xb1, 0xb3, 0x55, 0xd0, 0x12, 0xf4, 0xf0, 0x06, 0x39, 0x56, 0xd1, 0xde, 0x05, 0x9b, + 0xd4, 0xa1, 0x01, 0xcd, 0x3b, 0xe6, 0x55, 0x88, 0x0f, 0xd1, 0xad, 0xd4, 0x09, 0x13, 0x56, 0x2f, + 0x35, 0xa0, 0x59, 0x69, 0xd3, 0x5d, 0x3b, 0x6d, 0x53, 0xcd, 0xa2, 0xb9, 0x53, 0x7a, 0x0e, 0xfa, + 0x09, 0xc2, 0xdb, 0x02, 0xdc, 0x41, 0xe5, 0xd5, 0x47, 0x43, 0xb3, 0xda, 0xd6, 0x77, 0x0d, 0x58, + 0x42, 0x97, 0x1d, 0xfa, 0xa7, 0x12, 0xaa, 0x1c, 0x31, 0xb9, 0xb2, 0xf3, 0xfd, 0x4e, 0x3b, 0x5f, + 0xee, 0xb4, 0xf3, 0x2f, 0xe6, 0x3f, 0xf0, 0xb2, 0x53, 0xfb, 0xf1, 0xe2, 0x9f, 0x7f, 0x49, 0xaf, + 0xa1, 0x7d, 0x93, 0x45, 0xa1, 0xe3, 0xb1, 0x55, 0x4a, 0x45, 0xd5, 0x03, 0xc1, 0x1c, 0xb9, 0xca, + 0x3c, 0x1d, 0xa0, 0xf2, 0xd2, 0xf7, 0x2a, 0x42, 0x5d, 0xcb, 0x3e, 0x1d, 0xbc, 0x1e, 0x1c, 0xbf, + 0x1d, 0xa8, 0x0a, 0xae, 0xa1, 0x7b, 0x5d, 0xcb, 0xb6, 0x4e, 0x7b, 0xd6, 0x81, 0xf9, 0xaa, 0xd7, + 0x3f, 0x54, 0x01, 0xdf, 0x47, 0xfb, 0xb9, 0x64, 0x2d, 0x59, 0xc2, 0x77, 0xd1, 0xed, 0xae, 0x65, + 0xf7, 0x4d, 0xf3, 0xd8, 0x54, 0xf7, 0x7a, 0x9f, 0x61, 0x3a, 0x27, 0xca, 0x6c, 0x4e, 0x94, 0xcb, + 0x39, 0x81, 0x8f, 0x19, 0x81, 0xaf, 0x19, 0x81, 0xef, 0x19, 0x81, 0x69, 0x46, 0x60, 0x96, 0x11, + 0xf8, 0x99, 0x11, 0xf8, 0x95, 0x11, 0xe5, 0x32, 0x23, 0xf0, 0x65, 0x41, 0x94, 0x6f, 0x0b, 0x02, + 0xd3, 0x05, 0x51, 0x66, 0x0b, 0xa2, 0xbc, 0x3b, 0xf1, 0x79, 0x74, 0xe1, 0xd3, 0x94, 0x87, 0x92, + 0x09, 0xe1, 0xd0, 0x24, 0x36, 0xf2, 0xe0, 0x8c, 0x8b, 0x51, 0x2b, 0x12, 0x3c, 0x0d, 0x86, 0x4c, + 0xb4, 0xae, 0xcb, 0x46, 0xe4, 0xfa, 0xdc, 0x60, 0x1f, 0xe4, 0xf5, 0xb1, 0x6f, 0xdf, 0xbc, 0x5b, + 0xce, 0x6f, 0xed, 0xd9, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x7c, 0x91, 0x63, 0x4f, 0x18, 0x04, + 0x00, 0x00, +} + +func (x Status) String() string { + s, ok := Status_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.AddonServiceStatus) != len(that1.AddonServiceStatus) { + return false + } + for i := range this.AddonServiceStatus { + if !this.AddonServiceStatus[i].Equal(that1.AddonServiceStatus[i]) { + return false + } + } + return true +} +func (this *AddonServiceStatus) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceStatus) + if !ok { + that2, ok := that.(AddonServiceStatus) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Status != that1.Status { + return false + } + return true +} +func (this *GetSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType) + if !ok { + that2, ok := that.(GetSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.AddonServiceStatus) != len(that1.AddonServiceStatus) { + return false + } + for i := range this.AddonServiceStatus { + if !this.AddonServiceStatus[i].Equal(that1.AddonServiceStatus[i]) { + return false + } + } + return true +} +func (this *ReplaceSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType) + if !ok { + that2, ok := that.(ReplaceSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *CreateSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType) + if !ok { + that2, ok := that.(CreateSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&subscription.GlobalSpecType{") + keysForAddonServiceStatus := make([]string, 0, len(this.AddonServiceStatus)) + for k, _ := range this.AddonServiceStatus { + keysForAddonServiceStatus = append(keysForAddonServiceStatus, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAddonServiceStatus) + mapStringForAddonServiceStatus := "map[string]*AddonServiceStatus{" + for _, k := range keysForAddonServiceStatus { + mapStringForAddonServiceStatus += fmt.Sprintf("%#v: %#v,", k, this.AddonServiceStatus[k]) + } + mapStringForAddonServiceStatus += "}" + if this.AddonServiceStatus != nil { + s = append(s, "AddonServiceStatus: "+mapStringForAddonServiceStatus+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AddonServiceStatus) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&subscription.AddonServiceStatus{") + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&subscription.GetSpecType{") + keysForAddonServiceStatus := make([]string, 0, len(this.AddonServiceStatus)) + for k, _ := range this.AddonServiceStatus { + keysForAddonServiceStatus = append(keysForAddonServiceStatus, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAddonServiceStatus) + mapStringForAddonServiceStatus := "map[string]*AddonServiceStatus{" + for _, k := range keysForAddonServiceStatus { + mapStringForAddonServiceStatus += fmt.Sprintf("%#v: %#v,", k, this.AddonServiceStatus[k]) + } + mapStringForAddonServiceStatus += "}" + if this.AddonServiceStatus != nil { + s = append(s, "AddonServiceStatus: "+mapStringForAddonServiceStatus+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&subscription.ReplaceSpecType{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&subscription.CreateSpecType{") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AddonServiceStatus) > 0 { + keysForAddonServiceStatus := make([]string, 0, len(m.AddonServiceStatus)) + for k := range m.AddonServiceStatus { + keysForAddonServiceStatus = append(keysForAddonServiceStatus, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAddonServiceStatus) + for iNdEx := len(keysForAddonServiceStatus) - 1; iNdEx >= 0; iNdEx-- { + v := m.AddonServiceStatus[string(keysForAddonServiceStatus[iNdEx])] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(keysForAddonServiceStatus[iNdEx]) + copy(dAtA[i:], keysForAddonServiceStatus[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForAddonServiceStatus[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *AddonServiceStatus) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AddonServiceStatus) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Status != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Status)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AddonServiceStatus) > 0 { + keysForAddonServiceStatus := make([]string, 0, len(m.AddonServiceStatus)) + for k := range m.AddonServiceStatus { + keysForAddonServiceStatus = append(keysForAddonServiceStatus, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAddonServiceStatus) + for iNdEx := len(keysForAddonServiceStatus) - 1; iNdEx >= 0; iNdEx-- { + v := m.AddonServiceStatus[string(keysForAddonServiceStatus[iNdEx])] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(keysForAddonServiceStatus[iNdEx]) + copy(dAtA[i:], keysForAddonServiceStatus[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForAddonServiceStatus[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.AddonServiceStatus) > 0 { + for k, v := range m.AddonServiceStatus { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovTypes(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + l + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) + } + } + return n +} + +func (m *AddonServiceStatus) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Status != 0 { + n += 1 + sovTypes(uint64(m.Status)) + } + return n +} + +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.AddonServiceStatus) > 0 { + for k, v := range m.AddonServiceStatus { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovTypes(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + l + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) + } + } + return n +} + +func (m *ReplaceSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *CreateSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + keysForAddonServiceStatus := make([]string, 0, len(this.AddonServiceStatus)) + for k, _ := range this.AddonServiceStatus { + keysForAddonServiceStatus = append(keysForAddonServiceStatus, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAddonServiceStatus) + mapStringForAddonServiceStatus := "map[string]*AddonServiceStatus{" + for _, k := range keysForAddonServiceStatus { + mapStringForAddonServiceStatus += fmt.Sprintf("%v: %v,", k, this.AddonServiceStatus[k]) + } + mapStringForAddonServiceStatus += "}" + s := strings.Join([]string{`&GlobalSpecType{`, + `AddonServiceStatus:` + mapStringForAddonServiceStatus + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceStatus{`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType) String() string { + if this == nil { + return "nil" + } + keysForAddonServiceStatus := make([]string, 0, len(this.AddonServiceStatus)) + for k, _ := range this.AddonServiceStatus { + keysForAddonServiceStatus = append(keysForAddonServiceStatus, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAddonServiceStatus) + mapStringForAddonServiceStatus := "map[string]*AddonServiceStatus{" + for _, k := range keysForAddonServiceStatus { + mapStringForAddonServiceStatus += fmt.Sprintf("%v: %v,", k, this.AddonServiceStatus[k]) + } + mapStringForAddonServiceStatus += "}" + s := strings.Join([]string{`&GetSpecType{`, + `AddonServiceStatus:` + mapStringForAddonServiceStatus + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType{`, + `}`, + }, "") + return s +} +func (this *CreateSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType{`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AddonServiceStatus", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AddonServiceStatus == nil { + m.AddonServiceStatus = make(map[string]*AddonServiceStatus) + } + var mapkey string + var mapvalue *AddonServiceStatus + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapmsglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthTypes + } + postmsgIndex := iNdEx + mapmsglen + if postmsgIndex < 0 { + return ErrInvalidLengthTypes + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue = &AddonServiceStatus{} + if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.AddonServiceStatus[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AddonServiceStatus) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AddonServiceStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AddonServiceStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + m.Status = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Status |= Status(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AddonServiceStatus", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AddonServiceStatus == nil { + m.AddonServiceStatus = make(map[string]*AddonServiceStatus) + } + var mapkey string + var mapvalue *AddonServiceStatus + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapmsglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthTypes + } + postmsgIndex := iNdEx + mapmsglen + if postmsgIndex < 0 { + return ErrInvalidLengthTypes + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue = &AddonServiceStatus{} + if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.AddonServiceStatus[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipTypes(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthTypes + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupTypes + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthTypes + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthTypes = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowTypes = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/subscription/types.vesmsg.go b/pbgo/extschema/schema/subscription/types.vesmsg.go new file mode 100644 index 000000000..0912dc0ed --- /dev/null +++ b/pbgo/extschema/schema/subscription/types.vesmsg.go @@ -0,0 +1,434 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package subscription + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *AddonServiceStatus) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AddonServiceStatus) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AddonServiceStatus) DeepCopy() *AddonServiceStatus { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AddonServiceStatus{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AddonServiceStatus) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AddonServiceStatus) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AddonServiceStatusValidator().Validate(ctx, m, opts...) +} + +type ValidateAddonServiceStatus struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAddonServiceStatus) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AddonServiceStatus) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AddonServiceStatus got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + if err := fv(ctx, m.GetStatus(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAddonServiceStatusValidator = func() *ValidateAddonServiceStatus { + v := &ValidateAddonServiceStatus{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AddonServiceStatusValidator() db.Validator { + return DefaultAddonServiceStatusValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CreateSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateSpecType) DeepCopy() *CreateSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { + v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetSpecType) DeepCopy() *GetSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGetSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["addon_service_status"]; exists { + + vOpts := append(opts, db.WithValidateField("addon_service_status")) + for key, value := range m.GetAddonServiceStatus() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { + v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GetSpecTypeValidator() db.Validator { + return DefaultGetSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GlobalSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GlobalSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["addon_service_status"]; exists { + + vOpts := append(opts, db.WithValidateField("addon_service_status")) + for key, value := range m.GetAddonServiceStatus() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { + v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ReplaceSpecTypeValidator() db.Validator { + return DefaultReplaceSpecTypeValidator +} + +func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.AddonServiceStatus = f.GetAddonServiceStatus() +} + +func (m *GetSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *GetSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.AddonServiceStatus = m1.AddonServiceStatus +} + +func (m *GetSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *GetSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} diff --git a/pbgo/extschema/schema/tenant/crudapi/api.vesapi.go b/pbgo/extschema/schema/tenant/crudapi/api.vesapi.go index 990d40222..f6f0f59c8 100644 --- a/pbgo/extschema/schema/tenant/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/tenant/crudapi/api.vesapi.go @@ -3106,10 +3106,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3244,6 +3248,19 @@ var APISwaggerJSON string = `{ } } }, + "schemaSignupOrigin": { + "type": "string", + "description": "x-required\nSignupOrigin indicates, from which platform signup is originated, example f5xc, aws..etc\n\n - ORIGIN_UNKNOWN: ORIGIN_UNKNOWN\n\nIndicates, the origin of the signup is unknown\n - ORIGIN_F5XC: ORIGIN_F5XC\n\nORIGIN_F5XC as an origin indicates, signup is initiated from console or by internal scaling/testing/support teams using private API\n - ORIGIN_AWS: ORIGIN_AWS\n\nORIGIN_AWS as an origin indicates, signup is initiated from AWS marketplace \u0026 it comes to eywaprime via tsahik", + "title": "SignupOrigin", + "enum": [ + "ORIGIN_UNKNOWN", + "ORIGIN_F5XC", + "ORIGIN_AWS" + ], + "default": "ORIGIN_UNKNOWN", + "x-displayname": "Signup Origin", + "x-ves-proto-enum": "ves.io.schema.SignupOrigin" + }, "schemaStatusMetaType": { "type": "object", "description": "StatusMetaType is metadata that all status must have.", @@ -3675,16 +3692,16 @@ var APISwaggerJSON string = `{ "properties": { "addon_services_subscribed": { "type": "array", - "description": " List of addon service names currently subscribed by the tenant.\n\nExample: - \"shape-bot\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n", + "description": " List of addon service names currently subscribed by the tenant.\n\nExample: - \"shape-bot\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n", "title": "Addon Services Subscribed", - "maxItems": 32, + "maxItems": 128, "items": { "type": "string" }, "x-displayname": "Addon Services Subscribed", "x-ves-example": "shape-bot", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "32" + "ves.io.schema.rules.repeated.max_items": "128" } }, "company_name": { @@ -3756,6 +3773,16 @@ var APISwaggerJSON string = `{ }, "x-displayname": "K8S Server Sub CAs" }, + "origin": { + "description": " origin of the signup, from which platform signup is originated, example f5xc, aws..etc\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Origin", + "$ref": "#/definitions/schemaSignupOrigin", + "x-displayname": "Origin", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "plan_type": { "description": " Type of the billing plan the tenant is subscribed to. Value can be one of FREE, INDIVIDUAL, TEAM, ORGANIZATION.", "title": "Plan type", @@ -3937,6 +3964,19 @@ var APISwaggerJSON string = `{ } } }, + "tenantTenantControlConfig": { + "type": "object", + "description": "x-displayName: \"TenantControlConfig\"\nConfiguration for tenant controller", + "title": "TenantControlConfig", + "properties": { + "tenant_node_percent": { + "type": "integer", + "description": "x-displayName: \"Tenant Node selection percentage\"\nConfigure part of multinode RE to process configuration for this tenant", + "title": "Tenant Node Selection percentage", + "format": "int32" + } + } + }, "tenantcrudapiErrorCode": { "type": "string", "enum": [ diff --git a/pbgo/extschema/schema/tenant/custom_api.pb.go b/pbgo/extschema/schema/tenant/custom_api.pb.go index 10532a45e..18e5af0ed 100644 --- a/pbgo/extschema/schema/tenant/custom_api.pb.go +++ b/pbgo/extschema/schema/tenant/custom_api.pb.go @@ -1860,181 +1860,183 @@ func init() { } var fileDescriptor_72ab034bcacf2b1e = []byte{ - // 2776 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x1a, 0x5d, 0x6c, 0x1c, 0x47, - 0x39, 0xeb, 0x73, 0x12, 0xfb, 0x3b, 0xdb, 0x89, 0x27, 0x4e, 0xb8, 0x5c, 0xc2, 0xc5, 0x59, 0xa8, - 0xf2, 0x7b, 0x77, 0xa9, 0x9b, 0xa4, 0x69, 0xd2, 0x36, 0x4a, 0x6c, 0xc7, 0x35, 0x4a, 0xda, 0xe8, - 0x92, 0x80, 0x14, 0x7e, 0x56, 0x73, 0xbb, 0xe3, 0xf3, 0x36, 0xbb, 0x3b, 0xdb, 0x9d, 0xb9, 0xb3, - 0x0f, 0xa8, 0xa8, 0x8a, 0x78, 0x47, 0xe2, 0x09, 0x21, 0x1e, 0x78, 0x43, 0x45, 0xf0, 0x02, 0x42, - 0x02, 0x04, 0x14, 0x09, 0xe4, 0xa2, 0x02, 0x8a, 0x8a, 0x80, 0x0a, 0x84, 0x44, 0x5c, 0x1e, 0x50, - 0x78, 0x69, 0x9f, 0x79, 0x00, 0xcd, 0xcc, 0xee, 0xde, 0x9e, 0xbd, 0xf7, 0x1b, 0x3f, 0xf1, 0xe4, - 0x9b, 0x6f, 0xbe, 0xef, 0x9b, 0xef, 0x6f, 0xbe, 0xf9, 0xbe, 0x6f, 0x0d, 0x4f, 0x35, 0x08, 0x2b, - 0xd9, 0xb4, 0xcc, 0xcc, 0x55, 0xe2, 0xe2, 0x32, 0x27, 0x1e, 0xf6, 0x78, 0xd9, 0xac, 0x33, 0x4e, - 0x5d, 0x03, 0xfb, 0x76, 0xc9, 0x0f, 0x28, 0xa7, 0x68, 0x46, 0xa1, 0x95, 0x14, 0x5a, 0x49, 0xa1, - 0xe5, 0x8f, 0xd6, 0x28, 0xad, 0x39, 0xa4, 0x8c, 0x7d, 0xbb, 0x8c, 0x3d, 0x8f, 0x72, 0xcc, 0x6d, - 0xea, 0x31, 0x45, 0x93, 0x3f, 0x9c, 0xd8, 0x5d, 0xe5, 0xdc, 0xaf, 0x52, 0xab, 0x19, 0x6e, 0x1d, - 0x0b, 0xb7, 0xe4, 0xaa, 0x5a, 0x5f, 0x29, 0x73, 0xdb, 0x25, 0x8c, 0x63, 0xd7, 0x0f, 0x11, 0x8e, - 0xb7, 0x8b, 0x65, 0x52, 0x8f, 0x63, 0x93, 0x97, 0x79, 0xd3, 0x27, 0x11, 0xfb, 0x23, 0xed, 0x28, - 0xd4, 0x4f, 0x9e, 0x3d, 0x9b, 0xaa, 0x56, 0x92, 0xfc, 0xf0, 0x16, 0x8c, 0xc4, 0xd6, 0xa9, 0xf6, - 0xad, 0x3a, 0x23, 0x41, 0xd9, 0xaf, 0x57, 0x1d, 0xdb, 0x34, 0x94, 0x61, 0x62, 0xbb, 0xe4, 0x0b, - 0x29, 0xa8, 0x49, 0x56, 0x7a, 0xfb, 0x7e, 0x83, 0x30, 0xe2, 0x35, 0xb6, 0xc8, 0x7a, 0x7e, 0x0b, - 0x8e, 0x4d, 0xd6, 0x58, 0x28, 0xb1, 0x61, 0x52, 0x6f, 0xc5, 0xae, 0xd5, 0x03, 0x69, 0xd8, 0x24, - 0x67, 0xfd, 0x25, 0x40, 0x37, 0x29, 0x7d, 0x50, 0xf7, 0xe7, 0x3d, 0xec, 0x92, 0x0a, 0x79, 0xad, - 0x4e, 0x18, 0x47, 0x33, 0xb0, 0xdb, 0x14, 0xeb, 0x9c, 0x36, 0xab, 0x9d, 0x1c, 0xaf, 0xa8, 0x05, - 0x3a, 0x0a, 0xe3, 0xe2, 0x2f, 0xf3, 0xb1, 0x49, 0x72, 0x23, 0x72, 0xa7, 0x05, 0xd0, 0xbf, 0xa9, - 0xc1, 0x81, 0x05, 0xe2, 0x10, 0x4e, 0xee, 0xca, 0x43, 0x23, 0x5e, 0x08, 0x46, 0x13, 0xac, 0xe4, - 0x6f, 0xc1, 0x9f, 0xb8, 0xd8, 0x76, 0x42, 0x2e, 0x6a, 0x81, 0x9e, 0x87, 0x3d, 0x01, 0xc1, 0x8c, - 0x7a, 0xb9, 0xcc, 0xac, 0x76, 0x72, 0x6a, 0xee, 0x93, 0xa5, 0xb4, 0x70, 0x29, 0xc9, 0x43, 0x6c, - 0xea, 0x55, 0x24, 0x6e, 0x25, 0xa4, 0x41, 0x79, 0x18, 0x5b, 0x21, 0xc4, 0xaa, 0x62, 0xf3, 0x41, - 0x6e, 0x54, 0xb2, 0x8d, 0xd7, 0x7a, 0x09, 0x0e, 0x2e, 0xd8, 0x0c, 0x57, 0x9d, 0x58, 0x36, 0xe6, - 0x53, 0x8f, 0x11, 0x74, 0x10, 0xf6, 0xbc, 0x4a, 0xab, 0x86, 0x6d, 0x45, 0x9a, 0xbe, 0x4a, 0xab, - 0xcb, 0x96, 0xbe, 0x1f, 0xa6, 0xee, 0x70, 0xcc, 0xeb, 0x2c, 0x42, 0xd4, 0x9f, 0x82, 0xe9, 0x45, - 0x66, 0x62, 0x47, 0x5a, 0x70, 0x81, 0x9a, 0x62, 0x03, 0xed, 0x87, 0x4c, 0x3d, 0x70, 0x42, 0x52, - 0xf1, 0x53, 0xff, 0xda, 0x28, 0x1c, 0x52, 0x47, 0xdc, 0x21, 0x9c, 0xdb, 0x5e, 0x2d, 0xe6, 0x10, - 0xdb, 0x61, 0x4f, 0xc2, 0x0e, 0xe7, 0x61, 0x37, 0xe3, 0x98, 0x93, 0x1c, 0x48, 0x85, 0x0b, 0xe9, - 0x0a, 0xdf, 0xb8, 0x73, 0x4b, 0x48, 0x43, 0x2a, 0x0a, 0x19, 0x1d, 0x87, 0x09, 0x93, 0xba, 0x3e, - 0xf6, 0x9a, 0x86, 0xe4, 0xb8, 0x57, 0x72, 0xcc, 0x86, 0xb0, 0x97, 0x05, 0xe3, 0x43, 0xb0, 0xc7, - 0xa2, 0x2e, 0xb6, 0xbd, 0xdc, 0x98, 0xdc, 0x0c, 0x57, 0xe8, 0x18, 0x64, 0x29, 0xf7, 0x0d, 0xe2, - 0x09, 0x5b, 0x58, 0xd2, 0xfc, 0x63, 0x15, 0xa0, 0xdc, 0x5f, 0x54, 0x10, 0x81, 0xc0, 0x18, 0x8d, - 0x11, 0x32, 0x0a, 0x81, 0x31, 0x1a, 0x21, 0xbc, 0x08, 0x02, 0xdd, 0x60, 0xd2, 0x3c, 0xd2, 0xd0, - 0x53, 0x73, 0xc7, 0xd2, 0xe5, 0x7e, 0x85, 0xfb, 0xa1, 0x15, 0xc7, 0x69, 0xf4, 0x13, 0x7d, 0x1e, - 0x0e, 0xb9, 0x78, 0xdd, 0x30, 0x03, 0x62, 0x11, 0x8f, 0xdb, 0xd8, 0x61, 0x06, 0x59, 0xf7, 0xed, - 0xa0, 0x99, 0xdb, 0x3d, 0xab, 0x9d, 0xcc, 0xce, 0x9d, 0x48, 0xe7, 0x35, 0xdf, 0xc2, 0x5f, 0x94, - 0xe8, 0x95, 0x19, 0x17, 0xaf, 0x6f, 0x83, 0xa2, 0xe7, 0xe0, 0x30, 0x36, 0xb9, 0xdd, 0x20, 0x86, - 0xef, 0x60, 0xcf, 0xe0, 0x01, 0xf6, 0x98, 0x2d, 0x7c, 0x26, 0x7c, 0x3c, 0x2e, 0x6d, 0x71, 0x48, - 0x21, 0xdc, 0x76, 0xb0, 0x77, 0x37, 0xde, 0x5e, 0xb6, 0xd0, 0x09, 0xd8, 0x47, 0x03, 0xbb, 0x66, - 0x7b, 0xd8, 0x31, 0xd4, 0xa9, 0xb9, 0x09, 0x49, 0x30, 0x15, 0x81, 0x95, 0x67, 0x85, 0xfd, 0x99, - 0x69, 0xbb, 0xb1, 0x91, 0x26, 0xa5, 0x91, 0xb2, 0x02, 0x16, 0x5a, 0x49, 0xff, 0xcf, 0x08, 0x1c, - 0xbd, 0xe7, 0x5b, 0x38, 0xba, 0x0c, 0xdb, 0xa2, 0xe1, 0xff, 0xde, 0x11, 0x9f, 0x81, 0xe9, 0x06, - 0x76, 0x6c, 0x4b, 0x5e, 0x18, 0x83, 0x04, 0x01, 0x0d, 0x58, 0x6e, 0xef, 0x6c, 0xe6, 0x64, 0x76, - 0xee, 0x74, 0x3a, 0xe7, 0x4f, 0xc7, 0xe8, 0x8b, 0x02, 0xfb, 0x86, 0x4d, 0x1c, 0xab, 0xb2, 0xbf, - 0xd1, 0x0e, 0x65, 0xdb, 0xac, 0x3f, 0xb6, 0xdd, 0xfa, 0x9f, 0x83, 0x99, 0x34, 0x66, 0xc2, 0xa6, - 0x52, 0x10, 0x63, 0x45, 0x2c, 0xc3, 0x7b, 0x0b, 0xa4, 0x85, 0xf0, 0x09, 0x98, 0x54, 0x08, 0x2e, - 0x61, 0x0c, 0xd7, 0xa2, 0x2c, 0x37, 0x21, 0x81, 0xb7, 0x14, 0x4c, 0xff, 0xb6, 0x06, 0x47, 0xd2, - 0x7d, 0xab, 0x12, 0x5e, 0x4f, 0xd7, 0x76, 0xb6, 0x7c, 0x66, 0x07, 0x2c, 0xaf, 0xdf, 0x83, 0x43, - 0xf3, 0x01, 0xc1, 0x9c, 0x2c, 0x90, 0x6a, 0xbd, 0x76, 0x8f, 0x91, 0x20, 0x92, 0xec, 0x0a, 0x8c, - 0x79, 0xcc, 0x08, 0xa8, 0x43, 0x58, 0x4e, 0x93, 0xae, 0x98, 0xdd, 0x72, 0xd4, 0xcb, 0x51, 0x3a, - 0xaf, 0x50, 0x87, 0xdc, 0x6d, 0xfa, 0xa4, 0xb2, 0xd7, 0x63, 0xe2, 0x37, 0xd3, 0xd7, 0x60, 0x3c, - 0x66, 0x88, 0x72, 0xb0, 0x37, 0xd2, 0x4f, 0x93, 0xfa, 0x45, 0x4b, 0xf4, 0x71, 0x80, 0x15, 0x3b, - 0x60, 0x5c, 0xa5, 0xa6, 0xf0, 0x95, 0x90, 0x10, 0x99, 0x98, 0x8e, 0xc0, 0xb8, 0x83, 0xa3, 0xdd, - 0x8c, 0x4a, 0xd3, 0x02, 0xf0, 0x72, 0xdb, 0xb3, 0x30, 0x9a, 0x78, 0x16, 0xf4, 0x0b, 0x90, 0x5b, - 0x22, 0xfc, 0x36, 0x66, 0x6c, 0x8d, 0x06, 0xd6, 0x6d, 0xea, 0xd8, 0x66, 0x33, 0xd2, 0xe8, 0x30, - 0x8c, 0x05, 0x04, 0x3b, 0x6e, 0x2b, 0x83, 0xef, 0x95, 0xeb, 0x65, 0x4b, 0xff, 0xe5, 0x08, 0xe4, - 0xdb, 0x89, 0x6e, 0xcb, 0xc7, 0xf7, 0x9a, 0x69, 0x12, 0xc6, 0x64, 0x86, 0xb4, 0x6b, 0x36, 0x67, - 0x92, 0x6e, 0xb2, 0x12, 0xae, 0xd0, 0xd3, 0x30, 0xe3, 0xd0, 0x35, 0x12, 0x98, 0x98, 0x11, 0xc3, - 0x5c, 0xc5, 0x01, 0x36, 0x39, 0x09, 0x98, 0xd4, 0x64, 0xb2, 0x72, 0x20, 0xde, 0x9b, 0x8f, 0xb7, - 0x04, 0x49, 0xdd, 0xf7, 0xb7, 0x93, 0x64, 0x14, 0x49, 0xbc, 0x97, 0x20, 0x29, 0x02, 0x62, 0x3e, - 0x31, 0x6d, 0xec, 0x24, 0x09, 0x46, 0x25, 0xc1, 0x74, 0xb8, 0x93, 0x40, 0x3f, 0x0e, 0x13, 0x1e, - 0xe5, 0x86, 0xa8, 0x0b, 0xa4, 0xe1, 0x76, 0xab, 0x98, 0xf7, 0x28, 0xbf, 0x17, 0x82, 0xd0, 0x69, - 0x98, 0x16, 0x28, 0x01, 0x31, 0x89, 0xc7, 0x9d, 0xa6, 0xc0, 0xb5, 0xe4, 0xcb, 0x30, 0x59, 0xd9, - 0xe7, 0x51, 0x5e, 0x09, 0xe1, 0xf7, 0x18, 0xb1, 0xd0, 0x53, 0x30, 0xe5, 0xda, 0x9e, 0xed, 0xd6, - 0x5d, 0xc3, 0x21, 0x5e, 0x8d, 0xaf, 0xca, 0x4b, 0x34, 0x59, 0x99, 0x0c, 0xa1, 0x37, 0x25, 0x50, - 0xbf, 0x0a, 0x07, 0x97, 0x08, 0xbf, 0x49, 0x6b, 0xb6, 0xb7, 0xd8, 0x20, 0x1e, 0x67, 0x89, 0xf2, - 0x40, 0x7a, 0x34, 0x34, 0x9d, 0x5a, 0x88, 0xd7, 0xd0, 0xc5, 0xeb, 0xa1, 0xa1, 0xc4, 0x4f, 0xfd, - 0x2d, 0x0d, 0x66, 0xdb, 0x39, 0x2c, 0x7b, 0x77, 0x6d, 0x97, 0xdc, 0x08, 0xda, 0x6b, 0x8d, 0x7e, - 0x98, 0xa1, 0x73, 0xf2, 0xad, 0x0c, 0x78, 0x78, 0x49, 0xf2, 0x25, 0x55, 0xfc, 0x95, 0xa2, 0xe2, - 0xaf, 0x74, 0x37, 0x2a, 0xfe, 0x2a, 0x0a, 0x11, 0x9d, 0x85, 0x0c, 0xf1, 0x2c, 0x69, 0xd5, 0xee, - 0xf8, 0x02, 0x4d, 0xff, 0xbd, 0x06, 0xd0, 0x92, 0x14, 0x95, 0x60, 0x54, 0x54, 0x93, 0x52, 0xaa, - 0xee, 0xd4, 0x12, 0x4f, 0xc4, 0x3d, 0x23, 0x8c, 0x85, 0x2f, 0x4d, 0x18, 0xf7, 0x21, 0x64, 0x59, - 0x5e, 0x0b, 0xdb, 0x37, 0xb0, 0x65, 0x05, 0x84, 0xb1, 0x30, 0xf0, 0xc7, 0x6d, 0xff, 0x9a, 0x02, - 0xc8, 0xc8, 0x17, 0x39, 0x26, 0x8e, 0x7c, 0xb1, 0x10, 0x99, 0x04, 0xd7, 0xf9, 0xaa, 0xe1, 0x12, - 0xbe, 0x4a, 0x2d, 0xe9, 0xf5, 0xf1, 0x0a, 0x08, 0xd0, 0x2d, 0x09, 0x11, 0x35, 0x4f, 0x1c, 0x13, - 0xaa, 0xae, 0x88, 0xd7, 0x7a, 0x05, 0xb2, 0x09, 0xc3, 0xa3, 0x79, 0x98, 0x70, 0xc4, 0xd2, 0x20, - 0x72, 0xdd, 0xe1, 0xfe, 0x87, 0xa9, 0xa6, 0x45, 0x58, 0xc9, 0x3a, 0x2d, 0x26, 0xfa, 0x5f, 0x35, - 0x98, 0x4a, 0x30, 0xbd, 0x85, 0x7d, 0x54, 0x85, 0xfd, 0x49, 0xbe, 0x86, 0x8b, 0xfd, 0x90, 0xf7, - 0xa5, 0x5e, 0xbc, 0x05, 0xfd, 0x96, 0xe5, 0xa2, 0xc7, 0x83, 0x66, 0x65, 0xca, 0x69, 0x03, 0xe6, - 0x2d, 0x38, 0x90, 0x82, 0x26, 0x62, 0xe4, 0x01, 0x69, 0x46, 0xe5, 0xd7, 0x03, 0xd2, 0x44, 0xcf, - 0xc2, 0xee, 0x06, 0x76, 0xea, 0x2a, 0xef, 0x64, 0xe7, 0x8e, 0xf7, 0x94, 0xa0, 0xa2, 0xf0, 0x2f, - 0x8f, 0x5c, 0xd2, 0xf4, 0xa3, 0x30, 0x2a, 0x73, 0x5b, 0x9c, 0x85, 0xb4, 0x64, 0x16, 0x7a, 0x1e, - 0xc6, 0xc4, 0xee, 0x4d, 0x9b, 0x71, 0x11, 0x8a, 0xc2, 0xcc, 0x91, 0x11, 0xf3, 0xe9, 0xc7, 0xc8, - 0xcc, 0xab, 0x10, 0xf5, 0x73, 0x90, 0xbb, 0xc6, 0x98, 0x5d, 0xf3, 0x16, 0x64, 0x1d, 0xf6, 0xca, - 0x9a, 0xd7, 0xca, 0xca, 0xe9, 0xe7, 0xcd, 0x41, 0xfe, 0x9e, 0x87, 0x07, 0xa3, 0xa9, 0x00, 0x52, - 0x0f, 0xd3, 0xb2, 0x8b, 0x6b, 0xa4, 0x95, 0x23, 0x77, 0xdb, 0x62, 0x2d, 0x71, 0x27, 0xae, 0x67, - 0xde, 0x79, 0x5d, 0xab, 0x28, 0x88, 0xaa, 0x24, 0x3d, 0x4e, 0x3c, 0x6e, 0x88, 0xa6, 0x20, 0x0c, - 0xdb, 0x6c, 0x08, 0x13, 0xf9, 0x5f, 0xdf, 0xd0, 0x60, 0xe2, 0x26, 0x66, 0xea, 0x12, 0x0b, 0x87, - 0xdf, 0x87, 0x29, 0x99, 0xc1, 0x95, 0xd7, 0x5b, 0xee, 0x3e, 0xdf, 0xc1, 0xd8, 0x09, 0xda, 0xb6, - 0x85, 0x72, 0xf5, 0x84, 0x93, 0x00, 0xe5, 0x3f, 0x0b, 0xd3, 0xdb, 0x50, 0x52, 0xdc, 0x7c, 0xae, - 0xdd, 0xcd, 0x5d, 0x53, 0x41, 0xcb, 0xbf, 0xd7, 0x20, 0x7b, 0xa7, 0xee, 0xfb, 0x34, 0xe0, 0xcb, - 0xde, 0x0a, 0x45, 0x73, 0x70, 0x90, 0xa9, 0xa5, 0x21, 0xad, 0x17, 0x5f, 0x4e, 0x75, 0xd0, 0x81, - 0x70, 0x73, 0x51, 0xec, 0x85, 0xd7, 0x74, 0xee, 0x57, 0xe7, 0x60, 0x7c, 0x5e, 0xf6, 0x6e, 0xd7, - 0x6e, 0x2f, 0xa3, 0xef, 0x8d, 0x88, 0x2b, 0x16, 0x37, 0x4f, 0xe8, 0x64, 0xa7, 0x70, 0xdb, 0xda, - 0x5f, 0xe5, 0x3b, 0x74, 0x36, 0x5b, 0x7a, 0x8e, 0x77, 0xb5, 0xcd, 0x8d, 0x5c, 0x76, 0xe5, 0xc2, - 0xba, 0x59, 0xf4, 0xa8, 0xb8, 0xf5, 0x8f, 0x37, 0x72, 0x3e, 0x88, 0x9e, 0xb4, 0x68, 0xd3, 0xa2, - 0x22, 0x2d, 0x2a, 0xd2, 0xa2, 0x23, 0x0f, 0x51, 0x7d, 0x5a, 0x09, 0x32, 0x35, 0xc2, 0xd1, 0x89, - 0xb0, 0xdb, 0x2c, 0xc7, 0x3d, 0x1a, 0x2b, 0xb3, 0x26, 0xe3, 0xc4, 0x8d, 0x1a, 0x59, 0x45, 0x84, - 0x8e, 0x2a, 0xfc, 0x83, 0x65, 0x8f, 0x1a, 0xe2, 0x98, 0xb2, 0x64, 0x13, 0xee, 0xbe, 0xf9, 0xc7, - 0x7f, 0x7e, 0x63, 0xe4, 0x7a, 0xdf, 0xcc, 0xee, 0x7f, 0xac, 0x03, 0x1f, 0xf4, 0x37, 0x0d, 0xa6, - 0x97, 0x08, 0x6f, 0xaf, 0x99, 0xd0, 0x91, 0x74, 0x4b, 0x2c, 0xba, 0x3e, 0x6f, 0xe6, 0xcf, 0xa6, - 0x6f, 0xa6, 0x97, 0xd4, 0xfa, 0x97, 0x36, 0x37, 0x72, 0x37, 0xa4, 0xb5, 0x4c, 0xea, 0x31, 0xea, - 0x90, 0x62, 0x15, 0x33, 0x52, 0x74, 0xa9, 0x67, 0x73, 0x1a, 0x9c, 0x9d, 0x95, 0x5b, 0x16, 0x59, - 0xc1, 0x75, 0x87, 0x17, 0xb1, 0xac, 0x02, 0xce, 0x46, 0xc6, 0x5c, 0x23, 0xd5, 0x10, 0x54, 0x0c, - 0x08, 0xb6, 0xa4, 0xd2, 0x67, 0xd0, 0xa9, 0x9e, 0x4a, 0xb3, 0x48, 0x8f, 0x8f, 0x34, 0x98, 0x49, - 0x2b, 0x0a, 0xd1, 0xd3, 0x1d, 0x92, 0x43, 0xe7, 0x02, 0x32, 0x3f, 0x37, 0x08, 0x49, 0xa8, 0x7c, - 0xb0, 0xb9, 0x91, 0xbb, 0xbc, 0x5d, 0x79, 0x6c, 0xb9, 0xb6, 0x17, 0xaa, 0x2e, 0x00, 0xb1, 0xc2, - 0x75, 0xec, 0xaa, 0xcd, 0xe2, 0x5a, 0x60, 0x73, 0x22, 0x15, 0x2e, 0xe5, 0xfb, 0x57, 0xf8, 0xb2, - 0x76, 0x1a, 0xfd, 0x7a, 0x04, 0x66, 0x54, 0x4d, 0xab, 0x84, 0xba, 0x49, 0x1a, 0xc4, 0x79, 0xe5, - 0xee, 0xed, 0xee, 0x4e, 0xed, 0xb6, 0xa9, 0x7f, 0x24, 0x42, 0xfe, 0x4a, 0x9a, 0x1e, 0x0d, 0xec, - 0x99, 0xc4, 0x8a, 0x14, 0x0a, 0xb5, 0x08, 0x83, 0x9f, 0x8a, 0xd4, 0xa8, 0x14, 0x79, 0xbc, 0x91, - 0xa3, 0x70, 0x32, 0xf5, 0x8a, 0x44, 0xa2, 0x17, 0x29, 0xf7, 0x8b, 0xaa, 0x5c, 0x45, 0x57, 0x20, - 0xe3, 0xd7, 0x39, 0x3a, 0xdf, 0xb7, 0xde, 0x65, 0xca, 0xfd, 0xb2, 0x22, 0xce, 0xef, 0x51, 0x28, - 0xd2, 0x76, 0xcf, 0xe5, 0x87, 0xe2, 0x21, 0xcc, 0xf8, 0x9e, 0xb6, 0x65, 0x3a, 0xb1, 0x03, 0x76, - 0xfc, 0xca, 0x13, 0x9a, 0x51, 0xea, 0x74, 0x39, 0x7f, 0x61, 0x30, 0x9d, 0x2c, 0xa5, 0x85, 0x50, - 0xea, 0x5b, 0x23, 0x30, 0x91, 0x9c, 0x06, 0xa1, 0x53, 0x5d, 0x86, 0x39, 0xed, 0x13, 0xa3, 0x3e, - 0xb3, 0xe3, 0x4f, 0x44, 0xa8, 0x1c, 0xee, 0x16, 0x08, 0x5f, 0x80, 0x23, 0xa9, 0x81, 0x60, 0xc9, - 0x33, 0xd1, 0xb3, 0x30, 0xea, 0x53, 0xc6, 0x51, 0xb9, 0xa7, 0x92, 0x81, 0x12, 0x2c, 0x24, 0x6c, - 0xf3, 0xfb, 0x79, 0x7d, 0x50, 0x72, 0x61, 0x9d, 0xb7, 0x35, 0x98, 0x58, 0x22, 0xbc, 0xd5, 0x4f, - 0x75, 0xf5, 0xf4, 0xb1, 0x4e, 0xa6, 0x0b, 0xa9, 0xe5, 0xe5, 0xbf, 0xd2, 0x2b, 0xf3, 0x75, 0xb8, - 0xfe, 0x71, 0xba, 0x2b, 0xa2, 0x33, 0x3d, 0x35, 0xb1, 0xc4, 0x91, 0x72, 0x3c, 0x89, 0x7e, 0xa1, - 0xc1, 0x3e, 0xe5, 0xbc, 0x3e, 0xb5, 0xe8, 0x1a, 0xaf, 0xaf, 0xed, 0x40, 0xfa, 0x2a, 0x9e, 0x1e, - 0x48, 0x81, 0xf7, 0x34, 0xd8, 0xb7, 0xa5, 0x4f, 0x46, 0x67, 0x3b, 0x76, 0xde, 0x29, 0xed, 0x74, - 0x77, 0x8d, 0xf8, 0x0e, 0x68, 0x74, 0x4e, 0x1f, 0x44, 0x23, 0x11, 0x58, 0x7f, 0xd7, 0x60, 0x6a, - 0x89, 0xf0, 0xe5, 0x85, 0x5b, 0xfd, 0xbd, 0xb0, 0x5b, 0x6b, 0x74, 0x39, 0x35, 0x2e, 0xa5, 0x4d, - 0x8d, 0x4b, 0x4b, 0x0e, 0xad, 0x62, 0xe7, 0x8e, 0x4f, 0x4c, 0x59, 0x17, 0xf2, 0x9d, 0x88, 0xb9, - 0x32, 0x2a, 0xf6, 0x54, 0xd0, 0xb6, 0xdc, 0xd6, 0x33, 0xbb, 0xa9, 0xc1, 0x74, 0x58, 0xe2, 0x26, - 0x54, 0x1c, 0x5a, 0x8b, 0xee, 0x2e, 0x6c, 0xec, 0x80, 0x0b, 0xe7, 0xf2, 0x83, 0x69, 0x28, 0x9c, - 0xf8, 0x53, 0x55, 0x29, 0xb5, 0x0f, 0x2f, 0x50, 0x29, 0x5d, 0xd4, 0x4e, 0xa3, 0x91, 0xfc, 0xb9, - 0x74, 0xfc, 0xce, 0x23, 0x11, 0x7d, 0x7e, 0x4b, 0xb9, 0xa9, 0x8a, 0x02, 0x74, 0x36, 0xae, 0xe7, - 0x52, 0xe4, 0x2d, 0xfb, 0x21, 0x3f, 0xc3, 0x57, 0x62, 0xfe, 0x45, 0x45, 0x60, 0xb2, 0xf5, 0x3c, - 0xd3, 0x51, 0xf2, 0xed, 0xb3, 0x85, 0x4e, 0xc9, 0xbf, 0xbd, 0xff, 0x93, 0x19, 0xef, 0xc2, 0xc0, - 0xd1, 0x17, 0xc7, 0xdd, 0x33, 0xe8, 0xe9, 0xbe, 0xbc, 0xa2, 0x7a, 0xda, 0xb2, 0x6c, 0x75, 0xd0, - 0xbb, 0x1a, 0xec, 0x13, 0x32, 0x27, 0x9b, 0xa1, 0xae, 0x97, 0x4b, 0xef, 0xdd, 0x11, 0xe9, 0x6b, - 0x4f, 0xa6, 0xc8, 0x25, 0x74, 0x71, 0x20, 0x45, 0xe2, 0xc6, 0x0d, 0xfd, 0x57, 0x83, 0xc3, 0x1d, - 0x67, 0x33, 0xe8, 0x62, 0x3f, 0x2e, 0xdb, 0x3e, 0xcc, 0xe9, 0xd3, 0x7b, 0x5f, 0xd5, 0x76, 0x22, - 0x79, 0xbc, 0xa8, 0x3f, 0x37, 0xb0, 0x13, 0x0d, 0xdb, 0x33, 0xb8, 0xed, 0xca, 0x47, 0xf8, 0x77, - 0x1a, 0x4c, 0x8b, 0x76, 0x7e, 0xd9, 0x53, 0x1f, 0x04, 0x44, 0x6a, 0xef, 0x91, 0x2e, 0x0b, 0x9d, - 0x3b, 0x7d, 0xc1, 0x49, 0xff, 0xe2, 0x4e, 0xe8, 0x75, 0x01, 0x3d, 0xd3, 0x97, 0x5e, 0x72, 0xb2, - 0x50, 0xb6, 0x43, 0xe9, 0xd1, 0x6f, 0x35, 0x38, 0x14, 0xf7, 0x57, 0x6d, 0xdf, 0xaa, 0xba, 0xeb, - 0x34, 0x13, 0x75, 0xcf, 0xd8, 0xb7, 0x4b, 0x2f, 0x71, 0xee, 0x5f, 0xa7, 0x56, 0x53, 0xff, 0xf2, - 0x0e, 0xe4, 0xbe, 0x7e, 0x82, 0x33, 0x2c, 0xc9, 0x48, 0x2c, 0x6f, 0xd1, 0xa2, 0x26, 0xfa, 0xe1, - 0x08, 0x4c, 0x6f, 0x9b, 0x97, 0x74, 0xca, 0x80, 0x9d, 0x06, 0x2b, 0xdd, 0x93, 0xfb, 0xc3, 0x9e, - 0xe5, 0xa3, 0xdf, 0xa1, 0x8f, 0x50, 0x43, 0x99, 0xa2, 0xfa, 0xa2, 0xa6, 0x68, 0xd0, 0xf3, 0x61, - 0x2d, 0xd9, 0xbb, 0x09, 0x50, 0x64, 0x86, 0x24, 0x2b, 0x2b, 0x56, 0xed, 0x8d, 0x84, 0x3e, 0x14, - 0x0f, 0x11, 0xd0, 0x3f, 0x1f, 0x81, 0x03, 0x29, 0x33, 0x23, 0xd4, 0xe1, 0x25, 0xe8, 0x3c, 0x5e, - 0xea, 0x6e, 0xb9, 0x3f, 0xf7, 0xb4, 0x1c, 0x87, 0xd3, 0xa9, 0x96, 0xab, 0x7b, 0x69, 0xb6, 0x7b, - 0x31, 0xb4, 0xdd, 0xc5, 0xc1, 0xf4, 0x8e, 0x98, 0xb5, 0x59, 0xef, 0x8a, 0x3e, 0x24, 0x17, 0x61, - 0xbf, 0xef, 0x64, 0x60, 0x4c, 0x14, 0x4f, 0x72, 0x34, 0x36, 0xc4, 0x9d, 0x79, 0x34, 0xb2, 0xb9, - 0x91, 0x3b, 0x33, 0xc0, 0x98, 0xe1, 0xf1, 0x46, 0xee, 0x07, 0x1a, 0x9c, 0x48, 0xb5, 0x55, 0xfc, - 0x2f, 0x02, 0xc5, 0x1a, 0xe1, 0x6a, 0x5a, 0xf7, 0x82, 0x9a, 0xd3, 0x5c, 0xec, 0xbf, 0x29, 0x8b, - 0xb2, 0x85, 0x24, 0x5f, 0x50, 0xe4, 0x2f, 0x44, 0xe4, 0x8c, 0x63, 0x3e, 0x30, 0x17, 0x69, 0xe5, - 0xe6, 0xb0, 0x32, 0xdc, 0xbf, 0xfa, 0x84, 0xc7, 0xa3, 0xb7, 0x34, 0xd8, 0xab, 0x5e, 0x21, 0x3a, - 0x8c, 0x8b, 0x9c, 0x01, 0x3d, 0x24, 0xd5, 0x7d, 0x16, 0x5d, 0x18, 0x58, 0x5d, 0x47, 0x08, 0xf8, - 0xfd, 0x0c, 0xc0, 0x12, 0xe1, 0x37, 0x70, 0x63, 0xd9, 0xa4, 0xde, 0x30, 0xf2, 0xfe, 0x7b, 0x88, - 0x90, 0xfa, 0x91, 0x06, 0xa7, 0x7a, 0x87, 0xd4, 0x0a, 0x6e, 0xd8, 0x42, 0xa8, 0xab, 0x2a, 0x2a, - 0x2e, 0x0d, 0xac, 0x61, 0xc4, 0xe0, 0x86, 0x62, 0x70, 0x75, 0x58, 0xbf, 0x86, 0x7c, 0xa4, 0xa5, - 0x5f, 0x1f, 0x5e, 0x8e, 0xfb, 0xd7, 0x9e, 0x58, 0x04, 0xf4, 0x27, 0x0d, 0xb2, 0x89, 0x01, 0x7a, - 0xa7, 0x81, 0xee, 0xf6, 0x19, 0x7b, 0xef, 0x61, 0xcc, 0x93, 0xbe, 0xa5, 0x57, 0xf2, 0x43, 0x5e, - 0x39, 0x91, 0xd8, 0x7e, 0xa3, 0x41, 0x56, 0xf5, 0xea, 0x7d, 0xe4, 0xb6, 0xae, 0xaa, 0xec, 0x48, - 0x59, 0x70, 0x7a, 0xd8, 0x0c, 0xf6, 0x63, 0xd5, 0x5b, 0x24, 0xa7, 0xf8, 0x5d, 0x55, 0xe9, 0xf0, - 0xfd, 0x27, 0x41, 0xaf, 0x5b, 0xc3, 0x24, 0x84, 0x7e, 0xda, 0xd6, 0xf0, 0xf3, 0x41, 0xd1, 0xf6, - 0x56, 0x68, 0x1e, 0xde, 0xfe, 0x99, 0x96, 0x79, 0xf3, 0x0f, 0xb9, 0x91, 0x55, 0xed, 0xfa, 0x1b, - 0xda, 0xc3, 0x47, 0x85, 0x5d, 0xef, 0x3f, 0x2a, 0xec, 0xfa, 0xf0, 0x51, 0x41, 0x7b, 0x63, 0xb3, - 0xa0, 0x7d, 0x77, 0xb3, 0xa0, 0xbd, 0xb3, 0x59, 0xd0, 0x1e, 0x6e, 0x16, 0xb4, 0x7f, 0x6c, 0x16, - 0xb4, 0x7f, 0x6d, 0x16, 0x76, 0x7d, 0xb8, 0x59, 0xd0, 0xbe, 0xfe, 0x41, 0x61, 0xd7, 0xc3, 0x0f, - 0x0a, 0xbb, 0xde, 0xff, 0xa0, 0xb0, 0xeb, 0xfe, 0xa7, 0x6a, 0xd4, 0x7f, 0x50, 0x2b, 0x35, 0xa8, - 0xc3, 0x49, 0x10, 0xe0, 0x52, 0x5d, 0xd8, 0x26, 0x08, 0xf0, 0x0a, 0x0d, 0xdc, 0xa2, 0x1f, 0xd0, - 0x86, 0x6d, 0x91, 0xa0, 0x18, 0x6d, 0x97, 0xfd, 0x6a, 0x8d, 0x96, 0xc9, 0x3a, 0x0f, 0xff, 0x1b, - 0xac, 0xed, 0x1f, 0xd8, 0xaa, 0x7b, 0xe4, 0x87, 0x92, 0x67, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, - 0xb0, 0xdc, 0x4c, 0xb2, 0xb6, 0x27, 0x00, 0x00, + // 2803 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x5a, 0x6f, 0x6c, 0x1c, 0x47, + 0x15, 0xcf, 0xde, 0x39, 0x89, 0x3d, 0xfe, 0x93, 0x78, 0xe2, 0x84, 0xcb, 0x25, 0x5c, 0x9c, 0x85, + 0x2a, 0x7f, 0xef, 0x2e, 0x75, 0xfe, 0x34, 0x6d, 0xda, 0x46, 0x89, 0xed, 0xb8, 0x46, 0x4e, 0x1b, + 0x2e, 0x0e, 0xa0, 0xf0, 0x67, 0x35, 0xb7, 0x3b, 0x3e, 0x4f, 0xb3, 0x3b, 0xb3, 0xec, 0xcc, 0x9d, + 0x73, 0x1f, 0x2a, 0x55, 0x95, 0xf8, 0x02, 0x15, 0xaa, 0xa8, 0x44, 0x55, 0x15, 0x3e, 0xf0, 0x0d, + 0x15, 0xc1, 0x17, 0x10, 0x12, 0x20, 0x04, 0xdf, 0x5c, 0x09, 0x81, 0x22, 0x21, 0xa1, 0xc2, 0xa7, + 0xc6, 0x2d, 0x52, 0x55, 0x84, 0x14, 0x09, 0x84, 0x90, 0x10, 0x12, 0x9a, 0x99, 0xdd, 0xf5, 0x9e, + 0xbd, 0xf7, 0xb7, 0xf5, 0x17, 0x3e, 0xf9, 0x66, 0xe6, 0xbd, 0x37, 0xf3, 0x7e, 0xef, 0xcd, 0x9b, + 0xf7, 0xde, 0x1a, 0x3c, 0xd6, 0xc0, 0xbc, 0x44, 0x58, 0x99, 0xdb, 0xab, 0xd8, 0x43, 0x65, 0x81, + 0x29, 0xa2, 0xa2, 0x6c, 0xd7, 0xb9, 0x60, 0x9e, 0x85, 0x7c, 0x52, 0xf2, 0x03, 0x26, 0x18, 0x9c, + 0xd2, 0x64, 0x25, 0x4d, 0x56, 0xd2, 0x64, 0xf9, 0xa3, 0x35, 0xc6, 0x6a, 0x2e, 0x2e, 0x23, 0x9f, + 0x94, 0x11, 0xa5, 0x4c, 0x20, 0x41, 0x18, 0xe5, 0x9a, 0x27, 0x7f, 0x38, 0xb1, 0xba, 0x2a, 0x84, + 0x5f, 0x65, 0x4e, 0x33, 0x5c, 0x3a, 0x16, 0x2e, 0xa9, 0x51, 0xb5, 0xbe, 0x52, 0x16, 0xc4, 0xc3, + 0x5c, 0x20, 0xcf, 0x0f, 0x09, 0x8e, 0xb7, 0x1e, 0xcb, 0x66, 0x54, 0x20, 0x5b, 0x94, 0x45, 0xd3, + 0xc7, 0x91, 0xf8, 0x23, 0xad, 0x24, 0xcc, 0x4f, 0xee, 0x3d, 0x9d, 0xaa, 0x56, 0x92, 0xfd, 0xf0, + 0x16, 0x8a, 0xc4, 0xd2, 0xa9, 0xd6, 0xa5, 0x3a, 0xc7, 0x41, 0xd9, 0xaf, 0x57, 0x5d, 0x62, 0x5b, + 0x1a, 0x98, 0x18, 0x97, 0x7c, 0x21, 0x85, 0x34, 0x29, 0xca, 0x6c, 0x5d, 0x6f, 0x60, 0x8e, 0x69, + 0x63, 0xcb, 0x59, 0x2f, 0x6c, 0xa1, 0x21, 0x78, 0x8d, 0x87, 0x27, 0xb6, 0x6c, 0x46, 0x57, 0x48, + 0xad, 0x1e, 0x28, 0x60, 0x93, 0x92, 0xcd, 0xe7, 0x00, 0x5c, 0x62, 0xec, 0x5e, 0xdd, 0x9f, 0xa5, + 0xc8, 0xc3, 0x15, 0xfc, 0xf5, 0x3a, 0xe6, 0x02, 0x4e, 0x81, 0xdd, 0xb6, 0x1c, 0xe7, 0x8c, 0x69, + 0xe3, 0xe4, 0x48, 0x45, 0x0f, 0xe0, 0x51, 0x30, 0x22, 0xff, 0x72, 0x1f, 0xd9, 0x38, 0x97, 0x51, + 0x2b, 0x9b, 0x13, 0xe6, 0x9b, 0x06, 0x38, 0x30, 0x87, 0x5d, 0x2c, 0xf0, 0xb2, 0xda, 0x34, 0x92, + 0x05, 0xc1, 0x50, 0x42, 0x94, 0xfa, 0x2d, 0xe5, 0x63, 0x0f, 0x11, 0x37, 0x94, 0xa2, 0x07, 0xf0, + 0x69, 0xb0, 0x27, 0xc0, 0x88, 0x33, 0x9a, 0xcb, 0x4e, 0x1b, 0x27, 0x27, 0x66, 0x3e, 0x5b, 0x4a, + 0x73, 0x97, 0x92, 0xda, 0x84, 0x30, 0x5a, 0x51, 0xb4, 0x95, 0x90, 0x07, 0xe6, 0xc1, 0xf0, 0x0a, + 0xc6, 0x4e, 0x15, 0xd9, 0xf7, 0x72, 0x43, 0x4a, 0x6c, 0x3c, 0x36, 0x4b, 0xe0, 0xe0, 0x1c, 0xe1, + 0xa8, 0xea, 0xc6, 0x67, 0xe3, 0x3e, 0xa3, 0x1c, 0xc3, 0x83, 0x60, 0xcf, 0x8b, 0xac, 0x6a, 0x11, + 0x27, 0xd2, 0xf4, 0x45, 0x56, 0x5d, 0x74, 0xcc, 0xfd, 0x60, 0xe2, 0xb6, 0x40, 0xa2, 0xce, 0x23, + 0x42, 0xf3, 0x31, 0x30, 0x39, 0xcf, 0x6d, 0xe4, 0x2a, 0x04, 0xe7, 0x98, 0x2d, 0x17, 0xe0, 0x7e, + 0x90, 0xad, 0x07, 0x6e, 0xc8, 0x2a, 0x7f, 0x9a, 0xdf, 0x18, 0x02, 0x87, 0xf4, 0x16, 0xb7, 0xb1, + 0x10, 0x84, 0xd6, 0x62, 0x09, 0x31, 0x0e, 0x7b, 0x12, 0x38, 0x5c, 0x00, 0xbb, 0xb9, 0x40, 0x02, + 0xe7, 0x80, 0x52, 0xb8, 0x90, 0xae, 0xf0, 0x8d, 0xdb, 0x37, 0xe5, 0x69, 0x70, 0x45, 0x13, 0xc3, + 0xe3, 0x60, 0xcc, 0x66, 0x9e, 0x8f, 0x68, 0xd3, 0x52, 0x12, 0xf7, 0x2a, 0x89, 0xa3, 0xe1, 0xdc, + 0xf3, 0x52, 0xf0, 0x21, 0xb0, 0xc7, 0x61, 0x1e, 0x22, 0x34, 0x37, 0xac, 0x16, 0xc3, 0x11, 0x3c, + 0x06, 0x46, 0x99, 0xf0, 0x2d, 0x4c, 0x25, 0x16, 0x8e, 0x82, 0x7f, 0xb8, 0x02, 0x98, 0xf0, 0xe7, + 0xf5, 0x8c, 0x24, 0xe0, 0x9c, 0xc5, 0x04, 0x59, 0x4d, 0xc0, 0x39, 0x8b, 0x08, 0x9e, 0x05, 0x92, + 0xdc, 0xe2, 0x0a, 0x1e, 0x05, 0xf4, 0xc4, 0xcc, 0xb1, 0xf4, 0x73, 0xbf, 0x20, 0xfc, 0x10, 0xc5, + 0x11, 0x16, 0xfd, 0x84, 0x5f, 0x05, 0x87, 0x3c, 0x74, 0xdf, 0xb2, 0x03, 0xec, 0x60, 0x2a, 0x08, + 0x72, 0xb9, 0x85, 0xef, 0xfb, 0x24, 0x68, 0xe6, 0x76, 0x4f, 0x1b, 0x27, 0x47, 0x67, 0x4e, 0xa4, + 0xcb, 0x9a, 0xdd, 0xa4, 0x9f, 0x57, 0xe4, 0x95, 0x29, 0x0f, 0xdd, 0xdf, 0x36, 0x0b, 0x9f, 0x04, + 0x87, 0x91, 0x2d, 0x48, 0x03, 0x5b, 0xbe, 0x8b, 0xa8, 0x25, 0x02, 0x44, 0x39, 0x91, 0x36, 0x93, + 0x36, 0x1e, 0x51, 0x58, 0x1c, 0xd2, 0x04, 0xb7, 0x5c, 0x44, 0x97, 0xe3, 0xe5, 0x45, 0x07, 0x9e, + 0x00, 0xfb, 0x58, 0x40, 0x6a, 0x84, 0x22, 0xd7, 0xd2, 0xbb, 0xe6, 0xc6, 0x14, 0xc3, 0x44, 0x34, + 0xad, 0x2d, 0x2b, 0xf1, 0xe7, 0x36, 0xf1, 0x62, 0x90, 0xc6, 0x15, 0x48, 0xa3, 0x72, 0x2e, 0x44, + 0xc9, 0xfc, 0x4f, 0x06, 0x1c, 0xbd, 0xe3, 0x3b, 0x28, 0xba, 0x0c, 0xdb, 0xbc, 0xe1, 0xff, 0xde, + 0x10, 0x5f, 0x04, 0x93, 0x0d, 0xe4, 0x12, 0x47, 0x5d, 0x18, 0x0b, 0x07, 0x01, 0x0b, 0x78, 0x6e, + 0xef, 0x74, 0xf6, 0xe4, 0xe8, 0xcc, 0xe9, 0x74, 0xc9, 0x5f, 0x88, 0xc9, 0xe7, 0x25, 0xf5, 0x0d, + 0x82, 0x5d, 0xa7, 0xb2, 0xbf, 0xd1, 0x3a, 0xcb, 0xb7, 0xa1, 0x3f, 0xbc, 0x1d, 0xfd, 0xaf, 0x80, + 0xa9, 0x34, 0x61, 0x12, 0x53, 0x75, 0x10, 0x6b, 0x45, 0x0e, 0xc3, 0x7b, 0x0b, 0xf0, 0x26, 0xc1, + 0x67, 0xc0, 0xb8, 0x26, 0xf0, 0x30, 0xe7, 0xa8, 0x16, 0x45, 0xb9, 0x31, 0x35, 0x79, 0x53, 0xcf, + 0x99, 0xdf, 0x37, 0xc0, 0x91, 0x74, 0xdb, 0xea, 0x80, 0xd7, 0xd5, 0xb4, 0xed, 0x91, 0xcf, 0x7e, + 0x02, 0xc8, 0x9b, 0x77, 0xc0, 0xa1, 0xd9, 0x00, 0x23, 0x81, 0xe7, 0x70, 0xb5, 0x5e, 0xbb, 0xc3, + 0x71, 0x10, 0x9d, 0xec, 0x0a, 0x18, 0xa6, 0xdc, 0x0a, 0x98, 0x8b, 0x79, 0xce, 0x50, 0xa6, 0x98, + 0xde, 0xb2, 0xd5, 0xf3, 0x51, 0x38, 0xaf, 0x30, 0x17, 0x2f, 0x37, 0x7d, 0x5c, 0xd9, 0x4b, 0xb9, + 0xfc, 0xcd, 0xcd, 0x35, 0x30, 0x12, 0x0b, 0x84, 0x39, 0xb0, 0x37, 0xd2, 0xcf, 0x50, 0xfa, 0x45, + 0x43, 0xf8, 0x69, 0x00, 0x56, 0x48, 0xc0, 0x85, 0x0e, 0x4d, 0xe1, 0x2b, 0xa1, 0x66, 0x54, 0x60, + 0x3a, 0x02, 0x46, 0x5c, 0x14, 0xad, 0x66, 0x75, 0x98, 0x96, 0x13, 0xcf, 0xb7, 0x3c, 0x0b, 0x43, + 0x89, 0x67, 0xc1, 0xbc, 0x08, 0x72, 0x0b, 0x58, 0xdc, 0x42, 0x9c, 0xaf, 0xb1, 0xc0, 0xb9, 0xc5, + 0x5c, 0x62, 0x37, 0x23, 0x8d, 0x0e, 0x83, 0xe1, 0x00, 0x23, 0xd7, 0xdb, 0x8c, 0xe0, 0x7b, 0xd5, + 0x78, 0xd1, 0x31, 0x7f, 0x93, 0x01, 0xf9, 0x56, 0xa6, 0x5b, 0xea, 0xf1, 0xbd, 0x66, 0xdb, 0x98, + 0x73, 0x15, 0x21, 0x49, 0x8d, 0x08, 0xae, 0xf8, 0xc6, 0x2b, 0xe1, 0x08, 0x3e, 0x0e, 0xa6, 0x5c, + 0xb6, 0x86, 0x03, 0x1b, 0x71, 0x6c, 0xd9, 0xab, 0x28, 0x40, 0xb6, 0xc0, 0x01, 0x57, 0x9a, 0x8c, + 0x57, 0x0e, 0xc4, 0x6b, 0xb3, 0xf1, 0x92, 0x64, 0xa9, 0xfb, 0xfe, 0x76, 0x96, 0xac, 0x66, 0x89, + 0xd7, 0x12, 0x2c, 0x45, 0x00, 0xb9, 0x8f, 0x6d, 0x82, 0xdc, 0x24, 0xc3, 0x90, 0x62, 0x98, 0x0c, + 0x57, 0x12, 0xe4, 0xc7, 0xc1, 0x18, 0x65, 0xc2, 0x92, 0x79, 0x81, 0x02, 0x6e, 0xb7, 0xf6, 0x79, + 0xca, 0xc4, 0x9d, 0x70, 0x0a, 0x9e, 0x06, 0x93, 0x92, 0x24, 0xc0, 0x36, 0xa6, 0xc2, 0x6d, 0x4a, + 0x5a, 0x47, 0xbd, 0x0c, 0xe3, 0x95, 0x7d, 0x94, 0x89, 0x4a, 0x38, 0x7f, 0x87, 0x63, 0x07, 0x3e, + 0x06, 0x26, 0x3c, 0x42, 0x89, 0x57, 0xf7, 0x2c, 0x17, 0xd3, 0x9a, 0x58, 0x55, 0x97, 0x68, 0xbc, + 0x32, 0x1e, 0xce, 0x2e, 0xa9, 0x49, 0xf3, 0x2a, 0x38, 0xb8, 0x80, 0xc5, 0x12, 0xab, 0x11, 0x3a, + 0xdf, 0xc0, 0x54, 0xf0, 0x44, 0x7a, 0xa0, 0x2c, 0x1a, 0x42, 0xa7, 0x07, 0xf2, 0x35, 0xf4, 0xd0, + 0xfd, 0x10, 0x28, 0xf9, 0xd3, 0x7c, 0xdb, 0x00, 0xd3, 0xad, 0x12, 0x16, 0xe9, 0x32, 0xf1, 0xf0, + 0x8d, 0xa0, 0x35, 0xd7, 0xe8, 0x45, 0x18, 0x3c, 0xa7, 0xde, 0xca, 0x40, 0x84, 0x97, 0x24, 0x5f, + 0xd2, 0xc9, 0x5f, 0x29, 0x4a, 0xfe, 0x4a, 0xcb, 0x51, 0xf2, 0x57, 0xd1, 0x84, 0xf0, 0x2c, 0xc8, + 0x62, 0xea, 0x28, 0x54, 0x3b, 0xd3, 0x4b, 0x32, 0xf3, 0xf7, 0x06, 0x00, 0x9b, 0x27, 0x85, 0x25, + 0x30, 0x24, 0xb3, 0x49, 0x75, 0xaa, 0xce, 0xdc, 0x8a, 0x4e, 0xfa, 0x3d, 0xc7, 0x9c, 0x87, 0x2f, + 0x4d, 0xe8, 0xf7, 0xe1, 0xcc, 0xa2, 0xba, 0x16, 0xc4, 0xb7, 0x90, 0xe3, 0x04, 0x98, 0xf3, 0xd0, + 0xf1, 0x47, 0x88, 0x7f, 0x4d, 0x4f, 0x28, 0xcf, 0x97, 0x31, 0x26, 0xf6, 0x7c, 0x39, 0x90, 0x91, + 0x04, 0xd5, 0xc5, 0xaa, 0xe5, 0x61, 0xb1, 0xca, 0x1c, 0x65, 0xf5, 0x91, 0x0a, 0x90, 0x53, 0x37, + 0xd5, 0x8c, 0xcc, 0x79, 0x62, 0x9f, 0xd0, 0x79, 0x45, 0x3c, 0x36, 0x2b, 0x60, 0x34, 0x01, 0x3c, + 0x9c, 0x05, 0x63, 0xae, 0x1c, 0x5a, 0x58, 0x8d, 0xdb, 0xdc, 0xff, 0x30, 0xd4, 0x6c, 0x32, 0x56, + 0x46, 0xdd, 0x4d, 0x21, 0xe6, 0x5f, 0x0c, 0x30, 0x91, 0x10, 0x7a, 0x13, 0xf9, 0xb0, 0x0a, 0xf6, + 0x27, 0xe5, 0x5a, 0x1e, 0xf2, 0x43, 0xd9, 0x97, 0xbb, 0xc9, 0x96, 0xfc, 0x5b, 0x86, 0xf3, 0x54, + 0x04, 0xcd, 0xca, 0x84, 0xdb, 0x32, 0x99, 0x77, 0xc0, 0x81, 0x14, 0x32, 0xe9, 0x23, 0xf7, 0x70, + 0x33, 0x4a, 0xbf, 0xee, 0xe1, 0x26, 0x7c, 0x02, 0xec, 0x6e, 0x20, 0xb7, 0xae, 0xe3, 0xce, 0xe8, + 0xcc, 0xf1, 0xae, 0x27, 0xa8, 0x68, 0xfa, 0xa7, 0x32, 0x97, 0x0d, 0xf3, 0x28, 0x18, 0x52, 0xb1, + 0x2d, 0x8e, 0x42, 0x46, 0x32, 0x0a, 0x3d, 0x0d, 0x86, 0xe5, 0xea, 0x12, 0xe1, 0x42, 0xba, 0xa2, + 0x84, 0x39, 0x02, 0x31, 0x9f, 0xbe, 0x8d, 0x8a, 0xbc, 0x9a, 0xd0, 0x3c, 0x07, 0x72, 0xd7, 0x38, + 0x27, 0x35, 0x3a, 0xa7, 0xf2, 0xb0, 0x17, 0xd6, 0xe8, 0x66, 0x54, 0x4e, 0xdf, 0x6f, 0x06, 0xe4, + 0xef, 0x50, 0xd4, 0x1f, 0x4f, 0x05, 0x40, 0xfd, 0x30, 0x2d, 0x7a, 0xa8, 0x86, 0x37, 0x63, 0xe4, + 0x6e, 0x22, 0xc7, 0x8a, 0x76, 0xec, 0x7a, 0xf6, 0x9d, 0x97, 0x8c, 0x8a, 0x9e, 0xd1, 0x99, 0x24, + 0x15, 0x98, 0x0a, 0x4b, 0x16, 0x05, 0xa1, 0xdb, 0x8e, 0x86, 0x73, 0x32, 0xfe, 0x9b, 0xeb, 0x06, + 0x18, 0x5b, 0x42, 0x5c, 0x5f, 0x62, 0x69, 0xf0, 0xbb, 0x60, 0x42, 0x45, 0x70, 0x6d, 0xf5, 0x4d, + 0x73, 0x5f, 0x68, 0x03, 0x76, 0x82, 0xb7, 0x65, 0xa0, 0x4d, 0x3d, 0xe6, 0x26, 0xa6, 0xf2, 0x5f, + 0x06, 0x93, 0xdb, 0x48, 0x52, 0xcc, 0x7c, 0xae, 0xd5, 0xcc, 0x1d, 0x43, 0xc1, 0xa6, 0x7d, 0xaf, + 0x81, 0xd1, 0xdb, 0x75, 0xdf, 0x67, 0x81, 0x58, 0xa4, 0x2b, 0x0c, 0xce, 0x80, 0x83, 0x5c, 0x0f, + 0x2d, 0x85, 0x5e, 0x7c, 0x39, 0xf5, 0x46, 0x07, 0xc2, 0xc5, 0x79, 0xb9, 0x16, 0x5e, 0xd3, 0x99, + 0x7f, 0x9c, 0x07, 0x23, 0xb3, 0xaa, 0x76, 0xbb, 0x76, 0x6b, 0x11, 0xfe, 0x28, 0x23, 0xaf, 0x58, + 0x5c, 0x3c, 0xc1, 0x93, 0xed, 0xdc, 0x6d, 0x6b, 0x7d, 0x95, 0x6f, 0x53, 0xd9, 0x6c, 0xa9, 0x39, + 0x7e, 0x67, 0x6c, 0xac, 0xe7, 0x46, 0x57, 0x2e, 0xde, 0xb7, 0x8b, 0x94, 0xc9, 0x5b, 0xff, 0xd1, + 0x7a, 0xce, 0x07, 0xb2, 0x26, 0x2d, 0x12, 0x56, 0xd4, 0xac, 0x45, 0xcd, 0x5a, 0x74, 0xd5, 0x26, + 0xba, 0x4e, 0x2b, 0x81, 0x6c, 0x0d, 0x0b, 0x78, 0x22, 0xac, 0x36, 0xcb, 0x71, 0x8d, 0xc6, 0xcb, + 0xbc, 0xc9, 0x05, 0xf6, 0xa2, 0x42, 0x56, 0x33, 0xc1, 0xa3, 0x9a, 0xfe, 0x60, 0x99, 0x32, 0x4b, + 0x6e, 0x53, 0x56, 0x62, 0xc2, 0xd5, 0x57, 0xfe, 0xf8, 0xc1, 0xeb, 0x99, 0xeb, 0x3d, 0x0b, 0xbb, + 0xfb, 0xa9, 0x36, 0x72, 0xe0, 0xbf, 0x0d, 0x30, 0xb9, 0x80, 0x45, 0x6b, 0xce, 0x04, 0x8f, 0xa4, + 0x23, 0x31, 0xef, 0xf9, 0xa2, 0x99, 0x3f, 0x9b, 0xbe, 0x98, 0x9e, 0x52, 0x9b, 0x6f, 0x48, 0xb8, + 0xaa, 0x0a, 0x2e, 0x9b, 0x51, 0xce, 0x5c, 0x5c, 0xac, 0x22, 0x8e, 0x8b, 0x1e, 0xa3, 0x44, 0xb0, + 0xe0, 0xec, 0xf4, 0xd6, 0x25, 0x62, 0x6f, 0x59, 0x73, 0xf0, 0x0a, 0xaa, 0xbb, 0xa2, 0x88, 0x54, + 0x8a, 0x70, 0x36, 0x42, 0x7a, 0x0d, 0x57, 0xc3, 0xa9, 0x62, 0x80, 0x91, 0xa3, 0x10, 0x39, 0x03, + 0x4f, 0x75, 0x45, 0x84, 0x47, 0x4a, 0xbe, 0x9a, 0x01, 0x53, 0x69, 0x19, 0x23, 0x7c, 0xbc, 0x4d, + 0xe4, 0x68, 0x9f, 0x5d, 0xe6, 0x67, 0xfa, 0x61, 0x09, 0x91, 0x79, 0x55, 0x22, 0xb3, 0xbc, 0x1d, + 0x19, 0xe4, 0x78, 0x84, 0xa6, 0xe2, 0x92, 0x5c, 0x91, 0xa4, 0x31, 0x16, 0x75, 0xe4, 0xe9, 0xc5, + 0xe2, 0x5a, 0x40, 0x04, 0x56, 0x58, 0x94, 0xf2, 0xbd, 0x63, 0xf1, 0x94, 0x71, 0x1a, 0x3e, 0xcc, + 0x80, 0x29, 0x9d, 0x0b, 0xeb, 0xf3, 0x2e, 0xe1, 0x06, 0x76, 0x5f, 0x58, 0xbe, 0xd5, 0xd9, 0x19, + 0x3a, 0x2d, 0x9a, 0xdf, 0xce, 0x6c, 0xac, 0xe7, 0xbe, 0x94, 0xa6, 0x61, 0x03, 0x51, 0x1b, 0x3b, + 0xa9, 0xaa, 0x72, 0x81, 0xa8, 0x83, 0x82, 0x78, 0x31, 0x54, 0x31, 0xbc, 0x51, 0x4c, 0xc6, 0x5b, + 0xad, 0xe5, 0x47, 0xeb, 0x39, 0x06, 0x4e, 0xa6, 0xde, 0xbb, 0x48, 0xaf, 0x22, 0x13, 0x7e, 0x51, + 0xe7, 0xc0, 0xf0, 0x0a, 0xc8, 0xfa, 0x75, 0x01, 0x2f, 0xf4, 0x0c, 0x4a, 0x99, 0x09, 0xbf, 0xac, + 0x99, 0xf3, 0x7b, 0x34, 0x89, 0x02, 0xf6, 0xc9, 0xfc, 0x40, 0x32, 0x24, 0xc6, 0x8f, 0x8c, 0x2d, + 0x2d, 0x8f, 0x4f, 0x00, 0xe4, 0xef, 0x19, 0x3b, 0x09, 0xb2, 0xd2, 0xf8, 0xa9, 0xfc, 0xc5, 0xfe, + 0x34, 0x76, 0xb4, 0x8e, 0x52, 0xe5, 0xb7, 0x32, 0x60, 0x2c, 0xd9, 0x80, 0x82, 0xa7, 0x3a, 0xf4, + 0x8f, 0x5a, 0x9b, 0x54, 0x3d, 0x06, 0xe4, 0x5f, 0x48, 0x00, 0x0e, 0x77, 0x72, 0x93, 0xaf, 0x81, + 0x23, 0xa9, 0x6e, 0xe2, 0xa8, 0x3d, 0xe1, 0x13, 0x60, 0xc8, 0x67, 0x5c, 0xc0, 0x72, 0x57, 0x25, + 0x03, 0x7d, 0xb0, 0x90, 0xb1, 0xc5, 0x2b, 0x2e, 0x98, 0xfd, 0xb2, 0x4b, 0x74, 0xfe, 0x6c, 0x80, + 0xb1, 0x05, 0x2c, 0x36, 0x4b, 0xb8, 0x8e, 0x7e, 0x70, 0xac, 0x1d, 0x74, 0x21, 0xb7, 0xf9, 0x4d, + 0x09, 0xc5, 0xed, 0x4f, 0x38, 0xa4, 0xc4, 0xd1, 0xb5, 0x08, 0xcf, 0x74, 0x55, 0xd1, 0x91, 0x67, + 0x51, 0xad, 0x52, 0xa9, 0xdb, 0x3e, 0x6d, 0xd5, 0x1e, 0xd5, 0xeb, 0xe8, 0xe6, 0xdf, 0xda, 0xd9, + 0x68, 0x59, 0x3c, 0xdd, 0x97, 0x6e, 0x7f, 0x37, 0xc0, 0xbe, 0x2d, 0xe5, 0x3c, 0x3c, 0xdb, 0xb6, + 0x41, 0x90, 0x52, 0xf5, 0x77, 0x09, 0x9c, 0x3b, 0xab, 0xec, 0x39, 0xb3, 0x1f, 0x65, 0xa5, 0x9f, + 0xfe, 0xcb, 0x00, 0x13, 0x0b, 0x58, 0x2c, 0xce, 0xdd, 0xec, 0x2d, 0x47, 0xd8, 0x5a, 0x65, 0xa8, + 0xbe, 0x77, 0x29, 0xad, 0xef, 0x5d, 0x5a, 0x70, 0x59, 0x15, 0xb9, 0xb7, 0x7d, 0x6c, 0xab, 0xcc, + 0xf6, 0xd5, 0x1d, 0x75, 0xe1, 0x32, 0x2c, 0x76, 0xd5, 0x9c, 0x38, 0xde, 0x66, 0x92, 0xf0, 0x5f, + 0x03, 0x4c, 0x86, 0xd9, 0x7b, 0x42, 0xf7, 0x81, 0xd5, 0xeb, 0x6c, 0xf6, 0xd7, 0x76, 0xd6, 0xec, + 0x33, 0xf9, 0xfe, 0x94, 0x97, 0x86, 0xff, 0xa5, 0xce, 0x0f, 0x5b, 0x5b, 0x36, 0xb0, 0x94, 0xae, + 0x45, 0xbb, 0x86, 0x50, 0xfe, 0x5c, 0x3a, 0x7d, 0xfb, 0x46, 0x90, 0x39, 0xbb, 0x25, 0xc9, 0xd6, + 0x29, 0x0d, 0x3c, 0x1b, 0x67, 0xb1, 0x29, 0xe7, 0x2d, 0xfb, 0xa1, 0x3c, 0xcb, 0xd7, 0xc7, 0xfc, + 0xa7, 0xf6, 0xda, 0x64, 0xc1, 0x7d, 0xa6, 0xed, 0xc9, 0xb7, 0x77, 0x54, 0xda, 0xbd, 0x3f, 0xad, + 0x55, 0xaf, 0xbe, 0xac, 0x9f, 0xff, 0x38, 0x19, 0xee, 0x36, 0xcb, 0xc5, 0xfe, 0x7a, 0x1e, 0x3e, + 0xde, 0x93, 0xc9, 0x74, 0x99, 0x5f, 0x56, 0xd5, 0x1f, 0xfc, 0xd0, 0x00, 0xfb, 0xa4, 0x42, 0xc9, + 0xfa, 0xb0, 0xe3, 0x6d, 0x35, 0xbb, 0x17, 0x89, 0xe6, 0xeb, 0x3b, 0xa8, 0xe5, 0x65, 0x78, 0xa9, + 0x2f, 0x2d, 0xe3, 0x42, 0x17, 0xbe, 0x91, 0x01, 0x87, 0xdb, 0xf6, 0xb2, 0xe0, 0xa5, 0x5e, 0x8c, + 0xbd, 0xbd, 0xf9, 0xd5, 0xa3, 0xdd, 0xdf, 0xda, 0xd1, 0x48, 0xf5, 0xac, 0xf9, 0x64, 0xdf, 0x96, + 0xb7, 0x08, 0xb5, 0x04, 0xf1, 0x54, 0x66, 0xf1, 0x57, 0x03, 0x4c, 0x2e, 0x11, 0x2e, 0x16, 0xa9, + 0xfe, 0xb0, 0x22, 0xdf, 0x9e, 0x2e, 0x41, 0xbb, 0xd0, 0xbe, 0x63, 0x22, 0x25, 0x99, 0xdf, 0xd9, + 0x51, 0x85, 0x2f, 0xc2, 0xf3, 0x3d, 0x29, 0xac, 0x5a, 0x37, 0x65, 0x12, 0xaa, 0x05, 0x3f, 0x30, + 0xc0, 0xa1, 0xb8, 0x80, 0x6d, 0xf9, 0x18, 0xd8, 0x59, 0xd9, 0xa9, 0xa8, 0x3d, 0x81, 0x7c, 0x52, + 0x7a, 0x4e, 0x08, 0xff, 0x3a, 0x73, 0x9a, 0xe6, 0x77, 0x77, 0x36, 0x02, 0xf7, 0xe2, 0xe8, 0x61, + 0x6e, 0x8a, 0x63, 0x55, 0x8a, 0x0e, 0xb3, 0xe1, 0x4f, 0x33, 0x60, 0x72, 0x5b, 0xaf, 0xaa, 0x5d, + 0x1c, 0x6e, 0xd7, 0xd4, 0xea, 0xfc, 0xfa, 0x3c, 0xe8, 0x9a, 0x47, 0xfb, 0x6d, 0xca, 0x2d, 0xdd, + 0x10, 0x2b, 0xea, 0xaf, 0x99, 0x9a, 0x07, 0x3e, 0x1d, 0x26, 0xd5, 0xdd, 0x6b, 0x25, 0xcd, 0x66, + 0x29, 0xb6, 0xb2, 0x16, 0xd5, 0x5a, 0x6f, 0x99, 0x03, 0xc9, 0x90, 0x97, 0xe0, 0xd7, 0x19, 0x70, + 0x20, 0xa5, 0x5f, 0x07, 0xdb, 0xbc, 0x47, 0xed, 0x5b, 0x7b, 0x9d, 0x91, 0xfb, 0x53, 0x57, 0xe4, + 0x04, 0x38, 0x9d, 0x8a, 0x5c, 0x9d, 0xa6, 0x61, 0xf7, 0x6c, 0x88, 0xdd, 0xa5, 0xfe, 0xf4, 0x8e, + 0x84, 0xb5, 0xa0, 0x77, 0xc5, 0x1c, 0x50, 0x8a, 0xc4, 0xef, 0x07, 0x59, 0x30, 0x2c, 0xd3, 0x3e, + 0xd5, 0x96, 0x1c, 0xe0, 0x3a, 0x3d, 0xcc, 0x6c, 0xac, 0xe7, 0xce, 0xf4, 0xd1, 0xc5, 0xf9, 0x68, + 0x3d, 0xf7, 0x13, 0x03, 0x9c, 0x48, 0xc5, 0x2a, 0xfe, 0xf7, 0x8c, 0x62, 0x0d, 0x0b, 0xdd, 0x29, + 0x7d, 0x46, 0xf7, 0xc8, 0x2e, 0xf5, 0x5e, 0x9d, 0x46, 0x81, 0x44, 0xb1, 0xcf, 0x69, 0xf6, 0x67, + 0x22, 0x76, 0x2e, 0x90, 0xe8, 0x5b, 0x8a, 0x42, 0xb9, 0x39, 0xe8, 0x19, 0xee, 0x5e, 0xfd, 0x98, + 0xdb, 0xc3, 0xb7, 0x0d, 0xb0, 0x57, 0xbf, 0x68, 0x6c, 0x10, 0x13, 0xb9, 0x7d, 0x5a, 0x48, 0xa9, + 0xfb, 0x04, 0xbc, 0xd8, 0xb7, 0xba, 0xae, 0x3c, 0xe0, 0x8f, 0xb3, 0x00, 0x2c, 0x60, 0x71, 0x03, + 0x35, 0x16, 0x6d, 0x46, 0x07, 0x39, 0xef, 0xdf, 0x06, 0x70, 0xa9, 0x9f, 0x19, 0xe0, 0x54, 0x77, + 0x97, 0x5a, 0x41, 0x0d, 0x22, 0x0f, 0x75, 0x55, 0x7b, 0xc5, 0xe5, 0xbe, 0x35, 0x8c, 0x04, 0xdc, + 0xd0, 0x02, 0xae, 0x0e, 0x6a, 0xd7, 0x50, 0x8e, 0x42, 0xfa, 0xa5, 0xc1, 0xcf, 0x71, 0xf7, 0xda, + 0xc7, 0x3e, 0x02, 0x7c, 0x64, 0x80, 0xd1, 0xc4, 0xc7, 0x8b, 0x76, 0xcd, 0xf4, 0xed, 0xdf, 0x37, + 0x3a, 0x07, 0xcc, 0x37, 0x77, 0xf6, 0x99, 0xbd, 0x92, 0x1f, 0xf0, 0x36, 0xca, 0x98, 0xf7, 0x9e, + 0x01, 0x46, 0x75, 0xdb, 0xa2, 0x87, 0xb0, 0xd7, 0x51, 0xcb, 0x9d, 0x4e, 0x26, 0x4e, 0x0f, 0x1a, + 0xf7, 0x7e, 0xae, 0xeb, 0xa2, 0xe4, 0x77, 0x97, 0x8e, 0x5a, 0xb6, 0xf9, 0x62, 0x97, 0xe0, 0x37, + 0x9d, 0x41, 0xc2, 0x48, 0x2f, 0xd5, 0x78, 0xf8, 0xc1, 0xa7, 0x48, 0xe8, 0x0a, 0xcb, 0x83, 0xdf, + 0xfe, 0xca, 0xc8, 0xbe, 0xf2, 0x87, 0x5c, 0x66, 0xd5, 0xb8, 0xfe, 0xb2, 0xf1, 0xe0, 0x61, 0x61, + 0xd7, 0xbb, 0x0f, 0x0b, 0xbb, 0x1e, 0x3d, 0x2c, 0x18, 0x2f, 0x6f, 0x14, 0x8c, 0x1f, 0x6e, 0x14, + 0x8c, 0x77, 0x36, 0x0a, 0xc6, 0x83, 0x8d, 0x82, 0xf1, 0xde, 0x46, 0xc1, 0xf8, 0x70, 0xa3, 0xb0, + 0xeb, 0xd1, 0x46, 0xc1, 0x78, 0xed, 0xfd, 0xc2, 0xae, 0x07, 0xef, 0x17, 0x76, 0xbd, 0xfb, 0x7e, + 0x61, 0xd7, 0xdd, 0xcf, 0xd5, 0x98, 0x7f, 0xaf, 0x56, 0x6a, 0x30, 0x57, 0xe0, 0x20, 0x40, 0xa5, + 0xba, 0xc4, 0x26, 0x08, 0xd0, 0x0a, 0x0b, 0xbc, 0xa2, 0x1f, 0xb0, 0x06, 0x71, 0x70, 0x50, 0x8c, + 0x96, 0xcb, 0x7e, 0xb5, 0xc6, 0xca, 0xf8, 0xbe, 0x08, 0xff, 0x7f, 0xaf, 0xe5, 0x5f, 0x0e, 0xab, + 0x7b, 0xd4, 0xa7, 0xad, 0xf3, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x6e, 0xdb, 0x0e, 0x57, 0x68, + 0x29, 0x00, 0x00, } func (this *LookupCnameRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/tenant/pkg.vespkg.go b/pbgo/extschema/schema/tenant/pkg.vespkg.go index 121a27396..5c4e0f669 100644 --- a/pbgo/extschema/schema/tenant/pkg.vespkg.go +++ b/pbgo/extschema/schema/tenant/pkg.vespkg.go @@ -50,6 +50,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.tenant.EncryptedPassword"] = EncryptedPasswordValidator() vr["ves.io.schema.tenant.GlobalSpecType"] = GlobalSpecTypeValidator() vr["ves.io.schema.tenant.SubCA"] = SubCAValidator() + vr["ves.io.schema.tenant.TenantControlConfig"] = TenantControlConfigValidator() } diff --git a/pbgo/extschema/schema/tenant/types.pb.go b/pbgo/extschema/schema/tenant/types.pb.go index ff22961e0..18f65a16c 100644 --- a/pbgo/extschema/schema/tenant/types.pb.go +++ b/pbgo/extschema/schema/tenant/types.pb.go @@ -560,6 +560,53 @@ func (m *EncryptedPassword) GetPassword() string { return "" } +// TenantControlConfig +// +// x-displayName: "TenantControlConfig" +// Configuration for tenant controller +type TenantControlConfig struct { + // Tenant Node Selection percentage + // + // x-displayName: "Tenant Node selection percentage" + // Configure part of multinode RE to process configuration for this tenant + TenantNodePercent int32 `protobuf:"varint,1,opt,name=tenant_node_percent,json=tenantNodePercent,proto3" json:"tenant_node_percent,omitempty"` +} + +func (m *TenantControlConfig) Reset() { *m = TenantControlConfig{} } +func (*TenantControlConfig) ProtoMessage() {} +func (*TenantControlConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_de41f8b87043178a, []int{3} +} +func (m *TenantControlConfig) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *TenantControlConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *TenantControlConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_TenantControlConfig.Merge(m, src) +} +func (m *TenantControlConfig) XXX_Size() int { + return m.Size() +} +func (m *TenantControlConfig) XXX_DiscardUnknown() { + xxx_messageInfo_TenantControlConfig.DiscardUnknown(m) +} + +var xxx_messageInfo_TenantControlConfig proto.InternalMessageInfo + +func (m *TenantControlConfig) GetTenantNodePercent() int32 { + if m != nil { + return m.TenantNodePercent + } + return 0 +} + // GlobalSpecType // // x-displayName: "Global Specification" @@ -688,12 +735,23 @@ type GlobalSpecType struct { // x-displayName: "CRM Information" // This field holds CRM information CrmInfo *schema.CRMInfo `protobuf:"bytes,21,opt,name=crm_info,json=crmInfo,proto3" json:"crm_info,omitempty"` + // Tenant Control Configuration + // + // x-displayName: "Tenant Control Configuration" + //Control parameters related to configuration processing per tenant + TenantControl *TenantControlConfig `protobuf:"bytes,22,opt,name=tenant_control,json=tenantControl,proto3" json:"tenant_control,omitempty"` + // Origin + // + // x-displayName: "Origin" + // x-required + // origin of the signup, from which platform signup is originated, example f5xc, aws..etc + Origin schema.SignupOrigin `protobuf:"varint,23,opt,name=origin,proto3,enum=ves.io.schema.SignupOrigin" json:"origin,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } func (*GlobalSpecType) ProtoMessage() {} func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_de41f8b87043178a, []int{3} + return fileDescriptor_de41f8b87043178a, []int{4} } func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -865,6 +923,20 @@ func (m *GlobalSpecType) GetCrmInfo() *schema.CRMInfo { return nil } +func (m *GlobalSpecType) GetTenantControl() *TenantControlConfig { + if m != nil { + return m.TenantControl + } + return nil +} + +func (m *GlobalSpecType) GetOrigin() schema.SignupOrigin { + if m != nil { + return m.Origin + } + return schema.ORIGIN_UNKNOWN +} + // CredentialsExpiry // // x-displayName: "CredentialsExpiry" @@ -893,7 +965,7 @@ type CredentialsExpiry struct { func (m *CredentialsExpiry) Reset() { *m = CredentialsExpiry{} } func (*CredentialsExpiry) ProtoMessage() {} func (*CredentialsExpiry) Descriptor() ([]byte, []int) { - return fileDescriptor_de41f8b87043178a, []int{4} + return fileDescriptor_de41f8b87043178a, []int{5} } func (m *CredentialsExpiry) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -949,7 +1021,7 @@ type Empty struct { func (m *Empty) Reset() { *m = Empty{} } func (*Empty) ProtoMessage() {} func (*Empty) Descriptor() ([]byte, []int) { - return fileDescriptor_de41f8b87043178a, []int{5} + return fileDescriptor_de41f8b87043178a, []int{6} } func (m *Empty) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -991,6 +1063,8 @@ func init() { golang_proto.RegisterType((*CA)(nil), "ves.io.schema.tenant.CA") proto.RegisterType((*EncryptedPassword)(nil), "ves.io.schema.tenant.EncryptedPassword") golang_proto.RegisterType((*EncryptedPassword)(nil), "ves.io.schema.tenant.EncryptedPassword") + proto.RegisterType((*TenantControlConfig)(nil), "ves.io.schema.tenant.TenantControlConfig") + golang_proto.RegisterType((*TenantControlConfig)(nil), "ves.io.schema.tenant.TenantControlConfig") proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.tenant.GlobalSpecType") golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.tenant.GlobalSpecType") proto.RegisterType((*CredentialsExpiry)(nil), "ves.io.schema.tenant.CredentialsExpiry") @@ -1005,112 +1079,119 @@ func init() { } var fileDescriptor_de41f8b87043178a = []byte{ - // 1666 bytes of a gzipped FileDescriptorProto + // 1788 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xcd, 0x6f, 0x1b, 0xc7, - 0x15, 0xe7, 0x92, 0xfa, 0x1c, 0x7d, 0xad, 0xc6, 0xb6, 0xb4, 0xfa, 0x00, 0x43, 0x28, 0x68, 0x23, - 0x28, 0x92, 0x18, 0xc9, 0x8a, 0x6b, 0x17, 0x45, 0x00, 0x8a, 0x22, 0x1d, 0xc6, 0x32, 0x29, 0xec, - 0x52, 0x0e, 0x5a, 0x20, 0x98, 0x0c, 0x77, 0x87, 0xab, 0x29, 0xc9, 0x99, 0xcd, 0xce, 0x2c, 0x25, - 0x1e, 0x0c, 0xe4, 0xd6, 0xf6, 0x56, 0xf4, 0x58, 0xf4, 0x0f, 0x68, 0xf3, 0x27, 0xf4, 0x94, 0x4b, - 0x81, 0x1e, 0xdd, 0x9b, 0x6f, 0xad, 0xe5, 0x4b, 0xdb, 0x53, 0xfe, 0x82, 0xba, 0x98, 0xd9, 0xe5, - 0xa7, 0x75, 0x28, 0xaa, 0x8b, 0xe6, 0xbd, 0xf7, 0xfb, 0xbd, 0xf7, 0x9b, 0x37, 0x6f, 0x86, 0x24, - 0xc8, 0x75, 0x89, 0x38, 0xa4, 0x3c, 0x2f, 0xdc, 0x2b, 0xd2, 0xc1, 0x79, 0x49, 0x18, 0x66, 0x32, - 0x2f, 0x7b, 0x01, 0x11, 0x87, 0x41, 0xc8, 0x25, 0x87, 0xf7, 0x63, 0xc4, 0x61, 0x8c, 0x38, 0x8c, - 0x11, 0x9b, 0x07, 0x3e, 0x95, 0x57, 0x51, 0xe3, 0xd0, 0xe5, 0x9d, 0xbc, 0xcf, 0x7d, 0x9e, 0xd7, - 0xe0, 0x46, 0xd4, 0xd4, 0x96, 0x36, 0xf4, 0x2a, 0x4e, 0xb2, 0xb9, 0xed, 0x73, 0xee, 0xb7, 0x49, - 0x1e, 0x07, 0x34, 0x8f, 0x19, 0xe3, 0x12, 0x4b, 0xca, 0x59, 0x52, 0x62, 0x73, 0x6b, 0x5c, 0x04, - 0x0f, 0x46, 0x83, 0x1b, 0x13, 0x0a, 0x87, 0xd2, 0x36, 0xb7, 0xc7, 0x43, 0x5d, 0xdc, 0xa6, 0x1e, - 0x96, 0x24, 0x89, 0xee, 0x4c, 0x44, 0x89, 0x20, 0xac, 0x3b, 0x91, 0x7c, 0x62, 0xfb, 0x5d, 0x4a, - 0xae, 0xd1, 0x18, 0x62, 0xe7, 0xf7, 0x06, 0x98, 0x76, 0xa2, 0x46, 0xb1, 0x00, 0xd7, 0xc0, 0x4c, - 0x11, 0x57, 0x71, 0x87, 0x58, 0x46, 0xce, 0xd8, 0x9d, 0xb7, 0x13, 0x0b, 0x6e, 0x82, 0x39, 0x0d, - 0xb8, 0x28, 0x3d, 0xb7, 0xd2, 0x3a, 0x32, 0xb0, 0x61, 0x11, 0xcc, 0x5d, 0x60, 0x21, 0xae, 0x79, - 0xe8, 0x59, 0x99, 0x9c, 0xb1, 0xbb, 0x70, 0xfc, 0xd1, 0xe1, 0x5d, 0xfd, 0x3c, 0x2c, 0x31, 0x37, - 0xec, 0x05, 0x92, 0x78, 0x7d, 0xb8, 0x3d, 0x20, 0x42, 0x0b, 0xcc, 0xbe, 0x20, 0xa1, 0xa0, 0x9c, - 0x59, 0x53, 0x39, 0x63, 0x77, 0xc9, 0xee, 0x9b, 0x3b, 0xbf, 0x31, 0x40, 0xba, 0x58, 0x80, 0x10, - 0x4c, 0xb1, 0xa1, 0x2e, 0xbd, 0x86, 0x26, 0xc8, 0x04, 0xa4, 0x93, 0x08, 0x52, 0x4b, 0xa5, 0x25, - 0xf8, 0x7f, 0xb5, 0x04, 0x23, 0x5a, 0xba, 0xe3, 0x5a, 0x12, 0x73, 0xa7, 0x02, 0x56, 0xdf, 0x23, - 0x8e, 0x4a, 0x37, 0xc6, 0xa4, 0xab, 0xae, 0x0d, 0x3a, 0x93, 0x74, 0xad, 0x6f, 0xef, 0xfc, 0x6a, - 0x01, 0x2c, 0x3f, 0x6d, 0xf3, 0x06, 0x6e, 0x3b, 0x01, 0x71, 0xeb, 0xbd, 0x80, 0xc0, 0x5d, 0x00, - 0x82, 0xa8, 0xd1, 0xa6, 0x2e, 0xea, 0xd2, 0x20, 0xde, 0xe8, 0xe9, 0xfc, 0x9f, 0xff, 0xf5, 0x7d, - 0x66, 0x2a, 0x4c, 0x07, 0x86, 0x3d, 0x1f, 0x07, 0x5f, 0xd0, 0x40, 0x95, 0xf4, 0x48, 0x9b, 0x48, - 0x12, 0xe7, 0x9d, 0xb3, 0xfb, 0x26, 0x7c, 0x08, 0x96, 0xa5, 0x7f, 0x8d, 0xb0, 0x60, 0x88, 0x37, - 0x9b, 0x82, 0x48, 0xdd, 0x86, 0xa5, 0xd3, 0x25, 0x95, 0x67, 0x6e, 0x6f, 0xc6, 0xfa, 0xcf, 0xdf, - 0xdf, 0xbd, 0x5b, 0xb1, 0x17, 0xa5, 0x7f, 0x5d, 0x10, 0xac, 0xa6, 0x21, 0xd0, 0x07, 0x1b, 0x1e, - 0x0d, 0x89, 0x2b, 0x91, 0xcb, 0x19, 0x53, 0xff, 0x47, 0xf8, 0x2b, 0x9a, 0xbf, 0xaf, 0xf8, 0x1f, - 0xed, 0xfd, 0xe8, 0xf4, 0xc3, 0x4f, 0xf6, 0x1f, 0x9d, 0x7c, 0x7a, 0x74, 0x7c, 0xf0, 0xe8, 0xd3, - 0x93, 0x9f, 0x1c, 0xed, 0x9f, 0x1c, 0x7f, 0x92, 0xfc, 0x1d, 0x9c, 0x1c, 0x3f, 0x39, 0x79, 0xf2, - 0xe8, 0xe1, 0xd1, 0x93, 0xc7, 0xf6, 0x5a, 0x9c, 0xae, 0x18, 0x67, 0x1b, 0x16, 0xfa, 0x1a, 0xac, - 0x8a, 0x2b, 0x1c, 0x12, 0x0f, 0x8d, 0x6c, 0x74, 0x2a, 0x97, 0xd9, 0x5d, 0x38, 0xde, 0x9e, 0x38, - 0xa7, 0x5a, 0xe3, 0x97, 0xc4, 0x95, 0x36, 0x69, 0xaa, 0xd6, 0x9c, 0xae, 0x7d, 0xf7, 0x32, 0xd9, - 0x3e, 0xa2, 0x81, 0x92, 0x32, 0xfd, 0x3b, 0x23, 0x6d, 0x1a, 0xf6, 0x4a, 0x9c, 0xee, 0x62, 0xd0, - 0x99, 0xcf, 0x01, 0x6c, 0x3d, 0x16, 0x48, 0x90, 0xb0, 0x4b, 0x42, 0x24, 0xa2, 0x06, 0x72, 0xb1, - 0xb0, 0xa6, 0x75, 0x89, 0xad, 0xbb, 0x47, 0x41, 0x0f, 0xb2, 0xbd, 0xd2, 0x7a, 0x2c, 0x1c, 0xcd, - 0x52, 0x36, 0x16, 0xb0, 0x04, 0x72, 0xef, 0x65, 0x42, 0x6d, 0x2c, 0x89, 0x90, 0xa8, 0x3f, 0x1e, - 0x33, 0xfa, 0xbc, 0xb7, 0xc6, 0xa9, 0xe7, 0x1a, 0xd3, 0x9f, 0x81, 0xcf, 0xc0, 0x72, 0x10, 0xf2, - 0x9b, 0x1e, 0x0a, 0x39, 0x97, 0x5a, 0xcc, 0xac, 0x16, 0x63, 0xdd, 0x2d, 0xa6, 0x58, 0xb0, 0x17, - 0x35, 0xde, 0xe6, 0x5c, 0x2a, 0x19, 0x9f, 0x81, 0xed, 0x31, 0xfe, 0xa4, 0x84, 0x39, 0x2d, 0xc1, - 0x1a, 0xe1, 0x8c, 0xd7, 0x7f, 0x02, 0x36, 0x3c, 0xd2, 0xc4, 0x51, 0x5b, 0x22, 0x8f, 0x0a, 0xdc, - 0x68, 0x93, 0x7e, 0xef, 0x71, 0x60, 0xcd, 0xeb, 0xe1, 0x59, 0x4b, 0x00, 0x67, 0x71, 0x3c, 0x6e, - 0x66, 0x21, 0x80, 0x1f, 0x03, 0x18, 0x09, 0x82, 0x7c, 0x3d, 0xa5, 0x08, 0x53, 0x86, 0xba, 0x61, - 0xd3, 0x02, 0x9a, 0xb3, 0x12, 0x09, 0x12, 0x8f, 0x6f, 0x81, 0xb2, 0x17, 0x61, 0x13, 0x7e, 0x05, - 0xb2, 0xe2, 0x0a, 0x07, 0x04, 0x25, 0x07, 0x4c, 0x99, 0x90, 0x98, 0xb9, 0x04, 0xe1, 0x48, 0x5e, - 0xa1, 0x16, 0xe9, 0x59, 0x0b, 0xfa, 0x3e, 0x6e, 0x4c, 0xec, 0xdb, 0x21, 0x6e, 0x48, 0xa4, 0x3a, - 0x64, 0x7b, 0x53, 0x27, 0x70, 0x34, 0xbf, 0x92, 0xd0, 0x0b, 0x91, 0xbc, 0x7a, 0x46, 0x7a, 0xf0, - 0x00, 0x2c, 0xba, 0xbc, 0x13, 0x60, 0xd6, 0x43, 0xfa, 0x19, 0x58, 0xd4, 0xb7, 0x03, 0xe8, 0x51, - 0x08, 0x33, 0xd6, 0xb7, 0x69, 0x7b, 0x21, 0x89, 0xeb, 0xf7, 0xea, 0x63, 0xb0, 0x10, 0x37, 0x14, - 0x35, 0xbf, 0xf1, 0x98, 0xb5, 0xf4, 0x1e, 0x1a, 0xc4, 0xe1, 0xf2, 0x37, 0x1e, 0x83, 0x65, 0xb0, - 0x81, 0x3d, 0x8f, 0x33, 0x7d, 0xd6, 0xd4, 0x25, 0x42, 0x9d, 0xb6, 0x70, 0x43, 0xda, 0x20, 0x9e, - 0xb5, 0x9c, 0xcb, 0x0c, 0xa8, 0x6a, 0xe6, 0x72, 0xf6, 0xba, 0x06, 0x3b, 0x09, 0xd6, 0x19, 0x40, - 0xe1, 0x4f, 0x07, 0x45, 0xd5, 0x03, 0x6e, 0x99, 0x39, 0x63, 0x77, 0xf9, 0xbd, 0xfd, 0xd6, 0x35, - 0x42, 0xef, 0x37, 0xd1, 0xa0, 0xef, 0xfe, 0x09, 0x98, 0x0f, 0xda, 0x98, 0xc5, 0xcc, 0x55, 0xcd, - 0x5c, 0x9f, 0x60, 0x5e, 0xb4, 0x31, 0xd3, 0xbc, 0xb9, 0x20, 0x59, 0xc1, 0xaf, 0xc1, 0xb2, 0xc7, - 0xaf, 0x99, 0x90, 0x21, 0xc1, 0x1d, 0xe4, 0x72, 0x61, 0xc1, 0xff, 0xe1, 0x32, 0x6d, 0x7d, 0xf7, - 0x72, 0x82, 0x36, 0x72, 0xa3, 0x96, 0x86, 0x91, 0x22, 0x17, 0xf0, 0x06, 0x40, 0x41, 0x25, 0x41, - 0x8c, 0xc8, 0x6b, 0x1e, 0xb6, 0x90, 0x90, 0xd8, 0x6d, 0x59, 0xf7, 0xf4, 0x51, 0xee, 0x4c, 0x54, - 0xa9, 0xc6, 0x18, 0xca, 0x7c, 0x47, 0xa1, 0x74, 0xad, 0x1f, 0xff, 0xfb, 0xe5, 0x87, 0x1e, 0xe9, - 0xf0, 0xa3, 0x7d, 0x35, 0x94, 0xfb, 0x6e, 0x28, 0xf7, 0x85, 0xc4, 0x3e, 0x65, 0xfe, 0xbe, 0xe0, - 0x4d, 0xd9, 0xc0, 0xac, 0x85, 0x3a, 0xc4, 0xb5, 0x4d, 0x55, 0x25, 0x49, 0xa0, 0xd9, 0xf0, 0x04, - 0x4c, 0x0b, 0x89, 0x25, 0xb1, 0xee, 0xeb, 0x6e, 0x64, 0xef, 0xbe, 0x2f, 0x65, 0xe7, 0xb9, 0xa3, - 0x50, 0x76, 0x0c, 0x86, 0x47, 0x60, 0xce, 0x0d, 0x3b, 0x88, 0xb2, 0x26, 0xb7, 0x1e, 0x68, 0x95, - 0x6b, 0x13, 0xc4, 0xa2, 0xfd, 0xbc, 0xc2, 0x9a, 0xdc, 0x9e, 0x75, 0xc3, 0x8e, 0x5a, 0xec, 0xfc, - 0xcd, 0x00, 0xab, 0xc5, 0x90, 0x78, 0x84, 0x49, 0x8a, 0xdb, 0xa2, 0x74, 0x13, 0xd0, 0xb0, 0x07, - 0xcf, 0xc0, 0x07, 0x1d, 0x7c, 0x83, 0x70, 0x40, 0x91, 0x4b, 0x42, 0x49, 0x9b, 0xd4, 0xc5, 0x92, - 0x20, 0xa2, 0xa3, 0xc8, 0xc3, 0x3d, 0xa1, 0x5f, 0xe8, 0x69, 0x7b, 0xab, 0x83, 0x6f, 0x0a, 0x01, - 0x2d, 0x0e, 0x41, 0x71, 0x86, 0x33, 0xdc, 0x13, 0xf0, 0x31, 0xd8, 0xe8, 0x67, 0x91, 0xbc, 0x45, - 0xd8, 0x18, 0x3f, 0xad, 0xf9, 0x0f, 0x62, 0x7e, 0x5d, 0x85, 0x47, 0x98, 0x3f, 0x03, 0x2a, 0x31, - 0x6a, 0x45, 0x0d, 0xa2, 0x5e, 0xe5, 0x26, 0xf5, 0xc7, 0xb8, 0x19, 0xcd, 0x5d, 0xef, 0xe0, 0x9b, - 0x67, 0x51, 0x83, 0x14, 0x35, 0x60, 0xc8, 0xde, 0x99, 0x05, 0xd3, 0xa5, 0x4e, 0x20, 0x7b, 0x7b, - 0x7f, 0x30, 0xc0, 0xf2, 0x99, 0xfa, 0x6c, 0xa0, 0x9c, 0xd9, 0x04, 0x0b, 0xce, 0x20, 0x04, 0xcb, - 0x76, 0xa9, 0xe0, 0xd4, 0xaa, 0xe8, 0xb2, 0xfa, 0xac, 0x5a, 0xfb, 0xb2, 0x6a, 0xa6, 0x60, 0x16, - 0x6c, 0x26, 0x3e, 0xe7, 0xcb, 0x4a, 0xbd, 0xf8, 0x39, 0xaa, 0xd7, 0x50, 0xd9, 0x2e, 0x95, 0xd0, - 0xc5, 0x79, 0xa1, 0x6a, 0x1a, 0x70, 0x0b, 0xac, 0x27, 0xf1, 0x6a, 0x0d, 0x9d, 0xd7, 0xaa, 0x4f, - 0x4b, 0x36, 0xaa, 0x96, 0x4a, 0x67, 0xa5, 0x33, 0x33, 0x0d, 0xb7, 0x81, 0x35, 0x08, 0xd6, 0xd1, - 0x17, 0x97, 0x4e, 0xbd, 0x52, 0xfe, 0x39, 0x2a, 0xd6, 0x9c, 0xba, 0x63, 0x66, 0x46, 0xa8, 0x67, - 0x95, 0x72, 0xb9, 0x52, 0xbc, 0x3c, 0xaf, 0xab, 0xec, 0x97, 0x4e, 0xc9, 0x9c, 0xda, 0xfb, 0x8b, - 0x01, 0xe6, 0xfa, 0x47, 0xa8, 0x84, 0xe9, 0xc5, 0x25, 0xf3, 0x48, 0x93, 0x32, 0xe2, 0x99, 0x29, - 0xb8, 0x0a, 0x96, 0xb4, 0xaf, 0x18, 0x12, 0x2c, 0x29, 0xf3, 0x4d, 0x03, 0x3e, 0x00, 0xab, 0x43, - 0x17, 0x29, 0x63, 0xda, 0x26, 0x9e, 0x99, 0x1e, 0x20, 0x2b, 0x0c, 0xbb, 0x92, 0x76, 0x89, 0x99, - 0x81, 0x2b, 0x60, 0x41, 0xbb, 0x0a, 0xb1, 0x63, 0x6a, 0x50, 0xc1, 0x89, 0x44, 0x40, 0x98, 0x47, - 0x3c, 0x73, 0x7a, 0xc0, 0x4b, 0x5e, 0x3f, 0xcf, 0x9c, 0x81, 0xf7, 0x81, 0x19, 0x57, 0xd0, 0x6d, - 0x8d, 0x42, 0x55, 0x77, 0x16, 0x6e, 0x82, 0xb5, 0x49, 0x6f, 0x52, 0x7c, 0x6e, 0xef, 0x2b, 0x30, - 0x5f, 0x93, 0x81, 0x0a, 0x47, 0x02, 0x9a, 0x60, 0xb1, 0x56, 0xbf, 0x40, 0x67, 0x15, 0xa7, 0x70, - 0x7a, 0x5e, 0x3a, 0x33, 0x53, 0x4a, 0x88, 0xf2, 0x94, 0xaa, 0xb1, 0xc3, 0x50, 0x42, 0x94, 0xe3, - 0xc2, 0xae, 0x15, 0x4b, 0x8e, 0x53, 0xa9, 0x3e, 0x35, 0xd3, 0x70, 0x03, 0x3c, 0x18, 0xf1, 0x25, - 0x74, 0x15, 0xca, 0xec, 0xfd, 0xc9, 0x00, 0xa0, 0x16, 0x90, 0x30, 0x29, 0xb0, 0x0e, 0xee, 0x0d, - 0xad, 0xd1, 0x6e, 0x6d, 0x82, 0xb5, 0x61, 0xe0, 0x22, 0xe4, 0x5d, 0xaa, 0x3e, 0x03, 0xe2, 0xb6, - 0xe5, 0xc0, 0xf6, 0xdd, 0xb1, 0x41, 0x07, 0xef, 0x03, 0x73, 0x88, 0x28, 0xf4, 0x9b, 0xb8, 0x06, - 0xe0, 0xd0, 0x3b, 0x68, 0xd2, 0xd4, 0xb8, 0xbf, 0xca, 0x65, 0x99, 0x47, 0xcc, 0x33, 0xa7, 0xf7, - 0x58, 0x2c, 0x55, 0xf1, 0xe3, 0x61, 0x1b, 0x5a, 0x55, 0xce, 0x88, 0x99, 0x82, 0x1f, 0x80, 0xad, - 0xa1, 0xaf, 0x1c, 0x12, 0xd2, 0xa1, 0x51, 0xc7, 0x11, 0xdc, 0xa1, 0x3e, 0x8b, 0x02, 0xd3, 0xe8, - 0xa7, 0x8e, 0x01, 0x4e, 0x8f, 0xb9, 0x97, 0x82, 0x84, 0x66, 0x1a, 0xde, 0x03, 0x2b, 0x43, 0xbf, - 0x4d, 0x64, 0xd8, 0x33, 0x33, 0xa7, 0xbf, 0x36, 0x5e, 0xbd, 0xc9, 0xa6, 0x5e, 0xbf, 0xc9, 0xa6, - 0x7e, 0x78, 0x93, 0x35, 0xbe, 0xbd, 0xcd, 0x1a, 0x7f, 0xbc, 0xcd, 0x1a, 0x7f, 0xbd, 0xcd, 0x1a, - 0xaf, 0x6e, 0xb3, 0xc6, 0xeb, 0xdb, 0xac, 0xf1, 0x8f, 0xdb, 0xac, 0xf1, 0xcf, 0xdb, 0x6c, 0xea, - 0x87, 0xdb, 0xac, 0xf1, 0xdb, 0xb7, 0xd9, 0xd4, 0xf7, 0x6f, 0xb3, 0xc6, 0xab, 0xb7, 0xd9, 0xd4, - 0xeb, 0xb7, 0xd9, 0xd4, 0x2f, 0xbe, 0xf0, 0x79, 0xd0, 0xf2, 0x0f, 0xbb, 0xbc, 0x2d, 0x49, 0x18, - 0xe2, 0xc3, 0x48, 0xe4, 0xf5, 0xa2, 0xc9, 0xc3, 0xce, 0x41, 0xa0, 0xda, 0xe4, 0x91, 0xf0, 0xa0, - 0x1f, 0xce, 0x07, 0x0d, 0x9f, 0xe7, 0xc9, 0x8d, 0x4c, 0xbe, 0x4c, 0x8f, 0xfd, 0xa4, 0x68, 0xcc, - 0xe8, 0xaf, 0xd3, 0x0f, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x1a, 0xb6, 0xcb, 0x42, 0x71, 0x0c, - 0x00, 0x00, + 0x15, 0xe7, 0x92, 0xfa, 0x1c, 0x7d, 0xad, 0xc6, 0xb6, 0xb4, 0xa2, 0x04, 0x46, 0x50, 0x51, 0x44, + 0x95, 0x25, 0xd1, 0xb2, 0x15, 0xd7, 0x2e, 0x8a, 0x00, 0x24, 0x45, 0x39, 0x8c, 0x6d, 0x52, 0xd8, + 0xa5, 0x1c, 0xb8, 0x40, 0x30, 0x19, 0xee, 0x0e, 0x57, 0x53, 0x91, 0x33, 0x9b, 0x99, 0x59, 0x4a, + 0x3c, 0x08, 0xf0, 0xb1, 0xbd, 0x15, 0x39, 0x16, 0xed, 0xbd, 0xcd, 0x9f, 0xd0, 0x5c, 0x72, 0x29, + 0xd0, 0xa3, 0x7b, 0x33, 0x7a, 0x69, 0x2d, 0x5f, 0xd2, 0x9e, 0xf2, 0x17, 0x34, 0xc5, 0xce, 0x2e, + 0x3f, 0xad, 0x43, 0x11, 0x5d, 0x34, 0xef, 0xbd, 0xdf, 0xef, 0xbd, 0xdf, 0xbc, 0x79, 0x33, 0x0b, + 0x82, 0xcd, 0x0e, 0x91, 0xfb, 0x94, 0xe7, 0xa5, 0x7b, 0x46, 0xda, 0x38, 0xaf, 0x08, 0xc3, 0x4c, + 0xe5, 0x55, 0x37, 0x20, 0x72, 0x3f, 0x10, 0x5c, 0x71, 0x78, 0x3b, 0x46, 0xec, 0xc7, 0x88, 0xfd, + 0x18, 0x91, 0xdd, 0xf3, 0xa9, 0x3a, 0x0b, 0x1b, 0xfb, 0x2e, 0x6f, 0xe7, 0x7d, 0xee, 0xf3, 0xbc, + 0x06, 0x37, 0xc2, 0xa6, 0xb6, 0xb4, 0xa1, 0x57, 0x71, 0x92, 0xec, 0x86, 0xcf, 0xb9, 0xdf, 0x22, + 0x79, 0x1c, 0xd0, 0x3c, 0x66, 0x8c, 0x2b, 0xac, 0x28, 0x67, 0x49, 0x89, 0xec, 0xfa, 0xa8, 0x08, + 0x1e, 0x0c, 0x07, 0xd7, 0xc6, 0x14, 0x0e, 0xa4, 0x65, 0x37, 0x46, 0x43, 0x1d, 0xdc, 0xa2, 0x1e, + 0x56, 0x24, 0x89, 0x6e, 0x8d, 0x45, 0x89, 0x24, 0xac, 0x33, 0x96, 0x7c, 0x6c, 0xfb, 0x1d, 0x4a, + 0x2e, 0xd0, 0x08, 0x62, 0xeb, 0xf7, 0x06, 0x98, 0x74, 0xc2, 0x46, 0xa9, 0x00, 0x57, 0xc0, 0x54, + 0x09, 0x57, 0x71, 0x9b, 0x58, 0xc6, 0xa6, 0xb1, 0x3d, 0x6b, 0x27, 0x16, 0xcc, 0x82, 0x19, 0x0d, + 0x38, 0x29, 0x3f, 0xb7, 0xd2, 0x3a, 0xd2, 0xb7, 0x61, 0x09, 0xcc, 0x9c, 0x60, 0x29, 0x2f, 0xb8, + 0xf0, 0xac, 0xcc, 0xa6, 0xb1, 0x3d, 0x77, 0xff, 0xc3, 0xfd, 0x9b, 0xfa, 0xb9, 0x5f, 0x66, 0xae, + 0xe8, 0x06, 0x8a, 0x78, 0x3d, 0xb8, 0xdd, 0x27, 0x42, 0x0b, 0x4c, 0xbf, 0x20, 0x42, 0x52, 0xce, + 0xac, 0x89, 0x4d, 0x63, 0x7b, 0xc1, 0xee, 0x99, 0x5b, 0xbf, 0x35, 0x40, 0xba, 0x54, 0x80, 0x10, + 0x4c, 0xb0, 0x81, 0x2e, 0xbd, 0x86, 0x26, 0xc8, 0x04, 0xa4, 0x9d, 0x08, 0x8a, 0x96, 0x91, 0x96, + 0xe0, 0xc7, 0x6a, 0x09, 0x86, 0xb4, 0x74, 0x46, 0xb5, 0x24, 0xe6, 0x56, 0x05, 0x2c, 0xbf, 0x47, + 0x1c, 0x96, 0x6e, 0x8c, 0x48, 0x8f, 0xba, 0xd6, 0xef, 0x4c, 0xd2, 0xb5, 0x9e, 0xbd, 0xf5, 0x12, + 0xdc, 0xaa, 0x6b, 0x29, 0x25, 0xce, 0x94, 0xe0, 0xad, 0x12, 0x67, 0x4d, 0xea, 0xc3, 0x22, 0xb8, + 0x15, 0x2b, 0x44, 0x8c, 0x7b, 0x04, 0x05, 0x44, 0xb8, 0x84, 0x29, 0x9d, 0x78, 0xb2, 0x08, 0xff, + 0xf1, 0x8d, 0x91, 0x39, 0xb8, 0x77, 0xef, 0x2f, 0xff, 0xfe, 0x36, 0x33, 0x95, 0x9d, 0xb0, 0xbc, + 0x6d, 0x60, 0x2f, 0xc7, 0xf0, 0x2a, 0xf7, 0xc8, 0x49, 0x0c, 0xde, 0xfa, 0xe3, 0x3c, 0x58, 0x7c, + 0xd2, 0xe2, 0x0d, 0xdc, 0x72, 0x02, 0xe2, 0xd6, 0xbb, 0x01, 0x81, 0xdb, 0x00, 0x04, 0x61, 0xa3, + 0x45, 0x5d, 0xd4, 0xa1, 0x41, 0xdc, 0xc3, 0xe2, 0x6c, 0x94, 0x66, 0x42, 0xa4, 0x03, 0xc3, 0x9e, + 0x8d, 0x83, 0x2f, 0x68, 0x10, 0xed, 0xc6, 0x23, 0x2d, 0xa2, 0x48, 0x2c, 0x79, 0xc6, 0xee, 0x99, + 0xf0, 0x01, 0x58, 0x54, 0xfe, 0x05, 0xc2, 0x92, 0x21, 0xde, 0x6c, 0x4a, 0xa2, 0x74, 0x87, 0x17, + 0x8a, 0x0b, 0x51, 0x9e, 0x99, 0x9d, 0x29, 0xeb, 0xbf, 0xff, 0xfc, 0xe1, 0x87, 0x25, 0x7b, 0x5e, + 0xf9, 0x17, 0x05, 0xc9, 0x6a, 0x1a, 0x02, 0x7d, 0xb0, 0xe6, 0x51, 0x41, 0x5c, 0x85, 0x5c, 0xce, + 0x58, 0xf4, 0x7f, 0x88, 0xbf, 0xa4, 0xf9, 0xbb, 0x11, 0xff, 0xc3, 0x9d, 0x9f, 0x16, 0x7f, 0x72, + 0x6f, 0xf7, 0xe1, 0xe1, 0x47, 0x07, 0xf7, 0xf7, 0x1e, 0x7e, 0x74, 0xf8, 0xf3, 0x83, 0xdd, 0xc3, + 0xfb, 0xf7, 0x92, 0xbf, 0xbd, 0xc3, 0xfb, 0x8f, 0x0f, 0x1f, 0x3f, 0x7c, 0x70, 0xf0, 0xf8, 0x91, + 0xbd, 0x12, 0xa7, 0x2b, 0xc5, 0xd9, 0x06, 0x85, 0xbe, 0x00, 0xcb, 0xf2, 0x0c, 0x0b, 0xe2, 0xa1, + 0xa1, 0x8d, 0x4e, 0x6c, 0x66, 0xb6, 0xe7, 0xee, 0x6f, 0x8c, 0x8d, 0x40, 0xad, 0xf1, 0x6b, 0xe2, + 0x2a, 0x9b, 0x34, 0xa3, 0xd6, 0x14, 0x57, 0xbe, 0xbe, 0x4a, 0xb6, 0x8f, 0x68, 0x10, 0x49, 0x99, + 0xfc, 0xca, 0x48, 0x9b, 0x86, 0xbd, 0x14, 0xa7, 0x3b, 0xe9, 0x77, 0xe6, 0x13, 0x00, 0xcf, 0x1f, + 0x49, 0x24, 0x89, 0xe8, 0x10, 0x81, 0x64, 0xd8, 0x40, 0x2e, 0x96, 0xd6, 0xa4, 0x2e, 0xb1, 0x7e, + 0xf3, 0x94, 0xe9, 0x3b, 0x62, 0x2f, 0x9d, 0x3f, 0x92, 0x8e, 0x66, 0x45, 0x36, 0x96, 0xb0, 0x0c, + 0x36, 0xdf, 0xcb, 0x84, 0x5a, 0x58, 0x11, 0xa9, 0x50, 0x6f, 0xf2, 0xa6, 0xf4, 0x28, 0xad, 0x8f, + 0x52, 0x9f, 0x69, 0x4c, 0x6f, 0xbc, 0x3e, 0x06, 0x8b, 0x81, 0xe0, 0x97, 0x5d, 0x24, 0x38, 0x57, + 0x5a, 0xcc, 0xb4, 0x16, 0x63, 0xdd, 0x2c, 0xa6, 0x54, 0xb0, 0xe7, 0x35, 0xde, 0xe6, 0x5c, 0x45, + 0x32, 0x3e, 0x06, 0x1b, 0x23, 0xfc, 0x71, 0x09, 0x33, 0x5a, 0x82, 0x35, 0xc4, 0x19, 0xad, 0xff, + 0x18, 0xac, 0x79, 0xa4, 0x89, 0xc3, 0x96, 0x42, 0x1e, 0x95, 0xb8, 0xd1, 0x22, 0xbd, 0xde, 0xe3, + 0xc0, 0x9a, 0xd5, 0xc3, 0xb3, 0x92, 0x00, 0x8e, 0xe2, 0x78, 0xdc, 0xcc, 0x42, 0x00, 0xef, 0x02, + 0x18, 0x4a, 0x82, 0x7c, 0x3d, 0xa5, 0x08, 0x53, 0x86, 0x3a, 0xa2, 0x69, 0x01, 0xcd, 0x59, 0x0a, + 0x25, 0x89, 0xc7, 0xb7, 0x40, 0xd9, 0x0b, 0xd1, 0x84, 0x9f, 0x83, 0x9c, 0x3c, 0xc3, 0x01, 0x41, + 0xc9, 0x01, 0x53, 0x26, 0x15, 0x66, 0x2e, 0x41, 0x38, 0x54, 0x67, 0xe8, 0x9c, 0x74, 0xad, 0x39, + 0x7d, 0xd5, 0xd7, 0xc6, 0xf6, 0xed, 0x10, 0x57, 0x10, 0x15, 0x1d, 0xb2, 0x9d, 0xd5, 0x09, 0x1c, + 0xcd, 0xaf, 0x24, 0xf4, 0x42, 0xa8, 0xce, 0x9e, 0x92, 0x2e, 0xdc, 0x03, 0xf3, 0x2e, 0x6f, 0x07, + 0x98, 0x75, 0x91, 0x7e, 0x61, 0xe6, 0xf5, 0xed, 0x00, 0x7a, 0x14, 0x44, 0xc6, 0x7a, 0x95, 0xb6, + 0xe7, 0x92, 0xb8, 0x7e, 0x0a, 0xef, 0x82, 0xb9, 0xe4, 0x86, 0x36, 0xbf, 0xf4, 0x98, 0xb5, 0xf0, + 0x1e, 0x1a, 0xc4, 0xe1, 0xe3, 0x2f, 0x3d, 0x06, 0x9f, 0x80, 0x35, 0xec, 0x79, 0x9c, 0xe9, 0xb3, + 0xa6, 0x2e, 0x91, 0xd1, 0x69, 0x4b, 0x57, 0xd0, 0x06, 0xf1, 0xac, 0xc5, 0xcd, 0xcc, 0xf6, 0x6c, + 0x71, 0x4e, 0xdf, 0xe6, 0xaf, 0x8c, 0x8c, 0xf9, 0xca, 0xb0, 0x57, 0x35, 0xda, 0x49, 0xc0, 0x4e, + 0x1f, 0x0b, 0x7f, 0xd1, 0xaf, 0x1a, 0x7d, 0x1c, 0x2c, 0x73, 0xd3, 0xd8, 0x5e, 0x7c, 0x6f, 0xc3, + 0xf1, 0x83, 0xa2, 0x37, 0x9c, 0x88, 0xd0, 0x97, 0xff, 0x10, 0xcc, 0x06, 0x2d, 0xcc, 0x62, 0xe6, + 0xb2, 0x66, 0xae, 0x8e, 0x31, 0x4f, 0x5a, 0x98, 0x69, 0xde, 0x4c, 0x90, 0xac, 0xe0, 0x17, 0x60, + 0xd1, 0xe3, 0x17, 0x4c, 0x2a, 0x41, 0x70, 0x1b, 0xb9, 0x5c, 0x5a, 0xf0, 0xff, 0xb8, 0x4d, 0xeb, + 0x5f, 0x5f, 0x8d, 0xd1, 0x86, 0xae, 0xd4, 0xc2, 0x20, 0x52, 0xe2, 0x12, 0x5e, 0x01, 0x28, 0xa9, + 0x22, 0x88, 0x11, 0x75, 0xc1, 0xc5, 0x39, 0x92, 0x0a, 0xbb, 0xe7, 0xd6, 0x2d, 0x7d, 0x96, 0x5b, + 0x63, 0x55, 0xaa, 0x31, 0x86, 0x32, 0xdf, 0x89, 0x50, 0xba, 0xd6, 0xdd, 0xff, 0x5c, 0x6d, 0x7b, + 0xa4, 0xcd, 0x0f, 0x76, 0xa3, 0xa9, 0xdc, 0x75, 0x85, 0xda, 0x95, 0x0a, 0xfb, 0x94, 0xf9, 0xbb, + 0x92, 0x37, 0x55, 0x03, 0xb3, 0x73, 0xd4, 0x26, 0xee, 0x6e, 0x20, 0xb8, 0x67, 0x9b, 0x51, 0xa9, + 0x24, 0x8b, 0x4e, 0x01, 0x0f, 0xc1, 0xa4, 0x54, 0x58, 0x11, 0xeb, 0xb6, 0x6e, 0x49, 0xee, 0xe6, + 0x5b, 0x73, 0xec, 0x3c, 0x77, 0x22, 0x94, 0x1d, 0x83, 0xe1, 0x01, 0x98, 0x71, 0x45, 0x1b, 0x51, + 0xd6, 0xe4, 0xd6, 0x1d, 0x2d, 0x75, 0x65, 0x8c, 0x58, 0xb2, 0x9f, 0x57, 0x58, 0x93, 0xdb, 0xd3, + 0xae, 0x68, 0x47, 0x0b, 0xf8, 0x12, 0x2c, 0x26, 0x67, 0xe7, 0xc6, 0x6f, 0xbd, 0xb5, 0xa2, 0x89, + 0x3f, 0xbb, 0xb9, 0xe2, 0x0d, 0x9f, 0x85, 0xe2, 0xf4, 0x9b, 0x2b, 0xe3, 0xbb, 0x6f, 0x0c, 0xc3, + 0x5e, 0x50, 0xc3, 0x51, 0xf8, 0x00, 0x4c, 0x71, 0x41, 0x7d, 0xca, 0xac, 0x55, 0xbd, 0x89, 0xf1, + 0x77, 0xc8, 0xa1, 0x3e, 0x0b, 0x83, 0x9a, 0x86, 0xd8, 0x09, 0x74, 0xeb, 0xef, 0x06, 0x58, 0x2e, + 0x09, 0xe2, 0x11, 0xa6, 0x28, 0x6e, 0xc9, 0xf2, 0x65, 0x40, 0x45, 0x17, 0x1e, 0x81, 0x0f, 0xda, + 0xf8, 0x12, 0xe1, 0x80, 0x22, 0x97, 0x08, 0x45, 0x9b, 0xd4, 0xc5, 0x8a, 0x20, 0xa2, 0xa3, 0xc8, + 0xc3, 0x5d, 0x19, 0x7f, 0x85, 0xec, 0xf5, 0x36, 0xbe, 0x2c, 0x04, 0xb4, 0x34, 0x00, 0xc5, 0x19, + 0x8e, 0x70, 0x57, 0xc2, 0x47, 0x60, 0xad, 0x97, 0x45, 0xf1, 0x73, 0xc2, 0x46, 0xf8, 0x69, 0xcd, + 0xbf, 0x13, 0xf3, 0xeb, 0x51, 0x78, 0x88, 0xf9, 0x4b, 0x10, 0x25, 0x46, 0xe7, 0x61, 0x83, 0x44, + 0x7d, 0x6a, 0x52, 0x7f, 0x84, 0x9b, 0xd1, 0xdc, 0xd5, 0x36, 0xbe, 0x7c, 0x1a, 0x36, 0x48, 0xdc, + 0x96, 0x01, 0x7b, 0x6b, 0x1a, 0x4c, 0x96, 0xdb, 0x81, 0xea, 0xee, 0xfc, 0xc1, 0x00, 0x8b, 0x47, + 0xd1, 0x17, 0x8b, 0x72, 0x66, 0x13, 0x2c, 0x39, 0x83, 0x10, 0x2c, 0xda, 0xe5, 0x82, 0x53, 0xab, + 0xa2, 0xd3, 0xea, 0xd3, 0x6a, 0xed, 0xb3, 0xaa, 0x99, 0x82, 0x39, 0x90, 0x4d, 0x7c, 0xce, 0x67, + 0x95, 0x7a, 0xe9, 0x13, 0x54, 0xaf, 0xa1, 0x63, 0xbb, 0x5c, 0x46, 0x27, 0xcf, 0x0a, 0x55, 0xd3, + 0x80, 0xeb, 0x60, 0x35, 0x89, 0x57, 0x6b, 0xe8, 0x59, 0xad, 0xfa, 0xa4, 0x6c, 0xa3, 0x6a, 0xb9, + 0x7c, 0x54, 0x3e, 0x32, 0xd3, 0x70, 0x03, 0x58, 0xfd, 0x60, 0x1d, 0x7d, 0x7a, 0xea, 0xd4, 0x2b, + 0xc7, 0x2f, 0x51, 0xa9, 0xe6, 0xd4, 0x1d, 0x33, 0x33, 0x44, 0x3d, 0xaa, 0x1c, 0x1f, 0x57, 0x4a, + 0xa7, 0xcf, 0xea, 0x51, 0xf6, 0x53, 0xa7, 0x6c, 0x4e, 0xec, 0xfc, 0xd5, 0x00, 0x33, 0xbd, 0x91, + 0x8a, 0x84, 0xe9, 0xc5, 0x29, 0xf3, 0x48, 0x93, 0x32, 0xe2, 0x99, 0x29, 0xb8, 0x0c, 0x16, 0xb4, + 0xaf, 0x24, 0x08, 0x56, 0x94, 0xf9, 0xa6, 0x01, 0xef, 0x80, 0xe5, 0x81, 0x8b, 0x1c, 0x63, 0xda, + 0x22, 0x9e, 0x99, 0xee, 0x23, 0x2b, 0x0c, 0xbb, 0x8a, 0x76, 0x88, 0x99, 0x81, 0x4b, 0x60, 0x4e, + 0xbb, 0x0a, 0xb1, 0x63, 0xa2, 0x5f, 0xc1, 0x09, 0x65, 0x40, 0x98, 0x47, 0x3c, 0x73, 0xb2, 0xcf, + 0x4b, 0xde, 0x64, 0xcf, 0x9c, 0x82, 0xb7, 0x81, 0x19, 0x57, 0xd0, 0x6d, 0x0d, 0x45, 0x54, 0x77, + 0x1a, 0x66, 0xc1, 0xca, 0xb8, 0x37, 0x29, 0x3e, 0xb3, 0xf3, 0x39, 0x98, 0xad, 0xa9, 0x20, 0x0a, + 0x87, 0x12, 0x9a, 0x60, 0xbe, 0x56, 0x3f, 0x41, 0x47, 0x15, 0xa7, 0x50, 0x7c, 0x56, 0x3e, 0x32, + 0x53, 0x91, 0x90, 0xc8, 0x53, 0xae, 0xc6, 0x0e, 0x23, 0x12, 0x12, 0x39, 0x4e, 0xec, 0x5a, 0xa9, + 0xec, 0x38, 0x95, 0xea, 0x13, 0x33, 0x0d, 0xd7, 0xc0, 0x9d, 0x21, 0x5f, 0x42, 0x8f, 0x42, 0x99, + 0x9d, 0x3f, 0x1b, 0x00, 0xd4, 0x02, 0x22, 0x92, 0x02, 0xab, 0xe0, 0xd6, 0xc0, 0x1a, 0xee, 0x56, + 0x16, 0xac, 0x0c, 0x02, 0x27, 0x82, 0x77, 0x68, 0xf4, 0x65, 0x8a, 0xdb, 0xb6, 0x09, 0x36, 0x6e, + 0x8e, 0xf5, 0x3b, 0x78, 0x1b, 0x98, 0x03, 0x44, 0xa1, 0xd7, 0xc4, 0x15, 0x00, 0x07, 0xde, 0x7e, + 0x93, 0x26, 0x46, 0xfd, 0x55, 0xae, 0x8e, 0x79, 0xc8, 0x3c, 0x73, 0x72, 0x87, 0xc5, 0x52, 0x23, + 0x7e, 0x3c, 0x6c, 0x03, 0xab, 0xca, 0x19, 0x31, 0x53, 0xf0, 0x03, 0xb0, 0x3e, 0xf0, 0x1d, 0x0b, + 0x42, 0xda, 0x34, 0x6c, 0x3b, 0x92, 0xc7, 0xb7, 0xd3, 0x34, 0x7a, 0xa9, 0x63, 0x80, 0xd3, 0x65, + 0xee, 0xa9, 0x24, 0xc2, 0x4c, 0xc3, 0x5b, 0x60, 0x69, 0xe0, 0xb7, 0x89, 0x12, 0x5d, 0x33, 0x53, + 0xfc, 0x8d, 0xf1, 0xfa, 0x6d, 0x2e, 0xf5, 0xe6, 0x6d, 0x2e, 0xf5, 0xfd, 0xdb, 0x9c, 0xf1, 0xea, + 0x3a, 0x67, 0xfc, 0xe9, 0x3a, 0x67, 0xfc, 0xed, 0x3a, 0x67, 0xbc, 0xbe, 0xce, 0x19, 0x6f, 0xae, + 0x73, 0xc6, 0xbf, 0xae, 0x73, 0xc6, 0x77, 0xd7, 0xb9, 0xd4, 0xf7, 0xd7, 0x39, 0xe3, 0x77, 0xef, + 0x72, 0xa9, 0x6f, 0xdf, 0xe5, 0x8c, 0xd7, 0xef, 0x72, 0xa9, 0x37, 0xef, 0x72, 0xa9, 0x5f, 0x7d, + 0xea, 0xf3, 0xe0, 0xdc, 0xdf, 0xef, 0xf0, 0x96, 0x22, 0x42, 0xe0, 0xfd, 0x50, 0xe6, 0xf5, 0xa2, + 0xc9, 0x45, 0x7b, 0x2f, 0x88, 0xda, 0xe4, 0x11, 0xb1, 0xd7, 0x0b, 0xe7, 0x83, 0x86, 0xcf, 0xf3, + 0xe4, 0x52, 0x25, 0xbf, 0x1e, 0x46, 0x7e, 0x43, 0x35, 0xa6, 0xf4, 0xef, 0x87, 0x07, 0xff, 0x0b, + 0x00, 0x00, 0xff, 0xff, 0xc0, 0x39, 0x71, 0xaf, 0x62, 0x0d, 0x00, 0x00, } func (x DeletionReason) String() string { @@ -1241,6 +1322,30 @@ func (this *EncryptedPassword) Equal(that interface{}) bool { } return true } +func (this *TenantControlConfig) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TenantControlConfig) + if !ok { + that2, ok := that.(TenantControlConfig) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.TenantNodePercent != that1.TenantNodePercent { + return false + } + return true +} func (this *GlobalSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -1348,6 +1453,12 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.CrmInfo.Equal(that1.CrmInfo) { return false } + if !this.TenantControl.Equal(that1.TenantControl) { + return false + } + if this.Origin != that1.Origin { + return false + } return true } func (this *CredentialsExpiry) Equal(that interface{}) bool { @@ -1442,11 +1553,21 @@ func (this *EncryptedPassword) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *TenantControlConfig) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&tenant.TenantControlConfig{") + s = append(s, "TenantNodePercent: "+fmt.Sprintf("%#v", this.TenantNodePercent)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 25) + s := make([]string, 0, 27) s = append(s, "&tenant.GlobalSpecType{") s = append(s, "PublicVip: "+fmt.Sprintf("%#v", this.PublicVip)+",\n") s = append(s, "Deleted: "+fmt.Sprintf("%#v", this.Deleted)+",\n") @@ -1483,6 +1604,10 @@ func (this *GlobalSpecType) GoString() string { if this.CrmInfo != nil { s = append(s, "CrmInfo: "+fmt.Sprintf("%#v", this.CrmInfo)+",\n") } + if this.TenantControl != nil { + s = append(s, "TenantControl: "+fmt.Sprintf("%#v", this.TenantControl)+",\n") + } + s = append(s, "Origin: "+fmt.Sprintf("%#v", this.Origin)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -1658,6 +1783,34 @@ func (m *EncryptedPassword) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *TenantControlConfig) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *TenantControlConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TenantControlConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TenantNodePercent != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.TenantNodePercent)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1678,6 +1831,27 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Origin != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Origin)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb8 + } + if m.TenantControl != nil { + { + size, err := m.TenantControl.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 + } if m.CrmInfo != nil { { size, err := m.CrmInfo.MarshalToSizedBuffer(dAtA[:i]) @@ -2016,6 +2190,18 @@ func (m *EncryptedPassword) Size() (n int) { return n } +func (m *TenantControlConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TenantNodePercent != 0 { + n += 1 + sovTypes(uint64(m.TenantNodePercent)) + } + return n +} + func (m *GlobalSpecType) Size() (n int) { if m == nil { return 0 @@ -2106,6 +2292,13 @@ func (m *GlobalSpecType) Size() (n int) { l = m.CrmInfo.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.TenantControl != nil { + l = m.TenantControl.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.Origin != 0 { + n += 2 + sovTypes(uint64(m.Origin)) + } return n } @@ -2179,6 +2372,16 @@ func (this *EncryptedPassword) String() string { }, "") return s } +func (this *TenantControlConfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TenantControlConfig{`, + `TenantNodePercent:` + fmt.Sprintf("%v", this.TenantNodePercent) + `,`, + `}`, + }, "") + return s +} func (this *GlobalSpecType) String() string { if this == nil { return "nil" @@ -2225,6 +2428,8 @@ func (this *GlobalSpecType) String() string { `SiteNetworkStack:` + strings.Replace(fmt.Sprintf("%v", this.SiteNetworkStack), "NetworkingStackType", "schema.NetworkingStackType", 1) + `,`, `State:` + fmt.Sprintf("%v", this.State) + `,`, `CrmInfo:` + strings.Replace(fmt.Sprintf("%v", this.CrmInfo), "CRMInfo", "schema.CRMInfo", 1) + `,`, + `TenantControl:` + strings.Replace(this.TenantControl.String(), "TenantControlConfig", "TenantControlConfig", 1) + `,`, + `Origin:` + fmt.Sprintf("%v", this.Origin) + `,`, `}`, }, "") return s @@ -2706,6 +2911,78 @@ func (m *EncryptedPassword) Unmarshal(dAtA []byte) error { } return nil } +func (m *TenantControlConfig) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TenantControlConfig: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TenantControlConfig: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantNodePercent", wireType) + } + m.TenantNodePercent = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TenantNodePercent |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -3300,6 +3577,61 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 22: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantControl", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TenantControl == nil { + m.TenantControl = &TenantControlConfig{} + } + if err := m.TenantControl.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 23: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Origin", wireType) + } + m.Origin = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Origin |= schema.SignupOrigin(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/tenant/types.vesmsg.go b/pbgo/extschema/schema/tenant/types.vesmsg.go index a667eb25d..1b9d38f63 100644 --- a/pbgo/extschema/schema/tenant/types.vesmsg.go +++ b/pbgo/extschema/schema/tenant/types.vesmsg.go @@ -767,6 +767,22 @@ func (v *ValidateGlobalSpecType) DownstreamCosValidationRuleHandler(rules map[st return validatorFn, nil } +func (v *ValidateGlobalSpecType) OriginValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.SignupOrigin) + return int32(i) + } + // ves_io_schema.SignupOrigin_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema.SignupOrigin_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for origin") + } + + return validatorFn, nil +} + func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*GlobalSpecType) if !ok { @@ -863,6 +879,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["origin"]; exists { + + vOpts := append(opts, db.WithValidateField("origin")) + if err := fv(ctx, m.GetOrigin(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["plan_type"]; exists { vOpts := append(opts, db.WithValidateField("plan_type")) @@ -937,6 +962,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["tenant_control"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_control")) + if err := fv(ctx, m.GetTenantControl(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["tenant_fqdn"]; exists { vOpts := append(opts, db.WithValidateField("tenant_fqdn")) @@ -1045,7 +1079,7 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { vrhAddonServicesSubscribed := v.AddonServicesSubscribedValidationRuleHandler rulesAddonServicesSubscribed := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.max_items": "128", } vFn, err = vrhAddonServicesSubscribed(rulesAddonServicesSubscribed) if err != nil { @@ -1076,6 +1110,17 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { } v.FldValidators["downstream_cos"] = vFn + vrhOrigin := v.OriginValidationRuleHandler + rulesOrigin := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOrigin(rulesOrigin) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.origin: %s", err) + panic(errMsg) + } + v.FldValidators["origin"] = vFn + v.FldValidators["k8s_server_sub_cas"] = SubCAValidator().Validate v.FldValidators["proxy_root_cas"] = CAValidator().Validate @@ -1084,6 +1129,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["crm_info"] = ves_io_schema.CRMInfoValidator().Validate + v.FldValidators["tenant_control"] = TenantControlConfigValidator().Validate + return v }() @@ -1197,3 +1244,111 @@ var DefaultSubCAValidator = func() *ValidateSubCA { func SubCAValidator() db.Validator { return DefaultSubCAValidator } + +// augmented methods on protoc/std generated struct + +func (m *TenantControlConfig) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *TenantControlConfig) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *TenantControlConfig) DeepCopy() *TenantControlConfig { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &TenantControlConfig{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *TenantControlConfig) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *TenantControlConfig) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return TenantControlConfigValidator().Validate(ctx, m, opts...) +} + +type ValidateTenantControlConfig struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateTenantControlConfig) TenantNodePercentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewInt32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for tenant_node_percent") + } + + return validatorFn, nil +} + +func (v *ValidateTenantControlConfig) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*TenantControlConfig) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *TenantControlConfig got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["tenant_node_percent"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_node_percent")) + if err := fv(ctx, m.GetTenantNodePercent(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultTenantControlConfigValidator = func() *ValidateTenantControlConfig { + v := &ValidateTenantControlConfig{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTenantNodePercent := v.TenantNodePercentValidationRuleHandler + rulesTenantNodePercent := map[string]string{ + "ves.io.schema.rules.int32.gte": "10", + "ves.io.schema.rules.int32.lte": "100", + } + vFn, err = vrhTenantNodePercent(rulesTenantNodePercent) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for TenantControlConfig.tenant_node_percent: %s", err) + panic(errMsg) + } + v.FldValidators["tenant_node_percent"] = vFn + + return v +}() + +func TenantControlConfigValidator() db.Validator { + return DefaultTenantControlConfigValidator +} diff --git a/pbgo/extschema/schema/token/crudapi/api.vesapi.go b/pbgo/extschema/schema/token/crudapi/api.vesapi.go index 3ab4760e4..2f0cd600c 100644 --- a/pbgo/extschema/schema/token/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/token/crudapi/api.vesapi.go @@ -2998,10 +2998,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/token/object.pb.go b/pbgo/extschema/schema/token/object.pb.go index 3bf48b427..5386a06ab 100644 --- a/pbgo/extschema/schema/token/object.pb.go +++ b/pbgo/extschema/schema/token/object.pb.go @@ -230,45 +230,46 @@ func init() { } var fileDescriptor_6e3dfacd74d06f83 = []byte{ - // 602 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0x80, 0x3b, 0xbb, 0xb0, 0x90, 0x81, 0xa0, 0xa9, 0x97, 0x0a, 0x3a, 0x92, 0xf5, 0xc2, 0x81, - 0xb6, 0x01, 0xe2, 0x41, 0x42, 0xd0, 0x80, 0xba, 0x9a, 0x40, 0x4c, 0x16, 0x4f, 0x5e, 0xc8, 0x74, - 0xf6, 0xb5, 0x8c, 0x6c, 0x3b, 0xcd, 0xcc, 0x74, 0x85, 0x83, 0x89, 0x31, 0x26, 0x5e, 0xfd, 0x19, - 0xc6, 0x5f, 0x21, 0x9e, 0x4c, 0xbc, 0x10, 0x4e, 0x1c, 0xa5, 0x7b, 0xe1, 0x62, 0x42, 0xfc, 0x05, - 0x86, 0x29, 0x25, 0x2c, 0xa9, 0xc6, 0x44, 0x6e, 0xd3, 0xbc, 0x6f, 0xbe, 0xbe, 0x99, 0xf7, 0xe6, - 0xe1, 0xe9, 0x1e, 0x28, 0x8f, 0x0b, 0x5f, 0xb1, 0x2d, 0x88, 0xa9, 0xaf, 0xc5, 0x36, 0x24, 0xbe, - 0x08, 0x5e, 0x01, 0xd3, 0x5e, 0x2a, 0x85, 0x16, 0xf6, 0x8d, 0x82, 0xf0, 0x0a, 0xc2, 0x33, 0xc4, - 0xa4, 0x1b, 0x71, 0xbd, 0x95, 0x05, 0x1e, 0x13, 0xb1, 0x1f, 0x89, 0x48, 0xf8, 0x86, 0x0d, 0xb2, - 0xd0, 0x7c, 0x99, 0x0f, 0xb3, 0x2a, 0x1c, 0x93, 0x53, 0x83, 0x7f, 0x11, 0xa9, 0xe6, 0x22, 0x51, - 0x67, 0xc1, 0x3b, 0x55, 0x29, 0xe8, 0xdd, 0x14, 0x4a, 0xe0, 0xe6, 0x25, 0xe0, 0x42, 0xa8, 0x39, - 0x18, 0xea, 0x81, 0x82, 0xa4, 0x37, 0xe8, 0x6f, 0x7e, 0x1f, 0xc2, 0x8d, 0xe7, 0xe6, 0x44, 0xf6, - 0x7d, 0x3c, 0x1a, 0x83, 0xa6, 0x1d, 0xaa, 0xa9, 0x83, 0xa6, 0xd1, 0xcc, 0xd8, 0xfc, 0x6d, 0x6f, - 0xf0, 0x78, 0x05, 0xb8, 0x0e, 0x9a, 0xbe, 0xd8, 0x4d, 0xa1, 0x7d, 0x8e, 0xdb, 0x6b, 0xf8, 0x9a, - 0xda, 0x55, 0x1a, 0xe2, 0xcd, 0x73, 0x43, 0xcd, 0x18, 0xee, 0x5e, 0x32, 0x6c, 0x18, 0xea, 0x92, - 0x67, 0xa2, 0xd8, 0xbb, 0x5e, 0xda, 0xe6, 0xf0, 0x90, 0x4a, 0x81, 0x39, 0xf5, 0xca, 0x24, 0xcc, - 0x15, 0x78, 0x1b, 0x29, 0x30, 0xb3, 0xd9, 0xa0, 0x8b, 0xef, 0xeb, 0xbf, 0x96, 0x87, 0xe7, 0x66, - 0xe7, 0x67, 0x17, 0xde, 0x3d, 0x68, 0x14, 0xba, 0xaf, 0x7b, 0x4e, 0xed, 0x21, 0x3a, 0xd8, 0x73, - 0x8e, 0x6b, 0xf8, 0x31, 0xae, 0xb7, 0x40, 0xdb, 0xcb, 0xe1, 0xbd, 0x1d, 0xe6, 0x2a, 0xae, 0xc1, - 0x8d, 0x69, 0x42, 0x23, 0x88, 0x21, 0xd1, 0x6e, 0x40, 0x15, 0x67, 0x6e, 0x2c, 0x12, 0xae, 0x85, - 0x9c, 0x3d, 0xad, 0xb9, 0xcb, 0x85, 0xcb, 0x93, 0x50, 0x52, 0xa5, 0x65, 0xc6, 0x74, 0x26, 0xc1, - 0x95, 0x40, 0x3b, 0xb8, 0x85, 0x47, 0xda, 0x90, 0x76, 0x29, 0x03, 0x7b, 0xe9, 0x2f, 0xaa, 0x4c, - 0xc1, 0x1f, 0x3d, 0xaf, 0x25, 0xd7, 0x80, 0x9f, 0xe0, 0xc6, 0xaa, 0x04, 0xaa, 0xaf, 0xc0, 0xf3, - 0x08, 0xba, 0x70, 0x05, 0x9e, 0xa1, 0x35, 0xae, 0xfe, 0xfb, 0x82, 0x9a, 0x4f, 0xf1, 0x68, 0x59, - 0x18, 0x7b, 0x09, 0x8f, 0x44, 0x6c, 0xd3, 0x14, 0x12, 0x55, 0xf6, 0x42, 0x51, 0xc8, 0x56, 0x57, - 0x04, 0xb4, 0x7b, 0x5e, 0xce, 0x46, 0xc4, 0x4e, 0xd7, 0xcd, 0x9f, 0x08, 0x8f, 0x6f, 0x68, 0xaa, - 0x33, 0xf5, 0xcf, 0xdd, 0x59, 0xe0, 0x15, 0xdd, 0xd9, 0xc2, 0x63, 0xc5, 0xa3, 0xdd, 0x94, 0x10, - 0x2a, 0xa7, 0x36, 0x5d, 0x9f, 0x19, 0x9b, 0xbf, 0x55, 0xd9, 0xdb, 0x6d, 0x08, 0x4f, 0x37, 0xaf, - 0x8c, 0x7e, 0x7e, 0x33, 0x6c, 0xf2, 0x6b, 0x63, 0x51, 0x06, 0x94, 0xbd, 0x84, 0x31, 0x13, 0x49, - 0x87, 0x9b, 0x07, 0xe4, 0xd4, 0x2b, 0x3d, 0xab, 0x25, 0x60, 0x92, 0xb8, 0xc0, 0x2f, 0x4e, 0x1d, - 0x2c, 0x5f, 0xc7, 0x13, 0x78, 0xbc, 0xcc, 0xcb, 0xcb, 0x78, 0xa7, 0xec, 0xda, 0x95, 0x0f, 0x68, - 0xff, 0x88, 0x58, 0x87, 0x47, 0xc4, 0x3a, 0x39, 0x22, 0xe8, 0x6d, 0x4e, 0xd0, 0xa7, 0x9c, 0xa0, - 0x6f, 0x39, 0x41, 0xfb, 0x39, 0x41, 0x87, 0x39, 0x41, 0x3f, 0x72, 0x82, 0x8e, 0x73, 0x62, 0x9d, - 0xe4, 0x04, 0x7d, 0xec, 0x13, 0xeb, 0x4b, 0x9f, 0xa0, 0xfd, 0x3e, 0xb1, 0x0e, 0xfb, 0xc4, 0x7a, - 0xf9, 0x2c, 0x12, 0xe9, 0x76, 0xe4, 0xf5, 0x44, 0x57, 0x83, 0x94, 0xd4, 0xcb, 0x94, 0x6f, 0x16, - 0xa1, 0x90, 0xb1, 0x9b, 0x4a, 0xd1, 0xe3, 0x1d, 0x90, 0x6e, 0x19, 0xf6, 0xd3, 0x20, 0x12, 0x3e, - 0xec, 0xe8, 0xb3, 0xc9, 0x70, 0x71, 0xb8, 0x04, 0x0d, 0x33, 0x18, 0x16, 0x7e, 0x07, 0x00, 0x00, - 0xff, 0xff, 0x4e, 0x0c, 0x38, 0xbd, 0xfd, 0x04, 0x00, 0x00, + // 619 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0xd8, 0x65, 0x21, 0x03, 0x41, 0x53, 0x2f, 0x2b, 0xe8, 0xb8, 0x59, 0x2f, 0x1c, + 0x68, 0x1b, 0x20, 0x1e, 0x24, 0x04, 0x0d, 0x98, 0xa0, 0x09, 0xc4, 0x64, 0xf1, 0xe4, 0x05, 0xa7, + 0xd3, 0xb7, 0x65, 0xa0, 0xed, 0x34, 0x33, 0xd3, 0x0a, 0x07, 0x13, 0x63, 0x62, 0xbc, 0xfa, 0x19, + 0x3c, 0x19, 0x3f, 0x84, 0x11, 0x4f, 0x1e, 0x09, 0x27, 0x8e, 0xd2, 0xbd, 0x78, 0x31, 0x21, 0x7e, + 0x02, 0xc3, 0x94, 0x22, 0x4b, 0x1a, 0xf5, 0xc4, 0x6d, 0x26, 0xef, 0xf7, 0xfe, 0xff, 0x37, 0xed, + 0x7b, 0x0f, 0xb7, 0x33, 0x50, 0x0e, 0x17, 0xae, 0x62, 0x5b, 0x10, 0x51, 0x57, 0x8b, 0x1d, 0x88, + 0x5d, 0xe1, 0x6d, 0x03, 0xd3, 0x4e, 0x22, 0x85, 0x16, 0xd6, 0x8d, 0x82, 0x70, 0x0a, 0xc2, 0x31, + 0xc4, 0xa4, 0x1d, 0x70, 0xbd, 0x95, 0x7a, 0x0e, 0x13, 0x91, 0x1b, 0x88, 0x40, 0xb8, 0x86, 0xf5, + 0xd2, 0x9e, 0xb9, 0x99, 0x8b, 0x39, 0x15, 0x1a, 0x93, 0x53, 0x83, 0x2e, 0x22, 0xd1, 0x5c, 0xc4, + 0xea, 0x2c, 0x78, 0xa7, 0xaa, 0x04, 0xbd, 0x97, 0x40, 0x09, 0xdc, 0xbc, 0x04, 0x5c, 0x08, 0x75, + 0x06, 0x43, 0x19, 0x28, 0x88, 0xb3, 0x41, 0xfd, 0xce, 0xdb, 0x26, 0x6e, 0x3e, 0x35, 0x2f, 0xb2, + 0xee, 0xe3, 0xd1, 0x08, 0x34, 0xf5, 0xa9, 0xa6, 0x2d, 0xd4, 0x46, 0xd3, 0x63, 0x73, 0xb7, 0x9d, + 0xc1, 0xe7, 0x15, 0xe0, 0x3a, 0x68, 0xfa, 0x6c, 0x2f, 0x81, 0xee, 0x39, 0x6e, 0xad, 0xe1, 0x6b, + 0x6a, 0x4f, 0x69, 0x88, 0x36, 0xcf, 0x15, 0x86, 0x8c, 0xc2, 0xdd, 0x4b, 0x0a, 0x1b, 0x86, 0xba, + 0xa4, 0x33, 0x51, 0xe4, 0xae, 0x97, 0x6a, 0xb3, 0xb8, 0xa1, 0x12, 0x60, 0xad, 0x7a, 0x65, 0x11, + 0xe6, 0x13, 0x38, 0x1b, 0x09, 0x30, 0x93, 0x6c, 0xd0, 0x85, 0xcf, 0x8d, 0x5f, 0x4b, 0xc3, 0xb3, + 0x33, 0x73, 0x33, 0xf3, 0x6f, 0x1e, 0x34, 0x0b, 0xb9, 0xaf, 0xfb, 0xad, 0xa1, 0x87, 0xe8, 0x70, + 0xbf, 0xf5, 0xa1, 0x81, 0x43, 0x5c, 0x5f, 0x05, 0x6d, 0x41, 0xef, 0xde, 0x2e, 0xb3, 0x15, 0xd7, + 0x60, 0x47, 0x34, 0xa6, 0x01, 0x44, 0x10, 0x6b, 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x12, 0x31, 0xd7, + 0x42, 0xce, 0xb4, 0x2b, 0x19, 0xa5, 0x69, 0xec, 0x53, 0xe9, 0xff, 0xc1, 0x32, 0x50, 0x36, 0x17, + 0x36, 0x8f, 0x7b, 0x92, 0x2a, 0x2d, 0x53, 0xa6, 0x53, 0x09, 0xb6, 0x04, 0xea, 0xe3, 0x1d, 0x3c, + 0xd2, 0x85, 0x24, 0xa4, 0x0c, 0xac, 0x17, 0x7f, 0x71, 0x4c, 0x15, 0xfc, 0xd3, 0xae, 0x60, 0xaa, + 0xbd, 0x5e, 0x4a, 0xae, 0x01, 0x6f, 0xe3, 0xe6, 0x8a, 0x04, 0xaa, 0xaf, 0xc8, 0xeb, 0x11, 0x84, + 0x70, 0x25, 0x5e, 0x11, 0x6e, 0xac, 0x71, 0x75, 0x55, 0xff, 0xac, 0xf3, 0x18, 0x8f, 0x96, 0x2d, + 0x65, 0x2d, 0xe2, 0x91, 0x80, 0x6d, 0x9a, 0x16, 0x44, 0x95, 0x5d, 0x5c, 0xb4, 0xe0, 0x6a, 0x28, + 0x3c, 0x1a, 0x9e, 0x37, 0x62, 0x33, 0x60, 0xa7, 0xe7, 0xce, 0x4f, 0x84, 0xc7, 0x37, 0x34, 0xd5, + 0xa9, 0xfa, 0xef, 0xb9, 0x2a, 0xf0, 0x8a, 0xb9, 0x5a, 0xc5, 0x63, 0xc5, 0xba, 0xd9, 0x94, 0xd0, + 0x53, 0xad, 0xa1, 0x76, 0x7d, 0x7a, 0x6c, 0xee, 0x56, 0xe5, 0x54, 0x76, 0xa1, 0x77, 0x9a, 0xbc, + 0x3c, 0xfa, 0xe9, 0xd5, 0xb0, 0xa9, 0xaf, 0x8b, 0x45, 0x19, 0x50, 0xd6, 0x22, 0xc6, 0x4c, 0xc4, + 0x3e, 0x37, 0xa3, 0xdf, 0xaa, 0x57, 0xea, 0xac, 0x94, 0x80, 0x29, 0xe2, 0x02, 0xbf, 0x30, 0x75, + 0xb8, 0x74, 0x1d, 0x4f, 0xe0, 0xf1, 0xb2, 0x2e, 0x27, 0xe5, 0x7e, 0x39, 0x6f, 0xcb, 0xef, 0xd0, + 0xc1, 0x31, 0xa9, 0x1d, 0x1d, 0x93, 0xda, 0xc9, 0x31, 0x41, 0xaf, 0x73, 0x82, 0x3e, 0xe6, 0x04, + 0x7d, 0xcb, 0x09, 0x3a, 0xc8, 0x09, 0x3a, 0xca, 0x09, 0xfa, 0x9e, 0x13, 0xf4, 0x23, 0x27, 0xb5, + 0x93, 0x9c, 0xa0, 0xf7, 0x7d, 0x52, 0xfb, 0xd2, 0x27, 0xe8, 0xa0, 0x4f, 0x6a, 0x47, 0x7d, 0x52, + 0x7b, 0xfe, 0x24, 0x10, 0xc9, 0x4e, 0xe0, 0x64, 0x22, 0xd4, 0x20, 0x25, 0x75, 0x52, 0xe5, 0x9a, + 0x43, 0x4f, 0xc8, 0xc8, 0x4e, 0xa4, 0xc8, 0xb8, 0x0f, 0xd2, 0x2e, 0xc3, 0x6e, 0xe2, 0x05, 0xc2, + 0x85, 0x5d, 0x7d, 0xb6, 0xd3, 0x2e, 0xae, 0x45, 0xaf, 0x69, 0x56, 0xda, 0xfc, 0xef, 0x00, 0x00, + 0x00, 0xff, 0xff, 0x49, 0x89, 0x10, 0xcb, 0xb7, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/token/public_crudapi.pb.go b/pbgo/extschema/schema/token/public_crudapi.pb.go index 233413339..dd589c3e8 100644 --- a/pbgo/extschema/schema/token/public_crudapi.pb.go +++ b/pbgo/extschema/schema/token/public_crudapi.pb.go @@ -1059,108 +1059,109 @@ func init() { } var fileDescriptor_388f4106763b575e = []byte{ - // 1604 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0xdb, 0xc8, - 0x15, 0xf6, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0x43, 0x3b, 0xbb, 0xeb, 0x95, 0xd5, 0x54, 0xab, 0x28, - 0xde, 0xd6, 0x30, 0x56, 0xd4, 0xc6, 0x41, 0x8b, 0xc6, 0x69, 0xdd, 0xc8, 0x32, 0xe5, 0x2a, 0x75, - 0x62, 0x83, 0x52, 0x82, 0xa0, 0x17, 0x82, 0xa2, 0x9e, 0x14, 0xd6, 0x12, 0xc9, 0x92, 0x23, 0x39, - 0x42, 0x61, 0xa0, 0xc8, 0xa9, 0x40, 0x2f, 0x05, 0x72, 0x2b, 0x7a, 0xc8, 0xa5, 0x40, 0xff, 0x84, - 0x02, 0x2e, 0xd0, 0x00, 0x3d, 0x24, 0x48, 0x81, 0x20, 0x68, 0x2f, 0xe9, 0xa9, 0x8d, 0xdc, 0x43, - 0x8e, 0x49, 0xff, 0x82, 0x05, 0x67, 0x48, 0x45, 0x92, 0x69, 0x59, 0x4e, 0x7c, 0x12, 0x67, 0xde, - 0xfb, 0x3e, 0xbe, 0x8f, 0xef, 0x07, 0x47, 0xc4, 0xcb, 0x1d, 0xb0, 0x05, 0xcd, 0xc8, 0xd9, 0xea, - 0x7d, 0x68, 0x29, 0x39, 0x6a, 0xec, 0x81, 0x9e, 0x33, 0xdb, 0xd5, 0xa6, 0xa6, 0xca, 0xaa, 0xd5, - 0xae, 0x29, 0xa6, 0x26, 0x98, 0x96, 0x41, 0x0d, 0xf2, 0x29, 0xf7, 0x14, 0xb8, 0xa7, 0xc0, 0x3c, - 0x93, 0xd9, 0x86, 0x46, 0xef, 0xb7, 0xab, 0x82, 0x6a, 0xb4, 0x72, 0x0d, 0xa3, 0x61, 0xe4, 0x98, - 0x6f, 0xb5, 0x5d, 0x67, 0x2b, 0xb6, 0x60, 0x57, 0x9c, 0x23, 0x79, 0xb1, 0x61, 0x18, 0x8d, 0x26, - 0xe4, 0x14, 0x53, 0xcb, 0x29, 0xba, 0x6e, 0x50, 0x85, 0x6a, 0x86, 0x6e, 0xbb, 0xd6, 0xef, 0xb8, - 0xd6, 0x3e, 0x07, 0xb4, 0x4c, 0xda, 0x75, 0x8d, 0xc9, 0xe1, 0x40, 0xc1, 0xb2, 0x0c, 0xab, 0x0f, - 0x1c, 0xb6, 0x19, 0xe6, 0x20, 0x6b, 0xda, 0x4f, 0xa1, 0x51, 0xfd, 0x25, 0xa8, 0xd4, 0xf5, 0xf8, - 0xd2, 0xcf, 0x83, 0x76, 0x4d, 0xf0, 0x28, 0x16, 0x47, 0x1c, 0x06, 0x4c, 0x99, 0x61, 0x53, 0x07, - 0x6c, 0xd0, 0x3b, 0xe3, 0x23, 0xe8, 0x68, 0xb0, 0x2f, 0x0f, 0x79, 0x64, 0xfe, 0x84, 0xf0, 0x6c, - 0xc1, 0x02, 0x85, 0x82, 0x04, 0xbf, 0x6a, 0x83, 0x4d, 0xc9, 0x4f, 0x71, 0xa4, 0x05, 0x54, 0xa9, - 0x29, 0x54, 0x49, 0xa0, 0x34, 0x5a, 0x8e, 0xad, 0x5e, 0x16, 0x86, 0x13, 0xb0, 0xc3, 0x24, 0x70, - 0xd4, 0x2d, 0xa0, 0x4a, 0xa5, 0x6b, 0x82, 0xd4, 0x07, 0x91, 0x9f, 0xe1, 0x90, 0x6d, 0x82, 0x9a, - 0x08, 0xf8, 0x82, 0x99, 0x46, 0x81, 0x83, 0xcb, 0x26, 0xa8, 0x0e, 0x78, 0x63, 0xfe, 0x0f, 0x07, - 0x33, 0x0e, 0x46, 0x68, 0xa8, 0xb2, 0xf3, 0x2b, 0x31, 0x86, 0xb5, 0xe8, 0xf3, 0xf5, 0x30, 0xbf, - 0x59, 0xe6, 0x1d, 0xc2, 0x73, 0x5e, 0x9c, 0xb6, 0x69, 0xe8, 0x36, 0x90, 0x1f, 0x1f, 0x0b, 0x34, - 0xed, 0x1b, 0xe8, 0x16, 0x50, 0x9f, 0x28, 0x77, 0xf0, 0xbc, 0xdd, 0xb5, 0x29, 0xb4, 0xe4, 0x3e, - 0x49, 0x90, 0x91, 0x7c, 0x6f, 0x84, 0xa4, 0xcc, 0xbc, 0x8e, 0x53, 0xcd, 0x71, 0xf8, 0x2d, 0x8f, - 0x50, 0x1c, 0x92, 0x9d, 0xf6, 0x95, 0xbd, 0x05, 0xf4, 0x0c, 0x9a, 0xff, 0x8d, 0xf0, 0x9c, 0x04, - 0x66, 0x53, 0x51, 0xfb, 0xc9, 0xb9, 0x71, 0x4c, 0xf3, 0x92, 0xaf, 0x66, 0x17, 0xe6, 0xa3, 0xbb, - 0x34, 0x14, 0xe6, 0x92, 0x6f, 0x98, 0x2e, 0xfa, 0x94, 0x50, 0x49, 0x0e, 0xc7, 0x2d, 0xb0, 0x8d, - 0xb6, 0xa5, 0x82, 0xdc, 0x01, 0xcb, 0xd6, 0x0c, 0x9d, 0x3d, 0xc3, 0xe8, 0x46, 0xe8, 0xcd, 0x21, - 0x42, 0xd2, 0xbc, 0x67, 0xbd, 0xcb, 0x8d, 0x83, 0xda, 0x3e, 0xc1, 0xf3, 0x7d, 0x69, 0x3c, 0x9f, - 0x99, 0x47, 0x08, 0xe3, 0x2d, 0xa0, 0x9e, 0xd4, 0x8b, 0x38, 0xaa, 0x2b, 0x2d, 0xb0, 0x4d, 0x45, - 0x05, 0xa6, 0x35, 0x2a, 0xbd, 0xdf, 0x20, 0x04, 0x87, 0x9c, 0x05, 0x93, 0x11, 0x95, 0xd8, 0x35, - 0x29, 0x63, 0xe7, 0x8e, 0x8c, 0x4c, 0xae, 0x1b, 0x56, 0x4b, 0xa1, 0x2c, 0x9c, 0xb9, 0xd5, 0x95, - 0x93, 0x92, 0xe1, 0xdd, 0xbb, 0xc8, 0xbc, 0x0b, 0x46, 0x0d, 0xa4, 0x39, 0x6b, 0x68, 0x2f, 0xf3, - 0x6e, 0x1a, 0xc7, 0x06, 0x3c, 0x49, 0x01, 0xc7, 0x54, 0x56, 0x87, 0xec, 0x16, 0xee, 0x63, 0xcc, - 0x8c, 0x29, 0x72, 0x57, 0x8f, 0x84, 0x39, 0xcc, 0xa1, 0x25, 0x45, 0x3c, 0x63, 0x71, 0xf5, 0x9c, - 0x25, 0x38, 0xa6, 0x55, 0x86, 0x2b, 0x40, 0x8a, 0xb9, 0x40, 0xc6, 0xe3, 0x97, 0x81, 0xd0, 0x98, - 0x0c, 0x0c, 0xf5, 0xcc, 0xf4, 0x79, 0xf4, 0xcc, 0x85, 0x73, 0xe9, 0x99, 0xf0, 0x47, 0xf5, 0x0c, - 0xb9, 0x81, 0xc3, 0x36, 0x55, 0x68, 0xdb, 0x4e, 0x3c, 0xfe, 0x23, 0x4a, 0x07, 0x97, 0x63, 0xab, - 0x97, 0x7c, 0xa9, 0xca, 0xcc, 0x89, 0x87, 0xb5, 0x11, 0x7c, 0x72, 0x80, 0x24, 0x17, 0x47, 0x4a, - 0xf8, 0x13, 0x0b, 0xea, 0x60, 0x59, 0x9a, 0xde, 0x90, 0xf9, 0x88, 0xb6, 0x13, 0x11, 0x46, 0x75, - 0xf1, 0x84, 0x06, 0xab, 0x33, 0x45, 0xf1, 0x3e, 0x8c, 0xef, 0xdb, 0xe4, 0x2e, 0x4e, 0xd4, 0xa0, - 0x09, 0x14, 0x6a, 0x32, 0xb7, 0x41, 0xad, 0xcf, 0x18, 0x9d, 0x80, 0x71, 0xc1, 0x45, 0x4b, 0x2e, - 0xd8, 0xe3, 0xbd, 0x87, 0x17, 0x6b, 0x9a, 0xad, 0x54, 0x9b, 0x7e, 0xc4, 0x78, 0x02, 0xe2, 0x2f, - 0x3c, 0xf8, 0x08, 0xf3, 0x40, 0x5b, 0xde, 0x0c, 0x45, 0x50, 0x3c, 0xe0, 0xbc, 0x14, 0x62, 0xdb, - 0x9a, 0x3d, 0x61, 0x2b, 0x5e, 0xc2, 0x33, 0x4d, 0xa5, 0x0a, 0x4d, 0xb9, 0xae, 0x35, 0x29, 0x58, - 0x6e, 0x4b, 0xc6, 0xd8, 0x5e, 0x91, 0x6d, 0x91, 0xcb, 0x78, 0xd6, 0x02, 0xd3, 0xb0, 0xa8, 0x5c, - 0xd7, 0xa0, 0x59, 0xb3, 0x13, 0xc1, 0x74, 0x70, 0x39, 0x2a, 0xcd, 0xf0, 0xcd, 0x22, 0xdb, 0x23, - 0xdf, 0xe0, 0xcf, 0x5c, 0x27, 0x9e, 0x14, 0xcf, 0x37, 0xc4, 0x7c, 0x09, 0xb7, 0xf1, 0x14, 0x72, - 0x44, 0xe6, 0x71, 0x18, 0xc7, 0x79, 0x9c, 0xbc, 0x39, 0x4b, 0x14, 0x5a, 0x64, 0x01, 0x87, 0x29, - 0xe8, 0x8a, 0x4e, 0x59, 0x55, 0x45, 0x25, 0x77, 0xf5, 0x01, 0xf3, 0x24, 0x8e, 0x83, 0x6d, 0xad, - 0xc6, 0x47, 0x9a, 0xe4, 0x5c, 0x92, 0x34, 0x8e, 0xd5, 0xc0, 0x56, 0x2d, 0x8d, 0xbd, 0x43, 0x13, - 0x31, 0xae, 0x74, 0x60, 0x8b, 0x24, 0x71, 0xc4, 0x7b, 0xcc, 0x89, 0x99, 0x34, 0x5a, 0x8e, 0x48, - 0xfd, 0x35, 0x29, 0xe1, 0x30, 0x7b, 0x28, 0x5c, 0x52, 0x6c, 0xf5, 0x8a, 0x6f, 0x91, 0x8e, 0x0a, - 0x12, 0xb6, 0x19, 0x46, 0xd4, 0xa9, 0xd5, 0x95, 0x5c, 0x02, 0x72, 0x0f, 0xc7, 0x06, 0x4e, 0x31, - 0x6e, 0xfa, 0x7f, 0x38, 0x19, 0x5f, 0xfe, 0x3d, 0x90, 0x93, 0x0e, 0x52, 0x91, 0x6b, 0x18, 0x1b, - 0xfb, 0x3a, 0x58, 0xb2, 0x73, 0x58, 0x48, 0x44, 0x59, 0x63, 0x26, 0x47, 0x88, 0xef, 0x6a, 0xb0, - 0xef, 0x55, 0x55, 0x94, 0x79, 0x3b, 0x3b, 0x43, 0xc3, 0x65, 0xf6, 0x3c, 0x86, 0xcb, 0xdc, 0x47, - 0x0d, 0x97, 0xeb, 0x38, 0xd2, 0x00, 0xca, 0xe6, 0x84, 0x3b, 0xa6, 0x4e, 0x1d, 0x30, 0xd2, 0x85, - 0x06, 0x5f, 0x10, 0x11, 0x63, 0xb7, 0x0a, 0x6d, 0xa0, 0xee, 0x24, 0x98, 0x74, 0xa8, 0x44, 0x39, - 0xb2, 0x0c, 0x34, 0x79, 0x0d, 0xc7, 0x06, 0xd2, 0xe7, 0x54, 0xd4, 0x1e, 0x74, 0xdd, 0xea, 0x73, - 0x2e, 0xc9, 0x67, 0x78, 0xba, 0xa3, 0x34, 0xdb, 0x5e, 0xe1, 0xf1, 0xc5, 0x5a, 0xe0, 0x47, 0x28, - 0xb9, 0x8e, 0xe3, 0xa3, 0x99, 0x3a, 0x0b, 0xfe, 0x66, 0x28, 0x32, 0x1d, 0x0f, 0x67, 0x0e, 0xf0, - 0xcc, 0x60, 0x01, 0x90, 0xeb, 0x78, 0x5a, 0xa3, 0xd0, 0xb2, 0x13, 0x7c, 0x4e, 0x7e, 0x35, 0x51, - 0xc9, 0x48, 0x1c, 0x43, 0xbe, 0xc1, 0x61, 0x7e, 0xfa, 0x4d, 0x04, 0x18, 0x3a, 0x31, 0x82, 0x16, - 0x1d, 0x23, 0x7b, 0x8e, 0xae, 0x5f, 0x66, 0x0f, 0xcf, 0x6e, 0xb2, 0x71, 0xf6, 0xe1, 0x6f, 0xf5, - 0x65, 0x1c, 0xaf, 0x2b, 0x5a, 0x53, 0xd6, 0xea, 0xfd, 0xb1, 0xc7, 0x5a, 0x32, 0x22, 0xcd, 0x39, - 0xfb, 0xa5, 0xba, 0x37, 0xce, 0x56, 0xfe, 0x8f, 0xf0, 0xe7, 0xbe, 0x2f, 0x75, 0x92, 0xc4, 0x0b, - 0x5b, 0x62, 0x45, 0x96, 0xca, 0xbb, 0x72, 0x71, 0x47, 0xba, 0x95, 0xaf, 0xc8, 0x9b, 0x62, 0x31, - 0x7f, 0x67, 0xbb, 0x12, 0x9f, 0x22, 0xdf, 0xc5, 0x8b, 0x23, 0xb6, 0xe2, 0x8e, 0x24, 0x17, 0x24, - 0x31, 0x5f, 0x11, 0xe3, 0x88, 0xa4, 0x70, 0xd2, 0xc7, 0x2c, 0x89, 0xbb, 0xdb, 0xf9, 0x82, 0x18, - 0x0f, 0x90, 0x45, 0xfc, 0xf9, 0x88, 0xbd, 0x5c, 0xc9, 0x57, 0xee, 0x94, 0xe3, 0x41, 0xf2, 0x05, - 0xfe, 0x74, 0xc4, 0x24, 0x89, 0xf9, 0xcd, 0x78, 0x88, 0x2c, 0xe1, 0xf4, 0x31, 0x43, 0x51, 0x94, - 0xa4, 0xd2, 0xed, 0x2d, 0x79, 0x67, 0xe3, 0xa6, 0x58, 0xa8, 0x94, 0xe3, 0xd3, 0x3e, 0x5e, 0x1b, - 0xd2, 0xce, 0xcf, 0xc5, 0xdb, 0xdc, 0x59, 0xbc, 0x5d, 0x10, 0xcb, 0xf1, 0xf0, 0xea, 0x8b, 0x08, - 0x0e, 0xe6, 0x77, 0x4b, 0xe4, 0x1f, 0x08, 0x87, 0xf9, 0x81, 0x83, 0x4c, 0x70, 0x1a, 0x49, 0x5e, - 0x1e, 0xeb, 0xe3, 0x9e, 0xc8, 0x1e, 0xf4, 0x9e, 0x26, 0xae, 0xd7, 0x7f, 0xf0, 0x40, 0xcd, 0xda, - 0x1a, 0x85, 0x6c, 0x4b, 0xd1, 0x95, 0x06, 0xb4, 0x40, 0xa7, 0xd9, 0xaa, 0x62, 0x6b, 0x6a, 0xb6, - 0x6d, 0x83, 0xf5, 0x75, 0x07, 0xec, 0xac, 0x66, 0x64, 0x35, 0xbd, 0x6e, 0x29, 0x36, 0xb5, 0xda, - 0x2a, 0x6d, 0x5b, 0x90, 0xdd, 0xb7, 0x34, 0x0a, 0x0f, 0xff, 0xf5, 0xbf, 0x47, 0x81, 0xab, 0x19, - 0xc1, 0xfd, 0x5b, 0x97, 0xeb, 0x27, 0xda, 0xce, 0xfd, 0xda, 0x6b, 0x72, 0xa1, 0xbf, 0x79, 0xc0, - 0xff, 0xff, 0xd8, 0x6b, 0x68, 0x85, 0xfc, 0x1d, 0xe1, 0xe0, 0x16, 0x50, 0xf2, 0xe5, 0xc9, 0x27, - 0x37, 0xae, 0x23, 0x7d, 0xda, 0xd1, 0x2e, 0xd3, 0x7d, 0xf6, 0x97, 0x00, 0xea, 0x3d, 0x4d, 0xfc, - 0x64, 0x8c, 0x90, 0x96, 0xa1, 0x6b, 0xd4, 0x38, 0x49, 0x8b, 0x05, 0x4a, 0x8d, 0x49, 0x11, 0xc8, - 0xd7, 0x7e, 0x52, 0x8e, 0x29, 0xe0, 0x5b, 0x07, 0xe4, 0x6f, 0x08, 0x87, 0x9c, 0x5e, 0x22, 0xe9, - 0x31, 0x6d, 0xc6, 0x75, 0x5c, 0x3a, 0xb5, 0x11, 0x33, 0xd6, 0xf9, 0x09, 0xf9, 0x3e, 0xf9, 0x6a, - 0x22, 0x21, 0xe4, 0x3f, 0x08, 0x5f, 0x70, 0x0f, 0xa0, 0x64, 0x92, 0xe3, 0x69, 0x72, 0x69, 0xbc, - 0x93, 0x2b, 0xe5, 0xb7, 0xe8, 0x3c, 0x2a, 0xab, 0x90, 0x5c, 0x3f, 0x5b, 0x65, 0x8d, 0xd8, 0x0e, - 0x9c, 0x4a, 0xfb, 0x2b, 0xc2, 0x61, 0x3e, 0xa2, 0x4e, 0xe8, 0x9b, 0xa1, 0xf9, 0x95, 0x5c, 0x10, - 0xf8, 0xa7, 0x02, 0xc1, 0xfb, 0x54, 0x20, 0x88, 0x2d, 0x93, 0x76, 0x33, 0x9d, 0xf3, 0x10, 0x74, - 0x65, 0xe5, 0x4c, 0xf5, 0xb5, 0x86, 0x56, 0x92, 0xbb, 0x4f, 0x0e, 0x51, 0xe0, 0x9f, 0x87, 0x28, - 0xe9, 0x17, 0x3a, 0x7f, 0x29, 0xbd, 0x3a, 0x44, 0xa8, 0x77, 0x88, 0xd2, 0xa7, 0xbd, 0xbc, 0x1e, - 0xbe, 0x48, 0x04, 0x6e, 0xa0, 0x8d, 0xdf, 0xa1, 0xe7, 0xeb, 0xd3, 0x05, 0xe9, 0xce, 0xe6, 0xf6, - 0xcb, 0xd7, 0xa9, 0xa9, 0x57, 0xaf, 0x53, 0x53, 0x6f, 0x5f, 0xa7, 0xd0, 0x6f, 0x7a, 0x29, 0xf4, - 0xe7, 0x5e, 0x0a, 0x3d, 0xeb, 0xa5, 0xd0, 0xcb, 0x5e, 0x0a, 0xfd, 0xb7, 0x97, 0x42, 0x6f, 0x7a, - 0xa9, 0xa9, 0xb7, 0xbd, 0x14, 0xfa, 0xfd, 0x51, 0x6a, 0xea, 0xc9, 0x51, 0x0a, 0xbd, 0x3c, 0x4a, - 0x4d, 0xbd, 0x3a, 0x4a, 0x4d, 0xfd, 0xa2, 0xd4, 0x30, 0xcc, 0xbd, 0x86, 0xd0, 0x31, 0x9c, 0xc3, - 0x9f, 0xa5, 0x08, 0x6d, 0x3b, 0xc7, 0x2e, 0x9c, 0xff, 0x3a, 0x59, 0xd3, 0x32, 0x3a, 0x5a, 0x0d, - 0xac, 0xac, 0x67, 0xce, 0x99, 0xd5, 0x86, 0x91, 0x83, 0x07, 0xd4, 0xfd, 0x4a, 0x31, 0xf8, 0x31, - 0xa4, 0x1a, 0x66, 0xcf, 0xf9, 0xea, 0xb7, 0x01, 0x00, 0x00, 0xff, 0xff, 0x4c, 0xac, 0x10, 0x9c, - 0x2e, 0x12, 0x00, 0x00, + // 1620 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6f, 0x13, 0x49, + 0x1a, 0x4e, 0xd9, 0x8e, 0xb1, 0xcb, 0xf9, 0x30, 0x05, 0x04, 0xc7, 0xcb, 0x1a, 0x63, 0xc2, 0x6e, + 0x14, 0xe1, 0x36, 0x04, 0xed, 0x6a, 0x09, 0xab, 0x2c, 0x8e, 0xd3, 0xce, 0x9a, 0x0d, 0x24, 0x6a, + 0x1b, 0x84, 0xf6, 0xb0, 0xad, 0x76, 0xbb, 0x6c, 0x7a, 0x63, 0x77, 0xf7, 0x76, 0x95, 0x1d, 0xa2, + 0x55, 0xa4, 0x15, 0x97, 0x3d, 0xcc, 0x65, 0x24, 0x2e, 0xf3, 0x25, 0x0d, 0x97, 0x91, 0x46, 0x9a, + 0x3f, 0x30, 0x52, 0x2e, 0xdc, 0x06, 0x71, 0x18, 0xa1, 0x99, 0x0b, 0x73, 0x03, 0x67, 0x34, 0x42, + 0x73, 0x19, 0x98, 0x5f, 0x30, 0xea, 0xaa, 0x6e, 0x63, 0x3b, 0x1d, 0xc7, 0x01, 0xc4, 0xc9, 0x5d, + 0xf5, 0xbe, 0xcf, 0xd3, 0xef, 0xd3, 0xef, 0x47, 0x97, 0x1b, 0xce, 0xb6, 0x30, 0x11, 0x34, 0x23, + 0x43, 0xd4, 0x3b, 0xb8, 0xa1, 0x64, 0xa8, 0xb1, 0x81, 0xf5, 0x8c, 0xd9, 0x2c, 0xd7, 0x35, 0x55, + 0x56, 0xad, 0x66, 0x45, 0x31, 0x35, 0xc1, 0xb4, 0x0c, 0x6a, 0xa0, 0x63, 0xdc, 0x53, 0xe0, 0x9e, + 0x02, 0xf3, 0x8c, 0xa7, 0x6b, 0x1a, 0xbd, 0xd3, 0x2c, 0x0b, 0xaa, 0xd1, 0xc8, 0xd4, 0x8c, 0x9a, + 0x91, 0x61, 0xbe, 0xe5, 0x66, 0x95, 0xad, 0xd8, 0x82, 0x5d, 0x71, 0x8e, 0xf8, 0xa9, 0x9a, 0x61, + 0xd4, 0xea, 0x38, 0xa3, 0x98, 0x5a, 0x46, 0xd1, 0x75, 0x83, 0x2a, 0x54, 0x33, 0x74, 0xe2, 0x58, + 0x7f, 0xe7, 0x58, 0x3b, 0x1c, 0xb8, 0x61, 0xd2, 0x2d, 0xc7, 0x18, 0xef, 0x0d, 0x14, 0x5b, 0x96, + 0x61, 0x75, 0x80, 0xbd, 0x36, 0xc3, 0xec, 0x66, 0x4d, 0x7a, 0x29, 0x34, 0xca, 0xff, 0xc6, 0x2a, + 0x75, 0x3c, 0x4e, 0x7b, 0x79, 0xd0, 0x2d, 0x13, 0xbb, 0x14, 0xd3, 0x7d, 0x0e, 0x5d, 0xa6, 0x54, + 0xaf, 0xa9, 0x85, 0x09, 0xd6, 0x5b, 0x83, 0x23, 0x68, 0x69, 0x78, 0x53, 0xee, 0xf1, 0x48, 0x7d, + 0x01, 0xe0, 0x78, 0xce, 0xc2, 0x0a, 0xc5, 0x12, 0xfe, 0x4f, 0x13, 0x13, 0x8a, 0xfe, 0x06, 0x43, + 0x0d, 0x4c, 0x95, 0x8a, 0x42, 0x95, 0x18, 0x48, 0x82, 0xd9, 0xc8, 0xfc, 0x59, 0xa1, 0x37, 0x01, + 0x6b, 0x4c, 0x02, 0x47, 0x5d, 0xc7, 0x54, 0x29, 0x6d, 0x99, 0x58, 0xea, 0x80, 0xd0, 0xdf, 0x61, + 0x80, 0x98, 0x58, 0x8d, 0xf9, 0x3c, 0xc1, 0x4c, 0xa3, 0xc0, 0xc1, 0x45, 0x13, 0xab, 0x36, 0x78, + 0x69, 0xf2, 0x93, 0xed, 0x31, 0x1b, 0x23, 0xd4, 0x54, 0xd9, 0xfe, 0x95, 0x18, 0xc3, 0x42, 0xf8, + 0xf1, 0x62, 0x90, 0xdf, 0x2c, 0xf5, 0x0a, 0xc0, 0x09, 0x37, 0x4e, 0x62, 0x1a, 0x3a, 0xc1, 0xe8, + 0xaf, 0x7b, 0x02, 0x4d, 0x7a, 0x06, 0xba, 0x82, 0xa9, 0x47, 0x94, 0x6b, 0x70, 0x92, 0x6c, 0x11, + 0x8a, 0x1b, 0x72, 0x87, 0xc4, 0xcf, 0x48, 0xfe, 0xd0, 0x47, 0x52, 0x64, 0x5e, 0x7b, 0xa9, 0x26, + 0x38, 0xfc, 0xba, 0x4b, 0x28, 0xf6, 0xc8, 0x4e, 0x7a, 0xca, 0x5e, 0xc1, 0xf4, 0x10, 0x9a, 0x7f, + 0x00, 0x70, 0x42, 0xc2, 0x66, 0x5d, 0x51, 0x3b, 0xc9, 0xb9, 0xba, 0x47, 0xf3, 0x8c, 0xa7, 0x66, + 0x07, 0xe6, 0xa1, 0xbb, 0xd0, 0x13, 0xe6, 0x8c, 0x67, 0x98, 0x0e, 0xfa, 0x80, 0x50, 0x51, 0x06, + 0x46, 0x2d, 0x4c, 0x8c, 0xa6, 0xa5, 0x62, 0xb9, 0x85, 0x2d, 0xa2, 0x19, 0x3a, 0x7b, 0x86, 0xe1, + 0xa5, 0xc0, 0x8b, 0x1d, 0x00, 0xa4, 0x49, 0xd7, 0x7a, 0x8b, 0x1b, 0xbb, 0xb5, 0x1d, 0x85, 0x93, + 0x1d, 0x69, 0x3c, 0x9f, 0xa9, 0xfb, 0x00, 0xc2, 0x15, 0x4c, 0x5d, 0xa9, 0xa7, 0x60, 0x58, 0x57, + 0x1a, 0x98, 0x98, 0x8a, 0x8a, 0x99, 0xd6, 0xb0, 0xf4, 0x7a, 0x03, 0x21, 0x18, 0xb0, 0x17, 0x4c, + 0x46, 0x58, 0x62, 0xd7, 0xa8, 0x08, 0xed, 0x3b, 0x32, 0x32, 0xb9, 0x6a, 0x58, 0x0d, 0x85, 0xb2, + 0x70, 0x26, 0xe6, 0xe7, 0xf6, 0x4b, 0x86, 0x7b, 0xef, 0x3c, 0xf3, 0xce, 0x19, 0x15, 0x2c, 0x4d, + 0x58, 0x3d, 0x7b, 0xa9, 0x57, 0xa3, 0x30, 0xd2, 0xe5, 0x89, 0x72, 0x30, 0xa2, 0xb2, 0x3a, 0x64, + 0xb7, 0x70, 0x1e, 0x63, 0x6a, 0x40, 0x91, 0x3b, 0x7a, 0x24, 0xc8, 0x61, 0x36, 0x2d, 0xca, 0xc3, + 0x31, 0x8b, 0xab, 0xe7, 0x2c, 0xfe, 0x01, 0xad, 0xd2, 0x5b, 0x01, 0x52, 0xc4, 0x01, 0x32, 0x1e, + 0xaf, 0x0c, 0x04, 0x06, 0x64, 0xa0, 0xa7, 0x67, 0x46, 0xdf, 0x45, 0xcf, 0x1c, 0x79, 0x27, 0x3d, + 0x13, 0x7c, 0xab, 0x9e, 0x41, 0x57, 0x61, 0x90, 0x50, 0x85, 0x36, 0x49, 0xec, 0xc1, 0x67, 0x20, + 0xe9, 0x9f, 0x8d, 0xcc, 0x9f, 0xf1, 0xa4, 0x2a, 0x32, 0x27, 0x1e, 0xd6, 0x92, 0xff, 0xe1, 0x36, + 0x90, 0x1c, 0x1c, 0x2a, 0xc0, 0xa3, 0x16, 0xae, 0x62, 0xcb, 0xd2, 0xf4, 0x9a, 0xcc, 0x47, 0x34, + 0x89, 0x85, 0x18, 0xd5, 0xa9, 0x7d, 0x1a, 0xac, 0xca, 0x14, 0x45, 0x3b, 0x30, 0xbe, 0x4f, 0xd0, + 0x2d, 0x18, 0xab, 0xe0, 0x3a, 0xa6, 0xb8, 0x22, 0x73, 0x1b, 0xae, 0x74, 0x18, 0xc3, 0x43, 0x30, + 0x4e, 0x39, 0x68, 0xc9, 0x01, 0xbb, 0xbc, 0xb7, 0xe1, 0x74, 0x45, 0x23, 0x4a, 0xb9, 0xee, 0x45, + 0x0c, 0x87, 0x20, 0x3e, 0xe9, 0xc2, 0xfb, 0x98, 0xbb, 0xda, 0xf2, 0x5a, 0x20, 0x04, 0xa2, 0x3e, + 0xfb, 0xa5, 0x10, 0x59, 0xd5, 0xc8, 0x90, 0xad, 0x78, 0x06, 0x8e, 0xd5, 0x95, 0x32, 0xae, 0xcb, + 0x55, 0xad, 0x4e, 0xb1, 0xe5, 0xb4, 0x64, 0x84, 0xed, 0xe5, 0xd9, 0x16, 0x3a, 0x0b, 0xc7, 0x2d, + 0x6c, 0x1a, 0x16, 0x95, 0xab, 0x1a, 0xae, 0x57, 0x48, 0xcc, 0x9f, 0xf4, 0xcf, 0x86, 0xa5, 0x31, + 0xbe, 0x99, 0x67, 0x7b, 0xe8, 0x02, 0x3c, 0xee, 0x38, 0xf1, 0xa4, 0xb8, 0xbe, 0x01, 0xe6, 0x8b, + 0xb8, 0x8d, 0xa7, 0x90, 0x23, 0x52, 0x0f, 0x82, 0x30, 0xca, 0xe3, 0xe4, 0xcd, 0x59, 0xa0, 0xb8, + 0x81, 0xa6, 0x60, 0x90, 0x62, 0x5d, 0xd1, 0x29, 0xab, 0xaa, 0xb0, 0xe4, 0xac, 0xde, 0x60, 0x9e, + 0x44, 0xa1, 0xbf, 0xa9, 0x55, 0xf8, 0x48, 0x93, 0xec, 0x4b, 0x94, 0x84, 0x91, 0x0a, 0x26, 0xaa, + 0xa5, 0xb1, 0x77, 0x68, 0x2c, 0xc2, 0x95, 0x76, 0x6d, 0xa1, 0x38, 0x0c, 0xb9, 0x8f, 0x39, 0x36, + 0x96, 0x04, 0xb3, 0x21, 0xa9, 0xb3, 0x46, 0x05, 0x18, 0x64, 0x0f, 0x85, 0x4b, 0x8a, 0xcc, 0x5f, + 0xf4, 0x2c, 0xd2, 0x7e, 0x41, 0xc2, 0x2a, 0xc3, 0x88, 0x3a, 0xb5, 0xb6, 0x24, 0x87, 0x00, 0xdd, + 0x86, 0x91, 0xae, 0x53, 0x8c, 0x93, 0xfe, 0x3f, 0x0f, 0xc7, 0x97, 0x7d, 0x0d, 0xe4, 0xa4, 0xdd, + 0x54, 0xe8, 0x32, 0x84, 0xc6, 0xa6, 0x8e, 0x2d, 0xd9, 0x3e, 0x2c, 0xc4, 0xc2, 0xac, 0x31, 0xe3, + 0x7d, 0xc4, 0xb7, 0x34, 0xbc, 0xe9, 0x56, 0x55, 0x98, 0x79, 0xdb, 0x3b, 0x3d, 0xc3, 0x65, 0xfc, + 0x5d, 0x0c, 0x97, 0x89, 0xb7, 0x1a, 0x2e, 0x57, 0x60, 0xa8, 0x86, 0x29, 0x9b, 0x13, 0xce, 0x98, + 0x3a, 0x70, 0xc0, 0x48, 0x47, 0x6a, 0x7c, 0x81, 0x44, 0x08, 0x9d, 0x2a, 0x24, 0x98, 0x3a, 0x93, + 0x60, 0xd8, 0xa1, 0x12, 0xe6, 0xc8, 0x22, 0xa6, 0xf1, 0xcb, 0x30, 0xd2, 0x95, 0x3e, 0xbb, 0xa2, + 0x36, 0xf0, 0x96, 0x53, 0x7d, 0xf6, 0x25, 0x3a, 0x0e, 0x47, 0x5b, 0x4a, 0xbd, 0xe9, 0x16, 0x1e, + 0x5f, 0x2c, 0xf8, 0xfe, 0x02, 0xe2, 0x8b, 0x30, 0xda, 0x9f, 0xa9, 0xc3, 0xe0, 0xaf, 0x05, 0x42, + 0xa3, 0xd1, 0x60, 0x6a, 0x1b, 0x8e, 0x75, 0x17, 0x00, 0xba, 0x02, 0x47, 0x35, 0x8a, 0x1b, 0x24, + 0xc6, 0xe7, 0xe4, 0xb9, 0xa1, 0x4a, 0x46, 0xe2, 0x18, 0x74, 0x01, 0x06, 0xf9, 0xe9, 0x37, 0xe6, + 0x63, 0xe8, 0x58, 0x1f, 0x5a, 0xb4, 0x8d, 0xec, 0x39, 0x3a, 0x7e, 0xa9, 0x0d, 0x38, 0xbe, 0xcc, + 0xc6, 0xd9, 0x9b, 0xbf, 0xd5, 0x67, 0x61, 0xb4, 0xaa, 0x68, 0x75, 0x59, 0xab, 0x76, 0xc6, 0x1e, + 0x6b, 0xc9, 0x90, 0x34, 0x61, 0xef, 0x17, 0xaa, 0xee, 0x38, 0x9b, 0xfb, 0x15, 0xc0, 0x13, 0x9e, + 0x2f, 0x75, 0x14, 0x87, 0x53, 0x2b, 0x62, 0x49, 0x96, 0x8a, 0xeb, 0x72, 0x7e, 0x4d, 0xba, 0x9e, + 0x2d, 0xc9, 0xcb, 0x62, 0x3e, 0x7b, 0x73, 0xb5, 0x14, 0x1d, 0x41, 0xbf, 0x87, 0xd3, 0x7d, 0xb6, + 0xfc, 0x9a, 0x24, 0xe7, 0x24, 0x31, 0x5b, 0x12, 0xa3, 0x00, 0x25, 0x60, 0xdc, 0xc3, 0x2c, 0x89, + 0xeb, 0xab, 0xd9, 0x9c, 0x18, 0xf5, 0xa1, 0x69, 0x78, 0xa2, 0xcf, 0x5e, 0x2c, 0x65, 0x4b, 0x37, + 0x8b, 0x51, 0x3f, 0x3a, 0x09, 0x8f, 0xf5, 0x99, 0x24, 0x31, 0xbb, 0x1c, 0x0d, 0xa0, 0x19, 0x98, + 0xdc, 0x63, 0xc8, 0x8b, 0x92, 0x54, 0xb8, 0xb1, 0x22, 0xaf, 0x2d, 0x5d, 0x13, 0x73, 0xa5, 0x62, + 0x74, 0xd4, 0xc3, 0x6b, 0x49, 0x5a, 0xfb, 0x87, 0x78, 0x83, 0x3b, 0x8b, 0x37, 0x72, 0x62, 0x31, + 0x1a, 0x9c, 0xff, 0x3f, 0x84, 0xfe, 0xec, 0x7a, 0x01, 0xfd, 0x02, 0x60, 0x90, 0x1f, 0x38, 0xd0, + 0x10, 0xa7, 0x91, 0xf8, 0xd9, 0x81, 0x3e, 0xce, 0x89, 0xec, 0x53, 0xd0, 0xfe, 0x26, 0xf6, 0xaf, + 0xea, 0x9f, 0xee, 0xaa, 0x69, 0xa2, 0x51, 0x9c, 0x6e, 0x28, 0xba, 0x52, 0xc3, 0x0d, 0xac, 0xd3, + 0x74, 0x59, 0x21, 0x9a, 0x9a, 0x6e, 0x12, 0x6c, 0x9d, 0xf7, 0xb4, 0x13, 0xaa, 0xe8, 0x15, 0xc5, + 0xaa, 0x70, 0x97, 0x16, 0x26, 0x69, 0xcd, 0x48, 0x6b, 0x7a, 0xd5, 0x52, 0x08, 0xb5, 0x9a, 0x2a, + 0x6d, 0x5a, 0x38, 0xbd, 0x69, 0x69, 0x14, 0xdf, 0xfb, 0xfe, 0xc7, 0xfb, 0xbe, 0x4b, 0x29, 0xc1, + 0xf9, 0xeb, 0x97, 0xe9, 0x14, 0x03, 0xc9, 0xfc, 0xd7, 0x1d, 0x04, 0x42, 0x67, 0x73, 0x9b, 0xff, + 0x47, 0x22, 0x0b, 0x60, 0x0e, 0xfd, 0x0c, 0xa0, 0x7f, 0x05, 0x53, 0x74, 0x7a, 0xff, 0xd3, 0x1d, + 0xd7, 0x9a, 0x3c, 0xe8, 0xf8, 0x97, 0xfa, 0x1c, 0x3c, 0xfa, 0xda, 0x67, 0x8b, 0x55, 0x07, 0x88, + 0x6d, 0x18, 0xba, 0x46, 0x8d, 0x83, 0xf4, 0xba, 0x5e, 0xde, 0x92, 0x2d, 0xac, 0x54, 0x98, 0x62, + 0x01, 0x9d, 0xf7, 0x52, 0xbc, 0x47, 0x28, 0xdf, 0xda, 0x46, 0x3f, 0x01, 0x18, 0xb0, 0xdb, 0x12, + 0x25, 0x07, 0x74, 0x2c, 0x97, 0x7b, 0xe6, 0xc0, 0x9e, 0x4e, 0x7d, 0xf4, 0xde, 0xf5, 0xfe, 0x11, + 0x9d, 0x1b, 0x4a, 0x2f, 0xba, 0xe7, 0x83, 0x47, 0x9c, 0x23, 0x2f, 0x1a, 0xe6, 0x40, 0x1c, 0x9f, + 0x19, 0xec, 0xe4, 0x28, 0xfe, 0xea, 0x7d, 0x95, 0x72, 0x2e, 0xbe, 0x78, 0xb8, 0x52, 0xee, 0xb3, + 0x6d, 0xdb, 0xa5, 0xfd, 0x0c, 0xc0, 0x20, 0x9f, 0x9b, 0xfb, 0x34, 0x73, 0xcf, 0x50, 0x8d, 0x4f, + 0x09, 0xfc, 0xfb, 0x85, 0xe0, 0x7e, 0xbf, 0x10, 0xc4, 0x86, 0x49, 0xb7, 0x52, 0x1f, 0xbf, 0x2f, + 0xd1, 0x17, 0xe7, 0x0e, 0x55, 0xcd, 0x0b, 0x60, 0x2e, 0xbe, 0xfe, 0x70, 0x07, 0xf8, 0xbe, 0xdb, + 0x01, 0x71, 0x2f, 0x79, 0xfc, 0x6d, 0xfa, 0x74, 0x07, 0x80, 0xf6, 0x0e, 0x48, 0x1e, 0xf4, 0xd6, + 0xbd, 0xf7, 0x6d, 0xcc, 0x77, 0x15, 0x2c, 0x7d, 0x00, 0x1e, 0x2f, 0x8e, 0xe6, 0xa4, 0x9b, 0xcb, + 0xab, 0x4f, 0x9e, 0x27, 0x46, 0x9e, 0x3e, 0x4f, 0x8c, 0xbc, 0x7c, 0x9e, 0x00, 0xff, 0x6b, 0x27, + 0xc0, 0x97, 0xed, 0x04, 0x78, 0xd4, 0x4e, 0x80, 0x27, 0xed, 0x04, 0x78, 0xd6, 0x4e, 0x80, 0x17, + 0xed, 0xc4, 0xc8, 0xcb, 0x76, 0x02, 0x7c, 0xb8, 0x9b, 0x18, 0x79, 0xb8, 0x9b, 0x00, 0x4f, 0x76, + 0x13, 0x23, 0x4f, 0x77, 0x13, 0x23, 0xff, 0x2c, 0xd4, 0x0c, 0x73, 0xa3, 0x26, 0xb4, 0x0c, 0xfb, + 0xd4, 0x6a, 0x29, 0x42, 0x93, 0x64, 0xd8, 0x85, 0xfd, 0x27, 0x2d, 0x6d, 0x5a, 0x46, 0x4b, 0xab, + 0x60, 0x2b, 0xed, 0x9a, 0x33, 0x66, 0xb9, 0x66, 0x64, 0xf0, 0x5d, 0xea, 0x7c, 0x5e, 0xe9, 0xfe, + 0x8a, 0x53, 0x0e, 0xb2, 0x5c, 0x5c, 0xfa, 0x2d, 0x00, 0x00, 0xff, 0xff, 0x4b, 0xed, 0xa0, 0x9c, + 0xe7, 0x12, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/token/public_crudapi.vesapi.go b/pbgo/extschema/schema/token/public_crudapi.vesapi.go index 4a09730ed..06fbd5d4c 100644 --- a/pbgo/extschema/schema/token/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/token/public_crudapi.vesapi.go @@ -2370,10 +2370,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2430,10 +2434,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2536,10 +2544,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/token/public_customapi.pb.go b/pbgo/extschema/schema/token/public_customapi.pb.go index 4da7c5d41..33e69e6be 100644 --- a/pbgo/extschema/schema/token/public_customapi.pb.go +++ b/pbgo/extschema/schema/token/public_customapi.pb.go @@ -182,40 +182,41 @@ func init() { } var fileDescriptor_1daf03efacb073ee = []byte{ - // 521 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0x12, 0x15, 0xbb, 0x82, 0xc8, 0x7a, 0x09, 0xdb, 0x3a, 0x96, 0x80, 0x50, 0x8a, - 0xbb, 0x23, 0x11, 0x11, 0xc4, 0x83, 0xb6, 0x20, 0xf4, 0xa4, 0x44, 0x4f, 0x5e, 0x64, 0x76, 0x7d, - 0xd9, 0x4c, 0x9b, 0x9d, 0x37, 0x9d, 0x99, 0x8d, 0x15, 0x09, 0x48, 0x3d, 0x79, 0x13, 0xfc, 0x27, - 0xfc, 0x1f, 0x7a, 0xc9, 0x4d, 0x4f, 0x12, 0xf5, 0xd2, 0xa3, 0xd9, 0x78, 0xf0, 0xd8, 0x3f, 0x41, - 0x32, 0x9b, 0xfe, 0x08, 0xc4, 0xde, 0xde, 0x9b, 0xf7, 0x79, 0xdf, 0x79, 0xbf, 0xfc, 0xf5, 0x3e, - 0x98, 0x58, 0x20, 0x33, 0x69, 0x17, 0x72, 0xce, 0x2c, 0xee, 0x80, 0x64, 0xaa, 0x48, 0x7a, 0x22, - 0x7d, 0x95, 0x16, 0xc6, 0x62, 0xce, 0x95, 0x88, 0x95, 0x46, 0x8b, 0xc1, 0xf5, 0x8a, 0x8d, 0x2b, - 0x36, 0x76, 0x6c, 0x18, 0x65, 0xc2, 0x76, 0x8b, 0x24, 0x4e, 0x31, 0x67, 0x19, 0x66, 0xc8, 0x1c, - 0x9b, 0x14, 0x1d, 0xe7, 0x39, 0xc7, 0x59, 0x95, 0x46, 0xb8, 0x92, 0x21, 0x66, 0x3d, 0x60, 0x5c, - 0x09, 0xc6, 0xa5, 0x44, 0xcb, 0xad, 0x40, 0x69, 0x66, 0xd1, 0xe5, 0xf9, 0x6a, 0x50, 0x9d, 0x0d, - 0xae, 0x2e, 0x2a, 0x15, 0x93, 0x6d, 0x48, 0xed, 0x8c, 0xb8, 0xb9, 0x88, 0xb0, 0x6f, 0x15, 0x1c, - 0x4b, 0x34, 0xe7, 0x81, 0x3e, 0x18, 0x90, 0xfd, 0xf9, 0x6f, 0x9a, 0x4f, 0xfc, 0x6b, 0x4f, 0x9d, - 0xe8, 0x66, 0x97, 0xcb, 0x0c, 0xda, 0x60, 0x54, 0xd0, 0xf2, 0xeb, 0x98, 0x6c, 0x37, 0xc8, 0x2a, - 0x59, 0xbb, 0xd2, 0x5a, 0x8e, 0x17, 0xcc, 0x21, 0xae, 0x72, 0x36, 0xea, 0xc3, 0x01, 0x69, 0x4f, - 0xe1, 0xa6, 0xf4, 0x2f, 0x3f, 0xb7, 0xdc, 0x42, 0x1b, 0x76, 0x83, 0x15, 0x7f, 0x49, 0xf2, 0x1c, - 0x8c, 0xe2, 0x29, 0x38, 0x95, 0xa5, 0xf6, 0xe9, 0x43, 0x10, 0xf8, 0x17, 0xa6, 0x4e, 0xa3, 0xe6, - 0x02, 0xce, 0x0e, 0xee, 0xf8, 0x17, 0xcd, 0x34, 0xbb, 0x51, 0x5f, 0x25, 0x6b, 0x57, 0x5b, 0xe1, - 0xc2, 0x3f, 0x2b, 0xfd, 0x0a, 0x6c, 0x7d, 0xac, 0xf9, 0x4b, 0x9b, 0x6e, 0x63, 0x8f, 0x9f, 0x6d, - 0x05, 0x3f, 0x88, 0xef, 0xbf, 0x98, 0x42, 0x8e, 0x09, 0x6e, 0x9c, 0x93, 0x0f, 0xbb, 0xe1, 0xad, - 0x73, 0x5a, 0x3a, 0x1d, 0x43, 0x73, 0x50, 0x7e, 0x6d, 0x3c, 0xec, 0xdc, 0xdb, 0x4b, 0x23, 0x23, - 0x2c, 0x44, 0x39, 0x97, 0x3c, 0x83, 0x1c, 0xa4, 0x8d, 0x12, 0x6e, 0x44, 0x1a, 0x15, 0x06, 0xf4, - 0xed, 0xe9, 0x9a, 0x22, 0x81, 0x91, 0x90, 0x1d, 0xcd, 0x8d, 0xd5, 0x45, 0x6a, 0x0b, 0x0d, 0xd1, - 0x1b, 0x2d, 0x2c, 0xec, 0xff, 0xfa, 0xf3, 0xb9, 0x76, 0xbf, 0xd9, 0x9a, 0x5d, 0x18, 0x3b, 0x99, - 0x81, 0x61, 0xef, 0x4e, 0xec, 0x41, 0xb5, 0xb8, 0xd9, 0xd3, 0x80, 0xb9, 0xf6, 0x1e, 0x90, 0xf5, - 0x70, 0x6d, 0x78, 0x40, 0xea, 0x3f, 0x0f, 0x48, 0xf8, 0xff, 0x62, 0xf7, 0xbf, 0x37, 0x6a, 0x8f, - 0xc8, 0xc6, 0x07, 0x32, 0x1a, 0x53, 0xef, 0x70, 0x4c, 0xbd, 0xa3, 0x31, 0x25, 0xef, 0x4b, 0x4a, - 0xbe, 0x94, 0x94, 0x7c, 0x2b, 0x29, 0x19, 0x95, 0x94, 0xfc, 0x2e, 0x29, 0xf9, 0x5b, 0x52, 0xef, - 0xa8, 0xa4, 0xe4, 0xd3, 0x84, 0x7a, 0xc3, 0x09, 0x25, 0xa3, 0x09, 0xf5, 0x0e, 0x27, 0xd4, 0x7b, - 0xb9, 0x95, 0xa1, 0xda, 0xc9, 0xe2, 0x3e, 0xf6, 0x2c, 0x68, 0xcd, 0xe3, 0xc2, 0x30, 0x67, 0x74, - 0x50, 0xe7, 0x91, 0xd2, 0xd8, 0x17, 0xaf, 0x41, 0x47, 0xc7, 0x61, 0xa6, 0x92, 0x0c, 0x19, 0xec, - 0xd9, 0xd9, 0x45, 0x9d, 0xbd, 0xbc, 0xe4, 0x92, 0x3b, 0xa8, 0xbb, 0xff, 0x02, 0x00, 0x00, 0xff, - 0xff, 0x0d, 0x93, 0xbd, 0x11, 0x64, 0x03, 0x00, 0x00, + // 535 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xbf, 0x8b, 0x13, 0x41, + 0x14, 0xc7, 0x77, 0x12, 0x15, 0x6f, 0x05, 0x91, 0xb5, 0x09, 0x7b, 0xe7, 0x18, 0x02, 0x42, 0x38, + 0xdc, 0x1d, 0x89, 0x88, 0x60, 0xa5, 0x77, 0x20, 0x5c, 0xa5, 0x44, 0x2b, 0x1b, 0x9d, 0xdd, 0xbc, + 0x6c, 0xe6, 0x2e, 0x3b, 0x33, 0x37, 0x33, 0xbb, 0x9e, 0x48, 0x40, 0xce, 0x7f, 0x40, 0xf0, 0x2f, + 0xb0, 0xb3, 0xf2, 0x1f, 0xb8, 0x26, 0x9d, 0x56, 0x12, 0xb4, 0xb9, 0xd2, 0x6c, 0x2c, 0x2c, 0xaf, + 0xb2, 0x96, 0xcc, 0xee, 0xfd, 0x08, 0xc4, 0xeb, 0xde, 0x9b, 0xf7, 0x79, 0xdf, 0x99, 0x79, 0xef, + 0xeb, 0xae, 0xe7, 0xa0, 0x43, 0x26, 0x88, 0x8e, 0x07, 0x90, 0x52, 0x62, 0xc4, 0x0e, 0x70, 0x22, + 0xb3, 0x68, 0xc8, 0xe2, 0x97, 0x71, 0xa6, 0x8d, 0x48, 0xa9, 0x64, 0xa1, 0x54, 0xc2, 0x08, 0xef, + 0x7a, 0xc9, 0x86, 0x25, 0x1b, 0x5a, 0xd6, 0x0f, 0x12, 0x66, 0x06, 0x59, 0x14, 0xc6, 0x22, 0x25, + 0x89, 0x48, 0x04, 0xb1, 0x6c, 0x94, 0xf5, 0x6d, 0x66, 0x13, 0x1b, 0x95, 0x1a, 0xfe, 0x5a, 0x22, + 0x44, 0x32, 0x04, 0x42, 0x25, 0x23, 0x94, 0x73, 0x61, 0xa8, 0x61, 0x82, 0xeb, 0xaa, 0xba, 0xba, + 0xf8, 0x1a, 0x21, 0xcf, 0x16, 0x9b, 0xcb, 0x9e, 0x2a, 0xa2, 0x6d, 0x88, 0x4d, 0x45, 0xdc, 0x5c, + 0x46, 0x98, 0x37, 0x12, 0x8e, 0x25, 0x5a, 0x8b, 0x40, 0x0e, 0x1a, 0x78, 0xbe, 0x78, 0x4d, 0xeb, + 0xb1, 0x7b, 0xed, 0x89, 0x15, 0xdd, 0x1c, 0x50, 0x9e, 0x40, 0x17, 0xb4, 0xf4, 0x3a, 0x6e, 0x5d, + 0x44, 0xdb, 0x0d, 0xd4, 0x44, 0xed, 0x2b, 0x9d, 0xd5, 0x70, 0xc9, 0x1c, 0xc2, 0xb2, 0x67, 0xa3, + 0x3e, 0x1e, 0xa1, 0xee, 0x1c, 0x6e, 0x71, 0xf7, 0xf2, 0x33, 0x43, 0x0d, 0x74, 0x61, 0xd7, 0x5b, + 0x73, 0x57, 0x38, 0x4d, 0x41, 0x4b, 0x1a, 0x83, 0x55, 0x59, 0xe9, 0x9e, 0x1e, 0x78, 0x9e, 0x7b, + 0x61, 0x9e, 0x34, 0x6a, 0xb6, 0x60, 0x63, 0xef, 0x8e, 0x7b, 0x51, 0xcf, 0xbb, 0x1b, 0xf5, 0x26, + 0x6a, 0x5f, 0xed, 0xf8, 0x4b, 0xef, 0x2c, 0xf5, 0x4b, 0xb0, 0xf3, 0xa5, 0xe6, 0xae, 0x6c, 0xda, + 0x8d, 0x3d, 0x7a, 0xba, 0xe5, 0xfd, 0x45, 0xae, 0xfb, 0x7c, 0x0e, 0x59, 0xc6, 0xbb, 0x71, 0x4e, + 0x3f, 0xec, 0xfa, 0xb7, 0xce, 0xf9, 0xd2, 0xe9, 0x18, 0x5a, 0x9f, 0x50, 0xf1, 0xb5, 0xf1, 0xaa, + 0x7f, 0x6f, 0x2f, 0x0e, 0x34, 0x33, 0x10, 0xa4, 0x94, 0xd3, 0x04, 0x52, 0xe0, 0x26, 0x88, 0xa8, + 0x66, 0x71, 0x90, 0x69, 0x50, 0xb7, 0x9b, 0x4b, 0x01, 0x6d, 0x28, 0xef, 0x51, 0xd5, 0xab, 0x98, + 0x1c, 0x74, 0xc0, 0x44, 0xc0, 0x78, 0x5f, 0x51, 0x6d, 0x54, 0x16, 0x9b, 0x4c, 0x41, 0xf0, 0x5a, + 0x31, 0x03, 0xfb, 0x3f, 0x7f, 0x7f, 0xac, 0xdd, 0x6f, 0x75, 0x2a, 0x1b, 0x92, 0x93, 0x41, 0x69, + 0xf2, 0xf6, 0x24, 0x1e, 0x95, 0xdb, 0xad, 0x8e, 0x46, 0xc4, 0xce, 0xe0, 0x01, 0x5a, 0xf7, 0xdb, + 0xe3, 0x03, 0x54, 0xff, 0x71, 0x80, 0xfc, 0xff, 0xff, 0x68, 0xff, 0x7b, 0xa3, 0xf6, 0x10, 0x6d, + 0xbc, 0x47, 0x93, 0x29, 0x76, 0x0e, 0xa7, 0xd8, 0x39, 0x9a, 0x62, 0xf4, 0xae, 0xc0, 0xe8, 0x73, + 0x81, 0xd1, 0xb7, 0x02, 0xa3, 0x49, 0x81, 0xd1, 0xaf, 0x02, 0xa3, 0x3f, 0x05, 0x76, 0x8e, 0x0a, + 0x8c, 0x3e, 0xcc, 0xb0, 0x33, 0x9e, 0x61, 0x34, 0x99, 0x61, 0xe7, 0x70, 0x86, 0x9d, 0x17, 0x5b, + 0x89, 0x90, 0x3b, 0x49, 0x98, 0x8b, 0xa1, 0x01, 0xa5, 0x68, 0x98, 0x69, 0x62, 0x83, 0xbe, 0x50, + 0x69, 0x20, 0x95, 0xc8, 0x59, 0x0f, 0x54, 0x70, 0x5c, 0x26, 0x32, 0x4a, 0x04, 0x81, 0x3d, 0x53, + 0xd9, 0xee, 0xac, 0x3d, 0xa3, 0x4b, 0xd6, 0x75, 0x77, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0xd6, + 0x8f, 0xdb, 0x29, 0x89, 0x03, 0x00, 0x00, } func (this *ObjectChangeResp) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/token/public_customapi.vesapi.go b/pbgo/extschema/schema/token/public_customapi.vesapi.go index 79e061e64..c7dbdee6c 100644 --- a/pbgo/extschema/schema/token/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/token/public_customapi.vesapi.go @@ -473,10 +473,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/pkg.vespkg.go b/pbgo/extschema/schema/topology/pkg.vespkg.go index 552fe514f..f6be2e46d 100644 --- a/pbgo/extschema/schema/topology/pkg.vespkg.go +++ b/pbgo/extschema/schema/topology/pkg.vespkg.go @@ -30,6 +30,12 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.topology.MetricData"] = MetricDataValidator() vr["ves.io.schema.topology.MetricSelector"] = MetricSelectorValidator() vr["ves.io.schema.topology.MetricTypeData"] = MetricTypeDataValidator() + vr["ves.io.schema.topology.NetworkRouteTableData"] = NetworkRouteTableDataValidator() + vr["ves.io.schema.topology.NetworkRouteTableMetaData"] = NetworkRouteTableMetaDataValidator() + vr["ves.io.schema.topology.NetworkRouteTablesRequest"] = NetworkRouteTablesRequestValidator() + vr["ves.io.schema.topology.NetworkRouteTablesResponse"] = NetworkRouteTablesResponseValidator() + vr["ves.io.schema.topology.NetworkRoutesData"] = NetworkRoutesDataValidator() + vr["ves.io.schema.topology.NetworkRoutesMetaData"] = NetworkRoutesMetaDataValidator() vr["ves.io.schema.topology.NetworkSummaryInfo"] = NetworkSummaryInfoValidator() vr["ves.io.schema.topology.Node"] = NodeValidator() vr["ves.io.schema.topology.NodeMetaData"] = NodeMetaDataValidator() @@ -40,28 +46,37 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.topology.NodeTypeSiteMeshGroup"] = NodeTypeSiteMeshGroupValidator() vr["ves.io.schema.topology.NodeTypeSubnet"] = NodeTypeSubnetValidator() vr["ves.io.schema.topology.NodeTypeTransitGateway"] = NodeTypeTransitGatewayValidator() + vr["ves.io.schema.topology.RouteTableData"] = RouteTableDataValidator() vr["ves.io.schema.topology.RouteTableMetaData"] = RouteTableMetaDataValidator() vr["ves.io.schema.topology.RouteTableRequest"] = RouteTableRequestValidator() vr["ves.io.schema.topology.RouteTableResponse"] = RouteTableResponseValidator() vr["ves.io.schema.topology.SiteMeshGroupSummaryInfo"] = SiteMeshGroupSummaryInfoValidator() vr["ves.io.schema.topology.SiteMeshGroupsSummaryRequest"] = SiteMeshGroupsSummaryRequestValidator() vr["ves.io.schema.topology.SiteMeshTopologyRequest"] = SiteMeshTopologyRequestValidator() + vr["ves.io.schema.topology.SiteNetworksRequest"] = SiteNetworksRequestValidator() + vr["ves.io.schema.topology.SiteNetworksResponse"] = SiteNetworksResponseValidator() vr["ves.io.schema.topology.SiteSummaryInfo"] = SiteSummaryInfoValidator() vr["ves.io.schema.topology.SiteTopologyRequest"] = SiteTopologyRequestValidator() + vr["ves.io.schema.topology.SubnetData"] = SubnetDataValidator() + vr["ves.io.schema.topology.SubnetMetaData"] = SubnetMetaDataValidator() vr["ves.io.schema.topology.SubnetSummaryInfo"] = SubnetSummaryInfoValidator() vr["ves.io.schema.topology.TopologyResponse"] = TopologyResponseValidator() vr["ves.io.schema.topology.AWSPolicyType"] = AWSPolicyTypeValidator() + vr["ves.io.schema.topology.AWSRouteAttributes"] = AWSRouteAttributesValidator() vr["ves.io.schema.topology.AddressInfoType"] = AddressInfoTypeValidator() + vr["ves.io.schema.topology.AzureResourceGroupInfo"] = AzureResourceGroupInfoValidator() vr["ves.io.schema.topology.AzureVnetPeer"] = AzureVnetPeerValidator() vr["ves.io.schema.topology.CloudPolicyType"] = CloudPolicyTypeValidator() vr["ves.io.schema.topology.DCClusterGroupType"] = DCClusterGroupTypeValidator() + vr["ves.io.schema.topology.GCPRouteAttributes"] = GCPRouteAttributesValidator() vr["ves.io.schema.topology.InstanceType"] = InstanceTypeValidator() vr["ves.io.schema.topology.LoadBalancer"] = LoadBalancerValidator() vr["ves.io.schema.topology.MetaType"] = MetaTypeValidator() vr["ves.io.schema.topology.NetworkInterfaceType"] = NetworkInterfaceTypeValidator() vr["ves.io.schema.topology.NetworkPeerType"] = NetworkPeerTypeValidator() vr["ves.io.schema.topology.NetworkType"] = NetworkTypeValidator() + vr["ves.io.schema.topology.ProviderInfo"] = ProviderInfoValidator() vr["ves.io.schema.topology.RouteTableType"] = RouteTableTypeValidator() vr["ves.io.schema.topology.RouteType"] = RouteTypeValidator() vr["ves.io.schema.topology.SiteMeshGroupType"] = SiteMeshGroupTypeValidator() diff --git a/pbgo/extschema/schema/topology/public_custom_data_api.pb.go b/pbgo/extschema/schema/topology/public_custom_data_api.pb.go index 26e7c6a4b..94363dd29 100644 --- a/pbgo/extschema/schema/topology/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/topology/public_custom_data_api.pb.go @@ -24,6 +24,7 @@ import ( codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" io "io" math "math" @@ -753,6 +754,266 @@ func (m *RouteTableResponse) GetRouteTable() *RouteTableType { return nil } +// Site Networks Request +// +// x-displayName: "Site Networks Request" +// Request to List Networks Associated to Site +type SiteNetworksRequest struct { + // Name + // + // x-displayName: "Name" + // x-required + // x-example: "site-1" + // Site name + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (m *SiteNetworksRequest) Reset() { *m = SiteNetworksRequest{} } +func (*SiteNetworksRequest) ProtoMessage() {} +func (*SiteNetworksRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{8} +} +func (m *SiteNetworksRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SiteNetworksRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_SiteNetworksRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *SiteNetworksRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SiteNetworksRequest.Merge(m, src) +} +func (m *SiteNetworksRequest) XXX_Size() int { + return m.Size() +} +func (m *SiteNetworksRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SiteNetworksRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SiteNetworksRequest proto.InternalMessageInfo + +func (m *SiteNetworksRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +// Site Networks Response +// +// x-displayName: "Site Networks Response" +// List of Networks Associated to Site +type SiteNetworksResponse struct { + // Network Routes Meta Data + // + // x-displayName: "Network Routes Meta Data" + // Network Routes Meta Data + RoutesMetadata []*NetworkRoutesMetaData `protobuf:"bytes,1,rep,name=routes_metadata,json=routesMetadata,proto3" json:"routes_metadata,omitempty"` +} + +func (m *SiteNetworksResponse) Reset() { *m = SiteNetworksResponse{} } +func (*SiteNetworksResponse) ProtoMessage() {} +func (*SiteNetworksResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{9} +} +func (m *SiteNetworksResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SiteNetworksResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_SiteNetworksResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *SiteNetworksResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SiteNetworksResponse.Merge(m, src) +} +func (m *SiteNetworksResponse) XXX_Size() int { + return m.Size() +} +func (m *SiteNetworksResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SiteNetworksResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SiteNetworksResponse proto.InternalMessageInfo + +func (m *SiteNetworksResponse) GetRoutesMetadata() []*NetworkRoutesMetaData { + if m != nil { + return m.RoutesMetadata + } + return nil +} + +// Network Route Tables Request +// +// x-displayName: "Network Route Tables Request" +// Request to get the Route tables associated with network +type NetworkRouteTablesRequest struct { + // Id + // + // x-displayName: "Id" + // x-example: "vpc-1234567898" + // x-required + // Network Id + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + //Route Table Ids + // + // x-displayName: "Route Table Ids" + // x-example: "rtb-1234567898, rtb-2345678901" + // Route Table Ids used as filters + RouteTableIds []string `protobuf:"bytes,2,rep,name=route_table_ids,json=routeTableIds,proto3" json:"route_table_ids,omitempty"` + //Subnet Ids + // + // x-displayName: "Subnet Ids" + // x-example: "sub-1234567898, sub-2345678901" + // Subnet Ids used as filters + SubnetIds []string `protobuf:"bytes,3,rep,name=subnet_ids,json=subnetIds,proto3" json:"subnet_ids,omitempty"` + //Subnet Cidrs + // + // x-displayName: "Subnet Cidrs" + // x-example: "10.10.0.0/16, 10.22.0.0/16" + // Subnet cidrs used as filters + SubnetCidrs []string `protobuf:"bytes,4,rep,name=subnet_cidrs,json=subnetCidrs,proto3" json:"subnet_cidrs,omitempty"` + //regions + // + // x-displayName: "Regions" + // x-example: "us-west1, us-east1" + // Regions used as filters + Regions []string `protobuf:"bytes,5,rep,name=regions,proto3" json:"regions,omitempty"` +} + +func (m *NetworkRouteTablesRequest) Reset() { *m = NetworkRouteTablesRequest{} } +func (*NetworkRouteTablesRequest) ProtoMessage() {} +func (*NetworkRouteTablesRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{10} +} +func (m *NetworkRouteTablesRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *NetworkRouteTablesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_NetworkRouteTablesRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *NetworkRouteTablesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkRouteTablesRequest.Merge(m, src) +} +func (m *NetworkRouteTablesRequest) XXX_Size() int { + return m.Size() +} +func (m *NetworkRouteTablesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkRouteTablesRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_NetworkRouteTablesRequest proto.InternalMessageInfo + +func (m *NetworkRouteTablesRequest) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *NetworkRouteTablesRequest) GetRouteTableIds() []string { + if m != nil { + return m.RouteTableIds + } + return nil +} + +func (m *NetworkRouteTablesRequest) GetSubnetIds() []string { + if m != nil { + return m.SubnetIds + } + return nil +} + +func (m *NetworkRouteTablesRequest) GetSubnetCidrs() []string { + if m != nil { + return m.SubnetCidrs + } + return nil +} + +func (m *NetworkRouteTablesRequest) GetRegions() []string { + if m != nil { + return m.Regions + } + return nil +} + +// Network Route Tables Response +// +// x-displayName: "Network Route Tables Response" +// List of RouteTables Associated in the Network +type NetworkRouteTablesResponse struct { + // Network Routes Data + // + // x-displayName: "Network Routes Data" + // Network Routes Data + RoutesData []*NetworkRoutesData `protobuf:"bytes,1,rep,name=routes_data,json=routesData,proto3" json:"routes_data,omitempty"` +} + +func (m *NetworkRouteTablesResponse) Reset() { *m = NetworkRouteTablesResponse{} } +func (*NetworkRouteTablesResponse) ProtoMessage() {} +func (*NetworkRouteTablesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{11} +} +func (m *NetworkRouteTablesResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *NetworkRouteTablesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_NetworkRouteTablesResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *NetworkRouteTablesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkRouteTablesResponse.Merge(m, src) +} +func (m *NetworkRouteTablesResponse) XXX_Size() int { + return m.Size() +} +func (m *NetworkRouteTablesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkRouteTablesResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_NetworkRouteTablesResponse proto.InternalMessageInfo + +func (m *NetworkRouteTablesResponse) GetRoutesData() []*NetworkRoutesData { + if m != nil { + return m.RoutesData + } + return nil +} + // Metric Selector // // x-displayName: "Metric Selector" @@ -803,7 +1064,7 @@ type MetricSelector struct { func (m *MetricSelector) Reset() { *m = MetricSelector{} } func (*MetricSelector) ProtoMessage() {} func (*MetricSelector) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{8} + return fileDescriptor_a69fe73d473fc687, []int{12} } func (m *MetricSelector) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -892,7 +1153,7 @@ type MetricTypeData struct { func (m *MetricTypeData) Reset() { *m = MetricTypeData{} } func (*MetricTypeData) ProtoMessage() {} func (*MetricTypeData) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{9} + return fileDescriptor_a69fe73d473fc687, []int{13} } func (m *MetricTypeData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -960,7 +1221,7 @@ type MetricData struct { func (m *MetricData) Reset() { *m = MetricData{} } func (*MetricData) ProtoMessage() {} func (*MetricData) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{10} + return fileDescriptor_a69fe73d473fc687, []int{14} } func (m *MetricData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1037,7 +1298,7 @@ type RouteTableMetaData struct { func (m *RouteTableMetaData) Reset() { *m = RouteTableMetaData{} } func (*RouteTableMetaData) ProtoMessage() {} func (*RouteTableMetaData) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{11} + return fileDescriptor_a69fe73d473fc687, []int{15} } func (m *RouteTableMetaData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1087,34 +1348,34 @@ func (m *RouteTableMetaData) GetCloudResourceId() string { return "" } -// SiteSummaryInfo +// RouteTableData // -// x-displayName: "Site Summary" -// Summary information related to the site -type SiteSummaryInfo struct { - // Node Count +// x-displayName: "Route Table Data" +// Data associated with the route table +type RouteTableData struct { + // Route Table Data // - // x-displayName: "Node Count" - // Site Node Count. - NodeCount uint32 `protobuf:"varint,1,opt,name=node_count,json=nodeCount,proto3" json:"node_count,omitempty"` - // Availability Zone + // x-displayName: "Route Table Metadata" + // Route Table MetaData + Metadata *RouteTableMetaData `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Route Table // - // x-displayName: "Availability Zone" - // Availability zone - AvailabilityZone []string `protobuf:"bytes,2,rep,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"` + // x-displayName: "Route Table" + // Route Table + RouteTable *RouteTableType `protobuf:"bytes,2,opt,name=route_table,json=routeTable,proto3" json:"route_table,omitempty"` } -func (m *SiteSummaryInfo) Reset() { *m = SiteSummaryInfo{} } -func (*SiteSummaryInfo) ProtoMessage() {} -func (*SiteSummaryInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{12} +func (m *RouteTableData) Reset() { *m = RouteTableData{} } +func (*RouteTableData) ProtoMessage() {} +func (*RouteTableData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{16} } -func (m *SiteSummaryInfo) XXX_Unmarshal(b []byte) error { +func (m *RouteTableData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SiteSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *RouteTableData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_SiteSummaryInfo.Marshal(b, m, deterministic) + return xxx_messageInfo_RouteTableData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1124,55 +1385,60 @@ func (m *SiteSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, err return b[:n], nil } } -func (m *SiteSummaryInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_SiteSummaryInfo.Merge(m, src) +func (m *RouteTableData) XXX_Merge(src proto.Message) { + xxx_messageInfo_RouteTableData.Merge(m, src) } -func (m *SiteSummaryInfo) XXX_Size() int { +func (m *RouteTableData) XXX_Size() int { return m.Size() } -func (m *SiteSummaryInfo) XXX_DiscardUnknown() { - xxx_messageInfo_SiteSummaryInfo.DiscardUnknown(m) +func (m *RouteTableData) XXX_DiscardUnknown() { + xxx_messageInfo_RouteTableData.DiscardUnknown(m) } -var xxx_messageInfo_SiteSummaryInfo proto.InternalMessageInfo +var xxx_messageInfo_RouteTableData proto.InternalMessageInfo -func (m *SiteSummaryInfo) GetNodeCount() uint32 { +func (m *RouteTableData) GetMetadata() *RouteTableMetaData { if m != nil { - return m.NodeCount + return m.Metadata } - return 0 + return nil } -func (m *SiteSummaryInfo) GetAvailabilityZone() []string { +func (m *RouteTableData) GetRouteTable() *RouteTableType { if m != nil { - return m.AvailabilityZone + return m.RouteTable } return nil } -// NetworkSummaryInfo +// SubnetMetaData // -// x-displayName: "Network Summary" -// Summary information related to the network -type NetworkSummaryInfo struct { - // Route Tables +// x-displayName: "Subnet MetaData" +// Metadata associated with the subnets +type SubnetMetaData struct { + // Name // - // x-displayName: "Route Tables" - // List of route tables associated with the network - RouteTables []*RouteTableMetaData `protobuf:"bytes,1,rep,name=route_tables,json=routeTables,proto3" json:"route_tables,omitempty"` + // x-displayName: "Name" + // Name of the subnet + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Cloud Resource Id + // + // x-displayName: "Cloud Resource Id" + // Cloud Resource Identifier the subnet + CloudResourceId string `protobuf:"bytes,2,opt,name=cloud_resource_id,json=cloudResourceId,proto3" json:"cloud_resource_id,omitempty"` } -func (m *NetworkSummaryInfo) Reset() { *m = NetworkSummaryInfo{} } -func (*NetworkSummaryInfo) ProtoMessage() {} -func (*NetworkSummaryInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{13} +func (m *SubnetMetaData) Reset() { *m = SubnetMetaData{} } +func (*SubnetMetaData) ProtoMessage() {} +func (*SubnetMetaData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{17} } -func (m *NetworkSummaryInfo) XXX_Unmarshal(b []byte) error { +func (m *SubnetMetaData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NetworkSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SubnetMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NetworkSummaryInfo.Marshal(b, m, deterministic) + return xxx_messageInfo_SubnetMetaData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1182,48 +1448,60 @@ func (m *NetworkSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, return b[:n], nil } } -func (m *NetworkSummaryInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_NetworkSummaryInfo.Merge(m, src) +func (m *SubnetMetaData) XXX_Merge(src proto.Message) { + xxx_messageInfo_SubnetMetaData.Merge(m, src) } -func (m *NetworkSummaryInfo) XXX_Size() int { +func (m *SubnetMetaData) XXX_Size() int { return m.Size() } -func (m *NetworkSummaryInfo) XXX_DiscardUnknown() { - xxx_messageInfo_NetworkSummaryInfo.DiscardUnknown(m) +func (m *SubnetMetaData) XXX_DiscardUnknown() { + xxx_messageInfo_SubnetMetaData.DiscardUnknown(m) } -var xxx_messageInfo_NetworkSummaryInfo proto.InternalMessageInfo +var xxx_messageInfo_SubnetMetaData proto.InternalMessageInfo -func (m *NetworkSummaryInfo) GetRouteTables() []*RouteTableMetaData { +func (m *SubnetMetaData) GetName() string { if m != nil { - return m.RouteTables + return m.Name } - return nil + return "" } -// SubnetSummaryInfo +func (m *SubnetMetaData) GetCloudResourceId() string { + if m != nil { + return m.CloudResourceId + } + return "" +} + +// SubnetData // -// x-displayName: "Subnet Summary" -// Summary information related to the subnet -type SubnetSummaryInfo struct { - // Route Tables +// x-displayName: "Subnet Data" +// Data associated with the subnets +type SubnetData struct { + // Subnet MetaData // - // x-displayName: "Route Tables" - // List of route tables associated with the subnet - RouteTables []*RouteTableMetaData `protobuf:"bytes,1,rep,name=route_tables,json=routeTables,proto3" json:"route_tables,omitempty"` + // x-displayName: "Subnet MetaData" + // Subnet Metadata + Metadata *SubnetMetaData `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Subnet + // + // x-displayName: "Subnet" + // Subnet + Subnet *SubnetType `protobuf:"bytes,2,opt,name=subnet,proto3" json:"subnet,omitempty"` } -func (m *SubnetSummaryInfo) Reset() { *m = SubnetSummaryInfo{} } -func (*SubnetSummaryInfo) ProtoMessage() {} -func (*SubnetSummaryInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{14} +func (m *SubnetData) Reset() { *m = SubnetData{} } +func (*SubnetData) ProtoMessage() {} +func (*SubnetData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{18} } -func (m *SubnetSummaryInfo) XXX_Unmarshal(b []byte) error { +func (m *SubnetData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SubnetSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SubnetData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_SubnetSummaryInfo.Marshal(b, m, deterministic) + return xxx_messageInfo_SubnetData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1233,58 +1511,60 @@ func (m *SubnetSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, e return b[:n], nil } } -func (m *SubnetSummaryInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_SubnetSummaryInfo.Merge(m, src) +func (m *SubnetData) XXX_Merge(src proto.Message) { + xxx_messageInfo_SubnetData.Merge(m, src) } -func (m *SubnetSummaryInfo) XXX_Size() int { +func (m *SubnetData) XXX_Size() int { return m.Size() } -func (m *SubnetSummaryInfo) XXX_DiscardUnknown() { - xxx_messageInfo_SubnetSummaryInfo.DiscardUnknown(m) +func (m *SubnetData) XXX_DiscardUnknown() { + xxx_messageInfo_SubnetData.DiscardUnknown(m) } -var xxx_messageInfo_SubnetSummaryInfo proto.InternalMessageInfo +var xxx_messageInfo_SubnetData proto.InternalMessageInfo -func (m *SubnetSummaryInfo) GetRouteTables() []*RouteTableMetaData { +func (m *SubnetData) GetMetadata() *SubnetMetaData { if m != nil { - return m.RouteTables + return m.Metadata } return nil } -// NodeTypeSite +func (m *SubnetData) GetSubnet() *SubnetType { + if m != nil { + return m.Subnet + } + return nil +} + +// NetworkRouteTableMetaData // -// x-displayName: "Site" -// NodeTypeSite contains details about the site and the metrics (if requested/available). -type NodeTypeSite struct { - // Info - // - // x-displayName: "Info" - // Information about the site. - Info *SiteType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Metric +// x-displayName: Network RouteTable Metadata" +// Metadata associated with the network route tables +type NetworkRouteTableMetaData struct { + // Route Table Metadata // - // x-displayName: "Metric" - // Metric data for the Site. - Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` - // Summary + // x-displayName: "Route Table Metadata" + // Route Table Metadata + RouteTableMetadata *RouteTableMetaData `protobuf:"bytes,1,opt,name=route_table_metadata,json=routeTableMetadata,proto3" json:"route_table_metadata,omitempty"` + // Subnet Metadata // - // x-displayName: "Summary" - // Site summary contains additional fields that are not part of the "info" field - Summary *SiteSummaryInfo `protobuf:"bytes,3,opt,name=summary,proto3" json:"summary,omitempty"` + // x-displayName: "Subnet Metadata" + // Subnet Metadata + SubnetMetadata []*SubnetMetaData `protobuf:"bytes,2,rep,name=subnet_metadata,json=subnetMetadata,proto3" json:"subnet_metadata,omitempty"` } -func (m *NodeTypeSite) Reset() { *m = NodeTypeSite{} } -func (*NodeTypeSite) ProtoMessage() {} -func (*NodeTypeSite) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{15} +func (m *NetworkRouteTableMetaData) Reset() { *m = NetworkRouteTableMetaData{} } +func (*NetworkRouteTableMetaData) ProtoMessage() {} +func (*NetworkRouteTableMetaData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{19} } -func (m *NodeTypeSite) XXX_Unmarshal(b []byte) error { +func (m *NetworkRouteTableMetaData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeSite) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NetworkRouteTableMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeSite.Marshal(b, m, deterministic) + return xxx_messageInfo_NetworkRouteTableMetaData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1294,80 +1574,60 @@ func (m *NodeTypeSite) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *NodeTypeSite) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeSite.Merge(m, src) +func (m *NetworkRouteTableMetaData) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkRouteTableMetaData.Merge(m, src) } -func (m *NodeTypeSite) XXX_Size() int { +func (m *NetworkRouteTableMetaData) XXX_Size() int { return m.Size() } -func (m *NodeTypeSite) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeSite.DiscardUnknown(m) +func (m *NetworkRouteTableMetaData) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkRouteTableMetaData.DiscardUnknown(m) } -var xxx_messageInfo_NodeTypeSite proto.InternalMessageInfo - -func (m *NodeTypeSite) GetInfo() *SiteType { - if m != nil { - return m.Info - } - return nil -} +var xxx_messageInfo_NetworkRouteTableMetaData proto.InternalMessageInfo -func (m *NodeTypeSite) GetMetric() []*MetricData { +func (m *NetworkRouteTableMetaData) GetRouteTableMetadata() *RouteTableMetaData { if m != nil { - return m.Metric + return m.RouteTableMetadata } return nil } -func (m *NodeTypeSite) GetSummary() *SiteSummaryInfo { +func (m *NetworkRouteTableMetaData) GetSubnetMetadata() []*SubnetMetaData { if m != nil { - return m.Summary + return m.SubnetMetadata } return nil } -// SiteMeshGroupSummaryInfo +// NetworkRouteTableData // -// x-displayName: "Site Mesh Group Summary" -// Summary information related to the site mesh group -type SiteMeshGroupSummaryInfo struct { - // Sites - // - // x-displayName: "Sites" - // This field indicates the number of sites that are part of this site mesh group. - Sites uint32 `protobuf:"varint,1,opt,name=sites,proto3" json:"sites,omitempty"` - // Other Connected Site Mesh Group Sites - // - // x-displayName: "Other Connected Site Mesh Group Sites" - // If the site mesh group is of type "Hub", this field indicates the number of sites in all the spoke mesh groups - // that are connected to this site mesh group. - // If the site mesh group is of type "Spoke", this field indicates the number of sites in the hub as well as the sites - // in other spoke groups that are attached to this hub. - OtherConnectedSiteMeshGroupSites uint32 `protobuf:"varint,2,opt,name=other_connected_site_mesh_group_sites,json=otherConnectedSiteMeshGroupSites,proto3" json:"other_connected_site_mesh_group_sites,omitempty"` - // Link Status Summary +// x-displayName: "Network Route Data" +// Data associated with the network route tables +type NetworkRouteTableData struct { + // Route Table Data // - // x-displayName: "Link Status Summary" - // Summary of the link status between the sites in the site mesh group. - LinkStatusSummary []*LinkInfoSummary `protobuf:"bytes,3,rep,name=link_status_summary,json=linkStatusSummary,proto3" json:"link_status_summary,omitempty"` - // Edge Summary + // x-displayName: "Route Table Data" + // Route Table Data + RouteTableData *RouteTableData `protobuf:"bytes,1,opt,name=route_table_data,json=routeTableData,proto3" json:"route_table_data,omitempty"` + // Subnet Data // - // x-displayName: "Edge Summary" - // Summary of the edges status between the sites in the site mesh group. - EdgeStatusSummary []*EdgeInfoSummary `protobuf:"bytes,4,rep,name=edge_status_summary,json=edgeStatusSummary,proto3" json:"edge_status_summary,omitempty"` + // x-displayName: "Subnet Data" + // Subnet Data + SubnetData []*SubnetData `protobuf:"bytes,2,rep,name=subnet_data,json=subnetData,proto3" json:"subnet_data,omitempty"` } -func (m *SiteMeshGroupSummaryInfo) Reset() { *m = SiteMeshGroupSummaryInfo{} } -func (*SiteMeshGroupSummaryInfo) ProtoMessage() {} -func (*SiteMeshGroupSummaryInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{16} +func (m *NetworkRouteTableData) Reset() { *m = NetworkRouteTableData{} } +func (*NetworkRouteTableData) ProtoMessage() {} +func (*NetworkRouteTableData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{20} } -func (m *SiteMeshGroupSummaryInfo) XXX_Unmarshal(b []byte) error { +func (m *NetworkRouteTableData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SiteMeshGroupSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NetworkRouteTableData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_SiteMeshGroupSummaryInfo.Marshal(b, m, deterministic) + return xxx_messageInfo_NetworkRouteTableData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1377,79 +1637,60 @@ func (m *SiteMeshGroupSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([] return b[:n], nil } } -func (m *SiteMeshGroupSummaryInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_SiteMeshGroupSummaryInfo.Merge(m, src) +func (m *NetworkRouteTableData) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkRouteTableData.Merge(m, src) } -func (m *SiteMeshGroupSummaryInfo) XXX_Size() int { +func (m *NetworkRouteTableData) XXX_Size() int { return m.Size() } -func (m *SiteMeshGroupSummaryInfo) XXX_DiscardUnknown() { - xxx_messageInfo_SiteMeshGroupSummaryInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_SiteMeshGroupSummaryInfo proto.InternalMessageInfo - -func (m *SiteMeshGroupSummaryInfo) GetSites() uint32 { - if m != nil { - return m.Sites - } - return 0 +func (m *NetworkRouteTableData) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkRouteTableData.DiscardUnknown(m) } -func (m *SiteMeshGroupSummaryInfo) GetOtherConnectedSiteMeshGroupSites() uint32 { - if m != nil { - return m.OtherConnectedSiteMeshGroupSites - } - return 0 -} +var xxx_messageInfo_NetworkRouteTableData proto.InternalMessageInfo -func (m *SiteMeshGroupSummaryInfo) GetLinkStatusSummary() []*LinkInfoSummary { +func (m *NetworkRouteTableData) GetRouteTableData() *RouteTableData { if m != nil { - return m.LinkStatusSummary + return m.RouteTableData } return nil } -func (m *SiteMeshGroupSummaryInfo) GetEdgeStatusSummary() []*EdgeInfoSummary { +func (m *NetworkRouteTableData) GetSubnetData() []*SubnetData { if m != nil { - return m.EdgeStatusSummary + return m.SubnetData } return nil } -// NodeTypeSiteMeshGroup +// NetworkRoutesMetaData // -// x-displayName: "Site Mesh Group" -// Site mesh group is represented as a node in the site topology graph. -// In the SiteMeshTopology API, site_mesh_group is represented as a node and all the sites -// that are part of the site mesh group are represented as edges (site -> site_mesh_group) in -// addition to the edges between the sites (site <-> site). If the site_mesh_group is of type "Spoke", -// then the node representing the site_mesh_group will have an edge with another site_mesh_group node -// that represents the "Hub" and vice-versa. -type NodeTypeSiteMeshGroup struct { - // Info +// x-displayName: Network RouteTable Metadata" +// Metadata associated with the network routes +type NetworkRoutesMetaData struct { + // Network Id // - // x-displayName: "Info" - // Information about the site mesh group. - Info *SiteMeshGroupType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Summary + // x-displayName: "Network Id" + // Network Id + NetworkId string `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"` + // Network Routes Metadata // - // x-displayName: "Summary" - // Summary information related to the site mesh group - Summary *SiteMeshGroupSummaryInfo `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"` + // x-displayName: "Network Route Tables Metadata" + // Network Route Tables Metadata + RouteTablesMetadata []*NetworkRouteTableMetaData `protobuf:"bytes,2,rep,name=route_tables_metadata,json=routeTablesMetadata,proto3" json:"route_tables_metadata,omitempty"` } -func (m *NodeTypeSiteMeshGroup) Reset() { *m = NodeTypeSiteMeshGroup{} } -func (*NodeTypeSiteMeshGroup) ProtoMessage() {} -func (*NodeTypeSiteMeshGroup) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{17} +func (m *NetworkRoutesMetaData) Reset() { *m = NetworkRoutesMetaData{} } +func (*NetworkRoutesMetaData) ProtoMessage() {} +func (*NetworkRoutesMetaData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{21} } -func (m *NodeTypeSiteMeshGroup) XXX_Unmarshal(b []byte) error { +func (m *NetworkRoutesMetaData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeSiteMeshGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NetworkRoutesMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeSiteMeshGroup.Marshal(b, m, deterministic) + return xxx_messageInfo_NetworkRoutesMetaData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1459,55 +1700,60 @@ func (m *NodeTypeSiteMeshGroup) XXX_Marshal(b []byte, deterministic bool) ([]byt return b[:n], nil } } -func (m *NodeTypeSiteMeshGroup) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeSiteMeshGroup.Merge(m, src) +func (m *NetworkRoutesMetaData) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkRoutesMetaData.Merge(m, src) } -func (m *NodeTypeSiteMeshGroup) XXX_Size() int { +func (m *NetworkRoutesMetaData) XXX_Size() int { return m.Size() } -func (m *NodeTypeSiteMeshGroup) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeSiteMeshGroup.DiscardUnknown(m) +func (m *NetworkRoutesMetaData) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkRoutesMetaData.DiscardUnknown(m) } -var xxx_messageInfo_NodeTypeSiteMeshGroup proto.InternalMessageInfo +var xxx_messageInfo_NetworkRoutesMetaData proto.InternalMessageInfo -func (m *NodeTypeSiteMeshGroup) GetInfo() *SiteMeshGroupType { +func (m *NetworkRoutesMetaData) GetNetworkId() string { if m != nil { - return m.Info + return m.NetworkId } - return nil + return "" } -func (m *NodeTypeSiteMeshGroup) GetSummary() *SiteMeshGroupSummaryInfo { +func (m *NetworkRoutesMetaData) GetRouteTablesMetadata() []*NetworkRouteTableMetaData { if m != nil { - return m.Summary + return m.RouteTablesMetadata } return nil } -// DCClusterGroupSummaryInfo +// NetworkRoutesData // -// x-displayName: "DC Cluster Group Summary" -// Summary information related to the DC Cluster Group -type DCClusterGroupSummaryInfo struct { - // Sites +// x-displayName: Network Routes Data" +// Data associated with the network routes +type NetworkRoutesData struct { + // Network Id // - // x-displayName: "Sites" - // This field indicates the number of sites that are part of this DC Cluster group. - Sites uint32 `protobuf:"varint,1,opt,name=sites,proto3" json:"sites,omitempty"` + // x-displayName: "Network Id" + // Network Id + NetworkId string `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"` + // Network Routes Data + // + // x-displayName: "Network Route Tables Data" + // Network Route Tables Data + RouteTablesData []*NetworkRouteTableData `protobuf:"bytes,2,rep,name=route_tables_data,json=routeTablesData,proto3" json:"route_tables_data,omitempty"` } -func (m *DCClusterGroupSummaryInfo) Reset() { *m = DCClusterGroupSummaryInfo{} } -func (*DCClusterGroupSummaryInfo) ProtoMessage() {} -func (*DCClusterGroupSummaryInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{18} +func (m *NetworkRoutesData) Reset() { *m = NetworkRoutesData{} } +func (*NetworkRoutesData) ProtoMessage() {} +func (*NetworkRoutesData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{22} } -func (m *DCClusterGroupSummaryInfo) XXX_Unmarshal(b []byte) error { +func (m *NetworkRoutesData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *DCClusterGroupSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NetworkRoutesData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_DCClusterGroupSummaryInfo.Marshal(b, m, deterministic) + return xxx_messageInfo_NetworkRoutesData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1517,56 +1763,65 @@ func (m *DCClusterGroupSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([ return b[:n], nil } } -func (m *DCClusterGroupSummaryInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_DCClusterGroupSummaryInfo.Merge(m, src) +func (m *NetworkRoutesData) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkRoutesData.Merge(m, src) } -func (m *DCClusterGroupSummaryInfo) XXX_Size() int { +func (m *NetworkRoutesData) XXX_Size() int { return m.Size() } -func (m *DCClusterGroupSummaryInfo) XXX_DiscardUnknown() { - xxx_messageInfo_DCClusterGroupSummaryInfo.DiscardUnknown(m) +func (m *NetworkRoutesData) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkRoutesData.DiscardUnknown(m) } -var xxx_messageInfo_DCClusterGroupSummaryInfo proto.InternalMessageInfo +var xxx_messageInfo_NetworkRoutesData proto.InternalMessageInfo -func (m *DCClusterGroupSummaryInfo) GetSites() uint32 { +func (m *NetworkRoutesData) GetNetworkId() string { if m != nil { - return m.Sites + return m.NetworkId } - return 0 + return "" } -// NodeTypeDCClusterGroup +func (m *NetworkRoutesData) GetRouteTablesData() []*NetworkRouteTableData { + if m != nil { + return m.RouteTablesData + } + return nil +} + +// SiteSummaryInfo // -// x-displayName: "DC Cluster Group" -// DC Cluster group is represented as a node in the site topology graph. -// In the DCClusterTopology API, dc_cluster_group is represented as a node and all the sites -// that are part of the DC Cluster group are represented as edges (site -> dc_cluster_group) in -// addition to the edges between the sites (site <-> site). -type NodeTypeDCClusterGroup struct { - // Info +// x-displayName: "Site Summary" +// Summary information related to the site +type SiteSummaryInfo struct { + // Node Count // - // x-displayName: "Info" - // Information about the DC Cluster group. - Info *DCClusterGroupType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Summary + // x-displayName: "Node Count" + // Site Node Count. + NodeCount uint32 `protobuf:"varint,1,opt,name=node_count,json=nodeCount,proto3" json:"node_count,omitempty"` + // Availability Zone // - // x-displayName: "Summary" - // Summary information related to the DC Cluster group - Summary *DCClusterGroupSummaryInfo `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"` + // x-displayName: "Availability Zone" + // Availability zone + AvailabilityZone []string `protobuf:"bytes,2,rep,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"` + // node_info + // + // x-displayName: "Node info" + // Provides mapping for node, private ip and public ip + NodeInfo []*site.Node `protobuf:"bytes,3,rep,name=node_info,json=nodeInfo,proto3" json:"node_info,omitempty"` } -func (m *NodeTypeDCClusterGroup) Reset() { *m = NodeTypeDCClusterGroup{} } -func (*NodeTypeDCClusterGroup) ProtoMessage() {} -func (*NodeTypeDCClusterGroup) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{19} +func (m *SiteSummaryInfo) Reset() { *m = SiteSummaryInfo{} } +func (*SiteSummaryInfo) ProtoMessage() {} +func (*SiteSummaryInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{23} } -func (m *NodeTypeDCClusterGroup) XXX_Unmarshal(b []byte) error { +func (m *SiteSummaryInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeDCClusterGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SiteSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeDCClusterGroup.Marshal(b, m, deterministic) + return xxx_messageInfo_SiteSummaryInfo.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1576,60 +1831,62 @@ func (m *NodeTypeDCClusterGroup) XXX_Marshal(b []byte, deterministic bool) ([]by return b[:n], nil } } -func (m *NodeTypeDCClusterGroup) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeDCClusterGroup.Merge(m, src) +func (m *SiteSummaryInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SiteSummaryInfo.Merge(m, src) } -func (m *NodeTypeDCClusterGroup) XXX_Size() int { +func (m *SiteSummaryInfo) XXX_Size() int { return m.Size() } -func (m *NodeTypeDCClusterGroup) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeDCClusterGroup.DiscardUnknown(m) +func (m *SiteSummaryInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SiteSummaryInfo.DiscardUnknown(m) } -var xxx_messageInfo_NodeTypeDCClusterGroup proto.InternalMessageInfo +var xxx_messageInfo_SiteSummaryInfo proto.InternalMessageInfo -func (m *NodeTypeDCClusterGroup) GetInfo() *DCClusterGroupType { +func (m *SiteSummaryInfo) GetNodeCount() uint32 { if m != nil { - return m.Info + return m.NodeCount + } + return 0 +} + +func (m *SiteSummaryInfo) GetAvailabilityZone() []string { + if m != nil { + return m.AvailabilityZone } return nil } -func (m *NodeTypeDCClusterGroup) GetSummary() *DCClusterGroupSummaryInfo { +func (m *SiteSummaryInfo) GetNodeInfo() []*site.Node { if m != nil { - return m.Summary + return m.NodeInfo } return nil } -// NodeTypeTransitGateway +// NetworkSummaryInfo // -// x-displayName: "Transit Gateway" -// NodeTypeTransitGateway contains details about the transit gateway and the metrics (if requested/available). -type NodeTypeTransitGateway struct { - // Info - // - // x-displayName: "Info" - // Information about the Transit Gateway. - Info *TransitGatewayType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Metric +// x-displayName: "Network Summary" +// Summary information related to the network +type NetworkSummaryInfo struct { + // Route Tables // - // x-displayName: "Metric" - // Metric data for the Transit Gateway. - Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` + // x-displayName: "Route Tables" + // List of route tables associated with the network + RouteTables []*RouteTableMetaData `protobuf:"bytes,1,rep,name=route_tables,json=routeTables,proto3" json:"route_tables,omitempty"` } -func (m *NodeTypeTransitGateway) Reset() { *m = NodeTypeTransitGateway{} } -func (*NodeTypeTransitGateway) ProtoMessage() {} -func (*NodeTypeTransitGateway) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{20} +func (m *NetworkSummaryInfo) Reset() { *m = NetworkSummaryInfo{} } +func (*NetworkSummaryInfo) ProtoMessage() {} +func (*NetworkSummaryInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{24} } -func (m *NodeTypeTransitGateway) XXX_Unmarshal(b []byte) error { +func (m *NetworkSummaryInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeTransitGateway) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NetworkSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeTransitGateway.Marshal(b, m, deterministic) + return xxx_messageInfo_NetworkSummaryInfo.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1639,65 +1896,48 @@ func (m *NodeTypeTransitGateway) XXX_Marshal(b []byte, deterministic bool) ([]by return b[:n], nil } } -func (m *NodeTypeTransitGateway) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeTransitGateway.Merge(m, src) +func (m *NetworkSummaryInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_NetworkSummaryInfo.Merge(m, src) } -func (m *NodeTypeTransitGateway) XXX_Size() int { +func (m *NetworkSummaryInfo) XXX_Size() int { return m.Size() } -func (m *NodeTypeTransitGateway) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeTransitGateway.DiscardUnknown(m) +func (m *NetworkSummaryInfo) XXX_DiscardUnknown() { + xxx_messageInfo_NetworkSummaryInfo.DiscardUnknown(m) } -var xxx_messageInfo_NodeTypeTransitGateway proto.InternalMessageInfo - -func (m *NodeTypeTransitGateway) GetInfo() *TransitGatewayType { - if m != nil { - return m.Info - } - return nil -} +var xxx_messageInfo_NetworkSummaryInfo proto.InternalMessageInfo -func (m *NodeTypeTransitGateway) GetMetric() []*MetricData { +func (m *NetworkSummaryInfo) GetRouteTables() []*RouteTableMetaData { if m != nil { - return m.Metric + return m.RouteTables } return nil } -// NodeTypeNetwork +// SubnetSummaryInfo // -// x-displayName: "Network" -// NodeTypeNetwork contains details about the network and the metrics (if requested/available). -type NodeTypeNetwork struct { - // Info - // - // x-displayName: "Info" - // Information about the Network. - Info *NetworkType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Metric - // - // x-displayName: "Metric" - // Metric data for the Network. - Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` - // Summary +// x-displayName: "Subnet Summary" +// Summary information related to the subnet +type SubnetSummaryInfo struct { + // Route Tables // - // x-displayName: "Summary" - // Network summary contains additional fields that are not part of the "info" field - Summary *NetworkSummaryInfo `protobuf:"bytes,3,opt,name=summary,proto3" json:"summary,omitempty"` + // x-displayName: "Route Tables" + // List of route tables associated with the subnet + RouteTables []*RouteTableMetaData `protobuf:"bytes,1,rep,name=route_tables,json=routeTables,proto3" json:"route_tables,omitempty"` } -func (m *NodeTypeNetwork) Reset() { *m = NodeTypeNetwork{} } -func (*NodeTypeNetwork) ProtoMessage() {} -func (*NodeTypeNetwork) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{21} +func (m *SubnetSummaryInfo) Reset() { *m = SubnetSummaryInfo{} } +func (*SubnetSummaryInfo) ProtoMessage() {} +func (*SubnetSummaryInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{25} } -func (m *NodeTypeNetwork) XXX_Unmarshal(b []byte) error { +func (m *SubnetSummaryInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeNetwork) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SubnetSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeNetwork.Marshal(b, m, deterministic) + return xxx_messageInfo_SubnetSummaryInfo.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1707,72 +1947,58 @@ func (m *NodeTypeNetwork) XXX_Marshal(b []byte, deterministic bool) ([]byte, err return b[:n], nil } } -func (m *NodeTypeNetwork) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeNetwork.Merge(m, src) +func (m *SubnetSummaryInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SubnetSummaryInfo.Merge(m, src) } -func (m *NodeTypeNetwork) XXX_Size() int { +func (m *SubnetSummaryInfo) XXX_Size() int { return m.Size() } -func (m *NodeTypeNetwork) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeNetwork.DiscardUnknown(m) -} - -var xxx_messageInfo_NodeTypeNetwork proto.InternalMessageInfo - -func (m *NodeTypeNetwork) GetInfo() *NetworkType { - if m != nil { - return m.Info - } - return nil +func (m *SubnetSummaryInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SubnetSummaryInfo.DiscardUnknown(m) } -func (m *NodeTypeNetwork) GetMetric() []*MetricData { - if m != nil { - return m.Metric - } - return nil -} +var xxx_messageInfo_SubnetSummaryInfo proto.InternalMessageInfo -func (m *NodeTypeNetwork) GetSummary() *NetworkSummaryInfo { +func (m *SubnetSummaryInfo) GetRouteTables() []*RouteTableMetaData { if m != nil { - return m.Summary + return m.RouteTables } return nil } -// NodeTypeSubnet +// NodeTypeSite // -// x-displayName: "Subnet" -// NodeTypeSubnet contains details about the subnet and the metrics (if requested/available). -type NodeTypeSubnet struct { +// x-displayName: "Site" +// NodeTypeSite contains details about the site and the metrics (if requested/available). +type NodeTypeSite struct { // Info // // x-displayName: "Info" - // Information about the Subnet. - Info *SubnetType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Information about the site. + Info *SiteType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` // Metric // // x-displayName: "Metric" - // Metric data for the Subnet. + // Metric data for the Site. Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` // Summary // // x-displayName: "Summary" - // Subnet summary contains additional fields that are not part of the "info" field - Summary *SubnetSummaryInfo `protobuf:"bytes,3,opt,name=summary,proto3" json:"summary,omitempty"` + // Site summary contains additional fields that are not part of the "info" field + Summary *SiteSummaryInfo `protobuf:"bytes,3,opt,name=summary,proto3" json:"summary,omitempty"` } -func (m *NodeTypeSubnet) Reset() { *m = NodeTypeSubnet{} } -func (*NodeTypeSubnet) ProtoMessage() {} -func (*NodeTypeSubnet) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{22} +func (m *NodeTypeSite) Reset() { *m = NodeTypeSite{} } +func (*NodeTypeSite) ProtoMessage() {} +func (*NodeTypeSite) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{26} } -func (m *NodeTypeSubnet) XXX_Unmarshal(b []byte) error { +func (m *NodeTypeSite) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeSubnet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NodeTypeSite) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeSubnet.Marshal(b, m, deterministic) + return xxx_messageInfo_NodeTypeSite.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1782,67 +2008,80 @@ func (m *NodeTypeSubnet) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro return b[:n], nil } } -func (m *NodeTypeSubnet) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeSubnet.Merge(m, src) +func (m *NodeTypeSite) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeSite.Merge(m, src) } -func (m *NodeTypeSubnet) XXX_Size() int { +func (m *NodeTypeSite) XXX_Size() int { return m.Size() } -func (m *NodeTypeSubnet) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeSubnet.DiscardUnknown(m) +func (m *NodeTypeSite) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeSite.DiscardUnknown(m) } -var xxx_messageInfo_NodeTypeSubnet proto.InternalMessageInfo +var xxx_messageInfo_NodeTypeSite proto.InternalMessageInfo -func (m *NodeTypeSubnet) GetInfo() *SubnetType { +func (m *NodeTypeSite) GetInfo() *SiteType { if m != nil { return m.Info } return nil } -func (m *NodeTypeSubnet) GetMetric() []*MetricData { +func (m *NodeTypeSite) GetMetric() []*MetricData { if m != nil { return m.Metric } return nil } -func (m *NodeTypeSubnet) GetSummary() *SubnetSummaryInfo { +func (m *NodeTypeSite) GetSummary() *SiteSummaryInfo { if m != nil { return m.Summary } return nil } -// NodeTypeInstance +// SiteMeshGroupSummaryInfo // -// x-displayName: "Instance" -// NodeTypeInstance contains details about the instance and the metrics (if requested/available). -type NodeTypeInstance struct { - // Info +// x-displayName: "Site Mesh Group Summary" +// Summary information related to the site mesh group +type SiteMeshGroupSummaryInfo struct { + // Sites // - // x-displayName: "Info" - // Information about the Instance. - Info *InstanceType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Metric + // x-displayName: "Sites" + // This field indicates the number of sites that are part of this site mesh group. + Sites uint32 `protobuf:"varint,1,opt,name=sites,proto3" json:"sites,omitempty"` + // Other Connected Site Mesh Group Sites // - // x-displayName: "Metric" - // Metric data for the Instance. - Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` + // x-displayName: "Other Connected Site Mesh Group Sites" + // If the site mesh group is of type "Hub", this field indicates the number of sites in all the spoke mesh groups + // that are connected to this site mesh group. + // If the site mesh group is of type "Spoke", this field indicates the number of sites in the hub as well as the sites + // in other spoke groups that are attached to this hub. + OtherConnectedSiteMeshGroupSites uint32 `protobuf:"varint,2,opt,name=other_connected_site_mesh_group_sites,json=otherConnectedSiteMeshGroupSites,proto3" json:"other_connected_site_mesh_group_sites,omitempty"` + // Link Status Summary + // + // x-displayName: "Link Status Summary" + // Summary of the link status between the sites in the site mesh group. + LinkStatusSummary []*LinkInfoSummary `protobuf:"bytes,3,rep,name=link_status_summary,json=linkStatusSummary,proto3" json:"link_status_summary,omitempty"` + // Edge Summary + // + // x-displayName: "Edge Summary" + // Summary of the edges status between the sites in the site mesh group. + EdgeStatusSummary []*EdgeInfoSummary `protobuf:"bytes,4,rep,name=edge_status_summary,json=edgeStatusSummary,proto3" json:"edge_status_summary,omitempty"` } -func (m *NodeTypeInstance) Reset() { *m = NodeTypeInstance{} } -func (*NodeTypeInstance) ProtoMessage() {} -func (*NodeTypeInstance) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{23} +func (m *SiteMeshGroupSummaryInfo) Reset() { *m = SiteMeshGroupSummaryInfo{} } +func (*SiteMeshGroupSummaryInfo) ProtoMessage() {} +func (*SiteMeshGroupSummaryInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{27} } -func (m *NodeTypeInstance) XXX_Unmarshal(b []byte) error { +func (m *SiteMeshGroupSummaryInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeTypeInstance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SiteMeshGroupSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeTypeInstance.Marshal(b, m, deterministic) + return xxx_messageInfo_SiteMeshGroupSummaryInfo.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1852,95 +2091,79 @@ func (m *NodeTypeInstance) XXX_Marshal(b []byte, deterministic bool) ([]byte, er return b[:n], nil } } -func (m *NodeTypeInstance) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeTypeInstance.Merge(m, src) +func (m *SiteMeshGroupSummaryInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SiteMeshGroupSummaryInfo.Merge(m, src) } -func (m *NodeTypeInstance) XXX_Size() int { +func (m *SiteMeshGroupSummaryInfo) XXX_Size() int { return m.Size() } -func (m *NodeTypeInstance) XXX_DiscardUnknown() { - xxx_messageInfo_NodeTypeInstance.DiscardUnknown(m) +func (m *SiteMeshGroupSummaryInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SiteMeshGroupSummaryInfo.DiscardUnknown(m) } -var xxx_messageInfo_NodeTypeInstance proto.InternalMessageInfo +var xxx_messageInfo_SiteMeshGroupSummaryInfo proto.InternalMessageInfo -func (m *NodeTypeInstance) GetInfo() *InstanceType { +func (m *SiteMeshGroupSummaryInfo) GetSites() uint32 { if m != nil { - return m.Info + return m.Sites + } + return 0 +} + +func (m *SiteMeshGroupSummaryInfo) GetOtherConnectedSiteMeshGroupSites() uint32 { + if m != nil { + return m.OtherConnectedSiteMeshGroupSites + } + return 0 +} + +func (m *SiteMeshGroupSummaryInfo) GetLinkStatusSummary() []*LinkInfoSummary { + if m != nil { + return m.LinkStatusSummary } return nil } -func (m *NodeTypeInstance) GetMetric() []*MetricData { +func (m *SiteMeshGroupSummaryInfo) GetEdgeStatusSummary() []*EdgeInfoSummary { if m != nil { - return m.Metric + return m.EdgeStatusSummary } return nil } -// Node Metadata +// NodeTypeSiteMeshGroup // -// x-displayName: "Node Metadata" -// Metadata for node -type NodeMetaData struct { - // Name - // - // x-displayName: "Name" - // x-example: "site-1" - // Name of the node. - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Cloud Resource Id - // - // x-displayName: "Cloud Resource Id" - // Cloud Resource Identifier for the node. This is only used for node which represent the cloud resource - CloudResourceId string `protobuf:"bytes,8,opt,name=cloud_resource_id,json=cloudResourceId,proto3" json:"cloud_resource_id,omitempty"` - // Description - // - // x-displayName: "Description" - // Description of the node. - // This field may or may not be populated depending on the node type and if the user provided description - // while creating the resource. - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - // Level - // - // x-displayName: "Level" - // x-example: "1" - // Level indicates the distance of the node from the root node. A value of 0 indicates the root node. - Level uint32 `protobuf:"varint,3,opt,name=level,proto3" json:"level,omitempty"` - // Provider Type - // - // x-displayName: "Provider Type" - // Provider type - ProviderType ProviderType `protobuf:"varint,4,opt,name=provider_type,json=providerType,proto3,enum=ves.io.schema.topology.ProviderType" json:"provider_type,omitempty"` - // Owner Id - // - // x-displayName: "Owner Id" - // x-example: "owner-1" - // Owner id - OwnerId string `protobuf:"bytes,5,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` - // Tags +// x-displayName: "Site Mesh Group" +// Site mesh group is represented as a node in the site topology graph. +// In the SiteMeshTopology API, site_mesh_group is represented as a node and all the sites +// that are part of the site mesh group are represented as edges (site -> site_mesh_group) in +// addition to the edges between the sites (site <-> site). If the site_mesh_group is of type "Spoke", +// then the node representing the site_mesh_group will have an edge with another site_mesh_group node +// that represents the "Hub" and vice-versa. +type NodeTypeSiteMeshGroup struct { + // Info // - // x-displayName: "Tags" - // List of key/value pairs associated with the node - Tags map[string]string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Status + // x-displayName: "Info" + // Information about the site mesh group. + Info *SiteMeshGroupType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Summary // - // x-displayName: "Status" - // status in the node - Status string `protobuf:"bytes,7,opt,name=status,proto3" json:"status,omitempty"` + // x-displayName: "Summary" + // Summary information related to the site mesh group + Summary *SiteMeshGroupSummaryInfo `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"` } -func (m *NodeMetaData) Reset() { *m = NodeMetaData{} } -func (*NodeMetaData) ProtoMessage() {} -func (*NodeMetaData) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{24} +func (m *NodeTypeSiteMeshGroup) Reset() { *m = NodeTypeSiteMeshGroup{} } +func (*NodeTypeSiteMeshGroup) ProtoMessage() {} +func (*NodeTypeSiteMeshGroup) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{28} } -func (m *NodeMetaData) XXX_Unmarshal(b []byte) error { +func (m *NodeTypeSiteMeshGroup) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *NodeMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NodeTypeSiteMeshGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_NodeMetaData.Marshal(b, m, deterministic) + return xxx_messageInfo_NodeTypeSiteMeshGroup.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -1950,116 +2173,114 @@ func (m *NodeMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *NodeMetaData) XXX_Merge(src proto.Message) { - xxx_messageInfo_NodeMetaData.Merge(m, src) +func (m *NodeTypeSiteMeshGroup) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeSiteMeshGroup.Merge(m, src) } -func (m *NodeMetaData) XXX_Size() int { +func (m *NodeTypeSiteMeshGroup) XXX_Size() int { return m.Size() } -func (m *NodeMetaData) XXX_DiscardUnknown() { - xxx_messageInfo_NodeMetaData.DiscardUnknown(m) +func (m *NodeTypeSiteMeshGroup) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeSiteMeshGroup.DiscardUnknown(m) } -var xxx_messageInfo_NodeMetaData proto.InternalMessageInfo +var xxx_messageInfo_NodeTypeSiteMeshGroup proto.InternalMessageInfo -func (m *NodeMetaData) GetName() string { +func (m *NodeTypeSiteMeshGroup) GetInfo() *SiteMeshGroupType { if m != nil { - return m.Name + return m.Info } - return "" + return nil } -func (m *NodeMetaData) GetCloudResourceId() string { +func (m *NodeTypeSiteMeshGroup) GetSummary() *SiteMeshGroupSummaryInfo { if m != nil { - return m.CloudResourceId + return m.Summary } - return "" + return nil } -func (m *NodeMetaData) GetDescription() string { - if m != nil { - return m.Description - } - return "" +// DCClusterGroupSummaryInfo +// +// x-displayName: "DC Cluster Group Summary" +// Summary information related to the DC Cluster Group +type DCClusterGroupSummaryInfo struct { + // Sites + // + // x-displayName: "Sites" + // This field indicates the number of sites that are part of this DC Cluster group. + Sites uint32 `protobuf:"varint,1,opt,name=sites,proto3" json:"sites,omitempty"` } -func (m *NodeMetaData) GetLevel() uint32 { - if m != nil { - return m.Level - } - return 0 +func (m *DCClusterGroupSummaryInfo) Reset() { *m = DCClusterGroupSummaryInfo{} } +func (*DCClusterGroupSummaryInfo) ProtoMessage() {} +func (*DCClusterGroupSummaryInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{29} } - -func (m *NodeMetaData) GetProviderType() ProviderType { - if m != nil { - return m.ProviderType - } - return PROVIDER_TYPE_UNSPECIFIED +func (m *DCClusterGroupSummaryInfo) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (m *NodeMetaData) GetOwnerId() string { - if m != nil { - return m.OwnerId +func (m *DCClusterGroupSummaryInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DCClusterGroupSummaryInfo.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return "" } - -func (m *NodeMetaData) GetTags() map[string]string { - if m != nil { - return m.Tags - } - return nil +func (m *DCClusterGroupSummaryInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_DCClusterGroupSummaryInfo.Merge(m, src) +} +func (m *DCClusterGroupSummaryInfo) XXX_Size() int { + return m.Size() +} +func (m *DCClusterGroupSummaryInfo) XXX_DiscardUnknown() { + xxx_messageInfo_DCClusterGroupSummaryInfo.DiscardUnknown(m) } -func (m *NodeMetaData) GetStatus() string { +var xxx_messageInfo_DCClusterGroupSummaryInfo proto.InternalMessageInfo + +func (m *DCClusterGroupSummaryInfo) GetSites() uint32 { if m != nil { - return m.Status + return m.Sites } - return "" + return 0 } -// Node +// NodeTypeDCClusterGroup // -// x-displayName: "Node" -// Canonical representation of Node in the topology graph. -type Node struct { - // Id - // - // x-displayName: "Id" - // Identifier for the node. - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - // Metadata - // - // x-displayName: "Metadata" - // Metadata for the node. - Metadata *NodeMetaData `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` - // Node Type +// x-displayName: "DC Cluster Group" +// DC Cluster group is represented as a node in the site topology graph. +// In the DCClusterTopology API, dc_cluster_group is represented as a node and all the sites +// that are part of the DC Cluster group are represented as edges (site -> dc_cluster_group) in +// addition to the edges between the sites (site <-> site). +type NodeTypeDCClusterGroup struct { + // Info // - // x-displayName: "Node Type" - // Identifies the Node Type. + // x-displayName: "Info" + // Information about the DC Cluster group. + Info *DCClusterGroupType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Summary // - // Types that are valid to be assigned to NodeType: - // *Node_Site - // *Node_TransitGateway - // *Node_Network - // *Node_Subnet - // *Node_Instance - // *Node_SiteMeshGroup - // *Node_DcClusterGroup - NodeType isNode_NodeType `protobuf_oneof:"node_type"` + // x-displayName: "Summary" + // Summary information related to the DC Cluster group + Summary *DCClusterGroupSummaryInfo `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"` } -func (m *Node) Reset() { *m = Node{} } -func (*Node) ProtoMessage() {} -func (*Node) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{25} +func (m *NodeTypeDCClusterGroup) Reset() { *m = NodeTypeDCClusterGroup{} } +func (*NodeTypeDCClusterGroup) ProtoMessage() {} +func (*NodeTypeDCClusterGroup) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{30} } -func (m *Node) XXX_Unmarshal(b []byte) error { +func (m *NodeTypeDCClusterGroup) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *Node) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NodeTypeDCClusterGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_Node.Marshal(b, m, deterministic) + return xxx_messageInfo_NodeTypeDCClusterGroup.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -2069,185 +2290,203 @@ func (m *Node) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *Node) XXX_Merge(src proto.Message) { - xxx_messageInfo_Node.Merge(m, src) +func (m *NodeTypeDCClusterGroup) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeDCClusterGroup.Merge(m, src) } -func (m *Node) XXX_Size() int { +func (m *NodeTypeDCClusterGroup) XXX_Size() int { return m.Size() } -func (m *Node) XXX_DiscardUnknown() { - xxx_messageInfo_Node.DiscardUnknown(m) +func (m *NodeTypeDCClusterGroup) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeDCClusterGroup.DiscardUnknown(m) } -var xxx_messageInfo_Node proto.InternalMessageInfo +var xxx_messageInfo_NodeTypeDCClusterGroup proto.InternalMessageInfo -type isNode_NodeType interface { - isNode_NodeType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *NodeTypeDCClusterGroup) GetInfo() *DCClusterGroupType { + if m != nil { + return m.Info + } + return nil } -type Node_Site struct { - Site *NodeTypeSite `protobuf:"bytes,4,opt,name=site,proto3,oneof" json:"site,omitempty"` +func (m *NodeTypeDCClusterGroup) GetSummary() *DCClusterGroupSummaryInfo { + if m != nil { + return m.Summary + } + return nil } -type Node_TransitGateway struct { - TransitGateway *NodeTypeTransitGateway `protobuf:"bytes,5,opt,name=transit_gateway,json=transitGateway,proto3,oneof" json:"transit_gateway,omitempty"` + +// NodeTypeTransitGateway +// +// x-displayName: "Transit Gateway" +// NodeTypeTransitGateway contains details about the transit gateway and the metrics (if requested/available). +type NodeTypeTransitGateway struct { + // Info + // + // x-displayName: "Info" + // Information about the Transit Gateway. + Info *TransitGatewayType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Metric + // + // x-displayName: "Metric" + // Metric data for the Transit Gateway. + Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` } -type Node_Network struct { - Network *NodeTypeNetwork `protobuf:"bytes,6,opt,name=network,proto3,oneof" json:"network,omitempty"` + +func (m *NodeTypeTransitGateway) Reset() { *m = NodeTypeTransitGateway{} } +func (*NodeTypeTransitGateway) ProtoMessage() {} +func (*NodeTypeTransitGateway) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{31} } -type Node_Subnet struct { - Subnet *NodeTypeSubnet `protobuf:"bytes,7,opt,name=subnet,proto3,oneof" json:"subnet,omitempty"` +func (m *NodeTypeTransitGateway) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } -type Node_Instance struct { - Instance *NodeTypeInstance `protobuf:"bytes,8,opt,name=instance,proto3,oneof" json:"instance,omitempty"` +func (m *NodeTypeTransitGateway) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_NodeTypeTransitGateway.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } } -type Node_SiteMeshGroup struct { - SiteMeshGroup *NodeTypeSiteMeshGroup `protobuf:"bytes,9,opt,name=site_mesh_group,json=siteMeshGroup,proto3,oneof" json:"site_mesh_group,omitempty"` +func (m *NodeTypeTransitGateway) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeTransitGateway.Merge(m, src) } -type Node_DcClusterGroup struct { - DcClusterGroup *NodeTypeDCClusterGroup `protobuf:"bytes,10,opt,name=dc_cluster_group,json=dcClusterGroup,proto3,oneof" json:"dc_cluster_group,omitempty"` +func (m *NodeTypeTransitGateway) XXX_Size() int { + return m.Size() +} +func (m *NodeTypeTransitGateway) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeTransitGateway.DiscardUnknown(m) } -func (*Node_Site) isNode_NodeType() {} -func (*Node_TransitGateway) isNode_NodeType() {} -func (*Node_Network) isNode_NodeType() {} -func (*Node_Subnet) isNode_NodeType() {} -func (*Node_Instance) isNode_NodeType() {} -func (*Node_SiteMeshGroup) isNode_NodeType() {} -func (*Node_DcClusterGroup) isNode_NodeType() {} +var xxx_messageInfo_NodeTypeTransitGateway proto.InternalMessageInfo -func (m *Node) GetNodeType() isNode_NodeType { +func (m *NodeTypeTransitGateway) GetInfo() *TransitGatewayType { if m != nil { - return m.NodeType + return m.Info } return nil } -func (m *Node) GetId() string { - if m != nil { - return m.Id - } - return "" -} - -func (m *Node) GetMetadata() *NodeMetaData { +func (m *NodeTypeTransitGateway) GetMetric() []*MetricData { if m != nil { - return m.Metadata + return m.Metric } return nil } -func (m *Node) GetSite() *NodeTypeSite { - if x, ok := m.GetNodeType().(*Node_Site); ok { - return x.Site - } - return nil +// NodeTypeNetwork +// +// x-displayName: "Network" +// NodeTypeNetwork contains details about the network and the metrics (if requested/available). +type NodeTypeNetwork struct { + // Info + // + // x-displayName: "Info" + // Information about the Network. + Info *NetworkType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Metric + // + // x-displayName: "Metric" + // Metric data for the Network. + Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` + // Summary + // + // x-displayName: "Summary" + // Network summary contains additional fields that are not part of the "info" field + Summary *NetworkSummaryInfo `protobuf:"bytes,3,opt,name=summary,proto3" json:"summary,omitempty"` } -func (m *Node) GetTransitGateway() *NodeTypeTransitGateway { - if x, ok := m.GetNodeType().(*Node_TransitGateway); ok { - return x.TransitGateway - } - return nil +func (m *NodeTypeNetwork) Reset() { *m = NodeTypeNetwork{} } +func (*NodeTypeNetwork) ProtoMessage() {} +func (*NodeTypeNetwork) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{32} } - -func (m *Node) GetNetwork() *NodeTypeNetwork { - if x, ok := m.GetNodeType().(*Node_Network); ok { - return x.Network - } - return nil +func (m *NodeTypeNetwork) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (m *Node) GetSubnet() *NodeTypeSubnet { - if x, ok := m.GetNodeType().(*Node_Subnet); ok { - return x.Subnet +func (m *NodeTypeNetwork) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_NodeTypeNetwork.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil } - return nil } - -func (m *Node) GetInstance() *NodeTypeInstance { - if x, ok := m.GetNodeType().(*Node_Instance); ok { - return x.Instance - } - return nil +func (m *NodeTypeNetwork) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeNetwork.Merge(m, src) +} +func (m *NodeTypeNetwork) XXX_Size() int { + return m.Size() +} +func (m *NodeTypeNetwork) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeNetwork.DiscardUnknown(m) } -func (m *Node) GetSiteMeshGroup() *NodeTypeSiteMeshGroup { - if x, ok := m.GetNodeType().(*Node_SiteMeshGroup); ok { - return x.SiteMeshGroup +var xxx_messageInfo_NodeTypeNetwork proto.InternalMessageInfo + +func (m *NodeTypeNetwork) GetInfo() *NetworkType { + if m != nil { + return m.Info } return nil } -func (m *Node) GetDcClusterGroup() *NodeTypeDCClusterGroup { - if x, ok := m.GetNodeType().(*Node_DcClusterGroup); ok { - return x.DcClusterGroup +func (m *NodeTypeNetwork) GetMetric() []*MetricData { + if m != nil { + return m.Metric } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*Node) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*Node_Site)(nil), - (*Node_TransitGateway)(nil), - (*Node_Network)(nil), - (*Node_Subnet)(nil), - (*Node_Instance)(nil), - (*Node_SiteMeshGroup)(nil), - (*Node_DcClusterGroup)(nil), +func (m *NodeTypeNetwork) GetSummary() *NetworkSummaryInfo { + if m != nil { + return m.Summary } + return nil } -// LinkInfo +// NodeTypeSubnet // -// x-displayName: "Link Info" -// Information about the link that connects 2 nodes in the topology graph. -type LinkInfo struct { - // Name - // - // x-displayName: "Name" - // x-example: "tunnel-1" - // Name of the link. - // Link name may or may not be present depending on the type of link. - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Type - // - // x-displayName: "Type" - // Link type. - Type LinkType `protobuf:"varint,2,opt,name=type,proto3,enum=ves.io.schema.topology.LinkType" json:"type,omitempty"` - // Status +// x-displayName: "Subnet" +// NodeTypeSubnet contains details about the subnet and the metrics (if requested/available). +type NodeTypeSubnet struct { + // Info // - // x-displayName: "Status" - // Link status. - Status LinkStatus `protobuf:"varint,3,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` - // Source ID + // x-displayName: "Info" + // Information about the Subnet. + Info *SubnetType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Metric // - // x-displayName: "Source ID" - // Endpoint identifier. src_id is the source endpoint for the link is between src_id and dst_id. - // x-example: "master-0" - SrcId string `protobuf:"bytes,4,opt,name=src_id,json=srcId,proto3" json:"src_id,omitempty"` - // Destination ID + // x-displayName: "Metric" + // Metric data for the Subnet. + Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` + // Summary // - // x-displayName: "Destination ID" - // Endpoint identifier. dst_id is the destination endpoint for the link is between src_id and dst_id. - // x-example: "master-0" - DstId string `protobuf:"bytes,5,opt,name=dst_id,json=dstId,proto3" json:"dst_id,omitempty"` + // x-displayName: "Summary" + // Subnet summary contains additional fields that are not part of the "info" field + Summary *SubnetSummaryInfo `protobuf:"bytes,3,opt,name=summary,proto3" json:"summary,omitempty"` } -func (m *LinkInfo) Reset() { *m = LinkInfo{} } -func (*LinkInfo) ProtoMessage() {} -func (*LinkInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{26} +func (m *NodeTypeSubnet) Reset() { *m = NodeTypeSubnet{} } +func (*NodeTypeSubnet) ProtoMessage() {} +func (*NodeTypeSubnet) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{33} } -func (m *LinkInfo) XXX_Unmarshal(b []byte) error { +func (m *NodeTypeSubnet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LinkInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NodeTypeSubnet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_LinkInfo.Marshal(b, m, deterministic) + return xxx_messageInfo_NodeTypeSubnet.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -2257,86 +2496,67 @@ func (m *LinkInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *LinkInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_LinkInfo.Merge(m, src) +func (m *NodeTypeSubnet) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeSubnet.Merge(m, src) } -func (m *LinkInfo) XXX_Size() int { +func (m *NodeTypeSubnet) XXX_Size() int { return m.Size() } -func (m *LinkInfo) XXX_DiscardUnknown() { - xxx_messageInfo_LinkInfo.DiscardUnknown(m) +func (m *NodeTypeSubnet) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeSubnet.DiscardUnknown(m) } -var xxx_messageInfo_LinkInfo proto.InternalMessageInfo +var xxx_messageInfo_NodeTypeSubnet proto.InternalMessageInfo -func (m *LinkInfo) GetName() string { +func (m *NodeTypeSubnet) GetInfo() *SubnetType { if m != nil { - return m.Name + return m.Info } - return "" + return nil } -func (m *LinkInfo) GetType() LinkType { +func (m *NodeTypeSubnet) GetMetric() []*MetricData { if m != nil { - return m.Type + return m.Metric } - return LINK_TYPE_TUNNEL + return nil } -func (m *LinkInfo) GetStatus() LinkStatus { +func (m *NodeTypeSubnet) GetSummary() *SubnetSummaryInfo { if m != nil { - return m.Status - } - return LINK_STATUS_NOT_APPLICABLE -} - -func (m *LinkInfo) GetSrcId() string { - if m != nil { - return m.SrcId - } - return "" -} - -func (m *LinkInfo) GetDstId() string { - if m != nil { - return m.DstId + return m.Summary } - return "" + return nil } -// LinkInfoSummary +// NodeTypeInstance // -// x-displayName: "Link Info Summary" -// Summary information for a link type -type LinkInfoSummary struct { - // Type - // - // x-displayName: "Type" - // Link type. - Type LinkType `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.topology.LinkType" json:"type,omitempty"` - // Status +// x-displayName: "Instance" +// NodeTypeInstance contains details about the instance and the metrics (if requested/available). +type NodeTypeInstance struct { + // Info // - // x-displayName: "Status" - // Link status. - Status LinkStatus `protobuf:"varint,2,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` - // Count + // x-displayName: "Info" + // Information about the Instance. + Info *InstanceType `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Metric // - // x-displayName: "Count" - // Links count. - Count uint32 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"` + // x-displayName: "Metric" + // Metric data for the Instance. + Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` } -func (m *LinkInfoSummary) Reset() { *m = LinkInfoSummary{} } -func (*LinkInfoSummary) ProtoMessage() {} -func (*LinkInfoSummary) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{27} +func (m *NodeTypeInstance) Reset() { *m = NodeTypeInstance{} } +func (*NodeTypeInstance) ProtoMessage() {} +func (*NodeTypeInstance) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{34} } -func (m *LinkInfoSummary) XXX_Unmarshal(b []byte) error { +func (m *NodeTypeInstance) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LinkInfoSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NodeTypeInstance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_LinkInfoSummary.Marshal(b, m, deterministic) + return xxx_messageInfo_NodeTypeInstance.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -2346,67 +2566,95 @@ func (m *LinkInfoSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, err return b[:n], nil } } -func (m *LinkInfoSummary) XXX_Merge(src proto.Message) { - xxx_messageInfo_LinkInfoSummary.Merge(m, src) +func (m *NodeTypeInstance) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeTypeInstance.Merge(m, src) } -func (m *LinkInfoSummary) XXX_Size() int { +func (m *NodeTypeInstance) XXX_Size() int { return m.Size() } -func (m *LinkInfoSummary) XXX_DiscardUnknown() { - xxx_messageInfo_LinkInfoSummary.DiscardUnknown(m) +func (m *NodeTypeInstance) XXX_DiscardUnknown() { + xxx_messageInfo_NodeTypeInstance.DiscardUnknown(m) } -var xxx_messageInfo_LinkInfoSummary proto.InternalMessageInfo - -func (m *LinkInfoSummary) GetType() LinkType { - if m != nil { - return m.Type - } - return LINK_TYPE_TUNNEL -} +var xxx_messageInfo_NodeTypeInstance proto.InternalMessageInfo -func (m *LinkInfoSummary) GetStatus() LinkStatus { +func (m *NodeTypeInstance) GetInfo() *InstanceType { if m != nil { - return m.Status + return m.Info } - return LINK_STATUS_NOT_APPLICABLE + return nil } -func (m *LinkInfoSummary) GetCount() uint32 { +func (m *NodeTypeInstance) GetMetric() []*MetricData { if m != nil { - return m.Count + return m.Metric } - return 0 + return nil } -// LinkTypeData +// Node Metadata // -// x-displayName: "Link Type Data" -// LinkTypeData contains details about the link and the metrics (if requested/available). -type LinkTypeData struct { - // Info +// x-displayName: "Node Metadata" +// Metadata for node +type NodeMetaData struct { + // Name // - // x-displayName: "Info" - // Information about the link. - Info *LinkInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` - // Metric + // x-displayName: "Name" + // x-example: "site-1" + // Name of the node. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Cloud Resource Id // - // x-displayName: "Metric" - // Metric data for the link. - Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` + // x-displayName: "Cloud Resource Id" + // Cloud Resource Identifier for the node. This is only used for node which represent the cloud resource + CloudResourceId string `protobuf:"bytes,8,opt,name=cloud_resource_id,json=cloudResourceId,proto3" json:"cloud_resource_id,omitempty"` + // Description + // + // x-displayName: "Description" + // Description of the node. + // This field may or may not be populated depending on the node type and if the user provided description + // while creating the resource. + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` + // Level + // + // x-displayName: "Level" + // x-example: "1" + // Level indicates the distance of the node from the root node. A value of 0 indicates the root node. + Level uint32 `protobuf:"varint,3,opt,name=level,proto3" json:"level,omitempty"` + // Provider Type + // + // x-displayName: "Provider Type" + // Provider type + ProviderType ProviderType `protobuf:"varint,4,opt,name=provider_type,json=providerType,proto3,enum=ves.io.schema.topology.ProviderType" json:"provider_type,omitempty"` + // Owner Id + // + // x-displayName: "Owner Id" + // x-example: "owner-1" + // Owner id + OwnerId string `protobuf:"bytes,5,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` + // Tags + // + // x-displayName: "Tags" + // List of key/value pairs associated with the node + Tags map[string]string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Status + // + // x-displayName: "Status" + // status in the node + Status string `protobuf:"bytes,7,opt,name=status,proto3" json:"status,omitempty"` } -func (m *LinkTypeData) Reset() { *m = LinkTypeData{} } -func (*LinkTypeData) ProtoMessage() {} -func (*LinkTypeData) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{28} +func (m *NodeMetaData) Reset() { *m = NodeMetaData{} } +func (*NodeMetaData) ProtoMessage() {} +func (*NodeMetaData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{35} } -func (m *LinkTypeData) XXX_Unmarshal(b []byte) error { +func (m *NodeMetaData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LinkTypeData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *NodeMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_LinkTypeData.Marshal(b, m, deterministic) + return xxx_messageInfo_NodeMetaData.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -2416,138 +2664,116 @@ func (m *LinkTypeData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *LinkTypeData) XXX_Merge(src proto.Message) { - xxx_messageInfo_LinkTypeData.Merge(m, src) +func (m *NodeMetaData) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeMetaData.Merge(m, src) } -func (m *LinkTypeData) XXX_Size() int { +func (m *NodeMetaData) XXX_Size() int { return m.Size() } -func (m *LinkTypeData) XXX_DiscardUnknown() { - xxx_messageInfo_LinkTypeData.DiscardUnknown(m) +func (m *NodeMetaData) XXX_DiscardUnknown() { + xxx_messageInfo_NodeMetaData.DiscardUnknown(m) } -var xxx_messageInfo_LinkTypeData proto.InternalMessageInfo +var xxx_messageInfo_NodeMetaData proto.InternalMessageInfo -func (m *LinkTypeData) GetInfo() *LinkInfo { +func (m *NodeMetaData) GetName() string { if m != nil { - return m.Info + return m.Name } - return nil + return "" } -func (m *LinkTypeData) GetMetric() []*MetricData { +func (m *NodeMetaData) GetCloudResourceId() string { if m != nil { - return m.Metric + return m.CloudResourceId } - return nil + return "" } -// EdgeInfoSummary -// -// x-displayName: "Edge Info Summary" -// Summary information for an edge -type EdgeInfoSummary struct { - // Status - // - // x-displayName: "Status" - // Edge status. - Status LinkStatus `protobuf:"varint,1,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` - // Count - // - // x-displayName: "Count" - // Links count. - Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` +func (m *NodeMetaData) GetDescription() string { + if m != nil { + return m.Description + } + return "" } -func (m *EdgeInfoSummary) Reset() { *m = EdgeInfoSummary{} } -func (*EdgeInfoSummary) ProtoMessage() {} -func (*EdgeInfoSummary) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{29} -} -func (m *EdgeInfoSummary) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *EdgeInfoSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_EdgeInfoSummary.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +func (m *NodeMetaData) GetLevel() uint32 { + if m != nil { + return m.Level } + return 0 } -func (m *EdgeInfoSummary) XXX_Merge(src proto.Message) { - xxx_messageInfo_EdgeInfoSummary.Merge(m, src) -} -func (m *EdgeInfoSummary) XXX_Size() int { - return m.Size() -} -func (m *EdgeInfoSummary) XXX_DiscardUnknown() { - xxx_messageInfo_EdgeInfoSummary.DiscardUnknown(m) -} - -var xxx_messageInfo_EdgeInfoSummary proto.InternalMessageInfo -func (m *EdgeInfoSummary) GetStatus() LinkStatus { +func (m *NodeMetaData) GetProviderType() ProviderType { if m != nil { - return m.Status + return m.ProviderType } - return LINK_STATUS_NOT_APPLICABLE + return PROVIDER_TYPE_UNSPECIFIED } -func (m *EdgeInfoSummary) GetCount() uint32 { +func (m *NodeMetaData) GetOwnerId() string { if m != nil { - return m.Count + return m.OwnerId } - return 0 + return "" } -// Edge -// -// x-displayName: "Edge" -// Canonical representation of Edge in the topology graph. -type Edge struct { - // Node Id1 +func (m *NodeMetaData) GetTags() map[string]string { + if m != nil { + return m.Tags + } + return nil +} + +func (m *NodeMetaData) GetStatus() string { + if m != nil { + return m.Status + } + return "" +} + +// Node +// +// x-displayName: "Node" +// Canonical representation of Node in the topology graph. +type Node struct { + // Id // - // x-displayName: "Node Id1" - // Node identifier. - NodeId1 string `protobuf:"bytes,1,opt,name=node_id1,json=nodeId1,proto3" json:"node_id1,omitempty"` - // Node Id2 + // x-displayName: "Id" + // Identifier for the node. + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // Metadata // - // x-displayName: "Node Id2" - // Node identifier. - NodeId2 string `protobuf:"bytes,2,opt,name=node_id2,json=nodeId2,proto3" json:"node_id2,omitempty"` - // Links + // x-displayName: "Metadata" + // Metadata for the node. + Metadata *NodeMetaData `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Node Type // - // x-displayName: "Links" - // An edge may be composed of multiple links. - // For example, there may be multiple tunnels between a transit gateway and a site and each tunnel - // is represented as individual links. In some cases, we may want to show only one link between 2 nodes, - // eventhough there may be multiple connections/tunnels between these nodes. - Links []*LinkTypeData `protobuf:"bytes,3,rep,name=links,proto3" json:"links,omitempty"` - // Status + // x-displayName: "Node Type" + // Identifies the Node Type. // - // x-displayName: "Status" - // Indicates the overall status of the edge. - // An edge may be have multiple links (dataplane tunnels, control plane connections). - // The status of an edge indicates the overall health of the edge. - Status LinkStatus `protobuf:"varint,4,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` + // Types that are valid to be assigned to NodeType: + // *Node_Site + // *Node_TransitGateway + // *Node_Network + // *Node_Subnet + // *Node_Instance + // *Node_SiteMeshGroup + // *Node_DcClusterGroup + NodeType isNode_NodeType `protobuf_oneof:"node_type"` } -func (m *Edge) Reset() { *m = Edge{} } -func (*Edge) ProtoMessage() {} -func (*Edge) Descriptor() ([]byte, []int) { - return fileDescriptor_a69fe73d473fc687, []int{30} +func (m *Node) Reset() { *m = Node{} } +func (*Node) ProtoMessage() {} +func (*Node) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{36} } -func (m *Edge) XXX_Unmarshal(b []byte) error { +func (m *Node) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *Edge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *Node) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_Edge.Marshal(b, m, deterministic) + return xxx_messageInfo_Node.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -2557,634 +2783,863 @@ func (m *Edge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return b[:n], nil } } -func (m *Edge) XXX_Merge(src proto.Message) { - xxx_messageInfo_Edge.Merge(m, src) +func (m *Node) XXX_Merge(src proto.Message) { + xxx_messageInfo_Node.Merge(m, src) } -func (m *Edge) XXX_Size() int { +func (m *Node) XXX_Size() int { return m.Size() } -func (m *Edge) XXX_DiscardUnknown() { - xxx_messageInfo_Edge.DiscardUnknown(m) +func (m *Node) XXX_DiscardUnknown() { + xxx_messageInfo_Node.DiscardUnknown(m) } -var xxx_messageInfo_Edge proto.InternalMessageInfo +var xxx_messageInfo_Node proto.InternalMessageInfo -func (m *Edge) GetNodeId1() string { +type isNode_NodeType interface { + isNode_NodeType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type Node_Site struct { + Site *NodeTypeSite `protobuf:"bytes,4,opt,name=site,proto3,oneof" json:"site,omitempty"` +} +type Node_TransitGateway struct { + TransitGateway *NodeTypeTransitGateway `protobuf:"bytes,5,opt,name=transit_gateway,json=transitGateway,proto3,oneof" json:"transit_gateway,omitempty"` +} +type Node_Network struct { + Network *NodeTypeNetwork `protobuf:"bytes,6,opt,name=network,proto3,oneof" json:"network,omitempty"` +} +type Node_Subnet struct { + Subnet *NodeTypeSubnet `protobuf:"bytes,7,opt,name=subnet,proto3,oneof" json:"subnet,omitempty"` +} +type Node_Instance struct { + Instance *NodeTypeInstance `protobuf:"bytes,8,opt,name=instance,proto3,oneof" json:"instance,omitempty"` +} +type Node_SiteMeshGroup struct { + SiteMeshGroup *NodeTypeSiteMeshGroup `protobuf:"bytes,9,opt,name=site_mesh_group,json=siteMeshGroup,proto3,oneof" json:"site_mesh_group,omitempty"` +} +type Node_DcClusterGroup struct { + DcClusterGroup *NodeTypeDCClusterGroup `protobuf:"bytes,10,opt,name=dc_cluster_group,json=dcClusterGroup,proto3,oneof" json:"dc_cluster_group,omitempty"` +} + +func (*Node_Site) isNode_NodeType() {} +func (*Node_TransitGateway) isNode_NodeType() {} +func (*Node_Network) isNode_NodeType() {} +func (*Node_Subnet) isNode_NodeType() {} +func (*Node_Instance) isNode_NodeType() {} +func (*Node_SiteMeshGroup) isNode_NodeType() {} +func (*Node_DcClusterGroup) isNode_NodeType() {} + +func (m *Node) GetNodeType() isNode_NodeType { if m != nil { - return m.NodeId1 + return m.NodeType } - return "" + return nil } -func (m *Edge) GetNodeId2() string { +func (m *Node) GetId() string { if m != nil { - return m.NodeId2 + return m.Id } return "" } -func (m *Edge) GetLinks() []*LinkTypeData { +func (m *Node) GetMetadata() *NodeMetaData { if m != nil { - return m.Links + return m.Metadata } return nil } -func (m *Edge) GetStatus() LinkStatus { - if m != nil { - return m.Status +func (m *Node) GetSite() *NodeTypeSite { + if x, ok := m.GetNodeType().(*Node_Site); ok { + return x.Site } - return LINK_STATUS_NOT_APPLICABLE + return nil } -func init() { - proto.RegisterEnum("ves.io.schema.topology.MetricType", MetricType_name, MetricType_value) - golang_proto.RegisterEnum("ves.io.schema.topology.MetricType", MetricType_name, MetricType_value) - proto.RegisterEnum("ves.io.schema.topology.LinkType", LinkType_name, LinkType_value) - golang_proto.RegisterEnum("ves.io.schema.topology.LinkType", LinkType_name, LinkType_value) - proto.RegisterEnum("ves.io.schema.topology.LinkStatus", LinkStatus_name, LinkStatus_value) - golang_proto.RegisterEnum("ves.io.schema.topology.LinkStatus", LinkStatus_name, LinkStatus_value) - proto.RegisterType((*SiteTopologyRequest)(nil), "ves.io.schema.topology.SiteTopologyRequest") - golang_proto.RegisterType((*SiteTopologyRequest)(nil), "ves.io.schema.topology.SiteTopologyRequest") - proto.RegisterType((*SiteMeshGroupsSummaryRequest)(nil), "ves.io.schema.topology.SiteMeshGroupsSummaryRequest") - golang_proto.RegisterType((*SiteMeshGroupsSummaryRequest)(nil), "ves.io.schema.topology.SiteMeshGroupsSummaryRequest") - proto.RegisterType((*SiteMeshTopologyRequest)(nil), "ves.io.schema.topology.SiteMeshTopologyRequest") - golang_proto.RegisterType((*SiteMeshTopologyRequest)(nil), "ves.io.schema.topology.SiteMeshTopologyRequest") - proto.RegisterType((*DCClusterGroupsSummaryRequest)(nil), "ves.io.schema.topology.DCClusterGroupsSummaryRequest") - golang_proto.RegisterType((*DCClusterGroupsSummaryRequest)(nil), "ves.io.schema.topology.DCClusterGroupsSummaryRequest") - proto.RegisterType((*DCClusterTopologyRequest)(nil), "ves.io.schema.topology.DCClusterTopologyRequest") - golang_proto.RegisterType((*DCClusterTopologyRequest)(nil), "ves.io.schema.topology.DCClusterTopologyRequest") - proto.RegisterType((*TopologyResponse)(nil), "ves.io.schema.topology.TopologyResponse") - golang_proto.RegisterType((*TopologyResponse)(nil), "ves.io.schema.topology.TopologyResponse") - proto.RegisterType((*RouteTableRequest)(nil), "ves.io.schema.topology.RouteTableRequest") - golang_proto.RegisterType((*RouteTableRequest)(nil), "ves.io.schema.topology.RouteTableRequest") - proto.RegisterType((*RouteTableResponse)(nil), "ves.io.schema.topology.RouteTableResponse") - golang_proto.RegisterType((*RouteTableResponse)(nil), "ves.io.schema.topology.RouteTableResponse") - proto.RegisterType((*MetricSelector)(nil), "ves.io.schema.topology.MetricSelector") - golang_proto.RegisterType((*MetricSelector)(nil), "ves.io.schema.topology.MetricSelector") - proto.RegisterType((*MetricTypeData)(nil), "ves.io.schema.topology.MetricTypeData") - golang_proto.RegisterType((*MetricTypeData)(nil), "ves.io.schema.topology.MetricTypeData") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetricTypeData.LabelsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetricTypeData.LabelsEntry") - proto.RegisterType((*MetricData)(nil), "ves.io.schema.topology.MetricData") - golang_proto.RegisterType((*MetricData)(nil), "ves.io.schema.topology.MetricData") - proto.RegisterType((*RouteTableMetaData)(nil), "ves.io.schema.topology.RouteTableMetaData") - golang_proto.RegisterType((*RouteTableMetaData)(nil), "ves.io.schema.topology.RouteTableMetaData") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.RouteTableMetaData.TagsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.RouteTableMetaData.TagsEntry") - proto.RegisterType((*SiteSummaryInfo)(nil), "ves.io.schema.topology.SiteSummaryInfo") - golang_proto.RegisterType((*SiteSummaryInfo)(nil), "ves.io.schema.topology.SiteSummaryInfo") - proto.RegisterType((*NetworkSummaryInfo)(nil), "ves.io.schema.topology.NetworkSummaryInfo") - golang_proto.RegisterType((*NetworkSummaryInfo)(nil), "ves.io.schema.topology.NetworkSummaryInfo") - proto.RegisterType((*SubnetSummaryInfo)(nil), "ves.io.schema.topology.SubnetSummaryInfo") - golang_proto.RegisterType((*SubnetSummaryInfo)(nil), "ves.io.schema.topology.SubnetSummaryInfo") - proto.RegisterType((*NodeTypeSite)(nil), "ves.io.schema.topology.NodeTypeSite") - golang_proto.RegisterType((*NodeTypeSite)(nil), "ves.io.schema.topology.NodeTypeSite") - proto.RegisterType((*SiteMeshGroupSummaryInfo)(nil), "ves.io.schema.topology.SiteMeshGroupSummaryInfo") - golang_proto.RegisterType((*SiteMeshGroupSummaryInfo)(nil), "ves.io.schema.topology.SiteMeshGroupSummaryInfo") - proto.RegisterType((*NodeTypeSiteMeshGroup)(nil), "ves.io.schema.topology.NodeTypeSiteMeshGroup") - golang_proto.RegisterType((*NodeTypeSiteMeshGroup)(nil), "ves.io.schema.topology.NodeTypeSiteMeshGroup") - proto.RegisterType((*DCClusterGroupSummaryInfo)(nil), "ves.io.schema.topology.DCClusterGroupSummaryInfo") - golang_proto.RegisterType((*DCClusterGroupSummaryInfo)(nil), "ves.io.schema.topology.DCClusterGroupSummaryInfo") - proto.RegisterType((*NodeTypeDCClusterGroup)(nil), "ves.io.schema.topology.NodeTypeDCClusterGroup") - golang_proto.RegisterType((*NodeTypeDCClusterGroup)(nil), "ves.io.schema.topology.NodeTypeDCClusterGroup") - proto.RegisterType((*NodeTypeTransitGateway)(nil), "ves.io.schema.topology.NodeTypeTransitGateway") - golang_proto.RegisterType((*NodeTypeTransitGateway)(nil), "ves.io.schema.topology.NodeTypeTransitGateway") - proto.RegisterType((*NodeTypeNetwork)(nil), "ves.io.schema.topology.NodeTypeNetwork") - golang_proto.RegisterType((*NodeTypeNetwork)(nil), "ves.io.schema.topology.NodeTypeNetwork") - proto.RegisterType((*NodeTypeSubnet)(nil), "ves.io.schema.topology.NodeTypeSubnet") - golang_proto.RegisterType((*NodeTypeSubnet)(nil), "ves.io.schema.topology.NodeTypeSubnet") - proto.RegisterType((*NodeTypeInstance)(nil), "ves.io.schema.topology.NodeTypeInstance") - golang_proto.RegisterType((*NodeTypeInstance)(nil), "ves.io.schema.topology.NodeTypeInstance") - proto.RegisterType((*NodeMetaData)(nil), "ves.io.schema.topology.NodeMetaData") - golang_proto.RegisterType((*NodeMetaData)(nil), "ves.io.schema.topology.NodeMetaData") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.NodeMetaData.TagsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.NodeMetaData.TagsEntry") - proto.RegisterType((*Node)(nil), "ves.io.schema.topology.Node") - golang_proto.RegisterType((*Node)(nil), "ves.io.schema.topology.Node") - proto.RegisterType((*LinkInfo)(nil), "ves.io.schema.topology.LinkInfo") - golang_proto.RegisterType((*LinkInfo)(nil), "ves.io.schema.topology.LinkInfo") - proto.RegisterType((*LinkInfoSummary)(nil), "ves.io.schema.topology.LinkInfoSummary") - golang_proto.RegisterType((*LinkInfoSummary)(nil), "ves.io.schema.topology.LinkInfoSummary") - proto.RegisterType((*LinkTypeData)(nil), "ves.io.schema.topology.LinkTypeData") - golang_proto.RegisterType((*LinkTypeData)(nil), "ves.io.schema.topology.LinkTypeData") - proto.RegisterType((*EdgeInfoSummary)(nil), "ves.io.schema.topology.EdgeInfoSummary") - golang_proto.RegisterType((*EdgeInfoSummary)(nil), "ves.io.schema.topology.EdgeInfoSummary") - proto.RegisterType((*Edge)(nil), "ves.io.schema.topology.Edge") - golang_proto.RegisterType((*Edge)(nil), "ves.io.schema.topology.Edge") +func (m *Node) GetTransitGateway() *NodeTypeTransitGateway { + if x, ok := m.GetNodeType().(*Node_TransitGateway); ok { + return x.TransitGateway + } + return nil } -func init() { - proto.RegisterFile("ves.io/schema/topology/public_custom_data_api.proto", fileDescriptor_a69fe73d473fc687) +func (m *Node) GetNetwork() *NodeTypeNetwork { + if x, ok := m.GetNodeType().(*Node_Network); ok { + return x.Network + } + return nil } -func init() { - golang_proto.RegisterFile("ves.io/schema/topology/public_custom_data_api.proto", fileDescriptor_a69fe73d473fc687) + +func (m *Node) GetSubnet() *NodeTypeSubnet { + if x, ok := m.GetNodeType().(*Node_Subnet); ok { + return x.Subnet + } + return nil } -var fileDescriptor_a69fe73d473fc687 = []byte{ - // 2584 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x5a, 0x5d, 0x6c, 0x23, 0x57, - 0xf5, 0xf7, 0xf5, 0x57, 0x92, 0x93, 0x6c, 0x32, 0xb9, 0xfb, 0xe5, 0x4d, 0x77, 0x5d, 0xff, 0xfd, - 0xef, 0x47, 0x36, 0xdb, 0xd8, 0xdd, 0xec, 0x6e, 0xb7, 0x44, 0x2a, 0xaa, 0xe3, 0xb8, 0x89, 0x1b, - 0xc7, 0xb6, 0xc6, 0x13, 0x56, 0x5b, 0x09, 0x8d, 0x26, 0x33, 0x77, 0xbd, 0xc3, 0xda, 0x33, 0x66, - 0xe6, 0x3a, 0xdb, 0xb4, 0x14, 0x55, 0x15, 0xaa, 0x50, 0x85, 0x50, 0x55, 0x40, 0x50, 0x9e, 0x10, - 0x12, 0x12, 0x2f, 0x3c, 0xc1, 0x13, 0x45, 0xa8, 0x12, 0x42, 0x80, 0x40, 0x68, 0x05, 0x2f, 0x7d, - 0xec, 0x66, 0x2b, 0x04, 0x6f, 0xe5, 0x01, 0x89, 0x47, 0x74, 0xef, 0xcc, 0xd8, 0x33, 0xb3, 0x8e, - 0xed, 0x84, 0xf0, 0x12, 0xf9, 0xde, 0xfb, 0x3b, 0xe7, 0x9e, 0xef, 0x7b, 0xee, 0x9d, 0xc0, 0xb5, - 0x3d, 0x62, 0xe7, 0x74, 0x33, 0x6f, 0xab, 0x77, 0x49, 0x5b, 0xc9, 0x53, 0xb3, 0x63, 0xb6, 0xcc, - 0xe6, 0x7e, 0xbe, 0xd3, 0xdd, 0x6d, 0xe9, 0xaa, 0xac, 0x76, 0x6d, 0x6a, 0xb6, 0x65, 0x4d, 0xa1, - 0x8a, 0xac, 0x74, 0xf4, 0x5c, 0xc7, 0x32, 0xa9, 0x89, 0xcf, 0x39, 0x44, 0x39, 0x87, 0x28, 0xe7, - 0x11, 0x2d, 0x2c, 0x37, 0x75, 0x7a, 0xb7, 0xbb, 0x9b, 0x53, 0xcd, 0x76, 0xbe, 0x69, 0x36, 0xcd, - 0x3c, 0x87, 0xef, 0x76, 0xef, 0xf0, 0x11, 0x1f, 0xf0, 0x5f, 0x0e, 0x9b, 0x85, 0x8b, 0x4d, 0xd3, - 0x6c, 0xb6, 0x48, 0x5e, 0xe9, 0xe8, 0x79, 0xc5, 0x30, 0x4c, 0xaa, 0x50, 0xdd, 0x34, 0x6c, 0x77, - 0xf5, 0x89, 0xa0, 0x64, 0x66, 0xc7, 0xbf, 0x98, 0x3d, 0x44, 0x6c, 0xba, 0xdf, 0x21, 0x1e, 0xe6, - 0x42, 0x08, 0xe3, 0x5b, 0xba, 0x18, 0x5c, 0xda, 0x53, 0x5a, 0xba, 0xa6, 0x50, 0x32, 0x98, 0xf9, - 0x1e, 0xb1, 0x89, 0xb1, 0x17, 0x12, 0x20, 0x13, 0xc2, 0xe8, 0xe4, 0xbe, 0x1c, 0x40, 0x64, 0x3f, - 0x8c, 0xc2, 0xe9, 0x86, 0x4e, 0x89, 0xe4, 0xca, 0x26, 0x92, 0xaf, 0x76, 0x89, 0x4d, 0x31, 0x86, - 0xb8, 0xad, 0x53, 0x92, 0x8a, 0x66, 0xd0, 0xe2, 0x94, 0xc8, 0x7f, 0xe3, 0xf3, 0x30, 0x61, 0x98, - 0x1a, 0x91, 0x75, 0x2d, 0x15, 0xe3, 0xd3, 0x49, 0x36, 0x2c, 0x6b, 0xf8, 0x0c, 0x24, 0x5a, 0x64, - 0x8f, 0xb4, 0x52, 0xf1, 0x0c, 0x5a, 0x4c, 0x88, 0xce, 0x00, 0xdf, 0x80, 0xb3, 0x4d, 0xcb, 0xec, - 0x76, 0x64, 0x46, 0x2c, 0xb7, 0x89, 0x7d, 0x57, 0x66, 0x78, 0x3b, 0x95, 0xc8, 0xa0, 0xc5, 0xc9, - 0xb5, 0x68, 0x0a, 0x89, 0x98, 0x03, 0xd8, 0xfe, 0xdb, 0xc4, 0xbe, 0x5b, 0x65, 0xab, 0xf8, 0x26, - 0x9c, 0x73, 0xc8, 0x34, 0x55, 0x56, 0x5b, 0x5d, 0x9b, 0x12, 0xcb, 0xa5, 0x4b, 0xf6, 0xe8, 0x4e, - 0x73, 0xc4, 0xba, 0x5a, 0x74, 0xd6, 0x1d, 0xc2, 0x1a, 0xcc, 0xb5, 0x09, 0xb5, 0x74, 0x55, 0xb6, - 0x49, 0x8b, 0xa8, 0xd4, 0xb4, 0x52, 0x13, 0x19, 0xb4, 0x38, 0xbd, 0xf2, 0x4c, 0x6e, 0x70, 0x24, - 0xe4, 0xb6, 0x39, 0xbc, 0xe1, 0xa2, 0xc5, 0xd9, 0x76, 0x60, 0x9c, 0x4d, 0xc3, 0x45, 0x4f, 0xb4, - 0x0d, 0xb6, 0x9f, 0xdd, 0xe8, 0xb6, 0xdb, 0x8a, 0xe5, 0xd9, 0x28, 0xfb, 0x01, 0x82, 0xf3, 0x1e, - 0x20, 0x6c, 0xbf, 0x67, 0x60, 0xae, 0xaf, 0x36, 0x97, 0xd6, 0x35, 0xe5, 0x29, 0xdb, 0xcf, 0x72, - 0x90, 0xd0, 0xb1, 0xff, 0x4a, 0xe8, 0x27, 0xe1, 0xd2, 0x7a, 0xd1, 0xb5, 0xcb, 0x40, 0xa9, 0xbf, - 0x87, 0x20, 0xd5, 0x43, 0x84, 0xc5, 0x5e, 0x04, 0xc1, 0x67, 0x76, 0xbf, 0xdc, 0xb3, 0x9a, 0xea, - 0xe7, 0x7a, 0xf2, 0x82, 0xff, 0x10, 0x81, 0xd0, 0x17, 0xc7, 0xee, 0x98, 0x86, 0x4d, 0xf0, 0x0a, - 0x24, 0x1c, 0xdf, 0xa3, 0x4c, 0x6c, 0x71, 0x7a, 0xe5, 0xe2, 0x61, 0xbc, 0x59, 0x04, 0x88, 0x0e, - 0x94, 0xd1, 0x10, 0xad, 0x49, 0xec, 0x54, 0x74, 0x38, 0x4d, 0x49, 0x6b, 0x12, 0xd1, 0x81, 0xe2, - 0x34, 0xc4, 0x6d, 0x4a, 0x3a, 0x4e, 0x5c, 0xaf, 0xc1, 0x2f, 0xff, 0xf1, 0x71, 0x2c, 0x61, 0xc5, - 0x3e, 0x8f, 0x22, 0x91, 0xcf, 0x67, 0x9f, 0x85, 0x79, 0xd1, 0xec, 0x52, 0x22, 0x29, 0xbb, 0x2d, - 0xe2, 0xcb, 0x11, 0x43, 0x69, 0x93, 0x14, 0x72, 0x72, 0x84, 0xfd, 0xce, 0xfe, 0x04, 0x01, 0xf6, - 0x23, 0x5d, 0x3d, 0x5e, 0x81, 0xc9, 0x36, 0xa1, 0x0a, 0xab, 0x50, 0x1c, 0x3e, 0xbd, 0xb2, 0x74, - 0x98, 0x58, 0x7d, 0xea, 0x6d, 0x42, 0x95, 0x75, 0x85, 0x2a, 0x62, 0x8f, 0x16, 0x6f, 0xc0, 0xb4, - 0xc5, 0xd6, 0x65, 0xca, 0x00, 0xdc, 0x35, 0x43, 0x2c, 0xde, 0x67, 0x25, 0xed, 0x77, 0x88, 0x08, - 0x56, 0x6f, 0x9c, 0x7d, 0x2f, 0x0a, 0xb3, 0x41, 0x87, 0xe0, 0xcb, 0x00, 0x36, 0x55, 0x2c, 0x2a, - 0x53, 0xdd, 0x53, 0xaa, 0x67, 0x89, 0x1f, 0xc4, 0x91, 0x38, 0xc5, 0x57, 0x25, 0xbd, 0x4d, 0xf0, - 0xd3, 0x30, 0x49, 0x0c, 0xcd, 0x01, 0x46, 0x1f, 0x03, 0x4e, 0x10, 0x43, 0xe3, 0xb0, 0x35, 0x88, - 0x33, 0x97, 0xa4, 0x62, 0x99, 0xd8, 0xe2, 0xec, 0x4a, 0x76, 0x78, 0x60, 0x30, 0x11, 0x5d, 0x36, - 0x1f, 0x20, 0x96, 0xe4, 0x9c, 0x96, 0xf1, 0x60, 0x2e, 0x4a, 0xc5, 0x8f, 0xc7, 0x83, 0xd1, 0xf6, - 0xbc, 0x9b, 0x08, 0x88, 0xfa, 0xa3, 0xb8, 0xe7, 0xdd, 0x3f, 0x22, 0xcf, 0x18, 0x8c, 0x01, 0x33, - 0x39, 0x7e, 0x15, 0x92, 0x2d, 0x65, 0x97, 0xb4, 0xbc, 0xc8, 0x5b, 0x19, 0xbd, 0x31, 0xa3, 0xcb, - 0x55, 0x38, 0x51, 0xc9, 0xa0, 0xd6, 0xbe, 0xe8, 0x72, 0xc0, 0x2b, 0x90, 0xdc, 0x53, 0x5a, 0xdd, - 0x5e, 0x44, 0x2e, 0x84, 0x78, 0x39, 0x2c, 0xbe, 0xc4, 0x20, 0xa2, 0x8b, 0x5c, 0xf8, 0x02, 0x4c, - 0xfb, 0x58, 0x61, 0x01, 0x62, 0xf7, 0xc8, 0xbe, 0x1b, 0x69, 0xec, 0x27, 0xab, 0xb9, 0x1c, 0xea, - 0xa6, 0xa7, 0x33, 0x58, 0x8d, 0xbe, 0x88, 0xb2, 0x3f, 0x43, 0x00, 0x0e, 0x4b, 0xae, 0xc9, 0x0b, - 0x10, 0x67, 0x87, 0x0a, 0xa7, 0x1d, 0xcb, 0x80, 0x22, 0xc7, 0xe3, 0x2b, 0x10, 0xef, 0x1a, 0x3a, - 0xe5, 0x29, 0x31, 0xbb, 0x72, 0x3e, 0x44, 0xb7, 0x63, 0xe8, 0xd4, 0x01, 0x33, 0x10, 0x5e, 0x85, - 0x38, 0x8f, 0x6d, 0x47, 0xc1, 0x67, 0xc6, 0x33, 0x96, 0xc8, 0x69, 0xb2, 0x9f, 0x05, 0x52, 0xc6, - 0x0b, 0xfa, 0x41, 0xd9, 0x85, 0x77, 0x20, 0x4e, 0x95, 0xa6, 0x67, 0xc7, 0xeb, 0xe3, 0xa7, 0x50, - 0x4e, 0x52, 0x9a, 0x8e, 0x29, 0xd7, 0xa6, 0x0f, 0x3e, 0xfd, 0x6d, 0x2c, 0xf9, 0xde, 0xaf, 0x50, - 0x74, 0x32, 0x22, 0x72, 0x76, 0x78, 0x09, 0xe6, 0xd5, 0x96, 0xd9, 0xd5, 0x64, 0x8b, 0xd8, 0x66, - 0xd7, 0x52, 0x7d, 0x47, 0xdc, 0x1c, 0x5f, 0x10, 0xdd, 0xf9, 0xb2, 0xb6, 0x70, 0x13, 0xa6, 0x7a, - 0xbc, 0x8e, 0xe4, 0x96, 0x2f, 0xc3, 0x1c, 0x3b, 0x2c, 0xdc, 0x6a, 0x5c, 0x36, 0xee, 0x98, 0xf8, - 0x12, 0x00, 0x3f, 0x50, 0x55, 0xb3, 0x6b, 0x50, 0xce, 0xe5, 0x94, 0x38, 0xc5, 0x66, 0x8a, 0x6c, - 0x02, 0x5f, 0x81, 0x79, 0x65, 0x4f, 0xd1, 0x5b, 0xca, 0xae, 0xde, 0xd2, 0xe9, 0xbe, 0xfc, 0x86, - 0x69, 0x10, 0xae, 0xfa, 0x94, 0x28, 0xf8, 0x17, 0x5e, 0x33, 0x0d, 0x92, 0x55, 0x01, 0x57, 0x09, - 0xbd, 0x6f, 0x5a, 0xf7, 0xfc, 0x3b, 0x6c, 0xc3, 0x8c, 0xaf, 0x5e, 0x78, 0xc1, 0x7c, 0x94, 0xda, - 0x33, 0xdd, 0x2f, 0x1a, 0x76, 0x76, 0x17, 0xe6, 0x1b, 0xdd, 0x5d, 0x83, 0xd0, 0xff, 0xe1, 0x1e, - 0xbf, 0x41, 0x30, 0xc3, 0xca, 0x39, 0x8b, 0x12, 0x66, 0x30, 0x7c, 0x1d, 0xe2, 0xba, 0x71, 0xc7, - 0x74, 0xeb, 0x66, 0xe6, 0x30, 0xbe, 0xbc, 0x8b, 0xe1, 0x11, 0xc9, 0xd0, 0x78, 0x15, 0x92, 0xce, - 0x01, 0xe3, 0x06, 0xcb, 0x88, 0xc0, 0xe7, 0x72, 0xb8, 0x14, 0xb8, 0x00, 0x13, 0xb6, 0xa3, 0xa0, - 0x7b, 0xa6, 0x3d, 0x3b, 0x6c, 0x53, 0x9f, 0x2d, 0x44, 0x8f, 0x2e, 0xfb, 0xf3, 0x28, 0xa4, 0x02, - 0xcd, 0x83, 0xdf, 0x62, 0x67, 0x20, 0xc1, 0xba, 0x00, 0xdb, 0x75, 0xb9, 0x33, 0xc0, 0x35, 0x78, - 0xda, 0xa4, 0x77, 0x89, 0x25, 0xab, 0xa6, 0x61, 0x10, 0x95, 0x12, 0x4d, 0x0e, 0xb5, 0x10, 0xb2, - 0x43, 0x15, 0xe5, 0x54, 0x19, 0x0e, 0x2e, 0x7a, 0xd8, 0xe0, 0x66, 0x9c, 0xe1, 0x2d, 0x38, 0xdd, - 0xd2, 0x8d, 0x7b, 0xb2, 0x4d, 0x15, 0xda, 0xb5, 0xe5, 0xbe, 0x4a, 0xb1, 0x61, 0x2a, 0x55, 0x74, - 0xe3, 0x1e, 0x93, 0xd2, 0x6b, 0x1b, 0xe6, 0x19, 0x8f, 0x06, 0x67, 0xe1, 0x4e, 0x31, 0xc6, 0xac, - 0xae, 0x86, 0x19, 0xc7, 0x87, 0x33, 0x66, 0xe7, 0x6d, 0x80, 0x31, 0xe3, 0x11, 0x60, 0x9c, 0xfd, - 0x31, 0x82, 0xb3, 0x7e, 0xdf, 0xf7, 0xfb, 0xa4, 0x97, 0x02, 0x41, 0x70, 0x79, 0x98, 0x3f, 0x7a, - 0x44, 0xbe, 0x68, 0x78, 0xb5, 0xef, 0x51, 0xe7, 0xcc, 0x7c, 0x7e, 0x2c, 0x0e, 0x03, 0x5d, 0x7b, - 0x15, 0x2e, 0x04, 0x3b, 0xac, 0x91, 0xae, 0x65, 0x5d, 0xc1, 0x39, 0x4f, 0xaf, 0x20, 0x2d, 0xfe, - 0x62, 0x40, 0xb1, 0x43, 0xb3, 0x26, 0x48, 0xe5, 0xd3, 0x6c, 0x2b, 0xac, 0xd9, 0xd5, 0xf1, 0x58, - 0x0c, 0x54, 0xed, 0xbb, 0x3e, 0x39, 0x25, 0x4b, 0x31, 0x6c, 0x9d, 0x6e, 0x28, 0x94, 0xdc, 0x57, - 0xf6, 0xc7, 0x95, 0x33, 0x48, 0x75, 0x32, 0xf9, 0x98, 0xfd, 0x13, 0x82, 0x39, 0x4f, 0x2c, 0xb7, - 0xc8, 0xe1, 0x9b, 0x01, 0x79, 0xfe, 0xff, 0xd0, 0xc6, 0xd0, 0x81, 0x9f, 0x50, 0x61, 0x58, 0x0f, - 0x17, 0x86, 0xa5, 0x11, 0xfb, 0x0e, 0xb4, 0xf2, 0x1f, 0x10, 0xcc, 0xf6, 0xa2, 0x9c, 0x97, 0x53, - 0x76, 0x48, 0xfb, 0xb4, 0x39, 0x54, 0x24, 0x07, 0x7d, 0x42, 0xca, 0x14, 0xc3, 0xca, 0x5c, 0x1e, - 0xbe, 0xed, 0x40, 0x5d, 0xbe, 0x89, 0x40, 0xf0, 0x74, 0x29, 0x1b, 0x36, 0x55, 0x0c, 0x95, 0xe0, - 0x17, 0x03, 0xda, 0x3c, 0x75, 0x18, 0x5b, 0x0f, 0x7f, 0x42, 0x51, 0xf2, 0xed, 0x98, 0x73, 0x70, - 0x0c, 0xed, 0x20, 0x06, 0x1e, 0xf5, 0x93, 0x03, 0x8f, 0x7a, 0x9c, 0x81, 0x69, 0x8d, 0xd8, 0xaa, - 0xa5, 0xf3, 0x1b, 0xb3, 0x7b, 0xa2, 0xfb, 0xa7, 0xfa, 0x17, 0xdf, 0x98, 0x93, 0xed, 0xce, 0xc5, - 0xb7, 0x0c, 0xa7, 0x3a, 0x96, 0xb9, 0xa7, 0x6b, 0xc4, 0x92, 0x79, 0xeb, 0x15, 0xe7, 0x2d, 0xd4, - 0xa1, 0x76, 0xa8, 0xbb, 0x60, 0x6e, 0x87, 0x99, 0x8e, 0x6f, 0x84, 0x2f, 0xc0, 0xa4, 0x79, 0xdf, - 0x20, 0x16, 0x93, 0x92, 0x77, 0xaf, 0xe2, 0x04, 0x1f, 0x97, 0x35, 0x5c, 0x73, 0x7b, 0xa1, 0x24, - 0x37, 0x54, 0x6e, 0xd8, 0xcd, 0x68, 0xbc, 0x2e, 0xe8, 0x1c, 0x24, 0x9d, 0x82, 0xce, 0xaf, 0xcd, - 0x53, 0xa2, 0x3b, 0x3a, 0x7e, 0xc7, 0xf3, 0xad, 0x04, 0xc4, 0xd9, 0xf6, 0x78, 0x16, 0xa2, 0xba, - 0xe6, 0xd2, 0x44, 0x75, 0x0d, 0xbf, 0xec, 0xbb, 0x0d, 0x45, 0x87, 0xc7, 0x88, 0x5f, 0x7c, 0xdf, - 0x3d, 0x68, 0xd5, 0x7d, 0x9e, 0x88, 0x8f, 0xa6, 0xf6, 0xce, 0x92, 0xcd, 0x88, 0xfb, 0x8c, 0x71, - 0x1b, 0xe6, 0xa8, 0x53, 0xa5, 0xe4, 0xa6, 0x53, 0xa6, 0xb8, 0x69, 0x47, 0xd8, 0xf0, 0xf1, 0x92, - 0xb8, 0x19, 0x11, 0x67, 0x69, 0xb0, 0x48, 0x16, 0x61, 0xc2, 0x70, 0x12, 0x9f, 0x3f, 0x56, 0x0c, - 0x39, 0x0c, 0x43, 0xe5, 0x6c, 0x33, 0x22, 0x7a, 0x94, 0xf8, 0x65, 0x48, 0xda, 0x3c, 0xe1, 0x46, - 0x3d, 0x5f, 0x04, 0x6b, 0xc8, 0x66, 0x44, 0x74, 0xe9, 0xd8, 0x6d, 0x53, 0x77, 0x73, 0x8b, 0xc7, - 0xf6, 0xf4, 0xca, 0xe2, 0x28, 0x1e, 0x5e, 0x2e, 0x6e, 0x46, 0xc4, 0x1e, 0x2d, 0xbe, 0xf5, 0xf8, - 0x23, 0xc6, 0x14, 0x67, 0xb7, 0x3c, 0x8e, 0xc1, 0x7b, 0xa7, 0xe8, 0x66, 0x24, 0xfc, 0xea, 0xf1, - 0xda, 0x80, 0x67, 0x06, 0x18, 0xcf, 0x07, 0xc1, 0x53, 0x8c, 0xf9, 0x20, 0xf8, 0x30, 0xb1, 0x36, - 0x0f, 0xbc, 0x85, 0xe6, 0x99, 0x87, 0xe3, 0x0f, 0x3e, 0x42, 0xb1, 0x57, 0xe3, 0x93, 0x31, 0x21, - 0x9e, 0xfd, 0x35, 0x82, 0x49, 0xaf, 0xb9, 0x19, 0x58, 0x1b, 0xae, 0xbb, 0x37, 0xa5, 0x28, 0x4f, - 0xd7, 0xcc, 0xb0, 0x06, 0xc9, 0x77, 0x4f, 0x5a, 0xed, 0xa5, 0x4d, 0x6c, 0xf8, 0x0d, 0xab, 0xd2, - 0xeb, 0xa3, 0xbc, 0xd4, 0xc2, 0x67, 0x21, 0x69, 0x5b, 0x2a, 0x4b, 0xee, 0xb8, 0x93, 0x3c, 0xb6, - 0xa5, 0x96, 0x35, 0x36, 0xad, 0xd9, 0xb4, 0x9f, 0xf3, 0x09, 0xcd, 0xa6, 0x65, 0x2d, 0xfb, 0x21, - 0x82, 0xb9, 0x50, 0x77, 0xd6, 0x93, 0x19, 0x1d, 0x53, 0xe6, 0xe8, 0x91, 0x65, 0x3e, 0x03, 0x09, - 0xe7, 0xbe, 0xe2, 0xd6, 0x3c, 0x3e, 0xc8, 0xbe, 0x8d, 0x60, 0xc6, 0xdb, 0x84, 0x17, 0xdf, 0x31, - 0xbb, 0x76, 0x4f, 0x9f, 0x13, 0xa8, 0xff, 0x2a, 0xcc, 0x85, 0x5a, 0x4c, 0x9f, 0x9e, 0xe8, 0xf8, - 0x7a, 0x46, 0xfd, 0x7a, 0xfe, 0x02, 0x41, 0x9c, 0xed, 0xc2, 0x2a, 0xb3, 0xfb, 0x18, 0x7a, 0xd5, - 0x0d, 0xa2, 0x09, 0xe7, 0x35, 0xf4, 0xaa, 0x6f, 0x69, 0xc5, 0x2d, 0x8a, 0xee, 0xd2, 0x0a, 0x5e, - 0x85, 0x04, 0x6b, 0xa7, 0x6d, 0xb7, 0x09, 0x7f, 0x6a, 0x94, 0xbf, 0xb8, 0x82, 0x0e, 0x89, 0x4f, - 0x99, 0xf8, 0x51, 0x95, 0x59, 0xfa, 0x7e, 0xcc, 0x7b, 0x13, 0xe0, 0xc7, 0x4a, 0x0a, 0xce, 0x6c, - 0x97, 0x24, 0xb1, 0x5c, 0x94, 0xa5, 0xdb, 0xf5, 0x92, 0x5c, 0xae, 0xca, 0x6b, 0xb7, 0xa5, 0x52, - 0x43, 0x88, 0xe0, 0x0b, 0x70, 0xd6, 0xbf, 0x52, 0xdb, 0x91, 0xdc, 0x25, 0x84, 0x9f, 0x84, 0x27, - 0x42, 0x44, 0xeb, 0x62, 0xad, 0x2e, 0xd7, 0x0b, 0xc5, 0xad, 0x92, 0xd4, 0x10, 0xa2, 0x38, 0x03, - 0x17, 0xc3, 0xb4, 0x01, 0x44, 0x0c, 0x3f, 0x05, 0x19, 0x3f, 0x42, 0x2c, 0x15, 0x8a, 0x9b, 0x85, - 0xb5, 0x72, 0xa5, 0x2c, 0xdd, 0x96, 0xeb, 0x25, 0xb1, 0x58, 0xaa, 0x4a, 0x42, 0x3c, 0xbc, 0x51, - 0xa5, 0x20, 0x95, 0xaa, 0xc5, 0xdb, 0x72, 0xa3, 0x54, 0xac, 0x55, 0xd7, 0x1b, 0x42, 0x02, 0xff, - 0x1f, 0x5c, 0xf2, 0x03, 0x8a, 0xf5, 0x1d, 0x79, 0xa7, 0x51, 0xd8, 0x28, 0xf5, 0x78, 0x24, 0xc3, - 0x3b, 0x6d, 0x97, 0xb6, 0x6b, 0xe2, 0xed, 0x10, 0x6a, 0x02, 0x67, 0x21, 0xed, 0x47, 0xad, 0x97, - 0x1b, 0x5b, 0x21, 0xcc, 0x24, 0x7e, 0x0e, 0x16, 0x03, 0x98, 0x82, 0x54, 0x90, 0xeb, 0x95, 0x42, - 0xb5, 0x24, 0x17, 0x6b, 0xd5, 0x6a, 0xa9, 0x28, 0x95, 0x6b, 0x55, 0xb9, 0x21, 0x15, 0xa4, 0x9d, - 0x86, 0x30, 0x85, 0xf3, 0x70, 0x25, 0x20, 0x5a, 0xad, 0x2a, 0x89, 0xb5, 0xca, 0xa1, 0x04, 0xb0, - 0xf4, 0x4f, 0xb7, 0x2a, 0x71, 0xbf, 0x9c, 0x01, 0xa1, 0x52, 0xae, 0x6e, 0x39, 0xb4, 0xd2, 0x4e, - 0xb5, 0x5a, 0xaa, 0x08, 0x11, 0x7c, 0x16, 0xe6, 0xfb, 0xb3, 0xd5, 0x92, 0x74, 0xab, 0x26, 0x6e, - 0x09, 0x28, 0x08, 0x6e, 0xec, 0xac, 0x55, 0x4b, 0x92, 0x10, 0xc5, 0xe7, 0x00, 0xf7, 0x67, 0xcb, - 0xd5, 0x86, 0x54, 0xa8, 0x16, 0x4b, 0x42, 0x0c, 0x5f, 0x82, 0x0b, 0x3e, 0x74, 0x59, 0x62, 0x36, - 0x69, 0x6c, 0xca, 0x1b, 0x62, 0x6d, 0xa7, 0x2e, 0xc4, 0x71, 0x1a, 0x16, 0xfa, 0xcb, 0xeb, 0x45, - 0xb9, 0x58, 0xd9, 0x69, 0x48, 0x25, 0xd1, 0x5d, 0x4f, 0x60, 0x01, 0x66, 0xfa, 0xeb, 0x95, 0x6b, - 0x42, 0x12, 0x3f, 0x01, 0xe7, 0xfb, 0x33, 0x01, 0x3d, 0x85, 0x09, 0x7c, 0x11, 0x52, 0xfd, 0xc5, - 0xb5, 0x8d, 0xba, 0x4f, 0x75, 0x61, 0x72, 0xc9, 0x04, 0xe8, 0xc7, 0x68, 0x6f, 0x6b, 0xc7, 0x24, - 0x72, 0xb5, 0x26, 0xc9, 0x85, 0x7a, 0xbd, 0x52, 0x2e, 0x16, 0xd6, 0x2a, 0x25, 0x21, 0x82, 0xcf, - 0xc3, 0x69, 0xff, 0xfa, 0x4e, 0x75, 0xab, 0x5a, 0xbb, 0x55, 0x15, 0x10, 0xc6, 0x30, 0x1b, 0x58, - 0xa8, 0x0b, 0xd1, 0x9e, 0x51, 0xdc, 0xb9, 0x75, 0x86, 0x8c, 0xad, 0xbc, 0x3b, 0x03, 0xa7, 0x8a, - 0xfc, 0x23, 0x11, 0x4b, 0xa8, 0x42, 0xbd, 0x8c, 0x1f, 0x22, 0x98, 0xf1, 0x7f, 0xf7, 0xc0, 0x57, - 0x86, 0xbe, 0x2b, 0x04, 0x9f, 0xc9, 0x17, 0x0e, 0x3d, 0x4e, 0xc3, 0x0f, 0xd8, 0xd9, 0x37, 0x0e, - 0x7e, 0x97, 0x7a, 0xe9, 0xce, 0x8d, 0xd7, 0xd5, 0x65, 0x76, 0x02, 0x2e, 0xb7, 0x15, 0x43, 0x69, - 0x92, 0x36, 0x31, 0xe8, 0xf2, 0xae, 0x62, 0xeb, 0xea, 0x72, 0xdb, 0x34, 0x74, 0x6a, 0x5a, 0xcf, - 0xed, 0x11, 0x7b, 0x59, 0x37, 0x97, 0x75, 0xe3, 0x8e, 0xa5, 0xd8, 0xd4, 0xea, 0xaa, 0xb4, 0x6b, - 0x91, 0x65, 0x8b, 0x28, 0xda, 0x3b, 0x7f, 0xfd, 0xec, 0x3b, 0xd1, 0x6b, 0xd9, 0x9c, 0xfb, 0xb1, - 0x2b, 0xcf, 0x8e, 0x2a, 0xbb, 0xa3, 0xa8, 0xc4, 0xce, 0xdb, 0xfb, 0x36, 0x25, 0xed, 0xfe, 0x77, - 0x25, 0xb6, 0x45, 0xfe, 0x4d, 0xf6, 0xf7, 0xad, 0x55, 0xb4, 0x84, 0xff, 0x85, 0xe0, 0xec, 0xc0, - 0x0f, 0x18, 0xf8, 0xfa, 0x58, 0xb7, 0xdf, 0xd0, 0x97, 0x83, 0x23, 0x68, 0xfd, 0xb5, 0x93, 0xd1, - 0xfa, 0x06, 0xbe, 0x36, 0xa6, 0xd6, 0xbe, 0x16, 0xc5, 0xc6, 0x6f, 0x47, 0x41, 0x08, 0x7f, 0x97, - 0xc1, 0xf9, 0x51, 0x2a, 0x1f, 0xdf, 0xc7, 0xef, 0xa3, 0x93, 0x51, 0xb7, 0x9c, 0x5d, 0x3f, 0xba, - 0xba, 0x8e, 0xbf, 0x7d, 0x13, 0xdc, 0xf5, 0xff, 0x46, 0x70, 0x6e, 0xf0, 0x67, 0x20, 0x7c, 0x63, - 0xbc, 0xf7, 0x81, 0xe3, 0x3b, 0xff, 0xad, 0x93, 0xb1, 0xc6, 0x0b, 0xf8, 0xfa, 0x18, 0xd6, 0x08, - 0xb7, 0x91, 0x36, 0xfe, 0x46, 0x14, 0xe6, 0x1f, 0xfb, 0xbe, 0x85, 0x9f, 0x1f, 0xa9, 0xf5, 0xf1, - 0xfd, 0xff, 0xc1, 0x09, 0xf9, 0x7f, 0x2b, 0xfb, 0xca, 0x31, 0x34, 0xce, 0xbf, 0x19, 0x9e, 0xe1, - 0x11, 0xf0, 0x37, 0x04, 0xa7, 0x36, 0x08, 0xed, 0xbf, 0xb6, 0xe2, 0xcb, 0xa3, 0x5f, 0x64, 0x3d, - 0xdd, 0x97, 0xc6, 0x81, 0xba, 0xda, 0x7f, 0xfd, 0x64, 0x94, 0xbf, 0x89, 0x6f, 0x8c, 0xa1, 0xbc, - 0xef, 0xa1, 0x39, 0xff, 0x26, 0xc3, 0xbd, 0xb5, 0x70, 0xe5, 0xe3, 0x8f, 0x50, 0xec, 0x2f, 0x1f, - 0xa1, 0x4b, 0x87, 0x88, 0x5c, 0xdb, 0xfd, 0x0a, 0x51, 0xe9, 0x3b, 0x7f, 0x4e, 0x45, 0x53, 0x68, - 0xed, 0x5d, 0xf4, 0xe0, 0x61, 0x3a, 0xf2, 0xc9, 0xc3, 0x74, 0xe4, 0xf3, 0x87, 0x69, 0xf4, 0xf6, - 0x41, 0x1a, 0xfd, 0xf4, 0x20, 0x8d, 0x7e, 0x7f, 0x90, 0x46, 0x0f, 0x0e, 0xd2, 0xe8, 0xd3, 0x83, - 0x34, 0xfa, 0xfb, 0x41, 0x3a, 0xf2, 0xf9, 0x41, 0x1a, 0xbd, 0xff, 0x28, 0x1d, 0xf9, 0xf8, 0x51, - 0x1a, 0x3d, 0x78, 0x94, 0x8e, 0x7c, 0xf2, 0x28, 0x1d, 0x79, 0xad, 0xd2, 0x34, 0x3b, 0xf7, 0x9a, - 0xb9, 0x3d, 0xb3, 0x45, 0x89, 0x65, 0x29, 0xb9, 0xae, 0x9d, 0xe7, 0x3f, 0xee, 0x98, 0x56, 0x7b, - 0xd9, 0xbb, 0xb4, 0x2f, 0x7b, 0xcb, 0xf9, 0xce, 0x6e, 0xd3, 0xcc, 0x93, 0xd7, 0xa9, 0xfb, 0xe9, - 0x3d, 0xf4, 0x2f, 0x00, 0xbb, 0x49, 0xfe, 0xf9, 0xfd, 0xda, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, - 0x4b, 0x32, 0xe6, 0x05, 0xda, 0x20, 0x00, 0x00, +func (m *Node) GetInstance() *NodeTypeInstance { + if x, ok := m.GetNodeType().(*Node_Instance); ok { + return x.Instance + } + return nil } -func (x MetricType) String() string { - s, ok := MetricType_name[int32(x)] - if ok { - return s +func (m *Node) GetSiteMeshGroup() *NodeTypeSiteMeshGroup { + if x, ok := m.GetNodeType().(*Node_SiteMeshGroup); ok { + return x.SiteMeshGroup } - return strconv.Itoa(int(x)) + return nil } -func (x LinkType) String() string { - s, ok := LinkType_name[int32(x)] - if ok { - return s + +func (m *Node) GetDcClusterGroup() *NodeTypeDCClusterGroup { + if x, ok := m.GetNodeType().(*Node_DcClusterGroup); ok { + return x.DcClusterGroup } - return strconv.Itoa(int(x)) + return nil } -func (x LinkStatus) String() string { - s, ok := LinkStatus_name[int32(x)] - if ok { - return s + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Node) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Node_Site)(nil), + (*Node_TransitGateway)(nil), + (*Node_Network)(nil), + (*Node_Subnet)(nil), + (*Node_Instance)(nil), + (*Node_SiteMeshGroup)(nil), + (*Node_DcClusterGroup)(nil), } - return strconv.Itoa(int(x)) } -func (this *SiteTopologyRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*SiteTopologyRequest) - if !ok { - that2, ok := that.(SiteTopologyRequest) - if ok { - that1 = &that2 - } else { - return false +// LinkInfo +// +// x-displayName: "Link Info" +// Information about the link that connects 2 nodes in the topology graph. +type LinkInfo struct { + // Name + // + // x-displayName: "Name" + // x-example: "tunnel-1" + // Name of the link. + // Link name may or may not be present depending on the type of link. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Type + // + // x-displayName: "Type" + // Link type. + Type LinkType `protobuf:"varint,2,opt,name=type,proto3,enum=ves.io.schema.topology.LinkType" json:"type,omitempty"` + // Status + // + // x-displayName: "Status" + // Link status. + Status LinkStatus `protobuf:"varint,3,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` + // Source ID + // + // x-displayName: "Source ID" + // Endpoint identifier. src_id is the source endpoint for the link is between src_id and dst_id. + // x-example: "master-0" + SrcId string `protobuf:"bytes,4,opt,name=src_id,json=srcId,proto3" json:"src_id,omitempty"` + // Destination ID + // + // x-displayName: "Destination ID" + // Endpoint identifier. dst_id is the destination endpoint for the link is between src_id and dst_id. + // x-example: "master-0" + DstId string `protobuf:"bytes,5,opt,name=dst_id,json=dstId,proto3" json:"dst_id,omitempty"` +} + +func (m *LinkInfo) Reset() { *m = LinkInfo{} } +func (*LinkInfo) ProtoMessage() {} +func (*LinkInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{37} +} +func (m *LinkInfo) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LinkInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_LinkInfo.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Site != that1.Site { - return false - } - if this.NodeId != that1.NodeId { - return false - } - if this.Level != that1.Level { - return false - } - if this.GroupSiteMeshNodes != that1.GroupSiteMeshNodes { - return false - } - if this.GroupDcClusterNodes != that1.GroupDcClusterNodes { - return false - } - if !this.MetricSelector.Equal(that1.MetricSelector) { - return false +} +func (m *LinkInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_LinkInfo.Merge(m, src) +} +func (m *LinkInfo) XXX_Size() int { + return m.Size() +} +func (m *LinkInfo) XXX_DiscardUnknown() { + xxx_messageInfo_LinkInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_LinkInfo proto.InternalMessageInfo + +func (m *LinkInfo) GetName() string { + if m != nil { + return m.Name } - return true + return "" } -func (this *SiteMeshGroupsSummaryRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil + +func (m *LinkInfo) GetType() LinkType { + if m != nil { + return m.Type } + return LINK_TYPE_TUNNEL +} - that1, ok := that.(*SiteMeshGroupsSummaryRequest) - if !ok { - that2, ok := that.(SiteMeshGroupsSummaryRequest) - if ok { - that1 = &that2 - } else { - return false - } +func (m *LinkInfo) GetStatus() LinkStatus { + if m != nil { + return m.Status } - if that1 == nil { - return this == nil - } else if this == nil { - return false + return LINK_STATUS_NOT_APPLICABLE +} + +func (m *LinkInfo) GetSrcId() string { + if m != nil { + return m.SrcId } - return true + return "" } -func (this *SiteMeshTopologyRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil + +func (m *LinkInfo) GetDstId() string { + if m != nil { + return m.DstId } + return "" +} - that1, ok := that.(*SiteMeshTopologyRequest) - if !ok { - that2, ok := that.(SiteMeshTopologyRequest) - if ok { - that1 = &that2 - } else { - return false +// LinkInfoSummary +// +// x-displayName: "Link Info Summary" +// Summary information for a link type +type LinkInfoSummary struct { + // Type + // + // x-displayName: "Type" + // Link type. + Type LinkType `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.topology.LinkType" json:"type,omitempty"` + // Status + // + // x-displayName: "Status" + // Link status. + Status LinkStatus `protobuf:"varint,2,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` + // Count + // + // x-displayName: "Count" + // Links count. + Count uint32 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"` +} + +func (m *LinkInfoSummary) Reset() { *m = LinkInfoSummary{} } +func (*LinkInfoSummary) ProtoMessage() {} +func (*LinkInfoSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{38} +} +func (m *LinkInfoSummary) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LinkInfoSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_LinkInfoSummary.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.SiteMeshGroup != that1.SiteMeshGroup { - return false +} +func (m *LinkInfoSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_LinkInfoSummary.Merge(m, src) +} +func (m *LinkInfoSummary) XXX_Size() int { + return m.Size() +} +func (m *LinkInfoSummary) XXX_DiscardUnknown() { + xxx_messageInfo_LinkInfoSummary.DiscardUnknown(m) +} + +var xxx_messageInfo_LinkInfoSummary proto.InternalMessageInfo + +func (m *LinkInfoSummary) GetType() LinkType { + if m != nil { + return m.Type } - if !this.MetricSelector.Equal(that1.MetricSelector) { - return false + return LINK_TYPE_TUNNEL +} + +func (m *LinkInfoSummary) GetStatus() LinkStatus { + if m != nil { + return m.Status } - return true + return LINK_STATUS_NOT_APPLICABLE } -func (this *DCClusterGroupsSummaryRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil + +func (m *LinkInfoSummary) GetCount() uint32 { + if m != nil { + return m.Count } + return 0 +} - that1, ok := that.(*DCClusterGroupsSummaryRequest) - if !ok { - that2, ok := that.(DCClusterGroupsSummaryRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - return true +// LinkTypeData +// +// x-displayName: "Link Type Data" +// LinkTypeData contains details about the link and the metrics (if requested/available). +type LinkTypeData struct { + // Info + // + // x-displayName: "Info" + // Information about the link. + Info *LinkInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` + // Metric + // + // x-displayName: "Metric" + // Metric data for the link. + Metric []*MetricData `protobuf:"bytes,2,rep,name=metric,proto3" json:"metric,omitempty"` } -func (this *DCClusterTopologyRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*DCClusterTopologyRequest) - if !ok { - that2, ok := that.(DCClusterTopologyRequest) - if ok { - that1 = &that2 - } else { - return false +func (m *LinkTypeData) Reset() { *m = LinkTypeData{} } +func (*LinkTypeData) ProtoMessage() {} +func (*LinkTypeData) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{39} +} +func (m *LinkTypeData) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LinkTypeData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_LinkTypeData.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.DcClusterGroup != that1.DcClusterGroup { - return false - } - if !this.MetricSelector.Equal(that1.MetricSelector) { - return false - } - return true } -func (this *TopologyResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } +func (m *LinkTypeData) XXX_Merge(src proto.Message) { + xxx_messageInfo_LinkTypeData.Merge(m, src) +} +func (m *LinkTypeData) XXX_Size() int { + return m.Size() +} +func (m *LinkTypeData) XXX_DiscardUnknown() { + xxx_messageInfo_LinkTypeData.DiscardUnknown(m) +} - that1, ok := that.(*TopologyResponse) - if !ok { - that2, ok := that.(TopologyResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Nodes) != len(that1.Nodes) { - return false - } - for i := range this.Nodes { - if !this.Nodes[i].Equal(that1.Nodes[i]) { - return false - } - } - if len(this.Edges) != len(that1.Edges) { - return false - } - for i := range this.Edges { - if !this.Edges[i].Equal(that1.Edges[i]) { - return false - } - } - if this.Step != that1.Step { - return false +var xxx_messageInfo_LinkTypeData proto.InternalMessageInfo + +func (m *LinkTypeData) GetInfo() *LinkInfo { + if m != nil { + return m.Info } - return true + return nil } -func (this *RouteTableRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*RouteTableRequest) - if !ok { - that2, ok := that.(RouteTableRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Name != that1.Name { - return false +func (m *LinkTypeData) GetMetric() []*MetricData { + if m != nil { + return m.Metric } - return true + return nil } -func (this *RouteTableResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*RouteTableResponse) - if !ok { - that2, ok := that.(RouteTableResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.RouteTable.Equal(that1.RouteTable) { - return false - } - return true +// EdgeInfoSummary +// +// x-displayName: "Edge Info Summary" +// Summary information for an edge +type EdgeInfoSummary struct { + // Status + // + // x-displayName: "Status" + // Edge status. + Status LinkStatus `protobuf:"varint,1,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` + // Count + // + // x-displayName: "Count" + // Links count. + Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` } -func (this *MetricSelector) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*MetricSelector) - if !ok { - that2, ok := that.(MetricSelector) - if ok { - that1 = &that2 - } else { - return false +func (m *EdgeInfoSummary) Reset() { *m = EdgeInfoSummary{} } +func (*EdgeInfoSummary) ProtoMessage() {} +func (*EdgeInfoSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{40} +} +func (m *EdgeInfoSummary) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EdgeInfoSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_EdgeInfoSummary.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.StartTime != that1.StartTime { - return false - } - if this.EndTime != that1.EndTime { - return false - } - if len(this.Node) != len(that1.Node) { - return false - } - for i := range this.Node { - if this.Node[i] != that1.Node[i] { - return false - } +} +func (m *EdgeInfoSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_EdgeInfoSummary.Merge(m, src) +} +func (m *EdgeInfoSummary) XXX_Size() int { + return m.Size() +} +func (m *EdgeInfoSummary) XXX_DiscardUnknown() { + xxx_messageInfo_EdgeInfoSummary.DiscardUnknown(m) +} + +var xxx_messageInfo_EdgeInfoSummary proto.InternalMessageInfo + +func (m *EdgeInfoSummary) GetStatus() LinkStatus { + if m != nil { + return m.Status } - if len(this.Edge) != len(that1.Edge) { - return false + return LINK_STATUS_NOT_APPLICABLE +} + +func (m *EdgeInfoSummary) GetCount() uint32 { + if m != nil { + return m.Count } - for i := range this.Edge { - if this.Edge[i] != that1.Edge[i] { - return false + return 0 +} + +// Edge +// +// x-displayName: "Edge" +// Canonical representation of Edge in the topology graph. +type Edge struct { + // Node Id1 + // + // x-displayName: "Node Id1" + // Node identifier. + NodeId1 string `protobuf:"bytes,1,opt,name=node_id1,json=nodeId1,proto3" json:"node_id1,omitempty"` + // Node Id2 + // + // x-displayName: "Node Id2" + // Node identifier. + NodeId2 string `protobuf:"bytes,2,opt,name=node_id2,json=nodeId2,proto3" json:"node_id2,omitempty"` + // Links + // + // x-displayName: "Links" + // An edge may be composed of multiple links. + // For example, there may be multiple tunnels between a transit gateway and a site and each tunnel + // is represented as individual links. In some cases, we may want to show only one link between 2 nodes, + // eventhough there may be multiple connections/tunnels between these nodes. + Links []*LinkTypeData `protobuf:"bytes,3,rep,name=links,proto3" json:"links,omitempty"` + // Status + // + // x-displayName: "Status" + // Indicates the overall status of the edge. + // An edge may be have multiple links (dataplane tunnels, control plane connections). + // The status of an edge indicates the overall health of the edge. + Status LinkStatus `protobuf:"varint,4,opt,name=status,proto3,enum=ves.io.schema.topology.LinkStatus" json:"status,omitempty"` +} + +func (m *Edge) Reset() { *m = Edge{} } +func (*Edge) ProtoMessage() {} +func (*Edge) Descriptor() ([]byte, []int) { + return fileDescriptor_a69fe73d473fc687, []int{41} +} +func (m *Edge) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Edge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Edge.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil } - if this.Step != that1.Step { - return false - } - return true } -func (this *MetricTypeData) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *Edge) XXX_Merge(src proto.Message) { + xxx_messageInfo_Edge.Merge(m, src) +} +func (m *Edge) XXX_Size() int { + return m.Size() +} +func (m *Edge) XXX_DiscardUnknown() { + xxx_messageInfo_Edge.DiscardUnknown(m) +} + +var xxx_messageInfo_Edge proto.InternalMessageInfo + +func (m *Edge) GetNodeId1() string { + if m != nil { + return m.NodeId1 } + return "" +} - that1, ok := that.(*MetricTypeData) - if !ok { - that2, ok := that.(MetricTypeData) - if ok { - that1 = &that2 - } else { - return false - } +func (m *Edge) GetNodeId2() string { + if m != nil { + return m.NodeId2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false + return "" +} + +func (m *Edge) GetLinks() []*LinkTypeData { + if m != nil { + return m.Links } - if len(this.Labels) != len(that1.Labels) { - return false + return nil +} + +func (m *Edge) GetStatus() LinkStatus { + if m != nil { + return m.Status } - for i := range this.Labels { - if this.Labels[i] != that1.Labels[i] { - return false - } + return LINK_STATUS_NOT_APPLICABLE +} + +func init() { + proto.RegisterEnum("ves.io.schema.topology.MetricType", MetricType_name, MetricType_value) + golang_proto.RegisterEnum("ves.io.schema.topology.MetricType", MetricType_name, MetricType_value) + proto.RegisterEnum("ves.io.schema.topology.LinkType", LinkType_name, LinkType_value) + golang_proto.RegisterEnum("ves.io.schema.topology.LinkType", LinkType_name, LinkType_value) + proto.RegisterEnum("ves.io.schema.topology.LinkStatus", LinkStatus_name, LinkStatus_value) + golang_proto.RegisterEnum("ves.io.schema.topology.LinkStatus", LinkStatus_name, LinkStatus_value) + proto.RegisterType((*SiteTopologyRequest)(nil), "ves.io.schema.topology.SiteTopologyRequest") + golang_proto.RegisterType((*SiteTopologyRequest)(nil), "ves.io.schema.topology.SiteTopologyRequest") + proto.RegisterType((*SiteMeshGroupsSummaryRequest)(nil), "ves.io.schema.topology.SiteMeshGroupsSummaryRequest") + golang_proto.RegisterType((*SiteMeshGroupsSummaryRequest)(nil), "ves.io.schema.topology.SiteMeshGroupsSummaryRequest") + proto.RegisterType((*SiteMeshTopologyRequest)(nil), "ves.io.schema.topology.SiteMeshTopologyRequest") + golang_proto.RegisterType((*SiteMeshTopologyRequest)(nil), "ves.io.schema.topology.SiteMeshTopologyRequest") + proto.RegisterType((*DCClusterGroupsSummaryRequest)(nil), "ves.io.schema.topology.DCClusterGroupsSummaryRequest") + golang_proto.RegisterType((*DCClusterGroupsSummaryRequest)(nil), "ves.io.schema.topology.DCClusterGroupsSummaryRequest") + proto.RegisterType((*DCClusterTopologyRequest)(nil), "ves.io.schema.topology.DCClusterTopologyRequest") + golang_proto.RegisterType((*DCClusterTopologyRequest)(nil), "ves.io.schema.topology.DCClusterTopologyRequest") + proto.RegisterType((*TopologyResponse)(nil), "ves.io.schema.topology.TopologyResponse") + golang_proto.RegisterType((*TopologyResponse)(nil), "ves.io.schema.topology.TopologyResponse") + proto.RegisterType((*RouteTableRequest)(nil), "ves.io.schema.topology.RouteTableRequest") + golang_proto.RegisterType((*RouteTableRequest)(nil), "ves.io.schema.topology.RouteTableRequest") + proto.RegisterType((*RouteTableResponse)(nil), "ves.io.schema.topology.RouteTableResponse") + golang_proto.RegisterType((*RouteTableResponse)(nil), "ves.io.schema.topology.RouteTableResponse") + proto.RegisterType((*SiteNetworksRequest)(nil), "ves.io.schema.topology.SiteNetworksRequest") + golang_proto.RegisterType((*SiteNetworksRequest)(nil), "ves.io.schema.topology.SiteNetworksRequest") + proto.RegisterType((*SiteNetworksResponse)(nil), "ves.io.schema.topology.SiteNetworksResponse") + golang_proto.RegisterType((*SiteNetworksResponse)(nil), "ves.io.schema.topology.SiteNetworksResponse") + proto.RegisterType((*NetworkRouteTablesRequest)(nil), "ves.io.schema.topology.NetworkRouteTablesRequest") + golang_proto.RegisterType((*NetworkRouteTablesRequest)(nil), "ves.io.schema.topology.NetworkRouteTablesRequest") + proto.RegisterType((*NetworkRouteTablesResponse)(nil), "ves.io.schema.topology.NetworkRouteTablesResponse") + golang_proto.RegisterType((*NetworkRouteTablesResponse)(nil), "ves.io.schema.topology.NetworkRouteTablesResponse") + proto.RegisterType((*MetricSelector)(nil), "ves.io.schema.topology.MetricSelector") + golang_proto.RegisterType((*MetricSelector)(nil), "ves.io.schema.topology.MetricSelector") + proto.RegisterType((*MetricTypeData)(nil), "ves.io.schema.topology.MetricTypeData") + golang_proto.RegisterType((*MetricTypeData)(nil), "ves.io.schema.topology.MetricTypeData") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetricTypeData.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetricTypeData.LabelsEntry") + proto.RegisterType((*MetricData)(nil), "ves.io.schema.topology.MetricData") + golang_proto.RegisterType((*MetricData)(nil), "ves.io.schema.topology.MetricData") + proto.RegisterType((*RouteTableMetaData)(nil), "ves.io.schema.topology.RouteTableMetaData") + golang_proto.RegisterType((*RouteTableMetaData)(nil), "ves.io.schema.topology.RouteTableMetaData") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.RouteTableMetaData.TagsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.RouteTableMetaData.TagsEntry") + proto.RegisterType((*RouteTableData)(nil), "ves.io.schema.topology.RouteTableData") + golang_proto.RegisterType((*RouteTableData)(nil), "ves.io.schema.topology.RouteTableData") + proto.RegisterType((*SubnetMetaData)(nil), "ves.io.schema.topology.SubnetMetaData") + golang_proto.RegisterType((*SubnetMetaData)(nil), "ves.io.schema.topology.SubnetMetaData") + proto.RegisterType((*SubnetData)(nil), "ves.io.schema.topology.SubnetData") + golang_proto.RegisterType((*SubnetData)(nil), "ves.io.schema.topology.SubnetData") + proto.RegisterType((*NetworkRouteTableMetaData)(nil), "ves.io.schema.topology.NetworkRouteTableMetaData") + golang_proto.RegisterType((*NetworkRouteTableMetaData)(nil), "ves.io.schema.topology.NetworkRouteTableMetaData") + proto.RegisterType((*NetworkRouteTableData)(nil), "ves.io.schema.topology.NetworkRouteTableData") + golang_proto.RegisterType((*NetworkRouteTableData)(nil), "ves.io.schema.topology.NetworkRouteTableData") + proto.RegisterType((*NetworkRoutesMetaData)(nil), "ves.io.schema.topology.NetworkRoutesMetaData") + golang_proto.RegisterType((*NetworkRoutesMetaData)(nil), "ves.io.schema.topology.NetworkRoutesMetaData") + proto.RegisterType((*NetworkRoutesData)(nil), "ves.io.schema.topology.NetworkRoutesData") + golang_proto.RegisterType((*NetworkRoutesData)(nil), "ves.io.schema.topology.NetworkRoutesData") + proto.RegisterType((*SiteSummaryInfo)(nil), "ves.io.schema.topology.SiteSummaryInfo") + golang_proto.RegisterType((*SiteSummaryInfo)(nil), "ves.io.schema.topology.SiteSummaryInfo") + proto.RegisterType((*NetworkSummaryInfo)(nil), "ves.io.schema.topology.NetworkSummaryInfo") + golang_proto.RegisterType((*NetworkSummaryInfo)(nil), "ves.io.schema.topology.NetworkSummaryInfo") + proto.RegisterType((*SubnetSummaryInfo)(nil), "ves.io.schema.topology.SubnetSummaryInfo") + golang_proto.RegisterType((*SubnetSummaryInfo)(nil), "ves.io.schema.topology.SubnetSummaryInfo") + proto.RegisterType((*NodeTypeSite)(nil), "ves.io.schema.topology.NodeTypeSite") + golang_proto.RegisterType((*NodeTypeSite)(nil), "ves.io.schema.topology.NodeTypeSite") + proto.RegisterType((*SiteMeshGroupSummaryInfo)(nil), "ves.io.schema.topology.SiteMeshGroupSummaryInfo") + golang_proto.RegisterType((*SiteMeshGroupSummaryInfo)(nil), "ves.io.schema.topology.SiteMeshGroupSummaryInfo") + proto.RegisterType((*NodeTypeSiteMeshGroup)(nil), "ves.io.schema.topology.NodeTypeSiteMeshGroup") + golang_proto.RegisterType((*NodeTypeSiteMeshGroup)(nil), "ves.io.schema.topology.NodeTypeSiteMeshGroup") + proto.RegisterType((*DCClusterGroupSummaryInfo)(nil), "ves.io.schema.topology.DCClusterGroupSummaryInfo") + golang_proto.RegisterType((*DCClusterGroupSummaryInfo)(nil), "ves.io.schema.topology.DCClusterGroupSummaryInfo") + proto.RegisterType((*NodeTypeDCClusterGroup)(nil), "ves.io.schema.topology.NodeTypeDCClusterGroup") + golang_proto.RegisterType((*NodeTypeDCClusterGroup)(nil), "ves.io.schema.topology.NodeTypeDCClusterGroup") + proto.RegisterType((*NodeTypeTransitGateway)(nil), "ves.io.schema.topology.NodeTypeTransitGateway") + golang_proto.RegisterType((*NodeTypeTransitGateway)(nil), "ves.io.schema.topology.NodeTypeTransitGateway") + proto.RegisterType((*NodeTypeNetwork)(nil), "ves.io.schema.topology.NodeTypeNetwork") + golang_proto.RegisterType((*NodeTypeNetwork)(nil), "ves.io.schema.topology.NodeTypeNetwork") + proto.RegisterType((*NodeTypeSubnet)(nil), "ves.io.schema.topology.NodeTypeSubnet") + golang_proto.RegisterType((*NodeTypeSubnet)(nil), "ves.io.schema.topology.NodeTypeSubnet") + proto.RegisterType((*NodeTypeInstance)(nil), "ves.io.schema.topology.NodeTypeInstance") + golang_proto.RegisterType((*NodeTypeInstance)(nil), "ves.io.schema.topology.NodeTypeInstance") + proto.RegisterType((*NodeMetaData)(nil), "ves.io.schema.topology.NodeMetaData") + golang_proto.RegisterType((*NodeMetaData)(nil), "ves.io.schema.topology.NodeMetaData") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.NodeMetaData.TagsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.NodeMetaData.TagsEntry") + proto.RegisterType((*Node)(nil), "ves.io.schema.topology.Node") + golang_proto.RegisterType((*Node)(nil), "ves.io.schema.topology.Node") + proto.RegisterType((*LinkInfo)(nil), "ves.io.schema.topology.LinkInfo") + golang_proto.RegisterType((*LinkInfo)(nil), "ves.io.schema.topology.LinkInfo") + proto.RegisterType((*LinkInfoSummary)(nil), "ves.io.schema.topology.LinkInfoSummary") + golang_proto.RegisterType((*LinkInfoSummary)(nil), "ves.io.schema.topology.LinkInfoSummary") + proto.RegisterType((*LinkTypeData)(nil), "ves.io.schema.topology.LinkTypeData") + golang_proto.RegisterType((*LinkTypeData)(nil), "ves.io.schema.topology.LinkTypeData") + proto.RegisterType((*EdgeInfoSummary)(nil), "ves.io.schema.topology.EdgeInfoSummary") + golang_proto.RegisterType((*EdgeInfoSummary)(nil), "ves.io.schema.topology.EdgeInfoSummary") + proto.RegisterType((*Edge)(nil), "ves.io.schema.topology.Edge") + golang_proto.RegisterType((*Edge)(nil), "ves.io.schema.topology.Edge") +} + +func init() { + proto.RegisterFile("ves.io/schema/topology/public_custom_data_api.proto", fileDescriptor_a69fe73d473fc687) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/topology/public_custom_data_api.proto", fileDescriptor_a69fe73d473fc687) +} + +var fileDescriptor_a69fe73d473fc687 = []byte{ + // 3039 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xdb, 0x6f, 0x1b, 0xc7, + 0xd5, 0xe7, 0x2e, 0x49, 0x5d, 0x8e, 0x6c, 0x89, 0x1a, 0x5b, 0x36, 0xad, 0xd8, 0x8c, 0xb2, 0x5f, + 0x2e, 0xb2, 0x1c, 0x89, 0x31, 0x6d, 0xc7, 0x89, 0xf1, 0x35, 0x08, 0x45, 0x31, 0x12, 0x6d, 0x9a, + 0x24, 0x96, 0x54, 0x0c, 0x07, 0x05, 0x16, 0x2b, 0xee, 0x98, 0xde, 0x9a, 0xdc, 0x65, 0x77, 0x97, + 0x72, 0x54, 0x23, 0x40, 0x90, 0x87, 0xa2, 0x0d, 0xd2, 0xa0, 0x48, 0xd3, 0x4b, 0x0a, 0x04, 0x48, + 0xda, 0x06, 0x29, 0xd0, 0xa6, 0x7d, 0x68, 0x81, 0xa2, 0x4d, 0x5b, 0x04, 0x28, 0x8a, 0x5e, 0x51, + 0x18, 0xed, 0x4b, 0x1e, 0x13, 0x39, 0x0f, 0xed, 0x5b, 0xfa, 0x1f, 0x14, 0x33, 0x3b, 0xbb, 0x9c, + 0x5d, 0x51, 0x24, 0xa5, 0xb8, 0x46, 0x5f, 0x08, 0xce, 0x9c, 0xcb, 0x9e, 0xf3, 0x9b, 0x39, 0xe7, + 0xcc, 0x99, 0x5d, 0x38, 0xb3, 0x89, 0xed, 0x25, 0xdd, 0x4c, 0xdb, 0xf5, 0xeb, 0xb8, 0xa5, 0xa6, + 0x1d, 0xb3, 0x6d, 0x36, 0xcd, 0xc6, 0x56, 0xba, 0xdd, 0xd9, 0x68, 0xea, 0x75, 0xa5, 0xde, 0xb1, + 0x1d, 0xb3, 0xa5, 0x68, 0xaa, 0xa3, 0x2a, 0x6a, 0x5b, 0x5f, 0x6a, 0x5b, 0xa6, 0x63, 0xa2, 0x23, + 0xae, 0xd0, 0x92, 0x2b, 0xb4, 0xe4, 0x09, 0xcd, 0x2e, 0x36, 0x74, 0xe7, 0x7a, 0x67, 0x63, 0xa9, + 0x6e, 0xb6, 0xd2, 0x0d, 0xb3, 0x61, 0xa6, 0x29, 0xfb, 0x46, 0xe7, 0x1a, 0x1d, 0xd1, 0x01, 0xfd, + 0xe7, 0xaa, 0x99, 0x3d, 0xde, 0x30, 0xcd, 0x46, 0x13, 0xa7, 0xd5, 0xb6, 0x9e, 0x56, 0x0d, 0xc3, + 0x74, 0x54, 0x47, 0x37, 0x0d, 0x9b, 0x51, 0xef, 0x0b, 0x5a, 0x66, 0xb6, 0x79, 0x62, 0x2a, 0x48, + 0xb4, 0x75, 0x07, 0xa7, 0x9d, 0xad, 0x36, 0xf6, 0xe8, 0xd2, 0x2e, 0x6e, 0xf1, 0x3c, 0xc7, 0x42, + 0x3c, 0x1c, 0xe9, 0x78, 0x90, 0xb4, 0xa9, 0x36, 0x75, 0x4d, 0x75, 0x70, 0x6f, 0xe5, 0x9b, 0xd8, + 0xc6, 0xc6, 0x66, 0xc8, 0xc0, 0xb9, 0x10, 0x8f, 0x8e, 0x6f, 0x2a, 0x01, 0x0e, 0xe9, 0x0d, 0x11, + 0x0e, 0x55, 0x75, 0x07, 0xd7, 0x98, 0x6d, 0x32, 0xfe, 0x62, 0x07, 0xdb, 0x0e, 0x42, 0x10, 0x23, + 0xee, 0x24, 0xc5, 0x39, 0x61, 0x7e, 0x5c, 0xa6, 0xff, 0xd1, 0x51, 0x18, 0x35, 0x4c, 0x0d, 0x2b, + 0xba, 0x96, 0x8c, 0xd2, 0xe9, 0x11, 0x32, 0x2c, 0x68, 0xe8, 0x30, 0xc4, 0x9b, 0x78, 0x13, 0x37, + 0x93, 0xb1, 0x39, 0x61, 0x3e, 0x2e, 0xbb, 0x03, 0x74, 0x0e, 0x66, 0x1a, 0x96, 0xd9, 0x69, 0x2b, + 0x44, 0x58, 0x69, 0x61, 0xfb, 0xba, 0x42, 0xf8, 0xed, 0x64, 0x7c, 0x4e, 0x98, 0x1f, 0x5b, 0x16, + 0x93, 0x82, 0x8c, 0x28, 0x03, 0x79, 0xfe, 0x65, 0x6c, 0x5f, 0x2f, 0x11, 0x2a, 0x3a, 0x0f, 0x47, + 0x5c, 0x31, 0xad, 0xae, 0xd4, 0x9b, 0x1d, 0xdb, 0xc1, 0x16, 0x93, 0x1b, 0xf1, 0xe5, 0x0e, 0x51, + 0x8e, 0x95, 0x7a, 0xce, 0xa5, 0xbb, 0x82, 0x65, 0x98, 0x6a, 0x61, 0xc7, 0xd2, 0xeb, 0x8a, 0x8d, + 0x9b, 0xb8, 0xee, 0x98, 0x56, 0x72, 0x74, 0x4e, 0x98, 0x9f, 0xc8, 0x3c, 0xbc, 0xd4, 0x7b, 0xa7, + 0x2c, 0x5d, 0xa6, 0xec, 0x55, 0xc6, 0x2d, 0x4f, 0xb6, 0x02, 0x63, 0x29, 0x05, 0xc7, 0x3d, 0xd3, + 0x56, 0xc9, 0xf3, 0xec, 0x6a, 0xa7, 0xd5, 0x52, 0x2d, 0x0f, 0x23, 0xe9, 0x35, 0x01, 0x8e, 0x7a, + 0x0c, 0x61, 0xfc, 0x1e, 0x86, 0xa9, 0xae, 0xdb, 0xd4, 0x5a, 0x06, 0xe5, 0x41, 0x9b, 0x57, 0xd9, + 0xcb, 0xe8, 0xe8, 0x67, 0x32, 0xfa, 0x7e, 0x38, 0xb1, 0x92, 0x63, 0xb8, 0xf4, 0xb4, 0xfa, 0x9b, + 0x02, 0x24, 0x7d, 0x8e, 0xb0, 0xd9, 0xf3, 0x90, 0xe0, 0x60, 0xe7, 0xed, 0x9e, 0xd4, 0xea, 0xbc, + 0xd6, 0xbb, 0x6f, 0xf8, 0x77, 0x05, 0x48, 0x74, 0xcd, 0xb1, 0xdb, 0xa6, 0x61, 0x63, 0x94, 0x81, + 0xb8, 0xbb, 0xf6, 0xc2, 0x5c, 0x74, 0x7e, 0x22, 0x73, 0x7c, 0x37, 0xdd, 0x64, 0x07, 0xc8, 0x2e, + 0x2b, 0x91, 0xc1, 0x5a, 0x03, 0xdb, 0x49, 0xb1, 0xbf, 0x4c, 0x5e, 0x6b, 0x60, 0xd9, 0x65, 0x45, + 0x29, 0x88, 0xd9, 0x0e, 0x6e, 0xbb, 0xfb, 0x7a, 0x19, 0x7e, 0xf5, 0xaf, 0x0f, 0xa2, 0x71, 0x2b, + 0xfa, 0xa9, 0x28, 0xc8, 0x74, 0x5e, 0x7a, 0x04, 0xa6, 0x65, 0xb3, 0xe3, 0xe0, 0x9a, 0xba, 0xd1, + 0xc4, 0x5c, 0x8c, 0x18, 0x6a, 0x0b, 0x27, 0x05, 0x37, 0x46, 0xc8, 0x7f, 0xe9, 0x1d, 0x01, 0x10, + 0xcf, 0xc9, 0xfc, 0x78, 0x06, 0xc6, 0x5a, 0xd8, 0x51, 0x49, 0x06, 0xa3, 0xec, 0x13, 0x99, 0x85, + 0xdd, 0xcc, 0xea, 0x4a, 0x5f, 0xc6, 0x8e, 0xba, 0xa2, 0x3a, 0xaa, 0xec, 0xcb, 0xa2, 0x55, 0x98, + 0xb0, 0x08, 0x5d, 0x71, 0x08, 0x03, 0x5d, 0x9a, 0x3e, 0x88, 0x77, 0x55, 0xd5, 0xb6, 0xda, 0x58, + 0x06, 0xcb, 0x1f, 0x4b, 0x27, 0xdd, 0xb0, 0x2f, 0x61, 0xe7, 0xa6, 0x69, 0xdd, 0xb0, 0xfb, 0xb9, + 0x64, 0xc0, 0xe1, 0x20, 0x2b, 0xf3, 0xe9, 0x59, 0x98, 0xa2, 0x0a, 0x6d, 0x85, 0x73, 0x8d, 0x20, + 0xbe, 0xb8, 0xeb, 0x2a, 0xb9, 0x2a, 0xa8, 0x59, 0xb6, 0xef, 0xdd, 0xa4, 0xe5, 0x8f, 0x89, 0x12, + 0xe9, 0xa7, 0x02, 0x1c, 0xe3, 0x39, 0xa9, 0xc1, 0xbe, 0x85, 0x93, 0x20, 0xea, 0x1a, 0xb3, 0x4f, + 0xd4, 0x35, 0x12, 0x68, 0x1c, 0x22, 0x8a, 0xae, 0xb9, 0xeb, 0x3e, 0x2e, 0x1f, 0xec, 0x7a, 0x5b, + 0xd0, 0x6c, 0x74, 0x02, 0xc0, 0xee, 0x6c, 0x18, 0xd8, 0xa1, 0x2c, 0x51, 0xca, 0x32, 0xee, 0xce, + 0x10, 0xf2, 0x03, 0x70, 0x80, 0x91, 0xeb, 0xba, 0x66, 0xd9, 0xc9, 0x18, 0x65, 0x98, 0x70, 0xe7, + 0x72, 0x64, 0x0a, 0x25, 0x61, 0xd4, 0xc2, 0x0d, 0x92, 0x3b, 0x93, 0x71, 0x4a, 0xf5, 0x86, 0xd2, + 0x75, 0x98, 0xed, 0x65, 0x30, 0xc3, 0xe9, 0x22, 0x5b, 0x33, 0x5b, 0xe1, 0x30, 0x3a, 0x39, 0x14, + 0x46, 0x14, 0x1f, 0x77, 0xd9, 0xe8, 0x7f, 0xe9, 0x65, 0x11, 0x26, 0x83, 0x71, 0x84, 0x4e, 0x02, + 0xd8, 0x8e, 0x6a, 0x39, 0x8a, 0xa3, 0x7b, 0x0b, 0xe7, 0x6f, 0xe0, 0xef, 0xc4, 0x04, 0x79, 0x9c, + 0x52, 0x6b, 0x7a, 0x0b, 0xa3, 0x87, 0x60, 0x0c, 0x1b, 0x9a, 0xcb, 0x28, 0xee, 0x60, 0x1c, 0xc5, + 0x86, 0x46, 0xd9, 0x96, 0x21, 0x46, 0x22, 0x89, 0x82, 0x34, 0x99, 0x91, 0xfa, 0xc7, 0x33, 0xd9, + 0x59, 0x4c, 0xcd, 0x6b, 0x02, 0xc9, 0xcd, 0x54, 0x96, 0xe8, 0x20, 0x91, 0x45, 0x71, 0xdc, 0x87, + 0x0e, 0x22, 0xeb, 0x07, 0x65, 0x3c, 0x60, 0xea, 0x5b, 0x31, 0x2f, 0x28, 0xff, 0x22, 0x78, 0x60, + 0x10, 0x05, 0x04, 0x1f, 0x74, 0x11, 0x46, 0x9a, 0xea, 0x06, 0x6e, 0x7a, 0x09, 0x23, 0x33, 0xf8, + 0xc1, 0x44, 0x6e, 0xa9, 0x48, 0x85, 0xf2, 0x86, 0x63, 0x6d, 0xc9, 0x4c, 0x03, 0xca, 0xc0, 0xc8, + 0xa6, 0xda, 0xec, 0xf8, 0x89, 0x64, 0x36, 0xa4, 0xcb, 0x55, 0xf1, 0x2c, 0x61, 0x91, 0x19, 0xe7, + 0xec, 0x93, 0x30, 0xc1, 0xa9, 0x42, 0x09, 0x88, 0xde, 0xc0, 0x5b, 0x6c, 0xb7, 0x92, 0xbf, 0xa4, + 0x54, 0x52, 0x56, 0x96, 0x55, 0xdd, 0xc1, 0x05, 0xf1, 0x09, 0x41, 0x7a, 0x4f, 0x00, 0x70, 0x55, + 0x52, 0x4f, 0x1e, 0x87, 0x18, 0x39, 0x0b, 0x50, 0xd9, 0xa1, 0x00, 0x94, 0x29, 0x3f, 0x3a, 0x05, + 0xb1, 0x8e, 0xa1, 0x3b, 0x34, 0x93, 0x4d, 0x66, 0x8e, 0x86, 0xe4, 0xd6, 0x0d, 0xdd, 0x71, 0x99, + 0x09, 0x13, 0xba, 0x00, 0x31, 0xba, 0x27, 0x5d, 0x07, 0x1f, 0x1e, 0x0e, 0x2c, 0x99, 0xca, 0x48, + 0x9f, 0x04, 0x32, 0x9d, 0x17, 0xcd, 0xbd, 0x32, 0x08, 0x5a, 0x87, 0x98, 0xa3, 0x36, 0x3c, 0x1c, + 0xcf, 0x0e, 0x9f, 0xf9, 0x96, 0x6a, 0x6a, 0xc3, 0x85, 0x72, 0x79, 0x62, 0xfb, 0xa3, 0xdf, 0x47, + 0x47, 0x5e, 0xfe, 0xb5, 0x20, 0x8e, 0x45, 0x64, 0xaa, 0x0e, 0x2d, 0xc0, 0x74, 0xbd, 0x69, 0x76, + 0x34, 0xc5, 0xc2, 0xb6, 0xd9, 0xb1, 0xea, 0xdc, 0xc9, 0x64, 0x8a, 0x12, 0x64, 0x36, 0x5f, 0xd0, + 0x66, 0xcf, 0xc3, 0xb8, 0xaf, 0x6b, 0x4f, 0xcb, 0xf2, 0xb6, 0x00, 0x93, 0x5d, 0xc3, 0xa8, 0x8b, + 0xff, 0x73, 0xc9, 0xbc, 0x02, 0x93, 0x55, 0x9a, 0xa8, 0xfa, 0xae, 0x42, 0x4f, 0xb8, 0xc4, 0x9e, + 0x70, 0x49, 0xaf, 0x08, 0x00, 0xae, 0x4a, 0xaa, 0x6e, 0x79, 0x87, 0xc7, 0xbb, 0x9a, 0x19, 0x34, + 0x84, 0xf3, 0xf6, 0x02, 0x8c, 0xb8, 0xd9, 0x94, 0x39, 0x2a, 0xf5, 0xd7, 0x40, 0x9d, 0x64, 0x12, + 0xd2, 0x9f, 0x7b, 0x95, 0x04, 0xdf, 0xd9, 0xcf, 0xc3, 0x61, 0xbe, 0x04, 0x7c, 0x86, 0xb5, 0x41, + 0x56, 0x60, 0x8e, 0xda, 0x5d, 0x86, 0x29, 0x56, 0x19, 0x7c, 0xc5, 0x03, 0xc2, 0x25, 0x04, 0xc1, + 0xa4, 0xed, 0x8f, 0x69, 0xe0, 0xfc, 0x44, 0x80, 0x99, 0x1d, 0xce, 0x50, 0x47, 0x2a, 0x90, 0xe0, + 0x1d, 0x19, 0x06, 0xee, 0xa0, 0x06, 0x56, 0x4b, 0xbb, 0x1a, 0x73, 0xc0, 0x4a, 0x98, 0xc2, 0x19, + 0x3e, 0x00, 0x79, 0xb7, 0xe8, 0xd8, 0xfe, 0x7f, 0xe9, 0xcd, 0x90, 0xc1, 0x7e, 0xe9, 0x26, 0x45, + 0xd5, 0x70, 0x09, 0x8a, 0x5f, 0x94, 0xc7, 0xd9, 0x4c, 0x41, 0x43, 0x18, 0x66, 0x38, 0x7f, 0xec, + 0x30, 0x80, 0xa7, 0x87, 0xa9, 0x81, 0xc1, 0x05, 0x3a, 0xd4, 0xf5, 0xaf, 0x7b, 0x60, 0xf8, 0x9a, + 0x00, 0xd3, 0x3b, 0xca, 0xe6, 0x20, 0xdb, 0xae, 0xc2, 0x74, 0xc0, 0x36, 0xce, 0xae, 0xc5, 0xa1, + 0xed, 0xa2, 0x36, 0x4d, 0x71, 0x36, 0x51, 0xbc, 0x5e, 0x17, 0x60, 0x8a, 0x9c, 0x98, 0xd8, 0xc1, + 0xbb, 0x60, 0x5c, 0x33, 0xa9, 0x35, 0xa4, 0x77, 0xaa, 0x9b, 0x1d, 0xc3, 0xa1, 0xd6, 0x1c, 0x94, + 0xc7, 0xc9, 0x4c, 0x8e, 0x4c, 0xa0, 0x53, 0x30, 0xad, 0x6e, 0xaa, 0x7a, 0x53, 0xdd, 0xd0, 0x9b, + 0xba, 0xb3, 0xa5, 0x7c, 0xc9, 0x34, 0x30, 0x3b, 0xc7, 0x24, 0x78, 0xc2, 0x73, 0xa6, 0x81, 0xd1, + 0x39, 0x18, 0x77, 0xfb, 0x30, 0xe3, 0x9a, 0x49, 0x8b, 0xf4, 0x44, 0x26, 0x19, 0x32, 0x99, 0x34, + 0x19, 0xee, 0xa1, 0x78, 0x8c, 0xf6, 0x68, 0xc6, 0x35, 0x53, 0xaa, 0x03, 0x62, 0x0e, 0xf0, 0x86, + 0x5d, 0x86, 0x03, 0x3c, 0x0e, 0xac, 0x6e, 0xee, 0x25, 0x68, 0x26, 0x38, 0xff, 0xa5, 0x0d, 0x98, + 0x76, 0x77, 0xd1, 0x7f, 0xf1, 0x19, 0xbf, 0x13, 0xe0, 0x00, 0xf1, 0x8d, 0xa4, 0x08, 0x82, 0x33, + 0x3a, 0x0b, 0x31, 0x8a, 0x85, 0x1b, 0x2b, 0x73, 0xbb, 0x6e, 0x6f, 0xd2, 0xe7, 0xd2, 0xe2, 0x47, + 0xb8, 0x49, 0x42, 0x72, 0x5b, 0x90, 0x41, 0x61, 0xd1, 0xad, 0xca, 0x32, 0x93, 0x40, 0x59, 0x18, + 0xb5, 0x5d, 0x07, 0x59, 0xd7, 0xf3, 0x48, 0xbf, 0x87, 0x72, 0x58, 0xc8, 0x9e, 0x9c, 0xf4, 0x33, + 0x11, 0x92, 0x81, 0xf6, 0x92, 0x47, 0xec, 0x30, 0xc4, 0xc9, 0x12, 0xda, 0x6c, 0xa7, 0xb8, 0x03, + 0x54, 0x86, 0x87, 0x4c, 0xe7, 0x3a, 0xb6, 0x94, 0xba, 0x69, 0x18, 0xb8, 0xee, 0x60, 0x4d, 0x09, + 0x35, 0x99, 0x8a, 0x2b, 0x25, 0x52, 0xa9, 0x39, 0xca, 0x9c, 0xf3, 0x78, 0x83, 0x0f, 0xa3, 0x0a, + 0xaf, 0xc0, 0xa1, 0xa6, 0x6e, 0xdc, 0x50, 0x6c, 0x47, 0x75, 0x3a, 0xb6, 0xd2, 0x75, 0x29, 0xda, + 0xcf, 0xa5, 0xa2, 0x6e, 0xdc, 0x20, 0x56, 0x7a, 0x8d, 0xe5, 0x34, 0xd1, 0x51, 0xa5, 0x2a, 0xd8, + 0x14, 0x51, 0x4c, 0x8e, 0x70, 0x61, 0xc5, 0xb1, 0xfe, 0x8a, 0x49, 0x47, 0x16, 0x50, 0x4c, 0x74, + 0x04, 0x14, 0x4b, 0xdf, 0x23, 0xb9, 0x88, 0x5b, 0xfb, 0x6e, 0x27, 0xfd, 0xb9, 0xc0, 0x26, 0x38, + 0xd9, 0x6f, 0x3d, 0x7c, 0x21, 0x6e, 0x37, 0x5c, 0xec, 0xae, 0xa8, 0x5b, 0x9f, 0x1e, 0x1b, 0x4a, + 0x43, 0xcf, 0xa5, 0x3d, 0x0d, 0xc7, 0x82, 0x3d, 0xf8, 0xc0, 0xa5, 0x25, 0x7d, 0xe3, 0x11, 0xcf, + 0xaf, 0xa0, 0x2c, 0x7a, 0x2a, 0xe0, 0xd8, 0xae, 0x51, 0x13, 0x94, 0xe2, 0x3c, 0xbb, 0x14, 0xf6, + 0xec, 0xf4, 0x70, 0x2a, 0x7a, 0xba, 0xf6, 0x3a, 0x67, 0x67, 0xcd, 0x52, 0x0d, 0x5b, 0x77, 0x56, + 0x55, 0x07, 0xdf, 0x54, 0xb7, 0x86, 0xb5, 0x33, 0x28, 0x75, 0x77, 0xe2, 0x51, 0xfa, 0xab, 0x00, + 0x53, 0x9e, 0x59, 0x2c, 0xc9, 0xa1, 0xf3, 0x01, 0x7b, 0xfe, 0x6f, 0x40, 0x52, 0xbf, 0x4b, 0x89, + 0x61, 0x25, 0x9c, 0x18, 0x16, 0x06, 0x3c, 0xb7, 0x27, 0xca, 0x7f, 0x12, 0x60, 0xd2, 0xdf, 0xe5, + 0x34, 0x9d, 0x92, 0x7e, 0x80, 0xf3, 0x66, 0x98, 0xc3, 0xd3, 0x67, 0x77, 0x26, 0x17, 0x76, 0xe6, + 0x64, 0xff, 0xc7, 0xf6, 0xf4, 0xe5, 0x2b, 0x02, 0x24, 0x3c, 0x5f, 0x0a, 0x86, 0xed, 0xa8, 0x46, + 0x1d, 0xa3, 0x27, 0x02, 0xde, 0x3c, 0xb8, 0x9b, 0x5a, 0x8f, 0xff, 0x2e, 0xed, 0x92, 0x57, 0xa3, + 0x6e, 0xe1, 0xd8, 0xfb, 0x31, 0x79, 0xac, 0xe7, 0x31, 0x19, 0xcd, 0xc1, 0x84, 0x86, 0xed, 0xba, + 0xa5, 0xd3, 0x3b, 0x55, 0x76, 0x98, 0xe6, 0xa7, 0xba, 0x57, 0xa3, 0x51, 0x37, 0xda, 0xdd, 0xab, + 0xd1, 0x02, 0x1c, 0x6c, 0x5b, 0xe6, 0xa6, 0xae, 0x61, 0x4b, 0xa1, 0x5d, 0x5e, 0x8c, 0x76, 0x6b, + 0xbb, 0xe2, 0x50, 0x61, 0xcc, 0x14, 0x87, 0x03, 0x6d, 0x6e, 0x84, 0x8e, 0xc1, 0x98, 0x79, 0xd3, + 0xc0, 0x16, 0xb1, 0x92, 0x36, 0xca, 0xf2, 0x28, 0x1d, 0x17, 0x34, 0x54, 0x66, 0x6d, 0xd7, 0x08, + 0x05, 0x6a, 0xa9, 0xdf, 0xdd, 0xd9, 0x70, 0x0d, 0xd7, 0x11, 0x18, 0x71, 0x13, 0x3a, 0xbd, 0x58, + 0x1d, 0x97, 0xd9, 0x68, 0xff, 0xcd, 0xd5, 0x2b, 0x71, 0x88, 0x91, 0xc7, 0xef, 0xb8, 0xd5, 0x79, + 0x9a, 0x6b, 0x38, 0xc4, 0xfe, 0x7b, 0x84, 0x37, 0x3f, 0xd0, 0x6e, 0xb8, 0x17, 0xd8, 0xb1, 0xc1, + 0xd2, 0x5e, 0x2d, 0x59, 0x8b, 0xb0, 0x8b, 0xee, 0xab, 0x30, 0xe5, 0xb8, 0x59, 0x4a, 0x69, 0xb8, + 0x69, 0x8a, 0x42, 0x3b, 0x00, 0xc3, 0x9d, 0x29, 0x71, 0x2d, 0x22, 0x4f, 0x3a, 0xc1, 0x24, 0x99, + 0x83, 0x51, 0x76, 0x06, 0xa5, 0xd7, 0xd9, 0x7d, 0x8a, 0x61, 0x28, 0x9d, 0xad, 0x45, 0x64, 0x4f, + 0x12, 0x3d, 0xed, 0xb7, 0x52, 0x03, 0x2e, 0xb8, 0x83, 0x39, 0x64, 0x2d, 0xe2, 0x35, 0x54, 0xa4, + 0x85, 0xd5, 0x59, 0x6c, 0xd1, 0xbd, 0x3d, 0x91, 0x99, 0x1f, 0xa4, 0xc3, 0x8b, 0xc5, 0xb5, 0x88, + 0xec, 0xcb, 0xa2, 0x2b, 0x3b, 0xaf, 0xb9, 0xc7, 0xa9, 0xba, 0xc5, 0x61, 0x00, 0xf7, 0xab, 0xe8, + 0x5a, 0x24, 0x7c, 0x2f, 0xfe, 0x5c, 0x8f, 0x8b, 0x68, 0x18, 0x6e, 0x0d, 0x82, 0x55, 0x8c, 0xac, + 0x41, 0xf0, 0xea, 0x7a, 0x79, 0x9a, 0x9d, 0x9f, 0xe9, 0x7d, 0x49, 0xec, 0xf6, 0xfb, 0x42, 0xf4, + 0x62, 0x6c, 0x2c, 0x9a, 0x88, 0x49, 0xbf, 0x15, 0x60, 0xcc, 0x3b, 0xdc, 0xf4, 0xcc, 0x0d, 0x67, + 0xd9, 0xa5, 0x8c, 0x48, 0xc3, 0x75, 0xae, 0xdf, 0x01, 0x89, 0xbb, 0x92, 0xb9, 0xe0, 0x87, 0x4d, + 0xb4, 0xff, 0x65, 0x4e, 0xd1, 0x3f, 0x47, 0x79, 0xa1, 0x85, 0x66, 0x60, 0xc4, 0xb6, 0xea, 0x24, + 0xb8, 0x63, 0x6e, 0xf0, 0xd8, 0x56, 0xbd, 0xa0, 0x91, 0x69, 0xcd, 0x76, 0xba, 0x31, 0x1f, 0xd7, + 0x6c, 0xa7, 0xa0, 0x49, 0x6f, 0x08, 0x30, 0x15, 0x3a, 0x9d, 0xf9, 0x36, 0x0b, 0xfb, 0xb4, 0x59, + 0xdc, 0xb3, 0xcd, 0x87, 0x21, 0xee, 0xb6, 0x39, 0x2c, 0xe7, 0xd1, 0x81, 0xf4, 0xa2, 0x00, 0x07, + 0xbc, 0x87, 0xd0, 0xe4, 0x3b, 0xe4, 0xa9, 0xdd, 0xf3, 0xe7, 0x2e, 0xe4, 0xff, 0x3a, 0x4c, 0x85, + 0x8e, 0x98, 0x9c, 0x9f, 0xc2, 0xfe, 0xfd, 0x14, 0x79, 0x3f, 0x7f, 0x2e, 0x40, 0x8c, 0x3c, 0x85, + 0x64, 0x66, 0xf6, 0xba, 0xec, 0x34, 0xdb, 0x44, 0xa3, 0xee, 0xfb, 0xb2, 0xd3, 0x1c, 0x29, 0xc3, + 0x92, 0x22, 0x23, 0x65, 0xd0, 0x05, 0x88, 0x93, 0xe3, 0xb4, 0xcd, 0x0e, 0xe1, 0x0f, 0x0e, 0x5a, + 0x2f, 0xea, 0xa0, 0x2b, 0xc2, 0x39, 0x13, 0xdb, 0xab, 0x33, 0x0b, 0xdf, 0x8e, 0x7a, 0xd7, 0x8f, + 0xb4, 0xac, 0x24, 0xe1, 0xf0, 0xe5, 0x7c, 0x4d, 0x2e, 0xe4, 0x94, 0xda, 0xd5, 0x4a, 0x5e, 0x29, + 0x94, 0x94, 0xe5, 0xab, 0xb5, 0x7c, 0x35, 0x11, 0x41, 0xc7, 0x60, 0x86, 0xa7, 0x94, 0xd7, 0x6b, + 0x8c, 0x24, 0xa0, 0xfb, 0xe1, 0xbe, 0x90, 0xd0, 0x8a, 0x5c, 0xae, 0x28, 0x95, 0x6c, 0xee, 0x52, + 0xbe, 0x56, 0x4d, 0x88, 0x68, 0x0e, 0x8e, 0x87, 0x65, 0x03, 0x1c, 0x51, 0xf4, 0x20, 0xcc, 0xf1, + 0x1c, 0x72, 0x3e, 0x9b, 0x5b, 0xcb, 0x2e, 0x17, 0x8a, 0x85, 0xda, 0x55, 0xa5, 0x92, 0x97, 0x73, + 0xf9, 0x52, 0x2d, 0x11, 0x0b, 0x3f, 0xa8, 0x98, 0xad, 0xe5, 0x4b, 0xb9, 0xab, 0x4a, 0x35, 0x9f, + 0x2b, 0x97, 0x56, 0xaa, 0x89, 0x38, 0x7a, 0x00, 0x4e, 0xf0, 0x0c, 0xb9, 0xca, 0xba, 0xb2, 0x5e, + 0xcd, 0xae, 0xe6, 0x7d, 0x1d, 0x23, 0xe1, 0x27, 0x5d, 0xce, 0x5f, 0x2e, 0xcb, 0x57, 0x43, 0x5c, + 0xa3, 0x48, 0x82, 0x14, 0xcf, 0xb5, 0x52, 0xa8, 0x5e, 0x0a, 0xf1, 0x8c, 0xa1, 0x47, 0x61, 0x3e, + 0xc0, 0x93, 0xad, 0x65, 0x95, 0x4a, 0x31, 0x5b, 0xca, 0x2b, 0xb9, 0x72, 0xa9, 0x94, 0xcf, 0xd5, + 0x0a, 0xe5, 0x92, 0x52, 0xad, 0x65, 0x6b, 0xeb, 0xd5, 0xc4, 0x38, 0x4a, 0xc3, 0xa9, 0x80, 0x69, + 0xe5, 0x52, 0x4d, 0x2e, 0x17, 0x77, 0x15, 0x80, 0x85, 0x7f, 0xb3, 0xac, 0x44, 0xd7, 0xe5, 0x30, + 0x24, 0x8a, 0x85, 0xd2, 0x25, 0x57, 0xb6, 0xb6, 0x5e, 0x2a, 0xe5, 0x8b, 0x89, 0x08, 0x9a, 0x81, + 0xe9, 0xee, 0x6c, 0x29, 0x5f, 0xbb, 0x52, 0x96, 0x2f, 0x25, 0x84, 0x20, 0x73, 0x75, 0x7d, 0xb9, + 0x94, 0xaf, 0x25, 0x44, 0x74, 0x04, 0x50, 0x77, 0xb6, 0x50, 0xaa, 0xd6, 0xb2, 0xa5, 0x5c, 0x3e, + 0x11, 0x45, 0x27, 0xe0, 0x18, 0xc7, 0x5d, 0xa8, 0x11, 0x4c, 0xaa, 0x6b, 0xca, 0xaa, 0x5c, 0x5e, + 0xaf, 0x24, 0x62, 0x28, 0x05, 0xb3, 0x5d, 0xf2, 0x4a, 0x4e, 0xc9, 0x15, 0xd7, 0xab, 0xb5, 0xbc, + 0xcc, 0xe8, 0x71, 0x94, 0x80, 0x03, 0x5d, 0x7a, 0xf1, 0x4c, 0x62, 0x04, 0xdd, 0x07, 0x47, 0xbb, + 0x33, 0x01, 0x3f, 0x13, 0xa3, 0xe8, 0x38, 0x24, 0xbb, 0xc4, 0xe5, 0xd5, 0x0a, 0xe7, 0x7a, 0x62, + 0x6c, 0xc1, 0x04, 0xe8, 0xee, 0x51, 0xff, 0xd1, 0x2e, 0x24, 0x4a, 0xa9, 0x5c, 0x53, 0xb2, 0x95, + 0x4a, 0xb1, 0x90, 0xcb, 0x2e, 0x17, 0xf3, 0x89, 0x08, 0x3a, 0x0a, 0x87, 0x78, 0xfa, 0x7a, 0xe9, + 0x52, 0xa9, 0x7c, 0xa5, 0x94, 0x10, 0x10, 0x82, 0xc9, 0x00, 0xa1, 0x92, 0x10, 0x7d, 0x50, 0xd8, + 0xdc, 0x0a, 0xe1, 0x8c, 0x66, 0x7e, 0x83, 0xe0, 0x60, 0x8e, 0x7e, 0x66, 0x40, 0x02, 0x2a, 0x5b, + 0x29, 0xa0, 0xaf, 0x8a, 0x70, 0x80, 0x7f, 0x33, 0x8e, 0x4e, 0xf5, 0xbd, 0x57, 0x08, 0xbe, 0x48, + 0x9d, 0xdd, 0xb5, 0x9c, 0x86, 0x5f, 0x71, 0x4a, 0x6f, 0x0b, 0xdb, 0x7f, 0x48, 0x6a, 0xd7, 0xce, + 0x3d, 0x5f, 0x5f, 0x24, 0x25, 0x70, 0xb1, 0xa5, 0x1a, 0x6a, 0x03, 0xb7, 0xb0, 0xe1, 0x2c, 0x6e, + 0xa8, 0xb6, 0x5e, 0x5f, 0x6c, 0x99, 0x86, 0xee, 0x98, 0xd6, 0xa3, 0x73, 0x3d, 0x79, 0x48, 0x21, + 0xd6, 0x54, 0x4b, 0xf3, 0xd9, 0x36, 0xb1, 0xbd, 0xa8, 0x9b, 0x8b, 0xba, 0x71, 0xcd, 0x52, 0x6d, + 0xc7, 0xea, 0xd4, 0x9d, 0x8e, 0x85, 0x17, 0x2d, 0xac, 0x6a, 0x2f, 0xfd, 0xe3, 0x93, 0x6f, 0x88, + 0x67, 0xa4, 0x25, 0xf6, 0x59, 0x45, 0x9a, 0x94, 0x34, 0xbb, 0xad, 0xd6, 0xb1, 0x9d, 0xb6, 0xb7, + 0x6c, 0x07, 0xb7, 0xba, 0x5f, 0x28, 0xd0, 0x4f, 0x19, 0x6e, 0x91, 0xdf, 0x17, 0x2e, 0x08, 0x0b, + 0xe8, 0x4d, 0x11, 0x66, 0x7a, 0xbe, 0x0a, 0x47, 0x67, 0x87, 0xea, 0x92, 0x43, 0xef, 0xa0, 0xf7, + 0x80, 0xce, 0xf7, 0xef, 0x2d, 0x3a, 0xe7, 0xd0, 0x99, 0x21, 0xd1, 0xe1, 0x8e, 0x3c, 0x36, 0x7a, + 0x57, 0x84, 0x44, 0xf8, 0x4b, 0x00, 0x94, 0x1e, 0x04, 0xcd, 0xfe, 0xf7, 0xcc, 0x2f, 0xee, 0x2d, + 0x2a, 0x05, 0x69, 0x65, 0xef, 0xa8, 0xb8, 0xdb, 0x87, 0x9b, 0xa0, 0x3b, 0xe9, 0x2d, 0x11, 0x8e, + 0xf4, 0xfe, 0x3e, 0x01, 0x9d, 0x1b, 0xee, 0x5a, 0x62, 0xff, 0x7b, 0xe9, 0x07, 0xf7, 0x16, 0xb5, + 0xc7, 0xd1, 0xd9, 0x21, 0x50, 0x0b, 0x9f, 0x72, 0x6d, 0xf4, 0x23, 0x11, 0xa6, 0x77, 0x7c, 0xa0, + 0x81, 0x1e, 0x1b, 0x88, 0xce, 0xfe, 0xb7, 0xd3, 0x2f, 0xef, 0x2d, 0x30, 0x97, 0xa4, 0x67, 0xf6, + 0x01, 0x4c, 0xfa, 0x56, 0x78, 0x86, 0x6e, 0xa8, 0x57, 0x45, 0x38, 0xb8, 0x8a, 0x9d, 0xee, 0x9d, + 0x31, 0x3a, 0x39, 0xf8, 0x5e, 0xd9, 0x83, 0x68, 0x61, 0x18, 0x56, 0x06, 0xd2, 0x3b, 0xf7, 0x16, + 0xa4, 0xf3, 0xe8, 0xdc, 0x10, 0x20, 0x71, 0xd7, 0xea, 0xe9, 0x5b, 0x84, 0xef, 0x05, 0xf4, 0x2d, + 0x11, 0xa6, 0x56, 0xb1, 0xc3, 0x7f, 0xb2, 0xd1, 0xbf, 0x74, 0x85, 0xbe, 0x01, 0x99, 0x7d, 0x74, + 0x38, 0x66, 0x06, 0xcb, 0xbb, 0xf7, 0x16, 0x96, 0x27, 0xd1, 0xf9, 0xa1, 0xcb, 0x17, 0xc5, 0x23, + 0x6d, 0x78, 0x20, 0xbc, 0x27, 0xc2, 0xcc, 0x2a, 0x76, 0x76, 0x7e, 0xa9, 0x81, 0x86, 0x7f, 0x11, + 0xe5, 0x83, 0x94, 0xd9, 0x8b, 0x08, 0x83, 0xea, 0xc7, 0xf7, 0x16, 0xaa, 0xa7, 0xd0, 0xff, 0x0f, + 0x01, 0x15, 0x83, 0x27, 0x7d, 0x4b, 0xd7, 0x5e, 0xe0, 0xb7, 0x93, 0x3d, 0x7b, 0xea, 0x83, 0xf7, + 0x85, 0xe8, 0xdf, 0xdf, 0x17, 0x4e, 0xec, 0xe2, 0x69, 0x79, 0xe3, 0x0b, 0xb8, 0xee, 0xbc, 0xf4, + 0xb7, 0xa4, 0x98, 0x14, 0x96, 0xbf, 0x2c, 0xdc, 0xfe, 0x38, 0x15, 0xf9, 0xf0, 0xe3, 0x54, 0xe4, + 0xd3, 0x8f, 0x53, 0xc2, 0x8b, 0xdb, 0x29, 0xe1, 0x87, 0xdb, 0x29, 0xe1, 0x8f, 0xdb, 0x29, 0xe1, + 0xf6, 0x76, 0x4a, 0xf8, 0x68, 0x3b, 0x25, 0xfc, 0x73, 0x3b, 0x15, 0xf9, 0x74, 0x3b, 0x25, 0x7c, + 0xfd, 0x4e, 0x2a, 0xf2, 0xc1, 0x9d, 0x94, 0x70, 0xfb, 0x4e, 0x2a, 0xf2, 0xe1, 0x9d, 0x54, 0xe4, + 0xb9, 0x62, 0xc3, 0x6c, 0xdf, 0x68, 0x2c, 0x6d, 0x9a, 0x4d, 0x07, 0x5b, 0x96, 0xba, 0xd4, 0xb1, + 0xd3, 0xf4, 0xcf, 0x35, 0xd3, 0x6a, 0x2d, 0x7a, 0x77, 0x5d, 0x8b, 0x1e, 0x39, 0xdd, 0xde, 0x68, + 0x98, 0x69, 0xfc, 0xbc, 0xe3, 0x7d, 0x74, 0x19, 0xfc, 0xb6, 0x72, 0x63, 0x84, 0x7e, 0xd7, 0x78, + 0xe6, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xd1, 0x3b, 0xfb, 0x3a, 0x53, 0x2a, 0x00, 0x00, +} + +func (x MetricType) String() string { + s, ok := MetricType_name[int32(x)] + if ok { + return s } - if len(this.Values) != len(that1.Values) { - return false + return strconv.Itoa(int(x)) +} +func (x LinkType) String() string { + s, ok := LinkType_name[int32(x)] + if ok { + return s } - for i := range this.Values { - if !this.Values[i].Equal(that1.Values[i]) { - return false - } + return strconv.Itoa(int(x)) +} +func (x LinkStatus) String() string { + s, ok := LinkStatus_name[int32(x)] + if ok { + return s } - return true + return strconv.Itoa(int(x)) } -func (this *MetricData) Equal(that interface{}) bool { +func (this *SiteTopologyRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*MetricData) + that1, ok := that.(*SiteTopologyRequest) if !ok { - that2, ok := that.(MetricData) + that2, ok := that.(SiteTopologyRequest) if ok { that1 = &that2 } else { @@ -3196,30 +3651,34 @@ func (this *MetricData) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Type != that1.Type { + if this.Site != that1.Site { return false } - if this.Unit != that1.Unit { + if this.NodeId != that1.NodeId { return false } - if len(this.Data) != len(that1.Data) { + if this.Level != that1.Level { return false } - for i := range this.Data { - if !this.Data[i].Equal(that1.Data[i]) { - return false - } + if this.GroupSiteMeshNodes != that1.GroupSiteMeshNodes { + return false + } + if this.GroupDcClusterNodes != that1.GroupDcClusterNodes { + return false + } + if !this.MetricSelector.Equal(that1.MetricSelector) { + return false } return true } -func (this *RouteTableMetaData) Equal(that interface{}) bool { +func (this *SiteMeshGroupsSummaryRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTableMetaData) + that1, ok := that.(*SiteMeshGroupsSummaryRequest) if !ok { - that2, ok := that.(RouteTableMetaData) + that2, ok := that.(SiteMeshGroupsSummaryRequest) if ok { that1 = &that2 } else { @@ -3231,30 +3690,16 @@ func (this *RouteTableMetaData) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { - return false - } - if len(this.Tags) != len(that1.Tags) { - return false - } - for i := range this.Tags { - if this.Tags[i] != that1.Tags[i] { - return false - } - } - if this.CloudResourceId != that1.CloudResourceId { - return false - } return true } -func (this *SiteSummaryInfo) Equal(that interface{}) bool { +func (this *SiteMeshTopologyRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SiteSummaryInfo) + that1, ok := that.(*SiteMeshTopologyRequest) if !ok { - that2, ok := that.(SiteSummaryInfo) + that2, ok := that.(SiteMeshTopologyRequest) if ok { that1 = &that2 } else { @@ -3266,27 +3711,22 @@ func (this *SiteSummaryInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if this.NodeCount != that1.NodeCount { + if this.SiteMeshGroup != that1.SiteMeshGroup { return false } - if len(this.AvailabilityZone) != len(that1.AvailabilityZone) { + if !this.MetricSelector.Equal(that1.MetricSelector) { return false } - for i := range this.AvailabilityZone { - if this.AvailabilityZone[i] != that1.AvailabilityZone[i] { - return false - } - } return true } -func (this *NetworkSummaryInfo) Equal(that interface{}) bool { +func (this *DCClusterGroupsSummaryRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NetworkSummaryInfo) + that1, ok := that.(*DCClusterGroupsSummaryRequest) if !ok { - that2, ok := that.(NetworkSummaryInfo) + that2, ok := that.(DCClusterGroupsSummaryRequest) if ok { that1 = &that2 } else { @@ -3298,24 +3738,16 @@ func (this *NetworkSummaryInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.RouteTables) != len(that1.RouteTables) { - return false - } - for i := range this.RouteTables { - if !this.RouteTables[i].Equal(that1.RouteTables[i]) { - return false - } - } return true } -func (this *SubnetSummaryInfo) Equal(that interface{}) bool { +func (this *DCClusterTopologyRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SubnetSummaryInfo) + that1, ok := that.(*DCClusterTopologyRequest) if !ok { - that2, ok := that.(SubnetSummaryInfo) + that2, ok := that.(DCClusterTopologyRequest) if ok { that1 = &that2 } else { @@ -3327,24 +3759,22 @@ func (this *SubnetSummaryInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.RouteTables) != len(that1.RouteTables) { + if this.DcClusterGroup != that1.DcClusterGroup { return false } - for i := range this.RouteTables { - if !this.RouteTables[i].Equal(that1.RouteTables[i]) { - return false - } + if !this.MetricSelector.Equal(that1.MetricSelector) { + return false } return true } -func (this *NodeTypeSite) Equal(that interface{}) bool { +func (this *TopologyResponse) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeSite) + that1, ok := that.(*TopologyResponse) if !ok { - that2, ok := that.(NodeTypeSite) + that2, ok := that.(TopologyResponse) if ok { that1 = &that2 } else { @@ -3356,30 +3786,35 @@ func (this *NodeTypeSite) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { + if len(this.Nodes) != len(that1.Nodes) { return false } - if len(this.Metric) != len(that1.Metric) { + for i := range this.Nodes { + if !this.Nodes[i].Equal(that1.Nodes[i]) { + return false + } + } + if len(this.Edges) != len(that1.Edges) { return false } - for i := range this.Metric { - if !this.Metric[i].Equal(that1.Metric[i]) { + for i := range this.Edges { + if !this.Edges[i].Equal(that1.Edges[i]) { return false } } - if !this.Summary.Equal(that1.Summary) { + if this.Step != that1.Step { return false } return true } -func (this *SiteMeshGroupSummaryInfo) Equal(that interface{}) bool { +func (this *RouteTableRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SiteMeshGroupSummaryInfo) + that1, ok := that.(*RouteTableRequest) if !ok { - that2, ok := that.(SiteMeshGroupSummaryInfo) + that2, ok := that.(RouteTableRequest) if ok { that1 = &that2 } else { @@ -3391,38 +3826,19 @@ func (this *SiteMeshGroupSummaryInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Sites != that1.Sites { - return false - } - if this.OtherConnectedSiteMeshGroupSites != that1.OtherConnectedSiteMeshGroupSites { - return false - } - if len(this.LinkStatusSummary) != len(that1.LinkStatusSummary) { - return false - } - for i := range this.LinkStatusSummary { - if !this.LinkStatusSummary[i].Equal(that1.LinkStatusSummary[i]) { - return false - } - } - if len(this.EdgeStatusSummary) != len(that1.EdgeStatusSummary) { + if this.Name != that1.Name { return false } - for i := range this.EdgeStatusSummary { - if !this.EdgeStatusSummary[i].Equal(that1.EdgeStatusSummary[i]) { - return false - } - } return true } -func (this *NodeTypeSiteMeshGroup) Equal(that interface{}) bool { +func (this *RouteTableResponse) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeSiteMeshGroup) + that1, ok := that.(*RouteTableResponse) if !ok { - that2, ok := that.(NodeTypeSiteMeshGroup) + that2, ok := that.(RouteTableResponse) if ok { that1 = &that2 } else { @@ -3434,22 +3850,22 @@ func (this *NodeTypeSiteMeshGroup) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { + if !this.Metadata.Equal(that1.Metadata) { return false } - if !this.Summary.Equal(that1.Summary) { + if !this.RouteTable.Equal(that1.RouteTable) { return false } return true } -func (this *DCClusterGroupSummaryInfo) Equal(that interface{}) bool { +func (this *SiteNetworksRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DCClusterGroupSummaryInfo) + that1, ok := that.(*SiteNetworksRequest) if !ok { - that2, ok := that.(DCClusterGroupSummaryInfo) + that2, ok := that.(SiteNetworksRequest) if ok { that1 = &that2 } else { @@ -3461,19 +3877,19 @@ func (this *DCClusterGroupSummaryInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Sites != that1.Sites { + if this.Name != that1.Name { return false } return true } -func (this *NodeTypeDCClusterGroup) Equal(that interface{}) bool { +func (this *SiteNetworksResponse) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeDCClusterGroup) + that1, ok := that.(*SiteNetworksResponse) if !ok { - that2, ok := that.(NodeTypeDCClusterGroup) + that2, ok := that.(SiteNetworksResponse) if ok { that1 = &that2 } else { @@ -3485,22 +3901,24 @@ func (this *NodeTypeDCClusterGroup) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { + if len(this.RoutesMetadata) != len(that1.RoutesMetadata) { return false } - if !this.Summary.Equal(that1.Summary) { - return false + for i := range this.RoutesMetadata { + if !this.RoutesMetadata[i].Equal(that1.RoutesMetadata[i]) { + return false + } } return true } -func (this *NodeTypeTransitGateway) Equal(that interface{}) bool { +func (this *NetworkRouteTablesRequest) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeTransitGateway) + that1, ok := that.(*NetworkRouteTablesRequest) if !ok { - that2, ok := that.(NodeTypeTransitGateway) + that2, ok := that.(NetworkRouteTablesRequest) if ok { that1 = &that2 } else { @@ -3512,27 +3930,51 @@ func (this *NodeTypeTransitGateway) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { + if this.Id != that1.Id { return false } - if len(this.Metric) != len(that1.Metric) { + if len(this.RouteTableIds) != len(that1.RouteTableIds) { return false } - for i := range this.Metric { - if !this.Metric[i].Equal(that1.Metric[i]) { + for i := range this.RouteTableIds { + if this.RouteTableIds[i] != that1.RouteTableIds[i] { + return false + } + } + if len(this.SubnetIds) != len(that1.SubnetIds) { + return false + } + for i := range this.SubnetIds { + if this.SubnetIds[i] != that1.SubnetIds[i] { + return false + } + } + if len(this.SubnetCidrs) != len(that1.SubnetCidrs) { + return false + } + for i := range this.SubnetCidrs { + if this.SubnetCidrs[i] != that1.SubnetCidrs[i] { + return false + } + } + if len(this.Regions) != len(that1.Regions) { + return false + } + for i := range this.Regions { + if this.Regions[i] != that1.Regions[i] { return false } } return true } -func (this *NodeTypeNetwork) Equal(that interface{}) bool { +func (this *NetworkRouteTablesResponse) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeNetwork) + that1, ok := that.(*NetworkRouteTablesResponse) if !ok { - that2, ok := that.(NodeTypeNetwork) + that2, ok := that.(NetworkRouteTablesResponse) if ok { that1 = &that2 } else { @@ -3544,30 +3986,24 @@ func (this *NodeTypeNetwork) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { - return false - } - if len(this.Metric) != len(that1.Metric) { + if len(this.RoutesData) != len(that1.RoutesData) { return false } - for i := range this.Metric { - if !this.Metric[i].Equal(that1.Metric[i]) { + for i := range this.RoutesData { + if !this.RoutesData[i].Equal(that1.RoutesData[i]) { return false } } - if !this.Summary.Equal(that1.Summary) { - return false - } return true } -func (this *NodeTypeSubnet) Equal(that interface{}) bool { +func (this *MetricSelector) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeSubnet) + that1, ok := that.(*MetricSelector) if !ok { - that2, ok := that.(NodeTypeSubnet) + that2, ok := that.(MetricSelector) if ok { that1 = &that2 } else { @@ -3579,30 +4015,41 @@ func (this *NodeTypeSubnet) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { + if this.StartTime != that1.StartTime { return false } - if len(this.Metric) != len(that1.Metric) { + if this.EndTime != that1.EndTime { return false } - for i := range this.Metric { - if !this.Metric[i].Equal(that1.Metric[i]) { + if len(this.Node) != len(that1.Node) { + return false + } + for i := range this.Node { + if this.Node[i] != that1.Node[i] { return false } } - if !this.Summary.Equal(that1.Summary) { + if len(this.Edge) != len(that1.Edge) { + return false + } + for i := range this.Edge { + if this.Edge[i] != that1.Edge[i] { + return false + } + } + if this.Step != that1.Step { return false } return true } -func (this *NodeTypeInstance) Equal(that interface{}) bool { +func (this *MetricTypeData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeTypeInstance) + that1, ok := that.(*MetricTypeData) if !ok { - that2, ok := that.(NodeTypeInstance) + that2, ok := that.(MetricTypeData) if ok { that1 = &that2 } else { @@ -3614,27 +4061,32 @@ func (this *NodeTypeInstance) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Info.Equal(that1.Info) { + if len(this.Labels) != len(that1.Labels) { return false } - if len(this.Metric) != len(that1.Metric) { + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + if len(this.Values) != len(that1.Values) { return false } - for i := range this.Metric { - if !this.Metric[i].Equal(that1.Metric[i]) { + for i := range this.Values { + if !this.Values[i].Equal(that1.Values[i]) { return false } } return true } -func (this *NodeMetaData) Equal(that interface{}) bool { +func (this *MetricData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*NodeMetaData) + that1, ok := that.(*MetricData) if !ok { - that2, ok := that.(NodeMetaData) + that2, ok := that.(MetricData) if ok { that1 = &that2 } else { @@ -3646,22 +4098,42 @@ func (this *NodeMetaData) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { + if this.Type != that1.Type { return false } - if this.CloudResourceId != that1.CloudResourceId { + if this.Unit != that1.Unit { return false } - if this.Description != that1.Description { + if len(this.Data) != len(that1.Data) { return false } - if this.Level != that1.Level { - return false + for i := range this.Data { + if !this.Data[i].Equal(that1.Data[i]) { + return false + } } - if this.ProviderType != that1.ProviderType { + return true +} +func (this *RouteTableMetaData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteTableMetaData) + if !ok { + that2, ok := that.(RouteTableMetaData) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { return false } - if this.OwnerId != that1.OwnerId { + if this.Name != that1.Name { return false } if len(this.Tags) != len(that1.Tags) { @@ -3672,19 +4144,19 @@ func (this *NodeMetaData) Equal(that interface{}) bool { return false } } - if this.Status != that1.Status { + if this.CloudResourceId != that1.CloudResourceId { return false } return true } -func (this *Node) Equal(that interface{}) bool { +func (this *RouteTableData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node) + that1, ok := that.(*RouteTableData) if !ok { - that2, ok := that.(Node) + that2, ok := that.(RouteTableData) if ok { that1 = &that2 } else { @@ -3696,31 +4168,49 @@ func (this *Node) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Id != that1.Id { + if !this.Metadata.Equal(that1.Metadata) { return false } - if !this.Metadata.Equal(that1.Metadata) { + if !this.RouteTable.Equal(that1.RouteTable) { return false } - if that1.NodeType == nil { - if this.NodeType != nil { + return true +} +func (this *SubnetMetaData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SubnetMetaData) + if !ok { + that2, ok := that.(SubnetMetaData) + if ok { + that1 = &that2 + } else { return false } - } else if this.NodeType == nil { + } + if that1 == nil { + return this == nil + } else if this == nil { return false - } else if !this.NodeType.Equal(that1.NodeType) { + } + if this.Name != that1.Name { + return false + } + if this.CloudResourceId != that1.CloudResourceId { return false } return true } -func (this *Node_Site) Equal(that interface{}) bool { +func (this *SubnetData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_Site) + that1, ok := that.(*SubnetData) if !ok { - that2, ok := that.(Node_Site) + that2, ok := that.(SubnetData) if ok { that1 = &that2 } else { @@ -3732,19 +4222,22 @@ func (this *Node_Site) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Site.Equal(that1.Site) { + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Subnet.Equal(that1.Subnet) { return false } return true } -func (this *Node_TransitGateway) Equal(that interface{}) bool { +func (this *NetworkRouteTableMetaData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_TransitGateway) + that1, ok := that.(*NetworkRouteTableMetaData) if !ok { - that2, ok := that.(Node_TransitGateway) + that2, ok := that.(NetworkRouteTableMetaData) if ok { that1 = &that2 } else { @@ -3756,19 +4249,27 @@ func (this *Node_TransitGateway) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.TransitGateway.Equal(that1.TransitGateway) { + if !this.RouteTableMetadata.Equal(that1.RouteTableMetadata) { + return false + } + if len(this.SubnetMetadata) != len(that1.SubnetMetadata) { return false } + for i := range this.SubnetMetadata { + if !this.SubnetMetadata[i].Equal(that1.SubnetMetadata[i]) { + return false + } + } return true } -func (this *Node_Network) Equal(that interface{}) bool { +func (this *NetworkRouteTableData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_Network) + that1, ok := that.(*NetworkRouteTableData) if !ok { - that2, ok := that.(Node_Network) + that2, ok := that.(NetworkRouteTableData) if ok { that1 = &that2 } else { @@ -3780,19 +4281,27 @@ func (this *Node_Network) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Network.Equal(that1.Network) { + if !this.RouteTableData.Equal(that1.RouteTableData) { return false } + if len(this.SubnetData) != len(that1.SubnetData) { + return false + } + for i := range this.SubnetData { + if !this.SubnetData[i].Equal(that1.SubnetData[i]) { + return false + } + } return true } -func (this *Node_Subnet) Equal(that interface{}) bool { +func (this *NetworkRoutesMetaData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_Subnet) + that1, ok := that.(*NetworkRoutesMetaData) if !ok { - that2, ok := that.(Node_Subnet) + that2, ok := that.(NetworkRoutesMetaData) if ok { that1 = &that2 } else { @@ -3804,19 +4313,27 @@ func (this *Node_Subnet) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Subnet.Equal(that1.Subnet) { + if this.NetworkId != that1.NetworkId { + return false + } + if len(this.RouteTablesMetadata) != len(that1.RouteTablesMetadata) { return false } + for i := range this.RouteTablesMetadata { + if !this.RouteTablesMetadata[i].Equal(that1.RouteTablesMetadata[i]) { + return false + } + } return true } -func (this *Node_Instance) Equal(that interface{}) bool { +func (this *NetworkRoutesData) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_Instance) + that1, ok := that.(*NetworkRoutesData) if !ok { - that2, ok := that.(Node_Instance) + that2, ok := that.(NetworkRoutesData) if ok { that1 = &that2 } else { @@ -3828,19 +4345,27 @@ func (this *Node_Instance) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Instance.Equal(that1.Instance) { + if this.NetworkId != that1.NetworkId { + return false + } + if len(this.RouteTablesData) != len(that1.RouteTablesData) { return false } + for i := range this.RouteTablesData { + if !this.RouteTablesData[i].Equal(that1.RouteTablesData[i]) { + return false + } + } return true } -func (this *Node_SiteMeshGroup) Equal(that interface{}) bool { +func (this *SiteSummaryInfo) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_SiteMeshGroup) + that1, ok := that.(*SiteSummaryInfo) if !ok { - that2, ok := that.(Node_SiteMeshGroup) + that2, ok := that.(SiteSummaryInfo) if ok { that1 = &that2 } else { @@ -3852,19 +4377,35 @@ func (this *Node_SiteMeshGroup) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SiteMeshGroup.Equal(that1.SiteMeshGroup) { + if this.NodeCount != that1.NodeCount { + return false + } + if len(this.AvailabilityZone) != len(that1.AvailabilityZone) { + return false + } + for i := range this.AvailabilityZone { + if this.AvailabilityZone[i] != that1.AvailabilityZone[i] { + return false + } + } + if len(this.NodeInfo) != len(that1.NodeInfo) { return false } + for i := range this.NodeInfo { + if !this.NodeInfo[i].Equal(that1.NodeInfo[i]) { + return false + } + } return true } -func (this *Node_DcClusterGroup) Equal(that interface{}) bool { +func (this *NetworkSummaryInfo) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Node_DcClusterGroup) + that1, ok := that.(*NetworkSummaryInfo) if !ok { - that2, ok := that.(Node_DcClusterGroup) + that2, ok := that.(NetworkSummaryInfo) if ok { that1 = &that2 } else { @@ -3876,19 +4417,24 @@ func (this *Node_DcClusterGroup) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DcClusterGroup.Equal(that1.DcClusterGroup) { + if len(this.RouteTables) != len(that1.RouteTables) { return false } + for i := range this.RouteTables { + if !this.RouteTables[i].Equal(that1.RouteTables[i]) { + return false + } + } return true } -func (this *LinkInfo) Equal(that interface{}) bool { +func (this *SubnetSummaryInfo) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LinkInfo) + that1, ok := that.(*SubnetSummaryInfo) if !ok { - that2, ok := that.(LinkInfo) + that2, ok := that.(SubnetSummaryInfo) if ok { that1 = &that2 } else { @@ -3900,31 +4446,59 @@ func (this *LinkInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { + if len(this.RouteTables) != len(that1.RouteTables) { return false } - if this.Type != that1.Type { + for i := range this.RouteTables { + if !this.RouteTables[i].Equal(that1.RouteTables[i]) { + return false + } + } + return true +} +func (this *NodeTypeSite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*NodeTypeSite) + if !ok { + that2, ok := that.(NodeTypeSite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { return false } - if this.Status != that1.Status { + if !this.Info.Equal(that1.Info) { return false } - if this.SrcId != that1.SrcId { + if len(this.Metric) != len(that1.Metric) { return false } - if this.DstId != that1.DstId { + for i := range this.Metric { + if !this.Metric[i].Equal(that1.Metric[i]) { + return false + } + } + if !this.Summary.Equal(that1.Summary) { return false } return true } -func (this *LinkInfoSummary) Equal(that interface{}) bool { +func (this *SiteMeshGroupSummaryInfo) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LinkInfoSummary) + that1, ok := that.(*SiteMeshGroupSummaryInfo) if !ok { - that2, ok := that.(LinkInfoSummary) + that2, ok := that.(SiteMeshGroupSummaryInfo) if ok { that1 = &that2 } else { @@ -3936,25 +4510,38 @@ func (this *LinkInfoSummary) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Type != that1.Type { + if this.Sites != that1.Sites { return false } - if this.Status != that1.Status { + if this.OtherConnectedSiteMeshGroupSites != that1.OtherConnectedSiteMeshGroupSites { return false } - if this.Count != that1.Count { + if len(this.LinkStatusSummary) != len(that1.LinkStatusSummary) { + return false + } + for i := range this.LinkStatusSummary { + if !this.LinkStatusSummary[i].Equal(that1.LinkStatusSummary[i]) { + return false + } + } + if len(this.EdgeStatusSummary) != len(that1.EdgeStatusSummary) { return false } + for i := range this.EdgeStatusSummary { + if !this.EdgeStatusSummary[i].Equal(that1.EdgeStatusSummary[i]) { + return false + } + } return true } -func (this *LinkTypeData) Equal(that interface{}) bool { +func (this *NodeTypeSiteMeshGroup) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LinkTypeData) + that1, ok := that.(*NodeTypeSiteMeshGroup) if !ok { - that2, ok := that.(LinkTypeData) + that2, ok := that.(NodeTypeSiteMeshGroup) if ok { that1 = &that2 } else { @@ -3969,24 +4556,43 @@ func (this *LinkTypeData) Equal(that interface{}) bool { if !this.Info.Equal(that1.Info) { return false } - if len(this.Metric) != len(that1.Metric) { + if !this.Summary.Equal(that1.Summary) { return false } - for i := range this.Metric { - if !this.Metric[i].Equal(that1.Metric[i]) { + return true +} +func (this *DCClusterGroupSummaryInfo) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DCClusterGroupSummaryInfo) + if !ok { + that2, ok := that.(DCClusterGroupSummaryInfo) + if ok { + that1 = &that2 + } else { return false } } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Sites != that1.Sites { + return false + } return true } -func (this *EdgeInfoSummary) Equal(that interface{}) bool { +func (this *NodeTypeDCClusterGroup) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EdgeInfoSummary) + that1, ok := that.(*NodeTypeDCClusterGroup) if !ok { - that2, ok := that.(EdgeInfoSummary) + that2, ok := that.(NodeTypeDCClusterGroup) if ok { that1 = &that2 } else { @@ -3998,22 +4604,22 @@ func (this *EdgeInfoSummary) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Status != that1.Status { + if !this.Info.Equal(that1.Info) { return false } - if this.Count != that1.Count { + if !this.Summary.Equal(that1.Summary) { return false } return true } -func (this *Edge) Equal(that interface{}) bool { +func (this *NodeTypeTransitGateway) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Edge) + that1, ok := that.(*NodeTypeTransitGateway) if !ok { - that2, ok := that.(Edge) + that2, ok := that.(NodeTypeTransitGateway) if ok { that1 = &that2 } else { @@ -4025,2108 +4631,1617 @@ func (this *Edge) Equal(that interface{}) bool { } else if this == nil { return false } - if this.NodeId1 != that1.NodeId1 { - return false - } - if this.NodeId2 != that1.NodeId2 { + if !this.Info.Equal(that1.Info) { return false } - if len(this.Links) != len(that1.Links) { + if len(this.Metric) != len(that1.Metric) { return false } - for i := range this.Links { - if !this.Links[i].Equal(that1.Links[i]) { + for i := range this.Metric { + if !this.Metric[i].Equal(that1.Metric[i]) { return false } } - if this.Status != that1.Status { - return false - } return true } -func (this *SiteTopologyRequest) GoString() string { - if this == nil { - return "nil" +func (this *NodeTypeNetwork) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 10) - s = append(s, "&topology.SiteTopologyRequest{") - s = append(s, "Site: "+fmt.Sprintf("%#v", this.Site)+",\n") - s = append(s, "NodeId: "+fmt.Sprintf("%#v", this.NodeId)+",\n") - s = append(s, "Level: "+fmt.Sprintf("%#v", this.Level)+",\n") - s = append(s, "GroupSiteMeshNodes: "+fmt.Sprintf("%#v", this.GroupSiteMeshNodes)+",\n") - s = append(s, "GroupDcClusterNodes: "+fmt.Sprintf("%#v", this.GroupDcClusterNodes)+",\n") - if this.MetricSelector != nil { - s = append(s, "MetricSelector: "+fmt.Sprintf("%#v", this.MetricSelector)+",\n") + + that1, ok := that.(*NodeTypeNetwork) + if !ok { + that2, ok := that.(NodeTypeNetwork) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *SiteMeshGroupsSummaryRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 4) - s = append(s, "&topology.SiteMeshGroupsSummaryRequest{") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *SiteMeshTopologyRequest) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 6) - s = append(s, "&topology.SiteMeshTopologyRequest{") - s = append(s, "SiteMeshGroup: "+fmt.Sprintf("%#v", this.SiteMeshGroup)+",\n") - if this.MetricSelector != nil { - s = append(s, "MetricSelector: "+fmt.Sprintf("%#v", this.MetricSelector)+",\n") + if !this.Info.Equal(that1.Info) { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *DCClusterGroupsSummaryRequest) GoString() string { - if this == nil { - return "nil" + if len(this.Metric) != len(that1.Metric) { + return false } - s := make([]string, 0, 4) - s = append(s, "&topology.DCClusterGroupsSummaryRequest{") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *DCClusterTopologyRequest) GoString() string { - if this == nil { - return "nil" + for i := range this.Metric { + if !this.Metric[i].Equal(that1.Metric[i]) { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&topology.DCClusterTopologyRequest{") - s = append(s, "DcClusterGroup: "+fmt.Sprintf("%#v", this.DcClusterGroup)+",\n") - if this.MetricSelector != nil { - s = append(s, "MetricSelector: "+fmt.Sprintf("%#v", this.MetricSelector)+",\n") + if !this.Summary.Equal(that1.Summary) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *TopologyResponse) GoString() string { - if this == nil { - return "nil" +func (this *NodeTypeSubnet) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 7) - s = append(s, "&topology.TopologyResponse{") - if this.Nodes != nil { - s = append(s, "Nodes: "+fmt.Sprintf("%#v", this.Nodes)+",\n") + + that1, ok := that.(*NodeTypeSubnet) + if !ok { + that2, ok := that.(NodeTypeSubnet) + if ok { + that1 = &that2 + } else { + return false + } } - if this.Edges != nil { - s = append(s, "Edges: "+fmt.Sprintf("%#v", this.Edges)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *RouteTableRequest) GoString() string { - if this == nil { - return "nil" + if !this.Info.Equal(that1.Info) { + return false } - s := make([]string, 0, 5) - s = append(s, "&topology.RouteTableRequest{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *RouteTableResponse) GoString() string { - if this == nil { - return "nil" + if len(this.Metric) != len(that1.Metric) { + return false } - s := make([]string, 0, 6) - s = append(s, "&topology.RouteTableResponse{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + for i := range this.Metric { + if !this.Metric[i].Equal(that1.Metric[i]) { + return false + } } - if this.RouteTable != nil { - s = append(s, "RouteTable: "+fmt.Sprintf("%#v", this.RouteTable)+",\n") + if !this.Summary.Equal(that1.Summary) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *MetricSelector) GoString() string { - if this == nil { - return "nil" +func (this *NodeTypeInstance) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 9) - s = append(s, "&topology.MetricSelector{") - s = append(s, "StartTime: "+fmt.Sprintf("%#v", this.StartTime)+",\n") - s = append(s, "EndTime: "+fmt.Sprintf("%#v", this.EndTime)+",\n") - s = append(s, "Node: "+fmt.Sprintf("%#v", this.Node)+",\n") - s = append(s, "Edge: "+fmt.Sprintf("%#v", this.Edge)+",\n") - s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *MetricTypeData) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*NodeTypeInstance) + if !ok { + that2, ok := that.(NodeTypeInstance) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&topology.MetricTypeData{") - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + if !this.Info.Equal(that1.Info) { + return false } - mapStringForLabels += "}" - if this.Labels != nil { - s = append(s, "Labels: "+mapStringForLabels+",\n") + if len(this.Metric) != len(that1.Metric) { + return false } - if this.Values != nil { - s = append(s, "Values: "+fmt.Sprintf("%#v", this.Values)+",\n") + for i := range this.Metric { + if !this.Metric[i].Equal(that1.Metric[i]) { + return false + } } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *MetricData) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&topology.MetricData{") - s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") - s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") - if this.Data != nil { - s = append(s, "Data: "+fmt.Sprintf("%#v", this.Data)+",\n") +func (this *NodeMetaData) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *RouteTableMetaData) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*NodeMetaData) + if !ok { + that2, ok := that.(NodeMetaData) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 7) - s = append(s, "&topology.RouteTableMetaData{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - keysForTags := make([]string, 0, len(this.Tags)) - for k, _ := range this.Tags { - keysForTags = append(keysForTags, k) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - github_com_gogo_protobuf_sortkeys.Strings(keysForTags) - mapStringForTags := "map[string]string{" - for _, k := range keysForTags { - mapStringForTags += fmt.Sprintf("%#v: %#v,", k, this.Tags[k]) + if this.Name != that1.Name { + return false } - mapStringForTags += "}" - if this.Tags != nil { - s = append(s, "Tags: "+mapStringForTags+",\n") + if this.CloudResourceId != that1.CloudResourceId { + return false } - s = append(s, "CloudResourceId: "+fmt.Sprintf("%#v", this.CloudResourceId)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *SiteSummaryInfo) GoString() string { - if this == nil { - return "nil" + if this.Description != that1.Description { + return false } - s := make([]string, 0, 6) - s = append(s, "&topology.SiteSummaryInfo{") - s = append(s, "NodeCount: "+fmt.Sprintf("%#v", this.NodeCount)+",\n") - s = append(s, "AvailabilityZone: "+fmt.Sprintf("%#v", this.AvailabilityZone)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *NetworkSummaryInfo) GoString() string { - if this == nil { - return "nil" + if this.Level != that1.Level { + return false } - s := make([]string, 0, 5) - s = append(s, "&topology.NetworkSummaryInfo{") - if this.RouteTables != nil { - s = append(s, "RouteTables: "+fmt.Sprintf("%#v", this.RouteTables)+",\n") + if this.ProviderType != that1.ProviderType { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *SubnetSummaryInfo) GoString() string { - if this == nil { - return "nil" + if this.OwnerId != that1.OwnerId { + return false } - s := make([]string, 0, 5) - s = append(s, "&topology.SubnetSummaryInfo{") - if this.RouteTables != nil { - s = append(s, "RouteTables: "+fmt.Sprintf("%#v", this.RouteTables)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *NodeTypeSite) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&topology.NodeTypeSite{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + if len(this.Tags) != len(that1.Tags) { + return false } - if this.Metric != nil { - s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + for i := range this.Tags { + if this.Tags[i] != that1.Tags[i] { + return false + } } - if this.Summary != nil { - s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + if this.Status != that1.Status { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *SiteMeshGroupSummaryInfo) GoString() string { - if this == nil { - return "nil" +func (this *Node) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 8) - s = append(s, "&topology.SiteMeshGroupSummaryInfo{") - s = append(s, "Sites: "+fmt.Sprintf("%#v", this.Sites)+",\n") - s = append(s, "OtherConnectedSiteMeshGroupSites: "+fmt.Sprintf("%#v", this.OtherConnectedSiteMeshGroupSites)+",\n") - if this.LinkStatusSummary != nil { - s = append(s, "LinkStatusSummary: "+fmt.Sprintf("%#v", this.LinkStatusSummary)+",\n") + + that1, ok := that.(*Node) + if !ok { + that2, ok := that.(Node) + if ok { + that1 = &that2 + } else { + return false + } } - if this.EdgeStatusSummary != nil { - s = append(s, "EdgeStatusSummary: "+fmt.Sprintf("%#v", this.EdgeStatusSummary)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *NodeTypeSiteMeshGroup) GoString() string { - if this == nil { - return "nil" + if this.Id != that1.Id { + return false } - s := make([]string, 0, 6) - s = append(s, "&topology.NodeTypeSiteMeshGroup{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + if !this.Metadata.Equal(that1.Metadata) { + return false } - if this.Summary != nil { - s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + if that1.NodeType == nil { + if this.NodeType != nil { + return false + } + } else if this.NodeType == nil { + return false + } else if !this.NodeType.Equal(that1.NodeType) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *DCClusterGroupSummaryInfo) GoString() string { - if this == nil { - return "nil" +func (this *Node_Site) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 5) - s = append(s, "&topology.DCClusterGroupSummaryInfo{") - s = append(s, "Sites: "+fmt.Sprintf("%#v", this.Sites)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *NodeTypeDCClusterGroup) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*Node_Site) + if !ok { + that2, ok := that.(Node_Site) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&topology.NodeTypeDCClusterGroup{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.Summary != nil { - s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + if !this.Site.Equal(that1.Site) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *NodeTypeTransitGateway) GoString() string { - if this == nil { - return "nil" +func (this *Node_TransitGateway) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&topology.NodeTypeTransitGateway{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + + that1, ok := that.(*Node_TransitGateway) + if !ok { + that2, ok := that.(Node_TransitGateway) + if ok { + that1 = &that2 + } else { + return false + } } - if this.Metric != nil { - s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") + if !this.TransitGateway.Equal(that1.TransitGateway) { + return false + } + return true } -func (this *NodeTypeNetwork) GoString() string { - if this == nil { - return "nil" +func (this *Node_Network) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 7) - s = append(s, "&topology.NodeTypeNetwork{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + + that1, ok := that.(*Node_Network) + if !ok { + that2, ok := that.(Node_Network) + if ok { + that1 = &that2 + } else { + return false + } } - if this.Metric != nil { - s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.Summary != nil { - s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + if !this.Network.Equal(that1.Network) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *NodeTypeSubnet) GoString() string { - if this == nil { - return "nil" +func (this *Node_Subnet) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 7) - s = append(s, "&topology.NodeTypeSubnet{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + + that1, ok := that.(*Node_Subnet) + if !ok { + that2, ok := that.(Node_Subnet) + if ok { + that1 = &that2 + } else { + return false + } } - if this.Metric != nil { - s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.Summary != nil { - s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + if !this.Subnet.Equal(that1.Subnet) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *NodeTypeInstance) GoString() string { - if this == nil { - return "nil" +func (this *Node_Instance) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&topology.NodeTypeInstance{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + + that1, ok := that.(*Node_Instance) + if !ok { + that2, ok := that.(Node_Instance) + if ok { + that1 = &that2 + } else { + return false + } } - if this.Metric != nil { - s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") + if !this.Instance.Equal(that1.Instance) { + return false + } + return true } -func (this *NodeMetaData) GoString() string { - if this == nil { - return "nil" +func (this *Node_SiteMeshGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 12) - s = append(s, "&topology.NodeMetaData{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "CloudResourceId: "+fmt.Sprintf("%#v", this.CloudResourceId)+",\n") - s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") - s = append(s, "Level: "+fmt.Sprintf("%#v", this.Level)+",\n") - s = append(s, "ProviderType: "+fmt.Sprintf("%#v", this.ProviderType)+",\n") - s = append(s, "OwnerId: "+fmt.Sprintf("%#v", this.OwnerId)+",\n") - keysForTags := make([]string, 0, len(this.Tags)) - for k, _ := range this.Tags { - keysForTags = append(keysForTags, k) + + that1, ok := that.(*Node_SiteMeshGroup) + if !ok { + that2, ok := that.(Node_SiteMeshGroup) + if ok { + that1 = &that2 + } else { + return false + } } - github_com_gogo_protobuf_sortkeys.Strings(keysForTags) - mapStringForTags := "map[string]string{" - for _, k := range keysForTags { - mapStringForTags += fmt.Sprintf("%#v: %#v,", k, this.Tags[k]) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - mapStringForTags += "}" - if this.Tags != nil { - s = append(s, "Tags: "+mapStringForTags+",\n") + if !this.SiteMeshGroup.Equal(that1.SiteMeshGroup) { + return false } - s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *Node) GoString() string { - if this == nil { - return "nil" +func (this *Node_DcClusterGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 13) - s = append(s, "&topology.Node{") - s = append(s, "Id: "+fmt.Sprintf("%#v", this.Id)+",\n") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + + that1, ok := that.(*Node_DcClusterGroup) + if !ok { + that2, ok := that.(Node_DcClusterGroup) + if ok { + that1 = &that2 + } else { + return false + } } - if this.NodeType != nil { - s = append(s, "NodeType: "+fmt.Sprintf("%#v", this.NodeType)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *Node_Site) GoString() string { - if this == nil { - return "nil" + if !this.DcClusterGroup.Equal(that1.DcClusterGroup) { + return false } - s := strings.Join([]string{`&topology.Node_Site{` + - `Site:` + fmt.Sprintf("%#v", this.Site) + `}`}, ", ") - return s + return true } -func (this *Node_TransitGateway) GoString() string { - if this == nil { - return "nil" +func (this *LinkInfo) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&topology.Node_TransitGateway{` + - `TransitGateway:` + fmt.Sprintf("%#v", this.TransitGateway) + `}`}, ", ") - return s -} -func (this *Node_Network) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*LinkInfo) + if !ok { + that2, ok := that.(LinkInfo) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&topology.Node_Network{` + - `Network:` + fmt.Sprintf("%#v", this.Network) + `}`}, ", ") - return s -} -func (this *Node_Subnet) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&topology.Node_Subnet{` + - `Subnet:` + fmt.Sprintf("%#v", this.Subnet) + `}`}, ", ") - return s -} -func (this *Node_Instance) GoString() string { - if this == nil { - return "nil" + if this.Name != that1.Name { + return false } - s := strings.Join([]string{`&topology.Node_Instance{` + - `Instance:` + fmt.Sprintf("%#v", this.Instance) + `}`}, ", ") - return s -} -func (this *Node_SiteMeshGroup) GoString() string { - if this == nil { - return "nil" + if this.Type != that1.Type { + return false } - s := strings.Join([]string{`&topology.Node_SiteMeshGroup{` + - `SiteMeshGroup:` + fmt.Sprintf("%#v", this.SiteMeshGroup) + `}`}, ", ") - return s -} -func (this *Node_DcClusterGroup) GoString() string { - if this == nil { - return "nil" + if this.Status != that1.Status { + return false } - s := strings.Join([]string{`&topology.Node_DcClusterGroup{` + - `DcClusterGroup:` + fmt.Sprintf("%#v", this.DcClusterGroup) + `}`}, ", ") - return s -} -func (this *LinkInfo) GoString() string { - if this == nil { - return "nil" + if this.SrcId != that1.SrcId { + return false } - s := make([]string, 0, 9) - s = append(s, "&topology.LinkInfo{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") - s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") - s = append(s, "SrcId: "+fmt.Sprintf("%#v", this.SrcId)+",\n") - s = append(s, "DstId: "+fmt.Sprintf("%#v", this.DstId)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *LinkInfoSummary) GoString() string { - if this == nil { - return "nil" + if this.DstId != that1.DstId { + return false } - s := make([]string, 0, 7) - s = append(s, "&topology.LinkInfoSummary{") - s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") - s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") - s = append(s, "Count: "+fmt.Sprintf("%#v", this.Count)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *LinkTypeData) GoString() string { - if this == nil { - return "nil" +func (this *LinkInfoSummary) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&topology.LinkTypeData{") - if this.Info != nil { - s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + + that1, ok := that.(*LinkInfoSummary) + if !ok { + that2, ok := that.(LinkInfoSummary) + if ok { + that1 = &that2 + } else { + return false + } } - if this.Metric != nil { - s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *EdgeInfoSummary) GoString() string { - if this == nil { - return "nil" + if this.Type != that1.Type { + return false } - s := make([]string, 0, 6) - s = append(s, "&topology.EdgeInfoSummary{") - s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") - s = append(s, "Count: "+fmt.Sprintf("%#v", this.Count)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *Edge) GoString() string { - if this == nil { - return "nil" + if this.Status != that1.Status { + return false } - s := make([]string, 0, 8) - s = append(s, "&topology.Edge{") - s = append(s, "NodeId1: "+fmt.Sprintf("%#v", this.NodeId1)+",\n") - s = append(s, "NodeId2: "+fmt.Sprintf("%#v", this.NodeId2)+",\n") - if this.Links != nil { - s = append(s, "Links: "+fmt.Sprintf("%#v", this.Links)+",\n") + if this.Count != that1.Count { + return false } - s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return true } -func valueToGoStringPublicCustomDataApi(v interface{}, typ string) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" +func (this *LinkTypeData) Equal(that interface{}) bool { + if that == nil { + return this == nil } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 -// CustomDataAPIClient is the client API for CustomDataAPI service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type CustomDataAPIClient interface { - // Site Topology - // - // x-displayName: "Site Topology" - // Get topology of a site and the resources associated/connected to the site such as other Customer sites, - // Regional Sites, VPCs (Virtual Private Cloud) networks, etc., and the associated metrics. - SiteTopology(ctx context.Context, in *SiteTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) - // Site Mesh Groups Summary - // - // x-displayName: "Site Mesh Groups Summary" - // Get summary of all site mesh groups. - SiteMeshGroupsSummary(ctx context.Context, in *SiteMeshGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) - // Site Mesh Topology - // - // x-displayName: "Site Mesh Topology" - // Get topology of a site mesh. - SiteMeshTopology(ctx context.Context, in *SiteMeshTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) - // DC Cluster Groups Summary - // - // x-displayName: "DC Cluster Groups Summary" - // Get summary of all DC Cluster groups. - DCClusterGroupsSummary(ctx context.Context, in *DCClusterGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) - // DC Cluster Topology - // - // x-displayName: "DC Cluster Topology" - // Get topology of a DC Cluster. - DCClusterTopology(ctx context.Context, in *DCClusterTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) - // Get Route Table - // - // x-displayName: "Get Route Table" - // Get Route Table - GetRouteTable(ctx context.Context, in *RouteTableRequest, opts ...grpc.CallOption) (*RouteTableResponse, error) -} - -type customDataAPIClient struct { - cc *grpc.ClientConn -} - -func NewCustomDataAPIClient(cc *grpc.ClientConn) CustomDataAPIClient { - return &customDataAPIClient{cc} -} - -func (c *customDataAPIClient) SiteTopology(ctx context.Context, in *SiteTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { - out := new(TopologyResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/SiteTopology", in, out, opts...) - if err != nil { - return nil, err + that1, ok := that.(*LinkTypeData) + if !ok { + that2, ok := that.(LinkTypeData) + if ok { + that1 = &that2 + } else { + return false + } } - return out, nil -} - -func (c *customDataAPIClient) SiteMeshGroupsSummary(ctx context.Context, in *SiteMeshGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { - out := new(TopologyResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/SiteMeshGroupsSummary", in, out, opts...) - if err != nil { - return nil, err + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return out, nil -} - -func (c *customDataAPIClient) SiteMeshTopology(ctx context.Context, in *SiteMeshTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { - out := new(TopologyResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/SiteMeshTopology", in, out, opts...) - if err != nil { - return nil, err + if !this.Info.Equal(that1.Info) { + return false } - return out, nil -} - -func (c *customDataAPIClient) DCClusterGroupsSummary(ctx context.Context, in *DCClusterGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { - out := new(TopologyResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/DCClusterGroupsSummary", in, out, opts...) - if err != nil { - return nil, err + if len(this.Metric) != len(that1.Metric) { + return false } - return out, nil -} - -func (c *customDataAPIClient) DCClusterTopology(ctx context.Context, in *DCClusterTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { - out := new(TopologyResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/DCClusterTopology", in, out, opts...) - if err != nil { - return nil, err + for i := range this.Metric { + if !this.Metric[i].Equal(that1.Metric[i]) { + return false + } } - return out, nil + return true } - -func (c *customDataAPIClient) GetRouteTable(ctx context.Context, in *RouteTableRequest, opts ...grpc.CallOption) (*RouteTableResponse, error) { - out := new(RouteTableResponse) - err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/GetRouteTable", in, out, opts...) - if err != nil { - return nil, err +func (this *EdgeInfoSummary) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return out, nil -} - -// CustomDataAPIServer is the server API for CustomDataAPI service. -type CustomDataAPIServer interface { - // Site Topology - // - // x-displayName: "Site Topology" - // Get topology of a site and the resources associated/connected to the site such as other Customer sites, - // Regional Sites, VPCs (Virtual Private Cloud) networks, etc., and the associated metrics. - SiteTopology(context.Context, *SiteTopologyRequest) (*TopologyResponse, error) - // Site Mesh Groups Summary - // - // x-displayName: "Site Mesh Groups Summary" - // Get summary of all site mesh groups. - SiteMeshGroupsSummary(context.Context, *SiteMeshGroupsSummaryRequest) (*TopologyResponse, error) - // Site Mesh Topology - // - // x-displayName: "Site Mesh Topology" - // Get topology of a site mesh. - SiteMeshTopology(context.Context, *SiteMeshTopologyRequest) (*TopologyResponse, error) - // DC Cluster Groups Summary - // - // x-displayName: "DC Cluster Groups Summary" - // Get summary of all DC Cluster groups. - DCClusterGroupsSummary(context.Context, *DCClusterGroupsSummaryRequest) (*TopologyResponse, error) - // DC Cluster Topology - // - // x-displayName: "DC Cluster Topology" - // Get topology of a DC Cluster. - DCClusterTopology(context.Context, *DCClusterTopologyRequest) (*TopologyResponse, error) - // Get Route Table - // - // x-displayName: "Get Route Table" - // Get Route Table - GetRouteTable(context.Context, *RouteTableRequest) (*RouteTableResponse, error) -} - -// UnimplementedCustomDataAPIServer can be embedded to have forward compatible implementations. -type UnimplementedCustomDataAPIServer struct { -} - -func (*UnimplementedCustomDataAPIServer) SiteTopology(ctx context.Context, req *SiteTopologyRequest) (*TopologyResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SiteTopology not implemented") -} -func (*UnimplementedCustomDataAPIServer) SiteMeshGroupsSummary(ctx context.Context, req *SiteMeshGroupsSummaryRequest) (*TopologyResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SiteMeshGroupsSummary not implemented") -} -func (*UnimplementedCustomDataAPIServer) SiteMeshTopology(ctx context.Context, req *SiteMeshTopologyRequest) (*TopologyResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method SiteMeshTopology not implemented") -} -func (*UnimplementedCustomDataAPIServer) DCClusterGroupsSummary(ctx context.Context, req *DCClusterGroupsSummaryRequest) (*TopologyResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DCClusterGroupsSummary not implemented") -} -func (*UnimplementedCustomDataAPIServer) DCClusterTopology(ctx context.Context, req *DCClusterTopologyRequest) (*TopologyResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DCClusterTopology not implemented") -} -func (*UnimplementedCustomDataAPIServer) GetRouteTable(ctx context.Context, req *RouteTableRequest) (*RouteTableResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetRouteTable not implemented") -} - -func RegisterCustomDataAPIServer(s *grpc.Server, srv CustomDataAPIServer) { - s.RegisterService(&_CustomDataAPI_serviceDesc, srv) -} -func _CustomDataAPI_SiteTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SiteTopologyRequest) - if err := dec(in); err != nil { - return nil, err + that1, ok := that.(*EdgeInfoSummary) + if !ok { + that2, ok := that.(EdgeInfoSummary) + if ok { + that1 = &that2 + } else { + return false + } } - if interceptor == nil { - return srv.(CustomDataAPIServer).SiteTopology(ctx, in) + if that1 == nil { + return this == nil + } else if this == nil { + return false } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.topology.CustomDataAPI/SiteTopology", + if this.Status != that1.Status { + return false } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomDataAPIServer).SiteTopology(ctx, req.(*SiteTopologyRequest)) + if this.Count != that1.Count { + return false } - return interceptor(ctx, in, info, handler) + return true } - -func _CustomDataAPI_SiteMeshGroupsSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SiteMeshGroupsSummaryRequest) - if err := dec(in); err != nil { - return nil, err +func (this *Edge) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if interceptor == nil { - return srv.(CustomDataAPIServer).SiteMeshGroupsSummary(ctx, in) + + that1, ok := that.(*Edge) + if !ok { + that2, ok := that.(Edge) + if ok { + that1 = &that2 + } else { + return false + } } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.topology.CustomDataAPI/SiteMeshGroupsSummary", + if that1 == nil { + return this == nil + } else if this == nil { + return false } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomDataAPIServer).SiteMeshGroupsSummary(ctx, req.(*SiteMeshGroupsSummaryRequest)) + if this.NodeId1 != that1.NodeId1 { + return false } - return interceptor(ctx, in, info, handler) -} - -func _CustomDataAPI_SiteMeshTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SiteMeshTopologyRequest) - if err := dec(in); err != nil { - return nil, err + if this.NodeId2 != that1.NodeId2 { + return false } - if interceptor == nil { - return srv.(CustomDataAPIServer).SiteMeshTopology(ctx, in) + if len(this.Links) != len(that1.Links) { + return false } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.topology.CustomDataAPI/SiteMeshTopology", + for i := range this.Links { + if !this.Links[i].Equal(that1.Links[i]) { + return false + } } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomDataAPIServer).SiteMeshTopology(ctx, req.(*SiteMeshTopologyRequest)) + if this.Status != that1.Status { + return false } - return interceptor(ctx, in, info, handler) + return true } - -func _CustomDataAPI_DCClusterGroupsSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DCClusterGroupsSummaryRequest) - if err := dec(in); err != nil { - return nil, err +func (this *SiteTopologyRequest) GoString() string { + if this == nil { + return "nil" } - if interceptor == nil { - return srv.(CustomDataAPIServer).DCClusterGroupsSummary(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.topology.CustomDataAPI/DCClusterGroupsSummary", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomDataAPIServer).DCClusterGroupsSummary(ctx, req.(*DCClusterGroupsSummaryRequest)) + s := make([]string, 0, 10) + s = append(s, "&topology.SiteTopologyRequest{") + s = append(s, "Site: "+fmt.Sprintf("%#v", this.Site)+",\n") + s = append(s, "NodeId: "+fmt.Sprintf("%#v", this.NodeId)+",\n") + s = append(s, "Level: "+fmt.Sprintf("%#v", this.Level)+",\n") + s = append(s, "GroupSiteMeshNodes: "+fmt.Sprintf("%#v", this.GroupSiteMeshNodes)+",\n") + s = append(s, "GroupDcClusterNodes: "+fmt.Sprintf("%#v", this.GroupDcClusterNodes)+",\n") + if this.MetricSelector != nil { + s = append(s, "MetricSelector: "+fmt.Sprintf("%#v", this.MetricSelector)+",\n") } - return interceptor(ctx, in, info, handler) + s = append(s, "}") + return strings.Join(s, "") } - -func _CustomDataAPI_DCClusterTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DCClusterTopologyRequest) - if err := dec(in); err != nil { - return nil, err +func (this *SiteMeshGroupsSummaryRequest) GoString() string { + if this == nil { + return "nil" } - if interceptor == nil { - return srv.(CustomDataAPIServer).DCClusterTopology(ctx, in) + s := make([]string, 0, 4) + s = append(s, "&topology.SiteMeshGroupsSummaryRequest{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SiteMeshTopologyRequest) GoString() string { + if this == nil { + return "nil" } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.topology.CustomDataAPI/DCClusterTopology", + s := make([]string, 0, 6) + s = append(s, "&topology.SiteMeshTopologyRequest{") + s = append(s, "SiteMeshGroup: "+fmt.Sprintf("%#v", this.SiteMeshGroup)+",\n") + if this.MetricSelector != nil { + s = append(s, "MetricSelector: "+fmt.Sprintf("%#v", this.MetricSelector)+",\n") } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomDataAPIServer).DCClusterTopology(ctx, req.(*DCClusterTopologyRequest)) + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DCClusterGroupsSummaryRequest) GoString() string { + if this == nil { + return "nil" } - return interceptor(ctx, in, info, handler) + s := make([]string, 0, 4) + s = append(s, "&topology.DCClusterGroupsSummaryRequest{") + s = append(s, "}") + return strings.Join(s, "") } - -func _CustomDataAPI_GetRouteTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RouteTableRequest) - if err := dec(in); err != nil { - return nil, err +func (this *DCClusterTopologyRequest) GoString() string { + if this == nil { + return "nil" } - if interceptor == nil { - return srv.(CustomDataAPIServer).GetRouteTable(ctx, in) + s := make([]string, 0, 6) + s = append(s, "&topology.DCClusterTopologyRequest{") + s = append(s, "DcClusterGroup: "+fmt.Sprintf("%#v", this.DcClusterGroup)+",\n") + if this.MetricSelector != nil { + s = append(s, "MetricSelector: "+fmt.Sprintf("%#v", this.MetricSelector)+",\n") } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/ves.io.schema.topology.CustomDataAPI/GetRouteTable", + s = append(s, "}") + return strings.Join(s, "") +} +func (this *TopologyResponse) GoString() string { + if this == nil { + return "nil" } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(CustomDataAPIServer).GetRouteTable(ctx, req.(*RouteTableRequest)) + s := make([]string, 0, 7) + s = append(s, "&topology.TopologyResponse{") + if this.Nodes != nil { + s = append(s, "Nodes: "+fmt.Sprintf("%#v", this.Nodes)+",\n") } - return interceptor(ctx, in, info, handler) -} - -var _CustomDataAPI_serviceDesc = grpc.ServiceDesc{ - ServiceName: "ves.io.schema.topology.CustomDataAPI", - HandlerType: (*CustomDataAPIServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "SiteTopology", - Handler: _CustomDataAPI_SiteTopology_Handler, - }, - { - MethodName: "SiteMeshGroupsSummary", - Handler: _CustomDataAPI_SiteMeshGroupsSummary_Handler, - }, - { - MethodName: "SiteMeshTopology", - Handler: _CustomDataAPI_SiteMeshTopology_Handler, - }, - { - MethodName: "DCClusterGroupsSummary", - Handler: _CustomDataAPI_DCClusterGroupsSummary_Handler, - }, - { - MethodName: "DCClusterTopology", - Handler: _CustomDataAPI_DCClusterTopology_Handler, - }, - { - MethodName: "GetRouteTable", - Handler: _CustomDataAPI_GetRouteTable_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "ves.io/schema/topology/public_custom_data_api.proto", -} - -func (m *SiteTopologyRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.Edges != nil { + s = append(s, "Edges: "+fmt.Sprintf("%#v", this.Edges)+",\n") } - return dAtA[:n], nil + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteTopologyRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTableRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&topology.RouteTableRequest{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteTopologyRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.MetricSelector != nil { - { - size, err := m.MetricSelector.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a +func (this *RouteTableResponse) GoString() string { + if this == nil { + return "nil" } - if m.GroupDcClusterNodes { - i-- - if m.GroupDcClusterNodes { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x30 + s := make([]string, 0, 6) + s = append(s, "&topology.RouteTableResponse{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if m.GroupSiteMeshNodes { - i-- - if m.GroupSiteMeshNodes { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x28 + if this.RouteTable != nil { + s = append(s, "RouteTable: "+fmt.Sprintf("%#v", this.RouteTable)+",\n") } - if m.Level != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Level)) - i-- - dAtA[i] = 0x20 + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SiteNetworksRequest) GoString() string { + if this == nil { + return "nil" } - if len(m.NodeId) > 0 { - i -= len(m.NodeId) - copy(dAtA[i:], m.NodeId) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NodeId))) - i-- - dAtA[i] = 0x1a + s := make([]string, 0, 5) + s = append(s, "&topology.SiteNetworksRequest{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SiteNetworksResponse) GoString() string { + if this == nil { + return "nil" } - if len(m.Site) > 0 { - i -= len(m.Site) - copy(dAtA[i:], m.Site) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Site))) - i-- - dAtA[i] = 0x12 + s := make([]string, 0, 5) + s = append(s, "&topology.SiteNetworksResponse{") + if this.RoutesMetadata != nil { + s = append(s, "RoutesMetadata: "+fmt.Sprintf("%#v", this.RoutesMetadata)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteMeshGroupsSummaryRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NetworkRouteTablesRequest) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 9) + s = append(s, "&topology.NetworkRouteTablesRequest{") + s = append(s, "Id: "+fmt.Sprintf("%#v", this.Id)+",\n") + s = append(s, "RouteTableIds: "+fmt.Sprintf("%#v", this.RouteTableIds)+",\n") + s = append(s, "SubnetIds: "+fmt.Sprintf("%#v", this.SubnetIds)+",\n") + s = append(s, "SubnetCidrs: "+fmt.Sprintf("%#v", this.SubnetCidrs)+",\n") + s = append(s, "Regions: "+fmt.Sprintf("%#v", this.Regions)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteMeshGroupsSummaryRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *NetworkRouteTablesResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&topology.NetworkRouteTablesResponse{") + if this.RoutesData != nil { + s = append(s, "RoutesData: "+fmt.Sprintf("%#v", this.RoutesData)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteMeshGroupsSummaryRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *SiteMeshTopologyRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *MetricSelector) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *SiteMeshTopologyRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := make([]string, 0, 9) + s = append(s, "&topology.MetricSelector{") + s = append(s, "StartTime: "+fmt.Sprintf("%#v", this.StartTime)+",\n") + s = append(s, "EndTime: "+fmt.Sprintf("%#v", this.EndTime)+",\n") + s = append(s, "Node: "+fmt.Sprintf("%#v", this.Node)+",\n") + s = append(s, "Edge: "+fmt.Sprintf("%#v", this.Edge)+",\n") + s = append(s, "Step: "+fmt.Sprintf("%#v", this.Step)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteMeshTopologyRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.MetricSelector != nil { - { - size, err := m.MetricSelector.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *MetricTypeData) GoString() string { + if this == nil { + return "nil" } - if len(m.SiteMeshGroup) > 0 { - i -= len(m.SiteMeshGroup) - copy(dAtA[i:], m.SiteMeshGroup) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.SiteMeshGroup))) - i-- - dAtA[i] = 0x12 + s := make([]string, 0, 6) + s = append(s, "&topology.MetricTypeData{") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) } - return len(dAtA) - i, nil + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + if this.Values != nil { + s = append(s, "Values: "+fmt.Sprintf("%#v", this.Values)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterGroupsSummaryRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *MetricData) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 7) + s = append(s, "&topology.MetricData{") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") + if this.Data != nil { + s = append(s, "Data: "+fmt.Sprintf("%#v", this.Data)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterGroupsSummaryRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTableMetaData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&topology.RouteTableMetaData{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + keysForTags := make([]string, 0, len(this.Tags)) + for k, _ := range this.Tags { + keysForTags = append(keysForTags, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + mapStringForTags := "map[string]string{" + for _, k := range keysForTags { + mapStringForTags += fmt.Sprintf("%#v: %#v,", k, this.Tags[k]) + } + mapStringForTags += "}" + if this.Tags != nil { + s = append(s, "Tags: "+mapStringForTags+",\n") + } + s = append(s, "CloudResourceId: "+fmt.Sprintf("%#v", this.CloudResourceId)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterGroupsSummaryRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil +func (this *RouteTableData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&topology.RouteTableData{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.RouteTable != nil { + s = append(s, "RouteTable: "+fmt.Sprintf("%#v", this.RouteTable)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterTopologyRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *SubnetMetaData) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 6) + s = append(s, "&topology.SubnetMetaData{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "CloudResourceId: "+fmt.Sprintf("%#v", this.CloudResourceId)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterTopologyRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *SubnetData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&topology.SubnetData{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Subnet != nil { + s = append(s, "Subnet: "+fmt.Sprintf("%#v", this.Subnet)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterTopologyRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.MetricSelector != nil { - { - size, err := m.MetricSelector.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *NetworkRouteTableMetaData) GoString() string { + if this == nil { + return "nil" } - if len(m.DcClusterGroup) > 0 { - i -= len(m.DcClusterGroup) - copy(dAtA[i:], m.DcClusterGroup) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.DcClusterGroup))) - i-- - dAtA[i] = 0x12 + s := make([]string, 0, 6) + s = append(s, "&topology.NetworkRouteTableMetaData{") + if this.RouteTableMetadata != nil { + s = append(s, "RouteTableMetadata: "+fmt.Sprintf("%#v", this.RouteTableMetadata)+",\n") } - return len(dAtA) - i, nil + if this.SubnetMetadata != nil { + s = append(s, "SubnetMetadata: "+fmt.Sprintf("%#v", this.SubnetMetadata)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *TopologyResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NetworkRouteTableData) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 6) + s = append(s, "&topology.NetworkRouteTableData{") + if this.RouteTableData != nil { + s = append(s, "RouteTableData: "+fmt.Sprintf("%#v", this.RouteTableData)+",\n") + } + if this.SubnetData != nil { + s = append(s, "SubnetData: "+fmt.Sprintf("%#v", this.SubnetData)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *TopologyResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *NetworkRoutesMetaData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&topology.NetworkRoutesMetaData{") + s = append(s, "NetworkId: "+fmt.Sprintf("%#v", this.NetworkId)+",\n") + if this.RouteTablesMetadata != nil { + s = append(s, "RouteTablesMetadata: "+fmt.Sprintf("%#v", this.RouteTablesMetadata)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *TopologyResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Step) > 0 { - i -= len(m.Step) - copy(dAtA[i:], m.Step) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Step))) - i-- - dAtA[i] = 0x1a +func (this *NetworkRoutesData) GoString() string { + if this == nil { + return "nil" } - if len(m.Edges) > 0 { - for iNdEx := len(m.Edges) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Edges[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + s := make([]string, 0, 6) + s = append(s, "&topology.NetworkRoutesData{") + s = append(s, "NetworkId: "+fmt.Sprintf("%#v", this.NetworkId)+",\n") + if this.RouteTablesData != nil { + s = append(s, "RouteTablesData: "+fmt.Sprintf("%#v", this.RouteTablesData)+",\n") } - if len(m.Nodes) > 0 { - for iNdEx := len(m.Nodes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Nodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *RouteTableRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *SiteSummaryInfo) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *RouteTableRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RouteTableRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa + s := make([]string, 0, 7) + s = append(s, "&topology.SiteSummaryInfo{") + s = append(s, "NodeCount: "+fmt.Sprintf("%#v", this.NodeCount)+",\n") + s = append(s, "AvailabilityZone: "+fmt.Sprintf("%#v", this.AvailabilityZone)+",\n") + if this.NodeInfo != nil { + s = append(s, "NodeInfo: "+fmt.Sprintf("%#v", this.NodeInfo)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *RouteTableResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NetworkSummaryInfo) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *RouteTableResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := make([]string, 0, 5) + s = append(s, "&topology.NetworkSummaryInfo{") + if this.RouteTables != nil { + s = append(s, "RouteTables: "+fmt.Sprintf("%#v", this.RouteTables)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *RouteTableResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.RouteTable != nil { - { - size, err := m.RouteTable.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *SubnetSummaryInfo) GoString() string { + if this == nil { + return "nil" } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + s := make([]string, 0, 5) + s = append(s, "&topology.SubnetSummaryInfo{") + if this.RouteTables != nil { + s = append(s, "RouteTables: "+fmt.Sprintf("%#v", this.RouteTables)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *MetricSelector) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NodeTypeSite) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *MetricSelector) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MetricSelector) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Step) > 0 { - i -= len(m.Step) - copy(dAtA[i:], m.Step) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Step))) - i-- - dAtA[i] = 0x2a + s := make([]string, 0, 7) + s = append(s, "&topology.NodeTypeSite{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") } - if len(m.Edge) > 0 { - dAtA7 := make([]byte, len(m.Edge)*10) - var j6 int - for _, num := range m.Edge { - for num >= 1<<7 { - dAtA7[j6] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j6++ - } - dAtA7[j6] = uint8(num) - j6++ - } - i -= j6 - copy(dAtA[i:], dAtA7[:j6]) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(j6)) - i-- - dAtA[i] = 0x22 + if this.Metric != nil { + s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") } - if len(m.Node) > 0 { - dAtA9 := make([]byte, len(m.Node)*10) - var j8 int - for _, num := range m.Node { - for num >= 1<<7 { - dAtA9[j8] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j8++ - } - dAtA9[j8] = uint8(num) - j8++ - } - i -= j8 - copy(dAtA[i:], dAtA9[:j8]) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(j8)) - i-- - dAtA[i] = 0x1a + if this.Summary != nil { + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") } - if len(m.EndTime) > 0 { - i -= len(m.EndTime) - copy(dAtA[i:], m.EndTime) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.EndTime))) - i-- - dAtA[i] = 0x12 + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SiteMeshGroupSummaryInfo) GoString() string { + if this == nil { + return "nil" } - if len(m.StartTime) > 0 { - i -= len(m.StartTime) - copy(dAtA[i:], m.StartTime) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.StartTime))) - i-- - dAtA[i] = 0xa + s := make([]string, 0, 8) + s = append(s, "&topology.SiteMeshGroupSummaryInfo{") + s = append(s, "Sites: "+fmt.Sprintf("%#v", this.Sites)+",\n") + s = append(s, "OtherConnectedSiteMeshGroupSites: "+fmt.Sprintf("%#v", this.OtherConnectedSiteMeshGroupSites)+",\n") + if this.LinkStatusSummary != nil { + s = append(s, "LinkStatusSummary: "+fmt.Sprintf("%#v", this.LinkStatusSummary)+",\n") } - return len(dAtA) - i, nil + if this.EdgeStatusSummary != nil { + s = append(s, "EdgeStatusSummary: "+fmt.Sprintf("%#v", this.EdgeStatusSummary)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *MetricTypeData) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NodeTypeSiteMeshGroup) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 6) + s = append(s, "&topology.NodeTypeSiteMeshGroup{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + } + if this.Summary != nil { + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *MetricTypeData) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *DCClusterGroupSummaryInfo) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&topology.DCClusterGroupSummaryInfo{") + s = append(s, "Sites: "+fmt.Sprintf("%#v", this.Sites)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *MetricTypeData) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Values) > 0 { - for iNdEx := len(m.Values) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Values[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } +func (this *NodeTypeDCClusterGroup) GoString() string { + if this == nil { + return "nil" } - if len(m.Labels) > 0 { - for k := range m.Labels { - v := m.Labels[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0xa - } + s := make([]string, 0, 6) + s = append(s, "&topology.NodeTypeDCClusterGroup{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") } - return len(dAtA) - i, nil -} - -func (m *MetricData) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.Summary != nil { + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") } - return dAtA[:n], nil -} - -func (m *MetricData) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s = append(s, "}") + return strings.Join(s, "") } - -func (m *MetricData) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Unit != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Unit)) - i-- - dAtA[i] = 0x18 +func (this *NodeTypeTransitGateway) GoString() string { + if this == nil { + return "nil" } - if len(m.Data) > 0 { - for iNdEx := len(m.Data) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Data[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + s := make([]string, 0, 6) + s = append(s, "&topology.NodeTypeTransitGateway{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") } - if m.Type != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Type)) - i-- - dAtA[i] = 0x8 + if this.Metric != nil { + s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *RouteTableMetaData) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NodeTypeNetwork) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *RouteTableMetaData) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RouteTableMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CloudResourceId) > 0 { - i -= len(m.CloudResourceId) - copy(dAtA[i:], m.CloudResourceId) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.CloudResourceId))) - i-- - dAtA[i] = 0x1a + s := make([]string, 0, 7) + s = append(s, "&topology.NodeTypeNetwork{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") } - if len(m.Tags) > 0 { - for k := range m.Tags { - v := m.Tags[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x12 - } + if this.Metric != nil { + s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa + if this.Summary != nil { + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteSummaryInfo) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NodeTypeSubnet) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *SiteSummaryInfo) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SiteSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.AvailabilityZone) > 0 { - for iNdEx := len(m.AvailabilityZone) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.AvailabilityZone[iNdEx]) - copy(dAtA[i:], m.AvailabilityZone[iNdEx]) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.AvailabilityZone[iNdEx]))) - i-- - dAtA[i] = 0x12 - } + s := make([]string, 0, 7) + s = append(s, "&topology.NodeTypeSubnet{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") } - if m.NodeCount != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.NodeCount)) - i-- - dAtA[i] = 0x8 + if this.Metric != nil { + s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") } - return len(dAtA) - i, nil -} - -func (m *NetworkSummaryInfo) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.Summary != nil { + s = append(s, "Summary: "+fmt.Sprintf("%#v", this.Summary)+",\n") } - return dAtA[:n], nil -} - -func (m *NetworkSummaryInfo) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s = append(s, "}") + return strings.Join(s, "") } - -func (m *NetworkSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.RouteTables) > 0 { - for iNdEx := len(m.RouteTables) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RouteTables[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } +func (this *NodeTypeInstance) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} - -func (m *SubnetSummaryInfo) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + s := make([]string, 0, 6) + s = append(s, "&topology.NodeTypeInstance{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") } - return dAtA[:n], nil -} - -func (m *SubnetSummaryInfo) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SubnetSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.RouteTables) > 0 { - for iNdEx := len(m.RouteTables) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RouteTables[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if this.Metric != nil { + s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *NodeTypeSite) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *NodeMetaData) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *NodeTypeSite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *NodeTypeSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Summary != nil { - { - size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + s := make([]string, 0, 12) + s = append(s, "&topology.NodeMetaData{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "CloudResourceId: "+fmt.Sprintf("%#v", this.CloudResourceId)+",\n") + s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") + s = append(s, "Level: "+fmt.Sprintf("%#v", this.Level)+",\n") + s = append(s, "ProviderType: "+fmt.Sprintf("%#v", this.ProviderType)+",\n") + s = append(s, "OwnerId: "+fmt.Sprintf("%#v", this.OwnerId)+",\n") + keysForTags := make([]string, 0, len(this.Tags)) + for k, _ := range this.Tags { + keysForTags = append(keysForTags, k) } - if len(m.Metric) > 0 { - for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + mapStringForTags := "map[string]string{" + for _, k := range keysForTags { + mapStringForTags += fmt.Sprintf("%#v: %#v,", k, this.Tags[k]) } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + mapStringForTags += "}" + if this.Tags != nil { + s = append(s, "Tags: "+mapStringForTags+",\n") } - return len(dAtA) - i, nil + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *SiteMeshGroupSummaryInfo) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *Node) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *SiteMeshGroupSummaryInfo) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SiteMeshGroupSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.EdgeStatusSummary) > 0 { - for iNdEx := len(m.EdgeStatusSummary) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.EdgeStatusSummary[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } + s := make([]string, 0, 13) + s = append(s, "&topology.Node{") + s = append(s, "Id: "+fmt.Sprintf("%#v", this.Id)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if len(m.LinkStatusSummary) > 0 { - for iNdEx := len(m.LinkStatusSummary) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.LinkStatusSummary[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } + if this.NodeType != nil { + s = append(s, "NodeType: "+fmt.Sprintf("%#v", this.NodeType)+",\n") } - if m.OtherConnectedSiteMeshGroupSites != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.OtherConnectedSiteMeshGroupSites)) - i-- - dAtA[i] = 0x10 + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Node_Site) GoString() string { + if this == nil { + return "nil" } - if m.Sites != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Sites)) - i-- - dAtA[i] = 0x8 + s := strings.Join([]string{`&topology.Node_Site{` + + `Site:` + fmt.Sprintf("%#v", this.Site) + `}`}, ", ") + return s +} +func (this *Node_TransitGateway) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&topology.Node_TransitGateway{` + + `TransitGateway:` + fmt.Sprintf("%#v", this.TransitGateway) + `}`}, ", ") + return s } - -func (m *NodeTypeSiteMeshGroup) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *Node_Network) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&topology.Node_Network{` + + `Network:` + fmt.Sprintf("%#v", this.Network) + `}`}, ", ") + return s } - -func (m *NodeTypeSiteMeshGroup) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *Node_Subnet) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&topology.Node_Subnet{` + + `Subnet:` + fmt.Sprintf("%#v", this.Subnet) + `}`}, ", ") + return s } - -func (m *NodeTypeSiteMeshGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Summary != nil { - { - size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *Node_Instance) GoString() string { + if this == nil { + return "nil" } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + s := strings.Join([]string{`&topology.Node_Instance{` + + `Instance:` + fmt.Sprintf("%#v", this.Instance) + `}`}, ", ") + return s +} +func (this *Node_SiteMeshGroup) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&topology.Node_SiteMeshGroup{` + + `SiteMeshGroup:` + fmt.Sprintf("%#v", this.SiteMeshGroup) + `}`}, ", ") + return s } - -func (m *DCClusterGroupSummaryInfo) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *Node_DcClusterGroup) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&topology.Node_DcClusterGroup{` + + `DcClusterGroup:` + fmt.Sprintf("%#v", this.DcClusterGroup) + `}`}, ", ") + return s } - -func (m *DCClusterGroupSummaryInfo) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *LinkInfo) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&topology.LinkInfo{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + s = append(s, "SrcId: "+fmt.Sprintf("%#v", this.SrcId)+",\n") + s = append(s, "DstId: "+fmt.Sprintf("%#v", this.DstId)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DCClusterGroupSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Sites != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Sites)) - i-- - dAtA[i] = 0x8 +func (this *LinkInfoSummary) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 7) + s = append(s, "&topology.LinkInfoSummary{") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + s = append(s, "Count: "+fmt.Sprintf("%#v", this.Count)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *NodeTypeDCClusterGroup) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *LinkTypeData) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 6) + s = append(s, "&topology.LinkTypeData{") + if this.Info != nil { + s = append(s, "Info: "+fmt.Sprintf("%#v", this.Info)+",\n") + } + if this.Metric != nil { + s = append(s, "Metric: "+fmt.Sprintf("%#v", this.Metric)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *NodeTypeDCClusterGroup) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *EdgeInfoSummary) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&topology.EdgeInfoSummary{") + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + s = append(s, "Count: "+fmt.Sprintf("%#v", this.Count)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *NodeTypeDCClusterGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Summary != nil { - { - size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *Edge) GoString() string { + if this == nil { + return "nil" } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + s := make([]string, 0, 8) + s = append(s, "&topology.Edge{") + s = append(s, "NodeId1: "+fmt.Sprintf("%#v", this.NodeId1)+",\n") + s = append(s, "NodeId2: "+fmt.Sprintf("%#v", this.NodeId2)+",\n") + if this.Links != nil { + s = append(s, "Links: "+fmt.Sprintf("%#v", this.Links)+",\n") } - return len(dAtA) - i, nil + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCustomDataApi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) } -func (m *NodeTypeTransitGateway) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CustomDataAPIClient is the client API for CustomDataAPI service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CustomDataAPIClient interface { + // Site Topology + // + // x-displayName: "Site Topology" + // Get topology of a site and the resources associated/connected to the site such as other Customer sites, + // Regional Sites, VPCs (Virtual Private Cloud) networks, etc., and the associated metrics. + SiteTopology(ctx context.Context, in *SiteTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) + // Site Mesh Groups Summary + // + // x-displayName: "Site Mesh Groups Summary" + // Get summary of all site mesh groups. + SiteMeshGroupsSummary(ctx context.Context, in *SiteMeshGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) + // Site Mesh Topology + // + // x-displayName: "Site Mesh Topology" + // Get topology of a site mesh. + SiteMeshTopology(ctx context.Context, in *SiteMeshTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) + // DC Cluster Groups Summary + // + // x-displayName: "DC Cluster Groups Summary" + // Get summary of all DC Cluster groups. + DCClusterGroupsSummary(ctx context.Context, in *DCClusterGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) + // DC Cluster Topology + // + // x-displayName: "DC Cluster Topology" + // Get topology of a DC Cluster. + DCClusterTopology(ctx context.Context, in *DCClusterTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) + // Get Route Table + // + // x-displayName: "Get Route Table" + // Get Route Table + GetRouteTable(ctx context.Context, in *RouteTableRequest, opts ...grpc.CallOption) (*RouteTableResponse, error) + // Get Site Networks + // + // x-displayName: "Get Site Networks" + // Gets Networks Associated to Site + GetSiteNetworks(ctx context.Context, in *SiteNetworksRequest, opts ...grpc.CallOption) (*SiteNetworksResponse, error) + // Get Network Route Tables + // + // x-displayName: "Get Network Route Tables" + // Gets Route Tables Associated with a Network + GetNetworkRouteTables(ctx context.Context, in *NetworkRouteTablesRequest, opts ...grpc.CallOption) (*NetworkRouteTablesResponse, error) +} + +type customDataAPIClient struct { + cc *grpc.ClientConn +} + +func NewCustomDataAPIClient(cc *grpc.ClientConn) CustomDataAPIClient { + return &customDataAPIClient{cc} +} + +func (c *customDataAPIClient) SiteTopology(ctx context.Context, in *SiteTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { + out := new(TopologyResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/SiteTopology", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *NodeTypeTransitGateway) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (c *customDataAPIClient) SiteMeshGroupsSummary(ctx context.Context, in *SiteMeshGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { + out := new(TopologyResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/SiteMeshGroupsSummary", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (m *NodeTypeTransitGateway) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Metric) > 0 { - for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa +func (c *customDataAPIClient) SiteMeshTopology(ctx context.Context, in *SiteMeshTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { + out := new(TopologyResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/SiteMeshTopology", in, out, opts...) + if err != nil { + return nil, err } - return len(dAtA) - i, nil + return out, nil } -func (m *NodeTypeNetwork) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +func (c *customDataAPIClient) DCClusterGroupsSummary(ctx context.Context, in *DCClusterGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { + out := new(TopologyResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/DCClusterGroupsSummary", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *NodeTypeNetwork) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (c *customDataAPIClient) DCClusterTopology(ctx context.Context, in *DCClusterTopologyRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { + out := new(TopologyResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/DCClusterTopology", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil } -func (m *NodeTypeNetwork) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Summary != nil { - { - size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if len(m.Metric) > 0 { - for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } +func (c *customDataAPIClient) GetRouteTable(ctx context.Context, in *RouteTableRequest, opts ...grpc.CallOption) (*RouteTableResponse, error) { + out := new(RouteTableResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/GetRouteTable", in, out, opts...) + if err != nil { + return nil, err } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + return out, nil +} + +func (c *customDataAPIClient) GetSiteNetworks(ctx context.Context, in *SiteNetworksRequest, opts ...grpc.CallOption) (*SiteNetworksResponse, error) { + out := new(SiteNetworksResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/GetSiteNetworks", in, out, opts...) + if err != nil { + return nil, err } - return len(dAtA) - i, nil + return out, nil } -func (m *NodeTypeSubnet) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) +func (c *customDataAPIClient) GetNetworkRouteTables(ctx context.Context, in *NetworkRouteTablesRequest, opts ...grpc.CallOption) (*NetworkRouteTablesResponse, error) { + out := new(NetworkRouteTablesResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.topology.CustomDataAPI/GetNetworkRouteTables", in, out, opts...) if err != nil { return nil, err } - return dAtA[:n], nil + return out, nil } -func (m *NodeTypeSubnet) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +// CustomDataAPIServer is the server API for CustomDataAPI service. +type CustomDataAPIServer interface { + // Site Topology + // + // x-displayName: "Site Topology" + // Get topology of a site and the resources associated/connected to the site such as other Customer sites, + // Regional Sites, VPCs (Virtual Private Cloud) networks, etc., and the associated metrics. + SiteTopology(context.Context, *SiteTopologyRequest) (*TopologyResponse, error) + // Site Mesh Groups Summary + // + // x-displayName: "Site Mesh Groups Summary" + // Get summary of all site mesh groups. + SiteMeshGroupsSummary(context.Context, *SiteMeshGroupsSummaryRequest) (*TopologyResponse, error) + // Site Mesh Topology + // + // x-displayName: "Site Mesh Topology" + // Get topology of a site mesh. + SiteMeshTopology(context.Context, *SiteMeshTopologyRequest) (*TopologyResponse, error) + // DC Cluster Groups Summary + // + // x-displayName: "DC Cluster Groups Summary" + // Get summary of all DC Cluster groups. + DCClusterGroupsSummary(context.Context, *DCClusterGroupsSummaryRequest) (*TopologyResponse, error) + // DC Cluster Topology + // + // x-displayName: "DC Cluster Topology" + // Get topology of a DC Cluster. + DCClusterTopology(context.Context, *DCClusterTopologyRequest) (*TopologyResponse, error) + // Get Route Table + // + // x-displayName: "Get Route Table" + // Get Route Table + GetRouteTable(context.Context, *RouteTableRequest) (*RouteTableResponse, error) + // Get Site Networks + // + // x-displayName: "Get Site Networks" + // Gets Networks Associated to Site + GetSiteNetworks(context.Context, *SiteNetworksRequest) (*SiteNetworksResponse, error) + // Get Network Route Tables + // + // x-displayName: "Get Network Route Tables" + // Gets Route Tables Associated with a Network + GetNetworkRouteTables(context.Context, *NetworkRouteTablesRequest) (*NetworkRouteTablesResponse, error) } -func (m *NodeTypeSubnet) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Summary != nil { - { - size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if len(m.Metric) > 0 { - for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +// UnimplementedCustomDataAPIServer can be embedded to have forward compatible implementations. +type UnimplementedCustomDataAPIServer struct { } -func (m *NodeTypeInstance) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil +func (*UnimplementedCustomDataAPIServer) SiteTopology(ctx context.Context, req *SiteTopologyRequest) (*TopologyResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SiteTopology not implemented") +} +func (*UnimplementedCustomDataAPIServer) SiteMeshGroupsSummary(ctx context.Context, req *SiteMeshGroupsSummaryRequest) (*TopologyResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SiteMeshGroupsSummary not implemented") +} +func (*UnimplementedCustomDataAPIServer) SiteMeshTopology(ctx context.Context, req *SiteMeshTopologyRequest) (*TopologyResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SiteMeshTopology not implemented") +} +func (*UnimplementedCustomDataAPIServer) DCClusterGroupsSummary(ctx context.Context, req *DCClusterGroupsSummaryRequest) (*TopologyResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DCClusterGroupsSummary not implemented") +} +func (*UnimplementedCustomDataAPIServer) DCClusterTopology(ctx context.Context, req *DCClusterTopologyRequest) (*TopologyResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DCClusterTopology not implemented") +} +func (*UnimplementedCustomDataAPIServer) GetRouteTable(ctx context.Context, req *RouteTableRequest) (*RouteTableResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetRouteTable not implemented") +} +func (*UnimplementedCustomDataAPIServer) GetSiteNetworks(ctx context.Context, req *SiteNetworksRequest) (*SiteNetworksResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetSiteNetworks not implemented") +} +func (*UnimplementedCustomDataAPIServer) GetNetworkRouteTables(ctx context.Context, req *NetworkRouteTablesRequest) (*NetworkRouteTablesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetNetworkRouteTables not implemented") } -func (m *NodeTypeInstance) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func RegisterCustomDataAPIServer(s *grpc.Server, srv CustomDataAPIServer) { + s.RegisterService(&_CustomDataAPI_serviceDesc, srv) } -func (m *NodeTypeInstance) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Metric) > 0 { - for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } +func _CustomDataAPI_SiteTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SiteTopologyRequest) + if err := dec(in); err != nil { + return nil, err } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if interceptor == nil { + return srv.(CustomDataAPIServer).SiteTopology(ctx, in) } - return len(dAtA) - i, nil + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/SiteTopology", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).SiteTopology(ctx, req.(*SiteTopologyRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *NodeMetaData) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { +func _CustomDataAPI_SiteMeshGroupsSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SiteMeshGroupsSummaryRequest) + if err := dec(in); err != nil { return nil, err } - return dAtA[:n], nil -} - -func (m *NodeMetaData) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if interceptor == nil { + return srv.(CustomDataAPIServer).SiteMeshGroupsSummary(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/SiteMeshGroupsSummary", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).SiteMeshGroupsSummary(ctx, req.(*SiteMeshGroupsSummaryRequest)) + } + return interceptor(ctx, in, info, handler) } -func (m *NodeMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CloudResourceId) > 0 { - i -= len(m.CloudResourceId) - copy(dAtA[i:], m.CloudResourceId) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.CloudResourceId))) - i-- - dAtA[i] = 0x42 +func _CustomDataAPI_SiteMeshTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SiteMeshTopologyRequest) + if err := dec(in); err != nil { + return nil, err } - if len(m.Status) > 0 { - i -= len(m.Status) - copy(dAtA[i:], m.Status) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Status))) - i-- - dAtA[i] = 0x3a + if interceptor == nil { + return srv.(CustomDataAPIServer).SiteMeshTopology(ctx, in) } - if len(m.Tags) > 0 { - for k := range m.Tags { - v := m.Tags[k] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(k) - copy(dAtA[i:], k) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(k))) - i-- - dAtA[i] = 0xa - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x32 - } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/SiteMeshTopology", } - if len(m.OwnerId) > 0 { - i -= len(m.OwnerId) - copy(dAtA[i:], m.OwnerId) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.OwnerId))) - i-- - dAtA[i] = 0x2a + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).SiteMeshTopology(ctx, req.(*SiteMeshTopologyRequest)) } - if m.ProviderType != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.ProviderType)) - i-- - dAtA[i] = 0x20 + return interceptor(ctx, in, info, handler) +} + +func _CustomDataAPI_DCClusterGroupsSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DCClusterGroupsSummaryRequest) + if err := dec(in); err != nil { + return nil, err } - if m.Level != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Level)) - i-- - dAtA[i] = 0x18 + if interceptor == nil { + return srv.(CustomDataAPIServer).DCClusterGroupsSummary(ctx, in) } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x12 + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/DCClusterGroupsSummary", } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).DCClusterGroupsSummary(ctx, req.(*DCClusterGroupsSummaryRequest)) } - return len(dAtA) - i, nil + return interceptor(ctx, in, info, handler) } -func (m *Node) Marshal() (dAtA []byte, err error) { +func _CustomDataAPI_DCClusterTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DCClusterTopologyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomDataAPIServer).DCClusterTopology(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/DCClusterTopology", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).DCClusterTopology(ctx, req.(*DCClusterTopologyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomDataAPI_GetRouteTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(RouteTableRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomDataAPIServer).GetRouteTable(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/GetRouteTable", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).GetRouteTable(ctx, req.(*RouteTableRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomDataAPI_GetSiteNetworks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SiteNetworksRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomDataAPIServer).GetSiteNetworks(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/GetSiteNetworks", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).GetSiteNetworks(ctx, req.(*SiteNetworksRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CustomDataAPI_GetNetworkRouteTables_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(NetworkRouteTablesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CustomDataAPIServer).GetNetworkRouteTables(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.topology.CustomDataAPI/GetNetworkRouteTables", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CustomDataAPIServer).GetNetworkRouteTables(ctx, req.(*NetworkRouteTablesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CustomDataAPI_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.topology.CustomDataAPI", + HandlerType: (*CustomDataAPIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "SiteTopology", + Handler: _CustomDataAPI_SiteTopology_Handler, + }, + { + MethodName: "SiteMeshGroupsSummary", + Handler: _CustomDataAPI_SiteMeshGroupsSummary_Handler, + }, + { + MethodName: "SiteMeshTopology", + Handler: _CustomDataAPI_SiteMeshTopology_Handler, + }, + { + MethodName: "DCClusterGroupsSummary", + Handler: _CustomDataAPI_DCClusterGroupsSummary_Handler, + }, + { + MethodName: "DCClusterTopology", + Handler: _CustomDataAPI_DCClusterTopology_Handler, + }, + { + MethodName: "GetRouteTable", + Handler: _CustomDataAPI_GetRouteTable_Handler, + }, + { + MethodName: "GetSiteNetworks", + Handler: _CustomDataAPI_GetSiteNetworks_Handler, + }, + { + MethodName: "GetNetworkRouteTables", + Handler: _CustomDataAPI_GetNetworkRouteTables_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/topology/public_custom_data_api.proto", +} + +func (m *SiteTopologyRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -6136,28 +6251,19 @@ func (m *Node) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *Node) MarshalTo(dAtA []byte) (int, error) { +func (m *SiteTopologyRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Node) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SiteTopologyRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.NodeType != nil { - { - size := m.NodeType.Size() - i -= size - if _, err := m.NodeType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.Metadata != nil { + if m.MetricSelector != nil { { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.MetricSelector.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -6165,133 +6271,96 @@ func (m *Node) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x3a } - if len(m.Id) > 0 { - i -= len(m.Id) - copy(dAtA[i:], m.Id) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Id))) + if m.GroupDcClusterNodes { i-- - dAtA[i] = 0xa + if m.GroupDcClusterNodes { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 + } + if m.GroupSiteMeshNodes { + i-- + if m.GroupSiteMeshNodes { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x28 + } + if m.Level != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Level)) + i-- + dAtA[i] = 0x20 + } + if len(m.NodeId) > 0 { + i -= len(m.NodeId) + copy(dAtA[i:], m.NodeId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NodeId))) + i-- + dAtA[i] = 0x1a + } + if len(m.Site) > 0 { + i -= len(m.Site) + copy(dAtA[i:], m.Site) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Site))) + i-- + dAtA[i] = 0x12 } return len(dAtA) - i, nil } -func (m *Node_Site) MarshalTo(dAtA []byte) (int, error) { +func (m *SiteMeshGroupsSummaryRequest) Marshal() (dAtA []byte, err error) { size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil } -func (m *Node_Site) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Site != nil { - { - size, err := m.Site.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } - return len(dAtA) - i, nil -} -func (m *Node_TransitGateway) MarshalTo(dAtA []byte) (int, error) { +func (m *SiteMeshGroupsSummaryRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Node_TransitGateway) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SiteMeshGroupsSummaryRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.TransitGateway != nil { - { - size, err := m.TransitGateway.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } + _ = i + var l int + _ = l return len(dAtA) - i, nil } -func (m *Node_Network) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} -func (m *Node_Network) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Network != nil { - { - size, err := m.Network.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } - return len(dAtA) - i, nil -} -func (m *Node_Subnet) MarshalTo(dAtA []byte) (int, error) { +func (m *SiteMeshTopologyRequest) Marshal() (dAtA []byte, err error) { size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *Node_Subnet) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Subnet != nil { - { - size, err := m.Subnet.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return len(dAtA) - i, nil -} -func (m *Node_Instance) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return dAtA[:n], nil } -func (m *Node_Instance) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Instance != nil { - { - size, err := m.Instance.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 - } - return len(dAtA) - i, nil -} -func (m *Node_SiteMeshGroup) MarshalTo(dAtA []byte) (int, error) { +func (m *SiteMeshTopologyRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Node_SiteMeshGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *SiteMeshTopologyRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SiteMeshGroup != nil { + _ = i + var l int + _ = l + if m.MetricSelector != nil { { - size, err := m.SiteMeshGroup.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.MetricSelector.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -6299,32 +6368,19 @@ func (m *Node_SiteMeshGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x4a + dAtA[i] = 0x1a } - return len(dAtA) - i, nil -} -func (m *Node_DcClusterGroup) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *Node_DcClusterGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DcClusterGroup != nil { - { - size, err := m.DcClusterGroup.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) - } + if len(m.SiteMeshGroup) > 0 { + i -= len(m.SiteMeshGroup) + copy(dAtA[i:], m.SiteMeshGroup) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.SiteMeshGroup))) i-- - dAtA[i] = 0x52 + dAtA[i] = 0x12 } return len(dAtA) - i, nil } -func (m *LinkInfo) Marshal() (dAtA []byte, err error) { + +func (m *DCClusterGroupsSummaryRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -6334,51 +6390,20 @@ func (m *LinkInfo) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *LinkInfo) MarshalTo(dAtA []byte) (int, error) { +func (m *DCClusterGroupsSummaryRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LinkInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *DCClusterGroupsSummaryRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.DstId) > 0 { - i -= len(m.DstId) - copy(dAtA[i:], m.DstId) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.DstId))) - i-- - dAtA[i] = 0x2a - } - if len(m.SrcId) > 0 { - i -= len(m.SrcId) - copy(dAtA[i:], m.SrcId) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.SrcId))) - i-- - dAtA[i] = 0x22 - } - if m.Status != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) - i-- - dAtA[i] = 0x18 - } - if m.Type != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Type)) - i-- - dAtA[i] = 0x10 - } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *LinkInfoSummary) Marshal() (dAtA []byte, err error) { +func (m *DCClusterTopologyRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -6388,35 +6413,39 @@ func (m *LinkInfoSummary) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *LinkInfoSummary) MarshalTo(dAtA []byte) (int, error) { +func (m *DCClusterTopologyRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LinkInfoSummary) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *DCClusterTopologyRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Count != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Count)) - i-- - dAtA[i] = 0x18 - } - if m.Status != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) + if m.MetricSelector != nil { + { + size, err := m.MetricSelector.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x1a } - if m.Type != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Type)) + if len(m.DcClusterGroup) > 0 { + i -= len(m.DcClusterGroup) + copy(dAtA[i:], m.DcClusterGroup) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.DcClusterGroup))) i-- - dAtA[i] = 0x8 + dAtA[i] = 0x12 } return len(dAtA) - i, nil } -func (m *LinkTypeData) Marshal() (dAtA []byte, err error) { +func (m *TopologyResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -6426,20 +6455,27 @@ func (m *LinkTypeData) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *LinkTypeData) MarshalTo(dAtA []byte) (int, error) { +func (m *TopologyResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LinkTypeData) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *TopologyResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Metric) > 0 { - for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x1a + } + if len(m.Edges) > 0 { + for iNdEx := len(m.Edges) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Edges[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -6450,22 +6486,24 @@ func (m *LinkTypeData) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x12 } } - if m.Info != nil { - { - size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.Nodes) > 0 { + for iNdEx := len(m.Nodes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Nodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *EdgeInfoSummary) Marshal() (dAtA []byte, err error) { +func (m *RouteTableRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -6475,30 +6513,27 @@ func (m *EdgeInfoSummary) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *EdgeInfoSummary) MarshalTo(dAtA []byte) (int, error) { +func (m *RouteTableRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *EdgeInfoSummary) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *RouteTableRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Count != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Count)) - i-- - dAtA[i] = 0x10 - } - if m.Status != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) i-- - dAtA[i] = 0x8 + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *Edge) Marshal() (dAtA []byte, err error) { +func (m *RouteTableResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -6508,1335 +6543,4834 @@ func (m *Edge) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *Edge) MarshalTo(dAtA []byte) (int, error) { +func (m *RouteTableResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Edge) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *RouteTableResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Status != 0 { - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) - i-- - dAtA[i] = 0x20 - } - if len(m.Links) > 0 { - for iNdEx := len(m.Links) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Links[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + if m.RouteTable != nil { + { + size, err := m.RouteTable.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0x1a + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } - } - if len(m.NodeId2) > 0 { - i -= len(m.NodeId2) - copy(dAtA[i:], m.NodeId2) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NodeId2))) i-- dAtA[i] = 0x12 } - if len(m.NodeId1) > 0 { - i -= len(m.NodeId1) - copy(dAtA[i:], m.NodeId1) - i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NodeId1))) + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func encodeVarintPublicCustomDataApi(dAtA []byte, offset int, v uint64) int { - offset -= sovPublicCustomDataApi(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ +func (m *SiteNetworksRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - dAtA[offset] = uint8(v) - return base + return dAtA[:n], nil } -func (m *SiteTopologyRequest) Size() (n int) { - if m == nil { - return 0 - } + +func (m *SiteNetworksRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SiteNetworksRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Site) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - l = len(m.NodeId) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.Level != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Level)) - } - if m.GroupSiteMeshNodes { - n += 2 - } - if m.GroupDcClusterNodes { - n += 2 - } - if m.MetricSelector != nil { - l = m.MetricSelector.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *SiteMeshGroupsSummaryRequest) Size() (n int) { - if m == nil { - return 0 +func (m *SiteNetworksResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - return n + return dAtA[:n], nil } -func (m *SiteMeshTopologyRequest) Size() (n int) { - if m == nil { - return 0 - } +func (m *SiteNetworksResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SiteNetworksResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.SiteMeshGroup) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.MetricSelector != nil { - l = m.MetricSelector.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.RoutesMetadata) > 0 { + for iNdEx := len(m.RoutesMetadata) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RoutesMetadata[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - return n + return len(dAtA) - i, nil } -func (m *DCClusterGroupsSummaryRequest) Size() (n int) { - if m == nil { - return 0 +func (m *NetworkRouteTablesRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - return n + return dAtA[:n], nil } -func (m *DCClusterTopologyRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.DcClusterGroup) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.MetricSelector != nil { - l = m.MetricSelector.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - return n +func (m *NetworkRouteTablesRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *TopologyResponse) Size() (n int) { - if m == nil { - return 0 - } +func (m *NetworkRouteTablesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if len(m.Nodes) > 0 { - for _, e := range m.Nodes { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Regions) > 0 { + for iNdEx := len(m.Regions) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Regions[iNdEx]) + copy(dAtA[i:], m.Regions[iNdEx]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Regions[iNdEx]))) + i-- + dAtA[i] = 0x2a } } - if len(m.Edges) > 0 { - for _, e := range m.Edges { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.SubnetCidrs) > 0 { + for iNdEx := len(m.SubnetCidrs) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.SubnetCidrs[iNdEx]) + copy(dAtA[i:], m.SubnetCidrs[iNdEx]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.SubnetCidrs[iNdEx]))) + i-- + dAtA[i] = 0x22 } } - l = len(m.Step) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.SubnetIds) > 0 { + for iNdEx := len(m.SubnetIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.SubnetIds[iNdEx]) + copy(dAtA[i:], m.SubnetIds[iNdEx]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.SubnetIds[iNdEx]))) + i-- + dAtA[i] = 0x1a + } } - return n -} - -func (m *RouteTableRequest) Size() (n int) { - if m == nil { - return 0 + if len(m.RouteTableIds) > 0 { + for iNdEx := len(m.RouteTableIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.RouteTableIds[iNdEx]) + copy(dAtA[i:], m.RouteTableIds[iNdEx]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.RouteTableIds[iNdEx]))) + i-- + dAtA[i] = 0x12 + } } - var l int - _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Id) > 0 { + i -= len(m.Id) + copy(dAtA[i:], m.Id) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Id))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *RouteTableResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.RouteTable != nil { - l = m.RouteTable.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) +func (m *NetworkRouteTablesResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *MetricSelector) Size() (n int) { - if m == nil { - return 0 - } +func (m *NetworkRouteTablesResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NetworkRouteTablesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.StartTime) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - l = len(m.EndTime) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if len(m.Node) > 0 { - l = 0 - for _, e := range m.Node { - l += sovPublicCustomDataApi(uint64(e)) - } - n += 1 + sovPublicCustomDataApi(uint64(l)) + l - } - if len(m.Edge) > 0 { - l = 0 - for _, e := range m.Edge { - l += sovPublicCustomDataApi(uint64(e)) + if len(m.RoutesData) > 0 { + for iNdEx := len(m.RoutesData) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RoutesData[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - n += 1 + sovPublicCustomDataApi(uint64(l)) + l - } - l = len(m.Step) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) } - return n + return len(dAtA) - i, nil } -func (m *MetricTypeData) Size() (n int) { - if m == nil { - return 0 +func (m *MetricSelector) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *MetricSelector) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MetricSelector) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if len(m.Labels) > 0 { - for k, v := range m.Labels { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCustomDataApi(uint64(len(k))) + 1 + len(v) + sovPublicCustomDataApi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCustomDataApi(uint64(mapEntrySize)) + if len(m.Step) > 0 { + i -= len(m.Step) + copy(dAtA[i:], m.Step) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Step))) + i-- + dAtA[i] = 0x2a + } + if len(m.Edge) > 0 { + dAtA7 := make([]byte, len(m.Edge)*10) + var j6 int + for _, num := range m.Edge { + for num >= 1<<7 { + dAtA7[j6] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j6++ + } + dAtA7[j6] = uint8(num) + j6++ } + i -= j6 + copy(dAtA[i:], dAtA7[:j6]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(j6)) + i-- + dAtA[i] = 0x22 } - if len(m.Values) > 0 { - for _, e := range m.Values { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Node) > 0 { + dAtA9 := make([]byte, len(m.Node)*10) + var j8 int + for _, num := range m.Node { + for num >= 1<<7 { + dAtA9[j8] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j8++ + } + dAtA9[j8] = uint8(num) + j8++ } + i -= j8 + copy(dAtA[i:], dAtA9[:j8]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(j8)) + i-- + dAtA[i] = 0x1a } - return n + if len(m.EndTime) > 0 { + i -= len(m.EndTime) + copy(dAtA[i:], m.EndTime) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.EndTime))) + i-- + dAtA[i] = 0x12 + } + if len(m.StartTime) > 0 { + i -= len(m.StartTime) + copy(dAtA[i:], m.StartTime) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.StartTime))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *MetricData) Size() (n int) { - if m == nil { - return 0 +func (m *MetricTypeData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *MetricTypeData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MetricTypeData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Type != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Type)) - } - if len(m.Data) > 0 { - for _, e := range m.Data { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Values) > 0 { + for iNdEx := len(m.Values) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Values[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - if m.Unit != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Unit)) + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } } - return n + return len(dAtA) - i, nil } -func (m *RouteTableMetaData) Size() (n int) { - if m == nil { - return 0 +func (m *MetricData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *MetricData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MetricData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Unit != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Unit)) + i-- + dAtA[i] = 0x18 } - if len(m.Tags) > 0 { - for k, v := range m.Tags { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCustomDataApi(uint64(len(k))) + 1 + len(v) + sovPublicCustomDataApi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCustomDataApi(uint64(mapEntrySize)) + if len(m.Data) > 0 { + for iNdEx := len(m.Data) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Data[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - l = len(m.CloudResourceId) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Type != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x8 } - return n + return len(dAtA) - i, nil } -func (m *SiteSummaryInfo) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NodeCount != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.NodeCount)) - } - if len(m.AvailabilityZone) > 0 { - for _, s := range m.AvailabilityZone { - l = len(s) - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } +func (m *RouteTableMetaData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *NetworkSummaryInfo) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.RouteTables) > 0 { - for _, e := range m.RouteTables { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - } - return n -} - -func (m *SubnetSummaryInfo) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.RouteTables) > 0 { - for _, e := range m.RouteTables { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - } - return n +func (m *RouteTableMetaData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *NodeTypeSite) Size() (n int) { - if m == nil { - return 0 - } +func (m *RouteTableMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.CloudResourceId) > 0 { + i -= len(m.CloudResourceId) + copy(dAtA[i:], m.CloudResourceId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.CloudResourceId))) + i-- + dAtA[i] = 0x1a } - if len(m.Metric) > 0 { - for _, e := range m.Metric { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Tags) > 0 { + for k := range m.Tags { + v := m.Tags[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x12 } } - if m.Summary != nil { - l = m.Summary.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *SiteMeshGroupSummaryInfo) Size() (n int) { - if m == nil { - return 0 +func (m *RouteTableData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *RouteTableData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTableData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Sites != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Sites)) - } - if m.OtherConnectedSiteMeshGroupSites != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.OtherConnectedSiteMeshGroupSites)) - } - if len(m.LinkStatusSummary) > 0 { - for _, e := range m.LinkStatusSummary { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.RouteTable != nil { + { + size, err := m.RouteTable.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if len(m.EdgeStatusSummary) > 0 { - for _, e := range m.EdgeStatusSummary { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *NodeTypeSiteMeshGroup) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.Summary != nil { - l = m.Summary.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) +func (m *SubnetMetaData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *DCClusterGroupSummaryInfo) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Sites != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Sites)) - } - return n +func (m *SubnetMetaData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *NodeTypeDCClusterGroup) Size() (n int) { - if m == nil { - return 0 - } +func (m *SubnetMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.CloudResourceId) > 0 { + i -= len(m.CloudResourceId) + copy(dAtA[i:], m.CloudResourceId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.CloudResourceId))) + i-- + dAtA[i] = 0x12 } - if m.Summary != nil { - l = m.Summary.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *NodeTypeTransitGateway) Size() (n int) { - if m == nil { - return 0 +func (m *SubnetData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *SubnetData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SubnetData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Subnet != nil { + { + size, err := m.Subnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - if len(m.Metric) > 0 { - for _, e := range m.Metric { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *NodeTypeNetwork) Size() (n int) { - if m == nil { - return 0 +func (m *NetworkRouteTableMetaData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *NetworkRouteTableMetaData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NetworkRouteTableMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if len(m.Metric) > 0 { - for _, e := range m.Metric { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.SubnetMetadata) > 0 { + for iNdEx := len(m.SubnetMetadata) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.SubnetMetadata[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - if m.Summary != nil { - l = m.Summary.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.RouteTableMetadata != nil { + { + size, err := m.RouteTableMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *NodeTypeSubnet) Size() (n int) { - if m == nil { - return 0 +func (m *NetworkRouteTableData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *NetworkRouteTableData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NetworkRouteTableData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if len(m.Metric) > 0 { - for _, e := range m.Metric { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.SubnetData) > 0 { + for iNdEx := len(m.SubnetData) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.SubnetData[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - if m.Summary != nil { - l = m.Summary.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.RouteTableData != nil { + { + size, err := m.RouteTableData.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *NodeTypeInstance) Size() (n int) { - if m == nil { - return 0 +func (m *NetworkRoutesMetaData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *NetworkRoutesMetaData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NetworkRoutesMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if len(m.Metric) > 0 { - for _, e := range m.Metric { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.RouteTablesMetadata) > 0 { + for iNdEx := len(m.RouteTablesMetadata) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RouteTablesMetadata[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - return n + if len(m.NetworkId) > 0 { + i -= len(m.NetworkId) + copy(dAtA[i:], m.NetworkId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NetworkId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *NodeMetaData) Size() (n int) { - if m == nil { - return 0 +func (m *NetworkRoutesData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *NetworkRoutesData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NetworkRoutesData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.Level != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Level)) - } - if m.ProviderType != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.ProviderType)) - } - l = len(m.OwnerId) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if len(m.Tags) > 0 { - for k, v := range m.Tags { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovPublicCustomDataApi(uint64(len(k))) + 1 + len(v) + sovPublicCustomDataApi(uint64(len(v))) - n += mapEntrySize + 1 + sovPublicCustomDataApi(uint64(mapEntrySize)) + if len(m.RouteTablesData) > 0 { + for iNdEx := len(m.RouteTablesData) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RouteTablesData[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - l = len(m.Status) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - l = len(m.CloudResourceId) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.NetworkId) > 0 { + i -= len(m.NetworkId) + copy(dAtA[i:], m.NetworkId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NetworkId))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *Node) Size() (n int) { - if m == nil { - return 0 +func (m *SiteSummaryInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *SiteSummaryInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SiteSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Id) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.NodeInfo) > 0 { + for iNdEx := len(m.NodeInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.NodeInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } } - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.AvailabilityZone) > 0 { + for iNdEx := len(m.AvailabilityZone) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.AvailabilityZone[iNdEx]) + copy(dAtA[i:], m.AvailabilityZone[iNdEx]) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.AvailabilityZone[iNdEx]))) + i-- + dAtA[i] = 0x12 + } } - if m.NodeType != nil { - n += m.NodeType.Size() + if m.NodeCount != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.NodeCount)) + i-- + dAtA[i] = 0x8 } - return n + return len(dAtA) - i, nil } -func (m *Node_Site) Size() (n int) { - if m == nil { - return 0 +func (m *NetworkSummaryInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *NetworkSummaryInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NetworkSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Site != nil { - l = m.Site.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - return n -} -func (m *Node_TransitGateway) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TransitGateway != nil { - l = m.TransitGateway.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.RouteTables) > 0 { + for iNdEx := len(m.RouteTables) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RouteTables[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - return n + return len(dAtA) - i, nil } -func (m *Node_Network) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Network != nil { - l = m.Network.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + +func (m *SubnetSummaryInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *Node_Subnet) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Subnet != nil { - l = m.Subnet.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - return n + +func (m *SubnetSummaryInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Node_Instance) Size() (n int) { - if m == nil { - return 0 - } + +func (m *SubnetSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Instance != nil { - l = m.Instance.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.RouteTables) > 0 { + for iNdEx := len(m.RouteTables) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RouteTables[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - return n + return len(dAtA) - i, nil } -func (m *Node_SiteMeshGroup) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SiteMeshGroup != nil { - l = m.SiteMeshGroup.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + +func (m *NodeTypeSite) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *Node_DcClusterGroup) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DcClusterGroup != nil { - l = m.DcClusterGroup.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - return n + +func (m *NodeTypeSite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LinkInfo) Size() (n int) { - if m == nil { - return 0 - } + +func (m *NodeTypeSite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if m.Type != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Type)) - } - if m.Status != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Status)) + if m.Summary != nil { + { + size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - l = len(m.SrcId) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.Metric) > 0 { + for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - l = len(m.DstId) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *LinkInfoSummary) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Type != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Type)) - } - if m.Status != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Status)) - } - if m.Count != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Count)) +func (m *SiteMeshGroupSummaryInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *LinkTypeData) Size() (n int) { - if m == nil { - return 0 - } +func (m *SiteMeshGroupSummaryInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SiteMeshGroupSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Info != nil { - l = m.Info.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.EdgeStatusSummary) > 0 { + for iNdEx := len(m.EdgeStatusSummary) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EdgeStatusSummary[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } } - if len(m.Metric) > 0 { - for _, e := range m.Metric { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if len(m.LinkStatusSummary) > 0 { + for iNdEx := len(m.LinkStatusSummary) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.LinkStatusSummary[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } } - return n + if m.OtherConnectedSiteMeshGroupSites != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.OtherConnectedSiteMeshGroupSites)) + i-- + dAtA[i] = 0x10 + } + if m.Sites != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Sites)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil } -func (m *EdgeInfoSummary) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Status != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Status)) - } - if m.Count != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Count)) +func (m *NodeTypeSiteMeshGroup) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *Edge) Size() (n int) { - if m == nil { - return 0 - } +func (m *NodeTypeSiteMeshGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NodeTypeSiteMeshGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.NodeId1) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - l = len(m.NodeId2) - if l > 0 { - n += 1 + l + sovPublicCustomDataApi(uint64(l)) - } - if len(m.Links) > 0 { - for _, e := range m.Links { - l = e.Size() - n += 1 + l + sovPublicCustomDataApi(uint64(l)) + if m.Summary != nil { + { + size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if m.Status != 0 { - n += 1 + sovPublicCustomDataApi(uint64(m.Status)) + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func sovPublicCustomDataApi(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozPublicCustomDataApi(x uint64) (n int) { - return sovPublicCustomDataApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *SiteTopologyRequest) String() string { - if this == nil { - return "nil" +func (m *DCClusterGroupSummaryInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&SiteTopologyRequest{`, - `Site:` + fmt.Sprintf("%v", this.Site) + `,`, - `NodeId:` + fmt.Sprintf("%v", this.NodeId) + `,`, - `Level:` + fmt.Sprintf("%v", this.Level) + `,`, - `GroupSiteMeshNodes:` + fmt.Sprintf("%v", this.GroupSiteMeshNodes) + `,`, - `GroupDcClusterNodes:` + fmt.Sprintf("%v", this.GroupDcClusterNodes) + `,`, - `MetricSelector:` + strings.Replace(this.MetricSelector.String(), "MetricSelector", "MetricSelector", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *SiteMeshGroupsSummaryRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SiteMeshGroupsSummaryRequest{`, - `}`, - }, "") - return s + +func (m *DCClusterGroupSummaryInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SiteMeshTopologyRequest) String() string { - if this == nil { - return "nil" + +func (m *DCClusterGroupSummaryInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Sites != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Sites)) + i-- + dAtA[i] = 0x8 } - s := strings.Join([]string{`&SiteMeshTopologyRequest{`, - `SiteMeshGroup:` + fmt.Sprintf("%v", this.SiteMeshGroup) + `,`, - `MetricSelector:` + strings.Replace(this.MetricSelector.String(), "MetricSelector", "MetricSelector", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *DCClusterGroupsSummaryRequest) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeDCClusterGroup) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&DCClusterGroupsSummaryRequest{`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *DCClusterTopologyRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DCClusterTopologyRequest{`, - `DcClusterGroup:` + fmt.Sprintf("%v", this.DcClusterGroup) + `,`, - `MetricSelector:` + strings.Replace(this.MetricSelector.String(), "MetricSelector", "MetricSelector", 1) + `,`, - `}`, - }, "") - return s + +func (m *NodeTypeDCClusterGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *TopologyResponse) String() string { - if this == nil { - return "nil" - } - repeatedStringForNodes := "[]*Node{" - for _, f := range this.Nodes { - repeatedStringForNodes += strings.Replace(f.String(), "Node", "Node", 1) + "," + +func (m *NodeTypeDCClusterGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Summary != nil { + { + size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - repeatedStringForNodes += "}" - repeatedStringForEdges := "[]*Edge{" - for _, f := range this.Edges { - repeatedStringForEdges += strings.Replace(f.String(), "Edge", "Edge", 1) + "," + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - repeatedStringForEdges += "}" - s := strings.Join([]string{`&TopologyResponse{`, - `Nodes:` + repeatedStringForNodes + `,`, - `Edges:` + repeatedStringForEdges + `,`, - `Step:` + fmt.Sprintf("%v", this.Step) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *RouteTableRequest) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeTransitGateway) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&RouteTableRequest{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *RouteTableResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTableResponse{`, - `Metadata:` + strings.Replace(this.Metadata.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + `,`, - `RouteTable:` + strings.Replace(fmt.Sprintf("%v", this.RouteTable), "RouteTableType", "RouteTableType", 1) + `,`, - `}`, - }, "") - return s + +func (m *NodeTypeTransitGateway) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *MetricSelector) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeTransitGateway) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Metric) > 0 { + for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - s := strings.Join([]string{`&MetricSelector{`, - `StartTime:` + fmt.Sprintf("%v", this.StartTime) + `,`, - `EndTime:` + fmt.Sprintf("%v", this.EndTime) + `,`, - `Node:` + fmt.Sprintf("%v", this.Node) + `,`, - `Edge:` + fmt.Sprintf("%v", this.Edge) + `,`, - `Step:` + fmt.Sprintf("%v", this.Step) + `,`, - `}`, - }, "") - return s + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (this *MetricTypeData) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeNetwork) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - repeatedStringForValues := "[]*MetricValue{" - for _, f := range this.Values { - repeatedStringForValues += strings.Replace(fmt.Sprintf("%v", f), "MetricValue", "schema.MetricValue", 1) + "," + return dAtA[:n], nil +} + +func (m *NodeTypeNetwork) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NodeTypeNetwork) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Summary != nil { + { + size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - repeatedStringForValues += "}" - keysForLabels := make([]string, 0, len(this.Labels)) - for k, _ := range this.Labels { - keysForLabels = append(keysForLabels, k) + if len(m.Metric) > 0 { + for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) - mapStringForLabels := "map[string]string{" - for _, k := range keysForLabels { - mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - mapStringForLabels += "}" - s := strings.Join([]string{`&MetricTypeData{`, - `Labels:` + mapStringForLabels + `,`, - `Values:` + repeatedStringForValues + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *MetricData) String() string { - if this == nil { - return "nil" - } - repeatedStringForData := "[]*MetricTypeData{" - for _, f := range this.Data { - repeatedStringForData += strings.Replace(f.String(), "MetricTypeData", "MetricTypeData", 1) + "," + +func (m *NodeTypeSubnet) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - repeatedStringForData += "}" - s := strings.Join([]string{`&MetricData{`, - `Type:` + fmt.Sprintf("%v", this.Type) + `,`, - `Data:` + repeatedStringForData + `,`, - `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *RouteTableMetaData) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeSubnet) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NodeTypeSubnet) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Summary != nil { + { + size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - keysForTags := make([]string, 0, len(this.Tags)) - for k, _ := range this.Tags { - keysForTags = append(keysForTags, k) + if len(m.Metric) > 0 { + for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - github_com_gogo_protobuf_sortkeys.Strings(keysForTags) - mapStringForTags := "map[string]string{" - for _, k := range keysForTags { - mapStringForTags += fmt.Sprintf("%v: %v,", k, this.Tags[k]) + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - mapStringForTags += "}" - s := strings.Join([]string{`&RouteTableMetaData{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Tags:` + mapStringForTags + `,`, - `CloudResourceId:` + fmt.Sprintf("%v", this.CloudResourceId) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *SiteSummaryInfo) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeInstance) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&SiteSummaryInfo{`, - `NodeCount:` + fmt.Sprintf("%v", this.NodeCount) + `,`, - `AvailabilityZone:` + fmt.Sprintf("%v", this.AvailabilityZone) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *NetworkSummaryInfo) String() string { - if this == nil { - return "nil" - } - repeatedStringForRouteTables := "[]*RouteTableMetaData{" - for _, f := range this.RouteTables { - repeatedStringForRouteTables += strings.Replace(f.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + "," - } - repeatedStringForRouteTables += "}" - s := strings.Join([]string{`&NetworkSummaryInfo{`, - `RouteTables:` + repeatedStringForRouteTables + `,`, - `}`, - }, "") - return s + +func (m *NodeTypeInstance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SubnetSummaryInfo) String() string { - if this == nil { - return "nil" + +func (m *NodeTypeInstance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Metric) > 0 { + for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - repeatedStringForRouteTables := "[]*RouteTableMetaData{" - for _, f := range this.RouteTables { - repeatedStringForRouteTables += strings.Replace(f.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + "," + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - repeatedStringForRouteTables += "}" - s := strings.Join([]string{`&SubnetSummaryInfo{`, - `RouteTables:` + repeatedStringForRouteTables + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *NodeTypeSite) String() string { - if this == nil { - return "nil" - } - repeatedStringForMetric := "[]*MetricData{" - for _, f := range this.Metric { - repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + +func (m *NodeMetaData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - repeatedStringForMetric += "}" - s := strings.Join([]string{`&NodeTypeSite{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "SiteType", "SiteType", 1) + `,`, - `Metric:` + repeatedStringForMetric + `,`, - `Summary:` + strings.Replace(this.Summary.String(), "SiteSummaryInfo", "SiteSummaryInfo", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *SiteMeshGroupSummaryInfo) String() string { - if this == nil { - return "nil" + +func (m *NodeMetaData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *NodeMetaData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.CloudResourceId) > 0 { + i -= len(m.CloudResourceId) + copy(dAtA[i:], m.CloudResourceId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.CloudResourceId))) + i-- + dAtA[i] = 0x42 } - repeatedStringForLinkStatusSummary := "[]*LinkInfoSummary{" - for _, f := range this.LinkStatusSummary { - repeatedStringForLinkStatusSummary += strings.Replace(f.String(), "LinkInfoSummary", "LinkInfoSummary", 1) + "," + if len(m.Status) > 0 { + i -= len(m.Status) + copy(dAtA[i:], m.Status) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Status))) + i-- + dAtA[i] = 0x3a } - repeatedStringForLinkStatusSummary += "}" - repeatedStringForEdgeStatusSummary := "[]*EdgeInfoSummary{" - for _, f := range this.EdgeStatusSummary { - repeatedStringForEdgeStatusSummary += strings.Replace(f.String(), "EdgeInfoSummary", "EdgeInfoSummary", 1) + "," + if len(m.Tags) > 0 { + for k := range m.Tags { + v := m.Tags[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x32 + } } - repeatedStringForEdgeStatusSummary += "}" - s := strings.Join([]string{`&SiteMeshGroupSummaryInfo{`, - `Sites:` + fmt.Sprintf("%v", this.Sites) + `,`, - `OtherConnectedSiteMeshGroupSites:` + fmt.Sprintf("%v", this.OtherConnectedSiteMeshGroupSites) + `,`, - `LinkStatusSummary:` + repeatedStringForLinkStatusSummary + `,`, - `EdgeStatusSummary:` + repeatedStringForEdgeStatusSummary + `,`, - `}`, - }, "") - return s -} -func (this *NodeTypeSiteMeshGroup) String() string { - if this == nil { - return "nil" + if len(m.OwnerId) > 0 { + i -= len(m.OwnerId) + copy(dAtA[i:], m.OwnerId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.OwnerId))) + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&NodeTypeSiteMeshGroup{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "SiteMeshGroupType", "SiteMeshGroupType", 1) + `,`, - `Summary:` + strings.Replace(this.Summary.String(), "SiteMeshGroupSummaryInfo", "SiteMeshGroupSummaryInfo", 1) + `,`, - `}`, - }, "") - return s -} -func (this *DCClusterGroupSummaryInfo) String() string { - if this == nil { - return "nil" + if m.ProviderType != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.ProviderType)) + i-- + dAtA[i] = 0x20 } - s := strings.Join([]string{`&DCClusterGroupSummaryInfo{`, - `Sites:` + fmt.Sprintf("%v", this.Sites) + `,`, - `}`, - }, "") - return s -} -func (this *NodeTypeDCClusterGroup) String() string { - if this == nil { - return "nil" + if m.Level != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Level)) + i-- + dAtA[i] = 0x18 } - s := strings.Join([]string{`&NodeTypeDCClusterGroup{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "DCClusterGroupType", "DCClusterGroupType", 1) + `,`, - `Summary:` + strings.Replace(this.Summary.String(), "DCClusterGroupSummaryInfo", "DCClusterGroupSummaryInfo", 1) + `,`, - `}`, - }, "") - return s -} -func (this *NodeTypeTransitGateway) String() string { - if this == nil { - return "nil" + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x12 } - repeatedStringForMetric := "[]*MetricData{" - for _, f := range this.Metric { - repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - repeatedStringForMetric += "}" - s := strings.Join([]string{`&NodeTypeTransitGateway{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "TransitGatewayType", "TransitGatewayType", 1) + `,`, - `Metric:` + repeatedStringForMetric + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *NodeTypeNetwork) String() string { - if this == nil { - return "nil" - } - repeatedStringForMetric := "[]*MetricData{" - for _, f := range this.Metric { - repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + +func (m *Node) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - repeatedStringForMetric += "}" - s := strings.Join([]string{`&NodeTypeNetwork{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "NetworkType", "NetworkType", 1) + `,`, - `Metric:` + repeatedStringForMetric + `,`, - `Summary:` + strings.Replace(this.Summary.String(), "NetworkSummaryInfo", "NetworkSummaryInfo", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *NodeTypeSubnet) String() string { - if this == nil { - return "nil" - } - repeatedStringForMetric := "[]*MetricData{" - for _, f := range this.Metric { - repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," - } - repeatedStringForMetric += "}" - s := strings.Join([]string{`&NodeTypeSubnet{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "SubnetType", "SubnetType", 1) + `,`, - `Metric:` + repeatedStringForMetric + `,`, - `Summary:` + strings.Replace(this.Summary.String(), "SubnetSummaryInfo", "SubnetSummaryInfo", 1) + `,`, - `}`, - }, "") - return s + +func (m *Node) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *NodeTypeInstance) String() string { - if this == nil { - return "nil" - } - repeatedStringForMetric := "[]*MetricData{" - for _, f := range this.Metric { - repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + +func (m *Node) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.NodeType != nil { + { + size := m.NodeType.Size() + i -= size + if _, err := m.NodeType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - repeatedStringForMetric += "}" - s := strings.Join([]string{`&NodeTypeInstance{`, - `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "InstanceType", "InstanceType", 1) + `,`, - `Metric:` + repeatedStringForMetric + `,`, - `}`, - }, "") - return s -} -func (this *NodeMetaData) String() string { - if this == nil { - return "nil" + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - keysForTags := make([]string, 0, len(this.Tags)) - for k, _ := range this.Tags { - keysForTags = append(keysForTags, k) + if len(m.Id) > 0 { + i -= len(m.Id) + copy(dAtA[i:], m.Id) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Id))) + i-- + dAtA[i] = 0xa } - github_com_gogo_protobuf_sortkeys.Strings(keysForTags) - mapStringForTags := "map[string]string{" - for _, k := range keysForTags { - mapStringForTags += fmt.Sprintf("%v: %v,", k, this.Tags[k]) - } - mapStringForTags += "}" - s := strings.Join([]string{`&NodeMetaData{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Description:` + fmt.Sprintf("%v", this.Description) + `,`, - `Level:` + fmt.Sprintf("%v", this.Level) + `,`, - `ProviderType:` + fmt.Sprintf("%v", this.ProviderType) + `,`, - `OwnerId:` + fmt.Sprintf("%v", this.OwnerId) + `,`, - `Tags:` + mapStringForTags + `,`, - `Status:` + fmt.Sprintf("%v", this.Status) + `,`, - `CloudResourceId:` + fmt.Sprintf("%v", this.CloudResourceId) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *Node) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Node{`, - `Id:` + fmt.Sprintf("%v", this.Id) + `,`, - `Metadata:` + strings.Replace(this.Metadata.String(), "NodeMetaData", "NodeMetaData", 1) + `,`, - `NodeType:` + fmt.Sprintf("%v", this.NodeType) + `,`, - `}`, - }, "") - return s + +func (m *Node_Site) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Node_Site) String() string { - if this == nil { - return "nil" + +func (m *Node_Site) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Site != nil { + { + size, err := m.Site.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&Node_Site{`, - `Site:` + strings.Replace(fmt.Sprintf("%v", this.Site), "NodeTypeSite", "NodeTypeSite", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *Node_TransitGateway) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Node_TransitGateway{`, - `TransitGateway:` + strings.Replace(fmt.Sprintf("%v", this.TransitGateway), "NodeTypeTransitGateway", "NodeTypeTransitGateway", 1) + `,`, - `}`, - }, "") - return s +func (m *Node_TransitGateway) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Node_Network) String() string { - if this == nil { - return "nil" + +func (m *Node_TransitGateway) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.TransitGateway != nil { + { + size, err := m.TransitGateway.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&Node_Network{`, - `Network:` + strings.Replace(fmt.Sprintf("%v", this.Network), "NodeTypeNetwork", "NodeTypeNetwork", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *Node_Subnet) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Node_Subnet{`, - `Subnet:` + strings.Replace(fmt.Sprintf("%v", this.Subnet), "NodeTypeSubnet", "NodeTypeSubnet", 1) + `,`, - `}`, - }, "") - return s +func (m *Node_Network) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Node_Instance) String() string { - if this == nil { - return "nil" + +func (m *Node_Network) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Network != nil { + { + size, err := m.Network.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 } - s := strings.Join([]string{`&Node_Instance{`, - `Instance:` + strings.Replace(fmt.Sprintf("%v", this.Instance), "NodeTypeInstance", "NodeTypeInstance", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *Node_SiteMeshGroup) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Node_SiteMeshGroup{`, - `SiteMeshGroup:` + strings.Replace(fmt.Sprintf("%v", this.SiteMeshGroup), "NodeTypeSiteMeshGroup", "NodeTypeSiteMeshGroup", 1) + `,`, - `}`, - }, "") - return s +func (m *Node_Subnet) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Node_DcClusterGroup) String() string { - if this == nil { - return "nil" + +func (m *Node_Subnet) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Subnet != nil { + { + size, err := m.Subnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a } - s := strings.Join([]string{`&Node_DcClusterGroup{`, - `DcClusterGroup:` + strings.Replace(fmt.Sprintf("%v", this.DcClusterGroup), "NodeTypeDCClusterGroup", "NodeTypeDCClusterGroup", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *LinkInfo) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&LinkInfo{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Type:` + fmt.Sprintf("%v", this.Type) + `,`, - `Status:` + fmt.Sprintf("%v", this.Status) + `,`, - `SrcId:` + fmt.Sprintf("%v", this.SrcId) + `,`, - `DstId:` + fmt.Sprintf("%v", this.DstId) + `,`, - `}`, - }, "") - return s +func (m *Node_Instance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *LinkInfoSummary) String() string { - if this == nil { - return "nil" + +func (m *Node_Instance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Instance != nil { + { + size, err := m.Instance.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - s := strings.Join([]string{`&LinkInfoSummary{`, - `Type:` + fmt.Sprintf("%v", this.Type) + `,`, - `Status:` + fmt.Sprintf("%v", this.Status) + `,`, - `Count:` + fmt.Sprintf("%v", this.Count) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *LinkTypeData) String() string { - if this == nil { - return "nil" - } - repeatedStringForMetric := "[]*MetricData{" - for _, f := range this.Metric { - repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," - } - repeatedStringForMetric += "}" - s := strings.Join([]string{`&LinkTypeData{`, - `Info:` + strings.Replace(this.Info.String(), "LinkInfo", "LinkInfo", 1) + `,`, - `Metric:` + repeatedStringForMetric + `,`, - `}`, - }, "") - return s +func (m *Node_SiteMeshGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *EdgeInfoSummary) String() string { - if this == nil { - return "nil" + +func (m *Node_SiteMeshGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SiteMeshGroup != nil { + { + size, err := m.SiteMeshGroup.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - s := strings.Join([]string{`&EdgeInfoSummary{`, - `Status:` + fmt.Sprintf("%v", this.Status) + `,`, - `Count:` + fmt.Sprintf("%v", this.Count) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *Edge) String() string { - if this == nil { - return "nil" - } - repeatedStringForLinks := "[]*LinkTypeData{" - for _, f := range this.Links { - repeatedStringForLinks += strings.Replace(f.String(), "LinkTypeData", "LinkTypeData", 1) + "," +func (m *Node_DcClusterGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Node_DcClusterGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DcClusterGroup != nil { + { + size, err := m.DcClusterGroup.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + return len(dAtA) - i, nil +} +func (m *LinkInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LinkInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LinkInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.DstId) > 0 { + i -= len(m.DstId) + copy(dAtA[i:], m.DstId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.DstId))) + i-- + dAtA[i] = 0x2a + } + if len(m.SrcId) > 0 { + i -= len(m.SrcId) + copy(dAtA[i:], m.SrcId) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.SrcId))) + i-- + dAtA[i] = 0x22 + } + if m.Status != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) + i-- + dAtA[i] = 0x18 + } + if m.Type != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x10 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *LinkInfoSummary) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LinkInfoSummary) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LinkInfoSummary) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Count != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Count)) + i-- + dAtA[i] = 0x18 + } + if m.Status != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) + i-- + dAtA[i] = 0x10 + } + if m.Type != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *LinkTypeData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LinkTypeData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LinkTypeData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Metric) > 0 { + for iNdEx := len(m.Metric) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Metric[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Info != nil { + { + size, err := m.Info.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *EdgeInfoSummary) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EdgeInfoSummary) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EdgeInfoSummary) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Count != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Count)) + i-- + dAtA[i] = 0x10 + } + if m.Status != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *Edge) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Edge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Edge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Status != 0 { + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(m.Status)) + i-- + dAtA[i] = 0x20 + } + if len(m.Links) > 0 { + for iNdEx := len(m.Links) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Links[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if len(m.NodeId2) > 0 { + i -= len(m.NodeId2) + copy(dAtA[i:], m.NodeId2) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NodeId2))) + i-- + dAtA[i] = 0x12 + } + if len(m.NodeId1) > 0 { + i -= len(m.NodeId1) + copy(dAtA[i:], m.NodeId1) + i = encodeVarintPublicCustomDataApi(dAtA, i, uint64(len(m.NodeId1))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCustomDataApi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCustomDataApi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *SiteTopologyRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Site) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.NodeId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Level != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Level)) + } + if m.GroupSiteMeshNodes { + n += 2 + } + if m.GroupDcClusterNodes { + n += 2 + } + if m.MetricSelector != nil { + l = m.MetricSelector.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *SiteMeshGroupsSummaryRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *SiteMeshTopologyRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SiteMeshGroup) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.MetricSelector != nil { + l = m.MetricSelector.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *DCClusterGroupsSummaryRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *DCClusterTopologyRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DcClusterGroup) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.MetricSelector != nil { + l = m.MetricSelector.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *TopologyResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Nodes) > 0 { + for _, e := range m.Nodes { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if len(m.Edges) > 0 { + for _, e := range m.Edges { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *RouteTableRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *RouteTableResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.RouteTable != nil { + l = m.RouteTable.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *SiteNetworksRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *SiteNetworksResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RoutesMetadata) > 0 { + for _, e := range m.RoutesMetadata { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NetworkRouteTablesRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Id) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.RouteTableIds) > 0 { + for _, s := range m.RouteTableIds { + l = len(s) + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if len(m.SubnetIds) > 0 { + for _, s := range m.SubnetIds { + l = len(s) + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if len(m.SubnetCidrs) > 0 { + for _, s := range m.SubnetCidrs { + l = len(s) + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if len(m.Regions) > 0 { + for _, s := range m.Regions { + l = len(s) + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NetworkRouteTablesResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RoutesData) > 0 { + for _, e := range m.RoutesData { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *MetricSelector) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.StartTime) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.EndTime) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Node) > 0 { + l = 0 + for _, e := range m.Node { + l += sovPublicCustomDataApi(uint64(e)) + } + n += 1 + sovPublicCustomDataApi(uint64(l)) + l + } + if len(m.Edge) > 0 { + l = 0 + for _, e := range m.Edge { + l += sovPublicCustomDataApi(uint64(e)) + } + n += 1 + sovPublicCustomDataApi(uint64(l)) + l + } + l = len(m.Step) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *MetricTypeData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomDataApi(uint64(len(k))) + 1 + len(v) + sovPublicCustomDataApi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomDataApi(uint64(mapEntrySize)) + } + } + if len(m.Values) > 0 { + for _, e := range m.Values { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *MetricData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Type != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Type)) + } + if len(m.Data) > 0 { + for _, e := range m.Data { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if m.Unit != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Unit)) + } + return n +} + +func (m *RouteTableMetaData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Tags) > 0 { + for k, v := range m.Tags { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomDataApi(uint64(len(k))) + 1 + len(v) + sovPublicCustomDataApi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomDataApi(uint64(mapEntrySize)) + } + } + l = len(m.CloudResourceId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *RouteTableData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.RouteTable != nil { + l = m.RouteTable.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *SubnetMetaData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.CloudResourceId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *SubnetData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Subnet != nil { + l = m.Subnet.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *NetworkRouteTableMetaData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RouteTableMetadata != nil { + l = m.RouteTableMetadata.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.SubnetMetadata) > 0 { + for _, e := range m.SubnetMetadata { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NetworkRouteTableData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RouteTableData != nil { + l = m.RouteTableData.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.SubnetData) > 0 { + for _, e := range m.SubnetData { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NetworkRoutesMetaData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.NetworkId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.RouteTablesMetadata) > 0 { + for _, e := range m.RouteTablesMetadata { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NetworkRoutesData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.NetworkId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.RouteTablesData) > 0 { + for _, e := range m.RouteTablesData { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *SiteSummaryInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NodeCount != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.NodeCount)) + } + if len(m.AvailabilityZone) > 0 { + for _, s := range m.AvailabilityZone { + l = len(s) + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if len(m.NodeInfo) > 0 { + for _, e := range m.NodeInfo { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NetworkSummaryInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RouteTables) > 0 { + for _, e := range m.RouteTables { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *SubnetSummaryInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RouteTables) > 0 { + for _, e := range m.RouteTables { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NodeTypeSite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Metric) > 0 { + for _, e := range m.Metric { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if m.Summary != nil { + l = m.Summary.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *SiteMeshGroupSummaryInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Sites != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Sites)) + } + if m.OtherConnectedSiteMeshGroupSites != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.OtherConnectedSiteMeshGroupSites)) + } + if len(m.LinkStatusSummary) > 0 { + for _, e := range m.LinkStatusSummary { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if len(m.EdgeStatusSummary) > 0 { + for _, e := range m.EdgeStatusSummary { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NodeTypeSiteMeshGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Summary != nil { + l = m.Summary.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *DCClusterGroupSummaryInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Sites != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Sites)) + } + return n +} + +func (m *NodeTypeDCClusterGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Summary != nil { + l = m.Summary.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *NodeTypeTransitGateway) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Metric) > 0 { + for _, e := range m.Metric { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NodeTypeNetwork) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Metric) > 0 { + for _, e := range m.Metric { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if m.Summary != nil { + l = m.Summary.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *NodeTypeSubnet) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Metric) > 0 { + for _, e := range m.Metric { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if m.Summary != nil { + l = m.Summary.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *NodeTypeInstance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Metric) > 0 { + for _, e := range m.Metric { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *NodeMetaData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Level != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Level)) + } + if m.ProviderType != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.ProviderType)) + } + l = len(m.OwnerId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Tags) > 0 { + for k, v := range m.Tags { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCustomDataApi(uint64(len(k))) + 1 + len(v) + sovPublicCustomDataApi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCustomDataApi(uint64(mapEntrySize)) + } + } + l = len(m.Status) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.CloudResourceId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *Node) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Id) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.NodeType != nil { + n += m.NodeType.Size() + } + return n +} + +func (m *Node_Site) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Site != nil { + l = m.Site.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *Node_TransitGateway) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TransitGateway != nil { + l = m.TransitGateway.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *Node_Network) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Network != nil { + l = m.Network.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *Node_Subnet) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Subnet != nil { + l = m.Subnet.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *Node_Instance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Instance != nil { + l = m.Instance.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *Node_SiteMeshGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SiteMeshGroup != nil { + l = m.SiteMeshGroup.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *Node_DcClusterGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DcClusterGroup != nil { + l = m.DcClusterGroup.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} +func (m *LinkInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if m.Type != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Type)) + } + if m.Status != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Status)) + } + l = len(m.SrcId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.DstId) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + return n +} + +func (m *LinkInfoSummary) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Type != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Type)) + } + if m.Status != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Status)) + } + if m.Count != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Count)) + } + return n +} + +func (m *LinkTypeData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Info != nil { + l = m.Info.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Metric) > 0 { + for _, e := range m.Metric { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + return n +} + +func (m *EdgeInfoSummary) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Status != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Status)) + } + if m.Count != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Count)) + } + return n +} + +func (m *Edge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.NodeId1) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + l = len(m.NodeId2) + if l > 0 { + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + if len(m.Links) > 0 { + for _, e := range m.Links { + l = e.Size() + n += 1 + l + sovPublicCustomDataApi(uint64(l)) + } + } + if m.Status != 0 { + n += 1 + sovPublicCustomDataApi(uint64(m.Status)) + } + return n +} + +func sovPublicCustomDataApi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCustomDataApi(x uint64) (n int) { + return sovPublicCustomDataApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *SiteTopologyRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SiteTopologyRequest{`, + `Site:` + fmt.Sprintf("%v", this.Site) + `,`, + `NodeId:` + fmt.Sprintf("%v", this.NodeId) + `,`, + `Level:` + fmt.Sprintf("%v", this.Level) + `,`, + `GroupSiteMeshNodes:` + fmt.Sprintf("%v", this.GroupSiteMeshNodes) + `,`, + `GroupDcClusterNodes:` + fmt.Sprintf("%v", this.GroupDcClusterNodes) + `,`, + `MetricSelector:` + strings.Replace(this.MetricSelector.String(), "MetricSelector", "MetricSelector", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SiteMeshGroupsSummaryRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SiteMeshGroupsSummaryRequest{`, + `}`, + }, "") + return s +} +func (this *SiteMeshTopologyRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SiteMeshTopologyRequest{`, + `SiteMeshGroup:` + fmt.Sprintf("%v", this.SiteMeshGroup) + `,`, + `MetricSelector:` + strings.Replace(this.MetricSelector.String(), "MetricSelector", "MetricSelector", 1) + `,`, + `}`, + }, "") + return s +} +func (this *DCClusterGroupsSummaryRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DCClusterGroupsSummaryRequest{`, + `}`, + }, "") + return s +} +func (this *DCClusterTopologyRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DCClusterTopologyRequest{`, + `DcClusterGroup:` + fmt.Sprintf("%v", this.DcClusterGroup) + `,`, + `MetricSelector:` + strings.Replace(this.MetricSelector.String(), "MetricSelector", "MetricSelector", 1) + `,`, + `}`, + }, "") + return s +} +func (this *TopologyResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForNodes := "[]*Node{" + for _, f := range this.Nodes { + repeatedStringForNodes += strings.Replace(f.String(), "Node", "Node", 1) + "," + } + repeatedStringForNodes += "}" + repeatedStringForEdges := "[]*Edge{" + for _, f := range this.Edges { + repeatedStringForEdges += strings.Replace(f.String(), "Edge", "Edge", 1) + "," + } + repeatedStringForEdges += "}" + s := strings.Join([]string{`&TopologyResponse{`, + `Nodes:` + repeatedStringForNodes + `,`, + `Edges:` + repeatedStringForEdges + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *RouteTableRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTableRequest{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `}`, + }, "") + return s +} +func (this *RouteTableResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTableResponse{`, + `Metadata:` + strings.Replace(this.Metadata.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + `,`, + `RouteTable:` + strings.Replace(fmt.Sprintf("%v", this.RouteTable), "RouteTableType", "RouteTableType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SiteNetworksRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SiteNetworksRequest{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `}`, + }, "") + return s +} +func (this *SiteNetworksResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForRoutesMetadata := "[]*NetworkRoutesMetaData{" + for _, f := range this.RoutesMetadata { + repeatedStringForRoutesMetadata += strings.Replace(f.String(), "NetworkRoutesMetaData", "NetworkRoutesMetaData", 1) + "," + } + repeatedStringForRoutesMetadata += "}" + s := strings.Join([]string{`&SiteNetworksResponse{`, + `RoutesMetadata:` + repeatedStringForRoutesMetadata + `,`, + `}`, + }, "") + return s +} +func (this *NetworkRouteTablesRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkRouteTablesRequest{`, + `Id:` + fmt.Sprintf("%v", this.Id) + `,`, + `RouteTableIds:` + fmt.Sprintf("%v", this.RouteTableIds) + `,`, + `SubnetIds:` + fmt.Sprintf("%v", this.SubnetIds) + `,`, + `SubnetCidrs:` + fmt.Sprintf("%v", this.SubnetCidrs) + `,`, + `Regions:` + fmt.Sprintf("%v", this.Regions) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkRouteTablesResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForRoutesData := "[]*NetworkRoutesData{" + for _, f := range this.RoutesData { + repeatedStringForRoutesData += strings.Replace(f.String(), "NetworkRoutesData", "NetworkRoutesData", 1) + "," + } + repeatedStringForRoutesData += "}" + s := strings.Join([]string{`&NetworkRouteTablesResponse{`, + `RoutesData:` + repeatedStringForRoutesData + `,`, + `}`, + }, "") + return s +} +func (this *MetricSelector) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MetricSelector{`, + `StartTime:` + fmt.Sprintf("%v", this.StartTime) + `,`, + `EndTime:` + fmt.Sprintf("%v", this.EndTime) + `,`, + `Node:` + fmt.Sprintf("%v", this.Node) + `,`, + `Edge:` + fmt.Sprintf("%v", this.Edge) + `,`, + `Step:` + fmt.Sprintf("%v", this.Step) + `,`, + `}`, + }, "") + return s +} +func (this *MetricTypeData) String() string { + if this == nil { + return "nil" + } + repeatedStringForValues := "[]*MetricValue{" + for _, f := range this.Values { + repeatedStringForValues += strings.Replace(fmt.Sprintf("%v", f), "MetricValue", "schema.MetricValue", 1) + "," + } + repeatedStringForValues += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&MetricTypeData{`, + `Labels:` + mapStringForLabels + `,`, + `Values:` + repeatedStringForValues + `,`, + `}`, + }, "") + return s +} +func (this *MetricData) String() string { + if this == nil { + return "nil" + } + repeatedStringForData := "[]*MetricTypeData{" + for _, f := range this.Data { + repeatedStringForData += strings.Replace(f.String(), "MetricTypeData", "MetricTypeData", 1) + "," + } + repeatedStringForData += "}" + s := strings.Join([]string{`&MetricData{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Data:` + repeatedStringForData + `,`, + `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, + `}`, + }, "") + return s +} +func (this *RouteTableMetaData) String() string { + if this == nil { + return "nil" + } + keysForTags := make([]string, 0, len(this.Tags)) + for k, _ := range this.Tags { + keysForTags = append(keysForTags, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + mapStringForTags := "map[string]string{" + for _, k := range keysForTags { + mapStringForTags += fmt.Sprintf("%v: %v,", k, this.Tags[k]) + } + mapStringForTags += "}" + s := strings.Join([]string{`&RouteTableMetaData{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Tags:` + mapStringForTags + `,`, + `CloudResourceId:` + fmt.Sprintf("%v", this.CloudResourceId) + `,`, + `}`, + }, "") + return s +} +func (this *RouteTableData) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTableData{`, + `Metadata:` + strings.Replace(this.Metadata.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + `,`, + `RouteTable:` + strings.Replace(fmt.Sprintf("%v", this.RouteTable), "RouteTableType", "RouteTableType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubnetMetaData) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubnetMetaData{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `CloudResourceId:` + fmt.Sprintf("%v", this.CloudResourceId) + `,`, + `}`, + }, "") + return s +} +func (this *SubnetData) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubnetData{`, + `Metadata:` + strings.Replace(this.Metadata.String(), "SubnetMetaData", "SubnetMetaData", 1) + `,`, + `Subnet:` + strings.Replace(fmt.Sprintf("%v", this.Subnet), "SubnetType", "SubnetType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkRouteTableMetaData) String() string { + if this == nil { + return "nil" + } + repeatedStringForSubnetMetadata := "[]*SubnetMetaData{" + for _, f := range this.SubnetMetadata { + repeatedStringForSubnetMetadata += strings.Replace(f.String(), "SubnetMetaData", "SubnetMetaData", 1) + "," + } + repeatedStringForSubnetMetadata += "}" + s := strings.Join([]string{`&NetworkRouteTableMetaData{`, + `RouteTableMetadata:` + strings.Replace(this.RouteTableMetadata.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + `,`, + `SubnetMetadata:` + repeatedStringForSubnetMetadata + `,`, + `}`, + }, "") + return s +} +func (this *NetworkRouteTableData) String() string { + if this == nil { + return "nil" + } + repeatedStringForSubnetData := "[]*SubnetData{" + for _, f := range this.SubnetData { + repeatedStringForSubnetData += strings.Replace(f.String(), "SubnetData", "SubnetData", 1) + "," + } + repeatedStringForSubnetData += "}" + s := strings.Join([]string{`&NetworkRouteTableData{`, + `RouteTableData:` + strings.Replace(this.RouteTableData.String(), "RouteTableData", "RouteTableData", 1) + `,`, + `SubnetData:` + repeatedStringForSubnetData + `,`, + `}`, + }, "") + return s +} +func (this *NetworkRoutesMetaData) String() string { + if this == nil { + return "nil" + } + repeatedStringForRouteTablesMetadata := "[]*NetworkRouteTableMetaData{" + for _, f := range this.RouteTablesMetadata { + repeatedStringForRouteTablesMetadata += strings.Replace(f.String(), "NetworkRouteTableMetaData", "NetworkRouteTableMetaData", 1) + "," + } + repeatedStringForRouteTablesMetadata += "}" + s := strings.Join([]string{`&NetworkRoutesMetaData{`, + `NetworkId:` + fmt.Sprintf("%v", this.NetworkId) + `,`, + `RouteTablesMetadata:` + repeatedStringForRouteTablesMetadata + `,`, + `}`, + }, "") + return s +} +func (this *NetworkRoutesData) String() string { + if this == nil { + return "nil" + } + repeatedStringForRouteTablesData := "[]*NetworkRouteTableData{" + for _, f := range this.RouteTablesData { + repeatedStringForRouteTablesData += strings.Replace(f.String(), "NetworkRouteTableData", "NetworkRouteTableData", 1) + "," + } + repeatedStringForRouteTablesData += "}" + s := strings.Join([]string{`&NetworkRoutesData{`, + `NetworkId:` + fmt.Sprintf("%v", this.NetworkId) + `,`, + `RouteTablesData:` + repeatedStringForRouteTablesData + `,`, + `}`, + }, "") + return s +} +func (this *SiteSummaryInfo) String() string { + if this == nil { + return "nil" + } + repeatedStringForNodeInfo := "[]*Node{" + for _, f := range this.NodeInfo { + repeatedStringForNodeInfo += strings.Replace(fmt.Sprintf("%v", f), "Node", "site.Node", 1) + "," + } + repeatedStringForNodeInfo += "}" + s := strings.Join([]string{`&SiteSummaryInfo{`, + `NodeCount:` + fmt.Sprintf("%v", this.NodeCount) + `,`, + `AvailabilityZone:` + fmt.Sprintf("%v", this.AvailabilityZone) + `,`, + `NodeInfo:` + repeatedStringForNodeInfo + `,`, + `}`, + }, "") + return s +} +func (this *NetworkSummaryInfo) String() string { + if this == nil { + return "nil" + } + repeatedStringForRouteTables := "[]*RouteTableMetaData{" + for _, f := range this.RouteTables { + repeatedStringForRouteTables += strings.Replace(f.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + "," + } + repeatedStringForRouteTables += "}" + s := strings.Join([]string{`&NetworkSummaryInfo{`, + `RouteTables:` + repeatedStringForRouteTables + `,`, + `}`, + }, "") + return s +} +func (this *SubnetSummaryInfo) String() string { + if this == nil { + return "nil" + } + repeatedStringForRouteTables := "[]*RouteTableMetaData{" + for _, f := range this.RouteTables { + repeatedStringForRouteTables += strings.Replace(f.String(), "RouteTableMetaData", "RouteTableMetaData", 1) + "," + } + repeatedStringForRouteTables += "}" + s := strings.Join([]string{`&SubnetSummaryInfo{`, + `RouteTables:` + repeatedStringForRouteTables + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeSite) String() string { + if this == nil { + return "nil" + } + repeatedStringForMetric := "[]*MetricData{" + for _, f := range this.Metric { + repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForMetric += "}" + s := strings.Join([]string{`&NodeTypeSite{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "SiteType", "SiteType", 1) + `,`, + `Metric:` + repeatedStringForMetric + `,`, + `Summary:` + strings.Replace(this.Summary.String(), "SiteSummaryInfo", "SiteSummaryInfo", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SiteMeshGroupSummaryInfo) String() string { + if this == nil { + return "nil" + } + repeatedStringForLinkStatusSummary := "[]*LinkInfoSummary{" + for _, f := range this.LinkStatusSummary { + repeatedStringForLinkStatusSummary += strings.Replace(f.String(), "LinkInfoSummary", "LinkInfoSummary", 1) + "," + } + repeatedStringForLinkStatusSummary += "}" + repeatedStringForEdgeStatusSummary := "[]*EdgeInfoSummary{" + for _, f := range this.EdgeStatusSummary { + repeatedStringForEdgeStatusSummary += strings.Replace(f.String(), "EdgeInfoSummary", "EdgeInfoSummary", 1) + "," + } + repeatedStringForEdgeStatusSummary += "}" + s := strings.Join([]string{`&SiteMeshGroupSummaryInfo{`, + `Sites:` + fmt.Sprintf("%v", this.Sites) + `,`, + `OtherConnectedSiteMeshGroupSites:` + fmt.Sprintf("%v", this.OtherConnectedSiteMeshGroupSites) + `,`, + `LinkStatusSummary:` + repeatedStringForLinkStatusSummary + `,`, + `EdgeStatusSummary:` + repeatedStringForEdgeStatusSummary + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeSiteMeshGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NodeTypeSiteMeshGroup{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "SiteMeshGroupType", "SiteMeshGroupType", 1) + `,`, + `Summary:` + strings.Replace(this.Summary.String(), "SiteMeshGroupSummaryInfo", "SiteMeshGroupSummaryInfo", 1) + `,`, + `}`, + }, "") + return s +} +func (this *DCClusterGroupSummaryInfo) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DCClusterGroupSummaryInfo{`, + `Sites:` + fmt.Sprintf("%v", this.Sites) + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeDCClusterGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NodeTypeDCClusterGroup{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "DCClusterGroupType", "DCClusterGroupType", 1) + `,`, + `Summary:` + strings.Replace(this.Summary.String(), "DCClusterGroupSummaryInfo", "DCClusterGroupSummaryInfo", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeTransitGateway) String() string { + if this == nil { + return "nil" + } + repeatedStringForMetric := "[]*MetricData{" + for _, f := range this.Metric { + repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForMetric += "}" + s := strings.Join([]string{`&NodeTypeTransitGateway{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "TransitGatewayType", "TransitGatewayType", 1) + `,`, + `Metric:` + repeatedStringForMetric + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeNetwork) String() string { + if this == nil { + return "nil" + } + repeatedStringForMetric := "[]*MetricData{" + for _, f := range this.Metric { + repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForMetric += "}" + s := strings.Join([]string{`&NodeTypeNetwork{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "NetworkType", "NetworkType", 1) + `,`, + `Metric:` + repeatedStringForMetric + `,`, + `Summary:` + strings.Replace(this.Summary.String(), "NetworkSummaryInfo", "NetworkSummaryInfo", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeSubnet) String() string { + if this == nil { + return "nil" + } + repeatedStringForMetric := "[]*MetricData{" + for _, f := range this.Metric { + repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForMetric += "}" + s := strings.Join([]string{`&NodeTypeSubnet{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "SubnetType", "SubnetType", 1) + `,`, + `Metric:` + repeatedStringForMetric + `,`, + `Summary:` + strings.Replace(this.Summary.String(), "SubnetSummaryInfo", "SubnetSummaryInfo", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NodeTypeInstance) String() string { + if this == nil { + return "nil" + } + repeatedStringForMetric := "[]*MetricData{" + for _, f := range this.Metric { + repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForMetric += "}" + s := strings.Join([]string{`&NodeTypeInstance{`, + `Info:` + strings.Replace(fmt.Sprintf("%v", this.Info), "InstanceType", "InstanceType", 1) + `,`, + `Metric:` + repeatedStringForMetric + `,`, + `}`, + }, "") + return s +} +func (this *NodeMetaData) String() string { + if this == nil { + return "nil" + } + keysForTags := make([]string, 0, len(this.Tags)) + for k, _ := range this.Tags { + keysForTags = append(keysForTags, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForTags) + mapStringForTags := "map[string]string{" + for _, k := range keysForTags { + mapStringForTags += fmt.Sprintf("%v: %v,", k, this.Tags[k]) + } + mapStringForTags += "}" + s := strings.Join([]string{`&NodeMetaData{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Description:` + fmt.Sprintf("%v", this.Description) + `,`, + `Level:` + fmt.Sprintf("%v", this.Level) + `,`, + `ProviderType:` + fmt.Sprintf("%v", this.ProviderType) + `,`, + `OwnerId:` + fmt.Sprintf("%v", this.OwnerId) + `,`, + `Tags:` + mapStringForTags + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `CloudResourceId:` + fmt.Sprintf("%v", this.CloudResourceId) + `,`, + `}`, + }, "") + return s +} +func (this *Node) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node{`, + `Id:` + fmt.Sprintf("%v", this.Id) + `,`, + `Metadata:` + strings.Replace(this.Metadata.String(), "NodeMetaData", "NodeMetaData", 1) + `,`, + `NodeType:` + fmt.Sprintf("%v", this.NodeType) + `,`, + `}`, + }, "") + return s +} +func (this *Node_Site) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_Site{`, + `Site:` + strings.Replace(fmt.Sprintf("%v", this.Site), "NodeTypeSite", "NodeTypeSite", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Node_TransitGateway) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_TransitGateway{`, + `TransitGateway:` + strings.Replace(fmt.Sprintf("%v", this.TransitGateway), "NodeTypeTransitGateway", "NodeTypeTransitGateway", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Node_Network) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_Network{`, + `Network:` + strings.Replace(fmt.Sprintf("%v", this.Network), "NodeTypeNetwork", "NodeTypeNetwork", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Node_Subnet) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_Subnet{`, + `Subnet:` + strings.Replace(fmt.Sprintf("%v", this.Subnet), "NodeTypeSubnet", "NodeTypeSubnet", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Node_Instance) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_Instance{`, + `Instance:` + strings.Replace(fmt.Sprintf("%v", this.Instance), "NodeTypeInstance", "NodeTypeInstance", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Node_SiteMeshGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_SiteMeshGroup{`, + `SiteMeshGroup:` + strings.Replace(fmt.Sprintf("%v", this.SiteMeshGroup), "NodeTypeSiteMeshGroup", "NodeTypeSiteMeshGroup", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Node_DcClusterGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Node_DcClusterGroup{`, + `DcClusterGroup:` + strings.Replace(fmt.Sprintf("%v", this.DcClusterGroup), "NodeTypeDCClusterGroup", "NodeTypeDCClusterGroup", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LinkInfo) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LinkInfo{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `SrcId:` + fmt.Sprintf("%v", this.SrcId) + `,`, + `DstId:` + fmt.Sprintf("%v", this.DstId) + `,`, + `}`, + }, "") + return s +} +func (this *LinkInfoSummary) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LinkInfoSummary{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `Count:` + fmt.Sprintf("%v", this.Count) + `,`, + `}`, + }, "") + return s +} +func (this *LinkTypeData) String() string { + if this == nil { + return "nil" + } + repeatedStringForMetric := "[]*MetricData{" + for _, f := range this.Metric { + repeatedStringForMetric += strings.Replace(f.String(), "MetricData", "MetricData", 1) + "," + } + repeatedStringForMetric += "}" + s := strings.Join([]string{`&LinkTypeData{`, + `Info:` + strings.Replace(this.Info.String(), "LinkInfo", "LinkInfo", 1) + `,`, + `Metric:` + repeatedStringForMetric + `,`, + `}`, + }, "") + return s +} +func (this *EdgeInfoSummary) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EdgeInfoSummary{`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `Count:` + fmt.Sprintf("%v", this.Count) + `,`, + `}`, + }, "") + return s +} +func (this *Edge) String() string { + if this == nil { + return "nil" + } + repeatedStringForLinks := "[]*LinkTypeData{" + for _, f := range this.Links { + repeatedStringForLinks += strings.Replace(f.String(), "LinkTypeData", "LinkTypeData", 1) + "," + } + repeatedStringForLinks += "}" + s := strings.Join([]string{`&Edge{`, + `NodeId1:` + fmt.Sprintf("%v", this.NodeId1) + `,`, + `NodeId2:` + fmt.Sprintf("%v", this.NodeId2) + `,`, + `Links:` + repeatedStringForLinks + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCustomDataApi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SiteTopologyRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SiteTopologyRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Site = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NodeId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Level", wireType) + } + m.Level = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Level |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupSiteMeshNodes", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.GroupSiteMeshNodes = bool(v != 0) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field GroupDcClusterNodes", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.GroupDcClusterNodes = bool(v != 0) + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MetricSelector == nil { + m.MetricSelector = &MetricSelector{} + } + if err := m.MetricSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SiteMeshGroupsSummaryRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SiteMeshGroupsSummaryRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SiteMeshGroupsSummaryRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SiteMeshTopologyRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SiteMeshTopologyRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SiteMeshTopologyRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SiteMeshGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SiteMeshGroup = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MetricSelector == nil { + m.MetricSelector = &MetricSelector{} + } + if err := m.MetricSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DCClusterGroupsSummaryRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DCClusterGroupsSummaryRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DCClusterGroupsSummaryRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DCClusterTopologyRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DCClusterTopologyRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DCClusterTopologyRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DcClusterGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DcClusterGroup = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MetricSelector == nil { + m.MetricSelector = &MetricSelector{} + } + if err := m.MetricSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TopologyResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TopologyResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TopologyResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Nodes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Nodes = append(m.Nodes, &Node{}) + if err := m.Nodes[len(m.Nodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Edges", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Edges = append(m.Edges, &Edge{}) + if err := m.Edges[len(m.Edges)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Step = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RouteTableRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RouteTableRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RouteTableRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RouteTableResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RouteTableResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RouteTableResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &RouteTableMetaData{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RouteTable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RouteTable == nil { + m.RouteTable = &RouteTableType{} + } + if err := m.RouteTable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SiteNetworksRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SiteNetworksRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SiteNetworksRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SiteNetworksResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SiteNetworksResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SiteNetworksResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoutesMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RoutesMetadata = append(m.RoutesMetadata, &NetworkRoutesMetaData{}) + if err := m.RoutesMetadata[len(m.RoutesMetadata)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkRouteTablesRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkRouteTablesRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkRouteTablesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Id = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RouteTableIds = append(m.RouteTableIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubnetIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubnetIds = append(m.SubnetIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubnetCidrs", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubnetCidrs = append(m.SubnetCidrs, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Regions", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Regions = append(m.Regions, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - repeatedStringForLinks += "}" - s := strings.Join([]string{`&Edge{`, - `NodeId1:` + fmt.Sprintf("%v", this.NodeId1) + `,`, - `NodeId2:` + fmt.Sprintf("%v", this.NodeId2) + `,`, - `Links:` + repeatedStringForLinks + `,`, - `Status:` + fmt.Sprintf("%v", this.Status) + `,`, - `}`, - }, "") - return s -} -func valueToStringPublicCustomDataApi(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" + + if iNdEx > l { + return io.ErrUnexpectedEOF } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) + return nil } -func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { +func (m *NetworkRouteTablesResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -7859,17 +11393,17 @@ func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SiteTopologyRequest: wiretype end group for non-group") + return fmt.Errorf("proto: NetworkRouteTablesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SiteTopologyRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: NetworkRouteTablesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RoutesData", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -7879,27 +11413,82 @@ func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthPublicCustomDataApi } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthPublicCustomDataApi } if postIndex > l { return io.ErrUnexpectedEOF } - m.Site = string(dAtA[iNdEx:postIndex]) + m.RoutesData = append(m.RoutesData, &NetworkRoutesData{}) + if err := m.RoutesData[len(m.RoutesData)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 3: + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MetricSelector) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MetricSelector: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MetricSelector: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NodeId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -7927,13 +11516,13 @@ func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.NodeId = string(dAtA[iNdEx:postIndex]) + m.StartTime = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Level", wireType) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType) } - m.Level = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -7943,56 +11532,167 @@ func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Level |= int32(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field GroupSiteMeshNodes", wireType) + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EndTime = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType == 0 { + var v MetricType + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= MetricType(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Node = append(m.Node, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.Node) == 0 { + m.Node = make([]MetricType, 0, elementCount) + } + for iNdEx < postIndex { + var v MetricType + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= MetricType(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Node = append(m.Node, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field Node", wireType) + } + case 4: + if wireType == 0 { + var v MetricType + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= MetricType(b&0x7F) << shift + if b < 0x80 { + break + } } - if iNdEx >= l { - return io.ErrUnexpectedEOF + m.Edge = append(m.Edge, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break + if packedLen < 0 { + return ErrInvalidLengthPublicCustomDataApi } - } - m.GroupSiteMeshNodes = bool(v != 0) - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field GroupDcClusterNodes", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break + var elementCount int + if elementCount != 0 && len(m.Edge) == 0 { + m.Edge = make([]MetricType, 0, elementCount) + } + for iNdEx < postIndex { + var v MetricType + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= MetricType(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Edge = append(m.Edge, v) } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field Edge", wireType) } - m.GroupDcClusterNodes = bool(v != 0) - case 7: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MetricSelector", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -8002,27 +11702,23 @@ func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthPublicCustomDataApi } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthPublicCustomDataApi } if postIndex > l { return io.ErrUnexpectedEOF } - if m.MetricSelector == nil { - m.MetricSelector = &MetricSelector{} - } - if err := m.MetricSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Step = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -8048,60 +11744,7 @@ func (m *SiteTopologyRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *SiteMeshGroupsSummaryRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SiteMeshGroupsSummaryRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SiteMeshGroupsSummaryRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SiteMeshTopologyRequest) Unmarshal(dAtA []byte) error { +func (m *MetricTypeData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8124,17 +11767,17 @@ func (m *SiteMeshTopologyRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SiteMeshTopologyRequest: wiretype end group for non-group") + return fmt.Errorf("proto: MetricTypeData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SiteMeshTopologyRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MetricTypeData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SiteMeshGroup", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -8144,27 +11787,122 @@ func (m *SiteMeshTopologyRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthPublicCustomDataApi } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthPublicCustomDataApi } if postIndex > l { return io.ErrUnexpectedEOF } - m.SiteMeshGroup = string(dAtA[iNdEx:postIndex]) + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MetricSelector", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8191,10 +11929,8 @@ func (m *SiteMeshTopologyRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MetricSelector == nil { - m.MetricSelector = &MetricSelector{} - } - if err := m.MetricSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Values = append(m.Values, &schema.MetricValue{}) + if err := m.Values[len(m.Values)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -8222,60 +11958,7 @@ func (m *SiteMeshTopologyRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *DCClusterGroupsSummaryRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: DCClusterGroupsSummaryRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: DCClusterGroupsSummaryRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *DCClusterTopologyRequest) Unmarshal(dAtA []byte) error { +func (m *MetricData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8298,17 +11981,17 @@ func (m *DCClusterTopologyRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DCClusterTopologyRequest: wiretype end group for non-group") + return fmt.Errorf("proto: MetricData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DCClusterTopologyRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MetricData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DcClusterGroup", wireType) + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) } - var stringLen uint64 + m.Type = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -8318,27 +12001,14 @@ func (m *DCClusterTopologyRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.Type |= MetricType(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DcClusterGroup = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MetricSelector", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8365,13 +12035,30 @@ func (m *DCClusterTopologyRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MetricSelector == nil { - m.MetricSelector = &MetricSelector{} - } - if err := m.MetricSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Data = append(m.Data, &MetricTypeData{}) + if err := m.Data[len(m.Data)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Unit", wireType) + } + m.Unit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Unit |= schema.UnitType(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) @@ -8396,7 +12083,7 @@ func (m *DCClusterTopologyRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *TopologyResponse) Unmarshal(dAtA []byte) error { +func (m *RouteTableMetaData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8419,17 +12106,17 @@ func (m *TopologyResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TopologyResponse: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTableMetaData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TopologyResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTableMetaData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Nodes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -8439,29 +12126,27 @@ func (m *TopologyResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthPublicCustomDataApi } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthPublicCustomDataApi } if postIndex > l { return io.ErrUnexpectedEOF } - m.Nodes = append(m.Nodes, &Node{}) - if err := m.Nodes[len(m.Nodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Edges", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8478,109 +12163,117 @@ func (m *TopologyResponse) Unmarshal(dAtA []byte) error { break } } - if msglen < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Edges = append(m.Edges, &Edge{}) - if err := m.Edges[len(m.Edges)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Tags == nil { + m.Tags = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Tags[mapkey] = mapvalue iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Step = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteTableRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteTableRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTableRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CloudResourceId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -8608,7 +12301,7 @@ func (m *RouteTableRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) + m.CloudResourceId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -8634,7 +12327,7 @@ func (m *RouteTableRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *RouteTableResponse) Unmarshal(dAtA []byte) error { +func (m *RouteTableData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8657,10 +12350,10 @@ func (m *RouteTableResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RouteTableResponse: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTableData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTableResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTableData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -8759,7 +12452,7 @@ func (m *RouteTableResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MetricSelector) Unmarshal(dAtA []byte) error { +func (m *SubnetMetaData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8782,15 +12475,15 @@ func (m *MetricSelector) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MetricSelector: wiretype end group for non-group") + return fmt.Errorf("proto: SubnetMetaData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MetricSelector: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SubnetMetaData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -8818,11 +12511,11 @@ func (m *MetricSelector) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.StartTime = string(dAtA[iNdEx:postIndex]) + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CloudResourceId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -8850,151 +12543,102 @@ func (m *MetricSelector) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.EndTime = string(dAtA[iNdEx:postIndex]) + m.CloudResourceId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: - if wireType == 0 { - var v MetricType - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= MetricType(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Node = append(m.Node, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - var elementCount int - if elementCount != 0 && len(m.Node) == 0 { - m.Node = make([]MetricType, 0, elementCount) - } - for iNdEx < postIndex { - var v MetricType - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= MetricType(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Node = append(m.Node, v) - } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field Node", wireType) + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err } - case 4: - if wireType == 0 { - var v MetricType - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= MetricType(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Edge = append(m.Edge, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomDataApi + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SubnetData) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubnetData: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubnetData: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi } - if postIndex > l { + if iNdEx >= l { return io.ErrUnexpectedEOF } - var elementCount int - if elementCount != 0 && len(m.Edge) == 0 { - m.Edge = make([]MetricType, 0, elementCount) - } - for iNdEx < postIndex { - var v MetricType - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= MetricType(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Edge = append(m.Edge, v) + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field Edge", wireType) } - case 5: + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &SubnetMetaData{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Step", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Subnet", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -9004,23 +12648,27 @@ func (m *MetricSelector) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthPublicCustomDataApi } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthPublicCustomDataApi } if postIndex > l { return io.ErrUnexpectedEOF } - m.Step = string(dAtA[iNdEx:postIndex]) + if m.Subnet == nil { + m.Subnet = &SubnetType{} + } + if err := m.Subnet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -9046,7 +12694,7 @@ func (m *MetricSelector) Unmarshal(dAtA []byte) error { } return nil } -func (m *MetricTypeData) Unmarshal(dAtA []byte) error { +func (m *NetworkRouteTableMetaData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9069,15 +12717,15 @@ func (m *MetricTypeData) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MetricTypeData: wiretype end group for non-group") + return fmt.Errorf("proto: NetworkRouteTableMetaData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MetricTypeData: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: NetworkRouteTableMetaData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9104,107 +12752,139 @@ func (m *MetricTypeData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Labels == nil { - m.Labels = make(map[string]string) + if m.RouteTableMetadata == nil { + m.RouteTableMetadata = &RouteTableMetaData{} } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + if err := m.RouteTableMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubnetMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubnetMetadata = append(m.SubnetMetadata, &SubnetMetaData{}) + if err := m.SubnetMetadata[len(m.SubnetMetadata)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkRouteTableData) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkRouteTableData: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkRouteTableData: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RouteTableData", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } } - m.Labels[mapkey] = mapvalue + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RouteTableData == nil { + m.RouteTableData = &RouteTableData{} + } + if err := m.RouteTableData.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubnetData", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9231,8 +12911,8 @@ func (m *MetricTypeData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Values = append(m.Values, &schema.MetricValue{}) - if err := m.Values[len(m.Values)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.SubnetData = append(m.SubnetData, &SubnetData{}) + if err := m.SubnetData[len(m.SubnetData)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -9260,7 +12940,7 @@ func (m *MetricTypeData) Unmarshal(dAtA []byte) error { } return nil } -func (m *MetricData) Unmarshal(dAtA []byte) error { +func (m *NetworkRoutesMetaData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9283,17 +12963,17 @@ func (m *MetricData) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MetricData: wiretype end group for non-group") + return fmt.Errorf("proto: NetworkRoutesMetaData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MetricData: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: NetworkRoutesMetaData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NetworkId", wireType) } - m.Type = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowPublicCustomDataApi @@ -9303,14 +12983,27 @@ func (m *MetricData) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Type |= MetricType(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NetworkId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTablesMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9337,30 +13030,11 @@ func (m *MetricData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Data = append(m.Data, &MetricTypeData{}) - if err := m.Data[len(m.Data)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RouteTablesMetadata = append(m.RouteTablesMetadata, &NetworkRouteTableMetaData{}) + if err := m.RouteTablesMetadata[len(m.RouteTablesMetadata)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Unit", wireType) - } - m.Unit = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Unit |= schema.UnitType(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) @@ -9385,7 +13059,7 @@ func (m *MetricData) Unmarshal(dAtA []byte) error { } return nil } -func (m *RouteTableMetaData) Unmarshal(dAtA []byte) error { +func (m *NetworkRoutesData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9408,15 +13082,15 @@ func (m *RouteTableMetaData) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RouteTableMetaData: wiretype end group for non-group") + return fmt.Errorf("proto: NetworkRoutesData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTableMetaData: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: NetworkRoutesData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NetworkId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -9444,11 +13118,11 @@ func (m *RouteTableMetaData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) + m.NetworkId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteTablesData", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9475,135 +13149,10 @@ func (m *RouteTableMetaData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Tags == nil { - m.Tags = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Tags[mapkey] = mapvalue - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CloudResourceId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowPublicCustomDataApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthPublicCustomDataApi - } - if postIndex > l { - return io.ErrUnexpectedEOF + m.RouteTablesData = append(m.RouteTablesData, &NetworkRouteTableData{}) + if err := m.RouteTablesData[len(m.RouteTablesData)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.CloudResourceId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -9709,6 +13258,40 @@ func (m *SiteSummaryInfo) Unmarshal(dAtA []byte) error { } m.AvailabilityZone = append(m.AvailabilityZone, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeInfo", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomDataApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomDataApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NodeInfo = append(m.NodeInfo, &site.Node{}) + if err := m.NodeInfo[len(m.NodeInfo)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipPublicCustomDataApi(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/topology/public_custom_data_api.pb.gw.go b/pbgo/extschema/schema/topology/public_custom_data_api.pb.gw.go index 8224b3a65..6015f255f 100644 --- a/pbgo/extschema/schema/topology/public_custom_data_api.pb.gw.go +++ b/pbgo/extschema/schema/topology/public_custom_data_api.pb.gw.go @@ -328,6 +328,129 @@ func local_request_CustomDataAPI_GetRouteTable_0(ctx context.Context, marshaler } +func request_CustomDataAPI_GetSiteNetworks_0(ctx context.Context, marshaler runtime.Marshaler, client CustomDataAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SiteNetworksRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := client.GetSiteNetworks(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomDataAPI_GetSiteNetworks_0(ctx context.Context, marshaler runtime.Marshaler, server CustomDataAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SiteNetworksRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := server.GetSiteNetworks(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_CustomDataAPI_GetNetworkRouteTables_0 = &utilities.DoubleArray{Encoding: map[string]int{"id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_CustomDataAPI_GetNetworkRouteTables_0(ctx context.Context, marshaler runtime.Marshaler, client CustomDataAPIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq NetworkRouteTablesRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_CustomDataAPI_GetNetworkRouteTables_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.GetNetworkRouteTables(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CustomDataAPI_GetNetworkRouteTables_0(ctx context.Context, marshaler runtime.Marshaler, server CustomDataAPIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq NetworkRouteTablesRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } + + protoReq.Id, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_CustomDataAPI_GetNetworkRouteTables_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.GetNetworkRouteTables(ctx, &protoReq) + return msg, metadata, err + +} + // RegisterCustomDataAPIHandlerServer registers the http handlers for service CustomDataAPI to "mux". // UnaryRPC :call CustomDataAPIServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -453,6 +576,46 @@ func RegisterCustomDataAPIHandlerServer(ctx context.Context, mux *runtime.ServeM }) + mux.Handle("GET", pattern_CustomDataAPI_GetSiteNetworks_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomDataAPI_GetSiteNetworks_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomDataAPI_GetSiteNetworks_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_CustomDataAPI_GetNetworkRouteTables_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CustomDataAPI_GetNetworkRouteTables_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomDataAPI_GetNetworkRouteTables_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -614,6 +777,46 @@ func RegisterCustomDataAPIHandlerClient(ctx context.Context, mux *runtime.ServeM }) + mux.Handle("GET", pattern_CustomDataAPI_GetSiteNetworks_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomDataAPI_GetSiteNetworks_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomDataAPI_GetSiteNetworks_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_CustomDataAPI_GetNetworkRouteTables_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CustomDataAPI_GetNetworkRouteTables_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_CustomDataAPI_GetNetworkRouteTables_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -629,6 +832,10 @@ var ( pattern_CustomDataAPI_DCClusterTopology_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "system", "topology", "dc_cluster_group"}, "", runtime.AssumeColonVerbOpt(false))) pattern_CustomDataAPI_GetRouteTable_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 1, 0, 4, 1, 5, 5}, []string{"public", "namespaces", "system", "topology", "route_table", "name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomDataAPI_GetSiteNetworks_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 1, 0, 4, 1, 5, 5, 2, 6}, []string{"public", "namespaces", "system", "topology", "site", "name", "networks"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_CustomDataAPI_GetNetworkRouteTables_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 1, 0, 4, 1, 5, 5, 2, 6}, []string{"public", "namespaces", "system", "topology", "network", "id", "route_tables"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( @@ -643,4 +850,8 @@ var ( forward_CustomDataAPI_DCClusterTopology_0 = runtime.ForwardResponseMessage forward_CustomDataAPI_GetRouteTable_0 = runtime.ForwardResponseMessage + + forward_CustomDataAPI_GetSiteNetworks_0 = runtime.ForwardResponseMessage + + forward_CustomDataAPI_GetNetworkRouteTables_0 = runtime.ForwardResponseMessage ) diff --git a/pbgo/extschema/schema/topology/public_custom_data_api.vesapi.go b/pbgo/extschema/schema/topology/public_custom_data_api.vesapi.go index 4baf1318b..c5c95a424 100644 --- a/pbgo/extschema/schema/topology/public_custom_data_api.vesapi.go +++ b/pbgo/extschema/schema/topology/public_custom_data_api.vesapi.go @@ -52,6 +52,15 @@ func (c *CustomDataAPIGrpcClient) doRPCDCClusterTopology(ctx context.Context, ya return rsp, err } +func (c *CustomDataAPIGrpcClient) doRPCGetNetworkRouteTables(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &NetworkRouteTablesRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.topology.NetworkRouteTablesRequest", yamlReq) + } + rsp, err := c.grpcClient.GetNetworkRouteTables(ctx, req, opts...) + return rsp, err +} + func (c *CustomDataAPIGrpcClient) doRPCGetRouteTable(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { req := &RouteTableRequest{} if err := codec.FromYAML(yamlReq, req); err != nil { @@ -61,6 +70,15 @@ func (c *CustomDataAPIGrpcClient) doRPCGetRouteTable(ctx context.Context, yamlRe return rsp, err } +func (c *CustomDataAPIGrpcClient) doRPCGetSiteNetworks(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { + req := &SiteNetworksRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.topology.SiteNetworksRequest", yamlReq) + } + rsp, err := c.grpcClient.GetSiteNetworks(ctx, req, opts...) + return rsp, err +} + func (c *CustomDataAPIGrpcClient) doRPCSiteMeshGroupsSummary(ctx context.Context, yamlReq string, opts ...grpc.CallOption) (proto.Message, error) { req := &SiteMeshGroupsSummaryRequest{} if err := codec.FromYAML(yamlReq, req); err != nil { @@ -122,8 +140,12 @@ func NewCustomDataAPIGrpcClient(cc *grpc.ClientConn) server.CustomClient { rpcFns["DCClusterTopology"] = ccl.doRPCDCClusterTopology + rpcFns["GetNetworkRouteTables"] = ccl.doRPCGetNetworkRouteTables + rpcFns["GetRouteTable"] = ccl.doRPCGetRouteTable + rpcFns["GetSiteNetworks"] = ccl.doRPCGetSiteNetworks + rpcFns["SiteMeshGroupsSummary"] = ccl.doRPCSiteMeshGroupsSummary rpcFns["SiteMeshTopology"] = ccl.doRPCSiteMeshTopology @@ -309,6 +331,101 @@ func (c *CustomDataAPIRestClient) doRPCDCClusterTopology(ctx context.Context, ca return pbRsp, nil } +func (c *CustomDataAPIRestClient) doRPCGetNetworkRouteTables(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &NetworkRouteTablesRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.topology.NetworkRouteTablesRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("id", fmt.Sprintf("%v", req.Id)) + for _, item := range req.Regions { + q.Add("regions", fmt.Sprintf("%v", item)) + } + for _, item := range req.RouteTableIds { + q.Add("route_table_ids", fmt.Sprintf("%v", item)) + } + for _, item := range req.SubnetCidrs { + q.Add("subnet_cidrs", fmt.Sprintf("%v", item)) + } + for _, item := range req.SubnetIds { + q.Add("subnet_ids", fmt.Sprintf("%v", item)) + } + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &NetworkRouteTablesResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.topology.NetworkRouteTablesResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + func (c *CustomDataAPIRestClient) doRPCGetRouteTable(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") @@ -392,6 +509,89 @@ func (c *CustomDataAPIRestClient) doRPCGetRouteTable(ctx context.Context, callOp return pbRsp, nil } +func (c *CustomDataAPIRestClient) doRPCGetSiteNetworks(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { + if callOpts.URI == "" { + return nil, fmt.Errorf("Error, URI should be specified, got empty") + } + url := fmt.Sprintf("%s%s", c.baseURL, callOpts.URI) + + yamlReq := callOpts.YAMLReq + req := &SiteNetworksRequest{} + if err := codec.FromYAML(yamlReq, req); err != nil { + return nil, fmt.Errorf("YAML Request %s is not of type *ves.io.schema.topology.SiteNetworksRequest: %s", yamlReq, err) + } + + var hReq *http.Request + hm := strings.ToLower(callOpts.HTTPMethod) + switch hm { + case "post", "put": + jsn, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "Custom RestClient converting YAML to JSON") + } + var op string + if hm == "post" { + op = http.MethodPost + } else { + op = http.MethodPut + } + newReq, err := http.NewRequest(op, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, errors.Wrapf(err, "Creating new HTTP %s request for custom API", op) + } + hReq = newReq + case "get": + newReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP GET request for custom API") + } + hReq = newReq + q := hReq.URL.Query() + _ = q + q.Add("name", fmt.Sprintf("%v", req.Name)) + + hReq.URL.RawQuery += q.Encode() + case "delete": + newReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return nil, errors.Wrap(err, "Creating new HTTP DELETE request for custom API") + } + hReq = newReq + default: + return nil, fmt.Errorf("Error, invalid/empty HTTPMethod(%s) specified, should be POST|DELETE|GET", callOpts.HTTPMethod) + } + hReq = hReq.WithContext(ctx) + hReq.Header.Set("Content-Type", "application/json") + client.AddHdrsToReq(callOpts.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient") + } + defer rsp.Body.Close() + + // checking whether the status code is a successful status code (2xx series) + if rsp.StatusCode < 200 || rsp.StatusCode > 299 { + body, err := io.ReadAll(rsp.Body) + return nil, fmt.Errorf("Unsuccessful custom API %s on %s, status code %d, body %s, err %s", callOpts.HTTPMethod, callOpts.URI, rsp.StatusCode, body, err) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "Custom API RestClient read body") + } + pbRsp := &SiteNetworksResponse{} + if err := codec.FromJSON(string(body), pbRsp); err != nil { + return nil, errors.Wrapf(err, "JSON Response %s is not of type *ves.io.schema.topology.SiteNetworksResponse", body) + + } + if callOpts.OutCallResponse != nil { + callOpts.OutCallResponse.ProtoMsg = pbRsp + callOpts.OutCallResponse.JSON = string(body) + } + return pbRsp, nil +} + func (c *CustomDataAPIRestClient) doRPCSiteMeshGroupsSummary(ctx context.Context, callOpts *server.CustomCallOpts) (proto.Message, error) { if callOpts.URI == "" { return nil, fmt.Errorf("Error, URI should be specified, got empty") @@ -674,8 +874,12 @@ func NewCustomDataAPIRestClient(baseURL string, hc http.Client) server.CustomCli rpcFns["DCClusterTopology"] = ccl.doRPCDCClusterTopology + rpcFns["GetNetworkRouteTables"] = ccl.doRPCGetNetworkRouteTables + rpcFns["GetRouteTable"] = ccl.doRPCGetRouteTable + rpcFns["GetSiteNetworks"] = ccl.doRPCGetSiteNetworks + rpcFns["SiteMeshGroupsSummary"] = ccl.doRPCSiteMeshGroupsSummary rpcFns["SiteMeshTopology"] = ccl.doRPCSiteMeshTopology @@ -702,10 +906,18 @@ func (c *customDataAPIInprocClient) DCClusterTopology(ctx context.Context, in *D ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.topology.CustomDataAPI.DCClusterTopology") return c.CustomDataAPIServer.DCClusterTopology(ctx, in) } +func (c *customDataAPIInprocClient) GetNetworkRouteTables(ctx context.Context, in *NetworkRouteTablesRequest, opts ...grpc.CallOption) (*NetworkRouteTablesResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.topology.CustomDataAPI.GetNetworkRouteTables") + return c.CustomDataAPIServer.GetNetworkRouteTables(ctx, in) +} func (c *customDataAPIInprocClient) GetRouteTable(ctx context.Context, in *RouteTableRequest, opts ...grpc.CallOption) (*RouteTableResponse, error) { ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.topology.CustomDataAPI.GetRouteTable") return c.CustomDataAPIServer.GetRouteTable(ctx, in) } +func (c *customDataAPIInprocClient) GetSiteNetworks(ctx context.Context, in *SiteNetworksRequest, opts ...grpc.CallOption) (*SiteNetworksResponse, error) { + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.topology.CustomDataAPI.GetSiteNetworks") + return c.CustomDataAPIServer.GetSiteNetworks(ctx, in) +} func (c *customDataAPIInprocClient) SiteMeshGroupsSummary(ctx context.Context, in *SiteMeshGroupsSummaryRequest, opts ...grpc.CallOption) (*TopologyResponse, error) { ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.topology.CustomDataAPI.SiteMeshGroupsSummary") return c.CustomDataAPIServer.SiteMeshGroupsSummary(ctx, in) @@ -838,6 +1050,55 @@ func (s *customDataAPISrv) DCClusterTopology(ctx context.Context, in *DCClusterT return rsp, nil } +func (s *customDataAPISrv) GetNetworkRouteTables(ctx context.Context, in *NetworkRouteTablesRequest) (*NetworkRouteTablesResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.topology.CustomDataAPI") + cah, ok := ah.(CustomDataAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomDataAPIServer", ah) + } + + var ( + rsp *NetworkRouteTablesResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.topology.NetworkRouteTablesRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomDataAPI.GetNetworkRouteTables' operation on 'topology'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.topology.CustomDataAPI.GetNetworkRouteTables"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.GetNetworkRouteTables(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.topology.NetworkRouteTablesResponse", rsp)...) + + return rsp, nil +} func (s *customDataAPISrv) GetRouteTable(ctx context.Context, in *RouteTableRequest) (*RouteTableResponse, error) { ah := s.svc.GetAPIHandler("ves.io.schema.topology.CustomDataAPI") cah, ok := ah.(CustomDataAPIServer) @@ -887,6 +1148,55 @@ func (s *customDataAPISrv) GetRouteTable(ctx context.Context, in *RouteTableRequ return rsp, nil } +func (s *customDataAPISrv) GetSiteNetworks(ctx context.Context, in *SiteNetworksRequest) (*SiteNetworksResponse, error) { + ah := s.svc.GetAPIHandler("ves.io.schema.topology.CustomDataAPI") + cah, ok := ah.(CustomDataAPIServer) + if !ok { + return nil, fmt.Errorf("ah %v is not of type *CustomDataAPIServer", ah) + } + + var ( + rsp *SiteNetworksResponse + err error + ) + + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.svc, "ves.io.schema.topology.SiteNetworksRequest", in) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + userMsg := "The 'CustomDataAPI.GetSiteNetworks' operation on 'topology'" + if err == nil { + userMsg += " was successfully performed." + } else { + userMsg += " failed to be performed." + } + server.AddUserMsgToAPIAudit(ctx, userMsg) + }() + + if err := svcfw.FillOneofDefaultChoice(ctx, s.svc, in); err != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + + if s.svc.Config().EnableAPIValidation { + if rvFn := s.svc.GetRPCValidator("ves.io.schema.topology.CustomDataAPI.GetSiteNetworks"); rvFn != nil { + if verr := rvFn(ctx, in); verr != nil { + err = server.MaybePublicRestError(ctx, errors.Wrapf(verr, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + + rsp, err = cah.GetSiteNetworks(ctx, in) + if err != nil { + return rsp, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.svc, "ves.io.schema.topology.SiteNetworksResponse", rsp)...) + + return rsp, nil +} func (s *customDataAPISrv) SiteMeshGroupsSummary(ctx context.Context, in *SiteMeshGroupsSummaryRequest) (*TopologyResponse, error) { ah := s.svc.GetAPIHandler("ves.io.schema.topology.CustomDataAPI") cah, ok := ah.(CustomDataAPIServer) @@ -1224,6 +1534,138 @@ var CustomDataAPISwaggerJSON string = `{ "x-ves-proto-service": "ves.io.schema.topology.CustomDataAPI", "x-ves-proto-service-type": "CUSTOM_PUBLIC" }, + "/public/namespaces/system/topology/network/{id}/route_tables": { + "get": { + "summary": "Get Network Route Tables", + "description": "Gets Route Tables Associated with a Network", + "operationId": "ves.io.schema.topology.CustomDataAPI.GetNetworkRouteTables", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/topologyNetworkRouteTablesResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "id", + "description": "Id\n\nx-example: \"vpc-1234567898\"\nx-required\nNetwork Id", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Id" + }, + { + "name": "route_table_ids", + "description": "x-example: \"rtb-1234567898, rtb-2345678901\"\nRoute Table Ids used as filters", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Route Table Ids" + }, + { + "name": "subnet_ids", + "description": "x-example: \"sub-1234567898, sub-2345678901\"\nSubnet Ids used as filters", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Subnet Ids" + }, + { + "name": "subnet_cidrs", + "description": "x-example: \"10.10.0.0/16, 10.22.0.0/16\"\nSubnet cidrs used as filters", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Subnet Cidrs" + }, + { + "name": "regions", + "description": "x-example: \"us-west1, us-east1\"\nRegions used as filters", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Regions" + } + ], + "tags": [ + "CustomDataAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-topology-customdataapi-getnetworkroutetables" + }, + "x-ves-proto-rpc": "ves.io.schema.topology.CustomDataAPI.GetNetworkRouteTables" + }, + "x-displayname": "Topology APIs", + "x-ves-proto-service": "ves.io.schema.topology.CustomDataAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, "/public/namespaces/system/topology/route_table/{name}": { "get": { "summary": "Get Route Table", @@ -1308,6 +1750,90 @@ var CustomDataAPISwaggerJSON string = `{ "x-ves-proto-service": "ves.io.schema.topology.CustomDataAPI", "x-ves-proto-service-type": "CUSTOM_PUBLIC" }, + "/public/namespaces/system/topology/site/{name}/networks": { + "get": { + "summary": "Get Site Networks", + "description": "Gets Networks Associated to Site", + "operationId": "ves.io.schema.topology.CustomDataAPI.GetSiteNetworks", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/topologySiteNetworksResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "name", + "description": "Name\n\nx-required\nx-example: \"site-1\"\nSite name", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + } + ], + "tags": [ + "CustomDataAPI" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-topology-customdataapi-getsitenetworks" + }, + "x-ves-proto-rpc": "ves.io.schema.topology.CustomDataAPI.GetSiteNetworks" + }, + "x-displayname": "Topology APIs", + "x-ves-proto-service": "ves.io.schema.topology.CustomDataAPI", + "x-ves-proto-service-type": "CUSTOM_PUBLIC" + }, "/public/namespaces/system/topology/site/{site}": { "post": { "summary": "Site Topology", @@ -1625,19 +2151,102 @@ var CustomDataAPISwaggerJSON string = `{ "x-displayname": "Namespace", "x-ves-example": "ns1" }, - "tenant": { + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaIpSubnetType": { + "type": "object", + "description": "IP Address used to specify an IPv4 or IPv6 subnet addresses", + "title": "IP Subnet", + "x-displayname": "IP Subnet", + "x-ves-displayorder": "3", + "x-ves-oneof-field-ver": "[\"ipv4\",\"ipv6\"]", + "x-ves-proto-message": "ves.io.schema.IpSubnetType", + "properties": { + "ipv4": { + "description": "Exclusive with [ipv6]\n IPv4 Subnet Address", + "title": "IPv4 Subnet", + "$ref": "#/definitions/schemaIpv4SubnetType", + "x-displayname": "IPv4 Subnet" + }, + "ipv6": { + "description": "Exclusive with [ipv4]\n IPv6 Subnet Address", + "title": "IPv6 Subnet", + "$ref": "#/definitions/schemaIpv6SubnetType", + "x-displayname": "IPv6 Subnet" + } + } + }, + "schemaIpv4SubnetType": { + "type": "object", + "description": "IPv4 subnets specified as prefix and prefix-length. Prefix length must be \u003c= 32", + "title": "IPv4 Subnet", + "x-displayname": "IPv4 Subnet", + "x-ves-proto-message": "ves.io.schema.Ipv4SubnetType", + "properties": { + "plen": { + "type": "integer", + "description": " Prefix-length of the IPv4 subnet. Must be \u003c= 32\n\nExample: - \"24\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 32\n", + "title": "Prefix Length", + "format": "int64", + "x-displayname": "Prefix Length", + "x-ves-example": "24", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "32" + } + }, + "prefix": { "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" + "description": " Prefix part of the IPv4 subnet in string form with dot-decimal notation\n\nExample: - \"192.168.1.0\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "Prefix", + "x-displayname": "Prefix", + "x-ves-example": "192.168.1.0", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + } + } + }, + "schemaIpv6SubnetType": { + "type": "object", + "description": "IPv6 subnets specified as prefix and prefix-length. prefix-legnth must be \u003c= 128", + "title": "IPv6 Subnet", + "x-displayname": "IPv6 Subnet", + "x-ves-proto-message": "ves.io.schema.Ipv6SubnetType", + "properties": { + "plen": { + "type": "integer", + "description": " Prefix length of the IPv6 subnet. Must be \u003c= 128\n\nExample: - \"38\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 128\n", + "title": "Prefix length", + "format": "int64", + "x-displayname": "Prefix Length", + "x-ves-example": "38", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "128" + } }, - "uid": { + "prefix": { "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + "description": " Prefix part of the IPv6 subnet given in form of string.\n IPv6 address must be specified as hexadecimal numbers separated by ':'\n e.g. \"2001:db8:0:0:0:2:0:0\"\n The address can be compacted by suppressing zeros\n e.g. \"2001:db8::2::\"\n\nExample: - \"2001:db8:0:0:0:0:2:0\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "Prefix", + "x-displayname": "Prefix", + "x-ves-example": "2001:db8:0:0:0:0:2:0", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } } } }, @@ -1759,6 +2368,73 @@ var CustomDataAPISwaggerJSON string = `{ "x-displayname": "Unit", "x-ves-proto-enum": "ves.io.schema.UnitType" }, + "schemaVirtualNetworkType": { + "type": "string", + "description": "Different types of virtual networks understood by the system\n\nVirtual-network of type VIRTUAL_NETWORK_SITE_LOCAL provides connectivity to public (outside) network.\nThis is an insecure network and is connected to public internet via NAT Gateways/firwalls\nVirtual-network of this type is local to every site. Two virtual networks of this type on different\nsites are neither related nor connected.\n\nConstraints:\nThere can be atmost one virtual network of this type in a given site.\nThis network type is supported on CE sites. This network is created automatically and present on all sites\nVirtual-network of type VIRTUAL_NETWORK_SITE_LOCAL_INSIDE is a private network inside site.\nIt is a secure network and is not connected to public network.\nVirtual-network of this type is local to every site. Two virtual networks of this type on different\nsites are neither related nor connected.\n\nConstraints:\nThere can be atmost one virtual network of this type in a given site.\nThis network type is supported on CE sites. This network is created during provisioning of site\nUser defined per-site virtual network. Scope of this virtual network is limited to the site.\nThis is not yet supported\nVirtual-network of type VIRTUAL_NETWORK_PUBLIC directly conects to the public internet.\nVirtual-network of this type is local to every site. Two virtual networks of this type on different sites are neither related nor connected.\n\nConstraints:\nThere can be atmost one virtual network of this type in a given site.\nThis network type is supported on RE sites only\nIt is an internally created by the system. They must not be created by user\nVirtual Neworks with global scope across different sites in F5XC domain.\nAn example global virtual-network called \"AIN Network\" is created for every tenant.\nfor volterra fabric\n\nConstraints:\nIt is currently only supported as internally created by the system.\nvK8s service network for a given tenant. Used to advertise a virtual host only to vk8s pods for that tenant\nConstraints:\nIt is an internally created by the system. Must not be created by user\nVER internal network for the site. It can only be used for virtual hosts with SMA_PROXY type proxy\nConstraints:\nIt is an internally created by the system. Must not be created by user\nVirtual-network of type VIRTUAL_NETWORK_SITE_LOCAL_INSIDE_OUTSIDE represents both\nVIRTUAL_NETWORK_SITE_LOCAL and VIRTUAL_NETWORK_SITE_LOCAL_INSIDE\n\nConstraints:\nThis network type is only meaningful in an advertise policy\nWhen virtual-network of type VIRTUAL_NETWORK_IP_AUTO is selected for\nan endpoint, VER will try to determine the network based on the provided\nIP address\n\nConstraints:\nThis network type is only meaningful in an endpoint\n\nVoltADN Private Network is used on volterra RE(s) to connect to customer private networks\nThis network is created by opening a support ticket\n\nThis network is per site srv6 network\nVER IP Fabric network for the site.\nThis Virtual network type is used for exposing virtual host on IP Fabric network on the VER site or\nfor endpoint in IP Fabric network\nConstraints:\nIt is an internally created by the system. Must not be created by user\nNetwork internally created for a segment\nConstraints:\nIt is an internally created by the system. Must not be created by user", + "title": "VirtualNetworkType", + "enum": [ + "VIRTUAL_NETWORK_SITE_LOCAL", + "VIRTUAL_NETWORK_SITE_LOCAL_INSIDE", + "VIRTUAL_NETWORK_PER_SITE", + "VIRTUAL_NETWORK_PUBLIC", + "VIRTUAL_NETWORK_GLOBAL", + "VIRTUAL_NETWORK_SITE_SERVICE", + "VIRTUAL_NETWORK_VER_INTERNAL", + "VIRTUAL_NETWORK_SITE_LOCAL_INSIDE_OUTSIDE", + "VIRTUAL_NETWORK_IP_AUTO", + "VIRTUAL_NETWORK_VOLTADN_PRIVATE_NETWORK", + "VIRTUAL_NETWORK_SRV6_NETWORK", + "VIRTUAL_NETWORK_IP_FABRIC", + "VIRTUAL_NETWORK_SEGMENT" + ], + "default": "VIRTUAL_NETWORK_SITE_LOCAL", + "x-displayname": "Virtual Network Type", + "x-ves-proto-enum": "ves.io.schema.VirtualNetworkType" + }, + "schemasiteLinkType": { + "type": "string", + "description": "Link type of interface determined operationally\n\nLink type unknown\nLink type ethernet\nWiFi link of type 802.11ac\nWiFi link of type 802.11bgn\nLink type 4G\nWiFi link\nWan link", + "title": "Link type", + "enum": [ + "LINK_TYPE_UNKNOWN", + "LINK_TYPE_ETHERNET", + "LINK_TYPE_WIFI_802_11AC", + "LINK_TYPE_WIFI_802_11BGN", + "LINK_TYPE_4G", + "LINK_TYPE_WIFI", + "LINK_TYPE_WAN" + ], + "default": "LINK_TYPE_UNKNOWN", + "x-displayname": "Link type", + "x-ves-proto-enum": "ves.io.schema.site.LinkType" + }, + "schemasiteNode": { + "type": "object", + "description": "Node Information for connectivity across sites.", + "title": "Node", + "x-displayname": "Node", + "x-ves-proto-message": "ves.io.schema.site.Node", + "properties": { + "name": { + "type": "string", + "description": " Name of the master/main node on the site.", + "title": "name", + "x-displayname": "Node name" + }, + "sli_address": { + "type": "string", + "description": " Site Local Inside IP address.", + "title": "sli_address", + "x-displayname": "Site Local Inside IP addresses" + }, + "slo_address": { + "type": "string", + "description": " Site Local Outside IP address.", + "title": "slo_address", + "x-displayname": "Site Local Outside IP addresses" + } + } + }, "schemasiteSiteType": { "type": "string", "description": "Site Type which can either RE or CE\n\nInvalid type of site\nRegional Edge site\nCustomer Edge site", @@ -1992,6 +2668,12 @@ var CustomDataAPISwaggerJSON string = `{ "x-displayname": "site", "x-ves-proto-message": "ves.io.schema.topology.SiteType", "properties": { + "app_type": { + "description": " Site App Type", + "title": "Site App type", + "$ref": "#/definitions/topologySiteAppTypeEnum", + "x-displayname": "Site App type" + }, "dc_cluster_group": { "type": "array", "description": " Reference to the DC Cluster group", @@ -2001,6 +2683,12 @@ var CustomDataAPISwaggerJSON string = `{ }, "x-displayname": "DC Cluster Group" }, + "gateway_type": { + "description": " Information related to the site provider", + "title": "Provider Info", + "$ref": "#/definitions/topologyGatewayTypeEnum", + "x-displayname": "Provider Info" + }, "network": { "type": "array", "description": " Reference to the network.", @@ -2073,6 +2761,166 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "siteActiveState": { + "type": "string", + "description": "Active/Backup state for the interface\n\nUnknown state\nInterface in active state\nInterface in backup state", + "title": "Active State", + "enum": [ + "STATE_UNKNOWN", + "STATE_ACTIVE", + "STATE_BACKUP" + ], + "default": "STATE_UNKNOWN", + "x-displayname": "Active State", + "x-ves-proto-enum": "ves.io.schema.site.ActiveState" + }, + "siteAddressMode": { + "type": "string", + "description": "AddressMode identifies the mode of address assignment on an interface\n\n - STATIC: Static\n\nInterface Address is assigned statically\n - DHCP: DHCP\n\nInterface Address is obtained via DHCP", + "title": "Interface Address Mode", + "enum": [ + "STATIC", + "DHCP" + ], + "default": "STATIC", + "x-displayname": "AddressMode", + "x-ves-proto-enum": "ves.io.schema.site.AddressMode" + }, + "siteBondMembersType": { + "type": "object", + "description": "BondMembersType represents the bond interface members along with the corresponding link state", + "title": "Bond Interface Members", + "x-displayname": "Bond Interface Members", + "x-ves-proto-message": "ves.io.schema.site.BondMembersType", + "properties": { + "link_speed": { + "type": "integer", + "description": " Link speed of Bond Interface Member in Mbps", + "title": "Link Speed\nx-displayName: \"Link Speed in Mbps\"\nLink speed of Bond Interface Member in Mbps", + "format": "int64", + "x-displayname": "Link Speed in Mbps" + }, + "link_state": { + "type": "boolean", + "description": " Link state of Bond Interface Member", + "title": "Link State\nx-displayName: \"Link State\"\nLink state of Bond Interface Member", + "format": "boolean", + "x-displayname": "Link State" + }, + "name": { + "type": "string", + "description": " Name of the Bond Interface Member", + "title": "Name\nx-displayName: \"Name\"\nName of the Bond Interface Member", + "x-displayname": "Name" + } + } + }, + "siteInterfaceStatus": { + "type": "object", + "description": "Status of Interfaces in ver", + "title": "Interface Status", + "x-displayname": "Interface Status", + "x-ves-proto-message": "ves.io.schema.site.InterfaceStatus", + "properties": { + "active_state": { + "description": " Active state for the interface", + "title": "Active-Backup status\nx-displayName: \"Active/Backup status\"\nActive state for the interface", + "$ref": "#/definitions/siteActiveState", + "x-displayname": "Active/Backup status" + }, + "bond_members": { + "type": "array", + "description": " Members of the Bond interface along with the corresponding link state", + "title": "Bond Interface Members\nx-displayName: \"Bond Members\"\nMembers of the Bond interface along with the corresponding link state", + "items": { + "$ref": "#/definitions/siteBondMembersType" + }, + "x-displayname": "Bond Members" + }, + "dhcp_server": { + "type": "boolean", + "description": " Indicate if DHCP server is configured on the interface", + "title": "DHCP Server", + "format": "boolean", + "x-displayname": "DHCP Server" + }, + "ip": { + "description": " IP address of interface", + "title": "IP subnet", + "$ref": "#/definitions/schemaIpSubnetType", + "x-displayname": "IP Subnet" + }, + "ip_mode": { + "description": " Mode of address assignment on the interface", + "title": "IP Mode", + "$ref": "#/definitions/siteAddressMode", + "x-displayname": "IP Mode" + }, + "ipv6": { + "description": " IPv6 address of interface", + "title": "IPv6 subnet", + "$ref": "#/definitions/schemaIpSubnetType", + "x-displayname": "IPv6 Subnet" + }, + "link_quality": { + "description": " Link quality for the interface", + "title": "Link quality status\nx-displayName: \"Link Quality\"\nLink quality for the interface", + "$ref": "#/definitions/siteLinkQuality", + "x-displayname": "Link Quality" + }, + "link_state": { + "type": "boolean", + "description": " Link State for the interface", + "title": "Link State\nx-displayName: \"Link State\"\nLink State for the interface", + "format": "boolean", + "x-displayname": "Link State" + }, + "link_type": { + "description": " Link type for the interface", + "title": "Link type\nx-displayName: \"Link type\"\nLink type for the interface", + "$ref": "#/definitions/schemasiteLinkType", + "x-displayname": "Link type" + }, + "mac": { + "type": "string", + "description": " Mac Address of interface", + "title": "Mac Address", + "x-displayname": "Mac Address" + }, + "name": { + "type": "string", + "description": " Name of interface", + "title": "Name", + "x-displayname": "Name" + }, + "network_name": { + "type": "string", + "description": " Name of Virtual Network to which the interface belongs", + "title": "Virtual Network Name", + "x-displayname": "Virtual Network Name" + }, + "network_type": { + "description": " Virtual Network Type of interface", + "title": "Virtual Network Type", + "$ref": "#/definitions/schemaVirtualNetworkType", + "x-displayname": "Virtual Network Type" + } + } + }, + "siteLinkQuality": { + "type": "string", + "description": "Link quality determined by VER using different probes\n\nUnknown quality\nLink quality is good\nLink quality is poor\nQuality disabled", + "title": "Link quality", + "enum": [ + "QUALITY_UNKNOWN", + "QUALITY_GOOD", + "QUALITY_POOR", + "QUALITY_DISABLED" + ], + "default": "QUALITY_UNKNOWN", + "x-displayname": "Link quality", + "x-ves-proto-enum": "ves.io.schema.site.LinkQuality" + }, "site_mesh_groupFullMeshGroupType": { "type": "object", "description": "Details of Full Mesh Group Type", @@ -2149,6 +2997,22 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologyAWSRouteAttributes": { + "type": "object", + "description": "Route attributes specific to AWS.", + "title": "AWSRouteAttributes", + "x-displayname": "AWS Route Attributes", + "x-ves-proto-message": "ves.io.schema.topology.AWSRouteAttributes", + "properties": { + "propagated": { + "type": "boolean", + "description": "Is route propagated\n\nExample: - false-", + "title": "Propagated", + "format": "boolean", + "x-displayname": "Propagated" + } + } + }, "topologyAddressInfoType": { "type": "object", "description": "Address with additional information", @@ -2177,6 +3041,23 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologyAzureResourceGroupInfo": { + "type": "object", + "description": "x-displayName: \"Azure Resource Group Info\"\nAzure Site and Virtual Network resource group info", + "title": "AzureResourceGroupInfo", + "properties": { + "site_rg": { + "type": "string", + "description": "x-displayName: \"Site Resource Group\"\nResource group for Site", + "title": "Site Resource Group" + }, + "virtual_network_rg": { + "type": "string", + "description": "x-displayName: \"Virtual Network Resource Group\"\nResource group for Virtual Network", + "title": "Virtual Network Resource Group" + } + } + }, "topologyDCClusterGroupSummaryInfo": { "type": "object", "description": "Summary information related to the DC Cluster Group", @@ -2285,6 +3166,51 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologyGCPRouteAttributes": { + "type": "object", + "description": "Route attributes specific to GCP.", + "title": "GCPRouteAttributes", + "x-displayname": "GCP Route Attributes", + "x-ves-proto-message": "ves.io.schema.topology.GCPRouteAttributes", + "properties": { + "ip_version": { + "type": "string", + "description": " Version of IP protocol\n\nExample: - \"ipv4\"-", + "title": "IP version", + "x-displayname": "IP version", + "x-ves-example": "ipv4" + }, + "priority": { + "type": "integer", + "description": " Route Priority\n\nExample: - 1-", + "title": "Priority", + "format": "int64", + "x-displayname": "Priority" + }, + "scope_limits": { + "type": "array", + "description": " Limits on the scope of route like network tag\n\nExample: - \"tag-1, tag-2\"-", + "title": "Scope Limits", + "items": { + "type": "string" + }, + "x-displayname": "Scope Limits", + "x-ves-example": "tag-1, tag-2" + } + } + }, + "topologyGatewayTypeEnum": { + "type": "string", + "description": "x-displayName: Gateway type\nGateway Type\n\n - INGRESS_GATEWAY: Ingress gateway\n\nx-displayName: Ingress gateway\nIngress gateway (single nic)\n - INGRESS_EGRESS_GATEWAY: Ingress and Egress gateway\n\nx-displayName: Ingress and Egress gateway\nIngress and Egress gateway (dual nic)", + "title": "GatewayType", + "enum": [ + "INGRESS_GATEWAY", + "INGRESS_EGRESS_GATEWAY" + ], + "default": "INGRESS_GATEWAY", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.topology.GatewayTypeEnum" + }, "topologyInstanceType": { "type": "object", "description": "A canonical form of the instance.", @@ -2311,6 +3237,12 @@ var CustomDataAPISwaggerJSON string = `{ "format": "int64", "x-displayname": "CPU Count" }, + "f5xc_node_name": { + "type": "string", + "description": " F5XC node name", + "title": "F5XC Node name", + "x-displayname": "F5XC Node Name" + }, "instance_type": { "type": "string", "description": " Instance type", @@ -2610,6 +3542,12 @@ var CustomDataAPISwaggerJSON string = `{ "x-displayname": "Network Interface", "x-ves-proto-message": "ves.io.schema.topology.NetworkInterfaceType", "properties": { + "f5xc_status": { + "description": " F5XC side interface status", + "title": "F5XC status", + "$ref": "#/definitions/siteInterfaceStatus", + "x-displayname": "f5xc status" + }, "name": { "type": "string", "description": " Name of this interface", @@ -2660,6 +3598,117 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologyNetworkRouteTableData": { + "type": "object", + "description": "Data associated with the network route tables", + "title": "NetworkRouteTableData", + "x-displayname": "Network Route Data", + "x-ves-proto-message": "ves.io.schema.topology.NetworkRouteTableData", + "properties": { + "route_table_data": { + "description": " Route Table Data", + "title": "Route Table Data", + "$ref": "#/definitions/topologyRouteTableData", + "x-displayname": "Route Table Data" + }, + "subnet_data": { + "type": "array", + "description": " Subnet Data", + "title": "Subnet Data", + "items": { + "$ref": "#/definitions/topologySubnetData" + }, + "x-displayname": "Subnet Data" + } + } + }, + "topologyNetworkRouteTableMetaData": { + "type": "object", + "description": "x-displayName: Network RouteTable Metadata\"\nMetadata associated with the network route tables", + "title": "NetworkRouteTableMetaData", + "x-ves-proto-message": "ves.io.schema.topology.NetworkRouteTableMetaData", + "properties": { + "route_table_metadata": { + "description": " Route Table Metadata", + "title": "Route Table Metadata", + "$ref": "#/definitions/topologyRouteTableMetaData", + "x-displayname": "Route Table Metadata" + }, + "subnet_metadata": { + "type": "array", + "description": " Subnet Metadata", + "title": "Subnet Metadata", + "items": { + "$ref": "#/definitions/topologySubnetMetaData" + }, + "x-displayname": "Subnet Metadata" + } + } + }, + "topologyNetworkRouteTablesResponse": { + "type": "object", + "description": "List of RouteTables Associated in the Network", + "title": "Network Route Tables Response", + "x-displayname": "Network Route Tables Response", + "x-ves-proto-message": "ves.io.schema.topology.NetworkRouteTablesResponse", + "properties": { + "routes_data": { + "type": "array", + "description": " Network Routes Data", + "title": "Network Routes Data", + "items": { + "$ref": "#/definitions/topologyNetworkRoutesData" + }, + "x-displayname": "Network Routes Data" + } + } + }, + "topologyNetworkRoutesData": { + "type": "object", + "description": "x-displayName: Network Routes Data\"\nData associated with the network routes", + "title": "NetworkRoutesData", + "x-ves-proto-message": "ves.io.schema.topology.NetworkRoutesData", + "properties": { + "network_id": { + "type": "string", + "description": " Network Id", + "title": "Network Id", + "x-displayname": "Network Id" + }, + "route_tables_data": { + "type": "array", + "description": " Network Route Tables Data", + "title": "Network Routes Data", + "items": { + "$ref": "#/definitions/topologyNetworkRouteTableData" + }, + "x-displayname": "Network Route Tables Data" + } + } + }, + "topologyNetworkRoutesMetaData": { + "type": "object", + "description": "x-displayName: Network RouteTable Metadata\"\nMetadata associated with the network routes", + "title": "NetworkRoutesMetaData", + "x-ves-proto-message": "ves.io.schema.topology.NetworkRoutesMetaData", + "properties": { + "network_id": { + "type": "string", + "description": " Network Id", + "title": "Network Id", + "x-displayname": "Network Id" + }, + "route_tables_metadata": { + "type": "array", + "description": " Network Route Tables Metadata", + "title": "Network Routes Metadata", + "items": { + "$ref": "#/definitions/topologyNetworkRouteTableMetaData" + }, + "x-displayname": "Network Route Tables Metadata" + } + } + }, "topologyNetworkSummaryInfo": { "type": "object", "description": "Summary information related to the network", @@ -2973,6 +4022,39 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologyProviderInfo": { + "type": "object", + "description": "x-displayName: \"Provider Info\"\nCloud provider information", + "title": "ProviderInfo", + "properties": { + "azure_rg_info": { + "description": "x-displayName: \"Azure Resource Group Info\"\nResource group information for Azure Site and Virtual Network", + "title": "Azure Resource Group Info", + "$ref": "#/definitions/topologyAzureResourceGroupInfo" + }, + "cloud_link": { + "type": "array", + "description": "x-displayName: \"Cloud Link\"\nReference to cloud link", + "title": "Cloud Link", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + } + }, + "gcp_zones": { + "type": "array", + "description": "x-displayName: \"GCP Zones\"\nGCP Zones for the resource", + "title": "GCP Zones", + "items": { + "type": "string" + } + }, + "region": { + "type": "string", + "description": "x-displayName: \"Region\"\nRegion in which the resource exists", + "title": "Region" + } + } + }, "topologyProviderType": { "type": "string", "description": "provider type\n\nProviderType unspecified\nAWS backend\nGCP backend\nAzure backend\nF5XC backend", @@ -2990,7 +4072,7 @@ var CustomDataAPISwaggerJSON string = `{ }, "topologyRouteNextHopTypeEnum": { "type": "string", - "description": "x-displayName: RouteNextHopTypeEnum\nRouteNextHopTypeEnum\n\n - VIRTUAL_NETWORK_GATEWAY: VIRTUAL NETWORK GATEWAY\n\nx-displayName: VIRTUAL NETWORK GATEWAY\nVIRTUAL NETWORK GATEWAY\n - VNET_LOCAL: VNET LOCAL\n\nx-displayName: VNET LOCAL\nVNET LOCAL\n - INTERNET: INTERNET\n\nx-displayName: INTERNET\nINTERNET\n - VIRTUAL_APPLIANCE: VIRTUAL APPLIANCE\n\nx-displayName: VIRTUAL APPLIANCE\nVIRTUAL APPLIANCE\n - NONE: NONE\n\nx-displayName: NONE\nNONE\n - VNET_PEERING: VNET PEERING\n\nx-displayName: VNET PEERING\nVNET PEERING\n - VIRTUAL_NETWORK_SERVICE_ENDPOINT: VIRTUAL NETWORK SERVICE ENDPOINT\n\nx-displayName: VIRTUAL NETWORK SERVICE ENDPOINT\nVIRTUAL NETWORK SERVICE ENDPOINT\n - NEXT_HOP_TYPE_NOT_APPLICABLE: NEXT_HOP_TYPE_NOT_APPLICABLE\n\nx-displayName: NEXT_HOP_TYPE_NOT_APPLICABLE\nNEXT_HOP_TYPE_NOT_APPLICABLE should be used when the cloud provider doesn't support this.", + "description": "x-displayName: RouteNextHopTypeEnum\nRouteNextHopTypeEnum\n\n - VIRTUAL_NETWORK_GATEWAY: VIRTUAL NETWORK GATEWAY\n\nx-displayName: VIRTUAL NETWORK GATEWAY\nVIRTUAL NETWORK GATEWAY\n - VNET_LOCAL: VNET LOCAL\n\nx-displayName: VNET LOCAL\nVNET LOCAL\n - INTERNET: INTERNET\n\nx-displayName: INTERNET\nINTERNET\n - VIRTUAL_APPLIANCE: VIRTUAL APPLIANCE\n\nx-displayName: VIRTUAL APPLIANCE\nVIRTUAL APPLIANCE\n - NONE: NONE\n\nx-displayName: NONE\nNONE\n - VNET_PEERING: VNET PEERING\n\nx-displayName: VNET PEERING\nVNET PEERING\n - VIRTUAL_NETWORK_SERVICE_ENDPOINT: VIRTUAL NETWORK SERVICE ENDPOINT\n\nx-displayName: VIRTUAL NETWORK SERVICE ENDPOINT\nVIRTUAL NETWORK SERVICE ENDPOINT\n - NEXT_HOP_TYPE_NOT_APPLICABLE: NEXT_HOP_TYPE_NOT_APPLICABLE\n\nx-displayName: NEXT_HOP_TYPE_NOT_APPLICABLE\nNEXT_HOP_TYPE_NOT_APPLICABLE should be used when the cloud provider doesn't support this.\n - LOADBALANCER: LOAD BALANCER\n\nx-displayName: LOAD BALANCER\nLOAD BALANCER\n - VPC_NETWORK: VPC NETWORK\n\nx-displayName: VPC NETWORK\nVPC NETWORK\n - VPC_PEERING: VPC PEERING\n\nx-displayName: VPC PEERING\nVPC PEERING\n - INTERNAL_LOAD_BALANCER: INTERNAL LOAD BALANCER\n\nx-displayName: INTERNAL LOAD BALANCER\nINTERNAL LOAD BALANCER\n - INSTANCE: INSTANCE\n\nx-displayName: INSTANCE\nINSTANCE\n - INTERCONNECT: INTERCONNECT\n\nx-displayName: INTERCONNECT\nINTERCONNECT\n - INTERNET_GATEWAY: INTERNET GATEWAY\n\nx-displayName: INTERNET GATEWAY\nINTERNET GATEWAY\n - IP: IP\n\nx-displayName: IP\nIP\n - VPN_TUNNEL: VPN TUNNEL\n\nx-displayName: VPN TUNNEL\nVPN TUNNEL", "title": "RouteNextHopTypeEnum", "enum": [ "VIRTUAL_NETWORK_GATEWAY", @@ -3000,7 +4082,16 @@ var CustomDataAPISwaggerJSON string = `{ "NONE", "VNET_PEERING", "VIRTUAL_NETWORK_SERVICE_ENDPOINT", - "NEXT_HOP_TYPE_NOT_APPLICABLE" + "NEXT_HOP_TYPE_NOT_APPLICABLE", + "LOADBALANCER", + "VPC_NETWORK", + "VPC_PEERING", + "INTERNAL_LOAD_BALANCER", + "INSTANCE", + "INTERCONNECT", + "INTERNET_GATEWAY", + "IP", + "VPN_TUNNEL" ], "default": "VIRTUAL_NETWORK_GATEWAY", "x-displayname": "", @@ -3035,6 +4126,27 @@ var CustomDataAPISwaggerJSON string = `{ "x-displayname": "", "x-ves-proto-enum": "ves.io.schema.topology.RouteStateTypeEnum" }, + "topologyRouteTableData": { + "type": "object", + "description": "Data associated with the route table", + "title": "RouteTableData", + "x-displayname": "Route Table Data", + "x-ves-proto-message": "ves.io.schema.topology.RouteTableData", + "properties": { + "metadata": { + "description": " Route Table MetaData", + "title": "Route Table Data", + "$ref": "#/definitions/topologyRouteTableMetaData", + "x-displayname": "Route Table Metadata" + }, + "route_table": { + "description": " Route Table", + "title": "Route Table", + "$ref": "#/definitions/topologyRouteTableType", + "x-displayname": "Route Table" + } + } + }, "topologyRouteTableMetaData": { "type": "object", "description": "Metadata associated with the route table", @@ -3128,7 +4240,7 @@ var CustomDataAPISwaggerJSON string = `{ "routes": { "type": "array", "description": " list of routes", - "title": "Rotues", + "title": "Routes", "items": { "$ref": "#/definitions/topologyRouteType" }, @@ -3171,14 +4283,27 @@ var CustomDataAPISwaggerJSON string = `{ "description": "A canonical form of the route.", "title": "RouteType", "x-displayname": "Route Type", + "x-ves-oneof-field-cloud_route_attributes": "[\"aws\",\"gcp\"]", "x-ves-proto-message": "ves.io.schema.topology.RouteType", "properties": { + "aws": { + "description": "Exclusive with [gcp]\n Cloud Type AWS", + "title": "AWS", + "$ref": "#/definitions/topologyAWSRouteAttributes", + "x-displayname": "AWS" + }, "destination": { "type": "string", "description": " Destination", "title": "Destination", "x-displayname": "Destination" }, + "gcp": { + "description": "Exclusive with [aws]\n Cloud Type GCP", + "title": "GCP", + "$ref": "#/definitions/topologyGCPRouteAttributes", + "x-displayname": "GCP" + }, "next_hop_type": { "description": " Next Hop Type of the route", "title": "Next Hop Type", @@ -3211,6 +4336,19 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologySiteAppTypeEnum": { + "type": "string", + "description": "x-displayName: Site App type\nSite App Type\n\n - SITE_APPTYPE_NONE: Not applicable \n\nx-displayName: Not applicable \nNot applicable\n - SITE_APPTYPE_APPSTACK: AppStack Site\n\nx-displayName: AppStack Site\nAppStack Site\n - SITE_APPTYPE_MESH: Mesh site \n\nx-displayName: Mesh site \nMesh site", + "title": "Site App Type", + "enum": [ + "SITE_APPTYPE_NONE", + "SITE_APPTYPE_APPSTACK", + "SITE_APPTYPE_MESH" + ], + "default": "SITE_APPTYPE_NONE", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.topology.SiteAppTypeEnum" + }, "topologySiteMeshGroupSummaryInfo": { "type": "object", "description": "Summary information related to the site mesh group", @@ -3274,6 +4412,24 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologySiteNetworksResponse": { + "type": "object", + "description": "List of Networks Associated to Site", + "title": "Site Networks Response", + "x-displayname": "Site Networks Response", + "x-ves-proto-message": "ves.io.schema.topology.SiteNetworksResponse", + "properties": { + "routes_metadata": { + "type": "array", + "description": " Network Routes Meta Data", + "title": "Network Routes Meta Data", + "items": { + "$ref": "#/definitions/topologyNetworkRoutesMetaData" + }, + "x-displayname": "Network Routes Meta Data" + } + } + }, "topologySiteSummaryInfo": { "type": "object", "description": "Summary information related to the site", @@ -3296,6 +4452,15 @@ var CustomDataAPISwaggerJSON string = `{ "title": "Node Count", "format": "int64", "x-displayname": "Node Count" + }, + "node_info": { + "type": "array", + "description": " Provides mapping for node, private ip and public ip", + "title": "node_info", + "items": { + "$ref": "#/definitions/schemasiteNode" + }, + "x-displayname": "Node info" } } }, @@ -3350,6 +4515,48 @@ var CustomDataAPISwaggerJSON string = `{ } } }, + "topologySubnetData": { + "type": "object", + "description": "Data associated with the subnets", + "title": "SubnetData", + "x-displayname": "Subnet Data", + "x-ves-proto-message": "ves.io.schema.topology.SubnetData", + "properties": { + "metadata": { + "description": " Subnet Metadata", + "title": "Subnet MetaData", + "$ref": "#/definitions/topologySubnetMetaData", + "x-displayname": "Subnet MetaData" + }, + "subnet": { + "description": " Subnet", + "title": "Subnet", + "$ref": "#/definitions/topologySubnetType", + "x-displayname": "Subnet" + } + } + }, + "topologySubnetMetaData": { + "type": "object", + "description": "Metadata associated with the subnets", + "title": "SubnetMetaData", + "x-displayname": "Subnet MetaData", + "x-ves-proto-message": "ves.io.schema.topology.SubnetMetaData", + "properties": { + "cloud_resource_id": { + "type": "string", + "description": " Cloud Resource Identifier the subnet", + "title": "Cloud Resource Id", + "x-displayname": "Cloud Resource Id" + }, + "name": { + "type": "string", + "description": " Name of the subnet", + "title": "Name", + "x-displayname": "Name" + } + } + }, "topologySubnetSummaryInfo": { "type": "object", "description": "Summary information related to the subnet", diff --git a/pbgo/extschema/schema/topology/public_custom_data_api.vesmsg.go b/pbgo/extschema/schema/topology/public_custom_data_api.vesmsg.go index 523871797..0b7948094 100644 --- a/pbgo/extschema/schema/topology/public_custom_data_api.vesmsg.go +++ b/pbgo/extschema/schema/topology/public_custom_data_api.vesmsg.go @@ -1248,6 +1248,726 @@ func MetricTypeDataValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *NetworkRouteTableData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *NetworkRouteTableData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *NetworkRouteTableData) DeepCopy() *NetworkRouteTableData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &NetworkRouteTableData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *NetworkRouteTableData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *NetworkRouteTableData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return NetworkRouteTableDataValidator().Validate(ctx, m, opts...) +} + +func (m *NetworkRouteTableData) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetRouteTableDataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRouteTableDataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSubnetDataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSubnetDataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *NetworkRouteTableData) GetRouteTableDataDRefInfo() ([]db.DRefInfo, error) { + if m.GetRouteTableData() == nil { + return nil, nil + } + + drInfos, err := m.GetRouteTableData().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRouteTableData().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "route_table_data." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *NetworkRouteTableData) GetSubnetDataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSubnetData() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetSubnetData() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSubnetData() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("subnet_data[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateNetworkRouteTableData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateNetworkRouteTableData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*NetworkRouteTableData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *NetworkRouteTableData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["route_table_data"]; exists { + + vOpts := append(opts, db.WithValidateField("route_table_data")) + if err := fv(ctx, m.GetRouteTableData(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["subnet_data"]; exists { + + vOpts := append(opts, db.WithValidateField("subnet_data")) + for idx, item := range m.GetSubnetData() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultNetworkRouteTableDataValidator = func() *ValidateNetworkRouteTableData { + v := &ValidateNetworkRouteTableData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func NetworkRouteTableDataValidator() db.Validator { + return DefaultNetworkRouteTableDataValidator +} + +// augmented methods on protoc/std generated struct + +func (m *NetworkRouteTableMetaData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *NetworkRouteTableMetaData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *NetworkRouteTableMetaData) DeepCopy() *NetworkRouteTableMetaData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &NetworkRouteTableMetaData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *NetworkRouteTableMetaData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *NetworkRouteTableMetaData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return NetworkRouteTableMetaDataValidator().Validate(ctx, m, opts...) +} + +type ValidateNetworkRouteTableMetaData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateNetworkRouteTableMetaData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*NetworkRouteTableMetaData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *NetworkRouteTableMetaData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["route_table_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("route_table_metadata")) + if err := fv(ctx, m.GetRouteTableMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["subnet_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("subnet_metadata")) + for idx, item := range m.GetSubnetMetadata() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultNetworkRouteTableMetaDataValidator = func() *ValidateNetworkRouteTableMetaData { + v := &ValidateNetworkRouteTableMetaData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func NetworkRouteTableMetaDataValidator() db.Validator { + return DefaultNetworkRouteTableMetaDataValidator +} + +// augmented methods on protoc/std generated struct + +func (m *NetworkRouteTablesRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *NetworkRouteTablesRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *NetworkRouteTablesRequest) DeepCopy() *NetworkRouteTablesRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &NetworkRouteTablesRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *NetworkRouteTablesRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *NetworkRouteTablesRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return NetworkRouteTablesRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateNetworkRouteTablesRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateNetworkRouteTablesRequest) IdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for id") + } + + return validatorFn, nil +} + +func (v *ValidateNetworkRouteTablesRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*NetworkRouteTablesRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *NetworkRouteTablesRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["id"]; exists { + + vOpts := append(opts, db.WithValidateField("id")) + if err := fv(ctx, m.GetId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["regions"]; exists { + + vOpts := append(opts, db.WithValidateField("regions")) + for idx, item := range m.GetRegions() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["route_table_ids"]; exists { + + vOpts := append(opts, db.WithValidateField("route_table_ids")) + for idx, item := range m.GetRouteTableIds() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["subnet_cidrs"]; exists { + + vOpts := append(opts, db.WithValidateField("subnet_cidrs")) + for idx, item := range m.GetSubnetCidrs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["subnet_ids"]; exists { + + vOpts := append(opts, db.WithValidateField("subnet_ids")) + for idx, item := range m.GetSubnetIds() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultNetworkRouteTablesRequestValidator = func() *ValidateNetworkRouteTablesRequest { + v := &ValidateNetworkRouteTablesRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhId := v.IdValidationRuleHandler + rulesId := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhId(rulesId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for NetworkRouteTablesRequest.id: %s", err) + panic(errMsg) + } + v.FldValidators["id"] = vFn + + return v +}() + +func NetworkRouteTablesRequestValidator() db.Validator { + return DefaultNetworkRouteTablesRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *NetworkRouteTablesResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *NetworkRouteTablesResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *NetworkRouteTablesResponse) DeepCopy() *NetworkRouteTablesResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &NetworkRouteTablesResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *NetworkRouteTablesResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *NetworkRouteTablesResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return NetworkRouteTablesResponseValidator().Validate(ctx, m, opts...) +} + +func (m *NetworkRouteTablesResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRoutesDataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *NetworkRouteTablesResponse) GetRoutesDataDRefInfo() ([]db.DRefInfo, error) { + if m.GetRoutesData() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetRoutesData() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRoutesData() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("routes_data[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateNetworkRouteTablesResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateNetworkRouteTablesResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*NetworkRouteTablesResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *NetworkRouteTablesResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["routes_data"]; exists { + + vOpts := append(opts, db.WithValidateField("routes_data")) + for idx, item := range m.GetRoutesData() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultNetworkRouteTablesResponseValidator = func() *ValidateNetworkRouteTablesResponse { + v := &ValidateNetworkRouteTablesResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func NetworkRouteTablesResponseValidator() db.Validator { + return DefaultNetworkRouteTablesResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *NetworkRoutesData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *NetworkRoutesData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *NetworkRoutesData) DeepCopy() *NetworkRoutesData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &NetworkRoutesData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *NetworkRoutesData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *NetworkRoutesData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return NetworkRoutesDataValidator().Validate(ctx, m, opts...) +} + +func (m *NetworkRoutesData) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRouteTablesDataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *NetworkRoutesData) GetRouteTablesDataDRefInfo() ([]db.DRefInfo, error) { + if m.GetRouteTablesData() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetRouteTablesData() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRouteTablesData() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("route_tables_data[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateNetworkRoutesData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateNetworkRoutesData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*NetworkRoutesData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *NetworkRoutesData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["network_id"]; exists { + + vOpts := append(opts, db.WithValidateField("network_id")) + if err := fv(ctx, m.GetNetworkId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["route_tables_data"]; exists { + + vOpts := append(opts, db.WithValidateField("route_tables_data")) + for idx, item := range m.GetRouteTablesData() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultNetworkRoutesDataValidator = func() *ValidateNetworkRoutesData { + v := &ValidateNetworkRoutesData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func NetworkRoutesDataValidator() db.Validator { + return DefaultNetworkRoutesDataValidator +} + +// augmented methods on protoc/std generated struct + +func (m *NetworkRoutesMetaData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *NetworkRoutesMetaData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *NetworkRoutesMetaData) DeepCopy() *NetworkRoutesMetaData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &NetworkRoutesMetaData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *NetworkRoutesMetaData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *NetworkRoutesMetaData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return NetworkRoutesMetaDataValidator().Validate(ctx, m, opts...) +} + +type ValidateNetworkRoutesMetaData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateNetworkRoutesMetaData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*NetworkRoutesMetaData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *NetworkRoutesMetaData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["network_id"]; exists { + + vOpts := append(opts, db.WithValidateField("network_id")) + if err := fv(ctx, m.GetNetworkId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["route_tables_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("route_tables_metadata")) + for idx, item := range m.GetRouteTablesMetadata() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultNetworkRoutesMetaDataValidator = func() *ValidateNetworkRoutesMetaData { + v := &ValidateNetworkRoutesMetaData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func NetworkRoutesMetaDataValidator() db.Validator { + return DefaultNetworkRoutesMetaDataValidator +} + +// augmented methods on protoc/std generated struct + func (m *NetworkSummaryInfo) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -1585,6 +2305,7 @@ func (v *ValidateNode) Validate(ctx context.Context, pm interface{}, opts ...db. var DefaultNodeValidator = func() *ValidateNode { v := &ValidateNode{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["node_type.instance"] = NodeTypeInstanceValidator().Validate v.FldValidators["node_type.site_mesh_group"] = NodeTypeSiteMeshGroupValidator().Validate return v @@ -1935,6 +2656,8 @@ func (v *ValidateNodeTypeInstance) Validate(ctx context.Context, pm interface{}, var DefaultNodeTypeInstanceValidator = func() *ValidateNodeTypeInstance { v := &ValidateNodeTypeInstance{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["info"] = InstanceTypeValidator().Validate + return v }() @@ -2555,6 +3278,120 @@ func NodeTypeTransitGatewayValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *RouteTableData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *RouteTableData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *RouteTableData) DeepCopy() *RouteTableData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &RouteTableData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *RouteTableData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *RouteTableData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTableDataValidator().Validate(ctx, m, opts...) +} + +func (m *RouteTableData) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRouteTableDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *RouteTableData) GetRouteTableDRefInfo() ([]db.DRefInfo, error) { + if m.GetRouteTable() == nil { + return nil, nil + } + + drInfos, err := m.GetRouteTable().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRouteTable().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "route_table." + dri.DRField + } + return drInfos, err + +} + +type ValidateRouteTableData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateRouteTableData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteTableData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *RouteTableData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["route_table"]; exists { + + vOpts := append(opts, db.WithValidateField("route_table")) + if err := fv(ctx, m.GetRouteTable(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultRouteTableDataValidator = func() *ValidateRouteTableData { + v := &ValidateRouteTableData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func RouteTableDataValidator() db.Validator { + return DefaultRouteTableDataValidator +} + +// augmented methods on protoc/std generated struct + func (m *RouteTableMetaData) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -2986,15 +3823,173 @@ func SiteMeshGroupSummaryInfoValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *SiteMeshGroupsSummaryRequest) ToJSON() (string, error) { +func (m *SiteMeshGroupsSummaryRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SiteMeshGroupsSummaryRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SiteMeshGroupsSummaryRequest) DeepCopy() *SiteMeshGroupsSummaryRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SiteMeshGroupsSummaryRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SiteMeshGroupsSummaryRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SiteMeshGroupsSummaryRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SiteMeshGroupsSummaryRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateSiteMeshGroupsSummaryRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSiteMeshGroupsSummaryRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SiteMeshGroupsSummaryRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SiteMeshGroupsSummaryRequest got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSiteMeshGroupsSummaryRequestValidator = func() *ValidateSiteMeshGroupsSummaryRequest { + v := &ValidateSiteMeshGroupsSummaryRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SiteMeshGroupsSummaryRequestValidator() db.Validator { + return DefaultSiteMeshGroupsSummaryRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SiteMeshTopologyRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SiteMeshTopologyRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SiteMeshTopologyRequest) DeepCopy() *SiteMeshTopologyRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SiteMeshTopologyRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SiteMeshTopologyRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SiteMeshTopologyRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SiteMeshTopologyRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateSiteMeshTopologyRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSiteMeshTopologyRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SiteMeshTopologyRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SiteMeshTopologyRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metric_selector"]; exists { + + vOpts := append(opts, db.WithValidateField("metric_selector")) + if err := fv(ctx, m.GetMetricSelector(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["site_mesh_group"]; exists { + + vOpts := append(opts, db.WithValidateField("site_mesh_group")) + if err := fv(ctx, m.GetSiteMeshGroup(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSiteMeshTopologyRequestValidator = func() *ValidateSiteMeshTopologyRequest { + v := &ValidateSiteMeshTopologyRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metric_selector"] = MetricSelectorValidator().Validate + + return v +}() + +func SiteMeshTopologyRequestValidator() db.Validator { + return DefaultSiteMeshTopologyRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SiteNetworksRequest) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SiteMeshGroupsSummaryRequest) ToYAML() (string, error) { +func (m *SiteNetworksRequest) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SiteMeshGroupsSummaryRequest) DeepCopy() *SiteMeshGroupsSummaryRequest { +func (m *SiteNetworksRequest) DeepCopy() *SiteNetworksRequest { if m == nil { return nil } @@ -3002,7 +3997,7 @@ func (m *SiteMeshGroupsSummaryRequest) DeepCopy() *SiteMeshGroupsSummaryRequest if err != nil { return nil } - c := &SiteMeshGroupsSummaryRequest{} + c := &SiteNetworksRequest{} err = c.Unmarshal(ser) if err != nil { return nil @@ -3010,60 +4005,98 @@ func (m *SiteMeshGroupsSummaryRequest) DeepCopy() *SiteMeshGroupsSummaryRequest return c } -func (m *SiteMeshGroupsSummaryRequest) DeepCopyProto() proto.Message { +func (m *SiteNetworksRequest) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SiteMeshGroupsSummaryRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SiteMeshGroupsSummaryRequestValidator().Validate(ctx, m, opts...) +func (m *SiteNetworksRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SiteNetworksRequestValidator().Validate(ctx, m, opts...) } -type ValidateSiteMeshGroupsSummaryRequest struct { +type ValidateSiteNetworksRequest struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSiteMeshGroupsSummaryRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SiteMeshGroupsSummaryRequest) +func (v *ValidateSiteNetworksRequest) NameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for name") + } + + return validatorFn, nil +} + +func (v *ValidateSiteNetworksRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SiteNetworksRequest) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SiteMeshGroupsSummaryRequest got type %s", t) + return fmt.Errorf("Expected type *SiteNetworksRequest got type %s", t) } } if m == nil { return nil } + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + return nil } // Well-known symbol for default validator implementation -var DefaultSiteMeshGroupsSummaryRequestValidator = func() *ValidateSiteMeshGroupsSummaryRequest { - v := &ValidateSiteMeshGroupsSummaryRequest{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSiteNetworksRequestValidator = func() *ValidateSiteNetworksRequest { + v := &ValidateSiteNetworksRequest{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhName := v.NameValidationRuleHandler + rulesName := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhName(rulesName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SiteNetworksRequest.name: %s", err) + panic(errMsg) + } + v.FldValidators["name"] = vFn return v }() -func SiteMeshGroupsSummaryRequestValidator() db.Validator { - return DefaultSiteMeshGroupsSummaryRequestValidator +func SiteNetworksRequestValidator() db.Validator { + return DefaultSiteNetworksRequestValidator } // augmented methods on protoc/std generated struct -func (m *SiteMeshTopologyRequest) ToJSON() (string, error) { +func (m *SiteNetworksResponse) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SiteMeshTopologyRequest) ToYAML() (string, error) { +func (m *SiteNetworksResponse) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SiteMeshTopologyRequest) DeepCopy() *SiteMeshTopologyRequest { +func (m *SiteNetworksResponse) DeepCopy() *SiteNetworksResponse { if m == nil { return nil } @@ -3071,7 +4104,7 @@ func (m *SiteMeshTopologyRequest) DeepCopy() *SiteMeshTopologyRequest { if err != nil { return nil } - c := &SiteMeshTopologyRequest{} + c := &SiteNetworksResponse{} err = c.Unmarshal(ser) if err != nil { return nil @@ -3079,49 +4112,43 @@ func (m *SiteMeshTopologyRequest) DeepCopy() *SiteMeshTopologyRequest { return c } -func (m *SiteMeshTopologyRequest) DeepCopyProto() proto.Message { +func (m *SiteNetworksResponse) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SiteMeshTopologyRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SiteMeshTopologyRequestValidator().Validate(ctx, m, opts...) +func (m *SiteNetworksResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SiteNetworksResponseValidator().Validate(ctx, m, opts...) } -type ValidateSiteMeshTopologyRequest struct { +type ValidateSiteNetworksResponse struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSiteMeshTopologyRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SiteMeshTopologyRequest) +func (v *ValidateSiteNetworksResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SiteNetworksResponse) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SiteMeshTopologyRequest got type %s", t) + return fmt.Errorf("Expected type *SiteNetworksResponse got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["metric_selector"]; exists { - - vOpts := append(opts, db.WithValidateField("metric_selector")) - if err := fv(ctx, m.GetMetricSelector(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["site_mesh_group"]; exists { + if fv, exists := v.FldValidators["routes_metadata"]; exists { - vOpts := append(opts, db.WithValidateField("site_mesh_group")) - if err := fv(ctx, m.GetSiteMeshGroup(), vOpts...); err != nil { - return err + vOpts := append(opts, db.WithValidateField("routes_metadata")) + for idx, item := range m.GetRoutesMetadata() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } } } @@ -3130,16 +4157,14 @@ func (v *ValidateSiteMeshTopologyRequest) Validate(ctx context.Context, pm inter } // Well-known symbol for default validator implementation -var DefaultSiteMeshTopologyRequestValidator = func() *ValidateSiteMeshTopologyRequest { - v := &ValidateSiteMeshTopologyRequest{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["metric_selector"] = MetricSelectorValidator().Validate +var DefaultSiteNetworksResponseValidator = func() *ValidateSiteNetworksResponse { + v := &ValidateSiteNetworksResponse{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func SiteMeshTopologyRequestValidator() db.Validator { - return DefaultSiteMeshTopologyRequestValidator +func SiteNetworksResponseValidator() db.Validator { + return DefaultSiteNetworksResponseValidator } // augmented methods on protoc/std generated struct @@ -3218,6 +4243,18 @@ func (v *ValidateSiteSummaryInfo) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["node_info"]; exists { + + vOpts := append(opts, db.WithValidateField("node_info")) + for idx, item := range m.GetNodeInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + return nil } @@ -3359,6 +4396,207 @@ func SiteTopologyRequestValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *SubnetData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SubnetData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SubnetData) DeepCopy() *SubnetData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SubnetData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SubnetData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SubnetData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SubnetDataValidator().Validate(ctx, m, opts...) +} + +func (m *SubnetData) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSubnetDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *SubnetData) GetSubnetDRefInfo() ([]db.DRefInfo, error) { + if m.GetSubnet() == nil { + return nil, nil + } + + drInfos, err := m.GetSubnet().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSubnet().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "subnet." + dri.DRField + } + return drInfos, err + +} + +type ValidateSubnetData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSubnetData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SubnetData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SubnetData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["subnet"]; exists { + + vOpts := append(opts, db.WithValidateField("subnet")) + if err := fv(ctx, m.GetSubnet(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSubnetDataValidator = func() *ValidateSubnetData { + v := &ValidateSubnetData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SubnetDataValidator() db.Validator { + return DefaultSubnetDataValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SubnetMetaData) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SubnetMetaData) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SubnetMetaData) DeepCopy() *SubnetMetaData { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SubnetMetaData{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SubnetMetaData) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SubnetMetaData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SubnetMetaDataValidator().Validate(ctx, m, opts...) +} + +type ValidateSubnetMetaData struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSubnetMetaData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SubnetMetaData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SubnetMetaData got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cloud_resource_id"]; exists { + + vOpts := append(opts, db.WithValidateField("cloud_resource_id")) + if err := fv(ctx, m.GetCloudResourceId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSubnetMetaDataValidator = func() *ValidateSubnetMetaData { + v := &ValidateSubnetMetaData{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func SubnetMetaDataValidator() db.Validator { + return DefaultSubnetMetaDataValidator +} + +// augmented methods on protoc/std generated struct + func (m *SubnetSummaryInfo) ToJSON() (string, error) { return codec.ToJSON(m) } diff --git a/pbgo/extschema/schema/topology/topology_cloud_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_cloud_policy/crudapi/api.vesapi.go index ad62a4304..ca868c4fd 100644 --- a/pbgo/extschema/schema/topology/topology_cloud_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_cloud_policy/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_cloud_policy/object.pb.go b/pbgo/extschema/schema/topology/topology_cloud_policy/object.pb.go index b0ccafe40..de0cd21f1 100644 --- a/pbgo/extschema/schema/topology/topology_cloud_policy/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_cloud_policy/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_8f00f11fb9a3d3f6 = []byte{ - // 511 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0x4f, 0x6b, 0x14, 0x4d, - 0x10, 0xc6, 0xa7, 0x93, 0xb0, 0x09, 0xfd, 0xc2, 0x2b, 0xcc, 0x69, 0x8d, 0xd8, 0x84, 0xf5, 0xe2, - 0x21, 0xd3, 0x03, 0x8a, 0x21, 0x11, 0xf1, 0x3f, 0x04, 0x24, 0x41, 0x48, 0xf4, 0xe2, 0x65, 0xe9, - 0xe9, 0xad, 0x9d, 0xb4, 0xce, 0x4c, 0x35, 0xdd, 0xbd, 0x63, 0xf6, 0xe6, 0x47, 0xf0, 0x3b, 0x78, - 0xf1, 0xe6, 0x57, 0x88, 0x37, 0xf1, 0xe2, 0xe2, 0x69, 0x8f, 0xee, 0xec, 0xc5, 0x63, 0x3e, 0x82, - 0xd8, 0x93, 0x5d, 0xdc, 0x25, 0x88, 0xcb, 0xde, 0xaa, 0xa9, 0x7a, 0x7e, 0x5d, 0x3c, 0x0f, 0x45, - 0xf7, 0x4a, 0xb0, 0x5c, 0x61, 0x6c, 0xe5, 0x09, 0xe4, 0x22, 0x76, 0xa8, 0x31, 0xc3, 0xb4, 0x3f, - 0x2d, 0xda, 0x32, 0xc3, 0x5e, 0xa7, 0xad, 0x31, 0x53, 0xb2, 0x1f, 0x63, 0xf2, 0x1a, 0xa4, 0xe3, - 0xda, 0xa0, 0xc3, 0x70, 0xbb, 0x96, 0xf2, 0x5a, 0xca, 0x27, 0x0a, 0x7e, 0xa9, 0x74, 0x33, 0x4a, - 0x95, 0x3b, 0xe9, 0x25, 0x5c, 0x62, 0x1e, 0xa7, 0x98, 0x62, 0xec, 0x21, 0x49, 0xaf, 0xeb, 0x5f, - 0xfe, 0xe1, 0xab, 0x1a, 0xbe, 0x79, 0x6d, 0x76, 0x2f, 0xd4, 0x4e, 0x61, 0x61, 0x2f, 0x9a, 0xbb, - 0x0b, 0x2d, 0xed, 0xfa, 0x1a, 0x26, 0xca, 0xab, 0x73, 0xca, 0x3f, 0x5a, 0xad, 0xd9, 0x56, 0x09, - 0x16, 0x8a, 0x72, 0xf6, 0xe3, 0xd6, 0xa7, 0x35, 0xda, 0x78, 0xee, 0x3d, 0x08, 0xf7, 0xe8, 0x46, - 0x0e, 0x4e, 0x74, 0x84, 0x13, 0x4d, 0xb2, 0x45, 0x6e, 0xfe, 0x77, 0xeb, 0x3a, 0x9f, 0x35, 0xa4, - 0x1e, 0x3c, 0x04, 0x27, 0x5e, 0xf4, 0x35, 0x1c, 0x4d, 0xc7, 0xc3, 0x03, 0x7a, 0xc5, 0xf6, 0xad, - 0x83, 0xbc, 0x3d, 0x25, 0xac, 0x78, 0xc2, 0x8d, 0x39, 0xc2, 0xb1, 0x9f, 0x9a, 0xe3, 0xfc, 0x5f, - 0x6b, 0x0f, 0x27, 0xb4, 0x67, 0x74, 0xcd, 0x6a, 0x90, 0xcd, 0x55, 0x8f, 0xd8, 0xe1, 0x8b, 0xa4, - 0xc2, 0x8f, 0x35, 0x48, 0x4f, 0xf5, 0x8c, 0xbb, 0xdf, 0x56, 0xbe, 0x7f, 0x6e, 0x7e, 0x5d, 0xa1, - 0x0f, 0xe8, 0xea, 0x3e, 0xb8, 0x70, 0xb7, 0x7b, 0xe7, 0x54, 0x46, 0x56, 0x39, 0x88, 0x72, 0x51, - 0x88, 0x14, 0x72, 0x28, 0x5c, 0x94, 0x08, 0xab, 0x64, 0x94, 0x63, 0xa1, 0x1c, 0x9a, 0xed, 0xad, - 0x12, 0x6c, 0xa4, 0x30, 0x52, 0x85, 0x03, 0x53, 0x88, 0x2c, 0x32, 0x20, 0x3a, 0xf4, 0x11, 0x5d, - 0x3f, 0x02, 0x9d, 0x09, 0x09, 0xe1, 0xce, 0x5f, 0x20, 0x3d, 0x0b, 0x97, 0x10, 0xde, 0x1a, 0xe5, - 0x80, 0x3e, 0xa4, 0x8d, 0x27, 0x06, 0x84, 0x5b, 0x8a, 0xf0, 0x14, 0x32, 0x58, 0x8a, 0xb0, 0x76, - 0xa0, 0xec, 0x12, 0x46, 0xb4, 0x04, 0xdd, 0x98, 0x78, 0x1c, 0xbe, 0xa4, 0xeb, 0xa9, 0x6c, 0xfb, - 0xb0, 0xea, 0xbc, 0xef, 0x2d, 0x16, 0xd6, 0x7e, 0x86, 0x89, 0xc8, 0xa6, 0x91, 0x35, 0x52, 0xf9, - 0xbb, 0x7e, 0xfc, 0x81, 0x9c, 0xdd, 0x0f, 0x06, 0x23, 0x16, 0x0c, 0x47, 0x2c, 0x38, 0x1f, 0x31, - 0xf2, 0xae, 0x62, 0xe4, 0x63, 0xc5, 0xc8, 0x97, 0x8a, 0x91, 0x41, 0xc5, 0xc8, 0xb0, 0x62, 0xe4, - 0x47, 0xc5, 0xc8, 0xcf, 0x8a, 0x05, 0xe7, 0x15, 0x23, 0xef, 0xc7, 0x2c, 0x38, 0x1b, 0x33, 0x32, - 0x18, 0xb3, 0x60, 0x38, 0x66, 0xc1, 0xab, 0x24, 0x45, 0xfd, 0x26, 0xe5, 0x25, 0x66, 0x0e, 0x8c, - 0x11, 0xbc, 0x67, 0x63, 0x5f, 0x74, 0xd1, 0xe4, 0x91, 0x36, 0x58, 0xaa, 0x0e, 0x98, 0x68, 0xd2, - 0x8e, 0x75, 0x92, 0x62, 0x0c, 0xa7, 0xee, 0xe2, 0x52, 0xfe, 0xe9, 0x0a, 0x93, 0x86, 0xbf, 0xa0, - 0xdb, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x7c, 0x59, 0x69, 0xb2, 0x71, 0x04, 0x00, 0x00, + // 528 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0x13, 0x3f, + 0x18, 0xc6, 0xcf, 0xff, 0xe6, 0x9f, 0x56, 0x46, 0x02, 0xe9, 0xa6, 0x52, 0x84, 0x55, 0x95, 0x85, + 0xa1, 0x77, 0x27, 0x81, 0x40, 0x14, 0x21, 0x06, 0x40, 0xaa, 0x84, 0x5a, 0x21, 0xb5, 0xb0, 0x74, + 0x89, 0x7c, 0xbe, 0x37, 0xae, 0xe1, 0xee, 0x5e, 0xcb, 0x76, 0x8e, 0x66, 0x63, 0x60, 0x61, 0xe3, + 0x3b, 0xb0, 0xf0, 0x31, 0xca, 0xc6, 0x18, 0x31, 0x65, 0x24, 0x97, 0x05, 0xb6, 0x7e, 0x04, 0x84, + 0xaf, 0x09, 0x24, 0xaa, 0x80, 0x0c, 0xd9, 0x5e, 0xeb, 0x7d, 0x9e, 0xdf, 0x63, 0xd9, 0xaf, 0x4d, + 0x77, 0x2a, 0xb0, 0xb1, 0xc2, 0xc4, 0x8a, 0x63, 0x28, 0x78, 0xe2, 0x50, 0x63, 0x8e, 0xb2, 0x3f, + 0x2d, 0x3a, 0x22, 0xc7, 0x5e, 0xd6, 0xd1, 0x98, 0x2b, 0xd1, 0x4f, 0x30, 0x7d, 0x09, 0xc2, 0xc5, + 0xda, 0xa0, 0xc3, 0x70, 0xbb, 0xb1, 0xc6, 0x8d, 0x35, 0x9e, 0x38, 0xe2, 0x0b, 0xad, 0x1b, 0x91, + 0x54, 0xee, 0xb8, 0x97, 0xc6, 0x02, 0x8b, 0x44, 0xa2, 0xc4, 0xc4, 0x43, 0xd2, 0x5e, 0xd7, 0xaf, + 0xfc, 0xc2, 0x57, 0x0d, 0x7c, 0xe3, 0xda, 0xec, 0xbe, 0x50, 0x3b, 0x85, 0xa5, 0x3d, 0x6f, 0xde, + 0x5b, 0x68, 0xd3, 0xae, 0xaf, 0x61, 0xe2, 0xbc, 0x3a, 0xe7, 0xfc, 0xad, 0xb5, 0x35, 0xdb, 0xaa, + 0xc0, 0x42, 0x59, 0xcd, 0x06, 0x6f, 0x7d, 0xff, 0x9f, 0xb6, 0x9f, 0xf9, 0x33, 0x08, 0x77, 0xe8, + 0x5a, 0x01, 0x8e, 0x67, 0xdc, 0xf1, 0x75, 0xb2, 0x49, 0x6e, 0x5e, 0xba, 0x75, 0x3d, 0x9e, 0x3d, + 0x90, 0x46, 0xb8, 0x0f, 0x8e, 0x3f, 0xef, 0x6b, 0x38, 0x98, 0xca, 0xc3, 0x3d, 0x7a, 0xc5, 0xf6, + 0xad, 0x83, 0xa2, 0x33, 0x25, 0xfc, 0xe7, 0x09, 0x37, 0xe6, 0x08, 0x87, 0x5e, 0x35, 0xc7, 0xb9, + 0xdc, 0x78, 0xf7, 0x27, 0xb4, 0xa7, 0xb4, 0x65, 0x35, 0x88, 0xf5, 0x15, 0x8f, 0xb8, 0x1b, 0x2f, + 0x72, 0x2b, 0xf1, 0xa1, 0x06, 0xe1, 0xa9, 0x9e, 0x71, 0xff, 0x5d, 0xeb, 0xcb, 0xa7, 0xf5, 0xb7, + 0x2d, 0xda, 0xa5, 0x2b, 0xbb, 0xe0, 0xc2, 0x4e, 0xf7, 0xce, 0x89, 0x88, 0xac, 0x72, 0x10, 0x15, + 0xbc, 0xe4, 0x12, 0x0a, 0x28, 0x5d, 0x94, 0x72, 0xab, 0x44, 0x54, 0x60, 0xa9, 0x1c, 0x9a, 0xed, + 0xcd, 0x0b, 0x35, 0xd6, 0xf1, 0x32, 0xe3, 0x26, 0xfb, 0x25, 0xab, 0xc0, 0x46, 0x0a, 0x23, 0x55, + 0x3a, 0x30, 0x25, 0xcf, 0x23, 0x03, 0x3c, 0xa3, 0x40, 0x57, 0x0f, 0x40, 0xe7, 0x5c, 0x40, 0x78, + 0xf4, 0x87, 0xac, 0x9e, 0x85, 0xbf, 0x06, 0x35, 0x9a, 0xf9, 0x94, 0xd7, 0x46, 0x39, 0xa0, 0x19, + 0x6d, 0x3f, 0x36, 0xc0, 0xdd, 0xd2, 0x53, 0x9e, 0x40, 0x0e, 0x4b, 0x4e, 0x91, 0xb4, 0xb5, 0xa7, + 0xec, 0xf2, 0xef, 0x66, 0x8b, 0xd3, 0xb5, 0xc9, 0x74, 0x84, 0x2f, 0xe8, 0xaa, 0x14, 0x1d, 0x3f, + 0x66, 0xcd, 0xa4, 0x3e, 0x58, 0x6c, 0xcc, 0x76, 0x73, 0x4c, 0x79, 0x3e, 0x1d, 0xb6, 0xb6, 0x14, + 0x3f, 0xeb, 0x47, 0x1f, 0xc8, 0xe9, 0xc3, 0x60, 0x30, 0x62, 0xc1, 0x70, 0xc4, 0x82, 0xb3, 0x11, + 0x23, 0x6f, 0x6a, 0x46, 0x3e, 0xd6, 0x8c, 0x7c, 0xae, 0x19, 0x19, 0xd4, 0x8c, 0x0c, 0x6b, 0x46, + 0xbe, 0xd6, 0x8c, 0x7c, 0xab, 0x59, 0x70, 0x56, 0x33, 0xf2, 0x7e, 0xcc, 0x82, 0xd3, 0x31, 0x23, + 0x83, 0x31, 0x0b, 0x86, 0x63, 0x16, 0x1c, 0xa5, 0x12, 0xf5, 0x2b, 0x19, 0x57, 0x98, 0x3b, 0x30, + 0x86, 0xc7, 0x3d, 0x9b, 0xf8, 0xa2, 0x8b, 0xa6, 0x88, 0xb4, 0xc1, 0x4a, 0x65, 0x60, 0xa2, 0x49, + 0x3b, 0xd1, 0xa9, 0xc4, 0x04, 0x4e, 0xdc, 0xf9, 0x1b, 0xff, 0xa7, 0xff, 0x23, 0x6d, 0xfb, 0xb7, + 0x7f, 0xfb, 0x47, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8c, 0xce, 0x3a, 0xe2, 0x2b, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_dc_cluster_group/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_dc_cluster_group/crudapi/api.vesapi.go index 39b1c8dac..32366db3a 100644 --- a/pbgo/extschema/schema/topology/topology_dc_cluster_group/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_dc_cluster_group/crudapi/api.vesapi.go @@ -2995,10 +2995,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_dc_cluster_group/object.pb.go b/pbgo/extschema/schema/topology/topology_dc_cluster_group/object.pb.go index 0ac1cfcaa..91e8af4e5 100644 --- a/pbgo/extschema/schema/topology/topology_dc_cluster_group/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_dc_cluster_group/object.pb.go @@ -162,40 +162,41 @@ func init() { } var fileDescriptor_3efa2c9d3e6769c7 = []byte{ - // 516 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x6e, 0xd3, 0x40, - 0x10, 0xc6, 0xbd, 0x6d, 0x95, 0x56, 0x8b, 0x04, 0x92, 0x4f, 0xa1, 0x88, 0x55, 0x15, 0x2e, 0x1c, - 0xb0, 0x8d, 0x40, 0x20, 0xa8, 0xf8, 0x53, 0xfe, 0x48, 0xbd, 0xb4, 0x20, 0xb5, 0x5c, 0xe0, 0x12, - 0xad, 0x37, 0x13, 0x77, 0xc1, 0xf6, 0xac, 0x76, 0xd7, 0xa6, 0xb9, 0xf1, 0x08, 0xbc, 0x05, 0xdc, - 0x79, 0x81, 0x72, 0x43, 0x5c, 0x88, 0x38, 0xe5, 0x48, 0x9c, 0x0b, 0xc7, 0x3e, 0x02, 0x62, 0xdd, - 0x44, 0x24, 0x22, 0x88, 0x28, 0xb7, 0x59, 0xcd, 0xf7, 0xfd, 0x3c, 0x9a, 0xcf, 0x43, 0xef, 0x97, - 0x60, 0x42, 0x89, 0x91, 0x11, 0x47, 0x90, 0xf1, 0xc8, 0xa2, 0xc2, 0x14, 0x93, 0xde, 0xa4, 0x68, - 0x77, 0x44, 0x5b, 0xa4, 0x85, 0xb1, 0xa0, 0xdb, 0x89, 0xc6, 0x42, 0x45, 0x18, 0xbf, 0x06, 0x61, - 0x43, 0xa5, 0xd1, 0xa2, 0x7f, 0xbd, 0xb6, 0x87, 0xb5, 0x3d, 0x1c, 0xbb, 0xc2, 0xb9, 0xf6, 0xcd, - 0x20, 0x91, 0xf6, 0xa8, 0x88, 0x43, 0x81, 0x59, 0x94, 0x60, 0x82, 0x91, 0x03, 0xc5, 0x45, 0xd7, - 0xbd, 0xdc, 0xc3, 0x55, 0xf5, 0x07, 0x36, 0x2f, 0x4d, 0xcf, 0x87, 0xca, 0x4a, 0xcc, 0xcd, 0x59, - 0xf3, 0xde, 0xc2, 0xc3, 0xdb, 0x9e, 0x82, 0xb1, 0xbb, 0x35, 0xcf, 0xfd, 0x87, 0xe6, 0xe2, 0x8c, - 0x66, 0xbe, 0xbd, 0x04, 0x03, 0x79, 0x39, 0x3d, 0x60, 0xeb, 0xd3, 0x1a, 0x6d, 0x3c, 0x77, 0xfb, - 0xf2, 0xef, 0xd2, 0x8d, 0x0c, 0x2c, 0xef, 0x70, 0xcb, 0x9b, 0x64, 0x8b, 0x5c, 0x3d, 0x77, 0xe3, - 0x72, 0x38, 0xbd, 0xbc, 0x5a, 0xb8, 0x0f, 0x96, 0xbf, 0xe8, 0x29, 0x38, 0x98, 0xc8, 0xfd, 0x3d, - 0x7a, 0xc1, 0xf4, 0x8c, 0x85, 0xac, 0x3d, 0x21, 0xac, 0x38, 0xc2, 0x95, 0x19, 0xc2, 0xa1, 0x53, - 0xcd, 0x70, 0xce, 0xd7, 0xde, 0xfd, 0x31, 0xed, 0x19, 0x5d, 0x33, 0x0a, 0x44, 0x73, 0xd5, 0x21, - 0xb6, 0xc3, 0x45, 0x13, 0x0c, 0x0f, 0x15, 0x08, 0x47, 0x76, 0x9c, 0xed, 0x6f, 0x2b, 0xdf, 0x3f, - 0x37, 0xbf, 0xae, 0xd0, 0x87, 0x74, 0x75, 0x17, 0xac, 0x7f, 0xa7, 0x7b, 0xeb, 0x58, 0x04, 0x46, - 0x5a, 0x08, 0x32, 0x9e, 0xf3, 0x04, 0x32, 0xc8, 0x6d, 0x10, 0x73, 0x23, 0x45, 0x90, 0x61, 0x2e, - 0x2d, 0xea, 0x6b, 0x5b, 0x25, 0x98, 0x40, 0x62, 0x20, 0x73, 0x0b, 0x3a, 0xe7, 0x69, 0xa0, 0x81, - 0x77, 0xe8, 0x23, 0xba, 0x7e, 0x00, 0x2a, 0xe5, 0x02, 0xfc, 0xdb, 0xff, 0x80, 0x14, 0x06, 0xfe, - 0x42, 0x78, 0xab, 0xa5, 0x05, 0xba, 0x43, 0x1b, 0x4f, 0x34, 0x70, 0xbb, 0x14, 0xe1, 0x29, 0xa4, - 0xb0, 0x14, 0x61, 0x6d, 0x4f, 0x9a, 0x25, 0x16, 0xd1, 0x02, 0xba, 0x31, 0xde, 0xb1, 0xff, 0x92, - 0xae, 0x27, 0xa2, 0xed, 0x02, 0xab, 0xff, 0x9a, 0x9d, 0xc5, 0x03, 0xdb, 0x4d, 0x31, 0xe6, 0xe9, - 0x24, 0xb6, 0x46, 0x22, 0x7e, 0xd7, 0x8f, 0x3f, 0x90, 0x93, 0x07, 0x5e, 0x7f, 0xc8, 0xbc, 0xc1, - 0x90, 0x79, 0xa7, 0x43, 0x46, 0xde, 0x55, 0x8c, 0x7c, 0xac, 0x18, 0xf9, 0x52, 0x31, 0xd2, 0xaf, - 0x18, 0x19, 0x54, 0x8c, 0xfc, 0xa8, 0x18, 0xf9, 0x59, 0x31, 0xef, 0xb4, 0x62, 0xe4, 0xfd, 0x88, - 0x79, 0x27, 0x23, 0x46, 0xfa, 0x23, 0xe6, 0x0d, 0x46, 0xcc, 0x7b, 0xd5, 0x4d, 0x50, 0xbd, 0x49, - 0xc2, 0x12, 0x53, 0x0b, 0x5a, 0xf3, 0xb0, 0x30, 0x91, 0x2b, 0xba, 0xa8, 0xb3, 0x40, 0x69, 0x2c, - 0x65, 0x07, 0x74, 0x30, 0x6e, 0x47, 0x2a, 0x4e, 0x30, 0x82, 0x63, 0x7b, 0x76, 0x31, 0xff, 0x7d, - 0xb5, 0x71, 0xc3, 0x5d, 0xd3, 0xcd, 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x77, 0x55, 0x29, 0x66, - 0xad, 0x04, 0x00, 0x00, + // 531 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0x13, 0x31, + 0x14, 0xc7, 0xcf, 0x34, 0xa4, 0x95, 0x91, 0x40, 0xba, 0x29, 0x14, 0x61, 0x55, 0x61, 0x61, 0xe0, + 0xee, 0x10, 0x88, 0x81, 0x0a, 0x10, 0x02, 0xa4, 0x2e, 0x2d, 0x48, 0x2d, 0x0b, 0x5d, 0x4e, 0x3e, + 0xdf, 0x8b, 0x6b, 0xb8, 0x3b, 0x5b, 0xb6, 0xef, 0x68, 0x36, 0x06, 0x16, 0x36, 0xbe, 0x05, 0x7c, + 0x8c, 0xb2, 0x31, 0x46, 0x4c, 0x19, 0xc9, 0x65, 0x61, 0x41, 0xea, 0x47, 0x40, 0xf8, 0x9a, 0x40, + 0x22, 0x02, 0x64, 0xc8, 0xf6, 0x2c, 0xff, 0xff, 0xbf, 0xff, 0x93, 0xfd, 0x6c, 0x7c, 0xbf, 0x02, + 0x13, 0x0a, 0x19, 0x19, 0x76, 0x04, 0x39, 0x8d, 0xac, 0x54, 0x32, 0x93, 0xbc, 0x3f, 0x2d, 0xe2, + 0x94, 0xc5, 0x2c, 0x2b, 0x8d, 0x05, 0x1d, 0x73, 0x2d, 0x4b, 0x15, 0xc9, 0xe4, 0x25, 0x30, 0x1b, + 0x2a, 0x2d, 0xad, 0xf4, 0x6f, 0x36, 0xf6, 0xb0, 0xb1, 0x87, 0x13, 0x57, 0xb8, 0xd0, 0xbe, 0x19, + 0x70, 0x61, 0x8f, 0xca, 0x24, 0x64, 0x32, 0x8f, 0xb8, 0xe4, 0x32, 0x72, 0xa0, 0xa4, 0xec, 0xb9, + 0x95, 0x5b, 0xb8, 0xaa, 0x09, 0xd8, 0xbc, 0x32, 0xdb, 0x9f, 0x54, 0x56, 0xc8, 0xc2, 0x9c, 0x6d, + 0xde, 0x5b, 0xba, 0x79, 0xdb, 0x57, 0x30, 0x71, 0x77, 0x17, 0xb9, 0x7f, 0xd3, 0x5c, 0x9e, 0xd3, + 0x2c, 0xb6, 0x57, 0x60, 0xa0, 0xa8, 0x66, 0x1b, 0xec, 0x7e, 0x3f, 0x8f, 0xdb, 0xcf, 0xdc, 0x79, + 0xf9, 0x77, 0xf1, 0x46, 0x0e, 0x96, 0xa6, 0xd4, 0xd2, 0x0e, 0xda, 0x42, 0xd7, 0x2f, 0xdc, 0xba, + 0x1a, 0xce, 0x1e, 0x5e, 0x23, 0xdc, 0x03, 0x4b, 0x9f, 0xf7, 0x15, 0xec, 0x4f, 0xe5, 0xfe, 0x2e, + 0xbe, 0x64, 0xfa, 0xc6, 0x42, 0x1e, 0x4f, 0x09, 0xe7, 0x1c, 0xe1, 0xda, 0x1c, 0xe1, 0xc0, 0xa9, + 0xe6, 0x38, 0x17, 0x1b, 0xef, 0xde, 0x84, 0xf6, 0x14, 0xb7, 0x8c, 0x02, 0xd6, 0x59, 0x73, 0x88, + 0xed, 0x70, 0xd9, 0x1b, 0x0c, 0x0f, 0x14, 0x30, 0x47, 0x76, 0x9c, 0xed, 0x77, 0xad, 0x2f, 0x9f, + 0x3a, 0x6f, 0x5b, 0xb8, 0x87, 0xd7, 0x76, 0xc0, 0xfa, 0x71, 0xef, 0xce, 0x31, 0x0b, 0x8c, 0xb0, + 0x10, 0xe4, 0xb4, 0xa0, 0x1c, 0x72, 0x28, 0x6c, 0x90, 0x50, 0x23, 0x58, 0x90, 0xcb, 0x42, 0x58, + 0xa9, 0x6f, 0x6c, 0xfd, 0x51, 0x63, 0x2c, 0x2d, 0x52, 0xaa, 0xd3, 0x5f, 0xb2, 0x0a, 0x4c, 0x20, + 0x64, 0x20, 0x0a, 0x0b, 0xba, 0xa0, 0x59, 0xa0, 0x81, 0xa6, 0x18, 0xf0, 0xfa, 0x3e, 0xa8, 0x8c, + 0x32, 0xf0, 0x0f, 0xff, 0x92, 0x55, 0x1a, 0xf8, 0x67, 0x50, 0xa3, 0x99, 0x4f, 0x79, 0xad, 0x85, + 0x05, 0x9c, 0xe2, 0xf6, 0x63, 0x0d, 0xd4, 0xae, 0x3c, 0xe5, 0x09, 0x64, 0xb0, 0xe2, 0x14, 0x8e, + 0x5b, 0xbb, 0xc2, 0xac, 0xfe, 0x6e, 0xba, 0x80, 0x37, 0x26, 0xd3, 0xe1, 0xbf, 0xc0, 0xeb, 0x9c, + 0xc5, 0x6e, 0xd4, 0x9a, 0x79, 0x7f, 0xb8, 0xfc, 0xa8, 0xed, 0x64, 0x32, 0xa1, 0xd9, 0x74, 0xe0, + 0xda, 0x9c, 0xfd, 0xac, 0x1f, 0x7d, 0x40, 0x27, 0x0f, 0xbc, 0xc1, 0x88, 0x78, 0xc3, 0x11, 0xf1, + 0x4e, 0x47, 0x04, 0xbd, 0xa9, 0x09, 0xfa, 0x58, 0x13, 0xf4, 0xb9, 0x26, 0x68, 0x50, 0x13, 0x34, + 0xac, 0x09, 0xfa, 0x5a, 0x13, 0xf4, 0xad, 0x26, 0xde, 0x69, 0x4d, 0xd0, 0xfb, 0x31, 0xf1, 0x4e, + 0xc6, 0x04, 0x0d, 0xc6, 0xc4, 0x1b, 0x8e, 0x89, 0x77, 0xd8, 0xe3, 0x52, 0xbd, 0xe2, 0x61, 0x25, + 0x33, 0x0b, 0x5a, 0xd3, 0xb0, 0x34, 0x91, 0x2b, 0x7a, 0x52, 0xe7, 0x81, 0xd2, 0xb2, 0x12, 0x29, + 0xe8, 0x60, 0xb2, 0x1d, 0xa9, 0x84, 0xcb, 0x08, 0x8e, 0xed, 0xd9, 0x5b, 0xff, 0xef, 0xff, 0x26, + 0x69, 0xbb, 0x7f, 0xe0, 0xf6, 0x8f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xcf, 0xb1, 0x4e, 0x2d, 0x67, + 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesapi.go index 8f0df678d..920bf37b9 100644 --- a/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesapi.go @@ -2937,6 +2937,89 @@ var APISwaggerJSON string = `{ } } }, + "schemaIpSubnetType": { + "type": "object", + "description": "IP Address used to specify an IPv4 or IPv6 subnet addresses", + "title": "IP Subnet", + "x-displayname": "IP Subnet", + "x-ves-displayorder": "3", + "x-ves-oneof-field-ver": "[\"ipv4\",\"ipv6\"]", + "x-ves-proto-message": "ves.io.schema.IpSubnetType", + "properties": { + "ipv4": { + "description": "Exclusive with [ipv6]\n IPv4 Subnet Address", + "title": "IPv4 Subnet", + "$ref": "#/definitions/schemaIpv4SubnetType", + "x-displayname": "IPv4 Subnet" + }, + "ipv6": { + "description": "Exclusive with [ipv4]\n IPv6 Subnet Address", + "title": "IPv6 Subnet", + "$ref": "#/definitions/schemaIpv6SubnetType", + "x-displayname": "IPv6 Subnet" + } + } + }, + "schemaIpv4SubnetType": { + "type": "object", + "description": "IPv4 subnets specified as prefix and prefix-length. Prefix length must be \u003c= 32", + "title": "IPv4 Subnet", + "x-displayname": "IPv4 Subnet", + "x-ves-proto-message": "ves.io.schema.Ipv4SubnetType", + "properties": { + "plen": { + "type": "integer", + "description": " Prefix-length of the IPv4 subnet. Must be \u003c= 32\n\nExample: - \"24\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 32\n", + "title": "Prefix Length", + "format": "int64", + "x-displayname": "Prefix Length", + "x-ves-example": "24", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "32" + } + }, + "prefix": { + "type": "string", + "description": " Prefix part of the IPv4 subnet in string form with dot-decimal notation\n\nExample: - \"192.168.1.0\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "Prefix", + "x-displayname": "Prefix", + "x-ves-example": "192.168.1.0", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + } + } + }, + "schemaIpv6SubnetType": { + "type": "object", + "description": "IPv6 subnets specified as prefix and prefix-length. prefix-legnth must be \u003c= 128", + "title": "IPv6 Subnet", + "x-displayname": "IPv6 Subnet", + "x-ves-proto-message": "ves.io.schema.Ipv6SubnetType", + "properties": { + "plen": { + "type": "integer", + "description": " Prefix length of the IPv6 subnet. Must be \u003c= 128\n\nExample: - \"38\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 128\n", + "title": "Prefix length", + "format": "int64", + "x-displayname": "Prefix Length", + "x-ves-example": "38", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "128" + } + }, + "prefix": { + "type": "string", + "description": " Prefix part of the IPv6 subnet given in form of string.\n IPv6 address must be specified as hexadecimal numbers separated by ':'\n e.g. \"2001:db8:0:0:0:2:0:0\"\n The address can be compacted by suppressing zeros\n e.g. \"2001:db8::2::\"\n\nExample: - \"2001:db8:0:0:0:0:2:0\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "Prefix", + "x-displayname": "Prefix", + "x-ves-example": "2001:db8:0:0:0:0:2:0", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + } + } + }, "schemaListMetaType": { "type": "object", "description": "ListMetaType is metadata that all lists must have.", @@ -2966,10 +3049,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3224,6 +3311,206 @@ var APISwaggerJSON string = `{ } } }, + "schemaVirtualNetworkType": { + "type": "string", + "description": "Different types of virtual networks understood by the system\n\nVirtual-network of type VIRTUAL_NETWORK_SITE_LOCAL provides connectivity to public (outside) network.\nThis is an insecure network and is connected to public internet via NAT Gateways/firwalls\nVirtual-network of this type is local to every site. Two virtual networks of this type on different\nsites are neither related nor connected.\n\nConstraints:\nThere can be atmost one virtual network of this type in a given site.\nThis network type is supported on CE sites. This network is created automatically and present on all sites\nVirtual-network of type VIRTUAL_NETWORK_SITE_LOCAL_INSIDE is a private network inside site.\nIt is a secure network and is not connected to public network.\nVirtual-network of this type is local to every site. Two virtual networks of this type on different\nsites are neither related nor connected.\n\nConstraints:\nThere can be atmost one virtual network of this type in a given site.\nThis network type is supported on CE sites. This network is created during provisioning of site\nUser defined per-site virtual network. Scope of this virtual network is limited to the site.\nThis is not yet supported\nVirtual-network of type VIRTUAL_NETWORK_PUBLIC directly conects to the public internet.\nVirtual-network of this type is local to every site. Two virtual networks of this type on different sites are neither related nor connected.\n\nConstraints:\nThere can be atmost one virtual network of this type in a given site.\nThis network type is supported on RE sites only\nIt is an internally created by the system. They must not be created by user\nVirtual Neworks with global scope across different sites in F5XC domain.\nAn example global virtual-network called \"AIN Network\" is created for every tenant.\nfor volterra fabric\n\nConstraints:\nIt is currently only supported as internally created by the system.\nvK8s service network for a given tenant. Used to advertise a virtual host only to vk8s pods for that tenant\nConstraints:\nIt is an internally created by the system. Must not be created by user\nVER internal network for the site. It can only be used for virtual hosts with SMA_PROXY type proxy\nConstraints:\nIt is an internally created by the system. Must not be created by user\nVirtual-network of type VIRTUAL_NETWORK_SITE_LOCAL_INSIDE_OUTSIDE represents both\nVIRTUAL_NETWORK_SITE_LOCAL and VIRTUAL_NETWORK_SITE_LOCAL_INSIDE\n\nConstraints:\nThis network type is only meaningful in an advertise policy\nWhen virtual-network of type VIRTUAL_NETWORK_IP_AUTO is selected for\nan endpoint, VER will try to determine the network based on the provided\nIP address\n\nConstraints:\nThis network type is only meaningful in an endpoint\n\nVoltADN Private Network is used on volterra RE(s) to connect to customer private networks\nThis network is created by opening a support ticket\n\nThis network is per site srv6 network\nVER IP Fabric network for the site.\nThis Virtual network type is used for exposing virtual host on IP Fabric network on the VER site or\nfor endpoint in IP Fabric network\nConstraints:\nIt is an internally created by the system. Must not be created by user\nNetwork internally created for a segment\nConstraints:\nIt is an internally created by the system. Must not be created by user", + "title": "VirtualNetworkType", + "enum": [ + "VIRTUAL_NETWORK_SITE_LOCAL", + "VIRTUAL_NETWORK_SITE_LOCAL_INSIDE", + "VIRTUAL_NETWORK_PER_SITE", + "VIRTUAL_NETWORK_PUBLIC", + "VIRTUAL_NETWORK_GLOBAL", + "VIRTUAL_NETWORK_SITE_SERVICE", + "VIRTUAL_NETWORK_VER_INTERNAL", + "VIRTUAL_NETWORK_SITE_LOCAL_INSIDE_OUTSIDE", + "VIRTUAL_NETWORK_IP_AUTO", + "VIRTUAL_NETWORK_VOLTADN_PRIVATE_NETWORK", + "VIRTUAL_NETWORK_SRV6_NETWORK", + "VIRTUAL_NETWORK_IP_FABRIC", + "VIRTUAL_NETWORK_SEGMENT" + ], + "default": "VIRTUAL_NETWORK_SITE_LOCAL", + "x-displayname": "Virtual Network Type", + "x-ves-proto-enum": "ves.io.schema.VirtualNetworkType" + }, + "siteActiveState": { + "type": "string", + "description": "Active/Backup state for the interface\n\nUnknown state\nInterface in active state\nInterface in backup state", + "title": "Active State", + "enum": [ + "STATE_UNKNOWN", + "STATE_ACTIVE", + "STATE_BACKUP" + ], + "default": "STATE_UNKNOWN", + "x-displayname": "Active State", + "x-ves-proto-enum": "ves.io.schema.site.ActiveState" + }, + "siteAddressMode": { + "type": "string", + "description": "AddressMode identifies the mode of address assignment on an interface\n\n - STATIC: Static\n\nInterface Address is assigned statically\n - DHCP: DHCP\n\nInterface Address is obtained via DHCP", + "title": "Interface Address Mode", + "enum": [ + "STATIC", + "DHCP" + ], + "default": "STATIC", + "x-displayname": "AddressMode", + "x-ves-proto-enum": "ves.io.schema.site.AddressMode" + }, + "siteBondMembersType": { + "type": "object", + "description": "BondMembersType represents the bond interface members along with the corresponding link state", + "title": "Bond Interface Members", + "x-displayname": "Bond Interface Members", + "x-ves-proto-message": "ves.io.schema.site.BondMembersType", + "properties": { + "link_speed": { + "type": "integer", + "description": " Link speed of Bond Interface Member in Mbps", + "title": "Link Speed\nx-displayName: \"Link Speed in Mbps\"\nLink speed of Bond Interface Member in Mbps", + "format": "int64", + "x-displayname": "Link Speed in Mbps" + }, + "link_state": { + "type": "boolean", + "description": " Link state of Bond Interface Member", + "title": "Link State\nx-displayName: \"Link State\"\nLink state of Bond Interface Member", + "format": "boolean", + "x-displayname": "Link State" + }, + "name": { + "type": "string", + "description": " Name of the Bond Interface Member", + "title": "Name\nx-displayName: \"Name\"\nName of the Bond Interface Member", + "x-displayname": "Name" + } + } + }, + "siteInterfaceStatus": { + "type": "object", + "description": "Status of Interfaces in ver", + "title": "Interface Status", + "x-displayname": "Interface Status", + "x-ves-proto-message": "ves.io.schema.site.InterfaceStatus", + "properties": { + "active_state": { + "description": " Active state for the interface", + "title": "Active-Backup status\nx-displayName: \"Active/Backup status\"\nActive state for the interface", + "$ref": "#/definitions/siteActiveState", + "x-displayname": "Active/Backup status" + }, + "bond_members": { + "type": "array", + "description": " Members of the Bond interface along with the corresponding link state", + "title": "Bond Interface Members\nx-displayName: \"Bond Members\"\nMembers of the Bond interface along with the corresponding link state", + "items": { + "$ref": "#/definitions/siteBondMembersType" + }, + "x-displayname": "Bond Members" + }, + "dhcp_server": { + "type": "boolean", + "description": " Indicate if DHCP server is configured on the interface", + "title": "DHCP Server", + "format": "boolean", + "x-displayname": "DHCP Server" + }, + "ip": { + "description": " IP address of interface", + "title": "IP subnet", + "$ref": "#/definitions/schemaIpSubnetType", + "x-displayname": "IP Subnet" + }, + "ip_mode": { + "description": " Mode of address assignment on the interface", + "title": "IP Mode", + "$ref": "#/definitions/siteAddressMode", + "x-displayname": "IP Mode" + }, + "ipv6": { + "description": " IPv6 address of interface", + "title": "IPv6 subnet", + "$ref": "#/definitions/schemaIpSubnetType", + "x-displayname": "IPv6 Subnet" + }, + "link_quality": { + "description": " Link quality for the interface", + "title": "Link quality status\nx-displayName: \"Link Quality\"\nLink quality for the interface", + "$ref": "#/definitions/siteLinkQuality", + "x-displayname": "Link Quality" + }, + "link_state": { + "type": "boolean", + "description": " Link State for the interface", + "title": "Link State\nx-displayName: \"Link State\"\nLink State for the interface", + "format": "boolean", + "x-displayname": "Link State" + }, + "link_type": { + "description": " Link type for the interface", + "title": "Link type\nx-displayName: \"Link type\"\nLink type for the interface", + "$ref": "#/definitions/siteLinkType", + "x-displayname": "Link type" + }, + "mac": { + "type": "string", + "description": " Mac Address of interface", + "title": "Mac Address", + "x-displayname": "Mac Address" + }, + "name": { + "type": "string", + "description": " Name of interface", + "title": "Name", + "x-displayname": "Name" + }, + "network_name": { + "type": "string", + "description": " Name of Virtual Network to which the interface belongs", + "title": "Virtual Network Name", + "x-displayname": "Virtual Network Name" + }, + "network_type": { + "description": " Virtual Network Type of interface", + "title": "Virtual Network Type", + "$ref": "#/definitions/schemaVirtualNetworkType", + "x-displayname": "Virtual Network Type" + } + } + }, + "siteLinkQuality": { + "type": "string", + "description": "Link quality determined by VER using different probes\n\nUnknown quality\nLink quality is good\nLink quality is poor\nQuality disabled", + "title": "Link quality", + "enum": [ + "QUALITY_UNKNOWN", + "QUALITY_GOOD", + "QUALITY_POOR", + "QUALITY_DISABLED" + ], + "default": "QUALITY_UNKNOWN", + "x-displayname": "Link quality", + "x-ves-proto-enum": "ves.io.schema.site.LinkQuality" + }, + "siteLinkType": { + "type": "string", + "description": "Link type of interface determined operationally\n\nLink type unknown\nLink type ethernet\nWiFi link of type 802.11ac\nWiFi link of type 802.11bgn\nLink type 4G\nWiFi link\nWan link", + "title": "Link type", + "enum": [ + "LINK_TYPE_UNKNOWN", + "LINK_TYPE_ETHERNET", + "LINK_TYPE_WIFI_802_11AC", + "LINK_TYPE_WIFI_802_11BGN", + "LINK_TYPE_4G", + "LINK_TYPE_WIFI", + "LINK_TYPE_WAN" + ], + "default": "LINK_TYPE_UNKNOWN", + "x-displayname": "Link type", + "x-ves-proto-enum": "ves.io.schema.site.LinkType" + }, "topologyAddressInfoType": { "type": "object", "description": "Address with additional information", @@ -3278,6 +3565,12 @@ var APISwaggerJSON string = `{ "format": "int64", "x-displayname": "CPU Count" }, + "f5xc_node_name": { + "type": "string", + "description": " F5XC node name", + "title": "F5XC Node name", + "x-displayname": "F5XC Node Name" + }, "instance_type": { "type": "string", "description": " Instance type", @@ -3402,6 +3695,12 @@ var APISwaggerJSON string = `{ "x-displayname": "Network Interface", "x-ves-proto-message": "ves.io.schema.topology.NetworkInterfaceType", "properties": { + "f5xc_status": { + "description": " F5XC side interface status", + "title": "F5XC status", + "$ref": "#/definitions/siteInterfaceStatus", + "x-displayname": "f5xc status" + }, "name": { "type": "string", "description": " Name of this interface", diff --git a/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesmsg.go b/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesmsg.go index ab94d7a27..886bba3e7 100644 --- a/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesmsg.go +++ b/pbgo/extschema/schema/topology/topology_instance/crudapi/api.vesmsg.go @@ -176,6 +176,8 @@ var DefaultObjectCreateReqValidator = func() *ValidateObjectCreateReq { v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = ves_io_schema_topology_topology_instance.SpecTypeValidator().Validate + return v }() @@ -352,6 +354,8 @@ var DefaultObjectCreateRspValidator = func() *ValidateObjectCreateRsp { v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = ves_io_schema_topology_topology_instance.SpecTypeValidator().Validate + return v }() @@ -804,6 +808,8 @@ var DefaultObjectGetRspValidator = func() *ValidateObjectGetRsp { v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = ves_io_schema_topology_topology_instance.SpecTypeValidator().Validate + return v }() @@ -1313,6 +1319,8 @@ var DefaultObjectListRspItemValidator = func() *ValidateObjectListRspItem { v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = ves_io_schema_topology_topology_instance.SpecTypeValidator().Validate + return v }() @@ -1447,6 +1455,8 @@ var DefaultObjectReplaceReqValidator = func() *ValidateObjectReplaceReq { v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = ves_io_schema_topology_topology_instance.SpecTypeValidator().Validate + return v }() @@ -1614,6 +1624,8 @@ var DefaultObjectReplaceRspValidator = func() *ValidateObjectReplaceRsp { v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = ves_io_schema_topology_topology_instance.SpecTypeValidator().Validate + return v }() diff --git a/pbgo/extschema/schema/topology/topology_instance/object.pb.go b/pbgo/extschema/schema/topology/topology_instance/object.pb.go index fcc105553..a87463fa5 100644 --- a/pbgo/extschema/schema/topology/topology_instance/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_instance/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_f53d96024d9e4d34 = []byte{ - // 507 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xbf, 0x6e, 0x13, 0x41, - 0x10, 0xc6, 0x6f, 0x1d, 0xcb, 0x89, 0x16, 0x09, 0xa4, 0xab, 0x4c, 0x10, 0xab, 0xc8, 0x34, 0x29, - 0xb8, 0x3b, 0x29, 0x10, 0x14, 0x28, 0xf8, 0x2f, 0xd2, 0x24, 0x42, 0x24, 0x54, 0x48, 0x60, 0xed, - 0xad, 0xc7, 0x97, 0x85, 0xbb, 0x9b, 0xd5, 0xee, 0xfa, 0x88, 0x3b, 0x1e, 0x81, 0x37, 0xa0, 0x45, - 0xe2, 0x25, 0x42, 0x87, 0x68, 0xb0, 0xa8, 0x5c, 0xe2, 0x73, 0x43, 0x99, 0x47, 0x40, 0xec, 0xc5, - 0x16, 0x36, 0x88, 0x58, 0x72, 0x37, 0xab, 0xf9, 0xbe, 0xdf, 0xcd, 0xcd, 0xa7, 0xa1, 0xdb, 0x05, - 0x98, 0x50, 0x62, 0x64, 0xc4, 0x11, 0x64, 0x3c, 0xb2, 0xa8, 0x30, 0xc5, 0xa4, 0x3f, 0x2d, 0xda, - 0x32, 0x37, 0x96, 0xe7, 0x02, 0x22, 0x8c, 0x5f, 0x83, 0xb0, 0xa1, 0xd2, 0x68, 0xd1, 0xdf, 0xac, - 0x6c, 0x61, 0x65, 0x0b, 0x27, 0xea, 0xf0, 0x2f, 0xdb, 0x7a, 0x90, 0x48, 0x7b, 0xd4, 0x8b, 0x43, - 0x81, 0x59, 0x94, 0x60, 0x82, 0x91, 0x03, 0xc4, 0xbd, 0xae, 0x7b, 0xb9, 0x87, 0xab, 0x2a, 0xf0, - 0xfa, 0x95, 0xd9, 0x79, 0x50, 0x59, 0x89, 0xb9, 0x39, 0x6b, 0xde, 0x5c, 0x78, 0x58, 0xdb, 0x57, - 0x30, 0x71, 0x5d, 0x9e, 0x73, 0xfd, 0xd1, 0x6a, 0xcd, 0xb6, 0x0a, 0x30, 0x90, 0x17, 0xb3, 0x1f, - 0x6d, 0x7d, 0xaa, 0xd3, 0xc6, 0x53, 0xf7, 0xef, 0xfe, 0x6d, 0xba, 0x96, 0x81, 0xe5, 0x1d, 0x6e, - 0x79, 0x93, 0x6c, 0x90, 0xcd, 0x0b, 0x5b, 0x57, 0xc3, 0xd9, 0x45, 0x54, 0xc2, 0x7d, 0xb0, 0xfc, - 0x79, 0x5f, 0xc1, 0xc1, 0x54, 0xee, 0xef, 0xd1, 0x4b, 0xa6, 0x6f, 0x2c, 0x64, 0xed, 0x29, 0xa1, - 0xe6, 0x08, 0xd7, 0xe6, 0x08, 0x87, 0x4e, 0x35, 0xc7, 0xb9, 0x58, 0x79, 0xf7, 0x27, 0xb4, 0x27, - 0xb4, 0x6e, 0x14, 0x88, 0xe6, 0x8a, 0x43, 0x6c, 0x85, 0x8b, 0xa6, 0x11, 0x1e, 0x2a, 0x10, 0x8e, - 0xe8, 0xfc, 0x77, 0xbe, 0xd5, 0xbe, 0x7f, 0x6e, 0x7e, 0xad, 0xd1, 0x7b, 0x74, 0x65, 0x17, 0xac, - 0xbf, 0xd3, 0xdd, 0x3e, 0x16, 0x81, 0x91, 0x16, 0x82, 0x8c, 0xe7, 0x3c, 0x81, 0x0c, 0x72, 0x1b, - 0xc4, 0xdc, 0x48, 0x11, 0x64, 0x98, 0x4b, 0x8b, 0xfa, 0xfa, 0x46, 0x01, 0x26, 0x90, 0x18, 0xc8, - 0xdc, 0x82, 0xce, 0x79, 0x1a, 0x68, 0xe0, 0x1d, 0xfa, 0x80, 0xae, 0x1e, 0x80, 0x4a, 0xb9, 0x00, - 0xff, 0xd6, 0x7f, 0x20, 0x3d, 0x03, 0xff, 0x20, 0xbc, 0xd5, 0xd2, 0x02, 0xbd, 0x4f, 0x1b, 0x8f, - 0x34, 0x70, 0xbb, 0x14, 0xe1, 0x31, 0xa4, 0xb0, 0x14, 0xa1, 0xbe, 0x27, 0xcd, 0x12, 0x8b, 0x68, - 0xbd, 0xa4, 0x6b, 0x93, 0x1d, 0xfb, 0xcf, 0xe8, 0x6a, 0x22, 0xda, 0x2e, 0xa8, 0x2a, 0xeb, 0x9d, - 0xc5, 0x83, 0xda, 0x4d, 0x31, 0xe6, 0xe9, 0x34, 0xae, 0x46, 0x22, 0x7e, 0xd7, 0x0f, 0x3f, 0x90, - 0x93, 0xbb, 0xde, 0x60, 0xc4, 0xbc, 0xe1, 0x88, 0x79, 0xa7, 0x23, 0x46, 0xde, 0x95, 0x8c, 0x7c, - 0x2c, 0x19, 0xf9, 0x52, 0x32, 0x32, 0x28, 0x19, 0x19, 0x96, 0x8c, 0xfc, 0x28, 0x19, 0xf9, 0x59, - 0x32, 0xef, 0xb4, 0x64, 0xe4, 0xfd, 0x98, 0x79, 0x27, 0x63, 0x46, 0x06, 0x63, 0xe6, 0x0d, 0xc7, - 0xcc, 0x7b, 0xf1, 0x2a, 0x41, 0xf5, 0x26, 0x09, 0x0b, 0x4c, 0x2d, 0x68, 0xcd, 0xc3, 0x9e, 0x89, - 0x5c, 0xd1, 0x45, 0x9d, 0x05, 0x4a, 0x63, 0x21, 0x3b, 0xa0, 0x83, 0x49, 0x3b, 0x52, 0x71, 0x82, - 0x11, 0x1c, 0xdb, 0xb3, 0x0b, 0x39, 0xf7, 0xf2, 0xe2, 0x86, 0xbb, 0x9a, 0x1b, 0xbf, 0x02, 0x00, - 0x00, 0xff, 0xff, 0x1e, 0x25, 0x2f, 0xb8, 0x59, 0x04, 0x00, 0x00, + // 522 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0x13, 0x31, + 0x14, 0xc7, 0xcf, 0x34, 0xa4, 0x95, 0x91, 0x40, 0xba, 0x29, 0x14, 0x61, 0x55, 0x61, 0xe9, 0xc0, + 0xf9, 0xa4, 0x42, 0x25, 0x60, 0x60, 0x00, 0x44, 0x97, 0x56, 0x88, 0x96, 0xa9, 0x12, 0x44, 0x3e, + 0xdf, 0x8b, 0x6b, 0xb8, 0x3b, 0x5b, 0xb6, 0x73, 0x34, 0x1b, 0x03, 0x0b, 0x1b, 0xdf, 0x80, 0x95, + 0x8f, 0x51, 0x36, 0xc6, 0x88, 0x29, 0x23, 0xb9, 0x08, 0x89, 0xb1, 0x1f, 0x01, 0xd5, 0xd7, 0x04, + 0x12, 0x10, 0xcd, 0x92, 0xed, 0x59, 0xef, 0xff, 0xff, 0xfd, 0x7d, 0xe7, 0x67, 0xe3, 0xed, 0x12, + 0x2c, 0x95, 0x2a, 0xb6, 0xfc, 0x08, 0x72, 0x16, 0x3b, 0xa5, 0x55, 0xa6, 0x44, 0x7f, 0x5a, 0x74, + 0x64, 0x61, 0x1d, 0x2b, 0x38, 0xc4, 0x2a, 0x79, 0x0d, 0xdc, 0x51, 0x6d, 0x94, 0x53, 0xe1, 0x66, + 0x6d, 0xa3, 0xb5, 0x8d, 0x4e, 0xd4, 0xf4, 0x2f, 0xdb, 0x7a, 0x24, 0xa4, 0x3b, 0xea, 0x25, 0x94, + 0xab, 0x3c, 0x16, 0x4a, 0xa8, 0xd8, 0x03, 0x92, 0x5e, 0xd7, 0xaf, 0xfc, 0xc2, 0x57, 0x35, 0x78, + 0xfd, 0xc6, 0xec, 0x7e, 0x94, 0x76, 0x52, 0x15, 0xf6, 0xbc, 0x79, 0x77, 0xe1, 0xcd, 0xba, 0xbe, + 0x86, 0x89, 0xeb, 0xfa, 0x9c, 0xeb, 0x8f, 0x56, 0x7b, 0xb6, 0x55, 0x82, 0x85, 0xa2, 0x9c, 0x0d, + 0x6d, 0xff, 0xb8, 0x8c, 0x9b, 0xcf, 0xfc, 0xb7, 0x87, 0xf7, 0xf1, 0x5a, 0x0e, 0x8e, 0xa5, 0xcc, + 0xb1, 0x16, 0xda, 0x40, 0x9b, 0x57, 0xb6, 0x6e, 0xd2, 0xd9, 0x1f, 0x51, 0x0b, 0xf7, 0xc0, 0xb1, + 0x17, 0x7d, 0x0d, 0xfb, 0x53, 0x79, 0xb8, 0x8b, 0xaf, 0xd9, 0xbe, 0x75, 0x90, 0x77, 0xa6, 0x84, + 0x4b, 0x9e, 0x70, 0x6b, 0x8e, 0x70, 0xe0, 0x55, 0x73, 0x9c, 0xab, 0xb5, 0x77, 0x6f, 0x42, 0x7b, + 0x8a, 0x1b, 0x56, 0x03, 0x6f, 0xad, 0x78, 0xc4, 0x16, 0x5d, 0xf4, 0x34, 0xe8, 0x81, 0x06, 0xee, + 0x89, 0xde, 0xff, 0xe0, 0x43, 0xe3, 0xdb, 0x97, 0xd6, 0xfb, 0x06, 0xee, 0xe2, 0x95, 0x1d, 0x70, + 0x61, 0xa7, 0xbb, 0x7d, 0xcc, 0x23, 0x2b, 0x1d, 0x44, 0x39, 0x2b, 0x98, 0x80, 0x1c, 0x0a, 0x17, + 0x25, 0xcc, 0x4a, 0x1e, 0xe5, 0xaa, 0x90, 0x4e, 0x99, 0xdb, 0x1b, 0xff, 0xd4, 0x9c, 0xe1, 0x53, + 0x66, 0xd2, 0xdf, 0xb2, 0x12, 0x6c, 0x24, 0x55, 0x24, 0x0b, 0x07, 0xa6, 0x60, 0x59, 0x64, 0x80, + 0xa5, 0x18, 0xf0, 0xea, 0x3e, 0xe8, 0x8c, 0x71, 0x08, 0x0f, 0xff, 0x93, 0xd5, 0xb3, 0x70, 0x61, + 0x50, 0xad, 0x99, 0x4f, 0x79, 0x6b, 0xa4, 0x03, 0x9c, 0xe2, 0xe6, 0x63, 0x03, 0xcc, 0x2d, 0x3d, + 0xe5, 0x09, 0x64, 0xb0, 0xe4, 0x14, 0x81, 0x1b, 0xbb, 0xd2, 0x2e, 0xff, 0x6c, 0xda, 0x2f, 0xf1, + 0xda, 0x64, 0x3a, 0xc2, 0xe7, 0x78, 0x55, 0xf0, 0x8e, 0x1f, 0xb1, 0x7a, 0x4a, 0xef, 0x2d, 0x3e, + 0x62, 0x3b, 0x99, 0x4a, 0x58, 0x36, 0x1d, 0xb4, 0xa6, 0xe0, 0x67, 0xf5, 0xa3, 0x4f, 0xe8, 0xe4, + 0x61, 0x30, 0x18, 0x91, 0x60, 0x38, 0x22, 0xc1, 0xe9, 0x88, 0xa0, 0x77, 0x15, 0x41, 0x9f, 0x2b, + 0x82, 0xbe, 0x56, 0x04, 0x0d, 0x2a, 0x82, 0x86, 0x15, 0x41, 0xdf, 0x2b, 0x82, 0x7e, 0x56, 0x24, + 0x38, 0xad, 0x08, 0xfa, 0x38, 0x26, 0xc1, 0xc9, 0x98, 0xa0, 0xc1, 0x98, 0x04, 0xc3, 0x31, 0x09, + 0x0e, 0x5f, 0x09, 0xa5, 0xdf, 0x08, 0x5a, 0xaa, 0xcc, 0x81, 0x31, 0x8c, 0xf6, 0x6c, 0xec, 0x8b, + 0xae, 0x32, 0x79, 0xa4, 0x8d, 0x2a, 0x65, 0x0a, 0x26, 0x9a, 0xb4, 0x63, 0x9d, 0x08, 0x15, 0xc3, + 0xb1, 0x3b, 0xbf, 0xdb, 0x17, 0xbe, 0x19, 0x49, 0xd3, 0xdf, 0xf7, 0x3b, 0xbf, 0x02, 0x00, 0x00, + 0xff, 0xff, 0xa1, 0x96, 0x2d, 0xbc, 0x13, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_instance/object.vesmsg.go b/pbgo/extschema/schema/topology/topology_instance/object.vesmsg.go index 7434a1bde..974800548 100644 --- a/pbgo/extschema/schema/topology/topology_instance/object.vesmsg.go +++ b/pbgo/extschema/schema/topology/topology_instance/object.vesmsg.go @@ -120,6 +120,8 @@ func (v *ValidateSpecType) Validate(ctx context.Context, pm interface{}, opts .. var DefaultSpecTypeValidator = func() *ValidateSpecType { v := &ValidateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["gc_spec"] = GlobalSpecTypeValidator().Validate + return v }() diff --git a/pbgo/extschema/schema/topology/topology_instance/object.vesobj.go b/pbgo/extschema/schema/topology/topology_instance/object.vesobj.go index f2bc7b733..3d15822c1 100644 --- a/pbgo/extschema/schema/topology/topology_instance/object.vesobj.go +++ b/pbgo/extschema/schema/topology/topology_instance/object.vesobj.go @@ -781,6 +781,8 @@ var DefaultObjectValidator = func() *ValidateObject { v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + v.FldValidators["spec"] = SpecTypeValidator().Validate + return v }() diff --git a/pbgo/extschema/schema/topology/topology_instance/types.vesmsg.go b/pbgo/extschema/schema/topology/topology_instance/types.vesmsg.go index 6fd7f2c1b..4b511d0ba 100644 --- a/pbgo/extschema/schema/topology/topology_instance/types.vesmsg.go +++ b/pbgo/extschema/schema/topology/topology_instance/types.vesmsg.go @@ -13,6 +13,8 @@ import ( "gopkg.volterra.us/stdlib/codec" "gopkg.volterra.us/stdlib/db" "gopkg.volterra.us/stdlib/errors" + + ves_io_schema_topology "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/topology" ) var ( @@ -160,6 +162,8 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["topology_spec"] = ves_io_schema_topology.InstanceTypeValidator().Validate + return v }() diff --git a/pbgo/extschema/schema/topology/topology_network/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_network/crudapi/api.vesapi.go index c89ee168d..17e715efe 100644 --- a/pbgo/extschema/schema/topology/topology_network/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_network/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_network/object.pb.go b/pbgo/extschema/schema/topology/topology_network/object.pb.go index 0a102c3f9..01f8dfb45 100644 --- a/pbgo/extschema/schema/topology/topology_network/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_network/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_2604e7dcb5804676 = []byte{ - // 506 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xbf, 0x6e, 0x13, 0x41, - 0x10, 0xc6, 0x6f, 0x1d, 0xcb, 0x89, 0x16, 0x09, 0xa4, 0xab, 0x4c, 0x10, 0xab, 0xc8, 0x14, 0x50, - 0x70, 0x7b, 0x82, 0xf0, 0xbf, 0xe0, 0x3f, 0x4a, 0x93, 0x08, 0x94, 0x50, 0x21, 0x90, 0xb5, 0x77, - 0x1e, 0x5f, 0x96, 0xdc, 0xdd, 0xac, 0x76, 0xd7, 0x97, 0xb8, 0xe3, 0x11, 0x78, 0x02, 0x6a, 0xc4, - 0x53, 0x84, 0x0e, 0xd1, 0x60, 0x51, 0xb9, 0xc4, 0xe7, 0x86, 0x32, 0x8f, 0x80, 0xd8, 0x8b, 0x2d, - 0x6c, 0x21, 0xb0, 0xe4, 0x6e, 0x56, 0xf3, 0x7d, 0xbf, 0x9b, 0x9b, 0x4f, 0x43, 0x6f, 0x14, 0x60, - 0xb8, 0xc4, 0xd0, 0xc4, 0xfb, 0x90, 0x89, 0xd0, 0xa2, 0xc2, 0x14, 0x93, 0xfe, 0xb4, 0x68, 0xe7, - 0x60, 0x0f, 0x51, 0x1f, 0x84, 0x18, 0xbd, 0x85, 0xd8, 0x72, 0xa5, 0xd1, 0xa2, 0x7f, 0xb9, 0x72, - 0xf1, 0xca, 0xc5, 0x27, 0x62, 0x3e, 0xef, 0x5a, 0x0f, 0x12, 0x69, 0xf7, 0x7b, 0x11, 0x8f, 0x31, - 0x0b, 0x13, 0x4c, 0x30, 0x74, 0xfe, 0xa8, 0xd7, 0x75, 0x2f, 0xf7, 0x70, 0x55, 0xc5, 0x5d, 0xbf, - 0x30, 0x3b, 0x0d, 0x2a, 0x2b, 0x31, 0x37, 0xa7, 0xcd, 0xcd, 0x45, 0x47, 0xb5, 0x7d, 0x05, 0x13, - 0xd3, 0xf9, 0x39, 0xd3, 0x1f, 0xad, 0xd6, 0x6c, 0xab, 0x00, 0x03, 0x79, 0x31, 0xfb, 0xcd, 0xd6, - 0xa7, 0x3a, 0x6d, 0x3c, 0x77, 0x7f, 0xee, 0xdf, 0xa5, 0x6b, 0x19, 0x58, 0xd1, 0x11, 0x56, 0x34, - 0xc9, 0x06, 0xb9, 0x72, 0xe6, 0xfa, 0x45, 0x3e, 0xbb, 0x86, 0x4a, 0xb8, 0x03, 0x56, 0xbc, 0xec, - 0x2b, 0xd8, 0x9d, 0xca, 0xfd, 0x6d, 0x7a, 0xce, 0xf4, 0x8d, 0x85, 0xac, 0x3d, 0x25, 0xd4, 0x1c, - 0xe1, 0xd2, 0x1c, 0x61, 0xcf, 0xa9, 0xe6, 0x38, 0x67, 0x2b, 0xef, 0xce, 0x84, 0xf6, 0x8c, 0xd6, - 0x8d, 0x82, 0xb8, 0xb9, 0xe2, 0x10, 0xd7, 0xf8, 0x82, 0x59, 0xf0, 0x3d, 0x05, 0xb1, 0x03, 0x3a, - 0xfb, 0xbd, 0x6f, 0xb5, 0xef, 0x9f, 0x9b, 0x5f, 0x6b, 0xf4, 0x01, 0x5d, 0xd9, 0x02, 0xeb, 0xdf, - 0xe9, 0xde, 0x3c, 0x8a, 0x03, 0x23, 0x2d, 0x04, 0x99, 0xc8, 0x45, 0x02, 0x19, 0xe4, 0x36, 0x88, - 0x84, 0x91, 0x71, 0x90, 0x61, 0x2e, 0x2d, 0xea, 0xab, 0x1b, 0x05, 0x98, 0x40, 0x62, 0x20, 0x73, - 0x0b, 0x3a, 0x17, 0x69, 0xa0, 0x41, 0x74, 0xe8, 0x23, 0xba, 0xba, 0x0b, 0x2a, 0x15, 0x31, 0xf8, - 0xb7, 0xfe, 0x01, 0xe9, 0x19, 0xf8, 0x0b, 0xe1, 0x50, 0x4b, 0x0b, 0xf4, 0x21, 0x6d, 0x3c, 0xd1, - 0x20, 0xec, 0x52, 0x84, 0xa7, 0x90, 0xc2, 0x52, 0x84, 0xfa, 0xb6, 0x34, 0x4b, 0x2c, 0xa2, 0xf5, - 0x9a, 0xae, 0x4d, 0x76, 0xec, 0xbf, 0xa0, 0xab, 0x49, 0xdc, 0x76, 0x39, 0x55, 0x51, 0xdf, 0x5e, - 0x38, 0xa7, 0xad, 0x14, 0x23, 0x91, 0x4e, 0xd3, 0x6a, 0x24, 0xf1, 0xef, 0xfa, 0xf1, 0x07, 0x72, - 0x7c, 0xdf, 0x1b, 0x8c, 0x98, 0x37, 0x1c, 0x31, 0xef, 0x64, 0xc4, 0xc8, 0xbb, 0x92, 0x91, 0x8f, - 0x25, 0x23, 0x5f, 0x4a, 0x46, 0x06, 0x25, 0x23, 0xc3, 0x92, 0x91, 0x1f, 0x25, 0x23, 0x3f, 0x4b, - 0xe6, 0x9d, 0x94, 0x8c, 0xbc, 0x1f, 0x33, 0xef, 0x78, 0xcc, 0xc8, 0x60, 0xcc, 0xbc, 0xe1, 0x98, - 0x79, 0xaf, 0xde, 0x24, 0xa8, 0x0e, 0x12, 0x5e, 0x60, 0x6a, 0x41, 0x6b, 0xc1, 0x7b, 0x26, 0x74, - 0x45, 0x17, 0x75, 0x16, 0x28, 0x8d, 0x85, 0xec, 0x80, 0x0e, 0x26, 0xed, 0x50, 0x45, 0x09, 0x86, - 0x70, 0x64, 0x4f, 0xef, 0xe3, 0x7f, 0x67, 0x17, 0x35, 0xdc, 0xc9, 0x6c, 0xfe, 0x0a, 0x00, 0x00, - 0xff, 0xff, 0xd5, 0x14, 0x79, 0xe3, 0x53, 0x04, 0x00, 0x00, + // 520 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0x3d, 0x6f, 0xd3, 0x40, + 0x18, 0xf6, 0xd1, 0x90, 0x56, 0x87, 0x04, 0x92, 0xa7, 0x50, 0xc4, 0xa9, 0x0a, 0x03, 0x0c, 0xd8, + 0x16, 0x14, 0x84, 0x60, 0x60, 0xe0, 0x43, 0x5d, 0x5a, 0x81, 0x5a, 0xa6, 0x0a, 0x14, 0x9d, 0xed, + 0x37, 0xd7, 0xa3, 0xb6, 0xdf, 0xd3, 0xdd, 0xc5, 0x6d, 0x36, 0x06, 0x16, 0x36, 0x7e, 0x01, 0x33, + 0x3f, 0xa3, 0x6c, 0x8c, 0x11, 0x53, 0x46, 0xe2, 0x30, 0x30, 0xf6, 0x27, 0x20, 0xce, 0x4d, 0x20, + 0x11, 0xa2, 0x59, 0xb2, 0xbd, 0xa7, 0xe7, 0xeb, 0xec, 0x7b, 0xee, 0xe8, 0xbd, 0x12, 0x4c, 0x28, + 0x31, 0x32, 0xc9, 0x01, 0xe4, 0x3c, 0xb2, 0xa8, 0x30, 0x43, 0xd1, 0x9f, 0x0e, 0x9d, 0x02, 0xec, + 0x11, 0xea, 0xc3, 0x08, 0xe3, 0xb7, 0x90, 0xd8, 0x50, 0x69, 0xb4, 0xe8, 0xdf, 0xac, 0x55, 0x61, + 0xad, 0x0a, 0x27, 0xe4, 0x70, 0x5e, 0xb5, 0x1e, 0x08, 0x69, 0x0f, 0x7a, 0x71, 0x98, 0x60, 0x1e, + 0x09, 0x14, 0x18, 0x39, 0x7d, 0xdc, 0xeb, 0xba, 0x95, 0x5b, 0xb8, 0xa9, 0xf6, 0x5d, 0xbf, 0x36, + 0xbb, 0x1b, 0x54, 0x56, 0x62, 0x61, 0xce, 0xc0, 0xcd, 0x45, 0xb7, 0x6a, 0xfb, 0x0a, 0x26, 0xa2, + 0xab, 0x73, 0xa2, 0xbf, 0xa0, 0xf6, 0x2c, 0x54, 0x82, 0x81, 0xa2, 0x9c, 0xcd, 0x6c, 0xff, 0xb8, + 0x48, 0x9b, 0x2f, 0xdc, 0x97, 0xfb, 0x0f, 0xe9, 0x5a, 0x0e, 0x96, 0xa7, 0xdc, 0xf2, 0x16, 0xd9, + 0x20, 0xb7, 0x2e, 0xdd, 0xbd, 0x1e, 0xce, 0xfe, 0x86, 0x9a, 0xb8, 0x03, 0x96, 0xbf, 0xea, 0x2b, + 0xd8, 0x9d, 0xd2, 0xfd, 0x6d, 0x7a, 0xc5, 0xf4, 0x8d, 0x85, 0xbc, 0x33, 0x75, 0xb8, 0xe0, 0x1c, + 0x6e, 0xcc, 0x39, 0xec, 0x39, 0xd6, 0x9c, 0xcf, 0xe5, 0x5a, 0xbb, 0x33, 0x71, 0x7b, 0x4e, 0x1b, + 0x46, 0x41, 0xd2, 0x5a, 0x71, 0x16, 0x77, 0xc2, 0x05, 0xcf, 0x22, 0xdc, 0x53, 0x90, 0x38, 0x43, + 0x27, 0x7f, 0xf4, 0xa1, 0xf1, 0xed, 0x4b, 0xeb, 0x7d, 0x83, 0x76, 0xe9, 0xca, 0x16, 0x58, 0xbf, + 0xd3, 0xbd, 0x7f, 0x9c, 0x04, 0x46, 0x5a, 0x08, 0x72, 0x5e, 0x70, 0x01, 0x39, 0x14, 0x36, 0x88, + 0xb9, 0x91, 0x49, 0x90, 0x63, 0x21, 0x2d, 0xea, 0xdb, 0x1b, 0xff, 0xe4, 0x18, 0xcb, 0x8b, 0x94, + 0xeb, 0xf4, 0x0f, 0xad, 0x04, 0x13, 0x48, 0x0c, 0x64, 0x61, 0x41, 0x17, 0x3c, 0x0b, 0x34, 0xf0, + 0x94, 0x02, 0x5d, 0xdd, 0x05, 0x95, 0xf1, 0x04, 0xfc, 0xfd, 0xff, 0x64, 0xf5, 0x0c, 0x9c, 0x1b, + 0x54, 0x73, 0xe6, 0x53, 0x8e, 0xb4, 0xb4, 0x40, 0x53, 0xda, 0x7c, 0xaa, 0x81, 0xdb, 0xa5, 0xa7, + 0x3c, 0x83, 0x0c, 0x96, 0x9c, 0x22, 0x68, 0x63, 0x5b, 0x9a, 0xe5, 0x9f, 0x4d, 0xfb, 0x35, 0x5d, + 0x9b, 0xb4, 0xc3, 0x7f, 0x49, 0x57, 0x45, 0xd2, 0x71, 0x0d, 0xab, 0x4b, 0xfa, 0x60, 0xe1, 0x86, + 0x6d, 0x65, 0x18, 0xf3, 0x6c, 0xda, 0xb3, 0xa6, 0x48, 0x7e, 0xcf, 0x4f, 0x3e, 0x91, 0x93, 0xc7, + 0xde, 0x60, 0xc4, 0xbc, 0xe1, 0x88, 0x79, 0xa7, 0x23, 0x46, 0xde, 0x55, 0x8c, 0x7c, 0xae, 0x18, + 0xf9, 0x5a, 0x31, 0x32, 0xa8, 0x18, 0x19, 0x56, 0x8c, 0x7c, 0xaf, 0x18, 0xf9, 0x59, 0x31, 0xef, + 0xb4, 0x62, 0xe4, 0xe3, 0x98, 0x79, 0x27, 0x63, 0x46, 0x06, 0x63, 0xe6, 0x0d, 0xc7, 0xcc, 0xdb, + 0x7f, 0x23, 0x50, 0x1d, 0x8a, 0xb0, 0xc4, 0xcc, 0x82, 0xd6, 0x3c, 0xec, 0x99, 0xc8, 0x0d, 0x5d, + 0xd4, 0x79, 0xa0, 0x34, 0x96, 0x32, 0x05, 0x1d, 0x4c, 0xe0, 0x48, 0xc5, 0x02, 0x23, 0x38, 0xb6, + 0x67, 0x37, 0xfb, 0xbc, 0x07, 0x23, 0x6e, 0xba, 0xcb, 0xbe, 0xf9, 0x2b, 0x00, 0x00, 0xff, 0xff, + 0xa0, 0x21, 0xb7, 0x44, 0x0d, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_network_peer/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_network_peer/crudapi/api.vesapi.go index 813a231a1..cae958c5f 100644 --- a/pbgo/extschema/schema/topology/topology_network_peer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_network_peer/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_network_peer/object.pb.go b/pbgo/extschema/schema/topology/topology_network_peer/object.pb.go index e3f33f8e1..7cd7f1cd5 100644 --- a/pbgo/extschema/schema/topology/topology_network_peer/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_network_peer/object.pb.go @@ -162,40 +162,41 @@ func init() { } var fileDescriptor_8e078508dc6a6f82 = []byte{ - // 513 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0x4f, 0x6b, 0x13, 0x4f, - 0x18, 0xc7, 0x77, 0xd2, 0x90, 0x96, 0xf9, 0xc1, 0x4f, 0xd8, 0x53, 0xac, 0x38, 0x94, 0x78, 0xf1, - 0xd0, 0x9d, 0x05, 0xc5, 0xd2, 0x8a, 0xf8, 0x1f, 0x0a, 0xd2, 0x22, 0xb4, 0x7a, 0xf1, 0x12, 0x66, - 0x37, 0x4f, 0xb6, 0x63, 0x77, 0xf7, 0x19, 0x66, 0x26, 0xdb, 0xe6, 0xe6, 0x4b, 0xf0, 0x3d, 0x78, - 0xf1, 0xe6, 0x5b, 0xa8, 0x37, 0xf1, 0x62, 0xf0, 0x94, 0xa3, 0xd9, 0x5c, 0x3c, 0xf6, 0x25, 0x88, - 0xb3, 0x4d, 0x30, 0xa1, 0x15, 0x43, 0x6e, 0xcf, 0x30, 0xdf, 0xef, 0x87, 0x87, 0xef, 0x97, 0x87, - 0xee, 0x14, 0x60, 0xb8, 0xc4, 0xd0, 0xc4, 0x47, 0x90, 0x89, 0xd0, 0xa2, 0xc2, 0x14, 0x93, 0xfe, - 0x74, 0x68, 0xe7, 0x60, 0x4f, 0x50, 0x1f, 0xb7, 0x15, 0x80, 0x0e, 0x31, 0x7a, 0x0b, 0xb1, 0xe5, - 0x4a, 0xa3, 0x45, 0x7f, 0xb3, 0xb2, 0xf2, 0xca, 0xca, 0x27, 0x0e, 0x7e, 0xa9, 0x75, 0x3d, 0x48, - 0xa4, 0x3d, 0xea, 0x45, 0x3c, 0xc6, 0x2c, 0x4c, 0x30, 0xc1, 0xd0, 0x41, 0xa2, 0x5e, 0xd7, 0xbd, - 0xdc, 0xc3, 0x4d, 0x15, 0x7c, 0xfd, 0xc6, 0xec, 0x5e, 0xa8, 0xac, 0xc4, 0xdc, 0x5c, 0x7c, 0x6e, - 0x2f, 0xb4, 0xb4, 0xed, 0x2b, 0x98, 0x38, 0x5b, 0x57, 0x39, 0xff, 0xd0, 0x5c, 0x9f, 0xd3, 0x5c, - 0x6d, 0x2f, 0xc0, 0x40, 0x5e, 0xcc, 0x2e, 0xd7, 0xfa, 0x54, 0xa7, 0x8d, 0x97, 0x2e, 0x27, 0x7f, - 0x87, 0xae, 0x65, 0x60, 0x45, 0x47, 0x58, 0xd1, 0x24, 0x1b, 0xe4, 0xf6, 0x7f, 0x77, 0x6e, 0xf2, - 0xd9, 0xd0, 0x2a, 0xe1, 0x3e, 0x58, 0xf1, 0xaa, 0xaf, 0xe0, 0x60, 0x2a, 0xf7, 0xf7, 0xe8, 0x35, - 0xd3, 0x37, 0x16, 0xb2, 0xf6, 0x94, 0x50, 0x73, 0x84, 0x5b, 0x73, 0x84, 0x43, 0xa7, 0x9a, 0xe3, - 0xfc, 0x5f, 0x79, 0xf7, 0x27, 0xb4, 0x17, 0xb4, 0x6e, 0x14, 0xc4, 0xcd, 0x15, 0x87, 0xd8, 0xe2, - 0x8b, 0x34, 0xc7, 0x0f, 0x15, 0xc4, 0x8e, 0xea, 0x18, 0xf7, 0xbf, 0xd5, 0xbe, 0x7f, 0x6e, 0x7e, - 0xad, 0xd1, 0x47, 0x74, 0x65, 0x17, 0xac, 0xbf, 0xdd, 0xbd, 0x77, 0x1a, 0x07, 0x46, 0x5a, 0x08, - 0x32, 0x91, 0x8b, 0x04, 0x32, 0xc8, 0x6d, 0x10, 0x09, 0x23, 0xe3, 0x20, 0xc3, 0x5c, 0x5a, 0xd4, - 0x9b, 0x1b, 0x05, 0x98, 0x40, 0x62, 0x20, 0x73, 0x0b, 0x3a, 0x17, 0x69, 0xa0, 0x41, 0x74, 0xe8, - 0x13, 0xba, 0x7a, 0x00, 0x2a, 0x15, 0x31, 0xf8, 0x5b, 0x7f, 0x81, 0xf4, 0x0c, 0x5c, 0x42, 0x38, - 0xd1, 0xd2, 0x02, 0x7d, 0x4c, 0x1b, 0xcf, 0x34, 0x08, 0xbb, 0x14, 0xe1, 0x39, 0xa4, 0xb0, 0x14, - 0xa1, 0xbe, 0x27, 0xcd, 0x12, 0x41, 0xb4, 0x04, 0x5d, 0x9b, 0x64, 0xec, 0xbf, 0xa6, 0xab, 0x49, - 0xdc, 0x76, 0x65, 0x55, 0x7d, 0x3f, 0x58, 0xac, 0xac, 0xdd, 0x14, 0x23, 0x91, 0x4e, 0x2b, 0x6b, - 0x24, 0xf1, 0xef, 0xf9, 0xe9, 0x07, 0x72, 0xf6, 0xd0, 0x1b, 0x8c, 0x98, 0x37, 0x1c, 0x31, 0xef, - 0x7c, 0xc4, 0xc8, 0xbb, 0x92, 0x91, 0x8f, 0x25, 0x23, 0x5f, 0x4a, 0x46, 0x06, 0x25, 0x23, 0xc3, - 0x92, 0x91, 0x1f, 0x25, 0x23, 0x3f, 0x4b, 0xe6, 0x9d, 0x97, 0x8c, 0xbc, 0x1f, 0x33, 0xef, 0x6c, - 0xcc, 0xc8, 0x60, 0xcc, 0xbc, 0xe1, 0x98, 0x79, 0x6f, 0xa2, 0x04, 0xd5, 0x71, 0xc2, 0x0b, 0x4c, - 0x2d, 0x68, 0x2d, 0x78, 0xcf, 0x84, 0x6e, 0xe8, 0xa2, 0xce, 0x02, 0xa5, 0xb1, 0x90, 0x1d, 0xd0, - 0xc1, 0xe4, 0x3b, 0x54, 0x51, 0x82, 0x21, 0x9c, 0xda, 0x8b, 0x4b, 0xf9, 0xa7, 0x4b, 0x8d, 0x1a, - 0xee, 0x82, 0xee, 0xfe, 0x0a, 0x00, 0x00, 0xff, 0xff, 0xec, 0x79, 0xf3, 0x90, 0x95, 0x04, 0x00, - 0x00, + // 531 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0x13, 0x3f, + 0x18, 0xc6, 0xcf, 0xff, 0xe6, 0x9f, 0x56, 0x46, 0x02, 0xe9, 0xa6, 0x50, 0x84, 0x55, 0x85, 0x85, + 0xa1, 0x77, 0x27, 0x81, 0x40, 0x14, 0x21, 0x06, 0x40, 0xaa, 0x84, 0x5a, 0x21, 0xb5, 0xb0, 0x74, + 0x89, 0x7c, 0x77, 0x6f, 0x5c, 0xd3, 0xbb, 0x7b, 0x2d, 0xdb, 0xb9, 0x36, 0x1b, 0x03, 0x0b, 0x1b, + 0xdf, 0x81, 0x85, 0x8f, 0x51, 0x36, 0xc6, 0x88, 0x29, 0x23, 0xb9, 0x2c, 0xb0, 0xf5, 0x23, 0x20, + 0x7c, 0x4d, 0x20, 0x51, 0x0b, 0x64, 0xc8, 0xf6, 0x5a, 0x7e, 0x9e, 0xdf, 0xfb, 0xca, 0x7e, 0x6c, + 0xba, 0x55, 0x82, 0x09, 0x25, 0x46, 0x26, 0x39, 0x84, 0x9c, 0x47, 0x16, 0x15, 0x66, 0x28, 0xfa, + 0xd3, 0xa2, 0x53, 0x80, 0x3d, 0x46, 0x7d, 0xd4, 0x51, 0x00, 0x3a, 0xc2, 0xf8, 0x35, 0x24, 0x36, + 0x54, 0x1a, 0x2d, 0xfa, 0x9b, 0xb5, 0x35, 0xac, 0xad, 0xe1, 0xc4, 0x11, 0x5e, 0x68, 0x5d, 0x0f, + 0x84, 0xb4, 0x87, 0xbd, 0x38, 0x4c, 0x30, 0x8f, 0x04, 0x0a, 0x8c, 0x1c, 0x24, 0xee, 0x75, 0xdd, + 0xca, 0x2d, 0x5c, 0x55, 0xc3, 0xd7, 0x6f, 0xcc, 0xce, 0x85, 0xca, 0x4a, 0x2c, 0xcc, 0xf9, 0xe6, + 0x83, 0x85, 0x86, 0xb6, 0x7d, 0x05, 0x13, 0x67, 0xfb, 0x32, 0xe7, 0x6f, 0x9a, 0xeb, 0x73, 0x9a, + 0xcb, 0xed, 0x25, 0x18, 0x28, 0xca, 0xd9, 0xe1, 0xda, 0xdf, 0xff, 0xa7, 0xcd, 0x17, 0xee, 0x9c, + 0xfc, 0x2d, 0xba, 0x96, 0x83, 0xe5, 0x29, 0xb7, 0xbc, 0x45, 0x36, 0xc8, 0xed, 0x2b, 0x77, 0x6e, + 0x86, 0xb3, 0x87, 0x56, 0x0b, 0x77, 0xc1, 0xf2, 0x97, 0x7d, 0x05, 0x7b, 0x53, 0xb9, 0xbf, 0x43, + 0xaf, 0x99, 0xbe, 0xb1, 0x90, 0x77, 0xa6, 0x84, 0xff, 0x1c, 0xe1, 0xd6, 0x1c, 0x61, 0xdf, 0xa9, + 0xe6, 0x38, 0x57, 0x6b, 0xef, 0xee, 0x84, 0xf6, 0x9c, 0x36, 0x8c, 0x82, 0xa4, 0xb5, 0xe2, 0x10, + 0xf7, 0xc3, 0x45, 0x6e, 0x2e, 0xdc, 0x57, 0x90, 0x38, 0xaa, 0x63, 0x3c, 0x7c, 0xd7, 0xf8, 0xf2, + 0xa9, 0xf5, 0xb6, 0x41, 0xbb, 0x74, 0x65, 0x1b, 0xac, 0xdf, 0xe9, 0xde, 0x3b, 0x49, 0x02, 0x23, + 0x2d, 0x04, 0x39, 0x2f, 0xb8, 0x80, 0x1c, 0x0a, 0x1b, 0xc4, 0xdc, 0xc8, 0x24, 0xc8, 0xb1, 0x90, + 0x16, 0xf5, 0xe6, 0xc6, 0x85, 0x1a, 0x63, 0x79, 0x91, 0x72, 0x9d, 0xfe, 0x92, 0x95, 0x60, 0x02, + 0x89, 0x81, 0x2c, 0x2c, 0xe8, 0x82, 0x67, 0x81, 0x06, 0x9e, 0x52, 0xa0, 0xab, 0x7b, 0xa0, 0x32, + 0x9e, 0x80, 0x7f, 0xf0, 0x87, 0x5e, 0x3d, 0x03, 0x7f, 0x6d, 0x54, 0x6b, 0xe6, 0xbb, 0x1c, 0x6b, + 0x69, 0x81, 0xa6, 0xb4, 0xf9, 0x54, 0x03, 0xb7, 0x4b, 0xef, 0xf2, 0x0c, 0x32, 0x58, 0x72, 0x17, + 0x41, 0x1b, 0x3b, 0xd2, 0x2c, 0xff, 0x6e, 0xda, 0x9c, 0xae, 0x4d, 0xd2, 0xe1, 0xbf, 0xa2, 0xab, + 0x22, 0xe9, 0xb8, 0x98, 0xd5, 0x49, 0x7d, 0xb4, 0x58, 0xcc, 0xb6, 0x33, 0x8c, 0x79, 0x36, 0x0d, + 0x5b, 0x53, 0x24, 0x3f, 0xeb, 0x27, 0x1f, 0xc8, 0xe9, 0x63, 0x6f, 0x30, 0x62, 0xde, 0x70, 0xc4, + 0xbc, 0xb3, 0x11, 0x23, 0x6f, 0x2a, 0x46, 0x3e, 0x56, 0x8c, 0x7c, 0xae, 0x18, 0x19, 0x54, 0x8c, + 0x0c, 0x2b, 0x46, 0xbe, 0x56, 0x8c, 0x7c, 0xab, 0x98, 0x77, 0x56, 0x31, 0xf2, 0x7e, 0xcc, 0xbc, + 0xd3, 0x31, 0x23, 0x83, 0x31, 0xf3, 0x86, 0x63, 0xe6, 0x1d, 0xc4, 0x02, 0xd5, 0x91, 0x08, 0x4b, + 0xcc, 0x2c, 0x68, 0xcd, 0xc3, 0x9e, 0x89, 0x5c, 0xd1, 0x45, 0x9d, 0x07, 0x4a, 0x63, 0x29, 0x53, + 0xd0, 0xc1, 0x64, 0x3b, 0x52, 0xb1, 0xc0, 0x08, 0x4e, 0xec, 0xf9, 0x1b, 0xff, 0xa7, 0x3f, 0x26, + 0x6e, 0xba, 0xb7, 0x7f, 0xf7, 0x47, 0x00, 0x00, 0x00, 0xff, 0xff, 0x49, 0x3e, 0xb5, 0x0a, 0x4f, + 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_region/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_region/crudapi/api.vesapi.go index 996de2d35..0ac29e5bb 100644 --- a/pbgo/extschema/schema/topology/topology_region/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_region/crudapi/api.vesapi.go @@ -2973,10 +2973,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_region/object.pb.go b/pbgo/extschema/schema/topology/topology_region/object.pb.go index f702d0f67..9f780f2b8 100644 --- a/pbgo/extschema/schema/topology/topology_region/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_region/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_9ec8d5e3ffc7cc29 = []byte{ - // 505 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x6a, 0x14, 0x41, - 0x10, 0xc6, 0xa7, 0x93, 0xb0, 0x09, 0x2d, 0x28, 0xcc, 0x29, 0x46, 0x6c, 0xc2, 0x0a, 0xe2, 0xc1, - 0xe9, 0x91, 0x04, 0x83, 0x7a, 0xf0, 0x6f, 0x20, 0x97, 0x84, 0x40, 0xe2, 0x49, 0x85, 0xa5, 0x67, - 0xb6, 0xb6, 0xd3, 0x3a, 0x33, 0xd5, 0x74, 0xf7, 0x8e, 0xd9, 0x9b, 0x8f, 0xe0, 0x0b, 0x78, 0xd7, - 0xb7, 0x88, 0x37, 0xf1, 0xe2, 0xe2, 0x69, 0x8f, 0xee, 0xec, 0xc5, 0x63, 0x1e, 0x41, 0xec, 0xc9, - 0x2e, 0xee, 0x22, 0xba, 0xb0, 0xb7, 0x6a, 0xea, 0xfb, 0x7e, 0x53, 0x53, 0x1f, 0x45, 0xb7, 0x4b, - 0xb0, 0x5c, 0x61, 0x6c, 0xd3, 0x13, 0xc8, 0x45, 0xec, 0x50, 0x63, 0x86, 0xb2, 0x37, 0x29, 0x5a, - 0x06, 0xa4, 0xc2, 0x22, 0xc6, 0xe4, 0x35, 0xa4, 0x8e, 0x6b, 0x83, 0x0e, 0xc3, 0x9b, 0xb5, 0x89, - 0xd7, 0x26, 0x3e, 0xd6, 0xf2, 0x19, 0xd3, 0x46, 0x24, 0x95, 0x3b, 0xe9, 0x26, 0x3c, 0xc5, 0x3c, - 0x96, 0x28, 0x31, 0xf6, 0xf6, 0xa4, 0xdb, 0xf1, 0x2f, 0xff, 0xf0, 0x55, 0x8d, 0xdd, 0xb8, 0x36, - 0x3d, 0x0b, 0x6a, 0xa7, 0xb0, 0xb0, 0x17, 0xcd, 0xad, 0x39, 0x07, 0x75, 0x3d, 0x0d, 0x63, 0xcf, - 0xd5, 0x19, 0xcf, 0x1f, 0xad, 0xe6, 0x74, 0xab, 0x04, 0x0b, 0x45, 0x39, 0xfd, 0xc9, 0xe6, 0xa7, - 0x15, 0xda, 0x38, 0xf4, 0xff, 0x1d, 0xde, 0xa7, 0x6b, 0x39, 0x38, 0xd1, 0x16, 0x4e, 0xac, 0x93, - 0x4d, 0x72, 0xeb, 0xd2, 0xd6, 0x75, 0x3e, 0xbd, 0x84, 0x5a, 0x78, 0x00, 0x4e, 0x3c, 0xef, 0x69, - 0x38, 0x9a, 0xc8, 0xc3, 0x7d, 0x7a, 0xc5, 0xf6, 0xac, 0x83, 0xbc, 0x35, 0x21, 0x2c, 0x79, 0xc2, - 0x8d, 0x19, 0xc2, 0xb1, 0x57, 0xcd, 0x70, 0x2e, 0xd7, 0xde, 0x83, 0x31, 0x6d, 0x97, 0xae, 0x58, - 0x0d, 0xe9, 0xfa, 0xb2, 0x47, 0xdc, 0xe1, 0xf3, 0x25, 0xc1, 0x8f, 0x35, 0xa4, 0x9e, 0xe7, 0xdd, - 0x0f, 0xbe, 0x2d, 0x7d, 0xff, 0xbc, 0xfe, 0x75, 0x89, 0x3e, 0xa2, 0xcb, 0x7b, 0xe0, 0xc2, 0x7b, - 0x9d, 0xbb, 0xa7, 0x69, 0x64, 0x95, 0x83, 0x28, 0x17, 0x85, 0x90, 0x90, 0x43, 0xe1, 0xa2, 0x44, - 0x58, 0x95, 0x46, 0x39, 0x16, 0xca, 0xa1, 0xb9, 0xbd, 0x59, 0x82, 0x8d, 0x14, 0x46, 0xaa, 0x70, - 0x60, 0x0a, 0x91, 0x45, 0x06, 0x44, 0x9b, 0x3e, 0xa1, 0xab, 0x47, 0xa0, 0x33, 0x91, 0x42, 0xb8, - 0xf3, 0x0f, 0x48, 0xd7, 0xc2, 0x5f, 0x08, 0x6f, 0x8d, 0x72, 0x40, 0x1f, 0xd3, 0xc6, 0x33, 0x03, - 0xc2, 0x2d, 0x44, 0xd8, 0x85, 0x0c, 0x16, 0x22, 0xac, 0xec, 0x2b, 0xbb, 0xc0, 0x22, 0x9a, 0x2f, - 0xe9, 0xda, 0x78, 0xc7, 0xe1, 0x21, 0x5d, 0x95, 0x69, 0xcb, 0xc7, 0x54, 0x27, 0xbd, 0x33, 0x6f, - 0x4c, 0x7b, 0x19, 0x26, 0x22, 0x9b, 0x84, 0xd5, 0x90, 0xe9, 0xef, 0xfa, 0xe9, 0x07, 0x72, 0xf6, - 0x30, 0xe8, 0x0f, 0x59, 0x30, 0x18, 0xb2, 0xe0, 0x7c, 0xc8, 0xc8, 0xbb, 0x8a, 0x91, 0x8f, 0x15, - 0x23, 0x5f, 0x2a, 0x46, 0xfa, 0x15, 0x23, 0x83, 0x8a, 0x91, 0x1f, 0x15, 0x23, 0x3f, 0x2b, 0x16, - 0x9c, 0x57, 0x8c, 0xbc, 0x1f, 0xb1, 0xe0, 0x6c, 0xc4, 0x48, 0x7f, 0xc4, 0x82, 0xc1, 0x88, 0x05, - 0x2f, 0x5e, 0x49, 0xd4, 0x6f, 0x24, 0x2f, 0x31, 0x73, 0x60, 0x8c, 0xe0, 0x5d, 0x1b, 0xfb, 0xa2, - 0x83, 0x26, 0x8f, 0xb4, 0xc1, 0x52, 0xb5, 0xc1, 0x44, 0xe3, 0x76, 0xac, 0x13, 0x89, 0x31, 0x9c, - 0xba, 0x8b, 0xeb, 0xf8, 0xcf, 0xcd, 0x25, 0x0d, 0x7f, 0x2f, 0xdb, 0xbf, 0x02, 0x00, 0x00, 0xff, - 0xff, 0x6b, 0x74, 0x9f, 0x38, 0x4d, 0x04, 0x00, 0x00, + // 520 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0x3f, 0x6f, 0x13, 0x3d, + 0x18, 0x3f, 0xbf, 0xcd, 0x9b, 0x56, 0x46, 0x02, 0xe9, 0xa6, 0x52, 0x84, 0x55, 0x15, 0x09, 0x31, + 0x70, 0x3e, 0xd4, 0x0a, 0x24, 0x18, 0x18, 0xa0, 0x52, 0x97, 0x56, 0x95, 0x5a, 0xa6, 0x82, 0x14, + 0xf9, 0xee, 0x9e, 0xb8, 0x86, 0xbb, 0x7b, 0x2c, 0xdb, 0x39, 0x9a, 0x8d, 0x81, 0x85, 0x8d, 0x2f, + 0xc0, 0xce, 0xc7, 0x28, 0x1b, 0x63, 0xc4, 0x94, 0x91, 0x5c, 0x16, 0xc6, 0x7e, 0x04, 0x84, 0xaf, + 0x09, 0x24, 0x42, 0x34, 0x4b, 0xb6, 0xc7, 0xfa, 0xfd, 0xf3, 0x9d, 0x7f, 0x36, 0xdd, 0xa9, 0xc0, + 0x72, 0x85, 0xb1, 0x4d, 0x4f, 0xa1, 0x10, 0xb1, 0x43, 0x8d, 0x39, 0xca, 0xfe, 0x74, 0xe8, 0x18, + 0x90, 0x0a, 0xcb, 0x18, 0x93, 0xd7, 0x90, 0x3a, 0xae, 0x0d, 0x3a, 0x0c, 0xef, 0x36, 0x22, 0xde, + 0x88, 0xf8, 0x84, 0xcb, 0xe7, 0x44, 0x1b, 0x91, 0x54, 0xee, 0xb4, 0x97, 0xf0, 0x14, 0x8b, 0x58, + 0xa2, 0xc4, 0xd8, 0xcb, 0x93, 0x5e, 0xd7, 0xaf, 0xfc, 0xc2, 0x4f, 0x8d, 0xed, 0xc6, 0xad, 0xd9, + 0xbd, 0xa0, 0x76, 0x0a, 0x4b, 0x7b, 0x09, 0x6e, 0x2f, 0xb8, 0x51, 0xd7, 0xd7, 0x30, 0xd1, 0xdc, + 0x9c, 0xd3, 0xfc, 0x01, 0x6d, 0xcd, 0x42, 0x15, 0x58, 0x28, 0xab, 0xd9, 0xc8, 0xad, 0xf1, 0xff, + 0xb4, 0x7d, 0xe8, 0xbf, 0x3b, 0x7c, 0x4c, 0xd7, 0x0a, 0x70, 0x22, 0x13, 0x4e, 0xac, 0x93, 0x4d, + 0x72, 0xef, 0xda, 0xf6, 0x6d, 0x3e, 0xfb, 0x13, 0x1a, 0xe2, 0x01, 0x38, 0xf1, 0xa2, 0xaf, 0xe1, + 0x68, 0x4a, 0x0f, 0xf7, 0xe9, 0x0d, 0xdb, 0xb7, 0x0e, 0x8a, 0xce, 0xd4, 0xe1, 0x3f, 0xef, 0x70, + 0x67, 0xce, 0xe1, 0xd8, 0xb3, 0xe6, 0x7c, 0xae, 0x37, 0xda, 0x83, 0x89, 0xdb, 0x2e, 0x6d, 0x59, + 0x0d, 0xe9, 0xfa, 0x8a, 0xb7, 0x78, 0xc0, 0x17, 0x3b, 0x09, 0x7e, 0xac, 0x21, 0xf5, 0x7e, 0x5e, + 0xfd, 0xe4, 0x43, 0xeb, 0xdb, 0x97, 0xf5, 0xf7, 0x2d, 0xda, 0xa5, 0x2b, 0x7b, 0xe0, 0xc2, 0x4e, + 0xf7, 0xe1, 0x59, 0x1a, 0x59, 0xe5, 0x20, 0x2a, 0x44, 0x29, 0x24, 0x14, 0x50, 0xba, 0x28, 0x11, + 0x56, 0xa5, 0x51, 0x81, 0xa5, 0x72, 0x68, 0xee, 0x6f, 0xfe, 0x95, 0x63, 0x9d, 0x28, 0x33, 0x61, + 0xb2, 0xdf, 0xb4, 0x0a, 0x6c, 0xa4, 0x30, 0x52, 0xa5, 0x03, 0x53, 0x8a, 0x3c, 0x32, 0x20, 0x32, + 0x0a, 0x74, 0xf5, 0x08, 0x74, 0x2e, 0x52, 0x08, 0x4f, 0xfe, 0x91, 0xd5, 0xb3, 0x70, 0x65, 0x50, + 0xc3, 0x99, 0x4f, 0x79, 0x6b, 0x94, 0x03, 0x9a, 0xd1, 0xf6, 0x73, 0x03, 0xc2, 0x2d, 0x3d, 0x65, + 0x17, 0x72, 0x58, 0x72, 0x8a, 0xa4, 0xad, 0x7d, 0x65, 0x97, 0x7f, 0x36, 0x5b, 0x2f, 0xe9, 0xda, + 0xa4, 0x1d, 0xe1, 0x21, 0x5d, 0x95, 0x69, 0xc7, 0x17, 0xac, 0xe9, 0xe8, 0xa3, 0x45, 0x0b, 0xb6, + 0x97, 0x63, 0x22, 0xf2, 0x69, 0xcd, 0xda, 0x32, 0xfd, 0x35, 0x3f, 0xfb, 0x44, 0xce, 0x9f, 0x06, + 0x83, 0x11, 0x0b, 0x86, 0x23, 0x16, 0x5c, 0x8c, 0x18, 0x79, 0x57, 0x33, 0xf2, 0xb9, 0x66, 0xe4, + 0x6b, 0xcd, 0xc8, 0xa0, 0x66, 0x64, 0x58, 0x33, 0xf2, 0xbd, 0x66, 0xe4, 0x47, 0xcd, 0x82, 0x8b, + 0x9a, 0x91, 0x8f, 0x63, 0x16, 0x9c, 0x8f, 0x19, 0x19, 0x8c, 0x59, 0x30, 0x1c, 0xb3, 0xe0, 0xe4, + 0x95, 0x44, 0xfd, 0x46, 0xf2, 0x0a, 0x73, 0x07, 0xc6, 0x08, 0xde, 0xb3, 0xb1, 0x1f, 0xba, 0x68, + 0x8a, 0x48, 0x1b, 0xac, 0x54, 0x06, 0x26, 0x9a, 0xc0, 0xb1, 0x4e, 0x24, 0xc6, 0x70, 0xe6, 0x2e, + 0xef, 0xf5, 0x15, 0xaf, 0x45, 0xd2, 0xf6, 0x37, 0x7d, 0xe7, 0x67, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x2e, 0x45, 0x82, 0xbb, 0x07, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_route_table/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_route_table/crudapi/api.vesapi.go index ecba999b7..566221a9c 100644 --- a/pbgo/extschema/schema/topology/topology_route_table/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_route_table/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3224,6 +3228,55 @@ var APISwaggerJSON string = `{ } } }, + "topologyAWSRouteAttributes": { + "type": "object", + "description": "Route attributes specific to AWS.", + "title": "AWSRouteAttributes", + "x-displayname": "AWS Route Attributes", + "x-ves-proto-message": "ves.io.schema.topology.AWSRouteAttributes", + "properties": { + "propagated": { + "type": "boolean", + "description": "Is route propagated\n\nExample: - false-", + "title": "Propagated", + "format": "boolean", + "x-displayname": "Propagated" + } + } + }, + "topologyGCPRouteAttributes": { + "type": "object", + "description": "Route attributes specific to GCP.", + "title": "GCPRouteAttributes", + "x-displayname": "GCP Route Attributes", + "x-ves-proto-message": "ves.io.schema.topology.GCPRouteAttributes", + "properties": { + "ip_version": { + "type": "string", + "description": " Version of IP protocol\n\nExample: - \"ipv4\"-", + "title": "IP version", + "x-displayname": "IP version", + "x-ves-example": "ipv4" + }, + "priority": { + "type": "integer", + "description": " Route Priority\n\nExample: - 1-", + "title": "Priority", + "format": "int64", + "x-displayname": "Priority" + }, + "scope_limits": { + "type": "array", + "description": " Limits on the scope of route like network tag\n\nExample: - \"tag-1, tag-2\"-", + "title": "Scope Limits", + "items": { + "type": "string" + }, + "x-displayname": "Scope Limits", + "x-ves-example": "tag-1, tag-2" + } + } + }, "topologyMetaType": { "type": "object", "description": "A metadata for topology objects.", @@ -3302,7 +3355,7 @@ var APISwaggerJSON string = `{ }, "topologyRouteNextHopTypeEnum": { "type": "string", - "description": "x-displayName: RouteNextHopTypeEnum\nRouteNextHopTypeEnum\n\n - VIRTUAL_NETWORK_GATEWAY: VIRTUAL NETWORK GATEWAY\n\nx-displayName: VIRTUAL NETWORK GATEWAY\nVIRTUAL NETWORK GATEWAY\n - VNET_LOCAL: VNET LOCAL\n\nx-displayName: VNET LOCAL\nVNET LOCAL\n - INTERNET: INTERNET\n\nx-displayName: INTERNET\nINTERNET\n - VIRTUAL_APPLIANCE: VIRTUAL APPLIANCE\n\nx-displayName: VIRTUAL APPLIANCE\nVIRTUAL APPLIANCE\n - NONE: NONE\n\nx-displayName: NONE\nNONE\n - VNET_PEERING: VNET PEERING\n\nx-displayName: VNET PEERING\nVNET PEERING\n - VIRTUAL_NETWORK_SERVICE_ENDPOINT: VIRTUAL NETWORK SERVICE ENDPOINT\n\nx-displayName: VIRTUAL NETWORK SERVICE ENDPOINT\nVIRTUAL NETWORK SERVICE ENDPOINT\n - NEXT_HOP_TYPE_NOT_APPLICABLE: NEXT_HOP_TYPE_NOT_APPLICABLE\n\nx-displayName: NEXT_HOP_TYPE_NOT_APPLICABLE\nNEXT_HOP_TYPE_NOT_APPLICABLE should be used when the cloud provider doesn't support this.", + "description": "x-displayName: RouteNextHopTypeEnum\nRouteNextHopTypeEnum\n\n - VIRTUAL_NETWORK_GATEWAY: VIRTUAL NETWORK GATEWAY\n\nx-displayName: VIRTUAL NETWORK GATEWAY\nVIRTUAL NETWORK GATEWAY\n - VNET_LOCAL: VNET LOCAL\n\nx-displayName: VNET LOCAL\nVNET LOCAL\n - INTERNET: INTERNET\n\nx-displayName: INTERNET\nINTERNET\n - VIRTUAL_APPLIANCE: VIRTUAL APPLIANCE\n\nx-displayName: VIRTUAL APPLIANCE\nVIRTUAL APPLIANCE\n - NONE: NONE\n\nx-displayName: NONE\nNONE\n - VNET_PEERING: VNET PEERING\n\nx-displayName: VNET PEERING\nVNET PEERING\n - VIRTUAL_NETWORK_SERVICE_ENDPOINT: VIRTUAL NETWORK SERVICE ENDPOINT\n\nx-displayName: VIRTUAL NETWORK SERVICE ENDPOINT\nVIRTUAL NETWORK SERVICE ENDPOINT\n - NEXT_HOP_TYPE_NOT_APPLICABLE: NEXT_HOP_TYPE_NOT_APPLICABLE\n\nx-displayName: NEXT_HOP_TYPE_NOT_APPLICABLE\nNEXT_HOP_TYPE_NOT_APPLICABLE should be used when the cloud provider doesn't support this.\n - LOADBALANCER: LOAD BALANCER\n\nx-displayName: LOAD BALANCER\nLOAD BALANCER\n - VPC_NETWORK: VPC NETWORK\n\nx-displayName: VPC NETWORK\nVPC NETWORK\n - VPC_PEERING: VPC PEERING\n\nx-displayName: VPC PEERING\nVPC PEERING\n - INTERNAL_LOAD_BALANCER: INTERNAL LOAD BALANCER\n\nx-displayName: INTERNAL LOAD BALANCER\nINTERNAL LOAD BALANCER\n - INSTANCE: INSTANCE\n\nx-displayName: INSTANCE\nINSTANCE\n - INTERCONNECT: INTERCONNECT\n\nx-displayName: INTERCONNECT\nINTERCONNECT\n - INTERNET_GATEWAY: INTERNET GATEWAY\n\nx-displayName: INTERNET GATEWAY\nINTERNET GATEWAY\n - IP: IP\n\nx-displayName: IP\nIP\n - VPN_TUNNEL: VPN TUNNEL\n\nx-displayName: VPN TUNNEL\nVPN TUNNEL", "title": "RouteNextHopTypeEnum", "enum": [ "VIRTUAL_NETWORK_GATEWAY", @@ -3312,7 +3365,16 @@ var APISwaggerJSON string = `{ "NONE", "VNET_PEERING", "VIRTUAL_NETWORK_SERVICE_ENDPOINT", - "NEXT_HOP_TYPE_NOT_APPLICABLE" + "NEXT_HOP_TYPE_NOT_APPLICABLE", + "LOADBALANCER", + "VPC_NETWORK", + "VPC_PEERING", + "INTERNAL_LOAD_BALANCER", + "INSTANCE", + "INTERCONNECT", + "INTERNET_GATEWAY", + "IP", + "VPN_TUNNEL" ], "default": "VIRTUAL_NETWORK_GATEWAY", "x-displayname": "", @@ -3390,7 +3452,7 @@ var APISwaggerJSON string = `{ "routes": { "type": "array", "description": " list of routes", - "title": "Rotues", + "title": "Routes", "items": { "$ref": "#/definitions/topologyRouteType" }, @@ -3433,14 +3495,27 @@ var APISwaggerJSON string = `{ "description": "A canonical form of the route.", "title": "RouteType", "x-displayname": "Route Type", + "x-ves-oneof-field-cloud_route_attributes": "[\"aws\",\"gcp\"]", "x-ves-proto-message": "ves.io.schema.topology.RouteType", "properties": { + "aws": { + "description": "Exclusive with [gcp]\n Cloud Type AWS", + "title": "AWS", + "$ref": "#/definitions/topologyAWSRouteAttributes", + "x-displayname": "AWS" + }, "destination": { "type": "string", "description": " Destination", "title": "Destination", "x-displayname": "Destination" }, + "gcp": { + "description": "Exclusive with [aws]\n Cloud Type GCP", + "title": "GCP", + "$ref": "#/definitions/topologyGCPRouteAttributes", + "x-displayname": "GCP" + }, "next_hop_type": { "description": " Next Hop Type of the route", "title": "Next Hop Type", diff --git a/pbgo/extschema/schema/topology/topology_route_table/object.pb.go b/pbgo/extschema/schema/topology/topology_route_table/object.pb.go index 8416d3d3d..18df802da 100644 --- a/pbgo/extschema/schema/topology/topology_route_table/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_route_table/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_c89145899ada5485 = []byte{ - // 508 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0xda, 0x90, 0x96, 0x11, 0x14, 0xf6, 0x14, 0x2b, 0x0e, 0x25, 0x5e, 0x04, 0xdd, - 0x59, 0x50, 0xaa, 0x55, 0xc1, 0xdf, 0x50, 0x84, 0x16, 0xa1, 0xed, 0xc9, 0x4b, 0x9c, 0xdd, 0xbc, - 0x6c, 0x47, 0x77, 0xf7, 0x0d, 0x33, 0x93, 0xb5, 0xb9, 0xf9, 0x27, 0xf8, 0x37, 0x78, 0xf2, 0xe4, - 0xdf, 0x50, 0x6f, 0xe2, 0xc5, 0xe0, 0x29, 0x47, 0xb3, 0xb9, 0x78, 0xec, 0x9f, 0x20, 0xce, 0x76, - 0x83, 0x09, 0x45, 0x0c, 0xb9, 0xbd, 0xe1, 0xbd, 0xef, 0x67, 0x1e, 0xdf, 0x2f, 0x8f, 0x6e, 0x17, - 0x60, 0xb8, 0xc4, 0xd0, 0xc4, 0x47, 0x90, 0x89, 0xd0, 0xa2, 0xc2, 0x14, 0x93, 0xc1, 0xb4, 0xe8, - 0x68, 0xec, 0x5b, 0xe8, 0x58, 0x11, 0xa5, 0x10, 0x62, 0xf4, 0x06, 0x62, 0xcb, 0x95, 0x46, 0x8b, - 0xfe, 0x8d, 0x4a, 0xc9, 0x2b, 0x25, 0xaf, 0x05, 0xfc, 0x3c, 0xe5, 0x46, 0x90, 0x48, 0x7b, 0xd4, - 0x8f, 0x78, 0x8c, 0x59, 0x98, 0x60, 0x82, 0xa1, 0x63, 0x44, 0xfd, 0x9e, 0x7b, 0xb9, 0x87, 0xab, - 0x2a, 0xf6, 0xc6, 0x95, 0xd9, 0xad, 0x50, 0x59, 0x89, 0xb9, 0x39, 0x6b, 0xde, 0x5d, 0x64, 0x65, - 0x3b, 0x50, 0x50, 0x0b, 0x2f, 0xcf, 0x09, 0xff, 0x6a, 0xb5, 0x67, 0x5b, 0x05, 0x18, 0xc8, 0x8b, - 0xd9, 0x7f, 0xdb, 0x9f, 0x1b, 0xb4, 0xf9, 0xd2, 0x39, 0xe0, 0xdf, 0xa3, 0xeb, 0x19, 0x58, 0xd1, - 0x15, 0x56, 0xb4, 0xc8, 0x26, 0xb9, 0x7e, 0xe1, 0xd6, 0x55, 0x3e, 0x6b, 0x47, 0x35, 0xb8, 0x07, - 0x56, 0x1c, 0x0e, 0x14, 0xec, 0x4f, 0xc7, 0xfd, 0x5d, 0x7a, 0xc9, 0x0c, 0x8c, 0x85, 0xac, 0x33, - 0x25, 0xac, 0x38, 0xc2, 0xb5, 0x39, 0xc2, 0x81, 0x9b, 0x9a, 0xe3, 0x5c, 0xac, 0xb4, 0x7b, 0x35, - 0xed, 0x05, 0x6d, 0x18, 0x05, 0x71, 0x6b, 0xd5, 0x21, 0xb6, 0xf8, 0x02, 0x99, 0xf0, 0x03, 0x05, - 0xb1, 0x83, 0x3a, 0xc4, 0xfd, 0xef, 0x2b, 0x3f, 0xbe, 0xb4, 0xbe, 0xad, 0xd0, 0x47, 0x74, 0x75, - 0x07, 0xac, 0xbf, 0xdd, 0xdb, 0x3a, 0x8e, 0x03, 0x23, 0x2d, 0x04, 0x99, 0xc8, 0x45, 0x02, 0x19, - 0xe4, 0x36, 0x88, 0x84, 0x91, 0x71, 0x90, 0x61, 0x2e, 0x2d, 0xea, 0x9b, 0x9b, 0x05, 0x98, 0x40, - 0x62, 0x20, 0x73, 0x0b, 0x3a, 0x17, 0x69, 0xa0, 0x41, 0x74, 0xe9, 0x13, 0xba, 0xb6, 0x0f, 0x2a, - 0x15, 0x31, 0xf8, 0x77, 0xfe, 0x01, 0xe9, 0x1b, 0x38, 0x87, 0xf0, 0x4e, 0x4b, 0x0b, 0xf4, 0x31, - 0x6d, 0x3e, 0xd3, 0x20, 0xec, 0x52, 0x84, 0xe7, 0x90, 0xc2, 0x52, 0x84, 0xc6, 0xae, 0x34, 0x4b, - 0x18, 0xd1, 0x7e, 0x4d, 0xd7, 0x6b, 0x8f, 0xfd, 0x43, 0xba, 0x96, 0xc4, 0x1d, 0x97, 0x55, 0x15, - 0xf7, 0x83, 0x85, 0xb2, 0xda, 0x49, 0x31, 0x12, 0xe9, 0x34, 0xb1, 0x66, 0x12, 0xff, 0xa9, 0x9f, - 0x7e, 0x24, 0x27, 0x0f, 0xbd, 0xe1, 0x98, 0x79, 0xa3, 0x31, 0xf3, 0x4e, 0xc7, 0x8c, 0xbc, 0x2f, - 0x19, 0xf9, 0x54, 0x32, 0xf2, 0xb5, 0x64, 0x64, 0x58, 0x32, 0x32, 0x2a, 0x19, 0xf9, 0x59, 0x32, - 0xf2, 0xab, 0x64, 0xde, 0x69, 0xc9, 0xc8, 0x87, 0x09, 0xf3, 0x4e, 0x26, 0x8c, 0x0c, 0x27, 0xcc, - 0x1b, 0x4d, 0x98, 0xf7, 0x4a, 0x24, 0xa8, 0xde, 0x26, 0xbc, 0xc0, 0xd4, 0x82, 0xd6, 0x82, 0xf7, - 0x4d, 0xe8, 0x8a, 0x1e, 0xea, 0x2c, 0x50, 0x1a, 0x0b, 0xd9, 0x05, 0x1d, 0xd4, 0xed, 0x50, 0x45, - 0x09, 0x86, 0x70, 0x6c, 0xcf, 0xee, 0xe4, 0x7f, 0x4e, 0x30, 0x6a, 0xba, 0xf3, 0xb9, 0xfd, 0x3b, - 0x00, 0x00, 0xff, 0xff, 0x20, 0x79, 0x7f, 0x2f, 0x6b, 0x04, 0x00, 0x00, + // 526 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xbf, 0x6b, 0x14, 0x41, + 0x14, 0xc7, 0x77, 0xcc, 0x79, 0x09, 0x23, 0x28, 0x6c, 0x15, 0x23, 0x0e, 0x21, 0x36, 0x82, 0xee, + 0x2e, 0x28, 0xc1, 0x5f, 0x60, 0xa1, 0x42, 0x10, 0x12, 0x84, 0x24, 0x55, 0x9a, 0x73, 0x76, 0xf7, + 0xdd, 0x66, 0x74, 0x77, 0xdf, 0x30, 0xf3, 0x6e, 0xcd, 0x75, 0x16, 0x36, 0x76, 0xfe, 0x0d, 0x56, + 0xfe, 0x19, 0xb1, 0xb3, 0x0c, 0x56, 0x57, 0x7a, 0x7b, 0x4d, 0xca, 0xfc, 0x09, 0xe2, 0x6c, 0xee, + 0xf4, 0x8e, 0xa0, 0x5e, 0x71, 0xdd, 0x1b, 0xde, 0xf7, 0xfb, 0xf9, 0x0e, 0x33, 0x6f, 0x86, 0x3f, + 0xac, 0xc0, 0x86, 0x0a, 0x23, 0x9b, 0x1c, 0x42, 0x21, 0x23, 0x42, 0x8d, 0x39, 0x66, 0xfd, 0x49, + 0xd1, 0x31, 0xd8, 0x23, 0xe8, 0x90, 0x8c, 0x73, 0x88, 0x30, 0x7e, 0x03, 0x09, 0x85, 0xda, 0x20, + 0xa1, 0x7f, 0xa7, 0x71, 0x86, 0x8d, 0x33, 0x1c, 0x1b, 0xc2, 0x8b, 0x9c, 0x6b, 0x41, 0xa6, 0xe8, + 0xb0, 0x17, 0x87, 0x09, 0x16, 0x51, 0x86, 0x19, 0x46, 0x8e, 0x11, 0xf7, 0xba, 0x6e, 0xe5, 0x16, + 0xae, 0x6a, 0xd8, 0x6b, 0x37, 0xa6, 0x77, 0x85, 0x9a, 0x14, 0x96, 0xf6, 0xbc, 0xf9, 0x60, 0x9e, + 0x2d, 0x53, 0x5f, 0xc3, 0xd8, 0x78, 0x7d, 0xc6, 0xf8, 0x47, 0x6b, 0x63, 0xba, 0x55, 0x81, 0x85, + 0xb2, 0x9a, 0xce, 0xdd, 0x38, 0xbd, 0xcc, 0xdb, 0xaf, 0xdc, 0x09, 0xf8, 0x8f, 0xf8, 0x4a, 0x01, + 0x24, 0x53, 0x49, 0x72, 0x95, 0xad, 0xb3, 0xdb, 0x57, 0xee, 0xdd, 0x0c, 0xa7, 0x8f, 0xa3, 0x11, + 0xee, 0x00, 0xc9, 0xfd, 0xbe, 0x86, 0xdd, 0x89, 0xdc, 0xdf, 0xe6, 0xd7, 0x6c, 0xdf, 0x12, 0x14, + 0x9d, 0x09, 0xe1, 0x92, 0x23, 0xdc, 0x9a, 0x21, 0xec, 0x39, 0xd5, 0x0c, 0xe7, 0x6a, 0xe3, 0xdd, + 0x19, 0xd3, 0x5e, 0xf2, 0x96, 0xd5, 0x90, 0xac, 0x2e, 0x39, 0xc4, 0x66, 0x38, 0xc7, 0x9d, 0x84, + 0x7b, 0x1a, 0x12, 0x07, 0x75, 0x88, 0xc7, 0x1f, 0x5b, 0xdf, 0xbf, 0xae, 0x7e, 0x68, 0xf1, 0x2e, + 0x5f, 0xda, 0x02, 0xf2, 0x3b, 0xdd, 0xcd, 0xa3, 0x24, 0xb0, 0x8a, 0x20, 0x28, 0x64, 0x29, 0x33, + 0x28, 0xa0, 0xa4, 0x20, 0x96, 0x56, 0x25, 0x41, 0x81, 0xa5, 0x22, 0x34, 0x77, 0xd7, 0x2f, 0xd4, + 0x58, 0x92, 0x65, 0x2a, 0x4d, 0xfa, 0x5b, 0x56, 0x81, 0x0d, 0x14, 0x06, 0xaa, 0x24, 0x30, 0xa5, + 0xcc, 0x03, 0x03, 0x32, 0xe5, 0xc0, 0x97, 0x77, 0x41, 0xe7, 0x32, 0x01, 0xff, 0xe0, 0x2f, 0x59, + 0x3d, 0x0b, 0xff, 0x0c, 0x6a, 0x34, 0xb3, 0x29, 0xef, 0x8c, 0x22, 0xe0, 0x29, 0x6f, 0x3f, 0x37, + 0x20, 0x69, 0xe1, 0x29, 0x2f, 0x20, 0x87, 0x05, 0xa7, 0x64, 0xbc, 0xb5, 0xad, 0xec, 0xe2, 0xef, + 0x66, 0xe3, 0x35, 0x5f, 0x19, 0x4f, 0x87, 0xbf, 0xcf, 0x97, 0xb3, 0xa4, 0xe3, 0xa6, 0xac, 0x19, + 0xd4, 0x27, 0x73, 0x4d, 0xd9, 0x56, 0x8e, 0xb1, 0xcc, 0x27, 0xb3, 0xd6, 0xce, 0x92, 0x5f, 0xf5, + 0xb3, 0xcf, 0xec, 0xf8, 0xa9, 0x77, 0x32, 0x14, 0xde, 0x60, 0x28, 0xbc, 0xb3, 0xa1, 0x60, 0xef, + 0x6b, 0xc1, 0xbe, 0xd4, 0x82, 0x7d, 0xab, 0x05, 0x3b, 0xa9, 0x05, 0x1b, 0xd4, 0x82, 0xfd, 0xa8, + 0x05, 0x3b, 0xad, 0x85, 0x77, 0x56, 0x0b, 0xf6, 0x69, 0x24, 0xbc, 0xe3, 0x91, 0x60, 0x27, 0x23, + 0xe1, 0x0d, 0x46, 0xc2, 0x3b, 0x90, 0x19, 0xea, 0xb7, 0x59, 0x58, 0x61, 0x4e, 0x60, 0x8c, 0x0c, + 0x7b, 0x36, 0x72, 0x45, 0x17, 0x4d, 0x11, 0x68, 0x83, 0x95, 0x4a, 0xc1, 0x04, 0xe3, 0x76, 0xa4, + 0xe3, 0x0c, 0x23, 0x38, 0xa2, 0xf3, 0x17, 0xfe, 0x3f, 0x9f, 0x47, 0xdc, 0x76, 0x0f, 0xff, 0xfe, + 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x08, 0xfc, 0x91, 0x86, 0x25, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_site/crudapi/api.vesapi.go index cd7782a1e..8533657a7 100644 --- a/pbgo/extschema/schema/topology/topology_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_site/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3244,6 +3248,12 @@ var APISwaggerJSON string = `{ "x-displayname": "site", "x-ves-proto-message": "ves.io.schema.topology.SiteType", "properties": { + "app_type": { + "description": " Site App Type", + "title": "Site App type", + "$ref": "#/definitions/topologySiteAppTypeEnum", + "x-displayname": "Site App type" + }, "dc_cluster_group": { "type": "array", "description": " Reference to the DC Cluster group", @@ -3253,6 +3263,12 @@ var APISwaggerJSON string = `{ }, "x-displayname": "DC Cluster Group" }, + "gateway_type": { + "description": " Information related to the site provider", + "title": "Provider Info", + "$ref": "#/definitions/topologyGatewayTypeEnum", + "x-displayname": "Provider Info" + }, "network": { "type": "array", "description": " Reference to the network.", @@ -3306,6 +3322,35 @@ var APISwaggerJSON string = `{ } } }, + "topologyAzureResourceGroupInfo": { + "type": "object", + "description": "x-displayName: \"Azure Resource Group Info\"\nAzure Site and Virtual Network resource group info", + "title": "AzureResourceGroupInfo", + "properties": { + "site_rg": { + "type": "string", + "description": "x-displayName: \"Site Resource Group\"\nResource group for Site", + "title": "Site Resource Group" + }, + "virtual_network_rg": { + "type": "string", + "description": "x-displayName: \"Virtual Network Resource Group\"\nResource group for Virtual Network", + "title": "Virtual Network Resource Group" + } + } + }, + "topologyGatewayTypeEnum": { + "type": "string", + "description": "x-displayName: Gateway type\nGateway Type\n\n - INGRESS_GATEWAY: Ingress gateway\n\nx-displayName: Ingress gateway\nIngress gateway (single nic)\n - INGRESS_EGRESS_GATEWAY: Ingress and Egress gateway\n\nx-displayName: Ingress and Egress gateway\nIngress and Egress gateway (dual nic)", + "title": "GatewayType", + "enum": [ + "INGRESS_GATEWAY", + "INGRESS_EGRESS_GATEWAY" + ], + "default": "INGRESS_GATEWAY", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.topology.GatewayTypeEnum" + }, "topologyMetaType": { "type": "object", "description": "A metadata for topology objects.", @@ -3367,6 +3412,39 @@ var APISwaggerJSON string = `{ } } }, + "topologyProviderInfo": { + "type": "object", + "description": "x-displayName: \"Provider Info\"\nCloud provider information", + "title": "ProviderInfo", + "properties": { + "azure_rg_info": { + "description": "x-displayName: \"Azure Resource Group Info\"\nResource group information for Azure Site and Virtual Network", + "title": "Azure Resource Group Info", + "$ref": "#/definitions/topologyAzureResourceGroupInfo" + }, + "cloud_link": { + "type": "array", + "description": "x-displayName: \"Cloud Link\"\nReference to cloud link", + "title": "Cloud Link", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + } + }, + "gcp_zones": { + "type": "array", + "description": "x-displayName: \"GCP Zones\"\nGCP Zones for the resource", + "title": "GCP Zones", + "items": { + "type": "string" + } + }, + "region": { + "type": "string", + "description": "x-displayName: \"Region\"\nRegion in which the resource exists", + "title": "Region" + } + } + }, "topologyProviderType": { "type": "string", "description": "provider type\n\nProviderType unspecified\nAWS backend\nGCP backend\nAzure backend\nF5XC backend", @@ -3382,6 +3460,19 @@ var APISwaggerJSON string = `{ "x-displayname": "Provider Type", "x-ves-proto-enum": "ves.io.schema.topology.ProviderType" }, + "topologySiteAppTypeEnum": { + "type": "string", + "description": "x-displayName: Site App type\nSite App Type\n\n - SITE_APPTYPE_NONE: Not applicable \n\nx-displayName: Not applicable \nNot applicable\n - SITE_APPTYPE_APPSTACK: AppStack Site\n\nx-displayName: AppStack Site\nAppStack Site\n - SITE_APPTYPE_MESH: Mesh site \n\nx-displayName: Mesh site \nMesh site", + "title": "Site App Type", + "enum": [ + "SITE_APPTYPE_NONE", + "SITE_APPTYPE_APPSTACK", + "SITE_APPTYPE_MESH" + ], + "default": "SITE_APPTYPE_NONE", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.topology.SiteAppTypeEnum" + }, "topology_siteSpecType": { "type": "object", "description": "Shape of the topology site specification", diff --git a/pbgo/extschema/schema/topology/topology_site/object.pb.go b/pbgo/extschema/schema/topology/topology_site/object.pb.go index 906b7df32..b5ed54ab2 100644 --- a/pbgo/extschema/schema/topology/topology_site/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_site/object.pb.go @@ -162,39 +162,40 @@ func init() { } var fileDescriptor_26bd7e7b74a17871 = []byte{ - // 505 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xbf, 0x6e, 0x13, 0x4f, - 0x10, 0xc7, 0x6f, 0x1d, 0xcb, 0x89, 0xf6, 0x27, 0xfd, 0x90, 0xae, 0x32, 0x41, 0xac, 0x22, 0x43, - 0x41, 0xc1, 0xed, 0xf1, 0x5f, 0x40, 0xc1, 0x9f, 0x80, 0x94, 0x26, 0x16, 0x52, 0x42, 0x43, 0x1a, - 0x6b, 0xef, 0x3c, 0xbe, 0x2c, 0xdc, 0xdd, 0xac, 0x76, 0xd7, 0x47, 0xdc, 0xf1, 0x08, 0xf4, 0x3c, - 0x00, 0x3c, 0x46, 0xe8, 0x10, 0x0d, 0x16, 0x95, 0x4b, 0x7c, 0x6e, 0x28, 0xf3, 0x08, 0x28, 0x7b, - 0xb1, 0x85, 0x2d, 0x12, 0x59, 0x72, 0x37, 0xab, 0xfd, 0x7e, 0x3e, 0x1a, 0xcd, 0x68, 0xe8, 0xed, - 0x02, 0x0c, 0x97, 0x18, 0x9a, 0xf8, 0x10, 0x32, 0x11, 0x5a, 0x54, 0x98, 0x62, 0x32, 0x98, 0x15, - 0x1d, 0x23, 0x2d, 0x84, 0x18, 0xbd, 0x85, 0xd8, 0x72, 0xa5, 0xd1, 0xa2, 0x7f, 0xbd, 0x42, 0x78, - 0x85, 0xf0, 0x69, 0x92, 0xcf, 0x21, 0x9b, 0x41, 0x22, 0xed, 0x61, 0x3f, 0xe2, 0x31, 0x66, 0x61, - 0x82, 0x09, 0x86, 0x0e, 0x8e, 0xfa, 0x3d, 0xf7, 0x72, 0x0f, 0x57, 0x55, 0xd2, 0xcd, 0x2b, 0xf3, - 0x7d, 0xa0, 0xb2, 0x12, 0x73, 0x73, 0xf6, 0x79, 0x6b, 0xa9, 0x26, 0xed, 0x40, 0xc1, 0x94, 0x68, - 0x9d, 0x47, 0xfc, 0x95, 0xb9, 0xbc, 0x90, 0x39, 0x1f, 0x2f, 0xc0, 0x40, 0x5e, 0xcc, 0x37, 0xd5, - 0xfa, 0x5c, 0xa7, 0x8d, 0x57, 0x6e, 0x2e, 0xfe, 0x23, 0xba, 0x91, 0x81, 0x15, 0x5d, 0x61, 0x45, - 0x93, 0x6c, 0x91, 0x1b, 0xff, 0xdd, 0xb9, 0xca, 0xe7, 0x87, 0x54, 0x05, 0xdb, 0x60, 0xc5, 0xeb, - 0x81, 0x82, 0xbd, 0x59, 0xdc, 0xdf, 0xa5, 0x97, 0xcc, 0xc0, 0x58, 0xc8, 0x3a, 0x33, 0x43, 0xcd, - 0x19, 0xae, 0x2d, 0x18, 0xf6, 0x5d, 0x6a, 0xc1, 0xf3, 0x7f, 0xc5, 0xb6, 0xa7, 0xb6, 0x6d, 0x5a, - 0x37, 0x0a, 0xe2, 0xe6, 0x9a, 0x53, 0x70, 0xbe, 0xcc, 0xa6, 0xf8, 0xbe, 0x82, 0xd8, 0xd9, 0x1c, - 0xfb, 0xf8, 0x47, 0xed, 0xe7, 0xd7, 0xe6, 0xf7, 0x1a, 0x7d, 0x4a, 0xd7, 0x76, 0xc0, 0xfa, 0x0f, - 0x7b, 0xf7, 0x8f, 0xe2, 0xe0, 0x34, 0x18, 0x64, 0x22, 0x17, 0x09, 0x64, 0x90, 0xdb, 0x20, 0x12, - 0x46, 0xc6, 0x41, 0x86, 0xb9, 0xb4, 0xa8, 0x6f, 0x6e, 0x15, 0x60, 0x02, 0x89, 0x81, 0xcc, 0x2d, - 0xe8, 0x5c, 0xa4, 0x81, 0x06, 0xd1, 0xa5, 0xcf, 0xe9, 0xfa, 0x1e, 0xa8, 0x54, 0xc4, 0xe0, 0x3f, - 0xb8, 0x40, 0xd2, 0x37, 0xf0, 0x0f, 0xc3, 0x7b, 0x2d, 0x2d, 0xd0, 0x67, 0xb4, 0xf1, 0x42, 0x83, - 0xb0, 0x2b, 0x19, 0x5e, 0x42, 0x0a, 0x2b, 0x19, 0xea, 0xbb, 0xd2, 0xac, 0x30, 0x88, 0xd6, 0x1b, - 0xba, 0x31, 0x9d, 0xb1, 0xdf, 0xa6, 0xeb, 0x49, 0xdc, 0x71, 0x4b, 0xaa, 0xf6, 0x7c, 0x6f, 0xb9, - 0x25, 0xed, 0xa4, 0x18, 0x89, 0x74, 0xb6, 0xaa, 0x46, 0x12, 0x9f, 0xd6, 0xdb, 0x9f, 0xc8, 0xf1, - 0x13, 0x6f, 0x38, 0x66, 0xde, 0x68, 0xcc, 0xbc, 0x93, 0x31, 0x23, 0x1f, 0x4a, 0x46, 0xbe, 0x94, - 0x8c, 0x7c, 0x2b, 0x19, 0x19, 0x96, 0x8c, 0x8c, 0x4a, 0x46, 0x7e, 0x95, 0x8c, 0xfc, 0x2e, 0x99, - 0x77, 0x52, 0x32, 0xf2, 0x71, 0xc2, 0xbc, 0xe3, 0x09, 0x23, 0xc3, 0x09, 0xf3, 0x46, 0x13, 0xe6, - 0x1d, 0x1c, 0x24, 0xa8, 0xde, 0x25, 0xbc, 0xc0, 0xd4, 0x82, 0xd6, 0x82, 0xf7, 0x4d, 0xe8, 0x8a, - 0x1e, 0xea, 0x2c, 0x50, 0x1a, 0x0b, 0xd9, 0x05, 0x1d, 0x4c, 0xbf, 0x43, 0x15, 0x25, 0x18, 0xc2, - 0x91, 0x3d, 0xbb, 0x8c, 0x0b, 0x2f, 0x32, 0x6a, 0xb8, 0x4b, 0xb9, 0xfb, 0x27, 0x00, 0x00, 0xff, - 0xff, 0x4c, 0x6c, 0x22, 0xae, 0x65, 0x04, 0x00, 0x00, + // 521 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x3f, 0x6f, 0x13, 0x3f, + 0x18, 0xc7, 0xcf, 0xbf, 0xe6, 0x97, 0x56, 0x46, 0x02, 0xe9, 0xa6, 0x50, 0x84, 0x55, 0x05, 0x06, + 0x06, 0xce, 0xc7, 0xdf, 0x01, 0x06, 0x86, 0x82, 0xd4, 0xa5, 0x11, 0x52, 0xcb, 0x42, 0x96, 0xc8, + 0x77, 0xf7, 0xe4, 0x6a, 0xb8, 0xbb, 0xc7, 0xb2, 0x9d, 0xa3, 0xd9, 0x18, 0x58, 0xd8, 0xd8, 0x79, + 0x03, 0xbc, 0x8c, 0xb2, 0x31, 0x46, 0x4c, 0x19, 0xc9, 0x65, 0x61, 0xec, 0x4b, 0x40, 0xf5, 0x35, + 0x81, 0x44, 0xb4, 0x64, 0xc9, 0xf6, 0x58, 0xfe, 0x7c, 0xbf, 0xcf, 0x23, 0xfb, 0x6b, 0xd3, 0xfb, + 0x25, 0x18, 0x2e, 0x31, 0x34, 0xf1, 0x11, 0xe4, 0x22, 0xb4, 0xa8, 0x30, 0xc3, 0x74, 0x38, 0x2f, + 0x7a, 0x46, 0x5a, 0x08, 0x31, 0x7a, 0x03, 0xb1, 0xe5, 0x4a, 0xa3, 0x45, 0xff, 0x76, 0x2d, 0xe1, + 0xb5, 0x84, 0xcf, 0x48, 0xbe, 0x20, 0xd9, 0x0e, 0x52, 0x69, 0x8f, 0x06, 0x11, 0x8f, 0x31, 0x0f, + 0x53, 0x4c, 0x31, 0x74, 0xe2, 0x68, 0xd0, 0x77, 0x2b, 0xb7, 0x70, 0x55, 0x6d, 0xba, 0x7d, 0x63, + 0x71, 0x0e, 0x54, 0x56, 0x62, 0x61, 0xce, 0x37, 0xef, 0xad, 0x34, 0xa4, 0x1d, 0x2a, 0x98, 0x29, + 0xda, 0x17, 0x29, 0xfe, 0x60, 0xae, 0x2f, 0x31, 0x17, 0xcb, 0x4b, 0x30, 0x50, 0x94, 0x8b, 0x43, + 0xb5, 0x27, 0xff, 0xd3, 0xe6, 0x4b, 0x77, 0x2e, 0xfe, 0x13, 0xba, 0x95, 0x83, 0x15, 0x89, 0xb0, + 0xa2, 0x45, 0x76, 0xc8, 0x9d, 0x2b, 0x0f, 0x6e, 0xf2, 0xc5, 0x43, 0xaa, 0xc1, 0x0e, 0x58, 0xf1, + 0x6a, 0xa8, 0xe0, 0x60, 0x8e, 0xfb, 0xfb, 0xf4, 0x9a, 0x19, 0x1a, 0x0b, 0x79, 0x6f, 0xee, 0xf0, + 0x9f, 0x73, 0xb8, 0xb5, 0xe4, 0x70, 0xe8, 0xa8, 0x25, 0x9f, 0xab, 0xb5, 0xb6, 0x33, 0x73, 0xdb, + 0xa5, 0x0d, 0xa3, 0x20, 0x6e, 0x6d, 0x38, 0x0b, 0xce, 0x57, 0xb9, 0x29, 0x7e, 0xa8, 0x20, 0x76, + 0x6e, 0x4e, 0xfb, 0xf4, 0x63, 0xe3, 0xfb, 0xd7, 0xd6, 0x87, 0x06, 0xed, 0xd3, 0x8d, 0x3d, 0xb0, + 0x7e, 0xaf, 0xff, 0xf8, 0x38, 0x0e, 0xce, 0xc0, 0x20, 0x17, 0x85, 0x48, 0x21, 0x87, 0xc2, 0x06, + 0x91, 0x30, 0x32, 0x0e, 0x72, 0x2c, 0xa4, 0x45, 0x7d, 0x77, 0xe7, 0xaf, 0x8c, 0xb1, 0xa2, 0x48, + 0x84, 0x4e, 0x7e, 0x63, 0x25, 0x98, 0x40, 0x62, 0x20, 0x0b, 0x0b, 0xba, 0x10, 0x59, 0xa0, 0x41, + 0x24, 0x14, 0xe8, 0xe6, 0x01, 0xa8, 0x4c, 0xc4, 0xe0, 0x77, 0x2f, 0xe9, 0x35, 0x30, 0xf0, 0xcf, + 0x46, 0x35, 0xb3, 0xdc, 0xe5, 0x9d, 0x96, 0x16, 0x68, 0x42, 0x9b, 0xcf, 0x35, 0x08, 0xbb, 0xf6, + 0x2e, 0x2f, 0x20, 0x83, 0x35, 0x77, 0x49, 0x69, 0x63, 0x5f, 0x9a, 0xf5, 0xdf, 0x4d, 0xfb, 0x35, + 0xdd, 0x9a, 0xa5, 0xc3, 0xef, 0xd0, 0xcd, 0x34, 0xee, 0xb9, 0x78, 0xd5, 0x09, 0x7d, 0xb4, 0x5a, + 0xbc, 0xf6, 0x32, 0x8c, 0x44, 0x36, 0x0f, 0x59, 0x33, 0x8d, 0xcf, 0xea, 0xdd, 0xcf, 0xe4, 0xe4, + 0x99, 0x37, 0x9a, 0x30, 0x6f, 0x3c, 0x61, 0xde, 0xe9, 0x84, 0x91, 0xf7, 0x15, 0x23, 0x5f, 0x2a, + 0x46, 0xbe, 0x55, 0x8c, 0x8c, 0x2a, 0x46, 0xc6, 0x15, 0x23, 0x3f, 0x2a, 0x46, 0x7e, 0x56, 0xcc, + 0x3b, 0xad, 0x18, 0xf9, 0x34, 0x65, 0xde, 0xc9, 0x94, 0x91, 0xd1, 0x94, 0x79, 0xe3, 0x29, 0xf3, + 0xba, 0xdd, 0x14, 0xd5, 0xdb, 0x94, 0x97, 0x98, 0x59, 0xd0, 0x5a, 0xf0, 0x81, 0x09, 0x5d, 0xd1, + 0x47, 0x9d, 0x07, 0x4a, 0x63, 0x29, 0x13, 0xd0, 0xc1, 0x6c, 0x3b, 0x54, 0x51, 0x8a, 0x21, 0x1c, + 0xdb, 0xf3, 0x37, 0x7d, 0xe9, 0x5f, 0x12, 0x35, 0xdd, 0x1b, 0x7f, 0xf8, 0x2b, 0x00, 0x00, 0xff, + 0xff, 0x98, 0x97, 0xcf, 0xd6, 0x1f, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_site_mesh_group/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_site_mesh_group/crudapi/api.vesapi.go index 5f5541b3f..aa16d01af 100644 --- a/pbgo/extschema/schema/topology/topology_site_mesh_group/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_site_mesh_group/crudapi/api.vesapi.go @@ -2973,10 +2973,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_site_mesh_group/object.pb.go b/pbgo/extschema/schema/topology/topology_site_mesh_group/object.pb.go index e6a418ff7..4b99a8dd1 100644 --- a/pbgo/extschema/schema/topology/topology_site_mesh_group/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_site_mesh_group/object.pb.go @@ -162,39 +162,40 @@ func init() { } var fileDescriptor_70f2fd32dc26c562 = []byte{ - // 514 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x8a, 0x13, 0x4f, - 0x10, 0xc7, 0xa7, 0x77, 0x43, 0x76, 0xe9, 0x1f, 0xfc, 0x84, 0x39, 0xc5, 0x15, 0x9b, 0x25, 0x5e, - 0x3c, 0x38, 0x33, 0xa0, 0x28, 0xae, 0x8a, 0xeb, 0x3f, 0xd8, 0xcb, 0x06, 0x61, 0xd7, 0x83, 0x78, - 0x09, 0x3d, 0x93, 0x4a, 0xa7, 0x75, 0x66, 0xaa, 0xe9, 0xee, 0x8c, 0x9b, 0x9b, 0x8f, 0xe0, 0x53, - 0x88, 0x67, 0x9f, 0x60, 0xbd, 0x89, 0x17, 0x83, 0xa7, 0x1c, 0xcd, 0xe4, 0xe2, 0x71, 0x1f, 0x41, - 0xb6, 0x67, 0x13, 0x4c, 0x30, 0x62, 0xc8, 0xad, 0x86, 0xfe, 0x7e, 0x3e, 0x14, 0x55, 0x53, 0xf4, - 0x41, 0x01, 0x26, 0x94, 0x18, 0x99, 0xa4, 0x07, 0x19, 0x8f, 0x2c, 0x2a, 0x4c, 0x51, 0x0c, 0x66, - 0x45, 0xdb, 0x48, 0x0b, 0xed, 0x0c, 0x4c, 0xaf, 0x2d, 0x34, 0xf6, 0x55, 0x84, 0xf1, 0x6b, 0x48, - 0x6c, 0xa8, 0x34, 0x5a, 0xf4, 0xa3, 0x8a, 0x0e, 0x2b, 0x3a, 0x9c, 0x42, 0xe1, 0x32, 0x7a, 0x27, - 0x10, 0xd2, 0xf6, 0xfa, 0x71, 0x98, 0x60, 0x16, 0x09, 0x14, 0x18, 0x39, 0x4f, 0xdc, 0xef, 0xba, - 0x2f, 0xf7, 0xe1, 0xaa, 0xca, 0xbf, 0x73, 0x65, 0xbe, 0x3b, 0x54, 0x56, 0x62, 0x6e, 0x2e, 0x1e, - 0xef, 0xaf, 0xda, 0xba, 0x1d, 0x28, 0x98, 0xc2, 0xcd, 0x65, 0xf0, 0x6f, 0x99, 0xcb, 0x0b, 0x99, - 0xe5, 0x78, 0x01, 0x06, 0xf2, 0x62, 0xbe, 0xbf, 0xe6, 0xa7, 0x1a, 0xad, 0x3f, 0x77, 0xd3, 0xf2, - 0xf7, 0xe8, 0x76, 0x06, 0x96, 0x77, 0xb8, 0xe5, 0x0d, 0xb2, 0x4b, 0xae, 0xff, 0x77, 0xf3, 0x6a, - 0x38, 0x3f, 0xba, 0x2a, 0xd8, 0x02, 0xcb, 0x5f, 0x0c, 0x14, 0x1c, 0xcd, 0xe2, 0xfe, 0x21, 0xbd, - 0x64, 0x06, 0xc6, 0x42, 0xd6, 0x9e, 0x19, 0x36, 0x9c, 0xe1, 0xda, 0x82, 0xe1, 0xd8, 0xa5, 0x16, - 0x3c, 0xff, 0x57, 0x6c, 0x6b, 0x6a, 0x6b, 0xd1, 0x9a, 0x51, 0x90, 0x34, 0x36, 0x9d, 0x62, 0x2f, - 0x5c, 0x71, 0x7f, 0xe1, 0xb1, 0x82, 0xc4, 0x89, 0x9d, 0xe6, 0xde, 0xb7, 0x8d, 0xef, 0x9f, 0x1b, - 0x5f, 0x37, 0xe8, 0x3e, 0xdd, 0x3c, 0x00, 0xeb, 0xdf, 0xed, 0xde, 0x3e, 0x49, 0x82, 0x73, 0x26, - 0xc8, 0x78, 0xce, 0x05, 0x64, 0x90, 0xdb, 0x20, 0xe6, 0x46, 0x26, 0x41, 0x86, 0xb9, 0xb4, 0xa8, - 0x6f, 0xec, 0x16, 0x60, 0x02, 0x89, 0x81, 0xcc, 0x2d, 0xe8, 0x9c, 0xa7, 0x81, 0x06, 0xde, 0xa1, - 0x8f, 0xe9, 0xd6, 0x11, 0xa8, 0x94, 0x27, 0xe0, 0xdf, 0xf9, 0x8b, 0xa4, 0x6f, 0xe0, 0x0f, 0x86, - 0xb7, 0x5a, 0x5a, 0xa0, 0x8f, 0x68, 0xfd, 0xa9, 0x06, 0x6e, 0xd7, 0x32, 0x3c, 0x83, 0x14, 0xd6, - 0x32, 0xd4, 0x0e, 0xa5, 0x59, 0x63, 0x10, 0xcd, 0x0e, 0xdd, 0x9e, 0xce, 0xd8, 0x7f, 0x49, 0xb7, - 0x44, 0xd2, 0x76, 0xfb, 0xaa, 0x7e, 0x9a, 0xfd, 0x95, 0xf7, 0x75, 0x90, 0x62, 0xcc, 0xd3, 0xd9, - 0xd6, 0xea, 0x22, 0x39, 0xaf, 0x9f, 0x7c, 0x20, 0xa7, 0x0f, 0xbd, 0xe1, 0x98, 0x79, 0xa3, 0x31, - 0xf3, 0xce, 0xc6, 0x8c, 0xbc, 0x2b, 0x19, 0xf9, 0x58, 0x32, 0xf2, 0xa5, 0x64, 0x64, 0x58, 0x32, - 0x32, 0x2a, 0x19, 0xf9, 0x51, 0x32, 0xf2, 0xb3, 0x64, 0xde, 0x59, 0xc9, 0xc8, 0xfb, 0x09, 0xf3, - 0x4e, 0x27, 0x8c, 0x0c, 0x27, 0xcc, 0x1b, 0x4d, 0x98, 0xf7, 0x0a, 0x04, 0xaa, 0x37, 0x22, 0x2c, - 0x30, 0xb5, 0xa0, 0x35, 0x0f, 0xfb, 0x26, 0x72, 0x45, 0x17, 0x75, 0x16, 0x28, 0x8d, 0x85, 0xec, - 0x80, 0x0e, 0xa6, 0xcf, 0x91, 0x8a, 0x05, 0x46, 0x70, 0x62, 0x2f, 0xee, 0xe5, 0x5f, 0x4f, 0x36, - 0xae, 0xbb, 0x53, 0xba, 0xf5, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x1e, 0x48, 0xc0, 0xea, 0xa7, 0x04, + // 530 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0xd3, 0x40, + 0x14, 0xc7, 0x7d, 0x34, 0xa4, 0xd5, 0x21, 0x81, 0xe4, 0x29, 0x14, 0x71, 0xaa, 0xc2, 0xc2, 0x80, + 0x6d, 0x09, 0xc4, 0x50, 0x40, 0x20, 0x01, 0x52, 0x97, 0x46, 0x48, 0x2d, 0x03, 0xea, 0x62, 0x9d, + 0xed, 0x97, 0x8b, 0xc1, 0xf6, 0x3b, 0xdd, 0x5d, 0x4c, 0xb3, 0x31, 0xb0, 0xb0, 0xf1, 0x29, 0x10, + 0x1f, 0xa3, 0x6c, 0x8c, 0x11, 0x53, 0x46, 0xe2, 0x2c, 0x0c, 0x0c, 0xfd, 0x08, 0xa8, 0xe7, 0x26, + 0x90, 0x88, 0x40, 0x33, 0x64, 0x7b, 0xa7, 0xfb, 0xff, 0x7f, 0xef, 0xe9, 0xee, 0x7f, 0x47, 0x1f, + 0x95, 0xa0, 0xfd, 0x14, 0x03, 0x1d, 0xf7, 0x20, 0xe7, 0x81, 0x41, 0x89, 0x19, 0x8a, 0xc1, 0xac, + 0x08, 0x75, 0x6a, 0x20, 0xcc, 0x41, 0xf7, 0x42, 0xa1, 0xb0, 0x2f, 0x03, 0x8c, 0x5e, 0x43, 0x6c, + 0x7c, 0xa9, 0xd0, 0xa0, 0x1b, 0xd4, 0x6e, 0xbf, 0x76, 0xfb, 0x53, 0x93, 0xbf, 0xcc, 0xbd, 0xed, + 0x89, 0xd4, 0xf4, 0xfa, 0x91, 0x1f, 0x63, 0x1e, 0x08, 0x14, 0x18, 0x58, 0x4e, 0xd4, 0xef, 0xda, + 0x95, 0x5d, 0xd8, 0xaa, 0xe6, 0x6f, 0xdf, 0x98, 0x9f, 0x0e, 0xa5, 0x49, 0xb1, 0xd0, 0xe7, 0x9b, + 0x0f, 0x57, 0x1d, 0xdd, 0x0c, 0x24, 0x4c, 0xcd, 0xed, 0x65, 0xe6, 0x3f, 0x34, 0xd7, 0x17, 0x34, + 0xcb, 0xed, 0x25, 0x68, 0x28, 0xca, 0xf9, 0xf9, 0xda, 0x3f, 0x2f, 0xd3, 0xe6, 0x0b, 0x7b, 0x5a, + 0xee, 0x2e, 0xdd, 0xca, 0xc1, 0xf0, 0x84, 0x1b, 0xde, 0x22, 0x3b, 0xe4, 0xf6, 0x95, 0xbb, 0x37, + 0xfd, 0xf9, 0xa3, 0xab, 0x85, 0x1d, 0x30, 0xfc, 0xe5, 0x40, 0xc2, 0xc1, 0x4c, 0xee, 0xee, 0xd3, + 0x6b, 0x7a, 0xa0, 0x0d, 0xe4, 0xe1, 0x8c, 0x70, 0xc9, 0x12, 0x6e, 0x2d, 0x10, 0x0e, 0xad, 0x6a, + 0x81, 0x73, 0xb5, 0xf6, 0x76, 0xa6, 0xb4, 0x0e, 0x6d, 0x68, 0x09, 0x71, 0x6b, 0xc3, 0x22, 0x76, + 0xfd, 0x15, 0xef, 0xcf, 0x3f, 0x94, 0x10, 0x5b, 0xb0, 0xc5, 0x3c, 0xf8, 0xd0, 0xf8, 0xf6, 0xa5, + 0xf5, 0xbe, 0x41, 0xbb, 0x74, 0x63, 0x0f, 0x8c, 0x1b, 0x76, 0xef, 0x1f, 0xc7, 0xde, 0x99, 0xc7, + 0xcb, 0x79, 0xc1, 0x05, 0xe4, 0x50, 0x18, 0x2f, 0xe2, 0x3a, 0x8d, 0xbd, 0x1c, 0x8b, 0xd4, 0xa0, + 0xba, 0xb3, 0xf3, 0x57, 0x8d, 0x36, 0xbc, 0x48, 0xb8, 0x4a, 0x7e, 0xcb, 0x4a, 0xd0, 0x5e, 0x8a, + 0x5e, 0x5a, 0x18, 0x50, 0x05, 0xcf, 0x3c, 0x05, 0x3c, 0xa1, 0x40, 0x37, 0x0f, 0x40, 0x66, 0x3c, + 0x06, 0xf7, 0xe8, 0x1f, 0xbd, 0xfa, 0x1a, 0xfe, 0xdb, 0xa8, 0xd6, 0x2c, 0x76, 0x79, 0xab, 0x52, + 0x03, 0x34, 0xa1, 0xcd, 0x67, 0x0a, 0xb8, 0x59, 0x7b, 0x97, 0xe7, 0x90, 0xc1, 0x9a, 0xbb, 0x08, + 0xda, 0xd8, 0x4f, 0xf5, 0xfa, 0xef, 0xa6, 0x9d, 0xd0, 0xad, 0x69, 0x3a, 0xdc, 0x57, 0x74, 0x53, + 0xc4, 0xa1, 0x4d, 0x5a, 0x1d, 0xf7, 0x27, 0x2b, 0x27, 0x6d, 0x2f, 0xc3, 0x88, 0x67, 0xb3, 0xbc, + 0x35, 0x45, 0x7c, 0x56, 0x3f, 0xfd, 0x44, 0x4e, 0x1e, 0x3b, 0xc3, 0x31, 0x73, 0x46, 0x63, 0xe6, + 0x9c, 0x8e, 0x19, 0x79, 0x57, 0x31, 0xf2, 0xb9, 0x62, 0xe4, 0x6b, 0xc5, 0xc8, 0xb0, 0x62, 0x64, + 0x54, 0x31, 0xf2, 0xbd, 0x62, 0xe4, 0x47, 0xc5, 0x9c, 0xd3, 0x8a, 0x91, 0x8f, 0x13, 0xe6, 0x9c, + 0x4c, 0x18, 0x19, 0x4e, 0x98, 0x33, 0x9a, 0x30, 0xe7, 0x08, 0x04, 0xca, 0x37, 0xc2, 0x2f, 0x31, + 0x33, 0xa0, 0x14, 0xf7, 0xfb, 0x3a, 0xb0, 0x45, 0x17, 0x55, 0xee, 0x49, 0x85, 0x65, 0x9a, 0x80, + 0xf2, 0xa6, 0xdb, 0x81, 0x8c, 0x04, 0x06, 0x70, 0x6c, 0xce, 0x5f, 0xfa, 0x45, 0x3f, 0x9b, 0xa8, + 0x69, 0x3f, 0x81, 0x7b, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x2d, 0xc0, 0xe3, 0xad, 0x61, 0x05, 0x00, 0x00, } diff --git a/pbgo/extschema/schema/topology/topology_subnet/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_subnet/crudapi/api.vesapi.go index f7db60f1f..31773f1bf 100644 --- a/pbgo/extschema/schema/topology/topology_subnet/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_subnet/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_subnet/object.pb.go b/pbgo/extschema/schema/topology/topology_subnet/object.pb.go index 933c9b472..248dd5cad 100644 --- a/pbgo/extschema/schema/topology/topology_subnet/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_subnet/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_efd76f300d116496 = []byte{ - // 506 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0xda, 0x90, 0x96, 0x11, 0x14, 0xf6, 0x14, 0x2b, 0x0e, 0x25, 0x82, 0x78, 0x70, - 0x67, 0xa5, 0xc5, 0xa2, 0x1e, 0xfc, 0x59, 0xe8, 0xa5, 0xa5, 0xd0, 0x7a, 0x52, 0x21, 0xcc, 0x6e, - 0x5e, 0xb6, 0xa3, 0xbb, 0xfb, 0x86, 0x99, 0xc9, 0xda, 0xdc, 0xfc, 0x13, 0xfc, 0x07, 0xbc, 0xeb, - 0x7f, 0x51, 0x6f, 0xe2, 0xc5, 0xe0, 0x29, 0x47, 0xb3, 0xb9, 0x78, 0xec, 0x9f, 0x20, 0xce, 0x76, - 0x83, 0x09, 0xa2, 0x81, 0xdc, 0xde, 0xf0, 0xbe, 0xdf, 0xcf, 0xbe, 0x7d, 0x5f, 0x1e, 0xdd, 0x2e, - 0xc0, 0x70, 0x89, 0xa1, 0x89, 0x4f, 0x20, 0x13, 0xa1, 0x45, 0x85, 0x29, 0x26, 0x83, 0x69, 0xd1, - 0x31, 0xfd, 0x28, 0x07, 0x1b, 0x62, 0xf4, 0x1a, 0x62, 0xcb, 0x95, 0x46, 0x8b, 0xfe, 0xcd, 0xca, - 0xc4, 0x2b, 0x13, 0xaf, 0xb5, 0x7c, 0xce, 0xb4, 0x11, 0x24, 0xd2, 0x9e, 0xf4, 0x23, 0x1e, 0x63, - 0x16, 0x26, 0x98, 0x60, 0xe8, 0xec, 0x51, 0xbf, 0xe7, 0x5e, 0xee, 0xe1, 0xaa, 0x0a, 0xbb, 0x71, - 0x6d, 0x76, 0x16, 0x54, 0x56, 0x62, 0x6e, 0x2e, 0x9a, 0x5b, 0x0b, 0x0e, 0x6a, 0x07, 0x0a, 0x6a, - 0xcf, 0xd5, 0x39, 0xcf, 0x1f, 0xad, 0xf6, 0x6c, 0xab, 0x00, 0x03, 0x79, 0x31, 0xfb, 0xc9, 0xf6, - 0xa7, 0x06, 0x6d, 0x1e, 0xba, 0xff, 0xf6, 0xef, 0xd3, 0xf5, 0x0c, 0xac, 0xe8, 0x0a, 0x2b, 0x5a, - 0x64, 0x93, 0xdc, 0xba, 0xb4, 0x75, 0x9d, 0xcf, 0x2e, 0xa1, 0x12, 0x1e, 0x80, 0x15, 0xcf, 0x07, - 0x0a, 0x8e, 0xa6, 0x72, 0x7f, 0x9f, 0x5e, 0x31, 0x03, 0x63, 0x21, 0xeb, 0x4c, 0x09, 0x2b, 0x8e, - 0x70, 0x63, 0x8e, 0x70, 0xec, 0x54, 0x73, 0x9c, 0xcb, 0x95, 0xf7, 0xa0, 0xa6, 0xed, 0xd2, 0x86, - 0x51, 0x10, 0xb7, 0x56, 0x1d, 0xe2, 0x0e, 0x5f, 0x2c, 0x09, 0x7e, 0xac, 0x20, 0x76, 0x3c, 0xe7, - 0x7e, 0xf0, 0x6d, 0xe5, 0xfb, 0xe7, 0xd6, 0xd7, 0x15, 0xfa, 0x88, 0xae, 0xee, 0x81, 0xf5, 0xef, - 0xf5, 0xee, 0x9e, 0xc6, 0x81, 0x91, 0x16, 0x82, 0x4c, 0xe4, 0x22, 0x81, 0x0c, 0x72, 0x1b, 0x44, - 0xc2, 0xc8, 0x38, 0xc8, 0x30, 0x97, 0x16, 0xf5, 0xed, 0xcd, 0x02, 0x4c, 0x20, 0x31, 0x90, 0xb9, - 0x05, 0x9d, 0x8b, 0x34, 0xd0, 0x20, 0xba, 0xf4, 0x09, 0x5d, 0x3b, 0x02, 0x95, 0x8a, 0x18, 0xfc, - 0x9d, 0x7f, 0x40, 0xfa, 0x06, 0xfe, 0x42, 0x78, 0xab, 0xa5, 0x05, 0xfa, 0x98, 0x36, 0x9f, 0x69, - 0x10, 0x76, 0x29, 0xc2, 0x2e, 0xa4, 0xb0, 0x14, 0xa1, 0xb1, 0x2f, 0xcd, 0x12, 0x8b, 0x68, 0xbf, - 0xa4, 0xeb, 0xf5, 0x8e, 0xfd, 0x43, 0xba, 0x96, 0xc4, 0x1d, 0x17, 0x53, 0x95, 0xf4, 0xce, 0xa2, - 0x31, 0xed, 0xa5, 0x18, 0x89, 0x74, 0x1a, 0x56, 0x33, 0x89, 0x7f, 0xd7, 0x4f, 0x3f, 0x90, 0xb3, - 0x87, 0xde, 0x70, 0xcc, 0xbc, 0xd1, 0x98, 0x79, 0xe7, 0x63, 0x46, 0xde, 0x95, 0x8c, 0x7c, 0x2c, - 0x19, 0xf9, 0x52, 0x32, 0x32, 0x2c, 0x19, 0x19, 0x95, 0x8c, 0xfc, 0x28, 0x19, 0xf9, 0x59, 0x32, - 0xef, 0xbc, 0x64, 0xe4, 0xfd, 0x84, 0x79, 0x67, 0x13, 0x46, 0x86, 0x13, 0xe6, 0x8d, 0x26, 0xcc, - 0x7b, 0xf1, 0x2a, 0x41, 0xf5, 0x26, 0xe1, 0x05, 0xa6, 0x16, 0xb4, 0x16, 0xbc, 0x6f, 0x42, 0x57, - 0xf4, 0x50, 0x67, 0x81, 0xd2, 0x58, 0xc8, 0x2e, 0xe8, 0xa0, 0x6e, 0x87, 0x2a, 0x4a, 0x30, 0x84, - 0x53, 0x7b, 0x71, 0x1d, 0xff, 0xb9, 0xb9, 0xa8, 0xe9, 0xee, 0x65, 0xfb, 0x57, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xf8, 0x25, 0xc5, 0x6d, 0x4d, 0x04, 0x00, 0x00, + // 520 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0x3f, 0x6f, 0x13, 0x3d, + 0x18, 0x3f, 0xbf, 0xcd, 0x9b, 0x56, 0x46, 0x02, 0xe9, 0xa6, 0x52, 0x84, 0x55, 0x15, 0x09, 0x31, + 0x70, 0x3e, 0xd4, 0x0a, 0x24, 0x18, 0x18, 0xa0, 0x52, 0x97, 0x56, 0x95, 0x5a, 0xa6, 0x82, 0x14, + 0xf9, 0xee, 0x9e, 0xb8, 0x86, 0xbb, 0xb3, 0x65, 0x3f, 0x39, 0x9a, 0x8d, 0x81, 0x85, 0x8d, 0x2f, + 0xc0, 0xce, 0xc7, 0x28, 0x1b, 0x63, 0xc4, 0x94, 0x91, 0x5c, 0x16, 0xc6, 0x7e, 0x04, 0x84, 0xaf, + 0x09, 0x24, 0x42, 0x34, 0x4b, 0xb6, 0xc7, 0xfa, 0xfd, 0xf3, 0x9d, 0x7f, 0x36, 0xdd, 0xa9, 0xc0, + 0x71, 0xa5, 0x63, 0x97, 0x9e, 0x42, 0x21, 0x62, 0xd4, 0x46, 0xe7, 0x5a, 0xf6, 0xa7, 0x43, 0xc7, + 0xf5, 0x92, 0x12, 0x30, 0xd6, 0xc9, 0x6b, 0x48, 0x91, 0x1b, 0xab, 0x51, 0x87, 0x77, 0x1b, 0x11, + 0x6f, 0x44, 0x7c, 0xc2, 0xe5, 0x73, 0xa2, 0x8d, 0x48, 0x2a, 0x3c, 0xed, 0x25, 0x3c, 0xd5, 0x45, + 0x2c, 0xb5, 0xd4, 0xb1, 0x97, 0x27, 0xbd, 0xae, 0x5f, 0xf9, 0x85, 0x9f, 0x1a, 0xdb, 0x8d, 0x5b, + 0xb3, 0x7b, 0xd1, 0x06, 0x95, 0x2e, 0xdd, 0x25, 0xb8, 0xbd, 0xe0, 0x46, 0xb1, 0x6f, 0x60, 0xa2, + 0xb9, 0x39, 0xa7, 0xf9, 0x03, 0xda, 0x9a, 0x85, 0x2a, 0x70, 0x50, 0x56, 0xb3, 0x91, 0x5b, 0xe3, + 0xff, 0x69, 0xfb, 0xd0, 0x7f, 0x77, 0xf8, 0x98, 0xae, 0x15, 0x80, 0x22, 0x13, 0x28, 0xd6, 0xc9, + 0x26, 0xb9, 0x77, 0x6d, 0xfb, 0x36, 0x9f, 0xfd, 0x09, 0x0d, 0xf1, 0x00, 0x50, 0xbc, 0xe8, 0x1b, + 0x38, 0x9a, 0xd2, 0xc3, 0x7d, 0x7a, 0xc3, 0xf5, 0x1d, 0x42, 0xd1, 0x99, 0x3a, 0xfc, 0xe7, 0x1d, + 0xee, 0xcc, 0x39, 0x1c, 0x7b, 0xd6, 0x9c, 0xcf, 0xf5, 0x46, 0x7b, 0x30, 0x71, 0xdb, 0xa5, 0x2d, + 0x67, 0x20, 0x5d, 0x5f, 0xf1, 0x16, 0x0f, 0xf8, 0x62, 0x27, 0xc1, 0x8f, 0x0d, 0xa4, 0xde, 0xcf, + 0xab, 0x9f, 0x7c, 0x68, 0x7d, 0xfb, 0xb2, 0xfe, 0xbe, 0x45, 0xbb, 0x74, 0x65, 0x0f, 0x30, 0xec, + 0x74, 0x1f, 0x9e, 0xa5, 0x91, 0x53, 0x08, 0x51, 0x21, 0x4a, 0x21, 0xa1, 0x80, 0x12, 0xa3, 0x44, + 0x38, 0x95, 0x46, 0x85, 0x2e, 0x15, 0x6a, 0x7b, 0x7f, 0xf3, 0xaf, 0x1c, 0x87, 0xa2, 0xcc, 0x84, + 0xcd, 0x7e, 0xd3, 0x2a, 0x70, 0x91, 0xd2, 0x91, 0x2a, 0x11, 0x6c, 0x29, 0xf2, 0xc8, 0x82, 0xc8, + 0x28, 0xd0, 0xd5, 0x23, 0x30, 0xb9, 0x48, 0x21, 0x3c, 0xf9, 0x47, 0x56, 0xcf, 0xc1, 0x95, 0x41, + 0x0d, 0x67, 0x3e, 0xe5, 0xad, 0x55, 0x08, 0x34, 0xa3, 0xed, 0xe7, 0x16, 0x04, 0x2e, 0x3d, 0x65, + 0x17, 0x72, 0x58, 0x72, 0x8a, 0xa4, 0xad, 0x7d, 0xe5, 0x96, 0x7f, 0x36, 0x5b, 0x2f, 0xe9, 0xda, + 0xa4, 0x1d, 0xe1, 0x21, 0x5d, 0x95, 0x69, 0xc7, 0x17, 0xac, 0xe9, 0xe8, 0xa3, 0x45, 0x0b, 0xb6, + 0x97, 0xeb, 0x44, 0xe4, 0xd3, 0x9a, 0xb5, 0x65, 0xfa, 0x6b, 0x7e, 0xf6, 0x89, 0x9c, 0x3f, 0x0d, + 0x06, 0x23, 0x16, 0x0c, 0x47, 0x2c, 0xb8, 0x18, 0x31, 0xf2, 0xae, 0x66, 0xe4, 0x73, 0xcd, 0xc8, + 0xd7, 0x9a, 0x91, 0x41, 0xcd, 0xc8, 0xb0, 0x66, 0xe4, 0x7b, 0xcd, 0xc8, 0x8f, 0x9a, 0x05, 0x17, + 0x35, 0x23, 0x1f, 0xc7, 0x2c, 0x38, 0x1f, 0x33, 0x32, 0x18, 0xb3, 0x60, 0x38, 0x66, 0xc1, 0xc9, + 0x2b, 0xa9, 0xcd, 0x1b, 0xc9, 0x2b, 0x9d, 0x23, 0x58, 0x2b, 0x78, 0xcf, 0xc5, 0x7e, 0xe8, 0x6a, + 0x5b, 0x44, 0xc6, 0xea, 0x4a, 0x65, 0x60, 0xa3, 0x09, 0x1c, 0x9b, 0x44, 0xea, 0x18, 0xce, 0xf0, + 0xf2, 0x5e, 0x5f, 0xf1, 0x5a, 0x24, 0x6d, 0x7f, 0xd3, 0x77, 0x7e, 0x06, 0x00, 0x00, 0xff, 0xff, + 0x95, 0x38, 0xc7, 0xf6, 0x07, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_transit_gateway/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_transit_gateway/crudapi/api.vesapi.go index e782bdccb..5aa3841c9 100644 --- a/pbgo/extschema/schema/topology/topology_transit_gateway/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_transit_gateway/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/topology/topology_transit_gateway/object.pb.go b/pbgo/extschema/schema/topology/topology_transit_gateway/object.pb.go index 045e5a945..177d78053 100644 --- a/pbgo/extschema/schema/topology/topology_transit_gateway/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_transit_gateway/object.pb.go @@ -161,39 +161,40 @@ func init() { } var fileDescriptor_caf9789a1f0918fa = []byte{ - // 511 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0xda, 0x92, 0x96, 0x11, 0x14, 0xf6, 0x54, 0x2b, 0x0e, 0x25, 0x5e, 0x3c, 0xb8, - 0xb3, 0xa0, 0x28, 0x56, 0xc5, 0xfa, 0x0b, 0x7a, 0x69, 0x10, 0x5a, 0x0f, 0xe2, 0x25, 0xcc, 0x6e, - 0x5e, 0xa6, 0xa3, 0xbb, 0x3b, 0xc3, 0xcc, 0xcb, 0xb6, 0xb9, 0xf9, 0x27, 0xf8, 0x57, 0x88, 0x67, - 0xff, 0x82, 0x7a, 0x13, 0x2f, 0x06, 0x4f, 0x39, 0x9a, 0xcd, 0xc5, 0x63, 0xff, 0x04, 0x71, 0xb6, - 0x09, 0x26, 0xa8, 0x18, 0x72, 0x7b, 0xc3, 0x7b, 0xdf, 0xcf, 0x3c, 0xbe, 0x5f, 0x1e, 0x7d, 0x50, - 0x82, 0xe3, 0x4a, 0xc7, 0x2e, 0x3d, 0x82, 0x5c, 0xc4, 0xa8, 0x8d, 0xce, 0xb4, 0xec, 0x4f, 0x8b, - 0x36, 0x5a, 0x51, 0x38, 0x85, 0x6d, 0x29, 0x10, 0x8e, 0x45, 0x3f, 0xd6, 0xc9, 0x6b, 0x48, 0x91, - 0x1b, 0xab, 0x51, 0x87, 0x71, 0xad, 0xe6, 0xb5, 0x9a, 0x4f, 0x44, 0xfc, 0x6f, 0xea, 0xad, 0x48, - 0x2a, 0x3c, 0xea, 0x25, 0x3c, 0xd5, 0x79, 0x2c, 0xb5, 0xd4, 0xb1, 0xe7, 0x24, 0xbd, 0xae, 0x7f, - 0xf9, 0x87, 0xaf, 0x6a, 0xfe, 0xd6, 0x95, 0xd9, 0xed, 0xb4, 0x41, 0xa5, 0x0b, 0x77, 0xde, 0xbc, - 0xbf, 0xe8, 0xea, 0xd8, 0x37, 0x30, 0x11, 0x5f, 0x9e, 0x13, 0xff, 0xd6, 0x6a, 0xce, 0xb6, 0x4a, - 0x70, 0x50, 0x94, 0xb3, 0x7f, 0x37, 0x3f, 0xae, 0xd1, 0xc6, 0x73, 0xef, 0x44, 0xb8, 0x43, 0x37, - 0x72, 0x40, 0xd1, 0x11, 0x28, 0x36, 0xc9, 0x36, 0xb9, 0x7e, 0xe1, 0xe6, 0x55, 0x3e, 0x6b, 0x4b, - 0x3d, 0xd8, 0x02, 0x14, 0x2f, 0xfa, 0x06, 0x0e, 0xa6, 0xe3, 0xe1, 0x3e, 0xbd, 0xe4, 0xfa, 0x0e, - 0x21, 0x6f, 0x4f, 0x09, 0x2b, 0x9e, 0x70, 0x6d, 0x8e, 0x70, 0xe8, 0xa7, 0xe6, 0x38, 0x17, 0x6b, - 0x6d, 0x6b, 0x42, 0x6b, 0xd1, 0x35, 0x67, 0x20, 0xdd, 0x5c, 0xf5, 0x88, 0x1d, 0xbe, 0x60, 0x36, - 0xfc, 0xd0, 0x40, 0xea, 0xc1, 0x1e, 0x73, 0xef, 0xeb, 0xca, 0xb7, 0x4f, 0x9b, 0x5f, 0x56, 0xe8, - 0x2e, 0x5d, 0xdd, 0x03, 0x0c, 0xef, 0x76, 0x6f, 0x9f, 0xa4, 0x91, 0x53, 0x08, 0x51, 0x2e, 0x0a, - 0x21, 0x21, 0x87, 0x02, 0xa3, 0x44, 0x38, 0x95, 0x46, 0xb9, 0x2e, 0x14, 0x6a, 0x7b, 0x63, 0xbb, - 0x04, 0x17, 0x29, 0x1d, 0xa9, 0x02, 0xc1, 0x16, 0x22, 0x8b, 0x2c, 0x88, 0x0e, 0x7d, 0x4c, 0xd7, - 0x0f, 0xc0, 0x64, 0x22, 0x85, 0xf0, 0xce, 0x3f, 0x20, 0x3d, 0x07, 0x7f, 0x20, 0x1c, 0x5b, 0x85, - 0x40, 0x1f, 0xd1, 0xc6, 0x53, 0x0b, 0x02, 0x97, 0x22, 0x3c, 0x83, 0x0c, 0x96, 0x22, 0xac, 0xed, - 0x2b, 0xb7, 0x84, 0x11, 0xcd, 0x0e, 0xdd, 0x98, 0x78, 0x1c, 0xbe, 0xa4, 0xeb, 0x32, 0x6d, 0xfb, - 0xbc, 0xea, 0xc8, 0x77, 0x17, 0xce, 0x6b, 0x2f, 0xd3, 0x89, 0xc8, 0xa6, 0xa9, 0x35, 0x64, 0xfa, - 0xab, 0x7e, 0xf2, 0x9e, 0x9c, 0x3e, 0x0c, 0x06, 0x23, 0x16, 0x0c, 0x47, 0x2c, 0x38, 0x1b, 0x31, - 0xf2, 0xb6, 0x62, 0xe4, 0x43, 0xc5, 0xc8, 0xe7, 0x8a, 0x91, 0x41, 0xc5, 0xc8, 0xb0, 0x62, 0xe4, - 0x7b, 0xc5, 0xc8, 0x8f, 0x8a, 0x05, 0x67, 0x15, 0x23, 0xef, 0xc6, 0x2c, 0x38, 0x1d, 0x33, 0x32, - 0x18, 0xb3, 0x60, 0x38, 0x66, 0xc1, 0x2b, 0x90, 0xda, 0xbc, 0x91, 0xbc, 0xd4, 0x19, 0x82, 0xb5, - 0x82, 0xf7, 0x5c, 0xec, 0x8b, 0xae, 0xb6, 0x79, 0x64, 0xac, 0x2e, 0x55, 0x07, 0x6c, 0x34, 0x69, - 0xc7, 0x26, 0x91, 0x3a, 0x86, 0x13, 0x3c, 0xbf, 0x97, 0xff, 0x3d, 0xc7, 0xa4, 0xe1, 0x4f, 0xe9, - 0xd6, 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x25, 0x04, 0x15, 0x56, 0x83, 0x04, 0x00, 0x00, + // 527 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x3f, 0x6f, 0x13, 0x31, + 0x18, 0xc6, 0xcf, 0x34, 0xa4, 0x95, 0x91, 0x40, 0xba, 0xa9, 0x14, 0x61, 0x55, 0x65, 0x61, 0xe0, + 0x7c, 0x12, 0x88, 0xa1, 0x80, 0x40, 0x02, 0xa4, 0x2e, 0xad, 0x90, 0x5a, 0x06, 0xd4, 0x25, 0xf2, + 0xdd, 0xbd, 0x71, 0x0d, 0x77, 0x67, 0xcb, 0x7e, 0x73, 0x6d, 0x36, 0x06, 0x16, 0x36, 0x3e, 0x05, + 0xe2, 0x63, 0x94, 0x8d, 0x31, 0x62, 0xca, 0x48, 0x2e, 0x0b, 0x03, 0x43, 0x3f, 0x02, 0xc2, 0xd7, + 0x04, 0x12, 0xf1, 0x2f, 0x43, 0xb6, 0xd7, 0x7a, 0x9f, 0xe7, 0xf7, 0x58, 0xf6, 0x6b, 0xd3, 0x07, + 0x15, 0x38, 0xae, 0x74, 0xec, 0xd2, 0x23, 0x28, 0x44, 0x8c, 0xda, 0xe8, 0x5c, 0xcb, 0xfe, 0xb4, + 0xe8, 0xa0, 0x15, 0xa5, 0x53, 0xd8, 0x91, 0x02, 0xe1, 0x58, 0xf4, 0x63, 0x9d, 0xbc, 0x84, 0x14, + 0xb9, 0xb1, 0x1a, 0x75, 0x18, 0x37, 0x6e, 0xde, 0xb8, 0xf9, 0xc4, 0xc4, 0xff, 0xe4, 0xde, 0x88, + 0xa4, 0xc2, 0xa3, 0x5e, 0xc2, 0x53, 0x5d, 0xc4, 0x52, 0x4b, 0x1d, 0x7b, 0x4e, 0xd2, 0xeb, 0xfa, + 0x95, 0x5f, 0xf8, 0xaa, 0xe1, 0x6f, 0x5c, 0x9b, 0xdd, 0x9d, 0x36, 0xa8, 0x74, 0xe9, 0xce, 0x9b, + 0xf7, 0x17, 0xdd, 0x3a, 0xf6, 0x0d, 0x4c, 0xcc, 0x57, 0xe7, 0xcc, 0xbf, 0xb4, 0xb6, 0x66, 0x5b, + 0x15, 0x38, 0x28, 0xab, 0xd9, 0xec, 0xad, 0x6f, 0x17, 0x69, 0xfb, 0x99, 0x3f, 0x89, 0x70, 0x9b, + 0xae, 0x15, 0x80, 0x22, 0x13, 0x28, 0xd6, 0xc9, 0x26, 0xb9, 0x79, 0xe9, 0xf6, 0x75, 0x3e, 0x7b, + 0x2c, 0x8d, 0x70, 0x0f, 0x50, 0x3c, 0xef, 0x1b, 0xd8, 0x9f, 0xca, 0xc3, 0x5d, 0x7a, 0xc5, 0xf5, + 0x1d, 0x42, 0xd1, 0x99, 0x12, 0x2e, 0x78, 0xc2, 0x8d, 0x39, 0xc2, 0x81, 0x57, 0xcd, 0x71, 0x2e, + 0x37, 0xde, 0xbd, 0x09, 0x6d, 0x8f, 0xb6, 0x9c, 0x81, 0x74, 0x7d, 0xc5, 0x23, 0xb6, 0xf9, 0x82, + 0x77, 0xc3, 0x0f, 0x0c, 0xa4, 0x1e, 0xec, 0x31, 0xf7, 0xde, 0xb6, 0x3e, 0x7f, 0x5c, 0x7f, 0xd3, + 0xa2, 0x5d, 0xba, 0xb2, 0x03, 0x18, 0x76, 0xba, 0x77, 0x4f, 0xd2, 0xc8, 0x29, 0x84, 0xa8, 0x10, + 0xa5, 0x90, 0x50, 0x40, 0x89, 0x51, 0x22, 0x9c, 0x4a, 0xa3, 0x42, 0x97, 0x0a, 0xb5, 0xbd, 0xb5, + 0xf9, 0x5b, 0x8d, 0x43, 0x51, 0x66, 0xc2, 0x66, 0x3f, 0x65, 0x15, 0xb8, 0x48, 0xe9, 0x48, 0x95, + 0x08, 0xb6, 0x14, 0x79, 0x64, 0x41, 0x64, 0x14, 0xe8, 0xea, 0x3e, 0x98, 0x5c, 0xa4, 0x10, 0x1e, + 0xfe, 0x25, 0xab, 0xe7, 0xe0, 0x9f, 0x41, 0x8d, 0x66, 0x3e, 0xe5, 0xd8, 0x2a, 0x04, 0x9a, 0xd1, + 0xf6, 0x13, 0x0b, 0x02, 0x97, 0x9e, 0xf2, 0x14, 0x72, 0x58, 0x72, 0x8a, 0xa4, 0xad, 0x5d, 0xe5, + 0x96, 0x7f, 0x37, 0x5b, 0x19, 0x5d, 0x9b, 0x4c, 0x47, 0xf8, 0x82, 0xae, 0xca, 0xb4, 0xe3, 0x27, + 0xad, 0x19, 0xd6, 0x47, 0x0b, 0x4f, 0xda, 0x4e, 0xae, 0x13, 0x91, 0x4f, 0xe7, 0xad, 0x2d, 0xd3, + 0x1f, 0xf5, 0xe3, 0xf7, 0xe4, 0xf4, 0x61, 0x30, 0x18, 0xb1, 0x60, 0x38, 0x62, 0xc1, 0xd9, 0x88, + 0x91, 0xd7, 0x35, 0x23, 0x1f, 0x6a, 0x46, 0x3e, 0xd5, 0x8c, 0x0c, 0x6a, 0x46, 0x86, 0x35, 0x23, + 0x5f, 0x6a, 0x46, 0xbe, 0xd6, 0x2c, 0x38, 0xab, 0x19, 0x79, 0x37, 0x66, 0xc1, 0xe9, 0x98, 0x91, + 0xc1, 0x98, 0x05, 0xc3, 0x31, 0x0b, 0x0e, 0x41, 0x6a, 0xf3, 0x4a, 0xf2, 0x4a, 0xe7, 0x08, 0xd6, + 0x0a, 0xde, 0x73, 0xb1, 0x2f, 0xba, 0xda, 0x16, 0x91, 0xb1, 0xba, 0x52, 0x19, 0xd8, 0x68, 0xd2, + 0x8e, 0x4d, 0x22, 0x75, 0x0c, 0x27, 0x78, 0xfe, 0xd2, 0xff, 0xf7, 0x23, 0x49, 0xda, 0xfe, 0x13, + 0xb8, 0xf3, 0x3d, 0x00, 0x00, 0xff, 0xff, 0x0f, 0x1b, 0x80, 0xfa, 0x3d, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/topology_tunnel/crudapi/api.vesapi.go b/pbgo/extschema/schema/topology/topology_tunnel/crudapi/api.vesapi.go index cf6494994..ce55d8d82 100644 --- a/pbgo/extschema/schema/topology/topology_tunnel/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/topology/topology_tunnel/crudapi/api.vesapi.go @@ -2966,10 +2966,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3300,6 +3304,12 @@ var APISwaggerJSON string = `{ "title": "url", "x-displayname": "URL" }, + "verNodeIp": { + "type": "string", + "description": " The VER node IP in the local site from which the connection is setup", + "title": "verNodeIP", + "x-displayname": "VER Node IP" + }, "verNodeName": { "type": "string", "description": " The VER node in the local site from which the connection is setup", diff --git a/pbgo/extschema/schema/topology/topology_tunnel/object.pb.go b/pbgo/extschema/schema/topology/topology_tunnel/object.pb.go index 9c837ec95..2367175a4 100644 --- a/pbgo/extschema/schema/topology/topology_tunnel/object.pb.go +++ b/pbgo/extschema/schema/topology/topology_tunnel/object.pb.go @@ -162,39 +162,40 @@ func init() { } var fileDescriptor_ee9848b61568528e = []byte{ - // 507 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0xcf, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x77, 0xd2, 0x90, 0x96, 0x11, 0x14, 0xf6, 0x14, 0x2b, 0x0e, 0x25, 0x82, 0x78, 0x70, - 0x67, 0xa5, 0xc5, 0xa2, 0x1e, 0xfc, 0x59, 0xe8, 0xa5, 0xa5, 0xd0, 0x7a, 0x52, 0x21, 0xcc, 0x6e, - 0x5e, 0xb6, 0xa3, 0xbb, 0xfb, 0x86, 0x99, 0xc9, 0xda, 0xdc, 0xfc, 0x13, 0xfc, 0x07, 0xbc, 0xeb, - 0x7f, 0x51, 0x6f, 0xe2, 0xc5, 0xe0, 0x29, 0x47, 0xb3, 0xb9, 0x78, 0xec, 0x9f, 0x20, 0xce, 0x36, - 0xc1, 0x04, 0xab, 0x81, 0xdc, 0xde, 0x30, 0xdf, 0xcf, 0x87, 0xc7, 0x7b, 0x3c, 0xba, 0x55, 0x80, - 0xe1, 0x12, 0x43, 0x13, 0x1f, 0x43, 0x26, 0x42, 0x8b, 0x0a, 0x53, 0x4c, 0xfa, 0xd3, 0xa2, 0x6d, - 0x7b, 0x79, 0x0e, 0x69, 0x88, 0xd1, 0x6b, 0x88, 0x2d, 0x57, 0x1a, 0x2d, 0xfa, 0x37, 0x2b, 0x88, - 0x57, 0x10, 0x9f, 0x64, 0xf9, 0x1c, 0xb4, 0x1e, 0x24, 0xd2, 0x1e, 0xf7, 0x22, 0x1e, 0x63, 0x16, - 0x26, 0x98, 0x60, 0xe8, 0xf0, 0xa8, 0xd7, 0x75, 0x2f, 0xf7, 0x70, 0x55, 0xa5, 0x5d, 0xbf, 0x36, - 0xdb, 0x0b, 0x2a, 0x2b, 0x31, 0x37, 0xe7, 0x9f, 0x9b, 0x0b, 0x36, 0x6a, 0xfb, 0x0a, 0x26, 0x4c, - 0xeb, 0x22, 0xe6, 0x8f, 0xcc, 0xd5, 0xb9, 0xcc, 0xc5, 0x78, 0x01, 0x06, 0xf2, 0x62, 0xb6, 0xad, - 0xd6, 0xa7, 0x3a, 0x6d, 0x1c, 0xb8, 0xd9, 0xf8, 0xf7, 0xe9, 0x5a, 0x06, 0x56, 0x74, 0x84, 0x15, - 0x4d, 0xb2, 0x41, 0x6e, 0x5d, 0xda, 0xbc, 0xce, 0x67, 0x07, 0x55, 0x05, 0xf7, 0xc1, 0x8a, 0xe7, - 0x7d, 0x05, 0x87, 0xd3, 0xb8, 0xbf, 0x47, 0xaf, 0x98, 0xbe, 0xb1, 0x90, 0xb5, 0xa7, 0x86, 0x9a, - 0x33, 0xdc, 0x98, 0x33, 0x1c, 0xb9, 0xd4, 0x9c, 0xe7, 0x72, 0xc5, 0xee, 0x4f, 0x6c, 0x3b, 0xb4, - 0x6e, 0x14, 0xc4, 0xcd, 0x15, 0xa7, 0xb8, 0xc3, 0x17, 0xdb, 0x16, 0x3f, 0x52, 0x10, 0x3b, 0x9f, - 0xa3, 0x1f, 0x7c, 0xab, 0x7d, 0xff, 0xdc, 0xfc, 0x5a, 0xa3, 0x8f, 0xe8, 0xca, 0x2e, 0x58, 0xff, - 0x5e, 0xf7, 0xee, 0x49, 0x1c, 0x18, 0x69, 0x21, 0xc8, 0x44, 0x2e, 0x12, 0xc8, 0x20, 0xb7, 0x41, - 0x24, 0x8c, 0x8c, 0x83, 0x0c, 0x73, 0x69, 0x51, 0xdf, 0xde, 0x28, 0xc0, 0x04, 0x12, 0x03, 0x99, - 0x5b, 0xd0, 0xb9, 0x48, 0x03, 0x0d, 0xa2, 0x43, 0x9f, 0xd0, 0xd5, 0x43, 0x50, 0xa9, 0x88, 0xc1, - 0xdf, 0xfe, 0x87, 0xa4, 0x67, 0xe0, 0x2f, 0x86, 0xb7, 0x5a, 0x5a, 0xa0, 0x8f, 0x69, 0xe3, 0x99, - 0x06, 0x61, 0x97, 0x32, 0xec, 0x40, 0x0a, 0x4b, 0x19, 0xea, 0x7b, 0xd2, 0x2c, 0x31, 0x88, 0xd6, - 0x4b, 0xba, 0x36, 0x99, 0xb1, 0x7f, 0x40, 0x57, 0x93, 0xb8, 0xed, 0xd6, 0x54, 0x6d, 0x7a, 0x7b, - 0xd1, 0x35, 0xed, 0xa6, 0x18, 0x89, 0x74, 0xba, 0xac, 0x46, 0x12, 0xff, 0xae, 0x9f, 0x7e, 0x20, - 0xa7, 0x0f, 0xbd, 0xc1, 0x88, 0x79, 0xc3, 0x11, 0xf3, 0xce, 0x46, 0x8c, 0xbc, 0x2b, 0x19, 0xf9, - 0x58, 0x32, 0xf2, 0xa5, 0x64, 0x64, 0x50, 0x32, 0x32, 0x2c, 0x19, 0xf9, 0x51, 0x32, 0xf2, 0xb3, - 0x64, 0xde, 0x59, 0xc9, 0xc8, 0xfb, 0x31, 0xf3, 0x4e, 0xc7, 0x8c, 0x0c, 0xc6, 0xcc, 0x1b, 0x8e, - 0x99, 0xf7, 0xe2, 0x55, 0x82, 0xea, 0x4d, 0xc2, 0x0b, 0x4c, 0x2d, 0x68, 0x2d, 0x78, 0xcf, 0x84, - 0xae, 0xe8, 0xa2, 0xce, 0x02, 0xa5, 0xb1, 0x90, 0x1d, 0xd0, 0xc1, 0xe4, 0x3b, 0x54, 0x51, 0x82, - 0x21, 0x9c, 0xd8, 0xf3, 0xeb, 0xf8, 0xcf, 0x5d, 0x46, 0x0d, 0x77, 0x2f, 0x5b, 0xbf, 0x02, 0x00, - 0x00, 0xff, 0xff, 0xc2, 0x35, 0x22, 0x7b, 0x71, 0x04, 0x00, 0x00, + // 524 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x31, 0x6f, 0x13, 0x31, + 0x14, 0xc7, 0xcf, 0x34, 0xa4, 0x95, 0x91, 0x40, 0xba, 0x29, 0x14, 0x61, 0x55, 0x41, 0x42, 0x0c, + 0xdc, 0x1d, 0x6a, 0x05, 0x12, 0x0c, 0x0c, 0x50, 0xa9, 0x4b, 0xab, 0x4a, 0x2d, 0x53, 0x41, 0x8a, + 0x7c, 0x77, 0x2f, 0xae, 0xe1, 0xee, 0x6c, 0xd9, 0x2f, 0x47, 0xb3, 0x31, 0xb0, 0xb0, 0xf1, 0x05, + 0xd8, 0xf9, 0x18, 0x65, 0x63, 0x8c, 0x98, 0x32, 0x92, 0xcb, 0xc2, 0xd8, 0x8f, 0x80, 0xf0, 0x35, + 0x81, 0x44, 0xb4, 0xcd, 0x92, 0xed, 0x59, 0xfe, 0xff, 0xfe, 0xef, 0xc9, 0xfe, 0xdb, 0x74, 0xab, + 0x04, 0x1b, 0x4a, 0x15, 0xd9, 0xe4, 0x18, 0x72, 0x1e, 0xa1, 0xd2, 0x2a, 0x53, 0xa2, 0x3f, 0x2d, + 0x3a, 0xd8, 0x2b, 0x0a, 0xc8, 0x22, 0x15, 0xbf, 0x85, 0x04, 0x43, 0x6d, 0x14, 0x2a, 0xff, 0x7e, + 0x0d, 0x85, 0x35, 0x14, 0x4e, 0xb4, 0xe1, 0x1c, 0xb4, 0x1e, 0x08, 0x89, 0xc7, 0xbd, 0x38, 0x4c, + 0x54, 0x1e, 0x09, 0x25, 0x54, 0xe4, 0xf0, 0xb8, 0xd7, 0x75, 0x2b, 0xb7, 0x70, 0x55, 0x6d, 0xbb, + 0x7e, 0x67, 0x76, 0x16, 0xa5, 0x51, 0xaa, 0xc2, 0x9e, 0x6f, 0x6e, 0x2e, 0x38, 0x28, 0xf6, 0x35, + 0x4c, 0x98, 0xf6, 0x45, 0xcc, 0x3f, 0x9a, 0xdb, 0x73, 0x9a, 0x8b, 0xf1, 0x12, 0x2c, 0x14, 0xe5, + 0xec, 0x58, 0xed, 0xf1, 0x75, 0xda, 0xdc, 0x77, 0x67, 0xe3, 0x3f, 0xa5, 0x6b, 0x39, 0x20, 0x4f, + 0x39, 0xf2, 0x16, 0xd9, 0x20, 0x0f, 0x6e, 0x6c, 0xde, 0x0d, 0x67, 0x0f, 0xaa, 0x16, 0xee, 0x01, + 0xf2, 0x57, 0x7d, 0x0d, 0x07, 0x53, 0xb9, 0xbf, 0x4b, 0x6f, 0xd9, 0xbe, 0x45, 0xc8, 0x3b, 0x53, + 0x87, 0x6b, 0xce, 0xe1, 0xde, 0x9c, 0xc3, 0xa1, 0x53, 0xcd, 0xf9, 0xdc, 0xac, 0xd9, 0xbd, 0x89, + 0xdb, 0x36, 0x6d, 0x58, 0x0d, 0x49, 0x6b, 0xc5, 0x59, 0x3c, 0x0a, 0x17, 0xbb, 0xad, 0xf0, 0x50, + 0x43, 0xe2, 0xfc, 0x1c, 0xfd, 0xec, 0x53, 0xe3, 0xc7, 0xb7, 0xd6, 0xc7, 0x06, 0xed, 0xd2, 0x95, + 0x1d, 0x40, 0xbf, 0xd3, 0x7d, 0x7c, 0x92, 0x04, 0x56, 0x22, 0x04, 0x39, 0x2f, 0xb8, 0x80, 0x1c, + 0x0a, 0x0c, 0x62, 0x6e, 0x65, 0x12, 0xe4, 0xaa, 0x90, 0xa8, 0xcc, 0xc3, 0x8d, 0xff, 0x6a, 0x2c, + 0xf2, 0x22, 0xe5, 0x26, 0xfd, 0x2b, 0x2b, 0xc1, 0x06, 0x52, 0x05, 0xb2, 0x40, 0x30, 0x05, 0xcf, + 0x02, 0x03, 0x3c, 0xa5, 0x40, 0x57, 0x0f, 0x40, 0x67, 0x3c, 0x01, 0xff, 0xe8, 0x92, 0x5e, 0x3d, + 0x0b, 0x57, 0x36, 0xaa, 0x35, 0xf3, 0x5d, 0xde, 0x1b, 0x89, 0x40, 0x53, 0xda, 0x7c, 0x69, 0x80, + 0xe3, 0xd2, 0xbb, 0x6c, 0x43, 0x06, 0x4b, 0xee, 0x22, 0x68, 0x63, 0x57, 0xda, 0xe5, 0xdf, 0x4d, + 0xfb, 0x35, 0x5d, 0x9b, 0xa4, 0xc3, 0xdf, 0xa7, 0xab, 0x22, 0xe9, 0xb8, 0x80, 0xd5, 0x19, 0x7d, + 0xb2, 0x68, 0xc0, 0x76, 0x32, 0x15, 0xf3, 0x6c, 0x1a, 0xb3, 0xa6, 0x48, 0xfe, 0xd4, 0x2f, 0xbe, + 0x90, 0xd3, 0xe7, 0xde, 0x60, 0xc4, 0xbc, 0xe1, 0x88, 0x79, 0x67, 0x23, 0x46, 0x3e, 0x54, 0x8c, + 0x7c, 0xad, 0x18, 0xf9, 0x5e, 0x31, 0x32, 0xa8, 0x18, 0x19, 0x56, 0x8c, 0xfc, 0xac, 0x18, 0xf9, + 0x55, 0x31, 0xef, 0xac, 0x62, 0xe4, 0xf3, 0x98, 0x79, 0xa7, 0x63, 0x46, 0x06, 0x63, 0xe6, 0x0d, + 0xc7, 0xcc, 0x3b, 0x7a, 0x23, 0x94, 0x7e, 0x27, 0xc2, 0x52, 0x65, 0x08, 0xc6, 0xf0, 0xb0, 0x67, + 0x23, 0x57, 0x74, 0x95, 0xc9, 0x03, 0x6d, 0x54, 0x29, 0x53, 0x30, 0xc1, 0x64, 0x3b, 0xd2, 0xb1, + 0x50, 0x11, 0x9c, 0xe0, 0xf9, 0xbb, 0xbe, 0xe2, 0x47, 0x89, 0x9b, 0xee, 0xa5, 0x6f, 0xfd, 0x0e, + 0x00, 0x00, 0xff, 0xff, 0x1b, 0x3a, 0x98, 0x10, 0x2b, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/topology/types.pb.go b/pbgo/extschema/schema/topology/types.pb.go index aed862a2a..18741ee51 100644 --- a/pbgo/extschema/schema/topology/types.pb.go +++ b/pbgo/extschema/schema/topology/types.pb.go @@ -329,17 +329,71 @@ const ( // x-displayName: NEXT_HOP_TYPE_NOT_APPLICABLE // NEXT_HOP_TYPE_NOT_APPLICABLE should be used when the cloud provider doesn't support this. NEXT_HOP_TYPE_NOT_APPLICABLE RouteNextHopTypeEnum = 7 + // LOAD BALANCER + // + // x-displayName: LOAD BALANCER + // LOAD BALANCER + LOADBALANCER RouteNextHopTypeEnum = 8 + // VPC NETWORK + // + // x-displayName: VPC NETWORK + // VPC NETWORK + VPC_NETWORK RouteNextHopTypeEnum = 9 + // VPC PEERING + // + // x-displayName: VPC PEERING + // VPC PEERING + VPC_PEERING RouteNextHopTypeEnum = 10 + // INTERNAL LOAD BALANCER + // + // x-displayName: INTERNAL LOAD BALANCER + // INTERNAL LOAD BALANCER + INTERNAL_LOAD_BALANCER RouteNextHopTypeEnum = 11 + // INSTANCE + // + // x-displayName: INSTANCE + // INSTANCE + INSTANCE RouteNextHopTypeEnum = 12 + // INTERCONNECT + // + // x-displayName: INTERCONNECT + // INTERCONNECT + INTERCONNECT RouteNextHopTypeEnum = 13 + // INTERNET GATEWAY + // + // x-displayName: INTERNET GATEWAY + // INTERNET GATEWAY + INTERNET_GATEWAY RouteNextHopTypeEnum = 14 + // IP + // + // x-displayName: IP + // IP + IP RouteNextHopTypeEnum = 15 + // VPN TUNNEL + // + // x-displayName: VPN TUNNEL + // VPN TUNNEL + VPN_TUNNEL RouteNextHopTypeEnum = 16 ) var RouteNextHopTypeEnum_name = map[int32]string{ - 0: "VIRTUAL_NETWORK_GATEWAY", - 1: "VNET_LOCAL", - 2: "INTERNET", - 3: "VIRTUAL_APPLIANCE", - 4: "NONE", - 5: "VNET_PEERING", - 6: "VIRTUAL_NETWORK_SERVICE_ENDPOINT", - 7: "NEXT_HOP_TYPE_NOT_APPLICABLE", + 0: "VIRTUAL_NETWORK_GATEWAY", + 1: "VNET_LOCAL", + 2: "INTERNET", + 3: "VIRTUAL_APPLIANCE", + 4: "NONE", + 5: "VNET_PEERING", + 6: "VIRTUAL_NETWORK_SERVICE_ENDPOINT", + 7: "NEXT_HOP_TYPE_NOT_APPLICABLE", + 8: "LOADBALANCER", + 9: "VPC_NETWORK", + 10: "VPC_PEERING", + 11: "INTERNAL_LOAD_BALANCER", + 12: "INSTANCE", + 13: "INTERCONNECT", + 14: "INTERNET_GATEWAY", + 15: "IP", + 16: "VPN_TUNNEL", } var RouteNextHopTypeEnum_value = map[string]int32{ @@ -351,12 +405,94 @@ var RouteNextHopTypeEnum_value = map[string]int32{ "VNET_PEERING": 5, "VIRTUAL_NETWORK_SERVICE_ENDPOINT": 6, "NEXT_HOP_TYPE_NOT_APPLICABLE": 7, + "LOADBALANCER": 8, + "VPC_NETWORK": 9, + "VPC_PEERING": 10, + "INTERNAL_LOAD_BALANCER": 11, + "INSTANCE": 12, + "INTERCONNECT": 13, + "INTERNET_GATEWAY": 14, + "IP": 15, + "VPN_TUNNEL": 16, } func (RouteNextHopTypeEnum) EnumDescriptor() ([]byte, []int) { return fileDescriptor_e89c101129b5baba, []int{6} } +// GatewayType +// +// x-displayName: Gateway type +// Gateway Type +type GatewayTypeEnum int32 + +const ( + // Ingress gateway + // + // x-displayName: Ingress gateway + // Ingress gateway (single nic) + INGRESS_GATEWAY GatewayTypeEnum = 0 + // Ingress and Egress gateway + // + // x-displayName: Ingress and Egress gateway + // Ingress and Egress gateway (dual nic) + INGRESS_EGRESS_GATEWAY GatewayTypeEnum = 1 +) + +var GatewayTypeEnum_name = map[int32]string{ + 0: "INGRESS_GATEWAY", + 1: "INGRESS_EGRESS_GATEWAY", +} + +var GatewayTypeEnum_value = map[string]int32{ + "INGRESS_GATEWAY": 0, + "INGRESS_EGRESS_GATEWAY": 1, +} + +func (GatewayTypeEnum) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_e89c101129b5baba, []int{7} +} + +// Site App Type +// +// x-displayName: Site App type +// Site App Type +type SiteAppTypeEnum int32 + +const ( + // Not applicable + // + // x-displayName: Not applicable + // Not applicable + SITE_APPTYPE_NONE SiteAppTypeEnum = 0 + // AppStack Site + // + // x-displayName: AppStack Site + // AppStack Site + SITE_APPTYPE_APPSTACK SiteAppTypeEnum = 1 + // Mesh site + // + // x-displayName: Mesh site + // Mesh site + SITE_APPTYPE_MESH SiteAppTypeEnum = 2 +) + +var SiteAppTypeEnum_name = map[int32]string{ + 0: "SITE_APPTYPE_NONE", + 1: "SITE_APPTYPE_APPSTACK", + 2: "SITE_APPTYPE_MESH", +} + +var SiteAppTypeEnum_value = map[string]int32{ + "SITE_APPTYPE_NONE": 0, + "SITE_APPTYPE_APPSTACK": 1, + "SITE_APPTYPE_MESH": 2, +} + +func (SiteAppTypeEnum) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_e89c101129b5baba, []int{8} +} + // PeeringState // // x-displayName: PeeringState @@ -401,7 +537,7 @@ var PeeringStateEnum_value = map[string]int32{ } func (PeeringStateEnum) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{7} + return fileDescriptor_e89c101129b5baba, []int{9} } // Metadata @@ -857,6 +993,11 @@ type InstanceType struct { // x-displayName: "Availability Zone" // Availability Zone AvailabilityZone string `protobuf:"bytes,11,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"` + // F5XC Node name + // + // x-displayName: "F5XC Node Name" + // F5XC node name + F5XcNodeName string `protobuf:"bytes,12,opt,name=f5xc_node_name,json=f5xcNodeName,proto3" json:"f5xc_node_name,omitempty"` } func (m *InstanceType) Reset() { *m = InstanceType{} } @@ -964,6 +1105,13 @@ func (m *InstanceType) GetAvailabilityZone() string { return "" } +func (m *InstanceType) GetF5XcNodeName() string { + if m != nil { + return m.F5XcNodeName + } + return "" +} + // TransitGateway // // x-displayName: "transit gateway" @@ -1067,7 +1215,7 @@ type RouteTableType struct { // x-displayName: "Transit Gateway" // Reference to the transit gateway if a transit gateway owns this resource. TransitGateway []*schema.ObjectRefType `protobuf:"bytes,3,rep,name=transit_gateway,json=transitGateway,proto3" json:"transit_gateway,omitempty"` - // Rotues + // Routes // // x-displayName: "Routes" // list of routes @@ -1166,6 +1314,128 @@ func (m *RouteTableType) GetExplicitSubnet() []*schema.ObjectRefType { return nil } +// GCPRouteAttributes +// +// x-displayName: "GCP Route Attributes" +// Route attributes specific to GCP. +type GCPRouteAttributes struct { + // Priority + // + // x-displayName: "Priority" + // x-example: 1 + // Route Priority + Priority uint32 `protobuf:"varint,1,opt,name=priority,proto3" json:"priority,omitempty"` + // IP version + // + // x-displayName: "IP version" + // x-example: "ipv4" + // Version of IP protocol + IpVersion string `protobuf:"bytes,2,opt,name=ip_version,json=ipVersion,proto3" json:"ip_version,omitempty"` + // Scope Limits + // + // x-displayName: "Scope Limits" + // x-example: "tag-1, tag-2" + // Limits on the scope of route like network tag + ScopeLimits []string `protobuf:"bytes,3,rep,name=scope_limits,json=scopeLimits,proto3" json:"scope_limits,omitempty"` +} + +func (m *GCPRouteAttributes) Reset() { *m = GCPRouteAttributes{} } +func (*GCPRouteAttributes) ProtoMessage() {} +func (*GCPRouteAttributes) Descriptor() ([]byte, []int) { + return fileDescriptor_e89c101129b5baba, []int{7} +} +func (m *GCPRouteAttributes) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GCPRouteAttributes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GCPRouteAttributes) XXX_Merge(src proto.Message) { + xxx_messageInfo_GCPRouteAttributes.Merge(m, src) +} +func (m *GCPRouteAttributes) XXX_Size() int { + return m.Size() +} +func (m *GCPRouteAttributes) XXX_DiscardUnknown() { + xxx_messageInfo_GCPRouteAttributes.DiscardUnknown(m) +} + +var xxx_messageInfo_GCPRouteAttributes proto.InternalMessageInfo + +func (m *GCPRouteAttributes) GetPriority() uint32 { + if m != nil { + return m.Priority + } + return 0 +} + +func (m *GCPRouteAttributes) GetIpVersion() string { + if m != nil { + return m.IpVersion + } + return "" +} + +func (m *GCPRouteAttributes) GetScopeLimits() []string { + if m != nil { + return m.ScopeLimits + } + return nil +} + +// AWSRouteAttributes +// +// x-displayName: "AWS Route Attributes" +// Route attributes specific to AWS. +type AWSRouteAttributes struct { + // Propagated + // + // x-displayName: "Propagated" + // x-example: false + //Is route propagated + Propagated bool `protobuf:"varint,1,opt,name=propagated,proto3" json:"propagated,omitempty"` +} + +func (m *AWSRouteAttributes) Reset() { *m = AWSRouteAttributes{} } +func (*AWSRouteAttributes) ProtoMessage() {} +func (*AWSRouteAttributes) Descriptor() ([]byte, []int) { + return fileDescriptor_e89c101129b5baba, []int{8} +} +func (m *AWSRouteAttributes) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AWSRouteAttributes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AWSRouteAttributes) XXX_Merge(src proto.Message) { + xxx_messageInfo_AWSRouteAttributes.Merge(m, src) +} +func (m *AWSRouteAttributes) XXX_Size() int { + return m.Size() +} +func (m *AWSRouteAttributes) XXX_DiscardUnknown() { + xxx_messageInfo_AWSRouteAttributes.DiscardUnknown(m) +} + +var xxx_messageInfo_AWSRouteAttributes proto.InternalMessageInfo + +func (m *AWSRouteAttributes) GetPropagated() bool { + if m != nil { + return m.Propagated + } + return false +} + // RouteType // // x-displayName: "Route Type" @@ -1201,12 +1471,21 @@ type RouteType struct { // x-displayName: "User Defined Route Name" // User Defined Route Name UserDefinedRouteName string `protobuf:"bytes,6,opt,name=user_defined_route_name,json=userDefinedRouteName,proto3" json:"user_defined_route_name,omitempty"` + //Cloud Route Attributes + // + // x-displayName: "Cloud Route Attributes" + // Cloud Specific Route Attributes + // + // Types that are valid to be assigned to CloudRouteAttributes: + // *RouteType_Aws + // *RouteType_Gcp + CloudRouteAttributes isRouteType_CloudRouteAttributes `protobuf_oneof:"cloud_route_attributes"` } func (m *RouteType) Reset() { *m = RouteType{} } func (*RouteType) ProtoMessage() {} func (*RouteType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{7} + return fileDescriptor_e89c101129b5baba, []int{9} } func (m *RouteType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1231,6 +1510,30 @@ func (m *RouteType) XXX_DiscardUnknown() { var xxx_messageInfo_RouteType proto.InternalMessageInfo +type isRouteType_CloudRouteAttributes interface { + isRouteType_CloudRouteAttributes() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type RouteType_Aws struct { + Aws *AWSRouteAttributes `protobuf:"bytes,8,opt,name=aws,proto3,oneof" json:"aws,omitempty"` +} +type RouteType_Gcp struct { + Gcp *GCPRouteAttributes `protobuf:"bytes,9,opt,name=gcp,proto3,oneof" json:"gcp,omitempty"` +} + +func (*RouteType_Aws) isRouteType_CloudRouteAttributes() {} +func (*RouteType_Gcp) isRouteType_CloudRouteAttributes() {} + +func (m *RouteType) GetCloudRouteAttributes() isRouteType_CloudRouteAttributes { + if m != nil { + return m.CloudRouteAttributes + } + return nil +} + func (m *RouteType) GetDestination() string { if m != nil { return m.Destination @@ -1273,6 +1576,28 @@ func (m *RouteType) GetUserDefinedRouteName() string { return "" } +func (m *RouteType) GetAws() *AWSRouteAttributes { + if x, ok := m.GetCloudRouteAttributes().(*RouteType_Aws); ok { + return x.Aws + } + return nil +} + +func (m *RouteType) GetGcp() *GCPRouteAttributes { + if x, ok := m.GetCloudRouteAttributes().(*RouteType_Gcp); ok { + return x.Gcp + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*RouteType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*RouteType_Aws)(nil), + (*RouteType_Gcp)(nil), + } +} + // Site // // x-displayName: "site" @@ -1298,12 +1623,27 @@ type SiteType struct { // x-displayName: "Site Type" // Site type indicates whether the site is CUSTOMER_EDGE or REGIONAL_EDGE SiteType site.SiteType `protobuf:"varint,4,opt,name=site_type,json=siteType,proto3,enum=ves.io.schema.site.SiteType" json:"site_type,omitempty"` + // Provider Info + // + // x-displayName: "Provider Info" + // Information related to the site provider + ProviderInfo *ProviderInfo `protobuf:"bytes,5,opt,name=provider_info,json=providerInfo,proto3" json:"provider_info,omitempty"` + // Provider Info + // + // x-displayName: "Provider Info" + // Information related to the site provider + GatewayType GatewayTypeEnum `protobuf:"varint,6,opt,name=gateway_type,json=gatewayType,proto3,enum=ves.io.schema.topology.GatewayTypeEnum" json:"gateway_type,omitempty"` + // Site App type + // + // x-displayName: "Site App type" + // Site App Type + AppType SiteAppTypeEnum `protobuf:"varint,7,opt,name=app_type,json=appType,proto3,enum=ves.io.schema.topology.SiteAppTypeEnum" json:"app_type,omitempty"` } func (m *SiteType) Reset() { *m = SiteType{} } func (*SiteType) ProtoMessage() {} func (*SiteType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{8} + return fileDescriptor_e89c101129b5baba, []int{10} } func (m *SiteType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1356,6 +1696,27 @@ func (m *SiteType) GetSiteType() site.SiteType { return site.INVALID } +func (m *SiteType) GetProviderInfo() *ProviderInfo { + if m != nil { + return m.ProviderInfo + } + return nil +} + +func (m *SiteType) GetGatewayType() GatewayTypeEnum { + if m != nil { + return m.GatewayType + } + return INGRESS_GATEWAY +} + +func (m *SiteType) GetAppType() SiteAppTypeEnum { + if m != nil { + return m.AppType + } + return SITE_APPTYPE_NONE +} + // Site Mesh Group // // x-displayName: "site Mesh Group" @@ -1403,7 +1764,7 @@ type SiteMeshGroupType struct { func (m *SiteMeshGroupType) Reset() { *m = SiteMeshGroupType{} } func (*SiteMeshGroupType) ProtoMessage() {} func (*SiteMeshGroupType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{9} + return fileDescriptor_e89c101129b5baba, []int{11} } func (m *SiteMeshGroupType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1532,7 +1893,7 @@ type DCClusterGroupType struct { func (m *DCClusterGroupType) Reset() { *m = DCClusterGroupType{} } func (*DCClusterGroupType) ProtoMessage() {} func (*DCClusterGroupType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{10} + return fileDescriptor_e89c101129b5baba, []int{12} } func (m *DCClusterGroupType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1599,12 +1960,17 @@ type NetworkInterfaceType struct { // x-displayName: "Name" // Name of this interface Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` + // F5XC status + // + // x-displayName: "f5xc status" + // F5XC side interface status + F5XcStatus *site.InterfaceStatus `protobuf:"bytes,7,opt,name=f5xc_status,json=f5xcStatus,proto3" json:"f5xc_status,omitempty"` } func (m *NetworkInterfaceType) Reset() { *m = NetworkInterfaceType{} } func (*NetworkInterfaceType) ProtoMessage() {} func (*NetworkInterfaceType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{11} + return fileDescriptor_e89c101129b5baba, []int{13} } func (m *NetworkInterfaceType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1671,6 +2037,13 @@ func (m *NetworkInterfaceType) GetName() string { return "" } +func (m *NetworkInterfaceType) GetF5XcStatus() *site.InterfaceStatus { + if m != nil { + return m.F5XcStatus + } + return nil +} + // Address Info Type // // x-displayName: "Address Info Type" @@ -1696,7 +2069,7 @@ type AddressInfoType struct { func (m *AddressInfoType) Reset() { *m = AddressInfoType{} } func (*AddressInfoType) ProtoMessage() {} func (*AddressInfoType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{12} + return fileDescriptor_e89c101129b5baba, []int{14} } func (m *AddressInfoType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1762,7 +2135,7 @@ type TunnelSetType struct { func (m *TunnelSetType) Reset() { *m = TunnelSetType{} } func (*TunnelSetType) ProtoMessage() {} func (*TunnelSetType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{13} + return fileDescriptor_e89c101129b5baba, []int{15} } func (m *TunnelSetType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1819,7 +2192,7 @@ type NetworkPeerType struct { func (m *NetworkPeerType) Reset() { *m = NetworkPeerType{} } func (*NetworkPeerType) ProtoMessage() {} func (*NetworkPeerType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{14} + return fileDescriptor_e89c101129b5baba, []int{16} } func (m *NetworkPeerType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1898,7 +2271,7 @@ type AzureVnetPeer struct { func (m *AzureVnetPeer) Reset() { *m = AzureVnetPeer{} } func (*AzureVnetPeer) ProtoMessage() {} func (*AzureVnetPeer) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{15} + return fileDescriptor_e89c101129b5baba, []int{17} } func (m *AzureVnetPeer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1962,7 +2335,7 @@ type TunnelType struct { func (m *TunnelType) Reset() { *m = TunnelType{} } func (*TunnelType) ProtoMessage() {} func (*TunnelType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{16} + return fileDescriptor_e89c101129b5baba, []int{18} } func (m *TunnelType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2036,7 +2409,7 @@ type CloudPolicyType struct { func (m *CloudPolicyType) Reset() { *m = CloudPolicyType{} } func (*CloudPolicyType) ProtoMessage() {} func (*CloudPolicyType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{17} + return fileDescriptor_e89c101129b5baba, []int{19} } func (m *CloudPolicyType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2139,7 +2512,7 @@ type AWSPolicyType struct { func (m *AWSPolicyType) Reset() { *m = AWSPolicyType{} } func (*AWSPolicyType) ProtoMessage() {} func (*AWSPolicyType) Descriptor() ([]byte, []int) { - return fileDescriptor_e89c101129b5baba, []int{18} + return fileDescriptor_e89c101129b5baba, []int{20} } func (m *AWSPolicyType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2192,242 +2565,428 @@ func (m *AWSPolicyType) GetMissingPermissionsAwsTgwSite() []string { return nil } -func init() { - proto.RegisterEnum("ves.io.schema.topology.ProviderType", ProviderType_name, ProviderType_value) - golang_proto.RegisterEnum("ves.io.schema.topology.ProviderType", ProviderType_name, ProviderType_value) - proto.RegisterEnum("ves.io.schema.topology.SiteEnumType", SiteEnumType_name, SiteEnumType_value) - golang_proto.RegisterEnum("ves.io.schema.topology.SiteEnumType", SiteEnumType_name, SiteEnumType_value) - proto.RegisterEnum("ves.io.schema.topology.RouteTableTypeEnum", RouteTableTypeEnum_name, RouteTableTypeEnum_value) - golang_proto.RegisterEnum("ves.io.schema.topology.RouteTableTypeEnum", RouteTableTypeEnum_name, RouteTableTypeEnum_value) - proto.RegisterEnum("ves.io.schema.topology.InterfaceTypeEnum", InterfaceTypeEnum_name, InterfaceTypeEnum_value) - golang_proto.RegisterEnum("ves.io.schema.topology.InterfaceTypeEnum", InterfaceTypeEnum_name, InterfaceTypeEnum_value) - proto.RegisterEnum("ves.io.schema.topology.RouteSourceTypeEnum", RouteSourceTypeEnum_name, RouteSourceTypeEnum_value) - golang_proto.RegisterEnum("ves.io.schema.topology.RouteSourceTypeEnum", RouteSourceTypeEnum_name, RouteSourceTypeEnum_value) - proto.RegisterEnum("ves.io.schema.topology.RouteStateTypeEnum", RouteStateTypeEnum_name, RouteStateTypeEnum_value) - golang_proto.RegisterEnum("ves.io.schema.topology.RouteStateTypeEnum", RouteStateTypeEnum_name, RouteStateTypeEnum_value) - proto.RegisterEnum("ves.io.schema.topology.RouteNextHopTypeEnum", RouteNextHopTypeEnum_name, RouteNextHopTypeEnum_value) - golang_proto.RegisterEnum("ves.io.schema.topology.RouteNextHopTypeEnum", RouteNextHopTypeEnum_name, RouteNextHopTypeEnum_value) - proto.RegisterEnum("ves.io.schema.topology.PeeringStateEnum", PeeringStateEnum_name, PeeringStateEnum_value) - golang_proto.RegisterEnum("ves.io.schema.topology.PeeringStateEnum", PeeringStateEnum_name, PeeringStateEnum_value) - proto.RegisterType((*MetaType)(nil), "ves.io.schema.topology.MetaType") - golang_proto.RegisterType((*MetaType)(nil), "ves.io.schema.topology.MetaType") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetaType.TagsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetaType.TagsEntry") - proto.RegisterType((*NetworkType)(nil), "ves.io.schema.topology.NetworkType") - golang_proto.RegisterType((*NetworkType)(nil), "ves.io.schema.topology.NetworkType") - proto.RegisterType((*LoadBalancer)(nil), "ves.io.schema.topology.LoadBalancer") - golang_proto.RegisterType((*LoadBalancer)(nil), "ves.io.schema.topology.LoadBalancer") - proto.RegisterType((*SubnetType)(nil), "ves.io.schema.topology.SubnetType") - golang_proto.RegisterType((*SubnetType)(nil), "ves.io.schema.topology.SubnetType") - proto.RegisterType((*InstanceType)(nil), "ves.io.schema.topology.InstanceType") - golang_proto.RegisterType((*InstanceType)(nil), "ves.io.schema.topology.InstanceType") - proto.RegisterType((*TransitGatewayType)(nil), "ves.io.schema.topology.TransitGatewayType") - golang_proto.RegisterType((*TransitGatewayType)(nil), "ves.io.schema.topology.TransitGatewayType") - proto.RegisterType((*RouteTableType)(nil), "ves.io.schema.topology.RouteTableType") - golang_proto.RegisterType((*RouteTableType)(nil), "ves.io.schema.topology.RouteTableType") - proto.RegisterType((*RouteType)(nil), "ves.io.schema.topology.RouteType") - golang_proto.RegisterType((*RouteType)(nil), "ves.io.schema.topology.RouteType") - proto.RegisterType((*SiteType)(nil), "ves.io.schema.topology.SiteType") - golang_proto.RegisterType((*SiteType)(nil), "ves.io.schema.topology.SiteType") - proto.RegisterType((*SiteMeshGroupType)(nil), "ves.io.schema.topology.SiteMeshGroupType") - golang_proto.RegisterType((*SiteMeshGroupType)(nil), "ves.io.schema.topology.SiteMeshGroupType") - proto.RegisterType((*DCClusterGroupType)(nil), "ves.io.schema.topology.DCClusterGroupType") - golang_proto.RegisterType((*DCClusterGroupType)(nil), "ves.io.schema.topology.DCClusterGroupType") - proto.RegisterType((*NetworkInterfaceType)(nil), "ves.io.schema.topology.NetworkInterfaceType") - golang_proto.RegisterType((*NetworkInterfaceType)(nil), "ves.io.schema.topology.NetworkInterfaceType") - proto.RegisterType((*AddressInfoType)(nil), "ves.io.schema.topology.AddressInfoType") - golang_proto.RegisterType((*AddressInfoType)(nil), "ves.io.schema.topology.AddressInfoType") - proto.RegisterType((*TunnelSetType)(nil), "ves.io.schema.topology.TunnelSetType") - golang_proto.RegisterType((*TunnelSetType)(nil), "ves.io.schema.topology.TunnelSetType") - proto.RegisterType((*NetworkPeerType)(nil), "ves.io.schema.topology.NetworkPeerType") - golang_proto.RegisterType((*NetworkPeerType)(nil), "ves.io.schema.topology.NetworkPeerType") - proto.RegisterType((*AzureVnetPeer)(nil), "ves.io.schema.topology.AzureVnetPeer") - golang_proto.RegisterType((*AzureVnetPeer)(nil), "ves.io.schema.topology.AzureVnetPeer") - proto.RegisterType((*TunnelType)(nil), "ves.io.schema.topology.TunnelType") - golang_proto.RegisterType((*TunnelType)(nil), "ves.io.schema.topology.TunnelType") - proto.RegisterType((*CloudPolicyType)(nil), "ves.io.schema.topology.CloudPolicyType") - golang_proto.RegisterType((*CloudPolicyType)(nil), "ves.io.schema.topology.CloudPolicyType") - proto.RegisterType((*AWSPolicyType)(nil), "ves.io.schema.topology.AWSPolicyType") - golang_proto.RegisterType((*AWSPolicyType)(nil), "ves.io.schema.topology.AWSPolicyType") +// AzureResourceGroupInfo +// +// x-displayName: "Azure Resource Group Info" +// Azure Site and Virtual Network resource group info +type AzureResourceGroupInfo struct { + // Site Resource Group + // + // x-displayName: "Site Resource Group" + // Resource group for Site + SiteRg string `protobuf:"bytes,1,opt,name=site_rg,json=siteRg,proto3" json:"site_rg,omitempty"` + // Virtual Network Resource Group + // + // x-displayName: "Virtual Network Resource Group" + // Resource group for Virtual Network + VirtualNetworkRg string `protobuf:"bytes,2,opt,name=virtual_network_rg,json=virtualNetworkRg,proto3" json:"virtual_network_rg,omitempty"` } -func init() { - proto.RegisterFile("ves.io/schema/topology/types.proto", fileDescriptor_e89c101129b5baba) -} -func init() { - golang_proto.RegisterFile("ves.io/schema/topology/types.proto", fileDescriptor_e89c101129b5baba) +func (m *AzureResourceGroupInfo) Reset() { *m = AzureResourceGroupInfo{} } +func (*AzureResourceGroupInfo) ProtoMessage() {} +func (*AzureResourceGroupInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_e89c101129b5baba, []int{21} } - -var fileDescriptor_e89c101129b5baba = []byte{ - // 2608 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcd, 0x6f, 0xe3, 0xc6, - 0x15, 0x17, 0x29, 0xc9, 0x96, 0x9f, 0x3e, 0x4c, 0xcf, 0x7a, 0x77, 0xb5, 0x1f, 0x51, 0x5d, 0x35, - 0x69, 0x36, 0x4e, 0x22, 0xa7, 0x4e, 0x9a, 0x36, 0x45, 0x51, 0x54, 0x96, 0xb9, 0x6b, 0x79, 0x1d, - 0x4a, 0xa0, 0x68, 0xbb, 0x49, 0x81, 0x32, 0x14, 0x35, 0x96, 0x98, 0xa5, 0x48, 0x82, 0x1c, 0xca, - 0xeb, 0x00, 0x06, 0xd2, 0x6b, 0xd1, 0x02, 0x69, 0xef, 0xbd, 0x17, 0xbe, 0x15, 0x28, 0x7a, 0x68, - 0x72, 0xd8, 0x4b, 0x80, 0x16, 0xe8, 0x61, 0x7b, 0xea, 0xb6, 0xa7, 0xac, 0xf7, 0xd2, 0xdc, 0xd2, - 0xff, 0xa0, 0x98, 0x21, 0x29, 0x91, 0xb2, 0xbd, 0xf6, 0x76, 0xf7, 0x36, 0xf3, 0x3e, 0x7e, 0xf3, - 0xe6, 0xbd, 0x37, 0x6f, 0xde, 0x90, 0x50, 0x1d, 0x61, 0xaf, 0x66, 0xd8, 0x2b, 0x9e, 0x3e, 0xc0, - 0x43, 0x6d, 0x85, 0xd8, 0x8e, 0x6d, 0xda, 0xfd, 0x83, 0x15, 0x72, 0xe0, 0x60, 0xaf, 0xe6, 0xb8, - 0x36, 0xb1, 0xd1, 0x95, 0x40, 0xa6, 0x16, 0xc8, 0xd4, 0x22, 0x99, 0xeb, 0x6f, 0xf6, 0x0d, 0x32, - 0xf0, 0xbb, 0x35, 0xdd, 0x1e, 0xae, 0xf4, 0xed, 0xbe, 0xbd, 0xc2, 0xc4, 0xbb, 0xfe, 0x1e, 0x9b, - 0xb1, 0x09, 0x1b, 0x05, 0x30, 0xd7, 0xaf, 0xf5, 0x6d, 0xbb, 0x6f, 0xe2, 0x89, 0x94, 0x66, 0x1d, - 0x84, 0xac, 0xe5, 0xa4, 0x15, 0x3d, 0x5d, 0xd5, 0x4d, 0xdf, 0x23, 0xd8, 0x55, 0xfb, 0xae, 0xed, - 0x3b, 0x71, 0x6b, 0xae, 0x5f, 0x4d, 0xca, 0x5a, 0x98, 0x84, 0x8c, 0x1b, 0x49, 0x86, 0xed, 0x10, - 0xc3, 0xb6, 0x22, 0xad, 0x4a, 0x92, 0xe9, 0x19, 0x04, 0x27, 0x50, 0x5f, 0x3b, 0xc9, 0x57, 0x87, - 0xd8, 0x1b, 0x9c, 0x62, 0xc0, 0xb5, 0x29, 0x97, 0xc5, 0x58, 0x37, 0x93, 0xac, 0x91, 0x66, 0x1a, - 0x3d, 0x8d, 0xe0, 0x90, 0xbb, 0x34, 0xc5, 0x35, 0xf0, 0xbe, 0x9a, 0xb0, 0xb2, 0xfa, 0xfb, 0x34, - 0xe4, 0xde, 0xc7, 0x44, 0x53, 0x0e, 0x1c, 0x8c, 0x4a, 0xc0, 0x1b, 0xbd, 0x32, 0xb7, 0xc4, 0xdd, - 0x9a, 0x93, 0x79, 0xa3, 0x87, 0x10, 0x64, 0x2c, 0x6d, 0x88, 0xcb, 0x3c, 0xa3, 0xb0, 0x31, 0xda, - 0x80, 0xac, 0xee, 0xe2, 0x9e, 0x57, 0x4e, 0x2f, 0xa5, 0x6f, 0xe5, 0x57, 0x6f, 0xd6, 0x92, 0xa1, - 0x6a, 0x75, 0x3f, 0xc6, 0x3a, 0x91, 0xf1, 0x1e, 0x05, 0x5c, 0x5b, 0x3c, 0x3a, 0x5c, 0xd0, 0x4d, - 0xdb, 0xef, 0xa9, 0x54, 0x07, 0x5b, 0xc4, 0xd0, 0x4c, 0x4f, 0x0e, 0x00, 0xd0, 0x35, 0xc8, 0xb9, - 0xda, 0xbe, 0xfa, 0xb1, 0x67, 0x5b, 0xe5, 0x2c, 0x5b, 0x61, 0xd6, 0xd5, 0xf6, 0x37, 0x3d, 0xdb, - 0x42, 0x57, 0x60, 0xc6, 0x23, 0x1a, 0xf1, 0xbd, 0xf2, 0x0c, 0x63, 0x84, 0x33, 0x74, 0x17, 0x32, - 0x44, 0xeb, 0x7b, 0xe5, 0x59, 0xb6, 0xf6, 0x72, 0xed, 0xf4, 0x34, 0xa9, 0x45, 0x1b, 0xaa, 0x29, - 0x5a, 0xdf, 0x13, 0x2d, 0xe2, 0x1e, 0xac, 0xe5, 0x8f, 0xbf, 0xfa, 0x32, 0x3d, 0xf3, 0xab, 0x2f, - 0x38, 0x3e, 0x97, 0x92, 0x19, 0x08, 0x5d, 0xdf, 0xde, 0xb7, 0xb0, 0xab, 0x1a, 0xbd, 0x72, 0x2e, - 0x58, 0x9f, 0xcd, 0x9b, 0x3d, 0xd4, 0x84, 0xa2, 0xe3, 0xda, 0x23, 0xa3, 0x87, 0x5d, 0x95, 0x7a, - 0xbb, 0x3c, 0xb7, 0xc4, 0xdd, 0x2a, 0xad, 0xbe, 0x7c, 0xd6, 0x82, 0xed, 0x50, 0x98, 0x2e, 0x2a, - 0x17, 0x9c, 0xd8, 0xec, 0xfa, 0x0f, 0x60, 0x6e, 0x6c, 0x05, 0x12, 0x20, 0x7d, 0x0f, 0x1f, 0x84, - 0x1e, 0xa6, 0x43, 0xb4, 0x08, 0xd9, 0x91, 0x66, 0xfa, 0x91, 0x8f, 0x83, 0xc9, 0x8f, 0xf8, 0x1f, - 0x72, 0x9b, 0x99, 0x5c, 0x46, 0xc8, 0x56, 0xff, 0xc8, 0x43, 0x5e, 0xc2, 0x64, 0xdf, 0x76, 0xef, - 0xb1, 0x10, 0x6d, 0xc0, 0x8c, 0x8b, 0xfb, 0x86, 0x6d, 0x95, 0xb9, 0x0b, 0xf8, 0x1f, 0x1d, 0x1d, - 0xce, 0x47, 0x46, 0xaa, 0x81, 0x9e, 0x1c, 0xea, 0xa3, 0xab, 0x30, 0xab, 0x1b, 0x3d, 0x57, 0x1d, - 0xbd, 0x53, 0xe6, 0x97, 0xd2, 0xd4, 0xc9, 0x74, 0xba, 0xf3, 0xce, 0x84, 0xf1, 0x2e, 0x8b, 0x71, - 0xc4, 0x78, 0x17, 0xfd, 0x1c, 0x8a, 0x56, 0x60, 0x8a, 0xea, 0x60, 0xec, 0x7a, 0xe5, 0xcc, 0x05, - 0x4c, 0x28, 0x1f, 0x1d, 0x5e, 0x1e, 0x9b, 0x10, 0x57, 0x97, 0x0b, 0xe1, 0xac, 0x4d, 0xb1, 0xa8, - 0xcb, 0x4d, 0x5b, 0xeb, 0xa9, 0x5d, 0xcd, 0xd4, 0x2c, 0x1d, 0xbb, 0xe5, 0x2c, 0x03, 0x3f, 0xd3, - 0xe5, 0x5b, 0xb6, 0xd6, 0x5b, 0x0b, 0x65, 0xe5, 0x82, 0x19, 0x9b, 0x55, 0x57, 0xa1, 0x10, 0xe7, - 0x8e, 0xd3, 0x98, 0x8b, 0xa5, 0x71, 0x90, 0xea, 0x7c, 0x94, 0xea, 0xd5, 0x7f, 0xf3, 0x00, 0x1d, - 0xbf, 0x6b, 0x61, 0xc2, 0xdc, 0x7c, 0x17, 0x66, 0x43, 0xeb, 0x98, 0x73, 0xce, 0xdb, 0xe4, 0xa5, - 0xa3, 0x43, 0x61, 0x7a, 0x93, 0x72, 0x84, 0x10, 0x8b, 0x59, 0xfa, 0x39, 0x63, 0xf6, 0x3a, 0x2c, - 0x68, 0x23, 0xcd, 0x30, 0xb5, 0xae, 0x61, 0x1a, 0xe4, 0x40, 0xfd, 0xc4, 0xb6, 0x70, 0x39, 0xc3, - 0x36, 0x21, 0xc4, 0x19, 0x1f, 0xda, 0x16, 0x8e, 0x07, 0x38, 0x7b, 0x56, 0x80, 0x67, 0x12, 0x01, - 0x6e, 0x43, 0xc9, 0xb0, 0x08, 0x76, 0xf7, 0x34, 0x1d, 0x07, 0x79, 0x3f, 0xcb, 0xf2, 0xfe, 0xb5, - 0xb3, 0x82, 0xd0, 0x8c, 0xa4, 0xa9, 0xe5, 0xa2, 0xe5, 0x0f, 0xe5, 0xa2, 0x11, 0x27, 0x6d, 0x66, - 0x72, 0x9c, 0xc0, 0x57, 0xff, 0x96, 0x86, 0x42, 0xd3, 0xf2, 0x08, 0x0d, 0x07, 0x73, 0xef, 0x16, - 0xc0, 0x58, 0xce, 0x0b, 0x33, 0xf9, 0x8d, 0xb3, 0x16, 0x09, 0xd3, 0x3f, 0xb1, 0x96, 0x1c, 0xd3, - 0x47, 0x55, 0x28, 0x68, 0xae, 0x3e, 0x30, 0x08, 0xd6, 0x89, 0xef, 0x46, 0x47, 0x29, 0x41, 0xa3, - 0x27, 0x4f, 0x77, 0xfc, 0x72, 0x7a, 0x89, 0xbb, 0x55, 0x94, 0xe9, 0x10, 0x7d, 0x07, 0x8a, 0x46, - 0x68, 0x53, 0xb0, 0xd7, 0xc0, 0x8f, 0x05, 0x23, 0x6e, 0xe8, 0x75, 0xc8, 0x39, 0xa6, 0x46, 0xf6, - 0x6c, 0x77, 0x18, 0xd6, 0xa8, 0xf1, 0x1c, 0xbd, 0x0a, 0xf3, 0x8e, 0x6b, 0x8c, 0x34, 0x82, 0x55, - 0xad, 0xd7, 0x73, 0xb1, 0x17, 0x55, 0xab, 0x52, 0x48, 0xae, 0x07, 0x54, 0xf4, 0x0a, 0x94, 0x1c, - 0xbf, 0x6b, 0x1a, 0xfa, 0x58, 0x6e, 0x96, 0xc9, 0x15, 0x03, 0x6a, 0x24, 0x76, 0x0b, 0x84, 0x08, - 0xaf, 0x67, 0x79, 0x2a, 0x4b, 0xd9, 0x5c, 0x02, 0x70, 0xdd, 0xf2, 0x24, 0x9a, 0xbc, 0xdf, 0x85, - 0xf9, 0x10, 0x70, 0x2c, 0x38, 0x17, 0x47, 0x8c, 0xe4, 0x5e, 0x81, 0x92, 0x87, 0x75, 0xdf, 0xa5, - 0xa9, 0xc2, 0x6e, 0x95, 0x32, 0xb0, 0x78, 0x17, 0x23, 0xea, 0x1d, 0x4a, 0x3c, 0x3d, 0xab, 0xf2, - 0xa7, 0x67, 0x55, 0xf5, 0xbf, 0x1c, 0x20, 0xc5, 0xd5, 0x2c, 0xcf, 0x20, 0x77, 0x34, 0x82, 0xf7, - 0xb5, 0x83, 0xe9, 0x03, 0xc3, 0x3d, 0xf7, 0x81, 0x69, 0x40, 0x45, 0xf3, 0x89, 0xad, 0x6a, 0xba, - 0x8e, 0x1d, 0xa2, 0x7a, 0x03, 0xcd, 0xc5, 0x3d, 0x55, 0x23, 0x44, 0xd3, 0x07, 0x43, 0x6c, 0x11, - 0x8f, 0x85, 0x38, 0x27, 0xdf, 0xa0, 0x52, 0x75, 0x26, 0xd4, 0x61, 0x32, 0xf5, 0x89, 0x08, 0xfa, - 0x16, 0xe4, 0xa9, 0x77, 0x3c, 0xdf, 0x71, 0x6c, 0x97, 0xb0, 0xc8, 0xe7, 0x64, 0xe8, 0x59, 0x5e, - 0x27, 0xa0, 0x50, 0x7f, 0x8f, 0x1c, 0x4b, 0xc5, 0xfa, 0xd0, 0x19, 0x4b, 0x65, 0x98, 0x54, 0x69, - 0xe4, 0x58, 0xa2, 0x3e, 0x74, 0x42, 0xc9, 0xea, 0xa3, 0x0c, 0x94, 0x64, 0xdb, 0x27, 0x58, 0xd1, - 0xba, 0x26, 0x8e, 0xea, 0xb0, 0xc7, 0xca, 0xc5, 0xb3, 0xd7, 0xe1, 0x40, 0x4f, 0x0e, 0xf5, 0x5f, - 0x6c, 0xa9, 0xe9, 0xc2, 0x3c, 0x09, 0x82, 0xa3, 0xf6, 0x83, 0xe8, 0x5c, 0xa8, 0xe6, 0xdc, 0x38, - 0x3a, 0x2c, 0x8f, 0x41, 0xa7, 0x00, 0xe4, 0x12, 0x49, 0x84, 0x1b, 0xbd, 0x07, 0x33, 0x2e, 0x75, - 0x46, 0x54, 0xff, 0xbf, 0x7d, 0xd6, 0xc1, 0x0d, 0x5c, 0x46, 0x4f, 0x6b, 0xa8, 0x80, 0x14, 0x10, - 0xd8, 0x48, 0x25, 0xd4, 0x91, 0xc1, 0xb1, 0xcb, 0xb2, 0x12, 0xb3, 0xfc, 0x74, 0x90, 0xc8, 0xef, - 0xac, 0xc6, 0x94, 0xdc, 0x64, 0x2c, 0x3e, 0x80, 0x79, 0x63, 0xe8, 0x98, 0x86, 0x6e, 0x90, 0xd0, - 0xb9, 0x61, 0x83, 0xf0, 0xec, 0x41, 0x29, 0x45, 0x40, 0xc1, 0x5d, 0x40, 0xa1, 0xf1, 0xfd, 0x24, - 0x74, 0xee, 0xff, 0x85, 0x8e, 0x80, 0x02, 0xe8, 0xcd, 0x4c, 0x6e, 0x46, 0x98, 0xad, 0xfe, 0x93, - 0x87, 0xb9, 0xb1, 0x9f, 0xd0, 0x12, 0xe4, 0x7b, 0xd8, 0x23, 0x86, 0xa5, 0x91, 0xe0, 0x8a, 0xa7, - 0x67, 0x30, 0x4e, 0x42, 0x65, 0x9a, 0x2d, 0xf7, 0xc9, 0xc0, 0x76, 0xc2, 0x32, 0x17, 0x4d, 0x51, - 0x03, 0x66, 0x3c, 0xdb, 0x77, 0x75, 0xcc, 0x52, 0xbd, 0xb4, 0xfa, 0xfa, 0x53, 0x3d, 0xda, 0x61, - 0xa2, 0x63, 0x97, 0x86, 0xaa, 0xe8, 0xa7, 0x90, 0xa5, 0xad, 0x56, 0x50, 0x0c, 0xcf, 0x8b, 0x4a, - 0x87, 0x4a, 0x8e, 0x21, 0x02, 0x45, 0xd4, 0xa6, 0x4d, 0xc2, 0x7d, 0xa2, 0x0e, 0x6c, 0x27, 0x1e, - 0xdf, 0x37, 0x9e, 0x8a, 0x24, 0xe1, 0xfb, 0x64, 0xc3, 0x76, 0xc6, 0x58, 0x79, 0x6b, 0x42, 0x40, - 0xdf, 0x87, 0xab, 0xbe, 0x87, 0x5d, 0xb5, 0x87, 0xf7, 0x0c, 0x0b, 0xf7, 0xd4, 0x20, 0x83, 0x58, - 0xd5, 0x0b, 0xea, 0xed, 0x22, 0x65, 0xaf, 0x07, 0xdc, 0x00, 0x4e, 0x1b, 0xe2, 0xea, 0x97, 0x3c, - 0xe4, 0x3a, 0x46, 0xe8, 0xd8, 0x17, 0x5a, 0x9e, 0xee, 0x42, 0x9a, 0xf4, 0xf7, 0x2f, 0x74, 0x5a, - 0x9f, 0x7a, 0xb0, 0x28, 0x0a, 0xea, 0x81, 0x30, 0xfd, 0xf8, 0xb8, 0xd0, 0x91, 0xbd, 0x79, 0x74, - 0x78, 0x6d, 0x8c, 0x3c, 0x8d, 0x20, 0x97, 0x7a, 0x7a, 0x23, 0x20, 0x04, 0x25, 0xfe, 0x3d, 0x98, - 0x63, 0x0f, 0x8c, 0xf1, 0x45, 0x57, 0x3a, 0x01, 0x4f, 0xf9, 0xb5, 0xc8, 0x61, 0x72, 0xce, 0x0b, - 0x47, 0xd5, 0x3f, 0x67, 0x61, 0x81, 0x92, 0xdf, 0xc7, 0xde, 0x80, 0x81, 0x31, 0x87, 0xae, 0x43, - 0x86, 0x61, 0x71, 0x0c, 0xeb, 0xad, 0x53, 0xb0, 0x62, 0x8f, 0x99, 0xda, 0x09, 0x7d, 0x99, 0x69, - 0x3f, 0x87, 0x59, 0xe8, 0x17, 0x50, 0x18, 0x19, 0x2e, 0xf1, 0x35, 0x53, 0xa5, 0xb4, 0xf2, 0xdc, - 0x05, 0x7c, 0xf6, 0xd2, 0xd1, 0x61, 0x42, 0xe9, 0xd3, 0x2f, 0x38, 0xee, 0x2f, 0x5f, 0x3f, 0x48, - 0x67, 0x7f, 0xc7, 0xf1, 0x02, 0x27, 0xe7, 0x43, 0x1e, 0x5d, 0x8d, 0x06, 0x79, 0xe0, 0x77, 0x9f, - 0xbd, 0x7a, 0x4e, 0x6d, 0x5d, 0xa6, 0x28, 0xa8, 0x0d, 0xb9, 0x81, 0xdf, 0x65, 0x64, 0x96, 0xb3, - 0xf9, 0xd5, 0xb7, 0xcf, 0xf1, 0xd8, 0x86, 0xdf, 0xbd, 0xed, 0x9b, 0x66, 0xc2, 0x69, 0x1b, 0x29, - 0x79, 0x76, 0xe0, 0x77, 0x29, 0x0d, 0xc9, 0x00, 0x9e, 0x63, 0xdf, 0x0b, 0x74, 0x58, 0x3f, 0x91, - 0x5f, 0xfd, 0xde, 0x79, 0x51, 0xa0, 0x0a, 0xd3, 0x88, 0x73, 0x5e, 0x44, 0x45, 0x2d, 0x98, 0xdb, - 0xf3, 0x4d, 0x33, 0x80, 0xcc, 0x31, 0xc8, 0xf3, 0x02, 0x7b, 0x9a, 0x8d, 0xb9, 0xbd, 0x90, 0x88, - 0x76, 0xa1, 0x98, 0xf0, 0x0b, 0x6b, 0x3f, 0x2e, 0xf0, 0x66, 0x4c, 0x6a, 0xd1, 0x28, 0xc9, 0x85, - 0x88, 0x44, 0x83, 0xb3, 0x76, 0x15, 0xf2, 0xcc, 0x08, 0x7d, 0x60, 0x1b, 0x3a, 0x46, 0xb9, 0x07, - 0x9f, 0x73, 0xb9, 0x87, 0x9f, 0x73, 0xd9, 0xcd, 0x4c, 0x8e, 0x17, 0xd2, 0x9b, 0x99, 0x5c, 0x56, - 0x98, 0xa9, 0x7e, 0x04, 0x68, 0xbd, 0x11, 0x3f, 0x05, 0x2c, 0x6f, 0x36, 0x63, 0x89, 0x9b, 0x5f, - 0x7d, 0x77, 0xca, 0x94, 0xe9, 0x83, 0x54, 0x4b, 0x22, 0xd0, 0x5d, 0x4d, 0xd2, 0xb7, 0xfa, 0x2f, - 0x1e, 0x16, 0x4f, 0xeb, 0x4e, 0x5f, 0x60, 0x77, 0x30, 0x79, 0x09, 0xf3, 0x89, 0x97, 0xb0, 0x02, - 0x0b, 0x53, 0xcd, 0x27, 0x8e, 0x9e, 0xe4, 0xaf, 0x9e, 0x55, 0x6a, 0xc3, 0x46, 0xb3, 0x69, 0xed, - 0xd9, 0x6c, 0x13, 0x42, 0xb2, 0x4f, 0xc5, 0x1e, 0x92, 0x4e, 0x74, 0xaa, 0x99, 0x67, 0x83, 0x9c, - 0x6a, 0x69, 0x4f, 0x36, 0xa0, 0xd9, 0xd3, 0x1a, 0xd0, 0xe8, 0x81, 0x36, 0x33, 0x79, 0xa0, 0x55, - 0x3f, 0x82, 0xf9, 0x29, 0x70, 0x7a, 0xf7, 0x45, 0x66, 0x05, 0x37, 0x63, 0x34, 0xa5, 0x4f, 0xf9, - 0x71, 0x27, 0x9c, 0x0e, 0x58, 0xbd, 0xb0, 0x07, 0x2e, 0xc3, 0xac, 0xe3, 0x1a, 0x43, 0xcd, 0x3d, - 0x08, 0x9b, 0xbb, 0x68, 0x5a, 0xfd, 0x2d, 0x07, 0x45, 0xc5, 0xb7, 0x2c, 0x6c, 0x76, 0xc2, 0x57, - 0xdf, 0x1a, 0x64, 0x58, 0x9a, 0x5e, 0x24, 0x68, 0xc2, 0x74, 0x9a, 0xca, 0x4c, 0x17, 0xfd, 0x18, - 0x66, 0x09, 0x03, 0xf5, 0xc2, 0x0b, 0xa2, 0x7a, 0x96, 0xef, 0x82, 0xb5, 0x99, 0xdb, 0x22, 0x95, - 0xaa, 0x0b, 0xf3, 0xd2, 0xe4, 0x55, 0x1c, 0x56, 0xda, 0xb9, 0x91, 0x85, 0x09, 0x7b, 0x33, 0xb3, - 0x24, 0xc8, 0xaf, 0xbe, 0x72, 0x66, 0x38, 0x3e, 0xf1, 0x5d, 0xbc, 0x63, 0x61, 0x42, 0xb5, 0xe9, - 0x51, 0x1c, 0x85, 0xe3, 0xb5, 0x4b, 0x90, 0xa7, 0x00, 0xd1, 0x89, 0xc9, 0x3c, 0xfc, 0x9c, 0xe3, - 0xc2, 0xd7, 0xd9, 0x9f, 0x38, 0x28, 0x26, 0x14, 0x91, 0x02, 0x05, 0x26, 0xfc, 0xdc, 0x57, 0x26, - 0x5b, 0x33, 0xdc, 0x10, 0x7a, 0x1f, 0x8a, 0x74, 0x6a, 0x58, 0x7d, 0x35, 0xe8, 0x31, 0x78, 0x56, - 0xf0, 0x6f, 0x9d, 0xf9, 0x51, 0x25, 0x10, 0x66, 0x5d, 0x06, 0xeb, 0x0a, 0x0a, 0x4e, 0x8c, 0x52, - 0xfd, 0x9a, 0x03, 0x98, 0xb8, 0x10, 0x6d, 0x02, 0xe8, 0xb6, 0x65, 0x61, 0x7d, 0xdc, 0x39, 0x9d, - 0xfc, 0x40, 0xc4, 0xee, 0x92, 0x40, 0xa7, 0x31, 0x96, 0xed, 0xb0, 0x03, 0x25, 0xc7, 0xb4, 0xc7, - 0x79, 0xc0, 0x3f, 0x47, 0x1e, 0x84, 0x4d, 0x42, 0xfa, 0x45, 0x34, 0x09, 0xd5, 0x7f, 0x70, 0x30, - 0xdf, 0x30, 0x6d, 0xbf, 0xd7, 0xb6, 0x4d, 0x43, 0x0f, 0x5e, 0x5c, 0xef, 0x41, 0x5a, 0xdb, 0xf7, - 0xce, 0xcd, 0x88, 0xdd, 0xce, 0x44, 0x67, 0x23, 0x25, 0x53, 0x1d, 0xf4, 0x36, 0x5c, 0x76, 0xb0, - 0x3b, 0x34, 0x3c, 0xcf, 0xb0, 0x2d, 0x4f, 0x75, 0x6c, 0xc7, 0x37, 0x35, 0x82, 0x7b, 0xac, 0x57, - 0xcb, 0xc9, 0x8b, 0x31, 0x66, 0x3b, 0xe2, 0xa1, 0xb7, 0x60, 0x31, 0xf8, 0x94, 0x37, 0xfe, 0x32, - 0x86, 0x5d, 0xd7, 0x76, 0xc3, 0x43, 0x8b, 0x18, 0x2f, 0xfa, 0x0e, 0x26, 0x52, 0xce, 0xda, 0x15, - 0x80, 0x40, 0x83, 0xdd, 0xf5, 0xb4, 0x48, 0xf3, 0xb1, 0xb4, 0xfb, 0x25, 0x0f, 0xc5, 0x84, 0x75, - 0x68, 0x05, 0x16, 0xc3, 0x77, 0x98, 0xaa, 0xed, 0x7b, 0xea, 0xc8, 0xd1, 0xd5, 0xf0, 0x38, 0x52, - 0xab, 0x16, 0x42, 0x5e, 0x7d, 0xdf, 0xdb, 0x71, 0x74, 0x76, 0x47, 0xdf, 0x86, 0x25, 0x66, 0xa7, - 0xd5, 0x57, 0xe3, 0xfb, 0x49, 0x28, 0x07, 0xdf, 0xb6, 0x6e, 0x86, 0x72, 0xed, 0x89, 0x58, 0x0c, - 0x67, 0x6a, 0x61, 0xd2, 0xdf, 0x0f, 0x74, 0xd3, 0xd3, 0x0b, 0x2b, 0xfd, 0xfd, 0xf3, 0x16, 0x1e, - 0x2b, 0x67, 0x9e, 0xb2, 0x70, 0x88, 0xb3, 0xfc, 0x19, 0x07, 0x85, 0xf8, 0xb7, 0x43, 0xf4, 0x12, - 0x5c, 0x6b, 0xcb, 0xad, 0x9d, 0xe6, 0xba, 0x28, 0xab, 0xca, 0x07, 0x6d, 0x51, 0xdd, 0x96, 0x3a, - 0x6d, 0xb1, 0xd1, 0xbc, 0xdd, 0x14, 0xd7, 0x85, 0x14, 0xba, 0x0c, 0x0b, 0x49, 0x76, 0x7d, 0xb7, - 0x23, 0x70, 0x27, 0xc9, 0x77, 0x1a, 0x6d, 0x81, 0x47, 0x57, 0xe1, 0xd2, 0x94, 0xf4, 0x87, 0xdb, - 0xb2, 0x28, 0xa4, 0xd1, 0x75, 0xb8, 0x92, 0x64, 0xec, 0xb4, 0xb6, 0x14, 0x51, 0x96, 0xeb, 0x42, - 0x66, 0x59, 0x86, 0x02, 0x35, 0x8d, 0x1e, 0x38, 0x66, 0xd1, 0x35, 0xb8, 0xdc, 0x69, 0x2a, 0xe2, - 0x69, 0xd6, 0x08, 0x50, 0x98, 0xb0, 0x64, 0x31, 0x30, 0x64, 0x42, 0xa9, 0xef, 0x76, 0x54, 0xe5, - 0xce, 0xae, 0xc0, 0x2f, 0xaf, 0x01, 0x3a, 0xf9, 0x8c, 0xa3, 0xe6, 0xc9, 0xad, 0x6d, 0x2a, 0x5d, - 0x5f, 0xdb, 0x12, 0x55, 0x49, 0x54, 0x76, 0x5b, 0xf2, 0x5d, 0x21, 0x85, 0x2e, 0xc1, 0x7c, 0x9c, - 0x41, 0x31, 0xb8, 0x65, 0x09, 0x16, 0x4e, 0x7c, 0x6d, 0x42, 0x79, 0x98, 0x6d, 0x6d, 0x2b, 0x9d, - 0xe6, 0xba, 0x28, 0xa4, 0x10, 0xc0, 0x4c, 0x53, 0x62, 0x63, 0x0e, 0x15, 0x20, 0x47, 0xc1, 0xb6, - 0x5a, 0xf5, 0x75, 0x81, 0x47, 0x08, 0x4a, 0x52, 0x4b, 0x51, 0xeb, 0xed, 0xf6, 0x56, 0xb3, 0x41, - 0x31, 0x85, 0xf4, 0xf2, 0xaf, 0x39, 0xb8, 0x74, 0xca, 0x4b, 0x88, 0xca, 0x36, 0xa5, 0x9d, 0xfa, - 0x56, 0x73, 0x5d, 0xed, 0xb4, 0xb6, 0xe5, 0x06, 0x45, 0xce, 0xc3, 0xec, 0xba, 0x78, 0xbb, 0xbe, - 0xbd, 0xa5, 0x08, 0x1c, 0xca, 0x41, 0x66, 0xbb, 0x23, 0xca, 0x02, 0x4f, 0xc9, 0xdb, 0xd2, 0x5d, - 0xa9, 0xb5, 0x2b, 0x09, 0x69, 0x54, 0x85, 0xca, 0x4e, 0x53, 0x56, 0xb6, 0xeb, 0x5b, 0xd1, 0x4e, - 0xd4, 0x3b, 0x75, 0x45, 0xdc, 0xad, 0x7f, 0x10, 0xe1, 0x64, 0x98, 0x2f, 0xd9, 0x58, 0x9d, 0x32, - 0x27, 0xbb, 0xdc, 0x09, 0x5d, 0x94, 0x78, 0x53, 0x51, 0x0f, 0xd7, 0x1b, 0x4a, 0x73, 0x47, 0x54, - 0x3b, 0x4a, 0x5d, 0xa1, 0xa6, 0x2c, 0x40, 0x71, 0x6c, 0x1e, 0x23, 0x71, 0xa8, 0x0c, 0x8b, 0x6c, - 0x38, 0x0d, 0xca, 0x2f, 0xff, 0x9d, 0x83, 0xc5, 0xd3, 0xde, 0x57, 0xe8, 0x06, 0x5c, 0x3d, 0xc3, - 0x58, 0x21, 0x85, 0x4a, 0x00, 0x3b, 0x92, 0xa8, 0xa8, 0x5b, 0xad, 0x46, 0x7d, 0x2b, 0xf0, 0x65, - 0x53, 0x52, 0x44, 0x59, 0x12, 0x15, 0x81, 0xa7, 0x21, 0x8e, 0x54, 0xd9, 0x5a, 0x75, 0xa9, 0x41, - 0x53, 0x2a, 0x07, 0x19, 0xa9, 0x25, 0xd1, 0x4d, 0x0a, 0x50, 0x60, 0xea, 0x6d, 0x51, 0x94, 0x9b, - 0xd2, 0x1d, 0x21, 0x8b, 0x5e, 0x86, 0xa5, 0xe9, 0xd5, 0x3a, 0xa2, 0xbc, 0xd3, 0x6c, 0x88, 0xaa, - 0x28, 0xad, 0xb7, 0x5b, 0x4d, 0x49, 0x11, 0x66, 0xd0, 0x12, 0xdc, 0x94, 0xc4, 0x9f, 0x29, 0xea, - 0x46, 0xab, 0x1d, 0xe4, 0xcf, 0xd4, 0x76, 0x66, 0x97, 0x4d, 0x10, 0xa6, 0xef, 0x04, 0x54, 0x84, - 0xb9, 0x46, 0x4b, 0x92, 0xc4, 0x86, 0x12, 0xa5, 0xe4, 0x7a, 0xb3, 0x33, 0xa1, 0x04, 0x67, 0x23, - 0xb0, 0x44, 0x6d, 0x4a, 0x4d, 0xa5, 0x59, 0xa7, 0xe4, 0x34, 0x5d, 0x2d, 0x22, 0x9f, 0xea, 0xbc, - 0xcc, 0xda, 0x6f, 0xb8, 0x07, 0x3f, 0x49, 0x3d, 0x7c, 0x5c, 0x49, 0x3d, 0x7a, 0x5c, 0x49, 0x7d, - 0xf3, 0xb8, 0xc2, 0x7d, 0x7a, 0x5c, 0xe1, 0xfe, 0x70, 0x5c, 0xe1, 0xfe, 0x7a, 0x5c, 0xe1, 0x1e, - 0x1e, 0x57, 0xb8, 0x47, 0xc7, 0x15, 0xee, 0xab, 0xe3, 0x0a, 0xf7, 0x9f, 0xe3, 0x4a, 0xea, 0x9b, - 0xe3, 0x0a, 0xf7, 0xd9, 0x93, 0x4a, 0xea, 0xc1, 0x93, 0x0a, 0xf7, 0xf0, 0x49, 0x25, 0xf5, 0xe8, - 0x49, 0x25, 0xf5, 0xe1, 0x56, 0xdf, 0x76, 0xee, 0xf5, 0x6b, 0x23, 0xdb, 0x24, 0xd8, 0x75, 0xb5, - 0x9a, 0xef, 0xad, 0xb0, 0xc1, 0x9e, 0xed, 0x0e, 0xdf, 0x8c, 0xaa, 0xe8, 0x9b, 0x11, 0x7b, 0xc5, - 0xe9, 0xf6, 0xed, 0x15, 0x7c, 0x9f, 0x44, 0x3f, 0x84, 0x92, 0xff, 0xc7, 0xba, 0x33, 0xec, 0x87, - 0xcd, 0xdb, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x9b, 0x85, 0x48, 0xce, 0x40, 0x1b, 0x00, 0x00, +func (m *AzureResourceGroupInfo) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (x ProviderType) String() string { - s, ok := ProviderType_name[int32(x)] - if ok { +func (m *AzureResourceGroupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AzureResourceGroupInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_AzureResourceGroupInfo.Merge(m, src) +} +func (m *AzureResourceGroupInfo) XXX_Size() int { + return m.Size() +} +func (m *AzureResourceGroupInfo) XXX_DiscardUnknown() { + xxx_messageInfo_AzureResourceGroupInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_AzureResourceGroupInfo proto.InternalMessageInfo + +func (m *AzureResourceGroupInfo) GetSiteRg() string { + if m != nil { + return m.SiteRg + } + return "" +} + +func (m *AzureResourceGroupInfo) GetVirtualNetworkRg() string { + if m != nil { + return m.VirtualNetworkRg + } + return "" +} + +// ProviderInfo +// +// x-displayName: "Provider Info" +// Cloud provider information +type ProviderInfo struct { + // Region + // + // x-displayName: "Region" + // Region in which the resource exists + Region string `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"` + // GCP Zones + // + // x-displayName: "GCP Zones" + // GCP Zones for the resource + GcpZones []string `protobuf:"bytes,2,rep,name=gcp_zones,json=gcpZones,proto3" json:"gcp_zones,omitempty"` + // Azure Resource Group Info + // + // x-displayName: "Azure Resource Group Info" + // Resource group information for Azure Site and Virtual Network + AzureRgInfo *AzureResourceGroupInfo `protobuf:"bytes,3,opt,name=azure_rg_info,json=azureRgInfo,proto3" json:"azure_rg_info,omitempty"` + // Cloud Link + // + // x-displayName: "Cloud Link" + // Reference to cloud link + CloudLink []*schema.ObjectRefType `protobuf:"bytes,4,rep,name=cloud_link,json=cloudLink,proto3" json:"cloud_link,omitempty"` +} + +func (m *ProviderInfo) Reset() { *m = ProviderInfo{} } +func (*ProviderInfo) ProtoMessage() {} +func (*ProviderInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_e89c101129b5baba, []int{22} +} +func (m *ProviderInfo) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ProviderInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ProviderInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_ProviderInfo.Merge(m, src) +} +func (m *ProviderInfo) XXX_Size() int { + return m.Size() +} +func (m *ProviderInfo) XXX_DiscardUnknown() { + xxx_messageInfo_ProviderInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_ProviderInfo proto.InternalMessageInfo + +func (m *ProviderInfo) GetRegion() string { + if m != nil { + return m.Region + } + return "" +} + +func (m *ProviderInfo) GetGcpZones() []string { + if m != nil { + return m.GcpZones + } + return nil +} + +func (m *ProviderInfo) GetAzureRgInfo() *AzureResourceGroupInfo { + if m != nil { + return m.AzureRgInfo + } + return nil +} + +func (m *ProviderInfo) GetCloudLink() []*schema.ObjectRefType { + if m != nil { + return m.CloudLink + } + return nil +} + +func init() { + proto.RegisterEnum("ves.io.schema.topology.ProviderType", ProviderType_name, ProviderType_value) + golang_proto.RegisterEnum("ves.io.schema.topology.ProviderType", ProviderType_name, ProviderType_value) + proto.RegisterEnum("ves.io.schema.topology.SiteEnumType", SiteEnumType_name, SiteEnumType_value) + golang_proto.RegisterEnum("ves.io.schema.topology.SiteEnumType", SiteEnumType_name, SiteEnumType_value) + proto.RegisterEnum("ves.io.schema.topology.RouteTableTypeEnum", RouteTableTypeEnum_name, RouteTableTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.RouteTableTypeEnum", RouteTableTypeEnum_name, RouteTableTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.InterfaceTypeEnum", InterfaceTypeEnum_name, InterfaceTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.InterfaceTypeEnum", InterfaceTypeEnum_name, InterfaceTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.RouteSourceTypeEnum", RouteSourceTypeEnum_name, RouteSourceTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.RouteSourceTypeEnum", RouteSourceTypeEnum_name, RouteSourceTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.RouteStateTypeEnum", RouteStateTypeEnum_name, RouteStateTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.RouteStateTypeEnum", RouteStateTypeEnum_name, RouteStateTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.RouteNextHopTypeEnum", RouteNextHopTypeEnum_name, RouteNextHopTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.RouteNextHopTypeEnum", RouteNextHopTypeEnum_name, RouteNextHopTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.GatewayTypeEnum", GatewayTypeEnum_name, GatewayTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.GatewayTypeEnum", GatewayTypeEnum_name, GatewayTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.SiteAppTypeEnum", SiteAppTypeEnum_name, SiteAppTypeEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.SiteAppTypeEnum", SiteAppTypeEnum_name, SiteAppTypeEnum_value) + proto.RegisterEnum("ves.io.schema.topology.PeeringStateEnum", PeeringStateEnum_name, PeeringStateEnum_value) + golang_proto.RegisterEnum("ves.io.schema.topology.PeeringStateEnum", PeeringStateEnum_name, PeeringStateEnum_value) + proto.RegisterType((*MetaType)(nil), "ves.io.schema.topology.MetaType") + golang_proto.RegisterType((*MetaType)(nil), "ves.io.schema.topology.MetaType") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetaType.TagsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.topology.MetaType.TagsEntry") + proto.RegisterType((*NetworkType)(nil), "ves.io.schema.topology.NetworkType") + golang_proto.RegisterType((*NetworkType)(nil), "ves.io.schema.topology.NetworkType") + proto.RegisterType((*LoadBalancer)(nil), "ves.io.schema.topology.LoadBalancer") + golang_proto.RegisterType((*LoadBalancer)(nil), "ves.io.schema.topology.LoadBalancer") + proto.RegisterType((*SubnetType)(nil), "ves.io.schema.topology.SubnetType") + golang_proto.RegisterType((*SubnetType)(nil), "ves.io.schema.topology.SubnetType") + proto.RegisterType((*InstanceType)(nil), "ves.io.schema.topology.InstanceType") + golang_proto.RegisterType((*InstanceType)(nil), "ves.io.schema.topology.InstanceType") + proto.RegisterType((*TransitGatewayType)(nil), "ves.io.schema.topology.TransitGatewayType") + golang_proto.RegisterType((*TransitGatewayType)(nil), "ves.io.schema.topology.TransitGatewayType") + proto.RegisterType((*RouteTableType)(nil), "ves.io.schema.topology.RouteTableType") + golang_proto.RegisterType((*RouteTableType)(nil), "ves.io.schema.topology.RouteTableType") + proto.RegisterType((*GCPRouteAttributes)(nil), "ves.io.schema.topology.GCPRouteAttributes") + golang_proto.RegisterType((*GCPRouteAttributes)(nil), "ves.io.schema.topology.GCPRouteAttributes") + proto.RegisterType((*AWSRouteAttributes)(nil), "ves.io.schema.topology.AWSRouteAttributes") + golang_proto.RegisterType((*AWSRouteAttributes)(nil), "ves.io.schema.topology.AWSRouteAttributes") + proto.RegisterType((*RouteType)(nil), "ves.io.schema.topology.RouteType") + golang_proto.RegisterType((*RouteType)(nil), "ves.io.schema.topology.RouteType") + proto.RegisterType((*SiteType)(nil), "ves.io.schema.topology.SiteType") + golang_proto.RegisterType((*SiteType)(nil), "ves.io.schema.topology.SiteType") + proto.RegisterType((*SiteMeshGroupType)(nil), "ves.io.schema.topology.SiteMeshGroupType") + golang_proto.RegisterType((*SiteMeshGroupType)(nil), "ves.io.schema.topology.SiteMeshGroupType") + proto.RegisterType((*DCClusterGroupType)(nil), "ves.io.schema.topology.DCClusterGroupType") + golang_proto.RegisterType((*DCClusterGroupType)(nil), "ves.io.schema.topology.DCClusterGroupType") + proto.RegisterType((*NetworkInterfaceType)(nil), "ves.io.schema.topology.NetworkInterfaceType") + golang_proto.RegisterType((*NetworkInterfaceType)(nil), "ves.io.schema.topology.NetworkInterfaceType") + proto.RegisterType((*AddressInfoType)(nil), "ves.io.schema.topology.AddressInfoType") + golang_proto.RegisterType((*AddressInfoType)(nil), "ves.io.schema.topology.AddressInfoType") + proto.RegisterType((*TunnelSetType)(nil), "ves.io.schema.topology.TunnelSetType") + golang_proto.RegisterType((*TunnelSetType)(nil), "ves.io.schema.topology.TunnelSetType") + proto.RegisterType((*NetworkPeerType)(nil), "ves.io.schema.topology.NetworkPeerType") + golang_proto.RegisterType((*NetworkPeerType)(nil), "ves.io.schema.topology.NetworkPeerType") + proto.RegisterType((*AzureVnetPeer)(nil), "ves.io.schema.topology.AzureVnetPeer") + golang_proto.RegisterType((*AzureVnetPeer)(nil), "ves.io.schema.topology.AzureVnetPeer") + proto.RegisterType((*TunnelType)(nil), "ves.io.schema.topology.TunnelType") + golang_proto.RegisterType((*TunnelType)(nil), "ves.io.schema.topology.TunnelType") + proto.RegisterType((*CloudPolicyType)(nil), "ves.io.schema.topology.CloudPolicyType") + golang_proto.RegisterType((*CloudPolicyType)(nil), "ves.io.schema.topology.CloudPolicyType") + proto.RegisterType((*AWSPolicyType)(nil), "ves.io.schema.topology.AWSPolicyType") + golang_proto.RegisterType((*AWSPolicyType)(nil), "ves.io.schema.topology.AWSPolicyType") + proto.RegisterType((*AzureResourceGroupInfo)(nil), "ves.io.schema.topology.AzureResourceGroupInfo") + golang_proto.RegisterType((*AzureResourceGroupInfo)(nil), "ves.io.schema.topology.AzureResourceGroupInfo") + proto.RegisterType((*ProviderInfo)(nil), "ves.io.schema.topology.ProviderInfo") + golang_proto.RegisterType((*ProviderInfo)(nil), "ves.io.schema.topology.ProviderInfo") +} + +func init() { + proto.RegisterFile("ves.io/schema/topology/types.proto", fileDescriptor_e89c101129b5baba) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/topology/types.proto", fileDescriptor_e89c101129b5baba) +} + +var fileDescriptor_e89c101129b5baba = []byte{ + // 3114 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x5a, 0xcb, 0x6f, 0xe3, 0xd6, + 0xd5, 0x37, 0xf5, 0xa4, 0x8f, 0x1e, 0xa6, 0xef, 0x78, 0x66, 0x34, 0x8f, 0xe8, 0x73, 0x94, 0xe4, + 0xcb, 0xc4, 0x49, 0xec, 0xd4, 0x79, 0xb4, 0x29, 0x8a, 0xa0, 0x92, 0xcc, 0xb1, 0xe5, 0xd1, 0x50, + 0x02, 0x45, 0xdb, 0xcd, 0x14, 0x28, 0x43, 0x51, 0xd7, 0x34, 0x33, 0x32, 0x49, 0x90, 0x94, 0x3c, + 0x0e, 0x60, 0x20, 0xdd, 0x16, 0x2d, 0x90, 0x76, 0x5f, 0x74, 0xdb, 0x7a, 0x57, 0xa0, 0xe8, 0xa2, + 0x93, 0xc5, 0x6c, 0x0a, 0x74, 0x39, 0xdd, 0x0d, 0xba, 0x4a, 0x3c, 0x9b, 0xa4, 0x9b, 0xa6, 0x7f, + 0x40, 0x81, 0xe2, 0xde, 0x4b, 0x4a, 0xa4, 0xfc, 0x9c, 0xce, 0xec, 0x78, 0xcf, 0xe3, 0x77, 0xcf, + 0x3d, 0xe7, 0xdc, 0x73, 0xcf, 0xbd, 0x12, 0x54, 0x86, 0xd8, 0x5b, 0x34, 0xed, 0x25, 0x4f, 0xdf, + 0xc1, 0xbb, 0xda, 0x92, 0x6f, 0x3b, 0x76, 0xdf, 0x36, 0xf6, 0x97, 0xfc, 0x7d, 0x07, 0x7b, 0x8b, + 0x8e, 0x6b, 0xfb, 0x36, 0xba, 0xc2, 0x64, 0x16, 0x99, 0xcc, 0x62, 0x28, 0x73, 0xfd, 0x6d, 0xc3, + 0xf4, 0x77, 0x06, 0xdd, 0x45, 0xdd, 0xde, 0x5d, 0x32, 0x6c, 0xc3, 0x5e, 0xa2, 0xe2, 0xdd, 0xc1, + 0x36, 0x1d, 0xd1, 0x01, 0xfd, 0x62, 0x30, 0xd7, 0xaf, 0x19, 0xb6, 0x6d, 0xf4, 0xf1, 0x58, 0x4a, + 0xb3, 0xf6, 0x03, 0xd6, 0x42, 0xdc, 0x8a, 0x9e, 0xae, 0xea, 0xfd, 0x81, 0xe7, 0x63, 0x57, 0x35, + 0x5c, 0x7b, 0xe0, 0x44, 0xad, 0xb9, 0x7e, 0x35, 0x2e, 0x6b, 0x61, 0x3f, 0x60, 0xdc, 0x88, 0x33, + 0x6c, 0xc7, 0x37, 0x6d, 0x2b, 0xd4, 0x2a, 0xc7, 0x99, 0x9e, 0xe9, 0xe3, 0x18, 0xea, 0x1b, 0xc7, + 0xf9, 0xea, 0x2e, 0xf6, 0x76, 0x4e, 0x30, 0xe0, 0xda, 0x84, 0xcb, 0x22, 0xac, 0x9b, 0x71, 0xd6, + 0x50, 0xeb, 0x9b, 0x3d, 0xcd, 0xc7, 0x01, 0x77, 0x7e, 0x82, 0x6b, 0xe2, 0x3d, 0x35, 0x66, 0x65, + 0xe5, 0xb7, 0x49, 0xe0, 0xef, 0x62, 0x5f, 0x53, 0xf6, 0x1d, 0x8c, 0x8a, 0x90, 0x30, 0x7b, 0x25, + 0x6e, 0x9e, 0xbb, 0x35, 0x2d, 0x27, 0xcc, 0x1e, 0x42, 0x90, 0xb2, 0xb4, 0x5d, 0x5c, 0x4a, 0x50, + 0x0a, 0xfd, 0x46, 0x6b, 0x90, 0xd6, 0x5d, 0xdc, 0xf3, 0x4a, 0xc9, 0xf9, 0xe4, 0xad, 0xdc, 0xf2, + 0xcd, 0xc5, 0x78, 0xa8, 0x5a, 0xdd, 0x4f, 0xb1, 0xee, 0xcb, 0x78, 0x9b, 0x00, 0xd6, 0xe6, 0x0e, + 0x0f, 0x66, 0xf5, 0xbe, 0x3d, 0xe8, 0xa9, 0x44, 0x07, 0x5b, 0xbe, 0xa9, 0xf5, 0x3d, 0x99, 0x01, + 0xa0, 0x6b, 0xc0, 0xbb, 0xda, 0x9e, 0xfa, 0xa9, 0x67, 0x5b, 0xa5, 0x34, 0x9d, 0x21, 0xeb, 0x6a, + 0x7b, 0xeb, 0x9e, 0x6d, 0xa1, 0x2b, 0x90, 0xf1, 0x7c, 0xcd, 0x1f, 0x78, 0xa5, 0x0c, 0x65, 0x04, + 0x23, 0x74, 0x07, 0x52, 0xbe, 0x66, 0x78, 0xa5, 0x2c, 0x9d, 0x7b, 0x61, 0xf1, 0xe4, 0x34, 0x59, + 0x0c, 0x17, 0xb4, 0xa8, 0x68, 0x86, 0x27, 0x5a, 0xbe, 0xbb, 0x5f, 0xcb, 0x1d, 0x7d, 0xf5, 0xd7, + 0x64, 0xe6, 0x17, 0x5f, 0x72, 0x09, 0x7e, 0x4a, 0xa6, 0x20, 0x64, 0x7e, 0x7b, 0xcf, 0xc2, 0xae, + 0x6a, 0xf6, 0x4a, 0x3c, 0x9b, 0x9f, 0x8e, 0x1b, 0x3d, 0xd4, 0x80, 0x82, 0xe3, 0xda, 0x43, 0xb3, + 0x87, 0x5d, 0x95, 0x78, 0xbb, 0x34, 0x3d, 0xcf, 0xdd, 0x2a, 0x2e, 0xbf, 0x7a, 0xda, 0x84, 0xed, + 0x40, 0x98, 0x4c, 0x2a, 0xe7, 0x9d, 0xc8, 0xe8, 0xfa, 0xf7, 0x61, 0x7a, 0x64, 0x05, 0x12, 0x20, + 0x79, 0x1f, 0xef, 0x07, 0x1e, 0x26, 0x9f, 0x68, 0x0e, 0xd2, 0x43, 0xad, 0x3f, 0x08, 0x7d, 0xcc, + 0x06, 0x3f, 0x4c, 0xfc, 0x80, 0x5b, 0x4f, 0xf1, 0x29, 0x21, 0x5d, 0xf9, 0x63, 0x02, 0x72, 0x12, + 0xf6, 0xf7, 0x6c, 0xf7, 0x3e, 0x0d, 0xd1, 0x1a, 0x64, 0x5c, 0x6c, 0x98, 0xb6, 0x55, 0xe2, 0x2e, + 0xe0, 0x7f, 0x74, 0x78, 0x30, 0x13, 0x1a, 0xa9, 0x32, 0x3d, 0x39, 0xd0, 0x47, 0x57, 0x21, 0xab, + 0x9b, 0x3d, 0x57, 0x1d, 0xbe, 0x57, 0x4a, 0xcc, 0x27, 0x89, 0x93, 0xc9, 0x70, 0xf3, 0xbd, 0x31, + 0xe3, 0x03, 0x1a, 0xe3, 0x90, 0xf1, 0x01, 0xfa, 0x29, 0x14, 0x2c, 0x66, 0x8a, 0xea, 0x60, 0xec, + 0x7a, 0xa5, 0xd4, 0x05, 0x4c, 0x28, 0x1d, 0x1e, 0x5c, 0x1e, 0x99, 0x10, 0x55, 0x97, 0xf3, 0xc1, + 0xa8, 0x4d, 0xb0, 0x88, 0xcb, 0xfb, 0xb6, 0xd6, 0x53, 0xbb, 0x5a, 0x5f, 0xb3, 0x74, 0xec, 0x96, + 0xd2, 0x14, 0xfc, 0x54, 0x97, 0x37, 0x6d, 0xad, 0x57, 0x0b, 0x64, 0xe5, 0x7c, 0x3f, 0x32, 0xaa, + 0x2c, 0x43, 0x3e, 0xca, 0x1d, 0xa5, 0x31, 0x17, 0x49, 0x63, 0x96, 0xea, 0x89, 0x30, 0xd5, 0x2b, + 0xff, 0x48, 0x00, 0x74, 0x06, 0x5d, 0x0b, 0xfb, 0xd4, 0xcd, 0x77, 0x20, 0x1b, 0x58, 0x47, 0x9d, + 0x73, 0xde, 0x22, 0x2f, 0x1d, 0x1e, 0x08, 0x93, 0x8b, 0x94, 0x43, 0x84, 0x48, 0xcc, 0x92, 0xcf, + 0x19, 0xb3, 0x37, 0x61, 0x56, 0x1b, 0x6a, 0x66, 0x5f, 0xeb, 0x9a, 0x7d, 0xd3, 0xdf, 0x57, 0x3f, + 0xb3, 0x2d, 0x5c, 0x4a, 0xd1, 0x45, 0x08, 0x51, 0xc6, 0x3d, 0xdb, 0xc2, 0xd1, 0x00, 0xa7, 0x4f, + 0x0b, 0x70, 0x26, 0x16, 0xe0, 0x36, 0x14, 0x4d, 0xcb, 0xc7, 0xee, 0xb6, 0xa6, 0x63, 0x96, 0xf7, + 0x59, 0x9a, 0xf7, 0x6f, 0x9c, 0x16, 0x84, 0x46, 0x28, 0x4d, 0x2c, 0x17, 0xad, 0xc1, 0xae, 0x5c, + 0x30, 0xa3, 0xa4, 0xf5, 0x14, 0xcf, 0x09, 0x89, 0xca, 0xbf, 0x92, 0x90, 0x6f, 0x58, 0x9e, 0x4f, + 0xc2, 0x41, 0xdd, 0xdb, 0x04, 0x18, 0xc9, 0x79, 0x41, 0x26, 0xbf, 0x75, 0xda, 0x24, 0x41, 0xfa, + 0xc7, 0xe6, 0x92, 0x23, 0xfa, 0xa8, 0x02, 0x79, 0xcd, 0xd5, 0x77, 0x4c, 0x1f, 0xeb, 0xfe, 0xc0, + 0x0d, 0xb7, 0x52, 0x8c, 0x46, 0x76, 0x9e, 0xee, 0x0c, 0x4a, 0xc9, 0x79, 0xee, 0x56, 0x41, 0x26, + 0x9f, 0xe8, 0x15, 0x28, 0x98, 0x81, 0x4d, 0x6c, 0xad, 0xcc, 0x8f, 0x79, 0x33, 0x6a, 0xe8, 0x75, + 0xe0, 0x9d, 0xbe, 0xe6, 0x6f, 0xdb, 0xee, 0x6e, 0x50, 0xa3, 0x46, 0x63, 0xf4, 0x3a, 0xcc, 0x38, + 0xae, 0x39, 0xd4, 0x7c, 0xac, 0x6a, 0xbd, 0x9e, 0x8b, 0xbd, 0xb0, 0x5a, 0x15, 0x03, 0x72, 0x95, + 0x51, 0xd1, 0x6b, 0x50, 0x74, 0x06, 0xdd, 0xbe, 0xa9, 0x8f, 0xe4, 0xb2, 0x54, 0xae, 0xc0, 0xa8, + 0xa1, 0xd8, 0x2d, 0x10, 0x42, 0xbc, 0x9e, 0xe5, 0xa9, 0x34, 0x65, 0xf9, 0x18, 0xe0, 0x8a, 0xe5, + 0x49, 0x24, 0x79, 0xff, 0x1f, 0x66, 0x02, 0xc0, 0x91, 0xe0, 0x74, 0x14, 0x31, 0x94, 0x7b, 0x0d, + 0x8a, 0x1e, 0xd6, 0x07, 0x2e, 0x49, 0x15, 0x7a, 0xaa, 0x94, 0x80, 0xc6, 0xbb, 0x10, 0x52, 0x57, + 0x09, 0xf1, 0xe4, 0xac, 0xca, 0x9d, 0x92, 0x55, 0xaf, 0x42, 0x71, 0xfb, 0xfd, 0x07, 0xba, 0x6a, + 0xd9, 0x3d, 0xcc, 0xa6, 0xce, 0x33, 0xbf, 0x11, 0xaa, 0x64, 0xf7, 0x30, 0x99, 0xb9, 0xf2, 0x6f, + 0x0e, 0x90, 0xe2, 0x6a, 0x96, 0x67, 0xfa, 0xab, 0x9a, 0x8f, 0xf7, 0xb4, 0xfd, 0xc9, 0x6d, 0xc5, + 0x3d, 0xf7, 0xb6, 0xaa, 0x43, 0x59, 0x1b, 0xf8, 0xb6, 0xaa, 0xe9, 0x3a, 0x76, 0x7c, 0xd5, 0xdb, + 0xd1, 0x5c, 0xdc, 0x53, 0x35, 0xdf, 0xd7, 0xf4, 0x9d, 0x5d, 0x6c, 0xf9, 0x1e, 0x4d, 0x04, 0x5e, + 0xbe, 0x41, 0xa4, 0xaa, 0x54, 0xa8, 0x43, 0x65, 0xaa, 0x63, 0x11, 0xf4, 0x7f, 0x90, 0x23, 0x3e, + 0xf4, 0x06, 0x8e, 0x63, 0xbb, 0x3e, 0xcd, 0x0f, 0x5e, 0x86, 0x9e, 0xe5, 0x75, 0x18, 0x85, 0x44, + 0x65, 0xe8, 0x58, 0x2a, 0xd6, 0x77, 0x9d, 0x91, 0x54, 0x8a, 0x4a, 0x15, 0x87, 0x8e, 0x25, 0xea, + 0xbb, 0x4e, 0x20, 0x59, 0x79, 0x92, 0x82, 0xa2, 0x6c, 0x0f, 0x7c, 0xac, 0x68, 0xdd, 0x3e, 0x0e, + 0xab, 0xb5, 0x47, 0x8b, 0xca, 0xb3, 0x57, 0x6b, 0xa6, 0x27, 0x07, 0xfa, 0x2f, 0xb6, 0x20, 0x75, + 0x61, 0xc6, 0x67, 0xc1, 0x51, 0x0d, 0x16, 0x9d, 0x0b, 0x55, 0xa6, 0x1b, 0x87, 0x07, 0xa5, 0x11, + 0xe8, 0x04, 0x80, 0x5c, 0xf4, 0x63, 0xe1, 0x46, 0x1f, 0x42, 0xc6, 0x25, 0xce, 0x08, 0x4f, 0x89, + 0x97, 0x4f, 0xdb, 0xde, 0xcc, 0x65, 0x64, 0x4f, 0x07, 0x0a, 0x48, 0x01, 0x81, 0x7e, 0xa9, 0x3e, + 0x71, 0x24, 0xdb, 0x9c, 0x69, 0x5a, 0x88, 0x16, 0xce, 0x06, 0x09, 0xfd, 0x4e, 0x2b, 0x51, 0xd1, + 0x8d, 0xc7, 0xe2, 0x63, 0x98, 0x31, 0x77, 0x9d, 0xbe, 0xa9, 0x9b, 0x7e, 0xe0, 0xdc, 0xa0, 0x8d, + 0x78, 0xf6, 0xa0, 0x14, 0x43, 0x20, 0x76, 0x62, 0x10, 0x68, 0xfc, 0x20, 0x0e, 0xcd, 0xff, 0xaf, + 0xd0, 0x21, 0x10, 0x83, 0x5e, 0x4f, 0xf1, 0x19, 0x21, 0x5b, 0x71, 0x01, 0xad, 0xd6, 0xdb, 0x74, + 0x91, 0x55, 0xdf, 0x77, 0xcd, 0x2e, 0xf5, 0x13, 0x29, 0x4e, 0xae, 0x69, 0x93, 0x8d, 0x4c, 0xcf, + 0xb6, 0x82, 0x3c, 0x1a, 0xa3, 0x97, 0x00, 0x4c, 0x47, 0x1d, 0x62, 0xd7, 0x23, 0xe7, 0x0e, 0xab, + 0x88, 0xd3, 0xa6, 0xb3, 0xc9, 0x08, 0xe8, 0x65, 0xc8, 0x7b, 0xba, 0xed, 0x60, 0xb5, 0x6f, 0xee, + 0x9a, 0xbe, 0x17, 0x1c, 0xf4, 0x39, 0x4a, 0x6b, 0x52, 0x52, 0xe5, 0x3d, 0x40, 0xd5, 0xad, 0xce, + 0xe4, 0x9c, 0x65, 0x00, 0xc7, 0xb5, 0x1d, 0x8d, 0x84, 0x9d, 0xb5, 0x8a, 0xbc, 0x1c, 0xa1, 0x54, + 0xfe, 0x93, 0x84, 0xe9, 0x51, 0x44, 0xd1, 0x3c, 0xe4, 0x7a, 0xd8, 0xf3, 0x4d, 0x4b, 0xf3, 0x59, + 0xcb, 0x42, 0xcc, 0x88, 0x92, 0x50, 0x89, 0xe4, 0xf5, 0x03, 0x7f, 0xc7, 0x76, 0x02, 0x23, 0xc3, + 0x21, 0xaa, 0x43, 0xc6, 0xb3, 0x07, 0xae, 0x8e, 0xe9, 0xa6, 0x2c, 0x2e, 0xbf, 0x79, 0x66, 0xec, + 0x3b, 0x54, 0x74, 0x14, 0xfc, 0x40, 0x15, 0xfd, 0x18, 0xd2, 0xa4, 0x75, 0x64, 0xc5, 0xfd, 0xbc, + 0xfc, 0xe9, 0x10, 0xc9, 0x11, 0x04, 0x53, 0x44, 0x6d, 0xd2, 0xf4, 0x3c, 0xf0, 0xd5, 0x1d, 0xdb, + 0x89, 0x66, 0xe2, 0x5b, 0x67, 0x22, 0x49, 0xf8, 0x81, 0xbf, 0x66, 0x3b, 0x23, 0xac, 0x9c, 0x35, + 0x26, 0xa0, 0xf7, 0xe1, 0xea, 0xc0, 0xc3, 0xae, 0xda, 0xc3, 0xdb, 0xa6, 0x85, 0x7b, 0x2a, 0xcb, + 0x75, 0x5a, 0x4a, 0xd9, 0xf9, 0x31, 0x47, 0xd8, 0x2b, 0x8c, 0xcb, 0xe0, 0x48, 0x31, 0xff, 0x08, + 0x92, 0xda, 0x9e, 0x47, 0x4f, 0x84, 0x33, 0x5a, 0xdf, 0xe3, 0x21, 0x5b, 0x9b, 0x92, 0x89, 0x22, + 0xd1, 0x37, 0x74, 0x87, 0x1e, 0x14, 0x67, 0xe8, 0x1f, 0x4f, 0x33, 0xa2, 0x6f, 0xe8, 0x4e, 0xad, + 0x0c, 0x57, 0x58, 0x2b, 0xcf, 0xec, 0xd5, 0xc6, 0x39, 0x91, 0x7a, 0xfc, 0x90, 0xcb, 0xae, 0xa7, + 0xf8, 0xac, 0xc0, 0x57, 0xfe, 0x90, 0x02, 0xbe, 0x63, 0x06, 0xe1, 0x7f, 0xa1, 0xe5, 0xfe, 0x0e, + 0x24, 0x7d, 0x63, 0xef, 0x42, 0xd5, 0xef, 0xcc, 0x42, 0x45, 0x50, 0x50, 0x0f, 0x84, 0xc9, 0x2b, + 0xdf, 0x85, 0x4a, 0xe0, 0xcd, 0xc3, 0x83, 0x6b, 0x23, 0xe4, 0x49, 0x04, 0xb9, 0xd8, 0xd3, 0xeb, + 0x8c, 0xc0, 0x0e, 0xd6, 0x0f, 0x61, 0x9a, 0x5e, 0xeb, 0x46, 0xed, 0x45, 0xf1, 0x18, 0x3c, 0xe1, + 0x2f, 0x86, 0x0e, 0x93, 0x79, 0x2f, 0x74, 0x9d, 0x1c, 0xb9, 0x81, 0x98, 0xd6, 0xb6, 0x4d, 0xd3, + 0x2e, 0x77, 0xfe, 0x0d, 0xa4, 0x61, 0x6d, 0xdb, 0xb5, 0xec, 0x93, 0x03, 0xee, 0x9b, 0x87, 0x1c, + 0x37, 0xbe, 0x8a, 0x10, 0x32, 0x5a, 0x87, 0x7c, 0xe0, 0x04, 0x66, 0x51, 0x86, 0x5a, 0xf4, 0xfa, + 0xa9, 0xa9, 0x30, 0x3e, 0xb8, 0x59, 0x12, 0x1b, 0x91, 0x93, 0xbc, 0x06, 0xbc, 0xe6, 0x38, 0xd1, + 0x26, 0xf1, 0x54, 0x1c, 0xb2, 0xba, 0xaa, 0x33, 0xde, 0x0c, 0x59, 0x8d, 0x0d, 0x2a, 0x7f, 0x4e, + 0xc3, 0x2c, 0x61, 0xde, 0xc5, 0xde, 0x0e, 0x75, 0x18, 0x45, 0x5e, 0x81, 0x14, 0x45, 0xe5, 0x28, + 0xea, 0x3b, 0x27, 0xf8, 0x2b, 0x72, 0x4d, 0x5e, 0x3c, 0xa6, 0x2f, 0x53, 0xed, 0xe7, 0x71, 0xfd, + 0xcf, 0x20, 0x3f, 0x34, 0x5d, 0x7f, 0xa0, 0xf5, 0x55, 0x42, 0x2b, 0x4d, 0x5f, 0x20, 0x2f, 0x5e, + 0x3a, 0x3c, 0x88, 0x29, 0x7d, 0xfe, 0x25, 0xc7, 0xfd, 0xe5, 0xdb, 0x47, 0xc9, 0xf4, 0x6f, 0xb8, + 0x84, 0xc0, 0xc9, 0xb9, 0x80, 0x47, 0x66, 0x23, 0x89, 0xbc, 0x33, 0xe8, 0x3e, 0xfb, 0x89, 0x3b, + 0xb1, 0x74, 0x99, 0xa0, 0xa0, 0x36, 0xf0, 0x3b, 0x83, 0x2e, 0x25, 0xd3, 0x78, 0xe6, 0x96, 0xdf, + 0x3d, 0xc7, 0x63, 0x6b, 0x83, 0xee, 0xed, 0x41, 0xbf, 0x1f, 0x73, 0xda, 0xda, 0x94, 0x9c, 0xdd, + 0x19, 0x74, 0x09, 0x0d, 0xc9, 0x00, 0x9e, 0x63, 0xdf, 0x67, 0x3a, 0x34, 0xb6, 0xb9, 0xe5, 0xef, + 0x9d, 0x17, 0x05, 0xa2, 0x30, 0x89, 0x38, 0xed, 0x85, 0x54, 0xd4, 0x82, 0xe9, 0xed, 0x41, 0xbf, + 0xcf, 0x20, 0x59, 0x05, 0x3b, 0x2f, 0xb0, 0x27, 0xd9, 0xc8, 0x6f, 0x07, 0x44, 0xb4, 0x05, 0x85, + 0x98, 0x5f, 0x68, 0x63, 0x7b, 0x81, 0xd7, 0x88, 0xb8, 0x16, 0x89, 0x92, 0x9c, 0x0f, 0x49, 0x24, + 0x38, 0xb5, 0xab, 0x90, 0xa3, 0x46, 0xe8, 0x3b, 0xb6, 0xa9, 0x63, 0xc4, 0x3f, 0x7a, 0xc8, 0xf1, + 0x8f, 0x1f, 0x72, 0xe9, 0xf5, 0x14, 0x9f, 0x10, 0x92, 0xeb, 0x29, 0x3e, 0x2d, 0x64, 0x2a, 0x9f, + 0x00, 0x5a, 0xa9, 0x47, 0x77, 0x3a, 0xcd, 0x9b, 0xf5, 0x48, 0xe2, 0xe6, 0x96, 0x3f, 0x98, 0x30, + 0x65, 0xb2, 0x58, 0x2c, 0xc6, 0x11, 0xc8, 0xaa, 0xc6, 0xe9, 0x5b, 0xf9, 0x5d, 0x12, 0xe6, 0x4e, + 0xba, 0xf7, 0xbc, 0xc0, 0x8e, 0x72, 0xfc, 0xc6, 0x92, 0x88, 0xbd, 0xb1, 0x28, 0x30, 0x3b, 0x71, + 0xad, 0xc1, 0xe1, 0x63, 0xcf, 0xa9, 0x5b, 0x3c, 0xb8, 0xc2, 0x90, 0x2a, 0x43, 0x17, 0x21, 0xc4, + 0x6f, 0x40, 0xd8, 0x43, 0xd2, 0xb1, 0x3b, 0x50, 0xea, 0xd9, 0x20, 0x27, 0x2e, 0x4b, 0xc7, 0xaf, + 0x36, 0xe9, 0x93, 0xae, 0x36, 0xe1, 0xd5, 0x3f, 0x13, 0xb9, 0xfa, 0xaf, 0x40, 0x8e, 0xde, 0x60, + 0x82, 0xd5, 0xb3, 0x0c, 0x7f, 0xe5, 0xa4, 0xe2, 0x30, 0x72, 0x7d, 0x87, 0x8a, 0xca, 0x40, 0xf4, + 0xd8, 0x77, 0xe5, 0x13, 0x98, 0x99, 0x30, 0x91, 0xf4, 0x32, 0xe1, 0xe2, 0x58, 0xa7, 0x13, 0x0e, + 0xd1, 0x35, 0xe0, 0x47, 0x37, 0xb5, 0x24, 0x63, 0xf5, 0x82, 0x3b, 0x5a, 0x09, 0xb2, 0x8e, 0x6b, + 0xee, 0x6a, 0xee, 0x7e, 0x70, 0xad, 0x08, 0x87, 0x95, 0x5f, 0x73, 0x50, 0x50, 0x06, 0x96, 0x85, + 0xfb, 0x9d, 0xe0, 0x55, 0xa2, 0x06, 0x29, 0x9a, 0xec, 0x17, 0x09, 0xbd, 0x30, 0x99, 0xec, 0x32, + 0xd5, 0x45, 0x3f, 0x82, 0xac, 0x4f, 0x41, 0xbd, 0xe0, 0x28, 0xad, 0x9c, 0x16, 0x01, 0x36, 0x37, + 0x75, 0x7e, 0xa8, 0x52, 0x71, 0x61, 0x46, 0x1a, 0xbf, 0xda, 0x04, 0xf5, 0x7a, 0x7a, 0x68, 0x61, + 0x9f, 0xbe, 0xe9, 0xd0, 0x54, 0xca, 0x2d, 0xbf, 0x76, 0x6a, 0x50, 0x3f, 0x1b, 0xb8, 0x78, 0xd3, + 0xc2, 0x3e, 0xd1, 0x26, 0x1b, 0x7a, 0x18, 0x7c, 0xd7, 0x2e, 0x41, 0x8e, 0x00, 0x84, 0xfb, 0x8e, + 0xb4, 0x14, 0x5c, 0xf0, 0x7a, 0xf0, 0x27, 0x0e, 0x0a, 0x31, 0x45, 0xa4, 0x40, 0x9e, 0x0a, 0x3f, + 0x77, 0x73, 0x41, 0xe7, 0x0c, 0x16, 0x84, 0xee, 0x42, 0x81, 0x0c, 0x4d, 0xcb, 0x50, 0x59, 0xcf, + 0x98, 0xa0, 0xc7, 0xc6, 0xad, 0x53, 0x8f, 0x5c, 0x26, 0x4c, 0xbb, 0x46, 0x7a, 0xb0, 0xe5, 0x9d, + 0x08, 0xa5, 0xf2, 0x2d, 0x07, 0x30, 0x76, 0x21, 0x5a, 0x07, 0xd0, 0x6d, 0xcb, 0xc2, 0xfa, 0xa8, + 0x13, 0x3e, 0xde, 0x85, 0xd1, 0xa4, 0x63, 0x3a, 0xf5, 0x91, 0x6c, 0x98, 0x7b, 0x63, 0xed, 0x51, + 0x1e, 0x24, 0x9e, 0x23, 0x0f, 0x82, 0x76, 0x2a, 0xf9, 0x22, 0xda, 0xa9, 0xca, 0xdf, 0x39, 0x98, + 0xa9, 0x93, 0xe6, 0xb0, 0x6d, 0xf7, 0x4d, 0x9d, 0x75, 0x08, 0x1f, 0xb2, 0x7e, 0xf5, 0xbc, 0x8c, + 0xd8, 0xea, 0x8c, 0x75, 0xc2, 0x56, 0xf5, 0x5d, 0xb8, 0xec, 0x60, 0x77, 0xd7, 0xf4, 0xc8, 0x5d, + 0xc5, 0x53, 0x1d, 0xdb, 0x19, 0xf4, 0xe9, 0x7d, 0x23, 0x4d, 0x77, 0xc8, 0x5c, 0x84, 0xd9, 0x0e, + 0x79, 0xe8, 0x1d, 0x98, 0x63, 0xfd, 0xe9, 0xa8, 0x6f, 0xc2, 0xae, 0x6b, 0xbb, 0xc1, 0xd6, 0x47, + 0x94, 0x17, 0x76, 0x49, 0x22, 0xe1, 0xd4, 0xae, 0x00, 0x30, 0x0d, 0xda, 0x31, 0x90, 0x52, 0x9f, + 0x88, 0xa4, 0xdd, 0xcf, 0x13, 0x50, 0x88, 0x59, 0x87, 0x96, 0x60, 0x2e, 0x78, 0x01, 0x50, 0xb5, + 0x3d, 0x4f, 0x1d, 0x3a, 0xba, 0x1a, 0x6c, 0x47, 0x62, 0xd5, 0x6c, 0xc0, 0xab, 0xee, 0x79, 0x9b, + 0x8e, 0x4e, 0x4f, 0xfa, 0xdb, 0x30, 0x4f, 0xed, 0xb4, 0x0c, 0x35, 0xba, 0x9e, 0x98, 0x32, 0x7b, + 0x7b, 0xbd, 0x19, 0xc8, 0xb5, 0xc7, 0x62, 0x11, 0x9c, 0x89, 0x89, 0x7d, 0x63, 0x8f, 0xe9, 0x26, + 0x27, 0x27, 0x56, 0x8c, 0xbd, 0xf3, 0x26, 0x1e, 0x29, 0xa7, 0xce, 0x98, 0x38, 0xc0, 0xa9, 0xa8, + 0x70, 0x85, 0xee, 0x3c, 0x19, 0xb3, 0xfb, 0x14, 0x2d, 0xaa, 0xb4, 0x97, 0xbc, 0x0a, 0x59, 0x7a, + 0x62, 0xbb, 0x46, 0x50, 0xeb, 0x32, 0x34, 0xb7, 0x0c, 0xf4, 0x16, 0xa0, 0xb0, 0x11, 0x0a, 0x5f, + 0x7b, 0x5d, 0x23, 0x38, 0x62, 0x84, 0x80, 0x13, 0xec, 0x38, 0xd9, 0xa8, 0x3c, 0xe5, 0x20, 0x1f, + 0x6d, 0x5d, 0xc9, 0xa9, 0x34, 0x7a, 0xdf, 0xa6, 0xb0, 0xc1, 0xcb, 0xe7, 0x0d, 0x98, 0x36, 0x74, + 0x87, 0x3e, 0x4d, 0x79, 0x81, 0xcf, 0x78, 0x43, 0x77, 0xee, 0x91, 0x31, 0x69, 0x96, 0x35, 0x62, + 0xa6, 0xea, 0x1a, 0xac, 0x59, 0x4e, 0xd2, 0xa4, 0x5b, 0x3c, 0xb3, 0x0c, 0x1d, 0x5b, 0x93, 0x9c, + 0xa3, 0x20, 0xb2, 0x11, 0x34, 0xcb, 0x41, 0x72, 0xf4, 0x4d, 0xeb, 0xfe, 0x85, 0x5e, 0xba, 0x0b, + 0x87, 0x07, 0x11, 0x15, 0x79, 0x9a, 0x7e, 0x37, 0x4d, 0xeb, 0xfe, 0xc2, 0x17, 0x91, 0x55, 0xd2, + 0x4c, 0x7a, 0x09, 0xae, 0xb5, 0xe5, 0xd6, 0x66, 0x63, 0x45, 0x94, 0x55, 0xe5, 0xe3, 0xb6, 0xa8, + 0x6e, 0x48, 0x9d, 0xb6, 0x58, 0x6f, 0xdc, 0x6e, 0x88, 0x2b, 0xc2, 0x14, 0xba, 0x0c, 0xb3, 0x71, + 0x76, 0x75, 0xab, 0x23, 0x70, 0xc7, 0xc9, 0xab, 0xf5, 0xb6, 0x90, 0x40, 0x57, 0xe1, 0xd2, 0x84, + 0xf4, 0xbd, 0x0d, 0x59, 0x14, 0x92, 0xe8, 0x3a, 0x5c, 0x89, 0x33, 0x36, 0x5b, 0x4d, 0x45, 0x94, + 0xe5, 0xaa, 0x90, 0x5a, 0x90, 0x21, 0x4f, 0x22, 0x4c, 0xea, 0x16, 0xb5, 0xe8, 0x1a, 0x5c, 0xee, + 0x34, 0x14, 0xf1, 0x24, 0x6b, 0x04, 0xc8, 0x8f, 0x59, 0xb2, 0xc8, 0x0c, 0x19, 0x53, 0xaa, 0x5b, + 0x1d, 0x55, 0x59, 0xdd, 0x12, 0x12, 0x0b, 0x35, 0x40, 0xc7, 0xdf, 0x61, 0x88, 0x79, 0x72, 0x6b, + 0x83, 0x48, 0x57, 0x6b, 0x4d, 0x51, 0x95, 0x44, 0x65, 0xab, 0x25, 0xdf, 0x11, 0xa6, 0xd0, 0x25, + 0x98, 0x89, 0x32, 0x08, 0x06, 0xb7, 0x20, 0xc1, 0xec, 0xb1, 0x47, 0x65, 0x94, 0x83, 0x6c, 0x6b, + 0x43, 0xe9, 0x34, 0x56, 0x44, 0x61, 0x0a, 0x01, 0x64, 0x1a, 0x12, 0xfd, 0xe6, 0x50, 0x1e, 0x78, + 0x02, 0xd6, 0x6c, 0x55, 0x57, 0x84, 0x04, 0x42, 0x50, 0x94, 0x5a, 0x8a, 0x5a, 0x6d, 0xb7, 0x9b, + 0x8d, 0x3a, 0xc1, 0x14, 0x92, 0x0b, 0xbf, 0xe4, 0xe0, 0xd2, 0x09, 0x0f, 0x04, 0x44, 0xb6, 0x21, + 0x6d, 0x56, 0x9b, 0x8d, 0x15, 0xb5, 0xd3, 0xda, 0x90, 0xeb, 0x04, 0x39, 0x07, 0xd9, 0x15, 0xf1, + 0x76, 0x75, 0xa3, 0xa9, 0x08, 0x1c, 0xe2, 0x21, 0xb5, 0xd1, 0x11, 0x65, 0x21, 0x41, 0xc8, 0x1b, + 0xd2, 0x1d, 0xa9, 0xb5, 0x25, 0x09, 0x49, 0x54, 0x81, 0xf2, 0x66, 0x43, 0x56, 0x36, 0xaa, 0xcd, + 0x70, 0x25, 0xea, 0x6a, 0x55, 0x11, 0xb7, 0xaa, 0x1f, 0x87, 0x38, 0x29, 0xea, 0x4b, 0xfa, 0xad, + 0x4e, 0x98, 0x93, 0x5e, 0xe8, 0x04, 0x2e, 0x8a, 0x3d, 0x35, 0x10, 0x0f, 0x57, 0xeb, 0x4a, 0x63, + 0x53, 0x54, 0x3b, 0x4a, 0x55, 0x21, 0xa6, 0xcc, 0x42, 0x61, 0x64, 0x1e, 0x25, 0x71, 0xa8, 0x04, + 0x73, 0xf4, 0x73, 0x12, 0x34, 0xb1, 0xf0, 0xcf, 0x04, 0xcc, 0x9d, 0xf4, 0xec, 0x80, 0x6e, 0xc0, + 0xd5, 0x53, 0x8c, 0x15, 0xa6, 0x50, 0x11, 0x60, 0x53, 0x12, 0x15, 0xb5, 0xd9, 0xaa, 0x57, 0x9b, + 0xcc, 0x97, 0x0d, 0x49, 0x11, 0x65, 0x49, 0x54, 0x84, 0x04, 0x09, 0x71, 0xa8, 0x4a, 0xe7, 0xaa, + 0x4a, 0x75, 0x92, 0x52, 0x3c, 0xa4, 0xa4, 0x96, 0x44, 0x16, 0x29, 0x40, 0x9e, 0xaa, 0xb7, 0x45, + 0x51, 0x6e, 0x48, 0xab, 0x42, 0x1a, 0xbd, 0x0a, 0xf3, 0x93, 0xb3, 0x75, 0x44, 0x79, 0xb3, 0x51, + 0x17, 0x55, 0x51, 0x5a, 0x69, 0xb7, 0x1a, 0x92, 0x22, 0x64, 0xd0, 0x3c, 0xdc, 0x94, 0xc4, 0x9f, + 0x28, 0xea, 0x5a, 0xab, 0xcd, 0xf2, 0x67, 0x62, 0x39, 0x59, 0x82, 0x4c, 0x02, 0x5a, 0xab, 0x36, + 0xc9, 0xa4, 0xb2, 0xc0, 0xa3, 0x19, 0xc8, 0x6d, 0xb6, 0xeb, 0xa3, 0xd4, 0x99, 0x0e, 0x09, 0xe1, + 0xdc, 0x40, 0x52, 0x9d, 0x19, 0x5f, 0x6d, 0xaa, 0x44, 0x59, 0x1d, 0x69, 0xe7, 0xd8, 0xc2, 0x3a, + 0x0a, 0x5d, 0x41, 0x9e, 0xa0, 0x53, 0xc9, 0x7a, 0x4b, 0x92, 0xc4, 0xba, 0x22, 0x14, 0xd0, 0x1c, + 0x08, 0xe1, 0xc2, 0x47, 0xee, 0x29, 0xa2, 0x0c, 0x24, 0x1a, 0x6d, 0x61, 0x86, 0xba, 0xa9, 0x2d, + 0xa9, 0xca, 0x86, 0x24, 0x89, 0x4d, 0x41, 0x58, 0xa8, 0xc1, 0xcc, 0xc4, 0xc5, 0x98, 0x24, 0x72, + 0x43, 0x5a, 0x95, 0xc5, 0x4e, 0x27, 0xe2, 0x5e, 0x6a, 0x11, 0x23, 0x8a, 0x71, 0x1e, 0xb7, 0x70, + 0x0f, 0x66, 0x26, 0x2e, 0xc5, 0xa3, 0x2d, 0x55, 0x6d, 0xb7, 0x03, 0xaf, 0x48, 0x24, 0x0f, 0xc2, + 0x6d, 0x19, 0x92, 0xab, 0xed, 0x76, 0x47, 0xa9, 0xd6, 0xef, 0x44, 0x36, 0x61, 0xc8, 0xba, 0x2b, + 0x76, 0xd6, 0x84, 0xc4, 0x42, 0x1f, 0x84, 0xc9, 0xc6, 0x04, 0x15, 0x60, 0x3a, 0x58, 0x6e, 0xb8, + 0xa1, 0x57, 0x1a, 0x9d, 0x31, 0x85, 0x55, 0x16, 0xe6, 0x4b, 0xb5, 0x21, 0x35, 0x94, 0x46, 0x95, + 0x90, 0x93, 0x24, 0x56, 0x21, 0xf9, 0xc4, 0xd4, 0x4b, 0xd5, 0x7e, 0xc5, 0x3d, 0xfa, 0x68, 0xea, + 0xf1, 0xd7, 0xe5, 0xa9, 0x27, 0x5f, 0x97, 0xa7, 0xbe, 0xfb, 0xba, 0xcc, 0x7d, 0x7e, 0x54, 0xe6, + 0x7e, 0x7f, 0x54, 0xe6, 0xfe, 0x76, 0x54, 0xe6, 0x1e, 0x1f, 0x95, 0xb9, 0x27, 0x47, 0x65, 0xee, + 0xab, 0xa3, 0x32, 0xf7, 0xcd, 0x51, 0x79, 0xea, 0xbb, 0xa3, 0x32, 0xf7, 0xc5, 0xd3, 0xf2, 0xd4, + 0xa3, 0xa7, 0x65, 0xee, 0xf1, 0xd3, 0xf2, 0xd4, 0x93, 0xa7, 0xe5, 0xa9, 0x7b, 0x4d, 0xc3, 0x76, + 0xee, 0x1b, 0x8b, 0x43, 0xbb, 0xef, 0x63, 0xd7, 0xd5, 0x16, 0x07, 0xde, 0x12, 0xfd, 0xd8, 0xb6, + 0xdd, 0xdd, 0xb7, 0xc3, 0xa3, 0xfc, 0xed, 0x90, 0xbd, 0xe4, 0x74, 0x0d, 0x7b, 0x09, 0x3f, 0xf0, + 0xc3, 0x5f, 0xcd, 0xe3, 0x7f, 0x22, 0xe8, 0x66, 0xe8, 0xaf, 0xda, 0xef, 0xfe, 0x37, 0x00, 0x00, + 0xff, 0xff, 0x34, 0x8a, 0x63, 0xe5, 0x65, 0x20, 0x00, 0x00, +} + +func (x ProviderType) String() string { + s, ok := ProviderType_name[int32(x)] + if ok { return s } return strconv.Itoa(int(x)) @@ -2474,6 +3033,20 @@ func (x RouteNextHopTypeEnum) String() string { } return strconv.Itoa(int(x)) } +func (x GatewayTypeEnum) String() string { + s, ok := GatewayTypeEnum_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x SiteAppTypeEnum) String() string { + s, ok := SiteAppTypeEnum_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} func (x PeeringStateEnum) String() string { s, ok := PeeringStateEnum_name[int32(x)] if ok { @@ -2745,6 +3318,9 @@ func (this *InstanceType) Equal(that interface{}) bool { if this.AvailabilityZone != that1.AvailabilityZone { return false } + if this.F5XcNodeName != that1.F5XcNodeName { + return false + } return true } func (this *TransitGatewayType) Equal(that interface{}) bool { @@ -2857,6 +3433,65 @@ func (this *RouteTableType) Equal(that interface{}) bool { } return true } +func (this *GCPRouteAttributes) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GCPRouteAttributes) + if !ok { + that2, ok := that.(GCPRouteAttributes) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Priority != that1.Priority { + return false + } + if this.IpVersion != that1.IpVersion { + return false + } + if len(this.ScopeLimits) != len(that1.ScopeLimits) { + return false + } + for i := range this.ScopeLimits { + if this.ScopeLimits[i] != that1.ScopeLimits[i] { + return false + } + } + return true +} +func (this *AWSRouteAttributes) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AWSRouteAttributes) + if !ok { + that2, ok := that.(AWSRouteAttributes) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Propagated != that1.Propagated { + return false + } + return true +} func (this *RouteType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -2894,6 +3529,63 @@ func (this *RouteType) Equal(that interface{}) bool { if this.UserDefinedRouteName != that1.UserDefinedRouteName { return false } + if that1.CloudRouteAttributes == nil { + if this.CloudRouteAttributes != nil { + return false + } + } else if this.CloudRouteAttributes == nil { + return false + } else if !this.CloudRouteAttributes.Equal(that1.CloudRouteAttributes) { + return false + } + return true +} +func (this *RouteType_Aws) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteType_Aws) + if !ok { + that2, ok := that.(RouteType_Aws) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Aws.Equal(that1.Aws) { + return false + } + return true +} +func (this *RouteType_Gcp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteType_Gcp) + if !ok { + that2, ok := that.(RouteType_Gcp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Gcp.Equal(that1.Gcp) { + return false + } return true } func (this *SiteType) Equal(that interface{}) bool { @@ -2942,6 +3634,15 @@ func (this *SiteType) Equal(that interface{}) bool { if this.SiteType != that1.SiteType { return false } + if !this.ProviderInfo.Equal(that1.ProviderInfo) { + return false + } + if this.GatewayType != that1.GatewayType { + return false + } + if this.AppType != that1.AppType { + return false + } return true } func (this *SiteMeshGroupType) Equal(that interface{}) bool { @@ -3157,6 +3858,9 @@ func (this *NetworkInterfaceType) Equal(that interface{}) bool { if this.Name != that1.Name { return false } + if !this.F5XcStatus.Equal(that1.F5XcStatus) { + return false + } return true } func (this *AddressInfoType) Equal(that interface{}) bool { @@ -3455,8 +4159,78 @@ func (this *AWSPolicyType) Equal(that interface{}) bool { } return true } -func (this *MetaType) GoString() string { - if this == nil { +func (this *AzureResourceGroupInfo) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AzureResourceGroupInfo) + if !ok { + that2, ok := that.(AzureResourceGroupInfo) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SiteRg != that1.SiteRg { + return false + } + if this.VirtualNetworkRg != that1.VirtualNetworkRg { + return false + } + return true +} +func (this *ProviderInfo) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProviderInfo) + if !ok { + that2, ok := that.(ProviderInfo) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Region != that1.Region { + return false + } + if len(this.GcpZones) != len(that1.GcpZones) { + return false + } + for i := range this.GcpZones { + if this.GcpZones[i] != that1.GcpZones[i] { + return false + } + } + if !this.AzureRgInfo.Equal(that1.AzureRgInfo) { + return false + } + if len(this.CloudLink) != len(that1.CloudLink) { + return false + } + for i := range this.CloudLink { + if !this.CloudLink[i].Equal(that1.CloudLink[i]) { + return false + } + } + return true +} +func (this *MetaType) GoString() string { + if this == nil { return "nil" } s := make([]string, 0, 12) @@ -3540,7 +4314,7 @@ func (this *InstanceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 15) + s := make([]string, 0, 16) s = append(s, "&topology.InstanceType{") if this.Interfaces != nil { s = append(s, "Interfaces: "+fmt.Sprintf("%#v", this.Interfaces)+",\n") @@ -3555,6 +4329,7 @@ func (this *InstanceType) GoString() string { s = append(s, "PublicDnsName: "+fmt.Sprintf("%#v", this.PublicDnsName)+",\n") s = append(s, "SecurityGroup: "+fmt.Sprintf("%#v", this.SecurityGroup)+",\n") s = append(s, "AvailabilityZone: "+fmt.Sprintf("%#v", this.AvailabilityZone)+",\n") + s = append(s, "F5XcNodeName: "+fmt.Sprintf("%#v", this.F5XcNodeName)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -3601,11 +4376,33 @@ func (this *RouteTableType) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *GCPRouteAttributes) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&topology.GCPRouteAttributes{") + s = append(s, "Priority: "+fmt.Sprintf("%#v", this.Priority)+",\n") + s = append(s, "IpVersion: "+fmt.Sprintf("%#v", this.IpVersion)+",\n") + s = append(s, "ScopeLimits: "+fmt.Sprintf("%#v", this.ScopeLimits)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AWSRouteAttributes) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&topology.AWSRouteAttributes{") + s = append(s, "Propagated: "+fmt.Sprintf("%#v", this.Propagated)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} func (this *RouteType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 10) + s := make([]string, 0, 12) s = append(s, "&topology.RouteType{") s = append(s, "Destination: "+fmt.Sprintf("%#v", this.Destination)+",\n") s = append(s, "Nexthop: "+fmt.Sprintf("%#v", this.Nexthop)+",\n") @@ -3613,14 +4410,33 @@ func (this *RouteType) GoString() string { s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") s = append(s, "NextHopType: "+fmt.Sprintf("%#v", this.NextHopType)+",\n") s = append(s, "UserDefinedRouteName: "+fmt.Sprintf("%#v", this.UserDefinedRouteName)+",\n") + if this.CloudRouteAttributes != nil { + s = append(s, "CloudRouteAttributes: "+fmt.Sprintf("%#v", this.CloudRouteAttributes)+",\n") + } s = append(s, "}") return strings.Join(s, "") } +func (this *RouteType_Aws) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&topology.RouteType_Aws{` + + `Aws:` + fmt.Sprintf("%#v", this.Aws) + `}`}, ", ") + return s +} +func (this *RouteType_Gcp) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&topology.RouteType_Gcp{` + + `Gcp:` + fmt.Sprintf("%#v", this.Gcp) + `}`}, ", ") + return s +} func (this *SiteType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 8) + s := make([]string, 0, 11) s = append(s, "&topology.SiteType{") if this.Network != nil { s = append(s, "Network: "+fmt.Sprintf("%#v", this.Network)+",\n") @@ -3632,6 +4448,11 @@ func (this *SiteType) GoString() string { s = append(s, "DcClusterGroup: "+fmt.Sprintf("%#v", this.DcClusterGroup)+",\n") } s = append(s, "SiteType: "+fmt.Sprintf("%#v", this.SiteType)+",\n") + if this.ProviderInfo != nil { + s = append(s, "ProviderInfo: "+fmt.Sprintf("%#v", this.ProviderInfo)+",\n") + } + s = append(s, "GatewayType: "+fmt.Sprintf("%#v", this.GatewayType)+",\n") + s = append(s, "AppType: "+fmt.Sprintf("%#v", this.AppType)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -3698,7 +4519,7 @@ func (this *NetworkInterfaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 10) + s := make([]string, 0, 11) s = append(s, "&topology.NetworkInterfaceType{") if this.Subnet != nil { s = append(s, "Subnet: "+fmt.Sprintf("%#v", this.Subnet)+",\n") @@ -3712,6 +4533,9 @@ func (this *NetworkInterfaceType) GoString() string { } s = append(s, "SecurityGroup: "+fmt.Sprintf("%#v", this.SecurityGroup)+",\n") s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + if this.F5XcStatus != nil { + s = append(s, "F5XcStatus: "+fmt.Sprintf("%#v", this.F5XcStatus)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -3828,6 +4652,34 @@ func (this *AWSPolicyType) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *AzureResourceGroupInfo) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&topology.AzureResourceGroupInfo{") + s = append(s, "SiteRg: "+fmt.Sprintf("%#v", this.SiteRg)+",\n") + s = append(s, "VirtualNetworkRg: "+fmt.Sprintf("%#v", this.VirtualNetworkRg)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ProviderInfo) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&topology.ProviderInfo{") + s = append(s, "Region: "+fmt.Sprintf("%#v", this.Region)+",\n") + s = append(s, "GcpZones: "+fmt.Sprintf("%#v", this.GcpZones)+",\n") + if this.AzureRgInfo != nil { + s = append(s, "AzureRgInfo: "+fmt.Sprintf("%#v", this.AzureRgInfo)+",\n") + } + if this.CloudLink != nil { + s = append(s, "CloudLink: "+fmt.Sprintf("%#v", this.CloudLink)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} func valueToGoStringTypes(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -4158,6 +5010,13 @@ func (m *InstanceType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.F5XcNodeName) > 0 { + i -= len(m.F5XcNodeName) + copy(dAtA[i:], m.F5XcNodeName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.F5XcNodeName))) + i-- + dAtA[i] = 0x62 + } if len(m.AvailabilityZone) > 0 { i -= len(m.AvailabilityZone) copy(dAtA[i:], m.AvailabilityZone) @@ -4424,6 +5283,83 @@ func (m *RouteTableType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *GCPRouteAttributes) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GCPRouteAttributes) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GCPRouteAttributes) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ScopeLimits) > 0 { + for iNdEx := len(m.ScopeLimits) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ScopeLimits[iNdEx]) + copy(dAtA[i:], m.ScopeLimits[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ScopeLimits[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.IpVersion) > 0 { + i -= len(m.IpVersion) + copy(dAtA[i:], m.IpVersion) + i = encodeVarintTypes(dAtA, i, uint64(len(m.IpVersion))) + i-- + dAtA[i] = 0x12 + } + if m.Priority != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Priority)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *AWSRouteAttributes) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AWSRouteAttributes) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AWSRouteAttributes) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Propagated { + i-- + if m.Propagated { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + func (m *RouteType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4444,6 +5380,15 @@ func (m *RouteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.CloudRouteAttributes != nil { + { + size := m.CloudRouteAttributes.Size() + i -= size + if _, err := m.CloudRouteAttributes.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if len(m.UserDefinedRouteName) > 0 { i -= len(m.UserDefinedRouteName) copy(dAtA[i:], m.UserDefinedRouteName) @@ -4483,6 +5428,48 @@ func (m *RouteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *RouteType_Aws) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteType_Aws) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Aws != nil { + { + size, err := m.Aws.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *RouteType_Gcp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteType_Gcp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Gcp != nil { + { + size, err := m.Gcp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} func (m *SiteType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4503,6 +5490,28 @@ func (m *SiteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.AppType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.AppType)) + i-- + dAtA[i] = 0x38 + } + if m.GatewayType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.GatewayType)) + i-- + dAtA[i] = 0x30 + } + if m.ProviderInfo != nil { + { + size, err := m.ProviderInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } if m.SiteType != 0 { i = encodeVarintTypes(dAtA, i, uint64(m.SiteType)) i-- @@ -4755,6 +5764,18 @@ func (m *NetworkInterfaceType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.F5XcStatus != nil { + { + size, err := m.F5XcStatus.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } if len(m.Name) > 0 { i -= len(m.Name) copy(dAtA[i:], m.Name) @@ -5210,25 +6231,127 @@ func (m *AWSPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { - offset -= sovTypes(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ +func (m *AzureResourceGroupInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - dAtA[offset] = uint8(v) - return base + return dAtA[:n], nil } -func (m *MetaType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Id) - if l > 0 { + +func (m *AzureResourceGroupInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AzureResourceGroupInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.VirtualNetworkRg) > 0 { + i -= len(m.VirtualNetworkRg) + copy(dAtA[i:], m.VirtualNetworkRg) + i = encodeVarintTypes(dAtA, i, uint64(len(m.VirtualNetworkRg))) + i-- + dAtA[i] = 0x12 + } + if len(m.SiteRg) > 0 { + i -= len(m.SiteRg) + copy(dAtA[i:], m.SiteRg) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SiteRg))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ProviderInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ProviderInfo) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProviderInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.CloudLink) > 0 { + for iNdEx := len(m.CloudLink) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CloudLink[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + } + if m.AzureRgInfo != nil { + { + size, err := m.AzureRgInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if len(m.GcpZones) > 0 { + for iNdEx := len(m.GcpZones) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.GcpZones[iNdEx]) + copy(dAtA[i:], m.GcpZones[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.GcpZones[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Region) > 0 { + i -= len(m.Region) + copy(dAtA[i:], m.Region) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Region))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *MetaType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Id) + if l > 0 { n += 1 + l + sovTypes(uint64(l)) } l = len(m.Name) @@ -5416,6 +6539,10 @@ func (m *InstanceType) Size() (n int) { if l > 0 { n += 1 + l + sovTypes(uint64(l)) } + l = len(m.F5XcNodeName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } return n } @@ -5491,6 +6618,40 @@ func (m *RouteTableType) Size() (n int) { return n } +func (m *GCPRouteAttributes) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Priority != 0 { + n += 1 + sovTypes(uint64(m.Priority)) + } + l = len(m.IpVersion) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.ScopeLimits) > 0 { + for _, s := range m.ScopeLimits { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *AWSRouteAttributes) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Propagated { + n += 2 + } + return n +} + func (m *RouteType) Size() (n int) { if m == nil { return 0 @@ -5518,9 +6679,36 @@ func (m *RouteType) Size() (n int) { if l > 0 { n += 1 + l + sovTypes(uint64(l)) } + if m.CloudRouteAttributes != nil { + n += m.CloudRouteAttributes.Size() + } return n } +func (m *RouteType_Aws) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Aws != nil { + l = m.Aws.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *RouteType_Gcp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Gcp != nil { + l = m.Gcp.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *SiteType) Size() (n int) { if m == nil { return 0 @@ -5548,6 +6736,16 @@ func (m *SiteType) Size() (n int) { if m.SiteType != 0 { n += 1 + sovTypes(uint64(m.SiteType)) } + if m.ProviderInfo != nil { + l = m.ProviderInfo.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.GatewayType != 0 { + n += 1 + sovTypes(uint64(m.GatewayType)) + } + if m.AppType != 0 { + n += 1 + sovTypes(uint64(m.AppType)) + } return n } @@ -5674,6 +6872,10 @@ func (m *NetworkInterfaceType) Size() (n int) { if l > 0 { n += 1 + l + sovTypes(uint64(l)) } + if m.F5XcStatus != nil { + l = m.F5XcStatus.Size() + n += 1 + l + sovTypes(uint64(l)) + } return n } @@ -5843,6 +7045,52 @@ func (m *AWSPolicyType) Size() (n int) { return n } +func (m *AzureResourceGroupInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SiteRg) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.VirtualNetworkRg) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ProviderInfo) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Region) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.GcpZones) > 0 { + for _, s := range m.GcpZones { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.AzureRgInfo != nil { + l = m.AzureRgInfo.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.CloudLink) > 0 { + for _, e := range m.CloudLink { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + func sovTypes(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -5967,6 +7215,7 @@ func (this *InstanceType) String() string { `PublicDnsName:` + fmt.Sprintf("%v", this.PublicDnsName) + `,`, `SecurityGroup:` + fmt.Sprintf("%v", this.SecurityGroup) + `,`, `AvailabilityZone:` + fmt.Sprintf("%v", this.AvailabilityZone) + `,`, + `F5XcNodeName:` + fmt.Sprintf("%v", this.F5XcNodeName) + `,`, `}`, }, "") return s @@ -6035,6 +7284,28 @@ func (this *RouteTableType) String() string { }, "") return s } +func (this *GCPRouteAttributes) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GCPRouteAttributes{`, + `Priority:` + fmt.Sprintf("%v", this.Priority) + `,`, + `IpVersion:` + fmt.Sprintf("%v", this.IpVersion) + `,`, + `ScopeLimits:` + fmt.Sprintf("%v", this.ScopeLimits) + `,`, + `}`, + }, "") + return s +} +func (this *AWSRouteAttributes) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AWSRouteAttributes{`, + `Propagated:` + fmt.Sprintf("%v", this.Propagated) + `,`, + `}`, + }, "") + return s +} func (this *RouteType) String() string { if this == nil { return "nil" @@ -6046,6 +7317,27 @@ func (this *RouteType) String() string { `State:` + fmt.Sprintf("%v", this.State) + `,`, `NextHopType:` + fmt.Sprintf("%v", this.NextHopType) + `,`, `UserDefinedRouteName:` + fmt.Sprintf("%v", this.UserDefinedRouteName) + `,`, + `CloudRouteAttributes:` + fmt.Sprintf("%v", this.CloudRouteAttributes) + `,`, + `}`, + }, "") + return s +} +func (this *RouteType_Aws) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteType_Aws{`, + `Aws:` + strings.Replace(fmt.Sprintf("%v", this.Aws), "AWSRouteAttributes", "AWSRouteAttributes", 1) + `,`, + `}`, + }, "") + return s +} +func (this *RouteType_Gcp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteType_Gcp{`, + `Gcp:` + strings.Replace(fmt.Sprintf("%v", this.Gcp), "GCPRouteAttributes", "GCPRouteAttributes", 1) + `,`, `}`, }, "") return s @@ -6074,6 +7366,9 @@ func (this *SiteType) String() string { `Tgw:` + repeatedStringForTgw + `,`, `DcClusterGroup:` + repeatedStringForDcClusterGroup + `,`, `SiteType:` + fmt.Sprintf("%v", this.SiteType) + `,`, + `ProviderInfo:` + strings.Replace(this.ProviderInfo.String(), "ProviderInfo", "ProviderInfo", 1) + `,`, + `GatewayType:` + fmt.Sprintf("%v", this.GatewayType) + `,`, + `AppType:` + fmt.Sprintf("%v", this.AppType) + `,`, `}`, }, "") return s @@ -6174,6 +7469,7 @@ func (this *NetworkInterfaceType) String() string { `PublicAddress:` + repeatedStringForPublicAddress + `,`, `SecurityGroup:` + fmt.Sprintf("%v", this.SecurityGroup) + `,`, `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `F5XcStatus:` + strings.Replace(fmt.Sprintf("%v", this.F5XcStatus), "InterfaceStatus", "site.InterfaceStatus", 1) + `,`, `}`, }, "") return s @@ -6304,6 +7600,35 @@ func (this *AWSPolicyType) String() string { }, "") return s } +func (this *AzureResourceGroupInfo) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AzureResourceGroupInfo{`, + `SiteRg:` + fmt.Sprintf("%v", this.SiteRg) + `,`, + `VirtualNetworkRg:` + fmt.Sprintf("%v", this.VirtualNetworkRg) + `,`, + `}`, + }, "") + return s +} +func (this *ProviderInfo) String() string { + if this == nil { + return "nil" + } + repeatedStringForCloudLink := "[]*ObjectRefType{" + for _, f := range this.CloudLink { + repeatedStringForCloudLink += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForCloudLink += "}" + s := strings.Join([]string{`&ProviderInfo{`, + `Region:` + fmt.Sprintf("%v", this.Region) + `,`, + `GcpZones:` + fmt.Sprintf("%v", this.GcpZones) + `,`, + `AzureRgInfo:` + strings.Replace(this.AzureRgInfo.String(), "AzureResourceGroupInfo", "AzureResourceGroupInfo", 1) + `,`, + `CloudLink:` + repeatedStringForCloudLink + `,`, + `}`, + }, "") + return s +} func valueToStringTypes(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -7647,6 +8972,38 @@ func (m *InstanceType) Unmarshal(dAtA []byte) error { } m.AvailabilityZone = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcNodeName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.F5XcNodeName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -8094,7 +9451,7 @@ func (m *RouteTableType) Unmarshal(dAtA []byte) error { } return nil } -func (m *RouteType) Unmarshal(dAtA []byte) error { +func (m *GCPRouteAttributes) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -8117,17 +9474,226 @@ func (m *RouteType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RouteType: wiretype end group for non-group") + return fmt.Errorf("proto: GCPRouteAttributes: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RouteType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GCPRouteAttributes: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Destination", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Priority", wireType) } - var stringLen uint64 + m.Priority = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Priority |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.IpVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ScopeLimits", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ScopeLimits = append(m.ScopeLimits, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AWSRouteAttributes) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AWSRouteAttributes: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AWSRouteAttributes: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Propagated", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Propagated = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RouteType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RouteType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RouteType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Destination", wireType) + } + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -8276,6 +9842,76 @@ func (m *RouteType) Unmarshal(dAtA []byte) error { } m.UserDefinedRouteName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Aws", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AWSRouteAttributes{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CloudRouteAttributes = &RouteType_Aws{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Gcp", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &GCPRouteAttributes{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CloudRouteAttributes = &RouteType_Gcp{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -8450,6 +10086,80 @@ func (m *SiteType) Unmarshal(dAtA []byte) error { break } } + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProviderInfo", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ProviderInfo == nil { + m.ProviderInfo = &ProviderInfo{} + } + if err := m.ProviderInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field GatewayType", wireType) + } + m.GatewayType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.GatewayType |= GatewayTypeEnum(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AppType", wireType) + } + m.AppType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AppType |= SiteAppTypeEnum(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -9054,11 +10764,164 @@ func (m *NetworkInterfaceType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SecurityGroup = append(m.SecurityGroup, string(dAtA[iNdEx:postIndex])) + m.SecurityGroup = append(m.SecurityGroup, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcStatus", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.F5XcStatus == nil { + m.F5XcStatus = &site.InterfaceStatus{} + } + if err := m.F5XcStatus.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AddressInfoType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AddressInfoType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AddressInfoType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 6: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DnsName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -9086,8 +10949,28 @@ func (m *NetworkInterfaceType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) + m.DnsName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Primary", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Primary = bool(v != 0) default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -9112,7 +10995,7 @@ func (m *NetworkInterfaceType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AddressInfoType) Unmarshal(dAtA []byte) error { +func (m *TunnelSetType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9135,17 +11018,17 @@ func (m *AddressInfoType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AddressInfoType: wiretype end group for non-group") + return fmt.Errorf("proto: TunnelSetType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AddressInfoType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TunnelSetType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9155,29 +11038,31 @@ func (m *AddressInfoType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + m.Site = append(m.Site, &schema.ObjectRefType{}) + if err := m.Site[len(m.Site)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DnsName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Tunnels", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9187,44 +11072,26 @@ func (m *AddressInfoType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.DnsName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Primary", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } + m.Tunnels = append(m.Tunnels, &TunnelType{}) + if err := m.Tunnels[len(m.Tunnels)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.Primary = bool(v != 0) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -9249,7 +11116,7 @@ func (m *AddressInfoType) Unmarshal(dAtA []byte) error { } return nil } -func (m *TunnelSetType) Unmarshal(dAtA []byte) error { +func (m *NetworkPeerType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9272,15 +11139,15 @@ func (m *TunnelSetType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TunnelSetType: wiretype end group for non-group") + return fmt.Errorf("proto: NetworkPeerType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TunnelSetType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: NetworkPeerType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VnetPeer", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9307,14 +11174,68 @@ func (m *TunnelSetType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Site = append(m.Site, &schema.ObjectRefType{}) - if err := m.Site[len(m.Site)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &AzureVnetPeer{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.PeerChoice = &NetworkPeerType_VnetPeer{v} iNdEx = postIndex - case 2: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AzureVnetPeer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AzureVnetPeer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AzureVnetPeer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tunnels", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PeerNetwork", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9341,11 +11262,30 @@ func (m *TunnelSetType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Tunnels = append(m.Tunnels, &TunnelType{}) - if err := m.Tunnels[len(m.Tunnels)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.PeerNetwork = append(m.PeerNetwork, &schema.ObjectRefType{}) + if err := m.PeerNetwork[len(m.PeerNetwork)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PeeringState", wireType) + } + m.PeeringState = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PeeringState |= PeeringStateEnum(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -9370,7 +11310,7 @@ func (m *TunnelSetType) Unmarshal(dAtA []byte) error { } return nil } -func (m *NetworkPeerType) Unmarshal(dAtA []byte) error { +func (m *TunnelType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9393,15 +11333,85 @@ func (m *NetworkPeerType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: NetworkPeerType: wiretype end group for non-group") + return fmt.Errorf("proto: TunnelType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: NetworkPeerType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: TunnelType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connection", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Connection == nil { + m.Connection = &site.TunnelConnectionStatus{} + } + if err := m.Connection.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field VnetPeer", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Site = append(m.Site, &schema.ObjectRefType{}) + if err := m.Site[len(m.Site)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tgw", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9428,11 +11438,10 @@ func (m *NetworkPeerType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &AzureVnetPeer{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Tgw = append(m.Tgw, &schema.ObjectRefType{}) + if err := m.Tgw[len(m.Tgw)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.PeerChoice = &NetworkPeerType_VnetPeer{v} iNdEx = postIndex default: iNdEx = preIndex @@ -9458,7 +11467,7 @@ func (m *NetworkPeerType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AzureVnetPeer) Unmarshal(dAtA []byte) error { +func (m *CloudPolicyType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9481,15 +11490,15 @@ func (m *AzureVnetPeer) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AzureVnetPeer: wiretype end group for non-group") + return fmt.Errorf("proto: CloudPolicyType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AzureVnetPeer: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CloudPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PeerNetwork", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Aws", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -9516,16 +11525,17 @@ func (m *AzureVnetPeer) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PeerNetwork = append(m.PeerNetwork, &schema.ObjectRefType{}) - if err := m.PeerNetwork[len(m.PeerNetwork)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &AWSPolicyType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.CloudType = &CloudPolicyType_Aws{v} iNdEx = postIndex - case 2: + case 5: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PeeringState", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PermissionsPopulated", wireType) } - m.PeeringState = 0 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9535,11 +11545,44 @@ func (m *AzureVnetPeer) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.PeeringState |= PeeringStateEnum(b&0x7F) << shift + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.PermissionsPopulated = bool(v != 0) + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CloudProviderError", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CloudProviderError = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -9564,7 +11607,7 @@ func (m *AzureVnetPeer) Unmarshal(dAtA []byte) error { } return nil } -func (m *TunnelType) Unmarshal(dAtA []byte) error { +func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9587,17 +11630,17 @@ func (m *TunnelType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: TunnelType: wiretype end group for non-group") + return fmt.Errorf("proto: AWSPolicyType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: TunnelType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AWSPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Connection", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field SupportAwsVpcSite", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9607,33 +11650,17 @@ func (m *TunnelType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Connection == nil { - m.Connection = &site.TunnelConnectionStatus{} - } - if err := m.Connection.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex + m.SupportAwsVpcSite = bool(v != 0) case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Site", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MissingPermissionsAwsVpcSite", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9643,31 +11670,49 @@ func (m *TunnelType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Site = append(m.Site, &schema.ObjectRefType{}) - if err := m.Site[len(m.Site)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MissingPermissionsAwsVpcSite = append(m.MissingPermissionsAwsVpcSite, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field SupportAwsTgwSite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.SupportAwsTgwSite = bool(v != 0) + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tgw", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MissingPermissionsAwsTgwSite", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9677,25 +11722,23 @@ func (m *TunnelType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Tgw = append(m.Tgw, &schema.ObjectRefType{}) - if err := m.Tgw[len(m.Tgw)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.MissingPermissionsAwsTgwSite = append(m.MissingPermissionsAwsTgwSite, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -9721,7 +11764,7 @@ func (m *TunnelType) Unmarshal(dAtA []byte) error { } return nil } -func (m *CloudPolicyType) Unmarshal(dAtA []byte) error { +func (m *AzureResourceGroupInfo) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9744,17 +11787,17 @@ func (m *CloudPolicyType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CloudPolicyType: wiretype end group for non-group") + return fmt.Errorf("proto: AzureResourceGroupInfo: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CloudPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AzureResourceGroupInfo: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Aws", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SiteRg", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9764,50 +11807,27 @@ func (m *CloudPolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &AWSPolicyType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CloudType = &CloudPolicyType_Aws{v} + m.SiteRg = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PermissionsPopulated", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.PermissionsPopulated = bool(v != 0) - case 6: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CloudProviderError", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VirtualNetworkRg", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -9835,7 +11855,7 @@ func (m *CloudPolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.CloudProviderError = string(dAtA[iNdEx:postIndex]) + m.VirtualNetworkRg = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -9861,7 +11881,7 @@ func (m *CloudPolicyType) Unmarshal(dAtA []byte) error { } return nil } -func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { +func (m *ProviderInfo) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -9884,17 +11904,17 @@ func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AWSPolicyType: wiretype end group for non-group") + return fmt.Errorf("proto: ProviderInfo: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AWSPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ProviderInfo: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field SupportAwsVpcSite", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType) } - var v int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9904,15 +11924,27 @@ func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - m.SupportAwsVpcSite = bool(v != 0) + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Region = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MissingPermissionsAwsVpcSite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GcpZones", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -9940,13 +11972,13 @@ func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.MissingPermissionsAwsVpcSite = append(m.MissingPermissionsAwsVpcSite, string(dAtA[iNdEx:postIndex])) + m.GcpZones = append(m.GcpZones, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field SupportAwsTgwSite", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AzureRgInfo", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9956,17 +11988,33 @@ func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.SupportAwsTgwSite = bool(v != 0) + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AzureRgInfo == nil { + m.AzureRgInfo = &AzureResourceGroupInfo{} + } + if err := m.AzureRgInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MissingPermissionsAwsTgwSite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CloudLink", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -9976,23 +12024,25 @@ func (m *AWSPolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.MissingPermissionsAwsTgwSite = append(m.MissingPermissionsAwsTgwSite, string(dAtA[iNdEx:postIndex])) + m.CloudLink = append(m.CloudLink, &schema.ObjectRefType{}) + if err := m.CloudLink[len(m.CloudLink)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex diff --git a/pbgo/extschema/schema/topology/types.vesmsg.go b/pbgo/extschema/schema/topology/types.vesmsg.go index b939671be..a9458109e 100644 --- a/pbgo/extschema/schema/topology/types.vesmsg.go +++ b/pbgo/extschema/schema/topology/types.vesmsg.go @@ -15,6 +15,7 @@ import ( "gopkg.volterra.us/stdlib/errors" ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site" ves_io_schema_site_mesh_group "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/site_mesh_group" ) @@ -138,6 +139,84 @@ func AWSPolicyTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *AWSRouteAttributes) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AWSRouteAttributes) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AWSRouteAttributes) DeepCopy() *AWSRouteAttributes { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AWSRouteAttributes{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AWSRouteAttributes) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AWSRouteAttributes) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AWSRouteAttributesValidator().Validate(ctx, m, opts...) +} + +type ValidateAWSRouteAttributes struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAWSRouteAttributes) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AWSRouteAttributes) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AWSRouteAttributes got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["propagated"]; exists { + + vOpts := append(opts, db.WithValidateField("propagated")) + if err := fv(ctx, m.GetPropagated(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAWSRouteAttributesValidator = func() *ValidateAWSRouteAttributes { + v := &ValidateAWSRouteAttributes{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AWSRouteAttributesValidator() db.Validator { + return DefaultAWSRouteAttributesValidator +} + +// augmented methods on protoc/std generated struct + func (m *AddressInfoType) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -234,6 +313,93 @@ func AddressInfoTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *AzureResourceGroupInfo) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AzureResourceGroupInfo) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AzureResourceGroupInfo) DeepCopy() *AzureResourceGroupInfo { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AzureResourceGroupInfo{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AzureResourceGroupInfo) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AzureResourceGroupInfo) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AzureResourceGroupInfoValidator().Validate(ctx, m, opts...) +} + +type ValidateAzureResourceGroupInfo struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAzureResourceGroupInfo) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AzureResourceGroupInfo) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AzureResourceGroupInfo got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["site_rg"]; exists { + + vOpts := append(opts, db.WithValidateField("site_rg")) + if err := fv(ctx, m.GetSiteRg(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["virtual_network_rg"]; exists { + + vOpts := append(opts, db.WithValidateField("virtual_network_rg")) + if err := fv(ctx, m.GetVirtualNetworkRg(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAzureResourceGroupInfoValidator = func() *ValidateAzureResourceGroupInfo { + v := &ValidateAzureResourceGroupInfo{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AzureResourceGroupInfoValidator() db.Validator { + return DefaultAzureResourceGroupInfoValidator +} + +// augmented methods on protoc/std generated struct + func (m *AzureVnetPeer) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -558,6 +724,105 @@ func DCClusterGroupTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *GCPRouteAttributes) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GCPRouteAttributes) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GCPRouteAttributes) DeepCopy() *GCPRouteAttributes { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GCPRouteAttributes{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GCPRouteAttributes) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GCPRouteAttributes) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GCPRouteAttributesValidator().Validate(ctx, m, opts...) +} + +type ValidateGCPRouteAttributes struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGCPRouteAttributes) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GCPRouteAttributes) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GCPRouteAttributes got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ip_version"]; exists { + + vOpts := append(opts, db.WithValidateField("ip_version")) + if err := fv(ctx, m.GetIpVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["priority"]; exists { + + vOpts := append(opts, db.WithValidateField("priority")) + if err := fv(ctx, m.GetPriority(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["scope_limits"]; exists { + + vOpts := append(opts, db.WithValidateField("scope_limits")) + for idx, item := range m.GetScopeLimits() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGCPRouteAttributesValidator = func() *ValidateGCPRouteAttributes { + v := &ValidateGCPRouteAttributes{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GCPRouteAttributesValidator() db.Validator { + return DefaultGCPRouteAttributesValidator +} + +// augmented methods on protoc/std generated struct + func (m *InstanceType) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -669,6 +934,15 @@ func (v *ValidateInstanceType) Validate(ctx context.Context, pm interface{}, opt } + if fv, exists := v.FldValidators["f5xc_node_name"]; exists { + + vOpts := append(opts, db.WithValidateField("f5xc_node_name")) + if err := fv(ctx, m.GetF5XcNodeName(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["instance_type"]; exists { vOpts := append(opts, db.WithValidateField("instance_type")) @@ -754,6 +1028,8 @@ func (v *ValidateInstanceType) Validate(ctx context.Context, pm interface{}, opt var DefaultInstanceTypeValidator = func() *ValidateInstanceType { v := &ValidateInstanceType{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["interfaces"] = NetworkInterfaceTypeValidator().Validate + return v }() @@ -1158,6 +1434,15 @@ func (v *ValidateNetworkInterfaceType) Validate(ctx context.Context, pm interfac return nil } + if fv, exists := v.FldValidators["f5xc_status"]; exists { + + vOpts := append(opts, db.WithValidateField("f5xc_status")) + if err := fv(ctx, m.GetF5XcStatus(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["name"]; exists { vOpts := append(opts, db.WithValidateField("name")) @@ -1231,6 +1516,8 @@ func (v *ValidateNetworkInterfaceType) Validate(ctx context.Context, pm interfac var DefaultNetworkInterfaceTypeValidator = func() *ValidateNetworkInterfaceType { v := &ValidateNetworkInterfaceType{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["f5xc_status"] = ves_io_schema_site.InterfaceStatusValidator().Validate + return v }() @@ -1598,6 +1885,171 @@ func NetworkTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *ProviderInfo) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ProviderInfo) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ProviderInfo) DeepCopy() *ProviderInfo { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ProviderInfo{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ProviderInfo) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ProviderInfo) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProviderInfoValidator().Validate(ctx, m, opts...) +} + +func (m *ProviderInfo) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCloudLinkDRefInfo() + +} + +func (m *ProviderInfo) GetCloudLinkDRefInfo() ([]db.DRefInfo, error) { + refs := m.GetCloudLink() + if len(refs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(refs)) + for i, ref := range refs { + if ref == nil { + return nil, fmt.Errorf("ProviderInfo.cloud_link[%d] has a nil value", i) + } + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "cloud_link.Object", + RefdUID: ref.Uid, + RefdTenant: ref.Tenant, + RefdNS: ref.Namespace, + RefdName: ref.Name, + DRField: "cloud_link", + Ref: ref, + }) + } + return drInfos, nil + +} + +// GetCloudLinkDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ProviderInfo) GetCloudLinkDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "cloud_link.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: cloud_link") + } + for _, ref := range m.GetCloudLink() { + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateProviderInfo struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateProviderInfo) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProviderInfo) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ProviderInfo got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["azure_rg_info"]; exists { + + vOpts := append(opts, db.WithValidateField("azure_rg_info")) + if err := fv(ctx, m.GetAzureRgInfo(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["cloud_link"]; exists { + + vOpts := append(opts, db.WithValidateField("cloud_link")) + for idx, item := range m.GetCloudLink() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["gcp_zones"]; exists { + + vOpts := append(opts, db.WithValidateField("gcp_zones")) + for idx, item := range m.GetGcpZones() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["region"]; exists { + + vOpts := append(opts, db.WithValidateField("region")) + if err := fv(ctx, m.GetRegion(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultProviderInfoValidator = func() *ValidateProviderInfo { + v := &ValidateProviderInfo{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ProviderInfoValidator() db.Validator { + return DefaultProviderInfoValidator +} + +// augmented methods on protoc/std generated struct + func (m *RouteTableType) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -2066,6 +2518,32 @@ func (v *ValidateRouteType) Validate(ctx context.Context, pm interface{}, opts . return nil } + switch m.GetCloudRouteAttributes().(type) { + case *RouteType_Aws: + if fv, exists := v.FldValidators["cloud_route_attributes.aws"]; exists { + val := m.GetCloudRouteAttributes().(*RouteType_Aws).Aws + vOpts := append(opts, + db.WithValidateField("cloud_route_attributes"), + db.WithValidateField("aws"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteType_Gcp: + if fv, exists := v.FldValidators["cloud_route_attributes.gcp"]; exists { + val := m.GetCloudRouteAttributes().(*RouteType_Gcp).Gcp + vOpts := append(opts, + db.WithValidateField("cloud_route_attributes"), + db.WithValidateField("gcp"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["destination"]; exists { vOpts := append(opts, db.WithValidateField("destination")) @@ -2615,6 +3093,12 @@ func (m *SiteType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetProviderInfoDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetProviderInfoDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetTgwDRefInfo(); err != nil { return nil, errors.Wrap(err, "GetTgwDRefInfo() FAILED") } else { @@ -2715,6 +3199,24 @@ func (m *SiteType) GetNetworkDBEntries(ctx context.Context, d db.Interface) ([]d return entries, nil } +// GetDRefInfo for the field's type +func (m *SiteType) GetProviderInfoDRefInfo() ([]db.DRefInfo, error) { + if m.GetProviderInfo() == nil { + return nil, nil + } + + drInfos, err := m.GetProviderInfo().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetProviderInfo().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "provider_info." + dri.DRField + } + return drInfos, err + +} + func (m *SiteType) GetTgwDRefInfo() ([]db.DRefInfo, error) { refs := m.GetTgw() if len(refs) == 0 { @@ -2778,6 +3280,15 @@ func (v *ValidateSiteType) Validate(ctx context.Context, pm interface{}, opts .. return nil } + if fv, exists := v.FldValidators["app_type"]; exists { + + vOpts := append(opts, db.WithValidateField("app_type")) + if err := fv(ctx, m.GetAppType(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["dc_cluster_group"]; exists { vOpts := append(opts, db.WithValidateField("dc_cluster_group")) @@ -2790,6 +3301,15 @@ func (v *ValidateSiteType) Validate(ctx context.Context, pm interface{}, opts .. } + if fv, exists := v.FldValidators["gateway_type"]; exists { + + vOpts := append(opts, db.WithValidateField("gateway_type")) + if err := fv(ctx, m.GetGatewayType(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["network"]; exists { vOpts := append(opts, db.WithValidateField("network")) @@ -2802,6 +3322,15 @@ func (v *ValidateSiteType) Validate(ctx context.Context, pm interface{}, opts .. } + if fv, exists := v.FldValidators["provider_info"]; exists { + + vOpts := append(opts, db.WithValidateField("provider_info")) + if err := fv(ctx, m.GetProviderInfo(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["site_type"]; exists { vOpts := append(opts, db.WithValidateField("site_type")) diff --git a/pbgo/extschema/schema/trusted_ca_list/crudapi/api.vesapi.go b/pbgo/extschema/schema/trusted_ca_list/crudapi/api.vesapi.go index 4662cb54c..d2d92f765 100644 --- a/pbgo/extschema/schema/trusted_ca_list/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/trusted_ca_list/crudapi/api.vesapi.go @@ -3047,10 +3047,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/trusted_ca_list/object.pb.go b/pbgo/extschema/schema/trusted_ca_list/object.pb.go index fc2627115..b4c8c6450 100644 --- a/pbgo/extschema/schema/trusted_ca_list/object.pb.go +++ b/pbgo/extschema/schema/trusted_ca_list/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_7a8be6bf53407075 = []byte{ - // 586 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0x13, 0x41, - 0x18, 0xc6, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0x40, 0xd6, 0x4b, 0x45, 0x99, 0x90, 0x7a, 0x10, 0x8d, - 0x3b, 0x6b, 0x30, 0x46, 0x41, 0xe3, 0x01, 0x8c, 0x5c, 0x20, 0xc6, 0xd6, 0x93, 0x97, 0x66, 0x76, - 0xfa, 0x76, 0x19, 0xdd, 0xed, 0x6c, 0x66, 0x66, 0x57, 0x7a, 0x30, 0xf1, 0x23, 0xe8, 0x57, 0xf0, - 0x64, 0x4c, 0xfc, 0x0e, 0xe2, 0xc9, 0x23, 0xe1, 0xc4, 0x51, 0xb6, 0x17, 0x6f, 0xf2, 0x09, 0x8c, - 0x61, 0x96, 0x25, 0x74, 0xd3, 0xa0, 0xe1, 0x36, 0x9b, 0xf7, 0xf7, 0x3c, 0xf3, 0xce, 0xfb, 0x67, - 0xf1, 0xed, 0x14, 0x34, 0x15, 0xd2, 0xd3, 0x7c, 0x07, 0x22, 0xe6, 0x19, 0x95, 0x68, 0x03, 0xdd, - 0x0e, 0x67, 0x9d, 0x50, 0x68, 0xe3, 0x49, 0xff, 0x35, 0x70, 0x43, 0x63, 0x25, 0x8d, 0x74, 0x16, - 0x73, 0x96, 0xe6, 0x2c, 0x2d, 0xb1, 0x0b, 0x6e, 0x20, 0xcc, 0x4e, 0xe2, 0x53, 0x2e, 0x23, 0x2f, - 0x90, 0x81, 0xf4, 0xac, 0xca, 0x4f, 0x7a, 0xf6, 0xcb, 0x7e, 0xd8, 0x53, 0xee, 0xb6, 0x70, 0x6d, - 0xf4, 0x66, 0x19, 0x1b, 0x21, 0xfb, 0xfa, 0x34, 0x78, 0xeb, 0xe2, 0xb4, 0xcc, 0x20, 0x86, 0x02, - 0xbd, 0x5a, 0x42, 0xcf, 0x85, 0x9a, 0xa3, 0xa1, 0x14, 0x34, 0xf4, 0xd3, 0xd1, 0x9b, 0x9a, 0x7f, - 0x6a, 0xb8, 0xfe, 0xdc, 0xbe, 0xd2, 0x59, 0xc5, 0x53, 0x11, 0x18, 0xd6, 0x65, 0x86, 0x35, 0xd0, - 0x12, 0x5a, 0x9e, 0x5e, 0x59, 0xa4, 0xa3, 0x4f, 0xce, 0xc1, 0x6d, 0x30, 0xec, 0xe5, 0x20, 0x86, - 0xd6, 0x19, 0xee, 0x6c, 0xe1, 0x39, 0x3d, 0xd0, 0x06, 0xa2, 0xce, 0x99, 0x43, 0xd5, 0x3a, 0xdc, - 0x28, 0x39, 0xb4, 0x2d, 0x55, 0xf2, 0x99, 0xcd, 0xb5, 0xdb, 0x85, 0xdb, 0x23, 0x3c, 0xa1, 0x63, - 0xe0, 0x8d, 0x9a, 0xb5, 0xb8, 0x49, 0x2f, 0xac, 0x3b, 0x6d, 0xc7, 0xc0, 0xad, 0x8d, 0x15, 0xad, - 0x7d, 0xad, 0x7e, 0xdf, 0x6b, 0x54, 0xe7, 0xd1, 0xc1, 0x5e, 0xe3, 0x53, 0x15, 0x3f, 0xc0, 0xb5, - 0x4d, 0x30, 0xce, 0xdd, 0xde, 0xfd, 0x5d, 0xee, 0x6a, 0xe0, 0x89, 0x82, 0x08, 0xf4, 0x8e, 0xeb, - 0x33, 0x2d, 0xb8, 0x1b, 0xc9, 0xbe, 0x30, 0x52, 0xdd, 0x59, 0x4a, 0x41, 0xbb, 0x42, 0xba, 0xb1, - 0x92, 0xbb, 0x03, 0x57, 0x01, 0xeb, 0xe2, 0x55, 0x3c, 0xd9, 0x82, 0x38, 0x64, 0x1c, 0x1c, 0x3a, - 0x5e, 0x9c, 0x68, 0x28, 0x2b, 0xdf, 0x2a, 0x61, 0x00, 0x3f, 0xc4, 0xf5, 0x0d, 0x05, 0xcc, 0x5c, - 0x4a, 0xf9, 0x14, 0x42, 0xb8, 0x94, 0x72, 0x62, 0x4b, 0xe8, 0x4b, 0x3c, 0xb4, 0xd9, 0xc2, 0x53, - 0x45, 0x05, 0x9d, 0x67, 0x78, 0x32, 0xe0, 0x1d, 0x5b, 0xfb, 0xbc, 0x7d, 0xee, 0x3f, 0x6a, 0xbf, - 0x19, 0x4a, 0x9f, 0x85, 0x67, 0x1d, 0xa8, 0x07, 0xfc, 0xe4, 0xdc, 0xfc, 0x8d, 0xf0, 0x4c, 0xdb, - 0x30, 0x93, 0xe8, 0xff, 0x1e, 0xad, 0x1c, 0x1f, 0x33, 0x5a, 0x2f, 0xf0, 0x74, 0xbe, 0x85, 0x1d, - 0x05, 0x3d, 0xdd, 0xa8, 0x2e, 0xd5, 0x96, 0xa7, 0x57, 0xae, 0x8f, 0x1d, 0xcc, 0x16, 0xf4, 0x4e, - 0xc4, 0xeb, 0xce, 0x97, 0x77, 0x73, 0xa5, 0x4c, 0x5b, 0x58, 0x16, 0x88, 0x76, 0x1e, 0x63, 0xcc, - 0x65, 0xbf, 0x2b, 0xec, 0x1e, 0x34, 0x6a, 0x63, 0x1d, 0x37, 0x0a, 0xc0, 0xa6, 0x73, 0x8e, 0x5f, - 0xbb, 0x72, 0xf0, 0x64, 0x1e, 0xcf, 0xe2, 0x99, 0x22, 0x43, 0x9a, 0x88, 0xee, 0xfa, 0x47, 0xb4, - 0x7f, 0x44, 0x2a, 0x87, 0x47, 0xa4, 0x72, 0x7c, 0x44, 0xd0, 0xfb, 0x8c, 0xa0, 0xcf, 0x19, 0x41, - 0x3f, 0x32, 0x82, 0xf6, 0x33, 0x82, 0x0e, 0x33, 0x82, 0x7e, 0x66, 0x04, 0xfd, 0xca, 0x48, 0xe5, - 0x38, 0x23, 0xe8, 0xc3, 0x90, 0x54, 0xbe, 0x0d, 0x09, 0xda, 0x1f, 0x92, 0xca, 0xe1, 0x90, 0x54, - 0x5e, 0xb5, 0x03, 0x19, 0xbf, 0x09, 0x68, 0x2a, 0x43, 0x03, 0x4a, 0x31, 0x9a, 0x68, 0xcf, 0x1e, - 0x7a, 0x52, 0x45, 0x27, 0xcd, 0x4a, 0x45, 0x17, 0x94, 0x5b, 0x84, 0xbd, 0xd8, 0x0f, 0xa4, 0x07, - 0xbb, 0xe6, 0x74, 0xb1, 0xc7, 0xff, 0x25, 0xfc, 0xba, 0xdd, 0xf0, 0x7b, 0x7f, 0x03, 0x00, 0x00, - 0xff, 0xff, 0x14, 0x8d, 0xbb, 0x10, 0xe4, 0x04, 0x00, 0x00, + // 604 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x4e, + 0x14, 0xc0, 0x77, 0x58, 0xfe, 0x0b, 0x19, 0x08, 0x90, 0xfe, 0x2f, 0x2b, 0xca, 0x84, 0xac, 0x07, + 0xd1, 0xd8, 0x36, 0xc1, 0x78, 0x10, 0x8d, 0x07, 0x30, 0x72, 0x81, 0x18, 0xbb, 0x26, 0x2a, 0x97, + 0xcd, 0x74, 0xfa, 0xb6, 0x8c, 0xb6, 0x3b, 0xcd, 0xcc, 0xb4, 0xb2, 0x07, 0x13, 0x3f, 0x82, 0x7e, + 0x02, 0xaf, 0xc6, 0x4f, 0x21, 0x7a, 0xf1, 0x64, 0x08, 0x27, 0x8e, 0xd2, 0xbd, 0x78, 0x93, 0x8f, + 0x60, 0x98, 0x52, 0x64, 0x9b, 0x0d, 0x7a, 0x90, 0xdb, 0x34, 0xef, 0xf7, 0x7e, 0x7d, 0x33, 0xf3, + 0xe6, 0xe1, 0x1b, 0x19, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x6d, 0x88, 0xa9, 0xab, 0x65, 0xaa, 0x34, + 0x04, 0x1d, 0x46, 0x3b, 0x11, 0x57, 0xda, 0x15, 0xfe, 0x0b, 0x60, 0xda, 0x49, 0xa4, 0xd0, 0xc2, + 0x5a, 0x28, 0x58, 0xa7, 0x60, 0x9d, 0x0a, 0x3b, 0x6f, 0x87, 0x5c, 0x6f, 0xa7, 0xbe, 0xc3, 0x44, + 0xec, 0x86, 0x22, 0x14, 0xae, 0xc9, 0xf2, 0xd3, 0xae, 0xf9, 0x32, 0x1f, 0x66, 0x55, 0xd8, 0xe6, + 0x2f, 0x0f, 0xff, 0x59, 0x24, 0x9a, 0x8b, 0x9e, 0x3a, 0x09, 0x5e, 0x3f, 0xbf, 0x2c, 0xdd, 0x4f, + 0xa0, 0x44, 0x2f, 0x55, 0xd0, 0x33, 0xa1, 0xd6, 0x70, 0x28, 0x03, 0x05, 0xbd, 0x6c, 0xf8, 0x4f, + 0xad, 0xf7, 0xff, 0xe1, 0xc6, 0x23, 0xb3, 0x4b, 0xeb, 0x0e, 0x9e, 0x8c, 0x41, 0xd3, 0x80, 0x6a, + 0xda, 0x44, 0x8b, 0x68, 0x69, 0x6a, 0x79, 0xc1, 0x19, 0xde, 0x72, 0x01, 0x6e, 0x82, 0xa6, 0x4f, + 0xfa, 0x09, 0x78, 0xa7, 0xb8, 0xb5, 0x81, 0x67, 0x55, 0x5f, 0x69, 0x88, 0x3b, 0xa7, 0x86, 0x31, + 0x63, 0xb8, 0x5a, 0x31, 0xb4, 0x0d, 0x55, 0xf1, 0xcc, 0x14, 0xb9, 0x9b, 0xa5, 0xed, 0x2e, 0x1e, + 0x57, 0x09, 0xb0, 0x66, 0xdd, 0x28, 0xae, 0x39, 0xe7, 0x9e, 0xbb, 0xd3, 0x4e, 0x80, 0x19, 0x8d, + 0x49, 0x5a, 0xf9, 0x56, 0xff, 0xbc, 0xdb, 0x1c, 0x9b, 0x43, 0xfb, 0xbb, 0xcd, 0x2f, 0x75, 0xfc, + 0x1c, 0xd7, 0xd7, 0x41, 0x5b, 0x5e, 0xf7, 0xf6, 0x0e, 0xb3, 0x15, 0xb0, 0x54, 0x42, 0x0c, 0x6a, + 0xdb, 0xf6, 0xa9, 0xe2, 0xcc, 0x8e, 0x45, 0x8f, 0x6b, 0x21, 0x6f, 0x2e, 0x56, 0xc3, 0x4a, 0xd3, + 0x5e, 0x40, 0x65, 0xf0, 0x9b, 0xc8, 0x40, 0xd9, 0x5c, 0xd8, 0x89, 0x14, 0x3b, 0x7d, 0x5b, 0x02, + 0x0d, 0xf0, 0x33, 0x3c, 0xe1, 0x41, 0x12, 0x51, 0x06, 0xd6, 0xe6, 0x68, 0x7d, 0xaa, 0xe0, 0x3c, + 0x77, 0x11, 0x1e, 0x12, 0xbf, 0x92, 0x5c, 0x03, 0x7e, 0x8a, 0x1b, 0x6b, 0x12, 0xa8, 0xbe, 0x08, + 0xf1, 0x03, 0x88, 0xe0, 0xdf, 0x8b, 0xb7, 0xf0, 0xf8, 0x06, 0x57, 0x17, 0x72, 0xce, 0x2d, 0x0f, + 0x4f, 0x96, 0x57, 0x6c, 0x3d, 0xc4, 0x13, 0x21, 0xeb, 0x98, 0xe6, 0x28, 0xfa, 0xcb, 0xfe, 0x43, + 0x73, 0xac, 0x47, 0xc2, 0xa7, 0xd1, 0x69, 0x8b, 0x34, 0x42, 0x76, 0xbc, 0x6e, 0xfd, 0x44, 0x78, + 0xba, 0xad, 0xa9, 0x4e, 0xd5, 0x5f, 0xf7, 0x7e, 0x81, 0x8f, 0xe8, 0xfd, 0xc7, 0x78, 0xaa, 0x18, + 0x13, 0x1d, 0x09, 0x5d, 0xd5, 0x1c, 0x5b, 0xac, 0x2f, 0x4d, 0x2d, 0x5f, 0x19, 0xf9, 0x72, 0x3c, + 0xe8, 0x1e, 0x27, 0xaf, 0x5a, 0x1f, 0x5f, 0xcf, 0x56, 0x2a, 0xf5, 0xb0, 0x28, 0x11, 0x65, 0xdd, + 0xc3, 0x98, 0x89, 0x5e, 0xc0, 0xcd, 0x43, 0x6d, 0xd6, 0x47, 0x1a, 0xd7, 0x4a, 0xc0, 0x94, 0x73, + 0x86, 0x5f, 0xf9, 0x7f, 0xff, 0xfe, 0x1c, 0x9e, 0xc1, 0xd3, 0x65, 0x85, 0x4e, 0xca, 0x83, 0xd5, + 0x77, 0x68, 0xef, 0x90, 0xd4, 0x0e, 0x0e, 0x49, 0xed, 0xe8, 0x90, 0xa0, 0x37, 0x39, 0x41, 0x1f, + 0x72, 0x82, 0xbe, 0xe6, 0x04, 0xed, 0xe5, 0x04, 0x1d, 0xe4, 0x04, 0x7d, 0xcf, 0x09, 0xfa, 0x91, + 0x93, 0xda, 0x51, 0x4e, 0xd0, 0xdb, 0x01, 0xa9, 0x7d, 0x1a, 0x10, 0xb4, 0x37, 0x20, 0xb5, 0x83, + 0x01, 0xa9, 0x6d, 0xb5, 0x43, 0x91, 0xbc, 0x0c, 0x9d, 0x4c, 0x44, 0x1a, 0xa4, 0xa4, 0x4e, 0xaa, + 0x5c, 0xb3, 0xe8, 0x0a, 0x19, 0x1f, 0x5f, 0x56, 0xc6, 0x03, 0x90, 0x76, 0x19, 0x76, 0x13, 0x3f, + 0x14, 0x2e, 0xec, 0xe8, 0x93, 0xc9, 0x33, 0x7a, 0x8c, 0xf9, 0x0d, 0x33, 0x82, 0x6e, 0xfd, 0x0a, + 0x00, 0x00, 0xff, 0xff, 0x74, 0xc0, 0x4a, 0x1b, 0x85, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/trusted_ca_list/public_crudapi.pb.go b/pbgo/extschema/schema/trusted_ca_list/public_crudapi.pb.go index 925102843..b97035cbc 100644 --- a/pbgo/extschema/schema/trusted_ca_list/public_crudapi.pb.go +++ b/pbgo/extschema/schema/trusted_ca_list/public_crudapi.pb.go @@ -1057,108 +1057,109 @@ func init() { } var fileDescriptor_cae03f2511b80a0f = []byte{ - // 1609 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xda, 0x04, 0x4b, 0x1b, - 0x85, 0x4c, 0x9b, 0xbb, 0xae, 0xfa, 0x03, 0x5b, 0x6e, 0x5d, 0x53, 0xd2, 0x4a, 0x95, 0x2a, 0x59, - 0xc2, 0x90, 0x36, 0x8a, 0x02, 0xc5, 0x62, 0xb9, 0x1c, 0xd2, 0x5b, 0x93, 0xdc, 0xed, 0xce, 0x90, - 0x32, 0x51, 0x08, 0x28, 0x8c, 0x02, 0xbd, 0x16, 0x28, 0x7a, 0x68, 0x91, 0x00, 0xb9, 0x04, 0xf0, - 0x2d, 0xd7, 0x00, 0xba, 0x18, 0xb9, 0xd8, 0xf0, 0x21, 0x31, 0xe2, 0x8b, 0x81, 0x5c, 0x62, 0x2a, - 0x07, 0xdf, 0x62, 0xe4, 0x9a, 0x4b, 0xb0, 0x33, 0x4b, 0x9a, 0x5c, 0x31, 0x12, 0x29, 0xeb, 0xc4, - 0x9d, 0x79, 0xef, 0x7d, 0xf3, 0xbe, 0x79, 0x3f, 0x7c, 0xbb, 0x70, 0xbe, 0x49, 0xa8, 0x6c, 0x5a, - 0x0a, 0x35, 0xee, 0x93, 0x9a, 0xae, 0x30, 0xa7, 0x41, 0x19, 0x29, 0x69, 0x86, 0xae, 0x55, 0x4d, - 0xca, 0x14, 0xbb, 0x51, 0xac, 0x9a, 0x86, 0x66, 0x38, 0x8d, 0x92, 0x6e, 0x9b, 0xb2, 0xed, 0x58, - 0xcc, 0x42, 0x17, 0x84, 0x8d, 0x2c, 0x6c, 0x64, 0x9f, 0x4d, 0x22, 0x5b, 0x31, 0xd9, 0xfd, 0x46, - 0x51, 0x36, 0xac, 0x9a, 0x52, 0xb1, 0x2a, 0x96, 0xc2, 0xad, 0x8a, 0x8d, 0x32, 0x5f, 0xf1, 0x05, - 0x7f, 0x12, 0x68, 0x89, 0xf3, 0x15, 0xcb, 0xaa, 0x54, 0x89, 0xa2, 0xdb, 0xa6, 0xa2, 0xd7, 0xeb, - 0x16, 0xd3, 0x99, 0x69, 0xd5, 0xa9, 0x27, 0xfd, 0xa9, 0x27, 0xed, 0x62, 0x90, 0x9a, 0xcd, 0x5a, - 0x9e, 0x30, 0xd1, 0xef, 0x3c, 0x71, 0x1c, 0xcb, 0xe9, 0x1a, 0xf6, 0xcb, 0x2c, 0xbb, 0x17, 0x35, - 0x73, 0x38, 0x6b, 0xab, 0xf8, 0x57, 0x62, 0x30, 0x4f, 0xf7, 0xf2, 0xe1, 0xba, 0xac, 0x65, 0x93, - 0x0e, 0xec, 0xac, 0x4f, 0xb5, 0x47, 0x94, 0xee, 0x17, 0x35, 0x09, 0x25, 0xf5, 0xa6, 0xcf, 0xab, - 0x94, 0x4f, 0xc7, 0x24, 0x3b, 0x5a, 0x9f, 0x46, 0xfa, 0x13, 0x00, 0x27, 0x97, 0x1c, 0xa2, 0x33, - 0x82, 0xc9, 0xdf, 0x1a, 0x84, 0x32, 0xf4, 0x7b, 0x18, 0xa9, 0x11, 0xa6, 0x97, 0x74, 0xa6, 0xc7, - 0x41, 0x0a, 0xcc, 0xc5, 0xe6, 0x2f, 0xca, 0xfd, 0xe1, 0xd9, 0xe2, 0x64, 0x84, 0xd5, 0x26, 0x61, - 0x7a, 0xa1, 0x65, 0x13, 0xdc, 0x35, 0x42, 0x18, 0x86, 0xa8, 0x4d, 0x8c, 0x78, 0x80, 0x1b, 0x67, - 0xe5, 0x43, 0x63, 0x2b, 0x0b, 0x98, 0xbc, 0x4d, 0x0c, 0x17, 0x66, 0x71, 0xfa, 0xff, 0xbb, 0x13, - 0xae, 0xb5, 0x5c, 0x31, 0x34, 0xf7, 0x17, 0x73, 0xac, 0x85, 0xe8, 0xf3, 0x5b, 0x61, 0x71, 0x6c, - 0xfa, 0x7b, 0x00, 0xa7, 0x3a, 0x1e, 0x53, 0xdb, 0xaa, 0x53, 0x82, 0x7e, 0x7b, 0xc0, 0xe5, 0xd4, - 0x40, 0x97, 0x57, 0x09, 0x1b, 0xe0, 0xef, 0x16, 0x9c, 0xa6, 0x2d, 0xca, 0x48, 0x4d, 0xeb, 0x82, - 0x04, 0x39, 0xc8, 0xcf, 0x7d, 0x20, 0x79, 0xae, 0x75, 0x10, 0x6a, 0x4a, 0x98, 0x6f, 0xbe, 0x03, - 0xec, 0xbd, 0x80, 0xcc, 0x11, 0x17, 0xb0, 0x4a, 0xd8, 0x08, 0xec, 0xf7, 0x01, 0x9c, 0xc2, 0xc4, - 0xae, 0xea, 0x46, 0x37, 0x60, 0xb7, 0x0f, 0xb0, 0xbf, 0x34, 0x90, 0xbd, 0x67, 0x36, 0xe0, 0x06, - 0xf2, 0x7d, 0x0e, 0xcb, 0x47, 0x38, 0xec, 0xe1, 0x1c, 0xe1, 0x34, 0x52, 0xa0, 0xe4, 0x10, 0x6a, - 0x35, 0x1c, 0x83, 0x68, 0x4d, 0xe2, 0x50, 0xd3, 0xaa, 0xf3, 0x7b, 0x8d, 0x2e, 0x86, 0xde, 0xec, - 0x01, 0x80, 0xa7, 0x3b, 0xd2, 0x7b, 0x42, 0xd8, 0xcb, 0xf2, 0x34, 0x9c, 0xee, 0x92, 0x14, 0x31, - 0x4e, 0x7f, 0x08, 0x20, 0x5c, 0x25, 0xac, 0x43, 0xfa, 0x3c, 0x8c, 0xd6, 0xf5, 0x1a, 0xa1, 0xb6, - 0x6e, 0x10, 0xce, 0x3a, 0x8a, 0xdf, 0x6d, 0x20, 0x04, 0x43, 0xee, 0x82, 0x13, 0x8a, 0x62, 0xfe, - 0x8c, 0xfe, 0x02, 0xdd, 0x13, 0x39, 0x98, 0x56, 0xb6, 0x9c, 0x9a, 0xce, 0xb8, 0x3b, 0x53, 0xf3, - 0xbf, 0x3a, 0x3a, 0x40, 0x1d, 0x2f, 0x56, 0xb8, 0xdd, 0x92, 0x55, 0x22, 0x78, 0xca, 0xe9, 0xdb, - 0x4b, 0xff, 0x2f, 0x0c, 0x63, 0x3d, 0x9a, 0x68, 0x13, 0xc6, 0x0c, 0x9e, 0xa5, 0xfc, 0x30, 0xef, - 0x6a, 0xaf, 0x0e, 0x55, 0x0c, 0x1e, 0x47, 0x0c, 0x05, 0x80, 0x7b, 0x00, 0xda, 0x86, 0x13, 0x8e, - 0xb8, 0x11, 0x81, 0x17, 0x1c, 0xaa, 0xb8, 0xfa, 0x33, 0x05, 0xc7, 0x3c, 0x08, 0x8e, 0x38, 0x28, - 0x3e, 0xa1, 0x43, 0xe2, 0xd3, 0x57, 0x65, 0xe3, 0x27, 0x51, 0x65, 0xa7, 0x4e, 0xa4, 0xca, 0xc2, - 0x27, 0x54, 0x65, 0x68, 0x1d, 0x86, 0x29, 0xd3, 0x59, 0x83, 0xc6, 0x3f, 0xfa, 0x00, 0xa4, 0x82, - 0x73, 0xb1, 0xf9, 0x2b, 0x47, 0x80, 0xe6, 0xb9, 0xba, 0x70, 0x75, 0x31, 0xf8, 0x64, 0x17, 0x60, - 0x0f, 0x01, 0xad, 0xc1, 0xd3, 0x0e, 0x29, 0x13, 0xc7, 0x31, 0xeb, 0x15, 0x4d, 0x34, 0x7f, 0x1a, - 0x8f, 0x70, 0xd0, 0xf3, 0x3f, 0x52, 0x9c, 0x65, 0xce, 0x52, 0xea, 0x9a, 0x89, 0x7d, 0x8a, 0xee, - 0xc1, 0x78, 0x89, 0x54, 0x89, 0x7b, 0xae, 0x90, 0x91, 0x52, 0x17, 0x31, 0x3a, 0x04, 0xe2, 0x8c, - 0x67, 0x8d, 0x3d, 0xe3, 0x0e, 0xee, 0x9f, 0xe0, 0x6c, 0xc9, 0xa4, 0x7a, 0xb1, 0x3a, 0x08, 0x18, - 0x0e, 0x01, 0x7c, 0xae, 0x63, 0xee, 0x43, 0xee, 0x29, 0xe4, 0xf5, 0x50, 0x04, 0x48, 0x81, 0xf4, - 0xc7, 0x00, 0xc6, 0x36, 0x4c, 0x3a, 0x64, 0xf1, 0xfe, 0x0c, 0x4e, 0x54, 0xf5, 0x22, 0xa9, 0x6a, - 0x65, 0xb3, 0xca, 0x88, 0xe3, 0x15, 0x71, 0x8c, 0xef, 0xad, 0xf0, 0x2d, 0x74, 0x11, 0x4e, 0x3a, - 0xc4, 0xb6, 0x1c, 0xa6, 0x95, 0x4d, 0x52, 0x2d, 0xd1, 0x78, 0x30, 0x15, 0x9c, 0x8b, 0xe2, 0x09, - 0xb1, 0xb9, 0xc2, 0xf7, 0xd0, 0x35, 0x78, 0xc6, 0x53, 0x12, 0x41, 0xe9, 0xe8, 0x86, 0xb8, 0x2e, - 0x12, 0x32, 0x11, 0x42, 0x61, 0x91, 0x7e, 0x16, 0x86, 0x92, 0xf0, 0x53, 0x14, 0xf1, 0x1a, 0x23, - 0x35, 0x34, 0x03, 0xc3, 0x8c, 0xd4, 0xf5, 0x3a, 0xe3, 0x99, 0x16, 0xc5, 0xde, 0xea, 0x18, 0x1d, - 0x48, 0x82, 0xc1, 0x86, 0x59, 0x12, 0x4d, 0x10, 0xbb, 0x8f, 0x28, 0x05, 0x63, 0x25, 0x42, 0x0d, - 0xc7, 0xe4, 0xff, 0xc9, 0xf1, 0x98, 0x60, 0xda, 0xb3, 0x85, 0x12, 0x30, 0xd2, 0xb9, 0xe6, 0xf8, - 0x44, 0x0a, 0xcc, 0x45, 0x70, 0x77, 0x8d, 0xf2, 0x30, 0xcc, 0x2f, 0x45, 0x50, 0x8a, 0xcd, 0xdf, - 0x3c, 0x22, 0x5d, 0xfd, 0xd4, 0xe4, 0x0d, 0x6e, 0xad, 0xd6, 0x99, 0xd3, 0xc2, 0x1e, 0x14, 0x2a, - 0xc2, 0x58, 0xcf, 0xcc, 0xe4, 0x25, 0xc2, 0xed, 0x51, 0x91, 0x73, 0xef, 0x20, 0x04, 0x7c, 0x2f, - 0x28, 0xba, 0x01, 0xa1, 0xb5, 0x53, 0x27, 0x8e, 0xe6, 0x0e, 0x24, 0xf1, 0x28, 0x2f, 0xe0, 0x84, - 0xef, 0x88, 0x7b, 0x26, 0xd9, 0xe9, 0x64, 0x5a, 0x94, 0x6b, 0xbb, 0x3b, 0x7d, 0x4d, 0x68, 0xf2, - 0x24, 0x9a, 0xd0, 0xd4, 0x7b, 0x35, 0x21, 0x15, 0x46, 0x2a, 0x84, 0xf1, 0x2e, 0xe2, 0xb5, 0xb3, - 0x11, 0x1a, 0x11, 0x3e, 0x55, 0x11, 0x0b, 0xb4, 0x05, 0xa1, 0x97, 0xa3, 0x94, 0x30, 0xaf, 0x4f, - 0x8c, 0xde, 0x7c, 0xa2, 0x02, 0x23, 0x4f, 0x58, 0xe2, 0x06, 0x8c, 0xf5, 0x04, 0xd7, 0xcd, 0xbc, - 0x07, 0xa4, 0xe5, 0x65, 0xa9, 0xfb, 0x88, 0xce, 0xc0, 0xf1, 0xa6, 0x5e, 0x6d, 0x74, 0x12, 0x54, - 0x2c, 0x16, 0x02, 0xd7, 0x41, 0xe2, 0x16, 0x94, 0xfc, 0xd1, 0x1b, 0xc5, 0x7e, 0x3d, 0x14, 0x19, - 0x97, 0xc2, 0xe9, 0x7f, 0x01, 0x38, 0xd1, 0x9b, 0x15, 0x48, 0x85, 0xe3, 0x26, 0x23, 0x35, 0x1a, - 0x17, 0xad, 0x55, 0x19, 0x31, 0xa3, 0xb0, 0xb0, 0x46, 0xd7, 0x60, 0x58, 0x0c, 0xe5, 0xf1, 0x00, - 0xc7, 0x89, 0xfb, 0x70, 0x54, 0x57, 0xc8, 0x2f, 0xd7, 0xd3, 0x4b, 0x3f, 0x80, 0x93, 0xcb, 0xbc, - 0x03, 0x1e, 0x7f, 0x74, 0x98, 0x83, 0x52, 0x59, 0x37, 0xab, 0x9a, 0x59, 0xee, 0x76, 0x4a, 0x5e, - 0xc5, 0x11, 0x3c, 0xe5, 0xee, 0xaf, 0x95, 0x3b, 0x1d, 0x30, 0xf3, 0x1d, 0x80, 0x67, 0x07, 0xce, - 0x0b, 0x28, 0x01, 0x67, 0x56, 0xd5, 0x82, 0x86, 0xf3, 0xdb, 0xda, 0xca, 0x16, 0xde, 0xcc, 0x15, - 0xb4, 0x65, 0x75, 0x25, 0x77, 0x77, 0xa3, 0x20, 0x8d, 0xa1, 0x0b, 0x70, 0xd6, 0x27, 0x5b, 0xd9, - 0xc2, 0xda, 0x12, 0x56, 0x73, 0x05, 0x55, 0x02, 0x28, 0x09, 0x13, 0x03, 0xc4, 0x58, 0xdd, 0xde, - 0xc8, 0x2d, 0xa9, 0x52, 0x00, 0xcd, 0xc2, 0xb3, 0x3e, 0x79, 0xbe, 0x90, 0x2b, 0xdc, 0xcd, 0x4b, - 0x41, 0x74, 0x0e, 0xfe, 0xc4, 0x27, 0xc2, 0x6a, 0x6e, 0x59, 0x0a, 0xa1, 0x4b, 0x30, 0x75, 0x40, - 0xb0, 0xa2, 0x62, 0xbc, 0x76, 0x67, 0x55, 0xdb, 0x5a, 0x5c, 0x57, 0x97, 0x0a, 0x79, 0x69, 0x7c, - 0x80, 0xd6, 0x22, 0xde, 0xfa, 0xa3, 0x7a, 0x47, 0x28, 0xab, 0x77, 0x96, 0xd4, 0xbc, 0x14, 0x9e, - 0x7f, 0x1c, 0x85, 0xc1, 0xdc, 0xf6, 0x1a, 0xfa, 0x0a, 0xc0, 0xb0, 0x98, 0x60, 0xd0, 0x48, 0x83, - 0x4e, 0x22, 0x3b, 0xa4, 0xb6, 0x37, 0x0a, 0xb2, 0xf6, 0xd3, 0x78, 0xb6, 0xfc, 0xeb, 0x87, 0x46, - 0x96, 0x12, 0xa3, 0xe1, 0x90, 0x1a, 0xa1, 0xf7, 0xb3, 0x45, 0x9d, 0x9a, 0x46, 0xb6, 0x41, 0x89, - 0x73, 0xb5, 0x49, 0x68, 0xd6, 0xb4, 0xb2, 0xb6, 0x63, 0x3d, 0x6c, 0x65, 0x77, 0x1c, 0x93, 0x91, - 0x47, 0x2f, 0xbf, 0xf9, 0x4f, 0xe0, 0x77, 0xe9, 0xeb, 0xde, 0xdb, 0xa7, 0xd2, 0x0d, 0x37, 0x55, - 0xfe, 0xde, 0xe9, 0x04, 0x72, 0x77, 0x73, 0xd7, 0xff, 0x4a, 0x46, 0x17, 0x40, 0x06, 0xbd, 0x04, - 0x30, 0xb8, 0x4a, 0x18, 0xba, 0x3c, 0xcc, 0xb8, 0x28, 0x78, 0x65, 0x86, 0x9f, 0x2c, 0xd3, 0x8d, - 0x67, 0x9f, 0x06, 0x40, 0xfb, 0x69, 0x5c, 0x19, 0x4c, 0xac, 0x66, 0xd5, 0x4d, 0x66, 0xf9, 0xb8, - 0x39, 0x44, 0x2f, 0x71, 0x6a, 0xd7, 0xd1, 0x6f, 0x06, 0x51, 0x3b, 0x84, 0x91, 0x10, 0xee, 0xa2, - 0x2f, 0x00, 0x0c, 0xb9, 0xb5, 0x86, 0x32, 0x43, 0x15, 0xa4, 0xe0, 0x75, 0x65, 0x84, 0xe2, 0x4d, - 0xd7, 0xdf, 0x87, 0xd8, 0x2f, 0x90, 0x32, 0x22, 0x31, 0xf4, 0x2d, 0x80, 0xa7, 0xbc, 0xb9, 0x17, - 0x8d, 0x36, 0x1f, 0x27, 0xe4, 0x61, 0xd5, 0x3d, 0x6a, 0xff, 0x04, 0xc7, 0xcb, 0xc4, 0xcd, 0xc4, - 0x1f, 0x8e, 0x9b, 0x89, 0x3e, 0xad, 0x5d, 0x37, 0x33, 0x3f, 0x03, 0x30, 0x2c, 0x5a, 0xdc, 0x91, - 0x75, 0xd7, 0xd7, 0x09, 0x13, 0x33, 0xb2, 0xf8, 0x16, 0x22, 0x77, 0xbe, 0x85, 0xc8, 0x6a, 0xcd, - 0x66, 0xad, 0xb4, 0x73, 0x3c, 0x5a, 0x37, 0x33, 0xc7, 0xcc, 0xc2, 0x05, 0x90, 0x49, 0x94, 0x9e, - 0xec, 0x81, 0xc0, 0x97, 0x7b, 0xe0, 0xd2, 0xe1, 0x04, 0xc4, 0xff, 0xdd, 0xab, 0x3d, 0x00, 0xda, - 0x7b, 0x20, 0x33, 0xfc, 0x3f, 0xe4, 0xa3, 0xcf, 0xe3, 0x01, 0x09, 0x2c, 0xfe, 0x17, 0x3c, 0xbf, - 0x35, 0xbe, 0x84, 0xef, 0x2e, 0x6f, 0xbc, 0x78, 0x9d, 0x1c, 0x7b, 0xf5, 0x3a, 0x39, 0xf6, 0xf6, - 0x75, 0x12, 0xfc, 0xa3, 0x9d, 0x04, 0x8f, 0xdb, 0x49, 0xf0, 0xac, 0x9d, 0x04, 0x2f, 0xda, 0x49, - 0xf0, 0x75, 0x3b, 0x09, 0xde, 0xb4, 0x93, 0x63, 0x6f, 0xdb, 0x49, 0xf0, 0xef, 0xfd, 0xe4, 0xd8, - 0x93, 0xfd, 0x24, 0x78, 0xb1, 0x9f, 0x1c, 0x7b, 0xb5, 0x9f, 0x1c, 0xfb, 0x73, 0xbe, 0x62, 0xd9, - 0x0f, 0x2a, 0x72, 0xd3, 0x72, 0x27, 0x51, 0x47, 0x97, 0x1b, 0x54, 0xe1, 0x0f, 0xee, 0x6b, 0x99, - 0x7b, 0x25, 0x4d, 0xb3, 0x44, 0x9c, 0x6c, 0x47, 0xac, 0xd8, 0xc5, 0x8a, 0xa5, 0x90, 0x87, 0xcc, - 0xfb, 0x04, 0x33, 0xf8, 0x9b, 0x4f, 0x31, 0xcc, 0x23, 0xf0, 0xcb, 0x1f, 0x02, 0x00, 0x00, 0xff, - 0xff, 0xa5, 0x2c, 0xa8, 0xd1, 0x3d, 0x13, 0x00, 0x00, + // 1624 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x1b, 0xc5, + 0x1a, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x67, 0x3b, 0xaf, 0x4d, 0x1d, 0xbf, 0xd6, 0xf2, 0x73, + 0xab, 0xa7, 0xd4, 0xad, 0xd7, 0x7d, 0x79, 0x7f, 0xd4, 0xa6, 0x8f, 0x52, 0x27, 0xd9, 0x84, 0xa4, + 0x49, 0x13, 0xad, 0xdd, 0x0a, 0x21, 0xa1, 0xd5, 0x7a, 0x3d, 0x76, 0x97, 0xda, 0xde, 0x65, 0x67, + 0xec, 0xd4, 0x42, 0x91, 0x50, 0x2f, 0x9c, 0x10, 0x15, 0x08, 0x24, 0x10, 0x48, 0x08, 0x09, 0x89, + 0x1b, 0x57, 0xa4, 0x5c, 0x7a, 0x23, 0xea, 0x01, 0x55, 0x70, 0xe9, 0x91, 0x38, 0x1c, 0x7a, 0x2c, + 0x48, 0x5c, 0xe0, 0x82, 0x76, 0x66, 0xd7, 0xb5, 0x37, 0x26, 0xb1, 0x43, 0x7a, 0xf2, 0xce, 0x7c, + 0xdf, 0xf7, 0x9b, 0xef, 0x37, 0xdf, 0x1f, 0x7f, 0xbb, 0x70, 0xba, 0x81, 0x89, 0xa8, 0x1b, 0x19, + 0xa2, 0xdd, 0xc1, 0x55, 0x35, 0x43, 0xad, 0x3a, 0xa1, 0xb8, 0xa8, 0x68, 0xaa, 0x52, 0xd1, 0x09, + 0xcd, 0x98, 0xf5, 0x42, 0x45, 0xd7, 0x14, 0xcd, 0xaa, 0x17, 0x55, 0x53, 0x17, 0x4d, 0xcb, 0xa0, + 0x06, 0x3a, 0xc3, 0x6d, 0x44, 0x6e, 0x23, 0x7a, 0x6c, 0x62, 0xe9, 0xb2, 0x4e, 0xef, 0xd4, 0x0b, + 0xa2, 0x66, 0x54, 0x33, 0x65, 0xa3, 0x6c, 0x64, 0x98, 0x55, 0xa1, 0x5e, 0x62, 0x2b, 0xb6, 0x60, + 0x4f, 0x1c, 0x2d, 0x76, 0xba, 0x6c, 0x18, 0xe5, 0x0a, 0xce, 0xa8, 0xa6, 0x9e, 0x51, 0x6b, 0x35, + 0x83, 0xaa, 0x54, 0x37, 0x6a, 0xc4, 0x91, 0xfe, 0xdd, 0x91, 0xb6, 0x31, 0x70, 0xd5, 0xa4, 0x4d, + 0x47, 0x18, 0xeb, 0x76, 0x1e, 0x5b, 0x96, 0x61, 0xb5, 0x0d, 0xbb, 0x65, 0x86, 0xd9, 0x89, 0x9a, + 0xda, 0x9f, 0xb5, 0x51, 0x78, 0x03, 0x6b, 0xd4, 0xd1, 0x3d, 0xbf, 0xbf, 0x2e, 0x6d, 0x9a, 0xd8, + 0x85, 0x9d, 0xf4, 0xa8, 0x76, 0x88, 0x92, 0xdd, 0xa2, 0x06, 0x26, 0xb8, 0xd6, 0xf0, 0x78, 0x95, + 0xf0, 0xe8, 0xe8, 0x78, 0x43, 0xe9, 0xd2, 0x48, 0x7e, 0x0d, 0xe0, 0xe8, 0x9c, 0x85, 0x55, 0x8a, + 0x65, 0xfc, 0x66, 0x1d, 0x13, 0x8a, 0x5e, 0x86, 0xa1, 0x2a, 0xa6, 0x6a, 0x51, 0xa5, 0x6a, 0x14, + 0x24, 0xc0, 0x54, 0x64, 0xfa, 0xac, 0xd8, 0x1d, 0x9e, 0x35, 0x46, 0x86, 0x5b, 0xad, 0x62, 0xaa, + 0xe6, 0x9b, 0x26, 0x96, 0xdb, 0x46, 0x48, 0x86, 0x01, 0x62, 0x62, 0x2d, 0xea, 0x63, 0xc6, 0x69, + 0x71, 0xdf, 0xd8, 0x8a, 0x1c, 0x26, 0x67, 0x62, 0xcd, 0x86, 0x99, 0x1d, 0xff, 0x64, 0x73, 0xc4, + 0xb6, 0x16, 0xcb, 0x9a, 0x62, 0xff, 0xca, 0x0c, 0x6b, 0x26, 0xfc, 0xe8, 0x5a, 0x90, 0x1f, 0x9b, + 0xfc, 0x1d, 0xc0, 0x31, 0xd7, 0x63, 0x62, 0x1a, 0x35, 0x82, 0xd1, 0xff, 0xf7, 0xb8, 0x9c, 0xe8, + 0xe9, 0xf2, 0x22, 0xa6, 0x3d, 0xfc, 0x5d, 0x83, 0xe3, 0xa4, 0x49, 0x28, 0xae, 0x2a, 0x6d, 0x10, + 0x3f, 0x03, 0xf9, 0xa7, 0x07, 0x24, 0xc7, 0xb4, 0xf6, 0x42, 0x8d, 0x71, 0xf3, 0xd5, 0xe7, 0x80, + 0x9d, 0x17, 0x90, 0x3a, 0xe0, 0x02, 0x16, 0x31, 0x1d, 0x80, 0xfd, 0x2e, 0x80, 0x63, 0x32, 0x36, + 0x2b, 0xaa, 0xd6, 0x0e, 0xd8, 0xf5, 0x3d, 0xec, 0xcf, 0xf5, 0x64, 0xef, 0x98, 0xf5, 0xb8, 0x81, + 0x5c, 0x97, 0xc3, 0xe2, 0x01, 0x0e, 0x3b, 0x38, 0x07, 0x38, 0x8d, 0x32, 0x50, 0xb0, 0x30, 0x31, + 0xea, 0x96, 0x86, 0x95, 0x06, 0xb6, 0x88, 0x6e, 0xd4, 0xd8, 0xbd, 0x86, 0x67, 0x03, 0x4f, 0xb7, + 0x00, 0x90, 0xc7, 0x5d, 0xe9, 0x6d, 0x2e, 0xec, 0x64, 0x79, 0x1c, 0x8e, 0xb7, 0x49, 0xf2, 0x18, + 0x27, 0x3f, 0x03, 0x10, 0x2e, 0x62, 0xea, 0x92, 0x3e, 0x0d, 0xc3, 0x35, 0xb5, 0x8a, 0x89, 0xa9, + 0x6a, 0x98, 0xb1, 0x0e, 0xcb, 0xcf, 0x37, 0x10, 0x82, 0x01, 0x7b, 0xc1, 0x08, 0x85, 0x65, 0xf6, + 0x8c, 0x5e, 0x87, 0xf6, 0x89, 0x0c, 0x4c, 0x29, 0x19, 0x56, 0x55, 0xa5, 0xcc, 0x9d, 0xb1, 0xe9, + 0xff, 0x1c, 0x1c, 0x20, 0xd7, 0x8b, 0x05, 0x66, 0x37, 0x67, 0x14, 0xb1, 0x3c, 0x66, 0x75, 0xed, + 0x25, 0x3f, 0x0e, 0xc2, 0x48, 0x87, 0x26, 0x5a, 0x85, 0x11, 0x8d, 0x65, 0x29, 0x3b, 0xcc, 0xb9, + 0xda, 0x8b, 0x7d, 0x15, 0x83, 0xc3, 0x51, 0x86, 0x1c, 0xc0, 0x3e, 0x00, 0xad, 0xc3, 0x11, 0x8b, + 0xdf, 0x08, 0xc7, 0xf3, 0xf7, 0x55, 0x5c, 0xdd, 0x99, 0x22, 0x47, 0x1c, 0x08, 0x86, 0xd8, 0x2b, + 0x3e, 0x81, 0x7d, 0xe2, 0xd3, 0x55, 0x65, 0xc3, 0x47, 0x51, 0x65, 0xc7, 0x8e, 0xa4, 0xca, 0x82, + 0x47, 0x54, 0x65, 0x68, 0x19, 0x06, 0x09, 0x55, 0x69, 0x9d, 0x44, 0x3f, 0xff, 0x14, 0x24, 0xfc, + 0x53, 0x91, 0xe9, 0x0b, 0x07, 0x80, 0xe6, 0x98, 0x3a, 0x77, 0x75, 0xd6, 0xff, 0x70, 0x13, 0xc8, + 0x0e, 0x02, 0x5a, 0x82, 0xc7, 0x2d, 0x5c, 0xc2, 0x96, 0xa5, 0xd7, 0xca, 0x0a, 0x6f, 0xfe, 0x24, + 0x1a, 0x62, 0xa0, 0xa7, 0xff, 0xa4, 0x38, 0x4b, 0x8c, 0xa5, 0xd0, 0x36, 0xe3, 0xfb, 0x04, 0xdd, + 0x86, 0xd1, 0x22, 0xae, 0x60, 0xfb, 0x5c, 0x2e, 0xc3, 0xc5, 0x36, 0x62, 0xb8, 0x0f, 0xc4, 0x09, + 0xc7, 0x5a, 0x76, 0x8c, 0x5d, 0xdc, 0x57, 0xe1, 0x64, 0x51, 0x27, 0x6a, 0xa1, 0xd2, 0x0b, 0x18, + 0xf6, 0x01, 0x7c, 0xca, 0x35, 0xf7, 0x20, 0x77, 0x14, 0xf2, 0x72, 0x20, 0x04, 0x04, 0x5f, 0xf2, + 0x4b, 0x00, 0x23, 0x2b, 0x3a, 0xe9, 0xb3, 0x78, 0xff, 0x01, 0x47, 0x2a, 0x6a, 0x01, 0x57, 0x94, + 0x92, 0x5e, 0xa1, 0xd8, 0x72, 0x8a, 0x38, 0xc2, 0xf6, 0x16, 0xd8, 0x16, 0x3a, 0x0b, 0x47, 0x2d, + 0x6c, 0x1a, 0x16, 0x55, 0x4a, 0x3a, 0xae, 0x14, 0x49, 0xd4, 0x9f, 0xf0, 0x4f, 0x85, 0xe5, 0x11, + 0xbe, 0xb9, 0xc0, 0xf6, 0xd0, 0x25, 0x78, 0xc2, 0x51, 0xe2, 0x41, 0x71, 0x75, 0x03, 0x4c, 0x17, + 0x71, 0x19, 0x0f, 0x21, 0xb7, 0x48, 0x6e, 0x07, 0xa1, 0xc0, 0xfd, 0xe4, 0x45, 0xbc, 0x44, 0x71, + 0x15, 0x4d, 0xc0, 0x20, 0xc5, 0x35, 0xb5, 0x46, 0x59, 0xa6, 0x85, 0x65, 0x67, 0x75, 0x88, 0x0e, + 0x24, 0x40, 0x7f, 0x5d, 0x2f, 0xf2, 0x26, 0x28, 0xdb, 0x8f, 0x28, 0x01, 0x23, 0x45, 0x4c, 0x34, + 0x4b, 0x67, 0xff, 0xc9, 0xd1, 0x08, 0x67, 0xda, 0xb1, 0x85, 0x62, 0x30, 0xe4, 0x5e, 0x73, 0x74, + 0x24, 0x01, 0xa6, 0x42, 0x72, 0x7b, 0x8d, 0x72, 0x30, 0xc8, 0x2e, 0x85, 0x53, 0x8a, 0x4c, 0x5f, + 0x3d, 0x20, 0x5d, 0xbd, 0xd4, 0xc4, 0x15, 0x66, 0x2d, 0xd5, 0xa8, 0xd5, 0x94, 0x1d, 0x28, 0x54, + 0x80, 0x91, 0x8e, 0x99, 0xc9, 0x49, 0x84, 0xeb, 0x83, 0x22, 0x67, 0x9f, 0x43, 0x70, 0xf8, 0x4e, + 0x50, 0x74, 0x05, 0x42, 0x63, 0xa3, 0x86, 0x2d, 0xc5, 0x1e, 0x48, 0xa2, 0x61, 0x56, 0xc0, 0x31, + 0xcf, 0x11, 0xb7, 0x75, 0xbc, 0xe1, 0x66, 0x5a, 0x98, 0x69, 0xdb, 0x3b, 0x5d, 0x4d, 0x68, 0xf4, + 0x28, 0x9a, 0xd0, 0xd8, 0x5f, 0x6a, 0x42, 0x12, 0x0c, 0x95, 0x31, 0x65, 0x5d, 0xc4, 0x69, 0x67, + 0x03, 0x34, 0x22, 0xf9, 0x58, 0x99, 0x2f, 0xd0, 0x1a, 0x84, 0x4e, 0x8e, 0x12, 0x4c, 0x9d, 0x3e, + 0x31, 0x78, 0xf3, 0x09, 0x73, 0x8c, 0x1c, 0xa6, 0xb1, 0x2b, 0x30, 0xd2, 0x11, 0x5c, 0x3b, 0xf3, + 0xee, 0xe2, 0xa6, 0x93, 0xa5, 0xf6, 0x23, 0x3a, 0x01, 0x87, 0x1b, 0x6a, 0xa5, 0xee, 0x26, 0x28, + 0x5f, 0xcc, 0xf8, 0x2e, 0x83, 0xd8, 0x35, 0x28, 0x78, 0xa3, 0x37, 0x88, 0xfd, 0x72, 0x20, 0x34, + 0x2c, 0x04, 0x93, 0xef, 0x00, 0x38, 0xd2, 0x99, 0x15, 0x48, 0x82, 0xc3, 0x3a, 0xc5, 0x55, 0x12, + 0xe5, 0xad, 0x35, 0x33, 0x60, 0x46, 0xc9, 0xdc, 0x1a, 0x5d, 0x82, 0x41, 0x3e, 0x94, 0x47, 0x7d, + 0x0c, 0x27, 0xea, 0xc1, 0x91, 0x6c, 0x21, 0xbb, 0x5c, 0x47, 0x2f, 0x79, 0x17, 0x8e, 0xce, 0xb3, + 0x0e, 0x78, 0xf8, 0xd1, 0x61, 0x0a, 0x0a, 0x25, 0x55, 0xaf, 0x28, 0x7a, 0xa9, 0xdd, 0x29, 0x59, + 0x15, 0x87, 0xe4, 0x31, 0x7b, 0x7f, 0xa9, 0xe4, 0x76, 0xc0, 0xd4, 0x2f, 0x00, 0x9e, 0xec, 0x39, + 0x2f, 0xa0, 0x18, 0x9c, 0x58, 0x94, 0xf2, 0x8a, 0x9c, 0x5b, 0x57, 0x16, 0xd6, 0xe4, 0xd5, 0x6c, + 0x5e, 0x99, 0x97, 0x16, 0xb2, 0xb7, 0x56, 0xf2, 0xc2, 0x10, 0x3a, 0x03, 0x27, 0x3d, 0xb2, 0x85, + 0x35, 0x59, 0x99, 0x93, 0xa5, 0x6c, 0x5e, 0x12, 0x00, 0x8a, 0xc3, 0x58, 0x0f, 0xb1, 0x2c, 0xad, + 0xaf, 0x64, 0xe7, 0x24, 0xc1, 0x87, 0x26, 0xe1, 0x49, 0x8f, 0x3c, 0x97, 0xcf, 0xe6, 0x6f, 0xe5, + 0x04, 0x3f, 0x3a, 0x05, 0xff, 0xe6, 0x11, 0xc9, 0x52, 0x76, 0x5e, 0x08, 0xa0, 0x73, 0x30, 0xb1, + 0x47, 0xb0, 0x20, 0xc9, 0xf2, 0xd2, 0xcd, 0x45, 0x65, 0x6d, 0x76, 0x59, 0x9a, 0xcb, 0xe7, 0x84, + 0xe1, 0x1e, 0x5a, 0xb3, 0xf2, 0xda, 0x0d, 0xe9, 0x26, 0x57, 0x96, 0x6e, 0xce, 0x49, 0x39, 0x21, + 0x38, 0xbd, 0x0d, 0xa1, 0x3f, 0xbb, 0xbe, 0x84, 0x7e, 0x03, 0x30, 0xc8, 0x27, 0x18, 0x34, 0xd0, + 0xa0, 0x13, 0x4b, 0xf7, 0xa9, 0xed, 0x8c, 0x82, 0xef, 0x83, 0xd6, 0xb7, 0xd1, 0x1b, 0xa5, 0xff, + 0xde, 0xd3, 0xd2, 0x04, 0x6b, 0x75, 0x0b, 0x57, 0x31, 0xb9, 0x93, 0x2e, 0xa8, 0x44, 0xd7, 0xd2, + 0x75, 0x82, 0xad, 0x8b, 0x5e, 0x11, 0xa1, 0x6a, 0xad, 0xa8, 0x5a, 0x45, 0x2e, 0x6d, 0x60, 0x92, + 0xd6, 0x8d, 0xb4, 0x69, 0x19, 0xf7, 0x9a, 0xe9, 0x0d, 0x4b, 0xa7, 0xf8, 0xfe, 0x0f, 0x3f, 0x7d, + 0xe0, 0x7b, 0x29, 0x79, 0xd9, 0x79, 0x39, 0xcd, 0xb4, 0xb3, 0x81, 0x64, 0xde, 0x72, 0x1b, 0x85, + 0xd8, 0xde, 0xdc, 0xf4, 0xbe, 0xb1, 0x91, 0x19, 0x90, 0x42, 0xbf, 0x02, 0xe8, 0x5f, 0xc4, 0x14, + 0x9d, 0xef, 0x67, 0x9a, 0xe4, 0xb4, 0x53, 0xfd, 0x0f, 0x9e, 0xc9, 0x8f, 0xc0, 0xf6, 0x37, 0x3e, + 0x9b, 0xf7, 0x7a, 0x6f, 0xde, 0x55, 0xa3, 0xa6, 0x53, 0x63, 0x1f, 0xea, 0xae, 0x42, 0x17, 0x7b, + 0x0b, 0xab, 0x45, 0x46, 0xfe, 0x32, 0xfa, 0x5f, 0x2f, 0xf2, 0xfb, 0x70, 0xe6, 0xc2, 0x4d, 0xf4, + 0x33, 0x80, 0x01, 0xbb, 0x58, 0x51, 0xaa, 0xaf, 0x8a, 0xe6, 0xcc, 0x2f, 0x0c, 0x50, 0xfd, 0xc9, + 0xf7, 0x5e, 0x2c, 0xf5, 0x7f, 0xa1, 0xcc, 0x80, 0xd4, 0xd1, 0xbb, 0x3e, 0x78, 0xcc, 0x19, 0xad, + 0xd1, 0x60, 0x23, 0x78, 0x4c, 0xec, 0x57, 0xdd, 0x21, 0xff, 0xc5, 0x0b, 0xc9, 0xf5, 0xd5, 0xd8, + 0x2b, 0x87, 0xcd, 0x75, 0x8f, 0xd6, 0xa6, 0x9d, 0xfb, 0x3b, 0x00, 0x06, 0x79, 0x8f, 0x3d, 0xb0, + 0xf0, 0xbb, 0x5a, 0x71, 0x6c, 0x42, 0xe4, 0x1f, 0x63, 0x44, 0xf7, 0x63, 0x8c, 0x28, 0x55, 0x4d, + 0xda, 0x4c, 0x3e, 0x78, 0x21, 0xac, 0xaf, 0xa6, 0x0e, 0x99, 0xe4, 0x33, 0x20, 0x15, 0x2b, 0x3e, + 0xdc, 0x02, 0xbe, 0xef, 0xb7, 0xc0, 0xb9, 0xfd, 0xf9, 0xf1, 0xff, 0xe3, 0x27, 0x5b, 0x00, 0xb4, + 0xb6, 0x40, 0xaa, 0xff, 0x7f, 0xf0, 0xfb, 0xdf, 0x45, 0x7d, 0x02, 0x98, 0xfd, 0x10, 0x3c, 0xba, + 0x36, 0x3c, 0x27, 0xdf, 0x9a, 0x5f, 0x79, 0xbc, 0x13, 0x1f, 0x7a, 0xb2, 0x13, 0x1f, 0x7a, 0xb6, + 0x13, 0x07, 0x6f, 0xb7, 0xe2, 0xe0, 0xab, 0x56, 0x1c, 0x6c, 0xb7, 0xe2, 0xe0, 0x71, 0x2b, 0x0e, + 0x7e, 0x6c, 0xc5, 0xc1, 0xd3, 0x56, 0x7c, 0xe8, 0x59, 0x2b, 0x0e, 0x1e, 0xec, 0xc6, 0x87, 0x1e, + 0xee, 0xc6, 0xc1, 0xe3, 0xdd, 0xf8, 0xd0, 0x93, 0xdd, 0xf8, 0xd0, 0x6b, 0xb9, 0xb2, 0x61, 0xde, + 0x2d, 0x8b, 0x0d, 0xc3, 0x9e, 0x94, 0x2d, 0x55, 0xac, 0x93, 0x0c, 0x7b, 0xb0, 0x5f, 0x1b, 0xed, + 0x2b, 0x69, 0xe8, 0x45, 0x6c, 0xa5, 0x5d, 0x71, 0xc6, 0x2c, 0x94, 0x8d, 0x0c, 0xbe, 0x47, 0x9d, + 0x4f, 0x44, 0xbd, 0xbf, 0x49, 0x15, 0x82, 0x2c, 0x40, 0xff, 0xfe, 0x23, 0x00, 0x00, 0xff, 0xff, + 0xed, 0xff, 0xd7, 0xe9, 0xdd, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/trusted_ca_list/public_crudapi.vesapi.go b/pbgo/extschema/schema/trusted_ca_list/public_crudapi.vesapi.go index 39f58891d..010810693 100644 --- a/pbgo/extschema/schema/trusted_ca_list/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/trusted_ca_list/public_crudapi.vesapi.go @@ -2419,10 +2419,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2479,10 +2483,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2585,10 +2593,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/tunnel/crudapi/api.vesapi.go b/pbgo/extschema/schema/tunnel/crudapi/api.vesapi.go index b34a4dd12..40391b4df 100644 --- a/pbgo/extschema/schema/tunnel/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/tunnel/crudapi/api.vesapi.go @@ -3133,10 +3133,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/tunnel/object.pb.go b/pbgo/extschema/schema/tunnel/object.pb.go index 86bf86b9c..5549e5f90 100644 --- a/pbgo/extschema/schema/tunnel/object.pb.go +++ b/pbgo/extschema/schema/tunnel/object.pb.go @@ -232,44 +232,45 @@ func init() { } var fileDescriptor_40c0b9a2b459d6d9 = []byte{ - // 586 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0xd4, 0x4e, - 0x18, 0xc7, 0x3b, 0xbb, 0xa4, 0xf0, 0x1b, 0x08, 0x3f, 0x52, 0x3d, 0x54, 0xd4, 0x09, 0xae, 0x1e, - 0x38, 0xd8, 0xd6, 0xac, 0xf1, 0x00, 0xfe, 0x4b, 0xc0, 0x04, 0x35, 0x10, 0x93, 0xc5, 0x93, 0x17, - 0x32, 0x9d, 0x7d, 0xb6, 0x54, 0xda, 0x4e, 0x33, 0x33, 0x5d, 0xe0, 0x60, 0x62, 0x3c, 0x71, 0xf4, - 0x65, 0x18, 0xe3, 0x8b, 0x00, 0x4f, 0x1e, 0x09, 0x27, 0x8e, 0x6e, 0x37, 0x31, 0x1e, 0x79, 0x09, - 0x66, 0xa7, 0x74, 0xc3, 0xae, 0x3d, 0x98, 0xbd, 0x4d, 0xf3, 0x7c, 0xbe, 0xdf, 0x79, 0xe6, 0xf9, - 0x53, 0x7c, 0xa7, 0x0b, 0xd2, 0x0d, 0xb9, 0x27, 0xd9, 0x2e, 0xc4, 0xd4, 0x53, 0x59, 0x92, 0x40, - 0xe4, 0x71, 0xff, 0x3d, 0x30, 0xe5, 0xa6, 0x82, 0x2b, 0x6e, 0x5d, 0x2f, 0x10, 0xb7, 0x40, 0xdc, - 0x02, 0x59, 0x74, 0x82, 0x50, 0xed, 0x66, 0xbe, 0xcb, 0x78, 0xec, 0x05, 0x3c, 0xe0, 0x9e, 0x86, - 0xfd, 0xac, 0xa3, 0xbf, 0xf4, 0x87, 0x3e, 0x15, 0x26, 0x8b, 0x37, 0x47, 0xef, 0xe1, 0xa9, 0x0a, - 0x79, 0x22, 0x2f, 0x83, 0x4b, 0x95, 0x49, 0xa8, 0xc3, 0x14, 0x4a, 0xe2, 0xc6, 0x18, 0x71, 0x25, - 0xd4, 0x18, 0x0d, 0x75, 0x41, 0x42, 0xd2, 0x1d, 0xbd, 0xa0, 0x71, 0x34, 0x85, 0xcd, 0x37, 0xfa, - 0x4d, 0xd6, 0x0a, 0x9e, 0x89, 0x41, 0xd1, 0x36, 0x55, 0xd4, 0x46, 0x4b, 0x68, 0x79, 0xb6, 0x79, - 0xdb, 0x1d, 0x7d, 0x60, 0x01, 0x6e, 0x81, 0xa2, 0x6f, 0x0f, 0x53, 0x68, 0x0d, 0x71, 0x6b, 0x13, - 0xff, 0x2f, 0x0f, 0xa5, 0x82, 0x78, 0x67, 0xe8, 0x50, 0xd3, 0x0e, 0x77, 0xc7, 0x1c, 0xb6, 0x35, - 0x35, 0xe6, 0x33, 0x5f, 0x68, 0xb7, 0x4a, 0xb7, 0x26, 0x9e, 0x92, 0x29, 0x30, 0xbb, 0xae, 0x2d, - 0x88, 0x5b, 0x55, 0x65, 0x77, 0x3b, 0x05, 0xa6, 0xd5, 0x9a, 0x5d, 0x3d, 0xae, 0x7d, 0x7a, 0x6e, - 0x16, 0x3e, 0xdf, 0x4f, 0xec, 0xda, 0x02, 0x3a, 0x3b, 0xb1, 0xbf, 0xd5, 0xf0, 0x0a, 0xae, 0x6f, - 0x80, 0xb2, 0x9a, 0x9d, 0x47, 0x07, 0xcc, 0x91, 0xc0, 0x32, 0x01, 0x31, 0xc8, 0x5d, 0xc7, 0xa7, - 0x32, 0x64, 0x4e, 0xcc, 0x93, 0x50, 0x71, 0x71, 0x7f, 0x50, 0x65, 0x27, 0xe4, 0x4e, 0x02, 0x6a, - 0x9f, 0x8b, 0x3d, 0x47, 0x00, 0x6d, 0xe3, 0xc7, 0x78, 0xba, 0x05, 0x69, 0x44, 0x19, 0x58, 0x0f, - 0xaa, 0xe5, 0x99, 0x84, 0xbf, 0xb5, 0xfb, 0x22, 0x54, 0x80, 0x57, 0xb1, 0xb9, 0x2e, 0x80, 0xaa, - 0x09, 0xb5, 0x2f, 0x20, 0x82, 0x09, 0xb5, 0x53, 0x9b, 0xa1, 0x9c, 0xe8, 0xc1, 0x8d, 0x57, 0x78, - 0xa6, 0x2c, 0xaa, 0xf5, 0x14, 0x4f, 0x07, 0x6c, 0x47, 0x77, 0xa1, 0x68, 0xe4, 0xbd, 0xea, 0x2e, - 0x6c, 0x44, 0xdc, 0xa7, 0xd1, 0xb0, 0x17, 0x66, 0xc0, 0x06, 0xe7, 0xc6, 0x2f, 0x84, 0xe7, 0xb6, - 0x15, 0x55, 0x99, 0xfc, 0xe7, 0xd9, 0x2a, 0xf0, 0x8a, 0xd9, 0x7a, 0x89, 0x67, 0x8b, 0xa5, 0xdb, - 0x11, 0xd0, 0x91, 0x76, 0x6d, 0xa9, 0xbe, 0x3c, 0xdb, 0xbc, 0x55, 0x39, 0x99, 0x2d, 0xe8, 0x0c, - 0xc4, 0x6b, 0xff, 0x7d, 0xfd, 0x60, 0x16, 0x09, 0xb6, 0x30, 0x2f, 0x23, 0xd2, 0x7a, 0x82, 0x31, - 0xe3, 0x49, 0x3b, 0xd4, 0xf3, 0x6f, 0xd7, 0x2b, 0x8d, 0xd6, 0x4b, 0x40, 0x67, 0x71, 0x85, 0x5f, - 0xbd, 0x76, 0xf6, 0x6c, 0x01, 0xcf, 0xe3, 0xb9, 0x32, 0x31, 0x37, 0x0b, 0xdb, 0x6b, 0x47, 0xe8, - 0xb4, 0x47, 0x8c, 0xf3, 0x1e, 0x31, 0x2e, 0x7a, 0x04, 0x7d, 0xcc, 0x09, 0xfa, 0x92, 0x13, 0xf4, - 0x23, 0x27, 0xe8, 0x34, 0x27, 0xe8, 0x3c, 0x27, 0xe8, 0x67, 0x4e, 0xd0, 0xef, 0x9c, 0x18, 0x17, - 0x39, 0x41, 0x9f, 0xfb, 0xc4, 0x38, 0xee, 0x13, 0x74, 0xda, 0x27, 0xc6, 0x79, 0x9f, 0x18, 0xef, - 0x5e, 0x07, 0x3c, 0xdd, 0x0b, 0xdc, 0x2e, 0x8f, 0x14, 0x08, 0x41, 0xdd, 0x4c, 0x7a, 0xfa, 0xd0, - 0xe1, 0x22, 0x76, 0x52, 0xc1, 0xbb, 0x61, 0x1b, 0x84, 0x53, 0x86, 0xbd, 0xd4, 0x0f, 0xb8, 0x07, - 0x07, 0xea, 0x72, 0xa1, 0x47, 0x7e, 0x0a, 0xbe, 0xa9, 0x17, 0xfa, 0xe1, 0x9f, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x44, 0x80, 0x5a, 0x1e, 0xb8, 0x04, 0x00, 0x00, + // 604 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4f, 0x4f, 0xd4, 0x4e, + 0x18, 0xc7, 0x77, 0x58, 0x7e, 0x0b, 0xbf, 0x81, 0x20, 0xa9, 0x1e, 0x56, 0xd4, 0xc9, 0xba, 0x7a, + 0xe0, 0x60, 0xdb, 0x04, 0xe3, 0x41, 0xe2, 0x9f, 0x04, 0x4c, 0x50, 0x03, 0x21, 0x59, 0xb8, 0x88, + 0x26, 0x64, 0x3a, 0x7d, 0xb6, 0x54, 0xda, 0x4e, 0x33, 0x33, 0x2d, 0x70, 0x30, 0x31, 0x9e, 0x3c, + 0xfa, 0x32, 0xd4, 0x57, 0x21, 0x9e, 0xbc, 0x98, 0x10, 0x4e, 0x1c, 0xdd, 0x6e, 0x62, 0x3c, 0xf2, + 0x12, 0x0c, 0x33, 0x14, 0xd9, 0x4d, 0x63, 0xbc, 0x70, 0x9b, 0xe6, 0xfb, 0x99, 0xcf, 0x3c, 0x6d, + 0x9f, 0x79, 0xf0, 0xcd, 0x1c, 0xa4, 0x13, 0x72, 0x57, 0xb2, 0x2d, 0x88, 0xa9, 0xab, 0xb2, 0x24, + 0x81, 0xc8, 0xe5, 0xde, 0x6b, 0x60, 0xca, 0x49, 0x05, 0x57, 0xdc, 0xba, 0x62, 0x10, 0xc7, 0x20, + 0x8e, 0x41, 0x66, 0xec, 0x20, 0x54, 0x5b, 0x99, 0xe7, 0x30, 0x1e, 0xbb, 0x01, 0x0f, 0xb8, 0xab, + 0x61, 0x2f, 0xeb, 0xea, 0x27, 0xfd, 0xa0, 0x57, 0x46, 0x32, 0x73, 0x6d, 0xf0, 0x1c, 0x9e, 0xaa, + 0x90, 0x27, 0xf2, 0x34, 0x6c, 0x55, 0x16, 0xa1, 0xf6, 0x52, 0x28, 0x89, 0xab, 0x43, 0xc4, 0xb9, + 0xa8, 0x3d, 0x18, 0xe5, 0x20, 0x21, 0xc9, 0x07, 0x0f, 0x68, 0x7f, 0xfa, 0x0f, 0x37, 0x56, 0xf5, + 0x3b, 0x59, 0xf7, 0xf1, 0x78, 0x0c, 0x8a, 0xfa, 0x54, 0xd1, 0x26, 0x6a, 0xa1, 0xd9, 0x89, 0xb9, + 0x1b, 0xce, 0xe0, 0x0b, 0x1a, 0x70, 0x05, 0x14, 0x5d, 0xdf, 0x4b, 0xa1, 0x73, 0x86, 0x5b, 0xcb, + 0xf8, 0x92, 0xdc, 0x93, 0x0a, 0xe2, 0xcd, 0x33, 0xc3, 0x88, 0x36, 0xdc, 0x1a, 0x32, 0xac, 0x69, + 0x6a, 0xc8, 0x33, 0x65, 0xf6, 0xae, 0x94, 0xb6, 0x39, 0x3c, 0x2a, 0x53, 0x60, 0xcd, 0xba, 0x56, + 0x10, 0xa7, 0xea, 0x2b, 0x3b, 0x6b, 0x29, 0x30, 0xbd, 0x5b, 0xb3, 0xf3, 0xbd, 0xfa, 0xbb, 0xc7, + 0x0d, 0xe3, 0xf9, 0xba, 0xdf, 0x1c, 0x99, 0x46, 0x87, 0xfb, 0xcd, 0xef, 0x75, 0xfc, 0x12, 0xd7, + 0x97, 0x40, 0x59, 0xeb, 0xdd, 0x7b, 0xbb, 0xcc, 0x96, 0xc0, 0x32, 0x01, 0x31, 0xc8, 0x2d, 0xdb, + 0xa3, 0x32, 0x64, 0x76, 0xcc, 0x93, 0x50, 0x71, 0x71, 0xa7, 0x35, 0x1c, 0x4b, 0x45, 0x13, 0x9f, + 0x0a, 0xff, 0x0f, 0x91, 0x83, 0xb4, 0x43, 0x6e, 0x27, 0xa0, 0x76, 0xb8, 0xd8, 0xb6, 0x05, 0x50, + 0x1f, 0x6f, 0xe0, 0xb1, 0x0e, 0xa4, 0x11, 0x65, 0x60, 0xad, 0x56, 0x1f, 0x90, 0x49, 0xf8, 0x9b, + 0xdd, 0xc4, 0x43, 0xea, 0x1d, 0x11, 0x2a, 0xc0, 0x2f, 0x70, 0x63, 0x51, 0x00, 0x55, 0x17, 0xa3, + 0x7e, 0x02, 0x11, 0x5c, 0x84, 0xfa, 0x15, 0x1e, 0x5d, 0x0e, 0xe5, 0x05, 0x7d, 0xef, 0xf6, 0x33, + 0x3c, 0x5e, 0xfe, 0x75, 0xeb, 0x21, 0x1e, 0x0b, 0xd8, 0xa6, 0x6e, 0x13, 0xd3, 0x69, 0xb7, 0xab, + 0xdb, 0x64, 0x29, 0xe2, 0x1e, 0x8d, 0xce, 0x9a, 0xa5, 0x11, 0xb0, 0x93, 0x75, 0xfb, 0x27, 0xc2, + 0x93, 0x6b, 0x8a, 0xaa, 0x4c, 0xfe, 0x73, 0xf3, 0x1b, 0xbc, 0xa2, 0xf9, 0x9f, 0xe2, 0x09, 0x33, + 0x15, 0x36, 0x05, 0x74, 0x65, 0x73, 0xa4, 0x55, 0x9f, 0x9d, 0x98, 0xbb, 0x5e, 0x79, 0x75, 0x3a, + 0xd0, 0x3d, 0xd9, 0xbc, 0xf0, 0xff, 0xe7, 0x37, 0x0d, 0x53, 0x60, 0x07, 0xf3, 0x32, 0x91, 0xd6, + 0x03, 0x8c, 0x19, 0x4f, 0xfc, 0x50, 0x5f, 0xd0, 0x66, 0xbd, 0x52, 0xb4, 0x58, 0x02, 0xba, 0x8a, + 0x73, 0xfc, 0xfc, 0xe5, 0xc3, 0x47, 0xd3, 0x78, 0x0a, 0x4f, 0x96, 0x85, 0x39, 0x59, 0xe8, 0x2f, + 0xbc, 0x47, 0x07, 0x3d, 0x52, 0x3b, 0xea, 0x91, 0xda, 0x71, 0x8f, 0xa0, 0xb7, 0x05, 0x41, 0x1f, + 0x0b, 0x82, 0xbe, 0x15, 0x04, 0x1d, 0x14, 0x04, 0x1d, 0x15, 0x04, 0xfd, 0x28, 0x08, 0xfa, 0x55, + 0x90, 0xda, 0x71, 0x41, 0xd0, 0x87, 0x3e, 0xa9, 0x7d, 0xe9, 0x13, 0x74, 0xd0, 0x27, 0xb5, 0xa3, + 0x3e, 0xa9, 0x6d, 0x3c, 0x0f, 0x78, 0xba, 0x1d, 0x38, 0x39, 0x8f, 0x14, 0x08, 0x41, 0x9d, 0x4c, + 0xba, 0x7a, 0xd1, 0xe5, 0x22, 0xb6, 0x53, 0xc1, 0xf3, 0xd0, 0x07, 0x61, 0x97, 0xb1, 0x9b, 0x7a, + 0x01, 0x77, 0x61, 0x57, 0x9d, 0x4e, 0x9c, 0x81, 0xa9, 0xe5, 0x35, 0xf4, 0xc4, 0xb9, 0xfb, 0x3b, + 0x00, 0x00, 0xff, 0xff, 0x84, 0xfc, 0x44, 0x7e, 0x59, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/tunnel/public_crudapi.pb.go b/pbgo/extschema/schema/tunnel/public_crudapi.pb.go index 534a35b02..3bff611fe 100644 --- a/pbgo/extschema/schema/tunnel/public_crudapi.pb.go +++ b/pbgo/extschema/schema/tunnel/public_crudapi.pb.go @@ -1072,107 +1072,108 @@ func init() { } var fileDescriptor_7de31af785fef4d1 = []byte{ - // 1602 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x6c, 0xdb, 0xd6, - 0x19, 0xf7, 0x93, 0x64, 0x45, 0x7a, 0xf2, 0x1f, 0xe6, 0x2d, 0x71, 0x64, 0x25, 0x13, 0x64, 0xc5, - 0x09, 0x3c, 0x6f, 0x22, 0x33, 0x6f, 0xc3, 0x16, 0x23, 0x48, 0x26, 0xdb, 0x92, 0x61, 0xcf, 0x89, - 0x03, 0x4a, 0x09, 0xb6, 0x5d, 0x08, 0x8a, 0xfa, 0xa4, 0x70, 0x96, 0x48, 0x8e, 0x7c, 0x92, 0x63, - 0x0c, 0x1e, 0x86, 0x9c, 0x77, 0x18, 0xb0, 0x9d, 0x86, 0x1e, 0x5a, 0xa0, 0x2d, 0x7a, 0xee, 0xa1, - 0x28, 0xea, 0x4b, 0xd0, 0x4b, 0x82, 0x1c, 0x8a, 0xa0, 0x45, 0x81, 0xa0, 0xa7, 0x46, 0xee, 0x21, - 0xc7, 0x20, 0x40, 0xef, 0x05, 0xdf, 0x23, 0x15, 0x49, 0x66, 0x6c, 0xd9, 0xc9, 0x49, 0x7c, 0xef, - 0xfb, 0x7e, 0x3f, 0x7e, 0x3f, 0x7e, 0x7f, 0xf8, 0x44, 0xfc, 0x8b, 0x36, 0x38, 0xa2, 0x6e, 0x4a, - 0x8e, 0x76, 0x0f, 0x9a, 0xaa, 0x44, 0x5b, 0x86, 0x01, 0x0d, 0xc9, 0x6a, 0x55, 0x1a, 0xba, 0xa6, - 0x68, 0x76, 0xab, 0xaa, 0x5a, 0xba, 0x68, 0xd9, 0x26, 0x35, 0xc9, 0x19, 0xee, 0x2a, 0x72, 0x57, - 0x91, 0xbb, 0xa6, 0x72, 0x75, 0x9d, 0xde, 0x6b, 0x55, 0x44, 0xcd, 0x6c, 0x4a, 0x75, 0xb3, 0x6e, - 0x4a, 0xcc, 0xb9, 0xd2, 0xaa, 0xb1, 0x15, 0x5b, 0xb0, 0x2b, 0x4e, 0x92, 0xba, 0x50, 0x37, 0xcd, - 0x7a, 0x03, 0x24, 0xd5, 0xd2, 0x25, 0xd5, 0x30, 0x4c, 0xaa, 0x52, 0xdd, 0x34, 0x1c, 0xcf, 0x7a, - 0xde, 0xb3, 0x76, 0x39, 0xa0, 0x69, 0xd1, 0x1d, 0xcf, 0x98, 0xea, 0x0f, 0x15, 0x6c, 0xdb, 0xb4, - 0xbb, 0xc0, 0x7e, 0x9b, 0x69, 0xf5, 0xb2, 0xce, 0x04, 0x6a, 0x34, 0x2b, 0x7f, 0x03, 0x8d, 0x7a, - 0x2e, 0x99, 0x40, 0x17, 0xba, 0x63, 0x81, 0x4f, 0x32, 0x3d, 0xe0, 0xd1, 0x63, 0xca, 0xf6, 0x9b, - 0xda, 0xe0, 0x80, 0xd1, 0x1e, 0x88, 0x61, 0xe0, 0x06, 0x6d, 0x1d, 0xb6, 0x95, 0x3e, 0x8f, 0xec, - 0xc7, 0x08, 0x8f, 0x2f, 0xdb, 0xa0, 0x52, 0x90, 0xe1, 0xef, 0x2d, 0x70, 0x28, 0xb9, 0x81, 0x63, - 0x4d, 0xa0, 0x6a, 0x55, 0xa5, 0x6a, 0x12, 0x65, 0xd0, 0x5c, 0x62, 0xe1, 0xa2, 0xd8, 0x9f, 0x83, - 0x4d, 0xa6, 0x81, 0xa3, 0x6e, 0x02, 0x55, 0xcb, 0x3b, 0x16, 0xc8, 0x5d, 0x10, 0x59, 0xc3, 0x11, - 0xc7, 0x02, 0x2d, 0x19, 0x62, 0xe0, 0x59, 0x31, 0x28, 0x81, 0x22, 0x47, 0x97, 0x2c, 0xd0, 0x5c, - 0xf4, 0xd2, 0xe4, 0xff, 0x77, 0xc7, 0x5c, 0x90, 0x58, 0xd7, 0x14, 0xf7, 0x57, 0x66, 0x14, 0x8b, - 0xf1, 0x27, 0xd7, 0xa3, 0xfc, 0x6e, 0xd9, 0x57, 0x08, 0x4f, 0xf8, 0x81, 0x3a, 0x96, 0x69, 0x38, - 0x40, 0xae, 0x1d, 0x88, 0x34, 0x13, 0x18, 0xe9, 0x2a, 0xd0, 0x80, 0x30, 0x37, 0xf1, 0xa4, 0xb3, - 0xe3, 0x50, 0x68, 0x2a, 0x5d, 0x92, 0x30, 0x23, 0xb9, 0x3c, 0x40, 0x52, 0x62, 0x5e, 0x07, 0xa9, - 0x26, 0x38, 0xfc, 0xa6, 0x4f, 0x58, 0xec, 0xd3, 0x3d, 0x13, 0xac, 0x7b, 0x15, 0xe8, 0x31, 0x44, - 0x7f, 0x87, 0xf0, 0x84, 0x0c, 0x56, 0x43, 0xd5, 0xba, 0xe9, 0xf9, 0xe3, 0x01, 0xd1, 0xb3, 0x81, - 0xa2, 0x3d, 0x58, 0x80, 0xf0, 0xf5, 0xbe, 0x38, 0x2f, 0x05, 0xc7, 0xe9, 0xc1, 0x8f, 0x88, 0x95, - 0x48, 0x58, 0xb0, 0xc1, 0x31, 0x5b, 0xb6, 0x06, 0x4a, 0x1b, 0x6c, 0x47, 0x37, 0x0d, 0xf6, 0x14, - 0xe3, 0x4b, 0x91, 0x17, 0x7b, 0x08, 0xc9, 0x93, 0xbe, 0xf5, 0x2e, 0x37, 0xf6, 0x8a, 0x3b, 0x8d, - 0x27, 0xbb, 0xda, 0x78, 0x46, 0xb3, 0xff, 0x43, 0x18, 0xaf, 0x02, 0xf5, 0xb5, 0x5e, 0xc0, 0x71, - 0x43, 0x6d, 0x82, 0x63, 0xa9, 0x1a, 0x30, 0xb1, 0x71, 0xf9, 0xf5, 0x06, 0x21, 0x38, 0xe2, 0x2e, - 0x98, 0x8e, 0xb8, 0xcc, 0xae, 0x49, 0x19, 0xbb, 0x77, 0x64, 0x64, 0x4a, 0xcd, 0xb4, 0x9b, 0x2a, - 0x65, 0xe1, 0x4c, 0x2c, 0xfc, 0xf2, 0x8d, 0xe9, 0xf0, 0x6f, 0x5e, 0x64, 0xee, 0xcb, 0x66, 0x15, - 0xe4, 0x09, 0xbb, 0x6f, 0x2f, 0xfb, 0xe3, 0x28, 0x4e, 0xf4, 0x78, 0x92, 0x15, 0x9c, 0xd0, 0x58, - 0x29, 0xb2, 0x7b, 0x78, 0x0f, 0xf2, 0xe2, 0x61, 0x85, 0xee, 0x29, 0x92, 0x31, 0xc7, 0xb9, 0xbc, - 0x64, 0x15, 0x8f, 0xd9, 0x5c, 0x3f, 0xa7, 0x09, 0x1f, 0xd6, 0x2f, 0xfd, 0x55, 0x20, 0x27, 0x3c, - 0x24, 0x23, 0x0a, 0x4a, 0x42, 0xe4, 0x90, 0x24, 0xf4, 0x35, 0xce, 0xe8, 0xbb, 0x68, 0x9c, 0x53, - 0xef, 0xa4, 0x71, 0xa2, 0x6f, 0xd7, 0x38, 0x24, 0x8f, 0xa3, 0x0e, 0x55, 0x69, 0xcb, 0x49, 0xbe, - 0xff, 0x1e, 0xca, 0x84, 0xe7, 0x12, 0x0b, 0xd9, 0x60, 0xae, 0x12, 0xf3, 0xe2, 0x81, 0x2d, 0x85, - 0x1f, 0xee, 0x22, 0xd9, 0x03, 0x92, 0x35, 0x7c, 0xda, 0x86, 0x1a, 0xd8, 0xb6, 0x6e, 0xd4, 0x15, - 0x3e, 0xab, 0x9d, 0x64, 0x8c, 0x71, 0x5d, 0x78, 0x43, 0x9b, 0xd5, 0x98, 0x26, 0xa1, 0x0b, 0xe3, - 0xfb, 0x0e, 0xb9, 0x8b, 0x93, 0x55, 0x68, 0x00, 0x85, 0xaa, 0xc2, 0x6d, 0x50, 0xed, 0x32, 0xc6, - 0x87, 0x60, 0x9c, 0xf2, 0xd0, 0xb2, 0x07, 0xf6, 0x79, 0xff, 0x8c, 0xa7, 0xab, 0xba, 0xa3, 0x56, - 0x1a, 0x41, 0xc4, 0x78, 0x08, 0xe2, 0x73, 0x3e, 0x7c, 0x80, 0xb9, 0xa7, 0x37, 0xd7, 0x23, 0x31, - 0x24, 0x84, 0xb2, 0x1f, 0x21, 0x9c, 0xd8, 0xd0, 0x9d, 0x21, 0xfb, 0x71, 0x06, 0x8f, 0x35, 0xd4, - 0x0a, 0x34, 0x94, 0x9a, 0xde, 0xa0, 0x60, 0x7b, 0x7d, 0x99, 0x60, 0x7b, 0x45, 0xb6, 0x45, 0x2e, - 0xe2, 0x71, 0x1b, 0x2c, 0xd3, 0xa6, 0x4a, 0x4d, 0x87, 0x46, 0xd5, 0x49, 0x86, 0x33, 0xe1, 0xb9, - 0xb8, 0x3c, 0xc6, 0x37, 0x8b, 0x6c, 0x8f, 0x5c, 0xc1, 0x67, 0x3c, 0x27, 0x9e, 0x14, 0xdf, 0x37, - 0xc2, 0x7c, 0x09, 0xb7, 0xf1, 0x14, 0x72, 0x44, 0xf6, 0xc3, 0x28, 0x16, 0x78, 0x9c, 0xbc, 0x41, - 0xd7, 0x28, 0x34, 0xc9, 0x14, 0x8e, 0x52, 0x30, 0x54, 0x83, 0xb2, 0xba, 0x8a, 0xcb, 0xde, 0xea, - 0x04, 0x43, 0x45, 0xc0, 0xe1, 0x96, 0x5e, 0xe5, 0x73, 0x4d, 0x76, 0x2f, 0x49, 0x06, 0x27, 0xaa, - 0xe0, 0x68, 0xb6, 0xce, 0xde, 0xa5, 0xc9, 0x04, 0x57, 0xda, 0xb3, 0x45, 0x52, 0x38, 0xe6, 0x3f, - 0xe6, 0xe4, 0x58, 0x06, 0xcd, 0xc5, 0xe4, 0xee, 0x9a, 0xac, 0xe3, 0x28, 0x7b, 0x28, 0x5c, 0x52, - 0x62, 0x61, 0x21, 0xb8, 0x4a, 0x07, 0x15, 0x89, 0x1b, 0x0c, 0x54, 0x30, 0xa8, 0xbd, 0x23, 0x7b, - 0x0c, 0xe4, 0x2f, 0x38, 0xd1, 0x73, 0xa0, 0xf1, 0xf2, 0xff, 0xfb, 0x21, 0x09, 0xf3, 0xaf, 0x91, - 0x9c, 0xb5, 0x97, 0x8b, 0x5c, 0xc5, 0xd8, 0xdc, 0x36, 0xc0, 0x56, 0xdc, 0x63, 0x43, 0x32, 0xce, - 0x9a, 0x33, 0x35, 0xc0, 0x7c, 0x57, 0x87, 0x6d, 0xbf, 0xae, 0xe2, 0xcc, 0xdb, 0xdd, 0xe9, 0x1b, - 0x30, 0xe3, 0xef, 0x62, 0xc0, 0x4c, 0xbc, 0xd5, 0x80, 0xb9, 0x86, 0x63, 0x75, 0xa0, 0x6c, 0x54, - 0x78, 0xa3, 0xea, 0xe8, 0x21, 0x23, 0x9f, 0xaa, 0xf3, 0x05, 0x29, 0x62, 0xec, 0x15, 0xa2, 0x03, - 0xd4, 0x1b, 0x06, 0x43, 0x0f, 0x96, 0x38, 0x87, 0x96, 0x80, 0xa6, 0xae, 0xe2, 0x44, 0x4f, 0x06, - 0xdd, 0xaa, 0xda, 0x82, 0x1d, 0xaf, 0x02, 0xdd, 0x4b, 0x72, 0x06, 0x8f, 0xb6, 0xd5, 0x46, 0xcb, - 0x2f, 0x3e, 0xbe, 0x58, 0x0c, 0xfd, 0x01, 0xa5, 0xae, 0x63, 0x61, 0x30, 0x57, 0xc7, 0xc1, 0xaf, - 0x47, 0x62, 0xa3, 0x42, 0x34, 0xfb, 0x4f, 0x3c, 0xd6, 0x5b, 0x02, 0xe4, 0x1a, 0x1e, 0xd5, 0x29, - 0x34, 0x9d, 0x24, 0x1f, 0x96, 0x97, 0x87, 0xab, 0x1a, 0x99, 0x83, 0xc8, 0x15, 0x1c, 0xe5, 0x87, - 0xe1, 0x64, 0x88, 0xc1, 0x93, 0x03, 0xf0, 0x82, 0x6b, 0x64, 0x4f, 0xd2, 0xf3, 0xcb, 0x6e, 0xe1, - 0xf1, 0x15, 0x36, 0xd3, 0x4e, 0xfe, 0x7e, 0x9f, 0xc3, 0x42, 0x4d, 0xd5, 0x1b, 0x8a, 0x5e, 0xeb, - 0xce, 0x3e, 0xd6, 0x97, 0x31, 0x79, 0xc2, 0xdd, 0x5f, 0xab, 0xf9, 0x33, 0x6d, 0xfe, 0x15, 0xc2, - 0x67, 0x03, 0xdf, 0xee, 0x24, 0x85, 0xa7, 0x56, 0x0b, 0x65, 0x45, 0x2e, 0xdd, 0x56, 0x8a, 0x9b, - 0xf2, 0xcd, 0x7c, 0x59, 0x59, 0x29, 0x14, 0xf3, 0x77, 0x36, 0xca, 0xc2, 0x08, 0xf9, 0x39, 0x9e, - 0x1e, 0xb0, 0x15, 0x37, 0x65, 0x65, 0x59, 0x2e, 0xe4, 0xcb, 0x05, 0x01, 0x91, 0x34, 0x4e, 0x05, - 0x98, 0xe5, 0xc2, 0xed, 0x8d, 0xfc, 0x72, 0x41, 0x08, 0x91, 0x69, 0x7c, 0x76, 0xc0, 0x5e, 0x2a, - 0xe7, 0xcb, 0x77, 0x4a, 0x42, 0x98, 0x9c, 0xc3, 0x3f, 0x1b, 0x30, 0xc9, 0x85, 0xfc, 0x8a, 0x10, - 0x21, 0xb3, 0x38, 0x73, 0xc0, 0x50, 0x2c, 0xc8, 0xf2, 0xda, 0xad, 0x55, 0x65, 0x73, 0x69, 0xbd, - 0xb0, 0x5c, 0x2e, 0x09, 0xa3, 0x01, 0x5e, 0x4b, 0xf2, 0xe6, 0x9f, 0x0a, 0xb7, 0xb8, 0x73, 0xe1, - 0xd6, 0x72, 0xa1, 0x24, 0x44, 0x17, 0x3e, 0x88, 0xe1, 0x70, 0xfe, 0xf6, 0x1a, 0xf9, 0x12, 0xe1, - 0x28, 0x3f, 0x78, 0x90, 0x61, 0x8e, 0x25, 0xa9, 0xd9, 0xc3, 0x9d, 0xbc, 0xd3, 0x59, 0xb3, 0xf3, - 0x28, 0x29, 0xd5, 0x7e, 0x77, 0x5f, 0xcb, 0x39, 0xa0, 0xb5, 0x6c, 0x68, 0x82, 0x73, 0x2f, 0x57, - 0x51, 0x1d, 0x5d, 0xcb, 0xb5, 0x1c, 0xb0, 0x7f, 0xd5, 0x06, 0x27, 0xa7, 0x9b, 0x39, 0x03, 0xe8, - 0xb6, 0x69, 0x6f, 0xe5, 0xb6, 0x6d, 0x9d, 0xc2, 0x83, 0x6f, 0x7e, 0xf8, 0x6f, 0xe8, 0xb7, 0x59, - 0xc9, 0xfb, 0x73, 0x27, 0x75, 0xd3, 0xeb, 0x48, 0xff, 0xf0, 0xbb, 0x5b, 0xec, 0x6e, 0xee, 0x7a, - 0xff, 0x81, 0x9c, 0x45, 0x34, 0x4f, 0xbe, 0x40, 0x38, 0xbc, 0x0a, 0x94, 0x64, 0x0e, 0x39, 0xba, - 0xf1, 0xf0, 0x67, 0x8e, 0x3c, 0xdc, 0x65, 0x8d, 0xc7, 0x9f, 0x87, 0x50, 0xe7, 0x51, 0xf2, 0xd7, - 0xc1, 0xf1, 0x37, 0x4d, 0x43, 0xa7, 0xe6, 0x01, 0x09, 0x36, 0xa8, 0x55, 0xa6, 0x40, 0x22, 0xb9, - 0x20, 0x05, 0x07, 0x03, 0xe7, 0x7b, 0xbb, 0xe4, 0x33, 0x84, 0x23, 0x6e, 0xe7, 0x90, 0x99, 0xc3, - 0xba, 0x8a, 0x87, 0x9f, 0x3d, 0xba, 0xf1, 0xb2, 0xf5, 0xb7, 0x8b, 0x7f, 0x8e, 0x5c, 0x1e, 0x2e, - 0x7e, 0xf2, 0x2d, 0xc2, 0xa7, 0xbc, 0xc3, 0x26, 0x19, 0xea, 0x2c, 0x9a, 0xba, 0x74, 0x84, 0x97, - 0xa7, 0x60, 0xf7, 0xa4, 0xd5, 0xb3, 0x92, 0xba, 0x71, 0xcc, 0xea, 0x19, 0x30, 0xee, 0xba, 0xd5, - 0xf4, 0x29, 0xc2, 0x51, 0x3e, 0x7d, 0xde, 0xd4, 0x12, 0x7d, 0xb3, 0x29, 0x35, 0x25, 0xf2, 0xaf, - 0x02, 0xa2, 0xff, 0x55, 0x40, 0x2c, 0x34, 0x2d, 0xba, 0x93, 0xdd, 0x3a, 0xa9, 0x8c, 0x85, 0xf9, - 0xe3, 0x95, 0xd0, 0x22, 0x9a, 0x4f, 0xc9, 0x0f, 0xf7, 0x50, 0xe8, 0xeb, 0x3d, 0x74, 0x3e, 0x30, - 0x60, 0xfe, 0x9e, 0x79, 0xb6, 0x87, 0x50, 0x67, 0x0f, 0xcd, 0x1c, 0xf9, 0x42, 0x7a, 0xf0, 0x55, - 0x32, 0x24, 0xa0, 0xa5, 0x7f, 0xa3, 0x27, 0xd7, 0x47, 0x97, 0xe5, 0x3b, 0x2b, 0x1b, 0x4f, 0x9f, - 0xa7, 0x47, 0x9e, 0x3d, 0x4f, 0x8f, 0xbc, 0x7c, 0x9e, 0x46, 0xff, 0xea, 0xa4, 0xd1, 0x27, 0x9d, - 0x34, 0x7a, 0xdc, 0x49, 0xa3, 0xa7, 0x9d, 0x34, 0xfa, 0xbe, 0x93, 0x46, 0x2f, 0x3a, 0xe9, 0x91, - 0x97, 0x9d, 0x34, 0xfa, 0xcf, 0x7e, 0x7a, 0xe4, 0xe1, 0x7e, 0x1a, 0x3d, 0xdd, 0x4f, 0x8f, 0x3c, - 0xdb, 0x4f, 0x8f, 0xfc, 0x75, 0xbd, 0x6e, 0x5a, 0x5b, 0x75, 0xb1, 0x6d, 0xba, 0x87, 0x3a, 0x5b, - 0x15, 0x5b, 0x8e, 0xc4, 0x2e, 0xdc, 0xbf, 0x31, 0x39, 0xcb, 0x36, 0xdb, 0x7a, 0x15, 0xec, 0x9c, - 0x6f, 0x96, 0xac, 0x4a, 0xdd, 0x94, 0xe0, 0x3e, 0xf5, 0xbe, 0x42, 0xf4, 0x7d, 0xed, 0xa8, 0x44, - 0xd9, 0xf3, 0xfd, 0xcd, 0x4f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xca, 0x4a, 0x3f, 0x8e, 0x13, 0x12, + // 1618 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x1b, 0xc7, + 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb1, 0x9e, 0xda, 0x32, 0x45, 0xbb, 0x04, 0x45, 0xcb, + 0x86, 0xaa, 0x96, 0x4b, 0x43, 0x6d, 0xd1, 0x5a, 0x30, 0xec, 0x52, 0x12, 0x29, 0x48, 0x95, 0x2c, + 0x63, 0x48, 0x1b, 0x6d, 0x2f, 0x8b, 0xe5, 0x72, 0x48, 0x6f, 0x45, 0xee, 0x6e, 0x77, 0x86, 0x94, + 0x85, 0x42, 0x45, 0xe1, 0x53, 0x8b, 0x16, 0x48, 0x80, 0xe4, 0x94, 0xe4, 0x90, 0x43, 0x12, 0xe4, + 0x4f, 0x08, 0xa0, 0x8b, 0x91, 0x4b, 0x0c, 0x1f, 0x02, 0x27, 0xb9, 0x08, 0x41, 0x0e, 0x11, 0x95, + 0x83, 0x8f, 0x86, 0x91, 0xdc, 0x83, 0x9d, 0xd9, 0xa5, 0x49, 0x6a, 0x2d, 0x51, 0xfe, 0x38, 0x71, + 0x67, 0xde, 0xfb, 0xfd, 0xf6, 0xfd, 0xf6, 0x7d, 0xec, 0x70, 0xe1, 0xaf, 0x5a, 0x84, 0xca, 0xba, + 0x99, 0xa5, 0xda, 0x5d, 0xd2, 0x50, 0xb3, 0xac, 0x69, 0x18, 0xa4, 0x9e, 0xb5, 0x9a, 0xe5, 0xba, + 0xae, 0x29, 0x9a, 0xdd, 0xac, 0xa8, 0x96, 0x2e, 0x5b, 0xb6, 0xc9, 0x4c, 0x74, 0x46, 0xb8, 0xca, + 0xc2, 0x55, 0x16, 0xae, 0x89, 0x4c, 0x4d, 0x67, 0x77, 0x9b, 0x65, 0x59, 0x33, 0x1b, 0xd9, 0x9a, + 0x59, 0x33, 0xb3, 0xdc, 0xb9, 0xdc, 0xac, 0xf2, 0x15, 0x5f, 0xf0, 0x2b, 0x41, 0x92, 0xb8, 0x50, + 0x33, 0xcd, 0x5a, 0x9d, 0x64, 0x55, 0x4b, 0xcf, 0xaa, 0x86, 0x61, 0x32, 0x95, 0xe9, 0xa6, 0x41, + 0x5d, 0xeb, 0x79, 0xd7, 0xda, 0xe1, 0x20, 0x0d, 0x8b, 0x6d, 0xbb, 0xc6, 0x44, 0x6f, 0xa8, 0xc4, + 0xb6, 0x4d, 0xbb, 0x03, 0xec, 0xb5, 0x99, 0x56, 0x37, 0xeb, 0x94, 0xaf, 0x46, 0xb3, 0xfc, 0x77, + 0xa2, 0x31, 0xd7, 0x25, 0xe5, 0xeb, 0xc2, 0xb6, 0x2d, 0xe2, 0x91, 0x4c, 0xf6, 0x79, 0x74, 0x99, + 0xd2, 0xbd, 0xa6, 0x16, 0xa1, 0xc4, 0x68, 0xf5, 0xc5, 0xd0, 0x77, 0x83, 0x96, 0x4e, 0xb6, 0x94, + 0x1e, 0x8f, 0xf4, 0x27, 0x00, 0x8e, 0x2e, 0xda, 0x44, 0x65, 0x04, 0x93, 0x7f, 0x34, 0x09, 0x65, + 0xe8, 0x06, 0x8c, 0x34, 0x08, 0x53, 0x2b, 0x2a, 0x53, 0xe3, 0x20, 0x05, 0x66, 0x62, 0x73, 0x17, + 0xe5, 0xde, 0x1c, 0x6c, 0x70, 0x0d, 0x02, 0xb5, 0x4e, 0x98, 0x5a, 0xda, 0xb6, 0x08, 0xee, 0x80, + 0xd0, 0x0a, 0x0c, 0x51, 0x8b, 0x68, 0xf1, 0x00, 0x07, 0x4f, 0xcb, 0x7e, 0x09, 0x94, 0x05, 0xba, + 0x68, 0x11, 0xcd, 0x41, 0x2f, 0x8c, 0xbf, 0xb7, 0x33, 0xe2, 0x80, 0xe4, 0x9a, 0xa6, 0x38, 0xbf, + 0x98, 0x53, 0xcc, 0x47, 0x1f, 0x5d, 0x0f, 0x8b, 0xbb, 0xa5, 0x9f, 0x01, 0x38, 0xe6, 0x05, 0x4a, + 0x2d, 0xd3, 0xa0, 0x04, 0x5d, 0x3b, 0x14, 0x69, 0xca, 0x37, 0xd2, 0x65, 0xc2, 0x7c, 0xc2, 0xdc, + 0x80, 0xe3, 0x74, 0x9b, 0x32, 0xd2, 0x50, 0x3a, 0x24, 0x41, 0x4e, 0x72, 0xb9, 0x8f, 0xa4, 0xc8, + 0xbd, 0x0e, 0x53, 0x8d, 0x09, 0xf8, 0xba, 0x47, 0x58, 0xe8, 0xd1, 0x3d, 0xe5, 0xaf, 0x7b, 0x99, + 0xb0, 0x13, 0x88, 0xfe, 0x16, 0xc0, 0x31, 0x4c, 0xac, 0xba, 0xaa, 0x75, 0xd2, 0xf3, 0xa7, 0x43, + 0xa2, 0xa7, 0x7d, 0x45, 0xbb, 0x30, 0x1f, 0xe1, 0xab, 0x3d, 0x71, 0x5e, 0xf2, 0x8f, 0xd3, 0x85, + 0x1f, 0x13, 0x2b, 0xca, 0x42, 0xc9, 0x26, 0xd4, 0x6c, 0xda, 0x1a, 0x51, 0x5a, 0xc4, 0xa6, 0xba, + 0x69, 0xf0, 0xa7, 0x18, 0x5d, 0x08, 0x3d, 0xd9, 0x05, 0x00, 0x8f, 0x7b, 0xd6, 0x3b, 0xc2, 0xd8, + 0x2d, 0xee, 0x34, 0x1c, 0xef, 0x68, 0x13, 0x19, 0x4d, 0xbf, 0x0b, 0x20, 0x5c, 0x26, 0xcc, 0xd3, + 0x7a, 0x01, 0x46, 0x0d, 0xb5, 0x41, 0xa8, 0xa5, 0x6a, 0x84, 0x8b, 0x8d, 0xe2, 0xe7, 0x1b, 0x08, + 0xc1, 0x90, 0xb3, 0xe0, 0x3a, 0xa2, 0x98, 0x5f, 0xa3, 0x12, 0x74, 0xee, 0xc8, 0xc9, 0x94, 0xaa, + 0x69, 0x37, 0x54, 0xc6, 0xc3, 0x19, 0x9b, 0xfb, 0xf5, 0x0b, 0xd3, 0xe1, 0xdd, 0xbc, 0xc0, 0xdd, + 0x17, 0xcd, 0x0a, 0xc1, 0x63, 0x76, 0xcf, 0x5e, 0xfa, 0xa7, 0x61, 0x18, 0xeb, 0xf2, 0x44, 0x4b, + 0x30, 0xa6, 0xf1, 0x52, 0xe4, 0xf7, 0x70, 0x1f, 0xe4, 0xc5, 0xa3, 0x0a, 0xdd, 0x55, 0x84, 0xa1, + 0xc0, 0x39, 0xbc, 0x68, 0x19, 0x8e, 0xd8, 0x42, 0xbf, 0xa0, 0x09, 0x1e, 0xd5, 0x2f, 0xbd, 0x55, + 0x80, 0x63, 0x2e, 0x92, 0x13, 0xf9, 0x25, 0x21, 0x74, 0x44, 0x12, 0x7a, 0x1a, 0x67, 0xf8, 0x75, + 0x34, 0xce, 0xa9, 0xd7, 0xd2, 0x38, 0xe1, 0x57, 0x6b, 0x1c, 0x94, 0x83, 0x61, 0xca, 0x54, 0xd6, + 0xa4, 0xf1, 0x0f, 0x3f, 0x00, 0xa9, 0xe0, 0x4c, 0x6c, 0x2e, 0xed, 0xcf, 0x55, 0xe4, 0x5e, 0x22, + 0xb0, 0x85, 0xe0, 0x83, 0x1d, 0x80, 0x5d, 0x20, 0x5a, 0x81, 0xa7, 0x6d, 0x52, 0x25, 0xb6, 0xad, + 0x1b, 0x35, 0x45, 0xcc, 0x6a, 0x1a, 0x8f, 0x70, 0xae, 0x0b, 0x2f, 0x68, 0xb3, 0x2a, 0xd7, 0x24, + 0x75, 0x60, 0x62, 0x9f, 0xa2, 0x3b, 0x30, 0x5e, 0x21, 0x75, 0xc2, 0x48, 0x45, 0x11, 0x36, 0x52, + 0xe9, 0x30, 0x46, 0x07, 0x60, 0x9c, 0x70, 0xd1, 0xd8, 0x05, 0x7b, 0xbc, 0x7f, 0x81, 0x93, 0x15, + 0x9d, 0xaa, 0xe5, 0xba, 0x1f, 0x31, 0x1c, 0x80, 0xf8, 0x9c, 0x07, 0xef, 0x63, 0xee, 0xea, 0xcd, + 0xd5, 0x50, 0x04, 0x48, 0x81, 0xf4, 0xc7, 0x00, 0xc6, 0xd6, 0x74, 0x3a, 0x60, 0x3f, 0x4e, 0xc1, + 0x91, 0xba, 0x5a, 0x26, 0x75, 0xa5, 0xaa, 0xd7, 0x19, 0xb1, 0xdd, 0xbe, 0x8c, 0xf1, 0xbd, 0x02, + 0xdf, 0x42, 0x17, 0xe1, 0xa8, 0x4d, 0x2c, 0xd3, 0x66, 0x4a, 0x55, 0x27, 0xf5, 0x0a, 0x8d, 0x07, + 0x53, 0xc1, 0x99, 0x28, 0x1e, 0x11, 0x9b, 0x05, 0xbe, 0x87, 0xae, 0xc0, 0x33, 0xae, 0x93, 0x48, + 0x8a, 0xe7, 0x1b, 0xe2, 0xbe, 0x48, 0xd8, 0x44, 0x0a, 0x05, 0x22, 0xfd, 0x51, 0x18, 0x4a, 0x22, + 0x4e, 0xd1, 0xa0, 0x2b, 0x8c, 0x34, 0xd0, 0x04, 0x0c, 0x33, 0x62, 0xa8, 0x06, 0xe3, 0x75, 0x15, + 0xc5, 0xee, 0xea, 0x25, 0x86, 0x8a, 0x04, 0x83, 0x4d, 0xbd, 0x22, 0xe6, 0x1a, 0x76, 0x2e, 0x51, + 0x0a, 0xc6, 0x2a, 0x84, 0x6a, 0xb6, 0xce, 0xdf, 0xa5, 0xf1, 0x98, 0x50, 0xda, 0xb5, 0x85, 0x12, + 0x30, 0xe2, 0x3d, 0xe6, 0xf8, 0x48, 0x0a, 0xcc, 0x44, 0x70, 0x67, 0x8d, 0x56, 0x61, 0x98, 0x3f, + 0x14, 0x21, 0x29, 0x36, 0x37, 0xe7, 0x5f, 0xa5, 0xfd, 0x8a, 0xe4, 0x35, 0x0e, 0xca, 0x1b, 0xcc, + 0xde, 0xc6, 0x2e, 0x03, 0xfa, 0x2b, 0x8c, 0x75, 0x1d, 0x68, 0xdc, 0xfc, 0xff, 0x61, 0x40, 0xc2, + 0xdc, 0x73, 0xa4, 0x60, 0xed, 0xe6, 0x42, 0x57, 0x21, 0x34, 0xb7, 0x0c, 0x62, 0x2b, 0xce, 0xb1, + 0x21, 0x1e, 0xe5, 0xcd, 0x99, 0xe8, 0x63, 0xbe, 0xa3, 0x93, 0x2d, 0xaf, 0xae, 0xa2, 0xdc, 0xdb, + 0xd9, 0xe9, 0x19, 0x30, 0xa3, 0xaf, 0x63, 0xc0, 0x8c, 0xbd, 0xd2, 0x80, 0xb9, 0x06, 0x23, 0x35, + 0xc2, 0xf8, 0xa8, 0x70, 0x47, 0xd5, 0xf1, 0x43, 0x06, 0x9f, 0xaa, 0x89, 0x05, 0x2a, 0x40, 0xe8, + 0x16, 0x22, 0x25, 0xcc, 0x1d, 0x06, 0x03, 0x0f, 0x96, 0xa8, 0x80, 0x16, 0x09, 0x4b, 0x5c, 0x85, + 0xb1, 0xae, 0x0c, 0x3a, 0x55, 0xb5, 0x49, 0xb6, 0xdd, 0x0a, 0x74, 0x2e, 0xd1, 0x19, 0x38, 0xdc, + 0x52, 0xeb, 0x4d, 0xaf, 0xf8, 0xc4, 0x62, 0x3e, 0xf0, 0x47, 0x90, 0xb8, 0x0e, 0xa5, 0xfe, 0x5c, + 0x9d, 0x04, 0xbf, 0x1a, 0x8a, 0x0c, 0x4b, 0xe1, 0xf4, 0xbf, 0xe0, 0x48, 0x77, 0x09, 0xa0, 0x6b, + 0x70, 0x58, 0x67, 0xa4, 0x41, 0xe3, 0x62, 0x58, 0x5e, 0x1e, 0xac, 0x6a, 0xb0, 0x00, 0xa1, 0x2b, + 0x30, 0x2c, 0x0e, 0xc3, 0xf1, 0x00, 0x87, 0xc7, 0xfb, 0xe0, 0x79, 0xc7, 0xc8, 0x9f, 0xa4, 0xeb, + 0x97, 0xde, 0x84, 0xa3, 0x4b, 0x7c, 0xa6, 0xbd, 0xfc, 0xfb, 0x7d, 0x06, 0x4a, 0x55, 0x55, 0xaf, + 0x2b, 0x7a, 0xb5, 0x33, 0xfb, 0x78, 0x5f, 0x46, 0xf0, 0x98, 0xb3, 0xbf, 0x52, 0xf5, 0x66, 0xda, + 0xec, 0x33, 0x00, 0xcf, 0xfa, 0xbe, 0xdd, 0x51, 0x02, 0x4e, 0x2c, 0xe7, 0x4b, 0x0a, 0x2e, 0xde, + 0x52, 0x0a, 0x1b, 0x78, 0x3d, 0x57, 0x52, 0x96, 0xf2, 0x85, 0xdc, 0xed, 0xb5, 0x92, 0x34, 0x84, + 0x7e, 0x09, 0x27, 0xfb, 0x6c, 0x85, 0x0d, 0xac, 0x2c, 0xe2, 0x7c, 0xae, 0x94, 0x97, 0x00, 0x4a, + 0xc2, 0x84, 0x8f, 0x19, 0xe7, 0x6f, 0xad, 0xe5, 0x16, 0xf3, 0x52, 0x00, 0x4d, 0xc2, 0xb3, 0x7d, + 0xf6, 0x62, 0x29, 0x57, 0xba, 0x5d, 0x94, 0x82, 0xe8, 0x1c, 0xfc, 0x45, 0x9f, 0x09, 0xe7, 0x73, + 0x4b, 0x52, 0x08, 0x4d, 0xc3, 0xd4, 0x21, 0x43, 0x21, 0x8f, 0xf1, 0xca, 0xcd, 0x65, 0x65, 0x63, + 0x61, 0x35, 0xbf, 0x58, 0x2a, 0x4a, 0xc3, 0x3e, 0x5e, 0x0b, 0x78, 0xe3, 0xcf, 0xf9, 0x9b, 0xc2, + 0x39, 0x7f, 0x73, 0x31, 0x5f, 0x94, 0xc2, 0x73, 0x9f, 0x47, 0x61, 0x30, 0x77, 0x6b, 0x05, 0xed, + 0x03, 0x18, 0x16, 0x07, 0x0f, 0x34, 0xc8, 0xb1, 0x24, 0x31, 0x7d, 0xb4, 0x93, 0x7b, 0x3a, 0xfb, + 0x1f, 0x68, 0x7f, 0x11, 0x5f, 0xaf, 0xfe, 0xfe, 0x9e, 0x96, 0xa1, 0x44, 0x6b, 0xda, 0xa4, 0x41, + 0xe8, 0xdd, 0x4c, 0x59, 0xa5, 0xba, 0x96, 0x69, 0x52, 0x62, 0xff, 0xa6, 0xdf, 0x44, 0x99, 0x6a, + 0x54, 0x54, 0xbb, 0x22, 0xac, 0x2d, 0x42, 0x33, 0xba, 0x99, 0x31, 0x08, 0xdb, 0x32, 0xed, 0xcd, + 0xcc, 0x96, 0xad, 0x33, 0x72, 0xff, 0x9b, 0x1f, 0xde, 0x09, 0xfc, 0x2e, 0x9d, 0x75, 0xff, 0xfb, + 0x65, 0x3b, 0xd9, 0xa7, 0xd9, 0x7f, 0x7a, 0xcd, 0x2f, 0x77, 0x36, 0x77, 0xdc, 0xbf, 0x48, 0x74, + 0x1e, 0xcc, 0xa2, 0xef, 0x00, 0x0c, 0x2e, 0x13, 0x86, 0x52, 0x47, 0x9c, 0xec, 0x84, 0xba, 0xa9, + 0x63, 0xcf, 0x7e, 0xe9, 0xb7, 0xc0, 0xc3, 0xcf, 0x02, 0x8e, 0x3c, 0xec, 0x2f, 0xaf, 0x61, 0x1a, + 0x3a, 0x33, 0x8f, 0x50, 0xe8, 0x39, 0xf4, 0x89, 0xb4, 0x89, 0x5a, 0xe1, 0x1a, 0xb3, 0x28, 0xe3, + 0xa7, 0xf1, 0xb0, 0x34, 0xb1, 0xb7, 0x83, 0xf6, 0x00, 0x0c, 0x39, 0xad, 0x87, 0xa6, 0x8e, 0x6a, + 0x4b, 0x21, 0x30, 0x7d, 0x7c, 0xe7, 0xa6, 0xff, 0xf3, 0xa6, 0x15, 0xce, 0xa0, 0xcb, 0x83, 0x29, + 0x44, 0x3f, 0x02, 0x78, 0xca, 0x3d, 0xcf, 0xa2, 0x81, 0x8e, 0xbb, 0x89, 0x4b, 0xc7, 0x78, 0xb9, + 0x1a, 0xdf, 0x7f, 0x43, 0x05, 0xba, 0x94, 0xb8, 0x71, 0xc2, 0x02, 0xed, 0x33, 0xee, 0x38, 0x05, + 0xfb, 0x15, 0x80, 0x61, 0x31, 0xff, 0x5e, 0xd4, 0x94, 0x3d, 0xd3, 0x31, 0x31, 0x21, 0x8b, 0xef, + 0x12, 0xb2, 0xf7, 0x5d, 0x42, 0xce, 0x37, 0x2c, 0xb6, 0x9d, 0xfe, 0xef, 0x1b, 0x52, 0x39, 0x37, + 0x7b, 0xb2, 0x12, 0x9d, 0x07, 0xb3, 0x09, 0xfc, 0x60, 0x17, 0x04, 0xbe, 0xde, 0x05, 0xe7, 0x7d, + 0xf5, 0x88, 0x17, 0xe1, 0xde, 0x2e, 0x00, 0xed, 0x5d, 0x30, 0x75, 0xec, 0x1b, 0xf3, 0xfe, 0x97, + 0xf1, 0x80, 0x04, 0x16, 0xfe, 0x0f, 0x1e, 0x5d, 0x1f, 0x5e, 0xc4, 0xb7, 0x97, 0xd6, 0x1e, 0xef, + 0x27, 0x87, 0xf6, 0xf6, 0x93, 0x43, 0x4f, 0xf7, 0x93, 0xe0, 0xdf, 0xed, 0x24, 0xf8, 0xb4, 0x9d, + 0x04, 0x0f, 0xdb, 0x49, 0xf0, 0xb8, 0x9d, 0x04, 0xdf, 0xb7, 0x93, 0xe0, 0x49, 0x3b, 0x39, 0xf4, + 0xb4, 0x9d, 0x04, 0x6f, 0x1f, 0x24, 0x87, 0x1e, 0x1c, 0x24, 0xc1, 0xe3, 0x83, 0xe4, 0xd0, 0xde, + 0x41, 0x72, 0xe8, 0x6f, 0xab, 0x35, 0xd3, 0xda, 0xac, 0xc9, 0x2d, 0xd3, 0x39, 0x75, 0xda, 0xaa, + 0xdc, 0xa4, 0x59, 0x7e, 0xe1, 0xfc, 0xcf, 0xca, 0x58, 0xb6, 0xd9, 0xd2, 0x2b, 0xc4, 0xce, 0x78, + 0xe6, 0xac, 0x55, 0xae, 0x99, 0x59, 0x72, 0x8f, 0xb9, 0x9f, 0x49, 0x7a, 0x3e, 0xc7, 0x94, 0xc3, + 0xfc, 0xf1, 0xff, 0xf6, 0xe7, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8d, 0xbb, 0x32, 0xf1, 0xb4, 0x12, 0x00, 0x00, } diff --git a/pbgo/extschema/schema/tunnel/public_crudapi.vesapi.go b/pbgo/extschema/schema/tunnel/public_crudapi.vesapi.go index 146dab407..485b63733 100644 --- a/pbgo/extschema/schema/tunnel/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/tunnel/public_crudapi.vesapi.go @@ -2505,10 +2505,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2565,10 +2569,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2671,10 +2679,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/types.pb.go b/pbgo/extschema/schema/types.pb.go index 81124c9fe..f63fb075e 100644 --- a/pbgo/extschema/schema/types.pb.go +++ b/pbgo/extschema/schema/types.pb.go @@ -1482,21 +1482,34 @@ const ( // access is allowed AS_AC_ALLOWED AddonServiceAccess = 1 // x-displayName: "PBAC Deny" - // Plan based access control denied. - // This means current plan doesnt allow this addon service. + // Plan based access control denied. This means current plan doesnt allow this addon service. + // When the user clicks on such addon, he will be shown billing plan upgrade page AS_AC_PBAC_DENY AddonServiceAccess = 2 + // x-displayName: "PBAC Deny - Upgrade plan" + // Plan based access control denied. This means current plan doesnt allow this addon service. + // When the user clicks on such addon, he will be shown billing plan upgrade page + AS_AC_PBAC_DENY_UPGRADE_PLAN AddonServiceAccess = 3 + // x-displayName: "PBAC Deny - Request service" + // Plan based access control denied. This means current plan doesnt allow this addon service. + // When the user clicks on such addon, he will be shown request service button which creates a support ticket requesting enablement of the addon. + // Since the addon is not part of the plan, the customer would be advised accordingly by the support team depending on his current plan + AS_AC_PBAC_DENY_REQUEST_SERVICE AddonServiceAccess = 4 ) var AddonServiceAccess_name = map[int32]string{ 0: "AS_AC_NONE", 1: "AS_AC_ALLOWED", 2: "AS_AC_PBAC_DENY", + 3: "AS_AC_PBAC_DENY_UPGRADE_PLAN", + 4: "AS_AC_PBAC_DENY_REQUEST_SERVICE", } var AddonServiceAccess_value = map[string]int32{ - "AS_AC_NONE": 0, - "AS_AC_ALLOWED": 1, - "AS_AC_PBAC_DENY": 2, + "AS_AC_NONE": 0, + "AS_AC_ALLOWED": 1, + "AS_AC_PBAC_DENY": 2, + "AS_AC_PBAC_DENY_UPGRADE_PLAN": 3, + "AS_AC_PBAC_DENY_REQUEST_SERVICE": 4, } func (AddonServiceAccess) EnumDescriptor() ([]byte, []int) { @@ -1745,6 +1758,47 @@ func (CloudLinkState) EnumDescriptor() ([]byte, []int) { return fileDescriptor_f21334e98d27f9ba, []int{35} } +// SignupOrigin +// +// x-displayName: "Signup Origin" +// x-required +// SignupOrigin indicates, from which platform signup is originated, example f5xc, aws..etc +type SignupOrigin int32 + +const ( + // ORIGIN_UNKNOWN + // + // x-displayName: "Unknown" + // Indicates, the origin of the signup is unknown + ORIGIN_UNKNOWN SignupOrigin = 0 + // ORIGIN_F5XC + // + // x-displayName: "F5XC" + // ORIGIN_F5XC as an origin indicates, signup is initiated from console or by internal scaling/testing/support teams using private API + ORIGIN_F5XC SignupOrigin = 1 + // ORIGIN_AWS + // + // x-displayName: "AWS" + // ORIGIN_AWS as an origin indicates, signup is initiated from AWS marketplace & it comes to eywaprime via tsahik + ORIGIN_AWS SignupOrigin = 2 +) + +var SignupOrigin_name = map[int32]string{ + 0: "ORIGIN_UNKNOWN", + 1: "ORIGIN_F5XC", + 2: "ORIGIN_AWS", +} + +var SignupOrigin_value = map[string]int32{ + "ORIGIN_UNKNOWN": 0, + "ORIGIN_F5XC": 1, + "ORIGIN_AWS": 2, +} + +func (SignupOrigin) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_f21334e98d27f9ba, []int{36} +} + // Empty // // x-displayName: "Empty" @@ -5956,7 +6010,7 @@ type L4DestType struct { // prefixes // // x-displayName: "IPv4 Prefixes" - // x-example: "10.0.0./24" + // x-example: "10.0.0.1/24" // x-required // Destination IPv4 prefixes. Prefixes []string `protobuf:"bytes,1,rep,name=prefixes,proto3" json:"prefixes,omitempty"` @@ -10105,6 +10159,7 @@ type HeaderTransformationType struct { // // Types that are valid to be assigned to HeaderTransformationChoice: // + // *HeaderTransformationType_LegacyHeaderTransformation // *HeaderTransformationType_DefaultHeaderTransformation // *HeaderTransformationType_ProperCaseHeaderTransformation // *HeaderTransformationType_PreserveCaseHeaderTransformation @@ -10146,6 +10201,9 @@ type isHeaderTransformationType_HeaderTransformationChoice interface { Size() int } +type HeaderTransformationType_LegacyHeaderTransformation struct { + LegacyHeaderTransformation *Empty `protobuf:"bytes,5,opt,name=legacy_header_transformation,json=legacyHeaderTransformation,proto3,oneof" json:"legacy_header_transformation,omitempty"` +} type HeaderTransformationType_DefaultHeaderTransformation struct { DefaultHeaderTransformation *Empty `protobuf:"bytes,2,opt,name=default_header_transformation,json=defaultHeaderTransformation,proto3,oneof" json:"default_header_transformation,omitempty"` } @@ -10156,6 +10214,8 @@ type HeaderTransformationType_PreserveCaseHeaderTransformation struct { PreserveCaseHeaderTransformation *Empty `protobuf:"bytes,4,opt,name=preserve_case_header_transformation,json=preserveCaseHeaderTransformation,proto3,oneof" json:"preserve_case_header_transformation,omitempty"` } +func (*HeaderTransformationType_LegacyHeaderTransformation) isHeaderTransformationType_HeaderTransformationChoice() { +} func (*HeaderTransformationType_DefaultHeaderTransformation) isHeaderTransformationType_HeaderTransformationChoice() { } func (*HeaderTransformationType_ProperCaseHeaderTransformation) isHeaderTransformationType_HeaderTransformationChoice() { @@ -10170,6 +10230,13 @@ func (m *HeaderTransformationType) GetHeaderTransformationChoice() isHeaderTrans return nil } +func (m *HeaderTransformationType) GetLegacyHeaderTransformation() *Empty { + if x, ok := m.GetHeaderTransformationChoice().(*HeaderTransformationType_LegacyHeaderTransformation); ok { + return x.LegacyHeaderTransformation + } + return nil +} + func (m *HeaderTransformationType) GetDefaultHeaderTransformation() *Empty { if x, ok := m.GetHeaderTransformationChoice().(*HeaderTransformationType_DefaultHeaderTransformation); ok { return x.DefaultHeaderTransformation @@ -10194,6 +10261,7 @@ func (m *HeaderTransformationType) GetPreserveCaseHeaderTransformation() *Empty // XXX_OneofWrappers is for the internal use of the proto package. func (*HeaderTransformationType) XXX_OneofWrappers() []interface{} { return []interface{}{ + (*HeaderTransformationType_LegacyHeaderTransformation)(nil), (*HeaderTransformationType_DefaultHeaderTransformation)(nil), (*HeaderTransformationType_ProperCaseHeaderTransformation)(nil), (*HeaderTransformationType_PreserveCaseHeaderTransformation)(nil), @@ -12164,6 +12232,8 @@ func init() { golang_proto.RegisterEnum("ves.io.schema.AddonServiceTierType", AddonServiceTierType_name, AddonServiceTierType_value) proto.RegisterEnum("ves.io.schema.CloudLinkState", CloudLinkState_name, CloudLinkState_value) golang_proto.RegisterEnum("ves.io.schema.CloudLinkState", CloudLinkState_name, CloudLinkState_value) + proto.RegisterEnum("ves.io.schema.SignupOrigin", SignupOrigin_name, SignupOrigin_value) + golang_proto.RegisterEnum("ves.io.schema.SignupOrigin", SignupOrigin_name, SignupOrigin_value) proto.RegisterType((*Empty)(nil), "ves.io.schema.Empty") golang_proto.RegisterType((*Empty)(nil), "ves.io.schema.Empty") proto.RegisterType((*ObjectRefType)(nil), "ves.io.schema.ObjectRefType") @@ -12414,834 +12484,840 @@ func init() { proto.RegisterFile("ves.io/schema/types.proto", fileDescriptor_f21 func init() { golang_proto.RegisterFile("ves.io/schema/types.proto", fileDescriptor_f21334e98d27f9ba) } var fileDescriptor_f21334e98d27f9ba = []byte{ - // 13219 bytes of a gzipped FileDescriptorProto + // 13327 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x70, 0x1b, 0x49, 0x76, 0x18, 0xce, 0xc6, 0x17, 0xc1, 0x07, 0x10, 0x1c, 0x36, 0xf5, 0x41, 0x41, 0x1f, 0x0b, 0x61, - 0xbf, 0x74, 0x38, 0x8a, 0x12, 0x29, 0x4a, 0xab, 0xd5, 0xdd, 0x69, 0x17, 0x00, 0x41, 0x11, 0x5a, - 0x12, 0xc4, 0x0e, 0x40, 0x49, 0x7b, 0xe7, 0xf2, 0xec, 0x10, 0x68, 0x90, 0x63, 0x01, 0x33, 0xd8, - 0x99, 0x01, 0x45, 0xfa, 0xf7, 0x93, 0x7f, 0xfa, 0x5d, 0x52, 0xa9, 0xcb, 0x3a, 0xb6, 0xef, 0x36, - 0xe7, 0xf8, 0xb2, 0x89, 0xe3, 0x75, 0xec, 0xd8, 0x57, 0x5b, 0x76, 0x7c, 0x2e, 0x3b, 0x55, 0x49, - 0x20, 0x57, 0xb6, 0xd6, 0x89, 0xeb, 0xac, 0x38, 0x67, 0x55, 0xaa, 0x52, 0xb5, 0x75, 0x76, 0xa5, - 0xce, 0xda, 0x38, 0x3e, 0xbb, 0x5c, 0x95, 0xab, 0x4d, 0x1c, 0x5f, 0x3e, 0x2a, 0x9b, 0xea, 0x8f, - 0x19, 0xcc, 0x80, 0x20, 0xa8, 0xdd, 0x3b, 0x97, 0x53, 0x15, 0xef, 0x1f, 0x2b, 0x4e, 0xf7, 0x7b, - 0xaf, 0xbb, 0xdf, 0x7b, 0xdd, 0xfd, 0xde, 0xeb, 0xd7, 0x0d, 0x38, 0xb6, 0x4d, 0xac, 0x59, 0xcd, - 0x38, 0x67, 0xd5, 0xb6, 0x48, 0x4b, 0x3d, 0x67, 0xef, 0xb6, 0x89, 0x35, 0xdb, 0x36, 0x0d, 0xdb, - 0xc0, 0xe3, 0xbc, 0x6a, 0x96, 0x57, 0x25, 0xcf, 0x6e, 0x6a, 0xf6, 0x56, 0x67, 0x63, 0xb6, 0x66, - 0xb4, 0xce, 0x6d, 0x1a, 0x9b, 0xc6, 0x39, 0x06, 0xb5, 0xd1, 0x69, 0xb0, 0x2f, 0xf6, 0xc1, 0xfe, - 0xe2, 0xd8, 0xc9, 0x27, 0x36, 0x0d, 0x63, 0xb3, 0x49, 0x7a, 0x50, 0xb6, 0xd6, 0x22, 0x96, 0xad, - 0xb6, 0xda, 0x02, 0x20, 0xe9, 0x6f, 0x99, 0x98, 0xa6, 0x61, 0x8a, 0xa6, 0x93, 0x47, 0xfd, 0x75, - 0x3a, 0xb1, 0x45, 0xc5, 0x71, 0x7f, 0x85, 0xd1, 0xb6, 0x35, 0x43, 0x77, 0xb0, 0x4e, 0xf8, 0x2b, - 0xb7, 0xd5, 0xa6, 0x56, 0x57, 0x6d, 0x22, 0x6a, 0x53, 0x7d, 0xb5, 0x1a, 0xb9, 0xa3, 0xf8, 0xf0, - 0xd3, 0xa3, 0x10, 0x2e, 0xb4, 0xda, 0xf6, 0x6e, 0xfa, 0x2d, 0x04, 0xe3, 0x6b, 0x1b, 0x3f, 0x44, - 0x6a, 0xb6, 0x4c, 0x1a, 0xd5, 0xdd, 0x36, 0xc1, 0x47, 0x21, 0x74, 0x5b, 0xd3, 0xeb, 0xd3, 0x28, - 0x85, 0xce, 0x8c, 0xe5, 0x82, 0x0f, 0xef, 0x22, 0x99, 0x15, 0xe0, 0xc3, 0x10, 0xec, 0x68, 0xf5, - 0xe9, 0x40, 0xaf, 0x9c, 0x7e, 0xe3, 0xe3, 0x10, 0xb1, 0x89, 0xae, 0xea, 0xf6, 0x74, 0xb0, 0x57, - 0x23, 0x8a, 0xf0, 0x69, 0x18, 0xd3, 0xd5, 0x16, 0xb1, 0xda, 0x6a, 0x8d, 0x4c, 0x87, 0x7a, 0xf5, - 0xbd, 0x52, 0xda, 0x1e, 0xfd, 0x98, 0x0e, 0x7b, 0xda, 0xa3, 0x05, 0x57, 0x22, 0x0f, 0xba, 0x28, - 0x20, 0xa1, 0xf4, 0x2b, 0x30, 0xb9, 0xa2, 0x6e, 0x90, 0x66, 0x85, 0x34, 0x49, 0xcd, 0x36, 0x4c, - 0xd6, 0xcb, 0x45, 0x88, 0x91, 0x9d, 0xb6, 0x49, 0x2c, 0x8b, 0x8e, 0x6a, 0x1a, 0xa5, 0x82, 0x67, - 0xc6, 0x72, 0xe9, 0xef, 0x76, 0x51, 0xe0, 0x9f, 0xff, 0xf1, 0x3b, 0xc1, 0x89, 0x37, 0x50, 0x3c, - 0x0d, 0x66, 0x54, 0x42, 0xd3, 0xf7, 0x52, 0xdf, 0x0a, 0x20, 0x5a, 0x16, 0x7e, 0x83, 0x52, 0x93, - 0xbd, 0x68, 0xe9, 0x15, 0x90, 0x18, 0xe9, 0x55, 0xd5, 0xae, 0x6d, 0x11, 0x4e, 0xf9, 0x32, 0x84, - 0x6e, 0x93, 0x5d, 0x87, 0xe4, 0x53, 0x14, 0x35, 0xf6, 0x06, 0x8a, 0xa6, 0x23, 0x66, 0x48, 0x42, - 0xd3, 0x2f, 0xba, 0xa4, 0x24, 0xe7, 0xaf, 0x69, 0xca, 0x20, 0xb2, 0x6b, 0xa5, 0x7f, 0x29, 0x08, - 0xe3, 0x79, 0x43, 0xaf, 0x6b, 0x94, 0xd3, 0x8c, 0xd6, 0x02, 0x84, 0xa8, 0x9a, 0x09, 0x5e, 0xa6, - 0x28, 0xc6, 0x71, 0xf3, 0x98, 0x0c, 0x37, 0xb8, 0xbc, 0x34, 0x43, 0x97, 0x63, 0x6b, 0x6d, 0x62, - 0xb2, 0x3f, 0xd5, 0xa6, 0xcc, 0xa0, 0x71, 0x03, 0x22, 0x96, 0xad, 0xda, 0x1d, 0x4b, 0xf0, 0xba, - 0x44, 0xf1, 0x8a, 0xe6, 0x35, 0x79, 0xb4, 0xd2, 0xa9, 0xd5, 0x88, 0x65, 0xc9, 0x91, 0x25, 0x55, - 0x6b, 0x92, 0xba, 0x0c, 0x45, 0xbd, 0x66, 0xb4, 0xda, 0x4d, 0x62, 0x13, 0x79, 0xac, 0xa8, 0x5b, - 0xb6, 0xda, 0xa4, 0xc5, 0xa1, 0x45, 0xe3, 0x8e, 0x2e, 0x47, 0x17, 0x35, 0x4b, 0xdd, 0xa0, 0xdf, - 0xe3, 0x25, 0xc3, 0xce, 0xb6, 0xdb, 0x4d, 0xad, 0x46, 0xbf, 0x65, 0x41, 0x1d, 0x1f, 0x81, 0x88, - 0x49, 0x54, 0xcb, 0xd0, 0xb9, 0xe4, 0x64, 0xf1, 0x85, 0x17, 0x41, 0x6a, 0xaa, 0x96, 0xad, 0x74, - 0xda, 0x54, 0xa7, 0x14, 0xaa, 0xcd, 0x4c, 0x3a, 0xb1, 0xf9, 0xe4, 0x2c, 0x57, 0xf5, 0x59, 0x47, - 0xd5, 0x67, 0xab, 0x8e, 0xaa, 0xcb, 0x09, 0x8a, 0xb3, 0xce, 0x50, 0x68, 0x21, 0x4e, 0x42, 0x74, - 0xcb, 0xb0, 0x6c, 0x26, 0xdb, 0x08, 0xa3, 0xef, 0x7e, 0xe3, 0xd3, 0x10, 0xb7, 0x88, 0xb9, 0xad, - 0xd5, 0x88, 0xc2, 0xea, 0x47, 0x59, 0x7d, 0x4c, 0x94, 0x95, 0xa8, 0xf4, 0x5f, 0x7d, 0xd0, 0x45, - 0x3f, 0x00, 0x09, 0x08, 0x51, 0x46, 0x26, 0x23, 0x9c, 0x91, 0x80, 0x21, 0x52, 0x61, 0x9d, 0x4f, - 0x46, 0x1d, 0x26, 0xd1, 0x32, 0x99, 0x75, 0x9c, 0x96, 0xf1, 0x21, 0x40, 0x1a, 0xe2, 0x2b, 0xaa, - 0x65, 0xa7, 0x78, 0x7f, 0xea, 0x49, 0xbc, 0x77, 0x48, 0xe9, 0x32, 0x00, 0xa7, 0xc5, 0x44, 0x75, - 0xc4, 0x65, 0x3a, 0xe2, 0xcc, 0x38, 0x80, 0x49, 0x18, 0x42, 0x35, 0xa3, 0xce, 0x95, 0x3a, 0x2c, - 0xb3, 0xbf, 0xd3, 0x4f, 0xc3, 0x44, 0x51, 0xd7, 0x6c, 0x4d, 0x6d, 0x6a, 0x3f, 0x2c, 0xb4, 0x09, - 0x0b, 0xed, 0xe6, 0x44, 0xd9, 0xdf, 0xe9, 0xff, 0x0f, 0x24, 0x0f, 0x98, 0x25, 0xb4, 0x6e, 0xb4, - 0x4d, 0xf4, 0xba, 0xa6, 0x6f, 0x32, 0xc5, 0x8b, 0xcd, 0x9f, 0x9a, 0xf5, 0xad, 0x49, 0xb3, 0x7d, - 0x84, 0x65, 0x07, 0x1c, 0xcf, 0xd1, 0x0e, 0x5a, 0x9d, 0xa6, 0xcd, 0xb4, 0x25, 0x36, 0x7f, 0xac, - 0x0f, 0xb1, 0x37, 0x46, 0x59, 0x00, 0xa6, 0xff, 0x30, 0x00, 0x09, 0x5e, 0xbc, 0x4a, 0x6c, 0x95, - 0xb5, 0x2f, 0x26, 0x37, 0xea, 0x9b, 0xdc, 0x67, 0x60, 0xbc, 0x66, 0x12, 0xd5, 0x36, 0x4c, 0xa5, - 0xd6, 0x54, 0x2d, 0xcb, 0x3b, 0xfb, 0xe3, 0xa2, 0x26, 0x4f, 0x2b, 0x70, 0x1a, 0xc0, 0x81, 0xd4, - 0xea, 0xde, 0xa5, 0x60, 0x4c, 0x14, 0x17, 0xeb, 0x38, 0x05, 0x63, 0x9c, 0xab, 0x14, 0xc4, 0xb3, - 0x1a, 0x44, 0x79, 0x69, 0xb1, 0x8e, 0x4b, 0x80, 0x19, 0xb8, 0x66, 0xe8, 0x8a, 0xbb, 0x8a, 0x1e, - 0xac, 0x7c, 0x9c, 0xcc, 0xa4, 0x83, 0xea, 0x96, 0xe3, 0x2b, 0x30, 0xda, 0xee, 0x6c, 0x34, 0x35, - 0x6b, 0x8b, 0xe9, 0x60, 0x62, 0x3e, 0x35, 0x90, 0x3b, 0x65, 0x0e, 0x23, 0x18, 0xcb, 0x3f, 0xf0, - 0x09, 0x18, 0xdd, 0xb6, 0xcd, 0x36, 0xed, 0xeb, 0xa8, 0x67, 0x65, 0xa3, 0x65, 0xc5, 0x3a, 0x1d, - 0x2f, 0xab, 0xa5, 0x73, 0x8e, 0x4c, 0x47, 0x53, 0xe8, 0x4c, 0x54, 0x8c, 0x97, 0x16, 0x57, 0x68, - 0x69, 0xfa, 0x0b, 0x21, 0x48, 0xf0, 0xc5, 0xd5, 0xe5, 0xf3, 0x51, 0xaf, 0x3e, 0x78, 0x56, 0x3b, - 0x7c, 0xc2, 0xbb, 0x52, 0x32, 0x2e, 0x7b, 0x17, 0x49, 0x21, 0x9e, 0x60, 0x9f, 0x78, 0x4a, 0x10, - 0x69, 0xd2, 0xf5, 0xcb, 0x9a, 0x0e, 0x31, 0xa5, 0xf9, 0x44, 0xdf, 0xe8, 0xfc, 0x8d, 0xcf, 0xb2, - 0xb5, 0xce, 0x2a, 0xe8, 0xb6, 0xb9, 0x9b, 0x8b, 0x3d, 0xfa, 0xd6, 0xbf, 0x0a, 0x46, 0x5e, 0xbf, - 0x8f, 0x02, 0xd1, 0x11, 0x59, 0x50, 0xc1, 0x6f, 0x21, 0x88, 0xa9, 0xba, 0x6e, 0xd8, 0x8c, 0x8d, - 0xd6, 0x74, 0x98, 0x51, 0x9d, 0x1d, 0x4e, 0x35, 0xdb, 0x43, 0xe0, 0xa4, 0x4b, 0x0f, 0xbb, 0x88, - 0x2d, 0xb9, 0xb1, 0x37, 0xfd, 0xeb, 0x66, 0xfc, 0x4d, 0x34, 0x96, 0x19, 0x35, 0xc3, 0x74, 0x59, - 0x8e, 0xd2, 0xf6, 0xe1, 0xf5, 0xfb, 0x28, 0x82, 0x43, 0x5f, 0xef, 0xa2, 0x91, 0x5e, 0x77, 0x90, - 0x5b, 0x93, 0xa4, 0x35, 0x41, 0xd9, 0xdb, 0x25, 0x9c, 0x82, 0x58, 0x9d, 0x58, 0x35, 0x53, 0x63, - 0xfb, 0x99, 0x58, 0x59, 0xbc, 0x45, 0x78, 0x1a, 0x46, 0xeb, 0x7c, 0xe5, 0x63, 0x72, 0x8b, 0xca, - 0xce, 0x67, 0xf2, 0x79, 0x88, 0x79, 0x58, 0x80, 0x25, 0x08, 0xde, 0x26, 0xbb, 0x62, 0x6a, 0xd2, - 0x3f, 0xf1, 0x21, 0x08, 0x6f, 0xab, 0xcd, 0x8e, 0x23, 0x00, 0xfe, 0x71, 0x25, 0x70, 0x19, 0x25, - 0xaf, 0x82, 0xd4, 0x3f, 0xce, 0x8f, 0x82, 0x9f, 0xde, 0x80, 0xf8, 0x8a, 0x66, 0xf5, 0xf4, 0xe0, - 0x1c, 0x48, 0x26, 0xb1, 0x8c, 0x8e, 0x59, 0x23, 0xca, 0x36, 0x31, 0xe9, 0x76, 0x24, 0x74, 0x22, - 0xf4, 0xed, 0x2e, 0x42, 0xf2, 0x84, 0x53, 0x7b, 0x83, 0x57, 0xb2, 0x9d, 0x94, 0xec, 0xd8, 0x4a, - 0x5b, 0xdd, 0x14, 0xe4, 0x05, 0x64, 0x94, 0x16, 0x97, 0xd5, 0x4d, 0xa6, 0x6e, 0x93, 0x5c, 0x36, - 0xd7, 0x48, 0xaf, 0xa5, 0x01, 0x2b, 0xd0, 0x01, 0xca, 0xf6, 0x72, 0x9f, 0x56, 0xcd, 0x0c, 0x94, - 0xbf, 0xa7, 0x8d, 0x83, 0x15, 0xeb, 0xe7, 0x06, 0x2a, 0xd6, 0xdc, 0x81, 0x84, 0xff, 0x4a, 0xb7, - 0x0e, 0xc6, 0xbf, 0x32, 0xf9, 0xe0, 0x6a, 0xdf, 0x32, 0x93, 0xfe, 0x52, 0x08, 0x0e, 0xf1, 0xa2, - 0x3c, 0x5d, 0x13, 0xc9, 0xf7, 0xa0, 0x0d, 0xd5, 0x3e, 0x6d, 0x38, 0x37, 0x50, 0x68, 0xfe, 0x66, - 0x0e, 0x56, 0x88, 0x5f, 0x18, 0xa8, 0x10, 0x0b, 0x8f, 0x43, 0xfb, 0xaf, 0x74, 0xe2, 0xe3, 0xe9, - 0xc4, 0x97, 0x43, 0x70, 0xd8, 0x31, 0xf5, 0xdb, 0x4d, 0xb5, 0xf6, 0xbd, 0x28, 0xc5, 0xba, 0xab, - 0x14, 0x41, 0x26, 0xb8, 0xf3, 0x03, 0x05, 0xd7, 0xd7, 0xce, 0xc1, 0x5a, 0xf1, 0x8b, 0x7d, 0x5a, - 0xc1, 0x35, 0xee, 0xe2, 0x63, 0x11, 0xff, 0x4b, 0x55, 0x8b, 0xf0, 0x50, 0xb5, 0x88, 0xfc, 0x9f, - 0xac, 0x16, 0x3f, 0x8a, 0x60, 0x62, 0x95, 0x58, 0x96, 0xba, 0xd9, 0x53, 0x88, 0x67, 0x7d, 0x56, - 0xca, 0x14, 0x65, 0x5a, 0xc8, 0x0c, 0x48, 0xdc, 0x8f, 0x32, 0x83, 0x6f, 0x05, 0x1c, 0xab, 0x65, - 0xc6, 0xcf, 0x06, 0xbe, 0x2f, 0x81, 0x00, 0x9b, 0xbe, 0x17, 0xf0, 0xb3, 0xe4, 0x74, 0x8f, 0x25, - 0x41, 0x66, 0x30, 0x8d, 0xbe, 0x77, 0x17, 0xb1, 0x4d, 0xcc, 0x29, 0x4f, 0x13, 0x88, 0xdd, 0xd0, - 0xc8, 0x1d, 0xc7, 0x19, 0xc5, 0x5e, 0x67, 0x54, 0xf8, 0xa1, 0x92, 0xc7, 0x0f, 0xe5, 0x66, 0xd0, - 0x89, 0x3d, 0x5e, 0xa6, 0x57, 0x57, 0xb1, 0xd7, 0xc1, 0x14, 0x26, 0x78, 0x05, 0x62, 0x2f, 0x75, - 0x36, 0xc8, 0xb0, 0x66, 0x86, 0x4f, 0x00, 0x87, 0x68, 0xd0, 0x43, 0xf4, 0x3f, 0x8f, 0xc2, 0xa1, - 0xca, 0xae, 0x65, 0x93, 0x56, 0x9f, 0xd1, 0xb7, 0x8f, 0x71, 0x3d, 0xd8, 0xd8, 0x0d, 0x7e, 0x6c, - 0x63, 0xb7, 0x08, 0xb8, 0x4e, 0x9a, 0xa4, 0x8f, 0x5e, 0xe8, 0x40, 0xcf, 0x6d, 0xd2, 0xc1, 0xea, - 0x91, 0xba, 0x01, 0x47, 0x5a, 0x46, 0x5d, 0x6b, 0x68, 0xb5, 0x8f, 0x69, 0x8b, 0x1f, 0xf6, 0xa2, - 0xf7, 0xe8, 0xe6, 0x21, 0xae, 0x79, 0x5c, 0x1f, 0x36, 0x33, 0x62, 0xf3, 0x4f, 0xec, 0xef, 0xeb, - 0x70, 0xc7, 0xc5, 0x87, 0x84, 0x4f, 0x01, 0x34, 0x34, 0xdd, 0x21, 0x31, 0x4a, 0xfd, 0x74, 0xd9, - 0x53, 0xe2, 0x89, 0x48, 0x44, 0xf7, 0x46, 0x24, 0xf6, 0x78, 0x34, 0x63, 0x8f, 0xe7, 0xd1, 0xc0, - 0x40, 0x8f, 0x26, 0x03, 0x09, 0x97, 0x9a, 0x61, 0xdc, 0xd6, 0xc8, 0x74, 0xa2, 0x07, 0xe7, 0x34, - 0x94, 0x67, 0x35, 0x94, 0x9e, 0x6d, 0xaa, 0x35, 0xa2, 0x68, 0x7a, 0xc3, 0x98, 0x8e, 0x79, 0xe8, - 0xb1, 0xe2, 0xa2, 0xde, 0x30, 0xf0, 0x33, 0x10, 0x37, 0x98, 0xee, 0x28, 0x9a, 0x5e, 0x27, 0x3b, - 0xd3, 0xf1, 0x14, 0x3a, 0x33, 0xce, 0xa1, 0x62, 0xbc, 0xa2, 0x48, 0xcb, 0xb1, 0xec, 0x55, 0xce, - 0x71, 0xb6, 0x4a, 0x9e, 0xd8, 0x67, 0x95, 0x64, 0x1a, 0x9e, 0x3b, 0xf2, 0xf6, 0xdd, 0x1e, 0x86, - 0x27, 0x1c, 0xe2, 0x51, 0xe9, 0xe7, 0x01, 0x8c, 0x3b, 0x3a, 0x31, 0x95, 0x6d, 0x8d, 0xdc, 0x99, - 0x9e, 0x10, 0x72, 0xf6, 0x13, 0xf5, 0xcc, 0x4d, 0x79, 0x8c, 0x41, 0xd3, 0x12, 0xfc, 0x14, 0xc4, - 0x2c, 0x93, 0x28, 0xce, 0xe4, 0x96, 0x7a, 0xde, 0x10, 0x58, 0x26, 0x11, 0x71, 0x08, 0xaf, 0x43, - 0x35, 0x79, 0x90, 0x43, 0x85, 0x07, 0x39, 0x54, 0xf8, 0xa6, 0xbb, 0xed, 0x4c, 0x0d, 0xb4, 0x45, - 0x06, 0xcd, 0x3e, 0xdf, 0xae, 0x93, 0x78, 0x78, 0x17, 0x0d, 0xd8, 0x78, 0xbe, 0x87, 0x25, 0x39, - 0xfd, 0x7e, 0x18, 0x8e, 0x7a, 0xdb, 0xf5, 0xda, 0xde, 0x92, 0x67, 0xe2, 0xf3, 0x39, 0x5f, 0xfc, - 0x78, 0x73, 0xfe, 0x2f, 0x78, 0xba, 0xbf, 0xfc, 0xf1, 0xa7, 0xfb, 0x5f, 0xea, 0x4c, 0x3f, 0xe2, - 0x9f, 0xe9, 0xee, 0x24, 0x7f, 0x72, 0xe0, 0x24, 0xef, 0x9b, 0xdf, 0x27, 0xf7, 0xce, 0x6f, 0xef, - 0xd4, 0x3e, 0x3d, 0x68, 0x2a, 0xfa, 0x67, 0xe1, 0xf7, 0x30, 0x63, 0x3e, 0xdb, 0xa7, 0xc9, 0xf3, - 0x43, 0x34, 0x79, 0x3f, 0x4f, 0xeb, 0xfb, 0xaf, 0xcc, 0x57, 0x8e, 0x3e, 0xb8, 0x3a, 0x70, 0x0b, - 0x4b, 0xb7, 0x00, 0x67, 0x3b, 0xf6, 0x16, 0x0b, 0x6b, 0xe6, 0x54, 0x4b, 0xab, 0xd1, 0x2f, 0x9c, - 0x84, 0x68, 0xc7, 0x22, 0xa6, 0xc7, 0x78, 0x74, 0xbf, 0xf1, 0xa7, 0x20, 0xda, 0x56, 0x2d, 0xeb, - 0x8e, 0x61, 0xd6, 0xf7, 0x8b, 0x4c, 0x91, 0x9a, 0x49, 0x6c, 0x46, 0x31, 0xf4, 0x90, 0xb9, 0xb2, - 0x0e, 0x42, 0xba, 0x1b, 0x04, 0xc9, 0x6d, 0x6f, 0x99, 0xa8, 0x75, 0x2a, 0xed, 0x9f, 0x0f, 0xc0, - 0xe8, 0x16, 0xff, 0x5b, 0x04, 0xc9, 0xfa, 0x3d, 0xd3, 0x7e, 0x94, 0x59, 0xf1, 0x2f, 0xe7, 0xd7, - 0xef, 0x21, 0xc7, 0xfa, 0x4b, 0x0b, 0xeb, 0x8f, 0x05, 0x8b, 0xc3, 0x6f, 0xa2, 0x80, 0x24, 0x51, - 0x46, 0x9e, 0x78, 0xfd, 0x3e, 0x9a, 0xc6, 0x47, 0xfe, 0xa4, 0x8b, 0xf0, 0x72, 0xb5, 0x5a, 0x4e, - 0xf1, 0xc6, 0x52, 0x96, 0x6d, 0x6a, 0xfa, 0x26, 0x05, 0x38, 0xfc, 0xfa, 0x7d, 0x34, 0x89, 0x27, - 0x1e, 0x75, 0x51, 0x8c, 0x01, 0x70, 0xf2, 0xc3, 0x4d, 0xc8, 0xdc, 0xeb, 0xf7, 0xd1, 0xd5, 0xe4, - 0xa7, 0xff, 0xa4, 0x8b, 0x2e, 0xe7, 0x9a, 0x9a, 0x5e, 0x6f, 0x18, 0xcd, 0x7a, 0xca, 0x30, 0x53, - 0xb5, 0x26, 0x51, 0xcd, 0x94, 0xc5, 0x78, 0x90, 0x62, 0x12, 0x48, 0x35, 0x0c, 0x33, 0x65, 0x6f, - 0x69, 0x56, 0x6a, 0xcb, 0xb6, 0xdb, 0x4e, 0xeb, 0xb7, 0xc9, 0x2e, 0x25, 0x23, 0xbd, 0x7e, 0x1f, - 0xc5, 0x93, 0xf0, 0xa8, 0x8b, 0x22, 0x9c, 0x6f, 0x1e, 0xf3, 0xf4, 0x1d, 0x66, 0x42, 0x09, 0xd6, - 0x24, 0xd7, 0x21, 0xee, 0x1d, 0xf6, 0x00, 0xf9, 0x9f, 0xf3, 0xca, 0x7f, 0x98, 0x5c, 0xbc, 0xaa, - 0xf1, 0x89, 0x77, 0xbb, 0xe8, 0x69, 0x78, 0x12, 0x4e, 0xad, 0x68, 0x96, 0x9d, 0x32, 0x1a, 0x29, - 0xca, 0x6c, 0xa2, 0xdb, 0x62, 0xe6, 0xa7, 0x1c, 0x29, 0xa1, 0xb9, 0xf4, 0x7f, 0x08, 0xc2, 0x21, - 0x57, 0x14, 0x2f, 0x77, 0x88, 0xb9, 0x5b, 0x56, 0x4d, 0xb5, 0x65, 0xe1, 0xdf, 0x08, 0x40, 0xfc, - 0x35, 0xfa, 0xad, 0xb4, 0x59, 0x81, 0x10, 0xe3, 0xc2, 0x7e, 0x62, 0xf4, 0xe0, 0xce, 0x7a, 0xfe, - 0xe6, 0xe2, 0x7c, 0xff, 0x20, 0x71, 0xa6, 0x5e, 0xbf, 0x8f, 0x4e, 0xe0, 0xe4, 0x9f, 0x74, 0xd1, - 0x11, 0x86, 0x9c, 0x62, 0xd8, 0xc4, 0xf6, 0x89, 0xf4, 0xd8, 0xeb, 0xf7, 0xd1, 0x61, 0x3c, 0xf5, - 0xa8, 0x8b, 0x26, 0xfa, 0x80, 0xbe, 0xff, 0x62, 0x65, 0x43, 0x4f, 0xb5, 0xbd, 0x0d, 0x1c, 0x28, - 0xd6, 0xd8, 0x6b, 0xbd, 0x71, 0x27, 0x5f, 0x01, 0xa9, 0x9f, 0x0d, 0xdf, 0x2f, 0xf1, 0xce, 0xbd, - 0xdb, 0x45, 0x67, 0xe1, 0x93, 0xf0, 0x4c, 0x85, 0x0c, 0x92, 0x6e, 0x1f, 0x6f, 0x98, 0x98, 0x7f, - 0x11, 0xc1, 0x51, 0x77, 0xec, 0x9c, 0x2a, 0x35, 0x62, 0x44, 0x7c, 0x6b, 0xaa, 0x4e, 0x6a, 0xe6, - 0x2e, 0x33, 0xfc, 0x95, 0xb6, 0x69, 0x6c, 0x6b, 0x75, 0x62, 0x8a, 0x5e, 0xe2, 0x5e, 0x55, 0x59, - 0xd4, 0xe0, 0xa7, 0x21, 0x61, 0xd9, 0x86, 0x49, 0x7a, 0xb0, 0x7c, 0x71, 0x1a, 0x67, 0xa5, 0x2e, - 0x58, 0x06, 0xa2, 0x4d, 0x83, 0xf7, 0x49, 0x44, 0x43, 0x13, 0xdf, 0xed, 0xa2, 0xa0, 0xf0, 0x38, - 0xbe, 0x48, 0x17, 0x11, 0xa7, 0xfe, 0x4a, 0xf4, 0x83, 0xab, 0xe1, 0x0b, 0x33, 0x73, 0x33, 0xf3, - 0xe9, 0xff, 0x88, 0x60, 0xea, 0x86, 0xda, 0x69, 0xda, 0x7d, 0xbd, 0x3c, 0x0b, 0x51, 0x7f, 0xd7, - 0x72, 0x93, 0xdf, 0xec, 0xa2, 0xf1, 0x3a, 0x69, 0x50, 0xe0, 0xb3, 0xdb, 0xf4, 0xff, 0xb2, 0x0b, - 0x42, 0x97, 0x3b, 0xb7, 0x71, 0xde, 0x3b, 0xf7, 0xdb, 0x11, 0x43, 0xb0, 0x27, 0x86, 0x69, 0x18, - 0x75, 0x22, 0x7b, 0x21, 0xb6, 0x77, 0x38, 0x9f, 0xf8, 0x3a, 0x4c, 0x70, 0x05, 0x51, 0x88, 0x5e, - 0x33, 0x58, 0xd0, 0x3f, 0xcc, 0xa2, 0xd3, 0xa7, 0x07, 0x8a, 0xaa, 0x20, 0x80, 0x98, 0xc8, 0x12, - 0x96, 0xaf, 0xec, 0x4a, 0xfc, 0x83, 0xab, 0x63, 0x73, 0x33, 0xf3, 0x33, 0x17, 0x66, 0x16, 0x66, - 0x2e, 0xa6, 0x0d, 0x98, 0xca, 0x53, 0x05, 0xec, 0x1b, 0x67, 0xb2, 0x7f, 0x9c, 0x9e, 0x41, 0x2d, - 0x40, 0xb0, 0x63, 0x36, 0x85, 0xeb, 0x96, 0xfe, 0x6e, 0x17, 0x85, 0xfe, 0xe1, 0x7d, 0x14, 0xb7, - 0xc9, 0x8e, 0x3d, 0x93, 0xda, 0x50, 0x2d, 0x72, 0x69, 0x81, 0x32, 0x77, 0xcc, 0x1c, 0x3d, 0x73, - 0xef, 0x5e, 0x94, 0x32, 0x98, 0x82, 0x5f, 0x89, 0x7c, 0x70, 0x35, 0x38, 0x3f, 0x33, 0x97, 0xfe, - 0x24, 0x1c, 0xbe, 0xa9, 0xe9, 0x9b, 0x2d, 0x55, 0xef, 0x6b, 0x72, 0xd0, 0xc1, 0xc7, 0x6f, 0x47, - 0x00, 0x7a, 0xda, 0x87, 0x7f, 0x00, 0x0e, 0x6f, 0x38, 0xea, 0xa3, 0x08, 0x86, 0x30, 0xdb, 0x98, - 0xdb, 0x30, 0xcf, 0xf4, 0x31, 0x63, 0x1f, 0x55, 0x5b, 0x1e, 0x91, 0xa7, 0x36, 0xf6, 0x56, 0xe1, - 0xcf, 0xc1, 0x24, 0x93, 0x9f, 0x8f, 0x32, 0x37, 0x67, 0xd2, 0xfd, 0x7b, 0xf4, 0x5e, 0xd5, 0xc8, - 0x8d, 0x09, 0xd7, 0x74, 0x1a, 0x2d, 0x8f, 0xc8, 0x13, 0xdb, 0x7e, 0x08, 0x5c, 0x86, 0x49, 0x36, - 0xd1, 0x7d, 0xc4, 0x23, 0x03, 0x89, 0x0f, 0x90, 0x07, 0xa5, 0x58, 0xf3, 0x17, 0x63, 0x05, 0xa6, - 0xee, 0x70, 0x46, 0xfa, 0x68, 0x8e, 0x32, 0x9a, 0x4f, 0xf5, 0xd1, 0x1c, 0xc8, 0x72, 0xd7, 0x9b, - 0x5e, 0x1e, 0x91, 0x27, 0xef, 0xf4, 0x43, 0x60, 0x1b, 0x4e, 0x0d, 0xe4, 0xb6, 0xa2, 0xe9, 0x36, - 0xdd, 0xb2, 0x9b, 0xcc, 0x04, 0x7a, 0x6c, 0xb6, 0xf7, 0x7c, 0xf7, 0xe3, 0x03, 0xb8, 0x5f, 0x14, - 0x34, 0xf1, 0x0f, 0xc2, 0xa1, 0x3e, 0x55, 0x57, 0xd8, 0x89, 0x68, 0xf4, 0x31, 0xf5, 0xdd, 0x23, - 0x07, 0x19, 0x5b, 0x7b, 0xaa, 0xaf, 0xfc, 0x3a, 0xfa, 0xd6, 0x55, 0xf4, 0xa0, 0x8b, 0xde, 0x42, - 0xf0, 0xd3, 0x88, 0x1f, 0x16, 0x66, 0xbe, 0x8c, 0xe0, 0x0b, 0x08, 0xd2, 0xfb, 0x68, 0xd7, 0xfc, - 0x98, 0x3b, 0x22, 0x78, 0x6a, 0x80, 0x8e, 0xcc, 0x4f, 0x2c, 0xab, 0xd6, 0x96, 0x56, 0x33, 0xcc, - 0x76, 0x8a, 0x29, 0x06, 0x24, 0x07, 0x08, 0x7b, 0x3e, 0xcc, 0xe4, 0x0a, 0xa9, 0x81, 0x62, 0x9b, - 0x1f, 0xcb, 0x19, 0x86, 0x6d, 0xd9, 0xa6, 0xda, 0xc6, 0xa3, 0xeb, 0xfa, 0x6d, 0xdd, 0xb8, 0xa3, - 0x7f, 0xe5, 0xad, 0x27, 0x46, 0xbe, 0xf6, 0xd6, 0x13, 0x23, 0xf7, 0x7e, 0x3f, 0x35, 0x92, 0x3b, - 0x03, 0x93, 0x5e, 0x11, 0x18, 0x3a, 0x31, 0x1a, 0x78, 0xea, 0x9d, 0x2e, 0xa2, 0x86, 0xd0, 0xd8, - 0xa3, 0x2e, 0x1a, 0x5d, 0x98, 0xb9, 0x38, 0x73, 0x69, 0xe6, 0xb9, 0xeb, 0xa1, 0x28, 0x92, 0x02, - 0xd7, 0x43, 0xd1, 0x80, 0x14, 0xbc, 0x1e, 0x8a, 0x06, 0xa5, 0xd0, 0xf5, 0x50, 0x74, 0x4c, 0x82, - 0xf4, 0x06, 0x24, 0x4a, 0xc4, 0xbe, 0x63, 0x98, 0xb7, 0x9d, 0x20, 0x46, 0x19, 0x82, 0x26, 0x69, - 0x88, 0x2d, 0x75, 0xb8, 0x37, 0x98, 0x7a, 0xfb, 0xee, 0xc4, 0xb6, 0x66, 0xda, 0x1d, 0xb5, 0xa9, - 0xe8, 0x9c, 0xca, 0xbd, 0xfb, 0xc8, 0x7b, 0x4c, 0x4e, 0x49, 0xa5, 0x1f, 0x05, 0x21, 0x56, 0xd1, - 0x6c, 0x37, 0x4c, 0x52, 0x7c, 0xfc, 0x16, 0x8e, 0xbd, 0x7d, 0x37, 0x64, 0x69, 0x36, 0xa1, 0x64, - 0xbf, 0xbe, 0x97, 0x34, 0x5e, 0x83, 0xb8, 0x68, 0x98, 0xeb, 0x43, 0x60, 0xa0, 0x3e, 0xdc, 0xe0, - 0x7d, 0x14, 0x03, 0xe5, 0xfa, 0xf0, 0xf6, 0x7d, 0x14, 0x86, 0xe0, 0xc6, 0x66, 0x5b, 0x8e, 0xe9, - 0xbd, 0x72, 0xbc, 0x0c, 0x87, 0x84, 0xfb, 0x29, 0x14, 0x9a, 0xd8, 0xca, 0xb6, 0xd6, 0x16, 0x93, - 0xf2, 0x50, 0x1f, 0x61, 0x96, 0xfc, 0xb0, 0x3c, 0x22, 0x63, 0x81, 0x53, 0x14, 0x28, 0x37, 0xb4, - 0x36, 0x5e, 0x82, 0x29, 0xa2, 0xef, 0x25, 0x14, 0x1e, 0x4a, 0x68, 0x92, 0xa3, 0x78, 0xe9, 0xbc, - 0x02, 0x21, 0x93, 0x34, 0xb8, 0xdb, 0x72, 0x10, 0xbb, 0x9e, 0xdd, 0x2b, 0x10, 0xa1, 0xf7, 0x7d, - 0x72, 0x61, 0x24, 0x73, 0x57, 0x61, 0xca, 0xdb, 0x37, 0xa5, 0xb6, 0x65, 0x68, 0x35, 0x82, 0x9f, - 0x7d, 0xa7, 0x8b, 0x22, 0x0f, 0xbb, 0x28, 0xf8, 0xa8, 0x8b, 0x82, 0x97, 0x66, 0x2e, 0xbe, 0x7e, - 0x1f, 0x1d, 0x02, 0x49, 0xad, 0x6f, 0x13, 0xd3, 0xd6, 0x2c, 0xa2, 0xb4, 0x8d, 0xa6, 0x56, 0xdb, - 0x4d, 0x21, 0x57, 0x91, 0x42, 0x52, 0x38, 0xfd, 0x2a, 0xe0, 0x62, 0xbb, 0x6c, 0x92, 0x86, 0xb6, - 0x53, 0x21, 0x6e, 0x16, 0xc8, 0xf5, 0xc7, 0x17, 0x75, 0xf2, 0xed, 0xbb, 0xe3, 0x5a, 0x5b, 0x69, - 0x33, 0x12, 0x8a, 0x45, 0xec, 0x7e, 0x35, 0xfa, 0x89, 0x10, 0xc4, 0x6f, 0x7c, 0x7c, 0x3d, 0x8a, - 0x3b, 0x8c, 0xa1, 0xfa, 0xf4, 0x7f, 0xa1, 0x1e, 0xfd, 0x75, 0xf4, 0x11, 0x14, 0x49, 0x1e, 0xaa, - 0x48, 0x6f, 0xdf, 0x47, 0xcf, 0x42, 0x94, 0xe8, 0xf5, 0xb6, 0xa1, 0xe9, 0xf6, 0x5e, 0xd5, 0x80, - 0xb1, 0xba, 0x66, 0xd5, 0x8c, 0x6d, 0x62, 0xee, 0xfe, 0x85, 0xea, 0xdc, 0x0d, 0x48, 0x94, 0x69, - 0x39, 0x31, 0x1d, 0x95, 0x58, 0x7c, 0x7c, 0x95, 0x38, 0xf4, 0xf6, 0xdd, 0xd1, 0x36, 0xc7, 0xee, - 0xd7, 0xb4, 0x4d, 0x38, 0x52, 0x36, 0x0d, 0xdb, 0xa8, 0x19, 0xcd, 0x3e, 0xfa, 0xab, 0x8f, 0x4f, - 0xff, 0xe4, 0xdb, 0x77, 0xa5, 0xb6, 0xa0, 0xa2, 0xec, 0xd3, 0xd0, 0x5b, 0x01, 0x38, 0x22, 0xb4, - 0x49, 0x28, 0xb6, 0x93, 0x9d, 0x84, 0x4b, 0xd0, 0x2f, 0x00, 0x66, 0x03, 0xc5, 0xe6, 0x4f, 0xf6, - 0xb5, 0xea, 0x5f, 0xbe, 0x73, 0xcc, 0xdc, 0x5f, 0x1e, 0x91, 0x13, 0xdb, 0x3e, 0x65, 0xc5, 0xe7, - 0x81, 0x2d, 0xa4, 0xc2, 0x98, 0xef, 0x0f, 0x2f, 0x78, 0xa6, 0xd5, 0xf2, 0x88, 0xcc, 0x20, 0xf1, - 0x8b, 0xe0, 0x9b, 0x32, 0x22, 0xba, 0x74, 0xbc, 0x7f, 0x4e, 0xf8, 0x51, 0x63, 0x02, 0x85, 0x96, - 0xe6, 0x9e, 0x82, 0x09, 0x93, 0x34, 0x14, 0x83, 0x6e, 0x79, 0x62, 0x58, 0x93, 0xef, 0x74, 0x51, - 0xf0, 0x61, 0x17, 0x85, 0x1f, 0x75, 0x51, 0xf8, 0xc2, 0xcc, 0xfc, 0xcc, 0x1c, 0x97, 0xe5, 0xf5, - 0x50, 0x34, 0x2c, 0x45, 0xae, 0x87, 0xa2, 0x11, 0x69, 0xf4, 0x7a, 0x28, 0x3a, 0x2a, 0x45, 0xaf, - 0x87, 0xa2, 0x51, 0x69, 0x2c, 0xfd, 0x6b, 0x08, 0x92, 0x94, 0xd8, 0x8d, 0x1e, 0x5d, 0x2f, 0x9b, - 0xfe, 0x32, 0x86, 0x75, 0x7c, 0xef, 0xb0, 0xa2, 0xef, 0x74, 0x51, 0xe0, 0x61, 0x17, 0x39, 0x9a, - 0xf9, 0xf9, 0x20, 0x9c, 0xe0, 0x9e, 0xec, 0xaa, 0xaa, 0x6b, 0xed, 0x4e, 0x93, 0x59, 0xf7, 0x6b, - 0x6d, 0x37, 0xa5, 0x2b, 0xed, 0x3b, 0x1a, 0xa1, 0xce, 0xc7, 0x88, 0xe7, 0xb8, 0x83, 0x9f, 0x8a, - 0x3c, 0xe3, 0x8b, 0xaf, 0xf8, 0x81, 0xde, 0x7a, 0x61, 0x79, 0x44, 0xf8, 0x5d, 0x78, 0x11, 0xe2, - 0xc2, 0x0a, 0xe0, 0xe0, 0xe1, 0xc7, 0x0a, 0x93, 0xd0, 0x51, 0x71, 0xb4, 0x1b, 0x8c, 0xca, 0x3c, - 0x44, 0xd4, 0x76, 0x9b, 0xe8, 0x75, 0x71, 0xa8, 0x92, 0xa4, 0xcd, 0xbd, 0x7d, 0x1f, 0x61, 0x90, - 0x6a, 0x75, 0x5d, 0x69, 0x1a, 0x6a, 0x7d, 0x43, 0x6d, 0xaa, 0x3a, 0x9d, 0x0d, 0x02, 0xf2, 0x4a, - 0xe7, 0xdd, 0x2e, 0x3a, 0x06, 0x47, 0x21, 0x21, 0xbc, 0xf6, 0x94, 0x6d, 0xa4, 0xb2, 0xf5, 0x3a, - 0x0e, 0xcf, 0xcd, 0x2c, 0xcc, 0x5c, 0x78, 0xd0, 0x45, 0x55, 0x48, 0x40, 0xa8, 0xa4, 0xb6, 0x58, - 0xea, 0x15, 0x1d, 0x14, 0xcc, 0x42, 0x98, 0xb5, 0x97, 0x79, 0x1a, 0x9e, 0x84, 0x51, 0x31, 0x42, - 0x98, 0xf6, 0x0f, 0x61, 0x3e, 0x2a, 0x93, 0xba, 0x5a, 0xb3, 0x49, 0x1d, 0x30, 0x44, 0xb2, 0xac, - 0xb1, 0x64, 0xd4, 0xe9, 0x60, 0xee, 0x09, 0x88, 0x33, 0x30, 0x67, 0xf1, 0x98, 0x70, 0xb8, 0x4f, - 0x17, 0x8f, 0xf9, 0x99, 0x8b, 0x42, 0x08, 0x0f, 0x63, 0x70, 0x82, 0x07, 0xcd, 0xf7, 0x11, 0xc2, - 0x19, 0x9f, 0x10, 0x0e, 0xf5, 0x04, 0x20, 0xfe, 0xfa, 0x7a, 0xc8, 0x39, 0xa0, 0x7a, 0x01, 0x26, - 0xb4, 0x4d, 0x9d, 0xfa, 0x95, 0x96, 0xda, 0x22, 0x4c, 0x6f, 0x26, 0x86, 0x2e, 0xc0, 0x09, 0x0e, - 0x5e, 0x11, 0xd0, 0x94, 0x80, 0x83, 0xa9, 0x58, 0xb6, 0xa9, 0xd5, 0x6c, 0xa1, 0x78, 0xfb, 0x12, - 0x70, 0xc0, 0x2b, 0x0c, 0x1a, 0x3f, 0x0f, 0x71, 0x97, 0x40, 0x53, 0xdd, 0x11, 0xce, 0xcd, 0x7e, - 0xd8, 0x31, 0x07, 0x76, 0x45, 0xdd, 0xc1, 0x9f, 0x82, 0x71, 0x17, 0x55, 0x37, 0x74, 0x72, 0xc0, - 0xde, 0xe1, 0xb6, 0x53, 0x32, 0x74, 0x42, 0x91, 0x9d, 0x91, 0x93, 0x5a, 0xc7, 0x24, 0xc2, 0x95, - 0x18, 0x8c, 0x8c, 0xe4, 0xb8, 0x18, 0x37, 0x83, 0xc5, 0x17, 0x01, 0xd4, 0x7a, 0xdd, 0xc1, 0x8c, - 0x0e, 0xc5, 0x1c, 0x53, 0xeb, 0x75, 0x81, 0xd6, 0xe3, 0xf6, 0x96, 0x6d, 0xb7, 0x0d, 0xbd, 0xb9, - 0x2b, 0x9c, 0x8a, 0xc1, 0xb8, 0x01, 0x87, 0xdb, 0xcb, 0x02, 0x9a, 0x32, 0x8b, 0xb6, 0xeb, 0x62, - 0xc7, 0x86, 0x62, 0xc7, 0xd4, 0x7a, 0xdd, 0x45, 0xfd, 0x34, 0x08, 0x62, 0x4a, 0x4b, 0xdd, 0x51, - 0xd4, 0x4d, 0x32, 0x3d, 0x3e, 0x04, 0x39, 0xe8, 0x0c, 0x78, 0x55, 0xdd, 0xc9, 0x6e, 0xd2, 0x9e, - 0x8f, 0x0b, 0x34, 0x31, 0x17, 0x13, 0x29, 0x74, 0x26, 0x9c, 0x3b, 0xf6, 0xcd, 0x2e, 0x0a, 0x5f, - 0xbe, 0xb4, 0x70, 0xfe, 0xfc, 0x17, 0x84, 0x1d, 0x36, 0x9a, 0x09, 0x4f, 0xdf, 0xfb, 0xda, 0x6f, - 0x48, 0xcb, 0x41, 0x39, 0xd6, 0x62, 0xb8, 0x7c, 0x16, 0xde, 0x82, 0x13, 0x8e, 0xdd, 0x60, 0xab, - 0xad, 0x36, 0x31, 0xa9, 0xab, 0x43, 0xb7, 0x11, 0x52, 0x63, 0xf1, 0x82, 0xc9, 0x21, 0x9d, 0x09, - 0xc9, 0x49, 0x81, 0x5b, 0x75, 0x50, 0xcb, 0x2e, 0x26, 0xbe, 0x01, 0xc7, 0x85, 0x1d, 0x31, 0x90, - 0xf0, 0xd4, 0x50, 0xc2, 0xc7, 0x38, 0xea, 0x00, 0xba, 0x57, 0x7e, 0x36, 0xf8, 0x6e, 0x17, 0x7d, - 0x02, 0x9e, 0x85, 0x23, 0x7c, 0xae, 0xa5, 0x7a, 0x75, 0x29, 0xb9, 0xd3, 0x24, 0x78, 0x7c, 0x6e, - 0x66, 0x7e, 0xe6, 0xd2, 0xcc, 0xf3, 0x33, 0x73, 0xf3, 0x33, 0x73, 0x97, 0x1e, 0x74, 0xd1, 0x7f, - 0x0a, 0xec, 0x59, 0x15, 0xda, 0x10, 0x75, 0xa6, 0x4a, 0xa6, 0x0e, 0x1b, 0x70, 0x6c, 0xcf, 0x7c, - 0x9b, 0x8f, 0x14, 0x59, 0x01, 0xad, 0xea, 0x9b, 0x49, 0xf3, 0x11, 0x3e, 0x47, 0x60, 0xca, 0x3f, - 0x47, 0xe6, 0x83, 0x2b, 0xea, 0x0e, 0x1c, 0xee, 0xd3, 0xfe, 0xf9, 0x10, 0xd5, 0x6b, 0xb8, 0x0c, - 0x11, 0xae, 0x6d, 0x99, 0x59, 0x98, 0x81, 0xa3, 0x7d, 0x5a, 0xee, 0xb6, 0x36, 0xe9, 0xd5, 0xe0, - 0xf9, 0x60, 0x85, 0xd8, 0x70, 0x15, 0xa2, 0x54, 0x5b, 0xd6, 0xf4, 0xe6, 0x6e, 0x66, 0x1e, 0xce, - 0x7b, 0xfa, 0xea, 0xe8, 0x9b, 0x8b, 0x3d, 0xe5, 0xd7, 0x43, 0x8e, 0xff, 0x1a, 0x1c, 0x17, 0x9c, - 0x72, 0xd9, 0xe9, 0xe1, 0x59, 0x46, 0x86, 0x32, 0x3c, 0x3b, 0x5c, 0x0b, 0xe6, 0x47, 0xc5, 0x59, - 0x18, 0x3c, 0x3d, 0x54, 0xa8, 0xf3, 0x91, 0x02, 0xab, 0xcc, 0xa5, 0x20, 0xea, 0xf0, 0x00, 0x1f, - 0x7a, 0xa7, 0x8b, 0x26, 0x1e, 0x76, 0x51, 0xe0, 0x51, 0x17, 0x45, 0xe7, 0x2e, 0xf2, 0x88, 0x4f, - 0xee, 0x18, 0x44, 0xf8, 0x18, 0xd9, 0x62, 0x1a, 0x7d, 0xd8, 0x45, 0x11, 0xba, 0x98, 0x3e, 0x37, - 0x73, 0x39, 0x77, 0x12, 0xa2, 0xce, 0x00, 0xd8, 0xf6, 0x1d, 0x13, 0xbe, 0x65, 0x78, 0xee, 0xfc, - 0xcc, 0xdc, 0x5c, 0x2e, 0x05, 0xa3, 0x42, 0xe5, 0xf1, 0xe1, 0x77, 0xba, 0x68, 0xfc, 0x61, 0x17, - 0xc5, 0x59, 0xed, 0x85, 0x99, 0xb9, 0x85, 0xef, 0x74, 0x11, 0xca, 0x3d, 0x0d, 0x12, 0x3f, 0xd5, - 0xec, 0x75, 0x92, 0x11, 0x9a, 0x7c, 0xd8, 0x45, 0x12, 0x03, 0x7d, 0x6e, 0x66, 0xee, 0x79, 0xd7, - 0x39, 0xe5, 0x16, 0xc0, 0x98, 0x04, 0xd7, 0x43, 0xd1, 0xb8, 0x34, 0x7e, 0x3d, 0x14, 0x95, 0xa4, - 0xc9, 0xeb, 0xa1, 0x28, 0x96, 0xa6, 0xd2, 0x77, 0x60, 0xbc, 0x6a, 0x76, 0x2c, 0x9b, 0xd4, 0xf3, - 0xd9, 0x15, 0xcd, 0xb2, 0x71, 0x03, 0x26, 0x6c, 0x5e, 0xa0, 0xd4, 0x54, 0xa5, 0xa9, 0x59, 0xf6, - 0x63, 0x7b, 0xae, 0x7d, 0x78, 0xdf, 0xee, 0xfa, 0x3c, 0xa4, 0x71, 0x51, 0x9d, 0x57, 0x69, 0x3b, - 0xe9, 0xaf, 0x04, 0xe1, 0x68, 0xb5, 0x69, 0xf5, 0x32, 0xae, 0x79, 0xec, 0x54, 0x78, 0xcc, 0x09, - 0x0f, 0xad, 0x8e, 0xd9, 0x14, 0x1b, 0xca, 0x19, 0x11, 0x05, 0x8b, 0xb5, 0x49, 0xcb, 0x1b, 0x04, - 0x8b, 0x98, 0xa1, 0x33, 0xf7, 0xee, 0x45, 0xc5, 0x26, 0xf3, 0x85, 0x20, 0xdd, 0x8a, 0xe3, 0x6e, - 0x73, 0xeb, 0x66, 0x13, 0x7f, 0x06, 0xa0, 0x47, 0x51, 0xf8, 0x0c, 0xfd, 0x03, 0xf2, 0xf1, 0x61, - 0x79, 0x44, 0x1e, 0x73, 0x29, 0xe0, 0x4f, 0x43, 0xd2, 0xba, 0xad, 0xb5, 0x15, 0x27, 0x51, 0x5a, - 0xd9, 0x26, 0xa6, 0x7b, 0xb6, 0xc6, 0xac, 0x89, 0xa8, 0x3c, 0x4d, 0x21, 0x96, 0x05, 0xc0, 0x0d, - 0x4f, 0x3d, 0x7e, 0x0e, 0xa6, 0x19, 0xfc, 0xae, 0x62, 0x75, 0xf8, 0xc9, 0x95, 0xda, 0xb4, 0x59, - 0x82, 0x35, 0x4f, 0xd3, 0x19, 0x93, 0x0f, 0xf3, 0xfa, 0x0a, 0xaf, 0xce, 0x36, 0x6d, 0x3a, 0x97, - 0x2d, 0x5c, 0x80, 0xe3, 0x1d, 0x8b, 0x28, 0xdb, 0x46, 0xd3, 0x26, 0xa6, 0xa9, 0x2a, 0x7d, 0x4c, - 0x09, 0xf9, 0x73, 0x35, 0x8e, 0x76, 0x2c, 0x72, 0x43, 0x80, 0x56, 0x3d, 0x83, 0xcf, 0x9d, 0x81, - 0x49, 0x0f, 0xa6, 0xd8, 0xe2, 0xa7, 0x84, 0x7f, 0x10, 0xe6, 0xfe, 0xc1, 0xdc, 0x5b, 0xf7, 0x11, - 0xe2, 0x36, 0x63, 0xfa, 0x0e, 0x24, 0x96, 0x55, 0x6b, 0x2b, 0xdb, 0xdc, 0x34, 0x4c, 0xcd, 0xde, - 0x6a, 0x59, 0x98, 0xc0, 0xc4, 0x96, 0x6a, 0x6d, 0x29, 0xaa, 0x5b, 0xc4, 0x94, 0x22, 0xb1, 0x87, - 0x87, 0x3e, 0xbc, 0xdc, 0x29, 0x57, 0xfc, 0x21, 0xe7, 0xaf, 0x28, 0xf2, 0xa4, 0xe7, 0x27, 0xb6, - 0x7c, 0xcd, 0xa4, 0x7f, 0x3e, 0x02, 0xb8, 0xda, 0xb4, 0xf2, 0xd4, 0x45, 0x61, 0xdc, 0x23, 0x4c, - 0x1d, 0x2a, 0x30, 0x51, 0xeb, 0x15, 0x79, 0xf4, 0x21, 0xb3, 0x8f, 0x3e, 0x44, 0x4d, 0x2a, 0xe1, - 0x9e, 0x46, 0xdc, 0x0b, 0x22, 0x39, 0xe1, 0x21, 0x41, 0x35, 0xe2, 0x45, 0x88, 0xb5, 0x4d, 0x6d, - 0x9b, 0x12, 0xbc, 0x4d, 0x76, 0xc5, 0xee, 0x7f, 0xe0, 0x49, 0x18, 0x08, 0x9c, 0x97, 0xc8, 0xee, - 0x63, 0xa4, 0x1a, 0x2d, 0xc1, 0x14, 0x95, 0x9f, 0xc5, 0x0e, 0xee, 0x14, 0x11, 0xbd, 0xb6, 0x86, - 0x6e, 0xf8, 0x23, 0xf2, 0x64, 0xc7, 0x22, 0xfc, 0xa8, 0x6f, 0x51, 0x20, 0xe0, 0xeb, 0x70, 0xd8, - 0x59, 0xbd, 0x8c, 0x9a, 0xc5, 0x8e, 0xe2, 0xdb, 0x4d, 0x4d, 0xdf, 0x1c, 0x6a, 0x00, 0x8c, 0xc8, - 0x53, 0x02, 0x69, 0xad, 0x66, 0xb5, 0x2b, 0x02, 0x05, 0xaf, 0xc3, 0x91, 0x5a, 0xc7, 0xb2, 0x8d, - 0x96, 0xd2, 0x2f, 0xd1, 0xb1, 0x81, 0xde, 0x90, 0x5f, 0x13, 0x96, 0x47, 0xe4, 0x43, 0x1c, 0xdd, - 0x5f, 0x7e, 0xe5, 0xd5, 0x77, 0xbb, 0xe8, 0x04, 0x24, 0x61, 0xa2, 0xba, 0x52, 0x49, 0x79, 0x04, - 0x88, 0x47, 0xa9, 0xe5, 0x7a, 0x71, 0x86, 0x6e, 0x53, 0x9f, 0x86, 0x13, 0x10, 0x2b, 0x73, 0x06, - 0xa6, 0x5e, 0x22, 0xbb, 0xc9, 0x71, 0x9f, 0x0c, 0x68, 0xed, 0x62, 0x8f, 0x7b, 0xb4, 0xd6, 0xc3, - 0xcc, 0xdc, 0x9f, 0x21, 0x38, 0xe4, 0x1b, 0xbd, 0xa3, 0xc9, 0xbf, 0x8f, 0x3c, 0x0b, 0x6c, 0xf8, - 0xb9, 0x99, 0xcb, 0x33, 0xcf, 0xbf, 0x7e, 0x1f, 0xfd, 0x16, 0x4a, 0x7e, 0x9a, 0xae, 0xb2, 0x3e, - 0x3b, 0x7b, 0xd6, 0x6a, 0x93, 0xda, 0x2c, 0x2d, 0xb6, 0x66, 0xed, 0xa6, 0xa5, 0xb8, 0x47, 0x3e, - 0xfc, 0xd3, 0xa3, 0x22, 0x56, 0xf2, 0x05, 0xc7, 0xa9, 0xa1, 0x93, 0x9e, 0x23, 0xf6, 0xa1, 0xd4, - 0x8c, 0x56, 0xcb, 0xd0, 0xc5, 0x91, 0xd9, 0x5e, 0x02, 0xf9, 0x7e, 0x67, 0xfb, 0x63, 0x10, 0xf1, - 0xf8, 0xe7, 0xee, 0x5a, 0x9e, 0xfe, 0x9b, 0x41, 0x80, 0x45, 0xa3, 0xa5, 0x6a, 0xdc, 0xe8, 0xbe, - 0x08, 0x31, 0xb2, 0xa3, 0xd6, 0x1c, 0x67, 0x85, 0x4f, 0x0d, 0xec, 0xf8, 0x36, 0x63, 0xe6, 0x28, - 0x3b, 0x82, 0xdb, 0xa2, 0x8b, 0x22, 0x30, 0x40, 0x6e, 0x18, 0x3d, 0x07, 0x71, 0xab, 0xd3, 0x68, - 0x68, 0x3b, 0x8a, 0xd7, 0x27, 0x1a, 0x8c, 0x17, 0xe3, 0x90, 0x1c, 0xf1, 0x12, 0xc4, 0x4c, 0xb2, - 0x49, 0x1c, 0x3c, 0x7e, 0xda, 0x33, 0xe5, 0xe0, 0x89, 0xdb, 0x3d, 0x81, 0x77, 0x98, 0x43, 0x04, - 0x0c, 0x92, 0xe1, 0x5d, 0xf9, 0x2a, 0x7a, 0xb7, 0x8b, 0x12, 0x10, 0x87, 0x51, 0xde, 0x79, 0x0b, - 0xa3, 0x85, 0x07, 0x5d, 0xf4, 0x25, 0x04, 0xeb, 0x10, 0xe3, 0x45, 0x29, 0x16, 0x27, 0x5e, 0x82, - 0x45, 0x38, 0xe4, 0x1b, 0xd4, 0x7c, 0xb8, 0x40, 0x3f, 0xe0, 0x88, 0xbf, 0xcf, 0xf3, 0x91, 0x0a, - 0xfb, 0xa2, 0xd0, 0x9e, 0x2e, 0xcd, 0x87, 0x65, 0xfa, 0x01, 0x97, 0x21, 0x2e, 0xc8, 0xb2, 0x0e, - 0xcc, 0x9f, 0xf1, 0xd1, 0xf4, 0x93, 0xf2, 0x11, 0xc8, 0xa5, 0x61, 0xbc, 0xce, 0x30, 0x1d, 0x1d, - 0xa3, 0xbb, 0x2b, 0x12, 0x0e, 0x51, 0x98, 0x1d, 0xeb, 0x08, 0x97, 0xe8, 0x7d, 0x04, 0xb0, 0xb2, - 0xb0, 0x48, 0x2c, 0x5b, 0x44, 0xd0, 0xa2, 0x3c, 0xde, 0x46, 0x9c, 0x8b, 0x4a, 0x67, 0x19, 0x53, - 0xde, 0x40, 0xa3, 0xe9, 0xb0, 0x19, 0xfc, 0xae, 0x67, 0x47, 0x4c, 0x0d, 0x5c, 0x12, 0x5d, 0x74, - 0x5c, 0x84, 0x58, 0xdb, 0x30, 0x6d, 0xc5, 0x54, 0xf5, 0x4d, 0xe2, 0x5c, 0xf0, 0x38, 0xf3, 0xcd, - 0x2e, 0x1a, 0x3d, 0x7f, 0xf6, 0xd2, 0xc5, 0x8b, 0x17, 0x2e, 0xba, 0xde, 0x55, 0xa8, 0x3f, 0x0f, - 0xf0, 0xeb, 0x01, 0xba, 0x52, 0x19, 0xa6, 0x2d, 0x33, 0xdc, 0x2b, 0x2f, 0x3c, 0xe8, 0xa2, 0x4f, - 0xc1, 0x71, 0x88, 0x15, 0xcb, 0xa9, 0xb2, 0xa0, 0x9f, 0x8b, 0xf7, 0xba, 0x2a, 0x85, 0xd9, 0xcc, - 0x34, 0x4c, 0x3b, 0xc5, 0x31, 0xd8, 0xcc, 0xec, 0x35, 0x9e, 0xfe, 0xb7, 0x21, 0x98, 0xaa, 0x36, - 0x2d, 0x16, 0xfd, 0xaa, 0x11, 0x36, 0x1f, 0x99, 0x25, 0xfa, 0x69, 0x88, 0x0b, 0x3e, 0xb5, 0x54, - 0xbb, 0xb6, 0x25, 0x02, 0x2a, 0xfd, 0xab, 0x68, 0x4f, 0x57, 0xe5, 0x18, 0x07, 0x67, 0xf7, 0xba, - 0x70, 0xb1, 0x2f, 0xa4, 0x27, 0x28, 0x1f, 0xe0, 0xc7, 0x4d, 0x79, 0x43, 0x7a, 0x02, 0x05, 0x5f, - 0xf3, 0xc7, 0xf4, 0x1c, 0x4a, 0xc3, 0x7d, 0x3a, 0xec, 0x89, 0xe9, 0x09, 0x8c, 0x2b, 0xff, 0x34, - 0xf0, 0xa0, 0x8b, 0x7e, 0x2d, 0x00, 0xff, 0xaf, 0x5f, 0x25, 0x5b, 0x70, 0x1b, 0x4e, 0xc3, 0xb4, - 0x77, 0xb0, 0xb3, 0x03, 0xf4, 0xf3, 0x49, 0x38, 0xe6, 0x03, 0x19, 0xa8, 0xac, 0xfd, 0x74, 0x06, - 0x68, 0xae, 0xd2, 0xa7, 0xb9, 0x6b, 0xfb, 0x37, 0x3d, 0xa4, 0xc5, 0xfd, 0xdb, 0x01, 0x19, 0xe2, - 0xde, 0x61, 0x67, 0x72, 0xf0, 0x22, 0x3c, 0x31, 0x58, 0x1c, 0x3d, 0xdb, 0xf8, 0xe4, 0x40, 0x26, - 0xbb, 0x36, 0xf1, 0x19, 0x38, 0x2c, 0xaa, 0x1d, 0x32, 0x9e, 0x68, 0x42, 0x50, 0x18, 0xc8, 0xc1, - 0x0b, 0x33, 0x0b, 0x7c, 0x31, 0x4b, 0xbf, 0x8e, 0xe0, 0x70, 0x9f, 0x52, 0xb1, 0xe0, 0xe0, 0x2e, - 0x7e, 0x0d, 0xb0, 0xb7, 0x05, 0xc5, 0xec, 0x34, 0x89, 0x93, 0x93, 0xd0, 0x7f, 0x8c, 0x37, 0x40, - 0x2d, 0x3d, 0x76, 0xc7, 0xe0, 0x49, 0x36, 0xa9, 0xf5, 0x61, 0x58, 0xe9, 0xdf, 0x09, 0xef, 0xd1, - 0x70, 0x36, 0xa1, 0x5f, 0x82, 0x23, 0x62, 0x50, 0x0d, 0xc3, 0x54, 0xd4, 0x66, 0x53, 0xe1, 0x3c, - 0x75, 0xb6, 0xcb, 0x7d, 0xb5, 0x94, 0x63, 0x2d, 0x19, 0x66, 0xb6, 0xd9, 0x74, 0xd6, 0xbb, 0xab, - 0x10, 0xe1, 0x3b, 0x81, 0x98, 0x28, 0x4f, 0x0d, 0x1f, 0x0b, 0xe7, 0xc6, 0xf2, 0x88, 0x2c, 0xb0, - 0xb0, 0x0c, 0x58, 0xec, 0xdd, 0x9e, 0x3d, 0x42, 0x4c, 0x97, 0xd3, 0x7b, 0x69, 0xf5, 0xd9, 0x51, - 0xcb, 0x48, 0x9e, 0xe4, 0xe8, 0xde, 0xfd, 0xb9, 0x08, 0x87, 0x5c, 0xfb, 0xd2, 0x4b, 0x35, 0x34, - 0x34, 0xb6, 0x30, 0xe5, 0xe0, 0x78, 0x49, 0xed, 0x35, 0xdb, 0x23, 0x1f, 0xc1, 0x6c, 0xff, 0x22, - 0x42, 0xcb, 0x81, 0x3e, 0xb3, 0x7d, 0x09, 0xa6, 0x06, 0x18, 0xbf, 0x43, 0x0d, 0xa8, 0x80, 0x3c, - 0xb9, 0xdd, 0x6f, 0x04, 0x33, 0xeb, 0xe4, 0x07, 0xe0, 0x13, 0xf0, 0xd4, 0xa2, 0x71, 0x47, 0xb7, - 0x6c, 0x93, 0xa8, 0x2d, 0xaf, 0x91, 0x92, 0xca, 0x1b, 0x7a, 0x43, 0xdb, 0xec, 0xf0, 0xfb, 0x9e, - 0x18, 0xcd, 0xc3, 0x61, 0x90, 0xd6, 0xdb, 0x02, 0x50, 0x36, 0x0c, 0x3b, 0x95, 0xcf, 0x62, 0x74, - 0x11, 0xa6, 0x61, 0xca, 0x2b, 0xa0, 0x94, 0xd0, 0x57, 0x74, 0x39, 0x77, 0x16, 0x92, 0x3e, 0x95, - 0xe5, 0x12, 0xf3, 0xce, 0x80, 0xb1, 0x87, 0x5d, 0x14, 0xa5, 0x33, 0xe0, 0xf9, 0x99, 0xb9, 0xdc, - 0x33, 0x30, 0x65, 0x69, 0x9b, 0x3a, 0xb3, 0x62, 0x88, 0x69, 0xef, 0x37, 0x53, 0x72, 0x4f, 0x0d, - 0x32, 0xdd, 0x29, 0xd4, 0xa8, 0x63, 0xba, 0x3f, 0x37, 0x73, 0x89, 0x07, 0x76, 0x5d, 0x13, 0x81, - 0x9a, 0xf0, 0x7f, 0x0b, 0xc1, 0xe4, 0x92, 0xa9, 0xd6, 0xf8, 0xfd, 0xd5, 0x32, 0xed, 0x97, 0x6e, - 0xe3, 0x67, 0x61, 0x4c, 0xef, 0xb4, 0x88, 0xa9, 0xda, 0x06, 0xcf, 0x37, 0x18, 0xcf, 0x8d, 0x7d, - 0xb3, 0x8b, 0xd0, 0x45, 0xba, 0x79, 0xcb, 0xbd, 0x3a, 0xbc, 0x44, 0x4d, 0x2f, 0xdd, 0x68, 0x69, - 0x3a, 0x03, 0xe5, 0x87, 0x37, 0xfd, 0x37, 0x1f, 0x17, 0x7b, 0x10, 0xdc, 0x42, 0x66, 0x54, 0xbc, - 0x88, 0x2c, 0x1b, 0x61, 0x6e, 0x66, 0x3e, 0xfd, 0x2f, 0x10, 0x48, 0xb9, 0x4e, 0xa3, 0x41, 0x4c, - 0xce, 0x69, 0x36, 0xb5, 0x52, 0x10, 0x15, 0x0b, 0x05, 0xcf, 0xc4, 0x8c, 0x0a, 0x0a, 0x6e, 0x29, - 0xfe, 0x34, 0x4c, 0x52, 0x4f, 0xd8, 0x24, 0xaf, 0x75, 0x88, 0x65, 0x2b, 0x1b, 0xbb, 0xb6, 0xd8, - 0x08, 0xc7, 0x73, 0x92, 0x63, 0x6f, 0xb0, 0xb8, 0xcf, 0xbd, 0x7b, 0x61, 0x79, 0xa2, 0xa5, 0xee, - 0xc8, 0x1c, 0x32, 0x47, 0x01, 0x71, 0x16, 0x24, 0x2f, 0x36, 0xbb, 0x2e, 0x1b, 0x64, 0xc8, 0x47, - 0x85, 0xcb, 0xe4, 0xc6, 0x7f, 0x33, 0xc1, 0xe9, 0xf7, 0x42, 0xd4, 0x21, 0xe9, 0xd1, 0xa8, 0x6a, - 0x2d, 0xc2, 0x32, 0x55, 0xe6, 0x67, 0x2e, 0xcc, 0xcc, 0xa5, 0xbf, 0x16, 0x02, 0xc8, 0x1b, 0xa6, - 0x25, 0x24, 0x9e, 0xec, 0xef, 0xbb, 0xa7, 0xd7, 0x45, 0x88, 0xab, 0xcd, 0xa6, 0x71, 0x47, 0x31, - 0x4c, 0x6d, 0x53, 0xa3, 0xee, 0x21, 0xb5, 0x03, 0x9e, 0x61, 0x49, 0x51, 0x6f, 0xf4, 0x25, 0x45, - 0x45, 0xde, 0x40, 0x41, 0xe9, 0x9e, 0x77, 0x6d, 0x8a, 0x31, 0xdc, 0x35, 0x86, 0x8a, 0x75, 0xc0, - 0x5e, 0x52, 0x0a, 0x5b, 0xc2, 0xb9, 0xcf, 0x98, 0x7b, 0xd1, 0x6b, 0x58, 0x9c, 0xe1, 0xe4, 0xc6, - 0xde, 0x40, 0x91, 0x74, 0xc8, 0x0c, 0xa4, 0x90, 0xb7, 0xf2, 0x1d, 0x8f, 0xd5, 0xe1, 0xbd, 0x1d, - 0x2d, 0x79, 0x9a, 0x62, 0xfb, 0x0e, 0x3e, 0x07, 0xe3, 0xbc, 0xbd, 0x16, 0xb1, 0xb7, 0x8c, 0xba, - 0x25, 0x2e, 0x83, 0x3a, 0x17, 0x07, 0xbe, 0x1b, 0x42, 0x32, 0x1f, 0xdb, 0x2a, 0xaf, 0xc7, 0x4f, - 0x3a, 0x08, 0x4e, 0xfe, 0x1f, 0xf7, 0x82, 0x38, 0x90, 0x93, 0x79, 0xf6, 0x34, 0x24, 0xc8, 0x4e, - 0xdb, 0xb0, 0x88, 0x0b, 0xc5, 0x6f, 0xeb, 0x8c, 0xf3, 0x52, 0x07, 0x2c, 0xed, 0xc6, 0x3d, 0xc4, - 0xbd, 0x4e, 0x4f, 0x8a, 0x41, 0x84, 0x87, 0xf4, 0xf0, 0x73, 0x10, 0x6b, 0xa9, 0x3b, 0x5a, 0xab, - 0xd3, 0x62, 0x70, 0x63, 0x2c, 0x18, 0x78, 0x84, 0x76, 0x6f, 0x32, 0x39, 0x31, 0x7d, 0xef, 0xe7, - 0xc2, 0x67, 0x3e, 0x74, 0xfe, 0x43, 0x32, 0x08, 0x50, 0x8a, 0xf8, 0x49, 0x98, 0xe4, 0x1d, 0xad, - 0x99, 0xa4, 0x4e, 0x74, 0x5b, 0x53, 0x9b, 0x16, 0xbf, 0x1d, 0x2a, 0xd8, 0x90, 0xef, 0x95, 0x5f, - 0x59, 0xfc, 0xe0, 0xea, 0x84, 0xc8, 0xdc, 0x61, 0x71, 0xb6, 0xcb, 0x33, 0x73, 0xef, 0x76, 0xd1, - 0x2c, 0xcc, 0xc0, 0xb1, 0xfc, 0x9a, 0x5c, 0x11, 0xd3, 0xbe, 0x6f, 0xd5, 0xe8, 0xc7, 0x48, 0x7f, - 0x23, 0x00, 0x90, 0xb7, 0xcc, 0x86, 0x50, 0x99, 0x97, 0xe1, 0x18, 0xdd, 0x3e, 0xa8, 0x3b, 0xa2, - 0x38, 0xfe, 0x88, 0xbb, 0x99, 0x04, 0x86, 0x6e, 0x26, 0x47, 0xd4, 0x66, 0x73, 0xc5, 0x50, 0xeb, - 0x39, 0x81, 0xe6, 0xec, 0x27, 0xab, 0xee, 0x7e, 0x20, 0x36, 0x7a, 0x16, 0xae, 0x09, 0x0e, 0xf4, - 0xe3, 0x38, 0x4e, 0x49, 0x6d, 0x11, 0x11, 0xde, 0x90, 0x38, 0x2a, 0x2f, 0x67, 0xa1, 0x9f, 0xff, - 0xc7, 0xa3, 0xd4, 0x43, 0x96, 0xff, 0xdc, 0xb5, 0xb7, 0xef, 0xa3, 0x7c, 0x32, 0xbd, 0x8f, 0x77, - 0x55, 0xb3, 0xcc, 0x86, 0x58, 0xfe, 0x92, 0x27, 0xf7, 0xfa, 0x50, 0x9e, 0xea, 0x65, 0xcf, 0x5c, - 0xcf, 0x1d, 0x87, 0x09, 0x26, 0x07, 0x52, 0x77, 0x98, 0xe2, 0x9e, 0x01, 0x21, 0x9e, 0x6c, 0x91, - 0xfe, 0x4d, 0x04, 0x13, 0x65, 0xd5, 0xde, 0xf2, 0xbe, 0x0a, 0xf0, 0x2c, 0x44, 0xb8, 0x15, 0x2b, - 0xfc, 0x9e, 0x71, 0xe1, 0xff, 0x4f, 0xdf, 0x0b, 0x7c, 0x3b, 0x80, 0xd8, 0xde, 0xc9, 0xaa, 0xf1, - 0x93, 0x10, 0x6a, 0xab, 0xf6, 0x96, 0xb0, 0xa3, 0xf7, 0x80, 0xb1, 0x4a, 0x7c, 0x11, 0xc2, 0xce, - 0x14, 0xa3, 0x50, 0x27, 0x85, 0xde, 0x8b, 0xd9, 0xe5, 0x4e, 0x2c, 0x3e, 0xa7, 0x96, 0x47, 0x64, - 0x0e, 0x7d, 0x25, 0xf4, 0xc1, 0x55, 0xb4, 0x90, 0x7b, 0x02, 0x80, 0x12, 0xe1, 0xd6, 0xd6, 0xfe, - 0x1e, 0xc3, 0xbf, 0xa7, 0xa3, 0x30, 0x4c, 0xdb, 0x3b, 0x8a, 0xd3, 0x10, 0xa2, 0xe6, 0xb6, 0x58, - 0x93, 0x63, 0x6c, 0x65, 0xc8, 0x84, 0xa6, 0x3f, 0xfc, 0x30, 0xc8, 0xba, 0x66, 0x98, 0x36, 0x7e, - 0x61, 0x90, 0x3b, 0x70, 0x42, 0x74, 0x6b, 0x3a, 0xd5, 0xef, 0x02, 0x7c, 0x8d, 0xbb, 0x5f, 0x3d, - 0x27, 0x00, 0x5f, 0x81, 0x71, 0xdd, 0x50, 0x18, 0x0d, 0x6e, 0xac, 0x1f, 0x70, 0xe0, 0xa1, 0x1b, - 0x6e, 0x2f, 0xd9, 0x00, 0x2f, 0xb0, 0x01, 0xba, 0xe8, 0x6c, 0x80, 0x21, 0x71, 0xc0, 0x1c, 0x5e, - 0x98, 0x99, 0x9b, 0x99, 0xe7, 0xae, 0x6a, 0xfa, 0x51, 0x10, 0x26, 0x9d, 0xa3, 0xba, 0xde, 0x10, - 0xe7, 0x7c, 0x47, 0x43, 0x0e, 0x67, 0xbf, 0x8e, 0xd0, 0x00, 0x1e, 0xbb, 0x97, 0x98, 0xc2, 0xcc, - 0xd0, 0x15, 0x83, 0x3d, 0xe4, 0x87, 0x0c, 0x9b, 0xc1, 0xf7, 0xb8, 0x10, 0x18, 0x10, 0xbe, 0xe4, - 0x97, 0xdd, 0xa9, 0x41, 0xd0, 0x03, 0x84, 0x87, 0x4f, 0x30, 0x3f, 0xc8, 0x22, 0xba, 0xb8, 0xa3, - 0x14, 0xa5, 0x6a, 0xe9, 0x94, 0xe0, 0xd3, 0x10, 0xd7, 0x74, 0xea, 0xc6, 0x0b, 0xa6, 0x85, 0xd9, - 0x92, 0x11, 0xe3, 0x65, 0x9c, 0x39, 0xff, 0x92, 0xfa, 0xb5, 0x49, 0x98, 0x86, 0x09, 0x3e, 0xea, - 0x94, 0x6d, 0xa4, 0xb8, 0x83, 0x13, 0x9e, 0x9b, 0xb9, 0x34, 0x73, 0xf1, 0x41, 0x17, 0xfd, 0x2c, - 0xda, 0x13, 0xa0, 0x5f, 0x02, 0x60, 0x40, 0xdc, 0xbf, 0xb8, 0x0c, 0x97, 0x20, 0x21, 0x86, 0xeb, - 0x38, 0x13, 0x09, 0x31, 0x20, 0xc7, 0x29, 0x38, 0xd4, 0xeb, 0xe8, 0x7c, 0xb4, 0x2c, 0xfe, 0x82, - 0x67, 0x21, 0xc6, 0xe9, 0x70, 0x4f, 0x61, 0x5a, 0x10, 0x11, 0xb8, 0x3d, 0x14, 0x38, 0x45, 0x4d, - 0x7e, 0xda, 0x6b, 0xde, 0xb9, 0x64, 0xc2, 0x3f, 0xb2, 0x5c, 0x0a, 0x62, 0xfc, 0x0c, 0xb0, 0x27, - 0xde, 0x80, 0x13, 0x54, 0x61, 0x4b, 0x9b, 0x7b, 0x8a, 0x1c, 0x91, 0x46, 0xd3, 0xef, 0x06, 0xe0, - 0x58, 0x2f, 0xe5, 0x95, 0xd8, 0x7e, 0x61, 0x3f, 0xed, 0xc9, 0x7d, 0xe5, 0xd7, 0xd4, 0xfa, 0x25, - 0xcc, 0x32, 0x31, 0x8f, 0xf8, 0x04, 0xdc, 0x13, 0xe5, 0xc7, 0x9c, 0x86, 0x5f, 0xa0, 0x82, 0x38, - 0x0d, 0x4f, 0xc0, 0x74, 0x7f, 0x5a, 0x71, 0xd5, 0x91, 0x48, 0x70, 0x6e, 0x66, 0xe1, 0x41, 0x17, - 0x29, 0x10, 0x87, 0xe0, 0x4b, 0x64, 0x37, 0x19, 0x66, 0x1d, 0x85, 0xf3, 0x3e, 0x61, 0xa4, 0x21, - 0x75, 0xa0, 0x30, 0x4e, 0xfa, 0xd9, 0x9e, 0xf0, 0xb3, 0x3d, 0x77, 0xca, 0xcf, 0xcc, 0xbe, 0xf3, - 0x54, 0x67, 0x29, 0xf8, 0x46, 0x18, 0x40, 0x36, 0x3a, 0x36, 0xe1, 0x9d, 0xbb, 0x2c, 0x96, 0x28, - 0xee, 0x1c, 0xf4, 0x9b, 0x5b, 0x7d, 0x2b, 0x5f, 0x2e, 0xf4, 0x9d, 0x2e, 0x42, 0x62, 0xdd, 0x2a, - 0xf7, 0x12, 0xf0, 0x03, 0xcc, 0x4b, 0xea, 0x7f, 0x4e, 0x61, 0xcf, 0x7c, 0x14, 0xb3, 0xa9, 0xdf, - 0x24, 0x70, 0xc8, 0x60, 0xb5, 0x2f, 0x21, 0x9c, 0x5f, 0x27, 0x3d, 0xd3, 0x47, 0x76, 0x5f, 0x0d, - 0xd8, 0x87, 0xbc, 0x37, 0x69, 0x1a, 0x5f, 0x81, 0x18, 0xdb, 0x42, 0xb8, 0xad, 0xc1, 0xe6, 0x5e, - 0x62, 0x4f, 0xec, 0x60, 0xd9, 0xb6, 0xdb, 0xdc, 0xd8, 0x90, 0x61, 0xcb, 0xfd, 0x1b, 0x17, 0x61, - 0x5c, 0xd3, 0x6b, 0xd4, 0xce, 0xdc, 0x64, 0x4b, 0x9a, 0x38, 0x81, 0xdd, 0xc3, 0x33, 0xff, 0x3a, - 0x2b, 0x78, 0x16, 0x77, 0x50, 0x69, 0xf5, 0x95, 0xdf, 0x0e, 0x7c, 0x70, 0x75, 0x8c, 0xae, 0x5f, - 0x17, 0x66, 0xe6, 0x67, 0x2e, 0x3a, 0x61, 0x4c, 0x2e, 0x5c, 0xf7, 0xd5, 0x18, 0x3c, 0x2a, 0x20, - 0x1e, 0x74, 0xd1, 0x57, 0x02, 0x70, 0x0c, 0x22, 0xbc, 0x23, 0xc9, 0x09, 0xdf, 0x20, 0x52, 0x08, - 0xd6, 0x60, 0x8c, 0x4a, 0x8a, 0x6b, 0x12, 0x75, 0xab, 0x0f, 0x43, 0x8c, 0xca, 0x68, 0x96, 0xef, - 0x43, 0xf3, 0x11, 0x1e, 0x80, 0x01, 0x0c, 0x63, 0xbc, 0x58, 0xb5, 0xb7, 0x1c, 0x25, 0x9b, 0xe2, - 0x3b, 0xc8, 0xac, 0x4f, 0xd3, 0xe6, 0x01, 0x18, 0x41, 0xae, 0x68, 0x4f, 0xf9, 0xa8, 0x79, 0x68, - 0x78, 0x51, 0xe1, 0x05, 0x98, 0xf4, 0x4c, 0x01, 0xae, 0xfb, 0xe9, 0x8c, 0x5f, 0xa4, 0x18, 0x1c, - 0xfb, 0x85, 0xd4, 0x93, 0x89, 0x12, 0xf5, 0x71, 0xdc, 0x6f, 0xb8, 0xe8, 0xdc, 0x55, 0x10, 0xb8, - 0x4f, 0xbb, 0x0a, 0x36, 0x0c, 0x2d, 0xfd, 0x1a, 0xe0, 0x6c, 0xbb, 0xbd, 0xa4, 0x99, 0xe4, 0x8e, - 0xda, 0x6c, 0x3a, 0x39, 0x3e, 0x9f, 0x83, 0xb8, 0xda, 0x6e, 0x2b, 0x0d, 0x51, 0xfc, 0xb8, 0xc9, - 0x6b, 0x3e, 0x24, 0xc7, 0x58, 0xce, 0xa0, 0x39, 0x39, 0xa6, 0xf6, 0xda, 0x48, 0x7f, 0x21, 0x00, - 0xa3, 0x37, 0x55, 0xde, 0xd0, 0x52, 0x5f, 0x43, 0xa1, 0x81, 0x9e, 0xf1, 0xde, 0x1e, 0xd2, 0xed, - 0xce, 0x43, 0x93, 0x5a, 0x99, 0x4e, 0x08, 0xe3, 0x8e, 0xda, 0x38, 0xe0, 0x74, 0x1f, 0x04, 0xe8, - 0x4d, 0xb5, 0x81, 0x5f, 0x82, 0x98, 0xa6, 0x6f, 0x11, 0x53, 0xb3, 0x19, 0xe2, 0x90, 0xdc, 0xb4, - 0x1c, 0x7e, 0xfb, 0x3e, 0x4a, 0xf4, 0x32, 0x67, 0xa8, 0x81, 0x44, 0x89, 0x09, 0xf4, 0x9b, 0x6a, - 0x23, 0x77, 0x12, 0xa2, 0x26, 0x69, 0xb0, 0xf4, 0x39, 0xb6, 0x1a, 0x3b, 0xd9, 0x5c, 0xe1, 0x4b, - 0x33, 0x17, 0xd9, 0x6a, 0xdc, 0x97, 0x80, 0x9a, 0x6e, 0xc2, 0x54, 0xb6, 0xdd, 0x96, 0x8d, 0x26, - 0xc9, 0x76, 0xec, 0x2d, 0x37, 0xe3, 0xfb, 0x28, 0x8c, 0x9a, 0x46, 0x93, 0x28, 0xee, 0x85, 0xb7, - 0x08, 0xfd, 0x2c, 0x52, 0xf7, 0x6a, 0xcc, 0x49, 0x76, 0x7d, 0xfc, 0xab, 0x40, 0x1c, 0xa3, 0x58, - 0x4f, 0xff, 0x13, 0x04, 0x93, 0x2c, 0x0f, 0xd7, 0xd7, 0xd8, 0x32, 0x8c, 0x53, 0x11, 0xb0, 0x06, - 0xd5, 0x8e, 0xbb, 0x98, 0xa5, 0xf7, 0xca, 0xa0, 0xbf, 0x9f, 0x42, 0x08, 0x4e, 0x31, 0x7e, 0x0e, - 0xc2, 0xb6, 0x71, 0x9b, 0xe8, 0x8f, 0xd9, 0x33, 0xba, 0x0d, 0x30, 0xf8, 0xdc, 0x51, 0x88, 0xd1, - 0x96, 0x1d, 0x35, 0x8f, 0x0a, 0x43, 0xcc, 0xe1, 0xd2, 0x9b, 0x01, 0x90, 0x64, 0x62, 0xf9, 0xbb, - 0x9d, 0x03, 0xd8, 0x50, 0x2d, 0xad, 0xe6, 0xed, 0xf3, 0xe9, 0xfd, 0x6e, 0xbf, 0xb8, 0xf7, 0xac, - 0x96, 0x47, 0xe4, 0xb1, 0x0d, 0xf7, 0xd2, 0xd5, 0x75, 0x88, 0x8b, 0x39, 0xc2, 0xa9, 0x04, 0x06, - 0xde, 0xac, 0xeb, 0xbf, 0x0a, 0xd5, 0xcb, 0x1d, 0x12, 0xc8, 0x8c, 0xd6, 0x4d, 0x98, 0xf4, 0xce, - 0x55, 0x4e, 0x90, 0x1b, 0xf6, 0x4f, 0x3e, 0xc6, 0xa5, 0x1c, 0x97, 0xe8, 0x84, 0x67, 0xc1, 0xa5, - 0x80, 0xfb, 0x31, 0xc7, 0x49, 0xb3, 0xfa, 0x63, 0xe7, 0x42, 0x46, 0x96, 0x3d, 0x68, 0xe5, 0xf2, - 0xe7, 0x24, 0x00, 0x4f, 0xc8, 0x56, 0xeb, 0x75, 0xe7, 0xaa, 0xc2, 0x18, 0x2b, 0xc9, 0xd6, 0xeb, - 0x26, 0x4e, 0x41, 0x9c, 0x57, 0x8b, 0xb8, 0x0f, 0xbf, 0x84, 0xc1, 0x51, 0x78, 0x24, 0x67, 0x8f, - 0x5e, 0x04, 0xbf, 0x67, 0xbd, 0x08, 0x7d, 0x44, 0xbd, 0x48, 0x40, 0x9c, 0xb6, 0xec, 0xc4, 0xf4, - 0xd3, 0x3f, 0x1a, 0x80, 0x09, 0xcf, 0x0d, 0x03, 0x71, 0xf2, 0x2c, 0x12, 0xcf, 0x55, 0x36, 0x7e, - 0x9e, 0xeb, 0x8f, 0xf6, 0xbf, 0x9c, 0xe0, 0x67, 0x93, 0x7b, 0x23, 0xa1, 0x57, 0x8c, 0x9f, 0x86, - 0x71, 0xe7, 0x4a, 0x07, 0x7f, 0x53, 0xcb, 0xb1, 0x75, 0xe2, 0x4e, 0x31, 0x35, 0x0b, 0xf1, 0x13, - 0x20, 0x72, 0xc7, 0x14, 0x66, 0x02, 0xf0, 0xeb, 0x2a, 0xc0, 0x8b, 0xe8, 0xf2, 0x8f, 0x9f, 0x71, - 0xef, 0xa6, 0x58, 0x9d, 0x0d, 0x0e, 0x14, 0x12, 0x17, 0x71, 0x58, 0x71, 0xa5, 0xb3, 0xc1, 0xe0, - 0x9e, 0x86, 0x84, 0x93, 0xf8, 0x25, 0x2e, 0xb9, 0x84, 0xbd, 0x60, 0xe2, 0xd9, 0x9a, 0xdc, 0x04, - 0x8c, 0x8b, 0x21, 0x0a, 0x6e, 0x7c, 0x13, 0x01, 0x76, 0x4e, 0x8f, 0x1f, 0xe7, 0x2e, 0x08, 0xfa, - 0x7e, 0xdc, 0x05, 0x29, 0x0f, 0xba, 0x0b, 0x12, 0xf8, 0xc8, 0xec, 0xee, 0x51, 0xcc, 0x1d, 0x02, - 0x71, 0x1b, 0x81, 0xad, 0x9b, 0xce, 0xe0, 0xee, 0x05, 0x60, 0x9c, 0x6e, 0xf6, 0x6c, 0x0f, 0x15, - 0x99, 0x6a, 0x41, 0xbe, 0x15, 0x0d, 0x5b, 0xda, 0x29, 0x08, 0x9e, 0x87, 0x78, 0xc7, 0xa2, 0xae, - 0x3a, 0x69, 0x68, 0x3a, 0xa9, 0x8b, 0xf8, 0x13, 0x77, 0x20, 0x33, 0x11, 0xea, 0xa3, 0x9d, 0x61, - 0xd3, 0x97, 0x02, 0x2d, 0x72, 0x18, 0x4a, 0xbd, 0xae, 0x5b, 0x07, 0x1c, 0x64, 0x50, 0x90, 0x2b, - 0x9f, 0x79, 0xd0, 0x45, 0xcf, 0xc3, 0x73, 0x10, 0xa2, 0xdd, 0xcb, 0x9c, 0x83, 0xb3, 0x00, 0xac, - 0x67, 0xf3, 0xc1, 0xac, 0xbe, 0x0b, 0x09, 0x7f, 0xdb, 0x30, 0xc1, 0xe8, 0xce, 0x47, 0x17, 0x4b, - 0x95, 0xd4, 0x99, 0x8b, 0x17, 0x3e, 0x91, 0x4b, 0xc3, 0x11, 0xe6, 0x92, 0x71, 0x63, 0xd3, 0x33, - 0xe4, 0x3d, 0x33, 0xfb, 0x35, 0x38, 0xee, 0xcf, 0xb6, 0x96, 0x49, 0x83, 0x98, 0xd4, 0x33, 0x60, - 0xfc, 0x90, 0x45, 0x2e, 0xf3, 0xf7, 0xe7, 0x96, 0x02, 0xa3, 0x45, 0x17, 0x93, 0xa4, 0xbf, 0x4d, - 0xdf, 0x53, 0x81, 0x17, 0x01, 0x78, 0x62, 0x91, 0x51, 0x53, 0x0f, 0x92, 0xc4, 0x18, 0x4b, 0xbd, - 0xa3, 0x80, 0x38, 0x07, 0x93, 0x3d, 0x34, 0x45, 0xd3, 0x2d, 0xad, 0x4e, 0x0e, 0x88, 0x9f, 0x4c, - 0xb8, 0xd8, 0x45, 0x06, 0x8e, 0x67, 0x21, 0xc2, 0x5e, 0x13, 0xab, 0x1d, 0xe0, 0x04, 0x0b, 0xa8, - 0x5c, 0x12, 0x12, 0xdb, 0xfa, 0x40, 0xf6, 0x86, 0xdd, 0x9c, 0x89, 0xb8, 0x4c, 0x6c, 0x73, 0x37, - 0xa7, 0xd6, 0x6e, 0xaf, 0x35, 0x1a, 0xf8, 0x12, 0x8c, 0x6f, 0xa8, 0x96, 0x38, 0x29, 0xd9, 0x16, - 0xe3, 0x1b, 0x67, 0xd7, 0xd8, 0x02, 0xf3, 0x17, 0x9d, 0xc0, 0x63, 0x20, 0x33, 0x22, 0xc7, 0x29, - 0x5c, 0x51, 0x80, 0xe1, 0x67, 0x21, 0xde, 0x52, 0x77, 0x7a, 0x68, 0x5c, 0xdb, 0x44, 0x68, 0xb5, - 0xa5, 0xee, 0x38, 0x80, 0x6e, 0x68, 0xf5, 0x0f, 0x43, 0x30, 0xc1, 0x5a, 0xe6, 0x61, 0x26, 0xc6, - 0xd9, 0x1f, 0x43, 0xd4, 0x74, 0xb0, 0xcd, 0x5d, 0xc5, 0x7d, 0xbd, 0xca, 0xec, 0x0b, 0x79, 0xbe, - 0x6a, 0xfe, 0xa0, 0x3c, 0x22, 0x07, 0x2f, 0xee, 0xec, 0xc8, 0xe3, 0x9b, 0xaa, 0x4d, 0xee, 0xa8, - 0xbb, 0x67, 0xd9, 0xfb, 0x97, 0xf2, 0x44, 0xcd, 0xd0, 0x75, 0x52, 0xb3, 0xcf, 0x36, 0x54, 0xad, - 0xd9, 0x31, 0x89, 0x9c, 0x30, 0x49, 0xa3, 0x63, 0x91, 0xfa, 0x59, 0x1e, 0x0f, 0x97, 0xc7, 0x29, - 0x69, 0x8d, 0x9a, 0x3c, 0x67, 0x17, 0x76, 0x76, 0xe4, 0x23, 0xbd, 0x4f, 0xfe, 0x5c, 0xdc, 0xd9, - 0x9a, 0x51, 0x27, 0x16, 0x75, 0x26, 0x58, 0x1f, 0xd6, 0x74, 0xdc, 0x45, 0x30, 0xc1, 0xfb, 0x53, - 0x73, 0x0c, 0xea, 0xe9, 0x08, 0x0b, 0x62, 0x7e, 0xc9, 0xed, 0xd0, 0x0f, 0xbd, 0x81, 0x36, 0xd3, - 0xc4, 0xac, 0xfd, 0x45, 0xf6, 0x89, 0x3a, 0x8a, 0xde, 0x7b, 0x10, 0xa3, 0x83, 0xb3, 0x52, 0x58, - 0x57, 0x7b, 0xa6, 0xff, 0x05, 0x88, 0xe9, 0x9d, 0x96, 0xc2, 0x48, 0xba, 0xf1, 0x67, 0xfc, 0xcd, - 0x2e, 0x42, 0x73, 0x4e, 0xe7, 0x43, 0x99, 0xc0, 0x74, 0x54, 0x06, 0xbd, 0xd3, 0x92, 0x39, 0x14, - 0x7e, 0x0e, 0x26, 0xda, 0xc4, 0x54, 0xe8, 0x98, 0x6d, 0xad, 0x45, 0x8c, 0x8e, 0x2d, 0x62, 0xcf, - 0x13, 0x0e, 0x4e, 0x24, 0x13, 0x9a, 0x7e, 0xe7, 0x77, 0x9f, 0x92, 0xc7, 0xdb, 0xc4, 0xac, 0x9a, - 0xbb, 0x55, 0x0e, 0x85, 0x4b, 0xd0, 0xeb, 0xbc, 0x22, 0x5e, 0xe5, 0xe3, 0x0c, 0x0d, 0xa5, 0x82, - 0x67, 0xc6, 0x73, 0xd3, 0x6e, 0xd0, 0xba, 0xdf, 0xb9, 0x3a, 0xe4, 0xe2, 0xf1, 0xc7, 0xf3, 0xf2, - 0x14, 0x0b, 0x5f, 0x82, 0xe8, 0x86, 0x5a, 0xbb, 0xad, 0x18, 0x0d, 0xc7, 0x90, 0xed, 0xcf, 0xcc, - 0xf6, 0xea, 0xad, 0x3c, 0xba, 0xc1, 0xff, 0xb8, 0x92, 0xf8, 0xe0, 0x6a, 0x6c, 0x6e, 0xe6, 0x92, - 0x7b, 0x83, 0xf1, 0x2e, 0xc4, 0x56, 0x29, 0xfd, 0x1a, 0x4f, 0x02, 0x38, 0x01, 0x63, 0xbd, 0xc7, - 0x08, 0xa8, 0x8a, 0x21, 0xb9, 0x57, 0x30, 0xf8, 0x22, 0x3b, 0x75, 0xf8, 0x6c, 0x93, 0xe8, 0x75, - 0x4f, 0xe2, 0xc0, 0xde, 0xfd, 0xbb, 0x4a, 0x21, 0x58, 0x1b, 0x32, 0xd8, 0xee, 0xdf, 0xe9, 0x77, - 0x11, 0x24, 0x78, 0xfb, 0x54, 0xc3, 0x17, 0x55, 0x5b, 0xc5, 0x59, 0xf7, 0xaa, 0x3e, 0x1a, 0xf8, - 0xc8, 0x9e, 0x1f, 0xdc, 0x7b, 0x43, 0xdf, 0x7d, 0xd7, 0x68, 0x1e, 0x22, 0xac, 0x2f, 0x8e, 0xdb, - 0x9c, 0x1c, 0x48, 0x82, 0xf7, 0x46, 0x40, 0x7e, 0x2f, 0x4f, 0x52, 0x7c, 0x15, 0x01, 0xf4, 0xc6, - 0xd7, 0x03, 0x44, 0x5e, 0x2e, 0x7d, 0x8a, 0x5a, 0xe5, 0x3a, 0xe5, 0xa5, 0x6e, 0x8b, 0x93, 0x97, - 0x93, 0x83, 0x78, 0x54, 0x71, 0x80, 0xe4, 0x1e, 0x7c, 0x7f, 0x4e, 0x52, 0x70, 0x6f, 0x4e, 0xd2, - 0xd3, 0x90, 0x68, 0x9b, 0x64, 0x5b, 0x33, 0x3a, 0x96, 0x90, 0x83, 0x30, 0x23, 0x9c, 0x52, 0xce, - 0xef, 0x3f, 0x42, 0x10, 0x2b, 0x91, 0x1d, 0x7b, 0xd9, 0x68, 0x8b, 0x7b, 0xc3, 0xbd, 0x17, 0x53, - 0x13, 0x7b, 0x54, 0xc8, 0x03, 0x69, 0x89, 0xc7, 0x52, 0x5f, 0x82, 0x09, 0x9d, 0xec, 0xd8, 0x5b, - 0x46, 0x9b, 0xd9, 0x8c, 0xc4, 0x72, 0x82, 0xdc, 0xfd, 0x7b, 0x4b, 0xb1, 0x9d, 0xe5, 0xf5, 0x1e, - 0x0f, 0x3d, 0x21, 0x50, 0x45, 0x0d, 0xfe, 0x2c, 0x8c, 0xb1, 0x15, 0xb1, 0xa1, 0xd6, 0x88, 0x08, - 0x45, 0x0c, 0xdf, 0xa2, 0x4e, 0xbd, 0x7d, 0x77, 0xd2, 0xb9, 0x7f, 0xe4, 0x62, 0x7a, 0x9f, 0x57, - 0x71, 0x0b, 0xd3, 0xdf, 0x08, 0xc1, 0x04, 0x9d, 0x30, 0x5a, 0x8d, 0x85, 0x62, 0xd8, 0x68, 0xaf, - 0x42, 0x58, 0xb5, 0x6d, 0x73, 0xbf, 0x2c, 0x37, 0x06, 0x98, 0xb5, 0x6d, 0x1e, 0x54, 0x80, 0x5e, - 0x96, 0x9b, 0xcc, 0xd1, 0x70, 0x0e, 0x46, 0xad, 0xce, 0x86, 0x4e, 0x6c, 0x47, 0xb1, 0x8e, 0xef, - 0x19, 0x74, 0x85, 0xd5, 0x33, 0x02, 0xb1, 0xde, 0x49, 0x50, 0x40, 0x76, 0x10, 0xf1, 0x02, 0x8c, - 0x0a, 0x2e, 0x88, 0x5c, 0xed, 0xe4, 0xfe, 0x4c, 0x97, 0x1d, 0x50, 0xcf, 0x4b, 0x2c, 0x31, 0xd6, - 0x70, 0x66, 0xc0, 0xbb, 0x9a, 0x9e, 0x91, 0xfa, 0xde, 0xad, 0x98, 0x7a, 0xf3, 0x3e, 0x0a, 0x41, - 0xc0, 0x7b, 0xa5, 0xfe, 0xfb, 0xf2, 0x78, 0xc5, 0x9f, 0xa2, 0x0f, 0xae, 0x8e, 0xcd, 0xcf, 0xb0, - 0xec, 0xd6, 0x99, 0xb9, 0x07, 0x5d, 0xf4, 0x7b, 0x08, 0x8e, 0xc0, 0x28, 0xe7, 0x80, 0x95, 0x8b, - 0xb9, 0xcc, 0x92, 0x42, 0xd0, 0x84, 0x28, 0x1d, 0x57, 0x6a, 0xd9, 0x68, 0x67, 0x5e, 0x85, 0x1f, - 0x84, 0x27, 0xe1, 0xb4, 0x18, 0xda, 0x6c, 0x9f, 0x3a, 0xcd, 0x6a, 0xed, 0xed, 0x85, 0x59, 0xfa, - 0x71, 0x00, 0xd0, 0x25, 0x0e, 0x84, 0x21, 0xee, 0x00, 0x31, 0x05, 0x0d, 0xa4, 0x10, 0xa4, 0x61, - 0xac, 0xe8, 0x28, 0x42, 0xee, 0x30, 0x4c, 0x3a, 0x00, 0xae, 0x76, 0x48, 0x08, 0x8e, 0x01, 0x50, - 0x51, 0x6b, 0x1b, 0x1d, 0x9b, 0xd0, 0xce, 0x72, 0x11, 0x4b, 0xa1, 0xf3, 0x08, 0x0e, 0x41, 0x84, - 0xf3, 0xe4, 0x3a, 0x38, 0x6c, 0x97, 0x42, 0xe9, 0x47, 0x21, 0x38, 0xb2, 0x64, 0x98, 0x77, 0x54, - 0xb3, 0x5e, 0x36, 0x8d, 0x9d, 0x5d, 0xcf, 0x91, 0xe7, 0xe7, 0xe0, 0xf0, 0x9d, 0x2d, 0x66, 0xbc, - 0x68, 0xec, 0x4c, 0xb7, 0x2f, 0x57, 0xe8, 0x59, 0x37, 0x89, 0x6a, 0x40, 0xbe, 0xd0, 0x8b, 0x9e, - 0xa5, 0x7e, 0x8a, 0x51, 0x59, 0x61, 0x44, 0x9c, 0x84, 0x1e, 0xbc, 0x0c, 0xd8, 0x4f, 0xdc, 0x30, - 0x85, 0xfe, 0x8d, 0xe7, 0x92, 0xbd, 0xe7, 0x92, 0xf9, 0xb9, 0x42, 0x8f, 0xac, 0x2c, 0x79, 0x89, - 0x51, 0x1c, 0xfc, 0x22, 0x1c, 0xa2, 0x46, 0x88, 0xd8, 0x74, 0x15, 0xd5, 0xb6, 0x49, 0xab, 0x6d, - 0x5b, 0x62, 0x07, 0x4b, 0xb0, 0xad, 0xaf, 0xb7, 0xed, 0xe1, 0x96, 0xba, 0x93, 0xe7, 0xa0, 0x59, - 0x01, 0x89, 0x73, 0x80, 0x05, 0xb6, 0xf3, 0x6c, 0x0d, 0xdd, 0x01, 0xd9, 0x75, 0xfb, 0xdc, 0xd4, - 0x37, 0xbb, 0x28, 0x34, 0x7f, 0xfe, 0xfc, 0x79, 0xef, 0x2e, 0x38, 0xd9, 0x03, 0x77, 0x76, 0xc2, - 0x17, 0x60, 0x42, 0x37, 0xfc, 0xf9, 0x3c, 0xc3, 0x2f, 0xfb, 0x25, 0x74, 0xc3, 0x97, 0x14, 0xb4, - 0x06, 0xe3, 0x76, 0xd3, 0xea, 0x51, 0x10, 0x79, 0x03, 0x07, 0x64, 0x90, 0xf8, 0x5c, 0xc7, 0xb8, - 0xed, 0xa9, 0xbc, 0x52, 0x79, 0xb7, 0x8b, 0xd6, 0xe0, 0x04, 0x1c, 0xae, 0xdc, 0xd6, 0xda, 0x29, - 0xe7, 0x46, 0x5b, 0xaa, 0xad, 0x9a, 0x96, 0xa6, 0x6f, 0x62, 0x6a, 0x8f, 0xc1, 0x39, 0x38, 0xb3, - 0xc4, 0x8d, 0x94, 0xd4, 0x96, 0xaa, 0xd7, 0x9b, 0x9a, 0xbe, 0xc9, 0x1e, 0x9a, 0xe8, 0x38, 0xe9, - 0x04, 0xbd, 0x81, 0x62, 0x76, 0xc4, 0x3f, 0x0b, 0x47, 0x7d, 0xbd, 0xa4, 0x0c, 0x1b, 0x9c, 0xa3, - 0xfb, 0xdc, 0x77, 0xba, 0x6e, 0x8e, 0xee, 0xeb, 0x08, 0x12, 0xcb, 0x86, 0x65, 0x17, 0xd9, 0xa1, - 0x65, 0x43, 0x23, 0x26, 0x7e, 0x02, 0x02, 0x5a, 0xdb, 0x39, 0x06, 0x73, 0x2d, 0x13, 0x33, 0xd0, - 0xa6, 0x03, 0x09, 0x68, 0x6d, 0x7c, 0xd1, 0xf3, 0xf2, 0x33, 0x3f, 0x52, 0x39, 0xea, 0xbf, 0x26, - 0x25, 0x10, 0x58, 0xca, 0x9f, 0x0b, 0x4a, 0x8d, 0x5f, 0x37, 0xef, 0xd9, 0x30, 0x15, 0xad, 0xbd, - 0xc7, 0xb7, 0xf8, 0x32, 0x12, 0x79, 0x11, 0x74, 0xca, 0x78, 0x7a, 0x34, 0x07, 0x51, 0x55, 0xdf, - 0xa5, 0x43, 0x6b, 0x1c, 0x60, 0xdf, 0x8f, 0xaa, 0xfa, 0x6e, 0x51, 0xb7, 0x1b, 0xf8, 0x19, 0x08, - 0x31, 0x70, 0xde, 0xbf, 0xde, 0x29, 0xbf, 0x38, 0x33, 0x5f, 0x1e, 0x91, 0x59, 0x7d, 0xee, 0x04, - 0x48, 0xee, 0x24, 0xdd, 0xcf, 0xe5, 0xf9, 0x73, 0x04, 0xd8, 0xed, 0xd6, 0x9a, 0xe9, 0x5c, 0xdc, - 0x73, 0x9a, 0x40, 0xc3, 0x9b, 0xc0, 0x4f, 0x41, 0xb0, 0x6d, 0xd4, 0x87, 0xf4, 0x84, 0x56, 0xe3, - 0x97, 0x60, 0x54, 0xb8, 0x06, 0x6c, 0x7a, 0x3c, 0xd6, 0x1d, 0x57, 0xee, 0x3c, 0x7e, 0x1e, 0x85, - 0x93, 0xc1, 0x11, 0x14, 0xa4, 0x7e, 0xc6, 0xb6, 0x73, 0x89, 0x2d, 0xb0, 0xad, 0x8b, 0x43, 0xf7, - 0x41, 0x2d, 0x06, 0xb6, 0xf5, 0xa1, 0x23, 0x77, 0xbc, 0x11, 0x13, 0xa6, 0xf8, 0x12, 0xaf, 0x9a, - 0x9b, 0xc4, 0x9e, 0xcf, 0xed, 0xda, 0x24, 0x6b, 0xe9, 0x38, 0x03, 0x63, 0xaa, 0xa5, 0xe8, 0x9d, - 0xd6, 0x06, 0x31, 0xc5, 0x64, 0xf6, 0xfb, 0xb1, 0x72, 0x54, 0xb5, 0x4a, 0xac, 0x1a, 0x3f, 0xe9, - 0x2c, 0xe7, 0xa1, 0x7e, 0xb8, 0x0f, 0x3f, 0x9c, 0x10, 0xab, 0xbb, 0x37, 0x06, 0x99, 0xb6, 0x7d, - 0x6d, 0x2e, 0x38, 0x6d, 0xce, 0xee, 0x6d, 0x73, 0x92, 0xa5, 0x42, 0x64, 0x80, 0xd3, 0x3a, 0x73, - 0xef, 0x5e, 0xc8, 0xd3, 0xee, 0x69, 0x7f, 0xbb, 0xde, 0xb3, 0xd0, 0x41, 0xad, 0xd6, 0x7c, 0xad, - 0x16, 0xcb, 0xdb, 0x0b, 0x2c, 0x20, 0xf5, 0x24, 0x8c, 0x3a, 0x56, 0x07, 0x17, 0xf3, 0x98, 0xd0, - 0xed, 0x1d, 0x24, 0x3b, 0x35, 0xbd, 0xa6, 0x82, 0x43, 0x9a, 0xa2, 0x8d, 0xfc, 0x54, 0x18, 0x62, - 0x9e, 0x56, 0xf0, 0x1a, 0x48, 0xaa, 0xa5, 0xcf, 0x6f, 0xec, 0xda, 0x44, 0x31, 0x6d, 0x56, 0xb6, - 0x4f, 0xd4, 0x62, 0x80, 0x14, 0xa8, 0x3f, 0xea, 0x60, 0xcb, 0x1c, 0x19, 0x97, 0x61, 0x92, 0xee, - 0x66, 0x6c, 0xd7, 0x72, 0x29, 0x06, 0x0f, 0xa2, 0xe8, 0x8c, 0x96, 0x52, 0xa4, 0xe8, 0xf4, 0x6f, - 0x87, 0x22, 0xef, 0xe2, 0x82, 0xaf, 0x8b, 0xa1, 0x83, 0x08, 0x2e, 0xf8, 0xbb, 0xb8, 0xe0, 0xe9, - 0xe2, 0x95, 0x6f, 0x07, 0x1e, 0x74, 0xd1, 0xfb, 0x01, 0xf8, 0x8a, 0xf3, 0x9a, 0xc3, 0x4f, 0x20, - 0xf8, 0x6b, 0x08, 0x3e, 0xb1, 0x97, 0x15, 0xf3, 0x87, 0xab, 0x77, 0x8c, 0xb3, 0x6b, 0x35, 0x9b, - 0xd8, 0xa9, 0x6c, 0x25, 0x55, 0x69, 0x93, 0x9a, 0xd6, 0xd0, 0x6a, 0x90, 0x19, 0x30, 0xc8, 0xf9, - 0xc3, 0x74, 0x10, 0x29, 0x61, 0xe7, 0x79, 0x61, 0xf7, 0x74, 0x7f, 0xfe, 0xc8, 0x92, 0xd1, 0x31, - 0xf7, 0xd2, 0x75, 0x1f, 0x72, 0x80, 0x3a, 0x8c, 0x67, 0x2b, 0xa5, 0xd4, 0x39, 0x87, 0xdc, 0x7c, - 0x05, 0x92, 0xfd, 0x9d, 0x9b, 0x75, 0x95, 0x11, 0x8e, 0xed, 0xe9, 0xcd, 0xac, 0xd0, 0x0c, 0x86, - 0xb6, 0xb0, 0x0f, 0xda, 0xab, 0x30, 0xc5, 0x42, 0x09, 0xa9, 0x6c, 0xbd, 0xa5, 0xe9, 0x9a, 0x65, - 0xb3, 0x94, 0xa9, 0xf9, 0x22, 0x1c, 0xd9, 0xd3, 0x16, 0xcf, 0xb5, 0x3c, 0xba, 0xb7, 0x1d, 0x5e, - 0x71, 0x64, 0x4f, 0x2b, 0x3c, 0xfb, 0xf8, 0x49, 0x48, 0x88, 0x02, 0x6f, 0xfa, 0x31, 0xcb, 0x84, - 0xf0, 0x1e, 0xc6, 0x22, 0x29, 0x90, 0xce, 0x41, 0xa2, 0xec, 0x1e, 0xf1, 0xb3, 0x25, 0xe4, 0x3c, - 0x84, 0xf9, 0xc6, 0xcf, 0x4d, 0x8a, 0xa4, 0xd7, 0x9c, 0xf8, 0x1a, 0x37, 0x27, 0x44, 0xd2, 0x91, - 0xcc, 0x01, 0xd3, 0xdb, 0x90, 0xf0, 0x27, 0x87, 0xe0, 0x3a, 0x8c, 0x3a, 0x89, 0x29, 0x9c, 0xca, - 0x75, 0x2f, 0x95, 0x69, 0x7f, 0xae, 0x91, 0xe4, 0xcb, 0x35, 0xfa, 0x42, 0xe0, 0xa0, 0x0c, 0x67, - 0x87, 0x74, 0x7a, 0x13, 0x26, 0x4b, 0xce, 0x23, 0x87, 0xb2, 0xd1, 0x74, 0xe2, 0x72, 0x9e, 0x07, - 0x14, 0xd1, 0x9e, 0x67, 0x4b, 0x3d, 0xcf, 0x22, 0x9e, 0x81, 0x90, 0x69, 0x34, 0x49, 0x5f, 0x72, - 0x40, 0xef, 0xae, 0x29, 0x7b, 0x0c, 0x95, 0x42, 0xa4, 0x4b, 0x10, 0xa7, 0xf4, 0xe9, 0xd0, 0x1c, - 0xeb, 0x9e, 0x5f, 0xbe, 0xe1, 0x83, 0x3b, 0x33, 0x60, 0x70, 0xce, 0xe7, 0x5b, 0x01, 0x6f, 0xd7, - 0x39, 0x5a, 0xfa, 0x5e, 0x00, 0xa6, 0xdc, 0x9e, 0xf3, 0x90, 0x24, 0xa3, 0xfb, 0x37, 0x10, 0x60, - 0xb7, 0x7f, 0x3c, 0xd4, 0xdd, 0x52, 0xdb, 0xc2, 0x3b, 0xbd, 0xdc, 0x6f, 0xbd, 0xef, 0x25, 0x30, - 0xeb, 0x63, 0xc7, 0xaa, 0xda, 0xe6, 0x66, 0x39, 0xcb, 0x64, 0x80, 0x37, 0xfd, 0xfd, 0x7b, 0xd3, - 0xed, 0x9f, 0x2c, 0xe9, 0x7d, 0x68, 0xc9, 0x57, 0xe1, 0xf0, 0x40, 0x52, 0x03, 0xac, 0xf6, 0x39, - 0xff, 0x9b, 0x54, 0x7b, 0x62, 0x03, 0x1e, 0xbe, 0x79, 0x3d, 0xd9, 0xd7, 0x20, 0x5a, 0xd1, 0x6c, - 0xfe, 0x36, 0x66, 0x5e, 0xdc, 0x18, 0x7f, 0x9c, 0xd0, 0xe1, 0xa4, 0x78, 0x7e, 0xc4, 0x1b, 0x2b, - 0x64, 0x97, 0xe8, 0x52, 0xfe, 0x07, 0x86, 0x59, 0xce, 0x9c, 0xef, 0x65, 0xdf, 0xf4, 0xab, 0x70, - 0x58, 0x5c, 0x21, 0xe7, 0x61, 0x4b, 0x57, 0x9c, 0xd7, 0x3e, 0x42, 0xe8, 0xf2, 0xb0, 0xe7, 0xf9, - 0x13, 0x8f, 0x09, 0xcc, 0xe3, 0x95, 0x1f, 0x06, 0x60, 0x9a, 0x9f, 0xca, 0x54, 0x4d, 0x55, 0xb7, - 0x1a, 0x86, 0xd9, 0x52, 0xdd, 0x44, 0xe0, 0xcf, 0xc2, 0x49, 0x71, 0x81, 0x47, 0x64, 0xb1, 0x29, - 0xb6, 0x0f, 0xe8, 0x80, 0x10, 0xe4, 0x71, 0x81, 0x3c, 0x88, 0x3e, 0x56, 0xe1, 0x74, 0xdb, 0x34, - 0xda, 0xc4, 0x54, 0x6a, 0xaa, 0x9b, 0x25, 0xd7, 0x4f, 0x7f, 0x78, 0x30, 0xf9, 0x14, 0x27, 0x90, - 0x57, 0x9d, 0x7c, 0xba, 0xbe, 0x26, 0x08, 0x3c, 0xc9, 0x32, 0x41, 0xcc, 0x6d, 0x32, 0xac, 0x91, - 0xe1, 0xe1, 0xd0, 0x94, 0x43, 0x62, 0xbf, 0x66, 0x58, 0xa2, 0xd0, 0x5c, 0x6e, 0x0e, 0x4e, 0x0c, - 0x24, 0x7f, 0xe0, 0x72, 0xf6, 0x63, 0x11, 0x78, 0x36, 0x67, 0xd8, 0x8b, 0xa4, 0x41, 0x74, 0x8b, - 0x2c, 0x35, 0x8d, 0x3b, 0xcc, 0xbf, 0xca, 0xab, 0x36, 0xd9, 0x34, 0x4c, 0x8d, 0x58, 0x79, 0x46, - 0x80, 0x09, 0xa4, 0x0e, 0x09, 0xd5, 0xf7, 0x16, 0x9a, 0x90, 0xc0, 0x95, 0xfe, 0x23, 0x89, 0xbd, - 0xf4, 0xfc, 0x6f, 0xa8, 0xf5, 0x68, 0x52, 0x1f, 0xc2, 0x4f, 0x93, 0x65, 0x60, 0xd6, 0x6a, 0x46, - 0x47, 0xb7, 0x95, 0x96, 0xaa, 0xab, 0x9b, 0x84, 0x85, 0x65, 0xb8, 0x2c, 0x3e, 0xf3, 0x18, 0x2d, - 0x71, 0xdc, 0x55, 0x17, 0xd5, 0xd7, 0xd8, 0xa4, 0xda, 0x5f, 0x4d, 0xdb, 0x6b, 0x9b, 0x46, 0x43, - 0x63, 0x6b, 0x87, 0xdb, 0x5e, 0xe8, 0x71, 0xdb, 0x2b, 0x73, 0xdc, 0xfd, 0xda, 0x6b, 0xf7, 0x57, - 0x63, 0x03, 0xa6, 0xac, 0x2d, 0xa3, 0xdd, 0xd6, 0xf4, 0x4d, 0x65, 0x53, 0x6b, 0xd8, 0x4a, 0x4d, - 0x35, 0xeb, 0x96, 0x88, 0x14, 0x3e, 0x46, 0x83, 0x15, 0x81, 0x7c, 0x4d, 0x6b, 0xd8, 0x79, 0x8a, - 0xea, 0x6f, 0xd0, 0xea, 0xaf, 0xa6, 0x03, 0x6c, 0x68, 0xba, 0xaa, 0xd7, 0x34, 0xb5, 0xa9, 0x88, - 0x1f, 0x96, 0x71, 0x5e, 0x21, 0x7d, 0x8c, 0xf6, 0x96, 0x1c, 0xdc, 0x8a, 0x40, 0xf5, 0xb7, 0xd7, - 0xe8, 0xaf, 0xc6, 0x2b, 0x10, 0xb1, 0x88, 0x6a, 0xd6, 0xb6, 0x84, 0xf7, 0x37, 0xff, 0x18, 0x63, - 0x62, 0xf0, 0x3e, 0xc2, 0x82, 0x06, 0xa5, 0xd6, 0x68, 0x6a, 0x9b, 0x5b, 0xb6, 0xb8, 0x7a, 0xf7, - 0x18, 0xd4, 0x96, 0x18, 0xbc, 0x9f, 0x1a, 0xa7, 0x91, 0x3b, 0x06, 0x93, 0x8d, 0xa6, 0x71, 0x47, - 0x61, 0xa1, 0x03, 0x67, 0x72, 0x84, 0x3c, 0x19, 0x8f, 0x7f, 0x1a, 0x80, 0x4f, 0x7e, 0x04, 0xfd, - 0xc5, 0x39, 0x08, 0x37, 0x0d, 0x9e, 0x73, 0x8c, 0x06, 0x04, 0x7f, 0x7a, 0xa4, 0xd8, 0xb4, 0xe5, - 0xe9, 0xe1, 0x32, 0xfb, 0xed, 0x99, 0xe5, 0x11, 0x99, 0xa3, 0xe2, 0x0b, 0x30, 0xc6, 0xfe, 0x50, - 0x5a, 0x0d, 0xf5, 0x80, 0x45, 0x27, 0xca, 0x00, 0x57, 0x1b, 0x2a, 0xfe, 0x14, 0x8c, 0x73, 0xa4, - 0xb6, 0x6a, 0xda, 0x3a, 0x31, 0x0f, 0x58, 0x48, 0xe2, 0x0c, 0xb8, 0xcc, 0x61, 0xf1, 0x2c, 0x44, - 0x9a, 0xc6, 0xa6, 0xd1, 0xb1, 0x0f, 0xc8, 0xb4, 0x10, 0x50, 0xb4, 0x31, 0x76, 0xa2, 0xab, 0x98, - 0xa4, 0x61, 0x12, 0xf1, 0x13, 0x32, 0x43, 0x1a, 0x63, 0xc0, 0x32, 0x87, 0xcd, 0x1d, 0x82, 0xf8, - 0xbe, 0xec, 0xfe, 0x6e, 0x00, 0x8e, 0x0f, 0xe1, 0x11, 0xae, 0x42, 0xd2, 0xbd, 0x45, 0xde, 0xab, - 0x54, 0x7c, 0x3f, 0xf3, 0xb3, 0x5f, 0x2f, 0xa6, 0x9d, 0x97, 0x04, 0xf6, 0x50, 0x25, 0x80, 0x07, - 0x50, 0xe3, 0x9c, 0x9f, 0x7d, 0x7c, 0x09, 0xfa, 0xe2, 0x16, 0x93, 0x76, 0x7f, 0x75, 0xee, 0x27, - 0x11, 0x1c, 0xdb, 0xdb, 0x8e, 0xc3, 0x86, 0x1d, 0x67, 0x49, 0x7e, 0xfd, 0x3e, 0x6a, 0x26, 0x17, - 0xc5, 0x95, 0x77, 0x52, 0x57, 0x54, 0xfe, 0xfb, 0x54, 0x14, 0x45, 0x24, 0xf0, 0x36, 0x8d, 0x4e, - 0xbd, 0x61, 0x1a, 0x3a, 0xff, 0x41, 0x34, 0x0e, 0xe5, 0x3c, 0x5d, 0x64, 0xcd, 0xf6, 0x14, 0x3a, - 0x33, 0x6a, 0xd9, 0xea, 0xa6, 0xa6, 0x6f, 0x66, 0x42, 0x6d, 0xd3, 0xa8, 0x67, 0xe2, 0x96, 0xd1, - 0xb0, 0x37, 0x54, 0xfd, 0xb6, 0xd2, 0x22, 0xb5, 0xcc, 0x68, 0x83, 0xd4, 0x4d, 0xb5, 0xd5, 0x16, - 0xac, 0xff, 0xbd, 0x00, 0x3c, 0x71, 0xc0, 0xe0, 0xf0, 0x0e, 0x60, 0xab, 0x23, 0x0e, 0xad, 0x9d, - 0xd3, 0x19, 0x27, 0x33, 0xed, 0xc2, 0xe3, 0x33, 0xca, 0x3d, 0xd9, 0xf1, 0x24, 0xa9, 0x05, 0xbd, - 0xb7, 0x83, 0x44, 0x23, 0x2e, 0x9c, 0x45, 0x5b, 0x16, 0x27, 0x4f, 0xde, 0x96, 0x43, 0xdf, 0xf7, - 0x96, 0x45, 0x23, 0xbd, 0x96, 0xaf, 0x5c, 0xfe, 0xe0, 0x6a, 0x70, 0x61, 0xe6, 0x02, 0x4b, 0x3f, - 0x3f, 0x0c, 0x92, 0x13, 0x5a, 0xca, 0x9b, 0x9a, 0x4d, 0x4c, 0x4d, 0xc5, 0x68, 0x81, 0x16, 0x8b, - 0xdf, 0x1f, 0xf3, 0x14, 0x5f, 0xf0, 0x79, 0xc9, 0x7f, 0x16, 0x80, 0xa7, 0x1e, 0xa7, 0x5f, 0xfb, - 0x3c, 0xe0, 0xe2, 0xcb, 0xd2, 0x15, 0xc9, 0xb9, 0x75, 0x88, 0x7b, 0x2e, 0x94, 0x09, 0x8b, 0x2d, - 0x97, 0x1d, 0x70, 0x29, 0xc1, 0xf9, 0x14, 0xf9, 0xb7, 0x07, 0xdd, 0x4a, 0x88, 0xf5, 0xae, 0x8c, - 0x5a, 0x38, 0xeb, 0xfe, 0xfa, 0x57, 0x70, 0xe0, 0x49, 0xc8, 0xb2, 0x6d, 0xb7, 0x7b, 0xa7, 0x5d, - 0xc2, 0x55, 0xf8, 0x3c, 0xb3, 0x2b, 0x05, 0xe2, 0x95, 0x1f, 0x76, 0x5e, 0x1b, 0x7d, 0xb7, 0x8b, - 0x4e, 0xc2, 0x71, 0xc0, 0xee, 0x68, 0x3d, 0x89, 0xba, 0x0c, 0xe0, 0x41, 0x17, 0xad, 0xc2, 0x31, - 0x88, 0x71, 0x82, 0x29, 0x4a, 0x31, 0x09, 0x4e, 0x07, 0x52, 0x7b, 0x53, 0x78, 0x53, 0x10, 0x67, - 0x29, 0x7a, 0x3c, 0x35, 0xcf, 0xca, 0x49, 0x7e, 0x96, 0x48, 0x81, 0x74, 0x17, 0xc1, 0x47, 0xb4, - 0x0a, 0xe8, 0x62, 0xc8, 0xde, 0xba, 0x3e, 0xe8, 0x4c, 0x5b, 0x40, 0xe1, 0xcf, 0x40, 0xc2, 0x79, - 0x9d, 0x59, 0x61, 0xa7, 0x9b, 0x07, 0xac, 0xd9, 0xe3, 0x0e, 0xb4, 0x4c, 0x81, 0x87, 0x2e, 0x87, - 0xef, 0x0d, 0xee, 0xfd, 0x10, 0x1b, 0xe3, 0x23, 0xf7, 0x7e, 0x16, 0x22, 0xfc, 0xa7, 0xdf, 0x0e, - 0xe8, 0xb5, 0x80, 0xc2, 0x19, 0x08, 0xb1, 0x37, 0xbd, 0x87, 0x6f, 0x2f, 0x0c, 0x66, 0xe8, 0xd0, - 0x1e, 0x8c, 0xc2, 0x47, 0xb4, 0x66, 0xf0, 0x0b, 0x20, 0x59, 0xe2, 0x64, 0x41, 0xb1, 0x0d, 0x6a, - 0x27, 0x1d, 0xb4, 0xe4, 0x8f, 0x5b, 0xfc, 0x08, 0xab, 0x6a, 0xe4, 0x55, 0xd3, 0xc6, 0x15, 0x48, - 0x32, 0x02, 0x6d, 0xd3, 0x68, 0x19, 0xec, 0x4c, 0x57, 0xd9, 0x76, 0x5f, 0xbf, 0x38, 0x60, 0xfc, - 0x47, 0x29, 0x66, 0x99, 0x22, 0x52, 0xad, 0xec, 0x3d, 0x9a, 0xc1, 0x9e, 0x22, 0xa2, 0x44, 0x6b, - 0x5b, 0xa4, 0x76, 0xdb, 0x89, 0xb1, 0x0f, 0x7b, 0x8a, 0x68, 0xcb, 0x68, 0xe7, 0x05, 0x2c, 0x4b, - 0xa5, 0xa0, 0xc8, 0x2d, 0xf5, 0x36, 0x51, 0xda, 0xea, 0x2e, 0xb3, 0x35, 0xc3, 0x07, 0xa4, 0x52, - 0x6c, 0x19, 0xed, 0x55, 0xf5, 0x36, 0x29, 0x73, 0x70, 0x96, 0xc5, 0x41, 0x69, 0x18, 0x66, 0x9d, - 0x98, 0x07, 0xec, 0xc4, 0x63, 0x14, 0x72, 0x8d, 0x02, 0xe2, 0x45, 0xc0, 0x82, 0x19, 0x1a, 0xfb, - 0xe5, 0x85, 0xd7, 0x3a, 0x9a, 0xb9, 0x7b, 0xc0, 0xcb, 0x08, 0x12, 0x67, 0x82, 0x56, 0x23, 0x45, - 0x0e, 0x8f, 0x57, 0xe1, 0x28, 0xa7, 0xd2, 0x31, 0x6b, 0x5b, 0xd4, 0xab, 0x71, 0x4d, 0xd8, 0x03, - 0x9e, 0x46, 0x38, 0xc4, 0x48, 0x09, 0x2c, 0x47, 0xda, 0x78, 0x19, 0x58, 0xb9, 0xf3, 0x6b, 0x84, - 0xaf, 0x75, 0x54, 0xdd, 0xd6, 0xec, 0xdd, 0x03, 0xae, 0x7a, 0xb2, 0x81, 0xf0, 0x1f, 0x34, 0x7c, - 0x59, 0x60, 0xe0, 0x17, 0x85, 0xb2, 0xd4, 0xb6, 0x0c, 0xc3, 0x22, 0x8a, 0x45, 0x54, 0x7b, 0xe8, - 0x8b, 0x4b, 0x23, 0x72, 0x82, 0x4b, 0x86, 0x82, 0x57, 0x88, 0x6a, 0xe3, 0x57, 0xe0, 0x24, 0xa3, - 0x40, 0x74, 0x9b, 0x98, 0x4a, 0xdd, 0x54, 0xef, 0x50, 0x13, 0xdd, 0xea, 0x6c, 0xb4, 0x34, 0xf6, - 0x23, 0x99, 0x43, 0x9f, 0x60, 0x1a, 0x91, 0x99, 0xaa, 0x15, 0x28, 0xee, 0x22, 0x47, 0xad, 0xb8, - 0x98, 0x74, 0x98, 0x2e, 0x9f, 0xbc, 0x2a, 0x18, 0x1f, 0x3e, 0xcc, 0x4d, 0xc1, 0x26, 0x8f, 0xf6, - 0x6d, 0xc1, 0x33, 0x3d, 0x4a, 0x5c, 0x8b, 0x1c, 0x49, 0xdc, 0xd1, 0xec, 0x2d, 0x8f, 0x38, 0xc6, - 0x87, 0x3b, 0x96, 0x0e, 0x6d, 0xa6, 0x59, 0x82, 0xc4, 0x4d, 0xcd, 0xde, 0x72, 0x44, 0x33, 0x74, - 0x32, 0xff, 0xb3, 0xc1, 0xeb, 0xd4, 0x10, 0x57, 0x01, 0xcf, 0x40, 0x98, 0x1a, 0x36, 0xbb, 0x07, - 0xcc, 0x60, 0x0e, 0x44, 0xd7, 0xd8, 0x96, 0xa1, 0x93, 0x5d, 0xe1, 0xce, 0x8a, 0x40, 0xf6, 0x90, - 0x89, 0xcf, 0xa0, 0xab, 0x02, 0x78, 0x68, 0xdf, 0x7f, 0x23, 0x00, 0x4f, 0x3e, 0x86, 0x0b, 0x42, - 0xe7, 0x39, 0x77, 0x1a, 0x14, 0xe1, 0xcd, 0x0c, 0xef, 0x78, 0x9c, 0x03, 0x73, 0x32, 0x6c, 0x8f, - 0x30, 0x8d, 0x7a, 0xa7, 0xe6, 0x62, 0x1f, 0xb4, 0x47, 0x70, 0x68, 0x81, 0xfe, 0x1c, 0xc4, 0x4c, - 0xc3, 0x68, 0x39, 0xb8, 0xc3, 0x57, 0x18, 0xa0, 0xa0, 0x02, 0xb1, 0x00, 0x98, 0x07, 0x0c, 0xb8, - 0xf7, 0x2f, 0xf0, 0x0f, 0x78, 0x68, 0xd3, 0x83, 0xc1, 0xc9, 0x0c, 0xe5, 0xdf, 0x9d, 0x81, 0xec, - 0xeb, 0xf7, 0xb9, 0xf0, 0x79, 0x18, 0x65, 0x2b, 0xa4, 0x76, 0x50, 0x9c, 0xc6, 0x01, 0xcb, 0x4d, - 0xf7, 0x35, 0xda, 0x7f, 0x19, 0xed, 0x3e, 0x82, 0x29, 0x71, 0xa6, 0x43, 0x67, 0x97, 0xad, 0xd6, - 0xf8, 0x3b, 0xa5, 0x19, 0x08, 0x69, 0xed, 0xed, 0x85, 0x03, 0x9a, 0x61, 0x30, 0x02, 0xf6, 0xd2, - 0x01, 0xd2, 0x60, 0x30, 0x14, 0xb6, 0xde, 0x51, 0x9b, 0x07, 0xed, 0x7c, 0x14, 0x26, 0x77, 0x1c, - 0x22, 0x83, 0x23, 0x2d, 0x0b, 0x33, 0xc2, 0x2e, 0x4c, 0xdf, 0x85, 0xb1, 0x45, 0xd5, 0x26, 0x2c, - 0x70, 0x8c, 0x9f, 0x07, 0xb0, 0x6c, 0xd5, 0xb4, 0x15, 0xb6, 0x13, 0xa3, 0x03, 0x7f, 0x5a, 0x64, - 0x8c, 0x41, 0x53, 0x7c, 0x7c, 0x91, 0x3d, 0x5b, 0xca, 0x11, 0x03, 0x07, 0x22, 0x8e, 0x12, 0xbd, - 0x4e, 0xd1, 0xd2, 0xbf, 0x85, 0x20, 0xb4, 0xa4, 0x35, 0xd9, 0xfd, 0xaa, 0x9a, 0xa1, 0xdb, 0x44, - 0xe7, 0x09, 0x9b, 0x22, 0x34, 0x19, 0x13, 0x65, 0x8c, 0xa3, 0xd3, 0x30, 0x2a, 0x3e, 0x59, 0x0b, - 0x71, 0xd9, 0xf9, 0xc4, 0x29, 0x18, 0x65, 0x91, 0x12, 0xf7, 0x17, 0x38, 0xdd, 0xb7, 0x90, 0x22, - 0xb4, 0xbc, 0x58, 0x67, 0x6f, 0x30, 0xde, 0xb1, 0x14, 0xeb, 0xc2, 0xd0, 0x0b, 0x8d, 0xc1, 0xf7, - 0xee, 0xb2, 0x3c, 0x61, 0xf5, 0x8e, 0x55, 0xb9, 0x90, 0x7b, 0x1a, 0x24, 0xcb, 0x36, 0x4c, 0x75, - 0xb3, 0xf7, 0xe6, 0xbd, 0x7b, 0xd9, 0x2d, 0xfc, 0xa8, 0x8b, 0xd0, 0x82, 0xe7, 0x1c, 0xf6, 0x0d, - 0x44, 0x8d, 0x40, 0xab, 0x6d, 0xe8, 0x16, 0xfb, 0x99, 0x2e, 0xfc, 0x1c, 0x00, 0xcb, 0x59, 0x63, - 0x1b, 0xbc, 0x48, 0x97, 0x99, 0xee, 0x6f, 0x95, 0x02, 0xd0, 0x8d, 0x5c, 0x1e, 0x23, 0xce, 0x9f, - 0xf8, 0x59, 0x98, 0xa8, 0x6b, 0x56, 0xbb, 0xa9, 0xee, 0x2a, 0x2d, 0xfe, 0xb3, 0x5f, 0x22, 0x93, - 0x22, 0x21, 0x8a, 0xc5, 0x8f, 0x81, 0x1d, 0x9c, 0xe3, 0x93, 0xfe, 0x71, 0x04, 0x91, 0x2c, 0x3f, - 0x62, 0x9e, 0x81, 0xf0, 0x46, 0xd3, 0xa8, 0xdd, 0x3e, 0x68, 0xa1, 0x63, 0x40, 0xd4, 0x1c, 0x33, - 0x09, 0xbb, 0x4f, 0x73, 0x80, 0x39, 0xc6, 0xa1, 0x72, 0x29, 0x18, 0x17, 0xde, 0x64, 0xdf, 0xc3, - 0x91, 0xa8, 0x77, 0xd1, 0x89, 0x6a, 0xdb, 0xbf, 0x0b, 0xc0, 0x68, 0x5e, 0x5e, 0x65, 0xe1, 0xe2, - 0xf3, 0x00, 0x4e, 0x44, 0xcd, 0xfd, 0xed, 0xad, 0x49, 0x21, 0x37, 0x6f, 0xa4, 0x5f, 0x00, 0x15, - 0xeb, 0xf8, 0x32, 0x24, 0x08, 0xdd, 0x56, 0x9b, 0xcc, 0xda, 0x54, 0xdc, 0xdf, 0xba, 0x1e, 0x80, - 0x35, 0xee, 0x01, 0x2c, 0xd6, 0xf1, 0x15, 0x98, 0xb0, 0x3a, 0x1b, 0x2e, 0x63, 0x7a, 0x8a, 0x32, - 0x00, 0x35, 0xe1, 0x85, 0x2c, 0xd6, 0x69, 0x3f, 0x99, 0x4d, 0xc3, 0xf5, 0x32, 0xb4, 0x6f, 0x3f, - 0x19, 0x90, 0xd8, 0x54, 0x9c, 0xe6, 0xeb, 0x8a, 0x75, 0xbb, 0xc3, 0x7f, 0x3c, 0xd1, 0xa3, 0x94, - 0x71, 0xa7, 0xb6, 0x72, 0xbb, 0x63, 0xe1, 0x1c, 0x4c, 0xf1, 0x1b, 0xb8, 0xc4, 0x54, 0x34, 0xf7, - 0xcc, 0x5c, 0x3c, 0x99, 0xd0, 0xdf, 0xd0, 0x87, 0x48, 0xc6, 0x0e, 0x74, 0xef, 0x80, 0x3d, 0x6d, - 0xc2, 0x24, 0xf3, 0x40, 0x98, 0x17, 0x23, 0x93, 0x3b, 0xd4, 0xfd, 0xc3, 0x67, 0x61, 0xb4, 0xad, - 0xda, 0x36, 0x31, 0x9d, 0xdc, 0xcf, 0x41, 0x6f, 0xf3, 0xc8, 0x0e, 0x0c, 0x9e, 0x85, 0x38, 0x1d, - 0xb9, 0xad, 0xd9, 0x9d, 0x7d, 0x7e, 0x2b, 0xce, 0x57, 0x9f, 0xf9, 0x19, 0x04, 0xd0, 0xbb, 0x95, - 0x85, 0xcf, 0x41, 0x30, 0x5b, 0x7a, 0x45, 0x1a, 0x49, 0x3e, 0xf3, 0xa0, 0x8b, 0xd2, 0x38, 0xe5, - 0x57, 0x18, 0x6a, 0x88, 0x5b, 0xb3, 0xd9, 0xb6, 0xe6, 0xfe, 0x9a, 0x36, 0x1e, 0x85, 0xe0, 0xb5, - 0x42, 0x55, 0x42, 0x38, 0x0a, 0xa1, 0xe5, 0x42, 0x76, 0x51, 0x0a, 0xd0, 0xbf, 0xca, 0x6b, 0x95, - 0xaa, 0x14, 0xa4, 0x95, 0xe5, 0xf5, 0xaa, 0x14, 0xc2, 0x00, 0x91, 0xc5, 0xc2, 0x4a, 0xa1, 0x5a, - 0x90, 0xc2, 0x38, 0x06, 0xa3, 0xf9, 0xb5, 0x52, 0xa9, 0x90, 0xaf, 0x4a, 0x11, 0xfa, 0xb1, 0x56, - 0xae, 0x16, 0xd7, 0x4a, 0x15, 0x69, 0x14, 0x8f, 0x41, 0xb8, 0x2a, 0x67, 0xf3, 0x05, 0x29, 0x4a, - 0xff, 0x2c, 0x67, 0xab, 0xf9, 0x65, 0x69, 0x2c, 0xf3, 0xe3, 0x08, 0xc6, 0x73, 0x86, 0xed, 0xe9, - 0x64, 0x02, 0x60, 0xb5, 0x50, 0x5d, 0x5e, 0x5b, 0x54, 0x58, 0x5f, 0x3d, 0xdf, 0xbc, 0x2b, 0x13, - 0x10, 0x13, 0xdf, 0xa2, 0x1f, 0x3d, 0x00, 0xde, 0x1d, 0x09, 0xe2, 0xce, 0x37, 0x6b, 0x24, 0x8c, - 0x27, 0x61, 0x5c, 0x94, 0x88, 0x7e, 0x46, 0xf0, 0x51, 0x98, 0xea, 0x51, 0x55, 0x16, 0xd7, 0xf2, - 0xeb, 0xab, 0x85, 0x52, 0x55, 0x82, 0xcc, 0xe7, 0x03, 0x70, 0x7c, 0xad, 0x4d, 0xf4, 0x6c, 0x5b, - 0xf3, 0xbc, 0x77, 0xc7, 0x02, 0xf6, 0xb6, 0x46, 0x2c, 0x7c, 0x12, 0x8e, 0x95, 0xe5, 0xb5, 0x72, - 0x41, 0xae, 0xbe, 0xa2, 0xbc, 0xbc, 0x5e, 0x90, 0x5f, 0x51, 0xca, 0x59, 0x39, 0xbb, 0x5a, 0xa8, - 0x16, 0xe4, 0x8a, 0x34, 0x82, 0x4f, 0xc0, 0xb4, 0x5b, 0x5d, 0xce, 0x56, 0x97, 0xbd, 0xb5, 0x08, - 0x1f, 0x83, 0xc3, 0x6e, 0x6d, 0x7e, 0xad, 0x54, 0x2d, 0x94, 0xaa, 0x4a, 0xf5, 0x95, 0x72, 0x41, - 0x0a, 0xe0, 0x53, 0x90, 0xf4, 0x54, 0xad, 0xbd, 0x54, 0x2c, 0x78, 0x51, 0x83, 0x3e, 0xd4, 0xe5, - 0x6a, 0xb5, 0xac, 0x50, 0x79, 0xd0, 0xaa, 0x10, 0x3e, 0x02, 0xd8, 0x5f, 0x95, 0x5b, 0x5b, 0x7c, - 0x45, 0x0a, 0xfb, 0xfa, 0x52, 0x29, 0xe4, 0xd7, 0xe5, 0x22, 0xfd, 0x23, 0xbf, 0x5c, 0x58, 0xcd, - 0x4a, 0x11, 0x9c, 0x84, 0x23, 0x6e, 0xad, 0x5c, 0xa8, 0x94, 0xd7, 0x4a, 0x95, 0x82, 0x92, 0x5f, - 0x5b, 0x2c, 0x48, 0xa3, 0x99, 0xdf, 0x1c, 0x83, 0x84, 0xdf, 0x5d, 0xc7, 0x53, 0x30, 0xc1, 0x56, - 0x94, 0x5e, 0x91, 0x34, 0x82, 0xe3, 0x10, 0xcd, 0x1b, 0xba, 0xad, 0xe9, 0x1d, 0x22, 0xd5, 0xf1, - 0x28, 0x04, 0xd6, 0x5e, 0x92, 0xbe, 0x8e, 0x70, 0x1c, 0x46, 0xf9, 0xef, 0x8d, 0xd6, 0xa5, 0xdf, - 0x46, 0x78, 0x1c, 0xa2, 0xd9, 0x5a, 0x8d, 0xb4, 0xe9, 0xe7, 0x03, 0x84, 0x53, 0x70, 0xbc, 0x64, - 0xe8, 0xd9, 0x8e, 0xbd, 0x65, 0x98, 0x9a, 0xad, 0xda, 0xda, 0x36, 0x3b, 0x9a, 0x12, 0xc7, 0x0e, - 0xd2, 0xbf, 0x46, 0x38, 0x01, 0x63, 0x25, 0x23, 0xcf, 0xf7, 0x0d, 0xe9, 0x77, 0x10, 0x9e, 0x64, - 0xcb, 0x36, 0xb1, 0x9d, 0xa2, 0x7f, 0x83, 0xf0, 0x14, 0x24, 0xca, 0xaa, 0x69, 0x6b, 0x6a, 0xd3, - 0x29, 0xfc, 0x06, 0xc2, 0x12, 0xc4, 0x56, 0x3b, 0x4d, 0x5b, 0xe3, 0x5d, 0x94, 0x7e, 0x17, 0xe1, - 0x43, 0x30, 0x91, 0x6d, 0x9a, 0x44, 0xad, 0xef, 0xca, 0x6c, 0x11, 0x24, 0x75, 0xe9, 0x21, 0xc2, - 0x31, 0x88, 0x14, 0x57, 0xd7, 0x2d, 0x52, 0x97, 0x1e, 0x31, 0x10, 0x86, 0xd4, 0x6e, 0x12, 0x6e, - 0x83, 0x58, 0xd2, 0x2f, 0x05, 0xf0, 0x61, 0x90, 0x56, 0x8d, 0x6d, 0x52, 0x2f, 0x13, 0xb3, 0xa5, - 0xea, 0x44, 0xb7, 0x9b, 0xbb, 0xd2, 0x2f, 0x07, 0x30, 0x40, 0x78, 0xc9, 0xe8, 0xe8, 0x75, 0xe9, - 0x1f, 0x07, 0xe8, 0xb0, 0x2a, 0x84, 0xac, 0xd9, 0x5b, 0xc4, 0x94, 0x7e, 0x25, 0x40, 0x1b, 0x2f, - 0x19, 0xf6, 0x2a, 0xfb, 0x1d, 0x2f, 0x52, 0x97, 0xbe, 0xc6, 0x00, 0xd6, 0x2d, 0xc2, 0xd2, 0xca, - 0xa4, 0x5f, 0x0d, 0xe0, 0x23, 0x30, 0x59, 0x25, 0xad, 0xb6, 0x61, 0xaa, 0xe6, 0xae, 0x4c, 0xea, - 0x9a, 0x49, 0x6a, 0xb6, 0xf4, 0x6b, 0xac, 0xdc, 0x6d, 0xc5, 0x2d, 0xff, 0xf5, 0x00, 0x9e, 0x00, - 0xc8, 0xa9, 0x75, 0xf1, 0xc2, 0x85, 0xf4, 0xc5, 0x20, 0x65, 0xc3, 0xba, 0xae, 0x72, 0xbe, 0xfd, - 0x30, 0xa9, 0x4b, 0x5f, 0x0a, 0xd2, 0xce, 0x0b, 0xdf, 0x8e, 0xc2, 0x69, 0x26, 0xa9, 0x4b, 0x6f, - 0xd0, 0x09, 0x31, 0xb6, 0x64, 0x98, 0x1b, 0x5a, 0xbd, 0x4e, 0x74, 0xe9, 0x6f, 0x07, 0x69, 0x47, - 0x4a, 0x86, 0xcd, 0x3b, 0xfe, 0xe5, 0x20, 0x1b, 0x1b, 0x9b, 0x6a, 0x25, 0xc3, 0xce, 0xf2, 0x6b, - 0xfc, 0xd2, 0x4f, 0x06, 0x31, 0x06, 0xf6, 0x13, 0xf7, 0x4c, 0x52, 0xea, 0x46, 0x93, 0x48, 0x7f, - 0x27, 0x48, 0x65, 0xc5, 0xfa, 0xef, 0x0f, 0x62, 0xbb, 0x6d, 0xfd, 0x54, 0x90, 0x0a, 0xc2, 0xf3, - 0x08, 0x87, 0xd1, 0xb1, 0xa5, 0xaf, 0xb0, 0x06, 0xf3, 0x86, 0xde, 0x68, 0x6a, 0x35, 0x5b, 0xfa, - 0xbb, 0x41, 0x3c, 0x06, 0xa1, 0x6b, 0x86, 0x4e, 0xa4, 0x37, 0x19, 0xf8, 0x0a, 0xd1, 0x37, 0xed, - 0x2d, 0x97, 0xc6, 0xdf, 0x0b, 0xe2, 0xa3, 0x80, 0xcb, 0x26, 0x71, 0x83, 0x75, 0xfc, 0x77, 0xf9, - 0xa5, 0xbf, 0xef, 0x0c, 0xaf, 0x69, 0xa8, 0xf5, 0xaa, 0x61, 0xac, 0xa8, 0xe6, 0x26, 0x91, 0x7e, - 0x3a, 0x48, 0x19, 0x43, 0x55, 0xd9, 0x30, 0x56, 0x0c, 0x7d, 0x53, 0xfa, 0x07, 0x74, 0x6a, 0x1c, - 0x5a, 0xd7, 0xad, 0x4e, 0x9b, 0x4b, 0x78, 0x95, 0xd4, 0x35, 0xf6, 0x7b, 0x5b, 0xd2, 0xcf, 0x04, - 0xf1, 0x34, 0x4c, 0x31, 0xb3, 0xa9, 0x64, 0xd8, 0x15, 0xd5, 0xd6, 0xac, 0x06, 0xcb, 0xb9, 0x96, - 0xde, 0x0a, 0x52, 0xb6, 0x17, 0x76, 0xda, 0xa4, 0xc6, 0x8f, 0x2c, 0x45, 0x9b, 0x3f, 0xcb, 0x3a, - 0xb3, 0xaa, 0x59, 0x5c, 0x0c, 0xc4, 0x65, 0xff, 0x3f, 0x62, 0xa4, 0xd6, 0xf5, 0xb6, 0x69, 0xd4, - 0xe8, 0xd6, 0xbe, 0xd1, 0x24, 0x05, 0xe6, 0x3d, 0x4a, 0xbf, 0x10, 0xa4, 0xfa, 0xb4, 0x62, 0xd4, - 0x6e, 0x93, 0xba, 0xf4, 0x8b, 0x8c, 0xbb, 0x9c, 0xd8, 0x22, 0x69, 0x13, 0xbd, 0x4e, 0xf4, 0xda, - 0xae, 0xf4, 0x55, 0x36, 0x94, 0xf5, 0xf6, 0xa6, 0xa9, 0xd6, 0x89, 0x3b, 0xf2, 0xb7, 0x59, 0xcf, - 0xbd, 0x23, 0x77, 0xab, 0x7e, 0x89, 0x21, 0x54, 0x0d, 0x63, 0x55, 0xd5, 0x77, 0x45, 0x1f, 0x2c, - 0xe9, 0x97, 0x99, 0x40, 0xc4, 0x27, 0x3f, 0xd2, 0x5b, 0xd2, 0x48, 0xb3, 0x6e, 0xb9, 0xdc, 0xf9, - 0x15, 0xd6, 0x4d, 0xe7, 0x87, 0x43, 0xa8, 0x2f, 0x45, 0x4c, 0x66, 0xc0, 0x48, 0xff, 0x85, 0xf1, - 0xbe, 0x64, 0xd8, 0xc5, 0x56, 0x9b, 0x6f, 0xb9, 0xa4, 0x2e, 0xfd, 0x59, 0x50, 0x68, 0xd9, 0x35, - 0x9e, 0xc1, 0x2f, 0xfd, 0x57, 0x36, 0x7e, 0xe1, 0x83, 0xad, 0xeb, 0xea, 0xb6, 0xaa, 0x35, 0x19, - 0xc3, 0xfe, 0x9c, 0xa1, 0x0b, 0x30, 0x47, 0xd2, 0xdf, 0x0d, 0xe2, 0x13, 0x70, 0x94, 0xae, 0x38, - 0xe2, 0xa6, 0x12, 0xe5, 0xb2, 0x23, 0x06, 0xe9, 0xbf, 0x05, 0x71, 0x12, 0x0e, 0xdf, 0x50, 0x4d, - 0x4d, 0xd5, 0xed, 0x6c, 0xd3, 0x32, 0x4a, 0x64, 0xd3, 0xb0, 0x35, 0xd5, 0x26, 0x96, 0xf4, 0xdf, - 0x45, 0x3f, 0xd9, 0x0b, 0x58, 0x35, 0x8d, 0xe8, 0x76, 0x85, 0x5b, 0x71, 0xd2, 0xff, 0x60, 0x7a, - 0xbe, 0x62, 0x18, 0xed, 0x45, 0xc2, 0xe3, 0xd5, 0xd2, 0xff, 0x0c, 0x8a, 0xc9, 0x55, 0xd8, 0xb1, - 0x29, 0x47, 0xeb, 0xd2, 0xff, 0x0a, 0xe2, 0x34, 0x9c, 0x14, 0x16, 0xfd, 0x3e, 0xba, 0xf9, 0x61, - 0x30, 0xf3, 0x47, 0x08, 0x0e, 0xd3, 0x55, 0xcc, 0xb1, 0xf9, 0xe8, 0xa2, 0xc5, 0x7f, 0xb6, 0xee, - 0x29, 0x48, 0xb1, 0x85, 0xd2, 0xb7, 0xee, 0x29, 0xf9, 0x95, 0x6c, 0xa5, 0xa2, 0xac, 0x97, 0x5e, - 0x2a, 0xad, 0xdd, 0x2c, 0x49, 0x23, 0x38, 0x05, 0x27, 0xf6, 0x85, 0x9a, 0xbb, 0x75, 0x4b, 0x42, - 0x43, 0x21, 0xe6, 0x6f, 0xdd, 0x92, 0x02, 0x43, 0x21, 0x2e, 0xdc, 0xba, 0x25, 0x05, 0x87, 0x42, - 0x2c, 0xdc, 0xba, 0x25, 0x85, 0x86, 0x42, 0x5c, 0xbc, 0x75, 0x4b, 0x0a, 0x67, 0xee, 0x23, 0x88, - 0xb3, 0xf5, 0x9a, 0x27, 0x2b, 0x5a, 0xf8, 0x38, 0x4c, 0x32, 0x94, 0x4a, 0x21, 0x4f, 0xf7, 0x5f, - 0xa5, 0xb4, 0x56, 0x2a, 0x48, 0x23, 0xfc, 0xe7, 0xb0, 0xe8, 0x16, 0xe6, 0xab, 0xf4, 0x6c, 0x63, - 0x74, 0x93, 0x3a, 0x01, 0xd3, 0xbe, 0x6a, 0xb9, 0xf0, 0xb2, 0xbb, 0xd9, 0x04, 0xf6, 0xd6, 0x56, - 0x7a, 0x5b, 0x11, 0xdb, 0xa5, 0xf6, 0xe0, 0x8a, 0xdd, 0x68, 0x4f, 0x55, 0x45, 0x6c, 0x54, 0x91, - 0x4c, 0x0e, 0x26, 0xf9, 0x9a, 0x5d, 0xee, 0x6c, 0x34, 0x35, 0x6b, 0x8b, 0x59, 0x68, 0xc7, 0xe0, - 0x70, 0xa5, 0x9a, 0xad, 0xae, 0x57, 0x94, 0xc5, 0x35, 0xa5, 0xb4, 0x56, 0x55, 0xca, 0xeb, 0xb9, - 0x95, 0x62, 0x65, 0x59, 0x1a, 0xc1, 0x18, 0x12, 0xa2, 0xca, 0x29, 0x43, 0x99, 0x2b, 0x54, 0x6f, - 0xfb, 0x7f, 0xda, 0x86, 0xda, 0x02, 0xce, 0x77, 0x89, 0x2e, 0x41, 0x0c, 0xd7, 0x29, 0xc9, 0xb1, - 0xd7, 0xad, 0x24, 0x94, 0x79, 0x0a, 0xc6, 0xd7, 0xe5, 0x95, 0x0a, 0x35, 0x83, 0xb8, 0x0b, 0x4a, - 0xcd, 0x9d, 0x6a, 0xb5, 0x2c, 0x8d, 0x50, 0x53, 0x85, 0xfe, 0x55, 0x91, 0x50, 0x66, 0x0d, 0x62, - 0xd5, 0xa6, 0xe5, 0x64, 0x92, 0xd2, 0xbd, 0xaf, 0xba, 0x52, 0x51, 0xb2, 0xeb, 0xd5, 0x35, 0x69, - 0x84, 0x9a, 0x3a, 0xd5, 0x95, 0xca, 0xf6, 0x9c, 0x72, 0x5e, 0x42, 0xbd, 0x8f, 0x39, 0x29, 0xd0, - 0xfb, 0x98, 0x97, 0x82, 0xbd, 0x8f, 0x0b, 0x52, 0x28, 0xa3, 0x41, 0xec, 0x56, 0xa3, 0x56, 0x2b, - 0xf0, 0xf9, 0x88, 0xc7, 0x61, 0xec, 0xd6, 0x52, 0x3e, 0x2f, 0x64, 0xe5, 0x7e, 0xe6, 0x0b, 0x32, - 0x35, 0x7b, 0x12, 0x00, 0xfc, 0x73, 0x39, 0x5b, 0x2c, 0x49, 0x74, 0xbf, 0x89, 0xb3, 0xef, 0xca, - 0x7a, 0xee, 0x3a, 0xb5, 0xb6, 0x82, 0xb4, 0x43, 0xac, 0x64, 0x5d, 0x2e, 0x4a, 0x21, 0xf7, 0x6b, - 0xb1, 0x54, 0x91, 0xc2, 0x99, 0x25, 0x18, 0xf7, 0x3d, 0x02, 0x8a, 0x9f, 0x80, 0x23, 0xc5, 0xd2, - 0x8d, 0xec, 0x4a, 0x71, 0x51, 0x59, 0xce, 0x56, 0x96, 0x95, 0xec, 0xca, 0xb5, 0x35, 0xb9, 0x58, - 0x5d, 0x5e, 0x95, 0x46, 0x92, 0xc1, 0x7b, 0x77, 0x11, 0x35, 0xea, 0x2a, 0xcb, 0xd9, 0xf9, 0x8b, - 0x97, 0xb8, 0xf5, 0x57, 0x59, 0xce, 0xce, 0x49, 0x81, 0xcc, 0x19, 0x98, 0x90, 0x8d, 0x8e, 0xcd, - 0x1e, 0xc1, 0xd6, 0x28, 0xa9, 0x5d, 0x3a, 0xa4, 0xc5, 0xc2, 0x52, 0x76, 0x7d, 0xa5, 0x2a, 0x8d, - 0x30, 0xc6, 0x15, 0xaf, 0x51, 0x79, 0x7c, 0x06, 0x26, 0xfa, 0x1e, 0x9d, 0xa2, 0x90, 0xcb, 0xeb, - 0xa5, 0x45, 0xb9, 0xb0, 0x28, 0x8d, 0xd0, 0xfe, 0x57, 0x0b, 0x25, 0xa5, 0xba, 0xbc, 0xb6, 0x5e, - 0xc9, 0x96, 0x16, 0x39, 0xd7, 0x56, 0x8b, 0x2b, 0x2b, 0xc5, 0xb5, 0x92, 0x14, 0xc8, 0xbc, 0x08, - 0xe3, 0x8b, 0xce, 0xcf, 0x68, 0x88, 0x9f, 0xdf, 0x9a, 0x74, 0x3a, 0xbc, 0x58, 0xac, 0xe4, 0xd7, - 0x6e, 0x14, 0xe4, 0x57, 0x9c, 0xbe, 0x8e, 0x42, 0xf0, 0xa5, 0xcb, 0x54, 0x75, 0x01, 0x22, 0xf9, - 0xb5, 0x52, 0x65, 0x7d, 0x45, 0x0a, 0x64, 0x2a, 0x10, 0xbb, 0xa1, 0xb5, 0x6f, 0x98, 0x66, 0x5b, - 0xa8, 0x93, 0x74, 0xa3, 0x58, 0x56, 0x6e, 0xc8, 0x72, 0x59, 0x11, 0x84, 0x1c, 0xf4, 0x29, 0x98, - 0x70, 0xab, 0x0a, 0xa5, 0x6c, 0x6e, 0xa5, 0x20, 0x51, 0xbb, 0xa0, 0x07, 0xbf, 0x58, 0xac, 0xb0, - 0xd2, 0x40, 0xe6, 0x47, 0xe0, 0x50, 0x45, 0xb3, 0x49, 0xd5, 0x60, 0xff, 0xef, 0xe8, 0x3a, 0x69, - 0x32, 0xea, 0x4f, 0x41, 0xaa, 0x52, 0xac, 0x16, 0x94, 0xea, 0x9a, 0xc2, 0xff, 0x5d, 0x2f, 0x95, - 0x0a, 0x2b, 0x4a, 0xb1, 0x5c, 0x29, 0xe4, 0x95, 0x35, 0x59, 0xa9, 0x54, 0x56, 0xa4, 0x11, 0x3a, - 0xf1, 0xf6, 0x85, 0x92, 0x10, 0x3e, 0x0e, 0x47, 0x07, 0x55, 0x53, 0xdc, 0x40, 0x3a, 0x14, 0x0d, - 0x4a, 0xc1, 0x4c, 0x06, 0xc6, 0x2a, 0x86, 0x69, 0xf3, 0xb8, 0x6c, 0x02, 0x60, 0xb1, 0x50, 0xc9, - 0x17, 0x4a, 0x8b, 0xc5, 0xd2, 0x35, 0xae, 0x31, 0x59, 0xf7, 0x13, 0x65, 0x8a, 0x70, 0x94, 0xf7, - 0xb0, 0xa0, 0xd7, 0xd4, 0xb6, 0x25, 0x7e, 0x01, 0x80, 0x75, 0x77, 0x1c, 0xc6, 0x78, 0xd7, 0xca, - 0x2f, 0x15, 0x39, 0xa2, 0xf8, 0xac, 0xbc, 0x24, 0x31, 0x76, 0xb2, 0x36, 0x99, 0xf9, 0x2f, 0x17, - 0xa4, 0x60, 0xe6, 0x39, 0x80, 0x2a, 0xfb, 0x55, 0x50, 0x47, 0x8e, 0xbd, 0x45, 0x32, 0x0e, 0xd1, - 0x25, 0xb9, 0x50, 0x58, 0x2d, 0xae, 0xaf, 0x72, 0x2d, 0x2d, 0x94, 0xaa, 0x05, 0xb9, 0x2c, 0x17, - 0x2b, 0x94, 0x5f, 0xbf, 0x8a, 0x40, 0xaa, 0xaa, 0x3b, 0x85, 0x1d, 0xd2, 0xea, 0xbd, 0xd3, 0x37, - 0x01, 0xb1, 0x6a, 0xf6, 0x96, 0x67, 0xa1, 0x15, 0x05, 0x72, 0xe1, 0xda, 0xfa, 0x4a, 0x56, 0xe6, - 0x76, 0x32, 0x2d, 0x28, 0xdc, 0x2a, 0xac, 0x96, 0xab, 0xca, 0x7a, 0xe9, 0x46, 0x41, 0x2e, 0x2e, - 0x15, 0x0b, 0xd4, 0xff, 0x38, 0x0a, 0x53, 0x9e, 0x2a, 0xb7, 0x82, 0xee, 0x08, 0xa7, 0xf6, 0x54, - 0xe4, 0xb3, 0x6c, 0xa9, 0x59, 0xca, 0x16, 0x57, 0x0a, 0x8b, 0x52, 0x08, 0x3f, 0x09, 0x4f, 0xec, - 0x07, 0x53, 0x16, 0x7c, 0x0b, 0x67, 0x3e, 0x07, 0xd1, 0x72, 0x53, 0xd5, 0x9d, 0x85, 0x80, 0x8e, - 0x8e, 0xbb, 0x21, 0xc5, 0xd2, 0x62, 0xf1, 0x46, 0x71, 0x71, 0x3d, 0xbb, 0xc2, 0xe7, 0x44, 0xb5, - 0x90, 0x5d, 0xe5, 0x33, 0x71, 0x4d, 0xbe, 0x96, 0x2d, 0x15, 0x3f, 0xcb, 0x28, 0x09, 0x5b, 0x7d, - 0x25, 0x5b, 0x62, 0xa6, 0xbd, 0xb2, 0x5e, 0xaa, 0x94, 0x0b, 0x79, 0xde, 0xcb, 0x50, 0x26, 0x05, - 0xe3, 0xfc, 0xa2, 0x12, 0x8b, 0x7d, 0xad, 0xb5, 0x71, 0x04, 0x02, 0x85, 0x97, 0xa5, 0x11, 0xca, - 0xeb, 0x52, 0xe1, 0x65, 0x09, 0x65, 0x1a, 0x90, 0xf0, 0xdf, 0x19, 0xc2, 0xd3, 0x70, 0xa8, 0x2a, - 0x17, 0x4a, 0x8b, 0x4a, 0xa5, 0x50, 0xaa, 0x16, 0xa9, 0x9f, 0xe2, 0xac, 0x11, 0x27, 0x60, 0xba, - 0xbf, 0xa6, 0xbc, 0x56, 0x29, 0x56, 0x8b, 0x37, 0x0a, 0x7c, 0x21, 0xdf, 0x83, 0x57, 0xb8, 0x96, - 0x65, 0xb5, 0x81, 0xcc, 0x9b, 0x08, 0xc6, 0x7d, 0x97, 0x63, 0xa8, 0xca, 0xcb, 0x6b, 0xeb, 0xd5, - 0x82, 0x92, 0xad, 0x56, 0x65, 0xa5, 0xb4, 0xa6, 0xac, 0xd1, 0x15, 0x70, 0x1a, 0x0e, 0x79, 0x4a, - 0xb3, 0x8b, 0x37, 0x0a, 0x72, 0x95, 0x0a, 0x97, 0xe9, 0xab, 0xa7, 0xa6, 0x58, 0xaa, 0x54, 0xb3, - 0x2b, 0x2b, 0xca, 0x32, 0xf5, 0xca, 0x02, 0xf8, 0x34, 0x9c, 0x1c, 0x50, 0xb9, 0xb4, 0x26, 0xdf, - 0xcc, 0xca, 0x8c, 0xd1, 0x8c, 0x4d, 0x1e, 0x90, 0xd5, 0x82, 0x7c, 0xad, 0xa0, 0xac, 0x95, 0x56, - 0x5e, 0x91, 0x42, 0x99, 0xaf, 0x22, 0x88, 0x7b, 0x2f, 0x2a, 0xd1, 0xb1, 0x94, 0x0a, 0xb7, 0xaa, - 0xca, 0xf2, 0x5a, 0x59, 0x11, 0xcb, 0x8d, 0x72, 0x2d, 0x5b, 0x2d, 0xdc, 0xcc, 0x52, 0x1f, 0xf1, - 0x38, 0x1c, 0x75, 0x6b, 0xd7, 0xd9, 0x06, 0x59, 0x5a, 0x2a, 0x5e, 0x5b, 0xa7, 0x2b, 0x0d, 0xa2, - 0x9e, 0x95, 0x5b, 0x59, 0x2a, 0x54, 0x6f, 0xae, 0xc9, 0x2f, 0x29, 0x45, 0xaa, 0xa4, 0x4b, 0xd4, - 0x1b, 0x0d, 0xe0, 0x24, 0x48, 0x3d, 0xd2, 0xc5, 0x4a, 0x3e, 0x2b, 0x2f, 0x4a, 0x41, 0xb1, 0x55, - 0x9e, 0xf6, 0x10, 0xae, 0x94, 0xb2, 0x55, 0x3a, 0x37, 0xd9, 0x9e, 0x93, 0x97, 0x42, 0x1c, 0x24, - 0x73, 0x13, 0x26, 0xb3, 0xf5, 0xba, 0xa1, 0x0b, 0xab, 0x89, 0x6e, 0x64, 0x6c, 0x8a, 0x64, 0x2b, - 0x8e, 0x94, 0x12, 0x00, 0xd9, 0x8a, 0xab, 0x60, 0xd4, 0x9f, 0x19, 0xcf, 0x56, 0xe8, 0xc2, 0x5d, - 0xc9, 0xcb, 0xc5, 0x1c, 0xd3, 0xea, 0x38, 0x44, 0xb3, 0x15, 0xa5, 0x20, 0xcb, 0x6b, 0xb2, 0x14, - 0x4c, 0x87, 0xa2, 0x21, 0x29, 0x94, 0xb9, 0x0b, 0x49, 0x2f, 0x61, 0x76, 0x12, 0x54, 0xe1, 0x71, - 0x8f, 0x0d, 0x36, 0x89, 0x38, 0x11, 0xa7, 0x15, 0x0c, 0x09, 0x51, 0x90, 0x5d, 0x59, 0x59, 0xbb, - 0xc9, 0x86, 0xee, 0xb6, 0xa4, 0x2c, 0x16, 0x4a, 0x7c, 0xfe, 0x1c, 0x86, 0x49, 0xb7, 0xa8, 0xec, - 0x14, 0x53, 0x0b, 0x2b, 0x2e, 0x8a, 0x0b, 0xb7, 0x8a, 0x95, 0xaa, 0x14, 0xca, 0xfc, 0x08, 0x1c, - 0xf7, 0x8d, 0xcb, 0x69, 0x59, 0x04, 0xab, 0x5c, 0x04, 0x3e, 0x08, 0xb7, 0x03, 0xeb, 0xa5, 0x5e, - 0x19, 0xa2, 0xca, 0xe3, 0x85, 0x72, 0x99, 0x10, 0xc0, 0x4f, 0xc0, 0xf1, 0x6c, 0x45, 0xc9, 0x67, - 0x4b, 0x79, 0xba, 0xc4, 0xed, 0x01, 0x08, 0x66, 0x56, 0x00, 0x7b, 0xdb, 0xe7, 0xa9, 0x97, 0x82, - 0x97, 0x59, 0x77, 0x97, 0xe4, 0x23, 0xcc, 0xe6, 0x3d, 0x83, 0x9e, 0x82, 0x09, 0x5e, 0x54, 0xce, - 0x65, 0xf3, 0x74, 0x84, 0xaf, 0x48, 0x81, 0x8c, 0x0e, 0x13, 0x55, 0xad, 0x29, 0xa8, 0x70, 0x19, - 0xd1, 0x1d, 0xa8, 0xb8, 0x52, 0xf0, 0x10, 0x9b, 0x82, 0x09, 0xa7, 0xa4, 0x47, 0x8e, 0xce, 0x3e, - 0x51, 0xb8, 0x5e, 0xbe, 0x26, 0x67, 0x17, 0x0b, 0x0a, 0x9d, 0xdc, 0x4c, 0x71, 0x8e, 0xf4, 0x08, - 0x54, 0xbd, 0x02, 0x0d, 0x66, 0x4e, 0x41, 0xb4, 0xb2, 0xab, 0xd7, 0x56, 0xa9, 0xeb, 0x4c, 0xb7, - 0xcf, 0xc2, 0xca, 0x12, 0xdf, 0x1e, 0x2b, 0xf9, 0xe2, 0xaa, 0x04, 0x19, 0x13, 0x12, 0xd7, 0xd5, - 0x6d, 0xb5, 0xc2, 0x82, 0x58, 0x0c, 0xea, 0x28, 0x4c, 0x65, 0x2b, 0xaf, 0x94, 0xf2, 0xca, 0x75, - 0xaa, 0x38, 0x4a, 0x3e, 0x9b, 0x5f, 0xe6, 0xcb, 0xfa, 0x21, 0x90, 0xdc, 0x0a, 0xa7, 0x14, 0x51, - 0xa7, 0x7f, 0x00, 0x74, 0x80, 0x8e, 0xa1, 0x1f, 0x98, 0x2b, 0xf3, 0x48, 0x26, 0x0b, 0xb0, 0x44, - 0x54, 0xbb, 0x63, 0x92, 0xaa, 0xba, 0x49, 0xfb, 0x22, 0x86, 0xcd, 0x96, 0x9e, 0x9b, 0x7c, 0x07, - 0x2e, 0xcb, 0x85, 0x1b, 0xc5, 0xc2, 0x4d, 0x4e, 0xa8, 0x2c, 0x17, 0x6f, 0x64, 0xab, 0x05, 0xc5, - 0x29, 0x0c, 0x66, 0x6e, 0xc2, 0x21, 0xaf, 0x50, 0xaa, 0x1a, 0x71, 0xb7, 0xf6, 0xd2, 0x9a, 0x52, - 0x2d, 0x16, 0x64, 0x6e, 0x33, 0xe5, 0xb2, 0x95, 0x22, 0xdd, 0xd2, 0xe2, 0x10, 0xad, 0x54, 0xb3, - 0xa5, 0x45, 0x3a, 0xa7, 0xb8, 0x96, 0x2f, 0xde, 0xa0, 0x22, 0x5f, 0xe4, 0xb6, 0x50, 0x59, 0xe6, - 0x1b, 0x47, 0x28, 0x73, 0x1e, 0x12, 0xf9, 0xa6, 0xd1, 0xa9, 0xaf, 0x68, 0xfa, 0x6d, 0x2e, 0x9e, - 0x08, 0x04, 0xd6, 0xcb, 0x9c, 0x67, 0x8b, 0x74, 0x9b, 0x60, 0xc4, 0x16, 0x0b, 0x4c, 0x02, 0x8b, - 0x52, 0x20, 0xf7, 0xff, 0xa3, 0x87, 0x7f, 0x70, 0x6a, 0xe4, 0xbd, 0x3f, 0x38, 0x35, 0xf2, 0x9d, - 0x3f, 0x38, 0x85, 0xee, 0x3d, 0x3a, 0x85, 0xbe, 0xfa, 0xe8, 0x14, 0xfa, 0xfa, 0xa3, 0x53, 0xe8, - 0xe1, 0xa3, 0x53, 0xe8, 0xbd, 0x47, 0xa7, 0xd0, 0xb7, 0x1e, 0x9d, 0x42, 0xdf, 0x7e, 0x74, 0x6a, - 0xe4, 0x3b, 0x8f, 0x4e, 0xa1, 0x2f, 0xbe, 0x7f, 0x6a, 0xe4, 0x9d, 0xf7, 0x4f, 0xa1, 0x87, 0xef, - 0x9f, 0x1a, 0x79, 0xef, 0xfd, 0x53, 0x23, 0x9f, 0xcd, 0x6f, 0x1a, 0xed, 0xdb, 0x9b, 0xb3, 0xce, - 0xfb, 0xa3, 0xb3, 0x1d, 0xeb, 0x1c, 0xfb, 0xa3, 0x61, 0x98, 0xad, 0xb3, 0x4e, 0x2c, 0xf9, 0xac, - 0x53, 0x7d, 0xae, 0xbd, 0xb1, 0x69, 0x9c, 0x23, 0x3b, 0x36, 0x8f, 0x95, 0x9d, 0xe3, 0xff, 0x6c, - 0x44, 0x58, 0xdc, 0xfc, 0xc2, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0xdc, 0xfd, 0xf4, 0x29, 0x17, - 0x91, 0x00, 0x00, + 0xbf, 0x74, 0x38, 0x8a, 0x12, 0x29, 0x4a, 0xab, 0xd5, 0xdd, 0x69, 0x17, 0x00, 0x41, 0x11, 0x12, + 0x09, 0x62, 0x07, 0xa0, 0xa4, 0xbd, 0x73, 0x79, 0x76, 0x08, 0x34, 0xc8, 0xb1, 0x80, 0x19, 0xec, + 0xcc, 0x80, 0x22, 0xfd, 0xfb, 0xc9, 0x3f, 0xfd, 0xee, 0xf7, 0xab, 0xd4, 0x65, 0x1d, 0xdb, 0xe7, + 0xf5, 0x39, 0xbe, 0x6c, 0xe2, 0x78, 0x1d, 0x3b, 0xf6, 0xd5, 0x96, 0x1d, 0x9f, 0xcb, 0x4e, 0x55, + 0x12, 0xc8, 0x95, 0xad, 0x75, 0xe2, 0x3a, 0x2b, 0xce, 0x59, 0x95, 0xaa, 0x54, 0x6d, 0xdd, 0xb9, + 0x52, 0x67, 0x6d, 0x1c, 0x9f, 0x5d, 0xae, 0xca, 0xd5, 0x26, 0x8e, 0x2f, 0x1f, 0x95, 0x4b, 0xf5, + 0xc7, 0x0c, 0x66, 0x40, 0x10, 0xd4, 0xde, 0x9d, 0xcb, 0xa9, 0x8a, 0xf7, 0x8f, 0x15, 0xa7, 0xfb, + 0xbd, 0xd7, 0xdd, 0xef, 0xbd, 0xee, 0x7e, 0xef, 0xf5, 0xeb, 0x06, 0x1c, 0xdb, 0x26, 0xd6, 0xac, + 0x66, 0x9c, 0xb3, 0x6a, 0x5b, 0xa4, 0xa5, 0x9e, 0xb3, 0x77, 0xdb, 0xc4, 0x9a, 0x6d, 0x9b, 0x86, + 0x6d, 0xe0, 0x71, 0x5e, 0x35, 0xcb, 0xab, 0x92, 0x67, 0x37, 0x35, 0x7b, 0xab, 0xb3, 0x31, 0x5b, + 0x33, 0x5a, 0xe7, 0x36, 0x8d, 0x4d, 0xe3, 0x1c, 0x83, 0xda, 0xe8, 0x34, 0xd8, 0x17, 0xfb, 0x60, + 0x7f, 0x71, 0xec, 0xe4, 0x53, 0x9b, 0x86, 0xb1, 0xd9, 0x24, 0x3d, 0x28, 0x5b, 0x6b, 0x11, 0xcb, + 0x56, 0x5b, 0x6d, 0x01, 0x90, 0xf4, 0xb7, 0x4c, 0x4c, 0xd3, 0x30, 0x45, 0xd3, 0xc9, 0xa3, 0xfe, + 0x3a, 0x9d, 0xd8, 0xa2, 0xe2, 0xb8, 0xbf, 0xc2, 0x68, 0xdb, 0x9a, 0xa1, 0x3b, 0x58, 0x27, 0xfc, + 0x95, 0xdb, 0x6a, 0x53, 0xab, 0xab, 0x36, 0x11, 0xb5, 0xa9, 0xbe, 0x5a, 0x8d, 0xdc, 0x55, 0x7c, + 0xf8, 0xe9, 0x51, 0x08, 0x17, 0x5a, 0x6d, 0x7b, 0x37, 0xfd, 0x36, 0x82, 0xf1, 0xb5, 0x8d, 0x1f, + 0x22, 0x35, 0x5b, 0x26, 0x8d, 0xea, 0x6e, 0x9b, 0xe0, 0xa3, 0x10, 0xba, 0xa3, 0xe9, 0xf5, 0x69, + 0x94, 0x42, 0x67, 0xc6, 0x72, 0xc1, 0x47, 0xf7, 0x90, 0xcc, 0x0a, 0xf0, 0x61, 0x08, 0x76, 0xb4, + 0xfa, 0x74, 0xa0, 0x57, 0x4e, 0xbf, 0xf1, 0x71, 0x88, 0xd8, 0x44, 0x57, 0x75, 0x7b, 0x3a, 0xd8, + 0xab, 0x11, 0x45, 0xf8, 0x34, 0x8c, 0xe9, 0x6a, 0x8b, 0x58, 0x6d, 0xb5, 0x46, 0xa6, 0x43, 0xbd, + 0xfa, 0x5e, 0x29, 0x6d, 0x8f, 0x7e, 0x4c, 0x87, 0x3d, 0xed, 0xd1, 0x82, 0x2b, 0x91, 0x87, 0x5d, + 0x14, 0x90, 0x50, 0xfa, 0x55, 0x98, 0x5c, 0x51, 0x37, 0x48, 0xb3, 0x42, 0x9a, 0xa4, 0x66, 0x1b, + 0x26, 0xeb, 0xe5, 0x22, 0xc4, 0xc8, 0x4e, 0xdb, 0x24, 0x96, 0x45, 0x47, 0x35, 0x8d, 0x52, 0xc1, + 0x33, 0x63, 0xb9, 0xf4, 0xb7, 0xbb, 0x28, 0xf0, 0xcf, 0xfe, 0xe4, 0xdd, 0xe0, 0xc4, 0x9b, 0x28, + 0x9e, 0x06, 0x33, 0x2a, 0xa1, 0xe9, 0xfb, 0xa9, 0x6f, 0x04, 0x10, 0x2d, 0x0b, 0xbf, 0x49, 0xa9, + 0xc9, 0x5e, 0xb4, 0xf4, 0x0a, 0x48, 0x8c, 0xf4, 0xaa, 0x6a, 0xd7, 0xb6, 0x08, 0xa7, 0x7c, 0x19, + 0x42, 0x77, 0xc8, 0xae, 0x43, 0xf2, 0x19, 0x8a, 0x1a, 0x7b, 0x13, 0x45, 0xd3, 0x11, 0x33, 0x24, + 0xa1, 0xe9, 0x97, 0x5d, 0x52, 0x92, 0xf3, 0xd7, 0x34, 0x65, 0x10, 0xd9, 0xb5, 0xd2, 0xbf, 0x12, + 0x84, 0xf1, 0xbc, 0xa1, 0xd7, 0x35, 0xca, 0x69, 0x46, 0x6b, 0x01, 0x42, 0x54, 0xcd, 0x04, 0x2f, + 0x53, 0x14, 0xe3, 0xb8, 0x79, 0x4c, 0x86, 0x9b, 0x5c, 0x5e, 0x9a, 0xa1, 0xcb, 0xb1, 0xb5, 0x36, + 0x31, 0xd9, 0x9f, 0x6a, 0x53, 0x66, 0xd0, 0xb8, 0x01, 0x11, 0xcb, 0x56, 0xed, 0x8e, 0x25, 0x78, + 0x5d, 0xa2, 0x78, 0x45, 0xf3, 0x9a, 0x3c, 0x5a, 0xe9, 0xd4, 0x6a, 0xc4, 0xb2, 0xe4, 0xc8, 0x92, + 0xaa, 0x35, 0x49, 0x5d, 0x86, 0xa2, 0x5e, 0x33, 0x5a, 0xed, 0x26, 0xb1, 0x89, 0x3c, 0x56, 0xd4, + 0x2d, 0x5b, 0x6d, 0xd2, 0xe2, 0xd0, 0xa2, 0x71, 0x57, 0x97, 0xa3, 0x8b, 0x9a, 0xa5, 0x6e, 0xd0, + 0xef, 0xf1, 0x92, 0x61, 0x67, 0xdb, 0xed, 0xa6, 0x56, 0xa3, 0xdf, 0xb2, 0xa0, 0x8e, 0x8f, 0x40, + 0xc4, 0x24, 0xaa, 0x65, 0xe8, 0x5c, 0x72, 0xb2, 0xf8, 0xc2, 0x8b, 0x20, 0x35, 0x55, 0xcb, 0x56, + 0x3a, 0x6d, 0xaa, 0x53, 0x0a, 0xd5, 0x66, 0x26, 0x9d, 0xd8, 0x7c, 0x72, 0x96, 0xab, 0xfa, 0xac, + 0xa3, 0xea, 0xb3, 0x55, 0x47, 0xd5, 0xe5, 0x04, 0xc5, 0x59, 0x67, 0x28, 0xb4, 0x10, 0x27, 0x21, + 0xba, 0x65, 0x58, 0x36, 0x93, 0x6d, 0x84, 0xd1, 0x77, 0xbf, 0xf1, 0x69, 0x88, 0x5b, 0xc4, 0xdc, + 0xd6, 0x6a, 0x44, 0x61, 0xf5, 0xa3, 0xac, 0x3e, 0x26, 0xca, 0x4a, 0x54, 0xfa, 0xaf, 0x3d, 0xec, + 0xa2, 0x1f, 0x80, 0x04, 0x84, 0x28, 0x23, 0x93, 0x11, 0xce, 0x48, 0xc0, 0x10, 0xa9, 0xb0, 0xce, + 0x27, 0xa3, 0x0e, 0x93, 0x68, 0x99, 0xcc, 0x3a, 0x4e, 0xcb, 0xf8, 0x10, 0x20, 0x0d, 0xf1, 0x15, + 0xd5, 0xb2, 0x53, 0xbc, 0x3f, 0xf5, 0x24, 0xde, 0x3b, 0xa4, 0x74, 0x19, 0x80, 0xd3, 0x62, 0xa2, + 0x3a, 0xe2, 0x32, 0x1d, 0x71, 0x66, 0x1c, 0xc0, 0x24, 0x0c, 0xa1, 0x9a, 0x51, 0xe7, 0x4a, 0x1d, + 0x96, 0xd9, 0xdf, 0xe9, 0x67, 0x61, 0xa2, 0xa8, 0x6b, 0xb6, 0xa6, 0x36, 0xb5, 0x1f, 0x16, 0xda, + 0x84, 0x85, 0x76, 0x73, 0xa2, 0xec, 0xef, 0xf4, 0xff, 0x03, 0x92, 0x07, 0xcc, 0x12, 0x5a, 0x37, + 0xda, 0x26, 0x7a, 0x5d, 0xd3, 0x37, 0x99, 0xe2, 0xc5, 0xe6, 0x4f, 0xcd, 0xfa, 0xd6, 0xa4, 0xd9, + 0x3e, 0xc2, 0xb2, 0x03, 0x8e, 0xe7, 0x68, 0x07, 0xad, 0x4e, 0xd3, 0x66, 0xda, 0x12, 0x9b, 0x3f, + 0xd6, 0x87, 0xd8, 0x1b, 0xa3, 0x2c, 0x00, 0xd3, 0x7f, 0x14, 0x80, 0x04, 0x2f, 0x5e, 0x25, 0xb6, + 0xca, 0xda, 0x17, 0x93, 0x1b, 0xf5, 0x4d, 0xee, 0x33, 0x30, 0x5e, 0x33, 0x89, 0x6a, 0x1b, 0xa6, + 0x52, 0x6b, 0xaa, 0x96, 0xe5, 0x9d, 0xfd, 0x71, 0x51, 0x93, 0xa7, 0x15, 0x38, 0x0d, 0xe0, 0x40, + 0x6a, 0x75, 0xef, 0x52, 0x30, 0x26, 0x8a, 0x8b, 0x75, 0x9c, 0x82, 0x31, 0xce, 0x55, 0x0a, 0xe2, + 0x59, 0x0d, 0xa2, 0xbc, 0xb4, 0x58, 0xc7, 0x25, 0xc0, 0x0c, 0x5c, 0x33, 0x74, 0xc5, 0x5d, 0x45, + 0x0f, 0x56, 0x3e, 0x4e, 0x66, 0xd2, 0x41, 0x75, 0xcb, 0xf1, 0x15, 0x18, 0x6d, 0x77, 0x36, 0x9a, + 0x9a, 0xb5, 0xc5, 0x74, 0x30, 0x31, 0x9f, 0x1a, 0xc8, 0x9d, 0x32, 0x87, 0x11, 0x8c, 0xe5, 0x1f, + 0xf8, 0x04, 0x8c, 0x6e, 0xdb, 0x66, 0x9b, 0xf6, 0x75, 0xd4, 0xb3, 0xb2, 0xd1, 0xb2, 0x62, 0x9d, + 0x8e, 0x97, 0xd5, 0xd2, 0x39, 0x47, 0xa6, 0xa3, 0x29, 0x74, 0x26, 0x2a, 0xc6, 0x4b, 0x8b, 0x2b, + 0xb4, 0x34, 0xfd, 0x85, 0x10, 0x24, 0xf8, 0xe2, 0xea, 0xf2, 0xf9, 0xa8, 0x57, 0x1f, 0x3c, 0xab, + 0x1d, 0x3e, 0xe1, 0x5d, 0x29, 0x19, 0x97, 0xbd, 0x8b, 0xa4, 0x10, 0x4f, 0xb0, 0x4f, 0x3c, 0x25, + 0x88, 0x34, 0xe9, 0xfa, 0x65, 0x4d, 0x87, 0x98, 0xd2, 0x7c, 0xac, 0x6f, 0x74, 0xfe, 0xc6, 0x67, + 0xd9, 0x5a, 0x67, 0x15, 0x74, 0xdb, 0xdc, 0xcd, 0xc5, 0x1e, 0x7f, 0xe3, 0x5f, 0x06, 0x23, 0x6f, + 0x3c, 0x40, 0x81, 0xe8, 0x88, 0x2c, 0xa8, 0xe0, 0xb7, 0x11, 0xc4, 0x54, 0x5d, 0x37, 0x6c, 0xc6, + 0x46, 0x6b, 0x3a, 0xcc, 0xa8, 0xce, 0x0e, 0xa7, 0x9a, 0xed, 0x21, 0x70, 0xd2, 0xa5, 0x47, 0x5d, + 0xc4, 0x96, 0xdc, 0xd8, 0x5b, 0xfe, 0x75, 0x33, 0xfe, 0x16, 0x1a, 0xcb, 0x8c, 0x9a, 0x61, 0xba, + 0x2c, 0x47, 0x69, 0xfb, 0xf0, 0xc6, 0x03, 0x14, 0xc1, 0xa1, 0xaf, 0x74, 0xd1, 0x48, 0xaf, 0x3b, + 0xc8, 0xad, 0x49, 0xd2, 0x9a, 0xa0, 0xec, 0xed, 0x12, 0x9e, 0x81, 0x58, 0x9d, 0x58, 0x35, 0x53, + 0x63, 0xfb, 0x19, 0x5f, 0x59, 0x72, 0xc0, 0xd6, 0x62, 0x33, 0x78, 0xe6, 0xcb, 0x63, 0xb2, 0xb7, + 0x1a, 0x4f, 0xc3, 0x68, 0x9d, 0xaf, 0x82, 0x4c, 0x86, 0x51, 0xd9, 0xf9, 0x4c, 0xbe, 0x08, 0x31, + 0x0f, 0x3b, 0xb0, 0x04, 0xc1, 0x3b, 0x64, 0x57, 0x4c, 0x53, 0xfa, 0x27, 0x3e, 0x04, 0xe1, 0x6d, + 0xb5, 0xd9, 0x71, 0x84, 0xc1, 0x3f, 0xae, 0x04, 0x2e, 0xa3, 0xe4, 0x55, 0x90, 0xfa, 0xc7, 0xfc, + 0x51, 0xf0, 0xd3, 0x1b, 0x10, 0x5f, 0xd1, 0xac, 0x9e, 0x4e, 0x9c, 0x03, 0xc9, 0x24, 0x96, 0xd1, + 0x31, 0x6b, 0x44, 0xd9, 0x26, 0x26, 0xdd, 0x9a, 0x84, 0x7e, 0x84, 0xbe, 0xd9, 0x45, 0x48, 0x9e, + 0x70, 0x6a, 0x6f, 0xf2, 0x4a, 0xb6, 0xab, 0x92, 0x1d, 0x5b, 0x69, 0xab, 0x9b, 0x82, 0xbc, 0x80, + 0x8c, 0xd2, 0xe2, 0xb2, 0xba, 0xc9, 0x54, 0x6f, 0x92, 0xcb, 0xe9, 0x1a, 0xe9, 0xb5, 0x34, 0x60, + 0x35, 0x3a, 0x40, 0xf1, 0x5e, 0xe9, 0xd3, 0xb0, 0x99, 0x81, 0xba, 0xe0, 0x69, 0xe3, 0x60, 0x25, + 0xfb, 0x85, 0x81, 0x4a, 0x36, 0x77, 0x20, 0xe1, 0xbf, 0xd6, 0xb3, 0x8f, 0x86, 0x7f, 0x65, 0xf2, + 0xe1, 0xd5, 0xbe, 0xe5, 0x27, 0xfd, 0xb3, 0x21, 0x38, 0xc4, 0x8b, 0xf2, 0x74, 0xad, 0x24, 0xdf, + 0x83, 0x66, 0x54, 0xfb, 0x34, 0xe3, 0xdc, 0x40, 0x01, 0xfa, 0x9b, 0x39, 0x58, 0x39, 0x7e, 0x69, + 0xa0, 0x72, 0x2c, 0x3c, 0x09, 0xed, 0xbf, 0xd6, 0x8f, 0xef, 0x5d, 0x3f, 0xde, 0x0e, 0xc1, 0x61, + 0xc7, 0x1d, 0x68, 0x37, 0xd5, 0xda, 0xf7, 0xa2, 0x20, 0xeb, 0xae, 0x82, 0x04, 0x99, 0x10, 0xcf, + 0x0f, 0x14, 0x62, 0x5f, 0x3b, 0x07, 0x6b, 0xc8, 0x2f, 0xf7, 0x69, 0x08, 0xd7, 0xbe, 0x8b, 0x4f, + 0x44, 0xfc, 0xaf, 0x54, 0x45, 0xc2, 0x4f, 0xac, 0x22, 0x91, 0xff, 0x9d, 0x55, 0xe4, 0x47, 0x11, + 0x4c, 0xac, 0x12, 0xcb, 0x52, 0x37, 0x7b, 0xca, 0xf1, 0xbc, 0xcf, 0xaa, 0x99, 0xa2, 0x43, 0x0c, + 0x99, 0x01, 0x09, 0x89, 0xb1, 0xbe, 0x1d, 0x70, 0xac, 0x9c, 0x3e, 0x96, 0x04, 0x7c, 0x2c, 0x99, + 0xbe, 0x1f, 0xf0, 0xb3, 0xe4, 0x74, 0x8f, 0x25, 0x41, 0x66, 0x60, 0x8d, 0xbe, 0x7f, 0x0f, 0xb1, + 0x8d, 0xce, 0x29, 0x4f, 0x13, 0x88, 0xdd, 0xd4, 0xc8, 0x5d, 0xc7, 0x79, 0xc5, 0x5e, 0xe7, 0x55, + 0xf8, 0xad, 0x92, 0xc7, 0x6f, 0xe5, 0x66, 0xd3, 0x89, 0x3d, 0x5e, 0xa9, 0x57, 0x6f, 0xb1, 0xd7, + 0x21, 0x15, 0x26, 0x7b, 0x05, 0x62, 0x37, 0x3a, 0x1b, 0x64, 0x58, 0x33, 0xc3, 0x27, 0x83, 0x43, + 0x34, 0xe8, 0x21, 0xfa, 0x9f, 0x46, 0xe1, 0x50, 0x65, 0xd7, 0xb2, 0x49, 0xab, 0xcf, 0x48, 0xdc, + 0xc7, 0x18, 0x1f, 0x6c, 0x1c, 0x07, 0xbf, 0x6b, 0xe3, 0xb8, 0x08, 0xb8, 0x4e, 0x9a, 0xa4, 0x8f, + 0x5e, 0xe8, 0x40, 0x4f, 0x6f, 0xd2, 0xc1, 0xea, 0x91, 0xba, 0x09, 0x47, 0x5a, 0x46, 0x5d, 0x6b, + 0x68, 0xb5, 0xef, 0xd2, 0x76, 0x3f, 0xec, 0x45, 0xef, 0xd1, 0xcd, 0x43, 0x5c, 0xf3, 0xb8, 0x4a, + 0x6c, 0x66, 0xc4, 0xe6, 0x9f, 0xda, 0xdf, 0x37, 0xe2, 0x8e, 0x8e, 0x0f, 0x09, 0x9f, 0x02, 0x68, + 0x68, 0xba, 0x43, 0x62, 0x94, 0xfa, 0xf5, 0xb2, 0xa7, 0xc4, 0x13, 0xc1, 0x88, 0xee, 0x8d, 0x60, + 0xec, 0xf1, 0x80, 0xc6, 0x9e, 0xcc, 0x03, 0x82, 0x81, 0x1e, 0x50, 0x06, 0x12, 0x2e, 0x35, 0xc3, + 0xb8, 0xa3, 0x91, 0xe9, 0x44, 0x0f, 0xce, 0x69, 0x28, 0xcf, 0x6a, 0x28, 0x3d, 0xdb, 0x54, 0x6b, + 0x44, 0xd1, 0xf4, 0x86, 0x31, 0x1d, 0xf3, 0xd0, 0x63, 0xc5, 0x45, 0xbd, 0x61, 0xe0, 0xe7, 0x20, + 0x6e, 0x30, 0xdd, 0x51, 0x34, 0xbd, 0x4e, 0x76, 0xa6, 0xe3, 0x29, 0x74, 0x66, 0x9c, 0x43, 0xc5, + 0x78, 0x45, 0x91, 0x96, 0x63, 0xd9, 0xab, 0x9c, 0xe3, 0x6c, 0xc5, 0x3c, 0xb1, 0xcf, 0x8a, 0xc9, + 0x34, 0x3c, 0x77, 0xe4, 0x9d, 0x7b, 0x3d, 0x0c, 0x4f, 0xf8, 0xc4, 0xa3, 0xd2, 0x2f, 0x02, 0x18, + 0x77, 0x75, 0x62, 0x2a, 0xdb, 0x1a, 0xb9, 0x3b, 0x3d, 0x21, 0xe4, 0xec, 0x27, 0xea, 0x99, 0x9b, + 0xf2, 0x18, 0x83, 0xa6, 0x25, 0xf8, 0x19, 0x88, 0x59, 0x26, 0x51, 0x9c, 0xc9, 0x2d, 0xf5, 0xbc, + 0x27, 0xb0, 0x4c, 0x22, 0xe2, 0x16, 0x5e, 0x07, 0x6c, 0xf2, 0x20, 0x07, 0x0c, 0x0f, 0x72, 0xc0, + 0xf0, 0x2d, 0x77, 0x0b, 0x9a, 0x1a, 0x68, 0xa3, 0x0c, 0x9a, 0x7d, 0xbe, 0x1d, 0x28, 0xf1, 0xe8, + 0x1e, 0x1a, 0xb0, 0x09, 0x7d, 0x0f, 0x4b, 0x72, 0xfa, 0x83, 0x30, 0x1c, 0xf5, 0xb6, 0xeb, 0xb5, + 0xcf, 0x25, 0xcf, 0xc4, 0xe7, 0x73, 0xbe, 0xf8, 0xdd, 0xcd, 0xf9, 0xbf, 0xe4, 0xe9, 0xfe, 0xca, + 0x77, 0x3f, 0xdd, 0xff, 0x4a, 0x67, 0xfa, 0x11, 0xff, 0x4c, 0x77, 0x27, 0xf9, 0xd3, 0x03, 0x27, + 0x79, 0xdf, 0xfc, 0x3e, 0xb9, 0x77, 0x7e, 0x7b, 0xa7, 0xf6, 0xe9, 0x41, 0x53, 0xd1, 0x3f, 0x0b, + 0xbf, 0x87, 0x19, 0xf3, 0xe9, 0x3e, 0x4d, 0x9e, 0x1f, 0xa2, 0xc9, 0xfb, 0x79, 0x63, 0xdf, 0x7f, + 0x65, 0xbe, 0x72, 0xf4, 0xe1, 0xd5, 0x81, 0x5b, 0x58, 0xba, 0x05, 0x38, 0xdb, 0xb1, 0xb7, 0x58, + 0x18, 0x34, 0xa7, 0x5a, 0x5a, 0x8d, 0x7e, 0xe1, 0x24, 0x44, 0x3b, 0x16, 0x31, 0x3d, 0x86, 0xa4, + 0xfb, 0x8d, 0x3f, 0x01, 0xd1, 0xb6, 0x6a, 0x59, 0x77, 0x0d, 0xb3, 0xbe, 0x5f, 0x24, 0x8b, 0xd4, + 0x4c, 0x62, 0x33, 0x8a, 0xa1, 0x47, 0xcc, 0xdd, 0x75, 0x10, 0xd2, 0xdd, 0x20, 0x48, 0x6e, 0x7b, + 0xcb, 0x44, 0xad, 0x53, 0x69, 0xff, 0x62, 0x00, 0x46, 0xb7, 0xf8, 0xdf, 0x22, 0xa8, 0xd6, 0xef, + 0xbd, 0xf6, 0xa3, 0xcc, 0x8a, 0x7f, 0x39, 0xbf, 0xbe, 0x8e, 0x1c, 0x4b, 0x30, 0x2d, 0x2c, 0x41, + 0x16, 0x5c, 0x0e, 0xbf, 0x85, 0x02, 0x92, 0x44, 0x19, 0x79, 0xe2, 0x8d, 0x07, 0x68, 0x1a, 0x1f, + 0xf9, 0xd3, 0x2e, 0xc2, 0xcb, 0xd5, 0x6a, 0x39, 0xc5, 0x1b, 0x4b, 0x59, 0xb6, 0xa9, 0xe9, 0x9b, + 0x14, 0xe0, 0xf0, 0x1b, 0x0f, 0xd0, 0x24, 0x9e, 0x78, 0xdc, 0x45, 0x31, 0x06, 0xc0, 0xc9, 0x0f, + 0x37, 0x27, 0x73, 0x6f, 0x3c, 0x40, 0x57, 0x93, 0x9f, 0xfc, 0xd3, 0x2e, 0xba, 0x9c, 0x6b, 0x6a, + 0x7a, 0xbd, 0x61, 0x34, 0xeb, 0x29, 0xc3, 0x4c, 0xd5, 0x9a, 0x44, 0x35, 0x53, 0x16, 0xe3, 0x41, + 0x8a, 0x49, 0x20, 0xd5, 0x30, 0xcc, 0x94, 0xbd, 0xa5, 0x59, 0xa9, 0x2d, 0xdb, 0x6e, 0x3b, 0xad, + 0xdf, 0x21, 0xbb, 0x94, 0x8c, 0xf4, 0xc6, 0x03, 0x14, 0x4f, 0xc2, 0xe3, 0x2e, 0x8a, 0x70, 0xbe, + 0x79, 0x4c, 0xd5, 0x77, 0x99, 0x09, 0x25, 0x58, 0x93, 0x5c, 0x87, 0xb8, 0x77, 0xd8, 0x03, 0xe4, + 0x7f, 0xce, 0x2b, 0xff, 0x61, 0x72, 0xf1, 0xaa, 0xc6, 0xc7, 0xde, 0xeb, 0xa2, 0x67, 0xe1, 0x69, + 0x38, 0xb5, 0xa2, 0x59, 0x76, 0xca, 0x68, 0xa4, 0x28, 0xb3, 0x89, 0x6e, 0x8b, 0x99, 0x9f, 0x72, + 0xa4, 0x84, 0xe6, 0xd2, 0xff, 0x3e, 0x08, 0x87, 0x5c, 0x51, 0xbc, 0xd2, 0x21, 0xe6, 0x6e, 0x59, + 0x35, 0xd5, 0x96, 0x85, 0x7f, 0x2b, 0x00, 0xf1, 0xd7, 0xe9, 0xb7, 0xd2, 0x66, 0x05, 0x42, 0x8c, + 0x0b, 0xfb, 0x89, 0xd1, 0x83, 0x3b, 0xeb, 0xf9, 0x9b, 0x8b, 0xf3, 0x83, 0x83, 0xc4, 0x99, 0x7a, + 0xe3, 0x01, 0x3a, 0x81, 0x93, 0x7f, 0xda, 0x45, 0x47, 0x18, 0x72, 0x8a, 0x61, 0x13, 0xdb, 0x27, + 0xd2, 0x63, 0x6f, 0x3c, 0x40, 0x87, 0xf1, 0xd4, 0xe3, 0x2e, 0x9a, 0xe8, 0x03, 0xfa, 0xfe, 0x8b, + 0x95, 0x0d, 0x3d, 0xd5, 0xf6, 0x36, 0x70, 0xa0, 0x58, 0x63, 0xaf, 0xf7, 0xc6, 0x9d, 0x7c, 0x15, + 0xa4, 0x7e, 0x36, 0x7c, 0xbf, 0xc4, 0x3b, 0xf7, 0x5e, 0x17, 0x9d, 0x85, 0x8f, 0xc3, 0x73, 0x15, + 0x32, 0x48, 0xba, 0x7d, 0xbc, 0x61, 0x62, 0xfe, 0x65, 0x04, 0x47, 0xdd, 0xb1, 0x73, 0xaa, 0xd4, + 0x88, 0x11, 0x31, 0xb0, 0xa9, 0x3a, 0xa9, 0x99, 0xbb, 0xcc, 0xf0, 0x57, 0xda, 0xa6, 0xb1, 0xad, + 0xd5, 0x89, 0x29, 0x7a, 0x89, 0x7b, 0x55, 0x65, 0x51, 0x83, 0x9f, 0x85, 0x84, 0x65, 0x1b, 0x26, + 0xe9, 0xc1, 0xf2, 0xc5, 0x69, 0x9c, 0x95, 0xba, 0x60, 0x19, 0x88, 0x36, 0x0d, 0xde, 0x27, 0x11, + 0x3d, 0x4d, 0x7c, 0xbb, 0x8b, 0x82, 0xc2, 0xe3, 0xf8, 0x3c, 0x5d, 0x44, 0x9c, 0xfa, 0x2b, 0xd1, + 0x0f, 0xaf, 0x86, 0x2f, 0xcc, 0xcc, 0xcd, 0xcc, 0xa7, 0xff, 0x03, 0x82, 0xa9, 0x9b, 0x6a, 0xa7, + 0x69, 0xf7, 0xf5, 0xf2, 0x2c, 0x44, 0xfd, 0x5d, 0xcb, 0x4d, 0x7e, 0xad, 0x8b, 0xc6, 0xeb, 0xa4, + 0x41, 0x81, 0xcf, 0x6e, 0xd3, 0xff, 0xcb, 0x2e, 0x08, 0x5d, 0xee, 0xdc, 0xc6, 0x79, 0xef, 0xdc, + 0x6f, 0x47, 0x0c, 0xc1, 0x9e, 0x18, 0xa6, 0x61, 0xd4, 0x89, 0xfe, 0x85, 0xd8, 0xde, 0xe1, 0x7c, + 0xe2, 0xeb, 0x30, 0xc1, 0x15, 0x44, 0x21, 0x7a, 0xcd, 0x60, 0x87, 0x04, 0x61, 0x16, 0xcd, 0x3e, + 0x3d, 0x50, 0x54, 0x05, 0x01, 0xc4, 0x44, 0x96, 0xb0, 0x7c, 0x65, 0x57, 0xe2, 0x1f, 0x5e, 0x1d, + 0x9b, 0x9b, 0x99, 0x9f, 0xb9, 0x30, 0xb3, 0x30, 0x73, 0x31, 0x6d, 0xc0, 0x54, 0x9e, 0x2a, 0x60, + 0xdf, 0x38, 0x93, 0xfd, 0xe3, 0xf4, 0x0c, 0x6a, 0x01, 0x82, 0x1d, 0xb3, 0x29, 0x5c, 0xb7, 0xf4, + 0xb7, 0xbb, 0x28, 0xf4, 0x0f, 0x1e, 0xa0, 0xb8, 0x4d, 0x76, 0xec, 0x99, 0xd4, 0x86, 0x6a, 0x91, + 0x4b, 0x0b, 0x94, 0xb9, 0x63, 0xe6, 0xe8, 0x99, 0xfb, 0xf7, 0xa3, 0x94, 0xc1, 0x14, 0xfc, 0x4a, + 0xe4, 0xc3, 0xab, 0xc1, 0xf9, 0x99, 0xb9, 0xf4, 0xc7, 0xe1, 0xf0, 0x2d, 0x4d, 0xdf, 0x6c, 0xa9, + 0x7a, 0x5f, 0x93, 0x83, 0x0e, 0x4a, 0x7e, 0x37, 0x02, 0xd0, 0xd3, 0x3e, 0xfc, 0x03, 0x70, 0x78, + 0xc3, 0x51, 0x1f, 0x45, 0x30, 0x84, 0xd9, 0xc6, 0xdc, 0x86, 0x79, 0xae, 0x8f, 0x19, 0xfb, 0xa8, + 0xda, 0xf2, 0x88, 0x3c, 0xb5, 0xb1, 0xb7, 0x0a, 0x7f, 0x06, 0x26, 0x99, 0xfc, 0x7c, 0x94, 0xb9, + 0x39, 0x93, 0xee, 0xdf, 0xa3, 0xf7, 0xaa, 0x46, 0x6e, 0x4c, 0xb8, 0xa6, 0xd3, 0x68, 0x79, 0x44, + 0x9e, 0xd8, 0xf6, 0x43, 0xe0, 0x32, 0x4c, 0xb2, 0x89, 0xee, 0x23, 0x1e, 0x19, 0x48, 0x7c, 0x80, + 0x3c, 0x28, 0xc5, 0x9a, 0xbf, 0x18, 0x2b, 0x30, 0x75, 0x97, 0x33, 0xd2, 0x47, 0x73, 0x94, 0xd1, + 0x7c, 0xa6, 0x8f, 0xe6, 0x40, 0x96, 0xbb, 0xde, 0xf4, 0xf2, 0x88, 0x3c, 0x79, 0xb7, 0x1f, 0x02, + 0xdb, 0x70, 0x6a, 0x20, 0xb7, 0x15, 0x4d, 0xb7, 0xe9, 0x96, 0xdd, 0x64, 0x26, 0xd0, 0x13, 0xb3, + 0xbd, 0xe7, 0xbb, 0x1f, 0x1f, 0xc0, 0xfd, 0xa2, 0xa0, 0x89, 0x7f, 0x10, 0x0e, 0xf5, 0xa9, 0xba, + 0xc2, 0x4e, 0x50, 0xa3, 0x4f, 0xa8, 0xef, 0x1e, 0x39, 0xc8, 0xd8, 0xda, 0x53, 0x7d, 0xe5, 0x37, + 0xd1, 0x37, 0xae, 0xa2, 0x87, 0x5d, 0xf4, 0x36, 0x82, 0x9f, 0x45, 0xfc, 0x70, 0x31, 0xf3, 0x05, + 0x04, 0x9f, 0x43, 0x90, 0xde, 0x47, 0xbb, 0xe6, 0xc7, 0xdc, 0x11, 0xc1, 0x33, 0x03, 0x74, 0x64, + 0x7e, 0x62, 0x59, 0xb5, 0xb6, 0xb4, 0x9a, 0x61, 0xb6, 0x53, 0x4c, 0x31, 0x20, 0x39, 0x40, 0xd8, + 0xf3, 0x61, 0x26, 0x57, 0x48, 0x0d, 0x14, 0xdb, 0xfc, 0x58, 0xce, 0x30, 0x6c, 0xcb, 0x36, 0xd5, + 0x36, 0x1e, 0x5d, 0xd7, 0xef, 0xe8, 0xc6, 0x5d, 0xfd, 0x8b, 0x6f, 0x3f, 0x35, 0xf2, 0xe5, 0xb7, + 0x9f, 0x1a, 0xb9, 0xff, 0x07, 0xa9, 0x91, 0xdc, 0x19, 0x98, 0xf4, 0x8a, 0xc0, 0xd0, 0x89, 0xd1, + 0xc0, 0x53, 0xef, 0x76, 0x11, 0x35, 0x84, 0xc6, 0x1e, 0x77, 0xd1, 0xe8, 0xc2, 0xcc, 0xc5, 0x99, + 0x4b, 0x33, 0x2f, 0x5c, 0x0f, 0x45, 0x91, 0x14, 0xb8, 0x1e, 0x8a, 0x06, 0xa4, 0xe0, 0xf5, 0x50, + 0x34, 0x28, 0x85, 0xae, 0x87, 0xa2, 0x63, 0x12, 0xa4, 0x37, 0x20, 0x51, 0x22, 0xf6, 0x5d, 0xc3, + 0xbc, 0xe3, 0x04, 0x31, 0xca, 0x10, 0x34, 0x49, 0x43, 0x6c, 0xa9, 0xc3, 0xbd, 0xc1, 0xd4, 0x3b, + 0xf7, 0x26, 0xb6, 0x35, 0xd3, 0xee, 0xa8, 0x4d, 0x45, 0xe7, 0x54, 0xee, 0x3f, 0x40, 0xde, 0x63, + 0x75, 0x4a, 0x2a, 0xfd, 0x38, 0x08, 0xb1, 0x8a, 0x66, 0xbb, 0x61, 0x92, 0xe2, 0x93, 0xb7, 0x70, + 0xec, 0x9d, 0x7b, 0x21, 0x4b, 0xb3, 0x09, 0x25, 0xfb, 0x95, 0xbd, 0xa4, 0xf1, 0x1a, 0xc4, 0x45, + 0xc3, 0x5c, 0x1f, 0x02, 0x03, 0xf5, 0xe1, 0x26, 0xef, 0xa3, 0x18, 0x28, 0xd7, 0x87, 0x77, 0x1e, + 0xa0, 0x30, 0x04, 0x37, 0x36, 0xdb, 0x72, 0x4c, 0xef, 0x95, 0xe3, 0x65, 0x38, 0x24, 0xdc, 0x4f, + 0xa1, 0xd0, 0xc4, 0x56, 0xb6, 0xb5, 0xb6, 0x98, 0x94, 0x87, 0xfa, 0x08, 0xb3, 0x64, 0x89, 0xe5, + 0x11, 0x19, 0x0b, 0x9c, 0xa2, 0x40, 0xb9, 0xa9, 0xb5, 0xf1, 0x12, 0x4c, 0x11, 0x7d, 0x2f, 0xa1, + 0xf0, 0x50, 0x42, 0x93, 0x1c, 0xc5, 0x4b, 0xe7, 0x55, 0x08, 0x99, 0xa4, 0xc1, 0xdd, 0x96, 0x83, + 0xd8, 0xf5, 0xfc, 0x5e, 0x81, 0x08, 0xbd, 0xef, 0x93, 0x0b, 0x23, 0x99, 0xbb, 0x0a, 0x53, 0xde, + 0xbe, 0x29, 0xb5, 0x2d, 0x43, 0xab, 0x11, 0xfc, 0xfc, 0xbb, 0x5d, 0x14, 0x79, 0xd4, 0x45, 0xc1, + 0xc7, 0x5d, 0x14, 0xbc, 0x34, 0x73, 0xf1, 0x8d, 0x07, 0xe8, 0x10, 0x48, 0x6a, 0x7d, 0x9b, 0x98, + 0xb6, 0x66, 0x11, 0xa5, 0x6d, 0x34, 0xb5, 0xda, 0x6e, 0x0a, 0xb9, 0x8a, 0x14, 0x92, 0xc2, 0xe9, + 0xd7, 0x00, 0x17, 0xdb, 0x65, 0x93, 0x34, 0xb4, 0x9d, 0x0a, 0x71, 0xb3, 0x46, 0xae, 0x3f, 0xb9, + 0xa8, 0x93, 0xef, 0xdc, 0x1b, 0xd7, 0xda, 0x4a, 0x9b, 0x91, 0x50, 0x2c, 0x62, 0xf7, 0xab, 0xd1, + 0x4f, 0x84, 0x20, 0x7e, 0xf3, 0xbb, 0xd7, 0xa3, 0xb8, 0xc3, 0x18, 0xaa, 0x4f, 0xff, 0x07, 0xea, + 0xd1, 0xff, 0x8f, 0x3e, 0x82, 0x22, 0xc9, 0x43, 0x15, 0xe9, 0x9d, 0x07, 0xe8, 0x79, 0x88, 0x12, + 0xbd, 0xde, 0x36, 0x34, 0xdd, 0xde, 0xab, 0x1a, 0x30, 0x56, 0xd7, 0xac, 0x9a, 0xb1, 0x4d, 0xcc, + 0xdd, 0xbf, 0x54, 0x9d, 0xbb, 0x09, 0x89, 0x32, 0x2d, 0x27, 0xa6, 0xa3, 0x12, 0x8b, 0x4f, 0xae, + 0x12, 0x87, 0xde, 0xb9, 0x37, 0xda, 0xe6, 0xd8, 0xfd, 0x9a, 0xb6, 0x09, 0x47, 0xca, 0xa6, 0x61, + 0x1b, 0x35, 0xa3, 0xd9, 0x47, 0x7f, 0xf5, 0xc9, 0xe9, 0x9f, 0x7c, 0xe7, 0x9e, 0xd4, 0x16, 0x54, + 0x94, 0x7d, 0x1a, 0x7a, 0x3b, 0x00, 0x47, 0x84, 0x36, 0x09, 0xc5, 0x76, 0xb2, 0x99, 0x70, 0x09, + 0xfa, 0x05, 0xc0, 0x6c, 0xa0, 0xd8, 0xfc, 0xc9, 0xbe, 0x56, 0xfd, 0xcb, 0x77, 0x8e, 0x99, 0xfb, + 0xcb, 0x23, 0x72, 0x62, 0xdb, 0xa7, 0xac, 0xf8, 0x3c, 0xb0, 0x85, 0x54, 0x18, 0xf3, 0xfd, 0xe1, + 0x05, 0xcf, 0xb4, 0x5a, 0x1e, 0x91, 0x19, 0x24, 0x7e, 0x19, 0x7c, 0x53, 0x46, 0x44, 0x97, 0x8e, + 0xf7, 0xcf, 0x09, 0x3f, 0x6a, 0x4c, 0xa0, 0xd0, 0xd2, 0xdc, 0x33, 0x30, 0x61, 0x92, 0x86, 0x62, + 0xd0, 0x2d, 0x4f, 0x0c, 0x6b, 0xf2, 0xdd, 0x2e, 0x0a, 0x3e, 0xea, 0xa2, 0xf0, 0xe3, 0x2e, 0x0a, + 0x5f, 0x98, 0x99, 0x9f, 0x99, 0xe3, 0xb2, 0xbc, 0x1e, 0x8a, 0x86, 0xa5, 0xc8, 0xf5, 0x50, 0x34, + 0x22, 0x8d, 0x5e, 0x0f, 0x45, 0x47, 0xa5, 0xe8, 0xf5, 0x50, 0x34, 0x2a, 0x8d, 0xa5, 0x7f, 0x03, + 0x41, 0x92, 0x12, 0xbb, 0xd9, 0xa3, 0xeb, 0x65, 0xd3, 0x5f, 0xc5, 0xb0, 0x8e, 0xef, 0x1d, 0x56, + 0xf4, 0xdd, 0x2e, 0x0a, 0x3c, 0xea, 0x22, 0x47, 0x33, 0x3f, 0x1b, 0x84, 0x13, 0xdc, 0x93, 0x5d, + 0x55, 0x75, 0xad, 0xdd, 0x69, 0x32, 0xeb, 0x7e, 0xad, 0xed, 0xa6, 0x80, 0xa5, 0x7d, 0x47, 0x23, + 0xd4, 0xf9, 0x18, 0xf1, 0x1c, 0x77, 0xf0, 0x53, 0x91, 0xe7, 0x7c, 0xf1, 0x15, 0x3f, 0xd0, 0xdb, + 0x2f, 0x2d, 0x8f, 0x08, 0xbf, 0x0b, 0x2f, 0x42, 0x5c, 0x58, 0x01, 0x1c, 0x3c, 0xfc, 0x44, 0x61, + 0x12, 0x3a, 0x2a, 0x8e, 0x76, 0x93, 0x51, 0x99, 0x87, 0x88, 0xda, 0x6e, 0x13, 0xbd, 0x2e, 0x0e, + 0x55, 0x92, 0xb4, 0xb9, 0x77, 0x1e, 0x20, 0x0c, 0x52, 0xad, 0xae, 0x2b, 0x4d, 0x43, 0xad, 0x6f, + 0xa8, 0x4d, 0x55, 0xa7, 0xb3, 0x41, 0x40, 0x5e, 0xe9, 0xbc, 0xd7, 0x45, 0xc7, 0xe0, 0x28, 0x24, + 0x84, 0xd7, 0x9e, 0xb2, 0x8d, 0x54, 0xb6, 0x5e, 0xc7, 0xe1, 0xb9, 0x99, 0x85, 0x99, 0x0b, 0x0f, + 0xbb, 0xa8, 0x0a, 0x09, 0x08, 0x95, 0xd4, 0x16, 0x4b, 0xd5, 0xa2, 0x83, 0x82, 0x59, 0x08, 0xb3, + 0xf6, 0x32, 0xcf, 0xc2, 0xd3, 0x30, 0x2a, 0x46, 0x08, 0xd3, 0xfe, 0x21, 0xcc, 0x47, 0x65, 0x52, + 0x57, 0x6b, 0x36, 0xa9, 0x03, 0x86, 0x48, 0x96, 0x35, 0x96, 0x8c, 0x3a, 0x1d, 0xcc, 0x3d, 0x05, + 0x71, 0x06, 0xe6, 0x2c, 0x1e, 0x13, 0x0e, 0xf7, 0xe9, 0xe2, 0x31, 0x3f, 0x73, 0x51, 0x08, 0xe1, + 0x51, 0x0c, 0x4e, 0xf0, 0xa0, 0xf9, 0x3e, 0x42, 0x38, 0xe3, 0x13, 0xc2, 0xa1, 0x9e, 0x00, 0xc4, + 0x5f, 0x5f, 0x09, 0x39, 0x07, 0x54, 0x2f, 0xc1, 0x84, 0xb6, 0xa9, 0x53, 0xbf, 0xd2, 0x52, 0x5b, + 0x84, 0xe9, 0xcd, 0xc4, 0xd0, 0x05, 0x38, 0xc1, 0xc1, 0x2b, 0x02, 0x9a, 0x12, 0x70, 0x30, 0x15, + 0xcb, 0x36, 0xb5, 0x9a, 0x2d, 0x14, 0x6f, 0x5f, 0x02, 0x0e, 0x78, 0x85, 0x41, 0xe3, 0x17, 0x21, + 0xee, 0x12, 0x68, 0xaa, 0x3b, 0xc2, 0xb9, 0xd9, 0x0f, 0x3b, 0xe6, 0xc0, 0xae, 0xa8, 0x3b, 0xf8, + 0x13, 0x30, 0xee, 0xa2, 0xea, 0x86, 0x4e, 0x0e, 0xd8, 0x3b, 0xdc, 0x76, 0x4a, 0x86, 0x4e, 0x28, + 0xb2, 0x33, 0x72, 0x52, 0xeb, 0x98, 0x44, 0xb8, 0x12, 0x83, 0x91, 0x91, 0x1c, 0x17, 0xe3, 0x66, + 0xb0, 0xf8, 0x22, 0x80, 0x5a, 0xaf, 0x3b, 0x98, 0xd1, 0xa1, 0x98, 0x63, 0x6a, 0xbd, 0x2e, 0xd0, + 0x7a, 0xdc, 0xde, 0xb2, 0xed, 0xb6, 0xa1, 0x37, 0x77, 0x85, 0x53, 0x31, 0x18, 0x37, 0xe0, 0x70, + 0x7b, 0x59, 0x40, 0x53, 0x66, 0xd1, 0x76, 0x5d, 0xec, 0xd8, 0x50, 0xec, 0x98, 0x5a, 0xaf, 0xbb, + 0xa8, 0x9f, 0x04, 0x41, 0x4c, 0x69, 0xa9, 0x3b, 0x8a, 0xba, 0x49, 0xa6, 0xc7, 0x87, 0x20, 0x07, + 0x9d, 0x01, 0xaf, 0xaa, 0x3b, 0xd9, 0x4d, 0xda, 0xf3, 0x71, 0x81, 0x26, 0xe6, 0x62, 0x22, 0x85, + 0xce, 0x84, 0x73, 0xc7, 0xbe, 0xd6, 0x45, 0xe1, 0xcb, 0x97, 0x16, 0xce, 0x9f, 0xff, 0x9c, 0xb0, + 0xc3, 0x46, 0x33, 0xe1, 0xe9, 0xfb, 0x5f, 0xfe, 0x2d, 0x69, 0x39, 0x28, 0xc7, 0x5a, 0x0c, 0x97, + 0xcf, 0xc2, 0xdb, 0x70, 0xc2, 0xb1, 0x1b, 0x6c, 0xb5, 0xd5, 0x26, 0x26, 0x75, 0x75, 0xe8, 0x36, + 0x42, 0x6a, 0x2c, 0x5e, 0x30, 0x39, 0xa4, 0x33, 0x21, 0x39, 0x29, 0x70, 0xab, 0x0e, 0x6a, 0xd9, + 0xc5, 0xc4, 0x37, 0xe1, 0xb8, 0xb0, 0x23, 0x06, 0x12, 0x9e, 0x1a, 0x4a, 0xf8, 0x18, 0x47, 0x1d, + 0x40, 0xf7, 0xca, 0xcf, 0x07, 0xdf, 0xeb, 0xa2, 0x8f, 0xc1, 0xf3, 0x70, 0x84, 0xcf, 0xb5, 0x54, + 0xaf, 0x2e, 0x25, 0x77, 0x9a, 0x04, 0x8f, 0xcf, 0xcd, 0xcc, 0xcf, 0x5c, 0x9a, 0x79, 0x71, 0x66, + 0x6e, 0x7e, 0x66, 0xee, 0xd2, 0xc3, 0x2e, 0xfa, 0x8f, 0x81, 0x3d, 0xab, 0x42, 0x1b, 0xa2, 0xce, + 0x54, 0xc9, 0xd4, 0x61, 0x03, 0x8e, 0xed, 0x99, 0x6f, 0xf3, 0x91, 0x22, 0x2b, 0xa0, 0x55, 0x7d, + 0x33, 0x69, 0x3e, 0xc2, 0xe7, 0x08, 0x4c, 0xf9, 0xe7, 0xc8, 0x7c, 0x70, 0x45, 0xdd, 0x81, 0xc3, + 0x7d, 0xda, 0x3f, 0x1f, 0xa2, 0x7a, 0x0d, 0x97, 0x21, 0xc2, 0xb5, 0x2d, 0x33, 0x0b, 0x33, 0x70, + 0xb4, 0x4f, 0xcb, 0xdd, 0xd6, 0x26, 0xbd, 0x1a, 0x3c, 0x1f, 0xac, 0x10, 0x1b, 0xae, 0x42, 0x94, + 0x6a, 0xcb, 0x9a, 0xde, 0xdc, 0xcd, 0xcc, 0xc3, 0x79, 0x4f, 0x5f, 0x1d, 0x7d, 0x73, 0xb1, 0xa7, + 0xfc, 0x7a, 0xc8, 0xf1, 0x5f, 0x87, 0xe3, 0x82, 0x53, 0x2e, 0x3b, 0x3d, 0x3c, 0xcb, 0xc8, 0x50, + 0x86, 0xe7, 0x87, 0x6b, 0xc1, 0xfc, 0xa8, 0x38, 0x0b, 0x83, 0x67, 0x87, 0x0a, 0x75, 0x3e, 0x52, + 0x60, 0x95, 0xb9, 0x14, 0x44, 0x1d, 0x1e, 0xe0, 0x43, 0xef, 0x76, 0xd1, 0xc4, 0xa3, 0x2e, 0x0a, + 0x3c, 0xee, 0xa2, 0xe8, 0xdc, 0x45, 0x1e, 0xf1, 0xc9, 0x1d, 0x83, 0x08, 0x1f, 0x23, 0x5b, 0x4c, + 0xa3, 0x8f, 0xba, 0x28, 0x42, 0x17, 0xd3, 0x17, 0x66, 0x2e, 0xe7, 0x4e, 0x42, 0xd4, 0x19, 0x00, + 0xdb, 0xbe, 0x63, 0xc2, 0xb7, 0x0c, 0xcf, 0x9d, 0x9f, 0x99, 0x9b, 0xcb, 0xa5, 0x60, 0x54, 0xa8, + 0x3c, 0x3e, 0xfc, 0x6e, 0x17, 0x8d, 0x3f, 0xea, 0xa2, 0x38, 0xab, 0xbd, 0x30, 0x33, 0xb7, 0xf0, + 0xad, 0x2e, 0x42, 0xb9, 0x67, 0x41, 0xe2, 0xa7, 0x9a, 0xbd, 0x4e, 0x32, 0x42, 0x93, 0x8f, 0xba, + 0x48, 0x62, 0xa0, 0x2f, 0xcc, 0xcc, 0xbd, 0xe8, 0x3a, 0xa7, 0xdc, 0x02, 0x18, 0x93, 0xe0, 0x7a, + 0x28, 0x1a, 0x97, 0xc6, 0xaf, 0x87, 0xa2, 0x92, 0x34, 0x79, 0x3d, 0x14, 0xc5, 0xd2, 0x54, 0xda, + 0x82, 0xf1, 0xaa, 0xd9, 0xb1, 0x6c, 0x52, 0xcf, 0x67, 0x57, 0x34, 0xcb, 0xc6, 0x1b, 0x30, 0x61, + 0xf3, 0x02, 0xa5, 0xa6, 0x2a, 0x4d, 0xcd, 0xb2, 0x9f, 0xc8, 0x38, 0x3b, 0xf1, 0xce, 0xbd, 0x7e, + 0x3c, 0x8f, 0x6d, 0x36, 0x2e, 0xaa, 0xf2, 0x2a, 0x6d, 0x23, 0xfd, 0xc5, 0x20, 0x1c, 0xad, 0x36, + 0xad, 0x5e, 0x76, 0x36, 0x8f, 0x9b, 0x0a, 0x6f, 0x39, 0xe1, 0xa1, 0xd3, 0x31, 0x9b, 0x62, 0x33, + 0x39, 0x23, 0x22, 0x60, 0xb1, 0x36, 0x69, 0x79, 0x03, 0x60, 0x11, 0x33, 0x74, 0xe6, 0xfe, 0xfd, + 0xa8, 0xd8, 0x60, 0x3e, 0x17, 0xa4, 0xdb, 0x70, 0xdc, 0x6d, 0x6e, 0xdd, 0x6c, 0xe2, 0x4f, 0x01, + 0xf4, 0x28, 0x0a, 0x7f, 0xa1, 0x7f, 0x30, 0x3e, 0x1e, 0x2c, 0x8f, 0xc8, 0x63, 0x2e, 0x05, 0xfc, + 0x49, 0x48, 0x5a, 0x77, 0xb4, 0xb6, 0xe2, 0x24, 0x55, 0x2b, 0xdb, 0xc4, 0x74, 0xcf, 0xd5, 0x98, + 0x25, 0x11, 0x95, 0xa7, 0x29, 0xc4, 0xb2, 0x00, 0xb8, 0xe9, 0xa9, 0xc7, 0x2f, 0xc0, 0x34, 0x83, + 0xdf, 0x55, 0xac, 0x0e, 0x3f, 0xb5, 0x52, 0x9b, 0x36, 0x4b, 0xc6, 0xe6, 0xe9, 0x3a, 0x63, 0xf2, + 0x61, 0x5e, 0x5f, 0xe1, 0xd5, 0xd9, 0xa6, 0x4d, 0xe7, 0xb1, 0x85, 0x0b, 0x70, 0xbc, 0x63, 0x11, + 0x65, 0xdb, 0x68, 0xda, 0xc4, 0x34, 0x55, 0xa5, 0x8f, 0x29, 0x21, 0x7f, 0x9e, 0xc6, 0xd1, 0x8e, + 0x45, 0x6e, 0x0a, 0xd0, 0xaa, 0x67, 0xf0, 0xb9, 0x33, 0x30, 0xe9, 0xc1, 0x14, 0xdb, 0xfb, 0x94, + 0xf0, 0x0d, 0xc2, 0xdc, 0x37, 0x98, 0x7b, 0xfb, 0x01, 0x42, 0xdc, 0x5e, 0x4c, 0xdf, 0x85, 0xc4, + 0xb2, 0x6a, 0x6d, 0x65, 0x9b, 0x9b, 0x86, 0xa9, 0xd9, 0x5b, 0x2d, 0x0b, 0x13, 0x98, 0xd8, 0x52, + 0xad, 0x2d, 0x45, 0x75, 0x8b, 0x98, 0x42, 0x24, 0xf6, 0xf0, 0xd0, 0x87, 0x97, 0x3b, 0xe5, 0x8a, + 0x3f, 0xe4, 0xfc, 0x15, 0x45, 0x9e, 0x54, 0xfe, 0xc4, 0x96, 0xaf, 0x99, 0xf4, 0x2f, 0x46, 0x00, + 0x57, 0x9b, 0x56, 0x9e, 0xba, 0x27, 0x8c, 0x7b, 0x84, 0xa9, 0x43, 0x05, 0x26, 0x6a, 0xbd, 0x22, + 0x8f, 0x3e, 0x64, 0xf6, 0xd1, 0x87, 0xa8, 0x49, 0x25, 0xdc, 0xd3, 0x88, 0xfb, 0x41, 0x24, 0x27, + 0x3c, 0x24, 0xa8, 0x46, 0xbc, 0x0c, 0xb1, 0xb6, 0xa9, 0x6d, 0x53, 0x82, 0x77, 0xc8, 0xae, 0xd8, + 0xf9, 0x0f, 0x3c, 0x05, 0x03, 0x81, 0x73, 0x83, 0xec, 0xe2, 0xd4, 0x80, 0x94, 0x23, 0x7f, 0x4e, + 0xcd, 0x12, 0x4c, 0x51, 0xf9, 0x59, 0xec, 0xd0, 0x4e, 0x11, 0x91, 0x6b, 0x6b, 0xe8, 0x66, 0x3f, + 0x22, 0x4f, 0x76, 0x2c, 0xc2, 0x8f, 0xf9, 0x16, 0x05, 0x02, 0xbe, 0x0e, 0x87, 0x9d, 0x95, 0xcb, + 0xa8, 0x59, 0xec, 0x18, 0xbe, 0xdd, 0xd4, 0xf4, 0xcd, 0xa1, 0x9b, 0xff, 0x88, 0x3c, 0x25, 0x90, + 0xd6, 0x6a, 0x56, 0xbb, 0x22, 0x50, 0xf0, 0x3a, 0x1c, 0xa9, 0x75, 0x2c, 0xdb, 0x68, 0x29, 0xfd, + 0x12, 0x1d, 0x1b, 0xe8, 0x09, 0xf9, 0x35, 0x61, 0x79, 0x44, 0x3e, 0xc4, 0xd1, 0xfd, 0xe5, 0x57, + 0x5e, 0x7b, 0xaf, 0x8b, 0x4e, 0x40, 0x12, 0x26, 0xaa, 0x2b, 0x95, 0x94, 0x47, 0x80, 0x78, 0x94, + 0x5a, 0xad, 0x17, 0x67, 0xe8, 0x16, 0xf5, 0x49, 0x38, 0x01, 0xb1, 0x32, 0x67, 0x60, 0xea, 0x06, + 0xd9, 0x4d, 0x8e, 0xfb, 0x64, 0x40, 0x6b, 0x17, 0x7b, 0xdc, 0xa3, 0xb5, 0x1e, 0x66, 0xe6, 0xfe, + 0x1c, 0xc1, 0x21, 0xdf, 0xe8, 0x1d, 0x4d, 0xfe, 0x03, 0xe4, 0x59, 0x5c, 0xc3, 0x2f, 0xcc, 0x5c, + 0x9e, 0x79, 0xf1, 0x8d, 0x07, 0xe8, 0x77, 0x50, 0xf2, 0x93, 0x74, 0x85, 0xf5, 0xd9, 0xd8, 0xb3, + 0x56, 0x9b, 0xd4, 0x66, 0x69, 0xb1, 0x35, 0x6b, 0x37, 0x2d, 0xc5, 0x3d, 0xee, 0xe1, 0x9f, 0x1e, + 0x15, 0xb1, 0x92, 0x2f, 0x39, 0x0e, 0x0d, 0x9d, 0xf4, 0x1c, 0xb1, 0x0f, 0xa5, 0x66, 0xb4, 0x5a, + 0x86, 0x2e, 0x8e, 0xcb, 0xf6, 0x12, 0xc8, 0xf7, 0x3b, 0xda, 0xdf, 0x05, 0x11, 0x8f, 0x6f, 0xee, + 0xae, 0xe3, 0xe9, 0xbf, 0x19, 0x04, 0x58, 0x34, 0x5a, 0xaa, 0xc6, 0x0d, 0xee, 0x8b, 0x10, 0x23, + 0x3b, 0x6a, 0xcd, 0x71, 0x54, 0xf8, 0xd4, 0xc0, 0x8e, 0x5f, 0x33, 0x66, 0x8e, 0xb2, 0xe3, 0xb7, + 0x2d, 0xba, 0x28, 0x02, 0x03, 0xe4, 0x46, 0xd1, 0x0b, 0x10, 0xb7, 0x3a, 0x8d, 0x86, 0xb6, 0xa3, + 0x78, 0xfd, 0xa1, 0xc1, 0x78, 0x31, 0x0e, 0xc9, 0x11, 0x2f, 0x41, 0xcc, 0x24, 0x9b, 0xc4, 0xc1, + 0xe3, 0x27, 0x3d, 0x53, 0x0e, 0x9e, 0xb8, 0x09, 0x14, 0x78, 0x97, 0x39, 0x43, 0xc0, 0x20, 0x19, + 0xde, 0x95, 0x2f, 0xa1, 0xf7, 0xba, 0x28, 0x01, 0x71, 0x18, 0xe5, 0x9d, 0xb7, 0x30, 0x5a, 0x78, + 0xd8, 0x45, 0x3f, 0x89, 0x60, 0x1d, 0x62, 0xbc, 0x28, 0xc5, 0x62, 0xc4, 0x4b, 0xb0, 0x08, 0x87, + 0x7c, 0x83, 0x9a, 0x0f, 0x17, 0xe8, 0x07, 0x1c, 0xf1, 0xf7, 0x79, 0x3e, 0x52, 0x61, 0x5f, 0x14, + 0xda, 0xd3, 0xa5, 0xf9, 0xb0, 0x4c, 0x3f, 0xe0, 0x32, 0xc4, 0x05, 0x59, 0xd6, 0x81, 0xf9, 0x33, + 0x3e, 0x9a, 0x7e, 0x52, 0x3e, 0x02, 0xb9, 0x34, 0x8c, 0xd7, 0x19, 0xa6, 0xa3, 0x63, 0x74, 0x67, + 0x45, 0xc2, 0x19, 0x0a, 0xb3, 0x23, 0x1d, 0xe1, 0x0e, 0x7d, 0x80, 0x00, 0x56, 0x16, 0x16, 0x89, + 0x65, 0x8b, 0xe8, 0x59, 0x94, 0xc7, 0xda, 0x88, 0x73, 0xa9, 0xe9, 0x2c, 0x63, 0xca, 0x9b, 0x68, + 0x34, 0x1d, 0x36, 0x83, 0xdf, 0xf6, 0xc4, 0x0b, 0x53, 0x03, 0x97, 0x44, 0x17, 0x1d, 0x17, 0x21, + 0xd6, 0x36, 0x4c, 0x5b, 0x31, 0x55, 0x7d, 0x93, 0x38, 0x97, 0x41, 0xce, 0x7c, 0xad, 0x8b, 0x46, + 0xcf, 0x9f, 0xbd, 0x74, 0xf1, 0xe2, 0x85, 0x8b, 0xae, 0x67, 0x15, 0xea, 0xcf, 0x01, 0xfc, 0x4a, + 0x80, 0xae, 0x54, 0x86, 0x69, 0xcb, 0x0c, 0xf7, 0xca, 0x4b, 0x0f, 0xbb, 0xe8, 0x13, 0x70, 0x1c, + 0x62, 0xc5, 0x72, 0xaa, 0x2c, 0xe8, 0xe7, 0xe2, 0xbd, 0xae, 0x4a, 0x61, 0x36, 0x33, 0x0d, 0xd3, + 0x4e, 0x71, 0x0c, 0x36, 0x33, 0x7b, 0x8d, 0xa7, 0xff, 0x4d, 0x08, 0xa6, 0xaa, 0x4d, 0x8b, 0x45, + 0xbe, 0x6a, 0x84, 0xcd, 0x47, 0x66, 0x85, 0x7e, 0x12, 0xe2, 0x82, 0x4f, 0x2d, 0xd5, 0xae, 0x6d, + 0x89, 0x60, 0x4a, 0xff, 0x2a, 0xda, 0xd3, 0x55, 0x39, 0xc6, 0xc1, 0xd9, 0x1d, 0x30, 0x5c, 0xec, + 0x0b, 0xe7, 0x09, 0xca, 0x07, 0xf8, 0x70, 0x53, 0xde, 0x70, 0x9e, 0x40, 0xc1, 0xd7, 0xfc, 0xf1, + 0x3c, 0x87, 0xd2, 0x70, 0x7f, 0x0e, 0x7b, 0xe2, 0x79, 0x02, 0xe3, 0xca, 0x3f, 0x09, 0x3c, 0xec, + 0xa2, 0xdf, 0x08, 0xc0, 0xff, 0xed, 0x57, 0xc9, 0x16, 0xdc, 0x81, 0xd3, 0x30, 0xed, 0x1d, 0xec, + 0xec, 0x00, 0xfd, 0x7c, 0x1a, 0x8e, 0xf9, 0x40, 0x06, 0x2a, 0x6b, 0x3f, 0x9d, 0x01, 0x9a, 0xab, + 0xf4, 0x69, 0xee, 0xda, 0xfe, 0x4d, 0x0f, 0x69, 0x71, 0xff, 0x76, 0x40, 0x86, 0xb8, 0x77, 0xd8, + 0x99, 0x1c, 0xbc, 0x0c, 0x4f, 0x0d, 0x16, 0x47, 0xcf, 0x2e, 0x3e, 0x39, 0x90, 0xc9, 0xae, 0x3d, + 0x7c, 0x06, 0x0e, 0x8b, 0x6a, 0x87, 0x8c, 0x27, 0x92, 0x10, 0x14, 0xc6, 0x71, 0xf0, 0xc2, 0xcc, + 0x02, 0x5f, 0xcc, 0xd2, 0x6f, 0x20, 0x38, 0xdc, 0xa7, 0x54, 0x2c, 0x30, 0xb8, 0x8b, 0x5f, 0x07, + 0xec, 0x6d, 0x41, 0x31, 0x3b, 0x4d, 0xe2, 0xe4, 0x23, 0xf4, 0x1f, 0xe1, 0x0d, 0x50, 0x4b, 0x8f, + 0xdd, 0x31, 0x78, 0x92, 0x4d, 0x6a, 0x7d, 0x18, 0x56, 0xfa, 0xf7, 0xc2, 0x7b, 0x34, 0x9c, 0x4d, + 0xe8, 0x1b, 0x70, 0x44, 0x0c, 0xaa, 0x61, 0x98, 0x8a, 0xda, 0x6c, 0x2a, 0x9c, 0xa7, 0xce, 0x76, + 0xb9, 0xaf, 0x96, 0x72, 0xac, 0x25, 0xc3, 0xcc, 0x36, 0x9b, 0xce, 0x7a, 0x77, 0x15, 0x22, 0x7c, + 0x27, 0x10, 0x13, 0xe5, 0x99, 0xe1, 0x63, 0xe1, 0xdc, 0x58, 0x1e, 0x91, 0x05, 0x16, 0x96, 0x01, + 0x8b, 0xbd, 0xdb, 0xb3, 0x47, 0x88, 0xe9, 0x72, 0x7a, 0x2f, 0xad, 0x3e, 0x3b, 0x6a, 0x19, 0xc9, + 0x93, 0x1c, 0xdd, 0xbb, 0x3f, 0x17, 0xe1, 0x90, 0x6b, 0x5f, 0x7a, 0xa9, 0x86, 0x86, 0xc6, 0x15, + 0xa6, 0x1c, 0x1c, 0x2f, 0xa9, 0xbd, 0x66, 0x7b, 0xe4, 0x23, 0x98, 0xed, 0x9f, 0x47, 0x68, 0x39, + 0xd0, 0x67, 0xb6, 0x2f, 0xc1, 0xd4, 0x00, 0xe3, 0x77, 0xa8, 0x01, 0x15, 0x90, 0x27, 0xb7, 0xfb, + 0x8d, 0x60, 0x66, 0x9d, 0xfc, 0x00, 0x7c, 0x0c, 0x9e, 0x59, 0x34, 0xee, 0xea, 0x96, 0x6d, 0x12, + 0xb5, 0xe5, 0x35, 0x52, 0x52, 0x79, 0x43, 0x6f, 0x68, 0x9b, 0x1d, 0x7e, 0x37, 0x14, 0xa3, 0x79, + 0x38, 0x0c, 0xd2, 0x7a, 0x5b, 0x00, 0xca, 0x86, 0x61, 0xa7, 0xf2, 0x59, 0x8c, 0x2e, 0xc2, 0x34, + 0x4c, 0x79, 0x05, 0x94, 0x12, 0xfa, 0x8a, 0x2e, 0xe7, 0xce, 0x42, 0xd2, 0xa7, 0xb2, 0x5c, 0x62, + 0xde, 0x19, 0x30, 0xf6, 0xa8, 0x8b, 0xa2, 0x74, 0x06, 0xbc, 0x38, 0x33, 0x97, 0x7b, 0x0e, 0xa6, + 0x2c, 0x6d, 0x53, 0x67, 0x56, 0x0c, 0x31, 0xed, 0xfd, 0x66, 0x4a, 0xee, 0x99, 0x41, 0xa6, 0x3b, + 0x85, 0x1a, 0x75, 0x4c, 0xf7, 0x17, 0x66, 0x2e, 0xf1, 0xa0, 0xae, 0x6b, 0x22, 0x50, 0x13, 0xfe, + 0x6f, 0x21, 0x98, 0x5c, 0x32, 0xd5, 0x1a, 0xbf, 0xeb, 0x5a, 0xa6, 0xfd, 0xd2, 0x6d, 0xfc, 0x3c, + 0x8c, 0xe9, 0x9d, 0x16, 0x31, 0x55, 0xdb, 0xe0, 0xb9, 0x06, 0xe3, 0xb9, 0xb1, 0xaf, 0x75, 0x11, + 0xba, 0x48, 0x37, 0x6f, 0xb9, 0x57, 0x87, 0x97, 0xa8, 0xe9, 0xa5, 0x1b, 0x2d, 0x4d, 0x67, 0xa0, + 0xfc, 0xe0, 0xa6, 0xff, 0x96, 0xe4, 0x62, 0x0f, 0x82, 0x5b, 0xc8, 0x8c, 0x8a, 0x17, 0x91, 0x65, + 0x22, 0xcc, 0xcd, 0xcc, 0xa7, 0xff, 0x39, 0x02, 0x29, 0xd7, 0x69, 0x34, 0x88, 0xc9, 0x39, 0xcd, + 0xa6, 0x56, 0x0a, 0xa2, 0x62, 0xa1, 0xe0, 0x59, 0x98, 0x51, 0x41, 0xc1, 0x2d, 0xc5, 0x9f, 0x84, + 0x49, 0xea, 0x05, 0x9b, 0xe4, 0xf5, 0x0e, 0xb1, 0x6c, 0x65, 0x63, 0xd7, 0x16, 0x1b, 0xe1, 0x78, + 0x4e, 0x72, 0xec, 0x0d, 0x16, 0xf3, 0xb9, 0x7f, 0x3f, 0x2c, 0x4f, 0xb4, 0xd4, 0x1d, 0x99, 0x43, + 0xe6, 0x28, 0x20, 0xce, 0x82, 0xe4, 0xc5, 0x66, 0x57, 0x6b, 0x83, 0x0c, 0xf9, 0xa8, 0x70, 0x99, + 0xdc, 0xd8, 0x6f, 0x26, 0x38, 0xfd, 0x7e, 0x88, 0x3a, 0x24, 0x3d, 0x1a, 0x55, 0xad, 0x45, 0x58, + 0x96, 0xca, 0xfc, 0xcc, 0x85, 0x99, 0xb9, 0xf4, 0x97, 0x43, 0x00, 0x79, 0xc3, 0xb4, 0x84, 0xc4, + 0x93, 0xfd, 0x7d, 0xf7, 0xf4, 0xba, 0x08, 0x71, 0xb5, 0xd9, 0x34, 0xee, 0x2a, 0x86, 0xa9, 0x6d, + 0x6a, 0xd4, 0x3d, 0xa4, 0x76, 0xc0, 0x73, 0x2c, 0x21, 0xea, 0xcd, 0xbe, 0x84, 0xa8, 0xc8, 0x9b, + 0x28, 0x28, 0xdd, 0xf7, 0xae, 0x4d, 0x31, 0x86, 0xbb, 0xc6, 0x50, 0xb1, 0x0e, 0xd8, 0x4b, 0x4a, + 0x61, 0x4b, 0x38, 0xf7, 0x19, 0x73, 0x2f, 0x7b, 0x0d, 0x8b, 0x33, 0x9c, 0xdc, 0xd8, 0x9b, 0x28, + 0x92, 0x0e, 0x99, 0x81, 0x14, 0xf2, 0x56, 0xbe, 0xeb, 0xb1, 0x3a, 0xbc, 0x37, 0xa9, 0x25, 0x4f, + 0x53, 0x6c, 0xdf, 0xc1, 0xe7, 0x60, 0x9c, 0xb7, 0xd7, 0x22, 0xf6, 0x96, 0x51, 0xb7, 0xc4, 0xc5, + 0x51, 0xe7, 0xd2, 0xc0, 0xb7, 0x43, 0x48, 0xe6, 0x63, 0x5b, 0xe5, 0xf5, 0xf8, 0x69, 0x07, 0xc1, + 0xc9, 0xfd, 0xe3, 0x5e, 0x10, 0x07, 0x72, 0xb2, 0xce, 0x9e, 0x85, 0x04, 0xd9, 0x69, 0x1b, 0x16, + 0x71, 0xa1, 0xf8, 0x1d, 0xe5, 0x71, 0x5e, 0xea, 0x80, 0xa5, 0xdd, 0x98, 0x87, 0xb8, 0x03, 0xea, + 0x49, 0x2f, 0x88, 0xf0, 0x70, 0x1e, 0x7e, 0x01, 0x62, 0x2d, 0x75, 0x47, 0x6b, 0x75, 0x5a, 0x0c, + 0x6e, 0x8c, 0x05, 0x02, 0x8f, 0xd0, 0xee, 0x4d, 0x26, 0x27, 0xa6, 0xef, 0xff, 0x42, 0xf8, 0xcc, + 0x77, 0x9c, 0xff, 0x90, 0x0c, 0x02, 0x94, 0x22, 0x7e, 0x1c, 0x26, 0x79, 0x47, 0x6b, 0x26, 0xa9, + 0x13, 0xdd, 0xd6, 0xd4, 0xa6, 0xc5, 0x6f, 0x92, 0x0a, 0x36, 0xe4, 0x7b, 0xe5, 0x57, 0x16, 0x3f, + 0xbc, 0x3a, 0x21, 0xb2, 0x76, 0x58, 0x8c, 0xed, 0xf2, 0xcc, 0xdc, 0x7b, 0x5d, 0x34, 0x0b, 0x33, + 0x70, 0x2c, 0xbf, 0x26, 0x57, 0xc4, 0xb4, 0xef, 0x5b, 0x35, 0xfa, 0x31, 0xd2, 0x5f, 0x0d, 0x00, + 0xe4, 0x2d, 0xb3, 0x21, 0x54, 0xe6, 0x15, 0x38, 0x46, 0xb7, 0x0f, 0xea, 0x8e, 0x28, 0x8e, 0x3f, + 0xe2, 0x6e, 0x26, 0x81, 0xa1, 0x9b, 0xc9, 0x11, 0xb5, 0xd9, 0x5c, 0x31, 0xd4, 0x7a, 0x4e, 0xa0, + 0x39, 0xfb, 0xc9, 0xaa, 0xbb, 0x1f, 0x88, 0x8d, 0x9e, 0x85, 0x6a, 0x82, 0x03, 0xfd, 0x38, 0x8e, + 0x53, 0x52, 0x5b, 0x44, 0x84, 0x37, 0x24, 0x8e, 0xca, 0xcb, 0x59, 0xd8, 0xe7, 0xff, 0xf2, 0x28, + 0xf5, 0x90, 0xe5, 0x3f, 0x77, 0xed, 0x9d, 0x07, 0x28, 0x9f, 0x4c, 0xef, 0xe3, 0x5d, 0xd5, 0x2c, + 0xb3, 0x21, 0x96, 0xbf, 0xe4, 0xc9, 0xbd, 0x3e, 0x94, 0xa7, 0x7a, 0xd9, 0x33, 0xd7, 0x73, 0xc7, + 0x61, 0x82, 0xc9, 0x81, 0xd4, 0x1d, 0xa6, 0xb8, 0xe7, 0x3f, 0x88, 0x27, 0x5a, 0xa4, 0x7f, 0x1b, + 0xc1, 0x44, 0x59, 0xb5, 0xb7, 0xbc, 0x2f, 0x08, 0x3c, 0x0f, 0x11, 0x6e, 0xc5, 0x0a, 0xbf, 0x67, + 0x5c, 0xf8, 0xff, 0xd3, 0xf7, 0x03, 0xdf, 0x0c, 0x20, 0xb6, 0x77, 0xb2, 0x6a, 0xfc, 0x34, 0x84, + 0xda, 0xaa, 0xbd, 0x25, 0xec, 0xe8, 0x3d, 0x60, 0xac, 0x12, 0x5f, 0x84, 0xb0, 0x33, 0xc5, 0x28, + 0xd4, 0x49, 0xe7, 0xfe, 0x10, 0x9f, 0x5d, 0xee, 0xc4, 0xe2, 0x73, 0x6a, 0x79, 0x44, 0xe6, 0xd0, + 0x57, 0x42, 0x1f, 0x5e, 0x45, 0x0b, 0xb9, 0xa7, 0x00, 0x28, 0x11, 0x6e, 0x6d, 0xed, 0xef, 0x31, + 0xfc, 0x3b, 0x3a, 0x0a, 0xc3, 0xb4, 0xbd, 0xa3, 0x38, 0x0d, 0x21, 0x6a, 0x6e, 0x8b, 0x35, 0x39, + 0xc6, 0x56, 0x86, 0x4c, 0x68, 0xfa, 0x3b, 0xdf, 0x09, 0xb2, 0xae, 0x19, 0xa6, 0x8d, 0x5f, 0x1a, + 0xe4, 0x0e, 0x9c, 0x10, 0xdd, 0x9a, 0x4e, 0xf5, 0xbb, 0x00, 0x5f, 0xe6, 0xee, 0x57, 0xcf, 0x09, + 0xc0, 0x57, 0x60, 0x5c, 0x37, 0x14, 0x46, 0x83, 0x1b, 0xeb, 0x07, 0x1c, 0x76, 0xe8, 0x86, 0xdb, + 0x4b, 0x36, 0xc0, 0x0b, 0x6c, 0x80, 0x2e, 0x3a, 0x1b, 0x60, 0x48, 0x1c, 0x2e, 0x87, 0x17, 0x66, + 0xe6, 0x66, 0xe6, 0xb9, 0xab, 0x9a, 0x7e, 0x1c, 0x84, 0x49, 0xe7, 0x98, 0xae, 0x37, 0xc4, 0x39, + 0xdf, 0xb1, 0x90, 0xc3, 0xd9, 0xaf, 0x20, 0x34, 0x80, 0xc7, 0xee, 0x05, 0xa6, 0x30, 0x33, 0x74, + 0xc5, 0x60, 0x0f, 0xf9, 0x21, 0xc3, 0x66, 0xf0, 0x7d, 0x2e, 0x04, 0x06, 0x84, 0x2f, 0xf9, 0x65, + 0x77, 0x6a, 0x10, 0xf4, 0x00, 0xe1, 0xe1, 0x13, 0xcc, 0x0f, 0xb2, 0x88, 0x2e, 0xee, 0x27, 0x45, + 0xa9, 0x5a, 0x3a, 0x25, 0xf8, 0x34, 0xc4, 0x35, 0x9d, 0xba, 0xf1, 0x82, 0x69, 0x61, 0xb6, 0x64, + 0xc4, 0x78, 0x19, 0x67, 0xce, 0xbf, 0xa0, 0x7e, 0x6d, 0x12, 0xa6, 0x61, 0x82, 0x8f, 0x3a, 0x65, + 0x1b, 0x29, 0xee, 0xe0, 0x84, 0xe7, 0x66, 0x2e, 0xcd, 0x5c, 0x7c, 0xd8, 0x45, 0x3f, 0x8f, 0xf6, + 0x04, 0xe7, 0x97, 0x00, 0x18, 0x10, 0xf7, 0x2f, 0x2e, 0xc3, 0x25, 0x48, 0x88, 0xe1, 0x3a, 0xce, + 0x44, 0x42, 0x0c, 0xc8, 0x71, 0x0a, 0x0e, 0xf5, 0x3a, 0x3a, 0x1f, 0x2d, 0x8b, 0xbf, 0xe0, 0x79, + 0x88, 0x71, 0x3a, 0xdc, 0x53, 0x98, 0x16, 0x44, 0x04, 0x6e, 0x0f, 0x05, 0x4e, 0x51, 0x93, 0x9f, + 0xf6, 0x9a, 0x77, 0x2e, 0x99, 0xf0, 0x8f, 0x2c, 0x97, 0x82, 0x18, 0x3f, 0xff, 0xeb, 0x89, 0x37, + 0xe0, 0x04, 0x55, 0xd8, 0xd2, 0xe6, 0x9e, 0x20, 0x47, 0xa4, 0xd1, 0xf4, 0x7b, 0x01, 0x38, 0xd6, + 0x4b, 0x77, 0x25, 0xb6, 0x5f, 0xd8, 0xcf, 0x7a, 0xf2, 0x5e, 0xf9, 0x15, 0xb5, 0x7e, 0x09, 0xb3, + 0x2c, 0xcc, 0x23, 0x3e, 0x01, 0xf7, 0x44, 0xf9, 0x5d, 0x4e, 0xc3, 0xcf, 0x51, 0x41, 0x9c, 0x86, + 0xa7, 0x60, 0xba, 0x3f, 0xa5, 0xb8, 0xea, 0x48, 0x24, 0x38, 0x37, 0xb3, 0xf0, 0xb0, 0x8b, 0x14, + 0x88, 0x43, 0xf0, 0x06, 0xd9, 0x4d, 0x86, 0x59, 0x47, 0xe1, 0xbc, 0x4f, 0x18, 0x69, 0x48, 0x1d, + 0x28, 0x8c, 0x93, 0x7e, 0xb6, 0x27, 0xfc, 0x6c, 0xcf, 0x9d, 0xf2, 0x33, 0xb3, 0xef, 0x2c, 0xd5, + 0x59, 0x0a, 0xbe, 0x1a, 0x06, 0x90, 0x8d, 0x8e, 0x4d, 0x78, 0xe7, 0x2e, 0x8b, 0x25, 0x8a, 0x3b, + 0x07, 0xfd, 0xe6, 0x56, 0xdf, 0xca, 0x97, 0x0b, 0x7d, 0xab, 0x8b, 0x90, 0x58, 0xb7, 0xca, 0xbd, + 0xe4, 0xfb, 0x00, 0xf3, 0x92, 0xfa, 0x9f, 0x5e, 0xd8, 0x33, 0x1f, 0xc5, 0x6c, 0xea, 0x37, 0x09, + 0x1c, 0x32, 0x58, 0xed, 0x4b, 0x06, 0xe7, 0xd7, 0x4a, 0xcf, 0xf4, 0x91, 0xdd, 0x57, 0x03, 0xf6, + 0x21, 0xef, 0x4d, 0x98, 0xc6, 0x57, 0x20, 0xc6, 0xb6, 0x10, 0x6e, 0x6b, 0xb0, 0xb9, 0x97, 0xd8, + 0x13, 0x3b, 0x58, 0xb6, 0xed, 0x36, 0x37, 0x36, 0x64, 0xd8, 0x72, 0xff, 0xc6, 0x45, 0x18, 0xd7, + 0xf4, 0x1a, 0xb5, 0x33, 0x37, 0xd9, 0x92, 0x26, 0x4e, 0x5f, 0xf7, 0xf0, 0xcc, 0xbf, 0xce, 0x0a, + 0x9e, 0xc5, 0x1d, 0x54, 0x5a, 0x7d, 0xe5, 0x77, 0x03, 0x1f, 0x5e, 0x1d, 0xa3, 0xeb, 0xd7, 0x85, + 0x99, 0xf9, 0x99, 0x8b, 0x4e, 0x18, 0x93, 0x0b, 0xd7, 0x7d, 0x61, 0x06, 0x8f, 0x0a, 0x88, 0x87, + 0x5d, 0xf4, 0xc5, 0x00, 0x1c, 0x83, 0x08, 0xef, 0x48, 0x72, 0xc2, 0x37, 0x88, 0x14, 0x82, 0x35, + 0x18, 0xa3, 0x92, 0xe2, 0x9a, 0x44, 0xdd, 0xea, 0xc3, 0x10, 0xa3, 0x32, 0x9a, 0xe5, 0xfb, 0xd0, + 0x7c, 0x84, 0x07, 0x60, 0x00, 0xc3, 0x18, 0x2f, 0x56, 0xed, 0x2d, 0x47, 0xc9, 0xa6, 0xf8, 0x0e, + 0x32, 0xeb, 0xd3, 0xb4, 0x79, 0x00, 0x46, 0x90, 0x2b, 0xda, 0x33, 0x3e, 0x6a, 0x1e, 0x1a, 0x5e, + 0x54, 0x78, 0x09, 0x26, 0x3d, 0x53, 0x80, 0xeb, 0x7e, 0x3a, 0xe3, 0x17, 0x29, 0x06, 0xc7, 0x7e, + 0x21, 0xf5, 0x64, 0xa2, 0x44, 0x7d, 0x1c, 0xf7, 0x1b, 0x2e, 0x3a, 0xf7, 0x14, 0x04, 0xee, 0xb3, + 0xae, 0x82, 0x0d, 0x43, 0x4b, 0xbf, 0x0e, 0x38, 0xdb, 0x6e, 0x2f, 0x69, 0x26, 0xb9, 0xab, 0x36, + 0x9b, 0x4e, 0x7e, 0xcf, 0x67, 0x20, 0xae, 0xb6, 0xdb, 0x4a, 0x43, 0x14, 0x3f, 0x69, 0xe2, 0x9a, + 0x0f, 0xc9, 0x31, 0x96, 0x33, 0x68, 0x4e, 0x8e, 0xa9, 0xbd, 0x36, 0xd2, 0x9f, 0x0b, 0xc0, 0xe8, + 0x2d, 0x95, 0x37, 0xb4, 0xd4, 0xd7, 0x50, 0x68, 0xa0, 0x67, 0xbc, 0xb7, 0x87, 0x74, 0xbb, 0xf3, + 0xd0, 0xa4, 0x56, 0xa6, 0x13, 0xc2, 0xb8, 0xab, 0x36, 0x0e, 0x38, 0xd9, 0x07, 0x01, 0x7a, 0x4b, + 0x6d, 0xe0, 0x1b, 0x10, 0xd3, 0xf4, 0x2d, 0x62, 0x6a, 0x36, 0x43, 0x1c, 0x92, 0x97, 0x96, 0xc3, + 0xef, 0x3c, 0x40, 0x89, 0x5e, 0xd6, 0x0c, 0x35, 0x90, 0x28, 0x31, 0x81, 0x7e, 0x4b, 0x6d, 0xe4, + 0x4e, 0x42, 0xd4, 0x24, 0x0d, 0x96, 0x3a, 0xc7, 0x56, 0x63, 0x27, 0x93, 0x2b, 0x7c, 0x69, 0xe6, + 0x22, 0x5b, 0x8d, 0xfb, 0x92, 0x4f, 0xd3, 0x4d, 0x98, 0xca, 0xb6, 0xdb, 0xb2, 0xd1, 0x24, 0xd9, + 0x8e, 0xbd, 0xe5, 0x66, 0x7b, 0x1f, 0x85, 0x51, 0xd3, 0x68, 0x12, 0xc5, 0xbd, 0xec, 0x16, 0xa1, + 0x9f, 0x45, 0xea, 0x5e, 0x8d, 0x39, 0x89, 0xae, 0x4f, 0x7e, 0x0d, 0x88, 0x63, 0x14, 0xeb, 0xe9, + 0x7f, 0x8c, 0x60, 0x92, 0xe5, 0xe0, 0xfa, 0x1a, 0x5b, 0x86, 0x71, 0x2a, 0x02, 0xd6, 0xa0, 0xda, + 0x71, 0x17, 0xb3, 0xf4, 0x5e, 0x19, 0xf4, 0xf7, 0x53, 0x08, 0xc1, 0x29, 0xc6, 0x2f, 0x40, 0xd8, + 0x36, 0xee, 0x10, 0xfd, 0x09, 0x7b, 0x46, 0xb7, 0x01, 0x06, 0x9f, 0x3b, 0x0a, 0x31, 0xda, 0xb2, + 0xa3, 0xe6, 0x51, 0x61, 0x88, 0x39, 0x5c, 0x7a, 0x2b, 0x00, 0x92, 0x4c, 0x2c, 0x7f, 0xb7, 0x73, + 0x00, 0x1b, 0xaa, 0xa5, 0xd5, 0xbc, 0x7d, 0x3e, 0xbd, 0xdf, 0xcd, 0x17, 0xf7, 0x8e, 0xd5, 0xf2, + 0x88, 0x3c, 0xb6, 0xe1, 0x5e, 0xb8, 0xba, 0x0e, 0x71, 0x31, 0x47, 0x38, 0x95, 0xc0, 0xc0, 0x5b, + 0x75, 0xfd, 0xd7, 0xa0, 0x7a, 0x79, 0x43, 0x02, 0x99, 0xd1, 0xba, 0x05, 0x93, 0xde, 0xb9, 0xca, + 0x09, 0x72, 0xc3, 0xfe, 0xe9, 0x27, 0xb8, 0x90, 0xe3, 0x12, 0x9d, 0xf0, 0x2c, 0xb8, 0x14, 0x70, + 0x3f, 0xe6, 0x38, 0x29, 0x56, 0x7f, 0xe2, 0x5c, 0xc6, 0xc8, 0xb2, 0xc7, 0xaf, 0x5c, 0xfe, 0x9c, + 0x04, 0xe0, 0xc9, 0xd8, 0x6a, 0xbd, 0xee, 0x5c, 0x53, 0x18, 0x63, 0x25, 0xd9, 0x7a, 0xdd, 0xc4, + 0x29, 0x88, 0xf3, 0x6a, 0x11, 0xf7, 0xe1, 0x17, 0x30, 0x38, 0x0a, 0x8f, 0xe4, 0xec, 0xd1, 0x8b, + 0xe0, 0xf7, 0xac, 0x17, 0xa1, 0x8f, 0xa8, 0x17, 0x09, 0x88, 0xd3, 0x96, 0x9d, 0x98, 0x7e, 0xfa, + 0x47, 0x03, 0x30, 0xe1, 0xb9, 0x5d, 0x20, 0x4e, 0x9e, 0x45, 0xd2, 0xb9, 0xca, 0xc6, 0xcf, 0xf3, + 0xfc, 0xd1, 0xfe, 0x17, 0x13, 0xfc, 0x6c, 0x72, 0x6f, 0x23, 0xf4, 0x8a, 0xf1, 0xb3, 0x30, 0xee, + 0x5c, 0xe7, 0xe0, 0xef, 0x6f, 0x39, 0xb6, 0x4e, 0xdc, 0x29, 0xa6, 0x66, 0x21, 0x7e, 0x0a, 0x44, + 0xde, 0x98, 0xc2, 0x4c, 0x00, 0x7e, 0x55, 0x05, 0x78, 0x11, 0x5d, 0xfe, 0xf1, 0x73, 0xee, 0xbd, + 0x14, 0xab, 0xb3, 0xc1, 0x81, 0x42, 0xe2, 0x12, 0x0e, 0x2b, 0xae, 0x74, 0x36, 0x18, 0xdc, 0xb3, + 0x90, 0x70, 0x92, 0xbe, 0xc4, 0x05, 0x97, 0xb0, 0x17, 0x4c, 0x3c, 0x6b, 0x93, 0x9b, 0x80, 0x71, + 0x31, 0x44, 0xc1, 0x8d, 0xaf, 0x21, 0xc0, 0xce, 0xe9, 0xf1, 0x93, 0xdc, 0x03, 0x41, 0xdf, 0x8f, + 0x7b, 0x20, 0xe5, 0x41, 0xf7, 0x40, 0x02, 0x1f, 0x99, 0xdd, 0x3d, 0x8a, 0xb9, 0x43, 0x20, 0x6e, + 0x22, 0xb0, 0x75, 0xd3, 0x19, 0xdc, 0xfd, 0x00, 0x8c, 0xd3, 0xcd, 0x9e, 0xed, 0xa1, 0x22, 0x4b, + 0x2d, 0xc8, 0xb7, 0xa2, 0x61, 0x4b, 0x3b, 0x05, 0xc1, 0xf3, 0x10, 0xef, 0x58, 0xd4, 0x55, 0x27, + 0x0d, 0x4d, 0x27, 0x75, 0x11, 0x7f, 0xe2, 0x0e, 0x64, 0x26, 0x42, 0x7d, 0xb4, 0x33, 0x6c, 0xfa, + 0x52, 0xa0, 0x45, 0x0e, 0x43, 0xa9, 0xd7, 0x75, 0xeb, 0x80, 0x83, 0x0c, 0x0a, 0x72, 0xe5, 0x53, + 0x0f, 0xbb, 0xe8, 0x45, 0x78, 0x01, 0x42, 0xb4, 0x7b, 0x99, 0x73, 0x70, 0x16, 0x80, 0xf5, 0x6c, + 0x3e, 0x98, 0xd5, 0x77, 0x21, 0xe1, 0x6f, 0x1b, 0x26, 0x18, 0xdd, 0xf9, 0xe8, 0x62, 0xa9, 0x92, + 0x3a, 0x73, 0xf1, 0xc2, 0xc7, 0x72, 0x69, 0x38, 0xc2, 0x5c, 0x32, 0x6e, 0x6c, 0x7a, 0x86, 0xbc, + 0x67, 0x66, 0xbf, 0x0e, 0xc7, 0xfd, 0x99, 0xd6, 0x32, 0x69, 0x10, 0x93, 0x7a, 0x06, 0x8c, 0x1f, + 0xb2, 0xc8, 0x63, 0xfe, 0xfe, 0xdc, 0x50, 0x60, 0xb4, 0xe8, 0x62, 0x92, 0xf4, 0xb7, 0xe9, 0x7b, + 0x56, 0xf0, 0x22, 0x00, 0x4f, 0x2a, 0x32, 0x6a, 0xea, 0x41, 0x92, 0x18, 0x63, 0x69, 0x77, 0x14, + 0x10, 0xe7, 0x60, 0xb2, 0x87, 0xa6, 0x68, 0xba, 0xa5, 0xd5, 0xc9, 0x01, 0xf1, 0x93, 0x09, 0x17, + 0xbb, 0xc8, 0xc0, 0xf1, 0x2c, 0x44, 0xd8, 0xcb, 0x63, 0xb5, 0x03, 0x9c, 0x60, 0x01, 0x95, 0x4b, + 0x42, 0x62, 0x5b, 0x1f, 0xc8, 0xde, 0xb0, 0x9b, 0x33, 0x11, 0x97, 0x89, 0x6d, 0xee, 0xe6, 0xd4, + 0xda, 0x9d, 0xb5, 0x46, 0x03, 0x5f, 0x82, 0xf1, 0x0d, 0xd5, 0x12, 0x27, 0x25, 0xdb, 0x62, 0x7c, + 0xe3, 0xec, 0x0a, 0x5b, 0x60, 0xfe, 0xa2, 0x13, 0x78, 0x0c, 0x64, 0x46, 0xe4, 0x38, 0x85, 0x2b, + 0x0a, 0x30, 0xfc, 0x3c, 0xc4, 0x5b, 0xea, 0x4e, 0x0f, 0x8d, 0x6b, 0x9b, 0x08, 0xad, 0xb6, 0xd4, + 0x1d, 0x07, 0xd0, 0x0d, 0xad, 0xfe, 0x51, 0x08, 0x26, 0x58, 0xcb, 0x3c, 0xcc, 0xc4, 0x38, 0xfb, + 0x63, 0x88, 0x9a, 0x0e, 0xb6, 0xb9, 0xab, 0xb8, 0xaf, 0x5b, 0x99, 0x7d, 0x21, 0xcf, 0xd7, 0xcc, + 0x1f, 0x94, 0x47, 0xe4, 0xe0, 0xc5, 0x9d, 0x1d, 0x79, 0x7c, 0x53, 0xb5, 0xc9, 0x5d, 0x75, 0xf7, + 0x2c, 0x7b, 0x2b, 0x53, 0x9e, 0xa8, 0x19, 0xba, 0x4e, 0x6a, 0xf6, 0xd9, 0x86, 0xaa, 0x35, 0x3b, + 0x26, 0x91, 0x13, 0x26, 0x69, 0x74, 0x2c, 0x52, 0x3f, 0xcb, 0xe3, 0xe1, 0xf2, 0x38, 0x25, 0xad, + 0x51, 0x93, 0xe7, 0xec, 0xc2, 0xce, 0x8e, 0x7c, 0xa4, 0xf7, 0xc9, 0x9f, 0x96, 0x3b, 0x5b, 0x33, + 0xea, 0xc4, 0xa2, 0xce, 0x04, 0xeb, 0xc3, 0x9a, 0x8e, 0xbb, 0x08, 0x26, 0x78, 0x7f, 0x6a, 0x8e, + 0x41, 0x3d, 0x1d, 0x61, 0x41, 0xcc, 0x9f, 0x74, 0x3b, 0xf4, 0x43, 0x6f, 0xa2, 0xcd, 0x34, 0x31, + 0x6b, 0x7f, 0x99, 0x7d, 0xa2, 0x8e, 0xa2, 0xf7, 0x0e, 0xc4, 0xe8, 0xe0, 0xac, 0x14, 0xd6, 0xd5, + 0x9e, 0xe9, 0x7f, 0x01, 0x62, 0x7a, 0xa7, 0xa5, 0x30, 0x92, 0x6e, 0xfc, 0x19, 0x7f, 0xad, 0x8b, + 0xd0, 0x9c, 0xd3, 0xf9, 0x50, 0x26, 0x30, 0x1d, 0x95, 0x41, 0xef, 0xb4, 0x64, 0x0e, 0x85, 0x5f, + 0x80, 0x89, 0x36, 0x31, 0x15, 0x3a, 0x66, 0x5b, 0x6b, 0x11, 0xa3, 0x63, 0x8b, 0xd8, 0xf3, 0x84, + 0x83, 0x13, 0xc9, 0x84, 0xa6, 0xdf, 0xfd, 0xfd, 0x67, 0xe4, 0xf1, 0x36, 0x31, 0xab, 0xe6, 0x6e, + 0x95, 0x43, 0xe1, 0x12, 0xf4, 0x3a, 0xaf, 0x88, 0x17, 0xfc, 0x38, 0x43, 0x43, 0xa9, 0xe0, 0x99, + 0xf1, 0xdc, 0xb4, 0x1b, 0xb4, 0xee, 0x77, 0xae, 0x0e, 0xb9, 0x78, 0xfc, 0xa1, 0xbd, 0x3c, 0xc5, + 0xc2, 0x97, 0x20, 0xba, 0xa1, 0xd6, 0xee, 0x28, 0x46, 0xc3, 0x31, 0x64, 0xfb, 0xb3, 0xb2, 0xbd, + 0x7a, 0x2b, 0x8f, 0x6e, 0xf0, 0x3f, 0xae, 0x24, 0x3e, 0xbc, 0x1a, 0x9b, 0x9b, 0xb9, 0xe4, 0xde, + 0x5e, 0xbc, 0x07, 0xb1, 0x55, 0x4a, 0xbf, 0xc6, 0x93, 0x00, 0x4e, 0xc0, 0x58, 0xef, 0x21, 0x02, + 0xaa, 0x62, 0x48, 0xee, 0x15, 0x0c, 0xbe, 0xc4, 0x4e, 0x1d, 0x3e, 0xdb, 0x24, 0x7a, 0xdd, 0x93, + 0x38, 0xb0, 0x77, 0xff, 0xae, 0x52, 0x08, 0xd6, 0x86, 0x0c, 0xb6, 0xfb, 0x77, 0xfa, 0x3d, 0x04, + 0x09, 0xde, 0x3e, 0xd5, 0xf0, 0x45, 0xd5, 0x56, 0x71, 0xd6, 0xbd, 0xa6, 0x8f, 0x06, 0x3e, 0xc8, + 0xe7, 0x07, 0xf7, 0xde, 0xce, 0x77, 0xdf, 0x37, 0x9a, 0x87, 0x08, 0xeb, 0x8b, 0xe3, 0x36, 0x27, + 0x07, 0x92, 0xe0, 0xbd, 0x11, 0x90, 0xdf, 0xcb, 0x73, 0x14, 0x5f, 0x42, 0x00, 0xbd, 0xf1, 0xf5, + 0x00, 0x91, 0x97, 0x4b, 0x9f, 0xa0, 0x56, 0xb9, 0x4e, 0x79, 0xa9, 0xdb, 0xe2, 0xe4, 0xe5, 0xe4, + 0x20, 0x1e, 0x55, 0x1c, 0x20, 0xb9, 0x07, 0xdf, 0x9f, 0x93, 0x14, 0xdc, 0x9b, 0x93, 0xf4, 0x2c, + 0x24, 0xda, 0x26, 0xd9, 0xd6, 0x8c, 0x8e, 0x25, 0xe4, 0x20, 0xcc, 0x08, 0xa7, 0x94, 0xf3, 0xfb, + 0x8f, 0x11, 0xc4, 0x4a, 0x64, 0xc7, 0x5e, 0x36, 0xda, 0xe2, 0xce, 0x70, 0xef, 0x75, 0xd5, 0xc4, + 0x1e, 0x15, 0xf2, 0x40, 0x5a, 0xe2, 0x61, 0xd5, 0x1b, 0x30, 0xa1, 0x93, 0x1d, 0x7b, 0xcb, 0x68, + 0x33, 0x9b, 0x91, 0x58, 0x4e, 0x90, 0xbb, 0x7f, 0x6f, 0x29, 0xb6, 0xb3, 0xbc, 0xde, 0xe3, 0xa1, + 0x27, 0x04, 0xaa, 0xa8, 0xc1, 0x9f, 0x86, 0x31, 0xb6, 0x22, 0x36, 0xd4, 0x1a, 0x11, 0xa1, 0x88, + 0xe1, 0x5b, 0xd4, 0xa9, 0x77, 0xee, 0x4d, 0x3a, 0x77, 0x8f, 0x5c, 0x4c, 0xef, 0xd3, 0x2a, 0x6e, + 0x61, 0xfa, 0xab, 0x21, 0x98, 0xa0, 0x13, 0x46, 0xab, 0xb1, 0x50, 0x0c, 0x1b, 0xed, 0x55, 0x08, + 0xab, 0xb6, 0x6d, 0xee, 0x97, 0xe5, 0xc6, 0x00, 0xb3, 0xb6, 0xcd, 0x83, 0x0a, 0xd0, 0xcb, 0x72, + 0x93, 0x39, 0x1a, 0xce, 0xc1, 0xa8, 0xd5, 0xd9, 0xd0, 0x89, 0xed, 0x28, 0xd6, 0xf1, 0x3d, 0x83, + 0xae, 0xb0, 0x7a, 0x46, 0x20, 0xd6, 0x3b, 0x09, 0x0a, 0xc8, 0x0e, 0x22, 0x5e, 0x80, 0x51, 0xc1, + 0x05, 0x91, 0xa7, 0x9d, 0xdc, 0x9f, 0xe9, 0xb2, 0x03, 0xea, 0x79, 0x85, 0x25, 0xc6, 0x1a, 0xce, + 0x0c, 0x78, 0x83, 0xd3, 0x33, 0x52, 0xdf, 0x9b, 0x15, 0x53, 0x6f, 0x3d, 0x40, 0x21, 0x08, 0x78, + 0xaf, 0xd3, 0x7f, 0x5f, 0x1e, 0xae, 0xf8, 0x33, 0xf4, 0xe1, 0xd5, 0xb1, 0xf9, 0x19, 0x96, 0xd9, + 0x3a, 0x33, 0xf7, 0xb0, 0x8b, 0xbe, 0x8e, 0xe0, 0x08, 0x8c, 0x72, 0x0e, 0x58, 0xb9, 0x98, 0xcb, + 0x2c, 0x29, 0x04, 0x4d, 0x88, 0xd2, 0x71, 0xa5, 0x96, 0x8d, 0x76, 0xe6, 0x35, 0xf8, 0x41, 0x78, + 0x1a, 0x4e, 0x8b, 0xa1, 0xcd, 0xf6, 0xa9, 0xd3, 0xac, 0xd6, 0xde, 0x5e, 0x98, 0xa5, 0x1f, 0x07, + 0x00, 0x5d, 0xe2, 0x40, 0x18, 0xe2, 0x0e, 0x10, 0x53, 0xd0, 0x40, 0x0a, 0x41, 0x1a, 0xc6, 0x8a, + 0x8e, 0x22, 0xe4, 0x0e, 0xc3, 0xa4, 0x03, 0xe0, 0x6a, 0x87, 0x84, 0xe0, 0x18, 0x00, 0x15, 0xb5, + 0xb6, 0xd1, 0xb1, 0x09, 0xed, 0x2c, 0x17, 0xb1, 0x14, 0x3a, 0x8f, 0xe0, 0x10, 0x44, 0x38, 0x4f, + 0xae, 0x83, 0xc3, 0x76, 0x29, 0x94, 0x7e, 0x1c, 0x82, 0x23, 0x4b, 0x86, 0x79, 0x57, 0x35, 0xeb, + 0x65, 0xd3, 0xd8, 0xd9, 0xf5, 0x1c, 0x79, 0x7e, 0x06, 0x0e, 0xdf, 0xdd, 0x62, 0xc6, 0x8b, 0xc6, + 0xce, 0x74, 0xfb, 0x72, 0x85, 0x9e, 0x77, 0x93, 0xa8, 0x06, 0xe4, 0x0b, 0xbd, 0xec, 0x59, 0xea, + 0xa7, 0x18, 0x95, 0x15, 0x46, 0xc4, 0x49, 0xe8, 0xc1, 0xcb, 0x80, 0xfd, 0xc4, 0x0d, 0x53, 0xe8, + 0xdf, 0x78, 0x2e, 0xd9, 0x7b, 0x5a, 0x99, 0x9f, 0x2b, 0xf4, 0xc8, 0xca, 0x92, 0x97, 0x18, 0xc5, + 0xc1, 0x2f, 0xc3, 0x21, 0x6a, 0x84, 0x88, 0x4d, 0x57, 0x51, 0x6d, 0x9b, 0xb4, 0xda, 0xb6, 0x25, + 0x76, 0xb0, 0x04, 0xdb, 0xfa, 0x7a, 0xdb, 0x1e, 0x6e, 0xa9, 0x3b, 0x79, 0x0e, 0x9a, 0x15, 0x90, + 0x38, 0x07, 0x58, 0x60, 0x3b, 0x4f, 0xd6, 0xd0, 0x1d, 0x90, 0x5d, 0xb5, 0xcf, 0x4d, 0x7d, 0xad, + 0x8b, 0x42, 0xf3, 0xe7, 0xcf, 0x9f, 0xf7, 0xee, 0x82, 0x93, 0x3d, 0x70, 0x67, 0x27, 0x7c, 0x09, + 0x26, 0x74, 0xc3, 0x9f, 0xcf, 0x33, 0xfc, 0xa2, 0x5f, 0x42, 0x37, 0x7c, 0x49, 0x41, 0x6b, 0x30, + 0x6e, 0x37, 0xad, 0x1e, 0x05, 0x91, 0x37, 0x70, 0x40, 0x06, 0x89, 0xcf, 0x75, 0x8c, 0xdb, 0x9e, + 0xca, 0x2b, 0x95, 0xf7, 0xba, 0x68, 0x0d, 0x4e, 0xc0, 0xe1, 0xca, 0x1d, 0xad, 0x9d, 0x72, 0x6e, + 0xb3, 0xa5, 0xda, 0xaa, 0x69, 0x69, 0xfa, 0x26, 0xa6, 0xf6, 0x18, 0x9c, 0x83, 0x33, 0x4b, 0xdc, + 0x48, 0x49, 0x6d, 0xa9, 0x7a, 0xbd, 0xa9, 0xe9, 0x9b, 0xec, 0x91, 0x89, 0x8e, 0x93, 0x4e, 0xd0, + 0x1b, 0x28, 0x66, 0x47, 0xfc, 0xb3, 0x70, 0xd4, 0xd7, 0x4b, 0xca, 0xb0, 0xc1, 0x39, 0xba, 0x2f, + 0x7c, 0xab, 0xeb, 0xe6, 0xe8, 0xbe, 0x81, 0x20, 0xb1, 0x6c, 0x58, 0x76, 0x91, 0x1d, 0x5a, 0x36, + 0x34, 0x62, 0xe2, 0xa7, 0x20, 0xa0, 0xb5, 0x9d, 0x63, 0x30, 0xd7, 0x32, 0x31, 0x03, 0x6d, 0x3a, + 0x90, 0x80, 0xd6, 0xc6, 0x17, 0x3d, 0xaf, 0x44, 0xf3, 0x23, 0x95, 0xa3, 0xfe, 0x2b, 0x52, 0x02, + 0x81, 0xa5, 0xfc, 0xb9, 0xa0, 0xd4, 0xf8, 0x75, 0xf3, 0x9e, 0x0d, 0x53, 0xd1, 0xda, 0x7b, 0x7c, + 0x8b, 0x2f, 0x20, 0x91, 0x17, 0x41, 0xa7, 0x8c, 0xa7, 0x47, 0x73, 0x10, 0x55, 0xf5, 0x5d, 0x3a, + 0xb4, 0xc6, 0x01, 0xf6, 0xfd, 0xa8, 0xaa, 0xef, 0x16, 0x75, 0xbb, 0x81, 0x9f, 0x83, 0x10, 0x03, + 0xe7, 0xfd, 0xeb, 0x9d, 0xf2, 0x8b, 0x33, 0xf3, 0xe5, 0x11, 0x99, 0xd5, 0xe7, 0x4e, 0x80, 0xe4, + 0x4e, 0xd2, 0xfd, 0x5c, 0x9e, 0xbf, 0x40, 0x80, 0xdd, 0x6e, 0xad, 0x99, 0xce, 0xa5, 0x3d, 0xa7, + 0x09, 0x34, 0xbc, 0x09, 0xfc, 0x0c, 0x04, 0xdb, 0x46, 0x7d, 0x48, 0x4f, 0x68, 0x35, 0xbe, 0x01, + 0xa3, 0xc2, 0x35, 0x60, 0xd3, 0xe3, 0x89, 0xee, 0xb7, 0x72, 0xe7, 0xf1, 0xb3, 0x28, 0x9c, 0x0c, + 0x8e, 0xa0, 0x20, 0xf5, 0x33, 0xb6, 0x9d, 0x0b, 0x6c, 0x81, 0x6d, 0x5d, 0x1c, 0xba, 0x0f, 0x6a, + 0x31, 0xb0, 0xad, 0x0f, 0x1d, 0xb9, 0xe3, 0x8d, 0x98, 0x30, 0xc5, 0x97, 0x78, 0xd5, 0xdc, 0x24, + 0xf6, 0x7c, 0x6e, 0xd7, 0x26, 0x59, 0x4b, 0xc7, 0x19, 0x18, 0x53, 0x2d, 0x45, 0xef, 0xb4, 0x36, + 0x88, 0x29, 0x26, 0xb3, 0xdf, 0x8f, 0x95, 0xa3, 0xaa, 0x55, 0x62, 0xd5, 0xf8, 0x69, 0x67, 0x39, + 0x0f, 0xf5, 0xc3, 0x7d, 0xe7, 0x3b, 0x13, 0x62, 0x75, 0xf7, 0xc6, 0x20, 0xd3, 0xb6, 0xaf, 0xcd, + 0x05, 0xa7, 0xcd, 0xd9, 0xbd, 0x6d, 0x4e, 0xb2, 0x54, 0x88, 0x0c, 0x70, 0x5a, 0x67, 0xee, 0xdf, + 0x0f, 0x79, 0xda, 0x3d, 0xed, 0x6f, 0xd7, 0x7b, 0x16, 0x3a, 0xa8, 0xd5, 0x9a, 0xaf, 0xd5, 0x62, + 0x79, 0x7b, 0x81, 0x05, 0xa4, 0x9e, 0x86, 0x51, 0xc7, 0xea, 0xe0, 0x62, 0x1e, 0x13, 0xba, 0xbd, + 0x83, 0x64, 0xa7, 0xa6, 0xd7, 0x54, 0x70, 0x48, 0x53, 0xb4, 0x91, 0x9f, 0x09, 0x43, 0xcc, 0xd3, + 0x0a, 0x5e, 0x03, 0x49, 0xb5, 0xf4, 0xf9, 0x8d, 0x5d, 0x9b, 0x28, 0xa6, 0xcd, 0xca, 0xf6, 0x89, + 0x5a, 0x0c, 0x90, 0x02, 0xf5, 0x47, 0x1d, 0x6c, 0x99, 0x23, 0xe3, 0x32, 0x4c, 0xd2, 0xdd, 0x8c, + 0xed, 0x5a, 0x2e, 0xc5, 0xe0, 0x41, 0x14, 0x9d, 0xd1, 0x52, 0x8a, 0x14, 0x9d, 0xfe, 0xed, 0x50, + 0xe4, 0x5d, 0x5c, 0xf0, 0x75, 0x31, 0x74, 0x10, 0xc1, 0x05, 0x7f, 0x17, 0x17, 0x3c, 0x5d, 0xbc, + 0xf2, 0xcd, 0xc0, 0xc3, 0x2e, 0xfa, 0x20, 0x00, 0x5f, 0x74, 0x5e, 0x72, 0xf8, 0x09, 0x04, 0xff, + 0x1f, 0x82, 0x8f, 0xed, 0x65, 0xc5, 0xfc, 0xe1, 0xea, 0x5d, 0xe3, 0xec, 0x5a, 0xcd, 0x26, 0x76, + 0x2a, 0x5b, 0x49, 0x55, 0xda, 0xa4, 0xa6, 0x35, 0xb4, 0x1a, 0x64, 0x06, 0x0c, 0x72, 0xfe, 0x30, + 0x1d, 0x44, 0x4a, 0xd8, 0x79, 0x5e, 0xd8, 0x3d, 0xdd, 0x9f, 0x3f, 0xb2, 0x64, 0x74, 0xcc, 0xbd, + 0x74, 0xdd, 0x47, 0x1c, 0xa0, 0x0e, 0xe3, 0xd9, 0x4a, 0x29, 0x75, 0xce, 0x21, 0x37, 0x5f, 0x81, + 0x64, 0x7f, 0xe7, 0x66, 0x5d, 0x65, 0x84, 0x63, 0x7b, 0x7a, 0x33, 0x2b, 0x34, 0x83, 0xa1, 0x2d, + 0xec, 0x83, 0xf6, 0x1a, 0x4c, 0xb1, 0x50, 0x42, 0x2a, 0x5b, 0x6f, 0x69, 0xba, 0x66, 0xd9, 0x2c, + 0x65, 0x6a, 0xbe, 0x08, 0x47, 0xf6, 0xb4, 0xc5, 0x73, 0x2d, 0x8f, 0xee, 0x6d, 0x87, 0x57, 0x1c, + 0xd9, 0xd3, 0x0a, 0xcf, 0x3e, 0x7e, 0x1a, 0x12, 0xa2, 0xc0, 0x9b, 0x7e, 0xcc, 0x32, 0x21, 0xbc, + 0x87, 0xb1, 0x48, 0x0a, 0xa4, 0x73, 0x90, 0x28, 0xbb, 0x47, 0xfc, 0x6c, 0x09, 0x39, 0x0f, 0x61, + 0xbe, 0xf1, 0x73, 0x93, 0x22, 0xe9, 0x35, 0x27, 0xbe, 0xcc, 0xcd, 0x09, 0x91, 0x74, 0x24, 0x73, + 0xc0, 0xf4, 0x36, 0x24, 0xfc, 0xc9, 0x21, 0xb8, 0x0e, 0xa3, 0x4e, 0x62, 0x0a, 0xa7, 0x72, 0xdd, + 0x4b, 0x65, 0xda, 0x9f, 0x6b, 0x24, 0xf9, 0x72, 0x8d, 0x3e, 0x17, 0x38, 0x28, 0xc3, 0xd9, 0x21, + 0x9d, 0xde, 0x84, 0xc9, 0x92, 0xf3, 0xc0, 0xa1, 0x6c, 0x34, 0x9d, 0xb8, 0x9c, 0xe7, 0xf1, 0x44, + 0xb4, 0xe7, 0xc9, 0x52, 0xcf, 0x93, 0x88, 0x67, 0x20, 0x64, 0x1a, 0x4d, 0xd2, 0x97, 0x1c, 0xd0, + 0xbb, 0x67, 0xca, 0x1e, 0x42, 0xa5, 0x10, 0xe9, 0x12, 0xc4, 0x29, 0x7d, 0x3a, 0x34, 0xc7, 0xba, + 0xe7, 0x97, 0x6f, 0xf8, 0xe0, 0xce, 0x0c, 0x18, 0x9c, 0xf3, 0xf9, 0x76, 0xc0, 0xdb, 0x75, 0x8e, + 0x96, 0xbe, 0x1f, 0x80, 0x29, 0xb7, 0xe7, 0x3c, 0x24, 0xc9, 0xe8, 0xfe, 0x0d, 0x04, 0xd8, 0xed, + 0x1f, 0x0f, 0x75, 0xb7, 0xd4, 0xb6, 0xf0, 0x4e, 0x2f, 0xf7, 0x5b, 0xef, 0x7b, 0x09, 0xcc, 0xfa, + 0xd8, 0xb1, 0xaa, 0xb6, 0xb9, 0x59, 0xce, 0x32, 0x19, 0xe0, 0x2d, 0x7f, 0xff, 0xde, 0x72, 0xfb, + 0x27, 0x4b, 0x7a, 0x1f, 0x5a, 0xf2, 0x35, 0x38, 0x3c, 0x90, 0xd4, 0x00, 0xab, 0x7d, 0xce, 0xff, + 0x1e, 0xd5, 0x9e, 0xd8, 0x80, 0x87, 0x6f, 0x5e, 0x4f, 0xf6, 0x75, 0x88, 0x56, 0x34, 0x9b, 0xbf, + 0x8b, 0x99, 0x17, 0xb7, 0xc5, 0x9f, 0x24, 0x74, 0x38, 0x29, 0x9e, 0x1e, 0xf1, 0xc6, 0x0a, 0xd9, + 0x05, 0xba, 0x94, 0xff, 0xa1, 0x61, 0x96, 0x33, 0xe7, 0x7b, 0xe1, 0x37, 0xfd, 0x1a, 0x1c, 0x16, + 0xd7, 0xc7, 0x79, 0xd8, 0xd2, 0x15, 0xe7, 0xb5, 0x8f, 0x10, 0xba, 0x3c, 0xec, 0x79, 0xfa, 0xc4, + 0x63, 0x02, 0xf3, 0x78, 0xe5, 0xd7, 0x83, 0x30, 0xcd, 0x4f, 0x65, 0xaa, 0xa6, 0xaa, 0x5b, 0x0d, + 0xc3, 0x6c, 0xa9, 0x6e, 0x22, 0xf0, 0x6d, 0x38, 0xd1, 0x24, 0x9b, 0x6a, 0x6d, 0x57, 0x24, 0xb1, + 0x29, 0xb6, 0x0f, 0xe6, 0x80, 0x43, 0xc2, 0x24, 0xc7, 0x1d, 0x44, 0x1d, 0x7f, 0x1a, 0x4e, 0x8a, + 0xab, 0x41, 0xfb, 0x90, 0x1e, 0x1e, 0xdc, 0x3c, 0x2e, 0x90, 0x07, 0xd2, 0x56, 0xe1, 0x74, 0xdb, + 0x34, 0xda, 0xc4, 0x54, 0x6a, 0xaa, 0x9b, 0x7f, 0xd7, 0x4f, 0x7f, 0x78, 0x98, 0xfa, 0x14, 0x27, + 0x90, 0x57, 0x9d, 0x4c, 0xbd, 0xbe, 0x26, 0x08, 0x3c, 0xcd, 0x72, 0x4c, 0xcc, 0x6d, 0x32, 0xac, + 0x91, 0xe1, 0x81, 0xd6, 0x94, 0x43, 0x62, 0xbf, 0x66, 0x58, 0x0a, 0xd2, 0x5c, 0xee, 0x02, 0x9c, + 0x18, 0x48, 0xde, 0x6b, 0x31, 0x87, 0xc5, 0x42, 0x39, 0x2a, 0x42, 0x57, 0x62, 0xa9, 0xfc, 0xb1, + 0x08, 0x3c, 0x9f, 0x33, 0xec, 0x45, 0xd2, 0x20, 0xba, 0x45, 0x96, 0x9a, 0xc6, 0x5d, 0xe6, 0xbb, + 0xe5, 0x55, 0x9b, 0x6c, 0x1a, 0xa6, 0x46, 0xac, 0x3c, 0x23, 0xc1, 0x84, 0x5d, 0x87, 0x84, 0xea, + 0x7b, 0x63, 0x4d, 0xc8, 0xe0, 0x4a, 0xff, 0x71, 0xc7, 0x5e, 0x7a, 0xfe, 0xb7, 0xd9, 0x7a, 0x34, + 0xa9, 0x7f, 0xe2, 0xa7, 0xc9, 0xb2, 0x3b, 0x6b, 0x35, 0xa3, 0xa3, 0xdb, 0x4a, 0x4b, 0xd5, 0xd5, + 0x4d, 0xc2, 0x42, 0x3e, 0x5c, 0x1a, 0x9f, 0x7a, 0x82, 0x96, 0x38, 0xee, 0xaa, 0x8b, 0xea, 0x6b, + 0x6c, 0x52, 0xed, 0xaf, 0xa6, 0xed, 0xb5, 0x4d, 0xa3, 0xa1, 0xb1, 0x75, 0xc9, 0x6d, 0x2f, 0xf4, + 0xa4, 0xed, 0x95, 0x39, 0xee, 0x7e, 0xed, 0xb5, 0xfb, 0xab, 0xb1, 0x01, 0x53, 0xd6, 0x96, 0xd1, + 0x6e, 0x6b, 0xfa, 0xa6, 0xb2, 0xa9, 0x35, 0x6c, 0xa5, 0xa6, 0x9a, 0x75, 0x4b, 0xcc, 0x94, 0x27, + 0x68, 0xb0, 0x22, 0x90, 0xaf, 0x69, 0x0d, 0x3b, 0x4f, 0x51, 0xfd, 0x0d, 0x5a, 0xfd, 0xd5, 0x74, + 0x80, 0x0d, 0x4d, 0x57, 0xf5, 0x9a, 0xa6, 0x36, 0x15, 0xf1, 0x03, 0x37, 0xce, 0xeb, 0xa6, 0x4f, + 0xd0, 0xde, 0x92, 0x83, 0x5b, 0x11, 0xa8, 0xfe, 0xf6, 0x1a, 0xfd, 0xd5, 0x78, 0x05, 0x22, 0x16, + 0x51, 0xcd, 0xda, 0x96, 0xf0, 0x2c, 0xe7, 0x9f, 0x60, 0x4c, 0x0c, 0xde, 0x47, 0x58, 0xd0, 0xa0, + 0xd4, 0x1a, 0x4d, 0x6d, 0x73, 0xcb, 0x16, 0xd7, 0xfa, 0x9e, 0x80, 0xda, 0x12, 0x83, 0xf7, 0x53, + 0xe3, 0x34, 0x72, 0xc7, 0x60, 0xb2, 0xd1, 0x34, 0xee, 0x2a, 0x2c, 0x2c, 0xe1, 0x4c, 0x8f, 0x90, + 0x27, 0x9b, 0xf2, 0xcf, 0x02, 0xf0, 0xf1, 0x8f, 0xa0, 0xbf, 0x38, 0x07, 0xe1, 0xa6, 0xc1, 0xf3, + 0x99, 0xd1, 0x80, 0xc0, 0x52, 0x8f, 0x14, 0x9b, 0xb8, 0x3c, 0xf5, 0x5c, 0x66, 0xbf, 0x81, 0xb3, + 0x3c, 0x22, 0x73, 0x54, 0x7c, 0x01, 0xc6, 0xd8, 0x1f, 0x4a, 0xab, 0xa1, 0x1e, 0xb0, 0xec, 0x44, + 0x19, 0xe0, 0x6a, 0x43, 0xc5, 0x9f, 0x80, 0x71, 0x8e, 0xd4, 0x56, 0x4d, 0x5b, 0x27, 0xe6, 0x01, + 0x4b, 0x49, 0x9c, 0x01, 0x97, 0x39, 0x2c, 0x9e, 0x85, 0x48, 0xd3, 0xd8, 0x34, 0x3a, 0xf6, 0x01, + 0x0b, 0xb4, 0x80, 0xa2, 0x8d, 0xb1, 0xd3, 0x62, 0xc5, 0x24, 0x0d, 0x93, 0x88, 0x9f, 0xb2, 0x19, + 0xd2, 0x18, 0x03, 0x96, 0x39, 0x6c, 0xee, 0x10, 0xc4, 0xf7, 0x65, 0xf7, 0xb7, 0x03, 0x70, 0x7c, + 0x08, 0x8f, 0x70, 0x15, 0x92, 0xee, 0xed, 0xf4, 0x5e, 0xa5, 0xe2, 0xfb, 0xb9, 0xa1, 0xfd, 0x7a, + 0x31, 0xed, 0xbc, 0x50, 0xb0, 0x87, 0x2a, 0x01, 0x3c, 0x80, 0x1a, 0xe7, 0xfc, 0xec, 0x93, 0x4b, + 0xd0, 0x17, 0x13, 0x99, 0xb4, 0xfb, 0xab, 0x73, 0x3f, 0x8d, 0xe0, 0xd8, 0xde, 0x76, 0x1c, 0x36, + 0xec, 0x38, 0xd6, 0xeb, 0x1b, 0x0f, 0x50, 0x33, 0xb9, 0x28, 0xae, 0xd2, 0x93, 0xba, 0xa2, 0xf2, + 0xdf, 0xc9, 0xa2, 0x28, 0x22, 0x39, 0xb8, 0x69, 0x74, 0xea, 0x0d, 0xd3, 0xd0, 0xf9, 0x0f, 0xb3, + 0x71, 0x28, 0xe7, 0x49, 0x24, 0x6b, 0xb6, 0xa7, 0xd0, 0x99, 0x51, 0xcb, 0x56, 0x37, 0x35, 0x7d, + 0x33, 0x13, 0x6a, 0x9b, 0x46, 0x3d, 0x13, 0xb7, 0x8c, 0x86, 0xbd, 0xa1, 0xea, 0x77, 0x94, 0x16, + 0xa9, 0x65, 0x46, 0x1b, 0xa4, 0x6e, 0xaa, 0xad, 0xb6, 0x60, 0xfd, 0xd7, 0x03, 0xf0, 0xd4, 0x01, + 0x83, 0xc3, 0x3b, 0x80, 0xad, 0x8e, 0x38, 0x10, 0x77, 0x4e, 0x7e, 0x9c, 0xac, 0xb7, 0x0b, 0x4f, + 0xce, 0x28, 0xf7, 0xd4, 0xc8, 0x93, 0x00, 0x17, 0xf4, 0xde, 0x3c, 0x12, 0x8d, 0xb8, 0x70, 0x16, + 0x6d, 0x59, 0x9c, 0x6a, 0x79, 0x5b, 0x0e, 0x7d, 0xdf, 0x5b, 0x16, 0x8d, 0xf4, 0x5a, 0xbe, 0x72, + 0xf9, 0xc3, 0xab, 0xc1, 0x85, 0x99, 0x0b, 0x2c, 0xb5, 0xfd, 0x30, 0x48, 0x4e, 0xd8, 0x2a, 0x6f, + 0x6a, 0x36, 0x31, 0x35, 0x15, 0xa3, 0x05, 0x5a, 0x2c, 0x7e, 0x07, 0xcd, 0x53, 0x7c, 0xc1, 0xe7, + 0x81, 0xff, 0x79, 0x00, 0x9e, 0x79, 0x92, 0x7e, 0xed, 0xf3, 0x30, 0x8c, 0x2f, 0x03, 0x58, 0x24, + 0xfe, 0xd6, 0x21, 0xee, 0xb9, 0xac, 0x26, 0xac, 0xc1, 0x5c, 0x76, 0xc0, 0x85, 0x07, 0xe7, 0x53, + 0xe4, 0xf6, 0x1e, 0x74, 0xe3, 0x21, 0xd6, 0xbb, 0x8e, 0x6a, 0xe1, 0xac, 0xfb, 0x2b, 0x64, 0xc1, + 0x81, 0xa7, 0x2c, 0xcb, 0xb6, 0xdd, 0xee, 0x9d, 0xa4, 0x09, 0x37, 0xe4, 0xb3, 0xcc, 0x66, 0x15, + 0x88, 0x57, 0x7e, 0xd8, 0x79, 0xc5, 0xf4, 0xbd, 0x2e, 0x3a, 0x09, 0xc7, 0x01, 0xbb, 0xa3, 0xf5, + 0x24, 0x01, 0x33, 0x80, 0x87, 0x5d, 0xb4, 0x0a, 0xc7, 0x20, 0xc6, 0x09, 0xa6, 0x28, 0xc5, 0x24, + 0x38, 0x1d, 0x48, 0xed, 0x4d, 0x0f, 0x4e, 0x41, 0x9c, 0xa5, 0xff, 0xf1, 0xb4, 0x3f, 0x2b, 0x27, + 0xf9, 0x59, 0x22, 0x05, 0xd2, 0x5d, 0x04, 0x1f, 0xd1, 0x2a, 0xa0, 0x8b, 0x21, 0x7b, 0x43, 0xfb, + 0xa0, 0xf3, 0x72, 0x01, 0x85, 0x3f, 0x05, 0x09, 0xe7, 0xd5, 0x67, 0x85, 0x9d, 0x9c, 0x1e, 0xb0, + 0x66, 0x8f, 0x3b, 0xd0, 0x32, 0x05, 0x1e, 0xba, 0x1c, 0xbe, 0x3f, 0xb8, 0xf7, 0x43, 0x6c, 0x8c, + 0x8f, 0xdc, 0xfb, 0x59, 0x88, 0xf0, 0x9f, 0xa0, 0x3b, 0xa0, 0xd7, 0x02, 0x0a, 0x67, 0x20, 0xc4, + 0xde, 0x0a, 0x1f, 0xbe, 0xbd, 0x30, 0x98, 0xa1, 0x43, 0x7b, 0x38, 0x0a, 0x1f, 0xd1, 0x9a, 0xc1, + 0x2f, 0x81, 0x64, 0x89, 0x53, 0x0b, 0xc5, 0x36, 0xa8, 0x9d, 0x74, 0xd0, 0x92, 0x3f, 0x6e, 0xf1, + 0xe3, 0xb1, 0xaa, 0x91, 0x57, 0x4d, 0x1b, 0x57, 0x20, 0xc9, 0x08, 0xb4, 0x4d, 0xa3, 0x65, 0xb0, + 0xf3, 0x62, 0x65, 0xdb, 0x7d, 0x59, 0xe3, 0x80, 0xf1, 0x1f, 0xa5, 0x98, 0x65, 0x8a, 0x48, 0xb5, + 0xb2, 0xf7, 0x20, 0x07, 0x7b, 0xe2, 0x88, 0x12, 0xad, 0x6d, 0x91, 0xda, 0x1d, 0x27, 0x7e, 0x3f, + 0xec, 0x89, 0xa3, 0x2d, 0xa3, 0x9d, 0x17, 0xb0, 0x2c, 0x4d, 0x83, 0x22, 0xb7, 0xd4, 0x3b, 0x44, + 0x69, 0xab, 0xbb, 0xcc, 0xd6, 0x0c, 0x1f, 0x90, 0xa6, 0xb1, 0x65, 0xb4, 0x57, 0xd5, 0x3b, 0xa4, + 0xcc, 0xc1, 0x59, 0x86, 0x08, 0xa5, 0x61, 0x98, 0x75, 0x62, 0x1e, 0xb0, 0x13, 0x8f, 0x51, 0xc8, + 0x35, 0x0a, 0x88, 0x17, 0x01, 0x0b, 0x66, 0x68, 0xec, 0x17, 0x1d, 0x5e, 0xef, 0x68, 0xe6, 0xee, + 0x01, 0xaf, 0x2e, 0x48, 0x9c, 0x09, 0x5a, 0x8d, 0x14, 0x39, 0x3c, 0x5e, 0x85, 0xa3, 0x9c, 0x4a, + 0xc7, 0xac, 0x6d, 0x51, 0xbf, 0xc6, 0x35, 0x61, 0x0f, 0x78, 0x76, 0xe1, 0x10, 0x23, 0x25, 0xb0, + 0x1c, 0x69, 0xe3, 0x65, 0x60, 0xe5, 0xce, 0xaf, 0x22, 0xbe, 0xde, 0x51, 0x75, 0x5b, 0xb3, 0x77, + 0x0f, 0xb8, 0x46, 0xca, 0x06, 0xc2, 0x7f, 0x58, 0xf1, 0x15, 0x81, 0x81, 0x5f, 0x16, 0xca, 0x52, + 0xdb, 0x32, 0x0c, 0x8b, 0x28, 0x16, 0x51, 0xed, 0xa1, 0x2f, 0x39, 0x8d, 0xc8, 0x09, 0x2e, 0x19, + 0x0a, 0x5e, 0x21, 0xaa, 0x8d, 0x5f, 0x85, 0x93, 0x8c, 0x02, 0xd1, 0x6d, 0x62, 0x2a, 0x75, 0x53, + 0xbd, 0x4b, 0x4d, 0x74, 0xab, 0xb3, 0xd1, 0xd2, 0xd8, 0x8f, 0x75, 0x0e, 0x7d, 0xda, 0x69, 0x44, + 0x66, 0xaa, 0x56, 0xa0, 0xb8, 0x8b, 0x1c, 0xb5, 0xe2, 0x62, 0xd2, 0x61, 0xba, 0x7c, 0xf2, 0xaa, + 0x60, 0x7c, 0xf8, 0x30, 0x37, 0x05, 0x9b, 0x3c, 0xda, 0xb7, 0x05, 0xcf, 0xf5, 0x28, 0x71, 0x2d, + 0x72, 0x24, 0x71, 0x57, 0xb3, 0xb7, 0x3c, 0xe2, 0x18, 0x1f, 0xee, 0x5a, 0x3a, 0xb4, 0x99, 0x66, + 0x09, 0x12, 0xb7, 0x34, 0x7b, 0xcb, 0x11, 0xcd, 0xd0, 0xc9, 0xfc, 0x4f, 0x07, 0xaf, 0x53, 0x43, + 0x5c, 0x05, 0x3c, 0x03, 0x61, 0x6a, 0xd8, 0xec, 0x1e, 0x30, 0x83, 0x39, 0x10, 0x5d, 0x63, 0x5b, + 0x86, 0x4e, 0x76, 0x85, 0x43, 0x2b, 0x82, 0xe4, 0x43, 0x26, 0x3e, 0x83, 0xae, 0x0a, 0xe0, 0xa1, + 0x7d, 0xff, 0xad, 0x00, 0x3c, 0xfd, 0x04, 0x2e, 0x08, 0x9d, 0xe7, 0xdc, 0x69, 0x50, 0x84, 0x37, + 0x33, 0xbc, 0xe3, 0x71, 0x0e, 0xcc, 0xc9, 0xb0, 0x3d, 0xc2, 0x34, 0xea, 0x9d, 0x9a, 0x8b, 0x7d, + 0xd0, 0x1e, 0xc1, 0xa1, 0x05, 0xfa, 0x0b, 0x10, 0x33, 0x0d, 0xa3, 0xe5, 0xe0, 0x0e, 0x5f, 0x61, + 0x80, 0x82, 0x0a, 0xc4, 0x02, 0x60, 0x1e, 0x32, 0xe0, 0xfe, 0xbf, 0xc0, 0x3f, 0xe0, 0x01, 0x4f, + 0x0f, 0x06, 0x27, 0x33, 0x94, 0x7f, 0x77, 0x07, 0xb2, 0xaf, 0xdf, 0xe7, 0xc2, 0xe7, 0x61, 0x94, + 0xad, 0x90, 0xda, 0x41, 0x91, 0x1a, 0x07, 0x2c, 0x37, 0xdd, 0xd7, 0x68, 0xff, 0x45, 0xb7, 0x07, + 0x08, 0xa6, 0xc4, 0x79, 0x11, 0x9d, 0x5d, 0xb6, 0x5a, 0xe3, 0xef, 0x9f, 0x66, 0x20, 0xa4, 0xb5, + 0xb7, 0x17, 0x0e, 0x68, 0x86, 0xc1, 0x08, 0xd8, 0x4b, 0x07, 0x48, 0x83, 0xc1, 0x50, 0xd8, 0x7a, + 0x47, 0x6d, 0x1e, 0xb4, 0xf3, 0x51, 0x98, 0xdc, 0x71, 0x88, 0x0c, 0x0e, 0x4a, 0x2f, 0xcc, 0x08, + 0xbb, 0x30, 0x7d, 0x0f, 0xc6, 0x16, 0x55, 0x9b, 0xb0, 0xa0, 0x34, 0x7e, 0x11, 0xc0, 0xb2, 0x55, + 0xd3, 0x56, 0xd8, 0x4e, 0x8c, 0x0e, 0xfc, 0xc9, 0x92, 0x31, 0x06, 0x4d, 0xf1, 0xf1, 0x45, 0xf6, + 0x1c, 0x2a, 0x47, 0x0c, 0x1c, 0x88, 0x38, 0x4a, 0xf4, 0x3a, 0x45, 0x4b, 0xff, 0x0e, 0x82, 0xd0, + 0x92, 0xd6, 0x64, 0x77, 0xb7, 0x6a, 0x86, 0x6e, 0x13, 0x9d, 0x27, 0x83, 0x8a, 0xb0, 0x67, 0x4c, + 0x94, 0x31, 0x8e, 0x4e, 0xc3, 0xa8, 0xf8, 0x64, 0x2d, 0xc4, 0x65, 0xe7, 0x13, 0xa7, 0x60, 0x94, + 0x45, 0x4a, 0xdc, 0x5f, 0x02, 0x75, 0xdf, 0x59, 0x8a, 0xd0, 0xf2, 0x62, 0x9d, 0xbd, 0xed, 0x78, + 0xd7, 0x52, 0xac, 0x0b, 0x43, 0x2f, 0x4b, 0x06, 0xdf, 0xbf, 0xc7, 0x72, 0x90, 0xd5, 0xbb, 0x56, + 0xe5, 0x42, 0xee, 0x59, 0x90, 0x2c, 0xdb, 0x30, 0xd5, 0xcd, 0xde, 0x5b, 0xfa, 0xee, 0x45, 0xba, + 0xf0, 0xe3, 0x2e, 0x42, 0x0b, 0x9e, 0x33, 0xde, 0x37, 0x11, 0x35, 0x02, 0xad, 0xb6, 0xa1, 0x5b, + 0xec, 0xe7, 0xbf, 0xf0, 0x0b, 0x00, 0x2c, 0x1f, 0x8e, 0x6d, 0xf0, 0x22, 0x15, 0x67, 0xba, 0xbf, + 0x55, 0x0a, 0x40, 0x37, 0x72, 0x79, 0x8c, 0x38, 0x7f, 0xe2, 0xe7, 0x61, 0xa2, 0xae, 0x59, 0xed, + 0xa6, 0xba, 0xab, 0xb4, 0xf8, 0xcf, 0x89, 0x89, 0x2c, 0x8d, 0x84, 0x28, 0x16, 0x3f, 0x32, 0x76, + 0x70, 0xfe, 0x50, 0xfa, 0xc7, 0x11, 0x44, 0xb2, 0xfc, 0xf8, 0x7a, 0x06, 0xc2, 0x1b, 0x4d, 0xa3, + 0x76, 0xe7, 0xa0, 0x85, 0x8e, 0x01, 0x51, 0x73, 0xcc, 0x24, 0xec, 0xae, 0xce, 0x01, 0xe6, 0x18, + 0x87, 0xca, 0xa5, 0x60, 0x5c, 0x78, 0x93, 0x7d, 0x0f, 0x52, 0xa2, 0xde, 0x25, 0x2a, 0xaa, 0x6d, + 0xff, 0x36, 0x00, 0xa3, 0x79, 0x79, 0x95, 0x85, 0xa2, 0xcf, 0x03, 0x38, 0x11, 0x35, 0xf7, 0x37, + 0xbd, 0x26, 0x85, 0xdc, 0xbc, 0xa7, 0x08, 0x02, 0xa8, 0x58, 0xc7, 0x97, 0x21, 0x41, 0xe8, 0xb6, + 0xda, 0x64, 0xd6, 0xa6, 0xe2, 0xfe, 0xe6, 0xf6, 0x00, 0xac, 0x71, 0x0f, 0x60, 0xb1, 0x8e, 0xaf, + 0xc0, 0x84, 0xd5, 0xd9, 0x70, 0x19, 0xd3, 0x53, 0x94, 0x01, 0xa8, 0x09, 0x2f, 0x64, 0xb1, 0x4e, + 0xfb, 0xc9, 0x6c, 0x1a, 0xae, 0x97, 0xa1, 0x7d, 0xfb, 0xc9, 0x80, 0xc4, 0xa6, 0xe2, 0x34, 0x5f, + 0x57, 0xac, 0x3b, 0x1d, 0xfe, 0x63, 0x8d, 0x1e, 0xa5, 0x8c, 0x3b, 0xb5, 0x95, 0x3b, 0x1d, 0x0b, + 0xe7, 0x60, 0x8a, 0xdf, 0xee, 0x25, 0xa6, 0xa2, 0xb9, 0xe7, 0xf1, 0xe2, 0x39, 0x86, 0xfe, 0x86, + 0xbe, 0x83, 0x64, 0xec, 0x40, 0xf7, 0x0e, 0xef, 0xd3, 0x26, 0x4c, 0x32, 0x0f, 0x84, 0x79, 0x31, + 0x32, 0xb9, 0x4b, 0xdd, 0x3f, 0x7c, 0x16, 0x46, 0xdb, 0xaa, 0x6d, 0x13, 0xd3, 0xc9, 0x2b, 0x1d, + 0xf4, 0xee, 0x8f, 0xec, 0xc0, 0xe0, 0x59, 0x88, 0xd3, 0x91, 0xdb, 0x9a, 0xdd, 0xd9, 0xe7, 0x37, + 0xe8, 0x7c, 0xf5, 0x99, 0x9f, 0x43, 0x00, 0xbd, 0x1b, 0x5f, 0xf8, 0x1c, 0x04, 0xb3, 0xa5, 0x57, + 0xa5, 0x91, 0xe4, 0x73, 0x0f, 0xbb, 0x28, 0x8d, 0x53, 0x7e, 0x85, 0xa1, 0x86, 0xb8, 0x35, 0x9b, + 0x6d, 0x6b, 0xee, 0xaf, 0x7a, 0xe3, 0x51, 0x08, 0x5e, 0x2b, 0x54, 0x25, 0x84, 0xa3, 0x10, 0x5a, + 0x2e, 0x64, 0x17, 0xa5, 0x00, 0xfd, 0xab, 0xbc, 0x56, 0xa9, 0x4a, 0x41, 0x5a, 0x59, 0x5e, 0xaf, + 0x4a, 0x21, 0x0c, 0x10, 0x59, 0x2c, 0xac, 0x14, 0xaa, 0x05, 0x29, 0x8c, 0x63, 0x30, 0x9a, 0x5f, + 0x2b, 0x95, 0x0a, 0xf9, 0xaa, 0x14, 0xa1, 0x1f, 0x6b, 0xe5, 0x6a, 0x71, 0xad, 0x54, 0x91, 0x46, + 0xf1, 0x18, 0x84, 0xab, 0x72, 0x36, 0x5f, 0x90, 0xa2, 0xf4, 0xcf, 0x72, 0xb6, 0x9a, 0x5f, 0x96, + 0xc6, 0x32, 0x3f, 0x8e, 0x60, 0x3c, 0x67, 0xd8, 0x9e, 0x4e, 0x26, 0x00, 0x56, 0x0b, 0xd5, 0xe5, + 0xb5, 0x45, 0x85, 0xf5, 0xd5, 0xf3, 0xcd, 0xbb, 0x32, 0x01, 0x31, 0xf1, 0x2d, 0xfa, 0xd1, 0x03, + 0xe0, 0xdd, 0x91, 0x20, 0xee, 0x7c, 0xb3, 0x46, 0xc2, 0x78, 0x12, 0xc6, 0x45, 0x89, 0xe8, 0x67, + 0x04, 0x1f, 0x85, 0xa9, 0x1e, 0x55, 0x65, 0x71, 0x2d, 0xbf, 0xbe, 0x5a, 0x28, 0x55, 0x25, 0xc8, + 0x7c, 0x36, 0x00, 0xc7, 0xd7, 0xda, 0x44, 0xcf, 0xb6, 0x35, 0xcf, 0x5b, 0x7a, 0x2c, 0x64, 0x6f, + 0x6b, 0xc4, 0xc2, 0x27, 0xe1, 0x58, 0x59, 0x5e, 0x2b, 0x17, 0xe4, 0xea, 0xab, 0xca, 0x2b, 0xeb, + 0x05, 0xf9, 0x55, 0xa5, 0x9c, 0x95, 0xb3, 0xab, 0x85, 0x6a, 0x41, 0xae, 0x48, 0x23, 0xf8, 0x04, + 0x4c, 0xbb, 0xd5, 0xe5, 0x6c, 0x75, 0xd9, 0x5b, 0x8b, 0xf0, 0x31, 0x38, 0xec, 0xd6, 0xe6, 0xd7, + 0x4a, 0xd5, 0x42, 0xa9, 0xaa, 0x54, 0x5f, 0x2d, 0x17, 0xa4, 0x00, 0x3e, 0x05, 0x49, 0x4f, 0xd5, + 0xda, 0x8d, 0x62, 0xc1, 0x8b, 0x1a, 0xf4, 0xa1, 0x2e, 0x57, 0xab, 0x65, 0x85, 0xca, 0x83, 0x56, + 0x85, 0xf0, 0x11, 0xc0, 0xfe, 0xaa, 0xdc, 0xda, 0xe2, 0xab, 0x52, 0xd8, 0xd7, 0x97, 0x4a, 0x21, + 0xbf, 0x2e, 0x17, 0xe9, 0x1f, 0xf9, 0xe5, 0xc2, 0x6a, 0x56, 0x8a, 0xe0, 0x24, 0x1c, 0x71, 0x6b, + 0xe5, 0x42, 0xa5, 0xbc, 0x56, 0xaa, 0x14, 0x94, 0xfc, 0xda, 0x62, 0x41, 0x1a, 0xcd, 0xfc, 0xf6, + 0x18, 0x24, 0xfc, 0xee, 0x3a, 0x9e, 0x82, 0x09, 0xb6, 0xa2, 0xf4, 0x8a, 0xa4, 0x11, 0x1c, 0x87, + 0x68, 0xde, 0xd0, 0x6d, 0x4d, 0xef, 0x10, 0xa9, 0x8e, 0x47, 0x21, 0xb0, 0x76, 0x43, 0xfa, 0x0a, + 0xc2, 0x71, 0x18, 0xe5, 0xbf, 0x6f, 0x5a, 0x97, 0x7e, 0x17, 0xe1, 0x71, 0x88, 0x66, 0x6b, 0x35, + 0xd2, 0xa6, 0x9f, 0x0f, 0x11, 0x4e, 0xc1, 0xf1, 0x92, 0xa1, 0x67, 0x3b, 0xf6, 0x96, 0x61, 0x6a, + 0xb6, 0x6a, 0x6b, 0xdb, 0xec, 0xd8, 0x4b, 0x1c, 0x3c, 0x48, 0xff, 0x0a, 0xe1, 0x04, 0x8c, 0x95, + 0x8c, 0x3c, 0xdf, 0x37, 0xa4, 0xdf, 0x43, 0x78, 0x92, 0x2d, 0xdb, 0xc4, 0x76, 0x8a, 0xfe, 0x35, + 0xc2, 0x53, 0x90, 0x28, 0xab, 0xa6, 0xad, 0xa9, 0x4d, 0xa7, 0xf0, 0xab, 0x08, 0x4b, 0x10, 0x5b, + 0xed, 0x34, 0x6d, 0x8d, 0x77, 0x51, 0xfa, 0x7d, 0x84, 0x0f, 0xc1, 0x44, 0xb6, 0x69, 0x12, 0xb5, + 0xbe, 0x2b, 0xb3, 0x45, 0x90, 0xd4, 0xa5, 0x47, 0x08, 0xc7, 0x20, 0x52, 0x5c, 0x5d, 0xb7, 0x48, + 0x5d, 0x7a, 0xcc, 0x40, 0x18, 0x52, 0xbb, 0x49, 0xb8, 0x0d, 0x62, 0x49, 0xbf, 0x12, 0xc0, 0x87, + 0x41, 0x5a, 0x35, 0xb6, 0x49, 0xbd, 0x4c, 0xcc, 0x96, 0xaa, 0x13, 0xdd, 0x6e, 0xee, 0x4a, 0xbf, + 0x1a, 0xc0, 0x00, 0xe1, 0x25, 0xa3, 0xa3, 0xd7, 0xa5, 0x7f, 0x14, 0xa0, 0xc3, 0xaa, 0x10, 0xb2, + 0x66, 0x6f, 0x11, 0x53, 0xfa, 0xb5, 0x00, 0x6d, 0xbc, 0x64, 0xd8, 0xab, 0xec, 0xf7, 0xc1, 0x48, + 0x5d, 0xfa, 0x32, 0x03, 0x58, 0xb7, 0x08, 0x4b, 0x59, 0x93, 0x7e, 0x3d, 0x80, 0x8f, 0xc0, 0x64, + 0x95, 0xb4, 0xda, 0x86, 0xa9, 0x9a, 0xbb, 0x32, 0xa9, 0x6b, 0x26, 0xa9, 0xd9, 0xd2, 0x6f, 0xb0, + 0x72, 0xb7, 0x15, 0xb7, 0xfc, 0x37, 0x03, 0x78, 0x02, 0x20, 0xa7, 0xd6, 0xc5, 0xeb, 0x19, 0xd2, + 0xe7, 0x83, 0x94, 0x0d, 0xeb, 0xba, 0xca, 0xf9, 0xf6, 0xc3, 0xa4, 0x2e, 0xfd, 0x64, 0x90, 0x76, + 0x5e, 0xf8, 0x76, 0x14, 0x4e, 0x33, 0x49, 0x5d, 0x7a, 0x93, 0x4e, 0x88, 0xb1, 0x25, 0xc3, 0xdc, + 0xd0, 0xea, 0x75, 0xa2, 0x4b, 0x3f, 0x15, 0xa4, 0x1d, 0x29, 0x19, 0x36, 0xef, 0xf8, 0x17, 0x82, + 0x6c, 0x6c, 0x6c, 0xaa, 0x95, 0x0c, 0x3b, 0xcb, 0x9f, 0x08, 0x90, 0x7e, 0x3a, 0x88, 0x31, 0xb0, + 0x9f, 0xda, 0x67, 0x92, 0x52, 0x37, 0x9a, 0x44, 0xfa, 0xdb, 0x41, 0x2a, 0x2b, 0xd6, 0x7f, 0x7f, + 0x10, 0xdb, 0x6d, 0xeb, 0x67, 0x82, 0x54, 0x10, 0x9e, 0x07, 0x3e, 0x8c, 0x8e, 0x2d, 0x7d, 0x91, + 0x35, 0x98, 0x37, 0xf4, 0x46, 0x53, 0xab, 0xd9, 0xd2, 0xdf, 0x09, 0xe2, 0x31, 0x08, 0x5d, 0x33, + 0x74, 0x22, 0xbd, 0xc5, 0xc0, 0x57, 0x88, 0xbe, 0x69, 0x6f, 0xb9, 0x34, 0xfe, 0x6e, 0x10, 0x1f, + 0x05, 0x5c, 0x36, 0x89, 0x1b, 0xac, 0x5b, 0x52, 0xb5, 0x26, 0xa9, 0x4b, 0x7f, 0xcf, 0x19, 0x5e, + 0xd3, 0x50, 0xeb, 0x55, 0xc3, 0x58, 0x51, 0xcd, 0x4d, 0x22, 0xfd, 0x6c, 0x90, 0x32, 0x86, 0xaa, + 0xb2, 0x61, 0xac, 0x18, 0xfa, 0xa6, 0xf4, 0xf7, 0xe9, 0xd4, 0x38, 0xb4, 0xae, 0x5b, 0x9d, 0x36, + 0x97, 0xf0, 0x2a, 0xa9, 0x6b, 0xec, 0x77, 0xbc, 0xa4, 0x9f, 0x0b, 0xe2, 0x69, 0x98, 0x62, 0x66, + 0x53, 0xc9, 0xb0, 0x2b, 0xaa, 0xad, 0x59, 0x0d, 0x96, 0xcf, 0x2d, 0xbd, 0x1d, 0xa4, 0x6c, 0x2f, + 0xec, 0xb4, 0x49, 0x8d, 0x1f, 0x87, 0x8a, 0x36, 0x7f, 0x9e, 0x75, 0x66, 0x55, 0xb3, 0xb8, 0x18, + 0x88, 0xcb, 0xfe, 0x7f, 0xc8, 0x48, 0xad, 0xeb, 0x6d, 0xd3, 0xa8, 0xd1, 0xad, 0x7d, 0xa3, 0x49, + 0x0a, 0xcc, 0x7b, 0x94, 0x7e, 0x29, 0x48, 0xf5, 0x69, 0xc5, 0xa8, 0xdd, 0x21, 0x75, 0xe9, 0x97, + 0x19, 0x77, 0x39, 0xb1, 0x45, 0xd2, 0x26, 0x7a, 0x9d, 0xe8, 0xb5, 0x5d, 0xe9, 0x4b, 0x6c, 0x28, + 0xeb, 0xed, 0x4d, 0x53, 0xad, 0x13, 0x77, 0xe4, 0xef, 0xb0, 0x9e, 0x7b, 0x47, 0xee, 0x56, 0xfd, + 0x0a, 0x43, 0xa8, 0x1a, 0xc6, 0xaa, 0xaa, 0xef, 0x8a, 0x3e, 0x58, 0xd2, 0xaf, 0x32, 0x81, 0x88, + 0x4f, 0x7e, 0xa8, 0xb7, 0xa4, 0x91, 0x66, 0xdd, 0x72, 0xb9, 0xf3, 0x6b, 0xac, 0x9b, 0xce, 0x0f, + 0x92, 0x50, 0x5f, 0x8a, 0x98, 0xcc, 0x80, 0x91, 0xfe, 0x33, 0xe3, 0x7d, 0xc9, 0xb0, 0x8b, 0xad, + 0x36, 0xdf, 0x72, 0x49, 0x5d, 0xfa, 0xf3, 0xa0, 0xd0, 0xb2, 0x6b, 0xfc, 0x76, 0x80, 0xf4, 0x5f, + 0xd8, 0xf8, 0x85, 0x0f, 0xb6, 0xae, 0xab, 0xdb, 0xaa, 0xd6, 0x64, 0x0c, 0xfb, 0x0b, 0x86, 0x2e, + 0xc0, 0x1c, 0x49, 0x7f, 0x3b, 0x88, 0x4f, 0xc0, 0x51, 0xba, 0xe2, 0x88, 0x5b, 0x50, 0x94, 0xcb, + 0x8e, 0x18, 0xa4, 0xff, 0x1a, 0xc4, 0x49, 0x38, 0x7c, 0x53, 0x35, 0x35, 0x55, 0xb7, 0xb3, 0x4d, + 0xcb, 0x28, 0x91, 0x4d, 0xc3, 0xd6, 0x54, 0x9b, 0x58, 0xd2, 0x7f, 0x13, 0xfd, 0x64, 0xaf, 0x6b, + 0xd5, 0x34, 0xa2, 0xdb, 0x15, 0x6e, 0xc5, 0x49, 0xff, 0x9d, 0xe9, 0xf9, 0x8a, 0x61, 0xb4, 0x17, + 0x09, 0x8f, 0x57, 0x4b, 0xff, 0x23, 0x28, 0x26, 0x57, 0x61, 0xc7, 0xa6, 0x1c, 0xad, 0x4b, 0xff, + 0x33, 0x88, 0xd3, 0x70, 0x52, 0x58, 0xf4, 0xfb, 0xe8, 0xe6, 0x77, 0x82, 0x99, 0x3f, 0x46, 0x70, + 0x98, 0xae, 0x62, 0x8e, 0xcd, 0x47, 0x17, 0x2d, 0xfe, 0x73, 0x78, 0xcf, 0x40, 0x8a, 0x2d, 0x94, + 0xbe, 0x75, 0x4f, 0xc9, 0xaf, 0x64, 0x2b, 0x15, 0x65, 0xbd, 0x74, 0xa3, 0xb4, 0x76, 0xab, 0x24, + 0x8d, 0xe0, 0x14, 0x9c, 0xd8, 0x17, 0x6a, 0xee, 0xf6, 0x6d, 0x09, 0x0d, 0x85, 0x98, 0xbf, 0x7d, + 0x5b, 0x0a, 0x0c, 0x85, 0xb8, 0x70, 0xfb, 0xb6, 0x14, 0x1c, 0x0a, 0xb1, 0x70, 0xfb, 0xb6, 0x14, + 0x1a, 0x0a, 0x71, 0xf1, 0xf6, 0x6d, 0x29, 0x9c, 0x79, 0x80, 0x20, 0xce, 0xd6, 0x6b, 0x9e, 0x08, + 0x69, 0xe1, 0xe3, 0x30, 0xc9, 0x50, 0x2a, 0x85, 0x3c, 0xdd, 0x7f, 0x95, 0xd2, 0x5a, 0xa9, 0x20, + 0x8d, 0xf0, 0x9f, 0xd9, 0xa2, 0x5b, 0x98, 0xaf, 0xd2, 0xb3, 0x8d, 0xd1, 0x4d, 0xea, 0x04, 0x4c, + 0xfb, 0xaa, 0xe5, 0xc2, 0x2b, 0xee, 0x66, 0x13, 0xd8, 0x5b, 0x5b, 0xe9, 0x6d, 0x45, 0x6c, 0x97, + 0xda, 0x83, 0x2b, 0x76, 0xa3, 0x3d, 0x55, 0x15, 0xb1, 0x51, 0x45, 0x32, 0x39, 0x98, 0xe4, 0x6b, + 0x76, 0xb9, 0xb3, 0xd1, 0xd4, 0xac, 0x2d, 0x66, 0xa1, 0x1d, 0x83, 0xc3, 0x95, 0x6a, 0xb6, 0xba, + 0x5e, 0x51, 0x16, 0xd7, 0x94, 0xd2, 0x5a, 0x55, 0x29, 0xaf, 0xe7, 0x56, 0x8a, 0x95, 0x65, 0x69, + 0x04, 0x63, 0x48, 0x88, 0x2a, 0xa7, 0x0c, 0x65, 0xae, 0x50, 0xbd, 0xed, 0xff, 0xc9, 0x1c, 0x6a, + 0x0b, 0x38, 0xdf, 0x25, 0xba, 0x04, 0x31, 0x5c, 0xa7, 0x24, 0xc7, 0x5e, 0xce, 0x92, 0x50, 0xe6, + 0x19, 0x18, 0x5f, 0x97, 0x57, 0x2a, 0xd4, 0x0c, 0xe2, 0x2e, 0x28, 0x35, 0x77, 0xaa, 0xd5, 0xb2, + 0x34, 0x42, 0x4d, 0x15, 0xfa, 0x57, 0x45, 0x42, 0x99, 0x35, 0x88, 0x55, 0x9b, 0x96, 0x93, 0xa5, + 0x4a, 0xf7, 0xbe, 0xea, 0x4a, 0x45, 0xc9, 0xae, 0x57, 0xd7, 0xa4, 0x11, 0x6a, 0xea, 0x54, 0x57, + 0x2a, 0xdb, 0x73, 0xca, 0x79, 0x09, 0xf5, 0x3e, 0xe6, 0xa4, 0x40, 0xef, 0x63, 0x5e, 0x0a, 0xf6, + 0x3e, 0x2e, 0x48, 0xa1, 0x8c, 0x06, 0xb1, 0xdb, 0x8d, 0x5a, 0xad, 0xc0, 0xe7, 0x23, 0x1e, 0x87, + 0xb1, 0xdb, 0x4b, 0xf9, 0xbc, 0x90, 0x95, 0xfb, 0x99, 0x2f, 0xc8, 0xd4, 0xec, 0x49, 0x00, 0xf0, + 0xcf, 0xe5, 0x6c, 0xb1, 0x24, 0xd1, 0xfd, 0x26, 0xce, 0xbe, 0x2b, 0xeb, 0xb9, 0xeb, 0xd4, 0xda, + 0x0a, 0xd2, 0x0e, 0xb1, 0x92, 0x75, 0xb9, 0x28, 0x85, 0xdc, 0xaf, 0xc5, 0x52, 0x45, 0x0a, 0x67, + 0x96, 0x60, 0xdc, 0xf7, 0xc0, 0x28, 0x7e, 0x0a, 0x8e, 0x14, 0x4b, 0x37, 0xb3, 0x2b, 0xc5, 0x45, + 0x65, 0x39, 0x5b, 0x59, 0x56, 0xb2, 0x2b, 0xd7, 0xd6, 0xe4, 0x62, 0x75, 0x79, 0x55, 0x1a, 0x49, + 0x06, 0xef, 0xdf, 0x43, 0xd4, 0xa8, 0xab, 0x2c, 0x67, 0xe7, 0x2f, 0x5e, 0xe2, 0xd6, 0x5f, 0x65, + 0x39, 0x3b, 0x27, 0x05, 0x32, 0x67, 0x60, 0x42, 0x36, 0x3a, 0x36, 0x7b, 0x5c, 0x5b, 0xa3, 0xa4, + 0x76, 0xe9, 0x90, 0x16, 0x0b, 0x4b, 0xd9, 0xf5, 0x95, 0xaa, 0x34, 0xc2, 0x18, 0x57, 0xbc, 0x46, + 0xe5, 0xf1, 0x29, 0x98, 0xe8, 0x7b, 0xd0, 0x8a, 0x42, 0x2e, 0xaf, 0x97, 0x16, 0xe5, 0xc2, 0xa2, + 0x34, 0x42, 0xfb, 0x5f, 0x2d, 0x94, 0x94, 0xea, 0xf2, 0xda, 0x7a, 0x25, 0x5b, 0x5a, 0xe4, 0x5c, + 0x5b, 0x2d, 0xae, 0xac, 0x14, 0xd7, 0x4a, 0x52, 0x20, 0xf3, 0x32, 0x8c, 0x2f, 0x3a, 0x3f, 0xcf, + 0x21, 0x7e, 0xd6, 0x6b, 0xd2, 0xe9, 0xf0, 0x62, 0xb1, 0x92, 0x5f, 0xbb, 0x59, 0x90, 0x5f, 0x75, + 0xfa, 0x3a, 0x0a, 0xc1, 0x1b, 0x97, 0xa9, 0xea, 0x02, 0x44, 0xf2, 0x6b, 0xa5, 0xca, 0xfa, 0x8a, + 0x14, 0xc8, 0x54, 0x20, 0x76, 0x53, 0x6b, 0xdf, 0x34, 0xcd, 0xb6, 0x50, 0x27, 0xe9, 0x66, 0xb1, + 0xac, 0xdc, 0x94, 0xe5, 0xb2, 0x22, 0x08, 0x39, 0xe8, 0x53, 0x30, 0xe1, 0x56, 0x15, 0x4a, 0xd9, + 0xdc, 0x4a, 0x41, 0xa2, 0x76, 0x41, 0x0f, 0x7e, 0xb1, 0x58, 0x61, 0xa5, 0x81, 0xcc, 0x8f, 0xc0, + 0xa1, 0x8a, 0x66, 0x93, 0xaa, 0xc1, 0xfe, 0xdf, 0xd1, 0x75, 0xd2, 0x64, 0xd4, 0x9f, 0x81, 0x54, + 0xa5, 0x58, 0x2d, 0x28, 0xd5, 0x35, 0x85, 0xff, 0xbb, 0x5e, 0x2a, 0x15, 0x56, 0x94, 0x62, 0xb9, + 0x52, 0xc8, 0x2b, 0x6b, 0xb2, 0x52, 0xa9, 0xac, 0x48, 0x23, 0x74, 0xe2, 0xed, 0x0b, 0x25, 0x21, + 0x7c, 0x1c, 0x8e, 0x0e, 0xaa, 0xa6, 0xb8, 0x81, 0x74, 0x28, 0x1a, 0x94, 0x82, 0x99, 0x0c, 0x8c, + 0x55, 0x0c, 0xd3, 0xe6, 0x71, 0xd9, 0x04, 0xc0, 0x62, 0xa1, 0x92, 0x2f, 0x94, 0x16, 0x8b, 0xa5, + 0x6b, 0x5c, 0x63, 0xb2, 0xee, 0x27, 0xca, 0x14, 0xe1, 0x28, 0xef, 0x61, 0x41, 0xaf, 0xa9, 0x6d, + 0x4b, 0xfc, 0xb2, 0x00, 0xeb, 0xee, 0x38, 0x8c, 0xf1, 0xae, 0x95, 0x6f, 0x14, 0x39, 0xa2, 0xf8, + 0xac, 0xdc, 0x90, 0x18, 0x3b, 0x59, 0x9b, 0xcc, 0xfc, 0x97, 0x0b, 0x52, 0x30, 0xf3, 0x02, 0x40, + 0x95, 0xfd, 0xda, 0xa8, 0x23, 0xc7, 0xde, 0x22, 0x19, 0x87, 0xe8, 0x92, 0x5c, 0x28, 0xac, 0x16, + 0xd7, 0x57, 0xb9, 0x96, 0x16, 0x4a, 0xd5, 0x82, 0x5c, 0x96, 0x8b, 0x15, 0xca, 0xaf, 0x5f, 0x47, + 0x20, 0x55, 0xd5, 0x9d, 0xc2, 0x0e, 0x69, 0xf5, 0xde, 0x00, 0x9c, 0x80, 0x58, 0x35, 0x7b, 0xdb, + 0xb3, 0xd0, 0x8a, 0x02, 0xb9, 0x70, 0x6d, 0x7d, 0x25, 0x2b, 0x73, 0x3b, 0x99, 0x16, 0x14, 0x6e, + 0x17, 0x56, 0xcb, 0x55, 0x65, 0xbd, 0x74, 0xb3, 0x20, 0x17, 0x97, 0x8a, 0x05, 0xea, 0x7f, 0x1c, + 0x85, 0x29, 0x4f, 0x95, 0x5b, 0x41, 0x77, 0x84, 0x53, 0x7b, 0x2a, 0xf2, 0x59, 0xb6, 0xd4, 0x2c, + 0x65, 0x8b, 0x2b, 0x85, 0x45, 0x29, 0x84, 0x9f, 0x86, 0xa7, 0xf6, 0x83, 0x29, 0x0b, 0xbe, 0x85, + 0x33, 0x9f, 0x81, 0x68, 0xb9, 0xa9, 0xea, 0xce, 0x42, 0x40, 0x47, 0xc7, 0xdd, 0x90, 0x62, 0x69, + 0xb1, 0x78, 0xb3, 0xb8, 0xb8, 0x9e, 0x5d, 0xe1, 0x73, 0xa2, 0x5a, 0xc8, 0xae, 0xf2, 0x99, 0xb8, + 0x26, 0x5f, 0xcb, 0x96, 0x8a, 0x9f, 0x66, 0x94, 0x84, 0xad, 0xbe, 0x92, 0x2d, 0x31, 0xd3, 0x5e, + 0x59, 0x2f, 0x55, 0xca, 0x85, 0x3c, 0xef, 0x65, 0x28, 0x93, 0x82, 0x71, 0x7e, 0x09, 0x8a, 0xc5, + 0xbe, 0xd6, 0xda, 0x38, 0x02, 0x81, 0xc2, 0x2b, 0xd2, 0x08, 0xe5, 0x75, 0xa9, 0xf0, 0x8a, 0x84, + 0x32, 0x0d, 0x48, 0xf8, 0xef, 0x23, 0xe1, 0x69, 0x38, 0x54, 0x95, 0x0b, 0xa5, 0x45, 0xa5, 0x52, + 0x28, 0x55, 0x8b, 0xd4, 0x4f, 0x71, 0xd6, 0x88, 0x13, 0x30, 0xdd, 0x5f, 0x53, 0x5e, 0xab, 0x14, + 0xab, 0xc5, 0x9b, 0x05, 0xbe, 0x90, 0xef, 0xc1, 0x2b, 0x5c, 0xcb, 0xb2, 0xda, 0x40, 0xe6, 0x2d, + 0x04, 0xe3, 0xbe, 0x8b, 0x37, 0x54, 0xe5, 0xe5, 0xb5, 0xf5, 0x6a, 0x41, 0xc9, 0x56, 0xab, 0xb2, + 0x52, 0x5a, 0x53, 0xd6, 0xe8, 0x0a, 0x38, 0x0d, 0x87, 0x3c, 0xa5, 0xd9, 0xc5, 0x9b, 0x05, 0xb9, + 0x4a, 0x85, 0xcb, 0xf4, 0xd5, 0x53, 0x53, 0x2c, 0x55, 0xaa, 0xd9, 0x95, 0x15, 0x65, 0x99, 0x7a, + 0x65, 0x01, 0x7c, 0x1a, 0x4e, 0x0e, 0xa8, 0x5c, 0x5a, 0x93, 0x6f, 0x65, 0x65, 0xc6, 0x68, 0xc6, + 0x26, 0x0f, 0xc8, 0x6a, 0x41, 0xbe, 0x56, 0x50, 0xd6, 0x4a, 0x2b, 0xaf, 0x4a, 0xa1, 0xcc, 0x97, + 0x10, 0xc4, 0xbd, 0x97, 0xa0, 0xe8, 0x58, 0x4a, 0x85, 0xdb, 0x55, 0x65, 0x79, 0xad, 0xac, 0x88, + 0xe5, 0x46, 0xb9, 0x96, 0xad, 0x16, 0x6e, 0x65, 0xa9, 0x8f, 0x78, 0x1c, 0x8e, 0xba, 0xb5, 0xeb, + 0x6c, 0x83, 0x2c, 0x2d, 0x15, 0xaf, 0xad, 0xd3, 0x95, 0x06, 0x51, 0xcf, 0xca, 0xad, 0x2c, 0x15, + 0xaa, 0xb7, 0xd6, 0xe4, 0x1b, 0x4a, 0x91, 0x2a, 0xe9, 0x12, 0xf5, 0x46, 0x03, 0x38, 0x09, 0x52, + 0x8f, 0x74, 0xb1, 0x92, 0xcf, 0xca, 0x8b, 0x52, 0x50, 0x6c, 0x95, 0xa7, 0x3d, 0x84, 0x2b, 0xa5, + 0x6c, 0x95, 0xce, 0x4d, 0xb6, 0xe7, 0xe4, 0xa5, 0x10, 0x07, 0xc9, 0xdc, 0x82, 0xc9, 0x6c, 0xbd, + 0x6e, 0xe8, 0xc2, 0x6a, 0xa2, 0x1b, 0x19, 0x9b, 0x22, 0xd9, 0x8a, 0x23, 0xa5, 0x04, 0x40, 0xb6, + 0xe2, 0x2a, 0x18, 0xf5, 0x67, 0xc6, 0xb3, 0x15, 0xba, 0x70, 0x57, 0xf2, 0x72, 0x31, 0xc7, 0xb4, + 0x3a, 0x0e, 0xd1, 0x6c, 0x45, 0x29, 0xc8, 0xf2, 0x9a, 0x2c, 0x05, 0xd3, 0xa1, 0x68, 0x48, 0x0a, + 0x65, 0xee, 0x41, 0xd2, 0x4b, 0x98, 0x9d, 0x04, 0x55, 0x78, 0xdc, 0x63, 0x83, 0x4d, 0x22, 0x4e, + 0xc4, 0x69, 0x05, 0x43, 0x42, 0x14, 0x64, 0x57, 0x56, 0xd6, 0x6e, 0xb1, 0xa1, 0xbb, 0x2d, 0x29, + 0x8b, 0x85, 0x12, 0x9f, 0x3f, 0x87, 0x61, 0xd2, 0x2d, 0x2a, 0x3b, 0xc5, 0xd4, 0xc2, 0x8a, 0x8b, + 0xe2, 0xc2, 0xed, 0x62, 0xa5, 0x2a, 0x85, 0x32, 0x3f, 0x02, 0xc7, 0x7d, 0xe3, 0x72, 0x5a, 0x16, + 0xc1, 0x2a, 0x17, 0x81, 0x0f, 0xc2, 0xed, 0xc0, 0x7a, 0xa9, 0x57, 0x86, 0xa8, 0xf2, 0x78, 0xa1, + 0x5c, 0x26, 0x04, 0xf0, 0x53, 0x70, 0x3c, 0x5b, 0x51, 0xf2, 0xd9, 0x52, 0x9e, 0x2e, 0x71, 0x7b, + 0x00, 0x82, 0x99, 0x9f, 0x42, 0x80, 0xbd, 0x1d, 0xe0, 0x79, 0x9d, 0x82, 0x99, 0x59, 0x77, 0x9b, + 0xe4, 0x43, 0xcc, 0xe6, 0x3d, 0xa3, 0x9e, 0x82, 0x09, 0x5e, 0x54, 0xce, 0x65, 0xf3, 0x74, 0x88, + 0xaf, 0x72, 0x43, 0xac, 0xaf, 0x50, 0x59, 0x2f, 0x5f, 0x93, 0xb3, 0x8b, 0x05, 0x85, 0xce, 0x55, + 0x29, 0x48, 0x17, 0x87, 0x7e, 0x08, 0xb9, 0xf0, 0xca, 0x7a, 0xa1, 0x52, 0x55, 0x2a, 0x05, 0xf9, + 0x66, 0x31, 0x5f, 0x90, 0x42, 0x19, 0x1d, 0x26, 0xaa, 0x5a, 0x53, 0x74, 0x86, 0xcb, 0x9a, 0xee, + 0x64, 0xc5, 0x95, 0x82, 0xa7, 0x4f, 0x53, 0x30, 0xe1, 0x94, 0xf4, 0x7a, 0x45, 0x67, 0xb1, 0x28, + 0xf4, 0x35, 0x4c, 0x15, 0xf0, 0x48, 0x8f, 0x40, 0xd5, 0xab, 0x18, 0xc1, 0xcc, 0x29, 0x88, 0x56, + 0x76, 0xf5, 0xda, 0x2a, 0x75, 0xc1, 0xe9, 0x36, 0x5c, 0x58, 0x59, 0xe2, 0xdb, 0x6c, 0x25, 0x5f, + 0x5c, 0x95, 0x20, 0x63, 0x42, 0xe2, 0xba, 0xba, 0xad, 0x56, 0x58, 0x30, 0x8c, 0x41, 0x1d, 0x85, + 0xa9, 0x6c, 0xe5, 0xd5, 0x52, 0x5e, 0xb9, 0x4e, 0x15, 0x50, 0xc9, 0x67, 0xf3, 0xcb, 0x7c, 0x7b, + 0x38, 0x04, 0x92, 0x5b, 0xe1, 0x94, 0x22, 0x7c, 0x04, 0xf0, 0x00, 0xe8, 0x00, 0x1d, 0x43, 0x3f, + 0x30, 0x9f, 0x14, 0x23, 0x99, 0x2c, 0xc0, 0x12, 0x51, 0xed, 0x8e, 0x49, 0xaa, 0xea, 0x26, 0xed, + 0x8b, 0x18, 0x36, 0x5b, 0xc2, 0x6e, 0xf1, 0x9d, 0xbc, 0x2c, 0x17, 0x6e, 0x16, 0x0b, 0xb7, 0x38, + 0xa1, 0xb2, 0x5c, 0xbc, 0x99, 0xad, 0x16, 0x14, 0xa7, 0x30, 0x98, 0xb9, 0x05, 0x87, 0xbc, 0xb2, + 0xad, 0x6a, 0xc4, 0x35, 0x11, 0x4a, 0x6b, 0x4a, 0xb5, 0x58, 0x90, 0xb9, 0xed, 0x95, 0xcb, 0x56, + 0x8a, 0x74, 0x6b, 0x8c, 0x43, 0xb4, 0x52, 0xcd, 0x96, 0x16, 0xe9, 0xdc, 0xe4, 0xb3, 0x65, 0xf1, + 0x26, 0x55, 0x9d, 0x45, 0x6e, 0x53, 0x95, 0x65, 0xbe, 0x01, 0x85, 0x32, 0xe7, 0x21, 0x91, 0x6f, + 0x1a, 0x9d, 0xfa, 0x8a, 0xa6, 0xdf, 0xe1, 0xe2, 0x89, 0x40, 0x60, 0xbd, 0xcc, 0x79, 0xb6, 0x48, + 0xb7, 0x1b, 0x46, 0x6c, 0xb1, 0xc0, 0x24, 0xb0, 0x28, 0x05, 0x32, 0x79, 0x88, 0x57, 0xb4, 0x4d, + 0xbd, 0xd3, 0x16, 0x6f, 0x44, 0x62, 0x48, 0xac, 0xc9, 0xc5, 0x6b, 0xc5, 0x92, 0x7f, 0x83, 0x12, + 0x65, 0x4b, 0x17, 0x6f, 0xe7, 0xf9, 0x3e, 0x27, 0x0a, 0xb2, 0xb7, 0x2a, 0x52, 0x20, 0xf7, 0xff, + 0xa2, 0x47, 0x7f, 0x78, 0x6a, 0xe4, 0xfd, 0x3f, 0x3c, 0x35, 0xf2, 0xad, 0x3f, 0x3c, 0x85, 0xee, + 0x3f, 0x3e, 0x85, 0xbe, 0xf4, 0xf8, 0x14, 0xfa, 0xca, 0xe3, 0x53, 0xe8, 0xd1, 0xe3, 0x53, 0xe8, + 0xfd, 0xc7, 0xa7, 0xd0, 0x37, 0x1e, 0x9f, 0x42, 0xdf, 0x7c, 0x7c, 0x6a, 0xe4, 0x5b, 0x8f, 0x4f, + 0xa1, 0xcf, 0x7f, 0x70, 0x6a, 0xe4, 0xdd, 0x0f, 0x4e, 0xa1, 0x47, 0x1f, 0x9c, 0x1a, 0x79, 0xff, + 0x83, 0x53, 0x23, 0x9f, 0xce, 0x6f, 0x1a, 0xed, 0x3b, 0x9b, 0xb3, 0xce, 0x43, 0xab, 0xb3, 0x1d, + 0xeb, 0x1c, 0xfb, 0xa3, 0x61, 0x98, 0xad, 0xb3, 0x4e, 0x60, 0xfb, 0xac, 0x53, 0x7d, 0xae, 0xbd, + 0xb1, 0x69, 0x9c, 0x23, 0x3b, 0x36, 0x0f, 0xdc, 0x9d, 0xe3, 0xff, 0x6c, 0x44, 0x58, 0x10, 0xff, + 0xc2, 0xff, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x8a, 0xd9, 0xc7, 0x4f, 0x2c, 0x92, 0x00, 0x00, } func (x HttpMethod) String() string { @@ -13496,6 +13572,13 @@ func (x CloudLinkState) String() string { } return strconv.Itoa(int(x)) } +func (x SignupOrigin) String() string { + s, ok := SignupOrigin_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} func (this *Empty) Equal(that interface{}) bool { if that == nil { return this == nil @@ -18758,6 +18841,30 @@ func (this *HeaderTransformationType) Equal(that interface{}) bool { } return true } +func (this *HeaderTransformationType_LegacyHeaderTransformation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*HeaderTransformationType_LegacyHeaderTransformation) + if !ok { + that2, ok := that.(HeaderTransformationType_LegacyHeaderTransformation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.LegacyHeaderTransformation.Equal(that1.LegacyHeaderTransformation) { + return false + } + return true +} func (this *HeaderTransformationType_DefaultHeaderTransformation) Equal(that interface{}) bool { if that == nil { return this == nil @@ -22511,7 +22618,7 @@ func (this *HeaderTransformationType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 7) + s := make([]string, 0, 8) s = append(s, "&schema.HeaderTransformationType{") if this.HeaderTransformationChoice != nil { s = append(s, "HeaderTransformationChoice: "+fmt.Sprintf("%#v", this.HeaderTransformationChoice)+",\n") @@ -22519,6 +22626,14 @@ func (this *HeaderTransformationType) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *HeaderTransformationType_LegacyHeaderTransformation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&schema.HeaderTransformationType_LegacyHeaderTransformation{` + + `LegacyHeaderTransformation:` + fmt.Sprintf("%#v", this.LegacyHeaderTransformation) + `}`}, ", ") + return s +} func (this *HeaderTransformationType_DefaultHeaderTransformation) GoString() string { if this == nil { return "nil" @@ -29363,6 +29478,27 @@ func (m *HeaderTransformationType_PreserveCaseHeaderTransformation) MarshalToSiz } return len(dAtA) - i, nil } +func (m *HeaderTransformationType_LegacyHeaderTransformation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *HeaderTransformationType_LegacyHeaderTransformation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.LegacyHeaderTransformation != nil { + { + size, err := m.LegacyHeaderTransformation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} func (m *BotDefenseFlowLabelCategoriesChoiceType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -33915,6 +34051,18 @@ func (m *HeaderTransformationType_PreserveCaseHeaderTransformation) Size() (n in } return n } +func (m *HeaderTransformationType_LegacyHeaderTransformation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.LegacyHeaderTransformation != nil { + l = m.LegacyHeaderTransformation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *BotDefenseFlowLabelCategoriesChoiceType) Size() (n int) { if m == nil { return 0 @@ -36918,6 +37066,16 @@ func (this *HeaderTransformationType_PreserveCaseHeaderTransformation) String() }, "") return s } +func (this *HeaderTransformationType_LegacyHeaderTransformation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HeaderTransformationType_LegacyHeaderTransformation{`, + `LegacyHeaderTransformation:` + strings.Replace(fmt.Sprintf("%v", this.LegacyHeaderTransformation), "Empty", "Empty", 1) + `,`, + `}`, + }, "") + return s +} func (this *BotDefenseFlowLabelCategoriesChoiceType) String() string { if this == nil { return "nil" @@ -53268,6 +53426,41 @@ func (m *HeaderTransformationType) Unmarshal(dAtA []byte) error { } m.HeaderTransformationChoice = &HeaderTransformationType_PreserveCaseHeaderTransformation{v} iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LegacyHeaderTransformation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.HeaderTransformationChoice = &HeaderTransformationType_LegacyHeaderTransformation{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/types.vesmsg.go b/pbgo/extschema/schema/types.vesmsg.go index f39a30076..b020ed825 100644 --- a/pbgo/extschema/schema/types.vesmsg.go +++ b/pbgo/extschema/schema/types.vesmsg.go @@ -5966,6 +5966,17 @@ func (v *ValidateHeaderTransformationType) Validate(ctx context.Context, pm inte return err } } + case *HeaderTransformationType_LegacyHeaderTransformation: + if fv, exists := v.FldValidators["header_transformation_choice.legacy_header_transformation"]; exists { + val := m.GetHeaderTransformationChoice().(*HeaderTransformationType_LegacyHeaderTransformation).LegacyHeaderTransformation + vOpts := append(opts, + db.WithValidateField("header_transformation_choice"), + db.WithValidateField("legacy_header_transformation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -8917,6 +8928,16 @@ func (v *ValidateObjectCreateMetaType) AnnotationsValidationRuleHandler(rules ma return validatorFn, nil } +func (v *ValidateObjectCreateMetaType) DescriptionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for description") + } + + return validatorFn, nil +} + func (v *ValidateObjectCreateMetaType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*ObjectCreateMetaType) if !ok { @@ -9027,6 +9048,17 @@ var DefaultObjectCreateMetaTypeValidator = func() *ValidateObjectCreateMetaType } v.FldValidators["annotations"] = vFn + vrhDescription := v.DescriptionValidationRuleHandler + rulesDescription := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "1200", + } + vFn, err = vrhDescription(rulesDescription) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ObjectCreateMetaType.description: %s", err) + panic(errMsg) + } + v.FldValidators["description"] = vFn + return v }() @@ -9130,6 +9162,16 @@ func (v *ValidateObjectGetMetaType) AnnotationsValidationRuleHandler(rules map[s return validatorFn, nil } +func (v *ValidateObjectGetMetaType) DescriptionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for description") + } + + return validatorFn, nil +} + func (v *ValidateObjectGetMetaType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*ObjectGetMetaType) if !ok { @@ -9240,6 +9282,17 @@ var DefaultObjectGetMetaTypeValidator = func() *ValidateObjectGetMetaType { } v.FldValidators["annotations"] = vFn + vrhDescription := v.DescriptionValidationRuleHandler + rulesDescription := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "1200", + } + vFn, err = vrhDescription(rulesDescription) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ObjectGetMetaType.description: %s", err) + panic(errMsg) + } + v.FldValidators["description"] = vFn + return v }() @@ -9353,6 +9406,16 @@ func (v *ValidateObjectMetaType) AnnotationsValidationRuleHandler(rules map[stri return validatorFn, nil } +func (v *ValidateObjectMetaType) DescriptionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for description") + } + + return validatorFn, nil +} + func (v *ValidateObjectMetaType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*ObjectMetaType) if !ok { @@ -9472,6 +9535,17 @@ var DefaultObjectMetaTypeValidator = func() *ValidateObjectMetaType { } v.FldValidators["annotations"] = vFn + vrhDescription := v.DescriptionValidationRuleHandler + rulesDescription := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "1200", + } + vFn, err = vrhDescription(rulesDescription) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ObjectMetaType.description: %s", err) + panic(errMsg) + } + v.FldValidators["description"] = vFn + return v }() @@ -9704,6 +9778,16 @@ func (v *ValidateObjectReplaceMetaType) AnnotationsValidationRuleHandler(rules m return validatorFn, nil } +func (v *ValidateObjectReplaceMetaType) DescriptionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for description") + } + + return validatorFn, nil +} + func (v *ValidateObjectReplaceMetaType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*ObjectReplaceMetaType) if !ok { @@ -9803,6 +9887,17 @@ var DefaultObjectReplaceMetaTypeValidator = func() *ValidateObjectReplaceMetaTyp } v.FldValidators["annotations"] = vFn + vrhDescription := v.DescriptionValidationRuleHandler + rulesDescription := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "1200", + } + vFn, err = vrhDescription(rulesDescription) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ObjectReplaceMetaType.description: %s", err) + panic(errMsg) + } + v.FldValidators["description"] = vFn + return v }() diff --git a/pbgo/extschema/schema/ui/static_component/crudapi/api.vesapi.go b/pbgo/extschema/schema/ui/static_component/crudapi/api.vesapi.go index 6a172c396..7eff4dfff 100644 --- a/pbgo/extschema/schema/ui/static_component/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/ui/static_component/crudapi/api.vesapi.go @@ -2930,10 +2930,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/ui/static_component/public_crudapi.vesapi.go b/pbgo/extschema/schema/ui/static_component/public_crudapi.vesapi.go index d3e019eef..757be8c3f 100644 --- a/pbgo/extschema/schema/ui/static_component/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/ui/static_component/public_crudapi.vesapi.go @@ -1336,10 +1336,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/usb_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/usb_policy/crudapi/api.vesapi.go index 3e674fc3b..ca02f44cb 100644 --- a/pbgo/extschema/schema/usb_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/usb_policy/crudapi/api.vesapi.go @@ -3042,10 +3042,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/usb_policy/object.pb.go b/pbgo/extschema/schema/usb_policy/object.pb.go index cfcb33916..d1d975fee 100644 --- a/pbgo/extschema/schema/usb_policy/object.pb.go +++ b/pbgo/extschema/schema/usb_policy/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_a97b2097d5f1d535 = []byte{ - // 591 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x41, 0x4f, 0x14, 0x31, - 0x14, 0x80, 0xb7, 0xbb, 0x64, 0x21, 0x05, 0x91, 0x8c, 0x97, 0x11, 0xb5, 0x21, 0xab, 0x26, 0x1c, - 0x9c, 0x99, 0x04, 0xa3, 0x89, 0x84, 0x90, 0x08, 0x2a, 0x17, 0xd0, 0x64, 0xf1, 0xe4, 0x65, 0xd3, - 0xe9, 0xbe, 0x19, 0xaa, 0x33, 0xd3, 0x49, 0xdb, 0x19, 0xd9, 0x83, 0x89, 0x3f, 0xc0, 0x83, 0x3f, - 0xc3, 0xf8, 0x27, 0x14, 0x4f, 0x1e, 0x09, 0x27, 0x8e, 0x32, 0x7b, 0x21, 0x9e, 0x48, 0xfc, 0x03, - 0x86, 0x0e, 0x03, 0x2c, 0xee, 0x1a, 0x13, 0xb9, 0xb5, 0x79, 0x5f, 0xbf, 0xbe, 0xf6, 0xbd, 0x16, - 0xdf, 0xcd, 0x41, 0xb9, 0x5c, 0x78, 0x8a, 0x6d, 0x41, 0x4c, 0xbd, 0x4c, 0xf9, 0x9d, 0x54, 0x44, - 0x9c, 0xf5, 0x3c, 0xe1, 0xbf, 0x06, 0xa6, 0xdd, 0x54, 0x0a, 0x2d, 0x2c, 0xbb, 0xc4, 0xdc, 0x12, - 0x73, 0xcf, 0xb0, 0x59, 0x27, 0xe4, 0x7a, 0x2b, 0xf3, 0x5d, 0x26, 0x62, 0x2f, 0x14, 0xa1, 0xf0, - 0xcc, 0x02, 0x3f, 0x0b, 0xcc, 0xcc, 0x4c, 0xcc, 0xa8, 0x14, 0xcd, 0xde, 0x18, 0xdc, 0x4f, 0xa4, - 0x9a, 0x8b, 0x44, 0x9d, 0x04, 0xaf, 0x0f, 0x06, 0x75, 0x2f, 0x85, 0x2a, 0x74, 0x67, 0x64, 0x9e, - 0xe7, 0xa9, 0xd6, 0x20, 0x95, 0x83, 0x82, 0x24, 0x1f, 0xdc, 0xa4, 0xf5, 0x65, 0x0c, 0x37, 0x5f, - 0x98, 0xb3, 0x59, 0x8f, 0xf0, 0x44, 0x0c, 0x9a, 0x76, 0xa9, 0xa6, 0x36, 0x9a, 0x43, 0xf3, 0x93, - 0x0b, 0xb7, 0xdc, 0xc1, 0x83, 0x96, 0xe0, 0x06, 0x68, 0xfa, 0xb2, 0x97, 0x42, 0xfb, 0x14, 0xb7, - 0xd6, 0xf1, 0x55, 0xd5, 0x53, 0x1a, 0xe2, 0xce, 0xa9, 0xa1, 0x6e, 0x0c, 0xb7, 0x2f, 0x18, 0x36, - 0x0d, 0x75, 0xc1, 0x33, 0x5d, 0xae, 0xdd, 0xa8, 0x6c, 0x0f, 0xf1, 0x98, 0x4a, 0x81, 0xd9, 0x0d, - 0xa3, 0x68, 0xb9, 0xa3, 0x6e, 0xdb, 0xdd, 0x4c, 0x81, 0x19, 0x83, 0xe1, 0x17, 0x7f, 0xd5, 0xbf, - 0xed, 0xd8, 0xf5, 0x19, 0xb4, 0xb7, 0x63, 0x1f, 0xd6, 0xf1, 0x53, 0xdc, 0x58, 0x03, 0x6d, 0x2d, - 0x07, 0x0f, 0xb6, 0x99, 0xa3, 0xb8, 0x06, 0x27, 0xa6, 0x09, 0x0d, 0x21, 0x86, 0x44, 0x3b, 0x3e, - 0x55, 0x9c, 0x39, 0xb1, 0x48, 0xb8, 0x16, 0xf2, 0xde, 0x5c, 0x0e, 0xca, 0xe1, 0xc2, 0xe1, 0x49, - 0x20, 0xa9, 0xd2, 0x32, 0x63, 0x3a, 0x93, 0xe0, 0x48, 0xa0, 0x5d, 0xbc, 0x86, 0xc7, 0xdb, 0x90, - 0x46, 0x94, 0x81, 0xb5, 0xf4, 0x17, 0x55, 0xa6, 0x60, 0xa4, 0xe7, 0xad, 0xe4, 0x1a, 0xf0, 0x33, - 0xdc, 0x5c, 0x95, 0x40, 0xf5, 0x25, 0x78, 0x9e, 0x40, 0x04, 0x97, 0xe0, 0x19, 0x5b, 0xe7, 0xea, - 0xbf, 0x2f, 0xa8, 0xb5, 0x81, 0x27, 0xaa, 0x3a, 0x58, 0x8f, 0xf1, 0x78, 0xc8, 0x3a, 0xa6, 0x78, - 0x65, 0x07, 0xcd, 0x8f, 0x2e, 0xde, 0x5a, 0x24, 0x7c, 0x1a, 0x9d, 0x96, 0xb0, 0x19, 0xb2, 0xe3, - 0x71, 0xeb, 0x27, 0xc2, 0x53, 0x9b, 0x9a, 0xea, 0x4c, 0xfd, 0x73, 0x5b, 0x96, 0xf8, 0xd0, 0xb6, - 0x9c, 0x2c, 0xdf, 0x6d, 0x47, 0x42, 0xa0, 0xec, 0xfa, 0x5c, 0x63, 0x7e, 0x72, 0xe1, 0xe6, 0xd0, - 0xa6, 0x6e, 0x43, 0x70, 0xbc, 0x78, 0xe5, 0xca, 0xe7, 0x77, 0xf8, 0x2c, 0xc9, 0x36, 0x16, 0x55, - 0x54, 0x59, 0x4b, 0x18, 0x33, 0x91, 0x74, 0xb9, 0x79, 0x3e, 0x76, 0x63, 0xa8, 0x6c, 0xb5, 0x02, - 0x4c, 0x26, 0xe7, 0xf8, 0xc5, 0x6b, 0x7b, 0xcb, 0x33, 0x78, 0x1a, 0x4f, 0x55, 0xc9, 0xb9, 0x19, - 0xef, 0xae, 0x7c, 0x40, 0xbb, 0x07, 0xa4, 0xb6, 0x7f, 0x40, 0x6a, 0x47, 0x07, 0x04, 0xbd, 0x2f, - 0x08, 0xfa, 0x54, 0x10, 0xf4, 0xbd, 0x20, 0x68, 0xb7, 0x20, 0x68, 0xbf, 0x20, 0xe8, 0x47, 0x41, - 0xd0, 0x61, 0x41, 0x6a, 0x47, 0x05, 0x41, 0x1f, 0xfb, 0xa4, 0xf6, 0xb5, 0x4f, 0xd0, 0x6e, 0x9f, - 0xd4, 0xf6, 0xfb, 0xa4, 0xf6, 0xea, 0x79, 0x28, 0xd2, 0x37, 0xa1, 0x9b, 0x8b, 0x48, 0x83, 0x94, - 0xc7, 0xb7, 0xeb, 0x99, 0x41, 0x20, 0x64, 0xec, 0xa4, 0x52, 0xe4, 0xbc, 0x0b, 0xd2, 0xa9, 0xc2, - 0x5e, 0xea, 0x87, 0xc2, 0x83, 0x6d, 0x7d, 0xf2, 0x1f, 0xfc, 0xf1, 0x79, 0xf8, 0x4d, 0xf3, 0x27, - 0xdc, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x9a, 0xf9, 0x53, 0x07, 0x07, 0x05, 0x00, 0x00, + // 608 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0x77, 0xd8, 0x75, 0x21, 0x03, 0x22, 0xa9, 0x97, 0x8a, 0x3a, 0x21, 0xab, 0x26, 0x1c, + 0x6c, 0x9b, 0x60, 0x34, 0x91, 0x18, 0x13, 0xc1, 0x84, 0x0b, 0x68, 0xb2, 0x78, 0xf2, 0xb2, 0x4e, + 0xa7, 0x6f, 0xcb, 0x40, 0xdb, 0x69, 0x66, 0xa6, 0x95, 0x3d, 0x98, 0xf8, 0x01, 0x3c, 0xf8, 0x19, + 0x3c, 0x19, 0x13, 0xbf, 0x83, 0x78, 0xf2, 0x48, 0x38, 0x71, 0x94, 0xee, 0xc5, 0x78, 0xe2, 0xea, + 0xcd, 0x30, 0xa5, 0xc0, 0xe2, 0xa2, 0x9e, 0xf6, 0x36, 0xcd, 0xfb, 0xbd, 0xff, 0xff, 0xcd, 0xf4, + 0xbd, 0x87, 0xef, 0xe4, 0xa0, 0x5c, 0x2e, 0x3c, 0xc5, 0x36, 0x20, 0xa6, 0x5e, 0xa6, 0xfc, 0x4e, + 0x2a, 0x22, 0xce, 0x7a, 0x9e, 0xf0, 0x37, 0x81, 0x69, 0x37, 0x95, 0x42, 0x0b, 0xcb, 0x2e, 0x31, + 0xb7, 0xc4, 0xdc, 0x53, 0x6c, 0xd6, 0x09, 0xb9, 0xde, 0xc8, 0x7c, 0x97, 0x89, 0xd8, 0x0b, 0x45, + 0x28, 0x3c, 0x93, 0xe0, 0x67, 0x5d, 0xf3, 0x65, 0x3e, 0xcc, 0xa9, 0x14, 0x9a, 0xbd, 0x3e, 0xe8, + 0x27, 0x52, 0xcd, 0x45, 0xa2, 0x8e, 0x83, 0xd7, 0x06, 0x83, 0xba, 0x97, 0x42, 0x15, 0xba, 0x7d, + 0x61, 0x9d, 0x67, 0xa9, 0xd6, 0x20, 0x95, 0x83, 0x82, 0x24, 0x1f, 0x34, 0x69, 0xfd, 0xba, 0x84, + 0x9b, 0xcf, 0xcd, 0xdd, 0xac, 0x87, 0x78, 0x22, 0x06, 0x4d, 0x03, 0xaa, 0xa9, 0x8d, 0xe6, 0xd0, + 0xfc, 0xe4, 0xc2, 0x4d, 0x77, 0xf0, 0xa2, 0x25, 0xb8, 0x06, 0x9a, 0xbe, 0xe8, 0xa5, 0xd0, 0x3e, + 0xc1, 0xad, 0x55, 0x7c, 0x45, 0xf5, 0x94, 0x86, 0xb8, 0x73, 0xa2, 0x30, 0x66, 0x14, 0x6e, 0x9d, + 0x53, 0x58, 0x37, 0xd4, 0x39, 0x9d, 0xe9, 0x32, 0x77, 0xad, 0x52, 0x7b, 0x80, 0x1b, 0x2a, 0x05, + 0x66, 0xd7, 0x8d, 0x44, 0xcb, 0xbd, 0xe8, 0xb5, 0xdd, 0xf5, 0x14, 0x98, 0x51, 0x30, 0xfc, 0xe2, + 0xe7, 0xc6, 0xd7, 0x1d, 0x7b, 0x6c, 0x06, 0xed, 0xed, 0xd8, 0x1f, 0x1a, 0x38, 0xc2, 0xf5, 0x15, + 0xd0, 0x16, 0x74, 0xef, 0x6f, 0x33, 0x47, 0x71, 0x0d, 0x4e, 0x4c, 0x13, 0x1a, 0x42, 0x0c, 0x89, + 0x76, 0x7c, 0xaa, 0x38, 0x73, 0x62, 0x91, 0x70, 0x2d, 0xe4, 0xdd, 0xb9, 0xa1, 0x8c, 0xd2, 0x34, + 0x09, 0xa8, 0x0c, 0x4e, 0xb1, 0x1c, 0x94, 0xc3, 0x85, 0xc3, 0x93, 0xae, 0xa4, 0x4a, 0xcb, 0x8c, + 0xe9, 0x4c, 0x82, 0x23, 0x81, 0x06, 0x78, 0x0b, 0x8f, 0xb7, 0x21, 0x8d, 0x28, 0x03, 0xeb, 0xd5, + 0x5f, 0x1c, 0x33, 0x05, 0xff, 0xb4, 0x2b, 0x99, 0xe1, 0x5e, 0xaf, 0x25, 0xd7, 0x80, 0x37, 0x71, + 0x73, 0x59, 0x02, 0xd5, 0x23, 0xf2, 0x7a, 0x0a, 0x11, 0x8c, 0xc4, 0x2b, 0xc6, 0x8d, 0x55, 0xae, + 0x46, 0xf5, 0xcf, 0x5a, 0x6b, 0x78, 0xa2, 0xea, 0x20, 0xeb, 0x09, 0x1e, 0x0f, 0x59, 0xc7, 0xb4, + 0x5d, 0xd9, 0xfb, 0xf3, 0x17, 0xb7, 0xdd, 0x4a, 0x24, 0x7c, 0x1a, 0x9d, 0x34, 0x5f, 0x33, 0x64, + 0x47, 0xe7, 0xd6, 0x4f, 0x84, 0xa7, 0xd6, 0x35, 0xd5, 0x99, 0xfa, 0xef, 0x81, 0x2a, 0xf1, 0xa1, + 0x03, 0x35, 0x59, 0x6e, 0x9c, 0x8e, 0x84, 0xae, 0xb2, 0xc7, 0xe6, 0xea, 0xf3, 0x93, 0x0b, 0x37, + 0x86, 0x8e, 0x63, 0x1b, 0xba, 0x47, 0xc9, 0x4b, 0x97, 0x3f, 0xbd, 0xc1, 0xa7, 0x45, 0xb6, 0xb1, + 0xa8, 0xa2, 0xca, 0x7a, 0x84, 0x31, 0x13, 0x49, 0xc0, 0xcd, 0xe0, 0xdb, 0xf5, 0xa1, 0x62, 0xcb, + 0x15, 0x60, 0x2a, 0x39, 0xc3, 0x2f, 0x5e, 0xdd, 0x7b, 0x3c, 0x83, 0xa7, 0xf1, 0x54, 0x55, 0x9c, + 0x9b, 0xf1, 0x60, 0xe9, 0x1d, 0xda, 0x3d, 0x20, 0xb5, 0xfd, 0x03, 0x52, 0x3b, 0x3c, 0x20, 0xe8, + 0x6d, 0x41, 0xd0, 0xc7, 0x82, 0xa0, 0x6f, 0x05, 0x41, 0xbb, 0x05, 0x41, 0xfb, 0x05, 0x41, 0xdf, + 0x0b, 0x82, 0x7e, 0x14, 0xa4, 0x76, 0x58, 0x10, 0xf4, 0xbe, 0x4f, 0x6a, 0x5f, 0xfa, 0x04, 0xed, + 0xf6, 0x49, 0x6d, 0xbf, 0x4f, 0x6a, 0x2f, 0x9f, 0x85, 0x22, 0xdd, 0x0a, 0xdd, 0x5c, 0x44, 0x1a, + 0xa4, 0x3c, 0x7a, 0x5d, 0xcf, 0x1c, 0xba, 0x42, 0xc6, 0x4e, 0x2a, 0x45, 0xce, 0x03, 0x90, 0x4e, + 0x15, 0xf6, 0x52, 0x3f, 0x14, 0x1e, 0x6c, 0xeb, 0xe3, 0x4d, 0xf6, 0xc7, 0xda, 0xf3, 0x9b, 0x66, + 0x9b, 0xdd, 0xfb, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x03, 0x4b, 0xbb, 0x27, 0xc1, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/usb_policy/public_crudapi.pb.go b/pbgo/extschema/schema/usb_policy/public_crudapi.pb.go index c5211ccf0..1f26bef79 100644 --- a/pbgo/extschema/schema/usb_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/usb_policy/public_crudapi.pb.go @@ -1056,109 +1056,110 @@ func init() { } var fileDescriptor_51045b471d6ad973 = []byte{ - // 1620 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x13, 0xd9, - 0x1d, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0x63, 0x78, 0x85, 0x30, 0x71, 0xa9, 0xeb, 0x9a, 0x84, - 0x86, 0x08, 0xdb, 0x34, 0xa8, 0x08, 0x42, 0x4b, 0x71, 0x9c, 0x49, 0x48, 0xc8, 0x07, 0x1a, 0x1b, - 0x84, 0x90, 0xaa, 0xd1, 0x78, 0xfc, 0x6c, 0xa6, 0xd8, 0x33, 0xd3, 0x79, 0xcf, 0x0e, 0x16, 0x4a, - 0x55, 0x21, 0xf5, 0x58, 0x09, 0xa9, 0x97, 0xaa, 0xaa, 0xaa, 0x5e, 0x2a, 0x55, 0x7b, 0xde, 0xc3, - 0x4a, 0xb9, 0x70, 0x5a, 0x10, 0x07, 0x84, 0xd8, 0x0b, 0xda, 0xc3, 0x6a, 0x71, 0xf6, 0xc0, 0x69, - 0x85, 0xf6, 0xb0, 0xe7, 0xd5, 0xbc, 0x37, 0x63, 0x6c, 0xc7, 0x4e, 0x1c, 0xc8, 0x29, 0xf3, 0xfe, - 0x1f, 0xbf, 0xf9, 0xff, 0xde, 0xff, 0x23, 0x7f, 0x0f, 0x4c, 0xd6, 0x31, 0x49, 0xe9, 0x66, 0x9a, - 0x68, 0xf7, 0x71, 0x55, 0x4d, 0xd7, 0x48, 0x41, 0xb1, 0xcc, 0x8a, 0xae, 0x35, 0xd2, 0x56, 0xad, - 0x50, 0xd1, 0x35, 0x45, 0xb3, 0x6b, 0x45, 0xd5, 0xd2, 0x53, 0x96, 0x6d, 0x52, 0x13, 0x89, 0xdc, - 0x3c, 0xc5, 0xcd, 0x53, 0x1f, 0xcc, 0xa3, 0xc9, 0xb2, 0x4e, 0xef, 0xd7, 0x0a, 0x29, 0xcd, 0xac, - 0xa6, 0xcb, 0x66, 0xd9, 0x4c, 0x33, 0x87, 0x42, 0xad, 0xc4, 0x4e, 0xec, 0xc0, 0x9e, 0x38, 0x50, - 0xf4, 0x74, 0xd9, 0x34, 0xcb, 0x15, 0x9c, 0x56, 0x2d, 0x3d, 0xad, 0x1a, 0x86, 0x49, 0x55, 0xaa, - 0x9b, 0x06, 0x71, 0xb5, 0x3f, 0x77, 0xb5, 0x2d, 0x0c, 0x5c, 0xb5, 0x68, 0xc3, 0x55, 0x46, 0x3b, - 0x43, 0xc6, 0xb6, 0x6d, 0xda, 0x2d, 0xc7, 0x4e, 0x9d, 0x69, 0xb5, 0xa3, 0x4e, 0x76, 0x2a, 0x69, - 0xc3, 0xc2, 0x9e, 0x6a, 0xba, 0xef, 0x35, 0x98, 0x85, 0x3f, 0x61, 0x8d, 0xba, 0x66, 0x53, 0x7d, - 0xcd, 0xda, 0xc1, 0x12, 0x9d, 0x56, 0x75, 0x4c, 0xb0, 0x51, 0xef, 0x8a, 0x25, 0xde, 0x65, 0xa3, - 0xe3, 0x2d, 0xa5, 0xc3, 0x22, 0xf1, 0x19, 0x80, 0xa3, 0x59, 0x1b, 0xab, 0x14, 0xcb, 0xf8, 0xcf, - 0x35, 0x4c, 0x28, 0xfa, 0x03, 0x0c, 0x55, 0x31, 0x55, 0x8b, 0x2a, 0x55, 0x45, 0x10, 0x07, 0x33, - 0x91, 0xb9, 0x33, 0xa9, 0xce, 0x7c, 0x6c, 0xb2, 0x60, 0xb9, 0xd7, 0x3a, 0xa6, 0x6a, 0xbe, 0x61, - 0x61, 0xb9, 0xe5, 0x84, 0xd6, 0x61, 0x80, 0x58, 0x58, 0x13, 0x7d, 0xcc, 0x79, 0x26, 0xd5, 0x2f, - 0x99, 0x29, 0x8e, 0x90, 0xb3, 0xb0, 0xe6, 0x20, 0x2c, 0x8c, 0xff, 0x6b, 0x7b, 0xc4, 0x71, 0x4c, - 0x95, 0x35, 0xc5, 0xf9, 0x2b, 0x33, 0x98, 0xf9, 0xf0, 0x8b, 0x6b, 0x41, 0xfe, 0xc6, 0xc4, 0x8f, - 0x00, 0x8e, 0x79, 0xc1, 0x12, 0xcb, 0x34, 0x08, 0x46, 0xbf, 0xdb, 0x13, 0x6d, 0xbc, 0x67, 0xb4, - 0xcb, 0x98, 0xf6, 0x08, 0x75, 0x13, 0x8e, 0x93, 0x06, 0xa1, 0xb8, 0xaa, 0xb4, 0x40, 0xfc, 0x0c, - 0xe4, 0x6c, 0x17, 0x48, 0x8e, 0x59, 0xed, 0x85, 0x1a, 0xe3, 0xee, 0xeb, 0x1e, 0xe0, 0x6a, 0x07, - 0xf7, 0xe9, 0xfe, 0xdc, 0x97, 0x31, 0x3d, 0x04, 0xf1, 0x6f, 0x00, 0x1c, 0x93, 0xb1, 0x55, 0x51, - 0xb5, 0x56, 0x9a, 0xae, 0xef, 0x21, 0x3e, 0xd5, 0x93, 0xb8, 0xeb, 0xd6, 0x83, 0xfc, 0x46, 0x47, - 0xac, 0xe7, 0xfa, 0xc7, 0xea, 0x42, 0x1c, 0x10, 0x2f, 0x4a, 0x43, 0xc1, 0xc6, 0xc4, 0xac, 0xd9, - 0x1a, 0x56, 0xea, 0xd8, 0x26, 0xba, 0x69, 0xb0, 0xdb, 0x0c, 0x2f, 0x04, 0xde, 0xed, 0x00, 0x20, - 0x8f, 0x7b, 0xda, 0x3b, 0x5c, 0xd9, 0x4e, 0xf0, 0x38, 0x1c, 0x6f, 0xf1, 0xe3, 0x99, 0x4d, 0xfc, - 0x13, 0x40, 0xb8, 0x8c, 0xa9, 0xc7, 0xf7, 0x34, 0x0c, 0x1b, 0x6a, 0x15, 0x13, 0x4b, 0xd5, 0x30, - 0x23, 0x1c, 0x96, 0x3f, 0x08, 0x10, 0x82, 0x01, 0xe7, 0xc0, 0xb8, 0x84, 0x65, 0xf6, 0x8c, 0xee, - 0x42, 0xe7, 0x8d, 0x0c, 0x4c, 0x29, 0x99, 0x76, 0x55, 0xa5, 0x2c, 0x9c, 0xb1, 0xb9, 0xf4, 0xbe, - 0x69, 0xf1, 0x02, 0x58, 0x62, 0x2e, 0x59, 0xb3, 0x88, 0xe5, 0x31, 0xbb, 0x43, 0x96, 0xf8, 0x5b, - 0x10, 0x46, 0xda, 0x2c, 0xd1, 0x0d, 0x18, 0xd1, 0x58, 0x59, 0xb2, 0xf7, 0xb8, 0x17, 0xfa, 0xeb, - 0x83, 0x0a, 0xdf, 0x65, 0x26, 0x43, 0xee, 0xeb, 0x60, 0xa3, 0x9b, 0x70, 0xc4, 0xe6, 0xf7, 0xc0, - 0xa1, 0xfc, 0x07, 0xf5, 0x50, 0x67, 0x55, 0xc8, 0x11, 0xd7, 0x9b, 0x81, 0xf5, 0x4a, 0x48, 0x60, - 0x9f, 0x84, 0x74, 0x34, 0xd3, 0xf0, 0x51, 0x34, 0xd3, 0xb1, 0x23, 0x69, 0xa6, 0xe0, 0xa7, 0x37, - 0x13, 0x92, 0x60, 0x90, 0x50, 0x95, 0xd6, 0x88, 0xf8, 0xdf, 0x7f, 0x83, 0xb8, 0xbf, 0x47, 0x54, - 0x6d, 0x78, 0x39, 0x66, 0xc9, 0x03, 0x5c, 0xf0, 0x3f, 0xdd, 0x06, 0xb2, 0xeb, 0x8c, 0x56, 0xe0, - 0x71, 0x1b, 0x97, 0xb0, 0x6d, 0xeb, 0x46, 0x59, 0xe1, 0x43, 0x9b, 0x88, 0x21, 0x86, 0x77, 0xba, - 0x4f, 0xfb, 0x95, 0x18, 0x37, 0xa1, 0xe5, 0xc6, 0xe5, 0x04, 0xdd, 0x81, 0x62, 0x11, 0x57, 0x30, - 0xc5, 0x45, 0x85, 0xeb, 0x70, 0xb1, 0x85, 0x18, 0x1e, 0x00, 0x71, 0xc2, 0xf5, 0x96, 0x5d, 0x67, - 0x0f, 0xf7, 0x2e, 0x9c, 0x2c, 0xea, 0x44, 0x2d, 0x54, 0x7a, 0x01, 0xc3, 0x01, 0x80, 0x4f, 0x79, - 0xee, 0x5d, 0xc8, 0x6d, 0xfd, 0xba, 0x1a, 0x08, 0x01, 0xc1, 0x97, 0xf8, 0x1f, 0x80, 0x91, 0x35, - 0x9d, 0x0c, 0xd8, 0xa3, 0xbf, 0x82, 0x23, 0x15, 0xb5, 0x80, 0x2b, 0x4a, 0x49, 0xaf, 0x50, 0x6c, - 0xbb, 0xbd, 0x1a, 0x61, 0xb2, 0x25, 0x26, 0x42, 0x67, 0xe0, 0xa8, 0x8d, 0x2d, 0xd3, 0xa6, 0x4a, - 0x49, 0xc7, 0x95, 0x22, 0x11, 0xfd, 0x71, 0xff, 0x4c, 0x58, 0x1e, 0xe1, 0xc2, 0x25, 0x26, 0x43, - 0x17, 0xe0, 0x09, 0xd7, 0x88, 0x27, 0xc5, 0xb3, 0x0d, 0x30, 0x5b, 0xc4, 0x75, 0x3c, 0x85, 0xdc, - 0x23, 0xf1, 0x79, 0x10, 0x0a, 0x3c, 0x4e, 0xde, 0xb0, 0x2b, 0x14, 0x57, 0xd1, 0x04, 0x0c, 0x52, - 0x6c, 0xa8, 0x06, 0x65, 0xf5, 0x15, 0x96, 0xdd, 0xd3, 0x47, 0x0c, 0x1a, 0x01, 0xfa, 0x6b, 0x7a, - 0x91, 0xcf, 0x3a, 0xd9, 0x79, 0x44, 0x71, 0x18, 0x29, 0x62, 0xa2, 0xd9, 0x3a, 0xfb, 0x5f, 0x2b, - 0x46, 0x38, 0xd3, 0x36, 0x11, 0x8a, 0xc2, 0x90, 0x77, 0xcd, 0xe2, 0x48, 0x1c, 0xcc, 0x84, 0xe4, - 0xd6, 0x19, 0x6d, 0xc0, 0x20, 0xbb, 0x14, 0x4e, 0x29, 0x32, 0x77, 0xa9, 0x7f, 0xa5, 0x76, 0xb3, - 0x4a, 0xad, 0x31, 0x47, 0xc9, 0xa0, 0x76, 0x43, 0x76, 0x51, 0xd0, 0x1f, 0x61, 0xa4, 0x6d, 0xf9, - 0x71, 0x6b, 0xe0, 0xea, 0x21, 0x40, 0x33, 0x1f, 0xbc, 0x39, 0x72, 0x3b, 0x1e, 0xba, 0x02, 0xa1, - 0xb9, 0x65, 0x60, 0x5b, 0x71, 0xd6, 0x0b, 0x31, 0xcc, 0x9a, 0x35, 0xda, 0x85, 0x7e, 0x47, 0xc7, - 0x5b, 0x5e, 0x7d, 0x85, 0x99, 0xb5, 0x23, 0xe9, 0x18, 0x38, 0xa3, 0x47, 0x31, 0x70, 0xc6, 0x3e, - 0x69, 0xe0, 0x5c, 0x87, 0xa1, 0x32, 0xa6, 0x6c, 0x6c, 0xb8, 0xa3, 0x6b, 0xb0, 0xa1, 0x23, 0x1f, - 0x2b, 0xf3, 0x03, 0x5a, 0x85, 0xd0, 0x2d, 0x4a, 0x82, 0xa9, 0x3b, 0x18, 0x0e, 0x35, 0x68, 0xc2, - 0xdc, 0x3d, 0x87, 0x69, 0xf4, 0x0a, 0x8c, 0xb4, 0x65, 0xd3, 0xa9, 0xb2, 0x07, 0xb8, 0xe1, 0x56, - 0xa4, 0xf3, 0x88, 0x4e, 0xc0, 0xe1, 0xba, 0x5a, 0xa9, 0x79, 0xc5, 0xc8, 0x0f, 0xf3, 0xbe, 0xcb, - 0x20, 0x7a, 0x0d, 0x0a, 0xdd, 0x39, 0x3b, 0x8c, 0xff, 0x6a, 0x20, 0x34, 0x2c, 0x04, 0x13, 0x8f, - 0x01, 0x1c, 0x69, 0xaf, 0x05, 0x74, 0x1d, 0x0e, 0xeb, 0x14, 0x57, 0x89, 0xc8, 0x27, 0xe8, 0xec, - 0xe0, 0x25, 0x24, 0x73, 0x47, 0x74, 0x01, 0x06, 0xf9, 0x26, 0x2d, 0xfa, 0x18, 0x84, 0xd8, 0x05, - 0x21, 0x39, 0x4a, 0x76, 0xa5, 0xae, 0x5d, 0xe2, 0x01, 0x1c, 0x5d, 0x64, 0x83, 0xee, 0xe3, 0x17, - 0x81, 0x19, 0x28, 0x94, 0x54, 0xbd, 0xa2, 0xe8, 0xa5, 0xd6, 0x40, 0x64, 0xcd, 0x1a, 0x92, 0xc7, - 0x1c, 0xf9, 0x4a, 0xc9, 0x1b, 0x74, 0xb3, 0x3f, 0x00, 0x78, 0xb2, 0xe7, 0x0a, 0x80, 0xa2, 0x70, - 0x62, 0x59, 0xca, 0x2b, 0x72, 0xee, 0x96, 0xb2, 0xb4, 0x29, 0xaf, 0x67, 0xf2, 0xca, 0xa2, 0xb4, - 0x94, 0xb9, 0xbd, 0x96, 0x17, 0x86, 0xd0, 0x2f, 0xe0, 0x64, 0x97, 0x6e, 0x69, 0x53, 0x56, 0xb2, - 0xb2, 0x94, 0xc9, 0x4b, 0x02, 0x40, 0x31, 0x18, 0xed, 0xa1, 0x96, 0xa5, 0x5b, 0x6b, 0x99, 0xac, - 0x24, 0xf8, 0xd0, 0x24, 0x3c, 0xd9, 0xa5, 0xcf, 0xe5, 0x33, 0xf9, 0xdb, 0x39, 0xc1, 0x8f, 0x4e, - 0xc1, 0x9f, 0x75, 0xa9, 0x64, 0x29, 0xb3, 0x28, 0x04, 0xd0, 0x14, 0x8c, 0xef, 0x51, 0x2c, 0x49, - 0xb2, 0xbc, 0xb2, 0xb1, 0xac, 0x6c, 0x2e, 0xac, 0x4a, 0xd9, 0x7c, 0x4e, 0x18, 0xee, 0x61, 0xb5, - 0x20, 0x6f, 0xde, 0x94, 0x36, 0xb8, 0xb1, 0xb4, 0x91, 0x95, 0x72, 0x42, 0x70, 0xee, 0x3f, 0x61, - 0xe8, 0xcf, 0xdc, 0x5a, 0x41, 0x5f, 0x03, 0x18, 0xe4, 0x9b, 0x09, 0x1a, 0x74, 0x77, 0x89, 0xce, - 0x1c, 0x6c, 0xe8, 0xae, 0x73, 0xdb, 0xcd, 0x67, 0xe2, 0xd5, 0xd2, 0x6f, 0x1f, 0x6a, 0x49, 0xa2, - 0x53, 0x9c, 0xac, 0xaa, 0x86, 0x5a, 0xc6, 0x55, 0x6c, 0xd0, 0x64, 0x41, 0x25, 0xba, 0x96, 0xac, - 0x11, 0x6c, 0x9f, 0xaf, 0x63, 0x92, 0xd4, 0xcd, 0xa4, 0x6e, 0x94, 0x6c, 0x95, 0x50, 0xbb, 0xa6, - 0xd1, 0x9a, 0x8d, 0x93, 0x5b, 0xb6, 0x4e, 0xf1, 0xe3, 0xaf, 0xbe, 0xfb, 0x87, 0xef, 0x72, 0xe2, - 0xa2, 0xfb, 0x8b, 0x31, 0xdd, 0x4a, 0x39, 0x49, 0x3f, 0xf2, 0xda, 0x3f, 0xd5, 0x12, 0x6e, 0xb7, - 0xfd, 0x6a, 0x22, 0xf3, 0x60, 0x16, 0xbd, 0x06, 0xd0, 0xbf, 0x8c, 0x29, 0x9a, 0x3a, 0x60, 0xf7, - 0xe3, 0xb4, 0xa6, 0x07, 0xda, 0x10, 0x13, 0x7f, 0x79, 0xfe, 0x85, 0x0f, 0x34, 0x9f, 0x89, 0xbf, - 0xdf, 0x87, 0x57, 0xd5, 0x34, 0x74, 0x6a, 0xf6, 0xa3, 0x66, 0x63, 0xb5, 0xc8, 0x98, 0x5d, 0x44, - 0xbf, 0xe9, 0xc5, 0xac, 0x37, 0x21, 0x2e, 0xdf, 0x46, 0x2f, 0x01, 0x0c, 0x38, 0x9d, 0x86, 0xa6, - 0x0f, 0xea, 0x44, 0x4e, 0xeb, 0xec, 0x60, 0x0d, 0x9b, 0xd8, 0x3a, 0x3a, 0x5e, 0xe7, 0xd1, 0xec, - 0xe0, 0xbc, 0xd0, 0xf7, 0x00, 0x1e, 0x73, 0x37, 0x5a, 0x34, 0xf0, 0xd2, 0x1b, 0x3d, 0x37, 0x80, - 0xa5, 0xcb, 0xec, 0xef, 0xe0, 0x28, 0xca, 0xf0, 0x46, 0x34, 0xfb, 0x11, 0x65, 0xd8, 0x65, 0xb0, - 0xed, 0x94, 0xe5, 0x97, 0x00, 0x06, 0xf9, 0x78, 0xdb, 0xaf, 0xe7, 0x3a, 0x06, 0x60, 0x74, 0x22, - 0xc5, 0xbf, 0x5b, 0xa4, 0xbc, 0xef, 0x16, 0x29, 0xa9, 0x6a, 0xd1, 0x46, 0xe2, 0xd1, 0x51, 0x50, - 0xbb, 0x34, 0x7b, 0xf8, 0x3a, 0x9c, 0x07, 0xb3, 0xd1, 0x7b, 0x4f, 0x77, 0x80, 0xef, 0xf5, 0x0e, - 0xf8, 0x65, 0x5f, 0x12, 0xfc, 0xbf, 0xdc, 0x9b, 0x1d, 0x00, 0x9a, 0x3b, 0x60, 0x7a, 0xa0, 0x7f, - 0x89, 0x8f, 0x5f, 0x8a, 0x3e, 0x01, 0x2c, 0x3c, 0x01, 0x2f, 0xae, 0x0d, 0x67, 0xe5, 0xdb, 0x8b, - 0x6b, 0xaf, 0xde, 0xc6, 0x86, 0xde, 0xbc, 0x8d, 0x0d, 0xbd, 0x7f, 0x1b, 0x03, 0x7f, 0x6d, 0xc6, - 0xc0, 0xff, 0x9b, 0x31, 0xf0, 0xbc, 0x19, 0x03, 0xaf, 0x9a, 0x31, 0xf0, 0x6d, 0x33, 0x06, 0xde, - 0x35, 0x63, 0x43, 0xef, 0x9b, 0x31, 0xf0, 0x64, 0x37, 0x36, 0xf4, 0x74, 0x37, 0x06, 0x5e, 0xed, - 0xc6, 0x86, 0xde, 0xec, 0xc6, 0x86, 0xee, 0x6d, 0x94, 0x4d, 0xeb, 0x41, 0x39, 0x55, 0x37, 0x9d, - 0x35, 0xd3, 0x76, 0x5e, 0x98, 0x66, 0x0f, 0xce, 0x8f, 0xac, 0xa4, 0x65, 0x9b, 0x75, 0xbd, 0x88, - 0xed, 0xa4, 0xa7, 0x4e, 0x5b, 0x85, 0xb2, 0x99, 0xc6, 0x0f, 0xa9, 0xfb, 0xdd, 0x64, 0xcf, 0x87, - 0x98, 0x42, 0x90, 0xdd, 0xfd, 0xc5, 0x9f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xae, 0xc8, 0x2f, 0x5d, - 0xd9, 0x12, 0x00, 0x00, + // 1638 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x13, 0x57, + 0x1e, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0x63, 0x78, 0x0b, 0xc1, 0xf1, 0xb2, 0x5e, 0xaf, 0x49, + 0xd8, 0x10, 0x61, 0x9b, 0x0d, 0x5a, 0x04, 0xd9, 0x15, 0xc5, 0x71, 0x26, 0x21, 0x21, 0x1f, 0x68, + 0x6c, 0x10, 0x42, 0x6a, 0x47, 0xe3, 0xf1, 0xb3, 0x99, 0x62, 0xcf, 0x4c, 0xe7, 0x3d, 0x3b, 0x58, + 0x55, 0xa4, 0x0a, 0xa9, 0x77, 0xaa, 0x5e, 0xaa, 0xaa, 0xad, 0x38, 0xb4, 0x52, 0xd5, 0x53, 0x0f, + 0x3d, 0x54, 0xca, 0x85, 0x5b, 0x11, 0x87, 0x0a, 0xb5, 0x87, 0x72, 0xaa, 0x8a, 0xd3, 0x03, 0xea, + 0x09, 0x55, 0x6a, 0xa5, 0x5e, 0xaa, 0x6a, 0xde, 0x9b, 0x31, 0xb6, 0x63, 0x27, 0x0e, 0x20, 0x4e, + 0x99, 0xf7, 0xff, 0xf8, 0xcd, 0xff, 0xf7, 0xfe, 0x1f, 0xf9, 0x7b, 0x60, 0xa2, 0x86, 0x49, 0x52, + 0x33, 0x52, 0x44, 0xbd, 0x81, 0x2b, 0x4a, 0xaa, 0x4a, 0xf2, 0xb2, 0x69, 0x94, 0x35, 0xb5, 0x9e, + 0x32, 0xab, 0xf9, 0xb2, 0xa6, 0xca, 0xaa, 0x55, 0x2d, 0x28, 0xa6, 0x96, 0x34, 0x2d, 0x83, 0x1a, + 0x28, 0xcc, 0xcd, 0x93, 0xdc, 0x3c, 0xf9, 0xcc, 0x3c, 0x92, 0x28, 0x69, 0xf4, 0x46, 0x35, 0x9f, + 0x54, 0x8d, 0x4a, 0xaa, 0x64, 0x94, 0x8c, 0x14, 0x73, 0xc8, 0x57, 0x8b, 0xec, 0xc4, 0x0e, 0xec, + 0x89, 0x03, 0x45, 0x8e, 0x96, 0x0c, 0xa3, 0x54, 0xc6, 0x29, 0xc5, 0xd4, 0x52, 0x8a, 0xae, 0x1b, + 0x54, 0xa1, 0x9a, 0xa1, 0x13, 0x47, 0xfb, 0x77, 0x47, 0xdb, 0xc4, 0xc0, 0x15, 0x93, 0xd6, 0x1d, + 0x65, 0xa4, 0x3d, 0x64, 0x6c, 0x59, 0x86, 0xd5, 0x74, 0x6c, 0xd7, 0x19, 0x66, 0x2b, 0xea, 0x78, + 0xbb, 0x92, 0xd6, 0x4d, 0xec, 0xaa, 0x26, 0x7b, 0x5e, 0x83, 0x91, 0x7f, 0x13, 0xab, 0xd4, 0x31, + 0x9b, 0xe8, 0x69, 0xd6, 0x0a, 0x16, 0x6f, 0xb7, 0xaa, 0x61, 0x82, 0xf5, 0x5a, 0x47, 0x2c, 0xb1, + 0x0e, 0x1b, 0x0d, 0x6f, 0xc8, 0x6d, 0x16, 0xf1, 0x2f, 0x00, 0x1c, 0xce, 0x58, 0x58, 0xa1, 0x58, + 0xc2, 0x6f, 0x55, 0x31, 0xa1, 0xe8, 0x35, 0x18, 0xa8, 0x60, 0xaa, 0x14, 0x14, 0xaa, 0x84, 0x41, + 0x0c, 0x4c, 0x85, 0x66, 0x8e, 0x25, 0xdb, 0xf3, 0xb1, 0xce, 0x82, 0xe5, 0x5e, 0xab, 0x98, 0x2a, + 0xb9, 0xba, 0x89, 0xa5, 0xa6, 0x13, 0x5a, 0x85, 0x3e, 0x62, 0x62, 0x35, 0xec, 0x61, 0xce, 0x53, + 0xc9, 0x5e, 0xc9, 0x4c, 0x72, 0x84, 0xac, 0x89, 0x55, 0x1b, 0x61, 0x6e, 0xf4, 0xc3, 0xcd, 0x21, + 0xdb, 0x31, 0x59, 0x52, 0x65, 0xfb, 0xaf, 0xc4, 0x60, 0x66, 0x83, 0x0f, 0xce, 0xfb, 0xf9, 0x1b, + 0xe3, 0xbf, 0x03, 0x38, 0xe2, 0x06, 0x4b, 0x4c, 0x43, 0x27, 0x18, 0xfd, 0x7f, 0x47, 0xb4, 0xb1, + 0xae, 0xd1, 0x2e, 0x62, 0xda, 0x25, 0xd4, 0x75, 0x38, 0x4a, 0xea, 0x84, 0xe2, 0x8a, 0xdc, 0x04, + 0xf1, 0x32, 0x90, 0xe3, 0x1d, 0x20, 0x59, 0x66, 0xb5, 0x13, 0x6a, 0x84, 0xbb, 0xaf, 0xba, 0x80, + 0xcb, 0x6d, 0xdc, 0x27, 0x7b, 0x73, 0x5f, 0xc4, 0x74, 0x1f, 0xc4, 0x7f, 0x04, 0x70, 0x44, 0xc2, + 0x66, 0x59, 0x51, 0x9b, 0x69, 0xba, 0xb0, 0x83, 0xf8, 0x44, 0x57, 0xe2, 0x8e, 0x5b, 0x17, 0xf2, + 0x6b, 0x6d, 0xb1, 0x9e, 0xe8, 0x1d, 0xab, 0x03, 0xb1, 0x47, 0xbc, 0x28, 0x05, 0x05, 0x0b, 0x13, + 0xa3, 0x6a, 0xa9, 0x58, 0xae, 0x61, 0x8b, 0x68, 0x86, 0xce, 0x6e, 0x33, 0x38, 0xe7, 0x7b, 0xb2, + 0x05, 0x80, 0x34, 0xea, 0x6a, 0xaf, 0x72, 0x65, 0x2b, 0xc1, 0x83, 0x70, 0xb4, 0xc9, 0x8f, 0x67, + 0x36, 0xfe, 0x01, 0x80, 0x70, 0x11, 0x53, 0x97, 0xef, 0x51, 0x18, 0xd4, 0x95, 0x0a, 0x26, 0xa6, + 0xa2, 0x62, 0x46, 0x38, 0x28, 0x3d, 0x13, 0x20, 0x04, 0x7d, 0xf6, 0x81, 0x71, 0x09, 0x4a, 0xec, + 0x19, 0x5d, 0x83, 0xf6, 0x1b, 0x19, 0x98, 0x5c, 0x34, 0xac, 0x8a, 0x42, 0x59, 0x38, 0x23, 0x33, + 0xa9, 0x5d, 0xd3, 0xe2, 0x06, 0xb0, 0xc0, 0x5c, 0x32, 0x46, 0x01, 0x4b, 0x23, 0x56, 0x9b, 0x2c, + 0xfe, 0xae, 0x1f, 0x86, 0x5a, 0x2c, 0xd1, 0x45, 0x18, 0x52, 0x59, 0x59, 0xb2, 0xf7, 0x38, 0x17, + 0xfa, 0xef, 0xbd, 0x0a, 0xdf, 0x61, 0x26, 0x41, 0xee, 0x6b, 0x63, 0xa3, 0x4b, 0x70, 0xc8, 0xe2, + 0xf7, 0xc0, 0xa1, 0xbc, 0x7b, 0xf5, 0x50, 0x7b, 0x55, 0x48, 0x21, 0xc7, 0x9b, 0x81, 0x75, 0x4b, + 0x88, 0x6f, 0x97, 0x84, 0xb4, 0x35, 0xd3, 0xe0, 0xcb, 0x68, 0xa6, 0x03, 0x2f, 0xa5, 0x99, 0xfc, + 0x2f, 0xde, 0x4c, 0x48, 0x84, 0x7e, 0x42, 0x15, 0x5a, 0x25, 0xe1, 0xbb, 0x1f, 0x81, 0x98, 0xb7, + 0x4b, 0x54, 0x2d, 0x78, 0x59, 0x66, 0xc9, 0x03, 0x9c, 0xf3, 0xde, 0xdb, 0x04, 0x92, 0xe3, 0x8c, + 0x96, 0xe0, 0x41, 0x0b, 0x17, 0xb1, 0x65, 0x69, 0x7a, 0x49, 0xe6, 0x43, 0x9b, 0x84, 0x03, 0x0c, + 0xef, 0x68, 0x8f, 0xf6, 0x2b, 0x32, 0x6e, 0x42, 0xd3, 0x8d, 0xcb, 0x09, 0xba, 0x0a, 0xc3, 0x05, + 0x5c, 0xc6, 0x14, 0x17, 0x64, 0xae, 0xc3, 0x85, 0x26, 0x62, 0xb0, 0x0f, 0xc4, 0x31, 0xc7, 0x5b, + 0x72, 0x9c, 0x5d, 0xdc, 0x6b, 0x70, 0xbc, 0xa0, 0x11, 0x25, 0x5f, 0xee, 0x06, 0x0c, 0xfb, 0x00, + 0x3e, 0xe2, 0xba, 0x77, 0x20, 0xb7, 0xf4, 0xeb, 0xb2, 0x2f, 0x00, 0x04, 0x4f, 0xfc, 0x33, 0x00, + 0x43, 0x2b, 0x1a, 0xe9, 0xb3, 0x47, 0xff, 0x05, 0x87, 0xca, 0x4a, 0x1e, 0x97, 0xe5, 0xa2, 0x56, + 0xa6, 0xd8, 0x72, 0x7a, 0x35, 0xc4, 0x64, 0x0b, 0x4c, 0x84, 0x8e, 0xc1, 0x61, 0x0b, 0x9b, 0x86, + 0x45, 0xe5, 0xa2, 0x86, 0xcb, 0x05, 0x12, 0xf6, 0xc6, 0xbc, 0x53, 0x41, 0x69, 0x88, 0x0b, 0x17, + 0x98, 0x0c, 0x9d, 0x82, 0x87, 0x1c, 0x23, 0x9e, 0x14, 0xd7, 0xd6, 0xc7, 0x6c, 0x11, 0xd7, 0xf1, + 0x14, 0x72, 0x8f, 0xf8, 0x57, 0x7e, 0x28, 0xf0, 0x38, 0x79, 0xc3, 0x2e, 0x51, 0x5c, 0x41, 0x63, + 0xd0, 0x4f, 0xb1, 0xae, 0xe8, 0x94, 0xd5, 0x57, 0x50, 0x72, 0x4e, 0xcf, 0x31, 0x68, 0x04, 0xe8, + 0xad, 0x6a, 0x05, 0x3e, 0xeb, 0x24, 0xfb, 0x11, 0xc5, 0x60, 0xa8, 0x80, 0x89, 0x6a, 0x69, 0xec, + 0x7f, 0x6d, 0x38, 0xc4, 0x99, 0xb6, 0x88, 0x50, 0x04, 0x06, 0xdc, 0x6b, 0x0e, 0x0f, 0xc5, 0xc0, + 0x54, 0x40, 0x6a, 0x9e, 0xd1, 0x1a, 0xf4, 0xb3, 0x4b, 0xe1, 0x94, 0x42, 0x33, 0x67, 0x7a, 0x57, + 0x6a, 0x27, 0xab, 0xe4, 0x0a, 0x73, 0x14, 0x75, 0x6a, 0xd5, 0x25, 0x07, 0x05, 0xbd, 0x0e, 0x43, + 0x2d, 0xcb, 0x8f, 0x53, 0x03, 0xff, 0xdb, 0x07, 0x68, 0xfa, 0x99, 0x37, 0x47, 0x6e, 0xc5, 0x43, + 0xe7, 0x20, 0x34, 0x36, 0x74, 0x6c, 0xc9, 0xf6, 0x7a, 0x11, 0x0e, 0xb2, 0x66, 0x8d, 0x74, 0xa0, + 0x5f, 0xd5, 0xf0, 0x86, 0x5b, 0x5f, 0x41, 0x66, 0x6d, 0x4b, 0xda, 0x06, 0xce, 0xf0, 0xcb, 0x18, + 0x38, 0x23, 0x2f, 0x34, 0x70, 0x2e, 0xc0, 0x40, 0x09, 0x53, 0x36, 0x36, 0x9c, 0xd1, 0xd5, 0xdf, + 0xd0, 0x91, 0x0e, 0x94, 0xf8, 0x01, 0x2d, 0x43, 0xe8, 0x14, 0x25, 0xc1, 0xd4, 0x19, 0x0c, 0xfb, + 0x1a, 0x34, 0x41, 0xee, 0x9e, 0xc5, 0x34, 0x72, 0x0e, 0x86, 0x5a, 0xb2, 0x69, 0x57, 0xd9, 0x4d, + 0x5c, 0x77, 0x2a, 0xd2, 0x7e, 0x44, 0x87, 0xe0, 0x60, 0x4d, 0x29, 0x57, 0xdd, 0x62, 0xe4, 0x87, + 0x59, 0xcf, 0x59, 0x10, 0x39, 0x0f, 0x85, 0xce, 0x9c, 0xed, 0xc7, 0x7f, 0xd9, 0x17, 0x18, 0x14, + 0xfc, 0xf1, 0xdb, 0x00, 0x0e, 0xb5, 0xd6, 0x02, 0xba, 0x00, 0x07, 0x35, 0x8a, 0x2b, 0x24, 0xcc, + 0x27, 0xe8, 0x74, 0xff, 0x25, 0x24, 0x71, 0x47, 0x74, 0x0a, 0xfa, 0xf9, 0x26, 0x1d, 0xf6, 0x30, + 0x88, 0x70, 0x07, 0x84, 0x68, 0x2b, 0xd9, 0x95, 0x3a, 0x76, 0xf1, 0x9b, 0x70, 0x78, 0x9e, 0x0d, + 0xba, 0xe7, 0x5f, 0x04, 0xa6, 0xa0, 0x50, 0x54, 0xb4, 0xb2, 0xac, 0x15, 0x9b, 0x03, 0x91, 0x35, + 0x6b, 0x40, 0x1a, 0xb1, 0xe5, 0x4b, 0x45, 0x77, 0xd0, 0x4d, 0xff, 0x0a, 0xe0, 0xe1, 0xae, 0x2b, + 0x00, 0x8a, 0xc0, 0xb1, 0x45, 0x31, 0x27, 0x4b, 0xd9, 0xcb, 0xf2, 0xc2, 0xba, 0xb4, 0x9a, 0xce, + 0xc9, 0xf3, 0xe2, 0x42, 0xfa, 0xca, 0x4a, 0x4e, 0x18, 0x40, 0xff, 0x80, 0xe3, 0x1d, 0xba, 0x85, + 0x75, 0x49, 0xce, 0x48, 0x62, 0x3a, 0x27, 0x0a, 0x00, 0x45, 0x61, 0xa4, 0x8b, 0x5a, 0x12, 0x2f, + 0xaf, 0xa4, 0x33, 0xa2, 0xe0, 0x41, 0xe3, 0xf0, 0x70, 0x87, 0x3e, 0x9b, 0x4b, 0xe7, 0xae, 0x64, + 0x05, 0x2f, 0x3a, 0x02, 0xff, 0xd6, 0xa1, 0x92, 0xc4, 0xf4, 0xbc, 0xe0, 0x43, 0x13, 0x30, 0xb6, + 0x43, 0xb1, 0x20, 0x4a, 0xd2, 0xd2, 0xda, 0xa2, 0xbc, 0x3e, 0xb7, 0x2c, 0x66, 0x72, 0x59, 0x61, + 0xb0, 0x8b, 0xd5, 0x9c, 0xb4, 0x7e, 0x49, 0x5c, 0xe3, 0xc6, 0xe2, 0x5a, 0x46, 0xcc, 0x0a, 0xfe, + 0x99, 0x1f, 0x20, 0xf4, 0xa6, 0x2f, 0x2f, 0xa1, 0x3f, 0x01, 0xf4, 0xf3, 0xcd, 0x04, 0xf5, 0xbb, + 0xbb, 0x44, 0xa6, 0xf6, 0x36, 0x74, 0xd6, 0xb9, 0xbb, 0xa0, 0xf1, 0x4d, 0xf8, 0x8d, 0xe2, 0x7f, + 0x6f, 0xa9, 0x09, 0xa2, 0x51, 0x9c, 0xa8, 0x28, 0xba, 0x52, 0xc2, 0x15, 0xac, 0xd3, 0x44, 0x5e, + 0x21, 0x9a, 0x9a, 0xa8, 0x12, 0x6c, 0x9d, 0xec, 0xaa, 0x27, 0x54, 0xd1, 0x0b, 0x8a, 0x55, 0xe0, + 0x26, 0x35, 0x4c, 0x12, 0x9a, 0x91, 0xd0, 0xf4, 0xa2, 0xa5, 0x10, 0x6a, 0x55, 0x55, 0x5a, 0xb5, + 0x70, 0x62, 0xc3, 0xd2, 0x28, 0xbe, 0xfd, 0xfd, 0xcf, 0xef, 0x7b, 0xce, 0xc6, 0x4f, 0x3b, 0xbf, + 0x2a, 0x53, 0xcd, 0xb2, 0x20, 0xa9, 0xb7, 0xdd, 0x11, 0x91, 0x6c, 0x0a, 0x37, 0x5b, 0x7e, 0x59, + 0x91, 0x59, 0x30, 0x8d, 0xfe, 0x00, 0xd0, 0xbb, 0x88, 0x29, 0x9a, 0xd8, 0x63, 0x3f, 0xe4, 0xd4, + 0x27, 0xfb, 0xda, 0x22, 0xe3, 0x9f, 0x82, 0xfb, 0x5f, 0x7b, 0x6c, 0xee, 0xea, 0x2e, 0xdc, 0x2b, + 0x86, 0xae, 0x51, 0x63, 0x2f, 0xfa, 0xae, 0x55, 0xf7, 0x1b, 0xb0, 0xb0, 0x52, 0x60, 0x17, 0x70, + 0x1a, 0xfd, 0xa7, 0xdb, 0x05, 0x74, 0xe7, 0xcd, 0xe5, 0x9b, 0xe8, 0x37, 0x00, 0x7d, 0x76, 0xd3, + 0xa2, 0xc9, 0xbd, 0x9a, 0x9a, 0xb3, 0x3f, 0xde, 0x5f, 0xef, 0xc7, 0x3f, 0x7e, 0xe5, 0xf4, 0x4f, + 0xa2, 0xe9, 0xfe, 0xe9, 0xa3, 0xf7, 0x3c, 0xf0, 0x80, 0xb3, 0x43, 0xa3, 0xbe, 0xd7, 0xec, 0xc8, + 0x89, 0x3e, 0x2c, 0x9d, 0x0b, 0xf8, 0xf2, 0x55, 0xd5, 0xfd, 0xc5, 0x48, 0xe6, 0x39, 0xea, 0xbe, + 0xc3, 0x60, 0xd3, 0xee, 0x83, 0x5f, 0x00, 0xf4, 0xf3, 0x99, 0xbb, 0xdb, 0x20, 0x68, 0x9b, 0xca, + 0x91, 0xb1, 0x24, 0xff, 0x98, 0x92, 0x74, 0x3f, 0xa6, 0x24, 0xc5, 0x8a, 0x49, 0xeb, 0xf1, 0x4f, + 0x5e, 0x15, 0xfd, 0x33, 0xd3, 0xfb, 0xaf, 0xfa, 0x59, 0x30, 0x1d, 0xb9, 0x7e, 0x6f, 0x0b, 0x78, + 0xbe, 0xdb, 0x02, 0xff, 0xec, 0x49, 0x94, 0xff, 0x7b, 0x7e, 0xb4, 0x05, 0x40, 0x63, 0x0b, 0x4c, + 0xf6, 0xf5, 0xbf, 0xfc, 0xf6, 0xb7, 0x61, 0x8f, 0x00, 0xe6, 0xee, 0x80, 0x07, 0xe7, 0x07, 0x33, + 0xd2, 0x95, 0xf9, 0x95, 0x87, 0x8f, 0xa3, 0x03, 0x8f, 0x1e, 0x47, 0x07, 0x9e, 0x3e, 0x8e, 0x82, + 0x77, 0x1a, 0x51, 0xf0, 0x79, 0x23, 0x0a, 0xee, 0x37, 0xa2, 0xe0, 0x61, 0x23, 0x0a, 0x7e, 0x6a, + 0x44, 0xc1, 0x93, 0x46, 0x74, 0xe0, 0x69, 0x23, 0x0a, 0xee, 0x6c, 0x47, 0x07, 0xee, 0x6d, 0x47, + 0xc1, 0xc3, 0xed, 0xe8, 0xc0, 0xa3, 0xed, 0xe8, 0xc0, 0xf5, 0xb5, 0x92, 0x61, 0xde, 0x2c, 0x25, + 0x6b, 0x86, 0xbd, 0x1f, 0x5b, 0xf6, 0x0b, 0x53, 0xec, 0xc1, 0xfe, 0x75, 0x98, 0x30, 0x2d, 0xa3, + 0xa6, 0x15, 0xb0, 0x95, 0x70, 0xd5, 0x29, 0x33, 0x5f, 0x32, 0x52, 0xf8, 0x16, 0x75, 0x3e, 0xf8, + 0xec, 0xf8, 0x82, 0x94, 0xf7, 0xb3, 0xfc, 0x9c, 0xfe, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x3a, 0x7a, + 0x59, 0x9a, 0x92, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/usb_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/usb_policy/public_crudapi.vesapi.go index af5500d32..c6a51913b 100644 --- a/pbgo/extschema/schema/usb_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/usb_policy/public_crudapi.vesapi.go @@ -2414,10 +2414,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2474,10 +2478,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2536,10 +2544,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/user/crudapi/api.vesapi.go b/pbgo/extschema/schema/user/crudapi/api.vesapi.go index 399ed0774..6d92e1bfa 100644 --- a/pbgo/extschema/schema/user/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/user/crudapi/api.vesapi.go @@ -2998,10 +2998,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/user/public_customapi.pb.go b/pbgo/extschema/schema/user/public_customapi.pb.go index 490027bb7..907ed7bda 100644 --- a/pbgo/extschema/schema/user/public_customapi.pb.go +++ b/pbgo/extschema/schema/user/public_customapi.pb.go @@ -2632,205 +2632,207 @@ func init() { } var fileDescriptor_5ce53d51230acf0d = []byte{ - // 3166 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x3a, 0xcf, 0x6f, 0x1b, 0xc7, - 0x7a, 0x5a, 0x92, 0x92, 0xc8, 0x8f, 0xfa, 0x41, 0x8d, 0x64, 0x7b, 0x4d, 0xd9, 0xb4, 0xbc, 0x8e, - 0x6d, 0x49, 0x36, 0x45, 0x57, 0x8e, 0x9b, 0xc4, 0x4d, 0x63, 0x50, 0x24, 0x6d, 0xd1, 0x95, 0x28, - 0x61, 0x49, 0x39, 0x89, 0x8d, 0x74, 0xb1, 0xe2, 0x8e, 0xe8, 0xad, 0xb9, 0xbb, 0xcc, 0xce, 0x52, - 0x8e, 0xd2, 0x06, 0x28, 0xd2, 0x7f, 0xa0, 0x40, 0x7b, 0xe9, 0xa1, 0xcd, 0xa5, 0x28, 0xfa, 0x0f, - 0x14, 0x28, 0xe2, 0x43, 0x8d, 0xa2, 0x85, 0x73, 0x2a, 0x8c, 0xf6, 0xe2, 0x4b, 0x8b, 0x58, 0x2e, - 0x1e, 0x92, 0xbc, 0x4b, 0x6e, 0xef, 0xfa, 0x30, 0x33, 0xbb, 0xe4, 0x72, 0xb5, 0x94, 0x68, 0xd9, - 0xef, 0x3d, 0xbc, 0xdb, 0xcc, 0xf7, 0x7d, 0xf3, 0xcd, 0xf7, 0x7b, 0xbe, 0x99, 0x5d, 0x58, 0xd8, - 0xc5, 0x64, 0x49, 0xb7, 0x72, 0xa4, 0xfe, 0x10, 0x1b, 0x6a, 0xae, 0x4d, 0xb0, 0x9d, 0x6b, 0xb5, - 0xb7, 0x9b, 0x7a, 0x5d, 0xa9, 0xb7, 0x89, 0x63, 0x19, 0x6a, 0x4b, 0x5f, 0x6a, 0xd9, 0x96, 0x63, - 0x21, 0xc4, 0x49, 0x97, 0x38, 0xe9, 0x12, 0x25, 0x4d, 0x67, 0x1b, 0xba, 0xf3, 0xb0, 0xbd, 0xbd, - 0x54, 0xb7, 0x8c, 0x5c, 0xc3, 0x6a, 0x58, 0x39, 0x46, 0xba, 0xdd, 0xde, 0x61, 0x33, 0x36, 0x61, - 0x23, 0xce, 0x22, 0x7d, 0xa6, 0x61, 0x59, 0x8d, 0x26, 0xce, 0xa9, 0x2d, 0x3d, 0xa7, 0x9a, 0xa6, - 0xe5, 0xa8, 0x8e, 0x6e, 0x99, 0xc4, 0xc5, 0x9e, 0x73, 0xb1, 0x1d, 0x1e, 0x8e, 0x6e, 0x60, 0xe2, - 0xa8, 0x46, 0xcb, 0x25, 0x48, 0xf7, 0x0a, 0x8b, 0x6d, 0xdb, 0xb2, 0xbd, 0xc5, 0xb3, 0xbd, 0x38, - 0xab, 0xe5, 0xe7, 0x7c, 0xba, 0x17, 0xe9, 0xec, 0xb5, 0x70, 0x67, 0xd3, 0x10, 0x03, 0x58, 0xdb, - 0x7f, 0x86, 0xeb, 0x8e, 0x4b, 0x90, 0x09, 0x21, 0xf0, 0x33, 0x38, 0xd3, 0x8b, 0xdf, 0x55, 0x9b, - 0xba, 0xa6, 0x3a, 0xd8, 0xc5, 0x4a, 0x01, 0x2c, 0x26, 0xd8, 0xdc, 0x0d, 0x48, 0x37, 0x17, 0xa0, - 0xd1, 0xf1, 0x63, 0xa5, 0x87, 0x42, 0xfa, 0x5f, 0x01, 0x4e, 0xad, 0xe8, 0xcd, 0xa6, 0x6e, 0x36, - 0x6e, 0x63, 0xd5, 0x69, 0xdb, 0xb8, 0x6c, 0x6a, 0x7a, 0x5d, 0x75, 0x2c, 0x1b, 0xad, 0xc0, 0xd8, - 0x36, 0x47, 0x29, 0x3b, 0x4d, 0xb5, 0x21, 0x0a, 0x73, 0xc2, 0xfc, 0xc4, 0xf2, 0xb9, 0xa5, 0x83, - 0xde, 0x5a, 0xf2, 0x58, 0x34, 0xd5, 0x86, 0x9c, 0xdc, 0xee, 0x4e, 0xd0, 0x49, 0x18, 0xd9, 0x51, - 0xf5, 0x26, 0xd6, 0xc4, 0xc8, 0x9c, 0x30, 0x1f, 0x97, 0xdd, 0x19, 0xba, 0x0c, 0x93, 0xaa, 0xa6, - 0xe9, 0x54, 0x14, 0xb5, 0xa9, 0xe8, 0xe6, 0x8e, 0x25, 0x46, 0xe7, 0x84, 0xf9, 0x84, 0x3c, 0xd1, - 0x05, 0x97, 0xcd, 0x1d, 0x0b, 0xfd, 0x31, 0x8c, 0xa8, 0x75, 0x3a, 0x17, 0x63, 0x6c, 0xfb, 0x8b, - 0x47, 0x6c, 0x9f, 0x67, 0xc4, 0xb2, 0xbb, 0x48, 0xaa, 0x80, 0x58, 0xc5, 0xa6, 0xb6, 0xa9, 0x12, - 0xf2, 0xd8, 0xb2, 0xb5, 0x92, 0xa1, 0xea, 0x4d, 0x19, 0x7f, 0xde, 0xc6, 0xc4, 0x41, 0x67, 0x20, - 0x61, 0xaa, 0x06, 0x26, 0x2d, 0xb5, 0x8e, 0x99, 0x78, 0x09, 0xb9, 0x0b, 0x40, 0x33, 0x30, 0x8c, - 0x29, 0xb5, 0x2b, 0x17, 0x9f, 0x48, 0xb3, 0x70, 0x3a, 0x84, 0x1f, 0x69, 0x59, 0x26, 0xc1, 0xd2, - 0x75, 0x98, 0x95, 0x31, 0xc1, 0x8e, 0x87, 0x5d, 0xd9, 0xcb, 0x6b, 0x86, 0x6e, 0x7a, 0xfb, 0x75, - 0x38, 0x0a, 0x7e, 0x8e, 0xab, 0x80, 0x2a, 0xde, 0xa6, 0x44, 0xb6, 0x9a, 0xb8, 0xb6, 0xd7, 0xc2, - 0x28, 0x03, 0xd0, 0x11, 0x85, 0x88, 0xc2, 0x5c, 0x74, 0x3e, 0x21, 0xfb, 0x20, 0x08, 0x41, 0xcc, - 0xb6, 0x9a, 0x9e, 0xd8, 0x6c, 0x2c, 0xfd, 0x32, 0x02, 0x93, 0x5b, 0x04, 0xdb, 0x94, 0x49, 0xa8, - 0x8e, 0x42, 0x50, 0x47, 0x04, 0x31, 0x3a, 0xf1, 0xb8, 0xd0, 0x31, 0x3a, 0x0b, 0xb0, 0xa3, 0xdb, - 0xc4, 0x51, 0x18, 0x86, 0x2b, 0x9f, 0x60, 0x10, 0x2a, 0x26, 0x9a, 0x85, 0x44, 0x53, 0xf5, 0xb0, - 0x31, 0x86, 0x8d, 0x53, 0x00, 0x43, 0x76, 0x34, 0x1c, 0xf6, 0x69, 0x88, 0xae, 0x41, 0x8c, 0x86, - 0xb5, 0x38, 0xc2, 0x1c, 0x78, 0x26, 0xcc, 0x81, 0x54, 0x6c, 0xaa, 0xb7, 0xcc, 0x28, 0x51, 0x19, - 0x26, 0x3b, 0x42, 0x2a, 0x54, 0x37, 0x22, 0x8e, 0xce, 0x45, 0xe7, 0x93, 0xcb, 0x73, 0x81, 0xc5, - 0x1d, 0xcb, 0x79, 0x86, 0x93, 0x27, 0x4c, 0x3f, 0x88, 0xa0, 0x3f, 0x84, 0xb8, 0xae, 0x19, 0x0a, - 0x13, 0x20, 0xce, 0x04, 0x98, 0x0d, 0x13, 0xa0, 0xac, 0x19, 0x6c, 0xf9, 0xa8, 0xce, 0x07, 0xe8, - 0x1c, 0x24, 0x1b, 0xb6, 0xd5, 0x6e, 0x31, 0x45, 0x89, 0x98, 0xe0, 0x1e, 0x60, 0x20, 0xb6, 0xa9, - 0x74, 0x1d, 0xa6, 0xd7, 0x74, 0xe2, 0xbc, 0x96, 0xc1, 0xa5, 0x7f, 0x10, 0x60, 0x2a, 0x4f, 0x88, - 0xde, 0x30, 0x07, 0x77, 0xd2, 0x86, 0xcf, 0x18, 0x44, 0xe9, 0x78, 0x3d, 0xb9, 0x7c, 0x29, 0x4c, - 0x91, 0x83, 0xb1, 0xe4, 0x33, 0x09, 0x83, 0xa1, 0x34, 0xc4, 0x29, 0xa9, 0xeb, 0x5f, 0xaa, 0x57, - 0x67, 0x2e, 0xdd, 0x87, 0x99, 0x5e, 0xad, 0x78, 0x68, 0xa3, 0x15, 0x18, 0xd6, 0x1d, 0x6c, 0xf0, - 0x50, 0x4c, 0x2e, 0x5f, 0x0d, 0xdb, 0x3a, 0x6c, 0x61, 0xd9, 0xc1, 0x86, 0xcc, 0x97, 0x4a, 0xbf, - 0x1a, 0x06, 0xb1, 0x1f, 0xcd, 0x31, 0x02, 0x35, 0x34, 0x41, 0x03, 0xe1, 0x1b, 0x3b, 0x34, 0x7c, - 0x87, 0x03, 0xe1, 0xfb, 0x3b, 0x0d, 0xd4, 0x93, 0x30, 0xe2, 0x60, 0x53, 0x35, 0x1d, 0x16, 0xa6, - 0x09, 0xd9, 0x9d, 0xa1, 0x9b, 0x90, 0xe4, 0x23, 0x1e, 0xc3, 0x09, 0x26, 0xdb, 0xe9, 0x00, 0xfb, - 0x1a, 0xa3, 0x60, 0x7c, 0xc1, 0xe9, 0x8c, 0x7b, 0x82, 0x1f, 0x5e, 0x23, 0xf8, 0xcf, 0xc3, 0x98, - 0x66, 0x19, 0xaa, 0x6e, 0x2a, 0xd6, 0x63, 0x13, 0xdb, 0x62, 0x92, 0xd5, 0xee, 0x24, 0x87, 0x6d, - 0x50, 0x10, 0xcd, 0x0f, 0xcb, 0x69, 0x29, 0xd8, 0x54, 0xb7, 0x69, 0x75, 0x1f, 0x63, 0x14, 0x60, - 0x39, 0xad, 0x12, 0x87, 0xd0, 0x28, 0xd3, 0x74, 0xc2, 0xb1, 0xe3, 0x0c, 0xdb, 0x99, 0xa3, 0x32, - 0xa0, 0xba, 0x8d, 0xd9, 0x11, 0xad, 0x74, 0x8e, 0x62, 0x71, 0x82, 0x45, 0x75, 0x7a, 0x89, 0x1f, - 0xd6, 0x4b, 0xde, 0x61, 0xbd, 0x54, 0xf3, 0x28, 0xe4, 0x29, 0x6f, 0x55, 0x07, 0x84, 0xd6, 0x60, - 0x86, 0x39, 0xb4, 0x69, 0x35, 0x74, 0x3f, 0xb3, 0xc9, 0x23, 0x99, 0x21, 0xba, 0x6e, 0x8d, 0x2e, - 0xeb, 0x72, 0x0b, 0x64, 0x7d, 0x2a, 0x98, 0xf5, 0xe8, 0x5d, 0x48, 0x90, 0x3d, 0xb3, 0xae, 0x18, - 0x96, 0x86, 0xc5, 0x29, 0x66, 0xd2, 0x53, 0x01, 0x93, 0x56, 0xf7, 0xcc, 0xfa, 0xba, 0xa5, 0x61, - 0x39, 0x4e, 0xdc, 0x91, 0xb4, 0x0c, 0xe8, 0x0e, 0x7e, 0xcd, 0x52, 0xf1, 0x2d, 0x82, 0xe9, 0x9e, - 0x45, 0x6e, 0x26, 0xfe, 0x7e, 0x26, 0xca, 0xfa, 0xb1, 0x13, 0x65, 0x25, 0x22, 0x0a, 0xbf, 0x95, - 0x64, 0x59, 0x85, 0xf1, 0x1d, 0xde, 0x02, 0xb1, 0x76, 0x87, 0x88, 0xc0, 0x04, 0xbc, 0x10, 0xa6, - 0x9d, 0xdb, 0x2b, 0xd1, 0x86, 0x83, 0xf1, 0x19, 0xdb, 0xe9, 0x02, 0x08, 0x5a, 0x82, 0x69, 0xc7, - 0x22, 0x4a, 0xbd, 0x6d, 0xdb, 0xd8, 0x74, 0x94, 0x5d, 0x6c, 0x13, 0xda, 0xc0, 0x24, 0x99, 0xa8, - 0x53, 0x8e, 0x45, 0x0a, 0x1c, 0x73, 0x8f, 0x23, 0xd0, 0x45, 0x18, 0xa3, 0xf4, 0x6a, 0xbd, 0x8e, - 0x5b, 0x8e, 0x9b, 0x4c, 0x09, 0xa6, 0x77, 0xd2, 0xb1, 0x48, 0xde, 0x05, 0xf7, 0x64, 0xf3, 0xf8, - 0x1b, 0x64, 0xf3, 0xe4, 0xc1, 0x6c, 0x9e, 0x81, 0xe1, 0x3a, 0xf3, 0x74, 0x8a, 0x87, 0x08, 0x9b, - 0xa0, 0x4d, 0x18, 0xf7, 0x37, 0x80, 0x44, 0x9c, 0x62, 0x16, 0xb9, 0x72, 0x58, 0x0b, 0x16, 0x68, - 0x22, 0xe5, 0x31, 0x5f, 0x37, 0x48, 0xfa, 0x24, 0x3e, 0x3a, 0x4e, 0xe2, 0x8b, 0x30, 0x5a, 0xb7, - 0x8c, 0x96, 0x6a, 0xee, 0x89, 0xd3, 0x4c, 0x68, 0x6f, 0x4a, 0x73, 0xb4, 0xd5, 0x54, 0x4d, 0x6e, - 0xa8, 0x99, 0xd0, 0x1c, 0xdd, 0x6c, 0xaa, 0x26, 0x33, 0x52, 0xbc, 0xe5, 0x8e, 0xd0, 0x1f, 0x41, - 0x9a, 0xf6, 0x8c, 0xbb, 0x58, 0xe1, 0x8b, 0x6d, 0xd5, 0x24, 0xac, 0x11, 0x55, 0xda, 0xba, 0x26, - 0x9e, 0x60, 0x5b, 0x9c, 0xe2, 0x14, 0x6c, 0x75, 0x07, 0xbf, 0xa5, 0xf7, 0x16, 0xbb, 0x93, 0x81, - 0x62, 0x77, 0x1e, 0xc6, 0xdc, 0x98, 0x24, 0x8e, 0xea, 0x60, 0xf1, 0x14, 0x63, 0xe5, 0xc6, 0x69, - 0x95, 0x82, 0xd0, 0x83, 0x0e, 0x09, 0xb7, 0xb3, 0xc8, 0xec, 0xfc, 0x7e, 0x98, 0x9d, 0x43, 0x4a, - 0x82, 0x1b, 0xd0, 0xcc, 0xc2, 0x25, 0xd3, 0xb1, 0xf7, 0x3c, 0xe6, 0xdc, 0xe6, 0xcb, 0x30, 0xcc, - 0x37, 0x4e, 0xf7, 0xcf, 0xd6, 0xdb, 0xd5, 0x75, 0x26, 0x89, 0xcc, 0x49, 0xfb, 0x56, 0xd5, 0xd3, - 0xc7, 0xaa, 0xaa, 0x9f, 0x40, 0xd2, 0xd1, 0x9b, 0x98, 0x05, 0x38, 0x21, 0xe2, 0x19, 0xa6, 0xdd, - 0x7b, 0x03, 0x6b, 0xa7, 0x37, 0x71, 0x9e, 0xad, 0xe4, 0xca, 0x81, 0xd3, 0x01, 0xa0, 0xcf, 0x61, - 0x46, 0xd5, 0x34, 0xcb, 0x54, 0x08, 0xb6, 0x77, 0xf5, 0x3a, 0x66, 0x26, 0x6e, 0x13, 0xf1, 0x2c, - 0xdb, 0xe2, 0xd6, 0xa0, 0x5b, 0xe4, 0x29, 0x8f, 0x2a, 0x67, 0x51, 0x65, 0x1c, 0xf8, 0x56, 0x48, - 0x3d, 0x80, 0x40, 0x73, 0x90, 0xc4, 0xe6, 0xae, 0x6e, 0x5b, 0xa6, 0x81, 0x4d, 0x47, 0xcc, 0x70, - 0x6f, 0xfa, 0x40, 0xf4, 0x10, 0xa1, 0xe9, 0xec, 0xa5, 0xfd, 0x1c, 0xa3, 0x00, 0xc7, 0x22, 0x5e, - 0xbe, 0xaf, 0xc0, 0xa4, 0x3f, 0xdf, 0x15, 0xd5, 0x11, 0xcf, 0x1f, 0x69, 0xd8, 0x71, 0x5f, 0x29, - 0xc8, 0x3b, 0xc1, 0x93, 0x4a, 0x3a, 0x70, 0x52, 0x5d, 0x86, 0x49, 0xcb, 0xd6, 0x1b, 0x3a, 0xbd, - 0x5f, 0xb9, 0xb5, 0xf2, 0x02, 0xbf, 0x61, 0x79, 0x60, 0x1e, 0x36, 0x68, 0x1d, 0x52, 0xdd, 0xd2, - 0xec, 0xba, 0xe8, 0x1d, 0x26, 0x8e, 0xd4, 0xaf, 0x36, 0x73, 0xeb, 0xb3, 0x04, 0xea, 0x96, 0x75, - 0xd7, 0x25, 0x3d, 0x27, 0xe4, 0xc5, 0x01, 0x4f, 0x48, 0x7a, 0xdc, 0x50, 0xef, 0x28, 0x6d, 0x9a, - 0x6c, 0x97, 0xf8, 0x71, 0x43, 0x01, 0x5b, 0x6d, 0x5d, 0x43, 0x8b, 0x30, 0xe5, 0xd5, 0x21, 0x96, - 0x9b, 0xac, 0x52, 0x5d, 0x66, 0x44, 0x93, 0x2e, 0x82, 0xa6, 0x24, 0x3b, 0x9a, 0x3e, 0x80, 0x31, - 0x82, 0x9b, 0x3b, 0x8a, 0xa1, 0x9a, 0x6a, 0x03, 0x6b, 0xe2, 0x02, 0xd3, 0x64, 0x26, 0x20, 0x41, - 0xc9, 0x68, 0x39, 0x7b, 0xab, 0x43, 0x72, 0x92, 0xd2, 0xae, 0x73, 0x52, 0x94, 0x87, 0xa4, 0x41, - 0x5a, 0x9d, 0x95, 0x8b, 0x6c, 0x65, 0x26, 0x2c, 0x86, 0xd6, 0xab, 0x9b, 0xee, 0xa2, 0xd5, 0x21, - 0x19, 0x0c, 0xd2, 0xf2, 0x58, 0xdc, 0x82, 0x24, 0xb7, 0x20, 0x2f, 0x3e, 0x57, 0x98, 0xfa, 0xa1, - 0x2c, 0x7c, 0x26, 0x04, 0xb5, 0x33, 0x4e, 0x7f, 0x04, 0xa9, 0x60, 0x36, 0xa3, 0x14, 0x44, 0x1f, - 0xe1, 0x3d, 0xf7, 0xac, 0xa7, 0x43, 0x5a, 0xae, 0x77, 0xd5, 0x66, 0x1b, 0xbb, 0x97, 0x6a, 0x3e, - 0xb9, 0x19, 0x79, 0x5f, 0x48, 0x7f, 0x06, 0x93, 0x81, 0x7c, 0x09, 0x59, 0xfe, 0xae, 0x7f, 0x79, - 0x1f, 0x15, 0xbb, 0x5c, 0xfc, 0xec, 0x0d, 0x38, 0xd5, 0x27, 0x57, 0x42, 0xb6, 0xf9, 0xb0, 0x77, - 0x9b, 0xd0, 0xeb, 0xca, 0x41, 0x6e, 0xbe, 0xed, 0x56, 0xce, 0xc1, 0xb4, 0xeb, 0x0d, 0x37, 0x30, - 0xd9, 0x4b, 0x01, 0x8a, 0x3f, 0x7d, 0x22, 0x2c, 0x3c, 0x7f, 0x22, 0xcc, 0xdf, 0x8d, 0xc5, 0x27, - 0x52, 0x93, 0x77, 0x63, 0xf1, 0xd9, 0xd4, 0x99, 0xbb, 0xb1, 0xf8, 0xb9, 0xd4, 0xdc, 0xdd, 0x58, - 0x7c, 0x3e, 0xb5, 0x20, 0x7d, 0x23, 0x00, 0x74, 0x9d, 0x44, 0xbb, 0x22, 0x47, 0xc7, 0x36, 0x13, - 0x6e, 0x5c, 0x66, 0x63, 0x74, 0x02, 0x46, 0xa8, 0xb7, 0x75, 0xcd, 0xed, 0x95, 0x86, 0x0d, 0xd2, - 0x2a, 0x6b, 0x68, 0x1e, 0x52, 0x2d, 0x95, 0x1d, 0xdb, 0x6e, 0x45, 0xd6, 0x35, 0xef, 0x65, 0x82, - 0xc3, 0xb9, 0x7b, 0xca, 0x1a, 0xfa, 0x10, 0x12, 0xa6, 0xa5, 0x61, 0xee, 0xe9, 0x58, 0xff, 0xb7, - 0x91, 0xf5, 0xea, 0x66, 0xc5, 0xd2, 0x78, 0xd3, 0x1f, 0x37, 0xdd, 0x91, 0x74, 0x17, 0x66, 0x0a, - 0x2a, 0xa9, 0xab, 0x1a, 0x2e, 0xe2, 0x26, 0x76, 0x06, 0xbc, 0x0b, 0x76, 0x5a, 0xb9, 0x88, 0xff, - 0x09, 0xa1, 0x0d, 0x27, 0x02, 0xbc, 0xdc, 0x5e, 0x71, 0x16, 0x12, 0x1a, 0x83, 0x28, 0xd6, 0x23, - 0xc6, 0x8c, 0x9e, 0x4b, 0x0c, 0xb0, 0xf1, 0x08, 0xdd, 0xf2, 0xae, 0x74, 0x11, 0x56, 0x2c, 0x17, - 0xc2, 0x64, 0xef, 0x61, 0x4b, 0xef, 0x69, 0x4c, 0x0b, 0xf7, 0x3e, 0xf7, 0xf7, 0x42, 0x60, 0x5f, - 0x8f, 0x80, 0x5d, 0x0e, 0xd8, 0x4b, 0x17, 0x37, 0x0e, 0x57, 0x03, 0x38, 0x88, 0x11, 0x9c, 0x05, - 0x77, 0xc6, 0x0e, 0x57, 0xf7, 0xed, 0x85, 0x43, 0xe8, 0x71, 0xda, 0x5d, 0xef, 0x7b, 0x84, 0x70, - 0x57, 0xb0, 0x2c, 0xbf, 0x00, 0xe3, 0xec, 0x8d, 0x4e, 0x31, 0x30, 0x21, 0x6a, 0xc3, 0xeb, 0x5f, - 0xc7, 0x18, 0x70, 0x9d, 0xc3, 0xa4, 0x7f, 0x12, 0x20, 0xc5, 0x2b, 0x66, 0x6d, 0xa3, 0x3a, 0x98, - 0x7d, 0x83, 0x9d, 0x58, 0x24, 0xbc, 0x13, 0x0b, 0x54, 0xf8, 0xd8, 0x81, 0x0a, 0x7f, 0xe9, 0x60, - 0x85, 0xa7, 0x3d, 0x74, 0x34, 0x50, 0xc5, 0xef, 0xc6, 0xe2, 0xd1, 0x54, 0x4c, 0x9a, 0x86, 0x29, - 0x9f, 0x9c, 0xee, 0x63, 0x52, 0x16, 0xc6, 0xef, 0xe0, 0x81, 0x25, 0x97, 0x3e, 0x82, 0x09, 0x8f, - 0xdc, 0x75, 0xbe, 0x08, 0xa3, 0x9e, 0x80, 0x9c, 0xda, 0x9b, 0xb2, 0x74, 0xc0, 0x5f, 0x38, 0xde, - 0x25, 0x81, 0x8e, 0xa5, 0x51, 0x18, 0x66, 0x45, 0x51, 0xca, 0xc3, 0x64, 0xa0, 0xbb, 0xed, 0x5c, - 0x2a, 0x04, 0xdf, 0xa5, 0xc2, 0xdf, 0xf1, 0x44, 0x7a, 0x3b, 0x1e, 0xa9, 0x0e, 0x29, 0x7a, 0xc4, - 0xde, 0xa1, 0x87, 0x91, 0x27, 0xfd, 0xbc, 0xef, 0xd1, 0x81, 0xf1, 0x59, 0x19, 0xfb, 0xf6, 0xc7, - 0xa7, 0xd1, 0x51, 0x9b, 0xda, 0xe5, 0x69, 0xa4, 0xfb, 0x04, 0x11, 0x3c, 0xd9, 0xa2, 0xc1, 0x93, - 0xed, 0x6e, 0x2c, 0x1e, 0x49, 0x45, 0xa5, 0x02, 0x4c, 0xf9, 0x36, 0x71, 0x75, 0x5e, 0x82, 0x61, - 0x16, 0x02, 0x6c, 0x8b, 0xe4, 0xb2, 0x18, 0x2c, 0xfb, 0x14, 0xc7, 0x43, 0x98, 0x91, 0x2d, 0xfe, - 0x63, 0x0c, 0x92, 0xbe, 0xc7, 0x43, 0x24, 0xc2, 0xcc, 0xbd, 0xfc, 0x5a, 0xb9, 0xa8, 0x6c, 0xe6, - 0x3f, 0x5d, 0x2f, 0x55, 0x6a, 0xca, 0x7a, 0xa9, 0xb6, 0xba, 0x51, 0x4c, 0x0d, 0xa1, 0x69, 0x98, - 0xdc, 0xb8, 0x57, 0x92, 0x8b, 0x5b, 0x25, 0xa5, 0x5c, 0xb9, 0xb7, 0x51, 0x2e, 0x94, 0x52, 0x02, - 0x9a, 0x85, 0x53, 0x6b, 0xf9, 0x6a, 0x4d, 0xa9, 0xc9, 0xf9, 0x4a, 0x35, 0x5f, 0xa8, 0x95, 0x37, - 0x2a, 0x4a, 0xb5, 0x96, 0xaf, 0x6d, 0x55, 0x53, 0x11, 0x94, 0x86, 0x93, 0xbd, 0x5c, 0x94, 0xd2, - 0x27, 0x9b, 0x65, 0xb9, 0x54, 0x4c, 0x45, 0xd1, 0x45, 0x38, 0x1f, 0xc0, 0x95, 0x2b, 0xd5, 0xad, - 0xdb, 0xb7, 0xcb, 0x85, 0x32, 0x85, 0xdd, 0xde, 0xaa, 0x14, 0xab, 0xa9, 0x18, 0xba, 0x00, 0xe7, - 0x02, 0x64, 0x9b, 0x72, 0x79, 0x3d, 0x2f, 0x7f, 0xaa, 0x14, 0x4b, 0x85, 0xb5, 0x72, 0xa5, 0x54, - 0x4c, 0x0d, 0xa3, 0x0c, 0xa4, 0x03, 0x44, 0x85, 0x7b, 0x05, 0x2a, 0x24, 0x55, 0x24, 0x35, 0x12, - 0x82, 0xbf, 0x5f, 0xde, 0xec, 0xe0, 0x47, 0xd1, 0x7b, 0x70, 0xfd, 0x48, 0x59, 0x94, 0x6a, 0xa9, - 0xb0, 0x51, 0x29, 0xd2, 0x9d, 0x0b, 0xab, 0x79, 0xf9, 0x4e, 0xa9, 0x98, 0x8a, 0xa3, 0x77, 0xe1, - 0x5a, 0x1f, 0xe9, 0x5c, 0x45, 0x43, 0x56, 0x25, 0xd0, 0x0d, 0xf8, 0x83, 0x23, 0x74, 0x0a, 0x59, - 0x06, 0x28, 0x0b, 0x0b, 0x81, 0x65, 0x2b, 0x1b, 0xb5, 0xd5, 0x80, 0x9f, 0x94, 0xdb, 0xf9, 0xf2, - 0x5a, 0xa9, 0x98, 0x4a, 0xa2, 0x0b, 0x90, 0x09, 0xa0, 0xee, 0x94, 0x2a, 0x25, 0xb9, 0x5c, 0x60, - 0x24, 0x5b, 0x72, 0x29, 0xf5, 0xc3, 0x28, 0xba, 0x0c, 0x52, 0x1f, 0xa2, 0x7c, 0xb1, 0xd8, 0x21, - 0xfc, 0x71, 0x74, 0xb1, 0x02, 0x53, 0x07, 0x9e, 0x98, 0xd1, 0x38, 0x24, 0x2a, 0x1b, 0x0a, 0xf7, - 0x7a, 0x6a, 0x88, 0xba, 0x9b, 0xae, 0xaa, 0x94, 0x3e, 0x0e, 0x06, 0x8f, 0x80, 0x26, 0x00, 0x0a, - 0x1b, 0x95, 0x5a, 0xbe, 0x50, 0x53, 0x68, 0x68, 0x2c, 0x1a, 0x00, 0xdd, 0xf3, 0x1f, 0x21, 0x98, - 0xd8, 0xaa, 0xfc, 0x49, 0x65, 0xe3, 0xe3, 0x8a, 0x92, 0x2f, 0x14, 0x4a, 0xd5, 0x6a, 0x6a, 0x08, - 0x4d, 0xc1, 0x78, 0xb1, 0x2c, 0x97, 0x0a, 0x35, 0x0f, 0xc4, 0x98, 0xac, 0x57, 0x37, 0xbd, 0x79, - 0x04, 0xcd, 0x40, 0xaa, 0x58, 0x5a, 0x2b, 0xdd, 0xc9, 0xd7, 0x4a, 0x45, 0x0f, 0x1a, 0xa5, 0xcc, - 0xaa, 0x5b, 0x9b, 0x9b, 0x1b, 0x72, 0x67, 0x65, 0x6c, 0x51, 0x86, 0xa4, 0xef, 0x10, 0x42, 0x27, - 0x01, 0xad, 0x93, 0x96, 0x37, 0xdd, 0x32, 0x1f, 0x99, 0xd6, 0x63, 0x33, 0x35, 0x44, 0x19, 0xfa, - 0xe0, 0x85, 0x87, 0x7a, 0x53, 0x4b, 0x09, 0xe8, 0x04, 0x4c, 0xf9, 0xa0, 0x9b, 0xec, 0x0c, 0x4c, - 0x45, 0x96, 0xff, 0x4f, 0x84, 0x44, 0x81, 0x7d, 0xc7, 0xc9, 0x6f, 0x96, 0xd1, 0x7f, 0x08, 0x30, - 0x52, 0xa0, 0x57, 0x34, 0x8c, 0x2e, 0xf4, 0x7b, 0x0d, 0xf0, 0x3d, 0x7d, 0xa4, 0xd3, 0x61, 0x44, - 0x1b, 0xac, 0xbe, 0x4b, 0x7b, 0xfb, 0xcf, 0xc4, 0x9b, 0x3b, 0x37, 0xbe, 0xa8, 0x67, 0xeb, 0x96, - 0x49, 0xac, 0x26, 0xce, 0x6e, 0xab, 0x04, 0x67, 0x55, 0xcd, 0xd0, 0xcd, 0xab, 0x73, 0x0c, 0x41, - 0x01, 0x57, 0xe7, 0x76, 0x31, 0xc9, 0xea, 0x56, 0xb6, 0xad, 0x1a, 0x1c, 0x99, 0x7d, 0x6c, 0xeb, - 0x0e, 0xfe, 0xfa, 0x7f, 0xfe, 0xff, 0x6f, 0x22, 0x37, 0xa4, 0x6b, 0xee, 0xc7, 0xa6, 0x1c, 0xff, - 0xd8, 0x94, 0xeb, 0xbe, 0x81, 0xe6, 0xfe, 0xbc, 0x33, 0xfe, 0x8a, 0x7d, 0x74, 0xe1, 0xef, 0x11, - 0x37, 0x85, 0x45, 0xf4, 0x32, 0x0a, 0xa3, 0x32, 0x6e, 0x35, 0xe9, 0x51, 0xf0, 0xc6, 0x7a, 0xfc, - 0x6d, 0xf4, 0xcd, 0x14, 0xf9, 0xe9, 0x99, 0xf8, 0x42, 0x80, 0x77, 0x5c, 0x24, 0xdf, 0x20, 0x4b, - 0x37, 0xc8, 0x76, 0xbe, 0x9f, 0x65, 0x6d, 0x57, 0xd8, 0x55, 0x88, 0xb6, 0xda, 0x0e, 0xca, 0xf7, - 0x57, 0x7a, 0xfe, 0x81, 0x9a, 0xfd, 0xf2, 0xb3, 0xf9, 0x07, 0x59, 0x35, 0xfb, 0xe5, 0xb5, 0xec, - 0x07, 0x9f, 0x2d, 0x3e, 0x70, 0x07, 0x0b, 0xb7, 0x16, 0x7c, 0x56, 0x40, 0x3b, 0x10, 0x6b, 0x59, - 0xc4, 0x41, 0x7f, 0xfa, 0xc6, 0xac, 0x0e, 0xa5, 0x63, 0x5e, 0x22, 0xe9, 0xe3, 0x78, 0xe9, 0xfe, - 0x87, 0xd2, 0x7b, 0xaf, 0xbb, 0x8c, 0x83, 0xbf, 0xa2, 0x3e, 0x7e, 0x2e, 0x40, 0x6c, 0x4d, 0x27, - 0x0e, 0xba, 0x7c, 0xf4, 0x1b, 0x36, 0x77, 0xf2, 0xfc, 0xa0, 0x8f, 0xdd, 0x52, 0xfb, 0xbb, 0x7f, - 0x8d, 0x08, 0xfb, 0xcf, 0xc4, 0x1b, 0x07, 0xbd, 0x6e, 0x58, 0xa6, 0xee, 0x58, 0x76, 0x3f, 0xbf, - 0xdb, 0x58, 0xd5, 0x98, 0x4d, 0x96, 0xd1, 0x6b, 0xdb, 0x04, 0xfd, 0x9b, 0x00, 0xd1, 0x3b, 0xd8, - 0x41, 0x97, 0x8e, 0xbc, 0xef, 0x72, 0x85, 0x2e, 0x0f, 0x78, 0x2f, 0x96, 0x1a, 0xae, 0x3e, 0x57, - 0x98, 0xd0, 0x1a, 0xde, 0x51, 0xdb, 0x4d, 0x27, 0xcb, 0x5b, 0xf1, 0x8e, 0xf8, 0x8f, 0xf1, 0xb6, - 0x0b, 0xea, 0x6a, 0xb1, 0x84, 0xae, 0x0e, 0xa6, 0xc5, 0xe3, 0x87, 0x96, 0x6a, 0xe8, 0xe8, 0x27, - 0x01, 0xc6, 0x7b, 0x5a, 0x49, 0x34, 0x7f, 0x64, 0x3b, 0xea, 0x69, 0xb3, 0x30, 0x00, 0xa5, 0xab, - 0xcf, 0x5f, 0x09, 0x6f, 0xa1, 0xb6, 0xdc, 0x92, 0x6e, 0x0e, 0xee, 0x21, 0x92, 0xab, 0x73, 0x49, - 0x14, 0xde, 0x77, 0xd3, 0x08, 0xfc, 0x77, 0x01, 0xa0, 0xfb, 0x11, 0x08, 0x85, 0x7e, 0xd1, 0x3c, - 0xf0, 0x91, 0x28, 0x7d, 0x3a, 0x8c, 0x8c, 0xb7, 0x6c, 0xf6, 0xfe, 0x33, 0xf1, 0xfa, 0x41, 0xad, - 0x28, 0x45, 0x3f, 0xa5, 0x8e, 0x51, 0x2a, 0x69, 0xac, 0x29, 0x4c, 0x27, 0xaa, 0xc4, 0x2f, 0x04, - 0x98, 0x3a, 0xf0, 0x25, 0x14, 0x85, 0x7e, 0x17, 0xea, 0xf7, 0x01, 0x36, 0x9d, 0x1d, 0x90, 0xda, - 0xf5, 0x9e, 0xb3, 0xff, 0x4c, 0xbc, 0x3a, 0x60, 0x24, 0x76, 0xf5, 0xfb, 0x48, 0xfa, 0x60, 0x30, - 0xfd, 0x08, 0x36, 0x35, 0xa5, 0xe5, 0xee, 0xac, 0xb0, 0x9b, 0x15, 0x55, 0xf4, 0x1b, 0x01, 0xc6, - 0x7b, 0xbe, 0xea, 0xa2, 0xfe, 0x9e, 0x38, 0xcc, 0x49, 0x9f, 0x1c, 0x4b, 0x7a, 0x49, 0x3a, 0x1b, - 0x90, 0xde, 0x93, 0x30, 0x67, 0x53, 0xa1, 0xdc, 0x8a, 0x36, 0x13, 0xf6, 0xdd, 0x19, 0xe5, 0xc2, - 0xa4, 0x39, 0xe4, 0x0b, 0xf5, 0x61, 0xe2, 0x37, 0xdf, 0x42, 0xe6, 0xcc, 0x4b, 0x17, 0xfa, 0x29, - 0xc3, 0x48, 0x95, 0x8e, 0x4a, 0xff, 0x29, 0x40, 0xa2, 0x73, 0x25, 0x42, 0xef, 0xf4, 0x7b, 0x40, - 0xf1, 0xdf, 0xec, 0xd2, 0x17, 0x8f, 0xa0, 0x72, 0xa3, 0xe8, 0xd1, 0xb1, 0xfc, 0x30, 0x70, 0x96, - 0xf0, 0x2b, 0x9f, 0xe2, 0x58, 0x2c, 0x4b, 0xfe, 0x45, 0x80, 0x11, 0x7e, 0x2d, 0x43, 0xe7, 0xfb, - 0x14, 0x5d, 0x9f, 0x06, 0xd2, 0x61, 0x24, 0xae, 0xf8, 0xda, 0x71, 0x4b, 0xf2, 0x15, 0xb4, 0x30, - 0x98, 0x06, 0x8e, 0x45, 0xd0, 0xdf, 0x09, 0x10, 0xaf, 0xee, 0x99, 0x75, 0x7a, 0x22, 0x1c, 0x33, - 0xde, 0x3f, 0x3e, 0x96, 0x9d, 0xcf, 0x4b, 0x67, 0x02, 0x52, 0xea, 0x9a, 0xc1, 0x7f, 0x8d, 0x21, - 0x7b, 0x66, 0x9d, 0xda, 0xf4, 0x85, 0x00, 0x13, 0x79, 0x4d, 0x63, 0x1f, 0x98, 0x2c, 0x76, 0xfd, - 0x0b, 0x0f, 0x90, 0xe0, 0x15, 0x34, 0x3c, 0x40, 0x0e, 0xdc, 0x21, 0xdf, 0x4e, 0xff, 0x79, 0x58, - 0x67, 0x43, 0xf6, 0x88, 0x83, 0x0d, 0xf7, 0x78, 0xe0, 0x57, 0x5d, 0x55, 0xd3, 0xa8, 0x6a, 0xdf, - 0x0b, 0x30, 0x2d, 0x63, 0xc3, 0xda, 0xc5, 0x54, 0xac, 0xdb, 0xb6, 0x65, 0xfc, 0x06, 0xf4, 0xfb, - 0x8b, 0xb7, 0xa0, 0xdf, 0xfb, 0xe9, 0xeb, 0xaf, 0xa5, 0x9f, 0xcd, 0x94, 0xba, 0x29, 0x2c, 0xa6, - 0x2f, 0x3f, 0x7d, 0x22, 0x44, 0xff, 0xfb, 0x89, 0x70, 0xba, 0x6f, 0xe3, 0xfc, 0xf5, 0x7f, 0x89, - 0x91, 0x87, 0xc2, 0xca, 0xd7, 0xc2, 0xf3, 0x97, 0x99, 0xa1, 0x17, 0x2f, 0x33, 0x43, 0x3f, 0xbf, - 0xcc, 0x08, 0x7f, 0xb9, 0x9f, 0x11, 0xfe, 0x79, 0x3f, 0x23, 0x7c, 0xb7, 0x9f, 0x11, 0x9e, 0xef, - 0x67, 0x84, 0xef, 0xf7, 0x33, 0xc2, 0x0f, 0xfb, 0x99, 0xa1, 0x9f, 0xf7, 0x33, 0xc2, 0x5f, 0xbf, - 0xca, 0x0c, 0x3d, 0x7d, 0x95, 0x11, 0x9e, 0xbf, 0xca, 0x0c, 0xbd, 0x78, 0x95, 0x19, 0xba, 0xbf, - 0xda, 0xb0, 0x5a, 0x8f, 0x1a, 0x4b, 0xbb, 0x56, 0xd3, 0xc1, 0xb6, 0x4d, 0x99, 0xe7, 0xd8, 0x60, - 0xc7, 0xb2, 0x8d, 0x6c, 0xcb, 0xb6, 0x76, 0x75, 0x0d, 0xdb, 0x59, 0x0f, 0x9d, 0x6b, 0x6d, 0x37, - 0xac, 0x1c, 0xfe, 0xc2, 0x71, 0xff, 0x92, 0xf2, 0xfd, 0x8e, 0xb5, 0x3d, 0xc2, 0x1e, 0xe2, 0xaf, - 0xff, 0x3a, 0x00, 0x00, 0xff, 0xff, 0x89, 0x54, 0xa8, 0x79, 0xcd, 0x26, 0x00, 0x00, + // 3185 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x3a, 0x4d, 0x6c, 0x1b, 0x47, + 0x77, 0x5a, 0x92, 0x92, 0xc8, 0x47, 0xfd, 0x50, 0x23, 0xd9, 0x5e, 0x53, 0x36, 0x2d, 0xaf, 0x63, + 0x5b, 0x92, 0x4d, 0xd1, 0x95, 0x93, 0x26, 0x71, 0xd3, 0x18, 0x14, 0x49, 0x5b, 0x74, 0x25, 0x4a, + 0x5d, 0x52, 0x4e, 0x62, 0x23, 0x5d, 0xac, 0xb8, 0x23, 0x7a, 0x6b, 0xee, 0x2e, 0xb3, 0xb3, 0x94, + 0xa3, 0x14, 0x01, 0x8a, 0xa0, 0xe8, 0xa5, 0x97, 0x16, 0x01, 0x0a, 0xf4, 0x90, 0xe6, 0x52, 0x14, + 0x3d, 0xf5, 0x16, 0xa0, 0x88, 0x0f, 0xf5, 0xa5, 0x48, 0x4e, 0x85, 0xd1, 0x5e, 0x72, 0x68, 0xd1, + 0x46, 0x2e, 0x8a, 0xa4, 0x41, 0x81, 0x00, 0x3d, 0xf4, 0xd0, 0x4b, 0x31, 0x33, 0xbb, 0xe4, 0x72, + 0xb9, 0x94, 0x68, 0x05, 0x6e, 0xf1, 0xdd, 0x76, 0xde, 0x7b, 0xf3, 0xe6, 0xfd, 0xcf, 0x9b, 0x99, + 0x85, 0xa5, 0x7d, 0x4c, 0x56, 0x74, 0x2b, 0x47, 0xea, 0x8f, 0xb0, 0xa1, 0xe6, 0xda, 0x04, 0xdb, + 0xb9, 0x56, 0x7b, 0xb7, 0xa9, 0xd7, 0x95, 0x7a, 0x9b, 0x38, 0x96, 0xa1, 0xb6, 0xf4, 0x95, 0x96, + 0x6d, 0x39, 0x16, 0x42, 0x9c, 0x74, 0x85, 0x93, 0xae, 0x50, 0xd2, 0x74, 0xb6, 0xa1, 0x3b, 0x8f, + 0xda, 0xbb, 0x2b, 0x75, 0xcb, 0xc8, 0x35, 0xac, 0x86, 0x95, 0x63, 0xa4, 0xbb, 0xed, 0x3d, 0x36, + 0x62, 0x03, 0xf6, 0xc5, 0x59, 0xa4, 0xcf, 0x35, 0x2c, 0xab, 0xd1, 0xc4, 0x39, 0xb5, 0xa5, 0xe7, + 0x54, 0xd3, 0xb4, 0x1c, 0xd5, 0xd1, 0x2d, 0x93, 0xb8, 0xd8, 0x0b, 0x2e, 0xb6, 0xc3, 0xc3, 0xd1, + 0x0d, 0x4c, 0x1c, 0xd5, 0x68, 0xb9, 0x04, 0xe9, 0x5e, 0x61, 0xb1, 0x6d, 0x5b, 0xb6, 0x37, 0x79, + 0xbe, 0x17, 0x67, 0xb5, 0xfc, 0x9c, 0xcf, 0xf6, 0x22, 0x9d, 0x83, 0x16, 0xee, 0x2c, 0x1a, 0x62, + 0x00, 0x6b, 0xf7, 0x77, 0x71, 0xdd, 0x71, 0x09, 0x32, 0x21, 0x04, 0x7e, 0x06, 0xe7, 0x7a, 0xf1, + 0xfb, 0x6a, 0x53, 0xd7, 0x54, 0x07, 0xbb, 0x58, 0x29, 0x80, 0xc5, 0x04, 0x9b, 0xfb, 0x01, 0xe9, + 0x16, 0x02, 0x34, 0x3a, 0x7e, 0xa2, 0xf4, 0x50, 0x48, 0xff, 0x2c, 0xc0, 0x99, 0x35, 0xbd, 0xd9, + 0xd4, 0xcd, 0xc6, 0x1d, 0xac, 0x3a, 0x6d, 0x1b, 0x97, 0x4d, 0x4d, 0xaf, 0xab, 0x8e, 0x65, 0xa3, + 0x35, 0x98, 0xd8, 0xe5, 0x28, 0x65, 0xaf, 0xa9, 0x36, 0x44, 0x61, 0x41, 0x58, 0x9c, 0x5a, 0xbd, + 0xb0, 0xd2, 0xef, 0xad, 0x15, 0x8f, 0x45, 0x53, 0x6d, 0xc8, 0xc9, 0xdd, 0xee, 0x00, 0x9d, 0x86, + 0xb1, 0x3d, 0x55, 0x6f, 0x62, 0x4d, 0x8c, 0x2c, 0x08, 0x8b, 0x71, 0xd9, 0x1d, 0xa1, 0xab, 0x30, + 0xad, 0x6a, 0x9a, 0x4e, 0x45, 0x51, 0x9b, 0x8a, 0x6e, 0xee, 0x59, 0x62, 0x74, 0x41, 0x58, 0x4c, + 0xc8, 0x53, 0x5d, 0x70, 0xd9, 0xdc, 0xb3, 0xd0, 0x6f, 0xc2, 0x98, 0x5a, 0xa7, 0x63, 0x31, 0xc6, + 0x96, 0xbf, 0x7c, 0xcc, 0xf2, 0x79, 0x46, 0x2c, 0xbb, 0x93, 0xa4, 0x0a, 0x88, 0x55, 0x6c, 0x6a, + 0xdb, 0x2a, 0x21, 0x4f, 0x2c, 0x5b, 0x2b, 0x19, 0xaa, 0xde, 0x94, 0xf1, 0x47, 0x6d, 0x4c, 0x1c, + 0x74, 0x0e, 0x12, 0xa6, 0x6a, 0x60, 0xd2, 0x52, 0xeb, 0x98, 0x89, 0x97, 0x90, 0xbb, 0x00, 0x34, + 0x07, 0xa3, 0x98, 0x52, 0xbb, 0x72, 0xf1, 0x81, 0x34, 0x0f, 0x67, 0x43, 0xf8, 0x91, 0x96, 0x65, + 0x12, 0x2c, 0xdd, 0x84, 0x79, 0x19, 0x13, 0xec, 0x78, 0xd8, 0xb5, 0x83, 0xbc, 0x66, 0xe8, 0xa6, + 0xb7, 0x5e, 0x87, 0xa3, 0xe0, 0xe7, 0xb8, 0x0e, 0xa8, 0xe2, 0x2d, 0x4a, 0x64, 0xab, 0x89, 0x6b, + 0x07, 0x2d, 0x8c, 0x32, 0x00, 0x1d, 0x51, 0x88, 0x28, 0x2c, 0x44, 0x17, 0x13, 0xb2, 0x0f, 0x82, + 0x10, 0xc4, 0x6c, 0xab, 0xe9, 0x89, 0xcd, 0xbe, 0xa5, 0x9f, 0x22, 0x30, 0xbd, 0x43, 0xb0, 0x4d, + 0x99, 0x84, 0xea, 0x28, 0x04, 0x75, 0x44, 0x10, 0xa3, 0x03, 0x8f, 0x0b, 0xfd, 0x46, 0xe7, 0x01, + 0xf6, 0x74, 0x9b, 0x38, 0x0a, 0xc3, 0x70, 0xe5, 0x13, 0x0c, 0x42, 0xc5, 0x44, 0xf3, 0x90, 0x68, + 0xaa, 0x1e, 0x36, 0xc6, 0xb0, 0x71, 0x0a, 0x60, 0xc8, 0x8e, 0x86, 0xa3, 0x3e, 0x0d, 0xd1, 0x0d, + 0x88, 0xd1, 0xb0, 0x16, 0xc7, 0x98, 0x03, 0xcf, 0x85, 0x39, 0x90, 0x8a, 0x4d, 0xf5, 0x96, 0x19, + 0x25, 0x2a, 0xc3, 0x74, 0x47, 0x48, 0x85, 0xea, 0x46, 0xc4, 0xf1, 0x85, 0xe8, 0x62, 0x72, 0x75, + 0x21, 0x30, 0xb9, 0x63, 0x39, 0xcf, 0x70, 0xf2, 0x94, 0xe9, 0x07, 0x11, 0xf4, 0xeb, 0x10, 0xd7, + 0x35, 0x43, 0x61, 0x02, 0xc4, 0x99, 0x00, 0xf3, 0x61, 0x02, 0x94, 0x35, 0x83, 0x4d, 0x1f, 0xd7, + 0xf9, 0x07, 0xba, 0x00, 0xc9, 0x86, 0x6d, 0xb5, 0x5b, 0x4c, 0x51, 0x22, 0x26, 0xb8, 0x07, 0x18, + 0x88, 0x2d, 0x2a, 0xdd, 0x84, 0xd9, 0x0d, 0x9d, 0x38, 0x2f, 0x65, 0x70, 0xe9, 0xcf, 0x05, 0x98, + 0xc9, 0x13, 0xa2, 0x37, 0xcc, 0xe1, 0x9d, 0xb4, 0xe5, 0x33, 0x06, 0x51, 0x3a, 0x5e, 0x4f, 0xae, + 0x5e, 0x09, 0x53, 0xa4, 0x3f, 0x96, 0x7c, 0x26, 0x61, 0x30, 0x94, 0x86, 0x38, 0x25, 0x75, 0xfd, + 0x4b, 0xf5, 0xea, 0x8c, 0xa5, 0x07, 0x30, 0xd7, 0xab, 0x15, 0x0f, 0x6d, 0xb4, 0x06, 0xa3, 0xba, + 0x83, 0x0d, 0x1e, 0x8a, 0xc9, 0xd5, 0xeb, 0x61, 0x4b, 0x87, 0x4d, 0x2c, 0x3b, 0xd8, 0x90, 0xf9, + 0x54, 0xe9, 0xbf, 0x47, 0x41, 0x1c, 0x44, 0x73, 0x82, 0x40, 0x0d, 0x4d, 0xd0, 0x40, 0xf8, 0xc6, + 0x8e, 0x0c, 0xdf, 0xd1, 0x40, 0xf8, 0xfe, 0xbf, 0x06, 0xea, 0x69, 0x18, 0x73, 0xb0, 0xa9, 0x9a, + 0x0e, 0x0b, 0xd3, 0x84, 0xec, 0x8e, 0xd0, 0x2d, 0x48, 0xf2, 0x2f, 0x1e, 0xc3, 0x09, 0x26, 0xdb, + 0xd9, 0x00, 0xfb, 0x1a, 0xa3, 0x60, 0x7c, 0xc1, 0xe9, 0x7c, 0xf7, 0x04, 0x3f, 0xbc, 0x44, 0xf0, + 0x5f, 0x84, 0x09, 0xcd, 0x32, 0x54, 0xdd, 0x54, 0xac, 0x27, 0x26, 0xb6, 0xc5, 0x24, 0xab, 0xdd, + 0x49, 0x0e, 0xdb, 0xa2, 0x20, 0x9a, 0x1f, 0x96, 0xd3, 0x52, 0xb0, 0xa9, 0xee, 0xd2, 0xea, 0x3e, + 0xc1, 0x28, 0xc0, 0x72, 0x5a, 0x25, 0x0e, 0xa1, 0x51, 0xa6, 0xe9, 0x84, 0x63, 0x27, 0x19, 0xb6, + 0x33, 0x46, 0x65, 0x40, 0x75, 0x1b, 0xb3, 0x2d, 0x5a, 0xe9, 0x6c, 0xc5, 0xe2, 0x14, 0x8b, 0xea, + 0xf4, 0x0a, 0xdf, 0xac, 0x57, 0xbc, 0xcd, 0x7a, 0xa5, 0xe6, 0x51, 0xc8, 0x33, 0xde, 0xac, 0x0e, + 0x08, 0x6d, 0xc0, 0x1c, 0x73, 0x68, 0xd3, 0x6a, 0xe8, 0x7e, 0x66, 0xd3, 0xc7, 0x32, 0x43, 0x74, + 0xde, 0x06, 0x9d, 0xd6, 0xe5, 0x16, 0xc8, 0xfa, 0x54, 0x30, 0xeb, 0xd1, 0xeb, 0x90, 0x20, 0x07, + 0x66, 0x5d, 0x31, 0x2c, 0x0d, 0x8b, 0x33, 0xcc, 0xa4, 0x67, 0x02, 0x26, 0xad, 0x1e, 0x98, 0xf5, + 0x4d, 0x4b, 0xc3, 0x72, 0x9c, 0xb8, 0x5f, 0xd2, 0x2a, 0xa0, 0xbb, 0xf8, 0x25, 0x4b, 0xc5, 0xd7, + 0x08, 0x66, 0x7b, 0x26, 0xb9, 0x99, 0xf8, 0xab, 0x99, 0x28, 0x9b, 0x27, 0x4e, 0x94, 0xb5, 0x88, + 0x28, 0xfc, 0x9f, 0x24, 0xcb, 0x3a, 0x4c, 0xee, 0xf1, 0x16, 0x88, 0xb5, 0x3b, 0x44, 0x04, 0x26, + 0xe0, 0xa5, 0x30, 0xed, 0xdc, 0x5e, 0x89, 0x36, 0x1c, 0x8c, 0xcf, 0xc4, 0x5e, 0x17, 0x40, 0xd0, + 0x0a, 0xcc, 0x3a, 0x16, 0x51, 0xea, 0x6d, 0xdb, 0xc6, 0xa6, 0xa3, 0xec, 0x63, 0x9b, 0xd0, 0x06, + 0x26, 0xc9, 0x44, 0x9d, 0x71, 0x2c, 0x52, 0xe0, 0x98, 0xfb, 0x1c, 0x81, 0x2e, 0xc3, 0x04, 0xa5, + 0x57, 0xeb, 0x75, 0xdc, 0x72, 0xdc, 0x64, 0x4a, 0x30, 0xbd, 0x93, 0x8e, 0x45, 0xf2, 0x2e, 0xb8, + 0x27, 0x9b, 0x27, 0x7f, 0x41, 0x36, 0x4f, 0xf7, 0x67, 0xf3, 0x1c, 0x8c, 0xd6, 0x99, 0xa7, 0x53, + 0x3c, 0x44, 0xd8, 0x00, 0x6d, 0xc3, 0xa4, 0xbf, 0x01, 0x24, 0xe2, 0x0c, 0xb3, 0xc8, 0xb5, 0xa3, + 0x5a, 0xb0, 0x40, 0x13, 0x29, 0x4f, 0xf8, 0xba, 0x41, 0x32, 0x20, 0xf1, 0xd1, 0x49, 0x12, 0x5f, + 0x84, 0xf1, 0xba, 0x65, 0xb4, 0x54, 0xf3, 0x40, 0x9c, 0x65, 0x42, 0x7b, 0x43, 0x9a, 0xa3, 0xad, + 0xa6, 0x6a, 0x72, 0x43, 0xcd, 0x85, 0xe6, 0xe8, 0x76, 0x53, 0x35, 0x99, 0x91, 0xe2, 0x2d, 0xf7, + 0x0b, 0xfd, 0x06, 0xa4, 0x69, 0xcf, 0xb8, 0x8f, 0x15, 0x3e, 0xd9, 0x56, 0x4d, 0xc2, 0x1a, 0x51, + 0xa5, 0xad, 0x6b, 0xe2, 0x29, 0xb6, 0xc4, 0x19, 0x4e, 0xc1, 0x66, 0x77, 0xf0, 0x3b, 0x7a, 0x6f, + 0xb1, 0x3b, 0x1d, 0x28, 0x76, 0x17, 0x61, 0xc2, 0x8d, 0x49, 0xe2, 0xa8, 0x0e, 0x16, 0xcf, 0x30, + 0x56, 0x6e, 0x9c, 0x56, 0x29, 0x08, 0x3d, 0xec, 0x90, 0x70, 0x3b, 0x8b, 0xcc, 0xce, 0x6f, 0x85, + 0xd9, 0x39, 0xa4, 0x24, 0xb8, 0x01, 0xcd, 0x2c, 0x5c, 0x32, 0x1d, 0xfb, 0xc0, 0x63, 0xce, 0x6d, + 0xbe, 0x0a, 0xa3, 0x7c, 0xe1, 0xf4, 0xe0, 0x6c, 0xbd, 0x53, 0xdd, 0x64, 0x92, 0xc8, 0x9c, 0x74, + 0x60, 0x55, 0x3d, 0x7b, 0xa2, 0xaa, 0xfa, 0x3e, 0x24, 0x1d, 0xbd, 0x89, 0x59, 0x80, 0x13, 0x22, + 0x9e, 0x63, 0xda, 0xbd, 0x39, 0xb4, 0x76, 0x7a, 0x13, 0xe7, 0xd9, 0x4c, 0xae, 0x1c, 0x38, 0x1d, + 0x00, 0xfa, 0x08, 0xe6, 0x54, 0x4d, 0xb3, 0x4c, 0x85, 0x60, 0x7b, 0x5f, 0xaf, 0x63, 0x66, 0xe2, + 0x36, 0x11, 0xcf, 0xb3, 0x25, 0x6e, 0x0f, 0xbb, 0x44, 0x9e, 0xf2, 0xa8, 0x72, 0x16, 0x55, 0xc6, + 0x81, 0x2f, 0x85, 0xd4, 0x3e, 0x04, 0x5a, 0x80, 0x24, 0x36, 0xf7, 0x75, 0xdb, 0x32, 0x0d, 0x6c, + 0x3a, 0x62, 0x86, 0x7b, 0xd3, 0x07, 0xa2, 0x9b, 0x08, 0x4d, 0x67, 0x2f, 0xed, 0x17, 0x18, 0x05, + 0x38, 0x16, 0xf1, 0xf2, 0x7d, 0x0d, 0xa6, 0xfd, 0xf9, 0xae, 0xa8, 0x8e, 0x78, 0xf1, 0x58, 0xc3, + 0x4e, 0xfa, 0x4a, 0x41, 0xde, 0x09, 0xee, 0x54, 0x52, 0xdf, 0x4e, 0x75, 0x15, 0xa6, 0x2d, 0x5b, + 0x6f, 0xe8, 0xf4, 0x7c, 0xe5, 0xd6, 0xca, 0x4b, 0xfc, 0x84, 0xe5, 0x81, 0x79, 0xd8, 0xa0, 0x4d, + 0x48, 0x75, 0x4b, 0xb3, 0xeb, 0xa2, 0xd7, 0x98, 0x38, 0xd2, 0xa0, 0xda, 0xcc, 0xad, 0xcf, 0x12, + 0xa8, 0x5b, 0xd6, 0x5d, 0x97, 0xf4, 0xec, 0x90, 0x97, 0x87, 0xdc, 0x21, 0xe9, 0x76, 0x43, 0xbd, + 0xa3, 0xb4, 0x69, 0xb2, 0x5d, 0xe1, 0xdb, 0x0d, 0x05, 0xec, 0xb4, 0x75, 0x0d, 0x2d, 0xc3, 0x8c, + 0x57, 0x87, 0x58, 0x6e, 0xb2, 0x4a, 0x75, 0x95, 0x11, 0x4d, 0xbb, 0x08, 0x9a, 0x92, 0x6c, 0x6b, + 0x7a, 0x1b, 0x26, 0x08, 0x6e, 0xee, 0x29, 0x86, 0x6a, 0xaa, 0x0d, 0xac, 0x89, 0x4b, 0x4c, 0x93, + 0xb9, 0x80, 0x04, 0x25, 0xa3, 0xe5, 0x1c, 0xac, 0x8f, 0xc8, 0x49, 0x4a, 0xbb, 0xc9, 0x49, 0x51, + 0x1e, 0x92, 0x06, 0x69, 0x75, 0x66, 0x2e, 0xb3, 0x99, 0x99, 0xb0, 0x18, 0xda, 0xac, 0x6e, 0xbb, + 0x93, 0xd6, 0x47, 0x64, 0x30, 0x48, 0xcb, 0x63, 0x71, 0x1b, 0x92, 0xdc, 0x82, 0xbc, 0xf8, 0x5c, + 0x63, 0xea, 0x87, 0xb2, 0xf0, 0x99, 0x10, 0xd4, 0xce, 0x77, 0xfa, 0x5d, 0x48, 0x05, 0xb3, 0x19, + 0xa5, 0x20, 0xfa, 0x18, 0x1f, 0xb8, 0x7b, 0x3d, 0xfd, 0xa4, 0xe5, 0x7a, 0x5f, 0x6d, 0xb6, 0xb1, + 0x7b, 0xa8, 0xe6, 0x83, 0x5b, 0x91, 0xb7, 0x84, 0xf4, 0x87, 0x30, 0x1d, 0xc8, 0x97, 0x90, 0xe9, + 0xaf, 0xfb, 0xa7, 0x0f, 0x50, 0xb1, 0xcb, 0xc5, 0xcf, 0xde, 0x80, 0x33, 0x03, 0x72, 0x25, 0x64, + 0x99, 0x77, 0x7a, 0x97, 0x09, 0x3d, 0xae, 0xf4, 0x73, 0xf3, 0x2d, 0xb7, 0x76, 0x01, 0x66, 0x5d, + 0x6f, 0xb8, 0x81, 0xc9, 0x6e, 0x0a, 0x50, 0xfc, 0xd9, 0x53, 0x61, 0xe9, 0xf9, 0x53, 0x61, 0xf1, + 0x5e, 0x2c, 0x3e, 0x95, 0x9a, 0xbe, 0x17, 0x8b, 0xcf, 0xa7, 0xce, 0xdd, 0x8b, 0xc5, 0x2f, 0xa4, + 0x16, 0xee, 0xc5, 0xe2, 0x8b, 0xa9, 0x25, 0xe9, 0x4b, 0x01, 0xa0, 0xeb, 0x24, 0xda, 0x15, 0x39, + 0x3a, 0xb6, 0x99, 0x70, 0x93, 0x32, 0xfb, 0x46, 0xa7, 0x60, 0x8c, 0x7a, 0x5b, 0xd7, 0xdc, 0x5e, + 0x69, 0xd4, 0x20, 0xad, 0xb2, 0x86, 0x16, 0x21, 0xd5, 0x52, 0xd9, 0xb6, 0xed, 0x56, 0x64, 0x5d, + 0xf3, 0x6e, 0x26, 0x38, 0x9c, 0xbb, 0xa7, 0xac, 0xa1, 0x77, 0x20, 0x61, 0x5a, 0x1a, 0xe6, 0x9e, + 0x8e, 0x0d, 0xbe, 0x1b, 0xd9, 0xac, 0x6e, 0x57, 0x2c, 0x8d, 0x37, 0xfd, 0x71, 0xd3, 0xfd, 0x92, + 0xee, 0xc1, 0x5c, 0x41, 0x25, 0x75, 0x55, 0xc3, 0x45, 0xdc, 0xc4, 0xce, 0x90, 0x67, 0xc1, 0x4e, + 0x2b, 0x17, 0xf1, 0x5f, 0x21, 0xb4, 0xe1, 0x54, 0x80, 0x97, 0xdb, 0x2b, 0xce, 0x43, 0x42, 0x63, + 0x10, 0xc5, 0x7a, 0xcc, 0x98, 0xd1, 0x7d, 0x89, 0x01, 0xb6, 0x1e, 0xa3, 0xdb, 0xde, 0x91, 0x2e, + 0xc2, 0x8a, 0xe5, 0x52, 0x98, 0xec, 0x3d, 0x6c, 0xe9, 0x39, 0x8d, 0x69, 0xe1, 0x9e, 0xe7, 0xbe, + 0x10, 0x02, 0xeb, 0x7a, 0x04, 0xec, 0x70, 0xc0, 0x6e, 0xba, 0xb8, 0x71, 0xb8, 0x1a, 0xc0, 0x41, + 0x8c, 0xe0, 0x3c, 0xb8, 0x23, 0xb6, 0xb9, 0xba, 0x77, 0x2f, 0x1c, 0x42, 0xb7, 0xd3, 0xee, 0x7c, + 0xdf, 0x25, 0x84, 0x3b, 0x83, 0x65, 0xf9, 0x25, 0x98, 0x64, 0x77, 0x74, 0x8a, 0x81, 0x09, 0x51, + 0x1b, 0x5e, 0xff, 0x3a, 0xc1, 0x80, 0x9b, 0x1c, 0x26, 0xfd, 0xa5, 0x00, 0x29, 0x5e, 0x31, 0x6b, + 0x5b, 0xd5, 0xe1, 0xec, 0x1b, 0xec, 0xc4, 0x22, 0xe1, 0x9d, 0x58, 0xa0, 0xc2, 0xc7, 0xfa, 0x2a, + 0xfc, 0x95, 0xfe, 0x0a, 0x4f, 0x7b, 0xe8, 0x68, 0xa0, 0x8a, 0xdf, 0x8b, 0xc5, 0xa3, 0xa9, 0x98, + 0x34, 0x0b, 0x33, 0x3e, 0x39, 0xdd, 0xcb, 0xa4, 0x2c, 0x4c, 0xde, 0xc5, 0x43, 0x4b, 0x2e, 0xbd, + 0x0b, 0x53, 0x1e, 0xb9, 0xeb, 0x7c, 0x11, 0xc6, 0x3d, 0x01, 0x39, 0xb5, 0x37, 0x64, 0xe9, 0x80, + 0x3f, 0x76, 0xbc, 0x43, 0x02, 0xfd, 0x96, 0xc6, 0x61, 0x94, 0x15, 0x45, 0x29, 0x0f, 0xd3, 0x81, + 0xee, 0xb6, 0x73, 0xa8, 0x10, 0x7c, 0x87, 0x0a, 0x7f, 0xc7, 0x13, 0xe9, 0xed, 0x78, 0xa4, 0x3a, + 0xa4, 0xe8, 0x16, 0x7b, 0x97, 0x6e, 0x46, 0x9e, 0xf4, 0x8b, 0xbe, 0x4b, 0x07, 0xc6, 0x67, 0x6d, + 0xe2, 0xeb, 0x1f, 0x9f, 0x45, 0xc7, 0x6d, 0x6a, 0x97, 0x67, 0x91, 0xee, 0x15, 0x44, 0x70, 0x67, + 0x8b, 0x06, 0x77, 0xb6, 0x7b, 0xb1, 0x78, 0x24, 0x15, 0x95, 0x0a, 0x30, 0xe3, 0x5b, 0xc4, 0xd5, + 0x79, 0x05, 0x46, 0x59, 0x08, 0xb0, 0x25, 0x92, 0xab, 0x62, 0xb0, 0xec, 0x53, 0x1c, 0x0f, 0x61, + 0x46, 0xb6, 0xfc, 0x17, 0x31, 0x48, 0xfa, 0x2e, 0x0f, 0x91, 0x08, 0x73, 0xf7, 0xf3, 0x1b, 0xe5, + 0xa2, 0xb2, 0x9d, 0xff, 0x60, 0xb3, 0x54, 0xa9, 0x29, 0x9b, 0xa5, 0xda, 0xfa, 0x56, 0x31, 0x35, + 0x82, 0x66, 0x61, 0x7a, 0xeb, 0x7e, 0x49, 0x2e, 0xee, 0x94, 0x94, 0x72, 0xe5, 0xfe, 0x56, 0xb9, + 0x50, 0x4a, 0x09, 0x68, 0x1e, 0xce, 0x6c, 0xe4, 0xab, 0x35, 0xa5, 0x26, 0xe7, 0x2b, 0xd5, 0x7c, + 0xa1, 0x56, 0xde, 0xaa, 0x28, 0xd5, 0x5a, 0xbe, 0xb6, 0x53, 0x4d, 0x45, 0x50, 0x1a, 0x4e, 0xf7, + 0x72, 0x51, 0x4a, 0xef, 0x6f, 0x97, 0xe5, 0x52, 0x31, 0x15, 0x45, 0x97, 0xe1, 0x62, 0x00, 0x57, + 0xae, 0x54, 0x77, 0xee, 0xdc, 0x29, 0x17, 0xca, 0x14, 0x76, 0x67, 0xa7, 0x52, 0xac, 0xa6, 0x62, + 0xe8, 0x12, 0x5c, 0x08, 0x90, 0x6d, 0xcb, 0xe5, 0xcd, 0xbc, 0xfc, 0x81, 0x52, 0x2c, 0x15, 0x36, + 0xca, 0x95, 0x52, 0x31, 0x35, 0x8a, 0x32, 0x90, 0x0e, 0x10, 0x15, 0xee, 0x17, 0xa8, 0x90, 0x54, + 0x91, 0xd4, 0x58, 0x08, 0xfe, 0x41, 0x79, 0xbb, 0x83, 0x1f, 0x47, 0x6f, 0xc2, 0xcd, 0x63, 0x65, + 0x51, 0xaa, 0xa5, 0xc2, 0x56, 0xa5, 0x48, 0x57, 0x2e, 0xac, 0xe7, 0xe5, 0xbb, 0xa5, 0x62, 0x2a, + 0x8e, 0x5e, 0x87, 0x1b, 0x03, 0xa4, 0x73, 0x15, 0x0d, 0x99, 0x95, 0x40, 0x6f, 0xc0, 0xaf, 0x1d, + 0xa3, 0x53, 0xc8, 0x34, 0x40, 0x59, 0x58, 0x0a, 0x4c, 0x5b, 0xdb, 0xaa, 0xad, 0x07, 0xfc, 0xa4, + 0xdc, 0xc9, 0x97, 0x37, 0x4a, 0xc5, 0x54, 0x12, 0x5d, 0x82, 0x4c, 0x00, 0x75, 0xb7, 0x54, 0x29, + 0xc9, 0xe5, 0x02, 0x23, 0xd9, 0x91, 0x4b, 0xa9, 0x1f, 0xc6, 0xd1, 0x55, 0x90, 0x06, 0x10, 0xe5, + 0x8b, 0xc5, 0x0e, 0xe1, 0x8f, 0xe3, 0xcb, 0x15, 0x98, 0xe9, 0xbb, 0x62, 0x46, 0x93, 0x90, 0xa8, + 0x6c, 0x29, 0xdc, 0xeb, 0xa9, 0x11, 0xea, 0x6e, 0x3a, 0xab, 0x52, 0x7a, 0x2f, 0x18, 0x3c, 0x02, + 0x9a, 0x02, 0x28, 0x6c, 0x55, 0x6a, 0xf9, 0x42, 0x4d, 0xa1, 0xa1, 0xb1, 0x6c, 0x00, 0x74, 0xf7, + 0x7f, 0x84, 0x60, 0x6a, 0xa7, 0xf2, 0x5b, 0x95, 0xad, 0xf7, 0x2a, 0x4a, 0xbe, 0x50, 0x28, 0x55, + 0xab, 0xa9, 0x11, 0x34, 0x03, 0x93, 0xc5, 0xb2, 0x5c, 0x2a, 0xd4, 0x3c, 0x10, 0x63, 0xb2, 0x59, + 0xdd, 0xf6, 0xc6, 0x11, 0x34, 0x07, 0xa9, 0x62, 0x69, 0xa3, 0x74, 0x37, 0x5f, 0x2b, 0x15, 0x3d, + 0x68, 0x94, 0x32, 0xab, 0xee, 0x6c, 0x6f, 0x6f, 0xc9, 0x9d, 0x99, 0xb1, 0x65, 0x19, 0x92, 0xbe, + 0x4d, 0x08, 0x9d, 0x06, 0xb4, 0x49, 0x5a, 0xde, 0x70, 0xc7, 0x7c, 0x6c, 0x5a, 0x4f, 0xcc, 0xd4, + 0x08, 0x65, 0xe8, 0x83, 0x17, 0x1e, 0xe9, 0x4d, 0x2d, 0x25, 0xa0, 0x53, 0x30, 0xe3, 0x83, 0x6e, + 0xb3, 0x3d, 0x30, 0x15, 0x59, 0xfd, 0x2a, 0x0d, 0x89, 0x02, 0x7b, 0xc7, 0xc9, 0x6f, 0x97, 0xd1, + 0xbf, 0x08, 0x30, 0x56, 0xa0, 0x47, 0x34, 0x8c, 0x2e, 0x0d, 0xba, 0x0d, 0xf0, 0x5d, 0x7d, 0xa4, + 0xd3, 0x61, 0x44, 0x5b, 0xac, 0xbe, 0x4b, 0x9f, 0x0b, 0x87, 0xdf, 0x88, 0xb5, 0xbd, 0x37, 0x3e, + 0xae, 0x67, 0xeb, 0x96, 0x49, 0xac, 0x26, 0xce, 0xee, 0xaa, 0x04, 0x67, 0x55, 0xcd, 0xd0, 0xcd, + 0xeb, 0x0b, 0x41, 0x84, 0x5e, 0xef, 0xc1, 0x50, 0xd2, 0xeb, 0x0b, 0xfb, 0x98, 0x64, 0x75, 0x2b, + 0xdb, 0x56, 0x0d, 0x8e, 0xcc, 0x3e, 0xb1, 0x75, 0x07, 0x7f, 0xf6, 0x8f, 0xff, 0xf6, 0x79, 0xe4, + 0x0d, 0xe9, 0x86, 0xfb, 0x0e, 0x95, 0xe3, 0xef, 0x50, 0xb9, 0xee, 0xf5, 0x68, 0xee, 0xf7, 0x3a, + 0xdf, 0x9f, 0xb2, 0xf7, 0x18, 0x7e, 0x55, 0x71, 0x4b, 0x58, 0x46, 0xff, 0x13, 0x85, 0x71, 0x19, + 0xb7, 0x9a, 0x74, 0x97, 0xf8, 0xc5, 0x2a, 0xfe, 0x75, 0xf4, 0x55, 0xa9, 0xf8, 0x1f, 0xdf, 0x88, + 0xdf, 0x09, 0xf0, 0x9a, 0x8b, 0xe4, 0x4b, 0x67, 0xe9, 0xd2, 0xd9, 0xce, 0xa3, 0x5b, 0xd6, 0x76, + 0xd5, 0x58, 0x87, 0x68, 0xab, 0xed, 0xa0, 0xfc, 0x60, 0x73, 0x2c, 0x3e, 0x54, 0xb3, 0x9f, 0x7c, + 0xb8, 0xf8, 0x30, 0xab, 0x66, 0x3f, 0xb9, 0x91, 0x7d, 0xfb, 0xc3, 0xe5, 0x87, 0xee, 0xc7, 0xd2, + 0xed, 0x25, 0x9f, 0x7d, 0xd0, 0x1e, 0xc4, 0x5a, 0x16, 0x71, 0xd0, 0xef, 0xfc, 0x62, 0x56, 0x47, + 0xd2, 0x31, 0xff, 0x91, 0xf4, 0x49, 0xfc, 0xf7, 0xe0, 0x1d, 0xe9, 0xcd, 0x97, 0x9d, 0xc6, 0xc1, + 0x9f, 0x52, 0xef, 0xff, 0xa7, 0x00, 0xb1, 0x0d, 0x9d, 0x38, 0xe8, 0xea, 0xf1, 0x17, 0xdf, 0xdc, + 0xfd, 0x8b, 0xc3, 0xde, 0x90, 0x4b, 0x7f, 0x22, 0x7c, 0xfb, 0x37, 0x11, 0x1a, 0xf3, 0xbf, 0xdd, + 0x1f, 0x10, 0x86, 0x65, 0xea, 0x8e, 0x65, 0x87, 0x86, 0x44, 0x2f, 0xae, 0x2f, 0x28, 0x6c, 0xac, + 0x6a, 0xcc, 0x60, 0xab, 0xe8, 0xa5, 0x0d, 0x86, 0xfe, 0x56, 0x80, 0xe8, 0x5d, 0xec, 0xa0, 0x2b, + 0xc7, 0x9e, 0xa0, 0xb9, 0xb6, 0x57, 0x87, 0x3c, 0x69, 0x4b, 0x0d, 0x57, 0xd7, 0x6b, 0x4c, 0x68, + 0x0d, 0xef, 0xa9, 0xed, 0xa6, 0x93, 0xe5, 0xcd, 0x7d, 0x47, 0xfc, 0x27, 0x78, 0xd7, 0x05, 0x75, + 0xb5, 0x58, 0x41, 0xd7, 0x87, 0xd3, 0xe2, 0xc9, 0x23, 0x4b, 0x35, 0x74, 0xf4, 0x07, 0x11, 0x98, + 0xec, 0x69, 0x4e, 0xd1, 0xe2, 0xb1, 0x0d, 0xae, 0xa7, 0xcd, 0xd2, 0x10, 0x94, 0xae, 0x3e, 0x5f, + 0xbc, 0xda, 0x62, 0x75, 0x5b, 0xba, 0x35, 0xbc, 0xef, 0x48, 0xae, 0xce, 0x65, 0x54, 0x78, 0x8f, + 0x4f, 0x03, 0xf7, 0x9f, 0x04, 0x80, 0xee, 0x83, 0x13, 0x0a, 0x7d, 0x3d, 0xed, 0x7b, 0x90, 0x4a, + 0x9f, 0x0d, 0x23, 0xe3, 0xed, 0xe1, 0x1f, 0x51, 0x85, 0x37, 0xfa, 0x15, 0xa6, 0x24, 0xa1, 0xfa, + 0xfa, 0x10, 0x7d, 0xea, 0x9e, 0xa0, 0x2a, 0xd3, 0xf8, 0x54, 0x98, 0xb6, 0x54, 0xbd, 0x7f, 0x17, + 0x60, 0xa6, 0xef, 0x3d, 0x16, 0x85, 0xbe, 0x4e, 0x0d, 0x7a, 0x06, 0x4e, 0x67, 0x87, 0xa4, 0x76, + 0x3d, 0xee, 0x1c, 0x7e, 0x23, 0x5e, 0x1f, 0x32, 0x7a, 0xbb, 0xfa, 0xbd, 0x2b, 0xbd, 0x3d, 0x9c, + 0x7e, 0x04, 0x9b, 0x9a, 0xd2, 0x72, 0x57, 0x56, 0xd8, 0xf9, 0x8e, 0x2a, 0xfa, 0xa5, 0x00, 0x93, + 0x3d, 0x6f, 0xcb, 0x68, 0xb0, 0x8f, 0x8e, 0x72, 0xdf, 0xfb, 0x27, 0x92, 0x5e, 0x92, 0xce, 0x07, + 0xa4, 0xf7, 0x24, 0xcc, 0xd9, 0x54, 0x28, 0x2a, 0xe1, 0x4f, 0x02, 0xcc, 0x85, 0xbd, 0x7e, 0xa3, + 0x5c, 0x98, 0x34, 0x47, 0xbc, 0x93, 0x1f, 0x25, 0xfe, 0x1f, 0xbe, 0xda, 0x74, 0x5b, 0x94, 0x2e, + 0x0d, 0xd2, 0x93, 0x91, 0x2a, 0x1d, 0x6d, 0xff, 0x4e, 0x80, 0x44, 0xe7, 0xcc, 0x86, 0x5e, 0x1b, + 0x74, 0xc3, 0xe3, 0x3f, 0x7a, 0xa6, 0x2f, 0x1f, 0x43, 0xe5, 0x06, 0xd8, 0xe3, 0x13, 0xb9, 0x68, + 0xe8, 0x04, 0xe2, 0x67, 0x52, 0xc5, 0xb1, 0x58, 0x02, 0x7d, 0x25, 0xc0, 0x18, 0x3f, 0x37, 0xa2, + 0x8b, 0x03, 0x6a, 0xb8, 0x4f, 0x03, 0xe9, 0x28, 0x12, 0x57, 0x7c, 0xed, 0xa4, 0x15, 0xfe, 0x1a, + 0x5a, 0x1a, 0x4e, 0x03, 0xc7, 0x22, 0xe8, 0xcf, 0x04, 0x88, 0x57, 0x0f, 0xcc, 0x3a, 0xdd, 0x60, + 0x4e, 0x98, 0x0a, 0xef, 0x9d, 0xc8, 0xce, 0x17, 0xa5, 0x73, 0x01, 0x29, 0x75, 0xcd, 0xe0, 0xff, + 0xee, 0x90, 0x03, 0xb3, 0x4e, 0x6d, 0xfa, 0x5f, 0x02, 0x4c, 0xe5, 0x35, 0x8d, 0xbd, 0x80, 0x59, + 0xec, 0x7c, 0x1a, 0x1e, 0x20, 0xc1, 0x33, 0x72, 0x78, 0x80, 0xf4, 0x1d, 0x72, 0x5f, 0x79, 0x83, + 0x7c, 0x54, 0x83, 0x45, 0x0e, 0x88, 0x83, 0x0d, 0x77, 0xbb, 0xe1, 0xc7, 0x74, 0x55, 0xd3, 0x58, + 0x83, 0x2c, 0xc0, 0xac, 0x8c, 0x0d, 0x6b, 0x1f, 0x53, 0x89, 0xef, 0xd8, 0x96, 0xf1, 0x0a, 0x54, + 0xff, 0xd3, 0x57, 0xab, 0xfa, 0x5b, 0xe9, 0x9b, 0x2f, 0xa5, 0xba, 0xcd, 0xf4, 0xbd, 0x25, 0x2c, + 0xa7, 0xaf, 0x3e, 0x7b, 0x2a, 0x44, 0xff, 0xe1, 0xa9, 0x70, 0x76, 0x60, 0xd3, 0xff, 0xd9, 0xdf, + 0x8b, 0x91, 0x47, 0xc2, 0xda, 0x67, 0xc2, 0xf3, 0xef, 0x33, 0x23, 0xdf, 0x7d, 0x9f, 0x19, 0xf9, + 0xf9, 0xfb, 0x8c, 0xf0, 0xfb, 0x87, 0x19, 0xe1, 0xaf, 0x0e, 0x33, 0xc2, 0xb7, 0x87, 0x19, 0xe1, + 0xf9, 0x61, 0x46, 0xf8, 0xd7, 0xc3, 0x8c, 0xf0, 0xc3, 0x61, 0x66, 0xe4, 0xe7, 0xc3, 0x8c, 0xf0, + 0xc7, 0x2f, 0x32, 0x23, 0xcf, 0x5e, 0x64, 0x84, 0xe7, 0x2f, 0x32, 0x23, 0xdf, 0xbd, 0xc8, 0x8c, + 0x3c, 0x58, 0x6f, 0x58, 0xad, 0xc7, 0x8d, 0x95, 0x7d, 0xab, 0xe9, 0x60, 0xdb, 0xa6, 0xcc, 0x73, + 0xec, 0x63, 0xcf, 0xb2, 0x8d, 0x6c, 0xcb, 0xb6, 0xf6, 0x75, 0x0d, 0xdb, 0x59, 0x0f, 0x9d, 0x6b, + 0xed, 0x36, 0xac, 0x1c, 0xfe, 0xd8, 0x71, 0x7f, 0xfe, 0xf2, 0xfd, 0x65, 0xb6, 0x3b, 0xc6, 0xde, + 0x17, 0x6e, 0xfe, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0b, 0x70, 0x56, 0x3e, 0xa4, 0x27, 0x00, + 0x00, } func (x BillingFlag) String() string { diff --git a/pbgo/extschema/schema/user/public_customapi.vesapi.go b/pbgo/extschema/schema/user/public_customapi.vesapi.go index be3e9b510..67cd25bd2 100644 --- a/pbgo/extschema/schema/user/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/user/public_customapi.vesapi.go @@ -3622,12 +3622,14 @@ var CustomAPISwaggerJSON string = `{ }, "schemaAddonServiceAccess": { "type": "string", - "description": "x-displayName: \"Addon Service Access\"\nState of access into service\n\n - AS_AC_NONE: x-displayName: \"None\"\ndefault state\nThis can mean that addon service is not subscribed or is in pending subscription.\n - AS_AC_ALLOWED: x-displayName: \"Allow\"\naccess is allowed\n - AS_AC_PBAC_DENY: x-displayName: \"PBAC Deny\"\nPlan based access control denied.\nThis means current plan doesnt allow this addon service.", + "description": "x-displayName: \"Addon Service Access\"\nState of access into service\n\n - AS_AC_NONE: x-displayName: \"None\"\ndefault state\nThis can mean that addon service is not subscribed or is in pending subscription.\n - AS_AC_ALLOWED: x-displayName: \"Allow\"\naccess is allowed\n - AS_AC_PBAC_DENY: x-displayName: \"PBAC Deny\"\nPlan based access control denied. This means current plan doesnt allow this addon service.\nWhen the user clicks on such addon, he will be shown billing plan upgrade page\n - AS_AC_PBAC_DENY_UPGRADE_PLAN: x-displayName: \"PBAC Deny - Upgrade plan\"\nPlan based access control denied. This means current plan doesnt allow this addon service.\nWhen the user clicks on such addon, he will be shown billing plan upgrade page\n - AS_AC_PBAC_DENY_REQUEST_SERVICE: x-displayName: \"PBAC Deny - Request service\"\nPlan based access control denied. This means current plan doesnt allow this addon service.\nWhen the user clicks on such addon, he will be shown request service button which creates a support ticket requesting enablement of the addon.\nSince the addon is not part of the plan, the customer would be advised accordingly by the support team depending on his current plan", "title": "AddonServiceAccess", "enum": [ "AS_AC_NONE", "AS_AC_ALLOWED", - "AS_AC_PBAC_DENY" + "AS_AC_PBAC_DENY", + "AS_AC_PBAC_DENY_UPGRADE_PLAN", + "AS_AC_PBAC_DENY_REQUEST_SERVICE" ], "default": "AS_AC_NONE" }, @@ -3808,10 +3810,14 @@ var CustomAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/user/setting/custom_api.pb.go b/pbgo/extschema/schema/user/setting/custom_api.pb.go index 5b9f28af1..3cbc617e9 100644 --- a/pbgo/extschema/schema/user/setting/custom_api.pb.go +++ b/pbgo/extschema/schema/user/setting/custom_api.pb.go @@ -1136,131 +1136,131 @@ func init() { } var fileDescriptor_ec837e6e53ab5524 = []byte{ - // 1972 bytes of a gzipped FileDescriptorProto + // 1975 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0x4d, 0x6c, 0x1b, 0xc7, - 0x15, 0xd6, 0x50, 0x91, 0x6c, 0x0e, 0x25, 0xcb, 0x19, 0xcb, 0x35, 0xbd, 0xb1, 0x69, 0x65, 0x8b, - 0x42, 0x8a, 0x2c, 0x72, 0x13, 0x39, 0x46, 0x1c, 0xc5, 0x49, 0x20, 0xd9, 0xaa, 0x2a, 0xc0, 0x91, - 0x05, 0xda, 0xee, 0xa1, 0x87, 0x2e, 0x96, 0xbb, 0x4f, 0xd4, 0x34, 0xdc, 0x9f, 0xee, 0x0c, 0x29, - 0xb1, 0x3f, 0x40, 0x6b, 0x04, 0x6d, 0x50, 0xa0, 0x45, 0x81, 0xde, 0xda, 0x4b, 0x8f, 0xbd, 0x14, - 0xbd, 0x16, 0x0d, 0x50, 0x04, 0xed, 0x41, 0x41, 0x0b, 0x04, 0x46, 0x82, 0xa2, 0x46, 0x4e, 0x31, - 0xdd, 0x43, 0x91, 0xf6, 0x90, 0x53, 0xdb, 0x5b, 0x8b, 0xf9, 0xa1, 0xb4, 0xd4, 0x0f, 0xb9, 0xa2, - 0x24, 0xa0, 0x37, 0xce, 0x7b, 0x33, 0x6f, 0xde, 0xf7, 0xbd, 0x9f, 0x99, 0x59, 0xe2, 0xab, 0x0d, - 0x60, 0x25, 0x1a, 0x5a, 0xcc, 0x5d, 0x07, 0xdf, 0xb1, 0xea, 0x0c, 0x62, 0x8b, 0x01, 0xe7, 0x34, - 0xa8, 0x5a, 0x6e, 0x9d, 0xf1, 0xd0, 0xb7, 0x9d, 0x88, 0x96, 0xa2, 0x38, 0xe4, 0x21, 0x31, 0xd4, - 0xe4, 0x92, 0x9a, 0x5c, 0x12, 0x93, 0x4b, 0x7a, 0xb2, 0x71, 0xa9, 0x1a, 0x86, 0xd5, 0x1a, 0x58, - 0x4e, 0x44, 0x2d, 0x27, 0x08, 0x42, 0xee, 0x70, 0x1a, 0x06, 0x4c, 0xad, 0x34, 0x2e, 0x26, 0xb4, - 0xeb, 0x9c, 0x47, 0x95, 0xd0, 0x6b, 0x6a, 0xd5, 0x15, 0xad, 0x92, 0xa3, 0x4a, 0x7d, 0xcd, 0xe2, - 0xd4, 0x07, 0xc6, 0x1d, 0x3f, 0xd2, 0x13, 0x9e, 0xeb, 0x74, 0x31, 0x8c, 0x92, 0x86, 0x27, 0x3a, - 0x95, 0x1c, 0x02, 0x27, 0xe0, 0x16, 0x6f, 0x46, 0xb0, 0xbd, 0xf5, 0xae, 0x19, 0x09, 0x95, 0xd9, - 0xa9, 0x6a, 0x00, 0x83, 0xa0, 0xd1, 0xb9, 0x81, 0x79, 0x0a, 0x0f, 0x2d, 0xfa, 0x11, 0x6f, 0x9a, - 0x1c, 0x8f, 0xac, 0x84, 0x9c, 0xae, 0x51, 0x57, 0x22, 0x23, 0x04, 0x3f, 0xe3, 0x86, 0x1e, 0xe4, - 0xd1, 0x04, 0x9a, 0xca, 0x96, 0xe5, 0x6f, 0x32, 0x8e, 0x87, 0x6a, 0x4e, 0x05, 0x6a, 0xf9, 0x8c, - 0x14, 0xaa, 0x01, 0x99, 0xc0, 0x39, 0x0f, 0x98, 0x1b, 0x53, 0x69, 0x38, 0x3f, 0x28, 0x75, 0x49, - 0x11, 0xc9, 0xe3, 0x53, 0x10, 0x38, 0x95, 0x1a, 0x78, 0xf9, 0x67, 0x26, 0xd0, 0xd4, 0xe9, 0x72, - 0x7b, 0x68, 0x56, 0xf0, 0xd9, 0xe4, 0xae, 0x77, 0x28, 0xe3, 0x64, 0x05, 0x8f, 0x06, 0x09, 0x19, - 0xcb, 0xa3, 0x89, 0xc1, 0xa9, 0xdc, 0xec, 0x54, 0xe9, 0xe0, 0xf0, 0x94, 0x92, 0x46, 0xca, 0x9d, - 0xcb, 0xcd, 0x3f, 0x20, 0x7c, 0xee, 0x01, 0x83, 0xf8, 0x9e, 0x9a, 0xcb, 0xca, 0xf0, 0xcd, 0x3a, - 0x30, 0x4e, 0xae, 0xe1, 0xf3, 0xda, 0x0d, 0x7b, 0xef, 0x7e, 0xd9, 0xf2, 0xb8, 0x56, 0x26, 0x4d, - 0x33, 0x72, 0x11, 0x0f, 0x51, 0xdf, 0xa9, 0x82, 0xa4, 0x60, 0x64, 0x61, 0xf0, 0x83, 0xef, 0xa2, - 0xb2, 0x92, 0x90, 0xcb, 0x18, 0xaf, 0xd1, 0x98, 0x71, 0x3b, 0x70, 0x7c, 0xd0, 0x34, 0x64, 0xa5, - 0x64, 0xc5, 0xf1, 0x81, 0x3c, 0x87, 0xb3, 0x35, 0xa7, 0xad, 0x7d, 0x46, 0x6a, 0x4f, 0x0b, 0x81, - 0x54, 0x5e, 0xc1, 0xb9, 0x90, 0x47, 0x76, 0x9b, 0xa5, 0x21, 0xc9, 0x12, 0x0e, 0x79, 0xb4, 0xa8, - 0x89, 0xfa, 0x47, 0x06, 0x8f, 0x77, 0x82, 0x60, 0x51, 0x18, 0x30, 0x38, 0x6e, 0xb6, 0xba, 0x01, - 0xdc, 0xe5, 0xe4, 0xe0, 0x6e, 0x27, 0xc9, 0x1b, 0x58, 0x8c, 0x6c, 0xc6, 0x1d, 0x5e, 0x67, 0x12, - 0xe3, 0x99, 0xd9, 0x2b, 0xbb, 0x1c, 0x51, 0x29, 0x5c, 0xba, 0xcb, 0xa3, 0x7b, 0x72, 0x5a, 0x39, - 0x1b, 0xb6, 0x7f, 0x92, 0x55, 0x7c, 0x86, 0x06, 0x94, 0x53, 0xa7, 0x66, 0x3b, 0xae, 0x0b, 0x8c, - 0xe5, 0x73, 0x13, 0x68, 0x2a, 0x37, 0xfb, 0x42, 0x37, 0x30, 0xcb, 0x6a, 0xc5, 0xbc, 0x5c, 0x50, - 0x1e, 0xa5, 0xc9, 0x21, 0xb9, 0x8e, 0x2f, 0x50, 0x66, 0x07, 0xb0, 0xc9, 0xed, 0x58, 0x85, 0xdd, - 0x76, 0x6a, 0xb5, 0x70, 0x63, 0x9b, 0xe3, 0x71, 0xca, 0x56, 0x60, 0x93, 0xeb, 0x9c, 0x98, 0x57, - 0x3a, 0x73, 0x1a, 0x67, 0x05, 0xd9, 0x8b, 0xbe, 0x43, 0x6b, 0x22, 0xae, 0x62, 0x43, 0x1b, 0xc4, - 0x48, 0xd7, 0x43, 0xb6, 0xde, 0x56, 0x9b, 0xbf, 0x40, 0x38, 0xa7, 0x22, 0xc3, 0x98, 0x48, 0xf6, - 0xcb, 0x18, 0xd3, 0xc8, 0x76, 0x3c, 0x2f, 0x16, 0x00, 0xf4, 0x74, 0x1a, 0xcd, 0x2b, 0x01, 0x79, - 0x0d, 0xe7, 0x64, 0x1a, 0x68, 0x80, 0x19, 0x09, 0xd0, 0x28, 0xa9, 0x2e, 0x51, 0x6a, 0x77, 0x89, - 0xd2, 0xfd, 0x76, 0x97, 0x28, 0x63, 0x31, 0x5d, 0xc3, 0x79, 0x11, 0x0f, 0x31, 0xee, 0xc4, 0x5c, - 0x72, 0xdf, 0x7d, 0x99, 0x9a, 0x68, 0xda, 0x78, 0x2c, 0xe1, 0x9c, 0xac, 0xaf, 0x3b, 0x78, 0x54, - 0xe2, 0x61, 0x4a, 0xd6, 0xce, 0x98, 0xc9, 0x6e, 0x24, 0x27, 0x6c, 0x94, 0x47, 0xea, 0x3b, 0x03, - 0x66, 0x96, 0x31, 0x79, 0x10, 0x79, 0x0e, 0x87, 0x65, 0x91, 0x23, 0xed, 0xda, 0xda, 0xce, 0x22, - 0xb4, 0x27, 0x8b, 0x9e, 0xc7, 0x23, 0x6e, 0x18, 0x70, 0x08, 0xb8, 0x2d, 0x9a, 0x95, 0xee, 0x25, - 0x39, 0x2d, 0xbb, 0xdf, 0x8c, 0xc0, 0xfc, 0x0b, 0xc2, 0x64, 0x85, 0xaf, 0x05, 0xab, 0x31, 0xac, - 0x41, 0x0c, 0x81, 0x0b, 0xec, 0x2d, 0x27, 0x22, 0x9b, 0x78, 0x3c, 0xe0, 0x6b, 0x81, 0x1d, 0xed, - 0x88, 0x6d, 0xdf, 0x89, 0xb4, 0xff, 0x5f, 0xee, 0x9a, 0xf1, 0x7b, 0xac, 0xed, 0x23, 0x5a, 0x0c, - 0x78, 0xdc, 0x2c, 0x93, 0x60, 0x8f, 0xc2, 0x58, 0xc4, 0x17, 0x0e, 0x98, 0x4e, 0xce, 0xe2, 0xc1, - 0xb7, 0xa1, 0xa9, 0xe3, 0x2c, 0x7e, 0x8a, 0x2e, 0xd9, 0x70, 0x6a, 0x75, 0x85, 0xec, 0x74, 0x59, - 0x0d, 0xe6, 0x32, 0x37, 0x90, 0xf9, 0x12, 0xce, 0x09, 0x33, 0xf7, 0xc3, 0x07, 0x01, 0x03, 0x4e, - 0x4c, 0x3c, 0x2a, 0xf1, 0xf0, 0xd0, 0xae, 0x0b, 0x81, 0x36, 0x92, 0x0b, 0x76, 0xe6, 0x98, 0xbf, - 0x44, 0x38, 0x7f, 0x0f, 0xf8, 0x57, 0x29, 0x6c, 0xec, 0xec, 0xde, 0x66, 0xd9, 0xc6, 0xe7, 0x22, - 0x88, 0x59, 0x18, 0x38, 0x49, 0x4e, 0xa4, 0x99, 0xdc, 0x6c, 0xa9, 0x1b, 0x1f, 0xab, 0x6a, 0x59, - 0x02, 0x50, 0x99, 0x44, 0x7b, 0x64, 0xe4, 0x8b, 0x78, 0xd4, 0xf1, 0x1a, 0x4e, 0xe0, 0x82, 0x67, - 0x37, 0x28, 0x6c, 0x68, 0x48, 0x23, 0x6d, 0xa1, 0x70, 0xcb, 0xfc, 0x39, 0xc2, 0xa3, 0x1d, 0x45, - 0x48, 0x2e, 0xe1, 0xac, 0xae, 0x36, 0xf0, 0xa4, 0x37, 0xa7, 0xcb, 0x3b, 0x02, 0x72, 0x07, 0x8f, - 0xcb, 0x0a, 0xd0, 0x12, 0x1a, 0x54, 0x6d, 0x71, 0x26, 0xa6, 0x28, 0x05, 0x22, 0xd6, 0x95, 0xb7, - 0x97, 0x09, 0x85, 0x28, 0x37, 0x59, 0x98, 0x36, 0x83, 0x80, 0xeb, 0x9e, 0x94, 0x95, 0x92, 0x7b, - 0x10, 0x70, 0xf3, 0x37, 0x08, 0x93, 0xbd, 0x60, 0xc9, 0x05, 0x7c, 0xca, 0x83, 0x86, 0x1d, 0x46, - 0x4c, 0xfb, 0x37, 0xec, 0x41, 0xe3, 0x6e, 0x24, 0x15, 0x01, 0x70, 0xa9, 0x50, 0x58, 0x87, 0x03, - 0xe0, 0x5a, 0xc1, 0xc0, 0x95, 0x0a, 0xb5, 0xc9, 0x30, 0x03, 0x57, 0x28, 0x2e, 0xe1, 0xac, 0x07, - 0x0d, 0xa8, 0x85, 0x11, 0xc4, 0xfa, 0x78, 0xdb, 0x11, 0x90, 0x2f, 0xe0, 0x61, 0xdf, 0x61, 0x1c, - 0x62, 0xdd, 0x6f, 0xf4, 0x48, 0x1c, 0x89, 0x15, 0x5a, 0xab, 0xd1, 0xa0, 0x9a, 0x1f, 0x56, 0x47, - 0xa2, 0x1e, 0x9a, 0xbf, 0x45, 0xf8, 0x4c, 0x67, 0xb8, 0xff, 0x3f, 0xe2, 0x2c, 0xce, 0x79, 0xdd, - 0x5c, 0xe9, 0xb7, 0xb6, 0xdb, 0x7f, 0x52, 0x34, 0xfb, 0xc7, 0x49, 0x9c, 0xbd, 0x25, 0x6f, 0x55, - 0xf3, 0xab, 0xcb, 0xe4, 0x77, 0x08, 0x0f, 0x2e, 0x01, 0x27, 0xcf, 0x77, 0x73, 0x50, 0x5e, 0x3e, - 0x8c, 0x17, 0x7b, 0xf7, 0x9e, 0xce, 0x63, 0xcf, 0xfc, 0x7a, 0x6b, 0x2b, 0x7f, 0x75, 0xed, 0xfa, - 0xa6, 0x5b, 0xf4, 0x60, 0xcd, 0xa9, 0xd7, 0x78, 0x51, 0x35, 0xd4, 0x19, 0x71, 0x63, 0x2a, 0xd2, - 0xb0, 0xb8, 0x01, 0x15, 0x2d, 0x2a, 0xc6, 0xe0, 0x78, 0x0f, 0x3f, 0xfe, 0xdb, 0xcf, 0x32, 0x2f, - 0x90, 0x49, 0x2b, 0xaa, 0x57, 0x6a, 0xd4, 0xb5, 0xc4, 0x29, 0xcc, 0x22, 0xc7, 0x05, 0x66, 0xb1, - 0x26, 0xe3, 0xe0, 0x77, 0xdc, 0x0d, 0x19, 0x79, 0x1f, 0xe1, 0x61, 0xd5, 0xd7, 0x88, 0x95, 0xde, - 0x39, 0x99, 0x99, 0x46, 0x6f, 0xc0, 0x66, 0xa5, 0xb5, 0x95, 0x9f, 0x49, 0xe9, 0xfe, 0x46, 0x4c, - 0x39, 0x48, 0xff, 0x67, 0x8c, 0xb4, 0xfe, 0xcf, 0xa1, 0x69, 0xf2, 0x67, 0x84, 0xc7, 0x96, 0x80, - 0x27, 0x5a, 0x37, 0x4b, 0x13, 0x8b, 0xab, 0x29, 0xcf, 0x01, 0x71, 0x96, 0x98, 0xeb, 0xad, 0xad, - 0xfc, 0x75, 0x89, 0xc3, 0x0d, 0x03, 0x16, 0xd6, 0xa0, 0x58, 0x71, 0x18, 0x14, 0xfd, 0x30, 0xa0, - 0x3c, 0x8c, 0x67, 0x26, 0xa4, 0x4a, 0x88, 0xb6, 0x81, 0xd5, 0x1d, 0xff, 0x70, 0x01, 0xd1, 0x9e, - 0xff, 0x1a, 0xe1, 0x11, 0x8d, 0x66, 0x59, 0x9d, 0x23, 0xbd, 0xa1, 0x8c, 0xb7, 0x7b, 0x89, 0xb8, - 0xe3, 0x7f, 0x85, 0xf3, 0x68, 0x21, 0xf4, 0x9a, 0xa6, 0xd7, 0x4f, 0xea, 0x58, 0xa4, 0x98, 0x92, - 0x7a, 0x4b, 0x1d, 0x73, 0x1f, 0x22, 0x3c, 0xa6, 0x12, 0x68, 0xc7, 0xe5, 0xae, 0xa5, 0xba, 0xf7, - 0x14, 0x4d, 0x93, 0x48, 0xeb, 0x7d, 0x25, 0xd2, 0xac, 0x71, 0x38, 0x34, 0x22, 0x9d, 0x7e, 0x8f, - 0xf0, 0xd8, 0x6d, 0xa8, 0x41, 0x12, 0x50, 0x8a, 0x18, 0xa4, 0xc0, 0x00, 0x7d, 0x61, 0xb0, 0xa6, - 0x0f, 0x19, 0x91, 0x4f, 0x10, 0x3e, 0x5f, 0x06, 0x06, 0xfc, 0x2e, 0x8f, 0x6e, 0x43, 0x83, 0xba, - 0xb0, 0xd0, 0x9c, 0xf7, 0x7c, 0x1a, 0x90, 0x2f, 0xf5, 0x4a, 0x79, 0x79, 0xd3, 0x4b, 0x03, 0x65, - 0xa3, 0xb5, 0x95, 0x9f, 0xdb, 0x5b, 0x0f, 0x8e, 0xd8, 0xe6, 0xa0, 0x6a, 0x90, 0xca, 0x04, 0xb0, - 0x6b, 0x46, 0xa9, 0x07, 0xb0, 0x90, 0x47, 0x96, 0x5c, 0x65, 0xc7, 0x02, 0x8f, 0x88, 0xce, 0x63, - 0x84, 0xc7, 0xd4, 0x35, 0x5c, 0x46, 0x27, 0x58, 0xbe, 0xfd, 0xd6, 0x31, 0xc2, 0xfa, 0xf6, 0x31, - 0xc0, 0x7a, 0xc5, 0x98, 0x4d, 0x1d, 0x2f, 0xcf, 0xb7, 0xd4, 0x2b, 0x43, 0x40, 0xfb, 0x04, 0xe1, - 0xb3, 0xb7, 0x29, 0x3b, 0x29, 0x6c, 0xdf, 0x39, 0x06, 0x6c, 0x37, 0x8c, 0x6b, 0x87, 0xc1, 0xe6, - 0x29, 0x34, 0x02, 0xdc, 0x5f, 0x11, 0x1e, 0xd7, 0xe5, 0xde, 0x79, 0x87, 0x3a, 0x9e, 0xd2, 0x6a, - 0xf6, 0x55, 0x5a, 0xb7, 0x8c, 0x37, 0xd2, 0xc2, 0x69, 0xbf, 0xaa, 0x3a, 0xdf, 0x6d, 0x02, 0xd9, - 0x9f, 0x10, 0x26, 0x4b, 0xc0, 0x77, 0xdd, 0x9b, 0xd3, 0xe0, 0x9a, 0x49, 0xfb, 0x76, 0x95, 0x47, - 0x90, 0xdb, 0x4f, 0x3b, 0x2f, 0x91, 0x99, 0x1e, 0x08, 0x3b, 0x5f, 0xc5, 0x1f, 0x23, 0x7c, 0x5e, - 0x35, 0xe8, 0xdd, 0x78, 0x4a, 0x87, 0x7b, 0x76, 0xa4, 0x09, 0x5a, 0xb5, 0xaf, 0xa0, 0xbd, 0x64, - 0x1c, 0x0a, 0x92, 0x08, 0xd1, 0x23, 0x84, 0xcf, 0xc9, 0x67, 0x46, 0xa7, 0x9f, 0x64, 0xb2, 0x17, - 0x26, 0xfd, 0x3a, 0x49, 0x03, 0xc6, 0xef, 0x0b, 0x4c, 0xef, 0x66, 0xd1, 0x01, 0xc6, 0x92, 0xef, - 0x27, 0x01, 0xe9, 0x9f, 0x19, 0x7c, 0x61, 0x09, 0xb8, 0xec, 0xeb, 0x27, 0x9e, 0x7a, 0xff, 0x45, - 0xad, 0xad, 0xfc, 0x6b, 0x87, 0xbe, 0xfe, 0xa8, 0xee, 0x21, 0x72, 0xf1, 0xb3, 0xad, 0xfc, 0xf7, - 0x11, 0xbe, 0xa9, 0x75, 0x6a, 0xcf, 0xa2, 0xd8, 0xb3, 0xa8, 0xf7, 0x2c, 0xaa, 0x8f, 0x94, 0x4e, - 0x44, 0x8b, 0x55, 0xe0, 0x72, 0xa1, 0x78, 0x1d, 0x26, 0x5e, 0x01, 0xe4, 0x55, 0x3c, 0x58, 0x05, - 0x4e, 0x7a, 0xf1, 0xa5, 0xce, 0x8b, 0x0e, 0xd6, 0x8c, 0x61, 0x35, 0x41, 0x32, 0xfe, 0x72, 0x3f, - 0x16, 0xc8, 0xbf, 0x32, 0xd8, 0x50, 0x75, 0xb1, 0x2f, 0xe3, 0x27, 0x50, 0x1c, 0xef, 0x64, 0x8e, - 0xd6, 0xaf, 0x3f, 0xdb, 0xca, 0xbf, 0x83, 0xf0, 0x9b, 0xa9, 0x28, 0xaf, 0x4b, 0x64, 0x07, 0xb1, - 0x1e, 0xd5, 0x8f, 0xce, 0x7a, 0xef, 0x3c, 0xdf, 0xc7, 0x82, 0xc8, 0xf3, 0x7f, 0x67, 0x70, 0x5e, - 0xd6, 0xe0, 0x3e, 0xbc, 0x1f, 0x6b, 0xfd, 0xfe, 0xe4, 0xe8, 0x7c, 0xbf, 0x8b, 0xf0, 0xeb, 0xe9, - 0xf8, 0x16, 0x4e, 0xed, 0x43, 0x37, 0x79, 0x53, 0xb1, 0x7d, 0xe3, 0xf0, 0x5c, 0xa9, 0xce, 0xd0, - 0xc1, 0xf9, 0xeb, 0x46, 0xdf, 0x76, 0x04, 0xf3, 0xff, 0xc9, 0x60, 0x63, 0x09, 0xf8, 0xad, 0xd0, - 0xaf, 0xd0, 0x00, 0xbc, 0x13, 0x6f, 0x32, 0xef, 0x66, 0x8e, 0xde, 0x64, 0x7e, 0x98, 0x36, 0xe3, - 0xab, 0xc0, 0x5d, 0x0d, 0x6c, 0x77, 0xc6, 0xdf, 0x54, 0x7d, 0xe6, 0x7a, 0x0f, 0xee, 0xda, 0xcb, - 0xbb, 0x25, 0x7d, 0x9f, 0x46, 0xc8, 0xc3, 0x41, 0x7c, 0x59, 0x75, 0x9b, 0x83, 0xd8, 0x3f, 0x81, - 0x86, 0xf3, 0xe3, 0xa3, 0x17, 0xc0, 0x8f, 0x10, 0x5e, 0x38, 0x44, 0xc3, 0xe9, 0x12, 0x01, 0x51, - 0x05, 0xc7, 0x10, 0x81, 0x39, 0xa3, 0x3f, 0x23, 0x22, 0xff, 0x3f, 0x42, 0xf8, 0xd9, 0xa5, 0xdd, - 0x5f, 0x24, 0xd3, 0xa4, 0xfd, 0x74, 0xb7, 0x29, 0x9d, 0xe6, 0xcc, 0xa0, 0x9f, 0x4b, 0xdd, 0xab, - 0xe4, 0x95, 0xb4, 0xd7, 0xd6, 0x06, 0x85, 0x8d, 0xc4, 0xb7, 0x34, 0xf2, 0x29, 0xc2, 0xcf, 0xee, - 0xf9, 0xcc, 0x4a, 0x5e, 0xee, 0xe6, 0xf1, 0x41, 0x5f, 0x65, 0xd3, 0xe4, 0x54, 0xdc, 0xd7, 0xa5, - 0xe8, 0xa6, 0xd1, 0x2f, 0xbe, 0x39, 0x34, 0x6d, 0x4c, 0xbe, 0xff, 0x1e, 0x1a, 0xfc, 0xe8, 0x3d, - 0x74, 0x71, 0x1f, 0xef, 0xee, 0x56, 0xbe, 0x01, 0x2e, 0x7f, 0xf8, 0x61, 0x3e, 0xb3, 0x8e, 0x16, - 0x7e, 0x80, 0x1e, 0x3d, 0x29, 0x0c, 0x3c, 0x7e, 0x52, 0x18, 0xf8, 0xfc, 0x49, 0x01, 0x7d, 0xaf, - 0x55, 0x40, 0xbf, 0x6a, 0x15, 0xd0, 0x07, 0xad, 0x02, 0x7a, 0xd4, 0x2a, 0xa0, 0x4f, 0x5b, 0x05, - 0xf4, 0xf7, 0x56, 0x61, 0xe0, 0xf3, 0x56, 0x01, 0xfd, 0xf4, 0x69, 0x61, 0xe0, 0xd1, 0xd3, 0xc2, - 0xc0, 0xe3, 0xa7, 0x85, 0x81, 0xaf, 0xad, 0x56, 0xc3, 0xe8, 0xed, 0x6a, 0xa9, 0x11, 0xd6, 0x38, - 0xc4, 0xb1, 0x30, 0x6c, 0xc9, 0x1f, 0x6b, 0x61, 0xec, 0x17, 0xa3, 0x38, 0x6c, 0x50, 0x0f, 0xe2, - 0x62, 0x5b, 0x6d, 0x45, 0x95, 0x6a, 0x68, 0xc1, 0x26, 0xd7, 0x7f, 0x4e, 0xee, 0xf3, 0x07, 0x6d, - 0x65, 0x58, 0x7e, 0x02, 0xbe, 0xf6, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe0, 0x1c, 0x09, 0x6f, - 0xc5, 0x1d, 0x00, 0x00, + 0x15, 0xd6, 0x88, 0x96, 0x6c, 0x0e, 0x25, 0xcb, 0x19, 0xcb, 0x35, 0xbd, 0xb1, 0x69, 0x65, 0x8b, + 0xc2, 0xb2, 0x2c, 0x72, 0x13, 0x39, 0x46, 0x1c, 0xd7, 0x49, 0x20, 0xd9, 0xaa, 0x2a, 0xc0, 0x91, + 0x55, 0xca, 0xee, 0xa1, 0x87, 0x2e, 0x96, 0xbb, 0x4f, 0xf4, 0x34, 0xe4, 0xee, 0x76, 0x67, 0x48, + 0x89, 0x05, 0x0a, 0xb4, 0x81, 0xd1, 0x16, 0x3d, 0x25, 0x28, 0xda, 0x02, 0x6d, 0x51, 0xe4, 0xd6, + 0x5c, 0x8a, 0x5c, 0x8b, 0x06, 0x28, 0x82, 0x5e, 0x14, 0xf4, 0x10, 0x18, 0x09, 0x8a, 0xe6, 0x18, + 0xd3, 0x3d, 0x04, 0xe9, 0x25, 0x40, 0xe1, 0x7b, 0x31, 0x3f, 0x94, 0x96, 0xa4, 0x44, 0xae, 0x58, + 0x11, 0xc8, 0x8d, 0xf3, 0xde, 0xfc, 0xbc, 0xef, 0x7d, 0xef, 0x67, 0x66, 0x89, 0xaf, 0xd4, 0x81, + 0x15, 0x68, 0x60, 0x31, 0xf7, 0x01, 0x54, 0x1d, 0xab, 0xc6, 0x20, 0xb2, 0x18, 0x70, 0x4e, 0xfd, + 0xb2, 0xe5, 0xd6, 0x18, 0x0f, 0xaa, 0xb6, 0x13, 0xd2, 0x42, 0x18, 0x05, 0x3c, 0x20, 0x86, 0x9a, + 0x5c, 0x50, 0x93, 0x0b, 0x62, 0x72, 0x41, 0x4f, 0x36, 0xce, 0x97, 0x83, 0xa0, 0x5c, 0x01, 0xcb, + 0x09, 0xa9, 0xe5, 0xf8, 0x7e, 0xc0, 0x1d, 0x4e, 0x03, 0x9f, 0xa9, 0x95, 0xc6, 0xb9, 0x98, 0xf6, + 0x01, 0xe7, 0x61, 0x29, 0xf0, 0x1a, 0x5a, 0x75, 0x51, 0xab, 0xe4, 0xa8, 0x54, 0xdb, 0xb4, 0x38, + 0xad, 0x02, 0xe3, 0x4e, 0x35, 0xd4, 0x13, 0x9e, 0x6d, 0x37, 0x31, 0x08, 0xe3, 0x1b, 0xcf, 0xb4, + 0x2b, 0x39, 0xf8, 0x8e, 0xcf, 0x2d, 0xde, 0x08, 0x61, 0xf7, 0xe8, 0x8e, 0x19, 0x31, 0x95, 0xd9, + 0xae, 0xaa, 0x03, 0x03, 0xbf, 0xde, 0x7e, 0x80, 0x79, 0x1c, 0x8f, 0x2d, 0x57, 0x43, 0xde, 0x30, + 0x39, 0x9e, 0x58, 0x0b, 0x38, 0xdd, 0xa4, 0xae, 0x44, 0x46, 0x08, 0x3e, 0xe6, 0x06, 0x1e, 0x64, + 0xd1, 0x0c, 0x9a, 0x4d, 0x17, 0xe5, 0x6f, 0x32, 0x8d, 0xc7, 0x2a, 0x4e, 0x09, 0x2a, 0xd9, 0x51, + 0x29, 0x54, 0x03, 0x32, 0x83, 0x33, 0x1e, 0x30, 0x37, 0xa2, 0x72, 0xe3, 0x6c, 0x4a, 0xea, 0xe2, + 0x22, 0x92, 0xc5, 0xc7, 0xc1, 0x77, 0x4a, 0x15, 0xf0, 0xb2, 0xc7, 0x66, 0xd0, 0xec, 0x89, 0x62, + 0x6b, 0x68, 0x96, 0xf0, 0xa9, 0xf8, 0xa9, 0x77, 0x28, 0xe3, 0x64, 0x0d, 0x4f, 0xfa, 0x31, 0x19, + 0xcb, 0xa2, 0x99, 0xd4, 0x6c, 0x66, 0x61, 0xb6, 0x70, 0x30, 0x3d, 0x85, 0xf8, 0x26, 0xc5, 0xf6, + 0xe5, 0xe6, 0xdf, 0x11, 0x3e, 0x7d, 0x9f, 0x41, 0xb4, 0xa1, 0xe6, 0xb2, 0x22, 0xfc, 0xb0, 0x06, + 0x8c, 0x93, 0xab, 0xf8, 0x8c, 0x36, 0xc3, 0xee, 0x3e, 0x2f, 0x5d, 0x9c, 0xd6, 0xca, 0xf8, 0xd6, + 0x8c, 0x9c, 0xc3, 0x63, 0xb4, 0xea, 0x94, 0x41, 0xba, 0x60, 0x62, 0x29, 0xf5, 0xe1, 0x8f, 0x51, + 0x51, 0x49, 0xc8, 0x05, 0x8c, 0x37, 0x69, 0xc4, 0xb8, 0xed, 0x3b, 0x55, 0xd0, 0x6e, 0x48, 0x4b, + 0xc9, 0x9a, 0x53, 0x05, 0xf2, 0x2c, 0x4e, 0x57, 0x9c, 0x96, 0xf6, 0x98, 0xd4, 0x9e, 0x10, 0x02, + 0xa9, 0xbc, 0x88, 0x33, 0x01, 0x0f, 0xed, 0x96, 0x97, 0xc6, 0xa4, 0x97, 0x70, 0xc0, 0xc3, 0x65, + 0xed, 0xa8, 0xff, 0x8c, 0xe2, 0xe9, 0x76, 0x10, 0x2c, 0x0c, 0x7c, 0x06, 0x47, 0xed, 0xad, 0x5e, + 0x00, 0x3b, 0x8c, 0x4c, 0x75, 0x1a, 0x49, 0x5e, 0xc5, 0x62, 0x64, 0x33, 0xee, 0xf0, 0x1a, 0x93, + 0x18, 0x4f, 0x2e, 0x5c, 0xec, 0x30, 0x44, 0x85, 0x70, 0xe1, 0x2e, 0x0f, 0x37, 0xe4, 0xb4, 0x62, + 0x3a, 0x68, 0xfd, 0x24, 0xeb, 0xf8, 0x24, 0xf5, 0x29, 0xa7, 0x4e, 0xc5, 0x76, 0x5c, 0x17, 0x18, + 0xcb, 0x66, 0x66, 0xd0, 0x6c, 0x66, 0xe1, 0x72, 0x2f, 0x30, 0xab, 0x6a, 0xc5, 0xa2, 0x5c, 0x50, + 0x9c, 0xa4, 0xf1, 0x21, 0xb9, 0x86, 0xcf, 0x52, 0x66, 0xfb, 0xb0, 0xcd, 0xed, 0x48, 0xd1, 0x6e, + 0x3b, 0x95, 0x4a, 0xb0, 0xb5, 0xeb, 0xe3, 0x69, 0xca, 0xd6, 0x60, 0x9b, 0xeb, 0x98, 0x58, 0x54, + 0x3a, 0x73, 0x0e, 0xa7, 0x85, 0xb3, 0x97, 0xab, 0x0e, 0xad, 0x08, 0x5e, 0xc5, 0x81, 0x36, 0x88, + 0x91, 0xce, 0x87, 0x74, 0xad, 0xa5, 0x36, 0x7f, 0x8f, 0x70, 0x46, 0x31, 0xc3, 0x98, 0x08, 0xf6, + 0x0b, 0x18, 0xd3, 0xd0, 0x76, 0x3c, 0x2f, 0x12, 0x00, 0xf4, 0x74, 0x1a, 0x2e, 0x2a, 0x01, 0xf9, + 0x26, 0xce, 0xc8, 0x30, 0xd0, 0x00, 0x47, 0x25, 0x40, 0xa3, 0xa0, 0xaa, 0x44, 0xa1, 0x55, 0x25, + 0x0a, 0xf7, 0x5a, 0x55, 0xa2, 0x88, 0xc5, 0x74, 0x0d, 0xe7, 0x79, 0x3c, 0xc6, 0xb8, 0x13, 0x71, + 0xe9, 0xfb, 0xde, 0xcb, 0xd4, 0x44, 0xd3, 0xc6, 0x53, 0x31, 0xe3, 0x64, 0x7e, 0xdd, 0xc1, 0x93, + 0x12, 0x0f, 0x53, 0xb2, 0x56, 0xc4, 0x5c, 0xea, 0xe5, 0xe4, 0xd8, 0x1e, 0xc5, 0x89, 0xda, 0xde, + 0x80, 0x99, 0x45, 0x4c, 0xee, 0x87, 0x9e, 0xc3, 0x61, 0x55, 0xc4, 0x48, 0x2b, 0xb7, 0x76, 0xa3, + 0x08, 0x75, 0x45, 0xd1, 0x73, 0x78, 0xc2, 0x0d, 0x7c, 0x0e, 0x3e, 0xb7, 0x45, 0xb1, 0xd2, 0xb5, + 0x24, 0xa3, 0x65, 0xf7, 0x1a, 0x21, 0x98, 0xff, 0x44, 0x98, 0xac, 0xf1, 0x4d, 0x7f, 0x3d, 0x82, + 0x4d, 0x88, 0xc0, 0x77, 0x81, 0xbd, 0xee, 0x84, 0x64, 0x1b, 0x4f, 0xfb, 0x7c, 0xd3, 0xb7, 0xc3, + 0x3d, 0xb1, 0x5d, 0x75, 0x42, 0x6d, 0xff, 0xb7, 0x7a, 0x46, 0x7c, 0xd7, 0x6e, 0xfb, 0x88, 0x96, + 0x7d, 0x1e, 0x35, 0x8a, 0xc4, 0xef, 0x52, 0x18, 0xcb, 0xf8, 0xec, 0x01, 0xd3, 0xc9, 0x29, 0x9c, + 0x7a, 0x03, 0x1a, 0x9a, 0x67, 0xf1, 0x53, 0x54, 0xc9, 0xba, 0x53, 0xa9, 0x29, 0x64, 0x27, 0x8a, + 0x6a, 0x70, 0x63, 0xf4, 0x3a, 0x32, 0x5f, 0xc0, 0x19, 0xb1, 0xcd, 0xbd, 0xe0, 0xbe, 0xcf, 0x80, + 0x13, 0x13, 0x4f, 0x4a, 0x3c, 0x3c, 0xb0, 0x6b, 0x42, 0xa0, 0x37, 0xc9, 0xf8, 0x7b, 0x73, 0xcc, + 0x77, 0x10, 0xce, 0x6e, 0x00, 0xff, 0x2e, 0x85, 0xad, 0xbd, 0xd3, 0x5b, 0x5e, 0xb6, 0xf1, 0xe9, + 0x10, 0x22, 0x16, 0xf8, 0x4e, 0xdc, 0x27, 0x72, 0x9b, 0xcc, 0x42, 0xa1, 0x97, 0x3f, 0xd6, 0xd5, + 0xb2, 0x18, 0xa0, 0x22, 0x09, 0xbb, 0x64, 0xe4, 0xeb, 0x78, 0xd2, 0xf1, 0xea, 0x8e, 0xef, 0x82, + 0x67, 0xd7, 0x29, 0x6c, 0x69, 0x48, 0x13, 0x2d, 0xa1, 0x30, 0xcb, 0xfc, 0x1d, 0xc2, 0x93, 0x6d, + 0x49, 0x48, 0xce, 0xe3, 0xb4, 0xce, 0x36, 0xf0, 0xa4, 0x35, 0x27, 0x8a, 0x7b, 0x02, 0x72, 0x07, + 0x4f, 0xcb, 0x0c, 0xd0, 0x12, 0xea, 0x97, 0x6d, 0xd1, 0x13, 0x13, 0xa4, 0x02, 0x11, 0xeb, 0x8a, + 0xbb, 0xcb, 0x84, 0x42, 0xa4, 0x9b, 0x4c, 0x4c, 0x9b, 0x81, 0xcf, 0x75, 0x4d, 0x4a, 0x4b, 0xc9, + 0x06, 0xf8, 0xdc, 0x7c, 0x0f, 0x61, 0xd2, 0x0d, 0x96, 0x9c, 0xc5, 0xc7, 0x3d, 0xa8, 0xdb, 0x41, + 0xc8, 0xb4, 0x7d, 0xe3, 0x1e, 0xd4, 0xef, 0x86, 0x52, 0xe1, 0x03, 0x97, 0x0a, 0x85, 0x75, 0xdc, + 0x07, 0xae, 0x15, 0x0c, 0x5c, 0xa9, 0x50, 0x87, 0x8c, 0x33, 0x70, 0x85, 0xe2, 0x3c, 0x4e, 0x7b, + 0x50, 0x87, 0x4a, 0x10, 0x42, 0xa4, 0xdb, 0xdb, 0x9e, 0x80, 0x7c, 0x0d, 0x8f, 0x57, 0x1d, 0xc6, + 0x21, 0xd2, 0xf5, 0x46, 0x8f, 0x44, 0x4b, 0x2c, 0xd1, 0x4a, 0x85, 0xfa, 0xe5, 0xec, 0xb8, 0x6a, + 0x89, 0x7a, 0x68, 0xfe, 0x05, 0xe1, 0x93, 0xed, 0x74, 0x7f, 0x35, 0x78, 0x16, 0x7d, 0x5e, 0x17, + 0x57, 0xfa, 0xa3, 0xdd, 0xf2, 0x1f, 0x17, 0x2d, 0xbc, 0x77, 0x19, 0xa7, 0x6f, 0xc9, 0x5b, 0xd5, + 0xe2, 0xfa, 0x2a, 0xf9, 0x2b, 0xc2, 0xa9, 0x15, 0xe0, 0xe4, 0xb9, 0x5e, 0x06, 0xca, 0xcb, 0x87, + 0xf1, 0x7c, 0xff, 0xda, 0xd3, 0xde, 0xf6, 0xcc, 0xef, 0x37, 0x77, 0xb2, 0x57, 0x36, 0xaf, 0x6d, + 0xbb, 0x79, 0x0f, 0x36, 0x9d, 0x5a, 0x85, 0xe7, 0x55, 0x41, 0x9d, 0x17, 0x37, 0xa6, 0x3c, 0x0d, + 0xf2, 0x5b, 0x50, 0xd2, 0xa2, 0x7c, 0x04, 0x8e, 0xf7, 0xe6, 0x27, 0xff, 0xfe, 0xd5, 0xe8, 0x65, + 0x72, 0xc9, 0x0a, 0x6b, 0xa5, 0x0a, 0x75, 0x2d, 0xd1, 0x85, 0x59, 0xe8, 0xb8, 0xc0, 0x2c, 0xd6, + 0x60, 0x1c, 0xaa, 0x6d, 0x77, 0x43, 0x46, 0x3e, 0x40, 0x78, 0x5c, 0xd5, 0x35, 0x62, 0x25, 0x37, + 0x4e, 0x46, 0xa6, 0xd1, 0x1f, 0xb0, 0x59, 0x6a, 0xee, 0x64, 0xe7, 0x13, 0x9a, 0xbf, 0x15, 0x51, + 0x0e, 0xd2, 0xfe, 0x79, 0x23, 0xa9, 0xfd, 0x37, 0xd0, 0x1c, 0xf9, 0x1c, 0xe1, 0xa9, 0x15, 0xe0, + 0xb1, 0xd2, 0xcd, 0x92, 0x70, 0x71, 0x25, 0x61, 0x1f, 0x10, 0xbd, 0xc4, 0x7c, 0x88, 0x9a, 0x3b, + 0xd9, 0xef, 0x48, 0x20, 0x6e, 0xe0, 0xb3, 0xa0, 0x02, 0xf9, 0x92, 0xc3, 0x20, 0x5f, 0x0d, 0x7c, + 0xca, 0x83, 0x68, 0x7e, 0xa6, 0x53, 0x45, 0xdd, 0x0e, 0x9d, 0x98, 0xbe, 0x8b, 0xba, 0xe6, 0x54, + 0x0f, 0xc7, 0x96, 0x86, 0xf5, 0x67, 0x84, 0x27, 0x34, 0xd4, 0x55, 0xd5, 0x64, 0xfa, 0xe3, 0x9c, + 0x6e, 0x15, 0x1a, 0xf1, 0x00, 0xf8, 0x36, 0xe7, 0xe1, 0x52, 0xe0, 0x35, 0x4c, 0x6f, 0x90, 0xb8, + 0xb2, 0x48, 0x3e, 0x21, 0x2f, 0x96, 0xea, 0x81, 0x1f, 0x21, 0x3c, 0xa5, 0xa2, 0x6b, 0xcf, 0xe4, + 0x9e, 0x79, 0xdc, 0xdd, 0x62, 0x93, 0x44, 0xd9, 0x83, 0x81, 0xa2, 0x6c, 0xc1, 0x38, 0x1c, 0x1a, + 0x11, 0x6b, 0x7f, 0x43, 0x78, 0xea, 0x36, 0x54, 0x20, 0x0e, 0x28, 0x01, 0x07, 0x09, 0x30, 0xc0, + 0x40, 0x18, 0xac, 0xb9, 0x43, 0x32, 0xf2, 0x14, 0xe1, 0x33, 0x45, 0x60, 0xc0, 0xef, 0xf2, 0xf0, + 0x36, 0xd4, 0xa9, 0x0b, 0x4b, 0x8d, 0x45, 0xaf, 0x4a, 0x7d, 0xf2, 0x8d, 0x7e, 0xf9, 0x20, 0xaf, + 0x81, 0x49, 0xa0, 0xbc, 0x2d, 0x92, 0xe5, 0x5e, 0x77, 0xb2, 0x38, 0xe2, 0x9c, 0x7d, 0x53, 0x25, + 0xae, 0xe9, 0x4a, 0x14, 0xa9, 0x8c, 0x61, 0xbe, 0x6a, 0x14, 0xfa, 0x60, 0x0e, 0x78, 0x68, 0xc9, + 0x55, 0x76, 0x24, 0xa0, 0x0a, 0xe2, 0xfe, 0x8b, 0xf0, 0x94, 0xba, 0xbe, 0x4b, 0xe2, 0xfc, 0xd5, + 0xdb, 0xaf, 0x1f, 0x21, 0xe2, 0x5f, 0x0f, 0x17, 0xf1, 0x4b, 0xc6, 0x42, 0x62, 0x96, 0xbd, 0xaa, + 0xa5, 0x1e, 0x2e, 0x02, 0xf5, 0x53, 0x84, 0x4f, 0xdd, 0xa6, 0x6c, 0x58, 0xb0, 0x7f, 0x33, 0x5c, + 0xd8, 0xd7, 0x8d, 0xab, 0x87, 0x81, 0xed, 0x29, 0xa0, 0x02, 0xf7, 0xbf, 0x10, 0x9e, 0xd6, 0xf5, + 0xa3, 0xfd, 0xc6, 0x76, 0x34, 0xb9, 0xda, 0x18, 0x28, 0x57, 0x6f, 0x19, 0xaf, 0x26, 0x85, 0xd3, + 0x7a, 0xc3, 0xb5, 0xbf, 0x12, 0x05, 0xb2, 0x7f, 0x20, 0x4c, 0x56, 0x80, 0x77, 0xdc, 0xd2, 0x93, + 0xe0, 0x9a, 0x4f, 0xfa, 0x52, 0x96, 0x0d, 0xcf, 0x1d, 0xa4, 0x3f, 0x14, 0xc8, 0x7c, 0x1f, 0x84, + 0xed, 0x6f, 0xf0, 0x4f, 0x10, 0x3e, 0xa3, 0x2a, 0x7e, 0x27, 0x9e, 0xc2, 0xe1, 0x1e, 0x39, 0x49, + 0x48, 0x2b, 0x0f, 0x44, 0xda, 0x0b, 0xc6, 0xa1, 0x20, 0x09, 0x8a, 0x1e, 0x21, 0x7c, 0x5a, 0x3e, + 0x6a, 0xda, 0xed, 0x24, 0x97, 0xfa, 0x61, 0xd2, 0x6f, 0xa1, 0x24, 0x60, 0xaa, 0x03, 0x81, 0xe9, + 0x5f, 0x47, 0xda, 0xc0, 0x58, 0xf2, 0xb5, 0x26, 0x20, 0x3d, 0x4c, 0xe1, 0xb3, 0x2b, 0xc0, 0x65, + 0xa3, 0x18, 0x7a, 0xe8, 0xfd, 0x76, 0xb4, 0xb9, 0x93, 0xdd, 0x38, 0xe2, 0xaa, 0x22, 0x62, 0xf4, + 0x8b, 0x9d, 0xec, 0x4f, 0x11, 0xbe, 0xa9, 0x75, 0xca, 0x96, 0xbc, 0xb0, 0x25, 0xaf, 0x6d, 0xc9, + 0xab, 0x4f, 0xa5, 0x4e, 0x48, 0xf3, 0x65, 0xe0, 0x72, 0xa1, 0x78, 0xa3, 0xc6, 0xde, 0x22, 0xe4, + 0x65, 0x9c, 0x2a, 0x03, 0x27, 0xfd, 0xfc, 0xa8, 0xba, 0x4f, 0x9b, 0x37, 0x8d, 0x71, 0x35, 0x41, + 0x32, 0xf1, 0xe2, 0x20, 0x3b, 0x90, 0xb7, 0x52, 0xd8, 0x50, 0xf9, 0xb2, 0x2f, 0x13, 0x43, 0x48, + 0x9a, 0x3f, 0x8e, 0x0e, 0xab, 0xc2, 0x7f, 0xb1, 0x93, 0x7d, 0x88, 0xf0, 0x6b, 0x89, 0xc8, 0xa8, + 0x49, 0xcc, 0x07, 0xf1, 0x11, 0xd6, 0xfe, 0x7f, 0x3e, 0xfa, 0x67, 0xc6, 0x3e, 0x3b, 0x88, 0xcc, + 0x78, 0x3b, 0x85, 0xb3, 0x32, 0x6b, 0xf7, 0x61, 0xe4, 0x48, 0x33, 0xfe, 0xdd, 0x61, 0x32, 0xf1, + 0x0b, 0x84, 0x5f, 0x49, 0xc6, 0x84, 0x30, 0x77, 0x1f, 0x22, 0xc8, 0x6b, 0x8a, 0x87, 0xeb, 0x87, + 0xf7, 0xa2, 0xaa, 0x32, 0x6d, 0x6c, 0xbc, 0x62, 0x0c, 0xbc, 0x8f, 0xe0, 0x44, 0xa4, 0xc9, 0x0a, + 0xf0, 0x5b, 0x41, 0xb5, 0x44, 0x7d, 0xf0, 0x86, 0x5e, 0xb0, 0xde, 0x19, 0x62, 0xc1, 0xfa, 0x79, + 0xd2, 0x1c, 0x29, 0x03, 0x77, 0x35, 0xe0, 0xce, 0x1c, 0xb9, 0xa9, 0x6a, 0xd6, 0xb5, 0x3e, 0x3e, + 0x6d, 0x2d, 0xef, 0x95, 0x26, 0x03, 0x6e, 0x42, 0xfe, 0x90, 0xc2, 0x17, 0x54, 0xe5, 0x3a, 0x88, + 0x95, 0x21, 0x14, 0xaf, 0x3f, 0x0d, 0x33, 0x65, 0x7e, 0x89, 0xf0, 0xd2, 0x21, 0x8a, 0x57, 0x0f, + 0x6e, 0x44, 0xde, 0x1c, 0x01, 0x37, 0x37, 0x8c, 0xc1, 0x36, 0x11, 0x19, 0xf3, 0x31, 0xc2, 0xcf, + 0xac, 0x74, 0x7e, 0x7d, 0x4d, 0x92, 0x28, 0x73, 0xbd, 0xa6, 0xb4, 0x6f, 0x67, 0xfa, 0x83, 0x5c, + 0x29, 0x5f, 0x26, 0x2f, 0x25, 0xbd, 0x34, 0xd7, 0x29, 0x6c, 0xc5, 0xbe, 0x1b, 0x92, 0xcf, 0x10, + 0x7e, 0xa6, 0xeb, 0x93, 0x32, 0x79, 0xb1, 0x97, 0xc5, 0x07, 0x7d, 0x81, 0x4e, 0x12, 0x6d, 0xd1, + 0x40, 0x57, 0xb2, 0x9b, 0xc6, 0xa0, 0xf8, 0x6e, 0xa0, 0x39, 0xe3, 0xd2, 0x07, 0xef, 0xa3, 0xd4, + 0xc7, 0xef, 0xa3, 0x73, 0xfb, 0x58, 0x77, 0xb7, 0xf4, 0x03, 0x70, 0xf9, 0x9b, 0x1f, 0x65, 0x47, + 0x1f, 0xa0, 0xa5, 0x9f, 0xa1, 0x47, 0x8f, 0x73, 0x23, 0x9f, 0x3e, 0xce, 0x8d, 0x7c, 0xf9, 0x38, + 0x87, 0x7e, 0xd2, 0xcc, 0xa1, 0x77, 0x9b, 0x39, 0xf4, 0x61, 0x33, 0x87, 0x1e, 0x35, 0x73, 0xe8, + 0xb3, 0x66, 0x0e, 0x7d, 0xde, 0xcc, 0x8d, 0x7c, 0xd9, 0xcc, 0xa1, 0xb7, 0x9e, 0xe4, 0x46, 0x1e, + 0x3d, 0xc9, 0x8d, 0x7c, 0xfa, 0x24, 0x37, 0xf2, 0xbd, 0xf5, 0x72, 0x10, 0xbe, 0x51, 0x2e, 0xd4, + 0x83, 0x0a, 0x87, 0x28, 0x12, 0x1b, 0x5b, 0xf2, 0xc7, 0x66, 0x10, 0x55, 0xf3, 0x61, 0x14, 0xd4, + 0xa9, 0x07, 0x51, 0xbe, 0xa5, 0xb6, 0xc2, 0x52, 0x39, 0xb0, 0x60, 0x9b, 0xeb, 0x3f, 0x62, 0xf7, + 0xf9, 0x33, 0xba, 0x34, 0x2e, 0x3f, 0x77, 0x5f, 0xfd, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbf, + 0x6f, 0x73, 0xe2, 0xb1, 0x1e, 0x00, 0x00, } func (this *Empty) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/user_identification/crudapi/api.vesapi.go b/pbgo/extschema/schema/user_identification/crudapi/api.vesapi.go index 6b70d6961..0f8169a3d 100644 --- a/pbgo/extschema/schema/user_identification/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/user_identification/crudapi/api.vesapi.go @@ -3005,10 +3005,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/user_identification/object.pb.go b/pbgo/extschema/schema/user_identification/object.pb.go index 28b839607..647bf4e24 100644 --- a/pbgo/extschema/schema/user_identification/object.pb.go +++ b/pbgo/extschema/schema/user_identification/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_a0483d14574adb03 = []byte{ - // 594 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x6b, 0x14, 0x3f, - 0x18, 0xc7, 0x37, 0xbb, 0x65, 0x5b, 0xd2, 0xd2, 0x5f, 0x99, 0xc2, 0x8f, 0xb5, 0x6a, 0xa8, 0xeb, - 0xa5, 0xa0, 0x93, 0xd1, 0x8a, 0x68, 0x8b, 0x28, 0xb4, 0x42, 0x41, 0x5a, 0x84, 0xad, 0x7f, 0xc0, - 0xcb, 0x92, 0xc9, 0x3e, 0x3b, 0x8d, 0xee, 0x6c, 0x86, 0x24, 0x33, 0x76, 0x0f, 0x82, 0xf8, 0x0a, - 0xbc, 0xf8, 0x06, 0x3c, 0x89, 0xe0, 0x7b, 0xb0, 0x9e, 0x3c, 0x96, 0x9e, 0x7a, 0xb4, 0xb3, 0x17, - 0x8f, 0x05, 0xdf, 0x80, 0x4c, 0xa6, 0x53, 0xba, 0x65, 0xa4, 0xa5, 0xb7, 0x84, 0xe7, 0xf3, 0xfd, - 0xce, 0x37, 0x4f, 0xf2, 0x0c, 0xa6, 0x09, 0x68, 0x2a, 0xa4, 0xa7, 0xf9, 0x16, 0x84, 0xcc, 0x8b, - 0x35, 0xa8, 0xb6, 0xe8, 0x40, 0xdf, 0x88, 0xae, 0xe0, 0xcc, 0x08, 0xd9, 0xf7, 0xa4, 0xff, 0x1a, - 0xb8, 0xa1, 0x91, 0x92, 0x46, 0x3a, 0xd7, 0x72, 0x9e, 0xe6, 0x3c, 0x2d, 0xe1, 0xe7, 0xdc, 0x40, - 0x98, 0xad, 0xd8, 0xa7, 0x5c, 0x86, 0x5e, 0x20, 0x03, 0xe9, 0x59, 0xa5, 0x1f, 0x77, 0xed, 0xce, - 0x6e, 0xec, 0x2a, 0x77, 0x9c, 0xbb, 0x3c, 0x9a, 0x40, 0x46, 0x99, 0x89, 0x3e, 0x2a, 0x5e, 0x1a, - 0x2d, 0x9a, 0x41, 0x04, 0x45, 0xc9, 0x3d, 0x3b, 0xf9, 0x49, 0xbc, 0x39, 0x8a, 0x27, 0xa0, 0xa1, - 0x9f, 0x8c, 0x7e, 0xad, 0xf9, 0x61, 0x0c, 0xd7, 0x9f, 0xda, 0xd3, 0x3a, 0x4b, 0x78, 0x22, 0x04, - 0xc3, 0x3a, 0xcc, 0xb0, 0x06, 0x9a, 0x47, 0x0b, 0x93, 0x8b, 0x57, 0xe9, 0xe8, 0xd1, 0x73, 0x70, - 0x03, 0x0c, 0x7b, 0x36, 0x88, 0xa0, 0x75, 0x8c, 0x3b, 0xeb, 0xf8, 0x3f, 0x3d, 0xd0, 0x06, 0xc2, - 0xf6, 0xb1, 0x43, 0xd5, 0x3a, 0x5c, 0x3f, 0xe5, 0xb0, 0x69, 0xa9, 0x53, 0x3e, 0xd3, 0xb9, 0x76, - 0xa3, 0x70, 0x7b, 0x84, 0xc7, 0x74, 0x04, 0xbc, 0x51, 0xb3, 0x16, 0x37, 0xe8, 0x99, 0xfd, 0xa7, - 0x9b, 0x11, 0x70, 0x6b, 0x65, 0x85, 0xcb, 0xdf, 0xaa, 0x3f, 0x76, 0x1a, 0xd5, 0x19, 0xb4, 0xb7, - 0xd3, 0xf8, 0x5c, 0xc5, 0xf7, 0x70, 0x6d, 0x0d, 0x8c, 0x73, 0xab, 0x7b, 0x77, 0x9b, 0xbb, 0x1a, - 0x78, 0xac, 0x20, 0x04, 0xbd, 0xe5, 0xfa, 0x4c, 0x0b, 0xee, 0x86, 0xb2, 0x2f, 0x8c, 0x54, 0x37, - 0xe7, 0x13, 0xd0, 0xae, 0x90, 0x6e, 0xa4, 0xe4, 0xf6, 0xc0, 0x55, 0xc0, 0x3a, 0x78, 0x09, 0x8f, - 0xb7, 0x20, 0xea, 0x31, 0x0e, 0x0e, 0x2d, 0x17, 0x67, 0x59, 0x4e, 0x29, 0xdf, 0x2a, 0x61, 0x00, - 0xdf, 0xc7, 0xf5, 0x55, 0x05, 0xcc, 0x5c, 0x48, 0xf9, 0x18, 0x7a, 0x70, 0x21, 0xe5, 0xd8, 0xba, - 0xd0, 0x17, 0x38, 0x68, 0xf3, 0x05, 0x9e, 0x28, 0x3a, 0xe8, 0x3c, 0xc1, 0xe3, 0x01, 0x6f, 0xdb, - 0xfe, 0xe7, 0x57, 0x78, 0xfb, 0x1c, 0xfd, 0x5f, 0xeb, 0x49, 0x9f, 0xf5, 0x8e, 0x6f, 0xa1, 0x1e, - 0xf0, 0x6c, 0xdd, 0xfc, 0x83, 0xf0, 0xd4, 0xa6, 0x61, 0x26, 0xd6, 0xe7, 0x7e, 0x62, 0x39, 0x5e, - 0xf2, 0xc4, 0x9e, 0xe3, 0xc9, 0x7c, 0x2a, 0xdb, 0x0a, 0xba, 0xba, 0x51, 0x9d, 0xaf, 0x2d, 0x4c, - 0x2e, 0x5e, 0x29, 0x7d, 0xa0, 0x2d, 0xe8, 0x66, 0xe2, 0x95, 0xff, 0xbf, 0xbe, 0x9b, 0x2d, 0x49, - 0xdb, 0xc2, 0xb2, 0xc0, 0xb4, 0xf3, 0x00, 0x63, 0x2e, 0xfb, 0x1d, 0x61, 0x67, 0xa2, 0x51, 0x2b, - 0x75, 0x5d, 0x2d, 0x00, 0x1b, 0xe9, 0x04, 0xbf, 0x3c, 0xbb, 0xf7, 0x70, 0x06, 0x4f, 0xe3, 0xa9, - 0x22, 0x25, 0x8d, 0x45, 0x67, 0xe5, 0x13, 0xda, 0x3d, 0x20, 0x95, 0xfd, 0x03, 0x52, 0x39, 0x3c, - 0x20, 0xe8, 0x7d, 0x4a, 0xd0, 0x97, 0x94, 0xa0, 0x9f, 0x29, 0x41, 0xbb, 0x29, 0x41, 0xfb, 0x29, - 0x41, 0xbf, 0x52, 0x82, 0x7e, 0xa7, 0xa4, 0x72, 0x98, 0x12, 0xf4, 0x71, 0x48, 0x2a, 0xdf, 0x87, - 0x04, 0xed, 0x0e, 0x49, 0x65, 0x7f, 0x48, 0x2a, 0xaf, 0x5e, 0x06, 0x32, 0x7a, 0x13, 0xd0, 0x44, - 0xf6, 0x0c, 0x28, 0x95, 0xf5, 0xdb, 0xb3, 0x8b, 0xae, 0x54, 0x61, 0x76, 0x69, 0x89, 0xe8, 0x80, - 0x72, 0x8b, 0xb2, 0x17, 0xf9, 0x81, 0xf4, 0x60, 0xdb, 0x1c, 0x0d, 0xf9, 0xbf, 0x7f, 0x0d, 0x7e, - 0xdd, 0x4e, 0xfc, 0x9d, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x19, 0xdc, 0xbf, 0x10, 0x00, 0x05, + // 610 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0xd4, 0x4e, + 0x14, 0xc0, 0x77, 0x58, 0xfe, 0x0b, 0x19, 0x08, 0x7f, 0x52, 0x12, 0xb3, 0xa2, 0x4e, 0x70, 0xbd, + 0x90, 0x68, 0xdb, 0x88, 0xf1, 0x20, 0x31, 0x9a, 0x80, 0x09, 0x89, 0x81, 0x98, 0x2c, 0x2a, 0xca, + 0x65, 0x33, 0x9d, 0xbe, 0x2d, 0xa3, 0xdb, 0x9d, 0x66, 0x66, 0xb6, 0xb2, 0x07, 0x13, 0x3f, 0x82, + 0x17, 0x3f, 0x81, 0x17, 0xe3, 0xa7, 0x10, 0xbd, 0x78, 0x32, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0x3c, + 0x92, 0xf8, 0x05, 0x4c, 0xa7, 0x14, 0xe9, 0xa6, 0x0a, 0x07, 0xb9, 0x4d, 0xf3, 0x7e, 0xef, 0xd7, + 0xd7, 0xe9, 0x7b, 0x0f, 0x3b, 0x31, 0x28, 0x87, 0x0b, 0x57, 0xb1, 0x2d, 0x08, 0xa9, 0xdb, 0x53, + 0x20, 0x5b, 0xdc, 0x87, 0xae, 0xe6, 0x6d, 0xce, 0xa8, 0xe6, 0xa2, 0xeb, 0x0a, 0xef, 0x05, 0x30, + 0xed, 0x44, 0x52, 0x68, 0x61, 0x5d, 0xcd, 0x78, 0x27, 0xe3, 0x9d, 0x12, 0x7e, 0xd6, 0x0e, 0xb8, + 0xde, 0xea, 0x79, 0x0e, 0x13, 0xa1, 0x1b, 0x88, 0x40, 0xb8, 0x26, 0xd3, 0xeb, 0xb5, 0xcd, 0x93, + 0x79, 0x30, 0xa7, 0xcc, 0x38, 0x7b, 0xa9, 0x58, 0x81, 0x88, 0x52, 0x89, 0x3a, 0x0a, 0x5e, 0x2c, + 0x06, 0x75, 0x3f, 0x82, 0x3c, 0x64, 0x9f, 0x5e, 0xf9, 0x49, 0xbc, 0x51, 0xc4, 0x63, 0x50, 0xd0, + 0x8d, 0x8b, 0x6f, 0x6b, 0xbc, 0xff, 0x0f, 0xd7, 0x1e, 0x99, 0xaf, 0xb5, 0xee, 0xe0, 0xf1, 0x10, + 0x34, 0xf5, 0xa9, 0xa6, 0x75, 0x34, 0x87, 0xe6, 0x27, 0x16, 0xae, 0x38, 0xc5, 0x4f, 0xcf, 0xc0, + 0x35, 0xd0, 0xf4, 0x71, 0x3f, 0x82, 0xe6, 0x31, 0x6e, 0xad, 0xe2, 0xff, 0x55, 0x5f, 0x69, 0x08, + 0x5b, 0xc7, 0x86, 0x11, 0x63, 0xb8, 0x36, 0x64, 0x58, 0x37, 0xd4, 0x90, 0x67, 0x2a, 0xcb, 0x5d, + 0xcb, 0x6d, 0xf7, 0xf1, 0xa8, 0x8a, 0x80, 0xd5, 0xab, 0x46, 0x71, 0xdd, 0x39, 0xf5, 0xfe, 0x9d, + 0xf5, 0x08, 0x98, 0x51, 0x99, 0xc4, 0xc5, 0x6f, 0xd5, 0xcf, 0x3b, 0xf5, 0x91, 0x69, 0xb4, 0xb7, + 0x53, 0xff, 0x52, 0xc5, 0xcf, 0x71, 0x75, 0x05, 0xb4, 0xd5, 0x6c, 0xdf, 0xde, 0x66, 0xb6, 0x02, + 0xd6, 0x93, 0x10, 0x82, 0xda, 0xb2, 0x3d, 0xaa, 0x38, 0xb3, 0x43, 0xd1, 0xe5, 0x5a, 0xc8, 0x1b, + 0x73, 0xc3, 0x61, 0xa5, 0x69, 0xd7, 0xa7, 0xd2, 0xff, 0x4d, 0xc4, 0xa0, 0x6c, 0x2e, 0xec, 0x48, + 0x8a, 0xed, 0xbe, 0x2d, 0x81, 0xfa, 0xf8, 0x19, 0x1e, 0x6b, 0x42, 0xd4, 0xa1, 0x0c, 0xac, 0xb5, + 0x72, 0x7d, 0x5a, 0xed, 0x5f, 0xdc, 0x59, 0xb8, 0x20, 0x7e, 0x25, 0xb9, 0x06, 0xbc, 0x81, 0x6b, + 0xcb, 0x12, 0xa8, 0x3e, 0x0f, 0xf1, 0x03, 0xe8, 0xc0, 0xbf, 0x17, 0x6f, 0xe2, 0xd1, 0x55, 0xae, + 0xce, 0xe5, 0x9e, 0x1b, 0x4f, 0xf1, 0x78, 0xfe, 0x8b, 0xad, 0x87, 0x78, 0x2c, 0x60, 0x2d, 0xd3, + 0x20, 0x59, 0x8f, 0xdd, 0x3c, 0x43, 0x83, 0xac, 0x74, 0x84, 0x47, 0x3b, 0xc7, 0x6d, 0x52, 0x0b, + 0x58, 0x7a, 0x6e, 0xfc, 0x44, 0x78, 0x72, 0x5d, 0x53, 0xdd, 0x53, 0x67, 0x9e, 0x81, 0x0c, 0x2f, + 0x99, 0x81, 0x27, 0x78, 0x22, 0x5b, 0x1b, 0x2d, 0x09, 0x6d, 0x55, 0x1f, 0x99, 0xab, 0xce, 0x4f, + 0x2c, 0x5c, 0x2e, 0x9d, 0xa0, 0x26, 0xb4, 0xd3, 0xe4, 0xa5, 0x0b, 0x1f, 0x5f, 0xcf, 0x94, 0x54, + 0xdb, 0xc4, 0x22, 0xc7, 0x94, 0x75, 0x17, 0x63, 0x26, 0xba, 0x3e, 0x37, 0x43, 0x5b, 0xaf, 0x96, + 0x5a, 0x97, 0x73, 0xc0, 0x94, 0x74, 0x82, 0x5f, 0x9c, 0xd9, 0xbb, 0x37, 0x8d, 0xa7, 0xf0, 0x64, + 0x5e, 0xa5, 0xd3, 0xe3, 0xfe, 0xd2, 0x3b, 0xb4, 0x7b, 0x40, 0x2a, 0xfb, 0x07, 0xa4, 0x72, 0x78, + 0x40, 0xd0, 0x9b, 0x84, 0xa0, 0x0f, 0x09, 0x41, 0x5f, 0x13, 0x82, 0x76, 0x13, 0x82, 0xf6, 0x13, + 0x82, 0xbe, 0x27, 0x04, 0xfd, 0x48, 0x48, 0xe5, 0x30, 0x21, 0xe8, 0xed, 0x80, 0x54, 0x3e, 0x0d, + 0x08, 0xda, 0x1d, 0x90, 0xca, 0xfe, 0x80, 0x54, 0x36, 0x37, 0x02, 0x11, 0xbd, 0x0c, 0x9c, 0x58, + 0x74, 0x34, 0x48, 0x99, 0xde, 0xb7, 0x6b, 0x0e, 0x6d, 0x21, 0xc3, 0xf4, 0xa7, 0xc5, 0xdc, 0x07, + 0x69, 0xe7, 0x61, 0x37, 0xf2, 0x02, 0xe1, 0xc2, 0xb6, 0x3e, 0xda, 0x42, 0x7f, 0xde, 0x5d, 0x5e, + 0xcd, 0xac, 0xa4, 0x5b, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x01, 0x2c, 0x32, 0xe9, 0xa1, 0x05, 0x00, 0x00, } diff --git a/pbgo/extschema/schema/user_identification/public_crudapi.pb.go b/pbgo/extschema/schema/user_identification/public_crudapi.pb.go index cfeb6c741..1922acdd8 100644 --- a/pbgo/extschema/schema/user_identification/public_crudapi.pb.go +++ b/pbgo/extschema/schema/user_identification/public_crudapi.pb.go @@ -1060,108 +1060,109 @@ func init() { } var fileDescriptor_c62ec1e073865f60 = []byte{ - // 1605 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x6c, 0x13, 0x57, - 0x1a, 0xcf, 0xb3, 0x1d, 0x63, 0x3f, 0xe7, 0xcf, 0xf0, 0x16, 0x82, 0xe3, 0x65, 0x2d, 0x63, 0xd0, - 0x2a, 0x8a, 0xd6, 0x33, 0x10, 0xc4, 0x0a, 0x22, 0x04, 0xeb, 0x24, 0x4e, 0x14, 0x36, 0x24, 0x30, - 0x36, 0xa1, 0xea, 0x65, 0x34, 0x1e, 0x7f, 0x36, 0x53, 0x6c, 0xcf, 0x74, 0xe6, 0xd9, 0x89, 0x55, - 0x45, 0xaa, 0x38, 0x55, 0xea, 0xa5, 0x52, 0x4f, 0xad, 0x7a, 0x68, 0x0f, 0x95, 0xda, 0x73, 0x2f, - 0x95, 0x72, 0xe1, 0x06, 0xe2, 0x50, 0xa1, 0xf6, 0x12, 0xa9, 0x87, 0x16, 0xa7, 0x12, 0x1c, 0x51, - 0xaf, 0x3d, 0xb4, 0x9a, 0xf7, 0x66, 0x8c, 0xed, 0x98, 0xc6, 0x76, 0x72, 0xf2, 0xbc, 0xef, 0xcf, - 0xef, 0x7d, 0xff, 0xe7, 0xf3, 0xe0, 0xff, 0xd6, 0xc1, 0x16, 0x75, 0x43, 0xb2, 0xb5, 0x07, 0x50, - 0x51, 0xa5, 0x9a, 0x0d, 0x96, 0xa2, 0x17, 0xa0, 0x4a, 0xf5, 0xa2, 0xae, 0xa9, 0x54, 0x37, 0xaa, - 0x92, 0x59, 0xcb, 0x97, 0x75, 0x4d, 0xd1, 0xac, 0x5a, 0x41, 0x35, 0x75, 0xd1, 0xb4, 0x0c, 0x6a, - 0x90, 0x73, 0x5c, 0x4f, 0xe4, 0x7a, 0x62, 0x0f, 0xbd, 0x58, 0xaa, 0xa4, 0xd3, 0x07, 0xb5, 0xbc, - 0xa8, 0x19, 0x15, 0xa9, 0x64, 0x94, 0x0c, 0x89, 0x69, 0xe6, 0x6b, 0x45, 0x76, 0x62, 0x07, 0xf6, - 0xc4, 0x11, 0x63, 0x67, 0x4b, 0x86, 0x51, 0x2a, 0x83, 0xa4, 0x9a, 0xba, 0xa4, 0x56, 0xab, 0x06, - 0x65, 0x28, 0xb6, 0xcb, 0xfd, 0xa7, 0xcb, 0x6d, 0x61, 0x40, 0xc5, 0xa4, 0x0d, 0x97, 0x19, 0xeb, - 0x74, 0x02, 0x2c, 0xcb, 0xb0, 0x5a, 0x8a, 0x9d, 0x3c, 0xc3, 0x6c, 0x47, 0x9d, 0xee, 0x64, 0xd2, - 0x86, 0x09, 0x1e, 0x4b, 0x3c, 0x3c, 0x30, 0x46, 0xfe, 0x3d, 0xd0, 0xa8, 0x2b, 0x9f, 0x3a, 0x5c, - 0xbe, 0x1d, 0x3e, 0xd9, 0x29, 0x5e, 0x07, 0x1b, 0xaa, 0xf5, 0x2e, 0xeb, 0x12, 0x5d, 0x32, 0x3a, - 0x6c, 0x29, 0x1d, 0x12, 0xc9, 0xef, 0x10, 0x1e, 0x5f, 0xb4, 0x40, 0xa5, 0x20, 0xc3, 0xfb, 0x35, - 0xb0, 0x29, 0xb9, 0x89, 0x43, 0x15, 0xa0, 0x6a, 0x41, 0xa5, 0x6a, 0x14, 0x25, 0xd0, 0x4c, 0x64, - 0xee, 0xbc, 0xd8, 0x99, 0xaa, 0x0d, 0x66, 0x35, 0xd7, 0xba, 0x0d, 0x54, 0xcd, 0x35, 0x4c, 0x90, - 0x5b, 0x4a, 0x64, 0x13, 0x07, 0x6c, 0x13, 0xb4, 0xa8, 0x8f, 0x29, 0x5f, 0x12, 0x0f, 0xcd, 0xb3, - 0xc8, 0xa1, 0xb2, 0x26, 0x68, 0x0e, 0xd4, 0xc2, 0xe4, 0xe7, 0x3b, 0x63, 0x0e, 0x82, 0x58, 0xd2, - 0x14, 0xe7, 0x57, 0x66, 0x78, 0xf3, 0xe1, 0x67, 0x37, 0x82, 0xfc, 0xea, 0xe4, 0x9f, 0x08, 0x4f, - 0x78, 0x56, 0xdb, 0xa6, 0x51, 0xb5, 0x81, 0x5c, 0x3f, 0x60, 0x76, 0xa2, 0xa7, 0xd9, 0x2b, 0x40, - 0x7b, 0xd8, 0xbc, 0x81, 0x27, 0xed, 0x86, 0x4d, 0xa1, 0xa2, 0xb4, 0x40, 0xfc, 0x0c, 0xe4, 0xdf, - 0x5d, 0x20, 0x59, 0x26, 0x75, 0x10, 0x6a, 0x82, 0xab, 0xdf, 0xf6, 0x00, 0xb3, 0x1d, 0x41, 0x10, - 0xfb, 0x08, 0xc2, 0x0a, 0xd0, 0x01, 0x22, 0xf0, 0x12, 0xe1, 0x09, 0x19, 0xcc, 0xb2, 0xaa, 0xb5, - 0x12, 0xf7, 0xbf, 0x03, 0x11, 0xb8, 0xd0, 0x33, 0x02, 0xae, 0x5a, 0x8f, 0x28, 0xdc, 0xef, 0x30, - 0x7a, 0xae, 0x0f, 0xa3, 0x5d, 0xac, 0x43, 0x0c, 0x27, 0x12, 0x16, 0x2c, 0xb0, 0x8d, 0x9a, 0xa5, - 0x81, 0x52, 0x07, 0xcb, 0xd6, 0x8d, 0x2a, 0x8b, 0x6f, 0x78, 0x21, 0xf0, 0x6a, 0x17, 0x21, 0x79, - 0xd2, 0xe3, 0x6e, 0x72, 0x66, 0xbb, 0xa7, 0x27, 0xf1, 0x64, 0xcb, 0x51, 0x9e, 0xeb, 0xe4, 0x57, - 0x08, 0xe3, 0x15, 0xa0, 0x9e, 0xe3, 0x67, 0x71, 0xb8, 0xaa, 0x56, 0xc0, 0x36, 0x55, 0x0d, 0x98, - 0xe7, 0x61, 0xf9, 0x0d, 0x81, 0x10, 0x1c, 0x70, 0x0e, 0xcc, 0xa9, 0xb0, 0xcc, 0x9e, 0x89, 0x8a, - 0x9d, 0x1b, 0x19, 0x98, 0x52, 0x34, 0xac, 0x8a, 0x4a, 0x99, 0x39, 0x13, 0x73, 0x57, 0xfb, 0x4b, - 0x94, 0x67, 0xc9, 0x32, 0xd3, 0x5d, 0x34, 0x0a, 0x20, 0x4f, 0x58, 0x1d, 0xb4, 0xe4, 0xb7, 0x41, - 0x1c, 0x69, 0x93, 0x24, 0x77, 0x71, 0x44, 0x63, 0x15, 0xcb, 0x2e, 0x74, 0x43, 0x7c, 0xb1, 0xef, - 0xe6, 0x70, 0x7d, 0x95, 0x31, 0x07, 0x71, 0x2e, 0x21, 0x39, 0x3c, 0x66, 0xf1, 0xc8, 0x70, 0x4c, - 0x7f, 0xdf, 0x0d, 0xd7, 0x59, 0x39, 0x72, 0xc4, 0x85, 0x61, 0xa8, 0xbd, 0x72, 0x15, 0xf8, 0x9b, - 0x5c, 0x75, 0x74, 0xde, 0xe8, 0x71, 0x74, 0xde, 0x89, 0x63, 0xe9, 0xbc, 0xe0, 0x31, 0x76, 0x1e, - 0x59, 0xc7, 0x41, 0x9b, 0xaa, 0xb4, 0x66, 0x47, 0xbf, 0xfc, 0x02, 0x25, 0xfc, 0x33, 0x91, 0x39, - 0xa9, 0x0f, 0xe0, 0x2c, 0x53, 0xe1, 0x26, 0x2f, 0xf8, 0x1f, 0xef, 0x20, 0xd9, 0x45, 0x21, 0xab, - 0xf8, 0xa4, 0x05, 0x45, 0xb0, 0x2c, 0xbd, 0x5a, 0x52, 0xf8, 0x5b, 0xc0, 0x8e, 0x86, 0x18, 0xf0, - 0xd9, 0xb7, 0x34, 0x6d, 0x91, 0x79, 0x2b, 0xb4, 0xd4, 0x38, 0xdd, 0x26, 0x9b, 0x38, 0x5a, 0x80, - 0x32, 0x50, 0x28, 0x28, 0x9c, 0x07, 0x85, 0x16, 0x62, 0xb8, 0x0f, 0xc4, 0x29, 0x57, 0x5b, 0x76, - 0x95, 0x3d, 0xdc, 0x77, 0xf0, 0x74, 0x41, 0xb7, 0xd5, 0x7c, 0xb9, 0x17, 0x30, 0xee, 0x03, 0xf8, - 0x8c, 0xa7, 0xde, 0x85, 0xdc, 0xd6, 0xdc, 0xb7, 0x02, 0x21, 0x24, 0xf8, 0x92, 0x5f, 0x23, 0x1c, - 0x59, 0xd3, 0xed, 0x3e, 0x1b, 0xfa, 0x1c, 0x1e, 0x2b, 0xab, 0x79, 0x28, 0x2b, 0x45, 0xbd, 0x4c, - 0xc1, 0x72, 0x1b, 0x3b, 0xc2, 0x68, 0xcb, 0x8c, 0x44, 0xce, 0xe3, 0x71, 0x0b, 0x4c, 0xc3, 0xa2, - 0x4a, 0x51, 0x87, 0x72, 0xc1, 0x8e, 0xfa, 0x13, 0xfe, 0x99, 0xb0, 0x3c, 0xc6, 0x89, 0xcb, 0x8c, - 0x46, 0x2e, 0xe2, 0x53, 0xae, 0x10, 0x4f, 0x8a, 0x27, 0x1b, 0x60, 0xb2, 0x84, 0xf3, 0x78, 0x0a, - 0xb9, 0x46, 0x72, 0x2f, 0x88, 0x05, 0x6e, 0x27, 0x6f, 0xea, 0x55, 0x0a, 0x15, 0x32, 0x85, 0x83, - 0x14, 0xaa, 0x6a, 0x95, 0xb2, 0x8a, 0x0b, 0xcb, 0xee, 0x69, 0x88, 0xa9, 0x24, 0x60, 0x7f, 0x4d, - 0x2f, 0xf0, 0xc1, 0x28, 0x3b, 0x8f, 0x24, 0x81, 0x23, 0x05, 0xb0, 0x35, 0x4b, 0x67, 0xef, 0xec, - 0x68, 0x84, 0x7b, 0xda, 0x46, 0x22, 0x31, 0x1c, 0xf2, 0xc2, 0x1c, 0x1d, 0x4b, 0xa0, 0x99, 0x90, - 0xdc, 0x3a, 0x93, 0xfb, 0x38, 0xc8, 0x82, 0xc2, 0x5d, 0x8a, 0xcc, 0xdd, 0xec, 0xa3, 0x64, 0xbb, - 0xdd, 0x13, 0xd7, 0x18, 0x42, 0xa6, 0x4a, 0xad, 0x86, 0xec, 0xc2, 0x91, 0x22, 0x8e, 0xb4, 0xed, - 0x57, 0x6e, 0x31, 0x2c, 0x0d, 0x83, 0x9e, 0x7e, 0x03, 0xc3, 0xaf, 0x68, 0x07, 0x26, 0xd7, 0x30, - 0x36, 0xb6, 0xaa, 0x60, 0x29, 0xce, 0xe2, 0x12, 0x0d, 0xb3, 0x86, 0x8e, 0x75, 0x5d, 0xb3, 0xa9, - 0xc3, 0x96, 0x57, 0x71, 0x61, 0x26, 0xed, 0x50, 0x3a, 0x86, 0xd2, 0xf8, 0x71, 0x0c, 0xa5, 0x89, - 0x23, 0x0d, 0xa5, 0x55, 0x1c, 0x2a, 0x01, 0x65, 0x13, 0xc5, 0x1d, 0x6f, 0x03, 0x0e, 0x26, 0xf9, - 0x44, 0x89, 0x1f, 0x48, 0x16, 0x63, 0xb7, 0x5e, 0x6d, 0xa0, 0xee, 0xcc, 0x18, 0x6e, 0x18, 0x85, - 0x39, 0x4e, 0x16, 0x68, 0xec, 0x1a, 0x8e, 0xb4, 0x25, 0xda, 0xa9, 0xc4, 0x87, 0xd0, 0x70, 0xab, - 0xd6, 0x79, 0x24, 0xa7, 0xf0, 0x68, 0x5d, 0x2d, 0xd7, 0xbc, 0x82, 0xe5, 0x87, 0x79, 0xdf, 0x55, - 0x14, 0xbb, 0x81, 0x85, 0xee, 0x2c, 0x0e, 0xa2, 0x7f, 0x2b, 0x10, 0x1a, 0x15, 0x82, 0xc9, 0x8f, - 0x11, 0x1e, 0x6b, 0xaf, 0x0e, 0xb2, 0x8a, 0x47, 0x75, 0x0a, 0x15, 0x3b, 0xca, 0xc7, 0xed, 0xe5, - 0x21, 0xaa, 0x4b, 0xe6, 0x08, 0xe4, 0x22, 0x0e, 0xf2, 0x85, 0x3e, 0xea, 0x63, 0x58, 0xd1, 0x2e, - 0xac, 0x8c, 0xc3, 0x64, 0x41, 0x76, 0xe5, 0x92, 0x0f, 0xf1, 0xf8, 0x12, 0x9b, 0x8a, 0xc3, 0xaf, - 0x18, 0x33, 0x58, 0x28, 0xaa, 0x7a, 0x59, 0xd1, 0x8b, 0xad, 0xe9, 0xc9, 0x3a, 0x3b, 0x24, 0x4f, - 0x38, 0xf4, 0xd5, 0xa2, 0x37, 0x15, 0x67, 0x7f, 0x47, 0xf8, 0x74, 0xcf, 0x9d, 0x82, 0xc4, 0xf0, - 0xd4, 0x4a, 0x26, 0xa7, 0xc8, 0xd9, 0x3b, 0xca, 0xf2, 0x86, 0x7c, 0x3b, 0x9d, 0x53, 0x96, 0x32, - 0xcb, 0xe9, 0x7b, 0x6b, 0x39, 0x61, 0x84, 0xfc, 0x0b, 0x4f, 0x77, 0xf1, 0x96, 0x37, 0x64, 0x65, - 0x51, 0xce, 0xa4, 0x73, 0x19, 0x01, 0x91, 0x38, 0x8e, 0xf5, 0x60, 0xcb, 0x99, 0x3b, 0x6b, 0xe9, - 0xc5, 0x8c, 0xe0, 0x23, 0xd3, 0xf8, 0x74, 0x17, 0x3f, 0x9b, 0x4b, 0xe7, 0xee, 0x65, 0x05, 0x3f, - 0x39, 0x83, 0xff, 0xd1, 0xc5, 0x92, 0x33, 0xe9, 0x25, 0x21, 0x40, 0x2e, 0xe0, 0xc4, 0x01, 0xc6, - 0x72, 0x46, 0x96, 0x57, 0xd7, 0x57, 0x94, 0x8d, 0x85, 0x5b, 0x99, 0xc5, 0x5c, 0x56, 0x18, 0xed, - 0x21, 0xb5, 0x20, 0x6f, 0xfc, 0x3f, 0xb3, 0xce, 0x85, 0x33, 0xeb, 0x8b, 0x99, 0xac, 0x10, 0x9c, - 0x7b, 0x15, 0xc6, 0xfe, 0xf4, 0x9d, 0x55, 0xf2, 0x12, 0xe1, 0x20, 0xdf, 0x70, 0xc8, 0xc0, 0xcb, - 0x50, 0xec, 0xd2, 0x00, 0x1a, 0xee, 0xea, 0xb8, 0xdd, 0x7c, 0x12, 0x4d, 0x15, 0xaf, 0x6c, 0x6b, - 0x29, 0x1b, 0xb4, 0x9a, 0x05, 0x15, 0xb0, 0x1f, 0xa4, 0xf2, 0xaa, 0xad, 0x6b, 0x29, 0x47, 0xfb, - 0x3f, 0x75, 0xb0, 0x53, 0xba, 0x91, 0x32, 0x2d, 0x63, 0xbb, 0x91, 0xda, 0xb2, 0x74, 0x0a, 0x8f, - 0x7e, 0xfa, 0xed, 0x53, 0x5f, 0x3a, 0x79, 0xdd, 0xfd, 0x17, 0x2b, 0xb5, 0xd2, 0x6e, 0x4b, 0x1f, - 0x78, 0xd3, 0x41, 0x6c, 0x11, 0x77, 0x7a, 0xfd, 0x6f, 0xb3, 0xe7, 0xd1, 0x2c, 0xf9, 0x05, 0x61, - 0xff, 0x0a, 0x50, 0x92, 0xea, 0x77, 0xc5, 0xe4, 0x3e, 0x8a, 0x83, 0x6d, 0xa4, 0xc9, 0xc6, 0xd3, - 0xef, 0x7d, 0xa8, 0xf9, 0x24, 0x2a, 0xf5, 0x76, 0xb2, 0x62, 0x54, 0x75, 0x6a, 0x74, 0xf9, 0x69, - 0x81, 0x5a, 0x60, 0x6e, 0x5e, 0x27, 0xf3, 0xbd, 0xdc, 0x3c, 0xc4, 0x3b, 0x2e, 0xb0, 0x43, 0x7e, - 0x46, 0x38, 0xe0, 0xf4, 0x20, 0x11, 0xfb, 0x6e, 0x56, 0xee, 0xa3, 0x34, 0x60, 0x73, 0x27, 0xad, - 0xa3, 0x38, 0x79, 0x85, 0x5c, 0x1e, 0xc2, 0x49, 0xf2, 0x07, 0xc2, 0x27, 0xdc, 0xbd, 0x99, 0x0c, - 0xbe, 0x63, 0xc7, 0xe6, 0x06, 0x51, 0x71, 0xdd, 0xfc, 0x08, 0x0d, 0x57, 0xad, 0x77, 0x63, 0x6b, - 0x47, 0xa9, 0xd6, 0x2e, 0xc9, 0x1d, 0xa7, 0x7a, 0x9f, 0x21, 0x1c, 0xe4, 0x23, 0xb1, 0xaf, 0x3e, - 0xed, 0x98, 0x9e, 0xb1, 0x29, 0x91, 0x7f, 0x7b, 0x11, 0xbd, 0x6f, 0x2f, 0x62, 0xa6, 0x62, 0xd2, - 0x46, 0xb2, 0x3e, 0x9c, 0x7b, 0x37, 0x67, 0x8f, 0x50, 0xa5, 0xf3, 0x68, 0x36, 0x56, 0x7e, 0xbc, - 0x8b, 0x7c, 0x3f, 0xee, 0xa2, 0x99, 0xc3, 0x1d, 0xe1, 0xef, 0xcb, 0xbd, 0x5d, 0x84, 0x9a, 0xbb, - 0x68, 0xc0, 0xb7, 0xec, 0xa3, 0x1f, 0xa2, 0x3e, 0x01, 0x2d, 0x7c, 0x86, 0x9e, 0xdd, 0x18, 0x5d, - 0x94, 0xef, 0x2d, 0xad, 0x3d, 0x7f, 0x11, 0x1f, 0xd9, 0x7b, 0x11, 0x1f, 0x79, 0xfd, 0x22, 0x8e, - 0x3e, 0x6c, 0xc6, 0xd1, 0x37, 0xcd, 0x38, 0x7a, 0xda, 0x8c, 0xa3, 0xe7, 0xcd, 0x38, 0xfa, 0xb5, - 0x19, 0x47, 0xaf, 0x9a, 0xf1, 0x91, 0xd7, 0xcd, 0x38, 0xfa, 0x64, 0x3f, 0x3e, 0xf2, 0x78, 0x3f, - 0x8e, 0x9e, 0xef, 0xc7, 0x47, 0xf6, 0xf6, 0xe3, 0x23, 0xef, 0xde, 0x2f, 0x19, 0xe6, 0xc3, 0x92, - 0x58, 0x37, 0x9c, 0xed, 0xd6, 0x72, 0x6e, 0x96, 0xd8, 0x83, 0xf3, 0xb7, 0xcf, 0x09, 0x4f, 0x5d, - 0x2f, 0x80, 0x95, 0xf2, 0xd8, 0x92, 0x99, 0x2f, 0x19, 0x12, 0x6c, 0x53, 0xf7, 0xb3, 0xcf, 0xdb, - 0x3f, 0x28, 0xe5, 0x83, 0x2c, 0x23, 0x97, 0xff, 0x0a, 0x00, 0x00, 0xff, 0xff, 0xad, 0xf3, 0x08, - 0x1e, 0xc5, 0x13, 0x00, 0x00, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x13, 0xdb, + 0x15, 0xce, 0xb5, 0x1d, 0x63, 0x5f, 0xe7, 0x67, 0xb8, 0x85, 0xe0, 0xb8, 0xd4, 0x32, 0x06, 0x55, + 0x51, 0x54, 0x8f, 0x21, 0x88, 0x0a, 0x22, 0x04, 0x75, 0x12, 0x27, 0x0a, 0x84, 0x24, 0x8c, 0x4d, + 0xa8, 0xba, 0x19, 0x8d, 0xc7, 0xc7, 0x66, 0x8a, 0xed, 0x99, 0xce, 0xbd, 0x76, 0xb0, 0xaa, 0x48, + 0x2d, 0x8b, 0xaa, 0x52, 0x37, 0x95, 0xa8, 0x2a, 0x81, 0xba, 0x68, 0x17, 0xad, 0xda, 0x75, 0x37, + 0x95, 0xb2, 0x61, 0x57, 0xc4, 0xe2, 0x09, 0xbd, 0xb7, 0xc9, 0xf2, 0xe1, 0x3c, 0xe9, 0xf1, 0x76, + 0xe8, 0xed, 0x9f, 0xde, 0xd3, 0xdc, 0x3b, 0x63, 0x6c, 0xc7, 0x10, 0x3b, 0x84, 0x95, 0xe7, 0xde, + 0x73, 0xce, 0x77, 0xcf, 0xf9, 0xee, 0x39, 0xc7, 0x67, 0x06, 0xff, 0xbc, 0x01, 0x54, 0x36, 0xcc, + 0x34, 0xd5, 0x1f, 0x40, 0x55, 0x4b, 0xd7, 0x29, 0xd8, 0xaa, 0x51, 0x84, 0x1a, 0x33, 0x4a, 0x86, + 0xae, 0x31, 0xc3, 0xac, 0xa5, 0xad, 0x7a, 0xa1, 0x62, 0xe8, 0xaa, 0x6e, 0xd7, 0x8b, 0x9a, 0x65, + 0xc8, 0x96, 0x6d, 0x32, 0x93, 0x9c, 0x13, 0x76, 0xb2, 0xb0, 0x93, 0xfb, 0xd8, 0xc5, 0x52, 0x65, + 0x83, 0x3d, 0xa8, 0x17, 0x64, 0xdd, 0xac, 0xa6, 0xcb, 0x66, 0xd9, 0x4c, 0x73, 0xcb, 0x42, 0xbd, + 0xc4, 0x57, 0x7c, 0xc1, 0x9f, 0x04, 0x62, 0xec, 0x6c, 0xd9, 0x34, 0xcb, 0x15, 0x48, 0x6b, 0x96, + 0x91, 0xd6, 0x6a, 0x35, 0x93, 0x71, 0x14, 0xea, 0x4a, 0x7f, 0xec, 0x4a, 0xdb, 0x18, 0x50, 0xb5, + 0x58, 0xd3, 0x15, 0xc6, 0xba, 0x83, 0x00, 0xdb, 0x36, 0xed, 0xb6, 0x61, 0xb7, 0xcc, 0xb4, 0x3a, + 0x51, 0xa7, 0xbb, 0x85, 0xac, 0x69, 0x81, 0x27, 0x92, 0x0f, 0x27, 0xc6, 0x2c, 0xfc, 0x1a, 0x74, + 0xe6, 0xea, 0xa7, 0x0e, 0xd7, 0xef, 0x84, 0x4f, 0x76, 0xab, 0x37, 0x80, 0x42, 0xad, 0xd1, 0xe3, + 0x5d, 0xa2, 0x47, 0xc7, 0x80, 0x6d, 0xb5, 0x4b, 0x23, 0xf9, 0x5f, 0x84, 0xc7, 0x17, 0x6d, 0xd0, + 0x18, 0x28, 0xf0, 0x9b, 0x3a, 0x50, 0x46, 0x6e, 0xe2, 0x50, 0x15, 0x98, 0x56, 0xd4, 0x98, 0x16, + 0x45, 0x09, 0x34, 0x13, 0x99, 0x3b, 0x2f, 0x77, 0x5f, 0xd5, 0x06, 0xf7, 0x5a, 0x58, 0xdd, 0x01, + 0xa6, 0xe5, 0x9b, 0x16, 0x28, 0x6d, 0x23, 0xb2, 0x85, 0x03, 0xd4, 0x02, 0x3d, 0xea, 0xe3, 0xc6, + 0x97, 0xe4, 0x43, 0xef, 0x59, 0x16, 0x50, 0x39, 0x0b, 0x74, 0x07, 0x6a, 0x61, 0xf2, 0xd9, 0xce, + 0x98, 0x83, 0x20, 0x97, 0x75, 0xd5, 0xf9, 0x55, 0x38, 0xde, 0x7c, 0xf8, 0xe5, 0x8d, 0xa0, 0x38, + 0x3a, 0xf9, 0x3d, 0xc2, 0x13, 0x9e, 0xd7, 0xd4, 0x32, 0x6b, 0x14, 0xc8, 0xf5, 0x03, 0x6e, 0x27, + 0xfa, 0xba, 0xbd, 0x02, 0xac, 0x8f, 0xcf, 0x1b, 0x78, 0x92, 0x36, 0x29, 0x83, 0xaa, 0xda, 0x06, + 0xf1, 0x73, 0x90, 0x9f, 0xf6, 0x80, 0xe4, 0xb8, 0xd6, 0x41, 0xa8, 0x09, 0x61, 0x7e, 0xc7, 0x03, + 0xcc, 0x75, 0x91, 0x20, 0x0f, 0x40, 0xc2, 0x0a, 0xb0, 0x21, 0x18, 0xf8, 0x1a, 0xe1, 0x09, 0x05, + 0xac, 0x8a, 0xa6, 0xb7, 0x2f, 0xee, 0x17, 0x07, 0x18, 0xb8, 0xd0, 0x97, 0x01, 0xd7, 0xac, 0x0f, + 0x0b, 0xf7, 0xbb, 0x9c, 0x9e, 0x1b, 0xc0, 0x69, 0x17, 0xeb, 0x10, 0xc7, 0x49, 0x1a, 0x4b, 0x36, + 0x50, 0xb3, 0x6e, 0xeb, 0xa0, 0x36, 0xc0, 0xa6, 0x86, 0x59, 0xe3, 0xfc, 0x86, 0x17, 0x02, 0x6f, + 0x76, 0x11, 0x52, 0x26, 0x3d, 0xe9, 0x96, 0x10, 0x76, 0x46, 0x7a, 0x12, 0x4f, 0xb6, 0x03, 0x15, + 0x77, 0x9d, 0xfc, 0x07, 0xc2, 0x78, 0x05, 0x98, 0x17, 0xf8, 0x59, 0x1c, 0xae, 0x69, 0x55, 0xa0, + 0x96, 0xa6, 0x03, 0x8f, 0x3c, 0xac, 0xbc, 0xdb, 0x20, 0x04, 0x07, 0x9c, 0x05, 0x0f, 0x2a, 0xac, + 0xf0, 0x67, 0xa2, 0x61, 0xe7, 0x44, 0x0e, 0xa6, 0x96, 0x4c, 0xbb, 0xaa, 0x31, 0xee, 0xce, 0xc4, + 0xdc, 0xd5, 0xc1, 0x2e, 0xca, 0xf3, 0x64, 0x99, 0xdb, 0x2e, 0x9a, 0x45, 0x50, 0x26, 0xec, 0xae, + 0xbd, 0xe4, 0x7f, 0x82, 0x38, 0xd2, 0xa1, 0x49, 0xee, 0xe2, 0x88, 0xce, 0x33, 0x96, 0x1f, 0xe8, + 0x52, 0x7c, 0x71, 0xe0, 0xe2, 0x70, 0x63, 0x55, 0xb0, 0x00, 0x71, 0x0e, 0x21, 0x79, 0x3c, 0x66, + 0x0b, 0x66, 0x04, 0xa6, 0x7f, 0xe0, 0x82, 0xeb, 0xce, 0x1c, 0x25, 0xe2, 0xc2, 0x70, 0xd4, 0x7e, + 0x77, 0x15, 0xf8, 0xc0, 0x5d, 0x75, 0x55, 0xde, 0xe8, 0x71, 0x54, 0xde, 0x89, 0x63, 0xa9, 0xbc, + 0xe0, 0x31, 0x56, 0x1e, 0x59, 0xc7, 0x41, 0xca, 0x34, 0x56, 0xa7, 0xd1, 0xbf, 0xff, 0x0d, 0x25, + 0xfc, 0x33, 0x91, 0xb9, 0xf4, 0x00, 0xc0, 0x39, 0x6e, 0x22, 0x5c, 0x5e, 0xf0, 0x3f, 0xdf, 0x41, + 0x8a, 0x8b, 0x42, 0x56, 0xf1, 0x49, 0x1b, 0x4a, 0x60, 0xdb, 0x46, 0xad, 0xac, 0x8a, 0x7f, 0x01, + 0x1a, 0x0d, 0x71, 0xe0, 0xb3, 0xef, 0x29, 0xda, 0x12, 0x8f, 0x56, 0x6a, 0x9b, 0x89, 0x7d, 0x4a, + 0xb6, 0x70, 0xb4, 0x08, 0x15, 0x60, 0x50, 0x54, 0x85, 0x0c, 0x8a, 0x6d, 0xc4, 0xf0, 0x00, 0x88, + 0x53, 0xae, 0xb5, 0xe2, 0x1a, 0x7b, 0xb8, 0xbf, 0xc4, 0xd3, 0x45, 0x83, 0x6a, 0x85, 0x4a, 0x3f, + 0x60, 0x3c, 0x00, 0xf0, 0x19, 0xcf, 0xbc, 0x07, 0xb9, 0xa3, 0xb8, 0x6f, 0x05, 0x42, 0x48, 0xf2, + 0x25, 0xff, 0x89, 0x70, 0x64, 0xcd, 0xa0, 0x03, 0x16, 0xf4, 0x39, 0x3c, 0x56, 0xd1, 0x0a, 0x50, + 0x51, 0x4b, 0x46, 0x85, 0x81, 0xed, 0x16, 0x76, 0x84, 0xef, 0x2d, 0xf3, 0x2d, 0x72, 0x1e, 0x8f, + 0xdb, 0x60, 0x99, 0x36, 0x53, 0x4b, 0x06, 0x54, 0x8a, 0x34, 0xea, 0x4f, 0xf8, 0x67, 0xc2, 0xca, + 0x98, 0xd8, 0x5c, 0xe6, 0x7b, 0xe4, 0x22, 0x3e, 0xe5, 0x2a, 0x89, 0x4b, 0xf1, 0x74, 0x03, 0x5c, + 0x97, 0x08, 0x99, 0xb8, 0x42, 0x61, 0x91, 0xdc, 0x0b, 0x62, 0x49, 0xf8, 0x29, 0x8a, 0x7a, 0x95, + 0x41, 0x95, 0x4c, 0xe1, 0x20, 0x83, 0x9a, 0x56, 0x63, 0x3c, 0xe3, 0xc2, 0x8a, 0xbb, 0x3a, 0x42, + 0x57, 0x92, 0xb0, 0xbf, 0x6e, 0x14, 0x45, 0x63, 0x54, 0x9c, 0x47, 0x92, 0xc0, 0x91, 0x22, 0x50, + 0xdd, 0x36, 0xf8, 0x7f, 0x76, 0x34, 0x22, 0x22, 0xed, 0xd8, 0x22, 0x31, 0x1c, 0xf2, 0x68, 0x8e, + 0x8e, 0x25, 0xd0, 0x4c, 0x48, 0x69, 0xaf, 0xc9, 0x7d, 0x1c, 0xe4, 0xa4, 0x88, 0x90, 0x22, 0x73, + 0x37, 0x07, 0x48, 0xd9, 0xde, 0xf0, 0xe4, 0x35, 0x8e, 0x90, 0xad, 0x31, 0xbb, 0xa9, 0xb8, 0x70, + 0xa4, 0x84, 0x23, 0x1d, 0xf3, 0x95, 0x9b, 0x0c, 0x4b, 0x47, 0x41, 0xcf, 0xbc, 0x83, 0x11, 0x47, + 0x74, 0x02, 0x93, 0x6b, 0x18, 0x9b, 0xdb, 0x35, 0xb0, 0x55, 0x67, 0x70, 0x89, 0x86, 0x79, 0x41, + 0xc7, 0x7a, 0x8e, 0xd9, 0x32, 0x60, 0xdb, 0xcb, 0xb8, 0x30, 0xd7, 0x76, 0x76, 0xba, 0x9a, 0xd2, + 0xf8, 0x71, 0x34, 0xa5, 0x89, 0x8f, 0x6a, 0x4a, 0xab, 0x38, 0x54, 0x06, 0xc6, 0x3b, 0x8a, 0xdb, + 0xde, 0x86, 0x6c, 0x4c, 0xca, 0x89, 0xb2, 0x58, 0x90, 0x1c, 0xc6, 0x6e, 0xbe, 0x52, 0x60, 0x6e, + 0xcf, 0x38, 0x5a, 0x33, 0x0a, 0x0b, 0x9c, 0x1c, 0xb0, 0xd8, 0x35, 0x1c, 0xe9, 0xb8, 0x68, 0x27, + 0x13, 0x1f, 0x42, 0xd3, 0xcd, 0x5a, 0xe7, 0x91, 0x9c, 0xc2, 0xa3, 0x0d, 0xad, 0x52, 0xf7, 0x12, + 0x56, 0x2c, 0xe6, 0x7d, 0x57, 0x51, 0xec, 0x06, 0x96, 0x7a, 0x6f, 0x71, 0x18, 0xfb, 0x5b, 0x81, + 0xd0, 0xa8, 0x14, 0x4c, 0xfe, 0x09, 0xe1, 0xb1, 0xce, 0xec, 0x20, 0xab, 0x78, 0xd4, 0x60, 0x50, + 0xa5, 0x51, 0xd1, 0x6e, 0x2f, 0x1f, 0x21, 0xbb, 0x14, 0x81, 0x40, 0x2e, 0xe2, 0xa0, 0x18, 0xe8, + 0xa3, 0x3e, 0x8e, 0x15, 0xed, 0xc1, 0xca, 0x3a, 0x42, 0x4e, 0xb2, 0xab, 0x97, 0x7c, 0x88, 0xc7, + 0x97, 0x78, 0x57, 0x3c, 0xfa, 0x88, 0x31, 0x83, 0xa5, 0x92, 0x66, 0x54, 0x54, 0xa3, 0xd4, 0xee, + 0x9e, 0xbc, 0xb2, 0x43, 0xca, 0x84, 0xb3, 0xbf, 0x5a, 0xf2, 0xba, 0xe2, 0xec, 0xb7, 0x08, 0x9f, + 0xee, 0x3b, 0x53, 0x90, 0x18, 0x9e, 0x5a, 0xc9, 0xe6, 0x55, 0x25, 0xb7, 0xa9, 0x2e, 0x6f, 0x28, + 0x77, 0x32, 0x79, 0x75, 0x29, 0xbb, 0x9c, 0xb9, 0xb7, 0x96, 0x97, 0x46, 0xc8, 0x4f, 0xf0, 0x74, + 0x8f, 0x6c, 0x79, 0x43, 0x51, 0x17, 0x95, 0x6c, 0x26, 0x9f, 0x95, 0x10, 0x89, 0xe3, 0x58, 0x1f, + 0xb1, 0x92, 0xdd, 0x5c, 0xcb, 0x2c, 0x66, 0x25, 0x1f, 0x99, 0xc6, 0xa7, 0x7b, 0xe4, 0xb9, 0x7c, + 0x26, 0x7f, 0x2f, 0x27, 0xf9, 0xc9, 0x19, 0xfc, 0xa3, 0x1e, 0x91, 0x92, 0xcd, 0x2c, 0x49, 0x01, + 0x72, 0x01, 0x27, 0x0e, 0x08, 0x96, 0xb3, 0x8a, 0xb2, 0xba, 0xbe, 0xa2, 0x6e, 0x2c, 0xdc, 0xca, + 0x2e, 0xe6, 0x73, 0xd2, 0x68, 0x1f, 0xad, 0x05, 0x65, 0xe3, 0x76, 0x76, 0x5d, 0x28, 0x67, 0xd7, + 0x17, 0xb3, 0x39, 0x29, 0x38, 0xf7, 0xc7, 0x08, 0xf6, 0x67, 0x36, 0x57, 0xc9, 0x1f, 0x7c, 0x38, + 0x28, 0x26, 0x1c, 0x32, 0xf4, 0x30, 0x14, 0xbb, 0x34, 0x84, 0x85, 0x3b, 0x3a, 0xfe, 0x15, 0xb5, + 0xfe, 0x1f, 0xbd, 0x5d, 0xba, 0xf2, 0x48, 0x4f, 0x51, 0xd0, 0xeb, 0x36, 0x54, 0x81, 0x3e, 0x48, + 0x15, 0x34, 0x6a, 0xe8, 0x29, 0xc7, 0xfc, 0x67, 0xbd, 0x22, 0xca, 0xb4, 0x5a, 0x51, 0xb3, 0x8b, + 0x42, 0xda, 0x00, 0x9a, 0x32, 0xcc, 0x94, 0x65, 0x9b, 0x8f, 0x9a, 0xa9, 0x6d, 0xdb, 0x60, 0xf0, + 0xf8, 0x8b, 0xaf, 0x9e, 0xf8, 0x32, 0xc9, 0xeb, 0xee, 0x4b, 0x6e, 0xba, 0x9d, 0x15, 0x34, 0xfd, + 0x5b, 0xaf, 0x79, 0xc8, 0xed, 0xcd, 0x9d, 0x7e, 0xaf, 0x75, 0x74, 0x1e, 0xcd, 0x92, 0xdf, 0xfb, + 0xb0, 0x7f, 0x05, 0x18, 0x49, 0x0d, 0x3a, 0x81, 0x0a, 0x0a, 0xe4, 0xe1, 0x06, 0xd6, 0xe4, 0x33, + 0xf4, 0xe2, 0x7f, 0x3e, 0x87, 0x83, 0xcd, 0xfe, 0x1c, 0x54, 0xcd, 0x9a, 0xc1, 0xcc, 0x0f, 0xd0, + 0xe0, 0x29, 0x74, 0x31, 0x61, 0x83, 0x56, 0xe4, 0x44, 0x5c, 0x27, 0xf3, 0xfd, 0x88, 0x38, 0x24, + 0x7e, 0xa1, 0xb0, 0x43, 0xbe, 0x43, 0x38, 0xe0, 0x14, 0x31, 0x91, 0x07, 0xae, 0x76, 0xc1, 0x42, + 0x7a, 0xc8, 0xee, 0x90, 0x7c, 0xf2, 0x69, 0x69, 0xb8, 0x42, 0x2e, 0x1f, 0x81, 0x06, 0xf2, 0xd4, + 0x87, 0x4f, 0xb8, 0xa3, 0x39, 0x19, 0x7e, 0x8c, 0x8f, 0xcd, 0x0d, 0x63, 0xe2, 0x12, 0xf1, 0xaf, + 0x4f, 0x52, 0x0f, 0x77, 0x63, 0x6b, 0x1f, 0x53, 0x0f, 0x3d, 0x9a, 0x3b, 0x4e, 0x7d, 0x7c, 0x83, + 0x70, 0x50, 0xf4, 0xe4, 0x81, 0x1a, 0x45, 0x57, 0xfb, 0x8e, 0x4d, 0xc9, 0xe2, 0xe3, 0x8f, 0xec, + 0x7d, 0xfc, 0x91, 0xb3, 0x55, 0x8b, 0x35, 0x93, 0x7f, 0xf9, 0x24, 0xd1, 0xdf, 0x9c, 0xfd, 0x88, + 0x22, 0x98, 0x47, 0xb3, 0xb1, 0xca, 0xf3, 0x5d, 0xe4, 0xfb, 0x7c, 0x17, 0xcd, 0x1c, 0x1e, 0xa7, + 0xf8, 0x3f, 0xdf, 0xdb, 0x45, 0xa8, 0xb5, 0x8b, 0x86, 0x9c, 0x02, 0x1e, 0x7f, 0x16, 0xf5, 0x49, + 0x68, 0xe1, 0x29, 0x7a, 0x79, 0x63, 0x74, 0x51, 0xb9, 0xb7, 0xb4, 0xf6, 0xea, 0x75, 0x7c, 0x64, + 0xef, 0x75, 0x7c, 0xe4, 0xed, 0xeb, 0x38, 0xfa, 0x5d, 0x2b, 0x8e, 0xfe, 0xdd, 0x8a, 0xa3, 0x17, + 0xad, 0x38, 0x7a, 0xd5, 0x8a, 0xa3, 0x2f, 0x5b, 0x71, 0xf4, 0xa6, 0x15, 0x1f, 0x79, 0xdb, 0x8a, + 0xa3, 0x3f, 0xef, 0xc7, 0x47, 0x9e, 0xef, 0xc7, 0xd1, 0xab, 0xfd, 0xf8, 0xc8, 0xde, 0x7e, 0x7c, + 0xe4, 0x57, 0xf7, 0xcb, 0xa6, 0xf5, 0xb0, 0x2c, 0x37, 0x4c, 0x67, 0xfa, 0xb6, 0x9d, 0x93, 0xd3, + 0xfc, 0xc1, 0x79, 0x2d, 0x75, 0xe8, 0x69, 0x18, 0x45, 0xb0, 0x53, 0x9e, 0x38, 0x6d, 0x15, 0xca, + 0x66, 0x1a, 0x1e, 0x31, 0xf7, 0xb3, 0xd4, 0xfb, 0x3f, 0x78, 0x15, 0x82, 0xfc, 0xc2, 0x2e, 0xff, + 0x10, 0x00, 0x00, 0xff, 0xff, 0x13, 0x5d, 0x83, 0xba, 0x65, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/user_identification/public_crudapi.vesapi.go b/pbgo/extschema/schema/user_identification/public_crudapi.vesapi.go index 1352aed79..c3c5420f2 100644 --- a/pbgo/extschema/schema/user_identification/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/user_identification/public_crudapi.vesapi.go @@ -2357,10 +2357,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2417,10 +2421,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2523,10 +2531,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/vesenv/all_addon_service_groups.pb.go b/pbgo/extschema/schema/vesenv/all_addon_service_groups.pb.go index 744a31c9b..00041673e 100644 --- a/pbgo/extschema/schema/vesenv/all_addon_service_groups.pb.go +++ b/pbgo/extschema/schema/vesenv/all_addon_service_groups.pb.go @@ -188,6 +188,16 @@ const ( // x-displayName: "ClearView" // clearview CLEARVIEW AddonServiceGroup = 31 + // data_intelligence + // + // x-displayName: "Data Intelligence" + // data-intelligence + DATA_INTELLIGENCE AddonServiceGroup = 32 + // web-app-scanning + // + // x-displayName: "Web App Scanning" + // Web App Scanning + WEB_APP_SCANNING AddonServiceGroup = 33 ) var AddonServiceGroup_name = map[int32]string{ @@ -223,6 +233,8 @@ var AddonServiceGroup_name = map[int32]string{ 29: "F5XC_APPLICATION_TRAFFIC_INSIGHT", 30: "NGINX_ONE", 31: "CLEARVIEW", + 32: "DATA_INTELLIGENCE", + 33: "WEB_APP_SCANNING", } var AddonServiceGroup_value = map[string]int32{ @@ -258,6 +270,8 @@ var AddonServiceGroup_value = map[string]int32{ "F5XC_APPLICATION_TRAFFIC_INSIGHT": 29, "NGINX_ONE": 30, "CLEARVIEW": 31, + "DATA_INTELLIGENCE": 32, + "WEB_APP_SCANNING": 33, } func (AddonServiceGroup) EnumDescriptor() ([]byte, []int) { @@ -273,90 +287,95 @@ func init() { } var fileDescriptor_3305789722b0ae1a = []byte{ - // 1326 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x55, 0xcb, 0x6e, 0xdb, 0xc6, - 0x1a, 0xb6, 0x4e, 0x7c, 0x1c, 0x6b, 0x1c, 0xc7, 0xe3, 0xf1, 0x8d, 0xa1, 0x63, 0x66, 0x92, 0x83, - 0x5c, 0x9c, 0x44, 0x32, 0x7c, 0x02, 0x1f, 0x1c, 0x34, 0x6d, 0xd1, 0x11, 0x39, 0x92, 0xd9, 0x4a, - 0x24, 0x21, 0xd2, 0x76, 0x9a, 0x0d, 0x41, 0x93, 0x23, 0x99, 0x30, 0xcd, 0x21, 0x48, 0xca, 0x4e, - 0xba, 0xca, 0x1b, 0xb4, 0x8f, 0xd1, 0x77, 0xe0, 0x0b, 0x74, 0x19, 0x70, 0x95, 0x65, 0xe3, 0x6c, - 0xba, 0xcc, 0x23, 0x14, 0xa4, 0x28, 0x5f, 0x82, 0x74, 0x43, 0x10, 0x33, 0xdf, 0xf7, 0xdf, 0xff, - 0x6f, 0xc0, 0x8b, 0x53, 0x96, 0x34, 0x7d, 0xbe, 0x95, 0xb8, 0x47, 0xec, 0xc4, 0xd9, 0x3a, 0x65, - 0x09, 0x0b, 0x4f, 0xb7, 0x9c, 0x20, 0xb0, 0x1d, 0xcf, 0xe3, 0xa1, 0x9d, 0xb0, 0xf8, 0xd4, 0x77, - 0x99, 0x3d, 0x8c, 0xf9, 0x28, 0x4a, 0x9a, 0x51, 0xcc, 0x53, 0x8e, 0x96, 0xc7, 0xa4, 0xe6, 0x98, - 0xd4, 0x1c, 0x93, 0xc4, 0x07, 0x5f, 0x35, 0xc5, 0xa3, 0xd4, 0xe7, 0x61, 0xc5, 0x14, 0xf1, 0x17, - 0x18, 0x9f, 0x9d, 0xd9, 0xd7, 0x10, 0x4f, 0x7f, 0xbd, 0x0d, 0x16, 0x49, 0xe1, 0xda, 0x1c, 0x7b, - 0xee, 0x14, 0x8e, 0xd1, 0x3d, 0x50, 0x6f, 0xef, 0xbc, 0x92, 0x6d, 0x4d, 0xd7, 0x28, 0x9c, 0x12, - 0x61, 0x9e, 0x09, 0xb7, 0xc0, 0x74, 0xc8, 0x43, 0x86, 0xc6, 0xdf, 0x46, 0x05, 0x68, 0x11, 0x93, - 0xc2, 0x9a, 0x28, 0xe5, 0x99, 0x20, 0x82, 0x69, 0xf6, 0xf6, 0xcc, 0x41, 0xa8, 0xb8, 0xc0, 0x2d, - 0x27, 0x61, 0xb8, 0xb2, 0x99, 0xa0, 0xef, 0xc0, 0x62, 0x09, 0x97, 0x75, 0xcd, 0xd4, 0xbb, 0x74, - 0x4c, 0xfb, 0x97, 0xf8, 0x28, 0xcf, 0x84, 0x07, 0x15, 0x4d, 0x2c, 0x69, 0x32, 0x0f, 0x13, 0x1e, - 0xb0, 0x2f, 0xe8, 0x2f, 0xc1, 0x5a, 0x49, 0x37, 0xf7, 0x0c, 0x43, 0xef, 0x5b, 0xb6, 0x6e, 0xd0, - 0x3e, 0xb1, 0x54, 0x5d, 0x33, 0xe1, 0x8d, 0xeb, 0xbe, 0xcd, 0x51, 0x14, 0xf1, 0x38, 0xc5, 0x7a, - 0xc4, 0x62, 0xa7, 0xcc, 0x13, 0x7d, 0x0f, 0xd6, 0xf6, 0xa9, 0x69, 0xab, 0xba, 0xbd, 0xaf, 0x77, - 0x2d, 0xda, 0xef, 0x13, 0x5b, 0xa1, 0x6d, 0xb2, 0xd7, 0xb5, 0xe0, 0xb4, 0x78, 0x3f, 0xcf, 0x84, - 0x8d, 0x8a, 0xbc, 0x52, 0x46, 0xa0, 0xb0, 0x81, 0x33, 0x0a, 0xd2, 0x4b, 0xe7, 0xdf, 0x00, 0xa1, - 0xe2, 0x5b, 0x54, 0x23, 0x9a, 0x65, 0xf7, 0x88, 0x46, 0x3a, 0xb4, 0x47, 0x35, 0x0b, 0xfe, 0x5b, - 0xbc, 0x9b, 0x67, 0x82, 0x50, 0x19, 0x80, 0x0a, 0x0b, 0xd8, 0xd0, 0x49, 0x99, 0x87, 0x89, 0xeb, - 0xb2, 0xa4, 0x08, 0xfc, 0x4e, 0xc5, 0x9d, 0x84, 0x7e, 0x85, 0x3c, 0x73, 0x9d, 0xac, 0x86, 0x29, - 0x8b, 0x43, 0x27, 0xc0, 0x55, 0x0e, 0xe8, 0x25, 0x98, 0x9b, 0x90, 0x65, 0xb5, 0x07, 0x6f, 0x8a, - 0x4f, 0xf3, 0x4c, 0x78, 0x54, 0xc1, 0xa5, 0xbd, 0x84, 0xc5, 0x5b, 0xe5, 0x98, 0xe0, 0x28, 0xe6, - 0xa7, 0x7e, 0xe2, 0xf3, 0xd0, 0x0f, 0x87, 0xf8, 0x49, 0x01, 0xde, 0x44, 0x0f, 0x41, 0xdd, 0xdc, - 0x25, 0x06, 0xb5, 0x5b, 0xba, 0x05, 0x67, 0xc5, 0xd5, 0x3c, 0x13, 0x10, 0xb8, 0x91, 0x30, 0x0f, - 0xcd, 0xb5, 0x78, 0x5a, 0x64, 0xc9, 0xc2, 0x84, 0x21, 0x02, 0x16, 0xc6, 0xb0, 0x3e, 0x95, 0xf5, - 0x8e, 0xa6, 0xbe, 0xa6, 0xb0, 0x2e, 0x3e, 0xcf, 0x33, 0xe1, 0x09, 0xa8, 0xc7, 0xcc, 0xe5, 0xc3, - 0xd0, 0xff, 0x85, 0xa1, 0x75, 0x32, 0x4a, 0x8f, 0x58, 0x98, 0xfa, 0x6e, 0x59, 0x53, 0x5c, 0x84, - 0x1a, 0x04, 0xfe, 0x90, 0x85, 0x2e, 0x43, 0xdb, 0x60, 0x8e, 0xa8, 0x0a, 0xb1, 0x88, 0xdd, 0x6a, - 0x2b, 0x06, 0x04, 0x22, 0xce, 0x33, 0xe1, 0x2e, 0x98, 0x3e, 0x1c, 0x78, 0x11, 0x5a, 0x6e, 0xf9, - 0x43, 0xdc, 0xde, 0xc1, 0x9e, 0x93, 0x3a, 0x38, 0x0a, 0x9c, 0x74, 0xc0, 0xe3, 0x13, 0xf4, 0x3f, - 0x50, 0xef, 0xaa, 0x5d, 0x22, 0xdb, 0xb2, 0xa2, 0xc1, 0x39, 0xf1, 0x71, 0x9e, 0x09, 0xff, 0x01, - 0x0b, 0xae, 0x17, 0xba, 0x3c, 0x0c, 0x99, 0x9b, 0xf2, 0x38, 0x39, 0x75, 0x11, 0x94, 0x15, 0x0d, - 0x77, 0xb9, 0xe3, 0x1d, 0x3a, 0x81, 0x13, 0xba, 0x2c, 0x46, 0x3f, 0x00, 0xa8, 0x75, 0x54, 0xed, - 0x95, 0xdd, 0xeb, 0xf4, 0x2c, 0xdb, 0xdc, 0x53, 0x2d, 0x0a, 0x6f, 0x55, 0x65, 0xb9, 0x15, 0x9e, - 0x24, 0x17, 0x74, 0xb4, 0x5a, 0xe2, 0x70, 0xcf, 0x09, 0x9d, 0x21, 0x3b, 0x61, 0x61, 0x8a, 0xcd, - 0x91, 0x9f, 0x32, 0xd4, 0x02, 0x8b, 0xe6, 0xcf, 0x9a, 0xb5, 0x4b, 0x2d, 0x55, 0xb6, 0x7b, 0xba, - 0xa6, 0x5a, 0x7a, 0x1f, 0xce, 0x8b, 0xcf, 0xf2, 0x4c, 0x78, 0x0c, 0x16, 0x93, 0xb7, 0x61, 0x7a, - 0xc4, 0x52, 0xdf, 0x6d, 0x9c, 0xf0, 0xd0, 0x2f, 0xec, 0x20, 0x73, 0x72, 0x84, 0x7b, 0xe3, 0xa3, - 0x04, 0xdd, 0x07, 0x33, 0x26, 0x69, 0x53, 0x62, 0xc0, 0xdb, 0xe2, 0x4a, 0x9e, 0x09, 0x8b, 0x60, - 0x26, 0x71, 0x06, 0xcc, 0x89, 0xd0, 0x4d, 0xd3, 0x19, 0x30, 0x4c, 0x0c, 0x44, 0xc1, 0x3c, 0x51, - 0x8d, 0x62, 0xdc, 0x35, 0x2a, 0x17, 0x2e, 0x16, 0xc4, 0xff, 0xe6, 0x99, 0xd0, 0x04, 0xf3, 0x8e, - 0x1f, 0xd9, 0x97, 0x61, 0x6e, 0x90, 0x28, 0xc2, 0x6a, 0x38, 0x88, 0x9d, 0x24, 0x8d, 0x47, 0x6e, - 0x3a, 0x8a, 0x19, 0x36, 0x62, 0x9e, 0x32, 0xb7, 0xa8, 0x33, 0xea, 0x80, 0x25, 0xb9, 0xab, 0x52, - 0xcd, 0xb2, 0x4d, 0x55, 0xa1, 0xc5, 0xd8, 0x52, 0xcd, 0xa4, 0x10, 0x8a, 0xcd, 0x3c, 0x13, 0x9e, - 0x82, 0x25, 0x37, 0xf0, 0x59, 0x98, 0x36, 0x12, 0xdf, 0x63, 0x0d, 0xaf, 0xea, 0xe8, 0x92, 0x3c, - 0x3e, 0x34, 0x7d, 0x8f, 0x5d, 0xb4, 0xf9, 0x39, 0x80, 0xe3, 0x75, 0xd5, 0xad, 0x0b, 0x2b, 0x8b, - 0xff, 0x38, 0x14, 0xcf, 0xc0, 0xc2, 0x18, 0xad, 0x76, 0x6c, 0xd5, 0xb0, 0x89, 0xd1, 0x83, 0xa8, - 0x02, 0x4f, 0x3b, 0xc7, 0x4e, 0x8c, 0x40, 0x4b, 0xed, 0x34, 0x54, 0x03, 0x13, 0xa3, 0x87, 0xfe, - 0x0f, 0x56, 0x4b, 0x70, 0x4f, 0x6f, 0xa9, 0x5d, 0x6a, 0xab, 0x9a, 0x45, 0x3b, 0x7d, 0x52, 0xe4, - 0xbc, 0x54, 0xcd, 0x77, 0xe9, 0x60, 0xb1, 0xc7, 0x0f, 0xfd, 0x80, 0x95, 0xa3, 0x33, 0x8c, 0x9d, - 0x22, 0xf9, 0x1d, 0xb0, 0x5c, 0x32, 0xdb, 0x5d, 0xfd, 0xc0, 0x96, 0xf5, 0x6e, 0x97, 0xca, 0xc5, - 0x4e, 0xc3, 0x65, 0x71, 0x3d, 0xcf, 0x84, 0xb5, 0xca, 0xd7, 0x42, 0x3b, 0xe0, 0x67, 0x58, 0xe6, - 0x41, 0x50, 0x15, 0x05, 0x83, 0xd9, 0x92, 0xa6, 0x68, 0x26, 0x5c, 0x11, 0x51, 0x9e, 0x09, 0xb7, - 0xc1, 0xcd, 0x43, 0x7f, 0x10, 0xf3, 0x24, 0x45, 0x37, 0x14, 0xcd, 0x44, 0x5d, 0xb0, 0x31, 0x56, - 0x9b, 0x5d, 0xb5, 0xab, 0x5c, 0xd9, 0xb8, 0xc9, 0x12, 0xc2, 0x55, 0x71, 0x33, 0xcf, 0x84, 0x87, - 0xd5, 0x2a, 0x6d, 0xb4, 0x77, 0xde, 0xb8, 0xd8, 0x3d, 0xf2, 0x03, 0x0f, 0x9f, 0x5c, 0x0e, 0x4c, - 0x52, 0xad, 0xe1, 0xb7, 0x60, 0xe5, 0xab, 0xd6, 0xe0, 0xda, 0x57, 0xd4, 0x43, 0x2e, 0xad, 0x5c, - 0x8e, 0x1d, 0xda, 0xae, 0x2a, 0xdf, 0xd7, 0xf7, 0x2c, 0xaa, 0xd8, 0x8a, 0xa2, 0x9b, 0x50, 0xa8, - 0x12, 0x9c, 0x2d, 0x24, 0x98, 0x1d, 0xa7, 0x3e, 0x9a, 0xeb, 0xf3, 0x51, 0x21, 0x1b, 0x8a, 0xc2, - 0x4d, 0xf4, 0x18, 0xcc, 0x97, 0x14, 0x62, 0x18, 0xa6, 0x45, 0xe4, 0x9f, 0xe0, 0x1d, 0x71, 0x39, - 0xcf, 0x04, 0x58, 0x15, 0x64, 0x96, 0x44, 0x91, 0x99, 0x3a, 0xee, 0xf1, 0x45, 0x9f, 0x4c, 0x2a, - 0xef, 0xf5, 0x69, 0x8f, 0x9a, 0xbb, 0x50, 0xbc, 0xde, 0x27, 0x93, 0xb9, 0xa3, 0x98, 0xf5, 0x58, - 0x72, 0x84, 0x94, 0x4a, 0xb1, 0x0f, 0x08, 0x31, 0xe0, 0xba, 0xb8, 0x93, 0x67, 0xc2, 0x76, 0x05, - 0xdb, 0x3c, 0x60, 0x87, 0x98, 0x44, 0x51, 0x30, 0xd9, 0x6f, 0x27, 0xf4, 0x30, 0x31, 0xd4, 0x2b, - 0xa3, 0x88, 0x9f, 0x14, 0xbc, 0xcd, 0x8b, 0x9e, 0x99, 0xaa, 0x45, 0xaf, 0xd6, 0xe2, 0xee, 0xf5, - 0x9e, 0x99, 0x7e, 0xca, 0xae, 0x56, 0xa1, 0x0f, 0xf0, 0x24, 0xa5, 0xae, 0x2a, 0x97, 0xd2, 0x6d, - 0x5b, 0x7d, 0xd2, 0x6e, 0xab, 0xb2, 0xad, 0x6a, 0xa6, 0xda, 0xd9, 0xb5, 0xe0, 0xc6, 0x44, 0x77, - 0x3c, 0x56, 0x08, 0x6f, 0xc3, 0xf7, 0xd0, 0xfa, 0xd5, 0xa0, 0xac, 0xd8, 0x19, 0x0c, 0x7c, 0x17, - 0xab, 0x61, 0xe2, 0x0f, 0x8f, 0x52, 0xf4, 0x0c, 0xd4, 0xc7, 0x62, 0x50, 0xbc, 0x51, 0x52, 0x35, - 0x6b, 0x73, 0xe1, 0xf6, 0xe5, 0x76, 0x8d, 0xef, 0xb1, 0x1e, 0x32, 0xb4, 0x09, 0xea, 0x72, 0x97, - 0x92, 0xfe, 0xbe, 0x4a, 0x0f, 0xe0, 0x3d, 0x51, 0xcc, 0x33, 0x61, 0x15, 0xd4, 0xdd, 0x80, 0x39, - 0x71, 0xf1, 0x28, 0xa2, 0xba, 0x5c, 0xfc, 0xee, 0xfb, 0xec, 0xac, 0xf5, 0xae, 0xf6, 0xfe, 0xa3, - 0x34, 0xf5, 0xe1, 0xa3, 0x34, 0xf5, 0xf9, 0xa3, 0x54, 0x7b, 0x77, 0x2e, 0xd5, 0x7e, 0x3f, 0x97, - 0x6a, 0x7f, 0x9c, 0x4b, 0xb5, 0xf7, 0xe7, 0x52, 0xed, 0xcf, 0x73, 0xa9, 0xf6, 0xd7, 0xb9, 0x34, - 0xf5, 0xf9, 0x5c, 0xaa, 0xfd, 0xf6, 0x49, 0x9a, 0x7a, 0xff, 0x49, 0x9a, 0xfa, 0xf0, 0x49, 0x9a, - 0x7a, 0xfd, 0xe3, 0x90, 0x47, 0xc7, 0xc3, 0xe6, 0x29, 0x0f, 0x52, 0x16, 0xc7, 0x4e, 0x73, 0x94, - 0x6c, 0x95, 0x3f, 0x85, 0xe0, 0x35, 0x4a, 0x85, 0xf6, 0x58, 0xdc, 0x98, 0x5c, 0x6f, 0x45, 0x87, - 0x43, 0xbe, 0xc5, 0xde, 0xa4, 0xd5, 0xcb, 0x7c, 0xed, 0x11, 0x3f, 0x9c, 0x29, 0xdf, 0xe6, 0x17, - 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x99, 0x73, 0xcc, 0xab, 0x2e, 0x08, 0x00, 0x00, + // 1408 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x56, 0xdd, 0x72, 0xdb, 0xc6, + 0x15, 0x16, 0x6b, 0xd5, 0x36, 0x57, 0x76, 0xb4, 0x5c, 0xcb, 0x32, 0x02, 0x5b, 0xc8, 0x3a, 0x6d, + 0x62, 0xcb, 0x0e, 0xa9, 0x71, 0x33, 0xea, 0x74, 0x9a, 0xb6, 0xe9, 0x12, 0x58, 0x52, 0xdb, 0x82, + 0x00, 0x86, 0x80, 0xac, 0x34, 0x37, 0x98, 0x25, 0xb0, 0x24, 0x31, 0x82, 0x00, 0x0c, 0x00, 0xd2, + 0x51, 0xaf, 0xf2, 0x08, 0xed, 0x5b, 0xf4, 0x1d, 0xf0, 0x02, 0xbd, 0xf4, 0xe0, 0x2a, 0x97, 0xb5, + 0x7c, 0xd3, 0xcb, 0x3c, 0x42, 0x07, 0x20, 0xa8, 0x1f, 0x8f, 0x7b, 0x83, 0xc1, 0x00, 0xdf, 0x77, + 0xce, 0x9e, 0x73, 0xbe, 0xf3, 0x01, 0xe0, 0xeb, 0xa5, 0xc8, 0x7a, 0x41, 0x7c, 0x90, 0x79, 0x73, + 0x71, 0xc6, 0x0f, 0x96, 0x22, 0x13, 0xd1, 0xf2, 0x80, 0x87, 0xa1, 0xcb, 0x7d, 0x3f, 0x8e, 0xdc, + 0x4c, 0xa4, 0xcb, 0xc0, 0x13, 0xee, 0x2c, 0x8d, 0x17, 0x49, 0xd6, 0x4b, 0xd2, 0x38, 0x8f, 0xd1, + 0xce, 0x8a, 0xd4, 0x5b, 0x91, 0x7a, 0x2b, 0x92, 0xfc, 0xf9, 0x47, 0x43, 0xc5, 0x49, 0x1e, 0xc4, + 0x51, 0xc3, 0x94, 0xf1, 0x07, 0x98, 0x40, 0xbc, 0x71, 0x6f, 0x20, 0x5e, 0xfc, 0x73, 0x1b, 0x74, + 0x48, 0x95, 0xda, 0x5e, 0x65, 0x1e, 0x56, 0x89, 0xd1, 0x67, 0xa0, 0x3d, 0x38, 0xfc, 0x4e, 0x75, + 0x0d, 0xd3, 0xa0, 0x70, 0x43, 0x86, 0x65, 0x21, 0xdd, 0x03, 0x9b, 0x51, 0x1c, 0x09, 0xb4, 0xba, + 0x76, 0x1b, 0x40, 0x9f, 0xd8, 0x14, 0xb6, 0x64, 0xa5, 0x2c, 0x24, 0x19, 0x6c, 0x8a, 0xf3, 0x37, + 0x1c, 0xa1, 0xea, 0x05, 0xee, 0xf3, 0x4c, 0xe0, 0x26, 0x66, 0x86, 0xfe, 0x08, 0x3a, 0x35, 0x5c, + 0x35, 0x0d, 0xdb, 0xd4, 0xe9, 0x8a, 0xf6, 0x0b, 0xf9, 0xcb, 0xb2, 0x90, 0x3e, 0x6f, 0x68, 0x72, + 0x4d, 0x53, 0xe3, 0x28, 0x8b, 0x43, 0xf1, 0x01, 0xfd, 0x1b, 0xf0, 0xa8, 0xa6, 0xdb, 0xc7, 0x96, + 0x65, 0x8e, 0x1d, 0xd7, 0xb4, 0xe8, 0x98, 0x38, 0xcc, 0x34, 0x6c, 0x78, 0xeb, 0x66, 0x6e, 0x7b, + 0x91, 0x24, 0x71, 0x9a, 0x63, 0x33, 0x11, 0x29, 0xaf, 0xeb, 0x44, 0x7f, 0x02, 0x8f, 0x5e, 0x53, + 0xdb, 0x65, 0xa6, 0xfb, 0xda, 0xd4, 0x1d, 0x3a, 0x1e, 0x13, 0x57, 0xa3, 0x03, 0x72, 0xac, 0x3b, + 0x70, 0x53, 0x7e, 0x5a, 0x16, 0xd2, 0x5e, 0x43, 0x7e, 0x58, 0x9f, 0x40, 0x13, 0x53, 0xbe, 0x08, + 0xf3, 0xab, 0xe4, 0xbf, 0x07, 0x52, 0xc3, 0x77, 0xa8, 0x41, 0x0c, 0xc7, 0x1d, 0x11, 0x83, 0x0c, + 0xe9, 0x88, 0x1a, 0x0e, 0xfc, 0xa5, 0xfc, 0xa4, 0x2c, 0x24, 0xa9, 0x09, 0x00, 0x35, 0x11, 0x8a, + 0x19, 0xcf, 0x85, 0x8f, 0x89, 0xe7, 0x89, 0xac, 0x3a, 0xf8, 0xa7, 0x0d, 0x77, 0x7d, 0xf4, 0x6b, + 0xe4, 0xdb, 0x37, 0xc9, 0x2c, 0xca, 0x45, 0x1a, 0xf1, 0x10, 0x37, 0x35, 0xa0, 0x6f, 0xc0, 0xd6, + 0x9a, 0xac, 0xb2, 0x11, 0xbc, 0x23, 0xbf, 0x28, 0x0b, 0xe9, 0xcb, 0x06, 0xae, 0x1c, 0x67, 0x22, + 0x3d, 0xa8, 0x65, 0x82, 0x93, 0x34, 0x5e, 0x06, 0x59, 0x10, 0x47, 0x41, 0x34, 0xc3, 0xcf, 0x2b, + 0xf0, 0x3e, 0xfa, 0x02, 0xb4, 0xed, 0x23, 0x62, 0x51, 0xb7, 0x6f, 0x3a, 0xf0, 0xae, 0xbc, 0x5b, + 0x16, 0x12, 0x02, 0xb7, 0x32, 0xe1, 0xa3, 0xad, 0x7e, 0x9c, 0x57, 0x55, 0x8a, 0x28, 0x13, 0x88, + 0x80, 0xed, 0x15, 0x6c, 0x4c, 0x55, 0x73, 0x68, 0xb0, 0xef, 0x29, 0x6c, 0xcb, 0x5f, 0x95, 0x85, + 0xf4, 0x1c, 0xb4, 0x53, 0xe1, 0xc5, 0xb3, 0x28, 0xf8, 0xbb, 0x40, 0x8f, 0xc9, 0x22, 0x9f, 0x8b, + 0x28, 0x0f, 0xbc, 0xba, 0xa7, 0xb8, 0x3a, 0x6a, 0x18, 0x06, 0x33, 0x11, 0x79, 0x02, 0xbd, 0x02, + 0x5b, 0x84, 0x69, 0xc4, 0x21, 0x6e, 0x7f, 0xa0, 0x59, 0x10, 0xc8, 0xb8, 0x2c, 0xa4, 0x27, 0x60, + 0x73, 0x32, 0xf5, 0x13, 0xb4, 0xd3, 0x0f, 0x66, 0x78, 0x70, 0x88, 0x7d, 0x9e, 0x73, 0x9c, 0x84, + 0x3c, 0x9f, 0xc6, 0xe9, 0x19, 0xfa, 0x2d, 0x68, 0xeb, 0x4c, 0x27, 0xaa, 0xab, 0x6a, 0x06, 0xdc, + 0x92, 0x9f, 0x95, 0x85, 0xf4, 0x2b, 0xb0, 0xed, 0xf9, 0x91, 0x17, 0x47, 0x91, 0xf0, 0xf2, 0x38, + 0xcd, 0x96, 0x1e, 0x82, 0xaa, 0x66, 0x60, 0x3d, 0xe6, 0xfe, 0x84, 0x87, 0x3c, 0xf2, 0x44, 0x8a, + 0xfe, 0x0c, 0xa0, 0x31, 0x64, 0xc6, 0x77, 0xee, 0x68, 0x38, 0x72, 0x5c, 0xfb, 0x98, 0x39, 0x14, + 0xde, 0x6b, 0xda, 0x72, 0x2f, 0x3a, 0xcb, 0x2e, 0xe9, 0x68, 0xb7, 0xc6, 0xe1, 0x11, 0x8f, 0xf8, + 0x4c, 0x9c, 0x89, 0x28, 0xc7, 0xf6, 0x22, 0xc8, 0x05, 0xea, 0x83, 0x8e, 0xfd, 0x37, 0xc3, 0x39, + 0xa2, 0x0e, 0x53, 0xdd, 0x91, 0x69, 0x30, 0xc7, 0x1c, 0xc3, 0xfb, 0xf2, 0xcb, 0xb2, 0x90, 0x9e, + 0x81, 0x4e, 0x76, 0x1e, 0xe5, 0x73, 0x91, 0x07, 0x5e, 0xf7, 0x2c, 0x8e, 0x82, 0x2a, 0x0e, 0xb2, + 0xd7, 0x8f, 0xf0, 0x68, 0xf5, 0x28, 0x43, 0x4f, 0xc1, 0x6d, 0x9b, 0x0c, 0x28, 0xb1, 0xe0, 0x27, + 0xf2, 0xc3, 0xb2, 0x90, 0x3a, 0xe0, 0x76, 0xc6, 0xa7, 0x82, 0x27, 0xe8, 0x8e, 0xcd, 0xa7, 0x02, + 0x13, 0x0b, 0x51, 0x70, 0x9f, 0x30, 0xab, 0x92, 0xbb, 0x41, 0xd5, 0x2a, 0xc5, 0xb6, 0xfc, 0x9b, + 0xb2, 0x90, 0x7a, 0xe0, 0x3e, 0x0f, 0x12, 0xf7, 0xea, 0x98, 0x7b, 0x24, 0x49, 0x30, 0x8b, 0xa6, + 0x29, 0xcf, 0xf2, 0x74, 0xe1, 0xe5, 0x8b, 0x54, 0x60, 0x2b, 0x8d, 0x73, 0xe1, 0x55, 0x7d, 0x46, + 0x43, 0xf0, 0x40, 0xd5, 0x19, 0x35, 0x1c, 0xd7, 0x66, 0x1a, 0xad, 0x64, 0x4b, 0x0d, 0x9b, 0x42, + 0x28, 0xf7, 0xca, 0x42, 0x7a, 0x01, 0x1e, 0x78, 0x61, 0x20, 0xa2, 0xbc, 0x9b, 0x05, 0xbe, 0xe8, + 0xfa, 0xcd, 0x44, 0x1f, 0xa8, 0xab, 0x87, 0x76, 0xe0, 0x8b, 0xcb, 0x31, 0x7f, 0x05, 0xe0, 0x6a, + 0x5d, 0x4d, 0xe7, 0x32, 0x4a, 0xe7, 0xff, 0x8a, 0xe2, 0x25, 0xd8, 0x5e, 0xa1, 0xd9, 0xd0, 0x65, + 0x96, 0x4b, 0xac, 0x11, 0x44, 0x0d, 0x78, 0x93, 0x9f, 0xf2, 0x14, 0x81, 0x3e, 0x1b, 0x76, 0x99, + 0x85, 0x89, 0x35, 0x42, 0xbf, 0x03, 0xbb, 0x35, 0x78, 0x64, 0xf6, 0x99, 0x4e, 0x5d, 0x66, 0x38, + 0x74, 0x38, 0x26, 0x55, 0xcd, 0x0f, 0x1a, 0x7d, 0xd7, 0x09, 0x3a, 0xa3, 0x78, 0x12, 0x84, 0xa2, + 0x96, 0xce, 0x2c, 0xe5, 0x55, 0xf1, 0x87, 0x60, 0xa7, 0x66, 0x0e, 0x74, 0xf3, 0xc4, 0x55, 0x4d, + 0x5d, 0xa7, 0x6a, 0xb5, 0xd3, 0x70, 0x47, 0x7e, 0x5c, 0x16, 0xd2, 0xa3, 0x26, 0xd7, 0xf6, 0x20, + 0x8c, 0xdf, 0x60, 0x35, 0x0e, 0xc3, 0xa6, 0x29, 0x18, 0xdc, 0xad, 0x69, 0x9a, 0x61, 0xc3, 0x87, + 0x32, 0x2a, 0x0b, 0xe9, 0x13, 0x70, 0x67, 0x12, 0x4c, 0xd3, 0x38, 0xcb, 0xd1, 0x2d, 0xcd, 0xb0, + 0x91, 0x0e, 0xf6, 0x56, 0x6e, 0x73, 0xc4, 0x74, 0xed, 0xda, 0xc6, 0xad, 0x97, 0x10, 0xee, 0xca, + 0xfb, 0x65, 0x21, 0x7d, 0xd1, 0xac, 0xd2, 0xde, 0xe0, 0xf0, 0x07, 0x0f, 0x7b, 0xf3, 0x20, 0xf4, + 0xf1, 0xd9, 0x95, 0x60, 0xb2, 0x66, 0x0d, 0xff, 0x00, 0x1e, 0x7e, 0x34, 0x1a, 0x7c, 0xf4, 0x11, + 0xf7, 0x50, 0xeb, 0x28, 0x57, 0xb2, 0x43, 0xaf, 0x9a, 0xce, 0x8f, 0xcd, 0x63, 0x87, 0x6a, 0xae, + 0xa6, 0x99, 0x36, 0x94, 0x9a, 0x02, 0xef, 0x56, 0x16, 0x2c, 0x4e, 0xf3, 0x00, 0x6d, 0x8d, 0xe3, + 0x45, 0x65, 0x1b, 0x9a, 0x16, 0xdb, 0xe8, 0x19, 0xb8, 0x5f, 0x53, 0x88, 0x65, 0xd9, 0x0e, 0x51, + 0xff, 0x0a, 0x3f, 0x95, 0x77, 0xca, 0x42, 0x82, 0x4d, 0x43, 0xee, 0x92, 0x24, 0xb1, 0x73, 0xee, + 0x9d, 0x5e, 0xce, 0xc9, 0xa6, 0xea, 0xf1, 0x98, 0x8e, 0xa8, 0x7d, 0x04, 0xe5, 0x9b, 0x73, 0xb2, + 0x85, 0xb7, 0x48, 0xc5, 0x48, 0x64, 0x73, 0xa4, 0x35, 0x8e, 0x7d, 0x42, 0x88, 0x05, 0x1f, 0xcb, + 0x87, 0x65, 0x21, 0xbd, 0x6a, 0x60, 0xfb, 0x27, 0x62, 0x82, 0x49, 0x92, 0x84, 0xeb, 0xfd, 0xe6, + 0x91, 0x8f, 0x89, 0xc5, 0xae, 0x49, 0x11, 0x3f, 0xaf, 0x78, 0xfb, 0x97, 0x33, 0xb3, 0x99, 0x43, + 0xaf, 0xf7, 0xe2, 0xc9, 0xcd, 0x99, 0xd9, 0x41, 0x2e, 0xae, 0x77, 0x61, 0x0c, 0xf0, 0xba, 0x24, + 0x9d, 0xa9, 0xb5, 0x75, 0xbb, 0xce, 0x98, 0x0c, 0x06, 0x4c, 0x75, 0x99, 0x61, 0xb3, 0xe1, 0x91, + 0x03, 0xf7, 0xd6, 0xbe, 0xe3, 0x8b, 0xca, 0x78, 0xbb, 0x81, 0x8f, 0x1e, 0x5f, 0x3f, 0x94, 0x93, + 0xf2, 0xe9, 0x34, 0xf0, 0x30, 0x8b, 0xb2, 0x60, 0x36, 0xcf, 0xd1, 0x4b, 0xd0, 0x5e, 0x99, 0x41, + 0xf5, 0x8d, 0x52, 0x1a, 0xad, 0x6d, 0x45, 0xaf, 0xae, 0xb6, 0x6b, 0xf5, 0x1e, 0x9b, 0x91, 0x40, + 0xfb, 0xa0, 0xad, 0xea, 0x94, 0x8c, 0x5f, 0x33, 0x7a, 0x02, 0x3f, 0x93, 0xe5, 0xb2, 0x90, 0x76, + 0x41, 0xdb, 0x0b, 0x05, 0x4f, 0xab, 0x8f, 0x22, 0x6a, 0xab, 0xd5, 0xed, 0xeb, 0xea, 0xf6, 0x5b, + 0xd0, 0xa9, 0xdd, 0xac, 0x52, 0xb2, 0xae, 0xb3, 0x21, 0x35, 0x54, 0x0a, 0xb1, 0xfc, 0xbc, 0x2c, + 0xa4, 0x5f, 0x83, 0xed, 0x49, 0x7a, 0x56, 0x79, 0x99, 0x2f, 0xc2, 0x60, 0x29, 0xd2, 0x73, 0xd4, + 0xd1, 0x2a, 0x67, 0xbb, 0x61, 0x88, 0xdf, 0x02, 0x78, 0x42, 0xfb, 0x55, 0xad, 0xae, 0xad, 0x12, + 0xc3, 0x60, 0xc6, 0x10, 0x3e, 0x6d, 0x14, 0xd7, 0x99, 0x8b, 0xf3, 0x39, 0xf7, 0x4e, 0xaf, 0x79, + 0x00, 0x6c, 0xba, 0x8f, 0x6d, 0x8f, 0x47, 0x95, 0x85, 0xf7, 0x7f, 0x6c, 0xbd, 0x7d, 0xa7, 0x6c, + 0xfc, 0xf4, 0x4e, 0xd9, 0xf8, 0xf9, 0x9d, 0xd2, 0xfa, 0xf1, 0x42, 0x69, 0xfd, 0xeb, 0x42, 0x69, + 0xfd, 0xfb, 0x42, 0x69, 0xbd, 0xbd, 0x50, 0x5a, 0xff, 0xb9, 0x50, 0x5a, 0xff, 0xbd, 0x50, 0x36, + 0x7e, 0xbe, 0x50, 0x5a, 0xff, 0x78, 0xaf, 0x6c, 0xbc, 0x7d, 0xaf, 0x6c, 0xfc, 0xf4, 0x5e, 0xd9, + 0xf8, 0xfe, 0x2f, 0xb3, 0x38, 0x39, 0x9d, 0xf5, 0x96, 0x71, 0x98, 0x8b, 0x34, 0xe5, 0xbd, 0x45, + 0x76, 0x50, 0xdf, 0x54, 0x96, 0xdb, 0xad, 0xbf, 0x11, 0xbe, 0x48, 0xbb, 0xeb, 0xd7, 0x07, 0xc9, + 0x64, 0x16, 0x1f, 0x88, 0x1f, 0xf2, 0xe6, 0xdf, 0xe0, 0xc6, 0x6f, 0xc4, 0xe4, 0x76, 0xfd, 0x77, + 0xf0, 0xf5, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x07, 0x02, 0x74, 0xe8, 0xb0, 0x08, 0x00, 0x00, } func (x AddonServiceGroup) String() string { diff --git a/pbgo/extschema/schema/vesenv/all_addon_services.pb.go b/pbgo/extschema/schema/vesenv/all_addon_services.pb.go index bc518a4a6..edcaaa642 100644 --- a/pbgo/extschema/schema/vesenv/all_addon_services.pb.go +++ b/pbgo/extschema/schema/vesenv/all_addon_services.pb.go @@ -32,6 +32,9 @@ type AddonServiceChoice struct { // *AddonServiceChoice_F5XcConsoleBase // *AddonServiceChoice_F5XcConsoleBaseAdvanced // *AddonServiceChoice_F5XcConsoleBasePremium + // *AddonServiceChoice_F5XcConsoleBasic + // *AddonServiceChoice_F5XcConsoleStandard + // *AddonServiceChoice_F5XcConsoleAdvanced // *AddonServiceChoice_F5XcChildManagement // *AddonServiceChoice_F5XcSupportOperations // *AddonServiceChoice_VesIoVolterraDefault @@ -65,6 +68,15 @@ type AddonServiceChoice struct { // *AddonServiceChoice_NginxOne // *AddonServiceChoice_F5XcApplicationTrafficInsightBasic // *AddonServiceChoice_Clearview + // *AddonServiceChoice_F5XcSecuremeshStandard + // *AddonServiceChoice_F5XcWaapStandard + // *AddonServiceChoice_F5XcAppstackStandard + // *AddonServiceChoice_F5XcSiteManagementStandard + // *AddonServiceChoice_F5XcRoutedDdosStandard + // *AddonServiceChoice_F5XcDnsStandard + // *AddonServiceChoice_F5XcApplicationTrafficInsightStandard + // *AddonServiceChoice_F5XcBotDefenseStandard + // *AddonServiceChoice_F5XcWebAppScanningStandard // *AddonServiceChoice_F5XcNone Choice isAddonServiceChoice_Choice `protobuf_oneof:"choice"` } @@ -120,6 +132,15 @@ type AddonServiceChoice_F5XcConsoleBaseAdvanced struct { type AddonServiceChoice_F5XcConsoleBasePremium struct { F5XcConsoleBasePremium bool `protobuf:"varint,12,opt,name=f5xc_console_base_premium,json=f5xcConsoleBasePremium,proto3,oneof" json:"f5xc_console_base_premium,omitempty"` } +type AddonServiceChoice_F5XcConsoleBasic struct { + F5XcConsoleBasic bool `protobuf:"varint,13,opt,name=f5xc_console_basic,json=f5xcConsoleBasic,proto3,oneof" json:"f5xc_console_basic,omitempty"` +} +type AddonServiceChoice_F5XcConsoleStandard struct { + F5XcConsoleStandard bool `protobuf:"varint,14,opt,name=f5xc_console_standard,json=f5xcConsoleStandard,proto3,oneof" json:"f5xc_console_standard,omitempty"` +} +type AddonServiceChoice_F5XcConsoleAdvanced struct { + F5XcConsoleAdvanced bool `protobuf:"varint,15,opt,name=f5xc_console_advanced,json=f5xcConsoleAdvanced,proto3,oneof" json:"f5xc_console_advanced,omitempty"` +} type AddonServiceChoice_F5XcChildManagement struct { F5XcChildManagement bool `protobuf:"varint,2,opt,name=f5xc_child_management,json=f5xcChildManagement,proto3,oneof" json:"f5xc_child_management,omitempty"` } @@ -219,48 +240,87 @@ type AddonServiceChoice_F5XcApplicationTrafficInsightBasic struct { type AddonServiceChoice_Clearview struct { Clearview bool `protobuf:"varint,119,opt,name=clearview,proto3,oneof" json:"clearview,omitempty"` } +type AddonServiceChoice_F5XcSecuremeshStandard struct { + F5XcSecuremeshStandard bool `protobuf:"varint,120,opt,name=f5xc_securemesh_standard,json=f5xcSecuremeshStandard,proto3,oneof" json:"f5xc_securemesh_standard,omitempty"` +} +type AddonServiceChoice_F5XcWaapStandard struct { + F5XcWaapStandard bool `protobuf:"varint,121,opt,name=f5xc_waap_standard,json=f5xcWaapStandard,proto3,oneof" json:"f5xc_waap_standard,omitempty"` +} +type AddonServiceChoice_F5XcAppstackStandard struct { + F5XcAppstackStandard bool `protobuf:"varint,122,opt,name=f5xc_appstack_standard,json=f5xcAppstackStandard,proto3,oneof" json:"f5xc_appstack_standard,omitempty"` +} +type AddonServiceChoice_F5XcSiteManagementStandard struct { + F5XcSiteManagementStandard bool `protobuf:"varint,123,opt,name=f5xc_site_management_standard,json=f5xcSiteManagementStandard,proto3,oneof" json:"f5xc_site_management_standard,omitempty"` +} +type AddonServiceChoice_F5XcRoutedDdosStandard struct { + F5XcRoutedDdosStandard bool `protobuf:"varint,124,opt,name=f5xc_routed_ddos_standard,json=f5xcRoutedDdosStandard,proto3,oneof" json:"f5xc_routed_ddos_standard,omitempty"` +} +type AddonServiceChoice_F5XcDnsStandard struct { + F5XcDnsStandard bool `protobuf:"varint,125,opt,name=f5xc_dns_standard,json=f5xcDnsStandard,proto3,oneof" json:"f5xc_dns_standard,omitempty"` +} +type AddonServiceChoice_F5XcApplicationTrafficInsightStandard struct { + F5XcApplicationTrafficInsightStandard bool `protobuf:"varint,126,opt,name=f5xc_application_traffic_insight_standard,json=f5xcApplicationTrafficInsightStandard,proto3,oneof" json:"f5xc_application_traffic_insight_standard,omitempty"` +} +type AddonServiceChoice_F5XcBotDefenseStandard struct { + F5XcBotDefenseStandard bool `protobuf:"varint,127,opt,name=f5xc_bot_defense_standard,json=f5xcBotDefenseStandard,proto3,oneof" json:"f5xc_bot_defense_standard,omitempty"` +} +type AddonServiceChoice_F5XcWebAppScanningStandard struct { + F5XcWebAppScanningStandard bool `protobuf:"varint,128,opt,name=f5xc_web_app_scanning_standard,json=f5xcWebAppScanningStandard,proto3,oneof" json:"f5xc_web_app_scanning_standard,omitempty"` +} type AddonServiceChoice_F5XcNone struct { F5XcNone bool `protobuf:"varint,9999,opt,name=f5xc_none,json=f5xcNone,proto3,oneof" json:"f5xc_none,omitempty"` } -func (*AddonServiceChoice_F5XcBase) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcConsoleBase) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcConsoleBaseAdvanced) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcConsoleBasePremium) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcChildManagement) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcSupportOperations) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_VesIoVolterraDefault) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_VesIoTenantManagement) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_VesIoSupportManagement) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_VesIoScim) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_ShapeBot) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_ShapeRecognize) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_AidataBfdp) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_LilacCdn) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_NginxMgmtSuite) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_SyntheticMonitor) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_Safeap) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_AipConnector) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_ClientSideDefense) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcBotDefenseAdvanced) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcBotDefensePremium) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcBotDefenseBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcBigIpApm) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcMobileIntegrator) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcFlowCollection) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_DataIntelligence) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcRoutedDdosBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcWaapBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcWaapAdvanced) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcSiteManagementBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcDnsBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcSecuremeshBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcSecuremeshAdvanced) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcAppstackBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_NginxOne) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcApplicationTrafficInsightBasic) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_Clearview) isAddonServiceChoice_Choice() {} -func (*AddonServiceChoice_F5XcNone) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcBase) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcConsoleBase) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcConsoleBaseAdvanced) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcConsoleBasePremium) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcConsoleBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcConsoleStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcConsoleAdvanced) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcChildManagement) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcSupportOperations) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_VesIoVolterraDefault) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_VesIoTenantManagement) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_VesIoSupportManagement) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_VesIoScim) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_ShapeBot) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_ShapeRecognize) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_AidataBfdp) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_LilacCdn) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_NginxMgmtSuite) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_SyntheticMonitor) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_Safeap) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_AipConnector) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_ClientSideDefense) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcBotDefenseAdvanced) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcBotDefensePremium) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcBotDefenseBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcBigIpApm) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcMobileIntegrator) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcFlowCollection) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_DataIntelligence) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcRoutedDdosBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcWaapBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcWaapAdvanced) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcSiteManagementBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcDnsBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcSecuremeshBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcSecuremeshAdvanced) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcAppstackBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_NginxOne) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcApplicationTrafficInsightBasic) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_Clearview) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcSecuremeshStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcWaapStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcAppstackStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcSiteManagementStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcRoutedDdosStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcDnsStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcApplicationTrafficInsightStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcBotDefenseStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcWebAppScanningStandard) isAddonServiceChoice_Choice() {} +func (*AddonServiceChoice_F5XcNone) isAddonServiceChoice_Choice() {} func (m *AddonServiceChoice) GetChoice() isAddonServiceChoice_Choice { if m != nil { @@ -297,6 +357,27 @@ func (m *AddonServiceChoice) GetF5XcConsoleBasePremium() bool { return false } +func (m *AddonServiceChoice) GetF5XcConsoleBasic() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcConsoleBasic); ok { + return x.F5XcConsoleBasic + } + return false +} + +func (m *AddonServiceChoice) GetF5XcConsoleStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcConsoleStandard); ok { + return x.F5XcConsoleStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcConsoleAdvanced() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcConsoleAdvanced); ok { + return x.F5XcConsoleAdvanced + } + return false +} + func (m *AddonServiceChoice) GetF5XcChildManagement() bool { if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcChildManagement); ok { return x.F5XcChildManagement @@ -528,6 +609,69 @@ func (m *AddonServiceChoice) GetClearview() bool { return false } +func (m *AddonServiceChoice) GetF5XcSecuremeshStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcSecuremeshStandard); ok { + return x.F5XcSecuremeshStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcWaapStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcWaapStandard); ok { + return x.F5XcWaapStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcAppstackStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcAppstackStandard); ok { + return x.F5XcAppstackStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcSiteManagementStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcSiteManagementStandard); ok { + return x.F5XcSiteManagementStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcRoutedDdosStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcRoutedDdosStandard); ok { + return x.F5XcRoutedDdosStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcDnsStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcDnsStandard); ok { + return x.F5XcDnsStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcApplicationTrafficInsightStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcApplicationTrafficInsightStandard); ok { + return x.F5XcApplicationTrafficInsightStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcBotDefenseStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcBotDefenseStandard); ok { + return x.F5XcBotDefenseStandard + } + return false +} + +func (m *AddonServiceChoice) GetF5XcWebAppScanningStandard() bool { + if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcWebAppScanningStandard); ok { + return x.F5XcWebAppScanningStandard + } + return false +} + func (m *AddonServiceChoice) GetF5XcNone() bool { if x, ok := m.GetChoice().(*AddonServiceChoice_F5XcNone); ok { return x.F5XcNone @@ -542,6 +686,9 @@ func (*AddonServiceChoice) XXX_OneofWrappers() []interface{} { (*AddonServiceChoice_F5XcConsoleBase)(nil), (*AddonServiceChoice_F5XcConsoleBaseAdvanced)(nil), (*AddonServiceChoice_F5XcConsoleBasePremium)(nil), + (*AddonServiceChoice_F5XcConsoleBasic)(nil), + (*AddonServiceChoice_F5XcConsoleStandard)(nil), + (*AddonServiceChoice_F5XcConsoleAdvanced)(nil), (*AddonServiceChoice_F5XcChildManagement)(nil), (*AddonServiceChoice_F5XcSupportOperations)(nil), (*AddonServiceChoice_VesIoVolterraDefault)(nil), @@ -575,6 +722,15 @@ func (*AddonServiceChoice) XXX_OneofWrappers() []interface{} { (*AddonServiceChoice_NginxOne)(nil), (*AddonServiceChoice_F5XcApplicationTrafficInsightBasic)(nil), (*AddonServiceChoice_Clearview)(nil), + (*AddonServiceChoice_F5XcSecuremeshStandard)(nil), + (*AddonServiceChoice_F5XcWaapStandard)(nil), + (*AddonServiceChoice_F5XcAppstackStandard)(nil), + (*AddonServiceChoice_F5XcSiteManagementStandard)(nil), + (*AddonServiceChoice_F5XcRoutedDdosStandard)(nil), + (*AddonServiceChoice_F5XcDnsStandard)(nil), + (*AddonServiceChoice_F5XcApplicationTrafficInsightStandard)(nil), + (*AddonServiceChoice_F5XcBotDefenseStandard)(nil), + (*AddonServiceChoice_F5XcWebAppScanningStandard)(nil), (*AddonServiceChoice_F5XcNone)(nil), } } @@ -588,201 +744,243 @@ func init() { } var fileDescriptor_24b1043c1548ccb0 = []byte{ - // 3094 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x98, 0xcf, 0x8f, 0x1c, 0xc7, - 0x75, 0xc7, 0x77, 0x22, 0x82, 0xd4, 0x36, 0x65, 0x91, 0x6c, 0x4a, 0x54, 0x9b, 0x8a, 0x17, 0x03, - 0x7a, 0xe2, 0xc8, 0x49, 0x1e, 0x59, 0xdd, 0x5d, 0x5d, 0xd5, 0x65, 0xcb, 0x8e, 0xf7, 0x87, 0xa5, - 0x5d, 0xc5, 0xa4, 0x98, 0x5d, 0xc7, 0x72, 0x7e, 0x0e, 0xea, 0xe7, 0x6c, 0x8b, 0x33, 0xdd, 0x9d, - 0xe9, 0xde, 0xa5, 0x24, 0x23, 0x81, 0x01, 0x1f, 0x73, 0x50, 0x90, 0x9f, 0xc8, 0x21, 0xb0, 0x93, - 0x20, 0x41, 0x80, 0x00, 0x39, 0x07, 0x98, 0x1c, 0x82, 0x39, 0xe5, 0x28, 0x2c, 0x72, 0xf0, 0x31, - 0xa2, 0x0e, 0xf6, 0x25, 0x80, 0xff, 0x84, 0xa0, 0xaa, 0xbb, 0x67, 0x7a, 0x77, 0x69, 0xc0, 0x17, - 0x62, 0xf8, 0xea, 0xdb, 0xaf, 0x3e, 0xfb, 0x5e, 0xd5, 0xab, 0x57, 0xe5, 0xc1, 0xa9, 0xae, 0xee, - 0x67, 0xc5, 0x83, 0x4a, 0x1e, 0xeb, 0x19, 0x7f, 0x70, 0xaa, 0x2b, 0x9d, 0x9f, 0x3e, 0xe0, 0xd3, - 0xe9, 0x98, 0x2b, 0x55, 0xe4, 0xe3, 0x4a, 0xcf, 0x4f, 0x33, 0xa9, 0xab, 0xfb, 0xe5, 0xbc, 0xa8, - 0x0b, 0xff, 0x95, 0x46, 0x7e, 0xbf, 0x91, 0xdf, 0x6f, 0xe4, 0x77, 0xef, 0x3d, 0xd7, 0x49, 0x51, - 0xd6, 0x59, 0x91, 0xb7, 0x5f, 0xde, 0x1d, 0x5e, 0xd0, 0x64, 0xfa, 0xe9, 0xf8, 0x9c, 0xe2, 0xde, - 0xff, 0xfd, 0x86, 0xe7, 0x6f, 0xdb, 0x49, 0x8f, 0x9a, 0x39, 0x77, 0x8f, 0x8b, 0x4c, 0x6a, 0xff, - 0x23, 0x6f, 0xd3, 0x24, 0x1f, 0xc8, 0xb1, 0xe0, 0x95, 0x0e, 0x06, 0xc3, 0xc1, 0x1b, 0x2f, 0xee, - 0xfc, 0xfe, 0x72, 0x11, 0xb0, 0xc6, 0x0c, 0xd6, 0xec, 0x8f, 0x52, 0x15, 0x86, 0x52, 0x25, 0x1a, - 0x08, 0xe3, 0x02, 0x30, 0xe6, 0x1a, 0x38, 0x43, 0x29, 0x44, 0xa9, 0x31, 0x44, 0xc5, 0x38, 0x94, - 0x04, 0xdf, 0xbd, 0x5a, 0x7d, 0x58, 0xd5, 0x7a, 0x76, 0xb6, 0x08, 0xee, 0x7a, 0x57, 0xf4, 0x87, - 0x4f, 0xb9, 0xef, 0xbf, 0x95, 0x7c, 0x77, 0x77, 0xb8, 0xc3, 0x2b, 0x3d, 0x6c, 0x27, 0xad, 0xf6, - 0x37, 0x0e, 0x5f, 0xb4, 0x8e, 0xad, 0xd1, 0xff, 0xbb, 0x81, 0x77, 0xcb, 0x4d, 0x2e, 0x8b, 0xbc, - 0x2a, 0xa6, 0xba, 0x81, 0xf0, 0x1c, 0xc4, 0x93, 0xe5, 0x22, 0xd8, 0x6e, 0x86, 0xa1, 0x1d, 0x6e, - 0x61, 0x68, 0x9a, 0x32, 0xa2, 0x28, 0x82, 0x04, 0x53, 0x09, 0x38, 0x0a, 0x19, 0xb0, 0x84, 0x27, - 0x10, 0x33, 0x4a, 0x23, 0xac, 0x69, 0xc4, 0x42, 0x76, 0xf7, 0x6a, 0x75, 0xcc, 0xe7, 0x5a, 0x9d, - 0x2d, 0x82, 0x7b, 0x2d, 0xcc, 0x5d, 0x07, 0xb3, 0xdb, 0xb8, 0xba, 0x04, 0x75, 0xc3, 0x4e, 0xd4, - 0x0e, 0x3a, 0xb6, 0xff, 0x1c, 0x78, 0x77, 0x2f, 0xb1, 0x8d, 0xb9, 0x3a, 0xe5, 0xb9, 0xd4, 0x2a, - 0xb8, 0xee, 0x20, 0xff, 0x64, 0xb9, 0x08, 0xde, 0x69, 0x74, 0xe7, 0x20, 0xa1, 0xd3, 0xf9, 0x23, - 0x95, 0x10, 0x14, 0xc6, 0x2c, 0x02, 0x92, 0x86, 0x09, 0x60, 0x93, 0xa6, 0xc0, 0x25, 0xe5, 0x10, - 0xc7, 0x5c, 0x71, 0x26, 0xa8, 0x34, 0x89, 0xec, 0xd1, 0xfe, 0x7a, 0x4b, 0xfb, 0xc5, 0xcb, 0xb4, - 0xdb, 0xad, 0xcf, 0x3e, 0xf6, 0x6b, 0x17, 0xb0, 0x3b, 0x8d, 0xff, 0x1f, 0x03, 0xef, 0xf3, 0x97, - 0xf1, 0xcb, 0xb9, 0x9e, 0x65, 0x27, 0xb3, 0xe0, 0x25, 0x47, 0xff, 0xbd, 0xe5, 0x22, 0x38, 0x68, - 0x64, 0xe7, 0xe9, 0x5b, 0x99, 0x3f, 0x8a, 0x63, 0x2d, 0xa9, 0xc4, 0x14, 0x42, 0x6c, 0xe1, 0x35, - 0x13, 0x90, 0xc6, 0x48, 0x02, 0xd1, 0x4a, 0x32, 0x1d, 0xb2, 0x98, 0x92, 0x3e, 0xfc, 0xaf, 0xb5, - 0xf0, 0xf7, 0x2e, 0xc3, 0x3f, 0x6e, 0x5c, 0xf6, 0xd9, 0xef, 0x5c, 0x60, 0x6f, 0x25, 0xfe, 0x8f, - 0x06, 0xde, 0xab, 0x0d, 0xfa, 0x71, 0x36, 0x55, 0xe3, 0x19, 0xcf, 0xf9, 0x44, 0xcf, 0x74, 0x5e, - 0x07, 0xbf, 0xe4, 0xb0, 0xdf, 0x5f, 0x2e, 0x82, 0x6f, 0x36, 0x12, 0x70, 0x12, 0x58, 0x4b, 0xfc, - 0x11, 0x25, 0x89, 0x8a, 0xb5, 0x41, 0x60, 0x84, 0xd4, 0x80, 0xa5, 0x16, 0xc0, 0x29, 0xa7, 0x20, - 0x0d, 0x4a, 0x70, 0x6a, 0x58, 0x4c, 0x0c, 0xeb, 0x2d, 0xd5, 0x2f, 0xb4, 0xc8, 0xaf, 0x36, 0xc8, - 0xd6, 0xdd, 0xf0, 0xe1, 0xca, 0xdd, 0xfe, 0xc6, 0xe1, 0x6d, 0x47, 0x69, 0xed, 0x6b, 0xb3, 0xff, - 0x4f, 0x03, 0xcf, 0x45, 0x7e, 0x5c, 0x9d, 0x94, 0x65, 0x31, 0xaf, 0xc7, 0x45, 0xa9, 0xe7, 0xdc, - 0xed, 0xb6, 0xe0, 0x8a, 0x83, 0xcc, 0x96, 0x8b, 0xe0, 0xed, 0x46, 0x04, 0xad, 0x08, 0xd6, 0x22, - 0x7f, 0x24, 0x22, 0xc2, 0x90, 0x64, 0x11, 0x44, 0x2c, 0x4a, 0x00, 0x87, 0x3a, 0x06, 0x16, 0x85, - 0x06, 0x14, 0x92, 0x3c, 0xc1, 0x32, 0x92, 0xa9, 0x88, 0x9f, 0xb7, 0xa3, 0x8e, 0x1a, 0x5f, 0xc3, - 0x77, 0x57, 0xbe, 0xf6, 0x37, 0x0e, 0x5d, 0x2c, 0xda, 0x91, 0xf5, 0x80, 0xff, 0xcf, 0x03, 0xef, - 0xb5, 0x53, 0x5d, 0x8d, 0xb3, 0x62, 0x7c, 0x5a, 0x4c, 0x6b, 0x3d, 0x9f, 0xf3, 0xb1, 0xd2, 0x86, - 0x9f, 0x4c, 0xeb, 0xe0, 0x55, 0x47, 0x39, 0x6d, 0x28, 0x4f, 0x75, 0x05, 0x59, 0x01, 0x9d, 0x08, - 0x5a, 0x91, 0x3f, 0xa2, 0x9c, 0x72, 0x25, 0xd2, 0x04, 0x08, 0x11, 0x21, 0x60, 0x15, 0xc6, 0x20, - 0x04, 0xe5, 0x10, 0x4a, 0x4d, 0x53, 0x46, 0x51, 0x4a, 0x08, 0xfa, 0xb9, 0xc1, 0xdc, 0x6b, 0xbc, - 0xf4, 0x53, 0x6e, 0xeb, 0xdb, 0x41, 0xf1, 0x9d, 0x76, 0x9e, 0x56, 0x60, 0xa3, 0x19, 0xb4, 0x9c, - 0xb5, 0xce, 0x79, 0x5e, 0xf7, 0x73, 0x7e, 0xc7, 0x81, 0x1e, 0x2f, 0x17, 0xc1, 0xbe, 0x53, 0x59, - 0xd0, 0x46, 0x75, 0x2e, 0xed, 0x52, 0xe2, 0x14, 0x69, 0xa6, 0x80, 0xc5, 0x29, 0x03, 0x9c, 0x20, - 0x06, 0x29, 0x4b, 0x25, 0xc8, 0x08, 0x87, 0x5a, 0x25, 0xd2, 0x88, 0x88, 0xf4, 0x48, 0x83, 0x96, - 0xf4, 0xe6, 0x9e, 0x9e, 0xea, 0x09, 0xaf, 0xb5, 0x1a, 0x6e, 0x4b, 0xa9, 0x2b, 0x17, 0x4d, 0x07, - 0xf9, 0x6d, 0x37, 0x47, 0x2f, 0xe7, 0xff, 0x32, 0xf0, 0x3e, 0xdf, 0x52, 0x76, 0x59, 0xef, 0x61, - 0xbe, 0xb0, 0xca, 0xfa, 0x81, 0x93, 0x59, 0xcc, 0x2e, 0xef, 0x7d, 0x4e, 0x1e, 0x69, 0x2e, 0xd2, - 0x98, 0x01, 0x93, 0x34, 0x06, 0x4c, 0x12, 0x05, 0x22, 0x92, 0x08, 0x94, 0x8e, 0x15, 0x52, 0x9a, - 0x6a, 0x64, 0xd2, 0xe7, 0x71, 0x1e, 0xe4, 0xb5, 0x9e, 0xe7, 0x7c, 0x3a, 0x6c, 0xd3, 0x6c, 0xf7, - 0x8f, 0xe3, 0x6c, 0xff, 0xdf, 0x03, 0xfd, 0xc1, 0xc0, 0xbb, 0xde, 0x81, 0xca, 0x6c, 0x16, 0xbc, - 0xe6, 0xd0, 0xf8, 0x72, 0x11, 0xc4, 0x6e, 0xc0, 0xa1, 0xc9, 0x6c, 0x66, 0xd3, 0xab, 0x8d, 0x26, - 0x09, 0x01, 0x81, 0x14, 0x85, 0x30, 0xd4, 0x12, 0x04, 0x43, 0x0c, 0x50, 0x84, 0x23, 0x2e, 0xc3, - 0x08, 0x21, 0x14, 0x9d, 0x2d, 0x82, 0x2f, 0xb5, 0x10, 0x5b, 0xbf, 0x53, 0xe9, 0xf9, 0x83, 0xc9, - 0xbc, 0x38, 0x29, 0x87, 0xe5, 0xbc, 0x38, 0xcd, 0xaa, 0xac, 0xc8, 0xb3, 0x7c, 0x32, 0x7c, 0xe3, - 0x68, 0xf7, 0xe0, 0xe1, 0x97, 0xf7, 0x37, 0x0e, 0x37, 0x1b, 0x24, 0xeb, 0xfc, 0x7d, 0x6f, 0xb3, - 0x3a, 0xe6, 0xa5, 0x1e, 0x8b, 0xa2, 0x0e, 0x22, 0x87, 0xf0, 0x5b, 0xcb, 0x45, 0x10, 0xb6, 0x66, - 0x10, 0x45, 0xed, 0x8f, 0x50, 0x94, 0x24, 0x02, 0x2b, 0x06, 0x2c, 0x15, 0x0c, 0x70, 0xc4, 0x52, - 0x60, 0x09, 0xa6, 0x10, 0x13, 0x82, 0xa2, 0x44, 0xa4, 0x42, 0x70, 0x71, 0xb6, 0x08, 0x7c, 0xef, - 0x85, 0x4a, 0x2b, 0xff, 0xfa, 0x4e, 0x51, 0xdb, 0x55, 0xa5, 0xf3, 0x4a, 0xdb, 0x73, 0xc4, 0x39, - 0xda, 0x29, 0x6a, 0xff, 0x2f, 0x06, 0xde, 0x8d, 0x66, 0xb2, 0xb9, 0x96, 0xc5, 0x24, 0xcf, 0x3e, - 0xd2, 0x41, 0xec, 0xa6, 0x9c, 0x2c, 0x17, 0x01, 0x6d, 0x07, 0x61, 0x35, 0xe8, 0x8f, 0x98, 0x94, - 0x3c, 0x35, 0x44, 0x01, 0x31, 0x49, 0x0c, 0x38, 0xc4, 0x06, 0x18, 0x89, 0x38, 0x68, 0x11, 0x91, - 0x44, 0x22, 0x14, 0x99, 0x88, 0x9c, 0x2d, 0x82, 0x37, 0xbc, 0xcd, 0xf5, 0x47, 0xaf, 0x6f, 0x9f, - 0xd4, 0xc7, 0x3a, 0xaf, 0x33, 0xe9, 0xf6, 0xd7, 0xd0, 0xa6, 0x64, 0x3a, 0xcd, 0x26, 0x3a, 0x97, - 0x16, 0xe7, 0x65, 0x37, 0xc9, 0xe1, 0x4a, 0xfe, 0x91, 0x77, 0x9d, 0x67, 0x8a, 0xd7, 0x7c, 0x2c, - 0x8c, 0x2a, 0x03, 0xec, 0x78, 0xde, 0x6b, 0xb2, 0xd0, 0x0c, 0x80, 0x1d, 0xf0, 0x47, 0x5c, 0x31, - 0x29, 0x23, 0x1c, 0x03, 0xd6, 0x89, 0x00, 0x1c, 0xf2, 0x18, 0x52, 0x7b, 0x60, 0xc4, 0x2a, 0x15, - 0x91, 0xa4, 0x42, 0x09, 0x89, 0xcf, 0x16, 0xc1, 0x2f, 0x7b, 0x57, 0x9c, 0xfe, 0x95, 0x9d, 0x6c, - 0x32, 0x7c, 0x2b, 0x19, 0x5a, 0x0f, 0xc3, 0x72, 0xca, 0x6b, 0x53, 0xcc, 0x67, 0xfb, 0x1b, 0x87, - 0x5e, 0xe3, 0x74, 0xc7, 0x6a, 0xbe, 0xe7, 0x6d, 0x4e, 0xb3, 0x29, 0x97, 0x63, 0xa9, 0xf2, 0x20, - 0x71, 0x33, 0xff, 0x41, 0x13, 0x7c, 0x67, 0x06, 0xa9, 0x72, 0x7b, 0xa8, 0x53, 0xaa, 0x50, 0x2c, - 0x41, 0x32, 0x6c, 0x9a, 0xec, 0x33, 0x45, 0xf0, 0xc5, 0xec, 0x7f, 0xd1, 0xbb, 0x21, 0x55, 0x2e, - 0x8b, 0x3c, 0xd7, 0xb2, 0x2e, 0xe6, 0xd5, 0xa9, 0xf4, 0x6f, 0xee, 0xee, 0x3d, 0x1a, 0x7e, 0xab, - 0xe0, 0x4a, 0xf0, 0xa9, 0x3d, 0x6e, 0xe6, 0x36, 0x1b, 0xce, 0xf3, 0xae, 0xca, 0x6d, 0x36, 0x6e, - 0xe6, 0x93, 0x2c, 0xff, 0x60, 0x3c, 0x9b, 0xcc, 0xea, 0x71, 0x75, 0x92, 0xd5, 0x3a, 0x20, 0x0e, - 0xc2, 0x2c, 0x17, 0x41, 0xda, 0x8e, 0x82, 0x1d, 0x05, 0x37, 0xea, 0x8f, 0x50, 0x88, 0x51, 0x4c, - 0x38, 0x83, 0x44, 0xc7, 0x04, 0x70, 0x6a, 0x04, 0x08, 0xaa, 0x42, 0x20, 0x3c, 0x12, 0x51, 0x8c, - 0x08, 0x17, 0x09, 0x75, 0x2b, 0xf1, 0xa5, 0x7c, 0x56, 0xad, 0x58, 0xfc, 0x3b, 0x8f, 0xde, 0x3e, - 0x78, 0xf4, 0xdd, 0x5e, 0xc1, 0x1e, 0x1e, 0x59, 0x7f, 0x36, 0x1b, 0x6e, 0x8e, 0x87, 0x93, 0x59, - 0xed, 0x2c, 0xfe, 0xdf, 0x0e, 0xbc, 0x5b, 0xd5, 0x87, 0x79, 0x7d, 0xac, 0xeb, 0x4c, 0x8e, 0x67, - 0x45, 0x9e, 0xd5, 0xc5, 0x3c, 0xa0, 0xab, 0xe2, 0xc2, 0x7a, 0xc3, 0xd0, 0x0e, 0xfb, 0xa3, 0x90, - 0x1a, 0x14, 0x49, 0xc9, 0x80, 0x08, 0x62, 0x00, 0x33, 0x24, 0x80, 0x63, 0x8e, 0x21, 0x21, 0x4a, - 0x1b, 0xc5, 0x11, 0x35, 0x61, 0x7c, 0xb6, 0x08, 0x7e, 0xf5, 0x79, 0x1f, 0xfb, 0x47, 0x9d, 0x69, - 0xf8, 0xb0, 0x31, 0xd9, 0xe2, 0x72, 0x73, 0x25, 0x6c, 0x8d, 0x3e, 0xf7, 0xae, 0x56, 0xdc, 0x68, - 0x5e, 0x06, 0xa9, 0xa3, 0x79, 0x7b, 0xb9, 0x08, 0xee, 0x77, 0xb6, 0x5f, 0x64, 0xa5, 0x32, 0x76, - 0xb6, 0x08, 0x6e, 0xad, 0xbe, 0xb8, 0x76, 0xc4, 0x8d, 0x1e, 0x6e, 0x3f, 0xde, 0xdf, 0x38, 0xec, - 0x4c, 0xff, 0x36, 0xf0, 0x3e, 0xc7, 0xb3, 0x72, 0xbc, 0x0a, 0x5c, 0xc0, 0xdc, 0x54, 0x3f, 0x18, - 0x2c, 0x17, 0xc1, 0x43, 0xef, 0x57, 0x78, 0x59, 0x4e, 0xdb, 0x55, 0x0d, 0x59, 0x6e, 0xe6, 0xbc, - 0xaa, 0xe7, 0x27, 0xb2, 0x3e, 0x99, 0xdb, 0x56, 0xa0, 0xa8, 0xb5, 0xb4, 0x23, 0xfe, 0x28, 0xa6, - 0x12, 0x11, 0x91, 0x46, 0x10, 0x52, 0x1c, 0xda, 0x05, 0xa3, 0x20, 0x25, 0xa1, 0xba, 0xb8, 0x60, - 0xee, 0x5f, 0x98, 0xcc, 0xff, 0xc2, 0x76, 0x59, 0x0e, 0x0f, 0xce, 0xf9, 0x1d, 0x3e, 0x5e, 0xf9, - 0xdd, 0xdf, 0x38, 0x7c, 0x89, 0x67, 0xe5, 0xee, 0x4a, 0xfe, 0xc3, 0x81, 0x77, 0x5b, 0x4e, 0x33, - 0x9d, 0xd7, 0xe3, 0x2a, 0x53, 0xda, 0x1e, 0x59, 0x76, 0xc7, 0x07, 0x5f, 0x71, 0xcc, 0xb3, 0xe5, - 0x22, 0xf8, 0x6a, 0x27, 0x00, 0x2b, 0x80, 0x56, 0xe0, 0x8f, 0x08, 0xc5, 0x2a, 0x91, 0x0c, 0x01, - 0xe6, 0xcc, 0xd8, 0xe3, 0x2a, 0x02, 0xae, 0x92, 0x04, 0x30, 0x47, 0x8c, 0x70, 0xce, 0x45, 0x4c, - 0x8c, 0x6b, 0x53, 0x9e, 0xfb, 0xf9, 0xed, 0xdd, 0xc6, 0x78, 0x94, 0x29, 0xdd, 0x2b, 0x33, 0xb7, - 0x1a, 0xad, 0xb5, 0xb6, 0x46, 0xff, 0x1f, 0xba, 0xe6, 0x4a, 0x14, 0x75, 0x87, 0xb7, 0x6e, 0x0d, - 0xbf, 0xea, 0x38, 0x95, 0xeb, 0x5f, 0x9b, 0xe6, 0x4a, 0x14, 0x75, 0x37, 0x4b, 0xaf, 0x33, 0x24, - 0x4a, 0x27, 0x44, 0x23, 0x02, 0x86, 0x46, 0x1a, 0x30, 0x52, 0x08, 0x78, 0xc2, 0x24, 0x18, 0x2d, - 0x42, 0x43, 0xd3, 0x88, 0x26, 0x4c, 0x9e, 0x2d, 0x82, 0xd7, 0x9b, 0xe2, 0xf7, 0x4a, 0xaf, 0xf8, - 0xad, 0x5a, 0xc1, 0xae, 0x8b, 0xda, 0x29, 0xea, 0x76, 0x68, 0xd5, 0x00, 0xfe, 0xfd, 0xc0, 0x0b, - 0x2e, 0x31, 0x76, 0xfd, 0xdf, 0x9b, 0x0e, 0x51, 0x2c, 0x17, 0xc1, 0x37, 0x1a, 0xd5, 0x39, 0xc4, - 0x55, 0xfb, 0xc7, 0x58, 0x44, 0x69, 0x4a, 0x08, 0x30, 0x2e, 0x24, 0x60, 0xae, 0x30, 0x08, 0x65, - 0x62, 0x10, 0xb1, 0x92, 0xc4, 0xc4, 0x98, 0x47, 0x82, 0xb8, 0xe6, 0xc4, 0x11, 0xde, 0xee, 0x13, - 0xb6, 0xcd, 0x5c, 0xd7, 0x9c, 0xac, 0x01, 0xbb, 0x2e, 0xef, 0xaf, 0x07, 0xde, 0x9d, 0x4b, 0x7c, - 0x82, 0x57, 0x99, 0x0c, 0xbe, 0xe6, 0xe8, 0xfe, 0x68, 0xb9, 0x08, 0xbe, 0xde, 0x68, 0xce, 0xd1, - 0x39, 0x8d, 0x3f, 0x92, 0x29, 0xa2, 0x3a, 0x0a, 0x53, 0x20, 0x61, 0x1c, 0x02, 0x8e, 0xed, 0xd1, - 0x11, 0x0b, 0x0e, 0x34, 0x49, 0x19, 0xd3, 0x88, 0x10, 0x9c, 0x68, 0x77, 0x80, 0x3a, 0xb6, 0x5b, - 0x7d, 0xb6, 0x1d, 0xeb, 0xa1, 0x6b, 0xed, 0xd6, 0x64, 0xce, 0xec, 0x7f, 0xe4, 0xdd, 0x68, 0xb0, - 0xb2, 0xc9, 0x38, 0x2b, 0xc7, 0xbc, 0x9c, 0x05, 0x5f, 0x77, 0x3c, 0xbf, 0xdd, 0x1c, 0x25, 0x0d, - 0x4f, 0x36, 0x81, 0xac, 0x04, 0x5e, 0xce, 0x6c, 0xe7, 0x11, 0xea, 0x30, 0xe4, 0x11, 0x44, 0x31, - 0x51, 0x80, 0x4d, 0x6c, 0x20, 0xc5, 0x09, 0x05, 0x1c, 0xc7, 0x26, 0x0c, 0x23, 0x84, 0xb1, 0x48, - 0xdd, 0x19, 0x76, 0x85, 0x3f, 0xe1, 0x73, 0xdf, 0xdb, 0x39, 0x78, 0x1b, 0x0e, 0x1e, 0x0f, 0xb7, - 0x1f, 0x3f, 0xb4, 0x2b, 0xdf, 0x21, 0x64, 0x93, 0x83, 0x72, 0xbb, 0x9c, 0xf9, 0x7f, 0xd3, 0xc5, - 0x64, 0x56, 0x88, 0x6c, 0xaa, 0xc7, 0x59, 0x5e, 0xeb, 0xc9, 0x9c, 0xdb, 0x0d, 0xfb, 0x9b, 0x97, - 0x62, 0xd2, 0x68, 0x60, 0xad, 0xb1, 0xe5, 0x2a, 0xd1, 0x38, 0x55, 0x21, 0x08, 0x96, 0x60, 0xc0, - 0x29, 0x4d, 0x80, 0x09, 0x92, 0x82, 0xd1, 0x69, 0xa4, 0x89, 0x50, 0x8a, 0xb2, 0xa8, 0x17, 0x93, - 0x87, 0xce, 0x83, 0x3b, 0xc7, 0x1a, 0x0f, 0xb6, 0x43, 0xb3, 0xbe, 0x9b, 0x81, 0xb5, 0xdd, 0xff, - 0x78, 0xe0, 0xb9, 0x81, 0xb1, 0x99, 0x16, 0x4f, 0xc7, 0xb2, 0x98, 0x4e, 0x9b, 0xbd, 0x1b, 0x7c, - 0x63, 0x75, 0x61, 0x7c, 0xb3, 0x51, 0x80, 0x55, 0xc0, 0x5a, 0xe1, 0x8f, 0x22, 0xc3, 0xe2, 0x50, - 0xa8, 0x14, 0x22, 0x22, 0x99, 0xad, 0x1a, 0x1a, 0x84, 0x4e, 0xc8, 0xc5, 0xaa, 0xf1, 0x5a, 0x1b, - 0x9f, 0x1b, 0x6f, 0x4d, 0x8b, 0xa7, 0xc3, 0xdd, 0x95, 0x83, 0xfd, 0x8d, 0x43, 0xdf, 0x3a, 0xb6, - 0xe6, 0xb5, 0xd5, 0xff, 0xab, 0x81, 0x77, 0xcb, 0x1d, 0xae, 0x59, 0xef, 0x14, 0x0e, 0xb6, 0x1d, - 0x8e, 0x6e, 0xea, 0xb9, 0x3b, 0x62, 0xfb, 0xc3, 0xfe, 0x48, 0x52, 0xc5, 0x98, 0x16, 0x1c, 0x04, - 0x8a, 0x19, 0x60, 0xa4, 0x11, 0x70, 0x9d, 0x20, 0x60, 0x5a, 0xb2, 0x18, 0x29, 0x42, 0xe2, 0xd0, - 0xde, 0x63, 0x46, 0xde, 0x0d, 0x31, 0x9f, 0xd9, 0xef, 0x95, 0x9e, 0x66, 0xa7, 0x7a, 0xfe, 0xa1, - 0x7f, 0x6b, 0xcf, 0x1e, 0xb7, 0x17, 0x8e, 0xfc, 0x9b, 0x56, 0xd2, 0xb7, 0x59, 0xac, 0x26, 0x83, - 0xf3, 0xe2, 0xa4, 0xd6, 0x6a, 0xac, 0x54, 0x51, 0xb5, 0xab, 0xfa, 0x7d, 0xc7, 0xf6, 0x87, 0xbd, - 0x0c, 0x36, 0x1a, 0xb0, 0x9a, 0x6e, 0x55, 0xeb, 0x90, 0x87, 0x21, 0x53, 0x29, 0x68, 0xa1, 0x05, - 0xe0, 0x24, 0x64, 0xc0, 0xe3, 0x94, 0x80, 0x92, 0xa9, 0x4c, 0x35, 0x8b, 0x62, 0x2c, 0xa9, 0x0b, - 0xd6, 0x8b, 0xae, 0x30, 0x3f, 0xa9, 0x33, 0xff, 0xfa, 0xa1, 0x73, 0x33, 0xdc, 0xdb, 0x2b, 0x8e, - 0xba, 0x45, 0xdd, 0x98, 0xf6, 0x54, 0x51, 0x35, 0x8b, 0xfa, 0x1f, 0x07, 0xed, 0xaa, 0x7e, 0xca, - 0x79, 0xd9, 0xf2, 0xe4, 0x8e, 0xe7, 0x83, 0xde, 0xaa, 0xb6, 0x83, 0x1d, 0x48, 0x9a, 0x46, 0xb6, - 0xf3, 0x60, 0xa0, 0x08, 0x11, 0x80, 0xa5, 0x49, 0x80, 0xa5, 0x28, 0x06, 0xca, 0x18, 0x12, 0x8a, - 0xe8, 0x34, 0xc6, 0xe8, 0xcc, 0x86, 0xb9, 0xc9, 0x5a, 0xf8, 0x9e, 0x16, 0xc3, 0xed, 0xf5, 0x31, - 0x32, 0xe4, 0xb9, 0x1a, 0x6e, 0x3f, 0x3e, 0xe8, 0xd5, 0xf9, 0xe1, 0x1b, 0xef, 0x6d, 0x6f, 0x3f, - 0xfe, 0xf2, 0x30, 0x5c, 0xed, 0xbf, 0xcf, 0xd9, 0x59, 0xdf, 0xe3, 0xbc, 0x6c, 0x20, 0xff, 0x7d, - 0xe0, 0xf9, 0x6b, 0xc8, 0x55, 0x39, 0x2d, 0x1c, 0xe7, 0x9f, 0x2e, 0x17, 0xc1, 0x57, 0x9a, 0xf1, - 0x86, 0x73, 0x5d, 0x47, 0x0d, 0xa6, 0x86, 0xa6, 0x4c, 0x83, 0xbd, 0x69, 0x03, 0xe6, 0x26, 0x05, - 0x91, 0x44, 0x06, 0x18, 0x8b, 0x48, 0xa2, 0x13, 0x8e, 0x28, 0xb6, 0xfd, 0xd3, 0x9b, 0x2d, 0x2a, - 0xfe, 0xc5, 0x51, 0xa3, 0x7e, 0xa1, 0xbd, 0xd9, 0xd1, 0xae, 0x4a, 0xec, 0x8f, 0xba, 0x27, 0x82, - 0x2a, 0xab, 0x75, 0xef, 0x32, 0xd0, 0x06, 0xb8, 0x5c, 0xf5, 0xdd, 0x3b, 0xed, 0x13, 0x81, 0xd5, - 0xf5, 0x6e, 0x03, 0xab, 0xa4, 0x73, 0xcd, 0x28, 0xc5, 0x18, 0x70, 0x64, 0x94, 0x6d, 0x7e, 0x24, - 0xa4, 0x9c, 0x47, 0x20, 0xd3, 0x10, 0x91, 0x88, 0xc6, 0x24, 0x36, 0xa8, 0xbf, 0x43, 0x8e, 0xb2, - 0x5a, 0x9f, 0xbf, 0xa4, 0xba, 0x7b, 0xa6, 0x35, 0xaf, 0xad, 0x4d, 0x4c, 0x6b, 0xef, 0x65, 0x47, - 0xa8, 0xf2, 0x6e, 0x19, 0xfe, 0xb1, 0xa3, 0xfa, 0xd6, 0x72, 0x11, 0x90, 0x66, 0x0c, 0x54, 0x5e, - 0xad, 0x8b, 0x2a, 0x27, 0xc2, 0x50, 0x0a, 0x58, 0x09, 0x0c, 0xd8, 0xe0, 0x10, 0x78, 0x42, 0x12, - 0x48, 0x43, 0xc5, 0x23, 0xa5, 0x34, 0x4f, 0x90, 0xdd, 0x1f, 0x2f, 0x7b, 0xd7, 0x44, 0x66, 0xe6, - 0x45, 0x55, 0xfb, 0x2f, 0xec, 0x3d, 0x3a, 0xea, 0xea, 0xd8, 0x5e, 0xde, 0x2e, 0xb7, 0xbf, 0xec, - 0x6e, 0xf0, 0x95, 0x96, 0x27, 0x73, 0x3d, 0xd3, 0xd5, 0x71, 0x3b, 0xfb, 0x7c, 0xb5, 0x09, 0xbe, - 0xd6, 0xde, 0xe0, 0xd7, 0x92, 0x0e, 0x82, 0x25, 0x32, 0x21, 0x34, 0x42, 0x20, 0x12, 0x7b, 0x29, - 0xd0, 0x5a, 0x01, 0x53, 0x48, 0x40, 0xc8, 0x51, 0x1c, 0xa1, 0x98, 0x6b, 0x63, 0x9a, 0xca, 0xde, - 0x84, 0xe3, 0xe6, 0x91, 0xf3, 0xf0, 0x50, 0x57, 0xc7, 0xe7, 0x2b, 0xfb, 0xd1, 0xca, 0x73, 0x43, - 0xf5, 0xc3, 0xee, 0x44, 0xec, 0x51, 0xad, 0x56, 0x59, 0xe5, 0xc0, 0x64, 0xef, 0x44, 0xec, 0x81, - 0xad, 0xd7, 0x1a, 0x32, 0x2c, 0x4d, 0xb8, 0xe1, 0x90, 0x62, 0xcc, 0x00, 0x53, 0x49, 0x20, 0xa5, - 0x3c, 0x81, 0x28, 0x66, 0x06, 0x6b, 0x11, 0x29, 0x4e, 0xb5, 0x3b, 0xb3, 0x1b, 0xb6, 0xdb, 0x3d, - 0xb6, 0x8b, 0x67, 0xf6, 0x1a, 0x6f, 0xb5, 0xa0, 0xfe, 0x6c, 0xe0, 0x39, 0xf2, 0x31, 0x2f, 0xcb, - 0xaa, 0xe6, 0xf2, 0x49, 0x1b, 0xb5, 0xda, 0xc1, 0xfd, 0x6e, 0xd3, 0xf9, 0x38, 0xb8, 0x4e, 0xb0, - 0x4a, 0x1c, 0x53, 0x71, 0x62, 0x50, 0x02, 0x14, 0xd3, 0x10, 0xb0, 0x94, 0x21, 0x70, 0xa6, 0x91, - 0xcd, 0x23, 0x42, 0x02, 0x47, 0x28, 0xa4, 0x76, 0x0f, 0xdc, 0x69, 0xb9, 0x5e, 0xde, 0x2e, 0xcb, - 0x23, 0xfb, 0xfd, 0x2a, 0x62, 0xee, 0xa1, 0x6d, 0xbb, 0xf5, 0xda, 0xc4, 0xab, 0xf4, 0x36, 0x9b, - 0x36, 0xbe, 0xc8, 0x75, 0x70, 0xb2, 0x3a, 0x03, 0xc3, 0xd6, 0x0c, 0x45, 0xae, 0xfd, 0x91, 0x4e, - 0x62, 0x22, 0xc2, 0x88, 0x00, 0xa1, 0x71, 0x02, 0x38, 0x46, 0x31, 0x88, 0x90, 0x1b, 0x40, 0x1c, - 0xc7, 0x34, 0x0c, 0x8d, 0xd1, 0x32, 0x76, 0xc9, 0xba, 0x9e, 0x87, 0xeb, 0x8e, 0x70, 0xb3, 0xe9, - 0xdb, 0xdf, 0xcd, 0xdd, 0x3d, 0xce, 0xb9, 0x7b, 0x37, 0xd7, 0xfe, 0xff, 0x0c, 0xbc, 0x2f, 0x75, - 0x7f, 0x7f, 0xb7, 0x3d, 0xc7, 0xf5, 0x9c, 0x1b, 0x93, 0xc9, 0x71, 0x96, 0x57, 0xd9, 0xe4, 0xb8, - 0xdb, 0x5c, 0xa7, 0xab, 0xaa, 0xf0, 0xa8, 0xf9, 0x06, 0xfa, 0x4d, 0x6c, 0xfb, 0x0d, 0xb4, 0xdf, - 0x74, 0x51, 0x42, 0x44, 0xa5, 0x22, 0xc6, 0x08, 0x90, 0x31, 0xb6, 0x2b, 0xa4, 0x18, 0xb8, 0x94, - 0xda, 0x76, 0xf7, 0x24, 0x45, 0x3c, 0xd6, 0x54, 0x25, 0xcd, 0xad, 0x4f, 0xe9, 0xd3, 0x4c, 0x6a, - 0xc8, 0x94, 0xff, 0x7a, 0xbf, 0x54, 0x7c, 0xbb, 0xf1, 0x3b, 0x3c, 0x68, 0xfc, 0xee, 0x6f, 0x1c, - 0xde, 0x6b, 0xe3, 0xd6, 0x49, 0x5a, 0x45, 0x2b, 0x68, 0x02, 0x59, 0x78, 0x9b, 0x72, 0xaa, 0xf9, - 0xfc, 0x34, 0xd3, 0x4f, 0x83, 0xa7, 0x0e, 0xfc, 0xdd, 0x26, 0x90, 0x2b, 0xb3, 0x3f, 0x32, 0x49, - 0x9c, 0x52, 0x14, 0x46, 0x10, 0x1a, 0xa5, 0x01, 0x63, 0xdb, 0xbb, 0xda, 0xae, 0x42, 0x4a, 0xce, - 0x55, 0x12, 0x6a, 0x95, 0xca, 0xd4, 0x65, 0xb0, 0xf7, 0xd1, 0xe6, 0xae, 0xfd, 0xf9, 0x9d, 0x4c, - 0x3f, 0xb5, 0x77, 0xef, 0xb5, 0x5d, 0xb7, 0x6f, 0xba, 0xb9, 0xcd, 0xdc, 0xc7, 0x8f, 0xdc, 0x8c, - 0xdf, 0x6c, 0x66, 0x74, 0xa1, 0xca, 0x5d, 0xea, 0x50, 0x1c, 0x31, 0xa6, 0x28, 0x85, 0xc8, 0x90, - 0x04, 0x70, 0x82, 0x09, 0x70, 0xc5, 0x23, 0x50, 0x22, 0x51, 0x21, 0x8e, 0x64, 0x4a, 0x45, 0x78, - 0xb6, 0x08, 0x5e, 0xf2, 0xae, 0x38, 0xbd, 0xfb, 0xb7, 0x7b, 0xbe, 0x7d, 0x54, 0xe4, 0x7a, 0xe7, - 0x15, 0xef, 0xaa, 0x6c, 0x1e, 0x91, 0xbd, 0xff, 0x5a, 0x0c, 0x3e, 0x7e, 0xf4, 0xc9, 0x62, 0xf0, - 0x93, 0x6b, 0xef, 0x5c, 0x7d, 0xf1, 0x27, 0xd7, 0x6e, 0xfe, 0xf4, 0xda, 0xce, 0xf7, 0x07, 0x9f, - 0x7c, 0xba, 0xb5, 0xf1, 0xe3, 0x4f, 0xb7, 0x36, 0x7e, 0xf6, 0xe9, 0xd6, 0xe0, 0xfb, 0xcf, 0xb6, - 0x06, 0xff, 0xfa, 0x6c, 0x6b, 0xf0, 0xdf, 0xcf, 0xb6, 0x06, 0x9f, 0x3c, 0xdb, 0x1a, 0xfc, 0xef, - 0xb3, 0xad, 0xc1, 0x4f, 0x9f, 0x6d, 0x6d, 0xfc, 0xec, 0xd9, 0xd6, 0xe0, 0xcf, 0x3f, 0xdb, 0xda, - 0xf8, 0xe4, 0xb3, 0xad, 0x8d, 0x1f, 0x7f, 0xb6, 0xb5, 0xf1, 0x7b, 0xef, 0x4c, 0x8a, 0xf2, 0xc9, - 0xe4, 0x7e, 0xf7, 0x16, 0x75, 0xff, 0xa4, 0x7a, 0xe0, 0x7e, 0xd8, 0x5b, 0x2e, 0xb8, 0x57, 0x07, - 0xa5, 0xe7, 0xab, 0xa7, 0xaa, 0x07, 0xa5, 0x98, 0x14, 0x0f, 0xf4, 0x07, 0x75, 0xfb, 0xee, 0x7d, - 0xee, 0x89, 0x5c, 0x5c, 0x75, 0x2f, 0xdf, 0xf1, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0xd6, 0x48, - 0x5f, 0x67, 0x86, 0x17, 0x00, 0x00, + // 3771 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x99, 0x4b, 0x8f, 0x1c, 0xd7, + 0x75, 0xc7, 0xa7, 0x23, 0x81, 0x12, 0x8b, 0x92, 0x48, 0x96, 0x28, 0xa9, 0x44, 0x45, 0x83, 0x86, + 0x34, 0x76, 0xa4, 0x04, 0x87, 0xac, 0xaa, 0xfb, 0xb6, 0x25, 0xc7, 0x33, 0xa4, 0x24, 0x8e, 0x62, + 0x52, 0x34, 0xc7, 0xb1, 0x9c, 0x67, 0xe3, 0x3e, 0x67, 0x4a, 0xea, 0xae, 0xea, 0x74, 0xd7, 0x0c, + 0x45, 0xc9, 0x72, 0x04, 0x68, 0x97, 0x2c, 0x14, 0xe4, 0x65, 0x64, 0x61, 0x38, 0x0f, 0xc4, 0x48, + 0x10, 0x20, 0x8b, 0xac, 0x02, 0x74, 0x16, 0xc1, 0x64, 0x93, 0xa5, 0x40, 0x64, 0xe1, 0x65, 0x44, + 0x2d, 0xe4, 0xa5, 0x3f, 0x42, 0x70, 0x6f, 0x55, 0x57, 0xd7, 0xcc, 0x50, 0xb4, 0x91, 0x0d, 0x31, + 0xbc, 0xf7, 0x5f, 0xe7, 0xfe, 0xfa, 0x9e, 0x73, 0xcf, 0x39, 0xb7, 0x2a, 0x82, 0x03, 0x3b, 0xbf, + 0x54, 0x54, 0x97, 0xe7, 0x7a, 0xcf, 0x4e, 0xe4, 0xe5, 0x03, 0x3b, 0xb7, 0xe5, 0xc1, 0x65, 0x39, + 0x1e, 0x8f, 0xa4, 0x31, 0x55, 0x39, 0x9a, 0xdb, 0xd9, 0x41, 0xa1, 0xed, 0xfc, 0xd2, 0x74, 0x56, + 0xd5, 0x55, 0x7c, 0xa1, 0x91, 0x5f, 0x6a, 0xe4, 0x97, 0x1a, 0xf9, 0xc5, 0x17, 0xee, 0x6b, 0xa4, + 0x9a, 0xd6, 0x45, 0x55, 0xb6, 0x4f, 0x5e, 0x1c, 0x1e, 0xd3, 0x14, 0xf6, 0xf6, 0xe8, 0x88, 0xe2, + 0x85, 0x8f, 0x5f, 0x8d, 0xe2, 0x4d, 0xbf, 0xe8, 0x4e, 0xb3, 0xe6, 0x95, 0xbd, 0xaa, 0xd0, 0x36, + 0x7e, 0x3f, 0x3a, 0xed, 0xc8, 0x7b, 0x7a, 0xa4, 0xe4, 0xdc, 0x26, 0x83, 0xe1, 0xe0, 0xa5, 0x47, + 0xb7, 0x7e, 0xef, 0x70, 0x91, 0x88, 0x66, 0x18, 0xfc, 0x70, 0xbc, 0xc1, 0x4d, 0x96, 0x69, 0x43, + 0x2c, 0x50, 0x21, 0x15, 0x60, 0x2c, 0x2d, 0x48, 0x91, 0x72, 0xc8, 0xb9, 0x73, 0xd4, 0x20, 0x9c, + 0x69, 0x8a, 0x2f, 0x9e, 0x9a, 0xdf, 0x99, 0xd7, 0x76, 0x72, 0x77, 0x91, 0x5c, 0x8c, 0x1e, 0xb6, + 0x77, 0x6e, 0xcb, 0x38, 0x7e, 0x9d, 0x7c, 0xef, 0xca, 0x70, 0x4b, 0xce, 0xed, 0xb0, 0x5d, 0x74, + 0x7e, 0x6d, 0xed, 0xd6, 0xa3, 0xde, 0xb0, 0x1f, 0x8c, 0xff, 0x66, 0x10, 0x9d, 0x0f, 0x8b, 0xeb, + 0xaa, 0x9c, 0x57, 0x63, 0xdb, 0x40, 0x44, 0x01, 0xe2, 0xdd, 0xc3, 0x45, 0xb2, 0xd9, 0x4c, 0x43, + 0x3b, 0xdd, 0xc2, 0x30, 0xce, 0x05, 0x35, 0x2c, 0x05, 0x82, 0x99, 0x06, 0x9c, 0x67, 0x02, 0x04, + 0x91, 0x04, 0x90, 0x60, 0x2c, 0xc7, 0x96, 0xe5, 0x22, 0x13, 0x17, 0x4f, 0xcd, 0xf7, 0xe4, 0xcc, + 0x9a, 0xbb, 0x8b, 0xe4, 0x85, 0x16, 0xe6, 0x62, 0x80, 0xb9, 0xd2, 0x98, 0x3a, 0x01, 0x75, 0xd6, + 0x2f, 0xd4, 0x4e, 0x06, 0xb6, 0xff, 0x18, 0x44, 0x17, 0x4f, 0xb0, 0x8d, 0xa4, 0x39, 0x90, 0xa5, + 0xb6, 0x26, 0x39, 0x13, 0x20, 0x3f, 0x3c, 0x5c, 0x24, 0x6f, 0x36, 0xba, 0x23, 0x90, 0xb0, 0xd4, + 0xc5, 0x1b, 0x86, 0xd0, 0x34, 0x43, 0x22, 0x07, 0xca, 0x33, 0x02, 0xd8, 0x71, 0x0e, 0x52, 0x33, + 0x09, 0x08, 0x49, 0x23, 0x85, 0x62, 0xda, 0x11, 0xdd, 0xa3, 0xfd, 0x8d, 0x96, 0xf6, 0xc5, 0x93, + 0xb4, 0x9b, 0xad, 0xcd, 0x3e, 0xf6, 0x33, 0xc7, 0xb0, 0x97, 0x9a, 0xf8, 0xdf, 0x07, 0xd1, 0xb3, + 0x27, 0xf1, 0xa7, 0x33, 0x3b, 0x29, 0xf6, 0x27, 0xc9, 0x63, 0x81, 0xfe, 0x83, 0xc3, 0x45, 0xb2, + 0xdd, 0xc8, 0x8e, 0xd2, 0xb7, 0xb2, 0x78, 0x03, 0x21, 0xab, 0x99, 0xc6, 0x0c, 0x32, 0xec, 0xe1, + 0xad, 0x50, 0xc0, 0x51, 0xaa, 0x81, 0x5a, 0xa3, 0x85, 0xcd, 0x04, 0x62, 0xb4, 0x0f, 0xff, 0xeb, + 0x2d, 0xfc, 0x0b, 0x27, 0xe1, 0x6f, 0x36, 0x26, 0xfb, 0xec, 0x4f, 0x1f, 0x63, 0x6f, 0x25, 0xf1, + 0x8f, 0x06, 0x51, 0x7c, 0x1c, 0xbd, 0xd0, 0xc9, 0xe3, 0x81, 0x79, 0x72, 0xb8, 0x48, 0xb6, 0x9a, + 0xf9, 0x3e, 0x73, 0xa1, 0xe3, 0x0d, 0xa5, 0x72, 0xaa, 0xa8, 0x51, 0x80, 0x73, 0x93, 0x03, 0x76, + 0x1a, 0x03, 0x57, 0x19, 0x07, 0xc9, 0xb4, 0x22, 0x38, 0x43, 0xb9, 0x92, 0xa4, 0x07, 0xfb, 0x62, + 0x0b, 0xfb, 0xdc, 0x71, 0xd8, 0x42, 0xf7, 0x29, 0xcf, 0x1d, 0xa5, 0x2c, 0x74, 0xfc, 0xcf, 0x83, + 0xe8, 0xa9, 0x23, 0x7c, 0xf3, 0x5a, 0x96, 0x46, 0xce, 0x4c, 0xf2, 0x44, 0x40, 0x9c, 0x1f, 0x2e, + 0x92, 0xd7, 0x1a, 0x49, 0x87, 0xb8, 0x94, 0xc4, 0x1b, 0x3a, 0xa3, 0x18, 0x23, 0xcb, 0x81, 0x21, + 0xc4, 0x01, 0x3b, 0xc4, 0x41, 0x48, 0xe3, 0x40, 0x70, 0x64, 0xa8, 0x24, 0x88, 0x49, 0x95, 0xf6, + 0x28, 0xbf, 0xda, 0x52, 0xae, 0x1f, 0xa1, 0xdc, 0x69, 0xcd, 0xf5, 0x41, 0x9f, 0xec, 0x81, 0x2e, + 0xe7, 0x4f, 0xb2, 0x76, 0x01, 0x7c, 0xf6, 0x4b, 0x59, 0x57, 0xb1, 0x6b, 0x15, 0xb5, 0x08, 0x67, + 0x0a, 0x78, 0x96, 0x5a, 0xc0, 0xc4, 0x59, 0x90, 0x4a, 0x6a, 0xc8, 0xb1, 0x49, 0x69, 0x26, 0x50, + 0x9e, 0x0a, 0xfb, 0x0b, 0x59, 0xef, 0x17, 0xb6, 0x7d, 0xd6, 0x2e, 0x64, 0xff, 0xb6, 0x63, 0xdd, + 0x2b, 0xc6, 0x66, 0x34, 0x91, 0xa5, 0xdc, 0xb5, 0x13, 0x5b, 0xd6, 0xc9, 0xaf, 0x04, 0xd6, 0x77, + 0xfa, 0xac, 0x5e, 0x02, 0x2b, 0x49, 0xbc, 0xc1, 0x28, 0x31, 0xc8, 0xba, 0x14, 0x9c, 0xd2, 0x16, + 0xb0, 0xb6, 0x0a, 0x24, 0x93, 0x0c, 0xb4, 0x4b, 0x09, 0xe6, 0x4e, 0x20, 0xea, 0x44, 0x2f, 0x45, + 0x3d, 0xdf, 0xb2, 0x3e, 0xd5, 0xb0, 0x7a, 0x73, 0xc3, 0xeb, 0x9d, 0xb9, 0x0e, 0xd1, 0x8f, 0xaf, + 0x86, 0xe3, 0x7f, 0x18, 0x44, 0xe1, 0xc4, 0x8d, 0xe6, 0xfb, 0xd3, 0x69, 0x35, 0xab, 0x47, 0xd5, + 0xd4, 0xce, 0x64, 0xc8, 0xb2, 0xc9, 0xc3, 0x01, 0xb2, 0x38, 0x5c, 0x24, 0x6f, 0x34, 0x22, 0x68, + 0x45, 0xb0, 0x12, 0xc5, 0x1b, 0x2a, 0xa7, 0x22, 0xd5, 0x22, 0x87, 0x5c, 0xe4, 0x04, 0x70, 0x66, + 0x11, 0x88, 0x3c, 0x73, 0x60, 0x52, 0x2d, 0x09, 0xd6, 0xb9, 0xe6, 0x0a, 0xdd, 0x2f, 0x93, 0xee, + 0x34, 0xb6, 0x86, 0x6f, 0x75, 0xb6, 0xae, 0xad, 0xdd, 0x0a, 0x7b, 0xd1, 0xce, 0xac, 0x26, 0xe2, + 0x7f, 0x1c, 0x44, 0xcf, 0x1c, 0xd8, 0xf9, 0xa8, 0xa8, 0x46, 0x07, 0xd5, 0xb8, 0xb6, 0xb3, 0x99, + 0x1c, 0x19, 0xeb, 0xe4, 0xfe, 0xb8, 0x4e, 0x9e, 0x0a, 0x94, 0xe3, 0x86, 0xf2, 0xc0, 0xce, 0xa1, + 0xa8, 0x60, 0x29, 0x82, 0x56, 0x14, 0x6f, 0x30, 0xc9, 0xa4, 0x51, 0x9c, 0x00, 0xa5, 0x2a, 0x03, + 0x6c, 0x32, 0x04, 0x4a, 0x31, 0x09, 0x99, 0xb6, 0x8c, 0x0b, 0x96, 0x72, 0x4a, 0xd3, 0x2f, 0xdd, + 0xcc, 0xab, 0x8d, 0x95, 0xbe, 0xbf, 0x7d, 0x5d, 0xdb, 0xae, 0xbe, 0xdb, 0xae, 0xd3, 0x0a, 0xfc, + 0x6e, 0x26, 0x2d, 0x67, 0x6d, 0x4b, 0x59, 0xd6, 0x7d, 0x9f, 0x3f, 0x1d, 0x40, 0xf7, 0x0e, 0x17, + 0xc9, 0xb5, 0xa0, 0xf2, 0xa0, 0x8d, 0xea, 0x88, 0xdb, 0xb5, 0xc6, 0x3c, 0xb5, 0xc2, 0x80, 0x40, + 0x5c, 0x00, 0x26, 0xa9, 0x00, 0x2e, 0xb8, 0x06, 0x9d, 0xe3, 0xcc, 0x1a, 0xa2, 0x9d, 0xca, 0x69, + 0x8f, 0x34, 0x69, 0x49, 0xcf, 0x5d, 0xb5, 0x63, 0xbb, 0x2b, 0x6b, 0x6b, 0x86, 0x9b, 0x5a, 0xdb, + 0x79, 0xd8, 0xcd, 0x00, 0xf9, 0x9d, 0xb0, 0x46, 0xcf, 0xe7, 0x3f, 0x19, 0x44, 0xcf, 0xb6, 0x94, + 0x4b, 0xaf, 0xf7, 0x30, 0x1f, 0xea, 0xbc, 0xbe, 0x1d, 0x64, 0x1e, 0x73, 0xe9, 0xf7, 0x3e, 0xa7, + 0xcc, 0xad, 0x54, 0x1c, 0x09, 0x10, 0x9a, 0x21, 0xc0, 0x94, 0x18, 0x50, 0xb9, 0x4e, 0xc1, 0x58, + 0x64, 0x52, 0x63, 0x99, 0x4d, 0x1d, 0xbf, 0x1f, 0xe7, 0x76, 0x59, 0xdb, 0x59, 0x29, 0xc7, 0xc3, + 0xd6, 0xcd, 0x3e, 0x6f, 0x06, 0xce, 0xf6, 0xff, 0x3d, 0xd0, 0x8f, 0x07, 0xd1, 0x99, 0x25, 0xa8, + 0x2e, 0x26, 0xc9, 0x33, 0x01, 0x4d, 0x1e, 0x2e, 0x12, 0x14, 0x26, 0x02, 0x9a, 0x2e, 0x26, 0xde, + 0xbd, 0xd6, 0x59, 0x4a, 0x28, 0xa8, 0xd4, 0x30, 0xc8, 0x32, 0xab, 0x41, 0x89, 0x54, 0x40, 0x9a, + 0xe3, 0x5c, 0xea, 0x2c, 0x4f, 0xd3, 0x34, 0xef, 0x9f, 0xe7, 0xdf, 0x9e, 0xdb, 0xd9, 0xe5, 0xdd, + 0x59, 0xb5, 0x3f, 0x1d, 0x4e, 0x67, 0xd5, 0x41, 0x31, 0x2f, 0xaa, 0xb2, 0x28, 0x77, 0x87, 0x2f, + 0xed, 0x5c, 0xd9, 0xbe, 0xfe, 0xf2, 0xb5, 0xb5, 0x5b, 0xa7, 0x1b, 0x24, 0x6f, 0xfc, 0x9d, 0xe8, + 0xf4, 0x7c, 0x4f, 0x4e, 0xed, 0x48, 0x55, 0x75, 0x92, 0x07, 0x84, 0xdf, 0x3a, 0x5c, 0x24, 0x59, + 0x3b, 0x0c, 0xaa, 0xaa, 0xe3, 0x8d, 0x34, 0x27, 0x44, 0x61, 0x23, 0x40, 0x70, 0x25, 0x00, 0xe7, + 0x82, 0x83, 0x20, 0x98, 0x01, 0xa2, 0x34, 0xcd, 0x89, 0xe2, 0x4a, 0x49, 0x75, 0x77, 0x91, 0xc4, + 0xd1, 0x43, 0x73, 0x6b, 0xe2, 0x33, 0x5b, 0x55, 0xed, 0xa3, 0xca, 0x96, 0x73, 0xeb, 0xfb, 0x87, + 0x60, 0x68, 0xab, 0xaa, 0xe3, 0x3f, 0x1f, 0x44, 0x67, 0x9b, 0xc5, 0x66, 0x56, 0x57, 0xbb, 0x65, + 0xf1, 0xbe, 0x4d, 0x50, 0x58, 0x72, 0xf7, 0x70, 0x91, 0xb0, 0x76, 0x12, 0xba, 0xc9, 0x78, 0x43, + 0x68, 0x2d, 0xb9, 0xa3, 0x06, 0xa8, 0x23, 0x08, 0x70, 0x86, 0x1d, 0x08, 0x9a, 0x4b, 0xb0, 0x2a, + 0xa7, 0x44, 0xa7, 0x69, 0xee, 0x72, 0x7a, 0x77, 0x91, 0xbc, 0x14, 0x9d, 0x5e, 0x3d, 0xf4, 0xdc, + 0xe6, 0x7e, 0xbd, 0x67, 0xcb, 0xba, 0xd0, 0xe1, 0x7c, 0x0d, 0xbd, 0x4b, 0xc6, 0xe3, 0x62, 0xd7, + 0x96, 0xda, 0xe3, 0x3c, 0x11, 0x16, 0xb9, 0xd5, 0xc9, 0xdf, 0x8f, 0xce, 0xc8, 0xc2, 0xc8, 0x5a, + 0x8e, 0x94, 0x33, 0xd3, 0x04, 0x07, 0x9e, 0xb7, 0x1b, 0x2f, 0x34, 0x13, 0xe0, 0x27, 0xe2, 0x0d, + 0x69, 0x84, 0xd6, 0x39, 0x46, 0x80, 0x2d, 0x51, 0x80, 0x33, 0x89, 0x80, 0xfb, 0x46, 0x01, 0x19, + 0xae, 0x72, 0xcd, 0x94, 0x51, 0x1a, 0xdf, 0x5d, 0x24, 0xbf, 0x1a, 0x3d, 0x1c, 0xf4, 0x17, 0xb6, + 0x8a, 0xdd, 0xe1, 0xeb, 0x64, 0xe8, 0x2d, 0x0c, 0xa7, 0x63, 0x59, 0xbb, 0x6a, 0x36, 0xb9, 0xb6, + 0x76, 0x2b, 0x6a, 0x8c, 0x6e, 0x79, 0xcd, 0x07, 0xd1, 0xe9, 0x71, 0x31, 0x96, 0x7a, 0xa4, 0x4d, + 0x99, 0x90, 0xb0, 0xf2, 0xef, 0x37, 0x9b, 0x1f, 0x86, 0x41, 0x9b, 0xd2, 0x37, 0x73, 0x8c, 0x99, + 0x14, 0x69, 0xd0, 0x02, 0xbb, 0xc6, 0xfb, 0xc2, 0x50, 0x7c, 0xdc, 0xfb, 0x2f, 0x46, 0x67, 0xb5, + 0x29, 0x75, 0x55, 0x96, 0x56, 0xd7, 0xd5, 0x6c, 0x7e, 0xa0, 0xe3, 0x73, 0x57, 0xae, 0xde, 0x18, + 0x7e, 0xab, 0x92, 0x46, 0xc9, 0xb1, 0xcf, 0xd9, 0x33, 0xef, 0x8d, 0x60, 0xf9, 0x8a, 0x29, 0xbd, + 0x37, 0xce, 0x95, 0xbb, 0x45, 0xf9, 0xde, 0x68, 0xb2, 0x3b, 0xa9, 0x47, 0xf3, 0xfd, 0xa2, 0xb6, + 0x09, 0x0d, 0x10, 0xee, 0x70, 0x91, 0xf0, 0x76, 0x16, 0xfc, 0x2c, 0x84, 0xd9, 0x78, 0x23, 0xcd, + 0x70, 0x8a, 0xa8, 0x14, 0x40, 0x2c, 0xa2, 0x80, 0xb9, 0x53, 0xa0, 0x98, 0xc9, 0x80, 0xca, 0x5c, + 0xe5, 0x28, 0xa5, 0x52, 0x11, 0x16, 0x22, 0xf1, 0xb1, 0x72, 0x32, 0xef, 0x58, 0xe2, 0xa7, 0x6f, + 0xbc, 0xb1, 0x7d, 0xe3, 0x7b, 0xbd, 0x84, 0x3d, 0xdc, 0xf1, 0xf6, 0xbc, 0x37, 0xc2, 0x1a, 0xd7, + 0x77, 0x27, 0x75, 0x18, 0x89, 0x7f, 0x38, 0x88, 0xce, 0xcf, 0xef, 0x94, 0xf5, 0x9e, 0xad, 0x0b, + 0x3d, 0x9a, 0x54, 0x65, 0x51, 0x57, 0xb3, 0x84, 0x75, 0xc9, 0x45, 0xf4, 0xa6, 0xa1, 0x9d, 0x8e, + 0x37, 0x32, 0xe6, 0xd2, 0x5c, 0x6b, 0x01, 0x54, 0x51, 0x07, 0x58, 0xa4, 0x0a, 0x24, 0x96, 0x18, + 0x08, 0x35, 0xd6, 0x19, 0x99, 0x32, 0x97, 0xa1, 0xbb, 0x8b, 0xe4, 0xd7, 0xee, 0xf7, 0x70, 0xbc, + 0xb3, 0x1c, 0x1a, 0x5e, 0x6f, 0x86, 0x42, 0x1b, 0xd1, 0x09, 0xdb, 0xc1, 0x58, 0x46, 0xa7, 0xe6, + 0xd2, 0x59, 0x39, 0x4d, 0x78, 0xa0, 0x79, 0xe3, 0x70, 0x91, 0x5c, 0x5a, 0x8e, 0xfd, 0x32, 0x91, + 0x2a, 0xc4, 0xdd, 0x45, 0x72, 0xbe, 0x7b, 0xe2, 0x91, 0x1d, 0xe9, 0xec, 0x70, 0xf3, 0xe6, 0xb5, + 0xb5, 0x5b, 0xcb, 0xa1, 0x7f, 0x19, 0x44, 0x8f, 0xcb, 0x62, 0x3a, 0xea, 0x36, 0x2e, 0x11, 0x61, + 0xa9, 0x8f, 0x07, 0x87, 0x8b, 0xe4, 0x7a, 0xf4, 0x15, 0x39, 0x9d, 0x8e, 0xdb, 0xa8, 0x86, 0xa2, + 0x74, 0x33, 0x39, 0xaf, 0x67, 0xfb, 0xba, 0xde, 0x9f, 0xf9, 0x16, 0xb0, 0xaa, 0xad, 0xf6, 0x33, + 0xf1, 0x06, 0x62, 0x3a, 0xa5, 0x8a, 0xe7, 0x90, 0x31, 0x9c, 0xf9, 0x80, 0x31, 0xc0, 0x69, 0x66, + 0x8e, 0x07, 0xcc, 0xa5, 0x63, 0x8b, 0xc5, 0xcf, 0x6f, 0x4e, 0xa7, 0xc3, 0xed, 0x23, 0x76, 0x87, + 0x37, 0x3b, 0xbb, 0xd7, 0xd6, 0x6e, 0x3d, 0x26, 0x8b, 0xe9, 0x95, 0x4e, 0xfe, 0xe3, 0x41, 0xf4, + 0xa4, 0x1e, 0x17, 0xb6, 0xac, 0x47, 0xf3, 0xc2, 0x58, 0x5f, 0xb2, 0xfc, 0x89, 0x4f, 0xbe, 0xd6, + 0x35, 0x7e, 0x5f, 0x5f, 0x0a, 0xc0, 0x0b, 0xa0, 0x15, 0xc4, 0x1b, 0x94, 0x61, 0x43, 0xb4, 0x48, + 0x01, 0x4b, 0xe1, 0x7c, 0xb9, 0xca, 0x41, 0x1a, 0x42, 0x00, 0xcb, 0x54, 0x50, 0x29, 0xa5, 0x42, + 0xd4, 0x85, 0xf6, 0xf4, 0xbe, 0x8f, 0x3f, 0x79, 0xa5, 0x19, 0xdc, 0x29, 0x8c, 0xed, 0xa5, 0x99, + 0xf3, 0x8d, 0xd6, 0x8f, 0xb6, 0x83, 0xf1, 0xdf, 0x2d, 0x9b, 0x6a, 0x55, 0xd5, 0x4b, 0xbc, 0x55, + 0x47, 0xf5, 0xf5, 0xc0, 0x69, 0xc2, 0xbd, 0xa5, 0x69, 0xaa, 0x55, 0x55, 0x2f, 0x57, 0xe9, 0x75, + 0x55, 0xd4, 0x58, 0x42, 0x6d, 0x4a, 0xc1, 0xb1, 0xdc, 0x02, 0x4e, 0x4d, 0x0a, 0x92, 0x08, 0x0d, + 0xce, 0xaa, 0xcc, 0x31, 0x9e, 0x33, 0x22, 0xf4, 0xdd, 0x45, 0xf2, 0x5c, 0x93, 0xfc, 0x2e, 0xf4, + 0x92, 0x5f, 0xd7, 0x4b, 0x2d, 0xbb, 0xe7, 0xad, 0xaa, 0x6e, 0xa7, 0xba, 0x2e, 0xea, 0x47, 0x83, + 0x28, 0x39, 0xc1, 0xb8, 0xec, 0xfb, 0x5f, 0x09, 0x88, 0xea, 0x70, 0x91, 0x7c, 0xb3, 0x51, 0x1d, + 0x41, 0xec, 0xda, 0x7e, 0x21, 0x72, 0xc6, 0x38, 0xa5, 0x20, 0xa4, 0xd2, 0x80, 0xa5, 0xc1, 0xa0, + 0x8c, 0x43, 0xa0, 0x90, 0xd1, 0xd4, 0x21, 0x2c, 0x73, 0x45, 0x43, 0x73, 0x12, 0x08, 0x9f, 0xec, + 0x13, 0xb6, 0x4d, 0xfc, 0xb2, 0x39, 0x59, 0x01, 0x2e, 0xbb, 0xfb, 0xbf, 0x1a, 0x44, 0x4f, 0x9f, + 0xe0, 0x6b, 0x3a, 0xfc, 0x57, 0x03, 0xdd, 0x1f, 0x1e, 0x2e, 0x92, 0x6f, 0x34, 0x9a, 0x23, 0x74, + 0x6d, 0x97, 0xaf, 0x79, 0xca, 0x6c, 0x9e, 0x71, 0xa0, 0x19, 0xca, 0x00, 0x23, 0x5f, 0x3a, 0x90, + 0x92, 0xc0, 0x08, 0x17, 0xc2, 0xa6, 0x94, 0x62, 0x62, 0x43, 0x01, 0x0d, 0x6c, 0xe7, 0xfb, 0x6c, + 0xa1, 0x7d, 0x5f, 0xb6, 0x76, 0x2b, 0xb2, 0xa6, 0xab, 0x7f, 0x3f, 0x3a, 0xdb, 0x60, 0x15, 0xbb, + 0xa3, 0x62, 0x3a, 0x92, 0xd3, 0x49, 0xf2, 0x8d, 0xc0, 0xf3, 0xed, 0xa6, 0x94, 0x34, 0x3c, 0xc5, + 0x2e, 0x14, 0x53, 0x90, 0xd3, 0x89, 0xef, 0x3c, 0x32, 0x9b, 0x65, 0x32, 0x87, 0x1c, 0x51, 0xe3, + 0x1b, 0x79, 0x07, 0x1c, 0x13, 0x06, 0x18, 0x21, 0x97, 0x65, 0x79, 0x8a, 0xb1, 0xe2, 0xa1, 0x86, + 0x3d, 0x2c, 0xdf, 0x95, 0xb3, 0x38, 0xda, 0xda, 0x7e, 0x03, 0xb6, 0x6f, 0x0e, 0x37, 0x6f, 0x5e, + 0xf7, 0x91, 0x1f, 0x10, 0x8a, 0xdd, 0xed, 0xe9, 0xe6, 0x74, 0x12, 0xff, 0xf5, 0x72, 0x4f, 0x26, + 0x95, 0x2a, 0xc6, 0x76, 0x54, 0x94, 0xb5, 0xdd, 0x9d, 0x49, 0x7f, 0x60, 0x7f, 0xf3, 0xc4, 0x9e, + 0x34, 0x1a, 0x58, 0x69, 0x7c, 0xba, 0x22, 0x16, 0x73, 0x93, 0x81, 0x12, 0x04, 0x03, 0xe6, 0x8c, + 0x80, 0x50, 0x94, 0x83, 0xb3, 0x3c, 0xb7, 0x54, 0x19, 0xc3, 0x44, 0xde, 0xdb, 0x93, 0xeb, 0xc1, + 0x42, 0xa8, 0x63, 0x8d, 0x05, 0xdf, 0xa1, 0x79, 0xdb, 0xcd, 0xc4, 0x6a, 0x3c, 0xfe, 0x64, 0x10, + 0x85, 0x89, 0x91, 0x1b, 0x57, 0xb7, 0x47, 0xba, 0x1a, 0x8f, 0x9b, 0xb3, 0x9b, 0x7c, 0xb3, 0x7b, + 0x51, 0xf0, 0x4a, 0xa3, 0x00, 0xaf, 0x80, 0x95, 0x22, 0xde, 0xc8, 0x9d, 0x40, 0x99, 0x32, 0x1c, + 0x72, 0xaa, 0x85, 0xcf, 0x1a, 0x16, 0x94, 0x25, 0xf4, 0x78, 0xd6, 0x78, 0xa6, 0xdd, 0x9f, 0xb3, + 0xaf, 0x8f, 0xab, 0xdb, 0xc3, 0x2b, 0x9d, 0x81, 0x6b, 0x6b, 0xb7, 0xc2, 0x2d, 0xcf, 0x0f, 0xaf, + 0x46, 0xe3, 0xbf, 0x1c, 0x44, 0xe7, 0x43, 0x71, 0x2d, 0x7a, 0x55, 0x38, 0xd9, 0x0c, 0x38, 0xb6, + 0xc9, 0xe7, 0xa1, 0xc4, 0xf6, 0xa7, 0xe3, 0x0d, 0xcd, 0x8c, 0x10, 0x56, 0x49, 0x50, 0x29, 0x12, + 0x80, 0x53, 0x9b, 0x82, 0xb4, 0x24, 0x05, 0x61, 0xb5, 0x40, 0xa9, 0xa1, 0x14, 0x65, 0xfe, 0x02, + 0xb3, 0x11, 0x9d, 0x55, 0xb3, 0x89, 0x7f, 0xde, 0xd8, 0x71, 0x71, 0x60, 0x67, 0x77, 0xe2, 0xf3, + 0x57, 0x7d, 0xb9, 0x3d, 0x56, 0xf2, 0xcf, 0x79, 0x49, 0x7f, 0xcc, 0x63, 0x35, 0x1e, 0x9c, 0x55, + 0xfb, 0xb5, 0x35, 0x23, 0x63, 0xaa, 0x79, 0x1b, 0xd5, 0xef, 0x04, 0xb6, 0x3f, 0xe8, 0x79, 0xb0, + 0xd1, 0x80, 0xd7, 0x2c, 0xa3, 0xda, 0x66, 0x32, 0xcb, 0x84, 0xe1, 0x60, 0x95, 0x55, 0x80, 0x49, + 0x26, 0x40, 0x22, 0x4e, 0xc1, 0x68, 0xae, 0xb9, 0x15, 0x39, 0xc2, 0x9a, 0x85, 0xcd, 0x7a, 0x34, + 0x24, 0xe6, 0x77, 0xeb, 0x22, 0x3e, 0x73, 0x2b, 0x98, 0x19, 0x5e, 0xbd, 0x5a, 0xed, 0x2c, 0x83, + 0xba, 0x19, 0xba, 0x6a, 0xaa, 0x79, 0x13, 0xd4, 0x7f, 0x3f, 0x68, 0xa3, 0xfa, 0xb6, 0x94, 0xd3, + 0x96, 0xa7, 0x0c, 0x3c, 0xef, 0xf5, 0xa2, 0xda, 0x4f, 0x2e, 0x41, 0x38, 0xcf, 0x7d, 0xe7, 0x21, + 0xc0, 0x50, 0xaa, 0x00, 0x6b, 0x47, 0x40, 0xf0, 0x14, 0x01, 0x13, 0x22, 0x55, 0x86, 0x5a, 0x8e, + 0x70, 0x7a, 0xd7, 0x6f, 0x73, 0xe3, 0xb5, 0xec, 0x6d, 0xab, 0x86, 0x9b, 0xab, 0x32, 0x32, 0x94, + 0xa5, 0x19, 0x6e, 0xde, 0xdc, 0xee, 0xe5, 0xf9, 0xe1, 0x4b, 0x6f, 0x6f, 0x6e, 0xde, 0x7c, 0x79, + 0x98, 0x75, 0xe7, 0xef, 0x71, 0xbf, 0xea, 0xdb, 0x52, 0x4e, 0x1b, 0xc8, 0x7f, 0x5d, 0xde, 0xf7, + 0x03, 0x64, 0x97, 0x4e, 0xab, 0xc0, 0xf9, 0x83, 0xc3, 0x45, 0xf2, 0xb5, 0xf6, 0xbe, 0x1f, 0x38, + 0x57, 0x79, 0xd4, 0x61, 0xe6, 0x18, 0x17, 0x16, 0x08, 0x4d, 0x33, 0xc0, 0xd2, 0x71, 0x50, 0x24, + 0x77, 0x20, 0x44, 0x4e, 0x89, 0x25, 0x32, 0x65, 0xd8, 0xf7, 0x4f, 0xaf, 0xb4, 0xa8, 0xf8, 0x97, + 0x47, 0xcd, 0xfb, 0x89, 0xf6, 0xdc, 0x92, 0xb6, 0x7f, 0x51, 0x6d, 0x5e, 0x0d, 0xcd, 0x8b, 0xda, + 0xf6, 0x2e, 0x03, 0xed, 0x06, 0x4f, 0xbb, 0xbe, 0x7b, 0xab, 0x7d, 0x35, 0xe4, 0x75, 0xbd, 0xdb, + 0x40, 0xe7, 0x74, 0x69, 0x05, 0x63, 0x18, 0x03, 0xce, 0x9d, 0xf1, 0xcd, 0x8f, 0x06, 0x2e, 0x65, + 0x0e, 0x9a, 0x67, 0x29, 0xcd, 0x19, 0xa2, 0xc8, 0xa5, 0xfd, 0x13, 0xb2, 0x53, 0xd4, 0xf6, 0xe8, + 0x25, 0x35, 0xdc, 0x33, 0xfd, 0xf0, 0x6a, 0xb4, 0xd9, 0xd3, 0x3a, 0x7a, 0x22, 0x10, 0x9a, 0x72, + 0x19, 0x86, 0x7f, 0x14, 0xa8, 0xbe, 0x75, 0xb8, 0x48, 0x68, 0x33, 0x07, 0xa6, 0x9c, 0xaf, 0x92, + 0xaa, 0xa4, 0xca, 0x31, 0x06, 0xd8, 0x28, 0x0c, 0xd8, 0xe1, 0x0c, 0x24, 0xa1, 0x04, 0x78, 0x66, + 0x64, 0x6e, 0x8c, 0x95, 0x24, 0xf5, 0xe7, 0xe3, 0x89, 0xe8, 0x11, 0x55, 0xb8, 0x59, 0x35, 0xaf, + 0xe3, 0x87, 0xae, 0xde, 0xd8, 0x59, 0xe6, 0xb1, 0xab, 0x65, 0x1b, 0x6e, 0x7f, 0xb1, 0xbc, 0xc1, + 0xcf, 0xad, 0xde, 0x9f, 0xd9, 0x89, 0x9d, 0xef, 0xb5, 0xab, 0xcf, 0xba, 0x43, 0xf0, 0x6a, 0x7b, + 0x83, 0x5f, 0x49, 0x96, 0x10, 0x82, 0x68, 0x42, 0x59, 0x9e, 0x82, 0x22, 0xfe, 0x52, 0x60, 0xad, + 0x01, 0x61, 0x52, 0x05, 0x99, 0x4c, 0x51, 0x9e, 0x22, 0x69, 0x9d, 0x6b, 0x32, 0x7b, 0xb3, 0x1d, + 0xe7, 0x76, 0x82, 0x85, 0xeb, 0x76, 0xbe, 0x77, 0x34, 0xb3, 0xef, 0x74, 0x96, 0x1b, 0xaa, 0x1f, + 0x2f, 0x2b, 0x62, 0x8f, 0xaa, 0x8b, 0xb2, 0x79, 0x00, 0xd3, 0xbd, 0x8a, 0xd8, 0x03, 0x5b, 0xc5, + 0x5a, 0xea, 0x04, 0x27, 0xd2, 0x49, 0xe0, 0x18, 0x0b, 0xc0, 0x4c, 0x53, 0xe0, 0x4c, 0x12, 0xc8, + 0x91, 0x70, 0xd8, 0xaa, 0xdc, 0x48, 0x66, 0x43, 0xcd, 0x6e, 0xd8, 0x9e, 0xec, 0xb1, 0x1d, 0xaf, + 0xd9, 0x2b, 0xbc, 0x2e, 0xa0, 0xfe, 0x74, 0x10, 0x05, 0xf2, 0x91, 0x9c, 0x4e, 0xe7, 0xb5, 0xd4, + 0xef, 0xb6, 0xbb, 0x56, 0x07, 0xb8, 0xdf, 0x69, 0x3a, 0x9f, 0x00, 0xb7, 0x14, 0x74, 0x8e, 0x13, + 0x06, 0x11, 0x97, 0x12, 0x60, 0x98, 0x65, 0x80, 0xb5, 0xce, 0x40, 0x0a, 0x9b, 0x7a, 0x3f, 0xa6, + 0xa9, 0xc2, 0x79, 0x9a, 0x31, 0x7f, 0x06, 0x9e, 0x6e, 0xb9, 0x9e, 0xd8, 0x9c, 0x4e, 0x77, 0xfc, + 0xf3, 0xdd, 0x8e, 0x85, 0x17, 0xac, 0x9b, 0xad, 0xd5, 0x66, 0xbf, 0xa6, 0xd1, 0xe9, 0xa6, 0x8d, + 0xaf, 0x4a, 0x9b, 0xec, 0x77, 0x35, 0x30, 0x6b, 0x87, 0xa1, 0x2a, 0x6d, 0xbc, 0x61, 0x09, 0xa2, + 0x2a, 0xcb, 0x29, 0x50, 0x86, 0x08, 0x60, 0x94, 0x22, 0x50, 0x99, 0x74, 0x90, 0x4a, 0x8c, 0x58, + 0x96, 0x39, 0x67, 0x35, 0x0a, 0xce, 0x3a, 0x53, 0x66, 0xab, 0x8e, 0xf0, 0x74, 0xd3, 0xb7, 0xbf, + 0x55, 0x86, 0x7b, 0x5c, 0x30, 0xf7, 0x56, 0x69, 0xe3, 0xff, 0x19, 0x44, 0x5f, 0x5d, 0xfe, 0xfe, + 0xe5, 0xf1, 0x1c, 0xd5, 0x33, 0xe9, 0x5c, 0xa1, 0x47, 0x45, 0x39, 0x2f, 0x76, 0xf7, 0x96, 0x87, + 0xeb, 0xa0, 0xcb, 0x0a, 0x37, 0x9a, 0x67, 0xa0, 0xdf, 0xc4, 0xb6, 0xcf, 0x40, 0xfb, 0xcc, 0x72, + 0x97, 0x52, 0x6a, 0xb8, 0x42, 0x38, 0x85, 0xd4, 0x39, 0xdf, 0x15, 0x32, 0x0c, 0x52, 0x6b, 0xeb, + 0xbb, 0x7b, 0xca, 0x53, 0x89, 0x2c, 0x33, 0xa4, 0xb9, 0xf5, 0x19, 0x7b, 0x50, 0x68, 0x0b, 0x85, + 0x89, 0x9f, 0xeb, 0xa7, 0x8a, 0xef, 0x34, 0x76, 0x87, 0xdb, 0x8d, 0xdd, 0x6b, 0x6b, 0xb7, 0x5e, + 0x68, 0xf7, 0x6d, 0x29, 0x69, 0x15, 0xad, 0xa0, 0xd9, 0xc8, 0x2a, 0x3a, 0xad, 0xc7, 0x56, 0xce, + 0x0e, 0x0a, 0x7b, 0x3b, 0xb9, 0x1d, 0xc0, 0xdf, 0x6a, 0x36, 0xb2, 0x1b, 0x8e, 0x37, 0x1c, 0x41, + 0x9c, 0xa5, 0x59, 0x0e, 0x99, 0x33, 0x16, 0x30, 0xf6, 0xbd, 0xab, 0xef, 0x2a, 0xb4, 0x96, 0xd2, + 0x90, 0xcc, 0x1a, 0xae, 0x79, 0xf0, 0x60, 0xef, 0xa1, 0xd3, 0x57, 0xfc, 0x9f, 0xdf, 0x2d, 0xec, + 0x6d, 0x7f, 0xf7, 0x5e, 0x8d, 0xdf, 0x2f, 0xd2, 0xbb, 0x97, 0x93, 0xef, 0x3d, 0x28, 0xd2, 0x57, + 0xef, 0x27, 0xad, 0xb3, 0xc2, 0xe4, 0xd8, 0x80, 0xc5, 0x4e, 0xf9, 0x52, 0xa9, 0x41, 0x70, 0x8a, + 0x40, 0x90, 0xdc, 0x58, 0x8c, 0x85, 0xe1, 0x08, 0x7d, 0x49, 0xa4, 0x2f, 0xdf, 0x3a, 0x9e, 0x8c, + 0xf4, 0xee, 0x7d, 0xe4, 0xd1, 0x5c, 0xdf, 0xb1, 0xdd, 0xb9, 0x7f, 0xae, 0x5f, 0x51, 0x51, 0x85, + 0x98, 0xca, 0x24, 0x01, 0x9e, 0x72, 0x0e, 0x58, 0x13, 0x0d, 0x8a, 0x6a, 0x05, 0x59, 0x86, 0xf3, + 0xd4, 0x19, 0x4b, 0x78, 0x26, 0xfe, 0x7f, 0xb9, 0x3e, 0xeb, 0x63, 0x77, 0xb9, 0xbe, 0x03, 0xfe, + 0xe1, 0xb2, 0xb0, 0x77, 0x47, 0xb3, 0x83, 0x7e, 0x3f, 0x40, 0x8f, 0x7a, 0x85, 0xbd, 0x3b, 0x9d, + 0x2b, 0x70, 0xa6, 0x1d, 0x65, 0x92, 0x0b, 0xe0, 0x8a, 0x51, 0xc0, 0xb9, 0x60, 0xa0, 0x88, 0x73, + 0x60, 0x53, 0x8d, 0x53, 0xc3, 0xd2, 0xdc, 0x10, 0x1f, 0x7a, 0xcf, 0xb6, 0xe0, 0xe7, 0xbb, 0x03, + 0xda, 0xa3, 0xba, 0xd0, 0x3f, 0xa3, 0x1d, 0xd9, 0xbf, 0x0d, 0xa2, 0xe7, 0xef, 0x5b, 0x85, 0x3a, + 0xc0, 0x0f, 0xba, 0x8b, 0xd3, 0x6b, 0x8d, 0xf4, 0x44, 0x21, 0x5a, 0x71, 0xa6, 0x44, 0xeb, 0x2c, + 0x53, 0x04, 0x88, 0xd0, 0x16, 0xb0, 0xd5, 0x08, 0x84, 0xb2, 0x0c, 0x90, 0x35, 0x4a, 0x73, 0x8d, + 0x55, 0xca, 0xfc, 0xa5, 0x64, 0xd8, 0x72, 0x26, 0xc7, 0x6a, 0x51, 0x1f, 0xf7, 0xe2, 0xc9, 0xa2, + 0xd4, 0x41, 0xff, 0x64, 0x79, 0x83, 0xea, 0xf7, 0x49, 0x1d, 0xf0, 0xf7, 0xbb, 0x97, 0x69, 0xcb, + 0x1b, 0x54, 0xbf, 0x55, 0xea, 0xc1, 0xe6, 0x1a, 0x71, 0xc4, 0x33, 0x50, 0x16, 0x39, 0xc0, 0x4e, + 0x18, 0x50, 0x2a, 0x17, 0x90, 0x2a, 0x9d, 0x71, 0xc2, 0x8d, 0x26, 0xc2, 0x06, 0xd8, 0x55, 0xb7, + 0x74, 0xa1, 0xd7, 0x2d, 0x9d, 0x08, 0xd4, 0x55, 0xdb, 0xd4, 0x81, 0x7e, 0xd8, 0x7e, 0x99, 0xf2, + 0x05, 0xb4, 0xe3, 0xfb, 0xb0, 0x3b, 0xc3, 0xa2, 0xfd, 0x32, 0xe5, 0x6b, 0xe8, 0x8a, 0x0b, 0x63, + 0x4a, 0x6d, 0x6e, 0x34, 0x58, 0x27, 0x1d, 0xe0, 0x4c, 0x48, 0xe0, 0x56, 0x0a, 0x9f, 0x19, 0x33, + 0x27, 0x04, 0xc9, 0x50, 0xe8, 0xe2, 0x4e, 0x96, 0xd1, 0xb3, 0x6d, 0x19, 0xed, 0x96, 0xff, 0x62, + 0x10, 0xbd, 0xfc, 0x0b, 0x33, 0x62, 0xc7, 0xf5, 0x83, 0xc0, 0xf5, 0x27, 0xfe, 0x56, 0xff, 0xed, + 0xe6, 0xb9, 0x07, 0x66, 0xc5, 0x15, 0x30, 0x62, 0x24, 0x75, 0x8a, 0x60, 0xd0, 0x48, 0x32, 0xc0, + 0x9a, 0x09, 0x10, 0xcc, 0x3a, 0x90, 0x0a, 0xbb, 0xd4, 0x22, 0x84, 0x90, 0xca, 0xee, 0x86, 0x8c, + 0xb5, 0x4a, 0x8c, 0x1b, 0x0f, 0x48, 0x8c, 0xfd, 0x9d, 0xfd, 0xca, 0x03, 0x33, 0x64, 0xf7, 0x4b, + 0xef, 0x7b, 0xa7, 0xee, 0x7e, 0xd9, 0x1f, 0x3f, 0xf0, 0x4e, 0xbd, 0xfa, 0x21, 0x39, 0xa3, 0x46, + 0xdb, 0xdc, 0x00, 0x16, 0x9c, 0x00, 0x26, 0xc8, 0x82, 0xb0, 0x39, 0x01, 0x6c, 0x25, 0x65, 0x0c, + 0xab, 0x9c, 0x3a, 0xf9, 0x25, 0x77, 0xea, 0xe3, 0xc1, 0xb0, 0xba, 0x18, 0x76, 0x8c, 0xff, 0x35, + 0x88, 0xd6, 0x9b, 0xac, 0x65, 0x95, 0xf7, 0xc8, 0x68, 0xae, 0x65, 0x59, 0x16, 0xe5, 0xee, 0x0a, + 0xf4, 0xa3, 0xe6, 0xd3, 0xe9, 0xf7, 0x0f, 0x17, 0xc9, 0xeb, 0x8d, 0x18, 0x6e, 0x5b, 0xe5, 0xdd, + 0x00, 0x4b, 0x71, 0x3f, 0x2b, 0x10, 0xe6, 0x38, 0x67, 0x02, 0x64, 0x2e, 0x30, 0x60, 0xac, 0x1d, + 0xa8, 0x2c, 0x75, 0xe0, 0xf2, 0x9c, 0x1a, 0x6a, 0xb3, 0x8c, 0x50, 0x11, 0xde, 0xa8, 0x9c, 0xdf, + 0xb3, 0x77, 0xf6, 0x7c, 0xd6, 0x59, 0xd5, 0xd0, 0x67, 0xdb, 0xdc, 0x36, 0xdc, 0x69, 0xed, 0x9e, + 0x38, 0x7b, 0x6f, 0x5b, 0xe5, 0xd3, 0x48, 0x3b, 0xdd, 0xfd, 0x0a, 0xdb, 0x7e, 0xe9, 0x2d, 0x7d, + 0x5d, 0xff, 0xe4, 0x46, 0xe0, 0x7d, 0xad, 0xa9, 0x47, 0x81, 0xb7, 0x0c, 0x85, 0x3d, 0x45, 0xb9, + 0x10, 0x86, 0x31, 0xc8, 0x1d, 0xf5, 0x3b, 0x89, 0x29, 0x48, 0x23, 0x73, 0x30, 0x8a, 0x98, 0x0c, + 0xe7, 0x9a, 0xb3, 0x10, 0x12, 0x8f, 0x45, 0x0f, 0x07, 0x7d, 0xf8, 0x77, 0xf9, 0x51, 0xf7, 0x46, + 0x55, 0xda, 0xad, 0x0b, 0xd1, 0x29, 0xdd, 0x7c, 0x5a, 0x8e, 0xfe, 0x73, 0x31, 0xf8, 0xe4, 0xc6, + 0xa7, 0x8b, 0xc1, 0x17, 0x8f, 0xbc, 0x79, 0xea, 0xd1, 0x2f, 0x1e, 0x39, 0xf7, 0xb3, 0x47, 0xb6, + 0x3e, 0x1a, 0x7c, 0xfa, 0xd9, 0xfa, 0xda, 0x4f, 0x3f, 0x5b, 0x5f, 0xfb, 0xf9, 0x67, 0xeb, 0x83, + 0x8f, 0xee, 0xad, 0x0f, 0xfe, 0xe9, 0xde, 0xfa, 0xe0, 0xbf, 0xef, 0xad, 0x0f, 0x3e, 0xbd, 0xb7, + 0x3e, 0xf8, 0xdf, 0x7b, 0xeb, 0x83, 0x9f, 0xdd, 0x5b, 0x5f, 0xfb, 0xf9, 0xbd, 0xf5, 0xc1, 0x9f, + 0x7d, 0xbe, 0xbe, 0xf6, 0xe9, 0xe7, 0xeb, 0x6b, 0x3f, 0xfd, 0x7c, 0x7d, 0xed, 0x77, 0xdf, 0xdc, + 0xad, 0xa6, 0xef, 0xee, 0x5e, 0x5a, 0x7e, 0xa9, 0xb8, 0xb4, 0x3f, 0xbf, 0x1c, 0xfe, 0x70, 0xd5, + 0x6c, 0x02, 0xe1, 0x9d, 0xb4, 0xb1, 0xb3, 0xee, 0x43, 0xc6, 0xe5, 0xa9, 0xda, 0xad, 0x2e, 0xdb, + 0xf7, 0xea, 0xf6, 0x6b, 0xf8, 0x91, 0x0f, 0xe7, 0xea, 0x54, 0xf8, 0x1e, 0x8e, 0xfe, 0x2f, 0x00, + 0x00, 0xff, 0xff, 0x61, 0x87, 0x18, 0x92, 0x9c, 0x1f, 0x00, 0x00, } func (this *AddonServiceChoice) Equal(that interface{}) bool { @@ -911,6 +1109,78 @@ func (this *AddonServiceChoice_F5XcConsoleBasePremium) Equal(that interface{}) b } return true } +func (this *AddonServiceChoice_F5XcConsoleBasic) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcConsoleBasic) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcConsoleBasic) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleBasic != that1.F5XcConsoleBasic { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcConsoleStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcConsoleStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcConsoleStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleStandard != that1.F5XcConsoleStandard { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcConsoleAdvanced) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcConsoleAdvanced) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcConsoleAdvanced) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleAdvanced != that1.F5XcConsoleAdvanced { + return false + } + return true +} func (this *AddonServiceChoice_F5XcChildManagement) Equal(that interface{}) bool { if that == nil { return this == nil @@ -1703,14 +1973,14 @@ func (this *AddonServiceChoice_Clearview) Equal(that interface{}) bool { } return true } -func (this *AddonServiceChoice_F5XcNone) Equal(that interface{}) bool { +func (this *AddonServiceChoice_F5XcSecuremeshStandard) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AddonServiceChoice_F5XcNone) + that1, ok := that.(*AddonServiceChoice_F5XcSecuremeshStandard) if !ok { - that2, ok := that.(AddonServiceChoice_F5XcNone) + that2, ok := that.(AddonServiceChoice_F5XcSecuremeshStandard) if ok { that1 = &that2 } else { @@ -1722,113 +1992,353 @@ func (this *AddonServiceChoice_F5XcNone) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcNone != that1.F5XcNone { + if this.F5XcSecuremeshStandard != that1.F5XcSecuremeshStandard { return false } return true } -func (this *AddonServiceChoice) GoString() string { - if this == nil { - return "nil" +func (this *AddonServiceChoice_F5XcWaapStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 42) - s = append(s, "&vesenv.AddonServiceChoice{") - if this.Choice != nil { - s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") + + that1, ok := that.(*AddonServiceChoice_F5XcWaapStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcWaapStandard) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AddonServiceChoice_F5XcBase) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcBase{` + - `F5XcBase:` + fmt.Sprintf("%#v", this.F5XcBase) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_F5XcConsoleBase) GoString() string { - if this == nil { - return "nil" + if this.F5XcWaapStandard != that1.F5XcWaapStandard { + return false } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBase{` + - `F5XcConsoleBase:` + fmt.Sprintf("%#v", this.F5XcConsoleBase) + `}`}, ", ") - return s + return true } -func (this *AddonServiceChoice_F5XcConsoleBaseAdvanced) GoString() string { - if this == nil { - return "nil" +func (this *AddonServiceChoice_F5XcAppstackStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBaseAdvanced{` + - `F5XcConsoleBaseAdvanced:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvanced) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_F5XcConsoleBasePremium) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*AddonServiceChoice_F5XcAppstackStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcAppstackStandard) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBasePremium{` + - `F5XcConsoleBasePremium:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremium) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_F5XcChildManagement) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcChildManagement{` + - `F5XcChildManagement:` + fmt.Sprintf("%#v", this.F5XcChildManagement) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_F5XcSupportOperations) GoString() string { - if this == nil { - return "nil" + if this.F5XcAppstackStandard != that1.F5XcAppstackStandard { + return false } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcSupportOperations{` + - `F5XcSupportOperations:` + fmt.Sprintf("%#v", this.F5XcSupportOperations) + `}`}, ", ") - return s + return true } -func (this *AddonServiceChoice_VesIoVolterraDefault) GoString() string { - if this == nil { - return "nil" +func (this *AddonServiceChoice_F5XcSiteManagementStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoVolterraDefault{` + - `VesIoVolterraDefault:` + fmt.Sprintf("%#v", this.VesIoVolterraDefault) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_VesIoTenantManagement) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*AddonServiceChoice_F5XcSiteManagementStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcSiteManagementStandard) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoTenantManagement{` + - `VesIoTenantManagement:` + fmt.Sprintf("%#v", this.VesIoTenantManagement) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_VesIoSupportManagement) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoSupportManagement{` + - `VesIoSupportManagement:` + fmt.Sprintf("%#v", this.VesIoSupportManagement) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_VesIoScim) GoString() string { - if this == nil { - return "nil" + if this.F5XcSiteManagementStandard != that1.F5XcSiteManagementStandard { + return false } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoScim{` + - `VesIoScim:` + fmt.Sprintf("%#v", this.VesIoScim) + `}`}, ", ") - return s + return true } -func (this *AddonServiceChoice_ShapeBot) GoString() string { - if this == nil { - return "nil" +func (this *AddonServiceChoice_F5XcRoutedDdosStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.AddonServiceChoice_ShapeBot{` + - `ShapeBot:` + fmt.Sprintf("%#v", this.ShapeBot) + `}`}, ", ") - return s -} -func (this *AddonServiceChoice_ShapeRecognize) GoString() string { - if this == nil { + + that1, ok := that.(*AddonServiceChoice_F5XcRoutedDdosStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcRoutedDdosStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcRoutedDdosStandard != that1.F5XcRoutedDdosStandard { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcDnsStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcDnsStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcDnsStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcDnsStandard != that1.F5XcDnsStandard { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcApplicationTrafficInsightStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcApplicationTrafficInsightStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcApplicationTrafficInsightStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcApplicationTrafficInsightStandard != that1.F5XcApplicationTrafficInsightStandard { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcBotDefenseStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcBotDefenseStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcBotDefenseStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcBotDefenseStandard != that1.F5XcBotDefenseStandard { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcWebAppScanningStandard) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcWebAppScanningStandard) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcWebAppScanningStandard) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcWebAppScanningStandard != that1.F5XcWebAppScanningStandard { + return false + } + return true +} +func (this *AddonServiceChoice_F5XcNone) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AddonServiceChoice_F5XcNone) + if !ok { + that2, ok := that.(AddonServiceChoice_F5XcNone) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcNone != that1.F5XcNone { + return false + } + return true +} +func (this *AddonServiceChoice) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 54) + s = append(s, "&vesenv.AddonServiceChoice{") + if this.Choice != nil { + s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AddonServiceChoice_F5XcBase) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcBase{` + + `F5XcBase:` + fmt.Sprintf("%#v", this.F5XcBase) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcConsoleBase) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBase{` + + `F5XcConsoleBase:` + fmt.Sprintf("%#v", this.F5XcConsoleBase) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcConsoleBaseAdvanced) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBaseAdvanced{` + + `F5XcConsoleBaseAdvanced:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvanced) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcConsoleBasePremium) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBasePremium{` + + `F5XcConsoleBasePremium:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremium) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcConsoleBasic) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleBasic{` + + `F5XcConsoleBasic:` + fmt.Sprintf("%#v", this.F5XcConsoleBasic) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcConsoleStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleStandard{` + + `F5XcConsoleStandard:` + fmt.Sprintf("%#v", this.F5XcConsoleStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcConsoleAdvanced) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcConsoleAdvanced{` + + `F5XcConsoleAdvanced:` + fmt.Sprintf("%#v", this.F5XcConsoleAdvanced) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcChildManagement) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcChildManagement{` + + `F5XcChildManagement:` + fmt.Sprintf("%#v", this.F5XcChildManagement) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcSupportOperations) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcSupportOperations{` + + `F5XcSupportOperations:` + fmt.Sprintf("%#v", this.F5XcSupportOperations) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_VesIoVolterraDefault) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoVolterraDefault{` + + `VesIoVolterraDefault:` + fmt.Sprintf("%#v", this.VesIoVolterraDefault) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_VesIoTenantManagement) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoTenantManagement{` + + `VesIoTenantManagement:` + fmt.Sprintf("%#v", this.VesIoTenantManagement) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_VesIoSupportManagement) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoSupportManagement{` + + `VesIoSupportManagement:` + fmt.Sprintf("%#v", this.VesIoSupportManagement) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_VesIoScim) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_VesIoScim{` + + `VesIoScim:` + fmt.Sprintf("%#v", this.VesIoScim) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_ShapeBot) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_ShapeBot{` + + `ShapeBot:` + fmt.Sprintf("%#v", this.ShapeBot) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_ShapeRecognize) GoString() string { + if this == nil { return "nil" } s := strings.Join([]string{`&vesenv.AddonServiceChoice_ShapeRecognize{` + @@ -2035,6 +2545,78 @@ func (this *AddonServiceChoice_Clearview) GoString() string { `Clearview:` + fmt.Sprintf("%#v", this.Clearview) + `}`}, ", ") return s } +func (this *AddonServiceChoice_F5XcSecuremeshStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcSecuremeshStandard{` + + `F5XcSecuremeshStandard:` + fmt.Sprintf("%#v", this.F5XcSecuremeshStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcWaapStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcWaapStandard{` + + `F5XcWaapStandard:` + fmt.Sprintf("%#v", this.F5XcWaapStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcAppstackStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcAppstackStandard{` + + `F5XcAppstackStandard:` + fmt.Sprintf("%#v", this.F5XcAppstackStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcSiteManagementStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcSiteManagementStandard{` + + `F5XcSiteManagementStandard:` + fmt.Sprintf("%#v", this.F5XcSiteManagementStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcRoutedDdosStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcRoutedDdosStandard{` + + `F5XcRoutedDdosStandard:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcDnsStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcDnsStandard{` + + `F5XcDnsStandard:` + fmt.Sprintf("%#v", this.F5XcDnsStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcApplicationTrafficInsightStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcApplicationTrafficInsightStandard{` + + `F5XcApplicationTrafficInsightStandard:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcBotDefenseStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcBotDefenseStandard{` + + `F5XcBotDefenseStandard:` + fmt.Sprintf("%#v", this.F5XcBotDefenseStandard) + `}`}, ", ") + return s +} +func (this *AddonServiceChoice_F5XcWebAppScanningStandard) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.AddonServiceChoice_F5XcWebAppScanningStandard{` + + `F5XcWebAppScanningStandard:` + fmt.Sprintf("%#v", this.F5XcWebAppScanningStandard) + `}`}, ", ") + return s +} func (this *AddonServiceChoice_F5XcNone) GoString() string { if this == nil { return "nil" @@ -2202,6 +2784,57 @@ func (m *AddonServiceChoice_F5XcConsoleBasePremium) MarshalToSizedBuffer(dAtA [] dAtA[i] = 0x60 return len(dAtA) - i, nil } +func (m *AddonServiceChoice_F5XcConsoleBasic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcConsoleBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x68 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcConsoleStandard) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcConsoleStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleStandard { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x70 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcConsoleAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcConsoleAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleAdvanced { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x78 + return len(dAtA) - i, nil +} func (m *AddonServiceChoice_VesIoVolterraDefault) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -2601,34 +3234,205 @@ func (m *AddonServiceChoice_F5XcWaapBasic) MarshalToSizedBuffer(dAtA []byte) (in dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcWaapAdvanced) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcWaapAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcWaapAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapAdvanced { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcSiteManagementBasic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcSiteManagementBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementBasic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcDnsBasic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcDnsBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsBasic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcSecuremeshBasic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcSecuremeshBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshBasic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcSecuremeshAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcSecuremeshAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshAdvanced { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcAppstackBasic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcAppstackBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackBasic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_NginxOne) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_NginxOne) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.NginxOne { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightBasic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_Clearview) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AddonServiceChoice_Clearview) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.Clearview { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil +} +func (m *AddonServiceChoice_F5XcSecuremeshStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcWaapAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcSecuremeshStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapAdvanced { + if m.F5XcSecuremeshStandard { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcSiteManagementBasic) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcWaapStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcSiteManagementBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcWaapStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSiteManagementBasic { + if m.F5XcWaapStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2636,18 +3440,18 @@ func (m *AddonServiceChoice_F5XcSiteManagementBasic) MarshalToSizedBuffer(dAtA [ i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0x80 + dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcDnsBasic) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcAppstackStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcDnsBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcAppstackStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDnsBasic { + if m.F5XcAppstackStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2655,18 +3459,18 @@ func (m *AddonServiceChoice_F5XcDnsBasic) MarshalToSizedBuffer(dAtA []byte) (int i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0x88 + dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcSecuremeshBasic) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcSiteManagementStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcSecuremeshBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcSiteManagementStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshBasic { + if m.F5XcSiteManagementStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2674,18 +3478,18 @@ func (m *AddonServiceChoice_F5XcSecuremeshBasic) MarshalToSizedBuffer(dAtA []byt i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0x90 + dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcSecuremeshAdvanced) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcRoutedDdosStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcSecuremeshAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcRoutedDdosStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshAdvanced { + if m.F5XcRoutedDdosStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2693,18 +3497,18 @@ func (m *AddonServiceChoice_F5XcSecuremeshAdvanced) MarshalToSizedBuffer(dAtA [] i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0x98 + dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcAppstackBasic) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcDnsStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcAppstackBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcDnsStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAppstackBasic { + if m.F5XcDnsStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2712,18 +3516,18 @@ func (m *AddonServiceChoice_F5XcAppstackBasic) MarshalToSizedBuffer(dAtA []byte) i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0xa0 + dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_NginxOne) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcApplicationTrafficInsightStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_NginxOne) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcApplicationTrafficInsightStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.NginxOne { + if m.F5XcApplicationTrafficInsightStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2731,18 +3535,18 @@ func (m *AddonServiceChoice_NginxOne) MarshalToSizedBuffer(dAtA []byte) (int, er i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0xa8 + dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcBotDefenseStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcBotDefenseStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationTrafficInsightBasic { + if m.F5XcBotDefenseStandard { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -2750,26 +3554,26 @@ func (m *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) MarshalToSizedBu i-- dAtA[i] = 0x7 i-- - dAtA[i] = 0xb0 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *AddonServiceChoice_Clearview) MarshalTo(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcWebAppScanningStandard) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AddonServiceChoice_Clearview) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *AddonServiceChoice_F5XcWebAppScanningStandard) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.Clearview { + if m.F5XcWebAppScanningStandard { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x8 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0x80 return len(dAtA) - i, nil } func (m *AddonServiceChoice_F5XcNone) MarshalTo(dAtA []byte) (int, error) { @@ -2879,6 +3683,33 @@ func (m *AddonServiceChoice_F5XcConsoleBasePremium) Size() (n int) { n += 2 return n } +func (m *AddonServiceChoice_F5XcConsoleBasic) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 2 + return n +} +func (m *AddonServiceChoice_F5XcConsoleStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 2 + return n +} +func (m *AddonServiceChoice_F5XcConsoleAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 2 + return n +} func (m *AddonServiceChoice_VesIoVolterraDefault) Size() (n int) { if m == nil { return 0 @@ -3149,6 +3980,87 @@ func (m *AddonServiceChoice_Clearview) Size() (n int) { n += 3 return n } +func (m *AddonServiceChoice_F5XcSecuremeshStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcWaapStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcAppstackStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcSiteManagementStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcRoutedDdosStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcDnsStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcApplicationTrafficInsightStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcBotDefenseStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *AddonServiceChoice_F5XcWebAppScanningStandard) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} func (m *AddonServiceChoice_F5XcNone) Size() (n int) { if m == nil { return 0 @@ -3245,6 +4157,36 @@ func (this *AddonServiceChoice_F5XcConsoleBasePremium) String() string { }, "") return s } +func (this *AddonServiceChoice_F5XcConsoleBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcConsoleBasic{`, + `F5XcConsoleBasic:` + fmt.Sprintf("%v", this.F5XcConsoleBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcConsoleStandard) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcConsoleStandard{`, + `F5XcConsoleStandard:` + fmt.Sprintf("%v", this.F5XcConsoleStandard) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcConsoleAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcConsoleAdvanced{`, + `F5XcConsoleAdvanced:` + fmt.Sprintf("%v", this.F5XcConsoleAdvanced) + `,`, + `}`, + }, "") + return s +} func (this *AddonServiceChoice_VesIoVolterraDefault) String() string { if this == nil { return "nil" @@ -3435,112 +4377,202 @@ func (this *AddonServiceChoice_DataIntelligence) String() string { }, "") return s } -func (this *AddonServiceChoice_F5XcRoutedDdosBasic) String() string { +func (this *AddonServiceChoice_F5XcRoutedDdosBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcRoutedDdosBasic{`, + `F5XcRoutedDdosBasic:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcWaapBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcWaapBasic{`, + `F5XcWaapBasic:` + fmt.Sprintf("%v", this.F5XcWaapBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcWaapAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcWaapAdvanced{`, + `F5XcWaapAdvanced:` + fmt.Sprintf("%v", this.F5XcWaapAdvanced) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcSiteManagementBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcSiteManagementBasic{`, + `F5XcSiteManagementBasic:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcDnsBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcDnsBasic{`, + `F5XcDnsBasic:` + fmt.Sprintf("%v", this.F5XcDnsBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcSecuremeshBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcSecuremeshBasic{`, + `F5XcSecuremeshBasic:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcSecuremeshAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcSecuremeshAdvanced{`, + `F5XcSecuremeshAdvanced:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvanced) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcAppstackBasic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_F5XcAppstackBasic{`, + `F5XcAppstackBasic:` + fmt.Sprintf("%v", this.F5XcAppstackBasic) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_NginxOne) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AddonServiceChoice_NginxOne{`, + `NginxOne:` + fmt.Sprintf("%v", this.NginxOne) + `,`, + `}`, + }, "") + return s +} +func (this *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcRoutedDdosBasic{`, - `F5XcRoutedDdosBasic:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcApplicationTrafficInsightBasic{`, + `F5XcApplicationTrafficInsightBasic:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasic) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcWaapBasic) String() string { +func (this *AddonServiceChoice_Clearview) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcWaapBasic{`, - `F5XcWaapBasic:` + fmt.Sprintf("%v", this.F5XcWaapBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_Clearview{`, + `Clearview:` + fmt.Sprintf("%v", this.Clearview) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcWaapAdvanced) String() string { +func (this *AddonServiceChoice_F5XcSecuremeshStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcWaapAdvanced{`, - `F5XcWaapAdvanced:` + fmt.Sprintf("%v", this.F5XcWaapAdvanced) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcSecuremeshStandard{`, + `F5XcSecuremeshStandard:` + fmt.Sprintf("%v", this.F5XcSecuremeshStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcSiteManagementBasic) String() string { +func (this *AddonServiceChoice_F5XcWaapStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcSiteManagementBasic{`, - `F5XcSiteManagementBasic:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcWaapStandard{`, + `F5XcWaapStandard:` + fmt.Sprintf("%v", this.F5XcWaapStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcDnsBasic) String() string { +func (this *AddonServiceChoice_F5XcAppstackStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcDnsBasic{`, - `F5XcDnsBasic:` + fmt.Sprintf("%v", this.F5XcDnsBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcAppstackStandard{`, + `F5XcAppstackStandard:` + fmt.Sprintf("%v", this.F5XcAppstackStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcSecuremeshBasic) String() string { +func (this *AddonServiceChoice_F5XcSiteManagementStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcSecuremeshBasic{`, - `F5XcSecuremeshBasic:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcSiteManagementStandard{`, + `F5XcSiteManagementStandard:` + fmt.Sprintf("%v", this.F5XcSiteManagementStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcSecuremeshAdvanced) String() string { +func (this *AddonServiceChoice_F5XcRoutedDdosStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcSecuremeshAdvanced{`, - `F5XcSecuremeshAdvanced:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvanced) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcRoutedDdosStandard{`, + `F5XcRoutedDdosStandard:` + fmt.Sprintf("%v", this.F5XcRoutedDdosStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcAppstackBasic) String() string { +func (this *AddonServiceChoice_F5XcDnsStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcAppstackBasic{`, - `F5XcAppstackBasic:` + fmt.Sprintf("%v", this.F5XcAppstackBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcDnsStandard{`, + `F5XcDnsStandard:` + fmt.Sprintf("%v", this.F5XcDnsStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_NginxOne) String() string { +func (this *AddonServiceChoice_F5XcApplicationTrafficInsightStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_NginxOne{`, - `NginxOne:` + fmt.Sprintf("%v", this.NginxOne) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcApplicationTrafficInsightStandard{`, + `F5XcApplicationTrafficInsightStandard:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_F5XcApplicationTrafficInsightBasic) String() string { +func (this *AddonServiceChoice_F5XcBotDefenseStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_F5XcApplicationTrafficInsightBasic{`, - `F5XcApplicationTrafficInsightBasic:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasic) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcBotDefenseStandard{`, + `F5XcBotDefenseStandard:` + fmt.Sprintf("%v", this.F5XcBotDefenseStandard) + `,`, `}`, }, "") return s } -func (this *AddonServiceChoice_Clearview) String() string { +func (this *AddonServiceChoice_F5XcWebAppScanningStandard) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AddonServiceChoice_Clearview{`, - `Clearview:` + fmt.Sprintf("%v", this.Clearview) + `,`, + s := strings.Join([]string{`&AddonServiceChoice_F5XcWebAppScanningStandard{`, + `F5XcWebAppScanningStandard:` + fmt.Sprintf("%v", this.F5XcWebAppScanningStandard) + `,`, `}`, }, "") return s @@ -3739,6 +4771,69 @@ func (m *AddonServiceChoice) Unmarshal(dAtA []byte) error { } b := bool(v != 0) m.Choice = &AddonServiceChoice_F5XcConsoleBasePremium{b} + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasic", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcConsoleBasic{b} + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcConsoleStandard{b} + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleAdvanced", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcConsoleAdvanced{b} case 21: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field VesIoVolterraDefault", wireType) @@ -4369,6 +5464,195 @@ func (m *AddonServiceChoice) Unmarshal(dAtA []byte) error { } b := bool(v != 0) m.Choice = &AddonServiceChoice_Clearview{b} + case 120: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcSecuremeshStandard{b} + case 121: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcWaapStandard{b} + case 122: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcAppstackStandard{b} + case 123: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcSiteManagementStandard{b} + case 124: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcRoutedDdosStandard{b} + case 125: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcDnsStandard{b} + case 126: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcApplicationTrafficInsightStandard{b} + case 127: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcBotDefenseStandard{b} + case 128: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWebAppScanningStandard", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllAddonServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &AddonServiceChoice_F5XcWebAppScanningStandard{b} case 9999: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field F5XcNone", wireType) diff --git a/pbgo/extschema/schema/vesenv/all_addon_services.vesmsg.go b/pbgo/extschema/schema/vesenv/all_addon_services.vesmsg.go index 87b332781..8f80cabc6 100644 --- a/pbgo/extschema/schema/vesenv/all_addon_services.vesmsg.go +++ b/pbgo/extschema/schema/vesenv/all_addon_services.vesmsg.go @@ -155,6 +155,39 @@ func (v *ValidateAddonServiceChoice) Validate(ctx context.Context, pm interface{ return err } } + case *AddonServiceChoice_F5XcConsoleBasic: + if fv, exists := v.FldValidators["choice.f5xc_console_basic"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcConsoleBasic).F5XcConsoleBasic + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_basic"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcConsoleStandard: + if fv, exists := v.FldValidators["choice.f5xc_console_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcConsoleStandard).F5XcConsoleStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcConsoleAdvanced: + if fv, exists := v.FldValidators["choice.f5xc_console_advanced"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcConsoleAdvanced).F5XcConsoleAdvanced + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } case *AddonServiceChoice_VesIoVolterraDefault: if fv, exists := v.FldValidators["choice.ves_io_volterra_default"]; exists { val := m.GetChoice().(*AddonServiceChoice_VesIoVolterraDefault).VesIoVolterraDefault @@ -485,6 +518,105 @@ func (v *ValidateAddonServiceChoice) Validate(ctx context.Context, pm interface{ return err } } + case *AddonServiceChoice_F5XcSecuremeshStandard: + if fv, exists := v.FldValidators["choice.f5xc_securemesh_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcSecuremeshStandard).F5XcSecuremeshStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_securemesh_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcWaapStandard: + if fv, exists := v.FldValidators["choice.f5xc_waap_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcWaapStandard).F5XcWaapStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_waap_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcAppstackStandard: + if fv, exists := v.FldValidators["choice.f5xc_appstack_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcAppstackStandard).F5XcAppstackStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_appstack_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcSiteManagementStandard: + if fv, exists := v.FldValidators["choice.f5xc_site_management_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcSiteManagementStandard).F5XcSiteManagementStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_site_management_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcRoutedDdosStandard: + if fv, exists := v.FldValidators["choice.f5xc_routed_ddos_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcRoutedDdosStandard).F5XcRoutedDdosStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_routed_ddos_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcDnsStandard: + if fv, exists := v.FldValidators["choice.f5xc_dns_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcDnsStandard).F5XcDnsStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_dns_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcApplicationTrafficInsightStandard: + if fv, exists := v.FldValidators["choice.f5xc_application_traffic_insight_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcApplicationTrafficInsightStandard).F5XcApplicationTrafficInsightStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_traffic_insight_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcBotDefenseStandard: + if fv, exists := v.FldValidators["choice.f5xc_bot_defense_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcBotDefenseStandard).F5XcBotDefenseStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_bot_defense_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AddonServiceChoice_F5XcWebAppScanningStandard: + if fv, exists := v.FldValidators["choice.f5xc_web_app_scanning_standard"]; exists { + val := m.GetChoice().(*AddonServiceChoice_F5XcWebAppScanningStandard).F5XcWebAppScanningStandard + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_web_app_scanning_standard"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } case *AddonServiceChoice_F5XcNone: if fv, exists := v.FldValidators["choice.f5xc_none"]; exists { val := m.GetChoice().(*AddonServiceChoice_F5XcNone).F5XcNone diff --git a/pbgo/extschema/schema/vesenv/all_api_groups.pb.go b/pbgo/extschema/schema/vesenv/all_api_groups.pb.go index 7ed983630..f82bb6c7e 100644 --- a/pbgo/extschema/schema/vesenv/all_api_groups.pb.go +++ b/pbgo/extschema/schema/vesenv/all_api_groups.pb.go @@ -62,6 +62,15 @@ type APIGroupChoice struct { // *APIGroupChoice_F5XcDelegatedAccessBasicUser // *APIGroupChoice_F5XcDelegatedAccessBasicAdmin // *APIGroupChoice_F5XcScimClient + // *APIGroupChoice_F5XcConsoleBasicMonitor + // *APIGroupChoice_F5XcConsoleBasicUser + // *APIGroupChoice_F5XcConsoleBasicAdmin + // *APIGroupChoice_F5XcConsoleStandardMonitor + // *APIGroupChoice_F5XcConsoleStandardUser + // *APIGroupChoice_F5XcConsoleStandardAdmin + // *APIGroupChoice_F5XcConsoleAdvancedMonitor + // *APIGroupChoice_F5XcConsoleAdvancedUser + // *APIGroupChoice_F5XcConsoleAdvancedAdmin // *APIGroupChoice_InfrastructureDemoAccessRead // *APIGroupChoice_VesIoBillingRead // *APIGroupChoice_VesIoBillingWrite @@ -197,12 +206,18 @@ type APIGroupChoice struct { // *APIGroupChoice_F5XcWaapBasicMonitor // *APIGroupChoice_F5XcWaapBasicUser // *APIGroupChoice_F5XcWaapBasicAdmin + // *APIGroupChoice_F5XcWaapStandardMonitor + // *APIGroupChoice_F5XcWaapStandardUser + // *APIGroupChoice_F5XcWaapStandardAdmin // *APIGroupChoice_F5XcWaapAdvancedMonitor // *APIGroupChoice_F5XcWaapAdvancedUser // *APIGroupChoice_F5XcWaapAdvancedAdmin // *APIGroupChoice_F5XcSiteManagementBasicMonitor // *APIGroupChoice_F5XcSiteManagementBasicUser // *APIGroupChoice_F5XcSiteManagementBasicAdmin + // *APIGroupChoice_F5XcSiteManagementStandardMonitor + // *APIGroupChoice_F5XcSiteManagementStandardUser + // *APIGroupChoice_F5XcSiteManagementStandardAdmin // *APIGroupChoice_F5XcDnsBasicMonitor // *APIGroupChoice_F5XcDnsBasicUser // *APIGroupChoice_F5XcDnsBasicAdmin @@ -218,12 +233,18 @@ type APIGroupChoice struct { // *APIGroupChoice_F5XcSecuremeshBasicMonitor // *APIGroupChoice_F5XcSecuremeshBasicUser // *APIGroupChoice_F5XcSecuremeshBasicAdmin + // *APIGroupChoice_F5XcSecuremeshStandardMonitor + // *APIGroupChoice_F5XcSecuremeshStandardUser + // *APIGroupChoice_F5XcSecuremeshStandardAdmin // *APIGroupChoice_F5XcSecuremeshAdvancedMonitor // *APIGroupChoice_F5XcSecuremeshAdvancedUser // *APIGroupChoice_F5XcSecuremeshAdvancedAdmin // *APIGroupChoice_F5XcAppstackBasicMonitor // *APIGroupChoice_F5XcAppstackBasicUser // *APIGroupChoice_F5XcAppstackBasicAdmin + // *APIGroupChoice_F5XcAppstackStandardMonitor + // *APIGroupChoice_F5XcAppstackStandardUser + // *APIGroupChoice_F5XcAppstackStandardAdmin // *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor // *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser // *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin @@ -233,16 +254,48 @@ type APIGroupChoice struct { // *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor // *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser // *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin - // *APIGroupChoice_F5XcNginxOneMonitor - // *APIGroupChoice_F5XcNginxOneUser - // *APIGroupChoice_F5XcNginxOneAdmin - // *APIGroupChoice_F5XcNginxMgmtSuiteApplication // *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication // *APIGroupChoice_F5XcNginxOneApplicationRead // *APIGroupChoice_F5XcNginxOneApplicationWrite // *APIGroupChoice_F5XcClearviewMonitor // *APIGroupChoice_F5XcClearviewUser // *APIGroupChoice_F5XcClearviewAdmin + // *APIGroupChoice_F5XcRoutedDdosStandardMonitor + // *APIGroupChoice_F5XcRoutedDdosStandardUser + // *APIGroupChoice_F5XcRoutedDdosStandardAdmin + // *APIGroupChoice_F5XcDnsStandardMonitor + // *APIGroupChoice_F5XcDnsStandardUser + // *APIGroupChoice_F5XcDnsStandardAdmin + // *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor + // *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser + // *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin + // *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor + // *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser + // *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin + // *APIGroupChoice_F5XcClientSideDefenseStandardMonitor + // *APIGroupChoice_F5XcClientSideDefenseStandardUser + // *APIGroupChoice_F5XcClientSideDefenseStandardAdmin + // *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor + // *APIGroupChoice_F5XcSyntheticMonitoringStandardUser + // *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin + // *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor + // *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser + // *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin + // *APIGroupChoice_F5XcAccountProtectionStandardMonitor + // *APIGroupChoice_F5XcAccountProtectionStandardUser + // *APIGroupChoice_F5XcAccountProtectionStandardAdmin + // *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor + // *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser + // *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin + // *APIGroupChoice_F5XcDelegatedAccessStandardMonitor + // *APIGroupChoice_F5XcDelegatedAccessStandardUser + // *APIGroupChoice_F5XcDelegatedAccessStandardAdmin + // *APIGroupChoice_F5XcBotDefenseStandardMonitor + // *APIGroupChoice_F5XcBotDefenseStandardUser + // *APIGroupChoice_F5XcBotDefenseStandardAdmin + // *APIGroupChoice_F5XcWebAppScanningStandardMonitor + // *APIGroupChoice_F5XcWebAppScanningStandardUser + // *APIGroupChoice_F5XcWebAppScanningStandardAdmin Choice isAPIGroupChoice_Choice `protobuf_oneof:"choice"` } @@ -390,6 +443,33 @@ type APIGroupChoice_F5XcDelegatedAccessBasicAdmin struct { type APIGroupChoice_F5XcScimClient struct { F5XcScimClient bool `protobuf:"varint,174,opt,name=f5xc_scim_client,json=f5xcScimClient,proto3,oneof" json:"f5xc_scim_client,omitempty"` } +type APIGroupChoice_F5XcConsoleBasicMonitor struct { + F5XcConsoleBasicMonitor bool `protobuf:"varint,175,opt,name=f5xc_console_basic_monitor,json=f5xcConsoleBasicMonitor,proto3,oneof" json:"f5xc_console_basic_monitor,omitempty"` +} +type APIGroupChoice_F5XcConsoleBasicUser struct { + F5XcConsoleBasicUser bool `protobuf:"varint,176,opt,name=f5xc_console_basic_user,json=f5xcConsoleBasicUser,proto3,oneof" json:"f5xc_console_basic_user,omitempty"` +} +type APIGroupChoice_F5XcConsoleBasicAdmin struct { + F5XcConsoleBasicAdmin bool `protobuf:"varint,177,opt,name=f5xc_console_basic_admin,json=f5xcConsoleBasicAdmin,proto3,oneof" json:"f5xc_console_basic_admin,omitempty"` +} +type APIGroupChoice_F5XcConsoleStandardMonitor struct { + F5XcConsoleStandardMonitor bool `protobuf:"varint,178,opt,name=f5xc_console_standard_monitor,json=f5xcConsoleStandardMonitor,proto3,oneof" json:"f5xc_console_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcConsoleStandardUser struct { + F5XcConsoleStandardUser bool `protobuf:"varint,179,opt,name=f5xc_console_standard_user,json=f5xcConsoleStandardUser,proto3,oneof" json:"f5xc_console_standard_user,omitempty"` +} +type APIGroupChoice_F5XcConsoleStandardAdmin struct { + F5XcConsoleStandardAdmin bool `protobuf:"varint,180,opt,name=f5xc_console_standard_admin,json=f5xcConsoleStandardAdmin,proto3,oneof" json:"f5xc_console_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcConsoleAdvancedMonitor struct { + F5XcConsoleAdvancedMonitor bool `protobuf:"varint,181,opt,name=f5xc_console_advanced_monitor,json=f5xcConsoleAdvancedMonitor,proto3,oneof" json:"f5xc_console_advanced_monitor,omitempty"` +} +type APIGroupChoice_F5XcConsoleAdvancedUser struct { + F5XcConsoleAdvancedUser bool `protobuf:"varint,182,opt,name=f5xc_console_advanced_user,json=f5xcConsoleAdvancedUser,proto3,oneof" json:"f5xc_console_advanced_user,omitempty"` +} +type APIGroupChoice_F5XcConsoleAdvancedAdmin struct { + F5XcConsoleAdvancedAdmin bool `protobuf:"varint,183,opt,name=f5xc_console_advanced_admin,json=f5xcConsoleAdvancedAdmin,proto3,oneof" json:"f5xc_console_advanced_admin,omitempty"` +} type APIGroupChoice_InfrastructureDemoAccessRead struct { InfrastructureDemoAccessRead bool `protobuf:"varint,1,opt,name=infrastructure_demo_access_read,json=infrastructureDemoAccessRead,proto3,oneof" json:"infrastructure_demo_access_read,omitempty"` } @@ -795,6 +875,15 @@ type APIGroupChoice_F5XcWaapBasicUser struct { type APIGroupChoice_F5XcWaapBasicAdmin struct { F5XcWaapBasicAdmin bool `protobuf:"varint,238,opt,name=f5xc_waap_basic_admin,json=f5xcWaapBasicAdmin,proto3,oneof" json:"f5xc_waap_basic_admin,omitempty"` } +type APIGroupChoice_F5XcWaapStandardMonitor struct { + F5XcWaapStandardMonitor bool `protobuf:"varint,294,opt,name=f5xc_waap_standard_monitor,json=f5xcWaapStandardMonitor,proto3,oneof" json:"f5xc_waap_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcWaapStandardUser struct { + F5XcWaapStandardUser bool `protobuf:"varint,295,opt,name=f5xc_waap_standard_user,json=f5xcWaapStandardUser,proto3,oneof" json:"f5xc_waap_standard_user,omitempty"` +} +type APIGroupChoice_F5XcWaapStandardAdmin struct { + F5XcWaapStandardAdmin bool `protobuf:"varint,296,opt,name=f5xc_waap_standard_admin,json=f5xcWaapStandardAdmin,proto3,oneof" json:"f5xc_waap_standard_admin,omitempty"` +} type APIGroupChoice_F5XcWaapAdvancedMonitor struct { F5XcWaapAdvancedMonitor bool `protobuf:"varint,239,opt,name=f5xc_waap_advanced_monitor,json=f5xcWaapAdvancedMonitor,proto3,oneof" json:"f5xc_waap_advanced_monitor,omitempty"` } @@ -813,6 +902,15 @@ type APIGroupChoice_F5XcSiteManagementBasicUser struct { type APIGroupChoice_F5XcSiteManagementBasicAdmin struct { F5XcSiteManagementBasicAdmin bool `protobuf:"varint,244,opt,name=f5xc_site_management_basic_admin,json=f5xcSiteManagementBasicAdmin,proto3,oneof" json:"f5xc_site_management_basic_admin,omitempty"` } +type APIGroupChoice_F5XcSiteManagementStandardMonitor struct { + F5XcSiteManagementStandardMonitor bool `protobuf:"varint,297,opt,name=f5xc_site_management_standard_monitor,json=f5xcSiteManagementStandardMonitor,proto3,oneof" json:"f5xc_site_management_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcSiteManagementStandardUser struct { + F5XcSiteManagementStandardUser bool `protobuf:"varint,298,opt,name=f5xc_site_management_standard_user,json=f5xcSiteManagementStandardUser,proto3,oneof" json:"f5xc_site_management_standard_user,omitempty"` +} +type APIGroupChoice_F5XcSiteManagementStandardAdmin struct { + F5XcSiteManagementStandardAdmin bool `protobuf:"varint,299,opt,name=f5xc_site_management_standard_admin,json=f5xcSiteManagementStandardAdmin,proto3,oneof" json:"f5xc_site_management_standard_admin,omitempty"` +} type APIGroupChoice_F5XcDnsBasicMonitor struct { F5XcDnsBasicMonitor bool `protobuf:"varint,245,opt,name=f5xc_dns_basic_monitor,json=f5xcDnsBasicMonitor,proto3,oneof" json:"f5xc_dns_basic_monitor,omitempty"` } @@ -858,6 +956,15 @@ type APIGroupChoice_F5XcSecuremeshBasicUser struct { type APIGroupChoice_F5XcSecuremeshBasicAdmin struct { F5XcSecuremeshBasicAdmin bool `protobuf:"varint,262,opt,name=f5xc_securemesh_basic_admin,json=f5xcSecuremeshBasicAdmin,proto3,oneof" json:"f5xc_securemesh_basic_admin,omitempty"` } +type APIGroupChoice_F5XcSecuremeshStandardMonitor struct { + F5XcSecuremeshStandardMonitor bool `protobuf:"varint,288,opt,name=f5xc_securemesh_standard_monitor,json=f5xcSecuremeshStandardMonitor,proto3,oneof" json:"f5xc_securemesh_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcSecuremeshStandardUser struct { + F5XcSecuremeshStandardUser bool `protobuf:"varint,289,opt,name=f5xc_securemesh_standard_user,json=f5xcSecuremeshStandardUser,proto3,oneof" json:"f5xc_securemesh_standard_user,omitempty"` +} +type APIGroupChoice_F5XcSecuremeshStandardAdmin struct { + F5XcSecuremeshStandardAdmin bool `protobuf:"varint,290,opt,name=f5xc_securemesh_standard_admin,json=f5xcSecuremeshStandardAdmin,proto3,oneof" json:"f5xc_securemesh_standard_admin,omitempty"` +} type APIGroupChoice_F5XcSecuremeshAdvancedMonitor struct { F5XcSecuremeshAdvancedMonitor bool `protobuf:"varint,263,opt,name=f5xc_securemesh_advanced_monitor,json=f5xcSecuremeshAdvancedMonitor,proto3,oneof" json:"f5xc_securemesh_advanced_monitor,omitempty"` } @@ -876,6 +983,15 @@ type APIGroupChoice_F5XcAppstackBasicUser struct { type APIGroupChoice_F5XcAppstackBasicAdmin struct { F5XcAppstackBasicAdmin bool `protobuf:"varint,268,opt,name=f5xc_appstack_basic_admin,json=f5xcAppstackBasicAdmin,proto3,oneof" json:"f5xc_appstack_basic_admin,omitempty"` } +type APIGroupChoice_F5XcAppstackStandardMonitor struct { + F5XcAppstackStandardMonitor bool `protobuf:"varint,291,opt,name=f5xc_appstack_standard_monitor,json=f5xcAppstackStandardMonitor,proto3,oneof" json:"f5xc_appstack_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcAppstackStandardUser struct { + F5XcAppstackStandardUser bool `protobuf:"varint,292,opt,name=f5xc_appstack_standard_user,json=f5xcAppstackStandardUser,proto3,oneof" json:"f5xc_appstack_standard_user,omitempty"` +} +type APIGroupChoice_F5XcAppstackStandardAdmin struct { + F5XcAppstackStandardAdmin bool `protobuf:"varint,293,opt,name=f5xc_appstack_standard_admin,json=f5xcAppstackStandardAdmin,proto3,oneof" json:"f5xc_appstack_standard_admin,omitempty"` +} type APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor struct { F5XcNginxMgmtSuiteBasicMonitor bool `protobuf:"varint,269,opt,name=f5xc_nginx_mgmt_suite_basic_monitor,json=f5xcNginxMgmtSuiteBasicMonitor,proto3,oneof" json:"f5xc_nginx_mgmt_suite_basic_monitor,omitempty"` } @@ -903,18 +1019,6 @@ type APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser struct { type APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin struct { F5XcAuthenticationIntelligenceBasicAdmin bool `protobuf:"varint,277,opt,name=f5xc_authentication_intelligence_basic_admin,json=f5xcAuthenticationIntelligenceBasicAdmin,proto3,oneof" json:"f5xc_authentication_intelligence_basic_admin,omitempty"` } -type APIGroupChoice_F5XcNginxOneMonitor struct { - F5XcNginxOneMonitor bool `protobuf:"varint,278,opt,name=f5xc_nginx_one_monitor,json=f5xcNginxOneMonitor,proto3,oneof" json:"f5xc_nginx_one_monitor,omitempty"` -} -type APIGroupChoice_F5XcNginxOneUser struct { - F5XcNginxOneUser bool `protobuf:"varint,279,opt,name=f5xc_nginx_one_user,json=f5xcNginxOneUser,proto3,oneof" json:"f5xc_nginx_one_user,omitempty"` -} -type APIGroupChoice_F5XcNginxOneAdmin struct { - F5XcNginxOneAdmin bool `protobuf:"varint,280,opt,name=f5xc_nginx_one_admin,json=f5xcNginxOneAdmin,proto3,oneof" json:"f5xc_nginx_one_admin,omitempty"` -} -type APIGroupChoice_F5XcNginxMgmtSuiteApplication struct { - F5XcNginxMgmtSuiteApplication bool `protobuf:"varint,281,opt,name=f5xc_nginx_mgmt_suite_application,json=f5xcNginxMgmtSuiteApplication,proto3,oneof" json:"f5xc_nginx_mgmt_suite_application,omitempty"` -} type APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication struct { F5XcApplicationInfrastructureProtectionApplication bool `protobuf:"varint,282,opt,name=f5xc_application_infrastructure_protection_application,json=f5xcApplicationInfrastructureProtectionApplication,proto3,oneof" json:"f5xc_application_infrastructure_protection_application,omitempty"` } @@ -933,6 +1037,114 @@ type APIGroupChoice_F5XcClearviewUser struct { type APIGroupChoice_F5XcClearviewAdmin struct { F5XcClearviewAdmin bool `protobuf:"varint,287,opt,name=f5xc_clearview_admin,json=f5xcClearviewAdmin,proto3,oneof" json:"f5xc_clearview_admin,omitempty"` } +type APIGroupChoice_F5XcRoutedDdosStandardMonitor struct { + F5XcRoutedDdosStandardMonitor bool `protobuf:"varint,300,opt,name=f5xc_routed_ddos_standard_monitor,json=f5xcRoutedDdosStandardMonitor,proto3,oneof" json:"f5xc_routed_ddos_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcRoutedDdosStandardUser struct { + F5XcRoutedDdosStandardUser bool `protobuf:"varint,301,opt,name=f5xc_routed_ddos_standard_user,json=f5xcRoutedDdosStandardUser,proto3,oneof" json:"f5xc_routed_ddos_standard_user,omitempty"` +} +type APIGroupChoice_F5XcRoutedDdosStandardAdmin struct { + F5XcRoutedDdosStandardAdmin bool `protobuf:"varint,302,opt,name=f5xc_routed_ddos_standard_admin,json=f5xcRoutedDdosStandardAdmin,proto3,oneof" json:"f5xc_routed_ddos_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcDnsStandardMonitor struct { + F5XcDnsStandardMonitor bool `protobuf:"varint,303,opt,name=f5xc_dns_standard_monitor,json=f5xcDnsStandardMonitor,proto3,oneof" json:"f5xc_dns_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcDnsStandardUser struct { + F5XcDnsStandardUser bool `protobuf:"varint,304,opt,name=f5xc_dns_standard_user,json=f5xcDnsStandardUser,proto3,oneof" json:"f5xc_dns_standard_user,omitempty"` +} +type APIGroupChoice_F5XcDnsStandardAdmin struct { + F5XcDnsStandardAdmin bool `protobuf:"varint,305,opt,name=f5xc_dns_standard_admin,json=f5xcDnsStandardAdmin,proto3,oneof" json:"f5xc_dns_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor struct { + F5XcApplicationTrafficInsightStandardMonitor bool `protobuf:"varint,306,opt,name=f5xc_application_traffic_insight_standard_monitor,json=f5xcApplicationTrafficInsightStandardMonitor,proto3,oneof" json:"f5xc_application_traffic_insight_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcApplicationTrafficInsightStandardUser struct { + F5XcApplicationTrafficInsightStandardUser bool `protobuf:"varint,307,opt,name=f5xc_application_traffic_insight_standard_user,json=f5xcApplicationTrafficInsightStandardUser,proto3,oneof" json:"f5xc_application_traffic_insight_standard_user,omitempty"` +} +type APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin struct { + F5XcApplicationTrafficInsightStandardAdmin bool `protobuf:"varint,308,opt,name=f5xc_application_traffic_insight_standard_admin,json=f5xcApplicationTrafficInsightStandardAdmin,proto3,oneof" json:"f5xc_application_traffic_insight_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor struct { + F5XcContentDeliveryNetworkStandardMonitor bool `protobuf:"varint,309,opt,name=f5xc_content_delivery_network_standard_monitor,json=f5xcContentDeliveryNetworkStandardMonitor,proto3,oneof" json:"f5xc_content_delivery_network_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcContentDeliveryNetworkStandardUser struct { + F5XcContentDeliveryNetworkStandardUser bool `protobuf:"varint,310,opt,name=f5xc_content_delivery_network_standard_user,json=f5xcContentDeliveryNetworkStandardUser,proto3,oneof" json:"f5xc_content_delivery_network_standard_user,omitempty"` +} +type APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin struct { + F5XcContentDeliveryNetworkStandardAdmin bool `protobuf:"varint,311,opt,name=f5xc_content_delivery_network_standard_admin,json=f5xcContentDeliveryNetworkStandardAdmin,proto3,oneof" json:"f5xc_content_delivery_network_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcClientSideDefenseStandardMonitor struct { + F5XcClientSideDefenseStandardMonitor bool `protobuf:"varint,312,opt,name=f5xc_client_side_defense_standard_monitor,json=f5xcClientSideDefenseStandardMonitor,proto3,oneof" json:"f5xc_client_side_defense_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcClientSideDefenseStandardUser struct { + F5XcClientSideDefenseStandardUser bool `protobuf:"varint,313,opt,name=f5xc_client_side_defense_standard_user,json=f5xcClientSideDefenseStandardUser,proto3,oneof" json:"f5xc_client_side_defense_standard_user,omitempty"` +} +type APIGroupChoice_F5XcClientSideDefenseStandardAdmin struct { + F5XcClientSideDefenseStandardAdmin bool `protobuf:"varint,314,opt,name=f5xc_client_side_defense_standard_admin,json=f5xcClientSideDefenseStandardAdmin,proto3,oneof" json:"f5xc_client_side_defense_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor struct { + F5XcSyntheticMonitoringStandardMonitor bool `protobuf:"varint,315,opt,name=f5xc_synthetic_monitoring_standard_monitor,json=f5xcSyntheticMonitoringStandardMonitor,proto3,oneof" json:"f5xc_synthetic_monitoring_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcSyntheticMonitoringStandardUser struct { + F5XcSyntheticMonitoringStandardUser bool `protobuf:"varint,316,opt,name=f5xc_synthetic_monitoring_standard_user,json=f5xcSyntheticMonitoringStandardUser,proto3,oneof" json:"f5xc_synthetic_monitoring_standard_user,omitempty"` +} +type APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin struct { + F5XcSyntheticMonitoringStandardAdmin bool `protobuf:"varint,317,opt,name=f5xc_synthetic_monitoring_standard_admin,json=f5xcSyntheticMonitoringStandardAdmin,proto3,oneof" json:"f5xc_synthetic_monitoring_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor struct { + F5XcAuthenticationIntelligenceStandardMonitor bool `protobuf:"varint,318,opt,name=f5xc_authentication_intelligence_standard_monitor,json=f5xcAuthenticationIntelligenceStandardMonitor,proto3,oneof" json:"f5xc_authentication_intelligence_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser struct { + F5XcAuthenticationIntelligenceStandardUser bool `protobuf:"varint,319,opt,name=f5xc_authentication_intelligence_standard_user,json=f5xcAuthenticationIntelligenceStandardUser,proto3,oneof" json:"f5xc_authentication_intelligence_standard_user,omitempty"` +} +type APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin struct { + F5XcAuthenticationIntelligenceStandardAdmin bool `protobuf:"varint,320,opt,name=f5xc_authentication_intelligence_standard_admin,json=f5xcAuthenticationIntelligenceStandardAdmin,proto3,oneof" json:"f5xc_authentication_intelligence_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcAccountProtectionStandardMonitor struct { + F5XcAccountProtectionStandardMonitor bool `protobuf:"varint,321,opt,name=f5xc_account_protection_standard_monitor,json=f5xcAccountProtectionStandardMonitor,proto3,oneof" json:"f5xc_account_protection_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcAccountProtectionStandardUser struct { + F5XcAccountProtectionStandardUser bool `protobuf:"varint,322,opt,name=f5xc_account_protection_standard_user,json=f5xcAccountProtectionStandardUser,proto3,oneof" json:"f5xc_account_protection_standard_user,omitempty"` +} +type APIGroupChoice_F5XcAccountProtectionStandardAdmin struct { + F5XcAccountProtectionStandardAdmin bool `protobuf:"varint,323,opt,name=f5xc_account_protection_standard_admin,json=f5xcAccountProtectionStandardAdmin,proto3,oneof" json:"f5xc_account_protection_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor struct { + F5XcApplicationInfrastructureProtectionStandardMonitor bool `protobuf:"varint,324,opt,name=f5xc_application_infrastructure_protection_standard_monitor,json=f5xcApplicationInfrastructureProtectionStandardMonitor,proto3,oneof" json:"f5xc_application_infrastructure_protection_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser struct { + F5XcApplicationInfrastructureProtectionStandardUser bool `protobuf:"varint,325,opt,name=f5xc_application_infrastructure_protection_standard_user,json=f5xcApplicationInfrastructureProtectionStandardUser,proto3,oneof" json:"f5xc_application_infrastructure_protection_standard_user,omitempty"` +} +type APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin struct { + F5XcApplicationInfrastructureProtectionStandardAdmin bool `protobuf:"varint,326,opt,name=f5xc_application_infrastructure_protection_standard_admin,json=f5xcApplicationInfrastructureProtectionStandardAdmin,proto3,oneof" json:"f5xc_application_infrastructure_protection_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcDelegatedAccessStandardMonitor struct { + F5XcDelegatedAccessStandardMonitor bool `protobuf:"varint,327,opt,name=f5xc_delegated_access_standard_monitor,json=f5xcDelegatedAccessStandardMonitor,proto3,oneof" json:"f5xc_delegated_access_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcDelegatedAccessStandardUser struct { + F5XcDelegatedAccessStandardUser bool `protobuf:"varint,328,opt,name=f5xc_delegated_access_standard_user,json=f5xcDelegatedAccessStandardUser,proto3,oneof" json:"f5xc_delegated_access_standard_user,omitempty"` +} +type APIGroupChoice_F5XcDelegatedAccessStandardAdmin struct { + F5XcDelegatedAccessStandardAdmin bool `protobuf:"varint,329,opt,name=f5xc_delegated_access_standard_admin,json=f5xcDelegatedAccessStandardAdmin,proto3,oneof" json:"f5xc_delegated_access_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcBotDefenseStandardMonitor struct { + F5XcBotDefenseStandardMonitor bool `protobuf:"varint,330,opt,name=f5xc_bot_defense_standard_monitor,json=f5xcBotDefenseStandardMonitor,proto3,oneof" json:"f5xc_bot_defense_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcBotDefenseStandardUser struct { + F5XcBotDefenseStandardUser bool `protobuf:"varint,331,opt,name=f5xc_bot_defense_standard_user,json=f5xcBotDefenseStandardUser,proto3,oneof" json:"f5xc_bot_defense_standard_user,omitempty"` +} +type APIGroupChoice_F5XcBotDefenseStandardAdmin struct { + F5XcBotDefenseStandardAdmin bool `protobuf:"varint,332,opt,name=f5xc_bot_defense_standard_admin,json=f5xcBotDefenseStandardAdmin,proto3,oneof" json:"f5xc_bot_defense_standard_admin,omitempty"` +} +type APIGroupChoice_F5XcWebAppScanningStandardMonitor struct { + F5XcWebAppScanningStandardMonitor bool `protobuf:"varint,333,opt,name=f5xc_web_app_scanning_standard_monitor,json=f5xcWebAppScanningStandardMonitor,proto3,oneof" json:"f5xc_web_app_scanning_standard_monitor,omitempty"` +} +type APIGroupChoice_F5XcWebAppScanningStandardUser struct { + F5XcWebAppScanningStandardUser bool `protobuf:"varint,334,opt,name=f5xc_web_app_scanning_standard_user,json=f5xcWebAppScanningStandardUser,proto3,oneof" json:"f5xc_web_app_scanning_standard_user,omitempty"` +} +type APIGroupChoice_F5XcWebAppScanningStandardAdmin struct { + F5XcWebAppScanningStandardAdmin bool `protobuf:"varint,335,opt,name=f5xc_web_app_scanning_standard_admin,json=f5xcWebAppScanningStandardAdmin,proto3,oneof" json:"f5xc_web_app_scanning_standard_admin,omitempty"` +} func (*APIGroupChoice_F5XcDefaultAccess) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcBase) isAPIGroupChoice_Choice() {} @@ -969,6 +1181,15 @@ func (*APIGroupChoice_F5XcDelegatedAccessBasicMonitor) isAPIGroupChoice_Choice() func (*APIGroupChoice_F5XcDelegatedAccessBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcDelegatedAccessBasicAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcScimClient) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleBasicMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleBasicUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleBasicAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleAdvancedMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleAdvancedUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcConsoleAdvancedAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_InfrastructureDemoAccessRead) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_VesIoBillingRead) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_VesIoBillingWrite) isAPIGroupChoice_Choice() {} @@ -1105,12 +1326,18 @@ func (*APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) isAPIGr func (*APIGroupChoice_F5XcWaapBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcWaapBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcWaapBasicAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcWaapStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcWaapStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcWaapStandardAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcWaapAdvancedMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcWaapAdvancedUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcWaapAdvancedAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSiteManagementBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSiteManagementBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSiteManagementBasicAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSiteManagementStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSiteManagementStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSiteManagementStandardAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcDnsBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcDnsBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcDnsBasicAdmin) isAPIGroupChoice_Choice() {} @@ -1126,12 +1353,18 @@ func (*APIGroupChoice_F5XcDataIntelligenceAdmin) isAPIGroupChoice_Choice() func (*APIGroupChoice_F5XcSecuremeshBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSecuremeshBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSecuremeshBasicAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSecuremeshStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSecuremeshStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSecuremeshStandardAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSecuremeshAdvancedMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSecuremeshAdvancedUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcSecuremeshAdvancedAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcAppstackBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcAppstackBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcAppstackBasicAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAppstackStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAppstackStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAppstackStandardAdmin) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) isAPIGroupChoice_Choice() {} @@ -1141,16 +1374,51 @@ func (*APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) isAPIGroupChoice_ func (*APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) isAPIGroupChoice_Choice() {} -func (*APIGroupChoice_F5XcNginxOneMonitor) isAPIGroupChoice_Choice() {} -func (*APIGroupChoice_F5XcNginxOneUser) isAPIGroupChoice_Choice() {} -func (*APIGroupChoice_F5XcNginxOneAdmin) isAPIGroupChoice_Choice() {} -func (*APIGroupChoice_F5XcNginxMgmtSuiteApplication) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcNginxOneApplicationRead) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcNginxOneApplicationWrite) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcClearviewMonitor) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcClearviewUser) isAPIGroupChoice_Choice() {} func (*APIGroupChoice_F5XcClearviewAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcRoutedDdosStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcRoutedDdosStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcRoutedDdosStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcDnsStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcDnsStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcDnsStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcClientSideDefenseStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcClientSideDefenseStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcClientSideDefenseStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSyntheticMonitoringStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAccountProtectionStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAccountProtectionStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcAccountProtectionStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) isAPIGroupChoice_Choice() { +} +func (*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) isAPIGroupChoice_Choice() { +} +func (*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) isAPIGroupChoice_Choice() { +} +func (*APIGroupChoice_F5XcDelegatedAccessStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcDelegatedAccessStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcDelegatedAccessStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcBotDefenseStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcBotDefenseStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcBotDefenseStandardAdmin) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcWebAppScanningStandardMonitor) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcWebAppScanningStandardUser) isAPIGroupChoice_Choice() {} +func (*APIGroupChoice_F5XcWebAppScanningStandardAdmin) isAPIGroupChoice_Choice() {} func (m *APIGroupChoice) GetChoice() isAPIGroupChoice_Choice { if m != nil { @@ -1404,6 +1672,69 @@ func (m *APIGroupChoice) GetF5XcScimClient() bool { return false } +func (m *APIGroupChoice) GetF5XcConsoleBasicMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleBasicMonitor); ok { + return x.F5XcConsoleBasicMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleBasicUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleBasicUser); ok { + return x.F5XcConsoleBasicUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleBasicAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleBasicAdmin); ok { + return x.F5XcConsoleBasicAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleStandardMonitor); ok { + return x.F5XcConsoleStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleStandardUser); ok { + return x.F5XcConsoleStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleStandardAdmin); ok { + return x.F5XcConsoleStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleAdvancedMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleAdvancedMonitor); ok { + return x.F5XcConsoleAdvancedMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleAdvancedUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleAdvancedUser); ok { + return x.F5XcConsoleAdvancedUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcConsoleAdvancedAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcConsoleAdvancedAdmin); ok { + return x.F5XcConsoleAdvancedAdmin + } + return false +} + func (m *APIGroupChoice) GetInfrastructureDemoAccessRead() bool { if x, ok := m.GetChoice().(*APIGroupChoice_InfrastructureDemoAccessRead); ok { return x.InfrastructureDemoAccessRead @@ -2349,6 +2680,27 @@ func (m *APIGroupChoice) GetF5XcWaapBasicAdmin() bool { return false } +func (m *APIGroupChoice) GetF5XcWaapStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWaapStandardMonitor); ok { + return x.F5XcWaapStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcWaapStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWaapStandardUser); ok { + return x.F5XcWaapStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcWaapStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWaapStandardAdmin); ok { + return x.F5XcWaapStandardAdmin + } + return false +} + func (m *APIGroupChoice) GetF5XcWaapAdvancedMonitor() bool { if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWaapAdvancedMonitor); ok { return x.F5XcWaapAdvancedMonitor @@ -2391,6 +2743,27 @@ func (m *APIGroupChoice) GetF5XcSiteManagementBasicAdmin() bool { return false } +func (m *APIGroupChoice) GetF5XcSiteManagementStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSiteManagementStandardMonitor); ok { + return x.F5XcSiteManagementStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcSiteManagementStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSiteManagementStandardUser); ok { + return x.F5XcSiteManagementStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcSiteManagementStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSiteManagementStandardAdmin); ok { + return x.F5XcSiteManagementStandardAdmin + } + return false +} + func (m *APIGroupChoice) GetF5XcDnsBasicMonitor() bool { if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDnsBasicMonitor); ok { return x.F5XcDnsBasicMonitor @@ -2496,6 +2869,27 @@ func (m *APIGroupChoice) GetF5XcSecuremeshBasicAdmin() bool { return false } +func (m *APIGroupChoice) GetF5XcSecuremeshStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshStandardMonitor); ok { + return x.F5XcSecuremeshStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcSecuremeshStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshStandardUser); ok { + return x.F5XcSecuremeshStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcSecuremeshStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshStandardAdmin); ok { + return x.F5XcSecuremeshStandardAdmin + } + return false +} + func (m *APIGroupChoice) GetF5XcSecuremeshAdvancedMonitor() bool { if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshAdvancedMonitor); ok { return x.F5XcSecuremeshAdvancedMonitor @@ -2538,6 +2932,27 @@ func (m *APIGroupChoice) GetF5XcAppstackBasicAdmin() bool { return false } +func (m *APIGroupChoice) GetF5XcAppstackStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAppstackStandardMonitor); ok { + return x.F5XcAppstackStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcAppstackStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAppstackStandardUser); ok { + return x.F5XcAppstackStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcAppstackStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAppstackStandardAdmin); ok { + return x.F5XcAppstackStandardAdmin + } + return false +} + func (m *APIGroupChoice) GetF5XcNginxMgmtSuiteBasicMonitor() bool { if x, ok := m.GetChoice().(*APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor); ok { return x.F5XcNginxMgmtSuiteBasicMonitor @@ -2601,34 +3016,6 @@ func (m *APIGroupChoice) GetF5XcAuthenticationIntelligenceBasicAdmin() bool { return false } -func (m *APIGroupChoice) GetF5XcNginxOneMonitor() bool { - if x, ok := m.GetChoice().(*APIGroupChoice_F5XcNginxOneMonitor); ok { - return x.F5XcNginxOneMonitor - } - return false -} - -func (m *APIGroupChoice) GetF5XcNginxOneUser() bool { - if x, ok := m.GetChoice().(*APIGroupChoice_F5XcNginxOneUser); ok { - return x.F5XcNginxOneUser - } - return false -} - -func (m *APIGroupChoice) GetF5XcNginxOneAdmin() bool { - if x, ok := m.GetChoice().(*APIGroupChoice_F5XcNginxOneAdmin); ok { - return x.F5XcNginxOneAdmin - } - return false -} - -func (m *APIGroupChoice) GetF5XcNginxMgmtSuiteApplication() bool { - if x, ok := m.GetChoice().(*APIGroupChoice_F5XcNginxMgmtSuiteApplication); ok { - return x.F5XcNginxMgmtSuiteApplication - } - return false -} - func (m *APIGroupChoice) GetF5XcApplicationInfrastructureProtectionApplication() bool { if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication); ok { return x.F5XcApplicationInfrastructureProtectionApplication @@ -2671,101 +3058,362 @@ func (m *APIGroupChoice) GetF5XcClearviewAdmin() bool { return false } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*APIGroupChoice) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*APIGroupChoice_F5XcDefaultAccess)(nil), - (*APIGroupChoice_F5XcBase)(nil), - (*APIGroupChoice_F5XcBilling)(nil), - (*APIGroupChoice_F5XcAuditLogsAlerts)(nil), - (*APIGroupChoice_F5XcChildManagementAdmin)(nil), - (*APIGroupChoice_F5XcChildManagementUser)(nil), - (*APIGroupChoice_F5XcChildManagementMonitor)(nil), - (*APIGroupChoice_F5XcChildManagementSupportAdmin)(nil), - (*APIGroupChoice_F5XcChildManagementSupportUser)(nil), - (*APIGroupChoice_F5XcChildManagementSupportMonitor)(nil), - (*APIGroupChoice_F5XcConsoleBaseMonitor)(nil), - (*APIGroupChoice_F5XcConsoleBaseUser)(nil), - (*APIGroupChoice_F5XcConsoleBaseAdmin)(nil), - (*APIGroupChoice_F5XcConsoleBaseAdvancedMonitor)(nil), - (*APIGroupChoice_F5XcConsoleBaseAdvancedUser)(nil), - (*APIGroupChoice_F5XcConsoleBaseAdvancedAdmin)(nil), - (*APIGroupChoice_F5XcConsoleBasePremiumMonitor)(nil), - (*APIGroupChoice_F5XcConsoleBasePremiumUser)(nil), - (*APIGroupChoice_F5XcConsoleBasePremiumAdmin)(nil), - (*APIGroupChoice_F5XcScimMonitor)(nil), - (*APIGroupChoice_F5XcScimUser)(nil), - (*APIGroupChoice_F5XcScimAdmin)(nil), - (*APIGroupChoice_F5XcSupportManagementMonitor)(nil), - (*APIGroupChoice_F5XcSupportManagementUser)(nil), - (*APIGroupChoice_F5XcSupportManagementAdmin)(nil), - (*APIGroupChoice_F5XcGlobalLogReceiverMonitor)(nil), - (*APIGroupChoice_F5XcGlobalLogReceiverUser)(nil), - (*APIGroupChoice_F5XcGlobalLogReceiverAdmin)(nil), - (*APIGroupChoice_F5XcAuditLogsAlertsMonitor)(nil), - (*APIGroupChoice_F5XcAuditLogsAlertsUser)(nil), - (*APIGroupChoice_F5XcAuditLogsAlertsAdmin)(nil), - (*APIGroupChoice_F5XcDelegatedAccessBasicMonitor)(nil), - (*APIGroupChoice_F5XcDelegatedAccessBasicUser)(nil), - (*APIGroupChoice_F5XcDelegatedAccessBasicAdmin)(nil), - (*APIGroupChoice_F5XcScimClient)(nil), - (*APIGroupChoice_InfrastructureDemoAccessRead)(nil), - (*APIGroupChoice_VesIoBillingRead)(nil), - (*APIGroupChoice_VesIoBillingWrite)(nil), - (*APIGroupChoice_VesIoGeneralRead)(nil), - (*APIGroupChoice_VesIoGeneralWrite)(nil), - (*APIGroupChoice_VesIoIaasCaasRead)(nil), - (*APIGroupChoice_VesIoIaasCaasWrite)(nil), - (*APIGroupChoice_VesIoInfraMonitorRead)(nil), - (*APIGroupChoice_VesIoInfraMonitorWrite)(nil), - (*APIGroupChoice_VesIoInfrastructureRead)(nil), - (*APIGroupChoice_VesIoInfrastructureWrite)(nil), - (*APIGroupChoice_VesIoInternalRead)(nil), - (*APIGroupChoice_VesIoInternalWrite)(nil), - (*APIGroupChoice_VesIoK8SRead)(nil), - (*APIGroupChoice_VesIoK8SWrite)(nil), - (*APIGroupChoice_VesIoLabelsRead)(nil), - (*APIGroupChoice_VesIoLabelsWrite)(nil), - (*APIGroupChoice_VesIoLocalK8SWrite)(nil), - (*APIGroupChoice_VesIoMonitorRead)(nil), - (*APIGroupChoice_VesIoMonitorWrite)(nil), - (*APIGroupChoice_VesIoNetworkRead)(nil), - (*APIGroupChoice_VesIoNetworkWrite)(nil), - (*APIGroupChoice_VesIoProxyMonitorRead)(nil), - (*APIGroupChoice_VesIoProxyMonitorWrite)(nil), - (*APIGroupChoice_VesIoProxyRead)(nil), - (*APIGroupChoice_VesIoProxySecurityRead)(nil), - (*APIGroupChoice_VesIoProxySecurityWrite)(nil), - (*APIGroupChoice_VesIoProxyWafRead)(nil), - (*APIGroupChoice_VesIoProxyWafWrite)(nil), - (*APIGroupChoice_VesIoProxyWrite)(nil), - (*APIGroupChoice_VesIoSecretsRead)(nil), - (*APIGroupChoice_VesIoSecretsWrite)(nil), - (*APIGroupChoice_VesIoUamAdminRead)(nil), - (*APIGroupChoice_VesIoUamAdminWrite)(nil), - (*APIGroupChoice_VesIoUamRead)(nil), - (*APIGroupChoice_VesIoUamWrite)(nil), - (*APIGroupChoice_VesIoVirtualSitesRead)(nil), - (*APIGroupChoice_VesIoVirtualSitesWrite)(nil), - (*APIGroupChoice_VesIoVoltShareRead)(nil), - (*APIGroupChoice_VesIoVoltShareWrite)(nil), - (*APIGroupChoice_VesIoWebAccessRead)(nil), - (*APIGroupChoice_VesIoWebAccessWrite)(nil), - (*APIGroupChoice_VesIoTenantOwnerRead)(nil), - (*APIGroupChoice_VesIoTenantOwnerWrite)(nil), - (*APIGroupChoice_VesIoStoredObjectRead)(nil), - (*APIGroupChoice_VesIoStoredObjectWrite)(nil), - (*APIGroupChoice_VoltconsoleShapeBotRead)(nil), - (*APIGroupChoice_VoltconsoleShapeBotWrite)(nil), - (*APIGroupChoice_VoltconsoleShapeBotAdmin)(nil), - (*APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt)(nil), - (*APIGroupChoice_VoltconsoleShapeRecognizeRead)(nil), - (*APIGroupChoice_VoltconsoleShapeRecognizeWrite)(nil), - (*APIGroupChoice_VoltconsoleShapeRecognizeAdmin)(nil), - (*APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt)(nil), - (*APIGroupChoice_VoltconsoleAidataBfdpRead)(nil), - (*APIGroupChoice_VoltconsoleAidataBfdpWrite)(nil), - (*APIGroupChoice_VoltconsoleAidataBfdpAdmin)(nil), +func (m *APIGroupChoice) GetF5XcRoutedDdosStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosStandardMonitor); ok { + return x.F5XcRoutedDdosStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcRoutedDdosStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosStandardUser); ok { + return x.F5XcRoutedDdosStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcRoutedDdosStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosStandardAdmin); ok { + return x.F5XcRoutedDdosStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcDnsStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDnsStandardMonitor); ok { + return x.F5XcDnsStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcDnsStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDnsStandardUser); ok { + return x.F5XcDnsStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcDnsStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDnsStandardAdmin); ok { + return x.F5XcDnsStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcApplicationTrafficInsightStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor); ok { + return x.F5XcApplicationTrafficInsightStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcApplicationTrafficInsightStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationTrafficInsightStandardUser); ok { + return x.F5XcApplicationTrafficInsightStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcApplicationTrafficInsightStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin); ok { + return x.F5XcApplicationTrafficInsightStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcContentDeliveryNetworkStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor); ok { + return x.F5XcContentDeliveryNetworkStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcContentDeliveryNetworkStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcContentDeliveryNetworkStandardUser); ok { + return x.F5XcContentDeliveryNetworkStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcContentDeliveryNetworkStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin); ok { + return x.F5XcContentDeliveryNetworkStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcClientSideDefenseStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcClientSideDefenseStandardMonitor); ok { + return x.F5XcClientSideDefenseStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcClientSideDefenseStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcClientSideDefenseStandardUser); ok { + return x.F5XcClientSideDefenseStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcClientSideDefenseStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcClientSideDefenseStandardAdmin); ok { + return x.F5XcClientSideDefenseStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcSyntheticMonitoringStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor); ok { + return x.F5XcSyntheticMonitoringStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcSyntheticMonitoringStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSyntheticMonitoringStandardUser); ok { + return x.F5XcSyntheticMonitoringStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcSyntheticMonitoringStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin); ok { + return x.F5XcSyntheticMonitoringStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcAuthenticationIntelligenceStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor); ok { + return x.F5XcAuthenticationIntelligenceStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcAuthenticationIntelligenceStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser); ok { + return x.F5XcAuthenticationIntelligenceStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcAuthenticationIntelligenceStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin); ok { + return x.F5XcAuthenticationIntelligenceStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcAccountProtectionStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAccountProtectionStandardMonitor); ok { + return x.F5XcAccountProtectionStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcAccountProtectionStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAccountProtectionStandardUser); ok { + return x.F5XcAccountProtectionStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcAccountProtectionStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcAccountProtectionStandardAdmin); ok { + return x.F5XcAccountProtectionStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcApplicationInfrastructureProtectionStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor); ok { + return x.F5XcApplicationInfrastructureProtectionStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcApplicationInfrastructureProtectionStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser); ok { + return x.F5XcApplicationInfrastructureProtectionStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcApplicationInfrastructureProtectionStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin); ok { + return x.F5XcApplicationInfrastructureProtectionStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcDelegatedAccessStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDelegatedAccessStandardMonitor); ok { + return x.F5XcDelegatedAccessStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcDelegatedAccessStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDelegatedAccessStandardUser); ok { + return x.F5XcDelegatedAccessStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcDelegatedAccessStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcDelegatedAccessStandardAdmin); ok { + return x.F5XcDelegatedAccessStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcBotDefenseStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcBotDefenseStandardMonitor); ok { + return x.F5XcBotDefenseStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcBotDefenseStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcBotDefenseStandardUser); ok { + return x.F5XcBotDefenseStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcBotDefenseStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcBotDefenseStandardAdmin); ok { + return x.F5XcBotDefenseStandardAdmin + } + return false +} + +func (m *APIGroupChoice) GetF5XcWebAppScanningStandardMonitor() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWebAppScanningStandardMonitor); ok { + return x.F5XcWebAppScanningStandardMonitor + } + return false +} + +func (m *APIGroupChoice) GetF5XcWebAppScanningStandardUser() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWebAppScanningStandardUser); ok { + return x.F5XcWebAppScanningStandardUser + } + return false +} + +func (m *APIGroupChoice) GetF5XcWebAppScanningStandardAdmin() bool { + if x, ok := m.GetChoice().(*APIGroupChoice_F5XcWebAppScanningStandardAdmin); ok { + return x.F5XcWebAppScanningStandardAdmin + } + return false +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*APIGroupChoice) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*APIGroupChoice_F5XcDefaultAccess)(nil), + (*APIGroupChoice_F5XcBase)(nil), + (*APIGroupChoice_F5XcBilling)(nil), + (*APIGroupChoice_F5XcAuditLogsAlerts)(nil), + (*APIGroupChoice_F5XcChildManagementAdmin)(nil), + (*APIGroupChoice_F5XcChildManagementUser)(nil), + (*APIGroupChoice_F5XcChildManagementMonitor)(nil), + (*APIGroupChoice_F5XcChildManagementSupportAdmin)(nil), + (*APIGroupChoice_F5XcChildManagementSupportUser)(nil), + (*APIGroupChoice_F5XcChildManagementSupportMonitor)(nil), + (*APIGroupChoice_F5XcConsoleBaseMonitor)(nil), + (*APIGroupChoice_F5XcConsoleBaseUser)(nil), + (*APIGroupChoice_F5XcConsoleBaseAdmin)(nil), + (*APIGroupChoice_F5XcConsoleBaseAdvancedMonitor)(nil), + (*APIGroupChoice_F5XcConsoleBaseAdvancedUser)(nil), + (*APIGroupChoice_F5XcConsoleBaseAdvancedAdmin)(nil), + (*APIGroupChoice_F5XcConsoleBasePremiumMonitor)(nil), + (*APIGroupChoice_F5XcConsoleBasePremiumUser)(nil), + (*APIGroupChoice_F5XcConsoleBasePremiumAdmin)(nil), + (*APIGroupChoice_F5XcScimMonitor)(nil), + (*APIGroupChoice_F5XcScimUser)(nil), + (*APIGroupChoice_F5XcScimAdmin)(nil), + (*APIGroupChoice_F5XcSupportManagementMonitor)(nil), + (*APIGroupChoice_F5XcSupportManagementUser)(nil), + (*APIGroupChoice_F5XcSupportManagementAdmin)(nil), + (*APIGroupChoice_F5XcGlobalLogReceiverMonitor)(nil), + (*APIGroupChoice_F5XcGlobalLogReceiverUser)(nil), + (*APIGroupChoice_F5XcGlobalLogReceiverAdmin)(nil), + (*APIGroupChoice_F5XcAuditLogsAlertsMonitor)(nil), + (*APIGroupChoice_F5XcAuditLogsAlertsUser)(nil), + (*APIGroupChoice_F5XcAuditLogsAlertsAdmin)(nil), + (*APIGroupChoice_F5XcDelegatedAccessBasicMonitor)(nil), + (*APIGroupChoice_F5XcDelegatedAccessBasicUser)(nil), + (*APIGroupChoice_F5XcDelegatedAccessBasicAdmin)(nil), + (*APIGroupChoice_F5XcScimClient)(nil), + (*APIGroupChoice_F5XcConsoleBasicMonitor)(nil), + (*APIGroupChoice_F5XcConsoleBasicUser)(nil), + (*APIGroupChoice_F5XcConsoleBasicAdmin)(nil), + (*APIGroupChoice_F5XcConsoleStandardMonitor)(nil), + (*APIGroupChoice_F5XcConsoleStandardUser)(nil), + (*APIGroupChoice_F5XcConsoleStandardAdmin)(nil), + (*APIGroupChoice_F5XcConsoleAdvancedMonitor)(nil), + (*APIGroupChoice_F5XcConsoleAdvancedUser)(nil), + (*APIGroupChoice_F5XcConsoleAdvancedAdmin)(nil), + (*APIGroupChoice_InfrastructureDemoAccessRead)(nil), + (*APIGroupChoice_VesIoBillingRead)(nil), + (*APIGroupChoice_VesIoBillingWrite)(nil), + (*APIGroupChoice_VesIoGeneralRead)(nil), + (*APIGroupChoice_VesIoGeneralWrite)(nil), + (*APIGroupChoice_VesIoIaasCaasRead)(nil), + (*APIGroupChoice_VesIoIaasCaasWrite)(nil), + (*APIGroupChoice_VesIoInfraMonitorRead)(nil), + (*APIGroupChoice_VesIoInfraMonitorWrite)(nil), + (*APIGroupChoice_VesIoInfrastructureRead)(nil), + (*APIGroupChoice_VesIoInfrastructureWrite)(nil), + (*APIGroupChoice_VesIoInternalRead)(nil), + (*APIGroupChoice_VesIoInternalWrite)(nil), + (*APIGroupChoice_VesIoK8SRead)(nil), + (*APIGroupChoice_VesIoK8SWrite)(nil), + (*APIGroupChoice_VesIoLabelsRead)(nil), + (*APIGroupChoice_VesIoLabelsWrite)(nil), + (*APIGroupChoice_VesIoLocalK8SWrite)(nil), + (*APIGroupChoice_VesIoMonitorRead)(nil), + (*APIGroupChoice_VesIoMonitorWrite)(nil), + (*APIGroupChoice_VesIoNetworkRead)(nil), + (*APIGroupChoice_VesIoNetworkWrite)(nil), + (*APIGroupChoice_VesIoProxyMonitorRead)(nil), + (*APIGroupChoice_VesIoProxyMonitorWrite)(nil), + (*APIGroupChoice_VesIoProxyRead)(nil), + (*APIGroupChoice_VesIoProxySecurityRead)(nil), + (*APIGroupChoice_VesIoProxySecurityWrite)(nil), + (*APIGroupChoice_VesIoProxyWafRead)(nil), + (*APIGroupChoice_VesIoProxyWafWrite)(nil), + (*APIGroupChoice_VesIoProxyWrite)(nil), + (*APIGroupChoice_VesIoSecretsRead)(nil), + (*APIGroupChoice_VesIoSecretsWrite)(nil), + (*APIGroupChoice_VesIoUamAdminRead)(nil), + (*APIGroupChoice_VesIoUamAdminWrite)(nil), + (*APIGroupChoice_VesIoUamRead)(nil), + (*APIGroupChoice_VesIoUamWrite)(nil), + (*APIGroupChoice_VesIoVirtualSitesRead)(nil), + (*APIGroupChoice_VesIoVirtualSitesWrite)(nil), + (*APIGroupChoice_VesIoVoltShareRead)(nil), + (*APIGroupChoice_VesIoVoltShareWrite)(nil), + (*APIGroupChoice_VesIoWebAccessRead)(nil), + (*APIGroupChoice_VesIoWebAccessWrite)(nil), + (*APIGroupChoice_VesIoTenantOwnerRead)(nil), + (*APIGroupChoice_VesIoTenantOwnerWrite)(nil), + (*APIGroupChoice_VesIoStoredObjectRead)(nil), + (*APIGroupChoice_VesIoStoredObjectWrite)(nil), + (*APIGroupChoice_VoltconsoleShapeBotRead)(nil), + (*APIGroupChoice_VoltconsoleShapeBotWrite)(nil), + (*APIGroupChoice_VoltconsoleShapeBotAdmin)(nil), + (*APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt)(nil), + (*APIGroupChoice_VoltconsoleShapeRecognizeRead)(nil), + (*APIGroupChoice_VoltconsoleShapeRecognizeWrite)(nil), + (*APIGroupChoice_VoltconsoleShapeRecognizeAdmin)(nil), + (*APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt)(nil), + (*APIGroupChoice_VoltconsoleAidataBfdpRead)(nil), + (*APIGroupChoice_VoltconsoleAidataBfdpWrite)(nil), + (*APIGroupChoice_VoltconsoleAidataBfdpAdmin)(nil), (*APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt)(nil), (*APIGroupChoice_VoltconsoleSyntheticMonitorRead)(nil), (*APIGroupChoice_VoltconsoleSyntheticMonitorWrite)(nil), @@ -2844,12 +3492,18 @@ func (*APIGroupChoice) XXX_OneofWrappers() []interface{} { (*APIGroupChoice_F5XcWaapBasicMonitor)(nil), (*APIGroupChoice_F5XcWaapBasicUser)(nil), (*APIGroupChoice_F5XcWaapBasicAdmin)(nil), + (*APIGroupChoice_F5XcWaapStandardMonitor)(nil), + (*APIGroupChoice_F5XcWaapStandardUser)(nil), + (*APIGroupChoice_F5XcWaapStandardAdmin)(nil), (*APIGroupChoice_F5XcWaapAdvancedMonitor)(nil), (*APIGroupChoice_F5XcWaapAdvancedUser)(nil), (*APIGroupChoice_F5XcWaapAdvancedAdmin)(nil), (*APIGroupChoice_F5XcSiteManagementBasicMonitor)(nil), (*APIGroupChoice_F5XcSiteManagementBasicUser)(nil), (*APIGroupChoice_F5XcSiteManagementBasicAdmin)(nil), + (*APIGroupChoice_F5XcSiteManagementStandardMonitor)(nil), + (*APIGroupChoice_F5XcSiteManagementStandardUser)(nil), + (*APIGroupChoice_F5XcSiteManagementStandardAdmin)(nil), (*APIGroupChoice_F5XcDnsBasicMonitor)(nil), (*APIGroupChoice_F5XcDnsBasicUser)(nil), (*APIGroupChoice_F5XcDnsBasicAdmin)(nil), @@ -2865,12 +3519,18 @@ func (*APIGroupChoice) XXX_OneofWrappers() []interface{} { (*APIGroupChoice_F5XcSecuremeshBasicMonitor)(nil), (*APIGroupChoice_F5XcSecuremeshBasicUser)(nil), (*APIGroupChoice_F5XcSecuremeshBasicAdmin)(nil), + (*APIGroupChoice_F5XcSecuremeshStandardMonitor)(nil), + (*APIGroupChoice_F5XcSecuremeshStandardUser)(nil), + (*APIGroupChoice_F5XcSecuremeshStandardAdmin)(nil), (*APIGroupChoice_F5XcSecuremeshAdvancedMonitor)(nil), (*APIGroupChoice_F5XcSecuremeshAdvancedUser)(nil), (*APIGroupChoice_F5XcSecuremeshAdvancedAdmin)(nil), (*APIGroupChoice_F5XcAppstackBasicMonitor)(nil), (*APIGroupChoice_F5XcAppstackBasicUser)(nil), (*APIGroupChoice_F5XcAppstackBasicAdmin)(nil), + (*APIGroupChoice_F5XcAppstackStandardMonitor)(nil), + (*APIGroupChoice_F5XcAppstackStandardUser)(nil), + (*APIGroupChoice_F5XcAppstackStandardAdmin)(nil), (*APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor)(nil), (*APIGroupChoice_F5XcNginxMgmtSuiteBasicUser)(nil), (*APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin)(nil), @@ -2880,16 +3540,48 @@ func (*APIGroupChoice) XXX_OneofWrappers() []interface{} { (*APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor)(nil), (*APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser)(nil), (*APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin)(nil), - (*APIGroupChoice_F5XcNginxOneMonitor)(nil), - (*APIGroupChoice_F5XcNginxOneUser)(nil), - (*APIGroupChoice_F5XcNginxOneAdmin)(nil), - (*APIGroupChoice_F5XcNginxMgmtSuiteApplication)(nil), (*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication)(nil), (*APIGroupChoice_F5XcNginxOneApplicationRead)(nil), (*APIGroupChoice_F5XcNginxOneApplicationWrite)(nil), (*APIGroupChoice_F5XcClearviewMonitor)(nil), (*APIGroupChoice_F5XcClearviewUser)(nil), (*APIGroupChoice_F5XcClearviewAdmin)(nil), + (*APIGroupChoice_F5XcRoutedDdosStandardMonitor)(nil), + (*APIGroupChoice_F5XcRoutedDdosStandardUser)(nil), + (*APIGroupChoice_F5XcRoutedDdosStandardAdmin)(nil), + (*APIGroupChoice_F5XcDnsStandardMonitor)(nil), + (*APIGroupChoice_F5XcDnsStandardUser)(nil), + (*APIGroupChoice_F5XcDnsStandardAdmin)(nil), + (*APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor)(nil), + (*APIGroupChoice_F5XcApplicationTrafficInsightStandardUser)(nil), + (*APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin)(nil), + (*APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor)(nil), + (*APIGroupChoice_F5XcContentDeliveryNetworkStandardUser)(nil), + (*APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin)(nil), + (*APIGroupChoice_F5XcClientSideDefenseStandardMonitor)(nil), + (*APIGroupChoice_F5XcClientSideDefenseStandardUser)(nil), + (*APIGroupChoice_F5XcClientSideDefenseStandardAdmin)(nil), + (*APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor)(nil), + (*APIGroupChoice_F5XcSyntheticMonitoringStandardUser)(nil), + (*APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin)(nil), + (*APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor)(nil), + (*APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser)(nil), + (*APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin)(nil), + (*APIGroupChoice_F5XcAccountProtectionStandardMonitor)(nil), + (*APIGroupChoice_F5XcAccountProtectionStandardUser)(nil), + (*APIGroupChoice_F5XcAccountProtectionStandardAdmin)(nil), + (*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor)(nil), + (*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser)(nil), + (*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin)(nil), + (*APIGroupChoice_F5XcDelegatedAccessStandardMonitor)(nil), + (*APIGroupChoice_F5XcDelegatedAccessStandardUser)(nil), + (*APIGroupChoice_F5XcDelegatedAccessStandardAdmin)(nil), + (*APIGroupChoice_F5XcBotDefenseStandardMonitor)(nil), + (*APIGroupChoice_F5XcBotDefenseStandardUser)(nil), + (*APIGroupChoice_F5XcBotDefenseStandardAdmin)(nil), + (*APIGroupChoice_F5XcWebAppScanningStandardMonitor)(nil), + (*APIGroupChoice_F5XcWebAppScanningStandardUser)(nil), + (*APIGroupChoice_F5XcWebAppScanningStandardAdmin)(nil), } } @@ -2902,688 +3594,839 @@ func init() { } var fileDescriptor_fb1a2f3ff9afca20 = []byte{ - // 10894 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x7d, 0x59, 0xb4, 0xa5, 0x47, - 0x75, 0x5e, 0x9f, 0x4e, 0x42, 0xf0, 0x31, 0x06, 0xd4, 0x20, 0xe9, 0x48, 0x88, 0x66, 0x6a, 0x26, - 0xc3, 0x96, 0x6a, 0x1e, 0x3c, 0x6b, 0x30, 0xb4, 0x98, 0x24, 0xb7, 0x10, 0xb2, 0x71, 0xf0, 0xf5, - 0xae, 0xe9, 0xea, 0xa0, 0xdb, 0xf7, 0x5c, 0xdf, 0x7b, 0xba, 0x1b, 0x6c, 0x63, 0xe3, 0x09, 0x83, - 0xb1, 0x31, 0x78, 0xc2, 0x60, 0xb0, 0x1d, 0x4f, 0x21, 0xf1, 0xf0, 0x92, 0x87, 0x0c, 0x37, 0x0f, - 0xc9, 0x5d, 0x2b, 0x2b, 0x59, 0x2b, 0x2f, 0xbc, 0x64, 0x2d, 0xaf, 0x0c, 0x4e, 0x10, 0x19, 0xfc, - 0x90, 0xc1, 0x71, 0xe6, 0x39, 0xab, 0xaa, 0xfe, 0xff, 0x9c, 0x7f, 0x3a, 0xb7, 0xa5, 0xbc, 0xb0, - 0x44, 0xdf, 0xaa, 0xda, 0xdf, 0xae, 0xbd, 0x6b, 0x4f, 0x7f, 0xd5, 0x3e, 0xf3, 0x37, 0xdf, 0x8c, - 0x27, 0xf7, 0x2f, 0x57, 0x0f, 0x9c, 0xf8, 0xa7, 0xe3, 0x75, 0x7c, 0xe0, 0x66, 0x3c, 0x89, 0x87, - 0x37, 0x1f, 0xc0, 0x83, 0x83, 0x3d, 0x3c, 0x5a, 0xee, 0xed, 0x1f, 0xaf, 0x6e, 0x1c, 0x9d, 0xdc, - 0x7f, 0x74, 0xbc, 0x5a, 0xaf, 0x2e, 0xbd, 0xbc, 0x0e, 0xbd, 0xbf, 0x0e, 0xbd, 0xbf, 0x0e, 0xbd, - 0xf7, 0xb5, 0x93, 0x0b, 0xac, 0x8e, 0xd6, 0xcb, 0xd5, 0x61, 0x33, 0xf3, 0xb5, 0xa7, 0x7f, 0x3a, - 0x9b, 0xbf, 0xf8, 0xc1, 0xc7, 0x1f, 0x7d, 0x7b, 0x5e, 0xee, 0xe1, 0xa7, 0x57, 0x4b, 0x1f, 0x2f, - 0x7d, 0xdf, 0xfc, 0x65, 0x49, 0x7e, 0xc8, 0xef, 0x85, 0x98, 0xf0, 0xc6, 0xc1, 0x7a, 0x0f, 0xbd, - 0x8f, 0x27, 0x27, 0x8b, 0xf0, 0xea, 0xd9, 0x9b, 0x5e, 0xf8, 0xd0, 0xb7, 0x9e, 0x9d, 0x2e, 0xbe, - 0xb1, 0x0e, 0x80, 0x66, 0x00, 0xd4, 0x01, 0x97, 0xae, 0x78, 0x27, 0xa9, 0x21, 0x4a, 0x81, 0x31, - 0x81, 0x82, 0x10, 0x96, 0x81, 0xa5, 0xc9, 0x82, 0x92, 0xd1, 0x4a, 0x34, 0x22, 0x5a, 0xd4, 0x57, - 0x2f, 0x5c, 0xbb, 0x23, 0x4f, 0x7e, 0xa4, 0xce, 0x7d, 0xb0, 0x4e, 0x7d, 0xef, 0xfc, 0x6b, 0x0a, - 0x49, 0x87, 0x27, 0x71, 0x11, 0x0b, 0x21, 0x79, 0x76, 0xba, 0xa0, 0xf5, 0x9f, 0x21, 0xff, 0xf3, - 0xa5, 0x2b, 0x82, 0xf0, 0x84, 0x8e, 0x78, 0xf0, 0x36, 0x1a, 0x10, 0x3a, 0x6a, 0x30, 0xd1, 0x08, - 0x50, 0x5c, 0x2b, 0x49, 0x79, 0xd0, 0x49, 0xb0, 0xab, 0x17, 0xae, 0xbd, 0x30, 0x4f, 0x79, 0x28, - 0xcf, 0xf8, 0xc0, 0xfc, 0x45, 0x75, 0xd5, 0xe5, 0xc1, 0xc1, 0xf2, 0x70, 0x7f, 0x91, 0xca, 0xc2, - 0xe6, 0xec, 0x74, 0x21, 0xea, 0x5f, 0xa0, 0xf9, 0xcb, 0xa5, 0x2b, 0x81, 0x0a, 0xe7, 0x19, 0x26, - 0xf0, 0xce, 0x2a, 0x10, 0x02, 0x3d, 0x98, 0x14, 0x0c, 0x48, 0x49, 0x42, 0xb2, 0x3a, 0x45, 0xc6, - 0xf0, 0xea, 0x85, 0x6b, 0x5f, 0x5b, 0xd6, 0x6e, 0x26, 0x7d, 0x78, 0x7e, 0x57, 0x59, 0x1e, 0x6f, - 0x84, 0xe5, 0x7a, 0xef, 0x60, 0xb5, 0x7f, 0xb2, 0x87, 0x07, 0xf1, 0x78, 0x7d, 0xb2, 0xd8, 0x2f, - 0x84, 0x1e, 0x3a, 0x3b, 0x5d, 0x7c, 0x4b, 0x1d, 0x03, 0x65, 0x0c, 0xe4, 0x31, 0x50, 0xc7, 0x5c, - 0xba, 0x62, 0xa5, 0x46, 0x91, 0x7c, 0x04, 0xd4, 0x89, 0x83, 0xe0, 0xdc, 0x83, 0x0b, 0x9e, 0x83, - 0x16, 0x49, 0xea, 0x40, 0x59, 0x12, 0x24, 0xef, 0x56, 0xd9, 0xea, 0x07, 0xf3, 0xf4, 0x77, 0xad, - 0xf6, 0x4f, 0x1e, 0xac, 0x93, 0x3f, 0x31, 0x9b, 0xbf, 0xa2, 0xd0, 0xf6, 0x4f, 0x2f, 0x0f, 0xc2, - 0xde, 0x75, 0x3c, 0xc4, 0xfd, 0x78, 0x3d, 0x1e, 0xae, 0xf7, 0x30, 0x5c, 0x5f, 0x1e, 0x2e, 0x3e, - 0x3a, 0x2b, 0x08, 0xde, 0x7e, 0x76, 0xba, 0x78, 0xb8, 0x8e, 0x84, 0x32, 0x12, 0xb6, 0x23, 0xa1, - 0x8c, 0xbc, 0x74, 0x45, 0x24, 0xe6, 0x54, 0x12, 0x09, 0x82, 0x8a, 0x08, 0x42, 0x29, 0x0f, 0xe8, - 0x59, 0x80, 0x10, 0x22, 0x21, 0x9e, 0x58, 0x1b, 0x7c, 0x86, 0xb1, 0xc8, 0x8b, 0x3c, 0x9c, 0xd7, - 0x78, 0xf7, 0x66, 0x89, 0x07, 0xcb, 0x0a, 0x1f, 0x9b, 0xcd, 0xef, 0x9d, 0xc6, 0x72, 0xe3, 0x24, - 0x1e, 0x2f, 0x7e, 0xa4, 0x42, 0x79, 0xdb, 0xd9, 0xe9, 0xe2, 0xa1, 0x3a, 0x70, 0x0c, 0x25, 0x0f, - 0xbc, 0x74, 0x05, 0x59, 0x62, 0xe8, 0xa5, 0x83, 0xa0, 0x52, 0x02, 0x11, 0x58, 0x00, 0xcb, 0xa8, - 0x84, 0x14, 0x53, 0x90, 0xd1, 0x25, 0x62, 0xa4, 0xbd, 0x7a, 0xe1, 0xda, 0xdd, 0x13, 0x48, 0x9e, - 0xcc, 0x0b, 0xfc, 0xec, 0x6c, 0xfe, 0xca, 0x69, 0x20, 0xd7, 0x57, 0x87, 0xcb, 0xf5, 0xea, 0x78, - 0xf1, 0xa3, 0x15, 0xcb, 0xa3, 0x67, 0xa7, 0x8b, 0x6f, 0xaf, 0x63, 0xc7, 0x58, 0x9a, 0xb1, 0x97, - 0xae, 0x38, 0xed, 0x82, 0xd5, 0x91, 0x00, 0xe7, 0xd2, 0x81, 0x88, 0xde, 0x82, 0x65, 0x46, 0x83, - 0x8c, 0xce, 0x47, 0xee, 0xa5, 0x51, 0x29, 0xab, 0xc4, 0xbd, 0x13, 0x70, 0xde, 0xdd, 0xac, 0xf1, - 0xeb, 0xb3, 0xf9, 0xeb, 0xa6, 0x11, 0x9d, 0xdc, 0x38, 0x3a, 0x5a, 0x1d, 0xb7, 0xe2, 0xfa, 0x3f, - 0x15, 0xd7, 0x63, 0x67, 0xa7, 0x8b, 0x77, 0xd6, 0x19, 0x63, 0x5c, 0xcd, 0x8c, 0x56, 0x6c, 0x8e, - 0x11, 0x43, 0x52, 0xa2, 0x10, 0xac, 0xd0, 0x20, 0x22, 0x53, 0x80, 0x8c, 0x53, 0xd0, 0x4e, 0x25, - 0x96, 0x14, 0x15, 0x11, 0xcd, 0xd5, 0x0b, 0xd7, 0x5e, 0x35, 0x81, 0xee, 0x89, 0xba, 0x52, 0x95, - 0xde, 0x17, 0x67, 0xf3, 0xd7, 0x9e, 0x0f, 0xb1, 0x48, 0xf1, 0xff, 0x56, 0x84, 0xef, 0x39, 0x3b, - 0x5d, 0xbc, 0xa3, 0x4e, 0xd8, 0x8d, 0xb0, 0x4a, 0x93, 0xeb, 0x68, 0xa3, 0x53, 0x1c, 0xb8, 0xce, - 0xd2, 0x34, 0x9a, 0x83, 0x11, 0x21, 0x42, 0x52, 0x3c, 0x89, 0x24, 0x10, 0xa3, 0xcf, 0xdb, 0x77, - 0x79, 0x37, 0xc0, 0x22, 0xd4, 0xdf, 0x99, 0xcd, 0x5f, 0x7f, 0x3e, 0xbe, 0x56, 0xb8, 0x1f, 0xbd, - 0x58, 0x20, 0x7e, 0xc7, 0xd9, 0xe9, 0xe2, 0xdd, 0x75, 0xce, 0x6e, 0x88, 0x1b, 0x21, 0x6b, 0x1f, - 0x59, 0x20, 0xd2, 0x81, 0x96, 0x2c, 0x80, 0xb0, 0x98, 0x00, 0x0d, 0x6a, 0x10, 0xc4, 0x1a, 0x2d, - 0x88, 0x11, 0x1e, 0xc3, 0xd5, 0x0b, 0xd7, 0x5e, 0xb3, 0x1b, 0x65, 0x2b, 0xeb, 0x1f, 0x9b, 0xcd, - 0xef, 0xa9, 0x40, 0x57, 0x87, 0x27, 0xab, 0x83, 0x58, 0x6c, 0xd9, 0x06, 0xdc, 0x2f, 0xd5, 0xfd, - 0xfb, 0xf6, 0xb3, 0xd3, 0xc5, 0x83, 0x75, 0x1c, 0x34, 0xe3, 0x8a, 0x71, 0xdb, 0x02, 0x12, 0x3e, - 0x44, 0xcb, 0xa4, 0x04, 0x19, 0x91, 0x82, 0xe0, 0x34, 0x82, 0x61, 0xda, 0x40, 0x60, 0xc9, 0x09, - 0x21, 0x9d, 0x51, 0x3c, 0x6f, 0x5b, 0xb1, 0x2a, 0x0f, 0xd7, 0x15, 0xb2, 0xad, 0x6b, 0x51, 0x7c, - 0x7f, 0x63, 0x93, 0x7a, 0x20, 0x8a, 0x04, 0x3f, 0x3b, 0x1b, 0x19, 0xa5, 0x1e, 0x82, 0x2a, 0xb5, - 0x68, 0xa9, 0x22, 0x11, 0x0d, 0xa4, 0xc8, 0x38, 0x08, 0x45, 0x0c, 0x38, 0xab, 0x38, 0x48, 0x6b, - 0x2c, 0xb7, 0x2c, 0x08, 0x2b, 0x59, 0x6b, 0x94, 0x3a, 0xe4, 0x8b, 0xa8, 0x3e, 0x32, 0xbf, 0x7b, - 0x4c, 0xbb, 0x2a, 0xf8, 0x2f, 0x57, 0xe2, 0x0f, 0x9f, 0x9d, 0x2e, 0xbe, 0xb5, 0x8e, 0xea, 0x13, - 0x6f, 0x94, 0x3a, 0x45, 0x62, 0x74, 0x50, 0x08, 0xc6, 0x0a, 0x0a, 0x42, 0x65, 0x0b, 0xef, 0x51, - 0x82, 0x34, 0x8e, 0x64, 0x0f, 0x22, 0x9d, 0xf4, 0x57, 0x2f, 0x5c, 0x7b, 0xf9, 0x80, 0xfa, 0x50, - 0x93, 0xfb, 0xf4, 0x6f, 0xe2, 0xa1, 0x8f, 0x61, 0x23, 0x89, 0xcf, 0x4d, 0x68, 0x72, 0x1f, 0x4a, - 0x9d, 0xb0, 0x15, 0x49, 0xd2, 0x9e, 0x98, 0x48, 0x13, 0x38, 0xc2, 0x09, 0x08, 0x41, 0x38, 0xa0, - 0xa3, 0x0c, 0x2c, 0x11, 0xda, 0xa1, 0xe6, 0x5e, 0x33, 0xb5, 0xd1, 0xe4, 0x2e, 0xaa, 0xba, 0x50, - 0x2b, 0x9a, 0x5f, 0x98, 0xcd, 0x5f, 0x75, 0x0e, 0xbe, 0x22, 0xa4, 0xcf, 0x57, 0x70, 0xef, 0x3c, - 0x3b, 0x5d, 0xbc, 0xbd, 0x8e, 0xde, 0x01, 0xae, 0x4a, 0xcb, 0x2a, 0x8e, 0x91, 0x58, 0x0f, 0x11, - 0x25, 0x82, 0x30, 0x1e, 0xc1, 0x45, 0x4d, 0xc0, 0x48, 0x63, 0x23, 0xf5, 0x36, 0x58, 0x94, 0x57, - 0x2f, 0x5c, 0x7b, 0xc5, 0x0e, 0x64, 0x45, 0x6a, 0x9f, 0x9d, 0xcd, 0x5f, 0x7d, 0x0e, 0xac, 0x2a, - 0xbf, 0x5f, 0xa9, 0xb8, 0xde, 0x75, 0x76, 0xba, 0xb8, 0x5a, 0x87, 0xef, 0xc0, 0xd5, 0x08, 0xd2, - 0x13, 0x43, 0xbd, 0x33, 0x0c, 0xbc, 0x4d, 0x1e, 0x04, 0xf7, 0x02, 0x90, 0x38, 0x06, 0x2a, 0x48, - 0x47, 0xbd, 0x49, 0x18, 0x75, 0xde, 0xb2, 0xfb, 0x76, 0x00, 0xab, 0x02, 0xfd, 0xfc, 0x6c, 0xfe, - 0x9a, 0x31, 0xb2, 0xa3, 0xe3, 0x78, 0x7d, 0x79, 0xe3, 0xfa, 0x46, 0x9e, 0x5f, 0xa8, 0xd0, 0xde, - 0x7d, 0x76, 0xba, 0x78, 0xb4, 0x8e, 0xef, 0x43, 0x6b, 0xc6, 0x6f, 0xc5, 0x69, 0x12, 0x0f, 0xd1, - 0x71, 0x01, 0x68, 0x93, 0x06, 0xc1, 0x64, 0x02, 0xf4, 0x51, 0x41, 0x64, 0x4a, 0xc8, 0x14, 0x85, - 0xe1, 0x3e, 0x1f, 0xf9, 0x57, 0x0e, 0xb0, 0x3d, 0x5e, 0xd7, 0x69, 0xa5, 0xf9, 0x99, 0xd9, 0xfc, - 0xf2, 0x6e, 0x70, 0x45, 0x98, 0x5f, 0xac, 0xc8, 0xde, 0x71, 0x76, 0xba, 0x78, 0x5b, 0x1d, 0x3c, - 0x8d, 0xac, 0xca, 0xd2, 0x05, 0xaa, 0x39, 0xa1, 0x0a, 0xd0, 0xb8, 0x08, 0xc2, 0x49, 0x01, 0x36, - 0x78, 0x03, 0x89, 0x7b, 0xa1, 0x51, 0x33, 0x1e, 0xa8, 0xda, 0xb8, 0x9b, 0x11, 0xac, 0x22, 0xca, - 0x69, 0x0d, 0x6b, 0x31, 0x55, 0x49, 0xfe, 0xea, 0x6d, 0x34, 0xac, 0x05, 0xd5, 0x0a, 0x52, 0x46, - 0xaf, 0x64, 0xf2, 0x10, 0x25, 0x0a, 0x10, 0x44, 0x50, 0x40, 0x22, 0x12, 0x50, 0xab, 0xad, 0x37, - 0x52, 0xc9, 0xea, 0x04, 0x5f, 0x31, 0x8d, 0xaa, 0xca, 0xf1, 0x60, 0x5e, 0x22, 0xbe, 0xbd, 0x13, - 0xbf, 0xdc, 0x8a, 0xed, 0xd7, 0x2a, 0x8e, 0x6f, 0x3e, 0x3b, 0x5d, 0xd8, 0xfa, 0x77, 0xc8, 0x7f, - 0xdf, 0x8a, 0xc9, 0x7b, 0xaa, 0xb5, 0x8f, 0x09, 0x18, 0x0a, 0x0f, 0x42, 0x69, 0x09, 0x2e, 0x28, - 0x0a, 0x4e, 0x29, 0x13, 0xa4, 0x4d, 0x18, 0x52, 0xd6, 0xed, 0x97, 0xe4, 0xa9, 0x4f, 0xf8, 0xe5, - 0x46, 0x30, 0x7e, 0xfe, 0xe2, 0x2d, 0xb5, 0x22, 0x87, 0x5f, 0xaf, 0xa4, 0xbe, 0xe1, 0xec, 0x74, - 0xa1, 0xea, 0x1f, 0x2b, 0xa9, 0xba, 0xef, 0x4a, 0x50, 0xed, 0x6d, 0x42, 0x48, 0x44, 0x94, 0x30, - 0x8c, 0x02, 0x9a, 0x68, 0xc1, 0x13, 0x0c, 0x21, 0x70, 0x61, 0x35, 0xc9, 0x1c, 0xbe, 0xa8, 0xa5, - 0x53, 0x76, 0xfa, 0x70, 0xfe, 0x92, 0x2d, 0x91, 0xba, 0xb1, 0x7f, 0xb1, 0x6b, 0xe2, 0x5e, 0xb2, - 0xa5, 0xd2, 0x6c, 0x24, 0xb1, 0x82, 0x66, 0xfb, 0x05, 0x91, 0x66, 0x23, 0x12, 0xa8, 0x03, 0xe4, - 0x46, 0x81, 0xf3, 0x9c, 0x52, 0x42, 0x19, 0xe5, 0xc4, 0xdd, 0xfb, 0x82, 0x93, 0x0f, 0x9f, 0xac, - 0xe3, 0xf5, 0xab, 0x17, 0xae, 0x7d, 0x5d, 0x4b, 0xae, 0x6e, 0xe1, 0x2f, 0xb6, 0x92, 0xdd, 0x38, - 0xbd, 0x71, 0x70, 0xf3, 0x1b, 0x63, 0xc9, 0x6e, 0xdc, 0xdd, 0x44, 0x78, 0xa3, 0x3d, 0x63, 0x54, - 0x69, 0x0e, 0x42, 0xb2, 0x04, 0x22, 0x72, 0x0b, 0x46, 0xc6, 0x00, 0x56, 0x5a, 0x94, 0xd2, 0xa3, - 0xd1, 0xd6, 0xb5, 0x47, 0xb4, 0x75, 0x75, 0xa3, 0x00, 0xe7, 0xa7, 0x67, 0xf3, 0xfb, 0x76, 0xe1, - 0x2a, 0x7b, 0xff, 0x9b, 0x15, 0xd4, 0xd5, 0xb3, 0xd3, 0xc5, 0x23, 0x75, 0xe8, 0x14, 0xa8, 0x2a, - 0x09, 0xe6, 0xd0, 0x87, 0x88, 0x16, 0x8c, 0xb7, 0x0c, 0x44, 0x74, 0x0c, 0x30, 0xb2, 0x00, 0x4a, - 0x13, 0xe4, 0xd6, 0x29, 0x87, 0x49, 0x5c, 0xbd, 0x70, 0xed, 0x9e, 0x49, 0x44, 0xfd, 0x08, 0x70, - 0x02, 0x4e, 0x95, 0xd2, 0x6f, 0x8d, 0x23, 0xc0, 0x09, 0x3c, 0xad, 0xf2, 0x73, 0x9f, 0x88, 0x8a, - 0x06, 0x94, 0x25, 0x14, 0x84, 0x46, 0x06, 0xc8, 0xac, 0x01, 0xef, 0x39, 0xb7, 0x52, 0x0b, 0x61, - 0xdd, 0xe6, 0x48, 0x8e, 0x00, 0x55, 0xc1, 0x6d, 0xac, 0xeb, 0xfe, 0xc1, 0xca, 0xe1, 0x41, 0xce, - 0x12, 0xf6, 0x8e, 0xa3, 0x8f, 0xcb, 0x9b, 0xf1, 0x78, 0x23, 0xb9, 0xdf, 0x1e, 0x5b, 0xd7, 0x3a, - 0x3c, 0x27, 0x0c, 0xd0, 0x0e, 0xdf, 0x8a, 0x4e, 0x5a, 0x91, 0x88, 0x89, 0x1e, 0x90, 0xd1, 0x00, - 0x82, 0x12, 0x04, 0xf4, 0xc8, 0xc0, 0x45, 0x1f, 0x4c, 0x64, 0x3a, 0x44, 0xad, 0x5b, 0xd1, 0xbd, - 0xbd, 0x2c, 0xf4, 0xae, 0xd5, 0xfe, 0xb5, 0x66, 0x99, 0x56, 0x74, 0x9f, 0x6a, 0xf7, 0x6a, 0x0a, - 0x59, 0x91, 0xdd, 0xef, 0x8c, 0xf7, 0x6a, 0x0a, 0x56, 0x15, 0x9e, 0x08, 0x5a, 0x10, 0xe1, 0x0c, - 0x08, 0x8e, 0x06, 0x84, 0x63, 0x1a, 0xac, 0x0b, 0x1a, 0xb8, 0xf3, 0xde, 0x28, 0x34, 0x8a, 0x44, - 0xdb, 0x0a, 0x6f, 0x84, 0xa9, 0x08, 0x6f, 0x63, 0x51, 0xa7, 0x00, 0x55, 0xe9, 0xfd, 0xa5, 0xb1, - 0x45, 0x9d, 0x42, 0xd4, 0x88, 0x4f, 0x69, 0x4e, 0x31, 0x88, 0x04, 0x29, 0x31, 0x04, 0xe1, 0x19, - 0xcf, 0xe9, 0xa8, 0x00, 0x0c, 0x18, 0x59, 0x24, 0x3a, 0x2a, 0x46, 0x5a, 0xf1, 0x8d, 0x20, 0x55, - 0xf1, 0x6d, 0x30, 0x8d, 0x72, 0xbc, 0x8d, 0xf0, 0xbe, 0x34, 0xc6, 0x34, 0x4a, 0xf6, 0xb6, 0xa2, - 0x0b, 0xce, 0x49, 0x6f, 0x19, 0x81, 0xa4, 0xd0, 0x83, 0x90, 0x39, 0x8c, 0x30, 0xc2, 0x81, 0xb4, - 0xdc, 0x90, 0x80, 0xdc, 0x3b, 0xaa, 0x5b, 0x4c, 0x83, 0xa4, 0xaf, 0x15, 0xdc, 0xc7, 0xdb, 0xdc, - 0x6f, 0x8c, 0xa9, 0x88, 0xed, 0x2f, 0x8f, 0x73, 0xbf, 0x31, 0xa0, 0x26, 0xda, 0x4b, 0xc1, 0x62, - 0x22, 0x1e, 0x9c, 0x31, 0x12, 0x44, 0x22, 0x0a, 0x50, 0x28, 0x0a, 0x5a, 0x50, 0xc4, 0x20, 0xa5, - 0x23, 0xd2, 0xb4, 0x19, 0xd7, 0x00, 0x4d, 0x11, 0xd9, 0x27, 0xdb, 0xe3, 0x3f, 0x86, 0x52, 0x05, - 0xf6, 0x57, 0xc6, 0xc7, 0x7f, 0x8c, 0xa5, 0x11, 0x97, 0x16, 0x44, 0x6b, 0x1b, 0x11, 0x34, 0xf5, - 0x04, 0x84, 0x37, 0x01, 0x30, 0x79, 0x0b, 0x8e, 0x05, 0x92, 0x90, 0x28, 0x61, 0xb4, 0x6f, 0x13, - 0xd1, 0x01, 0x98, 0x2a, 0xac, 0x4d, 0xb6, 0x15, 0xe2, 0x41, 0xdc, 0xc7, 0x75, 0x8e, 0x5e, 0x4a, - 0x79, 0x21, 0xfb, 0xc1, 0xa5, 0xdf, 0x48, 0xec, 0x77, 0xc7, 0xd9, 0xd6, 0x66, 0x46, 0x53, 0xcb, - 0x80, 0x32, 0xa3, 0x13, 0x02, 0xca, 0x64, 0x9d, 0xd4, 0x16, 0x5c, 0xca, 0x16, 0xd3, 0xc8, 0x7c, - 0xd8, 0x64, 0x04, 0x26, 0x59, 0x22, 0x49, 0x1b, 0x4e, 0x04, 0x6d, 0xb3, 0xad, 0x47, 0xda, 0xb5, - 0x6a, 0x6d, 0xe3, 0xa1, 0xbc, 0x52, 0x2b, 0xbb, 0x8d, 0x39, 0xd8, 0x01, 0xb1, 0x08, 0xf0, 0xf7, - 0xc6, 0xe6, 0x60, 0x07, 0xbe, 0x2a, 0xc5, 0xa4, 0x82, 0xa0, 0xce, 0x29, 0x88, 0x54, 0x91, 0x5a, - 0x17, 0x41, 0xae, 0x18, 0x30, 0x27, 0x1c, 0x41, 0xc9, 0x78, 0x20, 0xa9, 0x35, 0x07, 0x53, 0xe0, - 0x8a, 0x28, 0x37, 0xc1, 0xd6, 0x0e, 0x64, 0x55, 0x9e, 0xbf, 0x3f, 0x0e, 0xb6, 0x76, 0x40, 0x6b, - 0xdd, 0x1e, 0xe3, 0xdc, 0x2b, 0x14, 0xe0, 0x4b, 0x91, 0x83, 0x78, 0x0f, 0x8e, 0xf1, 0x04, 0xca, - 0x20, 0x75, 0x56, 0x4b, 0x4c, 0x2e, 0xb5, 0xc1, 0xd6, 0x14, 0xb6, 0x2a, 0xd9, 0xef, 0x9b, 0xbf, - 0x74, 0xeb, 0x6e, 0xfd, 0xc1, 0x32, 0x1e, 0xae, 0x17, 0x7f, 0x50, 0xa1, 0x3c, 0x72, 0x76, 0xba, - 0xf8, 0xb6, 0xfa, 0xe7, 0xea, 0x6f, 0xeb, 0x9f, 0x2f, 0x5d, 0x09, 0x4a, 0x5a, 0x45, 0x82, 0x85, - 0xe4, 0x04, 0x82, 0x60, 0x42, 0x81, 0xe5, 0x31, 0x01, 0x8f, 0x8e, 0xcb, 0x24, 0x78, 0xb2, 0xc4, - 0x74, 0x1c, 0xee, 0x8b, 0x5b, 0x87, 0xfb, 0x70, 0x9d, 0x9f, 0x63, 0xa9, 0xe5, 0x61, 0x3a, 0xc6, - 0x93, 0xf5, 0xf1, 0x0d, 0xbf, 0xbe, 0x71, 0x1c, 0xf7, 0x42, 0xbc, 0xbe, 0x6a, 0x37, 0xe5, 0x38, - 0x62, 0x58, 0xf4, 0x1c, 0x6e, 0x7f, 0x30, 0xe4, 0xc1, 0xed, 0x8e, 0xe4, 0xc1, 0x97, 0xae, 0x68, - 0x83, 0x56, 0x50, 0xe5, 0x80, 0x48, 0x6e, 0x40, 0x30, 0x95, 0xc0, 0xe6, 0xff, 0x42, 0xce, 0x88, - 0xb5, 0x49, 0x26, 0xa3, 0x4a, 0x4c, 0xdc, 0x5f, 0xe8, 0x91, 0x78, 0x7d, 0x55, 0xf7, 0xe3, 0x5a, - 0x5e, 0xe5, 0x68, 0xfe, 0xb2, 0x9b, 0xf1, 0x64, 0x6f, 0xb9, 0x6a, 0x8b, 0x5a, 0x15, 0xc9, 0xc5, - 0x6e, 0x6d, 0xee, 0x66, 0x3c, 0x81, 0xe5, 0xaa, 0xad, 0x6d, 0x35, 0xd4, 0x85, 0xd6, 0xde, 0x78, - 0x15, 0x81, 0x84, 0x6c, 0x0c, 0x9d, 0xf7, 0x60, 0xa9, 0x48, 0xa0, 0x38, 0x21, 0x8e, 0x53, 0x8f, - 0xca, 0xe4, 0xa8, 0xf7, 0xa5, 0x37, 0xe3, 0xc9, 0xa3, 0xab, 0xa6, 0xc2, 0x55, 0x28, 0x9e, 0xcc, - 0x5f, 0x3e, 0xa0, 0x78, 0xeb, 0x78, 0xb9, 0x8e, 0x8b, 0x3f, 0x53, 0x48, 0x7e, 0xdb, 0xd9, 0xe9, - 0xe2, 0x9b, 0xca, 0x88, 0x2e, 0xc9, 0x32, 0xe2, 0xd2, 0x15, 0x1e, 0xb4, 0x4b, 0x2a, 0x87, 0xd6, - 0x4e, 0x66, 0x87, 0x6e, 0x10, 0x1c, 0x73, 0x0a, 0x7c, 0x30, 0x8a, 0x05, 0x2d, 0x74, 0x20, 0xd9, - 0xbc, 0xdc, 0xd1, 0xa5, 0xf9, 0x54, 0x99, 0xba, 0x65, 0x73, 0x3f, 0x1e, 0xc6, 0x63, 0x3c, 0xa8, - 0x6c, 0xfe, 0xd9, 0x09, 0x36, 0x9b, 0x01, 0x0d, 0x9b, 0x84, 0x0a, 0xa4, 0x54, 0xc8, 0x7c, 0x02, - 0x72, 0x54, 0x63, 0x18, 0xa0, 0x91, 0x12, 0xb4, 0x43, 0x12, 0x92, 0x17, 0xd2, 0x3b, 0xbe, 0x61, - 0xf3, 0xed, 0x75, 0xea, 0x80, 0xcd, 0x96, 0x62, 0x65, 0xf3, 0xcf, 0x4d, 0xb0, 0xd9, 0x92, 0x6c, - 0xd8, 0xd4, 0xcc, 0x10, 0x82, 0x89, 0x40, 0xd4, 0x3c, 0x82, 0x10, 0x2e, 0xdb, 0x2c, 0x69, 0x21, - 0x92, 0x24, 0x92, 0x0d, 0x28, 0x48, 0xa1, 0x79, 0x47, 0x97, 0x66, 0x65, 0xf3, 0xc6, 0xfc, 0xce, - 0x86, 0xe8, 0x12, 0xf1, 0x64, 0xcf, 0xe7, 0xff, 0x29, 0x8c, 0xbe, 0xa0, 0x50, 0x7d, 0xf0, 0xec, - 0x74, 0xf1, 0xcd, 0x65, 0x48, 0xa6, 0x9a, 0x87, 0x40, 0x1e, 0xd2, 0xb0, 0x6a, 0x84, 0x64, 0x8c, - 0x08, 0x05, 0x82, 0x04, 0x07, 0xc2, 0xb2, 0x12, 0xbb, 0x59, 0x30, 0x8c, 0x46, 0x1a, 0xa4, 0x42, - 0x93, 0xd2, 0x86, 0xec, 0xa3, 0x88, 0x27, 0x0f, 0x23, 0x56, 0x25, 0xfa, 0xd0, 0xfc, 0xae, 0x11, - 0xd9, 0xca, 0xed, 0x9f, 0xef, 0xd6, 0x08, 0x46, 0x74, 0x5b, 0xb1, 0x46, 0x8a, 0x89, 0x49, 0x03, - 0x84, 0x59, 0x01, 0xc2, 0x23, 0x01, 0x17, 0x2d, 0x05, 0xa5, 0x95, 0x70, 0xca, 0x1b, 0x65, 0x69, - 0x36, 0x86, 0x97, 0x7a, 0x84, 0x2b, 0xc3, 0x3f, 0x32, 0x9b, 0xdf, 0xd3, 0x92, 0xce, 0x6a, 0xde, - 0xda, 0xe4, 0xca, 0xf5, 0x0b, 0xbb, 0x35, 0x92, 0x96, 0x7a, 0x1e, 0xd6, 0x1a, 0xe2, 0x86, 0x73, - 0x67, 0x9d, 0xb7, 0xc2, 0x69, 0xc8, 0xa6, 0x17, 0x04, 0xca, 0x08, 0x46, 0xea, 0x00, 0xde, 0x2b, - 0x92, 0x22, 0x2a, 0x64, 0x24, 0x03, 0xb8, 0xb3, 0x02, 0xc8, 0x0b, 0x34, 0xf6, 0xb7, 0x70, 0xff, - 0xe3, 0xb3, 0xf9, 0xbd, 0x93, 0x18, 0xea, 0x16, 0x7c, 0x4d, 0xb7, 0x5c, 0x39, 0x09, 0xa2, 0xdd, - 0x06, 0x41, 0xb5, 0x64, 0x81, 0x82, 0x66, 0x86, 0x81, 0x08, 0xd1, 0x00, 0xea, 0x40, 0x21, 0x2a, - 0xa5, 0x22, 0xb5, 0x3a, 0xd0, 0x90, 0xc5, 0x7e, 0xd7, 0x08, 0x45, 0xdd, 0x8a, 0x9f, 0x18, 0xc0, - 0xd8, 0xda, 0x99, 0xb2, 0x17, 0xf3, 0x5d, 0x30, 0xb6, 0x26, 0xa6, 0x6e, 0x86, 0xb7, 0xd4, 0x30, - 0x99, 0x12, 0x38, 0xce, 0x04, 0x08, 0x6e, 0x19, 0x58, 0x12, 0x13, 0x60, 0x52, 0xc2, 0xeb, 0xc0, - 0xad, 0x96, 0xd9, 0xac, 0xdc, 0xbd, 0x85, 0xb1, 0x59, 0xa1, 0x6c, 0x47, 0x0e, 0x27, 0xa6, 0x71, - 0xd4, 0xfd, 0xf8, 0xda, 0x6e, 0x34, 0x31, 0x0d, 0xa4, 0x3d, 0x07, 0x39, 0x55, 0x72, 0x4e, 0x82, - 0x30, 0x26, 0x82, 0x48, 0x9c, 0x83, 0xe3, 0x49, 0x81, 0x62, 0xcc, 0x04, 0x9d, 0xbc, 0x0e, 0xa9, - 0x54, 0x92, 0x27, 0x90, 0xd4, 0x2d, 0xd9, 0x9e, 0xc1, 0xe5, 0xe1, 0x3a, 0x1e, 0x1f, 0xb6, 0xc7, - 0xfe, 0x45, 0x13, 0x67, 0xb0, 0x1d, 0xd1, 0x1e, 0x06, 0xb4, 0x5c, 0x7a, 0x1e, 0x20, 0x94, 0x6a, - 0x23, 0x8b, 0x1a, 0x9c, 0xe0, 0x04, 0x0c, 0xb7, 0x0e, 0xb9, 0xd1, 0x26, 0xd9, 0xb8, 0x3d, 0x0c, - 0xcd, 0xdc, 0xc2, 0xff, 0xcd, 0xed, 0x19, 0x6c, 0x89, 0x56, 0xc6, 0xbf, 0x6e, 0xea, 0x0c, 0xb6, - 0x54, 0x1b, 0x96, 0x4d, 0xb4, 0x84, 0x2b, 0xc9, 0xc1, 0x59, 0xef, 0x40, 0x04, 0xe5, 0x00, 0x19, - 0xd1, 0x10, 0xb5, 0x67, 0x54, 0x07, 0xa9, 0x3d, 0x65, 0xdb, 0xa3, 0xd0, 0x4c, 0xae, 0xcc, 0x86, - 0xf9, 0x4b, 0x1a, 0xba, 0xcf, 0x98, 0xe6, 0xd4, 0xbf, 0xb8, 0x50, 0xfc, 0xc6, 0xb3, 0xd3, 0x85, - 0x2e, 0x7f, 0xcc, 0x14, 0x9f, 0x31, 0x9b, 0xf3, 0x6e, 0xb2, 0x61, 0x73, 0x06, 0xac, 0x52, 0x0e, - 0x84, 0x34, 0x1e, 0x30, 0x6b, 0xbd, 0x92, 0x5c, 0x25, 0x2e, 0x94, 0xd5, 0x25, 0x9c, 0x7d, 0x51, - 0xa1, 0xf5, 0x4e, 0x53, 0x8f, 0xfa, 0xfe, 0xfc, 0xa5, 0x1d, 0x2a, 0x95, 0xb1, 0x97, 0x14, 0x32, - 0xdf, 0x74, 0x76, 0xba, 0x30, 0xe5, 0xaf, 0x2d, 0x99, 0x86, 0x27, 0xab, 0x14, 0x37, 0x5a, 0x79, - 0x08, 0x94, 0xa7, 0x1c, 0x14, 0x1a, 0x70, 0x31, 0x7a, 0xd0, 0x29, 0xd2, 0x44, 0x42, 0xb0, 0xd6, - 0x64, 0x85, 0xfa, 0xba, 0x96, 0x4e, 0x65, 0xe7, 0xfa, 0xfc, 0x52, 0x43, 0xe8, 0x00, 0x5d, 0x3c, - 0x68, 0x38, 0x7a, 0x69, 0x21, 0xf5, 0x2d, 0x67, 0xa7, 0x8b, 0x6f, 0x28, 0x7f, 0xcf, 0xa4, 0xea, - 0xdf, 0x5b, 0xed, 0xd5, 0x82, 0xc6, 0x68, 0x02, 0x08, 0x65, 0x38, 0x08, 0xe7, 0x02, 0x18, 0xc9, - 0x28, 0x04, 0x23, 0x38, 0x26, 0x87, 0x46, 0x96, 0x62, 0xcc, 0x4b, 0x0a, 0xb1, 0x77, 0x95, 0x99, - 0x03, 0x3f, 0xd8, 0x90, 0xab, 0xac, 0xdd, 0x31, 0xe1, 0x20, 0x1a, 0x7a, 0x0d, 0x77, 0x4c, 0x58, - 0xad, 0x38, 0x25, 0xc0, 0x24, 0x5a, 0x10, 0x26, 0x09, 0x70, 0x1a, 0x39, 0xa0, 0x8a, 0x8a, 0x12, - 0x2f, 0x62, 0x10, 0x72, 0xe3, 0x20, 0x2a, 0xc1, 0xca, 0xe0, 0xd6, 0x68, 0x1e, 0xac, 0x3c, 0x1e, - 0x74, 0xf6, 0xf3, 0xd2, 0x84, 0xd1, 0x2c, 0x63, 0xba, 0xbb, 0xea, 0x9d, 0x71, 0x82, 0xa5, 0x04, - 0x49, 0x27, 0x09, 0x22, 0x10, 0x02, 0x68, 0x18, 0x07, 0x43, 0x88, 0x89, 0xce, 0x28, 0x27, 0x50, - 0x6d, 0x34, 0xe5, 0x5d, 0x79, 0xf6, 0x66, 0x6b, 0xb7, 0xbc, 0xf6, 0xac, 0xe5, 0xcb, 0x26, 0x78, - 0xed, 0xdb, 0xc9, 0x18, 0x6c, 0x0a, 0x56, 0x23, 0x58, 0x47, 0x18, 0x08, 0x47, 0x2d, 0xa0, 0x54, - 0x02, 0x74, 0x94, 0xde, 0x20, 0x93, 0x31, 0x48, 0xdc, 0xf0, 0xda, 0x35, 0x91, 0xdb, 0x83, 0xd8, - 0xb7, 0x8d, 0x2f, 0x9f, 0x38, 0x88, 0x03, 0xab, 0x98, 0x48, 0x20, 0x96, 0x46, 0x06, 0x46, 0x2a, - 0x0e, 0xc2, 0x72, 0x05, 0x4e, 0xc5, 0x08, 0x5a, 0x68, 0x9f, 0xbc, 0x48, 0xdc, 0x39, 0xb1, 0x39, - 0x88, 0x3d, 0x83, 0xb8, 0x65, 0xf3, 0x30, 0xae, 0x6f, 0xad, 0x8e, 0x9f, 0xa9, 0x6c, 0xde, 0x39, - 0xc1, 0x66, 0x33, 0xa0, 0xd5, 0x21, 0x95, 0x4c, 0x34, 0x14, 0x21, 0x61, 0x66, 0x53, 0x4b, 0x0d, - 0x36, 0xe9, 0x04, 0x94, 0x08, 0x15, 0x09, 0x31, 0x52, 0x70, 0xb7, 0x61, 0xf3, 0x3d, 0x75, 0xea, - 0x80, 0xcd, 0x96, 0x62, 0x65, 0xf3, 0xae, 0x09, 0x36, 0x5b, 0x92, 0xad, 0x1a, 0xb9, 0x40, 0x92, - 0x65, 0x14, 0x4c, 0x30, 0x0e, 0x84, 0x12, 0x1e, 0xd0, 0x32, 0x09, 0xc2, 0xa1, 0x37, 0xc9, 0x30, - 0x69, 0xd2, 0xd6, 0xe7, 0x37, 0x34, 0x47, 0x2e, 0xf0, 0xe8, 0x78, 0xf5, 0xa1, 0x0f, 0xf7, 0x85, - 0x7a, 0xf7, 0x84, 0x0b, 0x2c, 0xc3, 0x06, 0xa2, 0x65, 0x51, 0xd8, 0x60, 0x3d, 0xcb, 0x3e, 0x8f, - 0x81, 0xa0, 0x4c, 0x80, 0x75, 0x16, 0xc1, 0x26, 0x19, 0x9c, 0xb1, 0x06, 0xbd, 0xb7, 0x1b, 0x17, - 0xf8, 0x78, 0x5e, 0x60, 0x87, 0x0b, 0xec, 0x63, 0xa8, 0xfc, 0x2f, 0x26, 0x7c, 0x4f, 0x1f, 0x44, - 0xb3, 0x0b, 0x48, 0x58, 0xb4, 0xc9, 0x7b, 0x40, 0x42, 0x2d, 0x08, 0xed, 0x1d, 0x38, 0xc2, 0x18, - 0x20, 0x27, 0x32, 0x48, 0x47, 0x31, 0x2a, 0xb9, 0x71, 0x81, 0x5d, 0x14, 0x75, 0x2b, 0x3e, 0x38, - 0xbf, 0xa3, 0x87, 0xa2, 0xec, 0xc0, 0x3d, 0xdd, 0xba, 0x60, 0x8f, 0x78, 0xe5, 0xdc, 0x4a, 0x1d, - 0xa2, 0xe6, 0x08, 0xc1, 0x04, 0x06, 0x42, 0xa1, 0x05, 0x64, 0x41, 0x01, 0xb5, 0x92, 0xa8, 0xe0, - 0xa9, 0xf7, 0x31, 0xd3, 0x7c, 0xf1, 0x96, 0xe6, 0x34, 0xcb, 0x27, 0xd1, 0xdf, 0x38, 0x5e, 0xae, - 0x1b, 0xaa, 0xf7, 0xee, 0x64, 0xb9, 0x1d, 0xd7, 0x2a, 0x9b, 0x4f, 0x2e, 0xd0, 0x9c, 0xb1, 0x2b, - 0x1d, 0x40, 0x90, 0x44, 0xc1, 0x52, 0x27, 0x21, 0x31, 0x26, 0x09, 0x47, 0x1d, 0x83, 0x63, 0x7d, - 0x96, 0x9f, 0x68, 0x16, 0x28, 0x30, 0x7e, 0x72, 0xeb, 0x6d, 0x07, 0x30, 0xea, 0xd6, 0xbf, 0x62, - 0xc2, 0xdb, 0x0e, 0x70, 0xb4, 0x06, 0xc5, 0x9a, 0x20, 0xb5, 0xa4, 0xa0, 0x90, 0x53, 0x10, 0x5a, - 0x20, 0x98, 0x18, 0x13, 0x68, 0x43, 0x83, 0xb1, 0x51, 0x68, 0x55, 0xea, 0x96, 0x77, 0x8f, 0x81, - 0x0c, 0x63, 0xcf, 0x0a, 0xe4, 0x16, 0xa6, 0xba, 0x15, 0xf7, 0x4d, 0xf8, 0xbd, 0x0a, 0xe1, 0x16, - 0xa6, 0x66, 0x17, 0xb8, 0x8b, 0x48, 0x51, 0x26, 0xe0, 0x32, 0xc4, 0x9c, 0x72, 0x0a, 0x30, 0x3a, - 0x20, 0xb0, 0x90, 0x9c, 0x33, 0x06, 0x13, 0x65, 0x5b, 0x77, 0x5b, 0x88, 0x3f, 0x85, 0x69, 0x10, - 0x7b, 0x6e, 0xc9, 0x56, 0xd6, 0x5f, 0x39, 0x61, 0x46, 0xb7, 0x74, 0x1b, 0xae, 0x89, 0x34, 0x42, - 0xaa, 0x9c, 0xe6, 0xba, 0x80, 0x20, 0xa2, 0x48, 0x60, 0x98, 0xa4, 0x60, 0xa2, 0x34, 0x34, 0x10, - 0xa6, 0x49, 0x39, 0x77, 0x97, 0x7a, 0x84, 0x87, 0x1e, 0xaa, 0xa1, 0x5c, 0xa8, 0x5e, 0x9e, 0xf0, - 0x50, 0x0d, 0xd5, 0x4a, 0x51, 0x31, 0x54, 0x91, 0x29, 0x05, 0xce, 0x79, 0x02, 0x42, 0xb2, 0x1c, - 0xe6, 0xa5, 0x00, 0x24, 0xfb, 0x29, 0x96, 0x3c, 0xa6, 0xb4, 0xf5, 0x50, 0x95, 0xe2, 0xc0, 0x9c, - 0x9d, 0x44, 0x7f, 0x1c, 0xd7, 0x8d, 0x47, 0x7c, 0xd5, 0x84, 0x39, 0x6b, 0x06, 0x34, 0x7b, 0x4b, - 0x43, 0x4a, 0x4a, 0x90, 0x1c, 0x54, 0x3b, 0x03, 0xc2, 0x19, 0x0e, 0x4e, 0x4a, 0x04, 0x25, 0x3c, - 0xca, 0xe8, 0x6c, 0x52, 0x25, 0x94, 0xa9, 0xe6, 0xec, 0x89, 0x3a, 0x75, 0x60, 0xce, 0x5a, 0x8a, - 0x95, 0xc5, 0x57, 0x4f, 0x98, 0xb3, 0x96, 0x64, 0xc3, 0x64, 0xa4, 0x4c, 0x13, 0x94, 0x06, 0x18, - 0xa5, 0x0a, 0x84, 0x63, 0x0e, 0x8c, 0x75, 0x04, 0x9c, 0x33, 0xd6, 0x6a, 0xaa, 0x1c, 0x96, 0x4b, - 0x00, 0x77, 0x74, 0x69, 0x56, 0x36, 0x3f, 0xb2, 0x51, 0xa3, 0x1b, 0xd8, 0x94, 0xc2, 0x2b, 0xa3, - 0xaf, 0xeb, 0x14, 0x0f, 0x5b, 0x35, 0xba, 0x81, 0x4d, 0x3d, 0xbc, 0x0d, 0x69, 0x78, 0x24, 0xe8, - 0x03, 0x07, 0xe5, 0x34, 0xcd, 0xa1, 0x06, 0x03, 0xab, 0x15, 0x02, 0x5a, 0xc9, 0x19, 0x37, 0x82, - 0x39, 0x2a, 0x3a, 0x39, 0x7a, 0x25, 0xff, 0x24, 0xd6, 0xa2, 0x78, 0xe1, 0xf9, 0xa3, 0xb3, 0x8d, - 0x3e, 0x6d, 0xe9, 0x57, 0xb6, 0xaf, 0x74, 0xea, 0x72, 0x77, 0x8d, 0x00, 0xb4, 0xee, 0x8a, 0x92, - 0x98, 0xa4, 0x31, 0xa0, 0x75, 0x56, 0x64, 0xea, 0x25, 0x18, 0xcd, 0x02, 0x24, 0x1d, 0x82, 0x0c, - 0xdc, 0x3b, 0xaa, 0x58, 0x07, 0xc1, 0xa5, 0x1e, 0x82, 0x61, 0x20, 0x97, 0x11, 0x14, 0xde, 0x5f, - 0x3f, 0x11, 0xc8, 0x65, 0xd2, 0x8d, 0x5b, 0x4e, 0x0a, 0x95, 0xb7, 0x1c, 0x42, 0x90, 0x2a, 0xdb, - 0x6e, 0x0d, 0x36, 0xc7, 0x21, 0xda, 0x51, 0xa1, 0x4a, 0x69, 0xc2, 0x6d, 0x03, 0xb9, 0x27, 0xf1, - 0xfa, 0x20, 0x90, 0xcb, 0x54, 0x2a, 0x87, 0x6f, 0x98, 0x08, 0xe4, 0x32, 0x99, 0x56, 0x73, 0xa3, - 0xa7, 0xd2, 0x28, 0x0b, 0x21, 0x91, 0xac, 0xb9, 0xc2, 0x80, 0x89, 0x84, 0x43, 0x70, 0xde, 0xa0, - 0x88, 0x36, 0x48, 0x81, 0x9b, 0x40, 0xee, 0x49, 0xbc, 0x3e, 0xf2, 0x4f, 0x37, 0x97, 0xc7, 0xeb, - 0x1b, 0x78, 0xb0, 0x77, 0xb2, 0x5c, 0xc7, 0x46, 0x7d, 0xdf, 0x38, 0xe1, 0x9f, 0x9a, 0x61, 0x50, - 0x86, 0x35, 0x3c, 0x06, 0x46, 0xa4, 0x4c, 0x2e, 0x00, 0x63, 0xac, 0xd4, 0x39, 0x29, 0x18, 0xcd, - 0x15, 0x18, 0x12, 0x23, 0x32, 0xa9, 0x8c, 0xd2, 0x72, 0xe3, 0x9f, 0xde, 0x57, 0x17, 0x78, 0x22, - 0xcf, 0x1f, 0x1a, 0xeb, 0x3e, 0x86, 0xca, 0xf7, 0x9b, 0x26, 0x8c, 0x75, 0x1f, 0x44, 0xb3, 0x03, - 0x52, 0x78, 0x91, 0xb3, 0x61, 0xa0, 0xca, 0x26, 0x10, 0x2a, 0x30, 0x30, 0x81, 0x4b, 0x60, 0x41, - 0x50, 0x21, 0xa5, 0x74, 0x26, 0x99, 0x8d, 0xb1, 0xee, 0xa2, 0x18, 0x86, 0x7c, 0x37, 0x57, 0x07, - 0xeb, 0xbd, 0x93, 0xa7, 0xb1, 0xcd, 0xce, 0xde, 0x3c, 0x61, 0xab, 0xf2, 0x18, 0x28, 0x63, 0x5a, - 0x39, 0xeb, 0xa4, 0xad, 0xf0, 0x39, 0x1a, 0xa1, 0xac, 0x26, 0x45, 0x96, 0x33, 0x09, 0xc1, 0xc8, - 0xe8, 0xa8, 0xe7, 0x1c, 0x83, 0xde, 0xe8, 0xd4, 0xfb, 0x56, 0x07, 0xeb, 0x27, 0xf2, 0xe4, 0xb2, - 0x01, 0x3f, 0x30, 0xbf, 0x7b, 0x4c, 0xb9, 0x32, 0xff, 0xf5, 0xdd, 0x2f, 0xe9, 0x63, 0xd2, 0x6d, - 0x72, 0xca, 0x19, 0xd1, 0xcc, 0x29, 0x50, 0x22, 0xa4, 0x6c, 0x2c, 0x35, 0x20, 0xe1, 0x04, 0x50, - 0x58, 0x63, 0x9c, 0xc8, 0x11, 0x42, 0xba, 0x7a, 0xe1, 0xda, 0xcb, 0xfa, 0xb4, 0x87, 0x6c, 0xdf, - 0x8a, 0xae, 0x57, 0xf0, 0x7a, 0xcb, 0x04, 0xdb, 0xb7, 0xa2, 0xeb, 0xd7, 0xb9, 0x8c, 0x4e, 0xd6, - 0x47, 0x8b, 0x40, 0x08, 0xd1, 0x20, 0x8c, 0x77, 0x60, 0xa5, 0x63, 0xa0, 0x8c, 0x75, 0x2a, 0x51, - 0x2a, 0x53, 0xda, 0x46, 0xba, 0x4f, 0x45, 0xd7, 0xa9, 0x6e, 0x6d, 0xd9, 0xee, 0x50, 0xae, 0x6c, - 0xbf, 0x75, 0x82, 0xed, 0x0e, 0xe9, 0x86, 0xed, 0x40, 0x95, 0x20, 0x01, 0x3d, 0xf8, 0x14, 0x45, - 0x36, 0x28, 0x2e, 0x07, 0xd8, 0x14, 0xb4, 0x8c, 0xca, 0x06, 0x4a, 0xa5, 0xa5, 0x6e, 0xc3, 0xf6, - 0x86, 0x76, 0x65, 0xfb, 0x63, 0xb3, 0xf9, 0xa2, 0xa1, 0xbe, 0x8e, 0x87, 0x78, 0xb8, 0xde, 0x5b, - 0xdd, 0x3a, 0x8c, 0x4d, 0x5c, 0x06, 0x9d, 0x92, 0xec, 0xa2, 0x21, 0x5f, 0x47, 0x41, 0x19, 0xb5, - 0x89, 0xb8, 0x91, 0x68, 0x1f, 0x3c, 0x30, 0x6f, 0x73, 0x32, 0x2e, 0x11, 0x1c, 0xe7, 0x06, 0x9c, - 0xd1, 0x89, 0x30, 0x34, 0x24, 0x09, 0xd5, 0x31, 0x27, 0x2f, 0x2f, 0x38, 0xde, 0x5b, 0xd6, 0x79, - 0x2c, 0x2f, 0x53, 0x76, 0xe1, 0x13, 0xdb, 0x13, 0xd8, 0x03, 0x52, 0x37, 0xe2, 0xfe, 0x4e, 0x05, - 0xf6, 0x9e, 0x29, 0x24, 0x6d, 0x7c, 0x90, 0x04, 0x2a, 0x11, 0x04, 0x30, 0x6b, 0x3d, 0x64, 0x53, - 0x0a, 0x2e, 0xd2, 0x12, 0x26, 0x12, 0x66, 0x78, 0xe0, 0xdc, 0x76, 0x2d, 0xdb, 0x9d, 0x43, 0x28, - 0x23, 0x6b, 0x70, 0xb2, 0x5e, 0x1d, 0xc7, 0xb0, 0xb7, 0x72, 0x1f, 0x8c, 0x7e, 0x5d, 0x77, 0xe5, - 0x81, 0x09, 0x6b, 0x50, 0x87, 0x41, 0x1d, 0xd6, 0x6e, 0x8b, 0x8d, 0x49, 0x44, 0xe1, 0xc0, 0xa7, - 0x1c, 0x27, 0xfa, 0xe8, 0x01, 0x7d, 0x0e, 0x99, 0x93, 0xb0, 0x5a, 0x5a, 0x8e, 0x5c, 0xb3, 0x0d, - 0x86, 0x27, 0xca, 0x02, 0x8f, 0x95, 0xf9, 0x43, 0x6b, 0xd0, 0xc7, 0x50, 0x37, 0x84, 0x4c, 0x58, - 0x83, 0x3e, 0x88, 0x66, 0x47, 0xa8, 0xe1, 0xc1, 0x18, 0x63, 0x8b, 0xa1, 0x05, 0xc1, 0x8d, 0x03, - 0xb4, 0x79, 0x83, 0x8c, 0xb5, 0x4c, 0x46, 0x19, 0x99, 0xdf, 0x46, 0xab, 0x5d, 0x14, 0x9d, 0x82, - 0xcd, 0xea, 0x60, 0xdd, 0x7e, 0x5c, 0x3f, 0x79, 0x1a, 0x8f, 0xe2, 0x9e, 0x5b, 0x35, 0x7b, 0x41, - 0x7b, 0x30, 0xb6, 0xe3, 0xa0, 0x8c, 0x03, 0xb7, 0x6a, 0x37, 0xc3, 0x46, 0x96, 0x34, 0x06, 0x0d, - 0x34, 0x45, 0x9d, 0xf3, 0xf8, 0x04, 0xd6, 0xe6, 0x43, 0xc2, 0x89, 0x31, 0x54, 0x4b, 0xee, 0x2d, - 0x2d, 0x81, 0xdb, 0x76, 0x8d, 0x27, 0xf2, 0x12, 0x0f, 0xad, 0xd6, 0xdb, 0x82, 0xcd, 0x24, 0x8e, - 0xba, 0x1f, 0xac, 0x17, 0x42, 0x4e, 0x02, 0x69, 0xc3, 0x77, 0x47, 0x8d, 0x8e, 0x81, 0x81, 0x0c, - 0x3e, 0x8b, 0x85, 0x3a, 0xc0, 0x94, 0x6d, 0x46, 0x14, 0x96, 0x05, 0xeb, 0x2c, 0x2b, 0xb9, 0xda, - 0x62, 0x02, 0x49, 0xdd, 0x92, 0x4f, 0xef, 0x84, 0x52, 0x3f, 0x17, 0xf0, 0xce, 0x87, 0x96, 0x1d, - 0x50, 0xda, 0x9b, 0x3f, 0x22, 0x44, 0x23, 0x2d, 0x02, 0x75, 0x81, 0x82, 0x70, 0x9a, 0x81, 0x21, - 0x5c, 0x03, 0x71, 0x81, 0x69, 0xa6, 0x98, 0xa1, 0xac, 0x5b, 0xad, 0x9f, 0x82, 0x54, 0x3f, 0x15, - 0xfc, 0xd5, 0xd9, 0xfc, 0x8d, 0xd3, 0x90, 0x4e, 0x6e, 0xb8, 0x13, 0x7f, 0xbc, 0x2c, 0xd7, 0x5f, - 0xf7, 0xae, 0xef, 0x5f, 0x5f, 0x2f, 0x44, 0x81, 0xf7, 0xdd, 0x67, 0xa7, 0x8b, 0xa7, 0x7a, 0x93, - 0x3a, 0xf0, 0xba, 0x93, 0x20, 0x4f, 0xba, 0x74, 0x05, 0x53, 0xa4, 0x1c, 0xad, 0x06, 0x65, 0xb9, - 0x05, 0xa1, 0x78, 0x36, 0xeb, 0x9a, 0x82, 0x17, 0x22, 0x52, 0x2a, 0xb5, 0xd4, 0x5c, 0x77, 0xa0, - 0xbe, 0x6e, 0x02, 0xea, 0x13, 0x9d, 0x55, 0xdf, 0x9d, 0x17, 0xfd, 0xec, 0x6c, 0xfe, 0xea, 0x31, - 0xea, 0xe3, 0xe8, 0x57, 0xfb, 0x87, 0xcb, 0xef, 0x6f, 0x9c, 0x8e, 0xec, 0x7e, 0x16, 0x1a, 0xc3, - 0xdd, 0x8c, 0x6e, 0x5d, 0x70, 0x0c, 0xc9, 0xd3, 0x60, 0x80, 0xe9, 0xa4, 0x40, 0x04, 0xae, 0xc1, - 0x29, 0xaa, 0xc0, 0x06, 0xae, 0x98, 0xa0, 0x1e, 0x43, 0xc8, 0xd2, 0x7d, 0xe5, 0x10, 0xdf, 0xb5, - 0x76, 0x9d, 0xa2, 0x6d, 0x9f, 0x9f, 0xcd, 0x5f, 0x73, 0x1e, 0xb2, 0xaa, 0x73, 0xaa, 0xfb, 0x59, - 0xe8, 0x3c, 0x68, 0x6d, 0xa9, 0x50, 0x6b, 0x67, 0x9c, 0x74, 0xc0, 0x52, 0x30, 0x20, 0xbc, 0xf3, - 0xe0, 0x42, 0xf4, 0xe0, 0x12, 0x65, 0x4c, 0x29, 0xa5, 0x03, 0xcb, 0xae, 0xf1, 0xf2, 0x4e, 0x6c, - 0x55, 0xff, 0x7e, 0xe3, 0x36, 0xe0, 0xaa, 0x16, 0xea, 0x02, 0xee, 0xc9, 0xb3, 0xd3, 0xc5, 0x77, - 0x9c, 0x0f, 0xae, 0xd1, 0x45, 0x89, 0x02, 0x43, 0xf0, 0x11, 0xbc, 0x11, 0x14, 0x84, 0x09, 0x14, - 0x8c, 0x37, 0x14, 0xb8, 0xf6, 0x2a, 0x72, 0x6b, 0x90, 0xb3, 0xae, 0x80, 0x77, 0x83, 0xac, 0x1a, - 0xf9, 0x77, 0x67, 0x73, 0x38, 0x0f, 0xe4, 0x58, 0x2f, 0x4d, 0x01, 0x8c, 0x67, 0xa7, 0x8b, 0x0f, - 0xf4, 0xa6, 0x8e, 0x00, 0x4f, 0x68, 0x27, 0x8b, 0x9c, 0x05, 0x34, 0x01, 0x38, 0x2d, 0x46, 0x8e, - 0x1a, 0x30, 0x09, 0x3d, 0xb0, 0xc8, 0x39, 0x8b, 0xda, 0xc9, 0xe0, 0xba, 0xe0, 0xdf, 0xbc, 0x13, - 0xfc, 0x48, 0x47, 0x3f, 0x39, 0x9b, 0xdf, 0xd7, 0xe5, 0x03, 0x97, 0x01, 0xd7, 0xb8, 0xe7, 0x52, - 0x38, 0xaa, 0xfa, 0x69, 0xbb, 0xdf, 0x7a, 0xbb, 0xb0, 0xeb, 0x48, 0xc8, 0x23, 0xdb, 0xcf, 0x34, - 0x52, 0xfb, 0x24, 0x05, 0x01, 0xc5, 0x83, 0x00, 0x61, 0x5c, 0x00, 0xc7, 0xb4, 0x03, 0xe9, 0x3c, - 0x52, 0x65, 0x2c, 0x0d, 0xa5, 0x82, 0x7f, 0x4f, 0x67, 0x95, 0x07, 0xcb, 0x22, 0x0f, 0xa5, 0x70, - 0x54, 0xf4, 0xf2, 0x53, 0xb3, 0xf9, 0x2b, 0x77, 0xa1, 0xa9, 0x3a, 0xf9, 0x0d, 0xdd, 0xdb, 0x0b, - 0xbb, 0xe0, 0x34, 0xfa, 0xe8, 0x18, 0xe7, 0x5a, 0x6a, 0x07, 0x89, 0x33, 0x02, 0x42, 0x5b, 0x0f, - 0x8e, 0x63, 0x02, 0x86, 0xde, 0x10, 0xe3, 0x04, 0x23, 0x36, 0x87, 0x4b, 0xf7, 0x4e, 0xe2, 0xa9, - 0xba, 0xf8, 0x4b, 0xe7, 0x00, 0xaa, 0x7a, 0xf8, 0x8d, 0x9d, 0xfb, 0xa9, 0x3b, 0x01, 0x35, 0x3a, - 0x68, 0x94, 0xe3, 0x89, 0xbb, 0x9c, 0x51, 0x2b, 0x0d, 0x42, 0x69, 0x05, 0x0e, 0x9d, 0x00, 0xa4, - 0x3e, 0x79, 0x46, 0xb4, 0x37, 0xa9, 0xeb, 0xbd, 0xa7, 0x81, 0x55, 0xfd, 0xfb, 0x1b, 0xb3, 0xf9, - 0x9b, 0x77, 0x01, 0x1b, 0xeb, 0xde, 0x37, 0x15, 0x90, 0x1f, 0x38, 0x3b, 0x5d, 0x7c, 0x57, 0x6f, - 0x5a, 0x0f, 0xe4, 0x84, 0xde, 0x49, 0xef, 0x15, 0x4b, 0x3c, 0x42, 0x0c, 0x46, 0x83, 0xd0, 0x28, - 0xc1, 0x25, 0xce, 0x40, 0x9b, 0x44, 0x85, 0x61, 0x82, 0x69, 0x16, 0x3a, 0x80, 0x5f, 0x3f, 0x09, - 0x78, 0xa4, 0x73, 0x5f, 0x9c, 0xcd, 0x5f, 0xdb, 0x3b, 0x3b, 0x1f, 0x3e, 0x5c, 0x3f, 0x1d, 0xd7, - 0xdb, 0x8f, 0xf9, 0x55, 0xf3, 0xbe, 0xb9, 0x7b, 0xa5, 0xb3, 0x77, 0x60, 0xda, 0xf1, 0x83, 0xf2, - 0x99, 0xc1, 0x14, 0x9d, 0xb1, 0x0e, 0xb4, 0x4c, 0x14, 0x04, 0x43, 0x05, 0x96, 0x39, 0x06, 0x44, - 0xfb, 0xa8, 0x7d, 0x24, 0x8c, 0x63, 0xf9, 0x9e, 0xdf, 0x3d, 0x1d, 0xed, 0x52, 0xdd, 0x42, 0xda, - 0xaf, 0xcf, 0xe6, 0xaf, 0x3b, 0x1f, 0x5f, 0xd5, 0xc5, 0x6f, 0xe9, 0xde, 0x38, 0x38, 0x1f, 0x60, - 0x5b, 0x60, 0xb4, 0x8a, 0x4a, 0x85, 0x1e, 0x62, 0x72, 0x2c, 0x87, 0x4c, 0x14, 0x8c, 0x8d, 0x04, - 0x14, 0x53, 0xd2, 0x45, 0x2b, 0x90, 0xcb, 0x6c, 0xbd, 0x5f, 0x7d, 0x0e, 0xc2, 0xaa, 0x97, 0x5f, - 0xba, 0x2d, 0xc4, 0xaa, 0x9d, 0xdf, 0x5a, 0x20, 0x3e, 0x75, 0x76, 0xba, 0x78, 0xe2, 0x76, 0x10, - 0x1b, 0x1d, 0x45, 0x49, 0x55, 0x34, 0xac, 0xbc, 0xc7, 0x90, 0x20, 0x44, 0xf0, 0xe0, 0x90, 0x1b, - 0x90, 0x46, 0x10, 0x66, 0x02, 0xea, 0x18, 0x68, 0x47, 0xe4, 0xe7, 0x41, 0xad, 0x9a, 0xfa, 0x0f, - 0x66, 0xf3, 0x07, 0xce, 0x87, 0x3a, 0xd6, 0xd7, 0x6f, 0x2b, 0xb0, 0xfd, 0xd9, 0xe9, 0x62, 0xaf, - 0x37, 0x79, 0x02, 0xf6, 0x84, 0xd6, 0x1a, 0x8c, 0xdc, 0x53, 0x29, 0xc1, 0x59, 0xe9, 0x40, 0xa4, - 0x10, 0xc1, 0xda, 0x88, 0x80, 0x26, 0x62, 0x64, 0xda, 0x06, 0x2f, 0x7d, 0x87, 0x85, 0xb7, 0x9c, - 0xc3, 0xc2, 0x6d, 0xed, 0x65, 0x13, 0xcb, 0x67, 0xc2, 0x55, 0x6b, 0x1f, 0xdc, 0x65, 0x2f, 0x9b, - 0x70, 0x3e, 0x8f, 0xdc, 0xdc, 0x1d, 0x60, 0x46, 0xe4, 0xe8, 0x3d, 0x30, 0xae, 0x41, 0x30, 0x4a, - 0xc1, 0x19, 0x29, 0x80, 0x7a, 0x1a, 0xa2, 0xa5, 0x36, 0x39, 0x65, 0x07, 0xf6, 0xb2, 0x86, 0xf2, - 0x19, 0xc9, 0xa4, 0xbd, 0xec, 0xa2, 0xa9, 0x3a, 0xfa, 0xd0, 0x2e, 0x7b, 0xd9, 0x85, 0xd3, 0x46, - 0x8e, 0xd4, 0x48, 0xc9, 0x94, 0xcb, 0xfb, 0x66, 0x40, 0x50, 0x1d, 0x00, 0x99, 0x62, 0x10, 0xb5, - 0xf2, 0x81, 0x18, 0x29, 0x30, 0x0d, 0xed, 0xe5, 0x16, 0xcf, 0xb4, 0xbd, 0xec, 0x02, 0xaa, 0x1a, - 0xf9, 0xf0, 0x2e, 0x7b, 0xd9, 0x05, 0xd4, 0xe8, 0x22, 0x53, 0xcc, 0x06, 0x93, 0x28, 0x58, 0x1e, - 0x19, 0x08, 0x22, 0x09, 0xa0, 0x12, 0x08, 0xda, 0x12, 0xab, 0x09, 0xf5, 0x5e, 0x24, 0xb3, 0xc3, - 0x5e, 0x6e, 0x81, 0x4d, 0xdb, 0xcb, 0x2e, 0xb0, 0xb1, 0xfe, 0x3d, 0xb2, 0xcb, 0x5e, 0x76, 0x41, - 0x4e, 0x68, 0x9e, 0x0b, 0x91, 0x39, 0xcb, 0x14, 0x10, 0x95, 0x22, 0x88, 0x1c, 0x85, 0x63, 0x48, - 0x2e, 0xe7, 0x26, 0xde, 0xd1, 0xe0, 0x30, 0xf5, 0x0a, 0x4f, 0xaf, 0x9f, 0x04, 0x3c, 0xd2, 0xb9, - 0xe1, 0xa6, 0x76, 0x2e, 0xcc, 0x34, 0x52, 0xfe, 0xf6, 0x5d, 0x9b, 0xda, 0xb9, 0x3c, 0xb3, 0x89, - 0xd2, 0x50, 0xa3, 0xb1, 0xc9, 0x82, 0x32, 0xbc, 0xa4, 0x90, 0x08, 0x36, 0xd8, 0x04, 0x8a, 0x1a, - 0x94, 0x68, 0xa4, 0x54, 0x14, 0x77, 0x6c, 0xea, 0xf6, 0x26, 0x4d, 0x95, 0xf6, 0xcf, 0x0f, 0x0e, - 0x43, 0x17, 0x58, 0x39, 0x0c, 0x6f, 0x2b, 0xb8, 0x1e, 0x3f, 0x3b, 0x5d, 0xbc, 0xab, 0x7f, 0x18, - 0xba, 0xb8, 0xea, 0x61, 0x90, 0xca, 0x05, 0x1b, 0x93, 0x04, 0x1b, 0xad, 0x05, 0x81, 0xce, 0x02, - 0xe6, 0xff, 0xeb, 0x54, 0x94, 0x01, 0x15, 0x8a, 0x68, 0xbb, 0x57, 0x69, 0xef, 0x99, 0x84, 0x55, - 0x0e, 0xc5, 0x8f, 0xce, 0xe6, 0x77, 0x8d, 0x50, 0x55, 0xe5, 0x7b, 0x7b, 0xaf, 0x7a, 0x38, 0xc4, - 0xd3, 0x3e, 0xc2, 0x31, 0x84, 0x5b, 0x47, 0x29, 0x44, 0x17, 0x12, 0x88, 0x64, 0x05, 0x18, 0x1a, - 0x05, 0x28, 0xc1, 0x50, 0x32, 0x2e, 0x74, 0x20, 0xa4, 0x97, 0xee, 0xf7, 0x91, 0x54, 0x7d, 0xfb, - 0xed, 0xa1, 0x8f, 0xcb, 0x20, 0xc6, 0x8a, 0x76, 0xb5, 0x00, 0x7a, 0xdf, 0xd9, 0xe9, 0xe2, 0xda, - 0xc0, 0xc7, 0x65, 0x40, 0x13, 0x1a, 0xa6, 0x84, 0x0b, 0x09, 0x93, 0x00, 0x47, 0x82, 0x02, 0x4a, - 0x73, 0x78, 0x6d, 0x89, 0x05, 0xc2, 0x04, 0x43, 0x4f, 0x19, 0x21, 0xa4, 0xab, 0x61, 0xaf, 0x1a, - 0x80, 0x1b, 0xe9, 0xd6, 0xe7, 0x06, 0xc1, 0xf6, 0xe1, 0xfe, 0xf2, 0xf0, 0x43, 0xed, 0xb1, 0x58, - 0xae, 0x9b, 0x24, 0xe5, 0xd1, 0x5d, 0x99, 0x40, 0x19, 0xde, 0x1e, 0x87, 0xe5, 0xba, 0xcd, 0x52, - 0x84, 0x51, 0x92, 0x25, 0x81, 0x10, 0x48, 0xf9, 0x0a, 0x4c, 0x45, 0x0e, 0x31, 0x1c, 0x10, 0x21, - 0x6c, 0x70, 0x26, 0x7a, 0xaa, 0xe2, 0x20, 0x4b, 0x79, 0x4f, 0x5e, 0xa9, 0xaa, 0xff, 0x72, 0x5d, - 0xb3, 0x94, 0x2f, 0x0c, 0xf6, 0x70, 0x84, 0xad, 0x2a, 0xff, 0x3b, 0x76, 0xc5, 0x09, 0x23, 0x70, - 0x6d, 0xc9, 0x40, 0x25, 0xf4, 0xda, 0x79, 0x08, 0x5a, 0x68, 0x10, 0x8e, 0x4b, 0xb0, 0xc6, 0xf8, - 0x6c, 0xf1, 0x92, 0x4e, 0x42, 0x6a, 0xe5, 0xdc, 0x20, 0x05, 0xe8, 0xa3, 0xab, 0xda, 0xff, 0x5b, - 0xb7, 0x83, 0x57, 0x75, 0xee, 0xb1, 0x5d, 0x22, 0x1e, 0xc1, 0x6b, 0xaf, 0x4c, 0x5a, 0x45, 0xb8, - 0x4b, 0x1a, 0xac, 0x36, 0x11, 0x04, 0x57, 0x01, 0x0c, 0x63, 0x0a, 0x4c, 0x14, 0x92, 0x28, 0x23, - 0x63, 0x30, 0x6e, 0x47, 0xa6, 0xd2, 0x87, 0x59, 0x35, 0xf1, 0xef, 0xcd, 0xe6, 0xf7, 0x9f, 0x0b, - 0x73, 0xac, 0x95, 0x8f, 0x17, 0xc8, 0xee, 0xec, 0x74, 0xf1, 0x3d, 0xbd, 0xb9, 0x63, 0xc8, 0x53, - 0x31, 0xa3, 0x65, 0x81, 0xe7, 0xf0, 0x46, 0x92, 0x72, 0x83, 0xc6, 0x95, 0x1b, 0x4c, 0x0c, 0xac, - 0x4d, 0x28, 0x04, 0x8b, 0x36, 0x45, 0xba, 0x23, 0x57, 0xe9, 0xc3, 0x1f, 0xe9, 0xea, 0x1f, 0xcc, - 0xe6, 0x6f, 0x3a, 0x7f, 0xc3, 0x8f, 0x8e, 0x0e, 0x96, 0x1e, 0xf3, 0x84, 0xc5, 0x77, 0x14, 0x1e, - 0xde, 0x7b, 0x76, 0xba, 0x78, 0xbc, 0x37, 0x6b, 0x62, 0xdb, 0xb7, 0xb3, 0x2e, 0x5d, 0x71, 0x54, - 0x59, 0x2a, 0xa3, 0x02, 0x93, 0x0f, 0x99, 0x70, 0x36, 0x00, 0x12, 0x11, 0x01, 0x73, 0xdc, 0x16, - 0x0c, 0xa2, 0x0f, 0xec, 0xea, 0x85, 0x6b, 0x57, 0x76, 0x6f, 0x7a, 0x67, 0xb5, 0xf5, 0xbc, 0x6b, - 0x1c, 0xf6, 0x7c, 0x68, 0xbe, 0xa2, 0x3c, 0xd9, 0xfb, 0x76, 0xd3, 0xc1, 0xe6, 0x43, 0xfb, 0x11, - 0x05, 0xad, 0x74, 0xda, 0x32, 0x09, 0x5c, 0x22, 0x01, 0xc1, 0x91, 0x81, 0x71, 0x34, 0x80, 0xd3, - 0x9c, 0x08, 0x42, 0xad, 0x61, 0xba, 0x5e, 0xc7, 0xda, 0xce, 0x7e, 0x38, 0xd4, 0xaf, 0x27, 0xb7, - 0xe6, 0x77, 0x0e, 0xa9, 0xd6, 0x83, 0xf2, 0xbe, 0xde, 0x37, 0xc0, 0x01, 0xd9, 0xb6, 0xb8, 0x9e, - 0x1c, 0x65, 0x4a, 0x45, 0x90, 0x34, 0x1b, 0x3f, 0xe6, 0x11, 0x1c, 0x55, 0x1c, 0x64, 0x34, 0x92, - 0x50, 0x24, 0xe8, 0x82, 0x2a, 0xb5, 0xd6, 0x1e, 0xdd, 0x7a, 0x20, 0x7e, 0x78, 0x4c, 0xb8, 0x1e, - 0x81, 0xa7, 0x7a, 0x5f, 0x8d, 0x06, 0x84, 0x1b, 0xad, 0xe7, 0xc9, 0x26, 0x47, 0xbd, 0x00, 0x85, - 0x36, 0x81, 0x40, 0x63, 0x72, 0xbc, 0x46, 0xc1, 0x32, 0x12, 0xac, 0xb3, 0x9c, 0x2b, 0xd6, 0xd5, - 0xfa, 0x01, 0x80, 0xaa, 0xea, 0xc3, 0xca, 0x41, 0x46, 0x30, 0xd6, 0xee, 0xef, 0xdc, 0x55, 0x39, - 0xc8, 0x68, 0xa6, 0xc2, 0x49, 0xc6, 0xb4, 0x16, 0x84, 0x83, 0x31, 0x39, 0x22, 0x46, 0x81, 0xe0, - 0xb4, 0x97, 0xa0, 0x6c, 0xa2, 0x1a, 0x83, 0x65, 0x42, 0xc5, 0x1d, 0xe7, 0xf1, 0xe1, 0x70, 0x38, - 0xd2, 0xe2, 0x8f, 0xcc, 0xef, 0xee, 0x39, 0x06, 0x4c, 0x11, 0x9b, 0x5c, 0xfb, 0xbb, 0x7a, 0xe5, - 0xf0, 0xae, 0x37, 0x28, 0x83, 0x9e, 0x73, 0x09, 0xc8, 0xd6, 0x5b, 0x02, 0x1d, 0xd3, 0x5f, 0xe6, - 0xb7, 0xdf, 0xd6, 0x16, 0x13, 0xf4, 0xab, 0x86, 0xbc, 0xbf, 0x73, 0xfb, 0x76, 0x31, 0x01, 0xe0, - 0x39, 0x17, 0x7a, 0x0a, 0x82, 0xbb, 0x46, 0x08, 0xaa, 0x9e, 0x7c, 0x7c, 0x1a, 0x42, 0xd5, 0x95, - 0xef, 0xee, 0xd5, 0xe4, 0xc7, 0x10, 0x9e, 0x73, 0x39, 0xc7, 0xda, 0x8e, 0x50, 0xc6, 0x50, 0xaa, - 0xc6, 0xfc, 0xee, 0x6c, 0x7e, 0x65, 0x02, 0xca, 0x58, 0x69, 0xfe, 0x42, 0x81, 0xf5, 0x9d, 0x67, - 0xa7, 0x8b, 0xf7, 0xf6, 0x66, 0xb4, 0xb0, 0xfe, 0xbf, 0x8a, 0x36, 0x3d, 0x88, 0xaf, 0x19, 0x41, - 0x1c, 0xa9, 0xce, 0x50, 0xbf, 0x71, 0x39, 0x05, 0xf5, 0x03, 0xbb, 0xf4, 0x1b, 0x97, 0x93, 0x38, - 0x2d, 0x47, 0xc1, 0xb4, 0x63, 0x40, 0x75, 0xd4, 0x39, 0xa4, 0x08, 0x60, 0x14, 0x0d, 0xbb, 0x42, - 0x8a, 0xcb, 0xbd, 0x24, 0x7f, 0x0c, 0x72, 0x60, 0xf4, 0x32, 0xc6, 0xa2, 0xdc, 0xdf, 0xb3, 0xcb, - 0xe8, 0x65, 0x58, 0xcd, 0x35, 0x0c, 0xc2, 0x38, 0xb7, 0xf9, 0xe4, 0x07, 0x44, 0x10, 0x21, 0x26, - 0x70, 0xc1, 0x71, 0x60, 0xc2, 0x86, 0xe8, 0x3c, 0x72, 0xc6, 0xf4, 0xc0, 0xe8, 0x3d, 0xb8, 0x3c, - 0x9a, 0x32, 0x7a, 0x99, 0x6a, 0x55, 0xe9, 0xbd, 0x5d, 0x46, 0x2f, 0x93, 0x6d, 0xf5, 0x39, 0x32, - 0x4a, 0xd0, 0x7a, 0x30, 0xd1, 0x25, 0x10, 0x5e, 0x7a, 0x40, 0x4c, 0x06, 0x90, 0x0a, 0x6f, 0xa9, - 0x49, 0x56, 0x95, 0xdb, 0x00, 0x2f, 0xeb, 0xd3, 0x9d, 0x34, 0x7a, 0x99, 0x70, 0x55, 0xe4, 0xef, - 0xdd, 0x65, 0xf4, 0x32, 0xe1, 0xf6, 0x2d, 0x92, 0x63, 0x8a, 0xcb, 0x1c, 0x86, 0x07, 0x92, 0xea, - 0xbd, 0x35, 0x93, 0xa4, 0x84, 0x84, 0x51, 0x2a, 0xeb, 0x98, 0x0a, 0x4a, 0xef, 0x30, 0x7a, 0x0f, - 0x2e, 0x8f, 0x36, 0xaf, 0x59, 0x5e, 0x31, 0x42, 0xd0, 0x71, 0x84, 0xb8, 0xab, 0x5c, 0x5f, 0x70, - 0x74, 0x7d, 0x1f, 0x7a, 0x69, 0x05, 0xc9, 0xb9, 0xbe, 0xcc, 0x21, 0xb8, 0x15, 0xd9, 0xe7, 0x84, - 0x08, 0x52, 0x11, 0x16, 0xa9, 0x8e, 0x18, 0x04, 0xdf, 0x11, 0x82, 0x67, 0x34, 0x9d, 0xa5, 0x86, - 0x79, 0xe9, 0xe6, 0xe5, 0xd6, 0x26, 0x4d, 0x7e, 0x7a, 0x57, 0x5e, 0xba, 0x79, 0xb8, 0xb5, 0xcd, - 0x93, 0x53, 0x24, 0xc4, 0x04, 0x96, 0xc0, 0x44, 0x1d, 0x41, 0xd8, 0xa0, 0xc1, 0x31, 0x26, 0x41, - 0x53, 0x91, 0x3c, 0x62, 0x34, 0x4c, 0xd1, 0x61, 0xa6, 0xd2, 0x3c, 0xdc, 0x6a, 0x13, 0xe5, 0xcf, - 0xcc, 0xe6, 0x97, 0x77, 0x02, 0xaa, 0x8a, 0xb2, 0xec, 0xbe, 0xf8, 0xd9, 0x89, 0xa8, 0x4d, 0x95, - 0x19, 0xf5, 0x34, 0x27, 0x51, 0x41, 0x2a, 0x02, 0x42, 0x5a, 0x02, 0x98, 0x9c, 0x06, 0xad, 0xa3, - 0x71, 0x0e, 0xa9, 0x95, 0xe5, 0x6a, 0xc5, 0x2b, 0xa6, 0x21, 0x55, 0xcd, 0xf9, 0xdc, 0x79, 0x98, - 0xaa, 0x0e, 0x7d, 0xb0, 0x60, 0xba, 0x76, 0x76, 0xba, 0x78, 0xcf, 0x39, 0x98, 0xda, 0xb8, 0x31, - 0x09, 0x96, 0x92, 0xcc, 0x29, 0x4b, 0x60, 0x20, 0xac, 0xb6, 0x60, 0xa4, 0x27, 0x20, 0x98, 0x0c, - 0x46, 0x72, 0xed, 0x25, 0x97, 0x1d, 0xf1, 0xed, 0xc0, 0x56, 0x95, 0xea, 0x6f, 0xcd, 0xe6, 0x5f, - 0xbf, 0x13, 0xdb, 0xd8, 0xe4, 0x3c, 0x53, 0x70, 0x7e, 0xcf, 0xd9, 0xe9, 0xe2, 0xfd, 0xbd, 0x79, - 0x7d, 0x9c, 0x13, 0xb6, 0x27, 0x71, 0x8c, 0xdc, 0x49, 0x06, 0x9c, 0xa3, 0x07, 0xa1, 0xb9, 0xcc, - 0x81, 0x57, 0x80, 0xc8, 0x43, 0x20, 0x41, 0x46, 0x4b, 0x54, 0xd7, 0x46, 0xbe, 0x61, 0x1a, 0xf3, - 0x94, 0xa1, 0xec, 0x99, 0xf5, 0x26, 0x27, 0x3d, 0x59, 0x86, 0xb8, 0x17, 0x62, 0x8a, 0x87, 0x27, - 0x4d, 0x62, 0x73, 0xd8, 0x49, 0x50, 0x7b, 0x66, 0xbd, 0xc9, 0x4d, 0xf3, 0x0c, 0x68, 0x66, 0xb4, - 0x89, 0xaa, 0x73, 0xc6, 0x27, 0x45, 0x80, 0x11, 0x23, 0x41, 0x28, 0x95, 0xc0, 0x88, 0xc0, 0x81, - 0x6a, 0x27, 0xb4, 0xe6, 0x8a, 0x26, 0x24, 0x83, 0xc2, 0x58, 0x4d, 0x4e, 0x9f, 0x58, 0x86, 0xf8, - 0x48, 0x5d, 0xaa, 0xe8, 0xe4, 0x6f, 0xcf, 0xe6, 0xaf, 0xbf, 0x1d, 0xc8, 0xaa, 0x9a, 0xab, 0x6e, - 0x0f, 0x84, 0xdb, 0xa1, 0x6c, 0x34, 0x54, 0x04, 0x93, 0x92, 0xa2, 0x14, 0x98, 0xe7, 0x0a, 0x84, - 0x0e, 0x0c, 0xd0, 0x32, 0x02, 0x91, 0x18, 0x6a, 0x83, 0xf7, 0x48, 0x84, 0x1b, 0x78, 0x9d, 0x11, - 0xcc, 0xaa, 0xa7, 0xbf, 0xff, 0x1c, 0x70, 0x56, 0x75, 0x3d, 0x2a, 0x38, 0xbf, 0xeb, 0xec, 0x74, - 0xf1, 0xe4, 0xed, 0x71, 0x36, 0x5a, 0x4b, 0x19, 0x4b, 0x41, 0x95, 0x4f, 0xd8, 0x81, 0x83, 0x10, - 0x51, 0x83, 0xd3, 0xcc, 0x40, 0x62, 0x8c, 0x49, 0x49, 0x0d, 0x53, 0xbd, 0x4f, 0x1b, 0xe7, 0xe2, - 0xad, 0xba, 0xfb, 0xe5, 0xd9, 0x9c, 0xde, 0x0e, 0xef, 0x58, 0x85, 0xbf, 0xaf, 0x60, 0x8f, 0x67, - 0xa7, 0x0b, 0xec, 0x4d, 0x9f, 0xc4, 0x3e, 0x95, 0x98, 0xeb, 0xa4, 0xa3, 0xd2, 0x08, 0x18, 0x24, - 0x07, 0x21, 0x89, 0x07, 0x27, 0xac, 0x80, 0xe4, 0x2d, 0xe7, 0x86, 0x28, 0xee, 0x63, 0xb7, 0xac, - 0xf2, 0xd6, 0xf3, 0xf8, 0x98, 0xcc, 0xd2, 0x6b, 0xd3, 0x9b, 0xd5, 0xba, 0xb3, 0xe7, 0x83, 0x26, - 0x08, 0xc7, 0xa3, 0x67, 0x5c, 0x6e, 0xb5, 0xee, 0xec, 0xf7, 0xb0, 0x05, 0x02, 0x77, 0xde, 0x71, - 0xe4, 0x16, 0x84, 0xe4, 0x14, 0x84, 0x4f, 0x1c, 0x8c, 0x28, 0x8f, 0xfa, 0x03, 0x75, 0xc6, 0xc6, - 0xee, 0x33, 0xae, 0x87, 0x56, 0xeb, 0xcd, 0x26, 0xf7, 0x3b, 0x20, 0x7c, 0xba, 0x7d, 0x4d, 0x39, - 0x89, 0xad, 0xbc, 0x7d, 0x3b, 0x19, 0x3d, 0xa6, 0x9c, 0x04, 0xd6, 0x3c, 0x5f, 0x94, 0x52, 0x39, - 0x9a, 0x22, 0x10, 0x6b, 0x34, 0x08, 0xe1, 0x34, 0x38, 0xe2, 0x3c, 0x28, 0x45, 0x9d, 0xa4, 0x24, - 0x99, 0x50, 0xda, 0x1f, 0xdc, 0x3b, 0x8d, 0xaa, 0x3c, 0x7b, 0xfb, 0x95, 0xf6, 0x61, 0xf5, 0x24, - 0xa4, 0xaa, 0xab, 0xeb, 0x82, 0xe9, 0x89, 0xb3, 0xd3, 0xc5, 0x63, 0xcd, 0xbb, 0xea, 0x49, 0x4c, - 0x6d, 0x4d, 0x48, 0x7b, 0xc5, 0x1d, 0x8b, 0x90, 0x08, 0x17, 0x20, 0x68, 0xb6, 0x53, 0xd6, 0x4b, - 0xb0, 0x12, 0xa3, 0x64, 0xd4, 0x7a, 0xea, 0xbb, 0xd9, 0xc9, 0x2b, 0xa6, 0xc1, 0x55, 0xfd, 0xfc, - 0xa5, 0xf6, 0xb9, 0x60, 0x17, 0xdd, 0xb0, 0x01, 0xc2, 0xcd, 0xd1, 0x6b, 0xc1, 0x2e, 0xbc, 0x51, - 0xfb, 0x83, 0x24, 0x95, 0xb1, 0x81, 0x78, 0x08, 0x8a, 0xea, 0x8c, 0x8f, 0x03, 0xda, 0xc8, 0x21, - 0x72, 0xc7, 0x18, 0xa1, 0xda, 0x1a, 0x49, 0xdb, 0xd7, 0x82, 0x5b, 0x5c, 0x83, 0xee, 0x07, 0x3f, - 0xd3, 0x3e, 0x1e, 0x9e, 0x02, 0x56, 0x04, 0x79, 0x6b, 0xf4, 0x76, 0x78, 0x0a, 0x55, 0xd3, 0xf8, - 0x47, 0x28, 0x89, 0xc9, 0x58, 0x88, 0x86, 0x06, 0x10, 0xa8, 0x08, 0x18, 0x47, 0x02, 0xd8, 0xe4, - 0x89, 0xb6, 0x9c, 0x8b, 0x68, 0x36, 0x6f, 0x87, 0x47, 0x90, 0x8a, 0x18, 0x7f, 0x79, 0x4a, 0xb3, - 0xfa, 0x8d, 0x0f, 0x3e, 0xd4, 0x75, 0x90, 0x3b, 0x01, 0xb5, 0x4d, 0x91, 0x84, 0xf5, 0x2e, 0x4a, - 0x0d, 0x4a, 0x49, 0x0b, 0x42, 0x33, 0x52, 0x2e, 0xea, 0x03, 0x2a, 0xa6, 0xb8, 0x37, 0x0e, 0x03, - 0xe9, 0x7e, 0x17, 0xb8, 0x77, 0x12, 0x59, 0x95, 0xe1, 0xf6, 0xda, 0xe9, 0x71, 0x2c, 0x8e, 0xb1, - 0x78, 0x93, 0xef, 0x9f, 0xb8, 0x76, 0x5a, 0xff, 0xde, 0x5e, 0xf0, 0x46, 0xa4, 0x2c, 0x78, 0x09, - 0xd2, 0x1b, 0x0f, 0xc2, 0x13, 0x0b, 0x96, 0x21, 0x05, 0x1e, 0x9d, 0xa7, 0xd1, 0x22, 0x71, 0x89, - 0x6e, 0xae, 0x9d, 0x5e, 0x2b, 0x33, 0x07, 0x0f, 0x23, 0x1a, 0x72, 0xd5, 0x2f, 0xfc, 0xc0, 0xc4, - 0xb5, 0xd3, 0x86, 0x5e, 0xfb, 0xec, 0xc3, 0x18, 0x4e, 0xb8, 0x31, 0xa0, 0x43, 0x29, 0xc6, 0x68, - 0x02, 0x8e, 0xd2, 0x08, 0x49, 0x39, 0xcb, 0x1c, 0x09, 0x8a, 0x06, 0xb2, 0xb9, 0x76, 0x5a, 0x09, - 0x56, 0xa3, 0xff, 0x85, 0x61, 0x6f, 0x82, 0xd5, 0x51, 0x3c, 0x2e, 0xc1, 0xdd, 0xf6, 0x91, 0xf4, - 0x0f, 0x8e, 0x8e, 0x50, 0xeb, 0xee, 0xb7, 0x83, 0x3b, 0x2a, 0x1a, 0x0d, 0xd5, 0x3e, 0x68, 0x60, - 0x0e, 0x73, 0x1a, 0x4d, 0x04, 0x38, 0xea, 0x23, 0x04, 0x6a, 0x69, 0x88, 0xca, 0x11, 0x1f, 0xbb, - 0x69, 0x46, 0xb7, 0x45, 0xc1, 0x63, 0x9b, 0xe5, 0x5a, 0x55, 0xfd, 0xf9, 0x61, 0x8b, 0x82, 0x0e, - 0xbc, 0xa2, 0xa9, 0x1f, 0xe9, 0x56, 0x9e, 0x77, 0x61, 0x6b, 0x7a, 0x45, 0xd0, 0x60, 0x89, 0x94, - 0x06, 0x82, 0x2b, 0x67, 0x47, 0x30, 0x40, 0x64, 0x0e, 0x82, 0x42, 0xc5, 0xb5, 0x37, 0xca, 0xf8, - 0x6e, 0xdc, 0x74, 0xcf, 0x24, 0xb0, 0xe9, 0x4e, 0x05, 0x1d, 0x54, 0x55, 0x5f, 0x7f, 0x66, 0x77, - 0xa7, 0x82, 0x0e, 0xae, 0xf6, 0xf3, 0x87, 0x63, 0x46, 0x47, 0xa9, 0x20, 0xc6, 0x48, 0x40, 0xa4, - 0xc8, 0xc0, 0xca, 0x98, 0x40, 0xe5, 0xe4, 0xc4, 0x3a, 0xca, 0x9c, 0x0d, 0x83, 0x4e, 0x05, 0x5b, - 0x40, 0x55, 0x4f, 0xf7, 0xe7, 0xa5, 0xe7, 0xc4, 0xe6, 0x15, 0xd4, 0xe2, 0x53, 0xb3, 0x8e, 0xce, - 0x94, 0xc6, 0x67, 0x70, 0xb8, 0xc2, 0x1b, 0xeb, 0xa7, 0x2f, 0x5d, 0xe1, 0x42, 0x10, 0xeb, 0x49, - 0x00, 0xed, 0xb4, 0x06, 0x61, 0x4d, 0xf6, 0xc9, 0x0a, 0x41, 0xd1, 0xc4, 0x39, 0x0d, 0xde, 0x86, - 0xd0, 0xf5, 0x60, 0xa5, 0x77, 0x46, 0xfb, 0xfa, 0xa9, 0x7b, 0x05, 0x7e, 0xfb, 0x92, 0xe6, 0x99, - 0x1b, 0x2e, 0xfa, 0xd5, 0x61, 0x5a, 0xee, 0x2f, 0x7e, 0x68, 0xe2, 0x0a, 0xfc, 0xf6, 0x39, 0xcd, - 0x76, 0xe0, 0xa5, 0x2b, 0x56, 0x19, 0x16, 0xb9, 0xf0, 0x40, 0xbc, 0x66, 0x20, 0x94, 0xd6, 0x60, - 0x05, 0x22, 0x70, 0x49, 0xa9, 0x8c, 0xd6, 0x46, 0x5d, 0x1e, 0x41, 0xdc, 0xdd, 0x7b, 0x53, 0xf3, - 0xce, 0xed, 0x02, 0x3f, 0x35, 0x9b, 0xdf, 0xd7, 0x3e, 0xfa, 0xac, 0x3d, 0x07, 0x06, 0x50, 0x7e, - 0xb8, 0xf7, 0x85, 0xae, 0x79, 0xfc, 0x59, 0x1b, 0x0e, 0x0c, 0xb1, 0x50, 0x4f, 0x30, 0x2b, 0x2d, - 0x84, 0x40, 0x34, 0x08, 0x6f, 0x35, 0x18, 0x9f, 0x13, 0x11, 0x97, 0xbc, 0x24, 0x4e, 0x09, 0x26, - 0xf8, 0xe6, 0xf1, 0x5b, 0xed, 0x36, 0xd0, 0x07, 0xf3, 0x99, 0x29, 0x13, 0xd6, 0x7f, 0xb8, 0xfe, - 0x63, 0xb3, 0x73, 0xbd, 0xe3, 0xe0, 0xcd, 0x3a, 0x8d, 0x21, 0xc8, 0x52, 0xf7, 0x89, 0x56, 0x65, - 0x0b, 0x62, 0xc0, 0x6a, 0xe1, 0x40, 0x2b, 0x29, 0x3d, 0x72, 0xe1, 0x2d, 0x37, 0x63, 0xdb, 0xd5, - 0x7b, 0xae, 0xbe, 0x69, 0x35, 0x30, 0xc6, 0x54, 0x8e, 0xce, 0x8f, 0x8f, 0x5b, 0x0d, 0x8c, 0x01, - 0xd5, 0xa3, 0x13, 0x90, 0x08, 0x9a, 0x8c, 0x02, 0x1e, 0xb3, 0x5b, 0x8c, 0xd1, 0x82, 0x4d, 0xd1, - 0x42, 0x62, 0x86, 0x24, 0x29, 0x23, 0xd7, 0x94, 0xb7, 0xad, 0x06, 0x06, 0x68, 0xca, 0x81, 0xd9, - 0x1c, 0xe3, 0x31, 0x94, 0x7a, 0x5e, 0x7e, 0x62, 0x36, 0x3a, 0xc7, 0x63, 0x2c, 0x6d, 0x24, 0x69, - 0x09, 0xf2, 0xc4, 0x6c, 0xbd, 0x68, 0x26, 0x18, 0x71, 0x60, 0x8c, 0xa6, 0x40, 0xd1, 0x28, 0xa2, - 0x95, 0xb5, 0x8e, 0x74, 0xeb, 0x74, 0x8b, 0x09, 0x50, 0xf5, 0xd0, 0xfc, 0x60, 0xd3, 0xf2, 0xca, - 0x2d, 0xf7, 0xf7, 0x4a, 0x32, 0xbd, 0x75, 0xcb, 0x1f, 0x1b, 0xb7, 0xbc, 0x72, 0xcb, 0x7d, 0x28, - 0x99, 0x74, 0xc7, 0x1d, 0x4b, 0x2d, 0x8c, 0xf6, 0x3e, 0x80, 0x25, 0x36, 0x82, 0x88, 0x34, 0x00, - 0x6a, 0x29, 0xc0, 0x6b, 0x34, 0xde, 0x53, 0x21, 0xa5, 0x55, 0x6d, 0xc3, 0xad, 0x87, 0x96, 0xfb, - 0x8f, 0x1e, 0x3d, 0x78, 0xb4, 0xf1, 0xc2, 0x27, 0xf3, 0x97, 0x0f, 0xa9, 0x17, 0xb1, 0xfc, 0xe4, - 0xac, 0x5b, 0x40, 0x19, 0x92, 0x6e, 0xdb, 0xde, 0x70, 0xaf, 0x82, 0xa1, 0x59, 0x4b, 0xb3, 0x29, - 0xa3, 0x08, 0x36, 0x38, 0x09, 0x4c, 0x64, 0xfb, 0x9a, 0xd0, 0x24, 0x59, 0x1e, 0x4d, 0x75, 0xe9, - 0x16, 0x41, 0xfc, 0xd0, 0xfc, 0xce, 0x21, 0xd1, 0x2a, 0x80, 0x8f, 0x77, 0x0d, 0xd6, 0x9d, 0x43, - 0xaa, 0x6d, 0xed, 0xd6, 0x5a, 0xc2, 0x6c, 0x8e, 0x8f, 0xeb, 0xbd, 0x16, 0xc5, 0xeb, 0x0b, 0x2a, - 0xc2, 0x8c, 0xf0, 0x2c, 0x1a, 0x6d, 0x54, 0x37, 0x3a, 0xba, 0xa3, 0x4b, 0xbe, 0x6e, 0xf9, 0xcf, - 0xb5, 0xe7, 0xe4, 0xfa, 0xca, 0x2d, 0x0f, 0x62, 0xb1, 0x57, 0xfb, 0xc7, 0xb8, 0x5e, 0x6d, 0xfb, - 0xa9, 0x7c, 0x62, 0x7c, 0x4e, 0xea, 0x60, 0xd8, 0x0e, 0xde, 0x4a, 0x40, 0x31, 0xc3, 0x98, 0x71, - 0x0c, 0x12, 0xcb, 0xe9, 0x4f, 0x52, 0x09, 0x1c, 0x5a, 0x0b, 0xcc, 0x4a, 0x15, 0xb9, 0xc8, 0x66, - 0x35, 0xb5, 0x81, 0xda, 0xbb, 0xcb, 0x32, 0x8f, 0x6e, 0x56, 0x69, 0x25, 0xb1, 0xe9, 0xc7, 0x38, - 0x06, 0x55, 0x24, 0xf2, 0x53, 0xe3, 0x83, 0x32, 0x46, 0xd4, 0xf4, 0x81, 0x22, 0x3e, 0x95, 0x66, - 0x90, 0x4a, 0x30, 0x9a, 0xf3, 0x5c, 0x0f, 0x56, 0x50, 0x05, 0xc6, 0x71, 0xcf, 0xa4, 0x90, 0x3a, - 0xca, 0x4d, 0x1b, 0x8c, 0x21, 0x9c, 0xb6, 0x0b, 0xd4, 0x7d, 0x3b, 0xb0, 0x54, 0x41, 0x7d, 0x72, - 0x7c, 0x52, 0xc6, 0x60, 0x5a, 0xc7, 0xa2, 0x79, 0x32, 0x4e, 0x59, 0xa0, 0xd2, 0x67, 0x35, 0xf1, - 0x06, 0x4c, 0xd4, 0x01, 0x9c, 0xa0, 0x41, 0x87, 0x20, 0x12, 0x31, 0x6c, 0xe8, 0xf1, 0x86, 0xa8, - 0xaa, 0xdc, 0x36, 0xad, 0x82, 0xd2, 0xc1, 0xea, 0xd6, 0x9e, 0x5f, 0x1d, 0x1c, 0x44, 0x5f, 0x73, - 0xaa, 0x46, 0x6a, 0x3f, 0x3d, 0xee, 0x15, 0x92, 0x87, 0xc2, 0x76, 0x68, 0xa7, 0x37, 0xa3, 0x31, - 0x36, 0x05, 0xeb, 0x00, 0xa5, 0x2a, 0xcf, 0x0b, 0x3c, 0xa0, 0x0c, 0x14, 0x64, 0xd0, 0xc6, 0x59, - 0xe7, 0x22, 0xdf, 0x76, 0x9b, 0x79, 0xdb, 0xc1, 0xea, 0xd6, 0xc3, 0x9b, 0x35, 0x46, 0xfd, 0xbb, - 0x8e, 0x57, 0x37, 0xd6, 0x31, 0xec, 0x85, 0xb0, 0x1a, 0xf6, 0x09, 0xf9, 0x47, 0x63, 0x35, 0xaa, - 0x83, 0x21, 0x0f, 0x1e, 0x9a, 0xdb, 0x9c, 0x43, 0x6b, 0x63, 0x45, 0xf6, 0xbe, 0x1a, 0x44, 0x88, - 0x01, 0x8c, 0x91, 0x1a, 0x82, 0x63, 0xca, 0xa4, 0x20, 0x1c, 0x6a, 0xd1, 0x9a, 0xdb, 0x6b, 0x65, - 0x99, 0x47, 0xc2, 0xea, 0x64, 0xda, 0xdc, 0x8e, 0x31, 0x15, 0x2d, 0xfa, 0xc7, 0x63, 0x2d, 0x1a, - 0x03, 0x6a, 0xcc, 0xad, 0xf7, 0x0a, 0x03, 0x15, 0x10, 0x7d, 0x74, 0x20, 0xb8, 0xe2, 0x80, 0x0c, - 0x1d, 0x18, 0x56, 0xba, 0x89, 0x19, 0x4e, 0xa3, 0x68, 0xcd, 0xed, 0x00, 0x4d, 0xbf, 0xb3, 0xcb, - 0x18, 0x4a, 0x55, 0xa2, 0x7f, 0x32, 0x96, 0xd6, 0x18, 0x4b, 0x7b, 0x51, 0x28, 0x09, 0x45, 0x19, - 0xd1, 0xc0, 0x28, 0x53, 0xb5, 0x41, 0x90, 0xe3, 0x94, 0x02, 0x4b, 0x9e, 0xf2, 0x90, 0xa5, 0xe7, - 0x42, 0xab, 0xd2, 0x03, 0x30, 0x55, 0x77, 0xbe, 0x34, 0x9b, 0xbf, 0xa1, 0x36, 0x36, 0x9b, 0x48, - 0xd0, 0xfb, 0x42, 0xfb, 0xa7, 0xb3, 0x4e, 0x9c, 0xff, 0x86, 0xda, 0xdf, 0x6c, 0x22, 0x2d, 0x1f, - 0x08, 0xcf, 0x23, 0x33, 0xce, 0xa6, 0x04, 0x3e, 0x6a, 0x5d, 0x5b, 0x38, 0xa0, 0x8c, 0x06, 0x04, - 0x75, 0x29, 0x46, 0x4c, 0x52, 0x95, 0xa4, 0xa8, 0xb6, 0x81, 0x1c, 0xe6, 0xe0, 0x3d, 0x19, 0xfe, - 0xda, 0xa6, 0xe5, 0xe7, 0x4e, 0xa8, 0x45, 0x96, 0x7f, 0x34, 0xd1, 0xf2, 0x73, 0x27, 0xce, 0x2a, - 0x53, 0xe3, 0x88, 0x35, 0x2a, 0x69, 0x48, 0x34, 0x26, 0x10, 0x9e, 0x52, 0x30, 0x84, 0x6a, 0x08, - 0x32, 0xc7, 0x77, 0x4c, 0x50, 0x9a, 0xec, 0xa6, 0x0f, 0xe1, 0x24, 0xc8, 0x22, 0xda, 0xdf, 0x98, - 0xcd, 0xaf, 0xdc, 0x06, 0x61, 0x15, 0xf1, 0x3f, 0xeb, 0xda, 0x89, 0x2b, 0xb7, 0x81, 0xd8, 0x26, - 0x4e, 0xda, 0x09, 0x86, 0xc6, 0x40, 0x12, 0x94, 0x83, 0x50, 0x8c, 0x83, 0x33, 0x54, 0x03, 0x41, - 0x85, 0x5e, 0x50, 0x4d, 0x54, 0x79, 0x9d, 0xf9, 0xaa, 0xdd, 0x18, 0xab, 0xc4, 0x37, 0x7d, 0x2c, - 0xc3, 0xe1, 0x40, 0xc0, 0x5f, 0x9d, 0xe8, 0x63, 0x19, 0x0e, 0x87, 0x02, 0xcd, 0x2e, 0x35, 0x58, - 0xc2, 0xc0, 0xa8, 0x90, 0x40, 0xc4, 0x40, 0xc0, 0x49, 0x8b, 0x60, 0x35, 0xd7, 0xd4, 0x31, 0x17, - 0xb0, 0x34, 0xec, 0xa9, 0x7d, 0x2c, 0xc3, 0x61, 0x4f, 0x84, 0x6d, 0xff, 0xe3, 0x2d, 0xed, 0x22, - 0xb1, 0x7f, 0x31, 0x1b, 0x35, 0x40, 0xde, 0x12, 0x6e, 0x6c, 0xb7, 0x36, 0xd2, 0x73, 0x9e, 0x40, - 0xa5, 0x88, 0x20, 0x24, 0x89, 0x60, 0x93, 0xe4, 0x40, 0x95, 0xd7, 0xde, 0x26, 0x1d, 0x68, 0x79, - 0xd9, 0xf5, 0xd2, 0x2e, 0xd5, 0x22, 0x93, 0x75, 0xe3, 0xc9, 0xb7, 0x24, 0xab, 0x08, 0xfe, 0xe5, - 0xd8, 0x93, 0x6f, 0x69, 0x6e, 0xbe, 0x6f, 0x31, 0xa5, 0x8c, 0x30, 0xc0, 0x89, 0xb0, 0x20, 0x18, - 0x26, 0x70, 0xc4, 0x06, 0x50, 0x96, 0xd1, 0x18, 0x19, 0x26, 0x55, 0xee, 0xae, 0xde, 0xd1, 0x25, - 0x5a, 0x37, 0xf9, 0x8f, 0x66, 0x73, 0x53, 0xdb, 0x37, 0x6d, 0x0b, 0xf2, 0xc3, 0x26, 0x10, 0x47, - 0xc7, 0xab, 0x75, 0x63, 0xa8, 0xfb, 0x72, 0xf8, 0x57, 0x15, 0x5a, 0x38, 0x3b, 0x5d, 0x7c, 0x6f, - 0x5d, 0xa6, 0xfb, 0x89, 0x60, 0xd8, 0x22, 0x62, 0xbb, 0xcc, 0x50, 0x52, 0xcc, 0x6b, 0xc5, 0xac, - 0xb1, 0xc0, 0x35, 0xe7, 0x20, 0x88, 0x0b, 0xe0, 0x68, 0xf4, 0xa0, 0x65, 0xe0, 0x2a, 0x24, 0xe3, - 0x95, 0xcf, 0x81, 0x21, 0x2f, 0x6d, 0x9f, 0xb6, 0x04, 0xfa, 0xfd, 0x23, 0x1e, 0xdf, 0x2c, 0xdf, - 0x93, 0xe4, 0x3f, 0x9c, 0xcd, 0xe5, 0xf3, 0x66, 0xb0, 0x08, 0xfb, 0x5f, 0xcf, 0x3a, 0x77, 0xb0, - 0xe5, 0xf3, 0xe6, 0xae, 0x69, 0xcc, 0x44, 0xd1, 0x93, 0x68, 0x1d, 0x08, 0x97, 0x73, 0x78, 0x99, - 0x30, 0xb3, 0x96, 0xfd, 0x82, 0xd6, 0x54, 0x73, 0x44, 0x4a, 0x72, 0x8c, 0x45, 0x9e, 0x0f, 0x6b, - 0x45, 0x5d, 0xfe, 0x70, 0x36, 0x57, 0xcf, 0x9b, 0xaf, 0xaa, 0x51, 0x7f, 0x3c, 0xeb, 0xdc, 0xd8, - 0x50, 0xcf, 0x9b, 0xb1, 0x36, 0x8c, 0x8b, 0x89, 0x18, 0x1d, 0x18, 0x24, 0x6f, 0x73, 0x14, 0xcd, - 0x15, 0x18, 0x46, 0x0d, 0x44, 0x4d, 0x3d, 0x66, 0xbf, 0x63, 0x65, 0xbc, 0x7a, 0xe1, 0x1a, 0x7d, - 0x3e, 0x9c, 0x55, 0x9d, 0x6c, 0x9b, 0xc8, 0xde, 0x42, 0x3c, 0x1a, 0x68, 0xdc, 0xbf, 0x19, 0x47, - 0xd4, 0x79, 0xd4, 0x50, 0xa1, 0x30, 0x78, 0x4b, 0x02, 0x2a, 0xb0, 0x42, 0x26, 0x10, 0xce, 0x4b, - 0x70, 0x16, 0x19, 0x70, 0x0c, 0x91, 0x49, 0x8d, 0xce, 0x04, 0xd7, 0x36, 0x91, 0x7d, 0x0a, 0xf1, - 0xa8, 0xa7, 0x31, 0xed, 0x41, 0xec, 0x90, 0x2f, 0xfa, 0xf0, 0x6f, 0xc7, 0x07, 0xb1, 0x43, 0xbb, - 0x29, 0x47, 0x46, 0x12, 0x29, 0x72, 0x0f, 0x4e, 0x47, 0x0f, 0x22, 0x32, 0x93, 0xdd, 0x6d, 0x04, - 0x89, 0x84, 0x7a, 0x95, 0x9c, 0x51, 0xa5, 0xb5, 0xc4, 0x1d, 0x3d, 0xc2, 0x45, 0x9e, 0xb7, 0x9a, - 0x98, 0xba, 0x43, 0xb5, 0x4a, 0xeb, 0xdf, 0xcd, 0xba, 0xdf, 0x24, 0x87, 0x64, 0x5b, 0xf7, 0x1a, - 0x15, 0x61, 0x8e, 0x59, 0xe0, 0x4e, 0x94, 0x9e, 0xbd, 0x04, 0xac, 0xe4, 0x98, 0xcf, 0x52, 0x54, - 0x34, 0x32, 0xa3, 0x4a, 0xe7, 0xd0, 0x4b, 0x3d, 0xba, 0x83, 0xde, 0xdd, 0x85, 0xf2, 0xa8, 0x4c, - 0xfc, 0xef, 0xc7, 0xbd, 0xbb, 0x0b, 0xf9, 0x89, 0x1e, 0xb9, 0x86, 0x48, 0xaf, 0x3d, 0x01, 0xee, - 0x83, 0x03, 0x81, 0x4a, 0x83, 0x41, 0x4a, 0x21, 0x99, 0x80, 0x46, 0x07, 0x94, 0xd2, 0x6e, 0xe2, - 0x8d, 0x8c, 0x61, 0x58, 0x1a, 0xee, 0x89, 0xbd, 0x5f, 0x12, 0xfe, 0x93, 0x1d, 0x62, 0x1f, 0x16, - 0x83, 0x79, 0x60, 0x5c, 0x04, 0x0a, 0x86, 0x25, 0x06, 0x22, 0x58, 0x0d, 0x68, 0x98, 0x03, 0x82, - 0x4c, 0x70, 0x9d, 0xd0, 0x6b, 0x21, 0xba, 0x62, 0xef, 0x95, 0x81, 0x3f, 0x3a, 0x9b, 0x2f, 0x26, - 0xe8, 0x57, 0x21, 0xfc, 0x87, 0x6e, 0xa7, 0xb1, 0xc5, 0x04, 0x80, 0xf6, 0x50, 0x10, 0x86, 0x49, - 0x4a, 0x0f, 0x46, 0x97, 0x16, 0x5b, 0x2a, 0x87, 0xc9, 0xcc, 0x82, 0x8b, 0xd4, 0xa2, 0xd2, 0xd1, - 0x23, 0x2f, 0xb7, 0x2d, 0x86, 0x08, 0x06, 0xed, 0x8b, 0x4f, 0x96, 0xeb, 0xd8, 0x6d, 0x5c, 0xd9, - 0x3f, 0x04, 0x7f, 0x3a, 0x6e, 0x5f, 0x9c, 0x27, 0x74, 0xbb, 0x57, 0x0e, 0xce, 0x43, 0xb0, 0x24, - 0x44, 0xe4, 0x1c, 0x14, 0x92, 0x00, 0x42, 0x7a, 0x07, 0x96, 0x3a, 0x0b, 0x4c, 0x7b, 0xc5, 0x7d, - 0x4c, 0x48, 0x4a, 0x8b, 0x95, 0x12, 0x36, 0x3c, 0xb1, 0x5c, 0xc7, 0x6d, 0x0b, 0xcb, 0xde, 0xc9, - 0xd8, 0x34, 0x97, 0x9d, 0xc6, 0x57, 0x44, 0xf5, 0x1f, 0x27, 0x5a, 0x90, 0x4e, 0x82, 0x6b, 0x02, - 0x1a, 0x9b, 0xb4, 0xa1, 0xe5, 0xf1, 0xb5, 0x96, 0x20, 0x34, 0x53, 0x60, 0x0d, 0x61, 0xe0, 0x0d, - 0x46, 0x6b, 0x3c, 0x23, 0x9a, 0xf9, 0x36, 0xf3, 0x9a, 0x40, 0xd6, 0x6f, 0x5f, 0x3c, 0x0d, 0xab, - 0x4a, 0xf0, 0x3f, 0x8d, 0x3b, 0xea, 0x4d, 0xe3, 0x6a, 0x6b, 0xf8, 0x3e, 0x51, 0x95, 0x1c, 0x01, - 0xe3, 0x54, 0x0e, 0xe8, 0x99, 0x03, 0x14, 0x51, 0x81, 0x60, 0xce, 0x48, 0x54, 0xde, 0x69, 0xb3, - 0xed, 0x8d, 0x3a, 0x06, 0xd6, 0x0f, 0x61, 0xc2, 0xe1, 0x30, 0xb1, 0xf8, 0xcf, 0xe3, 0x10, 0x26, - 0x1c, 0x8e, 0x12, 0x0a, 0x49, 0x64, 0xd2, 0x82, 0x68, 0x50, 0x9c, 0xc4, 0x9c, 0x08, 0x26, 0x30, - 0x21, 0x05, 0x60, 0x68, 0x12, 0x0d, 0xdc, 0x53, 0x19, 0x53, 0x1b, 0xc2, 0x3c, 0x72, 0x78, 0x32, - 0x19, 0xc2, 0x6c, 0x69, 0x17, 0xf9, 0xfc, 0x97, 0x71, 0x08, 0xb3, 0x25, 0xdc, 0xf8, 0x2c, 0x47, - 0x99, 0x63, 0x3e, 0x00, 0xb3, 0x8e, 0x80, 0x08, 0x52, 0x83, 0x13, 0x22, 0x00, 0x97, 0x54, 0x4a, - 0x17, 0xa8, 0xb2, 0xa5, 0x92, 0xf8, 0xd2, 0x2e, 0xd5, 0x5e, 0x08, 0xb3, 0x25, 0x59, 0xf7, 0xfe, - 0xbf, 0x8e, 0x2d, 0xe7, 0x96, 0x66, 0xfb, 0x3d, 0x9a, 0x2b, 0x6a, 0x9d, 0x41, 0x30, 0x26, 0xe7, - 0x4e, 0x82, 0x48, 0x70, 0xe8, 0x19, 0xa0, 0x36, 0xcc, 0x49, 0xc1, 0x78, 0x28, 0xd6, 0xe3, 0x8e, - 0x2e, 0xd1, 0xba, 0xc9, 0x9b, 0xf6, 0xf0, 0xe8, 0xfd, 0xea, 0xc6, 0xe1, 0x7a, 0x77, 0xbc, 0xf2, - 0xdf, 0x66, 0xa3, 0xf6, 0xf0, 0xcd, 0x9c, 0x73, 0x82, 0x13, 0x47, 0xa3, 0x4d, 0xce, 0x29, 0x90, - 0x3e, 0x9b, 0xd6, 0x44, 0x1c, 0x38, 0x42, 0x10, 0xa2, 0x88, 0x4c, 0x5a, 0x1a, 0xb8, 0x36, 0xac, - 0xcd, 0x0b, 0x1e, 0xac, 0xab, 0xed, 0x08, 0x45, 0x36, 0xc7, 0x7b, 0x27, 0xd0, 0x22, 0xa1, 0xff, - 0x3e, 0x3e, 0xde, 0x3b, 0x51, 0xb6, 0xf5, 0x02, 0xad, 0x29, 0xe1, 0x19, 0xa2, 0x2a, 0xfd, 0xbf, - 0x34, 0x18, 0xaa, 0x0d, 0x08, 0x61, 0xa4, 0xb7, 0x86, 0x29, 0x9b, 0x62, 0x7b, 0xbc, 0xa7, 0x21, - 0x16, 0xf1, 0x6d, 0x9a, 0x67, 0xee, 0xc4, 0x57, 0xc5, 0xf9, 0x3f, 0xc6, 0x79, 0xcb, 0x4e, 0x80, - 0x9b, 0x6a, 0x5b, 0xc2, 0x20, 0x5c, 0x84, 0x64, 0x04, 0x01, 0x21, 0x30, 0x9f, 0x26, 0xaf, 0x00, - 0x69, 0x92, 0x5e, 0xeb, 0x60, 0xb0, 0xa4, 0x7f, 0xaf, 0xda, 0x8d, 0xb0, 0xca, 0xfa, 0xf7, 0x66, - 0xf3, 0x37, 0xd6, 0xa3, 0x3e, 0x7c, 0x17, 0xb2, 0x3c, 0xdc, 0x1f, 0x48, 0xfb, 0x7f, 0xce, 0x3a, - 0x5f, 0x1c, 0xde, 0x58, 0x4f, 0xfc, 0xf0, 0x41, 0xc8, 0xf2, 0x70, 0x7f, 0x94, 0x36, 0x10, 0x6f, - 0x42, 0x76, 0x22, 0x5a, 0x3a, 0x96, 0x2d, 0x92, 0x03, 0x6b, 0x13, 0x01, 0x23, 0x88, 0x44, 0x44, - 0x21, 0x4d, 0x51, 0xc4, 0xc2, 0xf7, 0xf0, 0x01, 0xc8, 0xf2, 0x70, 0xbf, 0x27, 0xf1, 0xdf, 0x6c, - 0xf3, 0xac, 0x73, 0xe0, 0x16, 0x99, 0xff, 0xaf, 0x71, 0x9e, 0x75, 0x0e, 0xd6, 0xb6, 0x73, 0x2b, - 0xf3, 0xc1, 0xa2, 0x05, 0x1f, 0xb3, 0xaf, 0xe1, 0x56, 0x81, 0x0d, 0x34, 0x65, 0xe7, 0x27, 0xbc, - 0x66, 0xdc, 0x88, 0xe2, 0xf3, 0x5f, 0x7d, 0x1e, 0xd0, 0xfe, 0xef, 0x2b, 0x9c, 0x83, 0xb2, 0x4a, - 0xfe, 0x7f, 0x8f, 0x0f, 0xd0, 0x39, 0x30, 0xdb, 0xfa, 0x11, 0x32, 0x6d, 0x15, 0xb1, 0x40, 0xbc, - 0x0e, 0x20, 0xb2, 0x3b, 0x44, 0x97, 0x28, 0x08, 0xc2, 0xd0, 0x31, 0x74, 0x9e, 0x70, 0xdd, 0x1e, - 0xa0, 0x5d, 0x38, 0x07, 0x75, 0xbf, 0xf2, 0x7a, 0x6d, 0x79, 0xb8, 0x8e, 0x07, 0x07, 0xcb, 0xfd, - 0x78, 0xe8, 0xb7, 0x3f, 0xb2, 0xf0, 0x23, 0x17, 0x47, 0x05, 0x9b, 0xf2, 0x66, 0xad, 0x3b, 0xb8, - 0x13, 0xb2, 0x70, 0x4c, 0xde, 0xb9, 0x04, 0x31, 0x60, 0x8e, 0x61, 0x53, 0x04, 0xa3, 0x75, 0x04, - 0xd4, 0x5c, 0x32, 0xa9, 0x94, 0xa4, 0xe5, 0xab, 0x63, 0xf1, 0x3e, 0x8f, 0xe0, 0x1a, 0x1f, 0xed, - 0xac, 0x32, 0xaa, 0xfb, 0x8d, 0x41, 0x15, 0xd1, 0xfe, 0xe8, 0xc5, 0x51, 0xc5, 0x66, 0x8c, 0xa8, - 0xf9, 0x08, 0x9a, 0x98, 0x08, 0xe8, 0x23, 0x24, 0xe2, 0x73, 0xb2, 0x10, 0x12, 0x18, 0x34, 0x11, - 0x34, 0x31, 0x56, 0x0b, 0x95, 0x52, 0x2c, 0x5d, 0x5c, 0x17, 0x53, 0x70, 0xfa, 0x75, 0xbf, 0x31, - 0x96, 0x2a, 0xc0, 0x1f, 0xbb, 0x38, 0xaa, 0xfb, 0x8d, 0xc1, 0xb4, 0xbd, 0x93, 0x1d, 0x63, 0xca, - 0x68, 0x0a, 0xc2, 0xe6, 0xfc, 0x05, 0x79, 0x00, 0x24, 0x2a, 0x81, 0x31, 0xc9, 0x69, 0x17, 0x55, - 0x34, 0xbd, 0xf7, 0x34, 0xf7, 0x4c, 0xa1, 0xaa, 0x72, 0xdb, 0x7e, 0xe9, 0x8a, 0xfe, 0xc6, 0x71, - 0xbc, 0x1e, 0x4f, 0x9e, 0x1e, 0x9c, 0xd5, 0x1f, 0xbf, 0x38, 0xfe, 0xd2, 0xb5, 0x19, 0x3b, 0x3c, - 0xa1, 0x2a, 0x71, 0xae, 0xa8, 0xf1, 0xc0, 0x6c, 0xf6, 0x8a, 0x84, 0x29, 0x40, 0xe2, 0x05, 0x44, - 0x11, 0x10, 0x31, 0x39, 0x22, 0x99, 0xdd, 0x7c, 0xe9, 0xda, 0xac, 0xd2, 0x3b, 0x98, 0x9b, 0xa0, - 0x77, 0x84, 0xa8, 0xc8, 0xec, 0x27, 0x2e, 0x8e, 0x82, 0xde, 0x11, 0x9c, 0x2a, 0x32, 0x2f, 0x28, - 0xd7, 0xce, 0x06, 0x20, 0x09, 0x19, 0x08, 0x24, 0x1c, 0x9c, 0x92, 0x02, 0x08, 0x31, 0x12, 0x45, - 0xb0, 0x18, 0x4b, 0xc7, 0xe2, 0xbb, 0x27, 0xb0, 0x14, 0x89, 0x6d, 0xb4, 0x67, 0x04, 0xa4, 0x0a, - 0xec, 0x63, 0x63, 0xed, 0x19, 0x21, 0xd9, 0xdc, 0x8d, 0xb1, 0x5a, 0x29, 0x6e, 0x81, 0x97, 0x1b, - 0x5d, 0x49, 0x47, 0x30, 0x8e, 0x11, 0x90, 0x9e, 0x30, 0x45, 0x03, 0x23, 0x56, 0x6c, 0xaa, 0xc6, - 0x03, 0x28, 0x55, 0x4c, 0xbf, 0xbc, 0x89, 0xa3, 0xb6, 0x58, 0x46, 0xf9, 0xc0, 0x4f, 0x5e, 0x1c, - 0xc7, 0x51, 0x5b, 0x40, 0xe3, 0xac, 0xc0, 0x46, 0xb4, 0x96, 0x18, 0x0e, 0xcc, 0xa8, 0x1c, 0x7a, - 0x66, 0x4b, 0xea, 0x53, 0x80, 0x94, 0x9c, 0x74, 0x2c, 0x85, 0xc0, 0xac, 0x6f, 0xaf, 0x8d, 0x6c, - 0x51, 0x0d, 0x73, 0x83, 0x29, 0x0d, 0xea, 0xa7, 0x08, 0x1f, 0x3f, 0x57, 0x83, 0x06, 0x89, 0x02, - 0xd1, 0x4a, 0x12, 0x69, 0x23, 0x68, 0x44, 0x9f, 0x53, 0x15, 0x0f, 0x28, 0x0d, 0x05, 0x47, 0x05, - 0x91, 0x31, 0x32, 0x64, 0x84, 0x8f, 0x35, 0xa8, 0x97, 0x2e, 0x6c, 0x6c, 0xd1, 0x14, 0xa2, 0x2a, - 0xbb, 0x4f, 0x8c, 0x6d, 0xd1, 0x14, 0xa4, 0x56, 0x7c, 0xb1, 0xfc, 0xc0, 0x11, 0x01, 0xaf, 0x88, - 0x03, 0x91, 0xc3, 0x73, 0xab, 0x39, 0x01, 0x8b, 0x81, 0x09, 0x13, 0x9d, 0xb0, 0x7e, 0xf3, 0x0d, - 0x62, 0x8c, 0xa9, 0x4a, 0x70, 0xa3, 0x4d, 0x78, 0x74, 0x74, 0xb2, 0x46, 0xff, 0xcc, 0xe0, 0x98, - 0xfd, 0xd4, 0x58, 0x9b, 0xda, 0x91, 0xc3, 0x43, 0x46, 0xa4, 0x72, 0x36, 0x04, 0x02, 0xde, 0x6b, - 0x0e, 0xc2, 0x2a, 0x5f, 0x3b, 0xd7, 0x38, 0x26, 0x73, 0x94, 0x11, 0xa5, 0x2e, 0x8d, 0x03, 0x17, - 0x4d, 0x7a, 0x5f, 0xd6, 0xe8, 0x1d, 0xb1, 0x4d, 0x3e, 0x35, 0xc0, 0x52, 0xa4, 0xf5, 0xc9, 0x8b, - 0xa3, 0x7c, 0x6a, 0x00, 0xa4, 0x15, 0x94, 0x40, 0x69, 0x62, 0x84, 0x80, 0x41, 0x81, 0x70, 0x26, - 0x82, 0x25, 0x68, 0x40, 0x27, 0x62, 0x9c, 0xa1, 0x9a, 0x60, 0x41, 0x71, 0xe7, 0x08, 0x45, 0x91, - 0xd1, 0xe6, 0xf7, 0x78, 0x06, 0x10, 0xaa, 0x78, 0x7e, 0xfa, 0xe2, 0xe8, 0xf7, 0x78, 0x06, 0x18, - 0x1a, 0xc9, 0x84, 0x28, 0x9d, 0xd7, 0x11, 0x01, 0x23, 0x65, 0x20, 0x04, 0xb7, 0x80, 0x92, 0xa5, - 0x1c, 0x14, 0x53, 0x1a, 0x84, 0x73, 0xb1, 0x74, 0xb3, 0xb9, 0x6b, 0x04, 0xa2, 0x0a, 0x65, 0x53, - 0x0e, 0x1e, 0xbd, 0x40, 0xe9, 0x0b, 0xe7, 0x67, 0x2e, 0x8e, 0xc2, 0xaa, 0xd1, 0xeb, 0x93, 0xe1, - 0x07, 0x07, 0x26, 0x24, 0xa6, 0xa4, 0x80, 0x72, 0x93, 0x63, 0x53, 0x96, 0xc0, 0x96, 0x9b, 0xc9, - 0x1a, 0xb5, 0xd6, 0x18, 0x84, 0x8f, 0xba, 0x0d, 0xfc, 0xfa, 0x0f, 0x4f, 0x7a, 0xa2, 0xda, 0xdc, - 0x31, 0xda, 0x81, 0xb0, 0x88, 0xec, 0x53, 0xe3, 0x83, 0xbf, 0x03, 0x5e, 0xfb, 0x33, 0x42, 0x4a, - 0x78, 0x4a, 0x39, 0x10, 0xcd, 0x0d, 0x08, 0xe5, 0x38, 0x18, 0x23, 0x2d, 0x18, 0x21, 0x55, 0x44, - 0x45, 0xbd, 0x4a, 0x1b, 0x7d, 0x9e, 0xc0, 0x56, 0x04, 0xb8, 0xb9, 0xc9, 0xb6, 0x03, 0x58, 0x15, - 0xe4, 0xcf, 0x5e, 0x1c, 0x5d, 0x65, 0xdb, 0x81, 0xac, 0xad, 0x50, 0x07, 0xa6, 0x02, 0x53, 0x1c, - 0x92, 0x4a, 0x79, 0xdb, 0x62, 0xcc, 0x01, 0x2c, 0x05, 0x6d, 0x83, 0x4c, 0xcc, 0xca, 0x80, 0x25, - 0xc4, 0xbb, 0x6f, 0x07, 0xb4, 0x2a, 0xd6, 0xbf, 0x3d, 0x9b, 0xdf, 0x3f, 0x2a, 0xc0, 0xad, 0x8f, - 0x31, 0xa5, 0xa5, 0xdf, 0x5b, 0x1e, 0x9e, 0x2c, 0xf7, 0x9f, 0x1e, 0x26, 0xee, 0x9f, 0xae, 0x40, - 0xdf, 0x7f, 0x76, 0xba, 0x78, 0x5f, 0x9d, 0xdc, 0x2b, 0xbc, 0x35, 0x93, 0xa1, 0x99, 0x3c, 0xaa, - 0x92, 0x46, 0x2e, 0x7d, 0x60, 0x1c, 0x8c, 0x52, 0x1a, 0x84, 0x43, 0x0b, 0x2e, 0x24, 0x03, 0xd9, - 0x4d, 0x07, 0x22, 0x0c, 0x37, 0x22, 0xc7, 0xd0, 0x6f, 0x1e, 0x14, 0xdc, 0xde, 0x5b, 0x57, 0x7d, - 0xb4, 0x2e, 0xda, 0x93, 0xfb, 0x5f, 0x9b, 0xcd, 0xdf, 0xf2, 0x1c, 0x59, 0x28, 0x2a, 0xf0, 0x99, - 0x8b, 0x9d, 0x07, 0xe2, 0x6f, 0x79, 0x8e, 0xf8, 0x9b, 0x8f, 0x51, 0xc2, 0xa1, 0x21, 0x24, 0x02, - 0x4b, 0x96, 0x82, 0x48, 0x4a, 0x83, 0xb3, 0x56, 0x83, 0x67, 0xd6, 0x46, 0x46, 0x25, 0x55, 0x25, - 0xa7, 0x7c, 0xc3, 0xed, 0xc1, 0x17, 0xc5, 0xf8, 0x9b, 0xb3, 0xf9, 0x5b, 0x9f, 0x23, 0xf2, 0xaa, - 0x23, 0x3f, 0x77, 0xb1, 0xf3, 0x24, 0xe3, 0xad, 0xcf, 0x11, 0x7a, 0x1b, 0xc0, 0x06, 0x83, 0x5e, - 0x47, 0x03, 0x88, 0x2a, 0x9f, 0x7f, 0xe2, 0xc1, 0x51, 0xaa, 0x80, 0x85, 0x40, 0x78, 0x32, 0xe5, - 0xa1, 0xee, 0xd5, 0x0b, 0xd7, 0xde, 0x78, 0x7b, 0xec, 0x55, 0x73, 0xfe, 0xce, 0x46, 0x73, 0x6e, - 0xac, 0x9f, 0x8e, 0x87, 0xeb, 0x6d, 0xf5, 0xb6, 0x13, 0xaf, 0xf5, 0x35, 0xe7, 0xe7, 0x27, 0x34, - 0xa7, 0x37, 0xb9, 0x1f, 0xc1, 0x0d, 0xcb, 0xa1, 0x5e, 0x79, 0x1e, 0x0d, 0x82, 0x70, 0x54, 0x65, - 0x33, 0x11, 0xc1, 0xa0, 0x48, 0x90, 0x34, 0xf7, 0xc9, 0x62, 0x14, 0xf5, 0xc7, 0x42, 0xbe, 0xbe, - 0xfe, 0xac, 0x42, 0x77, 0xd9, 0x6e, 0x2c, 0xd7, 0x53, 0x9d, 0xbf, 0xbe, 0x51, 0x9d, 0xdb, 0xf2, - 0x50, 0x54, 0xe7, 0x17, 0x26, 0x54, 0xe7, 0xb6, 0x0c, 0x34, 0x51, 0xb1, 0xb2, 0x84, 0x66, 0xf3, - 0x9f, 0x04, 0xcd, 0x39, 0x2d, 0x22, 0x18, 0x62, 0x09, 0xb8, 0x88, 0x96, 0xf1, 0x24, 0x59, 0x2a, - 0xd7, 0xe0, 0xde, 0xf8, 0x1c, 0xd0, 0x17, 0xdd, 0x39, 0xdd, 0xe8, 0xce, 0x6d, 0xa1, 0x57, 0xdd, - 0xf9, 0xc5, 0x09, 0xdd, 0xb9, 0x2d, 0xf6, 0xf6, 0xcb, 0x8c, 0x65, 0x2a, 0x05, 0x16, 0xc0, 0xd1, - 0x10, 0x40, 0xa4, 0x80, 0x60, 0x6c, 0x60, 0xd9, 0xc9, 0xdb, 0x48, 0x1c, 0xb7, 0x9e, 0x66, 0x2b, - 0xf8, 0xa6, 0xe7, 0x00, 0xbe, 0x5f, 0x52, 0xaa, 0x16, 0x71, 0x75, 0xd8, 0xf9, 0x7d, 0xb9, 0x8b, - 0xa3, 0x92, 0x52, 0x35, 0x83, 0xab, 0xc3, 0x4e, 0xca, 0x43, 0x22, 0x25, 0x8c, 0xa7, 0x00, 0x51, - 0x85, 0x08, 0xc2, 0x58, 0x0a, 0x56, 0x29, 0x0b, 0xca, 0x26, 0xad, 0x2d, 0xe5, 0x44, 0x99, 0xcd, - 0x57, 0xb1, 0x62, 0xfb, 0x1e, 0x3b, 0x8c, 0xc3, 0x92, 0xd2, 0x96, 0x76, 0xfd, 0x59, 0xb9, 0x8b, - 0xa3, 0x92, 0xd2, 0x96, 0x70, 0x53, 0xe6, 0x43, 0x4a, 0x8c, 0x11, 0x0a, 0x72, 0xb8, 0x07, 0x82, - 0x24, 0x02, 0x36, 0x72, 0x04, 0x45, 0xa9, 0xf3, 0x31, 0x78, 0xc6, 0xb6, 0x25, 0xa5, 0x96, 0x6a, - 0xaf, 0xa4, 0xb4, 0x25, 0xd9, 0xfc, 0x9a, 0xdc, 0xc5, 0x51, 0x49, 0x69, 0x4b, 0x73, 0xb3, 0xf7, - 0xc1, 0x7b, 0x6e, 0x05, 0x58, 0x8a, 0xe5, 0xed, 0x3a, 0x07, 0x6b, 0x35, 0x83, 0x84, 0x9e, 0x10, - 0x41, 0x53, 0x24, 0xc6, 0xb4, 0x25, 0xa5, 0x96, 0xe8, 0xf6, 0x69, 0xe0, 0xb4, 0xdf, 0xe9, 0xbe, - 0x95, 0xf9, 0xdc, 0xc5, 0xee, 0xdb, 0xa9, 0x69, 0xbf, 0xd3, 0x7b, 0x32, 0x13, 0x35, 0x97, 0x96, - 0x5a, 0x09, 0x5e, 0xd2, 0xbc, 0xf7, 0x22, 0x80, 0x31, 0xa5, 0x65, 0x82, 0x37, 0xd6, 0x53, 0x2d, - 0x85, 0x4c, 0x9d, 0x8c, 0xea, 0x95, 0x63, 0xff, 0xd3, 0x7d, 0x36, 0xf3, 0x95, 0xe7, 0xf7, 0x05, - 0xa8, 0x8b, 0xfc, 0xf3, 0x15, 0xf9, 0x07, 0xcf, 0x4e, 0x17, 0xe9, 0x79, 0x7d, 0x01, 0xea, 0xb1, - 0xa3, 0x15, 0xa3, 0x5c, 0x44, 0x0d, 0xd2, 0x07, 0x99, 0x13, 0x7b, 0x02, 0x26, 0x49, 0x07, 0x89, - 0x05, 0x15, 0xa3, 0x95, 0x91, 0xd2, 0xee, 0xc5, 0x10, 0xf6, 0x1c, 0xbf, 0x04, 0x75, 0x79, 0xdc, - 0x54, 0x9c, 0x3b, 0xf2, 0xef, 0x70, 0x5b, 0xee, 0xd1, 0xfe, 0xca, 0xc5, 0x51, 0xc5, 0xb9, 0xa3, - 0x0a, 0x1d, 0xb6, 0x9a, 0x07, 0x91, 0x26, 0x98, 0x40, 0xbd, 0x04, 0xa9, 0x8d, 0x02, 0x61, 0xb4, - 0x04, 0x23, 0x4a, 0xb1, 0x8c, 0x5a, 0x64, 0xc6, 0xea, 0xe6, 0x31, 0x4e, 0x4f, 0x2b, 0xb6, 0xab, - 0x94, 0x1b, 0xb6, 0x9f, 0xed, 0x07, 0x4c, 0x43, 0x58, 0xf5, 0xbe, 0xed, 0x17, 0x76, 0x05, 0x4c, - 0x43, 0x5c, 0x6d, 0xaf, 0x4e, 0xf4, 0x8e, 0x25, 0x22, 0x80, 0xa1, 0xcb, 0x70, 0x7c, 0x00, 0xc7, - 0x88, 0x05, 0x4c, 0xc9, 0x47, 0x12, 0x34, 0x11, 0xa5, 0x5f, 0xe6, 0x7d, 0x3b, 0x80, 0xd5, 0x9b, - 0xb8, 0x3f, 0xd0, 0x7e, 0x34, 0x3f, 0x88, 0x78, 0x7c, 0x73, 0x19, 0x6f, 0x6d, 0xcc, 0xc3, 0x17, - 0xc7, 0xe6, 0x61, 0x33, 0xa8, 0x13, 0x51, 0x7a, 0x64, 0x24, 0x69, 0x0d, 0x8e, 0x39, 0x0b, 0x42, - 0x07, 0x01, 0xa8, 0x82, 0x02, 0x2a, 0x9c, 0x77, 0x22, 0x99, 0x60, 0x91, 0x6d, 0x7e, 0x7e, 0xb1, - 0x9d, 0xde, 0xda, 0x87, 0xe3, 0xf6, 0xab, 0xf9, 0x86, 0x78, 0xb1, 0x0f, 0xbf, 0x3a, 0xb6, 0x0f, - 0x5b, 0xca, 0xcd, 0xaf, 0x18, 0x72, 0x1a, 0xad, 0x29, 0xaf, 0x78, 0x93, 0x07, 0x61, 0x1c, 0x02, - 0xfa, 0x80, 0x50, 0x7e, 0x9b, 0x88, 0x73, 0x2f, 0x02, 0xd9, 0x54, 0x7f, 0x37, 0x64, 0x8b, 0x81, - 0xb8, 0xd1, 0x7e, 0x36, 0xdf, 0xd0, 0xac, 0x06, 0xe2, 0xd7, 0xc6, 0x06, 0x62, 0x4b, 0xb4, 0x75, - 0xec, 0x22, 0xc6, 0xc0, 0x88, 0x07, 0x1b, 0x2d, 0x01, 0x81, 0x56, 0x82, 0x53, 0x5e, 0x80, 0x4a, - 0x5e, 0xb9, 0x24, 0x89, 0x50, 0x24, 0xb6, 0x5f, 0xcd, 0x36, 0x54, 0x8b, 0x85, 0x78, 0xe8, 0x85, - 0xf3, 0x17, 0xf8, 0xf2, 0x53, 0xc9, 0x0f, 0x7d, 0x74, 0xf6, 0xe5, 0xaf, 0x5c, 0xbe, 0xf0, 0x87, - 0x5f, 0xb9, 0x7c, 0xe1, 0x4f, 0xbe, 0x72, 0x79, 0xf6, 0xd1, 0x67, 0x2f, 0xcf, 0xbe, 0xf4, 0xec, - 0xe5, 0xd9, 0xdf, 0x7f, 0xf6, 0xf2, 0xec, 0xcb, 0xcf, 0x5e, 0x9e, 0xfd, 0xf3, 0x67, 0x2f, 0xcf, - 0xfe, 0xf8, 0xd9, 0xcb, 0x17, 0xfe, 0xe4, 0xd9, 0xcb, 0xb3, 0x4f, 0x7f, 0xf5, 0xf2, 0x85, 0x2f, - 0x7f, 0xf5, 0xf2, 0x85, 0x3f, 0xfc, 0xea, 0xe5, 0x0b, 0xef, 0x7f, 0xc7, 0xfe, 0xea, 0xe8, 0x99, - 0xfd, 0xf2, 0x5e, 0x3e, 0x1e, 0x1f, 0xe3, 0xfd, 0x37, 0x4e, 0x1e, 0x28, 0xff, 0x91, 0x56, 0xc7, - 0xd7, 0xf3, 0x89, 0xbb, 0xb9, 0x0c, 0xf1, 0x18, 0xda, 0x3f, 0x3f, 0x70, 0xe4, 0xf6, 0x57, 0x0f, - 0xc4, 0x0f, 0xad, 0x9b, 0x1f, 0x72, 0xee, 0xfd, 0x9e, 0xb3, 0x7b, 0x41, 0xf9, 0x21, 0x67, 0xfe, - 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x2f, 0x59, 0x56, 0x3e, 0x2f, 0x7a, 0x00, 0x00, + // 13299 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0xbd, 0x77, 0x98, 0x65, 0xc9, + 0x75, 0x1f, 0x36, 0xaf, 0x6d, 0xd3, 0xd4, 0x13, 0x09, 0x60, 0x07, 0xd8, 0xdd, 0xb7, 0x0b, 0x60, + 0x00, 0x02, 0x83, 0x8c, 0xb3, 0x5b, 0xe1, 0x54, 0x62, 0xde, 0x40, 0x62, 0x96, 0x04, 0x08, 0x70, + 0x16, 0xc0, 0x8a, 0x94, 0xc9, 0xd1, 0xa9, 0x34, 0xdb, 0x44, 0x4f, 0x77, 0xb3, 0xbb, 0x67, 0x16, + 0x20, 0x45, 0x09, 0xcc, 0x99, 0x22, 0x45, 0x89, 0x11, 0x14, 0x29, 0x46, 0x30, 0x53, 0x96, 0x69, + 0x4a, 0x6a, 0xd9, 0x96, 0x5a, 0x92, 0x95, 0x6c, 0x99, 0xff, 0xf8, 0xfb, 0xf8, 0x39, 0xc8, 0x06, + 0x68, 0x5b, 0xfc, 0xc3, 0x81, 0xce, 0xd9, 0xd6, 0x77, 0xab, 0xee, 0xbd, 0xef, 0xa6, 0xd7, 0x33, + 0x8b, 0x7f, 0x76, 0x67, 0xe6, 0x55, 0xd5, 0xf9, 0x55, 0x9d, 0x5f, 0x9d, 0x3a, 0xa7, 0xc2, 0xb9, + 0xeb, 0x77, 0xdc, 0x4b, 0xa7, 0x4f, 0xec, 0x1f, 0x3d, 0x79, 0x1a, 0x5e, 0x4c, 0x77, 0xe8, 0xc9, + 0x7b, 0xe9, 0x34, 0x1d, 0xde, 0x7b, 0x92, 0x0e, 0x0e, 0x6e, 0xd1, 0xf1, 0xfe, 0xad, 0xdb, 0x27, + 0x47, 0x77, 0x8f, 0x4f, 0x9f, 0x38, 0x3e, 0x39, 0x3a, 0x3b, 0xba, 0xfa, 0x9a, 0x5a, 0xf4, 0x89, + 0x5a, 0xf4, 0x89, 0x5a, 0xf4, 0xf1, 0x37, 0x2d, 0x36, 0x70, 0x74, 0x7c, 0xb6, 0x7f, 0x74, 0xd8, + 0xd6, 0x7c, 0xd3, 0x3f, 0xfb, 0xbd, 0xbd, 0xf5, 0x2b, 0x9e, 0xfa, 0xc0, 0x73, 0xef, 0x69, 0x9a, + 0x7b, 0xe6, 0xc5, 0xa3, 0xfd, 0x90, 0xae, 0x7e, 0xe3, 0xfa, 0xd5, 0x59, 0x7d, 0x34, 0xdc, 0x8a, + 0x29, 0xd3, 0xdd, 0x83, 0xb3, 0x5b, 0x14, 0x42, 0x3a, 0x3d, 0xdd, 0xc4, 0x37, 0xae, 0xde, 0xfe, + 0xd9, 0x4f, 0x7f, 0xc9, 0xc5, 0xf9, 0xe6, 0x0b, 0x6a, 0x01, 0x68, 0x0b, 0x40, 0x2d, 0x70, 0xf5, + 0x7a, 0xf0, 0x8a, 0x5b, 0xa6, 0x35, 0x58, 0x1b, 0x39, 0x20, 0x3a, 0x01, 0x8e, 0x67, 0x07, 0x5a, + 0x25, 0xa7, 0xc8, 0x62, 0x72, 0x64, 0x6e, 0x5c, 0xb9, 0xf9, 0x50, 0x53, 0xf9, 0xd9, 0x5a, 0xf7, + 0xa9, 0x5a, 0xf5, 0x83, 0xeb, 0x3f, 0x51, 0x44, 0x7a, 0x3a, 0x4d, 0x9b, 0x54, 0x04, 0xa9, 0x8b, + 0xf3, 0x0d, 0xaf, 0xff, 0x0c, 0xcd, 0x3f, 0x5f, 0xbd, 0x8e, 0x4c, 0x66, 0xf2, 0x2c, 0x40, 0x70, + 0xc9, 0x02, 0x9a, 0x64, 0xc0, 0x26, 0x8b, 0xa0, 0xa5, 0xd1, 0x8a, 0xcb, 0x68, 0x32, 0x8a, 0x1b, + 0x57, 0x6e, 0x7e, 0x76, 0x53, 0xe5, 0xe9, 0xa6, 0xc6, 0xd7, 0xad, 0x3f, 0xa7, 0xb6, 0xba, 0x7f, + 0x70, 0xb0, 0x7f, 0x78, 0x7b, 0x93, 0x4b, 0xc3, 0xf6, 0xe2, 0x7c, 0x83, 0xf5, 0x17, 0x68, 0x7f, + 0xb9, 0x7a, 0x3d, 0x72, 0xf4, 0x41, 0x50, 0x86, 0xe0, 0x9d, 0x06, 0x44, 0x0a, 0x60, 0x73, 0xb4, + 0xa0, 0x14, 0x8b, 0xd9, 0x99, 0x9c, 0x84, 0xa0, 0x1b, 0x57, 0x6e, 0xfe, 0xc9, 0xd2, 0x76, 0x5b, + 0xe9, 0x63, 0xeb, 0x47, 0x4a, 0xf3, 0x74, 0x37, 0xee, 0x9f, 0xdd, 0x3a, 0x38, 0xba, 0x7d, 0x7a, + 0x8b, 0x0e, 0xd2, 0xc9, 0xd9, 0xe9, 0xe6, 0x76, 0x11, 0xf4, 0xf4, 0xc5, 0xf9, 0xe6, 0x8b, 0x6b, + 0x19, 0x28, 0x65, 0xa0, 0x29, 0x03, 0xb5, 0xcc, 0xd5, 0xeb, 0x4e, 0x19, 0xc2, 0x1c, 0x12, 0x90, + 0xc9, 0x12, 0x50, 0xca, 0x00, 0x3e, 0x06, 0x09, 0x06, 0xb3, 0x32, 0x91, 0x8b, 0x8c, 0xac, 0x19, + 0xad, 0x32, 0xd4, 0x4f, 0x35, 0xd5, 0xdf, 0x7b, 0x74, 0xfb, 0xf4, 0xa9, 0x5a, 0xf9, 0x7b, 0x57, + 0xeb, 0xd7, 0x16, 0xd9, 0xe1, 0xc5, 0xfd, 0x83, 0x78, 0xeb, 0x0e, 0x1d, 0xd2, 0xed, 0x74, 0x27, + 0x1d, 0x9e, 0xdd, 0xa2, 0x78, 0x67, 0xff, 0x70, 0xf3, 0xf1, 0x55, 0x41, 0xf0, 0x9e, 0x8b, 0xf3, + 0xcd, 0x33, 0xb5, 0x24, 0x94, 0x92, 0xb0, 0x2d, 0x09, 0xa5, 0xe4, 0xd5, 0xeb, 0x98, 0x85, 0xd7, + 0x19, 0x33, 0x44, 0x9d, 0x08, 0x50, 0xeb, 0x00, 0x14, 0x44, 0x84, 0x18, 0x13, 0x63, 0x81, 0x39, + 0x17, 0x43, 0x03, 0x63, 0xd3, 0x34, 0xf2, 0x4c, 0xd3, 0xc6, 0xfb, 0xfa, 0x26, 0x9e, 0x2a, 0x2d, + 0x7c, 0xd7, 0x6a, 0xfd, 0xf8, 0x32, 0x96, 0xbb, 0xa7, 0xe9, 0x64, 0xf3, 0xad, 0x15, 0xca, 0x97, + 0x5f, 0x9c, 0x6f, 0x9e, 0xae, 0x05, 0xe7, 0x50, 0x9a, 0x82, 0x57, 0xaf, 0x93, 0xc8, 0x82, 0x82, + 0xf2, 0x10, 0x75, 0xce, 0x80, 0x51, 0x44, 0x70, 0x82, 0x2b, 0xc8, 0x29, 0x47, 0x95, 0x7c, 0x66, + 0x56, 0xb9, 0x1b, 0x57, 0x6e, 0x3e, 0xba, 0x80, 0xe4, 0x43, 0x4d, 0x03, 0x7f, 0x61, 0xb5, 0x7e, + 0xfd, 0x32, 0x90, 0x3b, 0x47, 0x87, 0xfb, 0x67, 0x47, 0x27, 0x9b, 0x6f, 0xab, 0x58, 0x9e, 0xbb, + 0x38, 0xdf, 0x7c, 0x59, 0x2d, 0x3b, 0xc7, 0xd2, 0x96, 0xbd, 0x7a, 0xdd, 0x1b, 0x1f, 0x9d, 0x49, + 0x0c, 0xa4, 0x54, 0x1e, 0x30, 0x05, 0x07, 0x4e, 0x58, 0x03, 0x2a, 0xf9, 0x90, 0x64, 0x50, 0x56, + 0xe7, 0x86, 0x12, 0x8f, 0x2f, 0xc0, 0x79, 0x5f, 0xdb, 0xc6, 0xcf, 0xad, 0xd6, 0x6f, 0x5e, 0x46, + 0x74, 0x7a, 0xf7, 0xf8, 0xf8, 0xe8, 0xa4, 0x53, 0xd7, 0xff, 0x57, 0x71, 0xbd, 0xff, 0xe2, 0x7c, + 0xf3, 0x95, 0xb5, 0xc6, 0x1c, 0x57, 0x5b, 0xa3, 0x53, 0x9b, 0x17, 0xcc, 0xb2, 0x9c, 0x39, 0x44, + 0x87, 0x06, 0x30, 0x09, 0x0d, 0x24, 0x24, 0x07, 0xe3, 0x75, 0x16, 0x59, 0x73, 0x4c, 0x64, 0x6f, + 0x5c, 0xb9, 0xf9, 0x86, 0x05, 0x74, 0xcf, 0xd7, 0x96, 0xaa, 0xf6, 0x7e, 0x66, 0xb5, 0x7e, 0xd3, + 0xe5, 0x10, 0x8b, 0x16, 0xff, 0xff, 0x8a, 0xf0, 0xab, 0x2e, 0xce, 0x37, 0x5f, 0x51, 0x2b, 0xec, + 0x46, 0x58, 0xb5, 0x29, 0x4d, 0x72, 0xc9, 0x6b, 0x09, 0xd2, 0x34, 0xda, 0xb4, 0x46, 0x82, 0xc5, + 0x98, 0x20, 0x6b, 0x99, 0x31, 0x23, 0x51, 0x0a, 0xcd, 0xf0, 0x5d, 0xdb, 0x0d, 0xb0, 0x28, 0xf5, + 0x97, 0x57, 0xeb, 0xb7, 0x5c, 0x8e, 0xaf, 0x53, 0xee, 0xc7, 0xf7, 0x0a, 0xc4, 0xaf, 0xbe, 0x38, + 0xdf, 0xbc, 0xaf, 0xd6, 0xd9, 0x0d, 0xb1, 0x57, 0xb2, 0x09, 0x49, 0x44, 0xa6, 0x3c, 0x18, 0x25, + 0x22, 0xa0, 0xa3, 0x0c, 0x64, 0xc9, 0x00, 0x32, 0x67, 0x0d, 0x32, 0x8b, 0x81, 0xe2, 0x8d, 0x2b, + 0x37, 0x3f, 0x6f, 0x37, 0xca, 0x4e, 0xd7, 0xdf, 0xbe, 0x5a, 0x3f, 0x56, 0x81, 0x1e, 0x1d, 0x9e, + 0x1e, 0x1d, 0xa4, 0x62, 0xcb, 0x7a, 0x70, 0x3f, 0x56, 0xc7, 0xef, 0xcb, 0x2e, 0xce, 0x37, 0x4f, + 0xd5, 0x72, 0xd0, 0x96, 0x2b, 0xc6, 0x6d, 0x0b, 0x08, 0x43, 0x4c, 0x4e, 0x28, 0x05, 0x2a, 0x11, + 0x07, 0x94, 0x3c, 0x81, 0x15, 0xc6, 0x42, 0x14, 0xd9, 0x23, 0x2a, 0x6f, 0xb5, 0x6c, 0x86, 0xad, + 0x58, 0x95, 0x67, 0x6a, 0x0b, 0x8d, 0xad, 0xeb, 0x50, 0x7c, 0x53, 0x6b, 0x93, 0x46, 0x20, 0x8a, + 0x06, 0x7f, 0x7c, 0x35, 0x33, 0x4a, 0x23, 0x04, 0x55, 0x6b, 0xc9, 0x71, 0xcd, 0x12, 0x59, 0xc8, + 0x49, 0x48, 0x40, 0xcd, 0x2c, 0x78, 0xa7, 0x25, 0x28, 0x67, 0x9d, 0x74, 0x22, 0xa2, 0x53, 0xa2, + 0x33, 0x4a, 0x03, 0xf1, 0x45, 0x55, 0xdf, 0xb2, 0x7e, 0x74, 0x2e, 0xbb, 0x12, 0xfc, 0x27, 0xaa, + 0xf0, 0x67, 0x2e, 0xce, 0x37, 0x5f, 0x52, 0x4b, 0x8d, 0x85, 0xb7, 0xa4, 0xce, 0x89, 0x59, 0x13, + 0x35, 0x81, 0x75, 0xc8, 0x01, 0x75, 0x63, 0xe1, 0x03, 0x29, 0x50, 0xd6, 0xb3, 0x66, 0x05, 0x51, + 0x5e, 0x85, 0x1b, 0x57, 0x6e, 0xbe, 0x66, 0x22, 0x7d, 0xca, 0xe4, 0xb1, 0xfc, 0x7b, 0x74, 0x18, + 0x52, 0xec, 0x35, 0xf1, 0x93, 0x0b, 0x4c, 0x1e, 0x43, 0xa9, 0x15, 0xb6, 0x2a, 0xc9, 0x26, 0x30, + 0x9b, 0x78, 0x06, 0xcf, 0x24, 0x03, 0x44, 0x26, 0x81, 0x3c, 0x17, 0xe0, 0x18, 0x1a, 0x4f, 0x46, + 0x06, 0x23, 0x74, 0xcf, 0xe4, 0x21, 0xaa, 0xda, 0x50, 0xa7, 0x9a, 0xbf, 0xb4, 0x5a, 0xbf, 0xe1, + 0x12, 0x7c, 0x45, 0x49, 0x3f, 0x55, 0xc1, 0x7d, 0xe5, 0xc5, 0xf9, 0xe6, 0x3d, 0xb5, 0xf4, 0x0e, + 0x70, 0x55, 0x5b, 0x4e, 0x4b, 0x4a, 0xcc, 0x05, 0x48, 0xa4, 0x08, 0xd0, 0x06, 0x02, 0x9f, 0x0c, + 0x03, 0xab, 0xac, 0x4b, 0x3c, 0xb8, 0xe8, 0x48, 0xdd, 0xb8, 0x72, 0xf3, 0xb5, 0x3b, 0x90, 0x15, + 0xad, 0xfd, 0xf8, 0x6a, 0xfd, 0xc6, 0x4b, 0x60, 0x55, 0xfd, 0xfd, 0x74, 0xc5, 0xf5, 0xde, 0x8b, + 0xf3, 0xcd, 0x8d, 0x5a, 0x7c, 0x07, 0xae, 0x56, 0x91, 0x81, 0x59, 0x1e, 0xbc, 0x15, 0x10, 0x5c, + 0x0e, 0x80, 0x32, 0x20, 0x10, 0xf3, 0x02, 0x74, 0x54, 0x9e, 0x07, 0x9b, 0x29, 0x99, 0x66, 0xc8, + 0x5e, 0xb7, 0x03, 0x58, 0x55, 0xe8, 0x4f, 0xad, 0xd6, 0x9f, 0x37, 0x47, 0x76, 0x7c, 0x92, 0xee, + 0xec, 0xdf, 0xbd, 0xd3, 0xeb, 0xf3, 0x13, 0x15, 0xda, 0xfb, 0x2e, 0xce, 0x37, 0xcf, 0xd5, 0xf2, + 0x63, 0x68, 0x6d, 0xf9, 0xad, 0x3a, 0x6d, 0x96, 0x31, 0x79, 0x89, 0x40, 0x2e, 0x1b, 0x40, 0xa1, + 0x32, 0x50, 0x48, 0x1a, 0x92, 0xd0, 0xa8, 0x72, 0x42, 0x2b, 0x43, 0x33, 0xe5, 0x5f, 0x3f, 0xc1, + 0xf6, 0x81, 0xda, 0x4e, 0xa7, 0xcd, 0x1f, 0x59, 0xad, 0xaf, 0xed, 0x06, 0x57, 0x94, 0xf9, 0x33, + 0x15, 0xd9, 0x57, 0x5c, 0x9c, 0x6f, 0xbe, 0xbc, 0x16, 0x5e, 0x46, 0x56, 0x75, 0xe9, 0x23, 0x37, + 0x92, 0x71, 0x0d, 0x64, 0x7d, 0x02, 0xf4, 0x0a, 0xc1, 0xc5, 0x60, 0x21, 0xcb, 0x80, 0x86, 0x8c, + 0x90, 0x91, 0xeb, 0x7e, 0xb9, 0x99, 0xc1, 0x2a, 0xaa, 0x5c, 0x66, 0x58, 0x87, 0xa9, 0x6a, 0xf2, + 0xaf, 0xdc, 0x87, 0x61, 0x1d, 0xa8, 0x4e, 0x91, 0x2a, 0x05, 0xad, 0x72, 0x80, 0xa4, 0x08, 0x01, + 0x19, 0x72, 0x20, 0x86, 0x19, 0xb8, 0x33, 0x2e, 0x58, 0xa5, 0x55, 0x5d, 0x04, 0x5f, 0xbb, 0x8c, + 0xaa, 0xea, 0xf1, 0x60, 0x5d, 0x3c, 0xbe, 0x5b, 0xa7, 0x61, 0x7f, 0xab, 0xb6, 0x9f, 0xad, 0x38, + 0xbe, 0xe8, 0xe2, 0x7c, 0xe3, 0xea, 0xef, 0xd0, 0xfc, 0xbe, 0x55, 0x53, 0x08, 0xdc, 0x98, 0x90, + 0x32, 0x08, 0xc2, 0x00, 0xa8, 0x8d, 0x02, 0x1f, 0x35, 0x07, 0xaf, 0xb5, 0x8d, 0xca, 0x65, 0x8a, + 0xb9, 0xe1, 0xf6, 0x2b, 0x9b, 0xaa, 0xcf, 0x87, 0xfd, 0x5e, 0x31, 0x61, 0xfd, 0x8a, 0xad, 0xb4, + 0xa2, 0x87, 0x9f, 0xab, 0xa2, 0x3e, 0xff, 0xe2, 0x7c, 0xa3, 0xeb, 0x8f, 0x55, 0x54, 0x1d, 0x77, + 0x8d, 0xdc, 0x04, 0x97, 0x09, 0x32, 0xc3, 0xe2, 0x86, 0x71, 0x20, 0x9b, 0x1c, 0x04, 0x46, 0x31, + 0x46, 0x89, 0xce, 0xb0, 0xa6, 0x87, 0x9f, 0xd3, 0xc9, 0x29, 0x23, 0x7d, 0xb8, 0x7e, 0xe5, 0x56, + 0x48, 0x1d, 0xd8, 0xbf, 0x3a, 0x34, 0x71, 0xaf, 0xdc, 0x4a, 0x69, 0x07, 0x92, 0x39, 0xe4, 0x8d, + 0xfd, 0x82, 0xc4, 0x1b, 0x23, 0x12, 0xb9, 0x07, 0x92, 0x56, 0x83, 0x0f, 0x92, 0x73, 0xc6, 0x05, + 0x97, 0xcc, 0x3f, 0xfe, 0x59, 0xa7, 0x1f, 0x3b, 0x3d, 0x4b, 0x77, 0x6e, 0x5c, 0xb9, 0xf9, 0xb9, + 0x9d, 0xb8, 0x3a, 0x84, 0x7f, 0xb9, 0xd3, 0x6c, 0xbf, 0xe8, 0xcd, 0x9d, 0x9b, 0x9f, 0x9f, 0x6b, + 0xb6, 0x5f, 0xee, 0x16, 0xdc, 0x1b, 0x13, 0x84, 0xe0, 0xda, 0x48, 0x40, 0x25, 0x32, 0x60, 0x92, + 0x0e, 0xac, 0x4a, 0x11, 0x9c, 0x72, 0xa4, 0x54, 0x20, 0x6b, 0x9c, 0xef, 0xa6, 0x68, 0xb7, 0xd4, + 0xcd, 0x1c, 0x9c, 0x1f, 0x58, 0xad, 0x5f, 0xb7, 0x0b, 0x57, 0x19, 0xfb, 0x5f, 0xa8, 0xa0, 0x6e, + 0x5c, 0x9c, 0x6f, 0x9e, 0xad, 0x45, 0x97, 0x40, 0x55, 0x4d, 0x08, 0x4f, 0x21, 0x26, 0x72, 0x60, + 0x83, 0x13, 0x80, 0xc9, 0x0b, 0xa0, 0x24, 0x22, 0x68, 0xc3, 0x48, 0x3a, 0xaf, 0x3d, 0x65, 0xbc, + 0x71, 0xe5, 0xe6, 0x63, 0x8b, 0x88, 0xc6, 0x1e, 0xe0, 0x02, 0x9c, 0xaa, 0xa5, 0x5f, 0x9c, 0x7b, + 0x80, 0x0b, 0x78, 0x3a, 0xf2, 0xcb, 0x90, 0x99, 0x4e, 0x16, 0xb4, 0x63, 0x1c, 0xd0, 0x90, 0x00, + 0x12, 0xce, 0x42, 0x08, 0x52, 0x3a, 0x65, 0x10, 0x9d, 0xef, 0xa7, 0xe4, 0x0c, 0x50, 0x55, 0x5c, + 0x6f, 0x5d, 0x6f, 0x1f, 0x1c, 0x79, 0x3a, 0x68, 0xa2, 0x84, 0x5b, 0x27, 0x29, 0xa4, 0xfd, 0x7b, + 0xe9, 0xa4, 0xd7, 0xdc, 0x2f, 0xcd, 0xad, 0x6b, 0x2d, 0xde, 0x04, 0x0c, 0xd0, 0x15, 0xdf, 0xaa, + 0x4e, 0x39, 0xcc, 0xcc, 0xa6, 0x00, 0x24, 0x78, 0x04, 0xe4, 0x8c, 0x80, 0x02, 0x09, 0xf0, 0x29, + 0x44, 0x9b, 0x84, 0x89, 0xc9, 0x98, 0x4e, 0x75, 0xef, 0x29, 0x0d, 0xbd, 0xf7, 0xe8, 0xf6, 0xcd, + 0xb6, 0x99, 0x4e, 0x75, 0x3f, 0xd4, 0x8d, 0xd5, 0x12, 0xb2, 0xa2, 0xbb, 0x5f, 0x9e, 0x8f, 0xd5, + 0x12, 0xac, 0xaa, 0x3c, 0x8c, 0x06, 0x19, 0x7a, 0x0b, 0x28, 0xc9, 0x02, 0x7a, 0x61, 0xc0, 0xf9, + 0x68, 0x40, 0xfa, 0x10, 0xac, 0x26, 0xab, 0x59, 0x72, 0x9d, 0xf2, 0x66, 0x98, 0x8a, 0xf2, 0x7a, + 0x8b, 0xba, 0x04, 0xa8, 0x6a, 0xef, 0x57, 0xe6, 0x16, 0x75, 0x09, 0x51, 0xab, 0x3e, 0x6d, 0x24, + 0xa7, 0x88, 0x19, 0x72, 0x16, 0x04, 0x18, 0x84, 0x6c, 0xc2, 0x51, 0x04, 0x8a, 0x94, 0x44, 0x62, + 0x26, 0x69, 0xc1, 0x3a, 0xf5, 0xcd, 0x20, 0x55, 0xf5, 0xf5, 0x98, 0x66, 0x31, 0x5e, 0xaf, 0xbc, + 0x4f, 0xce, 0x31, 0xcd, 0x82, 0xbd, 0xad, 0xea, 0xa2, 0xf7, 0x2a, 0x38, 0xc1, 0x20, 0x6b, 0x0a, + 0x80, 0xaa, 0x71, 0x23, 0x2c, 0x7a, 0x50, 0x4e, 0x5a, 0x16, 0x49, 0x06, 0xcf, 0x4d, 0x87, 0x69, + 0x12, 0xf4, 0x75, 0x8a, 0xfb, 0x9e, 0x2e, 0xf6, 0x9b, 0x63, 0x2a, 0x6a, 0xfb, 0xd5, 0x79, 0xec, + 0x37, 0x07, 0xd4, 0x7a, 0x7b, 0x39, 0x3a, 0xca, 0x2c, 0x80, 0xb7, 0x56, 0x01, 0x66, 0xa6, 0x81, + 0x50, 0x73, 0x30, 0xc8, 0x89, 0xa2, 0x52, 0x9e, 0x29, 0xdb, 0x45, 0x5c, 0x13, 0x34, 0x45, 0x65, + 0xdf, 0xdf, 0x4d, 0xff, 0x39, 0x94, 0xaa, 0xb0, 0x5f, 0x9b, 0x4f, 0xff, 0x39, 0x96, 0x56, 0x5d, + 0x06, 0x99, 0x31, 0x2e, 0x11, 0x18, 0x1e, 0x18, 0x60, 0xb0, 0x11, 0x28, 0x07, 0x07, 0x5e, 0x44, + 0x96, 0x89, 0x69, 0xb4, 0x26, 0x74, 0x81, 0xe8, 0x04, 0x4c, 0x55, 0x56, 0x1f, 0x6d, 0xc5, 0x74, + 0x90, 0x6e, 0xd3, 0x59, 0xe3, 0xbd, 0x94, 0xed, 0x85, 0x66, 0x1d, 0xdc, 0x0f, 0xbd, 0xc6, 0x7e, + 0x7d, 0x1e, 0x6d, 0xf5, 0x35, 0xda, 0xbd, 0x0c, 0x28, 0x35, 0x06, 0x2e, 0xa0, 0xca, 0xce, 0x2b, + 0xe3, 0xc0, 0xe7, 0xc6, 0x62, 0x5a, 0xd5, 0x4c, 0x36, 0x95, 0x40, 0x28, 0x91, 0x59, 0x36, 0x56, + 0x32, 0xe4, 0x5d, 0xb4, 0xf5, 0x6c, 0xd7, 0x56, 0xdd, 0xdb, 0x78, 0xba, 0x69, 0xa9, 0xd3, 0x5d, + 0x6f, 0x0e, 0x76, 0x40, 0x2c, 0x0a, 0xfc, 0x8d, 0xb9, 0x39, 0xd8, 0x81, 0xaf, 0x6a, 0x31, 0xeb, + 0x88, 0xdc, 0x7b, 0x0d, 0x89, 0x6b, 0x56, 0xf7, 0x45, 0x48, 0x6a, 0x01, 0xc2, 0xa3, 0x67, 0xa4, + 0x84, 0x8c, 0x2c, 0x77, 0xe6, 0x60, 0x09, 0x5c, 0x51, 0x65, 0xef, 0x6c, 0xed, 0x40, 0x56, 0xf5, + 0xf9, 0x9b, 0x73, 0x67, 0x6b, 0x07, 0xb4, 0x6e, 0xd9, 0x13, 0x52, 0x06, 0x4d, 0x08, 0xa1, 0x6c, + 0x72, 0xb0, 0x10, 0xc0, 0x0b, 0x99, 0x41, 0x5b, 0xe2, 0xde, 0x19, 0x45, 0xd9, 0xe7, 0xce, 0xd9, + 0x5a, 0xc2, 0x56, 0x35, 0xfb, 0x8d, 0xeb, 0x57, 0x6d, 0x97, 0xdb, 0x70, 0xb0, 0x9f, 0x0e, 0xcf, + 0x36, 0xbf, 0x55, 0xa1, 0x3c, 0x7b, 0x71, 0xbe, 0xf9, 0xd2, 0xfa, 0x73, 0x5d, 0x6f, 0xeb, 0xcf, + 0x57, 0xaf, 0x47, 0xad, 0x9c, 0x66, 0xd1, 0x41, 0xf6, 0x48, 0x80, 0x02, 0x35, 0x38, 0x99, 0x32, + 0xc8, 0xe4, 0xa5, 0xca, 0x28, 0xb3, 0x63, 0x76, 0xb0, 0xe0, 0xbe, 0xa2, 0x5b, 0x70, 0x9f, 0xa9, + 0xf5, 0xb7, 0xbb, 0x1a, 0x5b, 0x5f, 0x6a, 0xc0, 0xa1, 0xdf, 0x5e, 0xd8, 0xd5, 0xd8, 0xba, 0x51, + 0x43, 0xea, 0x10, 0x57, 0xce, 0x6b, 0x97, 0x20, 0x8a, 0x10, 0x01, 0x55, 0x72, 0x40, 0x5a, 0x6b, + 0x40, 0x27, 0x90, 0x12, 0xfa, 0xa0, 0x38, 0xf5, 0xbb, 0x1a, 0xbd, 0x07, 0xb5, 0xa5, 0xcc, 0x42, + 0x54, 0xd5, 0x11, 0xe5, 0x77, 0x2e, 0x8d, 0xaa, 0x7a, 0x7e, 0xe8, 0x68, 0xb5, 0x8a, 0xcc, 0x82, + 0xe0, 0x49, 0x01, 0xa2, 0x15, 0x60, 0xa3, 0xf4, 0xe0, 0xb8, 0x08, 0xde, 0xc4, 0xc8, 0xb3, 0x51, + 0xf3, 0xa8, 0xaa, 0xe5, 0xc5, 0xc7, 0x57, 0xeb, 0xcd, 0x82, 0xfc, 0x4a, 0x87, 0xbf, 0x36, 0xd4, + 0xc1, 0x66, 0x01, 0x40, 0xcb, 0x02, 0x61, 0x3d, 0x4b, 0x0c, 0x23, 0x90, 0xf6, 0x0d, 0x82, 0xe4, + 0xc1, 0x31, 0xc7, 0x01, 0x2d, 0x26, 0xe3, 0xd1, 0x09, 0xcd, 0x1b, 0x3b, 0xf3, 0xf0, 0x14, 0x41, + 0xd5, 0xfe, 0x76, 0x5f, 0xa7, 0x85, 0x70, 0x7a, 0x46, 0x87, 0x91, 0x4e, 0xb6, 0x31, 0xdd, 0xbf, + 0xb9, 0xb0, 0xaf, 0xd3, 0xe2, 0xe8, 0xca, 0x0e, 0xe6, 0x72, 0x70, 0x51, 0xe4, 0xdc, 0x18, 0x16, + 0x19, 0x00, 0x9d, 0xb2, 0xe0, 0x59, 0xe0, 0x10, 0xa5, 0x34, 0xcc, 0x91, 0x15, 0xce, 0xf0, 0x89, + 0xa3, 0xfd, 0x7c, 0xdb, 0x48, 0xa7, 0x93, 0x19, 0x39, 0x7a, 0x44, 0x45, 0x2f, 0x7f, 0x7d, 0x37, + 0x39, 0x7a, 0x38, 0x55, 0x35, 0x06, 0x9d, 0x30, 0xd9, 0x19, 0xf0, 0xde, 0x33, 0x40, 0xeb, 0x14, + 0x78, 0xcd, 0x24, 0x30, 0xe5, 0x1c, 0x69, 0xcd, 0x78, 0x54, 0x79, 0x42, 0x8e, 0x0e, 0x4b, 0xd1, + 0xce, 0x76, 0x1f, 0x70, 0x0a, 0xa4, 0x2a, 0xe8, 0xdf, 0x5a, 0xd8, 0x07, 0x9c, 0x22, 0xe9, 0x36, + 0x94, 0xa4, 0xf4, 0xc9, 0xf3, 0x0c, 0x3a, 0x24, 0x0b, 0x18, 0x8c, 0x06, 0xc7, 0x6d, 0x02, 0xef, + 0x35, 0xcf, 0x41, 0x39, 0x1e, 0xca, 0x02, 0xbe, 0x59, 0x80, 0xb2, 0x43, 0x4d, 0xb3, 0xd0, 0xfb, + 0x77, 0x77, 0xab, 0x69, 0x1e, 0x75, 0x13, 0x6a, 0x54, 0x91, 0x21, 0x98, 0xa0, 0x32, 0x60, 0xf1, + 0x6f, 0x48, 0x5a, 0x30, 0x98, 0xbd, 0x77, 0xd2, 0x58, 0xb2, 0x6a, 0xa2, 0xa6, 0x69, 0xc4, 0x3d, + 0x53, 0xd3, 0x38, 0xd8, 0xfe, 0xb7, 0x77, 0xab, 0x69, 0x12, 0x67, 0x23, 0xc3, 0x68, 0x65, 0x4c, + 0x60, 0x4d, 0x8a, 0x80, 0xce, 0x59, 0x20, 0xc4, 0x00, 0xc6, 0x72, 0x0c, 0x8a, 0x31, 0xae, 0x53, + 0x9a, 0xa8, 0x69, 0x14, 0x63, 0xcf, 0xd4, 0x34, 0x09, 0xaf, 0x7f, 0x6f, 0xb7, 0x9a, 0x66, 0x91, + 0xb5, 0x64, 0xc2, 0x5b, 0xe7, 0xc1, 0xa4, 0x32, 0x81, 0x02, 0x81, 0xb3, 0x5e, 0x03, 0xf3, 0x32, + 0x06, 0x16, 0x91, 0x8c, 0x33, 0x13, 0x35, 0x8d, 0xa3, 0xea, 0x26, 0x48, 0xdc, 0x3f, 0xcc, 0x27, + 0x74, 0x7a, 0x76, 0x72, 0x37, 0x9c, 0xdd, 0x3d, 0x49, 0xb7, 0x62, 0xba, 0x73, 0xd4, 0x59, 0xfb, + 0x93, 0x44, 0x71, 0x33, 0x8a, 0x24, 0xc6, 0x85, 0xa1, 0x29, 0xdc, 0x99, 0xfa, 0xa6, 0xf0, 0xd5, + 0xeb, 0xc6, 0x92, 0x43, 0xae, 0x3d, 0x30, 0x25, 0x2d, 0xa0, 0xd0, 0x19, 0x5c, 0xf3, 0x27, 0x92, + 0x82, 0x39, 0x97, 0x55, 0xb6, 0xba, 0x04, 0xfb, 0xe3, 0x86, 0x9e, 0x4d, 0x77, 0x8e, 0xaa, 0xa1, + 0xbf, 0xd9, 0xb4, 0x72, 0xbc, 0x7e, 0xf5, 0xbd, 0x74, 0x7a, 0x6b, 0xff, 0xa8, 0xdb, 0xad, 0xaf, + 0x48, 0xf6, 0x86, 0x87, 0x0e, 0xf7, 0xd2, 0x29, 0xec, 0x1f, 0x75, 0x9b, 0xf6, 0xad, 0x74, 0x34, + 0x26, 0xd8, 0xa0, 0x13, 0xb0, 0xd8, 0x78, 0x79, 0x3e, 0x04, 0x70, 0x1c, 0x33, 0x68, 0xc9, 0x98, + 0x97, 0x3c, 0x90, 0xb6, 0x4d, 0x38, 0xff, 0xaa, 0x7b, 0xe9, 0xf4, 0xb9, 0xa3, 0x76, 0xeb, 0xbe, + 0x48, 0x3c, 0x5d, 0xbf, 0x66, 0x22, 0xf1, 0xa5, 0x93, 0xfd, 0xb3, 0xb4, 0xf9, 0x57, 0x8a, 0xc8, + 0x2f, 0xbd, 0x38, 0xdf, 0x7c, 0x61, 0x29, 0x31, 0x14, 0x59, 0x4a, 0x5c, 0xbd, 0x2e, 0xa3, 0xf1, + 0x59, 0x27, 0x0d, 0xc9, 0xab, 0x26, 0x52, 0xb1, 0x04, 0x5e, 0x78, 0x0d, 0x21, 0x5a, 0x2d, 0xa2, + 0x41, 0x13, 0x59, 0x63, 0xcf, 0x1e, 0x1a, 0xca, 0x7c, 0xa1, 0x54, 0xdd, 0x76, 0xf3, 0x76, 0x3a, + 0x4c, 0x27, 0x74, 0x50, 0xbb, 0xf9, 0xaf, 0x2e, 0x74, 0xb3, 0x2d, 0xd0, 0x76, 0x93, 0x71, 0x24, + 0xce, 0x51, 0x35, 0x4b, 0x7b, 0x13, 0xae, 0x59, 0x01, 0x64, 0x95, 0x02, 0xe3, 0x89, 0xc5, 0x1c, + 0x50, 0x05, 0x2f, 0xfb, 0x6e, 0xbe, 0xa7, 0x56, 0x9d, 0x74, 0xb3, 0x93, 0x58, 0xbb, 0xf9, 0xaf, + 0x2d, 0x74, 0xb3, 0x13, 0xd9, 0x76, 0xd3, 0x08, 0xcb, 0x18, 0x65, 0x06, 0xc9, 0xc8, 0x04, 0x88, + 0xbe, 0xb1, 0x99, 0xca, 0x41, 0x62, 0x19, 0xb3, 0x8b, 0x84, 0xac, 0xc8, 0x7c, 0x68, 0x28, 0xb3, + 0x76, 0xf3, 0xee, 0xfa, 0xe1, 0x56, 0xe8, 0x3e, 0xd1, 0xe9, 0xad, 0xd0, 0xfc, 0xa7, 0x74, 0xf4, + 0xb3, 0x8a, 0xd4, 0xa7, 0x2e, 0xce, 0x37, 0x5f, 0x54, 0x8a, 0x34, 0x52, 0x9b, 0x22, 0xd0, 0x14, + 0x69, 0xbb, 0x6a, 0x51, 0x09, 0xc1, 0x50, 0x03, 0xb2, 0xe8, 0x9b, 0x75, 0xb2, 0x04, 0xa5, 0x0e, + 0xac, 0xe0, 0x89, 0x47, 0xa5, 0xc9, 0xe6, 0xdc, 0x8b, 0x7d, 0x8e, 0xe8, 0xf4, 0x19, 0xa2, 0x4a, + 0xa2, 0x8f, 0xae, 0x1f, 0x99, 0x89, 0xad, 0xbd, 0xfd, 0xd7, 0x87, 0x9b, 0x9f, 0x33, 0xb9, 0x9d, + 0x5a, 0x13, 0xa7, 0x2c, 0x94, 0x05, 0x26, 0x1c, 0x36, 0x26, 0x87, 0x81, 0x6f, 0x66, 0x99, 0x36, + 0x1a, 0xbd, 0x0e, 0x56, 0x3b, 0xde, 0xac, 0x0c, 0x57, 0x47, 0x82, 0x6b, 0x87, 0xbf, 0x75, 0xb5, + 0x7e, 0xac, 0x13, 0xdd, 0xd0, 0xbc, 0xb3, 0x79, 0xb5, 0xd7, 0x9f, 0x3d, 0xdc, 0xfc, 0xed, 0xa4, + 0x37, 0xc5, 0x3a, 0x73, 0xd7, 0xf6, 0xdc, 0x3b, 0x1f, 0x1c, 0x7a, 0x03, 0x8d, 0x4f, 0x09, 0x48, + 0x2a, 0x81, 0x55, 0x26, 0x42, 0x08, 0x9a, 0xe5, 0x44, 0x9a, 0x04, 0x6b, 0x00, 0x3c, 0x5c, 0x01, + 0x34, 0x0d, 0xb4, 0xa6, 0xae, 0xf4, 0xfe, 0x3b, 0x56, 0xeb, 0xc7, 0x17, 0x31, 0xd4, 0x21, 0xf8, + 0x13, 0x43, 0x6b, 0xb7, 0x08, 0xa2, 0x1b, 0x06, 0xe4, 0x46, 0x89, 0xc8, 0xc1, 0x08, 0x2b, 0x00, + 0x63, 0xb2, 0x40, 0x26, 0x72, 0x48, 0x5a, 0xeb, 0xc4, 0x9d, 0x89, 0x3c, 0x36, 0x6a, 0x7f, 0x64, + 0x86, 0xa2, 0x0e, 0xc5, 0x77, 0x4e, 0x60, 0x6c, 0xed, 0x4c, 0x19, 0x8b, 0xf5, 0x2e, 0x18, 0x5b, + 0x13, 0x53, 0x07, 0x23, 0x38, 0x6e, 0x85, 0xca, 0x19, 0xbc, 0x14, 0x08, 0x28, 0x9d, 0x00, 0xc7, + 0x52, 0x06, 0xca, 0x1a, 0x83, 0x89, 0xd2, 0x19, 0xd5, 0x98, 0x95, 0x47, 0xb7, 0x30, 0xfa, 0x16, + 0xca, 0x70, 0x34, 0x71, 0xd2, 0x32, 0x8e, 0x3a, 0x1e, 0x7f, 0x72, 0x68, 0x73, 0x97, 0x81, 0x74, + 0xf3, 0xc0, 0x19, 0x46, 0xbe, 0xf1, 0x5c, 0xac, 0x4d, 0x80, 0x59, 0x4a, 0xf0, 0x32, 0x6b, 0xd0, + 0x42, 0xd8, 0x68, 0x72, 0x30, 0x31, 0x17, 0x9b, 0xbb, 0x80, 0xa4, 0x0e, 0xc9, 0x76, 0x0e, 0xee, + 0x1f, 0x9e, 0xa5, 0x93, 0xc3, 0x6e, 0xda, 0x7f, 0xce, 0xc2, 0x1c, 0xec, 0x4a, 0x74, 0x93, 0x81, + 0x9c, 0x54, 0x41, 0x46, 0x88, 0xe5, 0x18, 0x45, 0x24, 0x03, 0x1e, 0x25, 0x03, 0x2b, 0x5d, 0xb3, + 0x1c, 0x1a, 0x9b, 0x5d, 0xda, 0x4e, 0x86, 0xb6, 0x6e, 0xe9, 0xff, 0xbd, 0xed, 0x1c, 0xec, 0x84, + 0xd6, 0x8e, 0x7f, 0xee, 0xd2, 0x1c, 0xec, 0xa4, 0xb6, 0x5d, 0xb6, 0xc9, 0x31, 0xa9, 0x95, 0x04, + 0xef, 0x82, 0x07, 0x8c, 0xda, 0x03, 0x09, 0x66, 0x20, 0x99, 0x20, 0xb8, 0x89, 0xca, 0x04, 0x2e, + 0xb6, 0x53, 0xa1, 0xad, 0x5c, 0x3b, 0x1b, 0xd7, 0xaf, 0x6c, 0xe5, 0x7e, 0xc4, 0xb6, 0xb3, 0xfe, + 0x15, 0x45, 0xe2, 0x17, 0x5c, 0x9c, 0x6f, 0x4c, 0xf9, 0xb1, 0x91, 0xf8, 0x11, 0xdb, 0xcf, 0x77, + 0xdb, 0x18, 0x36, 0x6f, 0xc1, 0x69, 0xed, 0x01, 0x95, 0x0d, 0x40, 0x0d, 0xeb, 0xb5, 0x92, 0x3a, + 0x4b, 0xd4, 0xce, 0x94, 0x38, 0xfd, 0x73, 0x8a, 0xac, 0xaf, 0xb4, 0x75, 0xaa, 0xdf, 0x5e, 0xbf, + 0x6a, 0x20, 0xa5, 0x76, 0xec, 0x95, 0x45, 0xcc, 0x17, 0x5e, 0x9c, 0x6f, 0x6c, 0xf9, 0xb5, 0x13, + 0xd3, 0xf6, 0xc9, 0x69, 0x2d, 0xad, 0xd1, 0x01, 0x22, 0x97, 0xb9, 0x89, 0x76, 0x2d, 0xf8, 0x94, + 0x02, 0x98, 0x9c, 0x78, 0x66, 0x31, 0x3a, 0x67, 0x1b, 0x42, 0x7d, 0x6e, 0x27, 0xa7, 0x76, 0xe7, + 0xce, 0xfa, 0x6a, 0x2b, 0xe8, 0x80, 0x7c, 0x3a, 0x68, 0x7b, 0xf4, 0xaa, 0x22, 0xea, 0x8b, 0x2f, + 0xce, 0x37, 0x9f, 0x5f, 0x7e, 0x6f, 0x44, 0xd5, 0xdf, 0x3b, 0xf6, 0x1a, 0xe4, 0x29, 0xd9, 0x08, + 0xa8, 0xad, 0x04, 0xf4, 0x3e, 0x82, 0x55, 0x82, 0x43, 0xb4, 0x28, 0x29, 0x7b, 0xb2, 0xaa, 0xec, + 0x32, 0xbf, 0xb2, 0x08, 0x7b, 0x6f, 0xa9, 0x39, 0x59, 0x07, 0x5b, 0x71, 0xb5, 0x6b, 0x0f, 0x2d, + 0x2c, 0x10, 0xad, 0xbc, 0xb6, 0x77, 0x02, 0x9d, 0xd1, 0x92, 0x33, 0x10, 0x8a, 0x1c, 0xa0, 0xcd, + 0x08, 0xde, 0x90, 0x04, 0xd2, 0x49, 0x73, 0x16, 0x30, 0x45, 0x54, 0xfd, 0x02, 0x51, 0x05, 0xd6, + 0x0e, 0x6e, 0x8d, 0xe6, 0xc1, 0x51, 0xa0, 0x83, 0xc1, 0x78, 0x5e, 0x5d, 0x30, 0x9a, 0xa5, 0xcc, + 0x70, 0x54, 0x83, 0xb7, 0x1e, 0x45, 0xce, 0x90, 0x4d, 0x56, 0x80, 0x91, 0x31, 0x20, 0x2b, 0x24, + 0x58, 0xc6, 0x6c, 0xf2, 0x56, 0x7b, 0x24, 0xdd, 0x33, 0xe5, 0xbd, 0x4d, 0xed, 0x7e, 0x68, 0xb7, + 0x7d, 0x1d, 0x59, 0xcb, 0x57, 0x2f, 0xf4, 0x75, 0x6c, 0x27, 0x53, 0x74, 0x39, 0x3a, 0x43, 0xe0, + 0x3c, 0x13, 0x80, 0x9e, 0x3b, 0x20, 0xa5, 0x11, 0x4c, 0x52, 0xc1, 0x92, 0x50, 0x29, 0x2a, 0xea, + 0xfb, 0x3a, 0x34, 0x91, 0xdb, 0x89, 0x38, 0xb6, 0x8d, 0xaf, 0x59, 0x98, 0x88, 0x13, 0xab, 0x98, + 0x59, 0x64, 0x8e, 0x27, 0x01, 0x56, 0x69, 0x09, 0xe8, 0xa4, 0x06, 0xaf, 0x53, 0x02, 0x83, 0x26, + 0xe4, 0x80, 0x59, 0x7a, 0x8f, 0xfd, 0x44, 0x1c, 0x19, 0xc4, 0x6d, 0x37, 0x0f, 0xd3, 0xd9, 0x4b, + 0x47, 0x27, 0x1f, 0xa9, 0xdd, 0x7c, 0x78, 0xa1, 0x9b, 0x6d, 0x81, 0x8e, 0x43, 0x3a, 0xdb, 0x64, + 0x39, 0x41, 0xa6, 0xa6, 0x9b, 0x46, 0x19, 0x70, 0xd9, 0x64, 0xe0, 0x0c, 0x75, 0x62, 0xcc, 0x2a, + 0x94, 0xbe, 0xef, 0xe6, 0x57, 0xd5, 0xaa, 0x93, 0x6e, 0x76, 0x12, 0x6b, 0x37, 0x1f, 0x59, 0xe8, + 0x66, 0x27, 0xb2, 0xa3, 0x91, 0x8f, 0x2c, 0x3b, 0xc1, 0xc1, 0x46, 0xeb, 0x01, 0x35, 0x06, 0x20, + 0x27, 0x14, 0xa0, 0xa7, 0x60, 0xb3, 0x15, 0xca, 0xe6, 0xed, 0x9a, 0xdf, 0xca, 0x9c, 0x2d, 0x81, + 0xc7, 0x27, 0x47, 0x1f, 0xfd, 0xd8, 0x58, 0xa9, 0x8f, 0x2e, 0x2c, 0x81, 0xa5, 0xd8, 0x44, 0xb5, + 0x22, 0xa1, 0x8b, 0x2e, 0x88, 0x66, 0xcd, 0x13, 0x80, 0x5c, 0x20, 0x38, 0xef, 0x08, 0x5c, 0x56, + 0xd1, 0x5b, 0x67, 0x29, 0x04, 0xd7, 0x2f, 0x81, 0x1f, 0x68, 0x1a, 0xd8, 0xb1, 0x04, 0x8e, 0x31, + 0xd4, 0xfe, 0x6f, 0x16, 0xd6, 0x9e, 0x31, 0x88, 0x76, 0x14, 0x88, 0x89, 0xe4, 0x72, 0x08, 0x40, + 0x8c, 0x3b, 0x40, 0x13, 0x3c, 0x78, 0x26, 0x04, 0x90, 0x64, 0x2a, 0x2a, 0xcf, 0x29, 0x69, 0xd5, + 0x2f, 0x81, 0x43, 0x14, 0x75, 0x28, 0xbe, 0x61, 0xfd, 0xd0, 0x08, 0x45, 0x19, 0x81, 0xc7, 0x86, + 0x07, 0x1e, 0x23, 0xe1, 0xb5, 0xe7, 0x4e, 0x99, 0x98, 0x8c, 0x24, 0x88, 0x36, 0x0a, 0x40, 0x4d, + 0x0e, 0x48, 0x44, 0x0d, 0xdc, 0x29, 0xa6, 0x63, 0xe0, 0x21, 0xa4, 0x46, 0xe6, 0x2b, 0xb6, 0x32, + 0x97, 0xbb, 0x7c, 0x9a, 0xc2, 0xdd, 0x93, 0xfd, 0xb3, 0x56, 0xea, 0xe3, 0x3b, 0xbb, 0xdc, 0x95, + 0xeb, 0xc8, 0x16, 0xb2, 0x8f, 0x1c, 0x3d, 0x28, 0x6d, 0x22, 0x20, 0xcb, 0x1c, 0x1c, 0xf7, 0x0a, + 0xb2, 0x10, 0x8a, 0x49, 0x32, 0x29, 0x7a, 0x31, 0xee, 0xf2, 0xf3, 0x6d, 0x03, 0x05, 0xc6, 0x77, + 0x6f, 0x57, 0xdb, 0x09, 0x8c, 0x3a, 0xf4, 0xaf, 0x5d, 0x58, 0x6d, 0x27, 0x38, 0x3a, 0x83, 0xe2, + 0x6c, 0x54, 0x46, 0x71, 0xd0, 0x24, 0x39, 0xa0, 0x41, 0x02, 0x9b, 0x52, 0x6e, 0x82, 0xad, 0x68, + 0x5d, 0x42, 0xa3, 0xcb, 0x81, 0xcc, 0xa3, 0x73, 0x20, 0x53, 0xdf, 0xb3, 0x02, 0x79, 0x89, 0x72, + 0x1d, 0x8a, 0xd7, 0x2d, 0xac, 0x7b, 0x15, 0xc2, 0x4b, 0x94, 0xdb, 0x51, 0x90, 0x3e, 0x11, 0x27, + 0x95, 0x41, 0xaa, 0x98, 0x00, 0x4d, 0x42, 0xb0, 0x26, 0x12, 0x88, 0x98, 0xbd, 0xb7, 0x96, 0x32, + 0x17, 0xdb, 0xe5, 0xb6, 0x08, 0x7f, 0x81, 0xf2, 0xc4, 0xf7, 0xdc, 0x8a, 0xad, 0x5d, 0x7f, 0xfd, + 0x82, 0x19, 0xdd, 0xca, 0x6d, 0x7b, 0xcd, 0x94, 0x45, 0xa5, 0x35, 0x03, 0xf4, 0x91, 0x00, 0x13, + 0x66, 0xb0, 0x42, 0x71, 0xb0, 0x49, 0x59, 0x1e, 0x99, 0x30, 0xac, 0xcc, 0xbb, 0xab, 0x23, 0xc1, + 0xd3, 0x15, 0xaa, 0x95, 0x5c, 0xa4, 0x5e, 0x5b, 0x58, 0xa1, 0x5a, 0xa9, 0x55, 0xa2, 0x16, 0xa4, + 0x93, 0xd0, 0x1a, 0xbc, 0x0f, 0x0c, 0x50, 0x89, 0xc6, 0xcd, 0xcb, 0x11, 0x58, 0xb3, 0x4e, 0x89, + 0x1c, 0x28, 0xe7, 0xed, 0x0a, 0x55, 0x25, 0x4e, 0xcc, 0xd9, 0x69, 0x0a, 0x27, 0xe9, 0xac, 0x5d, + 0x11, 0xdf, 0xb0, 0x60, 0xce, 0xda, 0x02, 0xed, 0xd8, 0xf2, 0x98, 0xb3, 0x46, 0xd6, 0x38, 0xd5, + 0xde, 0x02, 0x7a, 0x2b, 0xc1, 0x2b, 0x45, 0xa0, 0x31, 0x90, 0x4a, 0xde, 0x65, 0x5d, 0x5c, 0x99, + 0x6a, 0xce, 0x9e, 0xaf, 0x55, 0x27, 0xe6, 0xac, 0x93, 0x58, 0xbb, 0xf8, 0xc6, 0x05, 0x73, 0xd6, + 0x89, 0x6c, 0x3b, 0x99, 0xb8, 0x30, 0x8c, 0x94, 0x05, 0xc1, 0xb9, 0x06, 0xf4, 0xc2, 0x83, 0x75, + 0x9e, 0x81, 0xf7, 0xd6, 0x39, 0xc3, 0xb5, 0xa7, 0x72, 0xbb, 0xe9, 0xa1, 0xa1, 0xcc, 0xda, 0xcd, + 0x6f, 0xe9, 0x69, 0x74, 0x97, 0xda, 0x33, 0xbe, 0xda, 0xd1, 0x37, 0x0f, 0x36, 0x31, 0x3a, 0x1a, + 0xdd, 0xa5, 0xf6, 0xa0, 0xaf, 0x73, 0x69, 0x64, 0x62, 0x14, 0xa2, 0x04, 0xed, 0x0d, 0x6f, 0x5c, + 0x0d, 0x01, 0xce, 0x68, 0x02, 0x72, 0x4a, 0x0a, 0x69, 0x51, 0x78, 0x8e, 0x83, 0xcd, 0xc7, 0x2a, + 0xfe, 0x43, 0x54, 0x4f, 0xfb, 0x4a, 0x9f, 0x3f, 0xbe, 0xea, 0xf9, 0xb4, 0x95, 0x5f, 0xbb, 0x7d, + 0x7d, 0x70, 0xe0, 0xf0, 0xc8, 0x0c, 0x40, 0xb7, 0x5c, 0x71, 0x96, 0xb2, 0xb2, 0x16, 0x8c, 0x69, + 0x88, 0xcc, 0x83, 0x02, 0x6b, 0x44, 0x84, 0x6c, 0x62, 0x54, 0x51, 0x06, 0xcf, 0xb5, 0x18, 0x20, + 0xb8, 0x3a, 0x42, 0x30, 0x75, 0xe4, 0x1a, 0x04, 0xa5, 0xef, 0x6f, 0x59, 0x70, 0xe4, 0x1a, 0xd1, + 0xed, 0xb2, 0x9c, 0x35, 0xe9, 0xe0, 0x24, 0xc4, 0xa8, 0x74, 0x63, 0xbb, 0x0d, 0xb8, 0xc6, 0x0f, + 0x31, 0x9e, 0xa3, 0x2e, 0x7b, 0xae, 0x7e, 0xeb, 0xc8, 0x7d, 0x88, 0xee, 0x4c, 0x1c, 0xb9, 0x46, + 0x4a, 0xed, 0xe1, 0x5b, 0x17, 0x1c, 0xb9, 0x46, 0x4c, 0xc7, 0xdc, 0x14, 0xb8, 0xb2, 0xda, 0x41, + 0xcc, 0xac, 0x61, 0x2e, 0x5a, 0xb0, 0x89, 0x49, 0x88, 0x3e, 0x58, 0xc2, 0xe4, 0xa2, 0x42, 0xea, + 0x1d, 0xb9, 0x0f, 0xd1, 0x9d, 0xd9, 0xfa, 0x74, 0x6f, 0xff, 0xe4, 0xec, 0x2e, 0x1d, 0xdc, 0x3a, + 0xdd, 0x3f, 0x4b, 0x2d, 0x7d, 0xdf, 0xb6, 0xb0, 0x3e, 0xb5, 0xc5, 0xa0, 0x14, 0x6b, 0xfb, 0x18, + 0x05, 0x53, 0x2a, 0xfb, 0x08, 0x42, 0x88, 0x72, 0x80, 0xc3, 0xc1, 0x1a, 0xa9, 0xc1, 0xb2, 0x94, + 0x48, 0x28, 0x6d, 0x75, 0xd9, 0x4c, 0xad, 0xeb, 0xd3, 0x87, 0x6b, 0x03, 0xcf, 0x37, 0xf5, 0xa7, + 0xc6, 0x7a, 0x8c, 0xa1, 0xf6, 0xfb, 0xed, 0x0b, 0xc6, 0x7a, 0x0c, 0xa2, 0x1d, 0x01, 0x85, 0x01, + 0x9b, 0x68, 0x18, 0xb8, 0x76, 0x19, 0x50, 0xc7, 0xb2, 0xa5, 0xab, 0x40, 0x44, 0xe4, 0xa8, 0x94, + 0xf2, 0x36, 0xdb, 0xde, 0x58, 0x0f, 0x51, 0x4c, 0x5d, 0xbe, 0x7b, 0x47, 0x07, 0x67, 0xb7, 0x4e, + 0x5f, 0xa4, 0x2e, 0x3a, 0x7b, 0xc7, 0x82, 0xad, 0x6a, 0xca, 0x40, 0x29, 0xd3, 0xe9, 0xd9, 0x64, + 0xe3, 0x30, 0x34, 0xde, 0x08, 0x17, 0x35, 0x28, 0x72, 0x52, 0x28, 0x88, 0x56, 0x25, 0xcf, 0x83, + 0x94, 0x14, 0x4d, 0xcf, 0xa9, 0x0f, 0x1f, 0x1d, 0x9c, 0x3d, 0xdf, 0x54, 0x2e, 0x03, 0xf0, 0xcd, + 0xeb, 0x47, 0xe7, 0x92, 0x6b, 0xe7, 0xdf, 0x39, 0xdc, 0xcc, 0x9e, 0x8b, 0xee, 0x82, 0x53, 0x29, + 0x98, 0x11, 0x5e, 0x83, 0xc6, 0x98, 0x1b, 0x63, 0x69, 0x80, 0x98, 0x64, 0x40, 0xe8, 0xac, 0xf5, + 0xd8, 0x78, 0x08, 0xf9, 0xc6, 0x95, 0x9b, 0xaf, 0x1e, 0xcb, 0x9e, 0x76, 0xfb, 0xa5, 0xe4, 0x47, + 0x1b, 0x5e, 0xef, 0x5a, 0xe8, 0xf6, 0x4b, 0xc9, 0x8f, 0xf7, 0xb9, 0xac, 0xc9, 0x2e, 0x24, 0x47, + 0xc0, 0x18, 0x33, 0x80, 0x36, 0x78, 0x70, 0xca, 0x0b, 0xd0, 0xd6, 0x79, 0x9d, 0x39, 0x57, 0x39, + 0x6f, 0x3d, 0xdd, 0x17, 0x92, 0x1f, 0xec, 0x6e, 0x6d, 0xbb, 0x3d, 0x90, 0x5c, 0xbb, 0xfd, 0xee, + 0x85, 0x6e, 0x0f, 0x44, 0xb7, 0xdd, 0x8e, 0x5c, 0x23, 0x8b, 0x14, 0x20, 0xe4, 0x84, 0x8d, 0x41, + 0xf1, 0x8d, 0x83, 0xcd, 0xc1, 0xa8, 0xa4, 0x5d, 0xe4, 0x5c, 0x39, 0xee, 0xfb, 0x6e, 0xf7, 0xb2, + 0x6b, 0xb7, 0xbf, 0x6b, 0xb5, 0xde, 0xb4, 0xd2, 0xcf, 0xd2, 0x21, 0x1d, 0x9e, 0xdd, 0x3a, 0x7a, + 0xe9, 0x30, 0xb5, 0x7e, 0x19, 0x0c, 0xce, 0x9a, 0x36, 0xad, 0xf8, 0x5a, 0x0a, 0x4a, 0xa9, 0xde, + 0xe3, 0x26, 0x66, 0x42, 0x0c, 0x20, 0x82, 0x6b, 0x82, 0x71, 0x45, 0xe0, 0xa5, 0xb4, 0xe0, 0xad, + 0xc9, 0x4c, 0x90, 0x65, 0x19, 0xf5, 0xc0, 0x9c, 0xbc, 0xa6, 0xe0, 0xf8, 0x60, 0x69, 0xe7, 0xfd, + 0x4d, 0x33, 0x65, 0x14, 0xbe, 0x77, 0x3b, 0x03, 0x47, 0x40, 0xea, 0x40, 0x3c, 0x31, 0x38, 0x5a, + 0x7a, 0x6c, 0x09, 0x49, 0xe7, 0x1f, 0x64, 0x24, 0x8d, 0x11, 0x41, 0x38, 0x17, 0xa0, 0x31, 0xa5, + 0xe0, 0x13, 0x2f, 0x6e, 0x22, 0x13, 0x56, 0x46, 0x29, 0xdd, 0xd0, 0xb2, 0x3d, 0x3c, 0x85, 0x32, + 0xb3, 0x06, 0xa7, 0x67, 0x47, 0x27, 0x29, 0xde, 0x3a, 0xf2, 0xdf, 0x90, 0xc2, 0x59, 0x1d, 0x95, + 0x27, 0x17, 0xac, 0x41, 0x2d, 0x06, 0xb5, 0x58, 0x37, 0x2c, 0x2e, 0x65, 0x4c, 0xe8, 0x21, 0xe4, + 0xc6, 0x4f, 0x0c, 0x29, 0x00, 0x85, 0xc6, 0x65, 0xce, 0xe8, 0x8c, 0x72, 0x92, 0xa4, 0x11, 0x3d, + 0x86, 0xe7, 0x4b, 0x03, 0xef, 0x2f, 0xf5, 0xa7, 0xd6, 0x60, 0x8c, 0xa1, 0x0e, 0x08, 0x5b, 0xb0, + 0x06, 0x63, 0x10, 0xed, 0x88, 0x70, 0x2b, 0xa3, 0xb5, 0xd6, 0x15, 0x43, 0x0b, 0x28, 0xad, 0x07, + 0x72, 0xcd, 0x00, 0x59, 0xe7, 0x84, 0x4a, 0x2a, 0x89, 0xb0, 0xf5, 0x56, 0x87, 0x28, 0x06, 0x1b, + 0x36, 0x47, 0x07, 0x67, 0xfd, 0x19, 0xc2, 0x8b, 0x74, 0x9c, 0x6e, 0xf9, 0xa3, 0x76, 0x2c, 0xf8, + 0x08, 0xc6, 0xb6, 0x1c, 0x94, 0x72, 0xe0, 0x8f, 0xba, 0xc1, 0x70, 0x49, 0x64, 0x43, 0xd1, 0x00, + 0xcf, 0xc9, 0x34, 0x71, 0x7c, 0x06, 0xe7, 0x9a, 0x49, 0x22, 0x99, 0xb5, 0xdc, 0x28, 0x19, 0x1c, + 0x2f, 0x8e, 0xdb, 0xb6, 0x8d, 0xe7, 0x9b, 0x26, 0x9e, 0x3e, 0x3a, 0xdb, 0x6e, 0xd8, 0x2c, 0xe2, + 0xa8, 0xe3, 0x21, 0x46, 0x2e, 0xe4, 0x22, 0x90, 0xce, 0x7d, 0xf7, 0xdc, 0x9a, 0x14, 0x05, 0xa8, + 0x18, 0x1a, 0xb5, 0x70, 0x0f, 0x94, 0x1b, 0x9b, 0x91, 0xd0, 0x89, 0xe8, 0xbc, 0x13, 0x25, 0x56, + 0xdb, 0x2c, 0x20, 0xa9, 0x43, 0xf2, 0xc3, 0x3b, 0xa1, 0xd4, 0x0d, 0x7b, 0x39, 0x38, 0x41, 0xde, + 0x01, 0xa5, 0xbb, 0xd2, 0x88, 0x31, 0x59, 0xe5, 0x08, 0xb8, 0x8f, 0x1c, 0xd0, 0x1b, 0x01, 0x96, + 0x49, 0x03, 0xcc, 0x47, 0x61, 0x84, 0x16, 0x96, 0x8b, 0xe1, 0x31, 0xe4, 0x12, 0xa4, 0xba, 0x6f, + 0xff, 0xd7, 0x57, 0xeb, 0xb7, 0x2d, 0x43, 0x3a, 0xbd, 0xeb, 0x4f, 0xc3, 0xc9, 0x7e, 0xb9, 0xd7, + 0x7f, 0xeb, 0xce, 0xed, 0x3b, 0x67, 0x1b, 0x2c, 0xf0, 0xfe, 0xf4, 0xc5, 0xf9, 0xe6, 0x85, 0x51, + 0xa5, 0x01, 0xbc, 0x61, 0x25, 0x68, 0x2a, 0x5d, 0xbd, 0x4e, 0x39, 0x71, 0x49, 0xce, 0x80, 0x76, + 0xd2, 0x01, 0x6a, 0xd9, 0x98, 0x75, 0xc3, 0x21, 0x20, 0x26, 0xce, 0x95, 0x51, 0x46, 0x9a, 0x01, + 0xd4, 0x37, 0x2f, 0x40, 0x7d, 0x7e, 0xd0, 0xea, 0xfb, 0x9a, 0x46, 0x7f, 0x7c, 0xb5, 0x7e, 0xe3, + 0x1c, 0xf5, 0x49, 0x0a, 0x47, 0xb7, 0x0f, 0xf7, 0xbf, 0xa9, 0x5d, 0x74, 0xd4, 0xf0, 0xbc, 0x7b, + 0x0e, 0xb7, 0x2f, 0xdd, 0x2d, 0xc1, 0x29, 0xe6, 0xc0, 0xa3, 0x05, 0x61, 0xb2, 0x06, 0x8c, 0xd2, + 0x80, 0xd7, 0x5c, 0x83, 0x8b, 0x52, 0x0b, 0xe4, 0x81, 0x62, 0x6c, 0xb4, 0xfb, 0xfa, 0x29, 0xbe, + 0x9b, 0x5d, 0x3b, 0x85, 0x6d, 0x3f, 0xb5, 0x5a, 0x7f, 0xde, 0x65, 0xc8, 0x2a, 0xe7, 0xf4, 0xf0, + 0xbc, 0xfb, 0x32, 0x68, 0xdd, 0x56, 0xa1, 0x31, 0xde, 0x7a, 0xe5, 0x41, 0xe4, 0x68, 0x01, 0x83, + 0x0f, 0xe0, 0x63, 0x0a, 0xe0, 0x33, 0x17, 0x42, 0x6b, 0x6d, 0xa2, 0x68, 0x96, 0xc6, 0x6b, 0x3b, + 0xb1, 0x55, 0xfe, 0xfd, 0xfc, 0x7d, 0xc0, 0x55, 0x16, 0x9a, 0x02, 0xee, 0x43, 0x17, 0xe7, 0x9b, + 0xaf, 0xbe, 0x1c, 0x5c, 0xcb, 0x45, 0x45, 0x48, 0x31, 0x86, 0x04, 0xc1, 0x22, 0x07, 0xb4, 0x91, + 0x83, 0x0d, 0x96, 0x83, 0x34, 0x41, 0x27, 0xe9, 0x2c, 0x49, 0x31, 0x54, 0xf0, 0x6e, 0x90, 0x95, + 0x91, 0xff, 0x60, 0xb5, 0x86, 0xcb, 0x40, 0xce, 0x79, 0x69, 0x0b, 0x60, 0xba, 0x38, 0xdf, 0x7c, + 0xdd, 0xa8, 0xea, 0x0c, 0xf0, 0x02, 0x3b, 0x45, 0x92, 0x22, 0x92, 0x8d, 0x20, 0x79, 0x31, 0x72, + 0xdc, 0x82, 0xcd, 0x14, 0x40, 0x24, 0x29, 0x45, 0x32, 0x5e, 0x45, 0x3f, 0x04, 0xff, 0x8e, 0x9d, + 0xe0, 0x67, 0x1c, 0xfd, 0xfe, 0xd5, 0xfa, 0x75, 0xc3, 0x7e, 0xd0, 0x7e, 0xa4, 0x33, 0xba, 0xe5, + 0x73, 0x3c, 0xae, 0xfc, 0x74, 0xc3, 0x4b, 0x2c, 0x43, 0xd8, 0xb5, 0x24, 0x34, 0x25, 0xbb, 0x63, + 0x1a, 0x65, 0x42, 0x56, 0xc8, 0x40, 0xcb, 0x88, 0x80, 0xd6, 0x47, 0xf0, 0xc2, 0x78, 0x50, 0x3e, + 0x10, 0xd7, 0xd6, 0xf1, 0x58, 0x76, 0xf0, 0x1f, 0x1b, 0xb4, 0xf2, 0x54, 0x69, 0xe4, 0xe9, 0x1c, + 0x8f, 0x0b, 0x2f, 0x7f, 0x68, 0xb5, 0x7e, 0xfd, 0x2e, 0x34, 0x95, 0x93, 0x9f, 0x3f, 0x3c, 0x45, + 0xdd, 0x05, 0xa7, 0xe5, 0xa3, 0x17, 0x52, 0x1a, 0x65, 0x3c, 0x64, 0x29, 0x18, 0xa0, 0x71, 0x01, + 0xbc, 0xa4, 0x0c, 0x82, 0x82, 0x65, 0xd6, 0xa3, 0x60, 0xae, 0x71, 0x97, 0x1e, 0x5f, 0xc4, 0x53, + 0xb9, 0xf8, 0x63, 0x97, 0x00, 0xaa, 0x3c, 0xfc, 0x82, 0xc1, 0xc5, 0xfb, 0x9d, 0x80, 0x5a, 0x0e, + 0x5a, 0xed, 0x65, 0x96, 0xbe, 0x89, 0xa8, 0xb5, 0x01, 0xd4, 0x46, 0x83, 0x27, 0x8f, 0x40, 0x3c, + 0xe4, 0x20, 0x98, 0x09, 0x36, 0x0f, 0x57, 0xef, 0x65, 0x60, 0x95, 0x7f, 0x7f, 0x73, 0xb5, 0x7e, + 0xc7, 0x2e, 0x60, 0x73, 0xee, 0x7d, 0x61, 0x01, 0xf9, 0x75, 0x17, 0xe7, 0x9b, 0xaf, 0x19, 0x55, + 0x1b, 0x81, 0x5c, 0xe0, 0x9d, 0x0a, 0x41, 0x8b, 0x2c, 0x13, 0xa4, 0x68, 0x0d, 0xa0, 0x21, 0x05, + 0x3e, 0x4b, 0x01, 0xc6, 0x66, 0x8e, 0x56, 0xa0, 0x30, 0x22, 0x0e, 0x00, 0xbf, 0x65, 0x11, 0xf0, + 0x8c, 0x73, 0x3f, 0xb3, 0x5a, 0xbf, 0x69, 0x34, 0x77, 0x3e, 0x76, 0x78, 0xf6, 0x62, 0x3a, 0xdb, + 0xde, 0x30, 0xa9, 0xcc, 0xfb, 0xa2, 0xe1, 0x5d, 0xf5, 0xd1, 0x84, 0xe9, 0xca, 0x4f, 0xb6, 0xcf, + 0x2c, 0xe5, 0x54, 0x8f, 0x87, 0x55, 0xe6, 0x80, 0x82, 0x34, 0x38, 0xe1, 0x05, 0x30, 0x13, 0x92, + 0x09, 0x89, 0x09, 0x49, 0xe5, 0xa2, 0xd2, 0x70, 0x76, 0x74, 0x4d, 0x0d, 0x37, 0xd2, 0x7e, 0x6e, + 0xb5, 0x7e, 0xf3, 0xe5, 0xf8, 0x2a, 0x17, 0xbf, 0x78, 0x78, 0x95, 0xea, 0x72, 0x80, 0xdd, 0x06, + 0xa3, 0xd3, 0x5c, 0x69, 0x0a, 0x90, 0xb2, 0x17, 0x8d, 0xcb, 0xc4, 0xc1, 0xba, 0xc4, 0x40, 0x0b, + 0xad, 0x7c, 0x72, 0x48, 0x52, 0x35, 0xd6, 0xfb, 0x8d, 0x97, 0x20, 0xac, 0xbc, 0xfc, 0xe4, 0x7d, + 0x21, 0x56, 0x76, 0x7e, 0x49, 0x81, 0xf8, 0xc2, 0xc5, 0xf9, 0xe6, 0xf9, 0xfb, 0x41, 0x6c, 0x39, + 0x4a, 0x8a, 0xeb, 0x64, 0x45, 0x79, 0x68, 0xa6, 0x00, 0x31, 0x86, 0x7a, 0xf5, 0x40, 0x59, 0x64, + 0xc2, 0x46, 0x32, 0x29, 0xf2, 0x81, 0xca, 0x2f, 0x83, 0x5a, 0x99, 0xfa, 0x4f, 0x57, 0xeb, 0x27, + 0x2f, 0x87, 0x3a, 0xe7, 0xeb, 0x97, 0x16, 0xd8, 0xe1, 0xe2, 0x7c, 0x73, 0x6b, 0x54, 0x79, 0x01, + 0xf6, 0x02, 0x6b, 0x2d, 0x25, 0x19, 0xb8, 0x52, 0xe0, 0x9d, 0xf2, 0x80, 0x39, 0x26, 0x70, 0x2e, + 0x11, 0x90, 0x4d, 0x94, 0x84, 0x71, 0x31, 0xa8, 0x30, 0xe8, 0xc2, 0xbb, 0x2e, 0xe9, 0xc2, 0x7d, + 0xed, 0x65, 0xeb, 0xcb, 0x37, 0x82, 0x2b, 0x6b, 0x9f, 0xda, 0x65, 0x2f, 0x5b, 0x77, 0xbe, 0x29, + 0xd9, 0xdf, 0x1d, 0x10, 0x16, 0x1b, 0xef, 0x3d, 0x0a, 0x69, 0x00, 0x05, 0xe7, 0xe0, 0xad, 0x42, + 0xe0, 0x81, 0xc7, 0xe4, 0xb8, 0xcb, 0x5e, 0xbb, 0x89, 0xbd, 0xac, 0xae, 0x7c, 0x83, 0x64, 0xd1, + 0x5e, 0x0e, 0xd1, 0x54, 0x8e, 0x3e, 0xbd, 0xcb, 0x5e, 0x0e, 0xe1, 0x74, 0x9e, 0x23, 0xb7, 0x4a, + 0x09, 0xed, 0x9b, 0x71, 0xb3, 0x80, 0xdc, 0x44, 0x20, 0xa1, 0x05, 0x24, 0xa3, 0x43, 0x64, 0x56, + 0x21, 0xe5, 0xa9, 0xbd, 0xdc, 0xe2, 0x59, 0xb6, 0x97, 0x43, 0x40, 0x95, 0x91, 0xcf, 0xec, 0xb2, + 0x97, 0x43, 0x40, 0xdd, 0xd5, 0x29, 0x2d, 0x5c, 0xb4, 0x99, 0x83, 0x93, 0x49, 0x00, 0x32, 0xc5, + 0x80, 0x34, 0x12, 0x18, 0xc7, 0x9c, 0x61, 0x3c, 0x04, 0xcc, 0x76, 0x87, 0xbd, 0xdc, 0x02, 0x5b, + 0xb6, 0x97, 0x43, 0x60, 0x73, 0xfe, 0x3d, 0xbb, 0xcb, 0x5e, 0x0e, 0x41, 0x2e, 0x30, 0xcf, 0xc7, + 0x24, 0xbc, 0x13, 0x1a, 0x98, 0xce, 0x09, 0xb0, 0xf1, 0xc2, 0x29, 0x66, 0xdf, 0xc4, 0x26, 0xc1, + 0xf3, 0xe8, 0x29, 0x8f, 0x36, 0x9e, 0xde, 0xb2, 0x08, 0x78, 0xc6, 0xb9, 0xe9, 0xa0, 0x0e, 0x6e, + 0x02, 0xb6, 0x5a, 0xfe, 0xb2, 0x5d, 0x83, 0x3a, 0xb8, 0x15, 0xd8, 0x7b, 0x69, 0x64, 0xc8, 0xba, + 0xec, 0x40, 0x5b, 0x59, 0x42, 0x48, 0x02, 0x17, 0x5d, 0x06, 0xcd, 0x2d, 0x29, 0xb2, 0x4a, 0x69, + 0x4e, 0x3b, 0x06, 0x75, 0x7b, 0x45, 0xb0, 0x6a, 0xfb, 0x47, 0x27, 0x93, 0x61, 0x08, 0xac, 0x4c, + 0x86, 0x2f, 0x2f, 0xb8, 0x3e, 0x70, 0x71, 0xbe, 0x79, 0xef, 0x78, 0x32, 0x0c, 0x71, 0xd5, 0xc9, + 0xa0, 0xb4, 0x8f, 0x2e, 0x65, 0x05, 0x2e, 0x39, 0x07, 0x48, 0xde, 0x01, 0x35, 0x7f, 0xf5, 0x3a, + 0xa9, 0x48, 0x9a, 0x30, 0xb9, 0xe1, 0x1b, 0x81, 0xc7, 0x16, 0x61, 0x95, 0x49, 0xf1, 0x6d, 0xab, + 0xf5, 0x23, 0x33, 0x54, 0x95, 0x7c, 0xef, 0x19, 0xed, 0x1e, 0x4e, 0xf1, 0x74, 0x97, 0xc1, 0x2c, + 0x93, 0xce, 0x73, 0x0e, 0xc9, 0xc7, 0x0c, 0x98, 0x1d, 0x82, 0xe5, 0x09, 0x41, 0xa3, 0x20, 0x25, + 0x24, 0x9a, 0xc8, 0xd8, 0x28, 0xdc, 0x1f, 0x23, 0xa9, 0x7c, 0xfb, 0xa5, 0xe9, 0x1a, 0xd7, 0x80, + 0x98, 0x13, 0xed, 0x46, 0x01, 0xf4, 0xe1, 0x8b, 0xf3, 0xcd, 0xcd, 0xc9, 0x1a, 0xd7, 0x00, 0x5a, + 0x60, 0x98, 0x46, 0x1f, 0x33, 0x65, 0x04, 0xcf, 0xa2, 0x06, 0xce, 0x1b, 0xf7, 0xda, 0x31, 0x07, + 0x4c, 0xa0, 0xa0, 0xc0, 0x05, 0x63, 0x6c, 0xc8, 0xb0, 0x37, 0x4c, 0xc0, 0xcd, 0xb8, 0xf5, 0x93, + 0x13, 0x67, 0xfb, 0xf0, 0xf6, 0xfe, 0xe1, 0x47, 0xbb, 0x69, 0xb1, 0x7f, 0xd6, 0x06, 0x29, 0xcf, + 0xed, 0x8a, 0x04, 0x4a, 0xf1, 0x6e, 0x3a, 0xec, 0x9f, 0x75, 0x51, 0x0a, 0x5a, 0xad, 0x44, 0x46, + 0x82, 0xc8, 0xca, 0x29, 0x30, 0xc7, 0xc6, 0xc5, 0xf0, 0xc0, 0x10, 0x5d, 0xf4, 0x36, 0x05, 0xae, + 0xd3, 0x24, 0x4a, 0xf9, 0xaa, 0xa6, 0xa5, 0x4a, 0xff, 0xfd, 0xb3, 0x1a, 0xa5, 0x7c, 0x62, 0x32, + 0x86, 0x33, 0x6c, 0x95, 0xfc, 0x5f, 0xb1, 0xcb, 0x4f, 0x98, 0x81, 0xeb, 0xb6, 0x0c, 0x74, 0xa6, + 0x60, 0x7c, 0x80, 0x68, 0xd0, 0x00, 0x7a, 0xa9, 0xc0, 0x59, 0x1b, 0x1a, 0x8b, 0x97, 0x4d, 0x46, + 0x65, 0xb4, 0xf7, 0x93, 0x10, 0x60, 0x8c, 0xae, 0xb2, 0xff, 0x17, 0xef, 0x07, 0xaf, 0x72, 0xee, + 0xfd, 0xbb, 0x54, 0x3c, 0x83, 0xd7, 0xdd, 0x05, 0x77, 0x9a, 0x49, 0x9f, 0x0d, 0x38, 0x63, 0x13, + 0xa0, 0xd4, 0x11, 0xac, 0x10, 0x1a, 0x6c, 0x42, 0xc5, 0xb4, 0x55, 0x29, 0x5a, 0xbf, 0x23, 0x52, + 0x19, 0xc3, 0xac, 0x4c, 0xfc, 0x87, 0xab, 0xf5, 0x13, 0x97, 0xc2, 0x9c, 0xb3, 0xf2, 0x03, 0x05, + 0xb2, 0xbf, 0x38, 0xdf, 0x7c, 0xfd, 0xa8, 0xee, 0x1c, 0xf2, 0x92, 0xcf, 0xe8, 0x44, 0x94, 0x8d, + 0x7b, 0xa3, 0x58, 0xb9, 0x41, 0xe3, 0xcb, 0x0d, 0x26, 0x01, 0xce, 0x65, 0x42, 0x14, 0xc9, 0xe5, + 0xc4, 0x77, 0xc4, 0x2a, 0x63, 0xf8, 0x33, 0xae, 0xfe, 0xd6, 0x6a, 0xfd, 0xf6, 0xcb, 0x07, 0xfc, + 0xf8, 0xf8, 0x60, 0x3f, 0x50, 0x53, 0x61, 0xf3, 0xd5, 0xa5, 0x0f, 0x1f, 0xbc, 0x38, 0xdf, 0x7c, + 0x60, 0x54, 0x6b, 0x61, 0xd8, 0xb7, 0xb5, 0xae, 0x5e, 0xf7, 0x5c, 0x3b, 0xae, 0x92, 0x06, 0xdb, + 0x4c, 0x32, 0xf4, 0x2e, 0x02, 0x31, 0x4c, 0x40, 0x8d, 0xdf, 0x16, 0x2d, 0x51, 0x88, 0xe2, 0xc6, + 0x95, 0x9b, 0xd7, 0x77, 0x0f, 0xfa, 0xa0, 0xb5, 0xb3, 0xf5, 0xd0, 0x38, 0xdc, 0x0a, 0xb1, 0x3d, + 0x45, 0xf9, 0xd0, 0xe8, 0xec, 0x66, 0x80, 0x2d, 0xc4, 0xee, 0x10, 0x85, 0x9c, 0xf2, 0xc6, 0x09, + 0x05, 0x52, 0x11, 0x03, 0x94, 0x24, 0xc0, 0x7a, 0x1e, 0xc1, 0x1b, 0xc9, 0x90, 0x71, 0x67, 0x85, + 0xa9, 0xd7, 0xb1, 0xb6, 0xb5, 0x9f, 0x89, 0xf5, 0xf4, 0xe4, 0xa5, 0xf5, 0xc3, 0x53, 0xa9, 0x75, + 0xa2, 0x7c, 0x78, 0x74, 0x06, 0x38, 0x11, 0xdb, 0x6d, 0xae, 0x67, 0xcf, 0x85, 0xd6, 0x09, 0x14, + 0x6f, 0x8c, 0x9f, 0x08, 0x04, 0x9e, 0x6b, 0x09, 0x2a, 0x59, 0xc5, 0x38, 0x31, 0xf2, 0x51, 0x97, + 0xbd, 0xd6, 0x91, 0xdc, 0x3a, 0x21, 0xfe, 0xfc, 0x5c, 0x70, 0x9d, 0x02, 0x2f, 0x8c, 0x4e, 0x8d, + 0x26, 0x82, 0x5b, 0xd6, 0xcb, 0xec, 0xb2, 0xe7, 0x01, 0x41, 0x93, 0xcb, 0x80, 0x64, 0x6d, 0xe3, + 0xaf, 0x71, 0x70, 0x82, 0x45, 0xe7, 0x9d, 0x94, 0x5a, 0x0c, 0x59, 0x3f, 0x01, 0x50, 0xa9, 0x3e, + 0xdd, 0x39, 0x68, 0x10, 0xcc, 0xd9, 0xfd, 0xa7, 0x76, 0xed, 0x1c, 0x34, 0x68, 0x96, 0xdc, 0x49, + 0x21, 0x8c, 0x41, 0x26, 0xc1, 0xda, 0xc6, 0x23, 0x26, 0x24, 0xf0, 0x26, 0x28, 0xd0, 0x2e, 0x73, + 0x43, 0xd1, 0x09, 0xd4, 0x69, 0xc7, 0x7c, 0x7c, 0x26, 0x1e, 0xce, 0x58, 0xfc, 0x2d, 0xeb, 0x47, + 0x47, 0x0b, 0x03, 0xe5, 0x44, 0x6d, 0xac, 0xfd, 0x35, 0xa3, 0xed, 0xf0, 0xe1, 0x6a, 0x50, 0x0a, + 0x3d, 0xf0, 0x16, 0x90, 0xab, 0xb7, 0x04, 0x06, 0xa6, 0xbf, 0xd4, 0xef, 0xce, 0xd6, 0x36, 0x0b, + 0xf2, 0x2b, 0x43, 0xbe, 0x76, 0x78, 0xa5, 0x7d, 0x01, 0xc0, 0x03, 0x6f, 0xf4, 0x14, 0x04, 0x8f, + 0xcc, 0x10, 0x54, 0x9e, 0x7c, 0xcf, 0x32, 0x84, 0xca, 0x95, 0x3f, 0x3d, 0xda, 0x93, 0x9f, 0x43, + 0x78, 0xe0, 0xed, 0x1c, 0xe7, 0x06, 0x4a, 0x99, 0x43, 0xa9, 0x8c, 0xf9, 0xf5, 0xd5, 0xfa, 0xfa, + 0x02, 0x94, 0x39, 0x69, 0xfe, 0x8d, 0x02, 0xeb, 0x4f, 0x5d, 0x9c, 0x6f, 0x3e, 0x38, 0xaa, 0xd1, + 0xc1, 0xfa, 0x8c, 0x36, 0x6d, 0x46, 0x10, 0x3f, 0x6f, 0x06, 0x71, 0x46, 0x9d, 0x29, 0xbf, 0x69, + 0x7f, 0x09, 0xea, 0xd7, 0xed, 0xe2, 0x37, 0xed, 0x2f, 0xe2, 0x74, 0x92, 0x50, 0x18, 0x2f, 0x80, + 0x9b, 0x64, 0x1a, 0x97, 0x22, 0x82, 0xd5, 0x3c, 0xee, 0x72, 0x29, 0xae, 0x8d, 0x82, 0xfc, 0x39, + 0xc8, 0x89, 0xd1, 0x6b, 0x30, 0x16, 0x72, 0x7f, 0xfd, 0x2e, 0xa3, 0xd7, 0xc0, 0x6a, 0xaf, 0x61, + 0x30, 0x21, 0xa5, 0x6b, 0x66, 0x7e, 0x24, 0x02, 0x8c, 0x29, 0x83, 0x8f, 0x5e, 0x82, 0x40, 0x17, + 0x93, 0x0f, 0x24, 0x85, 0x30, 0x13, 0xa3, 0xf7, 0xd4, 0xfe, 0xf1, 0x92, 0xd1, 0x6b, 0xa4, 0x56, + 0x4a, 0xdf, 0xda, 0x65, 0xf4, 0x1a, 0xb1, 0x1d, 0x9f, 0x93, 0xe0, 0x8c, 0x5c, 0x00, 0x9b, 0x7c, + 0x06, 0x0c, 0x2a, 0x00, 0x51, 0xb6, 0x40, 0x1c, 0x83, 0xe3, 0x36, 0x3b, 0x5d, 0x6e, 0x03, 0xbc, + 0x7a, 0x2c, 0x77, 0xd1, 0xe8, 0x35, 0x82, 0x2b, 0x91, 0xff, 0xcc, 0x2e, 0xa3, 0xd7, 0x08, 0xee, + 0x2e, 0xb4, 0x7b, 0xa1, 0xa5, 0x6a, 0xdc, 0xf0, 0xc8, 0x72, 0xbd, 0xb7, 0x66, 0xb3, 0x52, 0x90, + 0x29, 0x29, 0xed, 0xbc, 0xd0, 0x51, 0x9b, 0x1d, 0x46, 0xef, 0xa9, 0xfd, 0xe3, 0xfe, 0x99, 0xde, + 0x6b, 0x67, 0x08, 0x06, 0x0b, 0x21, 0xed, 0xda, 0xae, 0x2f, 0x38, 0x86, 0x6b, 0x1f, 0x05, 0xe5, + 0x90, 0x35, 0xb1, 0xbe, 0x6a, 0x5c, 0x70, 0x87, 0xcd, 0x9a, 0x13, 0x13, 0x28, 0xcd, 0x44, 0xe2, + 0x26, 0x51, 0x44, 0xb9, 0xc3, 0x05, 0x6f, 0xd0, 0x0c, 0x9a, 0x9a, 0xc6, 0xa5, 0xfd, 0x93, 0xd4, + 0x3e, 0x4c, 0x7e, 0x71, 0x57, 0x5c, 0xda, 0xbf, 0x48, 0xdd, 0xc6, 0xc9, 0x39, 0x31, 0x66, 0xa3, + 0xc8, 0x60, 0x93, 0x49, 0x80, 0x2e, 0x1a, 0xf0, 0x42, 0x28, 0x30, 0x1c, 0x73, 0x20, 0x4a, 0x56, + 0x68, 0x3e, 0x8d, 0x54, 0xda, 0x17, 0xa9, 0x5d, 0xa0, 0xfc, 0x23, 0xab, 0xf5, 0xb5, 0x9d, 0x80, + 0x2a, 0x51, 0xf6, 0x87, 0x4f, 0x19, 0x77, 0x22, 0xea, 0x42, 0x65, 0xc1, 0x03, 0x6f, 0x82, 0xa8, + 0xa8, 0x34, 0x03, 0x54, 0x8e, 0x01, 0x65, 0x6f, 0xc0, 0x98, 0x64, 0xbd, 0x27, 0xee, 0x54, 0xb9, + 0x5a, 0xf1, 0xda, 0x65, 0x48, 0x95, 0x39, 0x3f, 0x79, 0x19, 0xa6, 0xca, 0xa1, 0x6f, 0x28, 0x98, + 0x6e, 0x5e, 0x9c, 0x6f, 0xbe, 0xea, 0x12, 0x4c, 0x9d, 0xdf, 0x98, 0x51, 0xe4, 0xac, 0x9a, 0x90, + 0x25, 0x0a, 0x40, 0x67, 0x1c, 0x58, 0x15, 0x18, 0xa0, 0x50, 0xd1, 0x2a, 0x69, 0x82, 0x92, 0x6a, + 0xa0, 0xbe, 0x1d, 0xd8, 0x2a, 0xa9, 0xfe, 0xf6, 0x6a, 0xfd, 0xce, 0x9d, 0xd8, 0xe6, 0x26, 0xe7, + 0x23, 0x05, 0xe7, 0xd7, 0x5f, 0x9c, 0x6f, 0xbe, 0x76, 0x54, 0x6f, 0x8c, 0x73, 0xc1, 0xf6, 0x64, + 0x49, 0x49, 0x7a, 0x25, 0x40, 0x4a, 0x0a, 0x80, 0x46, 0xaa, 0xc6, 0xf1, 0x8a, 0x90, 0x64, 0x8c, + 0x2c, 0xaa, 0xe4, 0x98, 0x1e, 0xda, 0xc8, 0xb7, 0x2e, 0x63, 0x5e, 0x32, 0x94, 0x23, 0xb3, 0xde, + 0xc6, 0xa4, 0xa7, 0xfb, 0x31, 0xdd, 0x8a, 0x29, 0xa7, 0xc3, 0xd3, 0x36, 0xb0, 0x39, 0x1c, 0x04, + 0xa8, 0x23, 0xb3, 0xde, 0xc6, 0xa6, 0x4d, 0x0d, 0x68, 0x6b, 0x74, 0x81, 0xaa, 0xf7, 0x36, 0x64, + 0xcd, 0x40, 0x30, 0xab, 0x00, 0xb5, 0xce, 0x60, 0x31, 0x4a, 0xe0, 0xc6, 0xa3, 0x31, 0x52, 0xf3, + 0x4c, 0x6c, 0xb2, 0x31, 0x56, 0x83, 0xd3, 0xe7, 0xf7, 0x63, 0x7a, 0xb6, 0x36, 0x55, 0x38, 0xf9, + 0x4b, 0xab, 0xf5, 0x5b, 0xee, 0x07, 0xb2, 0x52, 0xf3, 0x68, 0x98, 0xdc, 0xe5, 0x7e, 0x28, 0x5b, + 0x86, 0x62, 0xb4, 0x39, 0x6b, 0xce, 0x41, 0x04, 0xa9, 0x01, 0x4d, 0x14, 0x40, 0x4e, 0x30, 0x48, + 0xcc, 0x72, 0x17, 0x43, 0x20, 0x86, 0x7e, 0xb2, 0xea, 0xcc, 0x60, 0x56, 0x9e, 0xfe, 0xe6, 0x03, + 0xe0, 0xac, 0x74, 0x3d, 0x2e, 0x38, 0xbf, 0xe6, 0xe2, 0x7c, 0xf3, 0xa1, 0xfb, 0xe3, 0x6c, 0x59, + 0xcb, 0x85, 0xc8, 0x51, 0x97, 0x23, 0xec, 0x28, 0x01, 0x31, 0x19, 0xf0, 0x46, 0x58, 0xc8, 0x42, + 0x08, 0xa5, 0xb8, 0x15, 0x7a, 0x74, 0xb4, 0x71, 0x29, 0xde, 0xca, 0xdd, 0xdf, 0x5f, 0xad, 0xf9, + 0xfd, 0xf0, 0xce, 0x29, 0xfc, 0x8d, 0x05, 0x7b, 0xba, 0x38, 0xdf, 0xd0, 0xa8, 0xfa, 0x22, 0xf6, + 0xa5, 0xc0, 0xdc, 0x64, 0x93, 0xb4, 0x21, 0xa0, 0xa8, 0x24, 0xa0, 0x62, 0x01, 0x3c, 0x3a, 0x84, + 0x1c, 0x9c, 0x94, 0x96, 0x69, 0x19, 0xd2, 0x70, 0x5b, 0xe5, 0xdd, 0x97, 0xf5, 0x63, 0x31, 0x4a, + 0xaf, 0xd9, 0xbc, 0x8e, 0xce, 0x06, 0x63, 0x3e, 0x79, 0x62, 0x76, 0x32, 0x7b, 0x9f, 0xea, 0x8f, + 0xce, 0x06, 0xe3, 0x3d, 0x7d, 0x65, 0x26, 0x7d, 0xf0, 0x92, 0xa4, 0x03, 0x54, 0x92, 0x03, 0x86, + 0x2c, 0xc1, 0x62, 0xc9, 0x56, 0x12, 0xb9, 0xb7, 0x2e, 0x0d, 0xdf, 0xa7, 0x3e, 0x7d, 0x74, 0xd6, + 0x0f, 0xf2, 0xf8, 0xa1, 0xd9, 0x0f, 0x77, 0xcf, 0xc4, 0x17, 0xb1, 0x95, 0xc7, 0x66, 0xa7, 0xb3, + 0x57, 0xe2, 0x8b, 0xc0, 0xda, 0x77, 0xd9, 0x4a, 0x69, 0xcf, 0x73, 0x02, 0xe6, 0xac, 0x01, 0x44, + 0x6f, 0xc0, 0x33, 0x1f, 0x40, 0x6b, 0xee, 0x15, 0x67, 0xd9, 0x46, 0xea, 0xdf, 0xbe, 0xcd, 0x51, + 0x95, 0x27, 0x67, 0x3f, 0xdd, 0x65, 0x8c, 0x58, 0x84, 0x54, 0xb9, 0x7a, 0x56, 0x30, 0x3d, 0x7f, + 0x71, 0xbe, 0x79, 0x7f, 0x9b, 0x30, 0x62, 0x11, 0x53, 0xb7, 0x27, 0x64, 0x82, 0x96, 0x5e, 0x24, + 0xc8, 0x4c, 0x22, 0x20, 0x6f, 0xec, 0x94, 0x0b, 0x0a, 0x9c, 0xa2, 0xa4, 0x04, 0x77, 0x81, 0x87, + 0x26, 0x3a, 0x79, 0x91, 0x4e, 0x52, 0xec, 0x52, 0x82, 0xcc, 0xc1, 0x55, 0x7e, 0xfe, 0x58, 0xf7, + 0x0e, 0x7a, 0x88, 0x6e, 0x9a, 0xd9, 0xe5, 0xde, 0xec, 0x19, 0xf4, 0x10, 0xde, 0x2c, 0xaf, 0x4b, + 0x56, 0xda, 0xba, 0xc8, 0x02, 0x44, 0xcd, 0x4d, 0x83, 0x4f, 0x02, 0xb9, 0x24, 0x21, 0x49, 0x2f, + 0x04, 0xe3, 0xc6, 0x59, 0xc5, 0xbb, 0x67, 0xd0, 0x5b, 0x5c, 0x93, 0xb4, 0x2e, 0x3f, 0xd8, 0x3d, + 0x62, 0x5c, 0x02, 0x56, 0x14, 0xf9, 0xd2, 0xec, 0x0d, 0xe3, 0x12, 0xaa, 0x36, 0xa3, 0x19, 0x6a, + 0x45, 0xd9, 0x3a, 0x48, 0x96, 0x47, 0x40, 0xd2, 0x0c, 0xac, 0x67, 0x11, 0x5c, 0x0e, 0xcc, 0x38, + 0x29, 0x31, 0xd9, 0x3e, 0x29, 0xc2, 0x0c, 0x52, 0x51, 0xe3, 0x4f, 0x2c, 0x31, 0x6b, 0x9c, 0xd1, + 0xe5, 0xa3, 0xc3, 0x05, 0x72, 0x27, 0xa0, 0x2e, 0xdb, 0x1b, 0xba, 0xe0, 0x93, 0x32, 0xa0, 0xb5, + 0x72, 0x80, 0x46, 0xb0, 0x72, 0x51, 0x1f, 0x48, 0x0b, 0x2d, 0x83, 0xf5, 0x14, 0x59, 0x18, 0x28, + 0xf1, 0xf1, 0x45, 0x64, 0x55, 0x87, 0xdb, 0x6b, 0xa7, 0x27, 0xa9, 0x2c, 0x8c, 0x65, 0x35, 0xf9, + 0xa6, 0x85, 0x6b, 0xa7, 0xf5, 0xf7, 0xee, 0x82, 0x37, 0x11, 0x17, 0x31, 0x28, 0x50, 0xc1, 0x06, + 0xc0, 0xc0, 0x1c, 0x38, 0x41, 0x1c, 0x64, 0xf2, 0x81, 0x27, 0x47, 0xcc, 0x67, 0xde, 0x5f, 0x3b, + 0xbd, 0x59, 0x6a, 0x4e, 0x1e, 0x46, 0xb4, 0xe2, 0xea, 0xba, 0xf0, 0xcd, 0x0b, 0xd7, 0x4e, 0x5b, + 0x79, 0xdd, 0xb3, 0x0f, 0x6b, 0x25, 0x93, 0xd6, 0x82, 0x89, 0x65, 0x33, 0xc6, 0x30, 0xf0, 0x9c, + 0x27, 0xc8, 0xda, 0x3b, 0xe1, 0x59, 0xd4, 0x3c, 0xb2, 0xfe, 0xda, 0x69, 0x15, 0x58, 0x8d, 0xfe, + 0x27, 0xa6, 0x49, 0x57, 0x8e, 0x8e, 0xd3, 0x49, 0x71, 0xee, 0xb6, 0xd9, 0x1f, 0xfe, 0xec, 0x6c, + 0x0a, 0x75, 0xcb, 0xfd, 0xb6, 0xf0, 0x80, 0xa2, 0xc9, 0x72, 0x13, 0xa2, 0x01, 0xe1, 0xa9, 0x09, + 0xa3, 0x19, 0x82, 0xe7, 0x21, 0x41, 0xe4, 0x8e, 0xc7, 0xa4, 0x3d, 0x0b, 0x69, 0x18, 0x66, 0x0c, + 0x73, 0xaf, 0xbc, 0xbf, 0x6f, 0xae, 0xa3, 0xea, 0x8f, 0x4e, 0x73, 0xaf, 0x0c, 0xe0, 0x15, 0xa6, + 0x7e, 0xcb, 0x70, 0xe7, 0x79, 0x17, 0xb6, 0xf6, 0x89, 0x38, 0x8f, 0x8e, 0x29, 0x65, 0x21, 0xfa, + 0x32, 0x77, 0x50, 0x00, 0x91, 0xf0, 0x10, 0x35, 0x69, 0x69, 0x82, 0xd5, 0x36, 0x0c, 0xfd, 0xa6, + 0xc7, 0x16, 0x81, 0x2d, 0xa7, 0x60, 0x19, 0xa0, 0xaa, 0x7c, 0xfd, 0xc1, 0xdd, 0x29, 0x58, 0x06, + 0xb8, 0xba, 0xe3, 0x0f, 0x2f, 0xac, 0x49, 0x4a, 0x43, 0x4a, 0x89, 0x01, 0xe6, 0x24, 0xc0, 0xa9, + 0x94, 0x41, 0x37, 0xc1, 0x89, 0xf3, 0x5c, 0x78, 0x17, 0x27, 0x29, 0x58, 0xb6, 0x80, 0x2a, 0x4f, + 0x6f, 0xaf, 0x4b, 0x32, 0x9d, 0xfe, 0x15, 0xd4, 0xe6, 0x87, 0x56, 0x03, 0xce, 0x94, 0x8c, 0x8e, + 0x70, 0x78, 0x44, 0x77, 0xcf, 0x5e, 0xbc, 0x7a, 0x5d, 0x22, 0x32, 0x17, 0x58, 0x04, 0xe3, 0x8d, + 0x01, 0x74, 0xb6, 0x59, 0x93, 0x35, 0x81, 0xe6, 0x59, 0x4a, 0x1e, 0x83, 0x8b, 0x71, 0xb8, 0x82, + 0x95, 0xa4, 0x40, 0xdd, 0xeb, 0xa7, 0xe1, 0x15, 0xf8, 0xed, 0x4b, 0x9a, 0x8f, 0xdc, 0xf5, 0x29, + 0x1c, 0x1d, 0xe6, 0xfd, 0xdb, 0x9b, 0x3f, 0xb7, 0x70, 0x05, 0x7e, 0xfb, 0x9c, 0x66, 0x5b, 0xf0, + 0xea, 0x75, 0xa7, 0xad, 0x48, 0x12, 0x03, 0xb0, 0x60, 0x04, 0xa0, 0x36, 0x06, 0x1c, 0x12, 0x81, + 0x54, 0x9c, 0xab, 0xe4, 0x5c, 0x32, 0xe5, 0x11, 0xc4, 0xa3, 0xa3, 0x37, 0x35, 0x5f, 0xb9, 0x6d, + 0xe0, 0xfb, 0x56, 0xeb, 0xd7, 0x75, 0x8f, 0x3e, 0x6b, 0x32, 0x95, 0x09, 0x94, 0x3f, 0x3f, 0x3a, + 0xa1, 0x6b, 0x1f, 0x7f, 0xd6, 0x4c, 0x2a, 0x53, 0x2c, 0x3c, 0x30, 0x6a, 0x48, 0x0b, 0x31, 0x32, + 0x03, 0x18, 0x9c, 0x01, 0x1b, 0x9a, 0x40, 0xc4, 0xe7, 0xa0, 0x98, 0xd7, 0x28, 0x50, 0xf6, 0x8f, + 0xdf, 0x6a, 0x1a, 0x95, 0x31, 0x98, 0x1f, 0x59, 0x32, 0x61, 0xe3, 0x6c, 0x0a, 0xdf, 0xbe, 0xba, + 0x74, 0x75, 0x9c, 0x64, 0x54, 0xe0, 0x29, 0x46, 0x55, 0xf6, 0x7d, 0x92, 0xd3, 0x8d, 0x05, 0xb1, + 0xe0, 0x0c, 0x7a, 0x30, 0x5a, 0xa9, 0x40, 0x12, 0x83, 0x93, 0x76, 0x6e, 0xbb, 0x46, 0x49, 0x15, + 0xfa, 0x1c, 0x2a, 0x73, 0x4c, 0x65, 0xea, 0x7c, 0xc7, 0xfc, 0x41, 0xf6, 0x1c, 0x50, 0x9d, 0x3a, + 0x91, 0x18, 0xf2, 0x6c, 0x35, 0xc8, 0xd4, 0x2c, 0x8b, 0x29, 0x39, 0x70, 0x39, 0x39, 0xc8, 0xc2, + 0xb2, 0xac, 0x54, 0x92, 0x86, 0xcb, 0xee, 0x6d, 0xf8, 0x04, 0x4d, 0x99, 0x30, 0xfd, 0x34, 0x9e, + 0x43, 0xa9, 0xf3, 0xe5, 0x3b, 0x57, 0xb3, 0x79, 0x3c, 0xc7, 0xd2, 0x79, 0x92, 0x8e, 0x91, 0xcc, + 0xc2, 0xd5, 0x8b, 0x66, 0x28, 0x98, 0x07, 0x6b, 0x0d, 0x07, 0x4e, 0x56, 0x33, 0xa3, 0x9d, 0xf3, + 0x2c, 0x0d, 0xcc, 0xfb, 0x66, 0x01, 0x54, 0x9d, 0x34, 0x7f, 0xb6, 0xcd, 0x3a, 0xe1, 0xf7, 0x6f, + 0xdf, 0x2a, 0xc1, 0xf4, 0x76, 0x59, 0xfe, 0xae, 0x79, 0xd6, 0x09, 0xbf, 0x7f, 0x1b, 0x4a, 0x24, + 0x3d, 0x58, 0x8e, 0x95, 0x41, 0x6b, 0x42, 0x88, 0xe0, 0x98, 0x4b, 0x80, 0x89, 0x47, 0x20, 0xa3, + 0x10, 0x82, 0x21, 0x1b, 0x02, 0x47, 0xa5, 0x9c, 0xee, 0x32, 0x09, 0x3e, 0xbd, 0x7f, 0xfb, 0xb9, + 0xe3, 0xa7, 0x8e, 0xfb, 0x55, 0xf8, 0x74, 0xfd, 0x9a, 0xa9, 0xf4, 0xa2, 0x96, 0xef, 0x5e, 0x0d, + 0x37, 0x50, 0xa6, 0xa2, 0xbb, 0x7c, 0x5e, 0x32, 0xe8, 0x68, 0x79, 0xc3, 0xd2, 0xc6, 0x94, 0x71, + 0x02, 0x17, 0xbd, 0x02, 0x81, 0x8d, 0x7d, 0xcd, 0x64, 0xb3, 0x2a, 0x8f, 0xa6, 0x86, 0x72, 0x8b, + 0x22, 0xfe, 0xdc, 0xfa, 0xe1, 0xa9, 0xd0, 0xaa, 0x80, 0xef, 0x19, 0x1a, 0xac, 0x87, 0xa7, 0x52, + 0xbb, 0xbd, 0x5b, 0xe7, 0x98, 0x70, 0x8d, 0x7f, 0x5c, 0xef, 0xb5, 0x68, 0x59, 0x5f, 0x50, 0x31, + 0x61, 0x31, 0x88, 0x64, 0x8d, 0xd5, 0x43, 0xef, 0xe8, 0xa1, 0xa1, 0xf8, 0x3a, 0xe4, 0x7f, 0xb1, + 0x9b, 0x27, 0x77, 0x8e, 0xfc, 0xfe, 0x41, 0x2a, 0xf6, 0xea, 0xf6, 0x09, 0x9d, 0x1d, 0x6d, 0x13, + 0x45, 0x7d, 0xef, 0x7c, 0x9e, 0xd4, 0xc2, 0xb0, 0x2d, 0xbc, 0xd5, 0x80, 0x16, 0x56, 0x08, 0xeb, + 0x05, 0x64, 0xd1, 0x84, 0x3f, 0x59, 0x67, 0xf0, 0xe4, 0x1c, 0x08, 0xa7, 0x74, 0x92, 0xd8, 0x98, + 0xd5, 0xdc, 0x39, 0x6a, 0xef, 0x2b, 0xcd, 0x3c, 0xd7, 0xb7, 0xd2, 0x69, 0xa2, 0xcf, 0x5c, 0x30, + 0x07, 0x55, 0x34, 0xf2, 0x7d, 0xf3, 0x89, 0x32, 0x47, 0xd4, 0x26, 0xb8, 0x63, 0x21, 0x97, 0x2c, + 0xb7, 0x1a, 0x05, 0x6f, 0xe2, 0xdc, 0x00, 0x0e, 0xb9, 0x06, 0xeb, 0x65, 0x10, 0x0a, 0x95, 0x49, + 0xaa, 0xcf, 0xef, 0x33, 0x85, 0xd3, 0xa5, 0xb7, 0x7b, 0xdd, 0x0e, 0x2c, 0x55, 0x51, 0xdf, 0x3f, + 0x9f, 0x29, 0x73, 0x30, 0xdd, 0xc2, 0x62, 0x64, 0xb6, 0x5e, 0x3b, 0xe0, 0x2a, 0x34, 0x34, 0x09, + 0x16, 0x6c, 0x32, 0x11, 0x3c, 0xf2, 0x68, 0x62, 0xc4, 0xcc, 0xac, 0x18, 0xe8, 0xeb, 0xb1, 0x25, + 0x54, 0x55, 0x6f, 0x7d, 0x0e, 0xb4, 0x7c, 0x70, 0xf4, 0xd2, 0xad, 0x70, 0x74, 0x70, 0x90, 0x42, + 0x8d, 0xa9, 0x5a, 0xad, 0xfd, 0xc0, 0x3c, 0x09, 0x52, 0x53, 0x14, 0xb6, 0x45, 0x07, 0x49, 0x67, + 0xad, 0x75, 0x39, 0x3a, 0x0f, 0xa4, 0x74, 0x79, 0x5e, 0x10, 0x80, 0x54, 0xe4, 0xa0, 0xa2, 0xb1, + 0xde, 0x79, 0x9f, 0xe4, 0x36, 0x8d, 0xd6, 0x97, 0x1f, 0x1c, 0xbd, 0xf4, 0x4c, 0xdf, 0xc6, 0x2c, + 0x31, 0xe1, 0xc9, 0xd1, 0xdd, 0xb3, 0x14, 0x6f, 0xc5, 0x78, 0x34, 0x4d, 0x80, 0xf4, 0x9f, 0xcc, + 0x69, 0x54, 0x0b, 0x43, 0x53, 0x78, 0x6a, 0x6e, 0x9b, 0x18, 0xda, 0x58, 0x87, 0xcd, 0xea, 0x6b, + 0x00, 0x63, 0x8a, 0x60, 0xad, 0x32, 0x10, 0xbd, 0xd0, 0x36, 0x47, 0xf4, 0x64, 0xb0, 0x33, 0xb7, + 0x37, 0x4b, 0x33, 0xcf, 0xc6, 0xa3, 0xd3, 0x65, 0x73, 0x3b, 0xc7, 0x54, 0x58, 0xf4, 0x9f, 0xce, + 0x59, 0x34, 0x07, 0xd4, 0x9a, 0xdb, 0x10, 0x34, 0x45, 0x8e, 0x90, 0x42, 0xf2, 0x80, 0x52, 0x4b, + 0x20, 0x41, 0x1e, 0xac, 0x28, 0x69, 0x12, 0xad, 0xe4, 0x09, 0x3b, 0x73, 0x3b, 0x41, 0x33, 0x4e, + 0x59, 0x35, 0x87, 0x52, 0x49, 0xf4, 0x9f, 0xcd, 0xb5, 0x35, 0xc7, 0xd2, 0x5d, 0x14, 0xca, 0xa8, + 0xb9, 0x60, 0x06, 0x04, 0x17, 0xba, 0x66, 0x3e, 0xf3, 0x92, 0x73, 0x10, 0x39, 0x70, 0x19, 0x1b, + 0xed, 0xf9, 0xde, 0xcc, 0x4e, 0xc0, 0x54, 0xee, 0x7c, 0x72, 0xb5, 0x7e, 0x6b, 0x4d, 0x0c, 0xb2, + 0x10, 0xa0, 0x8f, 0x95, 0xf6, 0x9f, 0xaf, 0x06, 0x7e, 0xfe, 0x5b, 0x6b, 0x8e, 0x90, 0x85, 0xb0, + 0x7c, 0xa2, 0xbc, 0x40, 0xc2, 0x7a, 0x97, 0x33, 0x84, 0x64, 0x4c, 0x4d, 0xe1, 0x40, 0x2a, 0x59, + 0x40, 0xee, 0x73, 0x4a, 0x94, 0x95, 0x2e, 0x41, 0x51, 0xcd, 0x6f, 0x3b, 0x8d, 0xc1, 0x47, 0x3a, + 0xfc, 0xd9, 0x3e, 0x97, 0xf1, 0x4e, 0xa8, 0x45, 0x97, 0xff, 0x7c, 0x21, 0x97, 0xf1, 0x4e, 0x9c, + 0x55, 0xa7, 0xd6, 0x33, 0x67, 0x75, 0x36, 0x90, 0x79, 0xca, 0x80, 0x81, 0x73, 0xb0, 0x8c, 0x1b, + 0x88, 0xaa, 0xf1, 0xef, 0x04, 0x72, 0x9e, 0x5d, 0x9f, 0x60, 0x75, 0x11, 0x64, 0x51, 0xed, 0xcf, + 0xaf, 0xd6, 0xd7, 0xef, 0x83, 0xb0, 0xaa, 0xf8, 0xbf, 0x18, 0xda, 0x89, 0xeb, 0xf7, 0x81, 0xd8, + 0x05, 0x4e, 0xc6, 0xa3, 0x20, 0x6b, 0x21, 0x23, 0x97, 0x80, 0x5a, 0x48, 0xf0, 0x96, 0x1b, 0x60, + 0xa4, 0x29, 0x20, 0x37, 0x4c, 0x97, 0xd7, 0x99, 0x6f, 0xd8, 0x8d, 0xb1, 0x6a, 0xbc, 0x4f, 0xd0, + 0x1b, 0x0f, 0x27, 0x0a, 0xfe, 0xc3, 0x85, 0x04, 0xbd, 0xf1, 0x70, 0xaa, 0xd0, 0x66, 0x49, 0x8d, + 0x8e, 0x09, 0xb0, 0x3a, 0x66, 0xc0, 0x14, 0x19, 0x78, 0xe5, 0x08, 0x9c, 0x91, 0x86, 0x7b, 0xe1, + 0x23, 0x95, 0x4c, 0x64, 0x35, 0x41, 0x6f, 0x3c, 0x1c, 0xa9, 0xb0, 0x4b, 0xec, 0xbe, 0x95, 0x5d, + 0x34, 0xf6, 0x5f, 0xad, 0x66, 0x99, 0xdd, 0xb7, 0x82, 0x5b, 0xdb, 0x6d, 0xac, 0x0a, 0x52, 0x66, + 0xd0, 0x39, 0x11, 0xa0, 0x62, 0x09, 0x5c, 0x56, 0x12, 0xb8, 0x0e, 0x26, 0xb8, 0x6c, 0x22, 0x2f, + 0x2f, 0xbb, 0x5e, 0x35, 0x94, 0x5a, 0x74, 0x72, 0xd6, 0xae, 0xe4, 0x5b, 0x91, 0x55, 0x05, 0xff, + 0xf5, 0x7c, 0x25, 0xdf, 0xca, 0xec, 0xcf, 0xb7, 0x84, 0xd6, 0x16, 0x2d, 0x48, 0x86, 0x0e, 0x50, + 0x50, 0x06, 0xcf, 0x5c, 0x04, 0xed, 0x04, 0x4f, 0x49, 0x50, 0xd6, 0xe5, 0xee, 0xea, 0x43, 0x43, + 0xa1, 0x75, 0x90, 0xff, 0xf9, 0x6a, 0x6d, 0x6b, 0x5e, 0xba, 0xed, 0x86, 0xfc, 0x34, 0x09, 0xc4, + 0xf1, 0xc9, 0xd1, 0x59, 0x6b, 0xa8, 0xc7, 0x7a, 0xf8, 0x6f, 0x2a, 0xb4, 0x78, 0x71, 0xbe, 0xf9, + 0x33, 0xb5, 0x99, 0xe1, 0x11, 0xc1, 0x34, 0x45, 0xc4, 0xb6, 0x99, 0xa9, 0xa6, 0x44, 0x30, 0x5a, + 0x38, 0xeb, 0x40, 0x1a, 0x29, 0x01, 0x99, 0x8f, 0xe0, 0x79, 0x0a, 0x60, 0x54, 0x94, 0x3a, 0x66, + 0x1b, 0x74, 0x68, 0x1c, 0x43, 0x59, 0xf2, 0xd9, 0x6d, 0x05, 0x8c, 0xf3, 0x47, 0x7c, 0xa0, 0x6f, + 0x7e, 0xa4, 0xc9, 0xff, 0x78, 0xb5, 0x56, 0x2f, 0xbb, 0x83, 0x45, 0xd9, 0xff, 0x62, 0x35, 0xb8, + 0x83, 0xad, 0x5e, 0x76, 0xef, 0xda, 0x8c, 0x73, 0x9c, 0x02, 0x4b, 0xce, 0x03, 0xfa, 0x26, 0x86, + 0x57, 0x99, 0x9a, 0xae, 0x35, 0xeb, 0x82, 0x31, 0xdc, 0x48, 0x22, 0xce, 0x1a, 0x1f, 0x8b, 0xbd, + 0x9c, 0xae, 0x15, 0xba, 0xfc, 0xc1, 0x6a, 0xad, 0x5f, 0x76, 0xbf, 0x2a, 0xa3, 0xfe, 0x68, 0x35, + 0xb8, 0xb1, 0xa1, 0x5f, 0x76, 0xc7, 0x3a, 0x37, 0x2e, 0x65, 0x66, 0x4d, 0x14, 0x90, 0x83, 0x6b, + 0xbc, 0x68, 0xa9, 0xc1, 0x0a, 0x6e, 0x21, 0x19, 0x1e, 0xa8, 0x59, 0x77, 0x9c, 0x4a, 0x37, 0xae, + 0xdc, 0xe4, 0x2f, 0xa7, 0x67, 0x95, 0x93, 0x5d, 0x1e, 0xb7, 0x97, 0x88, 0x8e, 0x27, 0x8c, 0xfb, + 0x6f, 0xe7, 0x1e, 0x75, 0x53, 0x6a, 0x96, 0x49, 0x2e, 0x06, 0xc7, 0x22, 0x69, 0x70, 0xa8, 0x32, + 0xa0, 0x0f, 0x0a, 0xbc, 0x23, 0x01, 0x92, 0x62, 0x12, 0xca, 0x90, 0xb7, 0xd1, 0x77, 0x79, 0xdc, + 0x5e, 0x20, 0x3a, 0x1e, 0x31, 0xa6, 0x9b, 0x88, 0x03, 0xf1, 0x85, 0x0f, 0xff, 0xdd, 0x7c, 0x22, + 0x0e, 0x64, 0xb7, 0xdb, 0x91, 0x89, 0x25, 0x4e, 0x32, 0x80, 0x37, 0x29, 0x00, 0x26, 0x61, 0x9b, + 0xe5, 0x36, 0x81, 0x22, 0xc6, 0x83, 0xce, 0xde, 0xea, 0x92, 0x5a, 0xe2, 0xa1, 0x91, 0xe0, 0xa2, + 0xcf, 0x97, 0x5a, 0x9f, 0x7a, 0x20, 0xb5, 0x6a, 0xeb, 0xbf, 0x5f, 0x0d, 0xcf, 0x24, 0xa7, 0x62, + 0xbb, 0xe5, 0x35, 0x69, 0x26, 0xbc, 0x70, 0x20, 0x3d, 0x96, 0x64, 0xe4, 0x0c, 0x9c, 0x92, 0xd4, + 0xcc, 0xa5, 0xa4, 0x79, 0x12, 0x56, 0x97, 0x94, 0xc8, 0x57, 0x47, 0x72, 0x27, 0x1f, 0x25, 0x28, + 0x92, 0x67, 0x09, 0xe3, 0x7e, 0x79, 0x6f, 0x96, 0xfa, 0xab, 0x88, 0x9f, 0x67, 0x8b, 0xc3, 0x48, + 0x31, 0x2b, 0x9d, 0x81, 0x7b, 0xab, 0x01, 0x51, 0x10, 0x38, 0xd4, 0x04, 0xd9, 0xe8, 0x6c, 0x31, + 0xaa, 0x86, 0x2e, 0x9d, 0xbf, 0xd1, 0x60, 0x98, 0xa6, 0x8a, 0x1b, 0xa9, 0x7d, 0x9c, 0x26, 0xee, + 0x57, 0xf6, 0x96, 0xd5, 0x3e, 0xc9, 0x11, 0x87, 0x31, 0x09, 0x12, 0xc1, 0x83, 0x95, 0x21, 0x03, + 0x62, 0x52, 0xe0, 0x52, 0x32, 0xa0, 0x82, 0xe5, 0xca, 0x21, 0x19, 0x86, 0x76, 0xa8, 0xf6, 0x51, + 0x82, 0xb8, 0x3e, 0x7d, 0xdf, 0x58, 0x7e, 0x55, 0xc2, 0x27, 0xf7, 0x66, 0xe9, 0xfb, 0xc6, 0x00, + 0xba, 0x49, 0xe1, 0x95, 0xe0, 0x3e, 0x04, 0xd0, 0x92, 0x97, 0x47, 0xf1, 0x1e, 0xac, 0xe7, 0x16, + 0xb2, 0x65, 0x82, 0x05, 0x44, 0x4b, 0x29, 0x77, 0xe9, 0xfb, 0x86, 0x08, 0x96, 0x54, 0x31, 0xdb, + 0xb1, 0xff, 0x1f, 0x56, 0xcb, 0xaa, 0x58, 0xc8, 0xc3, 0x6e, 0x99, 0x0a, 0x26, 0x30, 0x90, 0x21, + 0x7a, 0x40, 0xd2, 0x06, 0x2c, 0x71, 0x0e, 0xd9, 0x46, 0xb2, 0x26, 0x92, 0x52, 0x0e, 0x87, 0xaa, + 0x98, 0xee, 0xd2, 0x8f, 0x54, 0x31, 0xde, 0x9d, 0xff, 0xe3, 0x1d, 0x33, 0x70, 0xba, 0x2f, 0x2f, + 0xa3, 0x90, 0x18, 0x39, 0x58, 0x91, 0x05, 0x60, 0x74, 0x06, 0xc8, 0x0a, 0x0f, 0x8c, 0x04, 0x4a, + 0x93, 0x29, 0x18, 0xc4, 0xa1, 0x2a, 0x46, 0x3b, 0xf2, 0x63, 0x55, 0x4c, 0xb6, 0xe2, 0xff, 0xc7, + 0xd5, 0xb2, 0x2a, 0xa6, 0x9b, 0xf0, 0x92, 0x09, 0xca, 0x4a, 0x05, 0xb0, 0xa6, 0x64, 0x3b, 0xd3, + 0x4d, 0xc4, 0x22, 0x1c, 0xf8, 0xc4, 0x1d, 0x69, 0x93, 0x02, 0x49, 0x37, 0x54, 0xc5, 0x78, 0xdb, + 0xbd, 0x4f, 0x91, 0x7f, 0xba, 0x7f, 0x96, 0x86, 0xc9, 0x91, 0xc7, 0xf6, 0xe8, 0x7f, 0x9a, 0xa7, + 0xc8, 0x6f, 0x2a, 0x0c, 0x33, 0x24, 0x4f, 0x4c, 0x53, 0x74, 0x2c, 0x26, 0x92, 0x12, 0x34, 0xb1, + 0x08, 0xa8, 0x82, 0x07, 0xc7, 0xbd, 0x03, 0x61, 0x82, 0x96, 0x21, 0x65, 0x62, 0x25, 0xdb, 0x4d, + 0xf1, 0xe0, 0x9e, 0xdf, 0x3f, 0x4b, 0xdb, 0x34, 0xc9, 0x23, 0x23, 0xd5, 0x27, 0x30, 0x5f, 0xc6, + 0x57, 0x54, 0xf5, 0x3f, 0x2f, 0xa4, 0xb9, 0x5e, 0x04, 0xd7, 0xfa, 0x96, 0x2e, 0x1b, 0xcb, 0xcb, + 0x3b, 0x78, 0xa3, 0x00, 0x8d, 0xd0, 0xe0, 0x2c, 0x13, 0x10, 0x2c, 0x25, 0x67, 0x83, 0x60, 0x46, + 0x84, 0x2e, 0x08, 0x5e, 0x40, 0x36, 0x4e, 0x91, 0xbf, 0x0c, 0xab, 0x6a, 0xf0, 0x7f, 0x99, 0x67, + 0x6d, 0x5d, 0xc6, 0xd5, 0x1d, 0xa7, 0x84, 0xcc, 0x75, 0xf6, 0x0c, 0xac, 0xd7, 0x4d, 0x6c, 0x25, + 0x3c, 0x10, 0x26, 0x0d, 0x28, 0xbc, 0x55, 0xa4, 0x83, 0x37, 0x76, 0x9b, 0x7f, 0x7b, 0x0e, 0xac, + 0x2a, 0xb4, 0xff, 0x3a, 0xc6, 0x14, 0xd9, 0xcc, 0xe2, 0xfd, 0xea, 0xfc, 0xeb, 0x18, 0x53, 0x78, + 0x73, 0xe3, 0x67, 0x75, 0x88, 0xb9, 0x09, 0x3f, 0xb3, 0x8b, 0xae, 0xcd, 0x98, 0x24, 0x05, 0x07, + 0x11, 0x04, 0x13, 0xd1, 0x98, 0x94, 0x7d, 0xea, 0xa2, 0x87, 0x31, 0xc6, 0xa9, 0x19, 0xdc, 0xc9, + 0xbc, 0xb1, 0x49, 0xfc, 0xb5, 0xbd, 0xfb, 0x32, 0x6f, 0x62, 0x1d, 0x85, 0xd6, 0xc8, 0x22, 0x0f, + 0x80, 0xc6, 0x47, 0x40, 0xdd, 0x78, 0x21, 0x0d, 0x4e, 0x92, 0x5e, 0x27, 0x66, 0x65, 0x46, 0xf2, + 0xcb, 0xcc, 0x1b, 0xd9, 0xc9, 0x3e, 0x77, 0xf0, 0x4e, 0x7c, 0x55, 0xcb, 0xbf, 0xbe, 0x37, 0x8b, + 0x6e, 0x76, 0x02, 0xec, 0x56, 0x31, 0xcd, 0x83, 0x42, 0x4c, 0x10, 0x33, 0x46, 0xc0, 0xc0, 0x08, + 0x2c, 0x8f, 0x04, 0x39, 0x23, 0xa2, 0xd6, 0x32, 0xf0, 0xb2, 0xc3, 0xf0, 0x86, 0xdd, 0x08, 0xc7, + 0x91, 0x43, 0x3c, 0x9c, 0xc6, 0xf3, 0xff, 0xeb, 0x3c, 0x72, 0x88, 0x87, 0xb3, 0x38, 0x5e, 0x31, + 0x95, 0x0d, 0x32, 0x03, 0x5a, 0xb2, 0xc6, 0x8a, 0xcb, 0x0c, 0x36, 0xe6, 0x08, 0x82, 0x6c, 0xe6, + 0x51, 0x06, 0xae, 0x8a, 0x15, 0x2f, 0x01, 0xc0, 0xb3, 0x87, 0xa7, 0x8b, 0x91, 0xc3, 0x56, 0x76, + 0x51, 0xd7, 0xff, 0x36, 0x8f, 0x1c, 0xb6, 0x82, 0x5b, 0x57, 0xd1, 0x73, 0xe1, 0x45, 0x88, 0x20, + 0x9c, 0x67, 0x80, 0x51, 0x19, 0xf0, 0x88, 0x11, 0xa4, 0xe2, 0x4a, 0xf9, 0xc8, 0xb5, 0x2b, 0x1b, + 0xf8, 0xaf, 0x1a, 0x4a, 0x1d, 0x45, 0x0e, 0x5b, 0x91, 0x55, 0x03, 0xff, 0xfb, 0xdc, 0x61, 0xd9, + 0xca, 0xec, 0xae, 0x81, 0x48, 0xcd, 0x9d, 0xb7, 0x04, 0xd6, 0xa6, 0x26, 0xea, 0x65, 0x0a, 0x3c, + 0x05, 0x01, 0x64, 0xac, 0xf0, 0x0a, 0x85, 0x8c, 0x65, 0xa5, 0x78, 0x68, 0x28, 0x74, 0x32, 0xa1, + 0x28, 0x84, 0xa3, 0xbb, 0x87, 0x67, 0xbb, 0xc3, 0x84, 0xff, 0x63, 0x35, 0x9b, 0x50, 0x6d, 0x9d, + 0x4b, 0x62, 0x02, 0xcf, 0x93, 0xcb, 0xde, 0x6b, 0x50, 0xa1, 0xf1, 0x68, 0x32, 0xf3, 0xe0, 0x19, + 0x23, 0x48, 0x98, 0x84, 0x72, 0x3c, 0x4a, 0x63, 0x45, 0x37, 0xa1, 0x9e, 0xaa, 0xad, 0xed, 0x88, + 0x00, 0xfa, 0x09, 0xb5, 0x13, 0x68, 0xd1, 0xd0, 0xff, 0x39, 0x37, 0xe5, 0x3b, 0x51, 0x76, 0xdb, + 0x74, 0xc6, 0x70, 0x26, 0x1b, 0x88, 0xba, 0xa4, 0xdd, 0x33, 0x60, 0xb9, 0xb1, 0x80, 0x68, 0x55, + 0x70, 0x56, 0x68, 0x97, 0x53, 0x37, 0xa1, 0x96, 0x21, 0x8e, 0x27, 0xd4, 0x4e, 0x7c, 0x55, 0x9d, + 0xff, 0xd7, 0x7c, 0xbb, 0x60, 0x27, 0xc0, 0x7e, 0x93, 0x3b, 0x53, 0x44, 0x9f, 0x20, 0x5b, 0x64, + 0x80, 0x48, 0x8d, 0xe5, 0x0c, 0x1a, 0x88, 0x67, 0x15, 0x8c, 0x89, 0x96, 0x7c, 0x3f, 0xa1, 0x96, + 0x11, 0x56, 0x5d, 0xff, 0xc6, 0x6a, 0xfd, 0xb6, 0x3a, 0xe7, 0xa7, 0xcf, 0xb1, 0xf6, 0x0f, 0x6f, + 0x4f, 0xb4, 0xfd, 0x7f, 0xaf, 0x06, 0x07, 0x7d, 0x6f, 0xab, 0xf3, 0x7e, 0xfa, 0x0e, 0x6b, 0xff, + 0xf0, 0xf6, 0x2c, 0x5a, 0x67, 0xc1, 0xc6, 0xc6, 0x61, 0x30, 0xca, 0x8b, 0x66, 0xf5, 0xf1, 0xe0, + 0x5c, 0x66, 0x60, 0x91, 0x29, 0x22, 0x42, 0x65, 0x0b, 0x11, 0x4b, 0xbf, 0xa7, 0xef, 0xae, 0xf6, + 0x0f, 0x6f, 0x8f, 0x34, 0xfe, 0x0b, 0xdd, 0xf6, 0xc6, 0x25, 0x70, 0x8b, 0xce, 0xff, 0x9f, 0xf9, + 0xf6, 0xc6, 0x25, 0x58, 0xbb, 0x4c, 0xf0, 0x22, 0x44, 0x47, 0x0e, 0x42, 0x6a, 0xfc, 0x0a, 0xe9, + 0x34, 0xb8, 0xc8, 0x73, 0xe3, 0xe8, 0x60, 0x30, 0x42, 0x5a, 0x2c, 0xae, 0xf6, 0x1b, 0x2f, 0x03, + 0x3a, 0xfe, 0x5e, 0xd3, 0x25, 0x28, 0xab, 0xe6, 0xff, 0xdf, 0xf9, 0x04, 0xba, 0x04, 0x66, 0xb7, + 0x6d, 0x4b, 0xc2, 0x38, 0xcd, 0x1c, 0xb0, 0x60, 0x62, 0xe3, 0x8e, 0x3b, 0x20, 0x9f, 0x39, 0x20, + 0x13, 0xe4, 0x05, 0xf9, 0xc0, 0xa4, 0xe9, 0x57, 0xa4, 0x1d, 0x38, 0x27, 0xdb, 0xed, 0xe5, 0xd1, + 0xe8, 0xfe, 0xe1, 0x59, 0x3a, 0x38, 0xd8, 0xbf, 0x9d, 0x0e, 0xc3, 0xf6, 0xa3, 0x4d, 0xdf, 0xba, + 0x37, 0xdb, 0x27, 0x2d, 0x4f, 0x45, 0x87, 0x85, 0x07, 0xee, 0xa9, 0xa4, 0x1c, 0xbc, 0xcf, 0x90, + 0x22, 0x35, 0xa1, 0x63, 0x4e, 0x60, 0x8d, 0x49, 0x40, 0x46, 0x2a, 0xa1, 0xb4, 0x56, 0xbc, 0x1c, + 0xf6, 0x17, 0x4f, 0xe3, 0x59, 0x3a, 0xa3, 0xe7, 0x06, 0xad, 0xcc, 0xb6, 0xdb, 0xe7, 0xa0, 0x8a, + 0x6a, 0xbf, 0x6d, 0x6f, 0xb6, 0x51, 0x3a, 0x47, 0xd4, 0xde, 0x3d, 0xc8, 0x02, 0x23, 0x85, 0x04, + 0x99, 0x85, 0x26, 0x46, 0x8f, 0x19, 0x2c, 0xd9, 0x04, 0x86, 0x59, 0x67, 0x50, 0xe7, 0x9c, 0x4a, + 0x56, 0xf8, 0xcd, 0x12, 0x9c, 0xf1, 0x76, 0xfb, 0x1c, 0x4b, 0x55, 0xe0, 0xb7, 0xef, 0xcd, 0xb6, + 0xdb, 0xe7, 0x60, 0xba, 0x6f, 0x31, 0x78, 0x21, 0xb4, 0x35, 0x1c, 0xd0, 0xb9, 0xc6, 0x77, 0x97, + 0x11, 0x88, 0xe9, 0x0c, 0xd6, 0x66, 0x6f, 0x7c, 0xd2, 0xc9, 0x96, 0x67, 0x6c, 0xa3, 0xed, 0xf6, + 0x29, 0xaa, 0x49, 0x9a, 0xe9, 0x92, 0x37, 0x2c, 0xdd, 0x49, 0xa7, 0x2f, 0x4e, 0xe6, 0xea, 0x77, + 0xec, 0xcd, 0x0f, 0x98, 0xfb, 0xb2, 0xd3, 0x19, 0xaa, 0xb3, 0x94, 0x9a, 0xdb, 0x00, 0xc2, 0x35, + 0xab, 0x22, 0x13, 0x1a, 0x88, 0x05, 0x84, 0x84, 0x91, 0x88, 0xb2, 0x67, 0x4a, 0xb8, 0xfe, 0x80, + 0xb9, 0x6f, 0x65, 0x34, 0x31, 0xfb, 0x00, 0x67, 0x86, 0xa8, 0xe8, 0xec, 0x3b, 0xe7, 0xb1, 0xe6, + 0x0c, 0x4e, 0x55, 0x59, 0x40, 0x2e, 0x8d, 0x77, 0x11, 0x58, 0x26, 0x01, 0x48, 0x4c, 0x82, 0xd7, + 0x0a, 0x81, 0x31, 0xab, 0x08, 0xa3, 0xa3, 0x54, 0xbe, 0x80, 0xf0, 0xe8, 0x02, 0x96, 0x71, 0x9a, + 0xe9, 0x19, 0x90, 0xaa, 0xb0, 0xef, 0x9a, 0xb3, 0x67, 0x86, 0xa4, 0xbf, 0x92, 0xe6, 0x8c, 0xd6, + 0xd2, 0x81, 0x2c, 0x17, 0x29, 0xb3, 0x49, 0x60, 0xbd, 0x60, 0xa0, 0x02, 0x13, 0x9a, 0x47, 0xc1, + 0x1c, 0xf6, 0x87, 0x35, 0x13, 0x28, 0x55, 0x4d, 0x3f, 0xd1, 0xfb, 0xcc, 0x5b, 0x2c, 0x33, 0xa7, + 0xf4, 0xe7, 0xf6, 0xe6, 0x3e, 0xf3, 0x16, 0xd0, 0xdc, 0x1f, 0x4d, 0x92, 0x92, 0xe1, 0xc9, 0x81, + 0x32, 0x94, 0xeb, 0x55, 0x0e, 0x52, 0x4e, 0x80, 0x92, 0xe4, 0x11, 0x75, 0x76, 0xc2, 0xb8, 0xee, + 0xb6, 0xd6, 0x16, 0xd5, 0xd4, 0x17, 0x5d, 0x62, 0xd0, 0xd8, 0x0d, 0xfd, 0xab, 0x97, 0x32, 0x68, + 0xe2, 0x81, 0xa6, 0x98, 0x92, 0x88, 0x84, 0xa0, 0x03, 0x63, 0x80, 0xa9, 0x89, 0x8e, 0x1d, 0xd3, + 0x20, 0xb2, 0xf6, 0x46, 0xa8, 0x98, 0x85, 0x5c, 0x60, 0xd0, 0xc8, 0xfb, 0xec, 0x6d, 0xd1, 0x12, + 0xa2, 0xaa, 0xbb, 0x9f, 0x9f, 0xdb, 0xa2, 0x25, 0x48, 0xdd, 0x2b, 0x7b, 0x34, 0x3c, 0x71, 0x21, + 0x41, 0x35, 0xb1, 0x23, 0x0a, 0xa5, 0xc0, 0xe5, 0x2c, 0xa0, 0x24, 0xa5, 0x91, 0x49, 0x59, 0xed, + 0xfa, 0x0f, 0x83, 0xcd, 0x31, 0xed, 0xd6, 0xe0, 0x2c, 0x7a, 0xff, 0xee, 0x4b, 0x35, 0x38, 0x8f, + 0xe1, 0x5d, 0x22, 0xe7, 0x98, 0x95, 0x20, 0xac, 0x6e, 0x02, 0xc5, 0x66, 0x2d, 0x0c, 0x39, 0x42, + 0xce, 0x5e, 0x79, 0x91, 0x63, 0x14, 0x2e, 0xcc, 0x35, 0x38, 0x8d, 0xe4, 0x97, 0x34, 0x38, 0x0e, + 0xe8, 0xbf, 0xe7, 0x52, 0x0d, 0x4e, 0xc2, 0x7a, 0x66, 0xb4, 0x62, 0xca, 0x25, 0x30, 0x44, 0x01, + 0x90, 0x74, 0x00, 0x52, 0x96, 0x83, 0xe7, 0xc8, 0x54, 0x4a, 0x82, 0x04, 0x93, 0x73, 0x0d, 0x8e, + 0x82, 0xfb, 0x25, 0x0d, 0x4e, 0x42, 0xfc, 0xef, 0xbd, 0x54, 0x83, 0xd3, 0x40, 0x9f, 0xa7, 0xf2, + 0xc9, 0x4b, 0x06, 0x41, 0x33, 0x0f, 0xd8, 0x04, 0xd3, 0xce, 0x48, 0x06, 0x8e, 0xa2, 0x40, 0x9b, + 0x3c, 0xba, 0x90, 0xe7, 0x1a, 0x1c, 0x87, 0xfb, 0xbd, 0x3d, 0xa0, 0xe3, 0xe3, 0xd3, 0x33, 0x0a, + 0x1f, 0x99, 0x18, 0xca, 0xef, 0x9b, 0xdb, 0x83, 0xae, 0xe4, 0xd4, 0x4c, 0x32, 0xa5, 0xbd, 0x8b, + 0x91, 0x41, 0x08, 0x46, 0x02, 0x3a, 0x1d, 0x6a, 0xca, 0x2f, 0x2f, 0x54, 0xe3, 0x27, 0x26, 0x65, + 0x4a, 0xc6, 0xd5, 0x4d, 0xbb, 0x2f, 0x5a, 0xda, 0x18, 0x19, 0xc9, 0x7e, 0xf7, 0x63, 0x82, 0xa5, + 0x68, 0xeb, 0xfb, 0xe7, 0x1b, 0x51, 0x13, 0x20, 0x9d, 0xa2, 0x90, 0x94, 0x4d, 0x09, 0x22, 0x45, + 0x0d, 0xe8, 0x6d, 0x02, 0xc7, 0xc8, 0x82, 0xc9, 0xcc, 0x7a, 0xcb, 0x0d, 0xa3, 0x82, 0xe2, 0xe1, + 0x19, 0x8a, 0xa2, 0xa3, 0xfe, 0x0b, 0x8d, 0x13, 0x08, 0x55, 0x3d, 0x3f, 0xb0, 0x37, 0xfb, 0x42, + 0xe3, 0x04, 0x43, 0xab, 0x99, 0x98, 0x94, 0x0f, 0x26, 0x11, 0x50, 0xe2, 0x02, 0x10, 0xa5, 0x03, + 0x52, 0x22, 0x37, 0x61, 0x0d, 0xe7, 0x11, 0xbd, 0x4f, 0x25, 0x0d, 0xd8, 0x23, 0x33, 0x10, 0x13, + 0xbf, 0xa3, 0x47, 0x31, 0x33, 0x8b, 0xbf, 0x30, 0x67, 0x4a, 0x0f, 0x65, 0x6e, 0x14, 0x9d, 0x09, + 0x3e, 0x27, 0xd4, 0x90, 0x1d, 0x35, 0x2e, 0x51, 0xcc, 0x40, 0x39, 0x04, 0x88, 0x9a, 0x12, 0x45, + 0x17, 0xb3, 0x28, 0x5f, 0xdd, 0x7d, 0xed, 0x10, 0xcf, 0xd4, 0x24, 0xce, 0x99, 0x32, 0x36, 0x88, + 0xbf, 0x78, 0x09, 0x53, 0x26, 0xe6, 0xd0, 0x46, 0x49, 0x51, 0x63, 0x06, 0x23, 0xb3, 0x01, 0xcc, + 0x8a, 0x83, 0x15, 0xa8, 0x41, 0x19, 0x9e, 0xb3, 0xe3, 0x96, 0x71, 0x29, 0xa6, 0x4c, 0x19, 0x19, + 0xc3, 0xfe, 0x3c, 0x7d, 0x8e, 0xa5, 0x6a, 0xea, 0x97, 0xf6, 0xe6, 0x1f, 0x15, 0x9a, 0x81, 0xe9, + 0xfc, 0x0e, 0x2d, 0xb5, 0x10, 0xbc, 0xf1, 0xc2, 0x9a, 0xc1, 0x51, 0x25, 0x3b, 0xb1, 0xf4, 0x60, + 0xd0, 0x21, 0x23, 0xc9, 0x83, 0x28, 0x29, 0xdd, 0x1f, 0x5b, 0x42, 0x53, 0xf5, 0xd5, 0x9f, 0x7b, + 0xce, 0x9e, 0x5a, 0x8e, 0x27, 0xd3, 0x0f, 0xce, 0x77, 0x06, 0x66, 0xcf, 0x2c, 0xa7, 0x27, 0xeb, + 0x02, 0x15, 0xe5, 0xac, 0x81, 0x4b, 0xdb, 0x44, 0x83, 0x22, 0x83, 0x2b, 0x4f, 0x70, 0x0c, 0x19, + 0x63, 0x28, 0x62, 0x48, 0xa6, 0x0b, 0xb5, 0xc6, 0x2f, 0x2c, 0x47, 0x53, 0xab, 0xbf, 0x4c, 0xbb, + 0x03, 0x61, 0xd1, 0xe0, 0x0f, 0xcd, 0x0d, 0xf5, 0x0e, 0x78, 0xdd, 0x87, 0x40, 0x35, 0x06, 0xce, + 0x25, 0x30, 0x23, 0x2d, 0xa0, 0xf6, 0x12, 0xac, 0x55, 0x0e, 0x2c, 0x2a, 0x9d, 0x48, 0xf3, 0xa0, + 0x73, 0x6f, 0x7f, 0x16, 0xb0, 0x15, 0x4d, 0xf6, 0x57, 0xb6, 0x77, 0x00, 0xab, 0xea, 0xfc, 0x0b, + 0x7b, 0xb3, 0x3b, 0xdb, 0x3b, 0x90, 0x75, 0x47, 0xb1, 0x51, 0xe8, 0x28, 0xb4, 0x84, 0xac, 0x73, + 0x33, 0x6c, 0x29, 0x35, 0x21, 0x23, 0x07, 0xe3, 0xa2, 0xca, 0xc2, 0xa9, 0x48, 0x25, 0xa8, 0x7a, + 0xdd, 0x0e, 0x68, 0x55, 0xad, 0x7f, 0x67, 0xb5, 0x7e, 0x62, 0x76, 0xd2, 0x74, 0x76, 0x42, 0x39, + 0xef, 0x87, 0x5b, 0xfb, 0x87, 0xa7, 0xfb, 0xb7, 0x5f, 0x9c, 0x6e, 0x8b, 0xfe, 0x70, 0x05, 0xfa, + 0xb5, 0x17, 0xe7, 0x9b, 0x0f, 0xd7, 0xca, 0xa3, 0x13, 0xa6, 0xb6, 0x32, 0xb4, 0x95, 0x67, 0xc7, + 0x81, 0x49, 0xaa, 0x10, 0x85, 0x04, 0xab, 0xb5, 0x01, 0xf4, 0xe4, 0xc0, 0xc7, 0x6c, 0xa1, 0x71, + 0x8c, 0x23, 0x43, 0x2b, 0x2d, 0x36, 0x9e, 0xef, 0x3b, 0x26, 0x27, 0x4b, 0x1f, 0xac, 0xad, 0x3e, + 0x57, 0x1b, 0x1d, 0xe9, 0xfd, 0xf7, 0x56, 0xeb, 0x77, 0x3d, 0x60, 0x17, 0x0a, 0x05, 0x7e, 0x64, + 0x6f, 0x90, 0x09, 0xe5, 0x5d, 0x0f, 0x88, 0xbf, 0xbd, 0x75, 0x81, 0x9e, 0x2c, 0x63, 0x09, 0x44, + 0x76, 0x1c, 0x30, 0x6b, 0x03, 0xde, 0x39, 0x03, 0x41, 0x38, 0x97, 0x04, 0x57, 0x5c, 0x97, 0x5d, + 0x9c, 0xb7, 0xde, 0x1f, 0x7c, 0x21, 0xc6, 0xdf, 0x5a, 0xad, 0xdf, 0xfd, 0x80, 0xc8, 0x2b, 0x47, + 0xfe, 0xe2, 0xde, 0xe0, 0xed, 0xe1, 0xbb, 0x1f, 0x10, 0x7a, 0x17, 0x32, 0x46, 0x4b, 0xc1, 0x24, + 0x0b, 0x44, 0xba, 0xb1, 0xd7, 0x2c, 0x80, 0xe7, 0x5c, 0x83, 0x88, 0x91, 0xc9, 0x6c, 0x4b, 0x46, + 0x8a, 0x1b, 0x57, 0x6e, 0xbe, 0xed, 0xfe, 0xd8, 0x2b, 0x73, 0xfe, 0x6e, 0xcf, 0x9c, 0xbb, 0x67, + 0x2f, 0xa6, 0xc3, 0xb3, 0xed, 0x31, 0xe5, 0x20, 0x42, 0x1a, 0x33, 0xe7, 0x47, 0x17, 0x98, 0x33, + 0xaa, 0x3c, 0x8e, 0x99, 0xa6, 0xe7, 0x7e, 0x41, 0x07, 0x99, 0x2c, 0x01, 0x7a, 0xae, 0x1b, 0x33, + 0x91, 0xc0, 0x12, 0x66, 0xc8, 0x46, 0x86, 0xec, 0x28, 0x61, 0xfd, 0xdc, 0xdf, 0x3b, 0xeb, 0x87, + 0xd1, 0x86, 0xcd, 0x0e, 0xa3, 0xa7, 0x11, 0x75, 0xfe, 0x46, 0x4f, 0x9d, 0xfb, 0xf6, 0xa1, 0x50, + 0xe7, 0x2f, 0x2d, 0x50, 0xe7, 0xbe, 0x1d, 0x68, 0xe3, 0x50, 0xed, 0x18, 0x6f, 0x96, 0xeb, 0x8c, + 0xdc, 0x02, 0x22, 0x11, 0x58, 0xe6, 0x18, 0xf8, 0x44, 0x4e, 0xc8, 0xac, 0x44, 0x2e, 0xf7, 0xbd, + 0xdf, 0xf6, 0x00, 0xe8, 0x0b, 0x77, 0xce, 0x7b, 0xee, 0xdc, 0x17, 0x7a, 0xe5, 0xce, 0x5f, 0x5e, + 0xe0, 0xce, 0x7d, 0xb1, 0x77, 0x57, 0x10, 0x9c, 0xd0, 0x39, 0x8a, 0x08, 0x9e, 0xc7, 0x08, 0x98, + 0x23, 0x81, 0x75, 0x51, 0x34, 0x4e, 0x99, 0x4b, 0xcc, 0x4b, 0x17, 0x78, 0x63, 0x05, 0xdf, 0xfe, + 0x00, 0xe0, 0x2b, 0x79, 0x3e, 0xf5, 0xf2, 0x0e, 0xb8, 0x87, 0x8f, 0x18, 0x7f, 0xaa, 0xf6, 0xe3, + 0x1b, 0x2e, 0xce, 0x37, 0xf9, 0x65, 0x1d, 0x70, 0x8f, 0x1e, 0x38, 0x1a, 0x2d, 0xb8, 0xc4, 0x72, + 0x7c, 0x18, 0x15, 0x20, 0x0a, 0x06, 0x36, 0x2b, 0x0f, 0x59, 0x44, 0x9d, 0x92, 0x53, 0x89, 0xf3, + 0xe1, 0x15, 0x74, 0xf1, 0x80, 0x07, 0xdd, 0xc3, 0x97, 0x8f, 0xfd, 0x29, 0x4e, 0x35, 0xfb, 0x47, + 0x87, 0xa3, 0xac, 0x04, 0xf5, 0x99, 0xc0, 0x4f, 0xef, 0xcd, 0x4e, 0x71, 0xaa, 0xd1, 0x3f, 0x3a, + 0x1c, 0x65, 0x23, 0xe8, 0xde, 0x7b, 0xdb, 0x68, 0x23, 0x0f, 0x0a, 0x94, 0xb1, 0x1a, 0xd0, 0x1a, + 0x05, 0x16, 0xcb, 0xa6, 0x24, 0x77, 0x24, 0xac, 0x33, 0xed, 0x5b, 0xc3, 0xde, 0xe4, 0xbf, 0xff, + 0x70, 0x98, 0x85, 0xa0, 0x3c, 0x20, 0xf8, 0xf1, 0xf1, 0x32, 0x39, 0x85, 0x55, 0x9f, 0x13, 0x7c, + 0x62, 0xd7, 0x32, 0x39, 0xc5, 0xd5, 0xa5, 0x22, 0xa6, 0xe0, 0x45, 0x66, 0x08, 0x82, 0x7c, 0x03, + 0x27, 0x44, 0xf0, 0x82, 0x39, 0xa0, 0x9c, 0x43, 0x62, 0xd1, 0x30, 0x2c, 0xe9, 0x80, 0x5f, 0xb7, + 0x03, 0x58, 0x7d, 0x68, 0xf0, 0xcd, 0xdd, 0x9d, 0xa0, 0x83, 0x44, 0x27, 0xf7, 0xf6, 0xd3, 0x4b, + 0xbd, 0xe1, 0xf8, 0x99, 0xbd, 0xf9, 0x9d, 0xa0, 0xae, 0xd0, 0xc0, 0x8f, 0x08, 0x24, 0x58, 0x36, + 0x06, 0xbc, 0xf0, 0x0e, 0xd0, 0x44, 0x04, 0xd2, 0x51, 0x03, 0x47, 0x1f, 0x3c, 0x66, 0x1b, 0x1d, + 0x89, 0xfe, 0x03, 0x6f, 0x5d, 0xf5, 0xce, 0x14, 0x9c, 0x74, 0x97, 0x82, 0x7a, 0xe1, 0x65, 0xc6, + 0xff, 0x95, 0xbd, 0xf9, 0xa5, 0xa0, 0x5e, 0x72, 0xfb, 0xf5, 0x69, 0xc9, 0x93, 0xb3, 0x25, 0x49, + 0x41, 0x0e, 0x80, 0xd6, 0x13, 0x50, 0x88, 0x04, 0xe5, 0x9b, 0x92, 0x52, 0x06, 0x8c, 0xac, 0xdf, + 0x65, 0xef, 0xc5, 0x96, 0x39, 0x7c, 0xb7, 0xbb, 0x15, 0xd4, 0xcb, 0xac, 0x53, 0xf5, 0x67, 0xf7, + 0xe6, 0xb7, 0x82, 0x7a, 0xa1, 0x9d, 0x39, 0xc7, 0x94, 0xa2, 0x60, 0x01, 0x5c, 0x72, 0x0c, 0x90, + 0xca, 0x27, 0xd3, 0x02, 0x82, 0xce, 0x41, 0xfb, 0xac, 0x18, 0x6a, 0x96, 0xba, 0x4b, 0x01, 0xbd, + 0xd4, 0xc9, 0x07, 0xa5, 0x87, 0x77, 0xff, 0x66, 0xde, 0xf7, 0x6f, 0xcc, 0xfd, 0x91, 0xe1, 0x05, + 0xc0, 0xb9, 0x03, 0x1e, 0x25, 0x66, 0xa1, 0x8d, 0x05, 0xad, 0x98, 0x00, 0x4c, 0x82, 0x01, 0x39, + 0xa9, 0x80, 0x6b, 0x1b, 0xac, 0x62, 0xce, 0xb0, 0x9a, 0xe9, 0x65, 0x7c, 0x0b, 0x70, 0xea, 0x82, + 0x2f, 0xde, 0xdb, 0x1c, 0x7b, 0xe1, 0xbf, 0xb9, 0x77, 0xe9, 0xbd, 0xcd, 0x89, 0x23, 0xae, 0x50, + 0x72, 0xc6, 0xb0, 0xc0, 0x32, 0x80, 0xc6, 0x21, 0xb8, 0x2c, 0x33, 0x08, 0xc7, 0x65, 0x8c, 0x3c, + 0x73, 0xd2, 0x6e, 0x7e, 0x6f, 0x73, 0xe4, 0x8a, 0xf7, 0x33, 0x79, 0x11, 0x53, 0xd5, 0xd9, 0x6f, + 0xcd, 0x67, 0xf2, 0x22, 0xa8, 0x56, 0x7d, 0x49, 0x89, 0x6c, 0x24, 0x1a, 0x30, 0x14, 0x78, 0xb3, + 0x1a, 0xb3, 0xf2, 0xf6, 0x08, 0x90, 0x1b, 0xe4, 0x39, 0x65, 0x4a, 0xd9, 0x77, 0x33, 0x79, 0x8e, + 0xaa, 0xea, 0xb1, 0x0f, 0xe4, 0xe2, 0xe1, 0x82, 0xfe, 0x7e, 0x7b, 0x1e, 0xc8, 0xc5, 0xc3, 0x25, + 0xbd, 0x65, 0x92, 0x0c, 0x75, 0x12, 0x40, 0x5a, 0x05, 0x40, 0x46, 0x0a, 0x48, 0x8a, 0x0c, 0x8a, + 0x79, 0x1d, 0x54, 0x10, 0xd2, 0x97, 0xfc, 0x22, 0x8f, 0xb4, 0xa7, 0x44, 0x53, 0x85, 0x0d, 0xcf, + 0xe3, 0xc6, 0x7a, 0xfa, 0x9d, 0xbd, 0xc5, 0xf3, 0xb8, 0x89, 0x7e, 0xa4, 0x67, 0x31, 0x73, 0x45, + 0xc0, 0x4d, 0xb9, 0xdd, 0x52, 0xbe, 0x36, 0x65, 0x12, 0x24, 0x1e, 0x14, 0xc5, 0x98, 0x64, 0x94, + 0x72, 0x70, 0x1e, 0x37, 0x52, 0x4c, 0x77, 0x95, 0x61, 0x24, 0xbb, 0xfd, 0x26, 0xe3, 0xfc, 0x56, + 0xc9, 0x48, 0x78, 0xef, 0x15, 0x71, 0xc6, 0x7d, 0x62, 0xa0, 0xb3, 0x53, 0x80, 0x4c, 0x63, 0xd3, + 0x79, 0x07, 0x22, 0x1b, 0xa5, 0xb5, 0x0a, 0x29, 0x88, 0xde, 0x66, 0x0c, 0xa4, 0x57, 0x05, 0xfc, + 0xe3, 0xd5, 0x9a, 0xdf, 0xd7, 0x7f, 0x9b, 0x7f, 0xa5, 0x71, 0x6f, 0x90, 0x52, 0x8c, 0xdf, 0xd7, + 0x89, 0x9b, 0x2b, 0xcc, 0x18, 0x34, 0x2c, 0x04, 0x0f, 0xc1, 0x06, 0x09, 0x68, 0x4c, 0x04, 0xef, + 0x48, 0x42, 0x56, 0x48, 0x5a, 0x32, 0x29, 0x62, 0xf9, 0x80, 0xcf, 0xbb, 0x2f, 0xf5, 0xe4, 0xa6, + 0x6a, 0x7c, 0xa0, 0x40, 0x60, 0xf2, 0x7d, 0xc7, 0x97, 0x17, 0x08, 0x4c, 0xf4, 0xee, 0x31, 0x9a, + 0x88, 0x5c, 0x83, 0x54, 0x01, 0x01, 0xa3, 0x6d, 0x1c, 0x22, 0x25, 0x21, 0x3a, 0x19, 0x50, 0x78, + 0x1b, 0x79, 0xf9, 0x82, 0xdf, 0x3b, 0x1e, 0xa8, 0x17, 0x85, 0x0d, 0x7f, 0x6f, 0xb5, 0x7e, 0xf2, + 0xc1, 0xbb, 0xd0, 0x7e, 0x19, 0x72, 0x6f, 0x90, 0x23, 0xf8, 0xc9, 0x07, 0xef, 0x43, 0x4b, 0x1f, + 0x97, 0xb8, 0xe7, 0x5a, 0x23, 0xd8, 0xc8, 0x38, 0x20, 0x49, 0x05, 0xd6, 0x8b, 0x04, 0xc4, 0x14, + 0x32, 0xcd, 0x28, 0x93, 0x16, 0xbd, 0x4f, 0x7a, 0xbf, 0x4e, 0x4c, 0x22, 0xb2, 0x70, 0x74, 0x78, + 0x96, 0x0e, 0xcf, 0x6e, 0xc5, 0x74, 0xb0, 0x7f, 0x2f, 0x9d, 0x7c, 0xac, 0xff, 0x88, 0xcd, 0x8c, + 0x51, 0xbf, 0x3b, 0x57, 0x44, 0x5b, 0x19, 0xba, 0xca, 0xfd, 0xf7, 0x6d, 0x16, 0xae, 0x76, 0x09, + 0x1b, 0x4c, 0x13, 0xd4, 0xd8, 0xa8, 0x22, 0x60, 0x74, 0x0e, 0xac, 0x95, 0x08, 0x31, 0x44, 0xe9, + 0xbd, 0x73, 0xc9, 0x6d, 0x15, 0xf1, 0x4c, 0x6d, 0xf6, 0xd9, 0xb6, 0xd5, 0xf6, 0xc3, 0x37, 0x53, + 0x2e, 0xf5, 0x11, 0xd9, 0xfd, 0xbb, 0x50, 0xbf, 0x40, 0x39, 0x77, 0xab, 0xef, 0x8f, 0xbf, 0x5d, + 0x7c, 0x49, 0x31, 0x13, 0x5d, 0x00, 0xa7, 0x82, 0x03, 0x54, 0x9c, 0x81, 0xcf, 0x06, 0xc1, 0x73, + 0x27, 0x3d, 0x3a, 0x4d, 0x2a, 0xba, 0x2e, 0x22, 0xbb, 0x1c, 0xfc, 0x38, 0x22, 0xbb, 0x3f, 0xf2, + 0xf6, 0x93, 0x95, 0x73, 0xaf, 0xfa, 0xfe, 0xd0, 0xfb, 0x0f, 0x73, 0x3b, 0x97, 0x42, 0x76, 0xe0, + 0x02, 0x23, 0x40, 0xa3, 0x13, 0x58, 0x61, 0x14, 0x78, 0xae, 0x34, 0xcb, 0x42, 0x32, 0x56, 0x1e, + 0x5d, 0xbf, 0xed, 0xfe, 0xd8, 0x2b, 0x73, 0xfe, 0xda, 0x6a, 0xfd, 0x8e, 0x9d, 0x17, 0xbf, 0x67, + 0xa4, 0xf9, 0x1b, 0x7b, 0x83, 0xe4, 0x30, 0xef, 0xd8, 0x79, 0xfb, 0x7b, 0xce, 0x17, 0xc6, 0x34, + 0x67, 0x56, 0x27, 0xe0, 0x9a, 0x35, 0xfe, 0x8e, 0x44, 0xb0, 0x26, 0x30, 0x88, 0x41, 0x3a, 0x2d, + 0x8d, 0x15, 0x5c, 0x86, 0x1b, 0x57, 0x6e, 0x5e, 0x5f, 0xbc, 0x02, 0x3e, 0xa5, 0xca, 0xa5, 0x37, + 0xff, 0xc7, 0x2c, 0xf9, 0x9b, 0x7b, 0x0f, 0x74, 0xf3, 0x7f, 0x6a, 0x66, 0x84, 0x11, 0x3e, 0xab, + 0x00, 0xd2, 0x95, 0x77, 0xb6, 0x26, 0x34, 0xec, 0x16, 0x40, 0x9c, 0x61, 0x62, 0x68, 0x52, 0xb2, + 0x76, 0xe7, 0xcd, 0xff, 0x11, 0x37, 0x7e, 0xbd, 0x3b, 0x27, 0xbf, 0x14, 0x6a, 0xa5, 0xc5, 0xdf, + 0xda, 0x9b, 0x9d, 0x93, 0x5f, 0x8a, 0xb5, 0xcf, 0x0a, 0x2c, 0x55, 0x6c, 0x86, 0xd6, 0x07, 0x66, + 0x01, 0x23, 0x57, 0xe0, 0xbc, 0x11, 0x10, 0x49, 0x6a, 0x91, 0x44, 0x10, 0x4c, 0x36, 0xae, 0xe4, + 0x9b, 0x2e, 0x05, 0x5b, 0xc9, 0xf0, 0xbb, 0xab, 0xf5, 0x3b, 0x77, 0x1f, 0x40, 0xcf, 0xd8, 0x70, + 0xbe, 0x37, 0xc8, 0x4d, 0xf7, 0xce, 0xdd, 0xa7, 0xd0, 0x0b, 0x74, 0xf0, 0x2c, 0x1a, 0xc5, 0x12, + 0x84, 0x68, 0x1a, 0x47, 0xd4, 0x58, 0xb0, 0xc2, 0x5b, 0xd0, 0x4c, 0x19, 0x26, 0xa2, 0x17, 0x81, + 0x52, 0x37, 0x03, 0x17, 0x8e, 0xa2, 0xa7, 0x84, 0xb8, 0xfc, 0x36, 0xc2, 0x98, 0x11, 0x7f, 0x7b, + 0xef, 0xc1, 0x6e, 0x23, 0x4c, 0x28, 0xa1, 0x2d, 0x8b, 0xda, 0x61, 0x04, 0x11, 0x1b, 0x8f, 0x0b, + 0xb3, 0x02, 0x22, 0x96, 0x41, 0x23, 0x53, 0xc6, 0x49, 0x91, 0x45, 0xbe, 0xec, 0x36, 0xc2, 0x88, + 0x14, 0xbf, 0xbd, 0x5a, 0xbf, 0xfd, 0x01, 0xe0, 0x56, 0x56, 0xfc, 0x3b, 0x7b, 0xc3, 0x4c, 0x74, + 0x0f, 0x80, 0xb7, 0xbb, 0x23, 0xc7, 0x84, 0xcd, 0x8c, 0x1c, 0xb0, 0x54, 0xae, 0xbe, 0x46, 0x02, + 0xd2, 0x28, 0xc1, 0x31, 0x62, 0x64, 0x85, 0xa4, 0x54, 0x86, 0xf8, 0xfa, 0x7d, 0x00, 0x57, 0x62, + 0xfc, 0x93, 0xde, 0x69, 0xb9, 0x64, 0xe3, 0x60, 0xc6, 0x8f, 0x7f, 0x77, 0xc1, 0x69, 0xb9, 0x64, + 0xf7, 0x60, 0x4e, 0x13, 0x2f, 0x6d, 0xd6, 0x1e, 0x39, 0x58, 0xca, 0x0c, 0xd0, 0x48, 0x01, 0x1e, + 0xbd, 0x00, 0xa6, 0x85, 0x63, 0x52, 0x5b, 0x17, 0xcb, 0xf7, 0xbf, 0xe1, 0xf2, 0x2d, 0x84, 0x29, + 0x5b, 0x1e, 0x68, 0x13, 0x6a, 0x4c, 0x9a, 0x7f, 0xef, 0xe5, 0x6d, 0x42, 0x4d, 0xb8, 0x13, 0x75, + 0x12, 0x91, 0x2b, 0x0b, 0x91, 0x0b, 0x0b, 0x48, 0x82, 0xc0, 0x33, 0x8e, 0x20, 0x50, 0x90, 0x34, + 0x31, 0x6a, 0xe5, 0xfc, 0xfd, 0x37, 0xa1, 0x46, 0x14, 0xfa, 0xfb, 0xbd, 0xdb, 0xf2, 0x20, 0x7d, + 0xa8, 0x4c, 0xfa, 0x3b, 0x0b, 0x6e, 0xcb, 0x83, 0x74, 0xa2, 0x5b, 0x79, 0x04, 0x05, 0x1e, 0x2c, + 0x03, 0xb4, 0xd6, 0x00, 0x26, 0x9f, 0x81, 0x38, 0x7a, 0x70, 0x2e, 0x65, 0x49, 0xa4, 0x52, 0xbd, + 0xa7, 0xfa, 0xae, 0x07, 0xeb, 0x45, 0xe5, 0x55, 0x3f, 0x13, 0x16, 0x6e, 0x3a, 0xcd, 0xe8, 0xf4, + 0x77, 0xe7, 0x33, 0x61, 0xe1, 0xba, 0xd3, 0x9c, 0x45, 0xe4, 0x43, 0xd6, 0x42, 0x7b, 0x88, 0xbe, + 0x19, 0x7e, 0x63, 0xca, 0xd1, 0x9b, 0x05, 0x97, 0x85, 0x61, 0x5e, 0xa6, 0x14, 0x95, 0xe9, 0x66, + 0xc2, 0xec, 0xce, 0xd3, 0x94, 0x3c, 0x97, 0x5d, 0x72, 0x1b, 0x73, 0xe6, 0x62, 0xef, 0x41, 0x2e, + 0xb9, 0x4d, 0xaf, 0x64, 0x86, 0xec, 0x75, 0x4e, 0x1a, 0x48, 0x39, 0x03, 0xc8, 0xb5, 0x04, 0x72, + 0x26, 0x81, 0xd7, 0x9e, 0x5b, 0x95, 0x33, 0x13, 0x9c, 0xed, 0xbc, 0xe4, 0x36, 0x62, 0xc8, 0xaf, + 0x76, 0x8b, 0xe4, 0x65, 0x40, 0x2b, 0x31, 0xfe, 0xde, 0x7c, 0x91, 0xbc, 0x0c, 0x69, 0x77, 0xca, + 0x9a, 0x53, 0x44, 0x2e, 0x12, 0x08, 0x15, 0x73, 0x13, 0x83, 0x05, 0x70, 0xc2, 0x25, 0xc8, 0x14, + 0xbc, 0xe2, 0x0a, 0xa3, 0xc6, 0xdc, 0xad, 0x3b, 0x3b, 0xa1, 0x56, 0x1a, 0xfc, 0x8b, 0xd5, 0xfa, + 0x0b, 0x5e, 0xc6, 0xce, 0xde, 0x8c, 0x19, 0x7f, 0xbf, 0x76, 0xe0, 0xf6, 0xc5, 0xf9, 0x26, 0xd4, + 0x96, 0x1e, 0x70, 0x7b, 0x6f, 0xc1, 0xe4, 0x58, 0xcd, 0x98, 0xa2, 0xf2, 0x21, 0x8f, 0xc6, 0xb1, + 0x25, 0x03, 0x4e, 0x70, 0x0b, 0x2c, 0x32, 0xe7, 0xb4, 0xd0, 0x26, 0x95, 0xb7, 0x6a, 0xfa, 0x01, + 0xf7, 0xf6, 0xa6, 0xf4, 0x79, 0x99, 0xaf, 0xab, 0xc6, 0x8c, 0xfa, 0x07, 0x7b, 0x9f, 0xe1, 0xeb, + 0xaa, 0xd9, 0xee, 0x86, 0x0f, 0xc2, 0x07, 0x0d, 0x14, 0x2c, 0x01, 0x2a, 0xa3, 0xc0, 0xb9, 0x2c, + 0xcb, 0x07, 0x32, 0x43, 0xb0, 0xc2, 0x46, 0x1d, 0x5e, 0xc6, 0xeb, 0xaa, 0x11, 0xed, 0x3e, 0xb5, + 0x5a, 0xbb, 0xcf, 0xa4, 0x83, 0x95, 0x89, 0xff, 0xfe, 0xde, 0x20, 0x8d, 0x92, 0xfb, 0x4c, 0x7a, + 0xd8, 0x1d, 0x34, 0x67, 0x89, 0x25, 0x3a, 0xb7, 0x8c, 0x22, 0x20, 0x0b, 0x12, 0x9c, 0x10, 0x01, + 0x14, 0x99, 0x4c, 0x68, 0x38, 0x0f, 0x65, 0x5f, 0x09, 0x5f, 0x66, 0x17, 0x2b, 0x5d, 0xfb, 0xa9, + 0x15, 0xd3, 0x41, 0xba, 0x4d, 0x67, 0x29, 0x76, 0x9f, 0xa5, 0x9a, 0x31, 0xf3, 0x1f, 0xce, 0xa7, + 0x56, 0x5f, 0xa9, 0xfb, 0x4c, 0xd5, 0x9c, 0x84, 0x82, 0x67, 0x97, 0xa3, 0x0f, 0x20, 0xd0, 0x08, + 0x40, 0x56, 0x72, 0x63, 0x36, 0xa6, 0x36, 0xda, 0xec, 0x28, 0x20, 0xb2, 0xf2, 0x25, 0xc5, 0x32, + 0xb5, 0x9e, 0xed, 0x9a, 0xab, 0x9f, 0xad, 0x9a, 0x12, 0xae, 0xbf, 0x4b, 0xba, 0x1b, 0x6b, 0xe1, + 0xd6, 0x3f, 0x9a, 0x1f, 0xc1, 0xee, 0x06, 0xda, 0x3e, 0xae, 0xe1, 0x51, 0xca, 0xcc, 0x38, 0xb0, + 0xa8, 0x25, 0x60, 0x26, 0x07, 0x3e, 0x25, 0x06, 0x3e, 0x7a, 0xe3, 0xa3, 0x4b, 0x91, 0x23, 0xeb, + 0xee, 0x92, 0xee, 0x40, 0x59, 0x28, 0xd3, 0x5f, 0xce, 0xdc, 0x0d, 0xb1, 0xb2, 0xe3, 0x1f, 0xef, + 0xcd, 0x2e, 0x67, 0xee, 0xc6, 0xd8, 0x12, 0x81, 0x85, 0x10, 0x22, 0x13, 0x16, 0x0c, 0xb7, 0xcd, + 0xda, 0x6b, 0x12, 0xb8, 0xe8, 0x22, 0xa0, 0x8a, 0x96, 0xca, 0xe6, 0x47, 0x39, 0x42, 0x79, 0xe3, + 0x25, 0x20, 0x27, 0x1b, 0xa0, 0xc3, 0x5c, 0x13, 0x33, 0x7d, 0xff, 0x93, 0xbd, 0x4b, 0x93, 0x68, + 0x2d, 0x5c, 0xcb, 0x4a, 0x02, 0x9d, 0xf7, 0x04, 0x98, 0x88, 0x00, 0x31, 0x20, 0xd8, 0xa0, 0x2d, + 0x08, 0x67, 0x94, 0xc9, 0xda, 0x38, 0x13, 0xed, 0x3c, 0x89, 0xd6, 0xce, 0x0d, 0xd0, 0x45, 0x70, + 0x45, 0xc1, 0xff, 0x74, 0xef, 0xd2, 0x3c, 0x21, 0x13, 0xdd, 0x86, 0xcc, 0xb8, 0xf5, 0x59, 0x81, + 0x67, 0x2a, 0x01, 0x5a, 0x1d, 0xc0, 0x92, 0x8d, 0xa0, 0x8d, 0xc8, 0x5a, 0x3b, 0x17, 0x63, 0xc9, + 0x71, 0xfd, 0xf8, 0x32, 0xac, 0xa2, 0xd6, 0x4f, 0x2c, 0x65, 0xd1, 0x9a, 0x68, 0xf4, 0x3f, 0xd8, + 0xbb, 0x34, 0x8d, 0xd6, 0xcc, 0x05, 0xf1, 0xc2, 0xea, 0xec, 0x04, 0x30, 0xaf, 0x2d, 0xa0, 0x25, + 0x06, 0x64, 0x9d, 0x02, 0x4c, 0x4e, 0x79, 0x1b, 0x8c, 0x55, 0x96, 0x76, 0xa7, 0xd1, 0x1a, 0xeb, + 0xf3, 0x77, 0xba, 0x49, 0x5c, 0xbe, 0x2a, 0x77, 0x7c, 0x7c, 0xeb, 0x34, 0xd0, 0xe1, 0xe1, 0x62, + 0x9c, 0xf3, 0x1f, 0x0e, 0xbd, 0xbf, 0x3a, 0x89, 0xcb, 0x57, 0xe6, 0x8e, 0x8f, 0xa1, 0xab, 0xb4, + 0x74, 0xb7, 0xc4, 0xc7, 0xe4, 0x2c, 0x06, 0x10, 0x0c, 0x25, 0xa0, 0xe3, 0x02, 0x9c, 0xce, 0x1a, + 0x7c, 0x34, 0x5e, 0x87, 0x4c, 0x56, 0xe9, 0x61, 0xba, 0xa8, 0x42, 0x96, 0x17, 0x92, 0x7f, 0xea, + 0xf8, 0xf8, 0xf9, 0xb6, 0xd1, 0xa9, 0x96, 0x7f, 0xa5, 0x9b, 0xcb, 0xbb, 0x21, 0x17, 0x55, 0xff, + 0xb3, 0xe1, 0xd6, 0xc8, 0x9b, 0xef, 0x83, 0xb7, 0x7b, 0x0a, 0x12, 0x95, 0xc9, 0x8c, 0x01, 0x95, + 0xcf, 0x76, 0xd8, 0xa4, 0xc1, 0x65, 0x26, 0xc1, 0x73, 0x1e, 0x9c, 0x89, 0xda, 0x7b, 0xe3, 0x06, + 0x60, 0xaf, 0xed, 0x06, 0x5b, 0x74, 0xff, 0x6b, 0xdd, 0x94, 0xde, 0x8d, 0xb4, 0x12, 0xe0, 0x3f, + 0x1a, 0x6e, 0x85, 0x5c, 0xbf, 0x0f, 0xd4, 0x6e, 0xfb, 0x35, 0x68, 0xa3, 0x51, 0x26, 0x30, 0x2c, + 0x73, 0x40, 0x2d, 0x23, 0x78, 0x2d, 0x05, 0x48, 0x13, 0x15, 0x21, 0x59, 0x15, 0x46, 0xe9, 0x42, + 0xde, 0xb0, 0x1b, 0x6b, 0x61, 0xc2, 0xd3, 0x9f, 0xbd, 0xfe, 0xac, 0xf0, 0xe2, 0xd1, 0x7e, 0x48, + 0x4f, 0x7f, 0x7c, 0xf5, 0xfb, 0x9f, 0xba, 0x76, 0xe5, 0x0f, 0x3e, 0x75, 0xed, 0xca, 0x1f, 0x7f, + 0xea, 0xda, 0xea, 0xe3, 0x9f, 0xbe, 0xb6, 0xfa, 0xe4, 0xa7, 0xaf, 0xad, 0xfe, 0xd1, 0xa7, 0xaf, + 0xad, 0x7e, 0xff, 0xd3, 0xd7, 0x56, 0xff, 0xe5, 0xa7, 0xaf, 0xad, 0xfe, 0xe8, 0xd3, 0xd7, 0xae, + 0xfc, 0xf1, 0xa7, 0xaf, 0xad, 0x7e, 0xf8, 0x0f, 0xaf, 0x5d, 0xf9, 0xfd, 0x3f, 0xbc, 0x76, 0xe5, + 0x0f, 0xfe, 0xf0, 0xda, 0x95, 0xaf, 0xfd, 0x8a, 0xdb, 0x47, 0xc7, 0x1f, 0xb9, 0x5d, 0x32, 0x9d, + 0xa7, 0x93, 0x13, 0x7a, 0xe2, 0xee, 0xe9, 0x93, 0xe5, 0x0f, 0xf9, 0xe8, 0xe4, 0x4e, 0xb3, 0x48, + 0xdd, 0xdb, 0x8f, 0xe9, 0x04, 0xba, 0x9f, 0x9f, 0x3c, 0xf6, 0xb7, 0x8f, 0x9e, 0x4c, 0x1f, 0x3d, + 0x3b, 0x0d, 0x2f, 0xa6, 0x3b, 0xf4, 0x64, 0xfb, 0xbf, 0x7b, 0xe9, 0x34, 0x1d, 0xde, 0xf3, 0x9f, + 0xd5, 0x2c, 0x6a, 0x47, 0xf2, 0x5f, 0x06, 0x00, 0x00, 0xff, 0xff, 0xe9, 0x7c, 0xb4, 0xd4, 0xc2, + 0x9c, 0x00, 0x00, } func (this *APIGroupChoice) Equal(that interface{}) bool { @@ -4456,14 +5299,14 @@ func (this *APIGroupChoice_F5XcScimClient) Equal(that interface{}) bool { } return true } -func (this *APIGroupChoice_InfrastructureDemoAccessRead) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcConsoleBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_InfrastructureDemoAccessRead) + that1, ok := that.(*APIGroupChoice_F5XcConsoleBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_InfrastructureDemoAccessRead) + that2, ok := that.(APIGroupChoice_F5XcConsoleBasicMonitor) if ok { that1 = &that2 } else { @@ -4475,19 +5318,19 @@ func (this *APIGroupChoice_InfrastructureDemoAccessRead) Equal(that interface{}) } else if this == nil { return false } - if this.InfrastructureDemoAccessRead != that1.InfrastructureDemoAccessRead { + if this.F5XcConsoleBasicMonitor != that1.F5XcConsoleBasicMonitor { return false } return true } -func (this *APIGroupChoice_VesIoBillingRead) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcConsoleBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_VesIoBillingRead) + that1, ok := that.(*APIGroupChoice_F5XcConsoleBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_VesIoBillingRead) + that2, ok := that.(APIGroupChoice_F5XcConsoleBasicUser) if ok { that1 = &that2 } else { @@ -4499,19 +5342,19 @@ func (this *APIGroupChoice_VesIoBillingRead) Equal(that interface{}) bool { } else if this == nil { return false } - if this.VesIoBillingRead != that1.VesIoBillingRead { + if this.F5XcConsoleBasicUser != that1.F5XcConsoleBasicUser { return false } return true } -func (this *APIGroupChoice_VesIoBillingWrite) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcConsoleBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_VesIoBillingWrite) + that1, ok := that.(*APIGroupChoice_F5XcConsoleBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_VesIoBillingWrite) + that2, ok := that.(APIGroupChoice_F5XcConsoleBasicAdmin) if ok { that1 = &that2 } else { @@ -4523,19 +5366,19 @@ func (this *APIGroupChoice_VesIoBillingWrite) Equal(that interface{}) bool { } else if this == nil { return false } - if this.VesIoBillingWrite != that1.VesIoBillingWrite { + if this.F5XcConsoleBasicAdmin != that1.F5XcConsoleBasicAdmin { return false } return true } -func (this *APIGroupChoice_VesIoGeneralRead) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcConsoleStandardMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_VesIoGeneralRead) + that1, ok := that.(*APIGroupChoice_F5XcConsoleStandardMonitor) if !ok { - that2, ok := that.(APIGroupChoice_VesIoGeneralRead) + that2, ok := that.(APIGroupChoice_F5XcConsoleStandardMonitor) if ok { that1 = &that2 } else { @@ -4547,12 +5390,228 @@ func (this *APIGroupChoice_VesIoGeneralRead) Equal(that interface{}) bool { } else if this == nil { return false } - if this.VesIoGeneralRead != that1.VesIoGeneralRead { + if this.F5XcConsoleStandardMonitor != that1.F5XcConsoleStandardMonitor { return false } return true } -func (this *APIGroupChoice_VesIoGeneralWrite) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcConsoleStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcConsoleStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcConsoleStandardUser) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleStandardUser != that1.F5XcConsoleStandardUser { + return false + } + return true +} +func (this *APIGroupChoice_F5XcConsoleStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcConsoleStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcConsoleStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleStandardAdmin != that1.F5XcConsoleStandardAdmin { + return false + } + return true +} +func (this *APIGroupChoice_F5XcConsoleAdvancedMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcConsoleAdvancedMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcConsoleAdvancedMonitor) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleAdvancedMonitor != that1.F5XcConsoleAdvancedMonitor { + return false + } + return true +} +func (this *APIGroupChoice_F5XcConsoleAdvancedUser) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcConsoleAdvancedUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcConsoleAdvancedUser) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleAdvancedUser != that1.F5XcConsoleAdvancedUser { + return false + } + return true +} +func (this *APIGroupChoice_F5XcConsoleAdvancedAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcConsoleAdvancedAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcConsoleAdvancedAdmin) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcConsoleAdvancedAdmin != that1.F5XcConsoleAdvancedAdmin { + return false + } + return true +} +func (this *APIGroupChoice_InfrastructureDemoAccessRead) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_InfrastructureDemoAccessRead) + if !ok { + that2, ok := that.(APIGroupChoice_InfrastructureDemoAccessRead) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.InfrastructureDemoAccessRead != that1.InfrastructureDemoAccessRead { + return false + } + return true +} +func (this *APIGroupChoice_VesIoBillingRead) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_VesIoBillingRead) + if !ok { + that2, ok := that.(APIGroupChoice_VesIoBillingRead) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.VesIoBillingRead != that1.VesIoBillingRead { + return false + } + return true +} +func (this *APIGroupChoice_VesIoBillingWrite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_VesIoBillingWrite) + if !ok { + that2, ok := that.(APIGroupChoice_VesIoBillingWrite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.VesIoBillingWrite != that1.VesIoBillingWrite { + return false + } + return true +} +func (this *APIGroupChoice_VesIoGeneralRead) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_VesIoGeneralRead) + if !ok { + that2, ok := that.(APIGroupChoice_VesIoGeneralRead) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.VesIoGeneralRead != that1.VesIoGeneralRead { + return false + } + return true +} +func (this *APIGroupChoice_VesIoGeneralWrite) Equal(that interface{}) bool { if that == nil { return this == nil } @@ -7696,14 +8755,14 @@ func (this *APIGroupChoice_F5XcWaapBasicAdmin) Equal(that interface{}) bool { } return true } -func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcWaapStandardMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcWaapAdvancedMonitor) + that1, ok := that.(*APIGroupChoice_F5XcWaapStandardMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcWaapAdvancedMonitor) + that2, ok := that.(APIGroupChoice_F5XcWaapStandardMonitor) if ok { that1 = &that2 } else { @@ -7715,19 +8774,19 @@ func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) Equal(that interface{}) bool } else if this == nil { return false } - if this.F5XcWaapAdvancedMonitor != that1.F5XcWaapAdvancedMonitor { + if this.F5XcWaapStandardMonitor != that1.F5XcWaapStandardMonitor { return false } return true } -func (this *APIGroupChoice_F5XcWaapAdvancedUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcWaapStandardUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcWaapAdvancedUser) + that1, ok := that.(*APIGroupChoice_F5XcWaapStandardUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcWaapAdvancedUser) + that2, ok := that.(APIGroupChoice_F5XcWaapStandardUser) if ok { that1 = &that2 } else { @@ -7739,19 +8798,19 @@ func (this *APIGroupChoice_F5XcWaapAdvancedUser) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcWaapAdvancedUser != that1.F5XcWaapAdvancedUser { + if this.F5XcWaapStandardUser != that1.F5XcWaapStandardUser { return false } return true } -func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcWaapStandardAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcWaapAdvancedAdmin) + that1, ok := that.(*APIGroupChoice_F5XcWaapStandardAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcWaapAdvancedAdmin) + that2, ok := that.(APIGroupChoice_F5XcWaapStandardAdmin) if ok { that1 = &that2 } else { @@ -7763,19 +8822,19 @@ func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcWaapAdvancedAdmin != that1.F5XcWaapAdvancedAdmin { + if this.F5XcWaapStandardAdmin != that1.F5XcWaapStandardAdmin { return false } return true } -func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSiteManagementBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcWaapAdvancedMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSiteManagementBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcWaapAdvancedMonitor) if ok { that1 = &that2 } else { @@ -7787,19 +8846,19 @@ func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) Equal(that interface{ } else if this == nil { return false } - if this.F5XcSiteManagementBasicMonitor != that1.F5XcSiteManagementBasicMonitor { + if this.F5XcWaapAdvancedMonitor != that1.F5XcWaapAdvancedMonitor { return false } return true } -func (this *APIGroupChoice_F5XcSiteManagementBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcWaapAdvancedUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSiteManagementBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcWaapAdvancedUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSiteManagementBasicUser) + that2, ok := that.(APIGroupChoice_F5XcWaapAdvancedUser) if ok { that1 = &that2 } else { @@ -7811,19 +8870,19 @@ func (this *APIGroupChoice_F5XcSiteManagementBasicUser) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcSiteManagementBasicUser != that1.F5XcSiteManagementBasicUser { + if this.F5XcWaapAdvancedUser != that1.F5XcWaapAdvancedUser { return false } return true } -func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSiteManagementBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcWaapAdvancedAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSiteManagementBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcWaapAdvancedAdmin) if ok { that1 = &that2 } else { @@ -7835,19 +8894,19 @@ func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcSiteManagementBasicAdmin != that1.F5XcSiteManagementBasicAdmin { + if this.F5XcWaapAdvancedAdmin != that1.F5XcWaapAdvancedAdmin { return false } return true } -func (this *APIGroupChoice_F5XcDnsBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcDnsBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcSiteManagementBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcDnsBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcSiteManagementBasicMonitor) if ok { that1 = &that2 } else { @@ -7859,19 +8918,19 @@ func (this *APIGroupChoice_F5XcDnsBasicMonitor) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcDnsBasicMonitor != that1.F5XcDnsBasicMonitor { + if this.F5XcSiteManagementBasicMonitor != that1.F5XcSiteManagementBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcDnsBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSiteManagementBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcDnsBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcSiteManagementBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcDnsBasicUser) + that2, ok := that.(APIGroupChoice_F5XcSiteManagementBasicUser) if ok { that1 = &that2 } else { @@ -7883,19 +8942,19 @@ func (this *APIGroupChoice_F5XcDnsBasicUser) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcDnsBasicUser != that1.F5XcDnsBasicUser { + if this.F5XcSiteManagementBasicUser != that1.F5XcSiteManagementBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcDnsBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcDnsBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcSiteManagementBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcDnsBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcSiteManagementBasicAdmin) if ok { that1 = &that2 } else { @@ -7907,19 +8966,19 @@ func (this *APIGroupChoice_F5XcDnsBasicAdmin) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcDnsBasicAdmin != that1.F5XcDnsBasicAdmin { + if this.F5XcSiteManagementBasicAdmin != that1.F5XcSiteManagementBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSiteManagementStandardMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcSiteManagementStandardMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAccountProtectionBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcSiteManagementStandardMonitor) if ok { that1 = &that2 } else { @@ -7931,19 +8990,19 @@ func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) Equal(that interfa } else if this == nil { return false } - if this.F5XcAccountProtectionBasicMonitor != that1.F5XcAccountProtectionBasicMonitor { + if this.F5XcSiteManagementStandardMonitor != that1.F5XcSiteManagementStandardMonitor { return false } return true } -func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSiteManagementStandardUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcSiteManagementStandardUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAccountProtectionBasicUser) + that2, ok := that.(APIGroupChoice_F5XcSiteManagementStandardUser) if ok { that1 = &that2 } else { @@ -7955,19 +9014,19 @@ func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) Equal(that interface{ } else if this == nil { return false } - if this.F5XcAccountProtectionBasicUser != that1.F5XcAccountProtectionBasicUser { + if this.F5XcSiteManagementStandardUser != that1.F5XcSiteManagementStandardUser { return false } return true } -func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSiteManagementStandardAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcSiteManagementStandardAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAccountProtectionBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcSiteManagementStandardAdmin) if ok { that1 = &that2 } else { @@ -7979,19 +9038,19 @@ func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) Equal(that interface } else if this == nil { return false } - if this.F5XcAccountProtectionBasicAdmin != that1.F5XcAccountProtectionBasicAdmin { + if this.F5XcSiteManagementStandardAdmin != that1.F5XcSiteManagementStandardAdmin { return false } return true } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcDnsBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcDnsBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcDnsBasicMonitor) if ok { that1 = &that2 } else { @@ -8003,19 +9062,19 @@ func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) Equal(that inter } else if this == nil { return false } - if this.F5XcSyntheticMonitoringBasicMonitor != that1.F5XcSyntheticMonitoringBasicMonitor { + if this.F5XcDnsBasicMonitor != that1.F5XcDnsBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcDnsBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcDnsBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringBasicUser) + that2, ok := that.(APIGroupChoice_F5XcDnsBasicUser) if ok { that1 = &that2 } else { @@ -8027,19 +9086,19 @@ func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) Equal(that interfac } else if this == nil { return false } - if this.F5XcSyntheticMonitoringBasicUser != that1.F5XcSyntheticMonitoringBasicUser { + if this.F5XcDnsBasicUser != that1.F5XcDnsBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcDnsBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcDnsBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcDnsBasicAdmin) if ok { that1 = &that2 } else { @@ -8051,19 +9110,19 @@ func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) Equal(that interfa } else if this == nil { return false } - if this.F5XcSyntheticMonitoringBasicAdmin != that1.F5XcSyntheticMonitoringBasicAdmin { + if this.F5XcDnsBasicAdmin != that1.F5XcDnsBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcDataIntelligenceMonitor) + that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcDataIntelligenceMonitor) + that2, ok := that.(APIGroupChoice_F5XcAccountProtectionBasicMonitor) if ok { that1 = &that2 } else { @@ -8075,19 +9134,19 @@ func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcDataIntelligenceMonitor != that1.F5XcDataIntelligenceMonitor { + if this.F5XcAccountProtectionBasicMonitor != that1.F5XcAccountProtectionBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcDataIntelligenceUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcDataIntelligenceUser) + that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcDataIntelligenceUser) + that2, ok := that.(APIGroupChoice_F5XcAccountProtectionBasicUser) if ok { that1 = &that2 } else { @@ -8099,19 +9158,19 @@ func (this *APIGroupChoice_F5XcDataIntelligenceUser) Equal(that interface{}) boo } else if this == nil { return false } - if this.F5XcDataIntelligenceUser != that1.F5XcDataIntelligenceUser { + if this.F5XcAccountProtectionBasicUser != that1.F5XcAccountProtectionBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcDataIntelligenceAdmin) + that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcDataIntelligenceAdmin) + that2, ok := that.(APIGroupChoice_F5XcAccountProtectionBasicAdmin) if ok { that1 = &that2 } else { @@ -8123,19 +9182,19 @@ func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) Equal(that interface{}) bo } else if this == nil { return false } - if this.F5XcDataIntelligenceAdmin != that1.F5XcDataIntelligenceAdmin { + if this.F5XcAccountProtectionBasicAdmin != that1.F5XcAccountProtectionBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSecuremeshBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSecuremeshBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) if ok { that1 = &that2 } else { @@ -8147,19 +9206,19 @@ func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) Equal(that interface{}) b } else if this == nil { return false } - if this.F5XcSecuremeshBasicMonitor != that1.F5XcSecuremeshBasicMonitor { + if this.F5XcSyntheticMonitoringBasicMonitor != that1.F5XcSyntheticMonitoringBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcSecuremeshBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSecuremeshBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSecuremeshBasicUser) + that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringBasicUser) if ok { that1 = &that2 } else { @@ -8171,19 +9230,19 @@ func (this *APIGroupChoice_F5XcSecuremeshBasicUser) Equal(that interface{}) bool } else if this == nil { return false } - if this.F5XcSecuremeshBasicUser != that1.F5XcSecuremeshBasicUser { + if this.F5XcSyntheticMonitoringBasicUser != that1.F5XcSyntheticMonitoringBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSecuremeshBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSecuremeshBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) if ok { that1 = &that2 } else { @@ -8195,19 +9254,19 @@ func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) Equal(that interface{}) boo } else if this == nil { return false } - if this.F5XcSecuremeshBasicAdmin != that1.F5XcSecuremeshBasicAdmin { + if this.F5XcSyntheticMonitoringBasicAdmin != that1.F5XcSyntheticMonitoringBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSecuremeshAdvancedMonitor) + that1, ok := that.(*APIGroupChoice_F5XcDataIntelligenceMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSecuremeshAdvancedMonitor) + that2, ok := that.(APIGroupChoice_F5XcDataIntelligenceMonitor) if ok { that1 = &that2 } else { @@ -8219,19 +9278,19 @@ func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) Equal(that interface{} } else if this == nil { return false } - if this.F5XcSecuremeshAdvancedMonitor != that1.F5XcSecuremeshAdvancedMonitor { + if this.F5XcDataIntelligenceMonitor != that1.F5XcDataIntelligenceMonitor { return false } return true } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcDataIntelligenceUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSecuremeshAdvancedUser) + that1, ok := that.(*APIGroupChoice_F5XcDataIntelligenceUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSecuremeshAdvancedUser) + that2, ok := that.(APIGroupChoice_F5XcDataIntelligenceUser) if ok { that1 = &that2 } else { @@ -8243,19 +9302,19 @@ func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) Equal(that interface{}) b } else if this == nil { return false } - if this.F5XcSecuremeshAdvancedUser != that1.F5XcSecuremeshAdvancedUser { + if this.F5XcDataIntelligenceUser != that1.F5XcDataIntelligenceUser { return false } return true } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcSecuremeshAdvancedAdmin) + that1, ok := that.(*APIGroupChoice_F5XcDataIntelligenceAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcSecuremeshAdvancedAdmin) + that2, ok := that.(APIGroupChoice_F5XcDataIntelligenceAdmin) if ok { that1 = &that2 } else { @@ -8267,19 +9326,19 @@ func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcSecuremeshAdvancedAdmin != that1.F5XcSecuremeshAdvancedAdmin { + if this.F5XcDataIntelligenceAdmin != that1.F5XcDataIntelligenceAdmin { return false } return true } -func (this *APIGroupChoice_F5XcAppstackBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAppstackBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAppstackBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshBasicMonitor) if ok { that1 = &that2 } else { @@ -8291,19 +9350,19 @@ func (this *APIGroupChoice_F5XcAppstackBasicMonitor) Equal(that interface{}) boo } else if this == nil { return false } - if this.F5XcAppstackBasicMonitor != that1.F5XcAppstackBasicMonitor { + if this.F5XcSecuremeshBasicMonitor != that1.F5XcSecuremeshBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcAppstackBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAppstackBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAppstackBasicUser) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshBasicUser) if ok { that1 = &that2 } else { @@ -8315,19 +9374,19 @@ func (this *APIGroupChoice_F5XcAppstackBasicUser) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcAppstackBasicUser != that1.F5XcAppstackBasicUser { + if this.F5XcSecuremeshBasicUser != that1.F5XcSecuremeshBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcAppstackBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAppstackBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAppstackBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshBasicAdmin) if ok { that1 = &that2 } else { @@ -8339,19 +9398,19 @@ func (this *APIGroupChoice_F5XcAppstackBasicAdmin) Equal(that interface{}) bool } else if this == nil { return false } - if this.F5XcAppstackBasicAdmin != that1.F5XcAppstackBasicAdmin { + if this.F5XcSecuremeshBasicAdmin != that1.F5XcSecuremeshBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshStandardMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshStandardMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshStandardMonitor) if ok { that1 = &that2 } else { @@ -8363,19 +9422,19 @@ func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) Equal(that interface{ } else if this == nil { return false } - if this.F5XcNginxMgmtSuiteBasicMonitor != that1.F5XcNginxMgmtSuiteBasicMonitor { + if this.F5XcSecuremeshStandardMonitor != that1.F5XcSecuremeshStandardMonitor { return false } return true } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshStandardUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshStandardUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshStandardUser) if ok { that1 = &that2 } else { @@ -8387,19 +9446,19 @@ func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcNginxMgmtSuiteBasicUser != that1.F5XcNginxMgmtSuiteBasicUser { + if this.F5XcSecuremeshStandardUser != that1.F5XcSecuremeshStandardUser { return false } return true } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshStandardAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshStandardAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshStandardAdmin) if ok { that1 = &that2 } else { @@ -8411,19 +9470,19 @@ func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcNginxMgmtSuiteBasicAdmin != that1.F5XcNginxMgmtSuiteBasicAdmin { + if this.F5XcSecuremeshStandardAdmin != that1.F5XcSecuremeshStandardAdmin { return false } return true } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshAdvancedMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshAdvancedMonitor) if ok { that1 = &that2 } else { @@ -8435,19 +9494,19 @@ func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) Equal(that } else if this == nil { return false } - if this.F5XcApplicationTrafficInsightBasicMonitor != that1.F5XcApplicationTrafficInsightBasicMonitor { + if this.F5XcSecuremeshAdvancedMonitor != that1.F5XcSecuremeshAdvancedMonitor { return false } return true } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshAdvancedUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshAdvancedUser) if ok { that1 = &that2 } else { @@ -8459,19 +9518,19 @@ func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) Equal(that in } else if this == nil { return false } - if this.F5XcApplicationTrafficInsightBasicUser != that1.F5XcApplicationTrafficInsightBasicUser { + if this.F5XcSecuremeshAdvancedUser != that1.F5XcSecuremeshAdvancedUser { return false } return true } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcSecuremeshAdvancedAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcSecuremeshAdvancedAdmin) if ok { that1 = &that2 } else { @@ -8483,19 +9542,19 @@ func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) Equal(that i } else if this == nil { return false } - if this.F5XcApplicationTrafficInsightBasicAdmin != that1.F5XcApplicationTrafficInsightBasicAdmin { + if this.F5XcSecuremeshAdvancedAdmin != that1.F5XcSecuremeshAdvancedAdmin { return false } return true } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAppstackBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) + that1, ok := that.(*APIGroupChoice_F5XcAppstackBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) + that2, ok := that.(APIGroupChoice_F5XcAppstackBasicMonitor) if ok { that1 = &that2 } else { @@ -8507,19 +9566,19 @@ func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) Equal(tha } else if this == nil { return false } - if this.F5XcAuthenticationIntelligenceBasicMonitor != that1.F5XcAuthenticationIntelligenceBasicMonitor { + if this.F5XcAppstackBasicMonitor != that1.F5XcAppstackBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAppstackBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) + that1, ok := that.(*APIGroupChoice_F5XcAppstackBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) + that2, ok := that.(APIGroupChoice_F5XcAppstackBasicUser) if ok { that1 = &that2 } else { @@ -8531,19 +9590,19 @@ func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) Equal(that i } else if this == nil { return false } - if this.F5XcAuthenticationIntelligenceBasicUser != that1.F5XcAuthenticationIntelligenceBasicUser { + if this.F5XcAppstackBasicUser != that1.F5XcAppstackBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAppstackBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) + that1, ok := that.(*APIGroupChoice_F5XcAppstackBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) + that2, ok := that.(APIGroupChoice_F5XcAppstackBasicAdmin) if ok { that1 = &that2 } else { @@ -8555,19 +9614,19 @@ func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) Equal(that } else if this == nil { return false } - if this.F5XcAuthenticationIntelligenceBasicAdmin != that1.F5XcAuthenticationIntelligenceBasicAdmin { + if this.F5XcAppstackBasicAdmin != that1.F5XcAppstackBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcNginxOneMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAppstackStandardMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxOneMonitor) + that1, ok := that.(*APIGroupChoice_F5XcAppstackStandardMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxOneMonitor) + that2, ok := that.(APIGroupChoice_F5XcAppstackStandardMonitor) if ok { that1 = &that2 } else { @@ -8579,19 +9638,19 @@ func (this *APIGroupChoice_F5XcNginxOneMonitor) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcNginxOneMonitor != that1.F5XcNginxOneMonitor { + if this.F5XcAppstackStandardMonitor != that1.F5XcAppstackStandardMonitor { return false } return true } -func (this *APIGroupChoice_F5XcNginxOneUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAppstackStandardUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxOneUser) + that1, ok := that.(*APIGroupChoice_F5XcAppstackStandardUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxOneUser) + that2, ok := that.(APIGroupChoice_F5XcAppstackStandardUser) if ok { that1 = &that2 } else { @@ -8603,19 +9662,19 @@ func (this *APIGroupChoice_F5XcNginxOneUser) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcNginxOneUser != that1.F5XcNginxOneUser { + if this.F5XcAppstackStandardUser != that1.F5XcAppstackStandardUser { return false } return true } -func (this *APIGroupChoice_F5XcNginxOneAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAppstackStandardAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxOneAdmin) + that1, ok := that.(*APIGroupChoice_F5XcAppstackStandardAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxOneAdmin) + that2, ok := that.(APIGroupChoice_F5XcAppstackStandardAdmin) if ok { that1 = &that2 } else { @@ -8627,19 +9686,19 @@ func (this *APIGroupChoice_F5XcNginxOneAdmin) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcNginxOneAdmin != that1.F5XcNginxOneAdmin { + if this.F5XcAppstackStandardAdmin != that1.F5XcAppstackStandardAdmin { return false } return true } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteApplication) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteApplication) + that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteApplication) + that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) if ok { that1 = &that2 } else { @@ -8651,19 +9710,19 @@ func (this *APIGroupChoice_F5XcNginxMgmtSuiteApplication) Equal(that interface{} } else if this == nil { return false } - if this.F5XcNginxMgmtSuiteApplication != that1.F5XcNginxMgmtSuiteApplication { + if this.F5XcNginxMgmtSuiteBasicMonitor != that1.F5XcNginxMgmtSuiteBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) + that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) + that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) if ok { that1 = &that2 } else { @@ -8675,19 +9734,19 @@ func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) E } else if this == nil { return false } - if this.F5XcApplicationInfrastructureProtectionApplication != that1.F5XcApplicationInfrastructureProtectionApplication { + if this.F5XcNginxMgmtSuiteBasicUser != that1.F5XcNginxMgmtSuiteBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcNginxOneApplicationRead) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxOneApplicationRead) + that1, ok := that.(*APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxOneApplicationRead) + that2, ok := that.(APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) if ok { that1 = &that2 } else { @@ -8699,19 +9758,19 @@ func (this *APIGroupChoice_F5XcNginxOneApplicationRead) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcNginxOneApplicationRead != that1.F5XcNginxOneApplicationRead { + if this.F5XcNginxMgmtSuiteBasicAdmin != that1.F5XcNginxMgmtSuiteBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcNginxOneApplicationWrite) + that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcNginxOneApplicationWrite) + that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) if ok { that1 = &that2 } else { @@ -8723,19 +9782,19 @@ func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) Equal(that interface{}) } else if this == nil { return false } - if this.F5XcNginxOneApplicationWrite != that1.F5XcNginxOneApplicationWrite { + if this.F5XcApplicationTrafficInsightBasicMonitor != that1.F5XcApplicationTrafficInsightBasicMonitor { return false } return true } -func (this *APIGroupChoice_F5XcClearviewMonitor) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcClearviewMonitor) + that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) if !ok { - that2, ok := that.(APIGroupChoice_F5XcClearviewMonitor) + that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) if ok { that1 = &that2 } else { @@ -8747,19 +9806,19 @@ func (this *APIGroupChoice_F5XcClearviewMonitor) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcClearviewMonitor != that1.F5XcClearviewMonitor { + if this.F5XcApplicationTrafficInsightBasicUser != that1.F5XcApplicationTrafficInsightBasicUser { return false } return true } -func (this *APIGroupChoice_F5XcClearviewUser) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcClearviewUser) + that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) if !ok { - that2, ok := that.(APIGroupChoice_F5XcClearviewUser) + that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) if ok { that1 = &that2 } else { @@ -8771,19 +9830,19 @@ func (this *APIGroupChoice_F5XcClearviewUser) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcClearviewUser != that1.F5XcClearviewUser { + if this.F5XcApplicationTrafficInsightBasicAdmin != that1.F5XcApplicationTrafficInsightBasicAdmin { return false } return true } -func (this *APIGroupChoice_F5XcClearviewAdmin) Equal(that interface{}) bool { +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupChoice_F5XcClearviewAdmin) + that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) if !ok { - that2, ok := that.(APIGroupChoice_F5XcClearviewAdmin) + that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) if ok { that1 = &that2 } else { @@ -8795,10049 +9854,14530 @@ func (this *APIGroupChoice_F5XcClearviewAdmin) Equal(that interface{}) bool { } else if this == nil { return false } - if this.F5XcClearviewAdmin != that1.F5XcClearviewAdmin { + if this.F5XcAuthenticationIntelligenceBasicMonitor != that1.F5XcAuthenticationIntelligenceBasicMonitor { return false } return true } -func (this *APIGroupChoice) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 220) - s = append(s, "&vesenv.APIGroupChoice{") - if this.Choice != nil { - s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *APIGroupChoice_F5XcDefaultAccess) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDefaultAccess{` + - `F5XcDefaultAccess:` + fmt.Sprintf("%#v", this.F5XcDefaultAccess) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcBase) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBase{` + - `F5XcBase:` + fmt.Sprintf("%#v", this.F5XcBase) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcBilling) GoString() string { - if this == nil { - return "nil" + if this.F5XcAuthenticationIntelligenceBasicUser != that1.F5XcAuthenticationIntelligenceBasicUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBilling{` + - `F5XcBilling:` + fmt.Sprintf("%#v", this.F5XcBilling) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcAuditLogsAlerts) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlerts{` + - `F5XcAuditLogsAlerts:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlerts) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcChildManagementAdmin) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementAdmin{` + - `F5XcChildManagementAdmin:` + fmt.Sprintf("%#v", this.F5XcChildManagementAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcChildManagementUser) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementUser{` + - `F5XcChildManagementUser:` + fmt.Sprintf("%#v", this.F5XcChildManagementUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcChildManagementMonitor) GoString() string { - if this == nil { - return "nil" + if this.F5XcAuthenticationIntelligenceBasicAdmin != that1.F5XcAuthenticationIntelligenceBasicAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementMonitor{` + - `F5XcChildManagementMonitor:` + fmt.Sprintf("%#v", this.F5XcChildManagementMonitor) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcChildManagementSupportAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementSupportAdmin{` + - `F5XcChildManagementSupportAdmin:` + fmt.Sprintf("%#v", this.F5XcChildManagementSupportAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcChildManagementSupportUser) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementSupportUser{` + - `F5XcChildManagementSupportUser:` + fmt.Sprintf("%#v", this.F5XcChildManagementSupportUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcChildManagementSupportMonitor) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementSupportMonitor{` + - `F5XcChildManagementSupportMonitor:` + fmt.Sprintf("%#v", this.F5XcChildManagementSupportMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBaseMonitor) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationInfrastructureProtectionApplication != that1.F5XcApplicationInfrastructureProtectionApplication { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseMonitor{` + - `F5XcConsoleBaseMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseMonitor) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcConsoleBaseUser) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcNginxOneApplicationRead) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseUser{` + - `F5XcConsoleBaseUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBaseAdmin) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcNginxOneApplicationRead) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcNginxOneApplicationRead) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdmin{` + - `F5XcConsoleBaseAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdvancedMonitor{` + - `F5XcConsoleBaseAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvancedMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBaseAdvancedUser) GoString() string { - if this == nil { - return "nil" + if this.F5XcNginxOneApplicationRead != that1.F5XcNginxOneApplicationRead { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdvancedUser{` + - `F5XcConsoleBaseAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvancedUser) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdvancedAdmin{` + - `F5XcConsoleBaseAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvancedAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBasePremiumMonitor) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcNginxOneApplicationWrite) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcNginxOneApplicationWrite) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasePremiumMonitor{` + - `F5XcConsoleBasePremiumMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremiumMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBasePremiumUser) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasePremiumUser{` + - `F5XcConsoleBasePremiumUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremiumUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcConsoleBasePremiumAdmin) GoString() string { - if this == nil { - return "nil" + if this.F5XcNginxOneApplicationWrite != that1.F5XcNginxOneApplicationWrite { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasePremiumAdmin{` + - `F5XcConsoleBasePremiumAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremiumAdmin) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcScimMonitor) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcClearviewMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimMonitor{` + - `F5XcScimMonitor:` + fmt.Sprintf("%#v", this.F5XcScimMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcScimUser) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcClearviewMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcClearviewMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimUser{` + - `F5XcScimUser:` + fmt.Sprintf("%#v", this.F5XcScimUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcScimAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimAdmin{` + - `F5XcScimAdmin:` + fmt.Sprintf("%#v", this.F5XcScimAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcSupportManagementMonitor) GoString() string { - if this == nil { - return "nil" + if this.F5XcClearviewMonitor != that1.F5XcClearviewMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportManagementMonitor{` + - `F5XcSupportManagementMonitor:` + fmt.Sprintf("%#v", this.F5XcSupportManagementMonitor) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcSupportManagementUser) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcClearviewUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportManagementUser{` + - `F5XcSupportManagementUser:` + fmt.Sprintf("%#v", this.F5XcSupportManagementUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcSupportManagementAdmin) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcClearviewUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcClearviewUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportManagementAdmin{` + - `F5XcSupportManagementAdmin:` + fmt.Sprintf("%#v", this.F5XcSupportManagementAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcGlobalLogReceiverMonitor) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcGlobalLogReceiverMonitor{` + - `F5XcGlobalLogReceiverMonitor:` + fmt.Sprintf("%#v", this.F5XcGlobalLogReceiverMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcGlobalLogReceiverUser) GoString() string { - if this == nil { - return "nil" + if this.F5XcClearviewUser != that1.F5XcClearviewUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcGlobalLogReceiverUser{` + - `F5XcGlobalLogReceiverUser:` + fmt.Sprintf("%#v", this.F5XcGlobalLogReceiverUser) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcGlobalLogReceiverAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcClearviewAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcGlobalLogReceiverAdmin{` + - `F5XcGlobalLogReceiverAdmin:` + fmt.Sprintf("%#v", this.F5XcGlobalLogReceiverAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcAuditLogsAlertsMonitor) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcClearviewAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcClearviewAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlertsMonitor{` + - `F5XcAuditLogsAlertsMonitor:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlertsMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcAuditLogsAlertsUser) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlertsUser{` + - `F5XcAuditLogsAlertsUser:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlertsUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcAuditLogsAlertsAdmin) GoString() string { - if this == nil { - return "nil" + if this.F5XcClearviewAdmin != that1.F5XcClearviewAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlertsAdmin{` + - `F5XcAuditLogsAlertsAdmin:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlertsAdmin) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcRoutedDdosStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessBasicMonitor{` + - `F5XcDelegatedAccessBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessBasicMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcDelegatedAccessBasicUser) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcRoutedDdosStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcRoutedDdosStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessBasicUser{` + - `F5XcDelegatedAccessBasicUser:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessBasicUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessBasicAdmin{` + - `F5XcDelegatedAccessBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessBasicAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcScimClient) GoString() string { - if this == nil { - return "nil" + if this.F5XcRoutedDdosStandardMonitor != that1.F5XcRoutedDdosStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimClient{` + - `F5XcScimClient:` + fmt.Sprintf("%#v", this.F5XcScimClient) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_InfrastructureDemoAccessRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcRoutedDdosStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_InfrastructureDemoAccessRead{` + - `InfrastructureDemoAccessRead:` + fmt.Sprintf("%#v", this.InfrastructureDemoAccessRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoBillingRead) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcRoutedDdosStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcRoutedDdosStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoBillingRead{` + - `VesIoBillingRead:` + fmt.Sprintf("%#v", this.VesIoBillingRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoBillingWrite) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoBillingWrite{` + - `VesIoBillingWrite:` + fmt.Sprintf("%#v", this.VesIoBillingWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoGeneralRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcRoutedDdosStandardUser != that1.F5XcRoutedDdosStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoGeneralRead{` + - `VesIoGeneralRead:` + fmt.Sprintf("%#v", this.VesIoGeneralRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoGeneralWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcRoutedDdosStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoGeneralWrite{` + - `VesIoGeneralWrite:` + fmt.Sprintf("%#v", this.VesIoGeneralWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoIaasCaasRead) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcRoutedDdosStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcRoutedDdosStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoIaasCaasRead{` + - `VesIoIaasCaasRead:` + fmt.Sprintf("%#v", this.VesIoIaasCaasRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoIaasCaasWrite) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoIaasCaasWrite{` + - `VesIoIaasCaasWrite:` + fmt.Sprintf("%#v", this.VesIoIaasCaasWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoInfraMonitorRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcRoutedDdosStandardAdmin != that1.F5XcRoutedDdosStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfraMonitorRead{` + - `VesIoInfraMonitorRead:` + fmt.Sprintf("%#v", this.VesIoInfraMonitorRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoInfraMonitorWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcDnsStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfraMonitorWrite{` + - `VesIoInfraMonitorWrite:` + fmt.Sprintf("%#v", this.VesIoInfraMonitorWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoInfrastructureRead) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcDnsStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcDnsStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfrastructureRead{` + - `VesIoInfrastructureRead:` + fmt.Sprintf("%#v", this.VesIoInfrastructureRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoInfrastructureWrite) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfrastructureWrite{` + - `VesIoInfrastructureWrite:` + fmt.Sprintf("%#v", this.VesIoInfrastructureWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoInternalRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcDnsStandardMonitor != that1.F5XcDnsStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInternalRead{` + - `VesIoInternalRead:` + fmt.Sprintf("%#v", this.VesIoInternalRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoInternalWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcDnsStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInternalWrite{` + - `VesIoInternalWrite:` + fmt.Sprintf("%#v", this.VesIoInternalWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoK8SRead) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcDnsStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcDnsStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoK8SRead{` + - `VesIoK8SRead:` + fmt.Sprintf("%#v", this.VesIoK8SRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoK8SWrite) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoK8SWrite{` + - `VesIoK8SWrite:` + fmt.Sprintf("%#v", this.VesIoK8SWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoLabelsRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcDnsStandardUser != that1.F5XcDnsStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLabelsRead{` + - `VesIoLabelsRead:` + fmt.Sprintf("%#v", this.VesIoLabelsRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoLabelsWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcDnsStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLabelsWrite{` + - `VesIoLabelsWrite:` + fmt.Sprintf("%#v", this.VesIoLabelsWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoLocalK8SWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcDnsStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcDnsStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLocalK8SWrite{` + - `VesIoLocalK8SWrite:` + fmt.Sprintf("%#v", this.VesIoLocalK8SWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoMonitorRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoMonitorRead{` + - `VesIoMonitorRead:` + fmt.Sprintf("%#v", this.VesIoMonitorRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoMonitorWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcDnsStandardAdmin != that1.F5XcDnsStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoMonitorWrite{` + - `VesIoMonitorWrite:` + fmt.Sprintf("%#v", this.VesIoMonitorWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoNetworkRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoNetworkRead{` + - `VesIoNetworkRead:` + fmt.Sprintf("%#v", this.VesIoNetworkRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoNetworkWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoNetworkWrite{` + - `VesIoNetworkWrite:` + fmt.Sprintf("%#v", this.VesIoNetworkWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoProxyMonitorRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyMonitorRead{` + - `VesIoProxyMonitorRead:` + fmt.Sprintf("%#v", this.VesIoProxyMonitorRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoProxyMonitorWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationTrafficInsightStandardMonitor != that1.F5XcApplicationTrafficInsightStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyMonitorWrite{` + - `VesIoProxyMonitorWrite:` + fmt.Sprintf("%#v", this.VesIoProxyMonitorWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoProxyRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyRead{` + - `VesIoProxyRead:` + fmt.Sprintf("%#v", this.VesIoProxyRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoProxySecurityRead) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxySecurityRead{` + - `VesIoProxySecurityRead:` + fmt.Sprintf("%#v", this.VesIoProxySecurityRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoProxySecurityWrite) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxySecurityWrite{` + - `VesIoProxySecurityWrite:` + fmt.Sprintf("%#v", this.VesIoProxySecurityWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoProxyWafRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationTrafficInsightStandardUser != that1.F5XcApplicationTrafficInsightStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyWafRead{` + - `VesIoProxyWafRead:` + fmt.Sprintf("%#v", this.VesIoProxyWafRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoProxyWafWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyWafWrite{` + - `VesIoProxyWafWrite:` + fmt.Sprintf("%#v", this.VesIoProxyWafWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoProxyWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyWrite{` + - `VesIoProxyWrite:` + fmt.Sprintf("%#v", this.VesIoProxyWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoSecretsRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoSecretsRead{` + - `VesIoSecretsRead:` + fmt.Sprintf("%#v", this.VesIoSecretsRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoSecretsWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationTrafficInsightStandardAdmin != that1.F5XcApplicationTrafficInsightStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoSecretsWrite{` + - `VesIoSecretsWrite:` + fmt.Sprintf("%#v", this.VesIoSecretsWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoUamAdminRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamAdminRead{` + - `VesIoUamAdminRead:` + fmt.Sprintf("%#v", this.VesIoUamAdminRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoUamAdminWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamAdminWrite{` + - `VesIoUamAdminWrite:` + fmt.Sprintf("%#v", this.VesIoUamAdminWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoUamRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamRead{` + - `VesIoUamRead:` + fmt.Sprintf("%#v", this.VesIoUamRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoUamWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcContentDeliveryNetworkStandardMonitor != that1.F5XcContentDeliveryNetworkStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamWrite{` + - `VesIoUamWrite:` + fmt.Sprintf("%#v", this.VesIoUamWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoVirtualSitesRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVirtualSitesRead{` + - `VesIoVirtualSitesRead:` + fmt.Sprintf("%#v", this.VesIoVirtualSitesRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoVirtualSitesWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVirtualSitesWrite{` + - `VesIoVirtualSitesWrite:` + fmt.Sprintf("%#v", this.VesIoVirtualSitesWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoVoltShareRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVoltShareRead{` + - `VesIoVoltShareRead:` + fmt.Sprintf("%#v", this.VesIoVoltShareRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoVoltShareWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcContentDeliveryNetworkStandardUser != that1.F5XcContentDeliveryNetworkStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVoltShareWrite{` + - `VesIoVoltShareWrite:` + fmt.Sprintf("%#v", this.VesIoVoltShareWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoWebAccessRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoWebAccessRead{` + - `VesIoWebAccessRead:` + fmt.Sprintf("%#v", this.VesIoWebAccessRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoWebAccessWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoWebAccessWrite{` + - `VesIoWebAccessWrite:` + fmt.Sprintf("%#v", this.VesIoWebAccessWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoTenantOwnerRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoTenantOwnerRead{` + - `VesIoTenantOwnerRead:` + fmt.Sprintf("%#v", this.VesIoTenantOwnerRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoTenantOwnerWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcContentDeliveryNetworkStandardAdmin != that1.F5XcContentDeliveryNetworkStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoTenantOwnerWrite{` + - `VesIoTenantOwnerWrite:` + fmt.Sprintf("%#v", this.VesIoTenantOwnerWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoStoredObjectRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcClientSideDefenseStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoStoredObjectRead{` + - `VesIoStoredObjectRead:` + fmt.Sprintf("%#v", this.VesIoStoredObjectRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoStoredObjectWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcClientSideDefenseStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcClientSideDefenseStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoStoredObjectWrite{` + - `VesIoStoredObjectWrite:` + fmt.Sprintf("%#v", this.VesIoStoredObjectWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleShapeBotRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotRead{` + - `VoltconsoleShapeBotRead:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleShapeBotWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcClientSideDefenseStandardMonitor != that1.F5XcClientSideDefenseStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotWrite{` + - `VoltconsoleShapeBotWrite:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleShapeBotAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcClientSideDefenseStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotAdmin{` + - `VoltconsoleShapeBotAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcClientSideDefenseStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcClientSideDefenseStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt{` + - `VoltconsoleShapeBotSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleShapeRecognizeRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeRead{` + - `VoltconsoleShapeRecognizeRead:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleShapeRecognizeWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcClientSideDefenseStandardUser != that1.F5XcClientSideDefenseStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeWrite{` + - `VoltconsoleShapeRecognizeWrite:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcClientSideDefenseStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeAdmin{` + - `VoltconsoleShapeRecognizeAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcClientSideDefenseStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcClientSideDefenseStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt{` + - `VoltconsoleShapeRecognizeSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAidataBfdpRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpRead{` + - `VoltconsoleAidataBfdpRead:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAidataBfdpWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcClientSideDefenseStandardAdmin != that1.F5XcClientSideDefenseStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpWrite{` + - `VoltconsoleAidataBfdpWrite:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleAidataBfdpAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpAdmin{` + - `VoltconsoleAidataBfdpAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt{` + - `VoltconsoleAidataBfdpSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorRead{` + - `VoltconsoleSyntheticMonitorRead:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcSyntheticMonitoringStandardMonitor != that1.F5XcSyntheticMonitoringStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorWrite{` + - `VoltconsoleSyntheticMonitorWrite:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorAdmin{` + - `VoltconsoleSyntheticMonitorAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt{` + - `VoltconsoleSyntheticMonitorSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleTenantMgmtRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtRead{` + - `VoltconsoleTenantMgmtRead:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleTenantMgmtWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcSyntheticMonitoringStandardUser != that1.F5XcSyntheticMonitoringStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtWrite{` + - `VoltconsoleTenantMgmtWrite:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleTenantMgmtAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtAdmin{` + - `VoltconsoleTenantMgmtAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt{` + - `VoltconsoleTenantMgmtSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleScimClientWrite) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimClientWrite{` + - `VoltconsoleScimClientWrite:` + fmt.Sprintf("%#v", this.VoltconsoleScimClientWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleScimClientRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcSyntheticMonitoringStandardAdmin != that1.F5XcSyntheticMonitoringStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimClientRead{` + - `VoltconsoleScimClientRead:` + fmt.Sprintf("%#v", this.VoltconsoleScimClientRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleScimAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimAdmin{` + - `VoltconsoleScimAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleScimAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimSubscriptionMgmt{` + - `VoltconsoleScimSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleScimSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteRead{` + - `VoltconsoleNginxMgmtSuiteRead:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcAuthenticationIntelligenceStandardMonitor != that1.F5XcAuthenticationIntelligenceStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite{` + - `VoltconsoleNginxMgmtSuiteWrite:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin{` + - `VoltconsoleNginxMgmtSuiteAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt{` + - `VoltconsoleNginxMgmtSuiteSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication{` + - `VoltconsoleNginxMgmtSuiteApplication:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteApplication) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleCdnRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcAuthenticationIntelligenceStandardUser != that1.F5XcAuthenticationIntelligenceStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnRead{` + - `VoltconsoleCdnRead:` + fmt.Sprintf("%#v", this.VoltconsoleCdnRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleCdnWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnWrite{` + - `VoltconsoleCdnWrite:` + fmt.Sprintf("%#v", this.VoltconsoleCdnWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleCdnAdmin) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnAdmin{` + - `VoltconsoleCdnAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleCdnAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnSubscriptionMgmt{` + - `VoltconsoleCdnSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleCdnSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSafeapRead) GoString() string { - if this == nil { - return "nil" + if this.F5XcAuthenticationIntelligenceStandardAdmin != that1.F5XcAuthenticationIntelligenceStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapRead{` + - `VoltconsoleSafeapRead:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapRead) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleSafeapWrite) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAccountProtectionStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapWrite{` + - `VoltconsoleSafeapWrite:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSafeapAdmin) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAccountProtectionStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapAdmin{` + - `VoltconsoleSafeapAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt{` + - `VoltconsoleSafeapSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapSubscriptionMgmt) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + if this.F5XcAccountProtectionStandardMonitor != that1.F5XcAccountProtectionStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipSubscriptionMgmt{` + - `VoltconsoleAipSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleAipSubscriptionMgmt) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleAipRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAccountProtectionStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipRead{` + - `VoltconsoleAipRead:` + fmt.Sprintf("%#v", this.VoltconsoleAipRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAipWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAccountProtectionStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipWrite{` + - `VoltconsoleAipWrite:` + fmt.Sprintf("%#v", this.VoltconsoleAipWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAipAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipAdmin{` + - `VoltconsoleAipAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleAipAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleAipApplication) GoString() string { - if this == nil { - return "nil" + if this.F5XcAccountProtectionStandardUser != that1.F5XcAccountProtectionStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipApplication{` + - `VoltconsoleAipApplication:` + fmt.Sprintf("%#v", this.VoltconsoleAipApplication) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleSupportMgmtRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcAccountProtectionStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtRead{` + - `VoltconsoleSupportMgmtRead:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSupportMgmtWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcAccountProtectionStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcAccountProtectionStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtWrite{` + - `VoltconsoleSupportMgmtWrite:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSupportMgmtAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtAdmin{` + - `VoltconsoleSupportMgmtAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + if this.F5XcAccountProtectionStandardAdmin != that1.F5XcAccountProtectionStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt{` + - `VoltconsoleSupportMgmtSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtSubscriptionMgmt) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VoltconsoleClientSideDefenseRead) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseRead{` + - `VoltconsoleClientSideDefenseRead:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleClientSideDefenseWrite) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseWrite{` + - `VoltconsoleClientSideDefenseWrite:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseWrite) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseAdmin{` + - `VoltconsoleClientSideDefenseAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationInfrastructureProtectionStandardMonitor != that1.F5XcApplicationInfrastructureProtectionStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt{` + - `VoltconsoleClientSideDefenseSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseSubscriptionMgmt) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseAdvancedMonitor{` + - `F5XcBotDefenseAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefenseAdvancedMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcBotDefenseAdvancedUser) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseAdvancedUser{` + - `F5XcBotDefenseAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcBotDefenseAdvancedUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseAdvancedAdmin{` + - `F5XcBotDefenseAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefenseAdvancedAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcBotDefensePremiumMonitor) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationInfrastructureProtectionStandardUser != that1.F5XcApplicationInfrastructureProtectionStandardUser { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefensePremiumMonitor{` + - `F5XcBotDefensePremiumMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefensePremiumMonitor) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcBotDefensePremiumUser) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefensePremiumUser{` + - `F5XcBotDefensePremiumUser:` + fmt.Sprintf("%#v", this.F5XcBotDefensePremiumUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcBotDefensePremiumAdmin) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefensePremiumAdmin{` + - `F5XcBotDefensePremiumAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefensePremiumAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoReportRead) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoReportRead{` + - `VesIoReportRead:` + fmt.Sprintf("%#v", this.VesIoReportRead) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_VesIoReportWrite) GoString() string { - if this == nil { - return "nil" + if this.F5XcApplicationInfrastructureProtectionStandardAdmin != that1.F5XcApplicationInfrastructureProtectionStandardAdmin { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoReportWrite{` + - `VesIoReportWrite:` + fmt.Sprintf("%#v", this.VesIoReportWrite) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_F5XcSupportOperationsMonitor) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcDelegatedAccessStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportOperationsMonitor{` + - `F5XcSupportOperationsMonitor:` + fmt.Sprintf("%#v", this.F5XcSupportOperationsMonitor) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcSupportOperationsUser) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*APIGroupChoice_F5XcDelegatedAccessStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcDelegatedAccessStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportOperationsUser{` + - `F5XcSupportOperationsUser:` + fmt.Sprintf("%#v", this.F5XcSupportOperationsUser) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcSupportOperationsAdmin) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportOperationsAdmin{` + - `F5XcSupportOperationsAdmin:` + fmt.Sprintf("%#v", this.F5XcSupportOperationsAdmin) + `}`}, ", ") - return s -} -func (this *APIGroupChoice_F5XcInternal) GoString() string { - if this == nil { - return "nil" + if this.F5XcDelegatedAccessStandardMonitor != that1.F5XcDelegatedAccessStandardMonitor { + return false } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcInternal{` + - `F5XcInternal:` + fmt.Sprintf("%#v", this.F5XcInternal) + `}`}, ", ") - return s + return true } -func (this *APIGroupChoice_VesIoLocalK8SKubeconfig) GoString() string { - if this == nil { - return "nil" +func (this *APIGroupChoice_F5XcDelegatedAccessStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLocalK8SKubeconfig{` + - `VesIoLocalK8SKubeconfig:` + fmt.Sprintf("%#v", this.VesIoLocalK8SKubeconfig) + `}`}, ", ") - return s + + that1, ok := that.(*APIGroupChoice_F5XcDelegatedAccessStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcDelegatedAccessStandardUser) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcDelegatedAccessStandardUser != that1.F5XcDelegatedAccessStandardUser { + return false + } + return true } -func (this *APIGroupChoice_VesIoGlobalK8SKubeconfig) GoString() string { +func (this *APIGroupChoice_F5XcDelegatedAccessStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcDelegatedAccessStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcDelegatedAccessStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcDelegatedAccessStandardAdmin != that1.F5XcDelegatedAccessStandardAdmin { + return false + } + return true +} +func (this *APIGroupChoice_F5XcBotDefenseStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcBotDefenseStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcBotDefenseStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcBotDefenseStandardMonitor != that1.F5XcBotDefenseStandardMonitor { + return false + } + return true +} +func (this *APIGroupChoice_F5XcBotDefenseStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcBotDefenseStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcBotDefenseStandardUser) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcBotDefenseStandardUser != that1.F5XcBotDefenseStandardUser { + return false + } + return true +} +func (this *APIGroupChoice_F5XcBotDefenseStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcBotDefenseStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcBotDefenseStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcBotDefenseStandardAdmin != that1.F5XcBotDefenseStandardAdmin { + return false + } + return true +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardMonitor) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcWebAppScanningStandardMonitor) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcWebAppScanningStandardMonitor) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcWebAppScanningStandardMonitor != that1.F5XcWebAppScanningStandardMonitor { + return false + } + return true +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardUser) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcWebAppScanningStandardUser) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcWebAppScanningStandardUser) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcWebAppScanningStandardUser != that1.F5XcWebAppScanningStandardUser { + return false + } + return true +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardAdmin) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupChoice_F5XcWebAppScanningStandardAdmin) + if !ok { + that2, ok := that.(APIGroupChoice_F5XcWebAppScanningStandardAdmin) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.F5XcWebAppScanningStandardAdmin != that1.F5XcWebAppScanningStandardAdmin { + return false + } + return true +} +func (this *APIGroupChoice) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoGlobalK8SKubeconfig{` + - `VesIoGlobalK8SKubeconfig:` + fmt.Sprintf("%#v", this.VesIoGlobalK8SKubeconfig) + `}`}, ", ") - return s + s := make([]string, 0, 273) + s = append(s, "&vesenv.APIGroupChoice{") + if this.Choice != nil { + s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (this *APIGroupChoice_F5XcBotDefenseBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcDefaultAccess) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseBasicMonitor{` + - `F5XcBotDefenseBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefenseBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDefaultAccess{` + + `F5XcDefaultAccess:` + fmt.Sprintf("%#v", this.F5XcDefaultAccess) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcBotDefenseBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcBase) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseBasicUser{` + - `F5XcBotDefenseBasicUser:` + fmt.Sprintf("%#v", this.F5XcBotDefenseBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBase{` + + `F5XcBase:` + fmt.Sprintf("%#v", this.F5XcBase) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcBotDefenseBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcBilling) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseBasicAdmin{` + - `F5XcBotDefenseBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefenseBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBilling{` + + `F5XcBilling:` + fmt.Sprintf("%#v", this.F5XcBilling) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcBigIpApmMonitor) GoString() string { +func (this *APIGroupChoice_F5XcAuditLogsAlerts) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBigIpApmMonitor{` + - `F5XcBigIpApmMonitor:` + fmt.Sprintf("%#v", this.F5XcBigIpApmMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlerts{` + + `F5XcAuditLogsAlerts:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlerts) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcBigIpApmUser) GoString() string { +func (this *APIGroupChoice_F5XcChildManagementAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBigIpApmUser{` + - `F5XcBigIpApmUser:` + fmt.Sprintf("%#v", this.F5XcBigIpApmUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementAdmin{` + + `F5XcChildManagementAdmin:` + fmt.Sprintf("%#v", this.F5XcChildManagementAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcBigIpApmAdmin) GoString() string { +func (this *APIGroupChoice_F5XcChildManagementUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBigIpApmAdmin{` + - `F5XcBigIpApmAdmin:` + fmt.Sprintf("%#v", this.F5XcBigIpApmAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementUser{` + + `F5XcChildManagementUser:` + fmt.Sprintf("%#v", this.F5XcChildManagementUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcMobileIntegratorMonitor) GoString() string { +func (this *APIGroupChoice_F5XcChildManagementMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcMobileIntegratorMonitor{` + - `F5XcMobileIntegratorMonitor:` + fmt.Sprintf("%#v", this.F5XcMobileIntegratorMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementMonitor{` + + `F5XcChildManagementMonitor:` + fmt.Sprintf("%#v", this.F5XcChildManagementMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcMobileIntegratorUser) GoString() string { +func (this *APIGroupChoice_F5XcChildManagementSupportAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcMobileIntegratorUser{` + - `F5XcMobileIntegratorUser:` + fmt.Sprintf("%#v", this.F5XcMobileIntegratorUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementSupportAdmin{` + + `F5XcChildManagementSupportAdmin:` + fmt.Sprintf("%#v", this.F5XcChildManagementSupportAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcMobileIntegratorAdmin) GoString() string { +func (this *APIGroupChoice_F5XcChildManagementSupportUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcMobileIntegratorAdmin{` + - `F5XcMobileIntegratorAdmin:` + fmt.Sprintf("%#v", this.F5XcMobileIntegratorAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementSupportUser{` + + `F5XcChildManagementSupportUser:` + fmt.Sprintf("%#v", this.F5XcChildManagementSupportUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcFlowCollectionMonitor) GoString() string { +func (this *APIGroupChoice_F5XcChildManagementSupportMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcFlowCollectionMonitor{` + - `F5XcFlowCollectionMonitor:` + fmt.Sprintf("%#v", this.F5XcFlowCollectionMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcChildManagementSupportMonitor{` + + `F5XcChildManagementSupportMonitor:` + fmt.Sprintf("%#v", this.F5XcChildManagementSupportMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcRoutedDdosBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBaseMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosBasicMonitor{` + - `F5XcRoutedDdosBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseMonitor{` + + `F5XcConsoleBaseMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcRoutedDdosBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBaseUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosBasicUser{` + - `F5XcRoutedDdosBasicUser:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseUser{` + + `F5XcConsoleBaseUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcRoutedDdosBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBaseAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosBasicAdmin{` + - `F5XcRoutedDdosBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdmin{` + + `F5XcConsoleBaseAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseBasicMonitor{` + - `F5XcClientSideDefenseBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdvancedMonitor{` + + `F5XcConsoleBaseAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvancedMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcClientSideDefenseBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBaseAdvancedUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseBasicUser{` + - `F5XcClientSideDefenseBasicUser:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdvancedUser{` + + `F5XcConsoleBaseAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvancedUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseBasicAdmin{` + - `F5XcClientSideDefenseBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBaseAdvancedAdmin{` + + `F5XcConsoleBaseAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBaseAdvancedAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcCdnBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBasePremiumMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcCdnBasicMonitor{` + - `F5XcCdnBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcCdnBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasePremiumMonitor{` + + `F5XcConsoleBasePremiumMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremiumMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcCdnBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBasePremiumUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcCdnBasicUser{` + - `F5XcCdnBasicUser:` + fmt.Sprintf("%#v", this.F5XcCdnBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasePremiumUser{` + + `F5XcConsoleBasePremiumUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremiumUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcCdnBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBasePremiumAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcCdnBasicAdmin{` + - `F5XcCdnBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcCdnBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasePremiumAdmin{` + + `F5XcConsoleBasePremiumAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBasePremiumAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcScimMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor{` + - `F5XcApplicationInfrastructureProtectionBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimMonitor{` + + `F5XcScimMonitor:` + fmt.Sprintf("%#v", this.F5XcScimMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcScimUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser{` + - `F5XcApplicationInfrastructureProtectionBasicUser:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimUser{` + + `F5XcScimUser:` + fmt.Sprintf("%#v", this.F5XcScimUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcScimAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin{` + - `F5XcApplicationInfrastructureProtectionBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimAdmin{` + + `F5XcScimAdmin:` + fmt.Sprintf("%#v", this.F5XcScimAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcWaapBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcSupportManagementMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapBasicMonitor{` + - `F5XcWaapBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcWaapBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportManagementMonitor{` + + `F5XcSupportManagementMonitor:` + fmt.Sprintf("%#v", this.F5XcSupportManagementMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcWaapBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcSupportManagementUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapBasicUser{` + - `F5XcWaapBasicUser:` + fmt.Sprintf("%#v", this.F5XcWaapBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportManagementUser{` + + `F5XcSupportManagementUser:` + fmt.Sprintf("%#v", this.F5XcSupportManagementUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcWaapBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcSupportManagementAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapBasicAdmin{` + - `F5XcWaapBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcWaapBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportManagementAdmin{` + + `F5XcSupportManagementAdmin:` + fmt.Sprintf("%#v", this.F5XcSupportManagementAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) GoString() string { +func (this *APIGroupChoice_F5XcGlobalLogReceiverMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapAdvancedMonitor{` + - `F5XcWaapAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcWaapAdvancedMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcGlobalLogReceiverMonitor{` + + `F5XcGlobalLogReceiverMonitor:` + fmt.Sprintf("%#v", this.F5XcGlobalLogReceiverMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcWaapAdvancedUser) GoString() string { +func (this *APIGroupChoice_F5XcGlobalLogReceiverUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapAdvancedUser{` + - `F5XcWaapAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcWaapAdvancedUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcGlobalLogReceiverUser{` + + `F5XcGlobalLogReceiverUser:` + fmt.Sprintf("%#v", this.F5XcGlobalLogReceiverUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) GoString() string { +func (this *APIGroupChoice_F5XcGlobalLogReceiverAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapAdvancedAdmin{` + - `F5XcWaapAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcWaapAdvancedAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcGlobalLogReceiverAdmin{` + + `F5XcGlobalLogReceiverAdmin:` + fmt.Sprintf("%#v", this.F5XcGlobalLogReceiverAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcAuditLogsAlertsMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementBasicMonitor{` + - `F5XcSiteManagementBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcSiteManagementBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlertsMonitor{` + + `F5XcAuditLogsAlertsMonitor:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlertsMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSiteManagementBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcAuditLogsAlertsUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementBasicUser{` + - `F5XcSiteManagementBasicUser:` + fmt.Sprintf("%#v", this.F5XcSiteManagementBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlertsUser{` + + `F5XcAuditLogsAlertsUser:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlertsUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcAuditLogsAlertsAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementBasicAdmin{` + - `F5XcSiteManagementBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcSiteManagementBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuditLogsAlertsAdmin{` + + `F5XcAuditLogsAlertsAdmin:` + fmt.Sprintf("%#v", this.F5XcAuditLogsAlertsAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcDnsBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsBasicMonitor{` + - `F5XcDnsBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcDnsBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessBasicMonitor{` + + `F5XcDelegatedAccessBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessBasicMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcDnsBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcDelegatedAccessBasicUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsBasicUser{` + - `F5XcDnsBasicUser:` + fmt.Sprintf("%#v", this.F5XcDnsBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessBasicUser{` + + `F5XcDelegatedAccessBasicUser:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessBasicUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcDnsBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsBasicAdmin{` + - `F5XcDnsBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcDnsBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessBasicAdmin{` + + `F5XcDelegatedAccessBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessBasicAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcScimClient) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionBasicMonitor{` + - `F5XcAccountProtectionBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcScimClient{` + + `F5XcScimClient:` + fmt.Sprintf("%#v", this.F5XcScimClient) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBasicMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionBasicUser{` + - `F5XcAccountProtectionBasicUser:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasicMonitor{` + + `F5XcConsoleBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleBasicMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBasicUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionBasicAdmin{` + - `F5XcAccountProtectionBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasicUser{` + + `F5XcConsoleBasicUser:` + fmt.Sprintf("%#v", this.F5XcConsoleBasicUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcConsoleBasicAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor{` + - `F5XcSyntheticMonitoringBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleBasicAdmin{` + + `F5XcConsoleBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleBasicAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) GoString() string { +func (this *APIGroupChoice_F5XcConsoleStandardMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringBasicUser{` + - `F5XcSyntheticMonitoringBasicUser:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleStandardMonitor{` + + `F5XcConsoleStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleStandardMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) GoString() string { +func (this *APIGroupChoice_F5XcConsoleStandardUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin{` + - `F5XcSyntheticMonitoringBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleStandardUser{` + + `F5XcConsoleStandardUser:` + fmt.Sprintf("%#v", this.F5XcConsoleStandardUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) GoString() string { +func (this *APIGroupChoice_F5XcConsoleStandardAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDataIntelligenceMonitor{` + - `F5XcDataIntelligenceMonitor:` + fmt.Sprintf("%#v", this.F5XcDataIntelligenceMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleStandardAdmin{` + + `F5XcConsoleStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleStandardAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcDataIntelligenceUser) GoString() string { +func (this *APIGroupChoice_F5XcConsoleAdvancedMonitor) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDataIntelligenceUser{` + - `F5XcDataIntelligenceUser:` + fmt.Sprintf("%#v", this.F5XcDataIntelligenceUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleAdvancedMonitor{` + + `F5XcConsoleAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcConsoleAdvancedMonitor) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) GoString() string { +func (this *APIGroupChoice_F5XcConsoleAdvancedUser) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDataIntelligenceAdmin{` + - `F5XcDataIntelligenceAdmin:` + fmt.Sprintf("%#v", this.F5XcDataIntelligenceAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleAdvancedUser{` + + `F5XcConsoleAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcConsoleAdvancedUser) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) GoString() string { +func (this *APIGroupChoice_F5XcConsoleAdvancedAdmin) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshBasicMonitor{` + - `F5XcSecuremeshBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcSecuremeshBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcConsoleAdvancedAdmin{` + + `F5XcConsoleAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcConsoleAdvancedAdmin) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSecuremeshBasicUser) GoString() string { +func (this *APIGroupChoice_InfrastructureDemoAccessRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshBasicUser{` + - `F5XcSecuremeshBasicUser:` + fmt.Sprintf("%#v", this.F5XcSecuremeshBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_InfrastructureDemoAccessRead{` + + `InfrastructureDemoAccessRead:` + fmt.Sprintf("%#v", this.InfrastructureDemoAccessRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) GoString() string { +func (this *APIGroupChoice_VesIoBillingRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshBasicAdmin{` + - `F5XcSecuremeshBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcSecuremeshBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoBillingRead{` + + `VesIoBillingRead:` + fmt.Sprintf("%#v", this.VesIoBillingRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) GoString() string { +func (this *APIGroupChoice_VesIoBillingWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshAdvancedMonitor{` + - `F5XcSecuremeshAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvancedMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoBillingWrite{` + + `VesIoBillingWrite:` + fmt.Sprintf("%#v", this.VesIoBillingWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) GoString() string { +func (this *APIGroupChoice_VesIoGeneralRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshAdvancedUser{` + - `F5XcSecuremeshAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvancedUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoGeneralRead{` + + `VesIoGeneralRead:` + fmt.Sprintf("%#v", this.VesIoGeneralRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) GoString() string { +func (this *APIGroupChoice_VesIoGeneralWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshAdvancedAdmin{` + - `F5XcSecuremeshAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvancedAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoGeneralWrite{` + + `VesIoGeneralWrite:` + fmt.Sprintf("%#v", this.VesIoGeneralWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAppstackBasicMonitor) GoString() string { +func (this *APIGroupChoice_VesIoIaasCaasRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackBasicMonitor{` + - `F5XcAppstackBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcAppstackBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoIaasCaasRead{` + + `VesIoIaasCaasRead:` + fmt.Sprintf("%#v", this.VesIoIaasCaasRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAppstackBasicUser) GoString() string { +func (this *APIGroupChoice_VesIoIaasCaasWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackBasicUser{` + - `F5XcAppstackBasicUser:` + fmt.Sprintf("%#v", this.F5XcAppstackBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoIaasCaasWrite{` + + `VesIoIaasCaasWrite:` + fmt.Sprintf("%#v", this.VesIoIaasCaasWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAppstackBasicAdmin) GoString() string { +func (this *APIGroupChoice_VesIoInfraMonitorRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackBasicAdmin{` + - `F5XcAppstackBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcAppstackBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfraMonitorRead{` + + `VesIoInfraMonitorRead:` + fmt.Sprintf("%#v", this.VesIoInfraMonitorRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) GoString() string { +func (this *APIGroupChoice_VesIoInfraMonitorWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor{` + - `F5XcNginxMgmtSuiteBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfraMonitorWrite{` + + `VesIoInfraMonitorWrite:` + fmt.Sprintf("%#v", this.VesIoInfraMonitorWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) GoString() string { +func (this *APIGroupChoice_VesIoInfrastructureRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteBasicUser{` + - `F5XcNginxMgmtSuiteBasicUser:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfrastructureRead{` + + `VesIoInfrastructureRead:` + fmt.Sprintf("%#v", this.VesIoInfrastructureRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) GoString() string { +func (this *APIGroupChoice_VesIoInfrastructureWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin{` + - `F5XcNginxMgmtSuiteBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInfrastructureWrite{` + + `VesIoInfrastructureWrite:` + fmt.Sprintf("%#v", this.VesIoInfrastructureWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) GoString() string { +func (this *APIGroupChoice_VesIoInternalRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor{` + - `F5XcApplicationTrafficInsightBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInternalRead{` + + `VesIoInternalRead:` + fmt.Sprintf("%#v", this.VesIoInternalRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) GoString() string { +func (this *APIGroupChoice_VesIoInternalWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightBasicUser{` + - `F5XcApplicationTrafficInsightBasicUser:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoInternalWrite{` + + `VesIoInternalWrite:` + fmt.Sprintf("%#v", this.VesIoInternalWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) GoString() string { +func (this *APIGroupChoice_VesIoK8SRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin{` + - `F5XcApplicationTrafficInsightBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoK8SRead{` + + `VesIoK8SRead:` + fmt.Sprintf("%#v", this.VesIoK8SRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) GoString() string { +func (this *APIGroupChoice_VesIoK8SWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor{` + - `F5XcAuthenticationIntelligenceBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceBasicMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoK8SWrite{` + + `VesIoK8SWrite:` + fmt.Sprintf("%#v", this.VesIoK8SWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) GoString() string { +func (this *APIGroupChoice_VesIoLabelsRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser{` + - `F5XcAuthenticationIntelligenceBasicUser:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceBasicUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLabelsRead{` + + `VesIoLabelsRead:` + fmt.Sprintf("%#v", this.VesIoLabelsRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) GoString() string { +func (this *APIGroupChoice_VesIoLabelsWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin{` + - `F5XcAuthenticationIntelligenceBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceBasicAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLabelsWrite{` + + `VesIoLabelsWrite:` + fmt.Sprintf("%#v", this.VesIoLabelsWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxOneMonitor) GoString() string { +func (this *APIGroupChoice_VesIoLocalK8SWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneMonitor{` + - `F5XcNginxOneMonitor:` + fmt.Sprintf("%#v", this.F5XcNginxOneMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLocalK8SWrite{` + + `VesIoLocalK8SWrite:` + fmt.Sprintf("%#v", this.VesIoLocalK8SWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxOneUser) GoString() string { +func (this *APIGroupChoice_VesIoMonitorRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneUser{` + - `F5XcNginxOneUser:` + fmt.Sprintf("%#v", this.F5XcNginxOneUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoMonitorRead{` + + `VesIoMonitorRead:` + fmt.Sprintf("%#v", this.VesIoMonitorRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxOneAdmin) GoString() string { +func (this *APIGroupChoice_VesIoMonitorWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneAdmin{` + - `F5XcNginxOneAdmin:` + fmt.Sprintf("%#v", this.F5XcNginxOneAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoMonitorWrite{` + + `VesIoMonitorWrite:` + fmt.Sprintf("%#v", this.VesIoMonitorWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteApplication) GoString() string { +func (this *APIGroupChoice_VesIoNetworkRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteApplication{` + - `F5XcNginxMgmtSuiteApplication:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteApplication) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoNetworkRead{` + + `VesIoNetworkRead:` + fmt.Sprintf("%#v", this.VesIoNetworkRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) GoString() string { +func (this *APIGroupChoice_VesIoNetworkWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication{` + - `F5XcApplicationInfrastructureProtectionApplication:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionApplication) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoNetworkWrite{` + + `VesIoNetworkWrite:` + fmt.Sprintf("%#v", this.VesIoNetworkWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxOneApplicationRead) GoString() string { +func (this *APIGroupChoice_VesIoProxyMonitorRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneApplicationRead{` + - `F5XcNginxOneApplicationRead:` + fmt.Sprintf("%#v", this.F5XcNginxOneApplicationRead) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyMonitorRead{` + + `VesIoProxyMonitorRead:` + fmt.Sprintf("%#v", this.VesIoProxyMonitorRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) GoString() string { +func (this *APIGroupChoice_VesIoProxyMonitorWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneApplicationWrite{` + - `F5XcNginxOneApplicationWrite:` + fmt.Sprintf("%#v", this.F5XcNginxOneApplicationWrite) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyMonitorWrite{` + + `VesIoProxyMonitorWrite:` + fmt.Sprintf("%#v", this.VesIoProxyMonitorWrite) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcClearviewMonitor) GoString() string { +func (this *APIGroupChoice_VesIoProxyRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClearviewMonitor{` + - `F5XcClearviewMonitor:` + fmt.Sprintf("%#v", this.F5XcClearviewMonitor) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyRead{` + + `VesIoProxyRead:` + fmt.Sprintf("%#v", this.VesIoProxyRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcClearviewUser) GoString() string { +func (this *APIGroupChoice_VesIoProxySecurityRead) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClearviewUser{` + - `F5XcClearviewUser:` + fmt.Sprintf("%#v", this.F5XcClearviewUser) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxySecurityRead{` + + `VesIoProxySecurityRead:` + fmt.Sprintf("%#v", this.VesIoProxySecurityRead) + `}`}, ", ") return s } -func (this *APIGroupChoice_F5XcClearviewAdmin) GoString() string { +func (this *APIGroupChoice_VesIoProxySecurityWrite) GoString() string { if this == nil { return "nil" } - s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClearviewAdmin{` + - `F5XcClearviewAdmin:` + fmt.Sprintf("%#v", this.F5XcClearviewAdmin) + `}`}, ", ") + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxySecurityWrite{` + + `VesIoProxySecurityWrite:` + fmt.Sprintf("%#v", this.VesIoProxySecurityWrite) + `}`}, ", ") return s } -func valueToGoStringAllApiGroups(v interface{}, typ string) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { +func (this *APIGroupChoice_VesIoProxyWafRead) GoString() string { + if this == nil { return "nil" } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyWafRead{` + + `VesIoProxyWafRead:` + fmt.Sprintf("%#v", this.VesIoProxyWafRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *APIGroupChoice_VesIoProxyWafWrite) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *APIGroupChoice) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyWafWrite{` + + `VesIoProxyWafWrite:` + fmt.Sprintf("%#v", this.VesIoProxyWafWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Choice != nil { - { - size := m.Choice.Size() - i -= size - if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *APIGroupChoice_VesIoProxyWrite) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} - -func (m *APIGroupChoice_InfrastructureDemoAccessRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoProxyWrite{` + + `VesIoProxyWrite:` + fmt.Sprintf("%#v", this.VesIoProxyWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_InfrastructureDemoAccessRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.InfrastructureDemoAccessRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoSecretsRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoSecretsRead{` + + `VesIoSecretsRead:` + fmt.Sprintf("%#v", this.VesIoSecretsRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoBillingRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoSecretsWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoSecretsWrite{` + + `VesIoSecretsWrite:` + fmt.Sprintf("%#v", this.VesIoSecretsWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoBillingRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoBillingRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoUamAdminRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x10 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamAdminRead{` + + `VesIoUamAdminRead:` + fmt.Sprintf("%#v", this.VesIoUamAdminRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoBillingWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoUamAdminWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamAdminWrite{` + + `VesIoUamAdminWrite:` + fmt.Sprintf("%#v", this.VesIoUamAdminWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoBillingWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoBillingWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoUamRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x18 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamRead{` + + `VesIoUamRead:` + fmt.Sprintf("%#v", this.VesIoUamRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoGeneralRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoUamWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoUamWrite{` + + `VesIoUamWrite:` + fmt.Sprintf("%#v", this.VesIoUamWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoGeneralRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoGeneralRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoVirtualSitesRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x20 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVirtualSitesRead{` + + `VesIoVirtualSitesRead:` + fmt.Sprintf("%#v", this.VesIoVirtualSitesRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoGeneralWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoVirtualSitesWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVirtualSitesWrite{` + + `VesIoVirtualSitesWrite:` + fmt.Sprintf("%#v", this.VesIoVirtualSitesWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoGeneralWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoGeneralWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoVoltShareRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x28 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVoltShareRead{` + + `VesIoVoltShareRead:` + fmt.Sprintf("%#v", this.VesIoVoltShareRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoIaasCaasRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoVoltShareWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoVoltShareWrite{` + + `VesIoVoltShareWrite:` + fmt.Sprintf("%#v", this.VesIoVoltShareWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoIaasCaasRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoIaasCaasRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoWebAccessRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x30 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoWebAccessRead{` + + `VesIoWebAccessRead:` + fmt.Sprintf("%#v", this.VesIoWebAccessRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoIaasCaasWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoWebAccessWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoWebAccessWrite{` + + `VesIoWebAccessWrite:` + fmt.Sprintf("%#v", this.VesIoWebAccessWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoIaasCaasWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoIaasCaasWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoTenantOwnerRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x38 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoTenantOwnerRead{` + + `VesIoTenantOwnerRead:` + fmt.Sprintf("%#v", this.VesIoTenantOwnerRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoInfraMonitorRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoTenantOwnerWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoTenantOwnerWrite{` + + `VesIoTenantOwnerWrite:` + fmt.Sprintf("%#v", this.VesIoTenantOwnerWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoInfraMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoInfraMonitorRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoStoredObjectRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x40 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoStoredObjectRead{` + + `VesIoStoredObjectRead:` + fmt.Sprintf("%#v", this.VesIoStoredObjectRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoInfraMonitorWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoStoredObjectWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoStoredObjectWrite{` + + `VesIoStoredObjectWrite:` + fmt.Sprintf("%#v", this.VesIoStoredObjectWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoInfraMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoInfraMonitorWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleShapeBotRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x48 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotRead{` + + `VoltconsoleShapeBotRead:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoInfrastructureRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleShapeBotWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotWrite{` + + `VoltconsoleShapeBotWrite:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoInfrastructureRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoInfrastructureRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleShapeBotAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x50 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotAdmin{` + + `VoltconsoleShapeBotAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoInfrastructureWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt{` + + `VoltconsoleShapeBotSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleShapeBotSubscriptionMgmt) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoInfrastructureWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoInfrastructureWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleShapeRecognizeRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x58 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeRead{` + + `VoltconsoleShapeRecognizeRead:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoInternalRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleShapeRecognizeWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeWrite{` + + `VoltconsoleShapeRecognizeWrite:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoInternalRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoInternalRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x60 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeAdmin{` + + `VoltconsoleShapeRecognizeAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoInternalWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt{` + + `VoltconsoleShapeRecognizeSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleShapeRecognizeSubscriptionMgmt) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoInternalWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoInternalWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleAidataBfdpRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x68 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpRead{` + + `VoltconsoleAidataBfdpRead:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoK8SRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleAidataBfdpWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpWrite{` + + `VoltconsoleAidataBfdpWrite:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoK8SRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoK8SRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleAidataBfdpAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x70 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpAdmin{` + + `VoltconsoleAidataBfdpAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoK8SWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt{` + + `VoltconsoleAidataBfdpSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleAidataBfdpSubscriptionMgmt) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoK8SWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoK8SWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x78 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorRead{` + + `VoltconsoleSyntheticMonitorRead:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoLabelsRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorWrite{` + + `VoltconsoleSyntheticMonitorWrite:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoLabelsRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoLabelsRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x80 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_VesIoLabelsWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorAdmin{` + + `VoltconsoleSyntheticMonitorAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoLabelsWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoLabelsWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x88 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt{` + + `VoltconsoleSyntheticMonitorSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleSyntheticMonitorSubscriptionMgmt) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoLocalK8SWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleTenantMgmtRead) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtRead{` + + `VoltconsoleTenantMgmtRead:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtRead) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoLocalK8SWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoLocalK8SWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleTenantMgmtWrite) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x90 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtWrite{` + + `VoltconsoleTenantMgmtWrite:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtWrite) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoMonitorRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleTenantMgmtAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtAdmin{` + + `VoltconsoleTenantMgmtAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoMonitorRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x98 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt{` + + `VoltconsoleTenantMgmtSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleTenantMgmtSubscriptionMgmt) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoMonitorWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleScimClientWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimClientWrite{` + + `VoltconsoleScimClientWrite:` + fmt.Sprintf("%#v", this.VoltconsoleScimClientWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoMonitorWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleScimClientRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimClientRead{` + + `VoltconsoleScimClientRead:` + fmt.Sprintf("%#v", this.VoltconsoleScimClientRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoNetworkRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleScimAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimAdmin{` + + `VoltconsoleScimAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleScimAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoNetworkRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoNetworkRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleScimSubscriptionMgmt{` + + `VoltconsoleScimSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleScimSubscriptionMgmt) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoNetworkWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteRead{` + + `VoltconsoleNginxMgmtSuiteRead:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteRead) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoNetworkWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoNetworkWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite{` + + `VoltconsoleNginxMgmtSuiteWrite:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteWrite) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoProxyMonitorRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin{` + + `VoltconsoleNginxMgmtSuiteAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxyMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxyMonitorRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt{` + + `VoltconsoleNginxMgmtSuiteSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteSubscriptionMgmt) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoProxyMonitorWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication{` + + `VoltconsoleNginxMgmtSuiteApplication:` + fmt.Sprintf("%#v", this.VoltconsoleNginxMgmtSuiteApplication) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxyMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxyMonitorWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleCdnRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xc0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnRead{` + + `VoltconsoleCdnRead:` + fmt.Sprintf("%#v", this.VoltconsoleCdnRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoProxyRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleCdnWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnWrite{` + + `VoltconsoleCdnWrite:` + fmt.Sprintf("%#v", this.VoltconsoleCdnWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxyRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxyRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleCdnAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xc8 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_VesIoProxySecurityRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnAdmin{` + + `VoltconsoleCdnAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleCdnAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxySecurityRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxySecurityRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd0 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_VesIoProxySecurityWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleCdnSubscriptionMgmt{` + + `VoltconsoleCdnSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleCdnSubscriptionMgmt) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxySecurityWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxySecurityWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSafeapRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapRead{` + + `VoltconsoleSafeapRead:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoProxyWafRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleSafeapWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapWrite{` + + `VoltconsoleSafeapWrite:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxyWafRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxyWafRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSafeapAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapAdmin{` + + `VoltconsoleSafeapAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoProxyWafWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt{` + + `VoltconsoleSafeapSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleSafeapSubscriptionMgmt) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxyWafWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxyWafWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipSubscriptionMgmt{` + + `VoltconsoleAipSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleAipSubscriptionMgmt) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoProxyWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleAipRead) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipRead{` + + `VoltconsoleAipRead:` + fmt.Sprintf("%#v", this.VoltconsoleAipRead) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoProxyWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoProxyWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleAipWrite) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xf0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipWrite{` + + `VoltconsoleAipWrite:` + fmt.Sprintf("%#v", this.VoltconsoleAipWrite) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoSecretsRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleAipAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipAdmin{` + + `VoltconsoleAipAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleAipAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoSecretsRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoSecretsRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleAipApplication) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xf8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleAipApplication{` + + `VoltconsoleAipApplication:` + fmt.Sprintf("%#v", this.VoltconsoleAipApplication) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoSecretsWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleSupportMgmtRead) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtRead{` + + `VoltconsoleSupportMgmtRead:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtRead) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoSecretsWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoSecretsWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSupportMgmtWrite) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x80 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtWrite{` + + `VoltconsoleSupportMgmtWrite:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtWrite) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoUamAdminRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleSupportMgmtAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtAdmin{` + + `VoltconsoleSupportMgmtAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoUamAdminRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoUamAdminRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x98 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt{` + + `VoltconsoleSupportMgmtSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleSupportMgmtSubscriptionMgmt) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoUamAdminWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleClientSideDefenseRead) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseRead{` + + `VoltconsoleClientSideDefenseRead:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseRead) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoUamAdminWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoUamAdminWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleClientSideDefenseWrite) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xa0 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_VesIoUamRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseWrite{` + + `VoltconsoleClientSideDefenseWrite:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoUamRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoUamRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xa8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseAdmin{` + + `VoltconsoleClientSideDefenseAdmin:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoUamWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt{` + + `VoltconsoleClientSideDefenseSubscriptionMgmt:` + fmt.Sprintf("%#v", this.VoltconsoleClientSideDefenseSubscriptionMgmt) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoUamWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoUamWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xb0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseAdvancedMonitor{` + + `F5XcBotDefenseAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefenseAdvancedMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoVirtualSitesRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcBotDefenseAdvancedUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseAdvancedUser{` + + `F5XcBotDefenseAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcBotDefenseAdvancedUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoVirtualSitesRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoVirtualSitesRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xb8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseAdvancedAdmin{` + + `F5XcBotDefenseAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefenseAdvancedAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoVirtualSitesWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcBotDefensePremiumMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefensePremiumMonitor{` + + `F5XcBotDefensePremiumMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefensePremiumMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoVirtualSitesWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoVirtualSitesWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBotDefensePremiumUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xc0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefensePremiumUser{` + + `F5XcBotDefensePremiumUser:` + fmt.Sprintf("%#v", this.F5XcBotDefensePremiumUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoVoltShareRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcBotDefensePremiumAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefensePremiumAdmin{` + + `F5XcBotDefensePremiumAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefensePremiumAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoVoltShareRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoVoltShareRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoReportRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xc8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoReportRead{` + + `VesIoReportRead:` + fmt.Sprintf("%#v", this.VesIoReportRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoVoltShareWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoReportWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoReportWrite{` + + `VesIoReportWrite:` + fmt.Sprintf("%#v", this.VesIoReportWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoVoltShareWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoVoltShareWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSupportOperationsMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xd0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportOperationsMonitor{` + + `F5XcSupportOperationsMonitor:` + fmt.Sprintf("%#v", this.F5XcSupportOperationsMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoWebAccessRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSupportOperationsUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportOperationsUser{` + + `F5XcSupportOperationsUser:` + fmt.Sprintf("%#v", this.F5XcSupportOperationsUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoWebAccessRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoWebAccessRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSupportOperationsAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xd8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSupportOperationsAdmin{` + + `F5XcSupportOperationsAdmin:` + fmt.Sprintf("%#v", this.F5XcSupportOperationsAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoWebAccessWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcInternal) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcInternal{` + + `F5XcInternal:` + fmt.Sprintf("%#v", this.F5XcInternal) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoWebAccessWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoWebAccessWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_VesIoLocalK8SKubeconfig) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xe0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoLocalK8SKubeconfig{` + + `VesIoLocalK8SKubeconfig:` + fmt.Sprintf("%#v", this.VesIoLocalK8SKubeconfig) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoTenantOwnerRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_VesIoGlobalK8SKubeconfig) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_VesIoGlobalK8SKubeconfig{` + + `VesIoGlobalK8SKubeconfig:` + fmt.Sprintf("%#v", this.VesIoGlobalK8SKubeconfig) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoTenantOwnerRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoTenantOwnerRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBotDefenseBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xe8 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_VesIoTenantOwnerWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseBasicMonitor{` + + `F5XcBotDefenseBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefenseBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoTenantOwnerWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoTenantOwnerWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBotDefenseBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xf0 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_VesIoStoredObjectRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseBasicUser{` + + `F5XcBotDefenseBasicUser:` + fmt.Sprintf("%#v", this.F5XcBotDefenseBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoStoredObjectRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoStoredObjectRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBotDefenseBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xf8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseBasicAdmin{` + + `F5XcBotDefenseBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefenseBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VesIoStoredObjectWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcBigIpApmMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBigIpApmMonitor{` + + `F5XcBigIpApmMonitor:` + fmt.Sprintf("%#v", this.F5XcBigIpApmMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VesIoStoredObjectWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VesIoStoredObjectWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcBigIpApmUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x80 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBigIpApmUser{` + + `F5XcBigIpApmUser:` + fmt.Sprintf("%#v", this.F5XcBigIpApmUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeBotRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcBigIpApmAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBigIpApmAdmin{` + + `F5XcBigIpApmAdmin:` + fmt.Sprintf("%#v", this.F5XcBigIpApmAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeBotRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeBotRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcMobileIntegratorMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x88 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcMobileIntegratorMonitor{` + + `F5XcMobileIntegratorMonitor:` + fmt.Sprintf("%#v", this.F5XcMobileIntegratorMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeBotWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcMobileIntegratorUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcMobileIntegratorUser{` + + `F5XcMobileIntegratorUser:` + fmt.Sprintf("%#v", this.F5XcMobileIntegratorUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeBotWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeBotWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcMobileIntegratorAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x90 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcMobileIntegratorAdmin{` + + `F5XcMobileIntegratorAdmin:` + fmt.Sprintf("%#v", this.F5XcMobileIntegratorAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeBotAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcFlowCollectionMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcFlowCollectionMonitor{` + + `F5XcFlowCollectionMonitor:` + fmt.Sprintf("%#v", this.F5XcFlowCollectionMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeBotAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeBotAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcRoutedDdosBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x98 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosBasicMonitor{` + + `F5XcRoutedDdosBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcRoutedDdosBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosBasicUser{` + + `F5XcRoutedDdosBasicUser:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeBotSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcRoutedDdosBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xa0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosBasicAdmin{` + + `F5XcRoutedDdosBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseBasicMonitor{` + + `F5XcClientSideDefenseBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeRecognizeRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeRecognizeRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcClientSideDefenseBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xa8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseBasicUser{` + + `F5XcClientSideDefenseBasicUser:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseBasicAdmin{` + + `F5XcClientSideDefenseBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeRecognizeWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeRecognizeWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcCdnBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xb0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcCdnBasicMonitor{` + + `F5XcCdnBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcCdnBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcCdnBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcCdnBasicUser{` + + `F5XcCdnBasicUser:` + fmt.Sprintf("%#v", this.F5XcCdnBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeRecognizeAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcCdnBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xb8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcCdnBasicAdmin{` + + `F5XcCdnBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcCdnBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor{` + + `F5XcApplicationInfrastructureProtectionBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleShapeRecognizeSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xc0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser{` + + `F5XcApplicationInfrastructureProtectionBasicUser:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAidataBfdpRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin{` + + `F5XcApplicationInfrastructureProtectionBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAidataBfdpRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAidataBfdpRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcWaapBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xc8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapBasicMonitor{` + + `F5XcWaapBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcWaapBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAidataBfdpWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcWaapBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapBasicUser{` + + `F5XcWaapBasicUser:` + fmt.Sprintf("%#v", this.F5XcWaapBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAidataBfdpWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAidataBfdpWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcWaapBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xd0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapBasicAdmin{` + + `F5XcWaapBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcWaapBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAidataBfdpAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcWaapStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapStandardMonitor{` + + `F5XcWaapStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcWaapStandardMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAidataBfdpAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAidataBfdpAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcWaapStandardUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xd8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapStandardUser{` + + `F5XcWaapStandardUser:` + fmt.Sprintf("%#v", this.F5XcWaapStandardUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcWaapStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapStandardAdmin{` + + `F5XcWaapStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcWaapStandardAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAidataBfdpSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xe0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapAdvancedMonitor{` + + `F5XcWaapAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcWaapAdvancedMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcWaapAdvancedUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapAdvancedUser{` + + `F5XcWaapAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcWaapAdvancedUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSyntheticMonitorRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xe8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWaapAdvancedAdmin{` + + `F5XcWaapAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcWaapAdvancedAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementBasicMonitor{` + + `F5XcSiteManagementBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcSiteManagementBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSyntheticMonitorWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSiteManagementBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xf0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementBasicUser{` + + `F5XcSiteManagementBasicUser:` + fmt.Sprintf("%#v", this.F5XcSiteManagementBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementBasicAdmin{` + + `F5XcSiteManagementBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcSiteManagementBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSyntheticMonitorAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSiteManagementStandardMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xf8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementStandardMonitor{` + + `F5XcSiteManagementStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcSiteManagementStandardMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSiteManagementStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementStandardUser{` + + `F5XcSiteManagementStandardUser:` + fmt.Sprintf("%#v", this.F5XcSiteManagementStandardUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSyntheticMonitorSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSiteManagementStandardAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x80 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSiteManagementStandardAdmin{` + + `F5XcSiteManagementStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcSiteManagementStandardAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleTenantMgmtRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcDnsBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsBasicMonitor{` + + `F5XcDnsBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcDnsBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleTenantMgmtRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleTenantMgmtRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcDnsBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x88 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsBasicUser{` + + `F5XcDnsBasicUser:` + fmt.Sprintf("%#v", this.F5XcDnsBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleTenantMgmtWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcDnsBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsBasicAdmin{` + + `F5XcDnsBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcDnsBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleTenantMgmtWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleTenantMgmtWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x90 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionBasicMonitor{` + + `F5XcAccountProtectionBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleTenantMgmtAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionBasicUser{` + + `F5XcAccountProtectionBasicUser:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleTenantMgmtAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleTenantMgmtAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x98 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionBasicAdmin{` + + `F5XcAccountProtectionBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor{` + + `F5XcSyntheticMonitoringBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleTenantMgmtSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xa0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringBasicUser{` + + `F5XcSyntheticMonitoringBasicUser:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleScimClientWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin{` + + `F5XcSyntheticMonitoringBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleScimClientWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleScimClientWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xa8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDataIntelligenceMonitor{` + + `F5XcDataIntelligenceMonitor:` + fmt.Sprintf("%#v", this.F5XcDataIntelligenceMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleScimClientRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcDataIntelligenceUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDataIntelligenceUser{` + + `F5XcDataIntelligenceUser:` + fmt.Sprintf("%#v", this.F5XcDataIntelligenceUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleScimClientRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleScimClientRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xb0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDataIntelligenceAdmin{` + + `F5XcDataIntelligenceAdmin:` + fmt.Sprintf("%#v", this.F5XcDataIntelligenceAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleScimAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshBasicMonitor{` + + `F5XcSecuremeshBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcSecuremeshBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleScimAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleScimAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSecuremeshBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xb8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshBasicUser{` + + `F5XcSecuremeshBasicUser:` + fmt.Sprintf("%#v", this.F5XcSecuremeshBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshBasicAdmin{` + + `F5XcSecuremeshBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcSecuremeshBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleScimSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSecuremeshStandardMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xc0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshStandardMonitor{` + + `F5XcSecuremeshStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcSecuremeshStandardMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSecuremeshStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshStandardUser{` + + `F5XcSecuremeshStandardUser:` + fmt.Sprintf("%#v", this.F5XcSecuremeshStandardUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleNginxMgmtSuiteRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSecuremeshStandardAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xc8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshStandardAdmin{` + + `F5XcSecuremeshStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcSecuremeshStandardAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshAdvancedMonitor{` + + `F5XcSecuremeshAdvancedMonitor:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvancedMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleNginxMgmtSuiteWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xd0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshAdvancedUser{` + + `F5XcSecuremeshAdvancedUser:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvancedUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSecuremeshAdvancedAdmin{` + + `F5XcSecuremeshAdvancedAdmin:` + fmt.Sprintf("%#v", this.F5XcSecuremeshAdvancedAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleNginxMgmtSuiteAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAppstackBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xf8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackBasicMonitor{` + + `F5XcAppstackBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcAppstackBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcAppstackBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackBasicUser{` + + `F5XcAppstackBasicUser:` + fmt.Sprintf("%#v", this.F5XcAppstackBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleNginxMgmtSuiteSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAppstackBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x80 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackBasicAdmin{` + + `F5XcAppstackBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcAppstackBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcAppstackStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackStandardMonitor{` + + `F5XcAppstackStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcAppstackStandardMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleNginxMgmtSuiteApplication { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAppstackStandardUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x88 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackStandardUser{` + + `F5XcAppstackStandardUser:` + fmt.Sprintf("%#v", this.F5XcAppstackStandardUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleCdnRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcAppstackStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAppstackStandardAdmin{` + + `F5XcAppstackStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcAppstackStandardAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleCdnRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleCdnRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xa8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor{` + + `F5XcNginxMgmtSuiteBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleCdnWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteBasicUser{` + + `F5XcNginxMgmtSuiteBasicUser:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleCdnWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleCdnWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xb0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin{` + + `F5XcNginxMgmtSuiteBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcNginxMgmtSuiteBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleCdnAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor{` + + `F5XcApplicationTrafficInsightBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightBasicMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleCdnAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleCdnAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xb8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightBasicUser{` + + `F5XcApplicationTrafficInsightBasicUser:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightBasicUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin{` + + `F5XcApplicationTrafficInsightBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightBasicAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleCdnSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xc0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor{` + + `F5XcAuthenticationIntelligenceBasicMonitor:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceBasicMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSafeapRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser{` + + `F5XcAuthenticationIntelligenceBasicUser:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceBasicUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSafeapRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSafeapRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xc8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin{` + + `F5XcAuthenticationIntelligenceBasicAdmin:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceBasicAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSafeapWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication{` + + `F5XcApplicationInfrastructureProtectionApplication:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionApplication) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSafeapWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSafeapWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcNginxOneApplicationRead) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xd0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneApplicationRead{` + + `F5XcNginxOneApplicationRead:` + fmt.Sprintf("%#v", this.F5XcNginxOneApplicationRead) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSafeapAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcNginxOneApplicationWrite{` + + `F5XcNginxOneApplicationWrite:` + fmt.Sprintf("%#v", this.F5XcNginxOneApplicationWrite) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSafeapAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSafeapAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcClearviewMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xd8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClearviewMonitor{` + + `F5XcClearviewMonitor:` + fmt.Sprintf("%#v", this.F5XcClearviewMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcClearviewUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClearviewUser{` + + `F5XcClearviewUser:` + fmt.Sprintf("%#v", this.F5XcClearviewUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleSafeapSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcClearviewAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xe0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClearviewAdmin{` + + `F5XcClearviewAdmin:` + fmt.Sprintf("%#v", this.F5XcClearviewAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcRoutedDdosStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosStandardMonitor{` + + `F5XcRoutedDdosStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosStandardMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAipSubscriptionMgmt { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcRoutedDdosStandardUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xe8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosStandardUser{` + + `F5XcRoutedDdosStandardUser:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosStandardUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAipRead) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcRoutedDdosStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcRoutedDdosStandardAdmin{` + + `F5XcRoutedDdosStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcRoutedDdosStandardAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAipRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAipRead { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcDnsStandardMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xf0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsStandardMonitor{` + + `F5XcDnsStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcDnsStandardMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAipWrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcDnsStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsStandardUser{` + + `F5XcDnsStandardUser:` + fmt.Sprintf("%#v", this.F5XcDnsStandardUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAipWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAipWrite { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcDnsStandardAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xf8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDnsStandardAdmin{` + + `F5XcDnsStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcDnsStandardAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAipAdmin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor{` + + `F5XcApplicationTrafficInsightStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightStandardMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAipAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAipAdmin { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x80 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightStandardUser{` + + `F5XcApplicationTrafficInsightStandardUser:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightStandardUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_VoltconsoleAipApplication) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin{` + + `F5XcApplicationTrafficInsightStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcApplicationTrafficInsightStandardAdmin) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_VoltconsoleAipApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.VoltconsoleAipApplication { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x88 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor{` + + `F5XcContentDeliveryNetworkStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcContentDeliveryNetworkStandardMonitor) + `}`}, ", ") + return s } -func (m *APIGroupChoice_F5XcDefaultAccess) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcContentDeliveryNetworkStandardUser{` + + `F5XcContentDeliveryNetworkStandardUser:` + fmt.Sprintf("%#v", this.F5XcContentDeliveryNetworkStandardUser) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_F5XcDefaultAccess) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.F5XcDefaultAccess { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xa0 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin{` + + `F5XcContentDeliveryNetworkStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcContentDeliveryNetworkStandardAdmin) + `}`}, ", ") + return s } -func (m *APIGroupChoice_F5XcBase) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *APIGroupChoice_F5XcClientSideDefenseStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseStandardMonitor{` + + `F5XcClientSideDefenseStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseStandardMonitor) + `}`}, ", ") + return s } - -func (m *APIGroupChoice_F5XcBase) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.F5XcBase { - dAtA[i] = 1 - } else { - dAtA[i] = 0 +func (this *APIGroupChoice_F5XcClientSideDefenseStandardUser) GoString() string { + if this == nil { + return "nil" } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xa8 - return len(dAtA) - i, nil + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseStandardUser{` + + `F5XcClientSideDefenseStandardUser:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseStandardUser) + `}`}, ", ") + return s } -func (m *APIGroupChoice_F5XcBilling) MarshalTo(dAtA []byte) (int, error) { +func (this *APIGroupChoice_F5XcClientSideDefenseStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcClientSideDefenseStandardAdmin{` + + `F5XcClientSideDefenseStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcClientSideDefenseStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor{` + + `F5XcSyntheticMonitoringStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringStandardUser{` + + `F5XcSyntheticMonitoringStandardUser:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin{` + + `F5XcSyntheticMonitoringStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcSyntheticMonitoringStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor{` + + `F5XcAuthenticationIntelligenceStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser{` + + `F5XcAuthenticationIntelligenceStandardUser:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin{` + + `F5XcAuthenticationIntelligenceStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcAuthenticationIntelligenceStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionStandardMonitor{` + + `F5XcAccountProtectionStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionStandardUser{` + + `F5XcAccountProtectionStandardUser:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcAccountProtectionStandardAdmin{` + + `F5XcAccountProtectionStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcAccountProtectionStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor{` + + `F5XcApplicationInfrastructureProtectionStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser{` + + `F5XcApplicationInfrastructureProtectionStandardUser:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin{` + + `F5XcApplicationInfrastructureProtectionStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcApplicationInfrastructureProtectionStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessStandardMonitor{` + + `F5XcDelegatedAccessStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessStandardUser{` + + `F5XcDelegatedAccessStandardUser:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcDelegatedAccessStandardAdmin{` + + `F5XcDelegatedAccessStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcDelegatedAccessStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseStandardMonitor{` + + `F5XcBotDefenseStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcBotDefenseStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseStandardUser{` + + `F5XcBotDefenseStandardUser:` + fmt.Sprintf("%#v", this.F5XcBotDefenseStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcBotDefenseStandardAdmin{` + + `F5XcBotDefenseStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcBotDefenseStandardAdmin) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardMonitor) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWebAppScanningStandardMonitor{` + + `F5XcWebAppScanningStandardMonitor:` + fmt.Sprintf("%#v", this.F5XcWebAppScanningStandardMonitor) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardUser) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWebAppScanningStandardUser{` + + `F5XcWebAppScanningStandardUser:` + fmt.Sprintf("%#v", this.F5XcWebAppScanningStandardUser) + `}`}, ", ") + return s +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardAdmin) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.APIGroupChoice_F5XcWebAppScanningStandardAdmin{` + + `F5XcWebAppScanningStandardAdmin:` + fmt.Sprintf("%#v", this.F5XcWebAppScanningStandardAdmin) + `}`}, ", ") + return s +} +func valueToGoStringAllApiGroups(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *APIGroupChoice) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIGroupChoice) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBilling) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i-- - if m.F5XcBilling { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + _ = i + var l int + _ = l + if m.Choice != nil { + { + size := m.Choice.Size() + i -= size + if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuditLogsAlerts) MarshalTo(dAtA []byte) (int, error) { + +func (m *APIGroupChoice_InfrastructureDemoAccessRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlerts) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_InfrastructureDemoAccessRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuditLogsAlerts { + if m.InfrastructureDemoAccessRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xb8 + dAtA[i] = 0x8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSupportMgmtRead) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoBillingRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSupportMgmtRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoBillingRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleSupportMgmtRead { + if m.VesIoBillingRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xc0 + dAtA[i] = 0x10 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSupportMgmtWrite) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoBillingWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSupportMgmtWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoBillingWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleSupportMgmtWrite { + if m.VesIoBillingWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xc8 + dAtA[i] = 0x18 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSupportMgmtAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoGeneralRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSupportMgmtAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoGeneralRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleSupportMgmtAdmin { + if m.VesIoGeneralRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xd0 + dAtA[i] = 0x20 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoGeneralWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoGeneralWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleSupportMgmtSubscriptionMgmt { + if m.VesIoGeneralWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xd8 + dAtA[i] = 0x28 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseRead) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoIaasCaasRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoIaasCaasRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleClientSideDefenseRead { + if m.VesIoIaasCaasRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xf0 + dAtA[i] = 0x30 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseWrite) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoIaasCaasWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoIaasCaasWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleClientSideDefenseWrite { + if m.VesIoIaasCaasWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xf8 + dAtA[i] = 0x38 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfraMonitorRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfraMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleClientSideDefenseAdmin { + if m.VesIoInfraMonitorRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x80 + dAtA[i] = 0x40 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfraMonitorWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfraMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VoltconsoleClientSideDefenseSubscriptionMgmt { + if m.VesIoInfraMonitorWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x88 + dAtA[i] = 0x48 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfrastructureRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfrastructureRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefenseAdvancedMonitor { + if m.VesIoInfrastructureRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x90 + dAtA[i] = 0x50 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfrastructureWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInfrastructureWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefenseAdvancedUser { + if m.VesIoInfrastructureWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x98 + dAtA[i] = 0x58 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInternalRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInternalRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefenseAdvancedAdmin { + if m.VesIoInternalRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0xa0 + dAtA[i] = 0x60 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefensePremiumMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInternalWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefensePremiumMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoInternalWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefensePremiumMonitor { + if m.VesIoInternalWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0xb0 + dAtA[i] = 0x68 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefensePremiumUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoK8SRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefensePremiumUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoK8SRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefensePremiumUser { + if m.VesIoK8SRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0xb8 + dAtA[i] = 0x70 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefensePremiumAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoK8SWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefensePremiumAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoK8SWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefensePremiumAdmin { + if m.VesIoK8SWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0xc0 + dAtA[i] = 0x78 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoReportRead) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLabelsRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoReportRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLabelsRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VesIoReportRead { + if m.VesIoLabelsRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xd0 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoReportWrite) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLabelsWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoReportWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLabelsWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VesIoReportWrite { + if m.VesIoLabelsWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xd8 + dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportOperationsMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLocalK8SWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportOperationsMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLocalK8SWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSupportOperationsMonitor { + if m.VesIoLocalK8SWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xe0 + dAtA[i] = 0x90 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportOperationsUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoMonitorRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportOperationsUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSupportOperationsUser { + if m.VesIoMonitorRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xe8 + dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoLocalK8SKubeconfig) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoMonitorWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoLocalK8SKubeconfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VesIoLocalK8SKubeconfig { + if m.VesIoMonitorWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xf0 + dAtA[i] = 0xa0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoGlobalK8SKubeconfig) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoNetworkRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoGlobalK8SKubeconfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoNetworkRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.VesIoGlobalK8SKubeconfig { + if m.VesIoNetworkRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x7 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xa8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoNetworkWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoNetworkWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcChildManagementAdmin { + if m.VesIoNetworkWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0x80 + dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyMonitorRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcChildManagementUser { + if m.VesIoProxyMonitorRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0x88 + dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyMonitorWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcChildManagementMonitor { + if m.VesIoProxyMonitorWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0x90 + dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefenseBasicMonitor { + if m.VesIoProxyRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0x98 + dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxySecurityRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxySecurityRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefenseBasicUser { + if m.VesIoProxySecurityRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xa0 + dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxySecurityWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxySecurityWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBotDefenseBasicAdmin { + if m.VesIoProxySecurityWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xa8 + dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBigIpApmMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyWafRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBigIpApmMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyWafRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBigIpApmMonitor { + if m.VesIoProxyWafRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xb0 + dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBigIpApmUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyWafWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBigIpApmUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyWafWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBigIpApmUser { + if m.VesIoProxyWafWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBigIpApmAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBigIpApmAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoProxyWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcBigIpApmAdmin { + if m.VesIoProxyWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xc0 + dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcMobileIntegratorMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoSecretsRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcMobileIntegratorMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoSecretsRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcMobileIntegratorMonitor { + if m.VesIoSecretsRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 i-- - dAtA[i] = 0xc8 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcMobileIntegratorUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoSecretsWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcMobileIntegratorUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoSecretsWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcMobileIntegratorUser { + if m.VesIoSecretsWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xd0 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcMobileIntegratorAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamAdminRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcMobileIntegratorAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamAdminRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcMobileIntegratorAdmin { + if m.VesIoUamAdminRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xd8 + dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcFlowCollectionMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamAdminWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcFlowCollectionMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamAdminWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcFlowCollectionMonitor { + if m.VesIoUamAdminWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xe0 + dAtA[i] = 0xa0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportOperationsAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportOperationsAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSupportOperationsAdmin { + if m.VesIoUamRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xe8 + dAtA[i] = 0xa8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcInternal) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcInternal) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoUamWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcInternal { + if m.VesIoUamWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 - i-- - dAtA[i] = 0xf0 - return len(dAtA) - i, nil -} -func (m *APIGroupChoice_F5XcConsoleBaseMonitor) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APIGroupChoice_F5XcConsoleBaseMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i-- - if m.F5XcConsoleBaseMonitor { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVirtualSitesRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVirtualSitesRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBaseUser { + if m.VesIoVirtualSitesRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVirtualSitesWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVirtualSitesWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBaseAdmin { + if m.VesIoVirtualSitesWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVoltShareRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVoltShareRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBaseAdvancedMonitor { + if m.VesIoVoltShareRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVoltShareWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoVoltShareWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBaseAdvancedUser { + if m.VesIoVoltShareWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoWebAccessRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoWebAccessRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBaseAdvancedAdmin { + if m.VesIoWebAccessRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBasePremiumMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoWebAccessWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBasePremiumMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoWebAccessWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBasePremiumMonitor { + if m.VesIoWebAccessWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBasePremiumUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoTenantOwnerRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBasePremiumUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoTenantOwnerRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBasePremiumUser { + if m.VesIoTenantOwnerRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBasePremiumAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoTenantOwnerWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBasePremiumAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoTenantOwnerWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcConsoleBasePremiumAdmin { + if m.VesIoTenantOwnerWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcScimMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoStoredObjectRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcScimMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoStoredObjectRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcScimMonitor { + if m.VesIoStoredObjectRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x9 + dAtA[i] = 0x2 i-- dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcScimUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoStoredObjectWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcScimUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoStoredObjectWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcScimUser { + if m.VesIoStoredObjectWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcScimAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcScimAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcScimAdmin { + if m.VoltconsoleShapeBotRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportManagementMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportManagementMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSupportManagementMonitor { + if m.VoltconsoleShapeBotWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0x90 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportManagementUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportManagementUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSupportManagementUser { + if m.VoltconsoleShapeBotAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportManagementAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportManagementAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSupportManagementAdmin { + if m.VoltconsoleShapeBotSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xa0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcGlobalLogReceiverMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcGlobalLogReceiverMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcGlobalLogReceiverMonitor { + if m.VoltconsoleShapeRecognizeRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xa8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcGlobalLogReceiverUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcGlobalLogReceiverUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcGlobalLogReceiverUser { + if m.VoltconsoleShapeRecognizeWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcGlobalLogReceiverAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcGlobalLogReceiverAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcGlobalLogReceiverAdmin { + if m.VoltconsoleShapeRecognizeAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuditLogsAlertsMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlertsMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuditLogsAlertsMonitor { + if m.VoltconsoleShapeRecognizeSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuditLogsAlertsUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlertsUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuditLogsAlertsUser { + if m.VoltconsoleAidataBfdpRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuditLogsAlertsAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlertsAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuditLogsAlertsAdmin { + if m.VoltconsoleAidataBfdpWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDelegatedAccessBasicMonitor { + if m.VoltconsoleAidataBfdpAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDelegatedAccessBasicUser { + if m.VoltconsoleAidataBfdpSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDelegatedAccessBasicAdmin { + if m.VoltconsoleSyntheticMonitorRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcScimClient) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcScimClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcScimClient { + if m.VoltconsoleSyntheticMonitorWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xa + dAtA[i] = 0x3 i-- dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcRoutedDdosBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcRoutedDdosBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcRoutedDdosBasicMonitor { + if m.VoltconsoleSyntheticMonitorAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xd + dAtA[i] = 0x3 i-- - dAtA[i] = 0xd0 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcRoutedDdosBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcRoutedDdosBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcRoutedDdosBasicUser { + if m.VoltconsoleSyntheticMonitorSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xd + dAtA[i] = 0x4 i-- - dAtA[i] = 0xd8 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcRoutedDdosBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcRoutedDdosBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcRoutedDdosBasicAdmin { + if m.VoltconsoleTenantMgmtRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xd + dAtA[i] = 0x4 i-- - dAtA[i] = 0xe0 + dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcClientSideDefenseBasicMonitor { + if m.VoltconsoleTenantMgmtWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xd + dAtA[i] = 0x4 i-- - dAtA[i] = 0xe8 + dAtA[i] = 0x90 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcClientSideDefenseBasicUser { + if m.VoltconsoleTenantMgmtAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xd + dAtA[i] = 0x4 i-- - dAtA[i] = 0xf0 + dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcClientSideDefenseBasicAdmin { + if m.VoltconsoleTenantMgmtSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xd + dAtA[i] = 0x4 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xa0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcCdnBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimClientWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcCdnBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimClientWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcCdnBasicMonitor { + if m.VoltconsoleScimClientWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0x98 + dAtA[i] = 0xa8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcCdnBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimClientRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcCdnBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimClientRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcCdnBasicUser { + if m.VoltconsoleScimClientRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0xa0 + dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcCdnBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcCdnBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcCdnBasicAdmin { + if m.VoltconsoleScimAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0xa8 + dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationInfrastructureProtectionBasicMonitor { + if m.VoltconsoleScimSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0xb0 + dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationInfrastructureProtectionBasicUser { + if m.VoltconsoleNginxMgmtSuiteRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationInfrastructureProtectionBasicAdmin { + if m.VoltconsoleNginxMgmtSuiteWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0xc0 + dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapBasicMonitor { + if m.VoltconsoleNginxMgmtSuiteAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x4 i-- - dAtA[i] = 0xe0 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapBasicUser { + if m.VoltconsoleNginxMgmtSuiteSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x5 i-- - dAtA[i] = 0xe8 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapBasicAdmin { + if m.VoltconsoleNginxMgmtSuiteApplication { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x5 i-- - dAtA[i] = 0xf0 + dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapAdvancedMonitor { + if m.VoltconsoleCdnRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xe + dAtA[i] = 0x5 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xa8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapAdvancedUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapAdvancedUser { + if m.VoltconsoleCdnWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0x80 + dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcWaapAdvancedAdmin { + if m.VoltconsoleCdnAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0x88 + dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSiteManagementBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSiteManagementBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSiteManagementBasicMonitor { + if m.VoltconsoleCdnSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0x90 + dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSiteManagementBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSiteManagementBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSiteManagementBasicUser { + if m.VoltconsoleSafeapRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0x98 + dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSiteManagementBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSiteManagementBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSiteManagementBasicAdmin { + if m.VoltconsoleSafeapWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0xa0 + dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDnsBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDnsBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDnsBasicMonitor { + if m.VoltconsoleSafeapAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0xa8 + dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDnsBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDnsBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDnsBasicUser { + if m.VoltconsoleSafeapSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0xb0 + dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDnsBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDnsBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDnsBasicAdmin { + if m.VoltconsoleAipSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAccountProtectionBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAccountProtectionBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAccountProtectionBasicMonitor { + if m.VoltconsoleAipRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0xc0 + dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAccountProtectionBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAccountProtectionBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAccountProtectionBasicUser { + if m.VoltconsoleAipWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x5 i-- - dAtA[i] = 0xc8 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAccountProtectionBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAccountProtectionBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAccountProtectionBasicAdmin { + if m.VoltconsoleAipAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x6 i-- - dAtA[i] = 0xd0 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipApplication) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleAipApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSyntheticMonitoringBasicMonitor { + if m.VoltconsoleAipApplication { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x6 i-- - dAtA[i] = 0xd8 + dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcDefaultAccess) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcDefaultAccess) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSyntheticMonitoringBasicUser { + if m.F5XcDefaultAccess { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x6 i-- - dAtA[i] = 0xe0 + dAtA[i] = 0xa0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBase) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBase) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSyntheticMonitoringBasicAdmin { + if m.F5XcBase { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x6 i-- - dAtA[i] = 0xe8 + dAtA[i] = 0xa8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementSupportAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBilling) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementSupportAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBilling) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcChildManagementSupportAdmin { + if m.F5XcBilling { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x6 i-- - dAtA[i] = 0xf0 + dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementSupportUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcAuditLogsAlerts) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementSupportUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcAuditLogsAlerts) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcChildManagementSupportUser { + if m.F5XcAuditLogsAlerts { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0xf + dAtA[i] = 0x6 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementSupportMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementSupportMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcChildManagementSupportMonitor { + if m.VoltconsoleSupportMgmtRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x6 i-- - dAtA[i] = 0x80 + dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDataIntelligenceMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDataIntelligenceMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDataIntelligenceMonitor { + if m.VoltconsoleSupportMgmtWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x6 i-- - dAtA[i] = 0x88 + dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDataIntelligenceUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDataIntelligenceUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDataIntelligenceUser { + if m.VoltconsoleSupportMgmtAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x6 i-- - dAtA[i] = 0x90 + dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDataIntelligenceAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDataIntelligenceAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcDataIntelligenceAdmin { + if m.VoltconsoleSupportMgmtSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x6 i-- - dAtA[i] = 0x98 + dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshBasicMonitor { + if m.VoltconsoleClientSideDefenseRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x6 i-- - dAtA[i] = 0xa0 + dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshBasicUser { + if m.VoltconsoleClientSideDefenseWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x6 i-- - dAtA[i] = 0xa8 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshBasicAdmin { + if m.VoltconsoleClientSideDefenseAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xb0 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshAdvancedMonitor { + if m.VoltconsoleClientSideDefenseSubscriptionMgmt { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshAdvancedUser { + if m.F5XcBotDefenseAdvancedMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xc0 + dAtA[i] = 0x90 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseAdvancedUser) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcSecuremeshAdvancedAdmin { + if m.F5XcBotDefenseAdvancedUser { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xc8 + dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAppstackBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAppstackBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAppstackBasicMonitor { + if m.F5XcBotDefenseAdvancedAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xd0 + dAtA[i] = 0xa0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAppstackBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefensePremiumMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAppstackBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefensePremiumMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAppstackBasicUser { + if m.F5XcBotDefensePremiumMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xd8 + dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAppstackBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefensePremiumUser) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAppstackBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefensePremiumUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAppstackBasicAdmin { + if m.F5XcBotDefensePremiumUser { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xe0 + dAtA[i] = 0xb8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefensePremiumAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefensePremiumAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxMgmtSuiteBasicMonitor { + if m.F5XcBotDefensePremiumAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xe8 + dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoReportRead) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoReportRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxMgmtSuiteBasicUser { + if m.VesIoReportRead { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xf0 + dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoReportWrite) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoReportWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxMgmtSuiteBasicAdmin { + if m.VesIoReportWrite { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcSupportOperationsMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcSupportOperationsMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationTrafficInsightBasicMonitor { + if m.F5XcSupportOperationsMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x7 i-- - dAtA[i] = 0x80 + dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcSupportOperationsUser) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcSupportOperationsUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationTrafficInsightBasicUser { + if m.F5XcSupportOperationsUser { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x7 i-- - dAtA[i] = 0x88 + dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLocalK8SKubeconfig) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoLocalK8SKubeconfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationTrafficInsightBasicAdmin { + if m.VesIoLocalK8SKubeconfig { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x7 i-- - dAtA[i] = 0x90 + dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoGlobalK8SKubeconfig) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_VesIoGlobalK8SKubeconfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuthenticationIntelligenceBasicMonitor { + if m.VesIoGlobalK8SKubeconfig { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x7 i-- - dAtA[i] = 0x98 + dAtA[i] = 0xf8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcChildManagementAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcChildManagementAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuthenticationIntelligenceBasicUser { + if m.F5XcChildManagementAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- - dAtA[i] = 0xa0 + dAtA[i] = 0x80 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcChildManagementUser) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcChildManagementUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcAuthenticationIntelligenceBasicAdmin { + if m.F5XcChildManagementUser { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- - dAtA[i] = 0xa8 + dAtA[i] = 0x88 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcChildManagementMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcChildManagementMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxOneMonitor { + if m.F5XcChildManagementMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- - dAtA[i] = 0xb0 + dAtA[i] = 0x90 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseBasicMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxOneUser { + if m.F5XcBotDefenseBasicMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0x98 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseBasicUser) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcBotDefenseBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxOneAdmin { + if m.F5XcBotDefenseBasicUser { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil +} +func (m *APIGroupChoice_F5XcBotDefenseBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupChoice_F5XcBotDefenseBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBotDefenseBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil +} +func (m *APIGroupChoice_F5XcBigIpApmMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupChoice_F5XcBigIpApmMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBigIpApmMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil +} +func (m *APIGroupChoice_F5XcBigIpApmUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupChoice_F5XcBigIpApmUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBigIpApmUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil +} +func (m *APIGroupChoice_F5XcBigIpApmAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupChoice_F5XcBigIpApmAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBigIpApmAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 i-- dAtA[i] = 0xc0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteApplication) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcMobileIntegratorMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcMobileIntegratorMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxMgmtSuiteApplication { + if m.F5XcMobileIntegratorMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- dAtA[i] = 0xc8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcMobileIntegratorUser) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcMobileIntegratorUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcApplicationInfrastructureProtectionApplication { + if m.F5XcMobileIntegratorUser { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- dAtA[i] = 0xd0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneApplicationRead) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcMobileIntegratorAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneApplicationRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcMobileIntegratorAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxOneApplicationRead { + if m.F5XcMobileIntegratorAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- dAtA[i] = 0xd8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneApplicationWrite) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcFlowCollectionMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneApplicationWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcFlowCollectionMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcNginxOneApplicationWrite { + if m.F5XcFlowCollectionMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- dAtA[i] = 0xe0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClearviewMonitor) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcSupportOperationsAdmin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClearviewMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcSupportOperationsAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcClearviewMonitor { + if m.F5XcSupportOperationsAdmin { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- dAtA[i] = 0xe8 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClearviewUser) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcInternal) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClearviewUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcInternal) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcClearviewUser { + if m.F5XcInternal { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x8 i-- dAtA[i] = 0xf0 return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClearviewAdmin) MarshalTo(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcConsoleBaseMonitor) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClearviewAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *APIGroupChoice_F5XcConsoleBaseMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) i-- - if m.F5XcClearviewAdmin { + if m.F5XcConsoleBaseMonitor { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x11 + dAtA[i] = 0x9 i-- - dAtA[i] = 0xf8 + dAtA[i] = 0xb0 return len(dAtA) - i, nil } -func encodeVarintAllApiGroups(dAtA []byte, offset int, v uint64) int { - offset -= sovAllApiGroups(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base +func (m *APIGroupChoice_F5XcConsoleBaseUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Choice != nil { - n += m.Choice.Size() + +func (m *APIGroupChoice_F5XcConsoleBaseUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBaseUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil +} +func (m *APIGroupChoice_F5XcConsoleBaseAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_InfrastructureDemoAccessRead) Size() (n int) { - if m == nil { - return 0 +func (m *APIGroupChoice_F5XcConsoleBaseAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBaseAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoBillingRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoBillingWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBaseAdvancedMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoGeneralRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoGeneralWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBaseAdvancedUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoIaasCaasRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoIaasCaasWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBaseAdvancedAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoInfraMonitorRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcConsoleBasePremiumMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoInfraMonitorWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBasePremiumMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasePremiumMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoInfrastructureRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcConsoleBasePremiumUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoInfrastructureWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBasePremiumUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasePremiumUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoInternalRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcConsoleBasePremiumAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoInternalWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBasePremiumAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasePremiumAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoK8SRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 - return n +func (m *APIGroupChoice_F5XcScimMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoK8SWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcScimMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcScimMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 2 - return n + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoLabelsRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcScimUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoLabelsWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcScimUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcScimUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoLocalK8SWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcScimAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoMonitorRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcScimAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcScimAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoMonitorWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSupportManagementMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoNetworkRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSupportManagementMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSupportManagementMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoNetworkWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSupportManagementUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoProxyMonitorRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n -} -func (m *APIGroupChoice_VesIoProxyMonitorWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSupportManagementUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSupportManagementUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoProxyRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSupportManagementAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoProxySecurityRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSupportManagementAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSupportManagementAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoProxySecurityWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcGlobalLogReceiverMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoProxyWafRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcGlobalLogReceiverMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcGlobalLogReceiverMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoProxyWafWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcGlobalLogReceiverUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoProxyWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcGlobalLogReceiverUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcGlobalLogReceiverUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoSecretsRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcGlobalLogReceiverAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoSecretsWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcGlobalLogReceiverAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcGlobalLogReceiverAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoUamAdminRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAuditLogsAlertsMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoUamAdminWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAuditLogsAlertsMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuditLogsAlertsMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoUamRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAuditLogsAlertsUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoUamWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAuditLogsAlertsUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuditLogsAlertsUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoVirtualSitesRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAuditLogsAlertsAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoVirtualSitesWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAuditLogsAlertsAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuditLogsAlertsAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoVoltShareRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoVoltShareWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDelegatedAccessBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoWebAccessRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDelegatedAccessBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoWebAccessWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDelegatedAccessBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDelegatedAccessBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoTenantOwnerRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoTenantOwnerWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDelegatedAccessBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoStoredObjectRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcScimClient) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoStoredObjectWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcScimClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcScimClient { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleShapeBotRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleShapeBotWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleShapeBotAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleAidataBfdpRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleAidataBfdpWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleAidataBfdpAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleAdvancedMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleAdvancedUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleAdvancedUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleTenantMgmtRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcConsoleAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleTenantMgmtWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcConsoleAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcConsoleAdvancedAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleTenantMgmtAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcRoutedDdosBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcRoutedDdosBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcRoutedDdosBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xd + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleScimClientWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcRoutedDdosBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleScimClientRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcRoutedDdosBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcRoutedDdosBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xd + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleScimAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcRoutedDdosBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcRoutedDdosBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcRoutedDdosBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xd + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClientSideDefenseBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xd + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcClientSideDefenseBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcClientSideDefenseBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClientSideDefenseBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xd + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleCdnRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClientSideDefenseBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xd + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleCdnWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcCdnBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleCdnAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcCdnBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcCdnBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcCdnBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSafeapRead) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcCdnBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcCdnBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSafeapWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcCdnBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSafeapAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcCdnBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcCdnBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleAipRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleAipWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleAipAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleAipApplication) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDefaultAccess) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBase) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBilling) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlerts) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSupportMgmtRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSupportMgmtWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleSupportMgmtAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapAdvancedMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xe + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapAdvancedUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapAdvancedUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapAdvancedAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSiteManagementBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSiteManagementBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSiteManagementBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefensePremiumMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSiteManagementBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefensePremiumUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSiteManagementBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefensePremiumAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSiteManagementBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoReportRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDnsBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoReportWrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n -} -func (m *APIGroupChoice_F5XcSupportOperationsMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDnsBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportOperationsUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDnsBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_VesIoLocalK8SKubeconfig) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDnsBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_VesIoGlobalK8SKubeconfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDnsBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDnsBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAccountProtectionBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAccountProtectionBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAccountProtectionBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAccountProtectionBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBotDefenseBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAccountProtectionBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAccountProtectionBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBotDefenseBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAccountProtectionBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBigIpApmMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAccountProtectionBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAccountProtectionBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcBigIpApmUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcBigIpApmAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSyntheticMonitoringBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcMobileIntegratorMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcMobileIntegratorUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSyntheticMonitoringBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcMobileIntegratorAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcFlowCollectionMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n -} -func (m *APIGroupChoice_F5XcSupportOperationsAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSyntheticMonitoringBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcInternal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcChildManagementSupportAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcChildManagementSupportAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcChildManagementSupportAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcChildManagementSupportUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcChildManagementSupportUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcChildManagementSupportUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0xf + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcChildManagementSupportMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcChildManagementSupportMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcChildManagementSupportMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDataIntelligenceMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBasePremiumMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDataIntelligenceMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDataIntelligenceMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcConsoleBasePremiumUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDataIntelligenceUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcConsoleBasePremiumAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDataIntelligenceUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDataIntelligenceUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcScimMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcDataIntelligenceAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcScimUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcDataIntelligenceAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDataIntelligenceAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcScimAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportManagementMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSupportManagementUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSupportManagementAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcGlobalLogReceiverMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcGlobalLogReceiverUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcGlobalLogReceiverAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlertsMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshAdvancedMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuditLogsAlertsUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshAdvancedUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuditLogsAlertsAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshAdvancedUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshAdvancedUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshAdvancedAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAppstackBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcScimClient) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAppstackBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcRoutedDdosBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAppstackBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcRoutedDdosBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAppstackBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcRoutedDdosBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAppstackBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAppstackBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcNginxMgmtSuiteBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcCdnBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcCdnBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcNginxMgmtSuiteBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcCdnBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcNginxMgmtSuiteBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x10 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapAdvancedMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcWaapAdvancedUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcWaapAdvancedAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuthenticationIntelligenceBasicMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSiteManagementBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSiteManagementBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuthenticationIntelligenceBasicUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSiteManagementBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDnsBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuthenticationIntelligenceBasicAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n -} -func (m *APIGroupChoice_F5XcDnsBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDnsBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAccountProtectionBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionApplication { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAccountProtectionBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcNginxOneApplicationRead) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAccountProtectionBasicAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcNginxOneApplicationRead) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcNginxOneApplicationRead { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcNginxOneApplicationWrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcNginxOneApplicationWrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcNginxOneApplicationWrite { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcClearviewMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementSupportAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcClearviewMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClearviewMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcChildManagementSupportUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcClearviewUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcChildManagementSupportMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcClearviewUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClearviewUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDataIntelligenceMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcClearviewAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcDataIntelligenceUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcClearviewAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClearviewAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x11 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcDataIntelligenceAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshBasicAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSecuremeshStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSecuremeshStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSecuremeshStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAppstackStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAppstackBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAppstackStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAppstackBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAppstackStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAppstackBasicAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAppstackStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcAppstackStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcAppstackStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAppstackStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcWaapStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcWaapStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWaapStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSiteManagementStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneMonitor) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSiteManagementStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneUser) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSiteManagementStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneAdmin) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSiteManagementStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxMgmtSuiteApplication) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcSiteManagementStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcSiteManagementStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSiteManagementStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcNginxOneApplicationRead) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcRoutedDdosStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcNginxOneApplicationWrite) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcRoutedDdosStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcRoutedDdosStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClearviewMonitor) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcRoutedDdosStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIGroupChoice_F5XcClearviewUser) Size() (n int) { - if m == nil { - return 0 + +func (m *APIGroupChoice_F5XcRoutedDdosStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcRoutedDdosStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - var l int - _ = l - n += 3 - return n + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (m *APIGroupChoice_F5XcClearviewAdmin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 3 - return n +func (m *APIGroupChoice_F5XcRoutedDdosStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func sovAllApiGroups(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozAllApiGroups(x uint64) (n int) { - return sovAllApiGroups(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *APIGroupChoice) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcRoutedDdosStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcRoutedDdosStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice{`, - `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_InfrastructureDemoAccessRead) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_InfrastructureDemoAccessRead{`, - `InfrastructureDemoAccessRead:` + fmt.Sprintf("%v", this.InfrastructureDemoAccessRead) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcDnsStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoBillingRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcDnsStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoBillingRead{`, - `VesIoBillingRead:` + fmt.Sprintf("%v", this.VesIoBillingRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x12 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoBillingWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoBillingWrite{`, - `VesIoBillingWrite:` + fmt.Sprintf("%v", this.VesIoBillingWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcDnsStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoGeneralRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcDnsStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoGeneralRead{`, - `VesIoGeneralRead:` + fmt.Sprintf("%v", this.VesIoGeneralRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoGeneralWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoGeneralWrite{`, - `VesIoGeneralWrite:` + fmt.Sprintf("%v", this.VesIoGeneralWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcDnsStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoIaasCaasRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcDnsStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDnsStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoIaasCaasRead{`, - `VesIoIaasCaasRead:` + fmt.Sprintf("%v", this.VesIoIaasCaasRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoIaasCaasWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoIaasCaasWrite{`, - `VesIoIaasCaasWrite:` + fmt.Sprintf("%v", this.VesIoIaasCaasWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoInfraMonitorRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoInfraMonitorRead{`, - `VesIoInfraMonitorRead:` + fmt.Sprintf("%v", this.VesIoInfraMonitorRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoInfraMonitorWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoInfraMonitorWrite{`, - `VesIoInfraMonitorWrite:` + fmt.Sprintf("%v", this.VesIoInfraMonitorWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoInfrastructureRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoInfrastructureRead{`, - `VesIoInfrastructureRead:` + fmt.Sprintf("%v", this.VesIoInfrastructureRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoInfrastructureWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoInfrastructureWrite{`, - `VesIoInfrastructureWrite:` + fmt.Sprintf("%v", this.VesIoInfrastructureWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoInternalRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationTrafficInsightStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoInternalRead{`, - `VesIoInternalRead:` + fmt.Sprintf("%v", this.VesIoInternalRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoInternalWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoInternalWrite{`, - `VesIoInternalWrite:` + fmt.Sprintf("%v", this.VesIoInternalWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoK8SRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcContentDeliveryNetworkStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoK8SRead{`, - `VesIoK8SRead:` + fmt.Sprintf("%v", this.VesIoK8SRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoK8SWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoK8SWrite{`, - `VesIoK8SWrite:` + fmt.Sprintf("%v", this.VesIoK8SWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoLabelsRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcContentDeliveryNetworkStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoLabelsRead{`, - `VesIoLabelsRead:` + fmt.Sprintf("%v", this.VesIoLabelsRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoLabelsWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoLabelsWrite{`, - `VesIoLabelsWrite:` + fmt.Sprintf("%v", this.VesIoLabelsWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoLocalK8SWrite) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcContentDeliveryNetworkStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoLocalK8SWrite{`, - `VesIoLocalK8SWrite:` + fmt.Sprintf("%v", this.VesIoLocalK8SWrite) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoMonitorRead) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoMonitorRead{`, - `VesIoMonitorRead:` + fmt.Sprintf("%v", this.VesIoMonitorRead) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcClientSideDefenseStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoMonitorWrite) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcClientSideDefenseStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClientSideDefenseStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoMonitorWrite{`, - `VesIoMonitorWrite:` + fmt.Sprintf("%v", this.VesIoMonitorWrite) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoNetworkRead) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoNetworkRead{`, - `VesIoNetworkRead:` + fmt.Sprintf("%v", this.VesIoNetworkRead) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcClientSideDefenseStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoNetworkWrite) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcClientSideDefenseStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClientSideDefenseStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoNetworkWrite{`, - `VesIoNetworkWrite:` + fmt.Sprintf("%v", this.VesIoNetworkWrite) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoProxyMonitorRead) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxyMonitorRead{`, - `VesIoProxyMonitorRead:` + fmt.Sprintf("%v", this.VesIoProxyMonitorRead) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcClientSideDefenseStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoProxyMonitorWrite) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcClientSideDefenseStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcClientSideDefenseStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxyMonitorWrite{`, - `VesIoProxyMonitorWrite:` + fmt.Sprintf("%v", this.VesIoProxyMonitorWrite) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoProxyRead) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxyRead{`, - `VesIoProxyRead:` + fmt.Sprintf("%v", this.VesIoProxyRead) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoProxySecurityRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSyntheticMonitoringStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxySecurityRead{`, - `VesIoProxySecurityRead:` + fmt.Sprintf("%v", this.VesIoProxySecurityRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoProxySecurityWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxySecurityWrite{`, - `VesIoProxySecurityWrite:` + fmt.Sprintf("%v", this.VesIoProxySecurityWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoProxyWafRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSyntheticMonitoringStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxyWafRead{`, - `VesIoProxyWafRead:` + fmt.Sprintf("%v", this.VesIoProxyWafRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoProxyWafWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxyWafWrite{`, - `VesIoProxyWafWrite:` + fmt.Sprintf("%v", this.VesIoProxyWafWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoProxyWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoProxyWrite{`, - `VesIoProxyWrite:` + fmt.Sprintf("%v", this.VesIoProxyWrite) + `,`, - `}`, - }, "") - return s -} -func (this *APIGroupChoice_VesIoSecretsRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcSyntheticMonitoringStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoSecretsRead{`, - `VesIoSecretsRead:` + fmt.Sprintf("%v", this.VesIoSecretsRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoSecretsWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoSecretsWrite{`, - `VesIoSecretsWrite:` + fmt.Sprintf("%v", this.VesIoSecretsWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoUamAdminRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuthenticationIntelligenceStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoUamAdminRead{`, - `VesIoUamAdminRead:` + fmt.Sprintf("%v", this.VesIoUamAdminRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoUamAdminWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoUamAdminWrite{`, - `VesIoUamAdminWrite:` + fmt.Sprintf("%v", this.VesIoUamAdminWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoUamRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuthenticationIntelligenceStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoUamRead{`, - `VesIoUamRead:` + fmt.Sprintf("%v", this.VesIoUamRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x13 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoUamWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoUamWrite{`, - `VesIoUamWrite:` + fmt.Sprintf("%v", this.VesIoUamWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoVirtualSitesRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAuthenticationIntelligenceStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoVirtualSitesRead{`, - `VesIoVirtualSitesRead:` + fmt.Sprintf("%v", this.VesIoVirtualSitesRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0x80 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoVirtualSitesWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoVirtualSitesWrite{`, - `VesIoVirtualSitesWrite:` + fmt.Sprintf("%v", this.VesIoVirtualSitesWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcAccountProtectionStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoVoltShareRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcAccountProtectionStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAccountProtectionStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoVoltShareRead{`, - `VesIoVoltShareRead:` + fmt.Sprintf("%v", this.VesIoVoltShareRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0x88 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoVoltShareWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoVoltShareWrite{`, - `VesIoVoltShareWrite:` + fmt.Sprintf("%v", this.VesIoVoltShareWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcAccountProtectionStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoWebAccessRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcAccountProtectionStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAccountProtectionStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoWebAccessRead{`, - `VesIoWebAccessRead:` + fmt.Sprintf("%v", this.VesIoWebAccessRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoWebAccessWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoWebAccessWrite{`, - `VesIoWebAccessWrite:` + fmt.Sprintf("%v", this.VesIoWebAccessWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcAccountProtectionStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoTenantOwnerRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcAccountProtectionStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcAccountProtectionStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoTenantOwnerRead{`, - `VesIoTenantOwnerRead:` + fmt.Sprintf("%v", this.VesIoTenantOwnerRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0x98 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoTenantOwnerWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoTenantOwnerWrite{`, - `VesIoTenantOwnerWrite:` + fmt.Sprintf("%v", this.VesIoTenantOwnerWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VesIoStoredObjectRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoStoredObjectRead{`, - `VesIoStoredObjectRead:` + fmt.Sprintf("%v", this.VesIoStoredObjectRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xa0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VesIoStoredObjectWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VesIoStoredObjectWrite{`, - `VesIoStoredObjectWrite:` + fmt.Sprintf("%v", this.VesIoStoredObjectWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleShapeBotRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotRead{`, - `VoltconsoleShapeBotRead:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xa8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleShapeBotWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotWrite{`, - `VoltconsoleShapeBotWrite:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleShapeBotAdmin) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcApplicationInfrastructureProtectionStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotAdmin{`, - `VoltconsoleShapeBotAdmin:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotAdmin) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xb0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt{`, - `VoltconsoleShapeBotSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotSubscriptionMgmt) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcDelegatedAccessStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleShapeRecognizeRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcDelegatedAccessStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDelegatedAccessStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeRead{`, - `VoltconsoleShapeRecognizeRead:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xb8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleShapeRecognizeWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeWrite{`, - `VoltconsoleShapeRecognizeWrite:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcDelegatedAccessStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcDelegatedAccessStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDelegatedAccessStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeAdmin{`, - `VoltconsoleShapeRecognizeAdmin:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeAdmin) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xc0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt{`, - `VoltconsoleShapeRecognizeSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeSubscriptionMgmt) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcDelegatedAccessStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleAidataBfdpRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcDelegatedAccessStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcDelegatedAccessStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpRead{`, - `VoltconsoleAidataBfdpRead:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xc8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleAidataBfdpWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpWrite{`, - `VoltconsoleAidataBfdpWrite:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcBotDefenseStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleAidataBfdpAdmin) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcBotDefenseStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBotDefenseStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpAdmin{`, - `VoltconsoleAidataBfdpAdmin:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpAdmin) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xd0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt{`, - `VoltconsoleAidataBfdpSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpSubscriptionMgmt) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcBotDefenseStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcBotDefenseStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBotDefenseStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorRead{`, - `VoltconsoleSyntheticMonitorRead:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorWrite{`, - `VoltconsoleSyntheticMonitorWrite:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcBotDefenseStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcBotDefenseStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcBotDefenseStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorAdmin{`, - `VoltconsoleSyntheticMonitorAdmin:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorAdmin) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt{`, - `VoltconsoleSyntheticMonitorSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorSubscriptionMgmt) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcWebAppScanningStandardMonitor) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleTenantMgmtRead) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcWebAppScanningStandardMonitor) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWebAppScanningStandardMonitor { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtRead{`, - `VoltconsoleTenantMgmtRead:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtRead) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xe8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleTenantMgmtWrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtWrite{`, - `VoltconsoleTenantMgmtWrite:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtWrite) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcWebAppScanningStandardUser) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleTenantMgmtAdmin) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcWebAppScanningStandardUser) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWebAppScanningStandardUser { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtAdmin{`, - `VoltconsoleTenantMgmtAdmin:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtAdmin) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt{`, - `VoltconsoleTenantMgmtSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtSubscriptionMgmt) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcWebAppScanningStandardAdmin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupChoice_VoltconsoleScimClientWrite) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_F5XcWebAppScanningStandardAdmin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.F5XcWebAppScanningStandardAdmin { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimClientWrite{`, - `VoltconsoleScimClientWrite:` + fmt.Sprintf("%v", this.VoltconsoleScimClientWrite) + `,`, - `}`, - }, "") - return s + i-- + dAtA[i] = 0x14 + i-- + dAtA[i] = 0xf8 + return len(dAtA) - i, nil } -func (this *APIGroupChoice_VoltconsoleScimClientRead) String() string { - if this == nil { - return "nil" +func encodeVarintAllApiGroups(dAtA []byte, offset int, v uint64) int { + offset -= sovAllApiGroups(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimClientRead{`, - `VoltconsoleScimClientRead:` + fmt.Sprintf("%v", this.VoltconsoleScimClientRead) + `,`, - `}`, - }, "") - return s + dAtA[offset] = uint8(v) + return base } -func (this *APIGroupChoice_VoltconsoleScimAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimAdmin{`, - `VoltconsoleScimAdmin:` + fmt.Sprintf("%v", this.VoltconsoleScimAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + if m.Choice != nil { + n += m.Choice.Size() + } + return n } -func (this *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) String() string { - if this == nil { - return "nil" + +func (m *APIGroupChoice_InfrastructureDemoAccessRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimSubscriptionMgmt{`, - `VoltconsoleScimSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleScimSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoBillingRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteRead{`, - `VoltconsoleNginxMgmtSuiteRead:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoBillingWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite{`, - `VoltconsoleNginxMgmtSuiteWrite:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoGeneralRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin{`, - `VoltconsoleNginxMgmtSuiteAdmin:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoGeneralWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt{`, - `VoltconsoleNginxMgmtSuiteSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoIaasCaasRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication{`, - `VoltconsoleNginxMgmtSuiteApplication:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteApplication) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleCdnRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoIaasCaasWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnRead{`, - `VoltconsoleCdnRead:` + fmt.Sprintf("%v", this.VoltconsoleCdnRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleCdnWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoInfraMonitorRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnWrite{`, - `VoltconsoleCdnWrite:` + fmt.Sprintf("%v", this.VoltconsoleCdnWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleCdnAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoInfraMonitorWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnAdmin{`, - `VoltconsoleCdnAdmin:` + fmt.Sprintf("%v", this.VoltconsoleCdnAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoInfrastructureRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnSubscriptionMgmt{`, - `VoltconsoleCdnSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleCdnSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleSafeapRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoInfrastructureWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapRead{`, - `VoltconsoleSafeapRead:` + fmt.Sprintf("%v", this.VoltconsoleSafeapRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleSafeapWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoInternalRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapWrite{`, - `VoltconsoleSafeapWrite:` + fmt.Sprintf("%v", this.VoltconsoleSafeapWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleSafeapAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoInternalWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapAdmin{`, - `VoltconsoleSafeapAdmin:` + fmt.Sprintf("%v", this.VoltconsoleSafeapAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoK8SRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt{`, - `VoltconsoleSafeapSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleSafeapSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoK8SWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipSubscriptionMgmt{`, - `VoltconsoleAipSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleAipSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 2 + return n } -func (this *APIGroupChoice_VoltconsoleAipRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoLabelsRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipRead{`, - `VoltconsoleAipRead:` + fmt.Sprintf("%v", this.VoltconsoleAipRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleAipWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoLabelsWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipWrite{`, - `VoltconsoleAipWrite:` + fmt.Sprintf("%v", this.VoltconsoleAipWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleAipAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoLocalK8SWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipAdmin{`, - `VoltconsoleAipAdmin:` + fmt.Sprintf("%v", this.VoltconsoleAipAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleAipApplication) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoMonitorRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipApplication{`, - `VoltconsoleAipApplication:` + fmt.Sprintf("%v", this.VoltconsoleAipApplication) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDefaultAccess) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoMonitorWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDefaultAccess{`, - `F5XcDefaultAccess:` + fmt.Sprintf("%v", this.F5XcDefaultAccess) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBase) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoNetworkRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBase{`, - `F5XcBase:` + fmt.Sprintf("%v", this.F5XcBase) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBilling) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoNetworkWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBilling{`, - `F5XcBilling:` + fmt.Sprintf("%v", this.F5XcBilling) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuditLogsAlerts) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxyMonitorRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlerts{`, - `F5XcAuditLogsAlerts:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlerts) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleSupportMgmtRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxyMonitorWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtRead{`, - `VoltconsoleSupportMgmtRead:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleSupportMgmtWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxyRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtWrite{`, - `VoltconsoleSupportMgmtWrite:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleSupportMgmtAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxySecurityRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtAdmin{`, - `VoltconsoleSupportMgmtAdmin:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxySecurityWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt{`, - `VoltconsoleSupportMgmtSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleClientSideDefenseRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxyWafRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseRead{`, - `VoltconsoleClientSideDefenseRead:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleClientSideDefenseWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxyWafWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseWrite{`, - `VoltconsoleClientSideDefenseWrite:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoProxyWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseAdmin{`, - `VoltconsoleClientSideDefenseAdmin:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoSecretsRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt{`, - `VoltconsoleClientSideDefenseSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseSubscriptionMgmt) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoSecretsWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseAdvancedMonitor{`, - `F5XcBotDefenseAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefenseAdvancedMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefenseAdvancedUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoUamAdminRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseAdvancedUser{`, - `F5XcBotDefenseAdvancedUser:` + fmt.Sprintf("%v", this.F5XcBotDefenseAdvancedUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoUamAdminWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseAdvancedAdmin{`, - `F5XcBotDefenseAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefenseAdvancedAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefensePremiumMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoUamRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefensePremiumMonitor{`, - `F5XcBotDefensePremiumMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefensePremiumMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefensePremiumUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoUamWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefensePremiumUser{`, - `F5XcBotDefensePremiumUser:` + fmt.Sprintf("%v", this.F5XcBotDefensePremiumUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefensePremiumAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoVirtualSitesRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefensePremiumAdmin{`, - `F5XcBotDefensePremiumAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefensePremiumAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VesIoReportRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoVirtualSitesWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoReportRead{`, - `VesIoReportRead:` + fmt.Sprintf("%v", this.VesIoReportRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VesIoReportWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoVoltShareRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoReportWrite{`, - `VesIoReportWrite:` + fmt.Sprintf("%v", this.VesIoReportWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSupportOperationsMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoVoltShareWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSupportOperationsMonitor{`, - `F5XcSupportOperationsMonitor:` + fmt.Sprintf("%v", this.F5XcSupportOperationsMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSupportOperationsUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoWebAccessRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSupportOperationsUser{`, - `F5XcSupportOperationsUser:` + fmt.Sprintf("%v", this.F5XcSupportOperationsUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VesIoLocalK8SKubeconfig) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoWebAccessWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoLocalK8SKubeconfig{`, - `VesIoLocalK8SKubeconfig:` + fmt.Sprintf("%v", this.VesIoLocalK8SKubeconfig) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_VesIoGlobalK8SKubeconfig) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoTenantOwnerRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_VesIoGlobalK8SKubeconfig{`, - `VesIoGlobalK8SKubeconfig:` + fmt.Sprintf("%v", this.VesIoGlobalK8SKubeconfig) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcChildManagementAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoTenantOwnerWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementAdmin{`, - `F5XcChildManagementAdmin:` + fmt.Sprintf("%v", this.F5XcChildManagementAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcChildManagementUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoStoredObjectRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementUser{`, - `F5XcChildManagementUser:` + fmt.Sprintf("%v", this.F5XcChildManagementUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcChildManagementMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoStoredObjectWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementMonitor{`, - `F5XcChildManagementMonitor:` + fmt.Sprintf("%v", this.F5XcChildManagementMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefenseBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeBotRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseBasicMonitor{`, - `F5XcBotDefenseBasicMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefenseBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefenseBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeBotWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseBasicUser{`, - `F5XcBotDefenseBasicUser:` + fmt.Sprintf("%v", this.F5XcBotDefenseBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBotDefenseBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeBotAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseBasicAdmin{`, - `F5XcBotDefenseBasicAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefenseBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBigIpApmMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBigIpApmMonitor{`, - `F5XcBigIpApmMonitor:` + fmt.Sprintf("%v", this.F5XcBigIpApmMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBigIpApmUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeRecognizeRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBigIpApmUser{`, - `F5XcBigIpApmUser:` + fmt.Sprintf("%v", this.F5XcBigIpApmUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcBigIpApmAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeRecognizeWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcBigIpApmAdmin{`, - `F5XcBigIpApmAdmin:` + fmt.Sprintf("%v", this.F5XcBigIpApmAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcMobileIntegratorMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcMobileIntegratorMonitor{`, - `F5XcMobileIntegratorMonitor:` + fmt.Sprintf("%v", this.F5XcMobileIntegratorMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcMobileIntegratorUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcMobileIntegratorUser{`, - `F5XcMobileIntegratorUser:` + fmt.Sprintf("%v", this.F5XcMobileIntegratorUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcMobileIntegratorAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAidataBfdpRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcMobileIntegratorAdmin{`, - `F5XcMobileIntegratorAdmin:` + fmt.Sprintf("%v", this.F5XcMobileIntegratorAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcFlowCollectionMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAidataBfdpWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcFlowCollectionMonitor{`, - `F5XcFlowCollectionMonitor:` + fmt.Sprintf("%v", this.F5XcFlowCollectionMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSupportOperationsAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAidataBfdpAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSupportOperationsAdmin{`, - `F5XcSupportOperationsAdmin:` + fmt.Sprintf("%v", this.F5XcSupportOperationsAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcInternal) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcInternal{`, - `F5XcInternal:` + fmt.Sprintf("%v", this.F5XcInternal) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBaseMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseMonitor{`, - `F5XcConsoleBaseMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBaseMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBaseUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseUser{`, - `F5XcConsoleBaseUser:` + fmt.Sprintf("%v", this.F5XcConsoleBaseUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBaseAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdmin{`, - `F5XcConsoleBaseAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdvancedMonitor{`, - `F5XcConsoleBaseAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdvancedMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBaseAdvancedUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleTenantMgmtRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdvancedUser{`, - `F5XcConsoleBaseAdvancedUser:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdvancedUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleTenantMgmtWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdvancedAdmin{`, - `F5XcConsoleBaseAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdvancedAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBasePremiumMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleTenantMgmtAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasePremiumMonitor{`, - `F5XcConsoleBasePremiumMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBasePremiumMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBasePremiumUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasePremiumUser{`, - `F5XcConsoleBasePremiumUser:` + fmt.Sprintf("%v", this.F5XcConsoleBasePremiumUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcConsoleBasePremiumAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleScimClientWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasePremiumAdmin{`, - `F5XcConsoleBasePremiumAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBasePremiumAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcScimMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleScimClientRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcScimMonitor{`, - `F5XcScimMonitor:` + fmt.Sprintf("%v", this.F5XcScimMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcScimUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleScimAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcScimUser{`, - `F5XcScimUser:` + fmt.Sprintf("%v", this.F5XcScimUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcScimAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcScimAdmin{`, - `F5XcScimAdmin:` + fmt.Sprintf("%v", this.F5XcScimAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSupportManagementMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSupportManagementMonitor{`, - `F5XcSupportManagementMonitor:` + fmt.Sprintf("%v", this.F5XcSupportManagementMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSupportManagementUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSupportManagementUser{`, - `F5XcSupportManagementUser:` + fmt.Sprintf("%v", this.F5XcSupportManagementUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSupportManagementAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSupportManagementAdmin{`, - `F5XcSupportManagementAdmin:` + fmt.Sprintf("%v", this.F5XcSupportManagementAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcGlobalLogReceiverMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcGlobalLogReceiverMonitor{`, - `F5XcGlobalLogReceiverMonitor:` + fmt.Sprintf("%v", this.F5XcGlobalLogReceiverMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcGlobalLogReceiverUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcGlobalLogReceiverUser{`, - `F5XcGlobalLogReceiverUser:` + fmt.Sprintf("%v", this.F5XcGlobalLogReceiverUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcGlobalLogReceiverAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleCdnRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcGlobalLogReceiverAdmin{`, - `F5XcGlobalLogReceiverAdmin:` + fmt.Sprintf("%v", this.F5XcGlobalLogReceiverAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuditLogsAlertsMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleCdnWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlertsMonitor{`, - `F5XcAuditLogsAlertsMonitor:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlertsMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuditLogsAlertsUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleCdnAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlertsUser{`, - `F5XcAuditLogsAlertsUser:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlertsUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuditLogsAlertsAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlertsAdmin{`, - `F5XcAuditLogsAlertsAdmin:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlertsAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSafeapRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessBasicMonitor{`, - `F5XcDelegatedAccessBasicMonitor:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDelegatedAccessBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSafeapWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessBasicUser{`, - `F5XcDelegatedAccessBasicUser:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSafeapAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessBasicAdmin{`, - `F5XcDelegatedAccessBasicAdmin:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcScimClient) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcScimClient{`, - `F5XcScimClient:` + fmt.Sprintf("%v", this.F5XcScimClient) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcRoutedDdosBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosBasicMonitor{`, - `F5XcRoutedDdosBasicMonitor:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcRoutedDdosBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAipRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosBasicUser{`, - `F5XcRoutedDdosBasicUser:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcRoutedDdosBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAipWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosBasicAdmin{`, - `F5XcRoutedDdosBasicAdmin:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAipAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseBasicMonitor{`, - `F5XcClientSideDefenseBasicMonitor:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcClientSideDefenseBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleAipApplication) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseBasicUser{`, - `F5XcClientSideDefenseBasicUser:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcDefaultAccess) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseBasicAdmin{`, - `F5XcClientSideDefenseBasicAdmin:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcCdnBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBase) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcCdnBasicMonitor{`, - `F5XcCdnBasicMonitor:` + fmt.Sprintf("%v", this.F5XcCdnBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcCdnBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBilling) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcCdnBasicUser{`, - `F5XcCdnBasicUser:` + fmt.Sprintf("%v", this.F5XcCdnBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcCdnBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcAuditLogsAlerts) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcCdnBasicAdmin{`, - `F5XcCdnBasicAdmin:` + fmt.Sprintf("%v", this.F5XcCdnBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSupportMgmtRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor{`, - `F5XcApplicationInfrastructureProtectionBasicMonitor:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSupportMgmtWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser{`, - `F5XcApplicationInfrastructureProtectionBasicUser:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSupportMgmtAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin{`, - `F5XcApplicationInfrastructureProtectionBasicAdmin:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcWaapBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcWaapBasicMonitor{`, - `F5XcWaapBasicMonitor:` + fmt.Sprintf("%v", this.F5XcWaapBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcWaapBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleClientSideDefenseRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcWaapBasicUser{`, - `F5XcWaapBasicUser:` + fmt.Sprintf("%v", this.F5XcWaapBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcWaapBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleClientSideDefenseWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcWaapBasicAdmin{`, - `F5XcWaapBasicAdmin:` + fmt.Sprintf("%v", this.F5XcWaapBasicAdmin) + `,`, - `}`, - }, "") - return s -} -func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_F5XcWaapAdvancedMonitor{`, - `F5XcWaapAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcWaapAdvancedMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcWaapAdvancedUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcWaapAdvancedUser{`, - `F5XcWaapAdvancedUser:` + fmt.Sprintf("%v", this.F5XcWaapAdvancedUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcWaapAdvancedAdmin{`, - `F5XcWaapAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcWaapAdvancedAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementBasicMonitor{`, - `F5XcSiteManagementBasicMonitor:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSiteManagementBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefenseAdvancedUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementBasicUser{`, - `F5XcSiteManagementBasicUser:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementBasicAdmin{`, - `F5XcSiteManagementBasicAdmin:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDnsBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefensePremiumMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDnsBasicMonitor{`, - `F5XcDnsBasicMonitor:` + fmt.Sprintf("%v", this.F5XcDnsBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDnsBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefensePremiumUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDnsBasicUser{`, - `F5XcDnsBasicUser:` + fmt.Sprintf("%v", this.F5XcDnsBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDnsBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefensePremiumAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDnsBasicAdmin{`, - `F5XcDnsBasicAdmin:` + fmt.Sprintf("%v", this.F5XcDnsBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoReportRead) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionBasicMonitor{`, - `F5XcAccountProtectionBasicMonitor:` + fmt.Sprintf("%v", this.F5XcAccountProtectionBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoReportWrite) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionBasicUser{`, - `F5XcAccountProtectionBasicUser:` + fmt.Sprintf("%v", this.F5XcAccountProtectionBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcSupportOperationsMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionBasicAdmin{`, - `F5XcAccountProtectionBasicAdmin:` + fmt.Sprintf("%v", this.F5XcAccountProtectionBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcSupportOperationsUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor{`, - `F5XcSyntheticMonitoringBasicMonitor:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoLocalK8SKubeconfig) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringBasicUser{`, - `F5XcSyntheticMonitoringBasicUser:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_VesIoGlobalK8SKubeconfig) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin{`, - `F5XcSyntheticMonitoringBasicAdmin:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcChildManagementSupportAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcChildManagementAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementSupportAdmin{`, - `F5XcChildManagementSupportAdmin:` + fmt.Sprintf("%v", this.F5XcChildManagementSupportAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcChildManagementSupportUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcChildManagementUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementSupportUser{`, - `F5XcChildManagementSupportUser:` + fmt.Sprintf("%v", this.F5XcChildManagementSupportUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcChildManagementSupportMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcChildManagementMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementSupportMonitor{`, - `F5XcChildManagementSupportMonitor:` + fmt.Sprintf("%v", this.F5XcChildManagementSupportMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefenseBasicMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDataIntelligenceMonitor{`, - `F5XcDataIntelligenceMonitor:` + fmt.Sprintf("%v", this.F5XcDataIntelligenceMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDataIntelligenceUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefenseBasicUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDataIntelligenceUser{`, - `F5XcDataIntelligenceUser:` + fmt.Sprintf("%v", this.F5XcDataIntelligenceUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBotDefenseBasicAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcDataIntelligenceAdmin{`, - `F5XcDataIntelligenceAdmin:` + fmt.Sprintf("%v", this.F5XcDataIntelligenceAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBigIpApmMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshBasicMonitor{`, - `F5XcSecuremeshBasicMonitor:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSecuremeshBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBigIpApmUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshBasicUser{`, - `F5XcSecuremeshBasicUser:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcBigIpApmAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshBasicAdmin{`, - `F5XcSecuremeshBasicAdmin:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcMobileIntegratorMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshAdvancedMonitor{`, - `F5XcSecuremeshAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvancedMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcMobileIntegratorUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshAdvancedUser{`, - `F5XcSecuremeshAdvancedUser:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvancedUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcMobileIntegratorAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshAdvancedAdmin{`, - `F5XcSecuremeshAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvancedAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAppstackBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcFlowCollectionMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackBasicMonitor{`, - `F5XcAppstackBasicMonitor:` + fmt.Sprintf("%v", this.F5XcAppstackBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAppstackBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcSupportOperationsAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackBasicUser{`, - `F5XcAppstackBasicUser:` + fmt.Sprintf("%v", this.F5XcAppstackBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAppstackBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcInternal) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackBasicAdmin{`, - `F5XcAppstackBasicAdmin:` + fmt.Sprintf("%v", this.F5XcAppstackBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBaseMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor{`, - `F5XcNginxMgmtSuiteBasicMonitor:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBaseUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteBasicUser{`, - `F5XcNginxMgmtSuiteBasicUser:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBaseAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin{`, - `F5XcNginxMgmtSuiteBasicAdmin:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor{`, - `F5XcApplicationTrafficInsightBasicMonitor:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightBasicUser{`, - `F5XcApplicationTrafficInsightBasicUser:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasicUser) + `,`, - `}`, - }, "") - return s +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin{`, - `F5XcApplicationTrafficInsightBasicAdmin:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBasePremiumMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor{`, - `F5XcAuthenticationIntelligenceBasicMonitor:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceBasicMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBasePremiumUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser{`, - `F5XcAuthenticationIntelligenceBasicUser:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceBasicUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcConsoleBasePremiumAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin{`, - `F5XcAuthenticationIntelligenceBasicAdmin:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceBasicAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxOneMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcScimMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneMonitor{`, - `F5XcNginxOneMonitor:` + fmt.Sprintf("%v", this.F5XcNginxOneMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxOneUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcScimUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneUser{`, - `F5XcNginxOneUser:` + fmt.Sprintf("%v", this.F5XcNginxOneUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxOneAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcScimAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneAdmin{`, - `F5XcNginxOneAdmin:` + fmt.Sprintf("%v", this.F5XcNginxOneAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxMgmtSuiteApplication) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcSupportManagementMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteApplication{`, - `F5XcNginxMgmtSuiteApplication:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteApplication) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcSupportManagementUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication{`, - `F5XcApplicationInfrastructureProtectionApplication:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionApplication) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxOneApplicationRead) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcSupportManagementAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneApplicationRead{`, - `F5XcNginxOneApplicationRead:` + fmt.Sprintf("%v", this.F5XcNginxOneApplicationRead) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcGlobalLogReceiverMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneApplicationWrite{`, - `F5XcNginxOneApplicationWrite:` + fmt.Sprintf("%v", this.F5XcNginxOneApplicationWrite) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcClearviewMonitor) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcGlobalLogReceiverUser) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcClearviewMonitor{`, - `F5XcClearviewMonitor:` + fmt.Sprintf("%v", this.F5XcClearviewMonitor) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcClearviewUser) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcGlobalLogReceiverAdmin) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcClearviewUser{`, - `F5XcClearviewUser:` + fmt.Sprintf("%v", this.F5XcClearviewUser) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func (this *APIGroupChoice_F5XcClearviewAdmin) String() string { - if this == nil { - return "nil" +func (m *APIGroupChoice_F5XcAuditLogsAlertsMonitor) Size() (n int) { + if m == nil { + return 0 } - s := strings.Join([]string{`&APIGroupChoice_F5XcClearviewAdmin{`, - `F5XcClearviewAdmin:` + fmt.Sprintf("%v", this.F5XcClearviewAdmin) + `,`, - `}`, - }, "") - return s + var l int + _ = l + n += 3 + return n } -func valueToStringAllApiGroups(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" +func (m *APIGroupChoice_F5XcAuditLogsAlertsUser) Size() (n int) { + if m == nil { + return 0 } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) + var l int + _ = l + n += 3 + return n } -func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowAllApiGroups +func (m *APIGroupChoice_F5XcAuditLogsAlertsAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDelegatedAccessBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcScimClient) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleAdvancedMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleAdvancedUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcConsoleAdvancedAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcRoutedDdosBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcRoutedDdosBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcRoutedDdosBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClientSideDefenseBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcCdnBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcCdnBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcCdnBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapAdvancedMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapAdvancedUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapAdvancedAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSiteManagementBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSiteManagementBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSiteManagementBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDnsBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDnsBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDnsBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAccountProtectionBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAccountProtectionBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAccountProtectionBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcChildManagementSupportAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcChildManagementSupportUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcChildManagementSupportMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDataIntelligenceMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDataIntelligenceUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDataIntelligenceAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshAdvancedUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAppstackBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAppstackBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAppstackBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcNginxOneApplicationRead) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcNginxOneApplicationWrite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClearviewMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClearviewUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClearviewAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSecuremeshStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAppstackStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAppstackStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAppstackStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWaapStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSiteManagementStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSiteManagementStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSiteManagementStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcRoutedDdosStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcRoutedDdosStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcRoutedDdosStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDnsStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDnsStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDnsStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClientSideDefenseStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClientSideDefenseStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcClientSideDefenseStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAccountProtectionStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAccountProtectionStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcAccountProtectionStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDelegatedAccessStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDelegatedAccessStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcDelegatedAccessStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcBotDefenseStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcBotDefenseStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcBotDefenseStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWebAppScanningStandardMonitor) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWebAppScanningStandardUser) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *APIGroupChoice_F5XcWebAppScanningStandardAdmin) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} + +func sovAllApiGroups(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozAllApiGroups(x uint64) (n int) { + return sovAllApiGroups(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *APIGroupChoice) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice{`, + `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_InfrastructureDemoAccessRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_InfrastructureDemoAccessRead{`, + `InfrastructureDemoAccessRead:` + fmt.Sprintf("%v", this.InfrastructureDemoAccessRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoBillingRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoBillingRead{`, + `VesIoBillingRead:` + fmt.Sprintf("%v", this.VesIoBillingRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoBillingWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoBillingWrite{`, + `VesIoBillingWrite:` + fmt.Sprintf("%v", this.VesIoBillingWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoGeneralRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoGeneralRead{`, + `VesIoGeneralRead:` + fmt.Sprintf("%v", this.VesIoGeneralRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoGeneralWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoGeneralWrite{`, + `VesIoGeneralWrite:` + fmt.Sprintf("%v", this.VesIoGeneralWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoIaasCaasRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoIaasCaasRead{`, + `VesIoIaasCaasRead:` + fmt.Sprintf("%v", this.VesIoIaasCaasRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoIaasCaasWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoIaasCaasWrite{`, + `VesIoIaasCaasWrite:` + fmt.Sprintf("%v", this.VesIoIaasCaasWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoInfraMonitorRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoInfraMonitorRead{`, + `VesIoInfraMonitorRead:` + fmt.Sprintf("%v", this.VesIoInfraMonitorRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoInfraMonitorWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoInfraMonitorWrite{`, + `VesIoInfraMonitorWrite:` + fmt.Sprintf("%v", this.VesIoInfraMonitorWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoInfrastructureRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoInfrastructureRead{`, + `VesIoInfrastructureRead:` + fmt.Sprintf("%v", this.VesIoInfrastructureRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoInfrastructureWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoInfrastructureWrite{`, + `VesIoInfrastructureWrite:` + fmt.Sprintf("%v", this.VesIoInfrastructureWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoInternalRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoInternalRead{`, + `VesIoInternalRead:` + fmt.Sprintf("%v", this.VesIoInternalRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoInternalWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoInternalWrite{`, + `VesIoInternalWrite:` + fmt.Sprintf("%v", this.VesIoInternalWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoK8SRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoK8SRead{`, + `VesIoK8SRead:` + fmt.Sprintf("%v", this.VesIoK8SRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoK8SWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoK8SWrite{`, + `VesIoK8SWrite:` + fmt.Sprintf("%v", this.VesIoK8SWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoLabelsRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoLabelsRead{`, + `VesIoLabelsRead:` + fmt.Sprintf("%v", this.VesIoLabelsRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoLabelsWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoLabelsWrite{`, + `VesIoLabelsWrite:` + fmt.Sprintf("%v", this.VesIoLabelsWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoLocalK8SWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoLocalK8SWrite{`, + `VesIoLocalK8SWrite:` + fmt.Sprintf("%v", this.VesIoLocalK8SWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoMonitorRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoMonitorRead{`, + `VesIoMonitorRead:` + fmt.Sprintf("%v", this.VesIoMonitorRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoMonitorWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoMonitorWrite{`, + `VesIoMonitorWrite:` + fmt.Sprintf("%v", this.VesIoMonitorWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoNetworkRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoNetworkRead{`, + `VesIoNetworkRead:` + fmt.Sprintf("%v", this.VesIoNetworkRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoNetworkWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoNetworkWrite{`, + `VesIoNetworkWrite:` + fmt.Sprintf("%v", this.VesIoNetworkWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxyMonitorRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxyMonitorRead{`, + `VesIoProxyMonitorRead:` + fmt.Sprintf("%v", this.VesIoProxyMonitorRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxyMonitorWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxyMonitorWrite{`, + `VesIoProxyMonitorWrite:` + fmt.Sprintf("%v", this.VesIoProxyMonitorWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxyRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxyRead{`, + `VesIoProxyRead:` + fmt.Sprintf("%v", this.VesIoProxyRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxySecurityRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxySecurityRead{`, + `VesIoProxySecurityRead:` + fmt.Sprintf("%v", this.VesIoProxySecurityRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxySecurityWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxySecurityWrite{`, + `VesIoProxySecurityWrite:` + fmt.Sprintf("%v", this.VesIoProxySecurityWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxyWafRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxyWafRead{`, + `VesIoProxyWafRead:` + fmt.Sprintf("%v", this.VesIoProxyWafRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxyWafWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxyWafWrite{`, + `VesIoProxyWafWrite:` + fmt.Sprintf("%v", this.VesIoProxyWafWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoProxyWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoProxyWrite{`, + `VesIoProxyWrite:` + fmt.Sprintf("%v", this.VesIoProxyWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoSecretsRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoSecretsRead{`, + `VesIoSecretsRead:` + fmt.Sprintf("%v", this.VesIoSecretsRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoSecretsWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoSecretsWrite{`, + `VesIoSecretsWrite:` + fmt.Sprintf("%v", this.VesIoSecretsWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoUamAdminRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoUamAdminRead{`, + `VesIoUamAdminRead:` + fmt.Sprintf("%v", this.VesIoUamAdminRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoUamAdminWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoUamAdminWrite{`, + `VesIoUamAdminWrite:` + fmt.Sprintf("%v", this.VesIoUamAdminWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoUamRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoUamRead{`, + `VesIoUamRead:` + fmt.Sprintf("%v", this.VesIoUamRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoUamWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoUamWrite{`, + `VesIoUamWrite:` + fmt.Sprintf("%v", this.VesIoUamWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoVirtualSitesRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoVirtualSitesRead{`, + `VesIoVirtualSitesRead:` + fmt.Sprintf("%v", this.VesIoVirtualSitesRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoVirtualSitesWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoVirtualSitesWrite{`, + `VesIoVirtualSitesWrite:` + fmt.Sprintf("%v", this.VesIoVirtualSitesWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoVoltShareRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoVoltShareRead{`, + `VesIoVoltShareRead:` + fmt.Sprintf("%v", this.VesIoVoltShareRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoVoltShareWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoVoltShareWrite{`, + `VesIoVoltShareWrite:` + fmt.Sprintf("%v", this.VesIoVoltShareWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoWebAccessRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoWebAccessRead{`, + `VesIoWebAccessRead:` + fmt.Sprintf("%v", this.VesIoWebAccessRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoWebAccessWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoWebAccessWrite{`, + `VesIoWebAccessWrite:` + fmt.Sprintf("%v", this.VesIoWebAccessWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoTenantOwnerRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoTenantOwnerRead{`, + `VesIoTenantOwnerRead:` + fmt.Sprintf("%v", this.VesIoTenantOwnerRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoTenantOwnerWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoTenantOwnerWrite{`, + `VesIoTenantOwnerWrite:` + fmt.Sprintf("%v", this.VesIoTenantOwnerWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoStoredObjectRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoStoredObjectRead{`, + `VesIoStoredObjectRead:` + fmt.Sprintf("%v", this.VesIoStoredObjectRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoStoredObjectWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoStoredObjectWrite{`, + `VesIoStoredObjectWrite:` + fmt.Sprintf("%v", this.VesIoStoredObjectWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeBotRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotRead{`, + `VoltconsoleShapeBotRead:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeBotWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotWrite{`, + `VoltconsoleShapeBotWrite:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeBotAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotAdmin{`, + `VoltconsoleShapeBotAdmin:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt{`, + `VoltconsoleShapeBotSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleShapeBotSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeRecognizeRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeRead{`, + `VoltconsoleShapeRecognizeRead:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeRecognizeWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeWrite{`, + `VoltconsoleShapeRecognizeWrite:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeRecognizeAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeAdmin{`, + `VoltconsoleShapeRecognizeAdmin:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt{`, + `VoltconsoleShapeRecognizeSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleShapeRecognizeSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAidataBfdpRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpRead{`, + `VoltconsoleAidataBfdpRead:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAidataBfdpWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpWrite{`, + `VoltconsoleAidataBfdpWrite:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAidataBfdpAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpAdmin{`, + `VoltconsoleAidataBfdpAdmin:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt{`, + `VoltconsoleAidataBfdpSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleAidataBfdpSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorRead{`, + `VoltconsoleSyntheticMonitorRead:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorWrite{`, + `VoltconsoleSyntheticMonitorWrite:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorAdmin{`, + `VoltconsoleSyntheticMonitorAdmin:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt{`, + `VoltconsoleSyntheticMonitorSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleSyntheticMonitorSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleTenantMgmtRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtRead{`, + `VoltconsoleTenantMgmtRead:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleTenantMgmtWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtWrite{`, + `VoltconsoleTenantMgmtWrite:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleTenantMgmtAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtAdmin{`, + `VoltconsoleTenantMgmtAdmin:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt{`, + `VoltconsoleTenantMgmtSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleTenantMgmtSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleScimClientWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimClientWrite{`, + `VoltconsoleScimClientWrite:` + fmt.Sprintf("%v", this.VoltconsoleScimClientWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleScimClientRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimClientRead{`, + `VoltconsoleScimClientRead:` + fmt.Sprintf("%v", this.VoltconsoleScimClientRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleScimAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimAdmin{`, + `VoltconsoleScimAdmin:` + fmt.Sprintf("%v", this.VoltconsoleScimAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleScimSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleScimSubscriptionMgmt{`, + `VoltconsoleScimSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleScimSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteRead{`, + `VoltconsoleNginxMgmtSuiteRead:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite{`, + `VoltconsoleNginxMgmtSuiteWrite:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin{`, + `VoltconsoleNginxMgmtSuiteAdmin:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt{`, + `VoltconsoleNginxMgmtSuiteSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication{`, + `VoltconsoleNginxMgmtSuiteApplication:` + fmt.Sprintf("%v", this.VoltconsoleNginxMgmtSuiteApplication) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleCdnRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnRead{`, + `VoltconsoleCdnRead:` + fmt.Sprintf("%v", this.VoltconsoleCdnRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleCdnWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnWrite{`, + `VoltconsoleCdnWrite:` + fmt.Sprintf("%v", this.VoltconsoleCdnWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleCdnAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnAdmin{`, + `VoltconsoleCdnAdmin:` + fmt.Sprintf("%v", this.VoltconsoleCdnAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleCdnSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleCdnSubscriptionMgmt{`, + `VoltconsoleCdnSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleCdnSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSafeapRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapRead{`, + `VoltconsoleSafeapRead:` + fmt.Sprintf("%v", this.VoltconsoleSafeapRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSafeapWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapWrite{`, + `VoltconsoleSafeapWrite:` + fmt.Sprintf("%v", this.VoltconsoleSafeapWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSafeapAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapAdmin{`, + `VoltconsoleSafeapAdmin:` + fmt.Sprintf("%v", this.VoltconsoleSafeapAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt{`, + `VoltconsoleSafeapSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleSafeapSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAipSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipSubscriptionMgmt{`, + `VoltconsoleAipSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleAipSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAipRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipRead{`, + `VoltconsoleAipRead:` + fmt.Sprintf("%v", this.VoltconsoleAipRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAipWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipWrite{`, + `VoltconsoleAipWrite:` + fmt.Sprintf("%v", this.VoltconsoleAipWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAipAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipAdmin{`, + `VoltconsoleAipAdmin:` + fmt.Sprintf("%v", this.VoltconsoleAipAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleAipApplication) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleAipApplication{`, + `VoltconsoleAipApplication:` + fmt.Sprintf("%v", this.VoltconsoleAipApplication) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDefaultAccess) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDefaultAccess{`, + `F5XcDefaultAccess:` + fmt.Sprintf("%v", this.F5XcDefaultAccess) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBase) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBase{`, + `F5XcBase:` + fmt.Sprintf("%v", this.F5XcBase) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBilling) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBilling{`, + `F5XcBilling:` + fmt.Sprintf("%v", this.F5XcBilling) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuditLogsAlerts) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlerts{`, + `F5XcAuditLogsAlerts:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlerts) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSupportMgmtRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtRead{`, + `VoltconsoleSupportMgmtRead:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSupportMgmtWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtWrite{`, + `VoltconsoleSupportMgmtWrite:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSupportMgmtAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtAdmin{`, + `VoltconsoleSupportMgmtAdmin:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt{`, + `VoltconsoleSupportMgmtSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleSupportMgmtSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleClientSideDefenseRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseRead{`, + `VoltconsoleClientSideDefenseRead:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleClientSideDefenseWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseWrite{`, + `VoltconsoleClientSideDefenseWrite:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleClientSideDefenseAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseAdmin{`, + `VoltconsoleClientSideDefenseAdmin:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt{`, + `VoltconsoleClientSideDefenseSubscriptionMgmt:` + fmt.Sprintf("%v", this.VoltconsoleClientSideDefenseSubscriptionMgmt) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseAdvancedMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseAdvancedMonitor{`, + `F5XcBotDefenseAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefenseAdvancedMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseAdvancedUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseAdvancedUser{`, + `F5XcBotDefenseAdvancedUser:` + fmt.Sprintf("%v", this.F5XcBotDefenseAdvancedUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseAdvancedAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseAdvancedAdmin{`, + `F5XcBotDefenseAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefenseAdvancedAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefensePremiumMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefensePremiumMonitor{`, + `F5XcBotDefensePremiumMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefensePremiumMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefensePremiumUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefensePremiumUser{`, + `F5XcBotDefensePremiumUser:` + fmt.Sprintf("%v", this.F5XcBotDefensePremiumUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefensePremiumAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefensePremiumAdmin{`, + `F5XcBotDefensePremiumAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefensePremiumAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoReportRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoReportRead{`, + `VesIoReportRead:` + fmt.Sprintf("%v", this.VesIoReportRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoReportWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoReportWrite{`, + `VesIoReportWrite:` + fmt.Sprintf("%v", this.VesIoReportWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSupportOperationsMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSupportOperationsMonitor{`, + `F5XcSupportOperationsMonitor:` + fmt.Sprintf("%v", this.F5XcSupportOperationsMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSupportOperationsUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSupportOperationsUser{`, + `F5XcSupportOperationsUser:` + fmt.Sprintf("%v", this.F5XcSupportOperationsUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoLocalK8SKubeconfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoLocalK8SKubeconfig{`, + `VesIoLocalK8SKubeconfig:` + fmt.Sprintf("%v", this.VesIoLocalK8SKubeconfig) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_VesIoGlobalK8SKubeconfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_VesIoGlobalK8SKubeconfig{`, + `VesIoGlobalK8SKubeconfig:` + fmt.Sprintf("%v", this.VesIoGlobalK8SKubeconfig) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcChildManagementAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementAdmin{`, + `F5XcChildManagementAdmin:` + fmt.Sprintf("%v", this.F5XcChildManagementAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcChildManagementUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementUser{`, + `F5XcChildManagementUser:` + fmt.Sprintf("%v", this.F5XcChildManagementUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcChildManagementMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementMonitor{`, + `F5XcChildManagementMonitor:` + fmt.Sprintf("%v", this.F5XcChildManagementMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseBasicMonitor{`, + `F5XcBotDefenseBasicMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefenseBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseBasicUser{`, + `F5XcBotDefenseBasicUser:` + fmt.Sprintf("%v", this.F5XcBotDefenseBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseBasicAdmin{`, + `F5XcBotDefenseBasicAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefenseBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBigIpApmMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBigIpApmMonitor{`, + `F5XcBigIpApmMonitor:` + fmt.Sprintf("%v", this.F5XcBigIpApmMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBigIpApmUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBigIpApmUser{`, + `F5XcBigIpApmUser:` + fmt.Sprintf("%v", this.F5XcBigIpApmUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBigIpApmAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBigIpApmAdmin{`, + `F5XcBigIpApmAdmin:` + fmt.Sprintf("%v", this.F5XcBigIpApmAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcMobileIntegratorMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcMobileIntegratorMonitor{`, + `F5XcMobileIntegratorMonitor:` + fmt.Sprintf("%v", this.F5XcMobileIntegratorMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcMobileIntegratorUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcMobileIntegratorUser{`, + `F5XcMobileIntegratorUser:` + fmt.Sprintf("%v", this.F5XcMobileIntegratorUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcMobileIntegratorAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcMobileIntegratorAdmin{`, + `F5XcMobileIntegratorAdmin:` + fmt.Sprintf("%v", this.F5XcMobileIntegratorAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcFlowCollectionMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcFlowCollectionMonitor{`, + `F5XcFlowCollectionMonitor:` + fmt.Sprintf("%v", this.F5XcFlowCollectionMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSupportOperationsAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSupportOperationsAdmin{`, + `F5XcSupportOperationsAdmin:` + fmt.Sprintf("%v", this.F5XcSupportOperationsAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcInternal) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcInternal{`, + `F5XcInternal:` + fmt.Sprintf("%v", this.F5XcInternal) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBaseMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseMonitor{`, + `F5XcConsoleBaseMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBaseMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBaseUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseUser{`, + `F5XcConsoleBaseUser:` + fmt.Sprintf("%v", this.F5XcConsoleBaseUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBaseAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdmin{`, + `F5XcConsoleBaseAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBaseAdvancedMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdvancedMonitor{`, + `F5XcConsoleBaseAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdvancedMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBaseAdvancedUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdvancedUser{`, + `F5XcConsoleBaseAdvancedUser:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdvancedUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBaseAdvancedAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBaseAdvancedAdmin{`, + `F5XcConsoleBaseAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBaseAdvancedAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBasePremiumMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasePremiumMonitor{`, + `F5XcConsoleBasePremiumMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBasePremiumMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBasePremiumUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasePremiumUser{`, + `F5XcConsoleBasePremiumUser:` + fmt.Sprintf("%v", this.F5XcConsoleBasePremiumUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBasePremiumAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasePremiumAdmin{`, + `F5XcConsoleBasePremiumAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBasePremiumAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcScimMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcScimMonitor{`, + `F5XcScimMonitor:` + fmt.Sprintf("%v", this.F5XcScimMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcScimUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcScimUser{`, + `F5XcScimUser:` + fmt.Sprintf("%v", this.F5XcScimUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcScimAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcScimAdmin{`, + `F5XcScimAdmin:` + fmt.Sprintf("%v", this.F5XcScimAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSupportManagementMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSupportManagementMonitor{`, + `F5XcSupportManagementMonitor:` + fmt.Sprintf("%v", this.F5XcSupportManagementMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSupportManagementUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSupportManagementUser{`, + `F5XcSupportManagementUser:` + fmt.Sprintf("%v", this.F5XcSupportManagementUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSupportManagementAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSupportManagementAdmin{`, + `F5XcSupportManagementAdmin:` + fmt.Sprintf("%v", this.F5XcSupportManagementAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcGlobalLogReceiverMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcGlobalLogReceiverMonitor{`, + `F5XcGlobalLogReceiverMonitor:` + fmt.Sprintf("%v", this.F5XcGlobalLogReceiverMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcGlobalLogReceiverUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcGlobalLogReceiverUser{`, + `F5XcGlobalLogReceiverUser:` + fmt.Sprintf("%v", this.F5XcGlobalLogReceiverUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcGlobalLogReceiverAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcGlobalLogReceiverAdmin{`, + `F5XcGlobalLogReceiverAdmin:` + fmt.Sprintf("%v", this.F5XcGlobalLogReceiverAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuditLogsAlertsMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlertsMonitor{`, + `F5XcAuditLogsAlertsMonitor:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlertsMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuditLogsAlertsUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlertsUser{`, + `F5XcAuditLogsAlertsUser:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlertsUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuditLogsAlertsAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuditLogsAlertsAdmin{`, + `F5XcAuditLogsAlertsAdmin:` + fmt.Sprintf("%v", this.F5XcAuditLogsAlertsAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessBasicMonitor{`, + `F5XcDelegatedAccessBasicMonitor:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessBasicUser{`, + `F5XcDelegatedAccessBasicUser:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessBasicAdmin{`, + `F5XcDelegatedAccessBasicAdmin:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcScimClient) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcScimClient{`, + `F5XcScimClient:` + fmt.Sprintf("%v", this.F5XcScimClient) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasicMonitor{`, + `F5XcConsoleBasicMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasicUser{`, + `F5XcConsoleBasicUser:` + fmt.Sprintf("%v", this.F5XcConsoleBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleBasicAdmin{`, + `F5XcConsoleBasicAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleStandardMonitor{`, + `F5XcConsoleStandardMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleStandardUser{`, + `F5XcConsoleStandardUser:` + fmt.Sprintf("%v", this.F5XcConsoleStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleStandardAdmin{`, + `F5XcConsoleStandardAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleAdvancedMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleAdvancedMonitor{`, + `F5XcConsoleAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcConsoleAdvancedMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleAdvancedUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleAdvancedUser{`, + `F5XcConsoleAdvancedUser:` + fmt.Sprintf("%v", this.F5XcConsoleAdvancedUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcConsoleAdvancedAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcConsoleAdvancedAdmin{`, + `F5XcConsoleAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcConsoleAdvancedAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcRoutedDdosBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosBasicMonitor{`, + `F5XcRoutedDdosBasicMonitor:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcRoutedDdosBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosBasicUser{`, + `F5XcRoutedDdosBasicUser:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcRoutedDdosBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosBasicAdmin{`, + `F5XcRoutedDdosBasicAdmin:` + fmt.Sprintf("%v", this.F5XcRoutedDdosBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClientSideDefenseBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseBasicMonitor{`, + `F5XcClientSideDefenseBasicMonitor:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClientSideDefenseBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseBasicUser{`, + `F5XcClientSideDefenseBasicUser:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClientSideDefenseBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseBasicAdmin{`, + `F5XcClientSideDefenseBasicAdmin:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcCdnBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcCdnBasicMonitor{`, + `F5XcCdnBasicMonitor:` + fmt.Sprintf("%v", this.F5XcCdnBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcCdnBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcCdnBasicUser{`, + `F5XcCdnBasicUser:` + fmt.Sprintf("%v", this.F5XcCdnBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcCdnBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcCdnBasicAdmin{`, + `F5XcCdnBasicAdmin:` + fmt.Sprintf("%v", this.F5XcCdnBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor{`, + `F5XcApplicationInfrastructureProtectionBasicMonitor:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser{`, + `F5XcApplicationInfrastructureProtectionBasicUser:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin{`, + `F5XcApplicationInfrastructureProtectionBasicAdmin:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapBasicMonitor{`, + `F5XcWaapBasicMonitor:` + fmt.Sprintf("%v", this.F5XcWaapBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapBasicUser{`, + `F5XcWaapBasicUser:` + fmt.Sprintf("%v", this.F5XcWaapBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapBasicAdmin{`, + `F5XcWaapBasicAdmin:` + fmt.Sprintf("%v", this.F5XcWaapBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapAdvancedMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapAdvancedMonitor{`, + `F5XcWaapAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcWaapAdvancedMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapAdvancedUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapAdvancedUser{`, + `F5XcWaapAdvancedUser:` + fmt.Sprintf("%v", this.F5XcWaapAdvancedUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapAdvancedAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapAdvancedAdmin{`, + `F5XcWaapAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcWaapAdvancedAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSiteManagementBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementBasicMonitor{`, + `F5XcSiteManagementBasicMonitor:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSiteManagementBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementBasicUser{`, + `F5XcSiteManagementBasicUser:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSiteManagementBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementBasicAdmin{`, + `F5XcSiteManagementBasicAdmin:` + fmt.Sprintf("%v", this.F5XcSiteManagementBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDnsBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDnsBasicMonitor{`, + `F5XcDnsBasicMonitor:` + fmt.Sprintf("%v", this.F5XcDnsBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDnsBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDnsBasicUser{`, + `F5XcDnsBasicUser:` + fmt.Sprintf("%v", this.F5XcDnsBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDnsBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDnsBasicAdmin{`, + `F5XcDnsBasicAdmin:` + fmt.Sprintf("%v", this.F5XcDnsBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionBasicMonitor{`, + `F5XcAccountProtectionBasicMonitor:` + fmt.Sprintf("%v", this.F5XcAccountProtectionBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionBasicUser{`, + `F5XcAccountProtectionBasicUser:` + fmt.Sprintf("%v", this.F5XcAccountProtectionBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionBasicAdmin{`, + `F5XcAccountProtectionBasicAdmin:` + fmt.Sprintf("%v", this.F5XcAccountProtectionBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor{`, + `F5XcSyntheticMonitoringBasicMonitor:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringBasicUser{`, + `F5XcSyntheticMonitoringBasicUser:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin{`, + `F5XcSyntheticMonitoringBasicAdmin:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcChildManagementSupportAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementSupportAdmin{`, + `F5XcChildManagementSupportAdmin:` + fmt.Sprintf("%v", this.F5XcChildManagementSupportAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcChildManagementSupportUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementSupportUser{`, + `F5XcChildManagementSupportUser:` + fmt.Sprintf("%v", this.F5XcChildManagementSupportUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcChildManagementSupportMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcChildManagementSupportMonitor{`, + `F5XcChildManagementSupportMonitor:` + fmt.Sprintf("%v", this.F5XcChildManagementSupportMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDataIntelligenceMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDataIntelligenceMonitor{`, + `F5XcDataIntelligenceMonitor:` + fmt.Sprintf("%v", this.F5XcDataIntelligenceMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDataIntelligenceUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDataIntelligenceUser{`, + `F5XcDataIntelligenceUser:` + fmt.Sprintf("%v", this.F5XcDataIntelligenceUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDataIntelligenceAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDataIntelligenceAdmin{`, + `F5XcDataIntelligenceAdmin:` + fmt.Sprintf("%v", this.F5XcDataIntelligenceAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshBasicMonitor{`, + `F5XcSecuremeshBasicMonitor:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshBasicUser{`, + `F5XcSecuremeshBasicUser:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshBasicAdmin{`, + `F5XcSecuremeshBasicAdmin:` + fmt.Sprintf("%v", this.F5XcSecuremeshBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshAdvancedMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshAdvancedMonitor{`, + `F5XcSecuremeshAdvancedMonitor:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvancedMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshAdvancedUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshAdvancedUser{`, + `F5XcSecuremeshAdvancedUser:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvancedUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshAdvancedAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshAdvancedAdmin{`, + `F5XcSecuremeshAdvancedAdmin:` + fmt.Sprintf("%v", this.F5XcSecuremeshAdvancedAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAppstackBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackBasicMonitor{`, + `F5XcAppstackBasicMonitor:` + fmt.Sprintf("%v", this.F5XcAppstackBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAppstackBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackBasicUser{`, + `F5XcAppstackBasicUser:` + fmt.Sprintf("%v", this.F5XcAppstackBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAppstackBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackBasicAdmin{`, + `F5XcAppstackBasicAdmin:` + fmt.Sprintf("%v", this.F5XcAppstackBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor{`, + `F5XcNginxMgmtSuiteBasicMonitor:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteBasicUser{`, + `F5XcNginxMgmtSuiteBasicUser:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin{`, + `F5XcNginxMgmtSuiteBasicAdmin:` + fmt.Sprintf("%v", this.F5XcNginxMgmtSuiteBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor{`, + `F5XcApplicationTrafficInsightBasicMonitor:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightBasicUser{`, + `F5XcApplicationTrafficInsightBasicUser:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin{`, + `F5XcApplicationTrafficInsightBasicAdmin:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor{`, + `F5XcAuthenticationIntelligenceBasicMonitor:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceBasicMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser{`, + `F5XcAuthenticationIntelligenceBasicUser:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceBasicUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin{`, + `F5XcAuthenticationIntelligenceBasicAdmin:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceBasicAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication{`, + `F5XcApplicationInfrastructureProtectionApplication:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionApplication) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcNginxOneApplicationRead) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneApplicationRead{`, + `F5XcNginxOneApplicationRead:` + fmt.Sprintf("%v", this.F5XcNginxOneApplicationRead) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcNginxOneApplicationWrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcNginxOneApplicationWrite{`, + `F5XcNginxOneApplicationWrite:` + fmt.Sprintf("%v", this.F5XcNginxOneApplicationWrite) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClearviewMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClearviewMonitor{`, + `F5XcClearviewMonitor:` + fmt.Sprintf("%v", this.F5XcClearviewMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClearviewUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClearviewUser{`, + `F5XcClearviewUser:` + fmt.Sprintf("%v", this.F5XcClearviewUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClearviewAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClearviewAdmin{`, + `F5XcClearviewAdmin:` + fmt.Sprintf("%v", this.F5XcClearviewAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshStandardMonitor{`, + `F5XcSecuremeshStandardMonitor:` + fmt.Sprintf("%v", this.F5XcSecuremeshStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshStandardUser{`, + `F5XcSecuremeshStandardUser:` + fmt.Sprintf("%v", this.F5XcSecuremeshStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSecuremeshStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSecuremeshStandardAdmin{`, + `F5XcSecuremeshStandardAdmin:` + fmt.Sprintf("%v", this.F5XcSecuremeshStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAppstackStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackStandardMonitor{`, + `F5XcAppstackStandardMonitor:` + fmt.Sprintf("%v", this.F5XcAppstackStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAppstackStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackStandardUser{`, + `F5XcAppstackStandardUser:` + fmt.Sprintf("%v", this.F5XcAppstackStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAppstackStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAppstackStandardAdmin{`, + `F5XcAppstackStandardAdmin:` + fmt.Sprintf("%v", this.F5XcAppstackStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapStandardMonitor{`, + `F5XcWaapStandardMonitor:` + fmt.Sprintf("%v", this.F5XcWaapStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapStandardUser{`, + `F5XcWaapStandardUser:` + fmt.Sprintf("%v", this.F5XcWaapStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWaapStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWaapStandardAdmin{`, + `F5XcWaapStandardAdmin:` + fmt.Sprintf("%v", this.F5XcWaapStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSiteManagementStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementStandardMonitor{`, + `F5XcSiteManagementStandardMonitor:` + fmt.Sprintf("%v", this.F5XcSiteManagementStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSiteManagementStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementStandardUser{`, + `F5XcSiteManagementStandardUser:` + fmt.Sprintf("%v", this.F5XcSiteManagementStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSiteManagementStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSiteManagementStandardAdmin{`, + `F5XcSiteManagementStandardAdmin:` + fmt.Sprintf("%v", this.F5XcSiteManagementStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcRoutedDdosStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosStandardMonitor{`, + `F5XcRoutedDdosStandardMonitor:` + fmt.Sprintf("%v", this.F5XcRoutedDdosStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcRoutedDdosStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosStandardUser{`, + `F5XcRoutedDdosStandardUser:` + fmt.Sprintf("%v", this.F5XcRoutedDdosStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcRoutedDdosStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcRoutedDdosStandardAdmin{`, + `F5XcRoutedDdosStandardAdmin:` + fmt.Sprintf("%v", this.F5XcRoutedDdosStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDnsStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDnsStandardMonitor{`, + `F5XcDnsStandardMonitor:` + fmt.Sprintf("%v", this.F5XcDnsStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDnsStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDnsStandardUser{`, + `F5XcDnsStandardUser:` + fmt.Sprintf("%v", this.F5XcDnsStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDnsStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDnsStandardAdmin{`, + `F5XcDnsStandardAdmin:` + fmt.Sprintf("%v", this.F5XcDnsStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor{`, + `F5XcApplicationTrafficInsightStandardMonitor:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightStandardUser{`, + `F5XcApplicationTrafficInsightStandardUser:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin{`, + `F5XcApplicationTrafficInsightStandardAdmin:` + fmt.Sprintf("%v", this.F5XcApplicationTrafficInsightStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor{`, + `F5XcContentDeliveryNetworkStandardMonitor:` + fmt.Sprintf("%v", this.F5XcContentDeliveryNetworkStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcContentDeliveryNetworkStandardUser{`, + `F5XcContentDeliveryNetworkStandardUser:` + fmt.Sprintf("%v", this.F5XcContentDeliveryNetworkStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin{`, + `F5XcContentDeliveryNetworkStandardAdmin:` + fmt.Sprintf("%v", this.F5XcContentDeliveryNetworkStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClientSideDefenseStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseStandardMonitor{`, + `F5XcClientSideDefenseStandardMonitor:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClientSideDefenseStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseStandardUser{`, + `F5XcClientSideDefenseStandardUser:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcClientSideDefenseStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcClientSideDefenseStandardAdmin{`, + `F5XcClientSideDefenseStandardAdmin:` + fmt.Sprintf("%v", this.F5XcClientSideDefenseStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor{`, + `F5XcSyntheticMonitoringStandardMonitor:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringStandardUser{`, + `F5XcSyntheticMonitoringStandardUser:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin{`, + `F5XcSyntheticMonitoringStandardAdmin:` + fmt.Sprintf("%v", this.F5XcSyntheticMonitoringStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor{`, + `F5XcAuthenticationIntelligenceStandardMonitor:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser{`, + `F5XcAuthenticationIntelligenceStandardUser:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin{`, + `F5XcAuthenticationIntelligenceStandardAdmin:` + fmt.Sprintf("%v", this.F5XcAuthenticationIntelligenceStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionStandardMonitor{`, + `F5XcAccountProtectionStandardMonitor:` + fmt.Sprintf("%v", this.F5XcAccountProtectionStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionStandardUser{`, + `F5XcAccountProtectionStandardUser:` + fmt.Sprintf("%v", this.F5XcAccountProtectionStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcAccountProtectionStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcAccountProtectionStandardAdmin{`, + `F5XcAccountProtectionStandardAdmin:` + fmt.Sprintf("%v", this.F5XcAccountProtectionStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor{`, + `F5XcApplicationInfrastructureProtectionStandardMonitor:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser{`, + `F5XcApplicationInfrastructureProtectionStandardUser:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin{`, + `F5XcApplicationInfrastructureProtectionStandardAdmin:` + fmt.Sprintf("%v", this.F5XcApplicationInfrastructureProtectionStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessStandardMonitor{`, + `F5XcDelegatedAccessStandardMonitor:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessStandardUser{`, + `F5XcDelegatedAccessStandardUser:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcDelegatedAccessStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcDelegatedAccessStandardAdmin{`, + `F5XcDelegatedAccessStandardAdmin:` + fmt.Sprintf("%v", this.F5XcDelegatedAccessStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseStandardMonitor{`, + `F5XcBotDefenseStandardMonitor:` + fmt.Sprintf("%v", this.F5XcBotDefenseStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseStandardUser{`, + `F5XcBotDefenseStandardUser:` + fmt.Sprintf("%v", this.F5XcBotDefenseStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcBotDefenseStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcBotDefenseStandardAdmin{`, + `F5XcBotDefenseStandardAdmin:` + fmt.Sprintf("%v", this.F5XcBotDefenseStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardMonitor) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWebAppScanningStandardMonitor{`, + `F5XcWebAppScanningStandardMonitor:` + fmt.Sprintf("%v", this.F5XcWebAppScanningStandardMonitor) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardUser) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWebAppScanningStandardUser{`, + `F5XcWebAppScanningStandardUser:` + fmt.Sprintf("%v", this.F5XcWebAppScanningStandardUser) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupChoice_F5XcWebAppScanningStandardAdmin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupChoice_F5XcWebAppScanningStandardAdmin{`, + `F5XcWebAppScanningStandardAdmin:` + fmt.Sprintf("%v", this.F5XcWebAppScanningStandardAdmin) + `,`, + `}`, + }, "") + return s +} +func valueToStringAllApiGroups(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIGroupChoice: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIGroupChoice: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field InfrastructureDemoAccessRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_InfrastructureDemoAccessRead{b} + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoBillingRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoBillingRead{b} + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoBillingWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoBillingWrite{b} + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoGeneralRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoGeneralRead{b} + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoGeneralWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoGeneralWrite{b} + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoIaasCaasRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoIaasCaasRead{b} + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoIaasCaasWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoIaasCaasWrite{b} + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfraMonitorRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoInfraMonitorRead{b} + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfraMonitorWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoInfraMonitorWrite{b} + case 10: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfrastructureRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoInfrastructureRead{b} + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfrastructureWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoInfrastructureWrite{b} + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoInternalRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoInternalRead{b} + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoInternalWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoInternalWrite{b} + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoK8SRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoK8SRead{b} + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoK8SWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoK8SWrite{b} + case 16: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoLabelsRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoLabelsRead{b} + case 17: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoLabelsWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoLabelsWrite{b} + case 18: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoLocalK8SWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoLocalK8SWrite{b} + case 19: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoMonitorRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoMonitorRead{b} + case 20: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoMonitorWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoMonitorWrite{b} + case 21: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoNetworkRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoNetworkRead{b} + case 22: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoNetworkWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoNetworkWrite{b} + case 23: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyMonitorRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxyMonitorRead{b} + case 24: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyMonitorWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxyMonitorWrite{b} + case 25: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxyRead{b} + case 26: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxySecurityRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxySecurityRead{b} + case 27: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxySecurityWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxySecurityWrite{b} + case 28: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyWafRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxyWafRead{b} + case 29: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyWafWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxyWafWrite{b} + case 30: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoProxyWrite{b} + case 31: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoSecretsRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoSecretsRead{b} + case 32: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoSecretsWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoSecretsWrite{b} + case 35: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamAdminRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoUamAdminRead{b} + case 36: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamAdminWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoUamAdminWrite{b} + case 37: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoUamRead{b} + case 38: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoUamWrite{b} + case 39: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoVirtualSitesRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoVirtualSitesRead{b} + case 40: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoVirtualSitesWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoVirtualSitesWrite{b} + case 41: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoVoltShareRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoVoltShareRead{b} + case 42: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoVoltShareWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoVoltShareWrite{b} + case 43: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoWebAccessRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoWebAccessRead{b} + case 44: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoWebAccessWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoWebAccessWrite{b} + case 45: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoTenantOwnerRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoTenantOwnerRead{b} + case 46: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoTenantOwnerWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoTenantOwnerWrite{b} + case 47: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoStoredObjectRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoStoredObjectRead{b} + case 48: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VesIoStoredObjectWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - if iNdEx >= l { - return io.ErrUnexpectedEOF + b := bool(v != 0) + m.Choice = &APIGroupChoice_VesIoStoredObjectWrite{b} + case 49: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotRead", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIGroupChoice: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIGroupChoice: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleShapeBotRead{b} + case 50: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field InfrastructureDemoAccessRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18855,10 +24395,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_InfrastructureDemoAccessRead{b} - case 2: + m.Choice = &APIGroupChoice_VoltconsoleShapeBotWrite{b} + case 51: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoBillingRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18876,10 +24416,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoBillingRead{b} - case 3: + m.Choice = &APIGroupChoice_VoltconsoleShapeBotAdmin{b} + case 52: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoBillingWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18897,10 +24437,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoBillingWrite{b} - case 4: + m.Choice = &APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt{b} + case 53: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoGeneralRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18918,10 +24458,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoGeneralRead{b} - case 5: + m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeRead{b} + case 54: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoGeneralWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18939,10 +24479,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoGeneralWrite{b} - case 6: + m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeWrite{b} + case 55: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoIaasCaasRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18960,10 +24500,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoIaasCaasRead{b} - case 7: + m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeAdmin{b} + case 56: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoIaasCaasWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -18981,10 +24521,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoIaasCaasWrite{b} - case 8: + m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt{b} + case 57: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfraMonitorRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19002,10 +24542,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoInfraMonitorRead{b} - case 9: + m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpRead{b} + case 58: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfraMonitorWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19023,10 +24563,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoInfraMonitorWrite{b} - case 10: + m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpWrite{b} + case 59: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfrastructureRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19044,10 +24584,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoInfrastructureRead{b} - case 11: + m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpAdmin{b} + case 60: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoInfrastructureWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19065,10 +24605,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoInfrastructureWrite{b} - case 12: + m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt{b} + case 61: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoInternalRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19086,10 +24626,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoInternalRead{b} - case 13: + m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorRead{b} + case 62: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoInternalWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19107,10 +24647,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoInternalWrite{b} - case 14: + m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorWrite{b} + case 63: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoK8SRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19128,10 +24668,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoK8SRead{b} - case 15: + m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorAdmin{b} + case 64: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoK8SWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19149,10 +24689,136 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoK8SWrite{b} - case 16: + m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt{b} + case 65: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtRead{b} + case 66: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtWrite{b} + case 67: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtAdmin", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtAdmin{b} + case 68: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtSubscriptionMgmt", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt{b} + case 69: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimClientWrite", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleScimClientWrite{b} + case 70: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimClientRead", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllApiGroups + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &APIGroupChoice_VoltconsoleScimClientRead{b} + case 71: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoLabelsRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19170,10 +24836,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoLabelsRead{b} - case 17: + m.Choice = &APIGroupChoice_VoltconsoleScimAdmin{b} + case 72: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoLabelsWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19191,10 +24857,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoLabelsWrite{b} - case 18: + m.Choice = &APIGroupChoice_VoltconsoleScimSubscriptionMgmt{b} + case 73: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoLocalK8SWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19212,10 +24878,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoLocalK8SWrite{b} - case 19: + m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteRead{b} + case 74: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoMonitorRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19233,10 +24899,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoMonitorRead{b} - case 20: + m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite{b} + case 79: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoMonitorWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19254,10 +24920,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoMonitorWrite{b} - case 21: + m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin{b} + case 80: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoNetworkRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19275,10 +24941,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoNetworkRead{b} - case 22: + m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt{b} + case 81: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoNetworkWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteApplication", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19296,10 +24962,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoNetworkWrite{b} - case 23: + m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication{b} + case 85: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyMonitorRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19317,10 +24983,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxyMonitorRead{b} - case 24: + m.Choice = &APIGroupChoice_VoltconsoleCdnRead{b} + case 86: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyMonitorWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19338,10 +25004,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxyMonitorWrite{b} - case 25: + m.Choice = &APIGroupChoice_VoltconsoleCdnWrite{b} + case 87: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19359,10 +25025,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxyRead{b} - case 26: + m.Choice = &APIGroupChoice_VoltconsoleCdnAdmin{b} + case 88: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxySecurityRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19380,10 +25046,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxySecurityRead{b} - case 27: + m.Choice = &APIGroupChoice_VoltconsoleCdnSubscriptionMgmt{b} + case 89: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxySecurityWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19401,10 +25067,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxySecurityWrite{b} - case 28: + m.Choice = &APIGroupChoice_VoltconsoleSafeapRead{b} + case 90: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyWafRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19422,10 +25088,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxyWafRead{b} - case 29: + m.Choice = &APIGroupChoice_VoltconsoleSafeapWrite{b} + case 91: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyWafWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19443,10 +25109,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxyWafWrite{b} - case 30: + m.Choice = &APIGroupChoice_VoltconsoleSafeapAdmin{b} + case 92: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoProxyWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19464,10 +25130,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoProxyWrite{b} - case 31: + m.Choice = &APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt{b} + case 93: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoSecretsRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19485,10 +25151,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoSecretsRead{b} - case 32: + m.Choice = &APIGroupChoice_VoltconsoleAipSubscriptionMgmt{b} + case 94: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoSecretsWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19506,10 +25172,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoSecretsWrite{b} - case 35: + m.Choice = &APIGroupChoice_VoltconsoleAipRead{b} + case 95: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamAdminRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19527,10 +25193,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoUamAdminRead{b} - case 36: + m.Choice = &APIGroupChoice_VoltconsoleAipWrite{b} + case 96: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamAdminWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19548,10 +25214,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoUamAdminWrite{b} - case 37: + m.Choice = &APIGroupChoice_VoltconsoleAipAdmin{b} + case 97: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipApplication", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19569,10 +25235,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoUamRead{b} - case 38: + m.Choice = &APIGroupChoice_VoltconsoleAipApplication{b} + case 100: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoUamWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDefaultAccess", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19590,10 +25256,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoUamWrite{b} - case 39: + m.Choice = &APIGroupChoice_F5XcDefaultAccess{b} + case 101: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoVirtualSitesRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBase", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19611,10 +25277,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoVirtualSitesRead{b} - case 40: + m.Choice = &APIGroupChoice_F5XcBase{b} + case 102: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoVirtualSitesWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBilling", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19632,10 +25298,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoVirtualSitesWrite{b} - case 41: + m.Choice = &APIGroupChoice_F5XcBilling{b} + case 103: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoVoltShareRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlerts", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19653,10 +25319,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoVoltShareRead{b} - case 42: + m.Choice = &APIGroupChoice_F5XcAuditLogsAlerts{b} + case 104: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoVoltShareWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19674,10 +25340,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoVoltShareWrite{b} - case 43: + m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtRead{b} + case 105: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoWebAccessRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19695,10 +25361,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoWebAccessRead{b} - case 44: + m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtWrite{b} + case 106: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoWebAccessWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19716,10 +25382,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoWebAccessWrite{b} - case 45: + m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtAdmin{b} + case 107: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoTenantOwnerRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19737,10 +25403,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoTenantOwnerRead{b} - case 46: + m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt{b} + case 110: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoTenantOwnerWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19758,10 +25424,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoTenantOwnerWrite{b} - case 47: + m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseRead{b} + case 111: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoStoredObjectRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19779,10 +25445,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoStoredObjectRead{b} - case 48: + m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseWrite{b} + case 112: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoStoredObjectWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19800,10 +25466,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoStoredObjectWrite{b} - case 49: + m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseAdmin{b} + case 113: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseSubscriptionMgmt", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19821,10 +25487,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeBotRead{b} - case 50: + m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt{b} + case 114: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseAdvancedMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19842,10 +25508,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeBotWrite{b} - case 51: + m.Choice = &APIGroupChoice_F5XcBotDefenseAdvancedMonitor{b} + case 115: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseAdvancedUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19863,10 +25529,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeBotAdmin{b} - case 52: + m.Choice = &APIGroupChoice_F5XcBotDefenseAdvancedUser{b} + case 116: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeBotSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseAdvancedAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19884,10 +25550,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeBotSubscriptionMgmt{b} - case 53: + m.Choice = &APIGroupChoice_F5XcBotDefenseAdvancedAdmin{b} + case 118: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefensePremiumMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19905,10 +25571,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeRead{b} - case 54: + m.Choice = &APIGroupChoice_F5XcBotDefensePremiumMonitor{b} + case 119: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefensePremiumUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19926,10 +25592,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeWrite{b} - case 55: + m.Choice = &APIGroupChoice_F5XcBotDefensePremiumUser{b} + case 120: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefensePremiumAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19947,10 +25613,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeAdmin{b} - case 56: + m.Choice = &APIGroupChoice_F5XcBotDefensePremiumAdmin{b} + case 122: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleShapeRecognizeSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VesIoReportRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19968,10 +25634,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleShapeRecognizeSubscriptionMgmt{b} - case 57: + m.Choice = &APIGroupChoice_VesIoReportRead{b} + case 123: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VesIoReportWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -19989,10 +25655,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpRead{b} - case 58: + m.Choice = &APIGroupChoice_VesIoReportWrite{b} + case 124: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportOperationsMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20010,10 +25676,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpWrite{b} - case 59: + m.Choice = &APIGroupChoice_F5XcSupportOperationsMonitor{b} + case 125: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportOperationsUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20031,10 +25697,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpAdmin{b} - case 60: + m.Choice = &APIGroupChoice_F5XcSupportOperationsUser{b} + case 126: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAidataBfdpSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VesIoLocalK8SKubeconfig", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20052,10 +25718,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAidataBfdpSubscriptionMgmt{b} - case 61: + m.Choice = &APIGroupChoice_VesIoLocalK8SKubeconfig{b} + case 127: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field VesIoGlobalK8SKubeconfig", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20073,10 +25739,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorRead{b} - case 62: + m.Choice = &APIGroupChoice_VesIoGlobalK8SKubeconfig{b} + case 128: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20094,10 +25760,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorWrite{b} - case 63: + m.Choice = &APIGroupChoice_F5XcChildManagementAdmin{b} + case 129: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20115,10 +25781,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorAdmin{b} - case 64: + m.Choice = &APIGroupChoice_F5XcChildManagementUser{b} + case 130: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSyntheticMonitorSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20136,10 +25802,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSyntheticMonitorSubscriptionMgmt{b} - case 65: + m.Choice = &APIGroupChoice_F5XcChildManagementMonitor{b} + case 131: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20157,10 +25823,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtRead{b} - case 66: + m.Choice = &APIGroupChoice_F5XcBotDefenseBasicMonitor{b} + case 132: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20178,10 +25844,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtWrite{b} - case 67: + m.Choice = &APIGroupChoice_F5XcBotDefenseBasicUser{b} + case 133: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20199,10 +25865,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtAdmin{b} - case 68: + m.Choice = &APIGroupChoice_F5XcBotDefenseBasicAdmin{b} + case 134: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleTenantMgmtSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBigIpApmMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20220,10 +25886,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleTenantMgmtSubscriptionMgmt{b} - case 69: + m.Choice = &APIGroupChoice_F5XcBigIpApmMonitor{b} + case 135: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimClientWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBigIpApmUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20241,10 +25907,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleScimClientWrite{b} - case 70: + m.Choice = &APIGroupChoice_F5XcBigIpApmUser{b} + case 136: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimClientRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBigIpApmAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20262,10 +25928,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleScimClientRead{b} - case 71: + m.Choice = &APIGroupChoice_F5XcBigIpApmAdmin{b} + case 137: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcMobileIntegratorMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20283,10 +25949,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleScimAdmin{b} - case 72: + m.Choice = &APIGroupChoice_F5XcMobileIntegratorMonitor{b} + case 138: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleScimSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcMobileIntegratorUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20304,10 +25970,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleScimSubscriptionMgmt{b} - case 73: + m.Choice = &APIGroupChoice_F5XcMobileIntegratorUser{b} + case 139: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcMobileIntegratorAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20325,10 +25991,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteRead{b} - case 74: + m.Choice = &APIGroupChoice_F5XcMobileIntegratorAdmin{b} + case 140: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcFlowCollectionMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20346,10 +26012,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteWrite{b} - case 79: + m.Choice = &APIGroupChoice_F5XcFlowCollectionMonitor{b} + case 141: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportOperationsAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20367,10 +26033,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteAdmin{b} - case 80: + m.Choice = &APIGroupChoice_F5XcSupportOperationsAdmin{b} + case 142: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcInternal", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20388,10 +26054,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteSubscriptionMgmt{b} - case 81: + m.Choice = &APIGroupChoice_F5XcInternal{b} + case 150: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleNginxMgmtSuiteApplication", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20409,10 +26075,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleNginxMgmtSuiteApplication{b} - case 85: + m.Choice = &APIGroupChoice_F5XcConsoleBaseMonitor{b} + case 151: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20430,10 +26096,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleCdnRead{b} - case 86: + m.Choice = &APIGroupChoice_F5XcConsoleBaseUser{b} + case 152: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20451,10 +26117,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleCdnWrite{b} - case 87: + m.Choice = &APIGroupChoice_F5XcConsoleBaseAdmin{b} + case 153: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdvancedMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20472,10 +26138,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleCdnAdmin{b} - case 88: + m.Choice = &APIGroupChoice_F5XcConsoleBaseAdvancedMonitor{b} + case 154: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleCdnSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdvancedUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20493,10 +26159,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleCdnSubscriptionMgmt{b} - case 89: + m.Choice = &APIGroupChoice_F5XcConsoleBaseAdvancedUser{b} + case 155: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdvancedAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20514,10 +26180,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSafeapRead{b} - case 90: + m.Choice = &APIGroupChoice_F5XcConsoleBaseAdvancedAdmin{b} + case 156: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasePremiumMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20535,10 +26201,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSafeapWrite{b} - case 91: + m.Choice = &APIGroupChoice_F5XcConsoleBasePremiumMonitor{b} + case 157: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasePremiumUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20556,10 +26222,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSafeapAdmin{b} - case 92: + m.Choice = &APIGroupChoice_F5XcConsoleBasePremiumUser{b} + case 158: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSafeapSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasePremiumAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20577,10 +26243,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSafeapSubscriptionMgmt{b} - case 93: + m.Choice = &APIGroupChoice_F5XcConsoleBasePremiumAdmin{b} + case 159: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20598,10 +26264,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAipSubscriptionMgmt{b} - case 94: + m.Choice = &APIGroupChoice_F5XcScimMonitor{b} + case 160: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20619,10 +26285,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAipRead{b} - case 95: + m.Choice = &APIGroupChoice_F5XcScimUser{b} + case 161: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20640,10 +26306,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAipWrite{b} - case 96: + m.Choice = &APIGroupChoice_F5XcScimAdmin{b} + case 162: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportManagementMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20661,10 +26327,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAipAdmin{b} - case 97: + m.Choice = &APIGroupChoice_F5XcSupportManagementMonitor{b} + case 163: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleAipApplication", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportManagementUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20682,10 +26348,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleAipApplication{b} - case 100: + m.Choice = &APIGroupChoice_F5XcSupportManagementUser{b} + case 164: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDefaultAccess", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportManagementAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20703,10 +26369,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDefaultAccess{b} - case 101: + m.Choice = &APIGroupChoice_F5XcSupportManagementAdmin{b} + case 165: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBase", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcGlobalLogReceiverMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20724,10 +26390,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBase{b} - case 102: + m.Choice = &APIGroupChoice_F5XcGlobalLogReceiverMonitor{b} + case 166: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBilling", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcGlobalLogReceiverUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20745,10 +26411,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBilling{b} - case 103: + m.Choice = &APIGroupChoice_F5XcGlobalLogReceiverUser{b} + case 167: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlerts", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcGlobalLogReceiverAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20766,10 +26432,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuditLogsAlerts{b} - case 104: + m.Choice = &APIGroupChoice_F5XcGlobalLogReceiverAdmin{b} + case 168: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlertsMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20787,10 +26453,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtRead{b} - case 105: + m.Choice = &APIGroupChoice_F5XcAuditLogsAlertsMonitor{b} + case 169: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlertsUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20808,10 +26474,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtWrite{b} - case 106: + m.Choice = &APIGroupChoice_F5XcAuditLogsAlertsUser{b} + case 170: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlertsAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20829,10 +26495,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtAdmin{b} - case 107: + m.Choice = &APIGroupChoice_F5XcAuditLogsAlertsAdmin{b} + case 171: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleSupportMgmtSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20850,10 +26516,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleSupportMgmtSubscriptionMgmt{b} - case 110: + m.Choice = &APIGroupChoice_F5XcDelegatedAccessBasicMonitor{b} + case 172: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20871,10 +26537,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseRead{b} - case 111: + m.Choice = &APIGroupChoice_F5XcDelegatedAccessBasicUser{b} + case 173: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20892,10 +26558,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseWrite{b} - case 112: + m.Choice = &APIGroupChoice_F5XcDelegatedAccessBasicAdmin{b} + case 174: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimClient", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20913,10 +26579,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseAdmin{b} - case 113: + m.Choice = &APIGroupChoice_F5XcScimClient{b} + case 175: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VoltconsoleClientSideDefenseSubscriptionMgmt", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20934,10 +26600,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VoltconsoleClientSideDefenseSubscriptionMgmt{b} - case 114: + m.Choice = &APIGroupChoice_F5XcConsoleBasicMonitor{b} + case 176: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseAdvancedMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20955,10 +26621,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefenseAdvancedMonitor{b} - case 115: + m.Choice = &APIGroupChoice_F5XcConsoleBasicUser{b} + case 177: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseAdvancedUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20976,10 +26642,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefenseAdvancedUser{b} - case 116: + m.Choice = &APIGroupChoice_F5XcConsoleBasicAdmin{b} + case 178: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseAdvancedAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -20997,10 +26663,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefenseAdvancedAdmin{b} - case 118: + m.Choice = &APIGroupChoice_F5XcConsoleStandardMonitor{b} + case 179: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefensePremiumMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21018,10 +26684,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefensePremiumMonitor{b} - case 119: + m.Choice = &APIGroupChoice_F5XcConsoleStandardUser{b} + case 180: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefensePremiumUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21039,10 +26705,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefensePremiumUser{b} - case 120: + m.Choice = &APIGroupChoice_F5XcConsoleStandardAdmin{b} + case 181: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefensePremiumAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleAdvancedMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21060,10 +26726,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefensePremiumAdmin{b} - case 122: + m.Choice = &APIGroupChoice_F5XcConsoleAdvancedMonitor{b} + case 182: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoReportRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleAdvancedUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21081,10 +26747,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoReportRead{b} - case 123: + m.Choice = &APIGroupChoice_F5XcConsoleAdvancedUser{b} + case 183: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoReportWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleAdvancedAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21102,10 +26768,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoReportWrite{b} - case 124: + m.Choice = &APIGroupChoice_F5XcConsoleAdvancedAdmin{b} + case 218: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportOperationsMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21123,10 +26789,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSupportOperationsMonitor{b} - case 125: + m.Choice = &APIGroupChoice_F5XcRoutedDdosBasicMonitor{b} + case 219: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportOperationsUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21144,10 +26810,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSupportOperationsUser{b} - case 126: + m.Choice = &APIGroupChoice_F5XcRoutedDdosBasicUser{b} + case 220: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoLocalK8SKubeconfig", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21165,10 +26831,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoLocalK8SKubeconfig{b} - case 127: + m.Choice = &APIGroupChoice_F5XcRoutedDdosBasicAdmin{b} + case 221: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field VesIoGlobalK8SKubeconfig", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21186,10 +26852,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_VesIoGlobalK8SKubeconfig{b} - case 128: + m.Choice = &APIGroupChoice_F5XcClientSideDefenseBasicMonitor{b} + case 222: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21207,10 +26873,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcChildManagementAdmin{b} - case 129: + m.Choice = &APIGroupChoice_F5XcClientSideDefenseBasicUser{b} + case 223: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21228,10 +26894,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcChildManagementUser{b} - case 130: + m.Choice = &APIGroupChoice_F5XcClientSideDefenseBasicAdmin{b} + case 227: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcCdnBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21249,10 +26915,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcChildManagementMonitor{b} - case 131: + m.Choice = &APIGroupChoice_F5XcCdnBasicMonitor{b} + case 228: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcCdnBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21270,10 +26936,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefenseBasicMonitor{b} - case 132: + m.Choice = &APIGroupChoice_F5XcCdnBasicUser{b} + case 229: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcCdnBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21291,10 +26957,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefenseBasicUser{b} - case 133: + m.Choice = &APIGroupChoice_F5XcCdnBasicAdmin{b} + case 230: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21312,10 +26978,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBotDefenseBasicAdmin{b} - case 134: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor{b} + case 231: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBigIpApmMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21333,10 +26999,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBigIpApmMonitor{b} - case 135: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser{b} + case 232: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBigIpApmUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21354,10 +27020,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBigIpApmUser{b} - case 136: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin{b} + case 236: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcBigIpApmAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21375,10 +27041,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcBigIpApmAdmin{b} - case 137: + m.Choice = &APIGroupChoice_F5XcWaapBasicMonitor{b} + case 237: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcMobileIntegratorMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21396,10 +27062,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcMobileIntegratorMonitor{b} - case 138: + m.Choice = &APIGroupChoice_F5XcWaapBasicUser{b} + case 238: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcMobileIntegratorUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21417,10 +27083,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcMobileIntegratorUser{b} - case 139: + m.Choice = &APIGroupChoice_F5XcWaapBasicAdmin{b} + case 239: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcMobileIntegratorAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvancedMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21438,10 +27104,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcMobileIntegratorAdmin{b} - case 140: + m.Choice = &APIGroupChoice_F5XcWaapAdvancedMonitor{b} + case 240: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcFlowCollectionMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvancedUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21459,10 +27125,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcFlowCollectionMonitor{b} - case 141: + m.Choice = &APIGroupChoice_F5XcWaapAdvancedUser{b} + case 241: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportOperationsAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvancedAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21480,10 +27146,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSupportOperationsAdmin{b} - case 142: + m.Choice = &APIGroupChoice_F5XcWaapAdvancedAdmin{b} + case 242: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcInternal", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21501,10 +27167,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcInternal{b} - case 150: + m.Choice = &APIGroupChoice_F5XcSiteManagementBasicMonitor{b} + case 243: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21522,10 +27188,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBaseMonitor{b} - case 151: + m.Choice = &APIGroupChoice_F5XcSiteManagementBasicUser{b} + case 244: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21543,10 +27209,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBaseUser{b} - case 152: + m.Choice = &APIGroupChoice_F5XcSiteManagementBasicAdmin{b} + case 245: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21564,10 +27230,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBaseAdmin{b} - case 153: + m.Choice = &APIGroupChoice_F5XcDnsBasicMonitor{b} + case 246: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdvancedMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21585,10 +27251,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBaseAdvancedMonitor{b} - case 154: + m.Choice = &APIGroupChoice_F5XcDnsBasicUser{b} + case 247: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdvancedUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21606,10 +27272,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBaseAdvancedUser{b} - case 155: + m.Choice = &APIGroupChoice_F5XcDnsBasicAdmin{b} + case 248: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBaseAdvancedAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21627,10 +27293,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBaseAdvancedAdmin{b} - case 156: + m.Choice = &APIGroupChoice_F5XcAccountProtectionBasicMonitor{b} + case 249: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasePremiumMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21648,10 +27314,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBasePremiumMonitor{b} - case 157: + m.Choice = &APIGroupChoice_F5XcAccountProtectionBasicUser{b} + case 250: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasePremiumUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21669,10 +27335,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBasePremiumUser{b} - case 158: + m.Choice = &APIGroupChoice_F5XcAccountProtectionBasicAdmin{b} + case 251: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcConsoleBasePremiumAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21690,10 +27356,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcConsoleBasePremiumAdmin{b} - case 159: + m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor{b} + case 252: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21711,10 +27377,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcScimMonitor{b} - case 160: + m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringBasicUser{b} + case 253: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21732,10 +27398,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcScimUser{b} - case 161: + m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin{b} + case 254: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementSupportAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21753,10 +27419,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcScimAdmin{b} - case 162: + m.Choice = &APIGroupChoice_F5XcChildManagementSupportAdmin{b} + case 255: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportManagementMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementSupportUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21774,10 +27440,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSupportManagementMonitor{b} - case 163: + m.Choice = &APIGroupChoice_F5XcChildManagementSupportUser{b} + case 256: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportManagementUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementSupportMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21795,10 +27461,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSupportManagementUser{b} - case 164: + m.Choice = &APIGroupChoice_F5XcChildManagementSupportMonitor{b} + case 257: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSupportManagementAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDataIntelligenceMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21816,10 +27482,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSupportManagementAdmin{b} - case 165: + m.Choice = &APIGroupChoice_F5XcDataIntelligenceMonitor{b} + case 258: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcGlobalLogReceiverMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDataIntelligenceUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21837,10 +27503,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcGlobalLogReceiverMonitor{b} - case 166: + m.Choice = &APIGroupChoice_F5XcDataIntelligenceUser{b} + case 259: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcGlobalLogReceiverUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDataIntelligenceAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21858,10 +27524,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcGlobalLogReceiverUser{b} - case 167: + m.Choice = &APIGroupChoice_F5XcDataIntelligenceAdmin{b} + case 260: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcGlobalLogReceiverAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21879,10 +27545,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcGlobalLogReceiverAdmin{b} - case 168: + m.Choice = &APIGroupChoice_F5XcSecuremeshBasicMonitor{b} + case 261: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlertsMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21900,10 +27566,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuditLogsAlertsMonitor{b} - case 169: + m.Choice = &APIGroupChoice_F5XcSecuremeshBasicUser{b} + case 262: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlertsUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21921,10 +27587,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuditLogsAlertsUser{b} - case 170: + m.Choice = &APIGroupChoice_F5XcSecuremeshBasicAdmin{b} + case 263: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuditLogsAlertsAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvancedMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21942,10 +27608,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuditLogsAlertsAdmin{b} - case 171: + m.Choice = &APIGroupChoice_F5XcSecuremeshAdvancedMonitor{b} + case 264: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvancedUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21963,10 +27629,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDelegatedAccessBasicMonitor{b} - case 172: + m.Choice = &APIGroupChoice_F5XcSecuremeshAdvancedUser{b} + case 265: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvancedAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -21984,10 +27650,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDelegatedAccessBasicUser{b} - case 173: + m.Choice = &APIGroupChoice_F5XcSecuremeshAdvancedAdmin{b} + case 266: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22005,10 +27671,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDelegatedAccessBasicAdmin{b} - case 174: + m.Choice = &APIGroupChoice_F5XcAppstackBasicMonitor{b} + case 267: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcScimClient", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22026,10 +27692,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcScimClient{b} - case 218: + m.Choice = &APIGroupChoice_F5XcAppstackBasicUser{b} + case 268: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22047,10 +27713,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcRoutedDdosBasicMonitor{b} - case 219: + m.Choice = &APIGroupChoice_F5XcAppstackBasicAdmin{b} + case 269: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22068,10 +27734,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcRoutedDdosBasicUser{b} - case 220: + m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor{b} + case 270: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22089,10 +27755,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcRoutedDdosBasicAdmin{b} - case 221: + m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteBasicUser{b} + case 271: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22110,10 +27776,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcClientSideDefenseBasicMonitor{b} - case 222: + m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin{b} + case 272: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22131,10 +27797,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcClientSideDefenseBasicUser{b} - case 223: + m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor{b} + case 273: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22152,10 +27818,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcClientSideDefenseBasicAdmin{b} - case 227: + m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightBasicUser{b} + case 274: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcCdnBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22173,10 +27839,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcCdnBasicMonitor{b} - case 228: + m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin{b} + case 275: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcCdnBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceBasicMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22194,10 +27860,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcCdnBasicUser{b} - case 229: + m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor{b} + case 276: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcCdnBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceBasicUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22215,10 +27881,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcCdnBasicAdmin{b} - case 230: + m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser{b} + case 277: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceBasicAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22236,10 +27902,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicMonitor{b} - case 231: + m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin{b} + case 282: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionApplication", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22257,10 +27923,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicUser{b} - case 232: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication{b} + case 283: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneApplicationRead", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22278,10 +27944,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionBasicAdmin{b} - case 236: + m.Choice = &APIGroupChoice_F5XcNginxOneApplicationRead{b} + case 284: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneApplicationWrite", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22299,10 +27965,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcWaapBasicMonitor{b} - case 237: + m.Choice = &APIGroupChoice_F5XcNginxOneApplicationWrite{b} + case 285: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClearviewMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22320,10 +27986,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcWaapBasicUser{b} - case 238: + m.Choice = &APIGroupChoice_F5XcClearviewMonitor{b} + case 286: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClearviewUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22341,10 +28007,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcWaapBasicAdmin{b} - case 239: + m.Choice = &APIGroupChoice_F5XcClearviewUser{b} + case 287: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvancedMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClearviewAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22362,10 +28028,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcWaapAdvancedMonitor{b} - case 240: + m.Choice = &APIGroupChoice_F5XcClearviewAdmin{b} + case 288: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvancedUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22383,10 +28049,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcWaapAdvancedUser{b} - case 241: + m.Choice = &APIGroupChoice_F5XcSecuremeshStandardMonitor{b} + case 289: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapAdvancedAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22404,10 +28070,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcWaapAdvancedAdmin{b} - case 242: + m.Choice = &APIGroupChoice_F5XcSecuremeshStandardUser{b} + case 290: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22425,10 +28091,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSiteManagementBasicMonitor{b} - case 243: + m.Choice = &APIGroupChoice_F5XcSecuremeshStandardAdmin{b} + case 291: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22446,10 +28112,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSiteManagementBasicUser{b} - case 244: + m.Choice = &APIGroupChoice_F5XcAppstackStandardMonitor{b} + case 292: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22467,10 +28133,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSiteManagementBasicAdmin{b} - case 245: + m.Choice = &APIGroupChoice_F5XcAppstackStandardUser{b} + case 293: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22488,10 +28154,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDnsBasicMonitor{b} - case 246: + m.Choice = &APIGroupChoice_F5XcAppstackStandardAdmin{b} + case 294: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22509,10 +28175,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDnsBasicUser{b} - case 247: + m.Choice = &APIGroupChoice_F5XcWaapStandardMonitor{b} + case 295: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22530,10 +28196,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDnsBasicAdmin{b} - case 248: + m.Choice = &APIGroupChoice_F5XcWaapStandardUser{b} + case 296: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWaapStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22551,10 +28217,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAccountProtectionBasicMonitor{b} - case 249: + m.Choice = &APIGroupChoice_F5XcWaapStandardAdmin{b} + case 297: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22572,10 +28238,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAccountProtectionBasicUser{b} - case 250: + m.Choice = &APIGroupChoice_F5XcSiteManagementStandardMonitor{b} + case 298: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22593,10 +28259,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAccountProtectionBasicAdmin{b} - case 251: + m.Choice = &APIGroupChoice_F5XcSiteManagementStandardUser{b} + case 299: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSiteManagementStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22614,10 +28280,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringBasicMonitor{b} - case 252: + m.Choice = &APIGroupChoice_F5XcSiteManagementStandardAdmin{b} + case 300: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22635,10 +28301,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringBasicUser{b} - case 253: + m.Choice = &APIGroupChoice_F5XcRoutedDdosStandardMonitor{b} + case 301: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22656,10 +28322,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringBasicAdmin{b} - case 254: + m.Choice = &APIGroupChoice_F5XcRoutedDdosStandardUser{b} + case 302: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementSupportAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcRoutedDdosStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22677,10 +28343,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcChildManagementSupportAdmin{b} - case 255: + m.Choice = &APIGroupChoice_F5XcRoutedDdosStandardAdmin{b} + case 303: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementSupportUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22698,10 +28364,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcChildManagementSupportUser{b} - case 256: + m.Choice = &APIGroupChoice_F5XcDnsStandardMonitor{b} + case 304: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcChildManagementSupportMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22719,10 +28385,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcChildManagementSupportMonitor{b} - case 257: + m.Choice = &APIGroupChoice_F5XcDnsStandardUser{b} + case 305: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDataIntelligenceMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDnsStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22740,10 +28406,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDataIntelligenceMonitor{b} - case 258: + m.Choice = &APIGroupChoice_F5XcDnsStandardAdmin{b} + case 306: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDataIntelligenceUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22761,10 +28427,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDataIntelligenceUser{b} - case 259: + m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor{b} + case 307: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcDataIntelligenceAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22782,10 +28448,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcDataIntelligenceAdmin{b} - case 260: + m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightStandardUser{b} + case 308: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22803,10 +28469,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSecuremeshBasicMonitor{b} - case 261: + m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin{b} + case 309: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcContentDeliveryNetworkStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22824,10 +28490,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSecuremeshBasicUser{b} - case 262: + m.Choice = &APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor{b} + case 310: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcContentDeliveryNetworkStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22845,10 +28511,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSecuremeshBasicAdmin{b} - case 263: + m.Choice = &APIGroupChoice_F5XcContentDeliveryNetworkStandardUser{b} + case 311: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvancedMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcContentDeliveryNetworkStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22866,10 +28532,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSecuremeshAdvancedMonitor{b} - case 264: + m.Choice = &APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin{b} + case 312: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvancedUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22887,10 +28553,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSecuremeshAdvancedUser{b} - case 265: + m.Choice = &APIGroupChoice_F5XcClientSideDefenseStandardMonitor{b} + case 313: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecuremeshAdvancedAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22908,10 +28574,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcSecuremeshAdvancedAdmin{b} - case 266: + m.Choice = &APIGroupChoice_F5XcClientSideDefenseStandardUser{b} + case 314: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcClientSideDefenseStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22929,10 +28595,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAppstackBasicMonitor{b} - case 267: + m.Choice = &APIGroupChoice_F5XcClientSideDefenseStandardAdmin{b} + case 315: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22950,10 +28616,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAppstackBasicUser{b} - case 268: + m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor{b} + case 316: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAppstackBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22971,10 +28637,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAppstackBasicAdmin{b} - case 269: + m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringStandardUser{b} + case 317: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSyntheticMonitoringStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -22992,10 +28658,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteBasicMonitor{b} - case 270: + m.Choice = &APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin{b} + case 318: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23013,10 +28679,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteBasicUser{b} - case 271: + m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor{b} + case 319: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23034,10 +28700,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteBasicAdmin{b} - case 272: + m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser{b} + case 320: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23055,10 +28721,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightBasicMonitor{b} - case 273: + m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin{b} + case 321: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23076,10 +28742,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightBasicUser{b} - case 274: + m.Choice = &APIGroupChoice_F5XcAccountProtectionStandardMonitor{b} + case 322: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationTrafficInsightBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23097,10 +28763,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationTrafficInsightBasicAdmin{b} - case 275: + m.Choice = &APIGroupChoice_F5XcAccountProtectionStandardUser{b} + case 323: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceBasicMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcAccountProtectionStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23118,10 +28784,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceBasicMonitor{b} - case 276: + m.Choice = &APIGroupChoice_F5XcAccountProtectionStandardAdmin{b} + case 324: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceBasicUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23139,10 +28805,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceBasicUser{b} - case 277: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor{b} + case 325: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcAuthenticationIntelligenceBasicAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23160,10 +28826,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcAuthenticationIntelligenceBasicAdmin{b} - case 278: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser{b} + case 326: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23181,10 +28847,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxOneMonitor{b} - case 279: + m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin{b} + case 327: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23202,10 +28868,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxOneUser{b} - case 280: + m.Choice = &APIGroupChoice_F5XcDelegatedAccessStandardMonitor{b} + case 328: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23223,10 +28889,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxOneAdmin{b} - case 281: + m.Choice = &APIGroupChoice_F5XcDelegatedAccessStandardUser{b} + case 329: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxMgmtSuiteApplication", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcDelegatedAccessStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23244,10 +28910,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxMgmtSuiteApplication{b} - case 282: + m.Choice = &APIGroupChoice_F5XcDelegatedAccessStandardAdmin{b} + case 330: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcApplicationInfrastructureProtectionApplication", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23265,10 +28931,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication{b} - case 283: + m.Choice = &APIGroupChoice_F5XcBotDefenseStandardMonitor{b} + case 331: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneApplicationRead", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23286,10 +28952,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxOneApplicationRead{b} - case 284: + m.Choice = &APIGroupChoice_F5XcBotDefenseStandardUser{b} + case 332: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcNginxOneApplicationWrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcBotDefenseStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23307,10 +28973,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcNginxOneApplicationWrite{b} - case 285: + m.Choice = &APIGroupChoice_F5XcBotDefenseStandardAdmin{b} + case 333: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcClearviewMonitor", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWebAppScanningStandardMonitor", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23328,10 +28994,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcClearviewMonitor{b} - case 286: + m.Choice = &APIGroupChoice_F5XcWebAppScanningStandardMonitor{b} + case 334: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcClearviewUser", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWebAppScanningStandardUser", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23349,10 +29015,10 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcClearviewUser{b} - case 287: + m.Choice = &APIGroupChoice_F5XcWebAppScanningStandardUser{b} + case 335: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field F5XcClearviewAdmin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field F5XcWebAppScanningStandardAdmin", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -23370,7 +29036,7 @@ func (m *APIGroupChoice) Unmarshal(dAtA []byte) error { } } b := bool(v != 0) - m.Choice = &APIGroupChoice_F5XcClearviewAdmin{b} + m.Choice = &APIGroupChoice_F5XcWebAppScanningStandardAdmin{b} default: iNdEx = preIndex skippy, err := skipAllApiGroups(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/vesenv/all_api_groups.vesmsg.go b/pbgo/extschema/schema/vesenv/all_api_groups.vesmsg.go index c8ad82d2d..6cb432b74 100644 --- a/pbgo/extschema/schema/vesenv/all_api_groups.vesmsg.go +++ b/pbgo/extschema/schema/vesenv/all_api_groups.vesmsg.go @@ -1750,6 +1750,105 @@ func (v *ValidateAPIGroupChoice) Validate(ctx context.Context, pm interface{}, o return err } } + case *APIGroupChoice_F5XcConsoleBasicMonitor: + if fv, exists := v.FldValidators["choice.f5xc_console_basic_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleBasicMonitor).F5XcConsoleBasicMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_basic_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleBasicUser: + if fv, exists := v.FldValidators["choice.f5xc_console_basic_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleBasicUser).F5XcConsoleBasicUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_basic_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleBasicAdmin: + if fv, exists := v.FldValidators["choice.f5xc_console_basic_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleBasicAdmin).F5XcConsoleBasicAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_basic_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_console_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleStandardMonitor).F5XcConsoleStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_console_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleStandardUser).F5XcConsoleStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_console_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleStandardAdmin).F5XcConsoleStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleAdvancedMonitor: + if fv, exists := v.FldValidators["choice.f5xc_console_advanced_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleAdvancedMonitor).F5XcConsoleAdvancedMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_advanced_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleAdvancedUser: + if fv, exists := v.FldValidators["choice.f5xc_console_advanced_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleAdvancedUser).F5XcConsoleAdvancedUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_advanced_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcConsoleAdvancedAdmin: + if fv, exists := v.FldValidators["choice.f5xc_console_advanced_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcConsoleAdvancedAdmin).F5XcConsoleAdvancedAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_console_advanced_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } case *APIGroupChoice_F5XcRoutedDdosBasicMonitor: if fv, exists := v.FldValidators["choice.f5xc_routed_ddos_basic_monitor"]; exists { val := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosBasicMonitor).F5XcRoutedDdosBasicMonitor @@ -2344,111 +2443,595 @@ func (v *ValidateAPIGroupChoice) Validate(ctx context.Context, pm interface{}, o return err } } - case *APIGroupChoice_F5XcNginxOneMonitor: - if fv, exists := v.FldValidators["choice.f5xc_nginx_one_monitor"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneMonitor).F5XcNginxOneMonitor + case *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication: + if fv, exists := v.FldValidators["choice.f5xc_application_infrastructure_protection_application"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication).F5XcApplicationInfrastructureProtectionApplication vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_nginx_one_monitor"), + db.WithValidateField("f5xc_application_infrastructure_protection_application"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcNginxOneUser: - if fv, exists := v.FldValidators["choice.f5xc_nginx_one_user"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneUser).F5XcNginxOneUser + case *APIGroupChoice_F5XcNginxOneApplicationRead: + if fv, exists := v.FldValidators["choice.f5xc_nginx_one_application_read"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneApplicationRead).F5XcNginxOneApplicationRead vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_nginx_one_user"), + db.WithValidateField("f5xc_nginx_one_application_read"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcNginxOneAdmin: - if fv, exists := v.FldValidators["choice.f5xc_nginx_one_admin"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneAdmin).F5XcNginxOneAdmin + case *APIGroupChoice_F5XcNginxOneApplicationWrite: + if fv, exists := v.FldValidators["choice.f5xc_nginx_one_application_write"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneApplicationWrite).F5XcNginxOneApplicationWrite vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_nginx_one_admin"), + db.WithValidateField("f5xc_nginx_one_application_write"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcNginxMgmtSuiteApplication: - if fv, exists := v.FldValidators["choice.f5xc_nginx_mgmt_suite_application"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcNginxMgmtSuiteApplication).F5XcNginxMgmtSuiteApplication + case *APIGroupChoice_F5XcClearviewMonitor: + if fv, exists := v.FldValidators["choice.f5xc_clearview_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcClearviewMonitor).F5XcClearviewMonitor vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_nginx_mgmt_suite_application"), + db.WithValidateField("f5xc_clearview_monitor"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication: - if fv, exists := v.FldValidators["choice.f5xc_application_infrastructure_protection_application"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionApplication).F5XcApplicationInfrastructureProtectionApplication + case *APIGroupChoice_F5XcClearviewUser: + if fv, exists := v.FldValidators["choice.f5xc_clearview_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcClearviewUser).F5XcClearviewUser vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_application_infrastructure_protection_application"), + db.WithValidateField("f5xc_clearview_user"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcNginxOneApplicationRead: - if fv, exists := v.FldValidators["choice.f5xc_nginx_one_application_read"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneApplicationRead).F5XcNginxOneApplicationRead + case *APIGroupChoice_F5XcClearviewAdmin: + if fv, exists := v.FldValidators["choice.f5xc_clearview_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcClearviewAdmin).F5XcClearviewAdmin vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_nginx_one_application_read"), + db.WithValidateField("f5xc_clearview_admin"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcNginxOneApplicationWrite: - if fv, exists := v.FldValidators["choice.f5xc_nginx_one_application_write"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcNginxOneApplicationWrite).F5XcNginxOneApplicationWrite + case *APIGroupChoice_F5XcSecuremeshStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_securemesh_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshStandardMonitor).F5XcSecuremeshStandardMonitor vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_nginx_one_application_write"), + db.WithValidateField("f5xc_securemesh_standard_monitor"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcClearviewMonitor: - if fv, exists := v.FldValidators["choice.f5xc_clearview_monitor"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcClearviewMonitor).F5XcClearviewMonitor + case *APIGroupChoice_F5XcSecuremeshStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_securemesh_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshStandardUser).F5XcSecuremeshStandardUser vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_clearview_monitor"), + db.WithValidateField("f5xc_securemesh_standard_user"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcClearviewUser: - if fv, exists := v.FldValidators["choice.f5xc_clearview_user"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcClearviewUser).F5XcClearviewUser + case *APIGroupChoice_F5XcSecuremeshStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_securemesh_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSecuremeshStandardAdmin).F5XcSecuremeshStandardAdmin vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_clearview_user"), + db.WithValidateField("f5xc_securemesh_standard_admin"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupChoice_F5XcClearviewAdmin: - if fv, exists := v.FldValidators["choice.f5xc_clearview_admin"]; exists { - val := m.GetChoice().(*APIGroupChoice_F5XcClearviewAdmin).F5XcClearviewAdmin + case *APIGroupChoice_F5XcAppstackStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_appstack_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAppstackStandardMonitor).F5XcAppstackStandardMonitor vOpts := append(opts, db.WithValidateField("choice"), - db.WithValidateField("f5xc_clearview_admin"), + db.WithValidateField("f5xc_appstack_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAppstackStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_appstack_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAppstackStandardUser).F5XcAppstackStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_appstack_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAppstackStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_appstack_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAppstackStandardAdmin).F5XcAppstackStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_appstack_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcWaapStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_waap_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcWaapStandardMonitor).F5XcWaapStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_waap_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcWaapStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_waap_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcWaapStandardUser).F5XcWaapStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_waap_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcWaapStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_waap_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcWaapStandardAdmin).F5XcWaapStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_waap_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcSiteManagementStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_site_management_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSiteManagementStandardMonitor).F5XcSiteManagementStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_site_management_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcSiteManagementStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_site_management_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSiteManagementStandardUser).F5XcSiteManagementStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_site_management_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcSiteManagementStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_site_management_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSiteManagementStandardAdmin).F5XcSiteManagementStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_site_management_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcRoutedDdosStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_routed_ddos_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosStandardMonitor).F5XcRoutedDdosStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_routed_ddos_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcRoutedDdosStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_routed_ddos_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosStandardUser).F5XcRoutedDdosStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_routed_ddos_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcRoutedDdosStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_routed_ddos_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcRoutedDdosStandardAdmin).F5XcRoutedDdosStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_routed_ddos_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcDnsStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_dns_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcDnsStandardMonitor).F5XcDnsStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_dns_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcDnsStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_dns_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcDnsStandardUser).F5XcDnsStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_dns_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcDnsStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_dns_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcDnsStandardAdmin).F5XcDnsStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_dns_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_application_traffic_insight_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationTrafficInsightStandardMonitor).F5XcApplicationTrafficInsightStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_traffic_insight_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcApplicationTrafficInsightStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_application_traffic_insight_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationTrafficInsightStandardUser).F5XcApplicationTrafficInsightStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_traffic_insight_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_application_traffic_insight_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationTrafficInsightStandardAdmin).F5XcApplicationTrafficInsightStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_traffic_insight_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_content_delivery_network_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcContentDeliveryNetworkStandardMonitor).F5XcContentDeliveryNetworkStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_content_delivery_network_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcContentDeliveryNetworkStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_content_delivery_network_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcContentDeliveryNetworkStandardUser).F5XcContentDeliveryNetworkStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_content_delivery_network_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_content_delivery_network_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcContentDeliveryNetworkStandardAdmin).F5XcContentDeliveryNetworkStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_content_delivery_network_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcClientSideDefenseStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_client_side_defense_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcClientSideDefenseStandardMonitor).F5XcClientSideDefenseStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_client_side_defense_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcClientSideDefenseStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_client_side_defense_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcClientSideDefenseStandardUser).F5XcClientSideDefenseStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_client_side_defense_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcClientSideDefenseStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_client_side_defense_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcClientSideDefenseStandardAdmin).F5XcClientSideDefenseStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_client_side_defense_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_synthetic_monitoring_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSyntheticMonitoringStandardMonitor).F5XcSyntheticMonitoringStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_synthetic_monitoring_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcSyntheticMonitoringStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_synthetic_monitoring_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSyntheticMonitoringStandardUser).F5XcSyntheticMonitoringStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_synthetic_monitoring_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_synthetic_monitoring_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcSyntheticMonitoringStandardAdmin).F5XcSyntheticMonitoringStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_synthetic_monitoring_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_authentication_intelligence_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardMonitor).F5XcAuthenticationIntelligenceStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_authentication_intelligence_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_authentication_intelligence_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardUser).F5XcAuthenticationIntelligenceStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_authentication_intelligence_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_authentication_intelligence_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAuthenticationIntelligenceStandardAdmin).F5XcAuthenticationIntelligenceStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_authentication_intelligence_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAccountProtectionStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_account_protection_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAccountProtectionStandardMonitor).F5XcAccountProtectionStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_account_protection_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAccountProtectionStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_account_protection_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAccountProtectionStandardUser).F5XcAccountProtectionStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_account_protection_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcAccountProtectionStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_account_protection_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcAccountProtectionStandardAdmin).F5XcAccountProtectionStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_account_protection_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_application_infrastructure_protection_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardMonitor).F5XcApplicationInfrastructureProtectionStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_infrastructure_protection_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_application_infrastructure_protection_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardUser).F5XcApplicationInfrastructureProtectionStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_infrastructure_protection_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_application_infrastructure_protection_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcApplicationInfrastructureProtectionStandardAdmin).F5XcApplicationInfrastructureProtectionStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_application_infrastructure_protection_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcDelegatedAccessStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_delegated_access_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcDelegatedAccessStandardMonitor).F5XcDelegatedAccessStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_delegated_access_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcDelegatedAccessStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_delegated_access_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcDelegatedAccessStandardUser).F5XcDelegatedAccessStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_delegated_access_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcDelegatedAccessStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_delegated_access_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcDelegatedAccessStandardAdmin).F5XcDelegatedAccessStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_delegated_access_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcBotDefenseStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_bot_defense_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcBotDefenseStandardMonitor).F5XcBotDefenseStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_bot_defense_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcBotDefenseStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_bot_defense_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcBotDefenseStandardUser).F5XcBotDefenseStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_bot_defense_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcBotDefenseStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_bot_defense_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcBotDefenseStandardAdmin).F5XcBotDefenseStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_bot_defense_standard_admin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcWebAppScanningStandardMonitor: + if fv, exists := v.FldValidators["choice.f5xc_web_app_scanning_standard_monitor"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcWebAppScanningStandardMonitor).F5XcWebAppScanningStandardMonitor + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_web_app_scanning_standard_monitor"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcWebAppScanningStandardUser: + if fv, exists := v.FldValidators["choice.f5xc_web_app_scanning_standard_user"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcWebAppScanningStandardUser).F5XcWebAppScanningStandardUser + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_web_app_scanning_standard_user"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupChoice_F5XcWebAppScanningStandardAdmin: + if fv, exists := v.FldValidators["choice.f5xc_web_app_scanning_standard_admin"]; exists { + val := m.GetChoice().(*APIGroupChoice_F5XcWebAppScanningStandardAdmin).F5XcWebAppScanningStandardAdmin + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("f5xc_web_app_scanning_standard_admin"), ) if err := fv(ctx, val, vOpts...); err != nil { return err diff --git a/pbgo/extschema/schema/vesenv/all_services.pb.go b/pbgo/extschema/schema/vesenv/all_services.pb.go index b23b63450..1e23d6034 100644 --- a/pbgo/extschema/schema/vesenv/all_services.pb.go +++ b/pbgo/extschema/schema/vesenv/all_services.pb.go @@ -91,6 +91,7 @@ type ServiceChoice struct { // *ServiceChoice_Rakar // *ServiceChoice_Ratchet // *ServiceChoice_Rolex + // *ServiceChoice_Sahaya // *ServiceChoice_Scim // *ServiceChoice_Sed // *ServiceChoice_Sentinel @@ -344,6 +345,9 @@ type ServiceChoice_Ratchet struct { type ServiceChoice_Rolex struct { Rolex bool `protobuf:"varint,80,opt,name=rolex,proto3,oneof" json:"rolex,omitempty"` } +type ServiceChoice_Sahaya struct { + Sahaya bool `protobuf:"varint,94,opt,name=sahaya,proto3,oneof" json:"sahaya,omitempty"` +} type ServiceChoice_Scim struct { Scim bool `protobuf:"varint,35,opt,name=scim,proto3,oneof" json:"scim,omitempty"` } @@ -466,6 +470,7 @@ func (*ServiceChoice_Protekti) isServiceChoice_Choice() {} func (*ServiceChoice_Rakar) isServiceChoice_Choice() {} func (*ServiceChoice_Ratchet) isServiceChoice_Choice() {} func (*ServiceChoice_Rolex) isServiceChoice_Choice() {} +func (*ServiceChoice_Sahaya) isServiceChoice_Choice() {} func (*ServiceChoice_Scim) isServiceChoice_Choice() {} func (*ServiceChoice_Sed) isServiceChoice_Choice() {} func (*ServiceChoice_Sentinel) isServiceChoice_Choice() {} @@ -941,6 +946,13 @@ func (m *ServiceChoice) GetRolex() bool { return false } +func (m *ServiceChoice) GetSahaya() bool { + if x, ok := m.GetChoice().(*ServiceChoice_Sahaya); ok { + return x.Sahaya + } + return false +} + func (m *ServiceChoice) GetScim() bool { if x, ok := m.GetChoice().(*ServiceChoice_Scim); ok { return x.Scim @@ -1141,6 +1153,7 @@ func (*ServiceChoice) XXX_OneofWrappers() []interface{} { (*ServiceChoice_Rakar)(nil), (*ServiceChoice_Ratchet)(nil), (*ServiceChoice_Rolex)(nil), + (*ServiceChoice_Sahaya)(nil), (*ServiceChoice_Scim)(nil), (*ServiceChoice_Sed)(nil), (*ServiceChoice_Sentinel)(nil), @@ -1172,233 +1185,235 @@ func init() { } var fileDescriptor_30eccf2b87cfc541 = []byte{ - // 3610 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcb, 0x93, 0x1b, 0x37, - 0x7a, 0x27, 0xad, 0x79, 0x48, 0xb0, 0x1e, 0xf6, 0xf8, 0xb1, 0xb0, 0x6c, 0x8f, 0x61, 0x79, 0x77, - 0x25, 0xd9, 0x9a, 0x99, 0xb5, 0xbd, 0xf2, 0x4b, 0x59, 0xad, 0x38, 0x24, 0xe7, 0x21, 0x69, 0x24, - 0x2e, 0x39, 0x7a, 0xd9, 0x59, 0x2b, 0x60, 0x37, 0x48, 0x42, 0xd3, 0x0d, 0x74, 0x00, 0x34, 0x67, - 0xa8, 0x72, 0xa5, 0xf6, 0x9a, 0xaa, 0x1c, 0x52, 0xb9, 0xa4, 0x2a, 0x87, 0x24, 0xc7, 0xfc, 0x0d, - 0xdd, 0xff, 0x40, 0x8e, 0x3e, 0xee, 0x31, 0x96, 0x2f, 0x39, 0xfa, 0x9a, 0x5b, 0x0a, 0x1f, 0xfa, - 0x01, 0xce, 0xf8, 0x90, 0x54, 0xed, 0x89, 0xec, 0x1f, 0x3e, 0xfc, 0xf0, 0x35, 0xf0, 0xbd, 0xf0, - 0x35, 0xba, 0x3c, 0x65, 0x7a, 0x9d, 0xcb, 0x0d, 0x1d, 0x4c, 0x58, 0x4c, 0x37, 0xa6, 0x4c, 0x33, - 0x31, 0xdd, 0xa0, 0x51, 0xf4, 0x54, 0x33, 0x35, 0xe5, 0x01, 0xd3, 0xeb, 0x89, 0x92, 0x46, 0xae, - 0xbc, 0xee, 0x04, 0xd7, 0x9d, 0xe0, 0xba, 0x13, 0xbc, 0x78, 0xe9, 0x67, 0xa7, 0xcb, 0xc4, 0x70, - 0x29, 0x8a, 0x99, 0x97, 0xfe, 0xe7, 0x06, 0x3a, 0x37, 0x70, 0x64, 0xed, 0x89, 0xe4, 0x01, 0x5b, - 0xf9, 0xa7, 0x26, 0x3a, 0x4b, 0x79, 0x12, 0x48, 0x21, 0x58, 0x60, 0xa4, 0xc2, 0x97, 0x49, 0xf3, - 0xca, 0xe9, 0xcd, 0x28, 0xcb, 0xf1, 0x64, 0x7e, 0x64, 0xe5, 0xa5, 0xed, 0xf6, 0xc5, 0xfd, 0x3d, - 0x1e, 0x28, 0x59, 0xe8, 0x43, 0x54, 0x2a, 0x04, 0x17, 0x63, 0x22, 0x05, 0x31, 0x13, 0x46, 0xb6, - 0xdb, 0xe4, 0x70, 0xc2, 0x83, 0x09, 0xa1, 0x51, 0x24, 0x0f, 0x35, 0xa1, 0x09, 0xd7, 0xc4, 0x48, - 0x12, 0xc8, 0x38, 0x4e, 0x05, 0x0f, 0xa8, 0x61, 0xe4, 0x90, 0x9b, 0x09, 0x69, 0xed, 0xf6, 0x48, - 0xab, 0xb7, 0x4b, 0x0a, 0x9e, 0x9d, 0x46, 0x7f, 0x7e, 0xa5, 0xaf, 0xd1, 0x02, 0x3d, 0xa0, 0x0a, - 0x37, 0x41, 0x97, 0x4e, 0x96, 0xe3, 0x5b, 0x0e, 0x01, 0x1d, 0x7e, 0x5b, 0x4e, 0x65, 0x8a, 0x8c, - 0xa4, 0x22, 0x89, 0x92, 0x47, 0x33, 0x42, 0x45, 0x48, 0xa4, 0x99, 0x30, 0x45, 0x02, 0x29, 0x46, - 0x7c, 0x9c, 0x2a, 0x6a, 0xdf, 0x9c, 0xc8, 0xe1, 0x33, 0x16, 0x18, 0xbd, 0xd3, 0xe8, 0x3b, 0x86, - 0x27, 0xe8, 0x9c, 0xfd, 0x7d, 0xaa, 0x18, 0x0d, 0xa5, 0x88, 0x66, 0xf8, 0x0a, 0x2c, 0xf2, 0x49, - 0x96, 0xe3, 0xf5, 0x63, 0x43, 0xb0, 0xda, 0x5b, 0xf6, 0x69, 0xcd, 0x3e, 0x12, 0xc5, 0x92, 0x88, - 0x07, 0x94, 0xc8, 0x11, 0xb1, 0x72, 0xa0, 0xf6, 0x01, 0x55, 0xfd, 0x52, 0xbc, 0x8f, 0xce, 0xc3, - 0xfc, 0x50, 0xe8, 0x50, 0xc6, 0x94, 0x0b, 0x7c, 0x15, 0xb8, 0xaf, 0x66, 0x39, 0xfe, 0xd5, 0xf1, - 0x31, 0x20, 0xbf, 0x60, 0x31, 0xd2, 0xb9, 0x37, 0x20, 0x0e, 0xdc, 0x69, 0xf4, 0x41, 0x85, 0x4e, - 0x25, 0xb5, 0x8f, 0x16, 0xa8, 0x62, 0x1a, 0xbf, 0x04, 0x4c, 0x37, 0xb3, 0x1c, 0x7f, 0xe5, 0x90, - 0x95, 0x97, 0xfa, 0xdd, 0x8b, 0xeb, 0x2d, 0xa2, 0x64, 0x6a, 0xec, 0x19, 0x94, 0x67, 0xc2, 0xc4, - 0x98, 0x0b, 0x06, 0x1b, 0xc3, 0x8e, 0x82, 0x09, 0xb5, 0x8f, 0x63, 0x90, 0x62, 0x6e, 0x13, 0xec, - 0xdc, 0x3e, 0x5a, 0xa4, 0x3a, 0x61, 0x02, 0x7f, 0x08, 0xb4, 0x5f, 0x65, 0x39, 0xfe, 0xac, 0x80, - 0x2c, 0xef, 0xca, 0x4b, 0xed, 0xee, 0xc5, 0x5f, 0xb5, 0x12, 0x4e, 0x06, 0x09, 0x0b, 0xf8, 0xc8, - 0x1e, 0x9d, 0xdd, 0xcb, 0xae, 0x18, 0x49, 0x15, 0xb0, 0x98, 0x09, 0xe3, 0x9d, 0x5d, 0x31, 0x6f, - 0x1b, 0x2d, 0x53, 0x6d, 0x98, 0xe2, 0x47, 0x78, 0x01, 0x58, 0x3f, 0xca, 0x72, 0x7c, 0xb9, 0x02, - 0xe1, 0x7d, 0x71, 0x87, 0x1a, 0x4a, 0xee, 0x32, 0xaa, 0xc0, 0x6e, 0xea, 0x83, 0xdc, 0x69, 0xf4, - 0x2b, 0xc1, 0x3b, 0x68, 0x89, 0x9a, 0x09, 0x13, 0x14, 0x2f, 0x01, 0xcf, 0xc7, 0x59, 0x8e, 0xd7, - 0x4a, 0x0c, 0x68, 0xde, 0x6b, 0x45, 0x4c, 0x19, 0xb2, 0x47, 0x05, 0x1d, 0x57, 0x07, 0x6e, 0x7f, - 0x8c, 0x92, 0x51, 0x04, 0x6c, 0xa5, 0xf8, 0x2d, 0x74, 0x86, 0xa6, 0x46, 0xc6, 0xd4, 0xf0, 0x23, - 0xbc, 0x0c, 0x7c, 0x24, 0xcb, 0xf1, 0x3b, 0x1e, 0x0c, 0x94, 0x2f, 0x3f, 0x6a, 0x6d, 0x95, 0x84, - 0x3b, 0x8d, 0xbe, 0x37, 0x3a, 0x43, 0x67, 0x86, 0x54, 0x29, 0x1a, 0xa4, 0x86, 0xe1, 0xd3, 0xc0, - 0xf0, 0x24, 0xcb, 0xf1, 0x03, 0x0f, 0x06, 0x86, 0xce, 0x6d, 0x39, 0xb4, 0xb6, 0x18, 0x30, 0xad, - 0xc1, 0x1a, 0x85, 0x54, 0x31, 0x8d, 0xf8, 0x73, 0x46, 0x0c, 0x13, 0x54, 0x18, 0x92, 0x6a, 0x3a, - 0x66, 0x24, 0xb4, 0x5b, 0x60, 0xc7, 0x29, 0x09, 0x29, 0x8b, 0xad, 0xef, 0x48, 0xb7, 0x0b, 0x84, - 0x1b, 0xbb, 0x74, 0x4d, 0xfb, 0x2f, 0x4d, 0xb4, 0x3c, 0x0c, 0x87, 0xec, 0x90, 0x8e, 0xf0, 0x35, - 0x58, 0xf9, 0xef, 0xb2, 0x1c, 0x3f, 0xaf, 0x40, 0xbb, 0xae, 0x3d, 0x2b, 0xb0, 0x85, 0xe0, 0x51, - 0xab, 0xd5, 0xfb, 0x8a, 0xdc, 0xdb, 0xde, 0xbd, 0xf7, 0x98, 0xb4, 0x92, 0x84, 0xf4, 0x94, 0x34, - 0x2c, 0x30, 0xe4, 0xca, 0xd6, 0x75, 0xb2, 0xb9, 0xbb, 0xbd, 0xb6, 0xdb, 0x23, 0x8f, 0x5a, 0x5b, - 0x57, 0x7d, 0x0b, 0xa1, 0x82, 0x46, 0xb3, 0xe7, 0xf6, 0x28, 0x8c, 0xa2, 0xa3, 0x11, 0x0f, 0x40, - 0xb1, 0x98, 0x9a, 0x60, 0x62, 0x41, 0x6a, 0x0c, 0x0d, 0x0e, 0x88, 0xe6, 0x63, 0x41, 0x4d, 0xaa, - 0xc0, 0x80, 0xaa, 0xb5, 0xaf, 0xa2, 0x85, 0xe1, 0x28, 0x4c, 0xf0, 0x1a, 0x28, 0xf6, 0x5a, 0x96, - 0xe3, 0x0b, 0x0e, 0x81, 0xdd, 0x38, 0xb5, 0xbf, 0xd9, 0xb1, 0xe6, 0x06, 0xc0, 0x63, 0xb4, 0x3c, - 0xe4, 0x23, 0x25, 0xb5, 0xc1, 0xeb, 0x20, 0xfd, 0x57, 0x59, 0x8e, 0xbf, 0xa8, 0x40, 0x98, 0x70, - 0xb5, 0x45, 0x86, 0x8a, 0x87, 0x63, 0x46, 0x46, 0x4a, 0xc6, 0x64, 0x2a, 0x23, 0xc3, 0x94, 0xa2, - 0x2e, 0x88, 0x70, 0x61, 0x24, 0xb8, 0x89, 0x7d, 0x02, 0x25, 0x8a, 0x99, 0xf6, 0x14, 0x22, 0x2e, - 0xc2, 0x91, 0x8c, 0x42, 0x7c, 0x06, 0xb8, 0xaf, 0x67, 0x39, 0xfe, 0xd8, 0x83, 0x81, 0x9d, 0x0c, - 0x58, 0xa0, 0x98, 0x29, 0xf7, 0xc4, 0x1a, 0xb3, 0x7d, 0x53, 0x77, 0xe0, 0xd6, 0x9e, 0x61, 0xe3, - 0xab, 0x29, 0xd7, 0xd1, 0xc2, 0x50, 0x46, 0x06, 0x23, 0x60, 0x7c, 0x2f, 0xcb, 0xf1, 0xdb, 0x0e, - 0x71, 0x5e, 0x0b, 0x56, 0x6c, 0x8d, 0x77, 0x50, 0x1a, 0xaf, 0x1b, 0x7c, 0x86, 0xce, 0x0c, 0xed, - 0x99, 0x33, 0x65, 0x34, 0xde, 0x80, 0xb9, 0xb7, 0xb3, 0x1c, 0x6f, 0x79, 0x30, 0x10, 0x5c, 0x6f, - 0xa7, 0xda, 0xc8, 0x98, 0x29, 0xb2, 0x45, 0x03, 0x70, 0x04, 0x18, 0xb3, 0x81, 0x65, 0xb3, 0xbf, - 0x67, 0x8d, 0x28, 0x4c, 0x03, 0xfb, 0x2c, 0xc8, 0xe3, 0x36, 0x49, 0x22, 0x6a, 0x46, 0x52, 0xc5, - 0xa0, 0x62, 0xc5, 0x93, 0xa0, 0x0b, 0x41, 0x28, 0xaa, 0x98, 0xa9, 0xa7, 0x01, 0xfe, 0x8d, 0x17, - 0x2e, 0x8f, 0x0f, 0xba, 0x3d, 0x6e, 0x97, 0x08, 0x29, 0xb2, 0x00, 0x58, 0x41, 0xbb, 0x73, 0xcf, - 0xae, 0xf9, 0x0c, 0x8c, 0x25, 0xe2, 0x11, 0x0d, 0xae, 0xee, 0x34, 0xfa, 0x27, 0x18, 0xb6, 0x10, - 0x0a, 0x26, 0x54, 0xc5, 0x54, 0x84, 0x4c, 0xe1, 0x97, 0x61, 0xb1, 0x5f, 0x66, 0x39, 0x26, 0x3e, - 0x0e, 0xeb, 0x9c, 0x1f, 0xf4, 0xbb, 0x76, 0xab, 0xc7, 0x8a, 0xc6, 0x31, 0xec, 0x8f, 0x2f, 0x31, - 0x44, 0xe7, 0xea, 0xa7, 0x80, 0x2a, 0x7c, 0xd6, 0x0b, 0x42, 0xf3, 0x43, 0xc0, 0xf6, 0xbe, 0x65, - 0x6b, 0xfb, 0x30, 0xd1, 0x3c, 0x64, 0xf0, 0x5b, 0x05, 0xa1, 0x63, 0xf3, 0xfe, 0xb5, 0x89, 0x5e, - 0x0b, 0x22, 0xce, 0x84, 0x79, 0x6a, 0x65, 0x9f, 0x86, 0x6c, 0xc4, 0x84, 0x66, 0xf8, 0x63, 0x2f, - 0xbb, 0xfd, 0x9c, 0x00, 0x2c, 0xb8, 0xd7, 0x83, 0x8c, 0x52, 0x46, 0x54, 0xc8, 0x66, 0xf6, 0x94, - 0x1e, 0xca, 0xc8, 0xb4, 0xa5, 0xd0, 0x32, 0x62, 0xd6, 0x67, 0x69, 0x00, 0xae, 0x3e, 0x98, 0xd0, - 0x84, 0x5d, 0xd6, 0xc4, 0xb1, 0xad, 0x59, 0x36, 0x52, 0xb0, 0x59, 0x1b, 0xb1, 0xe6, 0xfa, 0xaa, - 0x1b, 0x1b, 0xf0, 0x90, 0x75, 0x8a, 0x75, 0x66, 0x68, 0x39, 0x90, 0x22, 0x51, 0x72, 0x84, 0xff, - 0x1a, 0x74, 0xfa, 0x63, 0x96, 0xe3, 0x27, 0x15, 0xe8, 0x3c, 0xbb, 0xdf, 0xbd, 0xb8, 0xd5, 0x96, - 0xc2, 0x70, 0x91, 0xca, 0x54, 0xdb, 0x33, 0x1a, 0xf1, 0xc8, 0x6a, 0x02, 0x69, 0x8f, 0x29, 0x6b, - 0x15, 0x54, 0x58, 0x15, 0xad, 0x1f, 0x6b, 0x0e, 0x16, 0xd4, 0xee, 0x3d, 0xb8, 0x46, 0x62, 0x16, - 0x4b, 0x35, 0x23, 0xd2, 0xe6, 0x48, 0xc3, 0x63, 0xbb, 0x43, 0x15, 0xf5, 0xbf, 0x35, 0xd1, 0xb9, - 0x50, 0xea, 0x3a, 0x5c, 0xe2, 0x4f, 0x40, 0x83, 0xc3, 0x2c, 0xc7, 0xfa, 0xd8, 0x10, 0xec, 0xc7, - 0xb7, 0xbe, 0xb1, 0xd0, 0xf1, 0x58, 0xb1, 0x31, 0x85, 0x9c, 0xd3, 0xe9, 0xc8, 0x01, 0xd1, 0x2c, - 0x48, 0x15, 0x37, 0x33, 0xc2, 0xa6, 0x4c, 0x18, 0x17, 0xfa, 0xc6, 0x4c, 0x30, 0xe5, 0x64, 0xca, - 0x40, 0x1a, 0x38, 0xe9, 0x98, 0x1b, 0x3e, 0x76, 0xd9, 0x24, 0x91, 0x11, 0x0f, 0x38, 0x04, 0x95, - 0x63, 0x8b, 0x32, 0xb4, 0x14, 0x2a, 0x39, 0x96, 0x02, 0x9f, 0x03, 0xcd, 0xee, 0x64, 0x39, 0xde, - 0x2e, 0x31, 0x50, 0xe9, 0xcb, 0xd2, 0xba, 0xec, 0x12, 0xa9, 0xb6, 0x49, 0x40, 0x31, 0x6a, 0x58, - 0x48, 0x0e, 0xbe, 0xd0, 0x65, 0xce, 0x2f, 0x22, 0x89, 0x45, 0x68, 0xc2, 0xeb, 0x4c, 0x53, 0x12, - 0x3d, 0x42, 0x0b, 0xe1, 0x2c, 0x96, 0xf8, 0x1b, 0x58, 0xa4, 0x95, 0xe5, 0xf8, 0x77, 0x0e, 0x29, - 0x77, 0x1f, 0xf2, 0xe0, 0xd5, 0x3d, 0x66, 0x14, 0x0f, 0x34, 0x49, 0x52, 0x3d, 0x59, 0x1b, 0x53, - 0xc3, 0x0e, 0xe9, 0xac, 0x28, 0x3a, 0x8a, 0xf2, 0x23, 0x66, 0x66, 0xc2, 0x52, 0x48, 0xaf, 0x30, - 0x9d, 0xa2, 0x05, 0x36, 0x3b, 0xa4, 0xf8, 0xbc, 0xa7, 0x3d, 0x20, 0xa0, 0xfb, 0x8d, 0x07, 0x56, - 0x5f, 0x1a, 0x04, 0x32, 0x15, 0x86, 0xc4, 0x55, 0x08, 0xba, 0x46, 0x1e, 0xb4, 0xf6, 0xae, 0x11, - 0x29, 0xd6, 0x86, 0x92, 0xaa, 0x10, 0x36, 0x4f, 0x84, 0xf3, 0xe5, 0x8c, 0x5d, 0x02, 0x88, 0x1e, - 0xa2, 0x73, 0xf6, 0xb7, 0x2e, 0x63, 0x3e, 0x85, 0xb5, 0x36, 0xb2, 0x1c, 0x7f, 0x74, 0x6c, 0x08, - 0x16, 0x7d, 0xd3, 0x42, 0xc4, 0x42, 0xc4, 0xaf, 0x65, 0x6c, 0x0d, 0x63, 0x47, 0xaa, 0x1a, 0xe6, - 0xef, 0x9b, 0xe8, 0x8c, 0x05, 0x12, 0xc5, 0x63, 0x86, 0x7f, 0x0b, 0xa4, 0x3c, 0xcb, 0x31, 0xf3, - 0x60, 0x57, 0x09, 0x76, 0xcb, 0x47, 0xa2, 0xb9, 0xb1, 0x21, 0x1a, 0x6a, 0xc0, 0x18, 0xb2, 0x38, - 0x09, 0xa2, 0x14, 0x7e, 0xed, 0x0b, 0x4c, 0x58, 0x94, 0x68, 0xc2, 0x04, 0x1d, 0x46, 0x8c, 0x0c, - 0x28, 0xd5, 0xb0, 0x6d, 0x56, 0xf8, 0x61, 0x19, 0xe4, 0xfd, 0x10, 0x57, 0x2f, 0xf3, 0x0c, 0xad, - 0x54, 0x0f, 0xf5, 0x8b, 0x5e, 0x07, 0x9d, 0xbe, 0xcc, 0x72, 0x7c, 0xfd, 0xe7, 0xc6, 0x41, 0xb9, - 0xb7, 0x6b, 0xe5, 0x4e, 0x94, 0x6f, 0xd6, 0x1f, 0xab, 0x69, 0xd5, 0x7b, 0xdf, 0x44, 0x4b, 0x63, - 0x2a, 0xc6, 0x4c, 0xe3, 0xcf, 0xbc, 0xc0, 0x56, 0x60, 0x55, 0x8e, 0x3d, 0xbf, 0x15, 0xc9, 0x43, - 0x12, 0x58, 0x2b, 0xb5, 0x51, 0xd1, 0xda, 0x52, 0x21, 0xb1, 0x8b, 0x96, 0xc7, 0x8a, 0x8f, 0x46, - 0x5c, 0xe0, 0x0b, 0x40, 0xb0, 0x96, 0xe5, 0xf8, 0x6a, 0x05, 0x82, 0x56, 0x17, 0x07, 0xdc, 0xb0, - 0xaa, 0x6a, 0xd9, 0x4a, 0x05, 0x24, 0x22, 0x1a, 0x71, 0x33, 0xb3, 0xfe, 0x59, 0x8a, 0x7e, 0x87, - 0x96, 0x26, 0x2c, 0x8a, 0xa8, 0xc6, 0xef, 0x03, 0xd3, 0x30, 0xcb, 0xf1, 0xb7, 0x25, 0x06, 0x26, - 0xd9, 0xdb, 0x97, 0x89, 0x8c, 0xe4, 0x78, 0xe6, 0xd5, 0x3c, 0x45, 0xe9, 0x9d, 0x38, 0xbf, 0xb0, - 0x75, 0x77, 0x21, 0x32, 0xa4, 0x9a, 0x85, 0x84, 0x0b, 0x08, 0x16, 0xe0, 0x78, 0x46, 0x92, 0x48, - 0x06, 0x34, 0x2a, 0xab, 0x15, 0x70, 0xc1, 0x92, 0x7f, 0x84, 0x96, 0x39, 0x4d, 0x98, 0x49, 0x35, - 0xfe, 0xdc, 0xcb, 0x60, 0x25, 0x58, 0x05, 0xa6, 0x4f, 0xfd, 0xa0, 0x90, 0x78, 0xde, 0x58, 0xfb, - 0x03, 0x71, 0xa9, 0x0a, 0x8c, 0x40, 0xa5, 0x91, 0x2b, 0x1f, 0x4a, 0x9e, 0x19, 0x7a, 0x95, 0x87, - 0x4c, 0x18, 0x6e, 0x66, 0x34, 0x35, 0x13, 0x69, 0x43, 0x08, 0x7e, 0x05, 0x56, 0xdc, 0xcd, 0x72, - 0xdc, 0xfd, 0x99, 0x61, 0xd8, 0xc4, 0x6b, 0xbb, 0x05, 0x6c, 0x13, 0xcc, 0x94, 0x6b, 0x2e, 0x45, - 0xe9, 0x29, 0xb5, 0x2b, 0x95, 0xe9, 0xcd, 0x9e, 0xf5, 0x49, 0x9a, 0x3d, 0x74, 0x8a, 0x27, 0x09, - 0xfe, 0xc2, 0x33, 0x24, 0x0b, 0x00, 0xfd, 0x87, 0x3b, 0xfb, 0xfb, 0x3d, 0x32, 0xe2, 0xd6, 0x30, - 0x6d, 0x60, 0x09, 0xe1, 0xfd, 0xca, 0x54, 0xc0, 0xed, 0x6e, 0xeb, 0xc4, 0x55, 0x10, 0x3b, 0x8d, - 0x3e, 0x4c, 0xfb, 0x06, 0x2d, 0xf1, 0x24, 0x09, 0xd9, 0x14, 0xdf, 0xf0, 0x02, 0x49, 0x81, 0x01, - 0xe9, 0x46, 0x87, 0x4d, 0x59, 0x24, 0x13, 0x50, 0x8d, 0x0b, 0x6d, 0x20, 0x68, 0x83, 0x17, 0x30, - 0x0d, 0x51, 0x12, 0x0a, 0x75, 0x06, 0xb7, 0x25, 0x9e, 0x24, 0xf6, 0x38, 0x8a, 0xe9, 0xb7, 0xd1, - 0x32, 0x4f, 0x12, 0xbb, 0xa7, 0xf8, 0x26, 0xb0, 0xaf, 0x67, 0x39, 0xfe, 0xb0, 0x02, 0x9d, 0xb5, - 0xf7, 0xea, 0x2d, 0xaf, 0xd8, 0xe5, 0x88, 0xec, 0xf6, 0x7a, 0x04, 0xb6, 0xbc, 0x90, 0xed, 0xa0, - 0xc5, 0x67, 0x52, 0xb3, 0x11, 0x6e, 0x01, 0xd3, 0xb5, 0x2c, 0xc7, 0x57, 0x0a, 0xc8, 0xf1, 0xb4, - 0xaa, 0x17, 0xb5, 0xba, 0x05, 0x91, 0x4c, 0x43, 0xa2, 0x8d, 0x54, 0x74, 0x0c, 0x75, 0xbe, 0x93, - 0xbc, 0x89, 0x96, 0x0e, 0x82, 0x30, 0x4e, 0x8f, 0xf0, 0xa6, 0xef, 0x29, 0x0e, 0x03, 0x9e, 0x95, - 0x0e, 0xdb, 0x4b, 0x8f, 0x80, 0xe3, 0x0e, 0x9b, 0xb5, 0x23, 0x49, 0x0f, 0xec, 0x1b, 0x15, 0x12, - 0x14, 0x5d, 0x70, 0xff, 0x6a, 0x97, 0x6e, 0x03, 0xd1, 0x67, 0x59, 0x8e, 0x3f, 0x39, 0x31, 0xe8, - 0x34, 0x3b, 0x11, 0xb8, 0xec, 0xfb, 0x39, 0xc9, 0x9d, 0x46, 0xff, 0xbc, 0xfb, 0xe7, 0x39, 0xf3, - 0xe2, 0x01, 0x9b, 0x25, 0x0a, 0xbf, 0x0a, 0xc4, 0xbf, 0xce, 0x72, 0x7c, 0xa9, 0x80, 0x80, 0xee, - 0x8d, 0x3b, 0x6c, 0xe6, 0xd5, 0x7e, 0x64, 0x30, 0xd3, 0x86, 0xd9, 0xe0, 0x53, 0xc8, 0xdc, 0x47, - 0x08, 0xca, 0xa0, 0xa7, 0x2c, 0x1c, 0x33, 0xfc, 0x4b, 0x6f, 0xdf, 0x1d, 0xbe, 0x66, 0xf1, 0x2a, - 0x41, 0xbc, 0x7e, 0xd7, 0x62, 0x50, 0x45, 0x41, 0x6d, 0x9f, 0x44, 0x54, 0xd8, 0xfd, 0x3a, 0x03, - 0xb2, 0x5d, 0x2b, 0x2a, 0xd0, 0x42, 0x4c, 0x95, 0xc6, 0x1d, 0xa0, 0x7a, 0x9c, 0xe5, 0x78, 0xdf, - 0x21, 0x95, 0x3b, 0x75, 0x4a, 0x77, 0x72, 0xee, 0x2a, 0x05, 0xd9, 0xdc, 0xee, 0x95, 0xbe, 0x95, - 0x50, 0x97, 0x70, 0x37, 0xf4, 0x4c, 0x40, 0xbd, 0x58, 0x26, 0x38, 0x6a, 0x2f, 0xe3, 0xba, 0x3c, - 0x35, 0x48, 0x40, 0xc0, 0xba, 0x85, 0x96, 0x63, 0x9a, 0x2a, 0x1e, 0x30, 0xbc, 0x02, 0x4b, 0x7e, - 0x98, 0xe5, 0xf8, 0xd7, 0x15, 0x08, 0x9b, 0xf0, 0x8b, 0x87, 0x3d, 0xd2, 0x0a, 0x63, 0xae, 0xad, - 0x0b, 0xcd, 0x5f, 0x9e, 0x2a, 0xb9, 0x5b, 0x68, 0x39, 0xe6, 0x82, 0xa9, 0x29, 0xc5, 0x5d, 0xef, - 0xb0, 0x4b, 0x10, 0x78, 0x5e, 0xed, 0xb3, 0x44, 0x2a, 0xb0, 0xe2, 0xda, 0xeb, 0x2a, 0x89, 0xbb, - 0x68, 0x49, 0x8c, 0xa6, 0xb6, 0x3a, 0xbd, 0xe4, 0xdd, 0xb3, 0x0b, 0x0c, 0xb6, 0x8f, 0x74, 0x8f, - 0x0c, 0x53, 0x82, 0x46, 0xe5, 0x74, 0x4d, 0x3a, 0x2c, 0x89, 0xe4, 0x0c, 0x8e, 0xe6, 0xb6, 0x1c, - 0x5a, 0xdb, 0x29, 0xe4, 0xff, 0xb9, 0x89, 0xce, 0x8a, 0x58, 0xd7, 0xdd, 0x8a, 0x2d, 0x20, 0xfd, - 0xdb, 0x2c, 0xc7, 0xf1, 0xfc, 0x08, 0xa8, 0xf6, 0xc4, 0x5d, 0x86, 0xfc, 0x93, 0x4e, 0x6d, 0x08, - 0xa6, 0x9a, 0xd0, 0xaa, 0x02, 0x5e, 0x23, 0x75, 0x55, 0xcc, 0x85, 0x61, 0x6a, 0x44, 0xed, 0x31, - 0x30, 0x73, 0xc8, 0x98, 0x20, 0x5b, 0xd7, 0x1f, 0xb7, 0x21, 0xb8, 0xdc, 0xdb, 0x1b, 0x50, 0x3a, - 0x20, 0x43, 0x1a, 0x1c, 0x30, 0x11, 0xda, 0xbc, 0x39, 0xb7, 0xdc, 0x3d, 0x74, 0x5a, 0xc4, 0x1a, - 0xaa, 0x02, 0xbc, 0x0d, 0x4a, 0xfd, 0x26, 0xcb, 0xf1, 0xb5, 0x1a, 0x05, 0x85, 0xde, 0x71, 0x0a, - 0x79, 0x81, 0x4a, 0x83, 0x42, 0x20, 0xb1, 0xd3, 0xe8, 0xd7, 0xd2, 0x03, 0xb4, 0x24, 0x87, 0x2c, - 0xe2, 0x47, 0xf8, 0x35, 0x2f, 0x4c, 0x15, 0xd8, 0xdc, 0xbd, 0xef, 0xbd, 0x2a, 0x8b, 0xc2, 0xb5, - 0x64, 0x57, 0x94, 0xf1, 0x89, 0x74, 0xe1, 0xa2, 0x67, 0xb7, 0xaf, 0x98, 0xf6, 0x14, 0x9d, 0x96, - 0x81, 0x4e, 0xe2, 0x34, 0x62, 0xf8, 0x75, 0x2f, 0x56, 0x55, 0x28, 0x28, 0xb9, 0xd6, 0xb2, 0x66, - 0x36, 0x51, 0x52, 0xd8, 0xa2, 0xf3, 0x7e, 0x7b, 0xd0, 0x23, 0x8a, 0xe9, 0x44, 0xda, 0x82, 0x36, - 0xa6, 0x5c, 0x18, 0x6a, 0xcf, 0xd6, 0x3b, 0xec, 0x7a, 0x3a, 0x43, 0xcb, 0x32, 0x9a, 0xc5, 0x49, - 0xaa, 0xf1, 0x8e, 0x17, 0xca, 0x4b, 0x10, 0xe8, 0x3f, 0x6b, 0x43, 0x5c, 0xa9, 0xf2, 0x93, 0x9f, - 0x99, 0xaa, 0xcc, 0xea, 0x45, 0xdc, 0xa2, 0xb5, 0x64, 0x8d, 0xaa, 0xa4, 0xd9, 0x42, 0x8b, 0x32, - 0x61, 0x8a, 0xe2, 0x37, 0x3c, 0xd7, 0x74, 0xd0, 0x5c, 0xe9, 0xf6, 0x46, 0xb5, 0x35, 0x3d, 0x5b, - 0x6b, 0xce, 0x48, 0x6b, 0xec, 0xae, 0x7a, 0x85, 0x6c, 0x07, 0x2d, 0x25, 0x13, 0x39, 0x94, 0x1a, - 0xef, 0x7a, 0x5e, 0x52, 0x60, 0xc0, 0x80, 0x2b, 0x86, 0x7e, 0xd1, 0x67, 0xa9, 0x5f, 0xbb, 0x94, - 0xfb, 0x1d, 0x5a, 0x4e, 0xf8, 0x01, 0x0d, 0x26, 0x29, 0x7e, 0x13, 0x68, 0xde, 0xcf, 0x72, 0xfc, - 0x6e, 0x05, 0xd6, 0x37, 0xa2, 0xb6, 0xeb, 0x53, 0xb4, 0x7a, 0xbb, 0xf6, 0x65, 0xca, 0xe1, 0x5d, - 0xb4, 0x90, 0xf0, 0x83, 0x14, 0xdf, 0x86, 0xb9, 0x9f, 0x66, 0x39, 0xde, 0x70, 0x08, 0x28, 0xf0, - 0x41, 0x32, 0x99, 0x69, 0x6e, 0x93, 0xb5, 0x5f, 0xd8, 0x4e, 0xa8, 0x08, 0x6d, 0xce, 0xe7, 0x82, - 0xb4, 0xbb, 0xe0, 0xf6, 0x30, 0x21, 0x46, 0x28, 0x39, 0xe0, 0x23, 0x6a, 0x77, 0x70, 0x86, 0x7f, - 0xe1, 0x55, 0x9f, 0x1e, 0xee, 0x6e, 0xa0, 0x9b, 0x29, 0x8f, 0x42, 0x12, 0xc0, 0x3d, 0x94, 0xf4, - 0xee, 0xec, 0x92, 0x09, 0x67, 0x8a, 0xaa, 0x60, 0xc2, 0x99, 0x4b, 0xd8, 0x31, 0x17, 0x2e, 0x33, - 0x31, 0x65, 0x5c, 0x07, 0x08, 0xe2, 0x8b, 0x4f, 0xd4, 0x47, 0x8b, 0x49, 0x94, 0x1a, 0x89, 0xef, - 0xf8, 0x5d, 0x24, 0x80, 0xdc, 0x75, 0x73, 0x9f, 0x45, 0x2c, 0x66, 0x46, 0xcd, 0xe6, 0xf2, 0x4a, - 0x5c, 0xd4, 0xd3, 0x76, 0x95, 0x21, 0x8f, 0xec, 0x85, 0xc6, 0x1e, 0x89, 0x9b, 0xd7, 0x46, 0x8b, - 0x89, 0x14, 0x52, 0xe3, 0xbb, 0x5e, 0x0f, 0xc9, 0x41, 0x55, 0xac, 0x7c, 0xb3, 0xac, 0xc8, 0x6d, - 0xc0, 0x4a, 0x13, 0xbf, 0x15, 0xe5, 0x04, 0xbf, 0x44, 0x8b, 0x89, 0xe2, 0x3a, 0xc6, 0x7b, 0xde, - 0x79, 0x38, 0x08, 0x14, 0x7b, 0x65, 0x74, 0xfd, 0x28, 0x80, 0x0b, 0xfc, 0xb6, 0x2b, 0xe7, 0x61, - 0x2a, 0x0c, 0xb7, 0x11, 0x82, 0x3f, 0xae, 0xfe, 0xbd, 0xe7, 0xcd, 0xf7, 0x70, 0xd7, 0x31, 0xea, - 0xd9, 0x67, 0x02, 0x00, 0x6c, 0x4c, 0x3d, 0xbc, 0x6f, 0x85, 0xcb, 0x94, 0x8c, 0x1f, 0x7b, 0x81, - 0xcf, 0xc3, 0x5d, 0x40, 0xf0, 0xaa, 0x25, 0xb7, 0x2f, 0xa5, 0x0f, 0xb8, 0x02, 0xc3, 0x97, 0x0f, - 0xd1, 0xe9, 0x44, 0x49, 0xc3, 0x0e, 0x0c, 0xc7, 0xf7, 0x81, 0x73, 0x2b, 0xcb, 0xf1, 0x66, 0x8d, - 0x02, 0xe3, 0x27, 0x45, 0x24, 0x77, 0x69, 0x68, 0x6e, 0xe3, 0x5b, 0x81, 0x54, 0xa9, 0x26, 0x47, - 0x65, 0x63, 0xc8, 0x4b, 0x1b, 0x35, 0xc7, 0x4d, 0xb4, 0xa8, 0xa0, 0xf9, 0x8a, 0xfd, 0xdc, 0xa9, - 0x5c, 0xf7, 0xb5, 0xdf, 0xbd, 0xf8, 0xc6, 0x5d, 0x28, 0x1d, 0xa1, 0x94, 0x6d, 0xfb, 0x49, 0xa3, - 0x90, 0xb9, 0x8f, 0x96, 0x15, 0x35, 0xc1, 0x84, 0x19, 0xfc, 0x47, 0xcf, 0xa2, 0x4b, 0xf0, 0xff, - 0x1c, 0xf2, 0xab, 0x09, 0x7f, 0x83, 0x16, 0x95, 0x8c, 0xd8, 0x11, 0xee, 0x01, 0xdd, 0x4e, 0x96, - 0xe3, 0x4e, 0x01, 0xc1, 0x0b, 0x7f, 0xee, 0x17, 0xa2, 0x65, 0x7c, 0x2a, 0xaf, 0x85, 0x6b, 0x56, - 0x8e, 0xc4, 0x34, 0x49, 0xca, 0x6b, 0x33, 0x8b, 0xed, 0x42, 0x0c, 0xde, 0xba, 0x60, 0xf9, 0x03, - 0x5a, 0xd0, 0x01, 0x8f, 0xf1, 0x07, 0xb0, 0xc0, 0x8d, 0x2c, 0xc7, 0x9f, 0x3b, 0x04, 0xf8, 0x3f, - 0x72, 0xd5, 0x81, 0xeb, 0x94, 0xd8, 0x74, 0xbb, 0xd6, 0x81, 0xd6, 0x2c, 0xa9, 0x0a, 0xd1, 0xb9, - 0x2e, 0x92, 0x9b, 0xf8, 0x1c, 0x9d, 0xd2, 0x2c, 0xc4, 0x7f, 0x00, 0xc6, 0x51, 0x96, 0xe3, 0x21, - 0x00, 0x40, 0xf8, 0x08, 0x7a, 0xe8, 0x6b, 0xc7, 0x9b, 0xe8, 0xfc, 0xff, 0xd9, 0x44, 0xd7, 0x13, - 0x9a, 0xb0, 0x63, 0x6d, 0x74, 0x58, 0xa3, 0x8b, 0x4e, 0x6b, 0xab, 0x99, 0x60, 0x11, 0xee, 0x83, - 0x02, 0x97, 0xb3, 0x1c, 0x7f, 0x50, 0xa3, 0xa0, 0xc5, 0x6b, 0xa2, 0x38, 0x82, 0x79, 0x37, 0xa8, - 0x85, 0x6e, 0xa1, 0xd3, 0x90, 0x49, 0x54, 0x1a, 0xe3, 0x01, 0xd0, 0x5c, 0xca, 0x72, 0xbc, 0x5a, - 0xa3, 0x2e, 0xb0, 0xd9, 0xb0, 0x34, 0xd7, 0x0a, 0xab, 0xc7, 0xef, 0xa2, 0xb3, 0x9a, 0x1b, 0xf6, - 0x34, 0x70, 0x3d, 0x13, 0xfc, 0x96, 0xa7, 0xcc, 0xcb, 0x76, 0xa4, 0x68, 0xa6, 0x54, 0xf1, 0xfa, - 0x2c, 0x58, 0x55, 0x21, 0xbe, 0xd3, 0xe8, 0xcf, 0x09, 0x75, 0xd1, 0x92, 0x36, 0x8a, 0xd1, 0x03, - 0xbc, 0xef, 0x85, 0x86, 0x02, 0x73, 0xad, 0xfa, 0x81, 0xa1, 0xc6, 0x5e, 0x3b, 0x8a, 0x16, 0x85, - 0xf4, 0x1b, 0x44, 0xa5, 0xe0, 0x37, 0xe8, 0xac, 0x49, 0xe2, 0xfa, 0xca, 0xf1, 0xc8, 0x6b, 0x1a, - 0xce, 0x8d, 0x00, 0xe5, 0xbb, 0xc7, 0x6e, 0x39, 0xf5, 0x85, 0x63, 0xbf, 0xb7, 0x67, 0x4d, 0x68, - 0x7e, 0x8a, 0x44, 0x17, 0x8a, 0x46, 0x2a, 0x05, 0x0f, 0x66, 0x0a, 0x3f, 0x00, 0xfe, 0x76, 0x96, - 0xe3, 0xdf, 0x9f, 0x18, 0x04, 0x87, 0xba, 0xd2, 0x1a, 0x54, 0x4d, 0x7c, 0x1a, 0x4e, 0x6d, 0xb8, - 0xd5, 0x60, 0x4c, 0x2e, 0x42, 0xda, 0xb3, 0x0e, 0x15, 0x3d, 0x8c, 0xec, 0x6a, 0x27, 0x08, 0x7e, - 0x8f, 0x16, 0xa6, 0x6c, 0x4c, 0xf1, 0x45, 0xef, 0x43, 0x03, 0x20, 0x75, 0x0e, 0x6c, 0xcf, 0xc5, - 0x03, 0xfb, 0x1e, 0x0f, 0xbb, 0x7d, 0x6b, 0xa8, 0x20, 0x76, 0x03, 0x9d, 0x9a, 0x32, 0x85, 0x1f, - 0x7a, 0x47, 0x63, 0x81, 0xba, 0xb8, 0xad, 0x12, 0xa0, 0x2d, 0x64, 0x21, 0x0b, 0xc2, 0x29, 0x83, - 0xd0, 0x77, 0xe8, 0xc2, 0x94, 0xd3, 0xa7, 0x34, 0xe1, 0xe5, 0x27, 0x2a, 0xfc, 0x04, 0x88, 0xfa, - 0x59, 0x8e, 0xef, 0x9d, 0x18, 0x74, 0xee, 0xba, 0x03, 0xb9, 0x4b, 0x93, 0x76, 0xff, 0x41, 0xc7, - 0x35, 0x38, 0x5c, 0x12, 0x6a, 0xf5, 0x76, 0x5d, 0x67, 0xe0, 0xfe, 0xd0, 0xca, 0xd3, 0x21, 0xb7, - 0x17, 0xe3, 0xf2, 0x04, 0xd7, 0x77, 0x1a, 0xfd, 0x73, 0x53, 0x4e, 0x5b, 0x09, 0x2f, 0x8e, 0x64, - 0xe5, 0xdf, 0x9b, 0xe8, 0xec, 0x94, 0xd3, 0xba, 0x18, 0xfc, 0x1a, 0xd6, 0x7e, 0x9e, 0xe5, 0x78, - 0x3a, 0x3f, 0x02, 0x0b, 0x0f, 0xff, 0x32, 0x9f, 0xae, 0x6a, 0x7f, 0x3b, 0xa9, 0xac, 0xb5, 0x87, - 0xb9, 0x75, 0xbf, 0x45, 0xcb, 0x53, 0x99, 0x06, 0x13, 0xa6, 0xf0, 0xdb, 0xa0, 0xdc, 0x66, 0x96, - 0xe3, 0x9b, 0x15, 0x08, 0xe7, 0xbf, 0x51, 0xc5, 0x91, 0x96, 0xb1, 0xd7, 0x41, 0xe9, 0xba, 0x26, - 0x55, 0x5b, 0xad, 0xec, 0x75, 0x72, 0xf1, 0xac, 0x6c, 0x3a, 0x54, 0xf3, 0x6f, 0xa1, 0x53, 0xd3, - 0x24, 0xc6, 0xef, 0x78, 0xf7, 0x39, 0x0b, 0x54, 0xa7, 0xf7, 0x56, 0x5d, 0x00, 0x15, 0x1d, 0x96, - 0xa2, 0xf6, 0x74, 0x47, 0x98, 0xc4, 0x2b, 0x2d, 0xb4, 0x34, 0x4d, 0xa3, 0x84, 0x1f, 0xe1, 0x77, - 0x3d, 0x13, 0x28, 0x30, 0x77, 0x59, 0x72, 0x0d, 0x34, 0x11, 0x92, 0x29, 0x67, 0x87, 0xde, 0xfc, - 0x52, 0xe8, 0x3b, 0xb4, 0x74, 0x48, 0x55, 0xc8, 0x04, 0x5e, 0xf5, 0xfb, 0x15, 0x0e, 0x03, 0x8a, - 0x5e, 0x4b, 0xd8, 0x8b, 0x69, 0x59, 0x97, 0x96, 0xfb, 0x67, 0x26, 0xd4, 0x90, 0x84, 0x29, 0x2e, - 0x43, 0x5b, 0xe1, 0x44, 0x33, 0x12, 0x4c, 0x58, 0x70, 0xe0, 0x16, 0x1b, 0x45, 0x74, 0xac, 0xc9, - 0x94, 0x2a, 0x6e, 0xab, 0xd0, 0x6a, 0x37, 0xb8, 0xd6, 0xa9, 0xeb, 0x57, 0x14, 0xfc, 0xdb, 0x68, - 0xf9, 0x90, 0x8b, 0x71, 0x4c, 0x05, 0x7e, 0xcf, 0xff, 0xec, 0x54, 0x80, 0x73, 0xf5, 0xe0, 0x2b, - 0x83, 0x92, 0x66, 0xe0, 0x36, 0xd5, 0xee, 0x65, 0x29, 0xd8, 0x45, 0xcb, 0x51, 0x1a, 0xd8, 0xf5, - 0x30, 0xf1, 0xbc, 0xa9, 0x04, 0x5d, 0x17, 0xcd, 0xd5, 0xae, 0xfd, 0x2e, 0xb9, 0xaf, 0x82, 0x09, - 0xd3, 0xa6, 0xea, 0xca, 0x55, 0x62, 0xff, 0xd0, 0x44, 0x67, 0x82, 0x88, 0x51, 0x65, 0x77, 0x0b, - 0x87, 0x5e, 0xbf, 0xb9, 0x86, 0x5d, 0x1a, 0x18, 0x9c, 0x34, 0xc5, 0xed, 0xb6, 0xdb, 0x14, 0xcf, - 0xec, 0xb4, 0xb3, 0xbb, 0xf6, 0x43, 0xb2, 0xa9, 0xe4, 0x41, 0xd5, 0xe7, 0xe1, 0xda, 0x9f, 0x97, - 0xa4, 0xc3, 0xc8, 0x96, 0x0e, 0x56, 0x3b, 0x7b, 0xf3, 0xac, 0x56, 0xda, 0x3c, 0x8d, 0x96, 0x02, - 0xf8, 0xd2, 0xbb, 0xf9, 0xa7, 0xe6, 0xf7, 0x3f, 0xac, 0x36, 0xfe, 0xfc, 0xc3, 0x6a, 0xe3, 0xa7, - 0x1f, 0x56, 0x9b, 0x7f, 0x7a, 0xb1, 0xda, 0xfc, 0x8f, 0x17, 0xab, 0xcd, 0xff, 0x7c, 0xb1, 0xda, - 0xfc, 0xfe, 0xc5, 0x6a, 0xf3, 0xbf, 0x5e, 0xac, 0x36, 0xff, 0xfb, 0xc5, 0x6a, 0xe3, 0xa7, 0x17, - 0xab, 0xcd, 0x7f, 0xfc, 0x71, 0xb5, 0xf1, 0xfd, 0x8f, 0xab, 0x8d, 0x3f, 0xff, 0xb8, 0xda, 0xf8, - 0xfa, 0xf6, 0x58, 0x26, 0x07, 0xe3, 0xf5, 0xf2, 0x7b, 0xcc, 0x7a, 0xaa, 0x37, 0xe0, 0x8f, 0x35, - 0xa6, 0x35, 0x88, 0x88, 0x21, 0x53, 0x6b, 0xe5, 0xf0, 0x46, 0x32, 0x1c, 0xcb, 0x0d, 0x76, 0x64, - 0x8a, 0xaf, 0xd0, 0x73, 0x1f, 0xa3, 0x87, 0x4b, 0xf0, 0x15, 0xfa, 0xd3, 0xff, 0x0d, 0x00, 0x00, - 0xff, 0xff, 0x9e, 0x1a, 0xa1, 0x06, 0xea, 0x1e, 0x00, 0x00, + // 3640 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0x4b, 0x93, 0x1c, 0x37, + 0x72, 0xee, 0x16, 0xe7, 0x41, 0x42, 0x7c, 0x48, 0xa3, 0xc7, 0x42, 0x94, 0x34, 0x82, 0xa8, 0xdd, + 0x25, 0x29, 0x71, 0x66, 0x56, 0xd2, 0x52, 0xcf, 0x5d, 0x2e, 0x7b, 0xba, 0x7b, 0x1e, 0x24, 0x87, + 0xec, 0xed, 0x1e, 0xbe, 0x24, 0xaf, 0x68, 0x74, 0x15, 0xba, 0x1b, 0x9c, 0x2a, 0xa0, 0x0c, 0xa0, + 0x7a, 0xa6, 0x19, 0x0a, 0xc7, 0x5e, 0x1d, 0xe1, 0x83, 0xc3, 0x17, 0x47, 0xf8, 0x60, 0xfb, 0xe8, + 0xdf, 0x50, 0x75, 0xf0, 0xd5, 0x47, 0x1d, 0xf7, 0x68, 0x51, 0x17, 0x1f, 0xf5, 0x13, 0x1c, 0x48, + 0xd4, 0x03, 0x3d, 0xc3, 0x83, 0x1d, 0xe1, 0x53, 0x77, 0x7d, 0x48, 0x7c, 0xc8, 0x4a, 0x24, 0x32, + 0x13, 0x59, 0xe8, 0xf2, 0x94, 0xe9, 0x75, 0x2e, 0x37, 0x74, 0x30, 0x61, 0x31, 0xdd, 0x98, 0x32, + 0xcd, 0xc4, 0x74, 0x83, 0x46, 0xd1, 0x13, 0xcd, 0xd4, 0x94, 0x07, 0x4c, 0xaf, 0x27, 0x4a, 0x1a, + 0xb9, 0xf2, 0xba, 0x13, 0x5c, 0x77, 0x82, 0xeb, 0x4e, 0xf0, 0xe2, 0xa5, 0x17, 0x4e, 0x97, 0x89, + 0xe1, 0x52, 0x14, 0x33, 0x2f, 0xfd, 0xc7, 0xef, 0xd0, 0xb9, 0x81, 0x23, 0x6b, 0x4f, 0x24, 0x0f, + 0xd8, 0xca, 0x3f, 0x36, 0xd1, 0x59, 0xca, 0x93, 0x40, 0x0a, 0xc1, 0x02, 0x23, 0x15, 0xbe, 0x4c, + 0x9a, 0x57, 0x4e, 0x6f, 0x46, 0x59, 0x8e, 0x27, 0xf3, 0x23, 0x2b, 0x2f, 0x6d, 0xb7, 0x2f, 0xee, + 0xef, 0xf1, 0x40, 0xc9, 0x42, 0x1f, 0xa2, 0x52, 0x21, 0xb8, 0x18, 0x13, 0x29, 0x88, 0x99, 0x30, + 0xb2, 0xdd, 0x26, 0x87, 0x13, 0x1e, 0x4c, 0x08, 0x8d, 0x22, 0x79, 0xa8, 0x09, 0x4d, 0xb8, 0x26, + 0x46, 0x92, 0x40, 0xc6, 0x71, 0x2a, 0x78, 0x40, 0x0d, 0x23, 0x87, 0xdc, 0x4c, 0x48, 0x6b, 0xb7, + 0x47, 0x5a, 0xbd, 0x5d, 0x52, 0xf0, 0xec, 0x34, 0xfa, 0xf3, 0x2b, 0x7d, 0x83, 0x16, 0xe8, 0x01, + 0x55, 0xb8, 0x09, 0xba, 0x74, 0xb2, 0x1c, 0xdf, 0x74, 0x08, 0xe8, 0xf0, 0xdb, 0x72, 0x2a, 0x53, + 0x64, 0x24, 0x15, 0x49, 0x94, 0x3c, 0x9a, 0x11, 0x2a, 0x42, 0x22, 0xcd, 0x84, 0x29, 0x12, 0x48, + 0x31, 0xe2, 0xe3, 0x54, 0x51, 0xfb, 0xe6, 0x44, 0x0e, 0x9f, 0xb2, 0xc0, 0xe8, 0x9d, 0x46, 0xdf, + 0x31, 0x3c, 0x46, 0xe7, 0xec, 0xef, 0x13, 0xc5, 0x68, 0x28, 0x45, 0x34, 0xc3, 0x57, 0x60, 0x91, + 0x4f, 0xb2, 0x1c, 0xaf, 0x1f, 0x1b, 0x82, 0xd5, 0xde, 0xb2, 0x4f, 0x6b, 0xf6, 0x91, 0x28, 0x96, + 0x44, 0x3c, 0xa0, 0x44, 0x8e, 0x88, 0x95, 0x03, 0xb5, 0x0f, 0xa8, 0xea, 0x97, 0xe2, 0x7d, 0x74, + 0x1e, 0xe6, 0x87, 0x42, 0x87, 0x32, 0xa6, 0x5c, 0xe0, 0xab, 0xc0, 0x7d, 0x35, 0xcb, 0xf1, 0xaf, + 0x8e, 0x8f, 0x01, 0xf9, 0x05, 0x8b, 0x91, 0xce, 0xdd, 0x01, 0x71, 0xe0, 0x4e, 0xa3, 0x0f, 0x2a, + 0x74, 0x2a, 0xa9, 0x7d, 0xb4, 0x40, 0x15, 0xd3, 0xf8, 0x25, 0x60, 0xba, 0x91, 0xe5, 0xf8, 0x2b, + 0x87, 0xac, 0xbc, 0xd4, 0xef, 0x5e, 0x5c, 0x6f, 0x11, 0x25, 0x53, 0x63, 0xf7, 0xa0, 0xdc, 0x13, + 0x26, 0xc6, 0x5c, 0x30, 0x30, 0x0c, 0x3b, 0x0a, 0x26, 0xd4, 0x3e, 0x8e, 0x41, 0x8a, 0x39, 0x23, + 0xd8, 0xb9, 0x7d, 0xb4, 0x48, 0x75, 0xc2, 0x04, 0xfe, 0x10, 0x68, 0xbf, 0xca, 0x72, 0xfc, 0x59, + 0x01, 0x59, 0xde, 0x95, 0x97, 0xda, 0xdd, 0x8b, 0xbf, 0x6a, 0x25, 0x9c, 0x0c, 0x12, 0x16, 0xf0, + 0x91, 0xdd, 0x3a, 0x6b, 0xcb, 0xae, 0x18, 0x49, 0x15, 0xb0, 0x98, 0x09, 0xe3, 0xed, 0x5d, 0x31, + 0x6f, 0x1b, 0x2d, 0x53, 0x6d, 0x98, 0xe2, 0x47, 0x78, 0x01, 0x58, 0x3f, 0xca, 0x72, 0x7c, 0xb9, + 0x02, 0xe1, 0x7d, 0x71, 0x87, 0x1a, 0x4a, 0xee, 0x30, 0xaa, 0xc0, 0x6f, 0xea, 0x8d, 0xdc, 0x69, + 0xf4, 0x2b, 0xc1, 0xdb, 0x68, 0x89, 0x9a, 0x09, 0x13, 0x14, 0x2f, 0x01, 0xcf, 0xc7, 0x59, 0x8e, + 0xd7, 0x4a, 0x0c, 0x68, 0xde, 0x6b, 0x45, 0x4c, 0x19, 0xb2, 0x47, 0x05, 0x1d, 0x57, 0x1b, 0x6e, + 0x7f, 0x8c, 0x92, 0x51, 0x04, 0x6c, 0xa5, 0xf8, 0x4d, 0x74, 0x86, 0xa6, 0x46, 0xc6, 0xd4, 0xf0, + 0x23, 0xbc, 0x0c, 0x7c, 0x24, 0xcb, 0xf1, 0x3b, 0x1e, 0x0c, 0x94, 0x2f, 0x3f, 0x6c, 0x6d, 0x95, + 0x84, 0x3b, 0x8d, 0xbe, 0x37, 0x3a, 0x43, 0x67, 0x86, 0x54, 0x29, 0x1a, 0xa4, 0x86, 0xe1, 0xd3, + 0xc0, 0xf0, 0x38, 0xcb, 0xf1, 0x7d, 0x0f, 0x06, 0x86, 0xce, 0x2d, 0x39, 0xb4, 0xbe, 0x18, 0x30, + 0xad, 0xc1, 0x1b, 0x85, 0x54, 0x31, 0x8d, 0xf8, 0x33, 0x46, 0x0c, 0x13, 0x54, 0x18, 0x92, 0x6a, + 0x3a, 0x66, 0x24, 0xb4, 0x26, 0xb0, 0xe3, 0x94, 0x84, 0x94, 0xc5, 0xf6, 0xec, 0x48, 0x67, 0x05, + 0xc2, 0x8d, 0x5d, 0xba, 0xa6, 0xfd, 0xe7, 0x26, 0x5a, 0x1e, 0x86, 0x43, 0x76, 0x48, 0x47, 0xf8, + 0x1a, 0xac, 0xfc, 0xb7, 0x59, 0x8e, 0x9f, 0x55, 0xa0, 0x5d, 0xd7, 0xee, 0x15, 0xf8, 0x42, 0xf0, + 0xb0, 0xd5, 0xea, 0x7d, 0x45, 0xee, 0x6e, 0xef, 0xde, 0x7d, 0x44, 0x5a, 0x49, 0x42, 0x7a, 0x4a, + 0x1a, 0x16, 0x18, 0x72, 0x65, 0xeb, 0x3a, 0xd9, 0xdc, 0xdd, 0x5e, 0xdb, 0xed, 0x91, 0x87, 0xad, + 0xad, 0xab, 0xbe, 0x87, 0x50, 0x41, 0xa3, 0xd9, 0x33, 0xbb, 0x15, 0x46, 0xd1, 0xd1, 0x88, 0x07, + 0xa0, 0x58, 0x4c, 0x4d, 0x30, 0xb1, 0x20, 0x35, 0x86, 0x06, 0x07, 0x44, 0xf3, 0xb1, 0xa0, 0x26, + 0x55, 0xe0, 0x40, 0xd5, 0xda, 0x57, 0xd1, 0xc2, 0x70, 0x14, 0x26, 0x78, 0x0d, 0x14, 0x7b, 0x2d, + 0xcb, 0xf1, 0x05, 0x87, 0x80, 0x35, 0x4e, 0xed, 0x6f, 0x76, 0xac, 0xbb, 0x01, 0xf0, 0x08, 0x2d, + 0x0f, 0xf9, 0x48, 0x49, 0x6d, 0xf0, 0x3a, 0x48, 0xff, 0x2e, 0xcb, 0xf1, 0x17, 0x15, 0x08, 0x13, + 0xae, 0xb6, 0xc8, 0x50, 0xf1, 0x70, 0xcc, 0xc8, 0x48, 0xc9, 0x98, 0x4c, 0x65, 0x64, 0x98, 0x52, + 0xd4, 0x05, 0x11, 0x2e, 0x8c, 0x84, 0x63, 0x62, 0x9f, 0x40, 0x89, 0x62, 0xa6, 0xdd, 0x85, 0x88, + 0x8b, 0x70, 0x24, 0xa3, 0x10, 0x9f, 0x01, 0xee, 0xeb, 0x59, 0x8e, 0x3f, 0xf6, 0x60, 0x60, 0x27, + 0x03, 0x16, 0x28, 0x66, 0x4a, 0x9b, 0x58, 0x67, 0xb6, 0x6f, 0xea, 0x36, 0xdc, 0xfa, 0x33, 0x18, + 0xbe, 0x9a, 0x72, 0x1d, 0x2d, 0x0c, 0x65, 0x64, 0x30, 0x02, 0xc6, 0xf7, 0xb2, 0x1c, 0xbf, 0xed, + 0x10, 0x77, 0x6a, 0xc1, 0x8b, 0xad, 0xf3, 0x0e, 0x4a, 0xe7, 0x75, 0x83, 0x4f, 0xd1, 0x99, 0xa1, + 0xdd, 0x73, 0xa6, 0x8c, 0xc6, 0x1b, 0x30, 0xf7, 0x56, 0x96, 0xe3, 0x2d, 0x0f, 0x06, 0x82, 0xeb, + 0xed, 0x54, 0x1b, 0x19, 0x33, 0x45, 0xb6, 0x68, 0x00, 0x07, 0x01, 0xc6, 0x6c, 0x60, 0xd9, 0xec, + 0xef, 0x59, 0x27, 0x0a, 0xd3, 0xc0, 0x3e, 0x0b, 0xf2, 0xa8, 0x4d, 0x92, 0x88, 0x9a, 0x91, 0x54, + 0x31, 0xa8, 0x58, 0xf1, 0x24, 0xe8, 0x42, 0x10, 0x8a, 0x2a, 0x66, 0xea, 0x69, 0x80, 0x7f, 0xe3, + 0x85, 0xcb, 0xe3, 0x83, 0xce, 0xc6, 0xed, 0x12, 0x21, 0x45, 0x16, 0x00, 0x2f, 0x68, 0x77, 0xee, + 0xda, 0x35, 0x9f, 0x82, 0xb3, 0x44, 0x3c, 0xa2, 0xc1, 0xd5, 0x9d, 0x46, 0xff, 0x04, 0xc3, 0x16, + 0x42, 0xc1, 0x84, 0xaa, 0x98, 0x8a, 0x90, 0x29, 0xfc, 0x32, 0x2c, 0xf6, 0xcb, 0x2c, 0xc7, 0xc4, + 0xc7, 0x61, 0x9d, 0xf3, 0x83, 0x7e, 0xd7, 0x9a, 0x7a, 0xac, 0x68, 0x1c, 0x83, 0x7d, 0x7c, 0x89, + 0x21, 0x3a, 0x57, 0x3f, 0x05, 0x54, 0xe1, 0xb3, 0x5e, 0x10, 0x9a, 0x1f, 0x02, 0xb6, 0xf7, 0x2d, + 0x5b, 0xdb, 0x87, 0x89, 0xe6, 0x21, 0x83, 0xdf, 0x2a, 0x08, 0x1d, 0x9b, 0xf7, 0x2f, 0x4d, 0xf4, + 0x5a, 0x10, 0x71, 0x26, 0xcc, 0x13, 0x2b, 0xfb, 0x24, 0x64, 0x23, 0x26, 0x34, 0xc3, 0x1f, 0x7b, + 0xd9, 0xed, 0x45, 0x02, 0xb0, 0xe0, 0x5e, 0x0f, 0x32, 0x4a, 0x19, 0x51, 0x21, 0x9b, 0xd9, 0x5d, + 0x7a, 0x20, 0x23, 0xd3, 0x96, 0x42, 0xcb, 0x88, 0xd9, 0x33, 0x4b, 0x03, 0x38, 0xea, 0x83, 0x09, + 0x4d, 0xd8, 0x65, 0x4d, 0x1c, 0xdb, 0x9a, 0x65, 0x23, 0x05, 0x9b, 0xf5, 0x11, 0xeb, 0xae, 0xaf, + 0xba, 0xb1, 0x01, 0x0f, 0x59, 0xa7, 0x58, 0x67, 0x86, 0x96, 0x03, 0x29, 0x12, 0x25, 0x47, 0xf8, + 0xaf, 0x40, 0xa7, 0x3f, 0x65, 0x39, 0x7e, 0x5c, 0x81, 0xee, 0x64, 0xf7, 0xbb, 0x17, 0xb7, 0xda, + 0x52, 0x18, 0x2e, 0x52, 0x99, 0x6a, 0xbb, 0x47, 0x23, 0x1e, 0x59, 0x4d, 0x20, 0xed, 0x31, 0x65, + 0xbd, 0x82, 0x0a, 0xab, 0xa2, 0x3d, 0xc7, 0x9a, 0x83, 0x07, 0xb5, 0x7b, 0xf7, 0xaf, 0x91, 0x98, + 0xc5, 0x52, 0xcd, 0x88, 0xb4, 0x39, 0xd2, 0xf0, 0xd8, 0x5a, 0xa8, 0xa2, 0xfe, 0xd7, 0x26, 0x3a, + 0x17, 0x4a, 0x5d, 0x87, 0x4b, 0xfc, 0x09, 0x68, 0x70, 0x98, 0xe5, 0x58, 0x1f, 0x1b, 0x02, 0x7b, + 0x7c, 0xe7, 0x3b, 0x0b, 0x1d, 0x8f, 0x15, 0x1b, 0x53, 0xc8, 0x39, 0x9d, 0x8e, 0x1c, 0x10, 0xcd, + 0x82, 0x54, 0x71, 0x33, 0x23, 0x6c, 0xca, 0x84, 0x71, 0xa1, 0x6f, 0xcc, 0x04, 0x53, 0x4e, 0xa6, + 0x0c, 0xa4, 0x81, 0x93, 0x8e, 0xb9, 0xe1, 0x63, 0x97, 0x4d, 0x12, 0x19, 0xf1, 0x80, 0x43, 0x50, + 0x39, 0xb6, 0x28, 0x43, 0x4b, 0xa1, 0x92, 0x63, 0x29, 0xf0, 0x39, 0xd0, 0xec, 0x76, 0x96, 0xe3, + 0xed, 0x12, 0x03, 0x95, 0xbe, 0x2c, 0xbd, 0xcb, 0x2e, 0x91, 0x6a, 0x9b, 0x04, 0x14, 0xa3, 0x86, + 0x85, 0xe4, 0xe0, 0x0b, 0x5d, 0xe6, 0xfc, 0x22, 0x92, 0x58, 0x84, 0x26, 0xbc, 0xce, 0x34, 0x25, + 0xd1, 0x43, 0xb4, 0x10, 0xce, 0x62, 0x89, 0xbf, 0x85, 0x45, 0x5a, 0x59, 0x8e, 0x7f, 0xef, 0x90, + 0xd2, 0xfa, 0x90, 0x07, 0xaf, 0xee, 0x31, 0xa3, 0x78, 0xa0, 0x49, 0x92, 0xea, 0xc9, 0xda, 0x98, + 0x1a, 0x76, 0x48, 0x67, 0x45, 0xd1, 0x51, 0x94, 0x1f, 0x31, 0x33, 0x13, 0x96, 0x42, 0x7a, 0x85, + 0xe9, 0x14, 0x2d, 0xb0, 0xd9, 0x21, 0xc5, 0xe7, 0x3d, 0xed, 0x01, 0x01, 0xdd, 0xbf, 0xbe, 0x6f, + 0xf5, 0xa5, 0x41, 0x20, 0x53, 0x61, 0x48, 0x5c, 0x85, 0xa0, 0x6b, 0xe4, 0x7e, 0x6b, 0xef, 0x1a, + 0x91, 0x62, 0x6d, 0x28, 0xa9, 0x0a, 0xc1, 0x78, 0x22, 0x9c, 0x2f, 0x67, 0xec, 0x12, 0x40, 0xf4, + 0x00, 0x9d, 0xb3, 0xbf, 0x75, 0x19, 0xf3, 0x29, 0xac, 0xb5, 0x91, 0xe5, 0xf8, 0xa3, 0x63, 0x43, + 0xb0, 0xe8, 0x9b, 0x16, 0x22, 0x16, 0x22, 0x7e, 0x2d, 0x63, 0x6b, 0x18, 0x3b, 0x52, 0xd5, 0x30, + 0x7f, 0xd7, 0x44, 0x67, 0x2c, 0x90, 0x28, 0x1e, 0x33, 0xfc, 0x5b, 0x20, 0xe5, 0x59, 0x8e, 0x99, + 0x07, 0xbb, 0x4a, 0xb0, 0x5b, 0x3e, 0x12, 0xcd, 0x8d, 0x0d, 0xd1, 0x50, 0x03, 0xc6, 0x90, 0xc5, + 0x49, 0x10, 0xa5, 0xf0, 0x6b, 0x5f, 0x60, 0xc2, 0xa2, 0x44, 0x13, 0x26, 0xe8, 0x30, 0x62, 0x64, + 0x40, 0xa9, 0x06, 0xb3, 0x59, 0xe1, 0x07, 0x65, 0x90, 0xf7, 0x43, 0x5c, 0xbd, 0xcc, 0x53, 0xb4, + 0x52, 0x3d, 0xd4, 0x2f, 0x7a, 0x1d, 0x74, 0xfa, 0x32, 0xcb, 0xf1, 0xf5, 0x17, 0x8d, 0x83, 0x72, + 0x6f, 0xd7, 0xca, 0x9d, 0x28, 0xdf, 0xec, 0x79, 0xac, 0xa6, 0x55, 0xef, 0x7d, 0x03, 0x2d, 0x8d, + 0xa9, 0x18, 0x33, 0x8d, 0x3f, 0xf3, 0x02, 0x5b, 0x81, 0x55, 0x39, 0xf6, 0xfc, 0x56, 0x24, 0x0f, + 0x49, 0x60, 0xbd, 0xd4, 0x46, 0x45, 0xeb, 0x4b, 0x85, 0xc4, 0x2e, 0x5a, 0x1e, 0x2b, 0x3e, 0x1a, + 0x71, 0x81, 0x2f, 0x00, 0xc1, 0x5a, 0x96, 0xe3, 0xab, 0x15, 0x08, 0x5a, 0x5d, 0x1c, 0x70, 0xc3, + 0xaa, 0xaa, 0x65, 0x2b, 0x15, 0x90, 0x88, 0x68, 0xc4, 0xcd, 0xcc, 0x9e, 0xcf, 0x52, 0xf4, 0x7b, + 0xb4, 0x34, 0x61, 0x51, 0x44, 0x35, 0x7e, 0x1f, 0x98, 0x86, 0x59, 0x8e, 0xbf, 0x2b, 0x31, 0x70, + 0xc9, 0xde, 0xbe, 0x4c, 0x64, 0x24, 0xc7, 0x33, 0xaf, 0xe6, 0x29, 0x4a, 0xef, 0xc4, 0x9d, 0x0b, + 0x5b, 0x77, 0x17, 0x22, 0x43, 0xaa, 0x59, 0x48, 0xb8, 0x80, 0x60, 0x01, 0x07, 0xcf, 0x48, 0x12, + 0xc9, 0x80, 0x46, 0x65, 0xb5, 0x02, 0x47, 0xb0, 0xe4, 0x1f, 0xa1, 0x65, 0x4e, 0x13, 0x66, 0x52, + 0x8d, 0x3f, 0xf7, 0x32, 0x58, 0x09, 0x56, 0x81, 0xe9, 0x53, 0x3f, 0x28, 0x24, 0xde, 0x69, 0xac, + 0xcf, 0x03, 0x71, 0xa9, 0x0a, 0x9c, 0x40, 0xa5, 0x91, 0x2b, 0x1f, 0x4a, 0x9e, 0x19, 0x7a, 0x95, + 0x87, 0x4c, 0x18, 0x6e, 0x66, 0x34, 0x35, 0x13, 0x69, 0x43, 0x08, 0x7e, 0x05, 0x56, 0xdc, 0xcd, + 0x72, 0xdc, 0x7d, 0xc1, 0x30, 0x18, 0xf1, 0xda, 0x6e, 0x01, 0xdb, 0x04, 0x33, 0xe5, 0x9a, 0x4b, + 0x51, 0x9e, 0x94, 0xfa, 0x28, 0x95, 0xe9, 0xcd, 0xee, 0xf5, 0x49, 0x9a, 0x3d, 0x74, 0x8a, 0x27, + 0x09, 0xfe, 0xc2, 0x73, 0x24, 0x0b, 0x00, 0xfd, 0x87, 0x3b, 0xfb, 0xfb, 0x3d, 0x32, 0xe2, 0xd6, + 0x31, 0x6d, 0x60, 0x09, 0xe1, 0xfd, 0xca, 0x54, 0xc0, 0xad, 0xb5, 0x75, 0xe2, 0x2a, 0x88, 0x9d, + 0x46, 0x1f, 0xa6, 0x7d, 0x8b, 0x96, 0x78, 0x92, 0x84, 0x6c, 0x8a, 0xbf, 0xf6, 0x02, 0x49, 0x81, + 0x01, 0xe9, 0x46, 0x87, 0x4d, 0x59, 0x24, 0x13, 0x50, 0x8d, 0x0b, 0x6d, 0x20, 0x68, 0xc3, 0x29, + 0x60, 0x1a, 0xa2, 0x24, 0x14, 0xea, 0x0c, 0x6e, 0x4b, 0x3c, 0x49, 0xec, 0x76, 0x14, 0xd3, 0x6f, + 0xa1, 0x65, 0x9e, 0x24, 0xd6, 0xa6, 0xf8, 0x06, 0xb0, 0xaf, 0x67, 0x39, 0xfe, 0xb0, 0x02, 0x9d, + 0xb7, 0xf7, 0x6a, 0x93, 0x57, 0xec, 0x72, 0x44, 0x76, 0x7b, 0x3d, 0x02, 0x26, 0x2f, 0x64, 0x3b, + 0x68, 0xf1, 0xa9, 0xd4, 0x6c, 0x84, 0x5b, 0xc0, 0x74, 0x2d, 0xcb, 0xf1, 0x95, 0x02, 0x72, 0x3c, + 0xad, 0xea, 0x45, 0xad, 0x6e, 0x41, 0x24, 0xd3, 0x90, 0x68, 0x23, 0x15, 0x1d, 0x43, 0x9d, 0xef, + 0x24, 0x6f, 0xa0, 0xa5, 0x83, 0x20, 0x8c, 0xd3, 0x23, 0xbc, 0xe9, 0x9f, 0x14, 0x87, 0x01, 0xcf, + 0x4a, 0x87, 0xed, 0xa5, 0x47, 0xc0, 0x71, 0x9b, 0xcd, 0xda, 0x91, 0xa4, 0x07, 0xf6, 0x8d, 0x0a, + 0x09, 0x8a, 0x2e, 0xb8, 0x7f, 0xf5, 0x91, 0x6e, 0x03, 0xd1, 0x67, 0x59, 0x8e, 0x3f, 0x39, 0x31, + 0xe8, 0x34, 0x3b, 0x11, 0xb8, 0xec, 0xfb, 0x39, 0xc9, 0x9d, 0x46, 0xff, 0xbc, 0xfb, 0xe7, 0x1d, + 0xe6, 0xc5, 0x03, 0x36, 0x4b, 0x14, 0x7e, 0x15, 0x88, 0x7f, 0x9d, 0xe5, 0xf8, 0x52, 0x01, 0x01, + 0xdd, 0x1b, 0xb7, 0xd9, 0xcc, 0xab, 0xfd, 0xc8, 0x60, 0xa6, 0x0d, 0xb3, 0xc1, 0xa7, 0x90, 0xb9, + 0x87, 0x10, 0x94, 0x41, 0x4f, 0x58, 0x38, 0x66, 0xf8, 0x97, 0x9e, 0xdd, 0x1d, 0xbe, 0x66, 0xf1, + 0x2a, 0x41, 0xbc, 0x7e, 0xc7, 0x62, 0x50, 0x45, 0x41, 0x6d, 0x9f, 0x44, 0x54, 0x58, 0x7b, 0x9d, + 0x01, 0xd9, 0xae, 0x15, 0x15, 0x68, 0x21, 0xa6, 0x4a, 0xe3, 0x0e, 0x50, 0x3d, 0xca, 0x72, 0xbc, + 0xef, 0x90, 0xea, 0x38, 0x75, 0xca, 0xe3, 0xe4, 0x8e, 0xab, 0x14, 0x64, 0x73, 0xbb, 0x57, 0x9e, + 0xad, 0x84, 0xba, 0x84, 0xbb, 0xa1, 0x67, 0x02, 0xea, 0xc5, 0x32, 0xc1, 0x51, 0x7b, 0x19, 0xd7, + 0xe5, 0xae, 0x41, 0x02, 0x02, 0xd6, 0x2d, 0xb4, 0x1c, 0xd3, 0x54, 0xf1, 0x80, 0xe1, 0x15, 0x58, + 0xf2, 0xc3, 0x2c, 0xc7, 0xbf, 0xae, 0x40, 0x30, 0xc2, 0x2f, 0x1e, 0xf4, 0x48, 0x2b, 0x8c, 0xb9, + 0xb6, 0x47, 0x68, 0xfe, 0xf2, 0x54, 0xc9, 0xdd, 0x44, 0xcb, 0x31, 0x17, 0x4c, 0x4d, 0x29, 0xee, + 0x7a, 0x9b, 0x5d, 0x82, 0xc0, 0xf3, 0x6a, 0x9f, 0x25, 0x52, 0x81, 0x17, 0xd7, 0xa7, 0xae, 0x92, + 0xb8, 0x83, 0x96, 0xc4, 0x68, 0x6a, 0xab, 0xd3, 0x4b, 0xde, 0x3d, 0xbb, 0xc0, 0xc0, 0x7c, 0xa4, + 0x7b, 0x64, 0x98, 0x12, 0x34, 0x2a, 0xa7, 0x6b, 0xd2, 0x61, 0x49, 0x24, 0x67, 0xb0, 0x35, 0xb7, + 0xe4, 0xd0, 0xfa, 0x4e, 0x21, 0xff, 0x4f, 0x4d, 0x74, 0x56, 0xc4, 0xba, 0xee, 0x56, 0x6c, 0x01, + 0xe9, 0xdf, 0x64, 0x39, 0x8e, 0xe7, 0x47, 0x40, 0xb5, 0xc7, 0xee, 0x32, 0xe4, 0xef, 0x74, 0x6a, + 0x43, 0x30, 0xd5, 0x84, 0x56, 0x15, 0xf0, 0x1a, 0xa9, 0xab, 0x62, 0x2e, 0x0c, 0x53, 0x23, 0x6a, + 0xb7, 0x81, 0x99, 0x43, 0xc6, 0x04, 0xd9, 0xba, 0xfe, 0xa8, 0x0d, 0xc1, 0xe5, 0xee, 0xde, 0x80, + 0xd2, 0x01, 0x19, 0xd2, 0xe0, 0x80, 0x89, 0xd0, 0xe6, 0xcd, 0xb9, 0xe5, 0xee, 0xa2, 0xd3, 0x22, + 0xd6, 0x50, 0x15, 0xe0, 0x6d, 0x50, 0xea, 0x37, 0x59, 0x8e, 0xaf, 0xd5, 0x28, 0x28, 0xf4, 0x8e, + 0x53, 0xc8, 0x0b, 0x54, 0x1a, 0x14, 0x02, 0x89, 0x9d, 0x46, 0xbf, 0x96, 0x1e, 0xa0, 0x25, 0x39, + 0x64, 0x11, 0x3f, 0xc2, 0xaf, 0x79, 0x61, 0xaa, 0xc0, 0xe6, 0xee, 0x7d, 0xef, 0x55, 0x59, 0x14, + 0xae, 0x25, 0xbb, 0xa2, 0x8c, 0x4f, 0xa4, 0x0b, 0x17, 0x3d, 0x6b, 0xbe, 0x62, 0xda, 0x13, 0x74, + 0x5a, 0x06, 0x3a, 0x89, 0xd3, 0x88, 0xe1, 0xd7, 0xbd, 0x58, 0x55, 0xa1, 0xa0, 0xe4, 0x5a, 0xcb, + 0xba, 0xd9, 0x44, 0x49, 0x61, 0x8b, 0xce, 0x7b, 0xed, 0x41, 0x8f, 0x28, 0xa6, 0x13, 0x69, 0x0b, + 0xda, 0x98, 0x72, 0x61, 0xa8, 0xdd, 0x5b, 0x6f, 0xb3, 0xeb, 0xe9, 0x0c, 0x2d, 0xcb, 0x68, 0x16, + 0x27, 0xa9, 0xc6, 0x3b, 0x5e, 0x28, 0x2f, 0x41, 0xa0, 0xff, 0xac, 0x0d, 0x71, 0xa5, 0xca, 0x4f, + 0x7e, 0x66, 0xaa, 0x32, 0xab, 0x17, 0x71, 0x8b, 0xd6, 0x92, 0x75, 0xaa, 0x92, 0x66, 0x0b, 0x2d, + 0xca, 0x84, 0x29, 0x8a, 0xdf, 0xf0, 0x8e, 0xa6, 0x83, 0xe6, 0x4a, 0xb7, 0x37, 0x2a, 0xd3, 0xf4, + 0x6c, 0xad, 0x39, 0x23, 0xad, 0xb1, 0xbb, 0xea, 0x15, 0xb2, 0x1d, 0xb4, 0x94, 0x4c, 0xe4, 0x50, + 0x6a, 0xbc, 0xeb, 0x9d, 0x92, 0x02, 0x03, 0x06, 0x5c, 0x31, 0xf4, 0x8b, 0x3e, 0x4b, 0xfd, 0xda, + 0xa5, 0xdc, 0xef, 0xd1, 0x72, 0xc2, 0x0f, 0x68, 0x30, 0x49, 0xf1, 0x9b, 0x40, 0xf3, 0x7e, 0x96, + 0xe3, 0x77, 0x2b, 0xb0, 0xbe, 0x11, 0xb5, 0x5d, 0x9f, 0xa2, 0xd5, 0xdb, 0xb5, 0x2f, 0x53, 0x0e, + 0xef, 0xa2, 0x85, 0x84, 0x1f, 0xa4, 0xf8, 0x16, 0xcc, 0xfd, 0x34, 0xcb, 0xf1, 0x86, 0x43, 0x40, + 0x81, 0x0f, 0x92, 0xc9, 0x4c, 0x73, 0x9b, 0xac, 0xfd, 0xc2, 0x76, 0x42, 0x45, 0x68, 0x73, 0x3e, + 0x17, 0xa4, 0xdd, 0x85, 0x63, 0x0f, 0x13, 0x62, 0x84, 0x92, 0x03, 0x3e, 0xa2, 0xd6, 0x82, 0x33, + 0xfc, 0x0b, 0xaf, 0xfa, 0xf4, 0x70, 0x77, 0x03, 0xdd, 0x4c, 0x79, 0x14, 0x92, 0x00, 0xee, 0xa1, + 0xa4, 0x77, 0x7b, 0x97, 0x4c, 0x38, 0x53, 0x54, 0x05, 0x13, 0xce, 0x5c, 0xc2, 0x8e, 0xb9, 0x70, + 0x99, 0x89, 0x29, 0xe3, 0x3a, 0x40, 0x10, 0x5f, 0x7c, 0xa2, 0x3e, 0x5a, 0x4c, 0xa2, 0xd4, 0x48, + 0x7c, 0xdb, 0xef, 0x22, 0x01, 0xe4, 0xae, 0x9b, 0xfb, 0x2c, 0x62, 0x31, 0x33, 0x6a, 0x36, 0x97, + 0x57, 0xe2, 0xa2, 0x9e, 0xb6, 0xab, 0x0c, 0x79, 0x64, 0x2f, 0x34, 0x76, 0x4b, 0xdc, 0xbc, 0x36, + 0x5a, 0x4c, 0xa4, 0x90, 0x1a, 0xdf, 0xf1, 0x7a, 0x48, 0x0e, 0xaa, 0x62, 0xe5, 0x9b, 0x65, 0x45, + 0x6e, 0x03, 0x56, 0x9a, 0xf8, 0xad, 0x28, 0x27, 0xf8, 0x25, 0x5a, 0x4c, 0x14, 0xd7, 0x31, 0xde, + 0xf3, 0xf6, 0xc3, 0x41, 0xa0, 0xd8, 0x2b, 0xa3, 0xeb, 0x47, 0x01, 0x5c, 0xe0, 0xb7, 0x5d, 0x39, + 0x0f, 0x53, 0x61, 0xb8, 0x8d, 0x10, 0xfc, 0x71, 0xf5, 0xef, 0x5d, 0x6f, 0xbe, 0x87, 0xbb, 0x8e, + 0x51, 0xcf, 0x3e, 0x13, 0x00, 0xc0, 0x30, 0xf5, 0xf0, 0xbe, 0x15, 0x2e, 0x53, 0x32, 0x7e, 0xe4, + 0x05, 0x3e, 0x0f, 0x77, 0x01, 0xc1, 0xab, 0x96, 0x9c, 0x5d, 0xca, 0x33, 0xe0, 0x0a, 0x0c, 0x5f, + 0x3e, 0x44, 0xa7, 0x13, 0x25, 0x0d, 0x3b, 0x30, 0x1c, 0xdf, 0x03, 0xce, 0xad, 0x2c, 0xc7, 0x9b, + 0x35, 0x0a, 0x8c, 0x9f, 0x14, 0x91, 0xdc, 0xa5, 0xa1, 0x39, 0xc3, 0xb7, 0x02, 0xa9, 0x52, 0x4d, + 0x8e, 0xca, 0xc6, 0x90, 0x97, 0x36, 0x6a, 0x8e, 0x1b, 0x68, 0x51, 0x41, 0xf3, 0x15, 0xfb, 0xb9, + 0x53, 0xb9, 0xee, 0x6b, 0xbf, 0x7b, 0xf1, 0x8d, 0x3b, 0x50, 0x3a, 0x42, 0x29, 0xdb, 0xf6, 0x93, + 0x46, 0x21, 0x73, 0x0f, 0x2d, 0x2b, 0x6a, 0x82, 0x09, 0x33, 0xf8, 0x4f, 0x9e, 0x47, 0x97, 0xe0, + 0xff, 0x3a, 0xe4, 0x57, 0x13, 0xfe, 0x1a, 0x2d, 0x2a, 0x19, 0xb1, 0x23, 0xdc, 0x03, 0xba, 0x9d, + 0x2c, 0xc7, 0x9d, 0x02, 0x82, 0x17, 0xfe, 0xdc, 0x2f, 0x44, 0xcb, 0xf8, 0x54, 0x5e, 0x0b, 0xd7, + 0xac, 0x1c, 0x89, 0x69, 0x92, 0x94, 0xd7, 0x66, 0x16, 0xdb, 0x85, 0x18, 0xbc, 0x75, 0xc1, 0xd2, + 0x41, 0x4b, 0x9a, 0x4e, 0xe8, 0x8c, 0xe2, 0xef, 0xfc, 0x30, 0x30, 0x00, 0xcc, 0xf5, 0x2d, 0xb7, + 0x8b, 0x0b, 0xed, 0x94, 0x91, 0xd6, 0xee, 0x7c, 0xeb, 0xa7, 0x98, 0xbb, 0xf2, 0x47, 0xb4, 0xa0, + 0x03, 0x1e, 0xe3, 0x0f, 0x80, 0xe3, 0xeb, 0x2c, 0xc7, 0x9f, 0x3b, 0x04, 0x18, 0x3e, 0x72, 0x35, + 0x86, 0xeb, 0xb7, 0xd8, 0xa4, 0xbd, 0xd6, 0x81, 0x06, 0x2f, 0xa9, 0xca, 0xd9, 0xb9, 0x5e, 0x94, + 0x9b, 0xf8, 0x0c, 0x9d, 0xd2, 0x2c, 0xc4, 0x7f, 0x04, 0xc6, 0x51, 0x96, 0xe3, 0x21, 0x00, 0x40, + 0xf8, 0x10, 0x3a, 0xf1, 0x6b, 0xc7, 0x5b, 0xf1, 0xfc, 0xff, 0xd8, 0x8a, 0xd7, 0x13, 0x9a, 0xb0, + 0x63, 0xcd, 0x78, 0x58, 0xa3, 0x8b, 0x4e, 0x6b, 0xab, 0x99, 0x60, 0x11, 0xee, 0x83, 0x02, 0x97, + 0xb3, 0x1c, 0x7f, 0x50, 0xa3, 0xa0, 0xc5, 0x6b, 0xa2, 0xd8, 0xc8, 0xf9, 0xc3, 0x54, 0x0b, 0xdd, + 0x44, 0xa7, 0x21, 0x1f, 0xa9, 0x34, 0xc6, 0x03, 0xa0, 0xb9, 0x94, 0xe5, 0x78, 0xb5, 0x46, 0x5d, + 0x78, 0xb4, 0xc1, 0x6d, 0xce, 0xaa, 0xf5, 0xf8, 0x1d, 0x74, 0x56, 0x73, 0xc3, 0x9e, 0x04, 0xae, + 0xf3, 0x82, 0xdf, 0xf2, 0x94, 0x79, 0xd9, 0x8e, 0x14, 0x2d, 0x99, 0x2a, 0xea, 0x9f, 0x05, 0xdf, + 0x2c, 0xc4, 0x77, 0x1a, 0xfd, 0x39, 0xa1, 0x2e, 0x5a, 0xd2, 0x46, 0x31, 0x7a, 0x80, 0xf7, 0xbd, + 0x00, 0x53, 0x60, 0xae, 0xe1, 0x3f, 0x30, 0xd4, 0xd8, 0xcb, 0x4b, 0xd1, 0xe8, 0x90, 0x7e, 0x9b, + 0xa9, 0x14, 0xfc, 0x16, 0x9d, 0x35, 0x49, 0x5c, 0x5f, 0x5c, 0x1e, 0x7a, 0xad, 0xc7, 0xb9, 0x11, + 0xa0, 0x7c, 0xf7, 0xd8, 0x5d, 0xa9, 0xbe, 0xb6, 0xec, 0xf7, 0xf6, 0xac, 0x23, 0xce, 0x4f, 0x91, + 0xe8, 0x42, 0xd1, 0x8e, 0xa5, 0x10, 0x07, 0x98, 0xc2, 0xf7, 0x81, 0xbf, 0x9d, 0xe5, 0xf8, 0x0f, + 0x27, 0x06, 0xe1, 0x58, 0x5e, 0x69, 0x0d, 0xaa, 0x4f, 0x01, 0x34, 0x9c, 0xda, 0xa0, 0xad, 0xc1, + 0x99, 0x5c, 0x9c, 0xb5, 0x7b, 0x1d, 0x2a, 0x7a, 0x18, 0xd9, 0xd5, 0x4e, 0x10, 0xfc, 0x01, 0x2d, + 0x4c, 0xd9, 0x98, 0xe2, 0x8b, 0xde, 0xe7, 0x0a, 0x40, 0xea, 0x4c, 0xda, 0x9e, 0x8b, 0x2a, 0xf6, + 0x3d, 0x1e, 0x74, 0xfb, 0xd6, 0x51, 0x41, 0xec, 0x6b, 0x74, 0x6a, 0xca, 0x14, 0x7e, 0xe0, 0x6d, + 0x8d, 0x05, 0xea, 0x12, 0xb9, 0x4a, 0xa3, 0xb6, 0x1c, 0x86, 0x5c, 0x0a, 0xbb, 0x0c, 0x42, 0xdf, + 0xa3, 0x0b, 0x53, 0x4e, 0x9f, 0xd0, 0x84, 0x97, 0x1f, 0xba, 0xf0, 0x63, 0x20, 0xea, 0x67, 0x39, + 0xbe, 0x7b, 0x62, 0xd0, 0x1d, 0xfa, 0x1d, 0xc8, 0x80, 0x9a, 0xb4, 0xfb, 0xf7, 0x3b, 0xae, 0x4d, + 0xe2, 0x52, 0x59, 0xab, 0xb7, 0xeb, 0xfa, 0x0b, 0xf7, 0x86, 0x56, 0x9e, 0x0e, 0xb9, 0xbd, 0x5e, + 0x97, 0x3b, 0xb8, 0xbe, 0xd3, 0xe8, 0x9f, 0x9b, 0x72, 0xda, 0x4a, 0x78, 0xb1, 0x25, 0x2b, 0xff, + 0xd6, 0x44, 0x67, 0xa7, 0x9c, 0xd6, 0x25, 0xe5, 0x37, 0xb0, 0xf6, 0xb3, 0x2c, 0xc7, 0xd3, 0xf9, + 0x11, 0x58, 0x78, 0xf8, 0xff, 0xf3, 0x01, 0xac, 0x3e, 0x6f, 0x27, 0x95, 0xb5, 0xfe, 0x30, 0xb7, + 0xee, 0x77, 0x68, 0x79, 0x2a, 0xd3, 0x60, 0xc2, 0x14, 0x7e, 0x1b, 0x94, 0xdb, 0xcc, 0x72, 0x7c, + 0xa3, 0x02, 0x61, 0xff, 0x37, 0xaa, 0x38, 0xd2, 0x32, 0xf6, 0x52, 0x29, 0x5d, 0xef, 0xa5, 0x6a, + 0xce, 0x95, 0x1d, 0x53, 0x2e, 0x9e, 0x96, 0xad, 0x8b, 0x6a, 0xfe, 0x4d, 0x74, 0x6a, 0x9a, 0xc4, + 0xf8, 0x1d, 0xef, 0x56, 0x68, 0x81, 0x6a, 0xf7, 0xde, 0xaa, 0xcb, 0xa8, 0xa2, 0x4f, 0x53, 0x54, + 0xb0, 0x6e, 0x0b, 0x93, 0x78, 0xa5, 0x85, 0x96, 0xa6, 0x69, 0x94, 0xf0, 0x23, 0xfc, 0xae, 0xe7, + 0x02, 0x05, 0xe6, 0xae, 0x5c, 0xae, 0x0d, 0x27, 0x42, 0x32, 0xe5, 0xec, 0xd0, 0x9b, 0x5f, 0x0a, + 0x7d, 0x8f, 0x96, 0x0e, 0xa9, 0x0a, 0x99, 0xc0, 0xab, 0x7e, 0xd7, 0xc3, 0x61, 0x40, 0xd1, 0x6b, + 0x09, 0x7b, 0xbd, 0x2d, 0xab, 0xdb, 0xd2, 0x7e, 0x66, 0x42, 0x0d, 0x49, 0x98, 0xe2, 0x32, 0xb4, + 0x75, 0x52, 0x34, 0x23, 0xc1, 0x84, 0x05, 0x07, 0x6e, 0xb1, 0x51, 0x44, 0xc7, 0x9a, 0x4c, 0xa9, + 0xe2, 0xb6, 0x96, 0xad, 0xac, 0xc1, 0xb5, 0x4e, 0x5d, 0xd7, 0xa3, 0xe0, 0xdf, 0x46, 0xcb, 0x87, + 0x5c, 0x8c, 0x63, 0x2a, 0xf0, 0x7b, 0xfe, 0xc7, 0xab, 0x02, 0x9c, 0xab, 0x2a, 0x5f, 0x19, 0x94, + 0x34, 0x03, 0x67, 0x54, 0x6b, 0xcb, 0x52, 0xb0, 0x8b, 0x96, 0xa3, 0x34, 0xb0, 0xeb, 0x61, 0xe2, + 0x9d, 0xa6, 0x12, 0x74, 0xbd, 0x38, 0x57, 0x01, 0xf7, 0xbb, 0xe4, 0x9e, 0x0a, 0x26, 0x4c, 0x9b, + 0xaa, 0xb7, 0x57, 0x89, 0xfd, 0x7d, 0x13, 0x9d, 0x09, 0x22, 0x46, 0x95, 0xb5, 0x16, 0x0e, 0xbd, + 0xae, 0x75, 0x0d, 0xbb, 0x34, 0x30, 0x38, 0xe9, 0x8a, 0xdb, 0x6d, 0x67, 0x14, 0xcf, 0xed, 0xb4, + 0xf3, 0xbb, 0xf6, 0x03, 0xb2, 0xa9, 0xe4, 0x41, 0xd5, 0x2d, 0xe2, 0xda, 0x9f, 0x97, 0xa4, 0xc3, + 0xc8, 0x16, 0x20, 0x56, 0x3b, 0x7b, 0x7f, 0xad, 0x56, 0xda, 0x3c, 0x8d, 0x96, 0x02, 0xf8, 0x5e, + 0xbc, 0xf9, 0xe7, 0xe6, 0x0f, 0x3f, 0xae, 0x36, 0xfe, 0xf2, 0xe3, 0x6a, 0xe3, 0xe7, 0x1f, 0x57, + 0x9b, 0x7f, 0x7e, 0xbe, 0xda, 0xfc, 0xf7, 0xe7, 0xab, 0xcd, 0xff, 0x7c, 0xbe, 0xda, 0xfc, 0xe1, + 0xf9, 0x6a, 0xf3, 0xbf, 0x9e, 0xaf, 0x36, 0xff, 0xfb, 0xf9, 0x6a, 0xe3, 0xe7, 0xe7, 0xab, 0xcd, + 0x7f, 0xf8, 0x69, 0xb5, 0xf1, 0xc3, 0x4f, 0xab, 0x8d, 0xbf, 0xfc, 0xb4, 0xda, 0xf8, 0xe6, 0xd6, + 0x58, 0x26, 0x07, 0xe3, 0xf5, 0xf2, 0xab, 0xce, 0x7a, 0xaa, 0x37, 0xe0, 0x8f, 0x75, 0xa6, 0x35, + 0x88, 0x88, 0x21, 0x53, 0x6b, 0xe5, 0xf0, 0x46, 0x32, 0x1c, 0xcb, 0x0d, 0x76, 0x64, 0x8a, 0x6f, + 0xd9, 0x73, 0x9f, 0xb4, 0x87, 0x4b, 0xf0, 0x2d, 0xfb, 0xd3, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, + 0xfd, 0xb9, 0xf9, 0x6e, 0x30, 0x1f, 0x00, 0x00, } func (this *ServiceChoice) Equal(that interface{}) bool { @@ -2967,6 +2982,30 @@ func (this *ServiceChoice_Rolex) Equal(that interface{}) bool { } return true } +func (this *ServiceChoice_Sahaya) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServiceChoice_Sahaya) + if !ok { + that2, ok := that.(ServiceChoice_Sahaya) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Sahaya != that1.Sahaya { + return false + } + return true +} func (this *ServiceChoice_Scim) Equal(that interface{}) bool { if that == nil { return this == nil @@ -3427,7 +3466,7 @@ func (this *ServiceChoice) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 87) + s := make([]string, 0, 88) s = append(s, "&vesenv.ServiceChoice{") if this.Choice != nil { s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") @@ -3947,6 +3986,14 @@ func (this *ServiceChoice_Rolex) GoString() string { `Rolex:` + fmt.Sprintf("%#v", this.Rolex) + `}`}, ", ") return s } +func (this *ServiceChoice_Sahaya) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.ServiceChoice_Sahaya{` + + `Sahaya:` + fmt.Sprintf("%#v", this.Sahaya) + `}`}, ", ") + return s +} func (this *ServiceChoice_Scim) GoString() string { if this == nil { return "nil" @@ -5671,6 +5718,25 @@ func (m *ServiceChoice_Ratchet) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xe8 return len(dAtA) - i, nil } +func (m *ServiceChoice_Sahaya) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServiceChoice_Sahaya) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.Sahaya { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xf0 + return len(dAtA) - i, nil +} func (m *ServiceChoice_Clearview) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -6451,6 +6517,15 @@ func (m *ServiceChoice_Ratchet) Size() (n int) { n += 3 return n } +func (m *ServiceChoice_Sahaya) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} func (m *ServiceChoice_Clearview) Size() (n int) { if m == nil { return 0 @@ -7297,6 +7372,16 @@ func (this *ServiceChoice_Ratchet) String() string { }, "") return s } +func (this *ServiceChoice_Sahaya) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServiceChoice_Sahaya{`, + `Sahaya:` + fmt.Sprintf("%v", this.Sahaya) + `,`, + `}`, + }, "") + return s +} func (this *ServiceChoice_Clearview) String() string { if this == nil { return "nil" @@ -9066,6 +9151,27 @@ func (m *ServiceChoice) Unmarshal(dAtA []byte) error { } b := bool(v != 0) m.Choice = &ServiceChoice_Ratchet{b} + case 94: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Sahaya", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAllServices + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &ServiceChoice_Sahaya{b} case 100: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field Clearview", wireType) diff --git a/pbgo/extschema/schema/vesenv/all_services.vesmsg.go b/pbgo/extschema/schema/vesenv/all_services.vesmsg.go index 3137da915..0410f3fb0 100644 --- a/pbgo/extschema/schema/vesenv/all_services.vesmsg.go +++ b/pbgo/extschema/schema/vesenv/all_services.vesmsg.go @@ -980,6 +980,17 @@ func (v *ValidateServiceChoice) Validate(ctx context.Context, pm interface{}, op return err } } + case *ServiceChoice_Sahaya: + if fv, exists := v.FldValidators["choice.sahaya"]; exists { + val := m.GetChoice().(*ServiceChoice_Sahaya).Sahaya + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("sahaya"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } case *ServiceChoice_Clearview: if fv, exists := v.FldValidators["choice.clearview"]; exists { val := m.GetChoice().(*ServiceChoice_Clearview).Clearview diff --git a/pbgo/extschema/schema/vesenv/options.pb.go b/pbgo/extschema/schema/vesenv/options.pb.go index 4129c74cb..291a79f83 100644 --- a/pbgo/extschema/schema/vesenv/options.pb.go +++ b/pbgo/extschema/schema/vesenv/options.pb.go @@ -705,6 +705,8 @@ type ServiceSlugChoice struct { // *ServiceSlugChoice_MarketplaceOnboard // *ServiceSlugChoice_NginxOne // *ServiceSlugChoice_CvProxy + // *ServiceSlugChoice_GenAi + // *ServiceSlugChoice_SyncCloudData Choice isServiceSlugChoice_Choice `protobuf_oneof:"choice"` } @@ -870,6 +872,12 @@ type ServiceSlugChoice_NginxOne struct { type ServiceSlugChoice_CvProxy struct { CvProxy bool `protobuf:"varint,42,opt,name=cv_proxy,json=cvProxy,proto3,oneof" json:"cv_proxy,omitempty"` } +type ServiceSlugChoice_GenAi struct { + GenAi bool `protobuf:"varint,43,opt,name=gen_ai,json=genAi,proto3,oneof" json:"gen_ai,omitempty"` +} +type ServiceSlugChoice_SyncCloudData struct { + SyncCloudData bool `protobuf:"varint,44,opt,name=sync_cloud_data,json=syncCloudData,proto3,oneof" json:"sync_cloud_data,omitempty"` +} func (*ServiceSlugChoice_Alert) isServiceSlugChoice_Choice() {} func (*ServiceSlugChoice_Config) isServiceSlugChoice_Choice() {} @@ -912,6 +920,8 @@ func (*ServiceSlugChoice_Marketplace) isServiceSlugChoice_Choice() func (*ServiceSlugChoice_MarketplaceOnboard) isServiceSlugChoice_Choice() {} func (*ServiceSlugChoice_NginxOne) isServiceSlugChoice_Choice() {} func (*ServiceSlugChoice_CvProxy) isServiceSlugChoice_Choice() {} +func (*ServiceSlugChoice_GenAi) isServiceSlugChoice_Choice() {} +func (*ServiceSlugChoice_SyncCloudData) isServiceSlugChoice_Choice() {} func (m *ServiceSlugChoice) GetChoice() isServiceSlugChoice_Choice { if m != nil { @@ -1207,6 +1217,20 @@ func (m *ServiceSlugChoice) GetCvProxy() bool { return false } +func (m *ServiceSlugChoice) GetGenAi() bool { + if x, ok := m.GetChoice().(*ServiceSlugChoice_GenAi); ok { + return x.GenAi + } + return false +} + +func (m *ServiceSlugChoice) GetSyncCloudData() bool { + if x, ok := m.GetChoice().(*ServiceSlugChoice_SyncCloudData); ok { + return x.SyncCloudData + } + return false +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ServiceSlugChoice) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1251,6 +1275,8 @@ func (*ServiceSlugChoice) XXX_OneofWrappers() []interface{} { (*ServiceSlugChoice_MarketplaceOnboard)(nil), (*ServiceSlugChoice_NginxOne)(nil), (*ServiceSlugChoice_CvProxy)(nil), + (*ServiceSlugChoice_GenAi)(nil), + (*ServiceSlugChoice_SyncCloudData)(nil), } } @@ -1946,298 +1972,301 @@ func init() { } var fileDescriptor_7f6a27edde895262 = []byte{ - // 4644 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x7a, 0xdb, 0x73, 0x1c, 0xd9, - 0x59, 0xf8, 0x8c, 0x25, 0xeb, 0x72, 0x24, 0x5b, 0x72, 0xfb, 0xd6, 0xd6, 0xda, 0xb2, 0x3d, 0xab, - 0x38, 0xde, 0x4d, 0x8e, 0x34, 0xdd, 0xd3, 0x33, 0xd3, 0xad, 0x5f, 0x2e, 0x3f, 0x4b, 0xf6, 0x46, - 0xde, 0xb5, 0x63, 0x65, 0xe4, 0xdd, 0x84, 0x64, 0xa1, 0x39, 0x7d, 0xfa, 0x74, 0xeb, 0x58, 0x7d, - 0x73, 0x77, 0xcf, 0xc8, 0xe3, 0x14, 0x61, 0x0b, 0x28, 0x58, 0xa8, 0xa2, 0x2a, 0x5c, 0xaa, 0x80, - 0x00, 0x45, 0x95, 0x5e, 0x80, 0x07, 0xaa, 0x28, 0x15, 0x49, 0x20, 0xc3, 0x0b, 0x04, 0x42, 0x02, - 0x09, 0x2c, 0x0f, 0x84, 0x7d, 0xcc, 0x7a, 0x5f, 0x78, 0xcc, 0x1f, 0x00, 0x14, 0x75, 0x4e, 0x9f, - 0x9e, 0xe9, 0x19, 0x8f, 0x6f, 0x81, 0x97, 0x99, 0x3e, 0xdf, 0xf7, 0x9d, 0xef, 0x72, 0xce, 0x77, - 0x3b, 0xa7, 0x1b, 0x54, 0x3a, 0x24, 0x59, 0xa5, 0xe1, 0x5a, 0x82, 0x77, 0x89, 0x8f, 0xd6, 0x3a, - 0x24, 0x21, 0x41, 0x67, 0x2d, 0x8c, 0x52, 0x1a, 0x06, 0xc9, 0x6a, 0x14, 0x87, 0x69, 0x28, 0x9d, - 0xca, 0x68, 0x56, 0x33, 0x9a, 0xd5, 0x8c, 0x66, 0x09, 0xba, 0x34, 0xdd, 0x6d, 0x5b, 0xab, 0x38, - 0xf4, 0xd7, 0xdc, 0xd0, 0x0d, 0xd7, 0x38, 0xb1, 0xd5, 0x76, 0xf8, 0x88, 0x0f, 0xf8, 0x53, 0xc6, - 0x64, 0xe9, 0x92, 0x1b, 0x86, 0xae, 0x47, 0x06, 0x54, 0x36, 0x49, 0x70, 0x4c, 0xa3, 0x34, 0x8c, - 0x33, 0x8a, 0xca, 0x2f, 0x1f, 0x01, 0xf3, 0x1b, 0xaf, 0xed, 0x10, 0x1c, 0x93, 0xf4, 0x66, 0xe0, - 0x84, 0xd2, 0x05, 0x00, 0xa2, 0xd0, 0xa3, 0xb8, 0x6b, 0xb6, 0xa9, 0x2d, 0x4f, 0x5d, 0x2a, 0x5f, - 0x9d, 0x6d, 0xcd, 0x66, 0x90, 0x37, 0xa9, 0x2d, 0x5d, 0x04, 0x73, 0x02, 0x1d, 0x20, 0x9f, 0xc8, - 0x65, 0x8e, 0x17, 0x33, 0x3e, 0x8b, 0x7c, 0x22, 0xbd, 0x04, 0x04, 0xb5, 0x49, 0x6d, 0xf9, 0xc8, - 0xa5, 0xf2, 0xd5, 0xa3, 0xad, 0x99, 0x0c, 0x70, 0xd3, 0x96, 0x9a, 0x40, 0xde, 0x27, 0x9e, 0x67, - 0xee, 0x05, 0xe1, 0x7e, 0x60, 0xa6, 0x24, 0x40, 0x41, 0x6a, 0x46, 0x31, 0x71, 0xe8, 0x03, 0x79, - 0x9a, 0xb3, 0x3a, 0xcd, 0xf0, 0x6f, 0x30, 0xf4, 0x5d, 0x8e, 0xdd, 0xe6, 0x48, 0x26, 0xd6, 0xc5, - 0x66, 0x42, 0xe2, 0x0e, 0xc5, 0x24, 0x91, 0x27, 0x2e, 0x4d, 0x30, 0xb1, 0x2e, 0xde, 0x11, 0x10, - 0xe9, 0x0a, 0x58, 0x08, 0xc2, 0xc0, 0x2c, 0x12, 0x4d, 0x72, 0xa2, 0x63, 0x41, 0x18, 0x7c, 0x66, - 0x40, 0x77, 0x16, 0x4c, 0xbb, 0xd8, 0xbc, 0x17, 0x5a, 0x89, 0x7c, 0x94, 0xe3, 0xa7, 0x5c, 0xfc, - 0x7a, 0x68, 0x25, 0x95, 0xef, 0xaf, 0x80, 0xe3, 0xf9, 0x42, 0x6c, 0xee, 0x86, 0x14, 0x13, 0xe9, - 0xeb, 0x65, 0x70, 0xb1, 0x43, 0x12, 0x13, 0x87, 0x41, 0x8a, 0x68, 0x40, 0x62, 0x33, 0x26, 0x2e, - 0x4d, 0xd2, 0xb8, 0x6b, 0x46, 0x28, 0x49, 0xf6, 0xc3, 0xd8, 0xe6, 0x0b, 0x30, 0xb3, 0xe1, 0x1d, - 0xf6, 0xe4, 0x5d, 0xc0, 0x36, 0x12, 0xd2, 0x10, 0xf6, 0xe9, 0x61, 0x4e, 0x0f, 0x93, 0x88, 0x60, - 0xe8, 0xe2, 0xec, 0x3f, 0x9f, 0xbc, 0xf8, 0x37, 0xbf, 0xf4, 0xc9, 0xa5, 0x49, 0xb4, 0x87, 0xe2, - 0xca, 0xd1, 0x98, 0xfd, 0xa9, 0x2b, 0x75, 0xbd, 0x51, 0xb3, 0x55, 0xa3, 0x0e, 0x9d, 0x3a, 0xaa, - 0x41, 0xad, 0x81, 0x14, 0xa8, 0xd7, 0xab, 0x4d, 0x58, 0xaf, 0xe1, 0x9a, 0x51, 0x75, 0x9c, 0xba, - 0x65, 0xd4, 0xb6, 0x4a, 0xad, 0xf3, 0x1d, 0x92, 0x6c, 0xe6, 0x52, 0x5a, 0x42, 0xc8, 0xb6, 0x60, - 0xcb, 0xf4, 0x66, 0x04, 0x26, 0xf2, 0x48, 0x9c, 0x9a, 0x31, 0xc1, 0x84, 0x76, 0x48, 0x6c, 0x26, - 0x1e, 0xc2, 0x7b, 0x66, 0x3b, 0xf6, 0xf8, 0xb6, 0xcc, 0x6c, 0x24, 0x87, 0x3d, 0x39, 0x04, 0x75, - 0xa1, 0x34, 0x27, 0x86, 0x39, 0xf1, 0xb0, 0xc2, 0x03, 0x28, 0x63, 0x01, 0xdb, 0xb1, 0xb7, 0xf8, - 0xb7, 0xb9, 0xea, 0x4b, 0x53, 0x28, 0xdd, 0x25, 0x01, 0x52, 0x57, 0x88, 0x4e, 0x54, 0xad, 0xee, - 0x58, 0x50, 0x37, 0x6a, 0x0d, 0xa8, 0xd9, 0x0e, 0x86, 0xba, 0x45, 0x6c, 0x68, 0xd5, 0xb1, 0xaa, - 0x60, 0x05, 0x37, 0x1b, 0x7a, 0x75, 0xab, 0xd4, 0x92, 0x3b, 0x24, 0xb9, 0xc6, 0x84, 0xb5, 0x04, - 0xd7, 0x1d, 0xc6, 0xf4, 0xcd, 0xd8, 0x93, 0xde, 0x2f, 0x83, 0xab, 0x63, 0xf4, 0x8e, 0x90, 0x4b, - 0x62, 0xbb, 0x9d, 0x76, 0xcd, 0x38, 0x6c, 0xa7, 0x34, 0x70, 0xcd, 0x3d, 0xd2, 0x95, 0x27, 0xb8, - 0x0d, 0x3f, 0x7f, 0xd8, 0x93, 0xbf, 0x0c, 0xae, 0xbd, 0x88, 0x0d, 0x7d, 0x76, 0x50, 0xb0, 0x83, - 0x7b, 0xa4, 0xbb, 0xf8, 0xed, 0xc7, 0xed, 0xc1, 0x56, 0xc3, 0x21, 0xb5, 0xba, 0x06, 0xab, 0x8e, - 0xa5, 0x43, 0x4d, 0x63, 0x96, 0xa9, 0x0d, 0x1d, 0xd6, 0xeb, 0xb6, 0x4a, 0x6a, 0xb8, 0xa9, 0x5a, - 0xb6, 0xbd, 0x55, 0x6a, 0xbd, 0x3c, 0x6a, 0xcf, 0x76, 0x2e, 0xa0, 0x95, 0xf1, 0x7f, 0x83, 0x74, - 0xa5, 0xef, 0x95, 0xc1, 0xcb, 0x63, 0x4c, 0x0b, 0xa3, 0xc4, 0x25, 0x01, 0x25, 0x26, 0x8a, 0x28, - 0xb7, 0x6a, 0x92, 0x5b, 0xf5, 0xf0, 0xb0, 0x27, 0x77, 0xc0, 0x27, 0x5e, 0xc4, 0xaa, 0x9c, 0x13, - 0x44, 0x11, 0xe5, 0x06, 0xfd, 0xdd, 0x98, 0x0d, 0x6a, 0x34, 0x71, 0xd3, 0xb0, 0x2d, 0x88, 0x6b, - 0xc8, 0x80, 0x9a, 0xa3, 0x28, 0x10, 0x35, 0xd5, 0x1a, 0x74, 0x0c, 0xad, 0x61, 0x3b, 0x96, 0x86, - 0x51, 0x8d, 0x6d, 0xd0, 0xf2, 0xa8, 0x41, 0x77, 0x04, 0xef, 0x6b, 0x11, 0x65, 0xb6, 0x7c, 0xbb, - 0x0c, 0x5e, 0x62, 0xb6, 0xa4, 0x24, 0x8e, 0x91, 0x13, 0xc6, 0x3e, 0x0b, 0x27, 0xb3, 0x43, 0xc9, - 0xbe, 0x99, 0xd0, 0x94, 0xc8, 0x47, 0xb9, 0x0d, 0xbf, 0x50, 0x3e, 0xec, 0xc9, 0x5f, 0x01, 0x35, - 0x61, 0x04, 0x43, 0x43, 0x86, 0x1e, 0xd6, 0xdf, 0x26, 0x91, 0x17, 0x76, 0x7d, 0x12, 0xa4, 0x10, - 0x7b, 0x61, 0xdb, 0x86, 0x38, 0x26, 0xf6, 0xe2, 0xdf, 0xe7, 0xba, 0xbf, 0x7a, 0xb6, 0x2f, 0x04, - 0xde, 0x0b, 0xad, 0x01, 0x17, 0x75, 0xa5, 0x8e, 0x34, 0x6c, 0x2b, 0x8e, 0x0a, 0x9b, 0xcd, 0x6a, - 0x1d, 0x6a, 0x84, 0xd4, 0xa0, 0xee, 0x28, 0x04, 0x2a, 0x5a, 0xdd, 0xaa, 0x55, 0xf5, 0xaa, 0x53, - 0x35, 0x94, 0xad, 0x52, 0xeb, 0x6c, 0x87, 0x24, 0x77, 0x73, 0x1e, 0xaf, 0x87, 0xd6, 0x5b, 0x94, - 0xec, 0xef, 0xd0, 0x94, 0x48, 0xdf, 0x2a, 0x83, 0x8f, 0x30, 0x2b, 0xf6, 0xf4, 0xc4, 0xc4, 0x5e, - 0x3b, 0x49, 0x49, 0x6c, 0xa2, 0xd8, 0x0d, 0xb1, 0x6d, 0x22, 0xdb, 0xa7, 0xc1, 0x20, 0xc4, 0xa7, - 0xb8, 0x3d, 0xee, 0x61, 0x4f, 0xc6, 0xdc, 0x3f, 0x99, 0x39, 0x7b, 0x7a, 0x02, 0xc5, 0x2c, 0x98, - 0xcd, 0x82, 0x7c, 0xd6, 0x20, 0xb6, 0xbf, 0xd3, 0x5f, 0xff, 0x69, 0x1f, 0xb5, 0x63, 0x8a, 0x89, - 0xba, 0xd2, 0x24, 0xa4, 0xea, 0xa8, 0x06, 0xd3, 0x59, 0xab, 0x42, 0x4d, 0xad, 0x1b, 0xd0, 0x6a, - 0x18, 0x1a, 0x74, 0x6a, 0x5a, 0xc3, 0x68, 0xa8, 0x48, 0x33, 0x34, 0xe6, 0x51, 0x97, 0x3a, 0x24, - 0x79, 0x43, 0x4f, 0x36, 0x33, 0xfe, 0xd7, 0x38, 0xfb, 0x6b, 0x8c, 0x7b, 0x31, 0xc2, 0x79, 0x66, - 0x0a, 0x9c, 0x4e, 0x9e, 0xef, 0x4c, 0x8b, 0xba, 0x26, 0x8d, 0x06, 0x6a, 0x4f, 0x73, 0xb5, 0x83, - 0xc3, 0x9e, 0x7c, 0xaf, 0xaf, 0x76, 0xe0, 0x74, 0xa0, 0xa0, 0x87, 0x16, 0x75, 0x21, 0x8d, 0x46, - 0xd5, 0xfe, 0x87, 0x7e, 0x4a, 0x9a, 0xda, 0x25, 0x9e, 0x87, 0x92, 0xca, 0x54, 0xe0, 0x74, 0x92, - 0x0e, 0x56, 0x57, 0x54, 0x43, 0x55, 0xd5, 0x9a, 0x83, 0xa1, 0xa6, 0x5b, 0x36, 0xd4, 0x8c, 0x06, - 0x82, 0x06, 0xae, 0x2a, 0xd0, 0x36, 0x10, 0x21, 0x0d, 0x47, 0xd5, 0xab, 0x4d, 0xe6, 0x3e, 0x4b, - 0x1d, 0x92, 0x7c, 0xd6, 0xe9, 0x88, 0x8c, 0xbb, 0x41, 0xdd, 0x9b, 0x51, 0x5f, 0xef, 0x6f, 0x89, - 0x30, 0x28, 0xea, 0x1d, 0xa1, 0xc0, 0x74, 0xf6, 0xd9, 0x1f, 0x8a, 0x43, 0x1f, 0xf1, 0x30, 0x98, - 0x2b, 0x64, 0xd5, 0x2b, 0x63, 0x74, 0x8f, 0x50, 0x00, 0x9d, 0x7d, 0xf6, 0x17, 0xc6, 0xc8, 0x47, - 0xdc, 0xe1, 0xff, 0xe9, 0xc9, 0x9a, 0x37, 0x6c, 0xc3, 0x42, 0x9a, 0x66, 0xb1, 0x85, 0xd6, 0xa1, - 0x56, 0x75, 0x34, 0x68, 0xd4, 0x9a, 0x3a, 0xb4, 0x10, 0x76, 0x9a, 0xb8, 0xaa, 0x90, 0xa6, 0x66, - 0x6d, 0x95, 0x5a, 0x17, 0x86, 0x34, 0xdf, 0x46, 0xc1, 0x6b, 0xfb, 0xdb, 0x42, 0x2b, 0xe6, 0xf7, - 0xdf, 0x28, 0xf3, 0xc2, 0x3d, 0x4e, 0xf9, 0x24, 0xd9, 0x35, 0xa3, 0x4e, 0xca, 0x75, 0x9f, 0xe7, - 0xba, 0xef, 0x1d, 0xf6, 0x64, 0x97, 0x7b, 0xd8, 0x13, 0x74, 0x4f, 0x92, 0x5d, 0x18, 0x75, 0x52, - 0xae, 0xfa, 0xf7, 0x9f, 0xac, 0xba, 0x56, 0xad, 0x23, 0x52, 0x45, 0x0a, 0xac, 0xa9, 0x7a, 0x13, - 0x6a, 0x96, 0xa3, 0x40, 0xa4, 0x20, 0x0b, 0xea, 0x04, 0xdb, 0x58, 0x6f, 0xd6, 0xad, 0xba, 0x53, - 0xdf, 0x2a, 0xb5, 0x5e, 0x7a, 0x5c, 0xf5, 0x9d, 0x64, 0x77, 0xbb, 0x93, 0x32, 0xc5, 0xbf, 0xf9, - 0x64, 0xc5, 0xdb, 0x09, 0x4f, 0xb0, 0x49, 0xb2, 0x6f, 0xcb, 0xc7, 0x9e, 0x4f, 0x71, 0x36, 0x25, - 0xf3, 0x17, 0x7b, 0xf1, 0x07, 0x4f, 0x59, 0x73, 0x5c, 0xd3, 0x51, 0xbd, 0x56, 0x87, 0x0d, 0xd2, - 0x68, 0x42, 0x8d, 0x34, 0x1a, 0xd0, 0xaa, 0x35, 0x30, 0x24, 0x5a, 0xb5, 0xd1, 0xac, 0xe9, 0x08, - 0xe9, 0x4d, 0x47, 0x54, 0xb2, 0x11, 0xc5, 0xdf, 0x4c, 0x58, 0x0e, 0x65, 0xfc, 0xa5, 0xef, 0x96, - 0xc1, 0x25, 0x5e, 0x81, 0xed, 0xc0, 0xf4, 0x42, 0x64, 0x5b, 0xc8, 0x43, 0x01, 0x26, 0xb1, 0x89, - 0x49, 0x9c, 0x52, 0x87, 0x62, 0x94, 0x12, 0x79, 0x86, 0xeb, 0xfd, 0x73, 0x87, 0x3d, 0xb9, 0x0b, - 0x56, 0xf3, 0x12, 0x6c, 0x07, 0xb0, 0x38, 0x01, 0xda, 0xe1, 0x7e, 0x90, 0xa4, 0x31, 0x41, 0x3e, - 0x2c, 0xcc, 0x5d, 0xfc, 0x6e, 0xdf, 0x00, 0xe0, 0x51, 0x0f, 0x61, 0x48, 0x6c, 0x97, 0xa8, 0x2b, - 0x8d, 0xba, 0xa5, 0x36, 0xb0, 0x6e, 0x40, 0xa4, 0x6b, 0x75, 0xa8, 0x61, 0xe4, 0x40, 0x5d, 0xab, - 0x61, 0x68, 0x61, 0x5d, 0xc3, 0x4e, 0x55, 0x57, 0xaa, 0x44, 0x5b, 0x9f, 0x2b, 0xc8, 0x12, 0xde, - 0xb3, 0x69, 0x07, 0xb7, 0x0a, 0x52, 0x37, 0x07, 0x92, 0xa4, 0x3f, 0x2c, 0x03, 0x96, 0x58, 0x4d, - 0xd7, 0x0b, 0x2d, 0xe4, 0x99, 0x5e, 0xe8, 0x16, 0x2a, 0x33, 0xef, 0x3a, 0xe4, 0x59, 0x6e, 0xc8, - 0xe7, 0x0f, 0x7b, 0xf2, 0x0e, 0xb8, 0x2c, 0x98, 0x67, 0xe4, 0xd0, 0x0b, 0xdd, 0x42, 0x05, 0xe0, - 0xe4, 0x8b, 0xdf, 0xcb, 0x75, 0x67, 0xc9, 0x10, 0x63, 0x4b, 0xb7, 0x6d, 0x88, 0xaa, 0x06, 0x81, - 0x9a, 0x8a, 0x11, 0xb4, 0x74, 0xac, 0xc2, 0x26, 0xd2, 0xaa, 0x84, 0x28, 0xa4, 0xe6, 0xa8, 0x35, - 0x11, 0x9a, 0x9f, 0xe1, 0x0c, 0x6f, 0x85, 0x6e, 0xbf, 0xfc, 0x72, 0x6e, 0xd2, 0x0f, 0xcb, 0xe0, - 0x15, 0x5e, 0xa1, 0x1e, 0xb6, 0x63, 0x62, 0x92, 0x07, 0x51, 0x4c, 0x92, 0x84, 0x57, 0x5c, 0x62, - 0xa2, 0x76, 0xba, 0x1b, 0xc6, 0xf4, 0x21, 0x62, 0x0d, 0x2a, 0x77, 0x72, 0xc0, 0x55, 0xfd, 0xf2, - 0x61, 0x4f, 0xde, 0x07, 0x1f, 0xcf, 0xeb, 0x14, 0x9b, 0x09, 0xc5, 0x4c, 0x5e, 0x5c, 0x09, 0x1c, - 0x9a, 0xc9, 0x7d, 0xfd, 0x1f, 0x9f, 0x23, 0xb7, 0x3b, 0x46, 0x5d, 0x6f, 0x58, 0x0a, 0x86, 0x06, - 0x22, 0x0a, 0xd4, 0x14, 0xa5, 0x01, 0x2d, 0x8d, 0x18, 0xd0, 0x66, 0x49, 0x12, 0x6b, 0x46, 0x13, - 0x57, 0x59, 0xbc, 0xae, 0xb0, 0x42, 0xc5, 0x84, 0xde, 0xc8, 0x64, 0xb2, 0x7a, 0x4b, 0xae, 0x15, - 0x25, 0x32, 0xef, 0xff, 0x8e, 0x48, 0xf4, 0x16, 0x75, 0x69, 0x64, 0xa2, 0xc8, 0x7f, 0x62, 0xc6, - 0x3c, 0xce, 0x8d, 0x4a, 0x0f, 0x7b, 0x72, 0xd4, 0x77, 0x24, 0x3e, 0x0b, 0xa2, 0xc8, 0x7f, 0x46, - 0xde, 0xfc, 0xe7, 0x27, 0x47, 0x42, 0x53, 0x69, 0x28, 0x8a, 0x61, 0xa8, 0x50, 0x23, 0x96, 0x02, - 0x35, 0x84, 0x6d, 0x68, 0x19, 0xb6, 0x0a, 0x15, 0xa3, 0x6e, 0x6b, 0x8a, 0xea, 0x38, 0x16, 0x46, - 0x5b, 0xa5, 0x16, 0x4b, 0xe8, 0x1b, 0x4c, 0xda, 0xb5, 0xc8, 0x1f, 0x9b, 0x3c, 0x7f, 0x50, 0x06, - 0x1f, 0x63, 0x86, 0xd0, 0x70, 0x5c, 0xde, 0xb7, 0xfc, 0xd1, 0xba, 0xb5, 0xc0, 0xcd, 0xb9, 0x7f, - 0xd8, 0x93, 0x7d, 0x3e, 0xf1, 0x09, 0x05, 0xc0, 0xf2, 0x47, 0x6d, 0xf9, 0x97, 0x27, 0xdb, 0xa2, + // 4704 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x7a, 0x4b, 0x70, 0x24, 0xc9, + 0x59, 0x70, 0xf7, 0x48, 0xa3, 0x47, 0x4a, 0xb3, 0xd2, 0xd4, 0xbc, 0x6a, 0xb5, 0x3b, 0xda, 0xd9, + 0x5e, 0x79, 0x3c, 0xfb, 0x48, 0xa9, 0xab, 0xba, 0xba, 0xbb, 0x4a, 0xbf, 0x1f, 0xbf, 0xa4, 0x9d, + 0xb5, 0x66, 0x77, 0xc6, 0x23, 0xb7, 0x66, 0xd7, 0xc6, 0x5e, 0x28, 0xb2, 0xb2, 0xb2, 0x4a, 0x39, + 0xaa, 0xd7, 0x54, 0x55, 0xb7, 0xa6, 0xc7, 0x81, 0xd9, 0x00, 0x02, 0x16, 0x22, 0x88, 0x30, 0x8f, + 0x08, 0xc0, 0x40, 0x10, 0xd1, 0x17, 0xe0, 0x40, 0x04, 0xa1, 0xc0, 0x36, 0xb8, 0xb9, 0x80, 0xc1, + 0xd8, 0x60, 0x83, 0x39, 0x60, 0xf6, 0x68, 0xcf, 0x5e, 0x38, 0xfa, 0xc6, 0x05, 0x22, 0x88, 0xcc, + 0xca, 0xea, 0xae, 0xee, 0xe9, 0x79, 0x19, 0x2e, 0xdd, 0x95, 0xdf, 0xf7, 0xe5, 0xf7, 0xc8, 0xfc, + 0x5e, 0x99, 0x55, 0xa0, 0xd2, 0x21, 0xc9, 0x3a, 0x0d, 0x37, 0x12, 0x7c, 0x40, 0x7c, 0xb4, 0xd1, + 0x21, 0x09, 0x09, 0x3a, 0x1b, 0x61, 0x94, 0xd2, 0x30, 0x48, 0xd6, 0xa3, 0x38, 0x4c, 0x43, 0xe9, + 0x6c, 0x46, 0xb3, 0x9e, 0xd1, 0xac, 0x67, 0x34, 0x2b, 0xd0, 0xa5, 0xe9, 0x41, 0xdb, 0x5a, 0xc7, + 0xa1, 0xbf, 0xe1, 0x86, 0x6e, 0xb8, 0xc1, 0x89, 0xad, 0xb6, 0xc3, 0x47, 0x7c, 0xc0, 0x9f, 0x32, + 0x26, 0x2b, 0x97, 0xdc, 0x30, 0x74, 0x3d, 0x32, 0xa4, 0xb2, 0x49, 0x82, 0x63, 0x1a, 0xa5, 0x61, + 0x9c, 0x51, 0x54, 0x7e, 0xf9, 0x04, 0x58, 0xdc, 0x7e, 0x63, 0x9f, 0xe0, 0x98, 0xa4, 0xd7, 0x02, + 0x27, 0x94, 0x2e, 0x02, 0x10, 0x85, 0x1e, 0xc5, 0x5d, 0xb3, 0x4d, 0x6d, 0x79, 0xe6, 0x52, 0xf9, + 0xca, 0x7c, 0x6b, 0x3e, 0x83, 0xbc, 0x4d, 0x6d, 0xe9, 0x05, 0xb0, 0x20, 0xd0, 0x01, 0xf2, 0x89, + 0x5c, 0xe6, 0x78, 0x31, 0xe3, 0xd3, 0xc8, 0x27, 0xd2, 0x73, 0x40, 0x50, 0x9b, 0xd4, 0x96, 0x4f, + 0x5c, 0x2a, 0x5f, 0x39, 0xd9, 0x9a, 0xcb, 0x00, 0xd7, 0x6c, 0xa9, 0x09, 0xe4, 0x23, 0xe2, 0x79, + 0xe6, 0x61, 0x10, 0x1e, 0x05, 0x66, 0x4a, 0x02, 0x14, 0xa4, 0x66, 0x14, 0x13, 0x87, 0xde, 0x95, + 0x67, 0x39, 0xab, 0x73, 0x0c, 0xff, 0x16, 0x43, 0xdf, 0xe2, 0xd8, 0x3d, 0x8e, 0x64, 0x62, 0x5d, + 0x6c, 0x26, 0x24, 0xee, 0x50, 0x4c, 0x12, 0x79, 0xea, 0xd2, 0x14, 0x13, 0xeb, 0xe2, 0x7d, 0x01, + 0x91, 0x2e, 0x83, 0xa5, 0x20, 0x0c, 0xcc, 0x22, 0xd1, 0x34, 0x27, 0x3a, 0x15, 0x84, 0xc1, 0xa7, + 0x86, 0x74, 0x17, 0xc0, 0xac, 0x8b, 0xcd, 0xdb, 0xa1, 0x95, 0xc8, 0x27, 0x39, 0x7e, 0xc6, 0xc5, + 0x6f, 0x86, 0x56, 0x52, 0xf9, 0xee, 0x1a, 0x78, 0x26, 0x5f, 0x88, 0x9d, 0x83, 0x90, 0x62, 0x22, + 0x7d, 0xb5, 0x0c, 0x5e, 0xe8, 0x90, 0xc4, 0xc4, 0x61, 0x90, 0x22, 0x1a, 0x90, 0xd8, 0x8c, 0x89, + 0x4b, 0x93, 0x34, 0xee, 0x9a, 0x11, 0x4a, 0x92, 0xa3, 0x30, 0xb6, 0xf9, 0x02, 0xcc, 0x6d, 0x7b, + 0xc7, 0x7d, 0xf9, 0x00, 0xb0, 0x8d, 0x84, 0x34, 0x84, 0x03, 0x7a, 0x98, 0xd3, 0xc3, 0x24, 0x22, + 0x18, 0xba, 0x38, 0xfb, 0xcf, 0x27, 0x2f, 0xff, 0xcd, 0x2f, 0x7d, 0x7c, 0x65, 0x1a, 0x1d, 0xa2, + 0xb8, 0x72, 0x32, 0x66, 0x7f, 0xea, 0x5a, 0x5d, 0x6f, 0xd4, 0x6c, 0xd5, 0xa8, 0x43, 0xa7, 0x8e, + 0x6a, 0x50, 0x6b, 0x20, 0x05, 0xea, 0xf5, 0x6a, 0x13, 0xd6, 0x6b, 0xb8, 0x66, 0x54, 0x1d, 0xa7, + 0x6e, 0x19, 0xb5, 0xdd, 0x52, 0xeb, 0xf9, 0x0e, 0x49, 0x76, 0x72, 0x29, 0x2d, 0x21, 0x64, 0x4f, + 0xb0, 0x65, 0x7a, 0x33, 0x02, 0x13, 0x79, 0x24, 0x4e, 0xcd, 0x98, 0x60, 0x42, 0x3b, 0x24, 0x36, + 0x13, 0x0f, 0xe1, 0x43, 0xb3, 0x1d, 0x7b, 0x7c, 0x5b, 0xe6, 0xb6, 0x93, 0xe3, 0xbe, 0x1c, 0x82, + 0xba, 0x50, 0x9a, 0x13, 0xc3, 0x9c, 0x78, 0x54, 0xe1, 0x21, 0x94, 0xb1, 0x80, 0xed, 0xd8, 0x5b, + 0xfe, 0xdb, 0x5c, 0xf5, 0x95, 0x19, 0x94, 0x1e, 0x90, 0x00, 0xa9, 0x6b, 0x44, 0x27, 0xaa, 0x56, + 0x77, 0x2c, 0xa8, 0x1b, 0xb5, 0x06, 0xd4, 0x6c, 0x07, 0x43, 0xdd, 0x22, 0x36, 0xb4, 0xea, 0x58, + 0x55, 0xb0, 0x82, 0x9b, 0x0d, 0xbd, 0xba, 0x5b, 0x6a, 0xc9, 0x1d, 0x92, 0x6c, 0x31, 0x61, 0x2d, + 0xc1, 0x75, 0x9f, 0x31, 0x7d, 0x3b, 0xf6, 0xa4, 0x0f, 0xca, 0xe0, 0xca, 0x04, 0xbd, 0x23, 0xe4, + 0x92, 0xd8, 0x6e, 0xa7, 0x5d, 0x33, 0x0e, 0xdb, 0x29, 0x0d, 0x5c, 0xf3, 0x90, 0x74, 0xe5, 0x29, + 0x6e, 0xc3, 0xcf, 0x1f, 0xf7, 0xe5, 0x2f, 0x82, 0xad, 0xa7, 0xb1, 0x61, 0xc0, 0x0e, 0x0a, 0x76, + 0xf0, 0x90, 0x74, 0x97, 0xbf, 0xf9, 0xa0, 0x3d, 0xd8, 0x6a, 0x38, 0xa4, 0x56, 0xd7, 0x60, 0xd5, + 0xb1, 0x74, 0xa8, 0x69, 0xcc, 0x32, 0xb5, 0xa1, 0xc3, 0x7a, 0xdd, 0x56, 0x49, 0x0d, 0x37, 0x55, + 0xcb, 0xb6, 0x77, 0x4b, 0xad, 0x97, 0xc6, 0xed, 0xd9, 0xcb, 0x05, 0xb4, 0x32, 0xfe, 0x6f, 0x91, + 0xae, 0xf4, 0x9d, 0x32, 0x78, 0x69, 0x82, 0x69, 0x61, 0x94, 0xb8, 0x24, 0xa0, 0xc4, 0x44, 0x11, + 0xe5, 0x56, 0x4d, 0x73, 0xab, 0xee, 0x1d, 0xf7, 0xe5, 0x0e, 0xf8, 0xd8, 0xd3, 0x58, 0x95, 0x73, + 0x82, 0x28, 0xa2, 0xdc, 0xa0, 0xbf, 0x9b, 0xb0, 0x41, 0x8d, 0x26, 0x6e, 0x1a, 0xb6, 0x05, 0x71, + 0x0d, 0x19, 0x50, 0x73, 0x14, 0x05, 0xa2, 0xa6, 0x5a, 0x83, 0x8e, 0xa1, 0x35, 0x6c, 0xc7, 0xd2, + 0x30, 0xaa, 0xb1, 0x0d, 0x5a, 0x1d, 0x37, 0xe8, 0xa6, 0xe0, 0xbd, 0x15, 0x51, 0x66, 0xcb, 0x37, + 0xcb, 0xe0, 0x39, 0x66, 0x4b, 0x4a, 0xe2, 0x18, 0x39, 0x61, 0xec, 0xb3, 0x70, 0x32, 0x3b, 0x94, + 0x1c, 0x99, 0x09, 0x4d, 0x89, 0x7c, 0x92, 0xdb, 0xf0, 0x0b, 0xe5, 0xe3, 0xbe, 0xfc, 0x25, 0x50, + 0x13, 0x46, 0x30, 0x34, 0x64, 0xe8, 0x51, 0xfd, 0x6d, 0x12, 0x79, 0x61, 0xd7, 0x27, 0x41, 0x0a, + 0xb1, 0x17, 0xb6, 0x6d, 0x88, 0x63, 0x62, 0x2f, 0xff, 0x7d, 0xae, 0xfb, 0x2b, 0x17, 0x06, 0x42, + 0xe0, 0xed, 0xd0, 0x1a, 0x72, 0x51, 0xd7, 0xea, 0x48, 0xc3, 0xb6, 0xe2, 0xa8, 0xb0, 0xd9, 0xac, + 0xd6, 0xa1, 0x46, 0x48, 0x0d, 0xea, 0x8e, 0x42, 0xa0, 0xa2, 0xd5, 0xad, 0x5a, 0x55, 0xaf, 0x3a, + 0x55, 0x43, 0xd9, 0x2d, 0xb5, 0x2e, 0x74, 0x48, 0x72, 0x2b, 0xe7, 0xf1, 0x66, 0x68, 0xbd, 0x43, + 0xc9, 0xd1, 0x3e, 0x4d, 0x89, 0xf4, 0x8d, 0x32, 0xf8, 0x08, 0xb3, 0xe2, 0x50, 0x4f, 0x4c, 0xec, + 0xb5, 0x93, 0x94, 0xc4, 0x26, 0x8a, 0xdd, 0x10, 0xdb, 0x26, 0xb2, 0x7d, 0x1a, 0x0c, 0x43, 0x7c, + 0x86, 0xdb, 0xe3, 0x1e, 0xf7, 0x65, 0xcc, 0xfd, 0x93, 0x99, 0x73, 0xa8, 0x27, 0x50, 0xcc, 0x82, + 0xd9, 0x2c, 0xc8, 0x67, 0x0d, 0x63, 0xfb, 0x5b, 0x83, 0xf5, 0x9f, 0xf5, 0x51, 0x3b, 0xa6, 0x98, + 0xa8, 0x6b, 0x4d, 0x42, 0xaa, 0x8e, 0x6a, 0x30, 0x9d, 0xb5, 0x2a, 0xd4, 0xd4, 0xba, 0x01, 0xad, + 0x86, 0xa1, 0x41, 0xa7, 0xa6, 0x35, 0x8c, 0x86, 0x8a, 0x34, 0x43, 0x63, 0x1e, 0x75, 0xa9, 0x43, + 0x92, 0xb7, 0xf4, 0x64, 0x27, 0xe3, 0xbf, 0xc5, 0xd9, 0x6f, 0x31, 0xee, 0xc5, 0x08, 0xe7, 0x99, + 0x29, 0x70, 0x3a, 0x79, 0xbe, 0x33, 0x2d, 0xea, 0x9a, 0x34, 0x1a, 0xaa, 0x3d, 0xcb, 0xd5, 0x0e, + 0x8e, 0xfb, 0xf2, 0xed, 0x81, 0xda, 0x81, 0xd3, 0x81, 0x82, 0x1e, 0x5a, 0xd4, 0x85, 0x34, 0x1a, + 0x57, 0xfb, 0x1f, 0x06, 0x29, 0x69, 0xe6, 0x80, 0x78, 0x1e, 0x4a, 0x2a, 0x33, 0x81, 0xd3, 0x49, + 0x3a, 0x58, 0x5d, 0x53, 0x0d, 0x55, 0x55, 0x6b, 0x0e, 0x86, 0x9a, 0x6e, 0xd9, 0x50, 0x33, 0x1a, + 0x08, 0x1a, 0xb8, 0xaa, 0x40, 0xdb, 0x40, 0x84, 0x34, 0x1c, 0x55, 0xaf, 0x36, 0x99, 0xfb, 0xac, + 0x74, 0x48, 0xf2, 0x69, 0xa7, 0x23, 0x32, 0xee, 0x36, 0x75, 0xaf, 0x45, 0x03, 0xbd, 0xbf, 0x21, + 0xc2, 0xa0, 0xa8, 0x77, 0x84, 0x02, 0xd3, 0x39, 0x62, 0x7f, 0x28, 0x0e, 0x7d, 0xc4, 0xc3, 0x60, + 0xa1, 0x90, 0x55, 0x2f, 0x4f, 0xd0, 0x3d, 0x42, 0x01, 0x74, 0x8e, 0xd8, 0x5f, 0x18, 0x23, 0x1f, + 0x71, 0x87, 0xff, 0xa7, 0x87, 0x6b, 0xde, 0xb0, 0x0d, 0x0b, 0x69, 0x9a, 0xc5, 0x16, 0x5a, 0x87, + 0x5a, 0xd5, 0xd1, 0xa0, 0x51, 0x6b, 0xea, 0xd0, 0x42, 0xd8, 0x69, 0xe2, 0xaa, 0x42, 0x9a, 0x9a, + 0xb5, 0x5b, 0x6a, 0x5d, 0x1c, 0xd1, 0x7c, 0x0f, 0x05, 0x6f, 0x1c, 0xed, 0x09, 0xad, 0x98, 0xdf, + 0x7f, 0xad, 0xcc, 0x0b, 0xf7, 0x24, 0xe5, 0x93, 0xe4, 0xc0, 0x8c, 0x3a, 0x29, 0xd7, 0x7d, 0x91, + 0xeb, 0x7e, 0x78, 0xdc, 0x97, 0x5d, 0xee, 0x61, 0x0f, 0xd1, 0x3d, 0x49, 0x0e, 0x60, 0xd4, 0x49, + 0xb9, 0xea, 0xdf, 0x7d, 0xb8, 0xea, 0x5a, 0xb5, 0x8e, 0x48, 0x15, 0x29, 0xb0, 0xa6, 0xea, 0x4d, + 0xa8, 0x59, 0x8e, 0x02, 0x91, 0x82, 0x2c, 0xa8, 0x13, 0x6c, 0x63, 0xbd, 0x59, 0xb7, 0xea, 0x4e, + 0x7d, 0xb7, 0xd4, 0x7a, 0xee, 0x41, 0xd5, 0xf7, 0x93, 0x83, 0xbd, 0x4e, 0xca, 0x14, 0xff, 0xfa, + 0xc3, 0x15, 0x6f, 0x27, 0x3c, 0xc1, 0x26, 0xc9, 0x91, 0x2d, 0x9f, 0x7a, 0x32, 0xc5, 0xd9, 0x94, + 0xcc, 0x5f, 0xec, 0xe5, 0xef, 0x3d, 0x62, 0xcd, 0x71, 0x4d, 0x47, 0xf5, 0x5a, 0x1d, 0x36, 0x48, + 0xa3, 0x09, 0x35, 0xd2, 0x68, 0x40, 0xab, 0xd6, 0xc0, 0x90, 0x68, 0xd5, 0x46, 0xb3, 0xa6, 0x23, + 0xa4, 0x37, 0x1d, 0x51, 0xc9, 0xc6, 0x14, 0x7f, 0x3b, 0x61, 0x39, 0x94, 0xf1, 0x97, 0xbe, 0x5d, + 0x06, 0x97, 0x78, 0x05, 0xb6, 0x03, 0xd3, 0x0b, 0x91, 0x6d, 0x21, 0x0f, 0x05, 0x98, 0xc4, 0x26, + 0x26, 0x71, 0x4a, 0x1d, 0x8a, 0x51, 0x4a, 0xe4, 0x39, 0xae, 0xf7, 0xcf, 0x1d, 0xf7, 0xe5, 0x2e, + 0x58, 0xcf, 0x4b, 0xb0, 0x1d, 0xc0, 0xe2, 0x04, 0x68, 0x87, 0x47, 0x41, 0x92, 0xc6, 0x04, 0xf9, + 0xb0, 0x30, 0x77, 0xf9, 0xdb, 0x03, 0x03, 0x80, 0x47, 0x3d, 0x84, 0x21, 0xb1, 0x5d, 0xa2, 0xae, + 0x35, 0xea, 0x96, 0xda, 0xc0, 0xba, 0x01, 0x91, 0xae, 0xd5, 0xa1, 0x86, 0x91, 0x03, 0x75, 0xad, + 0x86, 0xa1, 0x85, 0x75, 0x0d, 0x3b, 0x55, 0x5d, 0xa9, 0x12, 0x6d, 0x73, 0xa1, 0x20, 0x4b, 0x78, + 0xcf, 0x8e, 0x1d, 0x5c, 0x2f, 0x48, 0xdd, 0x19, 0x4a, 0x92, 0xfe, 0xb0, 0x0c, 0x58, 0x62, 0x35, + 0x5d, 0x2f, 0xb4, 0x90, 0x67, 0x7a, 0xa1, 0x5b, 0xa8, 0xcc, 0xbc, 0xeb, 0x90, 0xe7, 0xb9, 0x21, + 0x9f, 0x3d, 0xee, 0xcb, 0xfb, 0xe0, 0x45, 0xc1, 0x3c, 0x23, 0x87, 0x5e, 0xe8, 0x16, 0x2a, 0x00, + 0x27, 0x5f, 0xfe, 0x4e, 0xae, 0x3b, 0x4b, 0x86, 0x18, 0x5b, 0xba, 0x6d, 0x43, 0x54, 0x35, 0x08, + 0xd4, 0x54, 0x8c, 0xa0, 0xa5, 0x63, 0x15, 0x36, 0x91, 0x56, 0x25, 0x44, 0x21, 0x35, 0x47, 0xad, + 0x89, 0xd0, 0xfc, 0x14, 0x67, 0x78, 0x3d, 0x74, 0x07, 0xe5, 0x97, 0x73, 0x93, 0x7e, 0x50, 0x06, + 0x2f, 0xf3, 0x0a, 0x75, 0xaf, 0x1d, 0x13, 0x93, 0xdc, 0x8d, 0x62, 0x92, 0x24, 0xbc, 0xe2, 0x12, + 0x13, 0xb5, 0xd3, 0x83, 0x30, 0xa6, 0xf7, 0x10, 0x6b, 0x50, 0xb9, 0x93, 0x03, 0xae, 0xea, 0x17, + 0x8f, 0xfb, 0xf2, 0x11, 0x78, 0x2d, 0xaf, 0x53, 0x6c, 0x26, 0x14, 0x33, 0x79, 0x71, 0x25, 0x70, + 0x64, 0x26, 0xf7, 0xf5, 0x7f, 0x7c, 0x82, 0xdc, 0xee, 0x18, 0x75, 0xbd, 0x61, 0x29, 0x18, 0x1a, + 0x88, 0x28, 0x50, 0x53, 0x94, 0x06, 0xb4, 0x34, 0x62, 0x40, 0x9b, 0x25, 0x49, 0xac, 0x19, 0x4d, + 0x5c, 0x65, 0xf1, 0xba, 0xc6, 0x0a, 0x15, 0x13, 0x7a, 0x35, 0x93, 0xc9, 0xea, 0x2d, 0xd9, 0x2a, + 0x4a, 0x64, 0xde, 0xff, 0x2d, 0x91, 0xe8, 0x2d, 0xea, 0xd2, 0xc8, 0x44, 0x91, 0xff, 0xd0, 0x8c, + 0xf9, 0x0c, 0x37, 0x2a, 0x3d, 0xee, 0xcb, 0xd1, 0xc0, 0x91, 0xf8, 0x2c, 0x88, 0x22, 0xff, 0x31, + 0x79, 0xf3, 0x9f, 0x1f, 0x1e, 0x09, 0x4d, 0xa5, 0xa1, 0x28, 0x86, 0xa1, 0x42, 0x8d, 0x58, 0x0a, + 0xd4, 0x10, 0xb6, 0xa1, 0x65, 0xd8, 0x2a, 0x54, 0x8c, 0xba, 0xad, 0x29, 0xaa, 0xe3, 0x58, 0x18, + 0xed, 0x96, 0x5a, 0x2c, 0xa1, 0x6f, 0x33, 0x69, 0x5b, 0x91, 0x3f, 0x31, 0x79, 0x7e, 0xaf, 0x0c, + 0x5e, 0x65, 0x86, 0xd0, 0x70, 0x52, 0xde, 0xb7, 0xfc, 0xf1, 0xba, 0xb5, 0xc4, 0xcd, 0xb9, 0x73, + 0xdc, 0x97, 0x7d, 0x3e, 0xf1, 0x21, 0x05, 0xc0, 0xf2, 0xc7, 0x6d, 0xf9, 0x97, 0x87, 0xdb, 0xa2, 0xd8, 0x8e, 0x5e, 0xb3, 0x94, 0x2a, 0xac, 0x35, 0x15, 0xe6, 0x68, 0xb5, 0x3a, 0xd4, 0x0d, 0x5c, - 0x87, 0xb6, 0xa2, 0x38, 0xba, 0xae, 0xda, 0x4e, 0x55, 0x47, 0xa2, 0x27, 0xba, 0x19, 0x8e, 0x54, - 0x81, 0x0d, 0x7f, 0xb8, 0x88, 0xfd, 0xb5, 0x88, 0x88, 0x91, 0x9e, 0x68, 0x9f, 0x58, 0xbb, 0x61, - 0x98, 0x35, 0xaa, 0x8b, 0xdc, 0x84, 0xce, 0x61, 0x4f, 0x8e, 0x41, 0xf3, 0x45, 0xda, 0x21, 0xc1, - 0x84, 0xb7, 0xaa, 0x5f, 0xfd, 0xb3, 0x47, 0x93, 0xa3, 0xad, 0x50, 0x8d, 0x58, 0x4a, 0xb5, 0xa1, + 0x87, 0xb6, 0xa2, 0x38, 0xba, 0xae, 0xda, 0x4e, 0x55, 0x47, 0xa2, 0x27, 0xba, 0x16, 0x8e, 0x55, + 0x81, 0x6d, 0x7f, 0xb4, 0x88, 0xfd, 0xb5, 0x88, 0x88, 0xb1, 0x9e, 0xe8, 0x88, 0x58, 0x07, 0x61, + 0x98, 0x35, 0xaa, 0xcb, 0xdc, 0x84, 0xce, 0x71, 0x5f, 0x8e, 0x41, 0xf3, 0x69, 0xda, 0x21, 0xc1, + 0x84, 0xb7, 0xaa, 0x5f, 0xfe, 0xb3, 0xfb, 0xd3, 0xe3, 0xad, 0x50, 0x8d, 0x58, 0x4a, 0xb5, 0xa1, 0x23, 0x58, 0x43, 0xa8, 0x0a, 0x15, 0x85, 0x10, 0x68, 0x91, 0x7a, 0x03, 0x56, 0x55, 0x4d, 0x45, - 0x58, 0x51, 0xab, 0xd5, 0xaa, 0x2a, 0x02, 0x66, 0xa8, 0x15, 0xfa, 0x7c, 0xc6, 0x97, 0x75, 0xab, - 0x7f, 0x7e, 0x04, 0xbc, 0xf6, 0x14, 0xf5, 0x77, 0xd3, 0x34, 0x62, 0x27, 0x07, 0x87, 0xba, 0x3c, - 0x7e, 0x4c, 0xcc, 0x0f, 0x15, 0xa6, 0x85, 0x12, 0x8a, 0x33, 0x48, 0x7f, 0xa7, 0x4e, 0x70, 0x33, - 0xff, 0x88, 0x75, 0x4c, 0x5f, 0x2b, 0x03, 0xf3, 0x27, 0x31, 0x94, 0x89, 0x83, 0x99, 0x38, 0x1e, - 0x74, 0x30, 0x13, 0x07, 0xb9, 0xb8, 0x0c, 0xd2, 0xdf, 0xdf, 0xdf, 0x18, 0xb3, 0x20, 0x7a, 0x0d, - 0xeb, 0x8d, 0x9a, 0x5e, 0x7d, 0xc6, 0x82, 0x7c, 0xe2, 0x09, 0x0b, 0xb2, 0x95, 0xa6, 0xd1, 0x26, - 0x97, 0xce, 0xe2, 0x2f, 0x3b, 0x3f, 0x6d, 0x30, 0xd1, 0x6c, 0xd8, 0xdf, 0xf1, 0x3f, 0x3e, 0x02, - 0x36, 0x7f, 0x82, 0x25, 0xe3, 0xcf, 0x69, 0xb8, 0x47, 0x82, 0xec, 0x57, 0x96, 0xf8, 0x7a, 0xfd, - 0x01, 0x5b, 0xaf, 0xdf, 0x29, 0x83, 0xb7, 0xff, 0x2f, 0xd7, 0x8b, 0x3f, 0x73, 0x29, 0xd9, 0xef, - 0xe2, 0x6f, 0x8e, 0x5b, 0x2c, 0x5b, 0x73, 0x0c, 0x43, 0x21, 0xcf, 0x58, 0x2c, 0xe3, 0x05, 0x16, - 0x8b, 0x3d, 0xdd, 0x65, 0x02, 0xf9, 0x8f, 0xf4, 0xaf, 0x65, 0xde, 0xf7, 0x98, 0xbc, 0x29, 0x36, - 0x3d, 0x1a, 0xec, 0x99, 0x68, 0x3f, 0x31, 0xad, 0x6e, 0x88, 0x4d, 0xcb, 0x8d, 0x0a, 0x4b, 0x22, - 0x9f, 0xe4, 0x8b, 0xf1, 0x95, 0xc3, 0x9e, 0xfc, 0x10, 0x34, 0xf2, 0x92, 0xc4, 0x7b, 0x69, 0x36, - 0x6d, 0x78, 0x19, 0xd0, 0x7e, 0x02, 0x19, 0x0f, 0x68, 0xb9, 0x51, 0xc1, 0xd4, 0xc5, 0xdf, 0x2a, - 0x18, 0xd9, 0x69, 0x7b, 0x11, 0x7d, 0xb0, 0x34, 0xed, 0xb5, 0x31, 0x8a, 0x69, 0xa8, 0xae, 0x58, + 0x58, 0x51, 0xab, 0xd5, 0xaa, 0x2a, 0x02, 0x66, 0xa4, 0x15, 0xfa, 0x6c, 0xc6, 0x97, 0x75, 0xab, + 0x7f, 0x7e, 0x02, 0xbc, 0xf1, 0x08, 0xf5, 0x0f, 0xd2, 0x34, 0x62, 0x27, 0x07, 0x87, 0xba, 0x3c, + 0x7e, 0x4c, 0xcc, 0x0f, 0x15, 0xa6, 0x85, 0x12, 0x8a, 0x33, 0xc8, 0x60, 0xa7, 0x4e, 0x73, 0x33, + 0xff, 0x88, 0x75, 0x4c, 0x5f, 0x29, 0x03, 0xf3, 0x27, 0x31, 0x94, 0x89, 0x83, 0x99, 0x38, 0x1e, + 0x74, 0x30, 0x13, 0x07, 0xb9, 0xb8, 0x0c, 0x32, 0xd8, 0xdf, 0xdf, 0x98, 0xb0, 0x20, 0x7a, 0x0d, + 0xeb, 0x8d, 0x9a, 0x5e, 0x7d, 0xcc, 0x82, 0x7c, 0xec, 0x21, 0x0b, 0xb2, 0x9b, 0xa6, 0xd1, 0x0e, + 0x97, 0xce, 0xe2, 0x2f, 0x3b, 0x3f, 0x6d, 0x33, 0xd1, 0x6c, 0x38, 0xd8, 0xf1, 0x3f, 0x3e, 0x01, + 0x76, 0x7e, 0x82, 0x25, 0xe3, 0xcf, 0x69, 0x78, 0x48, 0x82, 0xec, 0x57, 0x96, 0xf8, 0x7a, 0xfd, + 0x01, 0x5b, 0xaf, 0xdf, 0x29, 0x83, 0x77, 0xff, 0x2f, 0xd7, 0x8b, 0x3f, 0x73, 0x29, 0xd9, 0xef, + 0xf2, 0x6f, 0x4e, 0x5a, 0x2c, 0x5b, 0x73, 0x0c, 0x43, 0x21, 0x8f, 0x59, 0x2c, 0xe3, 0x29, 0x16, + 0x8b, 0x3d, 0xdd, 0x62, 0x02, 0xf9, 0x8f, 0xf4, 0xaf, 0x65, 0xde, 0xf7, 0x98, 0xbc, 0x29, 0x36, + 0x3d, 0x1a, 0x1c, 0x9a, 0xe8, 0x28, 0x31, 0xad, 0x6e, 0x88, 0x4d, 0xcb, 0x8d, 0x0a, 0x4b, 0x22, + 0x9f, 0xe1, 0x8b, 0xf1, 0xa5, 0xe3, 0xbe, 0x7c, 0x0f, 0x34, 0xf2, 0x92, 0xc4, 0x7b, 0x69, 0x36, + 0x6d, 0x74, 0x19, 0xd0, 0x51, 0x02, 0x19, 0x0f, 0x68, 0xb9, 0x51, 0xc1, 0xd4, 0xe5, 0xdf, 0x2a, + 0x18, 0xd9, 0x69, 0x7b, 0x11, 0xbd, 0xbb, 0x32, 0xeb, 0xb5, 0x31, 0x8a, 0x69, 0xa8, 0xae, 0x59, 0x5a, 0x55, 0x37, 0x88, 0xa6, 0x43, 0xd5, 0xa9, 0x6a, 0x50, 0x6b, 0x60, 0x0d, 0x22, 0x44, 0x54, - 0x88, 0x54, 0xa4, 0x57, 0x6d, 0x5d, 0xa9, 0xeb, 0x86, 0x23, 0xf2, 0xd7, 0x26, 0x93, 0x7b, 0x8b, - 0x06, 0x7b, 0xd7, 0xf6, 0x93, 0x8d, 0x6e, 0x88, 0x37, 0xdc, 0xa8, 0x6f, 0x18, 0x8b, 0x77, 0x7e, - 0x6e, 0x28, 0xd4, 0x5f, 0x33, 0x8a, 0x69, 0x87, 0xfd, 0xb3, 0x9a, 0x72, 0xaa, 0x50, 0x53, 0xf2, - 0x60, 0x2f, 0xd0, 0x0e, 0x5b, 0x52, 0x44, 0x08, 0x26, 0xbc, 0xbc, 0xfc, 0xf6, 0x63, 0xdb, 0x55, - 0x99, 0xe8, 0x90, 0x58, 0x5d, 0xa9, 0x2a, 0xc4, 0xa8, 0xa3, 0x46, 0x1d, 0xaa, 0x44, 0x69, 0x40, - 0x4d, 0xd7, 0x6c, 0x68, 0x69, 0xd5, 0x1a, 0x34, 0x90, 0xee, 0xa0, 0xaa, 0x53, 0x6f, 0xd4, 0x8d, - 0xba, 0x38, 0x9d, 0x16, 0xca, 0xf6, 0x76, 0xc6, 0x9a, 0xd5, 0x91, 0xf7, 0xcb, 0xfc, 0x80, 0x3f, - 0x36, 0xfd, 0xde, 0x37, 0x3d, 0x8a, 0xc7, 0xa4, 0xe0, 0xd3, 0xdc, 0xa4, 0xf6, 0x61, 0x4f, 0xbe, - 0xdf, 0xbf, 0x1d, 0x78, 0x2c, 0x05, 0xdf, 0x87, 0x1e, 0xc5, 0x63, 0xd2, 0xf0, 0xbf, 0x3d, 0x25, - 0x0d, 0x6b, 0xc6, 0x0d, 0x43, 0xab, 0x35, 0xa0, 0xa1, 0x18, 0x37, 0xa0, 0x56, 0xab, 0x1b, 0xd0, - 0xd8, 0xd8, 0xbc, 0x0e, 0xd5, 0x1b, 0xd7, 0x6f, 0x6c, 0xdc, 0x68, 0x6c, 0xd6, 0x6a, 0x4d, 0x66, - 0xcc, 0x95, 0x31, 0x69, 0xf8, 0xfe, 0x2d, 0x8a, 0x47, 0x33, 0xf1, 0x9f, 0x8a, 0x36, 0x8b, 0x86, - 0x26, 0xf6, 0x69, 0x90, 0xa4, 0xac, 0x7b, 0x19, 0xb5, 0xe5, 0x0c, 0xb7, 0xc5, 0x3c, 0xec, 0xc9, - 0x5f, 0xe2, 0xd4, 0x7c, 0x7b, 0xfa, 0xd4, 0xa3, 0xca, 0xff, 0xb0, 0xaf, 0xfc, 0x74, 0x8c, 0x52, - 0xbc, 0x4b, 0x52, 0x75, 0xc5, 0x72, 0xaa, 0xcd, 0x9a, 0x51, 0xd7, 0xa1, 0xda, 0xa8, 0xd5, 0xd9, - 0x01, 0x42, 0x87, 0x96, 0xa3, 0x22, 0x58, 0x55, 0xb0, 0x85, 0x90, 0x62, 0x37, 0xab, 0x8e, 0x22, - 0x5a, 0xc2, 0x9b, 0xe1, 0x66, 0x9f, 0xf5, 0xb0, 0xae, 0x5f, 0x13, 0x5e, 0x34, 0xa2, 0x6b, 0x44, - 0x45, 0x38, 0x9c, 0xe5, 0x6a, 0x7e, 0xf1, 0xb0, 0x27, 0xbf, 0xc5, 0x09, 0x47, 0xd5, 0x8c, 0xa8, - 0xf0, 0xf9, 0x7f, 0x1f, 0xa3, 0x61, 0x95, 0x90, 0x06, 0xae, 0x1a, 0x06, 0x44, 0x0d, 0x5c, 0x83, - 0x9a, 0xad, 0xeb, 0x10, 0x61, 0x45, 0x83, 0x0d, 0x4d, 0x75, 0x88, 0x55, 0x57, 0x2c, 0xbd, 0xd1, - 0x14, 0x87, 0xca, 0x21, 0x0d, 0x23, 0xca, 0x5d, 0x7c, 0x63, 0x06, 0x4c, 0x65, 0x79, 0xa4, 0xf2, - 0x53, 0xe0, 0x6c, 0x8b, 0xdc, 0x08, 0x70, 0xdc, 0x8d, 0x52, 0x71, 0xbb, 0x96, 0x12, 0xff, 0x6e, - 0x37, 0x22, 0xd2, 0x05, 0x00, 0x1c, 0x4a, 0x3c, 0xdb, 0x8c, 0x50, 0xba, 0x2b, 0x6e, 0xd0, 0x66, - 0x39, 0x64, 0x1b, 0xa5, 0xbb, 0xa3, 0x37, 0x6c, 0x47, 0x46, 0x6f, 0xd8, 0x2a, 0x5f, 0x02, 0xa7, - 0x46, 0x58, 0x27, 0x9c, 0xef, 0x26, 0x38, 0x4a, 0x53, 0xe2, 0x27, 0x72, 0xf9, 0xd2, 0xc4, 0xd5, - 0x39, 0x15, 0xae, 0x8e, 0xbb, 0x41, 0x5c, 0x7d, 0x82, 0x56, 0xad, 0x6c, 0x6e, 0xe5, 0xd7, 0xca, - 0x60, 0x41, 0x78, 0xcb, 0x8e, 0xd7, 0x76, 0xf9, 0x95, 0xe0, 0x29, 0x70, 0xb4, 0x83, 0xbc, 0x76, - 0x7e, 0xdb, 0x97, 0x0d, 0xa4, 0x33, 0x60, 0xca, 0x46, 0xc4, 0x0f, 0x03, 0xa1, 0xa2, 0x18, 0x49, - 0xcb, 0x60, 0x2e, 0xaa, 0x9a, 0x51, 0xe8, 0x65, 0xfa, 0x4f, 0x88, 0x1b, 0xc4, 0xea, 0x76, 0xe8, - 0xf1, 0x0b, 0xc2, 0x57, 0xc0, 0x62, 0x1e, 0x3b, 0x09, 0xf1, 0x08, 0x4e, 0xc3, 0x98, 0x5f, 0x7b, - 0xcc, 0xb6, 0x16, 0x04, 0x7c, 0x47, 0x80, 0x2b, 0xff, 0x7d, 0x0a, 0x9c, 0x28, 0x28, 0x23, 0xae, - 0xe5, 0x3e, 0x06, 0x8e, 0xf2, 0x54, 0x2f, 0xee, 0xde, 0x4e, 0x1e, 0xf4, 0xe4, 0x05, 0x01, 0x92, - 0x44, 0xcc, 0x6f, 0x95, 0x5a, 0x02, 0xf0, 0x59, 0x30, 0x95, 0x65, 0x79, 0x71, 0xe9, 0xa5, 0x1d, - 0xf4, 0xe4, 0x6a, 0x0e, 0x93, 0xb2, 0x44, 0x71, 0xb2, 0x5f, 0x40, 0xbc, 0x70, 0x5f, 0x14, 0x85, - 0xca, 0x1c, 0x43, 0xbd, 0xbd, 0xea, 0xe2, 0xd5, 0x57, 0xdf, 0xde, 0x2a, 0xb5, 0xf2, 0x19, 0x57, - 0xc0, 0xa4, 0x8d, 0x52, 0x24, 0xae, 0x9f, 0x16, 0x0f, 0x7a, 0xf2, 0x7c, 0x06, 0x91, 0x26, 0xad, - 0xd0, 0x4b, 0xb7, 0x4a, 0xad, 0x6c, 0x14, 0x80, 0x79, 0x1a, 0x38, 0x31, 0x8a, 0xe2, 0x30, 0x25, - 0x38, 0x15, 0x17, 0x3b, 0x5b, 0x07, 0x3d, 0xf9, 0xfa, 0x30, 0x46, 0x9a, 0xe1, 0x0f, 0x7b, 0x29, - 0x5d, 0x3a, 0x37, 0xa4, 0x47, 0x91, 0xa8, 0xb2, 0x90, 0x13, 0x0d, 0x34, 0x1a, 0xe6, 0xb2, 0x02, - 0x26, 0xf6, 0xfc, 0x44, 0xdc, 0xbd, 0x64, 0x6a, 0x31, 0x80, 0x74, 0x74, 0x8f, 0x74, 0xa3, 0x78, - 0xab, 0xd4, 0xe2, 0xa3, 0xab, 0xe0, 0x88, 0xef, 0x89, 0x0b, 0x8d, 0x33, 0x07, 0x3d, 0x59, 0x02, - 0xd3, 0xbe, 0xb7, 0xc6, 0x15, 0x9e, 0x46, 0x49, 0x4a, 0x62, 0xfa, 0x60, 0xab, 0xd4, 0x3a, 0xe2, - 0x7b, 0xd2, 0x2a, 0x98, 0x0e, 0x23, 0x12, 0xb3, 0xf3, 0x55, 0x76, 0x91, 0x20, 0x1d, 0xf4, 0xe4, - 0xe3, 0x7d, 0xa0, 0x34, 0x41, 0xa3, 0x68, 0xab, 0xd4, 0xea, 0x8f, 0xeb, 0x60, 0x26, 0xbb, 0xec, - 0x24, 0xb1, 0x38, 0x90, 0x9d, 0x3d, 0xe8, 0xc9, 0x27, 0x07, 0x50, 0x29, 0xbf, 0x06, 0xd9, 0x2a, - 0xb5, 0x06, 0xc0, 0xcf, 0x81, 0x13, 0xd9, 0x69, 0xc6, 0xf4, 0x51, 0x80, 0x5c, 0xe2, 0x93, 0x20, - 0x3f, 0x07, 0x55, 0x0e, 0x7a, 0xf2, 0xf2, 0x18, 0xb4, 0x34, 0x6b, 0x79, 0x34, 0xb0, 0x9d, 0xd0, - 0xb3, 0xb7, 0x4a, 0xad, 0xc5, 0x0c, 0x7f, 0x7b, 0x80, 0x6e, 0x82, 0xd9, 0xfe, 0xc1, 0x42, 0x9c, - 0x53, 0x32, 0x55, 0x06, 0x60, 0x49, 0x14, 0xb9, 0xad, 0x52, 0xab, 0x00, 0x7c, 0x05, 0x4c, 0xa4, - 0x91, 0x2f, 0xee, 0x1e, 0x4e, 0x1f, 0xf4, 0xe4, 0x13, 0x1c, 0x20, 0x81, 0x34, 0xf2, 0x33, 0xf1, - 0x7c, 0x1d, 0x19, 0xe8, 0x65, 0x30, 0xd1, 0x46, 0xbe, 0x38, 0xea, 0x2f, 0x1c, 0xf4, 0xe4, 0x39, - 0x0e, 0x90, 0x26, 0x49, 0x77, 0x9f, 0x39, 0x1f, 0x1f, 0xbc, 0x0c, 0x26, 0xf6, 0x89, 0x25, 0x8e, - 0xd5, 0x82, 0x68, 0x9f, 0x58, 0x03, 0x22, 0x36, 0x30, 0xc0, 0xac, 0x4d, 0x78, 0x30, 0xd0, 0xfc, - 0x00, 0xb2, 0x74, 0xd0, 0x93, 0xcf, 0x80, 0xd9, 0x64, 0x17, 0x45, 0x64, 0xcd, 0xa6, 0x91, 0x34, - 0xa0, 0x60, 0x6b, 0x97, 0x0d, 0x6e, 0xda, 0xd2, 0xc7, 0xc1, 0x64, 0x82, 0x1c, 0x22, 0xfa, 0xfc, - 0x6c, 0x3b, 0x41, 0x36, 0x8b, 0xc1, 0x25, 0x8e, 0x65, 0x0e, 0xc9, 0x47, 0x6f, 0x81, 0x93, 0xd8, - 0xa3, 0x24, 0x48, 0xcd, 0x84, 0xda, 0xc4, 0xb4, 0x89, 0x43, 0x82, 0x84, 0x88, 0x0e, 0x7b, 0xe5, - 0xa0, 0x27, 0x5f, 0xca, 0x45, 0xe2, 0xc4, 0x96, 0xc6, 0xd1, 0x6e, 0x95, 0x5a, 0x27, 0x32, 0xf0, - 0x0e, 0xb5, 0xc9, 0xf5, 0x0c, 0x28, 0x35, 0xc1, 0x9c, 0x15, 0xa6, 0x7d, 0x7e, 0x59, 0x2b, 0x7b, - 0xea, 0xa0, 0x27, 0x2f, 0xe6, 0xfc, 0xac, 0x30, 0x95, 0x26, 0x12, 0xc2, 0x94, 0x07, 0x56, 0x98, - 0xe6, 0x13, 0x3f, 0x05, 0xe6, 0x43, 0xeb, 0x1e, 0xc1, 0xa9, 0x99, 0xa4, 0x61, 0x4c, 0x44, 0x53, - 0x77, 0xee, 0xa0, 0x27, 0x9f, 0x1e, 0xc6, 0x48, 0x47, 0xef, 0x85, 0x09, 0x61, 0x2d, 0xc6, 0x5c, - 0x06, 0xde, 0xe1, 0xd0, 0xff, 0x0f, 0x66, 0x63, 0x82, 0x43, 0x37, 0xa0, 0x0f, 0x89, 0x68, 0x82, - 0x2e, 0x1d, 0xf4, 0xe4, 0xf3, 0x60, 0x21, 0x13, 0xdb, 0x47, 0x4a, 0x03, 0x3a, 0xb6, 0xe1, 0x03, - 0xf8, 0x5b, 0x60, 0xc2, 0x0e, 0x12, 0xd1, 0x77, 0x6c, 0x1c, 0xf4, 0xe4, 0x4f, 0x01, 0x90, 0x85, - 0xf9, 0x9a, 0x1d, 0x24, 0xd2, 0xb4, 0x45, 0x9d, 0x38, 0x4c, 0xd2, 0xa5, 0xb3, 0x63, 0xf2, 0x03, - 0xb4, 0x83, 0xa4, 0x72, 0x5c, 0x50, 0x0c, 0x82, 0x92, 0x31, 0x94, 0x56, 0xc1, 0xa4, 0xe5, 0xd8, - 0x91, 0xa8, 0xfe, 0xf2, 0x41, 0x4f, 0x3e, 0x05, 0xe6, 0x11, 0x35, 0x59, 0x9c, 0xad, 0x31, 0x8c, - 0xc4, 0xf1, 0x6c, 0x6b, 0xf8, 0xe8, 0x0a, 0x98, 0x4c, 0x30, 0xf5, 0x45, 0xe9, 0x12, 0x39, 0x85, - 0x41, 0x24, 0xfe, 0xcb, 0xb7, 0x90, 0x8d, 0x56, 0xc1, 0x04, 0xb6, 0x03, 0x59, 0x2e, 0x78, 0x09, - 0x03, 0x48, 0x0b, 0xd8, 0x0e, 0x70, 0x18, 0x04, 0x3c, 0x69, 0x26, 0x1d, 0xcc, 0xf4, 0x60, 0xf0, - 0xb7, 0xc1, 0x52, 0xe0, 0xd2, 0xe0, 0x81, 0xe9, 0xbb, 0x7e, 0x6a, 0x26, 0x6d, 0x9a, 0x12, 0xb3, - 0x4f, 0x27, 0x9f, 0xe3, 0x6c, 0x2e, 0x1c, 0xf4, 0xe4, 0x73, 0x60, 0x96, 0xd3, 0xad, 0x05, 0x7e, - 0x22, 0xcd, 0x07, 0x7e, 0xd2, 0x27, 0x62, 0xb5, 0x8e, 0xa3, 0x6e, 0xbb, 0x7e, 0xba, 0xc3, 0x18, - 0x6c, 0xe6, 0x28, 0xe9, 0x73, 0xe0, 0x4c, 0x61, 0xe3, 0x4d, 0x3f, 0xb4, 0xa8, 0x47, 0xcc, 0xc4, - 0xde, 0x93, 0x97, 0x0a, 0x0a, 0x2e, 0x64, 0xf0, 0xb5, 0x84, 0xe0, 0x76, 0x4c, 0xd3, 0x6e, 0xee, - 0x09, 0x27, 0x07, 0x9e, 0x70, 0x9b, 0x53, 0xec, 0xd8, 0x7b, 0x92, 0x02, 0x8e, 0x72, 0x69, 0xf2, - 0x4b, 0x05, 0x5f, 0xc8, 0x40, 0x8f, 0xe9, 0x25, 0xc0, 0x1a, 0x98, 0x62, 0xee, 0x8d, 0x22, 0xf9, - 0x7c, 0x41, 0xea, 0xfc, 0x20, 0x0c, 0x50, 0x24, 0x09, 0x0a, 0x96, 0xc5, 0x05, 0xe4, 0xe3, 0x60, - 0x02, 0xd1, 0x48, 0xbe, 0x50, 0xd8, 0x20, 0x06, 0x90, 0x8e, 0x21, 0x1a, 0x99, 0x45, 0x29, 0x1c, - 0xfa, 0x69, 0x30, 0x5f, 0xbc, 0xae, 0x91, 0x97, 0x8b, 0x92, 0x8a, 0x98, 0x42, 0x5e, 0x99, 0xf3, - 0x06, 0x37, 0x2c, 0x92, 0x03, 0xce, 0x86, 0x16, 0x2b, 0x6e, 0xc8, 0xa2, 0x1e, 0x4d, 0xbb, 0x85, - 0x5d, 0xb8, 0xc8, 0x79, 0x7d, 0xec, 0xa0, 0x27, 0x7f, 0x74, 0x84, 0x68, 0xad, 0x4f, 0x24, 0xcd, - 0x77, 0x28, 0x2a, 0x6a, 0x75, 0x66, 0x88, 0x70, 0xb0, 0x25, 0x6b, 0x60, 0x2a, 0x26, 0x51, 0x18, - 0xa7, 0xf2, 0xa5, 0x42, 0x12, 0x13, 0x30, 0x69, 0xda, 0xa7, 0x01, 0x9b, 0xc5, 0xd6, 0x41, 0x80, - 0xae, 0x82, 0x89, 0x7d, 0xe4, 0xc8, 0x97, 0x0b, 0x41, 0xcb, 0x00, 0xd2, 0x2c, 0x6a, 0xa7, 0xa1, - 0x8f, 0x52, 0x6e, 0x0a, 0x87, 0xbc, 0x53, 0x06, 0x17, 0x87, 0x6d, 0x48, 0xba, 0x41, 0xba, 0x4b, - 0x52, 0x8a, 0x4d, 0x3f, 0x0c, 0x28, 0xb3, 0xa5, 0xc2, 0xd9, 0x34, 0x0e, 0x7a, 0xb2, 0x3a, 0x42, - 0xbc, 0xf6, 0x18, 0xb1, 0xb4, 0xd0, 0xa1, 0x88, 0xb7, 0x6d, 0xa2, 0xe8, 0x6f, 0x95, 0x5a, 0x17, - 0x86, 0xe6, 0xec, 0xe4, 0x53, 0x6e, 0x8b, 0x19, 0xeb, 0x00, 0x64, 0xc7, 0x21, 0x5e, 0x80, 0x5f, - 0x2e, 0xb8, 0x48, 0x06, 0x87, 0x59, 0x1d, 0x0b, 0xbd, 0xae, 0x1f, 0xb5, 0x13, 0x16, 0xea, 0x1c, - 0x7c, 0x9d, 0x41, 0xdf, 0x00, 0x27, 0x84, 0x83, 0xd2, 0x20, 0x25, 0x6e, 0x8c, 0x98, 0xbe, 0x2b, - 0x9c, 0xc5, 0xf9, 0x83, 0x9e, 0x2c, 0xe7, 0xe8, 0xb5, 0x01, 0x3a, 0xf7, 0xd4, 0xc5, 0x0c, 0x73, - 0x73, 0x80, 0xf8, 0xf5, 0x32, 0x38, 0xc1, 0x64, 0x71, 0x5e, 0x9e, 0x47, 0x5d, 0x12, 0x60, 0x22, - 0x7f, 0x84, 0x73, 0xfb, 0x99, 0x83, 0x9e, 0xfc, 0xc5, 0x0c, 0x0d, 0x8b, 0x68, 0x69, 0xc1, 0x8a, - 0x7d, 0x06, 0xb5, 0x89, 0xc7, 0x7c, 0xa2, 0xbb, 0x74, 0x7e, 0x28, 0xab, 0x8c, 0x60, 0x2b, 0x67, - 0x46, 0x00, 0x83, 0x14, 0xb3, 0xc8, 0xc0, 0x37, 0x8b, 0xac, 0x3f, 0x09, 0x66, 0xad, 0xd8, 0xe7, - 0xfd, 0x4e, 0x22, 0x5f, 0x29, 0x84, 0xb5, 0x08, 0x83, 0x0c, 0x23, 0x0d, 0x88, 0xd8, 0xda, 0xf4, - 0x07, 0xd2, 0x27, 0xc1, 0x9c, 0x8f, 0xe2, 0x3d, 0x92, 0x46, 0x1e, 0xc2, 0x44, 0xfe, 0x68, 0x61, - 0x61, 0x8b, 0x08, 0x69, 0x2a, 0x4d, 0xd0, 0x2e, 0xdd, 0x63, 0xce, 0x5d, 0x04, 0xdf, 0x05, 0x27, - 0x0b, 0x43, 0x33, 0x0c, 0xac, 0x10, 0xc5, 0xb6, 0x7c, 0x95, 0xb3, 0xb9, 0x7c, 0xd0, 0x93, 0x2f, - 0x0c, 0x11, 0xac, 0x09, 0x82, 0x02, 0x3b, 0xa9, 0x80, 0xbe, 0x23, 0xb0, 0xff, 0x4f, 0xe4, 0x24, - 0x33, 0x0c, 0x88, 0xfc, 0x4a, 0x61, 0xa3, 0x44, 0xaa, 0x0a, 0x03, 0x22, 0xcd, 0x05, 0x4a, 0x31, - 0x2a, 0x66, 0x38, 0xe6, 0x4e, 0xc0, 0x6a, 0xd2, 0x0c, 0xee, 0x98, 0x51, 0x1c, 0x3e, 0xe8, 0xca, - 0xaf, 0x16, 0x6b, 0x2a, 0xf6, 0x08, 0x8a, 0x3b, 0x94, 0xec, 0x4b, 0x83, 0x47, 0xd6, 0xc5, 0xe0, - 0xce, 0x36, 0x23, 0x1e, 0xf4, 0xef, 0xaf, 0x4f, 0xce, 0x9c, 0x59, 0x3c, 0x5b, 0x21, 0x60, 0x4e, - 0xf4, 0x9f, 0xbc, 0x11, 0x1e, 0xb4, 0xbc, 0xe5, 0xa1, 0x96, 0xf7, 0x3c, 0x98, 0xf5, 0x42, 0xcc, - 0x6f, 0x1c, 0x13, 0xf9, 0x08, 0x7f, 0xad, 0x3c, 0x00, 0x48, 0x97, 0xc0, 0x5c, 0xfe, 0xda, 0x9d, - 0x86, 0x81, 0x68, 0x88, 0x8b, 0xa0, 0xca, 0x1d, 0x30, 0xcb, 0x5a, 0xe3, 0xbb, 0xe1, 0x9b, 0xd4, - 0x66, 0xcc, 0x58, 0xe3, 0x9c, 0x44, 0x6c, 0x33, 0x44, 0xf7, 0xdc, 0x07, 0x48, 0x12, 0x98, 0x2c, - 0xbc, 0x78, 0xe7, 0xcf, 0xd2, 0x22, 0x98, 0x68, 0x8b, 0x97, 0xed, 0xb3, 0x2d, 0xf6, 0x58, 0xb9, - 0x0e, 0x4e, 0x7d, 0xae, 0x1d, 0xa6, 0xa8, 0x45, 0x92, 0xb0, 0x1d, 0x63, 0x76, 0x7e, 0x7d, 0xf1, - 0x4e, 0xbe, 0xe2, 0x81, 0x05, 0x7e, 0xa5, 0x7a, 0x17, 0xc5, 0xae, 0xf8, 0x3a, 0xe0, 0x1c, 0x98, - 0xa1, 0x91, 0x69, 0xa1, 0x84, 0xd8, 0x59, 0x0b, 0xdc, 0x9a, 0xa6, 0xd1, 0x06, 0x1b, 0x0e, 0xf3, - 0x3e, 0x9a, 0xf3, 0xbe, 0x0a, 0x16, 0x9d, 0x30, 0x36, 0x45, 0x3d, 0x4f, 0xbb, 0x11, 0x49, 0x84, - 0x94, 0xe3, 0x4e, 0x18, 0xdf, 0xe1, 0x60, 0x76, 0xfe, 0x48, 0x2a, 0xb7, 0xc0, 0xc9, 0x6b, 0xdb, - 0x37, 0x3f, 0x13, 0x87, 0xed, 0xe8, 0x86, 0xc7, 0x5b, 0x39, 0x76, 0x36, 0x61, 0xca, 0xf9, 0x24, - 0xdd, 0x0d, 0xed, 0x7c, 0xcd, 0xb3, 0x11, 0xff, 0x4e, 0x01, 0xa5, 0xbb, 0x66, 0x4c, 0x5c, 0xf2, - 0x40, 0xb0, 0x9c, 0x65, 0x90, 0x16, 0x03, 0x54, 0xde, 0x2d, 0x3f, 0xce, 0x8e, 0x19, 0x30, 0x6e, - 0xfd, 0x9e, 0xbe, 0xe2, 0x9f, 0xce, 0x8f, 0x55, 0x47, 0xf8, 0xb1, 0xea, 0x95, 0xf1, 0xc7, 0xaa, - 0x31, 0xaa, 0xe7, 0x47, 0xaa, 0x77, 0xca, 0x60, 0xf1, 0x9a, 0x6d, 0x87, 0xc1, 0xf3, 0xb8, 0xd2, - 0x65, 0x30, 0x6f, 0xd3, 0x24, 0xf2, 0xd0, 0xd0, 0xf1, 0x6f, 0x4e, 0xc0, 0xf8, 0x01, 0x4a, 0x01, - 0xa7, 0x59, 0xde, 0x74, 0x99, 0x38, 0x4e, 0x94, 0x7f, 0x41, 0x91, 0xa9, 0x2e, 0xa1, 0x88, 0x72, - 0x55, 0x18, 0x71, 0xf6, 0xf9, 0x44, 0xe5, 0x0b, 0x83, 0xc5, 0x60, 0xd0, 0xdb, 0x28, 0xe2, 0x6b, - 0x7b, 0x0e, 0xcc, 0xc4, 0x11, 0x2e, 0x7e, 0xc9, 0x31, 0x1d, 0x47, 0x98, 0x0b, 0xb9, 0x02, 0x16, - 0x86, 0x85, 0xe4, 0xdb, 0x76, 0xac, 0xc8, 0x3e, 0xa9, 0x98, 0x60, 0x61, 0x84, 0xb3, 0x74, 0x0b, - 0xcc, 0x33, 0xae, 0x3e, 0x8a, 0x22, 0x1a, 0xb8, 0xf9, 0x71, 0xf4, 0x19, 0xeb, 0x56, 0x50, 0xab, - 0x35, 0x17, 0x47, 0xf8, 0xb6, 0x98, 0xbd, 0x7e, 0x0f, 0x1c, 0x4b, 0x3a, 0xd8, 0x4c, 0xbc, 0xb6, - 0x6b, 0x52, 0xfe, 0x81, 0xca, 0x6a, 0xf6, 0x51, 0xcb, 0x6a, 0xfe, 0x51, 0xcb, 0xea, 0x6b, 0xec, - 0xec, 0x7c, 0x27, 0xfb, 0x7a, 0x46, 0xfe, 0x8b, 0x5f, 0x61, 0xcb, 0x30, 0xa7, 0x7e, 0x64, 0xbc, - 0xbc, 0x91, 0xb3, 0x6d, 0x6b, 0x2e, 0xe9, 0xe0, 0x7c, 0xb0, 0x9e, 0x80, 0x85, 0xfb, 0x2c, 0x6c, - 0xcc, 0x78, 0x8f, 0x74, 0x9f, 0x4b, 0xda, 0xd7, 0x85, 0xb4, 0x57, 0xc7, 0x4b, 0x1b, 0x17, 0x84, - 0xad, 0x63, 0x5c, 0x46, 0x6b, 0x2f, 0x1b, 0xae, 0x53, 0x70, 0xdc, 0x72, 0xc4, 0x2b, 0xa0, 0xe7, - 0x92, 0xf9, 0x0d, 0x21, 0xb3, 0x32, 0x5e, 0x66, 0xf1, 0x6b, 0x9e, 0xd6, 0xbc, 0xe5, 0x0c, 0x46, - 0xeb, 0x3f, 0x0d, 0x66, 0xd8, 0x5a, 0x3e, 0x8f, 0x90, 0x6f, 0x0a, 0x21, 0x97, 0x9f, 0xba, 0x8c, - 0x5c, 0xc6, 0x74, 0xd2, 0xc1, 0x9c, 0xfd, 0xcf, 0x82, 0x39, 0xee, 0x8e, 0x69, 0x68, 0xb6, 0xa9, - 0xfd, 0x2c, 0x09, 0x7f, 0x29, 0x24, 0x5c, 0x1c, 0x2f, 0xa1, 0x9f, 0x10, 0xb3, 0x58, 0xe4, 0x8f, - 0xeb, 0x31, 0x38, 0x91, 0xbd, 0x91, 0x4a, 0x79, 0x4a, 0x7a, 0x2e, 0x4b, 0xfe, 0xea, 0xe9, 0x0e, - 0x31, 0x92, 0xe1, 0x5a, 0x0b, 0xf1, 0x30, 0x60, 0xbd, 0x0d, 0x24, 0xc4, 0xa2, 0xb7, 0x7f, 0xe3, - 0xf7, 0x3c, 0x42, 0xbf, 0x25, 0x84, 0x5e, 0x79, 0x82, 0xd7, 0x8f, 0xa4, 0x83, 0xd6, 0x22, 0x1a, - 0x81, 0xac, 0x77, 0x73, 0xb1, 0x0e, 0x41, 0x69, 0x3b, 0x16, 0x62, 0x2f, 0x3f, 0x26, 0xf6, 0x46, - 0xd0, 0xf6, 0xdf, 0x62, 0xa9, 0xf6, 0x7f, 0x27, 0xfa, 0xb5, 0x4c, 0x0a, 0x17, 0xfd, 0x8b, 0x65, - 0x20, 0xe3, 0xb8, 0x6d, 0xf7, 0x2d, 0xe6, 0xc1, 0x97, 0x15, 0x46, 0xe9, 0xe2, 0x63, 0x1a, 0xdc, - 0x26, 0x49, 0x82, 0xdc, 0xbe, 0xfc, 0xdf, 0x7d, 0x37, 0x93, 0xff, 0xd1, 0x67, 0x06, 0x60, 0x76, - 0x9f, 0xd3, 0x3a, 0xcd, 0x64, 0x3d, 0x06, 0x5e, 0xff, 0x02, 0x38, 0xcb, 0x95, 0x18, 0xa4, 0xa1, - 0x2c, 0xcd, 0x91, 0xe4, 0xd9, 0x3a, 0xfc, 0xde, 0xbb, 0x59, 0x2e, 0x3c, 0xc5, 0x38, 0x5c, 0x13, - 0x09, 0x6b, 0x5b, 0x4c, 0x5f, 0xef, 0x82, 0x53, 0x23, 0x9c, 0x79, 0x82, 0x7b, 0x36, 0xdb, 0xaf, - 0xbd, 0xfb, 0x54, 0x57, 0x1a, 0xc9, 0x65, 0xad, 0x13, 0x45, 0xe9, 0x3c, 0x5d, 0xae, 0x7f, 0x19, - 0x48, 0x31, 0x31, 0x49, 0x76, 0x03, 0x27, 0x82, 0xfe, 0x39, 0x04, 0xff, 0xfe, 0xbb, 0x4f, 0x4d, - 0x33, 0xe3, 0xae, 0x03, 0x5b, 0x8b, 0xf1, 0x08, 0x74, 0x7d, 0xeb, 0xb1, 0x9c, 0x2e, 0x2d, 0x8f, - 0x91, 0xcc, 0xca, 0x6b, 0x2e, 0xf8, 0x3f, 0xc5, 0x42, 0x0e, 0x67, 0xfd, 0xf5, 0x77, 0xca, 0xe0, - 0xcc, 0x80, 0x15, 0xc9, 0x6a, 0x5e, 0xe6, 0xa1, 0xcf, 0xe2, 0xf8, 0x5f, 0xc2, 0x94, 0xe7, 0xac, - 0xa3, 0xcc, 0x43, 0x4f, 0xe6, 0xc2, 0x0b, 0xc0, 0xf5, 0x87, 0xe0, 0xe4, 0xf3, 0xb9, 0xa7, 0xf0, - 0xac, 0x5c, 0xfe, 0x8f, 0x7e, 0xf5, 0x05, 0xdd, 0xf3, 0x44, 0x32, 0x0a, 0xda, 0x78, 0xa7, 0xfc, - 0xde, 0x07, 0xcb, 0xa5, 0xf7, 0x3f, 0x58, 0x2e, 0xfd, 0xf8, 0x83, 0xe5, 0xf2, 0x3b, 0x8f, 0x96, - 0xcb, 0x7f, 0xf2, 0x68, 0xb9, 0xfc, 0xdd, 0x47, 0xcb, 0xe5, 0xf7, 0x1e, 0x2d, 0x97, 0x7f, 0xf4, - 0x68, 0xb9, 0xfc, 0x1f, 0x8f, 0x96, 0x4b, 0x3f, 0x7e, 0xb4, 0x5c, 0xfe, 0xea, 0x87, 0xcb, 0xa5, - 0xf7, 0x3e, 0x5c, 0x2e, 0xbd, 0xff, 0xe1, 0x72, 0xe9, 0x8b, 0xaf, 0xbb, 0x61, 0xb4, 0xe7, 0xae, - 0x76, 0x42, 0x8f, 0x5f, 0x3a, 0xad, 0xb6, 0x93, 0xb5, 0xc1, 0x2b, 0xf0, 0x28, 0x0e, 0x3b, 0xd4, - 0x26, 0x31, 0xcc, 0xd1, 0x6b, 0x91, 0xe5, 0x86, 0x6b, 0xe4, 0x41, 0x2a, 0xbe, 0x12, 0x1d, 0xfa, - 0x58, 0xd4, 0x9a, 0xe2, 0xf6, 0xd5, 0xfe, 0x27, 0x00, 0x00, 0xff, 0xff, 0xa6, 0x15, 0x39, 0x5a, - 0x4b, 0x2a, 0x00, 0x00, + 0x88, 0x54, 0xa4, 0x57, 0x6d, 0x5d, 0xa9, 0xeb, 0x86, 0x23, 0xf2, 0xd7, 0x0e, 0x93, 0x7b, 0x9d, + 0x06, 0x87, 0x5b, 0x47, 0xc9, 0x76, 0x37, 0xc4, 0xdb, 0x6e, 0x34, 0x30, 0x8c, 0xc5, 0x3b, 0x3f, + 0x37, 0x14, 0xea, 0xaf, 0x19, 0xc5, 0xb4, 0xc3, 0xfe, 0x59, 0x4d, 0x39, 0x5b, 0xa8, 0x29, 0x79, + 0xb0, 0x17, 0x68, 0x47, 0x2d, 0x29, 0x22, 0x04, 0x13, 0x5e, 0x5e, 0x7e, 0xfb, 0x81, 0xed, 0xaa, + 0x4c, 0x75, 0x48, 0xac, 0xae, 0x55, 0x15, 0x62, 0xd4, 0x51, 0xa3, 0x0e, 0x55, 0xa2, 0x34, 0xa0, + 0xa6, 0x6b, 0x36, 0xb4, 0xb4, 0x6a, 0x0d, 0x1a, 0x48, 0x77, 0x50, 0xd5, 0xa9, 0x37, 0xea, 0x46, + 0x5d, 0x9c, 0x4e, 0x0b, 0x65, 0x7b, 0x2f, 0x63, 0xcd, 0xea, 0xc8, 0x07, 0x65, 0x7e, 0xc0, 0x9f, + 0x98, 0x7e, 0xef, 0x98, 0x1e, 0xc5, 0x13, 0x52, 0xf0, 0x39, 0x6e, 0x52, 0xfb, 0xb8, 0x2f, 0xdf, + 0x19, 0xdc, 0x0e, 0x3c, 0x90, 0x82, 0xef, 0x40, 0x8f, 0xe2, 0x09, 0x69, 0xf8, 0xdf, 0x1e, 0x91, + 0x86, 0x35, 0xe3, 0xaa, 0xa1, 0xd5, 0x1a, 0xd0, 0x50, 0x8c, 0xab, 0x50, 0xab, 0xd5, 0x0d, 0x68, + 0x6c, 0xef, 0xbc, 0x0e, 0xd5, 0xab, 0xaf, 0x5f, 0xdd, 0xbe, 0xda, 0xd8, 0xa9, 0xd5, 0x9a, 0xcc, + 0x98, 0xcb, 0x13, 0xd2, 0xf0, 0x9d, 0xeb, 0x14, 0x8f, 0x67, 0xe2, 0x3f, 0x15, 0x6d, 0x16, 0x0d, + 0x4d, 0xec, 0xd3, 0x20, 0x49, 0x59, 0xf7, 0x32, 0x6e, 0xcb, 0x79, 0x6e, 0x8b, 0x79, 0xdc, 0x97, + 0xbf, 0xc0, 0xa9, 0xf9, 0xf6, 0x0c, 0xa8, 0xc7, 0x95, 0xff, 0xc1, 0x40, 0xf9, 0xd9, 0x18, 0xa5, + 0xf8, 0x80, 0xa4, 0xea, 0x9a, 0xe5, 0x54, 0x9b, 0x35, 0xa3, 0xae, 0x43, 0xb5, 0x51, 0xab, 0xb3, + 0x03, 0x84, 0x0e, 0x2d, 0x47, 0x45, 0xb0, 0xaa, 0x60, 0x0b, 0x21, 0xc5, 0x6e, 0x56, 0x1d, 0x45, + 0xb4, 0x84, 0xd7, 0xc2, 0x9d, 0x01, 0xeb, 0x51, 0x5d, 0xbf, 0x22, 0xbc, 0x68, 0x4c, 0xd7, 0x88, + 0x8a, 0x70, 0xb8, 0xc0, 0xd5, 0xfc, 0xfc, 0x71, 0x5f, 0x7e, 0x87, 0x13, 0x8e, 0xab, 0x19, 0x51, + 0xe1, 0xf3, 0xff, 0x3e, 0x41, 0xc3, 0x2a, 0x21, 0x0d, 0x5c, 0x35, 0x0c, 0x88, 0x1a, 0xb8, 0x06, + 0x35, 0x5b, 0xd7, 0x21, 0xc2, 0x8a, 0x06, 0x1b, 0x9a, 0xea, 0x10, 0xab, 0xae, 0x58, 0x7a, 0xa3, + 0x29, 0x0e, 0x95, 0x23, 0x1a, 0x46, 0x94, 0xbb, 0xf8, 0xf6, 0x1c, 0x98, 0xc9, 0xf2, 0x48, 0xe5, + 0xa7, 0xc0, 0x85, 0x16, 0xb9, 0x1a, 0xe0, 0xb8, 0x1b, 0xa5, 0xe2, 0x76, 0x2d, 0x25, 0xfe, 0xad, + 0x6e, 0x44, 0xa4, 0x8b, 0x00, 0x38, 0x94, 0x78, 0xb6, 0x19, 0xa1, 0xf4, 0x40, 0xdc, 0xa0, 0xcd, + 0x73, 0xc8, 0x1e, 0x4a, 0x0f, 0xc6, 0x6f, 0xd8, 0x4e, 0x8c, 0xdf, 0xb0, 0x55, 0xbe, 0x00, 0xce, + 0x8e, 0xb1, 0x4e, 0x38, 0xdf, 0x1d, 0x70, 0x92, 0xa6, 0xc4, 0x4f, 0xe4, 0xf2, 0xa5, 0xa9, 0x2b, + 0x0b, 0x2a, 0x5c, 0x9f, 0x74, 0x83, 0xb8, 0xfe, 0x10, 0xad, 0x5a, 0xd9, 0xdc, 0xca, 0xaf, 0x95, + 0xc1, 0x92, 0xf0, 0x96, 0x7d, 0xaf, 0xed, 0xf2, 0x2b, 0xc1, 0xb3, 0xe0, 0x64, 0x07, 0x79, 0xed, + 0xfc, 0xb6, 0x2f, 0x1b, 0x48, 0xe7, 0xc1, 0x8c, 0x8d, 0x88, 0x1f, 0x06, 0x42, 0x45, 0x31, 0x92, + 0x56, 0xc1, 0x42, 0x54, 0x35, 0xa3, 0xd0, 0xcb, 0xf4, 0x9f, 0x12, 0x37, 0x88, 0xd5, 0xbd, 0xd0, + 0xe3, 0x17, 0x84, 0x2f, 0x83, 0xe5, 0x3c, 0x76, 0x12, 0xe2, 0x11, 0x9c, 0x86, 0x31, 0xbf, 0xf6, + 0x98, 0x6f, 0x2d, 0x09, 0xf8, 0xbe, 0x00, 0x57, 0xfe, 0xf3, 0x1c, 0x38, 0x5d, 0x50, 0x46, 0x5c, + 0xcb, 0xbd, 0x0a, 0x4e, 0xf2, 0x54, 0x2f, 0xee, 0xde, 0xce, 0xf4, 0xfa, 0xf2, 0x92, 0x00, 0x49, + 0x22, 0xe6, 0x77, 0x4b, 0x2d, 0x01, 0xf8, 0x34, 0x98, 0xc9, 0xb2, 0xbc, 0xb8, 0xf4, 0xd2, 0x7a, + 0x7d, 0xb9, 0x9a, 0xc3, 0xa4, 0x2c, 0x51, 0x9c, 0x19, 0x14, 0x10, 0x2f, 0x3c, 0x12, 0x45, 0xa1, + 0xb2, 0xc0, 0x50, 0xef, 0xae, 0xbb, 0x78, 0xfd, 0x95, 0x77, 0x77, 0x4b, 0xad, 0x7c, 0xc6, 0x65, + 0x30, 0x6d, 0xa3, 0x14, 0x89, 0xeb, 0xa7, 0xe5, 0x5e, 0x5f, 0x5e, 0xcc, 0x20, 0xd2, 0xb4, 0x15, + 0x7a, 0xe9, 0x6e, 0xa9, 0x95, 0x8d, 0x02, 0xb0, 0x48, 0x03, 0x27, 0x46, 0x51, 0x1c, 0xa6, 0x04, + 0xa7, 0xe2, 0x62, 0x67, 0xb7, 0xd7, 0x97, 0x5f, 0x1f, 0xc5, 0x48, 0x73, 0xfc, 0xe1, 0x30, 0xa5, + 0x2b, 0xcf, 0x8e, 0xe8, 0x51, 0x24, 0xaa, 0x2c, 0xe5, 0x44, 0x43, 0x8d, 0x46, 0xb9, 0xac, 0x81, + 0xa9, 0x43, 0x3f, 0x11, 0x77, 0x2f, 0x99, 0x5a, 0x0c, 0x20, 0x9d, 0x3c, 0x24, 0xdd, 0x28, 0xde, + 0x2d, 0xb5, 0xf8, 0xe8, 0x0a, 0x38, 0xe1, 0x7b, 0xe2, 0x42, 0xe3, 0x7c, 0xaf, 0x2f, 0x4b, 0x60, + 0xd6, 0xf7, 0x36, 0xb8, 0xc2, 0xb3, 0x28, 0x49, 0x49, 0x4c, 0xef, 0xee, 0x96, 0x5a, 0x27, 0x7c, + 0x4f, 0x5a, 0x07, 0xb3, 0x61, 0x44, 0x62, 0x76, 0xbe, 0xca, 0x2e, 0x12, 0xa4, 0x5e, 0x5f, 0x7e, + 0x66, 0x00, 0x94, 0xa6, 0x68, 0x14, 0xed, 0x96, 0x5a, 0x83, 0x71, 0x1d, 0xcc, 0x65, 0x97, 0x9d, + 0x24, 0x16, 0x07, 0xb2, 0x0b, 0xbd, 0xbe, 0x7c, 0x66, 0x08, 0x95, 0xf2, 0x6b, 0x90, 0xdd, 0x52, + 0x6b, 0x08, 0xfc, 0x0c, 0x38, 0x9d, 0x9d, 0x66, 0x4c, 0x1f, 0x05, 0xc8, 0x25, 0x3e, 0x09, 0xf2, + 0x73, 0x50, 0xa5, 0xd7, 0x97, 0x57, 0x27, 0xa0, 0xa5, 0x79, 0xcb, 0xa3, 0x81, 0xed, 0x84, 0x9e, + 0xbd, 0x5b, 0x6a, 0x2d, 0x67, 0xf8, 0x1b, 0x43, 0x74, 0x13, 0xcc, 0x0f, 0x0e, 0x16, 0xe2, 0x9c, + 0x92, 0xa9, 0x32, 0x04, 0x4b, 0xa2, 0xc8, 0xed, 0x96, 0x5a, 0x05, 0xe0, 0xcb, 0x60, 0x2a, 0x8d, + 0x7c, 0x71, 0xf7, 0x70, 0xae, 0xd7, 0x97, 0x4f, 0x73, 0x80, 0x04, 0xd2, 0xc8, 0xcf, 0xc4, 0xf3, + 0x75, 0x64, 0xa0, 0x97, 0xc0, 0x54, 0x1b, 0xf9, 0xe2, 0xa8, 0xbf, 0xd4, 0xeb, 0xcb, 0x0b, 0x1c, + 0x20, 0x4d, 0x93, 0xee, 0x11, 0x73, 0x3e, 0x3e, 0x78, 0x09, 0x4c, 0x1d, 0x11, 0x4b, 0x1c, 0xab, + 0x05, 0xd1, 0x11, 0xb1, 0x86, 0x44, 0x6c, 0x60, 0x80, 0x79, 0x9b, 0xf0, 0x60, 0xa0, 0xf9, 0x01, + 0x64, 0xa5, 0xd7, 0x97, 0xcf, 0x83, 0xf9, 0xe4, 0x00, 0x45, 0x64, 0xc3, 0xa6, 0x91, 0x34, 0xa4, + 0x60, 0x6b, 0x97, 0x0d, 0xae, 0xd9, 0xd2, 0x6b, 0x60, 0x3a, 0x41, 0x0e, 0x11, 0x7d, 0x7e, 0xb6, + 0x9d, 0x20, 0x9b, 0xc5, 0xe0, 0x12, 0xc7, 0x32, 0x87, 0xe4, 0xa3, 0x77, 0xc0, 0x19, 0xec, 0x51, + 0x12, 0xa4, 0x66, 0x42, 0x6d, 0x62, 0xda, 0xc4, 0x21, 0x41, 0x42, 0x44, 0x87, 0xbd, 0xd6, 0xeb, + 0xcb, 0x97, 0x72, 0x91, 0x38, 0xb1, 0xa5, 0x49, 0xb4, 0xbb, 0xa5, 0xd6, 0xe9, 0x0c, 0xbc, 0x4f, + 0x6d, 0xf2, 0x7a, 0x06, 0x94, 0x9a, 0x60, 0xc1, 0x0a, 0xd3, 0x01, 0xbf, 0xac, 0x95, 0x3d, 0xdb, + 0xeb, 0xcb, 0xcb, 0x39, 0x3f, 0x2b, 0x4c, 0xa5, 0xa9, 0x84, 0x30, 0xe5, 0x81, 0x15, 0xa6, 0xf9, + 0xc4, 0x4f, 0x80, 0xc5, 0xd0, 0xba, 0x4d, 0x70, 0x6a, 0x26, 0x69, 0x18, 0x13, 0xd1, 0xd4, 0x3d, + 0xdb, 0xeb, 0xcb, 0xe7, 0x46, 0x31, 0xd2, 0xc9, 0xdb, 0x61, 0x42, 0x58, 0x8b, 0xb1, 0x90, 0x81, + 0xf7, 0x39, 0xf4, 0xff, 0x83, 0xf9, 0x98, 0xe0, 0xd0, 0x0d, 0xe8, 0x3d, 0x22, 0x9a, 0xa0, 0x4b, + 0xbd, 0xbe, 0xfc, 0x3c, 0x58, 0xca, 0xc4, 0x0e, 0x90, 0xd2, 0x90, 0x8e, 0x6d, 0xf8, 0x10, 0xfe, + 0x0e, 0x98, 0xb2, 0x83, 0x44, 0xf4, 0x1d, 0xdb, 0xbd, 0xbe, 0xfc, 0x09, 0x00, 0xb2, 0x30, 0xdf, + 0xb0, 0x83, 0x44, 0x9a, 0xb5, 0xa8, 0x13, 0x87, 0x49, 0xba, 0x72, 0x61, 0x42, 0x7e, 0x80, 0x76, + 0x90, 0x54, 0x9e, 0x11, 0x14, 0xc3, 0xa0, 0x64, 0x0c, 0xa5, 0x75, 0x30, 0x6d, 0x39, 0x76, 0x24, + 0xaa, 0xbf, 0xdc, 0xeb, 0xcb, 0x67, 0xc1, 0x22, 0xa2, 0x26, 0x8b, 0xb3, 0x0d, 0x86, 0x91, 0x38, + 0x9e, 0x6d, 0x0d, 0x1f, 0x5d, 0x06, 0xd3, 0x09, 0xa6, 0xbe, 0x28, 0x5d, 0x22, 0xa7, 0x30, 0x88, + 0xc4, 0x7f, 0xf9, 0x16, 0xb2, 0xd1, 0x3a, 0x98, 0xc2, 0x76, 0x20, 0xcb, 0x05, 0x2f, 0x61, 0x00, + 0x69, 0x09, 0xdb, 0x01, 0x0e, 0x83, 0x80, 0x27, 0xcd, 0xa4, 0x83, 0x99, 0x1e, 0x0c, 0xfe, 0x2e, + 0x58, 0x09, 0x5c, 0x1a, 0xdc, 0x35, 0x7d, 0xd7, 0x4f, 0xcd, 0xa4, 0x4d, 0x53, 0x62, 0x0e, 0xe8, + 0xe4, 0x67, 0x39, 0x9b, 0x8b, 0xbd, 0xbe, 0xfc, 0x2c, 0x98, 0xe7, 0x74, 0x1b, 0x81, 0x9f, 0x48, + 0x8b, 0x81, 0x9f, 0x0c, 0x88, 0x58, 0xad, 0xe3, 0xa8, 0x1b, 0xae, 0x9f, 0xee, 0x33, 0x06, 0x3b, + 0x39, 0x4a, 0xfa, 0x0c, 0x38, 0x5f, 0xd8, 0x78, 0xd3, 0x0f, 0x2d, 0xea, 0x11, 0x33, 0xb1, 0x0f, + 0xe5, 0x95, 0x82, 0x82, 0x4b, 0x19, 0x7c, 0x23, 0x21, 0xb8, 0x1d, 0xd3, 0xb4, 0x9b, 0x7b, 0xc2, + 0x99, 0xa1, 0x27, 0xdc, 0xe0, 0x14, 0xfb, 0xf6, 0xa1, 0xa4, 0x80, 0x93, 0x5c, 0x9a, 0xfc, 0x5c, + 0xc1, 0x17, 0x32, 0xd0, 0x03, 0x7a, 0x09, 0xb0, 0x06, 0x66, 0x98, 0x7b, 0xa3, 0x48, 0x7e, 0xbe, + 0x20, 0x75, 0x71, 0x18, 0x06, 0x28, 0x92, 0x04, 0x05, 0xcb, 0xe2, 0x02, 0xf2, 0x1a, 0x98, 0x42, + 0x34, 0x92, 0x2f, 0x16, 0x36, 0x88, 0x01, 0xa4, 0x53, 0x88, 0x46, 0x66, 0x51, 0x0a, 0x87, 0x7e, + 0x12, 0x2c, 0x16, 0xaf, 0x6b, 0xe4, 0xd5, 0xa2, 0xa4, 0x22, 0xa6, 0x90, 0x57, 0x16, 0xbc, 0xe1, + 0x0d, 0x8b, 0xe4, 0x80, 0x0b, 0xa1, 0xc5, 0x8a, 0x1b, 0xb2, 0xa8, 0x47, 0xd3, 0x6e, 0x61, 0x17, + 0x5e, 0xe0, 0xbc, 0x5e, 0xed, 0xf5, 0xe5, 0x8f, 0x8e, 0x11, 0x6d, 0x0c, 0x88, 0xa4, 0xc5, 0x0e, + 0x45, 0x45, 0xad, 0xce, 0x8f, 0x10, 0x0e, 0xb7, 0x64, 0x03, 0xcc, 0xc4, 0x24, 0x0a, 0xe3, 0x54, + 0xbe, 0x54, 0x48, 0x62, 0x02, 0x26, 0xcd, 0xfa, 0x34, 0x60, 0xb3, 0xd8, 0x3a, 0x08, 0xd0, 0x15, + 0x30, 0x75, 0x84, 0x1c, 0xf9, 0xc5, 0x42, 0xd0, 0x32, 0x80, 0x34, 0x8f, 0xda, 0x69, 0xe8, 0xa3, + 0x94, 0x9b, 0xc2, 0x21, 0xef, 0x95, 0xc1, 0x0b, 0xa3, 0x36, 0x24, 0xdd, 0x20, 0x3d, 0x20, 0x29, + 0xc5, 0xa6, 0x1f, 0x06, 0x94, 0xd9, 0x52, 0xe1, 0x6c, 0x1a, 0xbd, 0xbe, 0xac, 0x8e, 0x11, 0x6f, + 0x3c, 0x40, 0x2c, 0x2d, 0x75, 0x28, 0xe2, 0x6d, 0x9b, 0x28, 0xfa, 0xbb, 0xa5, 0xd6, 0xc5, 0x91, + 0x39, 0xfb, 0xf9, 0x94, 0x1b, 0x62, 0xc6, 0x26, 0x00, 0xd9, 0x71, 0x88, 0x17, 0xe0, 0x97, 0x0a, + 0x2e, 0x92, 0xc1, 0x61, 0x56, 0xc7, 0x42, 0xaf, 0xeb, 0x47, 0xed, 0x84, 0x85, 0x3a, 0x07, 0xbf, + 0xce, 0xa0, 0x6f, 0x81, 0xd3, 0xc2, 0x41, 0x69, 0x90, 0x12, 0x37, 0x46, 0x4c, 0xdf, 0x35, 0xce, + 0xe2, 0xf9, 0x5e, 0x5f, 0x96, 0x73, 0xf4, 0xc6, 0x10, 0x9d, 0x7b, 0xea, 0x72, 0x86, 0xb9, 0x36, + 0x44, 0xfc, 0x7a, 0x19, 0x9c, 0x66, 0xb2, 0x38, 0x2f, 0xcf, 0xa3, 0x2e, 0x09, 0x30, 0x91, 0x3f, + 0xc2, 0xb9, 0xfd, 0x4c, 0xaf, 0x2f, 0x7f, 0x3e, 0x43, 0xc3, 0x22, 0x5a, 0x5a, 0xb2, 0x62, 0x9f, + 0x41, 0x6d, 0xe2, 0x31, 0x9f, 0xe8, 0xae, 0x3c, 0x3f, 0x92, 0x55, 0xc6, 0xb0, 0x95, 0xf3, 0x63, + 0x80, 0x61, 0x8a, 0x59, 0x66, 0xe0, 0x6b, 0x45, 0xd6, 0x1f, 0x07, 0xf3, 0x56, 0xec, 0xf3, 0x7e, + 0x27, 0x91, 0x2f, 0x17, 0xc2, 0x5a, 0x84, 0x41, 0x86, 0x91, 0x86, 0x44, 0x6c, 0x6d, 0x06, 0x03, + 0xe9, 0xe3, 0x60, 0xc1, 0x47, 0xf1, 0x21, 0x49, 0x23, 0x0f, 0x61, 0x22, 0x7f, 0xb4, 0xb0, 0xb0, + 0x45, 0x84, 0x34, 0x93, 0x26, 0xe8, 0x80, 0x1e, 0x32, 0xe7, 0x2e, 0x82, 0x6f, 0x81, 0x33, 0x85, + 0xa1, 0x19, 0x06, 0x56, 0x88, 0x62, 0x5b, 0xbe, 0xc2, 0xd9, 0xbc, 0xd8, 0xeb, 0xcb, 0x17, 0x47, + 0x08, 0x36, 0x04, 0x41, 0x81, 0x9d, 0x54, 0x40, 0xdf, 0x14, 0xd8, 0xff, 0x27, 0x72, 0x92, 0x19, + 0x06, 0x44, 0x7e, 0xb9, 0xb0, 0x51, 0x22, 0x55, 0x85, 0x01, 0x91, 0x16, 0x02, 0xa5, 0x18, 0x15, + 0x73, 0x1c, 0x73, 0x33, 0x60, 0x35, 0x69, 0x0e, 0x77, 0xcc, 0x28, 0x0e, 0xef, 0x76, 0xe5, 0x57, + 0x8a, 0x35, 0x15, 0x7b, 0x04, 0xc5, 0x1d, 0x4a, 0x8e, 0xa4, 0xe1, 0x23, 0xeb, 0x62, 0x70, 0x67, + 0x8f, 0x11, 0x4b, 0x10, 0xcc, 0xb8, 0x24, 0x30, 0x11, 0x95, 0x5f, 0x2d, 0x84, 0x04, 0x83, 0x41, + 0x44, 0x59, 0x1e, 0x39, 0x40, 0x5d, 0xde, 0x5c, 0xba, 0x24, 0xd8, 0xa2, 0xd2, 0x2e, 0x58, 0x4a, + 0xba, 0x01, 0x36, 0x0b, 0x6e, 0xf9, 0x1a, 0x9f, 0xb7, 0xda, 0xeb, 0xcb, 0x2b, 0x19, 0x12, 0x16, + 0x7d, 0x53, 0x9c, 0xa9, 0x77, 0x4b, 0xad, 0x53, 0x0c, 0xb7, 0x93, 0xfb, 0xe7, 0xf0, 0xe0, 0xf0, + 0xe6, 0xf4, 0xdc, 0xf9, 0xe5, 0x0b, 0x15, 0x02, 0x16, 0x44, 0xe3, 0xcb, 0x3b, 0xf0, 0x61, 0xaf, + 0x5d, 0x1e, 0xe9, 0xb5, 0x9f, 0x07, 0xf3, 0x5e, 0x88, 0xf9, 0x55, 0x67, 0x22, 0x9f, 0xe0, 0xef, + 0xb3, 0x87, 0x00, 0xe9, 0x12, 0x58, 0xc8, 0xdf, 0xf7, 0xd3, 0x30, 0x10, 0x9d, 0x78, 0x11, 0x54, + 0xb9, 0x09, 0xe6, 0x59, 0x4f, 0x7e, 0x2b, 0x7c, 0x9b, 0xda, 0x8c, 0x19, 0xeb, 0xd8, 0x93, 0x88, + 0x79, 0x81, 0x68, 0xdb, 0x07, 0x00, 0x49, 0x02, 0xd3, 0x85, 0x37, 0xfe, 0xfc, 0x59, 0x5a, 0x06, + 0x53, 0x6d, 0xf1, 0x96, 0x7f, 0xbe, 0xc5, 0x1e, 0x2b, 0xaf, 0x83, 0xb3, 0x9f, 0x69, 0x87, 0x29, + 0x6a, 0x91, 0x24, 0x6c, 0xc7, 0x98, 0x1d, 0x9c, 0x9f, 0xfe, 0x08, 0x51, 0xf1, 0xc0, 0x12, 0xbf, + 0xcb, 0xbd, 0x85, 0x62, 0x57, 0x7c, 0x96, 0xf0, 0x2c, 0x98, 0xa3, 0x91, 0x69, 0xa1, 0x84, 0xd8, + 0x59, 0xef, 0xdd, 0x9a, 0xa5, 0xd1, 0x36, 0x1b, 0x8e, 0xf2, 0x3e, 0x99, 0xf3, 0xbe, 0x02, 0x96, + 0x9d, 0x30, 0x36, 0x45, 0x23, 0x91, 0x76, 0x23, 0x92, 0x08, 0x29, 0xcf, 0x38, 0x61, 0x7c, 0x93, + 0x83, 0xd9, 0xc1, 0x27, 0xa9, 0x5c, 0x07, 0x67, 0xb6, 0xf6, 0xae, 0x7d, 0x2a, 0x0e, 0xdb, 0xd1, + 0x55, 0x8f, 0xf7, 0x90, 0xec, 0x50, 0xc4, 0x94, 0xf3, 0x49, 0x7a, 0x10, 0xda, 0xf9, 0x9a, 0x67, + 0x23, 0xfe, 0x81, 0x04, 0x4a, 0x0f, 0xcc, 0x98, 0xb8, 0xe4, 0xae, 0x60, 0x39, 0xcf, 0x20, 0x2d, + 0x06, 0xa8, 0xbc, 0x5f, 0x7e, 0x90, 0x1d, 0x33, 0x60, 0xd2, 0xfa, 0x3d, 0x7a, 0xc5, 0x3f, 0x99, + 0x9f, 0xe7, 0x4e, 0xf0, 0xf3, 0xdc, 0xcb, 0x93, 0xcf, 0x73, 0x13, 0x54, 0xcf, 0xcf, 0x72, 0xef, + 0x95, 0xc1, 0xf2, 0x96, 0x6d, 0x87, 0xc1, 0x93, 0xb8, 0xd2, 0x8b, 0x60, 0xd1, 0xa6, 0x49, 0xe4, + 0xa1, 0x91, 0x73, 0xe7, 0x82, 0x80, 0xf1, 0x93, 0x9b, 0x02, 0xce, 0xb1, 0x84, 0xed, 0x32, 0x71, + 0x9c, 0x28, 0xff, 0x74, 0x23, 0x53, 0x5d, 0x42, 0x11, 0xe5, 0xaa, 0x30, 0xe2, 0xec, 0xbb, 0x8d, + 0xca, 0xe7, 0x86, 0x8b, 0xc1, 0xa0, 0x37, 0x50, 0xc4, 0xd7, 0xf6, 0x59, 0x30, 0x17, 0x47, 0xb8, + 0xf8, 0x09, 0xc9, 0x6c, 0x1c, 0x61, 0x2e, 0xe4, 0x32, 0x58, 0x1a, 0x15, 0x92, 0x6f, 0xdb, 0xa9, + 0x22, 0xfb, 0xa4, 0x62, 0x82, 0xa5, 0x31, 0xce, 0xd2, 0x75, 0xb0, 0xc8, 0xb8, 0xfa, 0x28, 0x8a, + 0x68, 0xe0, 0xe6, 0xe7, 0xe0, 0xc7, 0xac, 0x5b, 0x41, 0xad, 0xd6, 0x42, 0x1c, 0xe1, 0x1b, 0x62, + 0xf6, 0xe6, 0x6d, 0x70, 0x2a, 0xe9, 0x60, 0x33, 0xf1, 0xda, 0xae, 0x49, 0xf9, 0x97, 0x31, 0xeb, + 0xd9, 0xd7, 0x34, 0xeb, 0xf9, 0xd7, 0x34, 0xeb, 0x6f, 0xb0, 0x43, 0xfb, 0xcd, 0xec, 0xb3, 0x1d, + 0xf9, 0x2f, 0x7e, 0x85, 0x2d, 0xc3, 0x82, 0xfa, 0x91, 0xc9, 0xf2, 0xc6, 0x0e, 0xd5, 0xad, 0x85, + 0xa4, 0x83, 0xf3, 0xc1, 0x66, 0x02, 0x96, 0xee, 0xb0, 0xb0, 0x31, 0xe3, 0x43, 0xd2, 0x7d, 0x22, + 0x69, 0x5f, 0x15, 0xd2, 0x5e, 0x99, 0x2c, 0x6d, 0x52, 0x10, 0xb6, 0x4e, 0x71, 0x19, 0xad, 0xc3, + 0x6c, 0xb8, 0x49, 0xc1, 0x33, 0x96, 0x23, 0xde, 0x3d, 0x3d, 0x91, 0xcc, 0xaf, 0x09, 0x99, 0x95, + 0xc9, 0x32, 0x8b, 0x9f, 0x11, 0xb5, 0x16, 0x2d, 0x67, 0x38, 0xda, 0xfc, 0x69, 0x30, 0xc7, 0xd6, + 0xf2, 0x49, 0x84, 0x7c, 0x5d, 0x08, 0x79, 0xf1, 0x91, 0xcb, 0xc8, 0x65, 0xcc, 0x26, 0x1d, 0xcc, + 0xd9, 0xff, 0x2c, 0x58, 0xe0, 0xee, 0x98, 0x86, 0x66, 0x9b, 0xda, 0x8f, 0x93, 0xf0, 0x97, 0x42, + 0xc2, 0x0b, 0x93, 0x25, 0x0c, 0x12, 0x62, 0x16, 0x8b, 0xfc, 0x71, 0x33, 0x06, 0xa7, 0xb3, 0x57, + 0x61, 0x29, 0x4f, 0x49, 0x4f, 0x64, 0xc9, 0x5f, 0x3d, 0xda, 0x21, 0xc6, 0x32, 0x5c, 0x6b, 0x29, + 0x1e, 0x05, 0x6c, 0xb6, 0x81, 0x84, 0x58, 0xf4, 0x0e, 0xae, 0x1a, 0x9f, 0x44, 0xe8, 0x37, 0x84, + 0xd0, 0xcb, 0x0f, 0xf1, 0xfa, 0xb1, 0x74, 0xd0, 0x5a, 0x46, 0x63, 0x90, 0xcd, 0x6e, 0x2e, 0xd6, + 0x21, 0x28, 0x6d, 0xc7, 0x42, 0xec, 0x8b, 0x0f, 0x88, 0xbd, 0x1a, 0xb4, 0xfd, 0x77, 0x58, 0xaa, + 0xfd, 0xdf, 0x89, 0x7e, 0x23, 0x93, 0xc2, 0x45, 0xff, 0x62, 0x19, 0xc8, 0x38, 0x6e, 0xdb, 0x03, + 0x8b, 0x79, 0xf0, 0x65, 0x85, 0x51, 0x7a, 0xe1, 0x01, 0x0d, 0x6e, 0x90, 0x24, 0x41, 0xee, 0x40, + 0xfe, 0xef, 0xbe, 0x9f, 0xc9, 0xff, 0xe8, 0x63, 0x03, 0x30, 0xbb, 0x48, 0x6a, 0x9d, 0x63, 0xb2, + 0x1e, 0x00, 0x6f, 0x7e, 0x0e, 0x5c, 0xe0, 0x4a, 0x0c, 0xd3, 0x50, 0x96, 0xe6, 0x48, 0xf2, 0x78, + 0x1d, 0x7e, 0xef, 0xfd, 0x2c, 0x17, 0x9e, 0x65, 0x1c, 0xb6, 0x44, 0xc2, 0xda, 0x13, 0xd3, 0x37, + 0xbb, 0xe0, 0xec, 0x18, 0x67, 0x9e, 0xe0, 0x1e, 0xcf, 0xf6, 0x2b, 0xef, 0x3f, 0xd2, 0x95, 0xc6, + 0x72, 0x59, 0xeb, 0x74, 0x51, 0x3a, 0x4f, 0x97, 0x9b, 0x5f, 0x04, 0x52, 0x4c, 0x4c, 0x92, 0x5d, + 0xfd, 0x89, 0xa0, 0x7f, 0x02, 0xc1, 0xbf, 0xff, 0xfe, 0x23, 0xd3, 0xcc, 0xa4, 0x7b, 0xc8, 0xd6, + 0x72, 0x3c, 0x06, 0xdd, 0xdc, 0x7d, 0x20, 0xa7, 0x4b, 0xab, 0x13, 0x24, 0xb3, 0xf2, 0x9a, 0x0b, + 0xfe, 0x2f, 0xb1, 0x90, 0xa3, 0x59, 0x7f, 0xf3, 0xbd, 0x32, 0x38, 0x3f, 0x64, 0x45, 0xb2, 0x9a, + 0x97, 0x79, 0xe8, 0xe3, 0x38, 0xfe, 0xb7, 0x30, 0xe5, 0x09, 0xeb, 0x28, 0xf3, 0xd0, 0x33, 0xb9, + 0xf0, 0x02, 0x70, 0xf3, 0x1e, 0x38, 0xf3, 0x64, 0xee, 0x29, 0x3c, 0x2b, 0x97, 0xff, 0xc3, 0x5f, + 0x7d, 0x4a, 0xf7, 0x3c, 0x9d, 0x8c, 0x83, 0xb6, 0xdf, 0x2b, 0x7f, 0xff, 0x47, 0xab, 0xa5, 0x0f, + 0x7e, 0xb4, 0x5a, 0xfa, 0xf1, 0x8f, 0x56, 0xcb, 0xef, 0xdd, 0x5f, 0x2d, 0xff, 0xc9, 0xfd, 0xd5, + 0xf2, 0xb7, 0xef, 0xaf, 0x96, 0xbf, 0x7f, 0x7f, 0xb5, 0xfc, 0xc3, 0xfb, 0xab, 0xe5, 0xff, 0xb8, + 0xbf, 0x5a, 0xfa, 0xf1, 0xfd, 0xd5, 0xf2, 0x97, 0x3f, 0x5c, 0x2d, 0x7d, 0xff, 0xc3, 0xd5, 0xd2, + 0x07, 0x1f, 0xae, 0x96, 0x3e, 0xff, 0xa6, 0x1b, 0x46, 0x87, 0xee, 0x7a, 0x27, 0xf4, 0xf8, 0x6d, + 0xd7, 0x7a, 0x3b, 0xd9, 0x18, 0xbe, 0x7b, 0x8f, 0xe2, 0xb0, 0x43, 0x6d, 0x12, 0xc3, 0x1c, 0xbd, + 0x11, 0x59, 0x6e, 0xb8, 0x41, 0xee, 0xa6, 0xe2, 0xf3, 0xd4, 0x91, 0xaf, 0x54, 0xad, 0x19, 0x6e, + 0x5f, 0xed, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x09, 0x7f, 0x2f, 0xb9, 0xc4, 0x2a, 0x00, 0x00, } func (this *BFSecretInfo) Equal(that interface{}) bool { @@ -3982,6 +4011,54 @@ func (this *ServiceSlugChoice_CvProxy) Equal(that interface{}) bool { } return true } +func (this *ServiceSlugChoice_GenAi) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServiceSlugChoice_GenAi) + if !ok { + that2, ok := that.(ServiceSlugChoice_GenAi) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.GenAi != that1.GenAi { + return false + } + return true +} +func (this *ServiceSlugChoice_SyncCloudData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServiceSlugChoice_SyncCloudData) + if !ok { + that2, ok := that.(ServiceSlugChoice_SyncCloudData) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SyncCloudData != that1.SyncCloudData { + return false + } + return true +} func (this *ServiceInfo) Equal(that interface{}) bool { if that == nil { return this == nil @@ -4504,7 +4581,7 @@ func (this *ServiceSlugChoice) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 45) + s := make([]string, 0, 47) s = append(s, "&vesenv.ServiceSlugChoice{") if this.Choice != nil { s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") @@ -4840,6 +4917,22 @@ func (this *ServiceSlugChoice_CvProxy) GoString() string { `CvProxy:` + fmt.Sprintf("%#v", this.CvProxy) + `}`}, ", ") return s } +func (this *ServiceSlugChoice_GenAi) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.ServiceSlugChoice_GenAi{` + + `GenAi:` + fmt.Sprintf("%#v", this.GenAi) + `}`}, ", ") + return s +} +func (this *ServiceSlugChoice_SyncCloudData) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.ServiceSlugChoice_SyncCloudData{` + + `SyncCloudData:` + fmt.Sprintf("%#v", this.SyncCloudData) + `}`}, ", ") + return s +} func (this *ServiceInfo) GoString() string { if this == nil { return "nil" @@ -6376,6 +6469,44 @@ func (m *ServiceSlugChoice_CvProxy) MarshalToSizedBuffer(dAtA []byte) (int, erro dAtA[i] = 0xd0 return len(dAtA) - i, nil } +func (m *ServiceSlugChoice_GenAi) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServiceSlugChoice_GenAi) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.GenAi { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd8 + return len(dAtA) - i, nil +} +func (m *ServiceSlugChoice_SyncCloudData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServiceSlugChoice_SyncCloudData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.SyncCloudData { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xe0 + return len(dAtA) - i, nil +} func (m *ServiceInfo) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -7464,6 +7595,24 @@ func (m *ServiceSlugChoice_CvProxy) Size() (n int) { n += 3 return n } +func (m *ServiceSlugChoice_GenAi) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} +func (m *ServiceSlugChoice_SyncCloudData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} func (m *ServiceInfo) Size() (n int) { if m == nil { return 0 @@ -8358,6 +8507,26 @@ func (this *ServiceSlugChoice_CvProxy) String() string { }, "") return s } +func (this *ServiceSlugChoice_GenAi) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServiceSlugChoice_GenAi{`, + `GenAi:` + fmt.Sprintf("%v", this.GenAi) + `,`, + `}`, + }, "") + return s +} +func (this *ServiceSlugChoice_SyncCloudData) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServiceSlugChoice_SyncCloudData{`, + `SyncCloudData:` + fmt.Sprintf("%v", this.SyncCloudData) + `,`, + `}`, + }, "") + return s +} func (this *ServiceInfo) String() string { if this == nil { return "nil" @@ -10554,6 +10723,48 @@ func (m *ServiceSlugChoice) Unmarshal(dAtA []byte) error { } b := bool(v != 0) m.Choice = &ServiceSlugChoice_CvProxy{b} + case 43: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field GenAi", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowOptions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &ServiceSlugChoice_GenAi{b} + case 44: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field SyncCloudData", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowOptions + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &ServiceSlugChoice_SyncCloudData{b} default: iNdEx = preIndex skippy, err := skipOptions(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/vesenv/options.vesmsg.go b/pbgo/extschema/schema/vesenv/options.vesmsg.go index a964d1276..b3ba1cd7c 100644 --- a/pbgo/extschema/schema/vesenv/options.vesmsg.go +++ b/pbgo/extschema/schema/vesenv/options.vesmsg.go @@ -1992,6 +1992,28 @@ func (v *ValidateServiceSlugChoice) Validate(ctx context.Context, pm interface{} return err } } + case *ServiceSlugChoice_GenAi: + if fv, exists := v.FldValidators["choice.gen_ai"]; exists { + val := m.GetChoice().(*ServiceSlugChoice_GenAi).GenAi + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("gen_ai"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ServiceSlugChoice_SyncCloudData: + if fv, exists := v.FldValidators["choice.sync_cloud_data"]; exists { + val := m.GetChoice().(*ServiceSlugChoice_SyncCloudData).SyncCloudData + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("sync_cloud_data"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } diff --git a/pbgo/extschema/schema/vesenv/quota_resource_keys.pb.go b/pbgo/extschema/schema/vesenv/quota_resource_keys.pb.go index c28407bde..d9748382d 100644 --- a/pbgo/extschema/schema/vesenv/quota_resource_keys.pb.go +++ b/pbgo/extschema/schema/vesenv/quota_resource_keys.pb.go @@ -59,6 +59,7 @@ type QuotaResourceKeyChoice struct { // *QuotaResourceKeyChoice_HttpLoadbalancerLargeIdleTimeout // *QuotaResourceKeyChoice_HttpLoadbalancerOasValidation // *QuotaResourceKeyChoice_FastAclSourceIps + // *QuotaResourceKeyChoice_LbSipPersistence Choice isQuotaResourceKeyChoice_Choice `protobuf_oneof:"choice"` } @@ -200,6 +201,9 @@ type QuotaResourceKeyChoice_HttpLoadbalancerOasValidation struct { type QuotaResourceKeyChoice_FastAclSourceIps struct { FastAclSourceIps bool `protobuf:"varint,33,opt,name=fast_acl_source_ips,json=fastAclSourceIps,proto3,oneof" json:"fast_acl_source_ips,omitempty"` } +type QuotaResourceKeyChoice_LbSipPersistence struct { + LbSipPersistence bool `protobuf:"varint,34,opt,name=lb_sip_persistence,json=lbSipPersistence,proto3,oneof" json:"lb_sip_persistence,omitempty"` +} func (*QuotaResourceKeyChoice_ApiCredentialService) isQuotaResourceKeyChoice_Choice() {} func (*QuotaResourceKeyChoice_CpuLimitsPerVk8SPerRegionalEdge) isQuotaResourceKeyChoice_Choice() {} @@ -236,6 +240,7 @@ func (*QuotaResourceKeyChoice_DnsZoneRecordSets) isQuotaResourceKeyChoice_Choice func (*QuotaResourceKeyChoice_HttpLoadbalancerLargeIdleTimeout) isQuotaResourceKeyChoice_Choice() {} func (*QuotaResourceKeyChoice_HttpLoadbalancerOasValidation) isQuotaResourceKeyChoice_Choice() {} func (*QuotaResourceKeyChoice_FastAclSourceIps) isQuotaResourceKeyChoice_Choice() {} +func (*QuotaResourceKeyChoice_LbSipPersistence) isQuotaResourceKeyChoice_Choice() {} func (m *QuotaResourceKeyChoice) GetChoice() isQuotaResourceKeyChoice_Choice { if m != nil { @@ -475,6 +480,13 @@ func (m *QuotaResourceKeyChoice) GetFastAclSourceIps() bool { return false } +func (m *QuotaResourceKeyChoice) GetLbSipPersistence() bool { + if x, ok := m.GetChoice().(*QuotaResourceKeyChoice_LbSipPersistence); ok { + return x.LbSipPersistence + } + return false +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*QuotaResourceKeyChoice) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -511,6 +523,7 @@ func (*QuotaResourceKeyChoice) XXX_OneofWrappers() []interface{} { (*QuotaResourceKeyChoice_HttpLoadbalancerLargeIdleTimeout)(nil), (*QuotaResourceKeyChoice_HttpLoadbalancerOasValidation)(nil), (*QuotaResourceKeyChoice_FastAclSourceIps)(nil), + (*QuotaResourceKeyChoice_LbSipPersistence)(nil), } } @@ -523,82 +536,84 @@ func init() { } var fileDescriptor_67f2dcc7407ee85c = []byte{ - // 1185 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x96, 0x4f, 0x6f, 0xd4, 0xc6, - 0x1f, 0xc6, 0xd7, 0xbf, 0x1f, 0x4d, 0xc2, 0x40, 0x81, 0x6c, 0x42, 0x18, 0x02, 0x71, 0x42, 0x0a, - 0x6a, 0xd4, 0xb2, 0x5e, 0x20, 0xa1, 0x8d, 0x2a, 0x55, 0x15, 0x41, 0x40, 0x52, 0xa0, 0x85, 0x0d, - 0x8a, 0x2a, 0x2e, 0xa3, 0xc9, 0x78, 0xe2, 0x1d, 0xad, 0xed, 0x31, 0x33, 0xfe, 0x43, 0x38, 0xa1, - 0xf6, 0x54, 0xa9, 0x87, 0xaa, 0x52, 0xdf, 0x43, 0xe5, 0xb7, 0xe0, 0x37, 0xd0, 0x23, 0x47, 0x8e, - 0x65, 0x73, 0xe9, 0x91, 0x97, 0x50, 0xcd, 0xd8, 0x71, 0x9c, 0x5d, 0x6f, 0x08, 0xa7, 0xac, 0xe6, - 0x79, 0x9e, 0xcf, 0xf7, 0x99, 0x51, 0x66, 0x77, 0x80, 0x15, 0x53, 0x69, 0x31, 0xde, 0x96, 0xa4, - 0x4b, 0x3d, 0xdc, 0x8e, 0xa9, 0xa4, 0x7e, 0xdc, 0x7e, 0x11, 0xf1, 0x10, 0x23, 0x41, 0x25, 0x8f, - 0x04, 0xa1, 0xa8, 0x47, 0x77, 0xa5, 0x15, 0x08, 0x1e, 0xf2, 0xe6, 0x74, 0xee, 0xb7, 0x72, 0xbf, - 0x95, 0xfb, 0x67, 0x17, 0x6b, 0x29, 0x3c, 0x08, 0x19, 0xf7, 0x8b, 0xe4, 0x62, 0x7f, 0x06, 0xcc, - 0x3c, 0x55, 0xdc, 0x4e, 0x81, 0x7d, 0x48, 0x77, 0xef, 0x76, 0x39, 0x23, 0xb4, 0xf9, 0x1c, 0xcc, - 0xe0, 0x80, 0x21, 0x22, 0xa8, 0x4d, 0xfd, 0x90, 0x61, 0x17, 0x49, 0x2a, 0x62, 0x46, 0x28, 0x34, - 0x16, 0x8c, 0xa5, 0x89, 0xb5, 0xc5, 0x34, 0x83, 0xe6, 0xa0, 0xc7, 0x2a, 0x3c, 0xcd, 0x13, 0x74, - 0x37, 0xc1, 0xeb, 0x8d, 0xce, 0x34, 0x0e, 0xd8, 0xdd, 0x52, 0xde, 0x2c, 0xd4, 0x5f, 0x0c, 0x70, - 0x8d, 0x04, 0x11, 0x72, 0x99, 0xc7, 0x42, 0x89, 0x02, 0x2a, 0x50, 0xdc, 0x5b, 0xcd, 0x3f, 0x08, - 0xea, 0x30, 0xee, 0x63, 0x17, 0x51, 0xdb, 0xa1, 0xf0, 0x7f, 0x7a, 0xd6, 0xcd, 0x34, 0x83, 0xad, - 0x63, 0x46, 0x9a, 0x27, 0x70, 0x0f, 0x8b, 0xf5, 0x46, 0x67, 0x9e, 0x04, 0xd1, 0x23, 0xed, 0x7e, - 0x42, 0xc5, 0x56, 0x6f, 0x55, 0xfd, 0xe9, 0x14, 0xce, 0x7b, 0xca, 0xf8, 0xab, 0x01, 0x3e, 0x57, - 0x48, 0x41, 0x5f, 0x44, 0x54, 0x1e, 0xdd, 0xe3, 0xff, 0xba, 0xc7, 0x72, 0x9a, 0xc1, 0xf6, 0xb1, - 0x43, 0x65, 0x93, 0x2b, 0x24, 0x88, 0x3a, 0x85, 0x7f, 0x44, 0x97, 0xdf, 0x0c, 0xb0, 0xe4, 0x51, - 0x8f, 0x8b, 0xdd, 0x63, 0x1c, 0xca, 0x09, 0x5d, 0x66, 0x25, 0xcd, 0xe0, 0x8d, 0xe3, 0xa7, 0xca, - 0x36, 0x8b, 0x79, 0xe2, 0xc8, 0xa3, 0xf9, 0xc3, 0x00, 0x5f, 0x14, 0xe0, 0xe3, 0x9c, 0xce, 0x27, - 0xba, 0xd0, 0x57, 0x69, 0x06, 0x6f, 0x7d, 0x4c, 0xae, 0xac, 0x74, 0x35, 0xcf, 0x7c, 0xe0, 0x8c, - 0x7e, 0x00, 0x93, 0x3e, 0xb7, 0x29, 0xda, 0x71, 0x71, 0xcc, 0x05, 0x92, 0x1e, 0x76, 0x5d, 0x38, - 0xa6, 0x47, 0x2f, 0xa4, 0x19, 0xbc, 0x5c, 0x23, 0x37, 0xc7, 0x3d, 0x1c, 0x09, 0x46, 0xe8, 0x7a, - 0xa3, 0x73, 0x56, 0xa9, 0xf7, 0xb5, 0xb8, 0xa9, 0xb5, 0xa7, 0xa0, 0x59, 0x0d, 0x78, 0xd4, 0x66, - 0x91, 0x07, 0xc7, 0x35, 0xf0, 0x4a, 0x9a, 0xc1, 0xb9, 0x3a, 0xbd, 0x4a, 0x3c, 0x77, 0x40, 0x7c, - 0x9c, 0x8b, 0x03, 0x15, 0x5d, 0x2c, 0x1c, 0x0a, 0x27, 0x46, 0x55, 0xd4, 0xf2, 0x88, 0x8a, 0x8f, - 0xb4, 0x36, 0x50, 0xf1, 0x65, 0x0e, 0xbc, 0x38, 0xaa, 0xe2, 0xcb, 0x21, 0x62, 0xa5, 0xe2, 0x4f, - 0xb9, 0xf8, 0x0c, 0x4c, 0x55, 0x23, 0xb7, 0x0a, 0xe6, 0x6c, 0xe5, 0x52, 0xd7, 0x19, 0xaa, 0xd0, - 0xc9, 0x03, 0xe8, 0xbe, 0x3a, 0x40, 0x5d, 0x2e, 0xa8, 0x97, 0x46, 0x51, 0x97, 0x8f, 0xa4, 0x2e, - 0xd7, 0x53, 0x57, 0x0a, 0xea, 0xe5, 0x51, 0xd4, 0x95, 0x23, 0xa9, 0x2b, 0xf5, 0xd4, 0xdb, 0x05, - 0x75, 0x6e, 0x14, 0xf5, 0xf6, 0x91, 0xd4, 0x7d, 0xf5, 0x4f, 0x03, 0x7c, 0x29, 0x43, 0x2e, 0xb0, - 0x43, 0x8f, 0x75, 0x67, 0x4e, 0xea, 0x71, 0x5f, 0xa7, 0x19, 0x5c, 0xfe, 0xa8, 0x60, 0x79, 0x69, - 0xae, 0x15, 0xa1, 0x0f, 0xdc, 0x9a, 0xef, 0xc0, 0x69, 0xd2, 0x4d, 0x10, 0x4e, 0x24, 0xda, 0xde, - 0xe5, 0x2e, 0x04, 0x7a, 0xee, 0xa5, 0x34, 0x83, 0x17, 0xb4, 0xd2, 0xc2, 0x89, 0x6c, 0x29, 0xa5, - 0xba, 0x3f, 0x40, 0xba, 0xc9, 0x9d, 0x44, 0xae, 0xa9, 0xe5, 0x7b, 0xe0, 0x8c, 0x06, 0xbc, 0x8a, - 0x04, 0xcd, 0x11, 0xa7, 0x34, 0x62, 0x2e, 0xcd, 0xe0, 0x45, 0xad, 0xb5, 0xb4, 0x36, 0x04, 0x51, - 0xf4, 0x3b, 0x4a, 0xd1, 0x98, 0xa2, 0x87, 0x43, 0x82, 0x1c, 0x72, 0x7a, 0xb0, 0x87, 0x43, 0x82, - 0xda, 0x1e, 0x0f, 0x48, 0x30, 0xdc, 0x63, 0x47, 0x50, 0x0a, 0x3f, 0xad, 0xef, 0xa1, 0xb4, 0xda, - 0x1e, 0xf7, 0x95, 0x50, 0x39, 0x0f, 0x0d, 0x39, 0x53, 0x77, 0x1e, 0x83, 0x88, 0xe2, 0x3c, 0xaa, - 0x00, 0xb5, 0x11, 0x0d, 0x38, 0x5b, 0xb7, 0x91, 0x3a, 0xc0, 0x03, 0x12, 0x68, 0xc0, 0xb7, 0xe0, - 0x94, 0x06, 0x50, 0x9f, 0x0a, 0x46, 0xe0, 0x39, 0x9d, 0x9f, 0x4d, 0x33, 0x38, 0xa3, 0x85, 0x56, - 0x21, 0x0c, 0xc5, 0x8b, 0xe5, 0x9b, 0x60, 0x5c, 0xc5, 0x99, 0x93, 0xc0, 0x49, 0x1d, 0x9d, 0x49, - 0x33, 0xd8, 0xd4, 0x8b, 0x2d, 0xe6, 0x24, 0xd5, 0xd8, 0x18, 0xe9, 0x26, 0x1b, 0x4e, 0x52, 0x46, - 0x64, 0x0c, 0x9b, 0x43, 0x11, 0x19, 0x0f, 0x45, 0x64, 0xbc, 0x1f, 0xe9, 0xc5, 0x1e, 0x9c, 0x1a, - 0x8c, 0xf4, 0x62, 0x6f, 0x30, 0xf2, 0x30, 0xf6, 0xca, 0xc8, 0xaa, 0x84, 0xd3, 0x43, 0x91, 0x55, - 0x39, 0x14, 0x59, 0x95, 0xcd, 0x6f, 0x80, 0xda, 0x19, 0x8a, 0xbd, 0x04, 0x0b, 0x0a, 0xcf, 0xeb, - 0xd4, 0xc5, 0x34, 0x83, 0xe7, 0xf5, 0x7a, 0x2b, 0x5f, 0xaf, 0x06, 0x4f, 0x92, 0x6e, 0xb2, 0x95, - 0xaf, 0xae, 0x80, 0x09, 0x95, 0x0d, 0x99, 0xbf, 0x0b, 0x67, 0x74, 0xf2, 0x42, 0x9a, 0xc1, 0x29, - 0xbd, 0xda, 0x52, 0xab, 0xd5, 0x9c, 0x2a, 0xf1, 0x4c, 0xad, 0x3d, 0x05, 0x53, 0x31, 0x13, 0x61, - 0x84, 0x5d, 0xd4, 0xe5, 0x32, 0x44, 0x41, 0xb4, 0xed, 0x32, 0x02, 0x2f, 0x68, 0xc0, 0x7c, 0x9a, - 0xc1, 0x4b, 0x87, 0x0d, 0x56, 0x6e, 0x28, 0x6f, 0xdd, 0x64, 0x21, 0xae, 0x73, 0x19, 0x3e, 0xc9, - 0x25, 0x17, 0x5c, 0xee, 0x52, 0xec, 0x86, 0x5d, 0xd2, 0xa5, 0xa4, 0x87, 0x3c, 0xe6, 0x33, 0x2f, - 0xf2, 0x10, 0xf3, 0x43, 0x2a, 0x62, 0xec, 0x42, 0xa8, 0xd9, 0x4b, 0x69, 0x06, 0xaf, 0x1e, 0x72, - 0x5a, 0x83, 0xce, 0x72, 0xc8, 0x6c, 0xc5, 0xf5, 0x38, 0x37, 0x6d, 0xec, 0x7b, 0xb6, 0xc0, 0xb4, - 0xed, 0x4b, 0xf4, 0x8a, 0xfb, 0xea, 0xeb, 0x82, 0x70, 0x61, 0x23, 0x49, 0x43, 0x09, 0x4d, 0x3d, - 0xe5, 0xb3, 0x34, 0x83, 0xf3, 0x07, 0x0e, 0xab, 0xe2, 0x68, 0x8e, 0x6f, 0xb3, 0x1d, 0xc1, 0x65, - 0xa8, 0x76, 0x61, 0xfb, 0xf2, 0x39, 0xf7, 0x69, 0x47, 0xcb, 0x9b, 0x4a, 0xfd, 0xd9, 0x00, 0x57, - 0xbb, 0x61, 0x18, 0x20, 0x97, 0x63, 0x7b, 0x1b, 0xbb, 0xd8, 0x27, 0xb4, 0xf8, 0x89, 0x42, 0xcc, - 0x76, 0x29, 0x0a, 0x99, 0x47, 0x79, 0x14, 0xc2, 0x79, 0x3d, 0xe8, 0x46, 0x9a, 0xc1, 0xeb, 0x35, - 0x09, 0x6b, 0x38, 0x51, 0x6e, 0x6b, 0x41, 0xb9, 0x1f, 0x55, 0xcc, 0xfa, 0x47, 0x6e, 0xc3, 0x76, - 0xe9, 0xb3, 0xc2, 0x99, 0x80, 0x85, 0xe1, 0x0e, 0x1c, 0x4b, 0x14, 0x63, 0x97, 0xd9, 0x58, 0x3d, - 0x5d, 0xe1, 0x82, 0x9e, 0x7f, 0x3d, 0xcd, 0xe0, 0x52, 0x8d, 0xdb, 0x3a, 0xec, 0x2e, 0x67, 0xcf, - 0x0d, 0xce, 0xfe, 0x11, 0xcb, 0xad, 0x03, 0xdb, 0x13, 0x30, 0xb5, 0x83, 0x65, 0x88, 0x30, 0x71, - 0x51, 0xf1, 0xc0, 0x66, 0x81, 0x84, 0x57, 0xaa, 0xff, 0x16, 0xfb, 0x06, 0xeb, 0xc0, 0x50, 0xe2, - 0xcf, 0x29, 0xf1, 0x0e, 0x71, 0x37, 0xb5, 0xb4, 0x11, 0xc8, 0xb5, 0x09, 0x30, 0x46, 0xf4, 0x4b, - 0x7a, 0xed, 0xb5, 0xf1, 0xe6, 0x9d, 0xd9, 0x78, 0xfb, 0xce, 0x6c, 0xbc, 0x7f, 0x67, 0x1a, 0xaf, - 0xfb, 0xa6, 0xf1, 0x57, 0xdf, 0x34, 0xfe, 0xee, 0x9b, 0xc6, 0x9b, 0xbe, 0x69, 0xfc, 0xd3, 0x37, - 0x8d, 0x7f, 0xfb, 0x66, 0xe3, 0x7d, 0xdf, 0x34, 0x7e, 0xdf, 0x33, 0x1b, 0x6f, 0xf6, 0xcc, 0xc6, - 0xdb, 0x3d, 0xb3, 0xf1, 0xfc, 0x7b, 0x87, 0x07, 0x3d, 0xc7, 0x8a, 0xb9, 0x1b, 0x52, 0x21, 0xb0, - 0x15, 0xc9, 0xb6, 0xfe, 0xb0, 0xc3, 0x85, 0xd7, 0x0a, 0x04, 0x8f, 0x99, 0x4d, 0x45, 0x6b, 0x5f, - 0x6e, 0x07, 0xdb, 0x0e, 0x6f, 0xd3, 0x97, 0x61, 0xf1, 0xdc, 0x3f, 0xf4, 0xea, 0xdf, 0x1e, 0xd3, - 0xcf, 0xfd, 0xe5, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x9d, 0xa7, 0x1c, 0x33, 0x5a, 0x0c, 0x00, - 0x00, + // 1229 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x97, 0x4d, 0x6f, 0x13, 0x47, + 0x1c, 0xc6, 0xbd, 0x2d, 0x4d, 0xc2, 0x40, 0x81, 0x38, 0x21, 0x19, 0x12, 0xb2, 0x09, 0x01, 0x44, + 0xd4, 0xe2, 0x35, 0x90, 0xd0, 0x46, 0x95, 0xaa, 0x8a, 0x20, 0x20, 0x29, 0xd0, 0x06, 0x07, 0xa5, + 0x15, 0x97, 0xd1, 0x78, 0x3c, 0x59, 0x8f, 0xbc, 0xbb, 0xb3, 0xcc, 0xec, 0x0b, 0xe1, 0x84, 0xda, + 0x53, 0xa5, 0x1e, 0xaa, 0x4a, 0xfd, 0x0e, 0xd5, 0x7e, 0x85, 0xfd, 0x02, 0x3d, 0x72, 0xe4, 0x58, + 0xcc, 0xa5, 0x47, 0x3e, 0x42, 0x35, 0xb3, 0x1b, 0x7b, 0x63, 0xaf, 0x43, 0x38, 0xc5, 0x9a, 0xe7, + 0x79, 0x7e, 0xff, 0x67, 0x46, 0x19, 0x7b, 0x17, 0x58, 0x11, 0x95, 0x16, 0xe3, 0x75, 0x49, 0xda, + 0xd4, 0xc5, 0xf5, 0x88, 0x4a, 0xea, 0x45, 0xf5, 0xe7, 0x21, 0x0f, 0x30, 0x12, 0x54, 0xf2, 0x50, + 0x10, 0x8a, 0x3a, 0x74, 0x5f, 0x5a, 0xbe, 0xe0, 0x01, 0xaf, 0x4e, 0x67, 0x7e, 0x2b, 0xf3, 0x5b, + 0x99, 0x7f, 0x6e, 0xb9, 0x94, 0xc2, 0xfd, 0x80, 0x71, 0x2f, 0x4f, 0x2e, 0xa7, 0xb3, 0x60, 0xe6, + 0x89, 0xe2, 0x36, 0x72, 0xec, 0x43, 0xba, 0x7f, 0xb7, 0xcd, 0x19, 0xa1, 0xd5, 0x67, 0x60, 0x06, + 0xfb, 0x0c, 0x11, 0x41, 0x5b, 0xd4, 0x0b, 0x18, 0x76, 0x90, 0xa4, 0x22, 0x62, 0x84, 0x42, 0x63, + 0xc9, 0x58, 0x99, 0xd8, 0x58, 0x4e, 0x52, 0x68, 0x0e, 0x7a, 0xac, 0xdc, 0x53, 0x3d, 0x41, 0xf7, + 0x63, 0xbc, 0x59, 0x69, 0x4c, 0x63, 0x9f, 0xdd, 0xed, 0xc9, 0x3b, 0xb9, 0xfa, 0xab, 0x01, 0xae, + 0x12, 0x3f, 0x44, 0x0e, 0x73, 0x59, 0x20, 0x91, 0x4f, 0x05, 0x8a, 0x3a, 0xeb, 0xd9, 0x07, 0x41, + 0x6d, 0xc6, 0x3d, 0xec, 0x20, 0xda, 0xb2, 0x29, 0xfc, 0x44, 0xcf, 0xba, 0x99, 0xa4, 0xb0, 0x76, + 0xcc, 0x48, 0xf5, 0x04, 0xee, 0x60, 0xb1, 0x59, 0x69, 0x2c, 0x12, 0x3f, 0x7c, 0xa4, 0xdd, 0xdb, + 0x54, 0xec, 0x76, 0xd6, 0xd5, 0x9f, 0x46, 0xee, 0xbc, 0xa7, 0x8c, 0xbf, 0x19, 0xe0, 0x9a, 0x42, + 0x0a, 0xfa, 0x3c, 0xa4, 0xf2, 0xe8, 0x1e, 0x9f, 0xea, 0x1e, 0xab, 0x49, 0x0a, 0xeb, 0xc7, 0x0e, + 0xf5, 0x9a, 0x5c, 0x22, 0x7e, 0xd8, 0xc8, 0xfd, 0x23, 0xba, 0xfc, 0x6e, 0x80, 0x15, 0x97, 0xba, + 0x5c, 0xec, 0x1f, 0xe3, 0x50, 0x4e, 0xe8, 0x32, 0x6b, 0x49, 0x0a, 0x6f, 0x1c, 0x3f, 0xd5, 0x6b, + 0xb3, 0x9c, 0x25, 0x8e, 0x3c, 0x9a, 0x3f, 0x0d, 0xf0, 0x45, 0x0e, 0x3e, 0xce, 0xe9, 0x7c, 0xa6, + 0x0b, 0x7d, 0x95, 0xa4, 0xf0, 0xd6, 0xc7, 0xe4, 0x7a, 0x95, 0xae, 0x64, 0x99, 0x0f, 0x9c, 0xd1, + 0x0f, 0x60, 0xd2, 0xe3, 0x2d, 0x8a, 0xf6, 0x1c, 0x1c, 0x71, 0x81, 0xa4, 0x8b, 0x1d, 0x07, 0x8e, + 0xe9, 0xd1, 0x4b, 0x49, 0x0a, 0x2f, 0x96, 0xc8, 0xd5, 0x71, 0x17, 0x87, 0x82, 0x11, 0xba, 0x59, + 0x69, 0x9c, 0x55, 0xea, 0x7d, 0x2d, 0xee, 0x68, 0xed, 0x09, 0xa8, 0x16, 0x03, 0x2e, 0x6d, 0xb1, + 0xd0, 0x85, 0xe3, 0x1a, 0x78, 0x29, 0x49, 0xe1, 0x42, 0x99, 0x5e, 0x24, 0x9e, 0xeb, 0x13, 0x1f, + 0x67, 0xe2, 0x40, 0x45, 0x07, 0x0b, 0x9b, 0xc2, 0x89, 0x51, 0x15, 0xb5, 0x3c, 0xa2, 0xe2, 0x23, + 0xad, 0x0d, 0x54, 0x7c, 0x91, 0x01, 0x2f, 0x8c, 0xaa, 0xf8, 0x62, 0x88, 0x58, 0xa8, 0xf8, 0x73, + 0x26, 0x3e, 0x05, 0x53, 0xc5, 0xc8, 0xad, 0x9c, 0x39, 0x57, 0xb8, 0xd4, 0x65, 0x86, 0x22, 0x74, + 0xb2, 0x0f, 0x3d, 0x50, 0x07, 0xa8, 0xab, 0x39, 0x75, 0x7e, 0x14, 0x75, 0xf5, 0x48, 0xea, 0x6a, + 0x39, 0x75, 0x2d, 0xa7, 0x5e, 0x1c, 0x45, 0x5d, 0x3b, 0x92, 0xba, 0x56, 0x4e, 0xbd, 0x9d, 0x53, + 0x17, 0x46, 0x51, 0x6f, 0x1f, 0x49, 0x3d, 0x50, 0xff, 0x32, 0xc0, 0x97, 0x32, 0xe0, 0x02, 0xdb, + 0xf4, 0x58, 0x77, 0xe6, 0xa4, 0x1e, 0xf7, 0x75, 0x92, 0xc2, 0xd5, 0x8f, 0x0a, 0xf6, 0x2e, 0xcd, + 0xd5, 0x3c, 0xf4, 0x81, 0x5b, 0xf3, 0x1d, 0x38, 0x4d, 0xda, 0x31, 0xc2, 0xb1, 0x44, 0xcd, 0x7d, + 0xee, 0x40, 0xa0, 0xe7, 0xce, 0x27, 0x29, 0x9c, 0xd5, 0x4a, 0x0d, 0xc7, 0xb2, 0xa6, 0x94, 0xe2, + 0xfe, 0x00, 0x69, 0xc7, 0x77, 0x62, 0xb9, 0xa1, 0x96, 0xef, 0x81, 0x33, 0x1a, 0xf0, 0x32, 0x14, + 0x34, 0x43, 0x9c, 0xd2, 0x88, 0x85, 0x24, 0x85, 0x17, 0xb4, 0x56, 0xd3, 0xda, 0x10, 0x44, 0xd1, + 0xef, 0x28, 0x45, 0x63, 0xf2, 0x1e, 0x36, 0xf1, 0x33, 0xc8, 0xe9, 0xc1, 0x1e, 0x36, 0xf1, 0x4b, + 0x7b, 0x3c, 0x20, 0xfe, 0x70, 0x8f, 0x3d, 0x41, 0x29, 0xfc, 0xbc, 0xbc, 0x87, 0xd2, 0x4a, 0x7b, + 0xdc, 0x57, 0x42, 0xe1, 0x3c, 0x34, 0xe4, 0x4c, 0xd9, 0x79, 0x0c, 0x22, 0xf2, 0xf3, 0x28, 0x02, + 0xd4, 0x46, 0x34, 0xe0, 0x6c, 0xd9, 0x46, 0xca, 0x00, 0x0f, 0x88, 0xaf, 0x01, 0xdf, 0x82, 0x53, + 0x1a, 0x40, 0x3d, 0x2a, 0x18, 0x81, 0xe7, 0x74, 0x7e, 0x2e, 0x49, 0xe1, 0x8c, 0x16, 0x6a, 0xb9, + 0x30, 0x14, 0xcf, 0x97, 0x6f, 0x82, 0x71, 0x15, 0x67, 0x76, 0x0c, 0x27, 0x75, 0x74, 0x26, 0x49, + 0x61, 0x55, 0x2f, 0xd6, 0x98, 0x1d, 0x17, 0x63, 0x63, 0xa4, 0x1d, 0x6f, 0xd9, 0x71, 0x2f, 0x22, + 0x23, 0x58, 0x1d, 0x8a, 0xc8, 0x68, 0x28, 0x22, 0xa3, 0x83, 0x48, 0x27, 0x72, 0xe1, 0xd4, 0x60, + 0xa4, 0x13, 0xb9, 0x83, 0x91, 0x87, 0x91, 0xdb, 0x8b, 0xac, 0x4b, 0x38, 0x3d, 0x14, 0x59, 0x97, + 0x43, 0x91, 0x75, 0x59, 0xfd, 0x06, 0xa8, 0x9d, 0xa1, 0xc8, 0x8d, 0xb1, 0xa0, 0xf0, 0xbc, 0x4e, + 0x5d, 0x48, 0x52, 0x78, 0x5e, 0xaf, 0xd7, 0xb2, 0xf5, 0x62, 0xf0, 0x24, 0x69, 0xc7, 0xbb, 0xd9, + 0xea, 0x1a, 0x98, 0x50, 0xd9, 0x80, 0x79, 0xfb, 0x70, 0x46, 0x27, 0x67, 0x93, 0x14, 0x4e, 0xe9, + 0xd5, 0x9a, 0x5a, 0x2d, 0xe6, 0x54, 0x89, 0xa7, 0x6a, 0xed, 0x09, 0x98, 0x8a, 0x98, 0x08, 0x42, + 0xec, 0xa0, 0x36, 0x97, 0x01, 0xf2, 0xc3, 0xa6, 0xc3, 0x08, 0x9c, 0xd5, 0x80, 0xc5, 0x24, 0x85, + 0xf3, 0x87, 0x0d, 0x56, 0x66, 0xe8, 0xdd, 0xba, 0xc9, 0x5c, 0xdc, 0xe4, 0x32, 0xd8, 0xce, 0x24, + 0x07, 0x5c, 0x6c, 0x53, 0xec, 0x04, 0x6d, 0xd2, 0xa6, 0xa4, 0x83, 0x5c, 0xe6, 0x31, 0x37, 0x74, + 0x11, 0xf3, 0x02, 0x2a, 0x22, 0xec, 0x40, 0xa8, 0xd9, 0x2b, 0x49, 0x0a, 0xaf, 0x1c, 0x72, 0x5a, + 0x83, 0xce, 0xde, 0x90, 0xb9, 0x82, 0xeb, 0x71, 0x66, 0xda, 0x3a, 0xf0, 0xec, 0x82, 0xe9, 0x96, + 0x27, 0xd1, 0x4b, 0xee, 0xa9, 0xaf, 0x0b, 0xc2, 0x45, 0x0b, 0x49, 0x1a, 0x48, 0x68, 0xea, 0x29, + 0x97, 0x93, 0x14, 0x2e, 0xf6, 0x1d, 0x56, 0xc1, 0x51, 0x1d, 0x6f, 0xb2, 0x3d, 0xc1, 0x65, 0xa0, + 0x76, 0xd1, 0xf2, 0xe4, 0x33, 0xee, 0xd1, 0x86, 0x96, 0x77, 0x94, 0xfa, 0x8b, 0x01, 0xae, 0xb4, + 0x83, 0xc0, 0x47, 0x0e, 0xc7, 0xad, 0x26, 0x76, 0xb0, 0x47, 0x68, 0xfe, 0x13, 0x85, 0x58, 0xcb, + 0xa1, 0x28, 0x60, 0x2e, 0xe5, 0x61, 0x00, 0x17, 0xf5, 0xa0, 0x1b, 0x49, 0x0a, 0xaf, 0x97, 0x24, + 0xac, 0xe1, 0x44, 0x6f, 0x5b, 0x4b, 0xca, 0xfd, 0xa8, 0x60, 0xd6, 0x3f, 0x72, 0x5b, 0x2d, 0x87, + 0x3e, 0xcd, 0x9d, 0x31, 0x58, 0x1a, 0xee, 0xc0, 0xb1, 0x44, 0x11, 0x76, 0x58, 0x0b, 0xab, 0x47, + 0x57, 0xb8, 0xa4, 0xe7, 0x5f, 0x4f, 0x52, 0xb8, 0x52, 0xe2, 0xb6, 0x0e, 0xbb, 0x7b, 0xb3, 0x17, + 0x06, 0x67, 0xff, 0x88, 0xe5, 0x6e, 0xdf, 0xb6, 0x0d, 0xa6, 0xf6, 0xb0, 0x0c, 0x10, 0x26, 0x0e, + 0xca, 0x1f, 0xb0, 0x99, 0x2f, 0xe1, 0xa5, 0xe2, 0xbf, 0xc5, 0x81, 0xc1, 0xea, 0x1b, 0x7a, 0xf8, + 0x73, 0x4a, 0xbc, 0x43, 0x9c, 0x1d, 0x2d, 0x6d, 0xf9, 0xb2, 0xfa, 0x13, 0xa8, 0x3a, 0x4d, 0x24, + 0x99, 0xaf, 0xbe, 0xc2, 0x25, 0x93, 0x01, 0xf5, 0x08, 0x85, 0xcb, 0x1a, 0x78, 0x2d, 0x49, 0xe1, + 0x65, 0x30, 0xcf, 0x05, 0xb3, 0x99, 0x87, 0x7c, 0xce, 0x1d, 0x6b, 0xc0, 0xd8, 0x07, 0x3b, 0xcd, + 0x1d, 0xe6, 0x6f, 0xf7, 0x95, 0x8d, 0x09, 0x30, 0x46, 0xf4, 0x23, 0xfa, 0xc6, 0x2b, 0xe3, 0xf5, + 0x5b, 0xb3, 0xf2, 0xe6, 0xad, 0x59, 0x79, 0xff, 0xd6, 0x34, 0x5e, 0x75, 0x4d, 0xe3, 0xef, 0xae, + 0x69, 0xfc, 0xd3, 0x35, 0x8d, 0xd7, 0x5d, 0xd3, 0xf8, 0xb7, 0x6b, 0x1a, 0xff, 0x75, 0xcd, 0xca, + 0xfb, 0xae, 0x69, 0xfc, 0xf1, 0xce, 0xac, 0xbc, 0x7e, 0x67, 0x56, 0xde, 0xbc, 0x33, 0x2b, 0xcf, + 0xbe, 0xb7, 0xb9, 0xdf, 0xb1, 0xad, 0x88, 0x3b, 0x01, 0x15, 0x02, 0x5b, 0xa1, 0xac, 0xeb, 0x0f, + 0x7b, 0x5c, 0xb8, 0x35, 0x5f, 0xf0, 0x88, 0xb5, 0xa8, 0xa8, 0x1d, 0xc8, 0x75, 0xbf, 0x69, 0xf3, + 0x3a, 0x7d, 0x11, 0xe4, 0xef, 0x11, 0x87, 0x5e, 0x27, 0x9a, 0x63, 0xfa, 0x3d, 0x62, 0xf5, 0xff, + 0x00, 0x00, 0x00, 0xff, 0xff, 0xc4, 0xc0, 0x40, 0x3d, 0xb3, 0x0c, 0x00, 0x00, } func (this *QuotaResourceKeyChoice) Equal(that interface{}) bool { @@ -1423,11 +1438,35 @@ func (this *QuotaResourceKeyChoice_FastAclSourceIps) Equal(that interface{}) boo } return true } +func (this *QuotaResourceKeyChoice_LbSipPersistence) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*QuotaResourceKeyChoice_LbSipPersistence) + if !ok { + that2, ok := that.(QuotaResourceKeyChoice_LbSipPersistence) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.LbSipPersistence != that1.LbSipPersistence { + return false + } + return true +} func (this *QuotaResourceKeyChoice) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 37) + s := make([]string, 0, 38) s = append(s, "&vesenv.QuotaResourceKeyChoice{") if this.Choice != nil { s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") @@ -1699,6 +1738,14 @@ func (this *QuotaResourceKeyChoice_FastAclSourceIps) GoString() string { `FastAclSourceIps:` + fmt.Sprintf("%#v", this.FastAclSourceIps) + `}`}, ", ") return s } +func (this *QuotaResourceKeyChoice_LbSipPersistence) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&vesenv.QuotaResourceKeyChoice_LbSipPersistence{` + + `LbSipPersistence:` + fmt.Sprintf("%#v", this.LbSipPersistence) + `}`}, ", ") + return s +} func valueToGoStringQuotaResourceKeys(v interface{}, typ string) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -2336,6 +2383,25 @@ func (m *QuotaResourceKeyChoice_FastAclSourceIps) MarshalToSizedBuffer(dAtA []by dAtA[i] = 0x88 return len(dAtA) - i, nil } +func (m *QuotaResourceKeyChoice_LbSipPersistence) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QuotaResourceKeyChoice_LbSipPersistence) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i-- + if m.LbSipPersistence { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil +} func encodeVarintQuotaResourceKeys(dAtA []byte, offset int, v uint64) int { offset -= sovQuotaResourceKeys(v) base := offset @@ -2656,6 +2722,15 @@ func (m *QuotaResourceKeyChoice_FastAclSourceIps) Size() (n int) { n += 3 return n } +func (m *QuotaResourceKeyChoice_LbSipPersistence) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 3 + return n +} func sovQuotaResourceKeys(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 @@ -3003,6 +3078,16 @@ func (this *QuotaResourceKeyChoice_FastAclSourceIps) String() string { }, "") return s } +func (this *QuotaResourceKeyChoice_LbSipPersistence) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&QuotaResourceKeyChoice_LbSipPersistence{`, + `LbSipPersistence:` + fmt.Sprintf("%v", this.LbSipPersistence) + `,`, + `}`, + }, "") + return s +} func valueToStringQuotaResourceKeys(v interface{}) string { rv := reflect.ValueOf(v) if rv.IsNil() { @@ -3733,6 +3818,27 @@ func (m *QuotaResourceKeyChoice) Unmarshal(dAtA []byte) error { } b := bool(v != 0) m.Choice = &QuotaResourceKeyChoice_FastAclSourceIps{b} + case 34: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field LbSipPersistence", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuotaResourceKeys + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + m.Choice = &QuotaResourceKeyChoice_LbSipPersistence{b} default: iNdEx = preIndex skippy, err := skipQuotaResourceKeys(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/vesenv/quota_resource_keys.vesmsg.go b/pbgo/extschema/schema/vesenv/quota_resource_keys.vesmsg.go index df67ad629..54be06cb5 100644 --- a/pbgo/extschema/schema/vesenv/quota_resource_keys.vesmsg.go +++ b/pbgo/extschema/schema/vesenv/quota_resource_keys.vesmsg.go @@ -441,6 +441,17 @@ func (v *ValidateQuotaResourceKeyChoice) Validate(ctx context.Context, pm interf return err } } + case *QuotaResourceKeyChoice_LbSipPersistence: + if fv, exists := v.FldValidators["choice.lb_sip_persistence"]; exists { + val := m.GetChoice().(*QuotaResourceKeyChoice_LbSipPersistence).LbSipPersistence + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("lb_sip_persistence"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } diff --git a/pbgo/extschema/schema/views/api_definition/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/api_definition/crudapi/api.vesapi.go index e772db2b7..73d0884bf 100644 --- a/pbgo/extschema/schema/views/api_definition/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/api_definition/crudapi/api.vesapi.go @@ -3235,10 +3235,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/api_definition/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/api_definition/public_crudapi.vesapi.go index 1230b5d08..755d42916 100644 --- a/pbgo/extschema/schema/views/api_definition/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/api_definition/public_crudapi.vesapi.go @@ -2894,10 +2894,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2954,10 +2958,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3016,10 +3024,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/api_inventory/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/api_inventory/crudapi/api.vesapi.go index 7f5ed6163..16865bd11 100644 --- a/pbgo/extschema/schema/views/api_inventory/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/api_inventory/crudapi/api.vesapi.go @@ -3193,10 +3193,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/app_api_group/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/app_api_group/crudapi/api.vesapi.go index 6377e2a27..75399e16e 100644 --- a/pbgo/extschema/schema/views/app_api_group/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/app_api_group/crudapi/api.vesapi.go @@ -3233,10 +3233,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/app_api_group/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/app_api_group/public_crudapi.vesapi.go index 9b6349245..79ed42ce0 100644 --- a/pbgo/extschema/schema/views/app_api_group/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/app_api_group/public_crudapi.vesapi.go @@ -2891,10 +2891,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2951,10 +2955,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3013,10 +3021,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/aws_tgw_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/aws_tgw_site/crudapi/api.vesapi.go index cc8f653c1..491faf31e 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/crudapi/api.vesapi.go @@ -3188,15 +3188,17 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing nodes of the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing nodes of the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", "title": "Public SSH key", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "total_nodes": { @@ -3571,12 +3573,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/cloud_connectAWSRouteTableListType", "x-displayname": "Installed Routes" }, - "state": { - "type": "string", - "description": " Attachment State", - "title": "Attachment State", - "x-displayname": "Attachment State" - }, "subnets": { "type": "array", "description": " Network Interfaces created along with the attachment", @@ -3592,6 +3588,18 @@ var APISwaggerJSON string = `{ "title": "TGW Attachment ID", "x-displayname": "TGW Attachment ID" }, + "vpc_cidr": { + "type": "string", + "description": " VPC CIDR", + "title": "VPC CIDR", + "x-displayname": "VPC CIDR" + }, + "vpc_deployment_state": { + "description": " VPC deployment state", + "title": "Deployment State", + "$ref": "#/definitions/cloud_connectCloudConnectVPCStateType", + "x-displayname": "Deployment State" + }, "vpc_id": { "type": "string", "description": " VPC ID", @@ -3674,6 +3682,21 @@ var APISwaggerJSON string = `{ } } }, + "cloud_connectCloudConnectVPCStateType": { + "type": "string", + "description": "Cloud Connect VPC State Type\n\n - AVAILABLE: Available\n\nCloud Connect vpc attachment is in available state.\n - PENDING: Pending\n\nCloud Connect vpc attachment is in flight.\n - FAILED: Failed\n\nCloud Connect vpc attachment has failed.\n - DELETED: Deleted\n\nCloud Connect vpc attachment has been deleted.\n - DELETING: Deleting\n\nCloud Connect vpc attachment is being deleted.", + "title": "Cloud Connect VPC State", + "enum": [ + "AVAILABLE", + "PENDING", + "FAILED", + "DELETED", + "DELETING" + ], + "default": "AVAILABLE", + "x-displayname": "Cloud Connect VPC State", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.CloudConnectVPCStateType" + }, "cloud_connectSubnetStatusType": { "type": "object", "description": "Network Interface Status", @@ -4572,10 +4595,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5284,12 +5311,12 @@ var APISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { @@ -6242,6 +6269,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -6590,10 +6688,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", - "title": "Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", + "title": "Allow access to DNS, SSH services on Site", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\n Disable Private Connectivity to Site", @@ -6620,6 +6718,12 @@ var APISwaggerJSON string = `{ "x-displayname": "Error Description", "x-ves-example": "value" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "title": "Disable Logs Streaming", diff --git a/pbgo/extschema/schema/views/aws_tgw_site/object.pb.go b/pbgo/extschema/schema/views/aws_tgw_site/object.pb.go index e17f23b13..082f8a58b 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/object.pb.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/object.pb.go @@ -282,56 +282,58 @@ func init() { } var fileDescriptor_b9353e3aed3d2954 = []byte{ - // 780 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x95, 0xcd, 0x6e, 0xeb, 0x44, - 0x14, 0xc7, 0xe3, 0x24, 0x37, 0x0d, 0xd3, 0xaa, 0x8d, 0x7c, 0x85, 0x64, 0x2e, 0x60, 0xaa, 0xb0, - 0xe0, 0x0a, 0x5d, 0xdb, 0xa8, 0xc0, 0xa2, 0x55, 0x15, 0xd4, 0x0f, 0x88, 0xa8, 0x5a, 0x90, 0x92, - 0x42, 0x25, 0x16, 0x58, 0xe3, 0xc9, 0x89, 0x63, 0x88, 0x3d, 0xd6, 0xcc, 0x38, 0x69, 0x16, 0x48, - 0x88, 0x27, 0x60, 0xc1, 0x43, 0x20, 0x9e, 0x82, 0xb2, 0x62, 0x19, 0x75, 0xd5, 0x25, 0x75, 0x36, - 0x5d, 0x96, 0x3d, 0x0b, 0xe4, 0x71, 0x93, 0x3a, 0x91, 0x4b, 0x2a, 0xd1, 0x9d, 0x9d, 0xf3, 0xff, - 0xff, 0xc6, 0xe7, 0x63, 0x4e, 0x90, 0x31, 0x00, 0x6e, 0x7a, 0xd4, 0xe2, 0xa4, 0x07, 0x3e, 0xb6, - 0x06, 0x1e, 0x0c, 0xb9, 0x85, 0x87, 0xdc, 0x16, 0xee, 0xd0, 0xe6, 0x9e, 0x00, 0x8b, 0x3a, 0xdf, - 0x01, 0x11, 0x66, 0xc8, 0xa8, 0xa0, 0xea, 0x66, 0x2a, 0x37, 0x53, 0xb9, 0x29, 0xe5, 0x66, 0x56, - 0xfe, 0xc2, 0x70, 0x3d, 0xd1, 0x8b, 0x1c, 0x93, 0x50, 0xdf, 0x72, 0xa9, 0x4b, 0x2d, 0x69, 0x74, - 0xa2, 0xae, 0x7c, 0x93, 0x2f, 0xf2, 0x29, 0x05, 0xbe, 0x78, 0x6f, 0xfe, 0x7c, 0xd2, 0xa7, 0x51, - 0xc7, 0x26, 0x34, 0x08, 0x80, 0x08, 0x4b, 0x8c, 0x42, 0xe0, 0x77, 0xc2, 0x37, 0xe7, 0x85, 0x34, - 0x14, 0x1e, 0x0d, 0xa6, 0xc1, 0x37, 0xe6, 0x83, 0x59, 0x5f, 0x7d, 0x21, 0x41, 0xe0, 0x10, 0x0c, - 0x16, 0xec, 0xaf, 0x96, 0x16, 0x21, 0x4b, 0xfc, 0x28, 0x4f, 0x2d, 0x80, 0x31, 0xdc, 0xa5, 0xcc, - 0xb7, 0x43, 0xcc, 0xb0, 0x0f, 0x02, 0x18, 0x9f, 0x73, 0xbd, 0x93, 0xeb, 0xba, 0x17, 0xd4, 0xc7, - 0x65, 0x54, 0xf9, 0x52, 0xd6, 0x5a, 0xdd, 0x46, 0x55, 0x1f, 0x04, 0xee, 0x60, 0x81, 0x35, 0x65, - 0x53, 0x79, 0xb9, 0xba, 0xf5, 0xb6, 0x39, 0x5f, 0xf8, 0x54, 0x78, 0x02, 0x02, 0x9f, 0x8e, 0x42, - 0x68, 0xcd, 0xe4, 0xea, 0x31, 0xda, 0xe0, 0x23, 0x2e, 0xc0, 0xb7, 0x67, 0x84, 0xa2, 0x24, 0xbc, - 0xbb, 0x40, 0x68, 0x4b, 0xd5, 0x02, 0x67, 0x3d, 0xf5, 0x9e, 0x4c, 0x69, 0x0d, 0x54, 0xe6, 0x21, - 0x10, 0xad, 0x24, 0x11, 0xef, 0x9b, 0xcb, 0xba, 0x6f, 0xb6, 0x43, 0x20, 0x92, 0x24, 0x7d, 0x3b, - 0xff, 0x14, 0x7f, 0xfa, 0xa4, 0x92, 0x32, 0xff, 0xb8, 0xd0, 0x8a, 0x35, 0xe5, 0xf2, 0x42, 0xbb, - 0x29, 0xa2, 0x4f, 0x51, 0xa9, 0x09, 0x42, 0x6d, 0x74, 0x3f, 0x3e, 0x27, 0x46, 0xe2, 0x33, 0x7c, - 0x1c, 0x60, 0x17, 0x7c, 0x08, 0x84, 0xe1, 0x60, 0xee, 0x11, 0xc3, 0xa7, 0x81, 0x27, 0x28, 0x7b, - 0x95, 0x0c, 0x9c, 0xe1, 0x51, 0xc3, 0x0b, 0xba, 0x0c, 0x73, 0xc1, 0x22, 0x22, 0x22, 0x06, 0x06, - 0x03, 0xdc, 0x41, 0x4d, 0xb4, 0xd2, 0x82, 0xb0, 0x8f, 0x09, 0xa8, 0xbb, 0xff, 0x81, 0x8a, 0x38, - 0x3c, 0xc8, 0x19, 0x32, 0x4f, 0x00, 0xfa, 0x0c, 0x55, 0x0e, 0x18, 0x60, 0xf1, 0x04, 0x9c, 0x43, - 0xe8, 0xc3, 0x13, 0x70, 0xca, 0xc7, 0x1e, 0xff, 0xdf, 0x05, 0xaa, 0x7f, 0x85, 0xaa, 0xd3, 0x86, - 0xa8, 0x9f, 0xa3, 0x15, 0x97, 0xd8, 0xb2, 0x9b, 0xe9, 0x48, 0x7d, 0xb0, 0xbc, 0x9b, 0xcd, 0x3e, - 0x75, 0x70, 0x7f, 0xd6, 0xd3, 0x8a, 0x4b, 0x92, 0xe7, 0xfa, 0xdf, 0x65, 0xb4, 0xd6, 0x16, 0x58, - 0x44, 0xfc, 0xd1, 0xf3, 0x9a, 0xca, 0x73, 0xe6, 0xf5, 0x0b, 0xb4, 0x9a, 0x2e, 0x18, 0x9b, 0x41, - 0x97, 0x6b, 0xc5, 0xcd, 0xd2, 0xcb, 0xd5, 0xad, 0xb7, 0x72, 0xa7, 0xbd, 0x05, 0xdd, 0xc4, 0xbc, - 0xbf, 0xf1, 0xdb, 0x0f, 0x6b, 0xd9, 0xcf, 0x6c, 0x21, 0x3a, 0x8d, 0x73, 0x75, 0x17, 0x21, 0x42, - 0x83, 0x8e, 0x27, 0xaf, 0xb7, 0x56, 0xca, 0xc5, 0x1d, 0x4c, 0x05, 0xf2, 0x5b, 0x32, 0x7a, 0xf5, - 0x5b, 0x84, 0x3a, 0x10, 0xf6, 0xe9, 0x28, 0x29, 0xb4, 0xf6, 0x4c, 0xa6, 0xd2, 0xc8, 0xad, 0x53, - 0xde, 0x7d, 0x37, 0x0f, 0x67, 0xde, 0x34, 0xdf, 0x94, 0x7f, 0x4f, 0x54, 0x0f, 0x51, 0x49, 0xb8, - 0x43, 0xad, 0x22, 0xc1, 0x5b, 0xcb, 0x1b, 0xb0, 0x77, 0xd6, 0x3e, 0x6d, 0x9e, 0x65, 0x60, 0x89, - 0x5d, 0xf5, 0xd1, 0xeb, 0x0c, 0x38, 0x8d, 0x18, 0x01, 0x9b, 0xf7, 0x30, 0x03, 0x9b, 0x4b, 0x85, - 0xf6, 0x9a, 0xe4, 0x6e, 0x3f, 0x96, 0xdb, 0xba, 0x83, 0xb4, 0x13, 0x86, 0xc4, 0x3f, 0x67, 0xd9, - 0x9f, 0xd2, 0x73, 0x55, 0x07, 0x6d, 0x0c, 0x42, 0x62, 0x63, 0x21, 0x30, 0xe9, 0x25, 0x69, 0x70, - 0xad, 0x9a, 0x7b, 0xd0, 0xdc, 0xf2, 0x4e, 0xce, 0xd8, 0xbb, 0xb7, 0x24, 0xf3, 0x9c, 0xc9, 0x63, - 0x7d, 0x10, 0x92, 0x4c, 0x74, 0xe7, 0xf9, 0x65, 0xa3, 0x86, 0xd6, 0xd1, 0xda, 0x74, 0x2e, 0xcc, - 0xc8, 0xeb, 0x1c, 0x95, 0xab, 0xe5, 0xda, 0xb3, 0xa3, 0x72, 0x75, 0xa5, 0x56, 0xdd, 0xff, 0x45, - 0x19, 0x5f, 0xeb, 0x85, 0xab, 0x6b, 0xbd, 0x70, 0x7b, 0xad, 0x2b, 0x3f, 0xc6, 0xba, 0xf2, 0x6b, - 0xac, 0x2b, 0x7f, 0xc6, 0xba, 0x32, 0x8e, 0x75, 0xe5, 0x2a, 0xd6, 0x95, 0xbf, 0x62, 0x5d, 0xb9, - 0x89, 0xf5, 0xc2, 0x6d, 0xac, 0x2b, 0x3f, 0x4f, 0xf4, 0xc2, 0xef, 0x13, 0x5d, 0x19, 0x4f, 0xf4, - 0xc2, 0xd5, 0x44, 0x2f, 0x7c, 0xf3, 0xb5, 0x4b, 0xc3, 0xef, 0x5d, 0x73, 0x40, 0xfb, 0xb2, 0x71, - 0x66, 0x94, 0xd9, 0xd8, 0x46, 0xc8, 0xe8, 0xc0, 0xeb, 0x00, 0x33, 0xa6, 0x61, 0x2b, 0x74, 0x5c, - 0x6a, 0xc1, 0xb9, 0xb8, 0x5b, 0xd6, 0x0f, 0xfe, 0x2f, 0x38, 0x15, 0xb9, 0xbb, 0x3f, 0xfc, 0x37, - 0x00, 0x00, 0xff, 0xff, 0x18, 0x4a, 0xc4, 0x7b, 0x47, 0x07, 0x00, 0x00, + // 802 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x95, 0x41, 0x6f, 0xe3, 0x44, + 0x14, 0xc7, 0xe3, 0xc6, 0x9b, 0x86, 0x69, 0xd5, 0x46, 0x5e, 0x21, 0x99, 0x05, 0x4c, 0x14, 0x0e, + 0xac, 0xd0, 0xda, 0x46, 0x05, 0x0e, 0xbb, 0x42, 0x45, 0xbb, 0x5b, 0xa9, 0x62, 0xb5, 0x0b, 0x52, + 0xb2, 0xb0, 0x12, 0x07, 0xcc, 0x78, 0xfc, 0xe2, 0x78, 0x6b, 0x7b, 0xac, 0x99, 0xb1, 0xd3, 0x1c, + 0x90, 0x10, 0x47, 0x4e, 0x1c, 0xf8, 0x04, 0x9c, 0x10, 0x1f, 0x80, 0x33, 0xe5, 0xc4, 0xb1, 0xea, + 0xa9, 0x47, 0xea, 0x5c, 0x38, 0x96, 0x6f, 0x80, 0x3c, 0x6e, 0x12, 0x27, 0x32, 0x9b, 0x9e, 0x7a, + 0xb3, 0x3d, 0xff, 0xff, 0xef, 0xf9, 0xbd, 0x79, 0x33, 0x0f, 0x99, 0x19, 0x70, 0x2b, 0xa0, 0x36, + 0x27, 0x23, 0x88, 0xb0, 0x9d, 0x05, 0x30, 0xe6, 0x36, 0x1e, 0x73, 0x47, 0xf8, 0x63, 0x87, 0x07, + 0x02, 0x6c, 0xea, 0xbe, 0x04, 0x22, 0xac, 0x84, 0x51, 0x41, 0xb5, 0x6e, 0x29, 0xb7, 0x4a, 0xb9, + 0x25, 0xe5, 0x56, 0x55, 0x7e, 0xc7, 0xf4, 0x03, 0x31, 0x4a, 0x5d, 0x8b, 0xd0, 0xc8, 0xf6, 0xa9, + 0x4f, 0x6d, 0x69, 0x74, 0xd3, 0xa1, 0x7c, 0x93, 0x2f, 0xf2, 0xa9, 0x04, 0xde, 0x79, 0x6f, 0x39, + 0x3e, 0x09, 0x69, 0xea, 0x39, 0x84, 0xc6, 0x31, 0x10, 0x61, 0x8b, 0x49, 0x02, 0xfc, 0x4a, 0xf8, + 0xe6, 0xb2, 0x90, 0x26, 0x22, 0xa0, 0xf1, 0x6c, 0xf1, 0x8d, 0xe5, 0xc5, 0xaa, 0xaf, 0xb7, 0x92, + 0x20, 0x70, 0x88, 0xb3, 0x15, 0xfb, 0xbd, 0xb5, 0x45, 0xa8, 0x12, 0x3f, 0xaa, 0x53, 0x0b, 0x60, + 0x0c, 0x0f, 0x29, 0x8b, 0x9c, 0x04, 0x33, 0x1c, 0x81, 0x00, 0xc6, 0x97, 0x5c, 0xef, 0xd4, 0xba, + 0x16, 0x82, 0xde, 0x8f, 0x2d, 0xd4, 0xfa, 0x42, 0xd6, 0x5a, 0xbb, 0x8f, 0xda, 0x11, 0x08, 0xec, + 0x61, 0x81, 0x75, 0xa5, 0xab, 0xdc, 0xdd, 0xda, 0x7b, 0xdb, 0x5a, 0x2e, 0x7c, 0x29, 0x7c, 0x06, + 0x02, 0x3f, 0x9f, 0x24, 0xd0, 0x9f, 0xcb, 0xb5, 0xa7, 0x68, 0x97, 0x4f, 0xb8, 0x80, 0xc8, 0x99, + 0x13, 0x36, 0x24, 0xe1, 0xdd, 0x15, 0xc2, 0x40, 0xaa, 0x56, 0x38, 0x3b, 0xa5, 0xf7, 0xd9, 0x8c, + 0xb6, 0x8f, 0x54, 0x9e, 0x00, 0xd1, 0x9b, 0x12, 0xf1, 0xbe, 0xb5, 0x6e, 0xf7, 0xad, 0x41, 0x02, + 0x44, 0x92, 0xa4, 0xef, 0xc1, 0xef, 0xea, 0x0f, 0x9f, 0xb6, 0x4a, 0xe6, 0x9f, 0x27, 0xfa, 0x46, + 0x47, 0x39, 0x3b, 0xd1, 0x7f, 0x51, 0x51, 0x88, 0x9a, 0x87, 0x20, 0x34, 0x18, 0x7e, 0x7c, 0x4c, + 0xcc, 0xc2, 0x67, 0x46, 0x38, 0xc6, 0x3e, 0x44, 0x10, 0x0b, 0xd3, 0xc5, 0x3c, 0x20, 0x66, 0x44, + 0xe3, 0x40, 0x50, 0x76, 0xaf, 0x5b, 0xab, 0xe1, 0x02, 0xc7, 0x1e, 0x66, 0xde, 0x42, 0x96, 0x01, + 0x37, 0x03, 0x6a, 0x06, 0xf1, 0x90, 0x61, 0x2e, 0x58, 0x4a, 0x44, 0xca, 0xc0, 0x64, 0x80, 0x3d, + 0x74, 0x84, 0x36, 0xfb, 0x90, 0x84, 0x98, 0x80, 0xf6, 0xed, 0x2b, 0x22, 0xa6, 0x1c, 0xd6, 0x86, + 0x2b, 0x35, 0xf5, 0xb1, 0xc6, 0x2c, 0x10, 0x80, 0x5e, 0xa2, 0xd6, 0x63, 0x06, 0x58, 0xdc, 0x50, + 0xac, 0x03, 0x08, 0xe1, 0x46, 0x62, 0x45, 0x48, 0x7d, 0x1a, 0xf0, 0x9b, 0xda, 0xb3, 0xde, 0x97, + 0xa8, 0x3d, 0x6b, 0x25, 0xed, 0x33, 0xb4, 0xe9, 0x13, 0x47, 0xf6, 0x61, 0x79, 0x18, 0x3e, 0x58, + 0xdf, 0x87, 0x87, 0x21, 0x75, 0x71, 0x38, 0xef, 0xc6, 0x96, 0x4f, 0x8a, 0xe7, 0xde, 0xbf, 0x2a, + 0xda, 0x1e, 0x08, 0x2c, 0x52, 0x7e, 0xed, 0x93, 0x56, 0xca, 0x6b, 0x4e, 0xda, 0xe7, 0x68, 0xab, + 0xbc, 0x1a, 0x1d, 0x06, 0x43, 0xae, 0x6f, 0x74, 0x9b, 0x77, 0xb7, 0xf6, 0xde, 0xaa, 0x3d, 0xa7, + 0x7d, 0x18, 0x16, 0xe6, 0x47, 0xbb, 0xbf, 0x7d, 0xb7, 0x5d, 0xfd, 0xcd, 0x3e, 0xa2, 0xb3, 0x75, + 0xae, 0x7d, 0x82, 0x10, 0xa1, 0xb1, 0x17, 0xc8, 0x8b, 0x49, 0x6f, 0xd6, 0xe2, 0x1e, 0xcf, 0x04, + 0xf2, 0x5f, 0x2a, 0x7a, 0xed, 0x1b, 0x84, 0x3c, 0x48, 0x42, 0x3a, 0x29, 0x6a, 0xad, 0xdf, 0x92, + 0xa9, 0xec, 0xd7, 0xd6, 0xa9, 0xee, 0xa6, 0xb2, 0x0e, 0xe6, 0xde, 0x32, 0xdf, 0x92, 0xbf, 0x20, + 0x6a, 0x07, 0xa8, 0x29, 0xfc, 0xb1, 0xde, 0x92, 0xe0, 0xbd, 0xf5, 0x1b, 0xf0, 0xf0, 0xc5, 0xe0, + 0xf9, 0xe1, 0x8b, 0x0a, 0xac, 0xb0, 0x6b, 0x11, 0x7a, 0x9d, 0x01, 0xa7, 0x29, 0x23, 0xe0, 0xf0, + 0x11, 0x66, 0xe0, 0x70, 0xa9, 0xd0, 0x5f, 0x93, 0xdc, 0xfb, 0xd7, 0xe5, 0xf6, 0xaf, 0x20, 0x83, + 0x82, 0x21, 0xf1, 0xb7, 0x59, 0xf5, 0x53, 0x19, 0x57, 0x73, 0xd1, 0x6e, 0x96, 0x10, 0x07, 0x0b, + 0x81, 0xc9, 0xa8, 0x48, 0x83, 0xeb, 0xed, 0xda, 0x40, 0x4b, 0x63, 0xa7, 0x88, 0xf1, 0x70, 0x61, + 0x29, 0xda, 0xbe, 0x92, 0xc7, 0x4e, 0x96, 0x90, 0xca, 0xea, 0x83, 0xdb, 0x67, 0xfb, 0x1d, 0xb4, + 0x83, 0xb6, 0x67, 0x7d, 0x61, 0xa5, 0x81, 0xf7, 0x44, 0x6d, 0xab, 0x9d, 0x5b, 0x4f, 0xd4, 0xf6, + 0x66, 0xa7, 0xfd, 0xe8, 0x67, 0xe5, 0xf4, 0xc2, 0x68, 0x9c, 0x5f, 0x18, 0x8d, 0xcb, 0x0b, 0x43, + 0xf9, 0x3e, 0x37, 0x94, 0x5f, 0x73, 0x43, 0xf9, 0x2b, 0x37, 0x94, 0xd3, 0xdc, 0x50, 0xce, 0x73, + 0x43, 0xf9, 0x3b, 0x37, 0x94, 0x7f, 0x72, 0xa3, 0x71, 0x99, 0x1b, 0xca, 0x4f, 0x53, 0xa3, 0xf1, + 0xc7, 0xd4, 0x50, 0x4e, 0xa7, 0x46, 0xe3, 0x7c, 0x6a, 0x34, 0xbe, 0xfe, 0xca, 0xa7, 0xc9, 0x91, + 0x6f, 0x65, 0x34, 0x94, 0x1b, 0x67, 0xa5, 0x95, 0x59, 0x63, 0x26, 0x8c, 0x66, 0x81, 0x07, 0xcc, + 0x9c, 0x2d, 0xdb, 0x89, 0xeb, 0x53, 0x1b, 0x8e, 0xc5, 0xd5, 0x98, 0xf9, 0xdf, 0x89, 0xe6, 0xb6, + 0xe4, 0xd4, 0xf9, 0xf0, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe9, 0x9e, 0x3c, 0x9e, 0x01, 0x08, + 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/aws_tgw_site/pkg.vespkg.go b/pbgo/extschema/schema/views/aws_tgw_site/pkg.vespkg.go index ee6e3d20f..939d440db 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/pkg.vespkg.go @@ -86,15 +86,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.aws_tgw_site.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_dns.inside_nameserver_v6", @@ -109,15 +109,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.aws_tgw_site.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_dns.inside_nameserver_v6", @@ -134,15 +134,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.aws_tgw_site.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_dns.inside_nameserver_v6", @@ -152,6 +152,18 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { FieldPath: "create_form.spec.custom_dns.outside_nameserver_v6", AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, }, + { + FieldPath: "replace_form.spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, { FieldPath: "replace_form.spec.custom_dns.inside_nameserver_v6", AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, @@ -162,15 +174,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_dns.inside_nameserver_v6", @@ -185,15 +197,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.aws_tgw_site.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_dns.inside_nameserver_v6", @@ -207,6 +219,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.views.aws_tgw_site.API.Replace"] = []string{ "spec.aws_parameters.assisted", + "spec.aws_parameters.az_nodes.#.disk_size", "spec.vn_config.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.blindfold_secret_info_internal", "spec.vn_config.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.secret_encoding_type", "spec.vn_config.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.vault_secret_info", @@ -214,6 +227,18 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.aws_tgw_site.API.Replace"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.aws_parameters.az_nodes.#.inside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.aws_parameters.az_nodes.#.outside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.aws_parameters.az_nodes.#.workload_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, { FieldPath: "spec.custom_dns.inside_nameserver_v6", AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, diff --git a/pbgo/extschema/schema/views/aws_tgw_site/private_customapi.pb.go b/pbgo/extschema/schema/views/aws_tgw_site/private_customapi.pb.go index c782b7e75..ec63c8c75 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/private_customapi.pb.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/private_customapi.pb.go @@ -40,39 +40,40 @@ func init() { } var fileDescriptor_1b3948f72e872ec9 = []byte{ - // 509 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x52, 0x41, 0x6b, 0x13, 0x41, - 0x14, 0xde, 0x89, 0xe2, 0x21, 0x17, 0x4b, 0x4e, 0x35, 0x96, 0xb1, 0x04, 0x51, 0xd0, 0xee, 0x0e, - 0x28, 0x05, 0xf1, 0xa6, 0xe2, 0x41, 0x10, 0x2c, 0x8a, 0x1e, 0x7a, 0x59, 0x66, 0xb7, 0x2f, 0x93, - 0xd1, 0xec, 0xbe, 0x71, 0xe6, 0xed, 0xa6, 0x22, 0x05, 0xe9, 0x2f, 0x28, 0xf8, 0x07, 0x3c, 0xfa, - 0x1f, 0x72, 0xe9, 0x4d, 0x4f, 0x12, 0xd4, 0x43, 0x8f, 0x66, 0xa3, 0xe0, 0xb1, 0x3f, 0x41, 0x32, - 0x49, 0x24, 0x89, 0x95, 0x7a, 0xf0, 0xf6, 0x66, 0xbf, 0xef, 0x7b, 0xfb, 0xbd, 0xf7, 0xbe, 0xfa, - 0xad, 0x12, 0x5c, 0xa4, 0x51, 0xb8, 0xb4, 0x03, 0x99, 0x14, 0xa5, 0x86, 0x9e, 0x13, 0xb2, 0xe7, - 0x62, 0x52, 0xbd, 0xd8, 0x69, 0x02, 0x61, 0xac, 0x2e, 0x25, 0x41, 0x9c, 0x16, 0x8e, 0x30, 0x93, - 0x46, 0x47, 0xc6, 0x22, 0x61, 0x63, 0x7d, 0xa2, 0x8c, 0x26, 0xca, 0xc8, 0x2b, 0xa3, 0x79, 0x65, - 0x33, 0x54, 0x9a, 0x3a, 0x45, 0x12, 0xa5, 0x98, 0x09, 0x85, 0x0a, 0x85, 0x17, 0x26, 0x45, 0xdb, - 0xbf, 0xfc, 0xc3, 0x57, 0x93, 0x86, 0xcd, 0x35, 0x85, 0xa8, 0xba, 0x20, 0xa4, 0xd1, 0x42, 0xe6, - 0x39, 0x92, 0x24, 0x8d, 0xb9, 0x9b, 0xa2, 0x17, 0x17, 0x8d, 0xa2, 0x99, 0x07, 0x2f, 0x2c, 0x82, - 0xf4, 0xca, 0xc0, 0x0c, 0x5a, 0x5b, 0x1a, 0x50, 0x76, 0xf5, 0x8e, 0x24, 0x98, 0xa2, 0xad, 0x25, - 0x14, 0x1c, 0xe4, 0xe5, 0x52, 0xf3, 0xf5, 0x3f, 0x57, 0x14, 0x2f, 0x32, 0x36, 0x4e, 0x5d, 0xe2, - 0xbc, 0xa3, 0xcb, 0x27, 0xb1, 0xc7, 0xac, 0x78, 0x9e, 0x75, 0x65, 0x99, 0x65, 0xa9, 0x90, 0xdd, - 0xb8, 0x83, 0x8e, 0xe6, 0xbb, 0xdd, 0x78, 0x77, 0xa6, 0xbe, 0xb2, 0x35, 0x39, 0xd1, 0x3d, 0x7f, - 0xa1, 0x3b, 0x5b, 0x0f, 0x1a, 0x5f, 0x6b, 0xf5, 0xf3, 0x4f, 0xcd, 0x78, 0xce, 0x27, 0x9a, 0xe0, - 0xbe, 0xb5, 0x68, 0x1b, 0xd7, 0xa3, 0x93, 0x0e, 0xb6, 0xc4, 0x7a, 0x0c, 0x2f, 0x0b, 0x70, 0xd4, - 0xdc, 0xf8, 0x37, 0xb2, 0x33, 0x98, 0x3b, 0x68, 0xfd, 0x60, 0xd5, 0x87, 0xd5, 0x4b, 0xed, 0xcd, - 0xdd, 0x34, 0x1c, 0xcf, 0x11, 0x66, 0x32, 0x97, 0x0a, 0x32, 0xc8, 0x29, 0x4c, 0xa4, 0xd3, 0x69, - 0x58, 0x38, 0xb0, 0xfb, 0x5f, 0xbe, 0xbf, 0xad, 0xf5, 0x59, 0xeb, 0xe1, 0x2c, 0x51, 0x62, 0x92, - 0x28, 0x91, 0xcb, 0x0c, 0x9c, 0x91, 0x29, 0x38, 0xf1, 0xfa, 0x77, 0xbd, 0xb7, 0xb8, 0x3f, 0x0f, - 0xec, 0x89, 0xc2, 0x1b, 0xf0, 0x9f, 0x62, 0x18, 0x5b, 0xb8, 0xcd, 0xae, 0x6d, 0x77, 0x5a, 0xa9, - 0x58, 0x70, 0x2b, 0x74, 0x4e, 0x16, 0x9d, 0x81, 0x94, 0x44, 0xcf, 0xea, 0xff, 0xf6, 0xa7, 0xe6, - 0xe6, 0x61, 0x9f, 0x9d, 0xfd, 0xdc, 0x67, 0x57, 0x4f, 0x8b, 0x7e, 0xf4, 0x28, 0x79, 0x0e, 0x29, - 0xed, 0x7f, 0x5a, 0xad, 0xad, 0xb0, 0xbb, 0x07, 0x6c, 0x30, 0xe4, 0xc1, 0xd1, 0x90, 0x07, 0xc7, - 0x43, 0xce, 0xde, 0x54, 0x9c, 0xbd, 0xaf, 0x38, 0xfb, 0x58, 0x71, 0x36, 0xa8, 0x38, 0xfb, 0x56, - 0x71, 0xf6, 0xb3, 0xe2, 0xc1, 0x71, 0xc5, 0xd9, 0xc1, 0x88, 0x07, 0x87, 0x23, 0xce, 0x06, 0x23, - 0x1e, 0x1c, 0x8d, 0x78, 0xb0, 0xfd, 0x4c, 0xa1, 0x79, 0xa1, 0xa2, 0x12, 0xbb, 0x04, 0xd6, 0xca, - 0xa8, 0x70, 0xc2, 0x17, 0x6d, 0xb4, 0x59, 0x68, 0x2c, 0x96, 0x7a, 0x07, 0x6c, 0x38, 0x83, 0x85, - 0x49, 0x14, 0x0a, 0xd8, 0xa5, 0xe9, 0x1e, 0xfe, 0x9a, 0xc7, 0xe4, 0x9c, 0x0f, 0xcf, 0xcd, 0x5f, - 0x01, 0x00, 0x00, 0xff, 0xff, 0xeb, 0x14, 0x5e, 0x3c, 0xff, 0x03, 0x00, 0x00, + // 520 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0xbf, 0x8b, 0x13, 0x41, + 0x14, 0xc7, 0x77, 0xa2, 0x58, 0xa4, 0xf1, 0x48, 0x75, 0xc6, 0x63, 0x08, 0x41, 0x14, 0x34, 0xbb, + 0x03, 0xca, 0x81, 0xd8, 0xe9, 0x61, 0x21, 0x08, 0x1e, 0x8a, 0x16, 0xd7, 0x2c, 0xb3, 0x9b, 0x97, + 0xcd, 0x68, 0x76, 0xdf, 0x38, 0xf3, 0x76, 0x73, 0x22, 0x07, 0x72, 0x9d, 0xdd, 0x81, 0xff, 0x84, + 0xff, 0x43, 0x9a, 0x2b, 0x04, 0xad, 0x24, 0x68, 0x73, 0xa5, 0xd9, 0x58, 0x58, 0x5e, 0x69, 0x29, + 0x99, 0x24, 0x92, 0xc4, 0xc8, 0x59, 0xd8, 0xbd, 0xc9, 0xf7, 0xf3, 0x7d, 0x79, 0xbf, 0xb6, 0x7a, + 0xbb, 0x00, 0x1b, 0x28, 0x14, 0x36, 0xee, 0x42, 0x2a, 0x45, 0xa1, 0xa0, 0x6f, 0x85, 0xec, 0xdb, + 0x90, 0x92, 0x7e, 0x68, 0x15, 0x81, 0xd0, 0x46, 0x15, 0x92, 0x20, 0x8c, 0x73, 0x4b, 0x98, 0x4a, + 0xad, 0x02, 0x6d, 0x90, 0xb0, 0xd6, 0x98, 0x3a, 0x83, 0xa9, 0x33, 0x70, 0xce, 0x60, 0xd1, 0x59, + 0xf7, 0x13, 0x45, 0xdd, 0x3c, 0x0a, 0x62, 0x4c, 0x45, 0x82, 0x09, 0x0a, 0x67, 0x8c, 0xf2, 0x8e, + 0x7b, 0xb9, 0x87, 0x8b, 0xa6, 0x09, 0xeb, 0x5b, 0x09, 0x62, 0xd2, 0x03, 0x21, 0xb5, 0x12, 0x32, + 0xcb, 0x90, 0x24, 0x29, 0xcc, 0xec, 0x4c, 0xbd, 0xbc, 0x5c, 0x28, 0xea, 0x45, 0xf1, 0xd2, 0xb2, + 0x48, 0xaf, 0x34, 0xcc, 0xa5, 0xad, 0x95, 0x06, 0x65, 0x4f, 0xb5, 0x25, 0xc1, 0x4c, 0x6d, 0xae, + 0xa8, 0x60, 0x21, 0x2b, 0x56, 0x92, 0x37, 0xfe, 0x1c, 0x51, 0xb8, 0x4c, 0xb4, 0xce, 0x1c, 0xe2, + 0x62, 0x45, 0x57, 0xd6, 0xd1, 0x13, 0x2a, 0x5c, 0xa4, 0xae, 0xae, 0x52, 0x86, 0x72, 0xd9, 0x0b, + 0xbb, 0x68, 0x69, 0x31, 0xdb, 0xcd, 0x0f, 0xe7, 0xaa, 0x1b, 0xbb, 0xd3, 0x15, 0xed, 0xb8, 0x0d, + 0xdd, 0xdd, 0x7d, 0x50, 0xfb, 0x59, 0xa9, 0x5e, 0x7c, 0xaa, 0x27, 0x7d, 0x3e, 0x51, 0x04, 0xf7, + 0x8d, 0x41, 0x53, 0xbb, 0x11, 0xac, 0x5b, 0xd8, 0x0a, 0xf5, 0x18, 0x5e, 0xe6, 0x60, 0xa9, 0xde, + 0xfa, 0x37, 0xd8, 0x6a, 0xcc, 0x2c, 0x34, 0xdf, 0x56, 0xca, 0x8f, 0x9b, 0x3b, 0x9d, 0xed, 0xfd, + 0xd8, 0x9f, 0xf4, 0xe1, 0xa7, 0x32, 0x93, 0x09, 0xa4, 0x90, 0x91, 0x1f, 0x49, 0xab, 0x62, 0x3f, + 0xb7, 0x60, 0x5a, 0x8d, 0xb5, 0x80, 0x25, 0x99, 0xb5, 0xa5, 0x69, 0x3b, 0xe6, 0xf0, 0xeb, 0xf7, + 0x77, 0x95, 0x01, 0x6b, 0x3e, 0x9c, 0x5f, 0x9d, 0x98, 0x5e, 0x9d, 0xc8, 0x64, 0x0a, 0x56, 0xcb, + 0x18, 0xac, 0x78, 0xfd, 0x3b, 0x3e, 0x58, 0x9e, 0xb1, 0x13, 0x0e, 0x44, 0xee, 0x8a, 0x74, 0x3f, + 0x85, 0x30, 0x29, 0xf3, 0x0e, 0xbb, 0xbe, 0xd7, 0x6d, 0xc6, 0x62, 0xa9, 0x23, 0xa1, 0x32, 0x32, + 0x68, 0x35, 0xc4, 0x24, 0xfa, 0x46, 0xfd, 0xb7, 0x7f, 0xaa, 0x6f, 0x1f, 0x0f, 0xd8, 0xf9, 0x2f, + 0x03, 0x76, 0xed, 0xac, 0xcf, 0x23, 0x78, 0x14, 0x3d, 0x87, 0x98, 0x0e, 0x3f, 0x6f, 0x56, 0x36, + 0xd8, 0xbd, 0x23, 0x36, 0x1c, 0x71, 0xef, 0x64, 0xc4, 0xbd, 0xd3, 0x11, 0x67, 0x6f, 0x4a, 0xce, + 0xde, 0x97, 0x9c, 0x7d, 0x2a, 0x39, 0x1b, 0x96, 0x9c, 0x7d, 0x2b, 0x39, 0xfb, 0x51, 0x72, 0xef, + 0xb4, 0xe4, 0xec, 0x68, 0xcc, 0xbd, 0xe3, 0x31, 0x67, 0xc3, 0x31, 0xf7, 0x4e, 0xc6, 0xdc, 0xdb, + 0x7b, 0x96, 0xa0, 0x7e, 0x91, 0x04, 0x05, 0xf6, 0x08, 0x8c, 0x91, 0x41, 0x6e, 0x85, 0x0b, 0x3a, + 0x68, 0x52, 0x5f, 0x1b, 0x2c, 0x54, 0x1b, 0x8c, 0x3f, 0x97, 0x85, 0x8e, 0x12, 0x14, 0xb0, 0x4f, + 0xb3, 0x39, 0xfc, 0xf5, 0x66, 0xa3, 0x0b, 0xee, 0xc0, 0x6e, 0xfd, 0x0a, 0x00, 0x00, 0xff, 0xff, + 0x37, 0xf9, 0xbe, 0x7e, 0x23, 0x04, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.pb.go b/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.pb.go index c828d9a3d..61975e595 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.pb.go @@ -1065,111 +1065,113 @@ func init() { } var fileDescriptor_e308fb48fb8dd614 = []byte{ - // 1664 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x41, 0x6f, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x9a, 0x75, 0x59, 0x96, 0x09, - 0x1a, 0xc1, 0x30, 0x97, 0x8e, 0x52, 0xa3, 0x89, 0xda, 0xba, 0xa5, 0xe8, 0x95, 0x22, 0x57, 0xb6, - 0x8c, 0x21, 0x2d, 0x14, 0xbd, 0x6c, 0x97, 0xcb, 0x47, 0x66, 0x63, 0x72, 0x77, 0x3b, 0x33, 0x94, - 0x42, 0x14, 0x42, 0xdd, 0x1c, 0x7b, 0x69, 0x81, 0x5e, 0x8a, 0xa2, 0x87, 0x5c, 0x02, 0xf4, 0xdc, - 0x53, 0x01, 0x5d, 0x7c, 0x4b, 0x90, 0x43, 0x61, 0xb4, 0x3d, 0xf8, 0x18, 0xd3, 0x6d, 0x91, 0x43, - 0x0f, 0x41, 0x7f, 0x40, 0x51, 0xec, 0xcc, 0x2e, 0x4d, 0x52, 0xb4, 0x49, 0x2a, 0x3a, 0x71, 0x67, - 0xde, 0xfb, 0xbe, 0x99, 0xef, 0xcd, 0x7b, 0x8f, 0xb3, 0x8b, 0xaf, 0x1f, 0x00, 0xd7, 0x1d, 0xaf, - 0xcc, 0xed, 0xf7, 0xa0, 0x6b, 0x95, 0x0f, 0x1c, 0x38, 0xe4, 0x65, 0xeb, 0x90, 0x9b, 0xa2, 0x7d, - 0x68, 0x72, 0x47, 0x40, 0xd9, 0xef, 0x35, 0x3a, 0x8e, 0x6d, 0xda, 0xac, 0xd7, 0xb4, 0x7c, 0x47, - 0xf7, 0x99, 0x27, 0x3c, 0x52, 0x50, 0x30, 0x5d, 0xc1, 0x74, 0x09, 0xd3, 0x47, 0x61, 0xb9, 0x52, - 0xdb, 0x11, 0xef, 0xf5, 0x1a, 0xba, 0xed, 0x75, 0xcb, 0x6d, 0xaf, 0xed, 0x95, 0x25, 0xb0, 0xd1, - 0x6b, 0xc9, 0x91, 0x1c, 0xc8, 0x27, 0x45, 0x98, 0xbb, 0xdc, 0xf6, 0xbc, 0x76, 0x07, 0xca, 0x96, - 0xef, 0x94, 0x2d, 0xd7, 0xf5, 0x84, 0x25, 0x1c, 0xcf, 0xe5, 0xa1, 0xf5, 0xeb, 0xa1, 0x75, 0xc8, - 0x01, 0x5d, 0x5f, 0xf4, 0x43, 0xe3, 0x1b, 0xe3, 0x12, 0xec, 0x8e, 0xd7, 0x6b, 0x9a, 0xb6, 0xe7, - 0xba, 0x60, 0x8b, 0xb2, 0xe8, 0xfb, 0x10, 0xb1, 0xe4, 0xc6, 0x1d, 0x81, 0x31, 0x8f, 0x0d, 0x57, - 0x18, 0xb7, 0x79, 0xfe, 0xe8, 0xf2, 0x97, 0xc6, 0x8d, 0xa3, 0x9c, 0xc5, 0x89, 0xf8, 0x01, 0x07, - 0xf7, 0x60, 0x02, 0x5e, 0x38, 0x19, 0x63, 0x73, 0xdc, 0xa3, 0x34, 0xf3, 0x14, 0xbc, 0xc6, 0xfb, - 0x60, 0x8b, 0xd0, 0xfd, 0xea, 0x4c, 0xf7, 0xd1, 0x2d, 0x7e, 0x67, 0x9a, 0xb7, 0x00, 0xc6, 0xac, - 0x96, 0xc7, 0xba, 0xa6, 0x6f, 0x31, 0xab, 0x0b, 0x02, 0x18, 0x1f, 0x43, 0x7d, 0x73, 0x2a, 0xea, - 0x99, 0x43, 0xf1, 0xcf, 0x08, 0x9f, 0xaf, 0x32, 0xb0, 0x04, 0x50, 0xf8, 0x79, 0x0f, 0xb8, 0x20, - 0x3f, 0xc4, 0xa9, 0x2e, 0x08, 0xab, 0x69, 0x09, 0x2b, 0x8b, 0x0a, 0x68, 0x2d, 0xb3, 0xfe, 0x9a, - 0x3e, 0x9e, 0x27, 0x7b, 0x52, 0x85, 0x42, 0xdd, 0x06, 0x61, 0xd5, 0xfb, 0x3e, 0xd0, 0x21, 0x88, - 0xdc, 0xc3, 0x09, 0xee, 0x83, 0x9d, 0x8d, 0x49, 0xf0, 0x35, 0x7d, 0x56, 0x92, 0xe9, 0x8a, 0xa9, - 0xe6, 0x83, 0x1d, 0x30, 0x6d, 0x5e, 0xf8, 0xc3, 0xd1, 0x4a, 0x40, 0xa0, 0xb7, 0x6d, 0x33, 0xf8, - 0xa5, 0x92, 0x6e, 0x23, 0xfd, 0xd9, 0x8d, 0xa4, 0x5a, 0xb9, 0xf8, 0x3f, 0x84, 0x57, 0xa3, 0x4d, - 0x73, 0xdf, 0x73, 0x39, 0x90, 0xef, 0x9f, 0xd8, 0x75, 0x61, 0xea, 0xae, 0xb7, 0x41, 0x4c, 0xd9, - 0xf2, 0x1e, 0xbe, 0xc0, 0xfb, 0x5c, 0x40, 0xd7, 0x1c, 0x92, 0xc4, 0x25, 0xc9, 0xb7, 0x27, 0x48, - 0x6a, 0xd2, 0xeb, 0x24, 0xd5, 0xaa, 0x82, 0xdf, 0x8e, 0x08, 0xe9, 0x58, 0x0c, 0x4a, 0xb3, 0x63, - 0xb0, 0x0d, 0x62, 0x81, 0x00, 0xfc, 0x1b, 0xe1, 0x55, 0x0a, 0x7e, 0xc7, 0xb2, 0x87, 0xc7, 0xf6, - 0xa3, 0x13, 0x01, 0x78, 0x7d, 0x6a, 0x00, 0x42, 0xd8, 0x94, 0x20, 0xec, 0x8f, 0xed, 0xf9, 0xcd, - 0xd9, 0x7b, 0x0e, 0xa9, 0x66, 0xec, 0x9b, 0x94, 0xb1, 0xc6, 0x80, 0x7b, 0x3d, 0x66, 0x83, 0x79, - 0x00, 0x8c, 0x3b, 0x9e, 0x2b, 0xa3, 0x9b, 0xde, 0x4c, 0x7c, 0x71, 0x8c, 0x10, 0xbd, 0x10, 0x59, - 0xf7, 0x95, 0x71, 0x54, 0xe8, 0x4b, 0xf8, 0xc2, 0x50, 0xa7, 0x3a, 0xe9, 0xe2, 0x47, 0x08, 0xe3, - 0x6d, 0x10, 0x91, 0xee, 0xcb, 0x38, 0xed, 0x5a, 0x5d, 0xe0, 0xbe, 0x65, 0x83, 0x14, 0x9e, 0xa6, - 0xcf, 0x26, 0x08, 0xc1, 0x89, 0x60, 0x20, 0x35, 0xa5, 0xa9, 0x7c, 0x26, 0x3f, 0xc3, 0xc1, 0x8a, - 0x92, 0xcc, 0x0c, 0x6a, 0xc7, 0x12, 0x72, 0x3b, 0xab, 0xeb, 0xdf, 0x9d, 0xeb, 0x98, 0xa2, 0x8d, - 0x6c, 0x49, 0x68, 0xd5, 0x6b, 0x02, 0x5d, 0x65, 0x63, 0x73, 0xc5, 0x8f, 0x93, 0x38, 0x33, 0xe2, - 0x49, 0xee, 0xe2, 0x8c, 0x2d, 0xd3, 0x55, 0xae, 0x17, 0x06, 0xb8, 0x3c, 0x6f, 0x61, 0x84, 0x4a, - 0x29, 0x56, 0x1c, 0xc1, 0x1a, 0xa4, 0x86, 0x57, 0x98, 0x8a, 0x8b, 0xa2, 0x8c, 0xcf, 0x5b, 0x6b, - 0xe3, 0x59, 0x43, 0x33, 0x21, 0x8b, 0x24, 0x9d, 0x76, 0x50, 0x89, 0x17, 0x1c, 0xd4, 0x58, 0xd1, - 0x2d, 0x9f, 0x45, 0xd1, 0x9d, 0x3b, 0x93, 0xa2, 0x4b, 0x9e, 0x5d, 0xd1, 0x91, 0xdb, 0x38, 0xc9, - 0x85, 0x25, 0x7a, 0x3c, 0xfb, 0xd1, 0x1f, 0x51, 0x21, 0xbe, 0x96, 0x59, 0xd7, 0x67, 0xf3, 0xd6, - 0x24, 0x42, 0x6d, 0x78, 0x33, 0xfe, 0xf0, 0x08, 0xd1, 0x90, 0x84, 0xec, 0xe0, 0x97, 0x18, 0xb4, - 0x80, 0x31, 0xc7, 0x6d, 0x9b, 0xea, 0xdf, 0x80, 0x67, 0x53, 0x92, 0xf7, 0xf2, 0x73, 0xca, 0xb5, - 0x25, 0xb5, 0x6a, 0x43, 0x98, 0x9a, 0xe7, 0x64, 0x1f, 0x67, 0x9b, 0xd0, 0x01, 0x01, 0x4d, 0x53, - 0xd9, 0xa0, 0x39, 0x64, 0x4c, 0xcf, 0xc1, 0x78, 0x31, 0x44, 0xd3, 0x10, 0x1c, 0xf1, 0xfe, 0x04, - 0x5f, 0x6a, 0x3a, 0xdc, 0x6a, 0x74, 0xa6, 0x11, 0xe3, 0x39, 0x88, 0x5f, 0x8d, 0xe0, 0x13, 0xcc, - 0x23, 0x75, 0x7d, 0x2b, 0x91, 0x42, 0x5a, 0xac, 0xf8, 0x31, 0xc2, 0x99, 0x5d, 0x87, 0xcf, 0x59, - 0xcb, 0xdf, 0xc2, 0x2b, 0x1d, 0xab, 0x01, 0x1d, 0xb3, 0xe5, 0x74, 0x04, 0xb0, 0xb0, 0xa6, 0x33, - 0x72, 0x6e, 0x4b, 0x4e, 0x91, 0xd7, 0xf0, 0x79, 0x06, 0xbe, 0xc7, 0x84, 0xd9, 0x72, 0xa0, 0xd3, - 0xe4, 0xd9, 0x78, 0x21, 0xbe, 0x96, 0xa6, 0x2b, 0x6a, 0x72, 0x4b, 0xce, 0x91, 0x6b, 0xf8, 0xe5, - 0xd0, 0x49, 0x1d, 0x4a, 0xe4, 0x9b, 0x90, 0xbe, 0x44, 0xd9, 0xd4, 0x11, 0x2a, 0x44, 0xf1, 0x1f, - 0x49, 0xac, 0xa9, 0x7d, 0xaa, 0x82, 0xde, 0x11, 0xd0, 0x25, 0x17, 0x71, 0x52, 0x80, 0x6b, 0xb9, - 0x42, 0xe6, 0x5b, 0x9a, 0x86, 0xa3, 0x53, 0x34, 0x24, 0x0d, 0xc7, 0x7b, 0x4e, 0x53, 0xf5, 0x44, - 0x1a, 0x3c, 0x92, 0x02, 0xce, 0x34, 0x81, 0xdb, 0xcc, 0x91, 0xf7, 0x8b, 0x6c, 0x46, 0x29, 0x1d, - 0x99, 0x22, 0x39, 0x9c, 0x8a, 0xc2, 0x9c, 0x5d, 0x29, 0xa0, 0xb5, 0x14, 0x1d, 0x8e, 0xc9, 0x3e, - 0x4e, 0xca, 0xa0, 0x28, 0x49, 0x99, 0xf5, 0x1b, 0xb3, 0x33, 0x76, 0x52, 0x9d, 0xbe, 0x2b, 0x09, - 0x0c, 0x57, 0xb0, 0x3e, 0x0d, 0xd9, 0x08, 0xe0, 0xcc, 0xc8, 0xa5, 0x2e, 0xcc, 0x85, 0xea, 0x29, - 0xc8, 0x2b, 0xcf, 0x58, 0xd4, 0x0a, 0xa3, 0xbc, 0xe4, 0x1d, 0x8c, 0xbd, 0x43, 0x17, 0x98, 0x19, - 0x50, 0x65, 0xd3, 0xb2, 0x98, 0x73, 0x13, 0xab, 0xec, 0x3b, 0x70, 0x18, 0xe5, 0x5b, 0x5a, 0x7a, - 0x07, 0x33, 0x63, 0x0d, 0xe9, 0xfc, 0x59, 0x34, 0xa4, 0xd5, 0xaf, 0xd4, 0x90, 0xde, 0xc5, 0xa9, - 0x36, 0x08, 0xd9, 0x4e, 0xc2, 0xd6, 0xb6, 0x58, 0x53, 0xa2, 0xe7, 0xda, 0x6a, 0x40, 0x28, 0xc6, - 0x61, 0xb2, 0x72, 0x10, 0x61, 0xc3, 0x38, 0x55, 0x23, 0x4a, 0x2b, 0x9a, 0x1a, 0x88, 0xdc, 0x3b, - 0x38, 0x33, 0x72, 0xca, 0x41, 0x16, 0xde, 0x87, 0x7e, 0x98, 0xb1, 0xc1, 0x23, 0x79, 0x19, 0x2f, - 0x1f, 0x58, 0x9d, 0x5e, 0x94, 0xac, 0x6a, 0xb0, 0x11, 0x7b, 0x1b, 0xe5, 0x6e, 0x60, 0x6d, 0xf2, - 0x0c, 0x17, 0xc1, 0xdf, 0x4a, 0xa4, 0x96, 0xb5, 0x64, 0xf1, 0xd7, 0x08, 0xaf, 0x8c, 0xe6, 0x06, - 0x79, 0x17, 0x2f, 0x3b, 0x02, 0xba, 0x3c, 0xab, 0x3a, 0xed, 0xfa, 0xe2, 0xa9, 0x45, 0x15, 0x01, - 0xb9, 0x86, 0x93, 0xea, 0xc5, 0x20, 0x1b, 0x93, 0x54, 0xd9, 0x09, 0x2a, 0x23, 0x30, 0xca, 0x10, - 0x87, 0x7e, 0xc5, 0xfb, 0xf8, 0xfc, 0x4d, 0xd9, 0x10, 0x4f, 0x7f, 0xb1, 0x58, 0xc3, 0x5a, 0xcb, - 0x72, 0x3a, 0xa6, 0xd3, 0x1a, 0x36, 0x4e, 0x59, 0xd4, 0x29, 0xba, 0x1a, 0xcc, 0xef, 0xb4, 0xa2, - 0x86, 0x78, 0xe5, 0xbf, 0x08, 0xbf, 0x32, 0xf5, 0x2a, 0x41, 0x72, 0xf8, 0xe2, 0xb6, 0x51, 0x37, - 0x69, 0xed, 0xae, 0xb9, 0xb5, 0x47, 0x6f, 0x57, 0xea, 0xe6, 0x4d, 0x63, 0xab, 0x72, 0x6f, 0xb7, - 0xae, 0x2d, 0x91, 0x6f, 0xe0, 0x4b, 0x13, 0xb6, 0xad, 0x3d, 0x6a, 0x56, 0xa9, 0x51, 0xa9, 0x1b, - 0x1a, 0x22, 0x79, 0x9c, 0x9b, 0x62, 0xa6, 0xc6, 0xdd, 0xdd, 0x4a, 0xd5, 0xd0, 0x62, 0xe4, 0x12, - 0x7e, 0x65, 0xc2, 0x5e, 0xab, 0x57, 0xea, 0xf7, 0x6a, 0x5a, 0x9c, 0xbc, 0x8a, 0xbf, 0x36, 0x61, - 0xa2, 0x46, 0xe5, 0xa6, 0x96, 0x20, 0xaf, 0xe3, 0xc2, 0x09, 0xc3, 0x96, 0x41, 0xe9, 0xce, 0x9d, - 0x6d, 0x73, 0x6f, 0xf3, 0x96, 0x51, 0xad, 0xd7, 0xb4, 0xe5, 0x29, 0x5e, 0x9b, 0x74, 0xef, 0xc7, - 0xc6, 0x1d, 0xe5, 0x6c, 0xdc, 0xa9, 0x1a, 0x35, 0x2d, 0xb9, 0xfe, 0x2b, 0x8c, 0xe3, 0x95, 0xbb, - 0x3b, 0xe4, 0x3f, 0x08, 0x27, 0xd5, 0xcd, 0x86, 0x2c, 0x7a, 0x07, 0xca, 0x5d, 0x9b, 0x1f, 0x10, - 0x5e, 0x17, 0x7f, 0x39, 0xf8, 0x24, 0xfb, 0xbd, 0xd6, 0xf5, 0x0f, 0xec, 0x52, 0x60, 0x2d, 0x75, - 0x2d, 0xd7, 0x6a, 0x43, 0x17, 0x5c, 0x51, 0x6a, 0x58, 0xdc, 0xb1, 0x4b, 0x3d, 0x0e, 0x2c, 0x78, - 0x13, 0x2b, 0x39, 0x5e, 0xc9, 0x71, 0x5b, 0xcc, 0xe2, 0x82, 0xf5, 0x6c, 0xd1, 0x63, 0x50, 0x3a, - 0x64, 0x8e, 0x80, 0x0f, 0xff, 0xfe, 0xcf, 0xdf, 0xc5, 0x36, 0x8a, 0xd7, 0xc3, 0x37, 0xe8, 0xf2, - 0x30, 0x05, 0x78, 0xf9, 0x17, 0x51, 0x9b, 0xd0, 0x87, 0x93, 0x47, 0x63, 0x2f, 0x70, 0x7c, 0x03, - 0x5d, 0x21, 0xff, 0x42, 0x38, 0xbe, 0x0d, 0x82, 0x5c, 0x9d, 0xf3, 0x76, 0xa9, 0x84, 0x96, 0x16, - 0xba, 0x8b, 0x16, 0x1f, 0xa0, 0x4f, 0xff, 0x12, 0x43, 0x83, 0x4f, 0xb2, 0x3f, 0x78, 0x81, 0xd4, - 0xae, 0xe7, 0x3a, 0xc2, 0x7b, 0x9e, 0x5a, 0x06, 0x56, 0x53, 0x8a, 0xbd, 0x4e, 0xde, 0x9a, 0x26, - 0xf6, 0x79, 0x1a, 0x95, 0xe5, 0x88, 0x7c, 0x8e, 0x70, 0x22, 0x28, 0x47, 0x52, 0x9a, 0xb7, 0x6c, - 0x95, 0x52, 0x7d, 0xb1, 0x2a, 0x2f, 0xf6, 0xcf, 0x4e, 0xa9, 0x4e, 0xae, 0x2e, 0xa2, 0x94, 0x3c, - 0x88, 0xe1, 0x73, 0xe1, 0x05, 0x9a, 0x2c, 0x7c, 0xd7, 0xce, 0xbd, 0xb9, 0x00, 0x22, 0xd4, 0xfa, - 0x1b, 0x74, 0x16, 0xd9, 0x7b, 0x2b, 0x67, 0x9c, 0x2a, 0x7b, 0x27, 0x5c, 0x8e, 0x82, 0x6c, 0x7e, - 0x84, 0x70, 0x52, 0xf5, 0xc9, 0x79, 0x8a, 0x77, 0xac, 0xa3, 0xe6, 0x2e, 0xea, 0xea, 0x03, 0x90, - 0x1e, 0x7d, 0x00, 0xd2, 0x8d, 0xae, 0x2f, 0xfa, 0xc5, 0xa3, 0xb3, 0x10, 0xf9, 0xf6, 0x95, 0xd3, - 0x64, 0xed, 0x06, 0xba, 0x92, 0x7b, 0xff, 0xe1, 0x31, 0x8a, 0xfd, 0xed, 0x18, 0xbd, 0x31, 0x53, - 0x8e, 0xfa, 0x23, 0x7d, 0x7c, 0x8c, 0xd0, 0xe0, 0x18, 0x95, 0x16, 0xfa, 0xf7, 0xfd, 0xf0, 0xaf, - 0xd9, 0x98, 0x86, 0x36, 0x7f, 0x8f, 0x3e, 0xbb, 0xb1, 0x5c, 0xa5, 0xf7, 0x6e, 0xee, 0x3e, 0x7a, - 0x92, 0x5f, 0x7a, 0xfc, 0x24, 0xbf, 0xf4, 0xe5, 0x93, 0x3c, 0x7a, 0x30, 0xc8, 0xa3, 0x3f, 0x0d, - 0xf2, 0xe8, 0xd3, 0x41, 0x1e, 0x3d, 0x1a, 0xe4, 0xd1, 0xe7, 0x83, 0x3c, 0xfa, 0x62, 0x90, 0x5f, - 0xfa, 0x72, 0x90, 0x47, 0xbf, 0x7d, 0x9a, 0x5f, 0x7a, 0xf8, 0x34, 0x8f, 0x1e, 0x3d, 0xcd, 0x2f, - 0x3d, 0x7e, 0x9a, 0x5f, 0xfa, 0xe9, 0x7e, 0xdb, 0xf3, 0xef, 0xb7, 0xf5, 0x03, 0xaf, 0x23, 0xbf, - 0xfe, 0xe8, 0xbd, 0x91, 0xcf, 0x40, 0x25, 0x9f, 0x79, 0x07, 0x4e, 0x13, 0x58, 0x29, 0x32, 0x97, - 0xfd, 0x46, 0xdb, 0x2b, 0xc3, 0x07, 0x22, 0xfc, 0x02, 0xf4, 0xdc, 0x8f, 0x4d, 0x8d, 0xa4, 0x3c, - 0x95, 0xb7, 0xfe, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xf9, 0x60, 0xd0, 0x42, 0x4c, 0x14, 0x00, 0x00, + // 1682 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x41, 0x8c, 0x1b, 0x49, + 0x15, 0x9d, 0xb2, 0x3d, 0x8e, 0x5d, 0x9e, 0x4c, 0x7a, 0x8b, 0xdd, 0xac, 0x63, 0x82, 0x31, 0xde, + 0x15, 0x3b, 0x8a, 0xe2, 0x76, 0x76, 0x96, 0x88, 0xdd, 0x11, 0x0a, 0x78, 0x9c, 0x9e, 0xd9, 0x09, + 0x93, 0x4c, 0x54, 0x76, 0x46, 0x88, 0x03, 0x4d, 0xbb, 0xfd, 0xed, 0xed, 0x8d, 0xdd, 0xdd, 0x54, + 0x95, 0x3d, 0x3b, 0x42, 0x23, 0xa1, 0xbd, 0x20, 0xc1, 0x65, 0x25, 0x2e, 0x08, 0x21, 0x11, 0x81, + 0x16, 0x71, 0xde, 0x13, 0x68, 0x2e, 0xb9, 0xb1, 0xda, 0x03, 0x8a, 0x80, 0x43, 0x8e, 0xc4, 0x41, + 0x68, 0x8f, 0x2b, 0xc4, 0x19, 0xa1, 0xae, 0xea, 0x76, 0x6c, 0x8f, 0x13, 0xdb, 0x43, 0x94, 0xd3, + 0x74, 0xd5, 0xff, 0xff, 0xd5, 0xff, 0xaf, 0xfe, 0xff, 0xf3, 0x5d, 0xf8, 0x6a, 0x1f, 0xb8, 0xee, + 0x78, 0x65, 0x6e, 0xbf, 0x07, 0x5d, 0xab, 0xdc, 0x77, 0xe0, 0x80, 0x97, 0xad, 0x03, 0x6e, 0x8a, + 0xf6, 0x81, 0xc9, 0x1d, 0x01, 0x65, 0xbf, 0xd7, 0xe8, 0x38, 0xb6, 0x69, 0xb3, 0x5e, 0xd3, 0xf2, + 0x1d, 0xdd, 0x67, 0x9e, 0xf0, 0x48, 0x41, 0x99, 0xe9, 0xca, 0x4c, 0x97, 0x66, 0xfa, 0xa8, 0x59, + 0xae, 0xd4, 0x76, 0xc4, 0x7b, 0xbd, 0x86, 0x6e, 0x7b, 0xdd, 0x72, 0xdb, 0x6b, 0x7b, 0x65, 0x69, + 0xd8, 0xe8, 0xb5, 0xe4, 0x4a, 0x2e, 0xe4, 0x97, 0x02, 0xcc, 0x5d, 0x6c, 0x7b, 0x5e, 0xbb, 0x03, + 0x65, 0xcb, 0x77, 0xca, 0x96, 0xeb, 0x7a, 0xc2, 0x12, 0x8e, 0xe7, 0xf2, 0x50, 0xfa, 0xe5, 0x50, + 0x3a, 0xc4, 0x80, 0xae, 0x2f, 0x0e, 0x43, 0xe1, 0x1b, 0xe3, 0x21, 0xd8, 0x1d, 0xaf, 0xd7, 0x34, + 0x6d, 0xcf, 0x75, 0xc1, 0x16, 0x65, 0x71, 0xe8, 0x43, 0x84, 0x92, 0x1b, 0x57, 0x04, 0xc6, 0x3c, + 0x36, 0x3c, 0x61, 0x5c, 0xe6, 0xf9, 0xa3, 0xc7, 0x5f, 0x18, 0x17, 0x8e, 0x62, 0x16, 0x27, 0xf8, + 0x03, 0x0e, 0x6e, 0x7f, 0xc2, 0xbc, 0x70, 0x92, 0x63, 0x73, 0x5c, 0xa3, 0x34, 0xf3, 0x16, 0xbc, + 0xc6, 0xfb, 0x60, 0x8b, 0x50, 0xfd, 0xf2, 0x4c, 0xf5, 0x51, 0x17, 0xbf, 0x31, 0x4d, 0x5b, 0x00, + 0x63, 0x56, 0xcb, 0x63, 0x5d, 0xd3, 0xb7, 0x98, 0xd5, 0x05, 0x01, 0x8c, 0x8f, 0x59, 0x7d, 0x75, + 0xaa, 0xd5, 0x13, 0x85, 0xe2, 0x27, 0x08, 0x9f, 0xad, 0x32, 0xb0, 0x04, 0x50, 0xf8, 0x51, 0x0f, + 0xb8, 0x20, 0xdf, 0xc6, 0xa9, 0x2e, 0x08, 0xab, 0x69, 0x09, 0x2b, 0x8b, 0x0a, 0x68, 0x2d, 0xb3, + 0xfe, 0x9a, 0x3e, 0x9e, 0x27, 0x7b, 0x32, 0x0a, 0x65, 0x75, 0x13, 0x84, 0x55, 0x3f, 0xf4, 0x81, + 0x0e, 0x8d, 0xc8, 0x1d, 0x9c, 0xe0, 0x3e, 0xd8, 0xd9, 0x98, 0x34, 0xbe, 0xa2, 0xcf, 0x4a, 0x32, + 0x5d, 0x21, 0xd5, 0x7c, 0xb0, 0x03, 0xa4, 0xcd, 0x73, 0xbf, 0x3a, 0x5a, 0x09, 0x00, 0xf4, 0xb6, + 0x6d, 0x06, 0x7f, 0xa9, 0x84, 0xdb, 0x48, 0x7f, 0x76, 0x2d, 0xa9, 0x4e, 0x2e, 0xfe, 0x17, 0xe1, + 0xd5, 0xc8, 0x69, 0xee, 0x7b, 0x2e, 0x07, 0xf2, 0xad, 0x13, 0x5e, 0x17, 0xa6, 0x7a, 0xbd, 0x0d, + 0x62, 0x8a, 0xcb, 0x7b, 0xf8, 0x1c, 0x3f, 0xe4, 0x02, 0xba, 0xe6, 0x10, 0x24, 0x2e, 0x41, 0xbe, + 0x3e, 0x01, 0x52, 0x93, 0x5a, 0x27, 0xa1, 0x56, 0x95, 0xf9, 0xcd, 0x08, 0x90, 0x8e, 0x71, 0x50, + 0x9a, 0xcd, 0xc1, 0x36, 0x88, 0x05, 0x08, 0xf8, 0x17, 0xc2, 0xab, 0x14, 0xfc, 0x8e, 0x65, 0x0f, + 0xaf, 0xed, 0x3b, 0x27, 0x08, 0x78, 0x7d, 0x2a, 0x01, 0xa1, 0xd9, 0x14, 0x12, 0xf6, 0xc7, 0x7c, + 0x7e, 0x73, 0xb6, 0xcf, 0x21, 0xd4, 0x0c, 0xbf, 0x49, 0x19, 0x6b, 0x0c, 0xb8, 0xd7, 0x63, 0x36, + 0x98, 0x7d, 0x60, 0xdc, 0xf1, 0x5c, 0xc9, 0x6e, 0x7a, 0x33, 0xf1, 0xf9, 0x31, 0x42, 0xf4, 0x5c, + 0x24, 0xdd, 0x57, 0xc2, 0xd1, 0x40, 0x5f, 0xc2, 0xe7, 0x86, 0x71, 0xaa, 0x9b, 0x2e, 0xde, 0x43, + 0x18, 0x6f, 0x83, 0x88, 0xe2, 0xbe, 0x88, 0xd3, 0xae, 0xd5, 0x05, 0xee, 0x5b, 0x36, 0xc8, 0xc0, + 0xd3, 0xf4, 0xc9, 0x06, 0x21, 0x38, 0x11, 0x2c, 0x64, 0x4c, 0x69, 0x2a, 0xbf, 0xc9, 0x0f, 0x71, + 0x70, 0xa2, 0x04, 0x33, 0x83, 0xda, 0xb1, 0x84, 0x74, 0x67, 0x75, 0xfd, 0x9b, 0x73, 0x5d, 0x53, + 0xe4, 0xc8, 0x96, 0x34, 0xad, 0x7a, 0x4d, 0xa0, 0xab, 0x6c, 0x6c, 0xaf, 0xf8, 0x71, 0x12, 0x67, + 0x46, 0x34, 0xc9, 0x6d, 0x9c, 0xb1, 0x65, 0xba, 0xca, 0xf3, 0x42, 0x82, 0xcb, 0xf3, 0x16, 0x46, + 0x18, 0x29, 0xc5, 0x0a, 0x23, 0x38, 0x83, 0xd4, 0xf0, 0x0a, 0x53, 0xbc, 0x28, 0xc8, 0xf8, 0xbc, + 0xb5, 0x36, 0x9e, 0x35, 0x34, 0x13, 0xa2, 0x48, 0xd0, 0x69, 0x17, 0x95, 0x78, 0xc6, 0x45, 0x8d, + 0x15, 0xdd, 0xf2, 0xf3, 0x28, 0xba, 0x33, 0xcf, 0xa5, 0xe8, 0x92, 0xcf, 0xaf, 0xe8, 0xc8, 0x4d, + 0x9c, 0xe4, 0xc2, 0x12, 0x3d, 0x9e, 0xbd, 0xf7, 0x6b, 0x54, 0x88, 0xaf, 0x65, 0xd6, 0xf5, 0xd9, + 0xb8, 0x35, 0x69, 0xa1, 0x1c, 0xde, 0x8c, 0xdf, 0x3f, 0x42, 0x34, 0x04, 0x21, 0x3b, 0xf8, 0x25, + 0x06, 0x2d, 0x60, 0xcc, 0x71, 0xdb, 0xa6, 0xfa, 0x6f, 0xc0, 0xb3, 0x29, 0x89, 0x7b, 0xf1, 0x29, + 0xe5, 0xda, 0x92, 0xb1, 0x6a, 0x43, 0x33, 0xb5, 0xcf, 0xc9, 0x3e, 0xce, 0x36, 0xa1, 0x03, 0x02, + 0x9a, 0xa6, 0x92, 0x41, 0x73, 0x88, 0x98, 0x9e, 0x03, 0xf1, 0x7c, 0x68, 0x4d, 0x43, 0xe3, 0x08, + 0xf7, 0x7b, 0xf8, 0x42, 0xd3, 0xe1, 0x56, 0xa3, 0x33, 0x0d, 0x18, 0xcf, 0x01, 0xfc, 0x6a, 0x64, + 0x3e, 0x81, 0x3c, 0x52, 0xd7, 0x37, 0x12, 0x29, 0xa4, 0xc5, 0x8a, 0x1f, 0x23, 0x9c, 0xd9, 0x75, + 0xf8, 0x9c, 0xb5, 0xfc, 0x35, 0xbc, 0xd2, 0xb1, 0x1a, 0xd0, 0x31, 0x5b, 0x4e, 0x47, 0x00, 0x0b, + 0x6b, 0x3a, 0x23, 0xf7, 0xb6, 0xe4, 0x16, 0x79, 0x0d, 0x9f, 0x65, 0xe0, 0x7b, 0x4c, 0x98, 0x2d, + 0x07, 0x3a, 0x4d, 0x9e, 0x8d, 0x17, 0xe2, 0x6b, 0x69, 0xba, 0xa2, 0x36, 0xb7, 0xe4, 0x1e, 0xb9, + 0x82, 0x5f, 0x0e, 0x95, 0xd4, 0xa5, 0x44, 0xba, 0x09, 0xa9, 0x4b, 0x94, 0x4c, 0x5d, 0xa1, 0xb2, + 0x28, 0xfe, 0x3d, 0x89, 0x35, 0xe5, 0xa7, 0x2a, 0xe8, 0x1d, 0x01, 0x5d, 0x72, 0x1e, 0x27, 0x05, + 0xb8, 0x96, 0x2b, 0x64, 0xbe, 0xa5, 0x69, 0xb8, 0x3a, 0x45, 0x43, 0xd2, 0x70, 0xbc, 0xe7, 0x34, + 0x55, 0x4f, 0xa4, 0xc1, 0x27, 0x29, 0xe0, 0x4c, 0x13, 0xb8, 0xcd, 0x1c, 0x39, 0x5f, 0x64, 0x33, + 0x2a, 0xd2, 0x91, 0x2d, 0x92, 0xc3, 0xa9, 0x88, 0xe6, 0xec, 0x4a, 0x01, 0xad, 0xa5, 0xe8, 0x70, + 0x4d, 0xf6, 0x71, 0x52, 0x92, 0xa2, 0x42, 0xca, 0xac, 0x5f, 0x9b, 0x9d, 0xb1, 0x93, 0xd1, 0xe9, + 0xbb, 0x12, 0xc0, 0x70, 0x05, 0x3b, 0xa4, 0x21, 0x1a, 0x01, 0x9c, 0x19, 0x19, 0xea, 0xc2, 0x5c, + 0xa8, 0x9e, 0x02, 0xbc, 0xf2, 0x04, 0x45, 0x9d, 0x30, 0x8a, 0x4b, 0xde, 0xc1, 0xd8, 0x3b, 0x70, + 0x81, 0x99, 0x01, 0x54, 0x36, 0x2d, 0x8b, 0x39, 0x37, 0x71, 0xca, 0xbe, 0x03, 0x07, 0x51, 0xbe, + 0xa5, 0xa5, 0x76, 0xb0, 0x33, 0xd6, 0x90, 0xce, 0x3e, 0x8f, 0x86, 0xb4, 0xfa, 0x7f, 0x35, 0xa4, + 0x77, 0x71, 0xaa, 0x0d, 0x42, 0xb6, 0x93, 0xb0, 0xb5, 0x2d, 0xd6, 0x94, 0xe8, 0x99, 0xb6, 0x5a, + 0x10, 0x8a, 0x71, 0x98, 0xac, 0x1c, 0x44, 0xd8, 0x30, 0x4e, 0xd5, 0x88, 0xd2, 0x0a, 0xa6, 0x06, + 0x22, 0xf7, 0x0e, 0xce, 0x8c, 0xdc, 0x72, 0x90, 0x85, 0x77, 0xe1, 0x30, 0xcc, 0xd8, 0xe0, 0x93, + 0xbc, 0x8c, 0x97, 0xfb, 0x56, 0xa7, 0x17, 0x25, 0xab, 0x5a, 0x6c, 0xc4, 0xde, 0x46, 0xb9, 0x6b, + 0x58, 0x9b, 0xbc, 0xc3, 0x45, 0xec, 0x6f, 0x24, 0x52, 0xcb, 0x5a, 0xb2, 0xf8, 0x33, 0x84, 0x57, + 0x46, 0x73, 0x83, 0xbc, 0x8b, 0x97, 0x1d, 0x01, 0x5d, 0x9e, 0x55, 0x9d, 0x76, 0x7d, 0xf1, 0xd4, + 0xa2, 0x0a, 0x80, 0x5c, 0xc1, 0x49, 0xf5, 0xc3, 0x20, 0x1b, 0x93, 0x50, 0xd9, 0x09, 0x28, 0x23, + 0x10, 0x4a, 0x8a, 0x43, 0xbd, 0xe2, 0x5d, 0x7c, 0xf6, 0xba, 0x6c, 0x88, 0xa7, 0x1f, 0x2c, 0xd6, + 0xb0, 0xd6, 0xb2, 0x9c, 0x8e, 0xe9, 0xb4, 0x86, 0x8d, 0x53, 0x16, 0x75, 0x8a, 0xae, 0x06, 0xfb, + 0x3b, 0xad, 0xa8, 0x21, 0x5e, 0xfa, 0x37, 0xc2, 0xaf, 0x4c, 0x1d, 0x25, 0x48, 0x0e, 0x9f, 0xdf, + 0x36, 0xea, 0x26, 0xad, 0xdd, 0x36, 0xb7, 0xf6, 0xe8, 0xcd, 0x4a, 0xdd, 0xbc, 0x6e, 0x6c, 0x55, + 0xee, 0xec, 0xd6, 0xb5, 0x25, 0xf2, 0x15, 0x7c, 0x61, 0x42, 0xb6, 0xb5, 0x47, 0xcd, 0x2a, 0x35, + 0x2a, 0x75, 0x43, 0x43, 0x24, 0x8f, 0x73, 0x53, 0xc4, 0xd4, 0xb8, 0xbd, 0x5b, 0xa9, 0x1a, 0x5a, + 0x8c, 0x5c, 0xc0, 0xaf, 0x4c, 0xc8, 0x6b, 0xf5, 0x4a, 0xfd, 0x4e, 0x4d, 0x8b, 0x93, 0x57, 0xf1, + 0x97, 0x26, 0x44, 0xd4, 0xa8, 0x5c, 0xd7, 0x12, 0xe4, 0x75, 0x5c, 0x38, 0x21, 0xd8, 0x32, 0x28, + 0xdd, 0xb9, 0xb5, 0x6d, 0xee, 0x6d, 0xde, 0x30, 0xaa, 0xf5, 0x9a, 0xb6, 0x3c, 0x45, 0x6b, 0x93, + 0xee, 0x7d, 0xd7, 0xb8, 0xa5, 0x94, 0x8d, 0x5b, 0x55, 0xa3, 0xa6, 0x25, 0xd7, 0xff, 0x94, 0xc1, + 0xf1, 0xca, 0xed, 0x1d, 0xf2, 0x51, 0x0c, 0x27, 0xd5, 0x64, 0x43, 0x16, 0x9d, 0x81, 0x72, 0x57, + 0xe6, 0x37, 0x08, 0xc7, 0xc5, 0xdf, 0xa2, 0xc1, 0x9f, 0xb3, 0x3f, 0x68, 0x5d, 0xfd, 0xc0, 0x2e, + 0x05, 0xe2, 0x52, 0xd7, 0x72, 0xad, 0x36, 0x74, 0xc1, 0x15, 0xa5, 0x86, 0xc5, 0x1d, 0xbb, 0xd4, + 0xe3, 0xc0, 0x2e, 0x4f, 0x95, 0x73, 0x61, 0xb9, 0x4d, 0x8b, 0x35, 0x95, 0x4a, 0x1f, 0x78, 0xc9, + 0xf1, 0x4a, 0x8e, 0xdb, 0x62, 0x16, 0x17, 0xac, 0x67, 0x8b, 0x1e, 0x83, 0xd2, 0x01, 0x73, 0x04, + 0x7c, 0xf8, 0xb7, 0x7f, 0xfe, 0x22, 0xb6, 0x51, 0xbc, 0x1a, 0xfe, 0xca, 0x2e, 0x0f, 0xd3, 0x84, + 0x97, 0x7f, 0x1c, 0xb5, 0x12, 0x7d, 0xb8, 0x79, 0x34, 0xf6, 0x23, 0x8f, 0x6f, 0xa0, 0x4b, 0xe4, + 0xe7, 0x31, 0x1c, 0xdf, 0x06, 0x41, 0x2e, 0xcf, 0x39, 0x81, 0x2a, 0x32, 0x4a, 0x0b, 0xcd, 0xab, + 0xc5, 0xdf, 0xa3, 0x4f, 0xff, 0x18, 0x0b, 0xd8, 0xb0, 0x9f, 0xc1, 0x46, 0xd7, 0x73, 0x1d, 0xe1, + 0xcd, 0x22, 0x24, 0xd2, 0x9a, 0xce, 0x09, 0x03, 0xab, 0x29, 0x29, 0xb9, 0x4a, 0xde, 0x9a, 0x46, + 0xc9, 0xd3, 0x98, 0x50, 0x92, 0x23, 0xf2, 0xd3, 0x18, 0x4e, 0x04, 0x85, 0x4d, 0x4a, 0xf3, 0x36, + 0x00, 0xc5, 0x87, 0xbe, 0x58, 0xbf, 0x28, 0xfe, 0xe6, 0x85, 0x13, 0xa2, 0x93, 0xcb, 0x8b, 0x10, + 0x42, 0x7e, 0x17, 0xc3, 0x67, 0xc2, 0x89, 0x9d, 0x2c, 0x3c, 0xdc, 0xe7, 0xde, 0x5c, 0xc0, 0x22, + 0xa4, 0xe4, 0x93, 0x17, 0x55, 0x2d, 0x37, 0x72, 0xc6, 0xa9, 0xaa, 0x65, 0x42, 0xe5, 0x28, 0xa8, + 0x9e, 0xff, 0x20, 0x9c, 0x54, 0xbd, 0x7b, 0x9e, 0x86, 0x32, 0xd6, 0xe5, 0x73, 0xe7, 0x75, 0xf5, + 0x28, 0xa5, 0x47, 0x8f, 0x52, 0xba, 0xd1, 0xf5, 0xc5, 0x61, 0xf1, 0xde, 0x8b, 0x22, 0xe2, 0xed, + 0x4b, 0xa7, 0xa9, 0x91, 0x0d, 0x74, 0x29, 0xf7, 0xfe, 0xfd, 0x63, 0x14, 0xfb, 0xeb, 0x31, 0x7a, + 0x63, 0x66, 0xc8, 0x6a, 0x00, 0x78, 0x78, 0x8c, 0xd0, 0xe0, 0x18, 0x95, 0x16, 0x9a, 0x1a, 0x3e, + 0xfc, 0x4b, 0x36, 0xa6, 0xa1, 0xcd, 0x5f, 0xa2, 0xcf, 0xae, 0x2d, 0x57, 0xe9, 0x9d, 0xeb, 0xbb, + 0x0f, 0x1e, 0xe5, 0x97, 0x1e, 0x3e, 0xca, 0x2f, 0x7d, 0xf1, 0x28, 0x8f, 0x7e, 0x32, 0xc8, 0xa3, + 0x3f, 0x0c, 0xf2, 0xe8, 0xd3, 0x41, 0x1e, 0x3d, 0x18, 0xe4, 0xd1, 0x3f, 0x06, 0x79, 0xf4, 0xf9, + 0x20, 0xbf, 0xf4, 0xc5, 0x20, 0x8f, 0x3e, 0x7a, 0x9c, 0x5f, 0xba, 0xff, 0x38, 0x8f, 0x1e, 0x3c, + 0xce, 0x2f, 0x3d, 0x7c, 0x9c, 0x5f, 0xfa, 0xfe, 0x7e, 0xdb, 0xf3, 0xef, 0xb6, 0xf5, 0xbe, 0xd7, + 0x91, 0xaf, 0x56, 0x7a, 0x6f, 0xe4, 0xf9, 0xaa, 0xe4, 0x33, 0xaf, 0xef, 0x34, 0x81, 0x95, 0x22, + 0x71, 0xd9, 0x6f, 0xb4, 0xbd, 0x32, 0x7c, 0x20, 0xc2, 0x97, 0xab, 0xa7, 0x3e, 0x92, 0x35, 0x92, + 0xf2, 0xe6, 0xde, 0xfa, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf5, 0x72, 0x1a, 0xa3, 0x04, 0x15, + 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.vesapi.go index e960ec7a9..31d738414 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/public_crudapi.vesapi.go @@ -2891,6 +2891,9 @@ var APISwaggerJSON string = `{ "x-displayname": "AWS Services VPC Config", "x-ves-oneof-field-deployment": "[\"aws_cred\"]", "x-ves-oneof-field-internet_vip_choice": "[\"disable_internet_vip\",\"enable_internet_vip\"]", + "x-ves-oneof-field-security_group_choice": "[\"custom_security_group\",\"f5xc_security_group\"]", + "x-ves-oneof-field-service_vpc_choice": "[\"new_vpc\",\"vpc_id\"]", + "x-ves-oneof-field-tgw_choice": "[\"existing_tgw\",\"new_tgw\"]", "x-ves-oneof-field-worker_nodes": "[\"no_worker_nodes\",\"nodes_per_az\",\"total_nodes\"]", "x-ves-proto-message": "ves.io.schema.views.aws_tgw_site.ServicesVPCReplaceType", "properties": { @@ -2900,18 +2903,90 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Automatic Deployment" }, + "aws_region": { + "type": "string", + "description": " AWS Region of your services vpc, where F5XC site will be deployed.\n\nExample: - \"us-east-1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "AWS Region", + "x-displayname": "AWS Region", + "x-ves-example": "us-east-1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "az_nodes": { + "type": "array", + "description": " Only Single AZ or Three AZ(s) nodes are supported currently.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.num_items: 1,3\n", + "items": { + "$ref": "#/definitions/viewsAWSVPCTwoInterfaceNodeType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3" + } + }, + "custom_security_group": { + "description": "Exclusive with [f5xc_security_group]\n With this option, ingress and egress traffic will be controlled via security group ids.", + "title": "Custom Security Groups for SLO and SLI Interface", + "$ref": "#/definitions/viewsSecurityGroupType", + "x-displayname": "Select this option to specify custom security groups for slo and sli interfaces." + }, "disable_internet_vip": { "description": "Exclusive with [enable_internet_vip]\n VIPs cannot be advertised to the internet directly on this Site", "title": "Disable Internet VIP", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Internet VIP" }, + "disk_size": { + "type": "integer", + "description": " Node disk size for all node in the F5XC site. Unit is GiB\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 64000\n", + "title": "Node Disk size", + "format": "int64", + "x-displayname": "Node Disk Size", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "64000" + } + }, "enable_internet_vip": { "description": "Exclusive with [disable_internet_vip]\n VIPs can be advertised to the internet directly on this Site", "title": "Enable Internet VIP", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable Internet VIP" }, + "existing_tgw": { + "description": "Exclusive with [new_tgw]\n Information about existing TGW", + "title": "Existing TGW", + "$ref": "#/definitions/aws_tgw_siteExistingTGWType", + "x-displayname": "Existing TGW" + }, + "f5xc_security_group": { + "description": "Exclusive with [custom_security_group]\n With this option, ingress and egress traffic will be controlled via f5xc created security group.", + "title": "Default F5XC Security Group", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Select this option to create and attach F5XC default security group" + }, + "instance_type": { + "type": "string", + "description": " Instance size based on the performance.\n\nExample: - \"a1.xlarge\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, + "new_tgw": { + "description": "Exclusive with [existing_tgw]\n Details needed to create new TGW", + "title": "New Transit Gateway", + "$ref": "#/definitions/aws_tgw_siteTGWParamsType", + "x-displayname": "New Transit Gateway" + }, + "new_vpc": { + "description": "Exclusive with [vpc_id]\n Details needed to create new VPC", + "title": "New VPC", + "$ref": "#/definitions/viewsAWSVPCParamsType", + "x-displayname": "New VPC" + }, "no_worker_nodes": { "description": "Exclusive with [nodes_per_az total_nodes]\n Worker nodes is set to zero", "title": "No Worker Nodes", @@ -2930,6 +3005,21 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "21" } }, + "ssh_key": { + "type": "string", + "description": " Public SSH key for accessing nodes of the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "title": "Public SSH key", + "minLength": 1, + "maxLength": 8192, + "x-displayname": "Public SSH key", + "x-ves-example": "ssh-rsa AAAAB...", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" + } + }, "total_nodes": { "type": "integer", "description": "Exclusive with [no_worker_nodes nodes_per_az]\n Total number of worker nodes to be deployed across all AZ's used in the Site\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 61\n", @@ -2941,6 +3031,18 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.gte": "0", "ves.io.schema.rules.uint32.lte": "61" } + }, + "vpc_id": { + "type": "string", + "description": "Exclusive with [new_vpc]\n Existing VPC ID\n\nExample: - \"vpc-12345678901234567\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n ves.io.schema.rules.string.pattern: ^(vpc-)([a-z0-9]{8}|[a-z0-9]{17})$\n", + "title": "Existing VPC ID", + "maxLength": 64, + "x-displayname": "Existing VPC ID", + "x-ves-example": "vpc-12345678901234567", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.pattern": "^(vpc-)([a-z0-9]{8}|[a-z0-9]{17})$" + } } } }, @@ -3074,15 +3176,17 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing nodes of the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing nodes of the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", "title": "Public SSH key", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "total_nodes": { @@ -3433,12 +3537,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/cloud_connectAWSRouteTableListType", "x-displayname": "Installed Routes" }, - "state": { - "type": "string", - "description": " Attachment State", - "title": "Attachment State", - "x-displayname": "Attachment State" - }, "subnets": { "type": "array", "description": " Network Interfaces created along with the attachment", @@ -3454,6 +3552,18 @@ var APISwaggerJSON string = `{ "title": "TGW Attachment ID", "x-displayname": "TGW Attachment ID" }, + "vpc_cidr": { + "type": "string", + "description": " VPC CIDR", + "title": "VPC CIDR", + "x-displayname": "VPC CIDR" + }, + "vpc_deployment_state": { + "description": " VPC deployment state", + "title": "Deployment State", + "$ref": "#/definitions/cloud_connectCloudConnectVPCStateType", + "x-displayname": "Deployment State" + }, "vpc_id": { "type": "string", "description": " VPC ID", @@ -3536,6 +3646,21 @@ var APISwaggerJSON string = `{ } } }, + "cloud_connectCloudConnectVPCStateType": { + "type": "string", + "description": "Cloud Connect VPC State Type\n\n - AVAILABLE: Available\n\nCloud Connect vpc attachment is in available state.\n - PENDING: Pending\n\nCloud Connect vpc attachment is in flight.\n - FAILED: Failed\n\nCloud Connect vpc attachment has failed.\n - DELETED: Deleted\n\nCloud Connect vpc attachment has been deleted.\n - DELETING: Deleting\n\nCloud Connect vpc attachment is being deleted.", + "title": "Cloud Connect VPC State", + "enum": [ + "AVAILABLE", + "PENDING", + "FAILED", + "DELETED", + "DELETING" + ], + "default": "AVAILABLE", + "x-displayname": "Cloud Connect VPC State", + "x-ves-proto-enum": "ves.io.schema.cloud_connect.CloudConnectVPCStateType" + }, "cloud_connectSubnetStatusType": { "type": "object", "description": "Network Interface Status", @@ -4217,10 +4342,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4277,10 +4406,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4339,10 +4472,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5046,12 +5183,12 @@ var APISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { @@ -6004,6 +6141,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -6371,9 +6579,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\n Disable Private Connectivity to Site", @@ -6385,6 +6593,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsDirectConnectConfigType", "x-displayname": "Enable Private Connectivity via Direct Connect (Legacy))" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6491,9 +6704,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\n Disable Private Connectivity to Site", @@ -6516,6 +6729,11 @@ var APISwaggerJSON string = `{ "x-displayname": "Error Description", "x-ves-example": "value" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6654,9 +6872,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\n Disable Private Connectivity to Site", @@ -6668,6 +6886,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsDirectConnectConfigType", "x-displayname": "Enable Private Connectivity via Direct Connect (Legacy))" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", diff --git a/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.pb.go b/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.pb.go index 5d15d1f12..3e8900b9f 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.pb.go @@ -553,69 +553,70 @@ func init() { } var fileDescriptor_2e82264232f27a80 = []byte{ - // 984 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x56, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xd8, 0x2d, 0xa6, 0x53, 0xb5, 0x4d, 0x96, 0xa2, 0x5a, 0x26, 0x5a, 0x59, 0x16, 0x82, - 0x12, 0xb2, 0xbb, 0x22, 0xa1, 0x3f, 0x88, 0x90, 0x50, 0x92, 0x42, 0x65, 0x81, 0xc0, 0x38, 0x91, - 0x2b, 0x21, 0xa4, 0xd5, 0x78, 0xf3, 0xbc, 0x19, 0x6a, 0xef, 0x0c, 0x3b, 0xb3, 0xeb, 0xa4, 0x28, - 0x12, 0xaa, 0x38, 0x21, 0x21, 0x05, 0x38, 0x73, 0x45, 0x1c, 0xf8, 0x03, 0x10, 0xb9, 0xe4, 0x06, - 0x27, 0x14, 0xc1, 0x25, 0x47, 0xe2, 0x20, 0x54, 0x6e, 0xb9, 0x72, 0x02, 0xed, 0xec, 0x3a, 0xb1, - 0x37, 0xa9, 0xec, 0xba, 0x95, 0xe0, 0xe4, 0x99, 0x79, 0xdf, 0x7b, 0xf3, 0xbd, 0x6f, 0xfc, 0xde, - 0x3e, 0x7c, 0x23, 0x04, 0x61, 0x52, 0x66, 0x09, 0x67, 0x0d, 0xda, 0xc4, 0x0a, 0x29, 0x74, 0x84, - 0x45, 0x3a, 0xc2, 0x96, 0x6e, 0xc7, 0x16, 0x54, 0x82, 0xc5, 0x83, 0x46, 0x8b, 0x3a, 0xb6, 0x13, - 0x08, 0xc9, 0xda, 0x84, 0x53, 0x93, 0xfb, 0x4c, 0x32, 0xad, 0x14, 0x3b, 0x9a, 0xb1, 0xa3, 0xa9, - 0x1c, 0xcd, 0x7e, 0xc7, 0xa2, 0xe1, 0x52, 0xb9, 0x16, 0x34, 0x4c, 0x87, 0xb5, 0x2d, 0x97, 0xb9, - 0xcc, 0x52, 0x8e, 0x8d, 0xa0, 0xa9, 0x76, 0x6a, 0xa3, 0x56, 0x71, 0xc0, 0xe2, 0x94, 0xcb, 0x98, - 0xdb, 0x02, 0x8b, 0x70, 0x6a, 0x11, 0xcf, 0x63, 0x92, 0x48, 0xca, 0x3c, 0x91, 0x58, 0x9f, 0x1b, - 0xe4, 0xc9, 0x78, 0xbf, 0x51, 0x1f, 0x34, 0x2a, 0xda, 0x72, 0x83, 0x43, 0xcf, 0x3e, 0x95, 0x4a, - 0x92, 0xb4, 0xe8, 0x2a, 0x91, 0x90, 0x58, 0xcb, 0x29, 0x2b, 0x08, 0xf0, 0xc2, 0xd4, 0x0d, 0xa5, - 0x93, 0x32, 0xd9, 0x83, 0x08, 0x63, 0xa8, 0x90, 0xac, 0xf1, 0x11, 0x38, 0x32, 0x81, 0xcf, 0x0c, - 0x85, 0xf7, 0x27, 0xf0, 0xfc, 0x69, 0xe8, 0x08, 0x65, 0xf7, 0xa1, 0xca, 0x3f, 0x64, 0xf1, 0x95, - 0x65, 0x90, 0xf5, 0xea, 0x52, 0x85, 0x57, 0x7d, 0x68, 0xd2, 0x75, 0x10, 0x35, 0xf8, 0x38, 0x00, - 0x21, 0xb5, 0x29, 0x7c, 0xce, 0x23, 0x6d, 0x10, 0x9c, 0x38, 0x50, 0x40, 0x25, 0x74, 0xf5, 0x5c, - 0xed, 0xf8, 0x40, 0xd3, 0xf0, 0x99, 0x68, 0x53, 0xc8, 0x2a, 0x83, 0x5a, 0x6b, 0x12, 0x5f, 0x0a, - 0xb9, 0x63, 0x53, 0x6e, 0xf3, 0x24, 0x56, 0x21, 0x57, 0xca, 0x5d, 0x3d, 0x3f, 0xfb, 0x8e, 0x39, - 0xec, 0xe9, 0xcd, 0x87, 0xb0, 0x30, 0xeb, 0xdc, 0x39, 0x3e, 0x7c, 0xd3, 0x93, 0xfe, 0x46, 0xed, - 0x42, 0xd8, 0x7f, 0x56, 0x0c, 0xb0, 0x76, 0x12, 0xa4, 0x4d, 0xe0, 0xdc, 0x5d, 0xd8, 0x48, 0x78, - 0x47, 0x4b, 0xad, 0x82, 0xcf, 0x86, 0xa4, 0x15, 0xc4, 0x94, 0xcf, 0xcf, 0xce, 0x0d, 0xe7, 0x34, - 0x40, 0x68, 0x65, 0x83, 0x43, 0x2d, 0x8e, 0x30, 0x9f, 0xbd, 0x89, 0xca, 0x45, 0x5c, 0x38, 0xc9, - 0x59, 0x70, 0xe6, 0x09, 0x28, 0x7f, 0x8b, 0xf0, 0x65, 0x65, 0x7c, 0x77, 0x25, 0xf0, 0x3c, 0x68, - 0x3d, 0x86, 0xa6, 0x1f, 0xe2, 0xbc, 0x8c, 0x63, 0x14, 0xfe, 0xcc, 0x2b, 0x31, 0x6f, 0x0e, 0x27, - 0xbe, 0x70, 0x67, 0xf9, 0xe8, 0xee, 0x25, 0xe6, 0x35, 0xa9, 0x1b, 0xb1, 0x5f, 0xcc, 0xef, 0x6d, - 0xa2, 0x07, 0xdb, 0x08, 0xd5, 0x7a, 0x21, 0xcb, 0x57, 0xf0, 0xb3, 0x29, 0x9e, 0x49, 0x06, 0x87, - 0x08, 0x4f, 0x2e, 0x83, 0x5c, 0xb9, 0x7d, 0xa7, 0xe2, 0x35, 0xd9, 0xf8, 0xf4, 0xdf, 0xc7, 0x4f, - 0x47, 0xac, 0xa8, 0xd7, 0x64, 0x85, 0x9c, 0xd2, 0xfd, 0xfa, 0x48, 0xf4, 0x93, 0x8b, 0x8f, 0xc9, - 0xd7, 0xf2, 0xd2, 0xed, 0x44, 0x47, 0x5a, 0x1d, 0x3f, 0xb3, 0x4a, 0x7d, 0x70, 0xa4, 0xed, 0x30, - 0xcf, 0x8b, 0x7e, 0x55, 0xf4, 0x33, 0x2a, 0xfa, 0x0b, 0xa7, 0x46, 0xbf, 0xa5, 0xf0, 0x4b, 0x31, - 0x5c, 0x25, 0x34, 0xb9, 0x9a, 0x3e, 0x2a, 0x5f, 0xc6, 0x5a, 0x7f, 0xc6, 0x89, 0x10, 0xdf, 0xc7, - 0x42, 0xd4, 0x2b, 0xd5, 0xc7, 0x13, 0x02, 0xf0, 0x64, 0x18, 0x15, 0x06, 0xf1, 0x49, 0x5b, 0xd8, - 0x1c, 0x7c, 0x9b, 0xdc, 0x4b, 0xaa, 0xe3, 0xa5, 0x14, 0x67, 0xa5, 0x41, 0x35, 0xea, 0xa1, 0x62, - 0xad, 0x5e, 0xa9, 0x56, 0x95, 0x4b, 0x15, 0xfc, 0x85, 0x7b, 0x8b, 0x97, 0x7e, 0xfc, 0x6b, 0x27, - 0x87, 0xbf, 0x42, 0xf9, 0xe9, 0xb3, 0xaf, 0xcc, 0xcc, 0xce, 0xcc, 0xd5, 0x2e, 0x86, 0x94, 0xf7, - 0x01, 0x92, 0x24, 0x8e, 0xd8, 0xc6, 0x49, 0xcc, 0xfe, 0x83, 0xf1, 0xb9, 0x25, 0xd5, 0x8d, 0x17, - 0xaa, 0x15, 0xed, 0x9b, 0x2c, 0x9e, 0x48, 0xff, 0x75, 0xb5, 0xd7, 0xc6, 0x2e, 0xd1, 0xe2, 0xfc, - 0x38, 0xae, 0x89, 0xbc, 0x5f, 0xa2, 0xee, 0x4f, 0x85, 0xd7, 0x43, 0x10, 0x06, 0x65, 0x06, 0xf5, - 0x9a, 0x3e, 0x11, 0xd2, 0x0f, 0x1c, 0x19, 0xf8, 0x60, 0x74, 0x7c, 0x2a, 0x61, 0xa6, 0xd4, 0xbc, - 0xb6, 0xee, 0x18, 0x51, 0x14, 0xa3, 0x4d, 0x3c, 0xe2, 0x42, 0x1b, 0x3c, 0x69, 0x34, 0x88, 0xa0, - 0x8e, 0x11, 0x08, 0xf0, 0xef, 0xff, 0xf6, 0xc7, 0xd7, 0xd9, 0xb7, 0xcb, 0x6f, 0x25, 0x5f, 0x1d, - 0xeb, 0xe8, 0x19, 0x84, 0xf5, 0xc9, 0xd1, 0x7a, 0x73, 0xb0, 0x51, 0x2a, 0xc3, 0xa6, 0x25, 0x40, - 0xda, 0xa9, 0x86, 0x35, 0x8f, 0xa6, 0xb5, 0xad, 0x2c, 0xbe, 0x30, 0x50, 0x15, 0xda, 0xf5, 0x11, - 0x33, 0x4c, 0x95, 0x7b, 0xf1, 0xc6, 0x23, 0xfb, 0x25, 0xb2, 0x7c, 0xf1, 0x64, 0x64, 0xb9, 0x5d, - 0x5e, 0x1c, 0x5b, 0x16, 0xcf, 0x4e, 0x9a, 0x44, 0x24, 0xc9, 0x67, 0x59, 0x8c, 0x8f, 0x8b, 0x43, - 0x9b, 0x1b, 0x29, 0xaf, 0xc1, 0xe6, 0x51, 0x7c, 0xf5, 0xd1, 0x9c, 0x12, 0x25, 0x3e, 0x7f, 0x32, - 0x4a, 0xdc, 0x2a, 0xbf, 0x31, 0xa6, 0x12, 0xbd, 0xf6, 0xd5, 0x27, 0x43, 0x52, 0x5e, 0x23, 0xca, - 0x30, 0xd8, 0x3a, 0x46, 0x94, 0x21, 0x55, 0xc1, 0xff, 0xbd, 0x0c, 0x51, 0xf3, 0xea, 0xc9, 0xf0, - 0x37, 0xc2, 0x17, 0xeb, 0xc9, 0x44, 0x14, 0x77, 0x68, 0x6d, 0xfa, 0xd4, 0xac, 0x06, 0x41, 0x3d, - 0x05, 0x5e, 0x1e, 0x09, 0xfb, 0x7f, 0xa8, 0x84, 0xde, 0xd8, 0x17, 0x7d, 0x69, 0x9a, 0xd4, 0x9d, - 0x47, 0xd3, 0xc5, 0x6b, 0x3b, 0xdb, 0x28, 0xf7, 0xeb, 0x36, 0x7a, 0x71, 0xe8, 0x2b, 0xbe, 0xa7, - 0x86, 0xb7, 0xfb, 0xbf, 0x14, 0xb2, 0x13, 0x68, 0x71, 0x0b, 0xed, 0xee, 0xeb, 0x99, 0xbd, 0x7d, - 0x3d, 0x73, 0xb8, 0xaf, 0xa3, 0x4f, 0xbb, 0x3a, 0xfa, 0xae, 0xab, 0xa3, 0x9f, 0xbb, 0x3a, 0xda, - 0xed, 0xea, 0xe8, 0xf7, 0xae, 0x8e, 0x1e, 0x74, 0xf5, 0xcc, 0x61, 0x57, 0x47, 0x5b, 0x07, 0x7a, - 0x66, 0xe7, 0x40, 0x47, 0xbb, 0x07, 0x7a, 0x66, 0xef, 0x40, 0xcf, 0x7c, 0x50, 0x77, 0x19, 0xbf, - 0xeb, 0x9a, 0x21, 0x6b, 0x49, 0xf0, 0x7d, 0x62, 0x06, 0xc2, 0x52, 0x8b, 0x26, 0xf3, 0xdb, 0x06, - 0xf7, 0x59, 0x48, 0x57, 0xc1, 0x37, 0x7a, 0x66, 0x8b, 0x37, 0x5c, 0x66, 0xc1, 0xba, 0xec, 0x4d, - 0xb6, 0x0f, 0x9b, 0x16, 0x1b, 0x4f, 0xa9, 0x11, 0x70, 0xee, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x7d, 0x1b, 0xa1, 0xde, 0xd0, 0x0b, 0x00, 0x00, + // 995 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x56, 0xcf, 0x6f, 0x1b, 0x45, + 0x14, 0xf6, 0xd8, 0x2d, 0x26, 0x53, 0xda, 0x26, 0x4b, 0x51, 0x2d, 0x13, 0xad, 0x2c, 0x0b, 0x41, + 0x09, 0xd9, 0x5d, 0x91, 0xd0, 0x1f, 0xe4, 0x82, 0x92, 0x14, 0x2a, 0x0b, 0x04, 0xc6, 0x89, 0x5c, + 0x09, 0x21, 0x2d, 0xe3, 0xf5, 0x78, 0x33, 0xd4, 0x9e, 0x19, 0x76, 0x66, 0xd7, 0x49, 0x51, 0x24, + 0xd4, 0xbf, 0xa0, 0x82, 0x33, 0x57, 0xd4, 0x03, 0x42, 0x42, 0x80, 0x84, 0xc8, 0x25, 0x9c, 0xe0, + 0x84, 0x22, 0xb8, 0xe4, 0x48, 0x1c, 0x84, 0xca, 0x2d, 0x7f, 0x02, 0xda, 0xd9, 0x75, 0xe2, 0xdd, + 0x24, 0xb2, 0xeb, 0x4a, 0x95, 0x7a, 0xf2, 0xcc, 0xbc, 0xef, 0xbd, 0xf9, 0xde, 0xe7, 0x7d, 0x6f, + 0x1e, 0xbc, 0x1e, 0x60, 0x61, 0x12, 0x66, 0x09, 0x67, 0x0d, 0x77, 0x90, 0x15, 0x10, 0xdc, 0x15, + 0x16, 0xea, 0x0a, 0x5b, 0xba, 0x5d, 0x5b, 0x10, 0x89, 0x2d, 0xee, 0x37, 0xda, 0xc4, 0xb1, 0x1d, + 0x5f, 0x48, 0xd6, 0x41, 0x9c, 0x98, 0xdc, 0x63, 0x92, 0x69, 0xa5, 0xc8, 0xd1, 0x8c, 0x1c, 0x4d, + 0xe5, 0x68, 0x0e, 0x3a, 0x16, 0x0d, 0x97, 0xc8, 0x35, 0xbf, 0x61, 0x3a, 0xac, 0x63, 0xb9, 0xcc, + 0x65, 0x96, 0x72, 0x6c, 0xf8, 0x2d, 0xb5, 0x53, 0x1b, 0xb5, 0x8a, 0x02, 0x16, 0xa7, 0x5d, 0xc6, + 0xdc, 0x36, 0xb6, 0x10, 0x27, 0x16, 0xa2, 0x94, 0x49, 0x24, 0x09, 0xa3, 0x22, 0xb6, 0xbe, 0x98, + 0xe4, 0xc9, 0xf8, 0xa0, 0x51, 0x4f, 0x1a, 0x15, 0x6d, 0xb9, 0xc1, 0x71, 0xdf, 0x3e, 0x9d, 0x4a, + 0x12, 0xb5, 0x49, 0x13, 0x49, 0x1c, 0x5b, 0xcb, 0x29, 0x2b, 0x16, 0x98, 0x06, 0xa9, 0x1b, 0x4a, + 0xc7, 0x65, 0xb2, 0x93, 0x08, 0x63, 0xa8, 0x90, 0xac, 0xf1, 0x29, 0x76, 0x64, 0x0c, 0x9f, 0x1d, + 0x0a, 0x1f, 0x4c, 0xe0, 0xa5, 0x93, 0xd0, 0x21, 0xca, 0x1e, 0x40, 0x95, 0x7f, 0xce, 0xc2, 0xcb, + 0x2b, 0x58, 0xd6, 0xab, 0xcb, 0x15, 0x5e, 0xf5, 0x70, 0x8b, 0xac, 0x63, 0x51, 0xc3, 0x9f, 0xf9, + 0x58, 0x48, 0x6d, 0x1a, 0x4e, 0x50, 0xd4, 0xc1, 0x82, 0x23, 0x07, 0x17, 0x40, 0x09, 0x5c, 0x99, + 0xa8, 0x1d, 0x1d, 0x68, 0x1a, 0x3c, 0x13, 0x6e, 0x0a, 0x59, 0x65, 0x50, 0x6b, 0x4d, 0xc2, 0x8b, + 0x01, 0x77, 0x6c, 0xc2, 0x6d, 0x1e, 0xc7, 0x2a, 0xe4, 0x4a, 0xb9, 0x2b, 0xe7, 0xe6, 0xde, 0x33, + 0x87, 0xfd, 0xf5, 0xe6, 0x29, 0x2c, 0xcc, 0x3a, 0x77, 0x8e, 0x0e, 0xdf, 0xa6, 0xd2, 0xdb, 0xa8, + 0x9d, 0x0f, 0x06, 0xcf, 0x8a, 0x3e, 0xd4, 0x8e, 0x83, 0xb4, 0x49, 0x98, 0xbb, 0x83, 0x37, 0x62, + 0xde, 0xe1, 0x52, 0xab, 0xc0, 0xb3, 0x01, 0x6a, 0xfb, 0x11, 0xe5, 0x73, 0x73, 0xf3, 0xc3, 0x39, + 0x25, 0x08, 0xad, 0x6e, 0x70, 0x5c, 0x8b, 0x22, 0x2c, 0x64, 0x6f, 0x80, 0x72, 0x11, 0x16, 0x8e, + 0x73, 0x16, 0x9c, 0x51, 0x81, 0xcb, 0xdf, 0x00, 0x78, 0x49, 0x19, 0xdf, 0x5f, 0xf5, 0x29, 0xc5, + 0xed, 0xc7, 0xd0, 0xf4, 0x63, 0x98, 0x97, 0x51, 0x8c, 0xc2, 0xbf, 0x79, 0x25, 0xe6, 0x8d, 0xe1, + 0xc4, 0x17, 0x6f, 0xaf, 0x1c, 0xde, 0xbd, 0xcc, 0x68, 0x8b, 0xb8, 0x21, 0xfb, 0xa5, 0xfc, 0xee, + 0x26, 0x78, 0xb8, 0x05, 0x40, 0xad, 0x1f, 0xb2, 0x7c, 0x19, 0xbe, 0x90, 0xe2, 0x19, 0x67, 0x70, + 0x00, 0xe0, 0xd4, 0x0a, 0x96, 0xab, 0xb7, 0x6e, 0x57, 0x68, 0x8b, 0x8d, 0x4f, 0xff, 0x43, 0xf8, + 0x6c, 0xc8, 0x8a, 0xd0, 0x16, 0x2b, 0xe4, 0x94, 0xee, 0xd7, 0x46, 0xa2, 0x1f, 0x5f, 0x7c, 0x44, + 0xbe, 0x96, 0x97, 0x6e, 0x37, 0x3c, 0xd2, 0xea, 0xf0, 0xf9, 0x26, 0xf1, 0xb0, 0x23, 0x6d, 0x87, + 0x51, 0x1a, 0xfe, 0xaa, 0xe8, 0x67, 0x54, 0xf4, 0x97, 0x4f, 0x8c, 0x7e, 0x53, 0xe1, 0x97, 0x23, + 0xb8, 0x4a, 0x68, 0xaa, 0x99, 0x3e, 0x2a, 0x5f, 0x82, 0xda, 0x60, 0xc6, 0xb1, 0x10, 0xdf, 0x46, + 0x42, 0xd4, 0x2b, 0xd5, 0xc7, 0x13, 0x02, 0xc3, 0xa9, 0x20, 0x2c, 0x0c, 0xe4, 0xa1, 0x8e, 0xb0, + 0x39, 0xf6, 0x6c, 0x74, 0x37, 0xae, 0x8e, 0x57, 0x53, 0x9c, 0x95, 0x06, 0xd5, 0xb0, 0x87, 0x8a, + 0xb5, 0x7a, 0xa5, 0x5a, 0x55, 0x2e, 0x55, 0xec, 0x2d, 0xde, 0x5d, 0xba, 0xf8, 0xcb, 0x7f, 0xdb, + 0x39, 0xf8, 0x25, 0xc8, 0xcf, 0x9c, 0x7d, 0x7d, 0x76, 0x6e, 0x76, 0xbe, 0x76, 0x21, 0x20, 0x7c, + 0x00, 0x10, 0x27, 0x71, 0xc8, 0x36, 0x4a, 0x62, 0xee, 0x87, 0xe7, 0xe0, 0xc4, 0xb2, 0xea, 0xc6, + 0x8b, 0xd5, 0x8a, 0xf6, 0x6b, 0x16, 0x4e, 0xa6, 0x3f, 0x5d, 0xed, 0xcd, 0xb1, 0x4b, 0xb4, 0xb8, + 0x30, 0x8e, 0x6b, 0x2c, 0xef, 0x4f, 0xa0, 0xf7, 0x5b, 0xe1, 0x93, 0x00, 0x0b, 0x83, 0x30, 0x83, + 0xd0, 0x96, 0x87, 0x84, 0xf4, 0x7c, 0x47, 0xfa, 0x1e, 0x36, 0xba, 0x1e, 0x91, 0x78, 0xb6, 0xd4, + 0xba, 0xba, 0xee, 0x18, 0x61, 0x14, 0xa3, 0x83, 0x28, 0x72, 0x71, 0x07, 0x53, 0x69, 0x34, 0x90, + 0x20, 0x8e, 0xe1, 0x0b, 0xec, 0x9d, 0x02, 0x10, 0x12, 0xd1, 0x26, 0xf2, 0x9a, 0x0a, 0x73, 0xef, + 0xaf, 0x7f, 0xbe, 0xca, 0xbe, 0x5b, 0x7e, 0x27, 0x7e, 0x99, 0xac, 0xc3, 0xbf, 0x4a, 0x58, 0x9f, + 0x1f, 0xae, 0x37, 0x93, 0xcd, 0x54, 0x19, 0x36, 0x2d, 0x81, 0xa5, 0x9d, 0x6a, 0x6a, 0x0b, 0x60, + 0x46, 0xfb, 0x31, 0x0b, 0xcf, 0x27, 0x2a, 0x47, 0xbb, 0x36, 0xa2, 0x0a, 0xa9, 0x96, 0x50, 0xbc, + 0xfe, 0xc8, 0x7e, 0xb1, 0x74, 0xdf, 0x3f, 0x39, 0xe9, 0x6e, 0x95, 0x97, 0xc6, 0x96, 0x8e, 0xda, + 0x71, 0xb3, 0x09, 0x65, 0x7b, 0x90, 0x85, 0xf0, 0xa8, 0xc8, 0xb4, 0xf9, 0x91, 0x72, 0x4f, 0x36, + 0xa1, 0xe2, 0x1b, 0x8f, 0xe6, 0x14, 0xab, 0xf5, 0xdd, 0x93, 0x53, 0xeb, 0x66, 0xf9, 0xad, 0x31, + 0xd5, 0xea, 0xb7, 0xca, 0x01, 0xa9, 0xe2, 0x52, 0x1e, 0x51, 0xaa, 0x64, 0x9b, 0x1a, 0x51, 0xaa, + 0x54, 0xb7, 0x78, 0x3a, 0xa4, 0x0a, 0x9b, 0x69, 0x5f, 0xaa, 0xaf, 0xb3, 0xf0, 0x42, 0x3d, 0x9e, + 0xd0, 0xa2, 0x17, 0x43, 0x9b, 0x39, 0x31, 0xf3, 0x24, 0xa8, 0xaf, 0xd2, 0x6b, 0x23, 0x61, 0x9f, + 0x96, 0xaa, 0xeb, 0x8f, 0xaa, 0xe1, 0xeb, 0xd8, 0x22, 0xee, 0x02, 0x98, 0x29, 0x5e, 0xdd, 0xde, + 0x02, 0xb9, 0x3f, 0xb7, 0xc0, 0x2b, 0x43, 0xbf, 0x86, 0x0f, 0xd4, 0xc0, 0x79, 0xef, 0x8f, 0x42, + 0x76, 0x12, 0x2c, 0xdd, 0x07, 0x3b, 0x7b, 0x7a, 0x66, 0x77, 0x4f, 0xcf, 0x1c, 0xec, 0xe9, 0xe0, + 0x8b, 0x9e, 0x0e, 0x1e, 0xf4, 0x74, 0xf0, 0x7b, 0x4f, 0x07, 0x3b, 0x3d, 0x1d, 0xfc, 0xdd, 0xd3, + 0xc1, 0xc3, 0x9e, 0x9e, 0x39, 0xe8, 0xe9, 0xe0, 0xfe, 0xbe, 0x9e, 0xd9, 0xde, 0xd7, 0xc1, 0xce, + 0xbe, 0x9e, 0xd9, 0xdd, 0xd7, 0x33, 0x1f, 0xd5, 0x5d, 0xc6, 0xef, 0xb8, 0x66, 0xc0, 0xda, 0x12, + 0x7b, 0x1e, 0x32, 0x7d, 0x61, 0xa9, 0x45, 0x8b, 0x79, 0x1d, 0x83, 0x7b, 0x2c, 0x20, 0x4d, 0xec, + 0x19, 0x7d, 0xb3, 0xc5, 0x1b, 0x2e, 0xb3, 0xf0, 0xba, 0xec, 0x4f, 0xe3, 0xa7, 0x4d, 0xb8, 0x8d, + 0x67, 0xd4, 0xd8, 0x3a, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x15, 0x01, 0x5a, 0xa3, 0x84, + 0x0c, 0x00, 0x00, } func (this *SetVPCIpPrefixesRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.vesapi.go b/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.vesapi.go index 27f953e86..099f05de4 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/public_customapi.vesapi.go @@ -1723,12 +1723,12 @@ var CustomAPISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { diff --git a/pbgo/extschema/schema/views/aws_tgw_site/types.pb.go b/pbgo/extschema/schema/views/aws_tgw_site/types.pb.go index d5284b8f3..894dd4912 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/types.pb.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/types.pb.go @@ -1026,6 +1026,37 @@ func (*VnConfiguration) XXX_OneofWrappers() []interface{} { // x-displayName: "AWS Services VPC Config" // AWS Services VPC Replace config type ServicesVPCReplaceType struct { + // AWS Region + // + // x-displayName: "AWS Region" + // x-example: "us-east-1" + // x-required + // AWS Region of your services vpc, where F5XC site will be deployed. + AwsRegion string `protobuf:"bytes,1,opt,name=aws_region,json=awsRegion,proto3" json:"aws_region,omitempty"` + // New/Existing Services VPC + // + // x-displayName: "New/Existing Services VPC" + // x-required + // Services VPC where F5XC site will be deployed can be an existing VPC + // or F5XC can orchestrate a new VPC and create required cloud resources within that VPC. + // + // Types that are valid to be assigned to ServiceVpcChoice: + // *ServicesVPCReplaceType_NewVpc + // *ServicesVPCReplaceType_VpcId + ServiceVpcChoice isServicesVPCReplaceType_ServiceVpcChoice `protobuf_oneof:"service_vpc_choice"` + // New/Existing Transit Gateway + // + // x-displayName: "New/Existing Transit Gateway" + // x-required + // F5XC Site can work with an existing Transit Gateway(TGW) and orchestrate attachments, TGW routing and propagation + // or F5XC can orchestrate new TGW, attachments, TGW routing and propagation + // + // Types that are valid to be assigned to TgwChoice: + // *ServicesVPCReplaceType_NewTgw + // *ServicesVPCReplaceType_ExistingTgw + TgwChoice isServicesVPCReplaceType_TgwChoice `protobuf_oneof:"tgw_choice"` + InstanceType string `protobuf:"bytes,9,opt,name=instance_type,json=instanceType,proto3" json:"instance_type,omitempty"` + AzNodes []*views.AWSVPCTwoInterfaceNodeType `protobuf:"bytes,11,rep,name=az_nodes,json=azNodes,proto3" json:"az_nodes,omitempty"` // Automatic Deployment // // x-displayName: "Automatic Deployment" @@ -1036,6 +1067,19 @@ type ServicesVPCReplaceType struct { // *ServicesVPCReplaceType_AwsCred // *ServicesVPCReplaceType_Assisted Deployment isServicesVPCReplaceType_Deployment `protobuf_oneof:"deployment"` + // Public SSH key + // + // x-displayName: "Public SSH key" + // x-example: "ssh-rsa AAAAB..." + // x-required + // Public SSH key for accessing nodes of the site. + SshKey string `protobuf:"bytes,10,opt,name=ssh_key,json=sshKey,proto3" json:"ssh_key,omitempty"` + // Node Disk size + // + // x-displayName: "Node Disk Size" + // x-example: "80" + // Node disk size for all node in the F5XC site. Unit is GiB + DiskSize uint32 `protobuf:"varint,22,opt,name=disk_size,json=diskSize,proto3" json:"disk_size,omitempty"` // Desired Worker Nodes Selection // // x-displayName: "Desired Worker Nodes Selection" @@ -1058,6 +1102,16 @@ type ServicesVPCReplaceType struct { // *ServicesVPCReplaceType_DisableInternetVip // *ServicesVPCReplaceType_EnableInternetVip InternetVipChoice isServicesVPCReplaceType_InternetVipChoice `protobuf_oneof:"internet_vip_choice"` + // Security Group + // + // x-displayName: "Security Group" + // x-required + // Select the security group for slo and sli interfaces. + // + // Types that are valid to be assigned to SecurityGroupChoice: + // *ServicesVPCReplaceType_F5XcSecurityGroup + // *ServicesVPCReplaceType_CustomSecurityGroup + SecurityGroupChoice isServicesVPCReplaceType_SecurityGroupChoice `protobuf_oneof:"security_group_choice"` } func (m *ServicesVPCReplaceType) Reset() { *m = ServicesVPCReplaceType{} } @@ -1088,6 +1142,18 @@ func (m *ServicesVPCReplaceType) XXX_DiscardUnknown() { var xxx_messageInfo_ServicesVPCReplaceType proto.InternalMessageInfo +type isServicesVPCReplaceType_ServiceVpcChoice interface { + isServicesVPCReplaceType_ServiceVpcChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isServicesVPCReplaceType_TgwChoice interface { + isServicesVPCReplaceType_TgwChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type isServicesVPCReplaceType_Deployment interface { isServicesVPCReplaceType_Deployment() Equal(interface{}) bool @@ -1106,7 +1172,25 @@ type isServicesVPCReplaceType_InternetVipChoice interface { MarshalTo([]byte) (int, error) Size() int } +type isServicesVPCReplaceType_SecurityGroupChoice interface { + isServicesVPCReplaceType_SecurityGroupChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type ServicesVPCReplaceType_NewVpc struct { + NewVpc *views.AWSVPCParamsType `protobuf:"bytes,3,opt,name=new_vpc,json=newVpc,proto3,oneof" json:"new_vpc,omitempty"` +} +type ServicesVPCReplaceType_VpcId struct { + VpcId string `protobuf:"bytes,4,opt,name=vpc_id,json=vpcId,proto3,oneof" json:"vpc_id,omitempty"` +} +type ServicesVPCReplaceType_NewTgw struct { + NewTgw *TGWParamsType `protobuf:"bytes,6,opt,name=new_tgw,json=newTgw,proto3,oneof" json:"new_tgw,omitempty"` +} +type ServicesVPCReplaceType_ExistingTgw struct { + ExistingTgw *ExistingTGWType `protobuf:"bytes,7,opt,name=existing_tgw,json=existingTgw,proto3,oneof" json:"existing_tgw,omitempty"` +} type ServicesVPCReplaceType_AwsCred struct { AwsCred *views.ObjectRefType `protobuf:"bytes,14,opt,name=aws_cred,json=awsCred,proto3,oneof" json:"aws_cred,omitempty"` } @@ -1128,15 +1212,39 @@ type ServicesVPCReplaceType_DisableInternetVip struct { type ServicesVPCReplaceType_EnableInternetVip struct { EnableInternetVip *schema.Empty `protobuf:"bytes,33,opt,name=enable_internet_vip,json=enableInternetVip,proto3,oneof" json:"enable_internet_vip,omitempty"` } +type ServicesVPCReplaceType_F5XcSecurityGroup struct { + F5XcSecurityGroup *schema.Empty `protobuf:"bytes,35,opt,name=f5xc_security_group,json=f5xcSecurityGroup,proto3,oneof" json:"f5xc_security_group,omitempty"` +} +type ServicesVPCReplaceType_CustomSecurityGroup struct { + CustomSecurityGroup *views.SecurityGroupType `protobuf:"bytes,36,opt,name=custom_security_group,json=customSecurityGroup,proto3,oneof" json:"custom_security_group,omitempty"` +} -func (*ServicesVPCReplaceType_AwsCred) isServicesVPCReplaceType_Deployment() {} -func (*ServicesVPCReplaceType_Assisted) isServicesVPCReplaceType_Deployment() {} -func (*ServicesVPCReplaceType_NodesPerAz) isServicesVPCReplaceType_WorkerNodes() {} -func (*ServicesVPCReplaceType_TotalNodes) isServicesVPCReplaceType_WorkerNodes() {} -func (*ServicesVPCReplaceType_NoWorkerNodes) isServicesVPCReplaceType_WorkerNodes() {} -func (*ServicesVPCReplaceType_DisableInternetVip) isServicesVPCReplaceType_InternetVipChoice() {} -func (*ServicesVPCReplaceType_EnableInternetVip) isServicesVPCReplaceType_InternetVipChoice() {} - +func (*ServicesVPCReplaceType_NewVpc) isServicesVPCReplaceType_ServiceVpcChoice() {} +func (*ServicesVPCReplaceType_VpcId) isServicesVPCReplaceType_ServiceVpcChoice() {} +func (*ServicesVPCReplaceType_NewTgw) isServicesVPCReplaceType_TgwChoice() {} +func (*ServicesVPCReplaceType_ExistingTgw) isServicesVPCReplaceType_TgwChoice() {} +func (*ServicesVPCReplaceType_AwsCred) isServicesVPCReplaceType_Deployment() {} +func (*ServicesVPCReplaceType_Assisted) isServicesVPCReplaceType_Deployment() {} +func (*ServicesVPCReplaceType_NodesPerAz) isServicesVPCReplaceType_WorkerNodes() {} +func (*ServicesVPCReplaceType_TotalNodes) isServicesVPCReplaceType_WorkerNodes() {} +func (*ServicesVPCReplaceType_NoWorkerNodes) isServicesVPCReplaceType_WorkerNodes() {} +func (*ServicesVPCReplaceType_DisableInternetVip) isServicesVPCReplaceType_InternetVipChoice() {} +func (*ServicesVPCReplaceType_EnableInternetVip) isServicesVPCReplaceType_InternetVipChoice() {} +func (*ServicesVPCReplaceType_F5XcSecurityGroup) isServicesVPCReplaceType_SecurityGroupChoice() {} +func (*ServicesVPCReplaceType_CustomSecurityGroup) isServicesVPCReplaceType_SecurityGroupChoice() {} + +func (m *ServicesVPCReplaceType) GetServiceVpcChoice() isServicesVPCReplaceType_ServiceVpcChoice { + if m != nil { + return m.ServiceVpcChoice + } + return nil +} +func (m *ServicesVPCReplaceType) GetTgwChoice() isServicesVPCReplaceType_TgwChoice { + if m != nil { + return m.TgwChoice + } + return nil +} func (m *ServicesVPCReplaceType) GetDeployment() isServicesVPCReplaceType_Deployment { if m != nil { return m.Deployment @@ -1155,6 +1263,61 @@ func (m *ServicesVPCReplaceType) GetInternetVipChoice() isServicesVPCReplaceType } return nil } +func (m *ServicesVPCReplaceType) GetSecurityGroupChoice() isServicesVPCReplaceType_SecurityGroupChoice { + if m != nil { + return m.SecurityGroupChoice + } + return nil +} + +func (m *ServicesVPCReplaceType) GetAwsRegion() string { + if m != nil { + return m.AwsRegion + } + return "" +} + +func (m *ServicesVPCReplaceType) GetNewVpc() *views.AWSVPCParamsType { + if x, ok := m.GetServiceVpcChoice().(*ServicesVPCReplaceType_NewVpc); ok { + return x.NewVpc + } + return nil +} + +func (m *ServicesVPCReplaceType) GetVpcId() string { + if x, ok := m.GetServiceVpcChoice().(*ServicesVPCReplaceType_VpcId); ok { + return x.VpcId + } + return "" +} + +func (m *ServicesVPCReplaceType) GetNewTgw() *TGWParamsType { + if x, ok := m.GetTgwChoice().(*ServicesVPCReplaceType_NewTgw); ok { + return x.NewTgw + } + return nil +} + +func (m *ServicesVPCReplaceType) GetExistingTgw() *ExistingTGWType { + if x, ok := m.GetTgwChoice().(*ServicesVPCReplaceType_ExistingTgw); ok { + return x.ExistingTgw + } + return nil +} + +func (m *ServicesVPCReplaceType) GetInstanceType() string { + if m != nil { + return m.InstanceType + } + return "" +} + +func (m *ServicesVPCReplaceType) GetAzNodes() []*views.AWSVPCTwoInterfaceNodeType { + if m != nil { + return m.AzNodes + } + return nil +} func (m *ServicesVPCReplaceType) GetAwsCred() *views.ObjectRefType { if x, ok := m.GetDeployment().(*ServicesVPCReplaceType_AwsCred); ok { @@ -1171,6 +1334,20 @@ func (m *ServicesVPCReplaceType) GetAssisted() *schema.Empty { return nil } +func (m *ServicesVPCReplaceType) GetSshKey() string { + if m != nil { + return m.SshKey + } + return "" +} + +func (m *ServicesVPCReplaceType) GetDiskSize() uint32 { + if m != nil { + return m.DiskSize + } + return 0 +} + func (m *ServicesVPCReplaceType) GetNodesPerAz() uint32 { if x, ok := m.GetWorkerNodes().(*ServicesVPCReplaceType_NodesPerAz); ok { return x.NodesPerAz @@ -1206,9 +1383,27 @@ func (m *ServicesVPCReplaceType) GetEnableInternetVip() *schema.Empty { return nil } +func (m *ServicesVPCReplaceType) GetF5XcSecurityGroup() *schema.Empty { + if x, ok := m.GetSecurityGroupChoice().(*ServicesVPCReplaceType_F5XcSecurityGroup); ok { + return x.F5XcSecurityGroup + } + return nil +} + +func (m *ServicesVPCReplaceType) GetCustomSecurityGroup() *views.SecurityGroupType { + if x, ok := m.GetSecurityGroupChoice().(*ServicesVPCReplaceType_CustomSecurityGroup); ok { + return x.CustomSecurityGroup + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ServicesVPCReplaceType) XXX_OneofWrappers() []interface{} { return []interface{}{ + (*ServicesVPCReplaceType_NewVpc)(nil), + (*ServicesVPCReplaceType_VpcId)(nil), + (*ServicesVPCReplaceType_NewTgw)(nil), + (*ServicesVPCReplaceType_ExistingTgw)(nil), (*ServicesVPCReplaceType_AwsCred)(nil), (*ServicesVPCReplaceType_Assisted)(nil), (*ServicesVPCReplaceType_NodesPerAz)(nil), @@ -1216,6 +1411,8 @@ func (*ServicesVPCReplaceType) XXX_OneofWrappers() []interface{} { (*ServicesVPCReplaceType_NoWorkerNodes)(nil), (*ServicesVPCReplaceType_DisableInternetVip)(nil), (*ServicesVPCReplaceType_EnableInternetVip)(nil), + (*ServicesVPCReplaceType_F5XcSecurityGroup)(nil), + (*ServicesVPCReplaceType_CustomSecurityGroup)(nil), } } @@ -2342,6 +2539,11 @@ type GlobalSpecType struct { // x-displayName: "Custom DNS" // custom dns configure to the CE site CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,55,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` // AWS VPN tunnel config // // x-displayName: "AWS VPN Tunnel Config" @@ -2692,6 +2894,13 @@ func (m *GlobalSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GlobalSpecType) GetTunnels() []*AWSVPNTunnelConfigType { if m != nil { return m.Tunnels @@ -2782,7 +2991,8 @@ type CreateSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,55,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -3018,6 +3228,13 @@ func (m *CreateSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3062,7 +3279,8 @@ type ReplaceSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,55,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -3277,6 +3495,13 @@ func (m *ReplaceSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3339,7 +3564,8 @@ type GetSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,54,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,55,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -3652,6 +3878,13 @@ func (m *GetSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3733,359 +3966,365 @@ func init() { } var fileDescriptor_69fc9b3c28dbc20f = []byte{ - // 5626 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5c, 0x5b, 0x6c, 0x23, 0xd7, - 0x79, 0xd6, 0x21, 0x29, 0x6a, 0x74, 0x74, 0xe1, 0xe8, 0x88, 0xda, 0xe5, 0x6a, 0xbd, 0xdc, 0x89, - 0x2c, 0xdb, 0x5a, 0x99, 0xcb, 0x15, 0x49, 0xdd, 0x56, 0xa9, 0x2f, 0xa2, 0x76, 0xbd, 0x12, 0x13, - 0xaf, 0xd5, 0x91, 0x2c, 0x39, 0x71, 0x93, 0xc9, 0x88, 0x3c, 0xa2, 0x26, 0xa6, 0x66, 0xa6, 0x33, - 0x43, 0x72, 0xb5, 0xe9, 0x22, 0xc6, 0xf6, 0xa1, 0x80, 0x81, 0x02, 0xe9, 0x22, 0x7d, 0x31, 0xfa, - 0xd0, 0xf6, 0xa1, 0x28, 0xb6, 0x0f, 0xed, 0x43, 0x9f, 0xc2, 0x45, 0xbb, 0xd8, 0xc0, 0x45, 0xe0, - 0x97, 0xea, 0x21, 0x05, 0x8c, 0x3c, 0x25, 0x32, 0xd0, 0x3a, 0xe9, 0x4b, 0x1e, 0x5a, 0xc0, 0xf0, - 0x43, 0x5d, 0x9c, 0xcb, 0x90, 0x33, 0xbc, 0xad, 0x56, 0x96, 0x83, 0x24, 0xd8, 0x17, 0x9b, 0x9a, - 0xf3, 0x5f, 0xce, 0xe5, 0x3f, 0xff, 0xff, 0xfd, 0xff, 0x7f, 0x6c, 0x98, 0xa8, 0x60, 0x3b, 0xa9, - 0x19, 0x57, 0xec, 0xfc, 0x1e, 0xde, 0x57, 0xaf, 0x54, 0x34, 0x5c, 0xb5, 0xaf, 0xa8, 0x55, 0x5b, - 0x71, 0x8a, 0x55, 0xc5, 0xd6, 0x1c, 0x7c, 0xc5, 0x39, 0x30, 0xb1, 0x9d, 0x34, 0x2d, 0xc3, 0x31, - 0x90, 0xc4, 0xa8, 0x93, 0x8c, 0x3a, 0x49, 0xa9, 0x93, 0x5e, 0xea, 0xf1, 0xcb, 0x45, 0xcd, 0xd9, - 0x2b, 0xef, 0x24, 0xf3, 0xc6, 0xfe, 0x95, 0xa2, 0x51, 0x34, 0xae, 0x50, 0xc6, 0x9d, 0xf2, 0x2e, - 0xfd, 0x8b, 0xfe, 0x41, 0x7f, 0x31, 0x81, 0xe3, 0x17, 0x8b, 0x86, 0x51, 0x2c, 0xe1, 0x06, 0x95, - 0xa3, 0xed, 0x63, 0xdb, 0x51, 0xf7, 0x4d, 0x4e, 0xf0, 0x82, 0x7f, 0x7e, 0xf9, 0x92, 0x51, 0x2e, - 0x28, 0x79, 0x43, 0xd7, 0x71, 0xde, 0xf1, 0x4e, 0x6d, 0xfc, 0xa2, 0x9f, 0x70, 0xb7, 0x84, 0xb1, - 0x9f, 0x60, 0xda, 0x4f, 0xa0, 0x63, 0xa7, 0x6a, 0x58, 0xef, 0x28, 0xbb, 0x9a, 0x85, 0xab, 0x6a, - 0xa9, 0xe4, 0xa3, 0x3d, 0xef, 0xa7, 0x35, 0x4c, 0x47, 0x33, 0x74, 0x77, 0x30, 0xee, 0x1f, 0x6c, - 0xde, 0xa4, 0xf1, 0x73, 0xfe, 0x71, 0xef, 0xd0, 0x33, 0x4d, 0xbb, 0xad, 0x96, 0xb4, 0x82, 0xea, - 0x60, 0x3e, 0x2a, 0xb5, 0x9e, 0x85, 0xe2, 0x57, 0x3d, 0xd9, 0xee, 0xb4, 0xc8, 0x04, 0x94, 0x2e, - 0x5b, 0xc1, 0xa8, 0x3c, 0x04, 0x13, 0x55, 0x88, 0x36, 0x6f, 0x6c, 0x2f, 0xdb, 0xb6, 0x56, 0xd4, - 0x71, 0x61, 0x79, 0xe3, 0xe6, 0xe6, 0x81, 0x89, 0xd1, 0x14, 0xec, 0x23, 0xc7, 0xa8, 0xda, 0x7a, - 0x0c, 0x48, 0x60, 0x6a, 0x28, 0x1b, 0xf9, 0xd1, 0x2f, 0x1f, 0x06, 0xe1, 0xb4, 0x10, 0xfb, 0xbf, - 0xcf, 0x83, 0xd2, 0xbb, 0x9f, 0x06, 0xe5, 0xb0, 0x53, 0xac, 0x2e, 0xdb, 0x3a, 0x5a, 0x80, 0x23, - 0x15, 0xa3, 0xe4, 0x60, 0xcb, 0x52, 0xe9, 0xa9, 0x53, 0x9e, 0x00, 0xe5, 0x19, 0x20, 0x3c, 0xe1, - 0xe9, 0x50, 0xec, 0xf3, 0xcf, 0x83, 0x72, 0xc4, 0xa5, 0xda, 0xd0, 0x1c, 0xbc, 0x6c, 0xeb, 0x13, - 0xff, 0x01, 0x60, 0xe4, 0xfa, 0x2d, 0xcd, 0x76, 0x34, 0xbd, 0xb8, 0x79, 0x63, 0x9b, 0xaa, 0xcd, - 0x43, 0x22, 0x56, 0xd1, 0x0a, 0x54, 0x6b, 0x7f, 0xf6, 0xeb, 0x9f, 0xd6, 0x40, 0xcf, 0x8f, 0x1e, - 0x00, 0x51, 0x00, 0x33, 0x60, 0x09, 0xd2, 0x13, 0xbf, 0x5c, 0x50, 0x1d, 0x95, 0x48, 0x0e, 0x59, - 0x81, 0xd8, 0xab, 0xe4, 0xc7, 0xf3, 0xd6, 0x64, 0x7a, 0xe2, 0xdb, 0x53, 0x4e, 0xb1, 0x7a, 0xf9, - 0xd2, 0xd4, 0xdb, 0xea, 0xe5, 0xdb, 0x33, 0x97, 0xaf, 0x7e, 0xeb, 0x7b, 0x8b, 0x77, 0xfe, 0xa4, - 0xfe, 0x3b, 0xb5, 0x70, 0xe7, 0xd2, 0xa4, 0xdc, 0xeb, 0x14, 0xab, 0x6b, 0x05, 0x34, 0xd9, 0x58, - 0x5b, 0x9b, 0x79, 0x76, 0x5d, 0x57, 0xf0, 0x18, 0xeb, 0xfa, 0x29, 0x80, 0x43, 0x9b, 0x37, 0xb6, - 0xd7, 0x55, 0x4b, 0xdd, 0xb7, 0xe9, 0xaa, 0x96, 0xa1, 0x68, 0x1f, 0xd8, 0x0e, 0xde, 0x57, 0x8a, - 0x58, 0xc7, 0x96, 0xea, 0xe0, 0x02, 0xd5, 0x3c, 0x90, 0x8e, 0x26, 0xfd, 0x97, 0xe8, 0xfa, 0xbe, - 0xe9, 0x1c, 0xac, 0xf6, 0xc8, 0x11, 0x46, 0x7f, 0xc3, 0x25, 0x47, 0x6f, 0xc3, 0xa1, 0xb2, 0x8d, - 0x2d, 0x45, 0xe5, 0xe7, 0x44, 0x67, 0x32, 0x90, 0x9e, 0x4d, 0x3e, 0xee, 0x12, 0x26, 0x5b, 0x0f, - 0x77, 0xb5, 0x47, 0x1e, 0x24, 0xc2, 0xdc, 0xcf, 0xd9, 0x0b, 0x10, 0xaa, 0xb6, 0xae, 0xe4, 0xf7, - 0x0c, 0x2d, 0x8f, 0x51, 0xe4, 0x61, 0x0d, 0x04, 0x0e, 0x6b, 0x00, 0x1c, 0xd5, 0x40, 0x30, 0x9d, - 0xc8, 0xe4, 0x42, 0x02, 0x10, 0x03, 0x13, 0x3f, 0x8d, 0xc0, 0xc8, 0x06, 0xb6, 0x2a, 0x5a, 0x1e, - 0xdb, 0x5b, 0xeb, 0x2b, 0x74, 0x61, 0x19, 0x08, 0x89, 0x2e, 0x0b, 0x17, 0x35, 0x43, 0xe7, 0x47, - 0x16, 0xe5, 0x47, 0x36, 0x38, 0x45, 0x8e, 0x2c, 0x9c, 0x37, 0xf4, 0x5d, 0xad, 0x28, 0xf7, 0xab, - 0x55, 0x5b, 0xa6, 0x64, 0xe8, 0x35, 0xd8, 0xa7, 0xe3, 0xaa, 0x52, 0x31, 0xf3, 0x7c, 0x11, 0xcf, - 0xb5, 0x5d, 0xc4, 0xf2, 0xf6, 0xc6, 0xd6, 0xfa, 0x4a, 0x63, 0x17, 0xb3, 0xa1, 0x7f, 0x7a, 0x00, - 0xc0, 0x6a, 0x8f, 0x1c, 0xd6, 0x71, 0x75, 0xcb, 0xcc, 0x13, 0x5b, 0xa9, 0x98, 0x79, 0x62, 0x2b, - 0x21, 0xaa, 0x38, 0xc7, 0x15, 0x0f, 0x3f, 0xde, 0x52, 0x2a, 0x66, 0xbe, 0xab, 0xa5, 0xac, 0xf6, - 0xc8, 0xbd, 0x15, 0x33, 0xbf, 0x56, 0x40, 0x39, 0x36, 0x59, 0xa7, 0x58, 0x8d, 0x85, 0xe9, 0x64, - 0xaf, 0x1c, 0x6b, 0xc7, 0x1b, 0xd3, 0x5e, 0x05, 0x74, 0xc2, 0x9b, 0xc5, 0x2a, 0xda, 0x82, 0x83, - 0x98, 0xdb, 0x3b, 0x15, 0xd8, 0x47, 0x05, 0xa6, 0x1e, 0x2f, 0xb0, 0xe9, 0x96, 0xac, 0x02, 0x79, - 0xc0, 0x15, 0x44, 0xe4, 0xce, 0x40, 0x91, 0x90, 0xe7, 0xb1, 0xe5, 0x68, 0xbb, 0x1a, 0x2e, 0x28, - 0x7b, 0xd5, 0x98, 0x40, 0xb7, 0x24, 0xfc, 0x49, 0x0d, 0x80, 0x18, 0x90, 0x87, 0xd5, 0xaa, 0xbd, - 0xe2, 0x0e, 0xaf, 0x56, 0xd1, 0x7f, 0x03, 0x38, 0xa4, 0xe9, 0xb6, 0xa3, 0xea, 0x79, 0xe6, 0x2d, - 0x62, 0xfd, 0x94, 0xfe, 0x03, 0xf0, 0xb3, 0x1a, 0xe8, 0x77, 0x32, 0xc9, 0x5b, 0x25, 0xd5, 0x2a, - 0x62, 0xb2, 0xa1, 0xf7, 0x1e, 0x80, 0xbf, 0x03, 0x70, 0x16, 0x36, 0xbe, 0xa2, 0x17, 0xa6, 0x66, - 0xa5, 0x5b, 0x52, 0x65, 0x65, 0xfd, 0xcd, 0x84, 0x94, 0x9a, 0xbf, 0x91, 0x95, 0xe4, 0xe5, 0xd7, - 0x2f, 0x49, 0xfb, 0xb8, 0xa0, 0x95, 0xf7, 0x25, 0x13, 0x5b, 0xbb, 0x86, 0xb5, 0x4f, 0x24, 0xc3, - 0x0c, 0x84, 0x4e, 0x26, 0x99, 0xe6, 0x6c, 0xcf, 0x4d, 0x2d, 0xd6, 0xd9, 0x32, 0x69, 0x97, 0x6d, - 0x4f, 0x2b, 0xee, 0xf9, 0x98, 0xae, 0x42, 0xb8, 0x3f, 0x97, 0x9c, 0xe5, 0x4c, 0x2f, 0x4e, 0xa5, - 0xe6, 0xeb, 0x5c, 0xf3, 0xb3, 0x2e, 0x57, 0x05, 0x5b, 0x07, 0x2d, 0xac, 0xf5, 0x93, 0x96, 0x07, - 0xdd, 0xc5, 0x51, 0x2b, 0x7d, 0x01, 0xf6, 0xd9, 0xf6, 0x9e, 0xf2, 0x0e, 0x3e, 0x88, 0x41, 0xba, - 0xcc, 0xe1, 0x4f, 0x6b, 0x20, 0x48, 0xa8, 0x7b, 0xad, 0x60, 0xec, 0xdd, 0x57, 0xe5, 0xb0, 0x6d, - 0xef, 0x7d, 0x0d, 0x1f, 0xa0, 0x6f, 0x40, 0x41, 0xbd, 0xad, 0xe8, 0x46, 0x01, 0xdb, 0xb1, 0x01, - 0x29, 0xd8, 0xf1, 0xb4, 0x99, 0x69, 0x6e, 0x56, 0x8d, 0x35, 0xdd, 0xc1, 0xd6, 0xae, 0x9a, 0xc7, - 0x37, 0x8d, 0x02, 0xd5, 0x95, 0x1d, 0x22, 0x62, 0x85, 0x7b, 0xa0, 0x77, 0x3a, 0x98, 0x4a, 0x64, - 0xe4, 0x3e, 0xf5, 0x36, 0x19, 0xb2, 0xd1, 0x3c, 0x1c, 0xa4, 0x72, 0x15, 0x93, 0x5c, 0xe2, 0xdb, - 0xb1, 0x41, 0xea, 0x48, 0xd0, 0xcf, 0x6a, 0x00, 0xcc, 0x50, 0xbb, 0x25, 0x73, 0x9f, 0x0e, 0xc4, - 0xc6, 0x56, 0x03, 0x32, 0xa4, 0x94, 0xeb, 0xd8, 0x5a, 0xbe, 0x8d, 0xe6, 0xe0, 0x80, 0x63, 0x38, - 0x6a, 0x89, 0xcf, 0xea, 0x7c, 0x07, 0xb6, 0x97, 0x08, 0x1b, 0x25, 0x64, 0xea, 0x5e, 0x86, 0x11, - 0xdd, 0x50, 0x48, 0x4c, 0xc3, 0x16, 0x67, 0x7d, 0xa6, 0x8b, 0xc3, 0x09, 0xc8, 0x43, 0xba, 0xb1, - 0x4d, 0xa9, 0x19, 0x7f, 0x1a, 0xf6, 0x17, 0x34, 0xfb, 0x1d, 0xc5, 0xd6, 0x6e, 0xe3, 0xd8, 0x19, - 0xaa, 0x74, 0xec, 0x67, 0x35, 0x10, 0x58, 0xac, 0x6b, 0x25, 0xee, 0xef, 0xdd, 0xff, 0x09, 0xca, - 0x02, 0xa1, 0xdb, 0xd0, 0x6e, 0x63, 0x54, 0x84, 0x02, 0x35, 0x43, 0x0b, 0x17, 0x62, 0xc3, 0x54, - 0xd9, 0x44, 0xdb, 0xdd, 0x7b, 0x63, 0xe7, 0xbb, 0x38, 0xef, 0xc8, 0x78, 0x97, 0x6e, 0xd8, 0xf3, - 0xf7, 0xef, 0x8c, 0xf0, 0x40, 0x6e, 0xe1, 0x02, 0xd6, 0x1d, 0x4d, 0x2d, 0xd9, 0xe4, 0x16, 0x0b, - 0xc0, 0xeb, 0x40, 0x56, 0x83, 0x72, 0x1f, 0x31, 0x62, 0x0b, 0x17, 0xd0, 0x4b, 0x50, 0x20, 0x6e, - 0xd0, 0x26, 0x6e, 0x34, 0xd2, 0x79, 0x55, 0xd9, 0xfe, 0x8f, 0xee, 0x00, 0x76, 0x01, 0x56, 0x83, - 0x72, 0x9d, 0x05, 0xad, 0xc2, 0x68, 0x41, 0xb3, 0xd5, 0x9d, 0x12, 0x56, 0x34, 0x72, 0x7e, 0x3a, - 0x76, 0x94, 0x8a, 0x66, 0xc6, 0x2e, 0x76, 0xd9, 0xa0, 0x90, 0x8c, 0x38, 0xcf, 0x1a, 0x67, 0xd9, - 0xd2, 0x4c, 0xf4, 0x1a, 0x1c, 0xc5, 0x7a, 0xab, 0xa0, 0xaf, 0x74, 0x15, 0x34, 0xc2, 0x58, 0x9a, - 0xe4, 0xec, 0xce, 0xdd, 0xca, 0x2b, 0x36, 0xce, 0x97, 0x2d, 0xcd, 0x39, 0x50, 0x8a, 0x96, 0x51, - 0x36, 0x63, 0xcf, 0x76, 0x91, 0xd3, 0x2b, 0x8f, 0x10, 0x96, 0x0d, 0xce, 0x71, 0x83, 0x30, 0xa0, - 0x3f, 0x82, 0x63, 0xf9, 0xb2, 0xed, 0x18, 0xfb, 0xcd, 0x92, 0x26, 0xa9, 0xa4, 0xe7, 0xdb, 0x1e, - 0x87, 0x4f, 0x04, 0x75, 0x2f, 0xbd, 0xf2, 0x28, 0x13, 0xe3, 0x1b, 0x5a, 0xfa, 0x1b, 0xf0, 0xa8, - 0x06, 0xfe, 0x0a, 0xc0, 0x31, 0x18, 0x59, 0xde, 0xde, 0x90, 0x56, 0x1a, 0xc7, 0x85, 0x02, 0xa9, - 0x0c, 0xbc, 0x08, 0xc7, 0x98, 0x83, 0x97, 0x9e, 0x97, 0xdc, 0x38, 0x21, 0x6d, 0xad, 0xaf, 0xa0, - 0x70, 0x2a, 0x91, 0x4e, 0x64, 0x66, 0x61, 0x14, 0x46, 0x36, 0x2d, 0x55, 0xb7, 0x35, 0x47, 0xba, - 0xa1, 0x3a, 0xb8, 0xaa, 0x1e, 0x20, 0x30, 0x07, 0x27, 0x60, 0x94, 0x04, 0x4e, 0x89, 0xd8, 0x9d, - 0x44, 0xdd, 0x26, 0x76, 0xb0, 0x65, 0x23, 0x78, 0x35, 0x91, 0x4a, 0x25, 0xd2, 0xe9, 0x44, 0x6a, - 0x06, 0x22, 0x38, 0xc8, 0x8c, 0x53, 0x62, 0xd6, 0x19, 0x48, 0x5f, 0x85, 0x51, 0x38, 0xbc, 0x5c, - 0xa8, 0x10, 0x9f, 0x66, 0x63, 0x69, 0x6b, 0x6d, 0xdd, 0x46, 0x81, 0xcc, 0x4c, 0xf6, 0x39, 0x88, - 0x6c, 0xa6, 0x9b, 0xc4, 0x17, 0x6f, 0x44, 0x0b, 0x1e, 0xd6, 0x40, 0x80, 0x44, 0xb4, 0x4c, 0x62, - 0x96, 0x04, 0x3c, 0xe2, 0x5c, 0x3d, 0xc3, 0xe1, 0xc3, 0x1a, 0xe8, 0x25, 0xc3, 0xf3, 0x89, 0x85, - 0xec, 0x24, 0x1c, 0xf4, 0x5e, 0x1d, 0x14, 0x7d, 0x58, 0x03, 0xcf, 0x1c, 0xd6, 0xc0, 0x85, 0xa3, - 0x1a, 0x10, 0x52, 0xe9, 0x44, 0x7a, 0x21, 0x91, 0x5e, 0xcc, 0x4a, 0x10, 0x16, 0xb0, 0x59, 0x32, - 0x0e, 0xf6, 0xb1, 0xee, 0x20, 0xf4, 0xb0, 0x06, 0x86, 0x0f, 0x6b, 0x60, 0xe8, 0xa8, 0x06, 0x02, - 0xa9, 0xd9, 0xbf, 0x7e, 0x00, 0x40, 0x76, 0x0a, 0x8e, 0x7a, 0x0d, 0xc3, 0xd5, 0x37, 0xf2, 0xb0, - 0x06, 0x2e, 0x1e, 0xd6, 0x40, 0xfc, 0xa8, 0x06, 0x7a, 0x33, 0xa9, 0x44, 0x26, 0x93, 0x9d, 0x86, - 0x63, 0xfe, 0x23, 0xf3, 0xd2, 0x3e, 0x7b, 0x58, 0x03, 0x13, 0x94, 0x76, 0x2e, 0x91, 0x99, 0xcf, - 0x85, 0x84, 0x80, 0x18, 0xcc, 0x85, 0x84, 0x5e, 0x31, 0x9c, 0x0b, 0x09, 0x17, 0xc4, 0x78, 0x2e, - 0x24, 0x0c, 0x89, 0xc3, 0xb9, 0x90, 0x20, 0x8a, 0x23, 0xb9, 0x90, 0x30, 0x22, 0xa2, 0x5c, 0x48, - 0x40, 0xe2, 0x68, 0x2e, 0x24, 0x8c, 0x8a, 0xd1, 0x5c, 0x48, 0x88, 0x8a, 0x63, 0xb9, 0x90, 0x30, - 0x26, 0x9e, 0xc9, 0x85, 0x84, 0xb8, 0x78, 0x31, 0x17, 0x12, 0x24, 0xf1, 0x2b, 0xb9, 0x90, 0x30, - 0x21, 0x3e, 0x3b, 0x71, 0x7f, 0x10, 0x46, 0xb6, 0xf4, 0x15, 0x7a, 0xc9, 0xca, 0x96, 0x4a, 0x00, - 0x26, 0x7a, 0x1d, 0x9e, 0xd5, 0x0d, 0x45, 0xd3, 0x6d, 0xad, 0x80, 0x15, 0xdb, 0x51, 0x1d, 0x2d, - 0xaf, 0x58, 0x46, 0xd9, 0xc1, 0xf6, 0x63, 0x60, 0x4b, 0x54, 0x37, 0xd6, 0x28, 0xd7, 0x06, 0x65, - 0x92, 0x29, 0x0f, 0x2a, 0xc2, 0x68, 0x5b, 0x59, 0x2c, 0xfa, 0x5f, 0x6e, 0x6f, 0x95, 0x9a, 0xe3, - 0x13, 0xf2, 0x75, 0xcd, 0x76, 0x7c, 0x28, 0x00, 0x69, 0xad, 0x8a, 0xde, 0x80, 0x31, 0xdd, 0x50, - 0x8c, 0xb2, 0xd3, 0x46, 0x59, 0x6f, 0x97, 0x89, 0x03, 0x79, 0x4c, 0x37, 0xde, 0x60, 0x6c, 0x3e, - 0x81, 0x1a, 0x1c, 0x6b, 0x2f, 0x2d, 0x7c, 0xf2, 0xa9, 0x03, 0x79, 0xd4, 0x68, 0xa3, 0x2a, 0x0b, - 0x47, 0x74, 0x43, 0x29, 0x96, 0x8c, 0x1d, 0xe2, 0xec, 0x59, 0x3e, 0x42, 0xa3, 0x78, 0x67, 0x9f, - 0x1d, 0xd1, 0x8d, 0x1b, 0x94, 0xfe, 0x26, 0x23, 0x47, 0x25, 0x38, 0xea, 0x17, 0xa0, 0x94, 0x34, - 0xdb, 0xa1, 0xb1, 0xbd, 0x13, 0x54, 0xf4, 0x09, 0x58, 0x61, 0xa9, 0x94, 0x66, 0xe8, 0x4d, 0x73, - 0x0e, 0xc8, 0x23, 0x45, 0x2f, 0x21, 0x19, 0x46, 0xd7, 0xe1, 0xa8, 0x6e, 0x28, 0x85, 0xbc, 0x92, - 0x2f, 0x95, 0x6d, 0x07, 0x5b, 0xdc, 0xd7, 0x0c, 0x76, 0x99, 0x73, 0x50, 0x16, 0x75, 0xe3, 0x5a, - 0x7e, 0x85, 0x31, 0x30, 0xa7, 0x55, 0x85, 0xe7, 0x9b, 0x65, 0xd4, 0x8f, 0xb0, 0xa2, 0xc7, 0x86, - 0x8e, 0x1d, 0x49, 0x46, 0xef, 0xdf, 0x11, 0x9b, 0x25, 0xad, 0x06, 0xe5, 0xb3, 0x05, 0x9f, 0x3e, - 0x7e, 0xcc, 0x5b, 0x3a, 0x2a, 0xc3, 0xf1, 0x16, 0xc5, 0xdc, 0x4e, 0x2b, 0xfa, 0x13, 0x44, 0xb0, - 0x0e, 0x7a, 0xcf, 0xf8, 0xf5, 0xb2, 0x7b, 0xb1, 0x45, 0x2f, 0x97, 0xbd, 0xef, 0x66, 0xad, 0x9a, - 0xa1, 0x2b, 0x66, 0x79, 0xa7, 0xa4, 0xe5, 0x15, 0xcd, 0x8c, 0x89, 0x5d, 0x03, 0x47, 0xd4, 0xde, - 0x6f, 0x1c, 0xd0, 0x3a, 0x65, 0x5a, 0x33, 0xd1, 0x0d, 0x18, 0x6d, 0x12, 0x57, 0x71, 0x88, 0xac, - 0x91, 0xee, 0x41, 0xc8, 0x27, 0xab, 0xe2, 0xac, 0x99, 0x68, 0x13, 0x8a, 0x6a, 0xa9, 0x64, 0x54, - 0x71, 0x81, 0xfa, 0x2a, 0xd3, 0xb0, 0x1c, 0x0a, 0x97, 0x06, 0xd2, 0x93, 0xed, 0x41, 0x10, 0x23, - 0xde, 0x5a, 0x5b, 0x5f, 0x37, 0x2c, 0xc7, 0x66, 0x96, 0x22, 0x0f, 0x73, 0x19, 0x5b, 0x9a, 0x49, - 0x3e, 0xa3, 0xb7, 0x61, 0xb4, 0x59, 0xaa, 0x62, 0x97, 0xb4, 0x18, 0x7a, 0x62, 0xc9, 0x23, 0x7e, - 0xc9, 0x1b, 0x25, 0x6d, 0xe9, 0xad, 0x47, 0x35, 0xb0, 0x09, 0x27, 0xe1, 0x39, 0x1a, 0x41, 0x36, - 0x0d, 0x89, 0xfe, 0xdb, 0x5d, 0x58, 0x45, 0x73, 0x0e, 0x50, 0xdf, 0x42, 0x22, 0x35, 0x97, 0x48, - 0xa5, 0x60, 0x14, 0x0e, 0xb1, 0xfb, 0x26, 0xf1, 0x0b, 0x17, 0x4c, 0x25, 0x66, 0xe1, 0x19, 0x38, - 0xc4, 0xb5, 0x49, 0x54, 0x17, 0xea, 0x4d, 0xcd, 0x24, 0x52, 0x8b, 0xd9, 0xcb, 0x70, 0xbc, 0x8d, - 0xcb, 0xea, 0x94, 0x21, 0x65, 0x93, 0xf0, 0x7c, 0x3b, 0x3f, 0xe1, 0xa5, 0xef, 0x3d, 0xac, 0x81, - 0x10, 0xa1, 0x9f, 0x4b, 0xcc, 0x67, 0xa7, 0xe0, 0x58, 0xd3, 0x45, 0xf5, 0x50, 0x0a, 0x87, 0x35, - 0xd0, 0x47, 0x28, 0x17, 0x13, 0x57, 0xb3, 0x57, 0xe0, 0xd9, 0x16, 0x23, 0xe5, 0xb4, 0x24, 0x2a, - 0x0d, 0x1e, 0xd6, 0xc0, 0x00, 0x8f, 0x4a, 0xa9, 0x4c, 0x22, 0x35, 0x9b, 0x7d, 0x11, 0x9e, 0xa1, - 0xd9, 0xea, 0x3e, 0xb6, 0xf7, 0x5a, 0x43, 0x89, 0x78, 0x58, 0x03, 0x11, 0x12, 0x4a, 0x52, 0xf3, - 0x89, 0xd4, 0x02, 0xcb, 0xec, 0x72, 0x21, 0x21, 0x24, 0xf6, 0xe6, 0x42, 0x42, 0x9f, 0x28, 0xe4, - 0x42, 0xc2, 0x80, 0x38, 0x98, 0x0b, 0x09, 0x11, 0x51, 0x6c, 0x0d, 0x1f, 0x13, 0xff, 0x10, 0x86, - 0x67, 0x3c, 0x39, 0xa0, 0x8c, 0xcd, 0x92, 0xca, 0x41, 0xf6, 0x97, 0x8b, 0xfe, 0x7a, 0xbe, 0x10, - 0xfa, 0xeb, 0xf1, 0xa0, 0xbf, 0xc5, 0xb6, 0x40, 0x3c, 0x4a, 0x10, 0x75, 0xca, 0x8b, 0x6d, 0xc7, - 0xa6, 0x88, 0xab, 0xf6, 0x42, 0xf1, 0x85, 0x76, 0x50, 0xbc, 0x95, 0xf1, 0x25, 0xc6, 0x78, 0x72, - 0x30, 0x0e, 0x9a, 0xc1, 0xf8, 0x49, 0x00, 0x6b, 0xe0, 0xb4, 0x00, 0x6b, 0xa0, 0x0d, 0x60, 0x5d, - 0x7a, 0xf3, 0xc3, 0x97, 0x9b, 0x6b, 0x01, 0x8f, 0x6a, 0xe0, 0x95, 0x4e, 0xd0, 0xb0, 0x1d, 0x7e, - 0x43, 0x70, 0xd0, 0x95, 0x48, 0xe0, 0x1b, 0x45, 0x6f, 0x49, 0x1f, 0xa2, 0x92, 0x5a, 0x11, 0xd5, - 0xdd, 0xcf, 0x80, 0x87, 0x22, 0xbb, 0xd8, 0x84, 0xd3, 0xa6, 0x08, 0x4e, 0xfb, 0x49, 0x0d, 0x80, - 0x66, 0xac, 0x76, 0xf7, 0x33, 0xe0, 0xa3, 0xcc, 0xbe, 0xd2, 0x1e, 0x99, 0x4d, 0xb5, 0x20, 0xb3, - 0xbb, 0x9f, 0x81, 0x76, 0x94, 0xf4, 0xe6, 0x90, 0xdb, 0xd2, 0x4f, 0x6f, 0xcb, 0x19, 0xf1, 0x2c, - 0x83, 0x53, 0xb9, 0x90, 0xf0, 0xac, 0x38, 0x99, 0x0b, 0x09, 0x93, 0xe2, 0x73, 0x13, 0xff, 0x1e, - 0x80, 0x23, 0x5b, 0xeb, 0x2b, 0xcb, 0x8e, 0xa3, 0xe6, 0xf7, 0xc8, 0x84, 0xe9, 0x45, 0x51, 0xeb, - 0x65, 0x0b, 0x70, 0xda, 0x65, 0x0b, 0xb7, 0x68, 0x51, 0x82, 0xe1, 0x92, 0xba, 0x83, 0x4b, 0x04, - 0xae, 0x91, 0x2c, 0xf6, 0x95, 0xc7, 0x97, 0x18, 0x5a, 0xe6, 0x99, 0xfc, 0x3a, 0x95, 0x70, 0x5d, - 0x77, 0xac, 0x83, 0xec, 0xe8, 0xfb, 0x0f, 0x40, 0x08, 0x06, 0x40, 0xcf, 0xd1, 0xcf, 0x3f, 0x08, - 0x86, 0xdf, 0x7b, 0x00, 0x02, 0x42, 0x8f, 0xcc, 0x75, 0x8c, 0x5f, 0x85, 0x03, 0x1e, 0x5a, 0x24, - 0xc2, 0x20, 0xc9, 0xb4, 0xe9, 0xe2, 0x64, 0xf2, 0x13, 0x45, 0x61, 0x6f, 0x45, 0x2d, 0x95, 0x31, - 0x05, 0x8f, 0xfd, 0x32, 0xfb, 0x63, 0x29, 0xb0, 0x08, 0x96, 0x92, 0x1f, 0xd6, 0xc0, 0x34, 0x44, - 0x30, 0xbc, 0xb5, 0xbe, 0x22, 0xad, 0x5d, 0x1b, 0x17, 0xdc, 0xbd, 0x81, 0x51, 0x18, 0x66, 0x42, - 0x73, 0xd0, 0x5d, 0x8c, 0xd8, 0x3b, 0x51, 0xa4, 0x1b, 0xba, 0x66, 0xae, 0x5b, 0x78, 0x57, 0xbb, - 0x85, 0x59, 0x75, 0x2d, 0x07, 0x05, 0x93, 0xff, 0x1d, 0x03, 0x52, 0x70, 0xaa, 0x3f, 0x9b, 0xa4, - 0xb5, 0xca, 0x7b, 0xa0, 0x6f, 0xa2, 0xd7, 0x0a, 0x7e, 0x0a, 0x00, 0xbd, 0x9a, 0xf7, 0x40, 0x50, - 0x7c, 0x57, 0xa0, 0x59, 0xff, 0x3d, 0x10, 0x10, 0x80, 0xfb, 0x2b, 0x06, 0xe4, 0x3a, 0xff, 0x52, - 0xf8, 0xc3, 0x1a, 0x08, 0x88, 0x60, 0xe2, 0x07, 0x00, 0x8e, 0xf9, 0xb6, 0xc4, 0x05, 0x44, 0xe8, - 0x6d, 0x28, 0x90, 0x29, 0x52, 0x60, 0x05, 0xe8, 0xee, 0x66, 0x4e, 0xb0, 0xbb, 0xbc, 0x84, 0x48, - 0xe7, 0x04, 0xe4, 0xbe, 0x8a, 0x99, 0x27, 0x0a, 0x96, 0xc6, 0x1f, 0xd5, 0xc0, 0x19, 0x92, 0x28, - 0x91, 0xfd, 0x50, 0xeb, 0x1c, 0x36, 0x02, 0xa9, 0x89, 0xbf, 0x00, 0xf0, 0xdc, 0x32, 0x09, 0x6b, - 0x98, 0xdf, 0xbc, 0x75, 0xa3, 0xa4, 0xe5, 0x35, 0xbe, 0x09, 0x0e, 0x14, 0xdd, 0xc4, 0xc7, 0xe4, - 0xdf, 0xf9, 0xf4, 0x8e, 0xe3, 0x86, 0x9f, 0xbb, 0x7f, 0x67, 0xd8, 0xc7, 0x7e, 0xe0, 0xee, 0x8e, - 0x28, 0x79, 0xf6, 0x29, 0x62, 0xfb, 0x35, 0x4f, 0x7c, 0x2a, 0x40, 0xe4, 0x26, 0x89, 0x2c, 0x85, - 0xa0, 0x93, 0x79, 0x15, 0x8a, 0xba, 0xa1, 0xec, 0x1a, 0x56, 0x55, 0xb5, 0x0a, 0x8a, 0x69, 0x19, - 0xb7, 0x0e, 0x1e, 0x93, 0x38, 0x0c, 0xeb, 0xc6, 0x6b, 0x8c, 0x7c, 0x9d, 0x50, 0xa3, 0x3f, 0x05, - 0xf0, 0x82, 0x4a, 0x17, 0xeb, 0x17, 0xd3, 0x58, 0x1c, 0x4b, 0x1e, 0x5e, 0x6e, 0x92, 0xd7, 0x5c, - 0xc8, 0x4f, 0xb2, 0x1d, 0xf3, 0xca, 0xf6, 0x6e, 0xdb, 0x6a, 0x8f, 0x3c, 0xae, 0x76, 0xa4, 0x20, - 0x50, 0xcd, 0xaf, 0x9d, 0x42, 0x10, 0xf2, 0x4f, 0x5e, 0xbb, 0xeb, 0x98, 0x07, 0xed, 0x7a, 0xc4, - 0x51, 0x80, 0xb1, 0x5c, 0x2a, 0x71, 0xc0, 0x8c, 0x55, 0xdb, 0x51, 0xaa, 0xd8, 0x76, 0xf8, 0x4e, - 0x73, 0x78, 0xde, 0x29, 0x16, 0x88, 0xba, 0x71, 0x5d, 0xb5, 0x9d, 0x6d, 0x6c, 0x3b, 0x74, 0x5e, - 0x07, 0xe8, 0xcf, 0x00, 0xfc, 0x0a, 0xdf, 0x9b, 0x86, 0xac, 0x96, 0xc3, 0x67, 0xd0, 0xed, 0xab, - 0x8f, 0xb7, 0xcd, 0x8e, 0x36, 0xb5, 0x0a, 0x64, 0x7e, 0x06, 0xee, 0x04, 0x9a, 0x88, 0x90, 0x0a, - 0x27, 0x3a, 0xcc, 0xc0, 0xbb, 0x55, 0x03, 0x5d, 0xd7, 0x77, 0x01, 0xb7, 0x11, 0xde, 0xd8, 0x33, - 0x96, 0x16, 0xb9, 0xc7, 0xca, 0x77, 0xac, 0xf7, 0x71, 0x69, 0x11, 0x4f, 0x53, 0xf8, 0x86, 0x1d, - 0xc0, 0xb3, 0x7c, 0xbf, 0x7c, 0x72, 0xb4, 0x7a, 0x1e, 0x77, 0xf5, 0x78, 0x56, 0xe4, 0x95, 0xca, - 0xf7, 0xa8, 0x9e, 0x1f, 0x8d, 0xa9, 0xed, 0x48, 0xd0, 0x5f, 0x7a, 0xce, 0x4a, 0xdf, 0x53, 0xf5, - 0x3c, 0x2e, 0xd4, 0xa5, 0x36, 0x66, 0xc1, 0x52, 0xa6, 0xec, 0xf1, 0x66, 0x71, 0x9d, 0xcb, 0x79, - 0x8d, 0x7f, 0x6e, 0x3b, 0x9d, 0xb8, 0xda, 0x95, 0x76, 0x29, 0xfe, 0xa8, 0x06, 0xc6, 0x61, 0x0c, - 0x46, 0xdc, 0xdb, 0x2b, 0xf1, 0xbd, 0xea, 0x4d, 0x25, 0x66, 0x13, 0x8b, 0xd9, 0x4b, 0x30, 0xea, - 0xb7, 0x7c, 0x0f, 0x86, 0x74, 0x91, 0x6f, 0x6f, 0x3a, 0xb1, 0x90, 0xc8, 0x64, 0xe7, 0xe1, 0xc5, - 0x8e, 0x46, 0xc0, 0xb9, 0x46, 0x1f, 0xd6, 0x40, 0xff, 0x61, 0x0d, 0x08, 0x47, 0x35, 0xd0, 0x77, - 0x35, 0x41, 0x20, 0x76, 0x2a, 0xfb, 0x22, 0x1c, 0xf3, 0x1f, 0xab, 0x4b, 0x8d, 0x3c, 0x68, 0x39, - 0x3c, 0x97, 0x48, 0xa5, 0x13, 0xf3, 0x75, 0xa0, 0x2a, 0x88, 0xfd, 0x0c, 0xae, 0x4e, 0xfc, 0x79, - 0x00, 0x9e, 0xa1, 0x75, 0xd8, 0x9b, 0x9b, 0x65, 0x5d, 0xc7, 0x25, 0x8f, 0xfb, 0x99, 0x82, 0xfd, - 0x24, 0xca, 0x2b, 0xba, 0xba, 0x8f, 0x79, 0x90, 0x65, 0xee, 0xd6, 0x0a, 0x89, 0x20, 0xf6, 0xaa, - 0x2c, 0x90, 0xd1, 0x9b, 0xea, 0x3e, 0x46, 0x5b, 0x50, 0x74, 0x28, 0xb7, 0x62, 0xe1, 0x7d, 0xc3, - 0xc1, 0x24, 0x71, 0x0a, 0xd0, 0x10, 0x92, 0x20, 0x0c, 0xfd, 0xf7, 0x40, 0x78, 0x22, 0x64, 0x05, - 0x6e, 0xd5, 0x83, 0x85, 0x18, 0x68, 0x1b, 0x40, 0x86, 0x99, 0x14, 0x99, 0x0a, 0x59, 0x33, 0xd1, - 0x24, 0xec, 0xa3, 0x33, 0xd0, 0x58, 0x9f, 0xa6, 0x49, 0x7f, 0x98, 0x8c, 0xad, 0x15, 0xd0, 0x0a, - 0x0c, 0xd1, 0xda, 0x7b, 0x48, 0x02, 0x53, 0xc3, 0xc7, 0x69, 0x2c, 0xd4, 0x17, 0x4b, 0x96, 0x29, - 0x53, 0xe6, 0x7a, 0xc4, 0xfa, 0xdb, 0x20, 0x8c, 0x2e, 0x6f, 0x6f, 0x6c, 0xde, 0xd8, 0x5e, 0xd3, - 0x77, 0x0d, 0xcf, 0x6e, 0x64, 0x9b, 0x5a, 0x6a, 0x2f, 0x9e, 0xa0, 0x63, 0x96, 0xad, 0x63, 0x96, - 0x40, 0x8b, 0x8c, 0xe3, 0x82, 0x92, 0x37, 0x21, 0xb4, 0xcb, 0x3b, 0x04, 0x46, 0x69, 0x05, 0xe2, - 0xbe, 0x83, 0xdd, 0x3a, 0x3f, 0x1b, 0x94, 0x72, 0xad, 0xc0, 0xac, 0x3a, 0xe2, 0xc6, 0xf3, 0xe9, - 0xde, 0x99, 0x44, 0x2a, 0x91, 0x91, 0xfb, 0x6d, 0x77, 0x1c, 0xbd, 0x06, 0x61, 0x3d, 0x81, 0xb6, - 0x63, 0x21, 0x7a, 0x78, 0x2f, 0x78, 0x0f, 0xcf, 0x04, 0x4d, 0xdc, 0x9e, 0x73, 0xeb, 0x37, 0x79, - 0x1a, 0x4d, 0x40, 0xf6, 0x80, 0x69, 0x69, 0x15, 0x95, 0x1a, 0x01, 0x71, 0x0c, 0x4f, 0x24, 0x08, - 0x72, 0x5e, 0x22, 0xe9, 0x1c, 0x43, 0x08, 0xd4, 0xfa, 0xfa, 0x28, 0xe2, 0x21, 0xf1, 0x9d, 0xd8, - 0xdb, 0xc4, 0xff, 0xf6, 0xc2, 0xb3, 0xec, 0x90, 0x64, 0x6c, 0x1b, 0x65, 0x2b, 0x8f, 0x37, 0xf6, - 0x54, 0x8b, 0x25, 0x50, 0x49, 0x38, 0x6a, 0xf1, 0x8f, 0x8a, 0x4d, 0xbe, 0x7a, 0xec, 0x57, 0x1e, - 0xb1, 0xbc, 0xf4, 0xd4, 0x76, 0x5f, 0x81, 0x43, 0x79, 0x0b, 0xd3, 0x82, 0x9d, 0xe2, 0x68, 0xfb, - 0x98, 0x47, 0xd8, 0xf1, 0x24, 0xeb, 0xa2, 0x27, 0xdd, 0x2e, 0x7a, 0x72, 0xd3, 0xed, 0xa2, 0xcb, - 0x83, 0x2e, 0x03, 0xf9, 0x84, 0x5e, 0x83, 0x23, 0x25, 0x72, 0x71, 0xcb, 0x66, 0x41, 0x75, 0x70, - 0x81, 0x09, 0x09, 0x3e, 0x56, 0x48, 0x84, 0x30, 0xbd, 0xc9, 0x78, 0xa8, 0x9c, 0x04, 0x44, 0x4d, - 0x13, 0x57, 0x2d, 0x9d, 0xf5, 0xe4, 0x64, 0xd1, 0x37, 0xef, 0x65, 0x4b, 0x67, 0xcb, 0xcc, 0x63, - 0xad, 0x42, 0xd2, 0xaf, 0x7c, 0xde, 0x28, 0xeb, 0xc4, 0x20, 0x62, 0x22, 0xd9, 0x6f, 0xb2, 0x4c, - 0x36, 0xb4, 0xcc, 0x46, 0xd6, 0x0a, 0x68, 0x19, 0x5e, 0x68, 0x92, 0xae, 0xe9, 0x15, 0xcd, 0x61, - 0xeb, 0x26, 0x8a, 0x68, 0xa7, 0x4b, 0x1e, 0xf7, 0x29, 0x5a, 0xab, 0x93, 0x10, 0x95, 0x53, 0x50, - 0x34, 0xaa, 0xba, 0x5f, 0x1f, 0xed, 0x77, 0xc9, 0xc3, 0xf4, 0x7b, 0x43, 0xd9, 0x12, 0x3c, 0xc7, - 0xe2, 0x16, 0xbe, 0x45, 0x20, 0xbf, 0x5a, 0x52, 0x4c, 0x4b, 0xd3, 0xf3, 0x9a, 0x59, 0xe2, 0x11, - 0x55, 0x90, 0xcf, 0x52, 0x82, 0xeb, 0x7c, 0x7c, 0xbd, 0x3e, 0x8c, 0x5e, 0x84, 0x23, 0x9e, 0x99, - 0xd9, 0x8e, 0xea, 0x94, 0x99, 0x67, 0xef, 0x97, 0xc5, 0xc6, 0xc0, 0x06, 0xfd, 0x8e, 0xce, 0xc0, - 0x30, 0xa7, 0x18, 0xa2, 0x14, 0xfc, 0x2f, 0x22, 0xa4, 0x91, 0xdf, 0xb8, 0x42, 0x86, 0x99, 0x90, - 0xc6, 0x00, 0x17, 0xb2, 0x0d, 0x43, 0x8e, 0x5a, 0xb4, 0x63, 0x11, 0x7a, 0x97, 0x56, 0x8e, 0x11, - 0xea, 0xdb, 0x9b, 0x5e, 0x72, 0x53, 0x2d, 0x32, 0xf0, 0x2e, 0x53, 0x81, 0xe3, 0x0b, 0xb0, 0xbf, - 0xfe, 0xe9, 0x49, 0xf0, 0x7c, 0xbd, 0x28, 0x1d, 0x16, 0xfb, 0xbc, 0xf5, 0x84, 0x89, 0x47, 0x41, - 0x28, 0x32, 0xe5, 0x6c, 0xea, 0xd4, 0xe0, 0xc7, 0xfc, 0x8e, 0xc9, 0xf5, 0x35, 0x67, 0x79, 0x77, - 0xde, 0xd2, 0xb9, 0x7c, 0xda, 0x90, 0xb7, 0x74, 0x34, 0x0d, 0x47, 0xc8, 0x80, 0xef, 0x28, 0x99, - 0x7b, 0x95, 0x23, 0x4e, 0xb1, 0xfa, 0x86, 0xe7, 0x28, 0xd1, 0x24, 0x1c, 0xa6, 0x42, 0xf6, 0xd5, - 0xdb, 0xc4, 0x4c, 0x6c, 0x66, 0x8f, 0x41, 0x79, 0x90, 0xc8, 0xa2, 0x1f, 0x97, 0x6d, 0x9d, 0xdc, - 0x00, 0xda, 0x06, 0xf0, 0x5d, 0xa3, 0xde, 0xc7, 0xdf, 0x00, 0xa7, 0x58, 0x5d, 0xf1, 0xde, 0x24, - 0xde, 0x4e, 0xe0, 0x6d, 0xf0, 0x30, 0x9d, 0x52, 0xbf, 0x53, 0xac, 0xf2, 0x86, 0xf7, 0x79, 0xd8, - 0x4f, 0x8f, 0xc0, 0x51, 0x1d, 0xd7, 0x23, 0x08, 0x4e, 0xb1, 0x4a, 0xb6, 0x02, 0xa3, 0x75, 0x7e, - 0x88, 0x02, 0x3d, 0xc4, 0x3f, 0x38, 0xee, 0x21, 0x36, 0xf6, 0xb1, 0xf9, 0xf4, 0xc8, 0x6c, 0x98, - 0xe1, 0x28, 0xfb, 0x76, 0x91, 0x1b, 0x7a, 0x3f, 0xfb, 0xf2, 0xba, 0x5d, 0x3c, 0xf1, 0xe1, 0x4e, - 0xfc, 0x38, 0x0e, 0x87, 0x59, 0xb9, 0x78, 0xc3, 0xc4, 0x79, 0x7a, 0x84, 0xdf, 0x86, 0xc3, 0x64, - 0x6e, 0x66, 0xbd, 0x6d, 0x43, 0x25, 0x1d, 0xab, 0xa7, 0xdd, 0x54, 0x3e, 0xc8, 0x86, 0x08, 0xaa, - 0x90, 0x87, 0xd4, 0xaa, 0xed, 0x69, 0x02, 0xed, 0xc2, 0x08, 0x71, 0xa5, 0x9e, 0x4c, 0x88, 0x7b, - 0xb9, 0x85, 0x27, 0xcc, 0xb9, 0x1a, 0xf5, 0x6c, 0xaa, 0x66, 0xb8, 0x62, 0xe6, 0x97, 0x3d, 0xe9, - 0xd5, 0xb7, 0xe0, 0x20, 0xe5, 0xe3, 0x60, 0xe8, 0xf8, 0x8f, 0x2b, 0x5a, 0x93, 0x1f, 0xae, 0x61, - 0x80, 0x1c, 0x30, 0x1f, 0x44, 0xeb, 0xf0, 0x5c, 0xe3, 0x29, 0x89, 0xb1, 0xeb, 0x54, 0x89, 0x1b, - 0xab, 0x60, 0xcb, 0x26, 0xe6, 0xc2, 0x1e, 0x2f, 0x44, 0x79, 0xb5, 0xaa, 0xde, 0xd4, 0xa5, 0x7d, - 0xec, 0xb3, 0xf5, 0xb7, 0x25, 0x9c, 0x6b, 0x8b, 0x31, 0xa1, 0x9b, 0x30, 0x66, 0x98, 0xd8, 0x52, - 0xe9, 0x5b, 0x02, 0xfe, 0xb6, 0xc4, 0x15, 0xd8, 0xdb, 0x45, 0xe0, 0x99, 0x3a, 0xd7, 0x06, 0x65, - 0x72, 0xe5, 0xfd, 0x73, 0x80, 0xed, 0xb4, 0x66, 0x2a, 0xf5, 0x5c, 0x3a, 0x7c, 0x5c, 0xb7, 0xe2, - 0x37, 0x8a, 0xe4, 0x96, 0x99, 0x6f, 0x64, 0xe8, 0xac, 0x7e, 0xf0, 0x6f, 0x80, 0xcf, 0xe6, 0xe8, - 0xe7, 0x1f, 0x04, 0xa3, 0xef, 0x3d, 0x00, 0x22, 0x1a, 0xfe, 0x55, 0x0d, 0xc0, 0xe5, 0xed, 0x0d, - 0x89, 0xa5, 0xfe, 0x9e, 0x81, 0xa3, 0x96, 0x01, 0xf8, 0xde, 0x03, 0x10, 0x46, 0xa1, 0x9f, 0xd4, - 0xbc, 0x05, 0x08, 0x2a, 0x6b, 0xf9, 0xbd, 0x07, 0xe0, 0xa5, 0xf1, 0xaf, 0xfe, 0xaa, 0x06, 0x16, - 0x36, 0x1c, 0x4b, 0xd3, 0x8b, 0x92, 0x85, 0x4d, 0x0b, 0xdb, 0x58, 0x27, 0x6b, 0x94, 0xb0, 0x65, - 0x19, 0x96, 0x64, 0x61, 0xdb, 0x34, 0x74, 0x1b, 0x27, 0xa4, 0xb2, 0x5d, 0x56, 0x4b, 0xa5, 0x03, - 0x49, 0x95, 0xf6, 0x9c, 0xfd, 0x92, 0x94, 0x37, 0x0a, 0x98, 0x48, 0x99, 0x7a, 0xef, 0x01, 0x98, - 0x1c, 0x9f, 0x38, 0xaa, 0x81, 0x38, 0x31, 0x14, 0xc9, 0xd8, 0x95, 0x18, 0xc0, 0xb0, 0x25, 0x4d, - 0x97, 0x54, 0xa9, 0xa8, 0x55, 0xb0, 0x4e, 0xe6, 0x23, 0x0f, 0x55, 0xbc, 0x8b, 0x43, 0x9b, 0xb0, - 0xbf, 0xa2, 0x2b, 0xac, 0x46, 0x79, 0xfc, 0xe7, 0x1c, 0x4d, 0xed, 0x36, 0x6e, 0x31, 0x42, 0x85, - 0x7f, 0x46, 0xd3, 0xb0, 0x4f, 0x2d, 0x14, 0x2c, 0x6c, 0xdb, 0xfc, 0x19, 0x87, 0x48, 0xb6, 0xae, - 0xfe, 0x5e, 0x81, 0xe0, 0x0d, 0x97, 0x00, 0x2d, 0xc3, 0x81, 0xbc, 0x61, 0x58, 0x05, 0x4d, 0x57, - 0x1d, 0x6c, 0xf3, 0x5c, 0xf2, 0x62, 0xd3, 0x1c, 0xa8, 0xd6, 0x95, 0x06, 0x99, 0xec, 0xe5, 0x41, - 0xdf, 0x81, 0xe7, 0xe9, 0xd3, 0xa2, 0x7d, 0xa3, 0xa0, 0xed, 0x6a, 0xf9, 0x86, 0x2b, 0xa4, 0xde, - 0x8e, 0x27, 0x92, 0x5d, 0xfc, 0x61, 0x36, 0x44, 0xa6, 0x27, 0x9f, 0x23, 0x42, 0x5e, 0xf7, 0xc8, - 0xa8, 0x13, 0xa0, 0x97, 0x78, 0x4d, 0xda, 0x31, 0xd8, 0x4b, 0x2a, 0x8e, 0xb9, 0x35, 0x33, 0x76, - 0x81, 0xae, 0xaf, 0x51, 0xaa, 0x95, 0x11, 0x21, 0xd8, 0x34, 0x36, 0xc8, 0x3f, 0x29, 0xd5, 0x9a, - 0x89, 0xfe, 0x10, 0x0a, 0x34, 0x50, 0xe8, 0xbb, 0x06, 0x4f, 0x26, 0xe7, 0x8f, 0xeb, 0x26, 0xfd, - 0x58, 0x58, 0x26, 0x91, 0x85, 0x7c, 0x42, 0x37, 0xe1, 0xd9, 0x92, 0x51, 0xb4, 0x15, 0xdb, 0xb1, - 0xb0, 0xba, 0x4f, 0x2e, 0x11, 0xaf, 0x96, 0x16, 0x78, 0xc3, 0xa9, 0x53, 0x66, 0x3f, 0x46, 0xd8, - 0x36, 0x5c, 0xae, 0x6b, 0x9c, 0x09, 0xdd, 0x80, 0x83, 0x25, 0xa3, 0xa8, 0xb8, 0xf0, 0xe5, 0xf8, - 0x15, 0xf0, 0xd5, 0x1e, 0x79, 0xa0, 0x64, 0x14, 0x65, 0xce, 0x88, 0x5e, 0x81, 0x01, 0xbb, 0xca, - 0xeb, 0xda, 0x97, 0xda, 0xb2, 0x6f, 0x35, 0xb9, 0x04, 0xe6, 0x74, 0x7e, 0x4d, 0x8e, 0x20, 0x60, - 0x57, 0xd1, 0xcb, 0x30, 0x60, 0xd8, 0xbc, 0x93, 0x34, 0xd5, 0x5e, 0xbf, 0xdf, 0x05, 0x78, 0xf9, - 0x0d, 0x1b, 0xdd, 0x05, 0x3c, 0x20, 0xc5, 0xe9, 0xf5, 0x5f, 0x7a, 0xe2, 0xeb, 0x5f, 0x0f, 0x2e, - 0xd9, 0x34, 0x45, 0xcf, 0xef, 0x33, 0xf4, 0x1c, 0xfb, 0x3e, 0x35, 0xe0, 0xf7, 0x41, 0x40, 0x9c, - 0xa2, 0x38, 0xfa, 0x7d, 0x82, 0xa3, 0xad, 0x60, 0xec, 0x73, 0xe0, 0x2d, 0x2a, 0xb2, 0x10, 0xf6, - 0xc7, 0x70, 0x84, 0x76, 0x8b, 0xe8, 0x2b, 0x2a, 0xb7, 0x52, 0x3f, 0x42, 0x27, 0x74, 0xa9, 0x9d, - 0x6d, 0xd3, 0x6e, 0x98, 0xbd, 0xb7, 0xb5, 0xb6, 0xce, 0x1e, 0x5e, 0xd1, 0x82, 0x7d, 0xf6, 0x3c, - 0xd1, 0x33, 0x78, 0x0f, 0xf4, 0x4f, 0xf7, 0x11, 0xbc, 0x9e, 0xf6, 0x21, 0xf6, 0xe1, 0x8a, 0x66, - 0x7a, 0x88, 0x89, 0x45, 0x14, 0x34, 0x0b, 0xe7, 0x1d, 0xb7, 0x97, 0xd6, 0xb0, 0x88, 0x68, 0xf7, - 0xd6, 0x31, 0x63, 0xe3, 0x5d, 0xa7, 0xba, 0x45, 0x7c, 0x17, 0x9e, 0x69, 0x92, 0xc7, 0xca, 0xe8, - 0x85, 0x58, 0x8c, 0x8a, 0x4b, 0xb4, 0xdd, 0xd8, 0x6b, 0x5e, 0x59, 0xcd, 0x41, 0x65, 0x15, 0xc8, - 0x51, 0x9f, 0xb2, 0xeb, 0x4c, 0x22, 0xda, 0x83, 0x51, 0x37, 0x77, 0xc9, 0x7b, 0x9a, 0x5f, 0xb1, - 0x4c, 0x97, 0x2e, 0xf5, 0x3a, 0x63, 0xe8, 0xac, 0x6a, 0xd4, 0xf4, 0x51, 0xb0, 0x76, 0xda, 0x5b, - 0x30, 0x56, 0xc0, 0xbb, 0x6a, 0xb9, 0xe4, 0x28, 0x3b, 0x25, 0x23, 0xff, 0x0e, 0x2e, 0xb8, 0x29, - 0xbf, 0xdd, 0xad, 0x8b, 0x90, 0x0d, 0x3f, 0x64, 0x9d, 0x98, 0x80, 0x7c, 0x86, 0xf3, 0x67, 0x19, - 0xbb, 0x0b, 0x03, 0xd0, 0x35, 0x88, 0xa8, 0x44, 0x45, 0x2d, 0x95, 0x1a, 0x32, 0x5f, 0xe8, 0x5a, - 0xe9, 0x11, 0x29, 0xc7, 0x72, 0xa9, 0x54, 0x97, 0xa2, 0x40, 0xb1, 0x65, 0x5e, 0x93, 0x6d, 0xf7, - 0x9b, 0xbe, 0x09, 0x4e, 0x36, 0xcd, 0xa2, 0xa5, 0xed, 0x1d, 0xd9, 0x69, 0x9a, 0x66, 0x19, 0x8e, - 0x1b, 0xbb, 0xbb, 0x25, 0x4d, 0xc7, 0x8a, 0x5d, 0xb6, 0x2a, 0x5a, 0x45, 0xdd, 0xd1, 0x4a, 0x9a, - 0x73, 0x40, 0xbc, 0x27, 0x8e, 0x3d, 0xdf, 0x25, 0x04, 0xbc, 0xc1, 0xd8, 0x36, 0xbc, 0x5c, 0xaf, - 0xbb, 0xcf, 0xc6, 0x58, 0x8b, 0x33, 0x66, 0x74, 0xa0, 0x41, 0xdf, 0x83, 0xcf, 0x78, 0x1e, 0xba, - 0xb9, 0xb5, 0x24, 0x9a, 0x24, 0x50, 0xc5, 0x97, 0xa9, 0xe2, 0xf6, 0x95, 0xe8, 0xf5, 0x06, 0xe3, - 0xf5, 0x06, 0x5f, 0x43, 0x35, 0xbd, 0xfa, 0xe3, 0x66, 0x47, 0x2a, 0x74, 0x09, 0x8a, 0x76, 0xb9, - 0x58, 0xc4, 0x36, 0xc9, 0x12, 0x55, 0xda, 0x32, 0x8e, 0x25, 0x19, 0xee, 0xae, 0x7f, 0x5f, 0xa6, - 0x9f, 0x49, 0xfe, 0x42, 0x63, 0xae, 0x52, 0xc0, 0x76, 0xde, 0xd2, 0xe8, 0x7b, 0xe5, 0xd8, 0x15, - 0x96, 0xbf, 0xd0, 0x81, 0x6b, 0x8d, 0xef, 0xe8, 0x15, 0x38, 0x40, 0xc3, 0x01, 0x1d, 0xb0, 0x63, - 0xb3, 0xf4, 0x7e, 0xc7, 0x3b, 0xbe, 0xa9, 0xb8, 0x4e, 0xc8, 0x64, 0x68, 0xbb, 0x3f, 0x6d, 0xf4, - 0x26, 0x14, 0xf9, 0xab, 0x69, 0x37, 0xe5, 0xc2, 0xb1, 0x39, 0x5a, 0x4c, 0x99, 0x6e, 0x2b, 0x85, - 0x59, 0xf9, 0x56, 0x9d, 0x85, 0x22, 0x70, 0x39, 0x52, 0xf1, 0x7f, 0x40, 0x2b, 0x10, 0xf2, 0x67, - 0x54, 0x05, 0xdd, 0x8e, 0xcd, 0xd3, 0xad, 0x6d, 0x3f, 0xad, 0x15, 0x4a, 0x76, 0xed, 0xe6, 0x46, - 0x36, 0x44, 0x0c, 0x5c, 0xee, 0x67, 0x7c, 0xd7, 0x74, 0x1b, 0x99, 0xb0, 0x8f, 0x85, 0x39, 0x3b, - 0xf6, 0x9f, 0x7d, 0x74, 0x65, 0x8b, 0xc7, 0x0a, 0x5a, 0x6d, 0x0a, 0x5a, 0xd9, 0xf3, 0x3c, 0x3e, - 0xd6, 0xab, 0x50, 0xaf, 0x7a, 0x1c, 0x99, 0xab, 0x06, 0x6d, 0xc3, 0xd1, 0x26, 0x8f, 0x43, 0x23, - 0xe6, 0x2f, 0xfb, 0xba, 0x3c, 0xfe, 0xf2, 0xf9, 0x1b, 0x12, 0x19, 0xe5, 0x91, 0x42, 0xf3, 0x27, - 0xf4, 0x1d, 0xd8, 0xef, 0xec, 0x72, 0x67, 0x1c, 0xfb, 0xaf, 0xbe, 0x63, 0x37, 0x77, 0xe3, 0xf7, - 0xef, 0x44, 0x69, 0xa8, 0x22, 0x86, 0xe5, 0x49, 0x12, 0xf8, 0x6a, 0x64, 0xc1, 0xd9, 0x65, 0x1e, - 0x18, 0x7d, 0x1b, 0x0e, 0xd1, 0x07, 0xee, 0xac, 0xd3, 0xa6, 0x96, 0x62, 0x9f, 0x1c, 0x5f, 0x4b, - 0xf4, 0xfe, 0x1d, 0x3f, 0x33, 0x95, 0x3d, 0x48, 0x3e, 0xad, 0xf1, 0x2f, 0xe8, 0x25, 0x48, 0xcd, - 0x86, 0x9b, 0xc8, 0xaf, 0xfa, 0xa8, 0x8d, 0x5c, 0x68, 0x17, 0x49, 0xdc, 0xc7, 0x3b, 0x58, 0xee, - 0xb7, 0xdd, 0x9f, 0xe3, 0x65, 0x88, 0x5a, 0x41, 0x6d, 0x9b, 0xdc, 0x69, 0xcd, 0x9b, 0x3b, 0x1d, - 0xb7, 0x31, 0xe4, 0xef, 0x66, 0x79, 0x12, 0xae, 0x13, 0x67, 0x6a, 0x4b, 0x3f, 0x06, 0x8f, 0x6a, - 0xe0, 0x5f, 0x00, 0x44, 0x70, 0x88, 0x00, 0x69, 0x37, 0xe1, 0xb7, 0x11, 0x48, 0xb9, 0xcd, 0x25, - 0x6f, 0xf6, 0x03, 0xd2, 0x50, 0xe2, 0x6f, 0x28, 0x78, 0xfd, 0x5a, 0x52, 0xf5, 0x82, 0x54, 0x4f, - 0x5f, 0x82, 0x0b, 0x89, 0x0c, 0x1c, 0x87, 0x51, 0x1e, 0x32, 0xfc, 0x0f, 0x2c, 0x02, 0xa9, 0xab, - 0xf0, 0x1c, 0x14, 0x5d, 0x34, 0x22, 0xb9, 0x19, 0x45, 0x6f, 0x6a, 0x2e, 0x91, 0x9a, 0x87, 0x17, - 0xa1, 0xb0, 0x5c, 0xa8, 0xd0, 0x22, 0x34, 0x1a, 0xcd, 0xcc, 0x24, 0x52, 0xe9, 0xc4, 0xd5, 0x44, - 0x26, 0x9d, 0xc8, 0x2c, 0x26, 0x66, 0xe7, 0x12, 0x73, 0xb3, 0x30, 0x06, 0xe1, 0x4a, 0xc9, 0x28, - 0x17, 0x24, 0x6a, 0x6a, 0x30, 0x95, 0x4a, 0xa4, 0x16, 0x12, 0xa9, 0x99, 0x99, 0x54, 0xf6, 0x12, - 0x8c, 0x52, 0x8c, 0x56, 0x2f, 0x17, 0x79, 0x6a, 0xd0, 0x43, 0x87, 0x35, 0x30, 0x48, 0xdf, 0x31, - 0xd0, 0x47, 0x0f, 0x97, 0xe1, 0x58, 0x93, 0xe9, 0x7b, 0xde, 0x48, 0x44, 0x0f, 0x6b, 0x60, 0xf4, - 0xa8, 0x06, 0x84, 0xf4, 0x4c, 0x62, 0x2e, 0x95, 0x48, 0xcf, 0x66, 0x13, 0xf0, 0x6c, 0x73, 0x94, - 0xf0, 0x0a, 0x7f, 0xe1, 0xb0, 0x06, 0x24, 0xda, 0x01, 0xbe, 0xca, 0xde, 0xdb, 0xa5, 0xc4, 0x74, - 0x2e, 0x24, 0xa4, 0xc5, 0x4c, 0x2e, 0x24, 0xcc, 0x88, 0xa9, 0x5c, 0x48, 0x18, 0x14, 0x87, 0x9a, - 0xde, 0xd8, 0xb1, 0xd7, 0x75, 0xac, 0x11, 0x7c, 0x56, 0x8c, 0x79, 0xdf, 0xd8, 0xd5, 0x9b, 0xc2, - 0xcf, 0x89, 0xcf, 0x4f, 0xfc, 0x38, 0x02, 0x87, 0x69, 0xf1, 0x00, 0xd7, 0xb3, 0xe8, 0xb7, 0x4e, - 0x2d, 0x8b, 0x6e, 0xce, 0x9f, 0xbf, 0x73, 0xda, 0xf9, 0x73, 0x4b, 0xe6, 0x7c, 0xf3, 0x34, 0x32, - 0x20, 0x4f, 0xee, 0xb3, 0x7d, 0x7a, 0x99, 0xb8, 0x3f, 0x07, 0x3f, 0x85, 0x44, 0xe9, 0xb4, 0x93, - 0x86, 0xb7, 0x4e, 0x9a, 0x34, 0x64, 0x23, 0xf7, 0xef, 0xf8, 0x58, 0x7f, 0xeb, 0xb2, 0x88, 0x9b, - 0x4f, 0x9a, 0x44, 0xf8, 0xaf, 0x44, 0x4b, 0x4d, 0x6b, 0xfd, 0x64, 0xb8, 0x73, 0x15, 0x9c, 0x22, - 0xde, 0x04, 0x6d, 0xf0, 0xe6, 0x37, 0x4e, 0x07, 0x6f, 0xae, 0x82, 0x56, 0xa4, 0x79, 0xc2, 0x84, - 0x24, 0xd0, 0x29, 0x21, 0x29, 0x9c, 0x66, 0x42, 0xb2, 0x1a, 0xe8, 0x90, 0x8a, 0xec, 0x9c, 0x62, - 0x2a, 0xb2, 0x1a, 0x68, 0x9f, 0x84, 0x18, 0x5f, 0x0a, 0x06, 0xef, 0x82, 0xbe, 0xcb, 0x5f, 0x1a, - 0xfa, 0xee, 0x8a, 0xbb, 0x4f, 0x03, 0x87, 0x9e, 0x1c, 0x44, 0x8c, 0x7c, 0xf8, 0x72, 0x53, 0xb9, - 0x37, 0x3b, 0xd3, 0x21, 0x22, 0xc7, 0xee, 0x7e, 0x06, 0xda, 0x8e, 0x64, 0xe7, 0x3b, 0x47, 0xda, - 0xf3, 0x77, 0x3f, 0x03, 0x9d, 0x06, 0xb3, 0xe9, 0x4e, 0x01, 0xfd, 0xdc, 0xdd, 0xcf, 0x40, 0xfb, - 0xa1, 0x7a, 0x6c, 0xf6, 0x46, 0x6b, 0xf6, 0xb0, 0x91, 0x35, 0x25, 0x58, 0xef, 0x98, 0x45, 0x6e, - 0xf6, 0x6a, 0xfe, 0xa2, 0x28, 0xd5, 0xa3, 0xb8, 0x37, 0x5a, 0x77, 0x8a, 0xe8, 0x8d, 0x28, 0xfe, - 0xc1, 0x30, 0x8c, 0xf0, 0xd7, 0x8f, 0xf5, 0x30, 0xae, 0xb4, 0x84, 0x71, 0xe6, 0x3f, 0x17, 0x9f, - 0x28, 0x8c, 0x7b, 0xde, 0x54, 0x3e, 0x8d, 0xe6, 0x4f, 0xa3, 0x39, 0x89, 0xe6, 0xa7, 0x5d, 0x9a, - 0x3a, 0xdd, 0x48, 0x00, 0x7e, 0x13, 0x91, 0xa0, 0x43, 0x39, 0xea, 0xa4, 0xb0, 0xe0, 0xcb, 0x2e, - 0x43, 0x9d, 0x16, 0x2c, 0x68, 0x53, 0x80, 0x7a, 0x1a, 0xfc, 0x8e, 0x1f, 0xfc, 0x96, 0x7e, 0x08, - 0x5a, 0x82, 0xd8, 0xa3, 0x1a, 0xf8, 0x3e, 0x1c, 0x6d, 0x4e, 0x8c, 0x03, 0xa9, 0xf9, 0x13, 0x67, - 0xc6, 0x51, 0x38, 0xcc, 0xee, 0x86, 0x9b, 0x18, 0xd3, 0x9c, 0x78, 0xdc, 0x93, 0xf8, 0x0e, 0xa7, - 0xd2, 0xde, 0x9c, 0xf7, 0x04, 0x71, 0xf4, 0x04, 0xf1, 0xf0, 0xa4, 0xb1, 0xb7, 0xfe, 0xd6, 0xea, - 0xf8, 0xd1, 0x94, 0x45, 0x50, 0x16, 0x53, 0x9f, 0x2c, 0x1b, 0xfe, 0xc7, 0x18, 0x1c, 0xb8, 0x81, - 0x9d, 0xa7, 0xa9, 0xf0, 0x6f, 0x32, 0x78, 0x2e, 0x3d, 0xb6, 0x1d, 0xdd, 0xb9, 0xf1, 0xbc, 0xf8, - 0xb8, 0xc6, 0x73, 0xc7, 0x16, 0xf3, 0xfd, 0x8e, 0x2d, 0xe6, 0x57, 0x8f, 0xd1, 0x63, 0x6a, 0xd8, - 0x48, 0xbb, 0xfe, 0xf2, 0xbf, 0xfe, 0xbe, 0x35, 0x96, 0x37, 0x4e, 0xaf, 0x7a, 0xdc, 0x28, 0x10, - 0x9f, 0x02, 0x68, 0xfa, 0xe6, 0x17, 0xec, 0x15, 0x77, 0xeb, 0x12, 0xff, 0x0e, 0xb4, 0x79, 0xbf, - 0x3c, 0x8c, 0xb7, 0x79, 0x1a, 0x1d, 0xcf, 0x96, 0xa6, 0xe6, 0xd7, 0x7c, 0x65, 0x98, 0x85, 0x27, - 0xbb, 0x67, 0xcd, 0x35, 0x98, 0x2f, 0x56, 0x44, 0x7f, 0x8a, 0x62, 0x3b, 0xa2, 0xd8, 0x2f, 0xad, - 0x71, 0xf3, 0x14, 0x1e, 0xff, 0xde, 0xc2, 0xe3, 0xa7, 0x3d, 0xd9, 0x13, 0xd4, 0xc2, 0x7e, 0xd7, - 0xfa, 0x78, 0xd1, 0x96, 0xec, 0xe5, 0x93, 0x97, 0xc1, 0x6f, 0x7d, 0xf6, 0xd0, 0x9a, 0x37, 0xb0, - 0x5c, 0x81, 0xe5, 0x07, 0xde, 0x8c, 0xc1, 0xfb, 0x1f, 0x19, 0x1f, 0x33, 0x63, 0x98, 0x4e, 0xc0, - 0x21, 0xdf, 0x7f, 0x06, 0x81, 0xfa, 0x60, 0x70, 0xf5, 0xcd, 0xac, 0xd8, 0x83, 0x06, 0xa1, 0xb0, - 0x71, 0x5d, 0xde, 0x5a, 0x5b, 0xb9, 0xbe, 0x21, 0x82, 0x71, 0x72, 0xf8, 0x3d, 0xd9, 0x1f, 0x82, - 0xc3, 0x5f, 0xc4, 0x7b, 0x3e, 0xfa, 0x45, 0xbc, 0xe7, 0xd7, 0xbf, 0x88, 0x83, 0x77, 0x8f, 0xe2, - 0xe0, 0xef, 0x8f, 0xe2, 0xe0, 0x27, 0x47, 0x71, 0x70, 0x78, 0x14, 0x07, 0x1f, 0x1d, 0xc5, 0xc1, - 0xcf, 0x8f, 0xe2, 0xe0, 0x93, 0xa3, 0x78, 0xcf, 0xaf, 0x8f, 0xe2, 0xe0, 0x07, 0x1f, 0xc7, 0x7b, - 0x1e, 0x7e, 0x1c, 0x07, 0x87, 0x1f, 0xc7, 0x7b, 0x3e, 0xfa, 0x38, 0xde, 0xf3, 0xcd, 0xad, 0xa2, - 0x61, 0xbe, 0x53, 0x4c, 0xba, 0x60, 0x38, 0x59, 0xb6, 0xaf, 0xd4, 0x1b, 0xda, 0x97, 0x4d, 0xcb, - 0xa8, 0x68, 0x05, 0x6c, 0x5d, 0x76, 0x87, 0xaf, 0x98, 0x3b, 0x45, 0xe3, 0x0a, 0xbe, 0xe5, 0xb8, - 0xff, 0x33, 0xb8, 0x4e, 0xff, 0x1b, 0xbd, 0x9d, 0x30, 0x45, 0x46, 0x99, 0xff, 0x0f, 0x00, 0x00, - 0xff, 0xff, 0xcf, 0x1e, 0x05, 0xea, 0x71, 0x4f, 0x00, 0x00, + // 5724 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7c, 0x5d, 0x6c, 0x1b, 0xd9, + 0x75, 0xbf, 0x2e, 0x49, 0x51, 0xa3, 0xab, 0x0f, 0x8e, 0xae, 0x28, 0x79, 0x2c, 0xaf, 0x65, 0x46, + 0xeb, 0xdd, 0x95, 0x65, 0x9a, 0x16, 0xa9, 0x4f, 0x2b, 0xff, 0xfd, 0x10, 0x65, 0xaf, 0x25, 0x26, + 0xeb, 0xd5, 0x7f, 0xa4, 0x95, 0x36, 0xd9, 0x26, 0x93, 0x11, 0xe7, 0x8a, 0x9a, 0x98, 0x9a, 0x99, + 0xce, 0x0c, 0x49, 0xcb, 0xa9, 0xd1, 0x85, 0xfb, 0x50, 0x60, 0x81, 0x02, 0xa9, 0xd1, 0x02, 0xc5, + 0x22, 0x0f, 0x6d, 0x1f, 0x8a, 0xc2, 0x4f, 0x29, 0x5a, 0xf4, 0x21, 0x34, 0x50, 0xd7, 0x40, 0x82, + 0x60, 0x5f, 0xaa, 0x87, 0xb6, 0x58, 0xe4, 0x29, 0xd1, 0x02, 0xed, 0x26, 0x7d, 0xc9, 0x43, 0x0b, + 0x6c, 0xfd, 0xd0, 0x2d, 0xee, 0xc7, 0x90, 0x33, 0xfc, 0x90, 0x65, 0x45, 0x0e, 0x36, 0xa9, 0x5f, + 0x6c, 0xf2, 0xde, 0x73, 0xce, 0xfd, 0x3a, 0xf7, 0x9c, 0xf3, 0x3b, 0xe7, 0x52, 0x30, 0x59, 0xc6, + 0x4e, 0x4a, 0x37, 0x2f, 0x3b, 0xf9, 0x1d, 0xbc, 0xab, 0x5e, 0x2e, 0xeb, 0xb8, 0xe2, 0x5c, 0x56, + 0x2b, 0x8e, 0xe2, 0x16, 0x2a, 0x8a, 0xa3, 0xbb, 0xf8, 0xb2, 0xbb, 0x67, 0x61, 0x27, 0x65, 0xd9, + 0xa6, 0x6b, 0xa2, 0x04, 0xa3, 0x4e, 0x31, 0xea, 0x14, 0xa5, 0x4e, 0xf9, 0xa9, 0x47, 0x2e, 0x15, + 0x74, 0x77, 0xa7, 0xb4, 0x95, 0xca, 0x9b, 0xbb, 0x97, 0x0b, 0x66, 0xc1, 0xbc, 0x4c, 0x19, 0xb7, + 0x4a, 0xdb, 0xf4, 0x1b, 0xfd, 0x42, 0x3f, 0x31, 0x81, 0x23, 0xe7, 0x0a, 0xa6, 0x59, 0x28, 0xe2, + 0x3a, 0x95, 0xab, 0xef, 0x62, 0xc7, 0x55, 0x77, 0x2d, 0x4e, 0xf0, 0x4a, 0x70, 0x7e, 0xf9, 0xa2, + 0x59, 0xd2, 0x94, 0xbc, 0x69, 0x18, 0x38, 0xef, 0xfa, 0xa7, 0x36, 0x72, 0x2e, 0x48, 0xb8, 0x5d, + 0xc4, 0x38, 0x48, 0x30, 0x11, 0x24, 0x30, 0xb0, 0x5b, 0x31, 0xed, 0x9b, 0xca, 0xb6, 0x6e, 0xe3, + 0x8a, 0x5a, 0x2c, 0x06, 0x68, 0xcf, 0x04, 0x69, 0x4d, 0xcb, 0xd5, 0x4d, 0xc3, 0xeb, 0x1c, 0x0d, + 0x76, 0x36, 0x6e, 0xd2, 0xc8, 0xe9, 0x60, 0xbf, 0xbf, 0xeb, 0x85, 0x86, 0xdd, 0x56, 0x8b, 0xba, + 0xa6, 0xba, 0x98, 0xf7, 0x26, 0x9a, 0xcf, 0x42, 0x09, 0x0e, 0x7d, 0xbe, 0xd5, 0x69, 0x91, 0x09, + 0x28, 0x87, 0x6c, 0x05, 0xa3, 0xf2, 0x11, 0x8c, 0x55, 0x20, 0x5a, 0xbf, 0xbe, 0xb9, 0xe8, 0x38, + 0x7a, 0xc1, 0xc0, 0xda, 0xe2, 0xda, 0x8d, 0xf5, 0x3d, 0x0b, 0xa3, 0x71, 0xd8, 0x45, 0x8e, 0x51, + 0x75, 0x0c, 0x09, 0x24, 0xc0, 0x78, 0x5f, 0x36, 0xf6, 0x83, 0x9f, 0x3f, 0x0c, 0xc3, 0x09, 0x41, + 0xfa, 0x9f, 0xcf, 0xc3, 0x89, 0xf7, 0x3f, 0x0b, 0xcb, 0x51, 0xb7, 0x50, 0x59, 0x74, 0x0c, 0x34, + 0x07, 0x07, 0xca, 0x66, 0xd1, 0xc5, 0xb6, 0xad, 0xd2, 0x53, 0xa7, 0x3c, 0x21, 0xca, 0xd3, 0x43, + 0x78, 0xa2, 0x13, 0x11, 0xe9, 0xf3, 0xcf, 0xc3, 0x72, 0xcc, 0xa3, 0x5a, 0xd3, 0x5d, 0xbc, 0xe8, + 0x18, 0x63, 0xff, 0x02, 0x60, 0xec, 0xda, 0x2d, 0xdd, 0x71, 0x75, 0xa3, 0xb0, 0x7e, 0x7d, 0x93, + 0x0e, 0x9b, 0x87, 0x44, 0xac, 0xa2, 0x6b, 0x74, 0xd4, 0xee, 0xec, 0x57, 0x3f, 0xab, 0x82, 0x8e, + 0x1f, 0x3c, 0x00, 0xa2, 0x00, 0x26, 0xc1, 0x02, 0xa4, 0x27, 0x7e, 0x49, 0x53, 0x5d, 0x95, 0x48, + 0x8e, 0xd8, 0x21, 0xe9, 0x0d, 0xf2, 0xe1, 0x65, 0xfb, 0x7c, 0x66, 0xec, 0x9b, 0xe3, 0x6e, 0xa1, + 0x72, 0xe9, 0xc2, 0xf8, 0x7b, 0xea, 0xa5, 0xdb, 0x93, 0x97, 0xae, 0x7c, 0xe3, 0x3b, 0xf3, 0x77, + 0x7e, 0xaf, 0xf6, 0x39, 0x3d, 0x77, 0xe7, 0xc2, 0x79, 0xb9, 0xd3, 0x2d, 0x54, 0x56, 0x34, 0x74, + 0xbe, 0xbe, 0xb6, 0x16, 0xf3, 0x3c, 0x74, 0x5d, 0xe1, 0x23, 0xac, 0xeb, 0x9f, 0x01, 0xec, 0x5b, + 0xbf, 0xbe, 0xb9, 0xaa, 0xda, 0xea, 0xae, 0x43, 0x57, 0xb5, 0x08, 0x45, 0x67, 0xcf, 0x71, 0xf1, + 0xae, 0x52, 0xc0, 0x06, 0xb6, 0x55, 0x17, 0x6b, 0x74, 0xe4, 0x9e, 0x4c, 0x3c, 0x15, 0xbc, 0x44, + 0xd7, 0x76, 0x2d, 0x77, 0x6f, 0xb9, 0x43, 0x8e, 0x31, 0xfa, 0xeb, 0x1e, 0x39, 0x7a, 0x0f, 0xf6, + 0x95, 0x1c, 0x6c, 0x2b, 0x2a, 0x3f, 0x27, 0x3a, 0x93, 0x9e, 0xcc, 0x74, 0xea, 0x49, 0x97, 0x30, + 0xd5, 0x7c, 0xb8, 0xcb, 0x1d, 0x72, 0x2f, 0x11, 0xe6, 0x35, 0x67, 0xcf, 0x42, 0xa8, 0x3a, 0x86, + 0x92, 0xdf, 0x31, 0xf5, 0x3c, 0x46, 0xb1, 0x87, 0x55, 0x10, 0xda, 0xaf, 0x02, 0x70, 0x50, 0x05, + 0xe1, 0x4c, 0x72, 0x2a, 0x17, 0x11, 0x80, 0x18, 0x1a, 0xfb, 0xd7, 0x18, 0x8c, 0xad, 0x61, 0xbb, + 0xac, 0xe7, 0xb1, 0xb3, 0xb1, 0xba, 0x44, 0x17, 0x36, 0x05, 0x21, 0x19, 0xcb, 0xc6, 0x05, 0xdd, + 0x34, 0xf8, 0x91, 0xc5, 0xf9, 0x91, 0xf5, 0x8e, 0x93, 0x23, 0x8b, 0xe6, 0x4d, 0x63, 0x5b, 0x2f, + 0xc8, 0xdd, 0x6a, 0xc5, 0x91, 0x29, 0x19, 0x7a, 0x13, 0x76, 0x19, 0xb8, 0xa2, 0x94, 0xad, 0x3c, + 0x5f, 0xc4, 0x4b, 0x2d, 0x17, 0xb1, 0xb8, 0xb9, 0xb6, 0xb1, 0xba, 0x54, 0xdf, 0xc5, 0x6c, 0xe4, + 0xfb, 0x0f, 0x00, 0x58, 0xee, 0x90, 0xa3, 0x06, 0xae, 0x6c, 0x58, 0x79, 0xa2, 0x2b, 0x65, 0x2b, + 0x4f, 0x74, 0x25, 0x42, 0x07, 0xce, 0xf1, 0x81, 0xfb, 0x9f, 0xac, 0x29, 0x65, 0x2b, 0x7f, 0xa8, + 0xa6, 0x2c, 0x77, 0xc8, 0x9d, 0x65, 0x2b, 0xbf, 0xa2, 0xa1, 0x1c, 0x9b, 0xac, 0x5b, 0xa8, 0x48, + 0x51, 0x3a, 0xd9, 0xcb, 0x47, 0xda, 0xf1, 0xfa, 0xb4, 0x97, 0x01, 0x9d, 0xf0, 0x7a, 0xa1, 0x82, + 0x36, 0x60, 0x2f, 0xe6, 0xfa, 0x4e, 0x05, 0x76, 0x51, 0x81, 0xe9, 0x27, 0x0b, 0x6c, 0xb8, 0x25, + 0xcb, 0x40, 0xee, 0xf1, 0x04, 0x11, 0xb9, 0x93, 0x50, 0x24, 0xe4, 0x79, 0x6c, 0xbb, 0xfa, 0xb6, + 0x8e, 0x35, 0x65, 0xa7, 0x22, 0x09, 0x74, 0x4b, 0xa2, 0x9f, 0x56, 0x01, 0x90, 0x80, 0xdc, 0xaf, + 0x56, 0x9c, 0x25, 0xaf, 0x7b, 0xb9, 0x82, 0xfe, 0x03, 0xc0, 0x3e, 0xdd, 0x70, 0x5c, 0xd5, 0xc8, + 0x33, 0x6b, 0x21, 0x75, 0x53, 0xfa, 0x1f, 0x82, 0x9f, 0x54, 0x41, 0xb7, 0x3b, 0x95, 0xba, 0x55, + 0x54, 0xed, 0x02, 0x26, 0x1b, 0x7a, 0xef, 0x01, 0xf8, 0x2b, 0x00, 0xa7, 0x61, 0xbd, 0x15, 0xbd, + 0x32, 0x3e, 0x9d, 0xb8, 0x95, 0x28, 0x2f, 0xad, 0xbe, 0x93, 0x4c, 0xa4, 0x67, 0xaf, 0x67, 0x13, + 0xf2, 0xe2, 0x5b, 0x17, 0x12, 0xbb, 0x58, 0xd3, 0x4b, 0xbb, 0x09, 0x0b, 0xdb, 0xdb, 0xa6, 0xbd, + 0x4b, 0x24, 0xc3, 0x29, 0x08, 0xdd, 0xa9, 0x54, 0x86, 0xb3, 0xbd, 0x34, 0x3e, 0x5f, 0x63, 0x9b, + 0xca, 0x78, 0x6c, 0x3b, 0x7a, 0x61, 0x27, 0xc0, 0x74, 0x05, 0xc2, 0xdd, 0x99, 0xd4, 0x34, 0x67, + 0xba, 0x38, 0x9e, 0x9e, 0xad, 0x71, 0xcd, 0x4e, 0x7b, 0x5c, 0x65, 0x6c, 0xef, 0x35, 0xb1, 0xd6, + 0x4e, 0x5a, 0xee, 0xf5, 0x16, 0x47, 0xb5, 0xf4, 0x02, 0xec, 0x72, 0x9c, 0x1d, 0xe5, 0x26, 0xde, + 0x93, 0x20, 0x5d, 0xa6, 0xf8, 0x59, 0x15, 0x84, 0x09, 0x75, 0x97, 0xdd, 0x29, 0x02, 0xe9, 0xfd, + 0x37, 0xe4, 0xa8, 0xe3, 0xec, 0x7c, 0x05, 0xef, 0xa1, 0xaf, 0x41, 0x41, 0xbd, 0xad, 0x18, 0xa6, + 0x86, 0x1d, 0xa9, 0x27, 0x11, 0x6e, 0x7b, 0xde, 0x4c, 0x39, 0xd7, 0x2b, 0xe6, 0x8a, 0xe1, 0x62, + 0x7b, 0x5b, 0xcd, 0xe3, 0x1b, 0xa6, 0x46, 0x47, 0xcb, 0xf6, 0x11, 0xc1, 0xc2, 0x3d, 0xd0, 0x39, + 0x11, 0x4e, 0x27, 0xa7, 0xe4, 0x2e, 0xf5, 0x36, 0xe9, 0x72, 0xd0, 0x2c, 0xec, 0xa5, 0x72, 0x15, + 0x8b, 0x5c, 0xe3, 0xdb, 0x52, 0x2f, 0x35, 0x25, 0xe8, 0x27, 0x55, 0x00, 0x26, 0xa9, 0xe6, 0x92, + 0xd9, 0x4f, 0x84, 0xa4, 0xa1, 0xe5, 0x90, 0x0c, 0x29, 0xe5, 0x2a, 0xb6, 0x17, 0x6f, 0xa3, 0x19, + 0xd8, 0xe3, 0x9a, 0xae, 0x5a, 0xe4, 0xb3, 0x3a, 0xd3, 0x86, 0xed, 0x55, 0xc2, 0x46, 0x09, 0xd9, + 0x70, 0xaf, 0xc1, 0x98, 0x61, 0x2a, 0xc4, 0xab, 0x61, 0x9b, 0xb3, 0xbe, 0x70, 0x88, 0xc9, 0x09, + 0xc9, 0x7d, 0x86, 0xb9, 0x49, 0xa9, 0x19, 0x7f, 0x06, 0x76, 0x6b, 0xba, 0x73, 0x53, 0x71, 0xf4, + 0xdb, 0x58, 0x1a, 0xa6, 0x83, 0x0e, 0xfd, 0xa4, 0x0a, 0x42, 0xf3, 0xb5, 0x51, 0x89, 0x01, 0x7c, + 0xff, 0x3f, 0xc3, 0xb2, 0x40, 0xe8, 0xd6, 0xf4, 0xdb, 0x18, 0x15, 0xa0, 0x40, 0x15, 0xd1, 0xc6, + 0x9a, 0xd4, 0x4f, 0x07, 0x1b, 0x6b, 0xb9, 0x7b, 0x6f, 0x6f, 0x7d, 0x1b, 0xe7, 0x5d, 0x19, 0x6f, + 0xd3, 0x0d, 0x7b, 0xf9, 0xfe, 0x9d, 0x01, 0xee, 0xca, 0x6d, 0xac, 0x61, 0xc3, 0xd5, 0xd5, 0xa2, + 0x43, 0xee, 0xb1, 0x00, 0xfc, 0x26, 0x64, 0x39, 0x2c, 0x77, 0x11, 0x35, 0xb6, 0xb1, 0x86, 0x5e, + 0x85, 0x02, 0x31, 0x84, 0x0e, 0x31, 0xa4, 0xb1, 0xf6, 0xab, 0xca, 0x76, 0x7f, 0x7c, 0x07, 0xb0, + 0x2b, 0xb0, 0x1c, 0x96, 0x6b, 0x2c, 0x68, 0x19, 0xc6, 0x35, 0xdd, 0x51, 0xb7, 0x8a, 0x58, 0xd1, + 0xc9, 0xf9, 0x19, 0xd8, 0x55, 0xca, 0xba, 0x25, 0x9d, 0x3b, 0x64, 0x83, 0x22, 0x32, 0xe2, 0x3c, + 0x2b, 0x9c, 0x65, 0x43, 0xb7, 0xd0, 0x9b, 0x70, 0x10, 0x1b, 0xcd, 0x82, 0xbe, 0x74, 0xa8, 0xa0, + 0x01, 0xc6, 0xd2, 0x20, 0x67, 0x7b, 0xe6, 0x56, 0x5e, 0x71, 0x70, 0xbe, 0x64, 0xeb, 0xee, 0x9e, + 0x52, 0xb0, 0xcd, 0x92, 0x25, 0xbd, 0x78, 0x88, 0x9c, 0x4e, 0x79, 0x80, 0xb0, 0xac, 0x71, 0x8e, + 0xeb, 0x84, 0x01, 0xfd, 0x0e, 0x1c, 0xca, 0x97, 0x1c, 0xd7, 0xdc, 0x6d, 0x94, 0x74, 0x9e, 0x4a, + 0x7a, 0xb9, 0xe5, 0x71, 0x04, 0x44, 0x50, 0x03, 0xd3, 0x29, 0x0f, 0x32, 0x31, 0x81, 0xae, 0x85, + 0xbf, 0x00, 0x8f, 0xaa, 0xe0, 0x7b, 0x00, 0x0e, 0xc1, 0xd8, 0xe2, 0xe6, 0x5a, 0x62, 0xa9, 0x7e, + 0x5c, 0x28, 0x94, 0x9e, 0x82, 0xe7, 0xe0, 0x10, 0x33, 0xf1, 0x89, 0x97, 0x13, 0x9e, 0xa7, 0x48, + 0x6c, 0xac, 0x2e, 0xa1, 0x68, 0x3a, 0x99, 0x49, 0x4e, 0x4d, 0xc3, 0x38, 0x8c, 0xad, 0xdb, 0xaa, + 0xe1, 0xe8, 0x6e, 0xe2, 0xba, 0xea, 0xe2, 0x8a, 0xba, 0x87, 0xc0, 0x0c, 0x1c, 0x83, 0x71, 0xe2, + 0x3a, 0x13, 0x44, 0xef, 0x12, 0xd4, 0x70, 0x62, 0x17, 0xdb, 0x0e, 0x82, 0x57, 0x92, 0xe9, 0x74, + 0x32, 0x93, 0x49, 0xa6, 0x27, 0x21, 0x82, 0xbd, 0x4c, 0x39, 0x13, 0x4c, 0x3b, 0x43, 0x99, 0x2b, + 0x30, 0x0e, 0xfb, 0x17, 0xb5, 0x32, 0xb1, 0x6a, 0x0e, 0x4e, 0x6c, 0xac, 0xac, 0x3a, 0x28, 0x34, + 0x35, 0x99, 0x7d, 0x09, 0x22, 0x87, 0x8d, 0x4d, 0x3c, 0x8c, 0xdf, 0xa7, 0x85, 0xf7, 0xab, 0x20, + 0x44, 0x7c, 0xda, 0x54, 0x72, 0x9a, 0xb8, 0x3c, 0x62, 0x5e, 0x7d, 0xdd, 0xd1, 0xfd, 0x2a, 0xe8, + 0x24, 0xdd, 0xb3, 0xc9, 0xb9, 0xec, 0x79, 0xd8, 0xeb, 0xbf, 0x3a, 0x28, 0xfe, 0xb0, 0x0a, 0x5e, + 0xd8, 0xaf, 0x82, 0xb3, 0x07, 0x55, 0x20, 0xa4, 0x33, 0xc9, 0xcc, 0x5c, 0x32, 0x33, 0x9f, 0x4d, + 0x40, 0xa8, 0x61, 0xab, 0x68, 0xee, 0xed, 0x62, 0xc3, 0x45, 0xe8, 0x61, 0x15, 0xf4, 0xef, 0x57, + 0x41, 0xdf, 0x41, 0x15, 0x84, 0xd2, 0xd3, 0x7f, 0xfe, 0x00, 0x80, 0xec, 0x38, 0x1c, 0xf4, 0x2b, + 0x86, 0x37, 0xde, 0xc0, 0xc3, 0x2a, 0x38, 0xb7, 0x5f, 0x05, 0xa3, 0x07, 0x55, 0xd0, 0x39, 0x95, + 0x4e, 0x4e, 0x4d, 0x65, 0x27, 0xe0, 0x50, 0xf0, 0xc8, 0xfc, 0xb4, 0x2f, 0xee, 0x57, 0xc1, 0x18, + 0xa5, 0x9d, 0x49, 0x4e, 0xcd, 0xe6, 0x22, 0x42, 0x48, 0x0c, 0xe7, 0x22, 0x42, 0xa7, 0x18, 0xcd, + 0x45, 0x84, 0xb3, 0xe2, 0x68, 0x2e, 0x22, 0xf4, 0x89, 0xfd, 0xb9, 0x88, 0x20, 0x8a, 0x03, 0xb9, + 0x88, 0x30, 0x20, 0xa2, 0x5c, 0x44, 0x40, 0xe2, 0x60, 0x2e, 0x22, 0x0c, 0x8a, 0xf1, 0x5c, 0x44, + 0x88, 0x8b, 0x43, 0xb9, 0x88, 0x30, 0x24, 0x0e, 0xe7, 0x22, 0xc2, 0xa8, 0x78, 0x2e, 0x17, 0x11, + 0x12, 0xe2, 0x97, 0x72, 0x11, 0x61, 0x4c, 0x7c, 0x71, 0xec, 0x7e, 0x2f, 0x8c, 0x6d, 0x18, 0x4b, + 0xf4, 0x92, 0x95, 0x6c, 0x95, 0x84, 0x98, 0xe8, 0x2d, 0x78, 0xca, 0x30, 0x15, 0xdd, 0x70, 0x74, + 0x0d, 0x2b, 0x8e, 0xab, 0xba, 0x7a, 0x5e, 0xb1, 0xcd, 0x92, 0x8b, 0x9d, 0x27, 0x04, 0x2e, 0x71, + 0xc3, 0x5c, 0xa1, 0x5c, 0x6b, 0x94, 0x49, 0xa6, 0x3c, 0xa8, 0x00, 0xe3, 0x2d, 0x65, 0x31, 0xff, + 0x7f, 0xa9, 0xb5, 0x56, 0xea, 0x6e, 0x40, 0xc8, 0x57, 0x75, 0xc7, 0x0d, 0xc4, 0x01, 0x48, 0x6f, + 0x1e, 0xe8, 0x6d, 0x28, 0x19, 0xa6, 0x62, 0x96, 0xdc, 0x16, 0x83, 0x75, 0x1e, 0x32, 0x71, 0x20, + 0x0f, 0x19, 0xe6, 0xdb, 0x8c, 0x2d, 0x20, 0x50, 0x87, 0x43, 0xad, 0xa5, 0x45, 0x8f, 0x3f, 0x75, + 0x20, 0x0f, 0x9a, 0x2d, 0x86, 0xca, 0xc2, 0x01, 0xc3, 0x54, 0x0a, 0x45, 0x73, 0x8b, 0x18, 0x7b, + 0x86, 0x48, 0xa8, 0x1f, 0x6f, 0x6f, 0xb3, 0x63, 0x86, 0x79, 0x9d, 0xd2, 0xdf, 0x60, 0xe4, 0xa8, + 0x08, 0x07, 0x83, 0x02, 0x94, 0xa2, 0xee, 0xb8, 0xd4, 0xbb, 0xb7, 0x0b, 0x16, 0x03, 0x02, 0x96, + 0x18, 0x98, 0xd2, 0x4d, 0xa3, 0x61, 0xce, 0x21, 0x79, 0xa0, 0xe0, 0x27, 0x24, 0xdd, 0xe8, 0x1a, + 0x1c, 0x34, 0x4c, 0x45, 0xcb, 0x2b, 0xf9, 0x62, 0xc9, 0x71, 0xb1, 0xcd, 0x6d, 0x4d, 0xef, 0x21, + 0x73, 0x0e, 0xcb, 0xa2, 0x61, 0x5e, 0xcd, 0x2f, 0x31, 0x06, 0x66, 0xb4, 0x2a, 0xf0, 0x4c, 0xa3, + 0x8c, 0xda, 0x11, 0x96, 0x0d, 0xa9, 0xef, 0xc8, 0x9e, 0x64, 0xf0, 0xfe, 0x1d, 0xb1, 0x51, 0xd2, + 0x72, 0x58, 0x3e, 0xa5, 0x05, 0xc6, 0xe3, 0xc7, 0xbc, 0x61, 0xa0, 0x12, 0x1c, 0x69, 0x1a, 0x98, + 0xeb, 0x69, 0xd9, 0x78, 0x0a, 0x0f, 0xd6, 0x66, 0xdc, 0xe1, 0xe0, 0xb8, 0xec, 0x5e, 0x6c, 0xd0, + 0xcb, 0xe5, 0xec, 0x7a, 0xb8, 0x55, 0x37, 0x0d, 0xc5, 0x2a, 0x6d, 0x15, 0xf5, 0xbc, 0xa2, 0x5b, + 0x92, 0x78, 0xa8, 0xe3, 0x88, 0x3b, 0xbb, 0xf5, 0x03, 0x5a, 0xa5, 0x4c, 0x2b, 0x16, 0xba, 0x0e, + 0xe3, 0x0d, 0xe2, 0xca, 0x2e, 0x91, 0x35, 0x70, 0xb8, 0x13, 0x0a, 0xc8, 0x2a, 0xbb, 0x2b, 0x16, + 0x5a, 0x87, 0xa2, 0x5a, 0x2c, 0x9a, 0x15, 0xac, 0x51, 0x5b, 0x65, 0x99, 0xb6, 0x4b, 0x03, 0xa6, + 0x9e, 0xcc, 0xf9, 0xd6, 0x41, 0x10, 0x23, 0xde, 0x58, 0x59, 0x5d, 0x35, 0x6d, 0xd7, 0x61, 0x9a, + 0x22, 0xf7, 0x73, 0x19, 0x1b, 0xba, 0x45, 0x9a, 0xd1, 0x7b, 0x30, 0xde, 0x28, 0x55, 0x71, 0x8a, + 0xba, 0x84, 0x9e, 0x5a, 0xf2, 0x40, 0x50, 0xf2, 0x5a, 0x51, 0x5f, 0x78, 0xf7, 0x51, 0x15, 0xac, + 0xc3, 0xf3, 0xf0, 0x34, 0xf5, 0x20, 0xeb, 0x66, 0x82, 0xfe, 0xef, 0x2d, 0xac, 0xac, 0xbb, 0x7b, + 0xa8, 0x6b, 0x2e, 0x99, 0x9e, 0x49, 0xa6, 0xd3, 0x30, 0x0e, 0xfb, 0xd8, 0x7d, 0x4b, 0xf0, 0x0b, + 0x17, 0x4e, 0x27, 0xa7, 0xe1, 0x30, 0xec, 0xe3, 0xa3, 0x25, 0xe8, 0x58, 0xa8, 0x33, 0x3d, 0x99, + 0x4c, 0xcf, 0x67, 0x2f, 0xc1, 0x91, 0x16, 0x26, 0xab, 0x1d, 0x46, 0xca, 0xa6, 0xe0, 0x99, 0x56, + 0x76, 0xc2, 0x4f, 0xdf, 0xb9, 0x5f, 0x05, 0x11, 0x42, 0x3f, 0x93, 0x9c, 0xcd, 0x8e, 0xc3, 0xa1, + 0x86, 0x8b, 0xea, 0xa3, 0x14, 0xf6, 0xab, 0xa0, 0x8b, 0x50, 0xce, 0x27, 0xaf, 0x64, 0x2f, 0xc3, + 0x53, 0x4d, 0x4a, 0xca, 0x69, 0x89, 0x57, 0xea, 0xdd, 0xaf, 0x82, 0x1e, 0xee, 0x95, 0xd2, 0x53, + 0xc9, 0xf4, 0x74, 0xf6, 0x22, 0x1c, 0xa6, 0x78, 0x75, 0x17, 0x3b, 0x3b, 0xcd, 0xae, 0x44, 0xdc, + 0xaf, 0x82, 0x18, 0x71, 0x25, 0xe9, 0xd9, 0x64, 0x7a, 0x8e, 0x61, 0xbb, 0x5c, 0x44, 0x88, 0x88, + 0x9d, 0xb9, 0x88, 0xd0, 0x25, 0x0a, 0xb9, 0x88, 0xd0, 0x23, 0xf6, 0xe6, 0x22, 0x42, 0x4c, 0x14, + 0x9b, 0xdd, 0xc7, 0xd8, 0x7f, 0xc7, 0xe0, 0xb0, 0x0f, 0x05, 0xca, 0xd8, 0x2a, 0xaa, 0x3c, 0xcc, + 0x7e, 0x0e, 0x06, 0xbf, 0x08, 0x60, 0xf0, 0xff, 0x16, 0xb4, 0x7b, 0x86, 0x78, 0xed, 0xd9, 0x82, + 0x99, 0xd0, 0xaf, 0x04, 0x66, 0x42, 0x3e, 0x30, 0xf3, 0x14, 0xe8, 0xf6, 0x38, 0x98, 0x6e, 0xbe, + 0x25, 0x6c, 0x8d, 0x13, 0xfc, 0x99, 0xf6, 0x73, 0x0d, 0x8d, 0x13, 0x8c, 0xe5, 0x07, 0xae, 0x73, + 0xad, 0x80, 0x6b, 0x33, 0xe3, 0xab, 0x8c, 0xf1, 0xf8, 0xd0, 0x35, 0xdc, 0x08, 0x5d, 0x9f, 0xc3, + 0xbb, 0xe3, 0xc1, 0xbb, 0xbf, 0x01, 0x1f, 0xbd, 0xd6, 0x98, 0xe2, 0x7b, 0x54, 0x05, 0x1f, 0x7e, + 0x51, 0x00, 0x1f, 0x82, 0xbd, 0xde, 0xa6, 0x12, 0xbc, 0x47, 0xe1, 0xde, 0x97, 0x5b, 0xc2, 0xbd, + 0x97, 0x1a, 0xe0, 0xde, 0xdd, 0xc7, 0xa0, 0x05, 0x59, 0xf6, 0x62, 0x00, 0x04, 0x9e, 0x6d, 0x00, + 0x81, 0x77, 0x1f, 0x03, 0x5f, 0x77, 0x36, 0x15, 0x00, 0x7b, 0x89, 0x66, 0xb0, 0x47, 0xe8, 0xeb, + 0x14, 0xd9, 0xf9, 0x06, 0x08, 0x39, 0x4e, 0x20, 0xe4, 0x8f, 0xab, 0x00, 0x34, 0xc2, 0xc8, 0xbb, + 0x8f, 0x41, 0x80, 0x32, 0xfb, 0x7a, 0x6b, 0xd0, 0x38, 0xde, 0x04, 0x1a, 0xef, 0x3e, 0x06, 0xad, + 0x28, 0xb3, 0x4b, 0xed, 0xb0, 0xe4, 0x44, 0x13, 0x96, 0xbc, 0xfb, 0x18, 0xb4, 0xa6, 0x6d, 0x00, + 0x99, 0x04, 0x28, 0xfe, 0x53, 0x08, 0x0e, 0x6c, 0xac, 0x2e, 0x2d, 0xba, 0xae, 0x9a, 0xdf, 0x21, + 0x6b, 0xa4, 0x26, 0x58, 0xad, 0x79, 0x5e, 0x70, 0xd2, 0x9e, 0xd7, 0xf3, 0xbb, 0x45, 0x18, 0x2d, + 0xaa, 0x5b, 0xb8, 0x48, 0xc0, 0x27, 0xb1, 0xf1, 0xaf, 0x3f, 0xd9, 0x4b, 0x36, 0xcd, 0x33, 0xf5, + 0x55, 0x2a, 0xe1, 0x9a, 0xe1, 0xda, 0x7b, 0xd9, 0xc1, 0x0f, 0x1f, 0x80, 0x08, 0x0c, 0x81, 0x8e, + 0x83, 0x9f, 0xfe, 0x30, 0x1c, 0xfd, 0xe0, 0x01, 0x08, 0x09, 0x1d, 0x32, 0x1f, 0x63, 0xe4, 0x0a, + 0xec, 0xf1, 0xd1, 0x22, 0x11, 0x86, 0x89, 0x6d, 0xa5, 0x8b, 0x93, 0xc9, 0x47, 0x14, 0x87, 0x9d, + 0x65, 0xb5, 0x58, 0xc2, 0x14, 0x0a, 0x77, 0xcb, 0xec, 0xcb, 0x42, 0x68, 0x1e, 0x2c, 0xa4, 0x3e, + 0xaa, 0x82, 0x09, 0x88, 0x60, 0x74, 0x63, 0x75, 0x29, 0xb1, 0x72, 0x75, 0x44, 0xf0, 0xf6, 0x06, + 0xc6, 0x61, 0x94, 0x09, 0xcd, 0x41, 0x6f, 0x31, 0x62, 0xe7, 0x58, 0x81, 0x6e, 0xe8, 0x8a, 0xb5, + 0x6a, 0xe3, 0x6d, 0xfd, 0x16, 0x66, 0xd5, 0x82, 0x1c, 0x14, 0x2c, 0xfe, 0x5d, 0x02, 0x89, 0xf0, + 0x78, 0x77, 0x36, 0x45, 0x6b, 0x2f, 0xf7, 0x40, 0xd7, 0x58, 0xa7, 0x1d, 0xfe, 0x0c, 0x00, 0x6a, + 0x3a, 0xef, 0x81, 0xb0, 0xf8, 0xbe, 0x40, 0x3e, 0x76, 0xde, 0x03, 0x21, 0x01, 0x78, 0x9f, 0x24, + 0x20, 0xd7, 0xf8, 0x17, 0xa2, 0x1f, 0x55, 0x41, 0x48, 0x04, 0x63, 0xdf, 0x05, 0x70, 0x28, 0xb0, + 0x25, 0x1e, 0xbc, 0x43, 0xef, 0x41, 0x81, 0x4c, 0x91, 0xc2, 0x44, 0x40, 0x77, 0x77, 0xea, 0x18, + 0xbb, 0xcb, 0x4b, 0x22, 0x74, 0x4e, 0x40, 0xee, 0x2a, 0x5b, 0x79, 0x32, 0xc0, 0xc2, 0xc8, 0xa3, + 0x2a, 0x18, 0x26, 0x56, 0x80, 0xec, 0x87, 0x5a, 0xe3, 0x70, 0x10, 0x48, 0x8f, 0xfd, 0x31, 0x80, + 0xa7, 0x17, 0x49, 0x90, 0x8e, 0xb9, 0xe9, 0x58, 0x35, 0x8b, 0x7a, 0x5e, 0xe7, 0x9b, 0xe0, 0x42, + 0xd1, 0xbb, 0xb0, 0x16, 0x6f, 0xe7, 0xd3, 0x3b, 0x8a, 0x17, 0x7e, 0xe9, 0xfe, 0x9d, 0xfe, 0x00, + 0xfb, 0x9e, 0xb7, 0x3b, 0x62, 0xc2, 0xb7, 0x4f, 0x31, 0x27, 0x38, 0xf2, 0xd8, 0x67, 0x02, 0x44, + 0x9e, 0x4d, 0x64, 0x09, 0x11, 0x3a, 0x99, 0x37, 0xa0, 0x68, 0x98, 0xca, 0xb6, 0x69, 0x57, 0x54, + 0x5b, 0x53, 0x2c, 0xdb, 0xbc, 0xb5, 0xf7, 0x84, 0x34, 0x48, 0xbf, 0x61, 0xbe, 0xc9, 0xc8, 0x57, + 0x09, 0x35, 0xfa, 0x03, 0x00, 0xcf, 0xaa, 0x74, 0xb1, 0x41, 0x31, 0xf5, 0xc5, 0xb1, 0xe8, 0xf7, + 0xb5, 0x06, 0x79, 0x8d, 0x85, 0xc9, 0x14, 0xdb, 0x31, 0xbf, 0x6c, 0xff, 0xb6, 0x2d, 0x77, 0xc8, + 0x23, 0x6a, 0x5b, 0x0a, 0x02, 0x3c, 0x83, 0xa3, 0x53, 0x40, 0x45, 0xfe, 0xe5, 0xe1, 0x67, 0xdb, + 0xac, 0xce, 0xb6, 0x4f, 0x1c, 0x85, 0x4b, 0x8b, 0xc5, 0x22, 0x87, 0xff, 0x58, 0x75, 0x5c, 0xa5, + 0x82, 0x1d, 0x97, 0xef, 0x34, 0x4f, 0x36, 0xb4, 0xcb, 0xb3, 0x88, 0x86, 0x79, 0x4d, 0x75, 0xdc, + 0x4d, 0xec, 0xb8, 0x74, 0x5e, 0x7b, 0xe8, 0x0f, 0x01, 0xfc, 0x12, 0xdf, 0x9b, 0xba, 0xac, 0xa6, + 0xc3, 0x67, 0x40, 0xf4, 0xcb, 0x4f, 0xd6, 0xcd, 0xb6, 0x3a, 0xb5, 0x0c, 0x64, 0x7e, 0x06, 0xde, + 0x04, 0x1a, 0x88, 0x90, 0x0a, 0xc7, 0xda, 0xcc, 0xc0, 0xbf, 0x55, 0x3d, 0x87, 0xae, 0xef, 0x2c, + 0x6e, 0x21, 0xbc, 0xbe, 0x67, 0x2c, 0xc9, 0xe3, 0x1d, 0x2b, 0xdf, 0xb1, 0xce, 0x27, 0x25, 0x79, + 0x78, 0xd2, 0x85, 0x6f, 0xd8, 0x1e, 0x3c, 0xc5, 0xf7, 0x2b, 0x20, 0x47, 0xaf, 0x65, 0xa5, 0xae, + 0x1c, 0x4d, 0x8b, 0xfc, 0x52, 0xf9, 0x1e, 0xd5, 0xb2, 0x3d, 0x43, 0x6a, 0x2b, 0x12, 0xf4, 0xa7, + 0xbe, 0xb3, 0x32, 0x76, 0x48, 0x18, 0xae, 0xd5, 0xa4, 0xd6, 0x67, 0xc1, 0x12, 0x40, 0xd9, 0xa3, + 0xcd, 0xe2, 0x1a, 0x97, 0xf3, 0x26, 0x6f, 0x6e, 0x39, 0x9d, 0x51, 0xf5, 0x50, 0xda, 0x85, 0xd1, + 0x47, 0x55, 0x30, 0x02, 0x25, 0x18, 0xf3, 0x6e, 0x6f, 0x82, 0xef, 0x55, 0x67, 0x3a, 0x39, 0x9d, + 0x9c, 0xcf, 0x5e, 0x80, 0xf1, 0xa0, 0xe6, 0xfb, 0x10, 0xb1, 0x87, 0xe3, 0x3b, 0x33, 0xc9, 0xb9, + 0xe4, 0x54, 0x76, 0x16, 0x9e, 0x6b, 0xab, 0x04, 0x9c, 0x6b, 0xf0, 0x61, 0x15, 0x74, 0xef, 0x57, + 0x81, 0x70, 0x50, 0x05, 0x5d, 0x57, 0x92, 0xe9, 0xc9, 0x64, 0x3a, 0x9d, 0xbd, 0x08, 0x87, 0x82, + 0xc7, 0xea, 0x51, 0x23, 0x1f, 0xf6, 0x8f, 0xce, 0x24, 0xd3, 0x99, 0xe4, 0x6c, 0x0d, 0x76, 0x0b, + 0x62, 0x37, 0x03, 0xdf, 0x63, 0x7f, 0x14, 0x82, 0xc3, 0x14, 0xa5, 0xdc, 0x58, 0x2f, 0x19, 0x06, + 0x2e, 0xfa, 0xcc, 0xcf, 0x38, 0xec, 0x26, 0x81, 0x81, 0x62, 0xa8, 0xbb, 0x98, 0x3b, 0x59, 0x66, + 0x6e, 0xed, 0x88, 0x08, 0xa4, 0x37, 0x64, 0x81, 0xf4, 0xde, 0x50, 0x77, 0x31, 0xda, 0x80, 0xa2, + 0x4b, 0xb9, 0x15, 0x1b, 0xef, 0x9a, 0x2e, 0x56, 0x74, 0x8b, 0xba, 0xcc, 0xee, 0x6c, 0x92, 0x30, + 0x74, 0xdf, 0x03, 0xd1, 0xb1, 0x88, 0x1d, 0xba, 0x55, 0x73, 0x16, 0x62, 0xa8, 0xa5, 0x03, 0xe9, + 0x67, 0x52, 0x64, 0x2a, 0x64, 0xc5, 0x42, 0xe7, 0x61, 0x17, 0x9d, 0x81, 0xce, 0xea, 0xce, 0x0d, + 0xe3, 0x47, 0x49, 0xdf, 0x8a, 0x86, 0x96, 0x60, 0x84, 0x02, 0x4e, 0x82, 0xc0, 0xfb, 0x8f, 0x82, + 0x8d, 0x6b, 0x8b, 0x25, 0xcb, 0x94, 0x29, 0x73, 0xcd, 0x63, 0xfd, 0x65, 0x18, 0xc6, 0x17, 0x37, + 0xd7, 0xd6, 0xaf, 0x6f, 0xae, 0x18, 0xdb, 0xa6, 0x6f, 0x37, 0xb2, 0x0d, 0x4f, 0x04, 0x2e, 0x1e, + 0xe3, 0x05, 0x40, 0xb6, 0x16, 0xb3, 0x84, 0x9a, 0x64, 0x1c, 0x35, 0x28, 0x79, 0x07, 0x42, 0xa7, + 0xb4, 0x45, 0x22, 0x2f, 0x5d, 0x23, 0xe6, 0x3b, 0x7c, 0x58, 0xf2, 0x62, 0x8d, 0x52, 0xae, 0x68, + 0x4c, 0xab, 0x63, 0x9e, 0x3f, 0x9f, 0xe8, 0x9c, 0x4c, 0x12, 0xd0, 0xd9, 0xed, 0x78, 0xfd, 0xe8, + 0x4d, 0x08, 0x6b, 0xe9, 0x40, 0x47, 0x8a, 0xd0, 0xc3, 0x7b, 0xc5, 0x7f, 0x78, 0x16, 0x68, 0xe0, + 0xf6, 0x9d, 0x5b, 0xb7, 0xc5, 0x93, 0x82, 0x04, 0x04, 0xf5, 0x58, 0xb6, 0x5e, 0x56, 0xa9, 0x12, + 0x10, 0xc3, 0xf0, 0x54, 0x82, 0x20, 0xe7, 0x25, 0x92, 0x4e, 0xb3, 0x08, 0x81, 0x6a, 0x5f, 0x17, + 0x8d, 0x78, 0x88, 0x7f, 0x27, 0xfa, 0x36, 0xf6, 0x5f, 0x9d, 0xf0, 0x14, 0x3b, 0x24, 0x19, 0x3b, + 0x66, 0xc9, 0xce, 0xe3, 0xb5, 0x1d, 0xd5, 0x66, 0xd0, 0x3c, 0x05, 0x07, 0x6d, 0xde, 0xa8, 0x38, + 0xa4, 0xd5, 0xa7, 0xbf, 0xf2, 0x80, 0xed, 0xa7, 0xa7, 0xba, 0xfb, 0x3a, 0xec, 0xcb, 0xdb, 0x98, + 0x96, 0x1f, 0x14, 0x57, 0xdf, 0xc5, 0xdc, 0xc3, 0x8e, 0xa4, 0xd8, 0xab, 0xa0, 0x94, 0xf7, 0x2a, + 0x28, 0xb5, 0xee, 0xbd, 0x0a, 0x92, 0x7b, 0x3d, 0x06, 0xd2, 0x84, 0xde, 0x84, 0x03, 0x45, 0x72, + 0x71, 0x4b, 0x96, 0xa6, 0xba, 0x58, 0x63, 0x42, 0xc2, 0x4f, 0x14, 0x12, 0x23, 0x4c, 0xef, 0x30, + 0x1e, 0x2a, 0x27, 0x09, 0x51, 0xc3, 0xc4, 0x55, 0xdb, 0x60, 0x69, 0x25, 0x59, 0x0c, 0xcc, 0x7b, + 0xd1, 0x36, 0xd8, 0x32, 0xf3, 0x58, 0x2f, 0x13, 0x78, 0x9c, 0xcf, 0x9b, 0x25, 0x83, 0x28, 0x84, + 0x24, 0x92, 0xfd, 0x26, 0xcb, 0x64, 0x5d, 0x8b, 0xac, 0x67, 0x45, 0x43, 0x8b, 0xf0, 0x6c, 0x83, + 0x74, 0xdd, 0x28, 0xeb, 0x2e, 0x5b, 0x37, 0x19, 0x88, 0x56, 0xee, 0xe5, 0x91, 0xc0, 0x40, 0x2b, + 0x35, 0x12, 0x32, 0xe4, 0x38, 0x14, 0xcd, 0x8a, 0x11, 0x1c, 0x8f, 0x26, 0x79, 0xe4, 0x7e, 0xda, + 0x5e, 0x1f, 0x6c, 0x01, 0x9e, 0x66, 0x7e, 0x0b, 0xdf, 0x22, 0x28, 0x41, 0x2d, 0x2a, 0x96, 0xad, + 0x1b, 0x79, 0xdd, 0x2a, 0x72, 0x8f, 0x2a, 0xc8, 0xa7, 0x28, 0xc1, 0x35, 0xde, 0xbf, 0x5a, 0xeb, + 0x46, 0x17, 0xe1, 0x80, 0x6f, 0x66, 0x8e, 0xab, 0xba, 0x25, 0x66, 0xd9, 0xbb, 0x65, 0xb1, 0xde, + 0xb1, 0x46, 0xdb, 0xd1, 0x30, 0x8c, 0x72, 0x8a, 0x3e, 0x4a, 0xc1, 0xbf, 0x11, 0x21, 0x75, 0x48, + 0xe4, 0x09, 0xe9, 0x67, 0x42, 0xea, 0x1d, 0x5c, 0xc8, 0x26, 0x8c, 0xb8, 0x6a, 0xc1, 0x91, 0x62, + 0xf4, 0x2e, 0x2d, 0x1d, 0xc1, 0xd5, 0xb7, 0x56, 0xbd, 0xd4, 0xba, 0x5a, 0x60, 0xc1, 0xbb, 0x4c, + 0x05, 0x8e, 0xcc, 0xc1, 0xee, 0x5a, 0xd3, 0xd3, 0xc4, 0xf3, 0x35, 0xf4, 0x13, 0x15, 0xbb, 0xfc, + 0xd9, 0xd1, 0xb1, 0x47, 0x61, 0x28, 0xb2, 0xc1, 0xd9, 0xd4, 0xa9, 0xc2, 0x0f, 0x05, 0x0d, 0x93, + 0x67, 0x6b, 0x4e, 0xf1, 0xd7, 0x46, 0xb6, 0xc1, 0xe5, 0xd3, 0x07, 0x46, 0xb6, 0x81, 0x26, 0xe0, + 0x00, 0xe9, 0x08, 0x1c, 0x25, 0x33, 0xaf, 0x72, 0xcc, 0x2d, 0x54, 0xde, 0xf6, 0x1d, 0x25, 0x3a, + 0x0f, 0xfb, 0xa9, 0x90, 0x5d, 0xf5, 0x36, 0x51, 0x13, 0x87, 0xe9, 0x63, 0x58, 0xee, 0x25, 0xb2, + 0x68, 0xe3, 0xa2, 0x63, 0x90, 0x1b, 0x40, 0x01, 0x6b, 0xe0, 0x1a, 0x75, 0x3e, 0xf9, 0x06, 0xb8, + 0x85, 0xca, 0x92, 0xff, 0x26, 0xf1, 0xe2, 0x28, 0xcf, 0xe4, 0x46, 0xe9, 0x94, 0xba, 0xdd, 0x42, + 0x85, 0xe7, 0x6c, 0xcf, 0xc0, 0x6e, 0x7a, 0x04, 0xae, 0xea, 0x7a, 0x16, 0x41, 0x70, 0x0b, 0x15, + 0xb2, 0x15, 0x18, 0xad, 0xf2, 0x43, 0x14, 0xe8, 0x21, 0xfe, 0xbf, 0xa3, 0x1e, 0x62, 0x7d, 0x1f, + 0x1b, 0x4f, 0x8f, 0xcc, 0x86, 0x29, 0x8e, 0xb2, 0xeb, 0x14, 0xb8, 0xa2, 0x77, 0xb3, 0x96, 0xb7, + 0x9c, 0xc2, 0xb1, 0x0f, 0x77, 0xec, 0x6f, 0xcf, 0xc1, 0x7e, 0x56, 0xfc, 0x5a, 0xb3, 0x70, 0x9e, + 0x1e, 0xe1, 0x37, 0x61, 0x3f, 0x99, 0x9b, 0x55, 0xcb, 0x49, 0x50, 0x49, 0x47, 0x4a, 0xcb, 0x36, + 0xe4, 0x4d, 0xb2, 0x11, 0x12, 0x55, 0xc8, 0x7d, 0x6a, 0xc5, 0xf1, 0x65, 0x38, 0xb6, 0x61, 0x8c, + 0x98, 0x52, 0x1f, 0x12, 0xe2, 0x56, 0x6e, 0xee, 0x29, 0x31, 0x57, 0xbd, 0x3a, 0x47, 0x87, 0xe9, + 0x2f, 0x5b, 0xf9, 0x45, 0x1f, 0xbc, 0xfa, 0x06, 0xec, 0xa5, 0x7c, 0x3c, 0x18, 0x3a, 0xfa, 0x63, + 0xb1, 0x66, 0xf0, 0xc3, 0x47, 0xe8, 0x21, 0x07, 0xcc, 0x3b, 0xd1, 0x2a, 0x3c, 0x5d, 0x7f, 0x1a, + 0x67, 0x6e, 0xbb, 0x15, 0x62, 0xc6, 0xca, 0xd8, 0x76, 0x88, 0xba, 0xb0, 0xfc, 0x7b, 0x9c, 0x27, + 0x2b, 0x6b, 0x4f, 0x54, 0x68, 0xf2, 0xf6, 0x54, 0xed, 0xad, 0x1c, 0xe7, 0xda, 0x60, 0x4c, 0xe8, + 0x06, 0x94, 0x4c, 0x0b, 0xdb, 0x2a, 0x4d, 0x87, 0xf3, 0xb7, 0x72, 0x9e, 0xc0, 0xce, 0x43, 0x04, + 0x0e, 0xd7, 0xb8, 0xd6, 0x28, 0x93, 0x27, 0xef, 0xef, 0x42, 0x6c, 0xa7, 0x75, 0x4b, 0xa9, 0x61, + 0xe9, 0xe8, 0x51, 0xcd, 0x4a, 0x50, 0x29, 0x52, 0x1b, 0x56, 0xbe, 0x8e, 0xd0, 0x59, 0xfe, 0xe0, + 0x47, 0x80, 0xcf, 0xe6, 0xe0, 0xa7, 0x3f, 0x0c, 0xc7, 0x3f, 0x78, 0x00, 0x44, 0xd4, 0xff, 0x8b, + 0x2a, 0x80, 0x8b, 0x9b, 0x6b, 0x09, 0x06, 0xfd, 0x7d, 0x1d, 0x07, 0x4d, 0x1d, 0xf0, 0x83, 0x07, + 0x20, 0x8a, 0x22, 0x3f, 0xae, 0xfa, 0x13, 0x10, 0x54, 0xd6, 0xe2, 0x07, 0x0f, 0xc0, 0xab, 0x23, + 0x5f, 0xfe, 0x45, 0x15, 0xcc, 0xad, 0xb9, 0xb6, 0x6e, 0x14, 0x12, 0x36, 0xb6, 0x6c, 0xec, 0x60, + 0x83, 0xac, 0x31, 0x81, 0x6d, 0xdb, 0xb4, 0x13, 0x36, 0x76, 0x2c, 0xd3, 0x70, 0x70, 0x32, 0x51, + 0x72, 0x4a, 0x6a, 0xb1, 0xb8, 0x97, 0x50, 0x13, 0x3b, 0xee, 0x6e, 0x31, 0x91, 0x37, 0x35, 0x4c, + 0xa4, 0x8c, 0x7f, 0xf0, 0x00, 0x9c, 0x1f, 0x19, 0x3b, 0xa8, 0x82, 0x51, 0xa2, 0x28, 0x09, 0x73, + 0x3b, 0xc1, 0x02, 0x0c, 0x27, 0xa1, 0x1b, 0x09, 0x35, 0x51, 0xd0, 0xcb, 0xd8, 0x20, 0xf3, 0x91, + 0xfb, 0xca, 0xfe, 0xc5, 0xa1, 0x75, 0xd8, 0x5d, 0x36, 0x14, 0x96, 0xa2, 0x3e, 0x7a, 0x45, 0xa2, + 0xe1, 0xf1, 0x00, 0xd7, 0x18, 0xa1, 0xcc, 0x9b, 0xd1, 0x04, 0xec, 0x52, 0x35, 0xcd, 0xc6, 0x8e, + 0xc3, 0x9f, 0xa5, 0x89, 0x64, 0xeb, 0x68, 0xb4, 0x61, 0x87, 0xa5, 0xf7, 0x49, 0xbc, 0xe1, 0x11, + 0xa0, 0x45, 0xd8, 0x93, 0x37, 0x4d, 0x5b, 0xd3, 0x0d, 0xd5, 0xc5, 0x0e, 0xc7, 0x92, 0xe7, 0x1a, + 0xe6, 0x40, 0x47, 0x5d, 0xaa, 0x93, 0xc9, 0x7e, 0x1e, 0xf4, 0x2d, 0x78, 0x86, 0x3e, 0x95, 0xdc, + 0x35, 0x35, 0x7d, 0x5b, 0xcf, 0xd7, 0x4d, 0x21, 0xb5, 0x76, 0x1c, 0x48, 0x1e, 0x62, 0x0f, 0xb3, + 0x11, 0x32, 0x3d, 0xf9, 0x34, 0x11, 0xf2, 0x96, 0x4f, 0x46, 0x8d, 0x00, 0xbd, 0xca, 0x2b, 0x6c, + 0xae, 0xc9, 0x5e, 0x86, 0xf2, 0x98, 0x5b, 0xb7, 0xa4, 0xb3, 0x74, 0x7d, 0xf5, 0x4c, 0xbd, 0x8c, + 0x08, 0xc1, 0xba, 0xb9, 0x46, 0xfe, 0xa5, 0x54, 0x2b, 0x16, 0xfa, 0xff, 0x50, 0xa0, 0x8e, 0xc2, + 0xd8, 0x36, 0x39, 0x98, 0x9c, 0x3d, 0xaa, 0x99, 0x0c, 0xc6, 0xc2, 0x32, 0xf1, 0x2c, 0xa4, 0x09, + 0xdd, 0x80, 0xa7, 0x8a, 0x66, 0xc1, 0x51, 0x1c, 0xd7, 0xc6, 0xea, 0x2e, 0xb9, 0x44, 0x3c, 0x9b, + 0xad, 0xf1, 0xf2, 0x79, 0x3b, 0x64, 0x3f, 0x44, 0xd8, 0xd6, 0x3c, 0xae, 0xab, 0x9c, 0x09, 0x5d, + 0x87, 0xbd, 0x45, 0xb3, 0xa0, 0x78, 0xe1, 0xcb, 0xd1, 0x0b, 0x20, 0xcb, 0x1d, 0x72, 0x4f, 0xd1, + 0x2c, 0xc8, 0x9c, 0x11, 0xbd, 0x0e, 0x43, 0x4e, 0x85, 0x97, 0x35, 0x2e, 0xb4, 0x64, 0xdf, 0x68, + 0x30, 0x09, 0xcc, 0xe8, 0xfc, 0x92, 0x1c, 0x41, 0xc8, 0xa9, 0xa0, 0xd7, 0x60, 0xc8, 0x74, 0x78, + 0x5d, 0x7c, 0xbc, 0xf5, 0xf8, 0x41, 0x13, 0xe0, 0xe7, 0x37, 0x1d, 0x74, 0x17, 0x70, 0x87, 0x34, + 0x4a, 0xaf, 0xff, 0xc2, 0x53, 0x5f, 0xff, 0x9a, 0x73, 0xc9, 0x66, 0x68, 0xf4, 0xfc, 0x21, 0x8b, + 0x9e, 0xa5, 0xdf, 0xa7, 0x0a, 0xfc, 0x21, 0x08, 0x89, 0xe3, 0x34, 0x8e, 0xfe, 0x90, 0xc4, 0xd1, + 0x76, 0x58, 0xfa, 0x1c, 0xf8, 0x93, 0x8a, 0xcc, 0x85, 0xfd, 0x2e, 0x1c, 0xa0, 0xb5, 0x6f, 0x5a, + 0x08, 0xf4, 0x2a, 0x29, 0x03, 0x74, 0x42, 0x17, 0x5a, 0xe9, 0x36, 0xad, 0xed, 0x3b, 0x3b, 0x1b, + 0x2b, 0xab, 0xac, 0x76, 0x48, 0x0b, 0x2a, 0xd9, 0x33, 0x64, 0x9c, 0xde, 0x7b, 0xa0, 0x7b, 0xa2, + 0x8b, 0xc4, 0xeb, 0x99, 0x40, 0xc4, 0xde, 0x5f, 0xd6, 0x2d, 0x1f, 0x31, 0xd1, 0x08, 0x4d, 0xb7, + 0x71, 0xde, 0xf5, 0x5e, 0x06, 0xd4, 0x35, 0x22, 0x7e, 0xf8, 0x43, 0x18, 0xc6, 0xc6, 0x6b, 0xe8, + 0x35, 0x8d, 0xf8, 0x36, 0x1c, 0x6e, 0x90, 0xc7, 0xca, 0x1c, 0x9a, 0x24, 0x51, 0x71, 0xc9, 0x96, + 0x1b, 0x7b, 0xd5, 0x2f, 0xab, 0xd1, 0xa9, 0x2c, 0x03, 0x39, 0x1e, 0x18, 0xec, 0x1a, 0x93, 0x88, + 0x76, 0x60, 0xdc, 0xc3, 0x2e, 0x79, 0x5f, 0x29, 0x5f, 0x9a, 0x3a, 0xe4, 0xcd, 0xcd, 0x2a, 0x63, + 0x68, 0x3f, 0xd4, 0xa0, 0x15, 0xa0, 0x60, 0x8f, 0x03, 0xde, 0x85, 0x92, 0x86, 0xb7, 0xd5, 0x52, + 0xd1, 0x55, 0xb6, 0x8a, 0x66, 0xfe, 0x26, 0xd6, 0x3c, 0xc8, 0xef, 0x1c, 0x56, 0xe5, 0xc9, 0x46, + 0x1f, 0x7a, 0x85, 0xb8, 0x61, 0xce, 0x9f, 0x65, 0xec, 0x5e, 0x18, 0x80, 0xae, 0x42, 0x44, 0x25, + 0x2a, 0x6a, 0xb1, 0x58, 0x97, 0xf9, 0xca, 0xa1, 0x99, 0x1e, 0x91, 0x72, 0x2c, 0x16, 0x8b, 0x35, + 0x29, 0x0a, 0x14, 0x9b, 0xe6, 0x75, 0xbe, 0xe5, 0x7e, 0xd3, 0xdf, 0x38, 0xa4, 0x1a, 0x66, 0xd1, + 0xf4, 0x88, 0x27, 0xb6, 0xd5, 0x30, 0xcd, 0x12, 0x1c, 0x31, 0xb7, 0xb7, 0x8b, 0xba, 0x81, 0x15, + 0xa7, 0x64, 0x97, 0xf5, 0xb2, 0xba, 0xa5, 0x17, 0x75, 0x77, 0x8f, 0x58, 0x4f, 0x2c, 0xbd, 0x7c, + 0x88, 0x0b, 0x78, 0x9b, 0xb1, 0xad, 0xf9, 0xb9, 0xde, 0xf2, 0x8a, 0xaa, 0xec, 0xc1, 0x86, 0x64, + 0xb6, 0xa1, 0x41, 0xdf, 0x81, 0x2f, 0xf8, 0xaa, 0xbb, 0x5e, 0x2e, 0x89, 0x82, 0x04, 0x3a, 0xf0, + 0x25, 0x3a, 0x70, 0xeb, 0x4c, 0xf4, 0x6a, 0x9d, 0xf1, 0x5a, 0x9d, 0xaf, 0x3e, 0x34, 0xbd, 0xfa, + 0x23, 0x56, 0x5b, 0x2a, 0x74, 0x01, 0x8a, 0x4e, 0xa9, 0x50, 0xc0, 0x0e, 0x41, 0x89, 0x2a, 0x7d, + 0x00, 0x23, 0xa5, 0x58, 0xdc, 0x5d, 0x6b, 0x5f, 0xa4, 0xcd, 0x04, 0xbf, 0x50, 0x9f, 0xab, 0x68, + 0xd8, 0xc9, 0xdb, 0x3a, 0xfd, 0xfd, 0x85, 0x74, 0x99, 0xe1, 0x17, 0xda, 0x71, 0xb5, 0xde, 0x8e, + 0x5e, 0x87, 0x3d, 0xd4, 0x1d, 0xd0, 0x0e, 0x47, 0x9a, 0xa6, 0xf7, 0x7b, 0xb4, 0xed, 0x0b, 0xb1, + 0x6b, 0x84, 0x4c, 0x86, 0x8e, 0xf7, 0xd1, 0x41, 0xef, 0x40, 0x91, 0xff, 0x0a, 0xc4, 0x83, 0x5c, + 0x58, 0x9a, 0xa1, 0xc9, 0x94, 0x89, 0x96, 0x52, 0x98, 0x96, 0x6f, 0xd4, 0x58, 0x68, 0x04, 0x2e, + 0xc7, 0xca, 0xc1, 0x06, 0xb4, 0x04, 0x21, 0xaf, 0x1a, 0x6a, 0x86, 0x23, 0xcd, 0xd2, 0xad, 0x6d, + 0x3d, 0xad, 0x25, 0x4a, 0x76, 0xf5, 0xc6, 0x5a, 0x36, 0x42, 0x14, 0x5c, 0xee, 0x66, 0x7c, 0x57, + 0x0d, 0x07, 0xdd, 0x84, 0xd2, 0xcd, 0xd2, 0x16, 0x2d, 0x35, 0x61, 0x47, 0x29, 0x59, 0x05, 0x5b, + 0xd5, 0xb0, 0xa2, 0xd9, 0xaa, 0x6e, 0x48, 0x73, 0x54, 0xe4, 0xc5, 0x96, 0x22, 0xbf, 0x52, 0x63, + 0x7a, 0x87, 0xf1, 0x5c, 0x25, 0x2c, 0xfc, 0x94, 0x86, 0x6f, 0xb6, 0xec, 0x45, 0x16, 0xec, 0x62, + 0x3e, 0xd5, 0x91, 0xfe, 0xad, 0x8b, 0x6e, 0xe3, 0xfc, 0x91, 0x3c, 0x64, 0x8b, 0xec, 0x59, 0xf6, + 0x0c, 0x77, 0xc6, 0xb5, 0x94, 0xd7, 0x1b, 0x3e, 0xab, 0xe9, 0x0d, 0x83, 0x36, 0xe1, 0x60, 0x83, + 0x79, 0xa3, 0xee, 0xf9, 0xe7, 0x5d, 0x87, 0x14, 0x56, 0x03, 0xc6, 0x8d, 0xb8, 0x61, 0x79, 0x40, + 0x6b, 0x6c, 0x42, 0xdf, 0x82, 0xdd, 0xee, 0x36, 0xb7, 0xfc, 0xd2, 0xbf, 0x77, 0x1d, 0xf9, 0x21, + 0xc1, 0xe8, 0xfd, 0x3b, 0x71, 0xea, 0x17, 0x89, 0x16, 0xfb, 0x10, 0x09, 0x5f, 0x8d, 0x2c, 0xb8, + 0xdb, 0xcc, 0xdc, 0xa3, 0x6f, 0xc2, 0x3e, 0xfa, 0xeb, 0x20, 0x56, 0x09, 0x54, 0x8b, 0xd2, 0xa7, + 0x47, 0x1f, 0x25, 0x7e, 0xff, 0x4e, 0x90, 0x99, 0xca, 0xee, 0x25, 0x4d, 0x2b, 0xbc, 0x05, 0xbd, + 0x0a, 0xa9, 0x8e, 0x72, 0x7d, 0xfc, 0x45, 0x17, 0x55, 0xc8, 0xb3, 0xad, 0xdc, 0x96, 0xf7, 0xee, + 0x11, 0xcb, 0xdd, 0x8e, 0xf7, 0x71, 0xa4, 0x04, 0x51, 0x73, 0x04, 0xdd, 0x02, 0xa8, 0xad, 0xf8, + 0x81, 0xda, 0x51, 0xab, 0x50, 0xc1, 0xd2, 0x99, 0x0f, 0xdd, 0x1d, 0x1b, 0x16, 0x2e, 0xfc, 0x08, + 0x3c, 0xaa, 0x82, 0x7f, 0x04, 0x10, 0xc1, 0x3e, 0x12, 0xb5, 0x7b, 0xd9, 0x05, 0x07, 0x81, 0xb4, + 0x57, 0xc9, 0xf2, 0x43, 0x2d, 0x90, 0x81, 0x09, 0xfe, 0xfc, 0x8c, 0x27, 0xcb, 0x13, 0xaa, 0xa1, + 0x25, 0x6a, 0x58, 0x29, 0x3c, 0x97, 0x9c, 0x82, 0x23, 0x30, 0xce, 0xfd, 0x53, 0xf0, 0x6d, 0x5a, + 0x28, 0x7d, 0x05, 0x9e, 0x86, 0xa2, 0x17, 0xfa, 0x24, 0x3c, 0xf8, 0xd2, 0x99, 0x9e, 0x49, 0xa6, + 0x67, 0xe1, 0x18, 0x14, 0x16, 0xb5, 0x32, 0xcd, 0x78, 0xa3, 0xe1, 0xa9, 0xc9, 0x64, 0x3a, 0x93, + 0x9c, 0x99, 0x49, 0x5e, 0x49, 0x4e, 0x65, 0x92, 0x53, 0xf3, 0xc9, 0xe9, 0x99, 0xe4, 0xcc, 0x34, + 0x94, 0x20, 0x5c, 0x2a, 0x9a, 0x25, 0x2d, 0x41, 0xb5, 0x0d, 0xa6, 0xd3, 0xc9, 0xf4, 0x5c, 0x32, + 0x3d, 0x39, 0x99, 0xce, 0x5e, 0x80, 0x71, 0x1a, 0x13, 0xd6, 0xd2, 0x53, 0xbe, 0x9c, 0x77, 0xdf, + 0x7e, 0x15, 0xf4, 0xd2, 0x57, 0x60, 0xf4, 0xc9, 0xd8, 0x25, 0x38, 0xd4, 0xa0, 0xfd, 0xbe, 0x17, + 0x66, 0xf1, 0xfd, 0x2a, 0x18, 0x3c, 0xa8, 0x02, 0x21, 0x33, 0x99, 0x9c, 0x49, 0x27, 0x33, 0xd3, + 0xd9, 0x24, 0x3c, 0xd5, 0xe8, 0x95, 0xfc, 0xc2, 0x5f, 0xd9, 0xaf, 0x82, 0x04, 0xad, 0x30, 0x5f, + 0x61, 0xaf, 0x95, 0xd3, 0x62, 0x26, 0x17, 0x11, 0x32, 0xe2, 0x54, 0x2e, 0x22, 0x4c, 0x8a, 0xe9, + 0x5c, 0x44, 0xe8, 0x15, 0xfb, 0x1a, 0x5e, 0x28, 0xb3, 0xb7, 0xc9, 0xc3, 0xe2, 0xa9, 0x5c, 0x44, + 0x38, 0x25, 0x4a, 0xfe, 0x17, 0xca, 0xb9, 0x88, 0xf0, 0xa2, 0x78, 0x3e, 0x17, 0x11, 0x5e, 0x12, + 0x5f, 0x1e, 0xfb, 0xbe, 0x08, 0xfb, 0x69, 0xb2, 0x02, 0xd7, 0x50, 0xfb, 0xbb, 0x27, 0x86, 0xda, + 0x1b, 0xf1, 0xfa, 0xb7, 0x4e, 0x1a, 0xaf, 0x37, 0x21, 0xf5, 0x1b, 0x27, 0x81, 0xb8, 0x7c, 0x58, + 0x6b, 0xf3, 0xe4, 0x90, 0x7f, 0x10, 0xf3, 0x9f, 0x00, 0x30, 0x3b, 0x69, 0x90, 0xf2, 0xee, 0x71, + 0x41, 0x4a, 0x36, 0x76, 0xff, 0x4e, 0x80, 0xf5, 0x0b, 0x87, 0x5a, 0x6e, 0x3c, 0x2d, 0x68, 0x09, + 0x5e, 0x89, 0xa6, 0x1c, 0xda, 0xea, 0xf1, 0xe2, 0xdc, 0x65, 0x70, 0x82, 0xf1, 0x2d, 0x68, 0x11, + 0xdf, 0x7e, 0xed, 0x64, 0xe2, 0xdb, 0x65, 0xd0, 0x1c, 0xd9, 0x1e, 0x13, 0x00, 0x85, 0xda, 0x01, + 0x20, 0xed, 0x24, 0x01, 0xd0, 0x72, 0xa8, 0x0d, 0xf4, 0xd9, 0x3a, 0x41, 0xe8, 0xb3, 0x1c, 0x6a, + 0x0d, 0x7a, 0xcc, 0x67, 0x12, 0xf3, 0x1f, 0x12, 0xed, 0x97, 0x9e, 0x59, 0xb4, 0x7f, 0x68, 0x9c, + 0xff, 0x1b, 0x17, 0xf7, 0x1e, 0x3f, 0x68, 0x19, 0xf8, 0xe8, 0xb5, 0x86, 0x5c, 0x76, 0x76, 0xb2, + 0x8d, 0xfb, 0x97, 0xee, 0x3e, 0x06, 0x2d, 0x7b, 0xb2, 0xb3, 0xed, 0xdd, 0xfa, 0x99, 0xbb, 0x8f, + 0x41, 0xbb, 0xce, 0x6c, 0xa6, 0x5d, 0xf4, 0x70, 0xfa, 0xee, 0x63, 0xd0, 0xba, 0xab, 0x16, 0x08, + 0xf8, 0x43, 0x03, 0xf6, 0x06, 0x9d, 0x55, 0x5c, 0x58, 0x61, 0x9c, 0x85, 0x09, 0xec, 0x07, 0x4e, + 0xe7, 0xc4, 0x44, 0x2d, 0x64, 0xf0, 0x87, 0x06, 0xed, 0xc2, 0x87, 0x7a, 0xc8, 0xf0, 0xf7, 0x31, + 0x18, 0xe3, 0x0f, 0xd5, 0x6b, 0x31, 0x83, 0xd2, 0x14, 0x33, 0x30, 0x63, 0x3d, 0xff, 0x54, 0x31, + 0x83, 0xef, 0xf9, 0xfb, 0xf3, 0xd0, 0xe1, 0x79, 0xe8, 0x40, 0x42, 0x87, 0x93, 0xce, 0xbb, 0x9d, + 0xac, 0xdb, 0x01, 0xbf, 0x0e, 0xb7, 0xd3, 0x26, 0xd7, 0x76, 0xdc, 0x18, 0xe4, 0x59, 0xe7, 0xd8, + 0x4e, 0x2a, 0x06, 0x69, 0x91, 0x5d, 0x7b, 0xee, 0x69, 0xbf, 0xa0, 0x9e, 0x76, 0xe1, 0xcf, 0x40, + 0x93, 0xc7, 0x7c, 0x54, 0x05, 0x77, 0x01, 0x1c, 0x6c, 0x84, 0xfd, 0xa1, 0xf4, 0xec, 0xb1, 0x71, + 0x7f, 0x1c, 0xf6, 0xb3, 0x9b, 0xe8, 0xc1, 0x7e, 0x8a, 0xf8, 0xcf, 0xfa, 0x60, 0xfd, 0x00, 0xc3, + 0xf4, 0x3e, 0x44, 0x7f, 0x0c, 0xc7, 0x7d, 0x0c, 0x07, 0x7c, 0x5c, 0x67, 0x5f, 0x7b, 0xb9, 0x76, + 0x74, 0xf7, 0xcd, 0x5c, 0x36, 0x73, 0xe2, 0x4f, 0x87, 0xf5, 0xbf, 0x77, 0x1a, 0xf6, 0x5c, 0xc7, + 0xee, 0x73, 0xa0, 0xff, 0xeb, 0xf4, 0xd6, 0x0b, 0x4f, 0x2c, 0xee, 0xb7, 0x2f, 0xe3, 0xcf, 0x3f, + 0xa9, 0x8c, 0xdf, 0xb6, 0x60, 0x7f, 0xbf, 0x6d, 0xc1, 0xfe, 0x8d, 0x23, 0x54, 0xec, 0xea, 0x3a, + 0xd2, 0xaa, 0x5a, 0xff, 0x0f, 0xbf, 0x6d, 0x65, 0xfa, 0xb5, 0x93, 0x4b, 0x8f, 0xd7, 0x33, 0xe0, + 0x27, 0x10, 0xa5, 0x7d, 0xfd, 0x57, 0xac, 0xbc, 0x1f, 0x56, 0x73, 0xff, 0x0d, 0x28, 0x9a, 0x3f, + 0xbb, 0xa0, 0x72, 0xfd, 0x24, 0xea, 0xc7, 0x4d, 0x25, 0xe2, 0xaf, 0x04, 0x92, 0x4c, 0x73, 0x4f, + 0x77, 0xcf, 0x1a, 0x33, 0x4c, 0xbf, 0x5a, 0x95, 0xe0, 0x79, 0xd8, 0xdc, 0x36, 0x6c, 0x7e, 0x66, + 0x95, 0xa9, 0xe7, 0xf1, 0xf8, 0x6f, 0x6d, 0x3c, 0xfe, 0xbc, 0xc2, 0xfd, 0x45, 0xcf, 0xf4, 0xfd, + 0xa6, 0x55, 0x45, 0xe3, 0x4d, 0x70, 0xe9, 0xd3, 0xd7, 0xc0, 0x17, 0x1e, 0xaa, 0x34, 0x83, 0x14, + 0x06, 0x4c, 0x18, 0x18, 0xf1, 0xc3, 0x13, 0xff, 0x5f, 0xbb, 0x38, 0x22, 0x3c, 0x99, 0x48, 0xc2, + 0xbe, 0xc0, 0x2f, 0x58, 0x50, 0x17, 0x0c, 0x2f, 0xbf, 0x93, 0x15, 0x3b, 0x50, 0x2f, 0x14, 0xd6, + 0xae, 0xc9, 0x1b, 0x2b, 0x4b, 0xd7, 0xd6, 0x44, 0x30, 0x42, 0x34, 0xad, 0x23, 0xfb, 0x27, 0x60, + 0xff, 0x67, 0xa3, 0x1d, 0x1f, 0xff, 0x6c, 0xb4, 0xe3, 0x97, 0x3f, 0x1b, 0x05, 0xef, 0x1f, 0x8c, + 0x82, 0xbf, 0x3e, 0x18, 0x05, 0x3f, 0x3e, 0x18, 0x05, 0xfb, 0x07, 0xa3, 0xe0, 0xe3, 0x83, 0x51, + 0xf0, 0xd3, 0x83, 0x51, 0xf0, 0xe9, 0xc1, 0x68, 0xc7, 0x2f, 0x0f, 0x46, 0xc1, 0x77, 0x3f, 0x19, + 0xed, 0x78, 0xf8, 0xc9, 0x28, 0xd8, 0xff, 0x64, 0xb4, 0xe3, 0xe3, 0x4f, 0x46, 0x3b, 0xbe, 0xbe, + 0x51, 0x30, 0xad, 0x9b, 0x85, 0x94, 0x17, 0x79, 0xa7, 0x4a, 0xce, 0xe5, 0xda, 0xf3, 0x80, 0x4b, + 0x96, 0x6d, 0x96, 0x75, 0x0d, 0xdb, 0x97, 0xbc, 0xee, 0xcb, 0xd6, 0x56, 0xc1, 0xbc, 0x8c, 0x6f, + 0xb9, 0xde, 0xdf, 0x25, 0x6d, 0xf7, 0x17, 0x5d, 0xb7, 0xa2, 0x34, 0x0c, 0x9b, 0xfa, 0xdf, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x1c, 0xb3, 0xb9, 0xc2, 0xfc, 0x55, 0x00, 0x00, } func (x VPNTunnelType) String() string { @@ -4995,6 +5234,38 @@ func (this *ServicesVPCReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } + if this.AwsRegion != that1.AwsRegion { + return false + } + if that1.ServiceVpcChoice == nil { + if this.ServiceVpcChoice != nil { + return false + } + } else if this.ServiceVpcChoice == nil { + return false + } else if !this.ServiceVpcChoice.Equal(that1.ServiceVpcChoice) { + return false + } + if that1.TgwChoice == nil { + if this.TgwChoice != nil { + return false + } + } else if this.TgwChoice == nil { + return false + } else if !this.TgwChoice.Equal(that1.TgwChoice) { + return false + } + if this.InstanceType != that1.InstanceType { + return false + } + if len(this.AzNodes) != len(that1.AzNodes) { + return false + } + for i := range this.AzNodes { + if !this.AzNodes[i].Equal(that1.AzNodes[i]) { + return false + } + } if that1.Deployment == nil { if this.Deployment != nil { return false @@ -5004,6 +5275,12 @@ func (this *ServicesVPCReplaceType) Equal(that interface{}) bool { } else if !this.Deployment.Equal(that1.Deployment) { return false } + if this.SshKey != that1.SshKey { + return false + } + if this.DiskSize != that1.DiskSize { + return false + } if that1.WorkerNodes == nil { if this.WorkerNodes != nil { return false @@ -5022,16 +5299,25 @@ func (this *ServicesVPCReplaceType) Equal(that interface{}) bool { } else if !this.InternetVipChoice.Equal(that1.InternetVipChoice) { return false } + if that1.SecurityGroupChoice == nil { + if this.SecurityGroupChoice != nil { + return false + } + } else if this.SecurityGroupChoice == nil { + return false + } else if !this.SecurityGroupChoice.Equal(that1.SecurityGroupChoice) { + return false + } return true } -func (this *ServicesVPCReplaceType_AwsCred) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_NewVpc) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_AwsCred) + that1, ok := that.(*ServicesVPCReplaceType_NewVpc) if !ok { - that2, ok := that.(ServicesVPCReplaceType_AwsCred) + that2, ok := that.(ServicesVPCReplaceType_NewVpc) if ok { that1 = &that2 } else { @@ -5043,19 +5329,19 @@ func (this *ServicesVPCReplaceType_AwsCred) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AwsCred.Equal(that1.AwsCred) { + if !this.NewVpc.Equal(that1.NewVpc) { return false } return true } -func (this *ServicesVPCReplaceType_Assisted) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_VpcId) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_Assisted) + that1, ok := that.(*ServicesVPCReplaceType_VpcId) if !ok { - that2, ok := that.(ServicesVPCReplaceType_Assisted) + that2, ok := that.(ServicesVPCReplaceType_VpcId) if ok { that1 = &that2 } else { @@ -5067,19 +5353,19 @@ func (this *ServicesVPCReplaceType_Assisted) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Assisted.Equal(that1.Assisted) { + if this.VpcId != that1.VpcId { return false } return true } -func (this *ServicesVPCReplaceType_NodesPerAz) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_NewTgw) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_NodesPerAz) + that1, ok := that.(*ServicesVPCReplaceType_NewTgw) if !ok { - that2, ok := that.(ServicesVPCReplaceType_NodesPerAz) + that2, ok := that.(ServicesVPCReplaceType_NewTgw) if ok { that1 = &that2 } else { @@ -5091,19 +5377,19 @@ func (this *ServicesVPCReplaceType_NodesPerAz) Equal(that interface{}) bool { } else if this == nil { return false } - if this.NodesPerAz != that1.NodesPerAz { + if !this.NewTgw.Equal(that1.NewTgw) { return false } return true } -func (this *ServicesVPCReplaceType_TotalNodes) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_ExistingTgw) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_TotalNodes) + that1, ok := that.(*ServicesVPCReplaceType_ExistingTgw) if !ok { - that2, ok := that.(ServicesVPCReplaceType_TotalNodes) + that2, ok := that.(ServicesVPCReplaceType_ExistingTgw) if ok { that1 = &that2 } else { @@ -5115,19 +5401,19 @@ func (this *ServicesVPCReplaceType_TotalNodes) Equal(that interface{}) bool { } else if this == nil { return false } - if this.TotalNodes != that1.TotalNodes { + if !this.ExistingTgw.Equal(that1.ExistingTgw) { return false } return true } -func (this *ServicesVPCReplaceType_NoWorkerNodes) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_AwsCred) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_NoWorkerNodes) + that1, ok := that.(*ServicesVPCReplaceType_AwsCred) if !ok { - that2, ok := that.(ServicesVPCReplaceType_NoWorkerNodes) + that2, ok := that.(ServicesVPCReplaceType_AwsCred) if ok { that1 = &that2 } else { @@ -5139,19 +5425,19 @@ func (this *ServicesVPCReplaceType_NoWorkerNodes) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoWorkerNodes.Equal(that1.NoWorkerNodes) { + if !this.AwsCred.Equal(that1.AwsCred) { return false } return true } -func (this *ServicesVPCReplaceType_DisableInternetVip) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_Assisted) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_DisableInternetVip) + that1, ok := that.(*ServicesVPCReplaceType_Assisted) if !ok { - that2, ok := that.(ServicesVPCReplaceType_DisableInternetVip) + that2, ok := that.(ServicesVPCReplaceType_Assisted) if ok { that1 = &that2 } else { @@ -5163,19 +5449,115 @@ func (this *ServicesVPCReplaceType_DisableInternetVip) Equal(that interface{}) b } else if this == nil { return false } - if !this.DisableInternetVip.Equal(that1.DisableInternetVip) { + if !this.Assisted.Equal(that1.Assisted) { return false } return true } -func (this *ServicesVPCReplaceType_EnableInternetVip) Equal(that interface{}) bool { +func (this *ServicesVPCReplaceType_NodesPerAz) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicesVPCReplaceType_EnableInternetVip) + that1, ok := that.(*ServicesVPCReplaceType_NodesPerAz) if !ok { - that2, ok := that.(ServicesVPCReplaceType_EnableInternetVip) + that2, ok := that.(ServicesVPCReplaceType_NodesPerAz) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.NodesPerAz != that1.NodesPerAz { + return false + } + return true +} +func (this *ServicesVPCReplaceType_TotalNodes) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicesVPCReplaceType_TotalNodes) + if !ok { + that2, ok := that.(ServicesVPCReplaceType_TotalNodes) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.TotalNodes != that1.TotalNodes { + return false + } + return true +} +func (this *ServicesVPCReplaceType_NoWorkerNodes) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicesVPCReplaceType_NoWorkerNodes) + if !ok { + that2, ok := that.(ServicesVPCReplaceType_NoWorkerNodes) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoWorkerNodes.Equal(that1.NoWorkerNodes) { + return false + } + return true +} +func (this *ServicesVPCReplaceType_DisableInternetVip) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicesVPCReplaceType_DisableInternetVip) + if !ok { + that2, ok := that.(ServicesVPCReplaceType_DisableInternetVip) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableInternetVip.Equal(that1.DisableInternetVip) { + return false + } + return true +} +func (this *ServicesVPCReplaceType_EnableInternetVip) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicesVPCReplaceType_EnableInternetVip) + if !ok { + that2, ok := that.(ServicesVPCReplaceType_EnableInternetVip) if ok { that1 = &that2 } else { @@ -5192,6 +5574,54 @@ func (this *ServicesVPCReplaceType_EnableInternetVip) Equal(that interface{}) bo } return true } +func (this *ServicesVPCReplaceType_F5XcSecurityGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicesVPCReplaceType_F5XcSecurityGroup) + if !ok { + that2, ok := that.(ServicesVPCReplaceType_F5XcSecurityGroup) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSecurityGroup.Equal(that1.F5XcSecurityGroup) { + return false + } + return true +} +func (this *ServicesVPCReplaceType_CustomSecurityGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicesVPCReplaceType_CustomSecurityGroup) + if !ok { + that2, ok := that.(ServicesVPCReplaceType_CustomSecurityGroup) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CustomSecurityGroup.Equal(that1.CustomSecurityGroup) { + return false + } + return true +} func (this *VPCAttachmentType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -5922,6 +6352,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if len(this.Tunnels) != len(that1.Tunnels) { return false } @@ -6220,6 +6653,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_LogsStreamingDisabled) Equal(that interface{}) bool { @@ -6484,6 +6920,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *ReplaceSpecType_LogsStreamingDisabled) Equal(that interface{}) bool { @@ -6815,6 +7254,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GetSpecType_LogsStreamingDisabled) Equal(that interface{}) bool { @@ -7321,20 +7763,68 @@ func (this *ServicesVPCReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 11) + s := make([]string, 0, 22) s = append(s, "&aws_tgw_site.ServicesVPCReplaceType{") + s = append(s, "AwsRegion: "+fmt.Sprintf("%#v", this.AwsRegion)+",\n") + if this.ServiceVpcChoice != nil { + s = append(s, "ServiceVpcChoice: "+fmt.Sprintf("%#v", this.ServiceVpcChoice)+",\n") + } + if this.TgwChoice != nil { + s = append(s, "TgwChoice: "+fmt.Sprintf("%#v", this.TgwChoice)+",\n") + } + s = append(s, "InstanceType: "+fmt.Sprintf("%#v", this.InstanceType)+",\n") + if this.AzNodes != nil { + s = append(s, "AzNodes: "+fmt.Sprintf("%#v", this.AzNodes)+",\n") + } if this.Deployment != nil { s = append(s, "Deployment: "+fmt.Sprintf("%#v", this.Deployment)+",\n") } + s = append(s, "SshKey: "+fmt.Sprintf("%#v", this.SshKey)+",\n") + s = append(s, "DiskSize: "+fmt.Sprintf("%#v", this.DiskSize)+",\n") if this.WorkerNodes != nil { s = append(s, "WorkerNodes: "+fmt.Sprintf("%#v", this.WorkerNodes)+",\n") } if this.InternetVipChoice != nil { s = append(s, "InternetVipChoice: "+fmt.Sprintf("%#v", this.InternetVipChoice)+",\n") } + if this.SecurityGroupChoice != nil { + s = append(s, "SecurityGroupChoice: "+fmt.Sprintf("%#v", this.SecurityGroupChoice)+",\n") + } s = append(s, "}") return strings.Join(s, "") } +func (this *ServicesVPCReplaceType_NewVpc) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_tgw_site.ServicesVPCReplaceType_NewVpc{` + + `NewVpc:` + fmt.Sprintf("%#v", this.NewVpc) + `}`}, ", ") + return s +} +func (this *ServicesVPCReplaceType_VpcId) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_tgw_site.ServicesVPCReplaceType_VpcId{` + + `VpcId:` + fmt.Sprintf("%#v", this.VpcId) + `}`}, ", ") + return s +} +func (this *ServicesVPCReplaceType_NewTgw) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_tgw_site.ServicesVPCReplaceType_NewTgw{` + + `NewTgw:` + fmt.Sprintf("%#v", this.NewTgw) + `}`}, ", ") + return s +} +func (this *ServicesVPCReplaceType_ExistingTgw) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_tgw_site.ServicesVPCReplaceType_ExistingTgw{` + + `ExistingTgw:` + fmt.Sprintf("%#v", this.ExistingTgw) + `}`}, ", ") + return s +} func (this *ServicesVPCReplaceType_AwsCred) GoString() string { if this == nil { return "nil" @@ -7391,6 +7881,22 @@ func (this *ServicesVPCReplaceType_EnableInternetVip) GoString() string { `EnableInternetVip:` + fmt.Sprintf("%#v", this.EnableInternetVip) + `}`}, ", ") return s } +func (this *ServicesVPCReplaceType_F5XcSecurityGroup) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_tgw_site.ServicesVPCReplaceType_F5XcSecurityGroup{` + + `F5XcSecurityGroup:` + fmt.Sprintf("%#v", this.F5XcSecurityGroup) + `}`}, ", ") + return s +} +func (this *ServicesVPCReplaceType_CustomSecurityGroup) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_tgw_site.ServicesVPCReplaceType_CustomSecurityGroup{` + + `CustomSecurityGroup:` + fmt.Sprintf("%#v", this.CustomSecurityGroup) + `}`}, ", ") + return s +} func (this *VPCAttachmentType) GoString() string { if this == nil { return "nil" @@ -7641,7 +8147,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 40) + s := make([]string, 0, 41) s = append(s, "&aws_tgw_site.GlobalSpecType{") if this.AwsParameters != nil { s = append(s, "AwsParameters: "+fmt.Sprintf("%#v", this.AwsParameters)+",\n") @@ -7727,6 +8233,9 @@ func (this *GlobalSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.Tunnels != nil { s = append(s, "Tunnels: "+fmt.Sprintf("%#v", this.Tunnels)+",\n") } @@ -7811,7 +8320,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 23) + s := make([]string, 0, 24) s = append(s, "&aws_tgw_site.CreateSpecType{") if this.AwsParameters != nil { s = append(s, "AwsParameters: "+fmt.Sprintf("%#v", this.AwsParameters)+",\n") @@ -7865,6 +8374,9 @@ func (this *CreateSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -7936,7 +8448,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 20) + s := make([]string, 0, 21) s = append(s, "&aws_tgw_site.ReplaceSpecType{") if this.AwsParameters != nil { s = append(s, "AwsParameters: "+fmt.Sprintf("%#v", this.AwsParameters)+",\n") @@ -7971,6 +8483,9 @@ func (this *ReplaceSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -8042,7 +8557,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 34) + s := make([]string, 0, 35) s = append(s, "&aws_tgw_site.GetSpecType{") if this.AwsParameters != nil { s = append(s, "AwsParameters: "+fmt.Sprintf("%#v", this.AwsParameters)+",\n") @@ -8127,6 +8642,9 @@ func (this *GetSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -9084,6 +9602,15 @@ func (m *ServicesVPCReplaceType) MarshalToSizedBuffer(dAtA []byte) (int, error) _ = i var l int _ = l + if m.SecurityGroupChoice != nil { + { + size := m.SecurityGroupChoice.Size() + i -= size + if _, err := m.SecurityGroupChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.InternetVipChoice != nil { { size := m.InternetVipChoice.Size() @@ -9102,6 +9629,13 @@ func (m *ServicesVPCReplaceType) MarshalToSizedBuffer(dAtA []byte) (int, error) } } } + if m.DiskSize != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DiskSize)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb0 + } if m.Deployment != nil { { size := m.Deployment.Size() @@ -9111,35 +9645,165 @@ func (m *ServicesVPCReplaceType) MarshalToSizedBuffer(dAtA []byte) (int, error) } } } - return len(dAtA) - i, nil -} - -func (m *ServicesVPCReplaceType_NodesPerAz) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ServicesVPCReplaceType_NodesPerAz) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i = encodeVarintTypes(dAtA, i, uint64(m.NodesPerAz)) - i-- - dAtA[i] = 0x60 - return len(dAtA) - i, nil -} -func (m *ServicesVPCReplaceType_AwsCred) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ServicesVPCReplaceType_AwsCred) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AwsCred != nil { - { - size, err := m.AwsCred.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.AzNodes) > 0 { + for iNdEx := len(m.AzNodes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AzNodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - i -= size + i-- + dAtA[i] = 0x5a + } + } + if len(m.SshKey) > 0 { + i -= len(m.SshKey) + copy(dAtA[i:], m.SshKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SshKey))) + i-- + dAtA[i] = 0x52 + } + if len(m.InstanceType) > 0 { + i -= len(m.InstanceType) + copy(dAtA[i:], m.InstanceType) + i = encodeVarintTypes(dAtA, i, uint64(len(m.InstanceType))) + i-- + dAtA[i] = 0x4a + } + if m.TgwChoice != nil { + { + size := m.TgwChoice.Size() + i -= size + if _, err := m.TgwChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ServiceVpcChoice != nil { + { + size := m.ServiceVpcChoice.Size() + i -= size + if _, err := m.ServiceVpcChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.AwsRegion) > 0 { + i -= len(m.AwsRegion) + copy(dAtA[i:], m.AwsRegion) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AwsRegion))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ServicesVPCReplaceType_NewVpc) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_NewVpc) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NewVpc != nil { + { + size, err := m.NewVpc.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *ServicesVPCReplaceType_VpcId) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_VpcId) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.VpcId) + copy(dAtA[i:], m.VpcId) + i = encodeVarintTypes(dAtA, i, uint64(len(m.VpcId))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} +func (m *ServicesVPCReplaceType_NewTgw) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_NewTgw) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NewTgw != nil { + { + size, err := m.NewTgw.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *ServicesVPCReplaceType_ExistingTgw) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_ExistingTgw) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ExistingTgw != nil { + { + size, err := m.ExistingTgw.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *ServicesVPCReplaceType_NodesPerAz) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_NodesPerAz) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintTypes(dAtA, i, uint64(m.NodesPerAz)) + i-- + dAtA[i] = 0x60 + return len(dAtA) - i, nil +} +func (m *ServicesVPCReplaceType_AwsCred) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_AwsCred) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AwsCred != nil { + { + size, err := m.AwsCred.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- @@ -9251,6 +9915,52 @@ func (m *ServicesVPCReplaceType_EnableInternetVip) MarshalToSizedBuffer(dAtA []b } return len(dAtA) - i, nil } +func (m *ServicesVPCReplaceType_F5XcSecurityGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_F5XcSecurityGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSecurityGroup != nil { + { + size, err := m.F5XcSecurityGroup.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x9a + } + return len(dAtA) - i, nil +} +func (m *ServicesVPCReplaceType_CustomSecurityGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicesVPCReplaceType_CustomSecurityGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CustomSecurityGroup != nil { + { + size, err := m.CustomSecurityGroup.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xa2 + } + return len(dAtA) - i, nil +} func (m *VPCAttachmentType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -10109,6 +10819,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xb2 } } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -10635,6 +11359,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -11019,6 +11757,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -11390,6 +12142,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xb2 } } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -12305,18 +13071,94 @@ func (m *ServicesVPCReplaceType) Size() (n int) { } var l int _ = l + l = len(m.AwsRegion) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.ServiceVpcChoice != nil { + n += m.ServiceVpcChoice.Size() + } + if m.TgwChoice != nil { + n += m.TgwChoice.Size() + } + l = len(m.InstanceType) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.SshKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.AzNodes) > 0 { + for _, e := range m.AzNodes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } if m.WorkerNodes != nil { n += m.WorkerNodes.Size() } if m.Deployment != nil { n += m.Deployment.Size() } - if m.InternetVipChoice != nil { + if m.DiskSize != 0 { + n += 2 + sovTypes(uint64(m.DiskSize)) + } + if m.InternetVipChoice != nil { n += m.InternetVipChoice.Size() } + if m.SecurityGroupChoice != nil { + n += m.SecurityGroupChoice.Size() + } return n } +func (m *ServicesVPCReplaceType_NewVpc) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NewVpc != nil { + l = m.NewVpc.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ServicesVPCReplaceType_VpcId) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.VpcId) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *ServicesVPCReplaceType_NewTgw) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NewTgw != nil { + l = m.NewTgw.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ServicesVPCReplaceType_ExistingTgw) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ExistingTgw != nil { + l = m.ExistingTgw.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *ServicesVPCReplaceType_NodesPerAz) Size() (n int) { if m == nil { return 0 @@ -12395,6 +13237,30 @@ func (m *ServicesVPCReplaceType_EnableInternetVip) Size() (n int) { } return n } +func (m *ServicesVPCReplaceType_F5XcSecurityGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.F5XcSecurityGroup != nil { + l = m.F5XcSecurityGroup.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ServicesVPCReplaceType_CustomSecurityGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CustomSecurityGroup != nil { + l = m.CustomSecurityGroup.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *VPCAttachmentType) Size() (n int) { if m == nil { return 0 @@ -12885,6 +13751,10 @@ func (m *GlobalSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.Tunnels) > 0 { for _, e := range m.Tunnels { l = e.Size() @@ -13068,6 +13938,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -13214,6 +14088,10 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -13420,6 +14298,10 @@ func (m *GetSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.Tunnels) > 0 { for _, e := range m.Tunnels { l = e.Size() @@ -13878,10 +14760,63 @@ func (this *ServicesVPCReplaceType) String() string { if this == nil { return "nil" } + repeatedStringForAzNodes := "[]*AWSVPCTwoInterfaceNodeType{" + for _, f := range this.AzNodes { + repeatedStringForAzNodes += strings.Replace(fmt.Sprintf("%v", f), "AWSVPCTwoInterfaceNodeType", "views.AWSVPCTwoInterfaceNodeType", 1) + "," + } + repeatedStringForAzNodes += "}" s := strings.Join([]string{`&ServicesVPCReplaceType{`, + `AwsRegion:` + fmt.Sprintf("%v", this.AwsRegion) + `,`, + `ServiceVpcChoice:` + fmt.Sprintf("%v", this.ServiceVpcChoice) + `,`, + `TgwChoice:` + fmt.Sprintf("%v", this.TgwChoice) + `,`, + `InstanceType:` + fmt.Sprintf("%v", this.InstanceType) + `,`, + `SshKey:` + fmt.Sprintf("%v", this.SshKey) + `,`, + `AzNodes:` + repeatedStringForAzNodes + `,`, `WorkerNodes:` + fmt.Sprintf("%v", this.WorkerNodes) + `,`, `Deployment:` + fmt.Sprintf("%v", this.Deployment) + `,`, + `DiskSize:` + fmt.Sprintf("%v", this.DiskSize) + `,`, `InternetVipChoice:` + fmt.Sprintf("%v", this.InternetVipChoice) + `,`, + `SecurityGroupChoice:` + fmt.Sprintf("%v", this.SecurityGroupChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ServicesVPCReplaceType_NewVpc) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServicesVPCReplaceType_NewVpc{`, + `NewVpc:` + strings.Replace(fmt.Sprintf("%v", this.NewVpc), "AWSVPCParamsType", "views.AWSVPCParamsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServicesVPCReplaceType_VpcId) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServicesVPCReplaceType_VpcId{`, + `VpcId:` + fmt.Sprintf("%v", this.VpcId) + `,`, + `}`, + }, "") + return s +} +func (this *ServicesVPCReplaceType_NewTgw) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServicesVPCReplaceType_NewTgw{`, + `NewTgw:` + strings.Replace(fmt.Sprintf("%v", this.NewTgw), "TGWParamsType", "TGWParamsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServicesVPCReplaceType_ExistingTgw) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServicesVPCReplaceType_ExistingTgw{`, + `ExistingTgw:` + strings.Replace(fmt.Sprintf("%v", this.ExistingTgw), "ExistingTGWType", "ExistingTGWType", 1) + `,`, `}`, }, "") return s @@ -13956,6 +14891,26 @@ func (this *ServicesVPCReplaceType_EnableInternetVip) String() string { }, "") return s } +func (this *ServicesVPCReplaceType_F5XcSecurityGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServicesVPCReplaceType_F5XcSecurityGroup{`, + `F5XcSecurityGroup:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSecurityGroup), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServicesVPCReplaceType_CustomSecurityGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServicesVPCReplaceType_CustomSecurityGroup{`, + `CustomSecurityGroup:` + strings.Replace(fmt.Sprintf("%v", this.CustomSecurityGroup), "SecurityGroupType", "views.SecurityGroupType", 1) + `,`, + `}`, + }, "") + return s +} func (this *VPCAttachmentType) String() string { if this == nil { return "nil" @@ -14277,6 +15232,7 @@ func (this *GlobalSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `Tunnels:` + repeatedStringForTunnels + `,`, `TfParams:` + strings.Replace(fmt.Sprintf("%v", this.TfParams), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, @@ -14395,6 +15351,7 @@ func (this *CreateSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -14495,6 +15452,7 @@ func (this *ReplaceSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -14641,6 +15599,7 @@ func (this *GetSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `Tunnels:` + repeatedStringForTunnels + `,`, `DirectConnectInfo:` + strings.Replace(fmt.Sprintf("%v", this.DirectConnectInfo), "DirectConnectInfo", "views.DirectConnectInfo", 1) + `,`, `SiteState:` + fmt.Sprintf("%v", this.SiteState) + `,`, @@ -16227,47 +17186,314 @@ func (m *VnConfiguration) Unmarshal(dAtA []byte) error { if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ServicesVPCReplaceType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ServicesVPCReplaceType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ServicesVPCReplaceType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ServicesVPCReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AwsRegion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AwsRegion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NewVpc", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.AWSVPCParamsType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ServiceVpcChoice = &ServicesVPCReplaceType_NewVpc{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VpcId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ServiceVpcChoice = &ServicesVPCReplaceType_VpcId{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NewTgw", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &TGWParamsType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.TgwChoice = &ServicesVPCReplaceType_NewTgw{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExistingTgw", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ExistingTGWType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.TgwChoice = &ServicesVPCReplaceType_ExistingTgw{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InstanceType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InstanceType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SshKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SshKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AzNodes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.AzNodes = append(m.AzNodes, &views.AWSVPCTwoInterfaceNodeType{}) + if err := m.AzNodes[len(m.AzNodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ServicesVPCReplaceType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ServicesVPCReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { + iNdEx = postIndex case 12: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field NodesPerAz", wireType) @@ -16358,6 +17584,25 @@ func (m *ServicesVPCReplaceType) Unmarshal(dAtA []byte) error { } m.Deployment = &ServicesVPCReplaceType_Assisted{v} iNdEx = postIndex + case 22: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DiskSize", wireType) + } + m.DiskSize = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DiskSize |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } case 27: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field TotalNodes", wireType) @@ -16483,6 +17728,76 @@ func (m *ServicesVPCReplaceType) Unmarshal(dAtA []byte) error { } m.InternetVipChoice = &ServicesVPCReplaceType_EnableInternetVip{v} iNdEx = postIndex + case 35: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecurityGroup", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.SecurityGroupChoice = &ServicesVPCReplaceType_F5XcSecurityGroup{v} + iNdEx = postIndex + case 36: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomSecurityGroup", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.SecurityGroupType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.SecurityGroupChoice = &ServicesVPCReplaceType_CustomSecurityGroup{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -19992,6 +21307,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 55: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 998: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Tunnels", wireType) @@ -20973,6 +22324,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 55: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -21594,6 +22981,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 55: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -22758,6 +24181,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 55: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 998: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Tunnels", wireType) diff --git a/pbgo/extschema/schema/views/aws_tgw_site/types.vesmsg.go b/pbgo/extschema/schema/views/aws_tgw_site/types.vesmsg.go index 052eff7ab..50038f9dd 100644 --- a/pbgo/extschema/schema/views/aws_tgw_site/types.vesmsg.go +++ b/pbgo/extschema/schema/views/aws_tgw_site/types.vesmsg.go @@ -1630,6 +1630,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -1834,6 +1843,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -2616,6 +2627,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -2951,6 +2971,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["direct_connect_info"] = ves_io_schema_views.DirectConnectInfoValidator().Validate return v @@ -3623,6 +3645,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -4018,6 +4049,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["tf_params"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate @@ -4457,6 +4490,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -4618,6 +4660,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -5170,6 +5214,38 @@ func (v *ValidateServicesVPCReplaceType) InternetVipChoiceValidationRuleHandler( return validatorFn, nil } +func (v *ValidateServicesVPCReplaceType) SecurityGroupChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for security_group_choice") + } + return validatorFn, nil +} + +func (v *ValidateServicesVPCReplaceType) ServiceVpcChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for service_vpc_choice") + } + return validatorFn, nil +} + +func (v *ValidateServicesVPCReplaceType) ServiceVpcChoiceVpcIdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_VpcId, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for vpc_id") + } + return oValidatorFn_VpcId, nil +} + +func (v *ValidateServicesVPCReplaceType) TgwChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for tgw_choice") + } + return validatorFn, nil +} + func (v *ValidateServicesVPCReplaceType) WorkerNodesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { @@ -5193,6 +5269,94 @@ func (v *ValidateServicesVPCReplaceType) WorkerNodesTotalNodesValidationRuleHand return oValidatorFn_TotalNodes, nil } +func (v *ValidateServicesVPCReplaceType) AwsRegionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for aws_region") + } + + return validatorFn, nil +} + +func (v *ValidateServicesVPCReplaceType) InstanceTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for instance_type") + } + + return validatorFn, nil +} + +func (v *ValidateServicesVPCReplaceType) SshKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ssh_key") + } + + return validatorFn, nil +} + +func (v *ValidateServicesVPCReplaceType) AzNodesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for az_nodes") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.AWSVPCTwoInterfaceNodeType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.AWSVPCTwoInterfaceNodeTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for az_nodes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.AWSVPCTwoInterfaceNodeType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.AWSVPCTwoInterfaceNodeType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated az_nodes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items az_nodes") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateServicesVPCReplaceType) DiskSizeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for disk_size") + } + + return validatorFn, nil +} + func (v *ValidateServicesVPCReplaceType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*ServicesVPCReplaceType) if !ok { @@ -5207,6 +5371,23 @@ func (v *ValidateServicesVPCReplaceType) Validate(ctx context.Context, pm interf return nil } + if fv, exists := v.FldValidators["aws_region"]; exists { + + vOpts := append(opts, db.WithValidateField("aws_region")) + if err := fv(ctx, m.GetAwsRegion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["az_nodes"]; exists { + vOpts := append(opts, db.WithValidateField("az_nodes")) + if err := fv(ctx, m.GetAzNodes(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["deployment"]; exists { val := m.GetDeployment() vOpts := append(opts, @@ -5243,6 +5424,24 @@ func (v *ValidateServicesVPCReplaceType) Validate(ctx context.Context, pm interf } + if fv, exists := v.FldValidators["disk_size"]; exists { + + vOpts := append(opts, db.WithValidateField("disk_size")) + if err := fv(ctx, m.GetDiskSize(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["instance_type"]; exists { + + vOpts := append(opts, db.WithValidateField("instance_type")) + if err := fv(ctx, m.GetInstanceType(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["internet_vip_choice"]; exists { val := m.GetInternetVipChoice() vOpts := append(opts, @@ -5279,6 +5478,123 @@ func (v *ValidateServicesVPCReplaceType) Validate(ctx context.Context, pm interf } + if fv, exists := v.FldValidators["security_group_choice"]; exists { + val := m.GetSecurityGroupChoice() + vOpts := append(opts, + db.WithValidateField("security_group_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetSecurityGroupChoice().(type) { + case *ServicesVPCReplaceType_F5XcSecurityGroup: + if fv, exists := v.FldValidators["security_group_choice.f5xc_security_group"]; exists { + val := m.GetSecurityGroupChoice().(*ServicesVPCReplaceType_F5XcSecurityGroup).F5XcSecurityGroup + vOpts := append(opts, + db.WithValidateField("security_group_choice"), + db.WithValidateField("f5xc_security_group"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ServicesVPCReplaceType_CustomSecurityGroup: + if fv, exists := v.FldValidators["security_group_choice.custom_security_group"]; exists { + val := m.GetSecurityGroupChoice().(*ServicesVPCReplaceType_CustomSecurityGroup).CustomSecurityGroup + vOpts := append(opts, + db.WithValidateField("security_group_choice"), + db.WithValidateField("custom_security_group"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["service_vpc_choice"]; exists { + val := m.GetServiceVpcChoice() + vOpts := append(opts, + db.WithValidateField("service_vpc_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetServiceVpcChoice().(type) { + case *ServicesVPCReplaceType_NewVpc: + if fv, exists := v.FldValidators["service_vpc_choice.new_vpc"]; exists { + val := m.GetServiceVpcChoice().(*ServicesVPCReplaceType_NewVpc).NewVpc + vOpts := append(opts, + db.WithValidateField("service_vpc_choice"), + db.WithValidateField("new_vpc"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ServicesVPCReplaceType_VpcId: + if fv, exists := v.FldValidators["service_vpc_choice.vpc_id"]; exists { + val := m.GetServiceVpcChoice().(*ServicesVPCReplaceType_VpcId).VpcId + vOpts := append(opts, + db.WithValidateField("service_vpc_choice"), + db.WithValidateField("vpc_id"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["ssh_key"]; exists { + + vOpts := append(opts, db.WithValidateField("ssh_key")) + if err := fv(ctx, m.GetSshKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tgw_choice"]; exists { + val := m.GetTgwChoice() + vOpts := append(opts, + db.WithValidateField("tgw_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetTgwChoice().(type) { + case *ServicesVPCReplaceType_NewTgw: + if fv, exists := v.FldValidators["tgw_choice.new_tgw"]; exists { + val := m.GetTgwChoice().(*ServicesVPCReplaceType_NewTgw).NewTgw + vOpts := append(opts, + db.WithValidateField("tgw_choice"), + db.WithValidateField("new_tgw"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ServicesVPCReplaceType_ExistingTgw: + if fv, exists := v.FldValidators["tgw_choice.existing_tgw"]; exists { + val := m.GetTgwChoice().(*ServicesVPCReplaceType_ExistingTgw).ExistingTgw + vOpts := append(opts, + db.WithValidateField("tgw_choice"), + db.WithValidateField("existing_tgw"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["worker_nodes"]; exists { val := m.GetWorkerNodes() vOpts := append(opts, @@ -5363,6 +5679,52 @@ var DefaultServicesVPCReplaceTypeValidator = func() *ValidateServicesVPCReplaceT } v.FldValidators["internet_vip_choice"] = vFn + vrhSecurityGroupChoice := v.SecurityGroupChoiceValidationRuleHandler + rulesSecurityGroupChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhSecurityGroupChoice(rulesSecurityGroupChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.security_group_choice: %s", err) + panic(errMsg) + } + v.FldValidators["security_group_choice"] = vFn + + vrhServiceVpcChoice := v.ServiceVpcChoiceValidationRuleHandler + rulesServiceVpcChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhServiceVpcChoice(rulesServiceVpcChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.service_vpc_choice: %s", err) + panic(errMsg) + } + v.FldValidators["service_vpc_choice"] = vFn + + vrhServiceVpcChoiceVpcId := v.ServiceVpcChoiceVpcIdValidationRuleHandler + rulesServiceVpcChoiceVpcId := map[string]string{ + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.pattern": "^(vpc-)([a-z0-9]{8}|[a-z0-9]{17})$", + } + vFnMap["service_vpc_choice.vpc_id"], err = vrhServiceVpcChoiceVpcId(rulesServiceVpcChoiceVpcId) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ServicesVPCReplaceType.service_vpc_choice_vpc_id: %s", err) + panic(errMsg) + } + + v.FldValidators["service_vpc_choice.vpc_id"] = vFnMap["service_vpc_choice.vpc_id"] + + vrhTgwChoice := v.TgwChoiceValidationRuleHandler + rulesTgwChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTgwChoice(rulesTgwChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.tgw_choice: %s", err) + panic(errMsg) + } + v.FldValidators["tgw_choice"] = vFn + vrhWorkerNodes := v.WorkerNodesValidationRuleHandler rulesWorkerNodes := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", @@ -5398,8 +5760,72 @@ var DefaultServicesVPCReplaceTypeValidator = func() *ValidateServicesVPCReplaceT v.FldValidators["worker_nodes.nodes_per_az"] = vFnMap["worker_nodes.nodes_per_az"] v.FldValidators["worker_nodes.total_nodes"] = vFnMap["worker_nodes.total_nodes"] + vrhAwsRegion := v.AwsRegionValidationRuleHandler + rulesAwsRegion := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhAwsRegion(rulesAwsRegion) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.aws_region: %s", err) + panic(errMsg) + } + v.FldValidators["aws_region"] = vFn + + vrhInstanceType := v.InstanceTypeValidationRuleHandler + rulesInstanceType := map[string]string{ + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhInstanceType(rulesInstanceType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.instance_type: %s", err) + panic(errMsg) + } + v.FldValidators["instance_type"] = vFn + + vrhSshKey := v.SshKeyValidationRuleHandler + rulesSshKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", + } + vFn, err = vrhSshKey(rulesSshKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.ssh_key: %s", err) + panic(errMsg) + } + v.FldValidators["ssh_key"] = vFn + + vrhAzNodes := v.AzNodesValidationRuleHandler + rulesAzNodes := map[string]string{ + "ves.io.schema.rules.repeated.num_items": "1,3", + } + vFn, err = vrhAzNodes(rulesAzNodes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.az_nodes: %s", err) + panic(errMsg) + } + v.FldValidators["az_nodes"] = vFn + + vrhDiskSize := v.DiskSizeValidationRuleHandler + rulesDiskSize := map[string]string{ + "ves.io.schema.rules.uint32.lte": "64000", + } + vFn, err = vrhDiskSize(rulesDiskSize) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicesVPCReplaceType.disk_size: %s", err) + panic(errMsg) + } + v.FldValidators["disk_size"] = vFn + v.FldValidators["deployment.aws_cred"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + v.FldValidators["security_group_choice.custom_security_group"] = ves_io_schema_views.SecurityGroupTypeValidator().Validate + + v.FldValidators["service_vpc_choice.new_vpc"] = ves_io_schema_views.AWSVPCParamsTypeValidator().Validate + + v.FldValidators["tgw_choice.new_tgw"] = TGWParamsTypeValidator().Validate + v.FldValidators["tgw_choice.existing_tgw"] = ExistingTGWTypeValidator().Validate + return v }() @@ -6120,6 +6546,7 @@ var DefaultServicesVPCTypeValidator = func() *ValidateServicesVPCType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -7605,6 +8032,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.Coordinates = f.GetCoordinates() m.CustomDns = f.GetCustomDns() m.GetDirectConnectChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() m.Os = f.GetOs() @@ -7636,6 +8064,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Coordinates = m1.Coordinates f.CustomDns = m1.CustomDns m1.SetDirectConnectChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode f.Os = m1.Os @@ -7783,6 +8212,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GetDirectConnectChoiceFromGlobalSpecType(f) m.DirectConnectInfo = f.GetDirectConnectInfo() m.ErrorDescription = f.GetErrorDescription() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() m.OperatingSystemVersion = f.GetOperatingSystemVersion() @@ -7825,6 +8255,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m1.SetDirectConnectChoiceToGlobalSpecType(f) f.DirectConnectInfo = m1.DirectConnectInfo f.ErrorDescription = m1.ErrorDescription + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode f.OperatingSystemVersion = m1.OperatingSystemVersion @@ -7988,6 +8419,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.Coordinates = f.GetCoordinates() m.CustomDns = f.GetCustomDns() m.GetDirectConnectChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() m.PerformanceEnhancementMode = f.GetPerformanceEnhancementMode() @@ -8027,6 +8459,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Coordinates = m1.Coordinates f.CustomDns = m1.CustomDns m1.SetDirectConnectChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode f.PerformanceEnhancementMode = m1.PerformanceEnhancementMode @@ -8113,6 +8546,111 @@ func (r *ServicesVPCReplaceType) GetInternetVipChoiceFromServicesVPCType(o *Serv return nil } +// create setters in ServicesVPCReplaceType from ServicesVPCType for oneof fields +func (r *ServicesVPCReplaceType) SetSecurityGroupChoiceToServicesVPCType(o *ServicesVPCType) error { + switch of := r.SecurityGroupChoice.(type) { + case nil: + o.SecurityGroupChoice = nil + + case *ServicesVPCReplaceType_CustomSecurityGroup: + o.SecurityGroupChoice = &ServicesVPCType_CustomSecurityGroup{CustomSecurityGroup: of.CustomSecurityGroup} + + case *ServicesVPCReplaceType_F5XcSecurityGroup: + o.SecurityGroupChoice = &ServicesVPCType_F5XcSecurityGroup{F5XcSecurityGroup: of.F5XcSecurityGroup} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ServicesVPCReplaceType) GetSecurityGroupChoiceFromServicesVPCType(o *ServicesVPCType) error { + switch of := o.SecurityGroupChoice.(type) { + case nil: + r.SecurityGroupChoice = nil + + case *ServicesVPCType_CustomSecurityGroup: + r.SecurityGroupChoice = &ServicesVPCReplaceType_CustomSecurityGroup{CustomSecurityGroup: of.CustomSecurityGroup} + + case *ServicesVPCType_F5XcSecurityGroup: + r.SecurityGroupChoice = &ServicesVPCReplaceType_F5XcSecurityGroup{F5XcSecurityGroup: of.F5XcSecurityGroup} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +// create setters in ServicesVPCReplaceType from ServicesVPCType for oneof fields +func (r *ServicesVPCReplaceType) SetServiceVpcChoiceToServicesVPCType(o *ServicesVPCType) error { + switch of := r.ServiceVpcChoice.(type) { + case nil: + o.ServiceVpcChoice = nil + + case *ServicesVPCReplaceType_NewVpc: + o.ServiceVpcChoice = &ServicesVPCType_NewVpc{NewVpc: of.NewVpc} + + case *ServicesVPCReplaceType_VpcId: + o.ServiceVpcChoice = &ServicesVPCType_VpcId{VpcId: of.VpcId} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ServicesVPCReplaceType) GetServiceVpcChoiceFromServicesVPCType(o *ServicesVPCType) error { + switch of := o.ServiceVpcChoice.(type) { + case nil: + r.ServiceVpcChoice = nil + + case *ServicesVPCType_NewVpc: + r.ServiceVpcChoice = &ServicesVPCReplaceType_NewVpc{NewVpc: of.NewVpc} + + case *ServicesVPCType_VpcId: + r.ServiceVpcChoice = &ServicesVPCReplaceType_VpcId{VpcId: of.VpcId} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +// create setters in ServicesVPCReplaceType from ServicesVPCType for oneof fields +func (r *ServicesVPCReplaceType) SetTgwChoiceToServicesVPCType(o *ServicesVPCType) error { + switch of := r.TgwChoice.(type) { + case nil: + o.TgwChoice = nil + + case *ServicesVPCReplaceType_ExistingTgw: + o.TgwChoice = &ServicesVPCType_ExistingTgw{ExistingTgw: of.ExistingTgw} + + case *ServicesVPCReplaceType_NewTgw: + o.TgwChoice = &ServicesVPCType_NewTgw{NewTgw: of.NewTgw} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ServicesVPCReplaceType) GetTgwChoiceFromServicesVPCType(o *ServicesVPCType) error { + switch of := o.TgwChoice.(type) { + case nil: + r.TgwChoice = nil + + case *ServicesVPCType_ExistingTgw: + r.TgwChoice = &ServicesVPCReplaceType_ExistingTgw{ExistingTgw: of.ExistingTgw} + + case *ServicesVPCType_NewTgw: + r.TgwChoice = &ServicesVPCReplaceType_NewTgw{NewTgw: of.NewTgw} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + // create setters in ServicesVPCReplaceType from ServicesVPCType for oneof fields func (r *ServicesVPCReplaceType) SetWorkerNodesToServicesVPCType(o *ServicesVPCType) error { switch of := r.WorkerNodes.(type) { @@ -8158,8 +8696,16 @@ func (m *ServicesVPCReplaceType) fromServicesVPCType(f *ServicesVPCType, withDee if f == nil { return } + m.AwsRegion = f.GetAwsRegion() + m.AzNodes = f.GetAzNodes() m.GetDeploymentFromServicesVPCType(f) + m.DiskSize = f.GetDiskSize() + m.InstanceType = f.GetInstanceType() m.GetInternetVipChoiceFromServicesVPCType(f) + m.GetSecurityGroupChoiceFromServicesVPCType(f) + m.GetServiceVpcChoiceFromServicesVPCType(f) + m.SshKey = f.GetSshKey() + m.GetTgwChoiceFromServicesVPCType(f) m.GetWorkerNodesFromServicesVPCType(f) } @@ -8178,8 +8724,16 @@ func (m *ServicesVPCReplaceType) toServicesVPCType(f *ServicesVPCType, withDeepC } _ = m1 + f.AwsRegion = m1.AwsRegion + f.AzNodes = m1.AzNodes m1.SetDeploymentToServicesVPCType(f) + f.DiskSize = m1.DiskSize + f.InstanceType = m1.InstanceType m1.SetInternetVipChoiceToServicesVPCType(f) + m1.SetSecurityGroupChoiceToServicesVPCType(f) + m1.SetServiceVpcChoiceToServicesVPCType(f) + f.SshKey = m1.SshKey + m1.SetTgwChoiceToServicesVPCType(f) m1.SetWorkerNodesToServicesVPCType(f) } diff --git a/pbgo/extschema/schema/views/aws_vpc_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/aws_vpc_site/crudapi/api.vesapi.go index f0c65050f..8296e8491 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/crudapi/api.vesapi.go @@ -4017,10 +4017,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5710,6 +5714,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -6145,10 +6220,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Select this option to specify custom security groups for slo and sli interfaces." }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", - "title": "Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", + "title": "Allow access to DNS, SSH services on Site", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\nDisable Private Connectivity to Site", @@ -6247,6 +6322,12 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "title": "Disable Logs Streaming", @@ -6307,15 +6388,17 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", "title": "Public SSH key", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "suggested_action": { diff --git a/pbgo/extschema/schema/views/aws_vpc_site/object.pb.go b/pbgo/extschema/schema/views/aws_vpc_site/object.pb.go index 0faa04cb3..562ae2f4f 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/object.pb.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/object.pb.go @@ -245,49 +245,50 @@ func init() { } var fileDescriptor_3ca53dcd571e38cf = []byte{ - // 658 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x4f, 0x4f, 0x13, 0x4f, - 0x18, 0xc7, 0xbb, 0x6d, 0x53, 0xc8, 0x40, 0x80, 0xec, 0xef, 0xd2, 0x1f, 0xea, 0x48, 0xea, 0x85, - 0x18, 0x76, 0xd7, 0xa0, 0x1e, 0x24, 0xa4, 0x26, 0x80, 0x12, 0x13, 0xd0, 0xa4, 0xa8, 0x07, 0x0f, - 0x36, 0xb3, 0xdb, 0xa7, 0xcb, 0x68, 0x77, 0x67, 0x32, 0x33, 0x5b, 0xe8, 0xc1, 0xc4, 0xf8, 0x0a, - 0x3c, 0xf8, 0x22, 0x8c, 0xaf, 0x42, 0x3c, 0x79, 0xf0, 0xd0, 0x70, 0xe2, 0x28, 0xdb, 0x0b, 0x47, - 0x5e, 0x80, 0x07, 0xd3, 0x59, 0xb6, 0xb4, 0xcd, 0x22, 0x26, 0x72, 0xdb, 0xcd, 0xf3, 0xfd, 0x7e, - 0xf6, 0xf9, 0xb7, 0x0f, 0xb2, 0xda, 0x20, 0x6d, 0xca, 0x1c, 0xe9, 0xed, 0x42, 0x40, 0x9c, 0x36, - 0x85, 0x3d, 0xe9, 0x90, 0x3d, 0x59, 0x6f, 0x73, 0xaf, 0x2e, 0xa9, 0x02, 0x87, 0xb9, 0x6f, 0xc0, - 0x53, 0x36, 0x17, 0x4c, 0x31, 0x73, 0x21, 0x91, 0xdb, 0x89, 0xdc, 0xd6, 0x72, 0x7b, 0x58, 0x3e, - 0x6f, 0xf9, 0x54, 0xed, 0x46, 0xae, 0xed, 0xb1, 0xc0, 0xf1, 0x99, 0xcf, 0x1c, 0x6d, 0x74, 0xa3, - 0xa6, 0x7e, 0xd3, 0x2f, 0xfa, 0x29, 0x01, 0xce, 0x5f, 0x1b, 0xfd, 0x3e, 0xe3, 0x8a, 0xb2, 0x50, - 0x9e, 0x05, 0xff, 0x1f, 0x0d, 0xaa, 0x0e, 0x87, 0x34, 0x54, 0x19, 0xcb, 0x1b, 0x24, 0x84, 0xed, - 0x31, 0xfb, 0xd2, 0xa5, 0xb5, 0x0d, 0x13, 0xef, 0x65, 0xa9, 0x15, 0x08, 0x41, 0x9a, 0x4c, 0x04, - 0x75, 0x4e, 0x04, 0x09, 0x40, 0x81, 0x90, 0x23, 0xae, 0x9b, 0x99, 0xae, 0x73, 0x41, 0xa5, 0x5b, - 0x44, 0xa5, 0x67, 0xba, 0x85, 0xe6, 0x03, 0x34, 0x19, 0x80, 0x22, 0x0d, 0xa2, 0x48, 0xd9, 0x58, - 0x30, 0x16, 0xa7, 0x96, 0x6f, 0xd8, 0xa3, 0xfd, 0x4c, 0x84, 0xdb, 0xa0, 0xc8, 0xf3, 0x0e, 0x87, - 0xda, 0x40, 0x6e, 0x6e, 0xa1, 0x59, 0xd9, 0x91, 0x0a, 0x82, 0xfa, 0x80, 0x90, 0xd7, 0x84, 0x5b, - 0x63, 0x84, 0x1d, 0xad, 0x1a, 0xe3, 0xcc, 0x24, 0xde, 0xed, 0x94, 0x56, 0x45, 0x45, 0xc9, 0xc1, - 0x2b, 0x17, 0x34, 0xe2, 0xb6, 0x7d, 0xd9, 0x50, 0xed, 0x1d, 0x0e, 0x9e, 0x26, 0x69, 0xdf, 0xca, - 0xaf, 0xfc, 0x87, 0x87, 0xa5, 0x84, 0xf9, 0xed, 0xa0, 0x9c, 0x9f, 0x33, 0x0e, 0x0f, 0xca, 0x27, - 0x79, 0xf4, 0x08, 0x15, 0x36, 0x41, 0x99, 0xd5, 0xe6, 0xfd, 0x7d, 0xcf, 0xea, 0xfb, 0xac, 0x80, - 0x84, 0xc4, 0x87, 0x00, 0x42, 0x65, 0xb9, 0x44, 0x52, 0xcf, 0x0a, 0x58, 0x48, 0x15, 0x13, 0x4b, - 0xfd, 0x3d, 0xb2, 0x28, 0xb3, 0x68, 0xd8, 0x14, 0x44, 0x2a, 0x11, 0x79, 0x2a, 0x12, 0x60, 0x09, - 0x20, 0x0d, 0xb4, 0x89, 0x26, 0x6a, 0xc0, 0x5b, 0xc4, 0x03, 0x73, 0xf5, 0x0f, 0xa8, 0x48, 0xc2, - 0x85, 0x9c, 0x3d, 0x41, 0x15, 0xa0, 0xc7, 0xa8, 0xb4, 0x2e, 0x80, 0xa8, 0x2b, 0xe0, 0x6c, 0x40, - 0x0b, 0xae, 0x80, 0x53, 0xdc, 0xa2, 0xf2, 0x9f, 0x1b, 0x54, 0x79, 0x81, 0x26, 0xd3, 0x81, 0x98, - 0x4f, 0xd0, 0x84, 0xef, 0xd5, 0xf5, 0x34, 0x93, 0x95, 0xba, 0x73, 0xf9, 0x34, 0x37, 0x5b, 0xcc, - 0x25, 0xad, 0xc1, 0x4c, 0x4b, 0xbe, 0xd7, 0x7f, 0xae, 0xfc, 0xc8, 0xa3, 0xe9, 0x1d, 0x45, 0x54, - 0x24, 0xff, 0x7a, 0x5f, 0x13, 0x79, 0xc6, 0xbe, 0x3e, 0x45, 0x53, 0xc9, 0xdd, 0xa8, 0x0b, 0x68, - 0xca, 0x72, 0x7e, 0xa1, 0xb0, 0x38, 0xb5, 0x7c, 0x3d, 0x73, 0xdb, 0x6b, 0xd0, 0xec, 0x9b, 0xd7, - 0x66, 0xbf, 0xbc, 0x9b, 0x1e, 0x4e, 0xb3, 0x86, 0x58, 0x1a, 0x97, 0xe6, 0x2a, 0x42, 0x1e, 0x0b, - 0x1b, 0x54, 0xff, 0xde, 0xe5, 0x42, 0x26, 0x6e, 0x3d, 0x15, 0xe8, 0x5c, 0x86, 0xf4, 0xe6, 0x6b, - 0x84, 0x1a, 0xc0, 0x5b, 0xac, 0xd3, 0x6f, 0x74, 0xb9, 0xa8, 0x4b, 0xa9, 0x66, 0xf6, 0x29, 0xeb, - 0x7f, 0xb7, 0x37, 0x06, 0xde, 0xa4, 0xde, 0x84, 0x7f, 0x4e, 0x5c, 0xf9, 0xef, 0xb0, 0x3a, 0x87, - 0x66, 0xd0, 0x74, 0x5a, 0xbe, 0x1d, 0xd1, 0xc6, 0xda, 0x27, 0xa3, 0x7b, 0x8c, 0x73, 0x47, 0xc7, - 0x38, 0x77, 0x7a, 0x8c, 0x8d, 0xf7, 0x31, 0x36, 0x3e, 0xc7, 0xd8, 0xf8, 0x1e, 0x63, 0xa3, 0x1b, - 0x63, 0xe3, 0x28, 0xc6, 0xc6, 0xcf, 0x18, 0x1b, 0x27, 0x31, 0xce, 0x9d, 0xc6, 0xd8, 0xf8, 0xd8, - 0xc3, 0xb9, 0xaf, 0x3d, 0x6c, 0x74, 0x7b, 0x38, 0x77, 0xd4, 0xc3, 0xb9, 0x57, 0x2f, 0x7d, 0xc6, - 0xdf, 0xfa, 0x76, 0x9b, 0xb5, 0x74, 0x4e, 0x76, 0x34, 0x74, 0x8c, 0x2c, 0x2e, 0x58, 0x9b, 0x36, - 0x40, 0x58, 0x69, 0xd8, 0xe1, 0xae, 0xcf, 0x1c, 0xd8, 0x57, 0x67, 0x77, 0xe8, 0xc2, 0x93, 0xe7, - 0x96, 0xf4, 0x59, 0xba, 0xfb, 0x3b, 0x00, 0x00, 0xff, 0xff, 0xe3, 0x41, 0x9f, 0xd4, 0xf9, 0x05, - 0x00, 0x00, + // 675 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x31, 0x6f, 0xd3, 0x40, + 0x14, 0xc7, 0xe3, 0x24, 0x4a, 0xab, 0x6b, 0xd5, 0x56, 0x66, 0x09, 0x05, 0x8e, 0x28, 0x2c, 0x15, + 0xaa, 0x6d, 0x54, 0x60, 0xa0, 0x42, 0x45, 0x6a, 0x2b, 0x55, 0x48, 0x2d, 0x48, 0x29, 0x30, 0x30, + 0x10, 0x2e, 0xf6, 0x8b, 0x7b, 0xad, 0xed, 0xb3, 0xee, 0xce, 0x6e, 0x33, 0x20, 0x21, 0x46, 0x26, + 0x06, 0x3e, 0x01, 0x13, 0xe2, 0x03, 0x30, 0x53, 0x26, 0x06, 0x86, 0xaa, 0x53, 0x47, 0xea, 0x2c, + 0x8c, 0xfd, 0x08, 0x28, 0xe7, 0x3a, 0x4d, 0x22, 0x43, 0x98, 0xba, 0xd9, 0x7a, 0xbf, 0xff, 0xff, + 0xdd, 0xbd, 0x7b, 0xef, 0x21, 0x23, 0x06, 0x61, 0x52, 0x66, 0x09, 0x7b, 0x07, 0x7c, 0x62, 0xc5, + 0x14, 0xf6, 0x85, 0x45, 0xf6, 0x45, 0x33, 0x0e, 0xed, 0xa6, 0xa0, 0x12, 0x2c, 0xd6, 0xda, 0x05, + 0x5b, 0x9a, 0x21, 0x67, 0x92, 0xe9, 0xb5, 0x14, 0x37, 0x53, 0xdc, 0x54, 0xb8, 0x39, 0x88, 0xcf, + 0x1b, 0x2e, 0x95, 0x3b, 0x51, 0xcb, 0xb4, 0x99, 0x6f, 0xb9, 0xcc, 0x65, 0x96, 0x12, 0xb6, 0xa2, + 0xb6, 0xfa, 0x53, 0x3f, 0xea, 0x2b, 0x35, 0x9c, 0xbf, 0x36, 0x9c, 0x9f, 0x85, 0x92, 0xb2, 0x40, + 0x9c, 0x07, 0xaf, 0x0e, 0x07, 0x65, 0x27, 0x84, 0x2c, 0x54, 0x1f, 0x39, 0x37, 0x08, 0x08, 0xe2, + 0x11, 0xf9, 0xe2, 0xd8, 0xbb, 0x0d, 0x3a, 0xde, 0xcb, 0xa3, 0x25, 0x70, 0x4e, 0xda, 0x8c, 0xfb, + 0xcd, 0x90, 0x70, 0xe2, 0x83, 0x04, 0x2e, 0x86, 0x54, 0x37, 0x73, 0x55, 0x17, 0x40, 0xfd, 0x7d, + 0x05, 0x55, 0x9e, 0xaa, 0x12, 0xea, 0x0f, 0xd0, 0xa4, 0x0f, 0x92, 0x38, 0x44, 0x92, 0xaa, 0x56, + 0xd3, 0x16, 0xa6, 0x96, 0x6e, 0x98, 0xc3, 0xf5, 0x4c, 0xc1, 0x2d, 0x90, 0xe4, 0x59, 0x27, 0x84, + 0x46, 0x1f, 0xd7, 0x37, 0xd1, 0xac, 0xe8, 0x08, 0x09, 0x7e, 0xb3, 0xef, 0x50, 0x54, 0x0e, 0xb7, + 0x46, 0x1c, 0xb6, 0x15, 0x35, 0xe2, 0x33, 0x93, 0x6a, 0xb7, 0x32, 0xb7, 0x15, 0x54, 0x16, 0x21, + 0xd8, 0xd5, 0x92, 0xb2, 0xb8, 0x6d, 0x8e, 0x7b, 0x54, 0x73, 0x3b, 0x04, 0x5b, 0x39, 0x29, 0xdd, + 0xf2, 0xd7, 0xf2, 0xbb, 0x47, 0x95, 0xd4, 0xf3, 0xfb, 0x61, 0xb5, 0x38, 0xa7, 0x1d, 0x1f, 0x56, + 0x3f, 0x95, 0x91, 0x87, 0x4a, 0x1b, 0x20, 0x75, 0x68, 0xdf, 0x3f, 0xb0, 0x8d, 0x9e, 0xce, 0xf0, + 0x49, 0x40, 0x5c, 0xf0, 0x21, 0x90, 0x46, 0x8b, 0x08, 0x6a, 0x1b, 0x3e, 0x0b, 0xa8, 0x64, 0x7c, + 0xb1, 0x96, 0xcb, 0x08, 0x49, 0x02, 0x87, 0x70, 0xe7, 0x02, 0x8b, 0x41, 0x18, 0x94, 0x19, 0x34, + 0x68, 0x73, 0x22, 0x24, 0x8f, 0x6c, 0x19, 0x71, 0x30, 0x38, 0x10, 0x07, 0xed, 0xa1, 0x89, 0x06, + 0x84, 0x1e, 0xb1, 0x41, 0x7f, 0xfd, 0x8f, 0x8c, 0x91, 0x80, 0xb1, 0xe9, 0x52, 0x26, 0x3f, 0xd7, + 0x3e, 0xa7, 0x12, 0xd0, 0x2e, 0xaa, 0xac, 0x71, 0x20, 0xf2, 0x92, 0x72, 0xad, 0x83, 0x07, 0x97, + 0x92, 0xcb, 0x47, 0xe5, 0x4d, 0x2a, 0x2e, 0xeb, 0xcd, 0xea, 0xcf, 0xd1, 0x64, 0xd6, 0x4a, 0xfa, + 0x63, 0x34, 0xe1, 0xda, 0x4d, 0xd5, 0x87, 0xe9, 0x30, 0xdc, 0x19, 0xdf, 0x87, 0x1b, 0x1e, 0x6b, + 0x11, 0xaf, 0xdf, 0x8d, 0x15, 0xd7, 0xee, 0x7d, 0xd7, 0x7f, 0x16, 0xd1, 0xf4, 0xb6, 0x24, 0x32, + 0x12, 0xff, 0x3d, 0x69, 0x29, 0x9e, 0x33, 0x69, 0x4f, 0xd0, 0x54, 0xba, 0xf1, 0x9a, 0x1c, 0xda, + 0xa2, 0x5a, 0xac, 0x95, 0x16, 0xa6, 0x96, 0xae, 0xe7, 0xce, 0x69, 0x03, 0xda, 0x3d, 0xf1, 0xea, + 0xec, 0x97, 0x37, 0xd3, 0x83, 0xc7, 0x6c, 0x20, 0x96, 0xc5, 0x85, 0xfe, 0x10, 0x21, 0x9b, 0x05, + 0x0e, 0x55, 0x8b, 0xa9, 0x5a, 0xca, 0xb5, 0x5b, 0xcb, 0x00, 0x75, 0x96, 0x01, 0x5e, 0x7f, 0x85, + 0x90, 0x03, 0xa1, 0xc7, 0x3a, 0xbd, 0x5a, 0x57, 0xcb, 0xea, 0x2a, 0x2b, 0xb9, 0x75, 0xca, 0xdb, + 0x54, 0xe6, 0x7a, 0x5f, 0x9b, 0xde, 0x37, 0xf5, 0xbf, 0x70, 0x5c, 0xbe, 0x72, 0xbc, 0x32, 0x87, + 0x66, 0xd0, 0x74, 0x76, 0x7d, 0x33, 0xa2, 0xce, 0xea, 0x47, 0xed, 0xe8, 0x14, 0x17, 0x4e, 0x4e, + 0x71, 0xe1, 0xec, 0x14, 0x6b, 0x6f, 0x13, 0xac, 0x7d, 0x4e, 0xb0, 0xf6, 0x23, 0xc1, 0xda, 0x51, + 0x82, 0xb5, 0x93, 0x04, 0x6b, 0xbf, 0x12, 0xac, 0xfd, 0x4e, 0x70, 0xe1, 0x2c, 0xc1, 0xda, 0x87, + 0x2e, 0x2e, 0x7c, 0xeb, 0x62, 0xed, 0xa8, 0x8b, 0x0b, 0x27, 0x5d, 0x5c, 0x78, 0xf9, 0xc2, 0x65, + 0xe1, 0x9e, 0x6b, 0xc6, 0xcc, 0x53, 0x67, 0x32, 0xa3, 0x81, 0x35, 0x6a, 0x84, 0x9c, 0xc5, 0xd4, + 0x01, 0x6e, 0x64, 0x61, 0x2b, 0x6c, 0xb9, 0xcc, 0x82, 0x03, 0x79, 0xbe, 0x41, 0xff, 0xba, 0xac, + 0x5b, 0x15, 0xb5, 0x50, 0xef, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0x5b, 0x90, 0x26, 0x44, 0xb3, + 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/aws_vpc_site/pkg.vespkg.go b/pbgo/extschema/schema/views/aws_vpc_site/pkg.vespkg.go index 4f6006f8c..d46bb88bf 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/pkg.vespkg.go @@ -89,23 +89,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -120,23 +120,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -153,23 +153,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "create_form.spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_dns.inside_nameserver_v6", @@ -179,6 +179,26 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { FieldPath: "replace_form.spec.custom_dns.outside_nameserver_v6", AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, }, + { + FieldPath: "replace_form.spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, { FieldPath: "spec.custom_dns.inside_nameserver_v6", AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, @@ -189,23 +209,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -220,31 +240,34 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "items.#.get_spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.views.aws_vpc_site.API.Replace"] = []string{ + "spec.ingress_egress_gw.az_nodes.#.disk_size", "spec.ingress_egress_gw.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.blindfold_secret_info_internal", "spec.ingress_egress_gw.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.secret_encoding_type", "spec.ingress_egress_gw.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.vault_secret_info", "spec.ingress_egress_gw.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.wingman_secret_info", + "spec.ingress_gw.az_nodes.#.disk_size", + "spec.voltstack_cluster.az_nodes.#.disk_size", "spec.voltstack_cluster.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.blindfold_secret_info_internal", "spec.voltstack_cluster.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.secret_encoding_type", "spec.voltstack_cluster.global_network_list.global_network_connections.#.enable_forward_proxy.tls_intercept.custom_certificate.private_key.vault_secret_info", @@ -260,6 +283,26 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { FieldPath: "spec.custom_dns.outside_nameserver_v6", AllowedEnvironments: []string{"crt", "softbank_mec", "staging", "test"}, }, + { + FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.ingress_egress_gw.az_nodes.#.workload_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, } mdr.RPCConfidentialRequestRegistry["ves.io.schema.views.aws_vpc_site.API.Replace"] = "ves.io.schema.views.aws_vpc_site.ReplaceRequest" diff --git a/pbgo/extschema/schema/views/aws_vpc_site/private_customapi.pb.go b/pbgo/extschema/schema/views/aws_vpc_site/private_customapi.pb.go index fd53a961f..9fda00e8c 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/private_customapi.pb.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/private_customapi.pb.go @@ -40,39 +40,40 @@ func init() { } var fileDescriptor_1dc7fe64d1504e69 = []byte{ - // 504 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0x41, 0x6b, 0xd4, 0x40, - 0x18, 0xcd, 0x54, 0xf1, 0xb0, 0x17, 0xcb, 0x9e, 0xea, 0x5a, 0xc6, 0xb2, 0x88, 0x82, 0x9a, 0x19, - 0x50, 0x0a, 0xe2, 0x4d, 0xc5, 0x83, 0x20, 0x58, 0x14, 0x3d, 0xf4, 0x12, 0x26, 0xd3, 0x6f, 0xb3, - 0xa3, 0x9b, 0x7c, 0xe3, 0xcc, 0x24, 0x5b, 0x91, 0x82, 0xf4, 0x17, 0x14, 0xfc, 0x03, 0x1e, 0xfd, - 0x0f, 0x7b, 0xe9, 0x4d, 0x4f, 0xb2, 0xa8, 0x87, 0x1e, 0xdd, 0xac, 0x82, 0xc7, 0xfe, 0x04, 0xd9, - 0xc9, 0xae, 0x6c, 0x62, 0x45, 0x0f, 0xde, 0xbe, 0xc9, 0x7b, 0x6f, 0xf2, 0xbe, 0x97, 0x97, 0xd6, - 0xcd, 0x02, 0x2c, 0x53, 0xc8, 0xad, 0xec, 0x43, 0x2a, 0x78, 0xa1, 0x60, 0x68, 0xb9, 0x18, 0xda, - 0xa8, 0xd0, 0x32, 0xb2, 0xca, 0x01, 0xd7, 0x46, 0x15, 0xc2, 0x41, 0x24, 0x73, 0xeb, 0x30, 0x15, - 0x5a, 0x31, 0x6d, 0xd0, 0x61, 0x7b, 0xa3, 0x52, 0xb2, 0x4a, 0xc9, 0xbc, 0x92, 0x2d, 0x2b, 0x3b, - 0x61, 0xa2, 0x5c, 0x3f, 0x8f, 0x99, 0xc4, 0x94, 0x27, 0x98, 0x20, 0xf7, 0xc2, 0x38, 0xef, 0xf9, - 0x93, 0x3f, 0xf8, 0xa9, 0xba, 0xb0, 0xb3, 0x9e, 0x20, 0x26, 0x03, 0xe0, 0x42, 0x2b, 0x2e, 0xb2, - 0x0c, 0x9d, 0x70, 0x0a, 0x33, 0x3b, 0x47, 0xcf, 0xd7, 0x8d, 0xa2, 0x5e, 0x06, 0xcf, 0xd5, 0x41, - 0xf7, 0x52, 0xc3, 0x02, 0x5a, 0x6f, 0x2c, 0x28, 0x06, 0x6a, 0x47, 0x38, 0x98, 0xa3, 0xdd, 0x06, - 0x0a, 0x16, 0xb2, 0xa2, 0x71, 0xf9, 0xc6, 0xef, 0x11, 0x45, 0x75, 0xc6, 0xc5, 0x93, 0x42, 0x9c, - 0x45, 0x10, 0x2d, 0x3b, 0xb9, 0xd4, 0x64, 0x19, 0x97, 0x8b, 0x41, 0xd4, 0x47, 0xeb, 0x96, 0x1d, - 0x5f, 0x7f, 0x7b, 0xaa, 0xb5, 0xba, 0x55, 0x85, 0x7e, 0xd7, 0x67, 0x7e, 0x7b, 0xeb, 0x7e, 0xfb, - 0xcb, 0x4a, 0xeb, 0xec, 0x13, 0x3d, 0x73, 0xfe, 0x58, 0x39, 0xb8, 0x67, 0x0c, 0x9a, 0xf6, 0x55, - 0x76, 0xd2, 0x27, 0x68, 0xb0, 0x1e, 0xc1, 0x8b, 0x1c, 0xac, 0xeb, 0x5c, 0xfb, 0x37, 0xb2, 0xd5, - 0x98, 0x59, 0xe8, 0x7e, 0x27, 0xe5, 0xfb, 0xb5, 0x0b, 0xbd, 0xcd, 0x5d, 0x19, 0xce, 0xf6, 0x08, - 0x53, 0x91, 0x89, 0x04, 0x52, 0xc8, 0x5c, 0x18, 0x0b, 0xab, 0x64, 0x98, 0x5b, 0x30, 0xfb, 0x9f, - 0xbf, 0xbd, 0x59, 0x19, 0x91, 0xee, 0x83, 0x45, 0x47, 0x78, 0xd5, 0x11, 0x9e, 0x89, 0x14, 0xac, - 0x16, 0x12, 0x2c, 0x7f, 0xf5, 0x6b, 0xde, 0xab, 0xd7, 0xca, 0x03, 0x7b, 0x3c, 0xf7, 0x06, 0xfc, - 0xa3, 0x08, 0x66, 0x16, 0x6e, 0x91, 0x2b, 0xdb, 0xfd, 0xae, 0xe4, 0x35, 0xb7, 0x5c, 0x65, 0xce, - 0xa0, 0xd5, 0x20, 0x1d, 0x1f, 0x1a, 0xf5, 0xdf, 0xde, 0xd4, 0xd9, 0x3c, 0x1c, 0x91, 0xd3, 0x9f, - 0x46, 0xe4, 0xf2, 0xdf, 0xca, 0xcc, 0x1e, 0xc6, 0xcf, 0x40, 0xba, 0xfd, 0x8f, 0x6b, 0x2b, 0xab, - 0xe4, 0xce, 0x01, 0x19, 0x4f, 0x68, 0x70, 0x34, 0xa1, 0xc1, 0xf1, 0x84, 0x92, 0xd7, 0x25, 0x25, - 0xef, 0x4a, 0x4a, 0x3e, 0x94, 0x94, 0x8c, 0x4b, 0x4a, 0xbe, 0x96, 0x94, 0xfc, 0x28, 0x69, 0x70, - 0x5c, 0x52, 0x72, 0x30, 0xa5, 0xc1, 0xe1, 0x94, 0x92, 0xf1, 0x94, 0x06, 0x47, 0x53, 0x1a, 0x6c, - 0x3f, 0x4d, 0x50, 0x3f, 0x4f, 0x58, 0x81, 0x03, 0x07, 0xc6, 0x08, 0x96, 0x5b, 0xee, 0x87, 0x1e, - 0x9a, 0x34, 0xd4, 0x06, 0x0b, 0xb5, 0x03, 0x26, 0x5c, 0xc0, 0x5c, 0xc7, 0x09, 0x72, 0xd8, 0x75, - 0xf3, 0x1c, 0xfe, 0xf8, 0x9b, 0xc6, 0x67, 0x7c, 0x79, 0x6e, 0xfc, 0x0c, 0x00, 0x00, 0xff, 0xff, - 0x8c, 0x3f, 0x54, 0x28, 0xd1, 0x03, 0x00, 0x00, + // 517 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0xb1, 0x8b, 0x13, 0x4f, + 0x18, 0xdd, 0xc9, 0xef, 0x87, 0x45, 0x1a, 0x8f, 0x54, 0x67, 0x3c, 0x86, 0x10, 0x44, 0x41, 0x6f, + 0x77, 0x40, 0x39, 0x10, 0x3b, 0x3d, 0x2c, 0x04, 0xc1, 0x43, 0xd1, 0xe2, 0x9a, 0x65, 0x76, 0xf3, + 0x65, 0x33, 0x9a, 0xdd, 0x6f, 0x9c, 0xf9, 0x76, 0x73, 0x22, 0x07, 0x72, 0x9d, 0xdd, 0x81, 0xff, + 0x84, 0xff, 0x43, 0x9a, 0x2b, 0x04, 0xad, 0x24, 0x68, 0x73, 0xa5, 0xd9, 0x58, 0x58, 0x5e, 0x69, + 0x29, 0x99, 0x24, 0x92, 0xac, 0x11, 0x2d, 0xec, 0xbe, 0xd9, 0xf7, 0xde, 0xec, 0xfb, 0xde, 0xbe, + 0xad, 0xdf, 0x2c, 0xc0, 0x06, 0x0a, 0x85, 0x8d, 0x7b, 0x90, 0x4a, 0x51, 0x28, 0x18, 0x58, 0x21, + 0x07, 0x36, 0x2c, 0x74, 0x1c, 0x5a, 0x45, 0x20, 0xb4, 0x51, 0x85, 0x24, 0x08, 0xe3, 0xdc, 0x12, + 0xa6, 0x52, 0xab, 0x40, 0x1b, 0x24, 0x6c, 0xb4, 0x66, 0xca, 0x60, 0xa6, 0x0c, 0x9c, 0x32, 0x58, + 0x56, 0x36, 0xfd, 0x44, 0x51, 0x2f, 0x8f, 0x82, 0x18, 0x53, 0x91, 0x60, 0x82, 0xc2, 0x09, 0xa3, + 0xbc, 0xeb, 0x4e, 0xee, 0xe0, 0xa6, 0xd9, 0x85, 0xcd, 0xad, 0x04, 0x31, 0xe9, 0x83, 0x90, 0x5a, + 0x09, 0x99, 0x65, 0x48, 0x92, 0x14, 0x66, 0x76, 0x8e, 0x5e, 0x5c, 0x35, 0x8a, 0x7a, 0x19, 0xbc, + 0xb0, 0x0a, 0xd2, 0x0b, 0x0d, 0x0b, 0x68, 0xab, 0xb2, 0xa0, 0xec, 0xab, 0x8e, 0x24, 0x98, 0xa3, + 0xed, 0x0a, 0x0a, 0x16, 0xb2, 0xa2, 0x72, 0x79, 0xeb, 0xd7, 0x88, 0xc2, 0x55, 0xc6, 0xa5, 0x75, + 0x21, 0x4e, 0x23, 0x08, 0x97, 0x9d, 0x5c, 0xae, 0xb2, 0x0c, 0xe5, 0xb2, 0x1f, 0xf6, 0xd0, 0xd2, + 0xb2, 0xe3, 0xeb, 0xef, 0xfe, 0xab, 0x6f, 0xec, 0xcd, 0x42, 0xdf, 0x75, 0x99, 0xdf, 0xde, 0xbb, + 0xd7, 0xf8, 0x5e, 0xab, 0x9f, 0x7f, 0xac, 0xa7, 0xce, 0x1f, 0x29, 0x82, 0xbb, 0xc6, 0xa0, 0x69, + 0x5c, 0x0b, 0xd6, 0x7d, 0x82, 0x0a, 0xeb, 0x21, 0x3c, 0xcf, 0xc1, 0x52, 0x73, 0xfb, 0xef, 0xc8, + 0x56, 0x63, 0x66, 0xa1, 0xfd, 0xba, 0x56, 0xbe, 0xdf, 0xdc, 0xed, 0xee, 0x1c, 0xc4, 0xfe, 0x74, + 0x0f, 0x3f, 0x95, 0x99, 0x4c, 0x20, 0x85, 0x8c, 0xfc, 0x48, 0x5a, 0x15, 0xfb, 0xb9, 0x05, 0xb3, + 0xdd, 0x5a, 0x4b, 0xb0, 0x24, 0xb3, 0x8e, 0x34, 0x1d, 0xc7, 0x39, 0xfa, 0xfc, 0xf5, 0x4d, 0x6d, + 0xc8, 0xda, 0xf7, 0x17, 0x3d, 0x12, 0xb3, 0x1e, 0x89, 0x4c, 0xa6, 0x60, 0xb5, 0x8c, 0xc1, 0x8a, + 0x97, 0x3f, 0xe7, 0xc3, 0xd5, 0xea, 0x39, 0xe0, 0x50, 0xe4, 0xce, 0xa4, 0x7b, 0x14, 0xc2, 0xd4, + 0xe6, 0x2d, 0x76, 0x75, 0xbf, 0xd7, 0x8e, 0xc5, 0xca, 0x46, 0x42, 0x65, 0x64, 0xd0, 0x6a, 0x88, + 0x49, 0x0c, 0x8c, 0xfa, 0x67, 0x6f, 0x6a, 0xee, 0x9c, 0x0c, 0xd9, 0xff, 0x9f, 0x86, 0xec, 0xca, + 0x9f, 0x0a, 0x1f, 0x3c, 0x88, 0x9e, 0x42, 0x4c, 0x47, 0x1f, 0x37, 0x6b, 0x1b, 0xec, 0xce, 0x31, + 0x1b, 0x8d, 0xb9, 0x77, 0x3a, 0xe6, 0xde, 0xd9, 0x98, 0xb3, 0x57, 0x25, 0x67, 0x6f, 0x4b, 0xce, + 0x3e, 0x94, 0x9c, 0x8d, 0x4a, 0xce, 0xbe, 0x94, 0x9c, 0x7d, 0x2b, 0xb9, 0x77, 0x56, 0x72, 0x76, + 0x3c, 0xe1, 0xde, 0xc9, 0x84, 0xb3, 0xd1, 0x84, 0x7b, 0xa7, 0x13, 0xee, 0xed, 0x3f, 0x49, 0x50, + 0x3f, 0x4b, 0x82, 0x02, 0xfb, 0x04, 0xc6, 0xc8, 0x20, 0xb7, 0xc2, 0x0d, 0x5d, 0x34, 0xa9, 0xaf, + 0x0d, 0x16, 0xaa, 0x03, 0xc6, 0x5f, 0xc0, 0x42, 0x47, 0x09, 0x0a, 0x38, 0xa0, 0x79, 0x0e, 0xbf, + 0xfd, 0x95, 0xa3, 0x73, 0xae, 0x60, 0x37, 0x7e, 0x04, 0x00, 0x00, 0xff, 0xff, 0x23, 0xdf, 0x7c, + 0x77, 0xf5, 0x03, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.pb.go b/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.pb.go index 73d30ae08..69620c86e 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.pb.go @@ -1064,110 +1064,112 @@ func init() { } var fileDescriptor_25dbb827975faad4 = []byte{ - // 1648 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x41, 0x6f, 0x1b, 0xc7, - 0x15, 0xd6, 0x90, 0x14, 0x2d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x9a, 0x75, 0x59, 0x96, 0x09, - 0x5a, 0xc1, 0x30, 0x97, 0x8e, 0x52, 0xa3, 0x89, 0xda, 0xba, 0xa5, 0xe8, 0x95, 0x22, 0x57, 0xb6, - 0x8c, 0x21, 0x2d, 0x14, 0xbd, 0x6c, 0x97, 0xcb, 0x47, 0x66, 0x63, 0x72, 0x77, 0x3b, 0x33, 0xa4, - 0x42, 0x14, 0x42, 0xdd, 0x1c, 0x7b, 0x69, 0x81, 0x5e, 0x8a, 0xa2, 0x87, 0x5c, 0x02, 0xf4, 0xdc, - 0x53, 0x01, 0x5d, 0x7c, 0x4b, 0x90, 0x43, 0x61, 0xb4, 0x3d, 0xf8, 0x18, 0xd3, 0x6d, 0x91, 0x43, - 0x0f, 0x41, 0x7f, 0x40, 0x51, 0xec, 0xcc, 0x2e, 0x4d, 0x52, 0x54, 0x48, 0xaa, 0x3a, 0x71, 0x67, - 0xde, 0xfb, 0xbe, 0x9d, 0xef, 0xcd, 0x7b, 0x8f, 0xb3, 0x83, 0x6f, 0xf6, 0x80, 0xeb, 0x8e, 0x57, - 0xe2, 0xf6, 0xbb, 0xd0, 0xb1, 0x4a, 0x3d, 0x07, 0x0e, 0x79, 0xc9, 0x3a, 0xe4, 0x66, 0xcf, 0xb7, - 0x4d, 0xee, 0x08, 0x28, 0xf9, 0xdd, 0x7a, 0xdb, 0xb1, 0x4d, 0x9b, 0x75, 0x1b, 0x96, 0xef, 0xe8, - 0x3e, 0xf3, 0x84, 0x47, 0xf2, 0x0a, 0xa6, 0x2b, 0x98, 0x2e, 0x61, 0xfa, 0x28, 0x2c, 0x5b, 0x6c, - 0x39, 0xe2, 0xdd, 0x6e, 0x5d, 0xb7, 0xbd, 0x4e, 0xa9, 0xe5, 0xb5, 0xbc, 0x92, 0x04, 0xd6, 0xbb, - 0x4d, 0x39, 0x92, 0x03, 0xf9, 0xa4, 0x08, 0xb3, 0x57, 0x5b, 0x9e, 0xd7, 0x6a, 0x43, 0xc9, 0xf2, - 0x9d, 0x92, 0xe5, 0xba, 0x9e, 0xb0, 0x84, 0xe3, 0xb9, 0x3c, 0xb4, 0x7e, 0x35, 0xb4, 0x0e, 0x39, - 0xa0, 0xe3, 0x8b, 0x7e, 0x68, 0xcc, 0x8e, 0x4b, 0x00, 0xc6, 0x3c, 0x36, 0x04, 0x8e, 0xdb, 0x3c, - 0x7f, 0x94, 0xf5, 0xca, 0xb8, 0x51, 0xf4, 0x7d, 0x88, 0x4c, 0x85, 0x89, 0xb0, 0x00, 0x07, 0xb7, - 0x37, 0x01, 0xcf, 0x9f, 0x0c, 0x9d, 0x39, 0xee, 0x51, 0x9c, 0x19, 0x5c, 0xaf, 0xfe, 0x1e, 0xd8, - 0x22, 0x74, 0xbf, 0x3e, 0xd3, 0x7d, 0x74, 0x89, 0xdf, 0x9e, 0xe6, 0x2d, 0x80, 0x31, 0xab, 0xe9, - 0xb1, 0x8e, 0xe9, 0x5b, 0xcc, 0xea, 0x80, 0x00, 0xc6, 0xc7, 0x50, 0x5f, 0x9f, 0x8a, 0x7a, 0xe1, - 0x50, 0xf8, 0x13, 0xc2, 0x17, 0x2b, 0x0c, 0x2c, 0x01, 0x14, 0x7e, 0xd6, 0x05, 0x2e, 0xc8, 0x0f, - 0xf0, 0x4a, 0x07, 0x84, 0xd5, 0xb0, 0x84, 0x95, 0x41, 0x79, 0xb4, 0x9e, 0xde, 0x78, 0x4d, 0x1f, - 0xdf, 0xfe, 0x7d, 0xa9, 0x42, 0xa1, 0xee, 0x82, 0xb0, 0x6a, 0x7d, 0x1f, 0xe8, 0x10, 0x44, 0x1e, - 0xe0, 0x04, 0xf7, 0xc1, 0xce, 0xc4, 0x24, 0xf8, 0x86, 0x3e, 0x2b, 0x77, 0x74, 0xc5, 0x54, 0xf5, - 0xc1, 0x0e, 0x98, 0xb6, 0x2e, 0xfd, 0xfe, 0x68, 0x35, 0x20, 0xd0, 0x5b, 0xb6, 0x19, 0xfc, 0x52, - 0x49, 0xb7, 0x99, 0xfa, 0xf4, 0x56, 0x52, 0xbd, 0xb9, 0xf0, 0x5f, 0x84, 0xd7, 0xa2, 0x45, 0x73, - 0xdf, 0x73, 0x39, 0x90, 0xef, 0x9d, 0x58, 0x75, 0x7e, 0xea, 0xaa, 0x77, 0x40, 0x4c, 0x59, 0xf2, - 0x3e, 0xbe, 0xc4, 0xfb, 0x5c, 0x40, 0xc7, 0x1c, 0x92, 0xc4, 0x25, 0xc9, 0x37, 0x27, 0x48, 0xaa, - 0xd2, 0xeb, 0x24, 0xd5, 0x9a, 0x82, 0xdf, 0x8d, 0x08, 0xe9, 0x58, 0x0c, 0x8a, 0xb3, 0x63, 0xb0, - 0x03, 0x62, 0x81, 0x00, 0xfc, 0x0b, 0xe1, 0x35, 0x0a, 0x7e, 0xdb, 0xb2, 0x87, 0xdb, 0xf6, 0xc3, - 0x13, 0x01, 0x78, 0x7d, 0x6a, 0x00, 0x42, 0xd8, 0x94, 0x20, 0x1c, 0x8c, 0xad, 0xf9, 0x8d, 0xd9, - 0x6b, 0x0e, 0xa9, 0x66, 0xac, 0x9b, 0x94, 0xb0, 0xc6, 0x80, 0x7b, 0x5d, 0x66, 0x83, 0xd9, 0x03, - 0xc6, 0x1d, 0xcf, 0x95, 0xd1, 0x4d, 0x6d, 0x25, 0x3e, 0x3f, 0x46, 0x88, 0x5e, 0x8a, 0xac, 0x07, - 0xca, 0x38, 0x2a, 0xf4, 0x25, 0x7c, 0x69, 0xa8, 0x53, 0xed, 0x74, 0xe1, 0x43, 0x84, 0xf1, 0x0e, - 0x88, 0x48, 0xf7, 0x55, 0x9c, 0x72, 0xad, 0x0e, 0x70, 0xdf, 0xb2, 0x41, 0x0a, 0x4f, 0xd1, 0x17, - 0x13, 0x84, 0xe0, 0x44, 0x30, 0x90, 0x9a, 0x52, 0x54, 0x3e, 0x93, 0x9f, 0xe2, 0xe0, 0x8d, 0x92, - 0xcc, 0x0c, 0x6a, 0xc7, 0x12, 0x72, 0x39, 0x6b, 0x1b, 0xdf, 0x99, 0x6b, 0x9b, 0xa2, 0x85, 0x6c, - 0x4b, 0x68, 0xc5, 0x6b, 0x00, 0x5d, 0x63, 0x63, 0x73, 0x85, 0x8f, 0x92, 0x38, 0x3d, 0xe2, 0x49, - 0xee, 0xe3, 0xb4, 0x2d, 0xd3, 0x55, 0xbe, 0x2f, 0x0c, 0x70, 0x69, 0xde, 0xc2, 0x08, 0x95, 0x52, - 0xac, 0x38, 0x82, 0x77, 0x90, 0x2a, 0x5e, 0x65, 0x2a, 0x2e, 0x8a, 0x32, 0x3e, 0x6f, 0xad, 0x8d, - 0x67, 0x0d, 0x4d, 0x87, 0x2c, 0x92, 0x74, 0xda, 0x46, 0x25, 0xbe, 0x64, 0xa3, 0xc6, 0x8a, 0x6e, - 0xf9, 0x3c, 0x8a, 0xee, 0xc2, 0xb9, 0x14, 0x5d, 0xf2, 0xfc, 0x8a, 0x8e, 0xdc, 0xc5, 0x49, 0x2e, - 0x2c, 0xd1, 0xe5, 0x99, 0x0f, 0xff, 0x80, 0xf2, 0xf1, 0xf5, 0xf4, 0x86, 0x3e, 0x9b, 0xb7, 0x2a, - 0x11, 0x6a, 0xc1, 0x5b, 0xf1, 0xc7, 0x47, 0x88, 0x86, 0x24, 0x64, 0x17, 0xbf, 0xc4, 0xa0, 0x09, - 0x8c, 0x39, 0x6e, 0xcb, 0x54, 0xff, 0x06, 0x3c, 0xb3, 0x22, 0x79, 0xaf, 0x9e, 0x52, 0xae, 0x4d, - 0xa9, 0x55, 0x1b, 0xc2, 0xd4, 0x3c, 0x27, 0x07, 0x38, 0xd3, 0x80, 0x36, 0x08, 0x68, 0x98, 0xca, - 0x06, 0x8d, 0x21, 0x63, 0x6a, 0x0e, 0xc6, 0xcb, 0x21, 0x9a, 0x86, 0xe0, 0x88, 0xf7, 0xc7, 0xf8, - 0x4a, 0xc3, 0xe1, 0x56, 0xbd, 0x3d, 0x8d, 0x18, 0xcf, 0x41, 0xfc, 0x6a, 0x04, 0x9f, 0x60, 0x1e, - 0xa9, 0xeb, 0x3b, 0x89, 0x15, 0xa4, 0xc5, 0x0a, 0x1f, 0x21, 0x9c, 0xde, 0x73, 0xf8, 0x9c, 0xb5, - 0xfc, 0x0d, 0xbc, 0xda, 0xb6, 0xea, 0xd0, 0x36, 0x9b, 0x4e, 0x5b, 0x00, 0x0b, 0x6b, 0x3a, 0x2d, - 0xe7, 0xb6, 0xe5, 0x14, 0x79, 0x0d, 0x5f, 0x64, 0xe0, 0x7b, 0x4c, 0x98, 0x4d, 0x07, 0xda, 0x0d, - 0x9e, 0x89, 0xe7, 0xe3, 0xeb, 0x29, 0xba, 0xaa, 0x26, 0xb7, 0xe5, 0x1c, 0xb9, 0x81, 0x5f, 0x0e, - 0x9d, 0xd4, 0xa6, 0x44, 0xbe, 0x09, 0xe9, 0x4b, 0x94, 0x4d, 0x6d, 0xa1, 0x42, 0x14, 0xfe, 0x9e, - 0xc4, 0x9a, 0x5a, 0xa7, 0x2a, 0xe8, 0x5d, 0x01, 0x1d, 0x72, 0x19, 0x27, 0x05, 0xb8, 0x96, 0x2b, - 0x64, 0xbe, 0xa5, 0x68, 0x38, 0x3a, 0x43, 0x43, 0xd2, 0x70, 0xbc, 0xeb, 0x34, 0x54, 0x4f, 0xa4, - 0xc1, 0x23, 0xc9, 0xe3, 0x74, 0x03, 0xb8, 0xcd, 0x1c, 0x79, 0xbe, 0xc8, 0xa4, 0x95, 0xd2, 0x91, - 0x29, 0x92, 0xc5, 0x2b, 0x51, 0x98, 0x33, 0xab, 0x79, 0xb4, 0xbe, 0x42, 0x87, 0x63, 0x72, 0x80, - 0x93, 0x32, 0x28, 0x4a, 0x52, 0x7a, 0xe3, 0xd6, 0xec, 0x8c, 0x9d, 0x54, 0xa7, 0xef, 0x49, 0x02, - 0xc3, 0x15, 0xac, 0x4f, 0x43, 0x36, 0x02, 0x38, 0x3d, 0x72, 0x56, 0x0b, 0x73, 0xa1, 0x72, 0x06, - 0xf2, 0xf2, 0x0b, 0x16, 0xf5, 0x86, 0x51, 0x5e, 0xf2, 0x36, 0xc6, 0xde, 0xa1, 0x0b, 0xcc, 0x0c, - 0xa8, 0x32, 0x29, 0x59, 0xcc, 0xd9, 0x89, 0xb7, 0x1c, 0x38, 0x70, 0x18, 0xe5, 0x5b, 0x4a, 0x7a, - 0x07, 0x33, 0x63, 0x0d, 0xe9, 0xe2, 0x79, 0x34, 0xa4, 0xb5, 0xff, 0xab, 0x21, 0xbd, 0x83, 0x57, - 0x5a, 0x20, 0x64, 0x3b, 0x09, 0x5b, 0xdb, 0x62, 0x4d, 0x89, 0x5e, 0x68, 0xa9, 0x01, 0xa1, 0x18, - 0x87, 0xc9, 0xca, 0x41, 0x84, 0x0d, 0xe3, 0x4c, 0x8d, 0x28, 0xa5, 0x68, 0xaa, 0x20, 0xb2, 0x6f, - 0xe3, 0xf4, 0xc8, 0x2e, 0x07, 0x59, 0xf8, 0x10, 0xfa, 0x61, 0xc6, 0x06, 0x8f, 0xe4, 0x65, 0xbc, - 0xdc, 0xb3, 0xda, 0xdd, 0x28, 0x59, 0xd5, 0x60, 0x33, 0xf6, 0x16, 0xca, 0xde, 0xc2, 0xda, 0xe4, - 0x1e, 0x2e, 0x82, 0xbf, 0x93, 0x58, 0x59, 0xd6, 0x92, 0x85, 0x5f, 0x21, 0xbc, 0x3a, 0x9a, 0x1b, - 0xe4, 0x1d, 0xbc, 0xec, 0x08, 0xe8, 0xf0, 0x8c, 0xea, 0xb4, 0x1b, 0x8b, 0xa7, 0x16, 0x55, 0x04, - 0xe4, 0x06, 0x4e, 0xaa, 0x0f, 0x83, 0x4c, 0x4c, 0x52, 0x65, 0x26, 0xa8, 0x8c, 0xc0, 0x28, 0x43, - 0x1c, 0xfa, 0x15, 0x1e, 0xe2, 0x8b, 0xb7, 0x65, 0x43, 0x3c, 0xfb, 0xc1, 0x62, 0x1d, 0x6b, 0x4d, - 0xcb, 0x69, 0x9b, 0x4e, 0x73, 0xd8, 0x38, 0x65, 0x51, 0xaf, 0xd0, 0xb5, 0x60, 0x7e, 0xb7, 0x19, - 0x35, 0xc4, 0x6b, 0xff, 0x41, 0xf8, 0x95, 0xa9, 0x47, 0x09, 0x92, 0xc5, 0x97, 0x77, 0x8c, 0x9a, - 0x49, 0xab, 0xf7, 0xcd, 0xed, 0x7d, 0x7a, 0xb7, 0x5c, 0x33, 0x6f, 0x1b, 0xdb, 0xe5, 0x07, 0x7b, - 0x35, 0x6d, 0x89, 0x7c, 0x0d, 0x5f, 0x99, 0xb0, 0x6d, 0xef, 0x53, 0xb3, 0x42, 0x8d, 0x72, 0xcd, - 0xd0, 0x10, 0xc9, 0xe1, 0xec, 0x14, 0x33, 0x35, 0xee, 0xef, 0x95, 0x2b, 0x86, 0x16, 0x23, 0x57, - 0xf0, 0x2b, 0x13, 0xf6, 0x6a, 0xad, 0x5c, 0x7b, 0x50, 0xd5, 0xe2, 0xe4, 0x55, 0xfc, 0x95, 0x09, - 0x13, 0x35, 0xca, 0xb7, 0xb5, 0x04, 0x79, 0x1d, 0xe7, 0x4f, 0x18, 0xb6, 0x0d, 0x4a, 0x77, 0xef, - 0xed, 0x98, 0xfb, 0x5b, 0x77, 0x8c, 0x4a, 0xad, 0xaa, 0x2d, 0x4f, 0xf1, 0xda, 0xa2, 0xfb, 0x3f, - 0x32, 0xee, 0x29, 0x67, 0xe3, 0x5e, 0xc5, 0xa8, 0x6a, 0xc9, 0x8d, 0x5f, 0x62, 0x1c, 0x2f, 0xdf, - 0xdf, 0x25, 0xff, 0x46, 0x38, 0xa9, 0x4e, 0x36, 0x64, 0xd1, 0x33, 0x50, 0xf6, 0xc6, 0xfc, 0x80, - 0xf0, 0xb8, 0xf8, 0x8b, 0xc1, 0xc7, 0x99, 0xef, 0x36, 0x6f, 0xbe, 0x6f, 0x17, 0x03, 0x6b, 0xb1, - 0x63, 0xb9, 0x56, 0x0b, 0x3a, 0xe0, 0x8a, 0x62, 0xdd, 0xe2, 0x8e, 0x5d, 0xec, 0x72, 0x60, 0xc1, - 0x97, 0x58, 0xd1, 0xf1, 0x8a, 0x8e, 0xdb, 0x64, 0x16, 0x17, 0xac, 0x6b, 0x8b, 0x2e, 0x83, 0xe2, - 0x21, 0x73, 0x04, 0x7c, 0xf0, 0xb7, 0x7f, 0xfc, 0x36, 0xb6, 0x59, 0xb8, 0x19, 0x7e, 0x18, 0x97, - 0x86, 0x29, 0xc0, 0x4b, 0x3f, 0x8f, 0xda, 0x84, 0x3e, 0x9c, 0x3c, 0x1a, 0xfb, 0x80, 0xe3, 0x9b, - 0xe8, 0x1a, 0xf9, 0x27, 0xc2, 0xf1, 0x1d, 0x10, 0xe4, 0xfa, 0x9c, 0xa7, 0x4b, 0x25, 0xb4, 0xb8, - 0xd0, 0x59, 0xb4, 0xf0, 0x08, 0x7d, 0xf2, 0xe7, 0x18, 0x1a, 0x7c, 0x9c, 0xf9, 0xfe, 0x97, 0x48, - 0xed, 0x78, 0xae, 0x23, 0xbc, 0xd3, 0xd4, 0x32, 0xb0, 0x1a, 0x52, 0xec, 0x4d, 0xf2, 0xe6, 0x34, - 0xb1, 0xa7, 0x69, 0x54, 0x96, 0x23, 0xf2, 0x19, 0xc2, 0x89, 0xa0, 0x1c, 0x49, 0x71, 0xde, 0xb2, - 0x55, 0x4a, 0xf5, 0xc5, 0xaa, 0xbc, 0xd0, 0x3f, 0x3f, 0xa5, 0x3a, 0xb9, 0xbe, 0x88, 0x52, 0xf2, - 0x28, 0x86, 0x2f, 0x84, 0x07, 0x68, 0xb2, 0xf0, 0x59, 0x3b, 0xfb, 0xc6, 0x02, 0x88, 0x50, 0xeb, - 0xaf, 0xd1, 0x79, 0x64, 0xef, 0x9d, 0xac, 0x71, 0xa6, 0xec, 0x9d, 0x70, 0x39, 0x0a, 0xb2, 0xf9, - 0x09, 0xc2, 0x49, 0xd5, 0x27, 0xe7, 0x29, 0xde, 0xb1, 0x8e, 0x9a, 0xbd, 0xac, 0xab, 0x7b, 0x1d, - 0x3d, 0xba, 0xd7, 0xd1, 0x8d, 0x8e, 0x2f, 0xfa, 0x85, 0xa3, 0xf3, 0x10, 0xf9, 0xd6, 0xb5, 0xb3, - 0x64, 0xed, 0x26, 0xba, 0x96, 0x7d, 0xef, 0xf1, 0x31, 0x8a, 0xfd, 0xf5, 0x18, 0x7d, 0x6b, 0xa6, - 0x1c, 0xf5, 0x47, 0xfa, 0xf4, 0x18, 0xa1, 0xc1, 0x31, 0x2a, 0x2e, 0xf4, 0xef, 0xfb, 0xc1, 0x5f, - 0x32, 0x31, 0x0d, 0x6d, 0xfd, 0x0e, 0x7d, 0x7a, 0x6b, 0xb9, 0x42, 0x1f, 0xdc, 0xde, 0x7b, 0xf2, - 0x2c, 0xb7, 0xf4, 0xf4, 0x59, 0x6e, 0xe9, 0x8b, 0x67, 0x39, 0xf4, 0x68, 0x90, 0x43, 0x7f, 0x1c, - 0xe4, 0xd0, 0x27, 0x83, 0x1c, 0x7a, 0x32, 0xc8, 0xa1, 0xcf, 0x06, 0x39, 0xf4, 0xf9, 0x20, 0xb7, - 0xf4, 0xc5, 0x20, 0x87, 0x7e, 0xf3, 0x3c, 0xb7, 0xf4, 0xf8, 0x79, 0x0e, 0x3d, 0x79, 0x9e, 0x5b, - 0x7a, 0xfa, 0x3c, 0xb7, 0xf4, 0x93, 0x83, 0x96, 0xe7, 0x3f, 0x6c, 0xe9, 0x3d, 0xaf, 0x2d, 0x6f, - 0x7f, 0xf4, 0xee, 0xc8, 0x35, 0x50, 0xd1, 0x67, 0x5e, 0xcf, 0x69, 0x00, 0x2b, 0x46, 0xe6, 0x92, - 0x5f, 0x6f, 0x79, 0x25, 0x78, 0x5f, 0x84, 0x37, 0x40, 0xa7, 0x5e, 0x36, 0xd5, 0x93, 0x72, 0x57, - 0xde, 0xfc, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x17, 0x56, 0x51, 0x4c, 0x23, 0x14, 0x00, 0x00, + // 1665 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x41, 0x8c, 0x1b, 0x49, + 0x15, 0x9d, 0xb2, 0x3d, 0x8e, 0x5d, 0x9e, 0x4c, 0x7a, 0x8b, 0xdd, 0xac, 0x63, 0x82, 0x31, 0xde, + 0x15, 0x8c, 0xa2, 0xb8, 0x9d, 0x9d, 0x25, 0x62, 0x77, 0x84, 0x02, 0x1e, 0xa7, 0x67, 0x76, 0xc2, + 0x24, 0x13, 0x95, 0x9d, 0x11, 0xe2, 0x40, 0xd3, 0x6e, 0x7f, 0x7b, 0x7b, 0x63, 0x77, 0x37, 0x55, + 0x65, 0xcf, 0x8e, 0xd0, 0x48, 0x68, 0x2f, 0x48, 0x70, 0x59, 0x89, 0x0b, 0x42, 0x48, 0x44, 0xa0, + 0x45, 0x9c, 0xf7, 0x04, 0x9a, 0x4b, 0x6e, 0xac, 0xf6, 0x80, 0x22, 0xe0, 0x90, 0x23, 0x71, 0x10, + 0xda, 0xe3, 0x0a, 0x71, 0x46, 0xa8, 0xab, 0xba, 0x1d, 0xdb, 0xe3, 0xc4, 0xf6, 0x6c, 0x94, 0xd3, + 0x74, 0xd5, 0xff, 0xef, 0x75, 0xfd, 0x57, 0xff, 0xff, 0xf9, 0x6e, 0x7c, 0xb5, 0x0f, 0x5c, 0x77, + 0xbc, 0x32, 0xb7, 0xdf, 0x85, 0xae, 0x55, 0xee, 0x3b, 0x70, 0xc0, 0xcb, 0xd6, 0x01, 0x37, 0xfb, + 0xbe, 0x6d, 0x72, 0x47, 0x40, 0xd9, 0xef, 0x35, 0x3a, 0x8e, 0x6d, 0xda, 0xac, 0xd7, 0xb4, 0x7c, + 0x47, 0xf7, 0x99, 0x27, 0x3c, 0x52, 0x50, 0x30, 0x5d, 0xc1, 0x74, 0x09, 0xd3, 0x47, 0x61, 0xb9, + 0x52, 0xdb, 0x11, 0xef, 0xf6, 0x1a, 0xba, 0xed, 0x75, 0xcb, 0x6d, 0xaf, 0xed, 0x95, 0x25, 0xb0, + 0xd1, 0x6b, 0xc9, 0x95, 0x5c, 0xc8, 0x27, 0x45, 0x98, 0xbb, 0xd8, 0xf6, 0xbc, 0x76, 0x07, 0xca, + 0x96, 0xef, 0x94, 0x2d, 0xd7, 0xf5, 0x84, 0x25, 0x1c, 0xcf, 0xe5, 0xa1, 0xf5, 0xcb, 0xa1, 0x75, + 0xc8, 0x01, 0x5d, 0x5f, 0x1c, 0x86, 0xc6, 0xdc, 0x78, 0x08, 0xc0, 0x98, 0xc7, 0x86, 0xc0, 0x71, + 0x9b, 0xe7, 0x8f, 0xb2, 0x5e, 0x18, 0x37, 0x8a, 0x43, 0x1f, 0x22, 0x53, 0x71, 0x42, 0x16, 0xe0, + 0xe0, 0xf6, 0x27, 0xe0, 0x85, 0x93, 0xd2, 0x99, 0xe3, 0x1e, 0xa5, 0x99, 0xe2, 0x7a, 0x8d, 0xf7, + 0xc0, 0x16, 0xa1, 0xfb, 0xe5, 0x99, 0xee, 0xa3, 0x47, 0xfc, 0xe6, 0x34, 0x6f, 0x01, 0x8c, 0x59, + 0x2d, 0x8f, 0x75, 0x4d, 0xdf, 0x62, 0x56, 0x17, 0x04, 0x30, 0x3e, 0x86, 0xfa, 0xea, 0x54, 0xd4, + 0x13, 0x87, 0xe2, 0xc7, 0x08, 0x9f, 0xad, 0x32, 0xb0, 0x04, 0x50, 0xf8, 0x71, 0x0f, 0xb8, 0x20, + 0xdf, 0xc1, 0xa9, 0x2e, 0x08, 0xab, 0x69, 0x09, 0x2b, 0x8b, 0x0a, 0x68, 0x2d, 0xb3, 0xfe, 0x9a, + 0x3e, 0x7e, 0xfd, 0x7b, 0x32, 0x0a, 0x85, 0xba, 0x09, 0xc2, 0xaa, 0x1f, 0xfa, 0x40, 0x87, 0x20, + 0x72, 0x07, 0x27, 0xb8, 0x0f, 0x76, 0x36, 0x26, 0xc1, 0x57, 0xf4, 0x59, 0xb9, 0xa3, 0x2b, 0xa6, + 0x9a, 0x0f, 0x76, 0xc0, 0xb4, 0x79, 0xee, 0xd7, 0x47, 0x2b, 0x01, 0x81, 0xde, 0xb6, 0xcd, 0xe0, + 0x2f, 0x95, 0x74, 0x1b, 0xe9, 0x4f, 0xaf, 0x25, 0xd5, 0x9b, 0x8b, 0xff, 0x43, 0x78, 0x35, 0x3a, + 0x34, 0xf7, 0x3d, 0x97, 0x03, 0xf9, 0xf6, 0x89, 0x53, 0x17, 0xa6, 0x9e, 0x7a, 0x1b, 0xc4, 0x94, + 0x23, 0xef, 0xe1, 0x73, 0xfc, 0x90, 0x0b, 0xe8, 0x9a, 0x43, 0x92, 0xb8, 0x24, 0xf9, 0xfa, 0x04, + 0x49, 0x4d, 0x7a, 0x9d, 0xa4, 0x5a, 0x55, 0xf0, 0x9b, 0x11, 0x21, 0x1d, 0xd3, 0xa0, 0x34, 0x5b, + 0x83, 0x6d, 0x10, 0x0b, 0x08, 0xf0, 0x6f, 0x84, 0x57, 0x29, 0xf8, 0x1d, 0xcb, 0x1e, 0x5e, 0xdb, + 0x77, 0x4f, 0x08, 0xf0, 0xfa, 0x54, 0x01, 0x42, 0xd8, 0x14, 0x11, 0xf6, 0xc7, 0xce, 0xfc, 0xc6, + 0xec, 0x33, 0x87, 0x54, 0x33, 0xce, 0x4d, 0xca, 0x58, 0x63, 0xc0, 0xbd, 0x1e, 0xb3, 0xc1, 0xec, + 0x03, 0xe3, 0x8e, 0xe7, 0x4a, 0x75, 0xd3, 0x9b, 0x89, 0xcf, 0x8e, 0x11, 0xa2, 0xe7, 0x22, 0xeb, + 0xbe, 0x32, 0x8e, 0x06, 0xfa, 0x12, 0x3e, 0x37, 0x8c, 0x53, 0xdd, 0x74, 0xf1, 0x1e, 0xc2, 0x78, + 0x1b, 0x44, 0x14, 0xf7, 0x45, 0x9c, 0x76, 0xad, 0x2e, 0x70, 0xdf, 0xb2, 0x41, 0x06, 0x9e, 0xa6, + 0x4f, 0x36, 0x08, 0xc1, 0x89, 0x60, 0x21, 0x63, 0x4a, 0x53, 0xf9, 0x4c, 0x7e, 0x84, 0x83, 0x37, + 0x4a, 0x32, 0x33, 0xa8, 0x1d, 0x4b, 0xc8, 0xe3, 0xac, 0xae, 0x7f, 0x6b, 0xae, 0x6b, 0x8a, 0x0e, + 0xb2, 0x25, 0xa1, 0x55, 0xaf, 0x09, 0x74, 0x95, 0x8d, 0xed, 0x15, 0x3f, 0x4a, 0xe2, 0xcc, 0x88, + 0x27, 0xb9, 0x8d, 0x33, 0xb6, 0x4c, 0x57, 0xf9, 0xbe, 0x50, 0xe0, 0xf2, 0xbc, 0x85, 0x11, 0x46, + 0x4a, 0xb1, 0xe2, 0x08, 0xde, 0x41, 0x6a, 0x78, 0x85, 0x29, 0x5d, 0x14, 0x65, 0x7c, 0xde, 0x5a, + 0x1b, 0xcf, 0x1a, 0x9a, 0x09, 0x59, 0x24, 0xe9, 0xb4, 0x8b, 0x4a, 0x3c, 0xe3, 0xa2, 0xc6, 0x8a, + 0x6e, 0xf9, 0x79, 0x14, 0xdd, 0x99, 0xe7, 0x52, 0x74, 0xc9, 0xe7, 0x57, 0x74, 0xe4, 0x26, 0x4e, + 0x72, 0x61, 0x89, 0x1e, 0xcf, 0xde, 0xfb, 0x0d, 0x2a, 0xc4, 0xd7, 0x32, 0xeb, 0xfa, 0x6c, 0xde, + 0x9a, 0x44, 0xa8, 0x03, 0x6f, 0xc6, 0xef, 0x1f, 0x21, 0x1a, 0x92, 0x90, 0x1d, 0xfc, 0x12, 0x83, + 0x16, 0x30, 0xe6, 0xb8, 0x6d, 0x53, 0xfd, 0x37, 0xe0, 0xd9, 0x94, 0xe4, 0xbd, 0xf8, 0x94, 0x72, + 0x6d, 0xc9, 0x58, 0xb5, 0x21, 0x4c, 0xed, 0x73, 0xb2, 0x8f, 0xb3, 0x4d, 0xe8, 0x80, 0x80, 0xa6, + 0xa9, 0x6c, 0xd0, 0x1c, 0x32, 0xa6, 0xe7, 0x60, 0x3c, 0x1f, 0xa2, 0x69, 0x08, 0x8e, 0x78, 0xbf, + 0x8f, 0x2f, 0x34, 0x1d, 0x6e, 0x35, 0x3a, 0xd3, 0x88, 0xf1, 0x1c, 0xc4, 0xaf, 0x46, 0xf0, 0x09, + 0xe6, 0x91, 0xba, 0xbe, 0x91, 0x48, 0x21, 0x2d, 0x56, 0xfc, 0x08, 0xe1, 0xcc, 0xae, 0xc3, 0xe7, + 0xac, 0xe5, 0xaf, 0xe1, 0x95, 0x8e, 0xd5, 0x80, 0x8e, 0xd9, 0x72, 0x3a, 0x02, 0x58, 0x58, 0xd3, + 0x19, 0xb9, 0xb7, 0x25, 0xb7, 0xc8, 0x6b, 0xf8, 0x2c, 0x03, 0xdf, 0x63, 0xc2, 0x6c, 0x39, 0xd0, + 0x69, 0xf2, 0x6c, 0xbc, 0x10, 0x5f, 0x4b, 0xd3, 0x15, 0xb5, 0xb9, 0x25, 0xf7, 0xc8, 0x15, 0xfc, + 0x72, 0xe8, 0xa4, 0x2e, 0x25, 0xf2, 0x4d, 0x48, 0x5f, 0xa2, 0x6c, 0xea, 0x0a, 0x15, 0xa2, 0xf8, + 0x8f, 0x24, 0xd6, 0xd4, 0x39, 0x55, 0x41, 0xef, 0x08, 0xe8, 0x92, 0xf3, 0x38, 0x29, 0xc0, 0xb5, + 0x5c, 0x21, 0xf3, 0x2d, 0x4d, 0xc3, 0xd5, 0x29, 0x1a, 0x92, 0x86, 0xe3, 0x3d, 0xa7, 0xa9, 0x7a, + 0x22, 0x0d, 0x1e, 0x49, 0x01, 0x67, 0x9a, 0xc0, 0x6d, 0xe6, 0xc8, 0xf9, 0x22, 0x9b, 0x51, 0x91, + 0x8e, 0x6c, 0x91, 0x1c, 0x4e, 0x45, 0x32, 0x67, 0x57, 0x0a, 0x68, 0x2d, 0x45, 0x87, 0x6b, 0xb2, + 0x8f, 0x93, 0x52, 0x14, 0x15, 0x52, 0x66, 0xfd, 0xda, 0xec, 0x8c, 0x9d, 0x8c, 0x4e, 0xdf, 0x95, + 0x04, 0x86, 0x2b, 0xd8, 0x21, 0x0d, 0xd9, 0x08, 0xe0, 0xcc, 0xc8, 0xac, 0x16, 0xe6, 0x42, 0xf5, + 0x14, 0xe4, 0x95, 0x27, 0x2c, 0xea, 0x0d, 0xa3, 0xbc, 0xe4, 0x6d, 0x8c, 0xbd, 0x03, 0x17, 0x98, + 0x19, 0x50, 0x65, 0xd3, 0xb2, 0x98, 0x73, 0x13, 0x6f, 0xd9, 0x77, 0xe0, 0x20, 0xca, 0xb7, 0xb4, + 0xf4, 0x0e, 0x76, 0xc6, 0x1a, 0xd2, 0xd9, 0xe7, 0xd1, 0x90, 0x56, 0xbf, 0x50, 0x43, 0x7a, 0x07, + 0xa7, 0xda, 0x20, 0x64, 0x3b, 0x09, 0x5b, 0xdb, 0x62, 0x4d, 0x89, 0x9e, 0x69, 0xab, 0x05, 0xa1, + 0x18, 0x87, 0xc9, 0xca, 0x41, 0x84, 0x0d, 0xe3, 0x54, 0x8d, 0x28, 0xad, 0x68, 0x6a, 0x20, 0x72, + 0x6f, 0xe3, 0xcc, 0xc8, 0x2d, 0x07, 0x59, 0x78, 0x17, 0x0e, 0xc3, 0x8c, 0x0d, 0x1e, 0xc9, 0xcb, + 0x78, 0xb9, 0x6f, 0x75, 0x7a, 0x51, 0xb2, 0xaa, 0xc5, 0x46, 0xec, 0x2d, 0x94, 0xbb, 0x86, 0xb5, + 0xc9, 0x3b, 0x5c, 0x04, 0x7f, 0x23, 0x91, 0x5a, 0xd6, 0x92, 0xc5, 0x9f, 0x23, 0xbc, 0x32, 0x9a, + 0x1b, 0xe4, 0x1d, 0xbc, 0xec, 0x08, 0xe8, 0xf2, 0xac, 0xea, 0xb4, 0xeb, 0x8b, 0xa7, 0x16, 0x55, + 0x04, 0xe4, 0x0a, 0x4e, 0xaa, 0x1f, 0x06, 0xd9, 0x98, 0xa4, 0xca, 0x4e, 0x50, 0x19, 0x81, 0x51, + 0x4a, 0x1c, 0xfa, 0x15, 0xef, 0xe2, 0xb3, 0xd7, 0x65, 0x43, 0x3c, 0xfd, 0x60, 0xb1, 0x86, 0xb5, + 0x96, 0xe5, 0x74, 0x4c, 0xa7, 0x35, 0x6c, 0x9c, 0xb2, 0xa8, 0x53, 0x74, 0x35, 0xd8, 0xdf, 0x69, + 0x45, 0x0d, 0xf1, 0xd2, 0x7f, 0x10, 0x7e, 0x65, 0xea, 0x28, 0x41, 0x72, 0xf8, 0xfc, 0xb6, 0x51, + 0x37, 0x69, 0xed, 0xb6, 0xb9, 0xb5, 0x47, 0x6f, 0x56, 0xea, 0xe6, 0x75, 0x63, 0xab, 0x72, 0x67, + 0xb7, 0xae, 0x2d, 0x91, 0xaf, 0xe0, 0x0b, 0x13, 0xb6, 0xad, 0x3d, 0x6a, 0x56, 0xa9, 0x51, 0xa9, + 0x1b, 0x1a, 0x22, 0x79, 0x9c, 0x9b, 0x62, 0xa6, 0xc6, 0xed, 0xdd, 0x4a, 0xd5, 0xd0, 0x62, 0xe4, + 0x02, 0x7e, 0x65, 0xc2, 0x5e, 0xab, 0x57, 0xea, 0x77, 0x6a, 0x5a, 0x9c, 0xbc, 0x8a, 0xbf, 0x34, + 0x61, 0xa2, 0x46, 0xe5, 0xba, 0x96, 0x20, 0xaf, 0xe3, 0xc2, 0x09, 0xc3, 0x96, 0x41, 0xe9, 0xce, + 0xad, 0x6d, 0x73, 0x6f, 0xf3, 0x86, 0x51, 0xad, 0xd7, 0xb4, 0xe5, 0x29, 0x5e, 0x9b, 0x74, 0xef, + 0x7b, 0xc6, 0x2d, 0xe5, 0x6c, 0xdc, 0xaa, 0x1a, 0x35, 0x2d, 0xb9, 0xfe, 0xe7, 0x0c, 0x8e, 0x57, + 0x6e, 0xef, 0x90, 0x0f, 0x63, 0x38, 0xa9, 0x26, 0x1b, 0xb2, 0xe8, 0x0c, 0x94, 0xbb, 0x32, 0x3f, + 0x20, 0x1c, 0x17, 0x7f, 0x87, 0x06, 0x7f, 0xc9, 0xfe, 0xb0, 0x75, 0xf5, 0x7d, 0xbb, 0x14, 0x98, + 0x4b, 0x5d, 0xcb, 0xb5, 0xda, 0xd0, 0x05, 0x57, 0x94, 0x1a, 0x16, 0x77, 0xec, 0x52, 0x8f, 0x03, + 0xbb, 0x3c, 0xd5, 0xce, 0x85, 0xe5, 0x36, 0x2d, 0xd6, 0x54, 0x2e, 0x7d, 0xe0, 0x25, 0xc7, 0x2b, + 0x39, 0x6e, 0x8b, 0x59, 0x5c, 0xb0, 0x9e, 0x2d, 0x7a, 0x0c, 0x4a, 0x07, 0xcc, 0x11, 0xf0, 0xc1, + 0xdf, 0xff, 0xf5, 0xcb, 0xd8, 0x46, 0xf1, 0x6a, 0xf8, 0xe3, 0xb9, 0x3c, 0x4c, 0x13, 0x5e, 0xfe, + 0x49, 0xd4, 0x4a, 0xf4, 0xe1, 0xe6, 0xd1, 0xd8, 0x8f, 0x3c, 0xbe, 0x81, 0x2e, 0x91, 0x5f, 0xc4, + 0x70, 0x7c, 0x1b, 0x04, 0xb9, 0x3c, 0xe7, 0x04, 0xaa, 0xc4, 0x28, 0x2d, 0x34, 0xaf, 0x16, 0xff, + 0x80, 0x3e, 0xf9, 0x53, 0x2c, 0x50, 0xc3, 0x7e, 0x86, 0x1a, 0x5d, 0xcf, 0x75, 0x84, 0x37, 0x4b, + 0x90, 0xc8, 0x6b, 0xba, 0x26, 0x0c, 0xac, 0xa6, 0x94, 0xe4, 0x2a, 0x79, 0x73, 0x9a, 0x24, 0x4f, + 0x53, 0x42, 0x59, 0x8e, 0xc8, 0xcf, 0x62, 0x38, 0x11, 0x14, 0x36, 0x29, 0xcd, 0xdb, 0x00, 0x94, + 0x1e, 0xfa, 0x62, 0xfd, 0xa2, 0xf8, 0xdb, 0x17, 0x2e, 0x88, 0x4e, 0x2e, 0x2f, 0x22, 0x08, 0xf9, + 0x7d, 0x0c, 0x9f, 0x09, 0x27, 0x76, 0xb2, 0xf0, 0x70, 0x9f, 0x7b, 0x63, 0x01, 0x44, 0x28, 0xc9, + 0xc7, 0x2f, 0xaa, 0x5a, 0x6e, 0xe4, 0x8c, 0x53, 0x55, 0xcb, 0x84, 0xcb, 0x51, 0x50, 0x3d, 0xff, + 0x45, 0x38, 0xa9, 0x7a, 0xf7, 0x3c, 0x0d, 0x65, 0xac, 0xcb, 0xe7, 0xce, 0xeb, 0xea, 0x5b, 0x93, + 0x1e, 0x7d, 0x6b, 0xd2, 0x8d, 0xae, 0x2f, 0x0e, 0x8b, 0xf7, 0x5e, 0x94, 0x10, 0x6f, 0x5d, 0x3a, + 0x4d, 0x8d, 0x6c, 0xa0, 0x4b, 0xb9, 0xf7, 0xee, 0x1f, 0xa3, 0xd8, 0xdf, 0x8e, 0xd1, 0x37, 0x66, + 0x86, 0xac, 0x06, 0x80, 0x87, 0xc7, 0x08, 0x0d, 0x8e, 0x51, 0x69, 0xa1, 0xa9, 0xe1, 0x83, 0xbf, + 0x66, 0x63, 0x1a, 0xda, 0xfc, 0x15, 0xfa, 0xf4, 0xda, 0x72, 0x95, 0xde, 0xb9, 0xbe, 0xfb, 0xe0, + 0x51, 0x7e, 0xe9, 0xe1, 0xa3, 0xfc, 0xd2, 0xe7, 0x8f, 0xf2, 0xe8, 0xa7, 0x83, 0x3c, 0xfa, 0xe3, + 0x20, 0x8f, 0x3e, 0x19, 0xe4, 0xd1, 0x83, 0x41, 0x1e, 0xfd, 0x73, 0x90, 0x47, 0x9f, 0x0d, 0xf2, + 0x4b, 0x9f, 0x0f, 0xf2, 0xe8, 0xc3, 0xc7, 0xf9, 0xa5, 0xfb, 0x8f, 0xf3, 0xe8, 0xc1, 0xe3, 0xfc, + 0xd2, 0xc3, 0xc7, 0xf9, 0xa5, 0x1f, 0xec, 0xb7, 0x3d, 0xff, 0x6e, 0x5b, 0xef, 0x7b, 0x1d, 0xf9, + 0xd5, 0x4a, 0xef, 0x8d, 0x7c, 0xbe, 0x2a, 0xf9, 0xcc, 0xeb, 0x3b, 0x4d, 0x60, 0xa5, 0xc8, 0x5c, + 0xf6, 0x1b, 0x6d, 0xaf, 0x0c, 0xef, 0x8b, 0xf0, 0xcb, 0xd5, 0x53, 0x3f, 0x92, 0x35, 0x92, 0xf2, + 0xe6, 0xde, 0xfc, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8f, 0x2d, 0xe0, 0x01, 0xdb, 0x14, 0x00, + 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.vesapi.go index 721eaf4d4..f9053d36d 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/public_crudapi.vesapi.go @@ -2237,6 +2237,20 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsAllowedVIPPorts", "x-displayname": "Allowed VIP Port Configuration for Inside Network" }, + "az_nodes": { + "type": "array", + "description": " Only Single AZ or Three AZ(s) nodes are supported currently.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.num_items: 1,3\n", + "title": "Nodes", + "items": { + "$ref": "#/definitions/viewsAWSVPCTwoInterfaceNodeType" + }, + "x-displayname": "Ingress/Egress Gateway (two Interface) Nodes in AZ", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3" + } + }, "dc_cluster_group_inside_vn": { "description": "Exclusive with [dc_cluster_group_outside_vn no_dc_cluster_group]\n This site is member of dc cluster group connected via inside network", "title": "Member of DC cluster Group via Inside Network", @@ -2506,6 +2520,20 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsAllowedVIPPorts", "x-displayname": "Allowed VIP Port Configuration" }, + "az_nodes": { + "type": "array", + "description": " Only Single AZ or Three AZ(s) nodes are supported currently.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.num_items: 1,3\n", + "title": "Nodes", + "items": { + "$ref": "#/definitions/viewsAWSVPCOneInterfaceNodeType" + }, + "x-displayname": "Ingress Gateway (One Interface) Nodes in AZ", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3" + } + }, "performance_enhancement_mode": { "description": " Performance Enhancement Mode to optimize for L3 or L7 networking", "title": "Performance Enhancement Choice", @@ -2673,6 +2701,20 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsAllowedVIPPorts", "x-displayname": "Allowed VIP Port Configuration" }, + "az_nodes": { + "type": "array", + "description": " Only Single AZ or Three AZ(s) nodes are supported currently.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.num_items: 1,3\n", + "title": "Nodes", + "items": { + "$ref": "#/definitions/viewsAWSVPCOneInterfaceNodeType" + }, + "x-displayname": "App Stack Cluster (One Interface) Nodes in AZ", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3" + } + }, "dc_cluster_group": { "description": "Exclusive with [no_dc_cluster_group]\n This site is member of dc cluster group connected via outside network", "title": "Member of DC cluster Group via Outside Network", @@ -3887,10 +3929,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3947,10 +3993,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4009,10 +4059,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5716,6 +5770,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -6138,9 +6263,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Select this option to specify custom security groups for slo and sli interfaces." }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\nDisable Private Connectivity to Site", @@ -6214,6 +6339,11 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6258,14 +6388,16 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "sw": { @@ -6381,9 +6513,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Select this option to specify custom security groups for slo and sli interfaces." }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\nDisable Private Connectivity to Site", @@ -6468,6 +6600,11 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6521,14 +6658,16 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "suggested_action": { @@ -6585,8 +6724,10 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-blocked_services_choice": "[\"block_all_services\",\"blocked_services\",\"default_blocked_services\"]", "x-ves-oneof-field-deployment": "[\"aws_cred\"]", "x-ves-oneof-field-direct_connect_choice": "[\"direct_connect_disabled\",\"direct_connect_enabled\",\"private_connectivity\"]", + "x-ves-oneof-field-egress_gateway_choice": "[\"egress_gateway_default\",\"egress_nat_gw\",\"egress_virtual_private_gateway\"]", "x-ves-oneof-field-internet_vip_choice": "[\"disable_internet_vip\",\"enable_internet_vip\"]", "x-ves-oneof-field-logs_receiver_choice": "[\"log_receiver\",\"logs_streaming_disabled\"]", + "x-ves-oneof-field-security_group_choice": "[\"custom_security_group\",\"f5xc_security_group\"]", "x-ves-oneof-field-site_type": "[\"ingress_egress_gw\",\"ingress_gw\",\"voltstack_cluster\"]", "x-ves-oneof-field-worker_nodes": "[\"no_worker_nodes\",\"nodes_per_az\",\"total_nodes\"]", "x-ves-proto-message": "ves.io.schema.views.aws_vpc_site.ReplaceSpecType", @@ -6606,6 +6747,16 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Cloud Credentials" }, + "aws_region": { + "type": "string", + "description": " Name for AWS Region.\n\nExample: - \"us-east-1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "x-displayname": "AWS Region", + "x-ves-example": "us-east-1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "block_all_services": { "description": "Exclusive with [blocked_services default_blocked_services]\n Block DNS, SSH \u0026 WebUI services on Site", "$ref": "#/definitions/ioschemaEmpty", @@ -6627,10 +6778,15 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsCustomDNS", "x-displayname": "Custom DNS" }, + "custom_security_group": { + "description": "Exclusive with [f5xc_security_group]\n With this option, ingress and egress traffic will be controlled via security group ids.", + "$ref": "#/definitions/viewsSecurityGroupType", + "x-displayname": "Select this option to specify custom security groups for slo and sli interfaces." + }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "direct_connect_disabled": { "description": "Exclusive with [direct_connect_enabled private_connectivity]\nDisable Private Connectivity to Site", @@ -6647,11 +6803,41 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable VIP Advertisement to Internet on Site" }, + "disk_size": { + "type": "integer", + "description": " Disk size to be used for this instance in GiB. 80 is 80 GiB\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 2048\n", + "format": "int64", + "x-displayname": "Cloud Disk Size", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "2048" + } + }, + "egress_gateway_default": { + "description": "Exclusive with [egress_nat_gw egress_virtual_private_gateway]\n With this option, egress site traffic will be routed through an Internet Gateway.", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Select this option to route site traffic through a Internet Gateway" + }, + "egress_nat_gw": { + "description": "Exclusive with [egress_gateway_default egress_virtual_private_gateway]\n With this option, egress site traffic will be routed through an Network Address Translation(NAT) Gateway.", + "$ref": "#/definitions/viewsAWSNATGatewaychoiceType", + "x-displayname": "Select this option to route site traffic through a Network Address Translation (NAT) Gateway." + }, + "egress_virtual_private_gateway": { + "description": "Exclusive with [egress_gateway_default egress_nat_gw]\n With this option, egress site traffic will be routed through an Virtual Private Gateway.", + "$ref": "#/definitions/viewsAWSVirtualPrivateGatewaychoiceType", + "x-displayname": "Select this option to route site traffic through a Virtual Private Gateway." + }, "enable_internet_vip": { "description": "Exclusive with [disable_internet_vip]\n VIPs can be advertised to the internet directly on this Site", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable VIP Advertisement to Internet on Site" }, + "f5xc_security_group": { + "description": "Exclusive with [custom_security_group]\n With this option, ingress and egress traffic will be controlled via f5xc created security group.", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Select this option to create and attach F5XC default security group" + }, "ingress_egress_gw": { "description": "Exclusive with [ingress_gw voltstack_cluster]\n Two interface site is useful when site is used as ingress/egress gateway to the VPC.", "title": "Ingress Egress Gateway", @@ -6664,6 +6850,23 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/aws_vpc_siteAWSVPCIngressGwReplaceType", "x-displayname": "Ingress Gateway (One Interface)" }, + "instance_type": { + "type": "string", + "description": " Select Instance size based on performance needed\n\nExample: - \"a1.xlarge\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-displayname": "AWS Instance Type for Node", + "x-ves-example": "a1.xlarge", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -6700,6 +6903,20 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsPrivateConnectConfigType", "x-displayname": "Enable Private Connectivity" }, + "ssh_key": { + "type": "string", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, + "maxLength": 8192, + "x-displayname": "Public SSH key", + "x-ves-example": "ssh-rsa AAAAB...", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" + } + }, "total_nodes": { "type": "integer", "description": "Exclusive with [no_worker_nodes nodes_per_az]\n Total number of worker nodes to be deployed across all AZ's used in the Site\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 61\n", @@ -6716,6 +6933,11 @@ var APISwaggerJSON string = `{ "title": "App Stack Cluster", "$ref": "#/definitions/aws_vpc_siteAWSVPCVoltstackClusterReplaceType", "x-displayname": "App Stack Cluster (One Interface)" + }, + "vpc": { + "description": " Choice of using existing VPC or create new VPC", + "$ref": "#/definitions/viewsAWSVPCchoiceType", + "x-displayname": "VPC" } } } diff --git a/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.pb.go b/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.pb.go index cb94fd5d6..4e5c57646 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.pb.go @@ -430,63 +430,64 @@ func init() { } var fileDescriptor_66fea4ba44356a2b = []byte{ - // 890 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x41, 0x6f, 0x1b, 0x45, + // 900 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0x41, 0x6f, 0x1b, 0x45, 0x14, 0xf6, 0xd8, 0x05, 0x94, 0x29, 0x2a, 0xcd, 0x82, 0x84, 0x31, 0x61, 0x65, 0xad, 0x10, 0x94, - 0x90, 0xdd, 0x15, 0x49, 0x2b, 0x4a, 0xa8, 0x84, 0x12, 0x57, 0x40, 0x54, 0x09, 0x56, 0x31, 0x18, - 0x89, 0xcb, 0x6a, 0xbc, 0x7e, 0xde, 0x0c, 0xb5, 0x77, 0x86, 0x99, 0xd9, 0x4d, 0x5b, 0x54, 0x09, - 0x55, 0x9c, 0x90, 0x90, 0x0a, 0x88, 0x13, 0xe2, 0xce, 0x01, 0xfe, 0x00, 0xbd, 0xe4, 0x06, 0x27, - 0x14, 0xc1, 0xa5, 0x47, 0x62, 0x73, 0x80, 0x5b, 0xaf, 0x88, 0x0b, 0xda, 0xf1, 0x6e, 0xea, 0x75, - 0x1d, 0x39, 0xb8, 0x39, 0x79, 0x66, 0xbe, 0xef, 0xcd, 0xbe, 0xef, 0x9b, 0x37, 0xf3, 0x8c, 0x5f, - 0x4d, 0x40, 0x3a, 0x94, 0xb9, 0x32, 0xd8, 0x81, 0x3e, 0x71, 0x13, 0x0a, 0xbb, 0xd2, 0x25, 0xbb, - 0xd2, 0x4f, 0x78, 0xe0, 0x4b, 0xaa, 0xc0, 0xe5, 0x71, 0xbb, 0x47, 0x03, 0x3f, 0x88, 0xa5, 0x62, - 0x7d, 0xc2, 0xa9, 0xc3, 0x05, 0x53, 0xcc, 0xa8, 0x8f, 0x02, 0x9d, 0x51, 0xa0, 0xa3, 0x03, 0x9d, - 0xf1, 0xc0, 0x9a, 0x1d, 0x52, 0xb5, 0x13, 0xb7, 0x9d, 0x80, 0xf5, 0xdd, 0x90, 0x85, 0xcc, 0xd5, - 0x81, 0xed, 0xb8, 0xab, 0x67, 0x7a, 0xa2, 0x47, 0xa3, 0x0d, 0x6b, 0x4b, 0x21, 0x63, 0x61, 0x0f, - 0x5c, 0xc2, 0xa9, 0x4b, 0xa2, 0x88, 0x29, 0xa2, 0x28, 0x8b, 0x64, 0x86, 0x3e, 0x5b, 0xcc, 0x93, - 0xf1, 0x71, 0xd0, 0x2c, 0x82, 0x3a, 0x6d, 0x75, 0x9d, 0x43, 0x8e, 0x2f, 0x4d, 0x88, 0x24, 0x3d, - 0xda, 0x21, 0x0a, 0x32, 0xd4, 0x9a, 0x40, 0x41, 0x42, 0x94, 0x4c, 0x7c, 0xa1, 0xfe, 0xa0, 0x4d, - 0x7e, 0x91, 0x61, 0xcf, 0x34, 0x92, 0xb5, 0x3f, 0x82, 0x40, 0x65, 0xf4, 0x95, 0x99, 0xf4, 0x71, - 0x01, 0xcf, 0x4f, 0x63, 0xa7, 0x2c, 0x7f, 0x8c, 0x65, 0xf5, 0xf0, 0x33, 0x4d, 0x50, 0x2d, 0xaf, - 0x71, 0xe5, 0x62, 0xf3, 0x6d, 0x26, 0x55, 0x44, 0xfa, 0x20, 0xb7, 0xe1, 0xe3, 0x18, 0xa4, 0x32, - 0x96, 0xf0, 0x82, 0x9e, 0x73, 0x12, 0x40, 0x15, 0xd5, 0xd1, 0xb9, 0x85, 0xed, 0xfb, 0x0b, 0x86, - 0x81, 0x4f, 0xa5, 0x93, 0x6a, 0x59, 0x03, 0x7a, 0x6c, 0x3c, 0x87, 0x71, 0xc4, 0x3a, 0xe0, 0x6b, - 0x56, 0xb5, 0x52, 0xaf, 0xe8, 0x10, 0xd6, 0x81, 0x77, 0xd2, 0x05, 0x6b, 0x09, 0xd7, 0xa6, 0x7d, - 0x4d, 0x72, 0x16, 0x49, 0xb0, 0x7e, 0x40, 0x78, 0x31, 0x85, 0xb7, 0xbc, 0xad, 0xa8, 0xcb, 0xe6, - 0x4f, 0x02, 0xf0, 0x62, 0x42, 0xb9, 0xcf, 0x89, 0x20, 0x7d, 0xe9, 0x73, 0x10, 0x3e, 0xb9, 0xa1, - 0x73, 0x39, 0xbd, 0xfa, 0x92, 0x53, 0x2c, 0xc1, 0xd4, 0x0f, 0xc7, 0x4b, 0xab, 0x55, 0xee, 0xb4, - 0xb6, 0x3c, 0x4f, 0x87, 0x78, 0x20, 0x36, 0x6e, 0x6c, 0x3e, 0xf1, 0xd3, 0xdf, 0x7b, 0x15, 0xfc, - 0x15, 0x7a, 0x6c, 0xf9, 0x91, 0x57, 0x56, 0x56, 0x57, 0xd6, 0xb6, 0xcf, 0x24, 0x94, 0x8f, 0x11, - 0xac, 0xa7, 0xb0, 0x31, 0x9e, 0x6d, 0x26, 0xe2, 0x5f, 0x84, 0x9f, 0x6e, 0x82, 0x6a, 0xf4, 0x58, - 0xdc, 0x69, 0x52, 0x05, 0x0f, 0x27, 0xa5, 0x85, 0x1f, 0xcf, 0x0f, 0x98, 0x46, 0x5d, 0x56, 0xad, - 0xd4, 0xd1, 0xb9, 0xd3, 0xab, 0xe7, 0x9d, 0x59, 0x17, 0xc9, 0xd9, 0xf8, 0xa0, 0xd9, 0xf2, 0x1a, - 0x79, 0x02, 0xef, 0x5d, 0xe7, 0xb0, 0x8d, 0xc9, 0xae, 0x6c, 0xf1, 0x20, 0x9d, 0x1b, 0x2d, 0xfc, - 0x64, 0x87, 0x0a, 0x08, 0x94, 0x1f, 0xb0, 0x28, 0x4a, 0x7f, 0xf5, 0xf6, 0xa7, 0xf4, 0xf6, 0x2f, - 0x4c, 0xdd, 0xfe, 0xb2, 0xe6, 0x37, 0x46, 0x74, 0xad, 0x6a, 0xb1, 0x33, 0xb9, 0x64, 0xd5, 0x70, - 0xf5, 0x41, 0xf1, 0x23, 0x67, 0x56, 0xbf, 0x59, 0xc0, 0x0b, 0x0d, 0xfd, 0x22, 0x6c, 0x78, 0x5b, - 0xc6, 0x8f, 0xe5, 0x91, 0x7d, 0xc5, 0x5a, 0x30, 0x5e, 0x9f, 0x2d, 0xed, 0xc8, 0x7a, 0xad, 0x5d, - 0x9a, 0x2f, 0x38, 0x3b, 0xb9, 0x6f, 0xd1, 0xe0, 0xe7, 0xea, 0xa5, 0x04, 0xa4, 0x4d, 0x99, 0x4d, - 0xa3, 0xae, 0x20, 0x52, 0x89, 0x38, 0x50, 0xb1, 0x00, 0x7b, 0x57, 0x50, 0x05, 0x2b, 0xf5, 0xee, - 0x85, 0x6b, 0x81, 0x9d, 0xee, 0x63, 0xf7, 0x49, 0x44, 0x42, 0xe8, 0x43, 0xa4, 0xec, 0x36, 0x91, - 0x34, 0xb0, 0x63, 0x09, 0xe2, 0xd6, 0xef, 0x7f, 0x7e, 0x5d, 0x7e, 0xdf, 0xf2, 0xb2, 0xf7, 0xcf, - 0x3d, 0x3c, 0x5b, 0xe9, 0x7e, 0x72, 0x38, 0xbe, 0x59, 0xbc, 0xb2, 0x1a, 0xb8, 0xe9, 0x4a, 0xc5, - 0x04, 0x09, 0xc1, 0x95, 0xa0, 0x34, 0x76, 0xf5, 0xa2, 0xf4, 0x77, 0xf2, 0x14, 0xd7, 0xd1, 0xb2, - 0xf1, 0x59, 0x19, 0xe3, 0xfb, 0xe5, 0x66, 0xac, 0x1d, 0x4f, 0x6a, 0xe1, 0x2a, 0xd5, 0xce, 0xff, - 0xbf, 0xa0, 0xcc, 0x97, 0xcf, 0x4f, 0xc6, 0x97, 0xcb, 0xd6, 0x1b, 0xf3, 0xf8, 0x92, 0xfa, 0x41, - 0xb9, 0x2e, 0xcf, 0xd4, 0x86, 0xef, 0xca, 0xf8, 0xec, 0x64, 0x85, 0x19, 0xaf, 0x1d, 0x4b, 0xd7, - 0xb4, 0x2b, 0x59, 0x5b, 0x9f, 0x27, 0x34, 0x33, 0xe6, 0xcb, 0x93, 0x31, 0xe6, 0x8a, 0xf5, 0xe6, - 0x9c, 0xc6, 0x04, 0x69, 0x5a, 0x7a, 0xf5, 0xd0, 0x9f, 0x7f, 0x10, 0x3e, 0xd3, 0xca, 0x7a, 0x55, - 0x83, 0x45, 0x5d, 0x1a, 0x1a, 0xcb, 0x53, 0x25, 0x16, 0x49, 0xb9, 0x1d, 0x2f, 0x1f, 0x8b, 0x9b, - 0xe9, 0xff, 0xe2, 0x64, 0xf4, 0xbf, 0x65, 0x6d, 0xce, 0xa1, 0x3f, 0x6f, 0xc8, 0xe9, 0x03, 0xd6, - 0xa5, 0xe1, 0x3a, 0x5a, 0xae, 0x5d, 0xd8, 0xbb, 0x83, 0x2a, 0xbf, 0xdd, 0x41, 0x2f, 0xce, 0x3c, - 0xd2, 0x77, 0x75, 0x5b, 0xbd, 0xf5, 0x6b, 0xb5, 0x7c, 0x16, 0x6d, 0xde, 0x46, 0xfb, 0x07, 0x66, - 0xe9, 0xee, 0x81, 0x59, 0xba, 0x77, 0x60, 0xa2, 0x4f, 0x07, 0x26, 0xfa, 0x7e, 0x60, 0xa2, 0x5f, - 0x06, 0x26, 0xda, 0x1f, 0x98, 0xe8, 0x8f, 0x81, 0x89, 0xfe, 0x1a, 0x98, 0xa5, 0x7b, 0x03, 0x13, - 0xdd, 0x1e, 0x9a, 0xa5, 0xbd, 0xa1, 0x89, 0xf6, 0x87, 0x66, 0xe9, 0xee, 0xd0, 0x2c, 0x7d, 0xd8, - 0x0a, 0x19, 0xbf, 0x1a, 0x3a, 0x09, 0xeb, 0x29, 0x10, 0x82, 0x38, 0xb1, 0x74, 0xf5, 0xa0, 0xcb, - 0x44, 0xdf, 0xe6, 0x82, 0x25, 0xb4, 0x03, 0xc2, 0xce, 0x61, 0x97, 0xb7, 0x43, 0xe6, 0xc2, 0x35, - 0x95, 0xff, 0xe7, 0x38, 0xaa, 0x8f, 0xb7, 0x1f, 0xd5, 0xcd, 0x79, 0xed, 0xbf, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x72, 0x54, 0x91, 0x5c, 0x6a, 0x09, 0x00, 0x00, + 0x90, 0xdd, 0x15, 0x49, 0x2b, 0x4a, 0x40, 0x42, 0x89, 0x2b, 0x20, 0xaa, 0x04, 0xab, 0x18, 0x8c, + 0xc4, 0x65, 0x19, 0xef, 0x3e, 0x6f, 0x86, 0xda, 0x3b, 0xc3, 0xcc, 0xec, 0xa6, 0x2d, 0xaa, 0x84, + 0xfa, 0x0b, 0x2a, 0x38, 0x73, 0x44, 0xea, 0x01, 0x21, 0x71, 0xe0, 0x42, 0x0f, 0x84, 0x13, 0x9c, + 0x50, 0x80, 0x4b, 0x8f, 0xc4, 0xe6, 0x00, 0xb7, 0xde, 0xb9, 0xa0, 0x1d, 0xaf, 0x53, 0xaf, 0xeb, + 0xc8, 0xc1, 0x95, 0x72, 0xf2, 0xcc, 0x7c, 0xdf, 0xf7, 0xfc, 0xde, 0x37, 0x6f, 0x66, 0x07, 0xbf, + 0x9a, 0x82, 0x74, 0x28, 0x73, 0x65, 0xb0, 0x03, 0x3d, 0xe2, 0xa6, 0x14, 0x76, 0xa5, 0x4b, 0x76, + 0xa5, 0x9f, 0xf2, 0xc0, 0x97, 0x54, 0x81, 0xcb, 0x93, 0x76, 0x97, 0x06, 0x7e, 0x90, 0x48, 0xc5, + 0x7a, 0x84, 0x53, 0x87, 0x0b, 0xa6, 0x98, 0x51, 0x1f, 0x0a, 0x9d, 0xa1, 0xd0, 0xd1, 0x42, 0x67, + 0x5c, 0x58, 0xb3, 0x23, 0xaa, 0x76, 0x92, 0xb6, 0x13, 0xb0, 0x9e, 0x1b, 0xb1, 0x88, 0xb9, 0x5a, + 0xd8, 0x4e, 0x3a, 0x7a, 0xa6, 0x27, 0x7a, 0x34, 0x0c, 0x58, 0x5b, 0x8a, 0x18, 0x8b, 0xba, 0xe0, + 0x12, 0x4e, 0x5d, 0x12, 0xc7, 0x4c, 0x11, 0x45, 0x59, 0x2c, 0x73, 0xf4, 0xd9, 0x62, 0x9e, 0x8c, + 0x8f, 0x83, 0x66, 0x11, 0xd4, 0x69, 0xab, 0x6b, 0x1c, 0x46, 0xf8, 0xd2, 0x44, 0x91, 0xa4, 0x4b, + 0x43, 0xa2, 0x20, 0x47, 0xad, 0x09, 0x14, 0x24, 0xc4, 0xe9, 0xc4, 0x3f, 0xd4, 0x1f, 0xb4, 0xc9, + 0x2f, 0x32, 0xec, 0x99, 0x46, 0xb2, 0xf6, 0x27, 0x10, 0xa8, 0x9c, 0xbe, 0x32, 0x93, 0x3e, 0x5e, + 0xc0, 0xf3, 0xd3, 0xd8, 0x19, 0xcb, 0x1f, 0x63, 0x59, 0x5d, 0xfc, 0x4c, 0x13, 0x54, 0xcb, 0x6b, + 0x5c, 0xbe, 0xd8, 0x7c, 0x87, 0x49, 0x15, 0x93, 0x1e, 0xc8, 0x6d, 0xf8, 0x34, 0x01, 0xa9, 0x8c, + 0x25, 0xbc, 0xa0, 0xe7, 0x9c, 0x04, 0x50, 0x45, 0x75, 0x74, 0x6e, 0x61, 0xfb, 0xfe, 0x82, 0x61, + 0xe0, 0x53, 0xd9, 0xa4, 0x5a, 0xd6, 0x80, 0x1e, 0x1b, 0xcf, 0x61, 0x1c, 0xb3, 0x10, 0x7c, 0xcd, + 0xaa, 0x56, 0xea, 0x15, 0x2d, 0x61, 0x21, 0xbc, 0x9b, 0x2d, 0x58, 0x4b, 0xb8, 0x36, 0xed, 0xdf, + 0x24, 0x67, 0xb1, 0x04, 0xeb, 0x1b, 0x84, 0x17, 0x33, 0x78, 0xcb, 0xdb, 0x8a, 0x3b, 0x6c, 0xfe, + 0x24, 0x00, 0x2f, 0xa6, 0x94, 0xfb, 0x9c, 0x08, 0xd2, 0x93, 0x3e, 0x07, 0xe1, 0x93, 0xeb, 0x3a, + 0x97, 0xd3, 0xab, 0x2f, 0x39, 0xc5, 0x16, 0xcc, 0xfc, 0x70, 0xbc, 0xac, 0x5b, 0xe5, 0x4e, 0x6b, + 0xcb, 0xf3, 0xb4, 0xc4, 0x03, 0xb1, 0x71, 0x7d, 0xf3, 0x89, 0x1f, 0xfe, 0xd9, 0xab, 0xe0, 0x2f, + 0xd0, 0x63, 0xcb, 0x8f, 0xbc, 0xb2, 0xb2, 0xba, 0xb2, 0xb6, 0x7d, 0x26, 0xa5, 0x7c, 0x8c, 0x60, + 0x3d, 0x85, 0x8d, 0xf1, 0x6c, 0xf3, 0x22, 0xfe, 0x45, 0xf8, 0xe9, 0x26, 0xa8, 0x46, 0x97, 0x25, + 0x61, 0x93, 0x2a, 0x78, 0xb8, 0x52, 0x5a, 0xf8, 0xf1, 0xd1, 0x06, 0xd3, 0xb8, 0xc3, 0xaa, 0x95, + 0x3a, 0x3a, 0x77, 0x7a, 0xf5, 0xbc, 0x33, 0xeb, 0x20, 0x39, 0x1b, 0x1f, 0x36, 0x5b, 0x5e, 0x63, + 0x94, 0xc0, 0xfb, 0xd7, 0x38, 0x6c, 0x63, 0xb2, 0x2b, 0x5b, 0x3c, 0xc8, 0xe6, 0x46, 0x0b, 0x3f, + 0x19, 0x52, 0x01, 0x81, 0xf2, 0x03, 0x16, 0xc7, 0xd9, 0xaf, 0x0e, 0x7f, 0x4a, 0x87, 0x7f, 0x61, + 0x6a, 0xf8, 0x4b, 0x9a, 0xdf, 0x18, 0xd2, 0x75, 0x55, 0x8b, 0xe1, 0xe4, 0x92, 0x55, 0xc3, 0xd5, + 0x07, 0x8b, 0x1f, 0x3a, 0xb3, 0xfa, 0x35, 0xc6, 0x0b, 0x0d, 0x7d, 0x23, 0x6c, 0x78, 0x5b, 0xc6, + 0x6f, 0xe5, 0xa1, 0x7d, 0xc5, 0x5e, 0x30, 0x5e, 0x9f, 0x5d, 0xda, 0x91, 0xfd, 0x5a, 0x7b, 0x63, + 0x3e, 0x71, 0xbe, 0x73, 0x3f, 0xa2, 0xfe, 0xcf, 0xd5, 0x8f, 0x53, 0x90, 0x36, 0x65, 0x36, 0x8d, + 0x3b, 0x82, 0x48, 0x25, 0x92, 0x40, 0x25, 0x02, 0xec, 0x5d, 0x41, 0x15, 0xac, 0xd4, 0x3b, 0x17, + 0xae, 0x06, 0x76, 0x16, 0xc7, 0xee, 0x91, 0x98, 0x44, 0xd0, 0x83, 0x58, 0xd9, 0x6d, 0x22, 0x69, + 0x60, 0x27, 0x12, 0xc4, 0x11, 0x04, 0xa9, 0x48, 0x1c, 0x12, 0x11, 0x6a, 0xce, 0xcd, 0x3f, 0xfe, + 0xfa, 0xb2, 0xfc, 0x81, 0xe5, 0xe5, 0x77, 0xa4, 0x7b, 0xb8, 0xff, 0xd2, 0xfd, 0xec, 0x70, 0x7c, + 0xa3, 0x78, 0xac, 0x35, 0x70, 0xc3, 0x95, 0x8a, 0x09, 0x12, 0x81, 0x2b, 0x41, 0x69, 0xec, 0xca, + 0x45, 0xe9, 0xef, 0x8c, 0xca, 0x58, 0x47, 0xcb, 0xc6, 0xed, 0x32, 0xc6, 0xf7, 0x5b, 0xd2, 0x58, + 0x3b, 0x9e, 0x1d, 0x85, 0xe3, 0x56, 0x3b, 0xff, 0xff, 0x44, 0xb9, 0x77, 0xdf, 0x9e, 0x9c, 0x77, + 0x97, 0xac, 0x37, 0xe7, 0xf1, 0x2e, 0xf3, 0x8c, 0x72, 0xdd, 0xe6, 0x99, 0x55, 0x3f, 0x95, 0xf1, + 0xd9, 0xc9, 0x4e, 0x35, 0x5e, 0x3b, 0x56, 0xed, 0xd3, 0x8e, 0x76, 0x6d, 0x7d, 0x1e, 0x69, 0x6e, + 0xde, 0xf7, 0x27, 0x67, 0xde, 0x65, 0xeb, 0xad, 0x39, 0xcd, 0x0b, 0xb2, 0xd4, 0xf5, 0xea, 0xa1, + 0x87, 0x5f, 0x95, 0xf1, 0x99, 0x56, 0xfe, 0x5d, 0x6c, 0xb0, 0xb8, 0x43, 0x23, 0x63, 0x79, 0xaa, + 0x0d, 0x45, 0xd2, 0xc8, 0xb2, 0x97, 0x8f, 0xc5, 0xcd, 0x3d, 0xfa, 0xee, 0xe4, 0x3c, 0x7a, 0xdb, + 0xda, 0x9c, 0xc3, 0xa3, 0xd1, 0x03, 0x21, 0xbb, 0x50, 0x3b, 0x34, 0x5a, 0x47, 0xcb, 0xb5, 0x0b, + 0x7b, 0x77, 0x50, 0xe5, 0xf7, 0x3b, 0xe8, 0xc5, 0x99, 0xad, 0xf1, 0x9e, 0xfe, 0xcc, 0xdf, 0xfc, + 0xb5, 0x5a, 0x3e, 0x8b, 0x36, 0x6f, 0xa1, 0xfd, 0x03, 0xb3, 0x74, 0xf7, 0xc0, 0x2c, 0xdd, 0x3b, + 0x30, 0xd1, 0xe7, 0x7d, 0x13, 0xdd, 0xee, 0x9b, 0xe8, 0x97, 0xbe, 0x89, 0xf6, 0xfb, 0x26, 0xfa, + 0xb3, 0x6f, 0xa2, 0xbf, 0xfb, 0x66, 0xe9, 0x5e, 0xdf, 0x44, 0xb7, 0x06, 0x66, 0x69, 0x6f, 0x60, + 0xa2, 0xfd, 0x81, 0x59, 0xba, 0x3b, 0x30, 0x4b, 0x1f, 0xb5, 0x22, 0xc6, 0xaf, 0x44, 0x4e, 0xca, + 0xba, 0x0a, 0x84, 0x20, 0x4e, 0x22, 0x5d, 0x3d, 0xe8, 0x30, 0xd1, 0xb3, 0xb9, 0x60, 0x29, 0x0d, + 0x41, 0xd8, 0x23, 0xd8, 0xe5, 0xed, 0x88, 0xb9, 0x70, 0x55, 0x8d, 0xde, 0x40, 0x47, 0xbd, 0x2b, + 0xda, 0x8f, 0xea, 0xc7, 0xc2, 0xda, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x21, 0xdd, 0x88, 0x06, + 0xfa, 0x09, 0x00, 0x00, } func (this *SetVPCK8SHostnamesRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.vesapi.go b/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.vesapi.go index 03a3c884c..7e21320c0 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/public_customapi.vesapi.go @@ -1376,12 +1376,12 @@ var CustomAPISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { diff --git a/pbgo/extschema/schema/views/aws_vpc_site/types.pb.go b/pbgo/extschema/schema/views/aws_vpc_site/types.pb.go index f060f8f5e..bb976478c 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/types.pb.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/types.pb.go @@ -1100,6 +1100,12 @@ func (*AWSVPCVoltstackClusterType) XXX_OneofWrappers() []interface{} { // x-displayName: "AWS Ingress Gateway" // Single interface AWS ingress site type AWSVPCIngressGwReplaceType struct { + // Nodes + // + // x-displayName: "Ingress Gateway (One Interface) Nodes in AZ" + // x-required + // Only Single AZ or Three AZ(s) nodes are supported currently. + AzNodes []*views.AWSVPCOneInterfaceNodeType `protobuf:"bytes,1,rep,name=az_nodes,json=azNodes,proto3" json:"az_nodes,omitempty"` // Allowed VIP Port Configuration // // x-displayName: "Allowed VIP Port Configuration" @@ -1140,6 +1146,13 @@ func (m *AWSVPCIngressGwReplaceType) XXX_DiscardUnknown() { var xxx_messageInfo_AWSVPCIngressGwReplaceType proto.InternalMessageInfo +func (m *AWSVPCIngressGwReplaceType) GetAzNodes() []*views.AWSVPCOneInterfaceNodeType { + if m != nil { + return m.AzNodes + } + return nil +} + func (m *AWSVPCIngressGwReplaceType) GetAllowedVipPort() *views.AllowedVIPPorts { if m != nil { return m.AllowedVipPort @@ -1159,6 +1172,12 @@ func (m *AWSVPCIngressGwReplaceType) GetPerformanceEnhancementMode() *views.Perf // x-displayName: "AWS Ingress/Egress Gateway" // Two interface AWS ingress/egress site type AWSVPCIngressEgressGwReplaceType struct { + // Nodes + // + // x-displayName: "Ingress/Egress Gateway (two Interface) Nodes in AZ" + // x-required + // Only Single AZ or Three AZ(s) nodes are supported currently. + AzNodes []*views.AWSVPCTwoInterfaceNodeType `protobuf:"bytes,1,rep,name=az_nodes,json=azNodes,proto3" json:"az_nodes,omitempty"` // Manage Firewall Policy // // x-displayName: "Manage Firewall Policy" @@ -1450,6 +1469,13 @@ func (m *AWSVPCIngressEgressGwReplaceType) GetSiteMeshGroupChoice() isAWSVPCIngr return nil } +func (m *AWSVPCIngressEgressGwReplaceType) GetAzNodes() []*views.AWSVPCTwoInterfaceNodeType { + if m != nil { + return m.AzNodes + } + return nil +} + func (m *AWSVPCIngressEgressGwReplaceType) GetNoNetworkPolicy() *schema.Empty { if x, ok := m.GetNetworkPolicyChoice().(*AWSVPCIngressEgressGwReplaceType_NoNetworkPolicy); ok { return x.NoNetworkPolicy @@ -1618,6 +1644,12 @@ func (*AWSVPCIngressEgressGwReplaceType) XXX_OneofWrappers() []interface{} { // x-displayName: "AWS App Stack Cluster" // App Stack cluster of single interface AWS nodes type AWSVPCVoltstackClusterReplaceType struct { + // Nodes + // + // x-displayName: "App Stack Cluster (One Interface) Nodes in AZ" + // x-required + // Only Single AZ or Three AZ(s) nodes are supported currently. + AzNodes []*views.AWSVPCOneInterfaceNodeType `protobuf:"bytes,2,rep,name=az_nodes,json=azNodes,proto3" json:"az_nodes,omitempty"` // Manage Firewall Policy // // x-displayName: "Manage Firewall Policy" @@ -1861,6 +1893,13 @@ func (m *AWSVPCVoltstackClusterReplaceType) GetSiteMeshGroupChoice() isAWSVPCVol return nil } +func (m *AWSVPCVoltstackClusterReplaceType) GetAzNodes() []*views.AWSVPCOneInterfaceNodeType { + if m != nil { + return m.AzNodes + } + return nil +} + func (m *AWSVPCVoltstackClusterReplaceType) GetNoNetworkPolicy() *schema.Empty { if x, ok := m.GetNetworkPolicyChoice().(*AWSVPCVoltstackClusterReplaceType_NoNetworkPolicy); ok { return x.NoNetworkPolicy @@ -2310,6 +2349,11 @@ type GlobalSpecType struct { // x-displayName: "Custom DNS" // custom dns configure to the CE site CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` // Reference to terraform parameters // // x-displayName: "Terraform Parameters" @@ -2875,6 +2919,13 @@ func (m *GlobalSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GlobalSpecType) GetTfParams() *views.ObjectRefType { if m != nil { return m.TfParams @@ -3000,7 +3051,8 @@ type CreateSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -3469,6 +3521,13 @@ func (m *CreateSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3502,6 +3561,7 @@ func (*CreateSpecType) XXX_OneofWrappers() []interface{} { // x-displayName: "Replace AWS VPC site" // Shape of the AWS VPC site replace specification type ReplaceSpecType struct { + Vpc *views.AWSVPCchoiceType `protobuf:"bytes,1,opt,name=vpc,proto3" json:"vpc,omitempty"` // Site Type // // x-displayName: "Edit Networking Config" @@ -3515,9 +3575,13 @@ type ReplaceSpecType struct { SiteType isReplaceSpecType_SiteType `protobuf_oneof:"site_type"` // Types that are valid to be assigned to Deployment: // *ReplaceSpecType_AwsCred - Deployment isReplaceSpecType_Deployment `protobuf_oneof:"deployment"` - Address string `protobuf:"bytes,17,opt,name=address,proto3" json:"address,omitempty"` - Coordinates *site.Coordinates `protobuf:"bytes,18,opt,name=coordinates,proto3" json:"coordinates,omitempty"` + Deployment isReplaceSpecType_Deployment `protobuf_oneof:"deployment"` + InstanceType string `protobuf:"bytes,6,opt,name=instance_type,json=instanceType,proto3" json:"instance_type,omitempty"` + AwsRegion string `protobuf:"bytes,12,opt,name=aws_region,json=awsRegion,proto3" json:"aws_region,omitempty"` + SshKey string `protobuf:"bytes,13,opt,name=ssh_key,json=sshKey,proto3" json:"ssh_key,omitempty"` + DiskSize uint32 `protobuf:"varint,15,opt,name=disk_size,json=diskSize,proto3" json:"disk_size,omitempty"` + Address string `protobuf:"bytes,17,opt,name=address,proto3" json:"address,omitempty"` + Coordinates *site.Coordinates `protobuf:"bytes,18,opt,name=coordinates,proto3" json:"coordinates,omitempty"` // Types that are valid to be assigned to LogsReceiverChoice: // *ReplaceSpecType_LogsStreamingDisabled // *ReplaceSpecType_LogReceiver @@ -3542,11 +3606,21 @@ type ReplaceSpecType struct { // *ReplaceSpecType_DisableInternetVip // *ReplaceSpecType_EnableInternetVip InternetVipChoice isReplaceSpecType_InternetVipChoice `protobuf_oneof:"internet_vip_choice"` + // Types that are valid to be assigned to EgressGatewayChoice: + // *ReplaceSpecType_EgressGatewayDefault + // *ReplaceSpecType_EgressNatGw + // *ReplaceSpecType_EgressVirtualPrivateGateway + EgressGatewayChoice isReplaceSpecType_EgressGatewayChoice `protobuf_oneof:"egress_gateway_choice"` + // Types that are valid to be assigned to SecurityGroupChoice: + // *ReplaceSpecType_F5XcSecurityGroup + // *ReplaceSpecType_CustomSecurityGroup + SecurityGroupChoice isReplaceSpecType_SecurityGroupChoice `protobuf_oneof:"security_group_choice"` // custom_dns // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -3619,6 +3693,18 @@ type isReplaceSpecType_InternetVipChoice interface { MarshalTo([]byte) (int, error) Size() int } +type isReplaceSpecType_EgressGatewayChoice interface { + isReplaceSpecType_EgressGatewayChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_SecurityGroupChoice interface { + isReplaceSpecType_SecurityGroupChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type ReplaceSpecType_IngressGw struct { IngressGw *AWSVPCIngressGwReplaceType `protobuf:"bytes,2,opt,name=ingress_gw,json=ingressGw,proto3,oneof" json:"ingress_gw,omitempty"` @@ -3671,24 +3757,44 @@ type ReplaceSpecType_DisableInternetVip struct { type ReplaceSpecType_EnableInternetVip struct { EnableInternetVip *schema.Empty `protobuf:"bytes,43,opt,name=enable_internet_vip,json=enableInternetVip,proto3,oneof" json:"enable_internet_vip,omitempty"` } +type ReplaceSpecType_EgressGatewayDefault struct { + EgressGatewayDefault *schema.Empty `protobuf:"bytes,46,opt,name=egress_gateway_default,json=egressGatewayDefault,proto3,oneof" json:"egress_gateway_default,omitempty"` +} +type ReplaceSpecType_EgressNatGw struct { + EgressNatGw *views.AWSNATGatewaychoiceType `protobuf:"bytes,47,opt,name=egress_nat_gw,json=egressNatGw,proto3,oneof" json:"egress_nat_gw,omitempty"` +} +type ReplaceSpecType_EgressVirtualPrivateGateway struct { + EgressVirtualPrivateGateway *views.AWSVirtualPrivateGatewaychoiceType `protobuf:"bytes,48,opt,name=egress_virtual_private_gateway,json=egressVirtualPrivateGateway,proto3,oneof" json:"egress_virtual_private_gateway,omitempty"` +} +type ReplaceSpecType_F5XcSecurityGroup struct { + F5XcSecurityGroup *schema.Empty `protobuf:"bytes,52,opt,name=f5xc_security_group,json=f5xcSecurityGroup,proto3,oneof" json:"f5xc_security_group,omitempty"` +} +type ReplaceSpecType_CustomSecurityGroup struct { + CustomSecurityGroup *views.SecurityGroupType `protobuf:"bytes,53,opt,name=custom_security_group,json=customSecurityGroup,proto3,oneof" json:"custom_security_group,omitempty"` +} -func (*ReplaceSpecType_IngressGw) isReplaceSpecType_SiteType() {} -func (*ReplaceSpecType_IngressEgressGw) isReplaceSpecType_SiteType() {} -func (*ReplaceSpecType_VoltstackCluster) isReplaceSpecType_SiteType() {} -func (*ReplaceSpecType_AwsCred) isReplaceSpecType_Deployment() {} -func (*ReplaceSpecType_LogsStreamingDisabled) isReplaceSpecType_LogsReceiverChoice() {} -func (*ReplaceSpecType_LogReceiver) isReplaceSpecType_LogsReceiverChoice() {} -func (*ReplaceSpecType_NodesPerAz) isReplaceSpecType_WorkerNodes() {} -func (*ReplaceSpecType_TotalNodes) isReplaceSpecType_WorkerNodes() {} -func (*ReplaceSpecType_NoWorkerNodes) isReplaceSpecType_WorkerNodes() {} -func (*ReplaceSpecType_DefaultBlockedServices) isReplaceSpecType_BlockedServicesChoice() {} -func (*ReplaceSpecType_BlockAllServices) isReplaceSpecType_BlockedServicesChoice() {} -func (*ReplaceSpecType_BlockedServices) isReplaceSpecType_BlockedServicesChoice() {} -func (*ReplaceSpecType_DirectConnectDisabled) isReplaceSpecType_DirectConnectChoice() {} -func (*ReplaceSpecType_DirectConnectEnabled) isReplaceSpecType_DirectConnectChoice() {} -func (*ReplaceSpecType_PrivateConnectivity) isReplaceSpecType_DirectConnectChoice() {} -func (*ReplaceSpecType_DisableInternetVip) isReplaceSpecType_InternetVipChoice() {} -func (*ReplaceSpecType_EnableInternetVip) isReplaceSpecType_InternetVipChoice() {} +func (*ReplaceSpecType_IngressGw) isReplaceSpecType_SiteType() {} +func (*ReplaceSpecType_IngressEgressGw) isReplaceSpecType_SiteType() {} +func (*ReplaceSpecType_VoltstackCluster) isReplaceSpecType_SiteType() {} +func (*ReplaceSpecType_AwsCred) isReplaceSpecType_Deployment() {} +func (*ReplaceSpecType_LogsStreamingDisabled) isReplaceSpecType_LogsReceiverChoice() {} +func (*ReplaceSpecType_LogReceiver) isReplaceSpecType_LogsReceiverChoice() {} +func (*ReplaceSpecType_NodesPerAz) isReplaceSpecType_WorkerNodes() {} +func (*ReplaceSpecType_TotalNodes) isReplaceSpecType_WorkerNodes() {} +func (*ReplaceSpecType_NoWorkerNodes) isReplaceSpecType_WorkerNodes() {} +func (*ReplaceSpecType_DefaultBlockedServices) isReplaceSpecType_BlockedServicesChoice() {} +func (*ReplaceSpecType_BlockAllServices) isReplaceSpecType_BlockedServicesChoice() {} +func (*ReplaceSpecType_BlockedServices) isReplaceSpecType_BlockedServicesChoice() {} +func (*ReplaceSpecType_DirectConnectDisabled) isReplaceSpecType_DirectConnectChoice() {} +func (*ReplaceSpecType_DirectConnectEnabled) isReplaceSpecType_DirectConnectChoice() {} +func (*ReplaceSpecType_PrivateConnectivity) isReplaceSpecType_DirectConnectChoice() {} +func (*ReplaceSpecType_DisableInternetVip) isReplaceSpecType_InternetVipChoice() {} +func (*ReplaceSpecType_EnableInternetVip) isReplaceSpecType_InternetVipChoice() {} +func (*ReplaceSpecType_EgressGatewayDefault) isReplaceSpecType_EgressGatewayChoice() {} +func (*ReplaceSpecType_EgressNatGw) isReplaceSpecType_EgressGatewayChoice() {} +func (*ReplaceSpecType_EgressVirtualPrivateGateway) isReplaceSpecType_EgressGatewayChoice() {} +func (*ReplaceSpecType_F5XcSecurityGroup) isReplaceSpecType_SecurityGroupChoice() {} +func (*ReplaceSpecType_CustomSecurityGroup) isReplaceSpecType_SecurityGroupChoice() {} func (m *ReplaceSpecType) GetSiteType() isReplaceSpecType_SiteType { if m != nil { @@ -3732,6 +3838,25 @@ func (m *ReplaceSpecType) GetInternetVipChoice() isReplaceSpecType_InternetVipCh } return nil } +func (m *ReplaceSpecType) GetEgressGatewayChoice() isReplaceSpecType_EgressGatewayChoice { + if m != nil { + return m.EgressGatewayChoice + } + return nil +} +func (m *ReplaceSpecType) GetSecurityGroupChoice() isReplaceSpecType_SecurityGroupChoice { + if m != nil { + return m.SecurityGroupChoice + } + return nil +} + +func (m *ReplaceSpecType) GetVpc() *views.AWSVPCchoiceType { + if m != nil { + return m.Vpc + } + return nil +} func (m *ReplaceSpecType) GetIngressGw() *AWSVPCIngressGwReplaceType { if x, ok := m.GetSiteType().(*ReplaceSpecType_IngressGw); ok { @@ -3761,6 +3886,34 @@ func (m *ReplaceSpecType) GetAwsCred() *views.ObjectRefType { return nil } +func (m *ReplaceSpecType) GetInstanceType() string { + if m != nil { + return m.InstanceType + } + return "" +} + +func (m *ReplaceSpecType) GetAwsRegion() string { + if m != nil { + return m.AwsRegion + } + return "" +} + +func (m *ReplaceSpecType) GetSshKey() string { + if m != nil { + return m.SshKey + } + return "" +} + +func (m *ReplaceSpecType) GetDiskSize() uint32 { + if m != nil { + return m.DiskSize + } + return 0 +} + func (m *ReplaceSpecType) GetAddress() string { if m != nil { return m.Address @@ -3873,6 +4026,41 @@ func (m *ReplaceSpecType) GetEnableInternetVip() *schema.Empty { return nil } +func (m *ReplaceSpecType) GetEgressGatewayDefault() *schema.Empty { + if x, ok := m.GetEgressGatewayChoice().(*ReplaceSpecType_EgressGatewayDefault); ok { + return x.EgressGatewayDefault + } + return nil +} + +func (m *ReplaceSpecType) GetEgressNatGw() *views.AWSNATGatewaychoiceType { + if x, ok := m.GetEgressGatewayChoice().(*ReplaceSpecType_EgressNatGw); ok { + return x.EgressNatGw + } + return nil +} + +func (m *ReplaceSpecType) GetEgressVirtualPrivateGateway() *views.AWSVirtualPrivateGatewaychoiceType { + if x, ok := m.GetEgressGatewayChoice().(*ReplaceSpecType_EgressVirtualPrivateGateway); ok { + return x.EgressVirtualPrivateGateway + } + return nil +} + +func (m *ReplaceSpecType) GetF5XcSecurityGroup() *schema.Empty { + if x, ok := m.GetSecurityGroupChoice().(*ReplaceSpecType_F5XcSecurityGroup); ok { + return x.F5XcSecurityGroup + } + return nil +} + +func (m *ReplaceSpecType) GetCustomSecurityGroup() *views.SecurityGroupType { + if x, ok := m.GetSecurityGroupChoice().(*ReplaceSpecType_CustomSecurityGroup); ok { + return x.CustomSecurityGroup + } + return nil +} + func (m *ReplaceSpecType) GetCustomDns() *views.CustomDNS { if m != nil { return m.CustomDns @@ -3880,6 +4068,13 @@ func (m *ReplaceSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3900,6 +4095,11 @@ func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { (*ReplaceSpecType_PrivateConnectivity)(nil), (*ReplaceSpecType_DisableInternetVip)(nil), (*ReplaceSpecType_EnableInternetVip)(nil), + (*ReplaceSpecType_EgressGatewayDefault)(nil), + (*ReplaceSpecType_EgressNatGw)(nil), + (*ReplaceSpecType_EgressVirtualPrivateGateway)(nil), + (*ReplaceSpecType_F5XcSecurityGroup)(nil), + (*ReplaceSpecType_CustomSecurityGroup)(nil), } } @@ -3975,9 +4175,10 @@ type GetSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` - CloudSiteInfo *AWSVPCSiteInfoType `protobuf:"bytes,1001,opt,name=cloud_site_info,json=cloudSiteInfo,proto3" json:"cloud_site_info,omitempty"` - DirectConnectInfo *views.DirectConnectInfo `protobuf:"bytes,1002,opt,name=direct_connect_info,json=directConnectInfo,proto3" json:"direct_connect_info,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` + CloudSiteInfo *AWSVPCSiteInfoType `protobuf:"bytes,1001,opt,name=cloud_site_info,json=cloudSiteInfo,proto3" json:"cloud_site_info,omitempty"` + DirectConnectInfo *views.DirectConnectInfo `protobuf:"bytes,1002,opt,name=direct_connect_info,json=directConnectInfo,proto3" json:"direct_connect_info,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -4506,6 +4707,13 @@ func (m *GetSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GetSpecType) GetCloudSiteInfo() *AWSVPCSiteInfoType { if m != nil { return m.CloudSiteInfo @@ -4588,325 +4796,328 @@ func init() { } var fileDescriptor_ea70a88e595e3c7c = []byte{ - // 5084 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5d, 0x4f, 0x6c, 0xdb, 0x58, - 0x7a, 0xf7, 0x93, 0x64, 0x5b, 0x7a, 0xfe, 0x47, 0xd3, 0xb2, 0xcd, 0xd8, 0x89, 0xac, 0x38, 0xc9, - 0xc4, 0x76, 0x68, 0xd9, 0x94, 0xe4, 0x3f, 0x49, 0x67, 0xb2, 0x31, 0x1d, 0x4f, 0x6c, 0xcd, 0x26, - 0x31, 0xe8, 0x8c, 0x67, 0x67, 0x77, 0x67, 0x58, 0x9a, 0x7a, 0x56, 0xd8, 0x48, 0xa4, 0x4a, 0x52, - 0x52, 0x9c, 0x6e, 0xba, 0x03, 0x17, 0x58, 0xb4, 0x7b, 0x68, 0x8b, 0xa0, 0xbd, 0xcc, 0xa9, 0x87, - 0xa2, 0x28, 0x72, 0xea, 0x79, 0x18, 0xa0, 0x46, 0x80, 0x05, 0x16, 0xd3, 0x1e, 0x0c, 0xf4, 0x32, - 0x18, 0x14, 0xe8, 0x8e, 0xe7, 0xd0, 0x99, 0xf6, 0x32, 0xc7, 0x81, 0x2f, 0x2d, 0xf8, 0x48, 0xd1, - 0xa4, 0x44, 0x29, 0x8e, 0xe3, 0xd9, 0xf9, 0xb3, 0xba, 0xcc, 0x58, 0xe4, 0xf7, 0xfd, 0xbe, 0x47, - 0xbe, 0x7f, 0xbf, 0xef, 0xf7, 0x3e, 0x22, 0x90, 0x2e, 0x23, 0x2d, 0x21, 0x29, 0x33, 0x9a, 0x78, - 0x1f, 0x15, 0x84, 0x99, 0xb2, 0x84, 0x2a, 0xda, 0x8c, 0x50, 0xd1, 0xf8, 0x72, 0x51, 0xe4, 0x35, - 0x49, 0x47, 0x33, 0xfa, 0x4e, 0x11, 0x69, 0x89, 0xa2, 0xaa, 0xe8, 0x0a, 0x19, 0xb7, 0xac, 0x13, - 0x96, 0x75, 0x02, 0x5b, 0x27, 0xdc, 0xd6, 0x23, 0xd3, 0x39, 0x49, 0xbf, 0x5f, 0xda, 0x4a, 0x88, - 0x4a, 0x61, 0x26, 0xa7, 0xe4, 0x94, 0x19, 0xec, 0xb8, 0x55, 0xda, 0xc6, 0xbf, 0xf0, 0x0f, 0xfc, - 0x97, 0x05, 0x38, 0x32, 0x96, 0x53, 0x94, 0x5c, 0x1e, 0x1d, 0x59, 0xe9, 0x52, 0x01, 0x69, 0xba, - 0x50, 0x28, 0x56, 0x0d, 0xbc, 0xed, 0xdb, 0xce, 0x23, 0xa4, 0xbb, 0x9b, 0x34, 0x32, 0xe5, 0x35, - 0x90, 0x91, 0x5e, 0x51, 0xd4, 0x07, 0xfc, 0xb6, 0xa4, 0xa2, 0x8a, 0x90, 0xcf, 0x7b, 0x6c, 0x47, - 0xbd, 0xb6, 0x4a, 0x51, 0x97, 0x14, 0xb9, 0x7a, 0x33, 0xe6, 0xbd, 0x59, 0xfb, 0xec, 0x23, 0x67, - 0xbc, 0xf7, 0xdd, 0xb7, 0xce, 0xd6, 0xbc, 0x44, 0x21, 0x2f, 0x65, 0x05, 0x1d, 0xd9, 0x77, 0xe3, - 0xf5, 0xaf, 0x98, 0xf7, 0x86, 0xbe, 0xe8, 0xd7, 0x09, 0x66, 0x03, 0x78, 0x77, 0x94, 0xcb, 0xbe, - 0x56, 0xba, 0xa2, 0x0a, 0x39, 0xaf, 0xe1, 0x98, 0x9f, 0xa1, 0xcb, 0x60, 0xfc, 0x3f, 0x83, 0x70, - 0x60, 0xe9, 0x9d, 0x8d, 0xcd, 0xf5, 0xe5, 0x35, 0x39, 0xa7, 0x22, 0x4d, 0xbb, 0x55, 0xb9, 0xb7, - 0x53, 0x44, 0xe4, 0xbb, 0x30, 0x2c, 0x3c, 0xe2, 0x65, 0x25, 0x8b, 0x34, 0x0a, 0xc4, 0x83, 0x13, - 0x5d, 0xc9, 0x99, 0x84, 0x5f, 0x8f, 0x5b, 0xbe, 0x77, 0x65, 0xb4, 0x26, 0xeb, 0x48, 0xdd, 0x16, - 0x44, 0x74, 0x47, 0xc9, 0x22, 0x13, 0x82, 0xed, 0xf9, 0xe8, 0xcb, 0xbd, 0x60, 0xf8, 0x09, 0x68, - 0x9f, 0x0a, 0x32, 0x74, 0x8a, 0xeb, 0x14, 0x1e, 0x99, 0xb7, 0x34, 0x92, 0x87, 0x84, 0x39, 0x4e, - 0x44, 0xa4, 0xea, 0xd2, 0xb6, 0x84, 0xb2, 0xfc, 0xfd, 0x0a, 0x15, 0x88, 0x83, 0x89, 0x08, 0x3b, - 0xf7, 0xa9, 0x01, 0xfa, 0x85, 0x8a, 0x36, 0xbd, 0xb5, 0xa3, 0xe4, 0xa7, 0xcb, 0x4a, 0x5e, 0x2f, - 0x20, 0xed, 0xfe, 0xd7, 0x06, 0x68, 0x33, 0xa1, 0x86, 0xd5, 0x41, 0xea, 0x06, 0x57, 0x7f, 0x9f, - 0xeb, 0x15, 0x2a, 0xda, 0x72, 0x15, 0x6d, 0xb5, 0x42, 0xde, 0x83, 0x84, 0x90, 0xcf, 0x2b, 0x15, - 0x94, 0xe5, 0xcb, 0x52, 0x91, 0x2f, 0x2a, 0xaa, 0x4e, 0x05, 0xe3, 0x60, 0xa2, 0x2b, 0x79, 0xd1, - 0xff, 0x19, 0x2c, 0xe3, 0xcd, 0xb5, 0xf5, 0x75, 0x45, 0xd5, 0x35, 0x36, 0xf4, 0x2f, 0xcf, 0x00, - 0xe0, 0x7a, 0x6d, 0x8c, 0x4d, 0xa9, 0x68, 0x5e, 0x26, 0x7f, 0x09, 0xcf, 0x16, 0x91, 0xba, 0xad, - 0xa8, 0x05, 0x41, 0x16, 0x11, 0x8f, 0xe4, 0xfb, 0xe6, 0xff, 0x0b, 0x48, 0xd6, 0xf9, 0x82, 0x92, - 0x45, 0xd4, 0x34, 0x8e, 0x90, 0xf2, 0x8d, 0xb0, 0x7e, 0xe4, 0xb8, 0x72, 0xe4, 0x77, 0xbb, 0xfa, - 0xa6, 0xc2, 0x7b, 0x06, 0x00, 0x5f, 0x19, 0x00, 0x70, 0x23, 0xc5, 0x86, 0x96, 0xd7, 0xe8, 0xe7, - 0x06, 0x98, 0x80, 0xbd, 0xb0, 0xdd, 0x7a, 0x8d, 0xed, 0x49, 0x9a, 0xa1, 0x53, 0x70, 0x08, 0x12, - 0x4b, 0xd9, 0xb2, 0x69, 0x98, 0x8d, 0xdf, 0xb5, 0x86, 0x12, 0x19, 0x48, 0xcf, 0x65, 0x42, 0xe1, - 0x10, 0xd1, 0x3e, 0x7e, 0x18, 0x85, 0x67, 0x3c, 0xdd, 0xbb, 0x72, 0xf2, 0x4e, 0xbe, 0x57, 0x51, - 0x8e, 0xdf, 0xc9, 0x2c, 0xec, 0x97, 0x15, 0xbe, 0x3a, 0x05, 0x8b, 0x4a, 0x5e, 0x12, 0x77, 0x70, - 0x2f, 0x77, 0x25, 0xa3, 0x35, 0x31, 0x56, 0x0a, 0x45, 0x7d, 0x67, 0xb5, 0x8d, 0xeb, 0x93, 0x95, - 0x3b, 0x96, 0xfd, 0x3a, 0x36, 0x27, 0x77, 0xe0, 0xb0, 0x20, 0xea, 0x52, 0x19, 0x79, 0x71, 0x24, - 0xa4, 0x51, 0x10, 0x23, 0x5d, 0xad, 0x41, 0xaa, 0x9d, 0xf1, 0x89, 0x25, 0xec, 0xee, 0x46, 0x95, - 0x90, 0x86, 0xdb, 0x8d, 0xfb, 0x78, 0xb5, 0x8d, 0x1b, 0x14, 0xfc, 0x4c, 0xc8, 0xbf, 0x07, 0xf0, - 0xbc, 0x1d, 0xdb, 0xee, 0xe8, 0xac, 0x83, 0x7a, 0xd4, 0x8a, 0x31, 0xdc, 0x0a, 0xf6, 0x78, 0xad, - 0xb0, 0xbb, 0x33, 0xfb, 0xa6, 0x7d, 0xd9, 0xb7, 0x39, 0x31, 0xa1, 0xa9, 0x2d, 0x79, 0x03, 0x12, - 0xb2, 0xc2, 0x6f, 0x2b, 0x6a, 0x45, 0x50, 0xb3, 0x7c, 0x51, 0x55, 0x1e, 0xee, 0x50, 0xa1, 0x26, - 0x6f, 0x15, 0x70, 0xbd, 0xb2, 0xf2, 0xa6, 0x65, 0xbe, 0x6e, 0x5a, 0x93, 0x7f, 0x01, 0xe0, 0x39, - 0xfb, 0xc9, 0x3c, 0x30, 0x47, 0x4f, 0x15, 0xc1, 0x78, 0xd7, 0x8f, 0xf7, 0x54, 0x6e, 0x6c, 0xf7, - 0x13, 0xad, 0x02, 0x6e, 0x44, 0x68, 0x68, 0x41, 0xde, 0x86, 0xc3, 0xde, 0xe8, 0x78, 0xb2, 0x99, - 0xff, 0xa5, 0xa2, 0x4d, 0x1f, 0x27, 0xba, 0xed, 0x82, 0xc3, 0x13, 0x77, 0x29, 0x9f, 0x27, 0x35, - 0x9f, 0x25, 0x25, 0x8c, 0x97, 0x94, 0xb5, 0x4f, 0x0d, 0x30, 0xea, 0x2c, 0x19, 0x85, 0x52, 0x5e, - 0x97, 0xa6, 0x65, 0x49, 0xac, 0x5b, 0x5c, 0xce, 0xab, 0x63, 0xd4, 0x0d, 0xae, 0x99, 0x65, 0xdd, - 0x32, 0x73, 0x1b, 0x0e, 0xcb, 0x0a, 0x2f, 0xc9, 0x9a, 0x94, 0x45, 0xbc, 0xa6, 0x0b, 0xba, 0x24, - 0xf2, 0xaa, 0x52, 0xd2, 0x91, 0x46, 0x75, 0x37, 0x79, 0x86, 0x00, 0x17, 0x95, 0x95, 0x35, 0xec, - 0xb5, 0x81, 0x9d, 0x38, 0xec, 0x43, 0x0a, 0x30, 0xea, 0x8b, 0xd5, 0x83, 0xb1, 0xa6, 0x7d, 0x27, - 0xe6, 0x86, 0xa4, 0x7b, 0x40, 0x7e, 0x2c, 0x69, 0x3a, 0x7e, 0xfb, 0x01, 0x8e, 0x94, 0xea, 0x43, - 0xbc, 0x0d, 0x29, 0x59, 0xe1, 0x95, 0x92, 0xee, 0x13, 0xa6, 0xaf, 0x71, 0x93, 0xd9, 0x90, 0xb9, - 0x3e, 0xad, 0x06, 0xb9, 0x41, 0x59, 0xb9, 0x6b, 0x39, 0x7b, 0x60, 0x25, 0x38, 0xe8, 0x8f, 0x49, - 0x9c, 0xa0, 0xe9, 0x4e, 0xb0, 0x01, 0xc5, 0x27, 0x94, 0xb5, 0xac, 0xe4, 0xf2, 0xca, 0x96, 0x90, - 0xaf, 0xae, 0x0a, 0x14, 0xd9, 0xe4, 0x6d, 0x87, 0xcc, 0x65, 0xe5, 0x16, 0xb6, 0xb7, 0xe7, 0x38, - 0xb9, 0x0d, 0x07, 0xbc, 0x00, 0x7c, 0x5e, 0xd2, 0x74, 0x6a, 0x00, 0xa3, 0xa4, 0x7d, 0x1b, 0xeb, - 0x01, 0x58, 0x56, 0x64, 0x19, 0x89, 0xe6, 0x4a, 0xeb, 0xbc, 0xee, 0x10, 0xd7, 0x9f, 0x73, 0x9b, - 0x98, 0x37, 0xc8, 0x15, 0x38, 0x20, 0x2b, 0x7c, 0x56, 0xe4, 0xc5, 0x7c, 0x49, 0xd3, 0x91, 0xca, - 0xe7, 0x54, 0xa5, 0x54, 0xa4, 0xa8, 0x26, 0xad, 0x6d, 0xe7, 0x08, 0x59, 0xb9, 0x29, 0x2e, 0x5b, - 0x0e, 0xb7, 0x4c, 0x7b, 0xb2, 0x02, 0x47, 0x6b, 0x31, 0x9c, 0x2e, 0x2c, 0xcb, 0xd4, 0x19, 0x0c, - 0x37, 0xee, 0xdb, 0xec, 0xbb, 0x5b, 0x7f, 0x82, 0x44, 0x9d, 0x43, 0xdb, 0xf8, 0xc5, 0x0e, 0x3c, - 0x7d, 0x4c, 0xd4, 0x22, 0xad, 0xb6, 0x73, 0xc3, 0x59, 0x4f, 0x3c, 0xbb, 0x83, 0x37, 0x65, 0xb2, - 0x04, 0x47, 0xea, 0x02, 0xdb, 0x23, 0xb4, 0x2c, 0x53, 0x23, 0xaf, 0x1a, 0x77, 0xc8, 0x1b, 0xd7, - 0x9a, 0x11, 0x9b, 0xb2, 0x39, 0xad, 0xb4, 0x02, 0x2f, 0x3a, 0x2f, 0x99, 0x2f, 0x96, 0xb6, 0xf2, - 0x92, 0xc8, 0x4b, 0x45, 0xea, 0x5c, 0x93, 0x57, 0xd7, 0xc1, 0x45, 0xb5, 0xc2, 0x51, 0xd7, 0xac, - 0x63, 0xa7, 0xb5, 0x22, 0x79, 0x0b, 0x46, 0x6b, 0xe0, 0xca, 0xba, 0x89, 0x15, 0x6b, 0x8a, 0xd5, - 0xef, 0xc1, 0x2a, 0xeb, 0x6b, 0x45, 0x5f, 0x56, 0x31, 0xf8, 0xca, 0xac, 0xe2, 0x67, 0x30, 0x5a, - 0x8b, 0xca, 0x6b, 0x79, 0x89, 0x1a, 0x7a, 0x69, 0xe4, 0x7e, 0x2f, 0xf2, 0x46, 0x5e, 0xfa, 0xf6, - 0x29, 0xcb, 0x7b, 0xcf, 0x0d, 0xf0, 0x2e, 0xec, 0xae, 0x52, 0x96, 0xe0, 0x22, 0xcd, 0xc0, 0xb3, - 0x70, 0xd0, 0x9c, 0xfb, 0x71, 0x7b, 0xaa, 0xc4, 0xab, 0x7b, 0x1c, 0x19, 0x9c, 0xa7, 0x17, 0xe0, - 0x15, 0x1f, 0x3a, 0x33, 0xcc, 0x2c, 0xd0, 0xc9, 0x45, 0x3a, 0x99, 0xa2, 0x19, 0x86, 0x66, 0xd2, - 0x74, 0x32, 0x49, 0x27, 0x19, 0x3a, 0x3d, 0xc7, 0xd2, 0x70, 0xd0, 0xcb, 0x30, 0x78, 0xf1, 0xbe, - 0x22, 0x89, 0x88, 0x1c, 0xd8, 0x33, 0x40, 0x60, 0xdf, 0x00, 0x1d, 0x07, 0x06, 0xe8, 0x4c, 0xd2, - 0x29, 0x86, 0x66, 0x66, 0xd9, 0x29, 0x18, 0xf5, 0xee, 0x39, 0xb6, 0x31, 0xb9, 0x67, 0x80, 0xd0, - 0xbe, 0x01, 0x3a, 0x0f, 0x0c, 0xd0, 0x91, 0xa6, 0x93, 0xb3, 0xf4, 0x55, 0x76, 0x06, 0x8e, 0xf8, - 0x2c, 0xc6, 0x55, 0x8f, 0xfe, 0x3d, 0x03, 0x74, 0xef, 0x1b, 0xa0, 0xeb, 0xc0, 0x00, 0xed, 0x4c, - 0x92, 0x66, 0x52, 0x6c, 0x1a, 0x8e, 0xfa, 0xad, 0x81, 0x55, 0x8f, 0xc1, 0x3d, 0x03, 0xf4, 0xfd, - 0xd6, 0x00, 0x60, 0xdf, 0x00, 0xbd, 0xd8, 0x6b, 0x8e, 0x66, 0xe6, 0xd9, 0x29, 0x38, 0x58, 0xb3, - 0x14, 0xb9, 0x22, 0x90, 0xfb, 0x06, 0xe8, 0xc7, 0xb6, 0x8b, 0x34, 0x63, 0x36, 0x69, 0xb8, 0x6e, - 0x3a, 0xda, 0xd6, 0xd1, 0x3d, 0x03, 0x50, 0xfb, 0x06, 0x18, 0x3e, 0x30, 0x40, 0x38, 0x99, 0xa6, - 0x93, 0x73, 0x74, 0x72, 0x9e, 0xbd, 0x02, 0x87, 0x70, 0xe2, 0x60, 0x6e, 0x5e, 0x5e, 0x7b, 0x13, - 0xfd, 0xdc, 0xbe, 0x01, 0xce, 0x9a, 0xe8, 0xc9, 0xab, 0x74, 0x6a, 0x36, 0x13, 0x0a, 0x07, 0x89, - 0x50, 0x26, 0x14, 0x6e, 0x27, 0x3a, 0x32, 0xa1, 0x70, 0x07, 0xd1, 0x99, 0x09, 0x85, 0x3b, 0x89, - 0x70, 0x26, 0x14, 0xee, 0x22, 0xba, 0x33, 0xa1, 0x70, 0x2f, 0xd1, 0x97, 0x09, 0x85, 0xfb, 0x09, - 0x32, 0x13, 0x0a, 0x0f, 0x13, 0x54, 0x26, 0x14, 0x3e, 0x4b, 0x9c, 0xcb, 0x84, 0xc2, 0xa3, 0xc4, - 0xd9, 0x4c, 0x28, 0x1c, 0x27, 0xce, 0x67, 0x42, 0xe1, 0xf3, 0xc4, 0x78, 0x26, 0x14, 0x1e, 0x27, - 0x2e, 0x64, 0x42, 0xe1, 0x0b, 0xc4, 0xc5, 0xf1, 0x5f, 0x0d, 0xc0, 0x11, 0x8b, 0x3a, 0x6e, 0x2a, - 0x79, 0x5d, 0xd3, 0x05, 0xf1, 0x81, 0x3d, 0xe3, 0x31, 0xfb, 0x2c, 0xf8, 0x6c, 0xda, 0x00, 0x6f, - 0xda, 0xcb, 0x9f, 0x1a, 0x80, 0xf2, 0xf0, 0x7c, 0xec, 0x3c, 0x2d, 0x2a, 0x85, 0x2d, 0xa5, 0xba, - 0x63, 0xc7, 0xd4, 0xb3, 0xd4, 0x0d, 0xae, 0xa1, 0x59, 0xdd, 0x76, 0xed, 0x26, 0xbb, 0x81, 0xd3, - 0xcd, 0x68, 0x7c, 0xc9, 0x6e, 0xe8, 0xe5, 0xc8, 0xae, 0xd6, 0x98, 0xec, 0xb6, 0xbf, 0x22, 0xd9, - 0x6d, 0x4c, 0x73, 0xff, 0xe6, 0x58, 0x34, 0xf7, 0xc2, 0x69, 0xd1, 0xdc, 0x13, 0x12, 0xdc, 0xce, - 0x53, 0x26, 0xb8, 0xe1, 0x6f, 0x97, 0xe0, 0xf6, 0x9d, 0x80, 0xe0, 0xde, 0x6d, 0xc2, 0xdc, 0x60, - 0x53, 0xb2, 0xd9, 0x80, 0xb3, 0x89, 0x8d, 0x38, 0x5b, 0xd7, 0xc9, 0xe8, 0xe6, 0xf1, 0xd9, 0x5a, - 0x4f, 0x93, 0xe6, 0x06, 0x8f, 0xcd, 0xd6, 0x7a, 0x5f, 0x81, 0xad, 0x05, 0x5f, 0x82, 0xad, 0x9d, - 0x6b, 0xca, 0x2d, 0xeb, 0xd9, 0x9a, 0x08, 0xeb, 0xb8, 0x8e, 0x4d, 0x35, 0x4e, 0x4c, 0x95, 0x42, - 0x5c, 0xaf, 0x97, 0x2a, 0x35, 0xa3, 0x48, 0xe7, 0x9b, 0xb2, 0xcb, 0x97, 0xa3, 0x48, 0xe3, 0x4d, - 0xb1, 0x7c, 0x28, 0xd2, 0x8f, 0x60, 0x5f, 0x16, 0x6d, 0x0b, 0xa5, 0xbc, 0xce, 0xdb, 0x62, 0x54, - 0xd3, 0x6c, 0xae, 0x83, 0xeb, 0xb5, 0xcd, 0x37, 0x2c, 0x6b, 0xf2, 0x5d, 0x48, 0x56, 0x55, 0x2c, - 0x31, 0x2f, 0x68, 0x9a, 0xd5, 0xd7, 0x16, 0xcb, 0x9a, 0xf4, 0x1f, 0x92, 0x96, 0xf9, 0xb2, 0x69, - 0xed, 0x74, 0x70, 0x07, 0x47, 0x68, 0x35, 0xd7, 0x7d, 0xe9, 0xdb, 0xd0, 0x2b, 0xd3, 0xb7, 0xd7, - 0x61, 0xaf, 0xac, 0xf0, 0x0f, 0x16, 0xb5, 0x6a, 0x9f, 0xd9, 0xbc, 0xd8, 0xff, 0x81, 0x3b, 0xb9, - 0x6e, 0x59, 0x79, 0x6b, 0x51, 0xb3, 0x3b, 0x93, 0x7c, 0x1b, 0x76, 0xb9, 0x5d, 0x47, 0x8f, 0x3d, - 0x4e, 0x7a, 0x9f, 0x3e, 0x76, 0x7b, 0xae, 0x76, 0x72, 0xf0, 0x81, 0x03, 0x7b, 0x4d, 0x7b, 0x6e, - 0x00, 0xc5, 0xc5, 0xba, 0x18, 0x3a, 0xd9, 0x84, 0x75, 0xa5, 0xe8, 0x79, 0x38, 0x0a, 0x07, 0xed, - 0x17, 0x19, 0x5f, 0x56, 0xe4, 0x6d, 0x29, 0x57, 0x52, 0x05, 0xb3, 0x5b, 0xc9, 0x00, 0x73, 0x15, - 0x5e, 0xf4, 0xa1, 0x64, 0x04, 0x93, 0xa4, 0x53, 0x49, 0x93, 0x95, 0x5d, 0xc5, 0x74, 0x6c, 0x8e, - 0xbd, 0xd2, 0x88, 0x8b, 0x55, 0xe9, 0x55, 0xd0, 0xa2, 0x57, 0xa9, 0x39, 0x7a, 0xae, 0x29, 0x15, - 0xeb, 0xb4, 0x79, 0x5b, 0xc7, 0x02, 0xcd, 0xcc, 0xd1, 0x8b, 0xec, 0x6c, 0x73, 0x66, 0x65, 0x72, - 0x19, 0xb8, 0x6f, 0x80, 0x08, 0x66, 0x4a, 0xb3, 0x34, 0xc3, 0x34, 0x67, 0x55, 0x3d, 0xfb, 0x06, - 0xe8, 0xc6, 0xb6, 0x29, 0x9a, 0x49, 0xb3, 0x74, 0x63, 0x56, 0x55, 0xcf, 0x92, 0x5e, 0x40, 0xa9, - 0xce, 0xef, 0x1b, 0x20, 0x6e, 0x1a, 0xa7, 0x52, 0x74, 0x2a, 0xcd, 0x4e, 0xc2, 0xa8, 0x77, 0x30, - 0xbb, 0x4c, 0xa3, 0xfb, 0x06, 0x18, 0xc0, 0xb8, 0xb3, 0x74, 0x92, 0x61, 0x2f, 0x43, 0xd2, 0xd5, - 0x9d, 0x6e, 0xc3, 0x91, 0x7d, 0x03, 0x9c, 0xc1, 0x86, 0xf3, 0x74, 0x72, 0xc1, 0xa1, 0x69, 0x16, - 0x41, 0x8b, 0x10, 0x30, 0x13, 0x0a, 0x77, 0x13, 0x3d, 0x0e, 0x1d, 0xb3, 0x88, 0xd8, 0x00, 0x11, - 0xcd, 0x84, 0xc2, 0x67, 0x88, 0x91, 0x4c, 0x28, 0x3c, 0x46, 0xc4, 0xc7, 0xff, 0x35, 0x50, 0x25, - 0x62, 0x8e, 0xc8, 0xcb, 0xa1, 0x62, 0x5e, 0x10, 0x31, 0xad, 0xf9, 0xa1, 0xea, 0xa5, 0xd7, 0x3f, - 0xbe, 0xee, 0x27, 0x6d, 0x3f, 0x37, 0xc0, 0x45, 0x08, 0xab, 0x93, 0x03, 0x34, 0x53, 0x50, 0x01, - 0x11, 0xb0, 0x75, 0xd4, 0xff, 0x88, 0xc2, 0xb8, 0xaf, 0x8e, 0xea, 0x7e, 0x8f, 0xa7, 0xa1, 0x79, - 0x6a, 0xdf, 0x9c, 0xe6, 0xf9, 0xaa, 0x34, 0x70, 0xec, 0x5b, 0xa6, 0x81, 0x2d, 0x9d, 0xf3, 0x7b, - 0x28, 0x39, 0xde, 0x3d, 0x99, 0xe4, 0xd8, 0x58, 0x6c, 0x14, 0x4f, 0x53, 0x6c, 0x6c, 0xc9, 0x8c, - 0x2d, 0x99, 0xb1, 0x25, 0x33, 0x7e, 0xef, 0x65, 0xc6, 0x07, 0x1f, 0x5f, 0x6f, 0x7c, 0xca, 0xf9, - 0xdc, 0x00, 0x6f, 0x9d, 0xa6, 0xe8, 0xb8, 0xd2, 0x88, 0xe8, 0xd2, 0x3e, 0xa2, 0xe3, 0xee, 0x21, - 0xf0, 0xb7, 0x66, 0xd9, 0x06, 0x14, 0x78, 0xaa, 0x5e, 0x8d, 0xdc, 0x3d, 0x04, 0xbe, 0xb6, 0xec, - 0xed, 0xa6, 0x2a, 0xe5, 0x4c, 0x9d, 0x4a, 0xb9, 0x7b, 0x08, 0x9a, 0x38, 0xb0, 0x77, 0x9b, 0x33, - 0xed, 0xd9, 0x3d, 0x03, 0xf4, 0x79, 0xf4, 0xcb, 0xdd, 0x43, 0xd0, 0xcc, 0x83, 0x5d, 0x6e, 0x44, - 0xc4, 0xa7, 0xea, 0xe4, 0x4d, 0xf3, 0x45, 0xf9, 0xda, 0xb2, 0x99, 0xc6, 0x0c, 0x7d, 0xc6, 0x4f, - 0xf7, 0xdc, 0x3d, 0x04, 0x8d, 0x1c, 0xd8, 0x95, 0x86, 0xfc, 0xfd, 0x4a, 0x1d, 0xd9, 0xdf, 0x3d, - 0x04, 0x0d, 0x8c, 0x1d, 0x66, 0xe8, 0x96, 0x4c, 0xc3, 0x44, 0xe4, 0x65, 0x85, 0xd3, 0xf1, 0x7f, - 0xeb, 0x83, 0xe7, 0xfd, 0x05, 0xd2, 0x17, 0xd2, 0xca, 0x96, 0xba, 0xd8, 0x52, 0x17, 0x5b, 0xea, - 0x62, 0x4b, 0x5d, 0xfc, 0x03, 0x52, 0x17, 0xbf, 0x11, 0x05, 0xef, 0xda, 0xd6, 0xc7, 0xd7, 0x9b, - 0x1c, 0x52, 0x3d, 0x37, 0xc0, 0xd2, 0x0b, 0xb4, 0xb3, 0xf3, 0x3e, 0xe4, 0xa1, 0xc7, 0x23, 0x8f, - 0xb1, 0x37, 0x1b, 0x51, 0x86, 0x2b, 0xf5, 0xda, 0xd8, 0xc9, 0x18, 0x43, 0x8d, 0x68, 0xd6, 0x90, - 0x31, 0x1c, 0x63, 0x8b, 0xf7, 0x8a, 0x69, 0xaf, 0xb4, 0xc5, 0x7b, 0xb5, 0xb6, 0xc6, 0x5b, 0xfc, - 0xad, 0xc6, 0x5b, 0x3c, 0xed, 0xb7, 0x2f, 0x9f, 0x70, 0x7f, 0xf7, 0xea, 0x73, 0xc7, 0xd8, 0xdf, - 0x03, 0x44, 0xf0, 0x98, 0x8a, 0xdb, 0x18, 0x11, 0x1f, 0xff, 0xaf, 0x00, 0x24, 0xad, 0x91, 0x64, - 0x8e, 0x96, 0x35, 0x79, 0x5b, 0xc1, 0xdb, 0xf7, 0x9b, 0x10, 0x3a, 0x13, 0xc8, 0x2a, 0xb3, 0x8b, - 0xb0, 0x97, 0x3f, 0xfa, 0x72, 0x2f, 0x18, 0x79, 0x02, 0x3a, 0xc6, 0x43, 0x6a, 0xa0, 0x08, 0xcc, - 0x5f, 0xf0, 0x09, 0xe8, 0x9c, 0x6a, 0x9f, 0xa5, 0x19, 0x3a, 0x65, 0xfe, 0x6c, 0x7f, 0x02, 0x02, - 0x14, 0xe0, 0x22, 0x45, 0x7b, 0x1a, 0x69, 0xe4, 0x2a, 0xec, 0x2a, 0xaa, 0x52, 0x59, 0xd0, 0x11, - 0x06, 0x0a, 0xbc, 0x1c, 0x10, 0xb4, 0x7d, 0x4d, 0xa4, 0xb7, 0x21, 0xd4, 0x4a, 0x5b, 0x32, 0xd2, - 0x79, 0x29, 0xab, 0x51, 0x41, 0x7c, 0x16, 0x7a, 0xa9, 0xd1, 0x59, 0xe8, 0x06, 0xb6, 0x5c, 0xcb, - 0x5a, 0x75, 0x6a, 0x7d, 0x35, 0x11, 0xb8, 0x88, 0x56, 0xbd, 0x4f, 0xae, 0xc0, 0x8e, 0x72, 0x51, - 0xe4, 0xa5, 0x2c, 0x26, 0x27, 0x11, 0x36, 0x61, 0xda, 0x4e, 0xaa, 0x97, 0x93, 0x97, 0xde, 0x9f, - 0x28, 0x17, 0xc5, 0xe9, 0xc9, 0x89, 0x9f, 0x09, 0xd3, 0x8f, 0x66, 0xa7, 0xaf, 0xbe, 0xf7, 0x67, - 0x8b, 0x8f, 0x7f, 0xe1, 0xfc, 0xcd, 0x2c, 0x3c, 0x9e, 0xbc, 0xf8, 0x8b, 0xf7, 0x2f, 0x72, 0xed, - 0xe5, 0xa2, 0xb8, 0x96, 0x25, 0xcf, 0xc0, 0xb0, 0x09, 0x23, 0x0b, 0x05, 0x84, 0xb9, 0x49, 0x84, - 0xeb, 0x2c, 0x17, 0xc5, 0x3b, 0x42, 0x01, 0x8d, 0xff, 0xfb, 0x25, 0xd8, 0x6b, 0x2d, 0xbf, 0x1b, - 0x45, 0x24, 0xe2, 0xb7, 0xfb, 0x06, 0x0c, 0x96, 0x8b, 0x22, 0x3e, 0x37, 0x6e, 0xf2, 0x10, 0x9b, - 0xeb, 0xcb, 0x56, 0xd7, 0x1e, 0x15, 0xdb, 0x71, 0xa6, 0x1f, 0xf9, 0x73, 0x08, 0x25, 0x2b, 0x65, - 0xe0, 0x73, 0x15, 0x5b, 0xab, 0x9b, 0x4b, 0xbc, 0xa8, 0xb4, 0x39, 0xe1, 0x23, 0x2b, 0xb2, 0xe6, - 0x3c, 0x06, 0xab, 0x6d, 0x5c, 0x44, 0xaa, 0x5e, 0x26, 0x15, 0xd8, 0x5f, 0x45, 0x47, 0x4e, 0x10, - 0x4b, 0x59, 0xfd, 0xa3, 0x97, 0x0c, 0xb2, 0xe2, 0x17, 0xaa, 0x4f, 0xf2, 0xde, 0x24, 0xff, 0x14, - 0xf6, 0x3b, 0xc7, 0xe0, 0xce, 0xb1, 0x82, 0x25, 0x8c, 0xbc, 0x7e, 0xdc, 0x80, 0x7e, 0xcb, 0xa0, - 0x13, 0x91, 0x28, 0xd7, 0xdc, 0x25, 0x73, 0x30, 0x8c, 0x4f, 0xf1, 0x55, 0x94, 0xb5, 0x49, 0xe9, - 0x71, 0xb6, 0xa2, 0xd7, 0x9e, 0x3e, 0xee, 0x17, 0xf3, 0x4a, 0x29, 0x8b, 0x1d, 0x91, 0xac, 0x4b, - 0x42, 0x5e, 0xfb, 0xe8, 0x19, 0xe8, 0x0d, 0x83, 0x09, 0x30, 0x0b, 0xae, 0x75, 0x88, 0xf8, 0x18, - 0x62, 0x15, 0x70, 0x9d, 0x42, 0x45, 0x5b, 0x56, 0x51, 0x96, 0x7c, 0x03, 0x86, 0x05, 0x4d, 0x93, - 0x34, 0x1d, 0x65, 0x6d, 0xce, 0xea, 0x5f, 0xac, 0x16, 0xf9, 0xe4, 0x31, 0xf8, 0xc2, 0x00, 0x80, - 0x02, 0xab, 0x80, 0x73, 0x5c, 0xc8, 0xff, 0x05, 0xb0, 0x47, 0x92, 0x35, 0x1d, 0xa7, 0xa8, 0xfa, - 0x4e, 0x11, 0x51, 0x1d, 0x78, 0x94, 0xfe, 0x06, 0x7c, 0x6a, 0x80, 0x88, 0x9e, 0x4a, 0x3c, 0xcc, - 0x0b, 0x6a, 0x0e, 0x7d, 0x6d, 0x80, 0xb6, 0x27, 0xcf, 0xc0, 0x3f, 0x01, 0x98, 0x86, 0x47, 0x57, - 0xc9, 0xcb, 0x13, 0xe9, 0xf8, 0xc3, 0x78, 0x79, 0x79, 0xfd, 0x6d, 0x3a, 0xce, 0xcc, 0xdf, 0x62, - 0xe3, 0xdc, 0xd2, 0xed, 0xc9, 0x78, 0x01, 0x65, 0xa5, 0x52, 0x21, 0xee, 0xca, 0x4c, 0x61, 0x0a, - 0x42, 0x3d, 0x95, 0x48, 0xda, 0x6e, 0x97, 0x26, 0x16, 0x1d, 0xb7, 0x54, 0xb2, 0xea, 0x76, 0x5f, - 0xca, 0xdd, 0xf7, 0x38, 0x5d, 0x85, 0xb0, 0x30, 0x97, 0x48, 0xdb, 0x4e, 0x57, 0x26, 0x98, 0x79, - 0xc7, 0x6b, 0x3e, 0x5d, 0xf5, 0x2a, 0x23, 0x75, 0xa7, 0xce, 0xd5, 0x9c, 0x62, 0x21, 0x35, 0x40, - 0xdd, 0xe0, 0xba, 0xab, 0x0f, 0x87, 0xa7, 0xc5, 0x3c, 0xec, 0xc6, 0x95, 0x0e, 0x7c, 0x11, 0xa9, - 0xbc, 0xf0, 0x08, 0x13, 0x9a, 0x1e, 0x96, 0xfc, 0xd4, 0x00, 0x60, 0xb6, 0x5a, 0x40, 0x11, 0x9a, - 0x0a, 0x50, 0x83, 0xab, 0x01, 0x0e, 0x62, 0xcb, 0x75, 0xa4, 0x2e, 0x3d, 0x22, 0xe7, 0x60, 0x97, - 0xae, 0xe8, 0xe6, 0x0a, 0x8d, 0xeb, 0x24, 0x46, 0x1b, 0xb8, 0xbd, 0x61, 0xba, 0x61, 0x43, 0x4b, - 0x45, 0xbf, 0x0e, 0xfb, 0x64, 0x85, 0x37, 0x97, 0x74, 0xa4, 0xda, 0xae, 0x67, 0x9b, 0xf2, 0xc6, - 0x1e, 0x59, 0x79, 0x07, 0x5b, 0x5b, 0xfe, 0xeb, 0xf0, 0x8c, 0x39, 0xb0, 0x90, 0xaa, 0x0a, 0xbc, - 0xa6, 0x6c, 0xeb, 0x15, 0x41, 0x45, 0x7c, 0x19, 0xa9, 0x9a, 0xa4, 0xc8, 0x76, 0x21, 0x67, 0xd4, - 0xee, 0x56, 0xa7, 0x19, 0xf8, 0xa9, 0x87, 0xab, 0x6e, 0x1b, 0xb6, 0xd7, 0xa6, 0xe5, 0x44, 0xde, - 0x81, 0x94, 0x52, 0x44, 0xaa, 0xa0, 0x4b, 0x72, 0x8e, 0xd7, 0x76, 0x34, 0x1d, 0x15, 0x1c, 0xc0, - 0x48, 0x13, 0xc0, 0x21, 0xc7, 0x6b, 0x03, 0x3b, 0x55, 0xf1, 0x52, 0x10, 0x9a, 0xc3, 0x5c, 0x45, - 0x39, 0x13, 0xa1, 0xdb, 0x42, 0xc0, 0xae, 0xcf, 0x40, 0xb7, 0x7b, 0xc8, 0x72, 0x11, 0xa1, 0xa2, - 0x71, 0xd8, 0x8c, 0x4c, 0xc1, 0x48, 0x56, 0xd2, 0x1e, 0xf0, 0x9a, 0xf4, 0x08, 0x61, 0x62, 0xde, - 0xc3, 0x0e, 0xed, 0xd9, 0x21, 0xff, 0xf2, 0x19, 0xe8, 0xc7, 0xeb, 0xf3, 0x54, 0x90, 0xfa, 0x80, - 0xe0, 0xc2, 0xa6, 0xe1, 0x86, 0xf4, 0x08, 0x91, 0x97, 0x61, 0xa7, 0xa6, 0xdd, 0xe7, 0x1f, 0xa0, - 0x1d, 0x4c, 0x66, 0x23, 0x6c, 0xef, 0xd7, 0x06, 0x08, 0x62, 0x53, 0x35, 0x48, 0x7d, 0x70, 0x83, - 0xeb, 0xd0, 0xb4, 0xfb, 0x6f, 0xa1, 0x1d, 0x72, 0x02, 0x76, 0x0a, 0xd9, 0xac, 0x39, 0xf3, 0xa9, - 0x7e, 0xcb, 0xd0, 0xc4, 0x76, 0x0c, 0x03, 0x5c, 0xf5, 0x36, 0x79, 0x0b, 0x76, 0x89, 0x8a, 0xa2, - 0x66, 0x25, 0x59, 0x30, 0x49, 0xb8, 0x25, 0x64, 0x8e, 0xd5, 0x74, 0x0d, 0x5e, 0x02, 0x96, 0x8f, - 0xcc, 0xac, 0x42, 0x4c, 0xce, 0xed, 0x49, 0xde, 0x81, 0xc3, 0x79, 0x25, 0xa7, 0xf1, 0x9a, 0xae, - 0x22, 0xa1, 0x60, 0xbe, 0xda, 0xac, 0xa4, 0x09, 0x5b, 0x79, 0x94, 0x6d, 0x2a, 0x67, 0x07, 0xb9, - 0x41, 0xd3, 0x6d, 0xa3, 0xea, 0x75, 0xd3, 0x76, 0x22, 0x7f, 0x02, 0xbb, 0xf3, 0x4a, 0x8e, 0x57, - 0x91, 0x88, 0xa4, 0x32, 0x52, 0x6d, 0xa1, 0xeb, 0x38, 0x0b, 0x48, 0xdf, 0xd3, 0xc7, 0x1e, 0xd7, - 0xd5, 0x20, 0xd7, 0x95, 0x57, 0x72, 0x9c, 0xfd, 0x93, 0x5c, 0x86, 0x01, 0xad, 0x62, 0xd3, 0x43, - 0xff, 0x93, 0xe3, 0xcd, 0x9a, 0x91, 0x53, 0xa3, 0x37, 0x05, 0xb4, 0x0a, 0xc9, 0xc2, 0x80, 0xa2, - 0x51, 0xc3, 0x18, 0x64, 0xc2, 0xbf, 0x51, 0xde, 0xd1, 0x52, 0x8b, 0xa1, 0x68, 0xe4, 0xaf, 0x00, - 0x0c, 0xe9, 0x42, 0x4e, 0xa3, 0x62, 0x78, 0x9f, 0xbd, 0xf6, 0xe2, 0x65, 0xd8, 0xbb, 0xc3, 0x25, - 0xee, 0x09, 0x39, 0x6d, 0x45, 0xd6, 0xd5, 0x1d, 0x76, 0xbe, 0xda, 0xbf, 0x91, 0x0f, 0xad, 0x0d, - 0x9f, 0xfa, 0x25, 0xee, 0xed, 0x0f, 0x41, 0x80, 0x98, 0xc0, 0x1b, 0xf3, 0x87, 0xe6, 0xc6, 0xac, - 0x06, 0xa9, 0xff, 0x03, 0x07, 0xbf, 0xfb, 0x4d, 0xb0, 0xe3, 0xd7, 0xcf, 0x40, 0x20, 0xdc, 0xc6, - 0xe1, 0xf8, 0xe4, 0x43, 0xd8, 0x8f, 0x69, 0xb3, 0xa0, 0x0a, 0x05, 0x67, 0x5d, 0xa0, 0x70, 0xa3, - 0x26, 0xfd, 0x86, 0x02, 0x26, 0xf0, 0xda, 0x7d, 0x93, 0x3e, 0x63, 0x17, 0xbc, 0x40, 0xb0, 0xe3, - 0xf6, 0xac, 0x31, 0xc3, 0x75, 0x3f, 0x01, 0x91, 0xa9, 0x4e, 0x93, 0x07, 0x24, 0x3d, 0x5c, 0xa3, - 0xb7, 0x2c, 0x15, 0x5d, 0x3e, 0xe4, 0x1f, 0xc3, 0xd1, 0x92, 0x86, 0x54, 0xbe, 0xa0, 0x64, 0xa5, - 0x6d, 0x49, 0xc4, 0x27, 0xcb, 0xbc, 0xf3, 0x75, 0x8f, 0x2d, 0x2d, 0x8f, 0x24, 0xac, 0xef, 0x7f, - 0x12, 0xd5, 0xef, 0x7f, 0x12, 0xf7, 0xaa, 0x16, 0x6c, 0xc8, 0x8c, 0xc8, 0x9d, 0x31, 0x41, 0x6e, - 0xbb, 0x30, 0x1c, 0x03, 0xf2, 0x0d, 0x9b, 0xf7, 0xe9, 0x0a, 0x6f, 0xfd, 0xbf, 0x24, 0xcb, 0x28, - 0x5f, 0xd5, 0x72, 0x23, 0xae, 0x3d, 0x81, 0x23, 0x4d, 0x83, 0x7b, 0x8a, 0x49, 0xd1, 0xee, 0x61, - 0xab, 0xb5, 0x22, 0xf9, 0x13, 0x48, 0x55, 0xeb, 0x16, 0xb6, 0xf2, 0x8a, 0xf8, 0x00, 0x65, 0x79, - 0x0d, 0xa9, 0x65, 0x49, 0x44, 0x1a, 0x15, 0x6f, 0xb2, 0xd5, 0x74, 0xec, 0x59, 0xfb, 0x4c, 0x88, - 0x1b, 0xb2, 0xfd, 0x59, 0xcb, 0x7d, 0xc3, 0xf6, 0x26, 0x6f, 0x42, 0x12, 0x23, 0x9a, 0xa9, 0xf9, - 0x11, 0xe6, 0x74, 0xf3, 0xb4, 0x0f, 0x7b, 0x2c, 0xe5, 0xf3, 0x0e, 0xca, 0xbb, 0x90, 0xa8, 0x6b, - 0xd7, 0x6b, 0x18, 0x83, 0xae, 0xc1, 0xc0, 0x1f, 0x45, 0x25, 0x6a, 0x5a, 0xe1, 0x3a, 0x3f, 0xe8, - 0xdb, 0xaa, 0x69, 0xe0, 0x3d, 0x38, 0x9c, 0x95, 0x54, 0x24, 0xea, 0xd5, 0x0c, 0xed, 0x68, 0x46, - 0x5f, 0x78, 0x61, 0x45, 0x78, 0x3b, 0x37, 0x68, 0x39, 0xdb, 0xa9, 0x9a, 0x33, 0xaf, 0x65, 0x38, - 0x54, 0x83, 0x8a, 0x64, 0x0b, 0xf4, 0xa2, 0x6f, 0xb3, 0xad, 0x59, 0x70, 0xd3, 0x8d, 0x65, 0xd5, - 0x21, 0x1c, 0x4d, 0xa8, 0x7d, 0x2b, 0x60, 0xd4, 0x13, 0x70, 0xc5, 0x42, 0x25, 0xf3, 0x30, 0x5a, - 0xe5, 0xc6, 0xd5, 0x44, 0xb3, 0x2c, 0xe9, 0x3b, 0xd4, 0x7c, 0x13, 0xb9, 0x61, 0xdd, 0x72, 0x68, - 0x1e, 0x6e, 0xa0, 0xe8, 0xb1, 0xc2, 0xa8, 0xe4, 0x0e, 0x1c, 0x51, 0xb6, 0xb7, 0xf3, 0x92, 0x8c, - 0x78, 0xad, 0xa4, 0x96, 0xa5, 0xb2, 0xb0, 0x25, 0xe5, 0x25, 0x7d, 0xc7, 0x52, 0xbb, 0x2f, 0xe3, - 0x98, 0x8c, 0xff, 0x72, 0x61, 0xb9, 0x6d, 0xb8, 0xbd, 0x7c, 0xb4, 0x6e, 0x4a, 0x69, 0x60, 0x47, - 0xae, 0xc2, 0xa8, 0xdd, 0x3f, 0xbc, 0x24, 0xeb, 0x48, 0x35, 0x49, 0x7c, 0x59, 0x2a, 0x52, 0x53, - 0x4d, 0x8f, 0x19, 0x48, 0xdb, 0x67, 0xcd, 0x76, 0xd9, 0x94, 0x8a, 0xe4, 0x9b, 0x70, 0xc0, 0xea, - 0x13, 0x2f, 0xd0, 0x95, 0xe6, 0xe7, 0x15, 0x96, 0x8b, 0x1b, 0xe7, 0xc7, 0x70, 0xa8, 0xca, 0x6d, - 0x05, 0x1d, 0x55, 0x84, 0x1d, 0xde, 0x9e, 0x0a, 0x54, 0xa2, 0x69, 0x25, 0x4c, 0xd4, 0xf2, 0xba, - 0x65, 0x39, 0xdd, 0xb4, 0x7c, 0x48, 0x0e, 0xf6, 0xd8, 0x68, 0xb2, 0xa0, 0x9b, 0x6c, 0x79, 0xa6, - 0xc9, 0x78, 0x59, 0x7a, 0x67, 0xe3, 0xce, 0xd2, 0x3d, 0x1b, 0xe1, 0x88, 0xdf, 0xaf, 0x76, 0x72, - 0x5d, 0x16, 0xc8, 0x1d, 0x41, 0xbf, 0x55, 0x21, 0xff, 0x1c, 0xc6, 0x6c, 0xcc, 0xb2, 0xa4, 0xea, - 0x25, 0x21, 0xcf, 0x57, 0xc7, 0x8a, 0xdd, 0x62, 0x6a, 0x16, 0x07, 0x59, 0x68, 0x98, 0x3d, 0x58, - 0x6e, 0xf6, 0x80, 0xf1, 0x8b, 0x37, 0x6a, 0x05, 0xf0, 0x35, 0x24, 0x27, 0x21, 0xa1, 0x95, 0x72, - 0x39, 0x64, 0xd2, 0x50, 0x5e, 0xc0, 0x82, 0x06, 0xc5, 0xe0, 0xc4, 0xa6, 0xcf, 0xb9, 0xbe, 0x84, - 0x2f, 0x93, 0x57, 0x60, 0x3f, 0x52, 0x55, 0x45, 0xe5, 0xb3, 0x48, 0x13, 0x55, 0x09, 0xab, 0x09, - 0x54, 0x12, 0xdb, 0x12, 0xf8, 0xc6, 0xcd, 0xa3, 0xeb, 0x66, 0x0f, 0x6e, 0xcf, 0x3d, 0x14, 0x79, - 0x0d, 0x89, 0x25, 0xd5, 0x1c, 0x7e, 0x96, 0x1e, 0x94, 0x6e, 0xf2, 0xda, 0xc3, 0x5c, 0xbf, 0xe9, - 0xb2, 0x61, 0x7b, 0x58, 0x7a, 0xcf, 0xcf, 0xe1, 0xa0, 0x58, 0xd2, 0x74, 0xa5, 0x50, 0x8b, 0x34, - 0x87, 0x91, 0x5e, 0xf3, 0x17, 0xeb, 0xdc, 0x10, 0xf8, 0x2d, 0x84, 0xb9, 0x01, 0x0b, 0xc6, 0x8b, - 0xfe, 0x23, 0xd8, 0x85, 0x97, 0x64, 0xdc, 0x7c, 0x8d, 0x5a, 0xc0, 0x1b, 0x4e, 0xac, 0xa1, 0x00, - 0xb8, 0x62, 0x9a, 0x71, 0x50, 0xab, 0xfe, 0x69, 0x66, 0xab, 0x84, 0xfd, 0x15, 0xa5, 0xb9, 0x6d, - 0x68, 0xba, 0xa0, 0x23, 0x6a, 0x31, 0x0e, 0x26, 0x7a, 0x93, 0x53, 0xbe, 0x28, 0xd6, 0x4c, 0xde, - 0x74, 0x5c, 0x36, 0x4c, 0x0f, 0xae, 0xaf, 0xec, 0xbd, 0x40, 0x2e, 0x43, 0x68, 0x3f, 0x75, 0x56, - 0xd6, 0xa8, 0xab, 0xf8, 0x51, 0xfd, 0x9b, 0xb5, 0x8c, 0xcd, 0x6e, 0xde, 0xd9, 0xb0, 0x19, 0x51, - 0xc4, 0xf2, 0xbb, 0x29, 0x6b, 0xe4, 0x7b, 0x30, 0xa2, 0x6f, 0xdb, 0x5b, 0x2a, 0xf5, 0xdf, 0x9d, - 0xc7, 0x66, 0x2f, 0xa3, 0x4f, 0x1f, 0x47, 0x31, 0xf9, 0x30, 0x79, 0xbc, 0xe5, 0x8f, 0x74, 0xa4, - 0x6a, 0x78, 0x9f, 0x0b, 0xeb, 0xdb, 0xd6, 0xee, 0x49, 0xbe, 0x0f, 0x7b, 0xf0, 0x27, 0xa2, 0xd6, - 0x0c, 0x15, 0xf2, 0xd4, 0x17, 0xc7, 0x0f, 0x11, 0x7d, 0xfa, 0xd8, 0xeb, 0x8c, 0xb1, 0xbb, 0xcd, - 0x4b, 0x6b, 0xf6, 0x15, 0xf2, 0x3d, 0xd8, 0x67, 0x25, 0x61, 0xb8, 0x87, 0x24, 0x79, 0x5b, 0xa1, - 0xbe, 0xec, 0x6c, 0x22, 0x7d, 0xfa, 0x64, 0x8b, 0x6e, 0xa9, 0x83, 0xeb, 0xc1, 0x68, 0xd5, 0x4b, - 0xe4, 0x3b, 0x70, 0xa0, 0x66, 0x17, 0xc0, 0x21, 0xfe, 0xa7, 0xb3, 0xc9, 0xb8, 0xf2, 0xec, 0x01, - 0x26, 0x0a, 0xd7, 0x9f, 0xad, 0xbd, 0x34, 0xb2, 0x00, 0x23, 0x0e, 0x2b, 0x22, 0x09, 0x18, 0x34, - 0xb9, 0x32, 0xae, 0x1c, 0xe7, 0xcc, 0x3f, 0xc9, 0x28, 0x6c, 0x2f, 0x0b, 0xf9, 0x12, 0xb2, 0xbe, - 0x2a, 0xe5, 0xac, 0x1f, 0xd7, 0x02, 0x8b, 0xe0, 0xda, 0x5f, 0x83, 0xe7, 0x06, 0xf8, 0x2b, 0x00, - 0xa7, 0xe0, 0x00, 0x56, 0xf4, 0xcc, 0x56, 0xc7, 0x37, 0x50, 0xde, 0x92, 0x19, 0xc9, 0x01, 0x86, - 0xa1, 0x99, 0x24, 0xcd, 0xd0, 0xcc, 0x2c, 0x9d, 0x4e, 0xd3, 0x73, 0x0c, 0x9d, 0x66, 0xe0, 0x25, - 0x18, 0xb5, 0xd4, 0x3f, 0x25, 0x8b, 0xe2, 0xeb, 0x4e, 0x57, 0x91, 0x3d, 0xf3, 0x34, 0x93, 0xa2, - 0x99, 0x39, 0x9a, 0x59, 0xa0, 0x99, 0x45, 0x98, 0x86, 0x43, 0x8e, 0x0c, 0xe8, 0xad, 0xa1, 0x1b, - 0x61, 0xac, 0x1a, 0xb9, 0x14, 0x9d, 0x9a, 0xa5, 0x53, 0x0c, 0x9d, 0x9c, 0xa7, 0x53, 0x69, 0x3a, - 0x75, 0x95, 0x9e, 0x5b, 0x60, 0xe3, 0x30, 0xe2, 0x7c, 0xdc, 0xeb, 0x7c, 0xb5, 0x00, 0x0f, 0x0c, - 0x10, 0x4c, 0xd2, 0x29, 0xb3, 0xc7, 0xd8, 0x31, 0x08, 0xb3, 0xa8, 0x98, 0x57, 0x76, 0x0a, 0x48, - 0xd6, 0x71, 0x49, 0x58, 0xc8, 0x3e, 0xd3, 0x03, 0xe9, 0x7f, 0x78, 0x06, 0x00, 0x3b, 0x01, 0xbb, - 0xdd, 0x89, 0x17, 0x49, 0xed, 0x19, 0xe0, 0xac, 0xfd, 0xa9, 0xc1, 0xc8, 0x81, 0x01, 0xc2, 0x4c, - 0x9a, 0x4e, 0x2e, 0xd0, 0xc9, 0x45, 0x76, 0x12, 0x46, 0x31, 0x7b, 0xaf, 0x72, 0xe6, 0x26, 0x05, - 0x69, 0x34, 0x1c, 0xae, 0x65, 0x1c, 0x6e, 0xeb, 0xe9, 0x7d, 0x03, 0x8c, 0x99, 0xd6, 0xe9, 0x39, - 0x3a, 0xb5, 0xc8, 0x32, 0x70, 0xb0, 0xa6, 0xa3, 0x6d, 0x5b, 0xb3, 0x2d, 0x17, 0xec, 0xb6, 0x8c, - 0x9b, 0x6d, 0x49, 0xcd, 0xd1, 0x73, 0x69, 0x3a, 0x35, 0xcf, 0x4e, 0xc0, 0x01, 0xf7, 0xbe, 0xe3, - 0x06, 0x9f, 0xda, 0x37, 0xc0, 0x24, 0x06, 0x4f, 0xd2, 0xe9, 0x14, 0xfb, 0x3e, 0x1c, 0xac, 0xd9, - 0x60, 0x6c, 0xdb, 0x95, 0x3d, 0x03, 0x24, 0xf6, 0x0d, 0x40, 0x9b, 0xc0, 0xe9, 0x79, 0x3a, 0xbd, - 0x40, 0xa7, 0x17, 0x7f, 0xfd, 0x0c, 0x4c, 0x8f, 0x5c, 0x31, 0x07, 0xaa, 0x9e, 0xab, 0x58, 0x03, - 0x55, 0x2b, 0x22, 0x11, 0x0f, 0xdd, 0xa3, 0x79, 0x96, 0x30, 0x47, 0xb1, 0x35, 0x6d, 0xd9, 0x29, - 0x38, 0xe8, 0x5d, 0xf7, 0xdc, 0x6d, 0x49, 0xef, 0x1b, 0x20, 0x65, 0xb6, 0x65, 0x2e, 0x49, 0xcf, - 0xa5, 0x32, 0xa1, 0x30, 0x24, 0xba, 0x9c, 0xa3, 0xbd, 0x11, 0x62, 0xd4, 0x39, 0xec, 0xb3, 0x4a, - 0xee, 0xc6, 0x88, 0xb8, 0xf3, 0x1d, 0xc4, 0x25, 0xe2, 0x35, 0xe7, 0x6b, 0x88, 0x09, 0x62, 0x32, - 0x13, 0x0a, 0x4f, 0x12, 0x53, 0x99, 0x50, 0x98, 0x26, 0xa6, 0x33, 0xa1, 0x70, 0x8a, 0x48, 0x8f, - 0x7f, 0x3d, 0x0c, 0x7b, 0x97, 0x55, 0x24, 0xe8, 0xc8, 0x91, 0xb3, 0x16, 0x5e, 0x5e, 0xce, 0xb2, - 0x84, 0xac, 0xcd, 0x53, 0x13, 0xb2, 0xbc, 0x12, 0x96, 0xf4, 0xcd, 0x48, 0x58, 0x7e, 0xe2, 0xd5, - 0x83, 0x6f, 0x48, 0xbc, 0xf2, 0x95, 0xad, 0xde, 0x3e, 0x91, 0x6c, 0x15, 0xf5, 0x93, 0xad, 0xdc, - 0x22, 0xd5, 0x05, 0x5f, 0x91, 0xa9, 0x46, 0x9c, 0x19, 0xad, 0x93, 0x05, 0x5c, 0xe9, 0xff, 0xb9, - 0x7a, 0xa1, 0xc1, 0x2d, 0x29, 0x0c, 0xd7, 0xa8, 0x03, 0x8e, 0x1a, 0x40, 0xd5, 0xa8, 0x01, 0x47, - 0xd9, 0xff, 0xd2, 0x49, 0xb2, 0xff, 0x53, 0xc9, 0xfb, 0x03, 0xbf, 0x87, 0xbc, 0x3f, 0xe0, 0xcd, - 0xfb, 0x7f, 0x74, 0xb2, 0xbc, 0x3f, 0xe4, 0xe4, 0xfc, 0xd7, 0x4f, 0x94, 0xf3, 0x87, 0x9c, 0x7c, - 0xff, 0xce, 0xcb, 0xa6, 0xfb, 0xde, 0x15, 0xe0, 0x28, 0xdd, 0xb7, 0xd3, 0xf6, 0x71, 0x3f, 0x25, - 0x6f, 0x35, 0xe8, 0x51, 0xed, 0xce, 0xfb, 0xa8, 0x76, 0xa6, 0xc9, 0xc9, 0x15, 0xba, 0x60, 0xbd, - 0x42, 0x77, 0xa2, 0x14, 0xf9, 0xfb, 0x9c, 0x1a, 0xdf, 0x39, 0x51, 0x6a, 0xdc, 0x38, 0x29, 0xce, - 0x9e, 0x66, 0x52, 0xdc, 0x30, 0x15, 0xde, 0x3a, 0xc5, 0x54, 0xb8, 0x51, 0x02, 0xac, 0x7c, 0x23, - 0x09, 0x70, 0x2b, 0xed, 0xfd, 0x41, 0xa5, 0xbd, 0xdf, 0x8f, 0xf4, 0xf4, 0x34, 0xd2, 0xc0, 0x93, - 0xe7, 0x23, 0xfd, 0x1f, 0x5f, 0xaf, 0x39, 0xd0, 0x64, 0x47, 0xdc, 0x19, 0x41, 0xcf, 0xee, 0x21, - 0x38, 0xfa, 0xc9, 0x9e, 0xf5, 0xe4, 0x02, 0xbd, 0xbb, 0x87, 0xc0, 0xf5, 0x9b, 0x9d, 0x6d, 0x40, - 0xef, 0xa9, 0xdd, 0x43, 0xe0, 0x7b, 0x87, 0x8d, 0xd7, 0xa4, 0x0e, 0xc4, 0xee, 0x21, 0xf0, 0x5c, - 0x61, 0xe7, 0x1b, 0xe7, 0x01, 0xa3, 0xbb, 0x87, 0xa0, 0xd1, 0x4d, 0x36, 0xd9, 0x28, 0x23, 0x38, - 0xb3, 0x7b, 0x08, 0xfc, 0x6f, 0xb1, 0x09, 0xff, 0x94, 0x60, 0x78, 0xf7, 0x10, 0xf8, 0xdd, 0x30, - 0x63, 0xf8, 0x27, 0x06, 0x38, 0x86, 0xef, 0x2d, 0xd3, 0xc7, 0x9f, 0xec, 0x63, 0x1f, 0xdf, 0x5b, - 0x35, 0xa4, 0xdf, 0xaa, 0xf3, 0xb3, 0xea, 0x00, 0x2c, 0xd2, 0x7f, 0x8e, 0x88, 0xd5, 0x50, 0x7f, - 0x8b, 0xf4, 0x5b, 0x09, 0x80, 0x3f, 0xf5, 0xff, 0xa8, 0x1f, 0xf6, 0xd9, 0x35, 0x7e, 0x0e, 0xf7, - 0x17, 0x7d, 0x28, 0xfc, 0xeb, 0x2f, 0x4d, 0xe1, 0x5d, 0x95, 0x83, 0x7e, 0x47, 0xd2, 0xe5, 0xc6, - 0x7c, 0x9e, 0x3d, 0x21, 0x9f, 0xf7, 0x8b, 0x58, 0x47, 0xee, 0x1f, 0x36, 0x26, 0xf7, 0xcb, 0x27, - 0x25, 0xf7, 0x7e, 0x81, 0x7f, 0x6f, 0x4c, 0xbf, 0xc5, 0xb7, 0x31, 0xdf, 0x6e, 0xd1, 0xd3, 0x16, - 0x3d, 0x6d, 0xd1, 0xd3, 0xef, 0x1c, 0x3d, 0x3d, 0x0d, 0x5a, 0x73, 0x6d, 0x17, 0xd4, 0xd1, 0x93, - 0xe7, 0x06, 0x28, 0xc0, 0x31, 0x7f, 0xf5, 0x34, 0xcc, 0xcc, 0xd2, 0x69, 0x86, 0x66, 0x18, 0x18, - 0x6f, 0x20, 0x99, 0x86, 0xb1, 0x54, 0x4a, 0x27, 0xe7, 0xe1, 0x44, 0x43, 0xb5, 0xb4, 0x97, 0xb9, - 0x4a, 0xa7, 0x98, 0x23, 0x85, 0x74, 0xd2, 0xcd, 0x87, 0xce, 0xd6, 0x28, 0xa4, 0x2d, 0x7a, 0xd4, - 0x90, 0x1e, 0x39, 0x45, 0x8c, 0x56, 0xe1, 0x62, 0x0f, 0xd1, 0x9b, 0x09, 0x85, 0xfb, 0x08, 0xe2, - 0x04, 0x74, 0xa6, 0x86, 0xc8, 0x8c, 0xff, 0xe3, 0x39, 0xd8, 0x75, 0x0b, 0xe9, 0x2d, 0xd1, 0xf2, - 0x07, 0x22, 0x5a, 0x26, 0x8f, 0x57, 0x59, 0xe7, 0x29, 0xa7, 0x7b, 0x75, 0xa1, 0xf3, 0xda, 0x0b, - 0x6b, 0xbe, 0x1a, 0x57, 0x77, 0x2d, 0xbe, 0xa8, 0xba, 0xab, 0x61, 0x1d, 0x57, 0x4b, 0x5e, 0x7d, - 0x25, 0xba, 0xf7, 0x3a, 0xc4, 0x47, 0xb3, 0xf6, 0x31, 0xec, 0x10, 0x3e, 0x86, 0x3d, 0xe7, 0xf7, - 0xac, 0xd5, 0x8f, 0x39, 0x10, 0x87, 0x17, 0x68, 0xeb, 0xcc, 0xf5, 0xde, 0x69, 0x94, 0x20, 0xd5, - 0x95, 0x17, 0xfd, 0xf4, 0x15, 0xcb, 0x8b, 0x9a, 0x15, 0x16, 0xbd, 0xe5, 0x51, 0x73, 0x17, 0x8e, - 0x51, 0xbc, 0x75, 0xb4, 0x2e, 0xb6, 0xa4, 0xdc, 0x16, 0x57, 0x6e, 0x71, 0xe5, 0x96, 0x94, 0xdb, - 0xaa, 0x60, 0x6a, 0x55, 0x30, 0x7d, 0x87, 0x2b, 0x98, 0xfe, 0xc0, 0x4a, 0x80, 0xa2, 0x75, 0x39, - 0xed, 0x17, 0xd7, 0x41, 0x4b, 0x75, 0xff, 0x8e, 0xab, 0xee, 0xc7, 0x4c, 0x4d, 0xdd, 0x1a, 0x3b, - 0xfb, 0x77, 0x60, 0xff, 0xb3, 0x58, 0xdb, 0x27, 0x9f, 0xc5, 0xda, 0xbe, 0xfa, 0x2c, 0x06, 0x3e, - 0x38, 0x88, 0x81, 0x7f, 0x3e, 0x88, 0x81, 0xdf, 0x1e, 0xc4, 0xc0, 0xfe, 0x41, 0x0c, 0x7c, 0x72, - 0x10, 0x03, 0xbf, 0x3b, 0x88, 0x81, 0x2f, 0x0e, 0x62, 0x6d, 0x5f, 0x1d, 0xc4, 0xc0, 0xdf, 0x7e, - 0x1e, 0x6b, 0xdb, 0xfb, 0x3c, 0x06, 0xf6, 0x3f, 0x8f, 0xb5, 0x7d, 0xf2, 0x79, 0xac, 0xed, 0xa7, - 0x9b, 0x39, 0xa5, 0xf8, 0x20, 0x97, 0xa8, 0xa6, 0x20, 0x89, 0x92, 0x36, 0xe3, 0x94, 0xec, 0x4d, - 0x17, 0x55, 0xa5, 0x2c, 0x65, 0x91, 0x3a, 0x5d, 0xbd, 0x3d, 0x53, 0xdc, 0xca, 0x29, 0x33, 0xe8, - 0xa1, 0x5e, 0xfd, 0x37, 0x23, 0x1a, 0xfd, 0x23, 0x1a, 0x5b, 0x1d, 0x98, 0x81, 0xa6, 0xfe, 0x3f, - 0x00, 0x00, 0xff, 0xff, 0x99, 0xfb, 0x35, 0xed, 0x6f, 0x63, 0x00, 0x00, + // 5122 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5d, 0x4d, 0x6c, 0xdb, 0x58, + 0x7e, 0xf7, 0x93, 0x64, 0x5b, 0x7a, 0xfe, 0xa2, 0x69, 0xd9, 0x66, 0xec, 0x44, 0x51, 0x9c, 0x4c, + 0x62, 0x3b, 0xb4, 0x6c, 0x7d, 0xd9, 0x4e, 0x3a, 0x93, 0x4d, 0xe8, 0x78, 0x62, 0x6b, 0x36, 0x89, + 0x41, 0x27, 0x9e, 0x9d, 0xdd, 0x9d, 0x61, 0x69, 0xea, 0x59, 0x61, 0x2d, 0x91, 0x2a, 0x49, 0x49, + 0x71, 0xba, 0xe9, 0x0e, 0xbc, 0xc0, 0xa2, 0x58, 0x14, 0x68, 0x37, 0xe8, 0x16, 0xe8, 0x9c, 0x7a, + 0x2a, 0x8a, 0xa0, 0x87, 0x1e, 0x7a, 0x5a, 0xe6, 0x60, 0x04, 0x58, 0x60, 0x31, 0x27, 0x1f, 0x07, + 0x83, 0x02, 0xdd, 0xf1, 0xa0, 0xe8, 0x6c, 0x7b, 0x99, 0xe3, 0xc0, 0x97, 0x16, 0x7c, 0xa4, 0x68, + 0x51, 0xa2, 0x18, 0x47, 0x71, 0xe6, 0xab, 0xba, 0xcc, 0x58, 0xe4, 0xff, 0xff, 0x7b, 0x8f, 0x7c, + 0x5f, 0xbf, 0xdf, 0xef, 0x3d, 0x22, 0x90, 0x2e, 0x23, 0x35, 0x26, 0xca, 0xb3, 0xaa, 0xf0, 0x00, + 0x15, 0xf8, 0xd9, 0xb2, 0x88, 0x2a, 0xea, 0x2c, 0x5f, 0x51, 0xb9, 0x72, 0x51, 0xe0, 0x54, 0x51, + 0x43, 0xb3, 0xda, 0x4e, 0x11, 0xa9, 0xb1, 0xa2, 0x22, 0x6b, 0x32, 0x19, 0x35, 0xa3, 0x63, 0x66, + 0x74, 0x0c, 0x47, 0xc7, 0x6a, 0xa3, 0xc7, 0x66, 0x72, 0xa2, 0xf6, 0xa0, 0xb4, 0x19, 0x13, 0xe4, + 0xc2, 0x6c, 0x4e, 0xce, 0xc9, 0xb3, 0x38, 0x71, 0xb3, 0xb4, 0x85, 0x7f, 0xe1, 0x1f, 0xf8, 0x2f, + 0x13, 0x70, 0xec, 0x6c, 0x4e, 0x96, 0x73, 0x79, 0x74, 0x14, 0xa5, 0x89, 0x05, 0xa4, 0x6a, 0x7c, + 0xa1, 0x58, 0x0d, 0x70, 0xd6, 0x6f, 0x2b, 0x8f, 0x90, 0x56, 0x5b, 0xa5, 0xb1, 0x69, 0x67, 0x80, + 0x84, 0xb4, 0x8a, 0xac, 0x6c, 0x73, 0x5b, 0xa2, 0x82, 0x2a, 0x7c, 0x3e, 0xef, 0x88, 0x1d, 0x77, + 0xc6, 0xca, 0x45, 0x4d, 0x94, 0xa5, 0xea, 0xcd, 0x88, 0xf3, 0x66, 0xfd, 0xb3, 0x8f, 0x9d, 0x72, + 0xde, 0xaf, 0xbd, 0x75, 0xba, 0xee, 0x25, 0xf2, 0x79, 0x31, 0xcb, 0x6b, 0xc8, 0xba, 0x1b, 0x6d, + 0x7c, 0xc5, 0x9c, 0xb3, 0xe8, 0x0b, 0x6e, 0x8d, 0x60, 0x54, 0x80, 0xab, 0x2d, 0xe5, 0x92, 0x6b, + 0x94, 0x26, 0x2b, 0x7c, 0xce, 0x19, 0x78, 0xd6, 0x2d, 0xb0, 0x26, 0x60, 0xe2, 0xdf, 0xfd, 0x70, + 0xe8, 0xc6, 0xbb, 0xeb, 0x1b, 0x6b, 0x4b, 0xab, 0x52, 0x4e, 0x41, 0xaa, 0x7a, 0xab, 0x72, 0x6f, + 0xa7, 0x88, 0xc8, 0xf7, 0x60, 0x90, 0x7f, 0xc4, 0x49, 0x72, 0x16, 0xa9, 0x14, 0x88, 0xfa, 0x27, + 0x7b, 0x12, 0xb3, 0x31, 0xb7, 0x16, 0x37, 0x73, 0xef, 0x4a, 0x68, 0x55, 0xd2, 0x90, 0xb2, 0xc5, + 0x0b, 0xe8, 0x8e, 0x9c, 0x45, 0x06, 0x04, 0xd3, 0xf7, 0xdb, 0x3f, 0xee, 0xf9, 0x83, 0x4f, 0x40, + 0xe7, 0xb4, 0x3f, 0x4e, 0x27, 0xd9, 0x6e, 0xfe, 0x91, 0x71, 0x4b, 0x25, 0x39, 0x48, 0x18, 0xfd, + 0x44, 0x40, 0x8a, 0x26, 0x6e, 0x89, 0x28, 0xcb, 0x3d, 0xa8, 0x50, 0xbe, 0x28, 0x98, 0x0c, 0x31, + 0xe9, 0x4f, 0x75, 0x30, 0xc8, 0x57, 0xd4, 0x99, 0xcd, 0x1d, 0x39, 0x3f, 0x53, 0x96, 0xf3, 0x5a, + 0x01, 0xa9, 0x0f, 0xbe, 0xd2, 0x41, 0x87, 0x01, 0x35, 0xaa, 0x0c, 0x53, 0xd7, 0xd9, 0xc6, 0xfb, + 0x6c, 0x3f, 0x5f, 0x51, 0x97, 0xaa, 0x68, 0x2b, 0x15, 0xf2, 0x1e, 0x24, 0xf8, 0x7c, 0x5e, 0xae, + 0xa0, 0x2c, 0x57, 0x16, 0x8b, 0x5c, 0x51, 0x56, 0x34, 0xca, 0x1f, 0x05, 0x93, 0x3d, 0x89, 0x0b, + 0xee, 0xcf, 0x60, 0x06, 0x6f, 0xac, 0xae, 0xad, 0xc9, 0x8a, 0xa6, 0x32, 0x81, 0x7f, 0x7d, 0x06, + 0x00, 0xdb, 0x6f, 0x61, 0x6c, 0x88, 0x45, 0xe3, 0x32, 0xf9, 0x73, 0x78, 0xba, 0x88, 0x94, 0x2d, + 0x59, 0x29, 0xf0, 0x92, 0x80, 0x38, 0x24, 0x3d, 0x30, 0xfe, 0x5f, 0x40, 0x92, 0xc6, 0x15, 0xe4, + 0x2c, 0xa2, 0x66, 0x70, 0x09, 0x49, 0xd7, 0x12, 0xd6, 0x8e, 0x12, 0x97, 0x8f, 0xf2, 0x6e, 0x57, + 0xdf, 0x54, 0x70, 0x4f, 0x07, 0xe0, 0x4b, 0x1d, 0x00, 0x76, 0xac, 0xd8, 0x34, 0xf2, 0x2a, 0xfd, + 0x5c, 0x07, 0x93, 0xb0, 0x1f, 0x76, 0x9a, 0xaf, 0xb1, 0x33, 0x41, 0xc7, 0xe9, 0x24, 0x1c, 0x81, + 0xc4, 0x8d, 0x6c, 0xd9, 0x08, 0xcc, 0x46, 0xef, 0x9a, 0x5d, 0x89, 0xf4, 0xa5, 0xd2, 0x99, 0x40, + 0x30, 0x40, 0x74, 0x4e, 0x1c, 0x86, 0xe1, 0x29, 0x47, 0xf3, 0x2e, 0xb7, 0xde, 0xc8, 0xf7, 0x2a, + 0xf2, 0xf1, 0x1b, 0x99, 0x81, 0x83, 0x92, 0xcc, 0x55, 0x87, 0x60, 0x51, 0xce, 0x8b, 0xc2, 0x0e, + 0x6e, 0xe5, 0x9e, 0x44, 0xb8, 0xae, 0x8c, 0xe5, 0x42, 0x51, 0xdb, 0x59, 0xe9, 0x60, 0x07, 0x24, + 0xf9, 0x8e, 0x19, 0xbf, 0x86, 0xc3, 0xc9, 0x1d, 0x38, 0xca, 0x0b, 0x9a, 0x58, 0x46, 0x4e, 0x1c, + 0x11, 0xa9, 0x14, 0xc4, 0x48, 0x57, 0xea, 0x90, 0xea, 0x47, 0x7c, 0xec, 0x06, 0x4e, 0xaf, 0x45, + 0x15, 0x91, 0x8a, 0xeb, 0x8d, 0xdb, 0x78, 0xa5, 0x83, 0x1d, 0xe6, 0xdd, 0x42, 0xc8, 0xdf, 0x00, + 0x78, 0xce, 0x2a, 0xdb, 0x6a, 0xe8, 0xac, 0x8d, 0x7a, 0x54, 0x8b, 0xb3, 0xb8, 0x16, 0xcc, 0xf1, + 0x6a, 0x61, 0x35, 0x67, 0xf6, 0x6d, 0xeb, 0xb2, 0x6b, 0x75, 0x22, 0xbc, 0x67, 0x2c, 0x79, 0x1d, + 0x12, 0x92, 0xcc, 0x6d, 0xc9, 0x4a, 0x85, 0x57, 0xb2, 0x5c, 0x51, 0x91, 0x1f, 0xee, 0x50, 0x01, + 0x8f, 0xb7, 0x0a, 0xd8, 0x7e, 0x49, 0x7e, 0xdb, 0x0c, 0x5f, 0x33, 0xa2, 0xc9, 0x5f, 0x00, 0x78, + 0xc6, 0x7a, 0x32, 0x07, 0xcc, 0xd1, 0x53, 0x85, 0x30, 0xde, 0xb5, 0xe3, 0x3d, 0x55, 0x2d, 0x76, + 0xed, 0x13, 0xad, 0x00, 0x76, 0x8c, 0x6f, 0x1a, 0x41, 0xde, 0x86, 0xa3, 0xce, 0xd2, 0xf1, 0x60, + 0x33, 0xfe, 0x4b, 0x85, 0x3d, 0x1f, 0x27, 0xbc, 0x55, 0x03, 0x87, 0x07, 0xee, 0x8d, 0x7c, 0x9e, + 0x54, 0x5d, 0xa6, 0x94, 0x20, 0x9e, 0x52, 0x56, 0x3f, 0xd5, 0xc1, 0xb8, 0x3d, 0x65, 0x14, 0x4a, + 0x79, 0x4d, 0x9c, 0x91, 0x44, 0xa1, 0x61, 0x72, 0x39, 0xa7, 0x9c, 0xa5, 0xae, 0xb3, 0x5e, 0x91, + 0x0d, 0xd3, 0xcc, 0x6d, 0x38, 0x2a, 0xc9, 0x9c, 0x28, 0xa9, 0x62, 0x16, 0x71, 0xaa, 0xc6, 0x6b, + 0xa2, 0xc0, 0x29, 0x72, 0x49, 0x43, 0x2a, 0xd5, 0xeb, 0xf1, 0x0c, 0x3e, 0x36, 0x2c, 0xc9, 0xab, + 0x38, 0x6b, 0x1d, 0x27, 0xb1, 0x38, 0x87, 0xe4, 0x61, 0xd8, 0x15, 0xab, 0x0f, 0x63, 0xcd, 0xb8, + 0x0e, 0xcc, 0x75, 0x51, 0x73, 0x80, 0xfc, 0x50, 0x54, 0x35, 0xfc, 0xf6, 0x7d, 0x2c, 0x29, 0x36, + 0x16, 0x71, 0x1f, 0x52, 0x92, 0xcc, 0xc9, 0x25, 0xcd, 0xa5, 0x98, 0x81, 0xe6, 0x55, 0x66, 0x02, + 0xc6, 0xfc, 0xb4, 0xe2, 0x67, 0x87, 0x25, 0xf9, 0xae, 0x99, 0xec, 0x80, 0x15, 0xe1, 0xb0, 0x3b, + 0x26, 0xd1, 0x42, 0xd5, 0xed, 0xc2, 0x86, 0x64, 0x97, 0xa2, 0xcc, 0x69, 0x25, 0x97, 0x97, 0x37, + 0xf9, 0x7c, 0x75, 0x56, 0xa0, 0x48, 0x8f, 0xb7, 0x1d, 0x30, 0xa6, 0x95, 0x5b, 0x38, 0xde, 0x1a, + 0xe3, 0xe4, 0x16, 0x1c, 0x72, 0x02, 0x70, 0x79, 0x51, 0xd5, 0xa8, 0x21, 0x8c, 0x92, 0x72, 0xad, + 0xac, 0x03, 0x60, 0x49, 0x96, 0x24, 0x24, 0x18, 0x33, 0xad, 0xfd, 0xba, 0x03, 0xec, 0x60, 0xae, + 0x36, 0xc4, 0xb8, 0x41, 0x2e, 0xc3, 0x21, 0x49, 0xe6, 0xb2, 0x02, 0x27, 0xe4, 0x4b, 0xaa, 0x86, + 0x14, 0x2e, 0xa7, 0xc8, 0xa5, 0x22, 0x45, 0x79, 0xd4, 0xb6, 0x93, 0x25, 0x24, 0xf9, 0xa6, 0xb0, + 0x64, 0x26, 0xdc, 0x32, 0xe2, 0xc9, 0x0a, 0x1c, 0xaf, 0xc7, 0xb0, 0x9b, 0xb0, 0x2c, 0x51, 0xa7, + 0x30, 0xdc, 0x84, 0x6b, 0xb5, 0xef, 0x6e, 0xfe, 0x19, 0x12, 0x34, 0x16, 0x6d, 0xe1, 0x17, 0x3b, + 0xf4, 0xf4, 0x31, 0x51, 0x8f, 0xb4, 0xd2, 0xc9, 0x8e, 0x66, 0x1d, 0xe5, 0x59, 0x0d, 0xbc, 0x21, + 0x91, 0x25, 0x38, 0xd6, 0x50, 0xb0, 0xd5, 0x43, 0xcb, 0x12, 0x35, 0xf6, 0xaa, 0xe5, 0x8e, 0x38, + 0xcb, 0x35, 0x47, 0xc4, 0x86, 0x64, 0x0c, 0x2b, 0xb5, 0xc0, 0x09, 0xf6, 0x4b, 0xe6, 0x8a, 0xa5, + 0xcd, 0xbc, 0x28, 0x70, 0x62, 0x91, 0x3a, 0xe3, 0xf1, 0xea, 0xba, 0xd8, 0xb0, 0x5a, 0x38, 0x6a, + 0x9a, 0x35, 0x9c, 0xb4, 0x5a, 0x24, 0x6f, 0xc1, 0x70, 0x1d, 0x5c, 0x59, 0x33, 0xb0, 0x22, 0x9e, + 0x58, 0x83, 0x0e, 0xac, 0xb2, 0xb6, 0x5a, 0x74, 0x65, 0x15, 0xc3, 0xaf, 0xcc, 0x2a, 0x7e, 0x02, + 0xc3, 0xf5, 0xa8, 0x9c, 0x9a, 0x17, 0xa9, 0x91, 0x97, 0x46, 0x1e, 0x74, 0x22, 0xaf, 0xe7, 0xc5, + 0x6f, 0x9e, 0xb2, 0xbc, 0xff, 0x5c, 0x07, 0xef, 0xc1, 0xde, 0x2a, 0x65, 0xf1, 0x2f, 0xd2, 0x71, + 0x78, 0x1a, 0x0e, 0x1b, 0x63, 0x3f, 0x6a, 0x0d, 0x95, 0x68, 0x75, 0x8d, 0x23, 0xfd, 0xf3, 0xf4, + 0x02, 0xbc, 0xec, 0x42, 0x67, 0x46, 0xe3, 0x0b, 0x74, 0x62, 0x91, 0x4e, 0x24, 0xe9, 0x78, 0x9c, + 0x8e, 0xa7, 0xe8, 0x44, 0x82, 0x4e, 0xc4, 0xe9, 0x54, 0x9a, 0xa1, 0xe1, 0xb0, 0x93, 0x61, 0x70, + 0xc2, 0x03, 0x59, 0x14, 0x10, 0x39, 0xb4, 0xa7, 0x03, 0xdf, 0xbe, 0x0e, 0xba, 0x0e, 0x74, 0xd0, + 0x9d, 0xa0, 0x93, 0x71, 0x3a, 0x3e, 0xc7, 0x4c, 0xc3, 0xb0, 0x73, 0xcd, 0xb1, 0x82, 0xc9, 0x3d, + 0x1d, 0x04, 0xf6, 0x75, 0xd0, 0x7d, 0xa0, 0x83, 0xae, 0x14, 0x9d, 0x98, 0xa3, 0xaf, 0x30, 0xb3, + 0x70, 0xcc, 0x65, 0x32, 0xae, 0x66, 0x0c, 0xee, 0xe9, 0xa0, 0x77, 0x5f, 0x07, 0x3d, 0x07, 0x3a, + 0xe8, 0x8c, 0x27, 0xe8, 0x78, 0x92, 0x49, 0xc1, 0x71, 0xb7, 0x39, 0xb0, 0x9a, 0x31, 0xbc, 0xa7, + 0x83, 0x81, 0xdf, 0xeb, 0x00, 0xec, 0xeb, 0xa0, 0x1f, 0x67, 0xa5, 0xe9, 0xf8, 0x3c, 0x33, 0x0d, + 0x87, 0xeb, 0xa6, 0xa2, 0x9a, 0x12, 0xc8, 0x7d, 0x1d, 0x0c, 0xe2, 0xd8, 0x45, 0x3a, 0x6e, 0x54, + 0x69, 0xb4, 0x61, 0x38, 0x5a, 0xd1, 0xe1, 0x3d, 0x1d, 0x50, 0xfb, 0x3a, 0x18, 0x3d, 0xd0, 0x41, + 0x30, 0x91, 0xa2, 0x13, 0x69, 0x3a, 0x31, 0xcf, 0x5c, 0x86, 0x23, 0x58, 0x38, 0x18, 0x8b, 0x97, + 0x33, 0xde, 0x40, 0x3f, 0xb3, 0xaf, 0x83, 0xd3, 0x06, 0x7a, 0xe2, 0x0a, 0x9d, 0x9c, 0xcb, 0x04, + 0x82, 0x7e, 0x22, 0x90, 0x09, 0x04, 0x3b, 0x89, 0xae, 0x4c, 0x20, 0xd8, 0x45, 0x74, 0x67, 0x02, + 0xc1, 0x6e, 0x22, 0x98, 0x09, 0x04, 0x7b, 0x88, 0xde, 0x4c, 0x20, 0xd8, 0x4f, 0x0c, 0x64, 0x02, + 0xc1, 0x41, 0x82, 0xcc, 0x04, 0x82, 0xa3, 0x04, 0x95, 0x09, 0x04, 0x4f, 0x13, 0x67, 0x32, 0x81, + 0xe0, 0x38, 0x71, 0x3a, 0x13, 0x08, 0x46, 0x89, 0x73, 0x99, 0x40, 0xf0, 0x1c, 0x31, 0x91, 0x09, + 0x04, 0x27, 0x88, 0xf3, 0x99, 0x40, 0xf0, 0x3c, 0x71, 0x61, 0xe2, 0x97, 0x43, 0x70, 0xcc, 0xa4, + 0x8e, 0x1b, 0x72, 0x5e, 0x53, 0x35, 0x5e, 0xd8, 0xb6, 0x46, 0x3c, 0x66, 0x9f, 0x05, 0x97, 0x45, + 0x1b, 0xe0, 0x45, 0x7b, 0xe9, 0x53, 0x1d, 0x50, 0x0e, 0x9e, 0x8f, 0x93, 0x67, 0x04, 0xb9, 0xb0, + 0x29, 0x57, 0x57, 0xec, 0x88, 0x72, 0x9a, 0xba, 0xce, 0x36, 0x0d, 0x6b, 0x58, 0xae, 0x6b, 0xc9, + 0xae, 0xef, 0x64, 0x15, 0x8d, 0x2b, 0xd9, 0x0d, 0xbc, 0x1c, 0xd9, 0x55, 0x9b, 0x93, 0xdd, 0xce, + 0x57, 0x24, 0xbb, 0xcd, 0x69, 0xee, 0xdf, 0x1c, 0x8b, 0xe6, 0x9e, 0x3f, 0x29, 0x9a, 0xdb, 0x22, + 0xc1, 0xed, 0x3e, 0x61, 0x82, 0x1b, 0xfc, 0x66, 0x09, 0xee, 0x40, 0x0b, 0x04, 0xf7, 0xae, 0x07, + 0x73, 0x83, 0x9e, 0x64, 0xb3, 0x09, 0x67, 0x13, 0x9a, 0x71, 0xb6, 0x9e, 0xd6, 0xe8, 0xe6, 0xf1, + 0xd9, 0x5a, 0x9f, 0x47, 0x75, 0xfd, 0xc7, 0x66, 0x6b, 0xfd, 0xaf, 0xc0, 0xd6, 0xfc, 0x2f, 0xc1, + 0xd6, 0xce, 0x78, 0x72, 0xcb, 0x46, 0xb6, 0x26, 0xc0, 0x06, 0xae, 0x63, 0x51, 0x8d, 0x96, 0xa9, + 0x52, 0x80, 0xed, 0x77, 0x52, 0x25, 0x2f, 0x8a, 0x74, 0xce, 0x93, 0x5d, 0xbe, 0x1c, 0x45, 0x9a, + 0xf0, 0xc4, 0x72, 0xa1, 0x48, 0x3f, 0x80, 0x03, 0x59, 0xb4, 0xc5, 0x97, 0xf2, 0x1a, 0x67, 0x99, + 0x51, 0x9e, 0x6a, 0xae, 0x8b, 0xed, 0xb7, 0xc2, 0xd7, 0xcd, 0x68, 0xf2, 0x3d, 0x48, 0x56, 0x5d, + 0x2c, 0x21, 0xcf, 0xab, 0xaa, 0xd9, 0xd6, 0x26, 0xcb, 0x9a, 0x72, 0xef, 0x92, 0x66, 0xf8, 0x92, + 0x11, 0x6d, 0x37, 0x70, 0x17, 0x4b, 0xa8, 0x75, 0xd7, 0x5d, 0xe9, 0xdb, 0xc8, 0x2b, 0xd3, 0xb7, + 0x37, 0x61, 0xbf, 0x24, 0x73, 0xdb, 0x8b, 0x6a, 0xb5, 0xcd, 0x2c, 0x5e, 0xec, 0xfe, 0xc0, 0xdd, + 0x6c, 0xaf, 0x24, 0xbf, 0xb3, 0xa8, 0x5a, 0x8d, 0x49, 0xde, 0x87, 0x3d, 0xb5, 0xa9, 0xe3, 0xc7, + 0xee, 0x27, 0xfd, 0x4f, 0x1f, 0xd7, 0x66, 0xae, 0x74, 0xb3, 0x70, 0xdb, 0x86, 0xbd, 0xaa, 0x3e, + 0xd7, 0x81, 0x5c, 0xc3, 0xba, 0xe2, 0x74, 0xc2, 0x83, 0x75, 0x25, 0xe9, 0x79, 0x38, 0x0e, 0x87, + 0xad, 0x17, 0x19, 0x5d, 0x92, 0xa5, 0x2d, 0x31, 0x57, 0x52, 0x78, 0xa3, 0x59, 0x49, 0x5f, 0xfc, + 0x0a, 0xbc, 0xe0, 0x42, 0xc9, 0x88, 0x78, 0x82, 0x4e, 0x26, 0x0c, 0x56, 0x76, 0x05, 0xd3, 0xb1, + 0x34, 0x73, 0xb9, 0x19, 0x17, 0xab, 0xd2, 0x2b, 0xbf, 0x49, 0xaf, 0x92, 0x69, 0x3a, 0xed, 0x49, + 0xc5, 0xba, 0x2d, 0xde, 0xd6, 0xb5, 0x40, 0xc7, 0xd3, 0xf4, 0x22, 0x33, 0xe7, 0xcd, 0xac, 0x0c, + 0x2e, 0x03, 0xf7, 0x75, 0x10, 0xc2, 0x4c, 0x69, 0x8e, 0x8e, 0xc7, 0xbd, 0x59, 0x55, 0xdf, 0xbe, + 0x0e, 0x7a, 0x71, 0x6c, 0x92, 0x8e, 0xa7, 0x18, 0xba, 0x39, 0xab, 0x6a, 0x64, 0x49, 0x2f, 0xa0, + 0x54, 0xe7, 0xf6, 0x75, 0x10, 0x35, 0x82, 0x93, 0x49, 0x3a, 0x99, 0x62, 0xa6, 0x60, 0xd8, 0xd9, + 0x99, 0x6b, 0x42, 0xc3, 0xfb, 0x3a, 0x18, 0xc2, 0xb8, 0x73, 0x74, 0x22, 0xce, 0x5c, 0x82, 0x64, + 0x4d, 0x73, 0xd6, 0x06, 0x8e, 0xed, 0xeb, 0xe0, 0x14, 0x0e, 0x9c, 0xa7, 0x13, 0x0b, 0x36, 0x4d, + 0x33, 0x09, 0x5a, 0x88, 0x80, 0x99, 0x40, 0xb0, 0x97, 0xe8, 0xb3, 0xe9, 0x98, 0x49, 0xc4, 0x86, + 0x88, 0x70, 0x26, 0x10, 0x3c, 0x45, 0x8c, 0x65, 0x02, 0xc1, 0xb3, 0x44, 0x74, 0xe2, 0xef, 0xfd, + 0x55, 0x22, 0x66, 0x9b, 0xbc, 0x2c, 0x2a, 0xe6, 0x79, 0x01, 0xbd, 0x6e, 0xaf, 0xf7, 0x7b, 0x6a, + 0xc5, 0x5e, 0xff, 0xf8, 0x9a, 0x9b, 0x6b, 0xfe, 0x5c, 0x07, 0x17, 0x1d, 0xe3, 0xee, 0x45, 0xf6, + 0xec, 0xbf, 0x0d, 0xc3, 0xa8, 0xab, 0x3d, 0xdb, 0x7a, 0xf3, 0x7c, 0xed, 0x2e, 0xad, 0xfa, 0xfa, + 0x5c, 0xda, 0x57, 0x25, 0xae, 0x67, 0xbf, 0x61, 0xe2, 0xda, 0x76, 0x66, 0xbf, 0x83, 0x26, 0xe9, + 0xdd, 0xd6, 0x4c, 0xd2, 0xe6, 0xf6, 0xa8, 0x70, 0x92, 0xf6, 0x68, 0xdb, 0x18, 0x6d, 0x1b, 0xa3, + 0x6d, 0x63, 0xf4, 0x3b, 0x6f, 0x8c, 0x56, 0x3e, 0xbe, 0xd6, 0x7c, 0x5f, 0xf6, 0xb9, 0x0e, 0xde, + 0x85, 0xb0, 0x4a, 0x23, 0xc0, 0x89, 0x5a, 0xa6, 0xcb, 0xcd, 0x68, 0x3a, 0xed, 0x62, 0x99, 0xee, + 0x1e, 0x02, 0xf7, 0x68, 0x86, 0x69, 0x42, 0xe0, 0xa7, 0x1b, 0xbd, 0xd4, 0xdd, 0x43, 0xe0, 0x1a, + 0xcb, 0xdc, 0xf6, 0xf4, 0x58, 0x67, 0x1b, 0x3c, 0xd6, 0xdd, 0x43, 0xe0, 0x91, 0xc0, 0xdc, 0xf5, + 0xd6, 0x09, 0x73, 0x7b, 0x3a, 0x18, 0x70, 0xb8, 0xaf, 0xbb, 0x87, 0xc0, 0x2b, 0x83, 0x59, 0x6a, + 0x26, 0x23, 0xa6, 0x1b, 0xcc, 0x59, 0xe3, 0x45, 0xb9, 0xc6, 0x32, 0x99, 0xe6, 0xfa, 0x62, 0xd6, + 0xcd, 0xb5, 0xdd, 0x3d, 0x04, 0xcd, 0x12, 0x98, 0xe5, 0xa6, 0xea, 0xe3, 0x72, 0x83, 0x54, 0xd9, + 0x3d, 0x04, 0x4d, 0x82, 0xeb, 0xac, 0xde, 0x20, 0x11, 0x7a, 0x59, 0xc3, 0x77, 0xe2, 0x5f, 0x08, + 0x78, 0xce, 0xdd, 0xd8, 0x6d, 0xc6, 0x5b, 0xdb, 0x86, 0x6b, 0xdb, 0x70, 0x6d, 0x1b, 0xae, 0x6d, + 0xc3, 0xb5, 0x6d, 0xb8, 0x9e, 0xa8, 0xe1, 0xfa, 0x5a, 0x4c, 0xcd, 0xab, 0xd2, 0xc7, 0xd7, 0x3c, + 0xf6, 0xed, 0x9e, 0xeb, 0xe0, 0x76, 0x0d, 0x3b, 0x79, 0x91, 0xb5, 0x78, 0xce, 0x85, 0x9d, 0xf4, + 0x39, 0xdc, 0x43, 0xe6, 0x66, 0x33, 0x4e, 0x72, 0xb9, 0xd1, 0x3a, 0x6c, 0x8d, 0x92, 0xd4, 0x79, + 0x8a, 0x4d, 0x29, 0xc9, 0x31, 0x38, 0x84, 0xd3, 0x6b, 0x7c, 0x25, 0x0e, 0xe1, 0xb4, 0x22, 0x9b, + 0x73, 0x88, 0x5b, 0xcd, 0x39, 0x04, 0xed, 0xb6, 0xf0, 0xb7, 0x48, 0x20, 0x9c, 0xf6, 0xa5, 0x27, + 0x81, 0x00, 0x84, 0xef, 0x98, 0x56, 0xe4, 0x59, 0x22, 0x3a, 0xf1, 0x1f, 0x3e, 0x48, 0x9a, 0xfd, + 0xc9, 0xe8, 0x27, 0xab, 0xd2, 0x96, 0x8c, 0xf9, 0xc1, 0xdb, 0x10, 0xda, 0xc3, 0xc8, 0x74, 0xb6, + 0x42, 0xcc, 0x25, 0x63, 0xc1, 0x0f, 0x3d, 0x01, 0x5d, 0x13, 0x01, 0xc5, 0x57, 0x04, 0xc6, 0x2f, + 0xf8, 0x04, 0x74, 0x4f, 0x77, 0xce, 0xd1, 0x71, 0x3a, 0x69, 0xfc, 0xec, 0x7c, 0x02, 0x7c, 0x14, + 0x60, 0x43, 0x45, 0x6b, 0x30, 0xa9, 0xe4, 0x0a, 0xec, 0x29, 0x2a, 0x62, 0x99, 0xd7, 0x10, 0x06, + 0xf2, 0xbd, 0x1c, 0x10, 0xb4, 0x72, 0x0d, 0xa4, 0xfb, 0x10, 0xaa, 0xa5, 0x4d, 0x09, 0x69, 0x9c, + 0x98, 0x55, 0x29, 0x3f, 0xe6, 0x2c, 0x6f, 0x34, 0xe3, 0x2c, 0xeb, 0x38, 0x72, 0x35, 0x6b, 0x1e, + 0xe0, 0x1b, 0xa8, 0x2b, 0x81, 0x0d, 0xa9, 0xd5, 0xfb, 0xe4, 0x32, 0xec, 0x2a, 0x17, 0x05, 0x4e, + 0xcc, 0x62, 0x8a, 0x12, 0x62, 0x62, 0x46, 0xec, 0x94, 0x72, 0x29, 0xf1, 0xc6, 0x07, 0x93, 0xe5, + 0xa2, 0x30, 0x33, 0x35, 0xf9, 0x13, 0x7e, 0xe6, 0xd1, 0xdc, 0xcc, 0x95, 0xf7, 0xff, 0x62, 0xf1, + 0xf1, 0xcf, 0xec, 0xbf, 0xe3, 0x0b, 0x8f, 0xa7, 0x2e, 0xfc, 0xec, 0x83, 0x0b, 0x6c, 0x67, 0xb9, + 0x28, 0xac, 0x66, 0xc9, 0x53, 0x30, 0x68, 0xc0, 0x48, 0x7c, 0x01, 0x61, 0x86, 0x12, 0x62, 0xbb, + 0xcb, 0x45, 0xe1, 0x0e, 0x5f, 0x40, 0x13, 0xcf, 0x2f, 0xc2, 0x7e, 0x73, 0x12, 0x5e, 0x2f, 0x22, + 0x01, 0xbf, 0xdd, 0xb7, 0xa0, 0xbf, 0x5c, 0x14, 0xf0, 0x86, 0xba, 0xc7, 0x43, 0x6c, 0xac, 0x2d, + 0x99, 0x8d, 0x7a, 0x74, 0x0a, 0x91, 0x35, 0xf2, 0xc8, 0x9f, 0x42, 0x28, 0x9a, 0xca, 0x84, 0xcb, + 0x55, 0x2c, 0x4b, 0x30, 0x1d, 0x7b, 0xd1, 0x99, 0xef, 0x98, 0x8b, 0x29, 0xca, 0x18, 0x23, 0x18, + 0xac, 0x74, 0xb0, 0x21, 0xb1, 0x7a, 0x99, 0x94, 0xe1, 0x60, 0x15, 0x1d, 0xd9, 0x85, 0x98, 0xbe, + 0xf0, 0x9f, 0xbc, 0x64, 0x21, 0xcb, 0x6e, 0x45, 0x0d, 0x88, 0xce, 0x9b, 0xe4, 0x9f, 0xc3, 0x41, + 0xfb, 0x7c, 0x80, 0xbd, 0xdf, 0x62, 0xfa, 0x2f, 0x6f, 0x1e, 0xb7, 0x40, 0xb7, 0xc9, 0xd0, 0x2e, + 0x91, 0x28, 0xd7, 0xdd, 0x25, 0x73, 0x30, 0x88, 0x8f, 0x37, 0x28, 0x28, 0x6b, 0x51, 0xd3, 0xe3, + 0x2c, 0x48, 0x17, 0x9f, 0x3e, 0x1e, 0x14, 0xf2, 0x72, 0x29, 0x8b, 0x13, 0x91, 0xa4, 0x89, 0x7c, + 0x5e, 0xfd, 0xed, 0x33, 0xd0, 0x1f, 0x04, 0x93, 0x60, 0x0e, 0x5c, 0xed, 0x12, 0xf0, 0xfe, 0xcc, + 0x0a, 0x60, 0xbb, 0xf9, 0x8a, 0xba, 0xa4, 0xa0, 0x2c, 0xf9, 0x16, 0x0c, 0xf2, 0xaa, 0x2a, 0xaa, + 0x1a, 0xca, 0x5a, 0xcc, 0xd5, 0xfd, 0x14, 0x5f, 0xe8, 0x93, 0xc7, 0xe0, 0x0b, 0x1d, 0x00, 0x0a, + 0xac, 0x00, 0xd6, 0x4e, 0x21, 0xff, 0x07, 0xc0, 0x3e, 0x51, 0x52, 0x35, 0xac, 0x84, 0xb5, 0x9d, + 0x22, 0xa2, 0xba, 0x70, 0x2f, 0xfd, 0x1d, 0xf8, 0x54, 0x07, 0x21, 0x2d, 0x19, 0x7b, 0x98, 0xe7, + 0x95, 0x1c, 0xfa, 0x4a, 0x07, 0x1d, 0x4f, 0x9e, 0x81, 0x7f, 0x02, 0x30, 0x05, 0x8f, 0xae, 0x92, + 0x97, 0x26, 0x53, 0xd1, 0x87, 0xd1, 0xf2, 0xd2, 0xda, 0x7d, 0x3a, 0x1a, 0x9f, 0xbf, 0xc5, 0x44, + 0xd9, 0x1b, 0xb7, 0xa7, 0xa2, 0x05, 0x94, 0x15, 0x4b, 0x85, 0x68, 0x8d, 0x00, 0x86, 0x49, 0x08, + 0xb5, 0x64, 0x2c, 0x61, 0xa5, 0xbd, 0x31, 0xb9, 0x68, 0xa7, 0x25, 0x13, 0xd5, 0xb4, 0x07, 0x62, + 0xee, 0x81, 0x23, 0xe9, 0x0a, 0x84, 0x85, 0x74, 0x2c, 0x65, 0x25, 0x5d, 0x9e, 0x8c, 0xcf, 0xdb, + 0x59, 0xf3, 0xa9, 0x6a, 0x56, 0x19, 0x29, 0x3b, 0x0d, 0xa9, 0xc6, 0x10, 0x0b, 0x28, 0x3e, 0xea, + 0x3a, 0xdb, 0x5b, 0x7d, 0x38, 0x3c, 0x2c, 0xe6, 0x61, 0x2f, 0x56, 0x24, 0x5c, 0x11, 0x29, 0x1c, + 0xff, 0x08, 0xd3, 0x9a, 0x3e, 0x86, 0xfc, 0x54, 0x07, 0x60, 0xae, 0x7a, 0xb2, 0x24, 0x30, 0xed, + 0xa3, 0x86, 0x57, 0x7c, 0x2c, 0xc4, 0x91, 0x6b, 0x48, 0xb9, 0xf1, 0x88, 0x4c, 0xc3, 0x1e, 0x4d, + 0xd6, 0x8c, 0xb9, 0x19, 0xeb, 0x99, 0xf1, 0x26, 0x69, 0x6f, 0x19, 0x69, 0x38, 0xd0, 0x5c, 0x1e, + 0xaf, 0xc1, 0x01, 0x49, 0xe6, 0x8c, 0xc9, 0x1c, 0x29, 0x56, 0xea, 0x69, 0x4f, 0xf6, 0xd8, 0x27, + 0xc9, 0xef, 0xe2, 0x68, 0x33, 0x7f, 0x0d, 0x9e, 0x32, 0x3a, 0x16, 0x52, 0x14, 0x9e, 0x53, 0xe5, + 0x2d, 0xad, 0xc2, 0x2b, 0x88, 0x2b, 0x23, 0x45, 0x15, 0x65, 0xc9, 0x3a, 0xe1, 0x1a, 0xb6, 0x9a, + 0xd5, 0xae, 0x06, 0x7e, 0xea, 0xd1, 0x6a, 0xda, 0xba, 0x95, 0xb5, 0x61, 0x26, 0x91, 0x77, 0x20, + 0x25, 0x17, 0x91, 0xc2, 0x6b, 0xa2, 0x94, 0xe3, 0xd4, 0x1d, 0x55, 0x43, 0x05, 0x1b, 0x30, 0xe4, + 0x01, 0x38, 0x62, 0x67, 0xad, 0xe3, 0xa4, 0x2a, 0x5e, 0x12, 0x42, 0xa3, 0x9b, 0x2b, 0x28, 0x67, + 0x20, 0xf4, 0x9a, 0x08, 0x38, 0xf5, 0x19, 0xe8, 0xad, 0xed, 0xb2, 0x6c, 0x88, 0xaf, 0xa8, 0x2c, + 0x0e, 0x23, 0x93, 0x30, 0x94, 0x15, 0xd5, 0x6d, 0x4e, 0x15, 0x1f, 0x21, 0x4c, 0xcf, 0xfb, 0x98, + 0x91, 0x3d, 0xab, 0xc8, 0xbf, 0x7a, 0x06, 0x06, 0xf1, 0xfc, 0x3c, 0xed, 0xa7, 0x3e, 0x24, 0xd8, + 0xa0, 0x11, 0xb8, 0x2e, 0x3e, 0x42, 0xe4, 0x14, 0xec, 0x56, 0xd5, 0x07, 0xdc, 0x36, 0xda, 0xc1, + 0x94, 0x36, 0xc4, 0x10, 0x5f, 0xe9, 0xc0, 0x6f, 0x84, 0x76, 0x2b, 0x9d, 0x04, 0xa0, 0x3e, 0xbc, + 0xce, 0x76, 0xa9, 0xea, 0x83, 0x77, 0xd0, 0x0e, 0x39, 0x09, 0xbb, 0xf9, 0x6c, 0xd6, 0x18, 0xfb, + 0xd4, 0x20, 0x0e, 0xed, 0x37, 0xd0, 0x31, 0xaa, 0xe2, 0xa7, 0x3e, 0xf4, 0xb1, 0xd5, 0xdb, 0xe4, + 0x2d, 0xd8, 0x23, 0xc8, 0xb2, 0x92, 0x15, 0x25, 0xde, 0x20, 0xe3, 0xa6, 0x63, 0x7a, 0xb6, 0xae, + 0x71, 0xf0, 0x24, 0xb0, 0x74, 0x14, 0x66, 0x9e, 0x51, 0x65, 0x6b, 0x33, 0xc9, 0x3b, 0x70, 0x34, + 0x2f, 0xe7, 0x54, 0x4e, 0xd5, 0x14, 0xc4, 0x17, 0x8c, 0x97, 0x9b, 0x15, 0x55, 0x7e, 0x33, 0x8f, + 0xb2, 0x9e, 0xbe, 0xb9, 0x9f, 0x1d, 0x36, 0xd2, 0xd6, 0xab, 0x59, 0x37, 0xad, 0x24, 0xf2, 0x47, + 0xb0, 0x37, 0x2f, 0xe7, 0x38, 0x05, 0x09, 0x48, 0x2c, 0x23, 0xc5, 0x72, 0xd4, 0x8e, 0x33, 0x85, + 0x0c, 0x3c, 0x7d, 0xec, 0x48, 0x5d, 0xf1, 0xb3, 0x3d, 0x79, 0x39, 0xc7, 0x5a, 0x3f, 0xc9, 0x25, + 0xe8, 0x53, 0x2b, 0x16, 0x4d, 0x74, 0xdf, 0x54, 0xdf, 0xa8, 0xeb, 0x3b, 0x75, 0xc6, 0x96, 0x4f, + 0xad, 0x90, 0x0c, 0xf4, 0xc9, 0x2a, 0x35, 0x8a, 0x41, 0x26, 0xdd, 0x2b, 0xe5, 0xec, 0x2f, 0xf5, + 0x18, 0xb2, 0x4a, 0xfe, 0x12, 0xc0, 0x80, 0xc6, 0xe7, 0x54, 0x2a, 0x82, 0x57, 0xda, 0xab, 0x2f, + 0x9e, 0x88, 0x9d, 0x6b, 0x5c, 0xec, 0x1e, 0x9f, 0x53, 0x97, 0x25, 0x4d, 0xd9, 0x61, 0xe6, 0xab, + 0xed, 0x1b, 0xfa, 0xc8, 0x5c, 0xf2, 0xa9, 0x9f, 0xe3, 0xd6, 0xfe, 0x08, 0xf8, 0x88, 0x49, 0xbc, + 0x34, 0x7f, 0x64, 0x2c, 0xcd, 0x8a, 0x9f, 0xfa, 0x5f, 0x70, 0xf0, 0x87, 0xdf, 0xf9, 0xbb, 0x7e, + 0xf5, 0x0c, 0xf8, 0x82, 0x1d, 0x2c, 0x2e, 0x9f, 0x7c, 0x08, 0x07, 0x31, 0x7d, 0xe6, 0x15, 0xbe, + 0x60, 0xcf, 0x0c, 0x14, 0xae, 0xd4, 0x94, 0x5b, 0x57, 0xc0, 0x44, 0x5e, 0x7d, 0x60, 0xd0, 0x68, + 0x9c, 0x82, 0xa7, 0x08, 0x66, 0xc2, 0x1a, 0x37, 0x46, 0x71, 0xbd, 0x4f, 0x40, 0x68, 0xba, 0xdb, + 0x60, 0x02, 0x09, 0x07, 0xdb, 0xe8, 0x2f, 0x8b, 0xc5, 0x9a, 0x1c, 0xf2, 0x4f, 0xe1, 0x78, 0x49, + 0x45, 0x0a, 0x57, 0x90, 0xb3, 0xe2, 0x96, 0x28, 0xe0, 0x4d, 0x77, 0xce, 0xfe, 0xf0, 0xc9, 0xf2, + 0xb0, 0xc7, 0x62, 0xe6, 0xa7, 0x51, 0xb1, 0xea, 0xa7, 0x51, 0xb1, 0x7b, 0xd5, 0x08, 0x26, 0x60, + 0x94, 0xc8, 0x9e, 0x32, 0x40, 0x6e, 0xd7, 0x60, 0xd8, 0x01, 0xe4, 0x5b, 0x16, 0xe7, 0xd3, 0x64, + 0xce, 0xfc, 0x7f, 0x49, 0x92, 0x50, 0xbe, 0x6a, 0x1a, 0x87, 0x6a, 0x56, 0x05, 0x96, 0x34, 0x02, + 0xee, 0xc9, 0x06, 0x49, 0xbb, 0x87, 0xa3, 0x56, 0x8b, 0xe4, 0x8f, 0x20, 0x55, 0x3d, 0xd2, 0xb1, + 0x99, 0x97, 0x85, 0x6d, 0x94, 0xe5, 0x54, 0xa4, 0x94, 0x45, 0x01, 0xa9, 0x54, 0xd4, 0x63, 0xb1, + 0xe9, 0xda, 0x33, 0x57, 0x9a, 0x00, 0x3b, 0x62, 0xe5, 0x33, 0x66, 0xfa, 0xba, 0x95, 0x4d, 0xde, + 0x84, 0x24, 0x46, 0x34, 0x24, 0xfa, 0x11, 0xe6, 0x8c, 0xb7, 0xfc, 0xc3, 0x19, 0x37, 0xf2, 0x79, + 0x1b, 0xe5, 0x3d, 0x48, 0x34, 0xd4, 0xeb, 0x22, 0xc6, 0xa0, 0xeb, 0x30, 0xf0, 0xf7, 0x62, 0xb1, + 0xba, 0x5a, 0xd4, 0x6c, 0x54, 0x0c, 0x6c, 0xd6, 0x55, 0xf0, 0x1e, 0x1c, 0xcd, 0x8a, 0x0a, 0x12, + 0xb4, 0xaa, 0x52, 0x3b, 0x1a, 0xd1, 0xe7, 0x5f, 0x78, 0x58, 0xbe, 0x93, 0x1d, 0x36, 0x93, 0x2d, + 0xc9, 0x66, 0x8f, 0x6b, 0x09, 0x8e, 0xd4, 0xa1, 0x22, 0xc9, 0x04, 0xbd, 0xe0, 0x5a, 0x6d, 0x73, + 0x14, 0xdc, 0xac, 0xc5, 0x32, 0x8f, 0x68, 0x1c, 0x0d, 0xa8, 0x7d, 0xb3, 0xc0, 0xb0, 0xa3, 0xc0, + 0x65, 0x13, 0x95, 0xcc, 0xc3, 0x70, 0x95, 0x1d, 0x57, 0x05, 0x67, 0x59, 0xd4, 0x76, 0xa8, 0x79, + 0x0f, 0xdb, 0x61, 0xcd, 0x4c, 0xf0, 0x2e, 0x6e, 0xa8, 0xe8, 0x88, 0xc2, 0xa8, 0xe4, 0x0e, 0x1c, + 0x93, 0xb7, 0xb6, 0xf2, 0xa2, 0x84, 0x38, 0xb5, 0xa4, 0x94, 0xc5, 0x32, 0xbf, 0x29, 0xe6, 0x45, + 0x6d, 0xc7, 0xb4, 0xd5, 0x2f, 0xe1, 0x32, 0xe3, 0xee, 0xd3, 0x85, 0x99, 0xb6, 0x5e, 0x9b, 0xe5, + 0x62, 0xaa, 0x53, 0x72, 0x93, 0x38, 0x72, 0x05, 0x86, 0xad, 0xf6, 0xe1, 0x44, 0x49, 0x43, 0x8a, + 0x41, 0xe3, 0xcb, 0x62, 0x91, 0x9a, 0xf6, 0xdc, 0xcf, 0x20, 0xad, 0x9c, 0x55, 0x2b, 0x65, 0x43, + 0x2c, 0x92, 0x6f, 0xc3, 0x21, 0xb3, 0x4d, 0x9c, 0x40, 0x97, 0xbd, 0x37, 0x46, 0xcc, 0x94, 0x5a, + 0x9c, 0x1f, 0xc2, 0x91, 0x2a, 0xbb, 0xe5, 0x35, 0x54, 0xe1, 0x77, 0x38, 0x6b, 0x28, 0x50, 0x31, + 0xcf, 0x43, 0x42, 0x61, 0x33, 0xeb, 0x96, 0x99, 0x74, 0xd3, 0xcc, 0x21, 0x59, 0xd8, 0x67, 0xa1, + 0x49, 0xbc, 0x66, 0xf0, 0xe5, 0x59, 0x8f, 0xfe, 0x72, 0xe3, 0xdd, 0xf5, 0x3b, 0x37, 0xee, 0x59, + 0x08, 0x47, 0x0c, 0x7f, 0xa5, 0x9b, 0xed, 0x31, 0x41, 0xee, 0xf0, 0xda, 0xad, 0x0a, 0xf9, 0x97, + 0x30, 0x62, 0x61, 0x96, 0x45, 0x45, 0x2b, 0xf1, 0x79, 0xae, 0xda, 0x57, 0xac, 0x1a, 0x53, 0x73, + 0xb8, 0x90, 0x85, 0xa6, 0xfa, 0xc1, 0x4c, 0xb3, 0x3a, 0x8c, 0x5b, 0x79, 0xe3, 0x66, 0x01, 0xae, + 0x81, 0xe4, 0x14, 0x24, 0xd4, 0x52, 0x2e, 0x87, 0x0c, 0x22, 0xca, 0xf1, 0xd8, 0xd8, 0xa0, 0xe2, + 0x58, 0xda, 0x0c, 0xd8, 0xd7, 0x6f, 0xe0, 0xcb, 0xe4, 0x65, 0x38, 0x88, 0x14, 0x45, 0x56, 0xb8, + 0x2c, 0x52, 0x05, 0x45, 0xc4, 0x4e, 0x02, 0x95, 0xc0, 0xb1, 0x04, 0xbe, 0x71, 0xf3, 0xe8, 0xba, + 0xd1, 0x82, 0x5b, 0xe9, 0x87, 0x02, 0xa7, 0x22, 0xa1, 0xa4, 0x18, 0xdd, 0xcf, 0xf4, 0x85, 0x52, + 0x1e, 0xaf, 0x3d, 0xc8, 0x0e, 0x1a, 0x29, 0xeb, 0x56, 0x86, 0xe9, 0xfb, 0xfc, 0x14, 0x0e, 0x0b, + 0x25, 0x55, 0x93, 0x0b, 0xf5, 0x48, 0x69, 0x8c, 0x74, 0xd1, 0xdd, 0xb4, 0xab, 0x85, 0xc0, 0x6f, + 0x21, 0xc8, 0x0e, 0x99, 0x30, 0x4e, 0xf4, 0x1f, 0xc0, 0x1e, 0x3c, 0x25, 0xe3, 0xea, 0xab, 0xd4, + 0x02, 0x5e, 0x70, 0x22, 0x4d, 0x8d, 0xc0, 0x65, 0x23, 0x8c, 0x85, 0x6a, 0xf5, 0x4f, 0x43, 0xaf, + 0x12, 0xd6, 0x07, 0xa6, 0xc6, 0xb2, 0xa1, 0x6a, 0xbc, 0x86, 0xa8, 0xc5, 0x28, 0x98, 0xec, 0x4f, + 0x4c, 0xbb, 0xa2, 0x98, 0x23, 0x79, 0xc3, 0x4e, 0x59, 0x37, 0x32, 0xd8, 0x81, 0xb2, 0xf3, 0x02, + 0xb9, 0x04, 0xa1, 0xf5, 0xd4, 0x59, 0x49, 0xa5, 0xae, 0xe0, 0x47, 0x75, 0xaf, 0xd6, 0x12, 0x0e, + 0xbb, 0x79, 0x67, 0xdd, 0x62, 0x44, 0x21, 0x33, 0xef, 0xa6, 0xa4, 0x92, 0x32, 0xa4, 0xb6, 0x4b, + 0x9b, 0x78, 0x2c, 0x20, 0x95, 0x2b, 0x15, 0x73, 0x0a, 0x9f, 0x45, 0x5c, 0x56, 0xe1, 0x45, 0x89, + 0xba, 0x8a, 0x21, 0x2f, 0xbb, 0x42, 0xbe, 0x63, 0x27, 0xdd, 0x37, 0x73, 0x6e, 0x1a, 0x29, 0x35, + 0x33, 0xc0, 0xc8, 0xb6, 0x6b, 0x04, 0xf9, 0x3e, 0x0c, 0x69, 0x5b, 0xd6, 0x1a, 0x4e, 0xfd, 0x57, + 0xf7, 0xb1, 0xe9, 0xd2, 0xf8, 0xd3, 0xc7, 0x61, 0xcc, 0x76, 0x0c, 0xe9, 0x60, 0xe6, 0x23, 0x0d, + 0x29, 0x2a, 0x5e, 0x58, 0x83, 0xda, 0x96, 0xb9, 0x5c, 0x93, 0x1f, 0xc0, 0x3e, 0xfc, 0xb9, 0xae, + 0x39, 0x25, 0xf0, 0x79, 0xea, 0x8b, 0xe3, 0x17, 0x11, 0x7e, 0xfa, 0xd8, 0x99, 0x8c, 0xb1, 0x7b, + 0x8d, 0x4b, 0xab, 0xd6, 0x15, 0xf2, 0x7d, 0x38, 0x60, 0xea, 0x3e, 0xdc, 0x25, 0x44, 0x69, 0x4b, + 0xa6, 0xfe, 0xd8, 0xed, 0xe1, 0xb9, 0xba, 0x08, 0xd4, 0x5a, 0x77, 0x85, 0xed, 0xc3, 0x68, 0xd5, + 0x4b, 0xe4, 0xbb, 0x70, 0xa8, 0x6e, 0xd9, 0xc1, 0x45, 0xfc, 0x77, 0xb7, 0x47, 0x47, 0x76, 0x2c, + 0x3a, 0x06, 0x0a, 0x3b, 0x98, 0xad, 0xbf, 0x34, 0xb6, 0x00, 0x43, 0x36, 0x0d, 0x23, 0x09, 0xe8, + 0x37, 0xe8, 0x39, 0x3e, 0xc5, 0xcf, 0x1a, 0x7f, 0x92, 0x61, 0xd8, 0x59, 0xe6, 0xf3, 0x25, 0x64, + 0x7e, 0xe1, 0xcb, 0x9a, 0x3f, 0xae, 0xfa, 0x16, 0xc1, 0xd5, 0x5f, 0x83, 0xe7, 0x3a, 0xf8, 0x6b, + 0x00, 0xa7, 0xe1, 0x10, 0xb6, 0x0f, 0x8d, 0x5a, 0x47, 0xd7, 0x51, 0xde, 0xf4, 0x37, 0xc9, 0xa1, + 0x78, 0x9c, 0x8e, 0x27, 0xe8, 0x38, 0x1d, 0x9f, 0xa3, 0x53, 0x29, 0x3a, 0x1d, 0xa7, 0x53, 0x71, + 0xf8, 0x06, 0x0c, 0x9b, 0x56, 0xa3, 0x9c, 0x45, 0xd1, 0x35, 0xbb, 0xa9, 0xc8, 0xbe, 0x79, 0x3a, + 0x9e, 0xa4, 0xe3, 0x69, 0x3a, 0xbe, 0x40, 0xc7, 0x17, 0xe1, 0x02, 0x1c, 0xb1, 0x3d, 0x47, 0xe7, + 0x79, 0xc6, 0x33, 0x71, 0xf3, 0xbc, 0x62, 0x92, 0x4e, 0x2f, 0xd2, 0xc9, 0x39, 0x3a, 0x19, 0xa7, + 0x13, 0xf3, 0x74, 0x32, 0x45, 0x27, 0xaf, 0xd0, 0xe9, 0x05, 0x26, 0x0a, 0x43, 0xf6, 0xb7, 0xd6, + 0xf6, 0x47, 0x24, 0xf0, 0x40, 0x07, 0xfe, 0x04, 0x9d, 0x34, 0x1a, 0x8d, 0x39, 0x0b, 0x61, 0x16, + 0x15, 0xf3, 0xf2, 0x4e, 0x01, 0x49, 0x1a, 0x3e, 0xa1, 0x17, 0xb0, 0x36, 0x29, 0x41, 0xea, 0x1f, + 0x9f, 0x01, 0xc0, 0x4c, 0xc2, 0xde, 0x5a, 0xb9, 0x47, 0x52, 0x7b, 0x3a, 0x38, 0x6d, 0x7d, 0xf9, + 0x31, 0x76, 0xa0, 0x83, 0x60, 0x3c, 0x45, 0x27, 0x16, 0xe8, 0xc4, 0x22, 0x33, 0x05, 0xc3, 0x58, + 0x31, 0x54, 0x79, 0xba, 0xc7, 0xf9, 0x40, 0x1a, 0x8e, 0xd6, 0xb3, 0x9c, 0xda, 0xe8, 0x99, 0x7d, + 0x1d, 0x9c, 0x35, 0xa2, 0x53, 0x69, 0x3a, 0xb9, 0xc8, 0xc4, 0xe1, 0x70, 0x5d, 0x5b, 0x5b, 0xb1, + 0x46, 0x5d, 0xce, 0x5b, 0x75, 0x99, 0x30, 0xea, 0x92, 0x4c, 0xd3, 0xe9, 0x14, 0x9d, 0x9c, 0x67, + 0x26, 0xe1, 0x50, 0xed, 0x5a, 0x57, 0x0b, 0x3e, 0xbd, 0xaf, 0x83, 0x29, 0x0c, 0x9e, 0xa0, 0x53, + 0x49, 0xe6, 0x03, 0x38, 0x5c, 0xb7, 0xa8, 0x59, 0xb1, 0xcb, 0x7b, 0x3a, 0x88, 0xed, 0xeb, 0x80, + 0x36, 0x80, 0x53, 0xf3, 0x74, 0x6a, 0x81, 0x4e, 0x2d, 0xfe, 0xea, 0x19, 0x98, 0x19, 0xbb, 0x6c, + 0xf4, 0x55, 0x2d, 0x57, 0x31, 0xfb, 0xaa, 0x5a, 0x44, 0x02, 0xee, 0xbd, 0x47, 0x43, 0x2d, 0x66, + 0x74, 0x64, 0x73, 0xe4, 0x32, 0xd3, 0x70, 0xd8, 0x39, 0xd7, 0xd6, 0xd6, 0x25, 0xb5, 0xaf, 0x83, + 0xa4, 0x51, 0x97, 0x74, 0x82, 0x4e, 0x27, 0x33, 0x81, 0x20, 0x24, 0x7a, 0xec, 0x1d, 0xcb, 0x31, + 0x62, 0xdc, 0xde, 0xc3, 0x34, 0x4f, 0x40, 0x9e, 0x25, 0xa2, 0xf6, 0x67, 0x29, 0x6f, 0x10, 0x17, + 0xed, 0x8f, 0x53, 0x26, 0x89, 0xa9, 0x4c, 0x20, 0x38, 0x45, 0x4c, 0x67, 0x02, 0x41, 0x9a, 0x98, + 0xc9, 0x04, 0x82, 0x49, 0x22, 0x35, 0xf1, 0x9f, 0x14, 0xec, 0x5f, 0x52, 0x10, 0xaf, 0x21, 0xdb, + 0x44, 0x5b, 0x78, 0x79, 0x13, 0xcd, 0xb4, 0xcf, 0x36, 0x4e, 0xcc, 0x3e, 0x73, 0x1a, 0x67, 0xe2, + 0xeb, 0x31, 0xce, 0xdc, 0x2c, 0xb3, 0xed, 0xd7, 0x64, 0x99, 0xb9, 0x9a, 0x65, 0xf7, 0x5b, 0x32, + 0xcb, 0xc2, 0x6e, 0x66, 0x59, 0xad, 0x35, 0x76, 0xde, 0xd5, 0xda, 0xaa, 0xb3, 0x84, 0xc6, 0x1b, + 0xcc, 0x88, 0x1a, 0xd3, 0xe1, 0x4c, 0xa3, 0xbd, 0x51, 0x6b, 0x64, 0x8c, 0xd6, 0x79, 0x12, 0xb6, + 0x03, 0x41, 0xd5, 0x39, 0x10, 0x47, 0x8e, 0xc3, 0x8d, 0x56, 0x1c, 0x87, 0x13, 0xf1, 0x1a, 0x7c, + 0x5f, 0x83, 0xd7, 0xe0, 0x73, 0x7a, 0x0d, 0x3f, 0x68, 0xcd, 0x6b, 0x08, 0xd8, 0x3e, 0xc3, 0xb5, + 0x96, 0x7c, 0x86, 0x80, 0xed, 0x31, 0xdc, 0x79, 0x59, 0x8b, 0xc1, 0x39, 0x03, 0x1c, 0x59, 0x0c, + 0x96, 0x55, 0x30, 0xe1, 0xe6, 0x1f, 0xae, 0xf8, 0x1d, 0x5e, 0xe1, 0x39, 0x17, 0xaf, 0xd0, 0x08, + 0x69, 0xdd, 0x17, 0xf4, 0x37, 0xfa, 0x82, 0x2d, 0xc9, 0xf2, 0xef, 0xb2, 0x1c, 0xbf, 0xd3, 0x92, + 0x1c, 0x6f, 0x2e, 0xc4, 0xb3, 0x27, 0x29, 0xc4, 0x9b, 0xca, 0xef, 0xcd, 0x13, 0x94, 0xdf, 0xcd, + 0x44, 0xb7, 0xfc, 0x5a, 0x44, 0x77, 0x5b, 0x6a, 0x7f, 0xaf, 0xa4, 0xf6, 0x77, 0x43, 0x12, 0x9f, + 0x88, 0xf4, 0xdc, 0x3e, 0x59, 0xe9, 0x19, 0xf0, 0x92, 0x9d, 0xad, 0xeb, 0x9f, 0xc1, 0x8f, 0xaf, + 0xd5, 0xed, 0xd9, 0x32, 0x63, 0xb5, 0xf2, 0xa3, 0x6f, 0xf7, 0x10, 0x1c, 0xfd, 0x64, 0x4e, 0x3b, + 0x84, 0x47, 0xff, 0xee, 0x21, 0xa8, 0xf9, 0xcd, 0xcc, 0x35, 0xd1, 0x12, 0xd4, 0xee, 0x21, 0x70, + 0xbd, 0xc3, 0x44, 0xeb, 0x74, 0x0a, 0xb1, 0x7b, 0x08, 0x1c, 0x57, 0x98, 0xf9, 0xe6, 0xa2, 0x63, + 0x7c, 0xf7, 0x10, 0x34, 0xbb, 0xc9, 0x24, 0x9a, 0xc9, 0x8f, 0x53, 0xbb, 0x87, 0xc0, 0xfd, 0x16, + 0x13, 0x73, 0xd7, 0x1f, 0xa3, 0xbb, 0x87, 0xc0, 0xed, 0x86, 0x51, 0x86, 0xbb, 0x0a, 0xc1, 0x65, + 0xb8, 0xde, 0x32, 0x72, 0xdc, 0x95, 0x05, 0xce, 0x71, 0xbd, 0x55, 0xa7, 0x30, 0xcc, 0xb3, 0x92, + 0xe6, 0x51, 0x07, 0x53, 0x61, 0x9c, 0x21, 0x22, 0x75, 0x3a, 0xc3, 0x54, 0x18, 0xa6, 0xda, 0x70, + 0xd7, 0x19, 0xbf, 0xa1, 0xe0, 0x80, 0x75, 0x4e, 0xf2, 0xd5, 0x85, 0x86, 0xe0, 0x22, 0x34, 0xde, + 0x7c, 0x69, 0xa1, 0x51, 0x73, 0x6c, 0xd3, 0x6d, 0xbb, 0xbe, 0xdc, 0x5c, 0x75, 0x30, 0x2d, 0xaa, + 0x0e, 0xb7, 0x12, 0x1b, 0x24, 0xc8, 0xc3, 0xe6, 0x12, 0x64, 0xa9, 0x55, 0x09, 0xe2, 0x56, 0xf0, + 0xb7, 0x4b, 0x8f, 0xb4, 0x2a, 0x39, 0x3c, 0x75, 0x4c, 0x5b, 0x8f, 0x60, 0x3d, 0xd2, 0xa6, 0xef, + 0x6d, 0xfa, 0xde, 0xa6, 0xef, 0x6d, 0xfa, 0xde, 0xa6, 0xef, 0x6d, 0xfa, 0x6e, 0xdc, 0xbd, 0xfa, + 0x0f, 0xa0, 0x81, 0x86, 0x3f, 0xd7, 0xc1, 0x2f, 0x5e, 0xcb, 0xb6, 0x44, 0xac, 0xe9, 0xb6, 0x44, + 0x38, 0x7e, 0x05, 0x6f, 0x48, 0x38, 0x77, 0x23, 0xa6, 0x6a, 0xe5, 0xc0, 0xe9, 0xba, 0xdd, 0x88, + 0xb6, 0x3a, 0xf8, 0x2e, 0xaa, 0x03, 0x2f, 0x5d, 0xf0, 0xeb, 0x08, 0xec, 0xb9, 0x85, 0xb4, 0xf6, + 0xe6, 0xc3, 0xf7, 0x64, 0xf3, 0x21, 0x71, 0xbc, 0x73, 0xb9, 0x8e, 0xc3, 0xb8, 0xaf, 0xbe, 0x61, + 0x71, 0xf5, 0x85, 0x27, 0x46, 0x9b, 0x9f, 0x0d, 0x5d, 0x7c, 0xd1, 0xd9, 0xd0, 0xa6, 0xa7, 0x40, + 0xdb, 0xdb, 0x24, 0xaf, 0x24, 0x4b, 0xde, 0x84, 0xf8, 0x58, 0x87, 0x75, 0x84, 0x63, 0x04, 0x1f, + 0xe1, 0x38, 0xe3, 0xf6, 0xac, 0xd5, 0x0f, 0xc2, 0x10, 0x8b, 0x27, 0x7f, 0xf3, 0xbc, 0xc6, 0xbd, + 0x93, 0x38, 0xbe, 0xd8, 0x70, 0x34, 0xf1, 0xc7, 0xaf, 0x78, 0x34, 0xd1, 0xeb, 0x50, 0xe2, 0x3b, + 0x8e, 0x5d, 0x99, 0x85, 0x63, 0x1c, 0xfc, 0x3c, 0x9a, 0x17, 0xdb, 0x5b, 0x32, 0x6d, 0x4d, 0xd7, + 0xd6, 0x74, 0x6d, 0x4d, 0xd7, 0x3e, 0xfd, 0xd8, 0x3e, 0xfd, 0xf8, 0xad, 0x3d, 0xfd, 0xf8, 0x75, + 0x6a, 0xd8, 0xff, 0x7f, 0x47, 0x07, 0xc3, 0x0d, 0x9a, 0xfd, 0x8b, 0x6b, 0xa0, 0xbd, 0x7b, 0xf6, + 0x2d, 0xd7, 0xc7, 0x2d, 0x68, 0x62, 0xe6, 0xef, 0xc0, 0xfe, 0x67, 0x91, 0x8e, 0x4f, 0x3e, 0x8b, + 0x74, 0x7c, 0xf9, 0x59, 0x04, 0x7c, 0x78, 0x10, 0x01, 0xff, 0x7c, 0x10, 0x01, 0xbf, 0x3f, 0x88, + 0x80, 0xfd, 0x83, 0x08, 0xf8, 0xe4, 0x20, 0x02, 0xfe, 0x70, 0x10, 0x01, 0x5f, 0x1c, 0x44, 0x3a, + 0xbe, 0x3c, 0x88, 0x80, 0xbf, 0xfd, 0x3c, 0xd2, 0xb1, 0xf7, 0x79, 0x04, 0xec, 0x7f, 0x1e, 0xe9, + 0xf8, 0xe4, 0xf3, 0x48, 0xc7, 0x8f, 0x37, 0x72, 0x72, 0x71, 0x3b, 0x17, 0xab, 0xea, 0x9d, 0x58, + 0x49, 0x9d, 0xb5, 0x8f, 0xfa, 0xce, 0x14, 0x15, 0xb9, 0x2c, 0x66, 0x91, 0x32, 0x53, 0xbd, 0x3d, + 0x5b, 0xdc, 0xcc, 0xc9, 0xb3, 0xe8, 0xa1, 0x56, 0xfd, 0x77, 0x7f, 0x9a, 0xfd, 0x43, 0x48, 0x9b, + 0x5d, 0x98, 0xee, 0x26, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x81, 0x8c, 0x4a, 0xa1, 0x33, 0x69, + 0x00, 0x00, } func (this *AWSVPCIngressGwType) Equal(that interface{}) bool { @@ -6017,6 +6228,14 @@ func (this *AWSVPCIngressGwReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } + if len(this.AzNodes) != len(that1.AzNodes) { + return false + } + for i := range this.AzNodes { + if !this.AzNodes[i].Equal(that1.AzNodes[i]) { + return false + } + } if !this.AllowedVipPort.Equal(that1.AllowedVipPort) { return false } @@ -6044,6 +6263,14 @@ func (this *AWSVPCIngressEgressGwReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } + if len(this.AzNodes) != len(that1.AzNodes) { + return false + } + for i := range this.AzNodes { + if !this.AzNodes[i].Equal(that1.AzNodes[i]) { + return false + } + } if that1.NetworkPolicyChoice == nil { if this.NetworkPolicyChoice != nil { return false @@ -6545,6 +6772,14 @@ func (this *AWSVPCVoltstackClusterReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } + if len(this.AzNodes) != len(that1.AzNodes) { + return false + } + for i := range this.AzNodes { + if !this.AzNodes[i].Equal(that1.AzNodes[i]) { + return false + } + } if that1.NetworkPolicyChoice == nil { if this.NetworkPolicyChoice != nil { return false @@ -7169,6 +7404,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if !this.TfParams.Equal(that1.TfParams) { return false } @@ -7876,6 +8114,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_IngressGw) Equal(that interface{}) bool { @@ -8425,6 +8666,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if this == nil { return false } + if !this.Vpc.Equal(that1.Vpc) { + return false + } if that1.SiteType == nil { if this.SiteType != nil { return false @@ -8443,6 +8687,18 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if !this.Deployment.Equal(that1.Deployment) { return false } + if this.InstanceType != that1.InstanceType { + return false + } + if this.AwsRegion != that1.AwsRegion { + return false + } + if this.SshKey != that1.SshKey { + return false + } + if this.DiskSize != that1.DiskSize { + return false + } if this.Address != that1.Address { return false } @@ -8497,9 +8753,30 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if !this.InternetVipChoice.Equal(that1.InternetVipChoice) { return false } + if that1.EgressGatewayChoice == nil { + if this.EgressGatewayChoice != nil { + return false + } + } else if this.EgressGatewayChoice == nil { + return false + } else if !this.EgressGatewayChoice.Equal(that1.EgressGatewayChoice) { + return false + } + if that1.SecurityGroupChoice == nil { + if this.SecurityGroupChoice != nil { + return false + } + } else if this.SecurityGroupChoice == nil { + return false + } else if !this.SecurityGroupChoice.Equal(that1.SecurityGroupChoice) { + return false + } if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *ReplaceSpecType_IngressGw) Equal(that interface{}) bool { @@ -8910,14 +9187,14 @@ func (this *ReplaceSpecType_EnableInternetVip) Equal(that interface{}) bool { } return true } -func (this *GetSpecType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_EgressGatewayDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GetSpecType) + that1, ok := that.(*ReplaceSpecType_EgressGatewayDefault) if !ok { - that2, ok := that.(GetSpecType) + that2, ok := that.(ReplaceSpecType_EgressGatewayDefault) if ok { that1 = &that2 } else { @@ -8929,31 +9206,151 @@ func (this *GetSpecType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Vpc.Equal(that1.Vpc) { + if !this.EgressGatewayDefault.Equal(that1.EgressGatewayDefault) { return false } - if that1.SiteType == nil { - if this.SiteType != nil { + return true +} +func (this *ReplaceSpecType_EgressNatGw) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_EgressNatGw) + if !ok { + that2, ok := that.(ReplaceSpecType_EgressNatGw) + if ok { + that1 = &that2 + } else { return false } - } else if this.SiteType == nil { + } + if that1 == nil { + return this == nil + } else if this == nil { return false - } else if !this.SiteType.Equal(that1.SiteType) { + } + if !this.EgressNatGw.Equal(that1.EgressNatGw) { return false } - if that1.Deployment == nil { - if this.Deployment != nil { + return true +} +func (this *ReplaceSpecType_EgressVirtualPrivateGateway) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_EgressVirtualPrivateGateway) + if !ok { + that2, ok := that.(ReplaceSpecType_EgressVirtualPrivateGateway) + if ok { + that1 = &that2 + } else { return false } - } else if this.Deployment == nil { - return false - } else if !this.Deployment.Equal(that1.Deployment) { - return false } - if this.InstanceType != that1.InstanceType { + if that1 == nil { + return this == nil + } else if this == nil { return false } - if this.DiskSize != that1.DiskSize { + if !this.EgressVirtualPrivateGateway.Equal(that1.EgressVirtualPrivateGateway) { + return false + } + return true +} +func (this *ReplaceSpecType_F5XcSecurityGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_F5XcSecurityGroup) + if !ok { + that2, ok := that.(ReplaceSpecType_F5XcSecurityGroup) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.F5XcSecurityGroup.Equal(that1.F5XcSecurityGroup) { + return false + } + return true +} +func (this *ReplaceSpecType_CustomSecurityGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_CustomSecurityGroup) + if !ok { + that2, ok := that.(ReplaceSpecType_CustomSecurityGroup) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CustomSecurityGroup.Equal(that1.CustomSecurityGroup) { + return false + } + return true +} +func (this *GetSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType) + if !ok { + that2, ok := that.(GetSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Vpc.Equal(that1.Vpc) { + return false + } + if that1.SiteType == nil { + if this.SiteType != nil { + return false + } + } else if this.SiteType == nil { + return false + } else if !this.SiteType.Equal(that1.SiteType) { + return false + } + if that1.Deployment == nil { + if this.Deployment != nil { + return false + } + } else if this.Deployment == nil { + return false + } else if !this.Deployment.Equal(that1.Deployment) { + return false + } + if this.InstanceType != that1.InstanceType { + return false + } + if this.DiskSize != that1.DiskSize { return false } if this.VolterraSoftwareVersion != that1.VolterraSoftwareVersion { @@ -9082,6 +9479,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if !this.CloudSiteInfo.Equal(that1.CloudSiteInfo) { return false } @@ -10028,8 +10428,11 @@ func (this *AWSVPCIngressGwReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 6) + s := make([]string, 0, 7) s = append(s, "&aws_vpc_site.AWSVPCIngressGwReplaceType{") + if this.AzNodes != nil { + s = append(s, "AzNodes: "+fmt.Sprintf("%#v", this.AzNodes)+",\n") + } if this.AllowedVipPort != nil { s = append(s, "AllowedVipPort: "+fmt.Sprintf("%#v", this.AllowedVipPort)+",\n") } @@ -10043,8 +10446,11 @@ func (this *AWSVPCIngressEgressGwReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 24) + s := make([]string, 0, 25) s = append(s, "&aws_vpc_site.AWSVPCIngressEgressGwReplaceType{") + if this.AzNodes != nil { + s = append(s, "AzNodes: "+fmt.Sprintf("%#v", this.AzNodes)+",\n") + } if this.NetworkPolicyChoice != nil { s = append(s, "NetworkPolicyChoice: "+fmt.Sprintf("%#v", this.NetworkPolicyChoice)+",\n") } @@ -10218,8 +10624,11 @@ func (this *AWSVPCVoltstackClusterReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 19) + s := make([]string, 0, 20) s = append(s, "&aws_vpc_site.AWSVPCVoltstackClusterReplaceType{") + if this.AzNodes != nil { + s = append(s, "AzNodes: "+fmt.Sprintf("%#v", this.AzNodes)+",\n") + } if this.NetworkPolicyChoice != nil { s = append(s, "NetworkPolicyChoice: "+fmt.Sprintf("%#v", this.NetworkPolicyChoice)+",\n") } @@ -10376,7 +10785,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 52) + s := make([]string, 0, 53) s = append(s, "&aws_vpc_site.GlobalSpecType{") if this.Vpc != nil { s = append(s, "Vpc: "+fmt.Sprintf("%#v", this.Vpc)+",\n") @@ -10456,6 +10865,9 @@ func (this *GlobalSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.TfParams != nil { s = append(s, "TfParams: "+fmt.Sprintf("%#v", this.TfParams)+",\n") } @@ -10659,7 +11071,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 38) + s := make([]string, 0, 39) s = append(s, "&aws_vpc_site.CreateSpecType{") if this.Vpc != nil { s = append(s, "Vpc: "+fmt.Sprintf("%#v", this.Vpc)+",\n") @@ -10724,6 +11136,9 @@ func (this *CreateSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -10907,14 +11322,21 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 25) + s := make([]string, 0, 36) s = append(s, "&aws_vpc_site.ReplaceSpecType{") + if this.Vpc != nil { + s = append(s, "Vpc: "+fmt.Sprintf("%#v", this.Vpc)+",\n") + } if this.SiteType != nil { s = append(s, "SiteType: "+fmt.Sprintf("%#v", this.SiteType)+",\n") } if this.Deployment != nil { s = append(s, "Deployment: "+fmt.Sprintf("%#v", this.Deployment)+",\n") } + s = append(s, "InstanceType: "+fmt.Sprintf("%#v", this.InstanceType)+",\n") + s = append(s, "AwsRegion: "+fmt.Sprintf("%#v", this.AwsRegion)+",\n") + s = append(s, "SshKey: "+fmt.Sprintf("%#v", this.SshKey)+",\n") + s = append(s, "DiskSize: "+fmt.Sprintf("%#v", this.DiskSize)+",\n") s = append(s, "Address: "+fmt.Sprintf("%#v", this.Address)+",\n") if this.Coordinates != nil { s = append(s, "Coordinates: "+fmt.Sprintf("%#v", this.Coordinates)+",\n") @@ -10937,9 +11359,18 @@ func (this *ReplaceSpecType) GoString() string { if this.InternetVipChoice != nil { s = append(s, "InternetVipChoice: "+fmt.Sprintf("%#v", this.InternetVipChoice)+",\n") } + if this.EgressGatewayChoice != nil { + s = append(s, "EgressGatewayChoice: "+fmt.Sprintf("%#v", this.EgressGatewayChoice)+",\n") + } + if this.SecurityGroupChoice != nil { + s = append(s, "SecurityGroupChoice: "+fmt.Sprintf("%#v", this.SecurityGroupChoice)+",\n") + } if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -11079,11 +11510,51 @@ func (this *ReplaceSpecType_EnableInternetVip) GoString() string { `EnableInternetVip:` + fmt.Sprintf("%#v", this.EnableInternetVip) + `}`}, ", ") return s } +func (this *ReplaceSpecType_EgressGatewayDefault) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_vpc_site.ReplaceSpecType_EgressGatewayDefault{` + + `EgressGatewayDefault:` + fmt.Sprintf("%#v", this.EgressGatewayDefault) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_EgressNatGw) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_vpc_site.ReplaceSpecType_EgressNatGw{` + + `EgressNatGw:` + fmt.Sprintf("%#v", this.EgressNatGw) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_EgressVirtualPrivateGateway) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_vpc_site.ReplaceSpecType_EgressVirtualPrivateGateway{` + + `EgressVirtualPrivateGateway:` + fmt.Sprintf("%#v", this.EgressVirtualPrivateGateway) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_F5XcSecurityGroup) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_vpc_site.ReplaceSpecType_F5XcSecurityGroup{` + + `F5XcSecurityGroup:` + fmt.Sprintf("%#v", this.F5XcSecurityGroup) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_CustomSecurityGroup) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&aws_vpc_site.ReplaceSpecType_CustomSecurityGroup{` + + `CustomSecurityGroup:` + fmt.Sprintf("%#v", this.CustomSecurityGroup) + `}`}, ", ") + return s +} func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 48) + s := make([]string, 0, 49) s = append(s, "&aws_vpc_site.GetSpecType{") if this.Vpc != nil { s = append(s, "Vpc: "+fmt.Sprintf("%#v", this.Vpc)+",\n") @@ -11157,6 +11628,9 @@ func (this *GetSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.CloudSiteInfo != nil { s = append(s, "CloudSiteInfo: "+fmt.Sprintf("%#v", this.CloudSiteInfo)+",\n") } @@ -12526,6 +13000,20 @@ func (m *AWSVPCIngressGwReplaceType) MarshalToSizedBuffer(dAtA []byte) (int, err i-- dAtA[i] = 0x1a } + if len(m.AzNodes) > 0 { + for iNdEx := len(m.AzNodes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AzNodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } return len(dAtA) - i, nil } @@ -12654,6 +13142,20 @@ func (m *AWSVPCIngressEgressGwReplaceType) MarshalToSizedBuffer(dAtA []byte) (in } } } + if len(m.AzNodes) > 0 { + for iNdEx := len(m.AzNodes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AzNodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } return len(dAtA) - i, nil } @@ -13122,6 +13624,20 @@ func (m *AWSVPCVoltstackClusterReplaceType) MarshalToSizedBuffer(dAtA []byte) (i } } } + if len(m.AzNodes) > 0 { + for iNdEx := len(m.AzNodes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.AzNodes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } return len(dAtA) - i, nil } @@ -13574,6 +14090,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xba } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -14416,6 +14946,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -15143,6 +15687,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -15166,6 +15724,24 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if m.SecurityGroupChoice != nil { + { + size := m.SecurityGroupChoice.Size() + i -= size + if _, err := m.SecurityGroupChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.EgressGatewayChoice != nil { + { + size := m.EgressGatewayChoice.Size() + i -= size + if _, err := m.EgressGatewayChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.BlockedServicesChoice != nil { { size := m.BlockedServicesChoice.Size() @@ -15248,16 +15824,54 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } - if m.Deployment != nil { - { - size := m.Deployment.Size() - i -= size - if _, err := m.Deployment.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - return len(dAtA) - i, nil + if m.DiskSize != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DiskSize)) + i-- + dAtA[i] = 0x78 + } + if len(m.SshKey) > 0 { + i -= len(m.SshKey) + copy(dAtA[i:], m.SshKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SshKey))) + i-- + dAtA[i] = 0x6a + } + if len(m.AwsRegion) > 0 { + i -= len(m.AwsRegion) + copy(dAtA[i:], m.AwsRegion) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AwsRegion))) + i-- + dAtA[i] = 0x62 + } + if len(m.InstanceType) > 0 { + i -= len(m.InstanceType) + copy(dAtA[i:], m.InstanceType) + i = encodeVarintTypes(dAtA, i, uint64(len(m.InstanceType))) + i-- + dAtA[i] = 0x32 + } + if m.Deployment != nil { + { + size := m.Deployment.Size() + i -= size + if _, err := m.Deployment.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.Vpc != nil { + { + size, err := m.Vpc.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } func (m *ReplaceSpecType_IngressGw) MarshalTo(dAtA []byte) (int, error) { @@ -15602,6 +16216,121 @@ func (m *ReplaceSpecType_BlockAllServices) MarshalToSizedBuffer(dAtA []byte) (in } return len(dAtA) - i, nil } +func (m *ReplaceSpecType_EgressGatewayDefault) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_EgressGatewayDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EgressGatewayDefault != nil { + { + size, err := m.EgressGatewayDefault.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xf2 + } + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_EgressNatGw) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_EgressNatGw) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EgressNatGw != nil { + { + size, err := m.EgressNatGw.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xfa + } + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_EgressVirtualPrivateGateway) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_EgressVirtualPrivateGateway) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EgressVirtualPrivateGateway != nil { + { + size, err := m.EgressVirtualPrivateGateway.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_F5XcSecurityGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_F5XcSecurityGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.F5XcSecurityGroup != nil { + { + size, err := m.F5XcSecurityGroup.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xa2 + } + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_CustomSecurityGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_CustomSecurityGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CustomSecurityGroup != nil { + { + size, err := m.CustomSecurityGroup.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xaa + } + return len(dAtA) - i, nil +} func (m *ReplaceSpecType_PrivateConnectivity) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -15673,6 +16402,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xca } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -17028,6 +17771,12 @@ func (m *AWSVPCIngressGwReplaceType) Size() (n int) { } var l int _ = l + if len(m.AzNodes) > 0 { + for _, e := range m.AzNodes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } if m.AllowedVipPort != nil { l = m.AllowedVipPort.Size() n += 1 + l + sovTypes(uint64(l)) @@ -17045,6 +17794,12 @@ func (m *AWSVPCIngressEgressGwReplaceType) Size() (n int) { } var l int _ = l + if len(m.AzNodes) > 0 { + for _, e := range m.AzNodes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } if m.NetworkPolicyChoice != nil { n += m.NetworkPolicyChoice.Size() } @@ -17291,6 +18046,12 @@ func (m *AWSVPCVoltstackClusterReplaceType) Size() (n int) { } var l int _ = l + if len(m.AzNodes) > 0 { + for _, e := range m.AzNodes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } if m.NetworkPolicyChoice != nil { n += m.NetworkPolicyChoice.Size() } @@ -17642,6 +18403,10 @@ func (m *GlobalSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.TfParams != nil { l = m.TfParams.Size() n += 2 + l + sovTypes(uint64(l)) @@ -18015,6 +18780,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -18282,15 +19051,34 @@ func (m *ReplaceSpecType) Size() (n int) { } var l int _ = l + if m.Vpc != nil { + l = m.Vpc.Size() + n += 1 + l + sovTypes(uint64(l)) + } if m.SiteType != nil { n += m.SiteType.Size() } if m.Deployment != nil { n += m.Deployment.Size() } + l = len(m.InstanceType) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.AwsRegion) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.SshKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.WorkerNodes != nil { n += m.WorkerNodes.Size() } + if m.DiskSize != 0 { + n += 1 + sovTypes(uint64(m.DiskSize)) + } l = len(m.Address) if l > 0 { n += 2 + l + sovTypes(uint64(l)) @@ -18315,10 +19103,20 @@ func (m *ReplaceSpecType) Size() (n int) { if m.InternetVipChoice != nil { n += m.InternetVipChoice.Size() } + if m.EgressGatewayChoice != nil { + n += m.EgressGatewayChoice.Size() + } + if m.SecurityGroupChoice != nil { + n += m.SecurityGroupChoice.Size() + } if m.CustomDns != nil { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -18508,44 +19306,104 @@ func (m *ReplaceSpecType_BlockAllServices) Size() (n int) { } return n } -func (m *ReplaceSpecType_PrivateConnectivity) Size() (n int) { +func (m *ReplaceSpecType_EgressGatewayDefault) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.PrivateConnectivity != nil { - l = m.PrivateConnectivity.Size() + if m.EgressGatewayDefault != nil { + l = m.EgressGatewayDefault.Size() n += 2 + l + sovTypes(uint64(l)) } return n } -func (m *GetSpecType) Size() (n int) { +func (m *ReplaceSpecType_EgressNatGw) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Vpc != nil { - l = m.Vpc.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.EgressNatGw != nil { + l = m.EgressNatGw.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.SiteType != nil { - n += m.SiteType.Size() + return n +} +func (m *ReplaceSpecType_EgressVirtualPrivateGateway) Size() (n int) { + if m == nil { + return 0 } - if m.Deployment != nil { - n += m.Deployment.Size() + var l int + _ = l + if m.EgressVirtualPrivateGateway != nil { + l = m.EgressVirtualPrivateGateway.Size() + n += 2 + l + sovTypes(uint64(l)) } - l = len(m.InstanceType) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *ReplaceSpecType_F5XcSecurityGroup) Size() (n int) { + if m == nil { + return 0 } - l = len(m.VolterraSoftwareVersion) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) + var l int + _ = l + if m.F5XcSecurityGroup != nil { + l = m.F5XcSecurityGroup.Size() + n += 2 + l + sovTypes(uint64(l)) } - l = len(m.OperatingSystemVersion) - if l > 0 { + return n +} +func (m *ReplaceSpecType_CustomSecurityGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CustomSecurityGroup != nil { + l = m.CustomSecurityGroup.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ReplaceSpecType_PrivateConnectivity) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PrivateConnectivity != nil { + l = m.PrivateConnectivity.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Vpc != nil { + l = m.Vpc.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.SiteType != nil { + n += m.SiteType.Size() + } + if m.Deployment != nil { + n += m.Deployment.Size() + } + l = len(m.InstanceType) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.VolterraSoftwareVersion) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.OperatingSystemVersion) + if l > 0 { n += 1 + l + sovTypes(uint64(l)) } l = len(m.AwsRegion) @@ -18634,6 +19492,10 @@ func (m *GetSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.CloudSiteInfo != nil { l = m.CloudSiteInfo.Size() n += 2 + l + sovTypes(uint64(l)) @@ -19345,7 +20207,13 @@ func (this *AWSVPCIngressGwReplaceType) String() string { if this == nil { return "nil" } + repeatedStringForAzNodes := "[]*AWSVPCOneInterfaceNodeType{" + for _, f := range this.AzNodes { + repeatedStringForAzNodes += strings.Replace(fmt.Sprintf("%v", f), "AWSVPCOneInterfaceNodeType", "views.AWSVPCOneInterfaceNodeType", 1) + "," + } + repeatedStringForAzNodes += "}" s := strings.Join([]string{`&AWSVPCIngressGwReplaceType{`, + `AzNodes:` + repeatedStringForAzNodes + `,`, `AllowedVipPort:` + strings.Replace(fmt.Sprintf("%v", this.AllowedVipPort), "AllowedVIPPorts", "views.AllowedVIPPorts", 1) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `}`, @@ -19356,7 +20224,13 @@ func (this *AWSVPCIngressEgressGwReplaceType) String() string { if this == nil { return "nil" } + repeatedStringForAzNodes := "[]*AWSVPCTwoInterfaceNodeType{" + for _, f := range this.AzNodes { + repeatedStringForAzNodes += strings.Replace(fmt.Sprintf("%v", f), "AWSVPCTwoInterfaceNodeType", "views.AWSVPCTwoInterfaceNodeType", 1) + "," + } + repeatedStringForAzNodes += "}" s := strings.Join([]string{`&AWSVPCIngressEgressGwReplaceType{`, + `AzNodes:` + repeatedStringForAzNodes + `,`, `NetworkPolicyChoice:` + fmt.Sprintf("%v", this.NetworkPolicyChoice) + `,`, `ForwardProxyChoice:` + fmt.Sprintf("%v", this.ForwardProxyChoice) + `,`, `InsideStaticRouteChoice:` + fmt.Sprintf("%v", this.InsideStaticRouteChoice) + `,`, @@ -19545,7 +20419,13 @@ func (this *AWSVPCVoltstackClusterReplaceType) String() string { if this == nil { return "nil" } + repeatedStringForAzNodes := "[]*AWSVPCOneInterfaceNodeType{" + for _, f := range this.AzNodes { + repeatedStringForAzNodes += strings.Replace(fmt.Sprintf("%v", f), "AWSVPCOneInterfaceNodeType", "views.AWSVPCOneInterfaceNodeType", 1) + "," + } + repeatedStringForAzNodes += "}" s := strings.Join([]string{`&AWSVPCVoltstackClusterReplaceType{`, + `AzNodes:` + repeatedStringForAzNodes + `,`, `NetworkPolicyChoice:` + fmt.Sprintf("%v", this.NetworkPolicyChoice) + `,`, `ForwardProxyChoice:` + fmt.Sprintf("%v", this.ForwardProxyChoice) + `,`, `OutsideStaticRouteChoice:` + fmt.Sprintf("%v", this.OutsideStaticRouteChoice) + `,`, @@ -19771,6 +20651,7 @@ func (this *GlobalSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `TfParams:` + strings.Replace(fmt.Sprintf("%v", this.TfParams), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `CloudSiteInfo:` + strings.Replace(this.CloudSiteInfo.String(), "AWSVPCSiteInfoType", "AWSVPCSiteInfoType", 1) + `,`, @@ -20045,6 +20926,7 @@ func (this *CreateSpecType) String() string { `EgressGatewayChoice:` + fmt.Sprintf("%v", this.EgressGatewayChoice) + `,`, `SecurityGroupChoice:` + fmt.Sprintf("%v", this.SecurityGroupChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -20274,9 +21156,14 @@ func (this *ReplaceSpecType) String() string { return "nil" } s := strings.Join([]string{`&ReplaceSpecType{`, + `Vpc:` + strings.Replace(fmt.Sprintf("%v", this.Vpc), "AWSVPCchoiceType", "views.AWSVPCchoiceType", 1) + `,`, `SiteType:` + fmt.Sprintf("%v", this.SiteType) + `,`, `Deployment:` + fmt.Sprintf("%v", this.Deployment) + `,`, + `InstanceType:` + fmt.Sprintf("%v", this.InstanceType) + `,`, + `AwsRegion:` + fmt.Sprintf("%v", this.AwsRegion) + `,`, + `SshKey:` + fmt.Sprintf("%v", this.SshKey) + `,`, `WorkerNodes:` + fmt.Sprintf("%v", this.WorkerNodes) + `,`, + `DiskSize:` + fmt.Sprintf("%v", this.DiskSize) + `,`, `Address:` + fmt.Sprintf("%v", this.Address) + `,`, `Coordinates:` + strings.Replace(fmt.Sprintf("%v", this.Coordinates), "Coordinates", "site.Coordinates", 1) + `,`, `LogsReceiverChoice:` + fmt.Sprintf("%v", this.LogsReceiverChoice) + `,`, @@ -20284,7 +21171,10 @@ func (this *ReplaceSpecType) String() string { `DirectConnectChoice:` + fmt.Sprintf("%v", this.DirectConnectChoice) + `,`, `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `InternetVipChoice:` + fmt.Sprintf("%v", this.InternetVipChoice) + `,`, + `EgressGatewayChoice:` + fmt.Sprintf("%v", this.EgressGatewayChoice) + `,`, + `SecurityGroupChoice:` + fmt.Sprintf("%v", this.SecurityGroupChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -20449,6 +21339,56 @@ func (this *ReplaceSpecType_BlockAllServices) String() string { }, "") return s } +func (this *ReplaceSpecType_EgressGatewayDefault) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_EgressGatewayDefault{`, + `EgressGatewayDefault:` + strings.Replace(fmt.Sprintf("%v", this.EgressGatewayDefault), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_EgressNatGw) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_EgressNatGw{`, + `EgressNatGw:` + strings.Replace(fmt.Sprintf("%v", this.EgressNatGw), "AWSNATGatewaychoiceType", "views.AWSNATGatewaychoiceType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_EgressVirtualPrivateGateway) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_EgressVirtualPrivateGateway{`, + `EgressVirtualPrivateGateway:` + strings.Replace(fmt.Sprintf("%v", this.EgressVirtualPrivateGateway), "AWSVirtualPrivateGatewaychoiceType", "views.AWSVirtualPrivateGatewaychoiceType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_F5XcSecurityGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_F5XcSecurityGroup{`, + `F5XcSecurityGroup:` + strings.Replace(fmt.Sprintf("%v", this.F5XcSecurityGroup), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_CustomSecurityGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_CustomSecurityGroup{`, + `CustomSecurityGroup:` + strings.Replace(fmt.Sprintf("%v", this.CustomSecurityGroup), "SecurityGroupType", "views.SecurityGroupType", 1) + `,`, + `}`, + }, "") + return s +} func (this *ReplaceSpecType_PrivateConnectivity) String() string { if this == nil { return "nil" @@ -20512,6 +21452,7 @@ func (this *GetSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `CloudSiteInfo:` + strings.Replace(this.CloudSiteInfo.String(), "AWSVPCSiteInfoType", "AWSVPCSiteInfoType", 1) + `,`, `DirectConnectInfo:` + strings.Replace(fmt.Sprintf("%v", this.DirectConnectInfo), "DirectConnectInfo", "views.DirectConnectInfo", 1) + `,`, `}`, @@ -22583,6 +23524,40 @@ func (m *AWSVPCIngressGwReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: AWSVPCIngressGwReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AzNodes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AzNodes = append(m.AzNodes, &views.AWSVPCOneInterfaceNodeType{}) + if err := m.AzNodes[len(m.AzNodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 3: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field AllowedVipPort", wireType) @@ -22708,6 +23683,40 @@ func (m *AWSVPCIngressEgressGwReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: AWSVPCIngressEgressGwReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AzNodes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AzNodes = append(m.AzNodes, &views.AWSVPCTwoInterfaceNodeType{}) + if err := m.AzNodes[len(m.AzNodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 2: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field NoNetworkPolicy", wireType) @@ -23464,6 +24473,40 @@ func (m *AWSVPCVoltstackClusterReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: AWSVPCVoltstackClusterReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AzNodes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AzNodes = append(m.AzNodes, &views.AWSVPCOneInterfaceNodeType{}) + if err := m.AzNodes[len(m.AzNodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field NoNetworkPolicy", wireType) @@ -25806,6 +26849,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 999: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field TfParams", wireType) @@ -27233,11 +28312,47 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } if skippy < 0 { return ErrInvalidLengthTypes @@ -27286,6 +28401,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Vpc", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Vpc == nil { + m.Vpc = &views.AWSVPCchoiceType{} + } + if err := m.Vpc.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 2: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field IngressGw", wireType) @@ -27391,6 +28542,102 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.Deployment = &ReplaceSpecType_AwsCred{v} iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InstanceType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InstanceType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AwsRegion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AwsRegion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SshKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SshKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 14: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field NodesPerAz", wireType) @@ -27411,6 +28658,25 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } } m.WorkerNodes = &ReplaceSpecType_NodesPerAz{v} + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DiskSize", wireType) + } + m.DiskSize = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DiskSize |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } case 16: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field VoltstackCluster", wireType) @@ -27920,6 +29186,181 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.BlockedServicesChoice = &ReplaceSpecType_BlockAllServices{v} iNdEx = postIndex + case 46: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EgressGatewayDefault", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.EgressGatewayChoice = &ReplaceSpecType_EgressGatewayDefault{v} + iNdEx = postIndex + case 47: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EgressNatGw", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.AWSNATGatewaychoiceType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.EgressGatewayChoice = &ReplaceSpecType_EgressNatGw{v} + iNdEx = postIndex + case 48: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EgressVirtualPrivateGateway", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.AWSVirtualPrivateGatewaychoiceType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.EgressGatewayChoice = &ReplaceSpecType_EgressVirtualPrivateGateway{v} + iNdEx = postIndex + case 52: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field F5XcSecurityGroup", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.SecurityGroupChoice = &ReplaceSpecType_F5XcSecurityGroup{v} + iNdEx = postIndex + case 53: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomSecurityGroup", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.SecurityGroupType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.SecurityGroupChoice = &ReplaceSpecType_CustomSecurityGroup{v} + iNdEx = postIndex case 54: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field PrivateConnectivity", wireType) @@ -27991,6 +29432,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -29507,6 +30984,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1001: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field CloudSiteInfo", wireType) diff --git a/pbgo/extschema/schema/views/aws_vpc_site/types.vesmsg.go b/pbgo/extschema/schema/views/aws_vpc_site/types.vesmsg.go index dca23617e..8931c6db9 100644 --- a/pbgo/extschema/schema/views/aws_vpc_site/types.vesmsg.go +++ b/pbgo/extschema/schema/views/aws_vpc_site/types.vesmsg.go @@ -448,6 +448,54 @@ func (v *ValidateAWSVPCIngressEgressGwReplaceType) SiteMeshGroupChoiceValidation return validatorFn, nil } +func (v *ValidateAWSVPCIngressEgressGwReplaceType) AzNodesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for az_nodes") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.AWSVPCTwoInterfaceNodeType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.AWSVPCTwoInterfaceNodeTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for az_nodes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.AWSVPCTwoInterfaceNodeType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.AWSVPCTwoInterfaceNodeType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated az_nodes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items az_nodes") + } + return nil + } + + return validatorFn, nil +} + func (v *ValidateAWSVPCIngressEgressGwReplaceType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*AWSVPCIngressEgressGwReplaceType) if !ok { @@ -480,6 +528,14 @@ func (v *ValidateAWSVPCIngressEgressGwReplaceType) Validate(ctx context.Context, } + if fv, exists := v.FldValidators["az_nodes"]; exists { + vOpts := append(opts, db.WithValidateField("az_nodes")) + if err := fv(ctx, m.GetAzNodes(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["dc_cluster_group_choice"]; exists { val := m.GetDcClusterGroupChoice() vOpts := append(opts, @@ -866,6 +922,18 @@ var DefaultAWSVPCIngressEgressGwReplaceTypeValidator = func() *ValidateAWSVPCIng } v.FldValidators["site_mesh_group_choice"] = vFn + vrhAzNodes := v.AzNodesValidationRuleHandler + rulesAzNodes := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3", + } + vFn, err = vrhAzNodes(rulesAzNodes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AWSVPCIngressEgressGwReplaceType.az_nodes: %s", err) + panic(errMsg) + } + v.FldValidators["az_nodes"] = vFn + v.FldValidators["dc_cluster_group_choice.dc_cluster_group_outside_vn"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["dc_cluster_group_choice.dc_cluster_group_inside_vn"] = ves_io_schema_views.ObjectRefTypeValidator().Validate @@ -1899,6 +1967,54 @@ type ValidateAWSVPCIngressGwReplaceType struct { FldValidators map[string]db.ValidatorFunc } +func (v *ValidateAWSVPCIngressGwReplaceType) AzNodesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for az_nodes") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.AWSVPCOneInterfaceNodeType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.AWSVPCOneInterfaceNodeTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for az_nodes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.AWSVPCOneInterfaceNodeType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.AWSVPCOneInterfaceNodeType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated az_nodes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items az_nodes") + } + return nil + } + + return validatorFn, nil +} + func (v *ValidateAWSVPCIngressGwReplaceType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*AWSVPCIngressGwReplaceType) if !ok { @@ -1922,6 +2038,14 @@ func (v *ValidateAWSVPCIngressGwReplaceType) Validate(ctx context.Context, pm in } + if fv, exists := v.FldValidators["az_nodes"]; exists { + vOpts := append(opts, db.WithValidateField("az_nodes")) + if err := fv(ctx, m.GetAzNodes(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["performance_enhancement_mode"]; exists { vOpts := append(opts, db.WithValidateField("performance_enhancement_mode")) @@ -1938,6 +2062,26 @@ func (v *ValidateAWSVPCIngressGwReplaceType) Validate(ctx context.Context, pm in var DefaultAWSVPCIngressGwReplaceTypeValidator = func() *ValidateAWSVPCIngressGwReplaceType { v := &ValidateAWSVPCIngressGwReplaceType{FldValidators: map[string]db.ValidatorFunc{}} + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAzNodes := v.AzNodesValidationRuleHandler + rulesAzNodes := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3", + } + vFn, err = vrhAzNodes(rulesAzNodes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AWSVPCIngressGwReplaceType.az_nodes: %s", err) + panic(errMsg) + } + v.FldValidators["az_nodes"] = vFn + v.FldValidators["allowed_vip_port"] = ves_io_schema_views.AllowedVIPPortsValidator().Validate v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate @@ -2796,6 +2940,54 @@ func (v *ValidateAWSVPCVoltstackClusterReplaceType) SiteMeshGroupChoiceValidatio return validatorFn, nil } +func (v *ValidateAWSVPCVoltstackClusterReplaceType) AzNodesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for az_nodes") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.AWSVPCOneInterfaceNodeType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.AWSVPCOneInterfaceNodeTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for az_nodes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.AWSVPCOneInterfaceNodeType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.AWSVPCOneInterfaceNodeType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated az_nodes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items az_nodes") + } + return nil + } + + return validatorFn, nil +} + func (v *ValidateAWSVPCVoltstackClusterReplaceType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*AWSVPCVoltstackClusterReplaceType) if !ok { @@ -2819,6 +3011,14 @@ func (v *ValidateAWSVPCVoltstackClusterReplaceType) Validate(ctx context.Context } + if fv, exists := v.FldValidators["az_nodes"]; exists { + vOpts := append(opts, db.WithValidateField("az_nodes")) + if err := fv(ctx, m.GetAzNodes(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["dc_cluster_group_choice"]; exists { val := m.GetDcClusterGroupChoice() vOpts := append(opts, @@ -3138,6 +3338,18 @@ var DefaultAWSVPCVoltstackClusterReplaceTypeValidator = func() *ValidateAWSVPCVo } v.FldValidators["site_mesh_group_choice"] = vFn + vrhAzNodes := v.AzNodesValidationRuleHandler + rulesAzNodes := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.num_items": "1,3", + } + vFn, err = vrhAzNodes(rulesAzNodes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AWSVPCVoltstackClusterReplaceType.az_nodes: %s", err) + panic(errMsg) + } + v.FldValidators["az_nodes"] = vFn + v.FldValidators["dc_cluster_group_choice.dc_cluster_group"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["forward_proxy_choice.active_forward_proxy_policies"] = ves_io_schema_network_firewall.ActiveForwardProxyPoliciesTypeValidator().Validate @@ -4882,6 +5094,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -5266,6 +5487,7 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -5339,6 +5561,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -6199,6 +6423,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -6661,6 +6894,7 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -6742,6 +6976,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["cloud_site_info"] = AWSVPCSiteInfoTypeValidator().Validate v.FldValidators["direct_connect_info"] = ves_io_schema_views.DirectConnectInfoValidator().Validate @@ -7716,6 +7952,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -8214,6 +8459,7 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -8299,6 +8545,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["tf_params"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate @@ -8627,6 +8875,14 @@ func (v *ValidateReplaceSpecType) DirectConnectChoiceValidationRuleHandler(rules return validatorFn, nil } +func (v *ValidateReplaceSpecType) EgressGatewayChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for egress_gateway_choice") + } + return validatorFn, nil +} + func (v *ValidateReplaceSpecType) InternetVipChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { @@ -8643,6 +8899,14 @@ func (v *ValidateReplaceSpecType) LogsReceiverChoiceValidationRuleHandler(rules return validatorFn, nil } +func (v *ValidateReplaceSpecType) SecurityGroupChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for security_group_choice") + } + return validatorFn, nil +} + func (v *ValidateReplaceSpecType) SiteTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { @@ -8674,28 +8938,68 @@ func (v *ValidateReplaceSpecType) WorkerNodesTotalNodesValidationRuleHandler(rul return oValidatorFn_TotalNodes, nil } -func (v *ValidateReplaceSpecType) AddressValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) InstanceTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for address") + return nil, errors.Wrap(err, "ValidationRuleHandler for instance_type") } return validatorFn, nil } -func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ReplaceSpecType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) - } - } - if m == nil { - return nil +func (v *ValidateReplaceSpecType) AwsRegionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for aws_region") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) SshKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ssh_key") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) DiskSizeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for disk_size") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) AddressValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for address") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + } + } + if m == nil { + return nil } if fv, exists := v.FldValidators["address"]; exists { @@ -8707,6 +9011,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["aws_region"]; exists { + + vOpts := append(opts, db.WithValidateField("aws_region")) + if err := fv(ctx, m.GetAwsRegion(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["blocked_services_choice"]; exists { val := m.GetBlockedServicesChoice() vOpts := append(opts, @@ -8844,6 +9157,71 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["disk_size"]; exists { + + vOpts := append(opts, db.WithValidateField("disk_size")) + if err := fv(ctx, m.GetDiskSize(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["egress_gateway_choice"]; exists { + val := m.GetEgressGatewayChoice() + vOpts := append(opts, + db.WithValidateField("egress_gateway_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetEgressGatewayChoice().(type) { + case *ReplaceSpecType_EgressGatewayDefault: + if fv, exists := v.FldValidators["egress_gateway_choice.egress_gateway_default"]; exists { + val := m.GetEgressGatewayChoice().(*ReplaceSpecType_EgressGatewayDefault).EgressGatewayDefault + vOpts := append(opts, + db.WithValidateField("egress_gateway_choice"), + db.WithValidateField("egress_gateway_default"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_EgressNatGw: + if fv, exists := v.FldValidators["egress_gateway_choice.egress_nat_gw"]; exists { + val := m.GetEgressGatewayChoice().(*ReplaceSpecType_EgressNatGw).EgressNatGw + vOpts := append(opts, + db.WithValidateField("egress_gateway_choice"), + db.WithValidateField("egress_nat_gw"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_EgressVirtualPrivateGateway: + if fv, exists := v.FldValidators["egress_gateway_choice.egress_virtual_private_gateway"]; exists { + val := m.GetEgressGatewayChoice().(*ReplaceSpecType_EgressVirtualPrivateGateway).EgressVirtualPrivateGateway + vOpts := append(opts, + db.WithValidateField("egress_gateway_choice"), + db.WithValidateField("egress_virtual_private_gateway"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["instance_type"]; exists { + + vOpts := append(opts, db.WithValidateField("instance_type")) + if err := fv(ctx, m.GetInstanceType(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["internet_vip_choice"]; exists { val := m.GetInternetVipChoice() vOpts := append(opts, @@ -8880,6 +9258,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -8925,6 +9312,42 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["security_group_choice"]; exists { + val := m.GetSecurityGroupChoice() + vOpts := append(opts, + db.WithValidateField("security_group_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetSecurityGroupChoice().(type) { + case *ReplaceSpecType_F5XcSecurityGroup: + if fv, exists := v.FldValidators["security_group_choice.f5xc_security_group"]; exists { + val := m.GetSecurityGroupChoice().(*ReplaceSpecType_F5XcSecurityGroup).F5XcSecurityGroup + vOpts := append(opts, + db.WithValidateField("security_group_choice"), + db.WithValidateField("f5xc_security_group"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_CustomSecurityGroup: + if fv, exists := v.FldValidators["security_group_choice.custom_security_group"]; exists { + val := m.GetSecurityGroupChoice().(*ReplaceSpecType_CustomSecurityGroup).CustomSecurityGroup + vOpts := append(opts, + db.WithValidateField("security_group_choice"), + db.WithValidateField("custom_security_group"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["site_type"]; exists { val := m.GetSiteType() vOpts := append(opts, @@ -8972,6 +9395,24 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["ssh_key"]; exists { + + vOpts := append(opts, db.WithValidateField("ssh_key")) + if err := fv(ctx, m.GetSshKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vpc"]; exists { + + vOpts := append(opts, db.WithValidateField("vpc")) + if err := fv(ctx, m.GetVpc(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["worker_nodes"]; exists { val := m.GetWorkerNodes() vOpts := append(opts, @@ -9067,6 +9508,17 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { } v.FldValidators["direct_connect_choice"] = vFn + vrhEgressGatewayChoice := v.EgressGatewayChoiceValidationRuleHandler + rulesEgressGatewayChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhEgressGatewayChoice(rulesEgressGatewayChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.egress_gateway_choice: %s", err) + panic(errMsg) + } + v.FldValidators["egress_gateway_choice"] = vFn + vrhInternetVipChoice := v.InternetVipChoiceValidationRuleHandler rulesInternetVipChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", @@ -9089,6 +9541,17 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { } v.FldValidators["logs_receiver_choice"] = vFn + vrhSecurityGroupChoice := v.SecurityGroupChoiceValidationRuleHandler + rulesSecurityGroupChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhSecurityGroupChoice(rulesSecurityGroupChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.security_group_choice: %s", err) + panic(errMsg) + } + v.FldValidators["security_group_choice"] = vFn + vrhSiteType := v.SiteTypeValidationRuleHandler rulesSiteType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", @@ -9135,6 +9598,53 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["worker_nodes.nodes_per_az"] = vFnMap["worker_nodes.nodes_per_az"] v.FldValidators["worker_nodes.total_nodes"] = vFnMap["worker_nodes.total_nodes"] + vrhInstanceType := v.InstanceTypeValidationRuleHandler + rulesInstanceType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhInstanceType(rulesInstanceType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.instance_type: %s", err) + panic(errMsg) + } + v.FldValidators["instance_type"] = vFn + + vrhAwsRegion := v.AwsRegionValidationRuleHandler + rulesAwsRegion := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhAwsRegion(rulesAwsRegion) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.aws_region: %s", err) + panic(errMsg) + } + v.FldValidators["aws_region"] = vFn + + vrhSshKey := v.SshKeyValidationRuleHandler + rulesSshKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", + } + vFn, err = vrhSshKey(rulesSshKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.ssh_key: %s", err) + panic(errMsg) + } + v.FldValidators["ssh_key"] = vFn + + vrhDiskSize := v.DiskSizeValidationRuleHandler + rulesDiskSize := map[string]string{ + "ves.io.schema.rules.uint32.lte": "2048", + } + vFn, err = vrhDiskSize(rulesDiskSize) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.disk_size: %s", err) + panic(errMsg) + } + v.FldValidators["disk_size"] = vFn + vrhAddress := v.AddressValidationRuleHandler rulesAddress := map[string]string{ "ves.io.schema.rules.string.max_len": "256", @@ -9153,18 +9663,27 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["direct_connect_choice.direct_connect_enabled"] = ves_io_schema_views.DirectConnectConfigTypeValidator().Validate v.FldValidators["direct_connect_choice.private_connectivity"] = ves_io_schema_views.PrivateConnectConfigTypeValidator().Validate + v.FldValidators["egress_gateway_choice.egress_nat_gw"] = ves_io_schema_views.AWSNATGatewaychoiceTypeValidator().Validate + v.FldValidators["egress_gateway_choice.egress_virtual_private_gateway"] = ves_io_schema_views.AWSVirtualPrivateGatewaychoiceTypeValidator().Validate + v.FldValidators["logs_receiver_choice.log_receiver"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + v.FldValidators["security_group_choice.custom_security_group"] = ves_io_schema_views.SecurityGroupTypeValidator().Validate + v.FldValidators["site_type.ingress_gw"] = AWSVPCIngressGwReplaceTypeValidator().Validate v.FldValidators["site_type.ingress_egress_gw"] = AWSVPCIngressEgressGwReplaceTypeValidator().Validate v.FldValidators["site_type.voltstack_cluster"] = AWSVPCVoltstackClusterReplaceTypeValidator().Validate + v.FldValidators["vpc"] = ves_io_schema_views.AWSVPCchoiceTypeValidator().Validate + v.FldValidators["coordinates"] = ves_io_schema_site.CoordinatesValidator().Validate v.FldValidators["offline_survivability_mode"] = ves_io_schema_views.OfflineSurvivabilityModeTypeValidator().Validate v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -9441,6 +9960,7 @@ func (m *AWSVPCIngressEgressGwReplaceType) fromAWSVPCIngressEgressGwType(f *AWSV } m.AllowedVipPort = f.GetAllowedVipPort() m.AllowedVipPortSli = f.GetAllowedVipPortSli() + m.AzNodes = f.GetAzNodes() m.GetDcClusterGroupChoiceFromAWSVPCIngressEgressGwType(f) m.GetForwardProxyChoiceFromAWSVPCIngressEgressGwType(f) m.GetGlobalNetworkChoiceFromAWSVPCIngressEgressGwType(f) @@ -9468,6 +9988,7 @@ func (m *AWSVPCIngressEgressGwReplaceType) toAWSVPCIngressEgressGwType(f *AWSVPC f.AllowedVipPort = m1.AllowedVipPort f.AllowedVipPortSli = m1.AllowedVipPortSli + f.AzNodes = m1.AzNodes m1.SetDcClusterGroupChoiceToAWSVPCIngressEgressGwType(f) m1.SetForwardProxyChoiceToAWSVPCIngressEgressGwType(f) m1.SetGlobalNetworkChoiceToAWSVPCIngressEgressGwType(f) @@ -9491,6 +10012,7 @@ func (m *AWSVPCIngressGwReplaceType) fromAWSVPCIngressGwType(f *AWSVPCIngressGwT return } m.AllowedVipPort = f.GetAllowedVipPort() + m.AzNodes = f.GetAzNodes() m.PerformanceEnhancementMode = f.GetPerformanceEnhancementMode() } @@ -9510,6 +10032,7 @@ func (m *AWSVPCIngressGwReplaceType) toAWSVPCIngressGwType(f *AWSVPCIngressGwTyp _ = m1 f.AllowedVipPort = m1.AllowedVipPort + f.AzNodes = m1.AzNodes f.PerformanceEnhancementMode = m1.PerformanceEnhancementMode } @@ -9748,6 +10271,7 @@ func (m *AWSVPCVoltstackClusterReplaceType) fromAWSVPCVoltstackClusterType(f *AW return } m.AllowedVipPort = f.GetAllowedVipPort() + m.AzNodes = f.GetAzNodes() m.GetDcClusterGroupChoiceFromAWSVPCVoltstackClusterType(f) m.GetForwardProxyChoiceFromAWSVPCVoltstackClusterType(f) m.GetGlobalNetworkChoiceFromAWSVPCVoltstackClusterType(f) @@ -9772,6 +10296,7 @@ func (m *AWSVPCVoltstackClusterReplaceType) toAWSVPCVoltstackClusterType(f *AWSV _ = m1 f.AllowedVipPort = m1.AllowedVipPort + f.AzNodes = m1.AzNodes m1.SetDcClusterGroupChoiceToAWSVPCVoltstackClusterType(f) m1.SetForwardProxyChoiceToAWSVPCVoltstackClusterType(f) m1.SetGlobalNetworkChoiceToAWSVPCVoltstackClusterType(f) @@ -10142,6 +10667,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.GetEgressGatewayChoiceFromGlobalSpecType(f) m.InstanceType = f.GetInstanceType() m.GetInternetVipChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() m.Os = f.GetOs() @@ -10180,6 +10706,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetEgressGatewayChoiceToGlobalSpecType(f) f.InstanceType = m1.InstanceType m1.SetInternetVipChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode f.Os = m1.Os @@ -10563,6 +11090,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.ErrorDescription = f.GetErrorDescription() m.InstanceType = f.GetInstanceType() m.GetInternetVipChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() m.OperatingSystemVersion = f.GetOperatingSystemVersion() @@ -10610,6 +11138,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.ErrorDescription = m1.ErrorDescription f.InstanceType = m1.InstanceType m1.SetInternetVipChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode f.OperatingSystemVersion = m1.OperatingSystemVersion @@ -10747,6 +11276,47 @@ func (r *ReplaceSpecType) GetDirectConnectChoiceFromGlobalSpecType(o *GlobalSpec return nil } +// create setters in ReplaceSpecType from GlobalSpecType for oneof fields +func (r *ReplaceSpecType) SetEgressGatewayChoiceToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.EgressGatewayChoice.(type) { + case nil: + o.EgressGatewayChoice = nil + + case *ReplaceSpecType_EgressGatewayDefault: + o.EgressGatewayChoice = &GlobalSpecType_EgressGatewayDefault{EgressGatewayDefault: of.EgressGatewayDefault} + + case *ReplaceSpecType_EgressNatGw: + o.EgressGatewayChoice = &GlobalSpecType_EgressNatGw{EgressNatGw: of.EgressNatGw} + + case *ReplaceSpecType_EgressVirtualPrivateGateway: + o.EgressGatewayChoice = &GlobalSpecType_EgressVirtualPrivateGateway{EgressVirtualPrivateGateway: of.EgressVirtualPrivateGateway} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ReplaceSpecType) GetEgressGatewayChoiceFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.EgressGatewayChoice.(type) { + case nil: + r.EgressGatewayChoice = nil + + case *GlobalSpecType_EgressGatewayDefault: + r.EgressGatewayChoice = &ReplaceSpecType_EgressGatewayDefault{EgressGatewayDefault: of.EgressGatewayDefault} + + case *GlobalSpecType_EgressNatGw: + r.EgressGatewayChoice = &ReplaceSpecType_EgressNatGw{EgressNatGw: of.EgressNatGw} + + case *GlobalSpecType_EgressVirtualPrivateGateway: + r.EgressGatewayChoice = &ReplaceSpecType_EgressVirtualPrivateGateway{EgressVirtualPrivateGateway: of.EgressVirtualPrivateGateway} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + // create setters in ReplaceSpecType from GlobalSpecType for oneof fields func (r *ReplaceSpecType) SetInternetVipChoiceToGlobalSpecType(o *GlobalSpecType) error { switch of := r.InternetVipChoice.(type) { @@ -10817,6 +11387,41 @@ func (r *ReplaceSpecType) GetLogsReceiverChoiceFromGlobalSpecType(o *GlobalSpecT return nil } +// create setters in ReplaceSpecType from GlobalSpecType for oneof fields +func (r *ReplaceSpecType) SetSecurityGroupChoiceToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.SecurityGroupChoice.(type) { + case nil: + o.SecurityGroupChoice = nil + + case *ReplaceSpecType_CustomSecurityGroup: + o.SecurityGroupChoice = &GlobalSpecType_CustomSecurityGroup{CustomSecurityGroup: of.CustomSecurityGroup} + + case *ReplaceSpecType_F5XcSecurityGroup: + o.SecurityGroupChoice = &GlobalSpecType_F5XcSecurityGroup{F5XcSecurityGroup: of.F5XcSecurityGroup} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ReplaceSpecType) GetSecurityGroupChoiceFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.SecurityGroupChoice.(type) { + case nil: + r.SecurityGroupChoice = nil + + case *GlobalSpecType_CustomSecurityGroup: + r.SecurityGroupChoice = &ReplaceSpecType_CustomSecurityGroup{CustomSecurityGroup: of.CustomSecurityGroup} + + case *GlobalSpecType_F5XcSecurityGroup: + r.SecurityGroupChoice = &ReplaceSpecType_F5XcSecurityGroup{F5XcSecurityGroup: of.F5XcSecurityGroup} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + // create setters in ReplaceSpecType from GlobalSpecType for oneof fields func (r *ReplaceSpecType) SetSiteTypeToGlobalSpecType(o *GlobalSpecType) error { switch of := r.SiteType.(type) { @@ -10931,15 +11536,23 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo return } m.Address = f.GetAddress() + m.AwsRegion = f.GetAwsRegion() m.GetBlockedServicesChoiceFromGlobalSpecType(f) m.Coordinates = f.GetCoordinates() m.CustomDns = f.GetCustomDns() m.GetDeploymentFromGlobalSpecType(f) m.GetDirectConnectChoiceFromGlobalSpecType(f) + m.DiskSize = f.GetDiskSize() + m.GetEgressGatewayChoiceFromGlobalSpecType(f) + m.InstanceType = f.GetInstanceType() m.GetInternetVipChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() + m.GetSecurityGroupChoiceFromGlobalSpecType(f) m.GetSiteTypeFromGlobalSpecType(f) + m.SshKey = f.GetSshKey() + m.Vpc = f.GetVpc() m.GetWorkerNodesFromGlobalSpecType(f) } @@ -10959,15 +11572,23 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) _ = m1 f.Address = m1.Address + f.AwsRegion = m1.AwsRegion m1.SetBlockedServicesChoiceToGlobalSpecType(f) f.Coordinates = m1.Coordinates f.CustomDns = m1.CustomDns m1.SetDeploymentToGlobalSpecType(f) m1.SetDirectConnectChoiceToGlobalSpecType(f) + f.DiskSize = m1.DiskSize + m1.SetEgressGatewayChoiceToGlobalSpecType(f) + f.InstanceType = m1.InstanceType m1.SetInternetVipChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode + m1.SetSecurityGroupChoiceToGlobalSpecType(f) m1.SetSiteTypeToGlobalSpecType(f) + f.SshKey = m1.SshKey + f.Vpc = m1.Vpc m1.SetWorkerNodesToGlobalSpecType(f) } diff --git a/pbgo/extschema/schema/views/azure_vnet_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/azure_vnet_site/crudapi/api.vesapi.go index c7bef5b2d..e66eb384e 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/crudapi/api.vesapi.go @@ -2684,7 +2684,7 @@ var APISwaggerJSON string = `{ "items": { "$ref": "#/definitions/azure_vnet_siteVnetPeeringType" }, - "x-displayname": "Spoke VNet Peering", + "x-displayname": "Spoke VNet Peering (Legacy)", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "100", "ves.io.schema.rules.repeated.unique": "true" @@ -4819,10 +4819,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6384,6 +6388,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -6717,10 +6792,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "title": "Allow access to DNS, SSH services on Site", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "disk_size": { "type": "integer", @@ -6764,6 +6839,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/azure_vnet_siteAzureVnetIngressGwARType", "x-displayname": "Ingress Gateway (One Interface) on Alternate Region" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "title": "Disable Logs Streaming", @@ -6846,15 +6927,17 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", "title": "Public SSH key", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "suggested_action": { diff --git a/pbgo/extschema/schema/views/azure_vnet_site/object.pb.go b/pbgo/extschema/schema/views/azure_vnet_site/object.pb.go index afe03fee8..ab0d61abe 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/object.pb.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/object.pb.go @@ -244,57 +244,58 @@ func init() { } var fileDescriptor_540da18f38193860 = []byte{ - // 797 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x55, 0x41, 0x6f, 0xe3, 0x44, - 0x14, 0xce, 0x24, 0x55, 0xb6, 0x9a, 0xae, 0x76, 0x57, 0xe6, 0x62, 0x16, 0x30, 0x55, 0xf6, 0xb2, - 0x87, 0xf5, 0x18, 0xed, 0xc2, 0x81, 0xaa, 0x2a, 0xa2, 0x2d, 0xf4, 0xd2, 0x0a, 0x91, 0x72, 0x00, - 0x0e, 0x58, 0xe3, 0xf1, 0x8b, 0x33, 0x34, 0xf6, 0x58, 0x33, 0xe3, 0xb4, 0xa9, 0x84, 0x84, 0xb8, - 0x72, 0xe1, 0xc6, 0x1f, 0x40, 0x02, 0x71, 0x85, 0x1f, 0x40, 0x39, 0x71, 0xa3, 0xaa, 0x84, 0x14, - 0x71, 0xa2, 0xce, 0xa5, 0xc7, 0xfe, 0x04, 0xe4, 0x71, 0x9c, 0x26, 0x21, 0x54, 0x91, 0xe8, 0x85, - 0x93, 0x67, 0xfc, 0xbe, 0xef, 0x9b, 0xf7, 0xde, 0xcc, 0x7b, 0x0f, 0xbf, 0xd1, 0x07, 0x45, 0xb8, - 0xf0, 0x14, 0xeb, 0x42, 0x4c, 0xbd, 0x3e, 0x87, 0x63, 0xe5, 0xd1, 0xd3, 0x4c, 0x82, 0xdf, 0x4f, - 0x40, 0xfb, 0x8a, 0x6b, 0xf0, 0x44, 0xf0, 0x39, 0x30, 0x4d, 0x52, 0x29, 0xb4, 0xb0, 0x9e, 0x94, - 0x0c, 0x52, 0x32, 0x88, 0x61, 0x90, 0x39, 0xc6, 0x63, 0x37, 0xe2, 0xba, 0x9b, 0x05, 0x84, 0x89, - 0xd8, 0x8b, 0x44, 0x24, 0x3c, 0xc3, 0x0d, 0xb2, 0x8e, 0xd9, 0x99, 0x8d, 0x59, 0x95, 0x9a, 0x8f, - 0x5f, 0x99, 0xf5, 0x42, 0xa4, 0x9a, 0x8b, 0x44, 0x8d, 0x8d, 0x2f, 0xcf, 0x1a, 0xf5, 0x20, 0x85, - 0xca, 0xd4, 0x9a, 0xf3, 0x1e, 0x14, 0x24, 0xfd, 0x39, 0xfa, 0xfa, 0x3f, 0x23, 0xf4, 0x67, 0x11, - 0xde, 0x32, 0x39, 0x98, 0x3e, 0xf6, 0xcd, 0x45, 0x04, 0x0d, 0x52, 0xd2, 0x8e, 0x90, 0xb1, 0x9f, - 0x52, 0x49, 0x63, 0xd0, 0x20, 0xd5, 0x0c, 0xeb, 0xf5, 0x85, 0xac, 0x1b, 0x40, 0xeb, 0xeb, 0x55, - 0xdc, 0xfc, 0xc0, 0xa4, 0xda, 0x7a, 0x1b, 0xaf, 0xc6, 0xa0, 0x69, 0x48, 0x35, 0xb5, 0xd1, 0x3a, - 0x7a, 0xba, 0xf6, 0xfc, 0x35, 0x32, 0x9b, 0xf7, 0x12, 0x78, 0x00, 0x9a, 0x7e, 0x34, 0x48, 0xa1, - 0x3d, 0x81, 0x5b, 0xfb, 0xf8, 0xa1, 0x1a, 0x28, 0x0d, 0xb1, 0x3f, 0x51, 0xa8, 0x1b, 0x85, 0x27, - 0x73, 0x0a, 0x87, 0x06, 0x35, 0xa7, 0xf3, 0xa0, 0xe4, 0x1e, 0x54, 0x6a, 0xef, 0xe2, 0x15, 0x95, - 0x02, 0xb3, 0x1b, 0x46, 0xc2, 0x25, 0x4b, 0x5c, 0x3e, 0x39, 0x4c, 0x81, 0x19, 0x31, 0x43, 0xdd, - 0xf8, 0xb9, 0xf9, 0xd5, 0x3b, 0xcd, 0x52, 0xf6, 0xd7, 0x33, 0xbb, 0xfe, 0x08, 0x5d, 0x9c, 0xd9, - 0x57, 0x75, 0xfc, 0x1e, 0x6e, 0xec, 0x81, 0xb6, 0xb6, 0x3a, 0x6f, 0x9d, 0x30, 0xb7, 0xe0, 0xb9, - 0x31, 0x4d, 0x68, 0x04, 0x31, 0x24, 0xda, 0x0d, 0xa8, 0xe2, 0xcc, 0x8d, 0x45, 0xc2, 0xb5, 0x90, - 0xcf, 0x8a, 0x2b, 0x74, 0xb9, 0x70, 0x79, 0xd2, 0x91, 0x54, 0x69, 0x99, 0x31, 0x9d, 0x49, 0x70, - 0x25, 0xd0, 0x10, 0xef, 0xe1, 0x7b, 0x6d, 0x48, 0x7b, 0x94, 0x81, 0xb5, 0x79, 0x8b, 0x54, 0xa6, - 0xe0, 0x5f, 0x75, 0x8e, 0x25, 0xd7, 0x80, 0xdf, 0xc7, 0xcd, 0x1d, 0x09, 0x54, 0xdf, 0x81, 0xce, - 0x2e, 0xf4, 0xe0, 0x0e, 0x74, 0x56, 0xf6, 0xb9, 0xfa, 0xcf, 0x09, 0xfa, 0xf3, 0xcc, 0xfe, 0xa9, - 0x81, 0xff, 0x40, 0xf8, 0x3b, 0x54, 0xdc, 0x06, 0x89, 0x98, 0x6f, 0xbe, 0x85, 0xa0, 0x5f, 0xbc, - 0x3e, 0xc2, 0x93, 0x48, 0x82, 0x52, 0x3e, 0x94, 0x9f, 0xe8, 0x98, 0x74, 0xb3, 0xc0, 0x67, 0x5d, - 0xc1, 0x19, 0x14, 0x4b, 0x02, 0x27, 0xa9, 0xb1, 0x48, 0x91, 0x69, 0xa8, 0x0c, 0xb3, 0x3f, 0x21, - 0xa1, 0x41, 0x0f, 0x42, 0xc2, 0x44, 0x92, 0x00, 0x2b, 0x8b, 0x4b, 0x65, 0x81, 0x62, 0x92, 0x9b, - 0x52, 0xab, 0x58, 0x42, 0x77, 0x41, 0xfa, 0xd3, 0x16, 0x42, 0x33, 0xdd, 0x15, 0x92, 0x9f, 0x42, - 0xe8, 0x1f, 0xc1, 0xc0, 0x7a, 0x36, 0x0e, 0xc5, 0x3c, 0x2a, 0x77, 0x7c, 0x8a, 0x6b, 0x4e, 0x71, - 0x2b, 0x28, 0x2d, 0x88, 0xee, 0x11, 0x0c, 0xf0, 0x10, 0xe1, 0xef, 0x97, 0x8e, 0xcb, 0xa7, 0xf2, - 0xff, 0x13, 0x5a, 0xeb, 0x63, 0xbc, 0x5a, 0x15, 0x92, 0xb5, 0x8f, 0xef, 0x8d, 0xe3, 0x1b, 0x77, - 0x83, 0x17, 0x4b, 0x15, 0xe2, 0x5e, 0x4f, 0x04, 0xb4, 0x37, 0x29, 0xc7, 0x66, 0xc4, 0x8a, 0x75, - 0xeb, 0xf7, 0x3a, 0xbe, 0x7f, 0xa8, 0xa9, 0xce, 0xd4, 0xd2, 0xdd, 0xa6, 0x84, 0x2f, 0xe8, 0x36, - 0x1f, 0xe2, 0xb5, 0x72, 0x3a, 0xf8, 0x12, 0x3a, 0xca, 0xae, 0xaf, 0x37, 0x9e, 0xae, 0x3d, 0x7f, - 0x75, 0x61, 0xaf, 0x6a, 0x43, 0xa7, 0x20, 0x6f, 0x5b, 0x3f, 0x7e, 0xf1, 0x70, 0xce, 0xd3, 0x36, - 0x16, 0x15, 0x44, 0x59, 0x9b, 0x18, 0x33, 0x91, 0x84, 0xdc, 0xa4, 0xda, 0x6e, 0x2c, 0x54, 0xdc, - 0xa9, 0x00, 0xc6, 0x9d, 0x29, 0xbc, 0xf5, 0x19, 0xc6, 0x21, 0xa4, 0x3d, 0x31, 0x28, 0xca, 0xc4, - 0x5e, 0x31, 0xd1, 0x6c, 0x2d, 0xcc, 0xd6, 0xa2, 0x86, 0x4d, 0x76, 0x27, 0xdc, 0x32, 0xe4, 0x52, - 0xff, 0x46, 0x71, 0xe3, 0xa5, 0x8b, 0xad, 0x47, 0xf8, 0x01, 0xbe, 0x5f, 0x65, 0x80, 0x64, 0x3c, - 0xdc, 0xfe, 0x16, 0x9d, 0x5f, 0x3a, 0xb5, 0xe1, 0xa5, 0x53, 0xbb, 0xbe, 0x74, 0xd0, 0x97, 0xb9, - 0x83, 0x7e, 0xc8, 0x1d, 0xf4, 0x5b, 0xee, 0xa0, 0xf3, 0xdc, 0x41, 0xc3, 0xdc, 0x41, 0x7f, 0xe5, - 0x0e, 0xba, 0xca, 0x9d, 0xda, 0x75, 0xee, 0xa0, 0x6f, 0x46, 0x4e, 0xed, 0x97, 0x91, 0x83, 0xce, - 0x47, 0x4e, 0x6d, 0x38, 0x72, 0x6a, 0x9f, 0x7e, 0x12, 0x89, 0xf4, 0x28, 0x22, 0x7d, 0xd1, 0x33, - 0x3e, 0x91, 0x6c, 0x6a, 0x9a, 0xb8, 0xa9, 0x14, 0x7d, 0x1e, 0x82, 0x74, 0x2b, 0xb3, 0x97, 0x06, - 0x91, 0xf0, 0xe0, 0x44, 0x8f, 0x07, 0xc9, 0x6d, 0x63, 0x2b, 0x68, 0x9a, 0xd1, 0xf2, 0xe2, 0xef, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x15, 0x7f, 0xe5, 0xe6, 0xe8, 0x07, 0x00, 0x00, + // 812 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x55, 0xcf, 0x8f, 0xdb, 0x44, + 0x14, 0xce, 0x6c, 0xa2, 0x6c, 0x99, 0xad, 0xda, 0xca, 0x5c, 0x4c, 0x01, 0x13, 0xa5, 0x97, 0x1e, + 0xea, 0x31, 0x6a, 0xe1, 0x40, 0x85, 0x8a, 0x68, 0x2b, 0xf5, 0xb2, 0x15, 0x22, 0xcb, 0x01, 0x38, + 0x60, 0xc6, 0xe3, 0x17, 0x67, 0x1a, 0xdb, 0x63, 0xcd, 0x8c, 0xb3, 0x9b, 0x4a, 0x48, 0x88, 0xbf, + 0x80, 0x1b, 0x77, 0x84, 0x04, 0xe2, 0xca, 0x3f, 0xc0, 0x22, 0x21, 0x71, 0x63, 0x55, 0x09, 0x29, + 0xe2, 0xc4, 0x3a, 0x17, 0x4e, 0xa8, 0x7f, 0x02, 0xf2, 0x38, 0xce, 0x26, 0xc1, 0x5a, 0x72, 0x5a, + 0xa9, 0x27, 0x8f, 0xf3, 0xbe, 0xef, 0x7b, 0x3f, 0x9c, 0xf9, 0x1e, 0x7e, 0x73, 0x02, 0x8a, 0x70, + 0xe1, 0x29, 0x36, 0x82, 0x84, 0x7a, 0x13, 0x0e, 0x87, 0xca, 0xa3, 0x4f, 0x73, 0x09, 0xfe, 0x24, + 0x05, 0xed, 0x2b, 0xae, 0xc1, 0x13, 0xc1, 0x13, 0x60, 0x9a, 0x64, 0x52, 0x68, 0x61, 0xdd, 0xa8, + 0x18, 0xa4, 0x62, 0x10, 0xc3, 0x20, 0x1b, 0x8c, 0xeb, 0x6e, 0xc4, 0xf5, 0x28, 0x0f, 0x08, 0x13, + 0x89, 0x17, 0x89, 0x48, 0x78, 0x86, 0x1b, 0xe4, 0x43, 0xf3, 0x66, 0x5e, 0xcc, 0xa9, 0xd2, 0xbc, + 0xfe, 0xea, 0x7a, 0x15, 0x22, 0xd3, 0x5c, 0xa4, 0x6a, 0x11, 0x7c, 0x65, 0x3d, 0xa8, 0xa7, 0x19, + 0xd4, 0xa1, 0xfe, 0x46, 0xf5, 0xa0, 0x20, 0x9d, 0x6c, 0xd0, 0x7b, 0xff, 0xed, 0xd0, 0x5f, 0x47, + 0x78, 0xdb, 0xcc, 0x60, 0x35, 0xed, 0x5b, 0x4d, 0x04, 0x0d, 0x52, 0xd2, 0xa1, 0x90, 0x89, 0x9f, + 0x51, 0x49, 0x13, 0xd0, 0x20, 0xd5, 0x1a, 0xeb, 0x8d, 0x46, 0xd6, 0x19, 0xa0, 0xff, 0xeb, 0x4b, + 0xb8, 0xfb, 0x81, 0x19, 0xb5, 0xf5, 0x0e, 0xbe, 0x94, 0x80, 0xa6, 0x21, 0xd5, 0xd4, 0x46, 0x3d, + 0x74, 0x73, 0xef, 0xf6, 0xeb, 0x64, 0x7d, 0xee, 0x15, 0xf0, 0x31, 0x68, 0xfa, 0xd1, 0x34, 0x83, + 0xc1, 0x12, 0x6e, 0xed, 0xe3, 0xab, 0x6a, 0xaa, 0x34, 0x24, 0xfe, 0x52, 0x61, 0xc7, 0x28, 0xdc, + 0xd8, 0x50, 0x38, 0x30, 0xa8, 0x0d, 0x9d, 0x2b, 0x15, 0xf7, 0x71, 0xad, 0xf6, 0x3e, 0xee, 0xa8, + 0x0c, 0x98, 0xdd, 0x36, 0x12, 0x2e, 0xd9, 0xe2, 0xe3, 0x93, 0x83, 0x0c, 0x98, 0x11, 0x33, 0xd4, + 0xbb, 0xff, 0xec, 0x7e, 0xf5, 0x5e, 0xb7, 0x92, 0xfd, 0xe5, 0xd8, 0xde, 0xb9, 0x86, 0x9e, 0x1d, + 0xdb, 0xdf, 0x76, 0x70, 0x8c, 0xdb, 0x8f, 0x40, 0x5b, 0x30, 0x7c, 0xfb, 0x88, 0xb9, 0x25, 0xcf, + 0x4d, 0x68, 0x4a, 0x23, 0x48, 0x20, 0xd5, 0x6e, 0x40, 0x15, 0x67, 0x6e, 0x22, 0x52, 0xae, 0x85, + 0xbc, 0xd5, 0x6b, 0xc4, 0x28, 0x4d, 0xd3, 0x90, 0xca, 0xf0, 0x0c, 0x36, 0x01, 0xe5, 0x72, 0xe1, + 0xf2, 0x74, 0x28, 0xa9, 0xd2, 0x32, 0x67, 0x3a, 0x97, 0xe0, 0x4a, 0xa0, 0x21, 0x1e, 0xe3, 0xdd, + 0x01, 0x64, 0x31, 0x65, 0x60, 0x7d, 0x7e, 0x4e, 0xc6, 0x5c, 0xc1, 0xff, 0xa6, 0xab, 0x30, 0xcd, + 0xb9, 0x0e, 0x25, 0xd7, 0x80, 0x9f, 0xe0, 0xee, 0x03, 0x09, 0x54, 0x5f, 0x50, 0xae, 0x87, 0x10, + 0xc3, 0x85, 0xe4, 0x4a, 0x70, 0x67, 0x9f, 0xab, 0x8b, 0xfa, 0x66, 0x7f, 0x1e, 0xdb, 0x3f, 0xb5, + 0xf1, 0x1f, 0x08, 0x7f, 0x87, 0xca, 0xff, 0x11, 0x89, 0x98, 0x6f, 0x9e, 0xa5, 0xa6, 0x5f, 0xde, + 0x1b, 0xc2, 0xd3, 0x48, 0x82, 0x52, 0x3e, 0x54, 0x8f, 0xe8, 0x90, 0x8c, 0xf2, 0xc0, 0x67, 0x23, + 0xc1, 0x19, 0x94, 0x47, 0x02, 0x47, 0x99, 0x89, 0x48, 0x91, 0x6b, 0xa8, 0x03, 0xeb, 0x3f, 0x42, + 0x4a, 0x83, 0x18, 0x42, 0xc2, 0x44, 0x9a, 0x02, 0xab, 0x6c, 0x41, 0xe5, 0x81, 0x62, 0x92, 0x1b, + 0x93, 0xa8, 0x59, 0x42, 0x8f, 0x40, 0xfa, 0xab, 0x11, 0x42, 0x73, 0x3d, 0x12, 0x92, 0x3f, 0x85, + 0xd0, 0x1f, 0xc3, 0xd4, 0xba, 0xb5, 0x68, 0xc5, 0x5c, 0x07, 0x77, 0x91, 0xc5, 0x35, 0x59, 0xdc, + 0x1a, 0x4a, 0x4b, 0xa2, 0x3b, 0x86, 0x29, 0x9e, 0x21, 0xfc, 0xfd, 0xd6, 0x7d, 0xf9, 0x54, 0xbe, + 0x38, 0xad, 0xf5, 0x3f, 0xc6, 0x97, 0x6a, 0x0b, 0xb0, 0xf6, 0xf1, 0xee, 0xa2, 0xbf, 0x85, 0x8f, + 0xdd, 0xd9, 0xca, 0x42, 0x1e, 0xc5, 0x22, 0xa0, 0xf1, 0xd2, 0x48, 0xba, 0x11, 0x2b, 0xcf, 0xfd, + 0xdf, 0x77, 0xf0, 0xe5, 0x03, 0x4d, 0x75, 0xae, 0xb6, 0xf6, 0xc9, 0x0a, 0xde, 0xe0, 0x93, 0x1f, + 0xe2, 0xbd, 0x6a, 0xaf, 0xf9, 0x12, 0x86, 0xca, 0xde, 0xe9, 0xb5, 0x6f, 0xee, 0xdd, 0x7e, 0xad, + 0xd1, 0x65, 0x07, 0x30, 0x2c, 0xc9, 0xf7, 0xad, 0x1f, 0xbf, 0xb8, 0xba, 0x51, 0xe9, 0x00, 0x8b, + 0x1a, 0xa2, 0xac, 0x77, 0x31, 0x66, 0x22, 0x0d, 0xb9, 0x19, 0xb5, 0xdd, 0x6e, 0x54, 0x7c, 0x50, + 0x03, 0x4c, 0x39, 0x2b, 0x78, 0xeb, 0x33, 0x8c, 0x43, 0xc8, 0x62, 0x31, 0x2d, 0x6f, 0x8a, 0xdd, + 0x31, 0xdd, 0xdc, 0x6b, 0x9c, 0x56, 0xd3, 0xaa, 0x21, 0x0f, 0x97, 0xdc, 0xaa, 0xe5, 0x4a, 0xff, + 0x4c, 0xf1, 0xee, 0xcb, 0xcf, 0xee, 0x5d, 0xc3, 0x57, 0xf0, 0xe5, 0x7a, 0x02, 0x24, 0xe7, 0xe1, + 0xfd, 0x6f, 0xd0, 0xc9, 0xa9, 0xd3, 0x9a, 0x9d, 0x3a, 0xad, 0xe7, 0xa7, 0x0e, 0xfa, 0xb2, 0x70, + 0xd0, 0x0f, 0x85, 0x83, 0x7e, 0x2b, 0x1c, 0x74, 0x52, 0x38, 0x68, 0x56, 0x38, 0xe8, 0xaf, 0xc2, + 0x41, 0x7f, 0x17, 0x4e, 0xeb, 0x79, 0xe1, 0xa0, 0xaf, 0xe7, 0x4e, 0xeb, 0xe7, 0xb9, 0x83, 0x4e, + 0xe6, 0x4e, 0x6b, 0x36, 0x77, 0x5a, 0x9f, 0x7e, 0x12, 0x89, 0x6c, 0x1c, 0x91, 0x89, 0x88, 0x4d, + 0x4d, 0x24, 0x5f, 0xd9, 0x83, 0x6e, 0x26, 0xc5, 0x84, 0x87, 0x20, 0xdd, 0x3a, 0xec, 0x65, 0x41, + 0x24, 0x3c, 0x38, 0xd2, 0x8b, 0x15, 0x78, 0xde, 0xc2, 0x0d, 0xba, 0x66, 0x29, 0xde, 0xf9, 0x37, + 0x00, 0x00, 0xff, 0xff, 0x0f, 0x5e, 0x04, 0x7d, 0xa2, 0x08, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/azure_vnet_site/pkg.vespkg.go b/pbgo/extschema/schema/views/azure_vnet_site/pkg.vespkg.go index 36ed97ec3..0f31e920d 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/pkg.vespkg.go @@ -120,51 +120,51 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -179,51 +179,51 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -240,51 +240,51 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "create_form.spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_gw_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.voltstack_cluster_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_dns.inside_nameserver_v6", @@ -296,19 +296,27 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "replace_form.spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_dns.inside_nameserver_v6", @@ -320,51 +328,51 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_gw_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.voltstack_cluster_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -379,51 +387,51 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "items.#.get_spec.ingress_egress_gw.az_nodes.#.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw.az_nodes.#.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_gw.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_gw_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.voltstack_cluster.az_nodes.#.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.voltstack_cluster_ar.node.local_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -467,19 +475,27 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.gateway_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_egress_gw_ar.hub.express_route_enabled.route_server_subnet.subnet_param.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.ingress_egress_gw_ar.node.inside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.ingress_egress_gw_ar.node.outside_subnet.subnet_param.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/azure_vnet_site/private_customapi.pb.go b/pbgo/extschema/schema/views/azure_vnet_site/private_customapi.pb.go index a84eeead9..b831bae1a 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/private_customapi.pb.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/private_customapi.pb.go @@ -40,39 +40,40 @@ func init() { } var fileDescriptor_825e212eba761e7f = []byte{ - // 507 bytes of a gzipped FileDescriptorProto + // 518 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0x31, 0x6f, 0xd3, 0x40, - 0x18, 0xf5, 0x15, 0xc4, 0x90, 0x85, 0x2a, 0x53, 0x09, 0xd5, 0x81, 0x02, 0x62, 0x28, 0xd8, 0x27, - 0x81, 0x90, 0x10, 0x4c, 0x80, 0x18, 0x98, 0x5a, 0x81, 0x18, 0xe8, 0x62, 0x9d, 0xdd, 0x2f, 0xce, - 0xd1, 0xf8, 0xbe, 0xe3, 0xee, 0xb3, 0x5b, 0x40, 0x95, 0x50, 0x7f, 0x01, 0x52, 0xff, 0x04, 0xfc, - 0x86, 0x2e, 0x65, 0x82, 0x09, 0x45, 0xb0, 0x54, 0x4c, 0xc4, 0x61, 0x40, 0x62, 0xe9, 0x4f, 0x40, - 0xb9, 0x24, 0x28, 0x71, 0x2b, 0xd4, 0x81, 0xed, 0x3b, 0xbf, 0xf7, 0xce, 0xef, 0x7b, 0x7e, 0x6e, - 0xdc, 0x2b, 0xc1, 0x45, 0x0a, 0x85, 0x4b, 0xbb, 0x90, 0x4b, 0x51, 0x2a, 0xd8, 0x72, 0x42, 0xbe, - 0x2e, 0x2c, 0xc4, 0xa5, 0x06, 0x8a, 0x9d, 0x22, 0x10, 0xc6, 0xaa, 0x52, 0x12, 0xc4, 0x69, 0xe1, - 0x08, 0x73, 0x69, 0x54, 0x64, 0x2c, 0x12, 0x36, 0xaf, 0x8c, 0xc5, 0xd1, 0x58, 0x1c, 0x79, 0x71, - 0x54, 0x13, 0xb7, 0xc2, 0x4c, 0x51, 0xb7, 0x48, 0xa2, 0x14, 0x73, 0x91, 0x61, 0x86, 0xc2, 0x6b, - 0x93, 0xa2, 0xe3, 0x4f, 0xfe, 0xe0, 0xa7, 0xf1, 0x9d, 0xad, 0xe5, 0x0c, 0x31, 0xeb, 0x81, 0x90, - 0x46, 0x09, 0xa9, 0x35, 0x92, 0x24, 0x85, 0xda, 0x4d, 0xd0, 0x8b, 0xf3, 0x76, 0xd1, 0xcc, 0x82, - 0x17, 0xe6, 0x41, 0x7a, 0x65, 0x60, 0x0a, 0x2d, 0xd7, 0xd6, 0x94, 0x3d, 0xb5, 0x21, 0x09, 0x26, - 0x68, 0xbb, 0x86, 0x82, 0x03, 0x5d, 0xd6, 0x2e, 0xbf, 0x7c, 0x3c, 0xa8, 0x78, 0x9e, 0x71, 0xf5, - 0xa4, 0x28, 0x47, 0x11, 0xc4, 0xb3, 0x4e, 0xae, 0xd5, 0x59, 0x96, 0x0a, 0xd9, 0x8b, 0xbb, 0xe8, - 0x68, 0xd6, 0xf1, 0xcd, 0x0f, 0x67, 0x1a, 0x8b, 0x6b, 0xe3, 0xdc, 0x1f, 0xfa, 0xd8, 0xef, 0xaf, - 0x3d, 0x6e, 0x7e, 0x5f, 0x68, 0x9c, 0x7f, 0x66, 0x46, 0xce, 0x9f, 0x2a, 0x82, 0x47, 0xd6, 0xa2, - 0x6d, 0x5e, 0x8f, 0x4e, 0xfa, 0x0a, 0x35, 0xd6, 0x13, 0x78, 0x59, 0x80, 0xa3, 0xd6, 0x8d, 0xd3, - 0x91, 0x9d, 0x41, 0xed, 0xa0, 0xfd, 0x9b, 0x55, 0x9f, 0x96, 0x2e, 0x75, 0x6e, 0x6f, 0xa7, 0xe1, - 0x68, 0x8f, 0x30, 0x97, 0x5a, 0x66, 0x90, 0x83, 0xa6, 0x30, 0x91, 0x4e, 0xa5, 0x61, 0xe1, 0xc0, - 0xee, 0x7e, 0xfb, 0xb9, 0xb7, 0xf0, 0x91, 0xb5, 0x57, 0xa7, 0x35, 0x11, 0xe3, 0x9a, 0x08, 0x2d, - 0x73, 0x70, 0x46, 0xa6, 0xe0, 0xc4, 0x9b, 0xbf, 0xf3, 0xce, 0xb1, 0x72, 0x79, 0x6c, 0x47, 0x14, - 0xde, 0x83, 0x7f, 0x14, 0xc3, 0xc8, 0xc5, 0x5d, 0xb6, 0xb2, 0xbe, 0xd9, 0xee, 0x88, 0x39, 0xc3, - 0x42, 0x69, 0xb2, 0xe8, 0x0c, 0xa4, 0x24, 0xb6, 0xac, 0xfa, 0x9f, 0x2f, 0x6b, 0xdd, 0x39, 0xd8, - 0x67, 0x67, 0xbf, 0xee, 0xb3, 0x95, 0x53, 0xb4, 0x3a, 0x5a, 0x4d, 0x5e, 0x40, 0x4a, 0xbb, 0x5f, - 0x96, 0x16, 0x16, 0xd9, 0x83, 0x3d, 0xd6, 0x1f, 0xf0, 0xe0, 0x70, 0xc0, 0x83, 0xa3, 0x01, 0x67, - 0x6f, 0x2b, 0xce, 0xde, 0x57, 0x9c, 0x7d, 0xae, 0x38, 0xeb, 0x57, 0x9c, 0xfd, 0xa8, 0x38, 0xfb, - 0x55, 0xf1, 0xe0, 0xa8, 0xe2, 0xec, 0xdd, 0x90, 0x07, 0x07, 0x43, 0xce, 0xfa, 0x43, 0x1e, 0x1c, - 0x0e, 0x79, 0xb0, 0xfe, 0x3c, 0x43, 0xb3, 0x99, 0x45, 0x25, 0xf6, 0x08, 0xac, 0x95, 0x51, 0xe1, - 0x84, 0x1f, 0x3a, 0x68, 0xf3, 0xd0, 0x58, 0x2c, 0xd5, 0x06, 0xd8, 0x70, 0x0a, 0x0b, 0x93, 0x64, - 0x28, 0x60, 0x9b, 0x26, 0x69, 0xfc, 0xeb, 0xaf, 0x4d, 0xce, 0xf9, 0x22, 0xdd, 0xfa, 0x13, 0x00, - 0x00, 0xff, 0xff, 0x43, 0x6d, 0xb9, 0xa7, 0xe3, 0x03, 0x00, 0x00, + 0x18, 0xf5, 0x05, 0xc4, 0x90, 0x85, 0x2a, 0x53, 0x09, 0xd5, 0xa9, 0x0a, 0x88, 0xa1, 0xd4, 0x3e, + 0x09, 0x84, 0x84, 0x60, 0x82, 0x8a, 0x81, 0xa9, 0x15, 0x88, 0x81, 0x2e, 0xd6, 0xd9, 0xf9, 0xe2, + 0x1c, 0x8d, 0xfd, 0x1d, 0x77, 0x9f, 0xdd, 0x02, 0xaa, 0x84, 0xfa, 0x07, 0x40, 0xea, 0x9f, 0xe0, + 0x3f, 0x74, 0x29, 0x13, 0x2c, 0xa0, 0x08, 0x96, 0x8e, 0xc4, 0x61, 0x60, 0xec, 0x2f, 0x40, 0x28, + 0x97, 0x04, 0x25, 0x6e, 0x84, 0x3a, 0xb0, 0x7d, 0xe7, 0xf7, 0xde, 0xf9, 0x7d, 0xcf, 0xcf, 0xf5, + 0xfb, 0x05, 0xd8, 0x40, 0xa1, 0xb0, 0x71, 0x17, 0x52, 0x29, 0x0a, 0x05, 0xbb, 0x56, 0xc8, 0xd7, + 0xb9, 0x81, 0xb0, 0xc8, 0x80, 0x42, 0xab, 0x08, 0x84, 0x36, 0xaa, 0x90, 0x04, 0x61, 0x9c, 0x5b, + 0xc2, 0x54, 0x6a, 0x15, 0x68, 0x83, 0x84, 0x8d, 0x6b, 0x63, 0x71, 0x30, 0x16, 0x07, 0x4e, 0x1c, + 0x54, 0xc4, 0x4d, 0x3f, 0x51, 0xd4, 0xcd, 0xa3, 0x20, 0xc6, 0x54, 0x24, 0x98, 0xa0, 0x70, 0xda, + 0x28, 0xef, 0xb8, 0x93, 0x3b, 0xb8, 0x69, 0x7c, 0x67, 0x73, 0x25, 0x41, 0x4c, 0x7a, 0x20, 0xa4, + 0x56, 0x42, 0x66, 0x19, 0x92, 0x24, 0x85, 0x99, 0x9d, 0xa0, 0x57, 0xe7, 0xed, 0xa2, 0x9e, 0x05, + 0xaf, 0xcc, 0x83, 0xf4, 0x4a, 0xc3, 0x14, 0x5a, 0xa9, 0xac, 0x29, 0x7b, 0xaa, 0x2d, 0x09, 0x26, + 0x68, 0xab, 0x82, 0x82, 0x85, 0xac, 0xa8, 0x5c, 0xbe, 0x7a, 0x36, 0xa8, 0x70, 0x9e, 0x71, 0x7d, + 0x51, 0x94, 0xa3, 0x08, 0xc2, 0x59, 0x27, 0x37, 0xaa, 0x2c, 0x43, 0xb9, 0xec, 0x85, 0x5d, 0xb4, + 0x34, 0xeb, 0xf8, 0xd6, 0x97, 0x0b, 0xf5, 0xa5, 0xad, 0x71, 0xee, 0x1b, 0x2e, 0xf6, 0x07, 0x5b, + 0x8f, 0x1b, 0xbf, 0x6b, 0xf5, 0xcb, 0xcf, 0xf4, 0xc8, 0xf9, 0x53, 0x45, 0xf0, 0xc8, 0x18, 0x34, + 0x8d, 0x9b, 0xc1, 0xa2, 0xaf, 0x50, 0x61, 0x3d, 0x81, 0x97, 0x39, 0x58, 0x6a, 0xae, 0x9f, 0x8f, + 0x6c, 0x35, 0x66, 0x16, 0x5a, 0xef, 0x6a, 0xe5, 0xa7, 0xe5, 0x8d, 0xce, 0x9d, 0xbd, 0xd8, 0x1f, + 0xed, 0xe1, 0xa7, 0x32, 0x93, 0x09, 0xa4, 0x90, 0x91, 0x1f, 0x49, 0xab, 0x62, 0x3f, 0xb7, 0x60, + 0xd6, 0x57, 0x17, 0x12, 0x2c, 0xc9, 0xac, 0x2d, 0x4d, 0xdb, 0x71, 0x0e, 0xbe, 0xff, 0x3c, 0xac, + 0x7d, 0x64, 0xad, 0xcd, 0x69, 0x95, 0xc4, 0xb8, 0x4a, 0x22, 0x93, 0x29, 0x58, 0x2d, 0x63, 0xb0, + 0xe2, 0xcd, 0xdf, 0x79, 0xff, 0x4c, 0x01, 0x1d, 0xb6, 0x2f, 0x72, 0xe7, 0xd3, 0x3d, 0x0a, 0x61, + 0xe4, 0xf4, 0x1e, 0x5b, 0xdb, 0xde, 0x69, 0x75, 0xc4, 0xdc, 0x52, 0x42, 0x65, 0x64, 0xd0, 0x6a, + 0x88, 0x49, 0xec, 0x1a, 0xf5, 0x3f, 0x5f, 0xd6, 0xbc, 0x7b, 0x7c, 0xc4, 0x2e, 0x7e, 0x3b, 0x62, + 0x6b, 0xe7, 0x68, 0x7e, 0xb0, 0x19, 0xbd, 0x80, 0x98, 0x0e, 0xbe, 0x2e, 0xd7, 0x96, 0xd8, 0xc3, + 0x43, 0xd6, 0x1f, 0x70, 0xef, 0x64, 0xc0, 0xbd, 0xd3, 0x01, 0x67, 0x6f, 0x4b, 0xce, 0x3e, 0x94, + 0x9c, 0x7d, 0x2e, 0x39, 0xeb, 0x97, 0x9c, 0xfd, 0x28, 0x39, 0xfb, 0x55, 0x72, 0xef, 0xb4, 0xe4, + 0xec, 0xfd, 0x90, 0x7b, 0xc7, 0x43, 0xce, 0xfa, 0x43, 0xee, 0x9d, 0x0c, 0xb9, 0xb7, 0xfd, 0x3c, + 0x41, 0xbd, 0x93, 0x04, 0x05, 0xf6, 0x08, 0x8c, 0x91, 0x41, 0x6e, 0x85, 0x1b, 0x3a, 0x68, 0x52, + 0x5f, 0x1b, 0x2c, 0x54, 0x1b, 0x8c, 0x3f, 0x85, 0x85, 0x8e, 0x12, 0x14, 0xb0, 0x47, 0x93, 0x34, + 0xfe, 0xf5, 0x67, 0x47, 0x97, 0x5c, 0xd9, 0x6e, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xbe, 0xce, + 0xa9, 0xbb, 0x07, 0x04, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.pb.go b/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.pb.go index 973936ac9..5fca0e175 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.pb.go @@ -1064,111 +1064,112 @@ func init() { } var fileDescriptor_6c36082c7cdfe1e6 = []byte{ - // 1653 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x41, 0x6c, 0x1b, 0x59, - 0x19, 0xce, 0xb3, 0x1d, 0xd7, 0x7e, 0x4e, 0xd3, 0xd9, 0xc7, 0x6e, 0xd7, 0x35, 0xc5, 0x18, 0x77, - 0x85, 0xa2, 0x08, 0xcf, 0xa4, 0x69, 0x17, 0x75, 0xb3, 0x6c, 0xc1, 0x49, 0xed, 0x90, 0x36, 0x6d, - 0xa2, 0xb1, 0x13, 0x6d, 0xb9, 0x8c, 0xc6, 0xe3, 0xdf, 0xee, 0x50, 0x7b, 0x66, 0x78, 0xef, 0xd9, - 0xd9, 0x00, 0x91, 0x96, 0x72, 0xe2, 0x80, 0x84, 0xe0, 0x06, 0x1c, 0x90, 0x10, 0x12, 0x57, 0x84, - 0x90, 0x90, 0x72, 0xe9, 0x8d, 0xd5, 0x1e, 0x50, 0x05, 0x07, 0x7a, 0xdc, 0x3a, 0x1c, 0x76, 0x2f, - 0x68, 0xc5, 0x81, 0x33, 0x9a, 0xf7, 0x66, 0x5c, 0xdb, 0x71, 0x83, 0x6d, 0x72, 0xf2, 0xbc, 0xf7, - 0xbf, 0xef, 0x9b, 0xff, 0xfb, 0xdf, 0xff, 0xff, 0x7e, 0xf3, 0xf0, 0xad, 0x2e, 0x30, 0xd5, 0x76, - 0x35, 0x66, 0x3d, 0x82, 0xb6, 0xa9, 0x75, 0x6d, 0x38, 0x60, 0x9a, 0xf9, 0xfd, 0x0e, 0x05, 0xa3, - 0xeb, 0x00, 0x37, 0x98, 0xcd, 0x41, 0xf3, 0x3a, 0xb5, 0x96, 0x6d, 0x19, 0x16, 0xed, 0xd4, 0x4d, - 0xcf, 0x56, 0x3d, 0xea, 0x72, 0x97, 0x5c, 0x93, 0x48, 0x55, 0x22, 0x55, 0x81, 0x54, 0x47, 0x90, - 0x99, 0x42, 0xd3, 0xe6, 0x8f, 0x3a, 0x35, 0xd5, 0x72, 0xdb, 0x5a, 0xd3, 0x6d, 0xba, 0x9a, 0xc0, - 0xd6, 0x3a, 0x0d, 0x31, 0x12, 0x03, 0xf1, 0x24, 0x39, 0x33, 0x57, 0x9b, 0xae, 0xdb, 0x6c, 0x81, - 0x66, 0x7a, 0xb6, 0x66, 0x3a, 0x8e, 0xcb, 0x4d, 0x6e, 0xbb, 0x0e, 0x0b, 0xac, 0x5f, 0x0c, 0xac, - 0x7d, 0x0e, 0x68, 0x7b, 0xfc, 0x30, 0x30, 0x66, 0x86, 0x85, 0x00, 0xa5, 0x2e, 0xed, 0x03, 0x87, - 0x6d, 0xae, 0x37, 0xc8, 0x7a, 0x65, 0xd8, 0xc8, 0x0f, 0x3d, 0x08, 0x4d, 0xf9, 0x91, 0xe0, 0x00, - 0x03, 0xa7, 0x3b, 0x02, 0xcf, 0x9d, 0x0e, 0xa0, 0x31, 0xbc, 0x62, 0x65, 0x92, 0x10, 0xbb, 0xb5, - 0xef, 0x82, 0xc5, 0x03, 0x84, 0x36, 0x09, 0x62, 0xd0, 0xd1, 0x9b, 0xe3, 0x00, 0x1c, 0x28, 0x35, - 0x1b, 0x2e, 0x6d, 0x1b, 0x9e, 0x49, 0xcd, 0x36, 0x70, 0xa0, 0x6c, 0x08, 0xf5, 0xe5, 0xb1, 0xa8, - 0x97, 0x0b, 0xf2, 0x7f, 0x42, 0xf8, 0xe2, 0x06, 0x05, 0x93, 0x83, 0x0e, 0xdf, 0xeb, 0x00, 0xe3, - 0xe4, 0x9b, 0x38, 0xd1, 0x06, 0x6e, 0xd6, 0x4d, 0x6e, 0xa6, 0x51, 0x0e, 0x2d, 0xa5, 0x56, 0xaf, - 0xa9, 0xc3, 0x79, 0xb0, 0x23, 0x84, 0x48, 0xd4, 0x7d, 0xe0, 0x66, 0xf5, 0xd0, 0x03, 0xbd, 0x0f, - 0x22, 0xef, 0xe3, 0x18, 0xf3, 0xc0, 0x4a, 0x47, 0x04, 0xf8, 0x86, 0x3a, 0x41, 0x12, 0xa9, 0x92, - 0xac, 0xe2, 0x81, 0xe5, 0x93, 0xad, 0x5f, 0xfa, 0xe5, 0xd1, 0x82, 0xcf, 0xa1, 0x36, 0x2d, 0xc3, - 0xff, 0xd5, 0x05, 0xe3, 0x5a, 0xf2, 0xe3, 0xdb, 0x71, 0xf9, 0xf2, 0xfc, 0x8f, 0x22, 0x78, 0x31, - 0xf4, 0x9b, 0x79, 0xae, 0xc3, 0x80, 0x7c, 0xe3, 0x94, 0xe3, 0xb9, 0xb1, 0x8e, 0x6f, 0x02, 0x1f, - 0xe3, 0xf5, 0x0e, 0xbe, 0xc4, 0x0e, 0x19, 0x87, 0xb6, 0xd1, 0x27, 0x89, 0x0a, 0x92, 0xaf, 0x8e, - 0x90, 0x54, 0xc4, 0xaa, 0xd3, 0x54, 0x8b, 0x12, 0x7e, 0x3f, 0x24, 0xdc, 0x1b, 0x0a, 0xc3, 0xca, - 0x44, 0x61, 0xd8, 0x04, 0x3e, 0x45, 0x0c, 0x3e, 0x43, 0x78, 0x51, 0x07, 0xaf, 0x65, 0x5a, 0xfd, - 0xcd, 0xfb, 0xd6, 0xa9, 0x18, 0xbc, 0x35, 0x36, 0x06, 0x01, 0x6c, 0x4c, 0x1c, 0x1e, 0x0e, 0xb9, - 0x7d, 0x73, 0x22, 0xb7, 0x03, 0xb6, 0xff, 0xe1, 0x3a, 0xd1, 0xb0, 0x42, 0x81, 0xb9, 0x1d, 0x6a, - 0x81, 0xd1, 0x05, 0xca, 0x6c, 0xd7, 0x11, 0x31, 0x4e, 0xae, 0xc7, 0x3e, 0x3d, 0x46, 0x48, 0xbf, - 0x14, 0x5a, 0xf7, 0xa5, 0x71, 0x50, 0xeb, 0x6b, 0xf8, 0x52, 0x5f, 0xaa, 0xdc, 0xef, 0xfc, 0x6f, - 0x11, 0xc6, 0x9b, 0xc0, 0x43, 0xe9, 0x57, 0x71, 0xd2, 0x31, 0xdb, 0xc0, 0x3c, 0xd3, 0x02, 0xa1, - 0x3d, 0xa9, 0xbf, 0x9c, 0x20, 0x04, 0xc7, 0xfc, 0x81, 0x90, 0x95, 0xd4, 0xc5, 0x33, 0xb1, 0xb0, - 0xff, 0x46, 0x41, 0x66, 0xf8, 0x45, 0x64, 0x72, 0xe1, 0xce, 0xe2, 0xea, 0xda, 0xa4, 0x9b, 0x15, - 0xfa, 0x52, 0x16, 0xe8, 0x0d, 0xb7, 0x0e, 0xfa, 0x22, 0x1d, 0x9a, 0xcb, 0xff, 0x21, 0x8e, 0x53, - 0x03, 0x2b, 0x49, 0x05, 0xa7, 0x2c, 0x91, 0xb7, 0xe2, 0x95, 0x41, 0x98, 0x57, 0xa7, 0x28, 0x92, - 0x40, 0xaf, 0x8e, 0x25, 0x8d, 0xff, 0x1a, 0xb2, 0x8f, 0x17, 0xa8, 0x8c, 0x8e, 0x64, 0x8d, 0x4e, - 0x51, 0x7a, 0xc3, 0x19, 0xa4, 0xa7, 0x02, 0x22, 0xc1, 0x3b, 0x6e, 0xc7, 0x62, 0x67, 0xec, 0xd8, - 0x50, 0x0d, 0xce, 0x9f, 0x47, 0x0d, 0x5e, 0x38, 0x97, 0x1a, 0x8c, 0x9f, 0x6b, 0x0d, 0x92, 0x5d, - 0x1c, 0x67, 0xdc, 0xe4, 0x1d, 0x96, 0xfe, 0xcd, 0xaf, 0x51, 0x2e, 0xba, 0x94, 0x5a, 0xbd, 0x3e, - 0x11, 0x75, 0x45, 0x80, 0xa4, 0xdb, 0xeb, 0xd1, 0xa7, 0x47, 0x48, 0x0f, 0x78, 0xc8, 0x16, 0x7e, - 0x8d, 0x42, 0x03, 0x28, 0xb5, 0x9d, 0xa6, 0x21, 0xff, 0x28, 0x58, 0x3a, 0x21, 0xa8, 0xaf, 0xbe, - 0xa2, 0x80, 0x1b, 0x42, 0xb1, 0xd2, 0x87, 0xc9, 0x79, 0x46, 0xf6, 0x71, 0xba, 0x0e, 0x2d, 0xe0, - 0x50, 0x37, 0xa4, 0x0d, 0xea, 0x7d, 0xc6, 0xe4, 0x04, 0x8c, 0x97, 0x03, 0xb4, 0x1e, 0x80, 0x43, - 0xde, 0xf7, 0xf1, 0x95, 0xba, 0xcd, 0xcc, 0x5a, 0x6b, 0x1c, 0x31, 0x9e, 0x80, 0xf8, 0xcd, 0x10, - 0x3e, 0xc2, 0x3c, 0x50, 0xe6, 0x77, 0x63, 0x09, 0xa4, 0x44, 0xf2, 0xbf, 0x43, 0x38, 0xb5, 0x6d, - 0xb3, 0x09, 0x4b, 0xfb, 0x2b, 0x78, 0xa1, 0x65, 0xd6, 0xa0, 0x65, 0x34, 0xec, 0x16, 0x07, 0x1a, - 0x94, 0x78, 0x4a, 0xcc, 0x95, 0xc5, 0x14, 0xb9, 0x86, 0x2f, 0x52, 0xf0, 0x5c, 0xca, 0x8d, 0x86, - 0x0d, 0xad, 0x3a, 0x4b, 0x47, 0x73, 0xd1, 0xa5, 0xa4, 0xbe, 0x20, 0x27, 0xcb, 0x62, 0x8e, 0xac, - 0xe0, 0xd7, 0x83, 0x45, 0x72, 0x53, 0xc2, 0xb5, 0x31, 0xb1, 0x96, 0x48, 0x9b, 0xdc, 0x42, 0x89, - 0xc8, 0x7f, 0x12, 0xc7, 0x8a, 0xf4, 0x53, 0x16, 0xf7, 0x16, 0x87, 0x36, 0xb9, 0x8c, 0xe3, 0x1c, - 0x1c, 0xd3, 0xe1, 0x22, 0xeb, 0x92, 0x7a, 0x30, 0x9a, 0xa1, 0x3f, 0x29, 0x38, 0xda, 0xb1, 0xeb, - 0xb2, 0x45, 0xea, 0xfe, 0x23, 0xc9, 0xe1, 0x54, 0x1d, 0x98, 0x45, 0x6d, 0x71, 0xfa, 0x48, 0xa7, - 0xa4, 0xd2, 0x81, 0x29, 0x92, 0xc1, 0x89, 0x30, 0xcc, 0xe9, 0x85, 0x1c, 0x5a, 0x4a, 0xe8, 0xfd, - 0x31, 0x79, 0x88, 0xe3, 0x22, 0x28, 0x52, 0x52, 0x6a, 0xb5, 0x38, 0x51, 0xd2, 0x8e, 0x0a, 0x54, - 0xb7, 0x05, 0x47, 0xc9, 0xe1, 0xf4, 0x50, 0x0f, 0x08, 0xc9, 0x23, 0x9c, 0x1a, 0x38, 0xcc, 0x05, - 0xe9, 0x50, 0x9e, 0x8d, 0xbf, 0xf8, 0x92, 0x48, 0xbe, 0x64, 0x90, 0x9a, 0xbc, 0x83, 0xb1, 0x7b, - 0xe0, 0x00, 0x35, 0x7c, 0xb6, 0x74, 0x52, 0x14, 0x76, 0x66, 0xe4, 0x45, 0xfb, 0x36, 0x1c, 0x84, - 0x59, 0x97, 0x14, 0xab, 0xfd, 0x99, 0xa1, 0xe6, 0x74, 0xf1, 0x3c, 0x9a, 0xd3, 0xe2, 0xff, 0xd5, - 0x9c, 0xee, 0xe1, 0x44, 0xd3, 0x0f, 0x82, 0xdf, 0xa0, 0x2e, 0xcc, 0xd6, 0xa0, 0xf4, 0x0b, 0x4d, - 0x39, 0x20, 0x7b, 0x18, 0x07, 0x59, 0xcb, 0x80, 0x07, 0x9d, 0x63, 0xd6, 0xa6, 0x94, 0x94, 0x4c, - 0x15, 0xe0, 0x99, 0x77, 0x70, 0x6a, 0x60, 0xbb, 0xfd, 0x8c, 0x7c, 0x0c, 0x87, 0x41, 0xf6, 0xfa, - 0x8f, 0xe4, 0x75, 0x3c, 0xdf, 0x35, 0x5b, 0x9d, 0x30, 0x71, 0xe5, 0x60, 0x2d, 0x72, 0x0b, 0x65, - 0x6e, 0x63, 0x65, 0x74, 0x27, 0xa7, 0xc1, 0xdf, 0x8d, 0x25, 0xe6, 0x95, 0x78, 0xfe, 0xa7, 0x08, - 0x2f, 0x0c, 0x66, 0x08, 0xb9, 0x87, 0xe7, 0x6d, 0x0e, 0x6d, 0x96, 0x96, 0x8d, 0xf7, 0xed, 0x99, - 0x72, 0x4c, 0x97, 0x1c, 0x64, 0x05, 0xc7, 0xe5, 0x57, 0x44, 0x3a, 0x22, 0xd8, 0xd2, 0x23, 0x6c, - 0x25, 0xdf, 0x28, 0x02, 0x1d, 0xac, 0xcb, 0x3f, 0xc6, 0x17, 0xef, 0x88, 0xfe, 0x38, 0xfb, 0xb1, - 0x63, 0x09, 0x2b, 0x0d, 0xd3, 0x6e, 0x19, 0x76, 0xa3, 0xdf, 0x47, 0x45, 0x8d, 0x27, 0xf4, 0x45, - 0x7f, 0x7e, 0xab, 0x11, 0xf6, 0xc7, 0xe5, 0x7f, 0x23, 0xfc, 0xc6, 0xd8, 0x53, 0x06, 0xc9, 0xe0, - 0xcb, 0x9b, 0xa5, 0xaa, 0xa1, 0x57, 0x76, 0x8d, 0xf2, 0x8e, 0x7e, 0xbf, 0x58, 0x35, 0xee, 0x94, - 0xca, 0xc5, 0xbd, 0xed, 0xaa, 0x32, 0x47, 0xbe, 0x84, 0xaf, 0x8c, 0xd8, 0xca, 0x3b, 0xba, 0xb1, - 0xa1, 0x97, 0x8a, 0xd5, 0x92, 0x82, 0x48, 0x16, 0x67, 0xc6, 0x98, 0xf5, 0xd2, 0xee, 0x76, 0x71, - 0xa3, 0xa4, 0x44, 0xc8, 0x15, 0xfc, 0xc6, 0x88, 0xbd, 0x52, 0x2d, 0x56, 0xf7, 0x2a, 0x4a, 0x94, - 0xbc, 0x89, 0xbf, 0x30, 0x62, 0xd2, 0x4b, 0xc5, 0x3b, 0x4a, 0x8c, 0xbc, 0x85, 0x73, 0xa7, 0x0c, - 0xe5, 0x92, 0xae, 0x6f, 0x3d, 0xd8, 0x34, 0x76, 0xd6, 0xef, 0x96, 0x36, 0xaa, 0x15, 0x65, 0x7e, - 0xcc, 0xaa, 0x75, 0x7d, 0xe7, 0x5e, 0xe9, 0x81, 0x5c, 0x5c, 0x7a, 0xb0, 0x51, 0xaa, 0x28, 0xf1, - 0xd5, 0x3f, 0x62, 0x1c, 0x2d, 0xee, 0x6e, 0x91, 0xff, 0x20, 0x1c, 0x97, 0x27, 0x1e, 0x32, 0xc3, - 0xf1, 0x28, 0x73, 0x63, 0x2a, 0x4c, 0x70, 0xa4, 0x7c, 0x82, 0x7a, 0x7f, 0x49, 0xbf, 0xdb, 0x78, - 0xfb, 0x03, 0xab, 0xe0, 0x9b, 0x0b, 0x6d, 0xd3, 0x31, 0x9b, 0xd0, 0x06, 0x87, 0x17, 0x6a, 0x26, - 0xb3, 0xad, 0x42, 0x87, 0x01, 0xfd, 0x5a, 0x17, 0x58, 0xc1, 0x76, 0x0b, 0xb6, 0xd3, 0xa0, 0x26, - 0xe3, 0xb4, 0x63, 0xf1, 0x0e, 0x85, 0xc2, 0x01, 0xb5, 0x39, 0x3c, 0xf9, 0xfb, 0x3f, 0x7f, 0x11, - 0x79, 0x2f, 0x7f, 0x2b, 0xf8, 0x9e, 0xd6, 0xfa, 0x99, 0xc0, 0xb4, 0x1f, 0x84, 0x6d, 0x43, 0xed, - 0x4f, 0x1e, 0x8d, 0x7e, 0xf1, 0xb1, 0x35, 0xb4, 0x4c, 0xfe, 0x85, 0x70, 0x74, 0x13, 0x38, 0xd1, - 0x26, 0x3f, 0x85, 0x4a, 0xc9, 0x2b, 0xd3, 0x1e, 0x5b, 0xf3, 0x3f, 0x46, 0x1f, 0xfd, 0x39, 0xe2, - 0x6b, 0x7e, 0xef, 0x0c, 0xcd, 0x6d, 0xd7, 0xb1, 0xb9, 0xfb, 0x2a, 0xd9, 0x14, 0xcc, 0xba, 0x50, - 0x7d, 0x8b, 0x7c, 0x7d, 0x9c, 0xea, 0x33, 0xc4, 0x4a, 0xe3, 0x11, 0xf9, 0x0c, 0xe1, 0x98, 0x5f, - 0xa1, 0x64, 0x65, 0x8a, 0x62, 0x96, 0x92, 0xaf, 0x4f, 0x5d, 0xfe, 0xf9, 0x1f, 0x9e, 0x9f, 0xe4, - 0xeb, 0x44, 0x9b, 0x52, 0x32, 0xf9, 0x49, 0x04, 0x5f, 0x08, 0x4e, 0xdc, 0x64, 0x96, 0xf3, 0x79, - 0xe6, 0xe6, 0x74, 0xa0, 0x40, 0xf4, 0xcf, 0xcf, 0x25, 0xb1, 0xef, 0x67, 0xbe, 0x3d, 0x6b, 0x62, - 0x8f, 0xac, 0x3a, 0xf2, 0x13, 0xfd, 0x1f, 0x08, 0xc7, 0x65, 0x33, 0x9d, 0xb0, 0xc2, 0x87, 0x3a, - 0x6f, 0xe6, 0xb2, 0x2a, 0x2f, 0x8b, 0xd4, 0xf0, 0xb2, 0x48, 0x2d, 0xb5, 0x3d, 0x7e, 0x98, 0xff, - 0xf0, 0x5c, 0xb4, 0xbe, 0xbb, 0x3c, 0x63, 0x3a, 0xaf, 0xa1, 0xe5, 0x8c, 0xf7, 0xf4, 0x18, 0x45, - 0xfe, 0x76, 0x8c, 0x96, 0x27, 0x51, 0x25, 0xff, 0x7a, 0x9f, 0x1f, 0x23, 0xd4, 0x3b, 0x46, 0x2b, - 0xd3, 0xfe, 0x65, 0x3f, 0xf9, 0x6b, 0x3a, 0xa2, 0xa0, 0xf5, 0x5f, 0xa1, 0x8f, 0x6f, 0xcf, 0x6f, - 0xe8, 0x7b, 0x77, 0xb6, 0x9f, 0xbd, 0xc8, 0xce, 0x3d, 0x7f, 0x91, 0x9d, 0xfb, 0xfc, 0x45, 0x16, - 0x7d, 0xd8, 0xcb, 0xa2, 0xdf, 0xf7, 0xb2, 0xe8, 0xa3, 0x5e, 0x16, 0x3d, 0xeb, 0x65, 0xd1, 0x27, - 0xbd, 0x2c, 0xfa, 0xb4, 0x97, 0x9d, 0xfb, 0xbc, 0x97, 0x45, 0x3f, 0x3b, 0xc9, 0xce, 0x3d, 0x3d, - 0xc9, 0xa2, 0x67, 0x27, 0xd9, 0xb9, 0xe7, 0x27, 0xd9, 0xb9, 0xef, 0x3c, 0x6c, 0xba, 0xde, 0xe3, - 0xa6, 0xda, 0x75, 0x5b, 0xe2, 0x5a, 0x49, 0xed, 0x0c, 0xdc, 0x2f, 0x15, 0x3c, 0xea, 0x76, 0xed, - 0x3a, 0xd0, 0x42, 0x68, 0xd6, 0xbc, 0x5a, 0xd3, 0xd5, 0xe0, 0x03, 0x1e, 0x5c, 0x2d, 0x9d, 0x75, - 0x91, 0x55, 0x8b, 0x8b, 0x2d, 0xba, 0xf1, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x39, 0x0a, 0xd8, - 0xe6, 0x8b, 0x14, 0x00, 0x00, + // 1671 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x9a, 0x75, 0x59, 0x96, 0x0e, + 0x0a, 0x41, 0x28, 0x77, 0x65, 0xd9, 0x29, 0x1c, 0xb5, 0x75, 0x4b, 0xc9, 0xa4, 0x2a, 0x5b, 0xb6, + 0x84, 0x25, 0x25, 0xc4, 0x3d, 0x74, 0xb1, 0x5c, 0x3e, 0xd2, 0x5b, 0x93, 0xbb, 0xdb, 0x99, 0x21, + 0x15, 0xb5, 0x10, 0xd0, 0xe6, 0x5e, 0x20, 0x40, 0x7b, 0xe9, 0xcf, 0xa1, 0x68, 0x10, 0xa0, 0x05, + 0x7a, 0xe9, 0x21, 0x40, 0x01, 0x5d, 0x7c, 0x6b, 0x90, 0x43, 0x61, 0xb4, 0x17, 0x1f, 0x63, 0xaa, + 0x87, 0xe4, 0x16, 0xf4, 0xd8, 0x53, 0xb1, 0x33, 0xbb, 0x34, 0x49, 0xb1, 0x0a, 0xc9, 0x0a, 0x3e, + 0x71, 0x67, 0xde, 0xfb, 0xbe, 0x9d, 0xf7, 0xcd, 0x7b, 0x8f, 0xb3, 0x83, 0x6f, 0x75, 0x81, 0xa9, + 0xb6, 0xab, 0x31, 0xeb, 0x11, 0xb4, 0x4d, 0xad, 0x6b, 0xc3, 0x01, 0xd3, 0xcc, 0x9f, 0x74, 0x28, + 0x18, 0x5d, 0x07, 0xb8, 0xc1, 0x6c, 0x0e, 0x9a, 0xd7, 0xa9, 0xb5, 0x6c, 0xcb, 0xb0, 0x68, 0xa7, + 0x6e, 0x7a, 0xb6, 0xea, 0x51, 0x97, 0xbb, 0xe4, 0x9a, 0x44, 0xaa, 0x12, 0xa9, 0x0a, 0xa4, 0x3a, + 0x82, 0xcc, 0x14, 0x9a, 0x36, 0x7f, 0xd4, 0xa9, 0xa9, 0x96, 0xdb, 0xd6, 0x9a, 0x6e, 0xd3, 0xd5, + 0x04, 0xb6, 0xd6, 0x69, 0x88, 0x91, 0x18, 0x88, 0x27, 0xc9, 0x99, 0xb9, 0xda, 0x74, 0xdd, 0x66, + 0x0b, 0x34, 0xd3, 0xb3, 0x35, 0xd3, 0x71, 0x5c, 0x6e, 0x72, 0xdb, 0x75, 0x58, 0x60, 0xfd, 0x72, + 0x60, 0xed, 0x73, 0x40, 0xdb, 0xe3, 0x87, 0x81, 0x31, 0x33, 0x1c, 0x08, 0x50, 0xea, 0xd2, 0x3e, + 0x70, 0xd8, 0xe6, 0x7a, 0x83, 0xac, 0x57, 0x86, 0x8d, 0xfc, 0xd0, 0x83, 0xd0, 0x94, 0x1f, 0x11, + 0x07, 0x18, 0x38, 0xdd, 0x11, 0x78, 0xee, 0xb4, 0x80, 0xc6, 0xb0, 0xc7, 0xca, 0x24, 0x12, 0xbb, + 0xb5, 0x1f, 0x81, 0xc5, 0x03, 0x84, 0x36, 0x09, 0x62, 0x70, 0xa1, 0x37, 0xc7, 0x01, 0x38, 0x50, + 0x6a, 0x36, 0x5c, 0xda, 0x36, 0x3c, 0x93, 0x9a, 0x6d, 0xe0, 0x40, 0xd9, 0x10, 0xea, 0xab, 0x63, + 0x51, 0x2f, 0x1c, 0xf2, 0x1f, 0x22, 0x7c, 0x71, 0x83, 0x82, 0xc9, 0x41, 0x87, 0x1f, 0x77, 0x80, + 0x71, 0xf2, 0x5d, 0x9c, 0x68, 0x03, 0x37, 0xeb, 0x26, 0x37, 0xd3, 0x28, 0x87, 0x96, 0x52, 0xab, + 0xd7, 0xd4, 0xe1, 0x3c, 0xd8, 0x11, 0x81, 0x48, 0xd4, 0x7d, 0xe0, 0x66, 0xf5, 0xd0, 0x03, 0xbd, + 0x0f, 0x22, 0x6f, 0xe3, 0x18, 0xf3, 0xc0, 0x4a, 0x47, 0x04, 0xf8, 0x86, 0x3a, 0x41, 0x12, 0xa9, + 0x92, 0xac, 0xe2, 0x81, 0xe5, 0x93, 0xad, 0x5f, 0xfa, 0xcd, 0xd1, 0x82, 0xcf, 0xa1, 0x36, 0x2d, + 0xc3, 0xff, 0xd5, 0x05, 0xe3, 0x5a, 0xf2, 0xe3, 0xdb, 0x71, 0xf9, 0xf2, 0xfc, 0xcf, 0x23, 0x78, + 0x31, 0x5c, 0x37, 0xf3, 0x5c, 0x87, 0x01, 0xf9, 0xf6, 0xa9, 0x85, 0xe7, 0xc6, 0x2e, 0x7c, 0x13, + 0xf8, 0x98, 0x55, 0xef, 0xe0, 0x4b, 0xec, 0x90, 0x71, 0x68, 0x1b, 0x7d, 0x92, 0xa8, 0x20, 0xf9, + 0xfa, 0x08, 0x49, 0x45, 0x78, 0x9d, 0xa6, 0x5a, 0x94, 0xf0, 0xfb, 0x21, 0xe1, 0xde, 0x90, 0x0c, + 0x2b, 0x13, 0xc9, 0xb0, 0x09, 0x7c, 0x0a, 0x0d, 0x3e, 0x43, 0x78, 0x51, 0x07, 0xaf, 0x65, 0x5a, + 0xfd, 0xcd, 0xfb, 0xde, 0x29, 0x0d, 0xde, 0x18, 0xab, 0x41, 0x00, 0x1b, 0xa3, 0xc3, 0xc3, 0xa1, + 0x65, 0xdf, 0x9c, 0x68, 0xd9, 0x01, 0xdb, 0x17, 0x2c, 0x9d, 0x68, 0x58, 0xa1, 0xc0, 0xdc, 0x0e, + 0xb5, 0xc0, 0xe8, 0x02, 0x65, 0xb6, 0xeb, 0x08, 0x8d, 0x93, 0xeb, 0xb1, 0x4f, 0x8f, 0x11, 0xd2, + 0x2f, 0x85, 0xd6, 0x7d, 0x69, 0x1c, 0x8c, 0xf5, 0x15, 0x7c, 0xa9, 0x1f, 0xaa, 0xdc, 0xef, 0xfc, + 0xfb, 0x08, 0xe3, 0x4d, 0xe0, 0x61, 0xe8, 0x57, 0x71, 0xd2, 0x31, 0xdb, 0xc0, 0x3c, 0xd3, 0x02, + 0x11, 0x7b, 0x52, 0x7f, 0x31, 0x41, 0x08, 0x8e, 0xf9, 0x03, 0x11, 0x56, 0x52, 0x17, 0xcf, 0xc4, + 0xc2, 0xfe, 0x1b, 0x05, 0x99, 0xe1, 0x17, 0x91, 0xc9, 0xc5, 0x72, 0x16, 0x57, 0xd7, 0x26, 0xdd, + 0xac, 0x70, 0x2d, 0x65, 0x81, 0xde, 0x70, 0xeb, 0xa0, 0x2f, 0xd2, 0xa1, 0xb9, 0xfc, 0x5f, 0xe2, + 0x38, 0x35, 0xe0, 0x49, 0x2a, 0x38, 0x65, 0x89, 0xbc, 0x15, 0xaf, 0x0c, 0x64, 0x5e, 0x9d, 0xa2, + 0x48, 0x82, 0x78, 0x75, 0x2c, 0x69, 0xfc, 0xd7, 0x90, 0x7d, 0xbc, 0x40, 0xa5, 0x3a, 0x92, 0x35, + 0x3a, 0x45, 0xe9, 0x0d, 0x67, 0x90, 0x9e, 0x0a, 0x88, 0x04, 0xef, 0xb8, 0x1d, 0x8b, 0x9d, 0xb1, + 0x63, 0x43, 0x35, 0x38, 0x7f, 0x1e, 0x35, 0x78, 0xe1, 0x5c, 0x6a, 0x30, 0x7e, 0xae, 0x35, 0x48, + 0x76, 0x71, 0x9c, 0x71, 0x93, 0x77, 0x58, 0xfa, 0xf7, 0xbf, 0x43, 0xb9, 0xe8, 0x52, 0x6a, 0xf5, + 0xfa, 0x44, 0xd4, 0x15, 0x01, 0x92, 0xcb, 0x5e, 0x8f, 0x3e, 0x39, 0x42, 0x7a, 0xc0, 0x43, 0xb6, + 0xf0, 0x2b, 0x14, 0x1a, 0x40, 0xa9, 0xed, 0x34, 0x0d, 0xf9, 0x47, 0xc1, 0xd2, 0x09, 0x41, 0x7d, + 0xf5, 0x7f, 0x14, 0x70, 0x43, 0x44, 0xac, 0xf4, 0x61, 0x72, 0x9e, 0x91, 0x7d, 0x9c, 0xae, 0x43, + 0x0b, 0x38, 0xd4, 0x0d, 0x69, 0x83, 0x7a, 0x9f, 0x31, 0x39, 0x01, 0xe3, 0xe5, 0x00, 0xad, 0x07, + 0xe0, 0x90, 0xf7, 0x6d, 0x7c, 0xa5, 0x6e, 0x33, 0xb3, 0xd6, 0x1a, 0x47, 0x8c, 0x27, 0x20, 0x7e, + 0x3d, 0x84, 0x8f, 0x30, 0x0f, 0x94, 0xf9, 0xdd, 0x58, 0x02, 0x29, 0x91, 0xfc, 0x07, 0x08, 0xa7, + 0xb6, 0x6d, 0x36, 0x61, 0x69, 0x7f, 0x0d, 0x2f, 0xb4, 0xcc, 0x1a, 0xb4, 0x8c, 0x86, 0xdd, 0xe2, + 0x40, 0x83, 0x12, 0x4f, 0x89, 0xb9, 0xb2, 0x98, 0x22, 0xd7, 0xf0, 0x45, 0x0a, 0x9e, 0x4b, 0xb9, + 0xd1, 0xb0, 0xa1, 0x55, 0x67, 0xe9, 0x68, 0x2e, 0xba, 0x94, 0xd4, 0x17, 0xe4, 0x64, 0x59, 0xcc, + 0x91, 0x15, 0xfc, 0x6a, 0xe0, 0x24, 0x37, 0x25, 0xf4, 0x8d, 0x09, 0x5f, 0x22, 0x6d, 0x72, 0x0b, + 0x25, 0x22, 0xff, 0x49, 0x1c, 0x2b, 0x72, 0x9d, 0xb2, 0xb8, 0xb7, 0x38, 0xb4, 0xc9, 0x65, 0x1c, + 0xe7, 0xe0, 0x98, 0x0e, 0x17, 0x59, 0x97, 0xd4, 0x83, 0xd1, 0x0c, 0xfd, 0x49, 0xc1, 0xd1, 0x8e, + 0x5d, 0x97, 0x2d, 0x52, 0xf7, 0x1f, 0x49, 0x0e, 0xa7, 0xea, 0xc0, 0x2c, 0x6a, 0x8b, 0xd3, 0x47, + 0x3a, 0x25, 0x23, 0x1d, 0x98, 0x22, 0x19, 0x9c, 0x08, 0x65, 0x4e, 0x2f, 0xe4, 0xd0, 0x52, 0x42, + 0xef, 0x8f, 0xc9, 0x43, 0x1c, 0x17, 0xa2, 0xc8, 0x90, 0x52, 0xab, 0xc5, 0x89, 0x92, 0x76, 0x34, + 0x40, 0x75, 0x5b, 0x70, 0x94, 0x1c, 0x4e, 0x0f, 0xf5, 0x80, 0x90, 0x3c, 0xc2, 0xa9, 0x81, 0xc3, + 0x5c, 0x90, 0x0e, 0xe5, 0xd9, 0xf8, 0x8b, 0x2f, 0x88, 0xe4, 0x4b, 0x06, 0xa9, 0xc9, 0x5b, 0x18, + 0xbb, 0x07, 0x0e, 0x50, 0xc3, 0x67, 0x4b, 0x27, 0x45, 0x61, 0x67, 0x46, 0x5e, 0xb4, 0x6f, 0xc3, + 0x41, 0x98, 0x75, 0x49, 0xe1, 0xed, 0xcf, 0x0c, 0x35, 0xa7, 0x8b, 0xe7, 0xd1, 0x9c, 0x16, 0xff, + 0xaf, 0xe6, 0x74, 0x0f, 0x27, 0x9a, 0xbe, 0x08, 0x7e, 0x83, 0xba, 0x30, 0x5b, 0x83, 0xd2, 0x2f, + 0x34, 0xe5, 0x80, 0xec, 0x61, 0x1c, 0x64, 0x2d, 0x03, 0x1e, 0x74, 0x8e, 0x59, 0x9b, 0x52, 0x52, + 0x32, 0x55, 0x80, 0x67, 0xde, 0xc2, 0xa9, 0x81, 0xed, 0xf6, 0x33, 0xf2, 0x31, 0x1c, 0x06, 0xd9, + 0xeb, 0x3f, 0x92, 0x57, 0xf1, 0x7c, 0xd7, 0x6c, 0x75, 0xc2, 0xc4, 0x95, 0x83, 0xb5, 0xc8, 0x2d, + 0x94, 0xb9, 0x8d, 0x95, 0xd1, 0x9d, 0x9c, 0x06, 0x7f, 0x37, 0x96, 0x98, 0x57, 0xe2, 0xf9, 0x5f, + 0x20, 0xbc, 0x30, 0x98, 0x21, 0xe4, 0x1e, 0x9e, 0xb7, 0x39, 0xb4, 0x59, 0x5a, 0x36, 0xde, 0x37, + 0x67, 0xca, 0x31, 0x5d, 0x72, 0x90, 0x15, 0x1c, 0x97, 0x5f, 0x11, 0xe9, 0x88, 0x60, 0x4b, 0x8f, + 0xb0, 0x95, 0x7c, 0xa3, 0x10, 0x3a, 0xf0, 0xcb, 0x3f, 0xc6, 0x17, 0xef, 0x88, 0xfe, 0x38, 0xfb, + 0xb1, 0x63, 0x09, 0x2b, 0x0d, 0xd3, 0x6e, 0x19, 0x76, 0xa3, 0xdf, 0x47, 0x45, 0x8d, 0x27, 0xf4, + 0x45, 0x7f, 0x7e, 0xab, 0x11, 0xf6, 0xc7, 0xe5, 0x7f, 0x23, 0xfc, 0xda, 0xd8, 0x53, 0x06, 0xc9, + 0xe0, 0xcb, 0x9b, 0xa5, 0xaa, 0xa1, 0x57, 0x76, 0x8d, 0xf2, 0x8e, 0x7e, 0xbf, 0x58, 0x35, 0xee, + 0x94, 0xca, 0xc5, 0xbd, 0xed, 0xaa, 0x32, 0x47, 0xbe, 0x82, 0xaf, 0x8c, 0xd8, 0xca, 0x3b, 0xba, + 0xb1, 0xa1, 0x97, 0x8a, 0xd5, 0x92, 0x82, 0x48, 0x16, 0x67, 0xc6, 0x98, 0xf5, 0xd2, 0xee, 0x76, + 0x71, 0xa3, 0xa4, 0x44, 0xc8, 0x15, 0xfc, 0xda, 0x88, 0xbd, 0x52, 0x2d, 0x56, 0xf7, 0x2a, 0x4a, + 0x94, 0xbc, 0x8e, 0xbf, 0x34, 0x62, 0xd2, 0x4b, 0xc5, 0x3b, 0x4a, 0x8c, 0xbc, 0x81, 0x73, 0xa7, + 0x0c, 0xe5, 0x92, 0xae, 0x6f, 0x3d, 0xd8, 0x34, 0x76, 0xd6, 0xef, 0x96, 0x36, 0xaa, 0x15, 0x65, + 0x7e, 0x8c, 0xd7, 0xba, 0xbe, 0x73, 0xaf, 0xf4, 0x40, 0x3a, 0x97, 0x1e, 0x6c, 0x94, 0x2a, 0x4a, + 0x7c, 0xf5, 0xb3, 0x14, 0x8e, 0x16, 0x77, 0xb7, 0xc8, 0xaf, 0x23, 0x38, 0x2e, 0x4f, 0x3c, 0x64, + 0x86, 0xe3, 0x51, 0xe6, 0xc6, 0x54, 0x98, 0xe0, 0x48, 0xf9, 0x01, 0xea, 0xfd, 0x2d, 0xfd, 0xc3, + 0xc6, 0x9b, 0xef, 0x58, 0x05, 0xdf, 0x5c, 0x68, 0x9b, 0x8e, 0xd9, 0x84, 0x36, 0x38, 0xbc, 0x50, + 0x33, 0x99, 0x6d, 0x15, 0x3a, 0x0c, 0xe8, 0x37, 0xc6, 0xda, 0x19, 0x37, 0x9d, 0xba, 0x49, 0xeb, + 0xd2, 0xa5, 0x0b, 0xac, 0x60, 0xbb, 0x05, 0xdb, 0x69, 0x50, 0x93, 0x71, 0xda, 0xb1, 0x78, 0x87, + 0x42, 0xe1, 0x80, 0xda, 0x1c, 0xde, 0xfd, 0xe7, 0xbf, 0x7e, 0x19, 0xf9, 0x4e, 0xfe, 0x56, 0xf0, + 0xc9, 0xad, 0xf5, 0x93, 0x85, 0x69, 0x3f, 0x0d, 0x3b, 0x8b, 0xda, 0x9f, 0x3c, 0x1a, 0xfd, 0x28, + 0x64, 0x6b, 0x68, 0x99, 0xfc, 0x2a, 0x82, 0xa3, 0x9b, 0xc0, 0x89, 0x36, 0xf9, 0x41, 0x55, 0xaa, + 0xb2, 0x32, 0xed, 0xc9, 0x36, 0xff, 0x27, 0xf4, 0xd1, 0x5f, 0x23, 0xbe, 0x2c, 0xd6, 0x19, 0xb2, + 0xb4, 0x5d, 0xc7, 0xe6, 0xee, 0x17, 0x29, 0x13, 0x7a, 0x8d, 0x17, 0x87, 0x82, 0x59, 0x17, 0xda, + 0xdc, 0x22, 0xdf, 0x1c, 0xa7, 0xcd, 0x19, 0x92, 0x48, 0xe3, 0x11, 0x79, 0x2f, 0x82, 0x63, 0x7e, + 0xa9, 0x93, 0x95, 0x29, 0xba, 0x82, 0x14, 0xe6, 0xfa, 0xd4, 0x7d, 0x24, 0xff, 0x87, 0x97, 0xae, + 0xcc, 0x75, 0xa2, 0x4d, 0xa9, 0x0c, 0xf9, 0x73, 0x04, 0x5f, 0x08, 0x4e, 0xf8, 0x64, 0x96, 0xef, + 0x81, 0xcc, 0xcd, 0xe9, 0x40, 0x81, 0x36, 0x1f, 0xbe, 0xac, 0x42, 0xba, 0x9f, 0xf9, 0xfe, 0xac, + 0x85, 0x34, 0xe2, 0x75, 0xe4, 0x17, 0xd6, 0x7f, 0x10, 0x8e, 0xcb, 0xfe, 0x3e, 0x61, 0xd3, 0x19, + 0xfa, 0x33, 0xc8, 0x5c, 0x56, 0xe5, 0xfd, 0x95, 0x1a, 0xde, 0x5f, 0xa9, 0xa5, 0xb6, 0xc7, 0x0f, + 0xf3, 0xef, 0xbf, 0x2c, 0x39, 0xbe, 0xb5, 0x3c, 0x63, 0xed, 0xac, 0xa1, 0xe5, 0x8c, 0xf7, 0xe4, + 0x18, 0x45, 0xfe, 0x71, 0x8c, 0x96, 0x27, 0x09, 0x5c, 0x1e, 0x18, 0x9e, 0x1d, 0x23, 0xd4, 0x3b, + 0x46, 0x2b, 0xd3, 0x1e, 0x34, 0xde, 0xfd, 0x7b, 0x3a, 0xa2, 0xa0, 0xf5, 0xdf, 0xa2, 0x8f, 0x6f, + 0xcf, 0x6f, 0xe8, 0x7b, 0x77, 0xb6, 0x9f, 0x3e, 0xcf, 0xce, 0x3d, 0x7b, 0x9e, 0x9d, 0xfb, 0xfc, + 0x79, 0x16, 0xfd, 0xac, 0x97, 0x45, 0x7f, 0xec, 0x65, 0xd1, 0x47, 0xbd, 0x2c, 0x7a, 0xda, 0xcb, + 0xa2, 0x4f, 0x7a, 0x59, 0xf4, 0x69, 0x2f, 0x3b, 0xf7, 0x79, 0x2f, 0x8b, 0xde, 0x3b, 0xc9, 0xce, + 0x3d, 0x39, 0xc9, 0xa2, 0xa7, 0x27, 0xd9, 0xb9, 0x67, 0x27, 0xd9, 0xb9, 0x1f, 0x3c, 0x6c, 0xba, + 0xde, 0xe3, 0xa6, 0xda, 0x75, 0x5b, 0xe2, 0x32, 0x4c, 0xed, 0x0c, 0xdc, 0x8a, 0x15, 0x3c, 0xea, + 0x76, 0xed, 0x3a, 0xd0, 0x42, 0x68, 0xd6, 0xbc, 0x5a, 0xd3, 0xd5, 0xe0, 0x1d, 0x1e, 0x5c, 0x88, + 0x9d, 0x75, 0xfd, 0x56, 0x8b, 0x8b, 0x5d, 0xbc, 0xf1, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0a, + 0x5f, 0x74, 0xe2, 0x41, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.vesapi.go index 07544ced6..47fa7bd21 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/public_crudapi.vesapi.go @@ -2201,7 +2201,7 @@ var APISwaggerJSON string = `{ "items": { "$ref": "#/definitions/azure_vnet_siteVnetPeeringType" }, - "x-displayname": "Spoke VNet Peering", + "x-displayname": "Spoke VNet Peering (Legacy)", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "100", "ves.io.schema.rules.repeated.unique": "true" @@ -2314,6 +2314,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Static Routes" }, + "node": { + "description": " Ingress/Egress Gateway (Two Interface) Node information.", + "title": "Node Information", + "$ref": "#/definitions/viewsAzureVnetTwoInterfaceNodeARType", + "x-displayname": "Ingress/Egress Gateway (Two Interface) Node information" + }, "not_hub": { "description": "Exclusive with [hub]\n This VNet is a standalone VNet", "title": "Standalone VNet", @@ -4894,10 +4900,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4954,10 +4964,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5016,10 +5030,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6595,6 +6613,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -6915,9 +7004,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "disk_size": { "type": "integer", @@ -6949,6 +7038,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/azure_vnet_siteAzureVnetIngressGwARType", "x-displayname": "Ingress Gateway (One Interface) on Alternate Region" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -7014,14 +7108,16 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "sw": { @@ -7148,9 +7244,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "disk_size": { "type": "integer", @@ -7188,6 +7284,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/azure_vnet_siteAzureVnetIngressGwARType", "x-displayname": "Ingress Gateway (One Interface) on Alternate Region" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -7262,14 +7363,16 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "suggested_action": { @@ -7335,6 +7438,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-blocked_services_choice": "[\"block_all_services\",\"blocked_services\",\"default_blocked_services\"]", "x-ves-oneof-field-deployment": "[\"azure_cred\"]", "x-ves-oneof-field-logs_receiver_choice": "[\"log_receiver\",\"logs_streaming_disabled\"]", + "x-ves-oneof-field-region_choice": "[\"alternate_region\",\"azure_region\"]", "x-ves-oneof-field-site_type": "[\"ingress_egress_gw\",\"ingress_egress_gw_ar\",\"ingress_gw\",\"ingress_gw_ar\",\"voltstack_cluster\",\"voltstack_cluster_ar\"]", "x-ves-oneof-field-worker_nodes": "[\"no_worker_nodes\",\"nodes_per_az\",\"total_nodes\"]", "x-ves-proto-message": "ves.io.schema.views.azure_vnet_site.ReplaceSpecType", @@ -7349,11 +7453,31 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "256" } }, + "alternate_region": { + "type": "string", + "description": "Exclusive with [azure_region]\n Name of the azure region which does not support availability zones.\n\nExample: - \"northcentralus\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-displayname": "Alternate Azure Region Name", + "x-ves-example": "northcentralus", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, "azure_cred": { "description": "Exclusive with []\n Reference to Azure credentials for automatic deployment", "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Cloud Credentials" }, + "azure_region": { + "type": "string", + "description": "Exclusive with [alternate_region]\n Name of the azure region which supports availability zones.\n\nExample: - \"eastus\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-displayname": "Recommended Azure Region Name", + "x-ves-example": "eastus", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, "block_all_services": { "description": "Exclusive with [blocked_services default_blocked_services]\n Block DNS, SSH \u0026 WebUI services on Site", "$ref": "#/definitions/ioschemaEmpty", @@ -7376,9 +7500,19 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" + }, + "disk_size": { + "type": "integer", + "description": " Disk size to be used for this instance in GiB. 80 is 80 GiB\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 4095\n", + "format": "int64", + "x-displayname": "Cloud Disk Size", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "4095" + } }, "ingress_egress_gw": { "description": "Exclusive with [ingress_egress_gw_ar ingress_gw ingress_gw_ar voltstack_cluster voltstack_cluster_ar]\n Two interface site is useful when site is used as ingress/egress gateway to the VNet.", @@ -7404,6 +7538,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/azure_vnet_siteAzureVnetIngressGwARReplaceType", "x-displayname": "Ingress Gateway (One Interface) on Alternate Region" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -7414,6 +7553,18 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Logs Streaming" }, + "machine_type": { + "type": "string", + "description": " Select Instance size based on performance needed.\n The default setting for Accelerated Networking is enabled, thus make sure \n you select a Virtual Machine that supports accelerated networking or \n disable the setting under, Select Ingress Gateway or Ingress/Egress Gateway \n \u003e advanced options.\n\nExample: - \"Standard_D3_v2\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-displayname": "Azure Machine Type for Node", + "x-ves-example": "Standard_D3_v2", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, "no_worker_nodes": { "description": "Exclusive with [nodes_per_az total_nodes]\n Worker nodes is set to zero", "$ref": "#/definitions/ioschemaEmpty", @@ -7435,6 +7586,34 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsOfflineSurvivabilityModeType", "x-displayname": "Offline Survivability Mode" }, + "resource_group": { + "type": "string", + "description": " Azure resource group for resources that will be created\n\nExample: - \"my-resources\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, + "maxLength": 64, + "x-displayname": "Resource Group", + "x-ves-example": "my-resources", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "ssh_key": { + "type": "string", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, + "maxLength": 8192, + "x-displayname": "Public SSH key", + "x-ves-example": "ssh-rsa AAAAB...", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" + } + }, "total_nodes": { "type": "integer", "description": "Exclusive with [no_worker_nodes nodes_per_az]\n Total number of worker nodes to be deployed across all AZ's used in the Site\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 61\n", @@ -7446,6 +7625,15 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "61" } }, + "vnet": { + "description": " Choice of using existing VNet or create new VNet\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/viewsAzureVnetChoiceType", + "x-displayname": "Vnet", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "voltstack_cluster": { "description": "Exclusive with [ingress_egress_gw ingress_egress_gw_ar ingress_gw ingress_gw_ar voltstack_cluster_ar]\n App Stack Cluster using single interface, useful for deploying K8s cluster.", "title": "App Stack Cluster on Recommended Region", diff --git a/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.pb.go b/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.pb.go index 68d4ce269..6fd3e4f5d 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.pb.go @@ -298,55 +298,56 @@ func init() { } var fileDescriptor_9248f4176755194d = []byte{ - // 764 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x4b, 0x6f, 0xe3, 0x54, - 0x14, 0xce, 0x4d, 0xa0, 0xa8, 0xae, 0xe8, 0xc3, 0x42, 0x22, 0x0a, 0x95, 0x15, 0x19, 0x16, 0x25, - 0xd4, 0x36, 0xa4, 0xe2, 0xa1, 0xa8, 0x2c, 0xda, 0x0a, 0xa1, 0xb0, 0x80, 0x28, 0x45, 0x91, 0x60, - 0x63, 0x5d, 0xbb, 0x27, 0xee, 0x85, 0xd8, 0xf7, 0xe2, 0x7b, 0xed, 0x3e, 0x50, 0x25, 0xd4, 0x7d, - 0xa5, 0x8a, 0xf2, 0x1b, 0x10, 0x0b, 0x24, 0xf6, 0x74, 0xd3, 0x1d, 0xac, 0x50, 0xc5, 0x6c, 0xba, - 0x9c, 0x3a, 0xb3, 0x98, 0xd9, 0xf5, 0x07, 0xcc, 0x48, 0x23, 0xdf, 0x38, 0x6d, 0x1e, 0xd5, 0x28, - 0xd3, 0xe9, 0xee, 0x9e, 0xf3, 0x9d, 0x2f, 0xf9, 0xce, 0x77, 0x4e, 0x4e, 0x94, 0x5a, 0x0c, 0xdc, - 0x24, 0xd4, 0xe2, 0xee, 0x36, 0xf8, 0xd8, 0x8a, 0x09, 0xec, 0x70, 0x0b, 0xef, 0x47, 0x21, 0xd8, - 0x71, 0x00, 0xc2, 0xe6, 0x44, 0x80, 0xc5, 0x22, 0xa7, 0x43, 0x5c, 0xdb, 0x8d, 0xb8, 0xa0, 0x3e, - 0x66, 0xc4, 0x64, 0x21, 0x15, 0x54, 0x7d, 0xb7, 0xc7, 0x35, 0x7b, 0x5c, 0x53, 0x72, 0xcd, 0x11, - 0x6e, 0xc9, 0xf0, 0x88, 0xd8, 0x8e, 0x1c, 0xd3, 0xa5, 0xbe, 0xe5, 0x51, 0x8f, 0x5a, 0x92, 0xeb, - 0x44, 0x6d, 0x19, 0xc9, 0x40, 0xbe, 0x7a, 0x9f, 0x59, 0x5a, 0xf4, 0x28, 0xf5, 0x3a, 0x60, 0x61, - 0x46, 0x2c, 0x1c, 0x04, 0x54, 0x60, 0x41, 0x68, 0xc0, 0x33, 0xf4, 0x9d, 0x61, 0xb5, 0x94, 0x0d, - 0x82, 0xda, 0x30, 0x28, 0x95, 0x8b, 0x3d, 0x06, 0x7d, 0x7c, 0x71, 0xa4, 0x55, 0xdc, 0x21, 0x5b, - 0x58, 0x40, 0x86, 0xea, 0x23, 0x28, 0x70, 0x08, 0xe2, 0x91, 0x6f, 0x28, 0x8f, 0x9b, 0x65, 0x0f, - 0x57, 0x7c, 0x38, 0x89, 0x9d, 0xd4, 0xf9, 0x01, 0x5c, 0x91, 0x31, 0xac, 0x49, 0x18, 0x83, 0x6d, - 0xbc, 0x77, 0x1b, 0x21, 0xad, 0xb2, 0x07, 0xaa, 0xf4, 0x3f, 0x91, 0xb2, 0xb0, 0x09, 0xa2, 0x55, - 0x6f, 0xd4, 0x83, 0x36, 0x6d, 0xc2, 0x4f, 0x11, 0x70, 0xa1, 0x2e, 0x2a, 0xd3, 0x01, 0xf6, 0x81, - 0x33, 0xec, 0x42, 0x11, 0x95, 0xd1, 0xd2, 0x74, 0xf3, 0x26, 0xa1, 0xaa, 0xca, 0x6b, 0x69, 0x50, - 0xcc, 0x4b, 0x40, 0xbe, 0x55, 0x50, 0x16, 0x62, 0xc2, 0x6c, 0x86, 0x43, 0xec, 0x73, 0x9b, 0x41, - 0x68, 0xe3, 0xfd, 0x62, 0xa1, 0x5c, 0x58, 0x9a, 0xa9, 0xbe, 0x6f, 0x0e, 0xcf, 0x3f, 0xd5, 0x60, - 0x36, 0xd2, 0x55, 0xe1, 0xdb, 0xad, 0x7a, 0xa3, 0x21, 0x29, 0x0d, 0x08, 0xd7, 0xf6, 0xd7, 0xe7, - 0xfe, 0x7e, 0x72, 0x56, 0x50, 0x7e, 0x45, 0x6f, 0x54, 0x5e, 0xff, 0x68, 0xb9, 0xba, 0xbc, 0xd2, - 0x9c, 0x8d, 0x09, 0x1b, 0x28, 0xd0, 0xdf, 0x52, 0xd4, 0x41, 0xb5, 0x9c, 0xd1, 0x80, 0x83, 0xfe, - 0x17, 0x52, 0xde, 0xde, 0x04, 0xb1, 0xd1, 0xa1, 0xd1, 0xd6, 0x26, 0x11, 0xf0, 0x6a, 0xad, 0x38, - 0xca, 0xdc, 0x80, 0xaf, 0x24, 0x68, 0xd3, 0x62, 0xa1, 0x8c, 0x96, 0x66, 0xaa, 0x35, 0x73, 0x82, - 0x45, 0x36, 0xd7, 0xd2, 0xb8, 0x15, 0x80, 0xe8, 0x2b, 0xf9, 0x76, 0x8f, 0x41, 0xf3, 0x4d, 0xdc, - 0x4f, 0xa7, 0x29, 0xbd, 0xa4, 0x14, 0xc7, 0x05, 0xf7, 0xba, 0xa9, 0x3e, 0x9b, 0x52, 0xa6, 0x37, - 0xe4, 0x4f, 0x68, 0xad, 0x51, 0x57, 0x8f, 0xf2, 0x8a, 0x72, 0xd3, 0xb2, 0xfa, 0xc9, 0x44, 0x1a, - 0xc6, 0x26, 0x5a, 0xfa, 0xf4, 0xa5, 0x79, 0x99, 0xb7, 0x47, 0x28, 0xf9, 0xa7, 0xb8, 0x1a, 0x03, - 0x37, 0x08, 0x35, 0x48, 0xd0, 0x0e, 0x31, 0x17, 0x61, 0xe4, 0x8a, 0x28, 0x04, 0x63, 0x27, 0x24, - 0x02, 0x96, 0xcb, 0xed, 0x8f, 0x77, 0x5d, 0x23, 0xe5, 0x1b, 0x3e, 0x0e, 0xb0, 0x07, 0x3e, 0x04, - 0xc2, 0x70, 0x30, 0x27, 0xae, 0x11, 0x71, 0x08, 0x0f, 0x1f, 0x3c, 0x3a, 0xc9, 0x7f, 0xa9, 0xaf, - 0x67, 0xe7, 0xc1, 0xba, 0x76, 0x9f, 0x5b, 0x3f, 0x5f, 0xbf, 0x0f, 0xc6, 0x76, 0x59, 0x62, 0x07, - 0x16, 0x07, 0x61, 0xa7, 0x9b, 0x95, 0xce, 0xa1, 0x86, 0x2a, 0xea, 0xef, 0x79, 0x65, 0x7e, 0xd4, - 0x3a, 0x75, 0x75, 0xd2, 0xee, 0x6e, 0x5b, 0x91, 0xd2, 0xe7, 0x77, 0x64, 0x67, 0x0e, 0xfd, 0x76, - 0x3f, 0x0e, 0x7d, 0xad, 0xd7, 0xef, 0xee, 0x90, 0x9b, 0x2a, 0x93, 0xd9, 0x6b, 0xa3, 0x9e, 0x22, - 0x65, 0xb6, 0x95, 0xdd, 0xae, 0x0d, 0x1a, 0xb4, 0x89, 0xa7, 0x56, 0x6e, 0x6d, 0x74, 0xb8, 0xa8, - 0x6f, 0xca, 0x07, 0x13, 0xd5, 0x66, 0x16, 0x1c, 0xdf, 0x8f, 0x05, 0x5f, 0xe9, 0x5f, 0xdc, 0xcd, - 0x82, 0xfe, 0x8d, 0xb6, 0x5d, 0xa9, 0xab, 0x86, 0x2a, 0xa5, 0xcf, 0xce, 0x4e, 0x51, 0xe1, 0xff, - 0x53, 0x54, 0x99, 0x64, 0xb6, 0xdf, 0xc8, 0x4b, 0x7b, 0xf8, 0x5f, 0x31, 0x3f, 0x8f, 0xd6, 0x4f, - 0xd0, 0xf9, 0xa5, 0x96, 0xbb, 0xb8, 0xd4, 0x72, 0x57, 0x97, 0x1a, 0xfa, 0x25, 0xd1, 0xd0, 0x1f, - 0x89, 0x86, 0xfe, 0x4d, 0x34, 0x74, 0x9e, 0x68, 0xe8, 0x61, 0xa2, 0xa1, 0xc7, 0x89, 0x96, 0xbb, - 0x4a, 0x34, 0x74, 0xdc, 0xd5, 0x72, 0x67, 0x5d, 0x0d, 0x9d, 0x77, 0xb5, 0xdc, 0x45, 0x57, 0xcb, - 0x7d, 0xff, 0x9d, 0x47, 0xd9, 0x8f, 0x9e, 0x19, 0xd3, 0x8e, 0x80, 0x30, 0xc4, 0x66, 0xc4, 0x2d, - 0xf9, 0x68, 0xd3, 0xd0, 0x37, 0x58, 0x48, 0x63, 0xb2, 0x05, 0xa1, 0xd1, 0x87, 0x2d, 0xe6, 0x78, - 0xd4, 0x82, 0x5d, 0xd1, 0xff, 0x27, 0x7a, 0xc1, 0x69, 0x77, 0xa6, 0xe4, 0xbd, 0x5e, 0x79, 0x1e, - 0x00, 0x00, 0xff, 0xff, 0x99, 0x2a, 0x20, 0xba, 0x89, 0x07, 0x00, 0x00, + // 775 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0x4d, 0x6f, 0xeb, 0x44, + 0x14, 0xcd, 0x24, 0xc0, 0x53, 0xfd, 0xc4, 0x7b, 0xad, 0x85, 0x44, 0x14, 0x2a, 0x2b, 0x32, 0x2c, + 0x4a, 0xa8, 0x6d, 0x48, 0xc5, 0x87, 0x22, 0x58, 0xb4, 0x15, 0x42, 0x61, 0x01, 0x51, 0x8a, 0x22, + 0xc1, 0xc6, 0x8c, 0x9d, 0x1b, 0x77, 0x20, 0xf6, 0x0c, 0x33, 0x63, 0xf7, 0x03, 0x55, 0x42, 0xfd, + 0x05, 0x88, 0xfe, 0x01, 0x96, 0x2c, 0x90, 0x50, 0x25, 0x16, 0x88, 0x6e, 0xba, 0x03, 0xb1, 0x40, + 0x15, 0x6c, 0xba, 0xa4, 0x0e, 0x0b, 0xba, 0xeb, 0x4f, 0x40, 0x9e, 0x38, 0x6d, 0x3e, 0x0a, 0x0a, + 0x45, 0xea, 0x6e, 0x66, 0xce, 0x39, 0xc9, 0xb9, 0x67, 0xae, 0xe7, 0x6a, 0x8d, 0x04, 0x84, 0x4d, + 0xa8, 0x23, 0xfc, 0x6d, 0x08, 0xb1, 0x93, 0x10, 0xd8, 0x11, 0x0e, 0xde, 0x8f, 0x39, 0xb8, 0x49, + 0x04, 0xd2, 0x15, 0x44, 0x82, 0xc3, 0x62, 0xaf, 0x4f, 0x7c, 0xd7, 0x8f, 0x85, 0xa4, 0x21, 0x66, + 0xc4, 0x66, 0x9c, 0x4a, 0xaa, 0x3f, 0x3f, 0xd4, 0xda, 0x43, 0xad, 0xad, 0xb4, 0xf6, 0x94, 0xb6, + 0x62, 0x05, 0x44, 0x6e, 0xc7, 0x9e, 0xed, 0xd3, 0xd0, 0x09, 0x68, 0x40, 0x1d, 0xa5, 0xf5, 0xe2, + 0x9e, 0xda, 0xa9, 0x8d, 0x5a, 0x0d, 0x7f, 0xb3, 0xb2, 0x1c, 0x50, 0x1a, 0xf4, 0xc1, 0xc1, 0x8c, + 0x38, 0x38, 0x8a, 0xa8, 0xc4, 0x92, 0xd0, 0x48, 0xe4, 0xe8, 0x73, 0x93, 0x6e, 0x29, 0x1b, 0x07, + 0x8d, 0x49, 0x50, 0x39, 0x97, 0x7b, 0x0c, 0x46, 0xf8, 0xf2, 0x54, 0xa9, 0xb8, 0x4f, 0xba, 0x58, + 0x42, 0x8e, 0x9a, 0x53, 0x28, 0x08, 0x88, 0x92, 0xa9, 0x7f, 0xa8, 0xce, 0x86, 0xe5, 0x4e, 0x32, + 0x5e, 0x9e, 0x27, 0x4e, 0xea, 0x7d, 0x02, 0xbe, 0xcc, 0x15, 0xce, 0x3c, 0x8a, 0xf1, 0x32, 0x5e, + 0xb8, 0x4d, 0x90, 0xb1, 0xdc, 0x31, 0x96, 0xf9, 0x2d, 0xd2, 0x96, 0xb6, 0x40, 0x76, 0x9a, 0xad, + 0x66, 0xd4, 0xa3, 0x6d, 0xf8, 0x2c, 0x06, 0x21, 0xf5, 0x65, 0x6d, 0x21, 0xc2, 0x21, 0x08, 0x86, + 0x7d, 0x28, 0xa3, 0x2a, 0x5a, 0x59, 0x68, 0xdf, 0x1c, 0xe8, 0xba, 0xf6, 0x44, 0xb6, 0x29, 0x17, + 0x15, 0xa0, 0xd6, 0x3a, 0x68, 0x4b, 0x09, 0x61, 0x2e, 0xc3, 0x1c, 0x87, 0xc2, 0x65, 0xc0, 0x5d, + 0xbc, 0x5f, 0x2e, 0x55, 0x4b, 0x2b, 0x0f, 0xeb, 0x2f, 0xda, 0x93, 0xf7, 0x9f, 0x79, 0xb0, 0x5b, + 0x59, 0xab, 0x88, 0xed, 0x4e, 0xb3, 0xd5, 0x52, 0x92, 0x16, 0xf0, 0xf5, 0xfd, 0x8d, 0xc7, 0x3f, + 0x5e, 0x9e, 0x96, 0xb4, 0xaf, 0xd0, 0x83, 0xda, 0x93, 0xaf, 0xac, 0xd6, 0x57, 0xd7, 0xda, 0x8f, + 0x12, 0xc2, 0xc6, 0x08, 0xe6, 0x33, 0x9a, 0x3e, 0xee, 0x56, 0x30, 0x1a, 0x09, 0x30, 0xbf, 0x43, + 0xda, 0xb3, 0x5b, 0x20, 0x37, 0xfb, 0x34, 0xee, 0x6e, 0x11, 0x09, 0xff, 0xaf, 0x14, 0x4f, 0x7b, + 0x3c, 0x96, 0x2b, 0x89, 0x7a, 0xb4, 0x5c, 0xaa, 0xa2, 0x95, 0x87, 0xf5, 0x86, 0x3d, 0x47, 0x23, + 0xdb, 0xeb, 0xd9, 0xbe, 0x13, 0x81, 0x1c, 0x39, 0xf9, 0x60, 0x8f, 0x41, 0xfb, 0x69, 0x3c, 0x3a, + 0xce, 0x8e, 0xcc, 0x8a, 0x56, 0x9e, 0x35, 0x3c, 0xac, 0xa6, 0x7e, 0xf9, 0x40, 0x5b, 0xd8, 0x54, + 0x9f, 0xd0, 0x7a, 0xab, 0xa9, 0x1f, 0x17, 0x35, 0xed, 0xa6, 0x64, 0xfd, 0xb5, 0xb9, 0x3c, 0xcc, + 0xdc, 0x68, 0xe5, 0xf5, 0xff, 0xac, 0xcb, 0xb3, 0x3d, 0x46, 0xe9, 0x4f, 0xe5, 0x8f, 0x13, 0x10, + 0x16, 0xa1, 0x16, 0x89, 0x7a, 0x1c, 0x0b, 0xc9, 0x63, 0x5f, 0xc6, 0x1c, 0xac, 0x1d, 0x4e, 0x24, + 0xac, 0x56, 0x7b, 0xaf, 0xee, 0xfa, 0x56, 0xa6, 0xb7, 0x42, 0x1c, 0xe1, 0x00, 0x42, 0x88, 0xa4, + 0xe5, 0x61, 0x41, 0x7c, 0x2b, 0x16, 0xc0, 0xff, 0x81, 0x20, 0x24, 0x8e, 0xba, 0x98, 0x77, 0x15, + 0xe7, 0xf0, 0xf7, 0x3f, 0x8f, 0x8a, 0xef, 0x98, 0x1b, 0xf9, 0x13, 0xe2, 0x5c, 0xdf, 0x90, 0x70, + 0x3e, 0xbf, 0x5e, 0x1f, 0xcc, 0xf4, 0xbb, 0xc2, 0x0e, 0x1c, 0x01, 0xd2, 0xcd, 0xba, 0x2f, 0xbb, + 0xab, 0x06, 0xaa, 0xe9, 0xbf, 0x14, 0xb5, 0xc5, 0xe9, 0x78, 0xf5, 0x37, 0xe7, 0x4d, 0xe0, 0xb6, + 0x36, 0xaa, 0xbc, 0x75, 0x47, 0x75, 0x9e, 0xe2, 0x0f, 0xf7, 0x97, 0xe2, 0x7b, 0x66, 0xf3, 0xee, + 0x29, 0xfa, 0x99, 0x7b, 0x75, 0x7a, 0x1d, 0xe6, 0xd7, 0x45, 0xed, 0x51, 0x27, 0x7f, 0x03, 0x37, + 0x69, 0xd4, 0x23, 0x81, 0x5e, 0xbb, 0x35, 0x8c, 0x49, 0xd2, 0x28, 0xb8, 0x97, 0xe6, 0xe2, 0xe6, + 0x31, 0x7d, 0x7f, 0x7f, 0x31, 0xbd, 0x6b, 0xbe, 0x7d, 0xb7, 0x98, 0x46, 0xf3, 0xc0, 0xf5, 0x95, + 0xf7, 0x06, 0xaa, 0x55, 0xde, 0x38, 0x3d, 0x41, 0xa5, 0xdf, 0x4e, 0x50, 0x6d, 0x9e, 0x1e, 0x79, + 0x5f, 0xbd, 0xea, 0x87, 0xbf, 0x96, 0x8b, 0x8b, 0x68, 0xe3, 0x08, 0x9d, 0x5d, 0x18, 0x85, 0xf3, + 0x0b, 0xa3, 0x70, 0x75, 0x61, 0xa0, 0x2f, 0x52, 0x03, 0x7d, 0x93, 0x1a, 0xe8, 0xe7, 0xd4, 0x40, + 0x67, 0xa9, 0x81, 0xfe, 0x48, 0x0d, 0xf4, 0x57, 0x6a, 0x14, 0xae, 0x52, 0x03, 0x7d, 0x39, 0x30, + 0x0a, 0xa7, 0x03, 0x03, 0x9d, 0x0d, 0x8c, 0xc2, 0xf9, 0xc0, 0x28, 0x7c, 0xf4, 0x61, 0x40, 0xd9, + 0xa7, 0x81, 0x9d, 0xd0, 0xbe, 0x04, 0xce, 0xb1, 0x1d, 0x0b, 0x47, 0x2d, 0x7a, 0x94, 0x87, 0x16, + 0xe3, 0x34, 0x21, 0x5d, 0xe0, 0xd6, 0x08, 0x76, 0x98, 0x17, 0x50, 0x07, 0x76, 0xe5, 0x68, 0xea, + 0xfd, 0xcb, 0x18, 0xf1, 0x9e, 0x52, 0xb3, 0x61, 0xed, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc6, + 0x52, 0x29, 0xf2, 0xf5, 0x07, 0x00, 0x00, } func (this *SetVIPInfoRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.vesapi.go b/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.vesapi.go index a2deec0b8..72fe7765f 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/public_customapi.vesapi.go @@ -1203,12 +1203,12 @@ var CustomAPISwaggerJSON string = `{ "properties": { "az_name": { "type": "string", - "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", + "description": " Name of the Availability zone\n\nExample: - \"us-east-2a\"-\n\nValidation Rules:\n ves.io.schema.rules.string.pattern: ^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$\n", "title": "AZ Name", "x-displayname": "AZ Name", "x-ves-example": "us-east-2a", "x-ves-validation-rules": { - "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" + "ves.io.schema.rules.string.pattern": "^[1-5]{1}$|^AzureAlternateRegion$|^[a-z]{2}-(?:gov-)?[a-z0-9]{4,20}-[a-z0-9]{2}$|^[a-z]{4,15}-[a-z0-9]{4,20}-[a-z]{1}$" } }, "inside_vip": { diff --git a/pbgo/extschema/schema/views/azure_vnet_site/types.pb.go b/pbgo/extschema/schema/views/azure_vnet_site/types.pb.go index 97262c564..b79aa0d54 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/types.pb.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/types.pb.go @@ -41,7 +41,7 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package type AzureHubVnetType struct { // Spoke VNet Peering // - // x-displayName: "Spoke VNet Peering" + // x-displayName: "Spoke VNet Peering (Legacy)" // Spoke VNet Peering SpokeVnets []*VnetPeeringType `protobuf:"bytes,1,rep,name=spoke_vnets,json=spokeVnets,proto3" json:"spoke_vnets,omitempty"` // Express Route Configuration @@ -3547,6 +3547,11 @@ func (*AzureVnetIngressEgressGwReplaceType) XXX_OneofWrappers() []interface{} { // x-displayName: "Azure Ingress/Egress Gateway for Alternate Region" // Two interface Azure ingress/egress site for Alternate Region type AzureVnetIngressEgressGwARReplaceType struct { + // Node Information + // + // x-displayName: "Ingress/Egress Gateway (Two Interface) Node information" + // Ingress/Egress Gateway (Two Interface) Node information. + Node *views.AzureVnetTwoInterfaceNodeARType `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` // Manage Firewall Policy // // x-displayName: "Manage Firewall Policy" @@ -3860,6 +3865,13 @@ func (m *AzureVnetIngressEgressGwARReplaceType) GetHubChoice() isAzureVnetIngres return nil } +func (m *AzureVnetIngressEgressGwARReplaceType) GetNode() *views.AzureVnetTwoInterfaceNodeARType { + if m != nil { + return m.Node + } + return nil +} + func (m *AzureVnetIngressEgressGwARReplaceType) GetNoNetworkPolicy() *schema.Empty { if x, ok := m.GetNetworkPolicyChoice().(*AzureVnetIngressEgressGwARReplaceType_NoNetworkPolicy); ok { return x.NoNetworkPolicy @@ -5243,6 +5255,11 @@ type GlobalSpecType struct { // x-displayName: "Custom DNS" // custom dns configure to the CE site CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,56,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` // Reference to terraform parameters // // x-displayName: "Terraform Parameters" @@ -5712,6 +5729,13 @@ func (m *GlobalSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GlobalSpecType) GetTfParams() *views.ObjectRefType { if m != nil { return m.TfParams @@ -5814,7 +5838,8 @@ type CreateSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,56,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -6192,6 +6217,13 @@ func (m *CreateSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -6220,6 +6252,12 @@ func (*CreateSpecType) XXX_OneofWrappers() []interface{} { // x-displayName: "Replace Azure VNet site" // Shape of the Azure VNet site replace specification type ReplaceSpecType struct { + ResourceGroup string `protobuf:"bytes,1,opt,name=resource_group,json=resourceGroup,proto3" json:"resource_group,omitempty"` + // Types that are valid to be assigned to RegionChoice: + // *ReplaceSpecType_AzureRegion + // *ReplaceSpecType_AlternateRegion + RegionChoice isReplaceSpecType_RegionChoice `protobuf_oneof:"region_choice"` + Vnet *views.AzureVnetChoiceType `protobuf:"bytes,3,opt,name=vnet,proto3" json:"vnet,omitempty"` // Site Type // // x-displayName: "Edit Networking Config" @@ -6237,6 +6275,9 @@ type ReplaceSpecType struct { // Types that are valid to be assigned to Deployment: // *ReplaceSpecType_AzureCred Deployment isReplaceSpecType_Deployment `protobuf_oneof:"deployment"` + MachineType string `protobuf:"bytes,10,opt,name=machine_type,json=machineType,proto3" json:"machine_type,omitempty"` + SshKey string `protobuf:"bytes,14,opt,name=ssh_key,json=sshKey,proto3" json:"ssh_key,omitempty"` + DiskSize uint32 `protobuf:"varint,16,opt,name=disk_size,json=diskSize,proto3" json:"disk_size,omitempty"` Address string `protobuf:"bytes,18,opt,name=address,proto3" json:"address,omitempty"` Coordinates *site.Coordinates `protobuf:"bytes,19,opt,name=coordinates,proto3" json:"coordinates,omitempty"` // Types that are valid to be assigned to LogsReceiverChoice: @@ -6258,7 +6299,8 @@ type ReplaceSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,56,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -6289,6 +6331,12 @@ func (m *ReplaceSpecType) XXX_DiscardUnknown() { var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo +type isReplaceSpecType_RegionChoice interface { + isReplaceSpecType_RegionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type isReplaceSpecType_SiteType interface { isReplaceSpecType_SiteType() Equal(interface{}) bool @@ -6320,6 +6368,12 @@ type isReplaceSpecType_BlockedServicesChoice interface { Size() int } +type ReplaceSpecType_AzureRegion struct { + AzureRegion string `protobuf:"bytes,2,opt,name=azure_region,json=azureRegion,proto3,oneof" json:"azure_region,omitempty"` +} +type ReplaceSpecType_AlternateRegion struct { + AlternateRegion string `protobuf:"bytes,31,opt,name=alternate_region,json=alternateRegion,proto3,oneof" json:"alternate_region,omitempty"` +} type ReplaceSpecType_IngressGw struct { IngressGw *AzureVnetIngressGwReplaceType `protobuf:"bytes,5,opt,name=ingress_gw,json=ingressGw,proto3,oneof" json:"ingress_gw,omitempty"` } @@ -6366,6 +6420,8 @@ type ReplaceSpecType_BlockedServices struct { BlockedServices *fleet.BlockedServicesListType `protobuf:"bytes,41,opt,name=blocked_services,json=blockedServices,proto3,oneof" json:"blocked_services,omitempty"` } +func (*ReplaceSpecType_AzureRegion) isReplaceSpecType_RegionChoice() {} +func (*ReplaceSpecType_AlternateRegion) isReplaceSpecType_RegionChoice() {} func (*ReplaceSpecType_IngressGw) isReplaceSpecType_SiteType() {} func (*ReplaceSpecType_IngressEgressGw) isReplaceSpecType_SiteType() {} func (*ReplaceSpecType_VoltstackCluster) isReplaceSpecType_SiteType() {} @@ -6382,6 +6438,12 @@ func (*ReplaceSpecType_DefaultBlockedServices) isReplaceSpecType_BlockedServices func (*ReplaceSpecType_BlockAllServices) isReplaceSpecType_BlockedServicesChoice() {} func (*ReplaceSpecType_BlockedServices) isReplaceSpecType_BlockedServicesChoice() {} +func (m *ReplaceSpecType) GetRegionChoice() isReplaceSpecType_RegionChoice { + if m != nil { + return m.RegionChoice + } + return nil +} func (m *ReplaceSpecType) GetSiteType() isReplaceSpecType_SiteType { if m != nil { return m.SiteType @@ -6413,6 +6475,34 @@ func (m *ReplaceSpecType) GetBlockedServicesChoice() isReplaceSpecType_BlockedSe return nil } +func (m *ReplaceSpecType) GetResourceGroup() string { + if m != nil { + return m.ResourceGroup + } + return "" +} + +func (m *ReplaceSpecType) GetAzureRegion() string { + if x, ok := m.GetRegionChoice().(*ReplaceSpecType_AzureRegion); ok { + return x.AzureRegion + } + return "" +} + +func (m *ReplaceSpecType) GetAlternateRegion() string { + if x, ok := m.GetRegionChoice().(*ReplaceSpecType_AlternateRegion); ok { + return x.AlternateRegion + } + return "" +} + +func (m *ReplaceSpecType) GetVnet() *views.AzureVnetChoiceType { + if m != nil { + return m.Vnet + } + return nil +} + func (m *ReplaceSpecType) GetIngressGw() *AzureVnetIngressGwReplaceType { if x, ok := m.GetSiteType().(*ReplaceSpecType_IngressGw); ok { return x.IngressGw @@ -6462,6 +6552,27 @@ func (m *ReplaceSpecType) GetAzureCred() *views.ObjectRefType { return nil } +func (m *ReplaceSpecType) GetMachineType() string { + if m != nil { + return m.MachineType + } + return "" +} + +func (m *ReplaceSpecType) GetSshKey() string { + if m != nil { + return m.SshKey + } + return "" +} + +func (m *ReplaceSpecType) GetDiskSize() uint32 { + if m != nil { + return m.DiskSize + } + return 0 +} + func (m *ReplaceSpecType) GetAddress() string { if m != nil { return m.Address @@ -6546,9 +6657,18 @@ func (m *ReplaceSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ + (*ReplaceSpecType_AzureRegion)(nil), + (*ReplaceSpecType_AlternateRegion)(nil), (*ReplaceSpecType_IngressGw)(nil), (*ReplaceSpecType_IngressEgressGw)(nil), (*ReplaceSpecType_VoltstackCluster)(nil), @@ -6628,8 +6748,9 @@ type GetSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` - CloudSiteInfo *AzureVnetSiteInfoType `protobuf:"bytes,1001,opt,name=cloud_site_info,json=cloudSiteInfo,proto3" json:"cloud_site_info,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,55,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,56,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` + CloudSiteInfo *AzureVnetSiteInfoType `protobuf:"bytes,1001,opt,name=cloud_site_info,json=cloudSiteInfo,proto3" json:"cloud_site_info,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -7067,6 +7188,13 @@ func (m *GetSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GetSpecType) GetCloudSiteInfo() *AzureVnetSiteInfoType { if m != nil { return m.CloudSiteInfo @@ -7169,447 +7297,449 @@ func init() { } var fileDescriptor_c594b6b9dd0a0c2b = []byte{ - // 7033 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x4b, 0x70, 0x1b, 0xd7, - 0x99, 0xae, 0x0e, 0x00, 0x82, 0xe0, 0xcf, 0x57, 0xf3, 0xf0, 0x05, 0x91, 0x12, 0x04, 0x51, 0x2f, - 0x52, 0x6a, 0x91, 0x04, 0xc0, 0xb7, 0x63, 0x59, 0x84, 0x24, 0x8b, 0xa4, 0xac, 0x87, 0x9b, 0x92, - 0x1c, 0xa7, 0xe2, 0x8b, 0xdb, 0x04, 0x0e, 0xc1, 0x0e, 0xc1, 0x6e, 0xa4, 0xbb, 0x41, 0x9a, 0x4a, - 0x94, 0xa4, 0x94, 0xca, 0xad, 0x9b, 0xfb, 0xa8, 0x7b, 0xaf, 0x6e, 0xdd, 0xba, 0x33, 0x9e, 0x59, - 0x64, 0x33, 0x55, 0x29, 0xaf, 0x52, 0x35, 0x59, 0x05, 0x5e, 0xa8, 0x54, 0x35, 0x55, 0x19, 0xcd, - 0x2c, 0xb4, 0x1b, 0x97, 0x57, 0xb1, 0x5c, 0x35, 0x71, 0x56, 0xe3, 0x9a, 0xc9, 0x22, 0xa5, 0x59, - 0x78, 0xea, 0x9c, 0x7e, 0xa0, 0xbb, 0xd1, 0x00, 0x29, 0x92, 0xb2, 0x1d, 0x1b, 0x1b, 0x4a, 0xe8, - 0xf3, 0x3f, 0xce, 0xf3, 0x3f, 0xdf, 0xff, 0xff, 0xa7, 0xfb, 0xc0, 0xd8, 0x26, 0xd1, 0x46, 0x25, - 0x65, 0x4c, 0xcb, 0xae, 0x91, 0x0d, 0x71, 0x6c, 0x53, 0x22, 0x5b, 0xda, 0x98, 0x78, 0xaf, 0xa4, - 0x92, 0xcc, 0xa6, 0x4c, 0xf4, 0x8c, 0x26, 0xe9, 0x64, 0x4c, 0xdf, 0x2e, 0x12, 0x6d, 0xb4, 0xa8, - 0x2a, 0xba, 0x82, 0x4f, 0x18, 0x0c, 0xa3, 0x06, 0xc3, 0x28, 0x63, 0x18, 0xf5, 0x30, 0x0c, 0x9c, - 0xcf, 0x4b, 0xfa, 0x5a, 0x69, 0x65, 0x34, 0xab, 0x6c, 0x8c, 0xe5, 0x95, 0xbc, 0x32, 0xc6, 0x78, - 0x57, 0x4a, 0xab, 0xec, 0x17, 0xfb, 0xc1, 0xfe, 0x67, 0xc8, 0x1c, 0x38, 0x96, 0x57, 0x94, 0x7c, - 0x81, 0x54, 0xa8, 0x74, 0x69, 0x83, 0x68, 0xba, 0xb8, 0x51, 0xb4, 0x08, 0xdc, 0xb5, 0x5c, 0x2d, - 0x10, 0xa2, 0x3b, 0x6b, 0x35, 0x70, 0xd6, 0x4d, 0x20, 0x13, 0x7d, 0x4b, 0x51, 0xd7, 0x33, 0xab, - 0x92, 0x4a, 0xb6, 0xc4, 0x42, 0xc1, 0x45, 0x3b, 0xe8, 0xa6, 0x55, 0x8a, 0xba, 0xa4, 0xc8, 0x56, - 0x61, 0xcc, 0x5d, 0xe8, 0x6d, 0xfe, 0xc0, 0x61, 0x77, 0xb9, 0xb3, 0xe8, 0x88, 0xa7, 0x2b, 0xc5, - 0x82, 0x94, 0x13, 0x75, 0x62, 0x96, 0xc6, 0xab, 0x3b, 0x3a, 0xe3, 0x56, 0x7d, 0xd2, 0x6f, 0x28, - 0x68, 0x05, 0x32, 0x4e, 0x2d, 0x67, 0x7c, 0xa9, 0x74, 0x45, 0x15, 0xf3, 0x6e, 0xc2, 0x63, 0x7e, - 0x84, 0x0e, 0x82, 0xa1, 0x7f, 0x09, 0x00, 0x37, 0x4f, 0x07, 0x6e, 0xa1, 0xb4, 0x72, 0x57, 0x26, - 0xfa, 0xed, 0xed, 0x22, 0xc1, 0xeb, 0xd0, 0xaa, 0x15, 0x95, 0x75, 0x63, 0x30, 0xb5, 0x28, 0x8a, - 0x07, 0x87, 0x5b, 0x93, 0x13, 0xa3, 0xbb, 0x18, 0xf4, 0x51, 0x2a, 0xe3, 0x16, 0x21, 0xaa, 0x24, - 0xe7, 0xa9, 0xa8, 0x74, 0xcf, 0x6f, 0xfe, 0xf0, 0x28, 0xd8, 0xf4, 0x10, 0x05, 0xb8, 0x9c, 0xf5, - 0xbf, 0x28, 0x12, 0x80, 0x89, 0xa7, 0xb4, 0x1a, 0x7e, 0x03, 0xfa, 0xc8, 0xbb, 0x45, 0x95, 0x68, - 0x5a, 0x46, 0x55, 0x4a, 0x3a, 0xc9, 0xe4, 0x24, 0x4d, 0x5c, 0x29, 0x90, 0x5c, 0x34, 0x18, 0x47, - 0xc3, 0xad, 0xc9, 0x1e, 0x8f, 0xde, 0x2b, 0x1b, 0x45, 0x7d, 0x7b, 0xe1, 0x90, 0xd0, 0x63, 0x72, - 0x09, 0x94, 0xe9, 0xb2, 0xc9, 0x83, 0xbf, 0x0f, 0xbd, 0x6e, 0x69, 0x44, 0x36, 0x84, 0x85, 0x98, - 0xb0, 0x57, 0x76, 0xd5, 0x88, 0x2b, 0x0e, 0xc9, 0x97, 0x14, 0x79, 0x55, 0x62, 0x6d, 0x59, 0x38, - 0x24, 0x74, 0x3b, 0x75, 0x5e, 0x31, 0x24, 0xa7, 0xcf, 0x40, 0x8f, 0x5b, 0x65, 0x76, 0x4d, 0x91, - 0xb2, 0x04, 0x77, 0x3e, 0x2a, 0xa3, 0xe0, 0xd3, 0x32, 0x0a, 0x3c, 0x2b, 0xa3, 0x60, 0x8a, 0x9f, - 0x58, 0x0a, 0x45, 0x02, 0x5c, 0x70, 0xe8, 0x7f, 0x84, 0xa0, 0xd3, 0xd3, 0x4b, 0x78, 0x0a, 0x42, - 0x54, 0x7b, 0x14, 0xb1, 0x4a, 0x0e, 0xf9, 0x56, 0x92, 0x8d, 0x92, 0x35, 0x44, 0x02, 0xa3, 0xc7, - 0x67, 0x21, 0x24, 0x96, 0x74, 0x65, 0x87, 0x9e, 0x62, 0x34, 0x78, 0x14, 0xc2, 0x1b, 0xa2, 0x5c, - 0x12, 0x0b, 0x66, 0x57, 0xd4, 0xa2, 0x36, 0xa9, 0x70, 0x01, 0xc2, 0x05, 0x71, 0x85, 0x14, 0xb4, - 0x68, 0x13, 0x1b, 0xff, 0x8b, 0x7b, 0x19, 0xff, 0xd1, 0x37, 0x98, 0x88, 0x2b, 0xb2, 0xae, 0x6e, - 0xa7, 0xf1, 0x7b, 0x1f, 0xa0, 0x20, 0x20, 0xf4, 0xec, 0x77, 0x7f, 0x17, 0x0c, 0xff, 0xb7, 0x0f, - 0x50, 0x20, 0x72, 0x48, 0x30, 0x75, 0x0c, 0xcc, 0x42, 0xab, 0x83, 0x14, 0x73, 0x10, 0x5c, 0x27, - 0xdb, 0xac, 0x3f, 0x5a, 0x04, 0xfa, 0x5f, 0xdc, 0x03, 0x4d, 0x9b, 0x62, 0xa1, 0x44, 0xa2, 0x01, - 0xf6, 0xcc, 0xf8, 0x31, 0x17, 0x98, 0x41, 0x73, 0x0f, 0xd1, 0x93, 0x32, 0xfa, 0x9f, 0x08, 0xce, - 0x40, 0x87, 0x40, 0x34, 0xa5, 0xa4, 0x66, 0x49, 0xfc, 0xaa, 0xaa, 0x94, 0x8a, 0x03, 0xbd, 0xd0, - 0x4d, 0x6b, 0x36, 0xaa, 0x9a, 0x8f, 0x33, 0x79, 0xfa, 0x18, 0xa2, 0x10, 0xba, 0x21, 0x6e, 0x90, - 0x01, 0x0e, 0x3a, 0x58, 0x31, 0xab, 0xbd, 0x2c, 0x6e, 0x10, 0x48, 0x42, 0x33, 0x1d, 0x5a, 0x49, - 0xce, 0x9f, 0x3d, 0x03, 0xa7, 0xa0, 0xcb, 0xe8, 0xde, 0x64, 0xcb, 0x7c, 0x49, 0x57, 0x36, 0x44, - 0x5d, 0xca, 0x02, 0x67, 0xf5, 0x62, 0x32, 0x7c, 0x9d, 0xfd, 0x0b, 0x3d, 0x10, 0x36, 0x6a, 0xbe, - 0x04, 0x56, 0x8f, 0x71, 0x4d, 0xe9, 0xe3, 0xd0, 0xa1, 0x1a, 0x92, 0x76, 0x98, 0x0e, 0xff, 0x25, - 0x04, 0x7d, 0xf6, 0xd0, 0x2e, 0xca, 0x79, 0x3a, 0x8f, 0xae, 0x6e, 0xb1, 0x59, 0xf1, 0x5d, 0x88, - 0x88, 0xf7, 0x32, 0xb2, 0x92, 0x23, 0xd6, 0x1a, 0x4c, 0xd6, 0x9f, 0x19, 0x37, 0x65, 0xb2, 0x28, - 0xeb, 0x44, 0x5d, 0x15, 0xb3, 0xe4, 0x86, 0x92, 0x23, 0x6c, 0x05, 0xb6, 0xd3, 0x75, 0x17, 0x79, - 0x88, 0x9a, 0xce, 0x06, 0x13, 0x7c, 0x4a, 0x68, 0x16, 0xef, 0xd1, 0x22, 0x0d, 0xe7, 0x01, 0x1b, - 0x83, 0x97, 0x25, 0xaa, 0x2e, 0xad, 0x4a, 0x24, 0x97, 0x59, 0xdb, 0x32, 0x7a, 0x37, 0x3d, 0xfb, - 0x51, 0x19, 0x75, 0xb3, 0xd2, 0xf3, 0x2b, 0xdb, 0x4a, 0xe1, 0xfc, 0xa6, 0x52, 0xd0, 0x37, 0x88, - 0xb6, 0xf6, 0xa7, 0x32, 0x3a, 0x44, 0xc5, 0x1d, 0x56, 0xfb, 0xa3, 0x17, 0x05, 0x3f, 0x0a, 0x81, - 0x63, 0x0f, 0x2f, 0x59, 0x32, 0x17, 0xb6, 0xf0, 0x8f, 0xe1, 0x48, 0x91, 0xa8, 0xab, 0x8a, 0xba, - 0x21, 0xca, 0x59, 0xba, 0x20, 0xd7, 0xe8, 0xbf, 0x1b, 0x44, 0xd6, 0x33, 0x1b, 0x4a, 0x8e, 0x44, - 0xcf, 0xb3, 0xe9, 0x98, 0xf2, 0x6d, 0xda, 0xad, 0x0a, 0xe3, 0x95, 0x0a, 0xdf, 0x75, 0xab, 0x6d, - 0x91, 0x47, 0x65, 0x84, 0x3e, 0x2b, 0x23, 0x24, 0x0c, 0x14, 0x6b, 0x52, 0x62, 0x05, 0xfa, 0xc4, - 0x6c, 0x96, 0x14, 0x88, 0x2a, 0xea, 0x24, 0x97, 0x31, 0xf7, 0x05, 0x49, 0xce, 0x47, 0x47, 0x99, - 0xea, 0x51, 0xff, 0x5e, 0xad, 0xb0, 0xdc, 0xb0, 0x39, 0x3c, 0x5a, 0x7b, 0x45, 0x3f, 0xa2, 0xb9, - 0xf3, 0x8f, 0xcb, 0x68, 0x04, 0xda, 0xa0, 0xc9, 0xe8, 0xe9, 0x60, 0x92, 0x4f, 0xc0, 0x61, 0xe0, - 0xe6, 0x73, 0x9b, 0xb4, 0x5e, 0xb9, 0xf8, 0x4d, 0xc3, 0xe4, 0xe3, 0xa6, 0x89, 0x49, 0x7e, 0x62, - 0x6a, 0x29, 0x14, 0x09, 0x72, 0xa1, 0xa1, 0x3f, 0x06, 0x21, 0x5a, 0x3d, 0x11, 0xe6, 0x05, 0x36, - 0x15, 0x16, 0x20, 0x44, 0xe7, 0x81, 0x69, 0x20, 0x26, 0x5e, 0x6c, 0x1a, 0x18, 0x32, 0x04, 0x26, - 0xa1, 0x31, 0xec, 0x5f, 0xb1, 0x61, 0x7f, 0xd8, 0x0a, 0x7d, 0xfe, 0xfb, 0x0d, 0xde, 0x82, 0xd6, - 0xac, 0x22, 0xcb, 0x24, 0xcb, 0xd8, 0x4c, 0x13, 0xf0, 0xda, 0x5e, 0x76, 0x30, 0x53, 0x86, 0x67, - 0x47, 0x8e, 0x58, 0xff, 0x8b, 0x20, 0xc1, 0xa9, 0x09, 0xcf, 0x42, 0x9b, 0xb6, 0x5e, 0xca, 0x68, - 0xba, 0x28, 0xe7, 0x44, 0x35, 0x17, 0x0d, 0xd7, 0xdd, 0x30, 0x5a, 0xb5, 0xf5, 0xd2, 0xb2, 0x49, - 0x8a, 0xa7, 0x81, 0xfe, 0xcc, 0x10, 0x35, 0xbf, 0x95, 0x10, 0xef, 0x45, 0x9b, 0xeb, 0x72, 0x82, - 0xb6, 0x5e, 0xba, 0x62, 0x50, 0xe2, 0x39, 0x68, 0xa7, 0x8c, 0x6b, 0x52, 0x7e, 0x2d, 0x43, 0x07, - 0x35, 0x1a, 0xd9, 0x51, 0xe9, 0x82, 0x94, 0x5f, 0xa3, 0x33, 0xc5, 0xa9, 0x34, 0x29, 0xde, 0x8b, - 0xb6, 0xec, 0x4a, 0x69, 0x52, 0xbc, 0x87, 0xdf, 0x86, 0x8e, 0xbc, 0xa8, 0x93, 0x2d, 0x71, 0x3b, - 0xa3, 0x95, 0x56, 0xe8, 0x0e, 0x0c, 0x8c, 0xb7, 0x8e, 0x9d, 0x5d, 0x66, 0x74, 0x97, 0x98, 0x4d, - 0x7f, 0x4b, 0xd2, 0xd7, 0xe8, 0xd6, 0xc0, 0x96, 0x57, 0xbb, 0x29, 0xc9, 0x20, 0xc0, 0x2b, 0xd0, - 0x6d, 0xa0, 0x01, 0x8d, 0xa8, 0x9b, 0x44, 0xb5, 0xe4, 0xb7, 0xee, 0x59, 0x7e, 0x17, 0x13, 0xb7, - 0xcc, 0xa4, 0x99, 0x3a, 0x12, 0x10, 0xa1, 0xfb, 0x53, 0x46, 0xd4, 0xe4, 0x68, 0x7b, 0x9d, 0x46, - 0x23, 0xa1, 0x99, 0xd2, 0xcd, 0x6b, 0x32, 0xce, 0x02, 0x64, 0x4b, 0x9a, 0xae, 0x6c, 0x30, 0xa6, - 0x8e, 0x38, 0x1a, 0x6e, 0x4f, 0xa7, 0xe9, 0x3c, 0x78, 0xf5, 0xec, 0x2b, 0xd1, 0xcf, 0x3f, 0x0f, - 0xc6, 0xd1, 0x52, 0x6a, 0x6a, 0x72, 0x32, 0x31, 0xc9, 0xd3, 0xbf, 0xd3, 0xec, 0xef, 0x0c, 0xfb, - 0x3b, 0x4b, 0xff, 0x26, 0xc7, 0xf9, 0x99, 0xf1, 0xe9, 0x09, 0xfa, 0x67, 0x92, 0x4f, 0x24, 0xc7, - 0xa7, 0xa7, 0xf8, 0x64, 0x6a, 0x62, 0x72, 0x6a, 0x01, 0x09, 0x2d, 0x86, 0x5c, 0xaa, 0xe4, 0x1d, - 0x38, 0xc6, 0x20, 0xab, 0x4a, 0xf2, 0x92, 0xa6, 0xab, 0x22, 0x9d, 0x55, 0x19, 0x85, 0xf6, 0x82, - 0x44, 0xed, 0x12, 0xed, 0x07, 0xae, 0x4e, 0x75, 0x03, 0xc2, 0x11, 0xca, 0x2e, 0x38, 0xb8, 0x6f, - 0x6e, 0x12, 0x75, 0xd1, 0xe4, 0xc5, 0xf7, 0xe1, 0x64, 0x0d, 0xf1, 0x2e, 0x1c, 0x16, 0xc5, 0x4c, - 0xc7, 0x29, 0xdf, 0xbe, 0xbe, 0x54, 0x50, 0x4a, 0xb9, 0x37, 0x24, 0x79, 0x7d, 0xfe, 0xf2, 0x0d, - 0xb6, 0x2c, 0x42, 0xbf, 0xfa, 0x00, 0xa1, 0x85, 0x80, 0x10, 0xf7, 0x53, 0xed, 0x5c, 0x4e, 0xf8, - 0x4d, 0x38, 0x2c, 0xe6, 0x36, 0xa9, 0xa5, 0xd3, 0x48, 0x46, 0x57, 0x32, 0xce, 0x61, 0x8e, 0xf6, - 0xd4, 0x69, 0x57, 0x50, 0xe8, 0xb3, 0x19, 0x6f, 0x2b, 0x42, 0x65, 0x38, 0xf1, 0x3b, 0x10, 0xcf, - 0x29, 0x19, 0x59, 0xd1, 0x33, 0xb5, 0x25, 0xf7, 0xd6, 0x95, 0x3c, 0x98, 0x53, 0x6e, 0x28, 0xfa, - 0xbc, 0xaf, 0xf8, 0x39, 0xf9, 0x71, 0x19, 0x7d, 0x0f, 0xe2, 0x30, 0x58, 0x31, 0x05, 0x5a, 0xfc, - 0xb6, 0x12, 0xbf, 0x7b, 0x83, 0xe8, 0xf1, 0xab, 0xc6, 0xb4, 0xc5, 0x28, 0x01, 0xc3, 0x70, 0xd4, - 0xf9, 0x28, 0x3e, 0x2f, 0xe7, 0xe2, 0x4c, 0x4e, 0xdc, 0xac, 0x67, 0xf3, 0x24, 0x9f, 0x18, 0xe7, - 0x13, 0x09, 0x38, 0xe2, 0x63, 0xd6, 0x22, 0x89, 0x24, 0x9f, 0x98, 0xe4, 0x13, 0xb3, 0xe9, 0x53, - 0x40, 0x17, 0x99, 0x05, 0x7c, 0xfa, 0x1f, 0x95, 0x51, 0xf8, 0x69, 0x19, 0x35, 0x3d, 0x2b, 0xa3, - 0xe6, 0x29, 0x7e, 0x9a, 0x9f, 0xe1, 0x67, 0x3f, 0x2d, 0x23, 0x94, 0x3e, 0x01, 0x20, 0x6a, 0xb2, - 0x45, 0xd6, 0xfb, 0xa8, 0x8c, 0xda, 0x9f, 0x96, 0x51, 0xdb, 0xb3, 0x32, 0x6a, 0x4a, 0xa4, 0xf8, - 0xc4, 0x04, 0x23, 0x3a, 0x0f, 0x3d, 0x96, 0x69, 0xda, 0x94, 0xf4, 0x6d, 0xcb, 0x5d, 0x62, 0xe4, - 0xdc, 0xd3, 0x32, 0xea, 0x64, 0xe4, 0x53, 0x7c, 0x62, 0x86, 0x91, 0x9f, 0x86, 0xae, 0x8a, 0xeb, - 0x62, 0x74, 0xa0, 0x86, 0xbb, 0x1e, 0x95, 0x51, 0xcf, 0xd3, 0x32, 0xea, 0xa6, 0xb4, 0xc9, 0x71, - 0x3e, 0x99, 0x58, 0x0a, 0x45, 0x9a, 0xb8, 0xf0, 0x52, 0x28, 0xd2, 0xc6, 0xb5, 0x2f, 0x85, 0x22, - 0x5d, 0x1c, 0x5e, 0x0a, 0x45, 0x3a, 0x39, 0x6e, 0x29, 0x14, 0xe9, 0xe6, 0x7a, 0x86, 0xfe, 0x1a, - 0xc1, 0x19, 0xe7, 0x98, 0xdf, 0xd4, 0xd7, 0xd8, 0xa2, 0xd3, 0xb2, 0xaa, 0xc4, 0xf4, 0x57, 0x3a, - 0x12, 0x8f, 0x00, 0x64, 0x25, 0x35, 0x5b, 0x92, 0xf4, 0x8c, 0x94, 0x33, 0x10, 0x6b, 0x1a, 0x98, - 0x65, 0x55, 0x83, 0xd1, 0x9f, 0x84, 0x84, 0x16, 0xb3, 0x74, 0x31, 0x87, 0x5f, 0x87, 0x0e, 0xb1, - 0xa4, 0xaf, 0x29, 0xaa, 0x74, 0x8f, 0xe4, 0x32, 0x14, 0xe0, 0x06, 0xd8, 0xa0, 0x1e, 0xf6, 0x0c, - 0xea, 0x32, 0xc9, 0xaa, 0x06, 0xce, 0x4f, 0x87, 0x9e, 0xd2, 0x0d, 0xa7, 0xbd, 0xc2, 0x76, 0x8d, - 0x6c, 0x0f, 0xfd, 0x73, 0x10, 0x06, 0x6a, 0x5b, 0x78, 0x3c, 0x07, 0x91, 0x0d, 0xa2, 0x8b, 0x39, - 0x51, 0x17, 0x4d, 0xc0, 0x10, 0xf3, 0x28, 0xb8, 0x4e, 0x34, 0x4d, 0xcc, 0x93, 0xeb, 0x44, 0x17, - 0x99, 0x6d, 0xb1, 0xe9, 0xf1, 0x39, 0x57, 0x6b, 0xc2, 0xde, 0xd6, 0x2c, 0x1c, 0x72, 0xb6, 0xe7, - 0x3e, 0x60, 0x85, 0xf6, 0x0c, 0x35, 0x6e, 0x76, 0xd7, 0x98, 0xee, 0xc5, 0x1b, 0x2f, 0xbc, 0x4f, - 0xd5, 0xe9, 0xe4, 0x85, 0x43, 0x42, 0x97, 0xe2, 0x2d, 0xc6, 0x31, 0x08, 0x6f, 0x11, 0x29, 0xbf, - 0xa6, 0x47, 0x9b, 0x98, 0x1d, 0x0b, 0x7f, 0x54, 0x46, 0x81, 0xc4, 0xb8, 0x60, 0x3e, 0x9d, 0xfb, - 0xef, 0xe8, 0x5f, 0x2f, 0xa0, 0xd4, 0x93, 0x32, 0x7a, 0x80, 0xa0, 0xdf, 0xc4, 0xfc, 0x9d, 0xd0, - 0x6e, 0xb5, 0x75, 0x94, 0x41, 0x7e, 0x0c, 0xe1, 0xb7, 0x18, 0xf9, 0x40, 0xc4, 0x12, 0x07, 0xcb, - 0xd0, 0x73, 0xc9, 0x68, 0x64, 0xdc, 0xa9, 0x70, 0xe8, 0x15, 0xbf, 0xf6, 0x62, 0xcc, 0x2a, 0xee, - 0xa2, 0x1c, 0xe8, 0x5a, 0x96, 0xe8, 0xaa, 0x71, 0x3c, 0x4a, 0x9f, 0x86, 0x6e, 0x27, 0x9b, 0xd3, - 0x2d, 0x08, 0x5b, 0x6e, 0xc1, 0x14, 0x73, 0x0b, 0x82, 0x5c, 0xc8, 0x74, 0x0e, 0x7e, 0xd6, 0x07, - 0x47, 0xbc, 0x98, 0xf0, 0xca, 0xbe, 0x5c, 0x84, 0xdb, 0x5b, 0xca, 0xee, 0x5d, 0x84, 0x34, 0x74, - 0xc9, 0x8a, 0x05, 0x9c, 0x32, 0x45, 0xa5, 0x20, 0x65, 0xad, 0x29, 0x5b, 0x6b, 0x77, 0xed, 0x94, - 0x15, 0x13, 0x11, 0xdd, 0x62, 0xe4, 0x78, 0x1b, 0xfa, 0x45, 0xba, 0x76, 0x89, 0x5b, 0x8e, 0x44, - 0x34, 0x73, 0xaf, 0x9d, 0xf5, 0x48, 0xf2, 0x86, 0x6d, 0x46, 0xe7, 0x19, 0xbb, 0x53, 0xaa, 0x44, - 0x34, 0x87, 0xcd, 0x3e, 0x44, 0xf1, 0x98, 0x0f, 0x09, 0xfe, 0x7f, 0x08, 0x8e, 0x9b, 0xba, 0x4d, - 0xf4, 0x99, 0xb3, 0xa5, 0x56, 0x6a, 0x11, 0x67, 0xb5, 0x48, 0xef, 0xae, 0x16, 0x26, 0xc6, 0xcc, - 0xbd, 0x6e, 0x3e, 0xf6, 0xad, 0x4e, 0x4c, 0xac, 0x4b, 0x8b, 0x2f, 0x02, 0x27, 0x2b, 0x99, 0x55, - 0x45, 0xdd, 0x12, 0xd5, 0x5c, 0xa6, 0xa8, 0x2a, 0xef, 0x6e, 0xd7, 0xf5, 0xc9, 0x91, 0xd0, 0x21, - 0x2b, 0xaf, 0x1b, 0xe4, 0xb7, 0x28, 0x35, 0xfe, 0x29, 0x82, 0xa3, 0x66, 0xcb, 0x5c, 0x62, 0x2a, - 0xad, 0x32, 0x30, 0xd0, 0x85, 0xdd, 0xb5, 0xca, 0x29, 0xdb, 0xd9, 0xa2, 0x05, 0x24, 0x0c, 0x88, - 0x35, 0x29, 0xf0, 0x75, 0xe8, 0x77, 0x6b, 0x17, 0x0b, 0x05, 0x65, 0x8b, 0xfe, 0xad, 0xbb, 0x0d, - 0x22, 0xa1, 0x67, 0xd5, 0x21, 0x6e, 0x9e, 0x32, 0xcd, 0x17, 0x0a, 0xf8, 0x07, 0xbe, 0x9e, 0x49, - 0x84, 0x99, 0xa0, 0xeb, 0x1f, 0x95, 0xd1, 0x51, 0x87, 0xdf, 0xb1, 0x51, 0x2a, 0xe8, 0xd2, 0x79, - 0x59, 0xca, 0x56, 0xf9, 0x28, 0x27, 0xd4, 0xe3, 0xd1, 0x8b, 0x42, 0x7d, 0x5a, 0x1f, 0x6f, 0x65, - 0x19, 0xfa, 0x65, 0x25, 0x23, 0xc9, 0x9a, 0x94, 0x23, 0x14, 0xf8, 0xea, 0x52, 0xd6, 0xdc, 0x3d, - 0xa2, 0x6d, 0xb5, 0xdb, 0x92, 0x0e, 0x51, 0x9f, 0x60, 0x21, 0x20, 0xf4, 0xc8, 0xca, 0x22, 0xe3, - 0x5d, 0x66, 0xac, 0x82, 0xb1, 0xef, 0xe4, 0xa1, 0xc7, 0x57, 0xa2, 0x81, 0xd5, 0xce, 0xfb, 0xae, - 0x54, 0x6a, 0x38, 0x9c, 0x42, 0xde, 0x90, 0x34, 0x73, 0x27, 0x30, 0x55, 0x61, 0xa9, 0x5a, 0xd1, - 0x1d, 0x88, 0xca, 0x4a, 0x46, 0x29, 0xe9, 0x3e, 0xca, 0x3a, 0x77, 0xac, 0x7e, 0x50, 0xe8, 0x95, - 0x95, 0x9b, 0x06, 0xb3, 0x4b, 0xac, 0x04, 0xbd, 0xfe, 0x32, 0xb9, 0xbd, 0x37, 0x20, 0x28, 0x74, - 0x2b, 0x3e, 0xaa, 0x0c, 0x53, 0x93, 0x2f, 0x28, 0x2b, 0x62, 0xc1, 0xb2, 0x14, 0x26, 0x80, 0xf3, - 0x9f, 0x45, 0x21, 0x6a, 0x6a, 0xae, 0x32, 0x7a, 0x73, 0xdd, 0xe3, 0x55, 0xe8, 0x76, 0x0b, 0xc8, - 0x14, 0x24, 0x4d, 0x8f, 0x76, 0xd7, 0xf1, 0x99, 0x5d, 0x02, 0x2a, 0xfb, 0x8d, 0x55, 0xe7, 0x85, - 0x90, 0xd0, 0x95, 0x77, 0x92, 0xd0, 0x02, 0x7c, 0x0d, 0xba, 0x65, 0x25, 0x93, 0xcb, 0x66, 0xb2, - 0x85, 0x92, 0xa6, 0x13, 0xd5, 0x08, 0x2b, 0x45, 0xfb, 0x76, 0xec, 0xe8, 0x26, 0x81, 0x93, 0x95, - 0xcb, 0xd9, 0x4b, 0x06, 0x1b, 0x8b, 0x51, 0xe1, 0x1f, 0xc0, 0xa0, 0x57, 0x92, 0x3d, 0x90, 0x9b, - 0x72, 0xb4, 0xbf, 0x4e, 0x44, 0xf0, 0xe6, 0xca, 0xf7, 0x48, 0x56, 0x17, 0xc8, 0x2a, 0xeb, 0xde, - 0xfe, 0xf7, 0xef, 0x73, 0x5e, 0x49, 0xa6, 0xd6, 0xfe, 0x9c, 0x4b, 0xa7, 0x39, 0xd4, 0x77, 0x65, - 0xbc, 0x0d, 0x03, 0x55, 0xca, 0xcd, 0x19, 0xbb, 0x29, 0x47, 0xa3, 0x07, 0xa1, 0xbb, 0xcf, 0xad, - 0xdb, 0x58, 0x25, 0x77, 0x65, 0xba, 0xe0, 0xb4, 0x8d, 0x4c, 0xc5, 0xeb, 0xcc, 0x14, 0x4b, 0x2b, - 0x05, 0x29, 0x9b, 0x91, 0x8a, 0xd1, 0xc1, 0x1d, 0x3b, 0x32, 0x2c, 0xf4, 0x68, 0x1b, 0x95, 0xe1, - 0xba, 0xc5, 0x58, 0x17, 0x8b, 0xf8, 0x3a, 0xf4, 0x78, 0x84, 0x6e, 0xea, 0x54, 0xe2, 0x91, 0x5d, - 0x48, 0xec, 0x72, 0x49, 0xdc, 0xd4, 0x17, 0x8b, 0x78, 0x0c, 0x9a, 0x29, 0x26, 0x5f, 0x2b, 0xad, - 0x44, 0x63, 0x75, 0xa6, 0x62, 0xb3, 0x10, 0x96, 0x15, 0x7d, 0xa1, 0xb4, 0x82, 0x6f, 0x42, 0x90, - 0x12, 0x1f, 0x63, 0xc4, 0x93, 0xbb, 0x42, 0x40, 0xde, 0xe0, 0xbb, 0x81, 0xf8, 0x16, 0x9a, 0x05, - 0x2a, 0xe9, 0x1b, 0x18, 0x44, 0x79, 0xe7, 0x71, 0x19, 0xbd, 0xed, 0x08, 0xa2, 0xcc, 0xf0, 0xd4, - 0xdb, 0xe8, 0x65, 0x78, 0xca, 0x24, 0x8b, 0x5b, 0x3b, 0x2a, 0x0e, 0x4e, 0xf1, 0xd3, 0x70, 0xce, - 0xc7, 0x17, 0xe9, 0x4f, 0x4c, 0xf3, 0xc9, 0x04, 0x9f, 0x9c, 0xe2, 0x13, 0x09, 0x3e, 0x31, 0xc1, - 0x27, 0x67, 0x79, 0x16, 0x74, 0x49, 0xf3, 0xd0, 0xeb, 0xc6, 0x33, 0x16, 0x0e, 0xeb, 0x7e, 0x54, - 0x46, 0x81, 0xa7, 0x65, 0x14, 0xa6, 0x5e, 0x4a, 0x92, 0x4f, 0x25, 0xf9, 0xc4, 0x78, 0xfa, 0x2c, - 0xf4, 0xb8, 0x77, 0x38, 0x93, 0x18, 0x3f, 0x2a, 0x23, 0x3a, 0x4e, 0xcd, 0xcf, 0xca, 0x28, 0x3c, - 0xc1, 0x27, 0xc7, 0xf9, 0xd9, 0x74, 0x0a, 0x06, 0x7c, 0x8c, 0xbd, 0xd3, 0xbb, 0x69, 0xfb, 0x6d, - 0x19, 0xa1, 0xa7, 0x65, 0xd4, 0xca, 0x5c, 0x96, 0x24, 0x9f, 0x48, 0xa5, 0x27, 0x60, 0xd0, 0xcf, - 0xc2, 0x3a, 0xb9, 0x3a, 0x4d, 0xae, 0x0e, 0xc6, 0x35, 0xc9, 0x27, 0xa6, 0xd2, 0xa3, 0xd0, 0xeb, - 0x31, 0x74, 0x0e, 0x7a, 0x6c, 0xd2, 0x77, 0x31, 0xfa, 0x19, 0xea, 0x8f, 0xa5, 0xa0, 0xbf, 0x6a, - 0x99, 0x9b, 0x1c, 0xd1, 0x47, 0x65, 0xd4, 0x67, 0x72, 0xf4, 0x3e, 0x2b, 0xa3, 0x48, 0x32, 0xc9, - 0x27, 0x53, 0x7c, 0x72, 0x22, 0x3d, 0x06, 0x7d, 0xcc, 0xcb, 0xa6, 0x1b, 0xa6, 0x9b, 0x87, 0x6a, - 0x19, 0x34, 0x79, 0x06, 0x98, 0x4b, 0x35, 0xcd, 0x27, 0x67, 0xa8, 0x3b, 0xb7, 0x56, 0x5a, 0x71, - 0x12, 0xc5, 0x4c, 0xa2, 0xa3, 0x94, 0x28, 0x35, 0xce, 0xa7, 0xa8, 0xdf, 0x15, 0xe6, 0x9a, 0x97, - 0x42, 0x91, 0x66, 0x2e, 0xb2, 0x14, 0x8a, 0xb4, 0x72, 0x6d, 0x4b, 0xa1, 0x48, 0x07, 0xd7, 0x69, - 0xfb, 0x60, 0xbd, 0x5c, 0xdf, 0x52, 0x28, 0x32, 0xc0, 0x0d, 0x2e, 0x85, 0x22, 0x87, 0xb9, 0x81, - 0xa5, 0x50, 0xe4, 0x28, 0x17, 0x1b, 0xfa, 0x7d, 0x2f, 0xc4, 0x6a, 0xe1, 0xe0, 0xbd, 0x44, 0x48, - 0xbd, 0x28, 0xd8, 0x15, 0x21, 0x3d, 0x08, 0xd4, 0xab, 0xbd, 0x3c, 0xd4, 0x5b, 0x1b, 0xef, 0xfe, - 0xaf, 0x2f, 0x16, 0xef, 0x36, 0x90, 0x6e, 0x03, 0xe9, 0x36, 0x90, 0x6e, 0x03, 0xe9, 0x36, 0x90, - 0x6e, 0x03, 0xe9, 0x36, 0x90, 0x6e, 0x03, 0xe9, 0x36, 0x90, 0xee, 0x01, 0x20, 0xdd, 0x7f, 0xeb, - 0x86, 0xa3, 0x36, 0x4c, 0xbd, 0xab, 0x14, 0x74, 0x4d, 0x17, 0xb3, 0xeb, 0xa6, 0x5d, 0x61, 0x40, - 0xb7, 0xe4, 0x0b, 0x1e, 0x8c, 0xbc, 0xc3, 0xd5, 0x8f, 0xca, 0x68, 0xc0, 0x93, 0x9e, 0x67, 0x02, - 0xce, 0x67, 0x95, 0x8d, 0x15, 0xc5, 0x42, 0x0e, 0x71, 0x35, 0x16, 0xbd, 0x28, 0xd4, 0x21, 0xf4, - 0x81, 0x0d, 0xce, 0x48, 0x73, 0xe0, 0xc0, 0x0f, 0xa3, 0xf8, 0x62, 0xee, 0xd0, 0x81, 0x61, 0xee, - 0xa6, 0x2f, 0x19, 0x73, 0x9f, 0xfc, 0x92, 0x31, 0x77, 0xf3, 0x01, 0x63, 0xee, 0xc8, 0x97, 0x8b, - 0xb9, 0x3b, 0xf7, 0x80, 0xb9, 0xeb, 0x01, 0x47, 0xd8, 0x05, 0xee, 0x7d, 0x51, 0xe0, 0xd8, 0xba, - 0x1f, 0xe4, 0xbb, 0x7b, 0xe0, 0xd8, 0x5e, 0x37, 0x2b, 0xbc, 0x5b, 0xe0, 0xd8, 0xb1, 0x0f, 0xe0, - 0x18, 0x7c, 0x01, 0xe0, 0x18, 0xdb, 0xb1, 0xa3, 0x43, 0x3e, 0xc0, 0x31, 0x0f, 0x55, 0x90, 0xcb, - 0x04, 0x1e, 0xfb, 0x42, 0x6c, 0x21, 0xa1, 0xc3, 0x8d, 0xd8, 0x70, 0x1a, 0x3a, 0x64, 0x25, 0xb3, - 0x3e, 0xa3, 0x59, 0xd4, 0xbb, 0x00, 0x68, 0x4d, 0x42, 0x9b, 0xac, 0x5c, 0x9b, 0xd1, 0x4c, 0x41, - 0xf8, 0x6d, 0x68, 0x75, 0x0a, 0x38, 0xb2, 0xeb, 0x7a, 0xe2, 0xf7, 0xef, 0x3b, 0x39, 0x4d, 0xe1, - 0xb0, 0x5e, 0x11, 0x5d, 0x07, 0x48, 0x0e, 0x1d, 0x38, 0x90, 0x3c, 0xb1, 0x37, 0x20, 0xf9, 0x1a, - 0x74, 0xe6, 0xc8, 0xaa, 0x58, 0x2a, 0xe8, 0x19, 0xf3, 0x3c, 0x72, 0xb4, 0xab, 0x2e, 0xa0, 0xec, - 0x30, 0xc9, 0x97, 0x0d, 0x6a, 0xfc, 0x36, 0x60, 0xeb, 0x20, 0x73, 0xb6, 0x20, 0x6a, 0x9a, 0x31, - 0x41, 0x0d, 0xff, 0x68, 0xc4, 0x7f, 0x35, 0x19, 0xe4, 0x97, 0x28, 0xb5, 0x3d, 0x2b, 0x9b, 0x05, - 0x4e, 0xf3, 0x3c, 0xaf, 0x83, 0xf0, 0x4e, 0xbd, 0x1c, 0x84, 0xa7, 0x3d, 0x2e, 0x23, 0xc5, 0x81, - 0xf0, 0x12, 0x7c, 0xb2, 0x0e, 0xc2, 0x4b, 0xf1, 0x53, 0x30, 0x08, 0xbd, 0x66, 0x73, 0xe2, 0xc6, - 0x41, 0xb0, 0x92, 0x71, 0x08, 0x05, 0x07, 0x12, 0x53, 0x70, 0xd2, 0x07, 0xfe, 0x71, 0xb3, 0x7c, - 0x22, 0x49, 0x41, 0x5f, 0x2a, 0x45, 0x31, 0x60, 0x6a, 0x3a, 0x7d, 0xae, 0x16, 0xee, 0xb3, 0xa0, - 0x5c, 0xd0, 0x80, 0x72, 0xa9, 0x29, 0x7e, 0xb2, 0x2e, 0xec, 0x6b, 0x36, 0x31, 0x62, 0x78, 0x9a, - 0x4f, 0x4c, 0xf2, 0x33, 0xbb, 0x41, 0x70, 0x60, 0xc2, 0xa0, 0x16, 0x86, 0xc8, 0xc6, 0xf9, 0x44, - 0xa2, 0x3e, 0x82, 0x6b, 0x37, 0xe9, 0x2b, 0x67, 0x3e, 0xd2, 0xe3, 0xb5, 0x11, 0x9c, 0x3f, 0xd0, - 0x4a, 0x9f, 0x03, 0xec, 0x58, 0x37, 0x3b, 0x40, 0xb7, 0xfa, 0x58, 0x6f, 0xc8, 0x64, 0x38, 0xce, - 0xa4, 0x4f, 0xf0, 0xa9, 0xc9, 0xf4, 0x79, 0xe8, 0x71, 0xcf, 0x47, 0x07, 0x79, 0x97, 0x49, 0xce, - 0xb1, 0xea, 0x4f, 0xf3, 0x89, 0x19, 0x3b, 0x7b, 0x6f, 0x60, 0xbf, 0x16, 0x0e, 0xec, 0x33, 0x26, - 0x47, 0xb9, 0x98, 0x8d, 0xf7, 0x8e, 0x73, 0x43, 0x4b, 0xa1, 0x08, 0xc7, 0x75, 0x2d, 0x85, 0x22, - 0x71, 0xee, 0xf8, 0xd0, 0xc7, 0xdd, 0x70, 0xac, 0x26, 0xea, 0x33, 0x03, 0x9c, 0x5f, 0x12, 0xee, - 0xb3, 0xe2, 0xaa, 0x81, 0x7d, 0x9f, 0x3c, 0x6d, 0x60, 0xbc, 0x06, 0xc6, 0x6b, 0x60, 0xbc, 0x06, - 0xc6, 0xfb, 0x72, 0x31, 0xde, 0xbe, 0x40, 0x54, 0xd3, 0x81, 0x83, 0xa8, 0x26, 0x3f, 0x10, 0xb5, - 0x17, 0x1c, 0x1a, 0x7e, 0x99, 0x38, 0x34, 0xec, 0xc2, 0xa1, 0x0d, 0x8c, 0xd7, 0xc0, 0x78, 0x5f, - 0x30, 0xc6, 0x7b, 0x61, 0xd8, 0xf6, 0x42, 0xa0, 0xf0, 0x80, 0x31, 0x9e, 0x81, 0xee, 0x0c, 0xa4, - 0x57, 0xc1, 0x78, 0x17, 0x1d, 0x81, 0x3d, 0xfb, 0xf5, 0x1e, 0x81, 0x14, 0x0b, 0x62, 0x96, 0xc5, - 0xc6, 0xe6, 0x0e, 0x3f, 0xb9, 0x50, 0xe3, 0x4d, 0x30, 0xf3, 0x55, 0x91, 0xcb, 0x0e, 0x90, 0xe8, - 0x78, 0x41, 0xc8, 0x29, 0x63, 0xf0, 0xc9, 0x85, 0x9a, 0x2f, 0x11, 0x99, 0x52, 0x7e, 0x81, 0x00, - 0xb3, 0xd2, 0xe2, 0x2d, 0x95, 0xac, 0x4a, 0xef, 0x1a, 0x1b, 0xf5, 0x9e, 0x5f, 0x41, 0x5c, 0x82, - 0x48, 0xd1, 0x94, 0xc3, 0xe2, 0x82, 0x2d, 0xe9, 0x51, 0x0a, 0x35, 0xe1, 0x21, 0x6a, 0x1e, 0x6a, - 0x52, 0x83, 0x7f, 0x42, 0x88, 0xfe, 0x0c, 0x3f, 0x44, 0x41, 0xee, 0x27, 0x8e, 0x17, 0x4e, 0x1c, - 0x2f, 0x83, 0xda, 0xfc, 0x73, 0xe1, 0x27, 0x65, 0x14, 0xe0, 0xd0, 0xd0, 0x5f, 0xf4, 0xc2, 0x89, - 0x5a, 0xe9, 0x7e, 0x47, 0x6b, 0x1b, 0x99, 0xfa, 0x46, 0xa6, 0xfe, 0x25, 0x67, 0xea, 0x1b, 0xc9, - 0xf2, 0x46, 0xb2, 0xbc, 0x91, 0x2c, 0x6f, 0x24, 0xcb, 0x1b, 0xc9, 0x72, 0x17, 0xe5, 0xdc, 0xfa, - 0x93, 0x0b, 0x75, 0x5f, 0x4c, 0x79, 0x5c, 0x46, 0x0b, 0x3b, 0x24, 0xb3, 0x87, 0x7d, 0x90, 0x6e, - 0x8f, 0x5f, 0x32, 0x3b, 0x7d, 0xa5, 0x16, 0xda, 0xe5, 0x7d, 0x32, 0xd9, 0x0f, 0x9e, 0x23, 0x7f, - 0xea, 0x74, 0xba, 0x06, 0x0e, 0x3e, 0x5b, 0x9d, 0xe2, 0x7e, 0xf0, 0x1c, 0xf9, 0xd2, 0xa6, 0xdf, - 0xac, 0x9b, 0xfa, 0x4e, 0xf9, 0xa6, 0xbe, 0x1f, 0x3c, 0x47, 0x75, 0x98, 0xd2, 0xcb, 0xf5, 0x21, - 0xf7, 0x84, 0x6f, 0x62, 0xfc, 0xc1, 0x73, 0x54, 0x8f, 0x2b, 0x7d, 0xb5, 0x16, 0x22, 0x1f, 0xf5, - 0xcd, 0x9b, 0xd3, 0x4e, 0xf3, 0xa5, 0x4f, 0xdf, 0xa8, 0x0d, 0xd5, 0x53, 0xb5, 0x12, 0xea, 0x0f, - 0x9e, 0xa3, 0x5a, 0x4c, 0xe9, 0xc5, 0x9a, 0x40, 0x7e, 0xcc, 0x17, 0x9b, 0x3f, 0x78, 0x8e, 0x6a, - 0x30, 0xa4, 0x13, 0xae, 0x2c, 0xfc, 0x09, 0x5f, 0xc7, 0xe1, 0xc1, 0x73, 0xe4, 0x20, 0x5a, 0x0a, - 0x45, 0x10, 0x17, 0xd8, 0x5b, 0x66, 0x7e, 0x29, 0x14, 0x19, 0xe5, 0xc6, 0x86, 0xfe, 0xb2, 0x17, - 0x4e, 0xd5, 0x3e, 0x89, 0xda, 0x00, 0xa7, 0x0d, 0x70, 0xda, 0x00, 0xa7, 0x0d, 0x70, 0xda, 0x00, - 0xa7, 0x0d, 0x70, 0xda, 0x00, 0xa7, 0x5f, 0x16, 0x38, 0xdd, 0x78, 0x72, 0x61, 0x87, 0xb7, 0x45, - 0x1a, 0xf0, 0xf4, 0x6b, 0x02, 0x4f, 0xaf, 0xd5, 0x86, 0xa7, 0xe3, 0x1e, 0x78, 0xda, 0xc4, 0xe0, - 0xe9, 0xd7, 0x19, 0x9b, 0xfe, 0xaa, 0x13, 0x4e, 0xd6, 0x3c, 0x45, 0xb0, 0x23, 0x34, 0x6d, 0x64, - 0xe2, 0x1b, 0x99, 0xf8, 0x46, 0x26, 0xfe, 0xeb, 0x94, 0x89, 0x3f, 0x7a, 0x60, 0x99, 0xf8, 0xd8, - 0x37, 0x34, 0x13, 0x3f, 0xb7, 0xf2, 0xe4, 0x42, 0xfd, 0xe3, 0xf8, 0x8f, 0xcb, 0xe8, 0xc2, 0x0e, - 0xf9, 0xde, 0x98, 0x0f, 0x92, 0x00, 0x23, 0xa5, 0x3b, 0xc3, 0xa7, 0x52, 0xe9, 0xcb, 0xb5, 0xf0, - 0xc3, 0xb9, 0xea, 0x64, 0xee, 0xde, 0xe0, 0x83, 0x27, 0xcb, 0x5b, 0x13, 0x3e, 0xec, 0x62, 0xaf, - 0xaf, 0xce, 0xfe, 0xee, 0x6b, 0xaf, 0xaf, 0x4e, 0x0e, 0xef, 0x79, 0xaf, 0x3f, 0x6a, 0x8a, 0x3a, - 0xc2, 0xf6, 0xe7, 0x59, 0x3e, 0x35, 0xbe, 0xf7, 0xbd, 0xbe, 0x3a, 0xa1, 0x5c, 0x7b, 0xaf, 0xb7, - 0x37, 0xee, 0x00, 0x17, 0xac, 0x93, 0x1a, 0x3e, 0xc2, 0x1d, 0xb5, 0x53, 0xc3, 0x71, 0xee, 0xf8, - 0x52, 0x28, 0x72, 0x8a, 0x3b, 0x3d, 0xf4, 0xeb, 0x4e, 0x38, 0x5d, 0xe7, 0xe0, 0x5f, 0x63, 0xd3, - 0x6e, 0x6c, 0xda, 0x8d, 0x4d, 0xbb, 0x71, 0x7c, 0xae, 0x71, 0x7c, 0xee, 0x45, 0x36, 0xed, 0xdc, - 0x93, 0x0b, 0x3b, 0x9d, 0xa6, 0xde, 0xdf, 0xb6, 0x3d, 0xdb, 0xd8, 0xb6, 0x0f, 0x6c, 0xdb, 0xf6, - 0xf5, 0x8b, 0xbf, 0x3a, 0xdb, 0xb6, 0xf3, 0x44, 0x57, 0x65, 0xdb, 0xfe, 0x65, 0x08, 0x7a, 0xed, - 0x19, 0x46, 0xe7, 0xd0, 0xa2, 0xbc, 0xca, 0xbe, 0xd2, 0x8a, 0x5f, 0x07, 0xb0, 0x57, 0x84, 0xf1, - 0x49, 0xbe, 0x96, 0xf4, 0x99, 0xdf, 0xfc, 0xe1, 0x51, 0xb0, 0xe5, 0x21, 0x0a, 0x0f, 0x85, 0xd4, - 0x40, 0x11, 0x59, 0xc7, 0xa3, 0xce, 0x36, 0x8d, 0xf3, 0x09, 0x3e, 0xe5, 0x38, 0x09, 0xd5, 0x52, - 0x34, 0x57, 0x84, 0x86, 0x17, 0xa0, 0xb5, 0xa8, 0x4a, 0x9b, 0xa2, 0x4e, 0x98, 0xa0, 0xc0, 0x8b, - 0x09, 0x02, 0x93, 0x97, 0x4a, 0xda, 0x86, 0x3e, 0xc7, 0x17, 0x31, 0x8d, 0xb3, 0x56, 0x19, 0x49, - 0x5e, 0x55, 0xa2, 0x41, 0xf6, 0x1a, 0xe7, 0xf4, 0xae, 0xbf, 0xeb, 0xee, 0x3e, 0x31, 0x96, 0x6e, - 0xb5, 0x0f, 0x76, 0xfd, 0x31, 0x28, 0x74, 0xdb, 0x5f, 0xf4, 0x37, 0x68, 0x68, 0x87, 0xe0, 0x2c, - 0x60, 0xf7, 0x97, 0xf1, 0x99, 0xda, 0xd0, 0x0b, 0x44, 0x1a, 0x9d, 0xdf, 0x87, 0xa4, 0x22, 0x05, - 0x8e, 0x78, 0x9e, 0xe0, 0xbb, 0xd0, 0x22, 0x2b, 0x39, 0x53, 0xb6, 0xf1, 0xa9, 0xfa, 0xd9, 0x5d, - 0xc9, 0xbe, 0xa1, 0xe4, 0xc8, 0xa2, 0xac, 0xe9, 0x74, 0x89, 0xdf, 0x10, 0x37, 0x88, 0xf1, 0x25, - 0x4c, 0x99, 0x3d, 0x5d, 0x55, 0xf0, 0x15, 0xf3, 0x40, 0x9c, 0xf1, 0xf1, 0xe3, 0xc4, 0xee, 0x7a, - 0xe9, 0xc6, 0x95, 0xdb, 0xd6, 0x54, 0x30, 0xce, 0xc7, 0x0d, 0xbd, 0x01, 0x6d, 0xce, 0xa7, 0x78, - 0x10, 0x5a, 0xec, 0xef, 0xcd, 0x9b, 0xdf, 0xb7, 0x8f, 0xd0, 0x07, 0xb4, 0x06, 0xf8, 0x18, 0xb4, - 0xda, 0xdf, 0xaa, 0x97, 0x72, 0xe6, 0xa7, 0xee, 0xc1, 0x7a, 0xb4, 0x98, 0x1b, 0x5a, 0x05, 0xce, - 0xdb, 0x25, 0x78, 0x18, 0x38, 0xd7, 0x97, 0x86, 0xed, 0x89, 0x27, 0x74, 0x38, 0x3e, 0x19, 0x4c, - 0xa7, 0x82, 0x97, 0x52, 0xd4, 0x64, 0xa6, 0xa3, 0xdd, 0x45, 0x39, 0xaf, 0xc9, 0x43, 0x5b, 0xd0, - 0xe3, 0xd7, 0x3d, 0x78, 0x16, 0xb0, 0xd9, 0xd9, 0x46, 0x81, 0xa3, 0x19, 0xe6, 0x7c, 0x50, 0x43, - 0x1c, 0x8a, 0x5e, 0xa4, 0x5b, 0x94, 0x9b, 0x1d, 0x9f, 0x84, 0x66, 0x83, 0xd5, 0xb8, 0xd8, 0xc1, - 0x43, 0x1f, 0x66, 0xf4, 0xb9, 0xa1, 0x7f, 0x1c, 0x85, 0x0e, 0x63, 0x3b, 0x5d, 0x2e, 0x92, 0xac, - 0x79, 0x32, 0xb1, 0xc3, 0xfd, 0x01, 0x7f, 0x53, 0x5f, 0xa7, 0xf5, 0x5a, 0x8b, 0x25, 0xa3, 0xdd, - 0x22, 0x33, 0xb6, 0xaa, 0x7f, 0x00, 0x68, 0x33, 0x06, 0x48, 0x25, 0x79, 0x49, 0x91, 0xcd, 0x8f, - 0x9c, 0xff, 0x0d, 0x50, 0xbe, 0x87, 0x1f, 0xa0, 0xff, 0x0b, 0x30, 0x05, 0x9c, 0xa6, 0x94, 0xf4, - 0x35, 0x71, 0x55, 0x95, 0xb2, 0xa2, 0xac, 0xa8, 0xfa, 0x1a, 0x1e, 0x1a, 0x9e, 0x67, 0xbf, 0x46, - 0xe2, 0xcb, 0xb4, 0x28, 0x6e, 0xfc, 0x8a, 0xdf, 0xa0, 0x85, 0x71, 0x81, 0x49, 0x82, 0x49, 0x68, - 0x17, 0x4b, 0x9a, 0xae, 0x8a, 0x05, 0x49, 0x24, 0xa2, 0xa6, 0xe3, 0x93, 0xc3, 0xf3, 0x9a, 0x24, - 0xc6, 0x6f, 0x89, 0x59, 0x69, 0x55, 0xca, 0x8e, 0xc4, 0xe7, 0xad, 0xd2, 0xf8, 0x15, 0x51, 0xd3, - 0x2d, 0xb6, 0x14, 0xb4, 0x65, 0x89, 0xcc, 0x0a, 0xe4, 0x9c, 0x24, 0xe2, 0x13, 0x1e, 0xae, 0x4b, - 0x46, 0x61, 0x7c, 0x91, 0x96, 0x5a, 0x4c, 0xe7, 0x20, 0x42, 0x55, 0x88, 0x9a, 0x24, 0xe2, 0x63, - 0x1e, 0x06, 0x26, 0x9c, 0x3d, 0x32, 0x89, 0xcf, 0x43, 0xcb, 0xf7, 0xc4, 0xa2, 0x28, 0xb3, 0x4a, - 0xc5, 0x3d, 0xd4, 0x4b, 0xb4, 0xc4, 0x5b, 0xa1, 0x75, 0x45, 0x25, 0xa2, 0x59, 0xab, 0xaa, 0x0a, - 0x5d, 0xa3, 0x85, 0x76, 0xb5, 0x2a, 0x8d, 0x67, 0x9d, 0x66, 0xd7, 0xca, 0xdb, 0xf8, 0x65, 0xab, - 0xd4, 0x55, 0xb5, 0x31, 0x68, 0xcf, 0x8a, 0xb2, 0x98, 0xb3, 0x95, 0xc5, 0x86, 0x2f, 0xb1, 0xdf, - 0x23, 0x71, 0xe3, 0x5f, 0xaf, 0x9e, 0x31, 0x68, 0x5f, 0x55, 0xe9, 0xf4, 0xa9, 0x30, 0x5c, 0x29, - 0xa9, 0x4a, 0x91, 0x8c, 0xc4, 0x5f, 0x67, 0xcf, 0xbd, 0x0c, 0x73, 0x80, 0xf3, 0x44, 0xdd, 0x10, - 0xe5, 0xed, 0x2d, 0xa2, 0xe9, 0x16, 0xd7, 0x49, 0x9b, 0xeb, 0xaa, 0x51, 0x18, 0x7f, 0x8b, 0x68, - 0xba, 0x97, 0x77, 0x04, 0x40, 0xd2, 0xc5, 0xc2, 0xb6, 0x31, 0x07, 0x06, 0x6d, 0x9e, 0x45, 0xfa, - 0xd0, 0x3d, 0xf8, 0xe7, 0xa0, 0x95, 0x51, 0x11, 0x46, 0x82, 0x8f, 0xd8, 0xb4, 0x06, 0x95, 0xf1, - 0xcb, 0x21, 0x57, 0xa6, 0x7b, 0xf6, 0x36, 0x1b, 0x91, 0x41, 0x27, 0xed, 0x96, 0xb8, 0xed, 0x1a, - 0x8c, 0x31, 0x68, 0x2f, 0x2a, 0x05, 0x51, 0xce, 0x55, 0xb7, 0xf7, 0x16, 0x7b, 0xee, 0xd3, 0x41, - 0xda, 0x16, 0xc9, 0x11, 0xb9, 0x9a, 0x61, 0x99, 0x3d, 0xaf, 0x1e, 0x39, 0x4e, 0xdb, 0x92, 0xf4, - 0x7b, 0x44, 0xa5, 0xe2, 0x8c, 0xa6, 0x1e, 0x77, 0xf0, 0xd8, 0x45, 0xee, 0x06, 0x9f, 0x80, 0xe6, - 0xd2, 0x3a, 0x1b, 0x72, 0x1c, 0xb5, 0xa9, 0xef, 0x5c, 0x33, 0xd7, 0x47, 0xa5, 0xa1, 0xb4, 0xd7, - 0xcd, 0x4e, 0xa9, 0x34, 0x94, 0x75, 0xb6, 0xbb, 0x4f, 0x26, 0xa0, 0x5d, 0xd2, 0x54, 0x91, 0x14, - 0x2a, 0xd3, 0xee, 0xba, 0x94, 0xcb, 0x15, 0x08, 0xeb, 0x8e, 0x91, 0xf8, 0x22, 0x2b, 0xf4, 0x56, - 0x3e, 0x09, 0x6d, 0xdf, 0x17, 0x75, 0x51, 0xb5, 0x98, 0x86, 0xdc, 0x4c, 0x6f, 0xd2, 0x32, 0x2f, - 0xcf, 0x59, 0x88, 0x94, 0x44, 0x62, 0x34, 0x34, 0xe6, 0xa6, 0xbf, 0x33, 0x7f, 0xc5, 0xdd, 0xca, - 0x24, 0xb4, 0xae, 0xa8, 0xe2, 0x3d, 0xa9, 0x60, 0xb4, 0xf4, 0xc4, 0xb0, 0xb9, 0xfc, 0x37, 0x88, - 0x61, 0x0d, 0xd2, 0xac, 0xd0, 0xdd, 0xe8, 0x23, 0xd0, 0x62, 0x56, 0xa7, 0xa4, 0xe1, 0xce, 0xe1, - 0x3b, 0xcb, 0x95, 0x35, 0x7c, 0x67, 0x19, 0x8e, 0x42, 0x98, 0x8e, 0x7a, 0x49, 0xc3, 0xdd, 0xac, - 0x88, 0x0d, 0xf6, 0x9d, 0x65, 0x8b, 0x39, 0x0e, 0xcd, 0x46, 0x71, 0x12, 0xf7, 0xba, 0xca, 0x93, - 0x16, 0xc5, 0x28, 0x74, 0xb0, 0xca, 0x54, 0x74, 0x1c, 0x61, 0x84, 0x46, 0x1d, 0x2a, 0x9a, 0x1c, - 0x12, 0xe9, 0x18, 0x54, 0x24, 0xb2, 0xce, 0x77, 0x4a, 0xb4, 0x29, 0x52, 0x1e, 0x8a, 0x94, 0x49, - 0x41, 0xed, 0x69, 0x48, 0x0d, 0x44, 0x2f, 0x2e, 0x1c, 0x12, 0x5a, 0x99, 0xf5, 0x34, 0x9e, 0xe3, - 0xbf, 0x0f, 0x01, 0x27, 0x16, 0x74, 0xa2, 0xca, 0xa2, 0x6e, 0x5b, 0xd4, 0x63, 0xcc, 0xa2, 0xfe, - 0x55, 0xc8, 0xb4, 0xa8, 0x3f, 0x0f, 0xc1, 0x2b, 0xc0, 0xd9, 0x96, 0xd1, 0x1a, 0xa9, 0x33, 0x35, - 0x8d, 0xa3, 0x67, 0xb8, 0x5e, 0x03, 0x6c, 0x33, 0xdb, 0x26, 0x06, 0x8f, 0xd4, 0x64, 0xaf, 0x18, - 0x1a, 0x8f, 0xf9, 0xa3, 0x6d, 0xac, 0x61, 0xfe, 0x58, 0x83, 0xed, 0x05, 0x04, 0xcc, 0xfc, 0x19, - 0x23, 0x7e, 0xdc, 0xd7, 0xf8, 0xb9, 0xc6, 0x7b, 0x0c, 0x80, 0xd1, 0x1a, 0xe6, 0xfb, 0xb8, 0x9f, - 0xdd, 0x73, 0x1b, 0xef, 0xf3, 0xd0, 0x42, 0xeb, 0x62, 0xd0, 0x7b, 0x2b, 0xc4, 0xaa, 0xe2, 0x22, - 0x1f, 0x01, 0x30, 0x6c, 0xa4, 0x69, 0x2d, 0x3c, 0x06, 0xd2, 0x69, 0x2d, 0x8e, 0x43, 0xb8, 0xb4, - 0xce, 0xda, 0xd9, 0xef, 0x5c, 0x93, 0xce, 0xe6, 0x8d, 0x42, 0x07, 0x9b, 0xfa, 0xde, 0xe9, 0x63, - 0x4c, 0xfb, 0xea, 0xe9, 0xc3, 0x43, 0xbb, 0xc3, 0x70, 0x96, 0x34, 0x3c, 0x58, 0x99, 0x22, 0xd5, - 0xd4, 0x47, 0x21, 0x6c, 0x4c, 0x25, 0x73, 0x76, 0x5b, 0x33, 0xa9, 0x7a, 0x1e, 0x75, 0xda, 0xf3, - 0xc6, 0x9c, 0x4b, 0x69, 0x13, 0x5a, 0x19, 0xd7, 0x16, 0x0d, 0xd7, 0x7f, 0xd7, 0xc0, 0xb8, 0x0a, - 0xa1, 0xf2, 0x81, 0x65, 0xf3, 0xbd, 0x83, 0x15, 0x00, 0xc9, 0x48, 0xed, 0x66, 0xf2, 0x5b, 0x66, - 0xf4, 0xea, 0x95, 0xdd, 0x67, 0xaf, 0xab, 0xde, 0xb1, 0x30, 0x73, 0xd8, 0x48, 0x68, 0x91, 0xac, - 0xc7, 0xb8, 0x04, 0x5d, 0x96, 0x0e, 0x62, 0xab, 0x32, 0xf0, 0xe0, 0xfc, 0x9e, 0x54, 0x5d, 0xf1, - 0x53, 0xd8, 0x29, 0xb9, 0x0b, 0xf1, 0x16, 0x74, 0xd9, 0xef, 0xe5, 0xda, 0x2f, 0x70, 0x75, 0xf9, - 0xc6, 0xc7, 0x76, 0x50, 0xeb, 0x17, 0xb1, 0xb6, 0xf5, 0x72, 0x9b, 0x9e, 0x52, 0x2c, 0x41, 0x7b, - 0xa5, 0x4f, 0x33, 0xa2, 0x6a, 0x1e, 0xf2, 0x7a, 0x75, 0x8f, 0xdd, 0x6a, 0xb8, 0xda, 0xb6, 0xbe, - 0x56, 0xbb, 0x63, 0xe7, 0x55, 0xfc, 0x43, 0xe8, 0xa9, 0xea, 0x5a, 0xaa, 0xf1, 0x38, 0xd3, 0x78, - 0x69, 0x5f, 0xbd, 0xeb, 0xd1, 0xdb, 0xe5, 0xe9, 0xdf, 0x79, 0x15, 0xff, 0x08, 0x7a, 0xaa, 0x7a, - 0x98, 0x6a, 0x37, 0x42, 0x18, 0x97, 0xf7, 0xd7, 0xc9, 0x1e, 0xf5, 0xd8, 0xdb, 0xcd, 0xf3, 0x2a, - 0x4e, 0x41, 0x4b, 0x4e, 0xd2, 0xd6, 0x33, 0x9a, 0x74, 0x8f, 0xb0, 0x83, 0x49, 0xed, 0xe9, 0xbe, - 0x47, 0x65, 0x84, 0xa8, 0x1d, 0xfd, 0xaf, 0x1f, 0xa0, 0x2e, 0xe6, 0xca, 0x9d, 0x0d, 0x46, 0x3f, - 0x3f, 0x26, 0x44, 0x28, 0xe1, 0xb2, 0x74, 0x8f, 0xe0, 0x75, 0x00, 0xf3, 0x05, 0x70, 0x95, 0xe4, - 0xcc, 0xf8, 0xe2, 0x6e, 0xa2, 0x3b, 0xa7, 0xdf, 0xbf, 0xdf, 0x95, 0x2d, 0x28, 0xa5, 0x1c, 0x63, - 0x24, 0xb2, 0x2e, 0x89, 0x05, 0xed, 0x37, 0x1f, 0xa0, 0x8e, 0x08, 0x1a, 0x46, 0xe3, 0x68, 0x2e, - 0x9c, 0x65, 0x6f, 0xa1, 0x2d, 0x04, 0x84, 0x16, 0xe3, 0xed, 0x6f, 0x95, 0xe4, 0xf0, 0xab, 0x10, - 0x11, 0x35, 0x4d, 0xd2, 0x74, 0x92, 0xab, 0x77, 0x9f, 0x4a, 0xba, 0xe5, 0xc3, 0xfb, 0xe8, 0xd3, - 0x32, 0x42, 0x51, 0xb4, 0x10, 0x10, 0x6c, 0x16, 0xfc, 0xef, 0x08, 0xda, 0x36, 0xc4, 0xec, 0x9a, - 0x24, 0x1b, 0xf7, 0xd1, 0xb1, 0xf8, 0x61, 0x4b, 0xfa, 0x9f, 0xd0, 0x47, 0x65, 0xd4, 0x61, 0x5d, - 0x16, 0x93, 0xb9, 0x9c, 0xca, 0x6c, 0x26, 0xcd, 0xbd, 0xe3, 0x6f, 0x11, 0xcc, 0x82, 0xa7, 0x08, - 0x9f, 0x19, 0x9e, 0x88, 0xbf, 0x1b, 0xdf, 0xbc, 0x74, 0xeb, 0x0e, 0x1f, 0x4f, 0x4c, 0x5c, 0x4d, - 0xc7, 0x85, 0xf9, 0xeb, 0x23, 0xf1, 0x0d, 0x92, 0x93, 0x4a, 0x1b, 0x71, 0xc7, 0x09, 0x10, 0x98, - 0x76, 0xb2, 0x4e, 0x50, 0xd6, 0x53, 0xc3, 0x33, 0x36, 0x6b, 0x72, 0xc6, 0x62, 0x5d, 0x93, 0xf2, - 0x6b, 0x2e, 0xc6, 0x57, 0x9d, 0x8c, 0x93, 0x94, 0xf1, 0xdc, 0x70, 0x62, 0xca, 0xe6, 0x9c, 0x9c, - 0xb2, 0x38, 0x37, 0x89, 0xba, 0x5d, 0xc5, 0x6e, 0x5b, 0x39, 0xa1, 0xd5, 0x6c, 0xad, 0xe9, 0xb1, - 0xb4, 0xb1, 0x0f, 0x25, 0x65, 0x8a, 0x74, 0x5a, 0xdd, 0x63, 0xc1, 0xd8, 0xf6, 0x34, 0xfe, 0xa8, - 0x8c, 0xd0, 0xb8, 0xe5, 0xb4, 0x84, 0xce, 0x06, 0xa2, 0xbd, 0x0b, 0x41, 0x01, 0x18, 0xe5, 0x2d, - 0xa2, 0xce, 0xdf, 0xc3, 0x93, 0xd0, 0xaa, 0x2b, 0xba, 0x58, 0x30, 0x3f, 0xb3, 0x34, 0x58, 0x83, - 0xed, 0x55, 0xca, 0xc6, 0x08, 0x8d, 0x77, 0x0e, 0x2f, 0x40, 0xa7, 0xac, 0x64, 0xb6, 0x14, 0x75, - 0x9d, 0xa8, 0x26, 0xeb, 0x91, 0xba, 0x31, 0xcf, 0x76, 0x59, 0x79, 0x8b, 0x51, 0x1b, 0xfc, 0xb7, - 0xe0, 0x30, 0x9d, 0xa3, 0x44, 0x55, 0xc5, 0x8c, 0xa6, 0xac, 0xea, 0x5b, 0x22, 0x9d, 0xe8, 0x44, - 0xd5, 0xe8, 0x16, 0xdf, 0xc6, 0x06, 0xae, 0xc7, 0x1c, 0x66, 0xbb, 0x1a, 0xac, 0xd1, 0xfd, 0x16, - 0xdb, 0xb2, 0xc9, 0x75, 0xd7, 0x60, 0xc2, 0x37, 0x20, 0xaa, 0x14, 0x89, 0x2a, 0xb2, 0xfb, 0xcf, - 0xb4, 0x6d, 0x4d, 0x27, 0x1b, 0xb6, 0xc0, 0xf6, 0x3a, 0x02, 0xfb, 0x6c, 0xae, 0x65, 0xc6, 0x64, - 0xc9, 0x3b, 0x03, 0xcd, 0x9a, 0xb6, 0xc6, 0x6e, 0xcc, 0xe8, 0x60, 0xec, 0x1d, 0x7f, 0x2a, 0xa3, - 0xa0, 0x7d, 0x2d, 0xc5, 0x45, 0x21, 0xac, 0x69, 0x6b, 0xd7, 0xc8, 0x36, 0x1e, 0x86, 0x66, 0x31, - 0x97, 0xa3, 0xeb, 0x9c, 0x1d, 0xc4, 0x6b, 0x49, 0x77, 0xd0, 0x65, 0x65, 0x13, 0x06, 0x04, 0xab, - 0x18, 0x5f, 0x85, 0xd6, 0xac, 0xa2, 0xa8, 0x39, 0x89, 0xee, 0x4b, 0x9a, 0x79, 0xe0, 0xee, 0x98, - 0xa7, 0xc3, 0xd8, 0x42, 0xbf, 0x54, 0x21, 0x33, 0xa2, 0x8e, 0x82, 0x93, 0x13, 0xdf, 0x80, 0xfe, - 0x82, 0x92, 0xd7, 0x32, 0x9a, 0xae, 0x12, 0x71, 0x83, 0x36, 0xd8, 0xbe, 0xc0, 0xb0, 0xb7, 0xee, - 0x59, 0xc0, 0x5e, 0xca, 0xb6, 0x6c, 0x71, 0xd9, 0x37, 0x18, 0x7e, 0x1b, 0xda, 0x0a, 0x4a, 0x3e, - 0xa3, 0x92, 0x2c, 0x91, 0x36, 0x89, 0x6a, 0x1e, 0xd1, 0xdb, 0xcd, 0x42, 0xef, 0x7c, 0xff, 0xbe, - 0x8b, 0x75, 0x21, 0x24, 0xb4, 0x16, 0x94, 0xbc, 0x60, 0xfe, 0xc4, 0x97, 0x20, 0xa0, 0x6d, 0x99, - 0xa7, 0xf3, 0xfc, 0x5f, 0xb3, 0xbd, 0xeb, 0x19, 0x4f, 0xcf, 0xa1, 0xab, 0x80, 0xb6, 0x85, 0xd3, - 0x10, 0x50, 0x34, 0xf3, 0x98, 0x9d, 0xff, 0xce, 0x7d, 0xd3, 0x3d, 0x86, 0x5e, 0x19, 0x8a, 0x86, - 0x7f, 0x8e, 0x20, 0xa4, 0x8b, 0x79, 0x2d, 0x3a, 0xcc, 0xc2, 0x35, 0xbb, 0xdb, 0x5f, 0xdc, 0x51, - 0x81, 0xd1, 0xdb, 0x62, 0xde, 0xbc, 0x56, 0x70, 0xca, 0x1a, 0xe2, 0x96, 0xf7, 0x8c, 0xc8, 0x58, - 0xf4, 0xc7, 0x6c, 0xc0, 0xdf, 0x43, 0x01, 0x6e, 0x98, 0xc5, 0xc8, 0xde, 0x43, 0xcd, 0x67, 0xe9, - 0xf8, 0x7f, 0xee, 0xba, 0x7a, 0x90, 0x55, 0x01, 0xbf, 0x0b, 0x5d, 0x9b, 0x52, 0x31, 0x53, 0x14, - 0x55, 0x71, 0xc3, 0x5e, 0xb0, 0x87, 0x59, 0xbd, 0x46, 0xfc, 0x66, 0x03, 0x0b, 0x5a, 0x6b, 0x6b, - 0x77, 0x17, 0x6f, 0xdd, 0x62, 0x2c, 0x6c, 0xe5, 0xa6, 0x87, 0xcc, 0xe9, 0x4c, 0xd5, 0xb5, 0x3d, - 0x44, 0x2d, 0x67, 0x9b, 0xc7, 0xf9, 0x04, 0x9f, 0x74, 0x05, 0xe5, 0x3a, 0x36, 0xa5, 0xa2, 0x83, - 0x07, 0xbf, 0x6a, 0xc6, 0x32, 0x75, 0x25, 0x63, 0xfc, 0x5b, 0x92, 0x65, 0x52, 0xb0, 0xe2, 0xde, - 0x2d, 0x0e, 0xd3, 0x2a, 0x60, 0x4a, 0x70, 0x5b, 0x59, 0xa6, 0x7f, 0x19, 0xd5, 0x62, 0x11, 0x7f, - 0x1b, 0xa2, 0xd6, 0x5b, 0xd8, 0x2b, 0x05, 0x25, 0xbb, 0x4e, 0x72, 0x2c, 0xac, 0x23, 0x65, 0x89, - 0x66, 0xbe, 0xeb, 0xec, 0x6f, 0xb1, 0xc3, 0x8f, 0x0c, 0x73, 0xdd, 0x24, 0xf4, 0x99, 0xfc, 0x69, - 0x83, 0x7d, 0xd9, 0xe4, 0xc6, 0x97, 0x01, 0x33, 0x89, 0x19, 0xb1, 0x50, 0xa8, 0xc8, 0xe4, 0xeb, - 0x4c, 0xe6, 0x26, 0x81, 0x63, 0x1c, 0xf3, 0x85, 0x82, 0x2d, 0xe5, 0x6d, 0xe0, 0xaa, 0xea, 0x35, - 0xc2, 0x64, 0xf0, 0x1e, 0x19, 0xec, 0x26, 0xd7, 0x51, 0x4f, 0x2d, 0xec, 0xe4, 0x49, 0x93, 0xd0, - 0xb9, 0xe2, 0xa9, 0xe0, 0x36, 0x0c, 0x28, 0xab, 0xab, 0x05, 0xba, 0xb9, 0x68, 0x25, 0x75, 0x53, - 0xda, 0x14, 0x57, 0xa4, 0x82, 0xa4, 0x6f, 0x1b, 0xe7, 0x0b, 0xcf, 0xd6, 0x09, 0xd8, 0xdd, 0x34, - 0xd8, 0x96, 0x9d, 0x5c, 0x3e, 0xa7, 0x0b, 0xa3, 0x4a, 0x0d, 0x3a, 0xfc, 0x9f, 0x61, 0xb0, 0xa4, - 0x11, 0x95, 0x6a, 0xa2, 0x20, 0xde, 0xb8, 0x7b, 0xca, 0xbe, 0xa9, 0x36, 0x9a, 0x64, 0xba, 0x07, - 0x46, 0x8d, 0xbb, 0x6c, 0x47, 0xad, 0xbb, 0x6c, 0x47, 0x6f, 0x5b, 0x14, 0xe9, 0x10, 0x1d, 0x52, - 0xe1, 0x30, 0x15, 0x72, 0xdd, 0x21, 0xc3, 0x26, 0xc0, 0x23, 0xc0, 0x69, 0xa5, 0x7c, 0x9e, 0xfa, - 0xd2, 0xb9, 0x8c, 0xc8, 0xd2, 0x1a, 0xd1, 0x14, 0x0b, 0x04, 0x76, 0xda, 0xcf, 0xe7, 0x8d, 0xab, - 0x87, 0xce, 0x41, 0x17, 0x51, 0x55, 0x45, 0xcd, 0xe4, 0x48, 0xe5, 0xfa, 0x9d, 0x09, 0x46, 0xcb, - 0xb1, 0x82, 0xcb, 0x95, 0xe7, 0xf8, 0x35, 0x68, 0x65, 0xd3, 0x8c, 0x15, 0x68, 0xd1, 0x49, 0x36, - 0xc5, 0x63, 0x35, 0x93, 0x6f, 0x57, 0x28, 0x99, 0x00, 0x9a, 0xf5, 0x5f, 0x0d, 0xdf, 0x01, 0xce, - 0xbc, 0xce, 0x96, 0xb6, 0x59, 0xd3, 0x45, 0x9d, 0x44, 0xa7, 0xe2, 0x68, 0xb8, 0x23, 0x79, 0xd6, - 0xff, 0x8a, 0x2d, 0x06, 0x2b, 0xee, 0xda, 0x2c, 0xcb, 0x94, 0x43, 0xe8, 0xdc, 0x74, 0x3f, 0xc0, - 0x97, 0xec, 0x1b, 0xc9, 0x72, 0xb2, 0x16, 0x9d, 0xf6, 0xbd, 0xaf, 0xc8, 0x14, 0xc8, 0xc8, 0x2e, - 0xdf, 0x58, 0x36, 0xcd, 0xb0, 0x79, 0xe3, 0xd8, 0x65, 0x59, 0xc3, 0xef, 0x40, 0x8b, 0xbe, 0x6a, - 0x2e, 0xe2, 0xe8, 0xef, 0x9b, 0x77, 0x6d, 0x32, 0x07, 0xdf, 0xbf, 0xdf, 0xc3, 0x2c, 0x1e, 0xdd, - 0xd1, 0x0d, 0x7e, 0xa2, 0x13, 0x55, 0x63, 0x83, 0x14, 0xd1, 0x57, 0x8d, 0xf5, 0x8a, 0xff, 0x13, - 0xb4, 0xb3, 0xbb, 0x7a, 0x8d, 0xeb, 0xcb, 0xc4, 0x42, 0xf4, 0xd3, 0xdd, 0xab, 0xe8, 0x79, 0xff, - 0xbe, 0x9b, 0x99, 0xc9, 0x6e, 0xa3, 0x8f, 0x16, 0xcd, 0x27, 0x38, 0x0b, 0x9d, 0x06, 0x42, 0x63, - 0x23, 0xc4, 0x22, 0xd9, 0x7f, 0x30, 0x34, 0xcc, 0xbd, 0x18, 0x16, 0x75, 0xe6, 0x22, 0x84, 0x76, - 0x26, 0xd3, 0x7a, 0x34, 0x30, 0x0d, 0x2d, 0xb6, 0xd1, 0x7c, 0xa1, 0x0b, 0x56, 0x1f, 0xa0, 0xc7, - 0x65, 0xf4, 0x23, 0x38, 0x0e, 0xdd, 0x2c, 0x5d, 0x46, 0x65, 0xc7, 0x97, 0x49, 0xc1, 0xbc, 0xff, - 0x0a, 0xa6, 0xf9, 0x04, 0x9f, 0x1a, 0xe7, 0x53, 0xfc, 0x04, 0x9c, 0x86, 0x1e, 0x23, 0xa3, 0xa6, - 0xe4, 0x48, 0xfc, 0x96, 0xdd, 0x9b, 0xb8, 0x23, 0x31, 0xce, 0x27, 0xa6, 0xf8, 0xc4, 0x04, 0xcf, - 0xce, 0x73, 0x42, 0x02, 0xfa, 0xec, 0xdc, 0x9a, 0xfb, 0x1b, 0x08, 0xfd, 0xc9, 0x71, 0xe3, 0x25, - 0x22, 0x7e, 0x62, 0x9c, 0x25, 0xda, 0xa6, 0xf8, 0x89, 0x24, 0x3f, 0x39, 0x99, 0x3e, 0x0d, 0xed, - 0x46, 0xd0, 0xc1, 0xf9, 0x72, 0x7e, 0xe0, 0x69, 0x19, 0xc5, 0xd8, 0x79, 0x0f, 0x3e, 0x9e, 0x4a, - 0xb0, 0x0b, 0xc0, 0x78, 0x68, 0xb1, 0xaf, 0x4b, 0xc6, 0xc7, 0x1e, 0x95, 0x51, 0xd3, 0xd3, 0x32, - 0x0a, 0x3d, 0x2b, 0xa3, 0xce, 0x49, 0x7e, 0x8a, 0x4f, 0x4c, 0xf3, 0xa9, 0x24, 0x9f, 0x4a, 0xf1, - 0x29, 0xe3, 0x76, 0xb1, 0x63, 0x00, 0x39, 0x52, 0x2c, 0x28, 0xdb, 0x1b, 0x44, 0xd6, 0xd9, 0x3d, - 0x61, 0x11, 0xf3, 0xa8, 0x2d, 0x9a, 0xf9, 0xc5, 0x07, 0x08, 0xa5, 0x87, 0xa1, 0xcd, 0x09, 0xac, - 0xd8, 0x57, 0x44, 0x8f, 0x38, 0x52, 0x56, 0x91, 0xc4, 0x24, 0x6f, 0x7c, 0x44, 0x60, 0x04, 0x7a, - 0x18, 0x0e, 0xb0, 0x76, 0x5f, 0xab, 0x9e, 0x54, 0x68, 0xef, 0xd3, 0x32, 0xea, 0x61, 0xf5, 0x4c, - 0xf0, 0xc9, 0x64, 0x9a, 0x87, 0x7e, 0xaf, 0x69, 0x74, 0x52, 0xf3, 0x4f, 0xcb, 0xe8, 0x24, 0xa5, - 0x9e, 0x98, 0xe0, 0x27, 0x12, 0x4b, 0xa1, 0x48, 0x8c, 0x3b, 0xb6, 0x14, 0x8a, 0x84, 0xb8, 0x26, - 0xfb, 0x60, 0xa8, 0x91, 0x96, 0x32, 0x8e, 0x87, 0xf6, 0x70, 0xbd, 0x4b, 0xa1, 0xc8, 0x49, 0xee, - 0xd4, 0x52, 0x28, 0x72, 0x9a, 0x3b, 0xb3, 0x14, 0x8a, 0x9c, 0xe1, 0x86, 0x97, 0x42, 0x91, 0x73, - 0x1c, 0x3f, 0xf4, 0x7f, 0xba, 0xa1, 0xe3, 0x92, 0x4a, 0x44, 0x9d, 0xd8, 0xe1, 0xf4, 0x53, 0xfe, - 0xe1, 0x74, 0x6f, 0xf4, 0xfc, 0x84, 0x5f, 0xf0, 0xdc, 0x1b, 0x14, 0x3a, 0x57, 0x2b, 0x26, 0xe4, - 0xe7, 0xf5, 0x7f, 0x6b, 0x6f, 0x5e, 0xbf, 0xe9, 0xef, 0x7f, 0xf7, 0x80, 0xfd, 0x7d, 0xb7, 0xa7, - 0xaf, 0xbc, 0x4c, 0x4f, 0xdf, 0xcf, 0xc7, 0xff, 0xfe, 0x4b, 0xf5, 0xf1, 0x7d, 0xbd, 0xfb, 0xec, - 0xcb, 0xf0, 0xee, 0xbd, 0x7e, 0xfd, 0xe6, 0x4b, 0xf7, 0xeb, 0xfd, 0x3d, 0xfa, 0x77, 0x5f, 0xbe, - 0x47, 0x5f, 0xc3, 0x97, 0x7f, 0x7b, 0x8f, 0x6e, 0x79, 0x8f, 0x9f, 0x5b, 0xee, 0x76, 0xc2, 0x8f, - 0xfb, 0x39, 0xd1, 0x6e, 0x57, 0x73, 0xb0, 0x2a, 0x92, 0xe0, 0x88, 0x18, 0xf4, 0x7b, 0xdc, 0x26, - 0xdb, 0x4d, 0x8a, 0x7a, 0xdc, 0xa4, 0x8a, 0x5b, 0x34, 0xbf, 0x17, 0xb7, 0xe8, 0x40, 0x1c, 0xa2, - 0xe0, 0x17, 0xe0, 0x10, 0x05, 0xdd, 0x0e, 0xd1, 0x6b, 0x7b, 0x73, 0x88, 0x42, 0xb6, 0x33, 0x74, - 0x61, 0x4f, 0xce, 0x50, 0xc8, 0x76, 0x84, 0xde, 0xdc, 0x83, 0x1f, 0xe4, 0x36, 0xe7, 0x15, 0x3f, - 0xc8, 0xf4, 0x67, 0x86, 0xfc, 0x62, 0x0f, 0x0b, 0x21, 0x57, 0x9c, 0xe1, 0xb8, 0x4f, 0x9c, 0x81, - 0x92, 0xec, 0x3d, 0xa6, 0x10, 0xaa, 0x8e, 0x29, 0xec, 0xc9, 0x3b, 0xf9, 0x73, 0xf6, 0x4a, 0x94, - 0x97, 0xe2, 0x95, 0xd4, 0xf1, 0x45, 0x0e, 0x02, 0x39, 0xef, 0x1d, 0x15, 0x76, 0x3d, 0xb9, 0xe0, - 0xc9, 0xd4, 0xa7, 0x87, 0xbc, 0x18, 0xad, 0xeb, 0xc1, 0x73, 0xe4, 0x7e, 0x94, 0x1e, 0x70, 0xe2, - 0xb3, 0xf6, 0x07, 0xcf, 0x51, 0xe5, 0x67, 0xfa, 0x88, 0x0b, 0x8d, 0x75, 0x3c, 0x78, 0x8e, 0x1c, - 0xbf, 0xd3, 0xe3, 0x35, 0x00, 0x56, 0xf4, 0xc1, 0x73, 0xe4, 0x5b, 0x92, 0x8e, 0x7b, 0xc0, 0x1b, - 0xf7, 0xe0, 0x39, 0x72, 0x3d, 0x49, 0x4f, 0xd5, 0x46, 0x62, 0x83, 0x0f, 0x9e, 0xa3, 0x5a, 0x85, - 0x1e, 0x34, 0x66, 0x1c, 0x15, 0x6a, 0xe7, 0x3a, 0x6c, 0x34, 0x76, 0x82, 0x3b, 0x59, 0x13, 0x93, - 0xfd, 0x9a, 0x83, 0x4e, 0xf3, 0x60, 0xaf, 0x0d, 0xca, 0x24, 0x1f, 0x74, 0x93, 0xde, 0xe3, 0xc6, - 0xec, 0x38, 0x34, 0x6c, 0x06, 0xa1, 0x0f, 0x39, 0xa1, 0xce, 0x0f, 0x6b, 0x43, 0x9d, 0x85, 0x7d, - 0x6d, 0xcf, 0x7e, 0x7a, 0xab, 0x70, 0xcf, 0x8f, 0x6a, 0xe3, 0x9e, 0xc5, 0xfd, 0x6d, 0xd2, 0x7e, - 0xea, 0xab, 0x41, 0x50, 0xd1, 0x1f, 0x04, 0x5d, 0xde, 0x33, 0x08, 0xf2, 0x53, 0xeb, 0x42, 0x44, - 0x3f, 0x45, 0x75, 0x21, 0xd1, 0xd2, 0x3e, 0x21, 0x91, 0x9f, 0x7e, 0x1f, 0x7c, 0xf4, 0x33, 0x54, - 0x17, 0x20, 0x5d, 0xdb, 0x2f, 0x40, 0xf2, 0xab, 0xc6, 0xcb, 0x47, 0x4b, 0xc8, 0x89, 0x96, 0xbe, - 0x8a, 0xa0, 0x26, 0xf0, 0x05, 0x80, 0x9a, 0x80, 0x1b, 0xd4, 0xf8, 0x03, 0x80, 0xe0, 0xce, 0x00, - 0xe0, 0xa0, 0x93, 0x0a, 0x7b, 0x03, 0x00, 0xa1, 0x03, 0x04, 0x00, 0xa1, 0x97, 0x08, 0x00, 0x42, - 0x5f, 0x13, 0x00, 0x30, 0x77, 0xaf, 0x6a, 0x1f, 0x7f, 0x5c, 0x46, 0x04, 0x06, 0xfc, 0xa3, 0x3d, - 0xc1, 0x09, 0x7e, 0x1a, 0xe2, 0x35, 0xc2, 0x3c, 0x11, 0x16, 0xdd, 0xe1, 0x93, 0xb3, 0x70, 0xaa, - 0x66, 0x80, 0xa7, 0x35, 0x39, 0x5e, 0x09, 0xea, 0x7c, 0x5d, 0xc0, 0x80, 0xf3, 0x24, 0xb1, 0x13, - 0x18, 0x00, 0xd7, 0xea, 0x81, 0x07, 0xc6, 0xbb, 0xbc, 0xc6, 0x57, 0x21, 0x0d, 0xa8, 0x60, 0x04, - 0x77, 0x8e, 0x71, 0xf1, 0x1d, 0x60, 0xc3, 0x67, 0xfd, 0xd0, 0x7a, 0x95, 0xe8, 0x8d, 0x38, 0x4e, - 0x23, 0x8e, 0xd3, 0x88, 0xe3, 0xfc, 0x79, 0xc5, 0x71, 0x92, 0xbb, 0x3b, 0x4c, 0xe1, 0x3a, 0x41, - 0xb1, 0xdf, 0xd8, 0xcf, 0xdc, 0x8e, 0x49, 0xfd, 0xda, 0xe9, 0xfb, 0x99, 0x9d, 0xd2, 0xf7, 0x35, - 0x13, 0xf5, 0x8d, 0x88, 0x53, 0xfd, 0x88, 0xd3, 0x0d, 0x57, 0xc0, 0x67, 0x77, 0xc9, 0x1d, 0x87, - 0xd1, 0xaf, 0x8a, 0xf6, 0x7c, 0x0b, 0x58, 0x86, 0xce, 0xcc, 0xc6, 0xf5, 0xb3, 0x6c, 0xdc, 0x51, - 0xbf, 0xbe, 0xb3, 0xde, 0xa7, 0x23, 0x02, 0xdb, 0x62, 0x8d, 0xd4, 0xdb, 0xed, 0x83, 0xc8, 0x7d, - 0x57, 0xe5, 0xb5, 0x1b, 0x11, 0xa8, 0x6f, 0x4c, 0x04, 0xea, 0x3b, 0xfb, 0xcc, 0x86, 0x37, 0xf2, - 0xe0, 0x07, 0x9c, 0x07, 0xff, 0x6a, 0x27, 0x92, 0x7b, 0xaa, 0x5c, 0x8d, 0x4f, 0x2f, 0xa0, 0x6f, - 0x6c, 0xd4, 0x70, 0xc7, 0x48, 0x61, 0xfa, 0xff, 0xa3, 0xa7, 0x1f, 0xc7, 0x0e, 0x7d, 0xf8, 0x71, - 0xec, 0xd0, 0x67, 0x1f, 0xc7, 0xd0, 0x4f, 0x9e, 0xc5, 0xd0, 0x2f, 0x9f, 0xc5, 0xd0, 0x6f, 0x9f, - 0xc5, 0xd0, 0xd3, 0x67, 0x31, 0xf4, 0xe1, 0xb3, 0x18, 0xfa, 0xdd, 0xb3, 0x18, 0xfa, 0xf4, 0x59, - 0xec, 0xd0, 0x67, 0xcf, 0x62, 0xe8, 0x7f, 0x7f, 0x12, 0x3b, 0xf4, 0xe8, 0x93, 0x18, 0x7a, 0xfa, - 0x49, 0xec, 0xd0, 0x87, 0x9f, 0xc4, 0x0e, 0x7d, 0xe7, 0xed, 0xbc, 0x52, 0x5c, 0xcf, 0x8f, 0x5a, - 0xbb, 0xfc, 0x68, 0x49, 0x1b, 0xb3, 0xcf, 0x3a, 0x9c, 0x2f, 0xaa, 0xca, 0xa6, 0x94, 0x23, 0xea, - 0x79, 0xab, 0x78, 0xac, 0xb8, 0x92, 0x57, 0xc6, 0xc8, 0xbb, 0xba, 0x31, 0x41, 0xc6, 0xcc, 0x7f, - 0xd8, 0x3c, 0x19, 0xf3, 0xcc, 0x93, 0x95, 0x30, 0x5b, 0xcb, 0xa9, 0xff, 0x08, 0x00, 0x00, 0xff, - 0xff, 0xfe, 0x8c, 0x7b, 0x4f, 0x3a, 0x9a, 0x00, 0x00, + // 7070 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x6c, 0x1b, 0xd9, + 0xf9, 0x9f, 0x8f, 0x48, 0x51, 0xd4, 0xa7, 0xdb, 0xe8, 0x88, 0x92, 0x68, 0xc9, 0xa6, 0x69, 0xf9, + 0x26, 0xd9, 0x63, 0x49, 0x24, 0x75, 0xdf, 0xac, 0xd7, 0xa2, 0xed, 0xb5, 0x24, 0xaf, 0x2f, 0x3b, + 0xb2, 0xbd, 0xd9, 0x20, 0x5b, 0x76, 0x44, 0x1e, 0x51, 0x13, 0x51, 0x33, 0xcc, 0xcc, 0x50, 0xb2, + 0x9c, 0x38, 0xd9, 0x3a, 0x48, 0xd0, 0xb4, 0x0d, 0x5a, 0xb8, 0x28, 0x0a, 0x6c, 0xfb, 0x90, 0x97, + 0x02, 0xc1, 0x3e, 0x05, 0x68, 0x9f, 0xc2, 0x05, 0x6a, 0xb8, 0x28, 0x90, 0xba, 0x2f, 0x7e, 0xeb, + 0x62, 0x81, 0x02, 0x59, 0x2f, 0xd0, 0xec, 0x3e, 0x35, 0x68, 0xf3, 0x10, 0xb8, 0x40, 0xf7, 0x8f, + 0x73, 0xe6, 0xc2, 0x99, 0xe1, 0x90, 0x92, 0x25, 0x79, 0x2f, 0x59, 0xbe, 0xc8, 0xe6, 0x9c, 0xef, + 0x72, 0xae, 0xdf, 0xf9, 0x7d, 0xdf, 0xf9, 0x66, 0x0e, 0x8c, 0x6d, 0x12, 0x6d, 0x54, 0x52, 0xc6, + 0xb4, 0xec, 0x1a, 0xd9, 0x10, 0xc7, 0x36, 0x25, 0xb2, 0xa5, 0x8d, 0x89, 0xf7, 0x4b, 0x2a, 0xc9, + 0x6c, 0xca, 0x44, 0xcf, 0x68, 0x92, 0x4e, 0xc6, 0xf4, 0xed, 0x22, 0xd1, 0x46, 0x8b, 0xaa, 0xa2, + 0x2b, 0xf8, 0x84, 0xc1, 0x30, 0x6a, 0x30, 0x8c, 0x32, 0x86, 0x51, 0x0f, 0xc3, 0xc0, 0xf9, 0xbc, + 0xa4, 0xaf, 0x95, 0x56, 0x46, 0xb3, 0xca, 0xc6, 0x58, 0x5e, 0xc9, 0x2b, 0x63, 0x8c, 0x77, 0xa5, + 0xb4, 0xca, 0x7e, 0xb1, 0x1f, 0xec, 0x7f, 0x86, 0xcc, 0x81, 0x63, 0x79, 0x45, 0xc9, 0x17, 0x48, + 0x85, 0x4a, 0x97, 0x36, 0x88, 0xa6, 0x8b, 0x1b, 0x45, 0x8b, 0xc0, 0x5d, 0xcb, 0xd5, 0x02, 0x21, + 0xba, 0xb3, 0x56, 0x03, 0x67, 0xdd, 0x04, 0x32, 0xd1, 0xb7, 0x14, 0x75, 0x3d, 0xb3, 0x2a, 0xa9, + 0x64, 0x4b, 0x2c, 0x14, 0x5c, 0xb4, 0x83, 0x6e, 0x5a, 0xa5, 0xa8, 0x4b, 0x8a, 0x6c, 0x15, 0xc6, + 0xdc, 0x85, 0xde, 0xe6, 0x0f, 0x1c, 0x76, 0x97, 0x3b, 0x8b, 0x8e, 0x78, 0xba, 0x52, 0x2c, 0x48, + 0x39, 0x51, 0x27, 0x66, 0x69, 0xbc, 0xba, 0xa3, 0x33, 0x6e, 0xd5, 0x27, 0xfd, 0x86, 0x82, 0x56, + 0x20, 0xe3, 0xd4, 0x72, 0xc6, 0x97, 0x4a, 0x57, 0x54, 0x31, 0xef, 0x26, 0x3c, 0xe6, 0x47, 0xe8, + 0x20, 0x18, 0xfa, 0xdf, 0x4d, 0xc0, 0xcd, 0xd3, 0x81, 0x5b, 0x28, 0xad, 0xdc, 0x95, 0x89, 0x7e, + 0x7b, 0xbb, 0x48, 0xf0, 0x3a, 0xb4, 0x69, 0x45, 0x65, 0xdd, 0x18, 0x4c, 0x2d, 0x8a, 0xe2, 0x81, + 0xe1, 0xb6, 0xe4, 0xc4, 0xe8, 0x2e, 0x06, 0x7d, 0x94, 0xca, 0xb8, 0x45, 0x88, 0x2a, 0xc9, 0x79, + 0x2a, 0x2a, 0x1d, 0xf9, 0xc3, 0x17, 0x8f, 0x03, 0xcd, 0x8f, 0x50, 0x13, 0x97, 0xb3, 0xfe, 0x17, + 0x45, 0x02, 0x30, 0xf1, 0x94, 0x56, 0xc3, 0x6f, 0x41, 0x1f, 0xb9, 0x57, 0x54, 0x89, 0xa6, 0x65, + 0x54, 0xa5, 0xa4, 0x93, 0x4c, 0x4e, 0xd2, 0xc4, 0x95, 0x02, 0xc9, 0x45, 0x03, 0x71, 0x34, 0xdc, + 0x96, 0x8c, 0x78, 0xf4, 0x5e, 0xd9, 0x28, 0xea, 0xdb, 0x0b, 0x87, 0x84, 0x88, 0xc9, 0x25, 0x50, + 0xa6, 0xcb, 0x26, 0x0f, 0xfe, 0x31, 0xf4, 0xba, 0xa5, 0x11, 0xd9, 0x10, 0x16, 0x64, 0xc2, 0x5e, + 0xdb, 0x55, 0x23, 0xae, 0x38, 0x24, 0x5f, 0x52, 0xe4, 0x55, 0x89, 0xb5, 0x65, 0xe1, 0x90, 0xd0, + 0xe3, 0xd4, 0x79, 0xc5, 0x90, 0x9c, 0x3e, 0x03, 0x11, 0xb7, 0xca, 0xec, 0x9a, 0x22, 0x65, 0x09, + 0xee, 0x7a, 0x5c, 0x46, 0x81, 0x67, 0x65, 0xd4, 0xf4, 0xbc, 0x8c, 0x02, 0x29, 0x7e, 0x62, 0x29, + 0x18, 0x6e, 0xe2, 0x02, 0x43, 0xff, 0x22, 0x08, 0x5d, 0x9e, 0x5e, 0xc2, 0x53, 0x10, 0xa4, 0xda, + 0xa3, 0x88, 0x55, 0x72, 0xc8, 0xb7, 0x92, 0x6c, 0x94, 0xac, 0x21, 0x12, 0x18, 0x3d, 0x3e, 0x0b, + 0x41, 0xb1, 0xa4, 0x2b, 0x3b, 0xf4, 0x14, 0xa3, 0xc1, 0xa3, 0x10, 0xda, 0x10, 0xe5, 0x92, 0x58, + 0x30, 0xbb, 0xa2, 0x16, 0xb5, 0x49, 0x85, 0x0b, 0x10, 0x2a, 0x88, 0x2b, 0xa4, 0xa0, 0x45, 0x9b, + 0xd9, 0xf8, 0x5f, 0xdc, 0xcb, 0xf8, 0x8f, 0xbe, 0xc5, 0x44, 0x5c, 0x91, 0x75, 0x75, 0x3b, 0x8d, + 0x3f, 0xf8, 0x08, 0x05, 0x00, 0xa1, 0xe7, 0x7f, 0xfa, 0xaf, 0x81, 0xd0, 0x3f, 0xfb, 0x08, 0x35, + 0x85, 0x0f, 0x09, 0xa6, 0x8e, 0x81, 0x59, 0x68, 0x73, 0x90, 0x62, 0x0e, 0x02, 0xeb, 0x64, 0x9b, + 0xf5, 0x47, 0xab, 0x40, 0xff, 0x8b, 0x23, 0xd0, 0xbc, 0x29, 0x16, 0x4a, 0x24, 0xda, 0xc4, 0x9e, + 0x19, 0x3f, 0xe6, 0x9a, 0x66, 0xd0, 0xdc, 0x23, 0xf4, 0xb4, 0x8c, 0x7e, 0x83, 0xe0, 0x0c, 0x74, + 0x0a, 0x44, 0x53, 0x4a, 0x6a, 0x96, 0xc4, 0xaf, 0xaa, 0x4a, 0xa9, 0x38, 0xd0, 0x0b, 0x3d, 0xb4, + 0x66, 0xa3, 0xaa, 0xf9, 0x38, 0x93, 0xa7, 0x8f, 0x21, 0x0a, 0xc1, 0x1b, 0xe2, 0x06, 0x19, 0xe0, + 0xa0, 0x93, 0x15, 0xb3, 0xda, 0xcb, 0xe2, 0x06, 0x81, 0x24, 0xb4, 0xd0, 0xa1, 0x95, 0xe4, 0xfc, + 0xd9, 0x33, 0x70, 0x0a, 0xba, 0x8d, 0xee, 0x4d, 0xb6, 0xce, 0x97, 0x74, 0x65, 0x43, 0xd4, 0xa5, + 0x2c, 0x70, 0x56, 0x2f, 0x26, 0x43, 0xd7, 0xd9, 0xbf, 0x10, 0x81, 0x90, 0x51, 0xf3, 0x25, 0xb0, + 0x7a, 0x8c, 0x6b, 0x4e, 0x1f, 0x87, 0x4e, 0xd5, 0x90, 0xb4, 0xc3, 0x74, 0xf8, 0x55, 0x10, 0xfa, + 0xec, 0xa1, 0x5d, 0x94, 0xf3, 0x74, 0x1e, 0x5d, 0xdd, 0x62, 0xb3, 0xe2, 0x87, 0x10, 0x16, 0xef, + 0x67, 0x64, 0x25, 0x47, 0xac, 0x35, 0x98, 0xac, 0x3f, 0x33, 0x6e, 0xca, 0x64, 0x51, 0xd6, 0x89, + 0xba, 0x2a, 0x66, 0xc9, 0x0d, 0x25, 0x47, 0xd8, 0x0a, 0xec, 0xa0, 0xeb, 0x2e, 0xfc, 0x08, 0x35, + 0x9f, 0x0d, 0x24, 0xf8, 0x94, 0xd0, 0x22, 0xde, 0xa7, 0x45, 0x1a, 0xce, 0x03, 0x36, 0x06, 0x2f, + 0x4b, 0x54, 0x5d, 0x5a, 0x95, 0x48, 0x2e, 0xb3, 0xb6, 0x65, 0xf4, 0x6e, 0x7a, 0xf6, 0x93, 0x32, + 0xea, 0x61, 0xa5, 0xe7, 0x57, 0xb6, 0x95, 0xc2, 0xf9, 0x4d, 0xa5, 0xa0, 0x6f, 0x10, 0x6d, 0xed, + 0x6f, 0x65, 0x74, 0x88, 0x8a, 0x3b, 0xac, 0xf6, 0x47, 0x2f, 0x0a, 0x7e, 0x14, 0x02, 0xc7, 0x1e, + 0x5e, 0xb2, 0x64, 0x2e, 0x6c, 0xe1, 0x9f, 0xc3, 0x91, 0x22, 0x51, 0x57, 0x15, 0x75, 0x43, 0x94, + 0xb3, 0x74, 0x41, 0xae, 0xd1, 0x7f, 0x37, 0x88, 0xac, 0x67, 0x36, 0x94, 0x1c, 0x89, 0x9e, 0x67, + 0xd3, 0x31, 0xe5, 0xdb, 0xb4, 0x5b, 0x15, 0xc6, 0x2b, 0x15, 0xbe, 0xeb, 0x56, 0xdb, 0xc2, 0x8f, + 0xcb, 0x08, 0xfd, 0xa5, 0x8c, 0x90, 0x30, 0x50, 0xac, 0x49, 0x89, 0x15, 0xe8, 0x13, 0xb3, 0x59, + 0x52, 0x20, 0xaa, 0xa8, 0x93, 0x5c, 0xc6, 0xdc, 0x17, 0x24, 0x39, 0x1f, 0x1d, 0x65, 0xaa, 0x47, + 0xfd, 0x7b, 0xb5, 0xc2, 0x72, 0xc3, 0xe6, 0xf0, 0x68, 0xed, 0x15, 0xfd, 0x88, 0xe6, 0xce, 0x3f, + 0x29, 0xa3, 0x11, 0x68, 0x87, 0x66, 0xa3, 0xa7, 0x03, 0x49, 0x3e, 0x01, 0x87, 0x81, 0x9b, 0xcf, + 0x6d, 0xd2, 0x7a, 0xe5, 0xe2, 0x37, 0x0d, 0x93, 0x8f, 0x9b, 0x27, 0x26, 0xf9, 0x89, 0xa9, 0xa5, + 0x60, 0x38, 0xc0, 0x05, 0x87, 0xfe, 0x1a, 0x80, 0x68, 0xf5, 0x44, 0x98, 0x17, 0xd8, 0x54, 0x58, + 0x80, 0x20, 0x9d, 0x07, 0xa6, 0x81, 0x98, 0x78, 0xb9, 0x69, 0x60, 0xc8, 0x10, 0x98, 0x84, 0xc6, + 0xb0, 0x7f, 0xc3, 0x86, 0xfd, 0x51, 0x1b, 0xf4, 0xf9, 0xef, 0x37, 0x78, 0x0b, 0xda, 0xb2, 0x8a, + 0x2c, 0x93, 0x2c, 0x63, 0x33, 0x4d, 0xc0, 0x1b, 0x7b, 0xd9, 0xc1, 0x4c, 0x19, 0x9e, 0x1d, 0x39, + 0x6c, 0xfd, 0x2f, 0x8c, 0x04, 0xa7, 0x26, 0x3c, 0x0b, 0xed, 0xda, 0x7a, 0x29, 0xa3, 0xe9, 0xa2, + 0x9c, 0x13, 0xd5, 0x5c, 0x34, 0x54, 0x77, 0xc3, 0x68, 0xd3, 0xd6, 0x4b, 0xcb, 0x26, 0x29, 0x9e, + 0x06, 0xfa, 0x33, 0x43, 0xd4, 0xfc, 0x56, 0x42, 0xbc, 0x1f, 0x6d, 0xa9, 0xcb, 0x09, 0xda, 0x7a, + 0xe9, 0x8a, 0x41, 0x89, 0xe7, 0xa0, 0x83, 0x32, 0xae, 0x49, 0xf9, 0xb5, 0x0c, 0x1d, 0xd4, 0x68, + 0x78, 0x47, 0xa5, 0x0b, 0x52, 0x7e, 0x8d, 0xce, 0x14, 0xa7, 0xd2, 0xa4, 0x78, 0x3f, 0xda, 0xba, + 0x2b, 0xa5, 0x49, 0xf1, 0x3e, 0x7e, 0x17, 0x3a, 0xf3, 0xa2, 0x4e, 0xb6, 0xc4, 0xed, 0x8c, 0x56, + 0x5a, 0xa1, 0x3b, 0x30, 0x30, 0xde, 0x3a, 0x76, 0x76, 0x99, 0xd1, 0x5d, 0x62, 0x36, 0xfd, 0x1d, + 0x49, 0x5f, 0xa3, 0x5b, 0x03, 0x5b, 0x5e, 0x1d, 0xa6, 0x24, 0x83, 0x00, 0xaf, 0x40, 0x8f, 0x81, + 0x06, 0x34, 0xa2, 0x6e, 0x12, 0xd5, 0x92, 0xdf, 0xb6, 0x67, 0xf9, 0xdd, 0x4c, 0xdc, 0x32, 0x93, + 0x66, 0xea, 0x48, 0x40, 0x98, 0xee, 0x4f, 0x19, 0x51, 0x93, 0xa3, 0x1d, 0x75, 0x1a, 0x8d, 0x84, + 0x16, 0x4a, 0x37, 0xaf, 0xc9, 0x38, 0x0b, 0x90, 0x2d, 0x69, 0xba, 0xb2, 0xc1, 0x98, 0x3a, 0xe3, + 0x68, 0xb8, 0x23, 0x9d, 0xa6, 0xf3, 0xe0, 0xf5, 0xb3, 0xaf, 0x45, 0xbf, 0xfc, 0x32, 0x10, 0x47, + 0x4b, 0xa9, 0xa9, 0xc9, 0xc9, 0xc4, 0x24, 0x4f, 0xff, 0x4e, 0xb3, 0xbf, 0x33, 0xec, 0xef, 0x2c, + 0xfd, 0x9b, 0x1c, 0xe7, 0x67, 0xc6, 0xa7, 0x27, 0xe8, 0x9f, 0x49, 0x3e, 0x91, 0x1c, 0x9f, 0x9e, + 0xe2, 0x93, 0xa9, 0x89, 0xc9, 0xa9, 0x05, 0x24, 0xb4, 0x1a, 0x72, 0xa9, 0x92, 0xf7, 0xe0, 0x18, + 0x83, 0xac, 0x2a, 0xc9, 0x4b, 0x9a, 0xae, 0x8a, 0x74, 0x56, 0x65, 0x14, 0xda, 0x0b, 0x12, 0xb5, + 0x4b, 0xb4, 0x1f, 0xb8, 0x3a, 0xd5, 0x6d, 0x12, 0x8e, 0x50, 0x76, 0xc1, 0xc1, 0x7d, 0x73, 0x93, + 0xa8, 0x8b, 0x26, 0x2f, 0x7e, 0x00, 0x27, 0x6b, 0x88, 0x77, 0xe1, 0xb0, 0x28, 0x66, 0x3a, 0x4e, + 0xf9, 0xf6, 0xf5, 0xa5, 0x82, 0x52, 0xca, 0xbd, 0x25, 0xc9, 0xeb, 0xf3, 0x97, 0x6f, 0xb0, 0x65, + 0x11, 0xfc, 0xfd, 0x47, 0x08, 0x2d, 0x34, 0x09, 0x71, 0x3f, 0xd5, 0xce, 0xe5, 0x84, 0xdf, 0x86, + 0xc3, 0x62, 0x6e, 0x93, 0x5a, 0x3a, 0x8d, 0x64, 0x74, 0x25, 0xe3, 0x1c, 0xe6, 0x68, 0xa4, 0x4e, + 0xbb, 0x02, 0x42, 0x9f, 0xcd, 0x78, 0x5b, 0x11, 0x2a, 0xc3, 0x89, 0xdf, 0x83, 0x78, 0x4e, 0xc9, + 0xc8, 0x8a, 0x9e, 0xa9, 0x2d, 0xb9, 0xb7, 0xae, 0xe4, 0xc1, 0x9c, 0x72, 0x43, 0xd1, 0xe7, 0x7d, + 0xc5, 0xcf, 0xc9, 0x4f, 0xca, 0xe8, 0x47, 0x10, 0x87, 0xc1, 0x8a, 0x29, 0xd0, 0xe2, 0xb7, 0x95, + 0xf8, 0xdd, 0x1b, 0x44, 0x8f, 0x5f, 0x35, 0xa6, 0x2d, 0x46, 0x09, 0x18, 0x86, 0xa3, 0xce, 0x47, + 0xf1, 0x79, 0x39, 0x17, 0x67, 0x72, 0xe2, 0x66, 0x3d, 0x5b, 0x26, 0xf9, 0xc4, 0x38, 0x9f, 0x48, + 0xc0, 0x11, 0x1f, 0xb3, 0x16, 0x4e, 0x24, 0xf9, 0xc4, 0x24, 0x9f, 0x98, 0x4d, 0x9f, 0x02, 0xba, + 0xc8, 0x2c, 0xe0, 0xd3, 0xff, 0xb8, 0x8c, 0x42, 0xcf, 0xca, 0xa8, 0xf9, 0x79, 0x19, 0xb5, 0x4c, + 0xf1, 0xd3, 0xfc, 0x0c, 0x3f, 0xfb, 0x79, 0x19, 0xa1, 0xf4, 0x09, 0x00, 0x51, 0x93, 0x2d, 0xb2, + 0xde, 0xc7, 0x65, 0xd4, 0xf1, 0xac, 0x8c, 0xda, 0x9f, 0x97, 0x51, 0x73, 0x22, 0xc5, 0x27, 0x26, + 0x18, 0xd1, 0x79, 0x88, 0x58, 0xa6, 0x69, 0x53, 0xd2, 0xb7, 0x2d, 0x77, 0x89, 0x91, 0x73, 0xcf, + 0xca, 0xa8, 0x8b, 0x91, 0x4f, 0xf1, 0x89, 0x19, 0x46, 0x7e, 0x1a, 0xba, 0x2b, 0xae, 0x8b, 0xd1, + 0x81, 0x1a, 0xee, 0x7e, 0x5c, 0x46, 0x91, 0x67, 0x65, 0xd4, 0x43, 0x69, 0x93, 0xe3, 0x7c, 0x32, + 0xb1, 0x14, 0x0c, 0x37, 0x73, 0xa1, 0xa5, 0x60, 0xb8, 0x9d, 0xeb, 0x58, 0x0a, 0x86, 0xbb, 0x39, + 0xbc, 0x14, 0x0c, 0x77, 0x71, 0xdc, 0x52, 0x30, 0xdc, 0xc3, 0x45, 0x86, 0xfe, 0x3d, 0x82, 0x33, + 0xce, 0x31, 0xbf, 0xa9, 0xaf, 0xb1, 0x45, 0xa7, 0x65, 0x55, 0x89, 0xe9, 0xaf, 0x74, 0x24, 0x1e, + 0x01, 0xc8, 0x4a, 0x6a, 0xb6, 0x24, 0xe9, 0x19, 0x29, 0x67, 0x20, 0xd6, 0x34, 0x30, 0xcb, 0xaa, + 0x06, 0xa2, 0xef, 0x07, 0x85, 0x56, 0xb3, 0x74, 0x31, 0x87, 0xdf, 0x84, 0x4e, 0xb1, 0xa4, 0xaf, + 0x29, 0xaa, 0x74, 0x9f, 0xe4, 0x32, 0x14, 0xe0, 0x36, 0xb1, 0x41, 0x3d, 0xec, 0x19, 0xd4, 0x65, + 0x92, 0x55, 0x0d, 0x9c, 0x9f, 0x0e, 0x3e, 0xa3, 0x1b, 0x4e, 0x47, 0x85, 0xed, 0x1a, 0xd9, 0x1e, + 0xfa, 0x5f, 0x01, 0x18, 0xa8, 0x6d, 0xe1, 0xf1, 0x1c, 0x84, 0x37, 0x88, 0x2e, 0xe6, 0x44, 0x5d, + 0x34, 0x01, 0x43, 0xcc, 0xa3, 0xe0, 0x3a, 0xd1, 0x34, 0x31, 0x4f, 0xae, 0x13, 0x5d, 0x64, 0xb6, + 0xc5, 0xa6, 0xc7, 0xe7, 0x5c, 0xad, 0x09, 0x79, 0x5b, 0xb3, 0x70, 0xc8, 0xd9, 0x9e, 0x07, 0x80, + 0x15, 0xda, 0x33, 0xd4, 0xb8, 0xd9, 0x5d, 0x63, 0xba, 0x17, 0x6f, 0xbd, 0xf4, 0x3e, 0x55, 0xa7, + 0x93, 0x17, 0x0e, 0x09, 0xdd, 0x8a, 0xb7, 0x18, 0xc7, 0x20, 0xb4, 0x45, 0xa4, 0xfc, 0x9a, 0x1e, + 0x6d, 0x66, 0x76, 0x2c, 0xf4, 0x49, 0x19, 0x35, 0x25, 0xc6, 0x05, 0xf3, 0xe9, 0xdc, 0x3f, 0x47, + 0xff, 0xe7, 0x02, 0x4a, 0x3d, 0x2d, 0xa3, 0x87, 0x08, 0xfa, 0x4d, 0xcc, 0xdf, 0x05, 0x1d, 0x56, + 0x5b, 0x47, 0x19, 0xe4, 0xc7, 0x10, 0x7a, 0x87, 0x91, 0x0f, 0x84, 0x2d, 0x71, 0xb0, 0x0c, 0x91, + 0x4b, 0x46, 0x23, 0xe3, 0x4e, 0x85, 0x43, 0xaf, 0xf9, 0xb5, 0x17, 0x63, 0x56, 0x71, 0x17, 0xe5, + 0x40, 0xf7, 0xb2, 0x44, 0x57, 0x8d, 0xe3, 0x51, 0xfa, 0x34, 0xf4, 0x38, 0xd9, 0x9c, 0x6e, 0x41, + 0xc8, 0x72, 0x0b, 0xa6, 0x98, 0x5b, 0x10, 0xe0, 0x82, 0xa6, 0x73, 0xf0, 0xcb, 0x3e, 0x38, 0xe2, + 0xc5, 0x84, 0x57, 0xf6, 0xe5, 0x22, 0xdc, 0xde, 0x52, 0x76, 0xef, 0x22, 0xa4, 0xa1, 0x5b, 0x56, + 0x2c, 0xe0, 0x94, 0x29, 0x2a, 0x05, 0x29, 0x6b, 0x4d, 0xd9, 0x5a, 0xbb, 0x6b, 0x97, 0xac, 0x98, + 0x88, 0xe8, 0x16, 0x23, 0xc7, 0xdb, 0xd0, 0x2f, 0xd2, 0xb5, 0x4b, 0xdc, 0x72, 0x24, 0xa2, 0x99, + 0x7b, 0xed, 0xac, 0x47, 0x92, 0x37, 0x6c, 0x33, 0x3a, 0xcf, 0xd8, 0x9d, 0x52, 0x25, 0xa2, 0x39, + 0x6c, 0xf6, 0x21, 0x8a, 0xc7, 0x7c, 0x48, 0xf0, 0xbf, 0x41, 0x70, 0xdc, 0xd4, 0x6d, 0xa2, 0xcf, + 0x9c, 0x2d, 0xb5, 0x52, 0x8b, 0x38, 0xab, 0x45, 0x7a, 0x77, 0xb5, 0x30, 0x31, 0x66, 0xee, 0x4d, + 0xf3, 0xb1, 0x6f, 0x75, 0x62, 0x62, 0x5d, 0x5a, 0x7c, 0x11, 0x38, 0x59, 0xc9, 0xac, 0x2a, 0xea, + 0x96, 0xa8, 0xe6, 0x32, 0x45, 0x55, 0xb9, 0xb7, 0x5d, 0xd7, 0x27, 0x47, 0x42, 0xa7, 0xac, 0xbc, + 0x69, 0x90, 0xdf, 0xa2, 0xd4, 0xf8, 0x17, 0x08, 0x8e, 0x9a, 0x2d, 0x73, 0x89, 0xa9, 0xb4, 0xca, + 0xc0, 0x40, 0x17, 0x76, 0xd7, 0x2a, 0xa7, 0x6c, 0x67, 0x8b, 0x16, 0x90, 0x30, 0x20, 0xd6, 0xa4, + 0xc0, 0xd7, 0xa1, 0xdf, 0xad, 0x5d, 0x2c, 0x14, 0x94, 0x2d, 0xfa, 0xb7, 0xee, 0x36, 0x88, 0x84, + 0xc8, 0xaa, 0x43, 0xdc, 0x3c, 0x65, 0x9a, 0x2f, 0x14, 0xf0, 0x4f, 0x7c, 0x3d, 0x93, 0x30, 0x33, + 0x41, 0xd7, 0x3f, 0x29, 0xa3, 0xa3, 0x0e, 0xbf, 0x63, 0xa3, 0x54, 0xd0, 0xa5, 0xf3, 0xb2, 0x94, + 0xad, 0xf2, 0x51, 0x4e, 0xa8, 0xc7, 0xa3, 0x17, 0x85, 0xfa, 0xb4, 0x3e, 0xde, 0xca, 0x32, 0xf4, + 0xcb, 0x4a, 0x46, 0x92, 0x35, 0x29, 0x47, 0x28, 0xf0, 0xd5, 0xa5, 0xac, 0xb9, 0x7b, 0x44, 0xdb, + 0x6b, 0xb7, 0x25, 0x1d, 0xa4, 0x3e, 0xc1, 0x42, 0x93, 0x10, 0x91, 0x95, 0x45, 0xc6, 0xbb, 0xcc, + 0x58, 0x05, 0x63, 0xdf, 0xc9, 0x43, 0xc4, 0x57, 0xa2, 0x81, 0xd5, 0xce, 0xfb, 0xae, 0x54, 0x6a, + 0x38, 0x9c, 0x42, 0xde, 0x92, 0x34, 0x73, 0x27, 0x30, 0x55, 0x61, 0xa9, 0x5a, 0xd1, 0x1d, 0x88, + 0xca, 0x4a, 0x46, 0x29, 0xe9, 0x3e, 0xca, 0xba, 0x76, 0xac, 0x7e, 0x40, 0xe8, 0x95, 0x95, 0x9b, + 0x06, 0xb3, 0x4b, 0xac, 0x04, 0xbd, 0xfe, 0x32, 0xb9, 0xbd, 0x37, 0x20, 0x20, 0xf4, 0x28, 0x3e, + 0xaa, 0x0c, 0x53, 0x93, 0x2f, 0x28, 0x2b, 0x62, 0xc1, 0xb2, 0x14, 0x26, 0x80, 0xf3, 0x9f, 0x45, + 0x41, 0x6a, 0x6a, 0xae, 0x32, 0x7a, 0x73, 0xdd, 0xe3, 0x55, 0xe8, 0x71, 0x0b, 0xc8, 0x14, 0x24, + 0x4d, 0x8f, 0xf6, 0xd4, 0xf1, 0x99, 0x5d, 0x02, 0x2a, 0xfb, 0x8d, 0x55, 0xe7, 0x85, 0xa0, 0xd0, + 0x9d, 0x77, 0x92, 0xd0, 0x02, 0x7c, 0x0d, 0x7a, 0x64, 0x25, 0x93, 0xcb, 0x66, 0xb2, 0x85, 0x92, + 0xa6, 0x13, 0xd5, 0x08, 0x2b, 0x45, 0xfb, 0x76, 0xec, 0xe8, 0x66, 0x81, 0x93, 0x95, 0xcb, 0xd9, + 0x4b, 0x06, 0x1b, 0x8b, 0x51, 0xe1, 0x9f, 0xc0, 0xa0, 0x57, 0x92, 0x3d, 0x90, 0x9b, 0x72, 0xb4, + 0xbf, 0x4e, 0x44, 0xf0, 0xe6, 0xca, 0x8f, 0x48, 0x56, 0x17, 0xc8, 0x2a, 0xeb, 0xde, 0xfe, 0x0f, + 0x1f, 0x70, 0x5e, 0x49, 0xa6, 0xd6, 0xfe, 0x9c, 0x4b, 0xa7, 0x39, 0xd4, 0x77, 0x65, 0xbc, 0x0d, + 0x03, 0x55, 0xca, 0xcd, 0x19, 0xbb, 0x29, 0x47, 0xa3, 0x07, 0xa1, 0xbb, 0xcf, 0xad, 0xdb, 0x58, + 0x25, 0x77, 0x65, 0xba, 0xe0, 0xb4, 0x8d, 0x4c, 0xc5, 0xeb, 0xcc, 0x14, 0x4b, 0x2b, 0x05, 0x29, + 0x9b, 0x91, 0x8a, 0xd1, 0xc1, 0x1d, 0x3b, 0x32, 0x24, 0x44, 0xb4, 0x8d, 0xca, 0x70, 0xdd, 0x62, + 0xac, 0x8b, 0x45, 0x7c, 0x1d, 0x22, 0x1e, 0xa1, 0x9b, 0x3a, 0x95, 0x78, 0x64, 0x17, 0x12, 0xbb, + 0x5d, 0x12, 0x37, 0xf5, 0xc5, 0x22, 0x1e, 0x83, 0x16, 0x8a, 0xc9, 0xd7, 0x4a, 0x2b, 0xd1, 0x58, + 0x9d, 0xa9, 0xd8, 0x22, 0x84, 0x64, 0x45, 0x5f, 0x28, 0xad, 0xe0, 0x9b, 0x10, 0xa0, 0xc4, 0xc7, + 0x18, 0xf1, 0xe4, 0xae, 0x10, 0x90, 0x37, 0xf8, 0x6e, 0x20, 0xbe, 0x85, 0x16, 0x81, 0x4a, 0xfa, + 0x0e, 0x06, 0x51, 0xde, 0x7b, 0x52, 0x46, 0xef, 0x3a, 0x82, 0x28, 0x33, 0x3c, 0xf5, 0x36, 0x7a, + 0x19, 0x9e, 0x32, 0xc9, 0xe2, 0xd6, 0x8e, 0x8a, 0x03, 0x53, 0xfc, 0x34, 0x9c, 0xf3, 0xf1, 0x45, + 0xfa, 0x13, 0xd3, 0x7c, 0x32, 0xc1, 0x27, 0xa7, 0xf8, 0x44, 0x82, 0x4f, 0x4c, 0xf0, 0xc9, 0x59, + 0x9e, 0x05, 0x5d, 0xd2, 0x3c, 0xf4, 0xba, 0xf1, 0x8c, 0x85, 0xc3, 0x7a, 0x1e, 0x97, 0x51, 0xd3, + 0xb3, 0x32, 0x0a, 0x51, 0x2f, 0x25, 0xc9, 0xa7, 0x92, 0x7c, 0x62, 0x3c, 0x7d, 0x16, 0x22, 0xee, + 0x1d, 0xce, 0x24, 0xc6, 0x8f, 0xcb, 0x88, 0x8e, 0x53, 0xcb, 0xf3, 0x32, 0x0a, 0x4d, 0xf0, 0xc9, + 0x71, 0x7e, 0x36, 0x9d, 0x82, 0x01, 0x1f, 0x63, 0xef, 0xf4, 0x6e, 0xda, 0xff, 0x58, 0x46, 0xe8, + 0x59, 0x19, 0xb5, 0x31, 0x97, 0x25, 0xc9, 0x27, 0x52, 0xe9, 0x09, 0x18, 0xf4, 0xb3, 0xb0, 0x4e, + 0xae, 0x2e, 0x93, 0xab, 0x93, 0x71, 0x4d, 0xf2, 0x89, 0xa9, 0xf4, 0x28, 0xf4, 0x7a, 0x0c, 0x9d, + 0x83, 0x1e, 0x9b, 0xf4, 0xdd, 0x8c, 0x7e, 0x86, 0xfa, 0x63, 0x29, 0xe8, 0xaf, 0x5a, 0xe6, 0x26, + 0x47, 0xf4, 0x71, 0x19, 0xf5, 0x99, 0x1c, 0xbd, 0xcf, 0xcb, 0x28, 0x9c, 0x4c, 0xf2, 0xc9, 0x14, + 0x9f, 0x9c, 0x48, 0x8f, 0x41, 0x1f, 0xf3, 0xb2, 0xe9, 0x86, 0xe9, 0xe6, 0xa1, 0x5a, 0x06, 0x4d, + 0x9e, 0x01, 0xe6, 0x52, 0x4d, 0xf3, 0xc9, 0x19, 0xea, 0xce, 0xad, 0x95, 0x56, 0x9c, 0x44, 0x31, + 0x93, 0xe8, 0x28, 0x25, 0x4a, 0x8d, 0xf3, 0x29, 0xea, 0x77, 0x85, 0xb8, 0x96, 0xa5, 0x60, 0xb8, + 0x85, 0x0b, 0x2f, 0x05, 0xc3, 0x6d, 0x5c, 0xfb, 0x52, 0x30, 0xdc, 0xc9, 0x75, 0xd9, 0x3e, 0x58, + 0x2f, 0xd7, 0xb7, 0x14, 0x0c, 0x0f, 0x70, 0x83, 0x4b, 0xc1, 0xf0, 0x61, 0x6e, 0x60, 0x29, 0x18, + 0x3e, 0xca, 0xc5, 0x86, 0xfe, 0xdc, 0x0b, 0xb1, 0x5a, 0x38, 0x78, 0x2f, 0x11, 0x52, 0x2f, 0x0a, + 0x76, 0x45, 0x48, 0x0f, 0x02, 0xf5, 0x6a, 0xaf, 0x0e, 0xf5, 0xd6, 0xc6, 0xbb, 0xff, 0xf2, 0xab, + 0xc5, 0xbb, 0x0d, 0xa4, 0xdb, 0x40, 0xba, 0x0d, 0xa4, 0xdb, 0x40, 0xba, 0x0d, 0xa4, 0xdb, 0x40, + 0xba, 0x0d, 0xa4, 0xdb, 0x40, 0xba, 0x0d, 0xa4, 0x7b, 0x00, 0x48, 0xf7, 0xff, 0xf6, 0xc0, 0x51, + 0x1b, 0xa6, 0xde, 0x55, 0x0a, 0xba, 0xa6, 0x8b, 0xd9, 0x75, 0xd3, 0xae, 0x30, 0xa0, 0x5b, 0xf2, + 0x05, 0x0f, 0xc6, 0xb9, 0xc3, 0xd5, 0x4f, 0xca, 0x68, 0xc0, 0x73, 0x3c, 0xcf, 0x04, 0x9c, 0xcf, + 0x2a, 0x1b, 0x2b, 0x8a, 0x85, 0x1c, 0xe2, 0x6a, 0x2c, 0x7a, 0x51, 0xa8, 0x43, 0xe8, 0x03, 0x1b, + 0x9c, 0x91, 0xe6, 0xa6, 0x03, 0x4f, 0x46, 0xf1, 0xc5, 0xdc, 0xc1, 0x03, 0xc3, 0xdc, 0xcd, 0x5f, + 0x33, 0xe6, 0x3e, 0xf9, 0x35, 0x63, 0xee, 0x96, 0x03, 0xc6, 0xdc, 0xe1, 0xaf, 0x17, 0x73, 0x77, + 0xed, 0x01, 0x73, 0xd7, 0x03, 0x8e, 0xb0, 0x0b, 0xdc, 0xfb, 0xb2, 0xc0, 0xb1, 0x6d, 0x3f, 0xc8, + 0x77, 0xf7, 0xc0, 0xb1, 0xa3, 0xee, 0xa9, 0xf0, 0x6e, 0x81, 0x63, 0xe7, 0x3e, 0x80, 0x63, 0xe0, + 0x25, 0x80, 0x63, 0x6c, 0xc7, 0x8e, 0x0e, 0xfa, 0x00, 0xc7, 0x3c, 0x54, 0x41, 0x2e, 0x13, 0x78, + 0xec, 0x0b, 0xb1, 0x05, 0x85, 0x4e, 0x37, 0x62, 0xc3, 0x69, 0xe8, 0x94, 0x95, 0xcc, 0xfa, 0x8c, + 0x66, 0x51, 0xef, 0x02, 0xa0, 0x35, 0x0b, 0xed, 0xb2, 0x72, 0x6d, 0x46, 0x33, 0x05, 0xe1, 0x77, + 0xa1, 0xcd, 0x29, 0xe0, 0xc8, 0xae, 0xeb, 0x89, 0x3f, 0x7c, 0xe0, 0xe4, 0x34, 0x85, 0xc3, 0x7a, + 0x45, 0x74, 0x1d, 0x20, 0x39, 0x74, 0xe0, 0x40, 0xf2, 0xc4, 0xde, 0x80, 0xe4, 0x1b, 0xd0, 0x95, + 0x23, 0xab, 0x62, 0xa9, 0xa0, 0x67, 0xcc, 0x7c, 0xe4, 0x68, 0x77, 0x5d, 0x40, 0xd9, 0x69, 0x92, + 0x2f, 0x1b, 0xd4, 0xf8, 0x5d, 0xc0, 0x56, 0x22, 0x73, 0xb6, 0x20, 0x6a, 0x9a, 0x31, 0x41, 0x0d, + 0xff, 0x68, 0xc4, 0x7f, 0x35, 0x19, 0xe4, 0x97, 0x28, 0xb5, 0x3d, 0x2b, 0x5b, 0x04, 0x4e, 0xf3, + 0x3c, 0xaf, 0x83, 0xf0, 0x4e, 0xbd, 0x1a, 0x84, 0xa7, 0x3d, 0x29, 0x23, 0xc5, 0x81, 0xf0, 0x12, + 0x7c, 0xb2, 0x0e, 0xc2, 0x4b, 0xf1, 0x53, 0x30, 0x08, 0xbd, 0x66, 0x73, 0xe2, 0x46, 0x22, 0x58, + 0xc9, 0x48, 0x42, 0xc1, 0x4d, 0x89, 0x29, 0x38, 0xe9, 0x03, 0xff, 0xb8, 0x59, 0x3e, 0x91, 0xa4, + 0xa0, 0x2f, 0x95, 0xa2, 0x18, 0x30, 0x35, 0x9d, 0x3e, 0x57, 0x0b, 0xf7, 0x59, 0x50, 0x2e, 0x60, + 0x40, 0xb9, 0xd4, 0x14, 0x3f, 0x59, 0x17, 0xf6, 0xb5, 0x98, 0x18, 0x31, 0x34, 0xcd, 0x27, 0x26, + 0xf9, 0x99, 0xdd, 0x20, 0x38, 0x30, 0x61, 0x50, 0x2b, 0x43, 0x64, 0xe3, 0x7c, 0x22, 0x51, 0x1f, + 0xc1, 0x75, 0x98, 0xf4, 0x95, 0x9c, 0x8f, 0xf4, 0x78, 0x6d, 0x04, 0xe7, 0x0f, 0xb4, 0xd2, 0xe7, + 0x00, 0x3b, 0xd6, 0xcd, 0x0e, 0xd0, 0xad, 0x3e, 0xd6, 0x1b, 0x32, 0x19, 0x8e, 0x33, 0xe9, 0x13, + 0x7c, 0x6a, 0x32, 0x7d, 0x1e, 0x22, 0xee, 0xf9, 0xe8, 0x20, 0xef, 0x36, 0xc9, 0x39, 0x56, 0xfd, + 0x69, 0x3e, 0x31, 0x63, 0x9f, 0xde, 0x1b, 0xd8, 0xaf, 0x95, 0x03, 0x3b, 0xc7, 0xe4, 0x28, 0x17, + 0xb3, 0xf1, 0xde, 0x71, 0x6e, 0x68, 0x29, 0x18, 0xe6, 0xb8, 0xee, 0xa5, 0x60, 0x38, 0xce, 0x1d, + 0x1f, 0xfa, 0xb4, 0x07, 0x8e, 0xd5, 0x44, 0x7d, 0x66, 0x80, 0xf3, 0x6b, 0xc2, 0x7d, 0x56, 0x5c, + 0xb5, 0x69, 0xdf, 0x99, 0xa7, 0x0d, 0x8c, 0xd7, 0xc0, 0x78, 0x0d, 0x8c, 0xd7, 0xc0, 0x78, 0x5f, + 0x2f, 0xc6, 0xdb, 0x17, 0x88, 0x6a, 0x3e, 0x70, 0x10, 0xd5, 0xec, 0x07, 0xa2, 0xf6, 0x82, 0x43, + 0x43, 0xaf, 0x12, 0x87, 0x86, 0x5c, 0x38, 0xb4, 0x81, 0xf1, 0x1a, 0x18, 0xef, 0x2b, 0xc6, 0x78, + 0x2f, 0x0d, 0xdb, 0x5e, 0x0a, 0x14, 0x1e, 0x30, 0xc6, 0x33, 0xd0, 0x9d, 0x81, 0xf4, 0x2a, 0x18, + 0xef, 0xa2, 0x23, 0xb0, 0x67, 0xbf, 0xde, 0x23, 0x90, 0x62, 0x41, 0xcc, 0xb2, 0xd8, 0xd8, 0xdc, + 0xe1, 0xa7, 0x17, 0x6a, 0xbc, 0x09, 0x66, 0xbe, 0x2a, 0x72, 0xd9, 0x01, 0x12, 0x1d, 0x2f, 0x08, + 0x39, 0x65, 0x0c, 0x3e, 0xbd, 0x50, 0xf3, 0x25, 0x22, 0x53, 0xca, 0x6f, 0x11, 0x60, 0x56, 0x5a, + 0xbc, 0xa5, 0x92, 0x55, 0xe9, 0x9e, 0xb1, 0x51, 0xef, 0xf9, 0x15, 0xc4, 0x25, 0x08, 0x17, 0x4d, + 0x39, 0x2c, 0x2e, 0xd8, 0x9a, 0x1e, 0xa5, 0x50, 0x13, 0x1e, 0xa1, 0x96, 0xa1, 0x66, 0x35, 0xf0, + 0x37, 0x84, 0xe8, 0xcf, 0xd0, 0x23, 0x14, 0xe0, 0xde, 0x77, 0xbc, 0x70, 0xe2, 0x78, 0x19, 0xd4, + 0xe6, 0x9f, 0x0b, 0x3d, 0x2d, 0xa3, 0x26, 0x0e, 0x0d, 0x3d, 0xea, 0x85, 0x13, 0xb5, 0x8e, 0xfb, + 0x1d, 0xad, 0x6d, 0x9c, 0xd4, 0x37, 0x4e, 0xea, 0x5f, 0xf1, 0x49, 0x7d, 0xe3, 0xb0, 0xbc, 0x71, + 0x58, 0xde, 0x38, 0x2c, 0x6f, 0x1c, 0x96, 0x37, 0x0e, 0xcb, 0x5d, 0x94, 0x73, 0xeb, 0x4f, 0x2f, + 0xd4, 0x7d, 0x31, 0xe5, 0x49, 0x19, 0x2d, 0xec, 0x70, 0x98, 0x3d, 0xec, 0x83, 0x74, 0x23, 0x7e, + 0x87, 0xd9, 0xe9, 0x2b, 0xb5, 0xd0, 0x2e, 0xef, 0x73, 0x92, 0xfd, 0xf0, 0x05, 0xf2, 0xa7, 0x4e, + 0xa7, 0x6b, 0xe0, 0xe0, 0xb3, 0xd5, 0x47, 0xdc, 0x0f, 0x5f, 0x20, 0x5f, 0xda, 0xf4, 0xdb, 0x75, + 0x8f, 0xbe, 0x53, 0xbe, 0x47, 0xdf, 0x0f, 0x5f, 0xa0, 0x3a, 0x4c, 0xe9, 0xe5, 0xfa, 0x90, 0x7b, + 0xc2, 0xf7, 0x60, 0xfc, 0xe1, 0x0b, 0x54, 0x8f, 0x2b, 0x7d, 0xb5, 0x16, 0x22, 0x1f, 0xf5, 0x3d, + 0x37, 0xa7, 0x9d, 0xe6, 0x4b, 0x9f, 0xbe, 0x51, 0x1b, 0xaa, 0xa7, 0x6a, 0x1d, 0xa8, 0x3f, 0x7c, + 0x81, 0x6a, 0x31, 0xa5, 0x17, 0x6b, 0x02, 0xf9, 0x31, 0x5f, 0x6c, 0xfe, 0xf0, 0x05, 0xaa, 0xc1, + 0x90, 0x4e, 0xb8, 0x4e, 0xe1, 0x4f, 0xf8, 0x3a, 0x0e, 0x0f, 0x5f, 0x20, 0x07, 0xd1, 0xde, 0xce, + 0xe4, 0x97, 0x82, 0xe1, 0x51, 0x6e, 0x6c, 0xe8, 0x8b, 0x5e, 0x38, 0x55, 0x3b, 0x07, 0xd5, 0x09, + 0x4b, 0x1b, 0xa9, 0xa8, 0x0d, 0x80, 0xdb, 0x00, 0xb8, 0x0d, 0x80, 0xdb, 0x00, 0xb8, 0x0d, 0x80, + 0xdb, 0x00, 0xb8, 0xdf, 0x4e, 0x80, 0xbb, 0xfd, 0xf4, 0xc2, 0x0e, 0x6f, 0x9c, 0x3c, 0x29, 0xa3, + 0xdb, 0x00, 0x56, 0xdc, 0x17, 0x25, 0x1a, 0x70, 0xf7, 0xef, 0x00, 0xee, 0x5e, 0xab, 0x0d, 0x77, + 0xc7, 0x3d, 0x70, 0xb7, 0x99, 0xc1, 0xdd, 0xbf, 0x4f, 0xac, 0xfb, 0xfb, 0x2e, 0x38, 0x59, 0x33, + 0x1f, 0x61, 0xc7, 0x08, 0x6c, 0xe3, 0x4c, 0xbf, 0x71, 0xa6, 0xdf, 0x38, 0xd3, 0xff, 0x7b, 0x3a, + 0xd3, 0x3f, 0x7a, 0x60, 0x67, 0xfa, 0xb1, 0xef, 0xe8, 0x99, 0xfe, 0xdc, 0xca, 0xd3, 0x0b, 0xf5, + 0x13, 0xfb, 0x9f, 0x94, 0xd1, 0x85, 0x1d, 0x4e, 0x8e, 0x63, 0x3e, 0x18, 0x02, 0x8c, 0xc3, 0xe1, + 0x19, 0x3e, 0x95, 0x4a, 0x5f, 0xae, 0x85, 0x1c, 0xce, 0x55, 0x1f, 0x0b, 0xef, 0x0d, 0x38, 0x78, + 0xce, 0x8b, 0x6b, 0x02, 0x87, 0x5d, 0xec, 0xf2, 0xd5, 0xe7, 0xc8, 0xfb, 0xda, 0xe5, 0xab, 0x8f, + 0x99, 0xf7, 0xbc, 0xcb, 0x1f, 0x35, 0x45, 0x1d, 0x61, 0x3b, 0xf3, 0x2c, 0x9f, 0x1a, 0xdf, 0xfb, + 0x2e, 0x5f, 0x7d, 0x34, 0x5d, 0x7b, 0x97, 0x5f, 0x0a, 0x86, 0x11, 0xd7, 0x64, 0x7c, 0xfa, 0xa7, + 0xce, 0x21, 0xf3, 0x11, 0xee, 0xa8, 0x7d, 0xc8, 0x1c, 0xe7, 0x8e, 0x2f, 0x05, 0xc3, 0xa7, 0xb8, + 0xd3, 0x43, 0xff, 0xa9, 0x0b, 0x4e, 0xd7, 0x49, 0x21, 0x6c, 0x6c, 0xda, 0x8d, 0x4d, 0xbb, 0xb1, + 0x69, 0x37, 0x12, 0xf1, 0x1a, 0x89, 0x78, 0x2f, 0xb3, 0x69, 0xe7, 0x9e, 0x5e, 0xd8, 0x29, 0x2f, + 0x7b, 0x7f, 0xdb, 0xf6, 0x6c, 0x63, 0xdb, 0x3e, 0xb0, 0x6d, 0xdb, 0xd7, 0x23, 0xfe, 0xe6, 0x6c, + 0xdb, 0xce, 0xdc, 0xb0, 0xca, 0xb6, 0xfd, 0xbb, 0x20, 0xf4, 0xda, 0x33, 0x8c, 0xce, 0xa1, 0x45, + 0x79, 0x95, 0x7d, 0xef, 0x15, 0xbf, 0x09, 0x60, 0xaf, 0x08, 0xe3, 0xe3, 0x7e, 0xad, 0xe9, 0x33, + 0x7f, 0xf8, 0xe2, 0x71, 0xa0, 0xf5, 0x11, 0x0a, 0x0d, 0x05, 0xd5, 0xa6, 0x22, 0xb2, 0x12, 0xad, + 0xce, 0x36, 0x8f, 0xf3, 0x09, 0x3e, 0xe5, 0xc8, 0xa9, 0x6a, 0x2d, 0x9a, 0x2b, 0x42, 0xc3, 0x0b, + 0xd0, 0x56, 0x54, 0xa5, 0x4d, 0x51, 0x27, 0x4c, 0x50, 0xd3, 0xcb, 0x09, 0x02, 0x93, 0x97, 0x4a, + 0xda, 0x86, 0x3e, 0xc7, 0xb7, 0x35, 0x8d, 0xac, 0xad, 0x8c, 0x24, 0xaf, 0x2a, 0xd1, 0x00, 0x7b, + 0x21, 0x74, 0x7a, 0xd7, 0x5f, 0x88, 0x77, 0xe7, 0x9e, 0xa5, 0xdb, 0xec, 0x14, 0xb1, 0xbf, 0x06, + 0x84, 0x1e, 0xfb, 0x6e, 0x00, 0x83, 0x86, 0x76, 0x08, 0xce, 0x02, 0x76, 0x7f, 0x63, 0x9f, 0xa9, + 0x0d, 0xbe, 0x44, 0xbc, 0xd1, 0xf9, 0xa5, 0x49, 0x2a, 0x52, 0xe0, 0x88, 0xe7, 0x09, 0xbe, 0x0b, + 0xad, 0xb2, 0x92, 0x33, 0x65, 0x1b, 0x1f, 0xbd, 0x9f, 0xdd, 0x95, 0xec, 0x1b, 0x4a, 0x8e, 0x2c, + 0xca, 0x9a, 0x4e, 0x97, 0xf8, 0x0d, 0x71, 0x83, 0x18, 0xdf, 0xd4, 0x94, 0xd9, 0xd3, 0x55, 0x05, + 0x5f, 0x31, 0x53, 0xeb, 0x8c, 0xcf, 0x28, 0x27, 0x76, 0xd7, 0x4b, 0x37, 0xae, 0xdc, 0xb6, 0xa6, + 0x82, 0x91, 0x69, 0x37, 0xf4, 0x16, 0xb4, 0x3b, 0x9f, 0xe2, 0x41, 0x68, 0xb5, 0xbf, 0x5c, 0x6f, + 0x7e, 0x29, 0x3f, 0x4c, 0x1f, 0xd0, 0x1a, 0xe0, 0x63, 0xd0, 0x66, 0x7f, 0xf5, 0x5e, 0xca, 0x99, + 0x1f, 0xcd, 0x07, 0xeb, 0xd1, 0x62, 0x6e, 0x68, 0x15, 0x38, 0x6f, 0x97, 0xe0, 0x61, 0xe0, 0x5c, + 0xdf, 0x2c, 0xb6, 0x27, 0x9e, 0xd0, 0xe9, 0xf8, 0xf8, 0x30, 0x9d, 0x0a, 0x5e, 0x4a, 0x51, 0x93, + 0x99, 0x8e, 0x0e, 0x17, 0xe5, 0xbc, 0x26, 0x0f, 0x6d, 0x41, 0xc4, 0xaf, 0x7b, 0xf0, 0x2c, 0x60, + 0xb3, 0xb3, 0x8d, 0x02, 0x47, 0x33, 0xcc, 0xf9, 0xa0, 0x06, 0x39, 0x14, 0xbd, 0x48, 0xb7, 0x28, + 0x37, 0x3b, 0x3e, 0x09, 0x2d, 0x06, 0xab, 0x71, 0x45, 0x84, 0x87, 0x3e, 0xc4, 0xe8, 0x73, 0x43, + 0xff, 0x79, 0x0c, 0x3a, 0x8d, 0xed, 0x74, 0xb9, 0x48, 0xb2, 0x66, 0x8e, 0x63, 0xa7, 0xfb, 0x2a, + 0x00, 0x53, 0x5f, 0x97, 0xf5, 0x82, 0x8c, 0x25, 0xa3, 0xc3, 0x22, 0x33, 0xb6, 0xaa, 0xff, 0x0e, + 0xd0, 0x6e, 0x0c, 0x90, 0x4a, 0xf2, 0x92, 0x22, 0x9b, 0x9f, 0x4b, 0xff, 0x0f, 0x40, 0xf9, 0x1e, + 0x7d, 0x84, 0xfe, 0x35, 0xc0, 0x14, 0x70, 0x9a, 0x52, 0xd2, 0xd7, 0xc4, 0x55, 0x55, 0xca, 0x8a, + 0xb2, 0xa2, 0xea, 0x6b, 0x78, 0x68, 0x78, 0x9e, 0xfd, 0x1a, 0x89, 0x2f, 0xd3, 0xa2, 0xb8, 0xf1, + 0x2b, 0x7e, 0x83, 0x16, 0xc6, 0x05, 0x26, 0x09, 0x26, 0xa1, 0x43, 0x2c, 0x69, 0xba, 0x2a, 0x16, + 0x24, 0x91, 0x88, 0x9a, 0x8e, 0x4f, 0x0e, 0xcf, 0x6b, 0x92, 0x18, 0xbf, 0x25, 0x66, 0xa5, 0x55, + 0x29, 0x3b, 0x12, 0x9f, 0xb7, 0x4a, 0xe3, 0x57, 0x44, 0x4d, 0xb7, 0xd8, 0x52, 0xd0, 0x9e, 0x25, + 0x32, 0x2b, 0x90, 0x73, 0x92, 0x88, 0x4f, 0x78, 0xb8, 0x2e, 0x19, 0x85, 0xf1, 0x45, 0x5a, 0x6a, + 0x31, 0x9d, 0x83, 0x30, 0x55, 0x21, 0x6a, 0x92, 0x88, 0x8f, 0x79, 0x18, 0x98, 0x70, 0xf6, 0xc8, + 0x24, 0x3e, 0x0f, 0xad, 0x3f, 0x12, 0x8b, 0xa2, 0xcc, 0x2a, 0x15, 0xf7, 0x50, 0x2f, 0xd1, 0x12, + 0x6f, 0x85, 0xd6, 0x15, 0x95, 0x88, 0x66, 0xad, 0xaa, 0x2a, 0x74, 0x8d, 0x16, 0xda, 0xd5, 0xaa, + 0x34, 0x9e, 0x75, 0x9a, 0x5d, 0x2b, 0x6f, 0xe3, 0x97, 0xad, 0x52, 0x57, 0xd5, 0xc6, 0xa0, 0x23, + 0x2b, 0xca, 0x62, 0xce, 0x56, 0x16, 0x1b, 0xbe, 0xc4, 0x7e, 0x8f, 0xc4, 0x8d, 0x7f, 0xbd, 0x7a, + 0xc6, 0xa0, 0x63, 0x55, 0xa5, 0xd3, 0xa7, 0xc2, 0x70, 0xa5, 0xa4, 0x2a, 0x45, 0x32, 0x12, 0x7f, + 0x93, 0x3d, 0xf7, 0x32, 0xcc, 0x01, 0xce, 0x13, 0x75, 0x43, 0x94, 0xb7, 0xb7, 0x88, 0xa6, 0x5b, + 0x5c, 0x27, 0x6d, 0xae, 0xab, 0x46, 0x61, 0xfc, 0x1d, 0xa2, 0xe9, 0x5e, 0xde, 0x11, 0x00, 0x49, + 0x17, 0x0b, 0xdb, 0xc6, 0x1c, 0x18, 0xb4, 0x79, 0x16, 0xe9, 0x43, 0xf7, 0xe0, 0x9f, 0x83, 0x36, + 0x46, 0x45, 0x18, 0x09, 0x3e, 0x62, 0xd3, 0x1a, 0x54, 0xc6, 0x2f, 0x87, 0x5c, 0x99, 0xee, 0xd9, + 0xdb, 0x6c, 0x44, 0x06, 0x9d, 0xb4, 0x5b, 0xe2, 0xb6, 0x6b, 0x30, 0xc6, 0xa0, 0xa3, 0xa8, 0x14, + 0x44, 0x39, 0x57, 0xdd, 0xde, 0x5b, 0xec, 0xb9, 0x4f, 0x07, 0x69, 0x5b, 0x24, 0x47, 0xe4, 0x6a, + 0x86, 0x65, 0xf6, 0xbc, 0x7a, 0xe4, 0x38, 0x6d, 0x4b, 0xd2, 0xef, 0x13, 0x95, 0x8a, 0x33, 0x9a, + 0x7a, 0xdc, 0xc1, 0x63, 0x17, 0xb9, 0x1b, 0x7c, 0x02, 0x5a, 0x4a, 0xeb, 0x6c, 0xc8, 0x71, 0xd4, + 0xa6, 0xbe, 0x73, 0xcd, 0x5c, 0x1f, 0x95, 0x86, 0xd2, 0x5e, 0x37, 0x3b, 0xa5, 0xd2, 0x50, 0xd6, + 0xd9, 0xee, 0x3e, 0x99, 0x80, 0x0e, 0x49, 0x53, 0x45, 0x52, 0xa8, 0x4c, 0xbb, 0xeb, 0x52, 0x2e, + 0x57, 0x20, 0xac, 0x3b, 0x46, 0xe2, 0x8b, 0xac, 0xd0, 0x5b, 0xf9, 0x24, 0xb4, 0xff, 0x58, 0xd4, + 0x45, 0xd5, 0x62, 0x1a, 0x72, 0x33, 0xbd, 0x4d, 0xcb, 0xbc, 0x3c, 0x67, 0x21, 0x5c, 0x12, 0x89, + 0xd1, 0xd0, 0x98, 0x9b, 0xfe, 0xce, 0xfc, 0x15, 0x77, 0x2b, 0x93, 0xd0, 0xb6, 0xa2, 0x8a, 0xf7, + 0xa5, 0x82, 0xd1, 0xd2, 0x13, 0xc3, 0xe6, 0xf2, 0xdf, 0x20, 0x86, 0x35, 0x48, 0xb3, 0x42, 0x77, + 0xa3, 0x8f, 0x40, 0xab, 0x59, 0x9d, 0x92, 0x86, 0xbb, 0x86, 0xef, 0x2c, 0x57, 0xd6, 0xf0, 0x9d, + 0x65, 0x38, 0x0a, 0x21, 0x3a, 0xea, 0x25, 0x0d, 0xf7, 0xb0, 0x22, 0x36, 0xd8, 0x77, 0x96, 0x2d, + 0xe6, 0x38, 0xb4, 0x18, 0xc5, 0x49, 0xdc, 0xeb, 0x2a, 0x4f, 0x5a, 0x14, 0xa3, 0xd0, 0xc9, 0x2a, + 0x53, 0xd1, 0x71, 0x84, 0x11, 0x1a, 0x75, 0xa8, 0x68, 0x72, 0x48, 0xa4, 0x63, 0x50, 0x91, 0xc8, + 0x3a, 0xdf, 0x29, 0xd1, 0xa6, 0x48, 0x79, 0x28, 0x52, 0x26, 0x05, 0xb5, 0xa7, 0x41, 0xb5, 0x29, + 0x7a, 0x71, 0xe1, 0x90, 0xd0, 0xc6, 0xac, 0xa7, 0xf1, 0x1c, 0xff, 0xb7, 0x20, 0x70, 0x62, 0x41, + 0x27, 0xaa, 0x2c, 0xea, 0xb6, 0x45, 0x3d, 0xc6, 0x2c, 0xea, 0xbf, 0x0b, 0x9a, 0x16, 0xf5, 0xd7, + 0x41, 0x78, 0x0d, 0x38, 0xdb, 0x32, 0x5a, 0x23, 0x75, 0xa6, 0xa6, 0x71, 0xf4, 0x0c, 0xd7, 0x1b, + 0x80, 0x6d, 0x66, 0xdb, 0xc4, 0xe0, 0x91, 0x9a, 0xec, 0x15, 0x43, 0xe3, 0x31, 0x7f, 0xb4, 0x8d, + 0x35, 0xcc, 0x1f, 0x6b, 0xb0, 0xbd, 0x80, 0x80, 0x99, 0x3f, 0x63, 0xc4, 0x8f, 0xfb, 0x1a, 0x3f, + 0xd7, 0x78, 0x8f, 0x01, 0x30, 0x5a, 0xc3, 0x7c, 0x1f, 0xf7, 0xb3, 0x7b, 0x6e, 0xe3, 0x7d, 0x1e, + 0x5a, 0x69, 0x5d, 0x0c, 0x7a, 0x6f, 0x85, 0x58, 0x55, 0x5c, 0xe4, 0x23, 0x00, 0x86, 0x8d, 0x34, + 0xad, 0x85, 0xc7, 0x40, 0x3a, 0xad, 0xc5, 0x71, 0x08, 0x95, 0xd6, 0x59, 0x3b, 0xfb, 0x9d, 0x6b, + 0xd2, 0xd9, 0xbc, 0x51, 0xe8, 0x64, 0x53, 0xdf, 0x3b, 0x7d, 0x8c, 0x69, 0x5f, 0x3d, 0x7d, 0x78, + 0xe8, 0x70, 0x18, 0xce, 0x92, 0x86, 0x07, 0x2b, 0x53, 0xa4, 0x9a, 0xfa, 0x28, 0x84, 0x8c, 0xa9, + 0x64, 0xce, 0x6e, 0x6b, 0x26, 0x55, 0xcf, 0xa3, 0x2e, 0x7b, 0xde, 0x98, 0x73, 0x29, 0x6d, 0x42, + 0x2b, 0xe3, 0x02, 0xa4, 0xe1, 0xfa, 0xa9, 0x56, 0xc6, 0xa5, 0x0a, 0x95, 0x4f, 0x35, 0x9b, 0x6f, + 0x30, 0xac, 0x00, 0x48, 0xc6, 0x01, 0x6f, 0x26, 0xbf, 0x65, 0x46, 0xaf, 0x5e, 0xdb, 0xfd, 0x19, + 0x76, 0xd5, 0xdb, 0x1a, 0xe6, 0x49, 0x36, 0x12, 0x5a, 0x25, 0xeb, 0x31, 0x2e, 0x41, 0xb7, 0xa5, + 0x83, 0xd8, 0xaa, 0x0c, 0x3c, 0x38, 0xbf, 0x27, 0x55, 0x57, 0xfc, 0x14, 0x76, 0x49, 0xee, 0x42, + 0xbc, 0x05, 0xdd, 0xf6, 0x1b, 0xbe, 0xf6, 0xab, 0x60, 0xdd, 0xbe, 0xf1, 0xb1, 0x1d, 0xd4, 0xfa, + 0x45, 0xac, 0x6d, 0xbd, 0xdc, 0xa6, 0xa7, 0x14, 0x4b, 0xd0, 0x51, 0xe9, 0xd3, 0x8c, 0xa8, 0x9a, + 0xa9, 0x5e, 0xaf, 0xef, 0xb1, 0x5b, 0x0d, 0x57, 0xdb, 0xd6, 0xd7, 0x66, 0x77, 0xec, 0xbc, 0x8a, + 0x7f, 0x0a, 0x91, 0xaa, 0xae, 0xa5, 0x1a, 0x8f, 0x33, 0x8d, 0x97, 0xf6, 0xd5, 0xbb, 0x1e, 0xbd, + 0xdd, 0x9e, 0xfe, 0x9d, 0x57, 0xf1, 0xcf, 0x20, 0x52, 0xd5, 0xc3, 0x54, 0xbb, 0x11, 0xc2, 0xb8, + 0xbc, 0xbf, 0x4e, 0xf6, 0xa8, 0xc7, 0xde, 0x6e, 0x9e, 0x57, 0x71, 0x0a, 0x5a, 0x73, 0x92, 0xb6, + 0x9e, 0xd1, 0xa4, 0xfb, 0x84, 0xa5, 0x27, 0x75, 0xa4, 0xfb, 0x1e, 0x97, 0x11, 0xa2, 0x76, 0xf4, + 0x9f, 0x7e, 0x84, 0xba, 0x99, 0x2b, 0x77, 0x36, 0x10, 0xfd, 0xf2, 0x98, 0x10, 0xa6, 0x84, 0xcb, + 0xd2, 0x7d, 0x82, 0xd7, 0x01, 0xcc, 0x57, 0xc9, 0x55, 0x92, 0x33, 0xe3, 0x8b, 0xbb, 0x89, 0xee, + 0x9c, 0xfe, 0xf0, 0x41, 0x77, 0xb6, 0xa0, 0x94, 0x72, 0x8c, 0x91, 0xc8, 0xba, 0x24, 0x16, 0xb4, + 0x3f, 0x7c, 0x84, 0x3a, 0xc3, 0x68, 0x18, 0x8d, 0xa3, 0xb9, 0x50, 0x96, 0xbd, 0xcf, 0xb6, 0xd0, + 0x24, 0xb4, 0x1a, 0xef, 0x91, 0xab, 0x24, 0x87, 0x5f, 0x87, 0xb0, 0xa8, 0x69, 0x92, 0xa6, 0x93, + 0x5c, 0xbd, 0x9b, 0x59, 0xd2, 0xad, 0x1f, 0x3f, 0x40, 0x9f, 0x97, 0x11, 0x8a, 0xa2, 0x85, 0x26, + 0xc1, 0x66, 0xc1, 0xff, 0x0f, 0x41, 0xfb, 0x86, 0x98, 0x5d, 0x93, 0x64, 0xe3, 0x66, 0x3b, 0x16, + 0x3f, 0x6c, 0x4d, 0xff, 0x0f, 0xf4, 0x49, 0x19, 0x75, 0x5a, 0xd7, 0xce, 0x64, 0x2e, 0xa7, 0x32, + 0x9b, 0x49, 0x73, 0xef, 0xf8, 0x8f, 0x08, 0x66, 0xc1, 0x53, 0x84, 0xcf, 0x0c, 0x4f, 0xc4, 0xef, + 0xc5, 0x37, 0x2f, 0xdd, 0xba, 0xc3, 0xc7, 0x13, 0x13, 0x57, 0xd3, 0x71, 0x61, 0xfe, 0xfa, 0x48, + 0x7c, 0x83, 0xe4, 0xa4, 0xd2, 0x46, 0xdc, 0x91, 0x07, 0x02, 0xd3, 0x4e, 0xd6, 0x09, 0xca, 0x7a, + 0x6a, 0x78, 0xc6, 0x66, 0x4d, 0xce, 0x58, 0xac, 0x6b, 0x52, 0x7e, 0xcd, 0xc5, 0xf8, 0xba, 0x93, + 0x71, 0x92, 0x32, 0x9e, 0x1b, 0x4e, 0x4c, 0xd9, 0x9c, 0x93, 0x53, 0x16, 0xe7, 0x26, 0x51, 0xb7, + 0xab, 0xd8, 0x6d, 0x2b, 0x27, 0xb4, 0x99, 0xad, 0x35, 0x3d, 0x96, 0x76, 0xf6, 0xc9, 0xa5, 0x4c, + 0x91, 0x4e, 0xab, 0xfb, 0x2c, 0x18, 0xdb, 0x91, 0xc6, 0x9f, 0x94, 0x11, 0x1a, 0xb7, 0x9c, 0x96, + 0xe0, 0xd9, 0xa6, 0x68, 0xef, 0x42, 0x40, 0x00, 0x46, 0x79, 0x8b, 0xa8, 0xf3, 0xf7, 0xf1, 0x24, + 0xb4, 0xe9, 0x8a, 0x2e, 0x16, 0xcc, 0x0f, 0x36, 0x0d, 0xd6, 0x60, 0x7b, 0x9d, 0xb2, 0x31, 0x42, + 0x23, 0x8b, 0xe5, 0x02, 0x74, 0xc9, 0x4a, 0x66, 0x4b, 0x51, 0xd7, 0x89, 0x6a, 0xb2, 0x1e, 0xa9, + 0x1b, 0xf3, 0xec, 0x90, 0x95, 0x77, 0x18, 0xb5, 0xc1, 0x7f, 0x0b, 0x0e, 0xd3, 0x39, 0x4a, 0x54, + 0x55, 0xcc, 0x68, 0xca, 0xaa, 0xbe, 0x25, 0xd2, 0x89, 0x4e, 0x54, 0x8d, 0x6e, 0xf1, 0xed, 0x6c, + 0xe0, 0x22, 0xe6, 0x30, 0xdb, 0xd5, 0x60, 0x8d, 0xee, 0xb7, 0xd8, 0x96, 0x4d, 0xae, 0xbb, 0x06, + 0x13, 0xbe, 0x01, 0x51, 0xa5, 0x48, 0x54, 0x91, 0xdd, 0xa4, 0xa6, 0x6d, 0x6b, 0x3a, 0xd9, 0xb0, + 0x05, 0x76, 0xd4, 0x11, 0xd8, 0x67, 0x73, 0x2d, 0x33, 0x26, 0x4b, 0xde, 0x08, 0xb4, 0x68, 0xda, + 0x1a, 0xbb, 0x7b, 0xa3, 0x93, 0xb1, 0x73, 0x7f, 0x2b, 0xa3, 0x00, 0xe5, 0x6b, 0x51, 0x9b, 0x39, + 0x14, 0x7d, 0xff, 0xa2, 0x10, 0xd2, 0xb4, 0xb5, 0x6b, 0x64, 0x1b, 0x0f, 0x43, 0x8b, 0x98, 0xcb, + 0xd1, 0x95, 0xce, 0x12, 0xf2, 0x5a, 0xd3, 0x9d, 0x74, 0x61, 0xd9, 0x77, 0x61, 0x34, 0x09, 0x56, + 0x31, 0xbe, 0x0a, 0x6d, 0x59, 0x45, 0x51, 0x73, 0x12, 0xdd, 0x99, 0x34, 0x33, 0xf1, 0xee, 0x98, + 0xa7, 0xcb, 0xd8, 0x52, 0xbf, 0x54, 0x21, 0x33, 0xe2, 0x8e, 0x82, 0x93, 0x13, 0xdf, 0x80, 0xfe, + 0x82, 0x92, 0xd7, 0x32, 0x9a, 0xae, 0x12, 0x71, 0x83, 0x36, 0xd9, 0xbe, 0x0c, 0xb1, 0xb7, 0x6e, + 0x4e, 0x60, 0x2f, 0x65, 0x5b, 0xb6, 0xb8, 0xec, 0xdb, 0x10, 0xbf, 0x0f, 0xed, 0x05, 0x25, 0x9f, + 0x51, 0x49, 0x96, 0x48, 0x9b, 0x44, 0x35, 0x53, 0xf5, 0x76, 0xb3, 0xd4, 0xbb, 0x3e, 0x7c, 0xe0, + 0x62, 0x5d, 0x08, 0x0a, 0x6d, 0x05, 0x25, 0x2f, 0x98, 0x3f, 0xf1, 0x25, 0x68, 0xd2, 0xb6, 0xcc, + 0x2c, 0x3d, 0xff, 0x57, 0x76, 0xef, 0x7a, 0x46, 0xd4, 0x93, 0x7c, 0xd5, 0xa4, 0x6d, 0xe1, 0x34, + 0x34, 0x29, 0x9a, 0x99, 0x6e, 0xe7, 0xbf, 0x77, 0xdf, 0x74, 0x8f, 0xa2, 0x57, 0x86, 0xa2, 0xe1, + 0x5f, 0x23, 0x08, 0xea, 0x62, 0x5e, 0x8b, 0x0e, 0xb3, 0x80, 0xcd, 0xee, 0x76, 0x18, 0x77, 0x5c, + 0x60, 0xf4, 0xb6, 0x98, 0x37, 0xaf, 0x28, 0x9c, 0xb2, 0x86, 0xb8, 0xf5, 0x03, 0x23, 0x36, 0x16, + 0xfd, 0x39, 0x1b, 0xf0, 0x0f, 0x50, 0x13, 0x37, 0xcc, 0xa2, 0x64, 0x1f, 0xa0, 0x96, 0xb3, 0x74, + 0xfc, 0xbf, 0x74, 0x5d, 0x63, 0xc8, 0xaa, 0x80, 0xef, 0x41, 0xf7, 0xa6, 0x54, 0xcc, 0x14, 0x45, + 0x55, 0xdc, 0xb0, 0x97, 0xec, 0x61, 0x56, 0xaf, 0x11, 0xbf, 0xd9, 0xc0, 0xc2, 0xd6, 0xda, 0xda, + 0xdd, 0xc5, 0x5b, 0xb7, 0x18, 0x0b, 0x5b, 0xbb, 0xe9, 0x21, 0x73, 0x42, 0x53, 0x75, 0xed, 0x8f, + 0x50, 0xeb, 0xd9, 0x96, 0x71, 0x3e, 0xc1, 0x27, 0x5d, 0x61, 0xb9, 0xce, 0x4d, 0xa9, 0xe8, 0xe0, + 0xc1, 0xaf, 0x9b, 0xd1, 0x4c, 0x5d, 0xc9, 0x18, 0xff, 0x96, 0x64, 0x99, 0x14, 0xac, 0xc8, 0x77, + 0xab, 0xc3, 0xb8, 0x0a, 0x98, 0x12, 0xdc, 0x56, 0x96, 0xe9, 0x5f, 0x46, 0xb5, 0x58, 0xc4, 0xdf, + 0x87, 0xa8, 0xf5, 0x46, 0xf7, 0x4a, 0x41, 0xc9, 0xae, 0x93, 0x1c, 0x0b, 0xec, 0x48, 0x59, 0xa2, + 0x99, 0xef, 0x4d, 0xfb, 0xdb, 0xec, 0xd0, 0x63, 0xc3, 0x60, 0x37, 0x0b, 0x7d, 0x26, 0x7f, 0xda, + 0x60, 0x5f, 0x36, 0xb9, 0xf1, 0x65, 0xc0, 0x4c, 0x62, 0x46, 0x2c, 0x14, 0x2a, 0x32, 0xf9, 0x3a, + 0x93, 0xb9, 0x59, 0xe0, 0x18, 0xc7, 0x7c, 0xa1, 0x60, 0x4b, 0x79, 0x17, 0xb8, 0xaa, 0x7a, 0x8d, + 0x30, 0x19, 0xbc, 0x47, 0x06, 0xbb, 0x15, 0x76, 0xd4, 0x53, 0x0b, 0xfb, 0xf8, 0xa4, 0x59, 0xe8, + 0x5a, 0xf1, 0x54, 0x70, 0x1b, 0x06, 0x94, 0xd5, 0xd5, 0x02, 0xdd, 0x5e, 0xb4, 0x92, 0xba, 0x29, + 0x6d, 0x8a, 0x2b, 0x52, 0x41, 0xd2, 0xb7, 0x8d, 0x3c, 0xc3, 0xb3, 0x75, 0x42, 0x76, 0x37, 0x0d, + 0xb6, 0x65, 0x27, 0x97, 0x4f, 0x96, 0x61, 0x54, 0xa9, 0x41, 0x87, 0xff, 0x31, 0x0c, 0x96, 0x34, + 0xa2, 0x52, 0x4d, 0x14, 0xc6, 0x1b, 0xf7, 0x58, 0xd9, 0xb7, 0xde, 0x46, 0x93, 0x4c, 0xf7, 0xc0, + 0xa8, 0x71, 0x2f, 0xee, 0xa8, 0x75, 0x2f, 0xee, 0xe8, 0x6d, 0x8b, 0x22, 0x1d, 0xa4, 0x43, 0x2a, + 0x1c, 0xa6, 0x42, 0xae, 0x3b, 0x64, 0xd8, 0x04, 0x78, 0x04, 0x38, 0xad, 0x94, 0xcf, 0x53, 0x6f, + 0x3a, 0x97, 0x11, 0xd9, 0xc1, 0x46, 0x34, 0xc5, 0x42, 0x81, 0x5d, 0xf6, 0xf3, 0x79, 0xe3, 0x1a, + 0xa3, 0x73, 0xd0, 0x4d, 0x54, 0x55, 0x51, 0x33, 0x39, 0x52, 0xb9, 0xca, 0x67, 0x82, 0xd1, 0x72, + 0xac, 0xe0, 0x72, 0xe5, 0x39, 0x7e, 0x03, 0xda, 0xd8, 0x34, 0x63, 0x05, 0x5a, 0x74, 0x92, 0x4d, + 0xf1, 0x58, 0xcd, 0xe3, 0xb7, 0x2b, 0x94, 0x4c, 0x00, 0xcd, 0xfa, 0xaf, 0x86, 0xef, 0x00, 0x67, + 0x5e, 0x8d, 0x4b, 0xdb, 0xac, 0xe9, 0xa2, 0x4e, 0xa2, 0x53, 0x71, 0x34, 0xdc, 0x99, 0x3c, 0xeb, + 0x7f, 0x5d, 0x17, 0x03, 0x16, 0x77, 0x6d, 0x96, 0x65, 0xca, 0x21, 0x74, 0x6d, 0xba, 0x1f, 0xe0, + 0x4b, 0xf6, 0xed, 0x66, 0x39, 0x59, 0x8b, 0x4e, 0xfb, 0xde, 0x7d, 0x64, 0x0a, 0x64, 0x64, 0x97, + 0x6f, 0x2c, 0x9b, 0x66, 0xd8, 0xbc, 0xbd, 0xec, 0xb2, 0xac, 0x61, 0x05, 0xa2, 0xeb, 0xa5, 0x15, + 0x76, 0xd5, 0x18, 0xd1, 0x32, 0xa5, 0x62, 0x5e, 0x15, 0x73, 0x24, 0x93, 0x53, 0x45, 0x49, 0x8e, + 0xce, 0x30, 0x91, 0xe7, 0x7c, 0x45, 0x5e, 0xb3, 0x99, 0xee, 0x18, 0x3c, 0x97, 0x29, 0x8b, 0x63, + 0x26, 0xf4, 0xad, 0xfb, 0x52, 0xe0, 0xf7, 0xa0, 0x55, 0x5f, 0x35, 0xad, 0x46, 0xf4, 0xcf, 0x2d, + 0xbb, 0xb6, 0xd1, 0x83, 0x1f, 0x3e, 0x88, 0x30, 0x13, 0x4b, 0x41, 0x84, 0xc1, 0x4f, 0x74, 0xa2, + 0x6a, 0x6c, 0x56, 0x84, 0xf5, 0x55, 0xc3, 0x40, 0xe0, 0x7f, 0x04, 0x1d, 0xec, 0xa2, 0x61, 0xe3, + 0xee, 0x35, 0xb1, 0x10, 0xfd, 0x7c, 0xf7, 0x2a, 0x22, 0x1f, 0x3e, 0x70, 0x33, 0x33, 0xd9, 0xed, + 0xf4, 0xd1, 0xa2, 0xf9, 0x04, 0x67, 0xa1, 0xcb, 0x00, 0x85, 0x6c, 0x4a, 0xb0, 0xe0, 0xf9, 0x17, + 0x86, 0x86, 0xb9, 0x97, 0x83, 0xbf, 0xce, 0xe3, 0x0f, 0xa1, 0x83, 0xc9, 0xb4, 0x1e, 0x0d, 0x4c, + 0x43, 0xab, 0x6d, 0xa5, 0x5f, 0xea, 0x76, 0xd8, 0x5f, 0xa1, 0x27, 0x65, 0xf4, 0x4f, 0x10, 0x1c, + 0x87, 0x1e, 0x76, 0x44, 0x47, 0x85, 0xc7, 0x97, 0x49, 0xc1, 0xbc, 0xbd, 0x0b, 0xa6, 0xf9, 0x04, + 0x9f, 0x1a, 0xe7, 0x53, 0xfc, 0x04, 0x9c, 0x86, 0x88, 0x71, 0x8a, 0xa7, 0xe4, 0x48, 0xfc, 0x96, + 0xdd, 0x9d, 0xb8, 0x33, 0x31, 0xce, 0x27, 0xa6, 0xf8, 0xc4, 0x04, 0xcf, 0xb2, 0x47, 0x61, 0x02, + 0xfa, 0xec, 0xf3, 0x3c, 0xf7, 0x17, 0x1c, 0x06, 0x92, 0xe3, 0xc6, 0x2b, 0x50, 0xfc, 0xe4, 0x14, + 0x3f, 0x31, 0xce, 0xce, 0xf7, 0xa6, 0xf8, 0x89, 0x24, 0x3f, 0x39, 0x99, 0x1e, 0x82, 0x0e, 0x23, + 0xd6, 0x61, 0x9d, 0x33, 0x75, 0x9b, 0xe9, 0xbc, 0x31, 0x96, 0x66, 0xc2, 0xc7, 0x53, 0x89, 0x34, + 0x0f, 0xad, 0xf6, 0x5d, 0xcf, 0xf8, 0xd8, 0xe3, 0x32, 0x6a, 0x7e, 0x56, 0x46, 0xc1, 0xe7, 0x65, + 0xd4, 0x35, 0xc9, 0x4f, 0xf1, 0x89, 0x69, 0x3e, 0x95, 0xe4, 0x53, 0x29, 0x3e, 0x65, 0x5c, 0x8d, + 0x76, 0x0c, 0x20, 0x47, 0x8a, 0x05, 0x65, 0x7b, 0x83, 0xc8, 0x3a, 0x13, 0x17, 0x36, 0xf3, 0x7a, + 0xd1, 0xcc, 0x6f, 0x3f, 0x42, 0x28, 0x3d, 0x0c, 0xed, 0x4e, 0x2c, 0xc7, 0x3e, 0x81, 0x7a, 0xc4, + 0x71, 0x4a, 0x16, 0x4e, 0x4c, 0xf2, 0xc6, 0x17, 0x10, 0x46, 0x20, 0xc2, 0x80, 0x87, 0xb5, 0xdd, + 0x3b, 0xeb, 0xd8, 0xfb, 0xac, 0x8c, 0x22, 0xac, 0x8e, 0x09, 0x3e, 0x99, 0x4c, 0xf3, 0xd0, 0xef, + 0xb5, 0xc5, 0x4e, 0x6a, 0xfe, 0x59, 0x19, 0x9d, 0xa4, 0xd4, 0x13, 0x13, 0xfc, 0x44, 0x62, 0x29, + 0x18, 0x8e, 0x71, 0xc7, 0x96, 0x82, 0xe1, 0x20, 0xd7, 0x6c, 0xe7, 0xa2, 0x1a, 0x27, 0x61, 0x46, + 0x46, 0x6a, 0x84, 0xeb, 0x5d, 0x0a, 0x86, 0x4f, 0x72, 0xa7, 0x96, 0x82, 0xe1, 0xd3, 0xdc, 0x99, + 0xa5, 0x60, 0xf8, 0x0c, 0x37, 0xbc, 0x14, 0x0c, 0x9f, 0xe3, 0xf8, 0xa1, 0xff, 0xdf, 0x03, 0x9d, + 0x97, 0x54, 0x22, 0xea, 0xc4, 0x8e, 0xe0, 0x9f, 0xf2, 0x8f, 0xe0, 0x7b, 0x03, 0xf6, 0x27, 0xfc, + 0xe2, 0xf5, 0xde, 0x38, 0xd4, 0xb9, 0x5a, 0x61, 0x28, 0xbf, 0x40, 0xc3, 0xf7, 0xf6, 0x16, 0x68, + 0x30, 0x43, 0x0c, 0x3f, 0x3c, 0xe0, 0x10, 0x83, 0x3b, 0xb8, 0xa0, 0xbc, 0xca, 0xe0, 0x82, 0x5f, + 0x58, 0xe1, 0xc7, 0xaf, 0x34, 0xac, 0xe0, 0x1b, 0x50, 0xc8, 0xbe, 0x8a, 0x80, 0x82, 0x37, 0x94, + 0xb0, 0xf9, 0xca, 0x43, 0x09, 0xfe, 0x41, 0x84, 0x7b, 0xaf, 0x3e, 0x88, 0x50, 0x23, 0x7c, 0xf0, + 0xee, 0x1e, 0x23, 0x01, 0x11, 0xbf, 0x48, 0x80, 0xdb, 0xef, 0x3f, 0xee, 0xe7, 0xb7, 0xbb, 0xbd, + 0xdb, 0xc1, 0xaa, 0xe0, 0x85, 0x23, 0x48, 0xd1, 0xef, 0xf1, 0xd4, 0x6c, 0xbf, 0x2c, 0xea, 0xf1, + 0xcb, 0x2a, 0x7e, 0xd8, 0xfc, 0x5e, 0xfc, 0xb0, 0x03, 0xf1, 0xc0, 0x02, 0x5f, 0x81, 0x07, 0x16, + 0x70, 0x7b, 0x60, 0x6f, 0xec, 0xcd, 0x03, 0x0b, 0xda, 0xde, 0xd7, 0x85, 0x3d, 0x79, 0x5f, 0x41, + 0xdb, 0xf3, 0x7a, 0x7b, 0x0f, 0x8e, 0x97, 0xdb, 0x9c, 0x57, 0x1c, 0x2f, 0xd3, 0x81, 0x1a, 0xf2, + 0x0b, 0x77, 0x2c, 0x04, 0x5d, 0xa1, 0x8d, 0xe3, 0x3e, 0xa1, 0x0d, 0x4a, 0xb2, 0xf7, 0x30, 0x46, + 0xb0, 0x3a, 0x8c, 0xb1, 0x27, 0x77, 0xe8, 0xdb, 0xec, 0x06, 0x29, 0xaf, 0xc4, 0x0d, 0xaa, 0xe3, + 0xfc, 0x1c, 0x08, 0x54, 0x5f, 0x3f, 0x58, 0xa8, 0x1e, 0xac, 0x07, 0xd3, 0xf7, 0x0e, 0x41, 0xbb, + 0x9f, 0x5e, 0xf0, 0x64, 0x22, 0xf8, 0x80, 0xc1, 0x87, 0x2f, 0x90, 0xfb, 0x51, 0x7a, 0xc0, 0x09, + 0x06, 0x3b, 0x1e, 0xbe, 0x40, 0x95, 0x9f, 0xe9, 0x23, 0x2e, 0xe8, 0xd7, 0xf9, 0xf0, 0x05, 0x72, + 0xfc, 0x4e, 0x8f, 0xd7, 0x40, 0x73, 0xd1, 0x87, 0x2f, 0x90, 0x6f, 0x49, 0x3a, 0xee, 0x41, 0x8a, + 0xdc, 0xc3, 0x17, 0xc8, 0xf5, 0x24, 0x3d, 0x55, 0x1b, 0xf6, 0x0d, 0x3e, 0x7c, 0x81, 0x6a, 0x15, + 0x7a, 0xa0, 0x9f, 0x91, 0x0a, 0xd5, 0xc1, 0x75, 0xda, 0xd0, 0xef, 0x04, 0x77, 0xb2, 0x26, 0x00, + 0xfc, 0x2f, 0x3d, 0xd0, 0x65, 0x26, 0x2e, 0x7f, 0xdb, 0x11, 0xa0, 0xe4, 0x83, 0x00, 0xd3, 0x7b, + 0x04, 0x2f, 0x8e, 0x5c, 0x6e, 0xbf, 0xb3, 0xa6, 0x9f, 0xd6, 0x86, 0x83, 0x0b, 0xfb, 0x82, 0x30, + 0x7e, 0x7a, 0xab, 0xb0, 0xe1, 0xcf, 0x6a, 0x63, 0xc3, 0xc5, 0xfd, 0x01, 0x19, 0x3f, 0xf5, 0xd5, + 0x40, 0xb1, 0xe8, 0x0f, 0x14, 0x2f, 0xef, 0x19, 0x28, 0xfa, 0xa9, 0x75, 0xa1, 0xc6, 0x5f, 0xa0, + 0xba, 0xb0, 0x71, 0x69, 0x9f, 0xb0, 0xd1, 0x4f, 0xbf, 0x0f, 0x86, 0xfc, 0x25, 0xaa, 0x0b, 0x22, + 0xaf, 0xed, 0x17, 0x44, 0xfa, 0x55, 0xe3, 0x9b, 0x87, 0x28, 0x6b, 0x82, 0xc6, 0xba, 0x50, 0xb3, + 0x81, 0x28, 0x19, 0xa2, 0x6c, 0xa0, 0xaf, 0x06, 0xfa, 0xfa, 0xa6, 0xa2, 0xaf, 0xb9, 0xdf, 0xa0, + 0x2a, 0x14, 0xf5, 0xa4, 0x8c, 0xee, 0xd5, 0x8c, 0xeb, 0x4d, 0xf0, 0x56, 0x64, 0x0f, 0x46, 0x6a, + 0xc4, 0xf5, 0xba, 0x13, 0xe3, 0x2c, 0xa8, 0x37, 0x65, 0xc4, 0xf5, 0xf8, 0xe4, 0x2c, 0x0c, 0xd7, + 0x0c, 0xed, 0x75, 0x26, 0xc7, 0xf9, 0xc9, 0xa9, 0x4a, 0x38, 0xef, 0xb4, 0x17, 0xc1, 0xf5, 0x3e, + 0x2b, 0xa3, 0x58, 0x03, 0xc5, 0x55, 0xa3, 0xb8, 0xff, 0x19, 0x85, 0xb6, 0xab, 0x44, 0x6f, 0xc4, + 0xf0, 0x1a, 0x31, 0xbc, 0x46, 0x0c, 0xef, 0xdb, 0x15, 0xc3, 0x4b, 0xee, 0x2e, 0x77, 0xc7, 0x95, + 0xb0, 0xb3, 0xdf, 0xb8, 0xdf, 0xdc, 0x8e, 0x39, 0x24, 0xb5, 0xb3, 0x45, 0x66, 0x76, 0xca, 0x16, + 0xa9, 0x99, 0x17, 0xd2, 0x88, 0x36, 0xd6, 0xc7, 0x86, 0x37, 0x5c, 0xc1, 0xbe, 0xdd, 0x1d, 0xec, + 0x39, 0x8c, 0x7e, 0x55, 0xa4, 0xef, 0x7b, 0xc0, 0x8e, 0x83, 0xcd, 0xa3, 0xdf, 0x7e, 0x76, 0xf4, + 0x7b, 0xd4, 0xaf, 0xef, 0xac, 0xd7, 0x37, 0x89, 0xc0, 0x36, 0x4e, 0xe3, 0x9c, 0xf7, 0xf6, 0x41, + 0x24, 0x5a, 0x54, 0x25, 0x51, 0x34, 0xf0, 0xef, 0x77, 0x06, 0xff, 0xfe, 0x60, 0x9f, 0xa9, 0x17, + 0x8d, 0xa4, 0x8b, 0x03, 0x4e, 0xba, 0xf8, 0x2a, 0x7d, 0x89, 0x6f, 0x78, 0xc6, 0x42, 0xa4, 0xca, + 0xd1, 0xf9, 0xfc, 0x02, 0xfa, 0xce, 0x46, 0x8c, 0x77, 0xf4, 0x2f, 0xd2, 0xff, 0x16, 0x3d, 0xfb, + 0x34, 0x76, 0xe8, 0xe3, 0x4f, 0x63, 0x87, 0xfe, 0xf2, 0x69, 0x0c, 0xbd, 0xff, 0x3c, 0x86, 0x7e, + 0xf7, 0x3c, 0x86, 0xfe, 0xf8, 0x3c, 0x86, 0x9e, 0x3d, 0x8f, 0xa1, 0x8f, 0x9f, 0xc7, 0xd0, 0x9f, + 0x9e, 0xc7, 0xd0, 0xe7, 0xcf, 0x63, 0x87, 0xfe, 0xf2, 0x3c, 0x86, 0xfe, 0xd5, 0x67, 0xb1, 0x43, + 0x8f, 0x3f, 0x8b, 0xa1, 0x67, 0x9f, 0xc5, 0x0e, 0x7d, 0xfc, 0x59, 0xec, 0xd0, 0x0f, 0xde, 0xcd, + 0x2b, 0xc5, 0xf5, 0xfc, 0xa8, 0x05, 0x29, 0x46, 0x4b, 0xda, 0x98, 0x9d, 0x54, 0x73, 0xbe, 0xa8, + 0x2a, 0x9b, 0x52, 0x8e, 0xa8, 0xe7, 0xad, 0xe2, 0xb1, 0xe2, 0x4a, 0x5e, 0x19, 0x23, 0xf7, 0x74, + 0x63, 0x82, 0x8c, 0x99, 0xff, 0xb0, 0x79, 0x32, 0xe6, 0x99, 0x27, 0x2b, 0x21, 0x66, 0x38, 0x52, + 0xff, 0x10, 0x00, 0x00, 0xff, 0xff, 0x83, 0xd5, 0xf5, 0xba, 0x60, 0x9d, 0x00, 0x00, } func (this *AzureHubVnetType) Equal(that interface{}) bool { @@ -11125,6 +11255,9 @@ func (this *AzureVnetIngressEgressGwARReplaceType) Equal(that interface{}) bool } else if this == nil { return false } + if !this.Node.Equal(that1.Node) { + return false + } if that1.NetworkPolicyChoice == nil { if this.NetworkPolicyChoice != nil { return false @@ -12776,6 +12909,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if !this.TfParams.Equal(that1.TfParams) { return false } @@ -13333,6 +13469,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_AzureRegion) Equal(that interface{}) bool { @@ -13762,6 +13901,21 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if this == nil { return false } + if this.ResourceGroup != that1.ResourceGroup { + return false + } + if that1.RegionChoice == nil { + if this.RegionChoice != nil { + return false + } + } else if this.RegionChoice == nil { + return false + } else if !this.RegionChoice.Equal(that1.RegionChoice) { + return false + } + if !this.Vnet.Equal(that1.Vnet) { + return false + } if that1.SiteType == nil { if this.SiteType != nil { return false @@ -13780,6 +13934,15 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if !this.Deployment.Equal(that1.Deployment) { return false } + if this.MachineType != that1.MachineType { + return false + } + if this.SshKey != that1.SshKey { + return false + } + if this.DiskSize != that1.DiskSize { + return false + } if this.Address != that1.Address { return false } @@ -13819,6 +13982,57 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } + return true +} +func (this *ReplaceSpecType_AzureRegion) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_AzureRegion) + if !ok { + that2, ok := that.(ReplaceSpecType_AzureRegion) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.AzureRegion != that1.AzureRegion { + return false + } + return true +} +func (this *ReplaceSpecType_AlternateRegion) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType_AlternateRegion) + if !ok { + that2, ok := that.(ReplaceSpecType_AlternateRegion) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.AlternateRegion != that1.AlternateRegion { + return false + } return true } func (this *ReplaceSpecType_IngressGw) Equal(that interface{}) bool { @@ -14326,6 +14540,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if !this.CloudSiteInfo.Equal(that1.CloudSiteInfo) { return false } @@ -16012,8 +16229,11 @@ func (this *AzureVnetIngressEgressGwARReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 24) + s := make([]string, 0, 25) s = append(s, "&azure_vnet_site.AzureVnetIngressEgressGwARReplaceType{") + if this.Node != nil { + s = append(s, "Node: "+fmt.Sprintf("%#v", this.Node)+",\n") + } if this.NetworkPolicyChoice != nil { s = append(s, "NetworkPolicyChoice: "+fmt.Sprintf("%#v", this.NetworkPolicyChoice)+",\n") } @@ -16534,7 +16754,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 46) + s := make([]string, 0, 47) s = append(s, "&azure_vnet_site.GlobalSpecType{") s = append(s, "ResourceGroup: "+fmt.Sprintf("%#v", this.ResourceGroup)+",\n") if this.RegionChoice != nil { @@ -16605,6 +16825,9 @@ func (this *GlobalSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.TfParams != nil { s = append(s, "TfParams: "+fmt.Sprintf("%#v", this.TfParams)+",\n") } @@ -16765,7 +16988,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 33) + s := make([]string, 0, 34) s = append(s, "&azure_vnet_site.CreateSpecType{") s = append(s, "ResourceGroup: "+fmt.Sprintf("%#v", this.ResourceGroup)+",\n") if this.RegionChoice != nil { @@ -16821,6 +17044,9 @@ func (this *CreateSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -16964,14 +17190,24 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 23) + s := make([]string, 0, 31) s = append(s, "&azure_vnet_site.ReplaceSpecType{") + s = append(s, "ResourceGroup: "+fmt.Sprintf("%#v", this.ResourceGroup)+",\n") + if this.RegionChoice != nil { + s = append(s, "RegionChoice: "+fmt.Sprintf("%#v", this.RegionChoice)+",\n") + } + if this.Vnet != nil { + s = append(s, "Vnet: "+fmt.Sprintf("%#v", this.Vnet)+",\n") + } if this.SiteType != nil { s = append(s, "SiteType: "+fmt.Sprintf("%#v", this.SiteType)+",\n") } if this.Deployment != nil { s = append(s, "Deployment: "+fmt.Sprintf("%#v", this.Deployment)+",\n") } + s = append(s, "MachineType: "+fmt.Sprintf("%#v", this.MachineType)+",\n") + s = append(s, "SshKey: "+fmt.Sprintf("%#v", this.SshKey)+",\n") + s = append(s, "DiskSize: "+fmt.Sprintf("%#v", this.DiskSize)+",\n") s = append(s, "Address: "+fmt.Sprintf("%#v", this.Address)+",\n") if this.Coordinates != nil { s = append(s, "Coordinates: "+fmt.Sprintf("%#v", this.Coordinates)+",\n") @@ -16991,9 +17227,28 @@ func (this *ReplaceSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } +func (this *ReplaceSpecType_AzureRegion) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&azure_vnet_site.ReplaceSpecType_AzureRegion{` + + `AzureRegion:` + fmt.Sprintf("%#v", this.AzureRegion) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_AlternateRegion) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&azure_vnet_site.ReplaceSpecType_AlternateRegion{` + + `AlternateRegion:` + fmt.Sprintf("%#v", this.AlternateRegion) + `}`}, ", ") + return s +} func (this *ReplaceSpecType_IngressGw) GoString() string { if this == nil { return "nil" @@ -17118,7 +17373,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 42) + s := make([]string, 0, 43) s = append(s, "&azure_vnet_site.GetSpecType{") s = append(s, "ResourceGroup: "+fmt.Sprintf("%#v", this.ResourceGroup)+",\n") if this.RegionChoice != nil { @@ -17183,6 +17438,9 @@ func (this *GetSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.CloudSiteInfo != nil { s = append(s, "CloudSiteInfo: "+fmt.Sprintf("%#v", this.CloudSiteInfo)+",\n") } @@ -21023,6 +21281,18 @@ func (m *AzureVnetIngressEgressGwARReplaceType) MarshalToSizedBuffer(dAtA []byte } } } + if m.Node != nil { + { + size, err := m.Node.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } @@ -22477,6 +22747,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xba } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xc2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -23163,6 +23447,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xc2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -23734,6 +24032,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xc2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -23780,6 +24092,15 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if m.RegionChoice != nil { + { + size := m.RegionChoice.Size() + i -= size + if _, err := m.RegionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.WorkerNodes != nil { { size := m.WorkerNodes.Size() @@ -23821,6 +24142,27 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x92 } + if m.DiskSize != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DiskSize)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x80 + } + if len(m.SshKey) > 0 { + i -= len(m.SshKey) + copy(dAtA[i:], m.SshKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SshKey))) + i-- + dAtA[i] = 0x72 + } + if len(m.MachineType) > 0 { + i -= len(m.MachineType) + copy(dAtA[i:], m.MachineType) + i = encodeVarintTypes(dAtA, i, uint64(len(m.MachineType))) + i-- + dAtA[i] = 0x52 + } if m.Deployment != nil { { size := m.Deployment.Size() @@ -23830,9 +24172,42 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if m.Vnet != nil { + { + size, err := m.Vnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if len(m.ResourceGroup) > 0 { + i -= len(m.ResourceGroup) + copy(dAtA[i:], m.ResourceGroup) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ResourceGroup))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } +func (m *ReplaceSpecType_AzureRegion) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_AzureRegion) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.AzureRegion) + copy(dAtA[i:], m.AzureRegion) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AzureRegion))) + i-- + dAtA[i] = 0x12 + return len(dAtA) - i, nil +} func (m *ReplaceSpecType_IngressGw) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -24014,6 +24389,22 @@ func (m *ReplaceSpecType_NoWorkerNodes) MarshalToSizedBuffer(dAtA []byte) (int, } return len(dAtA) - i, nil } +func (m *ReplaceSpecType_AlternateRegion) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_AlternateRegion) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.AlternateRegion) + copy(dAtA[i:], m.AlternateRegion) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AlternateRegion))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xfa + return len(dAtA) - i, nil +} func (m *ReplaceSpecType_IngressGwAr) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -24186,6 +24577,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xca } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xc2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -26573,6 +26978,10 @@ func (m *AzureVnetIngressEgressGwARReplaceType) Size() (n int) { } var l int _ = l + if m.Node != nil { + l = m.Node.Size() + n += 1 + l + sovTypes(uint64(l)) + } if m.NetworkPolicyChoice != nil { n += m.NetworkPolicyChoice.Size() } @@ -27429,6 +27838,10 @@ func (m *GlobalSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.TfParams != nil { l = m.TfParams.Size() n += 2 + l + sovTypes(uint64(l)) @@ -27725,6 +28138,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -27928,15 +28345,37 @@ func (m *ReplaceSpecType) Size() (n int) { } var l int _ = l + l = len(m.ResourceGroup) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.RegionChoice != nil { + n += m.RegionChoice.Size() + } + if m.Vnet != nil { + l = m.Vnet.Size() + n += 1 + l + sovTypes(uint64(l)) + } if m.SiteType != nil { n += m.SiteType.Size() } if m.Deployment != nil { n += m.Deployment.Size() } + l = len(m.MachineType) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.SshKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.WorkerNodes != nil { n += m.WorkerNodes.Size() } + if m.DiskSize != 0 { + n += 2 + sovTypes(uint64(m.DiskSize)) + } l = len(m.Address) if l > 0 { n += 2 + l + sovTypes(uint64(l)) @@ -27959,9 +28398,23 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } +func (m *ReplaceSpecType_AzureRegion) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.AzureRegion) + n += 1 + l + sovTypes(uint64(l)) + return n +} func (m *ReplaceSpecType_IngressGw) Size() (n int) { if m == nil { return 0 @@ -28064,6 +28517,16 @@ func (m *ReplaceSpecType_NoWorkerNodes) Size() (n int) { } return n } +func (m *ReplaceSpecType_AlternateRegion) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.AlternateRegion) + n += 2 + l + sovTypes(uint64(l)) + return n +} func (m *ReplaceSpecType_IngressGwAr) Size() (n int) { if m == nil { return 0 @@ -28241,6 +28704,10 @@ func (m *GetSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.CloudSiteInfo != nil { l = m.CloudSiteInfo.Size() n += 2 + l + sovTypes(uint64(l)) @@ -29808,6 +30275,7 @@ func (this *AzureVnetIngressEgressGwARReplaceType) String() string { return "nil" } s := strings.Join([]string{`&AzureVnetIngressEgressGwARReplaceType{`, + `Node:` + strings.Replace(fmt.Sprintf("%v", this.Node), "AzureVnetTwoInterfaceNodeARType", "views.AzureVnetTwoInterfaceNodeARType", 1) + `,`, `NetworkPolicyChoice:` + fmt.Sprintf("%v", this.NetworkPolicyChoice) + `,`, `ForwardProxyChoice:` + fmt.Sprintf("%v", this.ForwardProxyChoice) + `,`, `InsideStaticRouteChoice:` + fmt.Sprintf("%v", this.InsideStaticRouteChoice) + `,`, @@ -30431,6 +30899,7 @@ func (this *GlobalSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `TfParams:` + strings.Replace(fmt.Sprintf("%v", this.TfParams), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `CloudSiteInfo:` + strings.Replace(this.CloudSiteInfo.String(), "AzureVnetSiteInfoType", "AzureVnetSiteInfoType", 1) + `,`, @@ -30651,6 +31120,7 @@ func (this *CreateSpecType) String() string { `Tags:` + mapStringForTags + `,`, `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -30830,15 +31300,32 @@ func (this *ReplaceSpecType) String() string { return "nil" } s := strings.Join([]string{`&ReplaceSpecType{`, + `ResourceGroup:` + fmt.Sprintf("%v", this.ResourceGroup) + `,`, + `RegionChoice:` + fmt.Sprintf("%v", this.RegionChoice) + `,`, + `Vnet:` + strings.Replace(fmt.Sprintf("%v", this.Vnet), "AzureVnetChoiceType", "views.AzureVnetChoiceType", 1) + `,`, `SiteType:` + fmt.Sprintf("%v", this.SiteType) + `,`, `Deployment:` + fmt.Sprintf("%v", this.Deployment) + `,`, + `MachineType:` + fmt.Sprintf("%v", this.MachineType) + `,`, + `SshKey:` + fmt.Sprintf("%v", this.SshKey) + `,`, `WorkerNodes:` + fmt.Sprintf("%v", this.WorkerNodes) + `,`, + `DiskSize:` + fmt.Sprintf("%v", this.DiskSize) + `,`, `Address:` + fmt.Sprintf("%v", this.Address) + `,`, `Coordinates:` + strings.Replace(fmt.Sprintf("%v", this.Coordinates), "Coordinates", "site.Coordinates", 1) + `,`, `LogsReceiverChoice:` + fmt.Sprintf("%v", this.LogsReceiverChoice) + `,`, `BlockedServicesChoice:` + fmt.Sprintf("%v", this.BlockedServicesChoice) + `,`, `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_AzureRegion) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_AzureRegion{`, + `AzureRegion:` + fmt.Sprintf("%v", this.AzureRegion) + `,`, `}`, }, "") return s @@ -30933,6 +31420,16 @@ func (this *ReplaceSpecType_NoWorkerNodes) String() string { }, "") return s } +func (this *ReplaceSpecType_AlternateRegion) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_AlternateRegion{`, + `AlternateRegion:` + fmt.Sprintf("%v", this.AlternateRegion) + `,`, + `}`, + }, "") + return s +} func (this *ReplaceSpecType_IngressGwAr) String() string { if this == nil { return "nil" @@ -31043,6 +31540,7 @@ func (this *GetSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `CloudSiteInfo:` + strings.Replace(this.CloudSiteInfo.String(), "AzureVnetSiteInfoType", "AzureVnetSiteInfoType", 1) + `,`, `}`, }, "") @@ -37149,6 +37647,42 @@ func (m *AzureVnetIngressEgressGwARReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: AzureVnetIngressEgressGwARReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Node", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Node == nil { + m.Node = &views.AzureVnetTwoInterfaceNodeARType{} + } + if err := m.Node.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 2: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field NoNetworkPolicy", wireType) @@ -40951,6 +41485,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 56: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 999: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field TfParams", wireType) @@ -42048,15 +42618,311 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &fleet.BlockedServicesListType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &fleet.BlockedServicesListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.BlockedServicesChoice = &CreateSpecType_BlockedServices{v} + iNdEx = postIndex + case 42: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OfflineSurvivabilityMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OfflineSurvivabilityMode == nil { + m.OfflineSurvivabilityMode = &views.OfflineSurvivabilityModeType{} + } + if err := m.OfflineSurvivabilityMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 44: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BlockAllServices", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.BlockedServicesChoice = &CreateSpecType_BlockAllServices{v} + iNdEx = postIndex + case 55: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomDns", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CustomDns == nil { + m.CustomDns = &views.CustomDNS{} + } + if err := m.CustomDns.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 56: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceGroup = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AzureRegion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RegionChoice = &ReplaceSpecType_AzureRegion{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Vnet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Vnet == nil { + m.Vnet = &views.AzureVnetChoiceType{} + } + if err := m.Vnet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BlockedServicesChoice = &CreateSpecType_BlockedServices{v} iNdEx = postIndex - case 42: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OfflineSurvivabilityMode", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IngressGw", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -42083,16 +42949,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.OfflineSurvivabilityMode == nil { - m.OfflineSurvivabilityMode = &views.OfflineSurvivabilityModeType{} - } - if err := m.OfflineSurvivabilityMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &AzureVnetIngressGwReplaceType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.SiteType = &ReplaceSpecType_IngressGw{v} iNdEx = postIndex - case 44: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BlockAllServices", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IngressEgressGw", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -42119,15 +42984,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &AzureVnetIngressEgressGwReplaceType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BlockedServicesChoice = &CreateSpecType_BlockAllServices{v} + m.SiteType = &ReplaceSpecType_IngressEgressGw{v} iNdEx = postIndex - case 55: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomDns", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureCred", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -42154,71 +43019,17 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CustomDns == nil { - m.CustomDns = &views.CustomDNS{} - } - if err := m.CustomDns.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Deployment = &ReplaceSpecType_AzureCred{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 5: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IngressGw", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MachineType", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -42228,32 +43039,29 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &AzureVnetIngressGwReplaceType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.SiteType = &ReplaceSpecType_IngressGw{v} + m.MachineType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 6: + case 14: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IngressEgressGw", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SshKey", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -42263,32 +43071,29 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &AzureVnetIngressEgressGwReplaceType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.SiteType = &ReplaceSpecType_IngressEgressGw{v} + m.SshKey = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AzureCred", wireType) + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NodesPerAz", wireType) } - var msglen int + var v uint32 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -42298,32 +43103,17 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= uint32(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Deployment = &ReplaceSpecType_AzureCred{v} - iNdEx = postIndex - case 15: + m.WorkerNodes = &ReplaceSpecType_NodesPerAz{v} + case 16: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NodesPerAz", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DiskSize", wireType) } - var v uint32 + m.DiskSize = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -42333,12 +43123,11 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= uint32(b&0x7F) << shift + m.DiskSize |= uint32(b&0x7F) << shift if b < 0x80 { break } } - m.WorkerNodes = &ReplaceSpecType_NodesPerAz{v} case 17: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field VoltstackCluster", wireType) @@ -42567,6 +43356,38 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.WorkerNodes = &ReplaceSpecType_NoWorkerNodes{v} iNdEx = postIndex + case 31: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AlternateRegion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RegionChoice = &ReplaceSpecType_AlternateRegion{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex case 32: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field IngressGwAr", wireType) @@ -42849,6 +43670,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 56: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -44184,6 +45041,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 56: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1001: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field CloudSiteInfo", wireType) diff --git a/pbgo/extschema/schema/views/azure_vnet_site/types.vesmsg.go b/pbgo/extschema/schema/views/azure_vnet_site/types.vesmsg.go index a66cf5f38..7b38b8e23 100644 --- a/pbgo/extschema/schema/views/azure_vnet_site/types.vesmsg.go +++ b/pbgo/extschema/schema/views/azure_vnet_site/types.vesmsg.go @@ -939,6 +939,15 @@ func (v *ValidateAzureVnetIngressEgressGwARReplaceType) Validate(ctx context.Con } + if fv, exists := v.FldValidators["node"]; exists { + + vOpts := append(opts, db.WithValidateField("node")) + if err := fv(ctx, m.GetNode(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["outside_static_route_choice"]; exists { val := m.GetOutsideStaticRouteChoice() vOpts := append(opts, @@ -1139,6 +1148,8 @@ var DefaultAzureVnetIngressEgressGwARReplaceTypeValidator = func() *ValidateAzur v.FldValidators["outside_static_route_choice.outside_static_routes"] = ves_io_schema_views.SiteStaticRoutesListTypeValidator().Validate + v.FldValidators["node"] = ves_io_schema_views.AzureVnetTwoInterfaceNodeARTypeValidator().Validate + v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate return v @@ -8694,6 +8705,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -9131,6 +9151,7 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -9197,6 +9218,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -10684,6 +10707,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -11199,6 +11231,7 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -11273,6 +11306,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["cloud_site_info"] = AzureVnetSiteInfoTypeValidator().Validate return v @@ -12098,6 +12133,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -12649,6 +12693,7 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -12727,6 +12772,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["tf_params"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate @@ -13191,6 +13238,29 @@ func (v *ValidateReplaceSpecType) LogsReceiverChoiceValidationRuleHandler(rules return validatorFn, nil } +func (v *ValidateReplaceSpecType) RegionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for region_choice") + } + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) RegionChoiceAzureRegionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_AzureRegion, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for azure_region") + } + return oValidatorFn_AzureRegion, nil +} +func (v *ValidateReplaceSpecType) RegionChoiceAlternateRegionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_AlternateRegion, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for alternate_region") + } + return oValidatorFn_AlternateRegion, nil +} + func (v *ValidateReplaceSpecType) SiteTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { @@ -13222,6 +13292,67 @@ func (v *ValidateReplaceSpecType) WorkerNodesTotalNodesValidationRuleHandler(rul return oValidatorFn_TotalNodes, nil } +func (v *ValidateReplaceSpecType) ResourceGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for resource_group") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) VnetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for vnet") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_views.AzureVnetChoiceTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) MachineTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for machine_type") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) SshKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ssh_key") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) DiskSizeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for disk_size") + } + + return validatorFn, nil +} + func (v *ValidateReplaceSpecType) AddressValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) @@ -13345,6 +13476,24 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["disk_size"]; exists { + + vOpts := append(opts, db.WithValidateField("disk_size")) + if err := fv(ctx, m.GetDiskSize(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -13381,6 +13530,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["machine_type"]; exists { + + vOpts := append(opts, db.WithValidateField("machine_type")) + if err := fv(ctx, m.GetMachineType(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["offline_survivability_mode"]; exists { vOpts := append(opts, db.WithValidateField("offline_survivability_mode")) @@ -13390,6 +13548,51 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["region_choice"]; exists { + val := m.GetRegionChoice() + vOpts := append(opts, + db.WithValidateField("region_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetRegionChoice().(type) { + case *ReplaceSpecType_AzureRegion: + if fv, exists := v.FldValidators["region_choice.azure_region"]; exists { + val := m.GetRegionChoice().(*ReplaceSpecType_AzureRegion).AzureRegion + vOpts := append(opts, + db.WithValidateField("region_choice"), + db.WithValidateField("azure_region"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_AlternateRegion: + if fv, exists := v.FldValidators["region_choice.alternate_region"]; exists { + val := m.GetRegionChoice().(*ReplaceSpecType_AlternateRegion).AlternateRegion + vOpts := append(opts, + db.WithValidateField("region_choice"), + db.WithValidateField("alternate_region"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["resource_group"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_group")) + if err := fv(ctx, m.GetResourceGroup(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["site_type"]; exists { val := m.GetSiteType() vOpts := append(opts, @@ -13470,6 +13673,24 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["ssh_key"]; exists { + + vOpts := append(opts, db.WithValidateField("ssh_key")) + if err := fv(ctx, m.GetSshKey(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vnet"]; exists { + + vOpts := append(opts, db.WithValidateField("vnet")) + if err := fv(ctx, m.GetVnet(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["worker_nodes"]; exists { val := m.GetWorkerNodes() vOpts := append(opts, @@ -13565,6 +13786,39 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { } v.FldValidators["logs_receiver_choice"] = vFn + vrhRegionChoice := v.RegionChoiceValidationRuleHandler + rulesRegionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRegionChoice(rulesRegionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.region_choice: %s", err) + panic(errMsg) + } + v.FldValidators["region_choice"] = vFn + + vrhRegionChoiceAzureRegion := v.RegionChoiceAzureRegionValidationRuleHandler + rulesRegionChoiceAzureRegion := map[string]string{ + "ves.io.schema.rules.string.max_len": "64", + } + vFnMap["region_choice.azure_region"], err = vrhRegionChoiceAzureRegion(rulesRegionChoiceAzureRegion) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ReplaceSpecType.region_choice_azure_region: %s", err) + panic(errMsg) + } + vrhRegionChoiceAlternateRegion := v.RegionChoiceAlternateRegionValidationRuleHandler + rulesRegionChoiceAlternateRegion := map[string]string{ + "ves.io.schema.rules.string.max_len": "64", + } + vFnMap["region_choice.alternate_region"], err = vrhRegionChoiceAlternateRegion(rulesRegionChoiceAlternateRegion) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ReplaceSpecType.region_choice_alternate_region: %s", err) + panic(errMsg) + } + + v.FldValidators["region_choice.azure_region"] = vFnMap["region_choice.azure_region"] + v.FldValidators["region_choice.alternate_region"] = vFnMap["region_choice.alternate_region"] + vrhSiteType := v.SiteTypeValidationRuleHandler rulesSiteType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", @@ -13611,6 +13865,66 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["worker_nodes.nodes_per_az"] = vFnMap["worker_nodes.nodes_per_az"] v.FldValidators["worker_nodes.total_nodes"] = vFnMap["worker_nodes.total_nodes"] + vrhResourceGroup := v.ResourceGroupValidationRuleHandler + rulesResourceGroup := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + "ves.io.schema.rules.string.min_len": "1", + } + vFn, err = vrhResourceGroup(rulesResourceGroup) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.resource_group: %s", err) + panic(errMsg) + } + v.FldValidators["resource_group"] = vFn + + vrhVnet := v.VnetValidationRuleHandler + rulesVnet := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhVnet(rulesVnet) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.vnet: %s", err) + panic(errMsg) + } + v.FldValidators["vnet"] = vFn + + vrhMachineType := v.MachineTypeValidationRuleHandler + rulesMachineType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhMachineType(rulesMachineType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.machine_type: %s", err) + panic(errMsg) + } + v.FldValidators["machine_type"] = vFn + + vrhSshKey := v.SshKeyValidationRuleHandler + rulesSshKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", + } + vFn, err = vrhSshKey(rulesSshKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.ssh_key: %s", err) + panic(errMsg) + } + v.FldValidators["ssh_key"] = vFn + + vrhDiskSize := v.DiskSizeValidationRuleHandler + rulesDiskSize := map[string]string{ + "ves.io.schema.rules.uint32.lte": "4095", + } + vFn, err = vrhDiskSize(rulesDiskSize) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.disk_size: %s", err) + panic(errMsg) + } + v.FldValidators["disk_size"] = vFn + vrhAddress := v.AddressValidationRuleHandler rulesAddress := map[string]string{ "ves.io.schema.rules.string.max_len": "256", @@ -13639,6 +13953,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -14349,6 +14665,7 @@ func (m *AzureVnetIngressEgressGwARReplaceType) fromAzureVnetIngressEgressGwARTy m.GetHubChoiceFromAzureVnetIngressEgressGwARType(f) m.GetInsideStaticRouteChoiceFromAzureVnetIngressEgressGwARType(f) m.GetNetworkPolicyChoiceFromAzureVnetIngressEgressGwARType(f) + m.Node = f.GetNode() m.GetOutsideStaticRouteChoiceFromAzureVnetIngressEgressGwARType(f) m.PerformanceEnhancementMode = f.GetPerformanceEnhancementMode() m.GetSiteMeshGroupChoiceFromAzureVnetIngressEgressGwARType(f) @@ -14375,6 +14692,7 @@ func (m *AzureVnetIngressEgressGwARReplaceType) toAzureVnetIngressEgressGwARType m1.SetHubChoiceToAzureVnetIngressEgressGwARType(f) m1.SetInsideStaticRouteChoiceToAzureVnetIngressEgressGwARType(f) m1.SetNetworkPolicyChoiceToAzureVnetIngressEgressGwARType(f) + f.Node = m1.Node m1.SetOutsideStaticRouteChoiceToAzureVnetIngressEgressGwARType(f) f.PerformanceEnhancementMode = m1.PerformanceEnhancementMode m1.SetSiteMeshGroupChoiceToAzureVnetIngressEgressGwARType(f) @@ -15577,6 +15895,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.CustomDns = f.GetCustomDns() m.GetDeploymentFromGlobalSpecType(f) m.DiskSize = f.GetDiskSize() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MachineType = f.GetMachineType() m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() @@ -15612,6 +15931,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.CustomDns = m1.CustomDns m1.SetDeploymentToGlobalSpecType(f) f.DiskSize = m1.DiskSize + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MachineType = m1.MachineType f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode @@ -15892,6 +16212,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GetDeploymentFromGlobalSpecType(f) m.DiskSize = f.GetDiskSize() m.ErrorDescription = f.GetErrorDescription() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MachineType = f.GetMachineType() m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() @@ -15935,6 +16256,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m1.SetDeploymentToGlobalSpecType(f) f.DiskSize = m1.DiskSize f.ErrorDescription = m1.ErrorDescription + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MachineType = m1.MachineType f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode @@ -16068,6 +16390,41 @@ func (r *ReplaceSpecType) GetLogsReceiverChoiceFromGlobalSpecType(o *GlobalSpecT return nil } +// create setters in ReplaceSpecType from GlobalSpecType for oneof fields +func (r *ReplaceSpecType) SetRegionChoiceToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.RegionChoice.(type) { + case nil: + o.RegionChoice = nil + + case *ReplaceSpecType_AlternateRegion: + o.RegionChoice = &GlobalSpecType_AlternateRegion{AlternateRegion: of.AlternateRegion} + + case *ReplaceSpecType_AzureRegion: + o.RegionChoice = &GlobalSpecType_AzureRegion{AzureRegion: of.AzureRegion} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + +func (r *ReplaceSpecType) GetRegionChoiceFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.RegionChoice.(type) { + case nil: + r.RegionChoice = nil + + case *GlobalSpecType_AlternateRegion: + r.RegionChoice = &ReplaceSpecType_AlternateRegion{AlternateRegion: of.AlternateRegion} + + case *GlobalSpecType_AzureRegion: + r.RegionChoice = &ReplaceSpecType_AzureRegion{AzureRegion: of.AzureRegion} + + default: + return fmt.Errorf("Unknown oneof field %T", of) + } + return nil +} + // create setters in ReplaceSpecType from GlobalSpecType for oneof fields func (r *ReplaceSpecType) SetSiteTypeToGlobalSpecType(o *GlobalSpecType) error { switch of := r.SiteType.(type) { @@ -16231,9 +16588,16 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.Coordinates = f.GetCoordinates() m.CustomDns = f.GetCustomDns() m.GetDeploymentFromGlobalSpecType(f) + m.DiskSize = f.GetDiskSize() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) + m.MachineType = f.GetMachineType() m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() + m.GetRegionChoiceFromGlobalSpecType(f) + m.ResourceGroup = f.GetResourceGroup() m.GetSiteTypeFromGlobalSpecType(f) + m.SshKey = f.GetSshKey() + m.Vnet = f.GetVnet() m.GetWorkerNodesFromGlobalSpecType(f) } @@ -16257,9 +16621,16 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Coordinates = m1.Coordinates f.CustomDns = m1.CustomDns m1.SetDeploymentToGlobalSpecType(f) + f.DiskSize = m1.DiskSize + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) + f.MachineType = m1.MachineType f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode + m1.SetRegionChoiceToGlobalSpecType(f) + f.ResourceGroup = m1.ResourceGroup m1.SetSiteTypeToGlobalSpecType(f) + f.SshKey = m1.SshKey + f.Vnet = m1.Vnet m1.SetWorkerNodesToGlobalSpecType(f) } diff --git a/pbgo/extschema/schema/views/bot_defense_app_infrastructure/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/bot_defense_app_infrastructure/crudapi/api.vesapi.go index cc052d143..db3263b29 100644 --- a/pbgo/extschema/schema/views/bot_defense_app_infrastructure/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/bot_defense_app_infrastructure/crudapi/api.vesapi.go @@ -3209,10 +3209,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/bot_defense_app_infrastructure/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/bot_defense_app_infrastructure/public_crudapi.vesapi.go index 0e53458a6..e72e62891 100644 --- a/pbgo/extschema/schema/views/bot_defense_app_infrastructure/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/bot_defense_app_infrastructure/public_crudapi.vesapi.go @@ -2893,10 +2893,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2953,10 +2957,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3015,10 +3023,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/api.vesapi.go index 0cdc3e90a..3c2046b0d 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/api.vesapi.go @@ -2656,6 +2656,547 @@ var APISwaggerJSON string = `{ } }, "definitions": { + "app_firewallAppFirewallViolationType": { + "type": "string", + "description": "List of all supported Violation Types\n\nVIOL_NONE\nVIOL_FILETYPE\nVIOL_METHOD\nVIOL_MANDATORY_HEADER\nVIOL_HTTP_RESPONSE_STATUS\nVIOL_REQUEST_MAX_LENGTH\nVIOL_FILE_UPLOAD\nVIOL_FILE_UPLOAD_IN_BODY\nVIOL_XML_MALFORMED\nVIOL_JSON_MALFORMED\nVIOL_ASM_COOKIE_MODIFIED\nVIOL_HTTP_PROTOCOL_MULTIPLE_HOST_HEADERS\nVIOL_HTTP_PROTOCOL_BAD_HOST_HEADER_VALUE\nVIOL_HTTP_PROTOCOL_UNPARSABLE_REQUEST_CONTENT\nVIOL_HTTP_PROTOCOL_NULL_IN_REQUEST\nVIOL_HTTP_PROTOCOL_BAD_HTTP_VERSION\nVIOL_HTTP_PROTOCOL_CRLF_CHARACTERS_BEFORE_REQUEST_START\nVIOL_HTTP_PROTOCOL_NO_HOST_HEADER_IN_HTTP_1_1_REQUEST\nVIOL_HTTP_PROTOCOL_BAD_MULTIPART_PARAMETERS_PARSING\nVIOL_HTTP_PROTOCOL_SEVERAL_CONTENT_LENGTH_HEADERS\nVIOL_HTTP_PROTOCOL_CONTENT_LENGTH_SHOULD_BE_A_POSITIVE_NUMBER\nVIOL_EVASION_DIRECTORY_TRAVERSALS\nVIOL_MALFORMED_REQUEST\nVIOL_EVASION_MULTIPLE_DECODING\nVIOL_DATA_GUARD\nVIOL_EVASION_APACHE_WHITESPACE\nVIOL_COOKIE_MODIFIED\nVIOL_EVASION_IIS_UNICODE_CODEPOINTS\nVIOL_EVASION_IIS_BACKSLASHES\nVIOL_EVASION_PERCENT_U_DECODING\nVIOL_EVASION_BARE_BYTE_DECODING\nVIOL_EVASION_BAD_UNESCAPE\nVIOL_HTTP_PROTOCOL_BAD_MULTIPART_FORMDATA_REQUEST_PARSING\nVIOL_HTTP_PROTOCOL_BODY_IN_GET_OR_HEAD_REQUEST\nVIOL_HTTP_PROTOCOL_HIGH_ASCII_CHARACTERS_IN_HEADERS\nVIOL_ENCODING\nVIOL_COOKIE_MALFORMED\nVIOL_GRAPHQL_FORMAT\nVIOL_GRAPHQL_MALFORMED\nVIOL_GRAPHQL_INTROSPECTION_QUERY", + "title": "App Firewall Violation Type", + "enum": [ + "VIOL_NONE", + "VIOL_FILETYPE", + "VIOL_METHOD", + "VIOL_MANDATORY_HEADER", + "VIOL_HTTP_RESPONSE_STATUS", + "VIOL_REQUEST_MAX_LENGTH", + "VIOL_FILE_UPLOAD", + "VIOL_FILE_UPLOAD_IN_BODY", + "VIOL_XML_MALFORMED", + "VIOL_JSON_MALFORMED", + "VIOL_ASM_COOKIE_MODIFIED", + "VIOL_HTTP_PROTOCOL_MULTIPLE_HOST_HEADERS", + "VIOL_HTTP_PROTOCOL_BAD_HOST_HEADER_VALUE", + "VIOL_HTTP_PROTOCOL_UNPARSABLE_REQUEST_CONTENT", + "VIOL_HTTP_PROTOCOL_NULL_IN_REQUEST", + "VIOL_HTTP_PROTOCOL_BAD_HTTP_VERSION", + "VIOL_HTTP_PROTOCOL_CRLF_CHARACTERS_BEFORE_REQUEST_START", + "VIOL_HTTP_PROTOCOL_NO_HOST_HEADER_IN_HTTP_1_1_REQUEST", + "VIOL_HTTP_PROTOCOL_BAD_MULTIPART_PARAMETERS_PARSING", + "VIOL_HTTP_PROTOCOL_SEVERAL_CONTENT_LENGTH_HEADERS", + "VIOL_HTTP_PROTOCOL_CONTENT_LENGTH_SHOULD_BE_A_POSITIVE_NUMBER", + "VIOL_EVASION_DIRECTORY_TRAVERSALS", + "VIOL_MALFORMED_REQUEST", + "VIOL_EVASION_MULTIPLE_DECODING", + "VIOL_DATA_GUARD", + "VIOL_EVASION_APACHE_WHITESPACE", + "VIOL_COOKIE_MODIFIED", + "VIOL_EVASION_IIS_UNICODE_CODEPOINTS", + "VIOL_EVASION_IIS_BACKSLASHES", + "VIOL_EVASION_PERCENT_U_DECODING", + "VIOL_EVASION_BARE_BYTE_DECODING", + "VIOL_EVASION_BAD_UNESCAPE", + "VIOL_HTTP_PROTOCOL_BAD_MULTIPART_FORMDATA_REQUEST_PARSING", + "VIOL_HTTP_PROTOCOL_BODY_IN_GET_OR_HEAD_REQUEST", + "VIOL_HTTP_PROTOCOL_HIGH_ASCII_CHARACTERS_IN_HEADERS", + "VIOL_ENCODING", + "VIOL_COOKIE_MALFORMED", + "VIOL_GRAPHQL_FORMAT", + "VIOL_GRAPHQL_MALFORMED", + "VIOL_GRAPHQL_INTROSPECTION_QUERY" + ], + "default": "VIOL_NONE", + "x-displayname": "App Firewall Violation Type", + "x-ves-proto-enum": "ves.io.schema.app_firewall.AppFirewallViolationType" + }, + "app_firewallAttackType": { + "type": "string", + "description": "List of all Attack Types\n\nATTACK_TYPE_NONE\nATTACK_TYPE_NON_BROWSER_CLIENT\nATTACK_TYPE_OTHER_APPLICATION_ATTACKS\nATTACK_TYPE_TROJAN_BACKDOOR_SPYWARE\nATTACK_TYPE_DETECTION_EVASION\nATTACK_TYPE_VULNERABILITY_SCAN\nATTACK_TYPE_ABUSE_OF_FUNCTIONALITY\nATTACK_TYPE_AUTHENTICATION_AUTHORIZATION_ATTACKS\nATTACK_TYPE_BUFFER_OVERFLOW\nATTACK_TYPE_PREDICTABLE_RESOURCE_LOCATION\nATTACK_TYPE_INFORMATION_LEAKAGE\nATTACK_TYPE_DIRECTORY_INDEXING\nATTACK_TYPE_PATH_TRAVERSAL\nATTACK_TYPE_XPATH_INJECTION\nATTACK_TYPE_LDAP_INJECTION\nATTACK_TYPE_SERVER_SIDE_CODE_INJECTION\nATTACK_TYPE_COMMAND_EXECUTION\nATTACK_TYPE_SQL_INJECTION\nATTACK_TYPE_CROSS_SITE_SCRIPTING\nATTACK_TYPE_DENIAL_OF_SERVICE\nATTACK_TYPE_HTTP_PARSER_ATTACK\nATTACK_TYPE_SESSION_HIJACKING\nATTACK_TYPE_HTTP_RESPONSE_SPLITTING\nATTACK_TYPE_FORCEFUL_BROWSING\nATTACK_TYPE_REMOTE_FILE_INCLUDE\nATTACK_TYPE_MALICIOUS_FILE_UPLOAD\nATTACK_TYPE_GRAPHQL_PARSER_ATTACK", + "title": "AttackType", + "enum": [ + "ATTACK_TYPE_NONE", + "ATTACK_TYPE_NON_BROWSER_CLIENT", + "ATTACK_TYPE_OTHER_APPLICATION_ATTACKS", + "ATTACK_TYPE_TROJAN_BACKDOOR_SPYWARE", + "ATTACK_TYPE_DETECTION_EVASION", + "ATTACK_TYPE_VULNERABILITY_SCAN", + "ATTACK_TYPE_ABUSE_OF_FUNCTIONALITY", + "ATTACK_TYPE_AUTHENTICATION_AUTHORIZATION_ATTACKS", + "ATTACK_TYPE_BUFFER_OVERFLOW", + "ATTACK_TYPE_PREDICTABLE_RESOURCE_LOCATION", + "ATTACK_TYPE_INFORMATION_LEAKAGE", + "ATTACK_TYPE_DIRECTORY_INDEXING", + "ATTACK_TYPE_PATH_TRAVERSAL", + "ATTACK_TYPE_XPATH_INJECTION", + "ATTACK_TYPE_LDAP_INJECTION", + "ATTACK_TYPE_SERVER_SIDE_CODE_INJECTION", + "ATTACK_TYPE_COMMAND_EXECUTION", + "ATTACK_TYPE_SQL_INJECTION", + "ATTACK_TYPE_CROSS_SITE_SCRIPTING", + "ATTACK_TYPE_DENIAL_OF_SERVICE", + "ATTACK_TYPE_HTTP_PARSER_ATTACK", + "ATTACK_TYPE_SESSION_HIJACKING", + "ATTACK_TYPE_HTTP_RESPONSE_SPLITTING", + "ATTACK_TYPE_FORCEFUL_BROWSING", + "ATTACK_TYPE_REMOTE_FILE_INCLUDE", + "ATTACK_TYPE_MALICIOUS_FILE_UPLOAD", + "ATTACK_TYPE_GRAPHQL_PARSER_ATTACK" + ], + "default": "ATTACK_TYPE_NONE", + "x-displayname": "Attack Types", + "x-ves-proto-enum": "ves.io.schema.app_firewall.AttackType" + }, + "app_typeAPIEndpoint": { + "type": "object", + "description": "x-required\nThe rule is applied only for the specified api endpoints.", + "title": "api endpoint", + "x-displayname": "API Endpoint", + "x-ves-proto-message": "ves.io.schema.app_type.APIEndpoint", + "properties": { + "api_endpoint_path": { + "type": "string", + "description": " The rule is applied only for the specified api endpoints.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "api endpoint path", + "maxLength": 1024, + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" + } + }, + "methods": { + "type": "array", + "description": " List of methods values to match against.\n\nExample: - \"['GET', 'POST', 'DELETE']\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Methods", + "x-ves-example": "['GET', 'POST', 'DELETE']", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "app_typeBuiltInSensitiveDataType": { + "type": "object", + "description": "x-example: \"[EMAIL, CC]\"\nMessage wrapper for built-in sensitive data type.", + "title": "BuiltInSensitiveDataType", + "x-displayname": "Built-In Sensitive Data Type", + "x-ves-proto-message": "ves.io.schema.app_type.BuiltInSensitiveDataType", + "properties": { + "name": { + "type": "string", + "description": " Built-in rule for sensitive data detection.\n\nExample: - \"[EMAIL, CC]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.min_len: 1\n", + "title": "name", + "minLength": 1, + "x-displayname": "Name", + "x-ves-example": "[EMAIL, CC]", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "app_typeCustomDataDetectionConfig": { + "type": "object", + "description": "The custom data detection config specifies targets, scopes \u0026 the pattern to be detected.", + "title": "CustomDataDetectionConfig", + "x-displayname": "Custom Data Detection Config", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-pattern_choice": "[\"key_pattern\",\"key_value_pattern\",\"value_pattern\"]", + "x-ves-oneof-field-section_choice": "[\"all_request_sections\",\"all_response_sections\",\"all_sections\",\"custom_sections\"]", + "x-ves-oneof-field-target_choice": "[\"any_target\",\"api_endpoint_target\"]", + "x-ves-proto-message": "ves.io.schema.app_type.CustomDataDetectionConfig", + "properties": { + "all_request_sections": { + "description": "Exclusive with [all_response_sections all_sections custom_sections]\n", + "title": "all_request_sections", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "All Request" + }, + "all_response_sections": { + "description": "Exclusive with [all_request_sections all_sections custom_sections]\n", + "title": "all_response_sections", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "All Response" + }, + "all_sections": { + "description": "Exclusive with [all_request_sections all_response_sections custom_sections]\n", + "title": "all_sections", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "All Request \u0026 Response" + }, + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "any_target": { + "description": "Exclusive with [api_endpoint_target]\n The rule will be applied for all requests on this LB.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "All API Endpoints" + }, + "api_endpoint_target": { + "description": "Exclusive with [any_target]\n The rule is applied only for the specified api endpoints.\n\nExample: - \"/endpoint1\"-", + "title": "api endpoint target", + "$ref": "#/definitions/app_typeAPIEndpoint", + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1" + }, + "custom_sections": { + "description": "Exclusive with [all_request_sections all_response_sections all_sections]\n", + "title": "sections", + "$ref": "#/definitions/app_typeCustomSections", + "x-displayname": "Custom Sections" + }, + "key_pattern": { + "description": "Exclusive with [key_value_pattern value_pattern]\n Search for pattern across all field names in the specified sections.", + "title": "key pattern", + "$ref": "#/definitions/app_typeKeyPattern", + "x-displayname": "Key Pattern" + }, + "key_value_pattern": { + "description": "Exclusive with [key_pattern value_pattern]\n Search for specific field and value patterns in the specified sections.", + "title": "key-value pattern", + "$ref": "#/definitions/app_typeKeyValuePattern", + "x-displayname": "Key-Value Pattern" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + }, + "value_pattern": { + "description": "Exclusive with [key_pattern key_value_pattern]\n Search for pattern across all field values in the specified sections.", + "title": "value pattern", + "$ref": "#/definitions/app_typeValuePattern", + "x-displayname": "Value Pattern" + } + } + }, + "app_typeCustomSections": { + "type": "object", + "description": "Request \u0026 Response Sections.", + "title": "CustomSections", + "x-displayname": "Custom Sections", + "x-ves-proto-message": "ves.io.schema.app_type.CustomSections", + "properties": { + "custom_sections": { + "type": "array", + "description": " Request \u0026 Response Sections.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.unique: true\n", + "title": "custom_sections", + "items": { + "$ref": "#/definitions/schemaHttpSections" + }, + "x-displayname": "Custom Sections", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "app_typeCustomSensitiveDataDetectionRule": { + "type": "object", + "description": "Custom Sensitive Data Rule Definition.", + "title": "CustomSensitiveDataRule", + "x-displayname": "Custom Sensitive Data Detection Rule", + "x-ves-proto-message": "ves.io.schema.app_type.CustomSensitiveDataDetectionRule", + "properties": { + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "sensitive_data_detection_config": { + "description": " The custom data detection config specifies targets, scopes \u0026 the pattern to be detected.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "sensitive_data_detection_config", + "$ref": "#/definitions/app_typeCustomDataDetectionConfig", + "x-displayname": "Sensitive Data Detection Config", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "sensitive_data_type": { + "description": " If the pattern is detected, the request is labeled with specified sensitive data type.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "sensitive_data_type", + "$ref": "#/definitions/app_typeCustomSensitiveDataType", + "x-displayname": "Sensitive Data Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "app_typeCustomSensitiveDataType": { + "type": "object", + "description": "The type/category of the sensitive data this rule detects. e.g. Email, Credit Card etc.", + "title": "CustomSensitiveDataType", + "x-displayname": "Custom Sensitive Data Type", + "x-ves-proto-message": "ves.io.schema.app_type.CustomSensitiveDataType", + "properties": { + "type": { + "type": "string", + "description": " The request is labeled as specified sensitive data type.\n\nExample: - \"EMAIL\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.ves_object_name: true\n", + "title": "sensitive data type", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Type", + "x-ves-example": "EMAIL", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.ves_object_name": "true" + } + } + } + }, + "app_typeDiscoveredAPISettings": { + "type": "object", + "description": "x-example: \"2\"\nConfigure Discovered API Settings.", + "title": "DiscoveredAPISettings", + "x-displayname": "Discovered API Settings", + "x-ves-proto-message": "ves.io.schema.app_type.DiscoveredAPISettings", + "properties": { + "purge_duration_for_inactive_discovered_apis": { + "type": "integer", + "description": " Inactive discovered API will be deleted after configured duration.\n\nExample: - \"2\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 7\n", + "title": "purge_duration_for_inactive_discovered_apis", + "format": "int64", + "x-displayname": "Purge Duration for Inactive Discovered APIs", + "x-ves-example": "2", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "7" + } + } + } + }, + "app_typeKeyPattern": { + "type": "object", + "description": "Pattern to detect. Could be exact match or regex match.", + "title": "Key Pattern", + "x-displayname": "Key Pattern", + "x-ves-oneof-field-key_pattern": "[\"exact_value\",\"regex_value\"]", + "x-ves-proto-message": "ves.io.schema.app_type.KeyPattern", + "properties": { + "exact_value": { + "type": "string", + "description": "Exclusive with [regex_value]\n Search for values with exact match.\n\nExample: - \"x-volt-header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n", + "title": "exact value", + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "x-volt-header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true" + } + }, + "regex_value": { + "type": "string", + "description": "Exclusive with [exact_value]\n Search for values matching this regular expression.\n\nExample: - \"'^new.*$', 'san f.*', '.* del .*'\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n ves.io.schema.rules.string.regex: true\n", + "title": "regex value", + "maxLength": 256, + "x-displayname": "Regex Value", + "x-ves-example": "'^new.*$', 'san f.*', '.* del .*'", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "app_typeKeyValuePattern": { + "type": "object", + "description": "Search for specific key \u0026 value patterns in the specified sections.", + "title": "Key-Value Pattern", + "x-displayname": "Key \u0026 Value Pattern", + "x-ves-proto-message": "ves.io.schema.app_type.KeyValuePattern", + "properties": { + "key_pattern": { + "description": " Pattern for key/field.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "key_pattern", + "$ref": "#/definitions/app_typeKeyPattern", + "x-displayname": "Key Pattern", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "value_pattern": { + "description": " Pattern for value.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "value_pattern", + "$ref": "#/definitions/app_typeValuePattern", + "x-displayname": "Value Pattern", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "app_typeSensitiveDataDetectionRules": { + "type": "object", + "description": "Rules to manage/configure sensitive data detection in requests and/or response sections.", + "title": "Sensitive Data Detection Rules", + "x-displayname": "Sensitive Data Detection Rules", + "x-ves-proto-message": "ves.io.schema.app_type.SensitiveDataDetectionRules", + "properties": { + "custom_sensitive_data_detection_rules": { + "type": "array", + "description": " Rules to detect custom sensitive data in requests and/or responses sections.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.unique: true\n", + "title": "custom sensitive data rules", + "maxItems": 100, + "items": { + "$ref": "#/definitions/app_typeCustomSensitiveDataDetectionRule" + }, + "x-displayname": "Defined Custom Sensitive Data Types", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "disabled_built_in_rules": { + "type": "array", + "description": " List of disabled built-in sensitive data detection rules.\n\nExample: - \"[EMAIL, CC]\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.unique: true\n", + "title": "disabled_built_in_rules", + "maxItems": 100, + "items": { + "$ref": "#/definitions/app_typeBuiltInSensitiveDataType" + }, + "x-displayname": "Disabled Built-In Sensitive Data Types", + "x-ves-example": "[EMAIL, CC]", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "app_typeValuePattern": { + "type": "object", + "description": "Pattern to detect. Could be exact match or regex match.", + "title": "Value Pattern", + "x-displayname": "Value Pattern", + "x-ves-oneof-field-value_pattern": "[\"exact_value\",\"regex_value\"]", + "x-ves-proto-message": "ves.io.schema.app_type.ValuePattern", + "properties": { + "exact_value": { + "type": "string", + "description": "Exclusive with [regex_value]\n Pattern value to be detected.\n\nExample: - \"x-volt-header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n", + "title": "exact value", + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "x-volt-header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true" + } + }, + "regex_value": { + "type": "string", + "description": "Exclusive with [exact_value]\n Regular expression for this pattern.\n\nExample: - \"'^new.*$', 'san f.*', '.* del .*'\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n ves.io.schema.rules.string.regex: true\n", + "title": "regex value", + "maxLength": 256, + "x-displayname": "Regex Value", + "x-ves-example": "'^new.*$', 'san f.*', '.* del .*'", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "cdn_loadbalancerApiProtection": { + "type": "object", + "description": "API Definition based on the imported swagger specs", + "title": "API Definition", + "x-displayname": "API Definition", + "x-ves-oneof-field-api_definition_choice": "[\"api_specification\",\"api_specification_on_cache_miss\",\"disable_api_definition\"]", + "x-ves-oneof-field-api_discovery_choice": "[\"api_discovery_on_cache_miss\",\"disable_api_discovery\",\"enable_api_discovery\"]", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.ApiProtection", + "properties": { + "api_discovery_on_cache_miss": { + "description": "Exclusive with [disable_api_discovery enable_api_discovery]\n Enable api discovery only on cache miss in this distribution", + "title": "Enable API Discovery Only on Cache Miss", + "$ref": "#/definitions/common_wafApiDiscoverySetting", + "x-displayname": "Enable Only on Cache Miss" + }, + "api_protection_rules": { + "description": " API Protection Rules can be defined in two categories.\n The first category includes fine-grained rules, per API path and methods.\n The second category includes rules per API groups or Server URLs.\n If request matches any rule in the first category, second category rules are not evaluated.\n Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.", + "title": "API Protection rules", + "$ref": "#/definitions/common_wafAPIProtectionRules", + "x-displayname": "API Protection Rules" + }, + "api_specification": { + "description": "Exclusive with [api_specification_on_cache_miss disable_api_definition]\n Specify API definition and OpenAPI Validation", + "title": "API Specification", + "$ref": "#/definitions/common_wafAPISpecificationSettings", + "x-displayname": "Enable for All Requests" + }, + "api_specification_on_cache_miss": { + "description": "Exclusive with [api_specification disable_api_definition]\n Enable API definition and OpenAPI Validation only on cache miss in this distribution", + "title": "Enable API Specification Only on Cache Miss", + "$ref": "#/definitions/common_wafAPISpecificationSettings", + "x-displayname": "Enable Only on Cache Miss" + }, + "disable_api_definition": { + "description": "Exclusive with [api_specification api_specification_on_cache_miss]\n API Definition is not currently used for this load balancer", + "title": "Don not use API Definition", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "disable_api_discovery": { + "description": "Exclusive with [api_discovery_on_cache_miss enable_api_discovery]\n Disable api discovery for this distribution", + "title": "Disable API discovery", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_api_discovery": { + "description": "Exclusive with [api_discovery_on_cache_miss disable_api_discovery]\n Enable api discovery for all requests in this distribution", + "title": "Enable API discovery", + "$ref": "#/definitions/common_wafApiDiscoverySetting", + "x-displayname": "Enable for All Requests" + }, + "jwt_validation": { + "description": " JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\n JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired\n tokens or tokens that are not yet valid.", + "title": "JWT Validation", + "$ref": "#/definitions/common_wafJWTValidation", + "x-displayname": "JWT Validation" + } + } + }, "cdn_loadbalancerAuthenticationOptions": { "type": "object", "description": "Options to authenticate incoming client requests", @@ -2665,19 +3206,19 @@ var APISwaggerJSON string = `{ "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions", "properties": { "custom": { - "description": "Exclusive with [disable_auth jwt]\n Enable Custom Authenticaiton", + "description": "Exclusive with [disable_auth jwt]\n Enable Custom Authentication", "title": "Custom Authentication", "$ref": "#/definitions/cdn_loadbalancerCDNCustomAuthentication", "x-displayname": "Custom Authentication" }, "disable_auth": { - "description": "Exclusive with [custom jwt]\n No Authenticaiton", + "description": "Exclusive with [custom jwt]\n No Authentication", "title": "No Authentication", "$ref": "#/definitions/schemaEmpty", "x-displayname": "No Authentication" }, "jwt": { - "description": "Exclusive with [custom disable_auth]\n Enable JWT Authenticaiton", + "description": "Exclusive with [custom disable_auth]\n Enable JWT Authentication", "title": "JWT Token Authentication", "$ref": "#/definitions/policyJwtTokenAuthOptions", "x-displayname": "JWT Token Authentication" @@ -3432,6 +3973,174 @@ var APISwaggerJSON string = `{ } } }, + "cdn_loadbalancerCommonSecurityControls": { + "type": "object", + "title": "Common Security Controls", + "x-displayname": "Common Security Controls", + "x-ves-oneof-field-challenge_type": "[\"captcha_challenge\",\"challenge_on_cache_miss\",\"enable_challenge\",\"js_challenge\",\"no_challenge\",\"policy_based_challenge\"]", + "x-ves-oneof-field-ip_reputation_choice": "[\"disable_ip_reputation\",\"enable_ip_reputation\",\"ip_reputation_on_cache_miss\"]", + "x-ves-oneof-field-malicious_user_detection_choice": "[\"disable_malicious_user_detection\",\"enable_malicious_user_detection\",\"malicious_user_detection_on_cache_miss\"]", + "x-ves-oneof-field-rate_limit_choice": "[\"api_rate_limit\",\"disable_rate_limit\",\"rate_limit\"]", + "x-ves-oneof-field-service_policy_choice": "[\"active_service_policies\",\"no_service_policies\",\"service_policies_from_namespace\"]", + "x-ves-oneof-field-user_id_choice": "[\"user_id_client_ip\",\"user_identification\"]", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.CommonSecurityControls", + "properties": { + "active_service_policies": { + "description": "Exclusive with [no_service_policies service_policies_from_namespace]\n Apply the specified list of service policies and bypass the namespace service policy set", + "title": "Apply Specified Service Policies", + "$ref": "#/definitions/common_wafServicePolicyList", + "x-displayname": "Apply Specified Service Policies" + }, + "api_rate_limit": { + "description": "Exclusive with [disable_rate_limit rate_limit]\n Define rate limiting for one or more API endpoints", + "title": "Rate Limiting Parameters", + "$ref": "#/definitions/common_wafAPIRateLimit", + "x-displayname": "API Rate Limit" + }, + "blocked_clients": { + "type": "array", + "description": " Define rules to block IP Prefixes or AS numbers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Client Blocking Rules", + "maxItems": 256, + "items": { + "$ref": "#/definitions/common_wafSimpleClientSrcRule" + }, + "x-displayname": "Client Blocking Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "captcha_challenge": { + "description": "Exclusive with [challenge_on_cache_miss enable_challenge js_challenge no_challenge policy_based_challenge]\n Configure Captcha challenge on this load balancer", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge" + }, + "challenge_on_cache_miss": { + "description": "Exclusive with [captcha_challenge enable_challenge js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users only on cache miss in this load balancer", + "title": "Enable Challenge Only on Cache Miss", + "$ref": "#/definitions/common_wafEnableChallenge", + "x-displayname": "Enable Only on Cache Miss" + }, + "cors_policy": { + "description": " Cross-Origin Resource Sharing requests configuration\n\n CORS is a mechanism that uses additional HTTP headers to tell a browser to let\n a web application running at one origin (domain) have permission to access selected\n resources from a server at a different origin", + "title": "cors_policy", + "$ref": "#/definitions/schemaCorsPolicy", + "x-displayname": "CORS Policy" + }, + "disable_ip_reputation": { + "description": "Exclusive with [enable_ip_reputation ip_reputation_on_cache_miss]\n No IP reputation configured this distribution", + "title": "disable_ip_reputation", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "disable_malicious_user_detection": { + "description": "Exclusive with [enable_malicious_user_detection malicious_user_detection_on_cache_miss]\n Disable malicious user detection for this distribution", + "title": "Disable malicious user detection", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "disable_rate_limit": { + "description": "Exclusive with [api_rate_limit rate_limit]\n Rate limiting is not currently enabled for this load balancer", + "title": "Disable Rate Limiting", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users for this load balancer", + "title": "Enable", + "$ref": "#/definitions/common_wafEnableChallenge", + "x-displayname": "Enable for All Requests" + }, + "enable_ip_reputation": { + "description": "Exclusive with [disable_ip_reputation ip_reputation_on_cache_miss]\n Enable IP reputation for all requests in this distribution", + "title": "enable_ip_reputation", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", + "x-displayname": "Enable for All Requests" + }, + "enable_malicious_user_detection": { + "description": "Exclusive with [disable_malicious_user_detection malicious_user_detection_on_cache_miss]\n Enable malicious user detection for all requests in this distribution", + "title": "Enable malicious user detection", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable for All Requests" + }, + "ip_reputation_on_cache_miss": { + "description": "Exclusive with [disable_ip_reputation enable_ip_reputation]\n Enable IP reputation only on cache miss in this distribution", + "title": "Enable Ip Reuputation Only on Cache Miss", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", + "x-displayname": "Enable Only on Cache Miss" + }, + "js_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss enable_challenge no_challenge policy_based_challenge]\n Configure JavaScript challenge on this load balancer", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge" + }, + "malicious_user_detection_on_cache_miss": { + "description": "Exclusive with [disable_malicious_user_detection enable_malicious_user_detection]\n Enable malicious user detection only on cache miss in this distribution", + "title": "Enable Malicious User Detection Only on Cache Miss", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Only on Cache Miss" + }, + "no_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss enable_challenge js_challenge policy_based_challenge]\n No challenge is enabled for this load balancer", + "title": "Disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "no_service_policies": { + "description": "Exclusive with [active_service_policies service_policies_from_namespace]\n Do not apply any service policies i.e. bypass the namespace service policy set", + "title": "Do Not Apply Service Policies", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Do Not Apply Service Policies" + }, + "policy_based_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss enable_challenge js_challenge no_challenge]\n Specifies the settings for policy rule based challenge", + "title": "policy based challenge", + "$ref": "#/definitions/viewscommon_wafPolicyBasedChallenge", + "x-displayname": "Policy Based Challenge" + }, + "rate_limit": { + "description": "Exclusive with [api_rate_limit disable_rate_limit]\n Define custom rate limiting parameters for this load balancer", + "title": "Custom Rate Limiting Parameters", + "$ref": "#/definitions/common_wafRateLimitConfigType", + "x-displayname": "Custom Rate Limiting Parameters" + }, + "service_policies_from_namespace": { + "description": "Exclusive with [active_service_policies no_service_policies]\n Apply the active service policies configured as part of the namespace service policy set", + "title": "Apply Namespace Service Policies", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Apply Namespace Service Policies" + }, + "trusted_clients": { + "type": "array", + "description": " Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Trusted Client Rules", + "maxItems": 256, + "items": { + "$ref": "#/definitions/common_wafSimpleClientSrcRule" + }, + "x-displayname": "Trusted Client Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "user_id_client_ip": { + "description": "Exclusive with [user_identification]\n Use the Client IP address as the user identifier.", + "title": "user_id_client_ip", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Client IP Address" + }, + "user_identification": { + "description": "Exclusive with [user_id_client_ip]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier.", + "title": "user_identification", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "User Identification Policy" + } + } + }, "cdn_loadbalancerDefaultCacheAction": { "type": "object", "description": "This defines a Default Cache Action", @@ -3685,12 +4394,22 @@ var APISwaggerJSON string = `{ "x-displayname": "Security Options", "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType", "properties": { + "api_protection": { + "title": "API Protection", + "$ref": "#/definitions/cdn_loadbalancerApiProtection", + "x-displayname": "API Protection" + }, "auth_options": { "description": " Authentication Options", "title": "authentication", "$ref": "#/definitions/cdn_loadbalancerAuthenticationOptions", "x-displayname": "Authentication Options" }, + "common_security_controls": { + "title": "Common Security Controls", + "$ref": "#/definitions/cdn_loadbalancerCommonSecurityControls", + "x-displayname": "Common Security Controls" + }, "geo_filtering": { "description": " Geo filtering options", "title": "geo_filtering", @@ -3702,6 +4421,12 @@ var APISwaggerJSON string = `{ "title": "ip_filtering", "$ref": "#/definitions/cdn_loadbalancerIpFilteringOptions", "x-displayname": "Client IP filtering Options" + }, + "web_app_firewall": { + "description": " Web Application Firewall", + "title": "Web Application Firewall", + "$ref": "#/definitions/cdn_loadbalancerWebApplicationFirewall", + "x-displayname": "Web Application Firewall" } } }, @@ -3756,492 +4481,2889 @@ var APISwaggerJSON string = `{ } } }, - "cdn_loadbalancercrudapiErrorCode": { - "type": "string", - "enum": [ - "EOK", - "ENOTFOUND", - "EEXISTS", - "EUNKNOWN" - ], - "default": "EOK", - "x-displayname": "", - "x-ves-proto-enum": "ves.io.schema.views.cdn_loadbalancer.crudapi.ErrorCode" - }, - "crudapiObjectCreateReq": { + "cdn_loadbalancerWebApplicationFirewall": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq", + "description": "Web Application Firewall", + "title": "Web Application Firewall", + "x-displayname": "Web Application Firewall", + "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"app_firewall_on_cache_miss\",\"disable_waf\"]", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.WebApplicationFirewall", "properties": { - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" + "app_firewall": { + "description": "Exclusive with [app_firewall_on_cache_miss disable_waf]\n Enable WAF configuration for all requests in this distribution", + "title": "Application Firewall for All Requests", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Enable for All Requests" }, - "spec": { - "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + "app_firewall_on_cache_miss": { + "description": "Exclusive with [app_firewall disable_waf]\n Enable WAF configuration only on cache miss in this distribution", + "title": "Application Firewall Enable Only on Cache Miss", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Enable Only on Cache Miss" }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" - } - } - }, - "crudapiObjectCreateRsp": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateRsp", - "properties": { - "err": { - "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + "csrf_policy": { + "description": " Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf.\n\n The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host.\n\n 1. The origin that caused the user agent to issue the request (source origin).\n 2. The origin that the request is going to (target origin).\n When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid.\n Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).", + "title": "csrf_policy", + "$ref": "#/definitions/schemaCsrfPolicy", + "x-displayname": "Cross-Site Request Forgery Protection" }, - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" + "data_guard_rules": { + "type": "array", + "description": " Data Guard prevents responses from exposing sensitive information by masking the data.\n The system masks credit card numbers and social security numbers leaked from the application from within the http response with a string of asterisks (*).\n Note: App Firewall should be enabled, to use Data Guard feature.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Data Guard Rules", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policySimpleDataGuardRule" + }, + "x-displayname": "Data Guard Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } }, - "object_uid": { - "type": "string" + "disable_waf": { + "description": "Exclusive with [app_firewall app_firewall_on_cache_miss]\n No WAF configuration for this load balancer", + "title": "Disable WAF", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" }, - "spec": { - "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + "graphql_rules": { + "type": "array", + "description": " GraphQL is a query language and server-side runtime for APIs which provides a complete and understandable\n description of the data in API. GraphQL gives clients the power to ask for exactly what they need, makes it\n easier to evolve APIs over time, and enables powerful developer tools. Policy configuration to analyze GraphQL\n queries and prevent GraphQL tailored attacks.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "GraphQL Inspection", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyGraphQLRule" + }, + "x-displayname": "GraphQL Inspection", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" + "protected_cookies": { + "type": "array", + "description": " Allows setting attributes (SameSite, Secure, and HttpOnly) on cookies in responses.\n Cookie Tampering Protection prevents attackers from modifying the value of session cookies.\n For Cookie Tampering Protection, enabling a web app firewall (WAF) is a prerequisite.\n The configured mode of WAF (monitoring or blocking) will be enforced on the request when cookie tampering is identified.\n Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Cookie protection", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaCookieManipulationOptionType" + }, + "x-displayname": "Cookie Protection", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "waf_exclusion_rules": { + "type": "array", + "description": " Define the Signature IDs, Violations, Attack Types and Bot Names that should be excluded from WAF processing on specific match criteria.\n The match criteria include domain, path and method.\n WAF Exclusion rules is a sequential engine where rules are evaluated one after the other.\n It's important to define the correct order for WAF exclusion rules to get the intended result, rules are evaluated from top to bottom in the list.\n For each request, its characteristics are evaluated based on the match criteria in each WAF exclusion rule, starting from the top.\n When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "WAF Exclusion Rules", + "maxItems": 256, + "items": { + "$ref": "#/definitions/policySimpleWafExclusionRule" + }, + "x-displayname": "WAF Exclusion Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } } } }, - "crudapiObjectDeleteRsp": { + "cdn_loadbalancercrudapiErrorCode": { + "type": "string", + "enum": [ + "EOK", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN" + ], + "default": "EOK", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.views.cdn_loadbalancer.crudapi.ErrorCode" + }, + "common_wafAPIEndpointProtectionRule": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectDeleteRsp", + "description": "API Protection Rule for a specific endpoint", + "title": "API Endpoint Protection Rule", + "x-displayname": "API Endpoint Protection Rule", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIEndpointProtectionRule", "properties": { - "err": { - "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + "action": { + "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "action", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", + "x-displayname": "Rule Action", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "api_endpoint_method": { + "description": " The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request.\n The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.", + "title": "method", + "$ref": "#/definitions/policyHttpMethodMatcherType", + "x-displayname": "HTTP Methods" + }, + "api_endpoint_path": { + "type": "string", + "description": " The endpoint (path) of the request.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "api endpoint path", + "maxLength": 1024, + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" + } + }, + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } } } }, - "crudapiObjectGetRsp": { + "common_wafAPIGroupProtectionRule": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectGetRsp", + "description": "API Protection Rule for a group or a base url", + "title": "API Group Protection Rule", + "x-displayname": "API Group Protection Rule", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroupProtectionRule", "properties": { - "ent_backrefs": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" + "action": { + "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "action", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", + "x-displayname": "Rule Action", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" } }, - "err": { - "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" }, - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" + "api_group": { + "type": "string", + "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } }, - "resource_version": { - "type": "string" + "base_path": { + "type": "string", + "description": " Prefix of the request path.\n For example: /v1\n\nExample: - \"/v1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/v1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } }, - "spec": { - "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" }, - "status": { + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + } + } + }, + "common_wafAPIGroups": { + "type": "object", + "title": "api groups", + "x-displayname": "API Groups", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroups", + "properties": { + "api_groups": { "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "api group", + "maxItems": 32, "items": { - "$ref": "#/definitions/cdn_loadbalancerStatusObject" + "type": "string" + }, + "x-displayname": "API Groups", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" } - }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" } } }, - "crudapiObjectListRsp": { + "common_wafAPIProtectionRuleAction": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectListRsp", + "description": "The action to take if the input request matches the rule.", + "title": "API Protection Rule Action", + "x-displayname": "API Protection Rule Action", + "x-ves-oneof-field-action": "[\"allow\",\"deny\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRuleAction", "properties": { - "err": { - "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + "allow": { + "description": "Exclusive with [deny]\n Allow the request to proceed.", + "title": "Allow", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Allow" }, - "items": { + "deny": { + "description": "Exclusive with [allow]\n Deny the request.", + "title": "Deny", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Deny" + } + } + }, + "common_wafAPIProtectionRules": { + "type": "object", + "description": "API Protection Rules", + "title": "API Protection Rules", + "x-displayname": "API Protection Rules", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRules", + "properties": { + "api_endpoint_rules": { "type": "array", + "description": " This category defines specific rules per API endpoints.\n If request matches any of these rules, skipping second category rules.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "api_endpoint_rules", + "maxItems": 20, "items": { - "$ref": "#/definitions/crudapiObjectListRspItem" + "$ref": "#/definitions/common_wafAPIEndpointProtectionRule" + }, + "x-displayname": "API Endpoints", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" } }, - "metadata": { - "$ref": "#/definitions/schemaListMetaType" - }, - "next_page": { - "type": "string", - "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" - }, - "uids": { + "api_groups_rules": { "type": "array", + "description": " This category includes rules per API group or Server URL.\n For API groups, refer to API Definition which includes API groups derived from uploaded swaggers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "api_groups_rules", + "maxItems": 20, "items": { - "type": "string" + "$ref": "#/definitions/common_wafAPIGroupProtectionRule" + }, + "x-displayname": "Server URLs and API Groups", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" } } } }, - "crudapiObjectListRspItem": { + "common_wafAPIRateLimit": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectListRspItem", + "title": "APIRateLimit", + "x-displayname": "APIRateLimit", + "x-ves-oneof-field-ip_allowed_list_choice": "[\"bypass_rate_limiting_rules\",\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIRateLimit", "properties": { - "labels": { - "type": "object" - }, - "metadata": { - "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", - "$ref": "#/definitions/schemaObjectMetaType" - }, - "name": { - "type": "string" - }, - "namespace": { - "type": "string" - }, - "object_uid": { - "type": "string" - }, - "spec": { - "$ref": "#/definitions/viewscdn_loadbalancerSpecType" - }, - "status": { + "api_endpoint_rules": { "type": "array", + "description": " Sets of rules for a specific endpoints.\n Order is matter as it uses first match policy.\n For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "api_endpoint_policy", + "maxItems": 20, "items": { - "$ref": "#/definitions/cdn_loadbalancerStatusObject" + "$ref": "#/definitions/common_wafApiEndpointRule" + }, + "x-displayname": "API Endpoints", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" } }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" + "bypass_rate_limiting_rules": { + "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list no_ip_allowed_list]\n This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", + "title": "bypass_rate_limiting_policy", + "$ref": "#/definitions/common_wafBypassRateLimitingRules", + "x-displayname": "Bypass Rate Limiting" + }, + "custom_ip_allowed_list": { + "description": "Exclusive with [bypass_rate_limiting_rules ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", + "title": "Custom IP list", + "$ref": "#/definitions/common_wafCustomIpAllowedList", + "x-displayname": "IP Allowed List using IP Prefix Set(s)" + }, + "ip_allowed_list": { + "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", + "title": "IP Allowed List", + "$ref": "#/definitions/viewsPrefixStringListType", + "x-displayname": "IP Allowed List" + }, + "no_ip_allowed_list": { + "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No IP Allowed" }, - "tenant": { - "type": "string" + "server_url_rules": { + "type": "array", + "description": " Set of rules for entire domain or base path that contain multiple endpoints.\n Order is matter as it uses first match policy.\n For matching also specific endpoints you can use the API endpoint rules set bellow.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "server_url_policy", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafServerUrlRule" + }, + "x-displayname": "Server URLs", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" + } } } }, - "crudapiObjectReplaceReq": { + "common_wafAPISpecificationSettings": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq", + "description": "Settings for api specification (api definition, OpenAPI validation, etc.)", + "title": "APISpecificationSettings", + "x-displayname": "API Specification and Validation", + "x-ves-oneof-field-validation_target_choice": "[\"validation_all_spec_endpoints\",\"validation_custom_list\",\"validation_disabled\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APISpecificationSettings", "properties": { - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" - }, - "object_uid": { - "type": "string" - }, - "resource_version": { - "type": "string" + "api_definition": { + "description": " Specify API definition which includes application API paths and methods derived from swagger files.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Use API Definition", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "API Definition", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } }, - "spec": { - "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + "validation_all_spec_endpoints": { + "description": "Exclusive with [validation_custom_list validation_disabled]\n Validate all API endpoints specified by the API Inventory.\n All other API endpoints would proceed according to \"Fall Through Mode\"", + "title": "validation_all_spec_endpoints", + "$ref": "#/definitions/common_wafOpenApiValidationAllSpecEndpointsSettings", + "x-displayname": "API Inventory" + }, + "validation_custom_list": { + "description": "Exclusive with [validation_all_spec_endpoints validation_disabled]\n Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other end-points not listed will act according to \"Fall Through Mode\"", + "title": "Custom list", + "$ref": "#/definitions/common_wafValidateApiBySpecRule", + "x-displayname": "Custom List" + }, + "validation_disabled": { + "description": "Exclusive with [validation_all_spec_endpoints validation_custom_list]\n Don't run OpenAPI validation", + "title": "Disabled", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disabled" } } }, - "crudapiObjectReplaceRsp": { + "common_wafApiDiscoverySetting": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceRsp", + "description": "Specifies the settings used for API discovery", + "title": "API Discovery Setting", + "x-displayname": "API Discovery Setting", + "x-ves-displayorder": "1,6,5", + "x-ves-oneof-field-learn_from_redirect_traffic": "[\"disable_learn_from_redirect_traffic\",\"enable_learn_from_redirect_traffic\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiDiscoverySetting", "properties": { - "err": { - "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + "disable_learn_from_redirect_traffic": { + "description": "Exclusive with [enable_learn_from_redirect_traffic]\n Disable learning API patterns from traffic with redirect response codes 3xx", + "title": "Disable learning from redirected request traffic", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Learning From Redirect Traffic" }, - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" + "discovered_api_settings": { + "description": " Configure Discovered API Settings.", + "title": "Discovered API Settings", + "$ref": "#/definitions/app_typeDiscoveredAPISettings", + "x-displayname": "Discovered API Settings" }, - "spec": { - "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + "enable_learn_from_redirect_traffic": { + "description": "Exclusive with [disable_learn_from_redirect_traffic]\n Enable learning API patterns from traffic with redirect response codes 3xx", + "title": "Enable learning from redirected request traffic", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Learning From Redirect Traffic" }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" + "sensitive_data_detection_rules": { + "description": " Manage rules to detect sensitive data in requests and/or response sections.", + "title": "sensitive data rules", + "$ref": "#/definitions/app_typeSensitiveDataDetectionRules", + "x-displayname": "Sensitive Data Detection" } } }, - "http_loadbalancerProxyTypeHttp": { + "common_wafApiEndpointDetails": { "type": "object", - "description": "Choice for selecting HTTP proxy", - "title": "HTTP Choice", - "x-displayname": "HTTP Choice", - "x-ves-displayorder": "1,3", - "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp", + "description": "This defines api endpoint", + "title": "ApiEndpointDetails", + "x-displayname": "API Endpoint", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointDetails", "properties": { - "dns_volterra_managed": { - "type": "boolean", - "description": " DNS records for domains will be managed automatically by F5 Distributed Cloud.\n As a prerequisite, the domain must be delegated to F5 Distributed Cloud using Delegated domain feature\n or a DNS CNAME record should be created in your DNS provider's portal.", - "title": "Manage DNS Domain", - "format": "boolean", - "x-displayname": "Automatically Manage DNS Records" - }, - "port": { - "type": "integer", - "description": "Exclusive with [port_ranges]\n HTTP port to Listen.\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", - "title": "HTTP port to listen", - "format": "int64", - "x-displayname": "HTTP Listen Port", - "x-ves-example": "80", + "methods": { + "type": "array", + "description": " Methods to be matched\n\nExample: - \"GET\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Methods", + "x-ves-example": "GET", "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "65535" + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" } }, - "port_ranges": { + "path": { "type": "string", - "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", - "title": "Port_ranges", - "minLength": 1, - "maxLength": 512, - "x-displayname": "Port Ranges", - "x-ves-example": "80,443,8080-8191,9080", + "description": " Path to be matched\n\nExample: - \"/api/v1/login\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "Path", + "maxLength": 1024, + "x-displayname": "Path", + "x-ves-example": "/api/v1/login", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" } } } }, - "ioschemaObjectRefType": { + "common_wafApiEndpointRule": { "type": "object", - "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", - "title": "ObjectRefType", - "x-displayname": "Object reference", - "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "title": "ApiEndpointRule", + "x-displayname": "ApiEndpointRule", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointRule", "properties": { - "kind": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", - "title": "kind", - "x-displayname": "Kind", - "x-ves-example": "virtual_site" - }, - "name": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "contactus-route" - }, - "namespace": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" }, - "tenant": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" + "api_endpoint_method": { + "description": " The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request.\n The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.", + "title": "method", + "$ref": "#/definitions/policyHttpMethodMatcherType", + "x-displayname": "HTTP Methods" }, - "uid": { + "api_endpoint_path": { "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" - } - } - }, - "origin_poolOriginServerPublicIP": { - "type": "object", - "description": "Specify origin server with public IP address", - "title": "OriginServerPublicIP", - "x-displayname": "Public IP", - "x-ves-displayorder": "2", - "x-ves-oneof-field-public_ip_choice": "[\"ip\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicIP", - "properties": { - "ip": { - "type": "string", - "description": "Exclusive with []\n Public IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", - "title": "IP", - "x-displayname": "Public IPV4", - "x-ves-example": "8.8.8.8", + "description": " The endpoint (path) of the request.\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "api endpoint path", + "maxLength": 1024, + "x-displayname": "API Endpoint", + "x-ves-example": "value", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4": "true" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" } }, - "ipv6": { + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "inline_rate_limiter": { + "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", + "title": "Inline Rate Limiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", + "x-displayname": "Specific Values" + }, + "ref_rate_limiter": { + "description": "Exclusive with [inline_rate_limiter]\n Select external rate limiter.", + "title": "External Rate Limiter", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "External Rate Limiter" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { "type": "string", - "description": " Public IPV6 address\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", - "title": "IPV6", - "x-displayname": "Public IPV6", - "x-ves-example": "2001::1", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv6": "true" + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" } } } }, - "origin_poolOriginServerPublicName": { + "common_wafAudiences": { "type": "object", - "description": "Specify origin server with public DNS name", - "title": "OriginServerPublicName", - "x-displayname": "Public DNS Name", - "x-ves-displayorder": "1,2", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicName", + "title": "audiences", + "x-displayname": "Audiences", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Audiences", "properties": { - "dns_name": { - "type": "string", - "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", - "title": "DNS name", - "minLength": 1, - "maxLength": 256, - "x-displayname": "DNS Name", + "audiences": { + "type": "array", + "description": "\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "audiences", + "minItems": 1, + "maxItems": 16, + "items": { + "type": "string" + }, + "x-displayname": "Values", "x-ves-example": "value", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.hostname": "true", - "ves.io.schema.rules.string.max_len": "256", - "ves.io.schema.rules.string.min_len": "1" - } - }, - "refresh_interval": { - "type": "integer", - "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", - "title": "refresh_interval", - "format": "int64", - "x-displayname": "DNS Refresh interval", - "x-ves-example": "20", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "604800" + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" } } } }, - "origin_poolTlsCertificatesType": { + "common_wafBasePathsType": { "type": "object", - "description": "mTLS Client Certificate", - "title": "TlsCertificatesType", - "x-displayname": "mTLS Certificate", - "x-ves-displayorder": "1", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.TlsCertificatesType", + "title": "base_paths", + "x-displayname": "Base Paths", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BasePathsType", "properties": { - "tls_certificates": { + "base_paths": { "type": "array", - "description": " mTLS Client Certificate\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 1\n ves.io.schema.rules.repeated.min_items: 1\n", - "title": "mTLS certificate", - "minItems": 1, - "maxItems": 1, + "description": "\nExample: - \"/basepath\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.http_path: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "base_paths", + "maxItems": 16, "items": { - "$ref": "#/definitions/schemaTlsCertificateType" + "type": "string" }, - "x-displayname": "mTLS Client Certificate", + "x-displayname": "Prefix Values", + "x-ves-example": "/basepath", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "1", - "ves.io.schema.rules.repeated.min_items": "1" + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" } } } }, - "origin_poolUpstreamTlsParameters": { + "common_wafBypassRateLimitingRule": { "type": "object", - "description": "Upstream TLS Parameters", - "title": "UpstreamTlsParameters", - "x-displayname": "TLS Parameters for Origin Servers", - "x-ves-displayorder": "10,2,8,9", - "x-ves-oneof-field-mtls_choice": "[\"no_mtls\",\"use_mtls\",\"use_mtls_obj\"]", - "x-ves-oneof-field-server_validation_choice": "[\"skip_server_verification\",\"use_server_verification\",\"volterra_trusted_ca\"]", - "x-ves-oneof-field-sni_choice": "[\"disable_sni\",\"sni\",\"use_host_header_as_sni\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsParameters", + "title": "BypassRateLimitingRule", + "x-displayname": "Bypass Rate Limiting Rule", + "x-ves-oneof-field-destination_type": "[\"any_url\",\"api_endpoint\",\"api_groups\",\"base_path\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRule", "properties": { - "disable_sni": { - "description": "Exclusive with [sni use_host_header_as_sni]\n Do not use SNI.", - "title": "disable_sni", + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "No SNI" - }, - "no_mtls": { - "description": "Exclusive with [use_mtls use_mtls_obj]\n", - "title": "No mTLS", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "x-displayname": "Any Domain" }, - "skip_server_verification": { - "description": "Exclusive with [use_server_verification volterra_trusted_ca]\n Skip origin server verification", - "title": "Skip Server Verification", + "any_url": { + "description": "Exclusive with [api_endpoint api_groups base_path]\n Any URL ", + "title": "any_url", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Skip Verification" - }, - "sni": { - "type": "string", - "description": "Exclusive with [disable_sni use_host_header_as_sni]\n SNI value to be used.\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n", - "title": "sni", - "maxLength": 256, - "x-displayname": "SNI Value", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.hostname": "true", - "ves.io.schema.rules.string.max_len": "256" - } - }, - "tls_config": { - "description": " TLS parameters such as min/max TLS version and ciphers\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "TLS Config", - "$ref": "#/definitions/viewsTlsConfig", - "x-displayname": "TLS Configuration for Origin Servers", + "x-displayname": "Any URL" + }, + "api_endpoint": { + "description": "Exclusive with [any_url api_groups base_path]\n The endpoint (path) of the request.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "api endpoint path", + "$ref": "#/definitions/common_wafApiEndpointDetails", + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" } }, - "use_host_header_as_sni": { - "description": "Exclusive with [disable_sni sni]\n Use the host header as SNI. The host header value is extracted after any configured rewrites have been applied.", - "title": "use_host_header_as_sni", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Host Header" + "api_groups": { + "description": "Exclusive with [any_url api_endpoint base_path]\n Validation will be performed for the endpoints mentioned in the API Groups", + "title": "api group", + "$ref": "#/definitions/common_wafAPIGroups", + "x-displayname": "API Groups" }, - "use_mtls": { - "description": "Exclusive with [no_mtls use_mtls_obj]\n", - "title": "Inline Certificate (legacy)", - "$ref": "#/definitions/origin_poolTlsCertificatesType", - "x-displayname": "Upload a client authentication certificate specifically for this Origin Pool" + "base_path": { + "type": "string", + "description": "Exclusive with [any_url api_endpoint api_groups]\n The base path which this validation applies to\n\nExample: - \"/api/v1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/api/v1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } }, - "use_mtls_obj": { - "description": "Exclusive with [no_mtls use_mtls]\n", - "title": "Root CA Certificate", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Select/add a TLS Certificate object for client authentication" + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" }, - "use_server_verification": { - "description": "Exclusive with [skip_server_verification volterra_trusted_ca]\n Perform origin server verification using the provided Root CA Certificate", - "title": "Use Server Verification", - "$ref": "#/definitions/origin_poolUpstreamTlsValidationContext", - "x-displayname": "Use Custom Root CA Certificate" + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" }, - "volterra_trusted_ca": { - "description": "Exclusive with [skip_server_verification use_server_verification]\n Perform origin server verification using F5XC Default Root CA Certificate", - "title": "F5XC Root CA", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Default Root CA Certificate" + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } } } }, - "origin_poolUpstreamTlsValidationContext": { + "common_wafBypassRateLimitingRules": { "type": "object", - "description": "Upstream TLS Validation Context", - "title": "UpstreamTlsValidationContext", - "x-displayname": "TLS Validation Context for Origin Servers", - "x-ves-oneof-field-trusted_ca_choice": "[\"trusted_ca\",\"trusted_ca_url\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsValidationContext", + "description": "This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", + "title": "bypass_rate_limiting_policy", + "x-displayname": "Bypass Rate Limiting", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRules", "properties": { - "trusted_ca": { - "description": "Exclusive with [trusted_ca_url]\n Select/Add a Root CA Certificate object to associate with this Origin Pool for verification of server's certificate", - "title": "trusted_ca", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Root CA Certificate" - }, - "trusted_ca_url": { - "type": "string", - "description": "Exclusive with [trusted_ca]\n Upload a Root CA Certificate specifically for this Origin Pool for verification of server's certificate\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 131072\n ves.io.schema.rules.string.min_bytes: 1\n ves.io.schema.rules.string.truststore_url: true\n", - "title": "trusted_ca_url", - "minLength": 1, - "maxLength": 131072, - "x-displayname": "Inline Root CA Certificate (legacy)", + "bypass_rate_limiting_rules": { + "type": "array", + "description": " This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "bypass_rate_limiting_policy", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafBypassRateLimitingRule" + }, + "x-displayname": "Bypass Rate Limiting", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_bytes": "131072", - "ves.io.schema.rules.string.min_bytes": "1", - "ves.io.schema.rules.string.truststore_url": "true" + "ves.io.schema.rules.repeated.max_items": "20" } } } }, - "policyCountryCode": { + "common_wafChallengeRule": { + "type": "object", + "description": "Challenge rule", + "title": "Challenge Rule", + "x-displayname": "Challenge Rule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRule", + "properties": { + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "spec": { + "description": " Specification for the rule including match predicates and actions.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "spec", + "$ref": "#/definitions/service_policy_ruleChallengeRuleSpec", + "x-displayname": "Challenge Rule Specification", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafChallengeRuleList": { + "type": "object", + "description": "List of challenge rules to be used in policy based challenge", + "title": "Challenge Rule List", + "x-displayname": "Challenge Rule List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRuleList", + "properties": { + "rules": { + "type": "array", + "description": " Rules that specify the match conditions and challenge type to be launched.\n When a challenge type is selected to be always enabled,\n these rules can be used to disable challenge or launch a different challenge for requests that match the specified conditions\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Rules", + "maxItems": 64, + "items": { + "$ref": "#/definitions/common_wafChallengeRule" + }, + "x-displayname": "Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + } + } + }, + "common_wafClientSrcRuleAction": { + "type": "string", + "description": "Action that should be taken when client identifier matches the rule\n", + "title": "action", + "enum": [ + "SKIP_PROCESSING_WAF", + "SKIP_PROCESSING_BOT", + "SKIP_PROCESSING_MUM", + "SKIP_PROCESSING_IP_REPUTATION", + "SKIP_PROCESSING_API_PROTECTION", + "SKIP_PROCESSING_OAS_VALIDATION", + "SKIP_PROCESSING_DDOS_PROTECTION", + "SKIP_PROCESSING_THREAT_MESH" + ], + "default": "SKIP_PROCESSING_WAF", + "x-displayname": "Action", + "x-ves-proto-enum": "ves.io.schema.views.common_waf.ClientSrcRuleAction" + }, + "common_wafCustomFallThroughMode": { + "type": "object", + "description": "Define the fall through settings", + "title": "Custom Fall Through Mode", + "x-displayname": "Custom Fall Through Mode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomFallThroughMode", + "properties": { + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Custom Fall Through Rule List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafFallThroughRule" + }, + "x-displayname": "Custom Fall Through Rule List", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + } + } + }, + "common_wafCustomIpAllowedList": { + "type": "object", + "description": "IP Allowed list using existing ip_prefix_set objects", + "title": "Custom IP Allowed List", + "x-displayname": "Custom IP Allowed List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomIpAllowedList", + "properties": { + "rate_limiter_allowed_prefixes": { + "type": "array", + "description": " References to ip_prefix_set objects.\n Requests from source IP addresses that are covered by one of the allowed IP Prefixes are not subjected to rate limiting.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "rate_limiter_allowed_prefixes", + "minItems": 1, + "maxItems": 4, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "List of IP Prefix Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "common_wafEnableChallenge": { + "type": "object", + "description": "Configure auto mitigation i.e risk based challenges for malicious users", + "title": "enable challenge", + "x-displayname": "Enable Malicious User Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.EnableChallenge", + "properties": { + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" + }, + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_js_challenge_parameters": { + "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_mitigation_settings": { + "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + }, + "js_challenge_parameters": { + "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge Parameters" + }, + "malicious_user_mitigation": { + "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", + "title": "Malicious User Mitigation", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Custom" + } + } + }, + "common_wafFallThroughRule": { + "type": "object", + "description": "Fall Through Rule for a specific endpoint, base-path, or API group", + "title": "Fall Through Rule", + "x-displayname": "Fall Through Rule", + "x-ves-oneof-field-action_choice": "[\"action_block\",\"action_report\",\"action_skip\"]", + "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.FallThroughRule", + "properties": { + "action_block": { + "description": "Exclusive with [action_report action_skip]\n Block the request and issue an API security event", + "title": "block", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Block" + }, + "action_report": { + "description": "Exclusive with [action_block action_skip]\n Continue processing the request and issue an API security event", + "title": "report", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Report" + }, + "action_skip": { + "description": "Exclusive with [action_block action_report]\n Continue processing the request", + "title": "skip", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip" + }, + "api_endpoint": { + "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", + "title": "API Endpoint", + "$ref": "#/definitions/common_wafApiEndpointDetails", + "x-displayname": "API Endpoint" + }, + "api_group": { + "type": "string", + "description": "Exclusive with [api_endpoint base_path]\n The API group which this validation applies to\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": "Exclusive with [api_endpoint api_group]\n The base path which this validation applies to\n\nExample: - \"/api/v1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/api/v1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafHttpHeaderMatcherList": { + "type": "object", + "description": "Request header name and value pairs", + "title": "HTTP Header", + "x-displayname": "HTTP Header", + "x-ves-proto-message": "ves.io.schema.views.common_waf.HttpHeaderMatcherList", + "properties": { + "headers": { + "type": "array", + "description": " List of HTTP header name and value pairs\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "headers", + "maxItems": 16, + "items": { + "$ref": "#/definitions/ioschemaHeaderMatcherType" + }, + "x-displayname": "HTTP Headers", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16" + } + } + } + }, + "common_wafInlineRateLimiter": { + "type": "object", + "title": "InlineRateLimiter", + "x-displayname": "InlineRateLimiter", + "x-ves-oneof-field-count_by_choice": "[\"ref_user_id\",\"use_http_lb_user_id\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.InlineRateLimiter", + "properties": { + "ref_user_id": { + "description": "Exclusive with [use_http_lb_user_id]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier to be rate limited.", + "title": "ref_user_id", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "User Identification Policy" + }, + "threshold": { + "type": "integer", + "description": " The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 8192\n", + "title": "threshold", + "format": "int64", + "x-displayname": "Threshold", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "8192" + } + }, + "unit": { + "description": " Unit for the period per which the rate limit is applied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "rate", + "$ref": "#/definitions/rate_limiterRateLimitPeriodUnit", + "x-displayname": "Duration", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "use_http_lb_user_id": { + "description": "Exclusive with [ref_user_id]\n Defined in HTTP-LB Security Configuration -\u003e User Identifier.", + "title": "use_http_lb_user_id", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use HTTP-LB User Identifier" + } + } + }, + "common_wafJWKS": { + "type": "object", + "description": "The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", + "title": "jwks", + "x-displayname": "JSON Web Key Set (JWKS)", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWKS", + "properties": { + "cleartext": { + "type": "string", + "description": " The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", + "title": "cleartext", + "x-displayname": "JSON Web Key Set (JWKS)" + } + } + }, + "common_wafJWTValidation": { + "type": "object", + "description": "JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\nJWTs before they are passed to your API origin. JWT Validation will also stop requests with expired\ntokens or tokens that are not yet valid.", + "title": "JWT Validation", + "x-displayname": "JWT Validation", + "x-ves-oneof-field-jwks_configuration": "[\"jwks_config\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWTValidation", + "properties": { + "action": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "action", + "$ref": "#/definitions/schemaAction", + "x-displayname": "Action", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "jwks_config": { + "description": "Exclusive with []\n The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", + "title": "jwks_config", + "$ref": "#/definitions/common_wafJWKS", + "x-displayname": "JSON Web Key Set (JWKS)" + }, + "mandatory_claims": { + "description": " Configuration for validation of mandatory claims. The system will verify that the claim exists in JWT.\n If the claim does not exist JWT token validation will fail.", + "title": "Mandatory Claims", + "$ref": "#/definitions/common_wafMandatoryClaims", + "x-displayname": "Mandatory Claims" + }, + "reserved_claims": { + "description": " Configuration required for validation of reserved claims. If some claims are absent in\n the token validation of these claims should be disabled.", + "title": "reserved_claims", + "$ref": "#/definitions/common_wafReservedClaims", + "x-displayname": "Reserved Claims Validation" + }, + "target": { + "description": " Define endpoints for which JWT token validation will be performed\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "target", + "$ref": "#/definitions/common_wafTarget", + "x-displayname": "Target", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "token_location": { + "description": " Define where in the HTTP request the JWT token will be extracted\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "token location", + "$ref": "#/definitions/common_wafTokenLocation", + "x-displayname": "Token Location", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafMandatoryClaims": { + "type": "object", + "description": "Configurable Validation of mandatory Claims.", + "title": "MandatoryClaims", + "x-displayname": "Mandatory Claims", + "x-ves-proto-message": "ves.io.schema.views.common_waf.MandatoryClaims", + "properties": { + "claim_names": { + "type": "array", + "description": "\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Claim names", + "maxItems": 16, + "items": { + "type": "string" + }, + "x-displayname": "Claim Names", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafOpenApiFallThroughMode": { + "type": "object", + "description": "x-required\nDetermine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)", + "title": "Fall Through Mode", + "x-displayname": "Fall Through Mode", + "x-ves-oneof-field-fall_through_mode_choice": "[\"fall_through_mode_allow\",\"fall_through_mode_custom\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiFallThroughMode", + "properties": { + "fall_through_mode_allow": { + "description": "Exclusive with [fall_through_mode_custom]\n Allow any unprotected end point", + "title": "Allow", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Allow" + }, + "fall_through_mode_custom": { + "description": "Exclusive with [fall_through_mode_allow]\n Custom rules for any unprotected end point", + "title": "Custom", + "$ref": "#/definitions/common_wafCustomFallThroughMode", + "x-displayname": "Custom" + } + } + }, + "common_wafOpenApiValidationAllSpecEndpointsSettings": { + "type": "object", + "description": "Settings for API Inventory validation", + "title": "OpenAPI Validation API Inventory Settings", + "x-displayname": "API Inventory", + "x-ves-oneof-field-oversized_body_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings", + "properties": { + "fall_through_mode": { + "description": " Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Fall Through Mode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", + "x-displayname": "Fall Through Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "settings": { + "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", + "x-displayname": "Common Settings" + }, + "validation_mode": { + "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the API Inventory endpoints\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Validation Mode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", + "x-displayname": "Validation Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafOpenApiValidationCommonSettings": { + "type": "object", + "description": "OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "x-displayname": "Common Settings", + "x-ves-oneof-field-oversized_body_choice": "[\"oversized_body_fail_validation\",\"oversized_body_skip_validation\"]", + "x-ves-oneof-field-property_validation_settings_choice": "[\"property_validation_settings_custom\",\"property_validation_settings_default\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationCommonSettings", + "properties": { + "oversized_body_fail_validation": { + "description": "Exclusive with [oversized_body_skip_validation]\n Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb)", + "title": "Fail the validation for over-sized body", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Fail Body Validation" + }, + "oversized_body_skip_validation": { + "description": "Exclusive with [oversized_body_fail_validation]\n Skip body validation when the body length is too long to verify (default 64Kb)", + "title": "Skip validation for over-sized body", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip Body Validation" + }, + "property_validation_settings_custom": { + "description": "Exclusive with [property_validation_settings_default]\n Use custom settings with Open API specification validation", + "title": "Custom settings", + "$ref": "#/definitions/common_wafValidationPropertySetting", + "x-displayname": "Custom" + }, + "property_validation_settings_default": { + "description": "Exclusive with [property_validation_settings_custom]\n Keep the default settings of OpenAPI specification validation", + "title": "Default", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + } + } + }, + "common_wafOpenApiValidationMode": { + "type": "object", + "description": "x-required\nValidation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)", + "title": "Validation Mode", + "x-displayname": "Validation Mode", + "x-ves-oneof-field-response_validation_mode_choice": "[\"response_validation_mode_active\",\"skip_response_validation\"]", + "x-ves-oneof-field-validation_mode_choice": "[\"skip_validation\",\"validation_mode_active\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationMode", + "properties": { + "response_validation_mode_active": { + "description": "Exclusive with [skip_response_validation]\n Enforce OpenAPI validation processing for this event", + "title": "Validate", + "$ref": "#/definitions/common_wafOpenApiValidationModeActiveResponse", + "x-displayname": "Validate" + }, + "skip_response_validation": { + "description": "Exclusive with [response_validation_mode_active]\n Skip OpenAPI validation processing for this event", + "title": "Skip", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip" + }, + "skip_validation": { + "description": "Exclusive with [validation_mode_active]\n Skip OpenAPI validation processing for this event", + "title": "Skip", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip" + }, + "validation_mode_active": { + "description": "Exclusive with [skip_validation]\n Enforce OpenAPI validation processing for this event", + "title": "Validate", + "$ref": "#/definitions/common_wafOpenApiValidationModeActive", + "x-displayname": "Validate" + } + } + }, + "common_wafOpenApiValidationModeActive": { + "type": "object", + "description": "Validation mode properties of request", + "title": "Open API Validation Mode Active For Request", + "x-displayname": "Open API Validation Mode Active", + "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActive", + "properties": { + "enforcement_block": { + "description": "Exclusive with [enforcement_report]\n Block the request, trigger an API security event", + "title": "Block", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Block" + }, + "enforcement_report": { + "description": "Exclusive with [enforcement_block]\n Allow the request, trigger an API security event", + "title": "Report", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Report" + }, + "request_validation_properties": { + "type": "array", + "description": " List of properties of the request to validate according to the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.not_in: [7]\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Request Validation Properties", + "minItems": 1, + "items": { + "$ref": "#/definitions/schemaOpenApiValidationProperties" + }, + "x-displayname": "Request Validation Properties", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.not_in": "[7]", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafOpenApiValidationModeActiveResponse": { + "type": "object", + "description": "Validation mode properties of response", + "title": "Open API Validation Mode Active For Response", + "x-displayname": "Open API Validation Mode Active", + "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse", + "properties": { + "enforcement_block": { + "description": "Exclusive with [enforcement_report]\n Block the response, trigger an API security event", + "title": "Block", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Block" + }, + "enforcement_report": { + "description": "Exclusive with [enforcement_block]\n Allow the response, trigger an API security event", + "title": "Report", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Report" + }, + "response_validation_properties": { + "type": "array", + "description": " List of properties of the response to validate according to the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.in: [2,4,5,7]\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Response Validation Properties", + "minItems": 1, + "items": { + "$ref": "#/definitions/schemaOpenApiValidationProperties" + }, + "x-displayname": "Response Validation Properties", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.in": "[2,4,5,7]", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafOpenApiValidationRule": { + "type": "object", + "description": "OpenAPI Validation Rule for a specific endpoint, base-path, or API group", + "title": "OpenAPI Validation Rule", + "x-displayname": "OpenAPI Validation Rule", + "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "api_endpoint": { + "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", + "title": "API Endpoint", + "$ref": "#/definitions/common_wafApiEndpointDetails", + "x-displayname": "API Endpoint" + }, + "api_group": { + "type": "string", + "description": "Exclusive with [api_endpoint base_path]\n The API group which this validation applies to\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": "Exclusive with [api_endpoint api_group]\n The base path which this validation applies to\n\nExample: - \"/api/v1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/api/v1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + }, + "validation_mode": { + "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Validation Mode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", + "x-displayname": "Validation Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafRateLimitConfigType": { + "type": "object", + "title": "RateLimitConfigType", + "x-displayname": "RateLimitConfigType", + "x-ves-oneof-field-ip_allowed_list_choice": "[\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", + "x-ves-oneof-field-policy_choice": "[\"no_policies\",\"policies\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.RateLimitConfigType", + "properties": { + "custom_ip_allowed_list": { + "description": "Exclusive with [ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", + "title": "Custom IP list", + "$ref": "#/definitions/common_wafCustomIpAllowedList", + "x-displayname": "IP Allowed List using IP Prefix Set(s)" + }, + "ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", + "title": "IP Allowed List", + "$ref": "#/definitions/viewsPrefixStringListType", + "x-displayname": "IP Allowed List" + }, + "no_ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No IP Allowed" + }, + "no_policies": { + "description": "Exclusive with [policies]\n Do not apply additional rate limiter policies.", + "title": "no_policies", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No Rate Limiter Policies" + }, + "policies": { + "description": "Exclusive with [no_policies]\n Apply rate limiter policies to requests that are not from the IP Allowed List.\n The policies are evaluated sequentially until a matching rule is identified. If there's a match, the rate limiting behavior is modified according\n to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.", + "title": "policies", + "$ref": "#/definitions/rate_limiter_policyPolicyList", + "x-displayname": "Rate Limiter Policies" + }, + "rate_limiter": { + "description": " Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.", + "title": "rate_limiter", + "$ref": "#/definitions/rate_limiterRateLimitValue", + "x-displayname": "Request Rate Limiter" + } + } + }, + "common_wafReservedClaims": { + "type": "object", + "description": "Configurable Validation of reserved Claims", + "title": "reserved claims", + "x-displayname": "Reserved claims configuration", + "x-ves-oneof-field-audience_validation": "[\"audience\",\"audience_disable\"]", + "x-ves-oneof-field-issuer_validation": "[\"issuer\",\"issuer_disable\"]", + "x-ves-oneof-field-validate_period": "[\"validate_period_disable\",\"validate_period_enable\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ReservedClaims", + "properties": { + "audience": { + "description": "Exclusive with [audience_disable]\n", + "title": "audience", + "$ref": "#/definitions/common_wafAudiences", + "x-displayname": "Exact Match" + }, + "audience_disable": { + "description": "Exclusive with [audience]\n", + "title": "audience_disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "issuer": { + "type": "string", + "description": "Exclusive with [issuer_disable]\n", + "title": "issuer", + "x-displayname": "Exact Match" + }, + "issuer_disable": { + "description": "Exclusive with [issuer]\n", + "title": "issuer_disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "validate_period_disable": { + "description": "Exclusive with [validate_period_enable]\n", + "title": "validate_period_disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "validate_period_enable": { + "description": "Exclusive with [validate_period_disable]\n", + "title": "validate_period_enable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" + } + } + }, + "common_wafServerUrlRule": { + "type": "object", + "title": "ServerUrlRule", + "x-displayname": "Server URLs and API Groups", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServerUrlRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "api_group": { + "type": "string", + "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": " Prefix of the request path.\n\nExample: - \"/\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "inline_rate_limiter": { + "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", + "title": "Inline Rate Limiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", + "x-displayname": "Specific Values" + }, + "ref_rate_limiter": { + "description": "Exclusive with [inline_rate_limiter]\n Use external rate limiter.", + "title": "External Rate Limiter", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "External Rate Limiter" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + } + } + }, + "common_wafServicePolicyList": { + "type": "object", + "description": "List of service policies.", + "title": "service policy list", + "x-displayname": "Service Policy List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServicePolicyList", + "properties": { + "policies": { + "type": "array", + "description": " Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\n correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result.\n For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\n current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\n If all policies are evaluated and none match, then the request will be denied by default.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "policies", + "minItems": 1, + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Policies", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafSimpleClientSrcRule": { + "type": "object", + "description": "Simple client source rule specifies the sources to be blocked or trusted (skip WAF)", + "title": "SimpleClientSrcRule", + "x-displayname": "Client Rule", + "x-ves-oneof-field-action_choice": "[\"bot_skip_processing\",\"skip_processing\",\"waf_skip_processing\"]", + "x-ves-oneof-field-client_source_choice": "[\"as_number\",\"http_header\",\"ip_prefix\",\"user_identifier\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.SimpleClientSrcRule", + "properties": { + "actions": { + "type": "array", + "description": " Actions that should be taken when client identifier matches the rule\n\nValidation Rules:\n ves.io.schema.rules.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 10\n ves.io.schema.rules.repeated.unique: true\n", + "title": "actions", + "maxItems": 10, + "items": { + "$ref": "#/definitions/common_wafClientSrcRuleAction" + }, + "x-displayname": "Actions", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "10", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "as_number": { + "type": "integer", + "description": "Exclusive with [http_header ip_prefix user_identifier]\n RFC 6793 defined 4-byte AS number\n\nExample: - \"4683\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 401308\n", + "title": "as number", + "format": "int64", + "x-displayname": "AS Number", + "x-ves-example": "4683", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "401308" + } + }, + "bot_skip_processing": { + "description": "Exclusive with [skip_processing waf_skip_processing]\n Skip Bot Defense processing for clients matching this rule.", + "title": "Skip Bot Processing", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip Bot Defense Processing" + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.timestamp.within.seconds": "31536000" + } + }, + "http_header": { + "description": "Exclusive with [as_number ip_prefix user_identifier]\n Request header name and value pairs", + "title": "HTTP Header", + "$ref": "#/definitions/common_wafHttpHeaderMatcherList", + "x-displayname": "HTTP Headers" + }, + "ip_prefix": { + "type": "string", + "description": "Exclusive with [as_number http_header user_identifier]\n IPv4 prefix string.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4_prefix: true\n", + "title": "ip prefix", + "x-displayname": "IP Prefix", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4_prefix": "true" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "skip_processing": { + "description": "Exclusive with [bot_skip_processing waf_skip_processing]\n Skip both WAF and Bot Defense processing for clients matching this rule.", + "title": "Skip Both", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip Both" + }, + "user_identifier": { + "type": "string", + "description": "Exclusive with [as_number http_header ip_prefix]\n Identify user based on user identifier. User identifier value needs to be copied from security event.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "user identifier", + "maxLength": 256, + "x-displayname": "User Identifier", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "waf_skip_processing": { + "description": "Exclusive with [bot_skip_processing skip_processing]\n Skip WAF processing for clients matching this rule.", + "title": "Skip WAF Processing", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip WAF Processing" + } + } + }, + "common_wafTarget": { + "type": "object", + "description": "Define endpoints for which JWT token validation will be performed", + "title": "target", + "x-displayname": "Target", + "x-ves-oneof-field-target": "[\"all_endpoint\",\"api_groups\",\"base_paths\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Target", + "properties": { + "all_endpoint": { + "description": "Exclusive with [api_groups base_paths]\n Validation will be performed for all requests on this LB", + "title": "all_endpoint", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "API Inventory" + }, + "api_groups": { + "description": "Exclusive with [all_endpoint base_paths]\n Validation will be performed for the endpoints mentioned in the API Groups", + "title": "api group", + "$ref": "#/definitions/common_wafAPIGroups", + "x-displayname": "API Groups" + }, + "base_paths": { + "description": "Exclusive with [all_endpoint api_groups]\n Validation will be performed for selected path prefixes", + "title": "base paths", + "$ref": "#/definitions/common_wafBasePathsType", + "x-displayname": "Base Paths" + } + } + }, + "common_wafTokenLocation": { + "type": "object", + "description": "Location of JWT in Http request", + "title": "token location", + "x-displayname": "Token Location", + "x-ves-oneof-field-token_location": "[\"bearer_token\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.TokenLocation", + "properties": { + "bearer_token": { + "description": "Exclusive with []\n Token is found in Authorization HTTP header with Bearer authentication scheme", + "title": "bearer token", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Bearer Token" + } + } + }, + "common_wafValidateApiBySpecRule": { + "type": "object", + "description": "Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other api-endpoint not listed will act according to \"Fall Through Mode\".", + "title": "ValidateApiBySpecRule", + "x-displayname": "Custom List", + "x-ves-oneof-field-oversized_body_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidateApiBySpecRule", + "properties": { + "fall_through_mode": { + "description": " Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Fall Through Mode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", + "x-displayname": "Fall Through Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Validation List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafOpenApiValidationRule" + }, + "x-displayname": "Validation List", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "settings": { + "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", + "x-displayname": "OpenAPI specification validation settings" + } + } + }, + "common_wafValidationPropertySetting": { + "type": "object", + "description": "Custom property validation settings", + "title": "Validation Property settings", + "x-displayname": "Validation Property Settings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationPropertySetting", + "properties": { + "queryParameters": { + "description": " Custom settings for query parameters validation", + "title": "Query parameters validation settings", + "$ref": "#/definitions/common_wafValidationSettingForQueryParameters", + "x-displayname": "Validation Settings For Query Parameters" + } + } + }, + "common_wafValidationSettingForHeaders": { + "type": "object", + "description": "x-displayName: \"Validation Settings For Headers\"\nCustom settings for headers validation", + "title": "Validation Settings For Headers", + "properties": { + "allow_additional_headers": { + "description": "x-displayName: \"Allow\"\nAllow extra headers (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/schemaEmpty" + }, + "disallow_additional_headers": { + "description": "x-displayName: \"Disallow\"\nDisallow extra headers (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/schemaEmpty" + } + } + }, + "common_wafValidationSettingForQueryParameters": { + "type": "object", + "description": "Custom settings for query parameters validation", + "title": "Validation Settings For Query Parameters", + "x-displayname": "Validation Settings For Query Parameters", + "x-ves-oneof-field-additional_parameters_choice": "[\"allow_additional_parameters\",\"disallow_additional_parameters\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationSettingForQueryParameters", + "properties": { + "allow_additional_parameters": { + "description": "Exclusive with [disallow_additional_parameters]\n Allow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Allow" + }, + "disallow_additional_parameters": { + "description": "Exclusive with [allow_additional_parameters]\n Disallow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disallow" + } + } + }, + "crudapiObjectCreateReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectCreateRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateRsp", + "properties": { + "err": { + "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectDeleteRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectDeleteRsp", + "properties": { + "err": { + "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + } + } + }, + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "err": { + "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/cdn_loadbalancerStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectListRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectListRsp", + "properties": { + "err": { + "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } + }, + "metadata": { + "$ref": "#/definitions/schemaListMetaType" + }, + "next_page": { + "type": "string", + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "crudapiObjectListRspItem": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectListRspItem", + "properties": { + "labels": { + "type": "object" + }, + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/cdn_loadbalancerStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" + } + } + }, + "crudapiObjectReplaceReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + } + } + }, + "crudapiObjectReplaceRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceRsp", + "properties": { + "err": { + "$ref": "#/definitions/cdn_loadbalancercrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/viewscdn_loadbalancerSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "http_loadbalancerProxyTypeHttp": { + "type": "object", + "description": "Choice for selecting HTTP proxy", + "title": "HTTP Choice", + "x-displayname": "HTTP Choice", + "x-ves-displayorder": "1,3", + "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp", + "properties": { + "dns_volterra_managed": { + "type": "boolean", + "description": " DNS records for domains will be managed automatically by F5 Distributed Cloud.\n As a prerequisite, the domain must be delegated to F5 Distributed Cloud using Delegated domain feature\n or a DNS CNAME record should be created in your DNS provider's portal.", + "title": "Manage DNS Domain", + "format": "boolean", + "x-displayname": "Automatically Manage DNS Records" + }, + "port": { + "type": "integer", + "description": "Exclusive with [port_ranges]\n HTTP port to Listen.\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "HTTP port to listen", + "format": "int64", + "x-displayname": "HTTP Listen Port", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "port_ranges": { + "type": "string", + "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", + "title": "Port_ranges", + "minLength": 1, + "maxLength": 512, + "x-displayname": "Port Ranges", + "x-ves-example": "80,443,8080-8191,9080", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true" + } + } + } + }, + "ioschemaHeaderMatcherType": { + "type": "object", + "description": "Header match is done using the name of the header and its value.\nThe value match is done using one of the following\n regex match on value\n exact match of value\n presence of header\n\nHeader Match can also be inverse of above, which be used to check\n missing header or\n non-matching value", + "title": "HeaderMatcherType", + "x-displayname": "Header to Match", + "x-ves-oneof-field-value_match": "[\"exact\",\"presence\",\"regex\"]", + "x-ves-proto-message": "ves.io.schema.HeaderMatcherType", + "properties": { + "exact": { + "type": "string", + "description": "Exclusive with [presence regex]\n Header value to match exactly\n\nExample: - \"application/json\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n", + "title": "exact", + "maxLength": 256, + "x-displayname": "Exact", + "x-ves-example": "application/json", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true" + } + }, + "invert_match": { + "type": "boolean", + "description": " Invert the result of the match to detect missing header or non-matching value", + "title": "invert_match", + "format": "boolean", + "x-displayname": "NOT of match" + }, + "name": { + "type": "string", + "description": " Name of the header\n\nExample: - \"Content-Type\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_header_field: true\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Name", + "x-ves-example": "Content-Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "presence": { + "type": "boolean", + "description": "Exclusive with [exact regex]\n If true, check for presence of header", + "title": "presence", + "format": "boolean", + "x-displayname": "Presence" + }, + "regex": { + "type": "string", + "description": "Exclusive with [exact presence]\n Regex match of the header value in re2 format\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n ves.io.schema.rules.string.regex: true\n", + "title": "regex", + "maxLength": 256, + "x-displayname": "Regex", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "ioschemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "ioschemaPathMatcherType": { + "type": "object", + "description": "Path match of the URI can be either be, Prefix match or exact match or regular expression match", + "title": "PathMatcherType", + "x-displayname": "Path to Match", + "x-ves-displayorder": "4", + "x-ves-oneof-field-path_match": "[\"path\",\"prefix\",\"regex\"]", + "x-ves-proto-message": "ves.io.schema.PathMatcherType", + "properties": { + "path": { + "type": "string", + "description": "Exclusive with [prefix regex]\n Exact path value to match\n\nExample: - \"/logout\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "path", + "maxLength": 256, + "x-displayname": "Path", + "x-ves-example": "/logout", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "prefix": { + "type": "string", + "description": "Exclusive with [path regex]\n Path prefix to match (e.g. the value / will match on all paths)\n\nExample: - \"/register/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "prefix", + "maxLength": 256, + "x-displayname": "Prefix", + "x-ves-example": "/register/", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "regex": { + "type": "string", + "description": "Exclusive with [path prefix]\n Regular expression of path match (e.g. the value .* will match on all paths)\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.min_bytes: 1\n ves.io.schema.rules.string.regex: true\n", + "title": "regex", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Regex", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "origin_poolOriginServerPublicIP": { + "type": "object", + "description": "Specify origin server with public IP address", + "title": "OriginServerPublicIP", + "x-displayname": "Public IP", + "x-ves-displayorder": "2", + "x-ves-oneof-field-public_ip_choice": "[\"ip\"]", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicIP", + "properties": { + "ip": { + "type": "string", + "description": "Exclusive with []\n Public IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP", + "x-displayname": "Public IPV4", + "x-ves-example": "8.8.8.8", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Public IPV6 address\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPV6", + "x-displayname": "Public IPV6", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + } + } + }, + "origin_poolOriginServerPublicName": { + "type": "object", + "description": "Specify origin server with public DNS name", + "title": "OriginServerPublicName", + "x-displayname": "Public DNS Name", + "x-ves-displayorder": "1,2", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicName", + "properties": { + "dns_name": { + "type": "string", + "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "DNS name", + "minLength": 1, + "maxLength": 256, + "x-displayname": "DNS Name", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "refresh_interval": { + "type": "integer", + "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", + "title": "refresh_interval", + "format": "int64", + "x-displayname": "DNS Refresh interval", + "x-ves-example": "20", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "604800" + } + } + } + }, + "origin_poolTlsCertificatesType": { + "type": "object", + "description": "mTLS Client Certificate", + "title": "TlsCertificatesType", + "x-displayname": "mTLS Certificate", + "x-ves-displayorder": "1", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.TlsCertificatesType", + "properties": { + "tls_certificates": { + "type": "array", + "description": " mTLS Client Certificate\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 1\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "mTLS certificate", + "minItems": 1, + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaTlsCertificateType" + }, + "x-displayname": "mTLS Client Certificate", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "1", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "origin_poolUpstreamTlsParameters": { + "type": "object", + "description": "Upstream TLS Parameters", + "title": "UpstreamTlsParameters", + "x-displayname": "TLS Parameters for Origin Servers", + "x-ves-displayorder": "10,2,8,9", + "x-ves-oneof-field-mtls_choice": "[\"no_mtls\",\"use_mtls\",\"use_mtls_obj\"]", + "x-ves-oneof-field-server_validation_choice": "[\"skip_server_verification\",\"use_server_verification\",\"volterra_trusted_ca\"]", + "x-ves-oneof-field-sni_choice": "[\"disable_sni\",\"sni\",\"use_host_header_as_sni\"]", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsParameters", + "properties": { + "disable_sni": { + "description": "Exclusive with [sni use_host_header_as_sni]\n Do not use SNI.", + "title": "disable_sni", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No SNI" + }, + "no_mtls": { + "description": "Exclusive with [use_mtls use_mtls_obj]\n", + "title": "No mTLS", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "skip_server_verification": { + "description": "Exclusive with [use_server_verification volterra_trusted_ca]\n Skip origin server verification", + "title": "Skip Server Verification", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip Verification" + }, + "sni": { + "type": "string", + "description": "Exclusive with [disable_sni use_host_header_as_sni]\n SNI value to be used.\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "sni", + "maxLength": 256, + "x-displayname": "SNI Value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "tls_config": { + "description": " TLS parameters such as min/max TLS version and ciphers\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "TLS Config", + "$ref": "#/definitions/viewsTlsConfig", + "x-displayname": "TLS Configuration for Origin Servers", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "use_host_header_as_sni": { + "description": "Exclusive with [disable_sni sni]\n Use the host header as SNI. The host header value is extracted after any configured rewrites have been applied.", + "title": "use_host_header_as_sni", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Host Header" + }, + "use_mtls": { + "description": "Exclusive with [no_mtls use_mtls_obj]\n", + "title": "Inline Certificate (legacy)", + "$ref": "#/definitions/origin_poolTlsCertificatesType", + "x-displayname": "Upload a client authentication certificate specifically for this Origin Pool" + }, + "use_mtls_obj": { + "description": "Exclusive with [no_mtls use_mtls]\n", + "title": "Root CA Certificate", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Select/add a TLS Certificate object for client authentication" + }, + "use_server_verification": { + "description": "Exclusive with [skip_server_verification volterra_trusted_ca]\n Perform origin server verification using the provided Root CA Certificate", + "title": "Use Server Verification", + "$ref": "#/definitions/origin_poolUpstreamTlsValidationContext", + "x-displayname": "Use Custom Root CA Certificate" + }, + "volterra_trusted_ca": { + "description": "Exclusive with [skip_server_verification use_server_verification]\n Perform origin server verification using F5XC Default Root CA Certificate", + "title": "F5XC Root CA", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Root CA Certificate" + } + } + }, + "origin_poolUpstreamTlsValidationContext": { + "type": "object", + "description": "Upstream TLS Validation Context", + "title": "UpstreamTlsValidationContext", + "x-displayname": "TLS Validation Context for Origin Servers", + "x-ves-oneof-field-trusted_ca_choice": "[\"trusted_ca\",\"trusted_ca_url\"]", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsValidationContext", + "properties": { + "trusted_ca": { + "description": "Exclusive with [trusted_ca_url]\n Select/Add a Root CA Certificate object to associate with this Origin Pool for verification of server's certificate", + "title": "trusted_ca", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Root CA Certificate" + }, + "trusted_ca_url": { + "type": "string", + "description": "Exclusive with [trusted_ca]\n Upload a Root CA Certificate specifically for this Origin Pool for verification of server's certificate\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 131072\n ves.io.schema.rules.string.min_bytes: 1\n ves.io.schema.rules.string.truststore_url: true\n", + "title": "trusted_ca_url", + "minLength": 1, + "maxLength": 131072, + "x-displayname": "Inline Root CA Certificate (legacy)", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "131072", + "ves.io.schema.rules.string.min_bytes": "1", + "ves.io.schema.rules.string.truststore_url": "true" + } + } + } + }, + "policyAppFirewallAttackTypeContext": { + "type": "object", + "description": "App Firewall Attack Type context changes to be applied for this request", + "title": "App Firewall Attack Type Context", + "x-displayname": "App Firewall Attack Type Context", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallAttackTypeContext", + "properties": { + "context": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Context", + "$ref": "#/definitions/policyDetectionContext", + "x-displayname": "Context", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "context_name": { + "type": "string", + "description": " Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check.\n\nExample: - \"exampleuser-agent for Header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Context Name", + "maxLength": 64, + "x-displayname": "Context Name", + "x-ves-example": "example: user-agent for Header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, + "exclude_attack_type": { + "description": "\nExample: - \"ATTACK_TYPE_SQL_INJECTION\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "AttackType", + "$ref": "#/definitions/app_firewallAttackType", + "x-displayname": "Attack Type", + "x-ves-example": "ATTACK_TYPE_SQL_INJECTION", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyAppFirewallDetectionControl": { + "type": "object", + "description": "Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.", + "title": "App Firewall Detection Control", + "x-displayname": "App Firewall Detection Control", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallDetectionControl", + "properties": { + "exclude_attack_type_contexts": { + "type": "array", + "description": " Attack Types to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Attack Types Contexts", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyAppFirewallAttackTypeContext" + }, + "x-displayname": "Attack Types", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "exclude_bot_name_contexts": { + "type": "array", + "description": " Bot Names to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Bot Names Contexts", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyBotNameContext" + }, + "x-displayname": "Bot Names", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "exclude_signature_contexts": { + "type": "array", + "description": " Signature IDs to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1024\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Signature Contexts", + "maxItems": 1024, + "items": { + "$ref": "#/definitions/policyAppFirewallSignatureContext" + }, + "x-displayname": "Signature IDs", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1024", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "exclude_violation_contexts": { + "type": "array", + "description": " Violations to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Violation Contexts", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyAppFirewallViolationContext" + }, + "x-displayname": "Violations", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyAppFirewallSignatureContext": { + "type": "object", + "description": "App Firewall signature context changes to be applied for this request", + "title": "App Firewall Signature Context", + "x-displayname": "App Firewall Signature Context", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallSignatureContext", + "properties": { + "context": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Context", + "$ref": "#/definitions/policyDetectionContext", + "x-displayname": "Context", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "context_name": { + "type": "string", + "description": " Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check.\n\nExample: - \"exampleuser-agent for Header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Context Name", + "maxLength": 64, + "x-displayname": "Context Name", + "x-ves-example": "example: user-agent for Header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, + "signature_id": { + "type": "integer", + "description": " The allowed values for signature id are 0 and in the range of 200000001-299999999.\n 0 implies that all signatures will be excluded for the specified context.\n\nExample: - \"10000001\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 299999999\n", + "title": "SignatureID", + "format": "int64", + "x-displayname": "SignatureID", + "x-ves-example": "10000001", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "299999999" + } + } + } + }, + "policyAppFirewallViolationContext": { + "type": "object", + "description": "App Firewall violation context changes to be applied for this request", + "title": "App Firewall Violation Context", + "x-displayname": "App Firewall Violation Context", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallViolationContext", + "properties": { + "context": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Context", + "$ref": "#/definitions/policyDetectionContext", + "x-displayname": "Context", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "context_name": { + "type": "string", + "description": " Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check.\n\nExample: - \"exampleuser-agent for Header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Context Name", + "maxLength": 64, + "x-displayname": "Context Name", + "x-ves-example": "example: user-agent for Header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, + "exclude_violation": { + "description": "\nExample: - \"VIOL_MANDATORY_HEADER\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "ViolationType", + "$ref": "#/definitions/app_firewallAppFirewallViolationType", + "x-displayname": "Violation Type", + "x-ves-example": "VIOL_MANDATORY_HEADER", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyArgMatcherType": { + "type": "object", + "description": "A argument matcher specifies the name of a single argument in the body and the criteria to match it.\nA argument matcher can check for one of the following:\n* Presence or absence of the argument\n* At least one of the values for the argument in the request satisfies the MatcherType item", + "title": "ArgMatcherType", + "x-displayname": "Argument Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.ArgMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the argument is not present.", + "title": "check_not_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the argument is present.", + "title": "check_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert Match of the expression defined", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the Arg. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { + "type": "string", + "description": " x-example: \"phones[_]\"\n x-example: \"cars.make.toyota.models[1]\"\n x-example: \"cars.make.honda.models[_]\"\n x-example: \"cars.make[_].models[_]\"\n A case-sensitive JSON path in the HTTP request body.\n\nExample: - \"name\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.json_path: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Argument Name", + "x-ves-example": "name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.json_path": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyAsnMatchList": { + "type": "object", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", + "title": "Asn Match List", + "x-displayname": "ASN Match List", + "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", + "properties": { + "as_numbers": { + "type": "array", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "as numbers", + "minItems": 1, + "maxItems": 16, + "items": { + "type": "integer", + "format": "int64" + }, + "x-displayname": "AS Numbers", + "x-ves-example": "[713, 7932, 847325, 4683, 15269, 1000001]", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyAsnMatcherType": { + "type": "object", + "description": "Match any AS number contained in the list of bgp_asn_sets.", + "title": "asn matcher type", + "x-displayname": "ASN Matcher", + "x-ves-proto-message": "ves.io.schema.policy.AsnMatcherType", + "properties": { + "asn_sets": { + "type": "array", + "description": " A list of references to bgp_asn_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", + "title": "asn_sets", + "maxItems": 4, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "BGP ASN Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" + } + } + } + }, + "policyBotNameContext": { + "type": "object", + "description": "Specifies bot to be excluded by its name.", + "title": "Bot Name Context", + "x-displayname": "Bot Name", + "x-ves-proto-message": "ves.io.schema.policy.BotNameContext", + "properties": { + "bot_name": { + "type": "string", + "description": "\nExample: - \"Hydra\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "BotName", + "x-displayname": "Bot Name", + "x-ves-example": "Hydra", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyClientMatcher": { + "type": "object", + "description": "Client conditions for matching a rule", + "title": "Client Matcher", + "x-displayname": "Client Matcher", + "x-ves-oneof-field-client_choice": "[\"any_client\",\"client_selector\",\"ip_threat_category_list\"]", + "x-ves-oneof-field-ip_asn_choice": "[\"any_ip\",\"asn_list\",\"asn_matcher\",\"ip_matcher\",\"ip_prefix_list\"]", + "x-ves-proto-message": "ves.io.schema.policy.ClientMatcher", + "properties": { + "any_client": { + "description": "Exclusive with [client_selector ip_threat_category_list]\n Any Client", + "title": "any ip", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Client" + }, + "any_ip": { + "description": "Exclusive with [asn_list asn_matcher ip_matcher ip_prefix_list]\n Any Source IP", + "title": "any ip", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Source IP" + }, + "asn_list": { + "description": "Exclusive with [any_ip asn_matcher ip_matcher ip_prefix_list]\n List of 4-byte ASN values.\n The predicate evaluates to true if the origin ASN is present in the ASN list.", + "title": "asn list", + "$ref": "#/definitions/policyAsnMatchList", + "x-displayname": "ASN List" + }, + "asn_matcher": { + "description": "Exclusive with [any_ip asn_list ip_matcher ip_prefix_list]\n List of references to BGP ASN Set objects.\n The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.", + "title": "asn matcher", + "$ref": "#/definitions/policyAsnMatcherType", + "x-displayname": "BGP ASN Sets" + }, + "client_selector": { + "description": "Exclusive with [any_client ip_threat_category_list]\n A label selector that describes the expected set of clients. The labels associated with the client making the API request are used to evaluate the label\n expressions in the selector. These labels can be derived from the client TLS certificate or from the volterra internal control plane.\n This is a more flexible and powerful version of the client name matcher predicate that allows a given rule to be applicable to a set of clients based on the\n client labels rather than being limited to relying on patterns in the client name.\n The predicate evaluates to true if the expressions in the label selector are true for the client labels.", + "title": "client selector", + "$ref": "#/definitions/schemaLabelSelectorType", + "x-displayname": "Group of Clients by Label Selector" + }, + "ip_matcher": { + "description": "Exclusive with [any_ip asn_list asn_matcher ip_prefix_list]\n List of references to IP Prefix Set objects.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.", + "title": "ip matcher", + "$ref": "#/definitions/policyIpMatcherType", + "x-displayname": "IP Prefix Sets" + }, + "ip_prefix_list": { + "description": "Exclusive with [any_ip asn_list asn_matcher ip_matcher]\n List of IP Prefixes values.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.", + "title": "ip prefix list", + "$ref": "#/definitions/policyPrefixMatchList", + "x-displayname": "IP Prefix List" + }, + "ip_threat_category_list": { + "description": "Exclusive with [any_client client_selector]\n IP threat categories to choose from", + "title": "IP Threat Category List", + "$ref": "#/definitions/schemapolicyIPThreatCategoryListType", + "x-displayname": "List of IP Threat Categories" + }, + "tls_fingerprint_matcher": { + "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", + "title": "TLS JA3 fingerprint matcher", + "$ref": "#/definitions/policyTlsFingerprintMatcherType", + "x-displayname": "TLS Fingerprint Matcher" + } + } + }, + "policyCookieMatcherType": { + "type": "object", + "description": "A cookie matcher specifies the name of a single cookie and the criteria to match it. The input has a list of values for each\ncookie in the request.\nA cookie matcher can check for one of the following:\n* Presence or absence of the cookie\n* At least one of the values for the cookie in the request satisfies the MatcherType item", + "title": "CookieMatcherType", + "x-displayname": "Cookie Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.CookieMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the cookie is not present.", + "title": "check_not_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the cookie is present.", + "title": "check_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert Match of the expression defined", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the cookie. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { + "type": "string", + "description": " A case-sensitive cookie name.\n\nExample: - \"Session\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Cookie Name", + "x-ves-example": "Session", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyCountryCode": { "type": "string", "description": "ISO 3166 Aplpha-2 country codes\n", "title": "CountryCode", @@ -4540,6 +7662,177 @@ var APISwaggerJSON string = `{ } } }, + "policyDetectionContext": { + "type": "string", + "description": "The available contexts for Exclusion rules.\n\n - CONTEXT_ANY: CONTEXT_ANY\n\nDetection will be excluded for all contexts.\n - CONTEXT_BODY: CONTEXT_BODY\n\nDetection will be excluded for the request body.\n - CONTEXT_REQUEST: CONTEXT_REQUEST\n\nDetection will be excluded for the request.\n - CONTEXT_RESPONSE: CONTEXT_RESPONSE\n\n - CONTEXT_PARAMETER: CONTEXT_PARAMETER\n\nDetection will be excluded for the parameters. The parameter name is required in the Context name field. If the field is left empty, the detection will be excluded for all parameters.\n - CONTEXT_HEADER: CONTEXT_HEADER\n\nDetection will be excluded for the headers. The header name is required in the Context name field. If the field is left empty, the detection will be excluded for all headers.\n - CONTEXT_COOKIE: CONTEXT_COOKIE\n\nDetection will be excluded for the cookies. The cookie name is required in the Context name field. If the field is left empty, the detection will be excluded for all cookies.\n - CONTEXT_URL: CONTEXT_URL\n\nDetection will be excluded for the request URL.\n - CONTEXT_URI: CONTEXT_URI\n", + "title": "Detection Context", + "enum": [ + "CONTEXT_ANY", + "CONTEXT_BODY", + "CONTEXT_REQUEST", + "CONTEXT_RESPONSE", + "CONTEXT_PARAMETER", + "CONTEXT_HEADER", + "CONTEXT_COOKIE", + "CONTEXT_URL", + "CONTEXT_URI" + ], + "default": "CONTEXT_ANY", + "x-displayname": "WAF Exclusion Context Options", + "x-ves-proto-enum": "ves.io.schema.policy.DetectionContext" + }, + "policyGraphQLRule": { + "type": "object", + "description": "This section defines various configuration options for GraphQL inspection.", + "title": "GraphQL Rule", + "x-displayname": "GraphQL", + "x-ves-displayorder": "1,2,6,8,7", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"exact_value\",\"suffix_value\"]", + "x-ves-oneof-field-method_choice": "[\"method_get\",\"method_post\"]", + "x-ves-proto-message": "ves.io.schema.policy.GraphQLRule", + "properties": { + "any_domain": { + "description": "Exclusive with [exact_value suffix_value]\n Enable GraphQL inspection for any domain", + "title": "Any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "exact_path": { + "type": "string", + "description": " Specifies the exact path to GraphQL endpoint. Default value is /graphql.\n\nExample: - \"/graphql\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Path", + "maxLength": 256, + "x-displayname": "Path", + "x-ves-example": "/graphql", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "exact_value": { + "type": "string", + "description": "Exclusive with [any_domain suffix_value]\n Exact domain name\n\nExample: - \"abc.zyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "exact value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "abc.zyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "graphql_settings": { + "description": " GraphQL configuration.", + "title": "GraphQL Settings", + "$ref": "#/definitions/policyGraphQLSettingsType", + "x-displayname": "GraphQL Settings" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "method_get": { + "description": "Exclusive with [method_post]\n", + "title": "Get", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "GET" + }, + "method_post": { + "description": "Exclusive with [method_get]\n", + "title": "Post", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "POST" + }, + "suffix_value": { + "type": "string", + "description": "Exclusive with [any_domain exact_value]\n Suffix of domain name e.g \"xyz.com\" will match \"*.xyz.com\" and \"xyz.com\"\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "suffix value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Suffix Value", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "policyGraphQLSettingsType": { + "type": "object", + "description": "GraphQL configuration.", + "title": "GraphQL Settings", + "x-displayname": "GraphQL Settings", + "x-ves-oneof-field-allow_introspection_queries_choice": "[\"disable_introspection\",\"enable_introspection\"]", + "x-ves-proto-message": "ves.io.schema.policy.GraphQLSettingsType", + "properties": { + "disable_introspection": { + "description": "Exclusive with [enable_introspection]\n Disable introspection queries for the load balancer.", + "title": "Disable Introspection Queries", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_introspection": { + "description": "Exclusive with [disable_introspection]\n Enable introspection queries for the load balancer.", + "title": "Enable Introspection Queries", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" + }, + "max_batched_queries": { + "type": "integer", + "description": " Specify maximum number of queries in a single batched request.\n\nExample: - \"10\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 20\n", + "title": "Max Batched Queries", + "format": "int64", + "x-displayname": "Maximum Batched Queries", + "x-ves-example": "10", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "20" + } + }, + "max_depth": { + "type": "integer", + "description": " Specify maximum depth for the GraphQL query.\n\nExample: - \"10\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 20\n", + "title": "Max Depth", + "format": "int64", + "x-displayname": "Maximum Structure Depth", + "x-ves-example": "10", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "20" + } + }, + "max_total_length": { + "type": "integer", + "description": " Specify maximum length in bytes for the GraphQL query.\n\nExample: - \"5000\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 16386\n", + "title": "Max Total Length", + "format": "int64", + "x-displayname": "Maximum Total Length", + "x-ves-example": "5000", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "16386" + } + } + } + }, "policyHttpCookieName": { "type": "object", "description": "Specifies the name of the cookie field", @@ -4579,26 +7872,160 @@ var APISwaggerJSON string = `{ "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_header_field": "true", - "ves.io.schema.rules.string.max_bytes": "256" + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyHttpMethodMatcherType": { + "type": "object", + "description": "A http method matcher specifies a list of methods to match an input HTTP method. The match is considered successful if the input method is a member of the list.\nThe result of the match based on the method list is inverted if invert_matcher is true.", + "title": "HttpMethodMatcherType", + "x-displayname": "HTTP Method Matcher", + "x-ves-proto-message": "ves.io.schema.policy.HttpMethodMatcherType", + "properties": { + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Method Matcher" + }, + "methods": { + "type": "array", + "description": " List of methods values to match against.\n\nExample: - \"['GET', 'POST', 'DELETE']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Method List", + "x-ves-example": "['GET', 'POST', 'DELETE']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyHttpQueryParameterName": { + "type": "object", + "description": "Specifies the key name of the query parameter", + "title": "HttpQueryParameterName", + "x-displayname": "Key name of the query parameter", + "x-ves-proto-message": "ves.io.schema.policy.HttpQueryParameterName", + "properties": { + "key": { + "type": "string", + "description": " A case-sensitive HTTP query parameter name.\n\nExample: - \"sourceid\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "key", + "maxLength": 256, + "x-displayname": "Query Parameter Name", + "x-ves-example": "sourceid", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyIPThreatCategory": { + "type": "string", + "description": "The IP threat categories to use when a policy based IP threat category is configured.\n\n - SPAM_SOURCES: SPAM_SOURCES\n\n - WINDOWS_EXPLOITS: WINDOWS_EXPLOITS\n\n - WEB_ATTACKS: WEB_ATTACKS\n\n - BOTNETS: BOTNETS\n\n - SCANNERS: SCANNERS\n\n - REPUTATION: REPUTATION\n\n - PHISHING: PHISHING\n\n - PROXY: PROXY\n\n - MOBILE_THREATS: MOBILE_THREATS\n\n - TOR_PROXY: TOR_PROXY\n\n - DENIAL_OF_SERVICE: DENIAL_OF_SERVICE\n\n - NETWORK: NETWORK\n", + "title": "IP Threat Category", + "enum": [ + "SPAM_SOURCES", + "WINDOWS_EXPLOITS", + "WEB_ATTACKS", + "BOTNETS", + "SCANNERS", + "REPUTATION", + "PHISHING", + "PROXY", + "MOBILE_THREATS", + "TOR_PROXY", + "DENIAL_OF_SERVICE", + "NETWORK" + ], + "default": "SPAM_SOURCES", + "x-displayname": "IP Threat Category", + "x-ves-proto-enum": "ves.io.schema.policy.IPThreatCategory" + }, + "policyIpMatcherType": { + "type": "object", + "description": "Match any ip prefix contained in the list of ip_prefix_sets.\nThe result of the match is inverted if invert_matcher is true.", + "title": "ip matcher type", + "x-displayname": "IP Prefix Matcher", + "x-ves-proto-message": "ves.io.schema.policy.IpMatcherType", + "properties": { + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert IP Matcher" + }, + "prefix_sets": { + "type": "array", + "description": " A list of references to ip_prefix_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", + "title": "prefix_sets", + "maxItems": 4, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "IP Prefix Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" } } } }, - "policyHttpQueryParameterName": { + "policyJWTClaimMatcherType": { "type": "object", - "description": "Specifies the key name of the query parameter", - "title": "HttpQueryParameterName", - "x-displayname": "Key name of the query parameter", - "x-ves-proto-message": "ves.io.schema.policy.HttpQueryParameterName", + "description": "A JWT claim matcher specifies the name of a single JWT claim and the criteria for the input request to match it.\nThe input has a list of actual values for each JWT claim name in the JWT payload.\nA JWT claim matcher can check for one of the following:\n* Presence or absence of the JWT Claim in the input\n* At least one of the values for the JWT Claim in the input satisfies the MatcherType item", + "title": "JWTClaimMatcherType", + "x-displayname": "JWT Claim Matcher", + "x-ves-displayorder": "1,2,6", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.JWTClaimMatcherType", "properties": { - "key": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the JWT Claim is not present.", + "title": "check_not_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the JWT Claim is present.", + "title": "check_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the JWT Claim. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { "type": "string", - "description": " A case-sensitive HTTP query parameter name.\n\nExample: - \"sourceid\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", - "title": "key", + "description": " JWT claim name.\n\nExample: - \"user_id\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", "maxLength": 256, - "x-displayname": "Query Parameter Name", - "x-ves-example": "sourceid", + "x-displayname": "JWT Claim Name", + "x-ves-example": "user_id", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", @@ -4641,75 +8068,544 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyHttpHeaderName", "x-displayname": "Header" }, - "query_param": { - "description": "Exclusive with [bearer_token cookie header]\n Token is found in the Query-Param", - "title": "Query-Param", - "$ref": "#/definitions/policyHttpQueryParameterName", - "x-displayname": "Query-Param" + "query_param": { + "description": "Exclusive with [bearer_token cookie header]\n Token is found in the Query-Param", + "title": "Query-Param", + "$ref": "#/definitions/policyHttpQueryParameterName", + "x-displayname": "Query-Param" + }, + "secret_key": { + "description": " Secret Key for JWT\n\nExample: - \"{!\u003c=,d_]b[UFX78T\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "secret_key", + "$ref": "#/definitions/schemaSecretType", + "x-displayname": "Secret Key", + "x-ves-example": "{!\u003c=,d_]b[UFX78T", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyKnownTlsFingerprintClass": { + "type": "string", + "description": "Specifies known TLS fingerprint classes\n\n - TLS_FINGERPRINT_NONE: TLS_FINGERPRINT_NONE\n\nNo TLS fingerprint\n - ANY_MALICIOUS_FINGERPRINT: ANY_MALICIOUS_FINGERPRINT\n\nTLS fingerprints known to be associated with malicious clients\n - ADWARE: ADWARE\n\nTLS fingerprints known to be associated with adware\n - ADWIND: ADWIND\n\nTLS fingerprints known to be associated with adwind\n - DRIDEX: DRIDEX\n\nTLS fingerprints known to be associated with dridex\n - GOOTKIT: GOOTKIT\n\nTLS fingerprints known to be associated with gootkit\n - GOZI: GOZI\n\nTLS fingerprints known to be associated with gozi\n - JBIFROST: JBIFROST\n\nTLS fingerprints known to be associated with jbifrost\n - QUAKBOT: QUAKBOT\n\nTLS fingerprints known to be associated with quakbot\n - RANSOMWARE: RANSOMWARE\n\nTLS fingerprints known to be associated with ransomware\n - TROLDESH: TROLDESH\n\nTLS fingerprints known to be associated with troldesh\n - TOFSEE: TOFSEE\n\nTLS fingerprints known to be associated with tofsee\n - TORRENTLOCKER: TORRENTLOCKER\n\nTLS fingerprints known to be associated with torrentlocker\n - TRICKBOT: TRICKBOT\n\nTLS fingerprints known to be associated with trickbot", + "title": "TLS known fingerprint class", + "enum": [ + "TLS_FINGERPRINT_NONE", + "ANY_MALICIOUS_FINGERPRINT", + "ADWARE", + "ADWIND", + "DRIDEX", + "GOOTKIT", + "GOZI", + "JBIFROST", + "QUAKBOT", + "RANSOMWARE", + "TROLDESH", + "TOFSEE", + "TORRENTLOCKER", + "TRICKBOT" + ], + "default": "TLS_FINGERPRINT_NONE", + "x-displayname": "TLS known fingerprint class", + "x-ves-proto-enum": "ves.io.schema.policy.KnownTlsFingerprintClass" + }, + "policyMatcherType": { + "type": "object", + "description": "A matcher specifies multiple criteria for matching an input string. The match is considered successful if any of the criteria are satisfied. The set\nof supported match criteria includes a list of exact values and a list of regular expressions.", + "title": "MatcherType", + "x-displayname": "Matcher", + "x-ves-proto-message": "ves.io.schema.policy.MatcherType", + "properties": { + "exact_values": { + "type": "array", + "description": " A list of exact values to match the input against.\n\nExample: - \"['new york', 'london', 'sydney', 'tokyo', 'cairo']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 64, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Exact Values", + "x-ves-example": "['new york', 'london', 'sydney', 'tokyo', 'cairo']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "regex_values": { + "type": "array", + "description": " A list of regular expressions to match the input against.\n\nExample: - \"['^new .*$', 'san f.*', '.* del .*']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "regex values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Regex Values", + "x-ves-example": "['^new .*$', 'san f.*', '.* del .*']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "transformers": { + "type": "array", + "description": " An ordered list of transformers (starting from index 0) to be applied to the path before matching.\n\nExample: - \"[BASE64_DECODE, LOWER_CASE]-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 9\n ves.io.schema.rules.repeated.unique: true\n", + "title": "transformers", + "maxItems": 9, + "items": { + "$ref": "#/definitions/policyTransformer" + }, + "x-displayname": "Transformers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "9", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyMatcherTypeBasic": { + "type": "object", + "description": "A matcher specifies multiple criteria for matching an input string. The match is considered successful if any of the criteria are satisfied. The set\nof supported match criteria includes a list of exact values and a list of regular expressions.", + "title": "MatcherTypeBasic", + "x-displayname": "Matcher", + "x-ves-proto-message": "ves.io.schema.policy.MatcherTypeBasic", + "properties": { + "exact_values": { + "type": "array", + "description": " A list of exact values to match the input against.\n\nExample: - \"['new york', 'london', 'sydney', 'tokyo', 'cairo']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 64, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Exact Values", + "x-ves-example": "['new york', 'london', 'sydney', 'tokyo', 'cairo']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "regex_values": { + "type": "array", + "description": " A list of regular expressions to match the input against.\n\nExample: - \"['^new .*$', 'san f.*', '.* del .*']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "regex values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Regex Values", + "x-ves-example": "['^new .*$', 'san f.*', '.* del .*']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyPrefixMatchList": { + "type": "object", + "description": "List of IP Prefix strings to match against.", + "title": "IP Prefix Match List", + "x-displayname": "IP Prefix Match List", + "x-ves-proto-message": "ves.io.schema.policy.PrefixMatchList", + "properties": { + "invert_match": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Match Result" + }, + "ip_prefixes": { + "type": "array", + "description": " List of IPv4 prefix strings.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ip prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Prefix List", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "ipv6_prefixes": { + "type": "array", + "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv6 prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Prefix List", + "x-ves-example": "fd48:fa09:d9d4::/48", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyRequestMatcher": { + "type": "object", + "description": "Request conditions for matching a rule", + "title": "Request Matcher", + "x-displayname": "Request Matcher", + "x-ves-proto-message": "ves.io.schema.policy.RequestMatcher", + "properties": { + "cookie_matchers": { + "type": "array", + "description": " A list of predicates for all cookies that need to be matched. The criteria for matching each cookie is described in individual instances\n of CookieMatcherType. The actual cookie values are extracted from the request API as a list of strings for each cookie name.\n Note that all specified cookie matcher predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "cookie matchers", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyCookieMatcherType" + }, + "x-displayname": "Cookie Matchers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "headers": { + "type": "array", + "description": " A list of predicates for various HTTP headers that need to match. The criteria for matching each HTTP header are described in individual HeaderMatcherType\n instances. The actual HTTP header values are extracted from the request API as a list of strings for each HTTP header type.\n Note that all specified header predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "headers", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyHeaderMatcherType" + }, + "x-displayname": "HTTP Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "jwt_claims": { + "type": "array", + "description": " A list of predicates for various JWT claims that need to match. The criteria for matching each JWT claim are described in individual JWTClaimMatcherType\n instances. The actual JWT claims values are extracted from the JWT payload as a list of strings.\n Note that all specified JWT claim predicates must evaluate to true.\n Note that this feature only works on LBs with JWT Validation feature enabled.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "JWT claims", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyJWTClaimMatcherType" + }, + "x-displayname": "JWT Claims", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "query_params": { + "type": "array", + "description": " A list of predicates for all query parameters that need to be matched. The criteria for matching each query parameter are described in individual instances\n of QueryParameterMatcherType. The actual query parameter values are extracted from the request API as a list of strings for each query parameter name.\n Note that all specified query parameter predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "query params", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyQueryParameterMatcherType" + }, + "x-displayname": "HTTP Query Parameters", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + } + } + }, + "policySimpleDataGuardRule": { + "type": "object", + "description": "Simple Data Guard rule specifies a simple set of match conditions to enable data guard protection", + "title": "SimpleDataGuardRule", + "x-displayname": "Data Guard Rule Specification (Data Leakage Protection)", + "x-ves-displayorder": "10,14,3,6", + "x-ves-oneof-field-action_choice": "[\"apply_data_guard\",\"skip_data_guard\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"exact_value\",\"suffix_value\"]", + "x-ves-proto-message": "ves.io.schema.policy.SimpleDataGuardRule", + "properties": { + "any_domain": { + "description": "Exclusive with [exact_value suffix_value]\n Enable Data Guard for any domain", + "title": "Any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "apply_data_guard": { + "description": "Exclusive with [skip_data_guard]\n", + "title": "apply_data_guard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Apply" + }, + "exact_value": { + "type": "string", + "description": "Exclusive with [any_domain suffix_value]\n Exact domain name\n\nExample: - \"abc.zyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "exact value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "abc.zyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "path": { + "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "skip_data_guard": { + "description": "Exclusive with [apply_data_guard]\n", + "title": "skip_data_guard", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip" + }, + "suffix_value": { + "type": "string", + "description": "Exclusive with [any_domain exact_value]\n Suffix of domain name e.g \"xyz.com\" will match \"*.xyz.com\" and \"xyz.com\"\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "suffix value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Suffix Value", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "policySimpleWafExclusionRule": { + "type": "object", + "description": "Simple WAF exclusion rule specifies a simple set of match conditions to be matched to skip a list of WAF detections", + "title": "SimpleWafExclusionRule", + "x-displayname": "WAF Exclusion Rule", + "x-ves-displayorder": "10,3,16,7,14,9", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"exact_value\",\"suffix_value\"]", + "x-ves-oneof-field-path_choice": "[\"any_path\",\"path_prefix\",\"path_regex\"]", + "x-ves-oneof-field-waf_advanced_configuration": "[\"app_firewall_detection_control\",\"waf_skip_processing\"]", + "x-ves-proto-message": "ves.io.schema.policy.SimpleWafExclusionRule", + "properties": { + "any_domain": { + "description": "Exclusive with [exact_value suffix_value]\n Apply this WAF exclusion rule for any domain", + "title": "Any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "any_path": { + "description": "Exclusive with [path_prefix path_regex]\n Match all paths", + "title": "Any path", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Path" + }, + "app_firewall_detection_control": { + "description": "Exclusive with [waf_skip_processing]\n Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.\n\nValidation Rules:\n ves.io.schema.rules.message.required_one_nonzero_field: true\n", + "title": "App Firewall Detection control", + "$ref": "#/definitions/policyAppFirewallDetectionControl", + "x-displayname": "App Firewall Detection Control", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required_one_nonzero_field": "true" + } + }, + "exact_value": { + "type": "string", + "description": "Exclusive with [any_domain suffix_value]\n Exact domain name\n\nExample: - \"abc.zyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "exact value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "abc.zyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z" }, - "secret_key": { - "description": " Secret Key for JWT\n\nExample: - \"{!\u003c=,d_]b[UFX78T\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "secret_key", - "$ref": "#/definitions/schemaSecretType", - "x-displayname": "Secret Key", - "x-ves-example": "{!\u003c=,d_]b[UFX78T", + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" } + }, + "methods": { + "type": "array", + "description": " methods to be matched\n\nExample: - \"GET\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Methods", + "x-ves-example": "GET", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "path_prefix": { + "type": "string", + "description": "Exclusive with [any_path path_regex]\n Path prefix to match (e.g. the value / will match on all paths)\n\nExample: - \"/register/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "prefix", + "maxLength": 256, + "x-displayname": "Prefix", + "x-ves-example": "/register/", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "path_regex": { + "type": "string", + "description": "Exclusive with [any_path path_prefix]\n Define the regex for the path. For example, the regex ^/.*$ will match on all paths\n\nExample: - \"/blog_id/.*\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.regex: true\n", + "title": "Path Regex", + "maxLength": 256, + "x-displayname": "Path Regex", + "x-ves-example": "/blog_id/.*", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.regex": "true" + } + }, + "suffix_value": { + "type": "string", + "description": "Exclusive with [any_domain exact_value]\n Suffix of domain name e.g \"xyz.com\" will match \"*.xyz.com\" and \"xyz.com\"\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "suffix value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Suffix Value", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "waf_skip_processing": { + "description": "Exclusive with [app_firewall_detection_control]\n Skip all App Firewall processing for this request", + "title": "Skip App Firewall Processing", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip App Firewall Processing" } } }, - "policyPrefixMatchList": { + "policyTlsFingerprintMatcherType": { "type": "object", - "description": "List of IP Prefix strings to match against.", - "title": "IP Prefix Match List", - "x-displayname": "IP Prefix Match List", - "x-ves-proto-message": "ves.io.schema.policy.PrefixMatchList", + "description": "A TLS fingerprint matcher specifies multiple criteria for matching a TLS fingerprint. The set of supported positve match criteria includes a list of known\nclasses of TLS fingerprints and a list of exact values. The match is considered successful if either of these positive criteria are satisfied and the input\nfingerprint is not one of the excluded values.", + "title": "TlsFingerprintMatcherType", + "x-displayname": "TLS Fingerprint Matcher", + "x-ves-proto-message": "ves.io.schema.policy.TlsFingerprintMatcherType", "properties": { - "invert_match": { - "type": "boolean", - "description": " Invert the match result.", - "title": "invert_matcher", - "format": "boolean", - "x-displayname": "Invert Match Result" + "classes": { + "type": "array", + "description": " A list of known classes of TLS fingerprints to match the input TLS JA3 fingerprint against.\n\nExample: - \"['ADWARE', 'TRICKBOT']-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "classes", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyKnownTlsFingerprintClass" + }, + "x-displayname": "TLS fingerprint classes", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } }, - "ip_prefixes": { + "exact_values": { "type": "array", - "description": " List of IPv4 prefix strings.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "ip prefixes", - "maxItems": 128, + "description": " A list of exact TLS JA3 fingerprints to match the input TLS JA3 fingerprint against.\n\nExample: - \"['ed6dfd54b01ebe31b7a65b88abfa7297', '16efcf0e00504ddfedde13bfea997952', 'de364c46b0dfc283b5e38c79ceae3f8f']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.len: 32\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 16, "items": { "type": "string" }, - "x-displayname": "IPv4 Prefix List", - "x-ves-example": "192.168.20.0/24", + "x-displayname": "Exact Values", + "x-ves-example": "['ed6dfd54b01ebe31b7a65b88abfa7297', '16efcf0e00504ddfedde13bfea997952', 'de364c46b0dfc283b5e38c79ceae3f8f']", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", - "ves.io.schema.rules.repeated.items.string.not_empty": "true", - "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.items.string.len": "32", + "ves.io.schema.rules.repeated.max_items": "16", "ves.io.schema.rules.repeated.unique": "true" } }, - "ipv6_prefixes": { + "excluded_values": { "type": "array", - "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "ipv6 prefixes", - "maxItems": 128, + "description": " A list of TLS JA3 fingerprints to be excluded when matching the input TLS JA3 fingerprint. This can be used to skip known false positives when using one\n or more known TLS fingerprint classes in the enclosing matcher.\n\nExample: - \"['fb00055a1196aeea8d1bc609885ba953', 'b386946a5a44d1ddcc843bc75336dfce']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.len: 32\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "excluded values", + "maxItems": 32, "items": { "type": "string" }, - "x-displayname": "IPv6 Prefix List", - "x-ves-example": "fd48:fa09:d9d4::/48", + "x-displayname": "Excluded Values", + "x-ves-example": "['fb00055a1196aeea8d1bc609885ba953', 'b386946a5a44d1ddcc843bc75336dfce']", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", - "ves.io.schema.rules.repeated.items.string.not_empty": "true", - "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.items.string.len": "32", + "ves.io.schema.rules.repeated.max_items": "32", "ves.io.schema.rules.repeated.unique": "true" } } } }, + "policyTransformer": { + "type": "string", + "description": "Transformers to be applied on the part of the request before matching.\n\n - TRANSFORMER_NONE: transformer none\n\nNo transformers enabled\n - LOWER_CASE: lower case\n\nConvert string to lower case\n - UPPER_CASE: upper case\n\nConvert string to upper case\n - BASE64_DECODE: base64 decode\n\nDecode string assuming base64 encoding\n - NORMALIZE_PATH: normalize path\n\nNormalize URL path so that /a/b/../c will be transformed to /a/c\n - REMOVE_WHITESPACE: remove whitespace\n\nRemove whitespaces\n - URL_DECODE: URL decode\n\nDecode string assuming URL encoding as per rfc1738\n - TRIM_LEFT: trim left\n\nRemove whitespace from the left side of the input string\n - TRIM_RIGHT: trim right\n\nRemove whitespace from the right side of the input string\n - TRIM: trim\n\nRemove whitespace from the both sides of the input string", + "title": "Transformer", + "enum": [ + "LOWER_CASE", + "UPPER_CASE", + "BASE64_DECODE", + "NORMALIZE_PATH", + "REMOVE_WHITESPACE", + "URL_DECODE", + "TRIM_LEFT", + "TRIM_RIGHT", + "TRIM" + ], + "default": "TRANSFORMER_NONE", + "x-displayname": "Transformer", + "x-ves-proto-enum": "ves.io.schema.policy.Transformer" + }, "protobufAny": { "type": "object", "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", @@ -4725,6 +8621,89 @@ var APISwaggerJSON string = `{ } } }, + "rate_limiterRateLimitPeriodUnit": { + "type": "string", + "description": "Unit for the period per which the rate limit is applied.\n\n - SECOND: Second\n\nRate limit period is 1 second\n - MINUTE: Minute\n\nRate limit period is 1 minute\n - HOUR: Hour\n\nRate limit period is 1 hour\n - DAY: Day\n\nRate limit period is 1 day", + "title": "RateLimitPeriodUnit", + "enum": [ + "SECOND", + "MINUTE", + "HOUR" + ], + "default": "SECOND", + "x-displayname": "Rate Limit Period Unit", + "x-ves-proto-enum": "ves.io.schema.rate_limiter.RateLimitPeriodUnit" + }, + "rate_limiterRateLimitValue": { + "type": "object", + "description": "A tuple consisting of a rate limit period unit and the total number of allowed requests for that period.", + "title": "RateLimitValue", + "x-displayname": "Rate Limit Value", + "x-ves-displayorder": "2,1,3", + "x-ves-proto-message": "ves.io.schema.rate_limiter.RateLimitValue", + "properties": { + "burst_multiplier": { + "type": "integer", + "description": " The maximum burst of requests to accommodate, expressed as a multiple of the rate.\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 100\n", + "title": "burst_multiplier", + "format": "int64", + "x-displayname": "Burst Multiplier", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "100" + } + }, + "total_number": { + "type": "integer", + "description": " The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 8192\n", + "title": "total_number", + "format": "int64", + "x-displayname": "Number", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "8192" + } + }, + "unit": { + "description": " Unit for the period per which the rate limit is applied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "unit", + "$ref": "#/definitions/rate_limiterRateLimitPeriodUnit", + "x-displayname": "Per Period", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "rate_limiter_policyPolicyList": { + "type": "object", + "description": "List of rate limiter policies to be applied.", + "title": "Rate Limiter Policy List", + "x-displayname": "Rate Limiter Policy List", + "x-ves-proto-message": "ves.io.schema.views.rate_limiter_policy.PolicyList", + "properties": { + "policies": { + "type": "array", + "description": " Ordered list of rate limiter policies.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 64\n", + "title": "Rate Limiter Policies", + "maxItems": 64, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Rate Limiter Policies", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "64" + } + } + } + }, "runtimeStreamError": { "type": "object", "properties": { @@ -4750,6 +8729,27 @@ var APISwaggerJSON string = `{ } } }, + "schemaAction": { + "type": "object", + "title": "action", + "x-displayname": "Action", + "x-ves-oneof-field-action_choice": "[\"block\",\"report\"]", + "x-ves-proto-message": "ves.io.schema.Action", + "properties": { + "block": { + "description": "Exclusive with [report]\n Block the request and report the issue", + "title": "block", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Block" + }, + "report": { + "description": "Exclusive with [block]\n Allow the request and report the issue", + "title": "report", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Report" + } + } + }, "schemaBlindfoldSecretInfoType": { "type": "object", "description": "BlindfoldSecretInfoType specifies information about the Secret managed by F5XC Secret Management", @@ -4844,30 +8844,295 @@ var APISwaggerJSON string = `{ "x-displayname": "Reason", "x-ves-example": "value" }, - "service_name": { - "type": "string", - "description": " Name of the service that sent the status", - "title": "service name", - "x-displayname": "Service Name" + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaCookieManipulationOptionType": { + "type": "object", + "description": "Set Cookie protection attributes.", + "title": "CookieManipulationOptionType", + "x-displayname": "Cookie Protection", + "x-ves-oneof-field-cookie_tampering": "[\"disable_tampering_protection\",\"enable_tampering_protection\"]", + "x-ves-oneof-field-httponly": "[\"add_httponly\",\"ignore_httponly\"]", + "x-ves-oneof-field-max_age": "[\"ignore_max_age\",\"max_age_value\"]", + "x-ves-oneof-field-samesite": "[\"ignore_samesite\",\"samesite_lax\",\"samesite_none\",\"samesite_strict\"]", + "x-ves-oneof-field-secure": "[\"add_secure\",\"ignore_secure\"]", + "x-ves-proto-message": "ves.io.schema.CookieManipulationOptionType", + "properties": { + "add_httponly": { + "description": "Exclusive with [ignore_httponly]\n", + "title": "add_httponly", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Add" + }, + "add_secure": { + "description": "Exclusive with [ignore_secure]\n", + "title": "add_secure", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Add" + }, + "disable_tampering_protection": { + "description": "Exclusive with [enable_tampering_protection]\n", + "title": "disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_tampering_protection": { + "description": "Exclusive with [disable_tampering_protection]\n", + "title": "enable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" + }, + "ignore_httponly": { + "description": "Exclusive with [add_httponly]\n", + "title": "ignore_httponly", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Ignore" + }, + "ignore_max_age": { + "description": "Exclusive with [max_age_value]\n Ignore max age attribute", + "title": "ignore_max_age", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Ignore Max Age" + }, + "ignore_samesite": { + "description": "Exclusive with [samesite_lax samesite_none samesite_strict]\n Ignore Samesite attribute", + "title": "ignore_samesite", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Ignore" + }, + "ignore_secure": { + "description": "Exclusive with [add_secure]\n", + "title": "ignore_secure", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Ignore" + }, + "max_age_value": { + "type": "integer", + "description": "Exclusive with [ignore_max_age]\n Add max age attribute\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 34560000\n", + "title": "add_max_age", + "format": "int32", + "x-displayname": "Add Max Age", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "34560000" + } + }, + "name": { + "type": "string", + "description": " Name of the Cookie\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.cookie_name: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Cookie Name", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.cookie_name": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "samesite_lax": { + "description": "Exclusive with [ignore_samesite samesite_none samesite_strict]\n Add Samesite attribute with Lax. Means that the cookie is not sent on cross-site requests", + "title": "lax", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Lax" + }, + "samesite_none": { + "description": "Exclusive with [ignore_samesite samesite_lax samesite_strict]\n Add Samesite attribute with None. Means that the browser sends the cookie with both cross-site and same-site requests", + "title": "none", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "None" + }, + "samesite_strict": { + "description": "Exclusive with [ignore_samesite samesite_lax samesite_none]\n Add Samesite attribute with Strict. Means that the browser sends the cookie only for same-site requests", + "title": "strict", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Strict" + } + } + }, + "schemaCorsPolicy": { + "type": "object", + "description": "Cross-Origin Resource Sharing requests configuration specified at Virtual-host or\nRoute level. Route level configuration takes precedence.\n\nAn example of an Cross origin HTTP request\n GET /resources/public-data/ HTTP/1.1\n Host: bar.other\n User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Minefield/3.1b3pre\n Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\n Accept-Language: en-us,en;q=0.5\n Accept-Encoding: gzip,deflate\n Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\n Connection: keep-alive\n Referrer: http://foo.example/examples/access-control/simpleXSInvocation.html\n Origin: http://foo.example\n\n\n HTTP/1.1 200 OK\n Date: Mon, 01 Dec 2008 00:23:53 GMT\n Server: Apache/2.0.61\n Access-Control-Allow-Origin: *\n Keep-Alive: timeout=2, max=100\n Connection: Keep-Alive\n Transfer-Encoding: chunked\n Content-Type: application/xml\n\nAn example for cross origin HTTP OPTIONS request with Access-Control-Request-* header\n\n OPTIONS /resources/post-here/ HTTP/1.1\n Host: bar.other\n User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Minefield/3.1b3pre\n Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\n Accept-Language: en-us,en;q=0.5\n Accept-Encoding: gzip,deflate\n Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\n Connection: keep-alive\n Origin: http://foo.example\n Access-Control-Request-Method: POST\n Access-Control-Request-Headers: X-PINGOTHER, Content-Type\n\n\n HTTP/1.1 204 No Content\n Date: Mon, 01 Dec 2008 01:15:39 GMT\n Server: Apache/2.0.61 (Unix)\n Access-Control-Allow-Origin: http://foo.example\n Access-Control-Allow-Methods: POST, GET, OPTIONS\n Access-Control-Allow-Headers: X-PINGOTHER, Content-Type\n Access-Control-Max-Age: 86400\n Vary: Accept-Encoding, Origin\n Keep-Alive: timeout=2, max=100\n Connection: Keep-Alive", + "title": "CorsPolicy", + "x-displayname": "CORS Policy", + "x-ves-displayorder": "2,3,4,5,6,9,8,1", + "x-ves-proto-message": "ves.io.schema.CorsPolicy", + "properties": { + "allow_credentials": { + "type": "boolean", + "description": " Specifies whether the resource allows credentials", + "title": "allow_credentials", + "format": "boolean", + "x-displayname": "Allow Credentials" + }, + "allow_headers": { + "type": "string", + "description": " Specifies the content for the access-control-allow-headers header\n\nExample: - \"value\"-", + "title": "allow_headers", + "x-displayname": "Allow Headers", + "x-ves-example": "value" + }, + "allow_methods": { + "type": "string", + "description": " Specifies the content for the access-control-allow-methods header\n\nExample: - \"GET\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_valid_methods: true\n", + "title": "allow_methods", + "x-displayname": "Allow Methods", + "x-ves-example": "GET", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_valid_methods": "true" + } + }, + "allow_origin": { + "type": "array", + "description": " Specifies the origins that will be allowed to do CORS requests.\n An origin is allowed if either allow_origin or allow_origin_regex match\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_len: 256\n ves.io.schema.rules.repeated.items.string.min_len: 1\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "allow_origin", + "maxItems": 128, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Allow Origin", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "allow_origin_regex": { + "type": "array", + "description": " Specifies regex patterns that match allowed origins.\n An origin is allowed if either allow_origin or allow_origin_regex match\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "allow_origin_regex", + "maxItems": 16, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Allow Origin Regex", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "disabled": { + "type": "boolean", + "description": " Disable the CorsPolicy for a particular route. This is useful when\n virtual-host has CorsPolicy, but we need to disable it on a specific route.\n The value of this field is ignored for virtual-host", + "title": "disabled", + "format": "boolean", + "x-displayname": "Disabled" }, - "status": { + "expose_headers": { "type": "string", - "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", - "title": "status", - "x-displayname": "Status", - "x-ves-example": "Failed", + "description": " Specifies the content for the access-control-expose-headers header\n\nExample: - \"value\"-", + "title": "expose_headers", + "x-displayname": "Expose Headers", + "x-ves-example": "value" + }, + "maximum_age": { + "type": "integer", + "description": " Specifies the content for the access-control-max-age header in seconds.\n This indicates the maximum number of seconds the results can be cached\n A value of -1 will disable caching.\n Maximum permitted value is 86400 seconds (24 hours)\n\nExample: - \"-1\"-\n\nValidation Rules:\n ves.io.schema.rules.int32.gte: -1\n ves.io.schema.rules.int32.lte: 86400\n", + "title": "maximum_age", + "format": "int32", + "x-displayname": "Maximum Age", + "x-ves-example": "-1", "x-ves-validation-rules": { - "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + "ves.io.schema.rules.int32.gte": "-1", + "ves.io.schema.rules.int32.lte": "86400" } - }, - "type": { - "type": "string", - "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", - "title": "type", - "x-displayname": "Type", - "x-ves-example": "Operational", + } + } + }, + "schemaCsrfPolicy": { + "type": "object", + "description": "To mitigate CSRF attack , the policy checks where a request is coming from to determine if the request's origin is the same as its detination.The policy relies on two pieces of information used in determining if a request originated from the same host.\n\n1. The origin that caused the user agent to issue the request (source origin).\n2. The origin that the request is going to (target origin).\nWhen the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being if the source-origin has been added to they policy as valid.\nBecause CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).", + "title": "CsrfPolicy", + "x-displayname": "CSRF Policy", + "x-ves-oneof-field-allowed_domains": "[\"all_load_balancer_domains\",\"custom_domain_list\",\"disabled\"]", + "x-ves-proto-message": "ves.io.schema.CsrfPolicy", + "properties": { + "all_load_balancer_domains": { + "description": "Exclusive with [custom_domain_list disabled]\n Add All load balancer domains to source origin (allow) list.", + "title": "all_load_balancer_domains", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "All HTTP Loadbalancer Domains" + }, + "custom_domain_list": { + "description": "Exclusive with [all_load_balancer_domains disabled]\n Add one or more domains to source origin (allow) list.\n\nExample: - \"abc.xyz.com\"-", + "title": "custom_domain_list", + "$ref": "#/definitions/schemaDomainNameList", + "x-displayname": "Specified domains", + "x-ves-example": "abc.xyz.com" + }, + "disabled": { + "description": "Exclusive with [all_load_balancer_domains custom_domain_list]\n Allow all source origin domains.", + "title": "disabled", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disabled" + } + } + }, + "schemaDomainNameList": { + "type": "object", + "description": "List of domain names used for Host header matching", + "title": "List of Domain names", + "x-displayname": "Domain name list", + "x-ves-proto-message": "ves.io.schema.DomainNameList", + "properties": { + "domains": { + "type": "array", + "description": "\n A list of domain names that will be matched to loadbalancer.\n These domains are not used for SNI match.\n Wildcard names are supported in the suffix or prefix form.\n\nExample: - \"www.foo.com\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.max_len: 256\n ves.io.schema.rules.repeated.items.string.min_len: 1\n ves.io.schema.rules.repeated.items.string.vh_domain: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Domains", + "minItems": 1, + "maxItems": 32, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Domain names", + "x-ves-example": "www.foo.com", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.vh_domain": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" } } } @@ -4965,6 +9230,41 @@ var APISwaggerJSON string = `{ } } }, + "schemaHttpMethod": { + "type": "string", + "description": "Specifies the HTTP method used to access a resource.\n\nAny HTTP Method", + "title": "HttpMethod", + "enum": [ + "ANY", + "GET", + "HEAD", + "POST", + "PUT", + "DELETE", + "CONNECT", + "OPTIONS", + "TRACE", + "PATCH" + ], + "default": "ANY", + "x-displayname": "HTTP Method", + "x-ves-proto-enum": "ves.io.schema.HttpMethod" + }, + "schemaHttpSections": { + "type": "string", + "description": "Request \u0026 Response Sections.\n\n - HTTP_SECTION_NONE: None\n\nALL_SECTIONS\n - HTTP_SECTION_QUERY_PARAMS: QUERY_PARAMS\n\n - HTTP_SECTION_REQ_HEADERS: REQ_HEADERS\n\n - HTTP_SECTION_RSP_HEADERS: RSP_HEADERS\n\n - HTTP_SECTION_REQ_BODY: REQ_BODY\n\n - HTTP_SECTION_RSP_BODY: RSP_BODY\n", + "title": "HTTPSections", + "enum": [ + "HTTP_SECTION_QUERY_PARAMS", + "HTTP_SECTION_REQ_HEADERS", + "HTTP_SECTION_RSP_HEADERS", + "HTTP_SECTION_REQ_BODY", + "HTTP_SECTION_RSP_BODY" + ], + "default": "HTTP_SECTION_NONE", + "x-displayname": "HTTP Sections", + "x-ves-proto-enum": "ves.io.schema.HttpSections" + }, "schemaInitializerType": { "type": "object", "description": "Initializer is information about an initializer that has not yet completed.", @@ -5004,6 +9304,36 @@ var APISwaggerJSON string = `{ } } }, + "schemaLabelSelectorType": { + "type": "object", + "description": "This type can be used to establish a 'selector reference' from one object(called selector) to\na set of other objects(called selectees) based on the value of expresssions.\nA label selector is a label query over a set of resources. An empty label selector matches all objects.\nA null label selector matches no objects. Label selector is immutable.\nexpressions is a list of strings of label selection expression.\nEach string has \",\" separated values which are \"AND\" and all strings are logically \"OR\".\nBNF for expression string\n\u003cselector-syntax\u003e ::= \u003crequirement\u003e | \u003crequirement\u003e \",\" \u003cselector-syntax\u003e\n\u003crequirement\u003e ::= [!] KEY [ \u003cset-based-restriction\u003e | \u003cexact-match-restriction\u003e ]\n\u003cset-based-restriction\u003e ::= \"\" | \u003cinclusion-exclusion\u003e \u003cvalue-set\u003e\n\u003cinclusion-exclusion\u003e ::= \u003cinclusion\u003e | \u003cexclusion\u003e\n\u003cexclusion\u003e ::= \"notin\"\n\u003cinclusion\u003e ::= \"in\"\n\u003cvalue-set\u003e ::= \"(\" \u003cvalues\u003e \")\"\n\u003cvalues\u003e ::= VALUE | VALUE \",\" \u003cvalues\u003e\n\u003cexact-match-restriction\u003e ::= [\"=\"|\"==\"|\"!=\"] VALUE", + "title": "LabelSelectorType", + "x-displayname": "Label Selector", + "x-ves-proto-message": "ves.io.schema.LabelSelectorType", + "properties": { + "expressions": { + "type": "array", + "description": " expressions contains the kubernetes style label expression for selections.\n\nExample: - \"region in (us-west1, us-west2),tier in (staging)\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.k8s_label_selector: true\n ves.io.schema.rules.repeated.items.string.max_len: 4096\n ves.io.schema.rules.repeated.items.string.min_len: 1\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "expressions", + "maxItems": 1, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 4096 + }, + "x-displayname": "Selector Expression", + "x-ves-example": "region in (us-west1, us-west2),tier in (staging)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.k8s_label_selector": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "4096", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } + }, "schemaListMetaType": { "type": "object", "description": "ListMetaType is metadata that all lists must have.", @@ -5011,6 +9341,40 @@ var APISwaggerJSON string = `{ "x-displayname": "List Metadata", "x-ves-proto-message": "ves.io.schema.ListMetaType" }, + "schemaMessageMetaType": { + "type": "object", + "description": "MessageMetaType is metadata (common attributes) of a message that only certain messages\nhave. This information is propagated to the metadata of a child object that gets created\nfrom the containing message during view processing.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "MessageMetaType", + "x-displayname": "Message Metadata", + "x-ves-proto-message": "ves.io.schema.MessageMetaType", + "properties": { + "description": { + "type": "string", + "description": " Human readable description.\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "description", + "maxLength": 256, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "name": { + "type": "string", + "description": " This is the name of the message.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.ves_object_name: true\n", + "title": "name", + "minLength": 1, + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.ves_object_name": "true" + } + } + } + }, "schemaObjectMetaType": { "type": "object", "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", @@ -5033,10 +9397,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5080,6 +9448,24 @@ var APISwaggerJSON string = `{ } } }, + "schemaOpenApiValidationProperties": { + "type": "string", + "description": "List of required properties to validate against the OpenAPI spec\n\nValidate that all query parameters are according to the OpenAPI specification\nValidate that all path parameters are according to the OpenAPI specification\nValidate that the content type of the request is according to the OpenAPI specification\nValidate that all cookies are according to the OpenAPI specification\nValidate that all HTTP headers are according to the OpenAPI specification\nValidate that the body is according to the OpenAPI specification\nValidate that the security schema is according to the OpenAPI specification\nValidate that the response code is according to the OpenAPI specification", + "title": "OpenApiValidationProperties", + "enum": [ + "PROPERTY_QUERY_PARAMETERS", + "PROPERTY_PATH_PARAMETERS", + "PROPERTY_CONTENT_TYPE", + "PROPERTY_COOKIE_PARAMETERS", + "PROPERTY_HTTP_HEADERS", + "PROPERTY_HTTP_BODY", + "PROPERTY_SECURITY_SCHEMA", + "PROPERTY_RESPONSE_CODE" + ], + "default": "PROPERTY_QUERY_PARAMETERS", + "x-displayname": "OpenAPI Validation Properties", + "x-ves-proto-enum": "ves.io.schema.OpenApiValidationProperties" + }, "schemaSecretEncodingType": { "type": "string", "description": "x-displayName: \"Secret Encoding\"\nSecretEncodingType defines the encoding type of the secret before handled by the Secret Management Service.\n\n - EncodingNone: x-displayName: \"None\"\nNo Encoding\n - EncodingBase64: Base64\n\nx-displayName: \"Base64\"\nBase64 encoding", @@ -5456,65 +9842,294 @@ var APISwaggerJSON string = `{ "description": "x-displayName: \"Provider\"\nx-required\nx-example: \"vault-vh-provider\"\nName of the Secret Management Access object that contains information about the backend Vault.", "title": "Provider" }, - "secret_encoding": { - "description": "x-displayName: \"Secret Encoding\"\nThis field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault.", - "title": "secret_encoding", - "$ref": "#/definitions/schemaSecretEncodingType" + "secret_encoding": { + "description": "x-displayName: \"Secret Encoding\"\nThis field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault.", + "title": "secret_encoding", + "$ref": "#/definitions/schemaSecretEncodingType" + }, + "version": { + "type": "integer", + "description": "x-displayName: \"Version\"\nx-example: \"1\"\nVersion of the secret to be fetched. As vault secrets are versioned, user can specify this field to fetch specific version.\nIf not provided latest version will be returned.", + "title": "Version", + "format": "int64" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "schemaWingmanSecretInfoType": { + "type": "object", + "description": "x-displayName: \"Wingman Secret\"\nWingmanSecretInfoType specifies the handle to the wingman secret", + "title": "WingmanSecretInfoType", + "properties": { + "name": { + "type": "string", + "description": "x-displayName: \"Name\"\nx-required\nx-example: \"ChargeBack-API-Key\"\nName of the secret.", + "title": "Name" + } + } + }, + "schemapolicyHeaderMatcherType": { + "type": "object", + "description": "A header matcher specifies the name of a single HTTP header and the criteria for the input request to match it. The input has a list of actual values for each\nheader name in the original HTTP request.\nA header matcher can check for one of the following:\n* Presence or absence of the header in the input\n* At least one of the values for the header in the input satisfies the MatcherType item", + "title": "HeaderMatcherType", + "x-displayname": "Header Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.HeaderMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the header is not present.", + "title": "check_not_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the header is present.", + "title": "check_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Header Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the header. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { + "type": "string", + "description": " A case-insensitive HTTP header name.\n\nExample: - \"Accept-Encoding\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_header_field: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Header Name", + "x-ves-example": "Accept-Encoding", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "schemapolicyIPThreatCategoryListType": { + "type": "object", + "description": "List of ip threat categories", + "title": "IP Threat Category List Type", + "x-displayname": "IP Threat Category List Type", + "x-ves-proto-message": "ves.io.schema.policy.IPThreatCategoryListType", + "properties": { + "ip_threat_categories": { + "type": "array", + "description": " The IP threat categories is obtained from the list and is used to auto-generate equivalent label selection expressions\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IP Threat Categories", + "maxItems": 32, + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "List of IP Threat Categories to choose", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "schemapolicyPathMatcherType": { + "type": "object", + "description": "A path matcher specifies multiple criteria for matching an HTTP path string. The match is considered successful if any of the criteria are satisfied. The set\nof supported match criteria includes a list of path prefixes, a list of exact path values and a list of regular expressions.", + "title": "PathMatcherType", + "x-displayname": "Path Matcher", + "x-ves-proto-message": "ves.io.schema.policy.PathMatcherType", + "properties": { + "exact_values": { + "type": "array", + "description": " A list of exact path values to match the input HTTP path against.\n\nExample: - \"['/api/web/namespaces/project179/users/user1', '/api/config/namespaces/accounting/bgps', '/api/data/namespaces/project443/virtual_host_101']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.http_path: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Exact Values", + "x-ves-example": "['/api/web/namespaces/project179/users/user1', '/api/config/namespaces/accounting/bgps', '/api/data/namespaces/project443/virtual_host_101']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Path Matcher" + }, + "prefix_values": { + "type": "array", + "description": " A list of path prefix values to match the input HTTP path against.\n\nExample: - \"['/api/web/namespaces/project179/users/', '/api/config/namespaces/', '/api/data/namespaces/']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.http_path: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "prefix values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Prefix Values", + "x-ves-example": "['/api/web/namespaces/project179/users/', '/api/config/namespaces/', '/api/data/namespaces/']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "regex_values": { + "type": "array", + "description": " A list of regular expressions to match the input HTTP path against.\n\nExample: - \"['^/api/web/namespaces/abc/users/([a-z]([-a-z0-9]*[a-z0-9])?)$', '/api/data/namespaces/proj404/virtual_hosts/([a-z]([-a-z0-9]*[a-z0-9])?)$']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "regex values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Regex Values", + "x-ves-example": "['^/api/web/namespaces/abc/users/([a-z]([-a-z0-9]*[a-z0-9])?)$', '/api/data/namespaces/proj404/virtual_hosts/([a-z]([-a-z0-9]*[a-z0-9])?)$']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "suffix_values": { + "type": "array", + "description": " A list of path suffix values to match the input HTTP path against.\n\nExample: - \"['.exe', '.shtml', '.wmz']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 64\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Suffix values", + "maxItems": 64, + "items": { + "type": "string", + "maxLength": 64 + }, + "x-displayname": "Suffix Values", + "x-ves-example": "['.exe', '.shtml', '.wmz']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "64", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } }, - "version": { - "type": "integer", - "description": "x-displayName: \"Version\"\nx-example: \"1\"\nVersion of the secret to be fetched. As vault secrets are versioned, user can specify this field to fetch specific version.\nIf not provided latest version will be returned.", - "title": "Version", - "format": "int64" + "transformers": { + "type": "array", + "description": " An ordered list of transformers (starting from index 0) to be applied to the path before matching.\n\nExample: - \"[BASE64_DECODE, LOWER_CASE]-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 9\n ves.io.schema.rules.repeated.unique: true\n", + "title": "transformers", + "maxItems": 9, + "items": { + "$ref": "#/definitions/policyTransformer" + }, + "x-displayname": "Transformers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "9", + "ves.io.schema.rules.repeated.unique": "true" + } } } }, - "schemaViewRefType": { + "schemapolicyQueryParameterMatcherType": { "type": "object", - "description": "ViewRefType represents a reference to a view", - "title": "ViewRefType", - "x-displayname": "View Reference", - "x-ves-proto-message": "ves.io.schema.ViewRefType", + "description": "A query parameter matcher specifies the name of a single query parameter and the criteria for the input request to match it. The input has a list of actual\nvalues for each query parameter name in the original HTTP request.\nA query parameter matcher can check for one of the following:\n* Presence or absence of the query parameter in the input\n* At least one of the values for the query parameter in the input satisfies the MatcherType item", + "title": "QueryParameterMatcherType", + "x-displayname": "Query Parameter Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.QueryParameterMatcherType", "properties": { - "kind": { - "type": "string", - "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", - "title": "kind", - "x-displayname": "Kind", - "x-ves-example": "http_proxy" + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the query parameter is not present.", + "title": "check_not_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Not Present" }, - "name": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "contactus-route" + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the query parameter is present.", + "title": "check_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Present" }, - "namespace": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Query Parameter Matcher" }, - "uid": { - "type": "string", - "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" - } - } - }, - "schemaWingmanSecretInfoType": { - "type": "object", - "description": "x-displayName: \"Wingman Secret\"\nWingmanSecretInfoType specifies the handle to the wingman secret", - "title": "WingmanSecretInfoType", - "properties": { - "name": { + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the given query parameter. The match is successful if any of the values for the query parameter satisfies the\n criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "key": { "type": "string", - "description": "x-displayName: \"Name\"\nx-required\nx-example: \"ChargeBack-API-Key\"\nName of the secret.", - "title": "Name" + "description": " A case-sensitive HTTP query parameter name.\n\nExample: - \"sourceid\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "key", + "maxLength": 256, + "x-displayname": "Query Parameter Name", + "x-ves-example": "sourceid", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } } } }, @@ -5564,6 +10179,138 @@ var APISwaggerJSON string = `{ } } }, + "service_policy_ruleChallengeRuleSpec": { + "type": "object", + "description": "A Challenge Rule consists of an unordered list of predicates and an action. The predicates are evaluated against a set of input fields that are extracted from\nor derived from an L7 request API. A request API is considered to match the rule if all predicates in the rule evaluate to true for that request. Any\npredicates that are not specified in a rule are implicitly considered to be true. If a request API matches a challenge rule, the configured challenge is\nenforced.", + "title": "Challenge Rule Spec", + "x-displayname": "Challenge Rule Specification", + "x-ves-oneof-field-asn_choice": "[\"any_asn\",\"asn_list\",\"asn_matcher\"]", + "x-ves-oneof-field-challenge_action": "[\"disable_challenge\",\"enable_captcha_challenge\",\"enable_javascript_challenge\"]", + "x-ves-oneof-field-client_choice": "[\"any_client\",\"client_selector\"]", + "x-ves-oneof-field-ip_choice": "[\"any_ip\",\"ip_matcher\",\"ip_prefix_list\"]", + "x-ves-proto-message": "ves.io.schema.service_policy_rule.ChallengeRuleSpec", + "properties": { + "any_asn": { + "description": "Exclusive with [asn_list asn_matcher]\n Any origin ASN.", + "$ref": "#/definitions/schemaEmpty" + }, + "any_client": { + "description": "Exclusive with [client_selector]\n Any Client", + "$ref": "#/definitions/schemaEmpty" + }, + "any_ip": { + "description": "Exclusive with [ip_matcher ip_prefix_list]\n Any Source IP", + "$ref": "#/definitions/schemaEmpty" + }, + "arg_matchers": { + "type": "array", + "description": " A list of predicates for all POST args that need to be matched. The criteria for matching each arg are described in individual instances\n of ArgMatcherType. The actual arg values are extracted from the request API as a list of strings for each arg selector name.\n Note that all specified arg matcher predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyArgMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "asn_list": { + "description": "Exclusive with [any_asn asn_matcher]\n List of 4-byte ASN values.\n The predicate evaluates to true if the origin ASN is present in the ASN list.", + "$ref": "#/definitions/policyAsnMatchList" + }, + "asn_matcher": { + "description": "Exclusive with [any_asn asn_list]\n List of references to BGP ASN Set objects.\n The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.", + "$ref": "#/definitions/policyAsnMatcherType" + }, + "body_matcher": { + "description": " Predicate for matching the request body string. The criteria for matching the request body is described in MatcherType.\n The actual request body value is extracted from the request API as a string.", + "$ref": "#/definitions/policyMatcherType" + }, + "client_selector": { + "description": "Exclusive with [any_client]\n A label selector that describes the expected set of clients. The labels associated with the client making the API request are used to evaluate the label\n expressions in the selector. These labels can be derived from the client TLS certificate or from the volterra internal control plane.\n This is a more flexible and powerful version of the client name matcher predicate that allows a given rule to be applicable to a set of clients based on the\n client labels rather than being limited to relying on patterns in the client name.\n The predicate evaluates to true if the expressions in the label selector are true for the client labels.", + "$ref": "#/definitions/schemaLabelSelectorType" + }, + "cookie_matchers": { + "type": "array", + "description": " A list of predicates for all cookies that need to be matched. The criteria for matching each cookie is described in individual instances\n of CookieMatcherType. The actual cookie values are extracted from the request API as a list of strings for each cookie name.\n Note that all specified cookie matcher predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyCookieMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "disable_challenge": { + "description": "Exclusive with [enable_captcha_challenge enable_javascript_challenge]\nDisable the challenge type selected in PolicyBasedChallenge", + "title": "Disable challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable challenge" + }, + "domain_matcher": { + "description": " A list of exact values and/or regular expressions for the expected name of the domain. The actual value of domain is the host component\n from the URL. The predicate evaluates to true if the domain value matches any of the exact values or regular expressions in the domain\n matcher.", + "$ref": "#/definitions/policyMatcherTypeBasic" + }, + "enable_captcha_challenge": { + "description": "Exclusive with [disable_challenge enable_javascript_challenge]\nEnable captcha challenge", + "title": "Enable captcha challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable captcha challenge" + }, + "enable_javascript_challenge": { + "description": "Exclusive with [disable_challenge enable_captcha_challenge]\nEnable javascript challenge", + "title": "Enable javascript challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable javascript challenge" + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-", + "format": "date-time" + }, + "headers": { + "type": "array", + "description": " A list of predicates for various HTTP headers that need to match. The criteria for matching each HTTP header are described in individual HeaderMatcherType\n instances. The actual HTTP header values are extracted from the request API as a list of strings for each HTTP header type.\n Note that all specified header predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyHeaderMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "http_method": { + "description": " The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request.\n The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.", + "$ref": "#/definitions/policyHttpMethodMatcherType" + }, + "ip_matcher": { + "description": "Exclusive with [any_ip ip_prefix_list]\n List of references to IP Prefix Set objects.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.", + "$ref": "#/definitions/policyIpMatcherType" + }, + "ip_prefix_list": { + "description": "Exclusive with [any_ip ip_matcher]\n List of IP Prefixes values.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.", + "$ref": "#/definitions/policyPrefixMatchList" + }, + "path": { + "description": " A list of exact values, prefixes and regular expressions for the expected value of the HTTP path. The actual value of the HTTP path is the unescaped path\n value extracted from the HTTP URL Resource, excluding any query and fragment information.\n The predicate evaluates to true if the actual path value matches any of the exact or prefix values or regular expressions in the path matcher.", + "$ref": "#/definitions/schemapolicyPathMatcherType" + }, + "query_params": { + "type": "array", + "description": " A list of predicates for all query parameters that need to be matched. The criteria for matching each query parameter are described in individual instances\n of QueryParameterMatcherType. The actual query parameter values are extracted from the request API as a list of strings for each query parameter name.\n Note that all specified query parameter predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyQueryParameterMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "tls_fingerprint_matcher": { + "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", + "$ref": "#/definitions/policyTlsFingerprintMatcherType" + } + } + }, "viewsCustomCiphers": { "type": "object", "description": "This defines TLS protocol config including min/max versions and allowed ciphers", @@ -5602,6 +10349,47 @@ var APISwaggerJSON string = `{ } } }, + "viewsPrefixStringListType": { + "type": "object", + "description": "x-example: \"192.168.20.0/24\"\nList of IPv4 prefixes that represent an endpoint", + "title": "ipv4 prefix list", + "x-displayname": "IPv4 Prefix List", + "x-ves-proto-message": "ves.io.schema.views.PrefixStringListType", + "properties": { + "ipv6_prefixes": { + "type": "array", + "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv6 prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Prefix List", + "x-ves-example": "fd48:fa09:d9d4::/48", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "prefixes": { + "type": "array", + "description": " List of IPv4 prefixes that represent an endpoint\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv4 prefix list", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Prefix List", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, "viewsTlsConfig": { "type": "object", "description": "This defines various options to configure TLS configuration parameters", @@ -5807,6 +10595,117 @@ var APISwaggerJSON string = `{ } } }, + "viewscommon_wafIPThreatCategoryListType": { + "type": "object", + "description": "List of ip threat categories", + "title": "IP Threat Category List Type", + "x-displayname": "IP Threat Category List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.IPThreatCategoryListType", + "properties": { + "ip_threat_categories": { + "type": "array", + "description": " If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IP Threat Categories", + "maxItems": 32, + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "List of IP Threat Categories to choose", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "viewscommon_wafPolicyBasedChallenge": { + "type": "object", + "description": "Specifies the settings for policy rule based challenge", + "title": "policy based challenge", + "x-displayname": "Policy Based Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-challenge_choice": "[\"always_enable_captcha_challenge\",\"always_enable_js_challenge\",\"no_challenge\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-oneof-field-temporary_blocking_parameters_choice": "[\"default_temporary_blocking_parameters\",\"temporary_user_blocking\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.PolicyBasedChallenge", + "properties": { + "always_enable_captcha_challenge": { + "description": "Exclusive with [always_enable_js_challenge no_challenge]\n Enable Captcha challenge for all requests.\n Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.", + "title": "always enable captcha challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Always enable Captcha Challenge" + }, + "always_enable_js_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge no_challenge]\n Enable JavaScript challenge for all requests.\n Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.", + "title": "always enable JS challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Always enable JS Challenge" + }, + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" + }, + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_js_challenge_parameters": { + "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_mitigation_settings": { + "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + }, + "default_temporary_blocking_parameters": { + "description": "Exclusive with [temporary_user_blocking]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "js_challenge_parameters": { + "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge Parameters" + }, + "malicious_user_mitigation": { + "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", + "title": "Malicious User Mitigation", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Custom" + }, + "no_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge always_enable_js_challenge]\n Disable JavaScript and Captcha challenge for all requests.\n Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.", + "title": "no_challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "None" + }, + "rule_list": { + "description": " list challenge rules to be used in policy based challenge", + "title": "Challenge rule list", + "$ref": "#/definitions/common_wafChallengeRuleList", + "x-displayname": "Challenge rule list" + }, + "temporary_user_blocking": { + "description": "Exclusive with [default_temporary_blocking_parameters]\n Specifies configuration for temporary user blocking resulting from malicious user detection", + "title": "Temporary User Blocking", + "$ref": "#/definitions/virtual_hostTemporaryUserBlockingType", + "x-displayname": "Temporary User Blocking Parameters" + } + } + }, "virtual_hostAutoCertInfoType": { "type": "object", "description": "Information related to auto certificate", @@ -5850,6 +10749,39 @@ var APISwaggerJSON string = `{ } } }, + "virtual_hostCaptchaChallengeType": { + "type": "object", + "description": "\nEnables loadbalancer to perform captcha challenge\n\nCaptcha challenge will be based on Google Recaptcha.\n\nWith this feature enabled, only clients that pass the captcha challenge will be allowed to\ncomplete the HTTP request.\n\nWhen loadbalancer is configured to do Captcha Challenge, it will redirect the browser to an\nHTML page on every new HTTP request. This HTML page will have captcha challenge embedded in it.\nClient will be allowed to make the request only if the captcha challenge is successful.\nLoadbalancer will tag response header with a cookie to avoid Captcha challenge for subsequent requests.\n\nCAPTCHA is mainly used as a security check to ensure only human users can pass through.\nGenerally, computers or bots are not capable of solving a captcha.\n\nYou can enable either Javascript challenge or Captcha challenge on a virtual host", + "title": "CaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters", + "x-ves-proto-message": "ves.io.schema.virtual_host.CaptchaChallengeType", + "properties": { + "cookie_expiry": { + "type": "integer", + "description": " Cookie expiration period, in seconds.\n An expired cookie causes the loadbalancer to issue a new challenge.\n\nExample: - \"1000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 86400\n", + "title": "cookie_expiry", + "format": "int64", + "x-displayname": "Cookie Expiration Period", + "x-ves-example": "1000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "86400" + } + }, + "custom_page": { + "type": "string", + "description": " Custom message is of type uri_ref. Currently supported URL schemes is string:///.\n For string:/// scheme, message needs to be encoded in Base64 format.\n You can specify this message as base64 encoded plain text message e.g. \"Please Wait..\"\n or it can be HTML paragraph or a body string encoded as base64 string\n E.g. \"\u003cp\u003e Please Wait \u003c/p\u003e\". Base64 encoded string for this html is \"PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"\n\nExample: - \"string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 65536\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "custom_page", + "maxLength": 65536, + "x-displayname": "Custom message for Captcha Challenge", + "x-ves-example": "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "65536", + "ves.io.schema.rules.string.uri_ref": "true" + } + } + } + }, "virtual_hostCertificationState": { "type": "string", "description": "State of auto certification generation for the virtual host\n\n - AutoCertDisabled: Auto Cert Disabled\n\nAuto Certification is disabled.\n - DnsDomainVerification: Dns Domain Verification\n\nAuto Certification is waiting for domain verification.\n - AutoCertStarted: Auto Cert Started\n\nAuto Certificate generation action has started.\n - PreDomainChallengePending: Pre Domain Challenge Pending\n\nThe domains in the virtual host configuration are not still verified. This requires\nthe _acme-challenge TXT record in the domain to have the correct TXT.\n - DomainChallengeStarted: Domain Challenge Started\n\nDomain challenge process started.\n - DomainChallengePending: Domain Challenge Pending\n\nThe domains in the virtual host configuration are being verified. This requires\nthe _acme-challenge TXT record in the domain to have the correct TXT.\n - DomainChallengeVerified: Domain Challenge Verified\n\nAll the domains in the virtual host have been verified.\n - AutoCertFinalize: Auto Cert Finalize\n\nCertificate generation order is Ready and Finalized.\n - CertificateInvalid: Certificate Invalid\n\nCertificate is invalid\n - CertificateValid: Certificate Valid\n\nValid certificate generated and tls_parameters are updated\n - AutoCertNotApplicable: Auto Cert Not Applicable\n\nAuto certificate not applicable because virtual host does not use TLS\n - AutoCertRateLimited: Auto Cert Rate Limited\n\nAuto certificate not available because CA has rate limited the request\n - AutoCertGenerationRetry: Auto Cert Generation Retry\n\nAuto certificate generate failed in the previous attempt, will be retried automatically\n - AutoCertError: Auto Cert Error\n\nError in Certificate generation\nDefault State for Vhost State with Auto Certificate\n - AutoCertAccountRateLimited: Auto Cert Account Rate Limited\n\nAuto certificate not available because CA has rate limited the request\n - AutoCertDomainRateLimited: Auto Cert Domain Rate Limited\n\nAuto certificate not available because CA has rate limited the request\n - CertificateExpired: Certificate Expired\n\nCertificate has expired", @@ -5948,6 +10880,51 @@ var APISwaggerJSON string = `{ } } }, + "virtual_hostJavascriptChallengeType": { + "type": "object", + "description": "\nEnables loadbalancer to perform client browser compatibility test by redirecting to a page\nwith Javascript.\n\nWith this feature enabled, only clients that are capable of executing Javascript(mostly browsers)\nwill be allowed to complete the HTTP request.\n\nWhen loadbalancer is configured to do Javascript Challenge, it will redirect the browser to an\nHTML page on every new HTTP request. This HTML page will have Javascript embedded in it.\nLoadbalancer chooses a set of random numbers for every new client and sends these numbers along with an\nencrypted answer with the request such that it embed these numbers as input in the Javascript.\nJavascript will run on the requestor browser and perform a complex Math operation.\nScript will submit the answer to loadbalancer. Loadbalancer will validate the answer by comparing the calculated\nanswer with the decrypted answer (which was encrypted when it was sent back as reply) and allow\nthe request to the upstream server only if the answer is correct.\nLoadbalancer will tag response header with a cookie to avoid Javascript challenge for subsequent requests.\n\nJavascript challenge serves following purposes\n * Validate that the request is coming via a browser that is capable for running Javascript\n * Force the browser to run a complex operation, f(X), that requires it to spend a large number\n of CPU cycles. This is to slow down a potential DoS attacker by making it difficult to launch\n a large request flood without having to spend even larger CPU cost at their end.\n\nYou can enable either Javascript challenge or Captcha challenge on a virtual host", + "title": "JavascriptChallengeType", + "x-displayname": "Javascript Challenge Parameters", + "x-ves-proto-message": "ves.io.schema.virtual_host.JavascriptChallengeType", + "properties": { + "cookie_expiry": { + "type": "integer", + "description": " Cookie expiration period, in seconds.\n An expired cookie causes the loadbalancer to issue a new challenge.\n\nExample: - \"1000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 86400\n", + "title": "cookie_expiry", + "format": "int64", + "x-displayname": "Cookie Expiration Period", + "x-ves-example": "1000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "86400" + } + }, + "custom_page": { + "type": "string", + "description": " Custom message is of type uri_ref. Currently supported URL schemes is string:///.\n For string:/// scheme, message needs to be encoded in Base64 format.\n You can specify this message as base64 encoded plain text message e.g. \"Please Wait..\"\n or it can be HTML paragraph or a body string encoded as base64 string\n E.g. \"\u003cp\u003e Please Wait \u003c/p\u003e\". Base64 encoded string for this html is \"PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"\n\nExample: - \"string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 65536\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "custom_page", + "maxLength": 65536, + "x-displayname": "Custom Message for Javascript Challenge", + "x-ves-example": "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "65536", + "ves.io.schema.rules.string.uri_ref": "true" + } + }, + "js_script_delay": { + "type": "integer", + "description": " Delay introduced by Javascript, in milliseconds.\n\nExample: - \"1000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1000\n ves.io.schema.rules.uint32.lte: 60000\n", + "title": "js_script_delay", + "format": "int64", + "x-displayname": "Javascript Delay", + "x-ves-example": "1000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1000", + "ves.io.schema.rules.uint32.lte": "60000" + } + } + } + }, "virtual_hostServiceDomain": { "type": "object", "x-ves-proto-message": "ves.io.schema.virtual_host.ServiceDomain", @@ -5968,6 +10945,27 @@ var APISwaggerJSON string = `{ } } }, + "virtual_hostTemporaryUserBlockingType": { + "type": "object", + "description": "\nSpecifies configuration for temporary user blocking resulting from user behavior analysis.\n\nWhen Malicious User Mitigation is enabled from service policy rules, users' accessing the application will be analyzed for\nmalicious activity and the configured mitigation actions will be taken on identified malicious users.\nThese mitigation actions include setting up temporary blocking on that user.\nThis configuration specifies settings on how that blocking should be done by the loadbalancer.", + "title": "TemporaryUserBlockingType", + "x-displayname": "Temporary User Blocking", + "x-ves-proto-message": "ves.io.schema.virtual_host.TemporaryUserBlockingType", + "properties": { + "custom_page": { + "type": "string", + "description": " Custom message is of type -uri_ref-. Currently supported URL schemes is -string:///-.\n For -string:///- scheme, message needs to be encoded in Base64 format.\n You can specify this message as base64 encoded plain text message e.g. \"Blocked..\"\n or it can be HTML paragraph or a body string encoded as base64 string\n E.g. \"\u003cp\u003e Blocked \u003c/p\u003e\". Base64 encoded string for this html is \"PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"\n\nExample: - \"string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 65536\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "custom_page", + "maxLength": 65536, + "x-displayname": "Custom Message for Temporary Blocking", + "x-ves-example": "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "65536", + "ves.io.schema.rules.string.uri_ref": "true" + } + } + } + }, "virtual_hostVirtualHostState": { "type": "string", "description": "State of the virtual host\n\n - VIRTUAL_HOST_READY: VIRTUAL_HOST_READY\n\nVirtual host is ready to install\n - VIRTUAL_HOST_PENDING_VERIFICATION: VIRTUAL_HOST_PENDING_VERIFICATION\n\nVirtual host is verfication pending for some or all of its domains\n - VIRTUAL_HOST_VERIFICATION_FAILED: VIRTUAL_HOST_VERIFICATION_FAILED\n\nVirtual host has one or more domains for which verification failed\n - VIRTUAL_HOST_PENDING_DNS_DELEGATION: VIRTUAL_HOST_PENDING_DNS_DELEGATION\n\nVirtual host is pending DNS delegation\n - VIRTUAL_HOST_PENDING_A_RECORD: VIRTUAL_HOST_PENDING_A_RECORD\n\nVirtual host is waiting for one or more A records to be created\n - VIRTUAL_HOST_DNS_A_RECORD_ADDED: VIRTUAL_HOST_DNS_A_RECORD_ADDED\n\nDNS A record has been added for this Virtual host\n - VIRTUAL_HOST_INTERNET_NLB_PENDING_CREATION: VIRTUAL_HOST_INTERNET_NLB_PENDING_CREATION\n\nInternet facing NLB, is being created on the site/sites belonging to the virtual site\n - VIRTUAL_HOST_INTERNET_NLB_CREATION_FAILED: VIRTUAL_HOST_INTERNET_NLB_CREATION_FAILED\n\nInternet NLB creation failed on the site/sites. InternetNLBVIPStatus will have more information.", diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/pkg.vespkg.go b/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/pkg.vespkg.go index cdccd4824..c02816d43 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/crudapi/pkg.vespkg.go @@ -36,6 +36,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.gc_spec.more_option.cache_ttl_options", + "spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Create"] = []string{ @@ -45,6 +46,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.gc_spec.more_option.cache_ttl_options", + "spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCConfidentialRequestRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Create"] = "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectCreateReq" @@ -56,6 +58,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.gc_spec.more_option.cache_ttl_options", + "spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.List"] = []string{ @@ -65,6 +68,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "items.#.spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "items.#.spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "items.#.spec.gc_spec.more_option.cache_ttl_options", + "items.#.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.ListStream"] = []string{ @@ -74,6 +78,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "items.#.spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "items.#.spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "items.#.spec.gc_spec.more_option.cache_ttl_options", + "items.#.spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Replace"] = []string{ @@ -83,6 +88,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.gc_spec.more_option.cache_ttl_options", + "spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Replace"] = []string{ @@ -92,6 +98,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.gc_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.gc_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.gc_spec.more_option.cache_ttl_options", + "spec.gc_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCConfidentialRequestRegistry["ves.io.schema.views.cdn_loadbalancer.crudapi.API.Replace"] = "ves.io.schema.views.cdn_loadbalancer.crudapi.ObjectReplaceReq" diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/object.pb.go b/pbgo/extschema/schema/views/cdn_loadbalancer/object.pb.go index 00fdcd06e..503f246ae 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/object.pb.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/object.pb.go @@ -505,80 +505,82 @@ func init() { } var fileDescriptor_910512e80a9c3801 = []byte{ - // 1157 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xc6, 0x4e, 0x9a, 0xbc, 0x94, 0xd6, 0xdd, 0x16, 0x70, 0x13, 0xba, 0x8e, 0x5c, 0x84, - 0xaa, 0xaa, 0x5e, 0x43, 0x7f, 0x1c, 0x28, 0x3f, 0xa4, 0x26, 0x36, 0xa5, 0xc8, 0x49, 0xab, 0xb5, - 0x5b, 0xd1, 0x1e, 0x58, 0x8d, 0x67, 0x9f, 0xd7, 0xdb, 0xae, 0x77, 0x96, 0x99, 0x59, 0xa7, 0x3e, - 0x20, 0x21, 0xc4, 0x09, 0x24, 0x84, 0x38, 0x71, 0x87, 0x03, 0xe2, 0x80, 0xf8, 0x13, 0x28, 0x27, - 0x0e, 0x1c, 0xaa, 0x9e, 0x2a, 0x4e, 0xd4, 0xb9, 0x70, 0x42, 0xfd, 0x07, 0x90, 0x90, 0x67, 0x6d, - 0x67, 0xed, 0x38, 0xe0, 0x54, 0x70, 0xda, 0x9d, 0x79, 0xdf, 0xf7, 0xcd, 0xf7, 0xde, 0xfc, 0x84, - 0xd7, 0x3a, 0x28, 0x4c, 0x8f, 0x95, 0x04, 0x6d, 0x61, 0x9b, 0x94, 0x3a, 0x1e, 0x6e, 0x8b, 0x12, - 0x75, 0x02, 0xdb, 0x67, 0xc4, 0x69, 0x10, 0x9f, 0x04, 0x14, 0x79, 0x89, 0x35, 0xee, 0x22, 0x95, - 0x66, 0xc8, 0x99, 0x64, 0xfa, 0xcb, 0x31, 0xc5, 0x8c, 0x29, 0xa6, 0xa2, 0x98, 0x93, 0x94, 0x95, - 0xa2, 0xeb, 0xc9, 0x56, 0xd4, 0x30, 0x29, 0x6b, 0x97, 0x5c, 0xe6, 0xb2, 0x92, 0x22, 0x37, 0xa2, - 0xa6, 0x6a, 0xa9, 0x86, 0xfa, 0x8b, 0x45, 0x57, 0x56, 0xc7, 0x7d, 0xb0, 0x50, 0x7a, 0x2c, 0x10, - 0x83, 0x60, 0x7e, 0x3c, 0xc8, 0x59, 0x24, 0xb1, 0x24, 0xbb, 0x21, 0x0e, 0x01, 0x27, 0xc7, 0x01, - 0xc9, 0x50, 0x61, 0x22, 0x41, 0x14, 0x18, 0x74, 0x26, 0xf4, 0xd7, 0xf6, 0x16, 0xc1, 0x1e, 0x47, - 0xbc, 0x3a, 0x53, 0x99, 0x92, 0xe3, 0xe6, 0xa7, 0x31, 0x92, 0x80, 0x57, 0x26, 0x01, 0x5c, 0x46, - 0xc4, 0xb7, 0x5b, 0x4c, 0xc8, 0x24, 0xae, 0xf0, 0xed, 0x12, 0x2c, 0x5c, 0x57, 0xf5, 0xd7, 0x5f, - 0x87, 0xc5, 0x36, 0x4a, 0xe2, 0x10, 0x49, 0x72, 0xda, 0x9a, 0x76, 0x66, 0xf9, 0xfc, 0x29, 0x73, - 0x7c, 0x32, 0x62, 0xe0, 0x26, 0x4a, 0x52, 0xef, 0x86, 0x68, 0x8d, 0xe0, 0x7a, 0x15, 0x8e, 0x8a, - 0xae, 0x90, 0xd8, 0xb6, 0x47, 0x0a, 0x73, 0x4a, 0xe1, 0xf4, 0x84, 0x42, 0x4d, 0xa1, 0x26, 0x74, - 0x8e, 0xc4, 0xdc, 0xcd, 0xa1, 0xda, 0x3a, 0x64, 0x44, 0x88, 0x34, 0x97, 0x56, 0x12, 0xa6, 0x39, - 0xcb, 0x8a, 0x30, 0x6b, 0x21, 0x52, 0xa5, 0xa6, 0xb8, 0x97, 0x7f, 0x3d, 0xf4, 0xf3, 0x83, 0xdc, - 0x5c, 0x56, 0x7b, 0xf4, 0x20, 0xf7, 0xc5, 0x1c, 0x5c, 0x80, 0xf4, 0x55, 0x94, 0xfa, 0xb9, 0x0e, - 0xf3, 0x25, 0x65, 0x81, 0x60, 0x3e, 0x16, 0xa9, 0x13, 0x14, 0x39, 0x12, 0xe7, 0xdc, 0x5a, 0xf3, - 0xd2, 0x7d, 0xaa, 0x9a, 0x0d, 0x22, 0x3c, 0x5a, 0x6c, 0xb3, 0xc0, 0x93, 0x8c, 0xc3, 0x25, 0x38, - 0x64, 0x61, 0xe8, 0x13, 0x8a, 0xfa, 0xd9, 0x49, 0xe2, 0x36, 0xf7, 0x24, 0xee, 0x61, 0x46, 0x02, - 0x39, 0x5c, 0x84, 0x85, 0x0d, 0x8e, 0x44, 0x1e, 0x98, 0x55, 0x46, 0x1f, 0x0f, 0xcc, 0xca, 0x54, - 0x3d, 0x71, 0xc0, 0xc4, 0x7e, 0x7b, 0x90, 0xfb, 0x61, 0x1e, 0x3e, 0xd1, 0xe0, 0x46, 0xbf, 0x52, - 0xa6, 0x4b, 0x6d, 0xf5, 0x4d, 0x56, 0xd3, 0xee, 0x2f, 0x11, 0xb3, 0x25, 0x65, 0x28, 0x4c, 0xe9, - 0x0b, 0x3b, 0x24, 0x9c, 0xb4, 0x51, 0x22, 0x8f, 0x9b, 0x14, 0xb9, 0xf4, 0x9a, 0x1e, 0x25, 0x52, - 0xad, 0x23, 0xaf, 0x43, 0x24, 0xda, 0xf7, 0xb0, 0xab, 0xf7, 0xa7, 0xaa, 0xe8, 0x31, 0x35, 0x66, - 0x52, 0xaf, 0xe8, 0xb0, 0xed, 0x40, 0x48, 0x8e, 0xa4, 0x5d, 0x4c, 0x90, 0xe1, 0x33, 0x0d, 0xde, - 0x1f, 0x33, 0xd1, 0x66, 0x1c, 0x07, 0x9b, 0xc3, 0x6c, 0x21, 0x71, 0x90, 0x8f, 0xb6, 0x0a, 0xc7, - 0x0f, 0x23, 0x14, 0xd2, 0x8e, 0xbb, 0x85, 0x2d, 0x99, 0x4d, 0x1c, 0xc7, 0xec, 0x10, 0x3f, 0x42, - 0x9b, 0xb6, 0x98, 0x47, 0xd1, 0x14, 0x48, 0x39, 0x4a, 0x5b, 0xf5, 0x1d, 0xd8, 0xcc, 0xe7, 0x1a, - 0xdc, 0x9e, 0xdd, 0x8c, 0x08, 0x59, 0x20, 0xf0, 0xff, 0x73, 0xf3, 0xa9, 0x06, 0xd6, 0xbe, 0x6e, - 0x04, 0xd2, 0x88, 0x7b, 0xb2, 0x3b, 0xf2, 0x43, 0x22, 0xd9, 0x9a, 0xde, 0xb8, 0xbb, 0x2d, 0x87, - 0x46, 0x9e, 0x65, 0x86, 0xfe, 0x4b, 0x1b, 0x0d, 0x42, 0xef, 0x45, 0xe1, 0xb3, 0xd8, 0x28, 0xdc, - 0x86, 0xc5, 0xe1, 0x06, 0xd7, 0x37, 0xe1, 0xd0, 0xc0, 0xcc, 0xe0, 0x98, 0xba, 0x38, 0xdb, 0x09, - 0x71, 0xd5, 0x67, 0x0d, 0xe2, 0x8f, 0xce, 0x89, 0x05, 0x97, 0xf6, 0xff, 0x0b, 0x7f, 0x6a, 0xf0, - 0xfc, 0x46, 0x79, 0xab, 0x9a, 0x80, 0xd6, 0x24, 0x91, 0x91, 0xd0, 0x39, 0x1c, 0x73, 0x30, 0xf4, - 0x59, 0xb7, 0x8d, 0x81, 0xb4, 0x85, 0xea, 0x54, 0x43, 0x1e, 0x39, 0x5f, 0x99, 0x6d, 0xc8, 0x09, - 0xdd, 0xf2, 0x48, 0x2d, 0x1e, 0xc1, 0xca, 0x3a, 0x13, 0x3d, 0xfa, 0x2a, 0x2c, 0x21, 0xe7, 0x8c, - 0xdb, 0x6d, 0xe1, 0xaa, 0x03, 0x70, 0xc9, 0x5a, 0x54, 0x1d, 0x9b, 0xc2, 0xd5, 0xf3, 0xb0, 0x4c, - 0x9b, 0xae, 0xdd, 0x41, 0x2e, 0x3c, 0x16, 0xe4, 0x32, 0x6b, 0xda, 0x99, 0xe7, 0x2c, 0xa0, 0x4d, - 0xf7, 0x56, 0xdc, 0xa3, 0x9f, 0x02, 0xa0, 0xe1, 0x28, 0x3e, 0xaf, 0xe2, 0x4b, 0x34, 0x1c, 0x84, - 0xdf, 0xcb, 0x2c, 0xce, 0x65, 0xd3, 0x85, 0xaf, 0x34, 0x38, 0xda, 0x37, 0xd6, 0x88, 0x87, 0x54, - 0x35, 0xbd, 0x09, 0x0b, 0x63, 0xf9, 0xbd, 0x35, 0x73, 0x7e, 0x35, 0x4f, 0xe2, 0x9e, 0xbc, 0x06, - 0x62, 0xba, 0x0e, 0x19, 0xe1, 0x49, 0x54, 0x97, 0xc1, 0x92, 0xa5, 0xfe, 0xf5, 0x13, 0x30, 0xaf, - 0x12, 0x1a, 0x64, 0x17, 0x37, 0x0a, 0x7f, 0xa5, 0xe1, 0x70, 0x4c, 0x9e, 0xf9, 0x36, 0x8a, 0xe1, - 0x53, 0x6e, 0x23, 0x0b, 0x96, 0xe3, 0x27, 0x85, 0xcd, 0xb1, 0x29, 0x72, 0x73, 0x6b, 0xe9, 0x33, - 0xcb, 0xe7, 0x5f, 0x9a, 0x7a, 0x97, 0x59, 0xd8, 0xec, 0x93, 0xd7, 0x8f, 0x7f, 0xff, 0x51, 0x76, - 0x32, 0x3b, 0x0b, 0xd8, 0x10, 0x23, 0xf4, 0x37, 0x01, 0x28, 0x0b, 0x1c, 0x4f, 0xad, 0xe6, 0x5c, - 0x7a, 0xaa, 0xe4, 0xc6, 0x10, 0xa0, 0xfc, 0x24, 0xf0, 0x7a, 0x6d, 0x54, 0xde, 0x8c, 0x4a, 0xe5, - 0x8d, 0x67, 0x5a, 0x3e, 0x13, 0xc5, 0xbd, 0x05, 0xcb, 0xfd, 0x82, 0x0e, 0x17, 0xe6, 0xbc, 0x52, - 0xbe, 0x34, 0xbb, 0x72, 0x62, 0xfe, 0x2d, 0xe8, 0x2b, 0x0d, 0x96, 0xe0, 0x07, 0x70, 0x3c, 0xf9, - 0x5c, 0x18, 0xea, 0x2f, 0xec, 0x73, 0x1b, 0xef, 0x22, 0xcd, 0xf2, 0x56, 0xed, 0xd6, 0xbb, 0x4c, - 0xc8, 0x84, 0xf0, 0xb1, 0x01, 0x60, 0xb7, 0xfb, 0xf2, 0xf1, 0x47, 0x6f, 0x67, 0xe1, 0x08, 0x1c, - 0x1e, 0xce, 0x97, 0x19, 0x79, 0xce, 0xd9, 0x1f, 0x35, 0xc8, 0xff, 0xcb, 0x6e, 0xd1, 0x4f, 0xaa, - 0x8d, 0x6a, 0x57, 0xd7, 0xed, 0x5a, 0xfd, 0x4a, 0xfd, 0x66, 0xcd, 0xde, 0xb0, 0x2a, 0x57, 0xea, - 0x95, 0x72, 0x36, 0xa5, 0xaf, 0xc2, 0x8b, 0xe3, 0xa1, 0x72, 0xe5, 0x46, 0xf5, 0xfa, 0xed, 0x6b, - 0x5b, 0x57, 0xb3, 0x9a, 0x9e, 0x87, 0xd5, 0x69, 0x41, 0xfb, 0x9d, 0x2b, 0xd7, 0xaa, 0x95, 0x72, - 0x76, 0x4e, 0x5f, 0x81, 0x17, 0xa6, 0x01, 0x2a, 0xe5, 0x6c, 0x5a, 0xcf, 0xc1, 0x89, 0xf1, 0xd8, - 0x80, 0x95, 0x39, 0xfb, 0x8d, 0xa6, 0x06, 0x9d, 0xb6, 0x01, 0xf4, 0x02, 0x18, 0xb1, 0xc6, 0x66, - 0x65, 0xab, 0x3e, 0x64, 0x6e, 0x5d, 0xaf, 0xef, 0x2a, 0xa7, 0xfa, 0xb6, 0xf6, 0x62, 0x92, 0xbe, - 0x4f, 0x43, 0x7e, 0x3f, 0xc0, 0xae, 0x77, 0x03, 0x56, 0xf6, 0x03, 0xf5, 0xfd, 0xaf, 0x7f, 0xad, - 0x3d, 0x7c, 0x62, 0xa4, 0x1e, 0x3f, 0x31, 0x52, 0x4f, 0x9f, 0x18, 0xda, 0xc7, 0x3d, 0x43, 0xfb, - 0xae, 0x67, 0x68, 0xbf, 0xf4, 0x0c, 0xed, 0x61, 0xcf, 0xd0, 0x1e, 0xf7, 0x0c, 0xed, 0xf7, 0x9e, - 0xa1, 0xfd, 0xd1, 0x33, 0x52, 0x4f, 0x7b, 0x86, 0xf6, 0xe5, 0x8e, 0x91, 0xfa, 0x69, 0xc7, 0xd0, - 0x1e, 0xee, 0x18, 0xa9, 0xc7, 0x3b, 0x46, 0xea, 0xce, 0x1d, 0x97, 0x85, 0xf7, 0x5c, 0xb3, 0xff, - 0xbe, 0x40, 0xce, 0x89, 0x19, 0x89, 0x92, 0xfa, 0x69, 0x32, 0xde, 0x2e, 0x86, 0x9c, 0x75, 0x3c, - 0x07, 0x79, 0x71, 0x18, 0x2e, 0x85, 0x0d, 0x97, 0x95, 0xf0, 0xbe, 0x1c, 0x3c, 0x3b, 0xff, 0xf1, - 0x41, 0xdb, 0x58, 0x50, 0x4f, 0xd0, 0x0b, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0xd3, 0x0c, 0x5c, - 0x61, 0x26, 0x0c, 0x00, 0x00, + // 1191 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xf7, 0xc6, 0x4e, 0x9a, 0xbc, 0xf4, 0xdb, 0xba, 0xdb, 0x7e, 0xc1, 0x4d, 0xe8, 0x26, 0x72, + 0x11, 0xaa, 0x2a, 0xbc, 0x86, 0x42, 0x0f, 0x94, 0x1f, 0x52, 0x13, 0x9b, 0x52, 0x94, 0xa4, 0x95, + 0xed, 0x16, 0x5a, 0x21, 0x56, 0xe3, 0xd9, 0xe7, 0xf5, 0x36, 0xeb, 0x9d, 0x65, 0x66, 0xd6, 0xa9, + 0x0f, 0x48, 0x08, 0x71, 0xa2, 0x17, 0xc4, 0x89, 0x3b, 0x17, 0xc4, 0x01, 0x21, 0xf1, 0x0f, 0x50, + 0x4e, 0x1c, 0xab, 0x9e, 0x2a, 0x4e, 0xd4, 0xb9, 0x70, 0x42, 0xbd, 0x70, 0x44, 0x42, 0x3b, 0xeb, + 0x75, 0xd6, 0x8e, 0x03, 0xa6, 0x22, 0xa7, 0xdd, 0x79, 0xef, 0xf3, 0x3e, 0xef, 0xf3, 0x66, 0xde, + 0xfc, 0x80, 0x97, 0xbb, 0x28, 0x4c, 0x97, 0x95, 0x05, 0x6d, 0x63, 0x87, 0x94, 0xbb, 0x2e, 0xee, + 0x88, 0x32, 0xb5, 0x7d, 0xcb, 0x63, 0xc4, 0x6e, 0x12, 0x8f, 0xf8, 0x14, 0x79, 0x99, 0x35, 0xef, + 0x20, 0x95, 0x66, 0xc0, 0x99, 0x64, 0xfa, 0xf3, 0x71, 0x88, 0x19, 0x87, 0x98, 0x2a, 0xc4, 0x1c, + 0x0f, 0x59, 0x2a, 0x39, 0xae, 0x6c, 0x87, 0x4d, 0x93, 0xb2, 0x4e, 0xd9, 0x61, 0x0e, 0x2b, 0xab, + 0xe0, 0x66, 0xd8, 0x52, 0x23, 0x35, 0x50, 0x7f, 0x31, 0xe9, 0xd2, 0xf2, 0xa8, 0x0e, 0x16, 0x48, + 0x97, 0xf9, 0x62, 0xe0, 0x5c, 0x19, 0x75, 0x72, 0x16, 0x4a, 0x2c, 0xcb, 0x5e, 0x80, 0x09, 0xe0, + 0xf4, 0x28, 0x20, 0xed, 0x2a, 0x8e, 0x15, 0x88, 0x02, 0xfd, 0xee, 0x18, 0xff, 0xea, 0xfe, 0x49, + 0xb0, 0x46, 0x11, 0x2f, 0x4d, 0x35, 0x4d, 0xe9, 0xbc, 0x2b, 0x93, 0x22, 0xd2, 0x80, 0x17, 0xc6, + 0x01, 0x5c, 0x86, 0xc4, 0xb3, 0xda, 0x4c, 0xc8, 0x34, 0xae, 0x78, 0x6f, 0x11, 0xe6, 0xae, 0xa9, + 0xf9, 0xd7, 0x5f, 0x83, 0xf9, 0x0e, 0x4a, 0x62, 0x13, 0x49, 0x0a, 0xda, 0xaa, 0x76, 0x6e, 0xf1, + 0xc2, 0x19, 0x73, 0x74, 0x31, 0x62, 0xe0, 0x26, 0x4a, 0xd2, 0xe8, 0x05, 0x58, 0x1b, 0xc2, 0xf5, + 0x0d, 0x38, 0x2e, 0x7a, 0x42, 0x62, 0xc7, 0x1a, 0x32, 0xcc, 0x28, 0x86, 0xb3, 0x63, 0x0c, 0x75, + 0x85, 0x1a, 0xe3, 0x39, 0x16, 0xc7, 0x6e, 0x26, 0x6c, 0x6b, 0x90, 0x13, 0x01, 0xd2, 0x42, 0x56, + 0x51, 0x98, 0xe6, 0x34, 0x1d, 0x61, 0xd6, 0x03, 0xa4, 0x8a, 0x4d, 0xc5, 0x5e, 0xfa, 0x61, 0xe1, + 0xa7, 0xfb, 0x85, 0x99, 0xbc, 0xf6, 0xf0, 0x7e, 0xe1, 0x8f, 0x2c, 0x50, 0xc8, 0x5e, 0x41, 0xa9, + 0x7f, 0xd0, 0x65, 0x9e, 0xa4, 0xcc, 0x17, 0xcc, 0xc3, 0x12, 0xb5, 0xfd, 0x12, 0x47, 0x62, 0xbf, + 0xb8, 0xda, 0xba, 0x78, 0x97, 0xaa, 0x61, 0x93, 0x08, 0x97, 0x96, 0x3a, 0xcc, 0x77, 0x25, 0xe3, + 0x89, 0x9d, 0xf9, 0x12, 0x7d, 0x59, 0xb2, 0xd1, 0x73, 0xbb, 0xc8, 0x7b, 0x25, 0x1f, 0xe5, 0x0e, + 0xe3, 0xdb, 0x25, 0x21, 0x89, 0x6f, 0x13, 0x6e, 0x27, 0x78, 0x68, 0xc2, 0x91, 0x1a, 0x06, 0x1e, + 0xa1, 0xa8, 0xbf, 0x37, 0x9e, 0x68, 0x87, 0xbb, 0x12, 0xf7, 0x65, 0x0a, 0x05, 0x4e, 0x9f, 0x26, + 0x02, 0x03, 0x81, 0xb9, 0x75, 0x8e, 0x44, 0x1e, 0x6e, 0x8a, 0x0a, 0x7a, 0x78, 0x98, 0x29, 0x6c, + 0xc8, 0x6d, 0xb8, 0xe2, 0x90, 0xd7, 0xe3, 0x97, 0xfb, 0x85, 0xef, 0x66, 0xe1, 0x53, 0x0d, 0xae, + 0x47, 0x0d, 0x61, 0x3a, 0xd4, 0x52, 0xdf, 0x74, 0xd3, 0x58, 0xd1, 0x4e, 0x30, 0xdb, 0x52, 0x06, + 0xc2, 0x94, 0x9e, 0xb0, 0x02, 0xc2, 0x49, 0x07, 0x25, 0xf2, 0x78, 0x48, 0x91, 0x4b, 0xb7, 0xe5, + 0x52, 0x22, 0xd5, 0x76, 0x71, 0xbb, 0x44, 0xa2, 0xb5, 0x8d, 0x3d, 0x3d, 0xea, 0xc8, 0x92, 0xcb, + 0x94, 0xc6, 0x34, 0x5f, 0xc9, 0x66, 0x3b, 0xbe, 0x90, 0x1c, 0x49, 0xa7, 0x94, 0x0a, 0x86, 0xcf, + 0x35, 0x78, 0x7f, 0x44, 0x44, 0x87, 0x71, 0x1c, 0x9c, 0x01, 0x66, 0x1b, 0x89, 0x8d, 0x7c, 0x78, + 0x22, 0x70, 0xfc, 0x28, 0x44, 0x21, 0xad, 0xd8, 0x2c, 0x2c, 0xc9, 0x2c, 0x62, 0xdb, 0x66, 0x97, + 0x78, 0x21, 0x5a, 0xb4, 0xcd, 0x5c, 0x8a, 0xa6, 0x40, 0xca, 0x51, 0x5a, 0xca, 0xf6, 0xaf, 0xc5, + 0xdc, 0xd3, 0xe0, 0xd6, 0xf4, 0x62, 0x44, 0xc0, 0x7c, 0x81, 0x87, 0xa7, 0xe6, 0x33, 0x0d, 0x6a, + 0x07, 0xaa, 0x11, 0x48, 0x43, 0xee, 0xca, 0xde, 0x50, 0x0f, 0x09, 0x65, 0x7b, 0xf2, 0xe0, 0xce, + 0x8e, 0x4c, 0x84, 0x3c, 0xcd, 0x0a, 0xfd, 0x97, 0x32, 0x9a, 0x84, 0x6e, 0x87, 0xc1, 0xd3, 0xc8, + 0x28, 0xde, 0x82, 0xf9, 0xe4, 0x1c, 0xd3, 0x37, 0xe1, 0xc8, 0x40, 0xcc, 0xe0, 0x34, 0x7e, 0x75, + 0xba, 0x83, 0xf0, 0x8a, 0xc7, 0x9a, 0xc4, 0x1b, 0x1e, 0x87, 0x73, 0x0e, 0x8d, 0xfe, 0x8b, 0xbf, + 0x6b, 0xf0, 0xff, 0xf5, 0xca, 0xd6, 0x46, 0x0a, 0x5a, 0x97, 0x44, 0x86, 0x42, 0xe7, 0x70, 0xc2, + 0xc6, 0xc0, 0x63, 0xbd, 0x0e, 0xfa, 0xd2, 0x12, 0xca, 0xa8, 0x52, 0x1e, 0xbb, 0x50, 0x9d, 0x2e, + 0xe5, 0x18, 0x6f, 0x65, 0xc8, 0x16, 0x67, 0xa8, 0xe5, 0xed, 0x31, 0x8b, 0xbe, 0x0c, 0x0b, 0xc8, + 0x39, 0xe3, 0x56, 0x47, 0x38, 0xea, 0x9c, 0x5f, 0xa8, 0xcd, 0x2b, 0xc3, 0xa6, 0x70, 0xf4, 0x15, + 0x58, 0xa4, 0x2d, 0xc7, 0xea, 0x22, 0x17, 0x2e, 0xf3, 0x0b, 0xb9, 0x55, 0xed, 0xdc, 0xff, 0x6a, + 0x40, 0x5b, 0xce, 0xcd, 0xd8, 0xa2, 0x9f, 0x01, 0xa0, 0xc1, 0xd0, 0x3f, 0xab, 0xfc, 0x0b, 0x34, + 0x18, 0xb8, 0xdf, 0xcd, 0xcd, 0xcf, 0xe4, 0xb3, 0xc5, 0x2f, 0x35, 0x38, 0x1e, 0x09, 0x6b, 0xc6, + 0x29, 0xd5, 0x9c, 0xde, 0x80, 0xb9, 0x91, 0xfa, 0xde, 0x9c, 0xba, 0xbe, 0xba, 0x2b, 0x71, 0x5f, + 0x5d, 0x03, 0x32, 0x5d, 0x87, 0x9c, 0x70, 0x25, 0xaa, 0x3b, 0x6f, 0xa1, 0xa6, 0xfe, 0xf5, 0x53, + 0x30, 0xab, 0x0a, 0x1a, 0x54, 0x17, 0x0f, 0x8a, 0x7f, 0x66, 0xe1, 0x68, 0x1c, 0x3c, 0xf5, 0xa5, + 0x1b, 0xc3, 0x27, 0x5c, 0xba, 0x35, 0x58, 0x8c, 0x5f, 0x4e, 0x16, 0xc7, 0x96, 0x28, 0xcc, 0xac, + 0x66, 0xcf, 0x2d, 0x5e, 0x78, 0x6e, 0xe2, 0x95, 0x5d, 0xc3, 0x56, 0x14, 0xbc, 0x76, 0xf2, 0xdb, + 0x8f, 0xf3, 0xe3, 0xd5, 0xd5, 0x80, 0x25, 0x18, 0xa1, 0xbf, 0x01, 0x40, 0x99, 0x6f, 0xbb, 0xaa, + 0x9b, 0x0b, 0xd9, 0x89, 0x94, 0xeb, 0x09, 0x40, 0xe9, 0x49, 0xe1, 0xf5, 0xfa, 0x70, 0x7a, 0x73, + 0xaa, 0x94, 0xd7, 0x9f, 0xaa, 0x7d, 0xc6, 0x26, 0xf7, 0x26, 0x2c, 0x46, 0x13, 0x9a, 0x34, 0xe6, + 0xac, 0x62, 0xbe, 0x38, 0x3d, 0x73, 0x6a, 0xfd, 0x6b, 0x10, 0x31, 0x0d, 0x5a, 0xf0, 0x43, 0x38, + 0x99, 0x7e, 0x15, 0x25, 0xfc, 0x73, 0x07, 0x3c, 0x3a, 0xf6, 0x90, 0x66, 0x65, 0xab, 0x7e, 0xf3, + 0x1d, 0x26, 0x64, 0x8a, 0xf8, 0xc4, 0x00, 0xb0, 0x67, 0xbe, 0x74, 0xf2, 0xe1, 0x5b, 0x79, 0x38, + 0x06, 0x47, 0x93, 0xf5, 0x32, 0x43, 0xd7, 0x3e, 0xff, 0xbd, 0x06, 0x2b, 0xff, 0xb0, 0x5b, 0xf4, + 0xd3, 0x6a, 0xa3, 0x5a, 0x1b, 0x6b, 0x56, 0xbd, 0x71, 0xb9, 0x71, 0xa3, 0x6e, 0xad, 0xd7, 0xaa, + 0x97, 0x1b, 0xd5, 0x4a, 0x3e, 0xa3, 0x2f, 0xc3, 0xb3, 0xa3, 0xae, 0x4a, 0xf5, 0xfa, 0xc6, 0xb5, + 0x5b, 0x57, 0xb7, 0xae, 0xe4, 0x35, 0x7d, 0x05, 0x96, 0x27, 0x39, 0xad, 0xb7, 0x2f, 0x5f, 0xdd, + 0xa8, 0x56, 0xf2, 0x33, 0xfa, 0x12, 0x3c, 0x33, 0x09, 0x50, 0xad, 0xe4, 0xb3, 0x7a, 0x01, 0x4e, + 0x8d, 0xfa, 0x06, 0x51, 0xb9, 0xf3, 0x5f, 0x6b, 0x2a, 0xe9, 0xa4, 0x0d, 0xa0, 0x17, 0xc1, 0x88, + 0x39, 0x36, 0xab, 0x5b, 0x8d, 0x24, 0x72, 0xeb, 0x5a, 0x63, 0x8f, 0x39, 0x13, 0xc9, 0xda, 0x8f, + 0x49, 0xeb, 0x3e, 0x0b, 0x2b, 0x07, 0x01, 0xf6, 0xb4, 0x1b, 0xb0, 0x74, 0x10, 0x28, 0xd2, 0xbf, + 0xf6, 0x95, 0xf6, 0xe0, 0xb1, 0x91, 0x79, 0xf4, 0xd8, 0xc8, 0x3c, 0x79, 0x6c, 0x68, 0x9f, 0xf4, + 0x0d, 0xed, 0x9b, 0xbe, 0xa1, 0xfd, 0xdc, 0x37, 0xb4, 0x07, 0x7d, 0x43, 0x7b, 0xd4, 0x37, 0xb4, + 0x5f, 0xfb, 0x86, 0xf6, 0x5b, 0xdf, 0xc8, 0x3c, 0xe9, 0x1b, 0xda, 0x17, 0xbb, 0x46, 0xe6, 0xc7, + 0x5d, 0x43, 0x7b, 0xb0, 0x6b, 0x64, 0x1e, 0xed, 0x1a, 0x99, 0xdb, 0xb7, 0x1d, 0x16, 0x6c, 0x3b, + 0x66, 0xf4, 0x1e, 0x41, 0xce, 0x89, 0x19, 0x8a, 0xb2, 0xfa, 0x69, 0x31, 0xde, 0x29, 0x05, 0x9c, + 0x75, 0x5d, 0x1b, 0x79, 0x29, 0x71, 0x97, 0x83, 0xa6, 0xc3, 0xca, 0x78, 0x57, 0x0e, 0x5e, 0xd7, + 0x7f, 0xfb, 0x6e, 0x6f, 0xce, 0xa9, 0x97, 0xf6, 0x2b, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x85, + 0xa6, 0x42, 0x3a, 0x0d, 0x0d, 0x00, 0x00, } func (x CDNLoadbalancerDeploymentStatus) String() string { diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/pkg.vespkg.go b/pbgo/extschema/schema/views/cdn_loadbalancer/pkg.vespkg.go index 96550882c..2f1821d68 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/pkg.vespkg.go @@ -64,6 +64,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.cdn_loadbalancer.UnsubscribeResponse"] = UnsubscribeResponseValidator() vr["ves.io.schema.views.cdn_loadbalancer.AdvancedOptionsType"] = AdvancedOptionsTypeValidator() + vr["ves.io.schema.views.cdn_loadbalancer.ApiProtection"] = ApiProtectionValidator() vr["ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions"] = AuthenticationOptionsValidator() vr["ves.io.schema.views.cdn_loadbalancer.CDNCacheRule"] = CDNCacheRuleValidator() vr["ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpression"] = CDNCacheRuleExpressionValidator() @@ -84,6 +85,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.cdn_loadbalancer.CacheTTLEnableProps"] = CacheTTLEnablePropsValidator() vr["ves.io.schema.views.cdn_loadbalancer.CacheTTLOptionsType"] = CacheTTLOptionsTypeValidator() vr["ves.io.schema.views.cdn_loadbalancer.CdnOriginPoolType"] = CdnOriginPoolTypeValidator() + vr["ves.io.schema.views.cdn_loadbalancer.CommonSecurityControls"] = CommonSecurityControlsValidator() vr["ves.io.schema.views.cdn_loadbalancer.CreateSpecType"] = CreateSpecTypeValidator() vr["ves.io.schema.views.cdn_loadbalancer.DefaultCacheAction"] = DefaultCacheActionValidator() vr["ves.io.schema.views.cdn_loadbalancer.DefaultCacheTTLProps"] = DefaultCacheTTLPropsValidator() @@ -103,6 +105,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.cdn_loadbalancer.ProxyTypeHttpsAutoCerts"] = ProxyTypeHttpsAutoCertsValidator() vr["ves.io.schema.views.cdn_loadbalancer.ReplaceSpecType"] = ReplaceSpecTypeValidator() vr["ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType"] = SecurityOptionsTypeValidator() + vr["ves.io.schema.views.cdn_loadbalancer.WebApplicationFirewall"] = WebApplicationFirewallValidator() } @@ -120,6 +123,49 @@ func initializeEntryRegistry(mdr *svcfw.MDRegistry) { func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + mdr.RPCSubscriptionFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Create"] = []svcfw.SubscriptionField{ + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.ip_reputation_choice.enable_ip_reputation", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.ip_reputation_choice.ip_reputation_on_cache_miss", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.enable_malicious_user_detection", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.malicious_user_detection_on_cache_miss", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.waf_choice.app_firewall", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.CreateRequest.spec.more_option.security_options.web_app_firewall.waf_choice.app_firewall_on_cache_miss", + AddonServices: []string{"f5xc-waap-standard"}, + }, + } + mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Create"] = []string{ "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.hostname_uri", "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_request_uri", @@ -127,6 +173,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.more_option.cache_ttl_options", + "spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCDeprecatedResponseFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Create"] = []string{ @@ -136,6 +183,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.more_option.cache_ttl_options", + "spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Create"] = []string{ @@ -152,6 +200,21 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.header_options.response_headers_to_add.#.secret_value.secret_encoding_type", "spec.more_option.header_options.response_headers_to_add.#.secret_value.vault_secret_info", "spec.more_option.header_options.response_headers_to_add.#.secret_value.wingman_secret_info", + "spec.more_option.security_options.api_protection.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification.validation_custom_list.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification.validation_custom_list.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification_on_cache_miss.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification_on_cache_miss.validation_custom_list.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification_on_cache_miss.validation_custom_list.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.jwt_validation.auth_server_uri", + "spec.more_option.security_options.api_protection.jwt_validation.jwks", + "spec.more_option.security_options.api_protection.jwt_validation.token_location.cookie", + "spec.more_option.security_options.api_protection.jwt_validation.token_location.header", + "spec.more_option.security_options.api_protection.jwt_validation.token_location.query_param", "spec.more_option.security_options.auth_options.jwt.backup_key.blindfold_secret_info_internal", "spec.more_option.security_options.auth_options.jwt.backup_key.secret_encoding_type", "spec.more_option.security_options.auth_options.jwt.backup_key.vault_secret_info", @@ -160,6 +223,18 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.security_options.auth_options.jwt.secret_key.secret_encoding_type", "spec.more_option.security_options.auth_options.jwt.secret_key.vault_secret_info", "spec.more_option.security_options.auth_options.jwt.secret_key.wingman_secret_info", + "spec.more_option.security_options.common_security_controls.api_rate_limit.api_endpoint_rules.#.base_path", + "spec.more_option.security_options.common_security_controls.blocked_clients.#.metadata.disable", + "spec.more_option.security_options.common_security_controls.cors_policy.max_age", + "spec.more_option.security_options.common_security_controls.policy_based_challenge.rule_list.rules.#.metadata.disable", + "spec.more_option.security_options.common_security_controls.policy_based_challenge.rule_list.rules.#.spec.client_name", + "spec.more_option.security_options.common_security_controls.policy_based_challenge.rule_list.rules.#.spec.client_name_matcher", + "spec.more_option.security_options.common_security_controls.trusted_clients.#.metadata.disable", + "spec.more_option.security_options.web_app_firewall.data_guard_rules.#.metadata.disable", + "spec.more_option.security_options.web_app_firewall.graphql_rules.#.graphql_settings.max_value_length", + "spec.more_option.security_options.web_app_firewall.graphql_rules.#.graphql_settings.policy_name", + "spec.more_option.security_options.web_app_firewall.graphql_rules.#.metadata.disable", + "spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.#.metadata.disable", "spec.origin_pool.use_tls.use_mtls.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.origin_pool.use_tls.use_mtls.tls_certificates.#.private_key.secret_encoding_type", "spec.origin_pool.use_tls.use_mtls.tls_certificates.#.private_key.vault_secret_info", @@ -167,16 +242,56 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.cdn_loadbalancer.API.Create"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, { FieldPath: "spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.cdn_loadbalancer.API.Create"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, { FieldPath: "spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -189,32 +304,95 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "create_form.spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "create_form.spec.more_option.cache_options.default_cache_action.eligible_for_cache", "create_form.spec.more_option.cache_ttl_options", + "create_form.spec.more_option.security_options.api_protection.jwt_validation.jwks", "replace_form.spec.more_option.cache_options.cache_rules.#.eligible_for_cache.hostname_uri", "replace_form.spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_request_uri", "replace_form.spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri", "replace_form.spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "replace_form.spec.more_option.cache_options.default_cache_action.eligible_for_cache", "replace_form.spec.more_option.cache_ttl_options", + "replace_form.spec.more_option.security_options.api_protection.jwt_validation.jwks", "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.hostname_uri", "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_request_uri", "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri", "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.more_option.cache_ttl_options", + "spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.cdn_loadbalancer.API.Get"] = []svcfw.EnvironmentField{ + { + FieldPath: "create_form.spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, { FieldPath: "create_form.spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, }, { FieldPath: "replace_form.spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, }, { FieldPath: "spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -225,12 +403,76 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "items.#.get_spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "items.#.get_spec.more_option.cache_options.default_cache_action.eligible_for_cache", "items.#.get_spec.more_option.cache_ttl_options", + "items.#.get_spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.cdn_loadbalancer.API.List"] = []svcfw.EnvironmentField{ + { + FieldPath: "items.#.get_spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, { FieldPath: "items.#.get_spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + } + + mdr.RPCSubscriptionFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Replace"] = []svcfw.SubscriptionField{ + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_definition_choice.api_specification_on_cache_miss", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.api_discovery_on_cache_miss", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.api_protection.api_discovery_choice.enable_api_discovery", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.ip_reputation_choice.enable_ip_reputation", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.ip_reputation_choice.ip_reputation_on_cache_miss", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.enable_malicious_user_detection", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.common_security_controls.malicious_user_detection_choice.malicious_user_detection_on_cache_miss", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.waf_choice.app_firewall", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.cdn_loadbalancer.ReplaceRequest.spec.more_option.security_options.web_app_firewall.waf_choice.app_firewall_on_cache_miss", + AddonServices: []string{"f5xc-waap-standard"}, }, } @@ -241,6 +483,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.cache_options.cache_rules.#.eligible_for_cache.scheme_hostname_uri_query", "spec.more_option.cache_options.default_cache_action.eligible_for_cache", "spec.more_option.cache_ttl_options", + "spec.more_option.security_options.api_protection.jwt_validation.jwks", } mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.views.cdn_loadbalancer.API.Replace"] = []string{ @@ -257,6 +500,21 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.header_options.response_headers_to_add.#.secret_value.secret_encoding_type", "spec.more_option.header_options.response_headers_to_add.#.secret_value.vault_secret_info", "spec.more_option.header_options.response_headers_to_add.#.secret_value.wingman_secret_info", + "spec.more_option.security_options.api_protection.api_discovery_on_cache_miss.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_protection_rules.api_endpoint_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_protection_rules.api_groups_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification.validation_custom_list.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification.validation_custom_list.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification_on_cache_miss.validation_all_spec_endpoints.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification_on_cache_miss.validation_custom_list.fall_through_mode.fall_through_mode_custom.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.api_specification_on_cache_miss.validation_custom_list.open_api_validation_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.enable_api_discovery.sensitive_data_detection_rules.custom_sensitive_data_detection_rules.#.metadata.disable", + "spec.more_option.security_options.api_protection.jwt_validation.auth_server_uri", + "spec.more_option.security_options.api_protection.jwt_validation.jwks", + "spec.more_option.security_options.api_protection.jwt_validation.token_location.cookie", + "spec.more_option.security_options.api_protection.jwt_validation.token_location.header", + "spec.more_option.security_options.api_protection.jwt_validation.token_location.query_param", "spec.more_option.security_options.auth_options.jwt.backup_key.blindfold_secret_info_internal", "spec.more_option.security_options.auth_options.jwt.backup_key.secret_encoding_type", "spec.more_option.security_options.auth_options.jwt.backup_key.vault_secret_info", @@ -265,6 +523,18 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.more_option.security_options.auth_options.jwt.secret_key.secret_encoding_type", "spec.more_option.security_options.auth_options.jwt.secret_key.vault_secret_info", "spec.more_option.security_options.auth_options.jwt.secret_key.wingman_secret_info", + "spec.more_option.security_options.common_security_controls.api_rate_limit.api_endpoint_rules.#.base_path", + "spec.more_option.security_options.common_security_controls.blocked_clients.#.metadata.disable", + "spec.more_option.security_options.common_security_controls.cors_policy.max_age", + "spec.more_option.security_options.common_security_controls.policy_based_challenge.rule_list.rules.#.metadata.disable", + "spec.more_option.security_options.common_security_controls.policy_based_challenge.rule_list.rules.#.spec.client_name", + "spec.more_option.security_options.common_security_controls.policy_based_challenge.rule_list.rules.#.spec.client_name_matcher", + "spec.more_option.security_options.common_security_controls.trusted_clients.#.metadata.disable", + "spec.more_option.security_options.web_app_firewall.data_guard_rules.#.metadata.disable", + "spec.more_option.security_options.web_app_firewall.graphql_rules.#.graphql_settings.max_value_length", + "spec.more_option.security_options.web_app_firewall.graphql_rules.#.graphql_settings.policy_name", + "spec.more_option.security_options.web_app_firewall.graphql_rules.#.metadata.disable", + "spec.more_option.security_options.web_app_firewall.waf_exclusion_rules.#.metadata.disable", "spec.origin_pool.use_tls.use_mtls.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.origin_pool.use_tls.use_mtls.tls_certificates.#.private_key.secret_encoding_type", "spec.origin_pool.use_tls.use_mtls.tls_certificates.#.private_key.vault_secret_info", @@ -272,9 +542,29 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { } mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.cdn_loadbalancer.API.Replace"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.more_option.security_options.api_protection", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.common_security_controls.rate_limit.ip_allowed_list.ipv6_prefixes.#", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.more_option.security_options.web_app_firewall", + AllowedEnvironments: []string{"crt", "demo1", "staging", "test"}, + }, { FieldPath: "spec.origin_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/private_customapi.pb.go b/pbgo/extschema/schema/views/cdn_loadbalancer/private_customapi.pb.go index 1361f41c7..31181d82a 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/private_customapi.pb.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/private_customapi.pb.go @@ -187,45 +187,47 @@ func init() { } var fileDescriptor_b6a7635dbb4fc69a = []byte{ - // 604 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0xcd, 0x6a, 0x14, 0x4d, - 0x14, 0x9d, 0xca, 0x84, 0x40, 0xfa, 0x83, 0x4f, 0x69, 0x44, 0xc6, 0xc9, 0x50, 0x0c, 0x83, 0x48, - 0xfc, 0xe9, 0x2e, 0x89, 0xb8, 0x09, 0x6e, 0x12, 0xdd, 0xb8, 0x32, 0x8c, 0x64, 0x93, 0xcd, 0x50, - 0xdd, 0x7d, 0xd3, 0x29, 0xed, 0xae, 0xaa, 0x54, 0x55, 0x77, 0x12, 0x24, 0x10, 0xf2, 0x04, 0x82, - 0x3e, 0x80, 0x4b, 0xdf, 0x21, 0x9b, 0xec, 0x74, 0xa3, 0x04, 0xdd, 0x64, 0x69, 0x7a, 0x5c, 0xb8, - 0x8c, 0x6f, 0x20, 0xa9, 0x9e, 0xfc, 0x74, 0x27, 0x84, 0x80, 0xee, 0xee, 0xad, 0x53, 0xa7, 0xee, - 0xa9, 0x73, 0xef, 0x75, 0x9e, 0xe4, 0xa0, 0x7d, 0x26, 0x88, 0x0e, 0x57, 0x20, 0xa5, 0x24, 0x67, - 0xb0, 0xa6, 0x49, 0x18, 0xf1, 0x41, 0x22, 0x68, 0x14, 0xd0, 0x84, 0xf2, 0x10, 0x14, 0x91, 0x8a, - 0xe5, 0xd4, 0xc0, 0x20, 0xcc, 0xb4, 0x11, 0x29, 0x95, 0xcc, 0x97, 0x4a, 0x18, 0xe1, 0xde, 0x2e, - 0xd9, 0x7e, 0xc9, 0xf6, 0x2d, 0xdb, 0xaf, 0xb3, 0xdb, 0x5e, 0xcc, 0xcc, 0x4a, 0x16, 0xf8, 0xa1, - 0x48, 0x49, 0x2c, 0x62, 0x41, 0x2c, 0x39, 0xc8, 0x96, 0x6d, 0x66, 0x13, 0x1b, 0x95, 0x8f, 0xb6, - 0x3b, 0xb1, 0x10, 0x71, 0x02, 0x84, 0x4a, 0x46, 0x28, 0xe7, 0xc2, 0x50, 0xc3, 0x04, 0xd7, 0x23, - 0x74, 0xaa, 0x2a, 0x58, 0xc8, 0xb3, 0xe0, 0xad, 0x2a, 0x68, 0x36, 0x24, 0x1c, 0x43, 0x9d, 0xda, - 0x47, 0x69, 0xc2, 0x22, 0x6a, 0x60, 0x84, 0xf6, 0x6a, 0x28, 0x68, 0xe0, 0x79, 0xed, 0xf1, 0xee, - 0x79, 0xab, 0x06, 0xd5, 0x1b, 0x0f, 0xaf, 0x64, 0xe6, 0x59, 0x55, 0x77, 0xea, 0x0c, 0x65, 0x32, - 0x9a, 0x0c, 0x56, 0x84, 0x36, 0x67, 0xef, 0xf5, 0x76, 0x90, 0x33, 0xb5, 0x28, 0x8f, 0x04, 0xbf, - 0x04, 0x95, 0xb3, 0x10, 0x9e, 0x89, 0x94, 0x32, 0xae, 0xfb, 0xb0, 0x9a, 0x81, 0x36, 0x6e, 0xc7, - 0x99, 0xe4, 0x34, 0x05, 0x2d, 0x69, 0x08, 0x2d, 0xd4, 0x45, 0xd3, 0x93, 0xfd, 0xd3, 0x03, 0xd7, - 0x75, 0xc6, 0x8f, 0x92, 0xd6, 0x98, 0x05, 0x6c, 0xec, 0xde, 0x74, 0x26, 0x0c, 0x70, 0xca, 0x4d, - 0xab, 0x69, 0x4f, 0x47, 0x99, 0xdb, 0x77, 0xae, 0xe9, 0xb2, 0xc4, 0x20, 0x2a, 0x6b, 0xb4, 0xc6, - 0xbb, 0xcd, 0xe9, 0xff, 0x66, 0xee, 0xfa, 0xf5, 0x66, 0x9f, 0x6a, 0xf5, 0x2b, 0xaa, 0xfa, 0xff, - 0xeb, 0x8a, 0xc8, 0x1e, 0x76, 0x3a, 0x17, 0x8b, 0xd7, 0x52, 0x70, 0x0d, 0x33, 0xbf, 0x9b, 0xce, - 0xf5, 0x85, 0x72, 0xc4, 0x9e, 0xda, 0x09, 0x9b, 0x5b, 0x78, 0xee, 0x7e, 0x68, 0x3a, 0x37, 0x2e, - 0x62, 0xb9, 0x73, 0xfe, 0x55, 0xa6, 0xce, 0xbf, 0xc4, 0xae, 0xf6, 0xfc, 0xdf, 0x3c, 0x51, 0x8a, - 0xee, 0x6d, 0x8d, 0x15, 0x9f, 0x5a, 0xd3, 0x39, 0x68, 0x8f, 0x09, 0x4f, 0x2a, 0xb1, 0xbe, 0xe1, - 0xad, 0x29, 0x66, 0xe0, 0x41, 0x77, 0xf9, 0xf1, 0x7a, 0xe8, 0x85, 0x11, 0xf7, 0x02, 0xaa, 0x59, - 0xe8, 0xd1, 0x28, 0x65, 0x7c, 0xfb, 0xfb, 0xcf, 0x77, 0x63, 0x5f, 0x50, 0x6f, 0xf1, 0x78, 0x97, - 0x48, 0xb9, 0x4b, 0xe4, 0xa4, 0x4b, 0x9a, 0xbc, 0x39, 0x89, 0x37, 0xcf, 0x4f, 0x8d, 0x05, 0x37, - 0x49, 0x66, 0x25, 0x0d, 0x6a, 0x2d, 0x9a, 0x45, 0xf7, 0x96, 0x56, 0x7b, 0x09, 0xa9, 0xfc, 0x8a, - 0x30, 0x6e, 0x94, 0xd0, 0x12, 0x42, 0x43, 0xac, 0xb2, 0x7f, 0x5d, 0xb2, 0x3d, 0xbb, 0xbb, 0x83, - 0xc6, 0xbf, 0xed, 0xa0, 0xfb, 0x57, 0x72, 0xf3, 0x45, 0xf0, 0x0a, 0x42, 0xb3, 0xfd, 0xb5, 0xd5, - 0xdc, 0x45, 0x68, 0xfe, 0x3d, 0xda, 0x3b, 0xc0, 0x8d, 0xfd, 0x03, 0xdc, 0x38, 0x3c, 0xc0, 0x68, - 0xab, 0xc0, 0xe8, 0x63, 0x81, 0xd1, 0xe7, 0x02, 0xa3, 0xbd, 0x02, 0xa3, 0x1f, 0x05, 0x46, 0xbf, - 0x0a, 0xdc, 0x38, 0x2c, 0x30, 0x7a, 0x3b, 0xc4, 0x8d, 0xdd, 0x21, 0x46, 0x7b, 0x43, 0xdc, 0xd8, - 0x1f, 0xe2, 0xc6, 0xd2, 0x52, 0x2c, 0xe4, 0xeb, 0xd8, 0xcf, 0x45, 0x62, 0x40, 0x29, 0xea, 0x67, - 0x9a, 0xd8, 0x60, 0x59, 0xa8, 0xf4, 0xa8, 0x13, 0x39, 0x8b, 0x40, 0x79, 0xc7, 0x30, 0x91, 0x41, - 0x2c, 0x08, 0xac, 0x9b, 0x91, 0x2b, 0x97, 0x2e, 0x67, 0x30, 0x61, 0xf7, 0xed, 0xd1, 0x9f, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x1c, 0x25, 0x40, 0x70, 0x18, 0x05, 0x00, 0x00, + // 632 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0x4d, 0x4b, 0x1c, 0x4b, + 0x14, 0x9d, 0x72, 0x06, 0xc1, 0x7e, 0xf0, 0xde, 0xa3, 0x79, 0x3c, 0x26, 0xe3, 0x50, 0x0c, 0x43, + 0x08, 0xe6, 0xa3, 0xbb, 0x82, 0x21, 0x1b, 0xc9, 0x46, 0x93, 0x4d, 0x56, 0x91, 0x09, 0x66, 0xe1, + 0x66, 0xa8, 0xee, 0xbe, 0xb6, 0x15, 0xbb, 0xab, 0xca, 0xaa, 0xea, 0x56, 0x09, 0x42, 0xf0, 0x17, + 0x04, 0x92, 0x7d, 0xb6, 0x59, 0xe5, 0x0f, 0xb8, 0x71, 0x97, 0x6c, 0x22, 0x92, 0x6c, 0x5c, 0xc6, + 0x9e, 0x2c, 0xb2, 0xf4, 0x27, 0x04, 0xab, 0x67, 0xd4, 0x69, 0x45, 0x84, 0x64, 0x77, 0x6f, 0x9d, + 0x3a, 0x55, 0xe7, 0x9e, 0x7b, 0xaf, 0xf3, 0x28, 0x07, 0xed, 0x33, 0x41, 0x74, 0xb8, 0x0a, 0x29, + 0x25, 0x39, 0x83, 0x0d, 0x4d, 0xc2, 0x88, 0xf7, 0x13, 0x41, 0xa3, 0x80, 0x26, 0x94, 0x87, 0xa0, + 0x88, 0x54, 0x2c, 0xa7, 0x06, 0xfa, 0x61, 0xa6, 0x8d, 0x48, 0xa9, 0x64, 0xbe, 0x54, 0xc2, 0x08, + 0xf7, 0x66, 0xc9, 0xf6, 0x4b, 0xb6, 0x6f, 0xd9, 0x7e, 0x95, 0xdd, 0xf2, 0x62, 0x66, 0x56, 0xb3, + 0xc0, 0x0f, 0x45, 0x4a, 0x62, 0x11, 0x0b, 0x62, 0xc9, 0x41, 0xb6, 0x62, 0x33, 0x9b, 0xd8, 0xa8, + 0x7c, 0xb4, 0xd5, 0x8e, 0x85, 0x88, 0x13, 0x20, 0x54, 0x32, 0x42, 0x39, 0x17, 0x86, 0x1a, 0x26, + 0xb8, 0x1e, 0xa2, 0xd3, 0xe3, 0x82, 0x85, 0x3c, 0x0f, 0xde, 0x18, 0x07, 0xcd, 0x96, 0x84, 0x11, + 0xd4, 0xae, 0x14, 0x4a, 0x13, 0x16, 0x51, 0x03, 0x43, 0xb4, 0x5b, 0x41, 0x41, 0x03, 0xcf, 0x2b, + 0x8f, 0x77, 0x2e, 0x5a, 0xd5, 0x1f, 0xbf, 0x71, 0xff, 0x5a, 0x66, 0x9e, 0x57, 0x75, 0xab, 0xca, + 0x50, 0x26, 0xa3, 0x49, 0x7f, 0x55, 0x68, 0x73, 0xfe, 0x5e, 0x77, 0x17, 0x39, 0xd3, 0x4b, 0xf2, + 0x44, 0xf0, 0x73, 0x50, 0x39, 0x0b, 0xe1, 0x89, 0x48, 0x29, 0xe3, 0xba, 0x07, 0xeb, 0x19, 0x68, + 0xe3, 0xb6, 0x9d, 0x29, 0x4e, 0x53, 0xd0, 0x92, 0x86, 0xd0, 0x44, 0x1d, 0x34, 0x33, 0xd5, 0x3b, + 0x3b, 0x70, 0x5d, 0xa7, 0x71, 0x92, 0x34, 0x27, 0x2c, 0x60, 0x63, 0xf7, 0x7f, 0x67, 0xd2, 0x00, + 0xa7, 0xdc, 0x34, 0xeb, 0xf6, 0x74, 0x98, 0xb9, 0x3d, 0xe7, 0x1f, 0x5d, 0x7e, 0xd1, 0x8f, 0xca, + 0x3f, 0x9a, 0x8d, 0x4e, 0x7d, 0xe6, 0xaf, 0xd9, 0xdb, 0x7e, 0xb5, 0xd9, 0x67, 0x5a, 0xfd, 0x31, + 0x55, 0xbd, 0xbf, 0xf5, 0x98, 0xc8, 0x2e, 0x76, 0xda, 0x97, 0x8b, 0xd7, 0x52, 0x70, 0x0d, 0xb3, + 0xef, 0x1b, 0xce, 0xbf, 0x8b, 0xe5, 0x88, 0x3d, 0xb6, 0x13, 0x36, 0xbf, 0xf8, 0xd4, 0xdd, 0xaf, + 0x3b, 0xff, 0x5d, 0xc6, 0x72, 0xe7, 0xfd, 0xeb, 0x4c, 0x9d, 0x7f, 0x85, 0x5d, 0xad, 0x85, 0xdf, + 0x79, 0xa2, 0x14, 0xdd, 0xfd, 0x38, 0x51, 0x7c, 0x6a, 0xbe, 0xc8, 0x41, 0x7b, 0x4c, 0x78, 0x52, + 0x89, 0xcd, 0x2d, 0x6f, 0x43, 0x31, 0x03, 0xf7, 0x3a, 0x2b, 0x0f, 0x37, 0x43, 0x2f, 0x8c, 0xb8, + 0x17, 0x50, 0xcd, 0x42, 0x8f, 0x46, 0x29, 0xe3, 0xa3, 0x53, 0xc1, 0x0d, 0x70, 0xe3, 0x45, 0x90, + 0xb0, 0x1c, 0xd4, 0x96, 0xc7, 0xc1, 0x6c, 0x08, 0xb5, 0xe6, 0x69, 0x43, 0x79, 0x44, 0x55, 0x54, + 0xde, 0xde, 0xf9, 0xf6, 0xe3, 0xed, 0xc4, 0x17, 0xd4, 0x5d, 0x1a, 0x6d, 0x1e, 0x29, 0x37, 0x8f, + 0x9c, 0xf6, 0x54, 0x93, 0x57, 0xa7, 0xf1, 0xf6, 0xc5, 0x19, 0xb3, 0xe0, 0x36, 0xc9, 0x6c, 0x01, + 0xfd, 0x4a, 0x43, 0xe7, 0xd0, 0x9d, 0xe5, 0xf5, 0x6e, 0x42, 0xc6, 0x3c, 0x20, 0x8c, 0x1b, 0x25, + 0xb4, 0x84, 0xd0, 0x10, 0x5b, 0xc7, 0x9f, 0xfe, 0xb2, 0x35, 0xb7, 0xb7, 0x8b, 0x1a, 0x5f, 0x77, + 0xd1, 0xdd, 0x6b, 0x79, 0xff, 0x2c, 0x78, 0x09, 0xa1, 0xd9, 0xd9, 0x6f, 0xd6, 0xf7, 0x10, 0x5a, + 0x78, 0x87, 0x0e, 0x8e, 0x70, 0xed, 0xf0, 0x08, 0xd7, 0x8e, 0x8f, 0x30, 0x7a, 0x5d, 0x60, 0xf4, + 0xa1, 0xc0, 0xe8, 0x73, 0x81, 0xd1, 0x41, 0x81, 0xd1, 0xf7, 0x02, 0xa3, 0x9f, 0x05, 0xae, 0x1d, + 0x17, 0x18, 0xbd, 0x19, 0xe0, 0xda, 0xde, 0x00, 0xa3, 0x83, 0x01, 0xae, 0x1d, 0x0e, 0x70, 0x6d, + 0x79, 0x39, 0x16, 0x72, 0x2d, 0xf6, 0x73, 0x91, 0x18, 0x50, 0x8a, 0xfa, 0x99, 0x26, 0x36, 0x58, + 0x11, 0x2a, 0x3d, 0xe9, 0x5b, 0xce, 0x22, 0x50, 0xde, 0x08, 0x26, 0x32, 0x88, 0x05, 0x81, 0x4d, + 0x33, 0x74, 0xe5, 0xca, 0x55, 0x0e, 0x26, 0xed, 0x76, 0x3e, 0xf8, 0x15, 0x00, 0x00, 0xff, 0xff, + 0x20, 0x24, 0xe6, 0x43, 0x46, 0x05, 0x00, 0x00, } func (this *UpdateServiceDomainsRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.pb.go b/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.pb.go index d1dcc2789..327e2f01b 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.pb.go @@ -1068,110 +1068,113 @@ func init() { } var fileDescriptor_fc3c33be97a4db5c = []byte{ - // 1640 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1b, 0x4b, - 0x1d, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x63, 0xdf, 0xf0, 0x5e, 0x9e, 0x63, 0x8a, 0x9f, 0xf1, - 0xab, 0x9e, 0x42, 0x1e, 0x59, 0x27, 0x7e, 0x2d, 0x90, 0x50, 0x05, 0x9c, 0xc4, 0x89, 0x52, 0xd2, - 0xa4, 0xac, 0xdd, 0x00, 0xb9, 0xac, 0xd6, 0xbb, 0x63, 0x77, 0xc9, 0x7a, 0x67, 0x3b, 0x3b, 0x4e, - 0x1a, 0xa1, 0x48, 0xd0, 0x3f, 0x00, 0x21, 0x71, 0x43, 0x3d, 0x70, 0x00, 0x89, 0x7f, 0x00, 0x84, - 0x94, 0x4b, 0x4f, 0xb4, 0xea, 0x01, 0x55, 0x70, 0xa9, 0x38, 0x20, 0xea, 0x54, 0x55, 0xc5, 0xa9, - 0xe2, 0xc8, 0x09, 0xed, 0xcc, 0xae, 0x6b, 0x6f, 0x4c, 0xb1, 0x4d, 0x4e, 0xde, 0x99, 0xef, 0xf7, - 0xf3, 0x99, 0xef, 0x6f, 0xcf, 0x2e, 0x5c, 0x3e, 0xc2, 0xae, 0x6c, 0x92, 0x82, 0xab, 0xdf, 0xc3, - 0x4d, 0xad, 0x70, 0x64, 0xe2, 0x63, 0xb7, 0xa0, 0x1b, 0xb6, 0x6a, 0x11, 0xcd, 0xa8, 0x69, 0x96, - 0x66, 0xeb, 0x98, 0x16, 0x9c, 0x56, 0xcd, 0x32, 0x75, 0x55, 0xa7, 0x2d, 0x43, 0x73, 0x4c, 0xd9, - 0xa1, 0x84, 0x11, 0x74, 0x4d, 0x40, 0x65, 0x01, 0x95, 0x39, 0x54, 0x0e, 0x43, 0x33, 0x0b, 0x0d, - 0x93, 0xdd, 0x6b, 0xd5, 0x64, 0x9d, 0x34, 0x0b, 0x0d, 0xd2, 0x20, 0x05, 0x0e, 0xae, 0xb5, 0xea, - 0x7c, 0xc5, 0x17, 0xfc, 0x49, 0x90, 0x66, 0xae, 0x36, 0x08, 0x69, 0x58, 0xb8, 0xa0, 0x39, 0x66, - 0x41, 0xb3, 0x6d, 0xc2, 0x34, 0x66, 0x12, 0xdb, 0xf5, 0xa5, 0x5f, 0xf6, 0xa5, 0x1d, 0x0e, 0xdc, - 0x74, 0xd8, 0x89, 0x2f, 0xcc, 0xf4, 0xba, 0x82, 0x29, 0x25, 0xb4, 0x03, 0xec, 0x95, 0x11, 0xa7, - 0x9b, 0xf5, 0x93, 0x5e, 0x21, 0x25, 0x2d, 0x86, 0x0b, 0xec, 0xc4, 0xc1, 0x81, 0xc2, 0x6c, 0xaf, - 0x42, 0xb7, 0x28, 0x1f, 0x8a, 0x1f, 0x76, 0xb1, 0x7d, 0x14, 0xe2, 0xcf, 0x5d, 0x8c, 0xb1, 0xda, - 0xab, 0xb1, 0x34, 0x50, 0x16, 0x48, 0xed, 0xc7, 0x58, 0x67, 0x3e, 0x64, 0x71, 0x20, 0x48, 0xb7, - 0xa9, 0x9f, 0xf4, 0x43, 0x74, 0x2b, 0x7c, 0x16, 0x56, 0xa0, 0xac, 0xa5, 0x59, 0xea, 0x3d, 0xe2, - 0xb2, 0x6e, 0xbd, 0xfc, 0x1f, 0x00, 0x9c, 0x5c, 0xa7, 0x58, 0x63, 0x58, 0xc1, 0xf7, 0x5b, 0xd8, - 0x65, 0xe8, 0x3b, 0x30, 0xd1, 0xc4, 0x4c, 0x33, 0x34, 0xa6, 0xa5, 0x41, 0x0e, 0xcc, 0xa5, 0x8a, - 0x9f, 0xca, 0xbd, 0xd5, 0xb1, 0xc7, 0x6d, 0x17, 0xa8, 0xdb, 0x98, 0x69, 0xd5, 0x13, 0x07, 0x2b, - 0x1d, 0x10, 0xfa, 0x11, 0x8c, 0xb9, 0x0e, 0xd6, 0xd3, 0x11, 0x0e, 0xbe, 0x2e, 0x0f, 0x52, 0x5a, - 0xb2, 0x60, 0xab, 0x38, 0x58, 0xf7, 0xd8, 0xd6, 0xa6, 0x7f, 0x75, 0x3a, 0xe1, 0x91, 0xc8, 0x0d, - 0x5d, 0xf5, 0x7e, 0x15, 0x4e, 0xb9, 0x92, 0x7c, 0xb6, 0x1a, 0x17, 0xa7, 0xe7, 0x1f, 0x46, 0xe0, - 0x54, 0x60, 0xb8, 0xeb, 0x10, 0xdb, 0xc5, 0xe8, 0xe6, 0x05, 0xcb, 0x73, 0x7d, 0x2d, 0xdf, 0xc2, - 0xac, 0x8f, 0xd9, 0x7b, 0x70, 0xda, 0x3d, 0x71, 0x19, 0x6e, 0xaa, 0x1d, 0x92, 0x28, 0x27, 0xf9, - 0x2c, 0x44, 0x52, 0xe1, 0x5a, 0x17, 0xa9, 0xa6, 0x04, 0xfc, 0x76, 0x40, 0xb8, 0xdf, 0x13, 0x87, - 0xa5, 0xc1, 0xe2, 0xb0, 0x85, 0xd9, 0x10, 0x41, 0xf8, 0x27, 0x80, 0x53, 0x0a, 0x76, 0x2c, 0x4d, - 0xef, 0xa4, 0xef, 0xbb, 0x17, 0x82, 0x70, 0xad, 0x6f, 0x10, 0x7c, 0x58, 0x9f, 0x40, 0x1c, 0xf4, - 0xd8, 0x7d, 0x63, 0x30, 0xbb, 0x7d, 0xba, 0xff, 0x61, 0x3b, 0x2a, 0x40, 0x89, 0x62, 0x97, 0xb4, - 0xa8, 0x8e, 0xd5, 0x23, 0x4c, 0x5d, 0x93, 0xd8, 0x3c, 0xca, 0xc9, 0xb5, 0xd8, 0x9b, 0x33, 0x00, - 0x94, 0xe9, 0x40, 0xba, 0x2f, 0x84, 0xdd, 0xce, 0x7e, 0x00, 0xa7, 0x3b, 0xbe, 0x8a, 0x8c, 0xe7, - 0x7f, 0x03, 0x20, 0xdc, 0xc2, 0x2c, 0xf0, 0xfd, 0x2a, 0x4c, 0xda, 0x5a, 0x13, 0xbb, 0x8e, 0xa6, - 0x63, 0xee, 0x7c, 0x52, 0x79, 0xb7, 0x81, 0x10, 0x8c, 0x79, 0x0b, 0xee, 0x57, 0x52, 0xe1, 0xcf, - 0xc8, 0x80, 0xde, 0x89, 0x9c, 0x4c, 0xad, 0x13, 0xda, 0xd4, 0x18, 0x37, 0x67, 0xaa, 0xf8, 0xed, - 0x81, 0xd3, 0x15, 0x18, 0xb3, 0xc9, 0xe1, 0xeb, 0xc4, 0xc0, 0xca, 0x14, 0xed, 0xd9, 0xcb, 0xff, - 0x3e, 0x0e, 0x53, 0x5d, 0x9a, 0xa8, 0x0a, 0x53, 0x3a, 0x2f, 0x5d, 0x7e, 0xa6, 0x1f, 0xe8, 0x2f, - 0x86, 0x69, 0x14, 0xdf, 0x63, 0x05, 0x0a, 0x1e, 0xef, 0x1c, 0xf4, 0x03, 0x38, 0x41, 0x45, 0x7c, - 0x04, 0x6d, 0x74, 0x98, 0xfe, 0xeb, 0xad, 0x22, 0x25, 0xe5, 0x33, 0x71, 0xe2, 0x7e, 0x49, 0x8b, - 0xbd, 0x27, 0x69, 0x3d, 0x8d, 0x38, 0x7e, 0x19, 0x8d, 0x78, 0xe5, 0x52, 0x1a, 0x31, 0x7e, 0xb9, - 0x8d, 0x88, 0xbe, 0x0f, 0xe3, 0x2e, 0xd3, 0x58, 0xcb, 0x4d, 0xff, 0xfa, 0x11, 0xc8, 0x45, 0xe7, - 0x52, 0xc5, 0xe2, 0x60, 0xdc, 0x15, 0x8e, 0x12, 0x86, 0xaf, 0x45, 0x1f, 0x9f, 0x02, 0xc5, 0x27, - 0x42, 0xdb, 0xf0, 0x03, 0x8a, 0xeb, 0x98, 0x52, 0xd3, 0x6e, 0xa8, 0xe2, 0x3f, 0xc2, 0x4d, 0x27, - 0x38, 0xf7, 0xd5, 0xff, 0xd2, 0xc6, 0x75, 0xee, 0xb3, 0xd4, 0x81, 0x89, 0x7d, 0x17, 0xed, 0xc3, - 0xb4, 0x81, 0x2d, 0xcc, 0xb0, 0xa1, 0x0a, 0x19, 0x36, 0x3a, 0x8c, 0xc9, 0x01, 0x18, 0x67, 0x7c, - 0xb4, 0xe2, 0x83, 0x03, 0xde, 0x1f, 0xc2, 0x59, 0xc3, 0x74, 0xb5, 0x9a, 0xd5, 0x8f, 0x18, 0x0e, - 0x40, 0xfc, 0x71, 0x00, 0x0f, 0x31, 0x77, 0xf5, 0xfa, 0xad, 0x58, 0x02, 0x48, 0x91, 0xfc, 0x6f, - 0x01, 0x4c, 0xed, 0x98, 0xee, 0x80, 0xfd, 0xfd, 0x55, 0x38, 0x61, 0x69, 0x35, 0x6c, 0xa9, 0x75, - 0xd3, 0x62, 0x98, 0xfa, 0x7d, 0x9e, 0xe2, 0x7b, 0x9b, 0x7c, 0x0b, 0x7d, 0x0a, 0x27, 0x29, 0x76, - 0x08, 0x65, 0x6a, 0xdd, 0xc4, 0x96, 0xe1, 0xa6, 0xa3, 0xb9, 0xe8, 0x5c, 0x52, 0x99, 0x10, 0x9b, - 0x9b, 0x7c, 0x0f, 0x2d, 0xc2, 0x0f, 0x7d, 0x25, 0x91, 0x94, 0x40, 0x37, 0xc6, 0x75, 0x91, 0x90, - 0x89, 0x14, 0x0a, 0x44, 0xfe, 0x55, 0x1c, 0x4a, 0xc2, 0x4e, 0xd1, 0xe0, 0xdb, 0x0c, 0x37, 0xd1, - 0x0c, 0x8c, 0x33, 0x6c, 0x6b, 0x36, 0xe3, 0x75, 0x97, 0x54, 0xfc, 0xd5, 0x08, 0x43, 0x4a, 0x82, - 0xd1, 0x96, 0x69, 0x88, 0x39, 0xa9, 0x78, 0x8f, 0x28, 0x07, 0x53, 0x06, 0x76, 0x75, 0x6a, 0xf2, - 0x9b, 0x47, 0x3a, 0x25, 0x3c, 0xed, 0xda, 0x42, 0x19, 0x98, 0x08, 0xc2, 0x9c, 0x9e, 0xc8, 0x81, - 0xb9, 0x84, 0xd2, 0x59, 0xa3, 0x03, 0x18, 0xe7, 0x41, 0x11, 0x2e, 0xa5, 0x8a, 0x6b, 0x83, 0x55, - 0x6d, 0xd8, 0x43, 0x79, 0x87, 0x93, 0x94, 0x6d, 0x46, 0x4f, 0x14, 0x9f, 0x11, 0x99, 0x30, 0xd5, - 0x75, 0xd5, 0xf3, 0xeb, 0x61, 0x6b, 0xc4, 0x03, 0x4a, 0xef, 0x98, 0xc4, 0x29, 0xdd, 0xdc, 0x68, - 0x19, 0x42, 0x72, 0x6c, 0x63, 0xaa, 0x7a, 0x74, 0xe9, 0x24, 0x6f, 0xee, 0x4c, 0xe8, 0xa4, 0x7d, - 0x13, 0x1f, 0x07, 0x75, 0x97, 0xe4, 0xda, 0xde, 0x4e, 0xcf, 0x80, 0x9a, 0xbc, 0x8c, 0x01, 0x35, - 0xf5, 0x7f, 0x0d, 0xa8, 0x1d, 0x98, 0x68, 0x60, 0xc6, 0x47, 0x8b, 0x3f, 0xea, 0x86, 0x1f, 0x52, - 0xca, 0x95, 0x86, 0x58, 0xa0, 0x7d, 0x08, 0xfd, 0xc2, 0x75, 0x31, 0xf3, 0x87, 0xc7, 0xc8, 0x83, - 0x29, 0x29, 0xa8, 0x2a, 0x98, 0x65, 0x96, 0x61, 0xaa, 0x2b, 0xe3, 0x5e, 0x55, 0x1e, 0xe2, 0x13, - 0xbf, 0x82, 0xbd, 0x47, 0xf4, 0x21, 0x1c, 0x3f, 0xd2, 0xac, 0x56, 0x50, 0xbc, 0x62, 0xb1, 0x12, - 0xf9, 0x16, 0xc8, 0xac, 0x42, 0x29, 0x9c, 0xcb, 0x61, 0xf0, 0xb7, 0x62, 0x89, 0x71, 0x29, 0x9e, - 0xff, 0x39, 0x80, 0x13, 0xdd, 0x35, 0x82, 0x76, 0xe0, 0xb8, 0xc9, 0x70, 0xd3, 0x4d, 0x8b, 0xe9, - 0xfb, 0x8d, 0xd1, 0xca, 0x4c, 0x11, 0x24, 0x68, 0x11, 0xc6, 0xc5, 0x7b, 0x46, 0x3a, 0xc2, 0xe9, - 0xd2, 0x21, 0xba, 0xb2, 0x27, 0xe4, 0xa1, 0xf6, 0xf5, 0xf2, 0x87, 0x70, 0x72, 0x83, 0x0f, 0xc9, - 0xd1, 0x2f, 0x20, 0x73, 0x50, 0xaa, 0x6b, 0xa6, 0xa5, 0x9a, 0xf5, 0xce, 0x30, 0xe5, 0x8d, 0x9e, - 0x50, 0xa6, 0xbc, 0xfd, 0xed, 0x7a, 0x30, 0x24, 0xe7, 0xff, 0x05, 0xe0, 0x47, 0x7d, 0xaf, 0x1b, - 0x28, 0x03, 0x67, 0xb6, 0xca, 0x55, 0x55, 0xa9, 0xdc, 0x51, 0x37, 0xf7, 0x94, 0xdb, 0xa5, 0xaa, - 0xba, 0x51, 0xde, 0x2c, 0xdd, 0xdd, 0xa9, 0x4a, 0x63, 0xe8, 0x2b, 0x70, 0x36, 0x24, 0xdb, 0xdc, - 0x53, 0xd4, 0x75, 0xa5, 0x5c, 0xaa, 0x96, 0x25, 0x80, 0xb2, 0x30, 0xd3, 0x47, 0xac, 0x94, 0xef, - 0xec, 0x94, 0xd6, 0xcb, 0x52, 0x04, 0xcd, 0xc2, 0x8f, 0x42, 0xf2, 0x4a, 0xb5, 0x54, 0xbd, 0x5b, - 0x91, 0xa2, 0xe8, 0x63, 0xf8, 0xa5, 0x90, 0x48, 0x29, 0x97, 0x36, 0xa4, 0x18, 0xba, 0x06, 0x73, - 0x17, 0x04, 0x9b, 0x65, 0x45, 0xd9, 0xde, 0xdd, 0x52, 0xf7, 0xd6, 0x6e, 0x95, 0xd7, 0xab, 0x15, - 0x69, 0xbc, 0x8f, 0xd6, 0x9a, 0xb2, 0xf7, 0xbd, 0xf2, 0xae, 0x50, 0x2e, 0xef, 0xae, 0x97, 0x2b, - 0x52, 0xbc, 0xf8, 0x3a, 0x09, 0xa3, 0xa5, 0x3b, 0xdb, 0xe8, 0x35, 0x80, 0x71, 0x71, 0xf3, 0x41, - 0xa3, 0xdc, 0x93, 0x32, 0xd7, 0x87, 0x03, 0xf9, 0xd7, 0xcb, 0xfb, 0xed, 0x27, 0xe9, 0xaf, 0x1d, - 0x11, 0x8b, 0xe9, 0xc4, 0x76, 0x89, 0x85, 0x17, 0x74, 0xc3, 0x5e, 0x38, 0xa6, 0x26, 0xc3, 0x5f, - 0xaf, 0xdf, 0x78, 0xa0, 0xf3, 0x65, 0x4d, 0x73, 0x4d, 0x7d, 0xa1, 0xe5, 0x62, 0xfa, 0xf0, 0xaf, - 0xaf, 0x7e, 0x19, 0x59, 0xcd, 0x2f, 0xfb, 0x6f, 0xd8, 0x85, 0x4e, 0xe2, 0xdd, 0xc2, 0x4f, 0x82, - 0x41, 0x21, 0x77, 0x36, 0x4f, 0x2f, 0xbc, 0xe0, 0xb9, 0x2b, 0x60, 0x1e, 0xfd, 0x1d, 0xc0, 0xe8, - 0x16, 0x66, 0x68, 0x71, 0x88, 0xfb, 0xa7, 0x70, 0x71, 0x69, 0xe8, 0x1b, 0x6b, 0x9e, 0x3e, 0xfd, - 0x63, 0x04, 0xb4, 0x9f, 0xa4, 0x3f, 0x0f, 0xfb, 0x48, 0xb1, 0x66, 0x84, 0x5d, 0x6c, 0x12, 0xdb, - 0x64, 0x44, 0x78, 0xb9, 0x8c, 0xbe, 0xd9, 0xcf, 0xcb, 0xf7, 0x39, 0x27, 0xa4, 0xa7, 0xe8, 0x6f, - 0x00, 0xc6, 0xbc, 0x0e, 0x44, 0x4b, 0xc3, 0x74, 0xab, 0x70, 0xb1, 0x38, 0x7c, 0x83, 0xe7, 0x0f, - 0x47, 0xf5, 0xb1, 0x88, 0x16, 0x87, 0xf5, 0x11, 0xfd, 0x1b, 0xc0, 0x2b, 0xfe, 0x4d, 0x1a, 0x8d, - 0x74, 0xf1, 0xce, 0xdc, 0x18, 0x12, 0xe5, 0x7b, 0xf9, 0x33, 0x30, 0x7c, 0xa9, 0xee, 0x66, 0xb6, - 0x47, 0x2e, 0xd5, 0x90, 0xda, 0xa9, 0x57, 0xba, 0x7f, 0x02, 0x30, 0x2e, 0xc6, 0xe1, 0xa0, 0x3d, - 0xda, 0x33, 0x3c, 0x33, 0x33, 0xb2, 0xf8, 0x22, 0x24, 0x07, 0x5f, 0x84, 0xe4, 0x72, 0xd3, 0x61, - 0x27, 0x79, 0x32, 0xbc, 0x6b, 0x37, 0xe7, 0x47, 0xad, 0xcf, 0x15, 0x30, 0x9f, 0xa1, 0x8f, 0xcf, - 0x40, 0xe4, 0x2f, 0x67, 0xe0, 0xf3, 0x81, 0x9c, 0x10, 0xff, 0x96, 0x2f, 0xce, 0x00, 0x68, 0x9f, - 0x81, 0xa5, 0xa1, 0xff, 0x66, 0x1f, 0xfe, 0x39, 0x1d, 0x91, 0xc0, 0xda, 0x23, 0xf0, 0x6c, 0x75, - 0x7c, 0x5d, 0xb9, 0xbb, 0xb1, 0xf3, 0xfc, 0x65, 0x76, 0xec, 0xc5, 0xcb, 0xec, 0xd8, 0xdb, 0x97, - 0x59, 0xf0, 0xd3, 0x76, 0x16, 0xfc, 0xae, 0x9d, 0x05, 0x4f, 0xdb, 0x59, 0xf0, 0xbc, 0x9d, 0x05, - 0xff, 0x68, 0x67, 0xc1, 0x9b, 0x76, 0x76, 0xec, 0x6d, 0x3b, 0x0b, 0x7e, 0x71, 0x9e, 0x1d, 0x7b, - 0x7c, 0x9e, 0x05, 0xcf, 0xcf, 0xb3, 0x63, 0x2f, 0xce, 0xb3, 0x63, 0x07, 0x07, 0x0d, 0xe2, 0x1c, - 0x36, 0x64, 0x2f, 0x52, 0x98, 0x52, 0x4d, 0x6e, 0xb9, 0x05, 0xfe, 0xe0, 0xbd, 0x0c, 0x2e, 0x38, - 0x94, 0x1c, 0x99, 0x06, 0xa6, 0x0b, 0x81, 0xb8, 0xe0, 0xd4, 0x1a, 0xa4, 0x80, 0x1f, 0x30, 0xff, - 0x0b, 0xd1, 0x7b, 0xbf, 0x3d, 0xd5, 0xe2, 0x3c, 0x27, 0x5f, 0xfc, 0x27, 0x00, 0x00, 0xff, 0xff, - 0xdf, 0x92, 0xa0, 0xf6, 0x63, 0x14, 0x00, 0x00, + // 1681 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xd1, 0x6f, 0x1b, 0x49, + 0x19, 0xcf, 0xd8, 0x8e, 0x1b, 0x8f, 0xd3, 0xd4, 0x37, 0xdc, 0xf5, 0x5c, 0x53, 0x7c, 0xc1, 0x57, + 0x9d, 0xa2, 0x82, 0xd7, 0x49, 0xee, 0x0a, 0xa4, 0x9c, 0x0a, 0x49, 0xea, 0x44, 0x29, 0x69, 0x53, + 0xd6, 0x6e, 0x80, 0xbc, 0xac, 0xd6, 0xbb, 0x9f, 0xdd, 0xa5, 0xeb, 0x9d, 0x65, 0x66, 0x9c, 0x9c, + 0x85, 0x22, 0xa1, 0x3e, 0xf2, 0x70, 0x42, 0xba, 0xb7, 0xe3, 0x90, 0x40, 0x02, 0xc4, 0x0b, 0x8f, + 0x20, 0xa4, 0xbc, 0xf4, 0x8d, 0xd3, 0x09, 0xa1, 0x0a, 0x5e, 0xfa, 0x48, 0xdd, 0x7b, 0x38, 0xf1, + 0x74, 0x82, 0x7f, 0x00, 0xed, 0xcc, 0xae, 0xcf, 0xde, 0x98, 0x62, 0x9b, 0xf4, 0x9e, 0xbc, 0x33, + 0xdf, 0xf7, 0xfb, 0xcd, 0x37, 0xbf, 0xf9, 0xbe, 0xcf, 0xb3, 0x8b, 0xd7, 0x0e, 0x81, 0x6b, 0x0e, + 0xad, 0x70, 0xeb, 0x3e, 0xb4, 0xcd, 0xca, 0xa1, 0x03, 0x47, 0xbc, 0x62, 0xd9, 0x9e, 0xe1, 0x52, + 0xd3, 0x6e, 0x98, 0xae, 0xe9, 0x59, 0xc0, 0x2a, 0x7e, 0xa7, 0xe1, 0x3a, 0x96, 0x61, 0xb1, 0x8e, + 0x6d, 0xfa, 0x8e, 0xe6, 0x33, 0x2a, 0x28, 0xb9, 0xa2, 0xa0, 0x9a, 0x82, 0x6a, 0x12, 0xaa, 0xc5, + 0xa1, 0x85, 0x72, 0xcb, 0x11, 0xf7, 0x3b, 0x0d, 0xcd, 0xa2, 0xed, 0x4a, 0x8b, 0xb6, 0x68, 0x45, + 0x82, 0x1b, 0x9d, 0xa6, 0x1c, 0xc9, 0x81, 0x7c, 0x52, 0xa4, 0x85, 0xcb, 0x2d, 0x4a, 0x5b, 0x2e, + 0x54, 0x4c, 0xdf, 0xa9, 0x98, 0x9e, 0x47, 0x85, 0x29, 0x1c, 0xea, 0xf1, 0xd0, 0xfa, 0xc5, 0xd0, + 0xda, 0xe7, 0x80, 0xb6, 0x2f, 0xba, 0xa1, 0xb1, 0x30, 0xbc, 0x15, 0x60, 0x8c, 0xb2, 0x3e, 0x70, + 0xd8, 0x46, 0xfd, 0x41, 0xd6, 0xd7, 0x86, 0x8d, 0x8c, 0x76, 0x04, 0x54, 0x44, 0xd7, 0x87, 0xc8, + 0xe1, 0xd2, 0xb0, 0xc3, 0xa0, 0xa9, 0x14, 0xd3, 0x0f, 0x38, 0x78, 0x87, 0x31, 0xfe, 0xc5, 0xd3, + 0x1a, 0x1b, 0xc3, 0x1e, 0x2b, 0x63, 0x9d, 0x02, 0x6d, 0xfc, 0x10, 0x2c, 0x11, 0x42, 0x96, 0xc7, + 0x82, 0x0c, 0x86, 0xfa, 0xda, 0x28, 0xc4, 0xa0, 0xc3, 0x1b, 0x71, 0x07, 0x26, 0x3a, 0xa6, 0x6b, + 0xdc, 0xa7, 0x5c, 0x0c, 0xfa, 0x95, 0xfe, 0x88, 0xf0, 0xf9, 0x4d, 0x06, 0xa6, 0x00, 0x1d, 0x7e, + 0xd4, 0x01, 0x2e, 0xc8, 0xb7, 0xf0, 0x5c, 0x1b, 0x84, 0x69, 0x9b, 0xc2, 0xcc, 0xa3, 0x45, 0xb4, + 0x94, 0x5d, 0x7d, 0x5d, 0x1b, 0xce, 0x8e, 0x3d, 0x19, 0xbb, 0x42, 0xdd, 0x06, 0x61, 0xd6, 0xbb, + 0x3e, 0xe8, 0x7d, 0x10, 0xf9, 0x01, 0x4e, 0x71, 0x1f, 0xac, 0x7c, 0x42, 0x82, 0xdf, 0xd2, 0xc6, + 0x49, 0x2d, 0x4d, 0xb1, 0xd5, 0x7c, 0xb0, 0x02, 0xb6, 0x8d, 0x0b, 0xef, 0x1f, 0xcf, 0x07, 0x24, + 0x5a, 0xcb, 0x32, 0x82, 0x5f, 0x5d, 0x52, 0x5e, 0xcf, 0x7c, 0x74, 0x23, 0xad, 0x56, 0x2f, 0x3d, + 0x4c, 0xe0, 0x85, 0x28, 0x70, 0xee, 0x53, 0x8f, 0x03, 0x79, 0xfb, 0x54, 0xe4, 0x8b, 0x23, 0x23, + 0xdf, 0x06, 0x31, 0x22, 0xec, 0x3d, 0x7c, 0x81, 0x77, 0xb9, 0x80, 0xb6, 0xd1, 0x27, 0x49, 0x4a, + 0x92, 0x37, 0x62, 0x24, 0x35, 0xe9, 0x75, 0x9a, 0x6a, 0x41, 0xc1, 0x6f, 0x47, 0x84, 0xfb, 0x43, + 0x3a, 0xac, 0x8c, 0xa7, 0xc3, 0x36, 0x88, 0x09, 0x44, 0xf8, 0x27, 0xc2, 0x0b, 0x3a, 0xf8, 0xae, + 0x69, 0xf5, 0x8f, 0xef, 0xdb, 0xa7, 0x44, 0xb8, 0x32, 0x52, 0x84, 0x10, 0x36, 0x42, 0x88, 0x83, + 0xa1, 0xb8, 0xaf, 0x8d, 0x17, 0x77, 0x48, 0xf7, 0x3f, 0x62, 0x27, 0x15, 0x9c, 0x63, 0xc0, 0x69, + 0x87, 0x59, 0x60, 0x1c, 0x02, 0xe3, 0x0e, 0xf5, 0xa4, 0xca, 0x99, 0x8d, 0xd4, 0x27, 0x27, 0x08, + 0xe9, 0x17, 0x22, 0xeb, 0xbe, 0x32, 0x0e, 0x6e, 0xf6, 0x25, 0x7c, 0xa1, 0xbf, 0x57, 0x75, 0xe2, + 0xa5, 0x5f, 0x23, 0x8c, 0xb7, 0x41, 0x44, 0x7b, 0xbf, 0x8c, 0x33, 0x9e, 0xd9, 0x06, 0xee, 0x9b, + 0x16, 0xc8, 0xcd, 0x67, 0xf4, 0xcf, 0x26, 0x08, 0xc1, 0xa9, 0x60, 0x20, 0xf7, 0x95, 0xd1, 0xe5, + 0x33, 0xb1, 0x71, 0xb0, 0xa2, 0x24, 0x33, 0x9a, 0x94, 0xb5, 0x4d, 0x21, 0xc3, 0x59, 0x58, 0xfd, + 0xe6, 0xd8, 0xc7, 0x15, 0x05, 0xb3, 0x25, 0xe1, 0x9b, 0xd4, 0x06, 0x7d, 0x81, 0x0d, 0xcd, 0x95, + 0xfe, 0x90, 0xc6, 0xd9, 0x01, 0x4f, 0x52, 0xc7, 0x59, 0x4b, 0xa6, 0xae, 0x5c, 0x33, 0x14, 0xfa, + 0xcd, 0x49, 0x0a, 0x25, 0xdc, 0xb1, 0x8e, 0x15, 0x4f, 0xb0, 0x0e, 0xf9, 0x1e, 0x9e, 0x67, 0x4a, + 0x1f, 0x45, 0x9b, 0x9c, 0xa4, 0xfe, 0x86, 0xb3, 0x48, 0xcf, 0x86, 0x4c, 0x92, 0x78, 0xd4, 0xa1, + 0xa5, 0x9e, 0x73, 0x68, 0x43, 0x85, 0x38, 0x7b, 0x16, 0x85, 0x78, 0xee, 0x4c, 0x0a, 0x31, 0x7d, + 0xb6, 0x85, 0x48, 0xbe, 0x8b, 0xd3, 0x5c, 0x98, 0xa2, 0xc3, 0xf3, 0xbf, 0xfc, 0x00, 0x2d, 0x26, + 0x97, 0xb2, 0xab, 0xab, 0xe3, 0x71, 0xd7, 0x24, 0x4a, 0x05, 0xbe, 0x91, 0x7c, 0x74, 0x8c, 0xf4, + 0x90, 0x88, 0xec, 0xe0, 0x97, 0x18, 0x34, 0x81, 0x31, 0xc7, 0x6b, 0x19, 0xea, 0x3f, 0x82, 0xe7, + 0xe7, 0x24, 0xf7, 0xe5, 0xff, 0x52, 0xc6, 0x4d, 0xb9, 0xe7, 0x5c, 0x1f, 0xa6, 0xe6, 0x39, 0xd9, + 0xc7, 0x79, 0x1b, 0x5c, 0x10, 0x60, 0x1b, 0xca, 0x06, 0x76, 0x9f, 0x31, 0x33, 0x06, 0xe3, 0xc5, + 0x10, 0xad, 0x87, 0xe0, 0x88, 0xf7, 0xfb, 0xf8, 0x92, 0xed, 0x70, 0xb3, 0xe1, 0x8e, 0x22, 0xc6, + 0x63, 0x10, 0xbf, 0x1a, 0xc1, 0x63, 0xcc, 0x03, 0xb5, 0x7e, 0x2b, 0x35, 0x87, 0x72, 0x89, 0xd2, + 0x6f, 0x10, 0xce, 0xee, 0x3a, 0x7c, 0xcc, 0xfa, 0xfe, 0x32, 0x9e, 0x77, 0xcd, 0x06, 0xb8, 0x46, + 0xd3, 0x71, 0x05, 0xb0, 0xb0, 0xce, 0xb3, 0x72, 0x6e, 0x4b, 0x4e, 0x91, 0xd7, 0xf1, 0x79, 0x06, + 0x3e, 0x65, 0xc2, 0x68, 0x3a, 0xe0, 0xda, 0x3c, 0x9f, 0x5c, 0x4c, 0x2e, 0x65, 0xf4, 0x79, 0x35, + 0xb9, 0x25, 0xe7, 0xc8, 0x32, 0x7e, 0x39, 0x74, 0x52, 0x87, 0x12, 0xf9, 0xa6, 0xa4, 0x2f, 0x51, + 0x36, 0x75, 0x84, 0x0a, 0x51, 0xfa, 0x38, 0x8d, 0x73, 0x2a, 0x4e, 0x55, 0xe0, 0x3b, 0x02, 0xda, + 0xe4, 0x22, 0x4e, 0x0b, 0xf0, 0x4c, 0x4f, 0xc8, 0xbc, 0xcb, 0xe8, 0xe1, 0x68, 0x8a, 0x26, 0x95, + 0xc3, 0xc9, 0x8e, 0x63, 0xab, 0x3e, 0xa9, 0x07, 0x8f, 0x64, 0x11, 0x67, 0x6d, 0xe0, 0x16, 0x73, + 0xe4, 0xcd, 0x23, 0x9f, 0x55, 0x3b, 0x1d, 0x98, 0x22, 0x05, 0x3c, 0x17, 0xc9, 0x9c, 0x9f, 0x5f, + 0x44, 0x4b, 0x73, 0x7a, 0x7f, 0x4c, 0x0e, 0x70, 0x5a, 0x8a, 0xa2, 0xb6, 0x94, 0x5d, 0xdd, 0x18, + 0x2f, 0x6b, 0xe3, 0x3b, 0xd4, 0x76, 0x25, 0x49, 0xd5, 0x13, 0xac, 0xab, 0x87, 0x8c, 0xc4, 0xc1, + 0xd9, 0x81, 0xab, 0x5e, 0x98, 0x0f, 0xdb, 0x53, 0x2e, 0xb0, 0xfe, 0x19, 0x93, 0x5a, 0x65, 0x90, + 0x9b, 0xac, 0x61, 0x4c, 0x8f, 0x3c, 0x60, 0x46, 0x40, 0x97, 0xcf, 0xc8, 0xe2, 0x2e, 0xc4, 0x56, + 0xda, 0x77, 0xe0, 0x28, 0xca, 0xbb, 0x8c, 0xf4, 0x0e, 0x66, 0x86, 0x1a, 0xd4, 0xf9, 0xb3, 0x68, + 0x50, 0x0b, 0xff, 0x57, 0x83, 0xda, 0xc5, 0x73, 0x2d, 0x10, 0xb2, 0xb5, 0x84, 0xad, 0x6e, 0xf2, + 0x26, 0xa5, 0x9f, 0x6b, 0xa9, 0x01, 0xd9, 0xc7, 0x38, 0x4c, 0x5c, 0x0e, 0x22, 0x6c, 0x1e, 0x53, + 0x37, 0xa6, 0x8c, 0xa2, 0xaa, 0x81, 0x28, 0xac, 0xe1, 0xec, 0xc0, 0x89, 0x07, 0x59, 0xf9, 0x00, + 0xba, 0x61, 0x06, 0x07, 0x8f, 0xe4, 0x65, 0x3c, 0x7b, 0x68, 0xba, 0x9d, 0x28, 0x79, 0xd5, 0xe0, + 0x7a, 0xe2, 0x1b, 0xa8, 0x70, 0x03, 0xe7, 0xe2, 0x67, 0x39, 0x09, 0xfe, 0x56, 0x6a, 0x6e, 0x36, + 0x97, 0x2e, 0xbd, 0x8b, 0xf0, 0xfc, 0x60, 0x8e, 0x90, 0x5d, 0x3c, 0xeb, 0x08, 0x68, 0xf3, 0xbc, + 0xea, 0xbe, 0x5f, 0x9b, 0x2e, 0xcd, 0x74, 0x45, 0x42, 0x96, 0x71, 0x5a, 0xbd, 0x67, 0xe4, 0x13, + 0x92, 0x2e, 0x1f, 0xa3, 0xab, 0x06, 0x46, 0x29, 0x75, 0xe8, 0x57, 0x7a, 0x80, 0xcf, 0xdf, 0x94, + 0x4d, 0x72, 0xfa, 0x0b, 0xc8, 0x12, 0xce, 0x35, 0x4d, 0xc7, 0x35, 0x9c, 0x66, 0xbf, 0x99, 0xca, + 0x42, 0x9f, 0xd3, 0x17, 0x82, 0xf9, 0x9d, 0x66, 0xd4, 0x24, 0xaf, 0xfe, 0x0b, 0xe1, 0x57, 0x46, + 0x5e, 0x37, 0x48, 0x01, 0x5f, 0xdc, 0xae, 0xd6, 0x0d, 0xbd, 0x76, 0xd7, 0xd8, 0xda, 0xd3, 0x6f, + 0xaf, 0xd7, 0x8d, 0x9b, 0xd5, 0xad, 0xf5, 0x7b, 0xbb, 0xf5, 0xdc, 0x0c, 0xf9, 0x12, 0xbe, 0x14, + 0xb3, 0x6d, 0xed, 0xe9, 0xc6, 0xa6, 0x5e, 0x5d, 0xaf, 0x57, 0x73, 0x88, 0x14, 0x71, 0x61, 0x84, + 0x59, 0xaf, 0xde, 0xdd, 0x5d, 0xdf, 0xac, 0xe6, 0x12, 0xe4, 0x12, 0x7e, 0x25, 0x66, 0xaf, 0xd5, + 0xd7, 0xeb, 0xf7, 0x6a, 0xb9, 0x24, 0x79, 0x15, 0x7f, 0x21, 0x66, 0xd2, 0xab, 0xeb, 0x37, 0x73, + 0x29, 0x72, 0x05, 0x2f, 0x9e, 0x32, 0x6c, 0x55, 0x75, 0x7d, 0xe7, 0xce, 0xb6, 0xb1, 0xb7, 0x71, + 0xab, 0xba, 0x59, 0xaf, 0xe5, 0x66, 0x47, 0x78, 0x6d, 0xe8, 0x7b, 0xdf, 0xa9, 0xde, 0x51, 0xce, + 0xd5, 0x3b, 0x9b, 0xd5, 0x5a, 0x2e, 0xbd, 0xfa, 0x97, 0x2c, 0x4e, 0xae, 0xdf, 0xdd, 0x21, 0xef, + 0x25, 0x70, 0x5a, 0xdd, 0x7c, 0xc8, 0x34, 0xf7, 0xa4, 0xc2, 0x5b, 0x93, 0x81, 0xc2, 0xeb, 0xe5, + 0x2f, 0x50, 0xef, 0xcf, 0xf9, 0x7b, 0x87, 0xd4, 0x15, 0x16, 0xf5, 0x38, 0x75, 0xa1, 0x6c, 0xd9, + 0x5e, 0xf9, 0x88, 0x39, 0x02, 0xbe, 0xda, 0xbc, 0xf6, 0x8e, 0x25, 0x87, 0x0d, 0x93, 0x3b, 0x56, + 0xb9, 0xc3, 0x81, 0x85, 0x73, 0xd4, 0x13, 0xe0, 0x89, 0xb2, 0x0d, 0xae, 0x73, 0x08, 0xac, 0x5b, + 0xf6, 0x40, 0x1c, 0x51, 0xf6, 0xa0, 0xcc, 0x85, 0xe9, 0xd9, 0x26, 0xb3, 0xa5, 0xef, 0xc3, 0xbf, + 0x7f, 0xfc, 0x5e, 0xe2, 0x46, 0x69, 0x2d, 0x7c, 0x1d, 0xaf, 0xf4, 0xb3, 0x84, 0x57, 0x7e, 0x1c, + 0x75, 0x15, 0xad, 0x3f, 0x79, 0x7c, 0xea, 0x6d, 0x90, 0x5f, 0x47, 0x57, 0xc9, 0xbb, 0x09, 0x9c, + 0xdc, 0x06, 0x41, 0x96, 0x27, 0xb8, 0xac, 0x2a, 0x3d, 0x56, 0x26, 0xbe, 0xde, 0x96, 0x7e, 0x85, + 0x3e, 0xfc, 0x53, 0x22, 0x10, 0xe4, 0x20, 0x2e, 0x08, 0x03, 0xd3, 0x8e, 0xeb, 0xd1, 0xa6, 0x9e, + 0x23, 0xe8, 0xd8, 0x92, 0x84, 0xee, 0x52, 0x95, 0x35, 0xf2, 0xf5, 0x51, 0xaa, 0x3c, 0x4f, 0x0c, + 0x65, 0x3d, 0x26, 0x3f, 0x4d, 0xe0, 0x54, 0x50, 0xde, 0x64, 0x65, 0x92, 0x56, 0xa0, 0x24, 0x59, + 0x9d, 0xbc, 0x7b, 0x94, 0xde, 0xff, 0xbc, 0x34, 0x59, 0x25, 0xcb, 0x93, 0x6a, 0x42, 0x7e, 0x9b, + 0xc0, 0xe7, 0xc2, 0x6b, 0x3d, 0x99, 0xea, 0x2d, 0xa0, 0x70, 0x6d, 0x42, 0x54, 0xa8, 0xca, 0xef, + 0x5f, 0x70, 0xd9, 0xdc, 0x29, 0xec, 0x4c, 0x5d, 0x36, 0x31, 0xb7, 0xe3, 0xa0, 0x8c, 0xfe, 0x8d, + 0x70, 0x5a, 0xf5, 0xf1, 0x71, 0x9b, 0xcb, 0x50, 0xd7, 0x2f, 0x5c, 0xd4, 0xd4, 0xa7, 0x2c, 0x2d, + 0xfa, 0x94, 0xa5, 0x55, 0xdb, 0xbe, 0xe8, 0x96, 0x7e, 0xfe, 0x82, 0x75, 0x78, 0xfb, 0xea, 0xb4, + 0x85, 0x72, 0x1d, 0x5d, 0x2d, 0xb0, 0x47, 0x27, 0x28, 0xf1, 0xb7, 0x13, 0xf4, 0x95, 0xb1, 0x76, + 0xac, 0xee, 0x04, 0x4f, 0x4e, 0x10, 0xea, 0x9d, 0xa0, 0x95, 0x89, 0x2f, 0x13, 0x0f, 0xff, 0x9a, + 0x4f, 0xe4, 0xd0, 0xc6, 0x07, 0xe8, 0xa3, 0x1b, 0xb3, 0x9b, 0xfa, 0xbd, 0x9b, 0xbb, 0x8f, 0x9f, + 0x16, 0x67, 0x9e, 0x3c, 0x2d, 0xce, 0x7c, 0xfa, 0xb4, 0x88, 0x7e, 0xd2, 0x2b, 0xa2, 0xdf, 0xf5, + 0x8a, 0xe8, 0xc3, 0x5e, 0x11, 0x3d, 0xee, 0x15, 0xd1, 0x3f, 0x7a, 0x45, 0xf4, 0x49, 0xaf, 0x38, + 0xf3, 0x69, 0xaf, 0x88, 0x7e, 0xf6, 0xac, 0x38, 0xf3, 0xe8, 0x59, 0x11, 0x3d, 0x7e, 0x56, 0x9c, + 0x79, 0xf2, 0xac, 0x38, 0x73, 0x70, 0xd0, 0xa2, 0xfe, 0x83, 0x96, 0x16, 0xa8, 0x0a, 0x8c, 0x99, + 0x5a, 0x87, 0x57, 0xe4, 0x43, 0xf0, 0xca, 0x5b, 0xf6, 0x19, 0x3d, 0x74, 0x6c, 0x60, 0xe5, 0xc8, + 0x5c, 0xf1, 0x1b, 0x2d, 0x5a, 0x81, 0x77, 0x44, 0xf8, 0x1d, 0xec, 0xb9, 0x5f, 0xd8, 0x1a, 0x69, + 0x79, 0x80, 0x6f, 0xfe, 0x27, 0x00, 0x00, 0xff, 0xff, 0x5b, 0x9a, 0x99, 0x6f, 0x49, 0x15, 0x00, + 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.vesapi.go index f1b0efc66..708459004 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/public_crudapi.vesapi.go @@ -2193,6 +2193,547 @@ var APISwaggerJSON string = `{ } }, "definitions": { + "app_firewallAppFirewallViolationType": { + "type": "string", + "description": "List of all supported Violation Types\n\nVIOL_NONE\nVIOL_FILETYPE\nVIOL_METHOD\nVIOL_MANDATORY_HEADER\nVIOL_HTTP_RESPONSE_STATUS\nVIOL_REQUEST_MAX_LENGTH\nVIOL_FILE_UPLOAD\nVIOL_FILE_UPLOAD_IN_BODY\nVIOL_XML_MALFORMED\nVIOL_JSON_MALFORMED\nVIOL_ASM_COOKIE_MODIFIED\nVIOL_HTTP_PROTOCOL_MULTIPLE_HOST_HEADERS\nVIOL_HTTP_PROTOCOL_BAD_HOST_HEADER_VALUE\nVIOL_HTTP_PROTOCOL_UNPARSABLE_REQUEST_CONTENT\nVIOL_HTTP_PROTOCOL_NULL_IN_REQUEST\nVIOL_HTTP_PROTOCOL_BAD_HTTP_VERSION\nVIOL_HTTP_PROTOCOL_CRLF_CHARACTERS_BEFORE_REQUEST_START\nVIOL_HTTP_PROTOCOL_NO_HOST_HEADER_IN_HTTP_1_1_REQUEST\nVIOL_HTTP_PROTOCOL_BAD_MULTIPART_PARAMETERS_PARSING\nVIOL_HTTP_PROTOCOL_SEVERAL_CONTENT_LENGTH_HEADERS\nVIOL_HTTP_PROTOCOL_CONTENT_LENGTH_SHOULD_BE_A_POSITIVE_NUMBER\nVIOL_EVASION_DIRECTORY_TRAVERSALS\nVIOL_MALFORMED_REQUEST\nVIOL_EVASION_MULTIPLE_DECODING\nVIOL_DATA_GUARD\nVIOL_EVASION_APACHE_WHITESPACE\nVIOL_COOKIE_MODIFIED\nVIOL_EVASION_IIS_UNICODE_CODEPOINTS\nVIOL_EVASION_IIS_BACKSLASHES\nVIOL_EVASION_PERCENT_U_DECODING\nVIOL_EVASION_BARE_BYTE_DECODING\nVIOL_EVASION_BAD_UNESCAPE\nVIOL_HTTP_PROTOCOL_BAD_MULTIPART_FORMDATA_REQUEST_PARSING\nVIOL_HTTP_PROTOCOL_BODY_IN_GET_OR_HEAD_REQUEST\nVIOL_HTTP_PROTOCOL_HIGH_ASCII_CHARACTERS_IN_HEADERS\nVIOL_ENCODING\nVIOL_COOKIE_MALFORMED\nVIOL_GRAPHQL_FORMAT\nVIOL_GRAPHQL_MALFORMED\nVIOL_GRAPHQL_INTROSPECTION_QUERY", + "title": "App Firewall Violation Type", + "enum": [ + "VIOL_NONE", + "VIOL_FILETYPE", + "VIOL_METHOD", + "VIOL_MANDATORY_HEADER", + "VIOL_HTTP_RESPONSE_STATUS", + "VIOL_REQUEST_MAX_LENGTH", + "VIOL_FILE_UPLOAD", + "VIOL_FILE_UPLOAD_IN_BODY", + "VIOL_XML_MALFORMED", + "VIOL_JSON_MALFORMED", + "VIOL_ASM_COOKIE_MODIFIED", + "VIOL_HTTP_PROTOCOL_MULTIPLE_HOST_HEADERS", + "VIOL_HTTP_PROTOCOL_BAD_HOST_HEADER_VALUE", + "VIOL_HTTP_PROTOCOL_UNPARSABLE_REQUEST_CONTENT", + "VIOL_HTTP_PROTOCOL_NULL_IN_REQUEST", + "VIOL_HTTP_PROTOCOL_BAD_HTTP_VERSION", + "VIOL_HTTP_PROTOCOL_CRLF_CHARACTERS_BEFORE_REQUEST_START", + "VIOL_HTTP_PROTOCOL_NO_HOST_HEADER_IN_HTTP_1_1_REQUEST", + "VIOL_HTTP_PROTOCOL_BAD_MULTIPART_PARAMETERS_PARSING", + "VIOL_HTTP_PROTOCOL_SEVERAL_CONTENT_LENGTH_HEADERS", + "VIOL_HTTP_PROTOCOL_CONTENT_LENGTH_SHOULD_BE_A_POSITIVE_NUMBER", + "VIOL_EVASION_DIRECTORY_TRAVERSALS", + "VIOL_MALFORMED_REQUEST", + "VIOL_EVASION_MULTIPLE_DECODING", + "VIOL_DATA_GUARD", + "VIOL_EVASION_APACHE_WHITESPACE", + "VIOL_COOKIE_MODIFIED", + "VIOL_EVASION_IIS_UNICODE_CODEPOINTS", + "VIOL_EVASION_IIS_BACKSLASHES", + "VIOL_EVASION_PERCENT_U_DECODING", + "VIOL_EVASION_BARE_BYTE_DECODING", + "VIOL_EVASION_BAD_UNESCAPE", + "VIOL_HTTP_PROTOCOL_BAD_MULTIPART_FORMDATA_REQUEST_PARSING", + "VIOL_HTTP_PROTOCOL_BODY_IN_GET_OR_HEAD_REQUEST", + "VIOL_HTTP_PROTOCOL_HIGH_ASCII_CHARACTERS_IN_HEADERS", + "VIOL_ENCODING", + "VIOL_COOKIE_MALFORMED", + "VIOL_GRAPHQL_FORMAT", + "VIOL_GRAPHQL_MALFORMED", + "VIOL_GRAPHQL_INTROSPECTION_QUERY" + ], + "default": "VIOL_NONE", + "x-displayname": "App Firewall Violation Type", + "x-ves-proto-enum": "ves.io.schema.app_firewall.AppFirewallViolationType" + }, + "app_firewallAttackType": { + "type": "string", + "description": "List of all Attack Types\n\nATTACK_TYPE_NONE\nATTACK_TYPE_NON_BROWSER_CLIENT\nATTACK_TYPE_OTHER_APPLICATION_ATTACKS\nATTACK_TYPE_TROJAN_BACKDOOR_SPYWARE\nATTACK_TYPE_DETECTION_EVASION\nATTACK_TYPE_VULNERABILITY_SCAN\nATTACK_TYPE_ABUSE_OF_FUNCTIONALITY\nATTACK_TYPE_AUTHENTICATION_AUTHORIZATION_ATTACKS\nATTACK_TYPE_BUFFER_OVERFLOW\nATTACK_TYPE_PREDICTABLE_RESOURCE_LOCATION\nATTACK_TYPE_INFORMATION_LEAKAGE\nATTACK_TYPE_DIRECTORY_INDEXING\nATTACK_TYPE_PATH_TRAVERSAL\nATTACK_TYPE_XPATH_INJECTION\nATTACK_TYPE_LDAP_INJECTION\nATTACK_TYPE_SERVER_SIDE_CODE_INJECTION\nATTACK_TYPE_COMMAND_EXECUTION\nATTACK_TYPE_SQL_INJECTION\nATTACK_TYPE_CROSS_SITE_SCRIPTING\nATTACK_TYPE_DENIAL_OF_SERVICE\nATTACK_TYPE_HTTP_PARSER_ATTACK\nATTACK_TYPE_SESSION_HIJACKING\nATTACK_TYPE_HTTP_RESPONSE_SPLITTING\nATTACK_TYPE_FORCEFUL_BROWSING\nATTACK_TYPE_REMOTE_FILE_INCLUDE\nATTACK_TYPE_MALICIOUS_FILE_UPLOAD\nATTACK_TYPE_GRAPHQL_PARSER_ATTACK", + "title": "AttackType", + "enum": [ + "ATTACK_TYPE_NONE", + "ATTACK_TYPE_NON_BROWSER_CLIENT", + "ATTACK_TYPE_OTHER_APPLICATION_ATTACKS", + "ATTACK_TYPE_TROJAN_BACKDOOR_SPYWARE", + "ATTACK_TYPE_DETECTION_EVASION", + "ATTACK_TYPE_VULNERABILITY_SCAN", + "ATTACK_TYPE_ABUSE_OF_FUNCTIONALITY", + "ATTACK_TYPE_AUTHENTICATION_AUTHORIZATION_ATTACKS", + "ATTACK_TYPE_BUFFER_OVERFLOW", + "ATTACK_TYPE_PREDICTABLE_RESOURCE_LOCATION", + "ATTACK_TYPE_INFORMATION_LEAKAGE", + "ATTACK_TYPE_DIRECTORY_INDEXING", + "ATTACK_TYPE_PATH_TRAVERSAL", + "ATTACK_TYPE_XPATH_INJECTION", + "ATTACK_TYPE_LDAP_INJECTION", + "ATTACK_TYPE_SERVER_SIDE_CODE_INJECTION", + "ATTACK_TYPE_COMMAND_EXECUTION", + "ATTACK_TYPE_SQL_INJECTION", + "ATTACK_TYPE_CROSS_SITE_SCRIPTING", + "ATTACK_TYPE_DENIAL_OF_SERVICE", + "ATTACK_TYPE_HTTP_PARSER_ATTACK", + "ATTACK_TYPE_SESSION_HIJACKING", + "ATTACK_TYPE_HTTP_RESPONSE_SPLITTING", + "ATTACK_TYPE_FORCEFUL_BROWSING", + "ATTACK_TYPE_REMOTE_FILE_INCLUDE", + "ATTACK_TYPE_MALICIOUS_FILE_UPLOAD", + "ATTACK_TYPE_GRAPHQL_PARSER_ATTACK" + ], + "default": "ATTACK_TYPE_NONE", + "x-displayname": "Attack Types", + "x-ves-proto-enum": "ves.io.schema.app_firewall.AttackType" + }, + "app_typeAPIEndpoint": { + "type": "object", + "description": "x-required\nThe rule is applied only for the specified api endpoints.", + "title": "api endpoint", + "x-displayname": "API Endpoint", + "x-ves-proto-message": "ves.io.schema.app_type.APIEndpoint", + "properties": { + "api_endpoint_path": { + "type": "string", + "description": " The rule is applied only for the specified api endpoints.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "api endpoint path", + "maxLength": 1024, + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" + } + }, + "methods": { + "type": "array", + "description": " List of methods values to match against.\n\nExample: - \"['GET', 'POST', 'DELETE']\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Methods", + "x-ves-example": "['GET', 'POST', 'DELETE']", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "app_typeBuiltInSensitiveDataType": { + "type": "object", + "description": "x-example: \"[EMAIL, CC]\"\nMessage wrapper for built-in sensitive data type.", + "title": "BuiltInSensitiveDataType", + "x-displayname": "Built-In Sensitive Data Type", + "x-ves-proto-message": "ves.io.schema.app_type.BuiltInSensitiveDataType", + "properties": { + "name": { + "type": "string", + "description": " Built-in rule for sensitive data detection.\n\nExample: - \"[EMAIL, CC]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.min_len: 1\n", + "title": "name", + "minLength": 1, + "x-displayname": "Name", + "x-ves-example": "[EMAIL, CC]", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "app_typeCustomDataDetectionConfig": { + "type": "object", + "description": "The custom data detection config specifies targets, scopes \u0026 the pattern to be detected.", + "title": "CustomDataDetectionConfig", + "x-displayname": "Custom Data Detection Config", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-pattern_choice": "[\"key_pattern\",\"key_value_pattern\",\"value_pattern\"]", + "x-ves-oneof-field-section_choice": "[\"all_request_sections\",\"all_response_sections\",\"all_sections\",\"custom_sections\"]", + "x-ves-oneof-field-target_choice": "[\"any_target\",\"api_endpoint_target\"]", + "x-ves-proto-message": "ves.io.schema.app_type.CustomDataDetectionConfig", + "properties": { + "all_request_sections": { + "description": "Exclusive with [all_response_sections all_sections custom_sections]\n", + "title": "all_request_sections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "All Request" + }, + "all_response_sections": { + "description": "Exclusive with [all_request_sections all_sections custom_sections]\n", + "title": "all_response_sections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "All Response" + }, + "all_sections": { + "description": "Exclusive with [all_request_sections all_response_sections custom_sections]\n", + "title": "all_sections", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "All Request \u0026 Response" + }, + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "any_target": { + "description": "Exclusive with [api_endpoint_target]\n The rule will be applied for all requests on this LB.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "All API Endpoints" + }, + "api_endpoint_target": { + "description": "Exclusive with [any_target]\n The rule is applied only for the specified api endpoints.\n\nExample: - \"/endpoint1\"-", + "title": "api endpoint target", + "$ref": "#/definitions/app_typeAPIEndpoint", + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1" + }, + "custom_sections": { + "description": "Exclusive with [all_request_sections all_response_sections all_sections]\n", + "title": "sections", + "$ref": "#/definitions/app_typeCustomSections", + "x-displayname": "Custom Sections" + }, + "key_pattern": { + "description": "Exclusive with [key_value_pattern value_pattern]\n Search for pattern across all field names in the specified sections.", + "title": "key pattern", + "$ref": "#/definitions/app_typeKeyPattern", + "x-displayname": "Key Pattern" + }, + "key_value_pattern": { + "description": "Exclusive with [key_pattern value_pattern]\n Search for specific field and value patterns in the specified sections.", + "title": "key-value pattern", + "$ref": "#/definitions/app_typeKeyValuePattern", + "x-displayname": "Key-Value Pattern" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + }, + "value_pattern": { + "description": "Exclusive with [key_pattern key_value_pattern]\n Search for pattern across all field values in the specified sections.", + "title": "value pattern", + "$ref": "#/definitions/app_typeValuePattern", + "x-displayname": "Value Pattern" + } + } + }, + "app_typeCustomSections": { + "type": "object", + "description": "Request \u0026 Response Sections.", + "title": "CustomSections", + "x-displayname": "Custom Sections", + "x-ves-proto-message": "ves.io.schema.app_type.CustomSections", + "properties": { + "custom_sections": { + "type": "array", + "description": " Request \u0026 Response Sections.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.unique: true\n", + "title": "custom_sections", + "items": { + "$ref": "#/definitions/schemaHttpSections" + }, + "x-displayname": "Custom Sections", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "app_typeCustomSensitiveDataDetectionRule": { + "type": "object", + "description": "Custom Sensitive Data Rule Definition.", + "title": "CustomSensitiveDataRule", + "x-displayname": "Custom Sensitive Data Detection Rule", + "x-ves-proto-message": "ves.io.schema.app_type.CustomSensitiveDataDetectionRule", + "properties": { + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "sensitive_data_detection_config": { + "description": " The custom data detection config specifies targets, scopes \u0026 the pattern to be detected.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "sensitive_data_detection_config", + "$ref": "#/definitions/app_typeCustomDataDetectionConfig", + "x-displayname": "Sensitive Data Detection Config", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "sensitive_data_type": { + "description": " If the pattern is detected, the request is labeled with specified sensitive data type.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "sensitive_data_type", + "$ref": "#/definitions/app_typeCustomSensitiveDataType", + "x-displayname": "Sensitive Data Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "app_typeCustomSensitiveDataType": { + "type": "object", + "description": "The type/category of the sensitive data this rule detects. e.g. Email, Credit Card etc.", + "title": "CustomSensitiveDataType", + "x-displayname": "Custom Sensitive Data Type", + "x-ves-proto-message": "ves.io.schema.app_type.CustomSensitiveDataType", + "properties": { + "type": { + "type": "string", + "description": " The request is labeled as specified sensitive data type.\n\nExample: - \"EMAIL\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.ves_object_name: true\n", + "title": "sensitive data type", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Type", + "x-ves-example": "EMAIL", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.ves_object_name": "true" + } + } + } + }, + "app_typeDiscoveredAPISettings": { + "type": "object", + "description": "x-example: \"2\"\nConfigure Discovered API Settings.", + "title": "DiscoveredAPISettings", + "x-displayname": "Discovered API Settings", + "x-ves-proto-message": "ves.io.schema.app_type.DiscoveredAPISettings", + "properties": { + "purge_duration_for_inactive_discovered_apis": { + "type": "integer", + "description": " Inactive discovered API will be deleted after configured duration.\n\nExample: - \"2\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 7\n", + "title": "purge_duration_for_inactive_discovered_apis", + "format": "int64", + "x-displayname": "Purge Duration for Inactive Discovered APIs", + "x-ves-example": "2", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "7" + } + } + } + }, + "app_typeKeyPattern": { + "type": "object", + "description": "Pattern to detect. Could be exact match or regex match.", + "title": "Key Pattern", + "x-displayname": "Key Pattern", + "x-ves-oneof-field-key_pattern": "[\"exact_value\",\"regex_value\"]", + "x-ves-proto-message": "ves.io.schema.app_type.KeyPattern", + "properties": { + "exact_value": { + "type": "string", + "description": "Exclusive with [regex_value]\n Search for values with exact match.\n\nExample: - \"x-volt-header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n", + "title": "exact value", + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "x-volt-header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true" + } + }, + "regex_value": { + "type": "string", + "description": "Exclusive with [exact_value]\n Search for values matching this regular expression.\n\nExample: - \"'^new.*$', 'san f.*', '.* del .*'\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n ves.io.schema.rules.string.regex: true\n", + "title": "regex value", + "maxLength": 256, + "x-displayname": "Regex Value", + "x-ves-example": "'^new.*$', 'san f.*', '.* del .*'", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "app_typeKeyValuePattern": { + "type": "object", + "description": "Search for specific key \u0026 value patterns in the specified sections.", + "title": "Key-Value Pattern", + "x-displayname": "Key \u0026 Value Pattern", + "x-ves-proto-message": "ves.io.schema.app_type.KeyValuePattern", + "properties": { + "key_pattern": { + "description": " Pattern for key/field.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "key_pattern", + "$ref": "#/definitions/app_typeKeyPattern", + "x-displayname": "Key Pattern", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "value_pattern": { + "description": " Pattern for value.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "value_pattern", + "$ref": "#/definitions/app_typeValuePattern", + "x-displayname": "Value Pattern", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "app_typeSensitiveDataDetectionRules": { + "type": "object", + "description": "Rules to manage/configure sensitive data detection in requests and/or response sections.", + "title": "Sensitive Data Detection Rules", + "x-displayname": "Sensitive Data Detection Rules", + "x-ves-proto-message": "ves.io.schema.app_type.SensitiveDataDetectionRules", + "properties": { + "custom_sensitive_data_detection_rules": { + "type": "array", + "description": " Rules to detect custom sensitive data in requests and/or responses sections.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.unique: true\n", + "title": "custom sensitive data rules", + "maxItems": 100, + "items": { + "$ref": "#/definitions/app_typeCustomSensitiveDataDetectionRule" + }, + "x-displayname": "Defined Custom Sensitive Data Types", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "disabled_built_in_rules": { + "type": "array", + "description": " List of disabled built-in sensitive data detection rules.\n\nExample: - \"[EMAIL, CC]\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 100\n ves.io.schema.rules.repeated.unique: true\n", + "title": "disabled_built_in_rules", + "maxItems": 100, + "items": { + "$ref": "#/definitions/app_typeBuiltInSensitiveDataType" + }, + "x-displayname": "Disabled Built-In Sensitive Data Types", + "x-ves-example": "[EMAIL, CC]", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "100", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "app_typeValuePattern": { + "type": "object", + "description": "Pattern to detect. Could be exact match or regex match.", + "title": "Value Pattern", + "x-displayname": "Value Pattern", + "x-ves-oneof-field-value_pattern": "[\"exact_value\",\"regex_value\"]", + "x-ves-proto-message": "ves.io.schema.app_type.ValuePattern", + "properties": { + "exact_value": { + "type": "string", + "description": "Exclusive with [regex_value]\n Pattern value to be detected.\n\nExample: - \"x-volt-header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n", + "title": "exact value", + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "x-volt-header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true" + } + }, + "regex_value": { + "type": "string", + "description": "Exclusive with [exact_value]\n Regular expression for this pattern.\n\nExample: - \"'^new.*$', 'san f.*', '.* del .*'\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n ves.io.schema.rules.string.regex: true\n", + "title": "regex value", + "maxLength": 256, + "x-displayname": "Regex Value", + "x-ves-example": "'^new.*$', 'san f.*', '.* del .*'", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "cdn_loadbalancerApiProtection": { + "type": "object", + "description": "API Definition based on the imported swagger specs", + "title": "API Definition", + "x-displayname": "API Definition", + "x-ves-oneof-field-api_definition_choice": "[\"api_specification\",\"api_specification_on_cache_miss\",\"disable_api_definition\"]", + "x-ves-oneof-field-api_discovery_choice": "[\"api_discovery_on_cache_miss\",\"disable_api_discovery\",\"enable_api_discovery\"]", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.ApiProtection", + "properties": { + "api_discovery_on_cache_miss": { + "description": "Exclusive with [disable_api_discovery enable_api_discovery]\n Enable api discovery only on cache miss in this distribution", + "title": "Enable API Discovery Only on Cache Miss", + "$ref": "#/definitions/common_wafApiDiscoverySetting", + "x-displayname": "Enable Only on Cache Miss" + }, + "api_protection_rules": { + "description": " API Protection Rules can be defined in two categories.\n The first category includes fine-grained rules, per API path and methods.\n The second category includes rules per API groups or Server URLs.\n If request matches any rule in the first category, second category rules are not evaluated.\n Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.", + "title": "API Protection rules", + "$ref": "#/definitions/common_wafAPIProtectionRules", + "x-displayname": "API Protection Rules" + }, + "api_specification": { + "description": "Exclusive with [api_specification_on_cache_miss disable_api_definition]\n Specify API definition and OpenAPI Validation", + "title": "API Specification", + "$ref": "#/definitions/common_wafAPISpecificationSettings", + "x-displayname": "Enable for All Requests" + }, + "api_specification_on_cache_miss": { + "description": "Exclusive with [api_specification disable_api_definition]\n Enable API definition and OpenAPI Validation only on cache miss in this distribution", + "title": "Enable API Specification Only on Cache Miss", + "$ref": "#/definitions/common_wafAPISpecificationSettings", + "x-displayname": "Enable Only on Cache Miss" + }, + "disable_api_definition": { + "description": "Exclusive with [api_specification api_specification_on_cache_miss]\n API Definition is not currently used for this load balancer", + "title": "Don not use API Definition", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "disable_api_discovery": { + "description": "Exclusive with [api_discovery_on_cache_miss enable_api_discovery]\n Disable api discovery for this distribution", + "title": "Disable API discovery", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "enable_api_discovery": { + "description": "Exclusive with [api_discovery_on_cache_miss disable_api_discovery]\n Enable api discovery for all requests in this distribution", + "title": "Enable API discovery", + "$ref": "#/definitions/common_wafApiDiscoverySetting", + "x-displayname": "Enable for All Requests" + }, + "jwt_validation": { + "description": " JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\n JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired\n tokens or tokens that are not yet valid.", + "title": "JWT Validation", + "$ref": "#/definitions/common_wafJWTValidation", + "x-displayname": "JWT Validation" + } + } + }, "cdn_loadbalancerAuthenticationOptions": { "type": "object", "description": "Options to authenticate incoming client requests", @@ -2202,19 +2743,19 @@ var APISwaggerJSON string = `{ "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions", "properties": { "custom": { - "description": "Exclusive with [disable_auth jwt]\n Enable Custom Authenticaiton", + "description": "Exclusive with [disable_auth jwt]\n Enable Custom Authentication", "title": "Custom Authentication", "$ref": "#/definitions/cdn_loadbalancerCDNCustomAuthentication", "x-displayname": "Custom Authentication" }, "disable_auth": { - "description": "Exclusive with [custom jwt]\n No Authenticaiton", + "description": "Exclusive with [custom jwt]\n No Authentication", "title": "No Authentication", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "No Authentication" }, "jwt": { - "description": "Exclusive with [custom disable_auth]\n Enable JWT Authenticaiton", + "description": "Exclusive with [custom disable_auth]\n Enable JWT Authentication", "title": "JWT Token Authentication", "$ref": "#/definitions/policyJwtTokenAuthOptions", "x-displayname": "JWT Token Authentication" @@ -2969,6 +3510,174 @@ var APISwaggerJSON string = `{ } } }, + "cdn_loadbalancerCommonSecurityControls": { + "type": "object", + "title": "Common Security Controls", + "x-displayname": "Common Security Controls", + "x-ves-oneof-field-challenge_type": "[\"captcha_challenge\",\"challenge_on_cache_miss\",\"enable_challenge\",\"js_challenge\",\"no_challenge\",\"policy_based_challenge\"]", + "x-ves-oneof-field-ip_reputation_choice": "[\"disable_ip_reputation\",\"enable_ip_reputation\",\"ip_reputation_on_cache_miss\"]", + "x-ves-oneof-field-malicious_user_detection_choice": "[\"disable_malicious_user_detection\",\"enable_malicious_user_detection\",\"malicious_user_detection_on_cache_miss\"]", + "x-ves-oneof-field-rate_limit_choice": "[\"api_rate_limit\",\"disable_rate_limit\",\"rate_limit\"]", + "x-ves-oneof-field-service_policy_choice": "[\"active_service_policies\",\"no_service_policies\",\"service_policies_from_namespace\"]", + "x-ves-oneof-field-user_id_choice": "[\"user_id_client_ip\",\"user_identification\"]", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.CommonSecurityControls", + "properties": { + "active_service_policies": { + "description": "Exclusive with [no_service_policies service_policies_from_namespace]\n Apply the specified list of service policies and bypass the namespace service policy set", + "title": "Apply Specified Service Policies", + "$ref": "#/definitions/common_wafServicePolicyList", + "x-displayname": "Apply Specified Service Policies" + }, + "api_rate_limit": { + "description": "Exclusive with [disable_rate_limit rate_limit]\n Define rate limiting for one or more API endpoints", + "title": "Rate Limiting Parameters", + "$ref": "#/definitions/common_wafAPIRateLimit", + "x-displayname": "API Rate Limit" + }, + "blocked_clients": { + "type": "array", + "description": " Define rules to block IP Prefixes or AS numbers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Client Blocking Rules", + "maxItems": 256, + "items": { + "$ref": "#/definitions/common_wafSimpleClientSrcRule" + }, + "x-displayname": "Client Blocking Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "captcha_challenge": { + "description": "Exclusive with [challenge_on_cache_miss enable_challenge js_challenge no_challenge policy_based_challenge]\n Configure Captcha challenge on this load balancer", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge" + }, + "challenge_on_cache_miss": { + "description": "Exclusive with [captcha_challenge enable_challenge js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users only on cache miss in this load balancer", + "title": "Enable Challenge Only on Cache Miss", + "$ref": "#/definitions/common_wafEnableChallenge", + "x-displayname": "Enable Only on Cache Miss" + }, + "cors_policy": { + "description": " Cross-Origin Resource Sharing requests configuration\n\n CORS is a mechanism that uses additional HTTP headers to tell a browser to let\n a web application running at one origin (domain) have permission to access selected\n resources from a server at a different origin", + "title": "cors_policy", + "$ref": "#/definitions/schemaCorsPolicy", + "x-displayname": "CORS Policy" + }, + "disable_ip_reputation": { + "description": "Exclusive with [enable_ip_reputation ip_reputation_on_cache_miss]\n No IP reputation configured this distribution", + "title": "disable_ip_reputation", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "disable_malicious_user_detection": { + "description": "Exclusive with [enable_malicious_user_detection malicious_user_detection_on_cache_miss]\n Disable malicious user detection for this distribution", + "title": "Disable malicious user detection", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "disable_rate_limit": { + "description": "Exclusive with [api_rate_limit rate_limit]\n Rate limiting is not currently enabled for this load balancer", + "title": "Disable Rate Limiting", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "enable_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users for this load balancer", + "title": "Enable", + "$ref": "#/definitions/common_wafEnableChallenge", + "x-displayname": "Enable for All Requests" + }, + "enable_ip_reputation": { + "description": "Exclusive with [disable_ip_reputation ip_reputation_on_cache_miss]\n Enable IP reputation for all requests in this distribution", + "title": "enable_ip_reputation", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", + "x-displayname": "Enable for All Requests" + }, + "enable_malicious_user_detection": { + "description": "Exclusive with [disable_malicious_user_detection malicious_user_detection_on_cache_miss]\n Enable malicious user detection for all requests in this distribution", + "title": "Enable malicious user detection", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable for All Requests" + }, + "ip_reputation_on_cache_miss": { + "description": "Exclusive with [disable_ip_reputation enable_ip_reputation]\n Enable IP reputation only on cache miss in this distribution", + "title": "Enable Ip Reuputation Only on Cache Miss", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", + "x-displayname": "Enable Only on Cache Miss" + }, + "js_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss enable_challenge no_challenge policy_based_challenge]\n Configure JavaScript challenge on this load balancer", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge" + }, + "malicious_user_detection_on_cache_miss": { + "description": "Exclusive with [disable_malicious_user_detection enable_malicious_user_detection]\n Enable malicious user detection only on cache miss in this distribution", + "title": "Enable Malicious User Detection Only on Cache Miss", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Only on Cache Miss" + }, + "no_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss enable_challenge js_challenge policy_based_challenge]\n No challenge is enabled for this load balancer", + "title": "Disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "no_service_policies": { + "description": "Exclusive with [active_service_policies service_policies_from_namespace]\n Do not apply any service policies i.e. bypass the namespace service policy set", + "title": "Do Not Apply Service Policies", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Do Not Apply Service Policies" + }, + "policy_based_challenge": { + "description": "Exclusive with [captcha_challenge challenge_on_cache_miss enable_challenge js_challenge no_challenge]\n Specifies the settings for policy rule based challenge", + "title": "policy based challenge", + "$ref": "#/definitions/viewscommon_wafPolicyBasedChallenge", + "x-displayname": "Policy Based Challenge" + }, + "rate_limit": { + "description": "Exclusive with [api_rate_limit disable_rate_limit]\n Define custom rate limiting parameters for this load balancer", + "title": "Custom Rate Limiting Parameters", + "$ref": "#/definitions/common_wafRateLimitConfigType", + "x-displayname": "Custom Rate Limiting Parameters" + }, + "service_policies_from_namespace": { + "description": "Exclusive with [active_service_policies no_service_policies]\n Apply the active service policies configured as part of the namespace service policy set", + "title": "Apply Namespace Service Policies", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Apply Namespace Service Policies" + }, + "trusted_clients": { + "type": "array", + "description": " Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Trusted Client Rules", + "maxItems": 256, + "items": { + "$ref": "#/definitions/common_wafSimpleClientSrcRule" + }, + "x-displayname": "Trusted Client Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "user_id_client_ip": { + "description": "Exclusive with [user_identification]\n Use the Client IP address as the user identifier.", + "title": "user_id_client_ip", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Client IP Address" + }, + "user_identification": { + "description": "Exclusive with [user_id_client_ip]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier.", + "title": "user_identification", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "User Identification Policy" + } + } + }, "cdn_loadbalancerCreateRequest": { "type": "object", "description": "This is the input message of the 'Create' RPC", @@ -3534,12 +4243,22 @@ var APISwaggerJSON string = `{ "x-displayname": "Security Options", "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType", "properties": { + "api_protection": { + "title": "API Protection", + "$ref": "#/definitions/cdn_loadbalancerApiProtection", + "x-displayname": "API Protection" + }, "auth_options": { "description": " Authentication Options", "title": "authentication", "$ref": "#/definitions/cdn_loadbalancerAuthenticationOptions", "x-displayname": "Authentication Options" }, + "common_security_controls": { + "title": "Common Security Controls", + "$ref": "#/definitions/cdn_loadbalancerCommonSecurityControls", + "x-displayname": "Common Security Controls" + }, "geo_filtering": { "description": " Geo filtering options", "title": "geo_filtering", @@ -3551,6 +4270,12 @@ var APISwaggerJSON string = `{ "title": "ip_filtering", "$ref": "#/definitions/cdn_loadbalancerIpFilteringOptions", "x-displayname": "Client IP filtering Options" + }, + "web_app_firewall": { + "description": " Web Application Firewall", + "title": "Web Application Firewall", + "$ref": "#/definitions/cdn_loadbalancerWebApplicationFirewall", + "x-displayname": "Web Application Firewall" } } }, @@ -3605,303 +4330,2700 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerProxyTypeHttp": { + "cdn_loadbalancerWebApplicationFirewall": { "type": "object", - "description": "Choice for selecting HTTP proxy", - "title": "HTTP Choice", - "x-displayname": "HTTP Choice", - "x-ves-displayorder": "1,3", - "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp", + "description": "Web Application Firewall", + "title": "Web Application Firewall", + "x-displayname": "Web Application Firewall", + "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"app_firewall_on_cache_miss\",\"disable_waf\"]", + "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.WebApplicationFirewall", "properties": { - "dns_volterra_managed": { - "type": "boolean", - "description": " DNS records for domains will be managed automatically by F5 Distributed Cloud.\n As a prerequisite, the domain must be delegated to F5 Distributed Cloud using Delegated domain feature\n or a DNS CNAME record should be created in your DNS provider's portal.", - "title": "Manage DNS Domain", - "format": "boolean", - "x-displayname": "Automatically Manage DNS Records" + "app_firewall": { + "description": "Exclusive with [app_firewall_on_cache_miss disable_waf]\n Enable WAF configuration for all requests in this distribution", + "title": "Application Firewall for All Requests", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Enable for All Requests" }, - "port": { - "type": "integer", - "description": "Exclusive with [port_ranges]\n HTTP port to Listen.\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", - "title": "HTTP port to listen", - "format": "int64", - "x-displayname": "HTTP Listen Port", - "x-ves-example": "80", + "app_firewall_on_cache_miss": { + "description": "Exclusive with [app_firewall disable_waf]\n Enable WAF configuration only on cache miss in this distribution", + "title": "Application Firewall Enable Only on Cache Miss", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Enable Only on Cache Miss" + }, + "csrf_policy": { + "description": " Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf.\n\n The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host.\n\n 1. The origin that caused the user agent to issue the request (source origin).\n 2. The origin that the request is going to (target origin).\n When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid.\n Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).", + "title": "csrf_policy", + "$ref": "#/definitions/schemaCsrfPolicy", + "x-displayname": "Cross-Site Request Forgery Protection" + }, + "data_guard_rules": { + "type": "array", + "description": " Data Guard prevents responses from exposing sensitive information by masking the data.\n The system masks credit card numbers and social security numbers leaked from the application from within the http response with a string of asterisks (*).\n Note: App Firewall should be enabled, to use Data Guard feature.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Data Guard Rules", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policySimpleDataGuardRule" + }, + "x-displayname": "Data Guard Rules", "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "65535" + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" } }, - "port_ranges": { - "type": "string", - "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", - "title": "Port_ranges", - "minLength": 1, - "maxLength": 512, - "x-displayname": "Port Ranges", - "x-ves-example": "80,443,8080-8191,9080", + "disable_waf": { + "description": "Exclusive with [app_firewall app_firewall_on_cache_miss]\n No WAF configuration for this load balancer", + "title": "Disable WAF", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "graphql_rules": { + "type": "array", + "description": " GraphQL is a query language and server-side runtime for APIs which provides a complete and understandable\n description of the data in API. GraphQL gives clients the power to ask for exactly what they need, makes it\n easier to evolve APIs over time, and enables powerful developer tools. Policy configuration to analyze GraphQL\n queries and prevent GraphQL tailored attacks.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "GraphQL Inspection", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyGraphQLRule" + }, + "x-displayname": "GraphQL Inspection", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true" + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "protected_cookies": { + "type": "array", + "description": " Allows setting attributes (SameSite, Secure, and HttpOnly) on cookies in responses.\n Cookie Tampering Protection prevents attackers from modifying the value of session cookies.\n For Cookie Tampering Protection, enabling a web app firewall (WAF) is a prerequisite.\n The configured mode of WAF (monitoring or blocking) will be enforced on the request when cookie tampering is identified.\n Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Cookie protection", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaCookieManipulationOptionType" + }, + "x-displayname": "Cookie Protection", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "waf_exclusion_rules": { + "type": "array", + "description": " Define the Signature IDs, Violations, Attack Types and Bot Names that should be excluded from WAF processing on specific match criteria.\n The match criteria include domain, path and method.\n WAF Exclusion rules is a sequential engine where rules are evaluated one after the other.\n It's important to define the correct order for WAF exclusion rules to get the intended result, rules are evaluated from top to bottom in the list.\n For each request, its characteristics are evaluated based on the match criteria in each WAF exclusion rule, starting from the top.\n When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "WAF Exclusion Rules", + "maxItems": 256, + "items": { + "$ref": "#/definitions/policySimpleWafExclusionRule" + }, + "x-displayname": "WAF Exclusion Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" } } } }, - "ioschemaEmpty": { - "type": "object", - "description": "This can be used for messages where no values are needed", - "title": "Empty", - "x-displayname": "Empty", - "x-ves-proto-message": "ves.io.schema.Empty" - }, - "ioschemaObjectRefType": { + "common_wafAPIEndpointProtectionRule": { "type": "object", - "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", - "title": "ObjectRefType", - "x-displayname": "Object reference", - "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "description": "API Protection Rule for a specific endpoint", + "title": "API Endpoint Protection Rule", + "x-displayname": "API Endpoint Protection Rule", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIEndpointProtectionRule", "properties": { - "kind": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", - "title": "kind", - "x-displayname": "Kind", - "x-ves-example": "virtual_site" + "action": { + "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "action", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", + "x-displayname": "Rule Action", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } }, - "name": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "contactus-route" + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" }, - "namespace": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" + "api_endpoint_method": { + "description": " The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request.\n The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.", + "title": "method", + "$ref": "#/definitions/policyHttpMethodMatcherType", + "x-displayname": "HTTP Methods" }, - "tenant": { + "api_endpoint_path": { "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" + "description": " The endpoint (path) of the request.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "api endpoint path", + "maxLength": 1024, + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" + } }, - "uid": { + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } } } }, - "origin_poolOriginServerPublicIP": { + "common_wafAPIGroupProtectionRule": { "type": "object", - "description": "Specify origin server with public IP address", - "title": "OriginServerPublicIP", - "x-displayname": "Public IP", - "x-ves-displayorder": "2", - "x-ves-oneof-field-public_ip_choice": "[\"ip\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicIP", + "description": "API Protection Rule for a group or a base url", + "title": "API Group Protection Rule", + "x-displayname": "API Group Protection Rule", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroupProtectionRule", "properties": { - "ip": { - "type": "string", - "description": "Exclusive with []\n Public IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", - "title": "IP", - "x-displayname": "Public IPV4", - "x-ves-example": "8.8.8.8", + "action": { + "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "action", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", + "x-displayname": "Rule Action", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4": "true" + "ves.io.schema.rules.message.required": "true" } }, - "ipv6": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "api_group": { "type": "string", - "description": " Public IPV6 address\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", - "title": "IPV6", - "x-displayname": "Public IPV6", - "x-ves-example": "2001::1", + "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv6": "true" + "ves.io.schema.rules.string.max_len": "128" } - } - } - }, - "origin_poolOriginServerPublicName": { - "type": "object", - "description": "Specify origin server with public DNS name", - "title": "OriginServerPublicName", - "x-displayname": "Public DNS Name", - "x-ves-displayorder": "1,2", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicName", - "properties": { - "dns_name": { + }, + "base_path": { "type": "string", - "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", - "title": "DNS name", - "minLength": 1, - "maxLength": 256, - "x-displayname": "DNS Name", - "x-ves-example": "value", + "description": " Prefix of the request path.\n For example: /v1\n\nExample: - \"/v1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/v1", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.hostname": "true", - "ves.io.schema.rules.string.max_len": "256", - "ves.io.schema.rules.string.min_len": "1" + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" } }, - "refresh_interval": { - "type": "integer", - "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", - "title": "refresh_interval", - "format": "int64", - "x-displayname": "DNS Refresh interval", - "x-ves-example": "20", + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "604800" + "ves.io.schema.rules.message.required": "true" + } + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" } } } }, - "origin_poolTlsCertificatesType": { + "common_wafAPIGroups": { "type": "object", - "description": "mTLS Client Certificate", - "title": "TlsCertificatesType", - "x-displayname": "mTLS Certificate", - "x-ves-displayorder": "1", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.TlsCertificatesType", + "title": "api groups", + "x-displayname": "API Groups", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroups", "properties": { - "tls_certificates": { + "api_groups": { "type": "array", - "description": " mTLS Client Certificate\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 1\n ves.io.schema.rules.repeated.min_items: 1\n", - "title": "mTLS certificate", - "minItems": 1, - "maxItems": 1, + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "api group", + "maxItems": 32, "items": { - "$ref": "#/definitions/schemaTlsCertificateType" + "type": "string" }, - "x-displayname": "mTLS Client Certificate", + "x-displayname": "API Groups", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "1", - "ves.io.schema.rules.repeated.min_items": "1" + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" } } } }, - "origin_poolUpstreamTlsParameters": { + "common_wafAPIProtectionRuleAction": { "type": "object", - "description": "Upstream TLS Parameters", - "title": "UpstreamTlsParameters", - "x-displayname": "TLS Parameters for Origin Servers", - "x-ves-displayorder": "10,2,8,9", - "x-ves-oneof-field-mtls_choice": "[\"no_mtls\",\"use_mtls\",\"use_mtls_obj\"]", - "x-ves-oneof-field-server_validation_choice": "[\"skip_server_verification\",\"use_server_verification\",\"volterra_trusted_ca\"]", - "x-ves-oneof-field-sni_choice": "[\"disable_sni\",\"sni\",\"use_host_header_as_sni\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsParameters", + "description": "The action to take if the input request matches the rule.", + "title": "API Protection Rule Action", + "x-displayname": "API Protection Rule Action", + "x-ves-oneof-field-action": "[\"allow\",\"deny\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRuleAction", "properties": { - "disable_sni": { - "description": "Exclusive with [sni use_host_header_as_sni]\n Do not use SNI.", - "title": "disable_sni", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "No SNI" - }, - "no_mtls": { - "description": "Exclusive with [use_mtls use_mtls_obj]\n", - "title": "No mTLS", + "allow": { + "description": "Exclusive with [deny]\n Allow the request to proceed.", + "title": "Allow", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" + "x-displayname": "Allow" }, - "skip_server_verification": { - "description": "Exclusive with [use_server_verification volterra_trusted_ca]\n Skip origin server verification", - "title": "Skip Server Verification", + "deny": { + "description": "Exclusive with [allow]\n Deny the request.", + "title": "Deny", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Skip Verification" - }, - "sni": { - "type": "string", - "description": "Exclusive with [disable_sni use_host_header_as_sni]\n SNI value to be used.\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n", - "title": "sni", - "maxLength": 256, - "x-displayname": "SNI Value", + "x-displayname": "Deny" + } + } + }, + "common_wafAPIProtectionRules": { + "type": "object", + "description": "API Protection Rules", + "title": "API Protection Rules", + "x-displayname": "API Protection Rules", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRules", + "properties": { + "api_endpoint_rules": { + "type": "array", + "description": " This category defines specific rules per API endpoints.\n If request matches any of these rules, skipping second category rules.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "api_endpoint_rules", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafAPIEndpointProtectionRule" + }, + "x-displayname": "API Endpoints", "x-ves-validation-rules": { - "ves.io.schema.rules.string.hostname": "true", - "ves.io.schema.rules.string.max_len": "256" + "ves.io.schema.rules.repeated.max_items": "20" } }, - "tls_config": { - "description": " TLS parameters such as min/max TLS version and ciphers\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "TLS Config", - "$ref": "#/definitions/viewsTlsConfig", - "x-displayname": "TLS Configuration for Origin Servers", - "x-ves-required": "true", + "api_groups_rules": { + "type": "array", + "description": " This category includes rules per API group or Server URL.\n For API groups, refer to API Definition which includes API groups derived from uploaded swaggers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "api_groups_rules", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafAPIGroupProtectionRule" + }, + "x-displayname": "Server URLs and API Groups", "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "ves.io.schema.rules.repeated.max_items": "20" } - }, - "use_host_header_as_sni": { - "description": "Exclusive with [disable_sni sni]\n Use the host header as SNI. The host header value is extracted after any configured rewrites have been applied.", - "title": "use_host_header_as_sni", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Host Header" - }, - "use_mtls": { - "description": "Exclusive with [no_mtls use_mtls_obj]\n", + } + } + }, + "common_wafAPIRateLimit": { + "type": "object", + "title": "APIRateLimit", + "x-displayname": "APIRateLimit", + "x-ves-oneof-field-ip_allowed_list_choice": "[\"bypass_rate_limiting_rules\",\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIRateLimit", + "properties": { + "api_endpoint_rules": { + "type": "array", + "description": " Sets of rules for a specific endpoints.\n Order is matter as it uses first match policy.\n For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "api_endpoint_policy", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafApiEndpointRule" + }, + "x-displayname": "API Endpoints", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" + } + }, + "bypass_rate_limiting_rules": { + "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list no_ip_allowed_list]\n This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", + "title": "bypass_rate_limiting_policy", + "$ref": "#/definitions/common_wafBypassRateLimitingRules", + "x-displayname": "Bypass Rate Limiting" + }, + "custom_ip_allowed_list": { + "description": "Exclusive with [bypass_rate_limiting_rules ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", + "title": "Custom IP list", + "$ref": "#/definitions/common_wafCustomIpAllowedList", + "x-displayname": "IP Allowed List using IP Prefix Set(s)" + }, + "ip_allowed_list": { + "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", + "title": "IP Allowed List", + "$ref": "#/definitions/viewsPrefixStringListType", + "x-displayname": "IP Allowed List" + }, + "no_ip_allowed_list": { + "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "No IP Allowed" + }, + "server_url_rules": { + "type": "array", + "description": " Set of rules for entire domain or base path that contain multiple endpoints.\n Order is matter as it uses first match policy.\n For matching also specific endpoints you can use the API endpoint rules set bellow.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "server_url_policy", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafServerUrlRule" + }, + "x-displayname": "Server URLs", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" + } + } + } + }, + "common_wafAPISpecificationSettings": { + "type": "object", + "description": "Settings for api specification (api definition, OpenAPI validation, etc.)", + "title": "APISpecificationSettings", + "x-displayname": "API Specification and Validation", + "x-ves-oneof-field-validation_target_choice": "[\"validation_all_spec_endpoints\",\"validation_custom_list\",\"validation_disabled\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APISpecificationSettings", + "properties": { + "api_definition": { + "description": " Specify API definition which includes application API paths and methods derived from swagger files.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Use API Definition", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "API Definition", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "validation_all_spec_endpoints": { + "description": "Exclusive with [validation_custom_list validation_disabled]\n Validate all API endpoints specified by the API Inventory.\n All other API endpoints would proceed according to \"Fall Through Mode\"", + "title": "validation_all_spec_endpoints", + "$ref": "#/definitions/common_wafOpenApiValidationAllSpecEndpointsSettings", + "x-displayname": "API Inventory" + }, + "validation_custom_list": { + "description": "Exclusive with [validation_all_spec_endpoints validation_disabled]\n Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other end-points not listed will act according to \"Fall Through Mode\"", + "title": "Custom list", + "$ref": "#/definitions/common_wafValidateApiBySpecRule", + "x-displayname": "Custom List" + }, + "validation_disabled": { + "description": "Exclusive with [validation_all_spec_endpoints validation_custom_list]\n Don't run OpenAPI validation", + "title": "Disabled", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disabled" + } + } + }, + "common_wafApiDiscoverySetting": { + "type": "object", + "description": "Specifies the settings used for API discovery", + "title": "API Discovery Setting", + "x-displayname": "API Discovery Setting", + "x-ves-displayorder": "1,6,5", + "x-ves-oneof-field-learn_from_redirect_traffic": "[\"disable_learn_from_redirect_traffic\",\"enable_learn_from_redirect_traffic\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiDiscoverySetting", + "properties": { + "disable_learn_from_redirect_traffic": { + "description": "Exclusive with [enable_learn_from_redirect_traffic]\n Disable learning API patterns from traffic with redirect response codes 3xx", + "title": "Disable learning from redirected request traffic", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Learning From Redirect Traffic" + }, + "discovered_api_settings": { + "description": " Configure Discovered API Settings.", + "title": "Discovered API Settings", + "$ref": "#/definitions/app_typeDiscoveredAPISettings", + "x-displayname": "Discovered API Settings" + }, + "enable_learn_from_redirect_traffic": { + "description": "Exclusive with [disable_learn_from_redirect_traffic]\n Enable learning API patterns from traffic with redirect response codes 3xx", + "title": "Enable learning from redirected request traffic", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Learning From Redirect Traffic" + }, + "sensitive_data_detection_rules": { + "description": " Manage rules to detect sensitive data in requests and/or response sections.", + "title": "sensitive data rules", + "$ref": "#/definitions/app_typeSensitiveDataDetectionRules", + "x-displayname": "Sensitive Data Detection" + } + } + }, + "common_wafApiEndpointDetails": { + "type": "object", + "description": "This defines api endpoint", + "title": "ApiEndpointDetails", + "x-displayname": "API Endpoint", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointDetails", + "properties": { + "methods": { + "type": "array", + "description": " Methods to be matched\n\nExample: - \"GET\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Methods", + "x-ves-example": "GET", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "path": { + "type": "string", + "description": " Path to be matched\n\nExample: - \"/api/v1/login\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "Path", + "maxLength": 1024, + "x-displayname": "Path", + "x-ves-example": "/api/v1/login", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" + } + } + } + }, + "common_wafApiEndpointRule": { + "type": "object", + "title": "ApiEndpointRule", + "x-displayname": "ApiEndpointRule", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "api_endpoint_method": { + "description": " The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request.\n The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.", + "title": "method", + "$ref": "#/definitions/policyHttpMethodMatcherType", + "x-displayname": "HTTP Methods" + }, + "api_endpoint_path": { + "type": "string", + "description": " The endpoint (path) of the request.\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 1024\n ves.io.schema.rules.string.templated_http_path: true\n", + "title": "api endpoint path", + "maxLength": 1024, + "x-displayname": "API Endpoint", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true" + } + }, + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "inline_rate_limiter": { + "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", + "title": "Inline Rate Limiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", + "x-displayname": "Specific Values" + }, + "ref_rate_limiter": { + "description": "Exclusive with [inline_rate_limiter]\n Select external rate limiter.", + "title": "External Rate Limiter", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "External Rate Limiter" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + } + } + }, + "common_wafAudiences": { + "type": "object", + "title": "audiences", + "x-displayname": "Audiences", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Audiences", + "properties": { + "audiences": { + "type": "array", + "description": "\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "audiences", + "minItems": 1, + "maxItems": 16, + "items": { + "type": "string" + }, + "x-displayname": "Values", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafBasePathsType": { + "type": "object", + "title": "base_paths", + "x-displayname": "Base Paths", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BasePathsType", + "properties": { + "base_paths": { + "type": "array", + "description": "\nExample: - \"/basepath\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.http_path: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "base_paths", + "maxItems": 16, + "items": { + "type": "string" + }, + "x-displayname": "Prefix Values", + "x-ves-example": "/basepath", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafBypassRateLimitingRule": { + "type": "object", + "title": "BypassRateLimitingRule", + "x-displayname": "Bypass Rate Limiting Rule", + "x-ves-oneof-field-destination_type": "[\"any_url\",\"api_endpoint\",\"api_groups\",\"base_path\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "any_url": { + "description": "Exclusive with [api_endpoint api_groups base_path]\n Any URL ", + "title": "any_url", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any URL" + }, + "api_endpoint": { + "description": "Exclusive with [any_url api_groups base_path]\n The endpoint (path) of the request.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "api endpoint path", + "$ref": "#/definitions/common_wafApiEndpointDetails", + "x-displayname": "API Endpoint", + "x-ves-example": "/endpoint1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "api_groups": { + "description": "Exclusive with [any_url api_endpoint base_path]\n Validation will be performed for the endpoints mentioned in the API Groups", + "title": "api group", + "$ref": "#/definitions/common_wafAPIGroups", + "x-displayname": "API Groups" + }, + "base_path": { + "type": "string", + "description": "Exclusive with [any_url api_endpoint api_groups]\n The base path which this validation applies to\n\nExample: - \"/api/v1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/api/v1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n For example: api.example.com\n\nExample: - \"api.example.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-example": "api.example.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + } + } + }, + "common_wafBypassRateLimitingRules": { + "type": "object", + "description": "This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", + "title": "bypass_rate_limiting_policy", + "x-displayname": "Bypass Rate Limiting", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRules", + "properties": { + "bypass_rate_limiting_rules": { + "type": "array", + "description": " This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "title": "bypass_rate_limiting_policy", + "maxItems": 20, + "items": { + "$ref": "#/definitions/common_wafBypassRateLimitingRule" + }, + "x-displayname": "Bypass Rate Limiting", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "20" + } + } + } + }, + "common_wafChallengeRule": { + "type": "object", + "description": "Challenge rule", + "title": "Challenge Rule", + "x-displayname": "Challenge Rule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRule", + "properties": { + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "spec": { + "description": " Specification for the rule including match predicates and actions.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "spec", + "$ref": "#/definitions/service_policy_ruleChallengeRuleSpec", + "x-displayname": "Challenge Rule Specification", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafChallengeRuleList": { + "type": "object", + "description": "List of challenge rules to be used in policy based challenge", + "title": "Challenge Rule List", + "x-displayname": "Challenge Rule List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRuleList", + "properties": { + "rules": { + "type": "array", + "description": " Rules that specify the match conditions and challenge type to be launched.\n When a challenge type is selected to be always enabled,\n these rules can be used to disable challenge or launch a different challenge for requests that match the specified conditions\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Rules", + "maxItems": 64, + "items": { + "$ref": "#/definitions/common_wafChallengeRule" + }, + "x-displayname": "Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + } + } + }, + "common_wafClientSrcRuleAction": { + "type": "string", + "description": "Action that should be taken when client identifier matches the rule\n", + "title": "action", + "enum": [ + "SKIP_PROCESSING_WAF", + "SKIP_PROCESSING_BOT", + "SKIP_PROCESSING_MUM", + "SKIP_PROCESSING_IP_REPUTATION", + "SKIP_PROCESSING_API_PROTECTION", + "SKIP_PROCESSING_OAS_VALIDATION", + "SKIP_PROCESSING_DDOS_PROTECTION", + "SKIP_PROCESSING_THREAT_MESH" + ], + "default": "SKIP_PROCESSING_WAF", + "x-displayname": "Action", + "x-ves-proto-enum": "ves.io.schema.views.common_waf.ClientSrcRuleAction" + }, + "common_wafCustomFallThroughMode": { + "type": "object", + "description": "Define the fall through settings", + "title": "Custom Fall Through Mode", + "x-displayname": "Custom Fall Through Mode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomFallThroughMode", + "properties": { + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Custom Fall Through Rule List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafFallThroughRule" + }, + "x-displayname": "Custom Fall Through Rule List", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + } + } + }, + "common_wafCustomIpAllowedList": { + "type": "object", + "description": "IP Allowed list using existing ip_prefix_set objects", + "title": "Custom IP Allowed List", + "x-displayname": "Custom IP Allowed List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomIpAllowedList", + "properties": { + "rate_limiter_allowed_prefixes": { + "type": "array", + "description": " References to ip_prefix_set objects.\n Requests from source IP addresses that are covered by one of the allowed IP Prefixes are not subjected to rate limiting.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "rate_limiter_allowed_prefixes", + "minItems": 1, + "maxItems": 4, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "List of IP Prefix Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "common_wafEnableChallenge": { + "type": "object", + "description": "Configure auto mitigation i.e risk based challenges for malicious users", + "title": "enable challenge", + "x-displayname": "Enable Malicious User Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.EnableChallenge", + "properties": { + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" + }, + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_js_challenge_parameters": { + "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_mitigation_settings": { + "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default" + }, + "js_challenge_parameters": { + "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge Parameters" + }, + "malicious_user_mitigation": { + "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", + "title": "Malicious User Mitigation", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Custom" + } + } + }, + "common_wafFallThroughRule": { + "type": "object", + "description": "Fall Through Rule for a specific endpoint, base-path, or API group", + "title": "Fall Through Rule", + "x-displayname": "Fall Through Rule", + "x-ves-oneof-field-action_choice": "[\"action_block\",\"action_report\",\"action_skip\"]", + "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.FallThroughRule", + "properties": { + "action_block": { + "description": "Exclusive with [action_report action_skip]\n Block the request and issue an API security event", + "title": "block", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Block" + }, + "action_report": { + "description": "Exclusive with [action_block action_skip]\n Continue processing the request and issue an API security event", + "title": "report", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Report" + }, + "action_skip": { + "description": "Exclusive with [action_block action_report]\n Continue processing the request", + "title": "skip", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip" + }, + "api_endpoint": { + "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", + "title": "API Endpoint", + "$ref": "#/definitions/common_wafApiEndpointDetails", + "x-displayname": "API Endpoint" + }, + "api_group": { + "type": "string", + "description": "Exclusive with [api_endpoint base_path]\n The API group which this validation applies to\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": "Exclusive with [api_endpoint api_group]\n The base path which this validation applies to\n\nExample: - \"/api/v1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/api/v1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafHttpHeaderMatcherList": { + "type": "object", + "description": "Request header name and value pairs", + "title": "HTTP Header", + "x-displayname": "HTTP Header", + "x-ves-proto-message": "ves.io.schema.views.common_waf.HttpHeaderMatcherList", + "properties": { + "headers": { + "type": "array", + "description": " List of HTTP header name and value pairs\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "headers", + "maxItems": 16, + "items": { + "$ref": "#/definitions/ioschemaHeaderMatcherType" + }, + "x-displayname": "HTTP Headers", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16" + } + } + } + }, + "common_wafInlineRateLimiter": { + "type": "object", + "title": "InlineRateLimiter", + "x-displayname": "InlineRateLimiter", + "x-ves-oneof-field-count_by_choice": "[\"ref_user_id\",\"use_http_lb_user_id\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.InlineRateLimiter", + "properties": { + "ref_user_id": { + "description": "Exclusive with [use_http_lb_user_id]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier to be rate limited.", + "title": "ref_user_id", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "User Identification Policy" + }, + "threshold": { + "type": "integer", + "description": " The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 8192\n", + "title": "threshold", + "format": "int64", + "x-displayname": "Threshold", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "8192" + } + }, + "unit": { + "description": " Unit for the period per which the rate limit is applied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "rate", + "$ref": "#/definitions/rate_limiterRateLimitPeriodUnit", + "x-displayname": "Duration", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "use_http_lb_user_id": { + "description": "Exclusive with [ref_user_id]\n Defined in HTTP-LB Security Configuration -\u003e User Identifier.", + "title": "use_http_lb_user_id", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use HTTP-LB User Identifier" + } + } + }, + "common_wafJWKS": { + "type": "object", + "description": "The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", + "title": "jwks", + "x-displayname": "JSON Web Key Set (JWKS)", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWKS", + "properties": { + "cleartext": { + "type": "string", + "description": " The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", + "title": "cleartext", + "x-displayname": "JSON Web Key Set (JWKS)" + } + } + }, + "common_wafJWTValidation": { + "type": "object", + "description": "JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\nJWTs before they are passed to your API origin. JWT Validation will also stop requests with expired\ntokens or tokens that are not yet valid.", + "title": "JWT Validation", + "x-displayname": "JWT Validation", + "x-ves-oneof-field-jwks_configuration": "[\"jwks_config\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWTValidation", + "properties": { + "action": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "action", + "$ref": "#/definitions/schemaAction", + "x-displayname": "Action", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "jwks_config": { + "description": "Exclusive with []\n The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", + "title": "jwks_config", + "$ref": "#/definitions/common_wafJWKS", + "x-displayname": "JSON Web Key Set (JWKS)" + }, + "mandatory_claims": { + "description": " Configuration for validation of mandatory claims. The system will verify that the claim exists in JWT.\n If the claim does not exist JWT token validation will fail.", + "title": "Mandatory Claims", + "$ref": "#/definitions/common_wafMandatoryClaims", + "x-displayname": "Mandatory Claims" + }, + "reserved_claims": { + "description": " Configuration required for validation of reserved claims. If some claims are absent in\n the token validation of these claims should be disabled.", + "title": "reserved_claims", + "$ref": "#/definitions/common_wafReservedClaims", + "x-displayname": "Reserved Claims Validation" + }, + "target": { + "description": " Define endpoints for which JWT token validation will be performed\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "target", + "$ref": "#/definitions/common_wafTarget", + "x-displayname": "Target", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "token_location": { + "description": " Define where in the HTTP request the JWT token will be extracted\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "token location", + "$ref": "#/definitions/common_wafTokenLocation", + "x-displayname": "Token Location", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafMandatoryClaims": { + "type": "object", + "description": "Configurable Validation of mandatory Claims.", + "title": "MandatoryClaims", + "x-displayname": "Mandatory Claims", + "x-ves-proto-message": "ves.io.schema.views.common_waf.MandatoryClaims", + "properties": { + "claim_names": { + "type": "array", + "description": "\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Claim names", + "maxItems": 16, + "items": { + "type": "string" + }, + "x-displayname": "Claim Names", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafOpenApiFallThroughMode": { + "type": "object", + "description": "x-required\nDetermine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)", + "title": "Fall Through Mode", + "x-displayname": "Fall Through Mode", + "x-ves-oneof-field-fall_through_mode_choice": "[\"fall_through_mode_allow\",\"fall_through_mode_custom\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiFallThroughMode", + "properties": { + "fall_through_mode_allow": { + "description": "Exclusive with [fall_through_mode_custom]\n Allow any unprotected end point", + "title": "Allow", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Allow" + }, + "fall_through_mode_custom": { + "description": "Exclusive with [fall_through_mode_allow]\n Custom rules for any unprotected end point", + "title": "Custom", + "$ref": "#/definitions/common_wafCustomFallThroughMode", + "x-displayname": "Custom" + } + } + }, + "common_wafOpenApiValidationAllSpecEndpointsSettings": { + "type": "object", + "description": "Settings for API Inventory validation", + "title": "OpenAPI Validation API Inventory Settings", + "x-displayname": "API Inventory", + "x-ves-oneof-field-oversized_body_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings", + "properties": { + "fall_through_mode": { + "description": " Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Fall Through Mode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", + "x-displayname": "Fall Through Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "settings": { + "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", + "x-displayname": "Common Settings" + }, + "validation_mode": { + "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the API Inventory endpoints\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Validation Mode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", + "x-displayname": "Validation Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafOpenApiValidationCommonSettings": { + "type": "object", + "description": "OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "x-displayname": "Common Settings", + "x-ves-oneof-field-oversized_body_choice": "[\"oversized_body_fail_validation\",\"oversized_body_skip_validation\"]", + "x-ves-oneof-field-property_validation_settings_choice": "[\"property_validation_settings_custom\",\"property_validation_settings_default\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationCommonSettings", + "properties": { + "oversized_body_fail_validation": { + "description": "Exclusive with [oversized_body_skip_validation]\n Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb)", + "title": "Fail the validation for over-sized body", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Fail Body Validation" + }, + "oversized_body_skip_validation": { + "description": "Exclusive with [oversized_body_fail_validation]\n Skip body validation when the body length is too long to verify (default 64Kb)", + "title": "Skip validation for over-sized body", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip Body Validation" + }, + "property_validation_settings_custom": { + "description": "Exclusive with [property_validation_settings_default]\n Use custom settings with Open API specification validation", + "title": "Custom settings", + "$ref": "#/definitions/common_wafValidationPropertySetting", + "x-displayname": "Custom" + }, + "property_validation_settings_default": { + "description": "Exclusive with [property_validation_settings_custom]\n Keep the default settings of OpenAPI specification validation", + "title": "Default", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default" + } + } + }, + "common_wafOpenApiValidationMode": { + "type": "object", + "description": "x-required\nValidation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)", + "title": "Validation Mode", + "x-displayname": "Validation Mode", + "x-ves-oneof-field-response_validation_mode_choice": "[\"response_validation_mode_active\",\"skip_response_validation\"]", + "x-ves-oneof-field-validation_mode_choice": "[\"skip_validation\",\"validation_mode_active\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationMode", + "properties": { + "response_validation_mode_active": { + "description": "Exclusive with [skip_response_validation]\n Enforce OpenAPI validation processing for this event", + "title": "Validate", + "$ref": "#/definitions/common_wafOpenApiValidationModeActiveResponse", + "x-displayname": "Validate" + }, + "skip_response_validation": { + "description": "Exclusive with [response_validation_mode_active]\n Skip OpenAPI validation processing for this event", + "title": "Skip", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip" + }, + "skip_validation": { + "description": "Exclusive with [validation_mode_active]\n Skip OpenAPI validation processing for this event", + "title": "Skip", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip" + }, + "validation_mode_active": { + "description": "Exclusive with [skip_validation]\n Enforce OpenAPI validation processing for this event", + "title": "Validate", + "$ref": "#/definitions/common_wafOpenApiValidationModeActive", + "x-displayname": "Validate" + } + } + }, + "common_wafOpenApiValidationModeActive": { + "type": "object", + "description": "Validation mode properties of request", + "title": "Open API Validation Mode Active For Request", + "x-displayname": "Open API Validation Mode Active", + "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActive", + "properties": { + "enforcement_block": { + "description": "Exclusive with [enforcement_report]\n Block the request, trigger an API security event", + "title": "Block", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Block" + }, + "enforcement_report": { + "description": "Exclusive with [enforcement_block]\n Allow the request, trigger an API security event", + "title": "Report", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Report" + }, + "request_validation_properties": { + "type": "array", + "description": " List of properties of the request to validate according to the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.not_in: [7]\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Request Validation Properties", + "minItems": 1, + "items": { + "$ref": "#/definitions/schemaOpenApiValidationProperties" + }, + "x-displayname": "Request Validation Properties", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.not_in": "[7]", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafOpenApiValidationModeActiveResponse": { + "type": "object", + "description": "Validation mode properties of response", + "title": "Open API Validation Mode Active For Response", + "x-displayname": "Open API Validation Mode Active", + "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse", + "properties": { + "enforcement_block": { + "description": "Exclusive with [enforcement_report]\n Block the response, trigger an API security event", + "title": "Block", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Block" + }, + "enforcement_report": { + "description": "Exclusive with [enforcement_block]\n Allow the response, trigger an API security event", + "title": "Report", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Report" + }, + "response_validation_properties": { + "type": "array", + "description": " List of properties of the response to validate according to the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.in: [2,4,5,7]\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Response Validation Properties", + "minItems": 1, + "items": { + "$ref": "#/definitions/schemaOpenApiValidationProperties" + }, + "x-displayname": "Response Validation Properties", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.in": "[2,4,5,7]", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafOpenApiValidationRule": { + "type": "object", + "description": "OpenAPI Validation Rule for a specific endpoint, base-path, or API group", + "title": "OpenAPI Validation Rule", + "x-displayname": "OpenAPI Validation Rule", + "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "api_endpoint": { + "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", + "title": "API Endpoint", + "$ref": "#/definitions/common_wafApiEndpointDetails", + "x-displayname": "API Endpoint" + }, + "api_group": { + "type": "string", + "description": "Exclusive with [api_endpoint base_path]\n The API group which this validation applies to\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": "Exclusive with [api_endpoint api_group]\n The base path which this validation applies to\n\nExample: - \"/api/v1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/api/v1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + }, + "validation_mode": { + "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Validation Mode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", + "x-displayname": "Validation Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafRateLimitConfigType": { + "type": "object", + "title": "RateLimitConfigType", + "x-displayname": "RateLimitConfigType", + "x-ves-oneof-field-ip_allowed_list_choice": "[\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", + "x-ves-oneof-field-policy_choice": "[\"no_policies\",\"policies\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.RateLimitConfigType", + "properties": { + "custom_ip_allowed_list": { + "description": "Exclusive with [ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", + "title": "Custom IP list", + "$ref": "#/definitions/common_wafCustomIpAllowedList", + "x-displayname": "IP Allowed List using IP Prefix Set(s)" + }, + "ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", + "title": "IP Allowed List", + "$ref": "#/definitions/viewsPrefixStringListType", + "x-displayname": "IP Allowed List" + }, + "no_ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "No IP Allowed" + }, + "no_policies": { + "description": "Exclusive with [policies]\n Do not apply additional rate limiter policies.", + "title": "no_policies", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "No Rate Limiter Policies" + }, + "policies": { + "description": "Exclusive with [no_policies]\n Apply rate limiter policies to requests that are not from the IP Allowed List.\n The policies are evaluated sequentially until a matching rule is identified. If there's a match, the rate limiting behavior is modified according\n to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.", + "title": "policies", + "$ref": "#/definitions/rate_limiter_policyPolicyList", + "x-displayname": "Rate Limiter Policies" + }, + "rate_limiter": { + "description": " Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.", + "title": "rate_limiter", + "$ref": "#/definitions/rate_limiterRateLimitValue", + "x-displayname": "Request Rate Limiter" + } + } + }, + "common_wafReservedClaims": { + "type": "object", + "description": "Configurable Validation of reserved Claims", + "title": "reserved claims", + "x-displayname": "Reserved claims configuration", + "x-ves-oneof-field-audience_validation": "[\"audience\",\"audience_disable\"]", + "x-ves-oneof-field-issuer_validation": "[\"issuer\",\"issuer_disable\"]", + "x-ves-oneof-field-validate_period": "[\"validate_period_disable\",\"validate_period_enable\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ReservedClaims", + "properties": { + "audience": { + "description": "Exclusive with [audience_disable]\n", + "title": "audience", + "$ref": "#/definitions/common_wafAudiences", + "x-displayname": "Exact Match" + }, + "audience_disable": { + "description": "Exclusive with [audience]\n", + "title": "audience_disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "issuer": { + "type": "string", + "description": "Exclusive with [issuer_disable]\n", + "title": "issuer", + "x-displayname": "Exact Match" + }, + "issuer_disable": { + "description": "Exclusive with [issuer]\n", + "title": "issuer_disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "validate_period_disable": { + "description": "Exclusive with [validate_period_enable]\n", + "title": "validate_period_disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "validate_period_enable": { + "description": "Exclusive with [validate_period_disable]\n", + "title": "validate_period_enable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable" + } + } + }, + "common_wafServerUrlRule": { + "type": "object", + "title": "ServerUrlRule", + "x-displayname": "Server URLs and API Groups", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServerUrlRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "api_group": { + "type": "string", + "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": " Prefix of the request path.\n\nExample: - \"/\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "inline_rate_limiter": { + "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", + "title": "Inline Rate Limiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", + "x-displayname": "Specific Values" + }, + "ref_rate_limiter": { + "description": "Exclusive with [inline_rate_limiter]\n Use external rate limiter.", + "title": "External Rate Limiter", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "External Rate Limiter" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + } + } + }, + "common_wafServicePolicyList": { + "type": "object", + "description": "List of service policies.", + "title": "service policy list", + "x-displayname": "Service Policy List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServicePolicyList", + "properties": { + "policies": { + "type": "array", + "description": " Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\n correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result.\n For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\n current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\n If all policies are evaluated and none match, then the request will be denied by default.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "policies", + "minItems": 1, + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Policies", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafSimpleClientSrcRule": { + "type": "object", + "description": "Simple client source rule specifies the sources to be blocked or trusted (skip WAF)", + "title": "SimpleClientSrcRule", + "x-displayname": "Client Rule", + "x-ves-oneof-field-action_choice": "[\"bot_skip_processing\",\"skip_processing\",\"waf_skip_processing\"]", + "x-ves-oneof-field-client_source_choice": "[\"as_number\",\"http_header\",\"ip_prefix\",\"user_identifier\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.SimpleClientSrcRule", + "properties": { + "actions": { + "type": "array", + "description": " Actions that should be taken when client identifier matches the rule\n\nValidation Rules:\n ves.io.schema.rules.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 10\n ves.io.schema.rules.repeated.unique: true\n", + "title": "actions", + "maxItems": 10, + "items": { + "$ref": "#/definitions/common_wafClientSrcRuleAction" + }, + "x-displayname": "Actions", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "10", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "as_number": { + "type": "integer", + "description": "Exclusive with [http_header ip_prefix user_identifier]\n RFC 6793 defined 4-byte AS number\n\nExample: - \"4683\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 401308\n", + "title": "as number", + "format": "int64", + "x-displayname": "AS Number", + "x-ves-example": "4683", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "401308" + } + }, + "bot_skip_processing": { + "description": "Exclusive with [skip_processing waf_skip_processing]\n Skip Bot Defense processing for clients matching this rule.", + "title": "Skip Bot Processing", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip Bot Defense Processing" + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.timestamp.within.seconds": "31536000" + } + }, + "http_header": { + "description": "Exclusive with [as_number ip_prefix user_identifier]\n Request header name and value pairs", + "title": "HTTP Header", + "$ref": "#/definitions/common_wafHttpHeaderMatcherList", + "x-displayname": "HTTP Headers" + }, + "ip_prefix": { + "type": "string", + "description": "Exclusive with [as_number http_header user_identifier]\n IPv4 prefix string.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4_prefix: true\n", + "title": "ip prefix", + "x-displayname": "IP Prefix", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4_prefix": "true" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "skip_processing": { + "description": "Exclusive with [bot_skip_processing waf_skip_processing]\n Skip both WAF and Bot Defense processing for clients matching this rule.", + "title": "Skip Both", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip Both" + }, + "user_identifier": { + "type": "string", + "description": "Exclusive with [as_number http_header ip_prefix]\n Identify user based on user identifier. User identifier value needs to be copied from security event.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "user identifier", + "maxLength": 256, + "x-displayname": "User Identifier", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "waf_skip_processing": { + "description": "Exclusive with [bot_skip_processing skip_processing]\n Skip WAF processing for clients matching this rule.", + "title": "Skip WAF Processing", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip WAF Processing" + } + } + }, + "common_wafTarget": { + "type": "object", + "description": "Define endpoints for which JWT token validation will be performed", + "title": "target", + "x-displayname": "Target", + "x-ves-oneof-field-target": "[\"all_endpoint\",\"api_groups\",\"base_paths\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Target", + "properties": { + "all_endpoint": { + "description": "Exclusive with [api_groups base_paths]\n Validation will be performed for all requests on this LB", + "title": "all_endpoint", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "API Inventory" + }, + "api_groups": { + "description": "Exclusive with [all_endpoint base_paths]\n Validation will be performed for the endpoints mentioned in the API Groups", + "title": "api group", + "$ref": "#/definitions/common_wafAPIGroups", + "x-displayname": "API Groups" + }, + "base_paths": { + "description": "Exclusive with [all_endpoint api_groups]\n Validation will be performed for selected path prefixes", + "title": "base paths", + "$ref": "#/definitions/common_wafBasePathsType", + "x-displayname": "Base Paths" + } + } + }, + "common_wafTokenLocation": { + "type": "object", + "description": "Location of JWT in Http request", + "title": "token location", + "x-displayname": "Token Location", + "x-ves-oneof-field-token_location": "[\"bearer_token\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.TokenLocation", + "properties": { + "bearer_token": { + "description": "Exclusive with []\n Token is found in Authorization HTTP header with Bearer authentication scheme", + "title": "bearer token", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Bearer Token" + } + } + }, + "common_wafValidateApiBySpecRule": { + "type": "object", + "description": "Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other api-endpoint not listed will act according to \"Fall Through Mode\".", + "title": "ValidateApiBySpecRule", + "x-displayname": "Custom List", + "x-ves-oneof-field-oversized_body_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidateApiBySpecRule", + "properties": { + "fall_through_mode": { + "description": " Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Fall Through Mode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", + "x-displayname": "Fall Through Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Validation List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafOpenApiValidationRule" + }, + "x-displayname": "Validation List", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "settings": { + "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", + "x-displayname": "OpenAPI specification validation settings" + } + } + }, + "common_wafValidationPropertySetting": { + "type": "object", + "description": "Custom property validation settings", + "title": "Validation Property settings", + "x-displayname": "Validation Property Settings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationPropertySetting", + "properties": { + "queryParameters": { + "description": " Custom settings for query parameters validation", + "title": "Query parameters validation settings", + "$ref": "#/definitions/common_wafValidationSettingForQueryParameters", + "x-displayname": "Validation Settings For Query Parameters" + } + } + }, + "common_wafValidationSettingForHeaders": { + "type": "object", + "description": "x-displayName: \"Validation Settings For Headers\"\nCustom settings for headers validation", + "title": "Validation Settings For Headers", + "properties": { + "allow_additional_headers": { + "description": "x-displayName: \"Allow\"\nAllow extra headers (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/ioschemaEmpty" + }, + "disallow_additional_headers": { + "description": "x-displayName: \"Disallow\"\nDisallow extra headers (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/ioschemaEmpty" + } + } + }, + "common_wafValidationSettingForQueryParameters": { + "type": "object", + "description": "Custom settings for query parameters validation", + "title": "Validation Settings For Query Parameters", + "x-displayname": "Validation Settings For Query Parameters", + "x-ves-oneof-field-additional_parameters_choice": "[\"allow_additional_parameters\",\"disallow_additional_parameters\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationSettingForQueryParameters", + "properties": { + "allow_additional_parameters": { + "description": "Exclusive with [disallow_additional_parameters]\n Allow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Allow" + }, + "disallow_additional_parameters": { + "description": "Exclusive with [allow_additional_parameters]\n Disallow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disallow" + } + } + }, + "http_loadbalancerProxyTypeHttp": { + "type": "object", + "description": "Choice for selecting HTTP proxy", + "title": "HTTP Choice", + "x-displayname": "HTTP Choice", + "x-ves-displayorder": "1,3", + "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp", + "properties": { + "dns_volterra_managed": { + "type": "boolean", + "description": " DNS records for domains will be managed automatically by F5 Distributed Cloud.\n As a prerequisite, the domain must be delegated to F5 Distributed Cloud using Delegated domain feature\n or a DNS CNAME record should be created in your DNS provider's portal.", + "title": "Manage DNS Domain", + "format": "boolean", + "x-displayname": "Automatically Manage DNS Records" + }, + "port": { + "type": "integer", + "description": "Exclusive with [port_ranges]\n HTTP port to Listen.\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "HTTP port to listen", + "format": "int64", + "x-displayname": "HTTP Listen Port", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "port_ranges": { + "type": "string", + "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", + "title": "Port_ranges", + "minLength": 1, + "maxLength": 512, + "x-displayname": "Port Ranges", + "x-ves-example": "80,443,8080-8191,9080", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true" + } + } + } + }, + "ioschemaEmpty": { + "type": "object", + "description": "This can be used for messages where no values are needed", + "title": "Empty", + "x-displayname": "Empty", + "x-ves-proto-message": "ves.io.schema.Empty" + }, + "ioschemaHeaderMatcherType": { + "type": "object", + "description": "Header match is done using the name of the header and its value.\nThe value match is done using one of the following\n regex match on value\n exact match of value\n presence of header\n\nHeader Match can also be inverse of above, which be used to check\n missing header or\n non-matching value", + "title": "HeaderMatcherType", + "x-displayname": "Header to Match", + "x-ves-oneof-field-value_match": "[\"exact\",\"presence\",\"regex\"]", + "x-ves-proto-message": "ves.io.schema.HeaderMatcherType", + "properties": { + "exact": { + "type": "string", + "description": "Exclusive with [presence regex]\n Header value to match exactly\n\nExample: - \"application/json\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n", + "title": "exact", + "maxLength": 256, + "x-displayname": "Exact", + "x-ves-example": "application/json", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true" + } + }, + "invert_match": { + "type": "boolean", + "description": " Invert the result of the match to detect missing header or non-matching value", + "title": "invert_match", + "format": "boolean", + "x-displayname": "NOT of match" + }, + "name": { + "type": "string", + "description": " Name of the header\n\nExample: - \"Content-Type\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_header_field: true\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Name", + "x-ves-example": "Content-Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "presence": { + "type": "boolean", + "description": "Exclusive with [exact regex]\n If true, check for presence of header", + "title": "presence", + "format": "boolean", + "x-displayname": "Presence" + }, + "regex": { + "type": "string", + "description": "Exclusive with [exact presence]\n Regex match of the header value in re2 format\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.not_empty: true\n ves.io.schema.rules.string.regex: true\n", + "title": "regex", + "maxLength": 256, + "x-displayname": "Regex", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.not_empty": "true", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "ioschemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "ioschemaPathMatcherType": { + "type": "object", + "description": "Path match of the URI can be either be, Prefix match or exact match or regular expression match", + "title": "PathMatcherType", + "x-displayname": "Path to Match", + "x-ves-displayorder": "4", + "x-ves-oneof-field-path_match": "[\"path\",\"prefix\",\"regex\"]", + "x-ves-proto-message": "ves.io.schema.PathMatcherType", + "properties": { + "path": { + "type": "string", + "description": "Exclusive with [prefix regex]\n Exact path value to match\n\nExample: - \"/logout\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "path", + "maxLength": 256, + "x-displayname": "Path", + "x-ves-example": "/logout", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "prefix": { + "type": "string", + "description": "Exclusive with [path regex]\n Path prefix to match (e.g. the value / will match on all paths)\n\nExample: - \"/register/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "prefix", + "maxLength": 256, + "x-displayname": "Prefix", + "x-ves-example": "/register/", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "regex": { + "type": "string", + "description": "Exclusive with [path prefix]\n Regular expression of path match (e.g. the value .* will match on all paths)\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.min_bytes: 1\n ves.io.schema.rules.string.regex: true\n", + "title": "regex", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Regex", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1", + "ves.io.schema.rules.string.regex": "true" + } + } + } + }, + "origin_poolOriginServerPublicIP": { + "type": "object", + "description": "Specify origin server with public IP address", + "title": "OriginServerPublicIP", + "x-displayname": "Public IP", + "x-ves-displayorder": "2", + "x-ves-oneof-field-public_ip_choice": "[\"ip\"]", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicIP", + "properties": { + "ip": { + "type": "string", + "description": "Exclusive with []\n Public IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP", + "x-displayname": "Public IPV4", + "x-ves-example": "8.8.8.8", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Public IPV6 address\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPV6", + "x-displayname": "Public IPV6", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + } + } + }, + "origin_poolOriginServerPublicName": { + "type": "object", + "description": "Specify origin server with public DNS name", + "title": "OriginServerPublicName", + "x-displayname": "Public DNS Name", + "x-ves-displayorder": "1,2", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPublicName", + "properties": { + "dns_name": { + "type": "string", + "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "DNS name", + "minLength": 1, + "maxLength": 256, + "x-displayname": "DNS Name", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "refresh_interval": { + "type": "integer", + "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", + "title": "refresh_interval", + "format": "int64", + "x-displayname": "DNS Refresh interval", + "x-ves-example": "20", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "604800" + } + } + } + }, + "origin_poolTlsCertificatesType": { + "type": "object", + "description": "mTLS Client Certificate", + "title": "TlsCertificatesType", + "x-displayname": "mTLS Certificate", + "x-ves-displayorder": "1", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.TlsCertificatesType", + "properties": { + "tls_certificates": { + "type": "array", + "description": " mTLS Client Certificate\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 1\n ves.io.schema.rules.repeated.min_items: 1\n", + "title": "mTLS certificate", + "minItems": 1, + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaTlsCertificateType" + }, + "x-displayname": "mTLS Client Certificate", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "1", + "ves.io.schema.rules.repeated.min_items": "1" + } + } + } + }, + "origin_poolUpstreamTlsParameters": { + "type": "object", + "description": "Upstream TLS Parameters", + "title": "UpstreamTlsParameters", + "x-displayname": "TLS Parameters for Origin Servers", + "x-ves-displayorder": "10,2,8,9", + "x-ves-oneof-field-mtls_choice": "[\"no_mtls\",\"use_mtls\",\"use_mtls_obj\"]", + "x-ves-oneof-field-server_validation_choice": "[\"skip_server_verification\",\"use_server_verification\",\"volterra_trusted_ca\"]", + "x-ves-oneof-field-sni_choice": "[\"disable_sni\",\"sni\",\"use_host_header_as_sni\"]", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsParameters", + "properties": { + "disable_sni": { + "description": "Exclusive with [sni use_host_header_as_sni]\n Do not use SNI.", + "title": "disable_sni", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "No SNI" + }, + "no_mtls": { + "description": "Exclusive with [use_mtls use_mtls_obj]\n", + "title": "No mTLS", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "skip_server_verification": { + "description": "Exclusive with [use_server_verification volterra_trusted_ca]\n Skip origin server verification", + "title": "Skip Server Verification", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip Verification" + }, + "sni": { + "type": "string", + "description": "Exclusive with [disable_sni use_host_header_as_sni]\n SNI value to be used.\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "sni", + "maxLength": 256, + "x-displayname": "SNI Value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "tls_config": { + "description": " TLS parameters such as min/max TLS version and ciphers\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "TLS Config", + "$ref": "#/definitions/viewsTlsConfig", + "x-displayname": "TLS Configuration for Origin Servers", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "use_host_header_as_sni": { + "description": "Exclusive with [disable_sni sni]\n Use the host header as SNI. The host header value is extracted after any configured rewrites have been applied.", + "title": "use_host_header_as_sni", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Host Header" + }, + "use_mtls": { + "description": "Exclusive with [no_mtls use_mtls_obj]\n", "title": "Inline Certificate (legacy)", "$ref": "#/definitions/origin_poolTlsCertificatesType", "x-displayname": "Upload a client authentication certificate specifically for this Origin Pool" }, - "use_mtls_obj": { - "description": "Exclusive with [no_mtls use_mtls]\n", - "title": "Root CA Certificate", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Select/add a TLS Certificate object for client authentication" + "use_mtls_obj": { + "description": "Exclusive with [no_mtls use_mtls]\n", + "title": "Root CA Certificate", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Select/add a TLS Certificate object for client authentication" + }, + "use_server_verification": { + "description": "Exclusive with [skip_server_verification volterra_trusted_ca]\n Perform origin server verification using the provided Root CA Certificate", + "title": "Use Server Verification", + "$ref": "#/definitions/origin_poolUpstreamTlsValidationContext", + "x-displayname": "Use Custom Root CA Certificate" + }, + "volterra_trusted_ca": { + "description": "Exclusive with [skip_server_verification use_server_verification]\n Perform origin server verification using F5XC Default Root CA Certificate", + "title": "F5XC Root CA", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Root CA Certificate" + } + } + }, + "origin_poolUpstreamTlsValidationContext": { + "type": "object", + "description": "Upstream TLS Validation Context", + "title": "UpstreamTlsValidationContext", + "x-displayname": "TLS Validation Context for Origin Servers", + "x-ves-oneof-field-trusted_ca_choice": "[\"trusted_ca\",\"trusted_ca_url\"]", + "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsValidationContext", + "properties": { + "trusted_ca": { + "description": "Exclusive with [trusted_ca_url]\n Select/Add a Root CA Certificate object to associate with this Origin Pool for verification of server's certificate", + "title": "trusted_ca", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Root CA Certificate" + }, + "trusted_ca_url": { + "type": "string", + "description": "Exclusive with [trusted_ca]\n Upload a Root CA Certificate specifically for this Origin Pool for verification of server's certificate\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 131072\n ves.io.schema.rules.string.min_bytes: 1\n ves.io.schema.rules.string.truststore_url: true\n", + "title": "trusted_ca_url", + "minLength": 1, + "maxLength": 131072, + "x-displayname": "Inline Root CA Certificate (legacy)", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "131072", + "ves.io.schema.rules.string.min_bytes": "1", + "ves.io.schema.rules.string.truststore_url": "true" + } + } + } + }, + "policyAppFirewallAttackTypeContext": { + "type": "object", + "description": "App Firewall Attack Type context changes to be applied for this request", + "title": "App Firewall Attack Type Context", + "x-displayname": "App Firewall Attack Type Context", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallAttackTypeContext", + "properties": { + "context": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Context", + "$ref": "#/definitions/policyDetectionContext", + "x-displayname": "Context", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "context_name": { + "type": "string", + "description": " Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check.\n\nExample: - \"exampleuser-agent for Header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Context Name", + "maxLength": 64, + "x-displayname": "Context Name", + "x-ves-example": "example: user-agent for Header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, + "exclude_attack_type": { + "description": "\nExample: - \"ATTACK_TYPE_SQL_INJECTION\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "AttackType", + "$ref": "#/definitions/app_firewallAttackType", + "x-displayname": "Attack Type", + "x-ves-example": "ATTACK_TYPE_SQL_INJECTION", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyAppFirewallDetectionControl": { + "type": "object", + "description": "Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.", + "title": "App Firewall Detection Control", + "x-displayname": "App Firewall Detection Control", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallDetectionControl", + "properties": { + "exclude_attack_type_contexts": { + "type": "array", + "description": " Attack Types to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Attack Types Contexts", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyAppFirewallAttackTypeContext" + }, + "x-displayname": "Attack Types", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "exclude_bot_name_contexts": { + "type": "array", + "description": " Bot Names to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Bot Names Contexts", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyBotNameContext" + }, + "x-displayname": "Bot Names", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "exclude_signature_contexts": { + "type": "array", + "description": " Signature IDs to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1024\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Signature Contexts", + "maxItems": 1024, + "items": { + "$ref": "#/definitions/policyAppFirewallSignatureContext" + }, + "x-displayname": "Signature IDs", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1024", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "exclude_violation_contexts": { + "type": "array", + "description": " Violations to be excluded for the defined match criteria\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Exclude Violation Contexts", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyAppFirewallViolationContext" + }, + "x-displayname": "Violations", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyAppFirewallSignatureContext": { + "type": "object", + "description": "App Firewall signature context changes to be applied for this request", + "title": "App Firewall Signature Context", + "x-displayname": "App Firewall Signature Context", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallSignatureContext", + "properties": { + "context": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Context", + "$ref": "#/definitions/policyDetectionContext", + "x-displayname": "Context", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "context_name": { + "type": "string", + "description": " Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check.\n\nExample: - \"exampleuser-agent for Header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Context Name", + "maxLength": 64, + "x-displayname": "Context Name", + "x-ves-example": "example: user-agent for Header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, + "signature_id": { + "type": "integer", + "description": " The allowed values for signature id are 0 and in the range of 200000001-299999999.\n 0 implies that all signatures will be excluded for the specified context.\n\nExample: - \"10000001\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 299999999\n", + "title": "SignatureID", + "format": "int64", + "x-displayname": "SignatureID", + "x-ves-example": "10000001", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "299999999" + } + } + } + }, + "policyAppFirewallViolationContext": { + "type": "object", + "description": "App Firewall violation context changes to be applied for this request", + "title": "App Firewall Violation Context", + "x-displayname": "App Firewall Violation Context", + "x-ves-proto-message": "ves.io.schema.policy.AppFirewallViolationContext", + "properties": { + "context": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Context", + "$ref": "#/definitions/policyDetectionContext", + "x-displayname": "Context", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "context_name": { + "type": "string", + "description": " Relevant only for contexts: Header, Cookie and Parameter. Name of the Context that the WAF Exclusion Rules will check.\n\nExample: - \"exampleuser-agent for Header\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 64\n", + "title": "Context Name", + "maxLength": 64, + "x-displayname": "Context Name", + "x-ves-example": "example: user-agent for Header", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "64" + } + }, + "exclude_violation": { + "description": "\nExample: - \"VIOL_MANDATORY_HEADER\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "ViolationType", + "$ref": "#/definitions/app_firewallAppFirewallViolationType", + "x-displayname": "Violation Type", + "x-ves-example": "VIOL_MANDATORY_HEADER", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyArgMatcherType": { + "type": "object", + "description": "A argument matcher specifies the name of a single argument in the body and the criteria to match it.\nA argument matcher can check for one of the following:\n* Presence or absence of the argument\n* At least one of the values for the argument in the request satisfies the MatcherType item", + "title": "ArgMatcherType", + "x-displayname": "Argument Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.ArgMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the argument is not present.", + "title": "check_not_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the argument is present.", + "title": "check_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert Match of the expression defined", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" }, - "use_server_verification": { - "description": "Exclusive with [skip_server_verification volterra_trusted_ca]\n Perform origin server verification using the provided Root CA Certificate", - "title": "Use Server Verification", - "$ref": "#/definitions/origin_poolUpstreamTlsValidationContext", - "x-displayname": "Use Custom Root CA Certificate" + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the Arg. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" }, - "volterra_trusted_ca": { - "description": "Exclusive with [skip_server_verification use_server_verification]\n Perform origin server verification using F5XC Default Root CA Certificate", - "title": "F5XC Root CA", + "name": { + "type": "string", + "description": " x-example: \"phones[_]\"\n x-example: \"cars.make.toyota.models[1]\"\n x-example: \"cars.make.honda.models[_]\"\n x-example: \"cars.make[_].models[_]\"\n A case-sensitive JSON path in the HTTP request body.\n\nExample: - \"name\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.json_path: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Argument Name", + "x-ves-example": "name", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.json_path": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyAsnMatchList": { + "type": "object", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", + "title": "Asn Match List", + "x-displayname": "ASN Match List", + "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", + "properties": { + "as_numbers": { + "type": "array", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "as numbers", + "minItems": 1, + "maxItems": 16, + "items": { + "type": "integer", + "format": "int64" + }, + "x-displayname": "AS Numbers", + "x-ves-example": "[713, 7932, 847325, 4683, 15269, 1000001]", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyAsnMatcherType": { + "type": "object", + "description": "Match any AS number contained in the list of bgp_asn_sets.", + "title": "asn matcher type", + "x-displayname": "ASN Matcher", + "x-ves-proto-message": "ves.io.schema.policy.AsnMatcherType", + "properties": { + "asn_sets": { + "type": "array", + "description": " A list of references to bgp_asn_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", + "title": "asn_sets", + "maxItems": 4, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "BGP ASN Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" + } + } + } + }, + "policyBotNameContext": { + "type": "object", + "description": "Specifies bot to be excluded by its name.", + "title": "Bot Name Context", + "x-displayname": "Bot Name", + "x-ves-proto-message": "ves.io.schema.policy.BotNameContext", + "properties": { + "bot_name": { + "type": "string", + "description": "\nExample: - \"Hydra\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "BotName", + "x-displayname": "Bot Name", + "x-ves-example": "Hydra", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyClientMatcher": { + "type": "object", + "description": "Client conditions for matching a rule", + "title": "Client Matcher", + "x-displayname": "Client Matcher", + "x-ves-oneof-field-client_choice": "[\"any_client\",\"client_selector\",\"ip_threat_category_list\"]", + "x-ves-oneof-field-ip_asn_choice": "[\"any_ip\",\"asn_list\",\"asn_matcher\",\"ip_matcher\",\"ip_prefix_list\"]", + "x-ves-proto-message": "ves.io.schema.policy.ClientMatcher", + "properties": { + "any_client": { + "description": "Exclusive with [client_selector ip_threat_category_list]\n Any Client", + "title": "any ip", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Use Default Root CA Certificate" + "x-displayname": "Any Client" + }, + "any_ip": { + "description": "Exclusive with [asn_list asn_matcher ip_matcher ip_prefix_list]\n Any Source IP", + "title": "any ip", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Source IP" + }, + "asn_list": { + "description": "Exclusive with [any_ip asn_matcher ip_matcher ip_prefix_list]\n List of 4-byte ASN values.\n The predicate evaluates to true if the origin ASN is present in the ASN list.", + "title": "asn list", + "$ref": "#/definitions/policyAsnMatchList", + "x-displayname": "ASN List" + }, + "asn_matcher": { + "description": "Exclusive with [any_ip asn_list ip_matcher ip_prefix_list]\n List of references to BGP ASN Set objects.\n The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.", + "title": "asn matcher", + "$ref": "#/definitions/policyAsnMatcherType", + "x-displayname": "BGP ASN Sets" + }, + "client_selector": { + "description": "Exclusive with [any_client ip_threat_category_list]\n A label selector that describes the expected set of clients. The labels associated with the client making the API request are used to evaluate the label\n expressions in the selector. These labels can be derived from the client TLS certificate or from the volterra internal control plane.\n This is a more flexible and powerful version of the client name matcher predicate that allows a given rule to be applicable to a set of clients based on the\n client labels rather than being limited to relying on patterns in the client name.\n The predicate evaluates to true if the expressions in the label selector are true for the client labels.", + "title": "client selector", + "$ref": "#/definitions/schemaLabelSelectorType", + "x-displayname": "Group of Clients by Label Selector" + }, + "ip_matcher": { + "description": "Exclusive with [any_ip asn_list asn_matcher ip_prefix_list]\n List of references to IP Prefix Set objects.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.", + "title": "ip matcher", + "$ref": "#/definitions/policyIpMatcherType", + "x-displayname": "IP Prefix Sets" + }, + "ip_prefix_list": { + "description": "Exclusive with [any_ip asn_list asn_matcher ip_matcher]\n List of IP Prefixes values.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.", + "title": "ip prefix list", + "$ref": "#/definitions/policyPrefixMatchList", + "x-displayname": "IP Prefix List" + }, + "ip_threat_category_list": { + "description": "Exclusive with [any_client client_selector]\n IP threat categories to choose from", + "title": "IP Threat Category List", + "$ref": "#/definitions/schemapolicyIPThreatCategoryListType", + "x-displayname": "List of IP Threat Categories" + }, + "tls_fingerprint_matcher": { + "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", + "title": "TLS JA3 fingerprint matcher", + "$ref": "#/definitions/policyTlsFingerprintMatcherType", + "x-displayname": "TLS Fingerprint Matcher" } } }, - "origin_poolUpstreamTlsValidationContext": { + "policyCookieMatcherType": { "type": "object", - "description": "Upstream TLS Validation Context", - "title": "UpstreamTlsValidationContext", - "x-displayname": "TLS Validation Context for Origin Servers", - "x-ves-oneof-field-trusted_ca_choice": "[\"trusted_ca\",\"trusted_ca_url\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.UpstreamTlsValidationContext", + "description": "A cookie matcher specifies the name of a single cookie and the criteria to match it. The input has a list of values for each\ncookie in the request.\nA cookie matcher can check for one of the following:\n* Presence or absence of the cookie\n* At least one of the values for the cookie in the request satisfies the MatcherType item", + "title": "CookieMatcherType", + "x-displayname": "Cookie Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.CookieMatcherType", "properties": { - "trusted_ca": { - "description": "Exclusive with [trusted_ca_url]\n Select/Add a Root CA Certificate object to associate with this Origin Pool for verification of server's certificate", - "title": "trusted_ca", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Root CA Certificate" + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the cookie is not present.", + "title": "check_not_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Not Present" }, - "trusted_ca_url": { + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the cookie is present.", + "title": "check_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert Match of the expression defined", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the cookie. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { "type": "string", - "description": "Exclusive with [trusted_ca]\n Upload a Root CA Certificate specifically for this Origin Pool for verification of server's certificate\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 131072\n ves.io.schema.rules.string.min_bytes: 1\n ves.io.schema.rules.string.truststore_url: true\n", - "title": "trusted_ca_url", - "minLength": 1, - "maxLength": 131072, - "x-displayname": "Inline Root CA Certificate (legacy)", + "description": " A case-sensitive cookie name.\n\nExample: - \"Session\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Cookie Name", + "x-ves-example": "Session", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_bytes": "131072", - "ves.io.schema.rules.string.min_bytes": "1", - "ves.io.schema.rules.string.truststore_url": "true" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" } } } @@ -4205,6 +7327,177 @@ var APISwaggerJSON string = `{ } } }, + "policyDetectionContext": { + "type": "string", + "description": "The available contexts for Exclusion rules.\n\n - CONTEXT_ANY: CONTEXT_ANY\n\nDetection will be excluded for all contexts.\n - CONTEXT_BODY: CONTEXT_BODY\n\nDetection will be excluded for the request body.\n - CONTEXT_REQUEST: CONTEXT_REQUEST\n\nDetection will be excluded for the request.\n - CONTEXT_RESPONSE: CONTEXT_RESPONSE\n\n - CONTEXT_PARAMETER: CONTEXT_PARAMETER\n\nDetection will be excluded for the parameters. The parameter name is required in the Context name field. If the field is left empty, the detection will be excluded for all parameters.\n - CONTEXT_HEADER: CONTEXT_HEADER\n\nDetection will be excluded for the headers. The header name is required in the Context name field. If the field is left empty, the detection will be excluded for all headers.\n - CONTEXT_COOKIE: CONTEXT_COOKIE\n\nDetection will be excluded for the cookies. The cookie name is required in the Context name field. If the field is left empty, the detection will be excluded for all cookies.\n - CONTEXT_URL: CONTEXT_URL\n\nDetection will be excluded for the request URL.\n - CONTEXT_URI: CONTEXT_URI\n", + "title": "Detection Context", + "enum": [ + "CONTEXT_ANY", + "CONTEXT_BODY", + "CONTEXT_REQUEST", + "CONTEXT_RESPONSE", + "CONTEXT_PARAMETER", + "CONTEXT_HEADER", + "CONTEXT_COOKIE", + "CONTEXT_URL", + "CONTEXT_URI" + ], + "default": "CONTEXT_ANY", + "x-displayname": "WAF Exclusion Context Options", + "x-ves-proto-enum": "ves.io.schema.policy.DetectionContext" + }, + "policyGraphQLRule": { + "type": "object", + "description": "This section defines various configuration options for GraphQL inspection.", + "title": "GraphQL Rule", + "x-displayname": "GraphQL", + "x-ves-displayorder": "1,2,6,8,7", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"exact_value\",\"suffix_value\"]", + "x-ves-oneof-field-method_choice": "[\"method_get\",\"method_post\"]", + "x-ves-proto-message": "ves.io.schema.policy.GraphQLRule", + "properties": { + "any_domain": { + "description": "Exclusive with [exact_value suffix_value]\n Enable GraphQL inspection for any domain", + "title": "Any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "exact_path": { + "type": "string", + "description": " Specifies the exact path to GraphQL endpoint. Default value is /graphql.\n\nExample: - \"/graphql\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Path", + "maxLength": 256, + "x-displayname": "Path", + "x-ves-example": "/graphql", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "exact_value": { + "type": "string", + "description": "Exclusive with [any_domain suffix_value]\n Exact domain name\n\nExample: - \"abc.zyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "exact value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "abc.zyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "graphql_settings": { + "description": " GraphQL configuration.", + "title": "GraphQL Settings", + "$ref": "#/definitions/policyGraphQLSettingsType", + "x-displayname": "GraphQL Settings" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "method_get": { + "description": "Exclusive with [method_post]\n", + "title": "Get", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "GET" + }, + "method_post": { + "description": "Exclusive with [method_get]\n", + "title": "Post", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "POST" + }, + "suffix_value": { + "type": "string", + "description": "Exclusive with [any_domain exact_value]\n Suffix of domain name e.g \"xyz.com\" will match \"*.xyz.com\" and \"xyz.com\"\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "suffix value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Suffix Value", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "policyGraphQLSettingsType": { + "type": "object", + "description": "GraphQL configuration.", + "title": "GraphQL Settings", + "x-displayname": "GraphQL Settings", + "x-ves-oneof-field-allow_introspection_queries_choice": "[\"disable_introspection\",\"enable_introspection\"]", + "x-ves-proto-message": "ves.io.schema.policy.GraphQLSettingsType", + "properties": { + "disable_introspection": { + "description": "Exclusive with [enable_introspection]\n Disable introspection queries for the load balancer.", + "title": "Disable Introspection Queries", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "enable_introspection": { + "description": "Exclusive with [disable_introspection]\n Enable introspection queries for the load balancer.", + "title": "Enable Introspection Queries", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable" + }, + "max_batched_queries": { + "type": "integer", + "description": " Specify maximum number of queries in a single batched request.\n\nExample: - \"10\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 20\n", + "title": "Max Batched Queries", + "format": "int64", + "x-displayname": "Maximum Batched Queries", + "x-ves-example": "10", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "20" + } + }, + "max_depth": { + "type": "integer", + "description": " Specify maximum depth for the GraphQL query.\n\nExample: - \"10\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 20\n", + "title": "Max Depth", + "format": "int64", + "x-displayname": "Maximum Structure Depth", + "x-ves-example": "10", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "20" + } + }, + "max_total_length": { + "type": "integer", + "description": " Specify maximum length in bytes for the GraphQL query.\n\nExample: - \"5000\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 16386\n", + "title": "Max Total Length", + "format": "int64", + "x-displayname": "Maximum Total Length", + "x-ves-example": "5000", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "16386" + } + } + } + }, "policyHttpCookieName": { "type": "object", "description": "Specifies the name of the cookie field", @@ -4244,26 +7537,160 @@ var APISwaggerJSON string = `{ "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_header_field": "true", - "ves.io.schema.rules.string.max_bytes": "256" + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyHttpMethodMatcherType": { + "type": "object", + "description": "A http method matcher specifies a list of methods to match an input HTTP method. The match is considered successful if the input method is a member of the list.\nThe result of the match based on the method list is inverted if invert_matcher is true.", + "title": "HttpMethodMatcherType", + "x-displayname": "HTTP Method Matcher", + "x-ves-proto-message": "ves.io.schema.policy.HttpMethodMatcherType", + "properties": { + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Method Matcher" + }, + "methods": { + "type": "array", + "description": " List of methods values to match against.\n\nExample: - \"['GET', 'POST', 'DELETE']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Method List", + "x-ves-example": "['GET', 'POST', 'DELETE']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyHttpQueryParameterName": { + "type": "object", + "description": "Specifies the key name of the query parameter", + "title": "HttpQueryParameterName", + "x-displayname": "Key name of the query parameter", + "x-ves-proto-message": "ves.io.schema.policy.HttpQueryParameterName", + "properties": { + "key": { + "type": "string", + "description": " A case-sensitive HTTP query parameter name.\n\nExample: - \"sourceid\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "key", + "maxLength": 256, + "x-displayname": "Query Parameter Name", + "x-ves-example": "sourceid", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "policyIPThreatCategory": { + "type": "string", + "description": "The IP threat categories to use when a policy based IP threat category is configured.\n\n - SPAM_SOURCES: SPAM_SOURCES\n\n - WINDOWS_EXPLOITS: WINDOWS_EXPLOITS\n\n - WEB_ATTACKS: WEB_ATTACKS\n\n - BOTNETS: BOTNETS\n\n - SCANNERS: SCANNERS\n\n - REPUTATION: REPUTATION\n\n - PHISHING: PHISHING\n\n - PROXY: PROXY\n\n - MOBILE_THREATS: MOBILE_THREATS\n\n - TOR_PROXY: TOR_PROXY\n\n - DENIAL_OF_SERVICE: DENIAL_OF_SERVICE\n\n - NETWORK: NETWORK\n", + "title": "IP Threat Category", + "enum": [ + "SPAM_SOURCES", + "WINDOWS_EXPLOITS", + "WEB_ATTACKS", + "BOTNETS", + "SCANNERS", + "REPUTATION", + "PHISHING", + "PROXY", + "MOBILE_THREATS", + "TOR_PROXY", + "DENIAL_OF_SERVICE", + "NETWORK" + ], + "default": "SPAM_SOURCES", + "x-displayname": "IP Threat Category", + "x-ves-proto-enum": "ves.io.schema.policy.IPThreatCategory" + }, + "policyIpMatcherType": { + "type": "object", + "description": "Match any ip prefix contained in the list of ip_prefix_sets.\nThe result of the match is inverted if invert_matcher is true.", + "title": "ip matcher type", + "x-displayname": "IP Prefix Matcher", + "x-ves-proto-message": "ves.io.schema.policy.IpMatcherType", + "properties": { + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert IP Matcher" + }, + "prefix_sets": { + "type": "array", + "description": " A list of references to ip_prefix_set objects.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 4\n", + "title": "prefix_sets", + "maxItems": 4, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "IP Prefix Sets", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4" } } } }, - "policyHttpQueryParameterName": { + "policyJWTClaimMatcherType": { "type": "object", - "description": "Specifies the key name of the query parameter", - "title": "HttpQueryParameterName", - "x-displayname": "Key name of the query parameter", - "x-ves-proto-message": "ves.io.schema.policy.HttpQueryParameterName", + "description": "A JWT claim matcher specifies the name of a single JWT claim and the criteria for the input request to match it.\nThe input has a list of actual values for each JWT claim name in the JWT payload.\nA JWT claim matcher can check for one of the following:\n* Presence or absence of the JWT Claim in the input\n* At least one of the values for the JWT Claim in the input satisfies the MatcherType item", + "title": "JWTClaimMatcherType", + "x-displayname": "JWT Claim Matcher", + "x-ves-displayorder": "1,2,6", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.JWTClaimMatcherType", "properties": { - "key": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the JWT Claim is not present.", + "title": "check_not_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the JWT Claim is present.", + "title": "check_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the JWT Claim. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { "type": "string", - "description": " A case-sensitive HTTP query parameter name.\n\nExample: - \"sourceid\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", - "title": "key", + "description": " JWT claim name.\n\nExample: - \"user_id\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", "maxLength": 256, - "x-displayname": "Query Parameter Name", - "x-ves-example": "sourceid", + "x-displayname": "JWT Claim Name", + "x-ves-example": "user_id", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", @@ -4306,75 +7733,544 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/policyHttpHeaderName", "x-displayname": "Header" }, - "query_param": { - "description": "Exclusive with [bearer_token cookie header]\n Token is found in the Query-Param", - "title": "Query-Param", - "$ref": "#/definitions/policyHttpQueryParameterName", - "x-displayname": "Query-Param" + "query_param": { + "description": "Exclusive with [bearer_token cookie header]\n Token is found in the Query-Param", + "title": "Query-Param", + "$ref": "#/definitions/policyHttpQueryParameterName", + "x-displayname": "Query-Param" + }, + "secret_key": { + "description": " Secret Key for JWT\n\nExample: - \"{!\u003c=,d_]b[UFX78T\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "secret_key", + "$ref": "#/definitions/schemaSecretType", + "x-displayname": "Secret Key", + "x-ves-example": "{!\u003c=,d_]b[UFX78T", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "policyKnownTlsFingerprintClass": { + "type": "string", + "description": "Specifies known TLS fingerprint classes\n\n - TLS_FINGERPRINT_NONE: TLS_FINGERPRINT_NONE\n\nNo TLS fingerprint\n - ANY_MALICIOUS_FINGERPRINT: ANY_MALICIOUS_FINGERPRINT\n\nTLS fingerprints known to be associated with malicious clients\n - ADWARE: ADWARE\n\nTLS fingerprints known to be associated with adware\n - ADWIND: ADWIND\n\nTLS fingerprints known to be associated with adwind\n - DRIDEX: DRIDEX\n\nTLS fingerprints known to be associated with dridex\n - GOOTKIT: GOOTKIT\n\nTLS fingerprints known to be associated with gootkit\n - GOZI: GOZI\n\nTLS fingerprints known to be associated with gozi\n - JBIFROST: JBIFROST\n\nTLS fingerprints known to be associated with jbifrost\n - QUAKBOT: QUAKBOT\n\nTLS fingerprints known to be associated with quakbot\n - RANSOMWARE: RANSOMWARE\n\nTLS fingerprints known to be associated with ransomware\n - TROLDESH: TROLDESH\n\nTLS fingerprints known to be associated with troldesh\n - TOFSEE: TOFSEE\n\nTLS fingerprints known to be associated with tofsee\n - TORRENTLOCKER: TORRENTLOCKER\n\nTLS fingerprints known to be associated with torrentlocker\n - TRICKBOT: TRICKBOT\n\nTLS fingerprints known to be associated with trickbot", + "title": "TLS known fingerprint class", + "enum": [ + "TLS_FINGERPRINT_NONE", + "ANY_MALICIOUS_FINGERPRINT", + "ADWARE", + "ADWIND", + "DRIDEX", + "GOOTKIT", + "GOZI", + "JBIFROST", + "QUAKBOT", + "RANSOMWARE", + "TROLDESH", + "TOFSEE", + "TORRENTLOCKER", + "TRICKBOT" + ], + "default": "TLS_FINGERPRINT_NONE", + "x-displayname": "TLS known fingerprint class", + "x-ves-proto-enum": "ves.io.schema.policy.KnownTlsFingerprintClass" + }, + "policyMatcherType": { + "type": "object", + "description": "A matcher specifies multiple criteria for matching an input string. The match is considered successful if any of the criteria are satisfied. The set\nof supported match criteria includes a list of exact values and a list of regular expressions.", + "title": "MatcherType", + "x-displayname": "Matcher", + "x-ves-proto-message": "ves.io.schema.policy.MatcherType", + "properties": { + "exact_values": { + "type": "array", + "description": " A list of exact values to match the input against.\n\nExample: - \"['new york', 'london', 'sydney', 'tokyo', 'cairo']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 64, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Exact Values", + "x-ves-example": "['new york', 'london', 'sydney', 'tokyo', 'cairo']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "regex_values": { + "type": "array", + "description": " A list of regular expressions to match the input against.\n\nExample: - \"['^new .*$', 'san f.*', '.* del .*']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "regex values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Regex Values", + "x-ves-example": "['^new .*$', 'san f.*', '.* del .*']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "transformers": { + "type": "array", + "description": " An ordered list of transformers (starting from index 0) to be applied to the path before matching.\n\nExample: - \"[BASE64_DECODE, LOWER_CASE]-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 9\n ves.io.schema.rules.repeated.unique: true\n", + "title": "transformers", + "maxItems": 9, + "items": { + "$ref": "#/definitions/policyTransformer" + }, + "x-displayname": "Transformers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "9", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyMatcherTypeBasic": { + "type": "object", + "description": "A matcher specifies multiple criteria for matching an input string. The match is considered successful if any of the criteria are satisfied. The set\nof supported match criteria includes a list of exact values and a list of regular expressions.", + "title": "MatcherTypeBasic", + "x-displayname": "Matcher", + "x-ves-proto-message": "ves.io.schema.policy.MatcherTypeBasic", + "properties": { + "exact_values": { + "type": "array", + "description": " A list of exact values to match the input against.\n\nExample: - \"['new york', 'london', 'sydney', 'tokyo', 'cairo']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 64, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Exact Values", + "x-ves-example": "['new york', 'london', 'sydney', 'tokyo', 'cairo']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "regex_values": { + "type": "array", + "description": " A list of regular expressions to match the input against.\n\nExample: - \"['^new .*$', 'san f.*', '.* del .*']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "regex values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Regex Values", + "x-ves-example": "['^new .*$', 'san f.*', '.* del .*']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyPrefixMatchList": { + "type": "object", + "description": "List of IP Prefix strings to match against.", + "title": "IP Prefix Match List", + "x-displayname": "IP Prefix Match List", + "x-ves-proto-message": "ves.io.schema.policy.PrefixMatchList", + "properties": { + "invert_match": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Match Result" + }, + "ip_prefixes": { + "type": "array", + "description": " List of IPv4 prefix strings.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ip prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Prefix List", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "ipv6_prefixes": { + "type": "array", + "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv6 prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Prefix List", + "x-ves-example": "fd48:fa09:d9d4::/48", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "policyRequestMatcher": { + "type": "object", + "description": "Request conditions for matching a rule", + "title": "Request Matcher", + "x-displayname": "Request Matcher", + "x-ves-proto-message": "ves.io.schema.policy.RequestMatcher", + "properties": { + "cookie_matchers": { + "type": "array", + "description": " A list of predicates for all cookies that need to be matched. The criteria for matching each cookie is described in individual instances\n of CookieMatcherType. The actual cookie values are extracted from the request API as a list of strings for each cookie name.\n Note that all specified cookie matcher predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "cookie matchers", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyCookieMatcherType" + }, + "x-displayname": "Cookie Matchers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "headers": { + "type": "array", + "description": " A list of predicates for various HTTP headers that need to match. The criteria for matching each HTTP header are described in individual HeaderMatcherType\n instances. The actual HTTP header values are extracted from the request API as a list of strings for each HTTP header type.\n Note that all specified header predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "headers", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyHeaderMatcherType" + }, + "x-displayname": "HTTP Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "jwt_claims": { + "type": "array", + "description": " A list of predicates for various JWT claims that need to match. The criteria for matching each JWT claim are described in individual JWTClaimMatcherType\n instances. The actual JWT claims values are extracted from the JWT payload as a list of strings.\n Note that all specified JWT claim predicates must evaluate to true.\n Note that this feature only works on LBs with JWT Validation feature enabled.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "JWT claims", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyJWTClaimMatcherType" + }, + "x-displayname": "JWT Claims", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "query_params": { + "type": "array", + "description": " A list of predicates for all query parameters that need to be matched. The criteria for matching each query parameter are described in individual instances\n of QueryParameterMatcherType. The actual query parameter values are extracted from the request API as a list of strings for each query parameter name.\n Note that all specified query parameter predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "query params", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyQueryParameterMatcherType" + }, + "x-displayname": "HTTP Query Parameters", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + } + } + }, + "policySimpleDataGuardRule": { + "type": "object", + "description": "Simple Data Guard rule specifies a simple set of match conditions to enable data guard protection", + "title": "SimpleDataGuardRule", + "x-displayname": "Data Guard Rule Specification (Data Leakage Protection)", + "x-ves-displayorder": "10,14,3,6", + "x-ves-oneof-field-action_choice": "[\"apply_data_guard\",\"skip_data_guard\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"exact_value\",\"suffix_value\"]", + "x-ves-proto-message": "ves.io.schema.policy.SimpleDataGuardRule", + "properties": { + "any_domain": { + "description": "Exclusive with [exact_value suffix_value]\n Enable Data Guard for any domain", + "title": "Any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "apply_data_guard": { + "description": "Exclusive with [skip_data_guard]\n", + "title": "apply_data_guard", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Apply" + }, + "exact_value": { + "type": "string", + "description": "Exclusive with [any_domain suffix_value]\n Exact domain name\n\nExample: - \"abc.zyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "exact value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "abc.zyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "path": { + "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "skip_data_guard": { + "description": "Exclusive with [apply_data_guard]\n", + "title": "skip_data_guard", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip" + }, + "suffix_value": { + "type": "string", + "description": "Exclusive with [any_domain exact_value]\n Suffix of domain name e.g \"xyz.com\" will match \"*.xyz.com\" and \"xyz.com\"\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "suffix value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Suffix Value", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + } + } + }, + "policySimpleWafExclusionRule": { + "type": "object", + "description": "Simple WAF exclusion rule specifies a simple set of match conditions to be matched to skip a list of WAF detections", + "title": "SimpleWafExclusionRule", + "x-displayname": "WAF Exclusion Rule", + "x-ves-displayorder": "10,3,16,7,14,9", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"exact_value\",\"suffix_value\"]", + "x-ves-oneof-field-path_choice": "[\"any_path\",\"path_prefix\",\"path_regex\"]", + "x-ves-oneof-field-waf_advanced_configuration": "[\"app_firewall_detection_control\",\"waf_skip_processing\"]", + "x-ves-proto-message": "ves.io.schema.policy.SimpleWafExclusionRule", + "properties": { + "any_domain": { + "description": "Exclusive with [exact_value suffix_value]\n Apply this WAF exclusion rule for any domain", + "title": "Any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "any_path": { + "description": "Exclusive with [path_prefix path_regex]\n Match all paths", + "title": "Any path", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Path" + }, + "app_firewall_detection_control": { + "description": "Exclusive with [waf_skip_processing]\n Define the list of Signature IDs, Violations, Attack Types and Bot Names that should be excluded from triggering on the defined match criteria.\n\nValidation Rules:\n ves.io.schema.rules.message.required_one_nonzero_field: true\n", + "title": "App Firewall Detection control", + "$ref": "#/definitions/policyAppFirewallDetectionControl", + "x-displayname": "App Firewall Detection Control", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required_one_nonzero_field": "true" + } + }, + "exact_value": { + "type": "string", + "description": "Exclusive with [any_domain suffix_value]\n Exact domain name\n\nExample: - \"abc.zyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "exact value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Exact Value", + "x-ves-example": "abc.zyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z" }, - "secret_key": { - "description": " Secret Key for JWT\n\nExample: - \"{!\u003c=,d_]b[UFX78T\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "secret_key", - "$ref": "#/definitions/schemaSecretType", - "x-displayname": "Secret Key", - "x-ves-example": "{!\u003c=,d_]b[UFX78T", + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" } + }, + "methods": { + "type": "array", + "description": " methods to be matched\n\nExample: - \"GET\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Methods", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaHttpMethod" + }, + "x-displayname": "Methods", + "x-ves-example": "GET", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "path_prefix": { + "type": "string", + "description": "Exclusive with [any_path path_regex]\n Path prefix to match (e.g. the value / will match on all paths)\n\nExample: - \"/register/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "prefix", + "maxLength": 256, + "x-displayname": "Prefix", + "x-ves-example": "/register/", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "path_regex": { + "type": "string", + "description": "Exclusive with [any_path path_prefix]\n Define the regex for the path. For example, the regex ^/.*$ will match on all paths\n\nExample: - \"/blog_id/.*\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 256\n ves.io.schema.rules.string.regex: true\n", + "title": "Path Regex", + "maxLength": 256, + "x-displayname": "Path Regex", + "x-ves-example": "/blog_id/.*", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.regex": "true" + } + }, + "suffix_value": { + "type": "string", + "description": "Exclusive with [any_domain exact_value]\n Suffix of domain name e.g \"xyz.com\" will match \"*.xyz.com\" and \"xyz.com\"\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n", + "title": "suffix value", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Suffix Value", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.hostname": "true", + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1" + } + }, + "waf_skip_processing": { + "description": "Exclusive with [app_firewall_detection_control]\n Skip all App Firewall processing for this request", + "title": "Skip App Firewall Processing", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip App Firewall Processing" } } }, - "policyPrefixMatchList": { + "policyTlsFingerprintMatcherType": { "type": "object", - "description": "List of IP Prefix strings to match against.", - "title": "IP Prefix Match List", - "x-displayname": "IP Prefix Match List", - "x-ves-proto-message": "ves.io.schema.policy.PrefixMatchList", + "description": "A TLS fingerprint matcher specifies multiple criteria for matching a TLS fingerprint. The set of supported positve match criteria includes a list of known\nclasses of TLS fingerprints and a list of exact values. The match is considered successful if either of these positive criteria are satisfied and the input\nfingerprint is not one of the excluded values.", + "title": "TlsFingerprintMatcherType", + "x-displayname": "TLS Fingerprint Matcher", + "x-ves-proto-message": "ves.io.schema.policy.TlsFingerprintMatcherType", "properties": { - "invert_match": { - "type": "boolean", - "description": " Invert the match result.", - "title": "invert_matcher", - "format": "boolean", - "x-displayname": "Invert Match Result" + "classes": { + "type": "array", + "description": " A list of known classes of TLS fingerprints to match the input TLS JA3 fingerprint against.\n\nExample: - \"['ADWARE', 'TRICKBOT']-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "classes", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyKnownTlsFingerprintClass" + }, + "x-displayname": "TLS fingerprint classes", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } }, - "ip_prefixes": { + "exact_values": { "type": "array", - "description": " List of IPv4 prefix strings.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "ip prefixes", - "maxItems": 128, + "description": " A list of exact TLS JA3 fingerprints to match the input TLS JA3 fingerprint against.\n\nExample: - \"['ed6dfd54b01ebe31b7a65b88abfa7297', '16efcf0e00504ddfedde13bfea997952', 'de364c46b0dfc283b5e38c79ceae3f8f']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.len: 32\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 16, "items": { "type": "string" }, - "x-displayname": "IPv4 Prefix List", - "x-ves-example": "192.168.20.0/24", + "x-displayname": "Exact Values", + "x-ves-example": "['ed6dfd54b01ebe31b7a65b88abfa7297', '16efcf0e00504ddfedde13bfea997952', 'de364c46b0dfc283b5e38c79ceae3f8f']", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", - "ves.io.schema.rules.repeated.items.string.not_empty": "true", - "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.items.string.len": "32", + "ves.io.schema.rules.repeated.max_items": "16", "ves.io.schema.rules.repeated.unique": "true" } }, - "ipv6_prefixes": { + "excluded_values": { "type": "array", - "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "ipv6 prefixes", - "maxItems": 128, + "description": " A list of TLS JA3 fingerprints to be excluded when matching the input TLS JA3 fingerprint. This can be used to skip known false positives when using one\n or more known TLS fingerprint classes in the enclosing matcher.\n\nExample: - \"['fb00055a1196aeea8d1bc609885ba953', 'b386946a5a44d1ddcc843bc75336dfce']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.len: 32\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "excluded values", + "maxItems": 32, "items": { "type": "string" }, - "x-displayname": "IPv6 Prefix List", - "x-ves-example": "fd48:fa09:d9d4::/48", + "x-displayname": "Excluded Values", + "x-ves-example": "['fb00055a1196aeea8d1bc609885ba953', 'b386946a5a44d1ddcc843bc75336dfce']", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", - "ves.io.schema.rules.repeated.items.string.not_empty": "true", - "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.items.string.len": "32", + "ves.io.schema.rules.repeated.max_items": "32", "ves.io.schema.rules.repeated.unique": "true" } } } }, + "policyTransformer": { + "type": "string", + "description": "Transformers to be applied on the part of the request before matching.\n\n - TRANSFORMER_NONE: transformer none\n\nNo transformers enabled\n - LOWER_CASE: lower case\n\nConvert string to lower case\n - UPPER_CASE: upper case\n\nConvert string to upper case\n - BASE64_DECODE: base64 decode\n\nDecode string assuming base64 encoding\n - NORMALIZE_PATH: normalize path\n\nNormalize URL path so that /a/b/../c will be transformed to /a/c\n - REMOVE_WHITESPACE: remove whitespace\n\nRemove whitespaces\n - URL_DECODE: URL decode\n\nDecode string assuming URL encoding as per rfc1738\n - TRIM_LEFT: trim left\n\nRemove whitespace from the left side of the input string\n - TRIM_RIGHT: trim right\n\nRemove whitespace from the right side of the input string\n - TRIM: trim\n\nRemove whitespace from the both sides of the input string", + "title": "Transformer", + "enum": [ + "LOWER_CASE", + "UPPER_CASE", + "BASE64_DECODE", + "NORMALIZE_PATH", + "REMOVE_WHITESPACE", + "URL_DECODE", + "TRIM_LEFT", + "TRIM_RIGHT", + "TRIM" + ], + "default": "TRANSFORMER_NONE", + "x-displayname": "Transformer", + "x-ves-proto-enum": "ves.io.schema.policy.Transformer" + }, "protobufAny": { "type": "object", "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", @@ -4390,6 +8286,110 @@ var APISwaggerJSON string = `{ } } }, + "rate_limiterRateLimitPeriodUnit": { + "type": "string", + "description": "Unit for the period per which the rate limit is applied.\n\n - SECOND: Second\n\nRate limit period is 1 second\n - MINUTE: Minute\n\nRate limit period is 1 minute\n - HOUR: Hour\n\nRate limit period is 1 hour\n - DAY: Day\n\nRate limit period is 1 day", + "title": "RateLimitPeriodUnit", + "enum": [ + "SECOND", + "MINUTE", + "HOUR" + ], + "default": "SECOND", + "x-displayname": "Rate Limit Period Unit", + "x-ves-proto-enum": "ves.io.schema.rate_limiter.RateLimitPeriodUnit" + }, + "rate_limiterRateLimitValue": { + "type": "object", + "description": "A tuple consisting of a rate limit period unit and the total number of allowed requests for that period.", + "title": "RateLimitValue", + "x-displayname": "Rate Limit Value", + "x-ves-displayorder": "2,1,3", + "x-ves-proto-message": "ves.io.schema.rate_limiter.RateLimitValue", + "properties": { + "burst_multiplier": { + "type": "integer", + "description": " The maximum burst of requests to accommodate, expressed as a multiple of the rate.\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 100\n", + "title": "burst_multiplier", + "format": "int64", + "x-displayname": "Burst Multiplier", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "100" + } + }, + "total_number": { + "type": "integer", + "description": " The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 8192\n", + "title": "total_number", + "format": "int64", + "x-displayname": "Number", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "8192" + } + }, + "unit": { + "description": " Unit for the period per which the rate limit is applied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "unit", + "$ref": "#/definitions/rate_limiterRateLimitPeriodUnit", + "x-displayname": "Per Period", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "rate_limiter_policyPolicyList": { + "type": "object", + "description": "List of rate limiter policies to be applied.", + "title": "Rate Limiter Policy List", + "x-displayname": "Rate Limiter Policy List", + "x-ves-proto-message": "ves.io.schema.views.rate_limiter_policy.PolicyList", + "properties": { + "policies": { + "type": "array", + "description": " Ordered list of rate limiter policies.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 64\n", + "title": "Rate Limiter Policies", + "maxItems": 64, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Rate Limiter Policies", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "64" + } + } + } + }, + "schemaAction": { + "type": "object", + "title": "action", + "x-displayname": "Action", + "x-ves-oneof-field-action_choice": "[\"block\",\"report\"]", + "x-ves-proto-message": "ves.io.schema.Action", + "properties": { + "block": { + "description": "Exclusive with [report]\n Block the request and report the issue", + "title": "block", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Block" + }, + "report": { + "description": "Exclusive with [block]\n Allow the request and report the issue", + "title": "report", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Report" + } + } + }, "schemaBlindfoldSecretInfoType": { "type": "object", "description": "BlindfoldSecretInfoType specifies information about the Secret managed by F5XC Secret Management", @@ -4490,24 +8490,289 @@ var APISwaggerJSON string = `{ "title": "service name", "x-displayname": "Service Name" }, - "status": { + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaCookieManipulationOptionType": { + "type": "object", + "description": "Set Cookie protection attributes.", + "title": "CookieManipulationOptionType", + "x-displayname": "Cookie Protection", + "x-ves-oneof-field-cookie_tampering": "[\"disable_tampering_protection\",\"enable_tampering_protection\"]", + "x-ves-oneof-field-httponly": "[\"add_httponly\",\"ignore_httponly\"]", + "x-ves-oneof-field-max_age": "[\"ignore_max_age\",\"max_age_value\"]", + "x-ves-oneof-field-samesite": "[\"ignore_samesite\",\"samesite_lax\",\"samesite_none\",\"samesite_strict\"]", + "x-ves-oneof-field-secure": "[\"add_secure\",\"ignore_secure\"]", + "x-ves-proto-message": "ves.io.schema.CookieManipulationOptionType", + "properties": { + "add_httponly": { + "description": "Exclusive with [ignore_httponly]\n", + "title": "add_httponly", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Add" + }, + "add_secure": { + "description": "Exclusive with [ignore_secure]\n", + "title": "add_secure", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Add" + }, + "disable_tampering_protection": { + "description": "Exclusive with [enable_tampering_protection]\n", + "title": "disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "enable_tampering_protection": { + "description": "Exclusive with [disable_tampering_protection]\n", + "title": "enable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable" + }, + "ignore_httponly": { + "description": "Exclusive with [add_httponly]\n", + "title": "ignore_httponly", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Ignore" + }, + "ignore_max_age": { + "description": "Exclusive with [max_age_value]\n Ignore max age attribute", + "title": "ignore_max_age", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Ignore Max Age" + }, + "ignore_samesite": { + "description": "Exclusive with [samesite_lax samesite_none samesite_strict]\n Ignore Samesite attribute", + "title": "ignore_samesite", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Ignore" + }, + "ignore_secure": { + "description": "Exclusive with [add_secure]\n", + "title": "ignore_secure", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Ignore" + }, + "max_age_value": { + "type": "integer", + "description": "Exclusive with [ignore_max_age]\n Add max age attribute\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 34560000\n", + "title": "add_max_age", + "format": "int32", + "x-displayname": "Add Max Age", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "34560000" + } + }, + "name": { + "type": "string", + "description": " Name of the Cookie\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.cookie_name: true\n ves.io.schema.rules.string.max_len: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Cookie Name", + "x-ves-example": "value", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.cookie_name": "true", + "ves.io.schema.rules.string.max_len": "256" + } + }, + "samesite_lax": { + "description": "Exclusive with [ignore_samesite samesite_none samesite_strict]\n Add Samesite attribute with Lax. Means that the cookie is not sent on cross-site requests", + "title": "lax", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Lax" + }, + "samesite_none": { + "description": "Exclusive with [ignore_samesite samesite_lax samesite_strict]\n Add Samesite attribute with None. Means that the browser sends the cookie with both cross-site and same-site requests", + "title": "none", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "None" + }, + "samesite_strict": { + "description": "Exclusive with [ignore_samesite samesite_lax samesite_none]\n Add Samesite attribute with Strict. Means that the browser sends the cookie only for same-site requests", + "title": "strict", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Strict" + } + } + }, + "schemaCorsPolicy": { + "type": "object", + "description": "Cross-Origin Resource Sharing requests configuration specified at Virtual-host or\nRoute level. Route level configuration takes precedence.\n\nAn example of an Cross origin HTTP request\n GET /resources/public-data/ HTTP/1.1\n Host: bar.other\n User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Minefield/3.1b3pre\n Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\n Accept-Language: en-us,en;q=0.5\n Accept-Encoding: gzip,deflate\n Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\n Connection: keep-alive\n Referrer: http://foo.example/examples/access-control/simpleXSInvocation.html\n Origin: http://foo.example\n\n\n HTTP/1.1 200 OK\n Date: Mon, 01 Dec 2008 00:23:53 GMT\n Server: Apache/2.0.61\n Access-Control-Allow-Origin: *\n Keep-Alive: timeout=2, max=100\n Connection: Keep-Alive\n Transfer-Encoding: chunked\n Content-Type: application/xml\n\nAn example for cross origin HTTP OPTIONS request with Access-Control-Request-* header\n\n OPTIONS /resources/post-here/ HTTP/1.1\n Host: bar.other\n User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Minefield/3.1b3pre\n Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\n Accept-Language: en-us,en;q=0.5\n Accept-Encoding: gzip,deflate\n Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\n Connection: keep-alive\n Origin: http://foo.example\n Access-Control-Request-Method: POST\n Access-Control-Request-Headers: X-PINGOTHER, Content-Type\n\n\n HTTP/1.1 204 No Content\n Date: Mon, 01 Dec 2008 01:15:39 GMT\n Server: Apache/2.0.61 (Unix)\n Access-Control-Allow-Origin: http://foo.example\n Access-Control-Allow-Methods: POST, GET, OPTIONS\n Access-Control-Allow-Headers: X-PINGOTHER, Content-Type\n Access-Control-Max-Age: 86400\n Vary: Accept-Encoding, Origin\n Keep-Alive: timeout=2, max=100\n Connection: Keep-Alive", + "title": "CorsPolicy", + "x-displayname": "CORS Policy", + "x-ves-displayorder": "2,3,4,5,6,9,8,1", + "x-ves-proto-message": "ves.io.schema.CorsPolicy", + "properties": { + "allow_credentials": { + "type": "boolean", + "description": " Specifies whether the resource allows credentials", + "title": "allow_credentials", + "format": "boolean", + "x-displayname": "Allow Credentials" + }, + "allow_headers": { + "type": "string", + "description": " Specifies the content for the access-control-allow-headers header\n\nExample: - \"value\"-", + "title": "allow_headers", + "x-displayname": "Allow Headers", + "x-ves-example": "value" + }, + "allow_methods": { + "type": "string", + "description": " Specifies the content for the access-control-allow-methods header\n\nExample: - \"GET\"-\n\nValidation Rules:\n ves.io.schema.rules.string.http_valid_methods: true\n", + "title": "allow_methods", + "x-displayname": "Allow Methods", + "x-ves-example": "GET", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.http_valid_methods": "true" + } + }, + "allow_origin": { + "type": "array", + "description": " Specifies the origins that will be allowed to do CORS requests.\n An origin is allowed if either allow_origin or allow_origin_regex match\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_len: 256\n ves.io.schema.rules.repeated.items.string.min_len: 1\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "allow_origin", + "maxItems": 128, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Allow Origin", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "allow_origin_regex": { + "type": "array", + "description": " Specifies regex patterns that match allowed origins.\n An origin is allowed if either allow_origin or allow_origin_regex match\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "allow_origin_regex", + "maxItems": 16, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Allow Origin Regex", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "disabled": { + "type": "boolean", + "description": " Disable the CorsPolicy for a particular route. This is useful when\n virtual-host has CorsPolicy, but we need to disable it on a specific route.\n The value of this field is ignored for virtual-host", + "title": "disabled", + "format": "boolean", + "x-displayname": "Disabled" + }, + "expose_headers": { "type": "string", - "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", - "title": "status", - "x-displayname": "Status", - "x-ves-example": "Failed", + "description": " Specifies the content for the access-control-expose-headers header\n\nExample: - \"value\"-", + "title": "expose_headers", + "x-displayname": "Expose Headers", + "x-ves-example": "value" + }, + "maximum_age": { + "type": "integer", + "description": " Specifies the content for the access-control-max-age header in seconds.\n This indicates the maximum number of seconds the results can be cached\n A value of -1 will disable caching.\n Maximum permitted value is 86400 seconds (24 hours)\n\nExample: - \"-1\"-\n\nValidation Rules:\n ves.io.schema.rules.int32.gte: -1\n ves.io.schema.rules.int32.lte: 86400\n", + "title": "maximum_age", + "format": "int32", + "x-displayname": "Maximum Age", + "x-ves-example": "-1", "x-ves-validation-rules": { - "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + "ves.io.schema.rules.int32.gte": "-1", + "ves.io.schema.rules.int32.lte": "86400" } + } + } + }, + "schemaCsrfPolicy": { + "type": "object", + "description": "To mitigate CSRF attack , the policy checks where a request is coming from to determine if the request's origin is the same as its detination.The policy relies on two pieces of information used in determining if a request originated from the same host.\n\n1. The origin that caused the user agent to issue the request (source origin).\n2. The origin that the request is going to (target origin).\nWhen the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being if the source-origin has been added to they policy as valid.\nBecause CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).", + "title": "CsrfPolicy", + "x-displayname": "CSRF Policy", + "x-ves-oneof-field-allowed_domains": "[\"all_load_balancer_domains\",\"custom_domain_list\",\"disabled\"]", + "x-ves-proto-message": "ves.io.schema.CsrfPolicy", + "properties": { + "all_load_balancer_domains": { + "description": "Exclusive with [custom_domain_list disabled]\n Add All load balancer domains to source origin (allow) list.", + "title": "all_load_balancer_domains", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "All HTTP Loadbalancer Domains" }, - "type": { - "type": "string", - "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", - "title": "type", - "x-displayname": "Type", - "x-ves-example": "Operational", + "custom_domain_list": { + "description": "Exclusive with [all_load_balancer_domains disabled]\n Add one or more domains to source origin (allow) list.\n\nExample: - \"abc.xyz.com\"-", + "title": "custom_domain_list", + "$ref": "#/definitions/schemaDomainNameList", + "x-displayname": "Specified domains", + "x-ves-example": "abc.xyz.com" + }, + "disabled": { + "description": "Exclusive with [all_load_balancer_domains custom_domain_list]\n Allow all source origin domains.", + "title": "disabled", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disabled" + } + } + }, + "schemaDomainNameList": { + "type": "object", + "description": "List of domain names used for Host header matching", + "title": "List of Domain names", + "x-displayname": "Domain name list", + "x-ves-proto-message": "ves.io.schema.DomainNameList", + "properties": { + "domains": { + "type": "array", + "description": "\n A list of domain names that will be matched to loadbalancer.\n These domains are not used for SNI match.\n Wildcard names are supported in the suffix or prefix form.\n\nExample: - \"www.foo.com\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.max_len: 256\n ves.io.schema.rules.repeated.items.string.min_len: 1\n ves.io.schema.rules.repeated.items.string.vh_domain: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Domains", + "minItems": 1, + "maxItems": 32, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Domain names", + "x-ves-example": "www.foo.com", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.vh_domain": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" } } } @@ -4645,6 +8910,41 @@ var APISwaggerJSON string = `{ } } }, + "schemaHttpMethod": { + "type": "string", + "description": "Specifies the HTTP method used to access a resource.\n\nAny HTTP Method", + "title": "HttpMethod", + "enum": [ + "ANY", + "GET", + "HEAD", + "POST", + "PUT", + "DELETE", + "CONNECT", + "OPTIONS", + "TRACE", + "PATCH" + ], + "default": "ANY", + "x-displayname": "HTTP Method", + "x-ves-proto-enum": "ves.io.schema.HttpMethod" + }, + "schemaHttpSections": { + "type": "string", + "description": "Request \u0026 Response Sections.\n\n - HTTP_SECTION_NONE: None\n\nALL_SECTIONS\n - HTTP_SECTION_QUERY_PARAMS: QUERY_PARAMS\n\n - HTTP_SECTION_REQ_HEADERS: REQ_HEADERS\n\n - HTTP_SECTION_RSP_HEADERS: RSP_HEADERS\n\n - HTTP_SECTION_REQ_BODY: REQ_BODY\n\n - HTTP_SECTION_RSP_BODY: RSP_BODY\n", + "title": "HTTPSections", + "enum": [ + "HTTP_SECTION_QUERY_PARAMS", + "HTTP_SECTION_REQ_HEADERS", + "HTTP_SECTION_RSP_HEADERS", + "HTTP_SECTION_REQ_BODY", + "HTTP_SECTION_RSP_BODY" + ], + "default": "HTTP_SECTION_NONE", + "x-displayname": "HTTP Sections", + "x-ves-proto-enum": "ves.io.schema.HttpSections" + }, "schemaInitializerType": { "type": "object", "description": "Initializer is information about an initializer that has not yet completed.", @@ -4684,6 +8984,70 @@ var APISwaggerJSON string = `{ } } }, + "schemaLabelSelectorType": { + "type": "object", + "description": "This type can be used to establish a 'selector reference' from one object(called selector) to\na set of other objects(called selectees) based on the value of expresssions.\nA label selector is a label query over a set of resources. An empty label selector matches all objects.\nA null label selector matches no objects. Label selector is immutable.\nexpressions is a list of strings of label selection expression.\nEach string has \",\" separated values which are \"AND\" and all strings are logically \"OR\".\nBNF for expression string\n\u003cselector-syntax\u003e ::= \u003crequirement\u003e | \u003crequirement\u003e \",\" \u003cselector-syntax\u003e\n\u003crequirement\u003e ::= [!] KEY [ \u003cset-based-restriction\u003e | \u003cexact-match-restriction\u003e ]\n\u003cset-based-restriction\u003e ::= \"\" | \u003cinclusion-exclusion\u003e \u003cvalue-set\u003e\n\u003cinclusion-exclusion\u003e ::= \u003cinclusion\u003e | \u003cexclusion\u003e\n\u003cexclusion\u003e ::= \"notin\"\n\u003cinclusion\u003e ::= \"in\"\n\u003cvalue-set\u003e ::= \"(\" \u003cvalues\u003e \")\"\n\u003cvalues\u003e ::= VALUE | VALUE \",\" \u003cvalues\u003e\n\u003cexact-match-restriction\u003e ::= [\"=\"|\"==\"|\"!=\"] VALUE", + "title": "LabelSelectorType", + "x-displayname": "Label Selector", + "x-ves-proto-message": "ves.io.schema.LabelSelectorType", + "properties": { + "expressions": { + "type": "array", + "description": " expressions contains the kubernetes style label expression for selections.\n\nExample: - \"region in (us-west1, us-west2),tier in (staging)\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.k8s_label_selector: true\n ves.io.schema.rules.repeated.items.string.max_len: 4096\n ves.io.schema.rules.repeated.items.string.min_len: 1\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "expressions", + "maxItems": 1, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 4096 + }, + "x-displayname": "Selector Expression", + "x-ves-example": "region in (us-west1, us-west2),tier in (staging)", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.k8s_label_selector": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "4096", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } + }, + "schemaMessageMetaType": { + "type": "object", + "description": "MessageMetaType is metadata (common attributes) of a message that only certain messages\nhave. This information is propagated to the metadata of a child object that gets created\nfrom the containing message during view processing.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "MessageMetaType", + "x-displayname": "Message Metadata", + "x-ves-proto-message": "ves.io.schema.MessageMetaType", + "properties": { + "description": { + "type": "string", + "description": " Human readable description.\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "description", + "maxLength": 256, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "name": { + "type": "string", + "description": " This is the name of the message.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.ves_object_name: true\n", + "title": "name", + "minLength": 1, + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.ves_object_name": "true" + } + } + } + }, "schemaObjectCreateMetaType": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", @@ -4705,10 +9069,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4765,10 +9133,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4827,10 +9199,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4865,6 +9241,24 @@ var APISwaggerJSON string = `{ } } }, + "schemaOpenApiValidationProperties": { + "type": "string", + "description": "List of required properties to validate against the OpenAPI spec\n\nValidate that all query parameters are according to the OpenAPI specification\nValidate that all path parameters are according to the OpenAPI specification\nValidate that the content type of the request is according to the OpenAPI specification\nValidate that all cookies are according to the OpenAPI specification\nValidate that all HTTP headers are according to the OpenAPI specification\nValidate that the body is according to the OpenAPI specification\nValidate that the security schema is according to the OpenAPI specification\nValidate that the response code is according to the OpenAPI specification", + "title": "OpenApiValidationProperties", + "enum": [ + "PROPERTY_QUERY_PARAMETERS", + "PROPERTY_PATH_PARAMETERS", + "PROPERTY_CONTENT_TYPE", + "PROPERTY_COOKIE_PARAMETERS", + "PROPERTY_HTTP_HEADERS", + "PROPERTY_HTTP_BODY", + "PROPERTY_SECURITY_SCHEMA", + "PROPERTY_RESPONSE_CODE" + ], + "default": "PROPERTY_QUERY_PARAMETERS", + "x-displayname": "OpenAPI Validation Properties", + "x-ves-proto-enum": "ves.io.schema.OpenApiValidationProperties" + }, "schemaSecretEncodingType": { "type": "string", "description": "x-displayName: \"Secret Encoding\"\nSecretEncodingType defines the encoding type of the secret before handled by the Secret Management Service.\n\n - EncodingNone: x-displayName: \"None\"\nNo Encoding\n - EncodingBase64: Base64\n\nx-displayName: \"Base64\"\nBase64 encoding", @@ -5193,65 +9587,294 @@ var APISwaggerJSON string = `{ "description": "x-displayName: \"Provider\"\nx-required\nx-example: \"vault-vh-provider\"\nName of the Secret Management Access object that contains information about the backend Vault.", "title": "Provider" }, - "secret_encoding": { - "description": "x-displayName: \"Secret Encoding\"\nThis field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault.", - "title": "secret_encoding", - "$ref": "#/definitions/schemaSecretEncodingType" + "secret_encoding": { + "description": "x-displayName: \"Secret Encoding\"\nThis field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault.", + "title": "secret_encoding", + "$ref": "#/definitions/schemaSecretEncodingType" + }, + "version": { + "type": "integer", + "description": "x-displayName: \"Version\"\nx-example: \"1\"\nVersion of the secret to be fetched. As vault secrets are versioned, user can specify this field to fetch specific version.\nIf not provided latest version will be returned.", + "title": "Version", + "format": "int64" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "schemaWingmanSecretInfoType": { + "type": "object", + "description": "x-displayName: \"Wingman Secret\"\nWingmanSecretInfoType specifies the handle to the wingman secret", + "title": "WingmanSecretInfoType", + "properties": { + "name": { + "type": "string", + "description": "x-displayName: \"Name\"\nx-required\nx-example: \"ChargeBack-API-Key\"\nName of the secret.", + "title": "Name" + } + } + }, + "schemapolicyHeaderMatcherType": { + "type": "object", + "description": "A header matcher specifies the name of a single HTTP header and the criteria for the input request to match it. The input has a list of actual values for each\nheader name in the original HTTP request.\nA header matcher can check for one of the following:\n* Presence or absence of the header in the input\n* At least one of the values for the header in the input satisfies the MatcherType item", + "title": "HeaderMatcherType", + "x-displayname": "Header Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.HeaderMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the header is not present.", + "title": "check_not_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the header is present.", + "title": "check_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Header Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the header. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { + "type": "string", + "description": " A case-insensitive HTTP header name.\n\nExample: - \"Accept-Encoding\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_header_field: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "Header Name", + "x-ves-example": "Accept-Encoding", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, + "schemapolicyIPThreatCategoryListType": { + "type": "object", + "description": "List of ip threat categories", + "title": "IP Threat Category List Type", + "x-displayname": "IP Threat Category List Type", + "x-ves-proto-message": "ves.io.schema.policy.IPThreatCategoryListType", + "properties": { + "ip_threat_categories": { + "type": "array", + "description": " The IP threat categories is obtained from the list and is used to auto-generate equivalent label selection expressions\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IP Threat Categories", + "maxItems": 32, + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "List of IP Threat Categories to choose", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "schemapolicyPathMatcherType": { + "type": "object", + "description": "A path matcher specifies multiple criteria for matching an HTTP path string. The match is considered successful if any of the criteria are satisfied. The set\nof supported match criteria includes a list of path prefixes, a list of exact path values and a list of regular expressions.", + "title": "PathMatcherType", + "x-displayname": "Path Matcher", + "x-ves-proto-message": "ves.io.schema.policy.PathMatcherType", + "properties": { + "exact_values": { + "type": "array", + "description": " A list of exact path values to match the input HTTP path against.\n\nExample: - \"['/api/web/namespaces/project179/users/user1', '/api/config/namespaces/accounting/bgps', '/api/data/namespaces/project443/virtual_host_101']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.http_path: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exact values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Exact Values", + "x-ves-example": "['/api/web/namespaces/project179/users/user1', '/api/config/namespaces/accounting/bgps', '/api/data/namespaces/project443/virtual_host_101']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Path Matcher" + }, + "prefix_values": { + "type": "array", + "description": " A list of path prefix values to match the input HTTP path against.\n\nExample: - \"['/api/web/namespaces/project179/users/', '/api/config/namespaces/', '/api/data/namespaces/']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.http_path: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "prefix values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Prefix Values", + "x-ves-example": "['/api/web/namespaces/project179/users/', '/api/config/namespaces/', '/api/data/namespaces/']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "regex_values": { + "type": "array", + "description": " A list of regular expressions to match the input HTTP path against.\n\nExample: - \"['^/api/web/namespaces/abc/users/([a-z]([-a-z0-9]*[a-z0-9])?)$', '/api/data/namespaces/proj404/virtual_hosts/([a-z]([-a-z0-9]*[a-z0-9])?)$']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.items.string.regex: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "regex values", + "maxItems": 16, + "items": { + "type": "string", + "maxLength": 256 + }, + "x-displayname": "Regex Values", + "x-ves-example": "['^/api/web/namespaces/abc/users/([a-z]([-a-z0-9]*[a-z0-9])?)$', '/api/data/namespaces/proj404/virtual_hosts/([a-z]([-a-z0-9]*[a-z0-9])?)$']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.items.string.regex": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "suffix_values": { + "type": "array", + "description": " A list of path suffix values to match the input HTTP path against.\n\nExample: - \"['.exe', '.shtml', '.wmz']\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 64\n ves.io.schema.rules.repeated.items.string.not_empty: true\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Suffix values", + "maxItems": 64, + "items": { + "type": "string", + "maxLength": 64 + }, + "x-displayname": "Suffix Values", + "x-ves-example": "['.exe', '.shtml', '.wmz']", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "64", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } }, - "version": { - "type": "integer", - "description": "x-displayName: \"Version\"\nx-example: \"1\"\nVersion of the secret to be fetched. As vault secrets are versioned, user can specify this field to fetch specific version.\nIf not provided latest version will be returned.", - "title": "Version", - "format": "int64" + "transformers": { + "type": "array", + "description": " An ordered list of transformers (starting from index 0) to be applied to the path before matching.\n\nExample: - \"[BASE64_DECODE, LOWER_CASE]-\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 9\n ves.io.schema.rules.repeated.unique: true\n", + "title": "transformers", + "maxItems": 9, + "items": { + "$ref": "#/definitions/policyTransformer" + }, + "x-displayname": "Transformers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "9", + "ves.io.schema.rules.repeated.unique": "true" + } } } }, - "schemaViewRefType": { + "schemapolicyQueryParameterMatcherType": { "type": "object", - "description": "ViewRefType represents a reference to a view", - "title": "ViewRefType", - "x-displayname": "View Reference", - "x-ves-proto-message": "ves.io.schema.ViewRefType", + "description": "A query parameter matcher specifies the name of a single query parameter and the criteria for the input request to match it. The input has a list of actual\nvalues for each query parameter name in the original HTTP request.\nA query parameter matcher can check for one of the following:\n* Presence or absence of the query parameter in the input\n* At least one of the values for the query parameter in the input satisfies the MatcherType item", + "title": "QueryParameterMatcherType", + "x-displayname": "Query Parameter Matcher", + "x-ves-displayorder": "1,6,4", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.QueryParameterMatcherType", "properties": { - "kind": { - "type": "string", - "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", - "title": "kind", - "x-displayname": "Kind", - "x-ves-example": "http_proxy" + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the query parameter is not present.", + "title": "check_not_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Not Present" }, - "name": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "contactus-route" + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the query parameter is present.", + "title": "check_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Present" }, - "namespace": { - "type": "string", - "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Query Parameter Matcher" }, - "uid": { - "type": "string", - "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" - } - } - }, - "schemaWingmanSecretInfoType": { - "type": "object", - "description": "x-displayName: \"Wingman Secret\"\nWingmanSecretInfoType specifies the handle to the wingman secret", - "title": "WingmanSecretInfoType", - "properties": { - "name": { + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the given query parameter. The match is successful if any of the values for the query parameter satisfies the\n criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "key": { "type": "string", - "description": "x-displayName: \"Name\"\nx-required\nx-example: \"ChargeBack-API-Key\"\nName of the secret.", - "title": "Name" + "description": " A case-sensitive HTTP query parameter name.\n\nExample: - \"sourceid\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "key", + "maxLength": 256, + "x-displayname": "Query Parameter Name", + "x-ves-example": "sourceid", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } } } }, @@ -5301,6 +9924,138 @@ var APISwaggerJSON string = `{ } } }, + "service_policy_ruleChallengeRuleSpec": { + "type": "object", + "description": "A Challenge Rule consists of an unordered list of predicates and an action. The predicates are evaluated against a set of input fields that are extracted from\nor derived from an L7 request API. A request API is considered to match the rule if all predicates in the rule evaluate to true for that request. Any\npredicates that are not specified in a rule are implicitly considered to be true. If a request API matches a challenge rule, the configured challenge is\nenforced.", + "title": "Challenge Rule Spec", + "x-displayname": "Challenge Rule Specification", + "x-ves-oneof-field-asn_choice": "[\"any_asn\",\"asn_list\",\"asn_matcher\"]", + "x-ves-oneof-field-challenge_action": "[\"disable_challenge\",\"enable_captcha_challenge\",\"enable_javascript_challenge\"]", + "x-ves-oneof-field-client_choice": "[\"any_client\",\"client_selector\"]", + "x-ves-oneof-field-ip_choice": "[\"any_ip\",\"ip_matcher\",\"ip_prefix_list\"]", + "x-ves-proto-message": "ves.io.schema.service_policy_rule.ChallengeRuleSpec", + "properties": { + "any_asn": { + "description": "Exclusive with [asn_list asn_matcher]\n Any origin ASN.", + "$ref": "#/definitions/ioschemaEmpty" + }, + "any_client": { + "description": "Exclusive with [client_selector]\n Any Client", + "$ref": "#/definitions/ioschemaEmpty" + }, + "any_ip": { + "description": "Exclusive with [ip_matcher ip_prefix_list]\n Any Source IP", + "$ref": "#/definitions/ioschemaEmpty" + }, + "arg_matchers": { + "type": "array", + "description": " A list of predicates for all POST args that need to be matched. The criteria for matching each arg are described in individual instances\n of ArgMatcherType. The actual arg values are extracted from the request API as a list of strings for each arg selector name.\n Note that all specified arg matcher predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyArgMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "asn_list": { + "description": "Exclusive with [any_asn asn_matcher]\n List of 4-byte ASN values.\n The predicate evaluates to true if the origin ASN is present in the ASN list.", + "$ref": "#/definitions/policyAsnMatchList" + }, + "asn_matcher": { + "description": "Exclusive with [any_asn asn_list]\n List of references to BGP ASN Set objects.\n The predicate evaluates to true if the origin ASN is present in one of the BGP ASN Set objects.", + "$ref": "#/definitions/policyAsnMatcherType" + }, + "body_matcher": { + "description": " Predicate for matching the request body string. The criteria for matching the request body is described in MatcherType.\n The actual request body value is extracted from the request API as a string.", + "$ref": "#/definitions/policyMatcherType" + }, + "client_selector": { + "description": "Exclusive with [any_client]\n A label selector that describes the expected set of clients. The labels associated with the client making the API request are used to evaluate the label\n expressions in the selector. These labels can be derived from the client TLS certificate or from the volterra internal control plane.\n This is a more flexible and powerful version of the client name matcher predicate that allows a given rule to be applicable to a set of clients based on the\n client labels rather than being limited to relying on patterns in the client name.\n The predicate evaluates to true if the expressions in the label selector are true for the client labels.", + "$ref": "#/definitions/schemaLabelSelectorType" + }, + "cookie_matchers": { + "type": "array", + "description": " A list of predicates for all cookies that need to be matched. The criteria for matching each cookie is described in individual instances\n of CookieMatcherType. The actual cookie values are extracted from the request API as a list of strings for each cookie name.\n Note that all specified cookie matcher predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyCookieMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "disable_challenge": { + "description": "Exclusive with [enable_captcha_challenge enable_javascript_challenge]\nDisable the challenge type selected in PolicyBasedChallenge", + "title": "Disable challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable challenge" + }, + "domain_matcher": { + "description": " A list of exact values and/or regular expressions for the expected name of the domain. The actual value of domain is the host component\n from the URL. The predicate evaluates to true if the domain value matches any of the exact values or regular expressions in the domain\n matcher.", + "$ref": "#/definitions/policyMatcherTypeBasic" + }, + "enable_captcha_challenge": { + "description": "Exclusive with [disable_challenge enable_javascript_challenge]\nEnable captcha challenge", + "title": "Enable captcha challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable captcha challenge" + }, + "enable_javascript_challenge": { + "description": "Exclusive with [disable_challenge enable_captcha_challenge]\nEnable javascript challenge", + "title": "Enable javascript challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable javascript challenge" + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-", + "format": "date-time" + }, + "headers": { + "type": "array", + "description": " A list of predicates for various HTTP headers that need to match. The criteria for matching each HTTP header are described in individual HeaderMatcherType\n instances. The actual HTTP header values are extracted from the request API as a list of strings for each HTTP header type.\n Note that all specified header predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyHeaderMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "http_method": { + "description": " The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request.\n The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values.", + "$ref": "#/definitions/policyHttpMethodMatcherType" + }, + "ip_matcher": { + "description": "Exclusive with [any_ip ip_prefix_list]\n List of references to IP Prefix Set objects.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes in the IP Prefix Sets.", + "$ref": "#/definitions/policyIpMatcherType" + }, + "ip_prefix_list": { + "description": "Exclusive with [any_ip ip_matcher]\n List of IP Prefixes values.\n The predicate evaluates to true if the client IP Address is covered by one or more of the IP Prefixes from the list.", + "$ref": "#/definitions/policyPrefixMatchList" + }, + "path": { + "description": " A list of exact values, prefixes and regular expressions for the expected value of the HTTP path. The actual value of the HTTP path is the unescaped path\n value extracted from the HTTP URL Resource, excluding any query and fragment information.\n The predicate evaluates to true if the actual path value matches any of the exact or prefix values or regular expressions in the path matcher.", + "$ref": "#/definitions/schemapolicyPathMatcherType" + }, + "query_params": { + "type": "array", + "description": " A list of predicates for all query parameters that need to be matched. The criteria for matching each query parameter are described in individual instances\n of QueryParameterMatcherType. The actual query parameter values are extracted from the request API as a list of strings for each query parameter name.\n Note that all specified query parameter predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemapolicyQueryParameterMatcherType" + }, + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, + "tls_fingerprint_matcher": { + "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", + "$ref": "#/definitions/policyTlsFingerprintMatcherType" + } + } + }, "viewsCustomCiphers": { "type": "object", "description": "This defines TLS protocol config including min/max versions and allowed ciphers", @@ -5339,6 +10094,47 @@ var APISwaggerJSON string = `{ } } }, + "viewsPrefixStringListType": { + "type": "object", + "description": "x-example: \"192.168.20.0/24\"\nList of IPv4 prefixes that represent an endpoint", + "title": "ipv4 prefix list", + "x-displayname": "IPv4 Prefix List", + "x-ves-proto-message": "ves.io.schema.views.PrefixStringListType", + "properties": { + "ipv6_prefixes": { + "type": "array", + "description": " List of IPv6 prefix strings.\n\nExample: - \"fd48:fa09:d9d4::/48\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv6_prefix: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv6 prefixes", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv6 Prefix List", + "x-ves-example": "fd48:fa09:d9d4::/48", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv6_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "prefixes": { + "type": "array", + "description": " List of IPv4 prefixes that represent an endpoint\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "ipv4 prefix list", + "maxItems": 128, + "items": { + "type": "string" + }, + "x-displayname": "IPv4 Prefix List", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.ipv4_prefix": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, "viewsTlsConfig": { "type": "object", "description": "This defines various options to configure TLS configuration parameters", @@ -5656,6 +10452,117 @@ var APISwaggerJSON string = `{ } } }, + "viewscommon_wafIPThreatCategoryListType": { + "type": "object", + "description": "List of ip threat categories", + "title": "IP Threat Category List Type", + "x-displayname": "IP Threat Category List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.IPThreatCategoryListType", + "properties": { + "ip_threat_categories": { + "type": "array", + "description": " If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IP Threat Categories", + "maxItems": 32, + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "List of IP Threat Categories to choose", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "viewscommon_wafPolicyBasedChallenge": { + "type": "object", + "description": "Specifies the settings for policy rule based challenge", + "title": "policy based challenge", + "x-displayname": "Policy Based Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-challenge_choice": "[\"always_enable_captcha_challenge\",\"always_enable_js_challenge\",\"no_challenge\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-oneof-field-temporary_blocking_parameters_choice": "[\"default_temporary_blocking_parameters\",\"temporary_user_blocking\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.PolicyBasedChallenge", + "properties": { + "always_enable_captcha_challenge": { + "description": "Exclusive with [always_enable_js_challenge no_challenge]\n Enable Captcha challenge for all requests.\n Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.", + "title": "always enable captcha challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Always enable Captcha Challenge" + }, + "always_enable_js_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge no_challenge]\n Enable JavaScript challenge for all requests.\n Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.", + "title": "always enable JS challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Always enable JS Challenge" + }, + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" + }, + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_js_challenge_parameters": { + "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_mitigation_settings": { + "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default" + }, + "default_temporary_blocking_parameters": { + "description": "Exclusive with [temporary_user_blocking]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "js_challenge_parameters": { + "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge Parameters" + }, + "malicious_user_mitigation": { + "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", + "title": "Malicious User Mitigation", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Custom" + }, + "no_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge always_enable_js_challenge]\n Disable JavaScript and Captcha challenge for all requests.\n Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.", + "title": "no_challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "None" + }, + "rule_list": { + "description": " list challenge rules to be used in policy based challenge", + "title": "Challenge rule list", + "$ref": "#/definitions/common_wafChallengeRuleList", + "x-displayname": "Challenge rule list" + }, + "temporary_user_blocking": { + "description": "Exclusive with [default_temporary_blocking_parameters]\n Specifies configuration for temporary user blocking resulting from malicious user detection", + "title": "Temporary User Blocking", + "$ref": "#/definitions/virtual_hostTemporaryUserBlockingType", + "x-displayname": "Temporary User Blocking Parameters" + } + } + }, "virtual_hostAutoCertInfoType": { "type": "object", "description": "Information related to auto certificate", @@ -5699,6 +10606,39 @@ var APISwaggerJSON string = `{ } } }, + "virtual_hostCaptchaChallengeType": { + "type": "object", + "description": "\nEnables loadbalancer to perform captcha challenge\n\nCaptcha challenge will be based on Google Recaptcha.\n\nWith this feature enabled, only clients that pass the captcha challenge will be allowed to\ncomplete the HTTP request.\n\nWhen loadbalancer is configured to do Captcha Challenge, it will redirect the browser to an\nHTML page on every new HTTP request. This HTML page will have captcha challenge embedded in it.\nClient will be allowed to make the request only if the captcha challenge is successful.\nLoadbalancer will tag response header with a cookie to avoid Captcha challenge for subsequent requests.\n\nCAPTCHA is mainly used as a security check to ensure only human users can pass through.\nGenerally, computers or bots are not capable of solving a captcha.\n\nYou can enable either Javascript challenge or Captcha challenge on a virtual host", + "title": "CaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters", + "x-ves-proto-message": "ves.io.schema.virtual_host.CaptchaChallengeType", + "properties": { + "cookie_expiry": { + "type": "integer", + "description": " Cookie expiration period, in seconds.\n An expired cookie causes the loadbalancer to issue a new challenge.\n\nExample: - \"1000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 86400\n", + "title": "cookie_expiry", + "format": "int64", + "x-displayname": "Cookie Expiration Period", + "x-ves-example": "1000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "86400" + } + }, + "custom_page": { + "type": "string", + "description": " Custom message is of type uri_ref. Currently supported URL schemes is string:///.\n For string:/// scheme, message needs to be encoded in Base64 format.\n You can specify this message as base64 encoded plain text message e.g. \"Please Wait..\"\n or it can be HTML paragraph or a body string encoded as base64 string\n E.g. \"\u003cp\u003e Please Wait \u003c/p\u003e\". Base64 encoded string for this html is \"PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"\n\nExample: - \"string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 65536\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "custom_page", + "maxLength": 65536, + "x-displayname": "Custom message for Captcha Challenge", + "x-ves-example": "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "65536", + "ves.io.schema.rules.string.uri_ref": "true" + } + } + } + }, "virtual_hostCertificationState": { "type": "string", "description": "State of auto certification generation for the virtual host\n\n - AutoCertDisabled: Auto Cert Disabled\n\nAuto Certification is disabled.\n - DnsDomainVerification: Dns Domain Verification\n\nAuto Certification is waiting for domain verification.\n - AutoCertStarted: Auto Cert Started\n\nAuto Certificate generation action has started.\n - PreDomainChallengePending: Pre Domain Challenge Pending\n\nThe domains in the virtual host configuration are not still verified. This requires\nthe _acme-challenge TXT record in the domain to have the correct TXT.\n - DomainChallengeStarted: Domain Challenge Started\n\nDomain challenge process started.\n - DomainChallengePending: Domain Challenge Pending\n\nThe domains in the virtual host configuration are being verified. This requires\nthe _acme-challenge TXT record in the domain to have the correct TXT.\n - DomainChallengeVerified: Domain Challenge Verified\n\nAll the domains in the virtual host have been verified.\n - AutoCertFinalize: Auto Cert Finalize\n\nCertificate generation order is Ready and Finalized.\n - CertificateInvalid: Certificate Invalid\n\nCertificate is invalid\n - CertificateValid: Certificate Valid\n\nValid certificate generated and tls_parameters are updated\n - AutoCertNotApplicable: Auto Cert Not Applicable\n\nAuto certificate not applicable because virtual host does not use TLS\n - AutoCertRateLimited: Auto Cert Rate Limited\n\nAuto certificate not available because CA has rate limited the request\n - AutoCertGenerationRetry: Auto Cert Generation Retry\n\nAuto certificate generate failed in the previous attempt, will be retried automatically\n - AutoCertError: Auto Cert Error\n\nError in Certificate generation\nDefault State for Vhost State with Auto Certificate\n - AutoCertAccountRateLimited: Auto Cert Account Rate Limited\n\nAuto certificate not available because CA has rate limited the request\n - AutoCertDomainRateLimited: Auto Cert Domain Rate Limited\n\nAuto certificate not available because CA has rate limited the request\n - CertificateExpired: Certificate Expired\n\nCertificate has expired", @@ -5797,6 +10737,51 @@ var APISwaggerJSON string = `{ } } }, + "virtual_hostJavascriptChallengeType": { + "type": "object", + "description": "\nEnables loadbalancer to perform client browser compatibility test by redirecting to a page\nwith Javascript.\n\nWith this feature enabled, only clients that are capable of executing Javascript(mostly browsers)\nwill be allowed to complete the HTTP request.\n\nWhen loadbalancer is configured to do Javascript Challenge, it will redirect the browser to an\nHTML page on every new HTTP request. This HTML page will have Javascript embedded in it.\nLoadbalancer chooses a set of random numbers for every new client and sends these numbers along with an\nencrypted answer with the request such that it embed these numbers as input in the Javascript.\nJavascript will run on the requestor browser and perform a complex Math operation.\nScript will submit the answer to loadbalancer. Loadbalancer will validate the answer by comparing the calculated\nanswer with the decrypted answer (which was encrypted when it was sent back as reply) and allow\nthe request to the upstream server only if the answer is correct.\nLoadbalancer will tag response header with a cookie to avoid Javascript challenge for subsequent requests.\n\nJavascript challenge serves following purposes\n * Validate that the request is coming via a browser that is capable for running Javascript\n * Force the browser to run a complex operation, f(X), that requires it to spend a large number\n of CPU cycles. This is to slow down a potential DoS attacker by making it difficult to launch\n a large request flood without having to spend even larger CPU cost at their end.\n\nYou can enable either Javascript challenge or Captcha challenge on a virtual host", + "title": "JavascriptChallengeType", + "x-displayname": "Javascript Challenge Parameters", + "x-ves-proto-message": "ves.io.schema.virtual_host.JavascriptChallengeType", + "properties": { + "cookie_expiry": { + "type": "integer", + "description": " Cookie expiration period, in seconds.\n An expired cookie causes the loadbalancer to issue a new challenge.\n\nExample: - \"1000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 86400\n", + "title": "cookie_expiry", + "format": "int64", + "x-displayname": "Cookie Expiration Period", + "x-ves-example": "1000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "86400" + } + }, + "custom_page": { + "type": "string", + "description": " Custom message is of type uri_ref. Currently supported URL schemes is string:///.\n For string:/// scheme, message needs to be encoded in Base64 format.\n You can specify this message as base64 encoded plain text message e.g. \"Please Wait..\"\n or it can be HTML paragraph or a body string encoded as base64 string\n E.g. \"\u003cp\u003e Please Wait \u003c/p\u003e\". Base64 encoded string for this html is \"PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"\n\nExample: - \"string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 65536\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "custom_page", + "maxLength": 65536, + "x-displayname": "Custom Message for Javascript Challenge", + "x-ves-example": "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "65536", + "ves.io.schema.rules.string.uri_ref": "true" + } + }, + "js_script_delay": { + "type": "integer", + "description": " Delay introduced by Javascript, in milliseconds.\n\nExample: - \"1000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1000\n ves.io.schema.rules.uint32.lte: 60000\n", + "title": "js_script_delay", + "format": "int64", + "x-displayname": "Javascript Delay", + "x-ves-example": "1000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1000", + "ves.io.schema.rules.uint32.lte": "60000" + } + } + } + }, "virtual_hostServiceDomain": { "type": "object", "x-ves-proto-message": "ves.io.schema.virtual_host.ServiceDomain", @@ -5817,6 +10802,27 @@ var APISwaggerJSON string = `{ } } }, + "virtual_hostTemporaryUserBlockingType": { + "type": "object", + "description": "\nSpecifies configuration for temporary user blocking resulting from user behavior analysis.\n\nWhen Malicious User Mitigation is enabled from service policy rules, users' accessing the application will be analyzed for\nmalicious activity and the configured mitigation actions will be taken on identified malicious users.\nThese mitigation actions include setting up temporary blocking on that user.\nThis configuration specifies settings on how that blocking should be done by the loadbalancer.", + "title": "TemporaryUserBlockingType", + "x-displayname": "Temporary User Blocking", + "x-ves-proto-message": "ves.io.schema.virtual_host.TemporaryUserBlockingType", + "properties": { + "custom_page": { + "type": "string", + "description": " Custom message is of type -uri_ref-. Currently supported URL schemes is -string:///-.\n For -string:///- scheme, message needs to be encoded in Base64 format.\n You can specify this message as base64 encoded plain text message e.g. \"Blocked..\"\n or it can be HTML paragraph or a body string encoded as base64 string\n E.g. \"\u003cp\u003e Blocked \u003c/p\u003e\". Base64 encoded string for this html is \"PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"\n\nExample: - \"string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 65536\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "custom_page", + "maxLength": 65536, + "x-displayname": "Custom Message for Temporary Blocking", + "x-ves-example": "string:///PHA+IFBsZWFzZSBXYWl0IDwvcD4=", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "65536", + "ves.io.schema.rules.string.uri_ref": "true" + } + } + } + }, "virtual_hostVirtualHostState": { "type": "string", "description": "State of the virtual host\n\n - VIRTUAL_HOST_READY: VIRTUAL_HOST_READY\n\nVirtual host is ready to install\n - VIRTUAL_HOST_PENDING_VERIFICATION: VIRTUAL_HOST_PENDING_VERIFICATION\n\nVirtual host is verfication pending for some or all of its domains\n - VIRTUAL_HOST_VERIFICATION_FAILED: VIRTUAL_HOST_VERIFICATION_FAILED\n\nVirtual host has one or more domains for which verification failed\n - VIRTUAL_HOST_PENDING_DNS_DELEGATION: VIRTUAL_HOST_PENDING_DNS_DELEGATION\n\nVirtual host is pending DNS delegation\n - VIRTUAL_HOST_PENDING_A_RECORD: VIRTUAL_HOST_PENDING_A_RECORD\n\nVirtual host is waiting for one or more A records to be created\n - VIRTUAL_HOST_DNS_A_RECORD_ADDED: VIRTUAL_HOST_DNS_A_RECORD_ADDED\n\nDNS A record has been added for this Virtual host\n - VIRTUAL_HOST_INTERNET_NLB_PENDING_CREATION: VIRTUAL_HOST_INTERNET_NLB_PENDING_CREATION\n\nInternet facing NLB, is being created on the site/sites belonging to the virtual site\n - VIRTUAL_HOST_INTERNET_NLB_CREATION_FAILED: VIRTUAL_HOST_INTERNET_NLB_CREATION_FAILED\n\nInternet NLB creation failed on the site/sites. InternetNLBVIPStatus will have more information.", diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.pb.go b/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.pb.go index ce96e6c34..37cc47720 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.pb.go @@ -1705,13 +1705,19 @@ type LilacCDNCachePurgeRequest struct { // Format: unix_timestamp|rfc 3339 // Purge objects that were created on or before this timestamp PurgeEpochTimestamp string `protobuf:"bytes,3,opt,name=purge_epoch_timestamp,json=purgeEpochTimestamp,proto3" json:"purge_epoch_timestamp,omitempty"` - // Regex Pattern to match + // Purge Options // - // x-displayName: "Pattern (RegEx)" - // x-example: "*.ts" + // x-displayName: "Purge Options" + // x-required // Format: string - // Purge only the objects whos name matches the pattern - Pattern string `protobuf:"bytes,4,opt,name=pattern,proto3" json:"pattern,omitempty"` + // Options to purge cache for a specific distribution + // + // Types that are valid to be assigned to PatternType: + // *LilacCDNCachePurgeRequest_PurgeAll + // *LilacCDNCachePurgeRequest_Url + // *LilacCDNCachePurgeRequest_Hostname + // *LilacCDNCachePurgeRequest_Pattern + PatternType isLilacCDNCachePurgeRequest_PatternType `protobuf_oneof:"pattern_type"` // Purge Type // // x-displayName: "Purge Type" @@ -1756,6 +1762,12 @@ func (m *LilacCDNCachePurgeRequest) XXX_DiscardUnknown() { var xxx_messageInfo_LilacCDNCachePurgeRequest proto.InternalMessageInfo +type isLilacCDNCachePurgeRequest_PatternType interface { + isLilacCDNCachePurgeRequest_PatternType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type isLilacCDNCachePurgeRequest_PurgeType interface { isLilacCDNCachePurgeRequest_PurgeType() Equal(interface{}) bool @@ -1763,6 +1775,18 @@ type isLilacCDNCachePurgeRequest_PurgeType interface { Size() int } +type LilacCDNCachePurgeRequest_PurgeAll struct { + PurgeAll *schema.Empty `protobuf:"bytes,9,opt,name=purge_all,json=purgeAll,proto3,oneof" json:"purge_all,omitempty"` +} +type LilacCDNCachePurgeRequest_Url struct { + Url string `protobuf:"bytes,10,opt,name=url,proto3,oneof" json:"url,omitempty"` +} +type LilacCDNCachePurgeRequest_Hostname struct { + Hostname string `protobuf:"bytes,11,opt,name=hostname,proto3,oneof" json:"hostname,omitempty"` +} +type LilacCDNCachePurgeRequest_Pattern struct { + Pattern string `protobuf:"bytes,4,opt,name=pattern,proto3,oneof" json:"pattern,omitempty"` +} type LilacCDNCachePurgeRequest_SoftPurge struct { SoftPurge *schema.Empty `protobuf:"bytes,6,opt,name=soft_purge,json=softPurge,proto3,oneof" json:"soft_purge,omitempty"` } @@ -1770,9 +1794,19 @@ type LilacCDNCachePurgeRequest_HardPurge struct { HardPurge *schema.Empty `protobuf:"bytes,7,opt,name=hard_purge,json=hardPurge,proto3,oneof" json:"hard_purge,omitempty"` } -func (*LilacCDNCachePurgeRequest_SoftPurge) isLilacCDNCachePurgeRequest_PurgeType() {} -func (*LilacCDNCachePurgeRequest_HardPurge) isLilacCDNCachePurgeRequest_PurgeType() {} +func (*LilacCDNCachePurgeRequest_PurgeAll) isLilacCDNCachePurgeRequest_PatternType() {} +func (*LilacCDNCachePurgeRequest_Url) isLilacCDNCachePurgeRequest_PatternType() {} +func (*LilacCDNCachePurgeRequest_Hostname) isLilacCDNCachePurgeRequest_PatternType() {} +func (*LilacCDNCachePurgeRequest_Pattern) isLilacCDNCachePurgeRequest_PatternType() {} +func (*LilacCDNCachePurgeRequest_SoftPurge) isLilacCDNCachePurgeRequest_PurgeType() {} +func (*LilacCDNCachePurgeRequest_HardPurge) isLilacCDNCachePurgeRequest_PurgeType() {} +func (m *LilacCDNCachePurgeRequest) GetPatternType() isLilacCDNCachePurgeRequest_PatternType { + if m != nil { + return m.PatternType + } + return nil +} func (m *LilacCDNCachePurgeRequest) GetPurgeType() isLilacCDNCachePurgeRequest_PurgeType { if m != nil { return m.PurgeType @@ -1801,9 +1835,30 @@ func (m *LilacCDNCachePurgeRequest) GetPurgeEpochTimestamp() string { return "" } +func (m *LilacCDNCachePurgeRequest) GetPurgeAll() *schema.Empty { + if x, ok := m.GetPatternType().(*LilacCDNCachePurgeRequest_PurgeAll); ok { + return x.PurgeAll + } + return nil +} + +func (m *LilacCDNCachePurgeRequest) GetUrl() string { + if x, ok := m.GetPatternType().(*LilacCDNCachePurgeRequest_Url); ok { + return x.Url + } + return "" +} + +func (m *LilacCDNCachePurgeRequest) GetHostname() string { + if x, ok := m.GetPatternType().(*LilacCDNCachePurgeRequest_Hostname); ok { + return x.Hostname + } + return "" +} + func (m *LilacCDNCachePurgeRequest) GetPattern() string { - if m != nil { - return m.Pattern + if x, ok := m.GetPatternType().(*LilacCDNCachePurgeRequest_Pattern); ok { + return x.Pattern } return "" } @@ -1825,6 +1880,10 @@ func (m *LilacCDNCachePurgeRequest) GetHardPurge() *schema.Empty { // XXX_OneofWrappers is for the internal use of the proto package. func (*LilacCDNCachePurgeRequest) XXX_OneofWrappers() []interface{} { return []interface{}{ + (*LilacCDNCachePurgeRequest_PurgeAll)(nil), + (*LilacCDNCachePurgeRequest_Url)(nil), + (*LilacCDNCachePurgeRequest_Hostname)(nil), + (*LilacCDNCachePurgeRequest_Pattern)(nil), (*LilacCDNCachePurgeRequest_SoftPurge)(nil), (*LilacCDNCachePurgeRequest_HardPurge)(nil), } @@ -2855,193 +2914,200 @@ func init() { } var fileDescriptor_aa4abedfb61da15b = []byte{ - // 2968 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5a, 0x5d, 0x6c, 0x1c, 0x57, - 0xf5, 0xf7, 0xdd, 0x9d, 0xb5, 0xd7, 0xd7, 0x1f, 0x99, 0x5c, 0xc7, 0xce, 0x64, 0xe3, 0x6c, 0xdc, - 0x49, 0x3f, 0xdc, 0xb4, 0xf6, 0xfe, 0xe5, 0x36, 0xff, 0xa6, 0x49, 0x69, 0x63, 0x3b, 0x4e, 0x62, - 0xcb, 0x38, 0xc9, 0x38, 0x14, 0x88, 0x04, 0xa3, 0xd9, 0x99, 0xeb, 0xd9, 0xa1, 0xb3, 0x73, 0x27, - 0x73, 0xef, 0xba, 0x71, 0xa1, 0xa8, 0x2a, 0xa5, 0x12, 0x42, 0x42, 0xa8, 0xf4, 0xa1, 0xaa, 0x84, - 0x40, 0x48, 0x48, 0x48, 0x15, 0xe2, 0x15, 0x30, 0xa0, 0xf0, 0xd4, 0x8a, 0x07, 0x14, 0x81, 0x84, - 0x2a, 0x9e, 0xa8, 0xc3, 0x43, 0x79, 0xa2, 0x0f, 0x20, 0xa0, 0x4f, 0xe8, 0xde, 0x3b, 0xb3, 0x3b, - 0xbb, 0x6b, 0x27, 0xbb, 0xeb, 0x50, 0xc4, 0xdb, 0xce, 0xf9, 0xba, 0xe7, 0xfc, 0xce, 0xb9, 0xe7, - 0x9e, 0xb9, 0xb3, 0xf0, 0xec, 0x26, 0xa6, 0xb3, 0x1e, 0x29, 0x51, 0xbb, 0x82, 0xab, 0x56, 0x69, - 0xd3, 0xc3, 0x2f, 0xd2, 0x92, 0xed, 0x04, 0xa6, 0x4f, 0x2c, 0xa7, 0x6c, 0xf9, 0x56, 0x60, 0xe3, - 0xa8, 0x14, 0xd6, 0xca, 0xbe, 0x67, 0x9b, 0x76, 0x8d, 0x32, 0x52, 0xb5, 0x42, 0x6f, 0x36, 0x8c, - 0x08, 0x23, 0xe8, 0x41, 0xa9, 0x3c, 0x2b, 0x95, 0x67, 0x85, 0xf2, 0x6c, 0xab, 0x72, 0x61, 0xc6, - 0xf5, 0x58, 0xa5, 0x56, 0x9e, 0xb5, 0x49, 0xb5, 0xe4, 0x12, 0x97, 0x94, 0x84, 0x72, 0xb9, 0xb6, - 0x21, 0x9e, 0xc4, 0x83, 0xf8, 0x25, 0x8d, 0x16, 0x26, 0x5d, 0x42, 0x5c, 0x1f, 0x97, 0xac, 0xd0, - 0x2b, 0x59, 0x41, 0x40, 0x98, 0xc5, 0x3c, 0x12, 0xd0, 0x98, 0x5b, 0x68, 0xf6, 0x17, 0x47, 0x11, - 0x89, 0x12, 0xde, 0x74, 0x33, 0xcf, 0x27, 0x6e, 0xc9, 0xb2, 0x6d, 0x4c, 0xa9, 0xc9, 0x7f, 0xb2, - 0xad, 0x10, 0x27, 0x92, 0xc7, 0xda, 0x25, 0xd3, 0xec, 0xa3, 0xcd, 0x6c, 0x12, 0xa6, 0x3d, 0x38, - 0xd2, 0xcc, 0x4c, 0xeb, 0x4d, 0xb6, 0x80, 0x69, 0xf9, 0x9e, 0x63, 0x31, 0x1c, 0x73, 0xf5, 0x16, - 0x2e, 0xa6, 0x38, 0xd8, 0x6c, 0x31, 0x3e, 0xd5, 0x9e, 0x0e, 0xb3, 0x59, 0xa2, 0xb3, 0x84, 0xed, - 0x11, 0xf7, 0xff, 0x75, 0xa4, 0x9c, 0xd2, 0xd0, 0xff, 0x90, 0x87, 0xc5, 0x55, 0xcf, 0xb7, 0xec, - 0xc5, 0xf3, 0x6b, 0xf3, 0xc2, 0xe8, 0x2a, 0x71, 0xa9, 0x81, 0x69, 0x48, 0x02, 0x8a, 0xcf, 0x5b, - 0xcc, 0x42, 0x93, 0x70, 0x90, 0x79, 0x55, 0x4c, 0x99, 0x55, 0x0d, 0x35, 0x30, 0x05, 0xa6, 0x07, - 0x8d, 0x06, 0x01, 0x1d, 0x87, 0x43, 0xb6, 0xef, 0xe1, 0x80, 0x99, 0x21, 0x89, 0x98, 0xa6, 0x08, - 0x3e, 0x94, 0xa4, 0x2b, 0x24, 0x62, 0x08, 0x41, 0xa5, 0x42, 0x28, 0xd3, 0x72, 0x82, 0x23, 0x7e, - 0x73, 0x5a, 0x8d, 0xe2, 0x48, 0xeb, 0x97, 0x34, 0xfe, 0x1b, 0x4d, 0xc0, 0x7e, 0xe1, 0x36, 0xd6, - 0x06, 0x04, 0x35, 0x7e, 0xe2, 0xf4, 0x2a, 0x66, 0x15, 0xe2, 0x68, 0x79, 0x49, 0x97, 0x4f, 0x48, - 0x83, 0x03, 0x11, 0xde, 0xc0, 0x11, 0x8e, 0xb4, 0x61, 0xc1, 0x48, 0x1e, 0xd1, 0x03, 0x70, 0xd8, - 0xb6, 0xec, 0x0a, 0x36, 0x29, 0xb3, 0x58, 0x8d, 0x6a, 0xaa, 0x60, 0x0f, 0x09, 0xda, 0xba, 0x20, - 0x71, 0x91, 0x08, 0xdf, 0xa8, 0x61, 0xca, 0x4c, 0x1e, 0x8a, 0x76, 0x50, 0x8a, 0xc4, 0xb4, 0x6b, - 0x5e, 0x15, 0xa3, 0x13, 0x70, 0xa4, 0x16, 0x52, 0x16, 0x61, 0xab, 0x6a, 0x5a, 0x8e, 0x13, 0x69, - 0x48, 0xc8, 0x0c, 0x27, 0xc4, 0x79, 0xc7, 0x89, 0xd0, 0x1c, 0x1c, 0xaf, 0x0b, 0xd9, 0x24, 0x08, - 0xb0, 0x1d, 0x1b, 0x1c, 0x13, 0xc2, 0x63, 0x09, 0x73, 0x51, 0xf2, 0x84, 0xe1, 0x27, 0xe1, 0x44, - 0x5d, 0x27, 0x8a, 0x81, 0x96, 0x4a, 0x87, 0x84, 0xd2, 0xa1, 0x84, 0x9b, 0x64, 0x41, 0x68, 0x3d, - 0x02, 0x0f, 0xd4, 0xb5, 0xe2, 0xb8, 0xc6, 0x85, 0xf8, 0x68, 0x42, 0x6e, 0x84, 0xe6, 0x62, 0x62, - 0xfa, 0xc4, 0x16, 0x1b, 0x4b, 0x9b, 0x90, 0xa1, 0xb9, 0x98, 0xac, 0xc6, 0x24, 0x74, 0x18, 0x0e, - 0xd8, 0x1e, 0xdb, 0x32, 0x3d, 0x47, 0xd3, 0x24, 0xa6, 0xfc, 0x71, 0xd9, 0xe1, 0xba, 0x15, 0xc6, - 0x42, 0x73, 0x13, 0x47, 0x94, 0xeb, 0x16, 0xa4, 0x2e, 0xa7, 0x3d, 0x2f, 0x49, 0xe8, 0x08, 0xcc, - 0x47, 0x34, 0x34, 0xa9, 0xf7, 0x12, 0xd6, 0x26, 0xa7, 0xc0, 0xb4, 0x62, 0x0c, 0x44, 0x34, 0x5c, - 0xf7, 0x5e, 0xc2, 0x68, 0x1c, 0xf6, 0xd3, 0xc8, 0x36, 0xbd, 0x50, 0x3b, 0x26, 0xf4, 0x72, 0x34, - 0xb2, 0x97, 0x43, 0xa1, 0x81, 0x6f, 0x98, 0xa1, 0xc5, 0x2a, 0x5a, 0x31, 0xc9, 0xd4, 0x8d, 0x2b, - 0x16, 0xab, 0x24, 0xc6, 0x6c, 0xe2, 0x60, 0xed, 0x78, 0xcc, 0xa2, 0xe1, 0x22, 0x71, 0x30, 0x3a, - 0x06, 0x21, 0x2f, 0x0b, 0xd3, 0x72, 0x71, 0xc0, 0xb4, 0x29, 0x59, 0x76, 0x9c, 0x32, 0xcf, 0x09, - 0x68, 0x1a, 0xaa, 0xdc, 0xa8, 0x4d, 0x02, 0xc6, 0x6b, 0x8f, 0x97, 0xb4, 0xf6, 0x80, 0xc4, 0x23, - 0xc2, 0x37, 0x16, 0x25, 0xf9, 0xda, 0x56, 0x88, 0x85, 0xa4, 0x58, 0x23, 0x25, 0xa9, 0xc7, 0x92, - 0x7c, 0xad, 0x86, 0xa4, 0x06, 0x07, 0x6c, 0x52, 0x0b, 0x58, 0xb4, 0xa5, 0x9d, 0x90, 0xce, 0xc4, - 0x8f, 0xe8, 0x28, 0x1c, 0x14, 0x80, 0x05, 0x56, 0x15, 0x6b, 0x0f, 0x0a, 0x5e, 0x9e, 0x13, 0xd6, - 0xac, 0x2a, 0x4e, 0xe2, 0x13, 0x88, 0x3c, 0x14, 0x23, 0x82, 0x6f, 0x08, 0x44, 0x1e, 0x84, 0xa3, - 0x49, 0x7c, 0xa6, 0xed, 0x5b, 0x94, 0x6a, 0x0f, 0xcb, 0x22, 0x8a, 0xa3, 0x5c, 0xe4, 0x34, 0xbe, - 0x85, 0xf8, 0xae, 0x30, 0x2b, 0xd8, 0x72, 0x70, 0xa4, 0x3d, 0x22, 0xb7, 0x10, 0x27, 0x5d, 0x12, - 0x14, 0x2e, 0xc0, 0x7c, 0x5a, 0xcf, 0xca, 0xb4, 0x14, 0x60, 0x3e, 0x4d, 0x92, 0x72, 0x18, 0x0e, - 0x70, 0x01, 0x1a, 0x78, 0xda, 0xa3, 0x32, 0xa1, 0xcc, 0xa7, 0xeb, 0x81, 0xc7, 0x7d, 0xe3, 0xdb, - 0x5f, 0xf8, 0x7d, 0x32, 0x8e, 0xc9, 0x09, 0x84, 0xdb, 0x47, 0xe1, 0x20, 0xf5, 0x18, 0x96, 0xbc, - 0xc7, 0x64, 0x4c, 0x9c, 0xc0, 0x99, 0x2b, 0x4a, 0x3e, 0xa3, 0x66, 0x57, 0x94, 0x7c, 0x56, 0x55, - 0x56, 0x94, 0xfc, 0xa0, 0x0a, 0x57, 0x94, 0x3c, 0x54, 0x87, 0x56, 0x94, 0xfc, 0x90, 0x3a, 0xbc, - 0xa2, 0xe4, 0x47, 0xd4, 0xd1, 0x15, 0x25, 0x3f, 0xaa, 0x1e, 0x58, 0x51, 0xf2, 0x07, 0x54, 0x75, - 0x45, 0xc9, 0x1f, 0x56, 0xb5, 0x15, 0x25, 0x7f, 0x44, 0x2d, 0xac, 0x28, 0xf9, 0xa3, 0xea, 0xa4, - 0xfe, 0xcb, 0x0c, 0x1c, 0x5d, 0x3c, 0xbf, 0xb6, 0x4a, 0xdc, 0xa4, 0x8c, 0xd1, 0xe7, 0xa0, 0xe2, - 0x13, 0x97, 0x6a, 0x60, 0x2a, 0x3b, 0x3d, 0x34, 0x77, 0x7e, 0xb6, 0x93, 0xd3, 0x65, 0xf6, 0xee, - 0xcd, 0xc9, 0x10, 0x16, 0x79, 0xb1, 0x30, 0xc2, 0x2c, 0xdf, 0xac, 0x78, 0x8c, 0x6a, 0x59, 0x91, - 0x84, 0x41, 0x41, 0xb9, 0xe4, 0x31, 0x8a, 0x0c, 0xa8, 0x58, 0xae, 0x4b, 0xb5, 0x9c, 0x58, 0xf8, - 0xd9, 0xce, 0x16, 0x6e, 0x76, 0x7e, 0x76, 0xde, 0x75, 0xe9, 0x12, 0x2f, 0x06, 0x43, 0xd8, 0x2a, - 0x7c, 0x11, 0x0e, 0xd6, 0x49, 0x48, 0x85, 0xd9, 0x17, 0xf0, 0x56, 0xdc, 0x1c, 0xf9, 0x4f, 0x74, - 0x16, 0xe6, 0x36, 0x2d, 0xbf, 0x86, 0xb5, 0xcc, 0x14, 0x98, 0x1e, 0x9a, 0x7b, 0xa8, 0x65, 0x4d, - 0x9f, 0xb8, 0xb3, 0xab, 0xc4, 0x9d, 0x77, 0xdd, 0x08, 0xbb, 0x62, 0x53, 0x8a, 0x68, 0xa4, 0xce, - 0x99, 0xcc, 0x69, 0xa0, 0xbf, 0xa6, 0xc0, 0xb1, 0x74, 0xd8, 0x86, 0x6c, 0x4d, 0xbc, 0x1b, 0xf3, - 0x8c, 0xd1, 0xd0, 0xb2, 0x71, 0xd2, 0x8d, 0xeb, 0x04, 0x74, 0x1d, 0xe6, 0x6e, 0xd4, 0x70, 0xb4, - 0xa5, 0x65, 0x44, 0xa8, 0xa7, 0x3b, 0x0e, 0xb5, 0xbe, 0xce, 0x05, 0xcf, 0x67, 0x38, 0x5a, 0x80, - 0x3f, 0xff, 0xcb, 0xad, 0x6c, 0xee, 0x0d, 0x90, 0x51, 0xa7, 0x0c, 0x69, 0x92, 0x83, 0x4c, 0x99, - 0x15, 0xc5, 0x0d, 0x2e, 0x2b, 0x97, 0x16, 0x14, 0xd1, 0xa0, 0x8e, 0xc0, 0x3c, 0x0e, 0x1c, 0xc9, - 0x94, 0xa7, 0xc0, 0x00, 0x0e, 0x1c, 0xc1, 0x7a, 0x1c, 0x2a, 0x94, 0x1f, 0x0e, 0xfc, 0x08, 0x18, - 0x9d, 0xd3, 0x5a, 0x9c, 0x5a, 0x27, 0x11, 0xbb, 0x1c, 0x39, 0x38, 0x32, 0x84, 0x14, 0x9a, 0x82, - 0x39, 0xdf, 0xab, 0x7a, 0x4c, 0x9c, 0x0e, 0x23, 0xb1, 0x27, 0x27, 0xb3, 0xda, 0xdf, 0xb2, 0x86, - 0x64, 0x20, 0x1a, 0xe7, 0x73, 0x40, 0x04, 0xb9, 0xd8, 0x7d, 0x90, 0x31, 0x98, 0x8d, 0xa4, 0x2e, - 0x14, 0xf8, 0x2a, 0x43, 0x6f, 0x83, 0xbc, 0xde, 0x1f, 0x29, 0x2a, 0xd0, 0xce, 0x89, 0x55, 0xdf, - 0x06, 0x19, 0x55, 0x8d, 0x13, 0xce, 0xee, 0x9e, 0xf0, 0xab, 0xcd, 0x09, 0x3f, 0xdb, 0xb9, 0x53, - 0x8d, 0x1a, 0x88, 0xdd, 0x4a, 0x97, 0xc1, 0xbf, 0x00, 0x3c, 0x22, 0x2b, 0xb1, 0x49, 0x2e, 0xde, - 0x51, 0xcd, 0x75, 0x0f, 0x5a, 0xeb, 0xfe, 0x0b, 0x31, 0x4e, 0xb2, 0x18, 0x96, 0xbb, 0xa9, 0xfb, - 0x5d, 0x56, 0xfb, 0xc4, 0xb7, 0xc0, 0xaf, 0xb2, 0xb0, 0x98, 0xce, 0x5a, 0x3b, 0x52, 0xf7, 0xd8, - 0x0d, 0x6b, 0xf7, 0x69, 0x37, 0xec, 0x7f, 0x07, 0x7c, 0xb5, 0xa9, 0x03, 0xad, 0x75, 0xef, 0x48, - 0x7b, 0xec, 0xff, 0x03, 0xc5, 0xfb, 0x66, 0x06, 0x8e, 0xef, 0x2a, 0x84, 0x30, 0x54, 0xf9, 0xe4, - 0x6c, 0x5a, 0x0d, 0x56, 0xbc, 0x76, 0xe7, 0x49, 0x3a, 0x6f, 0x31, 0x9c, 0x32, 0x7d, 0xa9, 0xcf, - 0x38, 0xe0, 0x34, 0x93, 0x50, 0x05, 0x1e, 0xdc, 0xf0, 0xb0, 0xef, 0x34, 0xad, 0x93, 0x15, 0xeb, - 0x3c, 0xdd, 0xf1, 0x3a, 0x17, 0xb8, 0x85, 0xe6, 0x85, 0xd4, 0x8d, 0x16, 0xda, 0x99, 0xfe, 0xdf, - 0x6c, 0x83, 0x8c, 0x0a, 0x16, 0x26, 0xa1, 0x9a, 0x5a, 0x4b, 0x4c, 0x1b, 0x28, 0x7f, 0x6b, 0x1b, - 0x64, 0x6e, 0x6f, 0x03, 0xb0, 0xa2, 0xe4, 0x81, 0x9a, 0xd1, 0x7f, 0x0c, 0x04, 0x2c, 0xdc, 0xff, - 0xf5, 0x5a, 0xf9, 0x9e, 0xfe, 0x82, 0xff, 0x86, 0xbf, 0xe0, 0xf6, 0x36, 0xc8, 0xc8, 0x31, 0x40, - 0xff, 0x5e, 0x06, 0xa2, 0x76, 0xbc, 0xf9, 0x10, 0x4f, 0x19, 0x4e, 0x5e, 0x09, 0xc4, 0x6f, 0xf4, - 0x15, 0x98, 0xa7, 0xb5, 0xb2, 0x99, 0xea, 0x3a, 0x4b, 0xbd, 0xe6, 0x73, 0x56, 0x62, 0xd3, 0x41, - 0x89, 0x0f, 0x50, 0x29, 0x59, 0x78, 0x11, 0x0e, 0xa7, 0x95, 0xee, 0x67, 0xa1, 0xb7, 0x27, 0x2b, - 0x5d, 0xe8, 0x5f, 0xcf, 0x8a, 0xc3, 0xba, 0x15, 0x79, 0xf4, 0x3c, 0xcc, 0x09, 0xe4, 0x85, 0x0b, - 0xa3, 0x73, 0xe7, 0x3a, 0x5b, 0xae, 0xf1, 0x72, 0xd7, 0xd4, 0x02, 0xae, 0x59, 0xae, 0x21, 0xcd, - 0xa1, 0x63, 0x50, 0x61, 0x24, 0x7c, 0x41, 0x44, 0x31, 0xb2, 0x30, 0xc8, 0xb1, 0x50, 0x4e, 0x66, - 0x34, 0xc7, 0x10, 0x64, 0xf4, 0x72, 0x2a, 0x0b, 0x59, 0x91, 0x85, 0x0b, 0x3d, 0x57, 0x4f, 0x0f, - 0x69, 0xb8, 0x79, 0xcf, 0x34, 0x18, 0xcd, 0x69, 0x78, 0xa6, 0x3b, 0xef, 0xf6, 0xce, 0xc3, 0x3b, - 0x00, 0x4e, 0xec, 0x2e, 0x85, 0xf0, 0xde, 0x5b, 0xeb, 0xff, 0x3b, 0x5b, 0xfe, 0xbe, 0xef, 0xab, - 0x6f, 0x01, 0xa8, 0x7e, 0x62, 0x25, 0xa3, 0x37, 0x95, 0xcc, 0xe8, 0x1f, 0xb7, 0x01, 0x38, 0xd5, - 0x52, 0x37, 0xfa, 0x37, 0xe4, 0x46, 0x6f, 0x39, 0xfd, 0x90, 0x01, 0xb3, 0xcc, 0x72, 0xef, 0x9b, - 0x43, 0xdc, 0x18, 0x3a, 0x0b, 0xfb, 0x45, 0xda, 0x64, 0x9b, 0x18, 0x5c, 0x38, 0xc1, 0x7d, 0x81, - 0x6f, 0x80, 0x01, 0x3d, 0x17, 0x65, 0xb5, 0x57, 0x40, 0x63, 0xfc, 0x4c, 0x7e, 0x69, 0xc0, 0x88, - 0x55, 0xd0, 0x75, 0x98, 0x27, 0x21, 0x8e, 0x2c, 0x46, 0x22, 0xd1, 0xcd, 0x47, 0xbb, 0x98, 0xe9, - 0xeb, 0xae, 0x5c, 0x8e, 0x2d, 0xf0, 0x57, 0x3f, 0xa3, 0x6e, 0x2f, 0x49, 0xa0, 0xfe, 0xc3, 0x2c, - 0x9c, 0x48, 0xde, 0x3d, 0x3e, 0x8d, 0x59, 0xe4, 0xd9, 0xb4, 0xb3, 0xa1, 0xe3, 0x1e, 0x43, 0x42, - 0xd2, 0x35, 0x95, 0x54, 0xd7, 0x4c, 0x0f, 0x0e, 0xb9, 0xe6, 0xc1, 0xa1, 0x06, 0x47, 0x65, 0xd9, - 0x52, 0xec, 0x63, 0x9b, 0x07, 0xdc, 0x3f, 0x95, 0x9d, 0x1e, 0x9d, 0x5b, 0xe8, 0xee, 0xed, 0x29, - 0x8e, 0x40, 0x6e, 0x8c, 0xd8, 0x52, 0x6a, 0xc6, 0x87, 0xc6, 0xc8, 0x46, 0x9a, 0x85, 0xd6, 0x61, - 0xff, 0x86, 0x48, 0x7e, 0x3c, 0x63, 0x9f, 0xed, 0x71, 0x39, 0x31, 0x3d, 0xc5, 0xa6, 0xd0, 0x3a, - 0xcc, 0xbb, 0x11, 0xa9, 0x85, 0x66, 0x79, 0x4b, 0xcb, 0x8b, 0x28, 0x4e, 0xf7, 0x64, 0x96, 0x17, - 0xd1, 0x80, 0xb0, 0xb4, 0xb0, 0xa5, 0xbf, 0x0e, 0xe0, 0xe1, 0xb6, 0x3c, 0xc5, 0xe3, 0xf1, 0x67, - 0x61, 0xce, 0x63, 0xb8, 0x9a, 0xbc, 0x71, 0xce, 0xf7, 0xb4, 0x5a, 0xd3, 0xeb, 0xa6, 0xb4, 0x57, - 0x4f, 0x62, 0xa6, 0x91, 0x44, 0xfd, 0x67, 0x19, 0x78, 0x24, 0x51, 0x5d, 0xb4, 0xec, 0x0a, 0xbe, - 0x52, 0x8b, 0x5c, 0x9c, 0xd4, 0x8c, 0xde, 0x56, 0x33, 0x0b, 0xca, 0x87, 0xdb, 0x00, 0xa4, 0x2b, - 0x47, 0x83, 0x8a, 0x78, 0x19, 0xcf, 0xa4, 0xd8, 0x82, 0x82, 0x4e, 0xc3, 0xf1, 0x90, 0x5b, 0x33, - 0x71, 0x48, 0xec, 0x8a, 0xd9, 0xb8, 0x8e, 0xcb, 0xa6, 0x44, 0xc7, 0x84, 0xc8, 0x12, 0x97, 0xb8, - 0x56, 0xbf, 0x9e, 0xd3, 0xe0, 0x40, 0x68, 0x31, 0x86, 0xa3, 0x20, 0x19, 0x49, 0xe3, 0x47, 0x74, - 0x0a, 0x42, 0x4a, 0x36, 0x98, 0x29, 0xb4, 0xc4, 0xbb, 0xd6, 0xd0, 0xdc, 0xa1, 0x16, 0x84, 0x96, - 0xaa, 0x21, 0xdb, 0xba, 0xd4, 0x67, 0x0c, 0x72, 0x49, 0x11, 0x0f, 0x57, 0xab, 0x58, 0x91, 0x13, - 0xab, 0x0d, 0xdc, 0x5d, 0x8d, 0x4b, 0x0a, 0xb5, 0x85, 0x09, 0x08, 0x65, 0x04, 0xf5, 0x4e, 0xd8, - 0x7f, 0x7b, 0x1b, 0xe4, 0x56, 0x94, 0x7c, 0x4e, 0xed, 0xd7, 0x2f, 0xc0, 0xc2, 0x6e, 0xd0, 0xc5, - 0x69, 0x9c, 0x86, 0xaa, 0xd4, 0x4d, 0xae, 0xec, 0x3c, 0xd9, 0x1d, 0x47, 0x8c, 0xd1, 0x30, 0x85, - 0xf1, 0xb2, 0xa3, 0x23, 0xa8, 0xae, 0xd7, 0xca, 0xd4, 0x8e, 0xbc, 0x72, 0x42, 0xd5, 0xc7, 0xe0, - 0xc1, 0x14, 0x4d, 0x9a, 0xd4, 0x0f, 0x41, 0xf4, 0x99, 0x80, 0xb6, 0x8a, 0x8e, 0xc3, 0xb1, 0x26, - 0x6a, 0x2c, 0xfc, 0x0a, 0x80, 0x13, 0x17, 0x31, 0x5b, 0xc7, 0xd1, 0xa6, 0x67, 0x63, 0xd9, 0x37, - 0xe4, 0x2c, 0xbb, 0x6b, 0x5a, 0xff, 0xb9, 0x0d, 0xfa, 0xee, 0x92, 0x56, 0xc1, 0x96, 0x69, 0x9d, - 0x86, 0x23, 0x54, 0x1a, 0x35, 0x49, 0xc8, 0xa3, 0xca, 0x8a, 0xe6, 0x2c, 0x45, 0x86, 0x68, 0xb2, - 0xde, 0xb2, 0xa3, 0xff, 0x24, 0x03, 0x91, 0x00, 0xa5, 0xbe, 0xfa, 0x32, 0xc3, 0x55, 0x51, 0x87, - 0x1e, 0xc3, 0xf5, 0x11, 0xcc, 0x63, 0x18, 0x3d, 0x5a, 0x47, 0xda, 0xab, 0x2f, 0x2a, 0x77, 0x7a, - 0x94, 0x7d, 0x4b, 0x01, 0xc6, 0xa0, 0xe0, 0x8a, 0xe6, 0x32, 0x01, 0xfb, 0x23, 0xec, 0xe2, 0x9b, - 0x71, 0x1d, 0x19, 0xf1, 0x13, 0x37, 0x91, 0x6a, 0x61, 0x4a, 0xbb, 0x89, 0x46, 0x3b, 0x7b, 0x0c, - 0x0e, 0x6d, 0x78, 0x81, 0x47, 0x2b, 0xa9, 0xee, 0xd5, 0x24, 0x0b, 0x25, 0x5b, 0x08, 0x1f, 0x6b, - 0xaa, 0x1d, 0x5e, 0x72, 0xf9, 0x54, 0x8d, 0xa0, 0x07, 0xe0, 0x70, 0x79, 0x8b, 0x61, 0x2a, 0xf9, - 0x8e, 0x28, 0x2e, 0xc5, 0x18, 0x12, 0x34, 0x21, 0xe1, 0xf0, 0x52, 0x90, 0x22, 0x01, 0x61, 0x89, - 0x58, 0x5e, 0x88, 0x8d, 0x0a, 0xfa, 0x1a, 0x91, 0x65, 0xea, 0xe8, 0xbf, 0x06, 0xf0, 0x50, 0x6b, - 0xc6, 0x04, 0x66, 0x7a, 0x2b, 0xe8, 0xb2, 0x94, 0xd2, 0x70, 0x8b, 0xbb, 0x68, 0x79, 0xc7, 0x9a, - 0x89, 0xef, 0xa2, 0xe5, 0xdd, 0xea, 0x15, 0x98, 0x93, 0xbe, 0x2b, 0xdd, 0xbc, 0xab, 0xb4, 0x27, - 0xee, 0x52, 0x9f, 0x21, 0x0d, 0x2d, 0x8c, 0xc3, 0x41, 0x12, 0xc6, 0x17, 0xba, 0x62, 0x5b, 0x28, - 0xb7, 0xb7, 0x41, 0x7c, 0xf3, 0xa6, 0xbf, 0xbd, 0x47, 0xe1, 0xd1, 0x10, 0xcd, 0xc2, 0x9c, 0xf8, - 0x36, 0x12, 0x8f, 0x30, 0xad, 0x77, 0x2a, 0x4b, 0x9c, 0x27, 0x4e, 0x36, 0x29, 0xc6, 0x3d, 0x97, - 0xad, 0x50, 0x4e, 0xe5, 0x67, 0x3a, 0xf3, 0x7c, 0x37, 0x00, 0xe3, 0x1e, 0xa8, 0x33, 0x58, 0x68, - 0x65, 0x53, 0x9e, 0x65, 0xc3, 0x0a, 0x5c, 0xfc, 0x9f, 0x2a, 0x21, 0xfd, 0x63, 0x00, 0xb5, 0x55, - 0x8f, 0xb6, 0x61, 0x42, 0xf7, 0xbf, 0x1b, 0x5d, 0x08, 0xb9, 0x03, 0x66, 0xc4, 0x03, 0x88, 0x33, - 0x7c, 0xae, 0x37, 0x9c, 0x1a, 0x40, 0xc8, 0x15, 0x78, 0x2f, 0x64, 0x75, 0x6c, 0x26, 0x61, 0xce, - 0xb7, 0x28, 0x0b, 0x44, 0xa8, 0x23, 0x75, 0x09, 0x49, 0x5c, 0x18, 0x83, 0x03, 0xf1, 0x17, 0x21, - 0x51, 0x0f, 0xb9, 0x54, 0x3d, 0xfc, 0x02, 0xc0, 0xf1, 0xb6, 0xa5, 0x3a, 0x2e, 0xea, 0xe3, 0x70, - 0x88, 0x6e, 0xda, 0xf5, 0x5b, 0x64, 0x31, 0x08, 0x1a, 0x90, 0x6e, 0xda, 0xc9, 0x2d, 0xf2, 0x0c, - 0x1c, 0xb6, 0x23, 0x6c, 0x31, 0xec, 0xa4, 0x66, 0x97, 0xa6, 0x4c, 0x0c, 0xc5, 0x7c, 0x91, 0xb7, - 0x12, 0x1c, 0xa9, 0x12, 0xc7, 0xdb, 0xf0, 0xb0, 0xb3, 0x57, 0x96, 0x87, 0x13, 0x01, 0x91, 0xbb, - 0xef, 0xee, 0x99, 0xbb, 0x1e, 0x0a, 0xfa, 0x6a, 0x73, 0x41, 0x9f, 0xed, 0x31, 0x51, 0xa9, 0x8a, - 0x3e, 0x59, 0x81, 0xda, 0x5e, 0x03, 0x22, 0x3a, 0x01, 0x8f, 0x2f, 0x9e, 0x5f, 0x33, 0xe7, 0x17, - 0x17, 0x97, 0xd6, 0xd7, 0xcd, 0xd5, 0xcb, 0x17, 0xcd, 0xcb, 0x57, 0x96, 0x8c, 0xf9, 0x6b, 0x97, - 0x0d, 0xf3, 0xda, 0xe7, 0xaf, 0x2c, 0x99, 0xcb, 0x6b, 0x6a, 0x1f, 0x7a, 0x04, 0x9e, 0xb8, 0xab, - 0xd0, 0xda, 0xe5, 0x6b, 0x5c, 0x10, 0xcc, 0xfd, 0xe0, 0x20, 0x1c, 0x5c, 0x14, 0x1f, 0x5b, 0xe7, - 0xaf, 0x2c, 0xa3, 0x8f, 0x01, 0x84, 0x8d, 0x79, 0x03, 0x3d, 0xd3, 0xe3, 0x98, 0x22, 0xce, 0xb0, - 0xc2, 0xa7, 0xf6, 0x35, 0xe4, 0xe8, 0x64, 0xe7, 0x5d, 0xed, 0xd1, 0x4d, 0x4c, 0x67, 0x3c, 0x32, - 0x13, 0x46, 0xe4, 0xe6, 0xd6, 0x4c, 0x84, 0x2d, 0xe7, 0xf1, 0xa9, 0x8d, 0x53, 0x37, 0xed, 0x19, - 0xdb, 0x09, 0x66, 0xca, 0x16, 0xf5, 0xec, 0x99, 0x2a, 0x09, 0x3c, 0x46, 0xa2, 0x57, 0x7f, 0xff, - 0xe7, 0xef, 0x64, 0x9e, 0xd1, 0x9f, 0x8a, 0x3f, 0x20, 0x97, 0xea, 0xdb, 0x8c, 0x96, 0xbe, 0x5c, - 0xff, 0xfd, 0x72, 0xfb, 0x17, 0xc8, 0xaa, 0x5c, 0xf5, 0x0c, 0x38, 0x89, 0xbe, 0x99, 0x81, 0x23, - 0x4d, 0xc7, 0x3e, 0x7a, 0xae, 0xbb, 0x08, 0xda, 0x66, 0xad, 0xc2, 0xb9, 0xde, 0x0d, 0xc4, 0x28, - 0xbc, 0xb8, 0xf3, 0xae, 0xf6, 0xf0, 0xbd, 0x51, 0xa8, 0x51, 0x2c, 0x21, 0xb8, 0xa8, 0x2f, 0x74, - 0x0b, 0x81, 0x60, 0xbe, 0x5c, 0x12, 0x1f, 0x25, 0x67, 0xc4, 0x59, 0xc0, 0xd1, 0xf8, 0x2b, 0x80, - 0x83, 0xf5, 0x69, 0x05, 0x75, 0xf8, 0x62, 0xda, 0x3a, 0xf2, 0x14, 0x9e, 0xea, 0x5a, 0x2f, 0x8e, - 0xfb, 0xc6, 0xce, 0xbb, 0x5a, 0x49, 0x04, 0x59, 0xf6, 0x7c, 0xdf, 0x0b, 0xdc, 0xc7, 0xa7, 0x36, - 0x89, 0xcf, 0x6c, 0x12, 0x50, 0xe2, 0x63, 0x11, 0x79, 0x3c, 0x1e, 0x89, 0x0e, 0x35, 0x53, 0x75, - 0xab, 0x4c, 0x00, 0x70, 0x5a, 0x7f, 0x62, 0x17, 0x00, 0xe8, 0x16, 0x65, 0xb8, 0x5a, 0xf2, 0x39, - 0xd0, 0x5c, 0xb9, 0x64, 0x39, 0x0e, 0x09, 0x4a, 0xf5, 0x09, 0x8b, 0x47, 0xfc, 0x0f, 0x00, 0x87, - 0x52, 0x43, 0x17, 0xea, 0xf0, 0x4c, 0x6d, 0x9f, 0xde, 0x0a, 0x4f, 0xf7, 0xa0, 0x19, 0xc7, 0x4d, - 0x7b, 0x8d, 0xfb, 0x8c, 0x7e, 0xaa, 0xf3, 0xb8, 0x6b, 0x41, 0x53, 0xe4, 0x7f, 0x07, 0xa2, 0xf2, - 0x1b, 0x1f, 0xb6, 0xd0, 0xd3, 0x3d, 0x7f, 0xc9, 0x28, 0x3c, 0xd9, 0xcb, 0x47, 0x2d, 0x11, 0x77, - 0x97, 0xbb, 0xfd, 0x9c, 0x7e, 0xb6, 0xdb, 0x52, 0x6f, 0xdc, 0x05, 0x88, 0x1d, 0xff, 0x4e, 0x06, - 0x4e, 0xee, 0x71, 0xb5, 0x7d, 0x55, 0x5c, 0xb3, 0x9f, 0xbf, 0x1f, 0xd7, 0xe3, 0x85, 0xe7, 0xf6, - 0xf9, 0xb9, 0x43, 0xff, 0x1a, 0x78, 0xef, 0xa7, 0x19, 0xd0, 0x3d, 0x42, 0xab, 0xfa, 0xc5, 0x7d, - 0x20, 0x54, 0x4a, 0x5d, 0x1b, 0x71, 0xb4, 0xbe, 0x9f, 0x81, 0xe3, 0xbb, 0x1e, 0x9a, 0xe8, 0xd9, - 0x4e, 0xdb, 0xdc, 0xee, 0xd3, 0x52, 0x61, 0x5f, 0xfa, 0x34, 0xd4, 0x5f, 0xef, 0x01, 0x9b, 0x75, - 0x7d, 0xad, 0x5b, 0x6c, 0x7c, 0x8f, 0xb2, 0x99, 0x78, 0x8e, 0x99, 0x21, 0x75, 0x0f, 0x66, 0xe4, - 0xcc, 0xcc, 0x21, 0x7a, 0x2b, 0x03, 0xc7, 0x76, 0x19, 0x93, 0x3b, 0x3d, 0x48, 0x77, 0x7f, 0xb5, - 0x2b, 0xec, 0x43, 0x9b, 0x86, 0xfa, 0x6b, 0x3d, 0x80, 0x73, 0x55, 0x5f, 0xed, 0x16, 0x1c, 0x17, - 0xef, 0x82, 0x4d, 0x03, 0x9a, 0xc2, 0x99, 0x5b, 0xdb, 0x20, 0xfb, 0xbb, 0x6d, 0xf0, 0x58, 0x47, - 0xb1, 0x5c, 0x2e, 0x7f, 0x09, 0xdb, 0xec, 0xd5, 0xdf, 0x6a, 0xd9, 0x5b, 0x00, 0x2c, 0xbc, 0x09, - 0x6e, 0x7f, 0x50, 0xec, 0x7b, 0xff, 0x83, 0x62, 0xdf, 0x47, 0x1f, 0x14, 0xc1, 0x2b, 0x3b, 0x45, - 0xf0, 0xa3, 0x9d, 0x22, 0x78, 0x6f, 0xa7, 0x08, 0x6e, 0xef, 0x14, 0xc1, 0x9f, 0x76, 0x8a, 0xe0, - 0xc3, 0x9d, 0x62, 0xdf, 0x47, 0x3b, 0x45, 0xf0, 0xed, 0x3b, 0xc5, 0xbe, 0x5b, 0x77, 0x8a, 0xe0, - 0xf6, 0x9d, 0x62, 0xdf, 0xfb, 0x77, 0x8a, 0x7d, 0xd7, 0xaf, 0xbb, 0x24, 0x7c, 0xc1, 0x9d, 0xe5, - 0x3d, 0x14, 0x47, 0x91, 0x35, 0x5b, 0xa3, 0x25, 0xf1, 0x63, 0x83, 0x44, 0x55, 0x8e, 0xc6, 0xa6, - 0xe7, 0xe0, 0x68, 0x26, 0x61, 0x97, 0xc2, 0xb2, 0x4b, 0x4a, 0xf8, 0x26, 0x8b, 0xff, 0xb6, 0x74, - 0xd7, 0x7f, 0x2f, 0x95, 0xfb, 0xc5, 0x1f, 0x97, 0x9e, 0xf8, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x94, 0x43, 0x5c, 0x55, 0xda, 0x26, 0x00, 0x00, + // 3085 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x3a, 0x5d, 0x6c, 0x1c, 0x57, + 0xb9, 0x3e, 0xbb, 0xb3, 0xf6, 0xec, 0xf1, 0x4f, 0xa6, 0xc7, 0xb1, 0x33, 0xd9, 0x38, 0x1b, 0x77, + 0xd2, 0xde, 0xba, 0x49, 0xd7, 0x7b, 0x95, 0x36, 0xb7, 0x69, 0xd2, 0xdb, 0xc6, 0x76, 0x9c, 0xc4, + 0x96, 0xaf, 0x93, 0x8c, 0x73, 0x7b, 0x6f, 0x23, 0xdd, 0x3b, 0x1a, 0xcf, 0x1c, 0xcf, 0x0e, 0x99, + 0x9d, 0x33, 0x99, 0x73, 0xd6, 0x8d, 0x0b, 0x45, 0x51, 0x05, 0x08, 0x5e, 0x10, 0x2a, 0x7d, 0x40, + 0x95, 0x50, 0x1f, 0xf8, 0x11, 0x52, 0x85, 0x78, 0x00, 0x21, 0xc0, 0x80, 0x02, 0x2f, 0xad, 0x78, + 0x40, 0x16, 0x48, 0xa8, 0x82, 0x07, 0xa8, 0xc3, 0x43, 0x79, 0xa2, 0x0f, 0x48, 0xfc, 0x3c, 0xa1, + 0x73, 0xce, 0xcc, 0xee, 0xec, 0xda, 0x4e, 0xd6, 0x4e, 0x08, 0xe2, 0x6d, 0xe7, 0xfb, 0xff, 0x3b, + 0xdf, 0xf9, 0xce, 0x39, 0x0b, 0xcf, 0xac, 0x62, 0x3a, 0xe9, 0x93, 0x2a, 0x75, 0x6a, 0xb8, 0x6e, + 0x57, 0x57, 0x7d, 0xfc, 0x0a, 0xad, 0x3a, 0x6e, 0x68, 0x05, 0xc4, 0x76, 0x97, 0xed, 0xc0, 0x0e, + 0x1d, 0x1c, 0x57, 0xa3, 0xc6, 0x72, 0xe0, 0x3b, 0x96, 0xd3, 0xa0, 0x8c, 0xd4, 0xed, 0xc8, 0x9f, + 0x8c, 0x62, 0xc2, 0x08, 0x7a, 0x4c, 0x32, 0x4f, 0x4a, 0xe6, 0x49, 0xc1, 0x3c, 0xd9, 0xc9, 0x5c, + 0xaa, 0x78, 0x3e, 0xab, 0x35, 0x96, 0x27, 0x1d, 0x52, 0xaf, 0x7a, 0xc4, 0x23, 0x55, 0xc1, 0xbc, + 0xdc, 0x58, 0x11, 0x5f, 0xe2, 0x43, 0xfc, 0x92, 0x42, 0x4b, 0x63, 0x1e, 0x21, 0x5e, 0x80, 0xab, + 0x76, 0xe4, 0x57, 0xed, 0x30, 0x24, 0xcc, 0x66, 0x3e, 0x09, 0x69, 0x82, 0x2d, 0xb5, 0xdb, 0x8b, + 0xe3, 0x98, 0xc4, 0x29, 0x6e, 0xa2, 0x1d, 0x17, 0x10, 0xaf, 0x6a, 0x3b, 0x0e, 0xa6, 0xd4, 0xe2, + 0x3f, 0xd9, 0x5a, 0x84, 0x53, 0xca, 0xc3, 0x5b, 0x29, 0xb3, 0xe8, 0x43, 0xed, 0x68, 0x12, 0x65, + 0x2d, 0x38, 0xd8, 0x8e, 0xcc, 0xf2, 0x8d, 0x75, 0x04, 0xd3, 0x0e, 0x7c, 0xd7, 0x66, 0x38, 0xc1, + 0x1a, 0x1d, 0x58, 0x4c, 0x71, 0xb8, 0xda, 0x21, 0x7c, 0x7c, 0x6b, 0x3a, 0xac, 0x76, 0x8a, 0xee, + 0x12, 0xb6, 0x83, 0xdf, 0xff, 0xde, 0x15, 0x73, 0x86, 0xc3, 0xf8, 0x95, 0x0a, 0xcb, 0x0b, 0x7e, + 0x60, 0x3b, 0x33, 0xe7, 0x16, 0xa7, 0x84, 0xd0, 0x05, 0xe2, 0x51, 0x13, 0xd3, 0x88, 0x84, 0x14, + 0x9f, 0xb3, 0x99, 0x8d, 0xc6, 0x60, 0x91, 0xf9, 0x75, 0x4c, 0x99, 0x5d, 0x8f, 0x74, 0x30, 0x0e, + 0x26, 0x8a, 0x66, 0x0b, 0x80, 0x8e, 0xc0, 0x7e, 0x27, 0xf0, 0x71, 0xc8, 0xac, 0x88, 0xc4, 0x4c, + 0x57, 0x04, 0x1e, 0x4a, 0xd0, 0x65, 0x12, 0x33, 0x84, 0xa0, 0x52, 0x23, 0x94, 0xe9, 0x05, 0x81, + 0x11, 0xbf, 0x39, 0xac, 0x41, 0x71, 0xac, 0xf7, 0x4a, 0x18, 0xff, 0x8d, 0x46, 0x61, 0xaf, 0x30, + 0x1b, 0xeb, 0x7d, 0x02, 0x9a, 0x7c, 0x71, 0x78, 0x1d, 0xb3, 0x1a, 0x71, 0x75, 0x55, 0xc2, 0xe5, + 0x17, 0xd2, 0x61, 0x5f, 0x8c, 0x57, 0x70, 0x8c, 0x63, 0x7d, 0x40, 0x20, 0xd2, 0x4f, 0xf4, 0x28, + 0x1c, 0x70, 0x6c, 0xa7, 0x86, 0x2d, 0xca, 0x6c, 0xd6, 0xa0, 0xba, 0x26, 0xd0, 0xfd, 0x02, 0xb6, + 0x24, 0x40, 0x9c, 0x24, 0xc6, 0x37, 0x1a, 0x98, 0x32, 0x8b, 0xbb, 0xa2, 0x3f, 0x22, 0x49, 0x12, + 0xd8, 0x55, 0xbf, 0x8e, 0xd1, 0x51, 0x38, 0xd8, 0x88, 0x28, 0x8b, 0xb1, 0x5d, 0xb7, 0x6c, 0xd7, + 0x8d, 0x75, 0x24, 0x68, 0x06, 0x52, 0xe0, 0x94, 0xeb, 0xc6, 0xe8, 0x04, 0x1c, 0x69, 0x12, 0x39, + 0x24, 0x0c, 0xb1, 0x93, 0x08, 0x1c, 0x16, 0xc4, 0xc3, 0x29, 0x72, 0x46, 0xe2, 0x84, 0xe0, 0x67, + 0xe0, 0x68, 0x93, 0x27, 0x4e, 0x02, 0x2d, 0x99, 0xf6, 0x0b, 0xa6, 0xfd, 0x29, 0x36, 0xcd, 0x82, + 0xe0, 0x7a, 0x02, 0xee, 0x6b, 0x72, 0x25, 0x7e, 0x8d, 0x08, 0xf2, 0xa1, 0x14, 0xdc, 0x72, 0xcd, + 0xc3, 0xc4, 0x0a, 0x88, 0x23, 0x16, 0x96, 0x3e, 0x2a, 0x5d, 0xf3, 0x30, 0x59, 0x48, 0x40, 0xe8, + 0x00, 0xec, 0x73, 0x7c, 0xb6, 0x66, 0xf9, 0xae, 0xae, 0xcb, 0x98, 0xf2, 0xcf, 0x39, 0x97, 0xf3, + 0xd6, 0x18, 0x8b, 0xac, 0x55, 0x1c, 0x53, 0xce, 0x5b, 0x92, 0xbc, 0x1c, 0xf6, 0x92, 0x04, 0xa1, + 0x83, 0x50, 0x8d, 0x69, 0x64, 0x51, 0xff, 0x55, 0xac, 0x8f, 0x8d, 0x83, 0x09, 0xc5, 0xec, 0x8b, + 0x69, 0xb4, 0xe4, 0xbf, 0x8a, 0xd1, 0x08, 0xec, 0xa5, 0xb1, 0x63, 0xf9, 0x91, 0x7e, 0x58, 0xf0, + 0x15, 0x68, 0xec, 0xcc, 0x45, 0x82, 0x03, 0xdf, 0xb0, 0x22, 0x9b, 0xd5, 0xf4, 0x72, 0x9a, 0xa9, + 0x1b, 0x97, 0x6d, 0x56, 0x4b, 0x85, 0x39, 0xc4, 0xc5, 0xfa, 0x91, 0x04, 0x45, 0xa3, 0x19, 0xe2, + 0x62, 0x74, 0x18, 0x42, 0x5e, 0x16, 0x96, 0xed, 0xe1, 0x90, 0xe9, 0xe3, 0xb2, 0xec, 0x38, 0x64, + 0x8a, 0x03, 0xd0, 0x04, 0xd4, 0xb8, 0x50, 0x87, 0x84, 0x8c, 0xd7, 0x1e, 0x2f, 0x69, 0xfd, 0x51, + 0x19, 0x8f, 0x18, 0xdf, 0x98, 0x91, 0xe0, 0xab, 0x6b, 0x11, 0x16, 0x94, 0x42, 0x47, 0x86, 0xd2, + 0x48, 0x28, 0xb9, 0xae, 0x16, 0xa5, 0x0e, 0xfb, 0x1c, 0xd2, 0x08, 0x59, 0xbc, 0xa6, 0x1f, 0x95, + 0xc6, 0x24, 0x9f, 0xe8, 0x10, 0x2c, 0x8a, 0x80, 0x85, 0x76, 0x1d, 0xeb, 0x8f, 0x09, 0x9c, 0xca, + 0x01, 0x8b, 0x76, 0x1d, 0xa7, 0xfe, 0x89, 0x88, 0x3c, 0x9e, 0x44, 0x04, 0xdf, 0x10, 0x11, 0x79, + 0x0c, 0x0e, 0xa5, 0xfe, 0x59, 0x4e, 0x60, 0x53, 0xaa, 0xff, 0x9b, 0x2c, 0xa2, 0xc4, 0xcb, 0x19, + 0x0e, 0xe3, 0x4b, 0x88, 0xaf, 0x0a, 0xab, 0x86, 0x6d, 0x17, 0xc7, 0xfa, 0x13, 0x72, 0x09, 0x71, + 0xd0, 0x45, 0x01, 0xe1, 0x04, 0x2c, 0xa0, 0xcd, 0xac, 0x4c, 0x48, 0x02, 0x16, 0xd0, 0x34, 0x29, + 0x07, 0x60, 0x1f, 0x27, 0xa0, 0xa1, 0xaf, 0x3f, 0x29, 0x13, 0xca, 0x02, 0xba, 0x14, 0xfa, 0xdc, + 0x36, 0xbe, 0xfc, 0x85, 0xdd, 0xc7, 0x12, 0x9f, 0xdc, 0x50, 0x98, 0x7d, 0x08, 0x16, 0xa9, 0xcf, + 0xb0, 0xc4, 0x1d, 0x97, 0x3e, 0x71, 0x00, 0x47, 0xce, 0x2b, 0x6a, 0x4e, 0xcb, 0xcf, 0x2b, 0x6a, + 0x5e, 0x53, 0xe6, 0x15, 0xb5, 0xa8, 0xc1, 0x79, 0x45, 0x85, 0x5a, 0xff, 0xbc, 0xa2, 0xf6, 0x6b, + 0x03, 0xf3, 0x8a, 0x3a, 0xa8, 0x0d, 0xcd, 0x2b, 0xea, 0x90, 0xb6, 0x6f, 0x5e, 0x51, 0xf7, 0x69, + 0xda, 0xbc, 0xa2, 0x1e, 0xd0, 0xf4, 0x79, 0x45, 0x3d, 0xa8, 0x95, 0xe6, 0x15, 0xf5, 0x90, 0x36, + 0x66, 0xfc, 0x28, 0x07, 0x87, 0x66, 0xce, 0x2d, 0x2e, 0x10, 0x2f, 0x2d, 0x63, 0xf4, 0xbf, 0x50, + 0x09, 0x88, 0x47, 0x75, 0x30, 0x9e, 0x9f, 0xe8, 0x3f, 0x71, 0x6e, 0xb2, 0x9b, 0xdd, 0x65, 0xf2, + 0xee, 0xcd, 0xc9, 0x14, 0x12, 0x79, 0xb1, 0x30, 0xc2, 0xec, 0xc0, 0xaa, 0xf9, 0x8c, 0xea, 0x79, + 0x91, 0x84, 0xa2, 0x80, 0x5c, 0xf4, 0x19, 0x45, 0x26, 0x54, 0x6c, 0xcf, 0xa3, 0x7a, 0x41, 0x28, + 0x7e, 0xa1, 0x3b, 0xc5, 0xed, 0xc6, 0x4f, 0x4e, 0x79, 0x1e, 0x9d, 0xe5, 0xc5, 0x60, 0x0a, 0x59, + 0xa5, 0xff, 0x87, 0xc5, 0x26, 0x08, 0x69, 0x30, 0x7f, 0x1d, 0xaf, 0x25, 0xcd, 0x91, 0xff, 0x44, + 0x67, 0x60, 0x61, 0xd5, 0x0e, 0x1a, 0x58, 0xcf, 0x8d, 0x83, 0x89, 0xfe, 0x13, 0x8f, 0x77, 0xe8, + 0x0c, 0x88, 0x37, 0xb9, 0x40, 0xbc, 0x29, 0xcf, 0x8b, 0xb1, 0x27, 0x16, 0xa5, 0xf0, 0x46, 0xf2, + 0x9c, 0xce, 0x9d, 0x02, 0xc6, 0xa7, 0x14, 0x38, 0x9c, 0x75, 0xdb, 0x94, 0xad, 0x89, 0x77, 0x63, + 0x9e, 0x31, 0x1a, 0xd9, 0x0e, 0x4e, 0xbb, 0x71, 0x13, 0x80, 0xae, 0xc1, 0xc2, 0x8d, 0x06, 0x8e, + 0xd7, 0xf4, 0x9c, 0x70, 0xf5, 0x54, 0xd7, 0xae, 0x36, 0xf5, 0x9c, 0xf7, 0x03, 0x86, 0xe3, 0x69, + 0xf8, 0x83, 0x3f, 0xdc, 0xce, 0x17, 0xde, 0x00, 0x39, 0x6d, 0xdc, 0x94, 0x22, 0x79, 0x90, 0x29, + 0xb3, 0xe3, 0xa4, 0xc1, 0xe5, 0xa5, 0x6a, 0x01, 0x11, 0x0d, 0xea, 0x20, 0x54, 0x71, 0xe8, 0x4a, + 0xa4, 0xdc, 0x05, 0xfa, 0x70, 0xe8, 0x0a, 0xd4, 0x53, 0x50, 0xa1, 0x7c, 0x73, 0xe0, 0x5b, 0xc0, + 0xd0, 0x09, 0xbd, 0xc3, 0xa8, 0x25, 0x12, 0xb3, 0x4b, 0xb1, 0x8b, 0x63, 0x53, 0x50, 0xa1, 0x71, + 0x58, 0x08, 0xfc, 0xba, 0xcf, 0xc4, 0xee, 0x30, 0x98, 0x58, 0x72, 0x2c, 0xaf, 0xff, 0x29, 0x6f, + 0x4a, 0x04, 0xa2, 0x49, 0x3e, 0xfb, 0x84, 0x93, 0x33, 0xbb, 0x77, 0x32, 0x09, 0x66, 0x2b, 0xa9, + 0xd3, 0x25, 0xae, 0xa5, 0xff, 0x2d, 0xa0, 0x1a, 0xbd, 0xb1, 0xa2, 0x01, 0xfd, 0xac, 0xd0, 0xfa, + 0x16, 0xc8, 0x69, 0x5a, 0x92, 0x70, 0x76, 0xf7, 0x84, 0x5f, 0x69, 0x4f, 0xf8, 0x99, 0xee, 0x8d, + 0x6a, 0xd5, 0x40, 0x62, 0x56, 0xb6, 0x0c, 0xfe, 0x0a, 0xe0, 0x41, 0x59, 0x89, 0x6d, 0x74, 0xc9, + 0x8a, 0x6a, 0xaf, 0x7b, 0xd0, 0x59, 0xf7, 0xff, 0x97, 0xc4, 0x49, 0x16, 0xc3, 0xdc, 0x6e, 0xea, + 0x7e, 0x1b, 0x6d, 0x0f, 0x7d, 0x09, 0xfc, 0x38, 0x0f, 0xcb, 0xd9, 0xac, 0x6d, 0x8d, 0xd4, 0x3d, + 0x56, 0xc3, 0xe2, 0x03, 0x5a, 0x0d, 0xf7, 0xbf, 0x02, 0x3e, 0xd9, 0xd6, 0x81, 0x16, 0x77, 0x6f, + 0xc8, 0x56, 0xdf, 0xff, 0x05, 0x8a, 0xf7, 0xcd, 0x1c, 0x1c, 0xd9, 0x96, 0x08, 0x61, 0xa8, 0xf1, + 0xc9, 0xd9, 0xb2, 0x5b, 0xa8, 0x44, 0x77, 0xf7, 0x49, 0x3a, 0x67, 0x33, 0x9c, 0x11, 0x7d, 0xb1, + 0xc7, 0xdc, 0xe7, 0xb6, 0x83, 0x50, 0x0d, 0x3e, 0xb2, 0xe2, 0xe3, 0xc0, 0x6d, 0xd3, 0x93, 0x17, + 0x7a, 0x9e, 0xeb, 0x5a, 0xcf, 0x79, 0x2e, 0xa1, 0x5d, 0x91, 0xb6, 0xd2, 0x01, 0x3b, 0xdd, 0xfb, + 0xb3, 0x75, 0x90, 0xd3, 0xc0, 0xf4, 0x18, 0xd4, 0x32, 0xba, 0xc4, 0xb4, 0x81, 0xd4, 0xdb, 0xeb, + 0x20, 0xb7, 0xb1, 0x0e, 0xc0, 0xbc, 0xa2, 0x02, 0x2d, 0x67, 0x7c, 0x13, 0x88, 0xb0, 0x70, 0xfb, + 0x97, 0x1a, 0xcb, 0xf7, 0xb4, 0x17, 0xfc, 0x33, 0xec, 0x05, 0x1b, 0xeb, 0x20, 0x27, 0xc7, 0x00, + 0xe3, 0xed, 0x1c, 0x44, 0x5b, 0xe3, 0xcd, 0x87, 0x78, 0xca, 0x70, 0x7a, 0x24, 0x10, 0xbf, 0xd1, + 0x27, 0xa0, 0x4a, 0x1b, 0xcb, 0x56, 0xa6, 0xeb, 0xcc, 0xee, 0x35, 0x9f, 0x93, 0x32, 0x36, 0x5d, + 0x94, 0x78, 0x1f, 0x95, 0x94, 0xa5, 0x57, 0xe0, 0x40, 0x96, 0xe9, 0x41, 0x16, 0xfa, 0xd6, 0x64, + 0x65, 0x0b, 0xfd, 0xd3, 0x79, 0xb1, 0x59, 0x77, 0x46, 0x1e, 0xbd, 0x04, 0x0b, 0x22, 0xf2, 0xc2, + 0x84, 0xa1, 0x13, 0x67, 0xbb, 0x53, 0xd7, 0x3a, 0xdc, 0xb5, 0xb5, 0x80, 0xab, 0xb6, 0x67, 0x4a, + 0x71, 0xe8, 0x30, 0x54, 0x18, 0x89, 0xae, 0x0b, 0x2f, 0x06, 0xa7, 0x8b, 0x3c, 0x16, 0xca, 0xb1, + 0x9c, 0xee, 0x9a, 0x02, 0x8c, 0x5e, 0xcb, 0x64, 0x21, 0x2f, 0xb2, 0x70, 0x7e, 0xcf, 0xd5, 0xb3, + 0x87, 0x34, 0xdc, 0xbc, 0x67, 0x1a, 0xcc, 0xf6, 0x34, 0x3c, 0xbf, 0x3b, 0xeb, 0x76, 0xce, 0xc3, + 0x3b, 0x00, 0x8e, 0x6e, 0x4f, 0x85, 0xf0, 0xce, 0x4b, 0xeb, 0x3f, 0xba, 0x53, 0xff, 0xc0, 0xd7, + 0xd5, 0xe7, 0x01, 0xd4, 0x1e, 0x5a, 0xc9, 0x18, 0x6d, 0x25, 0x33, 0xf4, 0xeb, 0x75, 0x00, 0x4e, + 0x76, 0xd4, 0x8d, 0xf1, 0x39, 0xb9, 0xd0, 0x3b, 0x76, 0x3f, 0x64, 0xc2, 0x3c, 0xb3, 0xbd, 0x07, + 0x66, 0x10, 0x17, 0x86, 0xce, 0xc0, 0x5e, 0x91, 0x36, 0xd9, 0x26, 0x8a, 0xd3, 0x47, 0xb9, 0x2d, + 0xf0, 0x0d, 0xd0, 0x67, 0x14, 0xe2, 0xbc, 0x7e, 0x0b, 0xb4, 0xc6, 0xcf, 0xf4, 0x97, 0x0e, 0xcc, + 0x84, 0x05, 0x5d, 0x83, 0x2a, 0x89, 0x70, 0x6c, 0x33, 0x12, 0x8b, 0x6e, 0x3e, 0xb4, 0x8b, 0x99, + 0xbe, 0x69, 0xca, 0xa5, 0x44, 0x02, 0x3f, 0xfa, 0x99, 0x4d, 0x79, 0x69, 0x02, 0x8d, 0xaf, 0xe5, + 0xe1, 0x68, 0x7a, 0xf6, 0xf8, 0x2f, 0xcc, 0x62, 0xdf, 0xa1, 0xdd, 0x0d, 0x1d, 0xf7, 0x18, 0x12, + 0xd2, 0xae, 0xa9, 0x64, 0xba, 0x66, 0x76, 0x70, 0x28, 0xb4, 0x0f, 0x0e, 0x0d, 0x38, 0x24, 0xcb, + 0x96, 0xe2, 0x00, 0x3b, 0xdc, 0xe1, 0xde, 0xf1, 0xfc, 0xc4, 0xd0, 0x89, 0xe9, 0xdd, 0x9d, 0x9e, + 0x12, 0x0f, 0xe4, 0xc2, 0x48, 0x24, 0x65, 0x66, 0x7c, 0x68, 0x0e, 0xae, 0x64, 0x51, 0x68, 0x09, + 0xf6, 0xae, 0x88, 0xe4, 0x27, 0x33, 0xf6, 0x99, 0x3d, 0xaa, 0x13, 0xd3, 0x53, 0x22, 0x0a, 0x2d, + 0x41, 0xd5, 0x8b, 0x49, 0x23, 0xb2, 0x96, 0xd7, 0x74, 0x55, 0x78, 0x71, 0x6a, 0x4f, 0x62, 0x79, + 0x11, 0xf5, 0x09, 0x49, 0xd3, 0x6b, 0xc6, 0x67, 0x00, 0x3c, 0xb0, 0x25, 0x4f, 0xc9, 0x78, 0xfc, + 0x3f, 0xb0, 0xe0, 0x33, 0x5c, 0x4f, 0x4f, 0x9c, 0x53, 0x7b, 0xd2, 0xd6, 0x76, 0xdc, 0x94, 0xf2, + 0x9a, 0x49, 0xcc, 0xb5, 0x92, 0x68, 0xfc, 0x36, 0x0f, 0x0f, 0xa6, 0xac, 0x33, 0xb6, 0x53, 0xc3, + 0x97, 0x1b, 0xb1, 0x87, 0xd3, 0x9a, 0x31, 0xb6, 0xd4, 0xcc, 0xb4, 0xf2, 0xe1, 0x3a, 0x00, 0xd9, + 0xca, 0xd1, 0xa1, 0x22, 0x0e, 0xe3, 0xb9, 0x0c, 0x5a, 0x40, 0xd0, 0x29, 0x38, 0x12, 0x71, 0x69, + 0x16, 0x8e, 0x88, 0x53, 0xb3, 0x5a, 0xd7, 0x71, 0xf9, 0x0c, 0xe9, 0xb0, 0x20, 0x99, 0xe5, 0x14, + 0x57, 0x9b, 0xd7, 0x73, 0x4f, 0xc3, 0xa2, 0xe4, 0xb4, 0x83, 0x40, 0x2f, 0x8a, 0x76, 0xb7, 0xbf, + 0x23, 0x0c, 0xb3, 0xf5, 0x88, 0xad, 0x5d, 0xec, 0x31, 0x55, 0x41, 0x38, 0x15, 0x04, 0x08, 0xc1, + 0x7c, 0x23, 0x0e, 0x74, 0xc8, 0x85, 0x5f, 0xec, 0x31, 0xf9, 0x07, 0x9a, 0x80, 0x6a, 0x8d, 0x50, + 0x26, 0x0c, 0xec, 0x17, 0x5a, 0x65, 0xf9, 0xc4, 0xf9, 0xcf, 0xe6, 0x00, 0xe7, 0x4e, 0xb1, 0xe8, + 0x38, 0xec, 0x8b, 0x6c, 0xc6, 0x70, 0x1c, 0xca, 0x22, 0x9f, 0xde, 0x27, 0xd6, 0x76, 0xac, 0x6a, + 0x40, 0xbf, 0x95, 0xbb, 0x0d, 0x38, 0x75, 0x4a, 0x81, 0x4e, 0x42, 0x48, 0xc9, 0x0a, 0xb3, 0x84, + 0x6e, 0x71, 0xe2, 0xdb, 0xc9, 0x40, 0x60, 0x16, 0x39, 0xa5, 0x88, 0x2a, 0x67, 0xab, 0xd9, 0xb1, + 0x9b, 0xb0, 0xf5, 0xdd, 0x9d, 0x8d, 0x53, 0x0a, 0xb6, 0x69, 0x1d, 0x0e, 0x24, 0x8a, 0x5b, 0x1d, + 0xb9, 0xb8, 0xb1, 0x0e, 0xd4, 0xe9, 0x51, 0x08, 0x65, 0x9c, 0x9a, 0xf0, 0xde, 0x8d, 0x75, 0x50, + 0x98, 0x57, 0x54, 0x55, 0x2b, 0xce, 0x2b, 0x6a, 0x41, 0xeb, 0x35, 0xce, 0xc3, 0xd2, 0x76, 0x09, + 0x4e, 0x8a, 0x6d, 0x02, 0x6a, 0x52, 0x42, 0x7a, 0xb1, 0xe8, 0xcb, 0x1e, 0x3e, 0x68, 0x0e, 0x45, + 0x99, 0x4a, 0x98, 0x73, 0x0d, 0x04, 0xb5, 0xa5, 0xc6, 0x32, 0x75, 0x62, 0x7f, 0x39, 0x85, 0x1a, + 0xc3, 0xf0, 0x91, 0x0c, 0x4c, 0x8a, 0x34, 0xf6, 0x43, 0xf4, 0xdf, 0x21, 0xed, 0x24, 0x1d, 0x81, + 0xc3, 0x6d, 0xd0, 0x84, 0xf8, 0x16, 0x80, 0xa3, 0x17, 0x30, 0x5b, 0xc2, 0xf1, 0xaa, 0xef, 0x60, + 0xd9, 0xdd, 0xe4, 0xc4, 0xbd, 0x6d, 0xf1, 0xfd, 0x65, 0x1d, 0xf4, 0xdc, 0xa5, 0xf8, 0x04, 0x5a, + 0x16, 0xdf, 0x04, 0x1c, 0xa4, 0x52, 0xa8, 0x45, 0x22, 0xee, 0x55, 0x5e, 0x6c, 0x21, 0x92, 0xa4, + 0x9f, 0xa6, 0xfa, 0xe6, 0x5c, 0xe3, 0x5b, 0x39, 0x88, 0x44, 0x50, 0x9a, 0xda, 0xe7, 0x18, 0xae, + 0x8b, 0xd5, 0xe2, 0x33, 0xdc, 0x1c, 0x14, 0x7d, 0x86, 0xd1, 0x93, 0xcd, 0x78, 0xfb, 0x4d, 0xa5, + 0x69, 0x41, 0x7d, 0x49, 0x01, 0xa6, 0xac, 0x5a, 0xd1, 0x02, 0x47, 0x61, 0x6f, 0x8c, 0x3d, 0x7c, + 0x33, 0xa9, 0x76, 0x33, 0xf9, 0xe2, 0x22, 0x32, 0x8d, 0x56, 0xd9, 0x2a, 0xa2, 0xd5, 0x74, 0x8f, + 0xc3, 0xfe, 0x15, 0x3f, 0xf4, 0x69, 0x2d, 0xd3, 0x63, 0xdb, 0x68, 0xa1, 0x44, 0x0b, 0xe2, 0xc3, + 0x6d, 0xb5, 0xc5, 0x4b, 0x52, 0xcd, 0xd4, 0x10, 0x7a, 0x14, 0x0e, 0x2c, 0xaf, 0x31, 0x4c, 0x25, + 0xde, 0x15, 0xc5, 0xa7, 0x98, 0xfd, 0x02, 0x26, 0x28, 0x5c, 0x5e, 0x0a, 0x92, 0x24, 0x24, 0x2c, + 0x25, 0x53, 0x05, 0xd9, 0x90, 0x80, 0x2f, 0x12, 0x59, 0xc6, 0xae, 0xf1, 0x13, 0x00, 0xf7, 0x77, + 0x66, 0x4c, 0xc4, 0xcc, 0xe8, 0x0c, 0xba, 0x2c, 0xa5, 0x6c, 0xb8, 0xc5, 0x8d, 0xb9, 0xbc, 0x09, + 0xce, 0x25, 0x37, 0xe6, 0xf2, 0x06, 0xf8, 0x32, 0x2c, 0x48, 0xdb, 0x95, 0xdd, 0x9c, 0xa8, 0xb6, + 0x26, 0xee, 0x62, 0x8f, 0x29, 0x05, 0x4d, 0x8f, 0xc0, 0x22, 0x89, 0x92, 0x6b, 0x67, 0xb1, 0x38, + 0x94, 0x8d, 0x75, 0x90, 0xdc, 0x0f, 0x1a, 0x6f, 0xed, 0x50, 0x78, 0x34, 0x42, 0x93, 0xb0, 0x20, + 0x5e, 0x70, 0x92, 0x41, 0xab, 0xf3, 0xe6, 0x67, 0x96, 0xe3, 0xc4, 0xfe, 0x2b, 0xc9, 0xb8, 0xe5, + 0xb2, 0x61, 0xcb, 0xb3, 0xc3, 0xe9, 0xee, 0x2c, 0xdf, 0x2e, 0x80, 0x49, 0xa7, 0x36, 0x18, 0x2c, + 0x75, 0xa2, 0x29, 0xcf, 0xb2, 0x69, 0x87, 0x1e, 0xfe, 0x47, 0x95, 0x90, 0xf1, 0x37, 0x00, 0xf5, + 0x05, 0x9f, 0x6e, 0x89, 0x09, 0xbd, 0xff, 0xd5, 0xe8, 0x41, 0xc8, 0x0d, 0xb0, 0x62, 0xee, 0x40, + 0x92, 0xe1, 0xb3, 0x7b, 0x8b, 0x53, 0x2b, 0x10, 0x52, 0xc3, 0xc5, 0x1e, 0xf9, 0xb0, 0x23, 0x63, + 0x33, 0x06, 0x0b, 0x81, 0x4d, 0x59, 0x28, 0x5c, 0x1d, 0x6c, 0x52, 0x48, 0xe0, 0xf4, 0x30, 0xec, + 0x4b, 0xde, 0xad, 0x44, 0x3d, 0x14, 0x32, 0xf5, 0xf0, 0x43, 0x00, 0x47, 0xb6, 0xa8, 0xea, 0xba, + 0xa8, 0x8f, 0xc0, 0x7e, 0xba, 0xea, 0x34, 0xef, 0xba, 0xc5, 0xb8, 0x6a, 0x42, 0xba, 0xea, 0xa4, + 0x77, 0xdd, 0x15, 0x38, 0xe0, 0xc4, 0xd8, 0x66, 0xd8, 0xcd, 0x4c, 0x58, 0x6d, 0x99, 0xe8, 0x4f, + 0xf0, 0x22, 0x6f, 0x55, 0x38, 0x58, 0x27, 0xae, 0xbf, 0xe2, 0x63, 0x77, 0xa7, 0x2c, 0x0f, 0xa4, + 0x04, 0x22, 0x77, 0x5f, 0xde, 0x31, 0x77, 0x7b, 0x28, 0xe8, 0x2b, 0xed, 0x05, 0x7d, 0x66, 0x8f, + 0x89, 0xca, 0x54, 0xf4, 0xb1, 0x1a, 0xd4, 0x77, 0x1a, 0x63, 0xd1, 0x51, 0x78, 0x64, 0xe6, 0xdc, + 0xa2, 0x35, 0x35, 0x33, 0x33, 0xbb, 0xb4, 0x64, 0x2d, 0x5c, 0xba, 0x60, 0x5d, 0xba, 0x3c, 0x6b, + 0x4e, 0x5d, 0xbd, 0x64, 0x5a, 0x57, 0x5f, 0xbe, 0x3c, 0x6b, 0xcd, 0x2d, 0x6a, 0x3d, 0xe8, 0x09, + 0x78, 0xf4, 0xae, 0x44, 0x8b, 0x97, 0xae, 0x72, 0x42, 0x70, 0xe2, 0xa7, 0xc3, 0xb0, 0x38, 0x23, + 0x9e, 0x84, 0xa7, 0x2e, 0xcf, 0xa1, 0x77, 0x72, 0x10, 0xb6, 0xa6, 0x22, 0xf4, 0xfc, 0x1e, 0x87, + 0x29, 0xb1, 0x87, 0x95, 0xfe, 0xf3, 0xbe, 0x46, 0x31, 0xe3, 0x6d, 0xb0, 0xf9, 0xae, 0xfe, 0xf2, + 0x2a, 0xa6, 0x15, 0x9f, 0x54, 0xa2, 0x98, 0xdc, 0x5c, 0xab, 0xc4, 0xd8, 0x76, 0x9f, 0x1a, 0x5f, + 0x39, 0x79, 0xd3, 0xa9, 0x38, 0x6e, 0x58, 0x59, 0xb6, 0xa9, 0xef, 0x54, 0xea, 0x24, 0xf4, 0x19, + 0x89, 0x53, 0xb8, 0x7c, 0xeb, 0xa9, 0xb8, 0x38, 0xf0, 0x57, 0x71, 0xbc, 0x56, 0x09, 0x31, 0x7b, + 0x85, 0xc4, 0xd7, 0x2b, 0x94, 0xd9, 0xa1, 0x6b, 0xc7, 0x6e, 0x4a, 0xff, 0xfa, 0x2f, 0x7f, 0xff, + 0xc5, 0xdc, 0xf3, 0xc6, 0xb3, 0xc9, 0xbb, 0x78, 0xb5, 0xb9, 0x2e, 0x69, 0xf5, 0xe3, 0xcd, 0xdf, + 0xaf, 0x6d, 0x7d, 0x58, 0xad, 0x4b, 0x33, 0x4f, 0x83, 0x63, 0xe8, 0xfb, 0x39, 0x38, 0xd8, 0x36, + 0x27, 0xa0, 0x17, 0x77, 0xe7, 0xf2, 0x96, 0x11, 0xb2, 0x74, 0x76, 0xef, 0x02, 0x92, 0xb0, 0x7d, + 0x95, 0x87, 0x6d, 0xe9, 0xde, 0x61, 0x6b, 0x50, 0xdc, 0x7d, 0xcc, 0x38, 0xb1, 0x08, 0xd8, 0x05, + 0x63, 0x7a, 0xb7, 0x01, 0x13, 0xc8, 0xd7, 0xaa, 0xe2, 0x65, 0xb6, 0x22, 0xb6, 0x1a, 0x1e, 0xbb, + 0x3f, 0x02, 0x58, 0x6c, 0x0e, 0x43, 0xa8, 0xcb, 0xd3, 0x79, 0xe7, 0x44, 0x55, 0x7a, 0x76, 0xd7, + 0x7c, 0x49, 0x94, 0x6e, 0x6c, 0xbe, 0xab, 0x57, 0x85, 0xf3, 0xcb, 0x7e, 0x10, 0xf8, 0xa1, 0xf7, + 0xd4, 0xf8, 0x2a, 0x09, 0x98, 0x43, 0x42, 0x4a, 0x02, 0x2c, 0xc2, 0x94, 0x4c, 0x5f, 0xa2, 0x01, + 0x56, 0xea, 0x5e, 0x9d, 0x89, 0x00, 0x9c, 0x32, 0x9e, 0xde, 0x26, 0x00, 0x74, 0x8d, 0x32, 0x5c, + 0xaf, 0x06, 0x3c, 0x2d, 0x9c, 0xb9, 0x6a, 0xbb, 0x2e, 0x09, 0xab, 0xcd, 0x01, 0x8e, 0x7b, 0xfc, + 0x67, 0x00, 0xfb, 0x33, 0x33, 0x1d, 0xea, 0x72, 0xcb, 0xde, 0x3a, 0x1c, 0x96, 0x9e, 0xdb, 0x03, + 0x67, 0xe2, 0x37, 0xdd, 0xab, 0xdf, 0xa7, 0x8d, 0x93, 0xdd, 0xfb, 0xdd, 0x08, 0xdb, 0x3c, 0xff, + 0xba, 0x5c, 0x27, 0xad, 0xd7, 0x3d, 0xf4, 0xdc, 0x9e, 0x9f, 0x73, 0x4a, 0xcf, 0xec, 0xe5, 0x65, + 0xcf, 0xf8, 0xca, 0x43, 0x68, 0x26, 0x67, 0x8d, 0x33, 0xbb, 0x5d, 0x1b, 0xad, 0x1b, 0x14, 0xd1, + 0x50, 0x7e, 0x93, 0x83, 0x63, 0x3b, 0x3c, 0x08, 0x5c, 0x11, 0x8f, 0x13, 0xe7, 0x1e, 0xc4, 0xa3, + 0x42, 0xe9, 0xc5, 0xfb, 0x7c, 0x24, 0x32, 0xbe, 0x0d, 0xde, 0xfb, 0x5e, 0xee, 0x21, 0x44, 0x74, + 0xc1, 0xb8, 0x70, 0x1f, 0x11, 0xad, 0x66, 0x2e, 0xe7, 0x78, 0x74, 0x37, 0x72, 0x70, 0x64, 0xdb, + 0x4d, 0x1f, 0xbd, 0xd0, 0x6d, 0xd7, 0xdd, 0x7e, 0xda, 0x2b, 0xdd, 0x17, 0x3f, 0x8d, 0x8c, 0xef, + 0x3e, 0x84, 0x58, 0x2e, 0x19, 0x8b, 0xbb, 0x8d, 0x65, 0xe0, 0x53, 0x56, 0x49, 0xe6, 0xb6, 0x0a, + 0x69, 0x5a, 0x5c, 0x91, 0x67, 0x04, 0x1e, 0xd2, 0xf7, 0x72, 0x70, 0x78, 0x9b, 0x63, 0x41, 0xb7, + 0x83, 0xc3, 0xf6, 0x47, 0xd9, 0xd2, 0x7d, 0x70, 0xd3, 0xc8, 0xf8, 0xce, 0x43, 0x08, 0xe6, 0x15, + 0x63, 0x61, 0xb7, 0xc1, 0xf4, 0xf0, 0x36, 0xb1, 0x6c, 0x85, 0xb2, 0x74, 0xfa, 0xf6, 0x3a, 0xc8, + 0xff, 0x62, 0x1d, 0x1c, 0xef, 0xca, 0xf7, 0x4b, 0xcb, 0x1f, 0xc3, 0x0e, 0x7b, 0xfd, 0xe7, 0x7a, + 0xfe, 0x36, 0x00, 0xd3, 0x6f, 0x82, 0x8d, 0x0f, 0xca, 0x3d, 0xef, 0x7f, 0x50, 0xee, 0xf9, 0xe8, + 0x83, 0x32, 0xb8, 0xb5, 0x59, 0x06, 0xdf, 0xd8, 0x2c, 0x83, 0xf7, 0x36, 0xcb, 0x60, 0x63, 0xb3, + 0x0c, 0x7e, 0xb7, 0x59, 0x06, 0x1f, 0x6e, 0x96, 0x7b, 0x3e, 0xda, 0x2c, 0x83, 0x2f, 0xdc, 0x29, + 0xf7, 0xdc, 0xbe, 0x53, 0x06, 0x1b, 0x77, 0xca, 0x3d, 0xef, 0xdf, 0x29, 0xf7, 0x5c, 0xbb, 0xe6, + 0x91, 0xe8, 0xba, 0x37, 0xc9, 0x37, 0x01, 0x1c, 0xc7, 0xf6, 0x64, 0x83, 0x56, 0xc5, 0x8f, 0x15, + 0x12, 0xd7, 0x79, 0xf4, 0x56, 0x7d, 0x17, 0xc7, 0x95, 0x14, 0x5d, 0x8d, 0x96, 0x3d, 0x52, 0xc5, + 0x37, 0x59, 0xf2, 0xe7, 0xb3, 0xbb, 0xfe, 0x07, 0x6d, 0xb9, 0x57, 0xfc, 0xfd, 0xec, 0xe9, 0xbf, + 0x07, 0x00, 0x00, 0xff, 0xff, 0x0e, 0x34, 0x37, 0x01, 0xa0, 0x28, 0x00, 0x00, } func (x CDNAccessLogOperatorType) String() string { @@ -3770,7 +3836,13 @@ func (this *LilacCDNCachePurgeRequest) Equal(that interface{}) bool { if this.PurgeEpochTimestamp != that1.PurgeEpochTimestamp { return false } - if this.Pattern != that1.Pattern { + if that1.PatternType == nil { + if this.PatternType != nil { + return false + } + } else if this.PatternType == nil { + return false + } else if !this.PatternType.Equal(that1.PatternType) { return false } if that1.PurgeType == nil { @@ -3784,6 +3856,102 @@ func (this *LilacCDNCachePurgeRequest) Equal(that interface{}) bool { } return true } +func (this *LilacCDNCachePurgeRequest_PurgeAll) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LilacCDNCachePurgeRequest_PurgeAll) + if !ok { + that2, ok := that.(LilacCDNCachePurgeRequest_PurgeAll) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.PurgeAll.Equal(that1.PurgeAll) { + return false + } + return true +} +func (this *LilacCDNCachePurgeRequest_Url) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LilacCDNCachePurgeRequest_Url) + if !ok { + that2, ok := that.(LilacCDNCachePurgeRequest_Url) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Url != that1.Url { + return false + } + return true +} +func (this *LilacCDNCachePurgeRequest_Hostname) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LilacCDNCachePurgeRequest_Hostname) + if !ok { + that2, ok := that.(LilacCDNCachePurgeRequest_Hostname) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Hostname != that1.Hostname { + return false + } + return true +} +func (this *LilacCDNCachePurgeRequest_Pattern) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LilacCDNCachePurgeRequest_Pattern) + if !ok { + that2, ok := that.(LilacCDNCachePurgeRequest_Pattern) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Pattern != that1.Pattern { + return false + } + return true +} func (this *LilacCDNCachePurgeRequest_SoftPurge) Equal(that interface{}) bool { if that == nil { return this == nil @@ -4604,18 +4772,52 @@ func (this *LilacCDNCachePurgeRequest) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 10) + s := make([]string, 0, 13) s = append(s, "&cdn_loadbalancer.LilacCDNCachePurgeRequest{") s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") s = append(s, "PurgeEpochTimestamp: "+fmt.Sprintf("%#v", this.PurgeEpochTimestamp)+",\n") - s = append(s, "Pattern: "+fmt.Sprintf("%#v", this.Pattern)+",\n") + if this.PatternType != nil { + s = append(s, "PatternType: "+fmt.Sprintf("%#v", this.PatternType)+",\n") + } if this.PurgeType != nil { s = append(s, "PurgeType: "+fmt.Sprintf("%#v", this.PurgeType)+",\n") } s = append(s, "}") return strings.Join(s, "") } +func (this *LilacCDNCachePurgeRequest_PurgeAll) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.LilacCDNCachePurgeRequest_PurgeAll{` + + `PurgeAll:` + fmt.Sprintf("%#v", this.PurgeAll) + `}`}, ", ") + return s +} +func (this *LilacCDNCachePurgeRequest_Url) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.LilacCDNCachePurgeRequest_Url{` + + `Url:` + fmt.Sprintf("%#v", this.Url) + `}`}, ", ") + return s +} +func (this *LilacCDNCachePurgeRequest_Hostname) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.LilacCDNCachePurgeRequest_Hostname{` + + `Hostname:` + fmt.Sprintf("%#v", this.Hostname) + `}`}, ", ") + return s +} +func (this *LilacCDNCachePurgeRequest_Pattern) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.LilacCDNCachePurgeRequest_Pattern{` + + `Pattern:` + fmt.Sprintf("%#v", this.Pattern) + `}`}, ", ") + return s +} func (this *LilacCDNCachePurgeRequest_SoftPurge) GoString() string { if this == nil { return "nil" @@ -6346,6 +6548,15 @@ func (m *LilacCDNCachePurgeRequest) MarshalToSizedBuffer(dAtA []byte) (int, erro _ = i var l int _ = l + if m.PatternType != nil { + { + size := m.PatternType.Size() + i -= size + if _, err := m.PatternType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.PurgeType != nil { { size := m.PurgeType.Size() @@ -6355,13 +6566,6 @@ func (m *LilacCDNCachePurgeRequest) MarshalToSizedBuffer(dAtA []byte) (int, erro } } } - if len(m.Pattern) > 0 { - i -= len(m.Pattern) - copy(dAtA[i:], m.Pattern) - i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Pattern))) - i-- - dAtA[i] = 0x22 - } if len(m.PurgeEpochTimestamp) > 0 { i -= len(m.PurgeEpochTimestamp) copy(dAtA[i:], m.PurgeEpochTimestamp) @@ -6386,6 +6590,20 @@ func (m *LilacCDNCachePurgeRequest) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } +func (m *LilacCDNCachePurgeRequest_Pattern) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNCachePurgeRequest_Pattern) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Pattern) + copy(dAtA[i:], m.Pattern) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Pattern))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} func (m *LilacCDNCachePurgeRequest_SoftPurge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -6428,6 +6646,55 @@ func (m *LilacCDNCachePurgeRequest_HardPurge) MarshalToSizedBuffer(dAtA []byte) } return len(dAtA) - i, nil } +func (m *LilacCDNCachePurgeRequest_PurgeAll) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNCachePurgeRequest_PurgeAll) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PurgeAll != nil { + { + size, err := m.PurgeAll.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCustomapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} +func (m *LilacCDNCachePurgeRequest_Url) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNCachePurgeRequest_Url) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Url) + copy(dAtA[i:], m.Url) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Url))) + i-- + dAtA[i] = 0x52 + return len(dAtA) - i, nil +} +func (m *LilacCDNCachePurgeRequest_Hostname) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNCachePurgeRequest_Hostname) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Hostname) + copy(dAtA[i:], m.Hostname) + i = encodeVarintPublicCustomapi(dAtA, i, uint64(len(m.Hostname))) + i-- + dAtA[i] = 0x5a + return len(dAtA) - i, nil +} func (m *LilacCDNCachePurgeResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -7538,9 +7805,8 @@ func (m *LilacCDNCachePurgeRequest) Size() (n int) { if l > 0 { n += 1 + l + sovPublicCustomapi(uint64(l)) } - l = len(m.Pattern) - if l > 0 { - n += 1 + l + sovPublicCustomapi(uint64(l)) + if m.PatternType != nil { + n += m.PatternType.Size() } if m.PurgeType != nil { n += m.PurgeType.Size() @@ -7548,6 +7814,16 @@ func (m *LilacCDNCachePurgeRequest) Size() (n int) { return n } +func (m *LilacCDNCachePurgeRequest_Pattern) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Pattern) + n += 1 + l + sovPublicCustomapi(uint64(l)) + return n +} func (m *LilacCDNCachePurgeRequest_SoftPurge) Size() (n int) { if m == nil { return 0 @@ -7572,6 +7848,38 @@ func (m *LilacCDNCachePurgeRequest_HardPurge) Size() (n int) { } return n } +func (m *LilacCDNCachePurgeRequest_PurgeAll) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PurgeAll != nil { + l = m.PurgeAll.Size() + n += 1 + l + sovPublicCustomapi(uint64(l)) + } + return n +} +func (m *LilacCDNCachePurgeRequest_Url) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Url) + n += 1 + l + sovPublicCustomapi(uint64(l)) + return n +} +func (m *LilacCDNCachePurgeRequest_Hostname) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Hostname) + n += 1 + l + sovPublicCustomapi(uint64(l)) + return n +} func (m *LilacCDNCachePurgeResponse) Size() (n int) { if m == nil { return 0 @@ -8164,12 +8472,22 @@ func (this *LilacCDNCachePurgeRequest) String() string { `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, `Name:` + fmt.Sprintf("%v", this.Name) + `,`, `PurgeEpochTimestamp:` + fmt.Sprintf("%v", this.PurgeEpochTimestamp) + `,`, - `Pattern:` + fmt.Sprintf("%v", this.Pattern) + `,`, + `PatternType:` + fmt.Sprintf("%v", this.PatternType) + `,`, `PurgeType:` + fmt.Sprintf("%v", this.PurgeType) + `,`, `}`, }, "") return s } +func (this *LilacCDNCachePurgeRequest_Pattern) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNCachePurgeRequest_Pattern{`, + `Pattern:` + fmt.Sprintf("%v", this.Pattern) + `,`, + `}`, + }, "") + return s +} func (this *LilacCDNCachePurgeRequest_SoftPurge) String() string { if this == nil { return "nil" @@ -8190,6 +8508,36 @@ func (this *LilacCDNCachePurgeRequest_HardPurge) String() string { }, "") return s } +func (this *LilacCDNCachePurgeRequest_PurgeAll) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNCachePurgeRequest_PurgeAll{`, + `PurgeAll:` + strings.Replace(fmt.Sprintf("%v", this.PurgeAll), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNCachePurgeRequest_Url) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNCachePurgeRequest_Url{`, + `Url:` + fmt.Sprintf("%v", this.Url) + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNCachePurgeRequest_Hostname) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNCachePurgeRequest_Hostname{`, + `Hostname:` + fmt.Sprintf("%v", this.Hostname) + `,`, + `}`, + }, "") + return s +} func (this *LilacCDNCachePurgeResponse) String() string { if this == nil { return "nil" @@ -12106,7 +12454,7 @@ func (m *LilacCDNCachePurgeRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Pattern = string(dAtA[iNdEx:postIndex]) + m.PatternType = &LilacCDNCachePurgeRequest_Pattern{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex case 6: if wireType != 2 { @@ -12178,6 +12526,105 @@ func (m *LilacCDNCachePurgeRequest) Unmarshal(dAtA []byte) error { } m.PurgeType = &LilacCDNCachePurgeRequest_HardPurge{v} iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PurgeAll", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.PatternType = &LilacCDNCachePurgeRequest_PurgeAll{v} + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Url", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PatternType = &LilacCDNCachePurgeRequest_Url{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Hostname", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCustomapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCustomapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCustomapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PatternType = &LilacCDNCachePurgeRequest_Hostname{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipPublicCustomapi(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesapi.go b/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesapi.go index 43e446fb2..2fa6826f7 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesapi.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesapi.go @@ -386,7 +386,7 @@ func (c *CustomAPIRestClient) doRPCCDNCachePurge(ctx context.Context, callOpts * _ = q q.Add("name", fmt.Sprintf("%v", req.Name)) q.Add("namespace", fmt.Sprintf("%v", req.Namespace)) - q.Add("pattern", fmt.Sprintf("%v", req.Pattern)) + q.Add("pattern_type", fmt.Sprintf("%v", req.PatternType)) q.Add("purge_epoch_timestamp", fmt.Sprintf("%v", req.PurgeEpochTimestamp)) q.Add("purge_type", fmt.Sprintf("%v", req.PurgeType)) @@ -2768,6 +2768,7 @@ var CustomAPISwaggerJSON string = `{ "description": "CDN Cache Purge", "title": "Cache Purge Request", "x-displayname": "Cache Purge", + "x-ves-oneof-field-pattern_type": "[\"hostname\",\"pattern\",\"purge_all\",\"url\"]", "x-ves-oneof-field-purge_type": "[\"hard_purge\",\"soft_purge\"]", "x-ves-proto-message": "ves.io.schema.views.cdn_loadbalancer.LilacCDNCachePurgeRequest", "properties": { @@ -2777,18 +2778,48 @@ var CustomAPISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Hard Purge" }, + "hostname": { + "type": "string", + "description": "Exclusive with [pattern purge_all url]\n Format: string.\n Purge cache with origin domain name that matches with configured cache key\n\nExample: - \"xyz.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "Hostname", + "x-displayname": "Hostname", + "x-ves-example": "xyz.com", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.vh_domain": "true" + } + }, "pattern": { "type": "string", - "description": " Format: string\n Purge only the objects whos name matches the pattern\n\nExample: - \"*.ts\"-", + "description": "Exclusive with [hostname purge_all url]\n Format: string.\n Purge only the objects with cache key matching the pattern\n\nExample: - \"*.ts\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.regex: true\n", "title": "Regex Pattern to match", + "minLength": 1, + "maxLength": 256, "x-displayname": "Pattern (RegEx)", - "x-ves-example": "*.ts" + "x-ves-example": "*.ts", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true" + } + }, + "purge_all": { + "description": "Exclusive with [hostname pattern url]\n purge cache for a specific distribution", + "title": "Purge All", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Purge All" }, "soft_purge": { "description": "Exclusive with [hard_purge]\n Invalidate the Cache entries", "title": "Soft Purge", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Soft Purge" + }, + "url": { + "type": "string", + "description": "Exclusive with [hostname pattern purge_all]\n Format: string.\n Purge cache with uri/path or in combination with origin-domain/path that is configured in cache key\n\nExample: - \"/path1\"-", + "title": "URL", + "x-displayname": "URL", + "x-ves-example": "/path1" } } }, diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesmsg.go b/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesmsg.go index 1d3fe8f65..6680c8a92 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesmsg.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/public_customapi.vesmsg.go @@ -2360,6 +2360,29 @@ type ValidateLilacCDNCachePurgeRequest struct { FldValidators map[string]db.ValidatorFunc } +func (v *ValidateLilacCDNCachePurgeRequest) PatternTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for pattern_type") + } + return validatorFn, nil +} + +func (v *ValidateLilacCDNCachePurgeRequest) PatternTypePatternValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Pattern, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for pattern") + } + return oValidatorFn_Pattern, nil +} +func (v *ValidateLilacCDNCachePurgeRequest) PatternTypeHostnameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Hostname, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for hostname") + } + return oValidatorFn_Hostname, nil +} + func (v *ValidateLilacCDNCachePurgeRequest) PurgeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { @@ -2420,12 +2443,61 @@ func (v *ValidateLilacCDNCachePurgeRequest) Validate(ctx context.Context, pm int } - if fv, exists := v.FldValidators["pattern"]; exists { - - vOpts := append(opts, db.WithValidateField("pattern")) - if err := fv(ctx, m.GetPattern(), vOpts...); err != nil { + if fv, exists := v.FldValidators["pattern_type"]; exists { + val := m.GetPatternType() + vOpts := append(opts, + db.WithValidateField("pattern_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } + + switch m.GetPatternType().(type) { + case *LilacCDNCachePurgeRequest_Pattern: + if fv, exists := v.FldValidators["pattern_type.pattern"]; exists { + val := m.GetPatternType().(*LilacCDNCachePurgeRequest_Pattern).Pattern + vOpts := append(opts, + db.WithValidateField("pattern_type"), + db.WithValidateField("pattern"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *LilacCDNCachePurgeRequest_PurgeAll: + if fv, exists := v.FldValidators["pattern_type.purge_all"]; exists { + val := m.GetPatternType().(*LilacCDNCachePurgeRequest_PurgeAll).PurgeAll + vOpts := append(opts, + db.WithValidateField("pattern_type"), + db.WithValidateField("purge_all"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *LilacCDNCachePurgeRequest_Url: + if fv, exists := v.FldValidators["pattern_type.url"]; exists { + val := m.GetPatternType().(*LilacCDNCachePurgeRequest_Url).Url + vOpts := append(opts, + db.WithValidateField("pattern_type"), + db.WithValidateField("url"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *LilacCDNCachePurgeRequest_Hostname: + if fv, exists := v.FldValidators["pattern_type.hostname"]; exists { + val := m.GetPatternType().(*LilacCDNCachePurgeRequest_Hostname).Hostname + vOpts := append(opts, + db.WithValidateField("pattern_type"), + db.WithValidateField("hostname"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -2489,6 +2561,41 @@ var DefaultLilacCDNCachePurgeRequestValidator = func() *ValidateLilacCDNCachePur vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap + vrhPatternType := v.PatternTypeValidationRuleHandler + rulesPatternType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhPatternType(rulesPatternType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNCachePurgeRequest.pattern_type: %s", err) + panic(errMsg) + } + v.FldValidators["pattern_type"] = vFn + + vrhPatternTypePattern := v.PatternTypePatternValidationRuleHandler + rulesPatternTypePattern := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true", + } + vFnMap["pattern_type.pattern"], err = vrhPatternTypePattern(rulesPatternTypePattern) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field LilacCDNCachePurgeRequest.pattern_type_pattern: %s", err) + panic(errMsg) + } + vrhPatternTypeHostname := v.PatternTypeHostnameValidationRuleHandler + rulesPatternTypeHostname := map[string]string{ + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["pattern_type.hostname"], err = vrhPatternTypeHostname(rulesPatternTypeHostname) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field LilacCDNCachePurgeRequest.pattern_type_hostname: %s", err) + panic(errMsg) + } + + v.FldValidators["pattern_type.pattern"] = vFnMap["pattern_type.pattern"] + v.FldValidators["pattern_type.hostname"] = vFnMap["pattern_type.hostname"] + vrhPurgeType := v.PurgeTypeValidationRuleHandler rulesPurgeType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/types.pb.go b/pbgo/extschema/schema/views/cdn_loadbalancer/types.pb.go index 551683cd9..257737ad6 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/types.pb.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/types.pb.go @@ -17,6 +17,7 @@ import ( _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer/access_log" + common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" http_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/http_loadbalancer" origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" @@ -494,37 +495,82 @@ func (m *HeaderControlType) GetResponseHeadersToRemove() []string { return nil } -// Security options +// Web Application Firewall // -// x-displayName: "Security Options" -// This defines various options related to security -type SecurityOptionsType struct { - // ip_filtering +// x-displayName: "Web Application Firewall" +// Web Application Firewall +type WebApplicationFirewall struct { + // Enable the WAF (Web Application Firewall) functionality for VirtualHost // - // x-displayName: "Client IP filtering Options" - // IP filtering options - IpFiltering *IpFilteringOptions `protobuf:"bytes,5,opt,name=ip_filtering,json=ipFiltering,proto3" json:"ip_filtering,omitempty"` - // geo_filtering + // x-displayName: "Web Application Firewall (WAF)" + // x-required // - // x-displayName: "Client Geo filtering Options" - // Geo filtering options - GeoFiltering *GeoFilteringOptions `protobuf:"bytes,6,opt,name=geo_filtering,json=geoFiltering,proto3" json:"geo_filtering,omitempty"` - // authentication + // F5 Distributed Cloud WAF is a next-gen web application firewall that provides signature-based + // and behavior-based threat detection to protect applications wherever they are deployed. + // WAF can be configured in Monitoring (log threats) or Blocking (log and block threats) mode. // - // x-displayName: "Authentication Options" - // Authentication Options - AuthOptions *AuthenticationOptions `protobuf:"bytes,9,opt,name=auth_options,json=authOptions,proto3" json:"auth_options,omitempty"` -} - -func (m *SecurityOptionsType) Reset() { *m = SecurityOptionsType{} } -func (*SecurityOptionsType) ProtoMessage() {} -func (*SecurityOptionsType) Descriptor() ([]byte, []int) { + // Types that are valid to be assigned to WafChoice: + // *WebApplicationFirewall_DisableWaf + // *WebApplicationFirewall_AppFirewall + // *WebApplicationFirewall_AppFirewallOnCacheMiss + WafChoice isWebApplicationFirewall_WafChoice `protobuf_oneof:"waf_choice"` + // WAF Exclusion Rules + // + // x-displayName: "WAF Exclusion Rules" + // Define the Signature IDs, Violations, Attack Types and Bot Names that should be excluded from WAF processing on specific match criteria. + // The match criteria include domain, path and method. + // WAF Exclusion rules is a sequential engine where rules are evaluated one after the other. + // It's important to define the correct order for WAF exclusion rules to get the intended result, rules are evaluated from top to bottom in the list. + // For each request, its characteristics are evaluated based on the match criteria in each WAF exclusion rule, starting from the top. + // When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated. + WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,4,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` + // Data Guard Rules + // + // x-displayName: "Data Guard Rules" + // Data Guard prevents responses from exposing sensitive information by masking the data. + // The system masks credit card numbers and social security numbers leaked from the application from within the http response with a string of asterisks (*). + // Note: App Firewall should be enabled, to use Data Guard feature. + DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,5,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` + // csrf_policy + // + // x-displayName: "Cross-Site Request Forgery Protection" + // Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf. + // + // The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host. + // + // 1. The origin that caused the user agent to issue the request (source origin). + // 2. The origin that the request is going to (target origin). + // When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid. + // Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.). + CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,6,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` + // GraphQL Inspection + // + // x-displayName: "GraphQL Inspection" + // GraphQL is a query language and server-side runtime for APIs which provides a complete and understandable + // description of the data in API. GraphQL gives clients the power to ask for exactly what they need, makes it + // easier to evolve APIs over time, and enables powerful developer tools. Policy configuration to analyze GraphQL + // queries and prevent GraphQL tailored attacks. + GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,7,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` + // Cookie protection + // + // x-displayName: "Cookie Protection" + // Allows setting attributes (SameSite, Secure, and HttpOnly) on cookies in responses. + // Cookie Tampering Protection prevents attackers from modifying the value of session cookies. + // For Cookie Tampering Protection, enabling a web app firewall (WAF) is a prerequisite. + // The configured mode of WAF (monitoring or blocking) will be enforced on the request when cookie tampering is identified. + // Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection. + ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,8,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` +} + +func (m *WebApplicationFirewall) Reset() { *m = WebApplicationFirewall{} } +func (*WebApplicationFirewall) ProtoMessage() {} +func (*WebApplicationFirewall) Descriptor() ([]byte, []int) { return fileDescriptor_0a2659efdd085843, []int{2} } -func (m *SecurityOptionsType) XXX_Unmarshal(b []byte) error { +func (m *WebApplicationFirewall) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SecurityOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *WebApplicationFirewall) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -532,190 +578,222 @@ func (m *SecurityOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *SecurityOptionsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_SecurityOptionsType.Merge(m, src) +func (m *WebApplicationFirewall) XXX_Merge(src proto.Message) { + xxx_messageInfo_WebApplicationFirewall.Merge(m, src) } -func (m *SecurityOptionsType) XXX_Size() int { +func (m *WebApplicationFirewall) XXX_Size() int { return m.Size() } -func (m *SecurityOptionsType) XXX_DiscardUnknown() { - xxx_messageInfo_SecurityOptionsType.DiscardUnknown(m) +func (m *WebApplicationFirewall) XXX_DiscardUnknown() { + xxx_messageInfo_WebApplicationFirewall.DiscardUnknown(m) } -var xxx_messageInfo_SecurityOptionsType proto.InternalMessageInfo +var xxx_messageInfo_WebApplicationFirewall proto.InternalMessageInfo -func (m *SecurityOptionsType) GetIpFiltering() *IpFilteringOptions { - if m != nil { - return m.IpFiltering - } - return nil +type isWebApplicationFirewall_WafChoice interface { + isWebApplicationFirewall_WafChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *SecurityOptionsType) GetGeoFiltering() *GeoFilteringOptions { +type WebApplicationFirewall_DisableWaf struct { + DisableWaf *schema.Empty `protobuf:"bytes,2,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` +} +type WebApplicationFirewall_AppFirewall struct { + AppFirewall *views.ObjectRefType `protobuf:"bytes,3,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` +} +type WebApplicationFirewall_AppFirewallOnCacheMiss struct { + AppFirewallOnCacheMiss *views.ObjectRefType `protobuf:"bytes,9,opt,name=app_firewall_on_cache_miss,json=appFirewallOnCacheMiss,proto3,oneof" json:"app_firewall_on_cache_miss,omitempty"` +} + +func (*WebApplicationFirewall_DisableWaf) isWebApplicationFirewall_WafChoice() {} +func (*WebApplicationFirewall_AppFirewall) isWebApplicationFirewall_WafChoice() {} +func (*WebApplicationFirewall_AppFirewallOnCacheMiss) isWebApplicationFirewall_WafChoice() {} + +func (m *WebApplicationFirewall) GetWafChoice() isWebApplicationFirewall_WafChoice { if m != nil { - return m.GeoFiltering + return m.WafChoice } return nil } -func (m *SecurityOptionsType) GetAuthOptions() *AuthenticationOptions { - if m != nil { - return m.AuthOptions +func (m *WebApplicationFirewall) GetDisableWaf() *schema.Empty { + if x, ok := m.GetWafChoice().(*WebApplicationFirewall_DisableWaf); ok { + return x.DisableWaf } return nil } -// Logging options -// -// x-displayName: "Logging Options" -// This defines various options related to logging -type LoggingOptionsType struct { - // client_log_options - // - // x-displayName: "Client Request Headers to Log" - // Client request headers to log - ClientLogOptions *LogHeaderOptions `protobuf:"bytes,7,opt,name=client_log_options,json=clientLogOptions,proto3" json:"client_log_options,omitempty"` - // origin_log_options - // - // x-displayName: "Origin Response Headers to Log" - // Origin response headers to log - OriginLogOptions *LogHeaderOptions `protobuf:"bytes,8,opt,name=origin_log_options,json=originLogOptions,proto3" json:"origin_log_options,omitempty"` +func (m *WebApplicationFirewall) GetAppFirewall() *views.ObjectRefType { + if x, ok := m.GetWafChoice().(*WebApplicationFirewall_AppFirewall); ok { + return x.AppFirewall + } + return nil } -func (m *LoggingOptionsType) Reset() { *m = LoggingOptionsType{} } -func (*LoggingOptionsType) ProtoMessage() {} -func (*LoggingOptionsType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{3} -} -func (m *LoggingOptionsType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LoggingOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *WebApplicationFirewall) GetAppFirewallOnCacheMiss() *views.ObjectRefType { + if x, ok := m.GetWafChoice().(*WebApplicationFirewall_AppFirewallOnCacheMiss); ok { + return x.AppFirewallOnCacheMiss } - return b[:n], nil -} -func (m *LoggingOptionsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_LoggingOptionsType.Merge(m, src) -} -func (m *LoggingOptionsType) XXX_Size() int { - return m.Size() -} -func (m *LoggingOptionsType) XXX_DiscardUnknown() { - xxx_messageInfo_LoggingOptionsType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_LoggingOptionsType proto.InternalMessageInfo - -func (m *LoggingOptionsType) GetClientLogOptions() *LogHeaderOptions { +func (m *WebApplicationFirewall) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { if m != nil { - return m.ClientLogOptions + return m.WafExclusionRules } return nil } -func (m *LoggingOptionsType) GetOriginLogOptions() *LogHeaderOptions { +func (m *WebApplicationFirewall) GetDataGuardRules() []*policy.SimpleDataGuardRule { if m != nil { - return m.OriginLogOptions + return m.DataGuardRules } return nil } -// Cache Rule Expression List -// -// x-displayName: "Cache Rule Expression List" -// CDN Cache Rule Expressions. -type CDNCacheRuleExpressionList struct { - // Expression Name - // - // x-displayName: "Expression Name" - // x-required - // x-example: "Expression-1" - // Name of the Expressions items that are ANDed - ExpressionName string `protobuf:"bytes,1,opt,name=expression_name,json=expressionName,proto3" json:"expression_name,omitempty"` - // Terms - // - // x-displayName: "Terms" - // x-required - // The Cache Rule Expression Terms that are ANDed - CacheRuleExpression []*CDNCacheRuleExpression `protobuf:"bytes,2,rep,name=cache_rule_expression,json=cacheRuleExpression,proto3" json:"cache_rule_expression,omitempty"` -} - -func (m *CDNCacheRuleExpressionList) Reset() { *m = CDNCacheRuleExpressionList{} } -func (*CDNCacheRuleExpressionList) ProtoMessage() {} -func (*CDNCacheRuleExpressionList) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{4} -} -func (m *CDNCacheRuleExpressionList) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CDNCacheRuleExpressionList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *WebApplicationFirewall) GetCsrfPolicy() *schema.CsrfPolicy { + if m != nil { + return m.CsrfPolicy } - return b[:n], nil -} -func (m *CDNCacheRuleExpressionList) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNCacheRuleExpressionList.Merge(m, src) -} -func (m *CDNCacheRuleExpressionList) XXX_Size() int { - return m.Size() -} -func (m *CDNCacheRuleExpressionList) XXX_DiscardUnknown() { - xxx_messageInfo_CDNCacheRuleExpressionList.DiscardUnknown(m) + return nil } -var xxx_messageInfo_CDNCacheRuleExpressionList proto.InternalMessageInfo - -func (m *CDNCacheRuleExpressionList) GetExpressionName() string { +func (m *WebApplicationFirewall) GetGraphqlRules() []*policy.GraphQLRule { if m != nil { - return m.ExpressionName + return m.GraphqlRules } - return "" + return nil } -func (m *CDNCacheRuleExpressionList) GetCacheRuleExpression() []*CDNCacheRuleExpression { +func (m *WebApplicationFirewall) GetProtectedCookies() []*schema.CookieManipulationOptionType { if m != nil { - return m.CacheRuleExpression + return m.ProtectedCookies } return nil } -// Cache Operator +// XXX_OneofWrappers is for the internal use of the proto package. +func (*WebApplicationFirewall) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*WebApplicationFirewall_DisableWaf)(nil), + (*WebApplicationFirewall_AppFirewall)(nil), + (*WebApplicationFirewall_AppFirewallOnCacheMiss)(nil), + } +} + +// Common Security Controls // -// x-displayName: "Operator" -type CacheOperator struct { - // Cache Operator +// x-displayName: "Common Security Controls" +type CommonSecurityControls struct { + // Service Policies // - // x-displayName: "Operator" + // x-displayName: "Service Policies" + // x-required + // Service policies provide the ability to configure security controls such as IP Allow/Deny lists, Geo IP filtering and Custom rules // - // Types that are valid to be assigned to CacheOperator: - // *CacheOperator_Equals - // *CacheOperator_DoesNotEqual - // *CacheOperator_Contains - // *CacheOperator_DoesNotContain - // *CacheOperator_Startswith - // *CacheOperator_DoesNotStartWith - // *CacheOperator_Endswith - // *CacheOperator_DoesNotEndWith - // *CacheOperator_MatchRegex - CacheOperator isCacheOperator_CacheOperator `protobuf_oneof:"cache_operator"` + // Types that are valid to be assigned to ServicePolicyChoice: + // *CommonSecurityControls_ServicePoliciesFromNamespace + // *CommonSecurityControls_NoServicePolicies + // *CommonSecurityControls_ActiveServicePolicies + ServicePolicyChoice isCommonSecurityControls_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` + // ip_reputation + // + // x-displayName: "IP Reputation" + // IP reputation service analyzes IP threats and publishes a dynamic data set of millions of high-risk IP addresses, to protect users from inbound traffic from malicious IPs. + // IP threat categories include Spam Sources, Windows Exploits, Web Attacks, BotNets, Scanners, Denial of Service, Reputation, Phishing, Proxy, Mobile Threats, and TOR Proxy. + // + // Types that are valid to be assigned to IpReputationChoice: + // *CommonSecurityControls_DisableIpReputation + // *CommonSecurityControls_EnableIpReputation + // *CommonSecurityControls_IpReputationOnCacheMiss + IpReputationChoice isCommonSecurityControls_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` + // User Identifier + // + // x-displayName: "User Identifier" + // x-required + // Select user identifier for rate limiting and malicious user mitigation. + // + // Types that are valid to be assigned to UserIdChoice: + // *CommonSecurityControls_UserIdClientIp + // *CommonSecurityControls_UserIdentification + UserIdChoice isCommonSecurityControls_UserIdChoice `protobuf_oneof:"user_id_choice"` + // Malicious User Detection Choice + // + // x-required + // x-displayName: "Malicious User Detection" + // Malicious User Detection performs user behavior analysis and assigns a risk score and threat level of low, medium + // or high based on the suspicious activity of the user. + // The risk score of the user is decayed over time, if no further suspicious activity is noticed. + // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. + // In this case external app_type configuration overrides internally disabled feature. + // Enabling the feature internally is allowed only when no labeling to external app_type. + // + // Types that are valid to be assigned to MaliciousUserDetectionChoice: + // *CommonSecurityControls_DisableMaliciousUserDetection + // *CommonSecurityControls_EnableMaliciousUserDetection + // *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss + MaliciousUserDetectionChoice isCommonSecurityControls_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` + // Challenge Type + // + // x-displayName: "Malicious User Mitigation And Challenges" + // x-required + // Malicious User Mitigation is an adaptive response and risk-based challenge capability. + // Enabling this feature would automatically serve different challenges such as JavaScript challenge, + // Captcha challenge or block temporarily based on the threat level of the malicious user. + // Policy based challenge can be used to selectively enable or disable JavaScript or Captcha challenge + // on a specific client and request match criteria + // + // Types that are valid to be assigned to ChallengeType: + // *CommonSecurityControls_NoChallenge + // *CommonSecurityControls_EnableChallenge + // *CommonSecurityControls_ChallengeOnCacheMiss + // *CommonSecurityControls_JsChallenge + // *CommonSecurityControls_CaptchaChallenge + // *CommonSecurityControls_PolicyBasedChallenge + ChallengeType isCommonSecurityControls_ChallengeType `protobuf_oneof:"challenge_type"` + // Enable Rate Limiting + // + // x-displayName: "Rate Limiting" + // x-required + // Rate Limiting allows you to control the rate of requests sent to your origin servers, protect against API traffic surge and denial of services attacks. + // + // Types that are valid to be assigned to RateLimitChoice: + // *CommonSecurityControls_DisableRateLimit + // *CommonSecurityControls_ApiRateLimit + // *CommonSecurityControls_RateLimit + RateLimitChoice isCommonSecurityControls_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` + // Trusted Client Rules + // + // x-displayName: "Trusted Client Rules" + // Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients. + TrustedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,24,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` + // Client Blocking Rules + // + // x-displayName: "Client Blocking Rules" + // Define rules to block IP Prefixes or AS numbers. + BlockedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,25,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` + // cors_policy + // + // x-displayName: "CORS Policy" + // Cross-Origin Resource Sharing requests configuration + // + // CORS is a mechanism that uses additional HTTP headers to tell a browser to let + // a web application running at one origin (domain) have permission to access selected + // resources from a server at a different origin + CorsPolicy *schema.CorsPolicy `protobuf:"bytes,26,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` } -func (m *CacheOperator) Reset() { *m = CacheOperator{} } -func (*CacheOperator) ProtoMessage() {} -func (*CacheOperator) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{5} +func (m *CommonSecurityControls) Reset() { *m = CommonSecurityControls{} } +func (*CommonSecurityControls) ProtoMessage() {} +func (*CommonSecurityControls) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{3} } -func (m *CacheOperator) XXX_Unmarshal(b []byte) error { +func (m *CommonSecurityControls) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CacheOperator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CommonSecurityControls) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -723,297 +801,427 @@ func (m *CacheOperator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error } return b[:n], nil } -func (m *CacheOperator) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheOperator.Merge(m, src) +func (m *CommonSecurityControls) XXX_Merge(src proto.Message) { + xxx_messageInfo_CommonSecurityControls.Merge(m, src) } -func (m *CacheOperator) XXX_Size() int { +func (m *CommonSecurityControls) XXX_Size() int { return m.Size() } -func (m *CacheOperator) XXX_DiscardUnknown() { - xxx_messageInfo_CacheOperator.DiscardUnknown(m) +func (m *CommonSecurityControls) XXX_DiscardUnknown() { + xxx_messageInfo_CommonSecurityControls.DiscardUnknown(m) } -var xxx_messageInfo_CacheOperator proto.InternalMessageInfo +var xxx_messageInfo_CommonSecurityControls proto.InternalMessageInfo -type isCacheOperator_CacheOperator interface { - isCacheOperator_CacheOperator() +type isCommonSecurityControls_ServicePolicyChoice interface { + isCommonSecurityControls_ServicePolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isCommonSecurityControls_IpReputationChoice interface { + isCommonSecurityControls_IpReputationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isCommonSecurityControls_UserIdChoice interface { + isCommonSecurityControls_UserIdChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isCommonSecurityControls_MaliciousUserDetectionChoice interface { + isCommonSecurityControls_MaliciousUserDetectionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isCommonSecurityControls_ChallengeType interface { + isCommonSecurityControls_ChallengeType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isCommonSecurityControls_RateLimitChoice interface { + isCommonSecurityControls_RateLimitChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CacheOperator_Equals struct { - Equals string `protobuf:"bytes,2,opt,name=Equals,proto3,oneof" json:"Equals,omitempty"` +type CommonSecurityControls_ServicePoliciesFromNamespace struct { + ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,2,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` } -type CacheOperator_DoesNotEqual struct { - DoesNotEqual string `protobuf:"bytes,3,opt,name=DoesNotEqual,proto3,oneof" json:"DoesNotEqual,omitempty"` +type CommonSecurityControls_NoServicePolicies struct { + NoServicePolicies *schema.Empty `protobuf:"bytes,3,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` } -type CacheOperator_Contains struct { - Contains string `protobuf:"bytes,4,opt,name=Contains,proto3,oneof" json:"Contains,omitempty"` +type CommonSecurityControls_ActiveServicePolicies struct { + ActiveServicePolicies *common_waf.ServicePolicyList `protobuf:"bytes,4,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` } -type CacheOperator_DoesNotContain struct { - DoesNotContain string `protobuf:"bytes,5,opt,name=DoesNotContain,proto3,oneof" json:"DoesNotContain,omitempty"` +type CommonSecurityControls_DisableIpReputation struct { + DisableIpReputation *schema.Empty `protobuf:"bytes,6,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` } -type CacheOperator_Startswith struct { - Startswith string `protobuf:"bytes,6,opt,name=Startswith,proto3,oneof" json:"Startswith,omitempty"` +type CommonSecurityControls_EnableIpReputation struct { + EnableIpReputation *common_waf.IPThreatCategoryListType `protobuf:"bytes,7,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` } -type CacheOperator_DoesNotStartWith struct { - DoesNotStartWith string `protobuf:"bytes,7,opt,name=DoesNotStartWith,proto3,oneof" json:"DoesNotStartWith,omitempty"` +type CommonSecurityControls_IpReputationOnCacheMiss struct { + IpReputationOnCacheMiss *common_waf.IPThreatCategoryListType `protobuf:"bytes,27,opt,name=ip_reputation_on_cache_miss,json=ipReputationOnCacheMiss,proto3,oneof" json:"ip_reputation_on_cache_miss,omitempty"` } -type CacheOperator_Endswith struct { - Endswith string `protobuf:"bytes,8,opt,name=Endswith,proto3,oneof" json:"Endswith,omitempty"` +type CommonSecurityControls_UserIdClientIp struct { + UserIdClientIp *schema.Empty `protobuf:"bytes,9,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` } -type CacheOperator_DoesNotEndWith struct { - DoesNotEndWith string `protobuf:"bytes,9,opt,name=DoesNotEndWith,proto3,oneof" json:"DoesNotEndWith,omitempty"` +type CommonSecurityControls_UserIdentification struct { + UserIdentification *views.ObjectRefType `protobuf:"bytes,10,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` } -type CacheOperator_MatchRegex struct { - MatchRegex string `protobuf:"bytes,10,opt,name=MatchRegex,proto3,oneof" json:"MatchRegex,omitempty"` +type CommonSecurityControls_DisableMaliciousUserDetection struct { + DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,12,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` +} +type CommonSecurityControls_EnableMaliciousUserDetection struct { + EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,13,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` +} +type CommonSecurityControls_MaliciousUserDetectionOnCacheMiss struct { + MaliciousUserDetectionOnCacheMiss *schema.Empty `protobuf:"bytes,28,opt,name=malicious_user_detection_on_cache_miss,json=maliciousUserDetectionOnCacheMiss,proto3,oneof" json:"malicious_user_detection_on_cache_miss,omitempty"` +} +type CommonSecurityControls_NoChallenge struct { + NoChallenge *schema.Empty `protobuf:"bytes,15,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` +} +type CommonSecurityControls_EnableChallenge struct { + EnableChallenge *common_waf.EnableChallenge `protobuf:"bytes,16,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` +} +type CommonSecurityControls_ChallengeOnCacheMiss struct { + ChallengeOnCacheMiss *common_waf.EnableChallenge `protobuf:"bytes,29,opt,name=challenge_on_cache_miss,json=challengeOnCacheMiss,proto3,oneof" json:"challenge_on_cache_miss,omitempty"` +} +type CommonSecurityControls_JsChallenge struct { + JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,17,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` +} +type CommonSecurityControls_CaptchaChallenge struct { + CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,18,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` +} +type CommonSecurityControls_PolicyBasedChallenge struct { + PolicyBasedChallenge *common_waf.PolicyBasedChallenge `protobuf:"bytes,19,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` +} +type CommonSecurityControls_DisableRateLimit struct { + DisableRateLimit *schema.Empty `protobuf:"bytes,21,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` +} +type CommonSecurityControls_ApiRateLimit struct { + ApiRateLimit *common_waf.APIRateLimit `protobuf:"bytes,22,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` +} +type CommonSecurityControls_RateLimit struct { + RateLimit *common_waf.RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` } -func (*CacheOperator_Equals) isCacheOperator_CacheOperator() {} -func (*CacheOperator_DoesNotEqual) isCacheOperator_CacheOperator() {} -func (*CacheOperator_Contains) isCacheOperator_CacheOperator() {} -func (*CacheOperator_DoesNotContain) isCacheOperator_CacheOperator() {} -func (*CacheOperator_Startswith) isCacheOperator_CacheOperator() {} -func (*CacheOperator_DoesNotStartWith) isCacheOperator_CacheOperator() {} -func (*CacheOperator_Endswith) isCacheOperator_CacheOperator() {} -func (*CacheOperator_DoesNotEndWith) isCacheOperator_CacheOperator() {} -func (*CacheOperator_MatchRegex) isCacheOperator_CacheOperator() {} - -func (m *CacheOperator) GetCacheOperator() isCacheOperator_CacheOperator { +func (*CommonSecurityControls_ServicePoliciesFromNamespace) isCommonSecurityControls_ServicePolicyChoice() { +} +func (*CommonSecurityControls_NoServicePolicies) isCommonSecurityControls_ServicePolicyChoice() {} +func (*CommonSecurityControls_ActiveServicePolicies) isCommonSecurityControls_ServicePolicyChoice() {} +func (*CommonSecurityControls_DisableIpReputation) isCommonSecurityControls_IpReputationChoice() {} +func (*CommonSecurityControls_EnableIpReputation) isCommonSecurityControls_IpReputationChoice() {} +func (*CommonSecurityControls_IpReputationOnCacheMiss) isCommonSecurityControls_IpReputationChoice() { +} +func (*CommonSecurityControls_UserIdClientIp) isCommonSecurityControls_UserIdChoice() {} +func (*CommonSecurityControls_UserIdentification) isCommonSecurityControls_UserIdChoice() {} +func (*CommonSecurityControls_DisableMaliciousUserDetection) isCommonSecurityControls_MaliciousUserDetectionChoice() { +} +func (*CommonSecurityControls_EnableMaliciousUserDetection) isCommonSecurityControls_MaliciousUserDetectionChoice() { +} +func (*CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) isCommonSecurityControls_MaliciousUserDetectionChoice() { +} +func (*CommonSecurityControls_NoChallenge) isCommonSecurityControls_ChallengeType() {} +func (*CommonSecurityControls_EnableChallenge) isCommonSecurityControls_ChallengeType() {} +func (*CommonSecurityControls_ChallengeOnCacheMiss) isCommonSecurityControls_ChallengeType() {} +func (*CommonSecurityControls_JsChallenge) isCommonSecurityControls_ChallengeType() {} +func (*CommonSecurityControls_CaptchaChallenge) isCommonSecurityControls_ChallengeType() {} +func (*CommonSecurityControls_PolicyBasedChallenge) isCommonSecurityControls_ChallengeType() {} +func (*CommonSecurityControls_DisableRateLimit) isCommonSecurityControls_RateLimitChoice() {} +func (*CommonSecurityControls_ApiRateLimit) isCommonSecurityControls_RateLimitChoice() {} +func (*CommonSecurityControls_RateLimit) isCommonSecurityControls_RateLimitChoice() {} + +func (m *CommonSecurityControls) GetServicePolicyChoice() isCommonSecurityControls_ServicePolicyChoice { if m != nil { - return m.CacheOperator + return m.ServicePolicyChoice } return nil } - -func (m *CacheOperator) GetEquals() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_Equals); ok { - return x.Equals +func (m *CommonSecurityControls) GetIpReputationChoice() isCommonSecurityControls_IpReputationChoice { + if m != nil { + return m.IpReputationChoice } - return "" + return nil } - -func (m *CacheOperator) GetDoesNotEqual() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotEqual); ok { - return x.DoesNotEqual +func (m *CommonSecurityControls) GetUserIdChoice() isCommonSecurityControls_UserIdChoice { + if m != nil { + return m.UserIdChoice } - return "" + return nil } - -func (m *CacheOperator) GetContains() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_Contains); ok { - return x.Contains +func (m *CommonSecurityControls) GetMaliciousUserDetectionChoice() isCommonSecurityControls_MaliciousUserDetectionChoice { + if m != nil { + return m.MaliciousUserDetectionChoice } - return "" + return nil } - -func (m *CacheOperator) GetDoesNotContain() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotContain); ok { - return x.DoesNotContain +func (m *CommonSecurityControls) GetChallengeType() isCommonSecurityControls_ChallengeType { + if m != nil { + return m.ChallengeType } - return "" + return nil } - -func (m *CacheOperator) GetStartswith() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_Startswith); ok { - return x.Startswith +func (m *CommonSecurityControls) GetRateLimitChoice() isCommonSecurityControls_RateLimitChoice { + if m != nil { + return m.RateLimitChoice } - return "" + return nil } -func (m *CacheOperator) GetDoesNotStartWith() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotStartWith); ok { - return x.DoesNotStartWith +func (m *CommonSecurityControls) GetServicePoliciesFromNamespace() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*CommonSecurityControls_ServicePoliciesFromNamespace); ok { + return x.ServicePoliciesFromNamespace } - return "" + return nil } -func (m *CacheOperator) GetEndswith() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_Endswith); ok { - return x.Endswith +func (m *CommonSecurityControls) GetNoServicePolicies() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*CommonSecurityControls_NoServicePolicies); ok { + return x.NoServicePolicies } - return "" + return nil } -func (m *CacheOperator) GetDoesNotEndWith() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotEndWith); ok { - return x.DoesNotEndWith +func (m *CommonSecurityControls) GetActiveServicePolicies() *common_waf.ServicePolicyList { + if x, ok := m.GetServicePolicyChoice().(*CommonSecurityControls_ActiveServicePolicies); ok { + return x.ActiveServicePolicies } - return "" + return nil } -func (m *CacheOperator) GetMatchRegex() string { - if x, ok := m.GetCacheOperator().(*CacheOperator_MatchRegex); ok { - return x.MatchRegex +func (m *CommonSecurityControls) GetDisableIpReputation() *schema.Empty { + if x, ok := m.GetIpReputationChoice().(*CommonSecurityControls_DisableIpReputation); ok { + return x.DisableIpReputation } - return "" + return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*CacheOperator) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*CacheOperator_Equals)(nil), - (*CacheOperator_DoesNotEqual)(nil), - (*CacheOperator_Contains)(nil), - (*CacheOperator_DoesNotContain)(nil), - (*CacheOperator_Startswith)(nil), - (*CacheOperator_DoesNotStartWith)(nil), - (*CacheOperator_Endswith)(nil), - (*CacheOperator_DoesNotEndWith)(nil), - (*CacheOperator_MatchRegex)(nil), +func (m *CommonSecurityControls) GetEnableIpReputation() *common_waf.IPThreatCategoryListType { + if x, ok := m.GetIpReputationChoice().(*CommonSecurityControls_EnableIpReputation); ok { + return x.EnableIpReputation } + return nil } -// CacheHeaderMatcherType -// -// x-displayName: "Cache Header to Match" -// Header match is done using the name of the header and its value. -// The value match is done using one of the following -// -// regex match on value -// exact match of value -// presence of header -// -// Header Match can also be inverse of above, which be used to check -// -// missing header or -// non-matching value -type CacheHeaderMatcherType struct { - // Name - // - // x-displayName: "Name" - // x-example: "Content-Type" - // Name of the header - Name HeaderOptions `protobuf:"varint,1,opt,name=name,proto3,enum=ves.io.schema.views.cdn_loadbalancer.HeaderOptions" json:"name,omitempty"` - // cache_operator - // - // x-displayName: "Operator" - // Available operators - Operator *CacheOperator `protobuf:"bytes,5,opt,name=operator,proto3" json:"operator,omitempty"` +func (m *CommonSecurityControls) GetIpReputationOnCacheMiss() *common_waf.IPThreatCategoryListType { + if x, ok := m.GetIpReputationChoice().(*CommonSecurityControls_IpReputationOnCacheMiss); ok { + return x.IpReputationOnCacheMiss + } + return nil } -func (m *CacheHeaderMatcherType) Reset() { *m = CacheHeaderMatcherType{} } -func (*CacheHeaderMatcherType) ProtoMessage() {} -func (*CacheHeaderMatcherType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{6} -} -func (m *CacheHeaderMatcherType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +func (m *CommonSecurityControls) GetUserIdClientIp() *schema.Empty { + if x, ok := m.GetUserIdChoice().(*CommonSecurityControls_UserIdClientIp); ok { + return x.UserIdClientIp + } + return nil } -func (m *CacheHeaderMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +func (m *CommonSecurityControls) GetUserIdentification() *views.ObjectRefType { + if x, ok := m.GetUserIdChoice().(*CommonSecurityControls_UserIdentification); ok { + return x.UserIdentification } - return b[:n], nil + return nil } -func (m *CacheHeaderMatcherType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheHeaderMatcherType.Merge(m, src) + +func (m *CommonSecurityControls) GetDisableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*CommonSecurityControls_DisableMaliciousUserDetection); ok { + return x.DisableMaliciousUserDetection + } + return nil } -func (m *CacheHeaderMatcherType) XXX_Size() int { - return m.Size() + +func (m *CommonSecurityControls) GetEnableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*CommonSecurityControls_EnableMaliciousUserDetection); ok { + return x.EnableMaliciousUserDetection + } + return nil } -func (m *CacheHeaderMatcherType) XXX_DiscardUnknown() { - xxx_messageInfo_CacheHeaderMatcherType.DiscardUnknown(m) + +func (m *CommonSecurityControls) GetMaliciousUserDetectionOnCacheMiss() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*CommonSecurityControls_MaliciousUserDetectionOnCacheMiss); ok { + return x.MaliciousUserDetectionOnCacheMiss + } + return nil } -var xxx_messageInfo_CacheHeaderMatcherType proto.InternalMessageInfo +func (m *CommonSecurityControls) GetNoChallenge() *schema.Empty { + if x, ok := m.GetChallengeType().(*CommonSecurityControls_NoChallenge); ok { + return x.NoChallenge + } + return nil +} -func (m *CacheHeaderMatcherType) GetName() HeaderOptions { - if m != nil { - return m.Name +func (m *CommonSecurityControls) GetEnableChallenge() *common_waf.EnableChallenge { + if x, ok := m.GetChallengeType().(*CommonSecurityControls_EnableChallenge); ok { + return x.EnableChallenge } - return proxy_host + return nil } -func (m *CacheHeaderMatcherType) GetOperator() *CacheOperator { - if m != nil { - return m.Operator +func (m *CommonSecurityControls) GetChallengeOnCacheMiss() *common_waf.EnableChallenge { + if x, ok := m.GetChallengeType().(*CommonSecurityControls_ChallengeOnCacheMiss); ok { + return x.ChallengeOnCacheMiss } return nil } -// PathMatcherType -// -// x-displayName: "Path to Match" -// Path match of the URI -type CDNPathMatcherType struct { - // cache_operator - // - // x-displayName: "Path Match" - // A specification of path match - Operator *CacheOperator `protobuf:"bytes,5,opt,name=operator,proto3" json:"operator,omitempty"` +func (m *CommonSecurityControls) GetJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetChallengeType().(*CommonSecurityControls_JsChallenge); ok { + return x.JsChallenge + } + return nil } -func (m *CDNPathMatcherType) Reset() { *m = CDNPathMatcherType{} } -func (*CDNPathMatcherType) ProtoMessage() {} -func (*CDNPathMatcherType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{7} +func (m *CommonSecurityControls) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetChallengeType().(*CommonSecurityControls_CaptchaChallenge); ok { + return x.CaptchaChallenge + } + return nil } -func (m *CDNPathMatcherType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + +func (m *CommonSecurityControls) GetPolicyBasedChallenge() *common_waf.PolicyBasedChallenge { + if x, ok := m.GetChallengeType().(*CommonSecurityControls_PolicyBasedChallenge); ok { + return x.PolicyBasedChallenge + } + return nil } -func (m *CDNPathMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +func (m *CommonSecurityControls) GetDisableRateLimit() *schema.Empty { + if x, ok := m.GetRateLimitChoice().(*CommonSecurityControls_DisableRateLimit); ok { + return x.DisableRateLimit } - return b[:n], nil + return nil } -func (m *CDNPathMatcherType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNPathMatcherType.Merge(m, src) + +func (m *CommonSecurityControls) GetApiRateLimit() *common_waf.APIRateLimit { + if x, ok := m.GetRateLimitChoice().(*CommonSecurityControls_ApiRateLimit); ok { + return x.ApiRateLimit + } + return nil } -func (m *CDNPathMatcherType) XXX_Size() int { - return m.Size() + +func (m *CommonSecurityControls) GetRateLimit() *common_waf.RateLimitConfigType { + if x, ok := m.GetRateLimitChoice().(*CommonSecurityControls_RateLimit); ok { + return x.RateLimit + } + return nil } -func (m *CDNPathMatcherType) XXX_DiscardUnknown() { - xxx_messageInfo_CDNPathMatcherType.DiscardUnknown(m) + +func (m *CommonSecurityControls) GetTrustedClients() []*common_waf.SimpleClientSrcRule { + if m != nil { + return m.TrustedClients + } + return nil } -var xxx_messageInfo_CDNPathMatcherType proto.InternalMessageInfo +func (m *CommonSecurityControls) GetBlockedClients() []*common_waf.SimpleClientSrcRule { + if m != nil { + return m.BlockedClients + } + return nil +} -func (m *CDNPathMatcherType) GetOperator() *CacheOperator { +func (m *CommonSecurityControls) GetCorsPolicy() *schema.CorsPolicy { if m != nil { - return m.Operator + return m.CorsPolicy } return nil } -// CacheCookieMatcherType +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CommonSecurityControls) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CommonSecurityControls_ServicePoliciesFromNamespace)(nil), + (*CommonSecurityControls_NoServicePolicies)(nil), + (*CommonSecurityControls_ActiveServicePolicies)(nil), + (*CommonSecurityControls_DisableIpReputation)(nil), + (*CommonSecurityControls_EnableIpReputation)(nil), + (*CommonSecurityControls_IpReputationOnCacheMiss)(nil), + (*CommonSecurityControls_UserIdClientIp)(nil), + (*CommonSecurityControls_UserIdentification)(nil), + (*CommonSecurityControls_DisableMaliciousUserDetection)(nil), + (*CommonSecurityControls_EnableMaliciousUserDetection)(nil), + (*CommonSecurityControls_MaliciousUserDetectionOnCacheMiss)(nil), + (*CommonSecurityControls_NoChallenge)(nil), + (*CommonSecurityControls_EnableChallenge)(nil), + (*CommonSecurityControls_ChallengeOnCacheMiss)(nil), + (*CommonSecurityControls_JsChallenge)(nil), + (*CommonSecurityControls_CaptchaChallenge)(nil), + (*CommonSecurityControls_PolicyBasedChallenge)(nil), + (*CommonSecurityControls_DisableRateLimit)(nil), + (*CommonSecurityControls_ApiRateLimit)(nil), + (*CommonSecurityControls_RateLimit)(nil), + } +} + +// API Definition // -// x-displayName: "Cookie Matcher" -// A cookie matcher specifies the name of a single cookie and the criteria to match it. The input has a list of values for each -// cookie in the request. -// A cookie matcher can check for one of the following: -// * Presence or absence of the cookie -// * At least one of the values for the cookie in the request satisfies the MatcherType item -type CacheCookieMatcherType struct { - // name +// x-displayName: "API Definition" +// API Definition based on the imported swagger specs +type ApiProtection struct { + // API Definition choice // - // x-displayName: "Cookie Name" - // x-example: "Session" // x-required - // A case-sensitive cookie name. - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // cache_operator + // x-displayName: "API Definition" + // API Definition based on the imported swagger specs // - // x-displayName: "Operator" + // Types that are valid to be assigned to ApiDefinitionChoice: + // *ApiProtection_DisableApiDefinition + // *ApiProtection_ApiSpecification + // *ApiProtection_ApiSpecificationOnCacheMiss + ApiDefinitionChoice isApiProtection_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` + // API Protection rules // - Operator *CacheOperator `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` + // x-displayName: "API Protection Rules" + // API Protection Rules can be defined in two categories. + // The first category includes fine-grained rules, per API path and methods. + // The second category includes rules per API groups or Server URLs. + // If request matches any rule in the first category, second category rules are not evaluated. + // Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group. + ApiProtectionRules *common_waf.APIProtectionRules `protobuf:"bytes,4,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` + // JWT Validation + // + // x-displayName: "JWT Validation" + // JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming + // JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired + // tokens or tokens that are not yet valid. + JwtValidation *common_waf.JWTValidation `protobuf:"bytes,5,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` + // API Discovery Choice + // + // x-required + // x-displayName: "API Discovery" + // When enabled, sampled traffic passing through this load balancer is analyzed and + // APIs exposed by the application are identified. + // An API is identified by its canonical (collapsed) URL path and the method used to call it. + // Once all APIs are identified, for each API, the system learns its possible schema. + // The learnt schema for all APIs is used to automatically generate a swagger definition file for the entire API set exposed by this load balancer. + // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. + // In this case external app_type configuration overrides internally disabled feature. + // Enabling the feature internally is allowed only when no labeling to external app_type. + // + // Types that are valid to be assigned to ApiDiscoveryChoice: + // *ApiProtection_EnableApiDiscovery + // *ApiProtection_DisableApiDiscovery + // *ApiProtection_ApiDiscoveryOnCacheMiss + ApiDiscoveryChoice isApiProtection_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` } -func (m *CacheCookieMatcherType) Reset() { *m = CacheCookieMatcherType{} } -func (*CacheCookieMatcherType) ProtoMessage() {} -func (*CacheCookieMatcherType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{8} +func (m *ApiProtection) Reset() { *m = ApiProtection{} } +func (*ApiProtection) ProtoMessage() {} +func (*ApiProtection) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{4} } -func (m *CacheCookieMatcherType) XXX_Unmarshal(b []byte) error { +func (m *ApiProtection) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CacheCookieMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ApiProtection) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1021,133 +1229,182 @@ func (m *CacheCookieMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]by } return b[:n], nil } -func (m *CacheCookieMatcherType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheCookieMatcherType.Merge(m, src) +func (m *ApiProtection) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApiProtection.Merge(m, src) } -func (m *CacheCookieMatcherType) XXX_Size() int { +func (m *ApiProtection) XXX_Size() int { return m.Size() } -func (m *CacheCookieMatcherType) XXX_DiscardUnknown() { - xxx_messageInfo_CacheCookieMatcherType.DiscardUnknown(m) +func (m *ApiProtection) XXX_DiscardUnknown() { + xxx_messageInfo_ApiProtection.DiscardUnknown(m) } -var xxx_messageInfo_CacheCookieMatcherType proto.InternalMessageInfo +var xxx_messageInfo_ApiProtection proto.InternalMessageInfo -func (m *CacheCookieMatcherType) GetName() string { - if m != nil { - return m.Name - } - return "" -} +type isApiProtection_ApiDefinitionChoice interface { + isApiProtection_ApiDefinitionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isApiProtection_ApiDiscoveryChoice interface { + isApiProtection_ApiDiscoveryChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} -func (m *CacheCookieMatcherType) GetOperator() *CacheOperator { +type ApiProtection_DisableApiDefinition struct { + DisableApiDefinition *schema.Empty `protobuf:"bytes,2,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` +} +type ApiProtection_ApiSpecification struct { + ApiSpecification *common_waf.APISpecificationSettings `protobuf:"bytes,3,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` +} +type ApiProtection_ApiSpecificationOnCacheMiss struct { + ApiSpecificationOnCacheMiss *common_waf.APISpecificationSettings `protobuf:"bytes,9,opt,name=api_specification_on_cache_miss,json=apiSpecificationOnCacheMiss,proto3,oneof" json:"api_specification_on_cache_miss,omitempty"` +} +type ApiProtection_EnableApiDiscovery struct { + EnableApiDiscovery *common_waf.ApiDiscoverySetting `protobuf:"bytes,7,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` +} +type ApiProtection_DisableApiDiscovery struct { + DisableApiDiscovery *schema.Empty `protobuf:"bytes,8,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` +} +type ApiProtection_ApiDiscoveryOnCacheMiss struct { + ApiDiscoveryOnCacheMiss *common_waf.ApiDiscoverySetting `protobuf:"bytes,10,opt,name=api_discovery_on_cache_miss,json=apiDiscoveryOnCacheMiss,proto3,oneof" json:"api_discovery_on_cache_miss,omitempty"` +} + +func (*ApiProtection_DisableApiDefinition) isApiProtection_ApiDefinitionChoice() {} +func (*ApiProtection_ApiSpecification) isApiProtection_ApiDefinitionChoice() {} +func (*ApiProtection_ApiSpecificationOnCacheMiss) isApiProtection_ApiDefinitionChoice() {} +func (*ApiProtection_EnableApiDiscovery) isApiProtection_ApiDiscoveryChoice() {} +func (*ApiProtection_DisableApiDiscovery) isApiProtection_ApiDiscoveryChoice() {} +func (*ApiProtection_ApiDiscoveryOnCacheMiss) isApiProtection_ApiDiscoveryChoice() {} + +func (m *ApiProtection) GetApiDefinitionChoice() isApiProtection_ApiDefinitionChoice { if m != nil { - return m.Operator + return m.ApiDefinitionChoice } return nil } - -// CacheQueryParameterMatcherType -// -// x-displayName: "Query Parameter to Match" -// Query parameter match can be either regex match on value or exact match of value for given key -// An example for HTTP request with query parameter https://gitlab.com/dashboard/issues?assignee_username=xxyyxx -type CacheQueryParameterMatcherType struct { - // key - // - // x-displayName: "Key" - // x-required - // x-example: "assignee_username" - // Query parameter key - // In the above example, assignee_username is the key - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - // cache_operator - // - // x-displayName: "Operator" - // - Operator *CacheOperator `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` +func (m *ApiProtection) GetApiDiscoveryChoice() isApiProtection_ApiDiscoveryChoice { + if m != nil { + return m.ApiDiscoveryChoice + } + return nil } -func (m *CacheQueryParameterMatcherType) Reset() { *m = CacheQueryParameterMatcherType{} } -func (*CacheQueryParameterMatcherType) ProtoMessage() {} -func (*CacheQueryParameterMatcherType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{9} -} -func (m *CacheQueryParameterMatcherType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +func (m *ApiProtection) GetDisableApiDefinition() *schema.Empty { + if x, ok := m.GetApiDefinitionChoice().(*ApiProtection_DisableApiDefinition); ok { + return x.DisableApiDefinition + } + return nil } -func (m *CacheQueryParameterMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +func (m *ApiProtection) GetApiSpecification() *common_waf.APISpecificationSettings { + if x, ok := m.GetApiDefinitionChoice().(*ApiProtection_ApiSpecification); ok { + return x.ApiSpecification } - return b[:n], nil + return nil } -func (m *CacheQueryParameterMatcherType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheQueryParameterMatcherType.Merge(m, src) + +func (m *ApiProtection) GetApiSpecificationOnCacheMiss() *common_waf.APISpecificationSettings { + if x, ok := m.GetApiDefinitionChoice().(*ApiProtection_ApiSpecificationOnCacheMiss); ok { + return x.ApiSpecificationOnCacheMiss + } + return nil } -func (m *CacheQueryParameterMatcherType) XXX_Size() int { - return m.Size() + +func (m *ApiProtection) GetApiProtectionRules() *common_waf.APIProtectionRules { + if m != nil { + return m.ApiProtectionRules + } + return nil } -func (m *CacheQueryParameterMatcherType) XXX_DiscardUnknown() { - xxx_messageInfo_CacheQueryParameterMatcherType.DiscardUnknown(m) + +func (m *ApiProtection) GetJwtValidation() *common_waf.JWTValidation { + if m != nil { + return m.JwtValidation + } + return nil } -var xxx_messageInfo_CacheQueryParameterMatcherType proto.InternalMessageInfo +func (m *ApiProtection) GetEnableApiDiscovery() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*ApiProtection_EnableApiDiscovery); ok { + return x.EnableApiDiscovery + } + return nil +} -func (m *CacheQueryParameterMatcherType) GetKey() string { - if m != nil { - return m.Key +func (m *ApiProtection) GetDisableApiDiscovery() *schema.Empty { + if x, ok := m.GetApiDiscoveryChoice().(*ApiProtection_DisableApiDiscovery); ok { + return x.DisableApiDiscovery } - return "" + return nil } -func (m *CacheQueryParameterMatcherType) GetOperator() *CacheOperator { - if m != nil { - return m.Operator +func (m *ApiProtection) GetApiDiscoveryOnCacheMiss() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*ApiProtection_ApiDiscoveryOnCacheMiss); ok { + return x.ApiDiscoveryOnCacheMiss } return nil } -// CDNCacheRuleExpression +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ApiProtection) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ApiProtection_DisableApiDefinition)(nil), + (*ApiProtection_ApiSpecification)(nil), + (*ApiProtection_ApiSpecificationOnCacheMiss)(nil), + (*ApiProtection_EnableApiDiscovery)(nil), + (*ApiProtection_DisableApiDiscovery)(nil), + (*ApiProtection_ApiDiscoveryOnCacheMiss)(nil), + } +} + +// Security options // -// x-displayName: "Cache Rule Expression" -// Select one of the field options -type CDNCacheRuleExpression struct { - // path_match +// x-displayName: "Security Options" +// This defines various options related to security +type SecurityOptionsType struct { + // ip_filtering // - // x-displayName: "Path Match" - // URI path of route - PathMatch *CDNPathMatcherType `protobuf:"bytes,1,opt,name=path_match,json=pathMatch,proto3" json:"path_match,omitempty"` - // query_params + // x-displayName: "Client IP filtering Options" + // IP filtering options + IpFiltering *IpFilteringOptions `protobuf:"bytes,5,opt,name=ip_filtering,json=ipFiltering,proto3" json:"ip_filtering,omitempty"` + // geo_filtering // - // x-displayName: "Query Parameters" - // List of (key, value) query parameters - QueryParameters []*CacheQueryParameterMatcherType `protobuf:"bytes,6,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"` - // Cache Headers + // x-displayName: "Client Geo filtering Options" + // Geo filtering options + GeoFiltering *GeoFilteringOptions `protobuf:"bytes,6,opt,name=geo_filtering,json=geoFiltering,proto3" json:"geo_filtering,omitempty"` + // authentication // - // x-displayName: "Cache Headers" - // Configure cache rule headers to match the criteria - CacheHeaders []*CacheHeaderMatcherType `protobuf:"bytes,5,rep,name=cache_headers,json=cacheHeaders,proto3" json:"cache_headers,omitempty"` - // cookie matchers + // x-displayName: "Authentication Options" + // Authentication Options + AuthOptions *AuthenticationOptions `protobuf:"bytes,9,opt,name=auth_options,json=authOptions,proto3" json:"auth_options,omitempty"` + // Web Application Firewall // - // x-displayName: "Cookie Matchers" - // A list of predicates for all cookies that need to be matched. The criteria for matching each cookie is described in individual instances - // of CookieMatcherType. The actual cookie values are extracted from the request API as a list of strings for each cookie name. - // Note that all specified cookie matcher predicates must evaluate to true. - CookieMatcher []*CacheCookieMatcherType `protobuf:"bytes,7,rep,name=cookie_matcher,json=cookieMatcher,proto3" json:"cookie_matcher,omitempty"` + // x-displayName: "Web Application Firewall" + // Web Application Firewall + WebAppFirewall *WebApplicationFirewall `protobuf:"bytes,10,opt,name=web_app_firewall,json=webAppFirewall,proto3" json:"web_app_firewall,omitempty"` + // API Protection + // + // x-displayName: "API Protection" + ApiProtection *ApiProtection `protobuf:"bytes,12,opt,name=api_protection,json=apiProtection,proto3" json:"api_protection,omitempty"` + // Common Security Controls + // + // x-displayName: "Common Security Controls" + CommonSecurityControls *CommonSecurityControls `protobuf:"bytes,11,opt,name=common_security_controls,json=commonSecurityControls,proto3" json:"common_security_controls,omitempty"` } -func (m *CDNCacheRuleExpression) Reset() { *m = CDNCacheRuleExpression{} } -func (*CDNCacheRuleExpression) ProtoMessage() {} -func (*CDNCacheRuleExpression) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{10} +func (m *SecurityOptionsType) Reset() { *m = SecurityOptionsType{} } +func (*SecurityOptionsType) ProtoMessage() {} +func (*SecurityOptionsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{5} } -func (m *CDNCacheRuleExpression) XXX_Unmarshal(b []byte) error { +func (m *SecurityOptionsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CDNCacheRuleExpression) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SecurityOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1155,80 +1412,86 @@ func (m *CDNCacheRuleExpression) XXX_Marshal(b []byte, deterministic bool) ([]by } return b[:n], nil } -func (m *CDNCacheRuleExpression) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNCacheRuleExpression.Merge(m, src) +func (m *SecurityOptionsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_SecurityOptionsType.Merge(m, src) } -func (m *CDNCacheRuleExpression) XXX_Size() int { +func (m *SecurityOptionsType) XXX_Size() int { return m.Size() } -func (m *CDNCacheRuleExpression) XXX_DiscardUnknown() { - xxx_messageInfo_CDNCacheRuleExpression.DiscardUnknown(m) +func (m *SecurityOptionsType) XXX_DiscardUnknown() { + xxx_messageInfo_SecurityOptionsType.DiscardUnknown(m) } -var xxx_messageInfo_CDNCacheRuleExpression proto.InternalMessageInfo +var xxx_messageInfo_SecurityOptionsType proto.InternalMessageInfo -func (m *CDNCacheRuleExpression) GetPathMatch() *CDNPathMatcherType { +func (m *SecurityOptionsType) GetIpFiltering() *IpFilteringOptions { if m != nil { - return m.PathMatch + return m.IpFiltering } return nil } -func (m *CDNCacheRuleExpression) GetQueryParameters() []*CacheQueryParameterMatcherType { +func (m *SecurityOptionsType) GetGeoFiltering() *GeoFilteringOptions { if m != nil { - return m.QueryParameters + return m.GeoFiltering } return nil } -func (m *CDNCacheRuleExpression) GetCacheHeaders() []*CacheHeaderMatcherType { +func (m *SecurityOptionsType) GetAuthOptions() *AuthenticationOptions { if m != nil { - return m.CacheHeaders + return m.AuthOptions } return nil } -func (m *CDNCacheRuleExpression) GetCookieMatcher() []*CacheCookieMatcherType { +func (m *SecurityOptionsType) GetWebAppFirewall() *WebApplicationFirewall { if m != nil { - return m.CookieMatcher + return m.WebAppFirewall } return nil } -// Cache TTL Enable Props +func (m *SecurityOptionsType) GetApiProtection() *ApiProtection { + if m != nil { + return m.ApiProtection + } + return nil +} + +func (m *SecurityOptionsType) GetCommonSecurityControls() *CommonSecurityControls { + if m != nil { + return m.CommonSecurityControls + } + return nil +} + +// Logging options // -// x-displayName: "Cache TTL Enable Props" -// Cache TTL Enable Values -type CacheTTLEnableProps struct { - // Cache TTL Key - // - // x-displayName: "Cache TTL" - // x-required - // x-example: "5m, 60s, 120s, 3h, 1d, 15d" - // Cache TTL value is used to cache the resource/content for the specified amount of time - // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days - CacheTtl string `protobuf:"bytes,1,opt,name=cache_ttl,json=cacheTtl,proto3" json:"cache_ttl,omitempty"` - // Set Cookie +// x-displayName: "Logging Options" +// This defines various options related to logging +type LoggingOptionsType struct { + // client_log_options // - // x-displayName: "Ignore-Response-Cookie" - // By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. - IgnoreResponseCookie bool `protobuf:"varint,5,opt,name=ignore_response_cookie,json=ignoreResponseCookie,proto3" json:"ignore_response_cookie,omitempty"` - // Cache Override + // x-displayName: "Client Request Headers to Log" + // Client request headers to log + ClientLogOptions *LogHeaderOptions `protobuf:"bytes,7,opt,name=client_log_options,json=clientLogOptions,proto3" json:"client_log_options,omitempty"` + // origin_log_options // - // x-displayName: "Cache Override" - // Honour Cache Override - CacheOverride bool `protobuf:"varint,4,opt,name=cache_override,json=cacheOverride,proto3" json:"cache_override,omitempty"` + // x-displayName: "Origin Response Headers to Log" + // Origin response headers to log + OriginLogOptions *LogHeaderOptions `protobuf:"bytes,8,opt,name=origin_log_options,json=originLogOptions,proto3" json:"origin_log_options,omitempty"` } -func (m *CacheTTLEnableProps) Reset() { *m = CacheTTLEnableProps{} } -func (*CacheTTLEnableProps) ProtoMessage() {} -func (*CacheTTLEnableProps) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{11} +func (m *LoggingOptionsType) Reset() { *m = LoggingOptionsType{} } +func (*LoggingOptionsType) ProtoMessage() {} +func (*LoggingOptionsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{6} } -func (m *CacheTTLEnableProps) XXX_Unmarshal(b []byte) error { +func (m *LoggingOptionsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CacheTTLEnableProps) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *LoggingOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1236,69 +1499,61 @@ func (m *CacheTTLEnableProps) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *CacheTTLEnableProps) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheTTLEnableProps.Merge(m, src) +func (m *LoggingOptionsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_LoggingOptionsType.Merge(m, src) } -func (m *CacheTTLEnableProps) XXX_Size() int { +func (m *LoggingOptionsType) XXX_Size() int { return m.Size() } -func (m *CacheTTLEnableProps) XXX_DiscardUnknown() { - xxx_messageInfo_CacheTTLEnableProps.DiscardUnknown(m) +func (m *LoggingOptionsType) XXX_DiscardUnknown() { + xxx_messageInfo_LoggingOptionsType.DiscardUnknown(m) } -var xxx_messageInfo_CacheTTLEnableProps proto.InternalMessageInfo - -func (m *CacheTTLEnableProps) GetCacheTtl() string { - if m != nil { - return m.CacheTtl - } - return "" -} +var xxx_messageInfo_LoggingOptionsType proto.InternalMessageInfo -func (m *CacheTTLEnableProps) GetIgnoreResponseCookie() bool { +func (m *LoggingOptionsType) GetClientLogOptions() *LogHeaderOptions { if m != nil { - return m.IgnoreResponseCookie + return m.ClientLogOptions } - return false + return nil } -func (m *CacheTTLEnableProps) GetCacheOverride() bool { +func (m *LoggingOptionsType) GetOriginLogOptions() *LogHeaderOptions { if m != nil { - return m.CacheOverride + return m.OriginLogOptions } - return false + return nil } -// Cache Action Options +// Cache Rule Expression List // -// x-displayName: "Cache Action Options" -// List of options for Cache Action -type CacheEligibleOptions struct { - // Eligible For Cache +// x-displayName: "Cache Rule Expression List" +// CDN Cache Rule Expressions. +type CDNCacheRuleExpressionList struct { + // Expression Name // - // x-displayName: "Eligible For Cache" + // x-displayName: "Expression Name" // x-required - // Compose Eligible For Cache + // x-example: "Expression-1" + // Name of the Expressions items that are ANDed + ExpressionName string `protobuf:"bytes,1,opt,name=expression_name,json=expressionName,proto3" json:"expression_name,omitempty"` + // Terms // - // Types that are valid to be assigned to EligibleForCache: - // *CacheEligibleOptions_SchemeHostnameUri - // *CacheEligibleOptions_SchemeHostnameRequestUri - // *CacheEligibleOptions_HostnameUri - // *CacheEligibleOptions_SchemeHostnameUriQuery - // *CacheEligibleOptions_SchemeProxyHostUri - // *CacheEligibleOptions_SchemeProxyHostRequestUri - EligibleForCache isCacheEligibleOptions_EligibleForCache `protobuf_oneof:"eligible_for_cache"` + // x-displayName: "Terms" + // x-required + // The Cache Rule Expression Terms that are ANDed + CacheRuleExpression []*CDNCacheRuleExpression `protobuf:"bytes,2,rep,name=cache_rule_expression,json=cacheRuleExpression,proto3" json:"cache_rule_expression,omitempty"` } -func (m *CacheEligibleOptions) Reset() { *m = CacheEligibleOptions{} } -func (*CacheEligibleOptions) ProtoMessage() {} -func (*CacheEligibleOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{12} +func (m *CDNCacheRuleExpressionList) Reset() { *m = CDNCacheRuleExpressionList{} } +func (*CDNCacheRuleExpressionList) ProtoMessage() {} +func (*CDNCacheRuleExpressionList) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{7} } -func (m *CacheEligibleOptions) XXX_Unmarshal(b []byte) error { +func (m *CDNCacheRuleExpressionList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CacheEligibleOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNCacheRuleExpressionList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1306,155 +1561,62 @@ func (m *CacheEligibleOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte } return b[:n], nil } -func (m *CacheEligibleOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheEligibleOptions.Merge(m, src) +func (m *CDNCacheRuleExpressionList) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNCacheRuleExpressionList.Merge(m, src) } -func (m *CacheEligibleOptions) XXX_Size() int { +func (m *CDNCacheRuleExpressionList) XXX_Size() int { return m.Size() } -func (m *CacheEligibleOptions) XXX_DiscardUnknown() { - xxx_messageInfo_CacheEligibleOptions.DiscardUnknown(m) -} - -var xxx_messageInfo_CacheEligibleOptions proto.InternalMessageInfo - -type isCacheEligibleOptions_EligibleForCache interface { - isCacheEligibleOptions_EligibleForCache() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type CacheEligibleOptions_SchemeHostnameUri struct { - SchemeHostnameUri *CacheTTLEnableProps `protobuf:"bytes,2,opt,name=scheme_hostname_uri,json=schemeHostnameUri,proto3,oneof" json:"scheme_hostname_uri,omitempty"` -} -type CacheEligibleOptions_SchemeHostnameRequestUri struct { - SchemeHostnameRequestUri *CacheTTLEnableProps `protobuf:"bytes,3,opt,name=scheme_hostname_request_uri,json=schemeHostnameRequestUri,proto3,oneof" json:"scheme_hostname_request_uri,omitempty"` -} -type CacheEligibleOptions_HostnameUri struct { - HostnameUri *CacheTTLEnableProps `protobuf:"bytes,4,opt,name=hostname_uri,json=hostnameUri,proto3,oneof" json:"hostname_uri,omitempty"` -} -type CacheEligibleOptions_SchemeHostnameUriQuery struct { - SchemeHostnameUriQuery *CacheTTLEnableProps `protobuf:"bytes,5,opt,name=scheme_hostname_uri_query,json=schemeHostnameUriQuery,proto3,oneof" json:"scheme_hostname_uri_query,omitempty"` -} -type CacheEligibleOptions_SchemeProxyHostUri struct { - SchemeProxyHostUri *CacheTTLEnableProps `protobuf:"bytes,6,opt,name=scheme_proxy_host_uri,json=schemeProxyHostUri,proto3,oneof" json:"scheme_proxy_host_uri,omitempty"` -} -type CacheEligibleOptions_SchemeProxyHostRequestUri struct { - SchemeProxyHostRequestUri *CacheTTLEnableProps `protobuf:"bytes,7,opt,name=scheme_proxy_host_request_uri,json=schemeProxyHostRequestUri,proto3,oneof" json:"scheme_proxy_host_request_uri,omitempty"` +func (m *CDNCacheRuleExpressionList) XXX_DiscardUnknown() { + xxx_messageInfo_CDNCacheRuleExpressionList.DiscardUnknown(m) } -func (*CacheEligibleOptions_SchemeHostnameUri) isCacheEligibleOptions_EligibleForCache() {} -func (*CacheEligibleOptions_SchemeHostnameRequestUri) isCacheEligibleOptions_EligibleForCache() {} -func (*CacheEligibleOptions_HostnameUri) isCacheEligibleOptions_EligibleForCache() {} -func (*CacheEligibleOptions_SchemeHostnameUriQuery) isCacheEligibleOptions_EligibleForCache() {} -func (*CacheEligibleOptions_SchemeProxyHostUri) isCacheEligibleOptions_EligibleForCache() {} -func (*CacheEligibleOptions_SchemeProxyHostRequestUri) isCacheEligibleOptions_EligibleForCache() {} +var xxx_messageInfo_CDNCacheRuleExpressionList proto.InternalMessageInfo -func (m *CacheEligibleOptions) GetEligibleForCache() isCacheEligibleOptions_EligibleForCache { +func (m *CDNCacheRuleExpressionList) GetExpressionName() string { if m != nil { - return m.EligibleForCache - } - return nil -} - -// Deprecated: Do not use. -func (m *CacheEligibleOptions) GetSchemeHostnameUri() *CacheTTLEnableProps { - if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeHostnameUri); ok { - return x.SchemeHostnameUri - } - return nil -} - -// Deprecated: Do not use. -func (m *CacheEligibleOptions) GetSchemeHostnameRequestUri() *CacheTTLEnableProps { - if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeHostnameRequestUri); ok { - return x.SchemeHostnameRequestUri - } - return nil -} - -// Deprecated: Do not use. -func (m *CacheEligibleOptions) GetHostnameUri() *CacheTTLEnableProps { - if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_HostnameUri); ok { - return x.HostnameUri - } - return nil -} - -// Deprecated: Do not use. -func (m *CacheEligibleOptions) GetSchemeHostnameUriQuery() *CacheTTLEnableProps { - if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeHostnameUriQuery); ok { - return x.SchemeHostnameUriQuery - } - return nil -} - -func (m *CacheEligibleOptions) GetSchemeProxyHostUri() *CacheTTLEnableProps { - if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeProxyHostUri); ok { - return x.SchemeProxyHostUri + return m.ExpressionName } - return nil + return "" } -func (m *CacheEligibleOptions) GetSchemeProxyHostRequestUri() *CacheTTLEnableProps { - if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeProxyHostRequestUri); ok { - return x.SchemeProxyHostRequestUri +func (m *CDNCacheRuleExpressionList) GetCacheRuleExpression() []*CDNCacheRuleExpression { + if m != nil { + return m.CacheRuleExpression } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*CacheEligibleOptions) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*CacheEligibleOptions_SchemeHostnameUri)(nil), - (*CacheEligibleOptions_SchemeHostnameRequestUri)(nil), - (*CacheEligibleOptions_HostnameUri)(nil), - (*CacheEligibleOptions_SchemeHostnameUriQuery)(nil), - (*CacheEligibleOptions_SchemeProxyHostUri)(nil), - (*CacheEligibleOptions_SchemeProxyHostRequestUri)(nil), - } -} - -// Cache Rule +// Cache Operator // -// x-displayName: "Cache Rule" -// This defines a CDN Cache Rule -type CDNCacheRule struct { - // Rule Name - // - // x-displayName: "Rule Name" - // x-required - // x-example: "Rule-1" - // Name of the Cache Rule - RuleName string `protobuf:"bytes,1,opt,name=rule_name,json=ruleName,proto3" json:"rule_name,omitempty"` - // Expression List - // - // x-displayName: "Expressions" - // x-required - // Expressions are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs.. - RuleExpressionList []*CDNCacheRuleExpressionList `protobuf:"bytes,2,rep,name=rule_expression_list,json=ruleExpressionList,proto3" json:"rule_expression_list,omitempty"` - // Cache Actions +// x-displayName: "Operator" +type CacheOperator struct { + // Cache Operator // - // x-displayName: "Cache Actions" - // x-required - // Configure the Cache Actions for a rule. + // x-displayName: "Operator" // - // Types that are valid to be assigned to CacheActions: - // *CDNCacheRule_CacheBypass - // *CDNCacheRule_EligibleForCache - CacheActions isCDNCacheRule_CacheActions `protobuf_oneof:"cache_actions"` + // Types that are valid to be assigned to CacheOperator: + // *CacheOperator_Equals + // *CacheOperator_DoesNotEqual + // *CacheOperator_Contains + // *CacheOperator_DoesNotContain + // *CacheOperator_Startswith + // *CacheOperator_DoesNotStartWith + // *CacheOperator_Endswith + // *CacheOperator_DoesNotEndWith + // *CacheOperator_MatchRegex + CacheOperator isCacheOperator_CacheOperator `protobuf_oneof:"cache_operator"` } -func (m *CDNCacheRule) Reset() { *m = CDNCacheRule{} } -func (*CDNCacheRule) ProtoMessage() {} -func (*CDNCacheRule) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{13} +func (m *CacheOperator) Reset() { *m = CacheOperator{} } +func (*CacheOperator) ProtoMessage() {} +func (*CacheOperator) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{8} } -func (m *CDNCacheRule) XXX_Unmarshal(b []byte) error { +func (m *CacheOperator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CDNCacheRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CacheOperator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1462,102 +1624,185 @@ func (m *CDNCacheRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) } return b[:n], nil } -func (m *CDNCacheRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNCacheRule.Merge(m, src) +func (m *CacheOperator) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheOperator.Merge(m, src) } -func (m *CDNCacheRule) XXX_Size() int { +func (m *CacheOperator) XXX_Size() int { return m.Size() } -func (m *CDNCacheRule) XXX_DiscardUnknown() { - xxx_messageInfo_CDNCacheRule.DiscardUnknown(m) +func (m *CacheOperator) XXX_DiscardUnknown() { + xxx_messageInfo_CacheOperator.DiscardUnknown(m) } -var xxx_messageInfo_CDNCacheRule proto.InternalMessageInfo +var xxx_messageInfo_CacheOperator proto.InternalMessageInfo -type isCDNCacheRule_CacheActions interface { - isCDNCacheRule_CacheActions() +type isCacheOperator_CacheOperator interface { + isCacheOperator_CacheOperator() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CDNCacheRule_CacheBypass struct { - CacheBypass *schema.Empty `protobuf:"bytes,4,opt,name=cache_bypass,json=cacheBypass,proto3,oneof" json:"cache_bypass,omitempty"` +type CacheOperator_Equals struct { + Equals string `protobuf:"bytes,2,opt,name=Equals,proto3,oneof" json:"Equals,omitempty"` } -type CDNCacheRule_EligibleForCache struct { - EligibleForCache *CacheEligibleOptions `protobuf:"bytes,5,opt,name=eligible_for_cache,json=eligibleForCache,proto3,oneof" json:"eligible_for_cache,omitempty"` +type CacheOperator_DoesNotEqual struct { + DoesNotEqual string `protobuf:"bytes,3,opt,name=DoesNotEqual,proto3,oneof" json:"DoesNotEqual,omitempty"` } - -func (*CDNCacheRule_CacheBypass) isCDNCacheRule_CacheActions() {} -func (*CDNCacheRule_EligibleForCache) isCDNCacheRule_CacheActions() {} - -func (m *CDNCacheRule) GetCacheActions() isCDNCacheRule_CacheActions { - if m != nil { - return m.CacheActions - } - return nil +type CacheOperator_Contains struct { + Contains string `protobuf:"bytes,4,opt,name=Contains,proto3,oneof" json:"Contains,omitempty"` } - -func (m *CDNCacheRule) GetRuleName() string { - if m != nil { - return m.RuleName - } - return "" +type CacheOperator_DoesNotContain struct { + DoesNotContain string `protobuf:"bytes,5,opt,name=DoesNotContain,proto3,oneof" json:"DoesNotContain,omitempty"` } - -func (m *CDNCacheRule) GetRuleExpressionList() []*CDNCacheRuleExpressionList { - if m != nil { - return m.RuleExpressionList - } - return nil +type CacheOperator_Startswith struct { + Startswith string `protobuf:"bytes,6,opt,name=Startswith,proto3,oneof" json:"Startswith,omitempty"` } - -func (m *CDNCacheRule) GetCacheBypass() *schema.Empty { - if x, ok := m.GetCacheActions().(*CDNCacheRule_CacheBypass); ok { - return x.CacheBypass +type CacheOperator_DoesNotStartWith struct { + DoesNotStartWith string `protobuf:"bytes,7,opt,name=DoesNotStartWith,proto3,oneof" json:"DoesNotStartWith,omitempty"` +} +type CacheOperator_Endswith struct { + Endswith string `protobuf:"bytes,8,opt,name=Endswith,proto3,oneof" json:"Endswith,omitempty"` +} +type CacheOperator_DoesNotEndWith struct { + DoesNotEndWith string `protobuf:"bytes,9,opt,name=DoesNotEndWith,proto3,oneof" json:"DoesNotEndWith,omitempty"` +} +type CacheOperator_MatchRegex struct { + MatchRegex string `protobuf:"bytes,10,opt,name=MatchRegex,proto3,oneof" json:"MatchRegex,omitempty"` +} + +func (*CacheOperator_Equals) isCacheOperator_CacheOperator() {} +func (*CacheOperator_DoesNotEqual) isCacheOperator_CacheOperator() {} +func (*CacheOperator_Contains) isCacheOperator_CacheOperator() {} +func (*CacheOperator_DoesNotContain) isCacheOperator_CacheOperator() {} +func (*CacheOperator_Startswith) isCacheOperator_CacheOperator() {} +func (*CacheOperator_DoesNotStartWith) isCacheOperator_CacheOperator() {} +func (*CacheOperator_Endswith) isCacheOperator_CacheOperator() {} +func (*CacheOperator_DoesNotEndWith) isCacheOperator_CacheOperator() {} +func (*CacheOperator_MatchRegex) isCacheOperator_CacheOperator() {} + +func (m *CacheOperator) GetCacheOperator() isCacheOperator_CacheOperator { + if m != nil { + return m.CacheOperator } return nil } -func (m *CDNCacheRule) GetEligibleForCache() *CacheEligibleOptions { - if x, ok := m.GetCacheActions().(*CDNCacheRule_EligibleForCache); ok { - return x.EligibleForCache +func (m *CacheOperator) GetEquals() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_Equals); ok { + return x.Equals } - return nil + return "" +} + +func (m *CacheOperator) GetDoesNotEqual() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotEqual); ok { + return x.DoesNotEqual + } + return "" +} + +func (m *CacheOperator) GetContains() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_Contains); ok { + return x.Contains + } + return "" +} + +func (m *CacheOperator) GetDoesNotContain() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotContain); ok { + return x.DoesNotContain + } + return "" +} + +func (m *CacheOperator) GetStartswith() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_Startswith); ok { + return x.Startswith + } + return "" +} + +func (m *CacheOperator) GetDoesNotStartWith() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotStartWith); ok { + return x.DoesNotStartWith + } + return "" +} + +func (m *CacheOperator) GetEndswith() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_Endswith); ok { + return x.Endswith + } + return "" +} + +func (m *CacheOperator) GetDoesNotEndWith() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_DoesNotEndWith); ok { + return x.DoesNotEndWith + } + return "" +} + +func (m *CacheOperator) GetMatchRegex() string { + if x, ok := m.GetCacheOperator().(*CacheOperator_MatchRegex); ok { + return x.MatchRegex + } + return "" } // XXX_OneofWrappers is for the internal use of the proto package. -func (*CDNCacheRule) XXX_OneofWrappers() []interface{} { +func (*CacheOperator) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*CDNCacheRule_CacheBypass)(nil), - (*CDNCacheRule_EligibleForCache)(nil), + (*CacheOperator_Equals)(nil), + (*CacheOperator_DoesNotEqual)(nil), + (*CacheOperator_Contains)(nil), + (*CacheOperator_DoesNotContain)(nil), + (*CacheOperator_Startswith)(nil), + (*CacheOperator_DoesNotStartWith)(nil), + (*CacheOperator_Endswith)(nil), + (*CacheOperator_DoesNotEndWith)(nil), + (*CacheOperator_MatchRegex)(nil), } } -// Default Cache TTL Props +// CacheHeaderMatcherType // -// x-displayName: "Default Cache TTL Props" -// Default Cache TTL Enable Values -type DefaultCacheTTLProps struct { - // Cache TTL Key +// x-displayName: "Cache Header to Match" +// Header match is done using the name of the header and its value. +// The value match is done using one of the following +// +// regex match on value +// exact match of value +// presence of header +// +// Header Match can also be inverse of above, which be used to check +// +// missing header or +// non-matching value +type CacheHeaderMatcherType struct { + // Name // - // x-displayName: "Cache TTL" - // x-required - // x-example: "5m, 60s, 120s, 3h, 1d, 15d" - // Cache TTL value is used to cache the resource/content for the specified amount of time - // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days - CacheTtl string `protobuf:"bytes,1,opt,name=cache_ttl,json=cacheTtl,proto3" json:"cache_ttl,omitempty"` + // x-displayName: "Name" + // x-example: "Content-Type" + // Name of the header + Name HeaderOptions `protobuf:"varint,1,opt,name=name,proto3,enum=ves.io.schema.views.cdn_loadbalancer.HeaderOptions" json:"name,omitempty"` + // cache_operator + // + // x-displayName: "Operator" + // Available operators + Operator *CacheOperator `protobuf:"bytes,5,opt,name=operator,proto3" json:"operator,omitempty"` } -func (m *DefaultCacheTTLProps) Reset() { *m = DefaultCacheTTLProps{} } -func (*DefaultCacheTTLProps) ProtoMessage() {} -func (*DefaultCacheTTLProps) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{14} +func (m *CacheHeaderMatcherType) Reset() { *m = CacheHeaderMatcherType{} } +func (*CacheHeaderMatcherType) ProtoMessage() {} +func (*CacheHeaderMatcherType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{9} } -func (m *DefaultCacheTTLProps) XXX_Unmarshal(b []byte) error { +func (m *CacheHeaderMatcherType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *DefaultCacheTTLProps) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CacheHeaderMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1565,52 +1810,53 @@ func (m *DefaultCacheTTLProps) XXX_Marshal(b []byte, deterministic bool) ([]byte } return b[:n], nil } -func (m *DefaultCacheTTLProps) XXX_Merge(src proto.Message) { - xxx_messageInfo_DefaultCacheTTLProps.Merge(m, src) +func (m *CacheHeaderMatcherType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheHeaderMatcherType.Merge(m, src) } -func (m *DefaultCacheTTLProps) XXX_Size() int { +func (m *CacheHeaderMatcherType) XXX_Size() int { return m.Size() } -func (m *DefaultCacheTTLProps) XXX_DiscardUnknown() { - xxx_messageInfo_DefaultCacheTTLProps.DiscardUnknown(m) +func (m *CacheHeaderMatcherType) XXX_DiscardUnknown() { + xxx_messageInfo_CacheHeaderMatcherType.DiscardUnknown(m) } -var xxx_messageInfo_DefaultCacheTTLProps proto.InternalMessageInfo +var xxx_messageInfo_CacheHeaderMatcherType proto.InternalMessageInfo -func (m *DefaultCacheTTLProps) GetCacheTtl() string { +func (m *CacheHeaderMatcherType) GetName() HeaderOptions { if m != nil { - return m.CacheTtl + return m.Name } - return "" + return proxy_host } -// Default Cache Action +func (m *CacheHeaderMatcherType) GetOperator() *CacheOperator { + if m != nil { + return m.Operator + } + return nil +} + +// PathMatcherType // -// x-displayName: "Default Cache Action" -// This defines a Default Cache Action -type DefaultCacheAction struct { - // Cache Actions - // - // x-displayName: "Cache Actions" - // Configure the Cache Actions for a rule. +// x-displayName: "Path to Match" +// Path match of the URI +type CDNPathMatcherType struct { + // cache_operator // - // Types that are valid to be assigned to CacheActions: - // *DefaultCacheAction_EligibleForCache - // *DefaultCacheAction_CacheTtlDefault - // *DefaultCacheAction_CacheTtlOverride - // *DefaultCacheAction_CacheDisabled - CacheActions isDefaultCacheAction_CacheActions `protobuf_oneof:"cache_actions"` + // x-displayName: "Path Match" + // A specification of path match + Operator *CacheOperator `protobuf:"bytes,5,opt,name=operator,proto3" json:"operator,omitempty"` } -func (m *DefaultCacheAction) Reset() { *m = DefaultCacheAction{} } -func (*DefaultCacheAction) ProtoMessage() {} -func (*DefaultCacheAction) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{15} +func (m *CDNPathMatcherType) Reset() { *m = CDNPathMatcherType{} } +func (*CDNPathMatcherType) ProtoMessage() {} +func (*CDNPathMatcherType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{10} } -func (m *DefaultCacheAction) XXX_Unmarshal(b []byte) error { +func (m *CDNPathMatcherType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *DefaultCacheAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNPathMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1618,116 +1864,120 @@ func (m *DefaultCacheAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *DefaultCacheAction) XXX_Merge(src proto.Message) { - xxx_messageInfo_DefaultCacheAction.Merge(m, src) +func (m *CDNPathMatcherType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNPathMatcherType.Merge(m, src) } -func (m *DefaultCacheAction) XXX_Size() int { +func (m *CDNPathMatcherType) XXX_Size() int { return m.Size() } -func (m *DefaultCacheAction) XXX_DiscardUnknown() { - xxx_messageInfo_DefaultCacheAction.DiscardUnknown(m) -} - -var xxx_messageInfo_DefaultCacheAction proto.InternalMessageInfo - -type isDefaultCacheAction_CacheActions interface { - isDefaultCacheAction_CacheActions() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type DefaultCacheAction_EligibleForCache struct { - EligibleForCache *DefaultCacheTTLProps `protobuf:"bytes,2,opt,name=eligible_for_cache,json=eligibleForCache,proto3,oneof" json:"eligible_for_cache,omitempty"` -} -type DefaultCacheAction_CacheTtlDefault struct { - CacheTtlDefault string `protobuf:"bytes,3,opt,name=cache_ttl_default,json=cacheTtlDefault,proto3,oneof" json:"cache_ttl_default,omitempty"` -} -type DefaultCacheAction_CacheTtlOverride struct { - CacheTtlOverride string `protobuf:"bytes,4,opt,name=cache_ttl_override,json=cacheTtlOverride,proto3,oneof" json:"cache_ttl_override,omitempty"` -} -type DefaultCacheAction_CacheDisabled struct { - CacheDisabled *schema.Empty `protobuf:"bytes,5,opt,name=cache_disabled,json=cacheDisabled,proto3,oneof" json:"cache_disabled,omitempty"` +func (m *CDNPathMatcherType) XXX_DiscardUnknown() { + xxx_messageInfo_CDNPathMatcherType.DiscardUnknown(m) } -func (*DefaultCacheAction_EligibleForCache) isDefaultCacheAction_CacheActions() {} -func (*DefaultCacheAction_CacheTtlDefault) isDefaultCacheAction_CacheActions() {} -func (*DefaultCacheAction_CacheTtlOverride) isDefaultCacheAction_CacheActions() {} -func (*DefaultCacheAction_CacheDisabled) isDefaultCacheAction_CacheActions() {} +var xxx_messageInfo_CDNPathMatcherType proto.InternalMessageInfo -func (m *DefaultCacheAction) GetCacheActions() isDefaultCacheAction_CacheActions { +func (m *CDNPathMatcherType) GetOperator() *CacheOperator { if m != nil { - return m.CacheActions + return m.Operator } return nil } -// Deprecated: Do not use. -func (m *DefaultCacheAction) GetEligibleForCache() *DefaultCacheTTLProps { - if x, ok := m.GetCacheActions().(*DefaultCacheAction_EligibleForCache); ok { - return x.EligibleForCache - } - return nil +// CacheCookieMatcherType +// +// x-displayName: "Cookie Matcher" +// A cookie matcher specifies the name of a single cookie and the criteria to match it. The input has a list of values for each +// cookie in the request. +// A cookie matcher can check for one of the following: +// * Presence or absence of the cookie +// * At least one of the values for the cookie in the request satisfies the MatcherType item +type CacheCookieMatcherType struct { + // name + // + // x-displayName: "Cookie Name" + // x-example: "Session" + // x-required + // A case-sensitive cookie name. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // cache_operator + // + // x-displayName: "Operator" + // + Operator *CacheOperator `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } -func (m *DefaultCacheAction) GetCacheTtlDefault() string { - if x, ok := m.GetCacheActions().(*DefaultCacheAction_CacheTtlDefault); ok { - return x.CacheTtlDefault +func (m *CacheCookieMatcherType) Reset() { *m = CacheCookieMatcherType{} } +func (*CacheCookieMatcherType) ProtoMessage() {} +func (*CacheCookieMatcherType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{11} +} +func (m *CacheCookieMatcherType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CacheCookieMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return "" + return b[:n], nil +} +func (m *CacheCookieMatcherType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheCookieMatcherType.Merge(m, src) +} +func (m *CacheCookieMatcherType) XXX_Size() int { + return m.Size() +} +func (m *CacheCookieMatcherType) XXX_DiscardUnknown() { + xxx_messageInfo_CacheCookieMatcherType.DiscardUnknown(m) } -func (m *DefaultCacheAction) GetCacheTtlOverride() string { - if x, ok := m.GetCacheActions().(*DefaultCacheAction_CacheTtlOverride); ok { - return x.CacheTtlOverride +var xxx_messageInfo_CacheCookieMatcherType proto.InternalMessageInfo + +func (m *CacheCookieMatcherType) GetName() string { + if m != nil { + return m.Name } return "" } -func (m *DefaultCacheAction) GetCacheDisabled() *schema.Empty { - if x, ok := m.GetCacheActions().(*DefaultCacheAction_CacheDisabled); ok { - return x.CacheDisabled +func (m *CacheCookieMatcherType) GetOperator() *CacheOperator { + if m != nil { + return m.Operator } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*DefaultCacheAction) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*DefaultCacheAction_EligibleForCache)(nil), - (*DefaultCacheAction_CacheTtlDefault)(nil), - (*DefaultCacheAction_CacheTtlOverride)(nil), - (*DefaultCacheAction_CacheDisabled)(nil), - } -} - -// Cache options +// CacheQueryParameterMatcherType // -// x-displayName: "Cache Options" -// This defines the options related to content caching -type CacheOptions struct { - // Default Cache Action +// x-displayName: "Query Parameter to Match" +// Query parameter match can be either regex match on value or exact match of value for given key +// An example for HTTP request with query parameter https://gitlab.com/dashboard/issues?assignee_username=xxyyxx +type CacheQueryParameterMatcherType struct { + // key // - // x-displayName: "Default Cache Action" + // x-displayName: "Key" // x-required - // Default value for Cache action. - DefaultCacheAction *DefaultCacheAction `protobuf:"bytes,1,opt,name=default_cache_action,json=defaultCacheAction,proto3" json:"default_cache_action,omitempty"` - // List of Cache rules(These rules are ORed) + // x-example: "assignee_username" + // Query parameter key + // In the above example, assignee_username is the key + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + // cache_operator // - // x-displayName: "Cache Rules" - // Rules are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs. - CacheRules []*CDNCacheRule `protobuf:"bytes,2,rep,name=cache_rules,json=cacheRules,proto3" json:"cache_rules,omitempty"` + // x-displayName: "Operator" + // + Operator *CacheOperator `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } -func (m *CacheOptions) Reset() { *m = CacheOptions{} } -func (*CacheOptions) ProtoMessage() {} -func (*CacheOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{16} +func (m *CacheQueryParameterMatcherType) Reset() { *m = CacheQueryParameterMatcherType{} } +func (*CacheQueryParameterMatcherType) ProtoMessage() {} +func (*CacheQueryParameterMatcherType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{12} } -func (m *CacheOptions) XXX_Unmarshal(b []byte) error { +func (m *CacheQueryParameterMatcherType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CacheOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CacheQueryParameterMatcherType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1735,58 +1985,70 @@ func (m *CacheOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) } return b[:n], nil } -func (m *CacheOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheOptions.Merge(m, src) +func (m *CacheQueryParameterMatcherType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheQueryParameterMatcherType.Merge(m, src) } -func (m *CacheOptions) XXX_Size() int { +func (m *CacheQueryParameterMatcherType) XXX_Size() int { return m.Size() } -func (m *CacheOptions) XXX_DiscardUnknown() { - xxx_messageInfo_CacheOptions.DiscardUnknown(m) +func (m *CacheQueryParameterMatcherType) XXX_DiscardUnknown() { + xxx_messageInfo_CacheQueryParameterMatcherType.DiscardUnknown(m) } -var xxx_messageInfo_CacheOptions proto.InternalMessageInfo +var xxx_messageInfo_CacheQueryParameterMatcherType proto.InternalMessageInfo -func (m *CacheOptions) GetDefaultCacheAction() *DefaultCacheAction { +func (m *CacheQueryParameterMatcherType) GetKey() string { if m != nil { - return m.DefaultCacheAction + return m.Key } - return nil + return "" } -func (m *CacheOptions) GetCacheRules() []*CDNCacheRule { +func (m *CacheQueryParameterMatcherType) GetOperator() *CacheOperator { if m != nil { - return m.CacheRules + return m.Operator } return nil } -// Cache options +// CDNCacheRuleExpression // -// x-displayName: "Cache Options" -// This defines the options related to content caching -type CacheTTLOptionsType struct { - // Cache Options +// x-displayName: "Cache Rule Expression" +// Select one of the field options +type CDNCacheRuleExpression struct { + // path_match // - // x-displayName: "Cache Settings" - // Configure the Cache Settings + // x-displayName: "Path Match" + // URI path of route + PathMatch *CDNPathMatcherType `protobuf:"bytes,1,opt,name=path_match,json=pathMatch,proto3" json:"path_match,omitempty"` + // query_params // - // Types that are valid to be assigned to TtlOptions: - // *CacheTTLOptionsType_CacheTtlDefault - // *CacheTTLOptionsType_CacheTtlOverride - // *CacheTTLOptionsType_CacheDisabled - TtlOptions isCacheTTLOptionsType_TtlOptions `protobuf_oneof:"ttl_options"` + // x-displayName: "Query Parameters" + // List of (key, value) query parameters + QueryParameters []*CacheQueryParameterMatcherType `protobuf:"bytes,6,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"` + // Cache Headers + // + // x-displayName: "Cache Headers" + // Configure cache rule headers to match the criteria + CacheHeaders []*CacheHeaderMatcherType `protobuf:"bytes,5,rep,name=cache_headers,json=cacheHeaders,proto3" json:"cache_headers,omitempty"` + // cookie matchers + // + // x-displayName: "Cookie Matchers" + // A list of predicates for all cookies that need to be matched. The criteria for matching each cookie is described in individual instances + // of CookieMatcherType. The actual cookie values are extracted from the request API as a list of strings for each cookie name. + // Note that all specified cookie matcher predicates must evaluate to true. + CookieMatcher []*CacheCookieMatcherType `protobuf:"bytes,7,rep,name=cookie_matcher,json=cookieMatcher,proto3" json:"cookie_matcher,omitempty"` } -func (m *CacheTTLOptionsType) Reset() { *m = CacheTTLOptionsType{} } -func (*CacheTTLOptionsType) ProtoMessage() {} -func (*CacheTTLOptionsType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{17} +func (m *CDNCacheRuleExpression) Reset() { *m = CDNCacheRuleExpression{} } +func (*CDNCacheRuleExpression) ProtoMessage() {} +func (*CDNCacheRuleExpression) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{13} } -func (m *CacheTTLOptionsType) XXX_Unmarshal(b []byte) error { +func (m *CDNCacheRuleExpression) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CacheTTLOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNCacheRuleExpression) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1794,117 +2056,80 @@ func (m *CacheTTLOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *CacheTTLOptionsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CacheTTLOptionsType.Merge(m, src) +func (m *CDNCacheRuleExpression) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNCacheRuleExpression.Merge(m, src) } -func (m *CacheTTLOptionsType) XXX_Size() int { +func (m *CDNCacheRuleExpression) XXX_Size() int { return m.Size() } -func (m *CacheTTLOptionsType) XXX_DiscardUnknown() { - xxx_messageInfo_CacheTTLOptionsType.DiscardUnknown(m) -} - -var xxx_messageInfo_CacheTTLOptionsType proto.InternalMessageInfo - -type isCacheTTLOptionsType_TtlOptions interface { - isCacheTTLOptionsType_TtlOptions() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type CacheTTLOptionsType_CacheTtlDefault struct { - CacheTtlDefault string `protobuf:"bytes,2,opt,name=cache_ttl_default,json=cacheTtlDefault,proto3,oneof" json:"cache_ttl_default,omitempty"` -} -type CacheTTLOptionsType_CacheTtlOverride struct { - CacheTtlOverride string `protobuf:"bytes,3,opt,name=cache_ttl_override,json=cacheTtlOverride,proto3,oneof" json:"cache_ttl_override,omitempty"` -} -type CacheTTLOptionsType_CacheDisabled struct { - CacheDisabled *schema.Empty `protobuf:"bytes,4,opt,name=cache_disabled,json=cacheDisabled,proto3,oneof" json:"cache_disabled,omitempty"` +func (m *CDNCacheRuleExpression) XXX_DiscardUnknown() { + xxx_messageInfo_CDNCacheRuleExpression.DiscardUnknown(m) } -func (*CacheTTLOptionsType_CacheTtlDefault) isCacheTTLOptionsType_TtlOptions() {} -func (*CacheTTLOptionsType_CacheTtlOverride) isCacheTTLOptionsType_TtlOptions() {} -func (*CacheTTLOptionsType_CacheDisabled) isCacheTTLOptionsType_TtlOptions() {} +var xxx_messageInfo_CDNCacheRuleExpression proto.InternalMessageInfo -func (m *CacheTTLOptionsType) GetTtlOptions() isCacheTTLOptionsType_TtlOptions { +func (m *CDNCacheRuleExpression) GetPathMatch() *CDNPathMatcherType { if m != nil { - return m.TtlOptions + return m.PathMatch } return nil } -func (m *CacheTTLOptionsType) GetCacheTtlDefault() string { - if x, ok := m.GetTtlOptions().(*CacheTTLOptionsType_CacheTtlDefault); ok { - return x.CacheTtlDefault - } - return "" -} - -func (m *CacheTTLOptionsType) GetCacheTtlOverride() string { - if x, ok := m.GetTtlOptions().(*CacheTTLOptionsType_CacheTtlOverride); ok { - return x.CacheTtlOverride +func (m *CDNCacheRuleExpression) GetQueryParameters() []*CacheQueryParameterMatcherType { + if m != nil { + return m.QueryParameters } - return "" + return nil } -func (m *CacheTTLOptionsType) GetCacheDisabled() *schema.Empty { - if x, ok := m.GetTtlOptions().(*CacheTTLOptionsType_CacheDisabled); ok { - return x.CacheDisabled +func (m *CDNCacheRuleExpression) GetCacheHeaders() []*CacheHeaderMatcherType { + if m != nil { + return m.CacheHeaders } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*CacheTTLOptionsType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*CacheTTLOptionsType_CacheTtlDefault)(nil), - (*CacheTTLOptionsType_CacheTtlOverride)(nil), - (*CacheTTLOptionsType_CacheDisabled)(nil), +func (m *CDNCacheRuleExpression) GetCookieMatcher() []*CacheCookieMatcherType { + if m != nil { + return m.CookieMatcher } + return nil } -// Advanced options +// Cache TTL Enable Props // -// x-displayName: "Advanced Options" -// This defines various options to define a route -type AdvancedOptionsType struct { - // Header Control - // - // x-displayName: "Header Control" - // Request/Response header related options - HeaderOptions *HeaderControlType `protobuf:"bytes,16,opt,name=header_options,json=headerOptions,proto3" json:"header_options,omitempty"` - // Security Options - // - // x-displayName: "Security Options" - // Security related options - SecurityOptions *SecurityOptionsType `protobuf:"bytes,17,opt,name=security_options,json=securityOptions,proto3" json:"security_options,omitempty"` - // Logging Options +// x-displayName: "Cache TTL Enable Props" +// Cache TTL Enable Values +type CacheTTLEnableProps struct { + // Cache TTL Key // - // x-displayName: "Logging Options" - // Logging related options - LoggingOptions *LoggingOptionsType `protobuf:"bytes,18,opt,name=logging_options,json=loggingOptions,proto3" json:"logging_options,omitempty"` - // Cache Options + // x-displayName: "Cache TTL" + // x-required + // x-example: "5m, 60s, 120s, 3h, 1d, 15d" + // Cache TTL value is used to cache the resource/content for the specified amount of time + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + CacheTtl string `protobuf:"bytes,1,opt,name=cache_ttl,json=cacheTtl,proto3" json:"cache_ttl,omitempty"` + // Set Cookie // - // x-displayName: "Cache Options" - // Cache Options - CacheTtlOptions *CacheTTLOptionsType `protobuf:"bytes,19,opt,name=cache_ttl_options,json=cacheTtlOptions,proto3" json:"cache_ttl_options,omitempty"` // Deprecated: Do not use. - // Cache Options + // x-displayName: "Ignore-Response-Cookie" + // By default, response will not be cached if set-cookie header is present. This option will override the behavior and cache response even with set-cookie header present. + IgnoreResponseCookie bool `protobuf:"varint,5,opt,name=ignore_response_cookie,json=ignoreResponseCookie,proto3" json:"ignore_response_cookie,omitempty"` + // Cache Override // - // x-displayName: "Cache Options" - // Cache Options - CacheOptions *CacheOptions `protobuf:"bytes,20,opt,name=cache_options,json=cacheOptions,proto3" json:"cache_options,omitempty"` + // x-displayName: "Cache Override" + // Honour Cache Override + CacheOverride bool `protobuf:"varint,4,opt,name=cache_override,json=cacheOverride,proto3" json:"cache_override,omitempty"` } -func (m *AdvancedOptionsType) Reset() { *m = AdvancedOptionsType{} } -func (*AdvancedOptionsType) ProtoMessage() {} -func (*AdvancedOptionsType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{18} +func (m *CacheTTLEnableProps) Reset() { *m = CacheTTLEnableProps{} } +func (*CacheTTLEnableProps) ProtoMessage() {} +func (*CacheTTLEnableProps) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{14} } -func (m *AdvancedOptionsType) XXX_Unmarshal(b []byte) error { +func (m *CacheTTLEnableProps) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *AdvancedOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CacheTTLEnableProps) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1912,80 +2137,69 @@ func (m *AdvancedOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *AdvancedOptionsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_AdvancedOptionsType.Merge(m, src) +func (m *CacheTTLEnableProps) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheTTLEnableProps.Merge(m, src) } -func (m *AdvancedOptionsType) XXX_Size() int { +func (m *CacheTTLEnableProps) XXX_Size() int { return m.Size() } -func (m *AdvancedOptionsType) XXX_DiscardUnknown() { - xxx_messageInfo_AdvancedOptionsType.DiscardUnknown(m) -} - -var xxx_messageInfo_AdvancedOptionsType proto.InternalMessageInfo - -func (m *AdvancedOptionsType) GetHeaderOptions() *HeaderControlType { - if m != nil { - return m.HeaderOptions - } - return nil +func (m *CacheTTLEnableProps) XXX_DiscardUnknown() { + xxx_messageInfo_CacheTTLEnableProps.DiscardUnknown(m) } -func (m *AdvancedOptionsType) GetSecurityOptions() *SecurityOptionsType { - if m != nil { - return m.SecurityOptions - } - return nil -} +var xxx_messageInfo_CacheTTLEnableProps proto.InternalMessageInfo -func (m *AdvancedOptionsType) GetLoggingOptions() *LoggingOptionsType { +func (m *CacheTTLEnableProps) GetCacheTtl() string { if m != nil { - return m.LoggingOptions + return m.CacheTtl } - return nil + return "" } -// Deprecated: Do not use. -func (m *AdvancedOptionsType) GetCacheTtlOptions() *CacheTTLOptionsType { +func (m *CacheTTLEnableProps) GetIgnoreResponseCookie() bool { if m != nil { - return m.CacheTtlOptions + return m.IgnoreResponseCookie } - return nil + return false } -func (m *AdvancedOptionsType) GetCacheOptions() *CacheOptions { +func (m *CacheTTLEnableProps) GetCacheOverride() bool { if m != nil { - return m.CacheOptions + return m.CacheOverride } - return nil + return false } -// CDNTLSConfig +// Cache Action Options // -// x-displayName: "TLS Config" -// This defines various options to configure TLS configuration parameters -type CDNTLSConfig struct { - // TLS Security Level +// x-displayName: "Cache Action Options" +// List of options for Cache Action +type CacheEligibleOptions struct { + // Eligible For Cache // - // x-displayName: "TLS Security Level" + // x-displayName: "Eligible For Cache" // x-required - // The security level for TLS handshake between client/server and the platform. + // Compose Eligible For Cache // - // Types that are valid to be assigned to Choice: - // *CDNTLSConfig_Tls_12Plus - // *CDNTLSConfig_Tls_11Plus - Choice isCDNTLSConfig_Choice `protobuf_oneof:"choice"` + // Types that are valid to be assigned to EligibleForCache: + // *CacheEligibleOptions_SchemeHostnameUri + // *CacheEligibleOptions_SchemeHostnameRequestUri + // *CacheEligibleOptions_HostnameUri + // *CacheEligibleOptions_SchemeHostnameUriQuery + // *CacheEligibleOptions_SchemeProxyHostUri + // *CacheEligibleOptions_SchemeProxyHostRequestUri + EligibleForCache isCacheEligibleOptions_EligibleForCache `protobuf_oneof:"eligible_for_cache"` } -func (m *CDNTLSConfig) Reset() { *m = CDNTLSConfig{} } -func (*CDNTLSConfig) ProtoMessage() {} -func (*CDNTLSConfig) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{19} +func (m *CacheEligibleOptions) Reset() { *m = CacheEligibleOptions{} } +func (*CacheEligibleOptions) ProtoMessage() {} +func (*CacheEligibleOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{15} } -func (m *CDNTLSConfig) XXX_Unmarshal(b []byte) error { +func (m *CacheEligibleOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CDNTLSConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CacheEligibleOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1993,163 +2207,258 @@ func (m *CDNTLSConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) } return b[:n], nil } -func (m *CDNTLSConfig) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNTLSConfig.Merge(m, src) +func (m *CacheEligibleOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheEligibleOptions.Merge(m, src) } -func (m *CDNTLSConfig) XXX_Size() int { +func (m *CacheEligibleOptions) XXX_Size() int { return m.Size() } -func (m *CDNTLSConfig) XXX_DiscardUnknown() { - xxx_messageInfo_CDNTLSConfig.DiscardUnknown(m) +func (m *CacheEligibleOptions) XXX_DiscardUnknown() { + xxx_messageInfo_CacheEligibleOptions.DiscardUnknown(m) } -var xxx_messageInfo_CDNTLSConfig proto.InternalMessageInfo +var xxx_messageInfo_CacheEligibleOptions proto.InternalMessageInfo -type isCDNTLSConfig_Choice interface { - isCDNTLSConfig_Choice() +type isCacheEligibleOptions_EligibleForCache interface { + isCacheEligibleOptions_EligibleForCache() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CDNTLSConfig_Tls_12Plus struct { - Tls_12Plus *schema.Empty `protobuf:"bytes,1,opt,name=tls_12_plus,json=tls12Plus,proto3,oneof" json:"tls_12_plus,omitempty"` +type CacheEligibleOptions_SchemeHostnameUri struct { + SchemeHostnameUri *CacheTTLEnableProps `protobuf:"bytes,2,opt,name=scheme_hostname_uri,json=schemeHostnameUri,proto3,oneof" json:"scheme_hostname_uri,omitempty"` } -type CDNTLSConfig_Tls_11Plus struct { - Tls_11Plus *schema.Empty `protobuf:"bytes,2,opt,name=tls_11_plus,json=tls11Plus,proto3,oneof" json:"tls_11_plus,omitempty"` +type CacheEligibleOptions_SchemeHostnameRequestUri struct { + SchemeHostnameRequestUri *CacheTTLEnableProps `protobuf:"bytes,3,opt,name=scheme_hostname_request_uri,json=schemeHostnameRequestUri,proto3,oneof" json:"scheme_hostname_request_uri,omitempty"` +} +type CacheEligibleOptions_HostnameUri struct { + HostnameUri *CacheTTLEnableProps `protobuf:"bytes,4,opt,name=hostname_uri,json=hostnameUri,proto3,oneof" json:"hostname_uri,omitempty"` +} +type CacheEligibleOptions_SchemeHostnameUriQuery struct { + SchemeHostnameUriQuery *CacheTTLEnableProps `protobuf:"bytes,5,opt,name=scheme_hostname_uri_query,json=schemeHostnameUriQuery,proto3,oneof" json:"scheme_hostname_uri_query,omitempty"` +} +type CacheEligibleOptions_SchemeProxyHostUri struct { + SchemeProxyHostUri *CacheTTLEnableProps `protobuf:"bytes,6,opt,name=scheme_proxy_host_uri,json=schemeProxyHostUri,proto3,oneof" json:"scheme_proxy_host_uri,omitempty"` +} +type CacheEligibleOptions_SchemeProxyHostRequestUri struct { + SchemeProxyHostRequestUri *CacheTTLEnableProps `protobuf:"bytes,7,opt,name=scheme_proxy_host_request_uri,json=schemeProxyHostRequestUri,proto3,oneof" json:"scheme_proxy_host_request_uri,omitempty"` } -func (*CDNTLSConfig_Tls_12Plus) isCDNTLSConfig_Choice() {} -func (*CDNTLSConfig_Tls_11Plus) isCDNTLSConfig_Choice() {} +func (*CacheEligibleOptions_SchemeHostnameUri) isCacheEligibleOptions_EligibleForCache() {} +func (*CacheEligibleOptions_SchemeHostnameRequestUri) isCacheEligibleOptions_EligibleForCache() {} +func (*CacheEligibleOptions_HostnameUri) isCacheEligibleOptions_EligibleForCache() {} +func (*CacheEligibleOptions_SchemeHostnameUriQuery) isCacheEligibleOptions_EligibleForCache() {} +func (*CacheEligibleOptions_SchemeProxyHostUri) isCacheEligibleOptions_EligibleForCache() {} +func (*CacheEligibleOptions_SchemeProxyHostRequestUri) isCacheEligibleOptions_EligibleForCache() {} -func (m *CDNTLSConfig) GetChoice() isCDNTLSConfig_Choice { +func (m *CacheEligibleOptions) GetEligibleForCache() isCacheEligibleOptions_EligibleForCache { if m != nil { - return m.Choice + return m.EligibleForCache } return nil } -func (m *CDNTLSConfig) GetTls_12Plus() *schema.Empty { - if x, ok := m.GetChoice().(*CDNTLSConfig_Tls_12Plus); ok { - return x.Tls_12Plus +// Deprecated: Do not use. +func (m *CacheEligibleOptions) GetSchemeHostnameUri() *CacheTTLEnableProps { + if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeHostnameUri); ok { + return x.SchemeHostnameUri } return nil } -func (m *CDNTLSConfig) GetTls_11Plus() *schema.Empty { - if x, ok := m.GetChoice().(*CDNTLSConfig_Tls_11Plus); ok { - return x.Tls_11Plus +// Deprecated: Do not use. +func (m *CacheEligibleOptions) GetSchemeHostnameRequestUri() *CacheTTLEnableProps { + if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeHostnameRequestUri); ok { + return x.SchemeHostnameRequestUri } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*CDNTLSConfig) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*CDNTLSConfig_Tls_12Plus)(nil), - (*CDNTLSConfig_Tls_11Plus)(nil), +// Deprecated: Do not use. +func (m *CacheEligibleOptions) GetHostnameUri() *CacheTTLEnableProps { + if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_HostnameUri); ok { + return x.HostnameUri } + return nil } -// HTTPS with Automatic Certificate -// -// x-displayName: "HTTPS with Automatic Certificate" -// Choice for selecting HTTPS CDN distribution with bring your own certificates -type CDNHTTPSAutoCertsType struct { - // HTTP Redirect - // - // x-displayName: "HTTP Redirect to HTTPS" - // Redirect HTTP traffic to HTTPS - HttpRedirect bool `protobuf:"varint,1,opt,name=http_redirect,json=httpRedirect,proto3" json:"http_redirect,omitempty"` - // Add HSTS - // - // x-displayName: "Add HSTS Header" - // Add HTTP Strict-Transport-Security response header - AddHsts bool `protobuf:"varint,2,opt,name=add_hsts,json=addHsts,proto3" json:"add_hsts,omitempty"` - // TLS Config - // - // x-displayName: "TLS" - // TLS Configuration Parameters - TlsConfig *CDNTLSConfig `protobuf:"bytes,3,opt,name=tls_config,json=tlsConfig,proto3" json:"tls_config,omitempty"` +// Deprecated: Do not use. +func (m *CacheEligibleOptions) GetSchemeHostnameUriQuery() *CacheTTLEnableProps { + if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeHostnameUriQuery); ok { + return x.SchemeHostnameUriQuery + } + return nil } -func (m *CDNHTTPSAutoCertsType) Reset() { *m = CDNHTTPSAutoCertsType{} } -func (*CDNHTTPSAutoCertsType) ProtoMessage() {} -func (*CDNHTTPSAutoCertsType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{20} -} -func (m *CDNHTTPSAutoCertsType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +func (m *CacheEligibleOptions) GetSchemeProxyHostUri() *CacheTTLEnableProps { + if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeProxyHostUri); ok { + return x.SchemeProxyHostUri + } + return nil } -func (m *CDNHTTPSAutoCertsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +func (m *CacheEligibleOptions) GetSchemeProxyHostRequestUri() *CacheTTLEnableProps { + if x, ok := m.GetEligibleForCache().(*CacheEligibleOptions_SchemeProxyHostRequestUri); ok { + return x.SchemeProxyHostRequestUri } - return b[:n], nil + return nil } -func (m *CDNHTTPSAutoCertsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNHTTPSAutoCertsType.Merge(m, src) + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CacheEligibleOptions) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CacheEligibleOptions_SchemeHostnameUri)(nil), + (*CacheEligibleOptions_SchemeHostnameRequestUri)(nil), + (*CacheEligibleOptions_HostnameUri)(nil), + (*CacheEligibleOptions_SchemeHostnameUriQuery)(nil), + (*CacheEligibleOptions_SchemeProxyHostUri)(nil), + (*CacheEligibleOptions_SchemeProxyHostRequestUri)(nil), + } } -func (m *CDNHTTPSAutoCertsType) XXX_Size() int { + +// Cache Rule +// +// x-displayName: "Cache Rule" +// This defines a CDN Cache Rule +type CDNCacheRule struct { + // Rule Name + // + // x-displayName: "Rule Name" + // x-required + // x-example: "Rule-1" + // Name of the Cache Rule + RuleName string `protobuf:"bytes,1,opt,name=rule_name,json=ruleName,proto3" json:"rule_name,omitempty"` + // Expression List + // + // x-displayName: "Expressions" + // x-required + // Expressions are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs.. + RuleExpressionList []*CDNCacheRuleExpressionList `protobuf:"bytes,2,rep,name=rule_expression_list,json=ruleExpressionList,proto3" json:"rule_expression_list,omitempty"` + // Cache Actions + // + // x-displayName: "Cache Actions" + // x-required + // Configure the Cache Actions for a rule. + // + // Types that are valid to be assigned to CacheActions: + // *CDNCacheRule_CacheBypass + // *CDNCacheRule_EligibleForCache + CacheActions isCDNCacheRule_CacheActions `protobuf_oneof:"cache_actions"` +} + +func (m *CDNCacheRule) Reset() { *m = CDNCacheRule{} } +func (*CDNCacheRule) ProtoMessage() {} +func (*CDNCacheRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{16} +} +func (m *CDNCacheRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CDNCacheRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CDNCacheRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNCacheRule.Merge(m, src) +} +func (m *CDNCacheRule) XXX_Size() int { return m.Size() } -func (m *CDNHTTPSAutoCertsType) XXX_DiscardUnknown() { - xxx_messageInfo_CDNHTTPSAutoCertsType.DiscardUnknown(m) +func (m *CDNCacheRule) XXX_DiscardUnknown() { + xxx_messageInfo_CDNCacheRule.DiscardUnknown(m) } -var xxx_messageInfo_CDNHTTPSAutoCertsType proto.InternalMessageInfo +var xxx_messageInfo_CDNCacheRule proto.InternalMessageInfo -func (m *CDNHTTPSAutoCertsType) GetHttpRedirect() bool { +type isCDNCacheRule_CacheActions interface { + isCDNCacheRule_CacheActions() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type CDNCacheRule_CacheBypass struct { + CacheBypass *schema.Empty `protobuf:"bytes,4,opt,name=cache_bypass,json=cacheBypass,proto3,oneof" json:"cache_bypass,omitempty"` +} +type CDNCacheRule_EligibleForCache struct { + EligibleForCache *CacheEligibleOptions `protobuf:"bytes,5,opt,name=eligible_for_cache,json=eligibleForCache,proto3,oneof" json:"eligible_for_cache,omitempty"` +} + +func (*CDNCacheRule_CacheBypass) isCDNCacheRule_CacheActions() {} +func (*CDNCacheRule_EligibleForCache) isCDNCacheRule_CacheActions() {} + +func (m *CDNCacheRule) GetCacheActions() isCDNCacheRule_CacheActions { if m != nil { - return m.HttpRedirect + return m.CacheActions } - return false + return nil } -func (m *CDNHTTPSAutoCertsType) GetAddHsts() bool { +func (m *CDNCacheRule) GetRuleName() string { if m != nil { - return m.AddHsts + return m.RuleName } - return false + return "" } -func (m *CDNHTTPSAutoCertsType) GetTlsConfig() *CDNTLSConfig { +func (m *CDNCacheRule) GetRuleExpressionList() []*CDNCacheRuleExpressionList { if m != nil { - return m.TlsConfig + return m.RuleExpressionList } return nil } -// CDNDownstreamTlsParamsType +func (m *CDNCacheRule) GetCacheBypass() *schema.Empty { + if x, ok := m.GetCacheActions().(*CDNCacheRule_CacheBypass); ok { + return x.CacheBypass + } + return nil +} + +func (m *CDNCacheRule) GetEligibleForCache() *CacheEligibleOptions { + if x, ok := m.GetCacheActions().(*CDNCacheRule_EligibleForCache); ok { + return x.EligibleForCache + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CDNCacheRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CDNCacheRule_CacheBypass)(nil), + (*CDNCacheRule_EligibleForCache)(nil), + } +} + +// Default Cache TTL Props // -// x-displayName: "TLS Parameters" -// TLS parameters for CDN distribution -type CDNDownstreamTlsParamsType struct { - // TLS Config - // - // x-displayName: "TLS" - // TLS Configuration Parameters - TlsConfig *CDNTLSConfig `protobuf:"bytes,1,opt,name=tls_config,json=tlsConfig,proto3" json:"tls_config,omitempty"` - // tls_certificates +// x-displayName: "Default Cache TTL Props" +// Default Cache TTL Enable Values +type DefaultCacheTTLProps struct { + // Cache TTL Key // - // x-displayName: "TLS Certificates" + // x-displayName: "Cache TTL" // x-required - // Users can add one or more certificates that share the same set of domains. - // for example, domain.com and *.domain.com - but use different signature algorithms - TlsCertificates []*schema.TlsCertificateType `protobuf:"bytes,2,rep,name=tls_certificates,json=tlsCertificates,proto3" json:"tls_certificates,omitempty"` + // x-example: "5m, 60s, 120s, 3h, 1d, 15d" + // Cache TTL value is used to cache the resource/content for the specified amount of time + // Format: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days + CacheTtl string `protobuf:"bytes,1,opt,name=cache_ttl,json=cacheTtl,proto3" json:"cache_ttl,omitempty"` } -func (m *CDNDownstreamTlsParamsType) Reset() { *m = CDNDownstreamTlsParamsType{} } -func (*CDNDownstreamTlsParamsType) ProtoMessage() {} -func (*CDNDownstreamTlsParamsType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{21} +func (m *DefaultCacheTTLProps) Reset() { *m = DefaultCacheTTLProps{} } +func (*DefaultCacheTTLProps) ProtoMessage() {} +func (*DefaultCacheTTLProps) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{17} } -func (m *CDNDownstreamTlsParamsType) XXX_Unmarshal(b []byte) error { +func (m *DefaultCacheTTLProps) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CDNDownstreamTlsParamsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *DefaultCacheTTLProps) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2157,63 +2466,52 @@ func (m *CDNDownstreamTlsParamsType) XXX_Marshal(b []byte, deterministic bool) ( } return b[:n], nil } -func (m *CDNDownstreamTlsParamsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNDownstreamTlsParamsType.Merge(m, src) +func (m *DefaultCacheTTLProps) XXX_Merge(src proto.Message) { + xxx_messageInfo_DefaultCacheTTLProps.Merge(m, src) } -func (m *CDNDownstreamTlsParamsType) XXX_Size() int { +func (m *DefaultCacheTTLProps) XXX_Size() int { return m.Size() } -func (m *CDNDownstreamTlsParamsType) XXX_DiscardUnknown() { - xxx_messageInfo_CDNDownstreamTlsParamsType.DiscardUnknown(m) +func (m *DefaultCacheTTLProps) XXX_DiscardUnknown() { + xxx_messageInfo_DefaultCacheTTLProps.DiscardUnknown(m) } -var xxx_messageInfo_CDNDownstreamTlsParamsType proto.InternalMessageInfo - -func (m *CDNDownstreamTlsParamsType) GetTlsConfig() *CDNTLSConfig { - if m != nil { - return m.TlsConfig - } - return nil -} +var xxx_messageInfo_DefaultCacheTTLProps proto.InternalMessageInfo -func (m *CDNDownstreamTlsParamsType) GetTlsCertificates() []*schema.TlsCertificateType { +func (m *DefaultCacheTTLProps) GetCacheTtl() string { if m != nil { - return m.TlsCertificates + return m.CacheTtl } - return nil + return "" } -// BYOC for the CDN distribution +// Default Cache Action // -// x-displayName: "BYOC HTTPS Choice" -// Choice for selecting CDN Distribution with bring your own certificates -type CDNHTTPSCustomCertsType struct { - // HTTP Redirect - // - // x-displayName: "HTTP Redirect to HTTPS" - // Redirect HTTP traffic to HTTPS - HttpRedirect bool `protobuf:"varint,1,opt,name=http_redirect,json=httpRedirect,proto3" json:"http_redirect,omitempty"` - // Add HSTS +// x-displayName: "Default Cache Action" +// This defines a Default Cache Action +type DefaultCacheAction struct { + // Cache Actions // - // x-displayName: "Add HSTS Header" - // Add HTTP Strict-Transport-Security response header - AddHsts bool `protobuf:"varint,2,opt,name=add_hsts,json=addHsts,proto3" json:"add_hsts,omitempty"` - // TLS parameters. + // x-displayName: "Cache Actions" + // Configure the Cache Actions for a rule. // - // x-displayName: "TLS Parameters" - // TLS parameters for the downstream connections. - TlsParameters *CDNDownstreamTlsParamsType `protobuf:"bytes,3,opt,name=tls_parameters,json=tlsParameters,proto3" json:"tls_parameters,omitempty"` + // Types that are valid to be assigned to CacheActions: + // *DefaultCacheAction_EligibleForCache + // *DefaultCacheAction_CacheTtlDefault + // *DefaultCacheAction_CacheTtlOverride + // *DefaultCacheAction_CacheDisabled + CacheActions isDefaultCacheAction_CacheActions `protobuf_oneof:"cache_actions"` } -func (m *CDNHTTPSCustomCertsType) Reset() { *m = CDNHTTPSCustomCertsType{} } -func (*CDNHTTPSCustomCertsType) ProtoMessage() {} -func (*CDNHTTPSCustomCertsType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{22} +func (m *DefaultCacheAction) Reset() { *m = DefaultCacheAction{} } +func (*DefaultCacheAction) ProtoMessage() {} +func (*DefaultCacheAction) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{18} } -func (m *CDNHTTPSCustomCertsType) XXX_Unmarshal(b []byte) error { +func (m *DefaultCacheAction) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CDNHTTPSCustomCertsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *DefaultCacheAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2221,133 +2519,175 @@ func (m *CDNHTTPSCustomCertsType) XXX_Marshal(b []byte, deterministic bool) ([]b } return b[:n], nil } -func (m *CDNHTTPSCustomCertsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNHTTPSCustomCertsType.Merge(m, src) +func (m *DefaultCacheAction) XXX_Merge(src proto.Message) { + xxx_messageInfo_DefaultCacheAction.Merge(m, src) } -func (m *CDNHTTPSCustomCertsType) XXX_Size() int { +func (m *DefaultCacheAction) XXX_Size() int { return m.Size() } -func (m *CDNHTTPSCustomCertsType) XXX_DiscardUnknown() { - xxx_messageInfo_CDNHTTPSCustomCertsType.DiscardUnknown(m) +func (m *DefaultCacheAction) XXX_DiscardUnknown() { + xxx_messageInfo_DefaultCacheAction.DiscardUnknown(m) } -var xxx_messageInfo_CDNHTTPSCustomCertsType proto.InternalMessageInfo +var xxx_messageInfo_DefaultCacheAction proto.InternalMessageInfo -func (m *CDNHTTPSCustomCertsType) GetHttpRedirect() bool { - if m != nil { - return m.HttpRedirect - } - return false +type isDefaultCacheAction_CacheActions interface { + isDefaultCacheAction_CacheActions() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *CDNHTTPSCustomCertsType) GetAddHsts() bool { - if m != nil { - return m.AddHsts - } - return false +type DefaultCacheAction_EligibleForCache struct { + EligibleForCache *DefaultCacheTTLProps `protobuf:"bytes,2,opt,name=eligible_for_cache,json=eligibleForCache,proto3,oneof" json:"eligible_for_cache,omitempty"` +} +type DefaultCacheAction_CacheTtlDefault struct { + CacheTtlDefault string `protobuf:"bytes,3,opt,name=cache_ttl_default,json=cacheTtlDefault,proto3,oneof" json:"cache_ttl_default,omitempty"` +} +type DefaultCacheAction_CacheTtlOverride struct { + CacheTtlOverride string `protobuf:"bytes,4,opt,name=cache_ttl_override,json=cacheTtlOverride,proto3,oneof" json:"cache_ttl_override,omitempty"` +} +type DefaultCacheAction_CacheDisabled struct { + CacheDisabled *schema.Empty `protobuf:"bytes,5,opt,name=cache_disabled,json=cacheDisabled,proto3,oneof" json:"cache_disabled,omitempty"` } -func (m *CDNHTTPSCustomCertsType) GetTlsParameters() *CDNDownstreamTlsParamsType { +func (*DefaultCacheAction_EligibleForCache) isDefaultCacheAction_CacheActions() {} +func (*DefaultCacheAction_CacheTtlDefault) isDefaultCacheAction_CacheActions() {} +func (*DefaultCacheAction_CacheTtlOverride) isDefaultCacheAction_CacheActions() {} +func (*DefaultCacheAction_CacheDisabled) isDefaultCacheAction_CacheActions() {} + +func (m *DefaultCacheAction) GetCacheActions() isDefaultCacheAction_CacheActions { if m != nil { - return m.TlsParameters + return m.CacheActions } return nil } -// GlobalSpecType +// Deprecated: Do not use. +func (m *DefaultCacheAction) GetEligibleForCache() *DefaultCacheTTLProps { + if x, ok := m.GetCacheActions().(*DefaultCacheAction_EligibleForCache); ok { + return x.EligibleForCache + } + return nil +} + +func (m *DefaultCacheAction) GetCacheTtlDefault() string { + if x, ok := m.GetCacheActions().(*DefaultCacheAction_CacheTtlDefault); ok { + return x.CacheTtlDefault + } + return "" +} + +func (m *DefaultCacheAction) GetCacheTtlOverride() string { + if x, ok := m.GetCacheActions().(*DefaultCacheAction_CacheTtlOverride); ok { + return x.CacheTtlOverride + } + return "" +} + +func (m *DefaultCacheAction) GetCacheDisabled() *schema.Empty { + if x, ok := m.GetCacheActions().(*DefaultCacheAction_CacheDisabled); ok { + return x.CacheDisabled + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*DefaultCacheAction) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*DefaultCacheAction_EligibleForCache)(nil), + (*DefaultCacheAction_CacheTtlDefault)(nil), + (*DefaultCacheAction_CacheTtlOverride)(nil), + (*DefaultCacheAction_CacheDisabled)(nil), + } +} + +// Cache options // -// x-displayName: "Global Specification" -// Shape of the CDN loadbalancer specification -type GlobalSpecType struct { - // Domains - // - // x-displayName: "Domains" - // x-example: "www.foo.com" - // x-required - // A list of fully qualified domain names. - // The CDN Distribution will be setup for these FQDN name(s). - // [This can be a domain or a sub-domain] - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Proxy choice - // - // x-displayName: "Select Type of CDN Distribution" - // x-required - // CDN Distribution type can be "http" or "https" - // - // Types that are valid to be assigned to LoadbalancerType: - // *GlobalSpecType_Http - // *GlobalSpecType_HttpsAutoCert - // *GlobalSpecType_Https - LoadbalancerType isGlobalSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - // Add Site information - // - // x-displayName: "Add Location" - // x-example: "true" - // x-example: true - // Appends header x-volterra-location = in responses. - AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - // More Options - // - // x-displayName: "More Options" - // More options like header manipulation, compression etc. - MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - // Origin Pool +// x-displayName: "Cache Options" +// This defines the options related to content caching +type CacheOptions struct { + // Default Cache Action // - // x-displayName: "CDN Origin Pool" + // x-displayName: "Default Cache Action" // x-required - OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` - // view_internal - // - // x-displayName: "View Internal" - // Reference to view internal object - ViewInternal *views.ObjectRefType `protobuf:"bytes,1000,opt,name=view_internal,json=viewInternal,proto3" json:"view_internal,omitempty"` - // host name - // - // x-displayName: "Host Name" - // x-example: "ves-io-cf8684b9-a18f-4843-a24f-1f9ee8ea2776.ac.vh.ves.io" - // Internally generated host name to be used for the virtual host - HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` - // DNS information - // - // x-displayName: "DNS Information" - // DNS information for this virtual host - DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` - // Virtual Host state - // - // x-displayName: "Virtual Host State" - // State of the virtual host - State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` - // Auto Cert State - // - // x-displayName: "Auto Cert State" - // State of auto certificate generation. - AutoCertState virtual_host.CertificationState `protobuf:"varint,1004,opt,name=auto_cert_state,json=autoCertState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"auto_cert_state,omitempty"` // Deprecated: Do not use. - // Auto Cert Information + // Default value for Cache action. + DefaultCacheAction *DefaultCacheAction `protobuf:"bytes,1,opt,name=default_cache_action,json=defaultCacheAction,proto3" json:"default_cache_action,omitempty"` + // List of Cache rules(These rules are ORed) // - // x-displayName: "Auto Cert Information" - // Auto certificate related information - AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` - // Service Domains + // x-displayName: "Cache Rules" + // Rules are evaluated in the order in which they are specified. The evaluation stops when the first rule match occurs. + CacheRules []*CDNCacheRule `protobuf:"bytes,2,rep,name=cache_rules,json=cacheRules,proto3" json:"cache_rules,omitempty"` +} + +func (m *CacheOptions) Reset() { *m = CacheOptions{} } +func (*CacheOptions) ProtoMessage() {} +func (*CacheOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{19} +} +func (m *CacheOptions) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CacheOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CacheOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheOptions.Merge(m, src) +} +func (m *CacheOptions) XXX_Size() int { + return m.Size() +} +func (m *CacheOptions) XXX_DiscardUnknown() { + xxx_messageInfo_CacheOptions.DiscardUnknown(m) +} + +var xxx_messageInfo_CacheOptions proto.InternalMessageInfo + +func (m *CacheOptions) GetDefaultCacheAction() *DefaultCacheAction { + if m != nil { + return m.DefaultCacheAction + } + return nil +} + +func (m *CacheOptions) GetCacheRules() []*CDNCacheRule { + if m != nil { + return m.CacheRules + } + return nil +} + +// Cache options +// +// x-displayName: "Cache Options" +// This defines the options related to content caching +type CacheTTLOptionsType struct { + // Cache Options // - // x-displayName: "Service Domains" - // CNAME provided from service per domain - ServiceDomains []*virtual_host.ServiceDomain `protobuf:"bytes,1011,rep,name=service_domains,json=serviceDomains,proto3" json:"service_domains,omitempty"` - // Cert State + // x-displayName: "Cache Settings" + // Configure the Cache Settings // - // x-displayName: "Cert State" - // State of Custom certificate or Auto certificate generation. - CertState virtual_host.CertificationState `protobuf:"varint,1012,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` + // Types that are valid to be assigned to TtlOptions: + // *CacheTTLOptionsType_CacheTtlDefault + // *CacheTTLOptionsType_CacheTtlOverride + // *CacheTTLOptionsType_CacheDisabled + TtlOptions isCacheTTLOptionsType_TtlOptions `protobuf_oneof:"ttl_options"` } -func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } -func (*GlobalSpecType) ProtoMessage() {} -func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{23} +func (m *CacheTTLOptionsType) Reset() { *m = CacheTTLOptionsType{} } +func (*CacheTTLOptionsType) ProtoMessage() {} +func (*CacheTTLOptionsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{20} } -func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { +func (m *CacheTTLOptionsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CacheTTLOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2355,186 +2695,198 @@ func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro } return b[:n], nil } -func (m *GlobalSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_GlobalSpecType.Merge(m, src) +func (m *CacheTTLOptionsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CacheTTLOptionsType.Merge(m, src) } -func (m *GlobalSpecType) XXX_Size() int { +func (m *CacheTTLOptionsType) XXX_Size() int { return m.Size() } -func (m *GlobalSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) +func (m *CacheTTLOptionsType) XXX_DiscardUnknown() { + xxx_messageInfo_CacheTTLOptionsType.DiscardUnknown(m) } -var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo +var xxx_messageInfo_CacheTTLOptionsType proto.InternalMessageInfo -type isGlobalSpecType_LoadbalancerType interface { - isGlobalSpecType_LoadbalancerType() +type isCacheTTLOptionsType_TtlOptions interface { + isCacheTTLOptionsType_TtlOptions() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type GlobalSpecType_Http struct { - Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` +type CacheTTLOptionsType_CacheTtlDefault struct { + CacheTtlDefault string `protobuf:"bytes,2,opt,name=cache_ttl_default,json=cacheTtlDefault,proto3,oneof" json:"cache_ttl_default,omitempty"` } -type GlobalSpecType_HttpsAutoCert struct { - HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +type CacheTTLOptionsType_CacheTtlOverride struct { + CacheTtlOverride string `protobuf:"bytes,3,opt,name=cache_ttl_override,json=cacheTtlOverride,proto3,oneof" json:"cache_ttl_override,omitempty"` } -type GlobalSpecType_Https struct { - Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` +type CacheTTLOptionsType_CacheDisabled struct { + CacheDisabled *schema.Empty `protobuf:"bytes,4,opt,name=cache_disabled,json=cacheDisabled,proto3,oneof" json:"cache_disabled,omitempty"` } -func (*GlobalSpecType_Http) isGlobalSpecType_LoadbalancerType() {} -func (*GlobalSpecType_HttpsAutoCert) isGlobalSpecType_LoadbalancerType() {} -func (*GlobalSpecType_Https) isGlobalSpecType_LoadbalancerType() {} +func (*CacheTTLOptionsType_CacheTtlDefault) isCacheTTLOptionsType_TtlOptions() {} +func (*CacheTTLOptionsType_CacheTtlOverride) isCacheTTLOptionsType_TtlOptions() {} +func (*CacheTTLOptionsType_CacheDisabled) isCacheTTLOptionsType_TtlOptions() {} -func (m *GlobalSpecType) GetLoadbalancerType() isGlobalSpecType_LoadbalancerType { +func (m *CacheTTLOptionsType) GetTtlOptions() isCacheTTLOptionsType_TtlOptions { if m != nil { - return m.LoadbalancerType + return m.TtlOptions } return nil } -func (m *GlobalSpecType) GetDomains() []string { - if m != nil { - return m.Domains +func (m *CacheTTLOptionsType) GetCacheTtlDefault() string { + if x, ok := m.GetTtlOptions().(*CacheTTLOptionsType_CacheTtlDefault); ok { + return x.CacheTtlDefault } - return nil + return "" } -func (m *GlobalSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Http); ok { - return x.Http +func (m *CacheTTLOptionsType) GetCacheTtlOverride() string { + if x, ok := m.GetTtlOptions().(*CacheTTLOptionsType_CacheTtlOverride); ok { + return x.CacheTtlOverride } - return nil + return "" } -func (m *GlobalSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { - if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert +func (m *CacheTTLOptionsType) GetCacheDisabled() *schema.Empty { + if x, ok := m.GetTtlOptions().(*CacheTTLOptionsType_CacheDisabled); ok { + return x.CacheDisabled } return nil } -func (m *GlobalSpecType) GetHttps() *CDNHTTPSCustomCertsType { - if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Https); ok { - return x.Https +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CacheTTLOptionsType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CacheTTLOptionsType_CacheTtlDefault)(nil), + (*CacheTTLOptionsType_CacheTtlOverride)(nil), + (*CacheTTLOptionsType_CacheDisabled)(nil), } - return nil } -func (m *GlobalSpecType) GetAddLocation() bool { - if m != nil { - return m.AddLocation - } - return false +// Advanced options +// +// x-displayName: "Advanced Options" +// This defines various options to define a route +type AdvancedOptionsType struct { + // Header Control + // + // x-displayName: "Header Control" + // Request/Response header related options + HeaderOptions *HeaderControlType `protobuf:"bytes,16,opt,name=header_options,json=headerOptions,proto3" json:"header_options,omitempty"` + // Security Options + // + // x-displayName: "Security Options" + // Security related options + SecurityOptions *SecurityOptionsType `protobuf:"bytes,17,opt,name=security_options,json=securityOptions,proto3" json:"security_options,omitempty"` + // Logging Options + // + // x-displayName: "Logging Options" + // Logging related options + LoggingOptions *LoggingOptionsType `protobuf:"bytes,18,opt,name=logging_options,json=loggingOptions,proto3" json:"logging_options,omitempty"` + // Cache Options + // + // x-displayName: "Cache Options" + // Cache Options + CacheTtlOptions *CacheTTLOptionsType `protobuf:"bytes,19,opt,name=cache_ttl_options,json=cacheTtlOptions,proto3" json:"cache_ttl_options,omitempty"` // Deprecated: Do not use. + // Cache Options + // + // x-displayName: "Cache Options" + // Cache Options + CacheOptions *CacheOptions `protobuf:"bytes,20,opt,name=cache_options,json=cacheOptions,proto3" json:"cache_options,omitempty"` } -func (m *GlobalSpecType) GetMoreOption() *AdvancedOptionsType { - if m != nil { - return m.MoreOption - } - return nil +func (m *AdvancedOptionsType) Reset() { *m = AdvancedOptionsType{} } +func (*AdvancedOptionsType) ProtoMessage() {} +func (*AdvancedOptionsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{21} } - -func (m *GlobalSpecType) GetOriginPool() *CdnOriginPoolType { - if m != nil { - return m.OriginPool - } - return nil +func (m *AdvancedOptionsType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (m *GlobalSpecType) GetViewInternal() *views.ObjectRefType { - if m != nil { - return m.ViewInternal +func (m *AdvancedOptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return nil + return b[:n], nil } - -func (m *GlobalSpecType) GetHostName() string { - if m != nil { - return m.HostName - } - return "" +func (m *AdvancedOptionsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AdvancedOptionsType.Merge(m, src) } - -func (m *GlobalSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { - if m != nil { - return m.DnsInfo - } - return nil +func (m *AdvancedOptionsType) XXX_Size() int { + return m.Size() } - -func (m *GlobalSpecType) GetState() virtual_host.VirtualHostState { - if m != nil { - return m.State - } - return virtual_host.VIRTUAL_HOST_READY +func (m *AdvancedOptionsType) XXX_DiscardUnknown() { + xxx_messageInfo_AdvancedOptionsType.DiscardUnknown(m) } -// Deprecated: Do not use. -func (m *GlobalSpecType) GetAutoCertState() virtual_host.CertificationState { +var xxx_messageInfo_AdvancedOptionsType proto.InternalMessageInfo + +func (m *AdvancedOptionsType) GetHeaderOptions() *HeaderControlType { if m != nil { - return m.AutoCertState + return m.HeaderOptions } - return virtual_host.AutoCertDisabled + return nil } -func (m *GlobalSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { +func (m *AdvancedOptionsType) GetSecurityOptions() *SecurityOptionsType { if m != nil { - return m.AutoCertInfo + return m.SecurityOptions } return nil } -func (m *GlobalSpecType) GetServiceDomains() []*virtual_host.ServiceDomain { +func (m *AdvancedOptionsType) GetLoggingOptions() *LoggingOptionsType { if m != nil { - return m.ServiceDomains + return m.LoggingOptions } return nil } -func (m *GlobalSpecType) GetCertState() virtual_host.CertificationState { +// Deprecated: Do not use. +func (m *AdvancedOptionsType) GetCacheTtlOptions() *CacheTTLOptionsType { if m != nil { - return m.CertState + return m.CacheTtlOptions } - return virtual_host.AutoCertDisabled + return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*GlobalSpecType_Http)(nil), - (*GlobalSpecType_HttpsAutoCert)(nil), - (*GlobalSpecType_Https)(nil), +func (m *AdvancedOptionsType) GetCacheOptions() *CacheOptions { + if m != nil { + return m.CacheOptions } + return nil } -// IpFilteringOptions +// CDNTLSConfig // -// x-displayName: "IP Filtering Options" -// Options to filter based on IP prefix -type IpFilteringOptions struct { - // ip_filtering_type +// x-displayName: "TLS Config" +// This defines various options to configure TLS configuration parameters +type CDNTLSConfig struct { + // TLS Security Level // - // x-displayName: "Ip Filtering Type" - // Type of IP filtering (Allow vs Block) + // x-displayName: "TLS Security Level" + // x-required + // The security level for TLS handshake between client/server and the platform. // - // Types that are valid to be assigned to IpFilteringType: - // *IpFilteringOptions_AllowList - // *IpFilteringOptions_BlockList - IpFilteringType isIpFilteringOptions_IpFilteringType `protobuf_oneof:"ip_filtering_type"` + // Types that are valid to be assigned to Choice: + // *CDNTLSConfig_Tls_12Plus + // *CDNTLSConfig_Tls_11Plus + Choice isCDNTLSConfig_Choice `protobuf_oneof:"choice"` } -func (m *IpFilteringOptions) Reset() { *m = IpFilteringOptions{} } -func (*IpFilteringOptions) ProtoMessage() {} -func (*IpFilteringOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{24} +func (m *CDNTLSConfig) Reset() { *m = CDNTLSConfig{} } +func (*CDNTLSConfig) ProtoMessage() {} +func (*CDNTLSConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{22} } -func (m *IpFilteringOptions) XXX_Unmarshal(b []byte) error { +func (m *CDNTLSConfig) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *IpFilteringOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNTLSConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2542,89 +2894,95 @@ func (m *IpFilteringOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *IpFilteringOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_IpFilteringOptions.Merge(m, src) +func (m *CDNTLSConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNTLSConfig.Merge(m, src) } -func (m *IpFilteringOptions) XXX_Size() int { +func (m *CDNTLSConfig) XXX_Size() int { return m.Size() } -func (m *IpFilteringOptions) XXX_DiscardUnknown() { - xxx_messageInfo_IpFilteringOptions.DiscardUnknown(m) +func (m *CDNTLSConfig) XXX_DiscardUnknown() { + xxx_messageInfo_CDNTLSConfig.DiscardUnknown(m) } -var xxx_messageInfo_IpFilteringOptions proto.InternalMessageInfo +var xxx_messageInfo_CDNTLSConfig proto.InternalMessageInfo -type isIpFilteringOptions_IpFilteringType interface { - isIpFilteringOptions_IpFilteringType() +type isCDNTLSConfig_Choice interface { + isCDNTLSConfig_Choice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type IpFilteringOptions_AllowList struct { - AllowList *policy.PrefixMatchList `protobuf:"bytes,2,opt,name=allow_list,json=allowList,proto3,oneof" json:"allow_list,omitempty"` +type CDNTLSConfig_Tls_12Plus struct { + Tls_12Plus *schema.Empty `protobuf:"bytes,1,opt,name=tls_12_plus,json=tls12Plus,proto3,oneof" json:"tls_12_plus,omitempty"` } -type IpFilteringOptions_BlockList struct { - BlockList *policy.PrefixMatchList `protobuf:"bytes,3,opt,name=block_list,json=blockList,proto3,oneof" json:"block_list,omitempty"` +type CDNTLSConfig_Tls_11Plus struct { + Tls_11Plus *schema.Empty `protobuf:"bytes,2,opt,name=tls_11_plus,json=tls11Plus,proto3,oneof" json:"tls_11_plus,omitempty"` } -func (*IpFilteringOptions_AllowList) isIpFilteringOptions_IpFilteringType() {} -func (*IpFilteringOptions_BlockList) isIpFilteringOptions_IpFilteringType() {} +func (*CDNTLSConfig_Tls_12Plus) isCDNTLSConfig_Choice() {} +func (*CDNTLSConfig_Tls_11Plus) isCDNTLSConfig_Choice() {} -func (m *IpFilteringOptions) GetIpFilteringType() isIpFilteringOptions_IpFilteringType { +func (m *CDNTLSConfig) GetChoice() isCDNTLSConfig_Choice { if m != nil { - return m.IpFilteringType + return m.Choice } return nil } -func (m *IpFilteringOptions) GetAllowList() *policy.PrefixMatchList { - if x, ok := m.GetIpFilteringType().(*IpFilteringOptions_AllowList); ok { - return x.AllowList +func (m *CDNTLSConfig) GetTls_12Plus() *schema.Empty { + if x, ok := m.GetChoice().(*CDNTLSConfig_Tls_12Plus); ok { + return x.Tls_12Plus } return nil } -func (m *IpFilteringOptions) GetBlockList() *policy.PrefixMatchList { - if x, ok := m.GetIpFilteringType().(*IpFilteringOptions_BlockList); ok { - return x.BlockList +func (m *CDNTLSConfig) GetTls_11Plus() *schema.Empty { + if x, ok := m.GetChoice().(*CDNTLSConfig_Tls_11Plus); ok { + return x.Tls_11Plus } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*IpFilteringOptions) XXX_OneofWrappers() []interface{} { +func (*CDNTLSConfig) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*IpFilteringOptions_AllowList)(nil), - (*IpFilteringOptions_BlockList)(nil), + (*CDNTLSConfig_Tls_12Plus)(nil), + (*CDNTLSConfig_Tls_11Plus)(nil), } } -// GeoFilteringOptions +// HTTPS with Automatic Certificate // -// x-displayName: "Geo Filtering Options" -// Options to filter based on Geo prefix -type GeoFilteringOptions struct { - // geo_filtering_type +// x-displayName: "HTTPS with Automatic Certificate" +// Choice for selecting HTTPS CDN distribution with bring your own certificates +type CDNHTTPSAutoCertsType struct { + // HTTP Redirect // - // x-displayName: "Geo Filtering Type" - // Type of Geo filtering (Allow vs Block) + // x-displayName: "HTTP Redirect to HTTPS" + // Redirect HTTP traffic to HTTPS + HttpRedirect bool `protobuf:"varint,1,opt,name=http_redirect,json=httpRedirect,proto3" json:"http_redirect,omitempty"` + // Add HSTS // - // Types that are valid to be assigned to GeoFilteringType: - // *GeoFilteringOptions_AllowList - // *GeoFilteringOptions_BlockList - GeoFilteringType isGeoFilteringOptions_GeoFilteringType `protobuf_oneof:"geo_filtering_type"` -} + // x-displayName: "Add HSTS Header" + // Add HTTP Strict-Transport-Security response header + AddHsts bool `protobuf:"varint,2,opt,name=add_hsts,json=addHsts,proto3" json:"add_hsts,omitempty"` + // TLS Config + // + // x-displayName: "TLS" + // TLS Configuration Parameters + TlsConfig *CDNTLSConfig `protobuf:"bytes,3,opt,name=tls_config,json=tlsConfig,proto3" json:"tls_config,omitempty"` +} -func (m *GeoFilteringOptions) Reset() { *m = GeoFilteringOptions{} } -func (*GeoFilteringOptions) ProtoMessage() {} -func (*GeoFilteringOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{25} +func (m *CDNHTTPSAutoCertsType) Reset() { *m = CDNHTTPSAutoCertsType{} } +func (*CDNHTTPSAutoCertsType) ProtoMessage() {} +func (*CDNHTTPSAutoCertsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{23} } -func (m *GeoFilteringOptions) XXX_Unmarshal(b []byte) error { +func (m *CDNHTTPSAutoCertsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *GeoFilteringOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNHTTPSAutoCertsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2632,86 +2990,67 @@ func (m *GeoFilteringOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *GeoFilteringOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_GeoFilteringOptions.Merge(m, src) +func (m *CDNHTTPSAutoCertsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNHTTPSAutoCertsType.Merge(m, src) } -func (m *GeoFilteringOptions) XXX_Size() int { +func (m *CDNHTTPSAutoCertsType) XXX_Size() int { return m.Size() } -func (m *GeoFilteringOptions) XXX_DiscardUnknown() { - xxx_messageInfo_GeoFilteringOptions.DiscardUnknown(m) -} - -var xxx_messageInfo_GeoFilteringOptions proto.InternalMessageInfo - -type isGeoFilteringOptions_GeoFilteringType interface { - isGeoFilteringOptions_GeoFilteringType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type GeoFilteringOptions_AllowList struct { - AllowList *policy.CountryCodeList `protobuf:"bytes,2,opt,name=allow_list,json=allowList,proto3,oneof" json:"allow_list,omitempty"` -} -type GeoFilteringOptions_BlockList struct { - BlockList *policy.CountryCodeList `protobuf:"bytes,3,opt,name=block_list,json=blockList,proto3,oneof" json:"block_list,omitempty"` +func (m *CDNHTTPSAutoCertsType) XXX_DiscardUnknown() { + xxx_messageInfo_CDNHTTPSAutoCertsType.DiscardUnknown(m) } -func (*GeoFilteringOptions_AllowList) isGeoFilteringOptions_GeoFilteringType() {} -func (*GeoFilteringOptions_BlockList) isGeoFilteringOptions_GeoFilteringType() {} +var xxx_messageInfo_CDNHTTPSAutoCertsType proto.InternalMessageInfo -func (m *GeoFilteringOptions) GetGeoFilteringType() isGeoFilteringOptions_GeoFilteringType { +func (m *CDNHTTPSAutoCertsType) GetHttpRedirect() bool { if m != nil { - return m.GeoFilteringType + return m.HttpRedirect } - return nil + return false } -func (m *GeoFilteringOptions) GetAllowList() *policy.CountryCodeList { - if x, ok := m.GetGeoFilteringType().(*GeoFilteringOptions_AllowList); ok { - return x.AllowList +func (m *CDNHTTPSAutoCertsType) GetAddHsts() bool { + if m != nil { + return m.AddHsts } - return nil + return false } -func (m *GeoFilteringOptions) GetBlockList() *policy.CountryCodeList { - if x, ok := m.GetGeoFilteringType().(*GeoFilteringOptions_BlockList); ok { - return x.BlockList +func (m *CDNHTTPSAutoCertsType) GetTlsConfig() *CDNTLSConfig { + if m != nil { + return m.TlsConfig } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*GeoFilteringOptions) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*GeoFilteringOptions_AllowList)(nil), - (*GeoFilteringOptions_BlockList)(nil), - } -} - -// LogHeaderOptions +// CDNDownstreamTlsParamsType // -// x-displayName: "Headers to Log" -// List of headers to Log -type LogHeaderOptions struct { - // List of Headers +// x-displayName: "TLS Parameters" +// TLS parameters for CDN distribution +type CDNDownstreamTlsParamsType struct { + // TLS Config // - // x-displayName: "Headers" - // x-example: "x-custom-length" - // List of headers - HeaderList []string `protobuf:"bytes,1,rep,name=header_list,json=headerList,proto3" json:"header_list,omitempty"` + // x-displayName: "TLS" + // TLS Configuration Parameters + TlsConfig *CDNTLSConfig `protobuf:"bytes,1,opt,name=tls_config,json=tlsConfig,proto3" json:"tls_config,omitempty"` + // tls_certificates + // + // x-displayName: "TLS Certificates" + // x-required + // Users can add one or more certificates that share the same set of domains. + // for example, domain.com and *.domain.com - but use different signature algorithms + TlsCertificates []*schema.TlsCertificateType `protobuf:"bytes,2,rep,name=tls_certificates,json=tlsCertificates,proto3" json:"tls_certificates,omitempty"` } -func (m *LogHeaderOptions) Reset() { *m = LogHeaderOptions{} } -func (*LogHeaderOptions) ProtoMessage() {} -func (*LogHeaderOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{26} +func (m *CDNDownstreamTlsParamsType) Reset() { *m = CDNDownstreamTlsParamsType{} } +func (*CDNDownstreamTlsParamsType) ProtoMessage() {} +func (*CDNDownstreamTlsParamsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{24} } -func (m *LogHeaderOptions) XXX_Unmarshal(b []byte) error { +func (m *CDNDownstreamTlsParamsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LogHeaderOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNDownstreamTlsParamsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2719,99 +3058,63 @@ func (m *LogHeaderOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, er } return b[:n], nil } -func (m *LogHeaderOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_LogHeaderOptions.Merge(m, src) +func (m *CDNDownstreamTlsParamsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNDownstreamTlsParamsType.Merge(m, src) } -func (m *LogHeaderOptions) XXX_Size() int { +func (m *CDNDownstreamTlsParamsType) XXX_Size() int { return m.Size() } -func (m *LogHeaderOptions) XXX_DiscardUnknown() { - xxx_messageInfo_LogHeaderOptions.DiscardUnknown(m) +func (m *CDNDownstreamTlsParamsType) XXX_DiscardUnknown() { + xxx_messageInfo_CDNDownstreamTlsParamsType.DiscardUnknown(m) } -var xxx_messageInfo_LogHeaderOptions proto.InternalMessageInfo +var xxx_messageInfo_CDNDownstreamTlsParamsType proto.InternalMessageInfo -func (m *LogHeaderOptions) GetHeaderList() []string { +func (m *CDNDownstreamTlsParamsType) GetTlsConfig() *CDNTLSConfig { if m != nil { - return m.HeaderList + return m.TlsConfig } return nil } -// CDNCustomAuthentication -// -// x-displayName: "Custom Authentication" -// Custom Authentication -type CDNCustomAuthentication struct { - // custom_auth_config - // - // x-displayName: "Custom Auth Config" - // x-example: "" - // This is custom authentication configuration parameters. Please reach out to the support for custom authentication details. - CustomAuthConfig string `protobuf:"bytes,1,opt,name=custom_auth_config,json=customAuthConfig,proto3" json:"custom_auth_config,omitempty"` -} - -func (m *CDNCustomAuthentication) Reset() { *m = CDNCustomAuthentication{} } -func (*CDNCustomAuthentication) ProtoMessage() {} -func (*CDNCustomAuthentication) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{27} -} -func (m *CDNCustomAuthentication) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CDNCustomAuthentication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *CDNCustomAuthentication) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNCustomAuthentication.Merge(m, src) -} -func (m *CDNCustomAuthentication) XXX_Size() int { - return m.Size() -} -func (m *CDNCustomAuthentication) XXX_DiscardUnknown() { - xxx_messageInfo_CDNCustomAuthentication.DiscardUnknown(m) -} - -var xxx_messageInfo_CDNCustomAuthentication proto.InternalMessageInfo - -func (m *CDNCustomAuthentication) GetCustomAuthConfig() string { +func (m *CDNDownstreamTlsParamsType) GetTlsCertificates() []*schema.TlsCertificateType { if m != nil { - return m.CustomAuthConfig + return m.TlsCertificates } - return "" + return nil } -// AuthenticationOptions +// BYOC for the CDN distribution // -// x-displayName: "Authentication Options" -// Options to authenticate incoming client requests -type AuthenticationOptions struct { - // Authentication Options +// x-displayName: "BYOC HTTPS Choice" +// Choice for selecting CDN Distribution with bring your own certificates +type CDNHTTPSCustomCertsType struct { + // HTTP Redirect // - // x-displayName: "Authentication Type" - // Type of Authentication + // x-displayName: "HTTP Redirect to HTTPS" + // Redirect HTTP traffic to HTTPS + HttpRedirect bool `protobuf:"varint,1,opt,name=http_redirect,json=httpRedirect,proto3" json:"http_redirect,omitempty"` + // Add HSTS // - // Types that are valid to be assigned to AuthOptions: - // *AuthenticationOptions_DisableAuth - // *AuthenticationOptions_Jwt - // *AuthenticationOptions_Custom - AuthOptions isAuthenticationOptions_AuthOptions `protobuf_oneof:"auth_options"` + // x-displayName: "Add HSTS Header" + // Add HTTP Strict-Transport-Security response header + AddHsts bool `protobuf:"varint,2,opt,name=add_hsts,json=addHsts,proto3" json:"add_hsts,omitempty"` + // TLS parameters. + // + // x-displayName: "TLS Parameters" + // TLS parameters for the downstream connections. + TlsParameters *CDNDownstreamTlsParamsType `protobuf:"bytes,3,opt,name=tls_parameters,json=tlsParameters,proto3" json:"tls_parameters,omitempty"` } -func (m *AuthenticationOptions) Reset() { *m = AuthenticationOptions{} } -func (*AuthenticationOptions) ProtoMessage() {} -func (*AuthenticationOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{28} +func (m *CDNHTTPSCustomCertsType) Reset() { *m = CDNHTTPSCustomCertsType{} } +func (*CDNHTTPSCustomCertsType) ProtoMessage() {} +func (*CDNHTTPSCustomCertsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{25} } -func (m *AuthenticationOptions) XXX_Unmarshal(b []byte) error { +func (m *CDNHTTPSCustomCertsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *AuthenticationOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CDNHTTPSCustomCertsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2819,108 +3122,133 @@ func (m *AuthenticationOptions) XXX_Marshal(b []byte, deterministic bool) ([]byt } return b[:n], nil } -func (m *AuthenticationOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_AuthenticationOptions.Merge(m, src) +func (m *CDNHTTPSCustomCertsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNHTTPSCustomCertsType.Merge(m, src) } -func (m *AuthenticationOptions) XXX_Size() int { +func (m *CDNHTTPSCustomCertsType) XXX_Size() int { return m.Size() } -func (m *AuthenticationOptions) XXX_DiscardUnknown() { - xxx_messageInfo_AuthenticationOptions.DiscardUnknown(m) +func (m *CDNHTTPSCustomCertsType) XXX_DiscardUnknown() { + xxx_messageInfo_CDNHTTPSCustomCertsType.DiscardUnknown(m) } -var xxx_messageInfo_AuthenticationOptions proto.InternalMessageInfo +var xxx_messageInfo_CDNHTTPSCustomCertsType proto.InternalMessageInfo -type isAuthenticationOptions_AuthOptions interface { - isAuthenticationOptions_AuthOptions() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *CDNHTTPSCustomCertsType) GetHttpRedirect() bool { + if m != nil { + return m.HttpRedirect + } + return false } -type AuthenticationOptions_DisableAuth struct { - DisableAuth *schema.Empty `protobuf:"bytes,2,opt,name=disable_auth,json=disableAuth,proto3,oneof" json:"disable_auth,omitempty"` -} -type AuthenticationOptions_Jwt struct { - Jwt *policy.JwtTokenAuthOptions `protobuf:"bytes,3,opt,name=jwt,proto3,oneof" json:"jwt,omitempty"` -} -type AuthenticationOptions_Custom struct { - Custom *CDNCustomAuthentication `protobuf:"bytes,4,opt,name=custom,proto3,oneof" json:"custom,omitempty"` +func (m *CDNHTTPSCustomCertsType) GetAddHsts() bool { + if m != nil { + return m.AddHsts + } + return false } -func (*AuthenticationOptions_DisableAuth) isAuthenticationOptions_AuthOptions() {} -func (*AuthenticationOptions_Jwt) isAuthenticationOptions_AuthOptions() {} -func (*AuthenticationOptions_Custom) isAuthenticationOptions_AuthOptions() {} - -func (m *AuthenticationOptions) GetAuthOptions() isAuthenticationOptions_AuthOptions { +func (m *CDNHTTPSCustomCertsType) GetTlsParameters() *CDNDownstreamTlsParamsType { if m != nil { - return m.AuthOptions - } - return nil -} - -func (m *AuthenticationOptions) GetDisableAuth() *schema.Empty { - if x, ok := m.GetAuthOptions().(*AuthenticationOptions_DisableAuth); ok { - return x.DisableAuth - } - return nil -} - -func (m *AuthenticationOptions) GetJwt() *policy.JwtTokenAuthOptions { - if x, ok := m.GetAuthOptions().(*AuthenticationOptions_Jwt); ok { - return x.Jwt - } - return nil -} - -func (m *AuthenticationOptions) GetCustom() *CDNCustomAuthentication { - if x, ok := m.GetAuthOptions().(*AuthenticationOptions_Custom); ok { - return x.Custom + return m.TlsParameters } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*AuthenticationOptions) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*AuthenticationOptions_DisableAuth)(nil), - (*AuthenticationOptions_Jwt)(nil), - (*AuthenticationOptions_Custom)(nil), - } -} - -// CDNOriginServerType +// GlobalSpecType // -// x-displayName: "Origin Server" -// Various options to specify origin server -type CDNOriginServerType struct { - // Origin Server Type +// x-displayName: "Global Specification" +// Shape of the CDN loadbalancer specification +type GlobalSpecType struct { + // Domains // - // x-displayName: "Select Type of Origin Server" + // x-displayName: "Domains" + // x-example: "www.foo.com" // x-required - // Various options to specify origin server + // A list of fully qualified domain names. + // The CDN Distribution will be setup for these FQDN name(s). + // [This can be a domain or a sub-domain] + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Proxy choice // - // Types that are valid to be assigned to Choice: - // *CDNOriginServerType_PublicIp - // *CDNOriginServerType_PublicName - Choice isCDNOriginServerType_Choice `protobuf_oneof:"choice"` - // Port + // x-displayName: "Select Type of CDN Distribution" + // x-required + // CDN Distribution type can be "http" or "https" // - // x-displayName: "Origin Server Port" - // x-example: "80" - // Port the workload can be reached on - Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: + // *GlobalSpecType_Http + // *GlobalSpecType_HttpsAutoCert + // *GlobalSpecType_Https + LoadbalancerType isGlobalSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + // Add Site information + // + // x-displayName: "Add Location" + // x-example: "true" + // x-example: true + // Appends header x-volterra-location = in responses. + AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + // More Options + // + // x-displayName: "More Options" + // More options like header manipulation, compression etc. + MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // Origin Pool + // + // x-displayName: "CDN Origin Pool" + // x-required + OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` + // view_internal + // + // x-displayName: "View Internal" + // Reference to view internal object + ViewInternal *views.ObjectRefType `protobuf:"bytes,1000,opt,name=view_internal,json=viewInternal,proto3" json:"view_internal,omitempty"` + // host name + // + // x-displayName: "Host Name" + // x-example: "ves-io-cf8684b9-a18f-4843-a24f-1f9ee8ea2776.ac.vh.ves.io" + // Internally generated host name to be used for the virtual host + HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` + // DNS information + // + // x-displayName: "DNS Information" + // DNS information for this virtual host + DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` + // Virtual Host state + // + // x-displayName: "Virtual Host State" + // State of the virtual host + State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` + // Auto Cert State + // + // x-displayName: "Auto Cert State" + // State of auto certificate generation. + AutoCertState virtual_host.CertificationState `protobuf:"varint,1004,opt,name=auto_cert_state,json=autoCertState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"auto_cert_state,omitempty"` // Deprecated: Do not use. + // Auto Cert Information + // + // x-displayName: "Auto Cert Information" + // Auto certificate related information + AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` + // Service Domains + // + // x-displayName: "Service Domains" + // CNAME provided from service per domain + ServiceDomains []*virtual_host.ServiceDomain `protobuf:"bytes,1011,rep,name=service_domains,json=serviceDomains,proto3" json:"service_domains,omitempty"` + // Cert State + // + // x-displayName: "Cert State" + // State of Custom certificate or Auto certificate generation. + CertState virtual_host.CertificationState `protobuf:"varint,1012,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` } -func (m *CDNOriginServerType) Reset() { *m = CDNOriginServerType{} } -func (*CDNOriginServerType) ProtoMessage() {} -func (*CDNOriginServerType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{29} +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{26} } -func (m *CDNOriginServerType) XXX_Unmarshal(b []byte) error { +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CDNOriginServerType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -2928,252 +3256,186 @@ func (m *CDNOriginServerType) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *CDNOriginServerType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CDNOriginServerType.Merge(m, src) +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) } -func (m *CDNOriginServerType) XXX_Size() int { +func (m *GlobalSpecType) XXX_Size() int { return m.Size() } -func (m *CDNOriginServerType) XXX_DiscardUnknown() { - xxx_messageInfo_CDNOriginServerType.DiscardUnknown(m) +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) } -var xxx_messageInfo_CDNOriginServerType proto.InternalMessageInfo +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo -type isCDNOriginServerType_Choice interface { - isCDNOriginServerType_Choice() +type isGlobalSpecType_LoadbalancerType interface { + isGlobalSpecType_LoadbalancerType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CDNOriginServerType_PublicIp struct { - PublicIp *origin_pool.OriginServerPublicIP `protobuf:"bytes,2,opt,name=public_ip,json=publicIp,proto3,oneof" json:"public_ip,omitempty"` +type GlobalSpecType_Http struct { + Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` } -type CDNOriginServerType_PublicName struct { - PublicName *origin_pool.OriginServerPublicName `protobuf:"bytes,3,opt,name=public_name,json=publicName,proto3,oneof" json:"public_name,omitempty"` +type GlobalSpecType_HttpsAutoCert struct { + HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +} +type GlobalSpecType_Https struct { + Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` } -func (*CDNOriginServerType_PublicIp) isCDNOriginServerType_Choice() {} -func (*CDNOriginServerType_PublicName) isCDNOriginServerType_Choice() {} +func (*GlobalSpecType_Http) isGlobalSpecType_LoadbalancerType() {} +func (*GlobalSpecType_HttpsAutoCert) isGlobalSpecType_LoadbalancerType() {} +func (*GlobalSpecType_Https) isGlobalSpecType_LoadbalancerType() {} -func (m *CDNOriginServerType) GetChoice() isCDNOriginServerType_Choice { +func (m *GlobalSpecType) GetLoadbalancerType() isGlobalSpecType_LoadbalancerType { if m != nil { - return m.Choice + return m.LoadbalancerType } return nil } -func (m *CDNOriginServerType) GetPublicIp() *origin_pool.OriginServerPublicIP { - if x, ok := m.GetChoice().(*CDNOriginServerType_PublicIp); ok { - return x.PublicIp +func (m *GlobalSpecType) GetDomains() []string { + if m != nil { + return m.Domains } return nil } -func (m *CDNOriginServerType) GetPublicName() *origin_pool.OriginServerPublicName { - if x, ok := m.GetChoice().(*CDNOriginServerType_PublicName); ok { - return x.PublicName +func (m *GlobalSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Http); ok { + return x.Http } return nil } -func (m *CDNOriginServerType) GetPort() uint32 { - if m != nil { - return m.Port +func (m *GlobalSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { + if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert } - return 0 + return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*CDNOriginServerType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*CDNOriginServerType_PublicIp)(nil), - (*CDNOriginServerType_PublicName)(nil), +func (m *GlobalSpecType) GetHttps() *CDNHTTPSCustomCertsType { + if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Https); ok { + return x.Https } + return nil } -// CdnOriginPoolType -// -// x-displayName: "CDN Origin Pool" -// Origin Pool for the CDN distribution -type CdnOriginPoolType struct { - // OriginServerPublicName - // - // x-required - // x-displayName: "Origin Host Header" - // The DNS name to be used as the host header for the request to the origin server - PublicName *origin_pool.OriginServerPublicName `protobuf:"bytes,1,opt,name=public_name,json=publicName,proto3" json:"public_name,omitempty"` - // Enable TLS - // - // x-displayName: "Enable TLS for Origin Servers" - // x-required - // Choice to enable TLS for origin servers - // - // Types that are valid to be assigned to TlsChoice: - // *CdnOriginPoolType_NoTls - // *CdnOriginPoolType_UseTls - TlsChoice isCdnOriginPoolType_TlsChoice `protobuf_oneof:"tls_choice"` - // List of Origin Servers - // - // x-displayName: "List Of Origin Servers" - // x-required - // List of original servers - OriginServers []*CDNOriginServerType `protobuf:"bytes,5,rep,name=origin_servers,json=originServers,proto3" json:"origin_servers,omitempty"` - // Follow Origin Redirect - // - // x-displayName: "Follow Origin Redirect" - // x-example: "true" - // x-example: true - // Instructs the CDN to follow redirects from the origin server(s) - FollowOriginRedirect bool `protobuf:"varint,6,opt,name=follow_origin_redirect,json=followOriginRedirect,proto3" json:"follow_origin_redirect,omitempty"` - // Origin Request Timeout - // - // x-displayName: "Origin Request Timeout Duration" - // x-example: "100s" - // Configures the time after which a request to the origin will time out waiting for a response - OriginRequestTimeout string `protobuf:"bytes,7,opt,name=origin_request_timeout,json=originRequestTimeout,proto3" json:"origin_request_timeout,omitempty"` - // Advanced Configuration - // - // x-displayName: "Advanced Configuration" - MoreOriginOptions *OriginAdvancedConfiguration `protobuf:"bytes,8,opt,name=more_origin_options,json=moreOriginOptions,proto3" json:"more_origin_options,omitempty"` +func (m *GlobalSpecType) GetAddLocation() bool { + if m != nil { + return m.AddLocation + } + return false } -func (m *CdnOriginPoolType) Reset() { *m = CdnOriginPoolType{} } -func (*CdnOriginPoolType) ProtoMessage() {} -func (*CdnOriginPoolType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{30} -} -func (m *CdnOriginPoolType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CdnOriginPoolType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetMoreOption() *AdvancedOptionsType { + if m != nil { + return m.MoreOption } - return b[:n], nil -} -func (m *CdnOriginPoolType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CdnOriginPoolType.Merge(m, src) -} -func (m *CdnOriginPoolType) XXX_Size() int { - return m.Size() -} -func (m *CdnOriginPoolType) XXX_DiscardUnknown() { - xxx_messageInfo_CdnOriginPoolType.DiscardUnknown(m) -} - -var xxx_messageInfo_CdnOriginPoolType proto.InternalMessageInfo - -type isCdnOriginPoolType_TlsChoice interface { - isCdnOriginPoolType_TlsChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type CdnOriginPoolType_NoTls struct { - NoTls *schema.Empty `protobuf:"bytes,3,opt,name=no_tls,json=noTls,proto3,oneof" json:"no_tls,omitempty"` -} -type CdnOriginPoolType_UseTls struct { - UseTls *origin_pool.UpstreamTlsParameters `protobuf:"bytes,4,opt,name=use_tls,json=useTls,proto3,oneof" json:"use_tls,omitempty"` + return nil } -func (*CdnOriginPoolType_NoTls) isCdnOriginPoolType_TlsChoice() {} -func (*CdnOriginPoolType_UseTls) isCdnOriginPoolType_TlsChoice() {} - -func (m *CdnOriginPoolType) GetTlsChoice() isCdnOriginPoolType_TlsChoice { +func (m *GlobalSpecType) GetOriginPool() *CdnOriginPoolType { if m != nil { - return m.TlsChoice + return m.OriginPool } return nil } -func (m *CdnOriginPoolType) GetPublicName() *origin_pool.OriginServerPublicName { +func (m *GlobalSpecType) GetViewInternal() *views.ObjectRefType { if m != nil { - return m.PublicName + return m.ViewInternal } return nil } -func (m *CdnOriginPoolType) GetNoTls() *schema.Empty { - if x, ok := m.GetTlsChoice().(*CdnOriginPoolType_NoTls); ok { - return x.NoTls +func (m *GlobalSpecType) GetHostName() string { + if m != nil { + return m.HostName } - return nil + return "" } -func (m *CdnOriginPoolType) GetUseTls() *origin_pool.UpstreamTlsParameters { - if x, ok := m.GetTlsChoice().(*CdnOriginPoolType_UseTls); ok { - return x.UseTls +func (m *GlobalSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { + if m != nil { + return m.DnsInfo } return nil } -func (m *CdnOriginPoolType) GetOriginServers() []*CDNOriginServerType { +func (m *GlobalSpecType) GetState() virtual_host.VirtualHostState { if m != nil { - return m.OriginServers + return m.State } - return nil + return virtual_host.VIRTUAL_HOST_READY } -func (m *CdnOriginPoolType) GetFollowOriginRedirect() bool { +// Deprecated: Do not use. +func (m *GlobalSpecType) GetAutoCertState() virtual_host.CertificationState { if m != nil { - return m.FollowOriginRedirect + return m.AutoCertState } - return false + return virtual_host.AutoCertDisabled } -func (m *CdnOriginPoolType) GetOriginRequestTimeout() string { +func (m *GlobalSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { if m != nil { - return m.OriginRequestTimeout + return m.AutoCertInfo } - return "" + return nil } -func (m *CdnOriginPoolType) GetMoreOriginOptions() *OriginAdvancedConfiguration { +func (m *GlobalSpecType) GetServiceDomains() []*virtual_host.ServiceDomain { if m != nil { - return m.MoreOriginOptions + return m.ServiceDomains } return nil } +func (m *GlobalSpecType) GetCertState() virtual_host.CertificationState { + if m != nil { + return m.CertState + } + return virtual_host.AutoCertDisabled +} + // XXX_OneofWrappers is for the internal use of the proto package. -func (*CdnOriginPoolType) XXX_OneofWrappers() []interface{} { +func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*CdnOriginPoolType_NoTls)(nil), - (*CdnOriginPoolType_UseTls)(nil), + (*GlobalSpecType_Http)(nil), + (*GlobalSpecType_HttpsAutoCert)(nil), + (*GlobalSpecType_Https)(nil), } } -// Origin Byte Range Request Config +// IpFilteringOptions // -// x-displayName: "Origin Byte Range Request Config" -type OriginAdvancedConfiguration struct { - // Disable Origin Byte Range Requests +// x-displayName: "IP Filtering Options" +// Options to filter based on IP prefix +type IpFilteringOptions struct { + // ip_filtering_type // - // x-displayName: "Disable Origin Byte Range Requests" - // x-example: "true/false" - // Choice to enable/disable origin byte range requrests towards origin - DisableByteRangeRequest bool `protobuf:"varint,1,opt,name=disable_byte_range_request,json=disableByteRangeRequest,proto3" json:"disable_byte_range_request,omitempty"` - // Enable websocket proxy to the origin + // x-displayName: "Ip Filtering Type" + // Type of IP filtering (Allow vs Block) // - // x-displayName: "Enable websocket proxy to the origin" - // Option to enable proxying of websocket connections to the origin server - WebsocketProxy bool `protobuf:"varint,2,opt,name=websocket_proxy,json=websocketProxy,proto3" json:"websocket_proxy,omitempty"` + // Types that are valid to be assigned to IpFilteringType: + // *IpFilteringOptions_AllowList + // *IpFilteringOptions_BlockList + IpFilteringType isIpFilteringOptions_IpFilteringType `protobuf_oneof:"ip_filtering_type"` } -func (m *OriginAdvancedConfiguration) Reset() { *m = OriginAdvancedConfiguration{} } -func (*OriginAdvancedConfiguration) ProtoMessage() {} -func (*OriginAdvancedConfiguration) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{31} +func (m *IpFilteringOptions) Reset() { *m = IpFilteringOptions{} } +func (*IpFilteringOptions) ProtoMessage() {} +func (*IpFilteringOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{27} } -func (m *OriginAdvancedConfiguration) XXX_Unmarshal(b []byte) error { +func (m *IpFilteringOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OriginAdvancedConfiguration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *IpFilteringOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3181,61 +3443,89 @@ func (m *OriginAdvancedConfiguration) XXX_Marshal(b []byte, deterministic bool) } return b[:n], nil } -func (m *OriginAdvancedConfiguration) XXX_Merge(src proto.Message) { - xxx_messageInfo_OriginAdvancedConfiguration.Merge(m, src) +func (m *IpFilteringOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_IpFilteringOptions.Merge(m, src) } -func (m *OriginAdvancedConfiguration) XXX_Size() int { +func (m *IpFilteringOptions) XXX_Size() int { return m.Size() } -func (m *OriginAdvancedConfiguration) XXX_DiscardUnknown() { - xxx_messageInfo_OriginAdvancedConfiguration.DiscardUnknown(m) +func (m *IpFilteringOptions) XXX_DiscardUnknown() { + xxx_messageInfo_IpFilteringOptions.DiscardUnknown(m) } -var xxx_messageInfo_OriginAdvancedConfiguration proto.InternalMessageInfo +var xxx_messageInfo_IpFilteringOptions proto.InternalMessageInfo -func (m *OriginAdvancedConfiguration) GetDisableByteRangeRequest() bool { +type isIpFilteringOptions_IpFilteringType interface { + isIpFilteringOptions_IpFilteringType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type IpFilteringOptions_AllowList struct { + AllowList *policy.PrefixMatchList `protobuf:"bytes,2,opt,name=allow_list,json=allowList,proto3,oneof" json:"allow_list,omitempty"` +} +type IpFilteringOptions_BlockList struct { + BlockList *policy.PrefixMatchList `protobuf:"bytes,3,opt,name=block_list,json=blockList,proto3,oneof" json:"block_list,omitempty"` +} + +func (*IpFilteringOptions_AllowList) isIpFilteringOptions_IpFilteringType() {} +func (*IpFilteringOptions_BlockList) isIpFilteringOptions_IpFilteringType() {} + +func (m *IpFilteringOptions) GetIpFilteringType() isIpFilteringOptions_IpFilteringType { if m != nil { - return m.DisableByteRangeRequest + return m.IpFilteringType } - return false + return nil } -func (m *OriginAdvancedConfiguration) GetWebsocketProxy() bool { - if m != nil { - return m.WebsocketProxy +func (m *IpFilteringOptions) GetAllowList() *policy.PrefixMatchList { + if x, ok := m.GetIpFilteringType().(*IpFilteringOptions_AllowList); ok { + return x.AllowList } - return false + return nil } -// CreateSpecType +func (m *IpFilteringOptions) GetBlockList() *policy.PrefixMatchList { + if x, ok := m.GetIpFilteringType().(*IpFilteringOptions_BlockList); ok { + return x.BlockList + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*IpFilteringOptions) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*IpFilteringOptions_AllowList)(nil), + (*IpFilteringOptions_BlockList)(nil), + } +} + +// GeoFilteringOptions // -// x-displayName: "Create CDN Loadbalancer" -// Shape of the CDN loadbalancer specification -type CreateSpecType struct { - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Types that are valid to be assigned to LoadbalancerType: - // *CreateSpecType_Http - // *CreateSpecType_HttpsAutoCert - // *CreateSpecType_Https - LoadbalancerType isCreateSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - // Origin Pool +// x-displayName: "Geo Filtering Options" +// Options to filter based on Geo prefix +type GeoFilteringOptions struct { + // geo_filtering_type // - // x-displayName: "CDN Origin Pool" - // x-required - OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` + // x-displayName: "Geo Filtering Type" + // Type of Geo filtering (Allow vs Block) + // + // Types that are valid to be assigned to GeoFilteringType: + // *GeoFilteringOptions_AllowList + // *GeoFilteringOptions_BlockList + GeoFilteringType isGeoFilteringOptions_GeoFilteringType `protobuf_oneof:"geo_filtering_type"` } -func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } -func (*CreateSpecType) ProtoMessage() {} -func (*CreateSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{32} +func (m *GeoFilteringOptions) Reset() { *m = GeoFilteringOptions{} } +func (*GeoFilteringOptions) ProtoMessage() {} +func (*GeoFilteringOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{28} } -func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { +func (m *GeoFilteringOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GeoFilteringOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3243,133 +3533,186 @@ func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro } return b[:n], nil } -func (m *CreateSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CreateSpecType.Merge(m, src) +func (m *GeoFilteringOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_GeoFilteringOptions.Merge(m, src) } -func (m *CreateSpecType) XXX_Size() int { +func (m *GeoFilteringOptions) XXX_Size() int { return m.Size() } -func (m *CreateSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_CreateSpecType.DiscardUnknown(m) +func (m *GeoFilteringOptions) XXX_DiscardUnknown() { + xxx_messageInfo_GeoFilteringOptions.DiscardUnknown(m) } -var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo +var xxx_messageInfo_GeoFilteringOptions proto.InternalMessageInfo -type isCreateSpecType_LoadbalancerType interface { - isCreateSpecType_LoadbalancerType() +type isGeoFilteringOptions_GeoFilteringType interface { + isGeoFilteringOptions_GeoFilteringType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CreateSpecType_Http struct { - Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` -} -type CreateSpecType_HttpsAutoCert struct { - HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +type GeoFilteringOptions_AllowList struct { + AllowList *policy.CountryCodeList `protobuf:"bytes,2,opt,name=allow_list,json=allowList,proto3,oneof" json:"allow_list,omitempty"` } -type CreateSpecType_Https struct { - Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` +type GeoFilteringOptions_BlockList struct { + BlockList *policy.CountryCodeList `protobuf:"bytes,3,opt,name=block_list,json=blockList,proto3,oneof" json:"block_list,omitempty"` } -func (*CreateSpecType_Http) isCreateSpecType_LoadbalancerType() {} -func (*CreateSpecType_HttpsAutoCert) isCreateSpecType_LoadbalancerType() {} -func (*CreateSpecType_Https) isCreateSpecType_LoadbalancerType() {} +func (*GeoFilteringOptions_AllowList) isGeoFilteringOptions_GeoFilteringType() {} +func (*GeoFilteringOptions_BlockList) isGeoFilteringOptions_GeoFilteringType() {} -func (m *CreateSpecType) GetLoadbalancerType() isCreateSpecType_LoadbalancerType { +func (m *GeoFilteringOptions) GetGeoFilteringType() isGeoFilteringOptions_GeoFilteringType { if m != nil { - return m.LoadbalancerType + return m.GeoFilteringType } return nil } -func (m *CreateSpecType) GetDomains() []string { - if m != nil { - return m.Domains +func (m *GeoFilteringOptions) GetAllowList() *policy.CountryCodeList { + if x, ok := m.GetGeoFilteringType().(*GeoFilteringOptions_AllowList); ok { + return x.AllowList } return nil } -func (m *CreateSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Http); ok { - return x.Http +func (m *GeoFilteringOptions) GetBlockList() *policy.CountryCodeList { + if x, ok := m.GetGeoFilteringType().(*GeoFilteringOptions_BlockList); ok { + return x.BlockList } return nil } -func (m *CreateSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { - if x, ok := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert +// XXX_OneofWrappers is for the internal use of the proto package. +func (*GeoFilteringOptions) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*GeoFilteringOptions_AllowList)(nil), + (*GeoFilteringOptions_BlockList)(nil), } - return nil } -func (m *CreateSpecType) GetHttps() *CDNHTTPSCustomCertsType { - if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Https); ok { - return x.Https - } - return nil +// LogHeaderOptions +// +// x-displayName: "Headers to Log" +// List of headers to Log +type LogHeaderOptions struct { + // List of Headers + // + // x-displayName: "Headers" + // x-example: "x-custom-length" + // List of headers + HeaderList []string `protobuf:"bytes,1,rep,name=header_list,json=headerList,proto3" json:"header_list,omitempty"` } -func (m *CreateSpecType) GetAddLocation() bool { - if m != nil { - return m.AddLocation +func (m *LogHeaderOptions) Reset() { *m = LogHeaderOptions{} } +func (*LogHeaderOptions) ProtoMessage() {} +func (*LogHeaderOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{29} +} +func (m *LogHeaderOptions) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LogHeaderOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return false + return b[:n], nil +} +func (m *LogHeaderOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_LogHeaderOptions.Merge(m, src) +} +func (m *LogHeaderOptions) XXX_Size() int { + return m.Size() +} +func (m *LogHeaderOptions) XXX_DiscardUnknown() { + xxx_messageInfo_LogHeaderOptions.DiscardUnknown(m) } -func (m *CreateSpecType) GetMoreOption() *AdvancedOptionsType { +var xxx_messageInfo_LogHeaderOptions proto.InternalMessageInfo + +func (m *LogHeaderOptions) GetHeaderList() []string { if m != nil { - return m.MoreOption + return m.HeaderList } return nil } -func (m *CreateSpecType) GetOriginPool() *CdnOriginPoolType { - if m != nil { - return m.OriginPool +// CDNCustomAuthentication +// +// x-displayName: "Custom Authentication" +// Custom Authentication +type CDNCustomAuthentication struct { + // custom_auth_config + // + // x-displayName: "Custom Auth Config" + // x-example: "" + // This is custom authentication configuration parameters. Please reach out to the support for custom authentication details. + CustomAuthConfig string `protobuf:"bytes,1,opt,name=custom_auth_config,json=customAuthConfig,proto3" json:"custom_auth_config,omitempty"` +} + +func (m *CDNCustomAuthentication) Reset() { *m = CDNCustomAuthentication{} } +func (*CDNCustomAuthentication) ProtoMessage() {} +func (*CDNCustomAuthentication) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{30} +} +func (m *CDNCustomAuthentication) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CDNCustomAuthentication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return nil + return b[:n], nil +} +func (m *CDNCustomAuthentication) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNCustomAuthentication.Merge(m, src) +} +func (m *CDNCustomAuthentication) XXX_Size() int { + return m.Size() +} +func (m *CDNCustomAuthentication) XXX_DiscardUnknown() { + xxx_messageInfo_CDNCustomAuthentication.DiscardUnknown(m) } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*CreateSpecType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*CreateSpecType_Http)(nil), - (*CreateSpecType_HttpsAutoCert)(nil), - (*CreateSpecType_Https)(nil), +var xxx_messageInfo_CDNCustomAuthentication proto.InternalMessageInfo + +func (m *CDNCustomAuthentication) GetCustomAuthConfig() string { + if m != nil { + return m.CustomAuthConfig } + return "" } -// ReplaceSpecType +// AuthenticationOptions // -// x-displayName: "Replace CDN Loadbalancer" -// Shape of the CDN loadbalancer specification -type ReplaceSpecType struct { - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Types that are valid to be assigned to LoadbalancerType: - // *ReplaceSpecType_Http - // *ReplaceSpecType_HttpsAutoCert - // *ReplaceSpecType_Https - LoadbalancerType isReplaceSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - // Origin Pool +// x-displayName: "Authentication Options" +// Options to authenticate incoming client requests +type AuthenticationOptions struct { + // Authentication Options // - // x-displayName: "CDN Origin Pool" - // x-required - OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` + // x-displayName: "Authentication Type" + // Type of Authentication + // + // Types that are valid to be assigned to AuthOptions: + // *AuthenticationOptions_DisableAuth + // *AuthenticationOptions_Jwt + // *AuthenticationOptions_Custom + AuthOptions isAuthenticationOptions_AuthOptions `protobuf_oneof:"auth_options"` } -func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } -func (*ReplaceSpecType) ProtoMessage() {} -func (*ReplaceSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{33} +func (m *AuthenticationOptions) Reset() { *m = AuthenticationOptions{} } +func (*AuthenticationOptions) ProtoMessage() {} +func (*AuthenticationOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{31} } -func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { +func (m *AuthenticationOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *AuthenticationOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3377,135 +3720,235 @@ func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, err } return b[:n], nil } -func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplaceSpecType.Merge(m, src) +func (m *AuthenticationOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_AuthenticationOptions.Merge(m, src) } -func (m *ReplaceSpecType) XXX_Size() int { +func (m *AuthenticationOptions) XXX_Size() int { return m.Size() } -func (m *ReplaceSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) +func (m *AuthenticationOptions) XXX_DiscardUnknown() { + xxx_messageInfo_AuthenticationOptions.DiscardUnknown(m) } -var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo +var xxx_messageInfo_AuthenticationOptions proto.InternalMessageInfo -type isReplaceSpecType_LoadbalancerType interface { - isReplaceSpecType_LoadbalancerType() +type isAuthenticationOptions_AuthOptions interface { + isAuthenticationOptions_AuthOptions() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type ReplaceSpecType_Http struct { - Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` +type AuthenticationOptions_DisableAuth struct { + DisableAuth *schema.Empty `protobuf:"bytes,2,opt,name=disable_auth,json=disableAuth,proto3,oneof" json:"disable_auth,omitempty"` } -type ReplaceSpecType_HttpsAutoCert struct { - HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +type AuthenticationOptions_Jwt struct { + Jwt *policy.JwtTokenAuthOptions `protobuf:"bytes,3,opt,name=jwt,proto3,oneof" json:"jwt,omitempty"` } -type ReplaceSpecType_Https struct { - Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` +type AuthenticationOptions_Custom struct { + Custom *CDNCustomAuthentication `protobuf:"bytes,4,opt,name=custom,proto3,oneof" json:"custom,omitempty"` } -func (*ReplaceSpecType_Http) isReplaceSpecType_LoadbalancerType() {} -func (*ReplaceSpecType_HttpsAutoCert) isReplaceSpecType_LoadbalancerType() {} -func (*ReplaceSpecType_Https) isReplaceSpecType_LoadbalancerType() {} - -func (m *ReplaceSpecType) GetLoadbalancerType() isReplaceSpecType_LoadbalancerType { - if m != nil { - return m.LoadbalancerType - } - return nil -} +func (*AuthenticationOptions_DisableAuth) isAuthenticationOptions_AuthOptions() {} +func (*AuthenticationOptions_Jwt) isAuthenticationOptions_AuthOptions() {} +func (*AuthenticationOptions_Custom) isAuthenticationOptions_AuthOptions() {} -func (m *ReplaceSpecType) GetDomains() []string { +func (m *AuthenticationOptions) GetAuthOptions() isAuthenticationOptions_AuthOptions { if m != nil { - return m.Domains + return m.AuthOptions } return nil } -func (m *ReplaceSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Http); ok { - return x.Http +func (m *AuthenticationOptions) GetDisableAuth() *schema.Empty { + if x, ok := m.GetAuthOptions().(*AuthenticationOptions_DisableAuth); ok { + return x.DisableAuth } return nil } -func (m *ReplaceSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { - if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert +func (m *AuthenticationOptions) GetJwt() *policy.JwtTokenAuthOptions { + if x, ok := m.GetAuthOptions().(*AuthenticationOptions_Jwt); ok { + return x.Jwt } return nil } -func (m *ReplaceSpecType) GetHttps() *CDNHTTPSCustomCertsType { - if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Https); ok { - return x.Https +func (m *AuthenticationOptions) GetCustom() *CDNCustomAuthentication { + if x, ok := m.GetAuthOptions().(*AuthenticationOptions_Custom); ok { + return x.Custom } return nil } -func (m *ReplaceSpecType) GetAddLocation() bool { - if m != nil { - return m.AddLocation +// XXX_OneofWrappers is for the internal use of the proto package. +func (*AuthenticationOptions) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*AuthenticationOptions_DisableAuth)(nil), + (*AuthenticationOptions_Jwt)(nil), + (*AuthenticationOptions_Custom)(nil), } - return false } -func (m *ReplaceSpecType) GetMoreOption() *AdvancedOptionsType { - if m != nil { - return m.MoreOption +// CDNOriginServerType +// +// x-displayName: "Origin Server" +// Various options to specify origin server +type CDNOriginServerType struct { + // Origin Server Type + // + // x-displayName: "Select Type of Origin Server" + // x-required + // Various options to specify origin server + // + // Types that are valid to be assigned to Choice: + // *CDNOriginServerType_PublicIp + // *CDNOriginServerType_PublicName + Choice isCDNOriginServerType_Choice `protobuf_oneof:"choice"` + // Port + // + // x-displayName: "Origin Server Port" + // x-example: "80" + // Port the workload can be reached on + Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"` +} + +func (m *CDNOriginServerType) Reset() { *m = CDNOriginServerType{} } +func (*CDNOriginServerType) ProtoMessage() {} +func (*CDNOriginServerType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{32} +} +func (m *CDNOriginServerType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CDNOriginServerType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return nil + return b[:n], nil +} +func (m *CDNOriginServerType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CDNOriginServerType.Merge(m, src) +} +func (m *CDNOriginServerType) XXX_Size() int { + return m.Size() +} +func (m *CDNOriginServerType) XXX_DiscardUnknown() { + xxx_messageInfo_CDNOriginServerType.DiscardUnknown(m) } -func (m *ReplaceSpecType) GetOriginPool() *CdnOriginPoolType { +var xxx_messageInfo_CDNOriginServerType proto.InternalMessageInfo + +type isCDNOriginServerType_Choice interface { + isCDNOriginServerType_Choice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type CDNOriginServerType_PublicIp struct { + PublicIp *origin_pool.OriginServerPublicIP `protobuf:"bytes,2,opt,name=public_ip,json=publicIp,proto3,oneof" json:"public_ip,omitempty"` +} +type CDNOriginServerType_PublicName struct { + PublicName *origin_pool.OriginServerPublicName `protobuf:"bytes,3,opt,name=public_name,json=publicName,proto3,oneof" json:"public_name,omitempty"` +} + +func (*CDNOriginServerType_PublicIp) isCDNOriginServerType_Choice() {} +func (*CDNOriginServerType_PublicName) isCDNOriginServerType_Choice() {} + +func (m *CDNOriginServerType) GetChoice() isCDNOriginServerType_Choice { if m != nil { - return m.OriginPool + return m.Choice + } + return nil +} + +func (m *CDNOriginServerType) GetPublicIp() *origin_pool.OriginServerPublicIP { + if x, ok := m.GetChoice().(*CDNOriginServerType_PublicIp); ok { + return x.PublicIp + } + return nil +} + +func (m *CDNOriginServerType) GetPublicName() *origin_pool.OriginServerPublicName { + if x, ok := m.GetChoice().(*CDNOriginServerType_PublicName); ok { + return x.PublicName } return nil } +func (m *CDNOriginServerType) GetPort() uint32 { + if m != nil { + return m.Port + } + return 0 +} + // XXX_OneofWrappers is for the internal use of the proto package. -func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { +func (*CDNOriginServerType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*ReplaceSpecType_Http)(nil), - (*ReplaceSpecType_HttpsAutoCert)(nil), - (*ReplaceSpecType_Https)(nil), + (*CDNOriginServerType_PublicIp)(nil), + (*CDNOriginServerType_PublicName)(nil), } } -// GetSpecType +// CdnOriginPoolType // -// x-displayName: "Get CDN Loadbalancer" -// Shape of the CDN loadbalancer specification -type GetSpecType struct { - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Types that are valid to be assigned to LoadbalancerType: - // *GetSpecType_Http - // *GetSpecType_HttpsAutoCert - // *GetSpecType_Https - LoadbalancerType isGetSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` - HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` - DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` - State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` - AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` - ServiceDomains []*virtual_host.ServiceDomain `protobuf:"bytes,1011,rep,name=service_domains,json=serviceDomains,proto3" json:"service_domains,omitempty"` - CertState virtual_host.CertificationState `protobuf:"varint,1012,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` +// x-displayName: "CDN Origin Pool" +// Origin Pool for the CDN distribution +type CdnOriginPoolType struct { + // OriginServerPublicName + // + // x-required + // x-displayName: "Origin Host Header" + // The DNS name to be used as the host header for the request to the origin server + PublicName *origin_pool.OriginServerPublicName `protobuf:"bytes,1,opt,name=public_name,json=publicName,proto3" json:"public_name,omitempty"` + // Enable TLS + // + // x-displayName: "Enable TLS for Origin Servers" + // x-required + // Choice to enable TLS for origin servers + // + // Types that are valid to be assigned to TlsChoice: + // *CdnOriginPoolType_NoTls + // *CdnOriginPoolType_UseTls + TlsChoice isCdnOriginPoolType_TlsChoice `protobuf_oneof:"tls_choice"` + // List of Origin Servers + // + // x-displayName: "List Of Origin Servers" + // x-required + // List of original servers + OriginServers []*CDNOriginServerType `protobuf:"bytes,5,rep,name=origin_servers,json=originServers,proto3" json:"origin_servers,omitempty"` + // Follow Origin Redirect + // + // x-displayName: "Follow Origin Redirect" + // x-example: "true" + // x-example: true + // Instructs the CDN to follow redirects from the origin server(s) + FollowOriginRedirect bool `protobuf:"varint,6,opt,name=follow_origin_redirect,json=followOriginRedirect,proto3" json:"follow_origin_redirect,omitempty"` + // Origin Request Timeout + // + // x-displayName: "Origin Request Timeout Duration" + // x-example: "100s" + // Configures the time after which a request to the origin will time out waiting for a response + OriginRequestTimeout string `protobuf:"bytes,7,opt,name=origin_request_timeout,json=originRequestTimeout,proto3" json:"origin_request_timeout,omitempty"` + // Advanced Configuration + // + // x-displayName: "Advanced Configuration" + MoreOriginOptions *OriginAdvancedConfiguration `protobuf:"bytes,8,opt,name=more_origin_options,json=moreOriginOptions,proto3" json:"more_origin_options,omitempty"` } -func (m *GetSpecType) Reset() { *m = GetSpecType{} } -func (*GetSpecType) ProtoMessage() {} -func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{34} +func (m *CdnOriginPoolType) Reset() { *m = CdnOriginPoolType{} } +func (*CdnOriginPoolType) ProtoMessage() {} +func (*CdnOriginPoolType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{33} } -func (m *GetSpecType) XXX_Unmarshal(b []byte) error { +func (m *CdnOriginPoolType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CdnOriginPoolType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3513,181 +3956,187 @@ func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) } return b[:n], nil } -func (m *GetSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetSpecType.Merge(m, src) +func (m *CdnOriginPoolType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CdnOriginPoolType.Merge(m, src) } -func (m *GetSpecType) XXX_Size() int { +func (m *CdnOriginPoolType) XXX_Size() int { return m.Size() } -func (m *GetSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_GetSpecType.DiscardUnknown(m) +func (m *CdnOriginPoolType) XXX_DiscardUnknown() { + xxx_messageInfo_CdnOriginPoolType.DiscardUnknown(m) } -var xxx_messageInfo_GetSpecType proto.InternalMessageInfo +var xxx_messageInfo_CdnOriginPoolType proto.InternalMessageInfo -type isGetSpecType_LoadbalancerType interface { - isGetSpecType_LoadbalancerType() +type isCdnOriginPoolType_TlsChoice interface { + isCdnOriginPoolType_TlsChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type GetSpecType_Http struct { - Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` -} -type GetSpecType_HttpsAutoCert struct { - HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +type CdnOriginPoolType_NoTls struct { + NoTls *schema.Empty `protobuf:"bytes,3,opt,name=no_tls,json=noTls,proto3,oneof" json:"no_tls,omitempty"` } -type GetSpecType_Https struct { - Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` +type CdnOriginPoolType_UseTls struct { + UseTls *origin_pool.UpstreamTlsParameters `protobuf:"bytes,4,opt,name=use_tls,json=useTls,proto3,oneof" json:"use_tls,omitempty"` } -func (*GetSpecType_Http) isGetSpecType_LoadbalancerType() {} -func (*GetSpecType_HttpsAutoCert) isGetSpecType_LoadbalancerType() {} -func (*GetSpecType_Https) isGetSpecType_LoadbalancerType() {} +func (*CdnOriginPoolType_NoTls) isCdnOriginPoolType_TlsChoice() {} +func (*CdnOriginPoolType_UseTls) isCdnOriginPoolType_TlsChoice() {} -func (m *GetSpecType) GetLoadbalancerType() isGetSpecType_LoadbalancerType { +func (m *CdnOriginPoolType) GetTlsChoice() isCdnOriginPoolType_TlsChoice { if m != nil { - return m.LoadbalancerType + return m.TlsChoice } return nil } -func (m *GetSpecType) GetDomains() []string { +func (m *CdnOriginPoolType) GetPublicName() *origin_pool.OriginServerPublicName { if m != nil { - return m.Domains + return m.PublicName } return nil } -func (m *GetSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*GetSpecType_Http); ok { - return x.Http +func (m *CdnOriginPoolType) GetNoTls() *schema.Empty { + if x, ok := m.GetTlsChoice().(*CdnOriginPoolType_NoTls); ok { + return x.NoTls } return nil } -func (m *GetSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { - if x, ok := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert +func (m *CdnOriginPoolType) GetUseTls() *origin_pool.UpstreamTlsParameters { + if x, ok := m.GetTlsChoice().(*CdnOriginPoolType_UseTls); ok { + return x.UseTls } return nil } -func (m *GetSpecType) GetHttps() *CDNHTTPSCustomCertsType { - if x, ok := m.GetLoadbalancerType().(*GetSpecType_Https); ok { - return x.Https +func (m *CdnOriginPoolType) GetOriginServers() []*CDNOriginServerType { + if m != nil { + return m.OriginServers } return nil } -func (m *GetSpecType) GetAddLocation() bool { +func (m *CdnOriginPoolType) GetFollowOriginRedirect() bool { if m != nil { - return m.AddLocation + return m.FollowOriginRedirect } return false } -func (m *GetSpecType) GetMoreOption() *AdvancedOptionsType { +func (m *CdnOriginPoolType) GetOriginRequestTimeout() string { if m != nil { - return m.MoreOption + return m.OriginRequestTimeout } - return nil + return "" } -func (m *GetSpecType) GetOriginPool() *CdnOriginPoolType { +func (m *CdnOriginPoolType) GetMoreOriginOptions() *OriginAdvancedConfiguration { if m != nil { - return m.OriginPool + return m.MoreOriginOptions } return nil } -func (m *GetSpecType) GetHostName() string { - if m != nil { - return m.HostName +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CdnOriginPoolType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CdnOriginPoolType_NoTls)(nil), + (*CdnOriginPoolType_UseTls)(nil), } - return "" } -func (m *GetSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { - if m != nil { - return m.DnsInfo - } - return nil +// Origin Byte Range Request Config +// +// x-displayName: "Origin Byte Range Request Config" +type OriginAdvancedConfiguration struct { + // Disable Origin Byte Range Requests + // + // x-displayName: "Disable Origin Byte Range Requests" + // x-example: "true/false" + // Choice to enable/disable origin byte range requrests towards origin + DisableByteRangeRequest bool `protobuf:"varint,1,opt,name=disable_byte_range_request,json=disableByteRangeRequest,proto3" json:"disable_byte_range_request,omitempty"` + // Enable websocket proxy to the origin + // + // x-displayName: "Enable websocket proxy to the origin" + // Option to enable proxying of websocket connections to the origin server + WebsocketProxy bool `protobuf:"varint,2,opt,name=websocket_proxy,json=websocketProxy,proto3" json:"websocket_proxy,omitempty"` } -func (m *GetSpecType) GetState() virtual_host.VirtualHostState { - if m != nil { - return m.State - } - return virtual_host.VIRTUAL_HOST_READY +func (m *OriginAdvancedConfiguration) Reset() { *m = OriginAdvancedConfiguration{} } +func (*OriginAdvancedConfiguration) ProtoMessage() {} +func (*OriginAdvancedConfiguration) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{34} } - -func (m *GetSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { - if m != nil { - return m.AutoCertInfo - } - return nil +func (m *OriginAdvancedConfiguration) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (m *GetSpecType) GetServiceDomains() []*virtual_host.ServiceDomain { - if m != nil { - return m.ServiceDomains +func (m *OriginAdvancedConfiguration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return nil + return b[:n], nil +} +func (m *OriginAdvancedConfiguration) XXX_Merge(src proto.Message) { + xxx_messageInfo_OriginAdvancedConfiguration.Merge(m, src) +} +func (m *OriginAdvancedConfiguration) XXX_Size() int { + return m.Size() +} +func (m *OriginAdvancedConfiguration) XXX_DiscardUnknown() { + xxx_messageInfo_OriginAdvancedConfiguration.DiscardUnknown(m) } -func (m *GetSpecType) GetCertState() virtual_host.CertificationState { +var xxx_messageInfo_OriginAdvancedConfiguration proto.InternalMessageInfo + +func (m *OriginAdvancedConfiguration) GetDisableByteRangeRequest() bool { if m != nil { - return m.CertState + return m.DisableByteRangeRequest } - return virtual_host.AutoCertDisabled + return false } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*GetSpecType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*GetSpecType_Http)(nil), - (*GetSpecType_HttpsAutoCert)(nil), - (*GetSpecType_Https)(nil), +func (m *OriginAdvancedConfiguration) GetWebsocketProxy() bool { + if m != nil { + return m.WebsocketProxy } + return false } -// Metrics Filter options +// CreateSpecType // -// x-displayName: "Metrics Filter" -// CDN Metrics filter options -type LilacCDNMetricsFilter struct { - // Metrics Filter Tag options - // - // x-displayName: "Filter Tags" - // x-required - // Tags on which CDN metrics can be filtered by - Tag LilacCDNMetricsTag `protobuf:"varint,1,opt,name=tag,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag" json:"tag,omitempty"` - // Filter values - // - // x-displayName: "Filter values" - // x-example: "[IN, US]" - // x-required - // Filter values - Values []string `protobuf:"bytes,2,rep,name=values,proto3" json:"values,omitempty"` - // Metrics Operator Types +// x-displayName: "Create CDN Loadbalancer" +// Shape of the CDN loadbalancer specification +type CreateSpecType struct { + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: + // *CreateSpecType_Http + // *CreateSpecType_HttpsAutoCert + // *CreateSpecType_Https + LoadbalancerType isCreateSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // Origin Pool // - // x-displayName: "Metrics Operator Types" + // x-displayName: "CDN Origin Pool" // x-required - // Operators possible in filtering - Operator LilacCDNMetricsOperatorType `protobuf:"varint,3,opt,name=operator,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsOperatorType" json:"operator,omitempty"` + OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` } -func (m *LilacCDNMetricsFilter) Reset() { *m = LilacCDNMetricsFilter{} } -func (*LilacCDNMetricsFilter) ProtoMessage() {} -func (*LilacCDNMetricsFilter) Descriptor() ([]byte, []int) { +func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } +func (*CreateSpecType) ProtoMessage() {} +func (*CreateSpecType) Descriptor() ([]byte, []int) { return fileDescriptor_0a2659efdd085843, []int{35} } -func (m *LilacCDNMetricsFilter) XXX_Unmarshal(b []byte) error { +func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LilacCDNMetricsFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3695,65 +4144,133 @@ func (m *LilacCDNMetricsFilter) XXX_Marshal(b []byte, deterministic bool) ([]byt } return b[:n], nil } -func (m *LilacCDNMetricsFilter) XXX_Merge(src proto.Message) { - xxx_messageInfo_LilacCDNMetricsFilter.Merge(m, src) +func (m *CreateSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateSpecType.Merge(m, src) } -func (m *LilacCDNMetricsFilter) XXX_Size() int { +func (m *CreateSpecType) XXX_Size() int { return m.Size() } -func (m *LilacCDNMetricsFilter) XXX_DiscardUnknown() { - xxx_messageInfo_LilacCDNMetricsFilter.DiscardUnknown(m) +func (m *CreateSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_CreateSpecType.DiscardUnknown(m) } -var xxx_messageInfo_LilacCDNMetricsFilter proto.InternalMessageInfo +var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo -func (m *LilacCDNMetricsFilter) GetTag() LilacCDNMetricsTag { +type isCreateSpecType_LoadbalancerType interface { + isCreateSpecType_LoadbalancerType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type CreateSpecType_Http struct { + Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` +} +type CreateSpecType_HttpsAutoCert struct { + HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +} +type CreateSpecType_Https struct { + Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` +} + +func (*CreateSpecType_Http) isCreateSpecType_LoadbalancerType() {} +func (*CreateSpecType_HttpsAutoCert) isCreateSpecType_LoadbalancerType() {} +func (*CreateSpecType_Https) isCreateSpecType_LoadbalancerType() {} + +func (m *CreateSpecType) GetLoadbalancerType() isCreateSpecType_LoadbalancerType { if m != nil { - return m.Tag + return m.LoadbalancerType } - return CDN_DISTRIBUTION_NAME + return nil } -func (m *LilacCDNMetricsFilter) GetValues() []string { +func (m *CreateSpecType) GetDomains() []string { if m != nil { - return m.Values + return m.Domains } return nil } -func (m *LilacCDNMetricsFilter) GetOperator() LilacCDNMetricsOperatorType { +func (m *CreateSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Http); ok { + return x.Http + } + return nil +} + +func (m *CreateSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { + if x, ok := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert + } + return nil +} + +func (m *CreateSpecType) GetHttps() *CDNHTTPSCustomCertsType { + if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Https); ok { + return x.Https + } + return nil +} + +func (m *CreateSpecType) GetAddLocation() bool { if m != nil { - return m.Operator + return m.AddLocation } - return OPERATOR_TYPE_IN + return false } -// Metrics group by options +func (m *CreateSpecType) GetMoreOption() *AdvancedOptionsType { + if m != nil { + return m.MoreOption + } + return nil +} + +func (m *CreateSpecType) GetOriginPool() *CdnOriginPoolType { + if m != nil { + return m.OriginPool + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CreateSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CreateSpecType_Http)(nil), + (*CreateSpecType_HttpsAutoCert)(nil), + (*CreateSpecType_Https)(nil), + } +} + +// ReplaceSpecType // -// x-displayName: "Metrics Group By" -// CDN Metrics group by options -type LilacCDNMetricsResponseGroupBy struct { - // Metric Group-By Tags - // - // x-displayName: "Group By Tags" - // Tag on which CDN metric was requested to be grouped in request - Name LilacCDNMetricsTag `protobuf:"varint,1,opt,name=name,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag" json:"name,omitempty"` - // Group-By tag Value +// x-displayName: "Replace CDN Loadbalancer" +// Shape of the CDN loadbalancer specification +type ReplaceSpecType struct { + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: + // *ReplaceSpecType_Http + // *ReplaceSpecType_HttpsAutoCert + // *ReplaceSpecType_Https + LoadbalancerType isReplaceSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // Origin Pool // - // x-displayName: "Group By Tag Value" - // Group-By tag Value - Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + // x-displayName: "CDN Origin Pool" + // x-required + OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` } -func (m *LilacCDNMetricsResponseGroupBy) Reset() { *m = LilacCDNMetricsResponseGroupBy{} } -func (*LilacCDNMetricsResponseGroupBy) ProtoMessage() {} -func (*LilacCDNMetricsResponseGroupBy) Descriptor() ([]byte, []int) { +func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } +func (*ReplaceSpecType) ProtoMessage() {} +func (*ReplaceSpecType) Descriptor() ([]byte, []int) { return fileDescriptor_0a2659efdd085843, []int{36} } -func (m *LilacCDNMetricsResponseGroupBy) XXX_Unmarshal(b []byte) error { +func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LilacCDNMetricsResponseGroupBy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3761,182 +4278,135 @@ func (m *LilacCDNMetricsResponseGroupBy) XXX_Marshal(b []byte, deterministic boo } return b[:n], nil } -func (m *LilacCDNMetricsResponseGroupBy) XXX_Merge(src proto.Message) { - xxx_messageInfo_LilacCDNMetricsResponseGroupBy.Merge(m, src) +func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceSpecType.Merge(m, src) } -func (m *LilacCDNMetricsResponseGroupBy) XXX_Size() int { +func (m *ReplaceSpecType) XXX_Size() int { return m.Size() } -func (m *LilacCDNMetricsResponseGroupBy) XXX_DiscardUnknown() { - xxx_messageInfo_LilacCDNMetricsResponseGroupBy.DiscardUnknown(m) -} - -var xxx_messageInfo_LilacCDNMetricsResponseGroupBy proto.InternalMessageInfo - -func (m *LilacCDNMetricsResponseGroupBy) GetName() LilacCDNMetricsTag { - if m != nil { - return m.Name - } - return CDN_DISTRIBUTION_NAME +func (m *ReplaceSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) } -func (m *LilacCDNMetricsResponseGroupBy) GetValue() string { - if m != nil { - return m.Value - } - return "" -} +var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo -// Metrics Response Value -// -// x-displayName: "Metrics Response Value" -// CDN Metrics response value -type LilacCDNMetricsResponseValue struct { - // Metric Timestamp - // - // x-displayName: "Metric Timestamp" - // Metric Timestamp in unix_timestamp - Timestamp string `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` - // Metric Value - // - // x-displayName: "Metric Value" - // Metric Value - Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` +type isReplaceSpecType_LoadbalancerType interface { + isReplaceSpecType_LoadbalancerType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *LilacCDNMetricsResponseValue) Reset() { *m = LilacCDNMetricsResponseValue{} } -func (*LilacCDNMetricsResponseValue) ProtoMessage() {} -func (*LilacCDNMetricsResponseValue) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{37} -} -func (m *LilacCDNMetricsResponseValue) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LilacCDNMetricsResponseValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *LilacCDNMetricsResponseValue) XXX_Merge(src proto.Message) { - xxx_messageInfo_LilacCDNMetricsResponseValue.Merge(m, src) +type ReplaceSpecType_Http struct { + Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` } -func (m *LilacCDNMetricsResponseValue) XXX_Size() int { - return m.Size() +type ReplaceSpecType_HttpsAutoCert struct { + HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` } -func (m *LilacCDNMetricsResponseValue) XXX_DiscardUnknown() { - xxx_messageInfo_LilacCDNMetricsResponseValue.DiscardUnknown(m) +type ReplaceSpecType_Https struct { + Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` } -var xxx_messageInfo_LilacCDNMetricsResponseValue proto.InternalMessageInfo +func (*ReplaceSpecType_Http) isReplaceSpecType_LoadbalancerType() {} +func (*ReplaceSpecType_HttpsAutoCert) isReplaceSpecType_LoadbalancerType() {} +func (*ReplaceSpecType_Https) isReplaceSpecType_LoadbalancerType() {} -func (m *LilacCDNMetricsResponseValue) GetTimestamp() string { +func (m *ReplaceSpecType) GetLoadbalancerType() isReplaceSpecType_LoadbalancerType { if m != nil { - return m.Timestamp + return m.LoadbalancerType } - return "" + return nil } -func (m *LilacCDNMetricsResponseValue) GetValue() string { +func (m *ReplaceSpecType) GetDomains() []string { if m != nil { - return m.Value + return m.Domains } - return "" + return nil } -// Metrics Series -// -// x-displayName: "Metrics Response Series" -// CDN Metrics response series. -// Each series instance has data for a combination of group-by tag values. -type LilacCDNMetricsResponseSeries struct { - // Metrics group by options - // - // x-displayName: "Metrics Group By" - // CDN Metrics group-by tag combination. - GroupBy []*LilacCDNMetricsResponseGroupBy `protobuf:"bytes,1,rep,name=group_by,json=groupBy,proto3" json:"group_by,omitempty"` - // Metrics Response Value - // - // x-displayName: "Metrics Response Value" - // CDN Metrics data for the series. - Value []*LilacCDNMetricsResponseValue `protobuf:"bytes,2,rep,name=value,proto3" json:"value,omitempty"` +func (m *ReplaceSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Http); ok { + return x.Http + } + return nil } -func (m *LilacCDNMetricsResponseSeries) Reset() { *m = LilacCDNMetricsResponseSeries{} } -func (*LilacCDNMetricsResponseSeries) ProtoMessage() {} -func (*LilacCDNMetricsResponseSeries) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{38} -} -func (m *LilacCDNMetricsResponseSeries) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LilacCDNMetricsResponseSeries) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { + if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert } - return b[:n], nil -} -func (m *LilacCDNMetricsResponseSeries) XXX_Merge(src proto.Message) { - xxx_messageInfo_LilacCDNMetricsResponseSeries.Merge(m, src) -} -func (m *LilacCDNMetricsResponseSeries) XXX_Size() int { - return m.Size() + return nil } -func (m *LilacCDNMetricsResponseSeries) XXX_DiscardUnknown() { - xxx_messageInfo_LilacCDNMetricsResponseSeries.DiscardUnknown(m) + +func (m *ReplaceSpecType) GetHttps() *CDNHTTPSCustomCertsType { + if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Https); ok { + return x.Https + } + return nil } -var xxx_messageInfo_LilacCDNMetricsResponseSeries proto.InternalMessageInfo +func (m *ReplaceSpecType) GetAddLocation() bool { + if m != nil { + return m.AddLocation + } + return false +} -func (m *LilacCDNMetricsResponseSeries) GetGroupBy() []*LilacCDNMetricsResponseGroupBy { +func (m *ReplaceSpecType) GetMoreOption() *AdvancedOptionsType { if m != nil { - return m.GroupBy + return m.MoreOption } return nil } -func (m *LilacCDNMetricsResponseSeries) GetValue() []*LilacCDNMetricsResponseValue { +func (m *ReplaceSpecType) GetOriginPool() *CdnOriginPoolType { if m != nil { - return m.Value + return m.OriginPool } return nil } -// Metrics Response Data +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ReplaceSpecType_Http)(nil), + (*ReplaceSpecType_HttpsAutoCert)(nil), + (*ReplaceSpecType_Https)(nil), + } +} + +// GetSpecType // -// x-displayName: "Metrics Response Data" -// CDN Metrics response data. This is specific to a metric field. -type LilacCDNMetricsResponseData struct { - // Metrics Field Selector options - // - // x-displayName: "Metrics Field Selector" - // Metrics field for this response message - Type LilacCDNMetricsFieldSelector `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFieldSelector" json:"type,omitempty"` - // Metric Unit - // - // x-displayName: "Metric Unit" - // Metric Unit of the field in this message - Unit LilacCDNMetricUnit `protobuf:"varint,2,opt,name=unit,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricUnit" json:"unit,omitempty"` - // Metrics Series - // - // x-displayName: "Metrics Response Series" - // CDN Metrics response series for the field in this message - Series []*LilacCDNMetricsResponseSeries `protobuf:"bytes,3,rep,name=series,proto3" json:"series,omitempty"` +// x-displayName: "Get CDN Loadbalancer" +// Shape of the CDN loadbalancer specification +type GetSpecType struct { + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: + // *GetSpecType_Http + // *GetSpecType_HttpsAutoCert + // *GetSpecType_Https + LoadbalancerType isGetSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + AddLocation bool `protobuf:"varint,11,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + MoreOption *AdvancedOptionsType `protobuf:"bytes,13,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + OriginPool *CdnOriginPoolType `protobuf:"bytes,16,opt,name=origin_pool,json=originPool,proto3" json:"origin_pool,omitempty"` + HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` + DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` + State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` + AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` + ServiceDomains []*virtual_host.ServiceDomain `protobuf:"bytes,1011,rep,name=service_domains,json=serviceDomains,proto3" json:"service_domains,omitempty"` + CertState virtual_host.CertificationState `protobuf:"varint,1012,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` } -func (m *LilacCDNMetricsResponseData) Reset() { *m = LilacCDNMetricsResponseData{} } -func (*LilacCDNMetricsResponseData) ProtoMessage() {} -func (*LilacCDNMetricsResponseData) Descriptor() ([]byte, []int) { - return fileDescriptor_0a2659efdd085843, []int{39} +func (m *GetSpecType) Reset() { *m = GetSpecType{} } +func (*GetSpecType) ProtoMessage() {} +func (*GetSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{37} } -func (m *LilacCDNMetricsResponseData) XXX_Unmarshal(b []byte) error { +func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LilacCDNMetricsResponseData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -3944,916 +4414,1041 @@ func (m *LilacCDNMetricsResponseData) XXX_Marshal(b []byte, deterministic bool) } return b[:n], nil } -func (m *LilacCDNMetricsResponseData) XXX_Merge(src proto.Message) { - xxx_messageInfo_LilacCDNMetricsResponseData.Merge(m, src) +func (m *GetSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetSpecType.Merge(m, src) } -func (m *LilacCDNMetricsResponseData) XXX_Size() int { +func (m *GetSpecType) XXX_Size() int { return m.Size() } -func (m *LilacCDNMetricsResponseData) XXX_DiscardUnknown() { - xxx_messageInfo_LilacCDNMetricsResponseData.DiscardUnknown(m) +func (m *GetSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GetSpecType.DiscardUnknown(m) } -var xxx_messageInfo_LilacCDNMetricsResponseData proto.InternalMessageInfo +var xxx_messageInfo_GetSpecType proto.InternalMessageInfo -func (m *LilacCDNMetricsResponseData) GetType() LilacCDNMetricsFieldSelector { - if m != nil { - return m.Type - } - return REQUEST_TOTAL_SUM +type isGetSpecType_LoadbalancerType interface { + isGetSpecType_LoadbalancerType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *LilacCDNMetricsResponseData) GetUnit() LilacCDNMetricUnit { - if m != nil { - return m.Unit - } - return COUNT +type GetSpecType_Http struct { + Http *http_loadbalancer.ProxyTypeHttp `protobuf:"bytes,3,opt,name=http,proto3,oneof" json:"http,omitempty"` +} +type GetSpecType_HttpsAutoCert struct { + HttpsAutoCert *CDNHTTPSAutoCertsType `protobuf:"bytes,18,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +} +type GetSpecType_Https struct { + Https *CDNHTTPSCustomCertsType `protobuf:"bytes,19,opt,name=https,proto3,oneof" json:"https,omitempty"` } -func (m *LilacCDNMetricsResponseData) GetSeries() []*LilacCDNMetricsResponseSeries { +func (*GetSpecType_Http) isGetSpecType_LoadbalancerType() {} +func (*GetSpecType_HttpsAutoCert) isGetSpecType_LoadbalancerType() {} +func (*GetSpecType_Https) isGetSpecType_LoadbalancerType() {} + +func (m *GetSpecType) GetLoadbalancerType() isGetSpecType_LoadbalancerType { if m != nil { - return m.Series + return m.LoadbalancerType } return nil } -func init() { - proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.HeaderOptions", HeaderOptions_name, HeaderOptions_value) - golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.HeaderOptions", HeaderOptions_name, HeaderOptions_value) - proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFieldSelector", LilacCDNMetricsFieldSelector_name, LilacCDNMetricsFieldSelector_value) - golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFieldSelector", LilacCDNMetricsFieldSelector_name, LilacCDNMetricsFieldSelector_value) - proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag", LilacCDNMetricsTag_name, LilacCDNMetricsTag_value) - golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag", LilacCDNMetricsTag_name, LilacCDNMetricsTag_value) - proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsOperatorType", LilacCDNMetricsOperatorType_name, LilacCDNMetricsOperatorType_value) - golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsOperatorType", LilacCDNMetricsOperatorType_name, LilacCDNMetricsOperatorType_value) - proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricUnit", LilacCDNMetricUnit_name, LilacCDNMetricUnit_value) - golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricUnit", LilacCDNMetricUnit_name, LilacCDNMetricUnit_value) - proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.cdn_loadbalancer.ProxyTypeHttpsAutoCerts") - golang_proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.cdn_loadbalancer.ProxyTypeHttpsAutoCerts") - proto.RegisterType((*HeaderControlType)(nil), "ves.io.schema.views.cdn_loadbalancer.HeaderControlType") - golang_proto.RegisterType((*HeaderControlType)(nil), "ves.io.schema.views.cdn_loadbalancer.HeaderControlType") - proto.RegisterType((*SecurityOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType") - golang_proto.RegisterType((*SecurityOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType") - proto.RegisterType((*LoggingOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.LoggingOptionsType") - golang_proto.RegisterType((*LoggingOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.LoggingOptionsType") - proto.RegisterType((*CDNCacheRuleExpressionList)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpressionList") - golang_proto.RegisterType((*CDNCacheRuleExpressionList)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpressionList") - proto.RegisterType((*CacheOperator)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOperator") - golang_proto.RegisterType((*CacheOperator)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOperator") - proto.RegisterType((*CacheHeaderMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheHeaderMatcherType") - golang_proto.RegisterType((*CacheHeaderMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheHeaderMatcherType") - proto.RegisterType((*CDNPathMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNPathMatcherType") - golang_proto.RegisterType((*CDNPathMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNPathMatcherType") - proto.RegisterType((*CacheCookieMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheCookieMatcherType") - golang_proto.RegisterType((*CacheCookieMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheCookieMatcherType") - proto.RegisterType((*CacheQueryParameterMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheQueryParameterMatcherType") - golang_proto.RegisterType((*CacheQueryParameterMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheQueryParameterMatcherType") - proto.RegisterType((*CDNCacheRuleExpression)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpression") - golang_proto.RegisterType((*CDNCacheRuleExpression)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpression") - proto.RegisterType((*CacheTTLEnableProps)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLEnableProps") - golang_proto.RegisterType((*CacheTTLEnableProps)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLEnableProps") - proto.RegisterType((*CacheEligibleOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheEligibleOptions") - golang_proto.RegisterType((*CacheEligibleOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheEligibleOptions") - proto.RegisterType((*CDNCacheRule)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRule") - golang_proto.RegisterType((*CDNCacheRule)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRule") - proto.RegisterType((*DefaultCacheTTLProps)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheTTLProps") - golang_proto.RegisterType((*DefaultCacheTTLProps)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheTTLProps") - proto.RegisterType((*DefaultCacheAction)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheAction") - golang_proto.RegisterType((*DefaultCacheAction)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheAction") - proto.RegisterType((*CacheOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOptions") - golang_proto.RegisterType((*CacheOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOptions") - proto.RegisterType((*CacheTTLOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLOptionsType") - golang_proto.RegisterType((*CacheTTLOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLOptionsType") - proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.AdvancedOptionsType") - golang_proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.AdvancedOptionsType") - proto.RegisterType((*CDNTLSConfig)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNTLSConfig") - golang_proto.RegisterType((*CDNTLSConfig)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNTLSConfig") - proto.RegisterType((*CDNHTTPSAutoCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSAutoCertsType") - golang_proto.RegisterType((*CDNHTTPSAutoCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSAutoCertsType") - proto.RegisterType((*CDNDownstreamTlsParamsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNDownstreamTlsParamsType") - golang_proto.RegisterType((*CDNDownstreamTlsParamsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNDownstreamTlsParamsType") - proto.RegisterType((*CDNHTTPSCustomCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSCustomCertsType") - golang_proto.RegisterType((*CDNHTTPSCustomCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSCustomCertsType") - proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GlobalSpecType") - golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GlobalSpecType") - proto.RegisterType((*IpFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.IpFilteringOptions") - golang_proto.RegisterType((*IpFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.IpFilteringOptions") - proto.RegisterType((*GeoFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.GeoFilteringOptions") - golang_proto.RegisterType((*GeoFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.GeoFilteringOptions") - proto.RegisterType((*LogHeaderOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.LogHeaderOptions") - golang_proto.RegisterType((*LogHeaderOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.LogHeaderOptions") - proto.RegisterType((*CDNCustomAuthentication)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCustomAuthentication") - golang_proto.RegisterType((*CDNCustomAuthentication)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCustomAuthentication") - proto.RegisterType((*AuthenticationOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions") - golang_proto.RegisterType((*AuthenticationOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions") - proto.RegisterType((*CDNOriginServerType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNOriginServerType") - golang_proto.RegisterType((*CDNOriginServerType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNOriginServerType") - proto.RegisterType((*CdnOriginPoolType)(nil), "ves.io.schema.views.cdn_loadbalancer.CdnOriginPoolType") - golang_proto.RegisterType((*CdnOriginPoolType)(nil), "ves.io.schema.views.cdn_loadbalancer.CdnOriginPoolType") - proto.RegisterType((*OriginAdvancedConfiguration)(nil), "ves.io.schema.views.cdn_loadbalancer.OriginAdvancedConfiguration") - golang_proto.RegisterType((*OriginAdvancedConfiguration)(nil), "ves.io.schema.views.cdn_loadbalancer.OriginAdvancedConfiguration") - proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.CreateSpecType") - golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.CreateSpecType") - proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.ReplaceSpecType") - golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.ReplaceSpecType") - proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GetSpecType") - golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GetSpecType") - proto.RegisterType((*LilacCDNMetricsFilter)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFilter") - golang_proto.RegisterType((*LilacCDNMetricsFilter)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFilter") - proto.RegisterType((*LilacCDNMetricsResponseGroupBy)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseGroupBy") - golang_proto.RegisterType((*LilacCDNMetricsResponseGroupBy)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseGroupBy") - proto.RegisterType((*LilacCDNMetricsResponseValue)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseValue") - golang_proto.RegisterType((*LilacCDNMetricsResponseValue)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseValue") - proto.RegisterType((*LilacCDNMetricsResponseSeries)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseSeries") - golang_proto.RegisterType((*LilacCDNMetricsResponseSeries)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseSeries") - proto.RegisterType((*LilacCDNMetricsResponseData)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseData") - golang_proto.RegisterType((*LilacCDNMetricsResponseData)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseData") +func (m *GetSpecType) GetDomains() []string { + if m != nil { + return m.Domains + } + return nil } -func init() { - proto.RegisterFile("ves.io/schema/views/cdn_loadbalancer/types.proto", fileDescriptor_0a2659efdd085843) -} -func init() { - golang_proto.RegisterFile("ves.io/schema/views/cdn_loadbalancer/types.proto", fileDescriptor_0a2659efdd085843) +func (m *GetSpecType) GetHttp() *http_loadbalancer.ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*GetSpecType_Http); ok { + return x.Http + } + return nil } -var fileDescriptor_0a2659efdd085843 = []byte{ - // 5219 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7c, 0x6f, 0x6c, 0x5b, 0x59, - 0x56, 0xb8, 0xaf, 0xed, 0xd8, 0xce, 0x71, 0xe2, 0x38, 0x37, 0x69, 0xe2, 0x64, 0x3a, 0xa9, 0xc7, - 0xbf, 0xce, 0x8f, 0x4c, 0x9a, 0x3a, 0x8d, 0x3b, 0xed, 0x4c, 0x33, 0xb3, 0x9d, 0x8d, 0x9d, 0xb4, - 0x49, 0x48, 0x93, 0xcc, 0x8b, 0x33, 0x7f, 0x77, 0xf6, 0xe9, 0xc5, 0xbe, 0x71, 0xde, 0xf4, 0xc5, - 0xcf, 0xf3, 0xde, 0x73, 0x3b, 0x59, 0x51, 0x31, 0x42, 0xbb, 0x1f, 0x16, 0x04, 0x82, 0xb2, 0x68, - 0xf9, 0x02, 0x82, 0x0f, 0xc0, 0xb2, 0x1f, 0x56, 0xf0, 0x05, 0x24, 0xcc, 0x4a, 0x55, 0x05, 0x68, - 0x55, 0x24, 0xe8, 0x17, 0xa4, 0xd1, 0x22, 0x10, 0x93, 0x11, 0x30, 0xbb, 0x0c, 0xd2, 0x50, 0x46, - 0x68, 0x85, 0x16, 0x2d, 0xba, 0x7f, 0x9e, 0xfd, 0x9e, 0xfd, 0xec, 0xda, 0x6d, 0x67, 0x24, 0xa0, - 0x9f, 0x62, 0xdf, 0x7b, 0xfe, 0xdd, 0x73, 0xcf, 0x39, 0xf7, 0xdc, 0x73, 0x8f, 0x03, 0x67, 0xae, - 0x11, 0x33, 0xad, 0xea, 0x73, 0x66, 0x61, 0x9f, 0x1c, 0x28, 0x73, 0xd7, 0x54, 0x72, 0xdd, 0x9c, - 0x2b, 0x14, 0xcb, 0xb2, 0xa6, 0x2b, 0xc5, 0x5d, 0x45, 0x53, 0xca, 0x05, 0x62, 0xcc, 0x59, 0x87, - 0x15, 0x62, 0xa6, 0x2b, 0x86, 0x6e, 0xe9, 0xf8, 0x24, 0xc7, 0x48, 0x73, 0x8c, 0x34, 0xc3, 0x48, - 0x37, 0x63, 0x4c, 0x9e, 0x2e, 0xa9, 0xd6, 0x7e, 0x75, 0x37, 0x5d, 0xd0, 0x0f, 0xe6, 0x4a, 0x7a, - 0x49, 0x9f, 0x63, 0xc8, 0xbb, 0xd5, 0x3d, 0xf6, 0x8d, 0x7d, 0x61, 0x9f, 0x38, 0xd1, 0xc9, 0x13, - 0x25, 0x5d, 0x2f, 0x69, 0xa4, 0x01, 0x65, 0xa9, 0x07, 0xc4, 0xb4, 0x94, 0x83, 0x8a, 0x00, 0x78, - 0xc2, 0x2d, 0xa7, 0x5e, 0xb1, 0x54, 0xbd, 0x2c, 0x44, 0x9a, 0x4c, 0xba, 0x27, 0x2b, 0xba, 0xa6, - 0x16, 0x0e, 0x9d, 0x42, 0x4f, 0xfe, 0x7f, 0x37, 0x84, 0xa1, 0x58, 0x44, 0xd6, 0xd4, 0x03, 0xd5, - 0x72, 0x2f, 0x6e, 0xf2, 0x44, 0x13, 0x9c, 0x5e, 0xb5, 0x88, 0x0b, 0x60, 0xda, 0x0d, 0x60, 0x12, - 0xe3, 0x9a, 0x5a, 0x20, 0xb2, 0x07, 0xcb, 0xd3, 0x9d, 0x20, 0x65, 0xa3, 0xaa, 0xb9, 0x09, 0x4f, - 0xb8, 0xc1, 0x9d, 0x53, 0xc7, 0x9b, 0xf6, 0x48, 0xd1, 0xd4, 0xa2, 0x62, 0x11, 0xef, 0xc5, 0xd3, - 0xfd, 0x90, 0xdd, 0xea, 0x79, 0xa1, 0xab, 0x3d, 0x56, 0x0a, 0x05, 0x62, 0x9a, 0xb2, 0xa6, 0x97, - 0x5c, 0xcc, 0xe7, 0xbd, 0x90, 0xf7, 0x2d, 0xab, 0xd2, 0xd6, 0x42, 0x26, 0x4f, 0x79, 0xa1, 0xe8, - 0x86, 0x5a, 0x52, 0xcb, 0x72, 0x45, 0xd7, 0x35, 0x17, 0xf0, 0x59, 0x2f, 0x60, 0xe7, 0xfe, 0x78, - 0xe9, 0xf6, 0x84, 0x17, 0x52, 0x87, 0xfd, 0xbe, 0xa6, 0x1a, 0x56, 0x55, 0xd1, 0xe4, 0x7d, 0xdd, - 0xb4, 0x5c, 0x70, 0x67, 0xda, 0xc3, 0xc9, 0xc5, 0xb2, 0x29, 0xab, 0xe5, 0x3d, 0x7d, 0x4e, 0xdf, - 0x7d, 0x9b, 0x14, 0x2c, 0x8e, 0x91, 0xfa, 0xa7, 0x00, 0x8c, 0x6f, 0x19, 0xfa, 0xbb, 0x87, 0xf9, - 0xc3, 0x0a, 0x59, 0xb1, 0xac, 0x8a, 0xb9, 0x58, 0xb5, 0xf4, 0x1c, 0x31, 0x2c, 0x13, 0x3f, 0x03, - 0x83, 0x4c, 0x33, 0x06, 0x29, 0xaa, 0x06, 0x29, 0x58, 0x09, 0x94, 0x44, 0xd3, 0x91, 0x6c, 0xf0, - 0x47, 0x35, 0xe4, 0x93, 0x06, 0xe8, 0x94, 0x24, 0x66, 0xf0, 0x09, 0x88, 0x28, 0xc5, 0xa2, 0xbc, - 0x6f, 0x5a, 0x66, 0xc2, 0xef, 0x80, 0x0a, 0x2b, 0xc5, 0xe2, 0x8a, 0x69, 0x99, 0x38, 0x07, 0x60, - 0x69, 0xa6, 0x5c, 0xd0, 0xcb, 0x7b, 0x6a, 0x29, 0x11, 0x48, 0xa2, 0xe9, 0x68, 0x66, 0x2a, 0xed, - 0xe5, 0x7b, 0x79, 0xcd, 0xcc, 0x31, 0xa8, 0x6c, 0xf0, 0x93, 0x1a, 0x42, 0x52, 0xbf, 0x65, 0x0f, - 0xe0, 0x1c, 0xc4, 0x8a, 0x64, 0x4f, 0xa9, 0x6a, 0x96, 0xbc, 0x4f, 0x94, 0x22, 0x31, 0x12, 0x7d, - 0x8c, 0xd0, 0x68, 0x13, 0xa1, 0xe5, 0x83, 0x8a, 0x75, 0x98, 0x0d, 0xde, 0xaa, 0x21, 0xb4, 0xe2, - 0x93, 0x06, 0x05, 0xce, 0x0a, 0x43, 0xc1, 0xf3, 0x10, 0xa5, 0xc6, 0x4b, 0x0c, 0xb9, 0xac, 0x1c, - 0x90, 0x44, 0x28, 0x89, 0xa6, 0xfb, 0xb3, 0x31, 0x0a, 0xfb, 0x27, 0x3f, 0xb8, 0x15, 0xe8, 0x33, - 0x02, 0xef, 0xfb, 0x29, 0x16, 0x70, 0xa0, 0x0d, 0xe5, 0x80, 0xe0, 0x8b, 0x80, 0x95, 0x4a, 0x85, - 0x94, 0x8b, 0xb2, 0x13, 0x33, 0xdc, 0x06, 0x33, 0xce, 0x61, 0xb7, 0x1b, 0xf8, 0x2f, 0xc1, 0x40, - 0x45, 0x31, 0x4d, 0xd9, 0xda, 0x37, 0xf4, 0x6a, 0x69, 0x3f, 0x11, 0xe9, 0x42, 0xea, 0x28, 0xc5, - 0xc8, 0x73, 0x84, 0x05, 0xb8, 0x77, 0x31, 0x3c, 0x3f, 0x9b, 0x99, 0x3d, 0x3b, 0xfb, 0x6c, 0x76, - 0x0e, 0x46, 0x85, 0x14, 0x5c, 0x07, 0x72, 0x61, 0x5f, 0x57, 0x0b, 0x04, 0x8f, 0xdf, 0xaa, 0xa1, - 0xbe, 0xef, 0xd5, 0x10, 0xba, 0x5b, 0x43, 0xc1, 0xa3, 0x1a, 0x0a, 0x9f, 0x9b, 0x3d, 0x3f, 0xfb, - 0xdc, 0xec, 0xf3, 0x6b, 0xc1, 0x48, 0x30, 0xde, 0x97, 0xfa, 0xc5, 0x20, 0x0c, 0x73, 0x0d, 0xe4, - 0xf4, 0xb2, 0x65, 0xe8, 0x1a, 0xdd, 0x70, 0xfc, 0x15, 0x18, 0x33, 0xc8, 0x3b, 0x55, 0x62, 0xda, - 0x1a, 0x35, 0x65, 0x4b, 0x97, 0x95, 0x62, 0x31, 0x81, 0x92, 0x81, 0xe9, 0x68, 0xe6, 0x54, 0x93, - 0x8c, 0x9c, 0xc2, 0x15, 0xa5, 0xac, 0x56, 0xaa, 0x9a, 0x42, 0xbd, 0x72, 0x93, 0xf9, 0x26, 0x25, - 0x96, 0x4d, 0xdc, 0xb5, 0x55, 0x71, 0x13, 0xf9, 0xe3, 0x49, 0xfb, 0x53, 0x02, 0x49, 0x23, 0x82, - 0x09, 0x47, 0x37, 0xf3, 0xfa, 0x62, 0xb1, 0x88, 0xbf, 0x86, 0x60, 0xc2, 0x83, 0xb9, 0x41, 0x0e, - 0xf4, 0x6b, 0x24, 0xe1, 0x4f, 0x06, 0xa6, 0xfb, 0xb3, 0x6b, 0x36, 0xc9, 0x81, 0x9b, 0xa8, 0x3f, - 0x15, 0x36, 0xe8, 0x7e, 0xbf, 0xe7, 0xa7, 0x03, 0xc7, 0x6f, 0xa2, 0x89, 0xd4, 0xb8, 0x71, 0x2c, - 0x33, 0xf2, 0xe5, 0x37, 0xcf, 0x9c, 0xbe, 0xb0, 0x78, 0xfa, 0x0d, 0xe5, 0xf4, 0x57, 0xe4, 0x2f, - 0x9d, 0xfe, 0x52, 0xfa, 0xad, 0x53, 0x27, 0x3d, 0x85, 0x18, 0x6b, 0x16, 0x42, 0x62, 0x9c, 0xf0, - 0xcf, 0xc0, 0xb8, 0x41, 0xcc, 0x8a, 0x5e, 0x36, 0x49, 0xb3, 0x12, 0x02, 0x8f, 0x52, 0x09, 0xa3, - 0x36, 0x17, 0x97, 0x16, 0xae, 0xc1, 0xa4, 0x17, 0x77, 0xa1, 0x85, 0x20, 0xd3, 0xc2, 0x05, 0x9b, - 0x66, 0xef, 0x8b, 0x1e, 0x6f, 0x61, 0xca, 0x57, 0x9d, 0xfa, 0x33, 0x3f, 0x8c, 0x6c, 0x93, 0x42, - 0xd5, 0x50, 0xad, 0x43, 0x2e, 0xbe, 0xc9, 0x2c, 0x42, 0x81, 0x01, 0xb5, 0x22, 0xef, 0xa9, 0x9a, - 0x45, 0x0c, 0xb5, 0x5c, 0x12, 0x1e, 0xf6, 0x7c, 0xba, 0x9b, 0x63, 0x32, 0xbd, 0x5a, 0xb9, 0x64, - 0x23, 0x0a, 0x9a, 0xd9, 0x20, 0x95, 0x5d, 0x8a, 0xaa, 0x8d, 0x19, 0x5c, 0x84, 0xc1, 0x12, 0xd1, - 0x1d, 0x3c, 0x42, 0x8c, 0xc7, 0x85, 0xee, 0x78, 0x5c, 0x26, 0x7a, 0x1b, 0x26, 0x03, 0x25, 0xc7, - 0x14, 0x2e, 0xc2, 0x80, 0x52, 0xb5, 0xf6, 0xed, 0xc3, 0x23, 0xd1, 0xcf, 0x98, 0xbc, 0xd0, 0x1d, - 0x93, 0xc5, 0xaa, 0xb5, 0x4f, 0xca, 0x96, 0x5a, 0x70, 0x6c, 0x6f, 0x7d, 0x2d, 0x94, 0xac, 0x18, - 0x4a, 0x7d, 0x8c, 0x00, 0xaf, 0xeb, 0xa5, 0x52, 0x43, 0x18, 0xa6, 0xc5, 0xb7, 0x01, 0x17, 0x34, - 0x95, 0x94, 0x2d, 0x7a, 0x00, 0xd5, 0x45, 0x08, 0x33, 0x11, 0xce, 0x77, 0x27, 0xc2, 0xba, 0x5e, - 0xe2, 0x7b, 0xe6, 0xe6, 0x1e, 0xe7, 0x74, 0xd7, 0x75, 0x9b, 0x1f, 0xe5, 0x25, 0x4e, 0x23, 0x27, - 0xaf, 0xc8, 0xa3, 0xe0, 0xc5, 0xe9, 0x36, 0x78, 0xa5, 0xfe, 0xce, 0x0f, 0x93, 0xb9, 0xa5, 0x8d, - 0x9c, 0x52, 0xd8, 0x27, 0x52, 0x55, 0x23, 0xcb, 0xef, 0x56, 0x0c, 0x62, 0x9a, 0xaa, 0x5e, 0x5e, - 0x57, 0x4d, 0x0b, 0x9f, 0x85, 0x21, 0x52, 0x1f, 0xe1, 0x51, 0x12, 0xb1, 0x28, 0x09, 0x22, 0x42, - 0x26, 0xde, 0x43, 0x52, 0xac, 0x01, 0xc2, 0xa2, 0xe3, 0x37, 0x10, 0x1c, 0x2b, 0x50, 0x82, 0x2c, - 0x8b, 0x90, 0x1b, 0xb3, 0x2c, 0x06, 0x44, 0x33, 0x2f, 0x76, 0xb7, 0x06, 0x6f, 0xb1, 0xb2, 0xa9, - 0x4f, 0x9c, 0xfe, 0x18, 0xb1, 0x3f, 0x45, 0x90, 0x33, 0x3c, 0x15, 0x5a, 0x11, 0x17, 0xcc, 0x3b, - 0x35, 0xa4, 0xc3, 0x49, 0x18, 0x6a, 0x8c, 0x25, 0xa9, 0xbc, 0x93, 0xc3, 0x2d, 0x8b, 0x84, 0xcb, - 0x10, 0x77, 0x40, 0x5d, 0x51, 0xac, 0xc2, 0x7e, 0xea, 0x6c, 0x9b, 0x55, 0x61, 0xe0, 0xa7, 0x59, - 0xd5, 0x20, 0xc5, 0xc9, 0xd8, 0x86, 0x6e, 0x25, 0x1b, 0xdf, 0x53, 0x5f, 0x0f, 0xc0, 0x20, 0x5b, - 0xc5, 0x66, 0x85, 0x18, 0x8a, 0xa5, 0x1b, 0x38, 0x01, 0xa1, 0xe5, 0x77, 0xaa, 0x8a, 0xc6, 0xcf, - 0xd5, 0xfe, 0x15, 0x9f, 0x24, 0xbe, 0xe3, 0x93, 0x30, 0xb0, 0xa4, 0x13, 0x73, 0x43, 0xb7, 0xd8, - 0x00, 0x3b, 0x54, 0xe9, 0xbc, 0x6b, 0x14, 0x1f, 0x87, 0x08, 0x0d, 0xf8, 0x8a, 0x5a, 0x36, 0x13, - 0x41, 0x01, 0x51, 0x1f, 0xc1, 0xd3, 0x10, 0x13, 0xd0, 0x62, 0x88, 0xf9, 0x3b, 0x85, 0x69, 0x1a, - 0xc7, 0x49, 0x80, 0x6d, 0x4b, 0x31, 0x2c, 0xf3, 0xba, 0x6a, 0xed, 0xf3, 0x53, 0x93, 0x9e, 0x92, - 0x8d, 0x31, 0x3c, 0x0b, 0x71, 0x81, 0xc3, 0x06, 0x5f, 0xa5, 0x70, 0x61, 0x01, 0xd7, 0x32, 0x43, - 0xe5, 0x5a, 0x2e, 0x17, 0x39, 0xb5, 0x88, 0x2d, 0x97, 0x3d, 0xe2, 0x90, 0x6b, 0xb9, 0x5c, 0x64, - 0x94, 0xfa, 0x9b, 0xe4, 0x12, 0xe3, 0x54, 0x2e, 0xa6, 0x6f, 0x89, 0x94, 0xc8, 0xbb, 0x09, 0xb0, - 0xe5, 0x6a, 0x8c, 0x65, 0xcf, 0x40, 0x8c, 0x6f, 0x84, 0x6e, 0xeb, 0x74, 0xea, 0x56, 0x0d, 0xf9, - 0xa9, 0x85, 0x1f, 0xd5, 0x10, 0x66, 0xa7, 0xea, 0xac, 0x38, 0x2c, 0x67, 0x2f, 0xcc, 0xce, 0x9f, - 0x59, 0x0b, 0x46, 0x50, 0xdc, 0x9f, 0xfa, 0xa3, 0x10, 0x8c, 0xb1, 0xbd, 0xb0, 0xe3, 0xbd, 0x55, - 0xd8, 0x27, 0x06, 0x73, 0xef, 0xcb, 0x10, 0xac, 0x1b, 0x77, 0x2c, 0x73, 0xb6, 0x3b, 0x03, 0x75, - 0x79, 0x98, 0xc4, 0x08, 0xe0, 0x1d, 0x88, 0xd8, 0x52, 0x89, 0x48, 0xdb, 0x25, 0x31, 0x97, 0x91, - 0x88, 0x4c, 0xa9, 0x4e, 0x6a, 0xe1, 0xc3, 0xe0, 0xed, 0x1a, 0x4a, 0xc0, 0x18, 0x0c, 0x71, 0xa6, - 0x49, 0x4b, 0xe7, 0x56, 0x89, 0x03, 0xf3, 0xb3, 0xe7, 0xee, 0xd4, 0xd0, 0xed, 0x20, 0xc4, 0x21, - 0xc8, 0xcc, 0x39, 0xc2, 0xd7, 0x92, 0x44, 0xf0, 0xb7, 0x7e, 0x88, 0xd8, 0x24, 0x67, 0xfe, 0xca, - 0x0f, 0x7f, 0xe9, 0x87, 0x09, 0x18, 0xb2, 0x89, 0xa6, 0xb9, 0xd9, 0x65, 0x84, 0xf9, 0xc1, 0xd3, - 0x70, 0xac, 0x3e, 0xe5, 0xb4, 0xb8, 0x8c, 0xcb, 0xfe, 0xe0, 0x49, 0x18, 0xae, 0x83, 0xd9, 0x66, - 0x97, 0xa9, 0x1b, 0x20, 0x3c, 0x03, 0xe3, 0xcd, 0x54, 0xc4, 0x5c, 0xa6, 0xc9, 0x02, 0xe1, 0x29, - 0x18, 0xa9, 0x83, 0x36, 0xcc, 0x2e, 0xe3, 0x30, 0x41, 0x38, 0x0d, 0x13, 0xcd, 0xd4, 0xea, 0x16, - 0x97, 0x69, 0xb1, 0x41, 0x97, 0x6c, 0xb6, 0xe9, 0x65, 0xea, 0x46, 0xe8, 0x25, 0x9b, 0xb0, 0xba, - 0x4c, 0x93, 0x15, 0xba, 0x64, 0x6b, 0x98, 0x5e, 0xc6, 0x61, 0x86, 0xf0, 0xd7, 0x08, 0xfa, 0x5e, - 0x51, 0xb4, 0x2a, 0xc9, 0xfc, 0x39, 0x6a, 0xd1, 0x6a, 0x1b, 0x5d, 0x7a, 0xe8, 0xae, 0xad, 0xbe, - 0x3c, 0xb5, 0xd3, 0x41, 0x1f, 0x1e, 0x6b, 0x6f, 0xbb, 0x5e, 0xcf, 0xd5, 0xad, 0x05, 0x23, 0xa1, - 0x78, 0x78, 0x2d, 0x18, 0xf1, 0xc7, 0x03, 0x6b, 0xc1, 0x48, 0x20, 0x1e, 0x14, 0xa9, 0xe6, 0xd7, - 0x11, 0xe0, 0xdc, 0xd2, 0xc6, 0x96, 0x62, 0xed, 0x3b, 0x9d, 0xe6, 0x51, 0xd9, 0xfa, 0x1f, 0xfc, - 0xa9, 0xcb, 0xd6, 0x83, 0xf7, 0x2e, 0xa2, 0x73, 0x9c, 0x33, 0x77, 0x5c, 0xa7, 0x44, 0xa9, 0x1f, - 0xf7, 0x09, 0x27, 0xce, 0xe9, 0xfa, 0x55, 0x95, 0x38, 0xe5, 0x99, 0x72, 0x38, 0x71, 0xe3, 0x84, - 0x9a, 0x7e, 0xcf, 0xef, 0xe1, 0x9b, 0xfe, 0x47, 0xe7, 0x9b, 0x3f, 0xa4, 0xbe, 0xf9, 0x14, 0x9c, - 0x80, 0x04, 0x83, 0x4b, 0x6e, 0x29, 0x86, 0x72, 0x40, 0x2c, 0x62, 0x24, 0xf3, 0x0e, 0x27, 0xcd, - 0xdc, 0xa9, 0xa1, 0x5b, 0x41, 0x88, 0x09, 0x27, 0x0d, 0x71, 0x59, 0x1f, 0xbb, 0xe8, 0x63, 0x17, - 0xed, 0xc5, 0x45, 0x53, 0xbf, 0x16, 0x82, 0x29, 0x66, 0x66, 0x2f, 0x57, 0x89, 0x71, 0x58, 0x37, - 0x35, 0xa7, 0x1b, 0x3c, 0x0d, 0x81, 0xab, 0xe4, 0x50, 0x78, 0xc1, 0x48, 0xc3, 0x0b, 0xe8, 0xa7, - 0xa0, 0xe1, 0x4f, 0x22, 0x89, 0xce, 0x7f, 0x56, 0xde, 0xf0, 0x69, 0xdd, 0x1b, 0x98, 0x84, 0x1d, - 0xbc, 0xe1, 0x4e, 0x10, 0x06, 0x20, 0xf0, 0xd3, 0xe4, 0x70, 0xb2, 0x8f, 0x49, 0x0c, 0x1f, 0xf8, - 0x21, 0xc6, 0x20, 0x92, 0x8f, 0x3d, 0xe2, 0xb3, 0xf2, 0x88, 0xbf, 0x41, 0x10, 0xe5, 0x3a, 0xfe, - 0xdf, 0xe5, 0x17, 0x9f, 0x46, 0x61, 0xcc, 0xfb, 0xc2, 0x80, 0xdf, 0x02, 0xa8, 0x28, 0xd6, 0xbe, - 0x7c, 0x40, 0xa1, 0x99, 0x5b, 0x74, 0x7d, 0xfd, 0x6d, 0x3d, 0xf4, 0xc4, 0x69, 0xd5, 0x5f, 0xb1, - 0x87, 0xf1, 0xd7, 0x10, 0xc4, 0xdf, 0xa1, 0xa6, 0x2e, 0x57, 0x6c, 0x53, 0x37, 0x13, 0x21, 0x76, - 0xd1, 0x59, 0xea, 0xc1, 0xa1, 0xda, 0xfa, 0x73, 0x76, 0xb4, 0xf5, 0xb2, 0x93, 0x40, 0xd2, 0xd0, - 0x3b, 0x2e, 0x04, 0x13, 0x5f, 0x87, 0x41, 0x9e, 0x15, 0x8b, 0xa2, 0x43, 0xa2, 0xaf, 0xa7, 0xcb, - 0x96, 0x67, 0x5e, 0xdc, 0x86, 0xf7, 0x40, 0xa1, 0x01, 0x6d, 0xe2, 0x43, 0x88, 0x15, 0xd8, 0x59, - 0xcc, 0x35, 0x4c, 0x8c, 0x44, 0xb8, 0x67, 0xce, 0x2d, 0x87, 0x79, 0x1b, 0xce, 0x83, 0x05, 0x27, - 0xe0, 0xc2, 0xc7, 0x61, 0x56, 0x47, 0x3b, 0x3f, 0x7b, 0x6e, 0xf6, 0xb9, 0xdb, 0x35, 0x74, 0x1c, - 0x26, 0x61, 0x88, 0x5b, 0x77, 0x4e, 0x2f, 0x17, 0x55, 0x9a, 0x98, 0x63, 0x7b, 0xfe, 0x4e, 0x0d, - 0x7d, 0x37, 0x0c, 0xb7, 0x02, 0x00, 0x74, 0x4b, 0x79, 0x28, 0x9a, 0xf9, 0xc3, 0x00, 0x7c, 0x27, - 0x00, 0x27, 0x61, 0xb2, 0x61, 0x21, 0xe9, 0x76, 0xa1, 0xe6, 0x0c, 0x24, 0xbd, 0xa0, 0x3a, 0x44, - 0x9d, 0x69, 0x38, 0xee, 0x85, 0xe1, 0x11, 0x80, 0x9e, 0x85, 0x54, 0x07, 0xda, 0xed, 0x62, 0xd1, - 0x2c, 0x4c, 0x79, 0x61, 0xb5, 0x09, 0x4b, 0xcf, 0xc3, 0xc9, 0x0e, 0x3c, 0x3a, 0x45, 0xa8, 0x36, - 0xeb, 0xf0, 0x08, 0x56, 0x9d, 0xd7, 0xd1, 0x2e, 0x6e, 0xb5, 0x59, 0x47, 0x9b, 0x10, 0xf6, 0xc7, - 0x7e, 0xb1, 0x85, 0x3c, 0x82, 0x7d, 0xcb, 0xdf, 0x69, 0xf7, 0xee, 0xbf, 0x67, 0x9d, 0xf7, 0xa8, - 0x9b, 0x7d, 0xb9, 0xdf, 0x2e, 0x74, 0xa7, 0xf7, 0xce, 0x3a, 0xee, 0x46, 0xaf, 0xf7, 0xd3, 0x22, - 0xe4, 0x60, 0xd8, 0x71, 0x28, 0x8b, 0xb2, 0x46, 0xba, 0x35, 0x7c, 0x75, 0xaa, 0x68, 0xc0, 0x0b, - 0x30, 0x20, 0xee, 0xa0, 0x1c, 0xff, 0x54, 0x53, 0xdc, 0xe9, 0x88, 0xfc, 0x22, 0x0c, 0x70, 0x57, - 0x17, 0xc8, 0xb3, 0xcd, 0xb1, 0xa3, 0x13, 0xb6, 0xc7, 0xcd, 0xe4, 0xb7, 0x11, 0x8c, 0xb0, 0x00, - 0x92, 0xcf, 0xaf, 0x2f, 0x97, 0x95, 0x5d, 0x8d, 0x6c, 0x19, 0x7a, 0xc5, 0xc4, 0x3f, 0x05, 0xfd, - 0x5c, 0x28, 0xcb, 0xd2, 0x9a, 0xee, 0x03, 0x9f, 0xf8, 0x91, 0x14, 0x61, 0x93, 0x79, 0x4b, 0xc3, - 0xcf, 0xc2, 0x98, 0x5a, 0x2a, 0xeb, 0x06, 0x91, 0xeb, 0x45, 0x5b, 0x2e, 0x10, 0xbb, 0xd1, 0x44, - 0xa4, 0x51, 0x3e, 0x2b, 0x89, 0x49, 0x2e, 0x3c, 0x7e, 0xba, 0x5e, 0x81, 0xb8, 0x46, 0x0c, 0x43, - 0x2d, 0x12, 0x56, 0x89, 0x89, 0x48, 0x5c, 0x13, 0x9b, 0x62, 0x50, 0xdc, 0x58, 0xbe, 0x1b, 0x86, - 0x51, 0x26, 0xe3, 0xb2, 0xa6, 0x96, 0xd4, 0x5d, 0x8d, 0xd8, 0x75, 0xbe, 0x6f, 0x22, 0x18, 0x61, - 0xb1, 0x91, 0xb0, 0x07, 0x1d, 0x7a, 0x1f, 0x90, 0xab, 0x86, 0x2a, 0xb2, 0xb1, 0x0b, 0x3d, 0x84, - 0x4f, 0xf7, 0xea, 0xb3, 0x33, 0x47, 0x37, 0x9e, 0x92, 0x48, 0x45, 0x53, 0x0a, 0xa4, 0x98, 0xdc, - 0x3d, 0x4c, 0x0a, 0x26, 0x15, 0x43, 0x7f, 0xf7, 0x90, 0xbf, 0x1d, 0x55, 0x0d, 0xf5, 0xa3, 0x1a, - 0x42, 0x09, 0xb4, 0xe2, 0x93, 0x86, 0xf9, 0xf4, 0x8a, 0x10, 0x61, 0xc7, 0x50, 0xf1, 0x77, 0x10, - 0x3c, 0xd1, 0x2c, 0x99, 0x5d, 0xd9, 0xa7, 0x12, 0x06, 0x1e, 0x56, 0xc2, 0xcc, 0xd1, 0x8d, 0x67, - 0x3a, 0x4b, 0xe8, 0x60, 0x57, 0x97, 0x34, 0xe1, 0x96, 0x54, 0xe2, 0x20, 0x54, 0xe0, 0x9f, 0x47, - 0x30, 0xe0, 0xd2, 0x61, 0xf0, 0xf3, 0xd5, 0x61, 0x74, 0xdf, 0xa1, 0xbd, 0x6f, 0x23, 0x98, 0xf0, - 0xd8, 0x57, 0x99, 0xb9, 0x99, 0xb8, 0x29, 0x7f, 0xee, 0xba, 0x1b, 0x6b, 0xd9, 0x65, 0x16, 0x0a, - 0x70, 0x19, 0x8e, 0x79, 0x2e, 0xad, 0xb7, 0x1a, 0xbe, 0x87, 0x9c, 0x2b, 0x3e, 0x09, 0x73, 0xca, - 0xec, 0x39, 0x92, 0x32, 0xa6, 0xca, 0xb9, 0x01, 0x4f, 0x76, 0x14, 0x58, 0xd4, 0xd4, 0x1f, 0x8a, - 0xef, 0x44, 0x13, 0xdf, 0x86, 0xa1, 0xb0, 0xe2, 0xc2, 0x7c, 0xf6, 0x69, 0xc0, 0x44, 0x38, 0xa3, - 0xbc, 0xa7, 0x1b, 0x32, 0x73, 0x5b, 0x3c, 0x74, 0xab, 0x86, 0x42, 0xa2, 0x8a, 0x18, 0x38, 0x3f, - 0xfb, 0x9c, 0x28, 0x1b, 0xfe, 0x42, 0x04, 0x06, 0x9c, 0xa9, 0x25, 0x0d, 0x2e, 0xac, 0x04, 0xdc, - 0xa6, 0x1c, 0x1e, 0xa1, 0x93, 0xac, 0x10, 0x7e, 0x13, 0xc1, 0x68, 0x53, 0xb1, 0x58, 0xd6, 0x54, - 0xd3, 0x12, 0x75, 0xf0, 0x2f, 0x3e, 0x4c, 0x1d, 0x7c, 0x5d, 0x35, 0xad, 0xec, 0xd4, 0x7d, 0xea, - 0xe0, 0xd8, 0x68, 0x2d, 0xe9, 0x5f, 0x00, 0x9e, 0xbe, 0xc9, 0xbb, 0x87, 0x15, 0xc5, 0x34, 0x85, - 0xa7, 0x78, 0xbe, 0x5d, 0x52, 0xc3, 0x66, 0xb0, 0x59, 0x06, 0x8a, 0xdf, 0xf6, 0x52, 0x9b, 0x30, - 0xe8, 0x85, 0x1e, 0x36, 0xac, 0x29, 0x10, 0xae, 0xf8, 0xa4, 0xb8, 0x4d, 0xf7, 0x92, 0x6e, 0x30, - 0x90, 0x85, 0x4f, 0x83, 0xf7, 0x2e, 0xf6, 0xb1, 0x27, 0xd2, 0x3b, 0x35, 0xf4, 0xcf, 0x41, 0x18, - 0x11, 0x85, 0x93, 0xa8, 0x43, 0xf9, 0xf0, 0xd5, 0xa0, 0xa8, 0xae, 0x27, 0x17, 0x0b, 0xbc, 0x0a, - 0x7b, 0x2f, 0x00, 0x29, 0xec, 0x5a, 0xe0, 0xe4, 0x00, 0x97, 0x3e, 0xc9, 0xe9, 0x06, 0x2d, 0xa3, - 0x4a, 0xe0, 0x25, 0x9c, 0x69, 0x5d, 0x49, 0xda, 0xd3, 0x11, 0xd2, 0xf5, 0x83, 0x64, 0xb2, 0x9f, - 0xf3, 0xca, 0xe7, 0xd7, 0xe1, 0x32, 0x5e, 0xe8, 0x8a, 0x80, 0xc3, 0xb2, 0xbd, 0x09, 0x5d, 0xc1, - 0x2f, 0x75, 0x2d, 0x89, 0xf7, 0x49, 0x35, 0x09, 0xdb, 0xc4, 0x4a, 0xf2, 0xcf, 0xb0, 0x83, 0x2f, - 0xf7, 0x2c, 0x57, 0x17, 0x64, 0x57, 0xf1, 0x73, 0x3d, 0xea, 0xcb, 0x3e, 0x19, 0x27, 0x63, 0x7c, - 0xad, 0xf6, 0x77, 0x78, 0xb9, 0xcb, 0x05, 0xb7, 0x6a, 0xae, 0x2d, 0xc9, 0x55, 0x18, 0xa1, 0xa6, - 0x9d, 0xd4, 0xf7, 0x92, 0x0d, 0x63, 0x37, 0x53, 0x19, 0x6f, 0xef, 0xeb, 0x94, 0x62, 0x64, 0x27, - 0xec, 0x6c, 0x46, 0xe1, 0x06, 0x85, 0x23, 0xb7, 0x6a, 0x28, 0x78, 0xb7, 0x86, 0xec, 0xfa, 0xe3, - 0x4b, 0x30, 0xba, 0xc4, 0xdb, 0x0f, 0xec, 0xd8, 0xd3, 0x5b, 0xc6, 0x91, 0xfa, 0xd5, 0x00, 0x60, - 0x27, 0x05, 0x6e, 0xb9, 0xf8, 0x77, 0x91, 0xa7, 0x73, 0xf9, 0x7b, 0x71, 0x2e, 0x2f, 0xc1, 0xb2, - 0x0b, 0x47, 0x37, 0xe6, 0x9d, 0xc7, 0x45, 0x5d, 0xca, 0xba, 0x3e, 0x93, 0x4a, 0xb9, 0x28, 0x86, - 0x8b, 0xaa, 0x49, 0x03, 0x69, 0xb1, 0x7e, 0x6c, 0xb4, 0x38, 0x26, 0x7e, 0x1e, 0x86, 0x1b, 0x24, - 0x44, 0x27, 0x06, 0x7f, 0xaa, 0x72, 0x2e, 0x78, 0xc5, 0x27, 0x0d, 0xd9, 0x4b, 0x16, 0x62, 0xe1, - 0x05, 0xc0, 0xad, 0xcc, 0xf9, 0x1b, 0x56, 0x13, 0x6a, 0xdc, 0x46, 0xb5, 0x53, 0x29, 0xfc, 0x05, - 0x3b, 0xe3, 0xb2, 0x25, 0xec, 0xd4, 0x29, 0xb2, 0xe2, 0x13, 0x99, 0xd8, 0x92, 0x00, 0xf6, 0xde, - 0xd6, 0x00, 0x8d, 0xf5, 0x22, 0xc8, 0xff, 0x23, 0x82, 0x01, 0x51, 0xd8, 0xb2, 0x1f, 0x61, 0x47, - 0xed, 0xd6, 0x14, 0x27, 0x66, 0x6f, 0xf5, 0x83, 0xd6, 0x7d, 0x96, 0x70, 0xb1, 0x75, 0xef, 0x55, - 0x88, 0x36, 0x5e, 0x16, 0x4d, 0x71, 0x3a, 0x64, 0x7a, 0x3f, 0x1d, 0xda, 0x5c, 0x9a, 0xa1, 0xfe, - 0x1a, 0x6a, 0xa6, 0x7e, 0xe0, 0x48, 0x98, 0x9d, 0xef, 0xdb, 0x9e, 0xbb, 0xea, 0x7f, 0xf0, 0x5d, - 0x0d, 0x3c, 0xe0, 0xae, 0x06, 0x7b, 0xd9, 0xd5, 0x71, 0x88, 0x32, 0xa6, 0x95, 0xc6, 0x9e, 0xfa, - 0x1d, 0x7b, 0xfa, 0xd5, 0x3e, 0x18, 0x59, 0x2c, 0x5e, 0xa3, 0x7a, 0x2a, 0x3a, 0xd7, 0xba, 0x0f, - 0x31, 0xd1, 0x69, 0x63, 0xbf, 0xad, 0xc7, 0x19, 0xd7, 0xe7, 0x7a, 0x79, 0xf6, 0x73, 0x34, 0xdd, - 0x64, 0x29, 0x63, 0xc4, 0x1e, 0xd8, 0x07, 0xf7, 0x9d, 0x6f, 0x82, 0xb8, 0x0c, 0x71, 0x53, 0xb4, - 0x64, 0xd4, 0x79, 0x0d, 0xf7, 0x92, 0xdf, 0x78, 0x34, 0x74, 0x38, 0xb8, 0x0d, 0x99, 0xee, 0x69, - 0x7c, 0x15, 0x86, 0x34, 0xde, 0xbb, 0x50, 0x67, 0x87, 0x7b, 0xb1, 0xd7, 0xd6, 0xc6, 0x07, 0x07, - 0xb7, 0x98, 0xe6, 0x9a, 0xc5, 0xbf, 0x89, 0x9c, 0x36, 0x63, 0xf3, 0x1b, 0x79, 0x90, 0xf4, 0xcd, - 0xc9, 0xf0, 0xb9, 0xf7, 0x6f, 0xa0, 0xa3, 0x1b, 0xff, 0xcf, 0x19, 0xb2, 0xca, 0xe4, 0x7a, 0x72, - 0x4f, 0x25, 0x9a, 0x1d, 0xa5, 0x04, 0x2f, 0x5b, 0x32, 0x1e, 0xac, 0x1a, 0x96, 0x69, 0x0b, 0xa8, - 0xd8, 0x4e, 0x6f, 0xcb, 0x36, 0xca, 0x64, 0xcb, 0xf4, 0x54, 0xe6, 0xe6, 0xed, 0x13, 0x0d, 0x2d, - 0xf0, 0xdc, 0x42, 0x8c, 0xb7, 0xbe, 0x4f, 0xd5, 0xdf, 0xad, 0x62, 0xf1, 0xa1, 0xb5, 0x60, 0x64, - 0x28, 0x1e, 0x4f, 0xfd, 0x0e, 0x62, 0xf9, 0x63, 0x7e, 0x7d, 0x5b, 0x74, 0xbd, 0x9d, 0x87, 0xa8, - 0xa5, 0x99, 0xf2, 0x7c, 0x46, 0xae, 0x68, 0x55, 0x53, 0x44, 0x94, 0x76, 0x26, 0xdf, 0x6f, 0x69, - 0xe6, 0x7c, 0x66, 0x4b, 0xab, 0x9a, 0x75, 0xbc, 0x79, 0x8e, 0xe7, 0xbf, 0x3f, 0xde, 0x3c, 0xc5, - 0xe3, 0x0f, 0x6a, 0xd9, 0x09, 0x08, 0x89, 0xc6, 0xb2, 0x21, 0xb1, 0x98, 0x3e, 0x9a, 0xe7, 0xce, - 0xcf, 0x66, 0xd6, 0x82, 0x91, 0xbe, 0x78, 0x28, 0xf5, 0x17, 0x08, 0x8e, 0xe5, 0x96, 0x36, 0x56, - 0xf2, 0xf9, 0xad, 0xed, 0x7a, 0xcf, 0x20, 0x73, 0x98, 0x47, 0xd9, 0x37, 0xf8, 0xaa, 0x47, 0xdf, - 0x60, 0xf7, 0xa1, 0xae, 0xae, 0xc4, 0x96, 0x5e, 0xc2, 0x85, 0x88, 0x9d, 0x2f, 0xa6, 0xfe, 0x03, - 0xb1, 0x9e, 0x96, 0x25, 0xfd, 0x7a, 0xd9, 0xb4, 0x0c, 0xa2, 0x1c, 0xe4, 0x35, 0x93, 0x55, 0x3c, - 0xf8, 0x6a, 0xdc, 0x12, 0xa0, 0x47, 0x26, 0x01, 0xde, 0x85, 0x38, 0x23, 0x4c, 0x0c, 0x4b, 0xdd, - 0x53, 0x0b, 0x8a, 0x55, 0x8f, 0xe5, 0x4f, 0x35, 0x91, 0xcf, 0x6b, 0x66, 0xae, 0x01, 0xd5, 0x54, - 0xef, 0x8c, 0x37, 0x52, 0x79, 0x69, 0xc8, 0x72, 0x41, 0x9a, 0x0b, 0x4f, 0xdc, 0xae, 0xa1, 0x71, - 0x38, 0x06, 0xb1, 0xfc, 0xfa, 0x76, 0xd2, 0x51, 0xfd, 0xa5, 0xfb, 0x98, 0xfa, 0x7b, 0x04, 0xe3, - 0xf6, 0x0e, 0xe6, 0xaa, 0xa6, 0xa5, 0x1f, 0x7c, 0x36, 0x7b, 0x78, 0x00, 0x31, 0xba, 0x50, 0x47, - 0xbd, 0x9b, 0xef, 0x63, 0xf7, 0x17, 0x9a, 0x36, 0x7b, 0x23, 0xda, 0x94, 0x06, 0x2d, 0x31, 0xc8, - 0x88, 0x3b, 0x76, 0xf6, 0x37, 0xa2, 0x10, 0xbb, 0xac, 0xe9, 0xbb, 0x8a, 0xb6, 0x5d, 0x21, 0x05, - 0xb6, 0xae, 0x9f, 0x85, 0x70, 0x51, 0x3f, 0x60, 0xdd, 0x30, 0x88, 0xf5, 0xd6, 0x11, 0xaa, 0xbe, - 0xfe, 0x9b, 0x28, 0x94, 0x0a, 0x1a, 0xfe, 0x7d, 0x76, 0x1b, 0x82, 0x9b, 0x28, 0x9c, 0x62, 0xb7, - 0x33, 0xbf, 0x73, 0x32, 0xce, 0x26, 0xc7, 0x6f, 0xa2, 0xd1, 0x14, 0x36, 0xe2, 0x99, 0xd8, 0x9b, - 0x5f, 0x4a, 0xbf, 0x75, 0xea, 0x4d, 0xde, 0x83, 0xf7, 0xd6, 0xa9, 0xd6, 0xee, 0x3b, 0xd7, 0xd5, - 0xca, 0xe6, 0x8a, 0xd7, 0x20, 0x48, 0xb5, 0x27, 0x54, 0xf0, 0xac, 0xa7, 0x0a, 0x5a, 0xfa, 0x91, - 0xd3, 0xae, 0x16, 0xdd, 0x15, 0x9f, 0xc4, 0x68, 0x60, 0x02, 0x43, 0xf4, 0xaf, 0x29, 0x2b, 0x55, - 0x4b, 0x67, 0x86, 0x24, 0xe2, 0xf7, 0x0b, 0x5d, 0x6b, 0xb6, 0xd5, 0x7d, 0xe9, 0xb9, 0xb9, 0xef, - 0x6c, 0x04, 0xc6, 0x3b, 0xd0, 0xc7, 0x06, 0x44, 0xb0, 0xfe, 0x42, 0x6f, 0xc4, 0x9b, 0x2c, 0x6b, - 0xc5, 0x27, 0x71, 0x6a, 0xf8, 0x14, 0x0c, 0x50, 0xbb, 0xd1, 0x74, 0xde, 0x64, 0x97, 0x88, 0x32, - 0xdb, 0x61, 0xa1, 0x93, 0xd9, 0x4f, 0x54, 0x29, 0x16, 0xd7, 0xc5, 0x24, 0x2e, 0x42, 0xf4, 0x80, - 0xde, 0x3a, 0x78, 0x6c, 0x4e, 0x0c, 0xf6, 0x72, 0x6c, 0x78, 0x1c, 0xea, 0x9c, 0x0d, 0xf3, 0x48, - 0xa0, 0x74, 0xf9, 0x14, 0xfe, 0x32, 0x44, 0x1d, 0x8d, 0xdd, 0xbd, 0x9d, 0xf3, 0xb9, 0x62, 0x79, - 0x93, 0xe1, 0x6e, 0xe9, 0xe2, 0x9c, 0xe7, 0xd6, 0x09, 0x7a, 0x7d, 0x14, 0x7f, 0x19, 0x06, 0x59, - 0x43, 0xbb, 0x5a, 0xb6, 0x88, 0x51, 0x56, 0xb4, 0xc4, 0x47, 0xbc, 0x7c, 0x91, 0xf2, 0x64, 0xb1, - 0xc9, 0x1a, 0xb5, 0x25, 0xb2, 0xc7, 0x3d, 0xfe, 0xdb, 0x37, 0xdc, 0xc8, 0x1f, 0xb1, 0xf3, 0x85, - 0x0e, 0xad, 0x8a, 0x11, 0x7c, 0x1c, 0xfa, 0xd9, 0x65, 0x88, 0x95, 0x1a, 0x7e, 0xc0, 0x9a, 0xaf, - 0xa4, 0x08, 0x1d, 0x61, 0xf5, 0x85, 0x15, 0x88, 0xd8, 0x4d, 0xe0, 0x89, 0x1f, 0xf2, 0x47, 0x97, - 0xd9, 0x16, 0xc6, 0x1e, 0x1d, 0xe3, 0xe9, 0xa5, 0xb2, 0xb9, 0x5a, 0xde, 0xd3, 0xa5, 0x70, 0x91, - 0x7f, 0xc0, 0x39, 0xe8, 0x33, 0x2d, 0xc5, 0x22, 0x89, 0x7f, 0x09, 0xb3, 0x0e, 0xa8, 0x4e, 0x64, - 0xd2, 0xaf, 0xf0, 0x2f, 0x2b, 0xba, 0x69, 0x6d, 0x53, 0x24, 0x89, 0xe3, 0xe2, 0x37, 0x61, 0xa8, - 0x6e, 0xb7, 0x32, 0x27, 0xf7, 0x31, 0x27, 0x97, 0xee, 0x44, 0xae, 0x11, 0xdf, 0x54, 0xbd, 0xcc, - 0x08, 0x66, 0xd9, 0x53, 0x8f, 0x22, 0xcc, 0x95, 0x0d, 0xe1, 0x6d, 0x88, 0x35, 0x88, 0xb3, 0x15, - 0xdf, 0xe3, 0xaa, 0xee, 0x28, 0xaa, 0x6d, 0xf2, 0x74, 0x91, 0x54, 0xe9, 0xd2, 0x80, 0xe2, 0x18, - 0xc1, 0xdb, 0x30, 0x64, 0xff, 0xee, 0xc1, 0x0e, 0x22, 0xff, 0xce, 0xf5, 0xf8, 0x4c, 0x27, 0xaa, - 0xdb, 0x1c, 0x67, 0x89, 0xa1, 0x48, 0x31, 0xd3, 0xf9, 0xd5, 0xc4, 0x1b, 0x00, 0x0e, 0x0d, 0x7c, - 0xfa, 0x40, 0x1a, 0x90, 0xfa, 0x0b, 0xf6, 0xca, 0x17, 0xde, 0xb8, 0x5d, 0x43, 0xaf, 0xc0, 0x24, - 0x8c, 0x64, 0x15, 0x53, 0x2d, 0xd4, 0x2f, 0xab, 0xdc, 0x8d, 0x68, 0xdc, 0x87, 0x71, 0x18, 0xca, - 0x2d, 0x6d, 0x24, 0xb9, 0xb5, 0x26, 0x99, 0x61, 0xfa, 0xe7, 0xcf, 0x4f, 0x23, 0x38, 0x01, 0x63, - 0xb6, 0xaf, 0x34, 0xe1, 0xf5, 0xcd, 0xcf, 0xcf, 0xce, 0x9f, 0xcd, 0x3e, 0x09, 0xc3, 0x4e, 0x9b, - 0x97, 0x2d, 0x1a, 0x52, 0xa9, 0x2b, 0xe1, 0xbb, 0x35, 0xd4, 0x48, 0x6c, 0x78, 0x4a, 0xd3, 0x17, - 0x0f, 0xd5, 0x5b, 0x84, 0xc2, 0xf1, 0xc8, 0x5a, 0x30, 0x32, 0x10, 0x1f, 0x74, 0xa5, 0x3a, 0xff, - 0x86, 0x00, 0xb7, 0xb6, 0x0c, 0xe3, 0x4b, 0x00, 0x8a, 0xa6, 0xe9, 0xd7, 0xed, 0xe2, 0x17, 0xdd, - 0xb6, 0xa7, 0x9b, 0x14, 0xc2, 0x7f, 0x45, 0x91, 0xde, 0x32, 0xc8, 0x9e, 0xfa, 0x2e, 0x7b, 0x1c, - 0xa0, 0x57, 0x7a, 0x9a, 0xc8, 0x30, 0x54, 0x56, 0xba, 0xba, 0x04, 0xb0, 0xab, 0xe9, 0x85, 0xab, - 0x9c, 0x4e, 0xa0, 0x47, 0x3a, 0x0c, 0x95, 0x7e, 0x59, 0x38, 0x71, 0xbb, 0x86, 0x9e, 0x80, 0x09, - 0x18, 0x5d, 0xdd, 0x4a, 0xd6, 0x85, 0x4d, 0xda, 0xd2, 0xa2, 0xf9, 0xec, 0x49, 0x18, 0x76, 0xf6, - 0x4c, 0x73, 0xb5, 0x0c, 0x39, 0x9a, 0x0c, 0x03, 0x99, 0xd9, 0xb3, 0xe2, 0x96, 0xf1, 0x29, 0x82, - 0x11, 0x8f, 0x16, 0xe6, 0x5e, 0x16, 0x9d, 0xd3, 0xab, 0x65, 0xcb, 0x38, 0xcc, 0xe9, 0x45, 0xf2, - 0x50, 0x8b, 0xf6, 0xa0, 0xd3, 0x58, 0x74, 0x52, 0x3c, 0x90, 0x1e, 0xbb, 0x4c, 0x74, 0xef, 0x55, - 0x3f, 0x0d, 0xd8, 0xd5, 0xc6, 0xdd, 0x71, 0xd9, 0xab, 0x10, 0x6f, 0x6e, 0x32, 0xc6, 0xe7, 0x20, - 0x2a, 0x2e, 0x56, 0x4c, 0x56, 0x7e, 0x1e, 0x37, 0x12, 0x9b, 0x2f, 0x3a, 0xef, 0xa4, 0x1c, 0x90, - 0x4a, 0x96, 0x7a, 0x95, 0x65, 0x2d, 0xfc, 0x58, 0x71, 0xf7, 0x69, 0xe3, 0x17, 0x01, 0x17, 0xd8, - 0xb8, 0xcc, 0x5a, 0xbf, 0x1d, 0x39, 0x5b, 0x7f, 0x36, 0xf6, 0xa3, 0x1a, 0x0a, 0xd4, 0xeb, 0xae, - 0x49, 0x29, 0x5e, 0xa8, 0x53, 0xe0, 0xb6, 0x9e, 0xfa, 0x15, 0x3f, 0x1c, 0xf3, 0x6c, 0xfc, 0xc6, - 0x17, 0x60, 0x40, 0x5c, 0x39, 0x19, 0xe1, 0xfb, 0xe4, 0xd2, 0x51, 0x01, 0x4b, 0x69, 0xe1, 0x2f, - 0x40, 0xe0, 0xed, 0xeb, 0xf6, 0x46, 0x3c, 0xe3, 0xbd, 0x11, 0x6b, 0xd7, 0xad, 0xbc, 0x7e, 0x95, - 0x94, 0x17, 0x1b, 0x8d, 0xe5, 0x2b, 0x3e, 0x89, 0xe2, 0xe1, 0x57, 0x21, 0xc4, 0xe5, 0x14, 0x57, - 0xdd, 0xee, 0x0f, 0x5f, 0x2f, 0x05, 0xad, 0xf8, 0x24, 0x41, 0x2e, 0x7b, 0xc2, 0xdd, 0x1e, 0xdf, - 0x6e, 0xdf, 0x7e, 0x2f, 0x00, 0x23, 0xb9, 0xa5, 0x0d, 0x1e, 0x2b, 0xf8, 0x4f, 0x5a, 0x58, 0x1e, - 0x95, 0x87, 0xfe, 0x4a, 0x75, 0x57, 0x53, 0x0b, 0xb2, 0x5a, 0x11, 0xea, 0x38, 0xe7, 0x29, 0x9a, - 0xe3, 0x3c, 0x4d, 0x3b, 0xa9, 0x6c, 0x31, 0xec, 0xd5, 0xad, 0x15, 0x9f, 0x14, 0xe1, 0x94, 0x56, - 0x2b, 0xf8, 0x0d, 0x88, 0x0a, 0xaa, 0xec, 0x04, 0x0b, 0x74, 0x38, 0x7f, 0x3b, 0xd3, 0xa5, 0xe7, - 0xdd, 0x8a, 0x4f, 0x82, 0x4a, 0xfd, 0x1b, 0x9e, 0x86, 0x60, 0x45, 0x37, 0x2c, 0xa6, 0xc7, 0x41, - 0x6e, 0x66, 0xc1, 0x19, 0xff, 0xb4, 0x8f, 0x7e, 0x08, 0xcd, 0x04, 0x13, 0x3f, 0xf9, 0x49, 0x40, - 0x62, 0x10, 0x0b, 0xbf, 0x84, 0xee, 0xd4, 0xd0, 0xd7, 0x11, 0x5c, 0x82, 0x20, 0x5d, 0xeb, 0xcc, - 0x45, 0x38, 0x0b, 0x63, 0x8e, 0xf5, 0x66, 0xfa, 0x39, 0x93, 0xe4, 0xea, 0x16, 0x4c, 0xb8, 0x24, - 0xce, 0x80, 0x98, 0x59, 0xda, 0xd8, 0xc6, 0xe1, 0x9d, 0xf2, 0xd5, 0xb2, 0x7e, 0xbd, 0x0c, 0x73, - 0x10, 0xa6, 0x12, 0xcc, 0xad, 0x6e, 0x65, 0x4e, 0xc2, 0x40, 0x9d, 0x4c, 0x5a, 0xad, 0xc0, 0xa8, - 0x03, 0x39, 0x4d, 0xcf, 0x5b, 0x56, 0xa7, 0x8e, 0x41, 0x70, 0x4b, 0x37, 0xac, 0x4c, 0x88, 0x8b, - 0x9c, 0x7d, 0xb2, 0x7e, 0x17, 0x1b, 0xb1, 0xeb, 0x50, 0x62, 0x97, 0x7e, 0xd4, 0x28, 0x5f, 0xfc, - 0x7e, 0x1f, 0x0c, 0xb7, 0xe4, 0x20, 0xf8, 0x35, 0xb7, 0x46, 0xd1, 0x43, 0x69, 0xd4, 0xa5, 0xcf, - 0xd3, 0x10, 0x2a, 0xeb, 0xb2, 0xa5, 0xd9, 0xd9, 0x7c, 0x3b, 0x6f, 0xe8, 0x2b, 0xeb, 0x79, 0xcd, - 0xc4, 0x2f, 0x43, 0xb8, 0x6a, 0x12, 0x06, 0x1f, 0xec, 0xf0, 0xd3, 0x04, 0xa7, 0x10, 0x3b, 0x15, - 0x77, 0xce, 0xcf, 0xd2, 0x7b, 0x6a, 0xc2, 0x55, 0x93, 0x50, 0x92, 0xef, 0x21, 0x88, 0x09, 0x78, - 0xfe, 0x8b, 0x28, 0xbb, 0x89, 0xe5, 0x42, 0xd7, 0x4e, 0xd2, 0x6c, 0xd7, 0x8e, 0x27, 0x12, 0xef, - 0x3c, 0x7e, 0x50, 0x77, 0x60, 0x98, 0x78, 0x01, 0xc6, 0xf6, 0x74, 0x16, 0xb6, 0x85, 0x20, 0xf5, - 0xfb, 0x52, 0x88, 0xdf, 0x84, 0x58, 0x92, 0x36, 0xca, 0x61, 0x38, 0xb3, 0xfa, 0xbd, 0x49, 0x81, - 0xb1, 0x3a, 0x12, 0xaf, 0x5d, 0x5b, 0xea, 0x01, 0xd1, 0xab, 0x96, 0xf8, 0x65, 0xd9, 0xa9, 0xef, - 0xd7, 0x50, 0xe0, 0xfc, 0x19, 0x93, 0x72, 0x8f, 0x18, 0xa1, 0x1f, 0x06, 0x02, 0xf3, 0x67, 0x0e, - 0xc4, 0x97, 0x23, 0xfa, 0xc5, 0x74, 0x14, 0x8c, 0x47, 0x75, 0x41, 0x9c, 0x51, 0xca, 0x73, 0x42, - 0xf8, 0x1d, 0x18, 0xe1, 0x59, 0x33, 0xe7, 0xe3, 0xfe, 0x6d, 0xc8, 0x62, 0x77, 0x5a, 0xe2, 0x52, - 0xdb, 0x79, 0x81, 0x2b, 0x2d, 0x90, 0x86, 0x59, 0xee, 0xcc, 0x00, 0xec, 0xd2, 0xc7, 0x93, 0xe2, - 0xba, 0xdc, 0xa8, 0x1d, 0xd0, 0x34, 0xd8, 0x4f, 0xed, 0xf5, 0xec, 0xec, 0xb3, 0x3c, 0x45, 0x48, - 0x7d, 0x13, 0xc1, 0x13, 0x1d, 0xe8, 0xe2, 0x45, 0x98, 0xb4, 0xe3, 0xed, 0xee, 0xa1, 0x45, 0x64, - 0x43, 0x29, 0x97, 0xea, 0x4f, 0xca, 0xf6, 0x55, 0x94, 0x66, 0xf0, 0xd2, 0xb8, 0x80, 0xcb, 0x1e, - 0x5a, 0x44, 0xa2, 0x50, 0x42, 0x03, 0xf8, 0x34, 0x0c, 0x5d, 0x27, 0xbb, 0xa6, 0x5e, 0xb8, 0x4a, - 0x2c, 0xfe, 0x4e, 0x60, 0x5f, 0x4e, 0x19, 0x5e, 0xac, 0x3e, 0xc9, 0xae, 0x56, 0x0b, 0xa1, 0x7b, - 0x17, 0xd9, 0x9d, 0xf8, 0xc7, 0x41, 0x88, 0xe5, 0x0c, 0xa2, 0x58, 0xa4, 0x7e, 0x65, 0x4c, 0x34, - 0x5d, 0x19, 0x1f, 0xdf, 0xe5, 0x5a, 0xef, 0x72, 0x4f, 0x79, 0xdd, 0xe5, 0xdc, 0x37, 0xb8, 0x37, - 0x1e, 0xed, 0x0d, 0xce, 0x75, 0x6f, 0x7b, 0xed, 0x51, 0xde, 0xdb, 0x9c, 0x37, 0xb6, 0x85, 0xe1, - 0x3b, 0x17, 0x9b, 0x4a, 0x08, 0xd9, 0x19, 0xaf, 0x24, 0xf8, 0xd8, 0xcf, 0xfd, 0x27, 0x6a, 0x1d, - 0xee, 0x39, 0x23, 0xfe, 0xaf, 0x20, 0x0c, 0x89, 0x52, 0xe6, 0x63, 0xfb, 0x7b, 0x6c, 0x7f, 0x9f, - 0xbb, 0xfd, 0x7d, 0x2b, 0x02, 0xd1, 0xcb, 0xc4, 0x7a, 0x6c, 0x7b, 0x8f, 0x6d, 0xef, 0x7f, 0x58, - 0x35, 0xe9, 0xff, 0x6e, 0xc1, 0xe7, 0xf3, 0x0d, 0x11, 0x6b, 0xa1, 0xc8, 0xc7, 0xe1, 0xf8, 0xbf, - 0x86, 0x53, 0x47, 0x08, 0x8e, 0xad, 0xab, 0x9a, 0x52, 0xc8, 0x2d, 0x6d, 0x5c, 0x21, 0x96, 0xa1, - 0x16, 0x4c, 0x5e, 0x26, 0xc0, 0x6b, 0x10, 0xb0, 0x94, 0x92, 0xf8, 0x71, 0x64, 0xb7, 0x4f, 0x89, - 0x6e, 0x4a, 0x79, 0xa5, 0x24, 0x51, 0x22, 0x78, 0x0c, 0x42, 0xd7, 0x14, 0xad, 0x2a, 0x9e, 0x46, - 0xfa, 0x25, 0xf1, 0x0d, 0xbf, 0xe5, 0xf8, 0x39, 0x4a, 0x80, 0x31, 0x5a, 0x7c, 0x20, 0x46, 0xf6, - 0x4f, 0x47, 0xd8, 0xe6, 0x37, 0x7e, 0x96, 0x12, 0xba, 0x53, 0x43, 0xfe, 0x38, 0x4a, 0x7d, 0x15, - 0xc1, 0x54, 0x13, 0x86, 0xdd, 0xdb, 0x79, 0xd9, 0xd0, 0xab, 0x95, 0xec, 0x21, 0x5e, 0x77, 0xfd, - 0x16, 0xf4, 0xc1, 0x97, 0xcb, 0x7f, 0x74, 0x36, 0x0a, 0x7d, 0x6c, 0x85, 0xfc, 0x31, 0x5d, 0xe2, - 0x5f, 0x52, 0x12, 0x1c, 0x6f, 0x23, 0x05, 0x6b, 0x6a, 0xa6, 0x9e, 0x5a, 0xff, 0x0f, 0x33, 0xbc, - 0xdc, 0x21, 0x35, 0x06, 0xda, 0xd0, 0xfc, 0x3e, 0x82, 0x27, 0xdb, 0x10, 0xdd, 0x26, 0x86, 0x4a, - 0x4c, 0x2c, 0x43, 0xa4, 0x44, 0x17, 0x29, 0xef, 0x1e, 0x8a, 0x7f, 0x07, 0xb1, 0xf4, 0x40, 0xab, - 0x6b, 0xd2, 0x98, 0x14, 0x2e, 0x09, 0xd5, 0xbd, 0xd6, 0x10, 0x8c, 0x52, 0xcf, 0x3e, 0x14, 0x75, - 0xa6, 0x09, 0x7b, 0x71, 0xbf, 0xe5, 0x87, 0x27, 0xda, 0xc0, 0x2d, 0x29, 0x96, 0x82, 0x5f, 0x81, - 0x20, 0x35, 0x7e, 0xb1, 0x69, 0x0f, 0xc6, 0xf8, 0x92, 0x4a, 0xb4, 0xe2, 0x36, 0xd1, 0x48, 0xc1, - 0xd2, 0x0d, 0x89, 0xd1, 0xa3, 0xc6, 0x50, 0x2d, 0xab, 0xbc, 0x7e, 0xf7, 0x80, 0xc6, 0xb0, 0x53, - 0x56, 0x2d, 0x89, 0x51, 0xc1, 0x6f, 0x42, 0xc8, 0x64, 0x5b, 0x21, 0xfe, 0x11, 0x45, 0xee, 0xa1, - 0x14, 0xc4, 0x77, 0x55, 0x12, 0x24, 0x67, 0x56, 0x60, 0xd0, 0x5d, 0x8e, 0x8b, 0x01, 0x34, 0xfa, - 0xa9, 0xe2, 0x3e, 0x1c, 0x85, 0xb0, 0x41, 0xf6, 0x88, 0x41, 0x8c, 0x38, 0xc2, 0x00, 0x21, 0xde, - 0x73, 0x15, 0xf7, 0x53, 0xc0, 0xaa, 0x49, 0x0c, 0x59, 0x29, 0x91, 0xb2, 0x15, 0x0f, 0xcc, 0x7c, - 0x1f, 0xb5, 0x98, 0xa7, 0x4b, 0x37, 0xf8, 0x18, 0x0c, 0x4b, 0xcb, 0x2f, 0xef, 0x2c, 0x6f, 0xe7, - 0xe5, 0xfc, 0x66, 0x7e, 0x71, 0x5d, 0xde, 0xde, 0xb9, 0x12, 0xf7, 0xe1, 0x31, 0xc0, 0xf6, 0xf0, - 0xa5, 0xc5, 0xd5, 0xf5, 0xe5, 0x25, 0x36, 0x8e, 0xf0, 0x08, 0x0c, 0xd9, 0xe3, 0xf3, 0xaf, 0xbd, - 0xc6, 0x06, 0xfd, 0xce, 0xc1, 0x8c, 0x18, 0x0c, 0x38, 0x07, 0xcf, 0x8a, 0xc1, 0xa0, 0x73, 0xf0, - 0x59, 0x31, 0xd8, 0xe7, 0x1c, 0x3c, 0x27, 0x06, 0x43, 0x38, 0x0e, 0x03, 0x4b, 0x8b, 0xf9, 0x45, - 0x79, 0x73, 0x27, 0xcf, 0x46, 0xc2, 0x74, 0x64, 0x7d, 0x31, 0xbf, 0xbc, 0x91, 0x7b, 0x5d, 0xbe, - 0xb2, 0xbc, 0xb8, 0x11, 0x8f, 0xcc, 0x7c, 0x03, 0x01, 0x6e, 0xf5, 0x56, 0x3c, 0xc1, 0x1e, 0xbf, - 0xe5, 0xa5, 0xd5, 0xed, 0xbc, 0xb4, 0x9a, 0xdd, 0xc9, 0xaf, 0x6e, 0x6e, 0xc8, 0x1b, 0x8b, 0x57, - 0x96, 0xe3, 0x3e, 0x8c, 0x21, 0x96, 0x5b, 0xcc, 0xad, 0x2c, 0xcb, 0x2b, 0xab, 0x79, 0x39, 0xff, - 0xfa, 0xd6, 0xb2, 0x7b, 0x49, 0xb9, 0xcd, 0x9d, 0x8d, 0xbc, 0xf4, 0x7a, 0xdc, 0x4f, 0x99, 0xd1, - 0xcc, 0x42, 0x7e, 0x65, 0x59, 0xda, 0x5e, 0xdd, 0xdc, 0x88, 0x07, 0xf0, 0x10, 0x44, 0xf3, 0xeb, - 0xdb, 0xf5, 0x81, 0x20, 0x55, 0xf5, 0xd6, 0xe6, 0x96, 0x2c, 0x2d, 0x5f, 0xa6, 0xdf, 0xfb, 0x70, - 0x18, 0x02, 0x5b, 0x9b, 0x5b, 0xf1, 0xd0, 0xcc, 0x95, 0x16, 0xfb, 0x76, 0x46, 0x32, 0x3c, 0x0a, - 0xf1, 0xcd, 0xad, 0x65, 0x69, 0x31, 0xbf, 0x29, 0x31, 0x11, 0xe4, 0xd5, 0x8d, 0xb8, 0x0f, 0x27, - 0x60, 0xd4, 0x3d, 0xba, 0xb1, 0x99, 0xa7, 0x33, 0x68, 0xe6, 0xc5, 0xe6, 0x45, 0x52, 0x2b, 0xc4, - 0xfd, 0xd0, 0xc7, 0xa4, 0x8d, 0xfb, 0xe8, 0xc7, 0xec, 0xeb, 0xf9, 0xe5, 0xed, 0x38, 0xa2, 0x62, - 0x5f, 0x59, 0x5d, 0x5f, 0x5f, 0xdd, 0x5e, 0xce, 0x6d, 0x6e, 0x2c, 0x6d, 0xc7, 0xfd, 0xd9, 0x5f, - 0x47, 0x77, 0x3f, 0x98, 0xf2, 0xbd, 0xff, 0xc1, 0x94, 0xef, 0x93, 0x0f, 0xa6, 0xd0, 0x7b, 0x47, - 0x53, 0xe8, 0x5b, 0x47, 0x53, 0xe8, 0x7b, 0x47, 0x53, 0xe8, 0xee, 0xd1, 0x14, 0x7a, 0xff, 0x68, - 0x0a, 0xfd, 0xc3, 0xd1, 0x14, 0xfa, 0xe8, 0x68, 0xca, 0xf7, 0xc9, 0xd1, 0x14, 0xfa, 0xe5, 0x0f, - 0xa7, 0x7c, 0xb7, 0x3e, 0x9c, 0x42, 0x77, 0x3f, 0x9c, 0xf2, 0xbd, 0xff, 0xe1, 0x94, 0xef, 0x8d, - 0x37, 0x4a, 0x7a, 0xe5, 0x6a, 0x29, 0x7d, 0x4d, 0xa7, 0xa7, 0x87, 0xa1, 0xa4, 0xab, 0xe6, 0x1c, - 0xfb, 0xb0, 0xa7, 0x1b, 0x07, 0xa7, 0x2b, 0x86, 0x7e, 0x4d, 0x2d, 0x12, 0xe3, 0xb4, 0x3d, 0x3d, - 0x57, 0xd9, 0x2d, 0xe9, 0x73, 0xe4, 0x5d, 0xcb, 0xfe, 0x4f, 0x54, 0x9d, 0xfe, 0x0d, 0xd4, 0x6e, - 0x88, 0xfd, 0x9b, 0xa3, 0xb3, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x94, 0x52, 0x24, 0x3b, 0x19, - 0x4c, 0x00, 0x00, +func (m *GetSpecType) GetHttpsAutoCert() *CDNHTTPSAutoCertsType { + if x, ok := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert + } + return nil } -func (x HeaderOptions) String() string { - s, ok := HeaderOptions_name[int32(x)] - if ok { - return s +func (m *GetSpecType) GetHttps() *CDNHTTPSCustomCertsType { + if x, ok := m.GetLoadbalancerType().(*GetSpecType_Https); ok { + return x.Https } - return strconv.Itoa(int(x)) + return nil } -func (x LilacCDNMetricsFieldSelector) String() string { - s, ok := LilacCDNMetricsFieldSelector_name[int32(x)] - if ok { - return s + +func (m *GetSpecType) GetAddLocation() bool { + if m != nil { + return m.AddLocation } - return strconv.Itoa(int(x)) + return false } -func (x LilacCDNMetricsTag) String() string { - s, ok := LilacCDNMetricsTag_name[int32(x)] - if ok { - return s + +func (m *GetSpecType) GetMoreOption() *AdvancedOptionsType { + if m != nil { + return m.MoreOption } - return strconv.Itoa(int(x)) + return nil } -func (x LilacCDNMetricsOperatorType) String() string { - s, ok := LilacCDNMetricsOperatorType_name[int32(x)] - if ok { - return s + +func (m *GetSpecType) GetOriginPool() *CdnOriginPoolType { + if m != nil { + return m.OriginPool } - return strconv.Itoa(int(x)) + return nil } -func (x LilacCDNMetricUnit) String() string { - s, ok := LilacCDNMetricUnit_name[int32(x)] - if ok { - return s + +func (m *GetSpecType) GetHostName() string { + if m != nil { + return m.HostName } - return strconv.Itoa(int(x)) + return "" } -func (this *ProxyTypeHttpsAutoCerts) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ProxyTypeHttpsAutoCerts) - if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.HttpRedirect != that1.HttpRedirect { - return false - } - if this.AddHsts != that1.AddHsts { - return false - } - if !this.TlsConfig.Equal(that1.TlsConfig) { - return false - } - if that1.ServerHeaderChoice == nil { - if this.ServerHeaderChoice != nil { - return false - } - } else if this.ServerHeaderChoice == nil { - return false - } else if !this.ServerHeaderChoice.Equal(that1.ServerHeaderChoice) { - return false +func (m *GetSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { + if m != nil { + return m.DnsInfo } - return true + return nil } -func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) Equal(that interface{}) bool { - if that == nil { - return this == nil + +func (m *GetSpecType) GetState() virtual_host.VirtualHostState { + if m != nil { + return m.State } + return virtual_host.VIRTUAL_HOST_READY +} - that1, ok := that.(*ProxyTypeHttpsAutoCerts_DefaultHeader) - if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_DefaultHeader) - if ok { - that1 = &that2 - } else { - return false - } +func (m *GetSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { + if m != nil { + return m.AutoCertInfo } - if that1 == nil { - return this == nil - } else if this == nil { - return false + return nil +} + +func (m *GetSpecType) GetServiceDomains() []*virtual_host.ServiceDomain { + if m != nil { + return m.ServiceDomains } - if !this.DefaultHeader.Equal(that1.DefaultHeader) { - return false + return nil +} + +func (m *GetSpecType) GetCertState() virtual_host.CertificationState { + if m != nil { + return m.CertState } - return true + return virtual_host.AutoCertDisabled } -func (this *ProxyTypeHttpsAutoCerts_ServerName) Equal(that interface{}) bool { - if that == nil { - return this == nil + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*GetSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*GetSpecType_Http)(nil), + (*GetSpecType_HttpsAutoCert)(nil), + (*GetSpecType_Https)(nil), } +} - that1, ok := that.(*ProxyTypeHttpsAutoCerts_ServerName) - if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_ServerName) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.ServerName != that1.ServerName { - return false - } - return true +// Metrics Filter options +// +// x-displayName: "Metrics Filter" +// CDN Metrics filter options +type LilacCDNMetricsFilter struct { + // Metrics Filter Tag options + // + // x-displayName: "Filter Tags" + // x-required + // Tags on which CDN metrics can be filtered by + Tag LilacCDNMetricsTag `protobuf:"varint,1,opt,name=tag,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag" json:"tag,omitempty"` + // Filter values + // + // x-displayName: "Filter values" + // x-example: "[IN, US]" + // x-required + // Filter values + Values []string `protobuf:"bytes,2,rep,name=values,proto3" json:"values,omitempty"` + // Metrics Operator Types + // + // x-displayName: "Metrics Operator Types" + // x-required + // Operators possible in filtering + Operator LilacCDNMetricsOperatorType `protobuf:"varint,3,opt,name=operator,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsOperatorType" json:"operator,omitempty"` } -func (this *ProxyTypeHttpsAutoCerts_AppendServerName) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_AppendServerName) - if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_AppendServerName) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.AppendServerName != that1.AppendServerName { - return false - } - return true +func (m *LilacCDNMetricsFilter) Reset() { *m = LilacCDNMetricsFilter{} } +func (*LilacCDNMetricsFilter) ProtoMessage() {} +func (*LilacCDNMetricsFilter) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{38} } -func (this *ProxyTypeHttpsAutoCerts_PassThrough) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *LilacCDNMetricsFilter) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LilacCDNMetricsFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil +} +func (m *LilacCDNMetricsFilter) XXX_Merge(src proto.Message) { + xxx_messageInfo_LilacCDNMetricsFilter.Merge(m, src) +} +func (m *LilacCDNMetricsFilter) XXX_Size() int { + return m.Size() +} +func (m *LilacCDNMetricsFilter) XXX_DiscardUnknown() { + xxx_messageInfo_LilacCDNMetricsFilter.DiscardUnknown(m) +} - that1, ok := that.(*ProxyTypeHttpsAutoCerts_PassThrough) - if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_PassThrough) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.PassThrough.Equal(that1.PassThrough) { - return false +var xxx_messageInfo_LilacCDNMetricsFilter proto.InternalMessageInfo + +func (m *LilacCDNMetricsFilter) GetTag() LilacCDNMetricsTag { + if m != nil { + return m.Tag } - return true + return CDN_DISTRIBUTION_NAME } -func (this *HeaderControlType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*HeaderControlType) - if !ok { - that2, ok := that.(HeaderControlType) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.RequestHeadersToAdd) != len(that1.RequestHeadersToAdd) { - return false - } - for i := range this.RequestHeadersToAdd { - if !this.RequestHeadersToAdd[i].Equal(that1.RequestHeadersToAdd[i]) { - return false - } - } - if len(this.RequestHeadersToRemove) != len(that1.RequestHeadersToRemove) { - return false - } - for i := range this.RequestHeadersToRemove { - if this.RequestHeadersToRemove[i] != that1.RequestHeadersToRemove[i] { - return false - } - } - if len(this.ResponseHeadersToAdd) != len(that1.ResponseHeadersToAdd) { - return false - } - for i := range this.ResponseHeadersToAdd { - if !this.ResponseHeadersToAdd[i].Equal(that1.ResponseHeadersToAdd[i]) { - return false - } - } - if len(this.ResponseHeadersToRemove) != len(that1.ResponseHeadersToRemove) { - return false - } - for i := range this.ResponseHeadersToRemove { - if this.ResponseHeadersToRemove[i] != that1.ResponseHeadersToRemove[i] { - return false - } +func (m *LilacCDNMetricsFilter) GetValues() []string { + if m != nil { + return m.Values } - return true + return nil } -func (this *SecurityOptionsType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*SecurityOptionsType) - if !ok { - that2, ok := that.(SecurityOptionsType) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.IpFiltering.Equal(that1.IpFiltering) { - return false - } - if !this.GeoFiltering.Equal(that1.GeoFiltering) { - return false +func (m *LilacCDNMetricsFilter) GetOperator() LilacCDNMetricsOperatorType { + if m != nil { + return m.Operator } - if !this.AuthOptions.Equal(that1.AuthOptions) { - return false + return OPERATOR_TYPE_IN +} + +// Metrics group by options +// +// x-displayName: "Metrics Group By" +// CDN Metrics group by options +type LilacCDNMetricsResponseGroupBy struct { + // Metric Group-By Tags + // + // x-displayName: "Group By Tags" + // Tag on which CDN metric was requested to be grouped in request + Name LilacCDNMetricsTag `protobuf:"varint,1,opt,name=name,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag" json:"name,omitempty"` + // Group-By tag Value + // + // x-displayName: "Group By Tag Value" + // Group-By tag Value + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` +} + +func (m *LilacCDNMetricsResponseGroupBy) Reset() { *m = LilacCDNMetricsResponseGroupBy{} } +func (*LilacCDNMetricsResponseGroupBy) ProtoMessage() {} +func (*LilacCDNMetricsResponseGroupBy) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{39} +} +func (m *LilacCDNMetricsResponseGroupBy) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LilacCDNMetricsResponseGroupBy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return true + return b[:n], nil } -func (this *LoggingOptionsType) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *LilacCDNMetricsResponseGroupBy) XXX_Merge(src proto.Message) { + xxx_messageInfo_LilacCDNMetricsResponseGroupBy.Merge(m, src) +} +func (m *LilacCDNMetricsResponseGroupBy) XXX_Size() int { + return m.Size() +} +func (m *LilacCDNMetricsResponseGroupBy) XXX_DiscardUnknown() { + xxx_messageInfo_LilacCDNMetricsResponseGroupBy.DiscardUnknown(m) +} + +var xxx_messageInfo_LilacCDNMetricsResponseGroupBy proto.InternalMessageInfo + +func (m *LilacCDNMetricsResponseGroupBy) GetName() LilacCDNMetricsTag { + if m != nil { + return m.Name } + return CDN_DISTRIBUTION_NAME +} - that1, ok := that.(*LoggingOptionsType) - if !ok { - that2, ok := that.(LoggingOptionsType) - if ok { - that1 = &that2 - } else { - return false - } +func (m *LilacCDNMetricsResponseGroupBy) GetValue() string { + if m != nil { + return m.Value } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ClientLogOptions.Equal(that1.ClientLogOptions) { - return false - } - if !this.OriginLogOptions.Equal(that1.OriginLogOptions) { - return false - } - return true + return "" } -func (this *CDNCacheRuleExpressionList) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CDNCacheRuleExpressionList) - if !ok { - that2, ok := that.(CDNCacheRuleExpressionList) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.ExpressionName != that1.ExpressionName { - return false - } - if len(this.CacheRuleExpression) != len(that1.CacheRuleExpression) { - return false - } - for i := range this.CacheRuleExpression { - if !this.CacheRuleExpression[i].Equal(that1.CacheRuleExpression[i]) { - return false - } - } - return true +// Metrics Response Value +// +// x-displayName: "Metrics Response Value" +// CDN Metrics response value +type LilacCDNMetricsResponseValue struct { + // Metric Timestamp + // + // x-displayName: "Metric Timestamp" + // Metric Timestamp in unix_timestamp + Timestamp string `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + // Metric Value + // + // x-displayName: "Metric Value" + // Metric Value + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` } -func (this *CacheOperator) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CacheOperator) - if !ok { - that2, ok := that.(CacheOperator) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if that1.CacheOperator == nil { - if this.CacheOperator != nil { - return false - } - } else if this.CacheOperator == nil { - return false - } else if !this.CacheOperator.Equal(that1.CacheOperator) { - return false - } - return true +func (m *LilacCDNMetricsResponseValue) Reset() { *m = LilacCDNMetricsResponseValue{} } +func (*LilacCDNMetricsResponseValue) ProtoMessage() {} +func (*LilacCDNMetricsResponseValue) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{40} } -func (this *CacheOperator_Equals) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *LilacCDNMetricsResponseValue) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LilacCDNMetricsResponseValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } + return b[:n], nil +} +func (m *LilacCDNMetricsResponseValue) XXX_Merge(src proto.Message) { + xxx_messageInfo_LilacCDNMetricsResponseValue.Merge(m, src) +} +func (m *LilacCDNMetricsResponseValue) XXX_Size() int { + return m.Size() +} +func (m *LilacCDNMetricsResponseValue) XXX_DiscardUnknown() { + xxx_messageInfo_LilacCDNMetricsResponseValue.DiscardUnknown(m) +} - that1, ok := that.(*CacheOperator_Equals) - if !ok { - that2, ok := that.(CacheOperator_Equals) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Equals != that1.Equals { - return false +var xxx_messageInfo_LilacCDNMetricsResponseValue proto.InternalMessageInfo + +func (m *LilacCDNMetricsResponseValue) GetTimestamp() string { + if m != nil { + return m.Timestamp } - return true + return "" } -func (this *CacheOperator_DoesNotEqual) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CacheOperator_DoesNotEqual) - if !ok { - that2, ok := that.(CacheOperator_DoesNotEqual) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.DoesNotEqual != that1.DoesNotEqual { - return false +func (m *LilacCDNMetricsResponseValue) GetValue() string { + if m != nil { + return m.Value } - return true + return "" } -func (this *CacheOperator_Contains) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CacheOperator_Contains) - if !ok { - that2, ok := that.(CacheOperator_Contains) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Contains != that1.Contains { - return false - } - return true +// Metrics Series +// +// x-displayName: "Metrics Response Series" +// CDN Metrics response series. +// Each series instance has data for a combination of group-by tag values. +type LilacCDNMetricsResponseSeries struct { + // Metrics group by options + // + // x-displayName: "Metrics Group By" + // CDN Metrics group-by tag combination. + GroupBy []*LilacCDNMetricsResponseGroupBy `protobuf:"bytes,1,rep,name=group_by,json=groupBy,proto3" json:"group_by,omitempty"` + // Metrics Response Value + // + // x-displayName: "Metrics Response Value" + // CDN Metrics data for the series. + Value []*LilacCDNMetricsResponseValue `protobuf:"bytes,2,rep,name=value,proto3" json:"value,omitempty"` } -func (this *CacheOperator_DoesNotContain) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*CacheOperator_DoesNotContain) - if !ok { - that2, ok := that.(CacheOperator_DoesNotContain) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (m *LilacCDNMetricsResponseSeries) Reset() { *m = LilacCDNMetricsResponseSeries{} } +func (*LilacCDNMetricsResponseSeries) ProtoMessage() {} +func (*LilacCDNMetricsResponseSeries) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{41} +} +func (m *LilacCDNMetricsResponseSeries) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LilacCDNMetricsResponseSeries) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - if this.DoesNotContain != that1.DoesNotContain { - return false + return b[:n], nil +} +func (m *LilacCDNMetricsResponseSeries) XXX_Merge(src proto.Message) { + xxx_messageInfo_LilacCDNMetricsResponseSeries.Merge(m, src) +} +func (m *LilacCDNMetricsResponseSeries) XXX_Size() int { + return m.Size() +} +func (m *LilacCDNMetricsResponseSeries) XXX_DiscardUnknown() { + xxx_messageInfo_LilacCDNMetricsResponseSeries.DiscardUnknown(m) +} + +var xxx_messageInfo_LilacCDNMetricsResponseSeries proto.InternalMessageInfo + +func (m *LilacCDNMetricsResponseSeries) GetGroupBy() []*LilacCDNMetricsResponseGroupBy { + if m != nil { + return m.GroupBy } - return true + return nil } -func (this *CacheOperator_Startswith) Equal(that interface{}) bool { - if that == nil { - return this == nil + +func (m *LilacCDNMetricsResponseSeries) GetValue() []*LilacCDNMetricsResponseValue { + if m != nil { + return m.Value } + return nil +} - that1, ok := that.(*CacheOperator_Startswith) +// Metrics Response Data +// +// x-displayName: "Metrics Response Data" +// CDN Metrics response data. This is specific to a metric field. +type LilacCDNMetricsResponseData struct { + // Metrics Field Selector options + // + // x-displayName: "Metrics Field Selector" + // Metrics field for this response message + Type LilacCDNMetricsFieldSelector `protobuf:"varint,1,opt,name=type,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFieldSelector" json:"type,omitempty"` + // Metric Unit + // + // x-displayName: "Metric Unit" + // Metric Unit of the field in this message + Unit LilacCDNMetricUnit `protobuf:"varint,2,opt,name=unit,proto3,enum=ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricUnit" json:"unit,omitempty"` + // Metrics Series + // + // x-displayName: "Metrics Response Series" + // CDN Metrics response series for the field in this message + Series []*LilacCDNMetricsResponseSeries `protobuf:"bytes,3,rep,name=series,proto3" json:"series,omitempty"` +} + +func (m *LilacCDNMetricsResponseData) Reset() { *m = LilacCDNMetricsResponseData{} } +func (*LilacCDNMetricsResponseData) ProtoMessage() {} +func (*LilacCDNMetricsResponseData) Descriptor() ([]byte, []int) { + return fileDescriptor_0a2659efdd085843, []int{42} +} +func (m *LilacCDNMetricsResponseData) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LilacCDNMetricsResponseData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *LilacCDNMetricsResponseData) XXX_Merge(src proto.Message) { + xxx_messageInfo_LilacCDNMetricsResponseData.Merge(m, src) +} +func (m *LilacCDNMetricsResponseData) XXX_Size() int { + return m.Size() +} +func (m *LilacCDNMetricsResponseData) XXX_DiscardUnknown() { + xxx_messageInfo_LilacCDNMetricsResponseData.DiscardUnknown(m) +} + +var xxx_messageInfo_LilacCDNMetricsResponseData proto.InternalMessageInfo + +func (m *LilacCDNMetricsResponseData) GetType() LilacCDNMetricsFieldSelector { + if m != nil { + return m.Type + } + return REQUEST_TOTAL_SUM +} + +func (m *LilacCDNMetricsResponseData) GetUnit() LilacCDNMetricUnit { + if m != nil { + return m.Unit + } + return COUNT +} + +func (m *LilacCDNMetricsResponseData) GetSeries() []*LilacCDNMetricsResponseSeries { + if m != nil { + return m.Series + } + return nil +} + +func init() { + proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.HeaderOptions", HeaderOptions_name, HeaderOptions_value) + golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.HeaderOptions", HeaderOptions_name, HeaderOptions_value) + proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFieldSelector", LilacCDNMetricsFieldSelector_name, LilacCDNMetricsFieldSelector_value) + golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFieldSelector", LilacCDNMetricsFieldSelector_name, LilacCDNMetricsFieldSelector_value) + proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag", LilacCDNMetricsTag_name, LilacCDNMetricsTag_value) + golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsTag", LilacCDNMetricsTag_name, LilacCDNMetricsTag_value) + proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsOperatorType", LilacCDNMetricsOperatorType_name, LilacCDNMetricsOperatorType_value) + golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsOperatorType", LilacCDNMetricsOperatorType_name, LilacCDNMetricsOperatorType_value) + proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricUnit", LilacCDNMetricUnit_name, LilacCDNMetricUnit_value) + golang_proto.RegisterEnum("ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricUnit", LilacCDNMetricUnit_name, LilacCDNMetricUnit_value) + proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.cdn_loadbalancer.ProxyTypeHttpsAutoCerts") + golang_proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.cdn_loadbalancer.ProxyTypeHttpsAutoCerts") + proto.RegisterType((*HeaderControlType)(nil), "ves.io.schema.views.cdn_loadbalancer.HeaderControlType") + golang_proto.RegisterType((*HeaderControlType)(nil), "ves.io.schema.views.cdn_loadbalancer.HeaderControlType") + proto.RegisterType((*WebApplicationFirewall)(nil), "ves.io.schema.views.cdn_loadbalancer.WebApplicationFirewall") + golang_proto.RegisterType((*WebApplicationFirewall)(nil), "ves.io.schema.views.cdn_loadbalancer.WebApplicationFirewall") + proto.RegisterType((*CommonSecurityControls)(nil), "ves.io.schema.views.cdn_loadbalancer.CommonSecurityControls") + golang_proto.RegisterType((*CommonSecurityControls)(nil), "ves.io.schema.views.cdn_loadbalancer.CommonSecurityControls") + proto.RegisterType((*ApiProtection)(nil), "ves.io.schema.views.cdn_loadbalancer.ApiProtection") + golang_proto.RegisterType((*ApiProtection)(nil), "ves.io.schema.views.cdn_loadbalancer.ApiProtection") + proto.RegisterType((*SecurityOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType") + golang_proto.RegisterType((*SecurityOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.SecurityOptionsType") + proto.RegisterType((*LoggingOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.LoggingOptionsType") + golang_proto.RegisterType((*LoggingOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.LoggingOptionsType") + proto.RegisterType((*CDNCacheRuleExpressionList)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpressionList") + golang_proto.RegisterType((*CDNCacheRuleExpressionList)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpressionList") + proto.RegisterType((*CacheOperator)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOperator") + golang_proto.RegisterType((*CacheOperator)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOperator") + proto.RegisterType((*CacheHeaderMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheHeaderMatcherType") + golang_proto.RegisterType((*CacheHeaderMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheHeaderMatcherType") + proto.RegisterType((*CDNPathMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNPathMatcherType") + golang_proto.RegisterType((*CDNPathMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNPathMatcherType") + proto.RegisterType((*CacheCookieMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheCookieMatcherType") + golang_proto.RegisterType((*CacheCookieMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheCookieMatcherType") + proto.RegisterType((*CacheQueryParameterMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheQueryParameterMatcherType") + golang_proto.RegisterType((*CacheQueryParameterMatcherType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheQueryParameterMatcherType") + proto.RegisterType((*CDNCacheRuleExpression)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpression") + golang_proto.RegisterType((*CDNCacheRuleExpression)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRuleExpression") + proto.RegisterType((*CacheTTLEnableProps)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLEnableProps") + golang_proto.RegisterType((*CacheTTLEnableProps)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLEnableProps") + proto.RegisterType((*CacheEligibleOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheEligibleOptions") + golang_proto.RegisterType((*CacheEligibleOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheEligibleOptions") + proto.RegisterType((*CDNCacheRule)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRule") + golang_proto.RegisterType((*CDNCacheRule)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCacheRule") + proto.RegisterType((*DefaultCacheTTLProps)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheTTLProps") + golang_proto.RegisterType((*DefaultCacheTTLProps)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheTTLProps") + proto.RegisterType((*DefaultCacheAction)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheAction") + golang_proto.RegisterType((*DefaultCacheAction)(nil), "ves.io.schema.views.cdn_loadbalancer.DefaultCacheAction") + proto.RegisterType((*CacheOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOptions") + golang_proto.RegisterType((*CacheOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheOptions") + proto.RegisterType((*CacheTTLOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLOptionsType") + golang_proto.RegisterType((*CacheTTLOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CacheTTLOptionsType") + proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.AdvancedOptionsType") + golang_proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.cdn_loadbalancer.AdvancedOptionsType") + proto.RegisterType((*CDNTLSConfig)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNTLSConfig") + golang_proto.RegisterType((*CDNTLSConfig)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNTLSConfig") + proto.RegisterType((*CDNHTTPSAutoCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSAutoCertsType") + golang_proto.RegisterType((*CDNHTTPSAutoCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSAutoCertsType") + proto.RegisterType((*CDNDownstreamTlsParamsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNDownstreamTlsParamsType") + golang_proto.RegisterType((*CDNDownstreamTlsParamsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNDownstreamTlsParamsType") + proto.RegisterType((*CDNHTTPSCustomCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSCustomCertsType") + golang_proto.RegisterType((*CDNHTTPSCustomCertsType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNHTTPSCustomCertsType") + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GlobalSpecType") + proto.RegisterType((*IpFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.IpFilteringOptions") + golang_proto.RegisterType((*IpFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.IpFilteringOptions") + proto.RegisterType((*GeoFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.GeoFilteringOptions") + golang_proto.RegisterType((*GeoFilteringOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.GeoFilteringOptions") + proto.RegisterType((*LogHeaderOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.LogHeaderOptions") + golang_proto.RegisterType((*LogHeaderOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.LogHeaderOptions") + proto.RegisterType((*CDNCustomAuthentication)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCustomAuthentication") + golang_proto.RegisterType((*CDNCustomAuthentication)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNCustomAuthentication") + proto.RegisterType((*AuthenticationOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions") + golang_proto.RegisterType((*AuthenticationOptions)(nil), "ves.io.schema.views.cdn_loadbalancer.AuthenticationOptions") + proto.RegisterType((*CDNOriginServerType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNOriginServerType") + golang_proto.RegisterType((*CDNOriginServerType)(nil), "ves.io.schema.views.cdn_loadbalancer.CDNOriginServerType") + proto.RegisterType((*CdnOriginPoolType)(nil), "ves.io.schema.views.cdn_loadbalancer.CdnOriginPoolType") + golang_proto.RegisterType((*CdnOriginPoolType)(nil), "ves.io.schema.views.cdn_loadbalancer.CdnOriginPoolType") + proto.RegisterType((*OriginAdvancedConfiguration)(nil), "ves.io.schema.views.cdn_loadbalancer.OriginAdvancedConfiguration") + golang_proto.RegisterType((*OriginAdvancedConfiguration)(nil), "ves.io.schema.views.cdn_loadbalancer.OriginAdvancedConfiguration") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.CreateSpecType") + golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.CreateSpecType") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.ReplaceSpecType") + golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.ReplaceSpecType") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GetSpecType") + golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.cdn_loadbalancer.GetSpecType") + proto.RegisterType((*LilacCDNMetricsFilter)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFilter") + golang_proto.RegisterType((*LilacCDNMetricsFilter)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsFilter") + proto.RegisterType((*LilacCDNMetricsResponseGroupBy)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseGroupBy") + golang_proto.RegisterType((*LilacCDNMetricsResponseGroupBy)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseGroupBy") + proto.RegisterType((*LilacCDNMetricsResponseValue)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseValue") + golang_proto.RegisterType((*LilacCDNMetricsResponseValue)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseValue") + proto.RegisterType((*LilacCDNMetricsResponseSeries)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseSeries") + golang_proto.RegisterType((*LilacCDNMetricsResponseSeries)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseSeries") + proto.RegisterType((*LilacCDNMetricsResponseData)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseData") + golang_proto.RegisterType((*LilacCDNMetricsResponseData)(nil), "ves.io.schema.views.cdn_loadbalancer.LilacCDNMetricsResponseData") +} + +func init() { + proto.RegisterFile("ves.io/schema/views/cdn_loadbalancer/types.proto", fileDescriptor_0a2659efdd085843) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/views/cdn_loadbalancer/types.proto", fileDescriptor_0a2659efdd085843) +} + +var fileDescriptor_0a2659efdd085843 = []byte{ + // 6682 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7c, 0x6f, 0x6c, 0x1b, 0x47, + 0x76, 0xb8, 0x86, 0xa4, 0x44, 0xea, 0x51, 0xa2, 0xa8, 0xd1, 0x3f, 0x5a, 0xb6, 0x65, 0x86, 0xe7, + 0xdc, 0x39, 0x36, 0x2d, 0x5b, 0x74, 0x6c, 0xc7, 0x4a, 0x2e, 0x89, 0x48, 0xc9, 0x96, 0xf4, 0x93, + 0x25, 0x65, 0x45, 0xe7, 0x8f, 0x93, 0xdc, 0x62, 0x45, 0x8e, 0xa8, 0xb5, 0x29, 0xee, 0x66, 0x77, + 0x69, 0x59, 0x87, 0x9f, 0xd1, 0xf4, 0x70, 0x07, 0xf4, 0x5a, 0xb4, 0xe8, 0xb9, 0x57, 0x5c, 0xbf, + 0xb4, 0x68, 0x3f, 0xb4, 0xbd, 0x06, 0xc5, 0xa1, 0xfd, 0xd2, 0x02, 0xe5, 0x1d, 0x60, 0x04, 0xb8, + 0xe2, 0xe0, 0x03, 0x5a, 0x03, 0x45, 0x81, 0xe0, 0x8a, 0x16, 0x17, 0x05, 0x6d, 0x73, 0x69, 0x0a, + 0xa4, 0x69, 0x50, 0x1c, 0x8a, 0x2b, 0xae, 0x98, 0x3f, 0xbb, 0xdc, 0x25, 0x97, 0x14, 0x65, 0x3b, + 0x01, 0xda, 0xfa, 0x93, 0xc4, 0x99, 0x79, 0x7f, 0xe6, 0xcd, 0x7b, 0x6f, 0xde, 0x7b, 0x33, 0xb3, + 0x70, 0xfa, 0x06, 0x31, 0x27, 0x55, 0xed, 0x94, 0x59, 0xd8, 0x24, 0x5b, 0xca, 0xa9, 0x1b, 0x2a, + 0xd9, 0x36, 0x4f, 0x15, 0x8a, 0x15, 0xb9, 0xac, 0x29, 0xc5, 0x75, 0xa5, 0xac, 0x54, 0x0a, 0xc4, + 0x38, 0x65, 0xed, 0xe8, 0xc4, 0x9c, 0xd4, 0x0d, 0xcd, 0xd2, 0xf0, 0x51, 0x0e, 0x31, 0xc9, 0x21, + 0x26, 0x19, 0xc4, 0x64, 0x23, 0xc4, 0xf8, 0xc9, 0x92, 0x6a, 0x6d, 0x56, 0xd7, 0x27, 0x0b, 0xda, + 0xd6, 0xa9, 0x92, 0x56, 0xd2, 0x4e, 0x31, 0xe0, 0xf5, 0xea, 0x06, 0xfb, 0xc5, 0x7e, 0xb0, 0xff, + 0x38, 0xd2, 0xf1, 0x23, 0x25, 0x4d, 0x2b, 0x95, 0x49, 0x7d, 0x94, 0xa5, 0x6e, 0x11, 0xd3, 0x52, + 0xb6, 0x74, 0x31, 0xe0, 0xa0, 0x97, 0x4f, 0x4d, 0xb7, 0x54, 0xad, 0x22, 0x58, 0x1a, 0x4f, 0x7a, + 0x3b, 0x75, 0xad, 0xac, 0x16, 0x76, 0xdc, 0x4c, 0x8f, 0x7f, 0xde, 0x3b, 0xc2, 0x50, 0x2c, 0x22, + 0x97, 0xd5, 0x2d, 0xd5, 0xf2, 0x4e, 0x6e, 0xfc, 0x48, 0xc3, 0x38, 0xad, 0x6a, 0x11, 0xcf, 0x80, + 0x63, 0xde, 0x01, 0x26, 0x31, 0x6e, 0xa8, 0x05, 0x22, 0xfb, 0x90, 0x3c, 0xd9, 0x6e, 0xa4, 0x6c, + 0x54, 0xcb, 0x5e, 0xc4, 0x07, 0xbc, 0xc3, 0xdd, 0x5d, 0x87, 0x1a, 0xd6, 0x48, 0x29, 0xab, 0x45, + 0xc5, 0x22, 0xfe, 0x93, 0xa7, 0xeb, 0x21, 0x7b, 0xc5, 0xf3, 0x74, 0x47, 0x6b, 0xac, 0x14, 0x0a, + 0xc4, 0x34, 0xe5, 0xb2, 0x56, 0xf2, 0x10, 0x3f, 0xeb, 0x0b, 0xac, 0x6d, 0x6d, 0x69, 0x15, 0x79, + 0x5b, 0xd9, 0x70, 0xfd, 0x2b, 0xbb, 0xc1, 0xa6, 0xfc, 0xc0, 0x36, 0x2d, 0x4b, 0x6f, 0xa9, 0x58, + 0xe3, 0x27, 0xfc, 0x40, 0x34, 0x43, 0x2d, 0xa9, 0x15, 0x59, 0xd7, 0xb4, 0xb2, 0x67, 0xf0, 0x19, + 0xbf, 0xc1, 0xee, 0x65, 0xf5, 0x5b, 0x92, 0x23, 0x7e, 0x40, 0x6d, 0xd4, 0xe4, 0x86, 0x6a, 0x58, + 0x55, 0xa5, 0x2c, 0x6f, 0x6a, 0xa6, 0xe5, 0x19, 0x77, 0xba, 0xf5, 0x38, 0xb9, 0x58, 0x31, 0x65, + 0xb5, 0xb2, 0xa1, 0x9d, 0xd2, 0xd6, 0xaf, 0x91, 0x82, 0xc5, 0x21, 0x52, 0xff, 0x14, 0x84, 0xb1, + 0x55, 0x43, 0xbb, 0xb9, 0x93, 0xdf, 0xd1, 0xc9, 0xbc, 0x65, 0xe9, 0xe6, 0x4c, 0xd5, 0xd2, 0x72, + 0xc4, 0xb0, 0x4c, 0xfc, 0x04, 0xf4, 0x33, 0xc9, 0x18, 0xa4, 0xa8, 0x1a, 0xa4, 0x60, 0x25, 0x50, + 0x12, 0x1d, 0x8b, 0x64, 0x43, 0x3f, 0xad, 0xa1, 0x2e, 0xa9, 0x8f, 0x76, 0x49, 0xa2, 0x07, 0x1f, + 0x81, 0x88, 0x52, 0x2c, 0xca, 0x9b, 0xa6, 0x65, 0x26, 0x02, 0xae, 0x51, 0x61, 0xa5, 0x58, 0x9c, + 0x37, 0x2d, 0x13, 0xe7, 0x00, 0xac, 0xb2, 0x29, 0x17, 0xb4, 0xca, 0x86, 0x5a, 0x4a, 0x04, 0x93, + 0xe8, 0x58, 0x34, 0x33, 0x31, 0xe9, 0x67, 0xb2, 0xf9, 0xb2, 0x99, 0x63, 0xa3, 0xb2, 0xa1, 0x8f, + 0x6a, 0x08, 0x49, 0xbd, 0x96, 0xdd, 0x80, 0x73, 0x10, 0x2b, 0x92, 0x0d, 0xa5, 0x5a, 0xb6, 0xe4, + 0x4d, 0xa2, 0x14, 0x89, 0x91, 0xe8, 0x66, 0x88, 0x86, 0x1b, 0x10, 0xcd, 0x6d, 0xe9, 0xd6, 0x4e, + 0x36, 0x74, 0xa7, 0x86, 0xd0, 0x7c, 0x97, 0xd4, 0x2f, 0x60, 0xe6, 0x19, 0x08, 0x9e, 0x82, 0x28, + 0xd5, 0x79, 0x62, 0xc8, 0x15, 0x65, 0x8b, 0x24, 0x7a, 0x92, 0xe8, 0x58, 0x6f, 0x36, 0x46, 0xc7, + 0xfe, 0xc5, 0x4f, 0xee, 0x04, 0xbb, 0x8d, 0xe0, 0x3b, 0x01, 0x0a, 0x05, 0x7c, 0xd0, 0xb2, 0xb2, + 0x45, 0xf0, 0xb3, 0x80, 0x15, 0x5d, 0x27, 0x95, 0xa2, 0xec, 0x86, 0x0c, 0xb7, 0x80, 0x8c, 0xf3, + 0xb1, 0x6b, 0x75, 0xf8, 0xe7, 0xa0, 0x4f, 0x57, 0x4c, 0x53, 0xb6, 0x36, 0x0d, 0xad, 0x5a, 0xda, + 0x4c, 0x44, 0x3a, 0xe0, 0x3a, 0x4a, 0x21, 0xf2, 0x1c, 0x60, 0x1a, 0x3e, 0x7e, 0x36, 0x3c, 0x95, + 0xce, 0xa4, 0xcf, 0xa4, 0x9f, 0xcc, 0x9e, 0x82, 0x61, 0xc1, 0x05, 0x97, 0x81, 0x5c, 0xd8, 0xd4, + 0xd4, 0x02, 0xc1, 0x63, 0x77, 0x6a, 0xa8, 0xfb, 0x07, 0x35, 0x84, 0xee, 0xd5, 0x50, 0x68, 0xb7, + 0x86, 0xc2, 0x67, 0xd3, 0xe7, 0xd2, 0xe7, 0xd3, 0x4f, 0x2d, 0x86, 0x22, 0xa1, 0x78, 0x77, 0xea, + 0x57, 0x43, 0x30, 0xc8, 0x25, 0x90, 0xd3, 0x2a, 0x96, 0xa1, 0x95, 0xe9, 0x82, 0xe3, 0x2f, 0xc3, + 0xa8, 0x41, 0xde, 0xa8, 0x12, 0xd3, 0x96, 0xa8, 0x29, 0x5b, 0x9a, 0xac, 0x14, 0x8b, 0x09, 0x94, + 0x0c, 0x1e, 0x8b, 0x66, 0x4e, 0x34, 0xf0, 0xc8, 0x31, 0x5c, 0x56, 0x2a, 0xaa, 0x5e, 0x2d, 0x2b, + 0xd4, 0x98, 0x57, 0x98, 0x49, 0x53, 0x64, 0xd9, 0xc4, 0x3d, 0x5b, 0x14, 0xb7, 0x51, 0x20, 0x9e, + 0xb4, 0xff, 0x4b, 0x20, 0x69, 0x48, 0x10, 0xe1, 0xe0, 0x66, 0x5e, 0x9b, 0x29, 0x16, 0xf1, 0xd7, + 0x10, 0x1c, 0xf0, 0x21, 0x6e, 0x90, 0x2d, 0xed, 0x06, 0x49, 0x04, 0x92, 0xc1, 0x63, 0xbd, 0xd9, + 0x45, 0x1b, 0x65, 0xdf, 0x6d, 0xd4, 0x9b, 0x0a, 0x1b, 0x74, 0xbd, 0xdf, 0x0c, 0xd0, 0x86, 0x43, + 0xb7, 0xd1, 0x81, 0xd4, 0x98, 0x31, 0x92, 0x19, 0xfa, 0xd2, 0xab, 0xa7, 0x4f, 0x5e, 0x98, 0x39, + 0x79, 0x55, 0x39, 0xf9, 0x65, 0xf9, 0xb5, 0x93, 0xaf, 0x4d, 0xbe, 0x7e, 0xe2, 0xa8, 0x2f, 0x13, + 0xa3, 0x8d, 0x4c, 0x48, 0x8c, 0x12, 0xfe, 0xff, 0x30, 0x66, 0x10, 0x53, 0xd7, 0x2a, 0x26, 0x69, + 0x14, 0x42, 0xf0, 0x61, 0x0a, 0x61, 0xd8, 0xa6, 0xe2, 0x91, 0xc2, 0x0d, 0x18, 0xf7, 0xa3, 0x2e, + 0xa4, 0x10, 0x62, 0x52, 0xb8, 0x60, 0xe3, 0xdc, 0xff, 0xa4, 0xc7, 0x9a, 0x88, 0xf2, 0x59, 0xa7, + 0x7e, 0x29, 0x0c, 0xa3, 0x2f, 0x91, 0xf5, 0x19, 0x5d, 0x2f, 0xab, 0x05, 0x36, 0x89, 0x8b, 0xaa, + 0x41, 0xb6, 0x95, 0x72, 0x19, 0x9f, 0x87, 0x68, 0x51, 0x35, 0x95, 0xf5, 0x32, 0xa1, 0xee, 0x93, + 0xd9, 0x73, 0x0b, 0x6d, 0xa5, 0x76, 0x22, 0x86, 0xbe, 0xa4, 0x6c, 0xe0, 0x97, 0xa1, 0x4f, 0xd1, + 0x75, 0x79, 0x43, 0x20, 0x12, 0x66, 0x9e, 0xf2, 0x35, 0xf3, 0x15, 0xe6, 0x85, 0x24, 0xb2, 0xc1, + 0xa4, 0x36, 0xf0, 0xd6, 0x2d, 0x0f, 0x28, 0x35, 0x00, 0x45, 0xd7, 0x1d, 0x96, 0xde, 0x80, 0x71, + 0x77, 0xb7, 0xac, 0x55, 0xe4, 0x82, 0x52, 0xd8, 0x24, 0xf2, 0x96, 0x6a, 0x9a, 0x89, 0xde, 0x07, + 0xa1, 0x33, 0xea, 0xa2, 0xb3, 0x52, 0xc9, 0x51, 0xac, 0x97, 0x55, 0xd3, 0xc4, 0x5f, 0x41, 0x30, + 0x44, 0x77, 0x0f, 0x72, 0xb3, 0x50, 0xae, 0x9a, 0xaa, 0x56, 0x61, 0x7b, 0xa3, 0xc9, 0x96, 0x24, + 0x9a, 0x49, 0x37, 0x10, 0xe3, 0x5e, 0x7d, 0x72, 0x4d, 0xdd, 0xd2, 0x99, 0x2c, 0xe6, 0x6c, 0x28, + 0xa9, 0x5a, 0x26, 0xd9, 0xa3, 0xf6, 0x02, 0xf6, 0xdc, 0x46, 0xc1, 0x38, 0x57, 0x60, 0xba, 0x40, + 0xa7, 0xd1, 0xee, 0x8f, 0xbf, 0x1f, 0xec, 0xb9, 0xfd, 0x5d, 0x14, 0x88, 0x23, 0x69, 0x70, 0xbb, + 0x01, 0xce, 0xc4, 0x37, 0x21, 0x5e, 0x54, 0x2c, 0x45, 0x2e, 0x55, 0x15, 0xa3, 0x28, 0x18, 0xe8, + 0x66, 0x0c, 0x3c, 0xd1, 0x8e, 0x81, 0x59, 0xc5, 0x52, 0x2e, 0x51, 0x10, 0x46, 0xfd, 0x73, 0x1e, + 0x95, 0x7c, 0xde, 0x9f, 0x78, 0xac, 0xe8, 0x86, 0x31, 0xf1, 0xf3, 0x10, 0x2d, 0x98, 0xc6, 0x86, + 0xd8, 0xae, 0x98, 0x9b, 0x8c, 0x66, 0x0e, 0x34, 0x10, 0xcd, 0x99, 0xc6, 0xc6, 0x2a, 0x1b, 0x90, + 0x0d, 0x51, 0x22, 0x12, 0x14, 0x9c, 0x16, 0x7c, 0x1d, 0xfa, 0x4b, 0x86, 0xa2, 0x6f, 0xbe, 0x51, + 0x16, 0x8c, 0x87, 0x19, 0xe3, 0x8f, 0xf9, 0x33, 0x7e, 0x89, 0x0e, 0x7d, 0x61, 0xa9, 0x73, 0x86, + 0xfb, 0x04, 0x72, 0xce, 0xee, 0x2d, 0x18, 0xa4, 0x1b, 0x1a, 0x29, 0x58, 0xa4, 0x28, 0x17, 0x34, + 0xed, 0xba, 0x4a, 0xcc, 0x44, 0xc4, 0xd7, 0x7c, 0x73, 0xac, 0xb7, 0x85, 0xf9, 0x7a, 0x49, 0xc7, + 0xeb, 0x96, 0xe4, 0x26, 0x1d, 0x77, 0x48, 0x71, 0x5c, 0x66, 0xf6, 0x2c, 0x00, 0xd5, 0x15, 0xe1, + 0x8a, 0xbf, 0x70, 0xa7, 0x86, 0x02, 0x14, 0xd1, 0x6e, 0x0d, 0x75, 0x53, 0xaf, 0x7d, 0xe1, 0xf6, + 0x77, 0x11, 0xde, 0x38, 0x7b, 0xb3, 0x70, 0x72, 0x5b, 0x51, 0xf4, 0x93, 0xa6, 0xa5, 0x54, 0x8a, + 0x8a, 0x51, 0x5c, 0x0c, 0x45, 0x50, 0x3c, 0x90, 0xfa, 0xe3, 0x61, 0x18, 0xcd, 0xb1, 0x70, 0x65, + 0x8d, 0x14, 0xaa, 0x86, 0x6a, 0xed, 0x08, 0x17, 0x6d, 0xe2, 0xd7, 0xe1, 0x88, 0x27, 0x40, 0x53, + 0x89, 0x29, 0x6f, 0x18, 0xda, 0x16, 0xdb, 0x81, 0x4c, 0x5d, 0x29, 0x90, 0x3d, 0xcc, 0xf3, 0x90, + 0x00, 0x5f, 0x15, 0xd0, 0x17, 0x0d, 0x6d, 0x6b, 0xd9, 0x86, 0xc5, 0x17, 0x61, 0xa8, 0xa2, 0xc9, + 0x8d, 0x14, 0x84, 0xdd, 0xb6, 0x42, 0x39, 0x58, 0xd1, 0xd6, 0xbc, 0x48, 0xf1, 0x75, 0x18, 0x53, + 0x0a, 0x96, 0x7a, 0x83, 0x34, 0xe3, 0x0a, 0x31, 0x5c, 0x53, 0xbe, 0xb6, 0x59, 0x8f, 0xd1, 0x26, + 0xdd, 0x18, 0x77, 0x96, 0x54, 0xd3, 0x9a, 0xef, 0x92, 0x46, 0x38, 0xce, 0x46, 0x62, 0x8b, 0x30, + 0x62, 0xbb, 0x27, 0x95, 0x06, 0x27, 0x7a, 0xd5, 0x62, 0xab, 0x28, 0x74, 0xd4, 0x9f, 0x6d, 0x24, + 0x0d, 0x09, 0xa0, 0x05, 0x5d, 0x72, 0x40, 0x70, 0x19, 0x86, 0x49, 0xc5, 0x07, 0x55, 0x98, 0xa1, + 0x7a, 0x6a, 0x2f, 0xae, 0x17, 0x56, 0xf3, 0x9b, 0x06, 0x51, 0xac, 0x9c, 0x62, 0x91, 0x92, 0x66, + 0x30, 0xc6, 0x59, 0x20, 0x85, 0x24, 0xcc, 0xf1, 0x7a, 0xa8, 0xdd, 0x84, 0x83, 0x1e, 0x32, 0x0d, + 0x6e, 0xec, 0xe0, 0x03, 0x13, 0x1d, 0x53, 0x5d, 0xe4, 0xdc, 0xce, 0x6c, 0x06, 0x06, 0xab, 0x26, + 0x31, 0x64, 0xb5, 0x28, 0x17, 0xca, 0x2a, 0xa9, 0x58, 0xb2, 0xaa, 0x0b, 0xb7, 0xe9, 0x2f, 0xaf, + 0x80, 0x14, 0xa3, 0x00, 0x0b, 0xc5, 0x1c, 0x1b, 0xbe, 0xa0, 0xe3, 0x2d, 0x18, 0x12, 0x28, 0x48, + 0xc5, 0x52, 0x37, 0xc4, 0xa6, 0x91, 0x80, 0x8e, 0x7d, 0xef, 0xe8, 0x5b, 0xb7, 0xfc, 0x30, 0xcc, + 0x07, 0x24, 0xcc, 0x49, 0xb9, 0x5b, 0xb1, 0x0c, 0x49, 0x7b, 0x95, 0xb7, 0x14, 0xba, 0xf2, 0x5a, + 0xd5, 0x94, 0x19, 0x78, 0x91, 0x50, 0xdb, 0xa3, 0xb4, 0xfb, 0xda, 0x4c, 0x20, 0x28, 0x1d, 0x16, + 0xf0, 0x97, 0x6d, 0xf0, 0x2b, 0x26, 0x31, 0x66, 0x6d, 0x60, 0x6a, 0x5a, 0x62, 0xe9, 0x5b, 0xe2, + 0xef, 0x6f, 0x8b, 0xff, 0x10, 0x07, 0x6f, 0x81, 0x5e, 0x85, 0xcf, 0xb7, 0xc2, 0xdb, 0xb0, 0xec, + 0x87, 0xda, 0x52, 0x79, 0x6c, 0xcb, 0x17, 0xbf, 0x7b, 0x71, 0x2f, 0x40, 0x5f, 0x45, 0x93, 0x0b, + 0x9b, 0x4a, 0xb9, 0x4c, 0x2a, 0x25, 0x92, 0x18, 0x68, 0x83, 0x30, 0x24, 0x45, 0x2b, 0x5a, 0xce, + 0x1e, 0x8a, 0x5f, 0x83, 0xb8, 0x10, 0x42, 0x1d, 0x3c, 0xce, 0xc0, 0x4f, 0xed, 0xa5, 0x86, 0x73, + 0x0c, 0xce, 0x41, 0x35, 0x1f, 0x92, 0x06, 0x88, 0xb7, 0x09, 0x6f, 0xc2, 0x98, 0x83, 0xb6, 0x61, + 0xd2, 0x87, 0xef, 0x97, 0xc8, 0xb0, 0x83, 0xd1, 0x2d, 0x82, 0x75, 0xe8, 0xbb, 0x66, 0xba, 0xe6, + 0x30, 0xc8, 0xd0, 0x9f, 0x69, 0x42, 0x5f, 0xcf, 0x87, 0x26, 0x17, 0x95, 0x1b, 0x8a, 0x59, 0x30, + 0x54, 0xdd, 0x72, 0xd0, 0x33, 0x35, 0x8d, 0xdc, 0xe1, 0x31, 0x34, 0xa2, 0xb2, 0xba, 0x66, 0xd6, + 0x67, 0xa3, 0xc2, 0x60, 0x41, 0xd1, 0xad, 0xc2, 0xa6, 0xe2, 0x22, 0x84, 0x19, 0xa1, 0xd3, 0xed, + 0x08, 0xe5, 0x38, 0x50, 0x6b, 0x2a, 0xf1, 0x42, 0xc3, 0x08, 0x7c, 0x03, 0x46, 0x45, 0x3e, 0xbe, + 0xae, 0x98, 0x74, 0x43, 0x73, 0xe8, 0x0d, 0x31, 0x7a, 0x4f, 0xee, 0x25, 0x37, 0xb1, 0x29, 0x53, + 0x60, 0x07, 0xab, 0x87, 0xe6, 0xb0, 0xee, 0x33, 0x02, 0xcf, 0x02, 0xb6, 0x8d, 0xae, 0x9e, 0xb3, + 0x26, 0x46, 0xda, 0xe8, 0x53, 0xb7, 0x14, 0x17, 0x10, 0x92, 0x62, 0x91, 0x25, 0x3a, 0x1e, 0xe7, + 0x21, 0xa6, 0xe8, 0xaa, 0x1b, 0xc3, 0x28, 0xc3, 0x90, 0xde, 0x8b, 0xeb, 0x99, 0xd5, 0x05, 0x07, + 0xcb, 0x7c, 0xb7, 0xd4, 0xa7, 0xe8, 0x6a, 0x1d, 0xeb, 0x55, 0x00, 0x17, 0xc6, 0xb1, 0x16, 0x0b, + 0xdc, 0x80, 0xd1, 0x01, 0xe7, 0x19, 0x24, 0x13, 0x3d, 0x8b, 0x54, 0xe6, 0xbb, 0xa5, 0x5e, 0xc3, + 0xc1, 0xfd, 0x15, 0x04, 0x03, 0x96, 0x51, 0x35, 0x59, 0xf0, 0xc0, 0x1c, 0x9e, 0x99, 0x48, 0xb0, + 0xe0, 0x61, 0x4f, 0x0a, 0x3c, 0xe0, 0xe2, 0x5e, 0x72, 0xcd, 0x28, 0xec, 0x23, 0xdc, 0x8b, 0x09, + 0x8a, 0x1c, 0x96, 0x05, 0x9c, 0x03, 0xeb, 0x65, 0xad, 0x70, 0xdd, 0xc5, 0xc4, 0x81, 0x4f, 0x9d, + 0x09, 0x41, 0xd1, 0x66, 0x82, 0x86, 0x7d, 0x9a, 0x61, 0xda, 0x61, 0xdf, 0xb8, 0x7f, 0xd8, 0xa7, + 0x19, 0x66, 0x43, 0xd8, 0x57, 0x6f, 0x39, 0x0e, 0x23, 0x0d, 0x35, 0x25, 0x11, 0x15, 0x0d, 0x36, + 0x46, 0x45, 0x4f, 0x66, 0x9f, 0x87, 0x61, 0xef, 0x86, 0x28, 0x86, 0x1e, 0xbb, 0x53, 0x43, 0x3d, + 0xf7, 0x6a, 0xa8, 0x7b, 0xb7, 0x86, 0x7a, 0x68, 0x16, 0x9b, 0x39, 0xef, 0x1f, 0x41, 0x65, 0x53, + 0x10, 0x73, 0x36, 0x36, 0x0e, 0x1b, 0xbf, 0x53, 0x43, 0xbd, 0xf7, 0x6a, 0x28, 0xb2, 0x5b, 0x43, + 0xa1, 0x0b, 0xe9, 0xa9, 0xd3, 0xd9, 0xcb, 0x70, 0xa4, 0xa5, 0x2b, 0x16, 0x40, 0xc7, 0xef, 0xd4, + 0x50, 0xdf, 0xbd, 0x1a, 0x8a, 0xee, 0xd6, 0x50, 0x64, 0x2a, 0x93, 0x9e, 0x3a, 0x93, 0xce, 0x3c, + 0xe5, 0x25, 0xa9, 0x14, 0x6f, 0x28, 0x95, 0x02, 0x29, 0x66, 0x4f, 0x41, 0xac, 0xee, 0xd5, 0x2c, + 0x9a, 0x45, 0x1f, 0xbe, 0x53, 0x43, 0x03, 0xf7, 0x6a, 0x28, 0xb6, 0x5b, 0x43, 0x83, 0x53, 0x67, + 0xd3, 0x53, 0xe7, 0xd2, 0x99, 0x0b, 0xe9, 0xa9, 0xf3, 0xe9, 0xa9, 0xa7, 0xd2, 0x53, 0x17, 0xb2, + 0x4f, 0xc0, 0x60, 0x5d, 0x73, 0x6d, 0x8a, 0xc3, 0x77, 0x6a, 0x68, 0xe4, 0x5e, 0x0d, 0x0d, 0x53, + 0x8a, 0x99, 0xa9, 0x74, 0x26, 0x93, 0xce, 0x9c, 0xe1, 0x01, 0xe1, 0x62, 0x28, 0xd2, 0x1d, 0xef, + 0x59, 0x0c, 0x45, 0x22, 0xf1, 0xde, 0xc5, 0x50, 0x24, 0x1a, 0xef, 0x5b, 0x0c, 0x45, 0x62, 0xf1, + 0x81, 0xc5, 0x50, 0x64, 0x38, 0x3e, 0x92, 0xfa, 0x61, 0x18, 0xfa, 0x67, 0x74, 0x75, 0x95, 0xc7, + 0xa0, 0x74, 0xaf, 0x59, 0x82, 0x51, 0xdb, 0x6c, 0xa9, 0xe1, 0x15, 0xc9, 0x86, 0x5a, 0x51, 0xd9, + 0x0e, 0xd6, 0x3e, 0x38, 0x1c, 0x16, 0x50, 0x33, 0xba, 0x3a, 0xeb, 0xc0, 0xe0, 0x12, 0x0c, 0x52, + 0x2c, 0xa6, 0x4e, 0x0a, 0xf5, 0x6d, 0x3e, 0xd8, 0x59, 0x6c, 0x32, 0xb3, 0xba, 0xb0, 0xe6, 0x86, + 0x5b, 0x23, 0x96, 0xa5, 0x56, 0x4a, 0x26, 0x2f, 0x8b, 0xa8, 0x9e, 0x3e, 0xfc, 0x26, 0x82, 0x23, + 0x4d, 0x94, 0x7c, 0x53, 0xbb, 0x07, 0xa1, 0x7b, 0xb0, 0x91, 0xae, 0x7b, 0xdf, 0xb8, 0x06, 0xc3, + 0x94, 0x03, 0xdd, 0x91, 0xa5, 0x93, 0xe4, 0x51, 0xb2, 0x99, 0x0e, 0xc8, 0xd6, 0x97, 0x81, 0x25, + 0x22, 0xc2, 0x20, 0xb0, 0xe2, 0x5e, 0x20, 0x9e, 0xa2, 0x5c, 0x85, 0xd8, 0xb5, 0x6d, 0x4b, 0x16, + 0x65, 0x52, 0x2a, 0x54, 0x5e, 0xbd, 0x3a, 0xb9, 0x17, 0x95, 0xc5, 0x97, 0xf2, 0x2f, 0x3a, 0x40, + 0x82, 0x40, 0xff, 0xb5, 0x6d, 0xab, 0xde, 0x88, 0x4b, 0x4e, 0x1c, 0xcb, 0x14, 0x40, 0x35, 0x0b, + 0xda, 0x0d, 0x62, 0xec, 0x88, 0x38, 0x76, 0x4f, 0xff, 0x41, 0x15, 0xc0, 0x86, 0x11, 0xa2, 0xab, + 0x87, 0xb0, 0xee, 0x4e, 0x77, 0xf0, 0xed, 0xa5, 0x14, 0xe9, 0x28, 0xf8, 0xf6, 0xe0, 0x32, 0xe1, + 0xa0, 0x07, 0x47, 0xc3, 0xd2, 0xc3, 0x83, 0xf0, 0x3e, 0xa6, 0xb8, 0x9a, 0x5d, 0x2b, 0x9e, 0x7d, + 0x1e, 0x46, 0xbc, 0x36, 0xd2, 0x69, 0xd2, 0xe6, 0xd8, 0xff, 0xf3, 0x5c, 0x67, 0xea, 0x6c, 0xbb, + 0x9c, 0x56, 0xe4, 0x5e, 0x0d, 0xf5, 0x50, 0xa7, 0xf5, 0x54, 0xfa, 0x7c, 0x7a, 0xea, 0xb4, 0x3f, + 0x06, 0xc7, 0xca, 0x7b, 0xe2, 0xe1, 0xd4, 0xdf, 0x74, 0xc3, 0x90, 0x9d, 0xf6, 0xf1, 0x3c, 0xd4, + 0x64, 0x95, 0x39, 0x05, 0xfa, 0x54, 0x5d, 0xde, 0x50, 0xcb, 0x16, 0x31, 0xd4, 0x4a, 0x49, 0xe8, + 0x4a, 0x0b, 0x43, 0x68, 0xa8, 0x99, 0x4f, 0x2e, 0xe8, 0x17, 0x6d, 0x40, 0x81, 0x53, 0xa8, 0x4d, + 0x54, 0xad, 0xf7, 0xe0, 0x22, 0xf4, 0x97, 0x88, 0xe6, 0xa2, 0xc1, 0x13, 0xa8, 0x0b, 0x9d, 0xd1, + 0xb8, 0x44, 0xb4, 0x16, 0x44, 0xfa, 0x4a, 0xae, 0x2e, 0x5c, 0x84, 0x3e, 0xa5, 0x6a, 0x6d, 0xda, + 0xb5, 0x7f, 0x61, 0xd1, 0x4f, 0x77, 0x46, 0x64, 0xa6, 0x6a, 0x6d, 0xd2, 0xb4, 0xa0, 0xe0, 0xca, + 0xd3, 0x9d, 0xb9, 0x50, 0xb4, 0xa2, 0x09, 0xff, 0x22, 0x82, 0xf8, 0x36, 0x59, 0x97, 0x3d, 0xf5, + 0x27, 0xae, 0x41, 0xcf, 0x74, 0x46, 0xca, 0xbf, 0x18, 0x96, 0x3d, 0xf0, 0xc1, 0xad, 0xd1, 0x22, + 0xd9, 0xd2, 0xa6, 0xd2, 0x16, 0x31, 0xad, 0x74, 0xc1, 0xb0, 0xd2, 0xa6, 0xa5, 0x94, 0xd4, 0x4a, + 0x49, 0x8a, 0x6d, 0x33, 0x10, 0xa7, 0x48, 0x55, 0xe5, 0x71, 0x4f, 0xdd, 0x99, 0x88, 0x04, 0xe5, + 0x4c, 0x87, 0x73, 0x75, 0xbb, 0x8c, 0x76, 0x74, 0xfb, 0x3d, 0xce, 0x05, 0x7f, 0x03, 0x41, 0x42, + 0xd8, 0x83, 0x29, 0x14, 0x49, 0x2e, 0x88, 0x02, 0x42, 0x22, 0xba, 0x1f, 0x11, 0xf8, 0x17, 0x21, + 0xda, 0xb1, 0x32, 0x5a, 0xf0, 0x05, 0x49, 0x7d, 0x88, 0x00, 0x2f, 0x69, 0xa5, 0x52, 0x5d, 0x37, + 0x98, 0x52, 0x5f, 0x03, 0x2c, 0xd2, 0xcf, 0xb2, 0x56, 0x72, 0x34, 0x82, 0x3b, 0xa9, 0x73, 0x9d, + 0xf1, 0xb8, 0xa4, 0x95, 0x78, 0x29, 0xd3, 0xab, 0x0c, 0x71, 0x8e, 0x77, 0x49, 0xb3, 0xe9, 0x51, + 0x5a, 0xe2, 0x90, 0xc6, 0x4d, 0x2b, 0xf2, 0x30, 0x68, 0x71, 0xbc, 0x75, 0x5a, 0xa9, 0xbf, 0x0f, + 0xc0, 0x78, 0x6e, 0x76, 0x99, 0x79, 0x19, 0xea, 0xec, 0xe7, 0x6e, 0xea, 0x06, 0x31, 0x4d, 0x55, + 0xab, 0xd0, 0xe4, 0x1c, 0x9f, 0x81, 0x01, 0xe2, 0xb4, 0xf0, 0xc3, 0x03, 0xc4, 0x0e, 0x0f, 0x40, + 0x1c, 0x1c, 0x24, 0xde, 0x44, 0x52, 0xac, 0x3e, 0x84, 0x1d, 0x1a, 0x7c, 0x13, 0xc1, 0x08, 0xf7, + 0x86, 0x74, 0x4b, 0x92, 0xeb, 0xbd, 0xac, 0x34, 0xde, 0xf9, 0x9a, 0xfa, 0xb2, 0x95, 0x4d, 0x7d, + 0xe4, 0xae, 0x73, 0x45, 0xec, 0xff, 0x22, 0xc8, 0x5d, 0xb5, 0x2f, 0x34, 0x03, 0x4e, 0x9b, 0x77, + 0x6b, 0x48, 0x83, 0xa3, 0x30, 0x50, 0x6f, 0x4b, 0x52, 0x7e, 0xc7, 0x07, 0x9b, 0x26, 0x09, 0x97, + 0x20, 0xee, 0x1a, 0x75, 0x59, 0xb1, 0x0a, 0x9b, 0xa9, 0x33, 0x2d, 0x66, 0x85, 0x81, 0x87, 0xe8, + 0x55, 0x83, 0x14, 0xc7, 0x63, 0xcb, 0x9a, 0x95, 0xac, 0xff, 0x4e, 0x7d, 0x3d, 0x08, 0xfd, 0x6c, + 0x16, 0x2b, 0x3a, 0x31, 0x14, 0x4b, 0x33, 0x70, 0x02, 0x7a, 0xe6, 0xde, 0xa8, 0x2a, 0x65, 0x7e, + 0xdc, 0xd4, 0x3b, 0xdf, 0x25, 0x89, 0xdf, 0xf8, 0x28, 0xf4, 0xcd, 0x6a, 0xc4, 0x5c, 0xd6, 0x2c, + 0xd6, 0xc0, 0x22, 0x17, 0xda, 0xef, 0x69, 0xc5, 0x87, 0x20, 0x42, 0x95, 0x55, 0x51, 0x2b, 0x7c, + 0xb3, 0xa7, 0x23, 0x9c, 0x16, 0x7c, 0x0c, 0x62, 0x62, 0xb4, 0x68, 0x62, 0xee, 0x97, 0x8e, 0x69, + 0x68, 0xc7, 0x49, 0x80, 0x35, 0x4b, 0x31, 0x2c, 0x73, 0x5b, 0xb5, 0x36, 0xf9, 0x61, 0xd2, 0x7c, + 0x97, 0xe4, 0x6a, 0xc3, 0x69, 0x88, 0x0b, 0x18, 0xd6, 0xf8, 0x12, 0x1d, 0x17, 0x16, 0xe3, 0x9a, + 0x7a, 0x28, 0x5f, 0x73, 0x95, 0x22, 0xc7, 0x16, 0xb1, 0xf9, 0xb2, 0x5b, 0x5c, 0x7c, 0xcd, 0x55, + 0x8a, 0x0c, 0x53, 0x6f, 0x03, 0x5f, 0xa2, 0x9d, 0xf2, 0xc5, 0xe4, 0x2d, 0x91, 0x12, 0xb9, 0xc9, + 0x1c, 0x21, 0xe3, 0xab, 0xde, 0x96, 0x3d, 0x0d, 0x31, 0xbe, 0x10, 0x9a, 0x2d, 0xd3, 0x09, 0xd7, + 0x0e, 0x88, 0x59, 0x80, 0x9e, 0x16, 0x67, 0x48, 0x69, 0x1a, 0x47, 0x8b, 0x6a, 0xe5, 0x9f, 0xf5, + 0xc0, 0x28, 0x5b, 0x0b, 0xfb, 0x18, 0xc4, 0x2a, 0x6c, 0x12, 0x83, 0x99, 0xf7, 0x25, 0x08, 0x39, + 0xca, 0x1d, 0xeb, 0xd4, 0xed, 0x79, 0x2c, 0x4c, 0x62, 0x08, 0xf0, 0x15, 0x88, 0xd8, 0x5c, 0x89, + 0x8d, 0xaf, 0x43, 0x64, 0x1e, 0x25, 0x11, 0x07, 0x88, 0x0e, 0xaa, 0xe9, 0xf7, 0x42, 0x6f, 0xd7, + 0x50, 0x02, 0x46, 0x61, 0x80, 0x13, 0x4d, 0x5a, 0x1a, 0xd7, 0x4a, 0x1c, 0x9c, 0x4a, 0x9f, 0xbd, + 0x5b, 0x43, 0x6f, 0x87, 0x20, 0x0e, 0x21, 0xa6, 0xce, 0x11, 0x3e, 0x97, 0x24, 0x82, 0xbf, 0x0b, + 0x40, 0xc4, 0x46, 0x79, 0xfc, 0xaf, 0x02, 0xf0, 0xc3, 0x00, 0x1c, 0x80, 0x01, 0x1b, 0xe9, 0x24, + 0x57, 0xbb, 0x8c, 0x50, 0x3f, 0x78, 0x1c, 0x46, 0x9c, 0x2e, 0xb7, 0xc6, 0x65, 0x3c, 0xfa, 0x07, + 0x87, 0x61, 0xd0, 0x19, 0x66, 0xab, 0x5d, 0xc6, 0x51, 0x40, 0x78, 0x02, 0xc6, 0x1a, 0xb1, 0x88, + 0xbe, 0x4c, 0x83, 0x06, 0xc2, 0x63, 0x30, 0xe4, 0x0c, 0xad, 0xab, 0x5d, 0xc6, 0xa5, 0x82, 0x70, + 0x12, 0x0e, 0x34, 0x62, 0x73, 0x34, 0x2e, 0xd3, 0xa4, 0x83, 0x1e, 0xde, 0x6c, 0xd5, 0xcb, 0x38, + 0x4a, 0xe8, 0xc7, 0x9b, 0xd0, 0xba, 0x4c, 0x83, 0x16, 0x7a, 0x78, 0xab, 0xab, 0x5e, 0xc6, 0xa5, + 0x86, 0xf0, 0xd7, 0x08, 0xba, 0x5f, 0x54, 0xca, 0x55, 0x92, 0xf9, 0x3e, 0x6a, 0x92, 0x6a, 0x0b, + 0x59, 0xfa, 0xc8, 0xae, 0xa5, 0xbc, 0x7c, 0xa5, 0xd3, 0x46, 0x1e, 0x3e, 0x73, 0x6f, 0x39, 0x5f, + 0xdf, 0xd9, 0xf1, 0xb8, 0x6e, 0x31, 0x14, 0x09, 0xc4, 0x83, 0x8b, 0xa1, 0x48, 0x30, 0x1e, 0x12, + 0x27, 0xb0, 0x5f, 0x47, 0x80, 0x73, 0xb3, 0xcb, 0xab, 0x8a, 0xb5, 0xe9, 0x36, 0x9a, 0x87, 0xa5, + 0xeb, 0x7f, 0xf2, 0x5d, 0x8f, 0xae, 0x87, 0x3e, 0x7e, 0x16, 0x9d, 0xe5, 0x94, 0x9d, 0x78, 0xd3, + 0xe1, 0x28, 0xf5, 0xb3, 0x6e, 0x61, 0xc4, 0xf6, 0x61, 0x48, 0x9d, 0x9f, 0x09, 0x97, 0x11, 0xd7, + 0x77, 0xa8, 0x63, 0x6f, 0x06, 0x7c, 0x6c, 0x33, 0xf0, 0xf0, 0x6c, 0xf3, 0x03, 0x6a, 0x9b, 0x8f, + 0xc1, 0x11, 0x48, 0xb0, 0x71, 0xc9, 0x55, 0xc5, 0x50, 0xb6, 0x88, 0x45, 0x8c, 0x64, 0xde, 0x65, + 0xa4, 0x99, 0xbb, 0x35, 0x74, 0x27, 0x04, 0x31, 0x61, 0xa4, 0x3d, 0x9c, 0xd7, 0x47, 0x26, 0xfa, + 0xc8, 0x44, 0xf7, 0x63, 0xa2, 0xa9, 0xdf, 0xec, 0x81, 0x09, 0xa6, 0x66, 0x2f, 0x54, 0x89, 0xb1, + 0xe3, 0xa8, 0x9a, 0xdb, 0x0c, 0x1e, 0x87, 0xe0, 0x75, 0xb2, 0x23, 0xac, 0x60, 0xa8, 0x6e, 0x05, + 0xf4, 0xbf, 0x90, 0x11, 0x48, 0x22, 0x89, 0xf6, 0x7f, 0x5a, 0xd6, 0xf0, 0x89, 0x63, 0x0d, 0x8c, + 0xc3, 0x36, 0xd6, 0x70, 0x37, 0x04, 0x7d, 0x10, 0xfc, 0x7f, 0x64, 0x67, 0xbc, 0x9b, 0x71, 0x0c, + 0xef, 0x06, 0x20, 0xc6, 0x46, 0x24, 0x1f, 0x59, 0xc4, 0xa7, 0x65, 0x11, 0x7f, 0x8b, 0x20, 0xca, + 0x65, 0xfc, 0xbf, 0xcb, 0x2e, 0x3e, 0x89, 0xc2, 0xa8, 0x7f, 0xc2, 0x80, 0x5f, 0x07, 0xd0, 0x15, + 0x6b, 0x53, 0xde, 0xa2, 0xa3, 0x99, 0x59, 0x74, 0x5c, 0x8d, 0x68, 0xde, 0xf4, 0xc4, 0x6e, 0xd5, + 0xab, 0xdb, 0xcd, 0xf8, 0x6b, 0x08, 0xe2, 0x6f, 0x50, 0x55, 0x97, 0x75, 0x5b, 0xd5, 0xcd, 0x44, + 0x0f, 0x4b, 0x74, 0x66, 0xf7, 0x61, 0x50, 0x2d, 0xed, 0x39, 0x3b, 0xdc, 0x9c, 0xec, 0x24, 0x90, + 0x34, 0xf0, 0x86, 0x07, 0xc0, 0xc4, 0xdb, 0xd0, 0xcf, 0xa3, 0x62, 0x71, 0x17, 0x47, 0xdc, 0xb6, + 0x78, 0x66, 0x1f, 0x3c, 0x34, 0xc5, 0xc5, 0x2d, 0x68, 0xf7, 0x15, 0xea, 0xa3, 0x4d, 0xbc, 0x03, + 0x31, 0x7e, 0x6d, 0x81, 0x4b, 0x98, 0x18, 0xe2, 0xba, 0xc4, 0x7e, 0x28, 0x37, 0x6d, 0xe6, 0x2d, + 0x28, 0xf7, 0x17, 0xdc, 0x03, 0xa7, 0x3f, 0x0c, 0xb3, 0xeb, 0x65, 0xe7, 0xd2, 0x67, 0xd3, 0xe7, + 0xdf, 0xae, 0xa1, 0x43, 0x30, 0x0e, 0x03, 0x5c, 0xbb, 0x73, 0x5a, 0xa5, 0xc8, 0x8b, 0xc2, 0x76, + 0xff, 0xdd, 0x1a, 0xfa, 0x5e, 0x18, 0xee, 0x04, 0x01, 0xe8, 0x92, 0x72, 0x57, 0x74, 0xfc, 0x4f, + 0x83, 0xf0, 0x9d, 0x20, 0x1c, 0x85, 0xf1, 0xba, 0x86, 0x4c, 0xb6, 0x72, 0x35, 0xa7, 0x21, 0xe9, + 0x37, 0xaa, 0x8d, 0xd7, 0x39, 0x06, 0x87, 0xfc, 0x20, 0x7c, 0x1c, 0xd0, 0x93, 0x90, 0x6a, 0x83, + 0xbb, 0x95, 0x2f, 0x4a, 0xc3, 0x84, 0x1f, 0x54, 0x0b, 0xb7, 0xf4, 0x14, 0x1c, 0x6d, 0x43, 0xa3, + 0x9d, 0x87, 0x6a, 0x31, 0x0f, 0x1f, 0x67, 0xd5, 0x7e, 0x1e, 0xad, 0xfc, 0x56, 0x8b, 0x79, 0xb4, + 0x70, 0x61, 0x7f, 0x1e, 0x10, 0x4b, 0xc8, 0x3d, 0xd8, 0xb7, 0x03, 0xed, 0x56, 0x6f, 0xef, 0x35, + 0x6b, 0xbf, 0x46, 0x9d, 0xac, 0xcb, 0x5e, 0xab, 0xd0, 0x99, 0xdc, 0xdb, 0xcb, 0xb8, 0x13, 0xb9, + 0xee, 0x25, 0x45, 0xc8, 0xc1, 0xa0, 0x6b, 0x53, 0x16, 0x65, 0x8d, 0xc9, 0x66, 0xf7, 0xd5, 0xae, + 0xa2, 0x01, 0x4f, 0x43, 0x9f, 0xc8, 0x41, 0x39, 0xfc, 0x89, 0x06, 0xbf, 0xd3, 0x16, 0xf8, 0x19, + 0xe8, 0xe3, 0xa6, 0x2e, 0x80, 0xd3, 0x8d, 0xbe, 0xa3, 0x1d, 0xb4, 0x4f, 0x66, 0xf2, 0x7b, 0x08, + 0x86, 0x98, 0x03, 0xc9, 0xe7, 0x97, 0xf8, 0x89, 0xfb, 0xaa, 0xa1, 0xe9, 0x26, 0xfe, 0x02, 0xf4, + 0x72, 0xa6, 0x2c, 0xab, 0xdc, 0x90, 0x0f, 0x7c, 0x14, 0x40, 0x52, 0x84, 0x75, 0xe6, 0xad, 0x32, + 0x7e, 0x12, 0x46, 0xd5, 0x52, 0x45, 0x33, 0x88, 0xec, 0xdc, 0x65, 0xe4, 0x0c, 0xb1, 0x8c, 0x26, + 0x22, 0x0d, 0xf3, 0x5e, 0x49, 0x74, 0x72, 0xe6, 0xf1, 0xe3, 0x4e, 0x05, 0xe2, 0x06, 0x31, 0x0c, + 0xb5, 0x48, 0x58, 0x25, 0x26, 0x22, 0x71, 0x49, 0xac, 0x88, 0x46, 0x91, 0xb1, 0x7c, 0x2f, 0x0c, + 0xc3, 0x8c, 0xc7, 0xb9, 0xb2, 0x5a, 0x52, 0xd7, 0xcb, 0xc4, 0xae, 0xf3, 0x7d, 0x0b, 0xc1, 0x10, + 0xf3, 0x8d, 0x84, 0x1d, 0xb7, 0xd3, 0x7c, 0x40, 0xae, 0x1a, 0xaa, 0x88, 0xc6, 0x2e, 0xec, 0xc3, + 0x7d, 0x7a, 0x67, 0x9f, 0x3d, 0xbe, 0x7b, 0xeb, 0x31, 0x89, 0xe8, 0x65, 0xa5, 0x40, 0x8a, 0xc9, + 0xf5, 0x9d, 0xa4, 0x20, 0xa2, 0x1b, 0xda, 0xcd, 0x1d, 0x7e, 0xa5, 0xba, 0x6a, 0xa8, 0xef, 0xd7, + 0x10, 0x4a, 0xa0, 0xf9, 0x2e, 0x69, 0x90, 0x77, 0xcf, 0x0b, 0x16, 0xae, 0x18, 0x2a, 0xfe, 0x0e, + 0x82, 0x83, 0x8d, 0x9c, 0xd9, 0x17, 0x5e, 0x29, 0x87, 0xc1, 0x07, 0xe5, 0x30, 0xb3, 0x7b, 0xeb, + 0x89, 0xf6, 0x1c, 0xba, 0xc8, 0x39, 0x9c, 0x26, 0xbc, 0x9c, 0x4a, 0x7c, 0x08, 0x65, 0xf8, 0x97, + 0x11, 0xf4, 0x79, 0x64, 0x18, 0xfa, 0x6c, 0x65, 0x18, 0xdd, 0x74, 0x49, 0xef, 0x2d, 0x04, 0x07, + 0x7c, 0xd6, 0x55, 0x66, 0x66, 0x26, 0x32, 0xe5, 0xcf, 0x5c, 0x76, 0xa3, 0x4d, 0xab, 0xcc, 0x5c, + 0x01, 0xae, 0xc0, 0x88, 0xef, 0xd4, 0xf6, 0x77, 0xa4, 0xe2, 0xc3, 0xe7, 0x7c, 0x97, 0x84, 0x39, + 0x66, 0x76, 0x4b, 0x9f, 0x12, 0xa6, 0xc2, 0xb9, 0x05, 0x87, 0xdb, 0x32, 0x2c, 0x6a, 0xea, 0x0f, + 0x44, 0xf7, 0x40, 0x03, 0xdd, 0xba, 0xa2, 0xb0, 0xe2, 0xc2, 0x54, 0xf6, 0x71, 0xc0, 0x44, 0x18, + 0xa3, 0xbc, 0xa1, 0x19, 0xfc, 0xec, 0x0e, 0x0f, 0x88, 0xb3, 0x7b, 0xb4, 0x5b, 0x43, 0xc1, 0x73, + 0xe9, 0xf3, 0xa2, 0x6c, 0xf8, 0x2b, 0x11, 0xe8, 0x73, 0x87, 0x96, 0xd4, 0xb9, 0xb0, 0x12, 0x70, + 0x8b, 0x72, 0x78, 0x84, 0x76, 0xb2, 0x42, 0xf8, 0x6d, 0x04, 0xc3, 0x0d, 0xc5, 0x62, 0xb9, 0xac, + 0x9a, 0x96, 0xa8, 0x83, 0x3f, 0xff, 0x20, 0x75, 0xf0, 0x25, 0xd5, 0xb4, 0xb2, 0x13, 0x7b, 0xd4, + 0xc1, 0xb1, 0xd1, 0x5c, 0xd2, 0xbf, 0x00, 0x3c, 0x7c, 0x93, 0xd7, 0x77, 0x74, 0xc5, 0xb4, 0x0f, + 0x8c, 0x5b, 0x1d, 0xb4, 0x47, 0xd9, 0xd8, 0x2c, 0x1b, 0x8a, 0xaf, 0xf9, 0x89, 0x4d, 0x28, 0xf4, + 0xf4, 0x3e, 0x16, 0xac, 0xc1, 0x11, 0xce, 0x77, 0x49, 0x71, 0x1b, 0xef, 0x45, 0xcd, 0x60, 0x43, + 0xa6, 0x3f, 0x09, 0x7d, 0xfc, 0x6c, 0x37, 0x7b, 0x39, 0x70, 0xb7, 0x86, 0xfe, 0x39, 0x04, 0x43, + 0xa2, 0x70, 0x12, 0x75, 0x09, 0x1f, 0xbe, 0x1a, 0x12, 0xd5, 0xf5, 0xe4, 0x4c, 0x81, 0x57, 0x61, + 0x3f, 0x0e, 0x42, 0x0a, 0x7b, 0x26, 0x38, 0xde, 0xc7, 0xb9, 0x4f, 0x72, 0xbc, 0x21, 0xcb, 0xa8, + 0x12, 0x78, 0x0e, 0x67, 0x9a, 0x67, 0x32, 0xe9, 0x6b, 0x08, 0x93, 0xce, 0x46, 0x32, 0xde, 0xcb, + 0x69, 0xe5, 0xf3, 0x4b, 0x70, 0x09, 0x4f, 0x77, 0x84, 0xc0, 0xa5, 0xd9, 0xfe, 0x88, 0x2e, 0xe3, + 0xe7, 0x3a, 0xe6, 0xc4, 0x7f, 0xa7, 0x1a, 0x87, 0x35, 0x62, 0x25, 0xf9, 0xff, 0x70, 0x05, 0x5f, + 0xda, 0x37, 0x5f, 0x1d, 0xa0, 0x5d, 0xc0, 0xe7, 0xf7, 0x29, 0x2f, 0x7b, 0x67, 0x1c, 0x8f, 0xf1, + 0xb9, 0xda, 0xbf, 0xe1, 0x85, 0x0e, 0x27, 0xdc, 0x2c, 0xb9, 0x96, 0x28, 0x17, 0x60, 0x88, 0xaa, + 0x76, 0x52, 0xdb, 0x48, 0xd6, 0x95, 0xdd, 0x4c, 0x65, 0xfc, 0xad, 0xaf, 0x5d, 0x88, 0x91, 0x3d, + 0x60, 0x47, 0x33, 0x0a, 0x57, 0x28, 0x1c, 0xb9, 0x53, 0x43, 0xa1, 0x7b, 0x35, 0x64, 0xd7, 0x1f, + 0x9f, 0x83, 0xe1, 0x59, 0xfe, 0x2a, 0xc7, 0xf6, 0x3d, 0xfb, 0x8b, 0x38, 0x52, 0xbf, 0x11, 0x04, + 0xec, 0xc6, 0xc0, 0x35, 0x17, 0xff, 0x01, 0xf2, 0x35, 0xae, 0xc0, 0x7e, 0x8c, 0xcb, 0x8f, 0xb1, + 0xec, 0xf4, 0xee, 0xad, 0x29, 0xf7, 0x76, 0xe1, 0x70, 0xe9, 0xc8, 0x33, 0xa9, 0x54, 0x8a, 0xa2, + 0x59, 0x5c, 0x76, 0x28, 0x3a, 0xdb, 0x46, 0x93, 0x61, 0xe2, 0xa7, 0x60, 0xb0, 0x8e, 0x42, 0x3c, + 0x50, 0xe2, 0x47, 0x55, 0xee, 0x09, 0xcf, 0x77, 0x49, 0x03, 0xf6, 0x94, 0x05, 0x5b, 0x78, 0x1a, + 0x70, 0x33, 0x71, 0x7e, 0x86, 0xd5, 0x00, 0x1a, 0xb7, 0x41, 0xed, 0x50, 0x0a, 0x7f, 0xd1, 0x8e, + 0xb8, 0x6c, 0x0e, 0xdb, 0x3d, 0xa0, 0x9a, 0xef, 0x12, 0x91, 0xd8, 0xac, 0x18, 0xec, 0xbf, 0xac, + 0x41, 0xea, 0xeb, 0x85, 0x93, 0xff, 0x47, 0x04, 0x7d, 0xa2, 0xb0, 0x65, 0x1f, 0xc2, 0x0e, 0xdb, + 0x2f, 0xb6, 0xdc, 0x90, 0xfb, 0xab, 0x1f, 0x34, 0xaf, 0xb3, 0x84, 0x8b, 0xcd, 0x6b, 0xaf, 0x42, + 0xb4, 0x7e, 0xb2, 0x68, 0x8a, 0xdd, 0x21, 0xb3, 0xff, 0xdd, 0xa1, 0x45, 0xd2, 0x0c, 0xce, 0x69, + 0xa8, 0x99, 0xfa, 0x89, 0x2b, 0x60, 0x76, 0x9f, 0x6f, 0xfb, 0xae, 0x6a, 0xe0, 0xfe, 0x57, 0x35, + 0x78, 0x9f, 0xab, 0x1a, 0xda, 0xcf, 0xaa, 0x8e, 0x41, 0x94, 0x11, 0xd5, 0xeb, 0x6b, 0x1a, 0x70, + 0xad, 0xe9, 0x57, 0xbb, 0x61, 0x68, 0x46, 0xdc, 0x5c, 0x71, 0xcf, 0x75, 0x13, 0x62, 0xe2, 0x01, + 0x9a, 0x7d, 0xb6, 0xce, 0x2f, 0x0e, 0x9f, 0xdf, 0xcf, 0xb1, 0x9f, 0xeb, 0x2d, 0x5a, 0xfd, 0x7a, + 0xaa, 0xd4, 0xbf, 0xe9, 0x3e, 0x13, 0xc4, 0x15, 0x88, 0x3b, 0x17, 0x1b, 0x6c, 0x5a, 0x83, 0xfb, + 0x89, 0x6f, 0x7c, 0xee, 0xd7, 0xb8, 0xa8, 0x0d, 0x98, 0xde, 0x6e, 0x7c, 0x1d, 0x06, 0xca, 0xfc, + 0xee, 0x82, 0x43, 0x0e, 0xef, 0x47, 0x5f, 0x9b, 0x2f, 0x3e, 0xb8, 0xa8, 0xc5, 0xca, 0x9e, 0x5e, + 0xfc, 0x3b, 0xc8, 0xad, 0x33, 0x36, 0xbd, 0xa1, 0xfb, 0x09, 0xdf, 0xdc, 0x04, 0xcf, 0xbf, 0x73, + 0x0b, 0xed, 0xde, 0xfa, 0x9c, 0xdb, 0x65, 0x55, 0xc8, 0x76, 0x72, 0x43, 0x25, 0x65, 0xdb, 0x4b, + 0x09, 0x5a, 0x36, 0x67, 0xdc, 0x59, 0xd5, 0x35, 0xd3, 0x66, 0x50, 0xb1, 0x8d, 0xde, 0xe6, 0x6d, + 0xb8, 0xdd, 0xdd, 0xb8, 0x16, 0x65, 0x6e, 0x7e, 0x7d, 0xa2, 0x2e, 0x05, 0x1e, 0x5b, 0x88, 0xf6, + 0xe6, 0xf3, 0x29, 0xe7, 0xdc, 0x8a, 0xdf, 0x7a, 0x1c, 0x88, 0xc7, 0x53, 0xbf, 0x8f, 0x58, 0xfc, + 0x98, 0x5f, 0x5a, 0x13, 0x8f, 0x41, 0xcf, 0x41, 0xd4, 0x2a, 0x9b, 0xf2, 0x54, 0x46, 0xd6, 0xcb, + 0x55, 0x53, 0x78, 0x94, 0x56, 0x2a, 0xdf, 0x6b, 0x95, 0xcd, 0xa9, 0xcc, 0x6a, 0xb9, 0x6a, 0x3a, + 0x70, 0x53, 0x1c, 0x2e, 0xb0, 0x37, 0xdc, 0x14, 0x85, 0xe3, 0x07, 0x6a, 0xd9, 0x03, 0xd0, 0x23, + 0xae, 0x7b, 0x0d, 0x88, 0xc9, 0x74, 0xd3, 0x38, 0x77, 0x2a, 0x9d, 0xe1, 0xb7, 0x36, 0x53, 0x7f, + 0x89, 0x60, 0x24, 0x37, 0xbb, 0x3c, 0x9f, 0xcf, 0xaf, 0xae, 0x39, 0x4f, 0x69, 0x99, 0xc1, 0x3c, + 0xcc, 0xe7, 0xb4, 0x2f, 0xf9, 0x3c, 0xa7, 0xed, 0xdc, 0xd5, 0x39, 0x42, 0x6c, 0x7a, 0x62, 0x3b, + 0x1d, 0xb1, 0xe3, 0xc5, 0xd4, 0x7f, 0x20, 0x76, 0xa7, 0x65, 0x56, 0xdb, 0xae, 0x98, 0x96, 0x41, + 0x94, 0xad, 0x7c, 0xd9, 0x64, 0x15, 0x0f, 0x3e, 0x1b, 0x2f, 0x07, 0xe8, 0xa1, 0x71, 0x80, 0xd7, + 0x21, 0xce, 0x10, 0x13, 0x43, 0xbc, 0x06, 0x71, 0x7c, 0x79, 0xe3, 0xcb, 0xb1, 0x7c, 0xd9, 0xcc, + 0xd5, 0x47, 0x35, 0xd4, 0x3b, 0xe3, 0xf5, 0x50, 0x5e, 0x1a, 0xb0, 0x3c, 0x23, 0xcd, 0xe9, 0x83, + 0x6f, 0xd7, 0xd0, 0x18, 0x8c, 0x40, 0x2c, 0xbf, 0xb4, 0x96, 0x74, 0x55, 0x7f, 0xe9, 0x3a, 0xa6, + 0xfe, 0x01, 0xc1, 0x98, 0xbd, 0x82, 0xb9, 0xaa, 0x69, 0x69, 0x5b, 0x9f, 0xce, 0x1a, 0x6e, 0x41, + 0x8c, 0x4e, 0xd4, 0x55, 0xef, 0xe6, 0xeb, 0xd8, 0x79, 0x42, 0xd3, 0x62, 0x6d, 0xec, 0x2b, 0xa2, + 0x96, 0x68, 0x64, 0xc8, 0x5d, 0x2b, 0xfb, 0xdb, 0x51, 0x88, 0x5d, 0x2a, 0x6b, 0xeb, 0x4a, 0x79, + 0x4d, 0x27, 0x05, 0x36, 0xaf, 0x5f, 0x80, 0x70, 0x51, 0xdb, 0x62, 0xb7, 0x61, 0x10, 0x7b, 0x72, + 0x4a, 0xa8, 0xf8, 0x7a, 0x6f, 0xa3, 0x9e, 0x54, 0xc8, 0x08, 0x6c, 0xb2, 0x6c, 0x08, 0x6e, 0xa3, + 0x70, 0x8a, 0x65, 0x67, 0x01, 0x77, 0x67, 0x9c, 0x75, 0x8e, 0xdd, 0x46, 0xc3, 0x29, 0x6c, 0xc4, + 0x33, 0xb1, 0x57, 0x5f, 0x9b, 0x7c, 0xfd, 0xc4, 0xab, 0xfc, 0x69, 0xea, 0xeb, 0x27, 0x9a, 0x1f, + 0xa5, 0x7a, 0x52, 0x2b, 0x9b, 0x2a, 0x5e, 0x84, 0x10, 0x95, 0x9e, 0x10, 0x81, 0xff, 0xfb, 0x86, + 0xa6, 0x67, 0xfa, 0x93, 0x9e, 0x97, 0xeb, 0xf3, 0x5d, 0x12, 0xc3, 0x81, 0x09, 0x0c, 0xd0, 0xbf, + 0xa6, 0xac, 0x54, 0x2d, 0x8d, 0x29, 0x92, 0xf0, 0xdf, 0x4f, 0x77, 0x2c, 0xd9, 0x66, 0xf3, 0xa5, + 0xfb, 0xe6, 0xa6, 0xfb, 0x7d, 0x3c, 0xbe, 0x02, 0xdd, 0xac, 0x41, 0x38, 0xeb, 0x2f, 0xee, 0x0f, + 0x79, 0x83, 0x66, 0xcd, 0x77, 0x49, 0x1c, 0x1b, 0x3e, 0x01, 0x7d, 0x54, 0x6f, 0xca, 0x9a, 0xb8, + 0x79, 0x1d, 0x65, 0xba, 0xc3, 0x5c, 0x27, 0xd3, 0x9f, 0xa8, 0x52, 0x2c, 0x2e, 0x89, 0x4e, 0x5c, + 0x84, 0xe8, 0x16, 0xcd, 0x3a, 0xb8, 0x6f, 0x16, 0x0f, 0x96, 0x3a, 0xdc, 0x36, 0x7c, 0x36, 0x75, + 0x4e, 0x86, 0x59, 0x24, 0x50, 0xbc, 0xbc, 0x0b, 0x7f, 0x09, 0xa2, 0xae, 0xef, 0x1d, 0xec, 0x6f, + 0x9f, 0xcf, 0x15, 0x2b, 0x2b, 0x0c, 0x76, 0x55, 0x13, 0xfb, 0xbc, 0x78, 0x32, 0xa0, 0x39, 0xad, + 0xf8, 0x4b, 0xd0, 0xcf, 0x3e, 0x0f, 0xa1, 0x56, 0x2c, 0x62, 0x54, 0x94, 0x72, 0xe2, 0xfd, 0x70, + 0xc7, 0xaf, 0xca, 0x86, 0xdf, 0xba, 0xe5, 0x05, 0x7e, 0x9f, 0xed, 0x2f, 0xb4, 0x69, 0x41, 0xb4, + 0xe0, 0x43, 0xd0, 0xcb, 0x92, 0x21, 0x56, 0x6a, 0xf8, 0x09, 0xbb, 0x7c, 0x25, 0x45, 0x68, 0x0b, + 0xab, 0x2f, 0xcc, 0x43, 0xc4, 0xfe, 0x36, 0x42, 0xe2, 0x83, 0xb0, 0xef, 0xeb, 0x5e, 0xdf, 0x0f, + 0x29, 0x4c, 0xce, 0x56, 0xcc, 0x85, 0xca, 0x86, 0x26, 0x85, 0x8b, 0xfc, 0x1f, 0x9c, 0x83, 0x6e, + 0xd3, 0x52, 0x2c, 0x92, 0xf8, 0x97, 0x30, 0xbb, 0x01, 0xd5, 0x0e, 0xcd, 0xe4, 0x8b, 0xfc, 0xc7, + 0xbc, 0x66, 0x5a, 0x6b, 0x14, 0x48, 0xe2, 0xb0, 0xf8, 0x55, 0x18, 0x70, 0xf4, 0x56, 0xe6, 0xe8, + 0x3e, 0xe4, 0xe8, 0x26, 0xdb, 0xbe, 0x32, 0x72, 0xfc, 0x9b, 0xaa, 0x55, 0x18, 0xc2, 0x2c, 0x3b, + 0xea, 0x51, 0x84, 0xba, 0xb2, 0x26, 0xbc, 0x06, 0xb1, 0x3a, 0x72, 0x36, 0xe3, 0x8f, 0xc3, 0x2d, + 0xde, 0xe6, 0xb8, 0x70, 0xdb, 0x2a, 0x4f, 0x27, 0x49, 0x85, 0x2e, 0xf5, 0x29, 0xae, 0x16, 0xbc, + 0x06, 0x03, 0xf6, 0x8b, 0x0f, 0xdb, 0x89, 0xfc, 0x7b, 0xd8, 0xf7, 0x91, 0xb2, 0x07, 0xab, 0x78, + 0xd7, 0x39, 0xcb, 0x40, 0xa4, 0x98, 0xe9, 0xfe, 0x69, 0xe2, 0x65, 0x00, 0x97, 0x04, 0x3e, 0xb9, + 0x2f, 0x09, 0x48, 0xbd, 0x05, 0x7b, 0xe6, 0xd3, 0x57, 0xdf, 0xae, 0xa1, 0x17, 0x61, 0x1c, 0x86, + 0xb2, 0x8a, 0xa9, 0x16, 0x9c, 0x64, 0x95, 0x9b, 0x11, 0xf5, 0xfb, 0x30, 0x06, 0x03, 0xb9, 0xd9, + 0xe5, 0x24, 0xd7, 0xd6, 0x24, 0x53, 0xcc, 0xc0, 0xd4, 0xb9, 0x63, 0x08, 0x8e, 0xc0, 0xa8, 0x6d, + 0x2b, 0x0d, 0x70, 0xdd, 0x53, 0x53, 0xe9, 0xa9, 0x33, 0xd9, 0xc3, 0x30, 0xe8, 0xd6, 0x79, 0xfe, + 0x28, 0x84, 0x9a, 0x12, 0xbe, 0x57, 0x43, 0xf5, 0xc0, 0x86, 0x87, 0x34, 0xfc, 0x69, 0x07, 0xbf, + 0x22, 0x14, 0x8e, 0x47, 0x16, 0x43, 0x91, 0xbe, 0x78, 0xbf, 0x27, 0xd4, 0xf9, 0x37, 0x04, 0xb8, + 0xf9, 0x06, 0x37, 0xbe, 0x08, 0xa0, 0x94, 0xcb, 0xda, 0xb6, 0x5d, 0xfc, 0xa2, 0xcb, 0xf6, 0xb8, + 0xff, 0x63, 0xea, 0x55, 0x83, 0x6c, 0xa8, 0x37, 0xd9, 0xe1, 0x80, 0x78, 0x4b, 0xdb, 0xcb, 0x40, + 0x59, 0xe9, 0xea, 0x22, 0x00, 0x7b, 0xf4, 0xc3, 0xf1, 0x04, 0xf7, 0x89, 0x87, 0x81, 0xd2, 0x1f, + 0xd3, 0x47, 0xde, 0xae, 0xa1, 0x83, 0x70, 0x00, 0x86, 0x17, 0x56, 0x93, 0x0e, 0xb3, 0x49, 0x9b, + 0x5b, 0x34, 0x95, 0x3d, 0x0a, 0x83, 0xee, 0x2b, 0xec, 0x5c, 0x2c, 0x03, 0xae, 0x4b, 0x86, 0xc1, + 0x4c, 0x5a, 0x3c, 0x79, 0x49, 0x7d, 0x82, 0x60, 0xc8, 0xe7, 0x46, 0xf9, 0x7e, 0x26, 0x9d, 0xd3, + 0xaa, 0x15, 0xcb, 0xd8, 0xc9, 0x69, 0x45, 0xf2, 0x40, 0x93, 0xf6, 0xc1, 0x53, 0x9f, 0x74, 0x52, + 0x1c, 0x90, 0x8e, 0x5c, 0x22, 0x9a, 0xff, 0xac, 0x1f, 0x07, 0xec, 0xb9, 0x55, 0xdf, 0x76, 0xda, + 0x0b, 0x10, 0x6f, 0xbc, 0x64, 0x8c, 0xcf, 0x42, 0x54, 0x24, 0x56, 0x8c, 0x57, 0xbe, 0x1f, 0x0f, + 0x37, 0x3f, 0x87, 0xa7, 0x39, 0x29, 0x1f, 0x48, 0x39, 0x4b, 0xbd, 0xc4, 0xa2, 0x16, 0xbe, 0xad, + 0x78, 0xaf, 0xcd, 0xe3, 0x67, 0x00, 0x17, 0x58, 0xbb, 0xcc, 0x6e, 0xe2, 0xbb, 0x62, 0xb6, 0xde, + 0x6c, 0xec, 0xa7, 0x35, 0x14, 0x74, 0xea, 0xae, 0x49, 0x29, 0x5e, 0x70, 0x30, 0x70, 0x5d, 0x4f, + 0x7d, 0x23, 0x00, 0x23, 0xbe, 0xf7, 0xf0, 0xf1, 0x05, 0xe8, 0x73, 0x1e, 0x83, 0x54, 0xad, 0xcd, + 0x3d, 0x62, 0x69, 0xfb, 0xa3, 0x12, 0x14, 0x17, 0xfe, 0x22, 0x04, 0xaf, 0x6d, 0xdb, 0x0b, 0xd1, + 0xe2, 0x5b, 0x06, 0x8b, 0xdb, 0x56, 0x5e, 0xbb, 0x4e, 0x2a, 0x33, 0xf5, 0x7b, 0xfe, 0xf3, 0x5d, + 0x12, 0x85, 0xc3, 0x2f, 0x41, 0x0f, 0xe7, 0x53, 0xa4, 0xba, 0x9d, 0x6f, 0xbe, 0x7e, 0x02, 0x9a, + 0xef, 0x92, 0x04, 0xba, 0xec, 0x11, 0xef, 0x6b, 0x85, 0x56, 0xeb, 0xf6, 0x87, 0x41, 0x18, 0xca, + 0xcd, 0x2e, 0x73, 0x5f, 0xc1, 0xbf, 0xf4, 0xc2, 0xe2, 0xa8, 0x3c, 0xf4, 0xea, 0xd5, 0xf5, 0xb2, + 0x5a, 0x90, 0x55, 0x5d, 0x88, 0xe3, 0xac, 0x2f, 0x6b, 0xae, 0xfd, 0x74, 0xd2, 0x8d, 0x65, 0x95, + 0x41, 0x2f, 0xac, 0xce, 0x77, 0x49, 0x11, 0x8e, 0x69, 0x41, 0xc7, 0x57, 0x21, 0x2a, 0xb0, 0xb2, + 0x1d, 0x2c, 0xd8, 0x66, 0xff, 0x6d, 0x8f, 0x97, 0xee, 0x77, 0xf3, 0x5d, 0x12, 0xe8, 0xce, 0x2f, + 0x7c, 0x0c, 0x42, 0xba, 0x66, 0x58, 0x4c, 0x8e, 0xfd, 0x5c, 0xcd, 0x42, 0xc7, 0x03, 0xc7, 0xba, + 0xd8, 0xcb, 0xc1, 0xe3, 0xa1, 0xc4, 0xcf, 0x7f, 0x1e, 0x94, 0xd8, 0x88, 0xe9, 0x5f, 0x43, 0x77, + 0x6b, 0xe8, 0xeb, 0x08, 0x2e, 0x42, 0x88, 0xce, 0xf5, 0xf8, 0xb3, 0x70, 0x06, 0x46, 0x5d, 0xf3, + 0xcd, 0xf4, 0x72, 0x22, 0xc9, 0x85, 0x55, 0x38, 0xe0, 0xe1, 0x38, 0x03, 0xa2, 0x67, 0x76, 0x79, + 0x0d, 0x87, 0xaf, 0x54, 0xae, 0x57, 0xb4, 0xed, 0x0a, 0x9c, 0x82, 0x30, 0xe5, 0xe0, 0xd4, 0xc2, + 0x6a, 0xe6, 0x28, 0xf4, 0x39, 0x68, 0x26, 0x55, 0x1d, 0x86, 0x5d, 0xc0, 0x93, 0x74, 0xbf, 0x65, + 0x75, 0xea, 0x18, 0x84, 0x56, 0x35, 0xc3, 0xca, 0xf4, 0x70, 0x96, 0xb3, 0x87, 0x9d, 0x5c, 0x6c, + 0xc8, 0xae, 0x43, 0x89, 0x55, 0xfa, 0x69, 0xbd, 0x7c, 0xf1, 0x47, 0xdd, 0x30, 0xd8, 0x14, 0x83, + 0xe0, 0x97, 0xbd, 0x12, 0x45, 0x0f, 0x24, 0x51, 0x8f, 0x3c, 0x4f, 0x42, 0x4f, 0x45, 0x93, 0xad, + 0xf2, 0x5e, 0x5f, 0x51, 0xe8, 0xae, 0x68, 0xf9, 0xb2, 0x89, 0x5f, 0x80, 0x70, 0xd5, 0x24, 0x6c, + 0x7c, 0xa8, 0xcd, 0xd3, 0x04, 0x37, 0x13, 0x57, 0x74, 0x6f, 0xcc, 0xcf, 0xc2, 0x7b, 0xaa, 0xc2, + 0x55, 0x93, 0x50, 0x94, 0x6f, 0x22, 0x88, 0x89, 0xf1, 0xfc, 0x43, 0x41, 0xf6, 0x25, 0x96, 0x0b, + 0x1d, 0x1b, 0x49, 0xa3, 0x5e, 0xbb, 0x8e, 0x48, 0xfc, 0xe3, 0xf8, 0x7e, 0xcd, 0x05, 0x61, 0xe2, + 0x69, 0x18, 0xdd, 0xd0, 0x98, 0xdb, 0x16, 0x8c, 0x38, 0xf9, 0x52, 0x0f, 0xcf, 0x84, 0x58, 0x90, + 0x36, 0xcc, 0xc7, 0x70, 0x62, 0x4e, 0xde, 0xa4, 0xc0, 0xa8, 0x03, 0xc4, 0x6b, 0xd7, 0x96, 0xba, + 0x45, 0xb4, 0xaa, 0x25, 0x3e, 0xb8, 0x74, 0xe2, 0x47, 0x35, 0x14, 0x3c, 0x77, 0xda, 0xa4, 0xd4, + 0x23, 0x46, 0xcf, 0x07, 0xc1, 0xe0, 0xd4, 0xe9, 0x2d, 0xf1, 0x63, 0x97, 0xfe, 0x30, 0x5d, 0x05, + 0xe3, 0x61, 0x4d, 0x20, 0x67, 0x98, 0xf2, 0x1c, 0x11, 0x7e, 0x03, 0x86, 0x78, 0xd4, 0xcc, 0xe9, + 0x78, 0xdf, 0x86, 0xcc, 0x74, 0x26, 0x25, 0xce, 0xb5, 0x1d, 0x17, 0x78, 0xc2, 0x02, 0x69, 0x90, + 0xc5, 0xce, 0x6c, 0x80, 0x5d, 0xfa, 0x38, 0x2c, 0xd2, 0xe5, 0x7a, 0xed, 0x80, 0x86, 0xc1, 0x01, + 0xaa, 0xaf, 0x67, 0xd2, 0x4f, 0xf2, 0x10, 0x21, 0xf5, 0x2d, 0x04, 0x07, 0xdb, 0xe0, 0xc5, 0x33, + 0x30, 0x6e, 0xfb, 0xdb, 0xf5, 0x1d, 0x8b, 0xc8, 0x86, 0x52, 0x29, 0x39, 0x47, 0xca, 0x76, 0x2a, + 0x4a, 0x23, 0x78, 0x69, 0x4c, 0x8c, 0xcb, 0xee, 0x58, 0x44, 0xa2, 0xa3, 0x84, 0x04, 0xf0, 0x49, + 0x18, 0xd8, 0x26, 0xeb, 0xa6, 0x56, 0xb8, 0x4e, 0x2c, 0x7e, 0x4e, 0x60, 0x27, 0xa7, 0x0c, 0x2e, + 0xe6, 0x74, 0xb2, 0xd4, 0x6a, 0xba, 0xe7, 0xe3, 0x67, 0x59, 0x4e, 0xfc, 0xb3, 0x10, 0xc4, 0x72, + 0x06, 0x51, 0x2c, 0xe2, 0xa4, 0x8c, 0x89, 0x86, 0x94, 0xf1, 0x51, 0x2e, 0xd7, 0x9c, 0xcb, 0x3d, + 0xe6, 0x97, 0xcb, 0x79, 0x33, 0xb8, 0xab, 0x0f, 0x37, 0x83, 0xf3, 0xe4, 0x6d, 0x2f, 0x3f, 0xcc, + 0xbc, 0xcd, 0x9d, 0xb1, 0x4d, 0x0f, 0xde, 0x7d, 0xb6, 0xa1, 0x84, 0x90, 0x3d, 0xee, 0x17, 0x04, + 0x8f, 0x7c, 0xe5, 0x3f, 0x51, 0x73, 0xf3, 0xbe, 0x23, 0xe2, 0xff, 0x0a, 0xc1, 0x80, 0x28, 0x65, + 0x3e, 0xd2, 0xbf, 0x47, 0xfa, 0xf7, 0x99, 0xeb, 0xdf, 0xb7, 0x23, 0x10, 0xbd, 0x44, 0xac, 0x47, + 0xba, 0xf7, 0x48, 0xf7, 0xfe, 0x87, 0x55, 0x93, 0xfe, 0xef, 0x16, 0x7c, 0x3e, 0x5b, 0x17, 0xb1, + 0xd8, 0x13, 0xf9, 0x30, 0x1c, 0xff, 0xd7, 0x70, 0x6a, 0x17, 0xc1, 0xc8, 0x92, 0x5a, 0x56, 0x0a, + 0xb9, 0xd9, 0xe5, 0xcb, 0xc4, 0x32, 0xd4, 0x82, 0xc9, 0xcb, 0x04, 0x78, 0x11, 0x82, 0x96, 0x52, + 0x12, 0x8f, 0x23, 0x3b, 0x3d, 0x4a, 0xf4, 0x62, 0xca, 0x2b, 0x25, 0x89, 0x22, 0xc1, 0xa3, 0xd0, + 0x73, 0x43, 0x29, 0x57, 0xc5, 0xd1, 0x48, 0xaf, 0x24, 0x7e, 0xe1, 0xd7, 0x5d, 0xcf, 0x51, 0x82, + 0x8c, 0xd0, 0xcc, 0x7d, 0x11, 0xb2, 0x9f, 0x8e, 0xb0, 0xc5, 0xaf, 0x3f, 0x4b, 0xe9, 0xb9, 0x5b, + 0x43, 0x81, 0x38, 0x4a, 0x7d, 0x15, 0xc1, 0x44, 0x03, 0x84, 0x7d, 0xb7, 0xf3, 0x92, 0xa1, 0x55, + 0xf5, 0xec, 0x0e, 0x5e, 0xf2, 0xbc, 0x05, 0xbd, 0xff, 0xe9, 0xf2, 0x47, 0x67, 0xc3, 0xd0, 0xcd, + 0x66, 0xc8, 0x0f, 0xd3, 0x25, 0xfe, 0x23, 0x25, 0xc1, 0xa1, 0x16, 0x5c, 0xb0, 0x4b, 0xcd, 0xd4, + 0x52, 0x9d, 0xef, 0x35, 0xf3, 0x72, 0x87, 0x54, 0x6f, 0x68, 0x81, 0xf3, 0x47, 0x08, 0x0e, 0xb7, + 0x40, 0xba, 0x46, 0x0c, 0x95, 0x98, 0x58, 0x86, 0x48, 0x89, 0x4e, 0x52, 0x5e, 0xdf, 0x11, 0x5f, + 0x49, 0x9d, 0xbd, 0xaf, 0xd9, 0x35, 0x48, 0x4c, 0x0a, 0x97, 0x84, 0xe8, 0x5e, 0xae, 0x33, 0x46, + 0xb1, 0x67, 0x1f, 0x08, 0x3b, 0x93, 0x84, 0x3d, 0xb9, 0xdf, 0x0d, 0xc0, 0xc1, 0x16, 0xe3, 0x66, + 0x15, 0x4b, 0xc1, 0x2f, 0x42, 0x88, 0x2a, 0xbf, 0x58, 0xb4, 0xfb, 0x23, 0x7c, 0x51, 0x25, 0xe5, + 0xe2, 0x1a, 0x29, 0x93, 0x82, 0xa5, 0x19, 0x12, 0xc3, 0x47, 0x95, 0xa1, 0x5a, 0x51, 0x79, 0xfd, + 0xee, 0x3e, 0x95, 0xe1, 0x4a, 0x45, 0xb5, 0x24, 0x86, 0x05, 0xbf, 0x0a, 0x3d, 0x26, 0x5b, 0x0a, + 0xf1, 0x7d, 0xd6, 0xdc, 0x03, 0x09, 0x88, 0xaf, 0xaa, 0x24, 0x50, 0x1e, 0x9f, 0x87, 0x7e, 0x6f, + 0x39, 0x2e, 0x06, 0x50, 0xbf, 0x4f, 0x15, 0xef, 0xc2, 0x51, 0x08, 0x1b, 0x64, 0x83, 0x18, 0xc4, + 0x88, 0x23, 0x0c, 0xd0, 0xc3, 0xef, 0x5c, 0xc5, 0x03, 0x74, 0x20, 0xfb, 0xb8, 0x90, 0x52, 0x22, + 0x15, 0x2b, 0x1e, 0x3c, 0xfe, 0x23, 0xd4, 0xa4, 0x9e, 0x1e, 0xd9, 0xe0, 0x11, 0x18, 0x94, 0xe6, + 0x5e, 0xb8, 0x32, 0xb7, 0x96, 0x97, 0xf3, 0x2b, 0xf9, 0x99, 0x25, 0x79, 0xed, 0xca, 0xe5, 0x78, + 0x17, 0x1e, 0x05, 0x6c, 0x37, 0x5f, 0x9c, 0x59, 0x58, 0x9a, 0x9b, 0x65, 0xed, 0x08, 0x0f, 0xc1, + 0x80, 0xdd, 0x3e, 0xf5, 0xf2, 0xcb, 0xac, 0x31, 0xe0, 0x6e, 0xcc, 0x88, 0xc6, 0xa0, 0xbb, 0xf1, + 0x8c, 0x68, 0x0c, 0xb9, 0x1b, 0x9f, 0x14, 0x8d, 0xdd, 0xee, 0xc6, 0xb3, 0xa2, 0xb1, 0x07, 0xc7, + 0xa1, 0x6f, 0x76, 0x26, 0x3f, 0x23, 0xaf, 0x5c, 0xc9, 0xb3, 0x96, 0x30, 0x6d, 0x59, 0x9a, 0xc9, + 0xcf, 0x2d, 0xe7, 0x5e, 0x91, 0x2f, 0xcf, 0xcd, 0x2c, 0xc7, 0x23, 0xc7, 0xbf, 0x89, 0x00, 0x37, + 0x5b, 0x2b, 0x3e, 0xc0, 0x0e, 0xbf, 0xe5, 0xd9, 0x85, 0xb5, 0xbc, 0xb4, 0x90, 0xbd, 0x92, 0x5f, + 0x58, 0x59, 0x96, 0x97, 0x67, 0x2e, 0xcf, 0xc5, 0xbb, 0x30, 0x86, 0x58, 0x6e, 0x26, 0x37, 0x3f, + 0x27, 0xcf, 0x2f, 0xe4, 0xe5, 0xfc, 0x2b, 0xab, 0x73, 0xde, 0x29, 0xe5, 0x56, 0xae, 0x2c, 0xe7, + 0xa5, 0x57, 0xe2, 0x01, 0x4a, 0x8c, 0x46, 0x16, 0xf2, 0x8b, 0x73, 0xd2, 0xda, 0xc2, 0xca, 0x72, + 0x3c, 0x88, 0x07, 0x20, 0x9a, 0x5f, 0x5a, 0x73, 0x1a, 0x42, 0x54, 0xd4, 0xab, 0x2b, 0xab, 0xb2, + 0x34, 0x77, 0x89, 0xfe, 0xee, 0xc6, 0x61, 0x08, 0xae, 0xae, 0xac, 0xc6, 0x7b, 0x8e, 0x5f, 0x6e, + 0xd2, 0x6f, 0xb7, 0x27, 0xc3, 0xc3, 0x10, 0x5f, 0x59, 0x9d, 0x93, 0x66, 0xf2, 0x2b, 0x12, 0x63, + 0x41, 0x5e, 0x58, 0x8e, 0x77, 0xe1, 0x04, 0x0c, 0x7b, 0x5b, 0x97, 0x57, 0xf2, 0xb4, 0x07, 0x1d, + 0x7f, 0xa6, 0x71, 0x92, 0x54, 0x0b, 0x71, 0x2f, 0x74, 0x33, 0x6e, 0xe3, 0x5d, 0xf4, 0xdf, 0xec, + 0x2b, 0xf9, 0xb9, 0xb5, 0x38, 0xa2, 0x6c, 0x5f, 0x5e, 0x58, 0x5a, 0x5a, 0x58, 0x9b, 0xcb, 0xad, + 0x2c, 0xcf, 0xae, 0xc5, 0x03, 0xd9, 0xdf, 0x42, 0xf7, 0xde, 0x9d, 0xe8, 0x7a, 0xe7, 0xdd, 0x89, + 0xae, 0x8f, 0xde, 0x9d, 0x40, 0x6f, 0xee, 0x4e, 0xa0, 0x6f, 0xef, 0x4e, 0xa0, 0x1f, 0xec, 0x4e, + 0xa0, 0x7b, 0xbb, 0x13, 0xe8, 0x9d, 0xdd, 0x09, 0xf4, 0xe3, 0xdd, 0x09, 0xf4, 0xfe, 0xee, 0x44, + 0xd7, 0x47, 0xbb, 0x13, 0xe8, 0xd7, 0xdf, 0x9b, 0xe8, 0xba, 0xf3, 0xde, 0x04, 0xba, 0xf7, 0xde, + 0x44, 0xd7, 0x3b, 0xef, 0x4d, 0x74, 0x5d, 0xbd, 0x5a, 0xd2, 0xf4, 0xeb, 0xa5, 0xc9, 0x1b, 0x1a, + 0xdd, 0x3d, 0x0c, 0x65, 0xb2, 0x6a, 0x9e, 0x62, 0xff, 0x6c, 0x68, 0xc6, 0xd6, 0x49, 0xdd, 0xd0, + 0x6e, 0xa8, 0x45, 0x62, 0x9c, 0xb4, 0xbb, 0x4f, 0xe9, 0xeb, 0x25, 0xed, 0x14, 0xb9, 0x69, 0xd9, + 0xdf, 0x75, 0x6f, 0xf7, 0x51, 0xf5, 0xf5, 0x1e, 0xf6, 0xf5, 0xef, 0x33, 0xff, 0x1d, 0x00, 0x00, + 0xff, 0xff, 0xf0, 0x48, 0x14, 0xe9, 0x67, 0x5f, 0x00, 0x00, +} + +func (x HeaderOptions) String() string { + s, ok := HeaderOptions_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x LilacCDNMetricsFieldSelector) String() string { + s, ok := LilacCDNMetricsFieldSelector_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x LilacCDNMetricsTag) String() string { + s, ok := LilacCDNMetricsTag_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x LilacCDNMetricsOperatorType) String() string { + s, ok := LilacCDNMetricsOperatorType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x LilacCDNMetricUnit) String() string { + s, ok := LilacCDNMetricUnit_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ProxyTypeHttpsAutoCerts) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyTypeHttpsAutoCerts) if !ok { - that2, ok := that.(CacheOperator_Startswith) + that2, ok := that.(ProxyTypeHttpsAutoCerts) if ok { that1 = &that2 } else { @@ -4865,19 +5460,34 @@ func (this *CacheOperator_Startswith) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Startswith != that1.Startswith { + if this.HttpRedirect != that1.HttpRedirect { + return false + } + if this.AddHsts != that1.AddHsts { + return false + } + if !this.TlsConfig.Equal(that1.TlsConfig) { + return false + } + if that1.ServerHeaderChoice == nil { + if this.ServerHeaderChoice != nil { + return false + } + } else if this.ServerHeaderChoice == nil { + return false + } else if !this.ServerHeaderChoice.Equal(that1.ServerHeaderChoice) { return false } return true } -func (this *CacheOperator_DoesNotStartWith) Equal(that interface{}) bool { +func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheOperator_DoesNotStartWith) + that1, ok := that.(*ProxyTypeHttpsAutoCerts_DefaultHeader) if !ok { - that2, ok := that.(CacheOperator_DoesNotStartWith) + that2, ok := that.(ProxyTypeHttpsAutoCerts_DefaultHeader) if ok { that1 = &that2 } else { @@ -4889,19 +5499,19 @@ func (this *CacheOperator_DoesNotStartWith) Equal(that interface{}) bool { } else if this == nil { return false } - if this.DoesNotStartWith != that1.DoesNotStartWith { + if !this.DefaultHeader.Equal(that1.DefaultHeader) { return false } return true } -func (this *CacheOperator_Endswith) Equal(that interface{}) bool { +func (this *ProxyTypeHttpsAutoCerts_ServerName) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheOperator_Endswith) + that1, ok := that.(*ProxyTypeHttpsAutoCerts_ServerName) if !ok { - that2, ok := that.(CacheOperator_Endswith) + that2, ok := that.(ProxyTypeHttpsAutoCerts_ServerName) if ok { that1 = &that2 } else { @@ -4913,19 +5523,19 @@ func (this *CacheOperator_Endswith) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Endswith != that1.Endswith { + if this.ServerName != that1.ServerName { return false } return true } -func (this *CacheOperator_DoesNotEndWith) Equal(that interface{}) bool { +func (this *ProxyTypeHttpsAutoCerts_AppendServerName) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheOperator_DoesNotEndWith) + that1, ok := that.(*ProxyTypeHttpsAutoCerts_AppendServerName) if !ok { - that2, ok := that.(CacheOperator_DoesNotEndWith) + that2, ok := that.(ProxyTypeHttpsAutoCerts_AppendServerName) if ok { that1 = &that2 } else { @@ -4937,19 +5547,19 @@ func (this *CacheOperator_DoesNotEndWith) Equal(that interface{}) bool { } else if this == nil { return false } - if this.DoesNotEndWith != that1.DoesNotEndWith { + if this.AppendServerName != that1.AppendServerName { return false } return true } -func (this *CacheOperator_MatchRegex) Equal(that interface{}) bool { +func (this *ProxyTypeHttpsAutoCerts_PassThrough) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheOperator_MatchRegex) + that1, ok := that.(*ProxyTypeHttpsAutoCerts_PassThrough) if !ok { - that2, ok := that.(CacheOperator_MatchRegex) + that2, ok := that.(ProxyTypeHttpsAutoCerts_PassThrough) if ok { that1 = &that2 } else { @@ -4961,19 +5571,19 @@ func (this *CacheOperator_MatchRegex) Equal(that interface{}) bool { } else if this == nil { return false } - if this.MatchRegex != that1.MatchRegex { + if !this.PassThrough.Equal(that1.PassThrough) { return false } return true } -func (this *CacheHeaderMatcherType) Equal(that interface{}) bool { +func (this *HeaderControlType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheHeaderMatcherType) + that1, ok := that.(*HeaderControlType) if !ok { - that2, ok := that.(CacheHeaderMatcherType) + that2, ok := that.(HeaderControlType) if ok { that1 = &that2 } else { @@ -4985,22 +5595,48 @@ func (this *CacheHeaderMatcherType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { + if len(this.RequestHeadersToAdd) != len(that1.RequestHeadersToAdd) { return false } - if !this.Operator.Equal(that1.Operator) { + for i := range this.RequestHeadersToAdd { + if !this.RequestHeadersToAdd[i].Equal(that1.RequestHeadersToAdd[i]) { + return false + } + } + if len(this.RequestHeadersToRemove) != len(that1.RequestHeadersToRemove) { + return false + } + for i := range this.RequestHeadersToRemove { + if this.RequestHeadersToRemove[i] != that1.RequestHeadersToRemove[i] { + return false + } + } + if len(this.ResponseHeadersToAdd) != len(that1.ResponseHeadersToAdd) { return false } + for i := range this.ResponseHeadersToAdd { + if !this.ResponseHeadersToAdd[i].Equal(that1.ResponseHeadersToAdd[i]) { + return false + } + } + if len(this.ResponseHeadersToRemove) != len(that1.ResponseHeadersToRemove) { + return false + } + for i := range this.ResponseHeadersToRemove { + if this.ResponseHeadersToRemove[i] != that1.ResponseHeadersToRemove[i] { + return false + } + } return true } -func (this *CDNPathMatcherType) Equal(that interface{}) bool { +func (this *WebApplicationFirewall) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNPathMatcherType) + that1, ok := that.(*WebApplicationFirewall) if !ok { - that2, ok := that.(CDNPathMatcherType) + that2, ok := that.(WebApplicationFirewall) if ok { that1 = &that2 } else { @@ -5012,19 +5648,60 @@ func (this *CDNPathMatcherType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Operator.Equal(that1.Operator) { + if that1.WafChoice == nil { + if this.WafChoice != nil { + return false + } + } else if this.WafChoice == nil { + return false + } else if !this.WafChoice.Equal(that1.WafChoice) { + return false + } + if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { + return false + } + for i := range this.WafExclusionRules { + if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { + return false + } + } + if len(this.DataGuardRules) != len(that1.DataGuardRules) { + return false + } + for i := range this.DataGuardRules { + if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { + return false + } + } + if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { return false } + if len(this.GraphqlRules) != len(that1.GraphqlRules) { + return false + } + for i := range this.GraphqlRules { + if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { + return false + } + } + if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { + return false + } + for i := range this.ProtectedCookies { + if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { + return false + } + } return true } -func (this *CacheCookieMatcherType) Equal(that interface{}) bool { +func (this *WebApplicationFirewall_DisableWaf) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheCookieMatcherType) + that1, ok := that.(*WebApplicationFirewall_DisableWaf) if !ok { - that2, ok := that.(CacheCookieMatcherType) + that2, ok := that.(WebApplicationFirewall_DisableWaf) if ok { that1 = &that2 } else { @@ -5036,22 +5713,19 @@ func (this *CacheCookieMatcherType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { - return false - } - if !this.Operator.Equal(that1.Operator) { + if !this.DisableWaf.Equal(that1.DisableWaf) { return false } return true } -func (this *CacheQueryParameterMatcherType) Equal(that interface{}) bool { +func (this *WebApplicationFirewall_AppFirewall) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheQueryParameterMatcherType) + that1, ok := that.(*WebApplicationFirewall_AppFirewall) if !ok { - that2, ok := that.(CacheQueryParameterMatcherType) + that2, ok := that.(WebApplicationFirewall_AppFirewall) if ok { that1 = &that2 } else { @@ -5063,22 +5737,43 @@ func (this *CacheQueryParameterMatcherType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Key != that1.Key { + if !this.AppFirewall.Equal(that1.AppFirewall) { return false } - if !this.Operator.Equal(that1.Operator) { + return true +} +func (this *WebApplicationFirewall_AppFirewallOnCacheMiss) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*WebApplicationFirewall_AppFirewallOnCacheMiss) + if !ok { + that2, ok := that.(WebApplicationFirewall_AppFirewallOnCacheMiss) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AppFirewallOnCacheMiss.Equal(that1.AppFirewallOnCacheMiss) { return false } return true } -func (this *CDNCacheRuleExpression) Equal(that interface{}) bool { +func (this *CommonSecurityControls) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNCacheRuleExpression) + that1, ok := that.(*CommonSecurityControls) if !ok { - that2, ok := that.(CDNCacheRuleExpression) + that2, ok := that.(CommonSecurityControls) if ok { that1 = &that2 } else { @@ -5090,43 +5785,89 @@ func (this *CDNCacheRuleExpression) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.PathMatch.Equal(that1.PathMatch) { + if that1.ServicePolicyChoice == nil { + if this.ServicePolicyChoice != nil { + return false + } + } else if this.ServicePolicyChoice == nil { + return false + } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { return false } - if len(this.QueryParameters) != len(that1.QueryParameters) { + if that1.IpReputationChoice == nil { + if this.IpReputationChoice != nil { + return false + } + } else if this.IpReputationChoice == nil { + return false + } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { return false } - for i := range this.QueryParameters { - if !this.QueryParameters[i].Equal(that1.QueryParameters[i]) { + if that1.UserIdChoice == nil { + if this.UserIdChoice != nil { return false } + } else if this.UserIdChoice == nil { + return false + } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { + return false } - if len(this.CacheHeaders) != len(that1.CacheHeaders) { + if that1.MaliciousUserDetectionChoice == nil { + if this.MaliciousUserDetectionChoice != nil { + return false + } + } else if this.MaliciousUserDetectionChoice == nil { + return false + } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { return false } - for i := range this.CacheHeaders { - if !this.CacheHeaders[i].Equal(that1.CacheHeaders[i]) { + if that1.ChallengeType == nil { + if this.ChallengeType != nil { return false } + } else if this.ChallengeType == nil { + return false + } else if !this.ChallengeType.Equal(that1.ChallengeType) { + return false } - if len(this.CookieMatcher) != len(that1.CookieMatcher) { + if that1.RateLimitChoice == nil { + if this.RateLimitChoice != nil { + return false + } + } else if this.RateLimitChoice == nil { + return false + } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { return false } - for i := range this.CookieMatcher { - if !this.CookieMatcher[i].Equal(that1.CookieMatcher[i]) { + if len(this.TrustedClients) != len(that1.TrustedClients) { + return false + } + for i := range this.TrustedClients { + if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { + return false + } + } + if len(this.BlockedClients) != len(that1.BlockedClients) { + return false + } + for i := range this.BlockedClients { + if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { return false } } + if !this.CorsPolicy.Equal(that1.CorsPolicy) { + return false + } return true } -func (this *CacheTTLEnableProps) Equal(that interface{}) bool { +func (this *CommonSecurityControls_ServicePoliciesFromNamespace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheTTLEnableProps) + that1, ok := that.(*CommonSecurityControls_ServicePoliciesFromNamespace) if !ok { - that2, ok := that.(CacheTTLEnableProps) + that2, ok := that.(CommonSecurityControls_ServicePoliciesFromNamespace) if ok { that1 = &that2 } else { @@ -5138,25 +5879,19 @@ func (this *CacheTTLEnableProps) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CacheTtl != that1.CacheTtl { - return false - } - if this.IgnoreResponseCookie != that1.IgnoreResponseCookie { - return false - } - if this.CacheOverride != that1.CacheOverride { + if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { return false } return true } -func (this *CacheEligibleOptions) Equal(that interface{}) bool { +func (this *CommonSecurityControls_NoServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions) + that1, ok := that.(*CommonSecurityControls_NoServicePolicies) if !ok { - that2, ok := that.(CacheEligibleOptions) + that2, ok := that.(CommonSecurityControls_NoServicePolicies) if ok { that1 = &that2 } else { @@ -5168,25 +5903,19 @@ func (this *CacheEligibleOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.EligibleForCache == nil { - if this.EligibleForCache != nil { - return false - } - } else if this.EligibleForCache == nil { - return false - } else if !this.EligibleForCache.Equal(that1.EligibleForCache) { + if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { return false } return true } -func (this *CacheEligibleOptions_SchemeHostnameUri) Equal(that interface{}) bool { +func (this *CommonSecurityControls_ActiveServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions_SchemeHostnameUri) + that1, ok := that.(*CommonSecurityControls_ActiveServicePolicies) if !ok { - that2, ok := that.(CacheEligibleOptions_SchemeHostnameUri) + that2, ok := that.(CommonSecurityControls_ActiveServicePolicies) if ok { that1 = &that2 } else { @@ -5198,19 +5927,19 @@ func (this *CacheEligibleOptions_SchemeHostnameUri) Equal(that interface{}) bool } else if this == nil { return false } - if !this.SchemeHostnameUri.Equal(that1.SchemeHostnameUri) { + if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { return false } return true } -func (this *CacheEligibleOptions_SchemeHostnameRequestUri) Equal(that interface{}) bool { +func (this *CommonSecurityControls_DisableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions_SchemeHostnameRequestUri) + that1, ok := that.(*CommonSecurityControls_DisableIpReputation) if !ok { - that2, ok := that.(CacheEligibleOptions_SchemeHostnameRequestUri) + that2, ok := that.(CommonSecurityControls_DisableIpReputation) if ok { that1 = &that2 } else { @@ -5222,19 +5951,19 @@ func (this *CacheEligibleOptions_SchemeHostnameRequestUri) Equal(that interface{ } else if this == nil { return false } - if !this.SchemeHostnameRequestUri.Equal(that1.SchemeHostnameRequestUri) { + if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { return false } return true } -func (this *CacheEligibleOptions_HostnameUri) Equal(that interface{}) bool { +func (this *CommonSecurityControls_EnableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions_HostnameUri) + that1, ok := that.(*CommonSecurityControls_EnableIpReputation) if !ok { - that2, ok := that.(CacheEligibleOptions_HostnameUri) + that2, ok := that.(CommonSecurityControls_EnableIpReputation) if ok { that1 = &that2 } else { @@ -5246,19 +5975,19 @@ func (this *CacheEligibleOptions_HostnameUri) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HostnameUri.Equal(that1.HostnameUri) { + if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { return false } return true } -func (this *CacheEligibleOptions_SchemeHostnameUriQuery) Equal(that interface{}) bool { +func (this *CommonSecurityControls_IpReputationOnCacheMiss) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions_SchemeHostnameUriQuery) + that1, ok := that.(*CommonSecurityControls_IpReputationOnCacheMiss) if !ok { - that2, ok := that.(CacheEligibleOptions_SchemeHostnameUriQuery) + that2, ok := that.(CommonSecurityControls_IpReputationOnCacheMiss) if ok { that1 = &that2 } else { @@ -5270,19 +5999,19 @@ func (this *CacheEligibleOptions_SchemeHostnameUriQuery) Equal(that interface{}) } else if this == nil { return false } - if !this.SchemeHostnameUriQuery.Equal(that1.SchemeHostnameUriQuery) { + if !this.IpReputationOnCacheMiss.Equal(that1.IpReputationOnCacheMiss) { return false } return true } -func (this *CacheEligibleOptions_SchemeProxyHostUri) Equal(that interface{}) bool { +func (this *CommonSecurityControls_UserIdClientIp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions_SchemeProxyHostUri) + that1, ok := that.(*CommonSecurityControls_UserIdClientIp) if !ok { - that2, ok := that.(CacheEligibleOptions_SchemeProxyHostUri) + that2, ok := that.(CommonSecurityControls_UserIdClientIp) if ok { that1 = &that2 } else { @@ -5294,19 +6023,19 @@ func (this *CacheEligibleOptions_SchemeProxyHostUri) Equal(that interface{}) boo } else if this == nil { return false } - if !this.SchemeProxyHostUri.Equal(that1.SchemeProxyHostUri) { + if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { return false } return true } -func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) Equal(that interface{}) bool { +func (this *CommonSecurityControls_UserIdentification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheEligibleOptions_SchemeProxyHostRequestUri) + that1, ok := that.(*CommonSecurityControls_UserIdentification) if !ok { - that2, ok := that.(CacheEligibleOptions_SchemeProxyHostRequestUri) + that2, ok := that.(CommonSecurityControls_UserIdentification) if ok { that1 = &that2 } else { @@ -5318,19 +6047,19 @@ func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) Equal(that interface } else if this == nil { return false } - if !this.SchemeProxyHostRequestUri.Equal(that1.SchemeProxyHostRequestUri) { + if !this.UserIdentification.Equal(that1.UserIdentification) { return false } return true } -func (this *CDNCacheRule) Equal(that interface{}) bool { +func (this *CommonSecurityControls_DisableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNCacheRule) + that1, ok := that.(*CommonSecurityControls_DisableMaliciousUserDetection) if !ok { - that2, ok := that.(CDNCacheRule) + that2, ok := that.(CommonSecurityControls_DisableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -5342,36 +6071,43 @@ func (this *CDNCacheRule) Equal(that interface{}) bool { } else if this == nil { return false } - if this.RuleName != that1.RuleName { + if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { return false } - if len(this.RuleExpressionList) != len(that1.RuleExpressionList) { - return false + return true +} +func (this *CommonSecurityControls_EnableMaliciousUserDetection) Equal(that interface{}) bool { + if that == nil { + return this == nil } - for i := range this.RuleExpressionList { - if !this.RuleExpressionList[i].Equal(that1.RuleExpressionList[i]) { + + that1, ok := that.(*CommonSecurityControls_EnableMaliciousUserDetection) + if !ok { + that2, ok := that.(CommonSecurityControls_EnableMaliciousUserDetection) + if ok { + that1 = &that2 + } else { return false } } - if that1.CacheActions == nil { - if this.CacheActions != nil { - return false - } - } else if this.CacheActions == nil { + if that1 == nil { + return this == nil + } else if this == nil { return false - } else if !this.CacheActions.Equal(that1.CacheActions) { + } + if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { return false } return true } -func (this *CDNCacheRule_CacheBypass) Equal(that interface{}) bool { +func (this *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNCacheRule_CacheBypass) + that1, ok := that.(*CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) if !ok { - that2, ok := that.(CDNCacheRule_CacheBypass) + that2, ok := that.(CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) if ok { that1 = &that2 } else { @@ -5383,19 +6119,19 @@ func (this *CDNCacheRule_CacheBypass) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.CacheBypass.Equal(that1.CacheBypass) { + if !this.MaliciousUserDetectionOnCacheMiss.Equal(that1.MaliciousUserDetectionOnCacheMiss) { return false } return true } -func (this *CDNCacheRule_EligibleForCache) Equal(that interface{}) bool { +func (this *CommonSecurityControls_NoChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNCacheRule_EligibleForCache) + that1, ok := that.(*CommonSecurityControls_NoChallenge) if !ok { - that2, ok := that.(CDNCacheRule_EligibleForCache) + that2, ok := that.(CommonSecurityControls_NoChallenge) if ok { that1 = &that2 } else { @@ -5407,19 +6143,19 @@ func (this *CDNCacheRule_EligibleForCache) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.EligibleForCache.Equal(that1.EligibleForCache) { + if !this.NoChallenge.Equal(that1.NoChallenge) { return false } return true } -func (this *DefaultCacheTTLProps) Equal(that interface{}) bool { +func (this *CommonSecurityControls_EnableChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultCacheTTLProps) + that1, ok := that.(*CommonSecurityControls_EnableChallenge) if !ok { - that2, ok := that.(DefaultCacheTTLProps) + that2, ok := that.(CommonSecurityControls_EnableChallenge) if ok { that1 = &that2 } else { @@ -5431,19 +6167,19 @@ func (this *DefaultCacheTTLProps) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CacheTtl != that1.CacheTtl { + if !this.EnableChallenge.Equal(that1.EnableChallenge) { return false } return true } -func (this *DefaultCacheAction) Equal(that interface{}) bool { +func (this *CommonSecurityControls_ChallengeOnCacheMiss) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultCacheAction) + that1, ok := that.(*CommonSecurityControls_ChallengeOnCacheMiss) if !ok { - that2, ok := that.(DefaultCacheAction) + that2, ok := that.(CommonSecurityControls_ChallengeOnCacheMiss) if ok { that1 = &that2 } else { @@ -5455,25 +6191,19 @@ func (this *DefaultCacheAction) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.CacheActions == nil { - if this.CacheActions != nil { - return false - } - } else if this.CacheActions == nil { - return false - } else if !this.CacheActions.Equal(that1.CacheActions) { + if !this.ChallengeOnCacheMiss.Equal(that1.ChallengeOnCacheMiss) { return false } return true } -func (this *DefaultCacheAction_EligibleForCache) Equal(that interface{}) bool { +func (this *CommonSecurityControls_JsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultCacheAction_EligibleForCache) + that1, ok := that.(*CommonSecurityControls_JsChallenge) if !ok { - that2, ok := that.(DefaultCacheAction_EligibleForCache) + that2, ok := that.(CommonSecurityControls_JsChallenge) if ok { that1 = &that2 } else { @@ -5485,19 +6215,19 @@ func (this *DefaultCacheAction_EligibleForCache) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.EligibleForCache.Equal(that1.EligibleForCache) { + if !this.JsChallenge.Equal(that1.JsChallenge) { return false } return true } -func (this *DefaultCacheAction_CacheTtlDefault) Equal(that interface{}) bool { +func (this *CommonSecurityControls_CaptchaChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultCacheAction_CacheTtlDefault) + that1, ok := that.(*CommonSecurityControls_CaptchaChallenge) if !ok { - that2, ok := that.(DefaultCacheAction_CacheTtlDefault) + that2, ok := that.(CommonSecurityControls_CaptchaChallenge) if ok { that1 = &that2 } else { @@ -5509,19 +6239,19 @@ func (this *DefaultCacheAction_CacheTtlDefault) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CacheTtlDefault != that1.CacheTtlDefault { + if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { return false } return true } -func (this *DefaultCacheAction_CacheTtlOverride) Equal(that interface{}) bool { +func (this *CommonSecurityControls_PolicyBasedChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultCacheAction_CacheTtlOverride) + that1, ok := that.(*CommonSecurityControls_PolicyBasedChallenge) if !ok { - that2, ok := that.(DefaultCacheAction_CacheTtlOverride) + that2, ok := that.(CommonSecurityControls_PolicyBasedChallenge) if ok { that1 = &that2 } else { @@ -5533,19 +6263,19 @@ func (this *DefaultCacheAction_CacheTtlOverride) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CacheTtlOverride != that1.CacheTtlOverride { + if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { return false } return true } -func (this *DefaultCacheAction_CacheDisabled) Equal(that interface{}) bool { +func (this *CommonSecurityControls_DisableRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DefaultCacheAction_CacheDisabled) + that1, ok := that.(*CommonSecurityControls_DisableRateLimit) if !ok { - that2, ok := that.(DefaultCacheAction_CacheDisabled) + that2, ok := that.(CommonSecurityControls_DisableRateLimit) if ok { that1 = &that2 } else { @@ -5557,19 +6287,19 @@ func (this *DefaultCacheAction_CacheDisabled) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.CacheDisabled.Equal(that1.CacheDisabled) { + if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { return false } return true } -func (this *CacheOptions) Equal(that interface{}) bool { +func (this *CommonSecurityControls_ApiRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheOptions) + that1, ok := that.(*CommonSecurityControls_ApiRateLimit) if !ok { - that2, ok := that.(CacheOptions) + that2, ok := that.(CommonSecurityControls_ApiRateLimit) if ok { that1 = &that2 } else { @@ -5581,27 +6311,19 @@ func (this *CacheOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DefaultCacheAction.Equal(that1.DefaultCacheAction) { + if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { return false } - if len(this.CacheRules) != len(that1.CacheRules) { - return false - } - for i := range this.CacheRules { - if !this.CacheRules[i].Equal(that1.CacheRules[i]) { - return false - } - } return true } -func (this *CacheTTLOptionsType) Equal(that interface{}) bool { +func (this *CommonSecurityControls_RateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheTTLOptionsType) + that1, ok := that.(*CommonSecurityControls_RateLimit) if !ok { - that2, ok := that.(CacheTTLOptionsType) + that2, ok := that.(CommonSecurityControls_RateLimit) if ok { that1 = &that2 } else { @@ -5613,25 +6335,19 @@ func (this *CacheTTLOptionsType) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.TtlOptions == nil { - if this.TtlOptions != nil { - return false - } - } else if this.TtlOptions == nil { - return false - } else if !this.TtlOptions.Equal(that1.TtlOptions) { + if !this.RateLimit.Equal(that1.RateLimit) { return false } return true } -func (this *CacheTTLOptionsType_CacheTtlDefault) Equal(that interface{}) bool { +func (this *ApiProtection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheTTLOptionsType_CacheTtlDefault) + that1, ok := that.(*ApiProtection) if !ok { - that2, ok := that.(CacheTTLOptionsType_CacheTtlDefault) + that2, ok := that.(ApiProtection) if ok { that1 = &that2 } else { @@ -5643,19 +6359,40 @@ func (this *CacheTTLOptionsType_CacheTtlDefault) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CacheTtlDefault != that1.CacheTtlDefault { + if that1.ApiDefinitionChoice == nil { + if this.ApiDefinitionChoice != nil { + return false + } + } else if this.ApiDefinitionChoice == nil { + return false + } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { + return false + } + if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { + return false + } + if !this.JwtValidation.Equal(that1.JwtValidation) { + return false + } + if that1.ApiDiscoveryChoice == nil { + if this.ApiDiscoveryChoice != nil { + return false + } + } else if this.ApiDiscoveryChoice == nil { + return false + } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { return false } return true } -func (this *CacheTTLOptionsType_CacheTtlOverride) Equal(that interface{}) bool { +func (this *ApiProtection_DisableApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheTTLOptionsType_CacheTtlOverride) + that1, ok := that.(*ApiProtection_DisableApiDefinition) if !ok { - that2, ok := that.(CacheTTLOptionsType_CacheTtlOverride) + that2, ok := that.(ApiProtection_DisableApiDefinition) if ok { that1 = &that2 } else { @@ -5667,19 +6404,19 @@ func (this *CacheTTLOptionsType_CacheTtlOverride) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CacheTtlOverride != that1.CacheTtlOverride { + if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { return false } return true } -func (this *CacheTTLOptionsType_CacheDisabled) Equal(that interface{}) bool { +func (this *ApiProtection_ApiSpecification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CacheTTLOptionsType_CacheDisabled) + that1, ok := that.(*ApiProtection_ApiSpecification) if !ok { - that2, ok := that.(CacheTTLOptionsType_CacheDisabled) + that2, ok := that.(ApiProtection_ApiSpecification) if ok { that1 = &that2 } else { @@ -5691,19 +6428,19 @@ func (this *CacheTTLOptionsType_CacheDisabled) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.CacheDisabled.Equal(that1.CacheDisabled) { + if !this.ApiSpecification.Equal(that1.ApiSpecification) { return false } return true } -func (this *AdvancedOptionsType) Equal(that interface{}) bool { +func (this *ApiProtection_ApiSpecificationOnCacheMiss) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AdvancedOptionsType) + that1, ok := that.(*ApiProtection_ApiSpecificationOnCacheMiss) if !ok { - that2, ok := that.(AdvancedOptionsType) + that2, ok := that.(ApiProtection_ApiSpecificationOnCacheMiss) if ok { that1 = &that2 } else { @@ -5715,31 +6452,19 @@ func (this *AdvancedOptionsType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HeaderOptions.Equal(that1.HeaderOptions) { - return false - } - if !this.SecurityOptions.Equal(that1.SecurityOptions) { - return false - } - if !this.LoggingOptions.Equal(that1.LoggingOptions) { - return false - } - if !this.CacheTtlOptions.Equal(that1.CacheTtlOptions) { - return false - } - if !this.CacheOptions.Equal(that1.CacheOptions) { + if !this.ApiSpecificationOnCacheMiss.Equal(that1.ApiSpecificationOnCacheMiss) { return false } return true } -func (this *CDNTLSConfig) Equal(that interface{}) bool { +func (this *ApiProtection_EnableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNTLSConfig) + that1, ok := that.(*ApiProtection_EnableApiDiscovery) if !ok { - that2, ok := that.(CDNTLSConfig) + that2, ok := that.(ApiProtection_EnableApiDiscovery) if ok { that1 = &that2 } else { @@ -5751,25 +6476,19 @@ func (this *CDNTLSConfig) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.Choice == nil { - if this.Choice != nil { - return false - } - } else if this.Choice == nil { - return false - } else if !this.Choice.Equal(that1.Choice) { + if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { return false } return true } -func (this *CDNTLSConfig_Tls_12Plus) Equal(that interface{}) bool { +func (this *ApiProtection_DisableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNTLSConfig_Tls_12Plus) + that1, ok := that.(*ApiProtection_DisableApiDiscovery) if !ok { - that2, ok := that.(CDNTLSConfig_Tls_12Plus) + that2, ok := that.(ApiProtection_DisableApiDiscovery) if ok { that1 = &that2 } else { @@ -5781,19 +6500,19 @@ func (this *CDNTLSConfig_Tls_12Plus) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Tls_12Plus.Equal(that1.Tls_12Plus) { + if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { return false } return true } -func (this *CDNTLSConfig_Tls_11Plus) Equal(that interface{}) bool { +func (this *ApiProtection_ApiDiscoveryOnCacheMiss) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNTLSConfig_Tls_11Plus) + that1, ok := that.(*ApiProtection_ApiDiscoveryOnCacheMiss) if !ok { - that2, ok := that.(CDNTLSConfig_Tls_11Plus) + that2, ok := that.(ApiProtection_ApiDiscoveryOnCacheMiss) if ok { that1 = &that2 } else { @@ -5805,19 +6524,19 @@ func (this *CDNTLSConfig_Tls_11Plus) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Tls_11Plus.Equal(that1.Tls_11Plus) { + if !this.ApiDiscoveryOnCacheMiss.Equal(that1.ApiDiscoveryOnCacheMiss) { return false } return true } -func (this *CDNHTTPSAutoCertsType) Equal(that interface{}) bool { +func (this *SecurityOptionsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNHTTPSAutoCertsType) + that1, ok := that.(*SecurityOptionsType) if !ok { - that2, ok := that.(CDNHTTPSAutoCertsType) + that2, ok := that.(SecurityOptionsType) if ok { that1 = &that2 } else { @@ -5829,25 +6548,34 @@ func (this *CDNHTTPSAutoCertsType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.HttpRedirect != that1.HttpRedirect { + if !this.IpFiltering.Equal(that1.IpFiltering) { return false } - if this.AddHsts != that1.AddHsts { + if !this.GeoFiltering.Equal(that1.GeoFiltering) { return false } - if !this.TlsConfig.Equal(that1.TlsConfig) { + if !this.AuthOptions.Equal(that1.AuthOptions) { + return false + } + if !this.WebAppFirewall.Equal(that1.WebAppFirewall) { + return false + } + if !this.ApiProtection.Equal(that1.ApiProtection) { + return false + } + if !this.CommonSecurityControls.Equal(that1.CommonSecurityControls) { return false } return true } -func (this *CDNDownstreamTlsParamsType) Equal(that interface{}) bool { +func (this *LoggingOptionsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNDownstreamTlsParamsType) + that1, ok := that.(*LoggingOptionsType) if !ok { - that2, ok := that.(CDNDownstreamTlsParamsType) + that2, ok := that.(LoggingOptionsType) if ok { that1 = &that2 } else { @@ -5859,27 +6587,22 @@ func (this *CDNDownstreamTlsParamsType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.TlsConfig.Equal(that1.TlsConfig) { + if !this.ClientLogOptions.Equal(that1.ClientLogOptions) { return false } - if len(this.TlsCertificates) != len(that1.TlsCertificates) { + if !this.OriginLogOptions.Equal(that1.OriginLogOptions) { return false } - for i := range this.TlsCertificates { - if !this.TlsCertificates[i].Equal(that1.TlsCertificates[i]) { - return false - } - } return true } -func (this *CDNHTTPSCustomCertsType) Equal(that interface{}) bool { +func (this *CDNCacheRuleExpressionList) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNHTTPSCustomCertsType) + that1, ok := that.(*CDNCacheRuleExpressionList) if !ok { - that2, ok := that.(CDNHTTPSCustomCertsType) + that2, ok := that.(CDNCacheRuleExpressionList) if ok { that1 = &that2 } else { @@ -5891,25 +6614,27 @@ func (this *CDNHTTPSCustomCertsType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.HttpRedirect != that1.HttpRedirect { + if this.ExpressionName != that1.ExpressionName { return false } - if this.AddHsts != that1.AddHsts { + if len(this.CacheRuleExpression) != len(that1.CacheRuleExpression) { return false } - if !this.TlsParameters.Equal(that1.TlsParameters) { - return false + for i := range this.CacheRuleExpression { + if !this.CacheRuleExpression[i].Equal(that1.CacheRuleExpression[i]) { + return false + } } return true } -func (this *GlobalSpecType) Equal(that interface{}) bool { +func (this *CacheOperator) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType) + that1, ok := that.(*CacheOperator) if !ok { - that2, ok := that.(GlobalSpecType) + that2, ok := that.(CacheOperator) if ok { that1 = &that2 } else { @@ -5921,76 +6646,25 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Domains) != len(that1.Domains) { - return false - } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { - return false - } - } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { - return false - } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false - } - if this.AddLocation != that1.AddLocation { - return false - } - if !this.MoreOption.Equal(that1.MoreOption) { - return false - } - if !this.OriginPool.Equal(that1.OriginPool) { - return false - } - if !this.ViewInternal.Equal(that1.ViewInternal) { - return false - } - if this.HostName != that1.HostName { - return false - } - if len(this.DnsInfo) != len(that1.DnsInfo) { - return false - } - for i := range this.DnsInfo { - if !this.DnsInfo[i].Equal(that1.DnsInfo[i]) { + if that1.CacheOperator == nil { + if this.CacheOperator != nil { return false } - } - if this.State != that1.State { - return false - } - if this.AutoCertState != that1.AutoCertState { - return false - } - if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { - return false - } - if len(this.ServiceDomains) != len(that1.ServiceDomains) { + } else if this.CacheOperator == nil { return false - } - for i := range this.ServiceDomains { - if !this.ServiceDomains[i].Equal(that1.ServiceDomains[i]) { - return false - } - } - if this.CertState != that1.CertState { + } else if !this.CacheOperator.Equal(that1.CacheOperator) { return false } return true } -func (this *GlobalSpecType_Http) Equal(that interface{}) bool { +func (this *CacheOperator_Equals) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_Http) + that1, ok := that.(*CacheOperator_Equals) if !ok { - that2, ok := that.(GlobalSpecType_Http) + that2, ok := that.(CacheOperator_Equals) if ok { that1 = &that2 } else { @@ -6002,19 +6676,19 @@ func (this *GlobalSpecType_Http) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Http.Equal(that1.Http) { + if this.Equals != that1.Equals { return false } return true } -func (this *GlobalSpecType_HttpsAutoCert) Equal(that interface{}) bool { +func (this *CacheOperator_DoesNotEqual) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_HttpsAutoCert) + that1, ok := that.(*CacheOperator_DoesNotEqual) if !ok { - that2, ok := that.(GlobalSpecType_HttpsAutoCert) + that2, ok := that.(CacheOperator_DoesNotEqual) if ok { that1 = &that2 } else { @@ -6026,19 +6700,19 @@ func (this *GlobalSpecType_HttpsAutoCert) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + if this.DoesNotEqual != that1.DoesNotEqual { return false } return true } -func (this *GlobalSpecType_Https) Equal(that interface{}) bool { +func (this *CacheOperator_Contains) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_Https) + that1, ok := that.(*CacheOperator_Contains) if !ok { - that2, ok := that.(GlobalSpecType_Https) + that2, ok := that.(CacheOperator_Contains) if ok { that1 = &that2 } else { @@ -6050,19 +6724,19 @@ func (this *GlobalSpecType_Https) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Https.Equal(that1.Https) { + if this.Contains != that1.Contains { return false } return true } -func (this *IpFilteringOptions) Equal(that interface{}) bool { +func (this *CacheOperator_DoesNotContain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*IpFilteringOptions) + that1, ok := that.(*CacheOperator_DoesNotContain) if !ok { - that2, ok := that.(IpFilteringOptions) + that2, ok := that.(CacheOperator_DoesNotContain) if ok { that1 = &that2 } else { @@ -6074,25 +6748,19 @@ func (this *IpFilteringOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.IpFilteringType == nil { - if this.IpFilteringType != nil { - return false - } - } else if this.IpFilteringType == nil { - return false - } else if !this.IpFilteringType.Equal(that1.IpFilteringType) { + if this.DoesNotContain != that1.DoesNotContain { return false } return true } -func (this *IpFilteringOptions_AllowList) Equal(that interface{}) bool { +func (this *CacheOperator_Startswith) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*IpFilteringOptions_AllowList) + that1, ok := that.(*CacheOperator_Startswith) if !ok { - that2, ok := that.(IpFilteringOptions_AllowList) + that2, ok := that.(CacheOperator_Startswith) if ok { that1 = &that2 } else { @@ -6104,19 +6772,19 @@ func (this *IpFilteringOptions_AllowList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AllowList.Equal(that1.AllowList) { + if this.Startswith != that1.Startswith { return false } return true } -func (this *IpFilteringOptions_BlockList) Equal(that interface{}) bool { +func (this *CacheOperator_DoesNotStartWith) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*IpFilteringOptions_BlockList) + that1, ok := that.(*CacheOperator_DoesNotStartWith) if !ok { - that2, ok := that.(IpFilteringOptions_BlockList) + that2, ok := that.(CacheOperator_DoesNotStartWith) if ok { that1 = &that2 } else { @@ -6128,19 +6796,19 @@ func (this *IpFilteringOptions_BlockList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.BlockList.Equal(that1.BlockList) { + if this.DoesNotStartWith != that1.DoesNotStartWith { return false } return true } -func (this *GeoFilteringOptions) Equal(that interface{}) bool { +func (this *CacheOperator_Endswith) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GeoFilteringOptions) + that1, ok := that.(*CacheOperator_Endswith) if !ok { - that2, ok := that.(GeoFilteringOptions) + that2, ok := that.(CacheOperator_Endswith) if ok { that1 = &that2 } else { @@ -6152,25 +6820,19 @@ func (this *GeoFilteringOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.GeoFilteringType == nil { - if this.GeoFilteringType != nil { - return false - } - } else if this.GeoFilteringType == nil { - return false - } else if !this.GeoFilteringType.Equal(that1.GeoFilteringType) { + if this.Endswith != that1.Endswith { return false } return true } -func (this *GeoFilteringOptions_AllowList) Equal(that interface{}) bool { +func (this *CacheOperator_DoesNotEndWith) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GeoFilteringOptions_AllowList) + that1, ok := that.(*CacheOperator_DoesNotEndWith) if !ok { - that2, ok := that.(GeoFilteringOptions_AllowList) + that2, ok := that.(CacheOperator_DoesNotEndWith) if ok { that1 = &that2 } else { @@ -6182,19 +6844,19 @@ func (this *GeoFilteringOptions_AllowList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AllowList.Equal(that1.AllowList) { + if this.DoesNotEndWith != that1.DoesNotEndWith { return false } return true } -func (this *GeoFilteringOptions_BlockList) Equal(that interface{}) bool { +func (this *CacheOperator_MatchRegex) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GeoFilteringOptions_BlockList) + that1, ok := that.(*CacheOperator_MatchRegex) if !ok { - that2, ok := that.(GeoFilteringOptions_BlockList) + that2, ok := that.(CacheOperator_MatchRegex) if ok { that1 = &that2 } else { @@ -6206,19 +6868,19 @@ func (this *GeoFilteringOptions_BlockList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.BlockList.Equal(that1.BlockList) { + if this.MatchRegex != that1.MatchRegex { return false } return true } -func (this *LogHeaderOptions) Equal(that interface{}) bool { +func (this *CacheHeaderMatcherType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LogHeaderOptions) + that1, ok := that.(*CacheHeaderMatcherType) if !ok { - that2, ok := that.(LogHeaderOptions) + that2, ok := that.(CacheHeaderMatcherType) if ok { that1 = &that2 } else { @@ -6230,24 +6892,22 @@ func (this *LogHeaderOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.HeaderList) != len(that1.HeaderList) { + if this.Name != that1.Name { return false } - for i := range this.HeaderList { - if this.HeaderList[i] != that1.HeaderList[i] { - return false - } + if !this.Operator.Equal(that1.Operator) { + return false } return true } -func (this *CDNCustomAuthentication) Equal(that interface{}) bool { +func (this *CDNPathMatcherType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNCustomAuthentication) + that1, ok := that.(*CDNPathMatcherType) if !ok { - that2, ok := that.(CDNCustomAuthentication) + that2, ok := that.(CDNPathMatcherType) if ok { that1 = &that2 } else { @@ -6259,19 +6919,19 @@ func (this *CDNCustomAuthentication) Equal(that interface{}) bool { } else if this == nil { return false } - if this.CustomAuthConfig != that1.CustomAuthConfig { + if !this.Operator.Equal(that1.Operator) { return false } return true } -func (this *AuthenticationOptions) Equal(that interface{}) bool { +func (this *CacheCookieMatcherType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AuthenticationOptions) + that1, ok := that.(*CacheCookieMatcherType) if !ok { - that2, ok := that.(AuthenticationOptions) + that2, ok := that.(CacheCookieMatcherType) if ok { that1 = &that2 } else { @@ -6283,25 +6943,22 @@ func (this *AuthenticationOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.AuthOptions == nil { - if this.AuthOptions != nil { - return false - } - } else if this.AuthOptions == nil { + if this.Name != that1.Name { return false - } else if !this.AuthOptions.Equal(that1.AuthOptions) { + } + if !this.Operator.Equal(that1.Operator) { return false } return true } -func (this *AuthenticationOptions_DisableAuth) Equal(that interface{}) bool { +func (this *CacheQueryParameterMatcherType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AuthenticationOptions_DisableAuth) + that1, ok := that.(*CacheQueryParameterMatcherType) if !ok { - that2, ok := that.(AuthenticationOptions_DisableAuth) + that2, ok := that.(CacheQueryParameterMatcherType) if ok { that1 = &that2 } else { @@ -6313,19 +6970,22 @@ func (this *AuthenticationOptions_DisableAuth) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableAuth.Equal(that1.DisableAuth) { + if this.Key != that1.Key { + return false + } + if !this.Operator.Equal(that1.Operator) { return false } return true } -func (this *AuthenticationOptions_Jwt) Equal(that interface{}) bool { +func (this *CDNCacheRuleExpression) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AuthenticationOptions_Jwt) + that1, ok := that.(*CDNCacheRuleExpression) if !ok { - that2, ok := that.(AuthenticationOptions_Jwt) + that2, ok := that.(CDNCacheRuleExpression) if ok { that1 = &that2 } else { @@ -6337,19 +6997,43 @@ func (this *AuthenticationOptions_Jwt) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Jwt.Equal(that1.Jwt) { + if !this.PathMatch.Equal(that1.PathMatch) { + return false + } + if len(this.QueryParameters) != len(that1.QueryParameters) { + return false + } + for i := range this.QueryParameters { + if !this.QueryParameters[i].Equal(that1.QueryParameters[i]) { + return false + } + } + if len(this.CacheHeaders) != len(that1.CacheHeaders) { + return false + } + for i := range this.CacheHeaders { + if !this.CacheHeaders[i].Equal(that1.CacheHeaders[i]) { + return false + } + } + if len(this.CookieMatcher) != len(that1.CookieMatcher) { return false } + for i := range this.CookieMatcher { + if !this.CookieMatcher[i].Equal(that1.CookieMatcher[i]) { + return false + } + } return true } -func (this *AuthenticationOptions_Custom) Equal(that interface{}) bool { +func (this *CacheTTLEnableProps) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AuthenticationOptions_Custom) + that1, ok := that.(*CacheTTLEnableProps) if !ok { - that2, ok := that.(AuthenticationOptions_Custom) + that2, ok := that.(CacheTTLEnableProps) if ok { that1 = &that2 } else { @@ -6361,19 +7045,25 @@ func (this *AuthenticationOptions_Custom) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Custom.Equal(that1.Custom) { + if this.CacheTtl != that1.CacheTtl { + return false + } + if this.IgnoreResponseCookie != that1.IgnoreResponseCookie { + return false + } + if this.CacheOverride != that1.CacheOverride { return false } return true } -func (this *CDNOriginServerType) Equal(that interface{}) bool { +func (this *CacheEligibleOptions) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNOriginServerType) + that1, ok := that.(*CacheEligibleOptions) if !ok { - that2, ok := that.(CDNOriginServerType) + that2, ok := that.(CacheEligibleOptions) if ok { that1 = &that2 } else { @@ -6385,28 +7075,25 @@ func (this *CDNOriginServerType) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.Choice == nil { - if this.Choice != nil { + if that1.EligibleForCache == nil { + if this.EligibleForCache != nil { return false } - } else if this.Choice == nil { - return false - } else if !this.Choice.Equal(that1.Choice) { + } else if this.EligibleForCache == nil { return false - } - if this.Port != that1.Port { + } else if !this.EligibleForCache.Equal(that1.EligibleForCache) { return false } return true } -func (this *CDNOriginServerType_PublicIp) Equal(that interface{}) bool { +func (this *CacheEligibleOptions_SchemeHostnameUri) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNOriginServerType_PublicIp) + that1, ok := that.(*CacheEligibleOptions_SchemeHostnameUri) if !ok { - that2, ok := that.(CDNOriginServerType_PublicIp) + that2, ok := that.(CacheEligibleOptions_SchemeHostnameUri) if ok { that1 = &that2 } else { @@ -6418,19 +7105,19 @@ func (this *CDNOriginServerType_PublicIp) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.PublicIp.Equal(that1.PublicIp) { + if !this.SchemeHostnameUri.Equal(that1.SchemeHostnameUri) { return false } return true } -func (this *CDNOriginServerType_PublicName) Equal(that interface{}) bool { +func (this *CacheEligibleOptions_SchemeHostnameRequestUri) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CDNOriginServerType_PublicName) + that1, ok := that.(*CacheEligibleOptions_SchemeHostnameRequestUri) if !ok { - that2, ok := that.(CDNOriginServerType_PublicName) + that2, ok := that.(CacheEligibleOptions_SchemeHostnameRequestUri) if ok { that1 = &that2 } else { @@ -6442,19 +7129,19 @@ func (this *CDNOriginServerType_PublicName) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.PublicName.Equal(that1.PublicName) { + if !this.SchemeHostnameRequestUri.Equal(that1.SchemeHostnameRequestUri) { return false } return true } -func (this *CdnOriginPoolType) Equal(that interface{}) bool { +func (this *CacheEligibleOptions_HostnameUri) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CdnOriginPoolType) + that1, ok := that.(*CacheEligibleOptions_HostnameUri) if !ok { - that2, ok := that.(CdnOriginPoolType) + that2, ok := that.(CacheEligibleOptions_HostnameUri) if ok { that1 = &that2 } else { @@ -6466,45 +7153,19 @@ func (this *CdnOriginPoolType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.PublicName.Equal(that1.PublicName) { - return false - } - if that1.TlsChoice == nil { - if this.TlsChoice != nil { - return false - } - } else if this.TlsChoice == nil { - return false - } else if !this.TlsChoice.Equal(that1.TlsChoice) { - return false - } - if len(this.OriginServers) != len(that1.OriginServers) { - return false - } - for i := range this.OriginServers { - if !this.OriginServers[i].Equal(that1.OriginServers[i]) { - return false - } - } - if this.FollowOriginRedirect != that1.FollowOriginRedirect { - return false - } - if this.OriginRequestTimeout != that1.OriginRequestTimeout { - return false - } - if !this.MoreOriginOptions.Equal(that1.MoreOriginOptions) { + if !this.HostnameUri.Equal(that1.HostnameUri) { return false } return true } -func (this *CdnOriginPoolType_NoTls) Equal(that interface{}) bool { +func (this *CacheEligibleOptions_SchemeHostnameUriQuery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CdnOriginPoolType_NoTls) + that1, ok := that.(*CacheEligibleOptions_SchemeHostnameUriQuery) if !ok { - that2, ok := that.(CdnOriginPoolType_NoTls) + that2, ok := that.(CacheEligibleOptions_SchemeHostnameUriQuery) if ok { that1 = &that2 } else { @@ -6516,19 +7177,19 @@ func (this *CdnOriginPoolType_NoTls) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoTls.Equal(that1.NoTls) { + if !this.SchemeHostnameUriQuery.Equal(that1.SchemeHostnameUriQuery) { return false } return true } -func (this *CdnOriginPoolType_UseTls) Equal(that interface{}) bool { +func (this *CacheEligibleOptions_SchemeProxyHostUri) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CdnOriginPoolType_UseTls) + that1, ok := that.(*CacheEligibleOptions_SchemeProxyHostUri) if !ok { - that2, ok := that.(CdnOriginPoolType_UseTls) + that2, ok := that.(CacheEligibleOptions_SchemeProxyHostUri) if ok { that1 = &that2 } else { @@ -6540,19 +7201,19 @@ func (this *CdnOriginPoolType_UseTls) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.UseTls.Equal(that1.UseTls) { + if !this.SchemeProxyHostUri.Equal(that1.SchemeProxyHostUri) { return false } return true } -func (this *OriginAdvancedConfiguration) Equal(that interface{}) bool { +func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OriginAdvancedConfiguration) + that1, ok := that.(*CacheEligibleOptions_SchemeProxyHostRequestUri) if !ok { - that2, ok := that.(OriginAdvancedConfiguration) + that2, ok := that.(CacheEligibleOptions_SchemeProxyHostRequestUri) if ok { that1 = &that2 } else { @@ -6564,22 +7225,19 @@ func (this *OriginAdvancedConfiguration) Equal(that interface{}) bool { } else if this == nil { return false } - if this.DisableByteRangeRequest != that1.DisableByteRangeRequest { - return false - } - if this.WebsocketProxy != that1.WebsocketProxy { + if !this.SchemeProxyHostRequestUri.Equal(that1.SchemeProxyHostRequestUri) { return false } return true } -func (this *CreateSpecType) Equal(that interface{}) bool { +func (this *CDNCacheRule) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateSpecType) + that1, ok := that.(*CDNCacheRule) if !ok { - that2, ok := that.(CreateSpecType) + that2, ok := that.(CDNCacheRule) if ok { that1 = &that2 } else { @@ -6591,42 +7249,36 @@ func (this *CreateSpecType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Domains) != len(that1.Domains) { + if this.RuleName != that1.RuleName { return false } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { + if len(this.RuleExpressionList) != len(that1.RuleExpressionList) { + return false + } + for i := range this.RuleExpressionList { + if !this.RuleExpressionList[i].Equal(that1.RuleExpressionList[i]) { return false } } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { + if that1.CacheActions == nil { + if this.CacheActions != nil { return false } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false - } - if this.AddLocation != that1.AddLocation { - return false - } - if !this.MoreOption.Equal(that1.MoreOption) { + } else if this.CacheActions == nil { return false - } - if !this.OriginPool.Equal(that1.OriginPool) { + } else if !this.CacheActions.Equal(that1.CacheActions) { return false } return true } -func (this *CreateSpecType_Http) Equal(that interface{}) bool { +func (this *CDNCacheRule_CacheBypass) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateSpecType_Http) + that1, ok := that.(*CDNCacheRule_CacheBypass) if !ok { - that2, ok := that.(CreateSpecType_Http) + that2, ok := that.(CDNCacheRule_CacheBypass) if ok { that1 = &that2 } else { @@ -6638,19 +7290,19 @@ func (this *CreateSpecType_Http) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Http.Equal(that1.Http) { + if !this.CacheBypass.Equal(that1.CacheBypass) { return false } return true } -func (this *CreateSpecType_HttpsAutoCert) Equal(that interface{}) bool { +func (this *CDNCacheRule_EligibleForCache) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateSpecType_HttpsAutoCert) + that1, ok := that.(*CDNCacheRule_EligibleForCache) if !ok { - that2, ok := that.(CreateSpecType_HttpsAutoCert) + that2, ok := that.(CDNCacheRule_EligibleForCache) if ok { that1 = &that2 } else { @@ -6662,19 +7314,19 @@ func (this *CreateSpecType_HttpsAutoCert) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + if !this.EligibleForCache.Equal(that1.EligibleForCache) { return false } return true } -func (this *CreateSpecType_Https) Equal(that interface{}) bool { +func (this *DefaultCacheTTLProps) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CreateSpecType_Https) + that1, ok := that.(*DefaultCacheTTLProps) if !ok { - that2, ok := that.(CreateSpecType_Https) + that2, ok := that.(DefaultCacheTTLProps) if ok { that1 = &that2 } else { @@ -6686,19 +7338,19 @@ func (this *CreateSpecType_Https) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Https.Equal(that1.Https) { + if this.CacheTtl != that1.CacheTtl { return false } return true } -func (this *ReplaceSpecType) Equal(that interface{}) bool { +func (this *DefaultCacheAction) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ReplaceSpecType) + that1, ok := that.(*DefaultCacheAction) if !ok { - that2, ok := that.(ReplaceSpecType) + that2, ok := that.(DefaultCacheAction) if ok { that1 = &that2 } else { @@ -6710,42 +7362,25 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Domains) != len(that1.Domains) { - return false - } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { - return false - } - } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { + if that1.CacheActions == nil { + if this.CacheActions != nil { return false } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false - } - if this.AddLocation != that1.AddLocation { - return false - } - if !this.MoreOption.Equal(that1.MoreOption) { + } else if this.CacheActions == nil { return false - } - if !this.OriginPool.Equal(that1.OriginPool) { + } else if !this.CacheActions.Equal(that1.CacheActions) { return false } return true } -func (this *ReplaceSpecType_Http) Equal(that interface{}) bool { +func (this *DefaultCacheAction_EligibleForCache) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ReplaceSpecType_Http) + that1, ok := that.(*DefaultCacheAction_EligibleForCache) if !ok { - that2, ok := that.(ReplaceSpecType_Http) + that2, ok := that.(DefaultCacheAction_EligibleForCache) if ok { that1 = &that2 } else { @@ -6757,19 +7392,19 @@ func (this *ReplaceSpecType_Http) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Http.Equal(that1.Http) { + if !this.EligibleForCache.Equal(that1.EligibleForCache) { return false } return true } -func (this *ReplaceSpecType_HttpsAutoCert) Equal(that interface{}) bool { +func (this *DefaultCacheAction_CacheTtlDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ReplaceSpecType_HttpsAutoCert) + that1, ok := that.(*DefaultCacheAction_CacheTtlDefault) if !ok { - that2, ok := that.(ReplaceSpecType_HttpsAutoCert) + that2, ok := that.(DefaultCacheAction_CacheTtlDefault) if ok { that1 = &that2 } else { @@ -6781,19 +7416,19 @@ func (this *ReplaceSpecType_HttpsAutoCert) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + if this.CacheTtlDefault != that1.CacheTtlDefault { return false } return true } -func (this *ReplaceSpecType_Https) Equal(that interface{}) bool { +func (this *DefaultCacheAction_CacheTtlOverride) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ReplaceSpecType_Https) + that1, ok := that.(*DefaultCacheAction_CacheTtlOverride) if !ok { - that2, ok := that.(ReplaceSpecType_Https) + that2, ok := that.(DefaultCacheAction_CacheTtlOverride) if ok { that1 = &that2 } else { @@ -6805,19 +7440,19 @@ func (this *ReplaceSpecType_Https) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Https.Equal(that1.Https) { + if this.CacheTtlOverride != that1.CacheTtlOverride { return false } return true } -func (this *GetSpecType) Equal(that interface{}) bool { +func (this *DefaultCacheAction_CacheDisabled) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GetSpecType) + that1, ok := that.(*DefaultCacheAction_CacheDisabled) if !ok { - that2, ok := that.(GetSpecType) + that2, ok := that.(DefaultCacheAction_CacheDisabled) if ok { that1 = &that2 } else { @@ -6829,70 +7464,81 @@ func (this *GetSpecType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Domains) != len(that1.Domains) { + if !this.CacheDisabled.Equal(that1.CacheDisabled) { return false } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { - return false - } + return true +} +func (this *CacheOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { + + that1, ok := that.(*CacheOptions) + if !ok { + that2, ok := that.(CacheOptions) + if ok { + that1 = &that2 + } else { return false } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false - } - if this.AddLocation != that1.AddLocation { - return false - } - if !this.MoreOption.Equal(that1.MoreOption) { - return false } - if !this.OriginPool.Equal(that1.OriginPool) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - if this.HostName != that1.HostName { + if !this.DefaultCacheAction.Equal(that1.DefaultCacheAction) { return false } - if len(this.DnsInfo) != len(that1.DnsInfo) { + if len(this.CacheRules) != len(that1.CacheRules) { return false } - for i := range this.DnsInfo { - if !this.DnsInfo[i].Equal(that1.DnsInfo[i]) { + for i := range this.CacheRules { + if !this.CacheRules[i].Equal(that1.CacheRules[i]) { return false } } - if this.State != that1.State { - return false + return true +} +func (this *CacheTTLOptionsType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { - return false + + that1, ok := that.(*CacheTTLOptionsType) + if !ok { + that2, ok := that.(CacheTTLOptionsType) + if ok { + that1 = &that2 + } else { + return false + } } - if len(this.ServiceDomains) != len(that1.ServiceDomains) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - for i := range this.ServiceDomains { - if !this.ServiceDomains[i].Equal(that1.ServiceDomains[i]) { + if that1.TtlOptions == nil { + if this.TtlOptions != nil { return false } - } - if this.CertState != that1.CertState { + } else if this.TtlOptions == nil { + return false + } else if !this.TtlOptions.Equal(that1.TtlOptions) { return false } return true } -func (this *GetSpecType_Http) Equal(that interface{}) bool { +func (this *CacheTTLOptionsType_CacheTtlDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GetSpecType_Http) + that1, ok := that.(*CacheTTLOptionsType_CacheTtlDefault) if !ok { - that2, ok := that.(GetSpecType_Http) + that2, ok := that.(CacheTTLOptionsType_CacheTtlDefault) if ok { that1 = &that2 } else { @@ -6904,19 +7550,19 @@ func (this *GetSpecType_Http) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Http.Equal(that1.Http) { + if this.CacheTtlDefault != that1.CacheTtlDefault { return false } return true } -func (this *GetSpecType_HttpsAutoCert) Equal(that interface{}) bool { +func (this *CacheTTLOptionsType_CacheTtlOverride) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GetSpecType_HttpsAutoCert) + that1, ok := that.(*CacheTTLOptionsType_CacheTtlOverride) if !ok { - that2, ok := that.(GetSpecType_HttpsAutoCert) + that2, ok := that.(CacheTTLOptionsType_CacheTtlOverride) if ok { that1 = &that2 } else { @@ -6928,19 +7574,19 @@ func (this *GetSpecType_HttpsAutoCert) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + if this.CacheTtlOverride != that1.CacheTtlOverride { return false } return true } -func (this *GetSpecType_Https) Equal(that interface{}) bool { +func (this *CacheTTLOptionsType_CacheDisabled) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GetSpecType_Https) + that1, ok := that.(*CacheTTLOptionsType_CacheDisabled) if !ok { - that2, ok := that.(GetSpecType_Https) + that2, ok := that.(CacheTTLOptionsType_CacheDisabled) if ok { that1 = &that2 } else { @@ -6952,19 +7598,19 @@ func (this *GetSpecType_Https) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Https.Equal(that1.Https) { + if !this.CacheDisabled.Equal(that1.CacheDisabled) { return false } return true } -func (this *LilacCDNMetricsFilter) Equal(that interface{}) bool { +func (this *AdvancedOptionsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LilacCDNMetricsFilter) + that1, ok := that.(*AdvancedOptionsType) if !ok { - that2, ok := that.(LilacCDNMetricsFilter) + that2, ok := that.(AdvancedOptionsType) if ok { that1 = &that2 } else { @@ -6976,30 +7622,31 @@ func (this *LilacCDNMetricsFilter) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Tag != that1.Tag { + if !this.HeaderOptions.Equal(that1.HeaderOptions) { return false } - if len(this.Values) != len(that1.Values) { + if !this.SecurityOptions.Equal(that1.SecurityOptions) { return false } - for i := range this.Values { - if this.Values[i] != that1.Values[i] { - return false - } + if !this.LoggingOptions.Equal(that1.LoggingOptions) { + return false } - if this.Operator != that1.Operator { + if !this.CacheTtlOptions.Equal(that1.CacheTtlOptions) { + return false + } + if !this.CacheOptions.Equal(that1.CacheOptions) { return false } return true } -func (this *LilacCDNMetricsResponseGroupBy) Equal(that interface{}) bool { +func (this *CDNTLSConfig) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LilacCDNMetricsResponseGroupBy) + that1, ok := that.(*CDNTLSConfig) if !ok { - that2, ok := that.(LilacCDNMetricsResponseGroupBy) + that2, ok := that.(CDNTLSConfig) if ok { that1 = &that2 } else { @@ -7011,22 +7658,25 @@ func (this *LilacCDNMetricsResponseGroupBy) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { + if that1.Choice == nil { + if this.Choice != nil { + return false + } + } else if this.Choice == nil { return false - } - if this.Value != that1.Value { + } else if !this.Choice.Equal(that1.Choice) { return false } return true } -func (this *LilacCDNMetricsResponseValue) Equal(that interface{}) bool { +func (this *CDNTLSConfig_Tls_12Plus) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LilacCDNMetricsResponseValue) + that1, ok := that.(*CDNTLSConfig_Tls_12Plus) if !ok { - that2, ok := that.(LilacCDNMetricsResponseValue) + that2, ok := that.(CDNTLSConfig_Tls_12Plus) if ok { that1 = &that2 } else { @@ -7038,22 +7688,19 @@ func (this *LilacCDNMetricsResponseValue) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Timestamp != that1.Timestamp { - return false - } - if this.Value != that1.Value { + if !this.Tls_12Plus.Equal(that1.Tls_12Plus) { return false } return true } -func (this *LilacCDNMetricsResponseSeries) Equal(that interface{}) bool { +func (this *CDNTLSConfig_Tls_11Plus) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LilacCDNMetricsResponseSeries) + that1, ok := that.(*CDNTLSConfig_Tls_11Plus) if !ok { - that2, ok := that.(LilacCDNMetricsResponseSeries) + that2, ok := that.(CDNTLSConfig_Tls_11Plus) if ok { that1 = &that2 } else { @@ -7065,32 +7712,19 @@ func (this *LilacCDNMetricsResponseSeries) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.GroupBy) != len(that1.GroupBy) { - return false - } - for i := range this.GroupBy { - if !this.GroupBy[i].Equal(that1.GroupBy[i]) { - return false - } - } - if len(this.Value) != len(that1.Value) { + if !this.Tls_11Plus.Equal(that1.Tls_11Plus) { return false } - for i := range this.Value { - if !this.Value[i].Equal(that1.Value[i]) { - return false - } - } return true } -func (this *LilacCDNMetricsResponseData) Equal(that interface{}) bool { +func (this *CDNHTTPSAutoCertsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*LilacCDNMetricsResponseData) + that1, ok := that.(*CDNHTTPSAutoCertsType) if !ok { - that2, ok := that.(LilacCDNMetricsResponseData) + that2, ok := that.(CDNHTTPSAutoCertsType) if ok { that1 = &that2 } else { @@ -7102,3143 +7736,2659 @@ func (this *LilacCDNMetricsResponseData) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Type != that1.Type { + if this.HttpRedirect != that1.HttpRedirect { return false } - if this.Unit != that1.Unit { + if this.AddHsts != that1.AddHsts { return false } - if len(this.Series) != len(that1.Series) { + if !this.TlsConfig.Equal(that1.TlsConfig) { return false } - for i := range this.Series { - if !this.Series[i].Equal(that1.Series[i]) { - return false - } - } return true } -func (this *ProxyTypeHttpsAutoCerts) GoString() string { - if this == nil { - return "nil" +func (this *CDNDownstreamTlsParamsType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 11) - s = append(s, "&cdn_loadbalancer.ProxyTypeHttpsAutoCerts{") - s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") - s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") - if this.TlsConfig != nil { - s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") + + that1, ok := that.(*CDNDownstreamTlsParamsType) + if !ok { + that2, ok := that.(CDNDownstreamTlsParamsType) + if ok { + that1 = &that2 + } else { + return false + } } - if this.ServerHeaderChoice != nil { - s = append(s, "ServerHeaderChoice: "+fmt.Sprintf("%#v", this.ServerHeaderChoice)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) GoString() string { - if this == nil { - return "nil" + if !this.TlsConfig.Equal(that1.TlsConfig) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_DefaultHeader{` + - `DefaultHeader:` + fmt.Sprintf("%#v", this.DefaultHeader) + `}`}, ", ") - return s -} -func (this *ProxyTypeHttpsAutoCerts_ServerName) GoString() string { - if this == nil { - return "nil" + if len(this.TlsCertificates) != len(that1.TlsCertificates) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_ServerName{` + - `ServerName:` + fmt.Sprintf("%#v", this.ServerName) + `}`}, ", ") - return s -} -func (this *ProxyTypeHttpsAutoCerts_AppendServerName) GoString() string { - if this == nil { - return "nil" + for i := range this.TlsCertificates { + if !this.TlsCertificates[i].Equal(that1.TlsCertificates[i]) { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_AppendServerName{` + - `AppendServerName:` + fmt.Sprintf("%#v", this.AppendServerName) + `}`}, ", ") - return s + return true } -func (this *ProxyTypeHttpsAutoCerts_PassThrough) GoString() string { - if this == nil { - return "nil" +func (this *CDNHTTPSCustomCertsType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_PassThrough{` + - `PassThrough:` + fmt.Sprintf("%#v", this.PassThrough) + `}`}, ", ") - return s -} -func (this *HeaderControlType) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*CDNHTTPSCustomCertsType) + if !ok { + that2, ok := that.(CDNHTTPSCustomCertsType) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 8) - s = append(s, "&cdn_loadbalancer.HeaderControlType{") - if this.RequestHeadersToAdd != nil { - s = append(s, "RequestHeadersToAdd: "+fmt.Sprintf("%#v", this.RequestHeadersToAdd)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "RequestHeadersToRemove: "+fmt.Sprintf("%#v", this.RequestHeadersToRemove)+",\n") - if this.ResponseHeadersToAdd != nil { - s = append(s, "ResponseHeadersToAdd: "+fmt.Sprintf("%#v", this.ResponseHeadersToAdd)+",\n") + if this.HttpRedirect != that1.HttpRedirect { + return false } - s = append(s, "ResponseHeadersToRemove: "+fmt.Sprintf("%#v", this.ResponseHeadersToRemove)+",\n") - s = append(s, "}") - return strings.Join(s, "") + if this.AddHsts != that1.AddHsts { + return false + } + if !this.TlsParameters.Equal(that1.TlsParameters) { + return false + } + return true } -func (this *SecurityOptionsType) GoString() string { - if this == nil { - return "nil" +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.SecurityOptionsType{") - if this.IpFiltering != nil { - s = append(s, "IpFiltering: "+fmt.Sprintf("%#v", this.IpFiltering)+",\n") + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) + if ok { + that1 = &that2 + } else { + return false + } } - if this.GeoFiltering != nil { - s = append(s, "GeoFiltering: "+fmt.Sprintf("%#v", this.GeoFiltering)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.AuthOptions != nil { - s = append(s, "AuthOptions: "+fmt.Sprintf("%#v", this.AuthOptions)+",\n") + if len(this.Domains) != len(that1.Domains) { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *LoggingOptionsType) GoString() string { - if this == nil { - return "nil" + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.LoggingOptionsType{") - if this.ClientLogOptions != nil { - s = append(s, "ClientLogOptions: "+fmt.Sprintf("%#v", this.ClientLogOptions)+",\n") + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { + return false + } + } else if this.LoadbalancerType == nil { + return false + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { + return false } - if this.OriginLogOptions != nil { - s = append(s, "OriginLogOptions: "+fmt.Sprintf("%#v", this.OriginLogOptions)+",\n") + if this.AddLocation != that1.AddLocation { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNCacheRuleExpressionList) GoString() string { - if this == nil { - return "nil" + if !this.MoreOption.Equal(that1.MoreOption) { + return false } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CDNCacheRuleExpressionList{") - s = append(s, "ExpressionName: "+fmt.Sprintf("%#v", this.ExpressionName)+",\n") - if this.CacheRuleExpression != nil { - s = append(s, "CacheRuleExpression: "+fmt.Sprintf("%#v", this.CacheRuleExpression)+",\n") + if !this.OriginPool.Equal(that1.OriginPool) { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheOperator) GoString() string { - if this == nil { - return "nil" + if !this.ViewInternal.Equal(that1.ViewInternal) { + return false } - s := make([]string, 0, 13) - s = append(s, "&cdn_loadbalancer.CacheOperator{") - if this.CacheOperator != nil { - s = append(s, "CacheOperator: "+fmt.Sprintf("%#v", this.CacheOperator)+",\n") + if this.HostName != that1.HostName { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheOperator_Equals) GoString() string { - if this == nil { - return "nil" + if len(this.DnsInfo) != len(that1.DnsInfo) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Equals{` + - `Equals:` + fmt.Sprintf("%#v", this.Equals) + `}`}, ", ") - return s -} -func (this *CacheOperator_DoesNotEqual) GoString() string { - if this == nil { - return "nil" + for i := range this.DnsInfo { + if !this.DnsInfo[i].Equal(that1.DnsInfo[i]) { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotEqual{` + - `DoesNotEqual:` + fmt.Sprintf("%#v", this.DoesNotEqual) + `}`}, ", ") - return s -} -func (this *CacheOperator_Contains) GoString() string { - if this == nil { - return "nil" + if this.State != that1.State { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Contains{` + - `Contains:` + fmt.Sprintf("%#v", this.Contains) + `}`}, ", ") - return s -} -func (this *CacheOperator_DoesNotContain) GoString() string { - if this == nil { - return "nil" + if this.AutoCertState != that1.AutoCertState { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotContain{` + - `DoesNotContain:` + fmt.Sprintf("%#v", this.DoesNotContain) + `}`}, ", ") - return s -} -func (this *CacheOperator_Startswith) GoString() string { - if this == nil { - return "nil" + if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Startswith{` + - `Startswith:` + fmt.Sprintf("%#v", this.Startswith) + `}`}, ", ") - return s -} -func (this *CacheOperator_DoesNotStartWith) GoString() string { - if this == nil { - return "nil" + if len(this.ServiceDomains) != len(that1.ServiceDomains) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotStartWith{` + - `DoesNotStartWith:` + fmt.Sprintf("%#v", this.DoesNotStartWith) + `}`}, ", ") - return s -} -func (this *CacheOperator_Endswith) GoString() string { - if this == nil { - return "nil" + for i := range this.ServiceDomains { + if !this.ServiceDomains[i].Equal(that1.ServiceDomains[i]) { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Endswith{` + - `Endswith:` + fmt.Sprintf("%#v", this.Endswith) + `}`}, ", ") - return s -} -func (this *CacheOperator_DoesNotEndWith) GoString() string { - if this == nil { - return "nil" + if this.CertState != that1.CertState { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotEndWith{` + - `DoesNotEndWith:` + fmt.Sprintf("%#v", this.DoesNotEndWith) + `}`}, ", ") - return s + return true } -func (this *CacheOperator_MatchRegex) GoString() string { - if this == nil { - return "nil" +func (this *GlobalSpecType_Http) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_MatchRegex{` + - `MatchRegex:` + fmt.Sprintf("%#v", this.MatchRegex) + `}`}, ", ") - return s -} -func (this *CacheHeaderMatcherType) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*GlobalSpecType_Http) + if !ok { + that2, ok := that.(GlobalSpecType_Http) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CacheHeaderMatcherType{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - if this.Operator != nil { - s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") + if !this.Http.Equal(that1.Http) { + return false + } + return true } -func (this *CDNPathMatcherType) GoString() string { - if this == nil { - return "nil" +func (this *GlobalSpecType_HttpsAutoCert) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 5) - s = append(s, "&cdn_loadbalancer.CDNPathMatcherType{") - if this.Operator != nil { - s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + + that1, ok := that.(*GlobalSpecType_HttpsAutoCert) + if !ok { + that2, ok := that.(GlobalSpecType_HttpsAutoCert) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheCookieMatcherType) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CacheCookieMatcherType{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - if this.Operator != nil { - s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *CacheQueryParameterMatcherType) GoString() string { - if this == nil { - return "nil" +func (this *GlobalSpecType_Https) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CacheQueryParameterMatcherType{") - s = append(s, "Key: "+fmt.Sprintf("%#v", this.Key)+",\n") - if this.Operator != nil { - s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + + that1, ok := that.(*GlobalSpecType_Https) + if !ok { + that2, ok := that.(GlobalSpecType_Https) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNCacheRuleExpression) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 8) - s = append(s, "&cdn_loadbalancer.CDNCacheRuleExpression{") - if this.PathMatch != nil { - s = append(s, "PathMatch: "+fmt.Sprintf("%#v", this.PathMatch)+",\n") + if !this.Https.Equal(that1.Https) { + return false } - if this.QueryParameters != nil { - s = append(s, "QueryParameters: "+fmt.Sprintf("%#v", this.QueryParameters)+",\n") + return true +} +func (this *IpFilteringOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if this.CacheHeaders != nil { - s = append(s, "CacheHeaders: "+fmt.Sprintf("%#v", this.CacheHeaders)+",\n") + + that1, ok := that.(*IpFilteringOptions) + if !ok { + that2, ok := that.(IpFilteringOptions) + if ok { + that1 = &that2 + } else { + return false + } } - if this.CookieMatcher != nil { - s = append(s, "CookieMatcher: "+fmt.Sprintf("%#v", this.CookieMatcher)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheTTLEnableProps) GoString() string { - if this == nil { - return "nil" + if that1.IpFilteringType == nil { + if this.IpFilteringType != nil { + return false + } + } else if this.IpFilteringType == nil { + return false + } else if !this.IpFilteringType.Equal(that1.IpFilteringType) { + return false } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.CacheTTLEnableProps{") - s = append(s, "CacheTtl: "+fmt.Sprintf("%#v", this.CacheTtl)+",\n") - s = append(s, "IgnoreResponseCookie: "+fmt.Sprintf("%#v", this.IgnoreResponseCookie)+",\n") - s = append(s, "CacheOverride: "+fmt.Sprintf("%#v", this.CacheOverride)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *CacheEligibleOptions) GoString() string { - if this == nil { - return "nil" +func (this *IpFilteringOptions_AllowList) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 10) - s = append(s, "&cdn_loadbalancer.CacheEligibleOptions{") - if this.EligibleForCache != nil { - s = append(s, "EligibleForCache: "+fmt.Sprintf("%#v", this.EligibleForCache)+",\n") + + that1, ok := that.(*IpFilteringOptions_AllowList) + if !ok { + that2, ok := that.(IpFilteringOptions_AllowList) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheEligibleOptions_SchemeHostnameUri) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUri{` + - `SchemeHostnameUri:` + fmt.Sprintf("%#v", this.SchemeHostnameUri) + `}`}, ", ") - return s -} -func (this *CacheEligibleOptions_SchemeHostnameRequestUri) GoString() string { - if this == nil { - return "nil" + if !this.AllowList.Equal(that1.AllowList) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameRequestUri{` + - `SchemeHostnameRequestUri:` + fmt.Sprintf("%#v", this.SchemeHostnameRequestUri) + `}`}, ", ") - return s + return true } -func (this *CacheEligibleOptions_HostnameUri) GoString() string { - if this == nil { - return "nil" +func (this *IpFilteringOptions_BlockList) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_HostnameUri{` + - `HostnameUri:` + fmt.Sprintf("%#v", this.HostnameUri) + `}`}, ", ") - return s -} -func (this *CacheEligibleOptions_SchemeHostnameUriQuery) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*IpFilteringOptions_BlockList) + if !ok { + that2, ok := that.(IpFilteringOptions_BlockList) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUriQuery{` + - `SchemeHostnameUriQuery:` + fmt.Sprintf("%#v", this.SchemeHostnameUriQuery) + `}`}, ", ") - return s -} -func (this *CacheEligibleOptions_SchemeProxyHostUri) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostUri{` + - `SchemeProxyHostUri:` + fmt.Sprintf("%#v", this.SchemeProxyHostUri) + `}`}, ", ") - return s -} -func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) GoString() string { - if this == nil { - return "nil" + if !this.BlockList.Equal(that1.BlockList) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostRequestUri{` + - `SchemeProxyHostRequestUri:` + fmt.Sprintf("%#v", this.SchemeProxyHostRequestUri) + `}`}, ", ") - return s + return true } -func (this *CDNCacheRule) GoString() string { - if this == nil { - return "nil" +func (this *GeoFilteringOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 8) - s = append(s, "&cdn_loadbalancer.CDNCacheRule{") - s = append(s, "RuleName: "+fmt.Sprintf("%#v", this.RuleName)+",\n") - if this.RuleExpressionList != nil { - s = append(s, "RuleExpressionList: "+fmt.Sprintf("%#v", this.RuleExpressionList)+",\n") + + that1, ok := that.(*GeoFilteringOptions) + if !ok { + that2, ok := that.(GeoFilteringOptions) + if ok { + that1 = &that2 + } else { + return false + } } - if this.CacheActions != nil { - s = append(s, "CacheActions: "+fmt.Sprintf("%#v", this.CacheActions)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNCacheRule_CacheBypass) GoString() string { - if this == nil { - return "nil" + if that1.GeoFilteringType == nil { + if this.GeoFilteringType != nil { + return false + } + } else if this.GeoFilteringType == nil { + return false + } else if !this.GeoFilteringType.Equal(that1.GeoFilteringType) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CDNCacheRule_CacheBypass{` + - `CacheBypass:` + fmt.Sprintf("%#v", this.CacheBypass) + `}`}, ", ") - return s + return true } -func (this *CDNCacheRule_EligibleForCache) GoString() string { - if this == nil { - return "nil" +func (this *GeoFilteringOptions_AllowList) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.CDNCacheRule_EligibleForCache{` + - `EligibleForCache:` + fmt.Sprintf("%#v", this.EligibleForCache) + `}`}, ", ") - return s -} -func (this *DefaultCacheTTLProps) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*GeoFilteringOptions_AllowList) + if !ok { + that2, ok := that.(GeoFilteringOptions_AllowList) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 5) - s = append(s, "&cdn_loadbalancer.DefaultCacheTTLProps{") - s = append(s, "CacheTtl: "+fmt.Sprintf("%#v", this.CacheTtl)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *DefaultCacheAction) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 8) - s = append(s, "&cdn_loadbalancer.DefaultCacheAction{") - if this.CacheActions != nil { - s = append(s, "CacheActions: "+fmt.Sprintf("%#v", this.CacheActions)+",\n") + if !this.AllowList.Equal(that1.AllowList) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *DefaultCacheAction_EligibleForCache) GoString() string { - if this == nil { - return "nil" +func (this *GeoFilteringOptions_BlockList) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_EligibleForCache{` + - `EligibleForCache:` + fmt.Sprintf("%#v", this.EligibleForCache) + `}`}, ", ") - return s -} -func (this *DefaultCacheAction_CacheTtlDefault) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*GeoFilteringOptions_BlockList) + if !ok { + that2, ok := that.(GeoFilteringOptions_BlockList) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_CacheTtlDefault{` + - `CacheTtlDefault:` + fmt.Sprintf("%#v", this.CacheTtlDefault) + `}`}, ", ") - return s -} -func (this *DefaultCacheAction_CacheTtlOverride) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_CacheTtlOverride{` + - `CacheTtlOverride:` + fmt.Sprintf("%#v", this.CacheTtlOverride) + `}`}, ", ") - return s -} -func (this *DefaultCacheAction_CacheDisabled) GoString() string { - if this == nil { - return "nil" + if !this.BlockList.Equal(that1.BlockList) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_CacheDisabled{` + - `CacheDisabled:` + fmt.Sprintf("%#v", this.CacheDisabled) + `}`}, ", ") - return s + return true } -func (this *CacheOptions) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CacheOptions{") - if this.DefaultCacheAction != nil { - s = append(s, "DefaultCacheAction: "+fmt.Sprintf("%#v", this.DefaultCacheAction)+",\n") +func (this *LogHeaderOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if this.CacheRules != nil { - s = append(s, "CacheRules: "+fmt.Sprintf("%#v", this.CacheRules)+",\n") + + that1, ok := that.(*LogHeaderOptions) + if !ok { + that2, ok := that.(LogHeaderOptions) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheTTLOptionsType) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.CacheTTLOptionsType{") - if this.TtlOptions != nil { - s = append(s, "TtlOptions: "+fmt.Sprintf("%#v", this.TtlOptions)+",\n") + if len(this.HeaderList) != len(that1.HeaderList) { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CacheTTLOptionsType_CacheTtlDefault) GoString() string { - if this == nil { - return "nil" + for i := range this.HeaderList { + if this.HeaderList[i] != that1.HeaderList[i] { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.CacheTTLOptionsType_CacheTtlDefault{` + - `CacheTtlDefault:` + fmt.Sprintf("%#v", this.CacheTtlDefault) + `}`}, ", ") - return s + return true } -func (this *CacheTTLOptionsType_CacheTtlOverride) GoString() string { - if this == nil { - return "nil" +func (this *CDNCustomAuthentication) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.CacheTTLOptionsType_CacheTtlOverride{` + - `CacheTtlOverride:` + fmt.Sprintf("%#v", this.CacheTtlOverride) + `}`}, ", ") - return s -} -func (this *CacheTTLOptionsType_CacheDisabled) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*CDNCustomAuthentication) + if !ok { + that2, ok := that.(CDNCustomAuthentication) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.CacheTTLOptionsType_CacheDisabled{` + - `CacheDisabled:` + fmt.Sprintf("%#v", this.CacheDisabled) + `}`}, ", ") - return s -} -func (this *AdvancedOptionsType) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := make([]string, 0, 9) - s = append(s, "&cdn_loadbalancer.AdvancedOptionsType{") - if this.HeaderOptions != nil { - s = append(s, "HeaderOptions: "+fmt.Sprintf("%#v", this.HeaderOptions)+",\n") + if this.CustomAuthConfig != that1.CustomAuthConfig { + return false } - if this.SecurityOptions != nil { - s = append(s, "SecurityOptions: "+fmt.Sprintf("%#v", this.SecurityOptions)+",\n") + return true +} +func (this *AuthenticationOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if this.LoggingOptions != nil { - s = append(s, "LoggingOptions: "+fmt.Sprintf("%#v", this.LoggingOptions)+",\n") + + that1, ok := that.(*AuthenticationOptions) + if !ok { + that2, ok := that.(AuthenticationOptions) + if ok { + that1 = &that2 + } else { + return false + } } - if this.CacheTtlOptions != nil { - s = append(s, "CacheTtlOptions: "+fmt.Sprintf("%#v", this.CacheTtlOptions)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.CacheOptions != nil { - s = append(s, "CacheOptions: "+fmt.Sprintf("%#v", this.CacheOptions)+",\n") + if that1.AuthOptions == nil { + if this.AuthOptions != nil { + return false + } + } else if this.AuthOptions == nil { + return false + } else if !this.AuthOptions.Equal(that1.AuthOptions) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *CDNTLSConfig) GoString() string { - if this == nil { - return "nil" +func (this *AuthenticationOptions_DisableAuth) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CDNTLSConfig{") - if this.Choice != nil { - s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") + + that1, ok := that.(*AuthenticationOptions_DisableAuth) + if !ok { + that2, ok := that.(AuthenticationOptions_DisableAuth) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNTLSConfig_Tls_12Plus) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{` + - `Tls_12Plus:` + fmt.Sprintf("%#v", this.Tls_12Plus) + `}`}, ", ") - return s -} -func (this *CDNTLSConfig_Tls_11Plus) GoString() string { - if this == nil { - return "nil" + if !this.DisableAuth.Equal(that1.DisableAuth) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{` + - `Tls_11Plus:` + fmt.Sprintf("%#v", this.Tls_11Plus) + `}`}, ", ") - return s + return true } -func (this *CDNHTTPSAutoCertsType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.CDNHTTPSAutoCertsType{") - s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") - s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") - if this.TlsConfig != nil { - s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") +func (this *AuthenticationOptions_Jwt) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNDownstreamTlsParamsType) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*AuthenticationOptions_Jwt) + if !ok { + that2, ok := that.(AuthenticationOptions_Jwt) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.CDNDownstreamTlsParamsType{") - if this.TlsConfig != nil { - s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.TlsCertificates != nil { - s = append(s, "TlsCertificates: "+fmt.Sprintf("%#v", this.TlsCertificates)+",\n") + if !this.Jwt.Equal(that1.Jwt) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *CDNHTTPSCustomCertsType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.CDNHTTPSCustomCertsType{") - s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") - s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") - if this.TlsParameters != nil { - s = append(s, "TlsParameters: "+fmt.Sprintf("%#v", this.TlsParameters)+",\n") +func (this *AuthenticationOptions_Custom) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *GlobalSpecType) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*AuthenticationOptions_Custom) + if !ok { + that2, ok := that.(AuthenticationOptions_Custom) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 19) - s = append(s, "&cdn_loadbalancer.GlobalSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + if !this.Custom.Equal(that1.Custom) { + return false } - if this.OriginPool != nil { - s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + return true +} +func (this *CDNOriginServerType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if this.ViewInternal != nil { - s = append(s, "ViewInternal: "+fmt.Sprintf("%#v", this.ViewInternal)+",\n") + + that1, ok := that.(*CDNOriginServerType) + if !ok { + that2, ok := that.(CDNOriginServerType) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") - if this.DnsInfo != nil { - s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") - s = append(s, "AutoCertState: "+fmt.Sprintf("%#v", this.AutoCertState)+",\n") - if this.AutoCertInfo != nil { - s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") + if that1.Choice == nil { + if this.Choice != nil { + return false + } + } else if this.Choice == nil { + return false + } else if !this.Choice.Equal(that1.Choice) { + return false } - if this.ServiceDomains != nil { - s = append(s, "ServiceDomains: "+fmt.Sprintf("%#v", this.ServiceDomains)+",\n") + if this.Port != that1.Port { + return false } - s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *GlobalSpecType_Http) GoString() string { - if this == nil { - return "nil" +func (this *CDNOriginServerType_PublicIp) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.GlobalSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s -} -func (this *GlobalSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*CDNOriginServerType_PublicIp) + if !ok { + that2, ok := that.(CDNOriginServerType_PublicIp) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.GlobalSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s -} -func (this *GlobalSpecType_Https) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.GlobalSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s + if !this.PublicIp.Equal(that1.PublicIp) { + return false + } + return true } -func (this *IpFilteringOptions) GoString() string { - if this == nil { - return "nil" +func (this *CDNOriginServerType_PublicName) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.IpFilteringOptions{") - if this.IpFilteringType != nil { - s = append(s, "IpFilteringType: "+fmt.Sprintf("%#v", this.IpFilteringType)+",\n") + + that1, ok := that.(*CDNOriginServerType_PublicName) + if !ok { + that2, ok := that.(CDNOriginServerType_PublicName) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *IpFilteringOptions_AllowList) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.IpFilteringOptions_AllowList{` + - `AllowList:` + fmt.Sprintf("%#v", this.AllowList) + `}`}, ", ") - return s -} -func (this *IpFilteringOptions_BlockList) GoString() string { - if this == nil { - return "nil" + if !this.PublicName.Equal(that1.PublicName) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.IpFilteringOptions_BlockList{` + - `BlockList:` + fmt.Sprintf("%#v", this.BlockList) + `}`}, ", ") - return s + return true } -func (this *GeoFilteringOptions) GoString() string { - if this == nil { - return "nil" +func (this *CdnOriginPoolType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.GeoFilteringOptions{") - if this.GeoFilteringType != nil { - s = append(s, "GeoFilteringType: "+fmt.Sprintf("%#v", this.GeoFilteringType)+",\n") + + that1, ok := that.(*CdnOriginPoolType) + if !ok { + that2, ok := that.(CdnOriginPoolType) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *GeoFilteringOptions_AllowList) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.GeoFilteringOptions_AllowList{` + - `AllowList:` + fmt.Sprintf("%#v", this.AllowList) + `}`}, ", ") - return s -} -func (this *GeoFilteringOptions_BlockList) GoString() string { - if this == nil { - return "nil" + if !this.PublicName.Equal(that1.PublicName) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.GeoFilteringOptions_BlockList{` + - `BlockList:` + fmt.Sprintf("%#v", this.BlockList) + `}`}, ", ") - return s -} -func (this *LogHeaderOptions) GoString() string { - if this == nil { - return "nil" + if that1.TlsChoice == nil { + if this.TlsChoice != nil { + return false + } + } else if this.TlsChoice == nil { + return false + } else if !this.TlsChoice.Equal(that1.TlsChoice) { + return false } - s := make([]string, 0, 5) - s = append(s, "&cdn_loadbalancer.LogHeaderOptions{") - s = append(s, "HeaderList: "+fmt.Sprintf("%#v", this.HeaderList)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNCustomAuthentication) GoString() string { - if this == nil { - return "nil" + if len(this.OriginServers) != len(that1.OriginServers) { + return false } - s := make([]string, 0, 5) - s = append(s, "&cdn_loadbalancer.CDNCustomAuthentication{") - s = append(s, "CustomAuthConfig: "+fmt.Sprintf("%#v", this.CustomAuthConfig)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AuthenticationOptions) GoString() string { - if this == nil { - return "nil" + for i := range this.OriginServers { + if !this.OriginServers[i].Equal(that1.OriginServers[i]) { + return false + } } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.AuthenticationOptions{") - if this.AuthOptions != nil { - s = append(s, "AuthOptions: "+fmt.Sprintf("%#v", this.AuthOptions)+",\n") + if this.FollowOriginRedirect != that1.FollowOriginRedirect { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AuthenticationOptions_DisableAuth) GoString() string { - if this == nil { - return "nil" + if this.OriginRequestTimeout != that1.OriginRequestTimeout { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.AuthenticationOptions_DisableAuth{` + - `DisableAuth:` + fmt.Sprintf("%#v", this.DisableAuth) + `}`}, ", ") - return s -} -func (this *AuthenticationOptions_Jwt) GoString() string { - if this == nil { - return "nil" + if !this.MoreOriginOptions.Equal(that1.MoreOriginOptions) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.AuthenticationOptions_Jwt{` + - `Jwt:` + fmt.Sprintf("%#v", this.Jwt) + `}`}, ", ") - return s + return true } -func (this *AuthenticationOptions_Custom) GoString() string { - if this == nil { - return "nil" +func (this *CdnOriginPoolType_NoTls) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.AuthenticationOptions_Custom{` + - `Custom:` + fmt.Sprintf("%#v", this.Custom) + `}`}, ", ") - return s -} -func (this *CDNOriginServerType) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*CdnOriginPoolType_NoTls) + if !ok { + that2, ok := that.(CdnOriginPoolType_NoTls) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.CDNOriginServerType{") - if this.Choice != nil { - s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "Port: "+fmt.Sprintf("%#v", this.Port)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CDNOriginServerType_PublicIp) GoString() string { - if this == nil { - return "nil" + if !this.NoTls.Equal(that1.NoTls) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CDNOriginServerType_PublicIp{` + - `PublicIp:` + fmt.Sprintf("%#v", this.PublicIp) + `}`}, ", ") - return s + return true } -func (this *CDNOriginServerType_PublicName) GoString() string { - if this == nil { - return "nil" +func (this *CdnOriginPoolType_UseTls) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.CDNOriginServerType_PublicName{` + - `PublicName:` + fmt.Sprintf("%#v", this.PublicName) + `}`}, ", ") - return s -} -func (this *CdnOriginPoolType) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*CdnOriginPoolType_UseTls) + if !ok { + that2, ok := that.(CdnOriginPoolType_UseTls) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 11) - s = append(s, "&cdn_loadbalancer.CdnOriginPoolType{") - if this.PublicName != nil { - s = append(s, "PublicName: "+fmt.Sprintf("%#v", this.PublicName)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.TlsChoice != nil { - s = append(s, "TlsChoice: "+fmt.Sprintf("%#v", this.TlsChoice)+",\n") + if !this.UseTls.Equal(that1.UseTls) { + return false } - if this.OriginServers != nil { - s = append(s, "OriginServers: "+fmt.Sprintf("%#v", this.OriginServers)+",\n") + return true +} +func (this *OriginAdvancedConfiguration) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s = append(s, "FollowOriginRedirect: "+fmt.Sprintf("%#v", this.FollowOriginRedirect)+",\n") - s = append(s, "OriginRequestTimeout: "+fmt.Sprintf("%#v", this.OriginRequestTimeout)+",\n") - if this.MoreOriginOptions != nil { - s = append(s, "MoreOriginOptions: "+fmt.Sprintf("%#v", this.MoreOriginOptions)+",\n") + + that1, ok := that.(*OriginAdvancedConfiguration) + if !ok { + that2, ok := that.(OriginAdvancedConfiguration) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CdnOriginPoolType_NoTls) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CdnOriginPoolType_NoTls{` + - `NoTls:` + fmt.Sprintf("%#v", this.NoTls) + `}`}, ", ") - return s -} -func (this *CdnOriginPoolType_UseTls) GoString() string { - if this == nil { - return "nil" + if this.DisableByteRangeRequest != that1.DisableByteRangeRequest { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CdnOriginPoolType_UseTls{` + - `UseTls:` + fmt.Sprintf("%#v", this.UseTls) + `}`}, ", ") - return s -} -func (this *OriginAdvancedConfiguration) GoString() string { - if this == nil { - return "nil" + if this.WebsocketProxy != that1.WebsocketProxy { + return false } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.OriginAdvancedConfiguration{") - s = append(s, "DisableByteRangeRequest: "+fmt.Sprintf("%#v", this.DisableByteRangeRequest)+",\n") - s = append(s, "WebsocketProxy: "+fmt.Sprintf("%#v", this.WebsocketProxy)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *CreateSpecType) GoString() string { - if this == nil { - return "nil" +func (this *CreateSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 11) - s = append(s, "&cdn_loadbalancer.CreateSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + + that1, ok := that.(*CreateSpecType) + if !ok { + that2, ok := that.(CreateSpecType) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.OriginPool != nil { - s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + if len(this.Domains) != len(that1.Domains) { + return false } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CreateSpecType_Http) GoString() string { - if this == nil { - return "nil" + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.CreateSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s -} -func (this *CreateSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { + return false + } + } else if this.LoadbalancerType == nil { + return false + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CreateSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s -} -func (this *CreateSpecType_Https) GoString() string { - if this == nil { - return "nil" + if this.AddLocation != that1.AddLocation { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.CreateSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s + if !this.MoreOption.Equal(that1.MoreOption) { + return false + } + if !this.OriginPool.Equal(that1.OriginPool) { + return false + } + return true } -func (this *ReplaceSpecType) GoString() string { - if this == nil { - return "nil" +func (this *CreateSpecType_Http) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 11) - s = append(s, "&cdn_loadbalancer.ReplaceSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + + that1, ok := that.(*CreateSpecType_Http) + if !ok { + that2, ok := that.(CreateSpecType_Http) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.OriginPool != nil { - s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + if !this.Http.Equal(that1.Http) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *ReplaceSpecType_Http) GoString() string { - if this == nil { - return "nil" +func (this *CreateSpecType_HttpsAutoCert) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := strings.Join([]string{`&cdn_loadbalancer.ReplaceSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s -} -func (this *ReplaceSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*CreateSpecType_HttpsAutoCert) + if !ok { + that2, ok := that.(CreateSpecType_HttpsAutoCert) + if ok { + that1 = &that2 + } else { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.ReplaceSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s -} -func (this *ReplaceSpecType_Https) GoString() string { - if this == nil { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.ReplaceSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + return false + } + return true } -func (this *GetSpecType) GoString() string { - if this == nil { - return "nil" +func (this *CreateSpecType_Https) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 17) - s = append(s, "&cdn_loadbalancer.GetSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + + that1, ok := that.(*CreateSpecType_Https) + if !ok { + that2, ok := that.(CreateSpecType_Https) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.OriginPool != nil { - s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + if !this.Https.Equal(that1.Https) { + return false } - s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") - if this.DnsInfo != nil { - s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") + return true +} +func (this *ReplaceSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") - if this.AutoCertInfo != nil { - s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") + + that1, ok := that.(*ReplaceSpecType) + if !ok { + that2, ok := that.(ReplaceSpecType) + if ok { + that1 = &that2 + } else { + return false + } } - if this.ServiceDomains != nil { - s = append(s, "ServiceDomains: "+fmt.Sprintf("%#v", this.ServiceDomains)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *GetSpecType_Http) GoString() string { - if this == nil { - return "nil" + if len(this.Domains) != len(that1.Domains) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.GetSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s -} -func (this *GetSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { + return false + } } - s := strings.Join([]string{`&cdn_loadbalancer.GetSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s -} -func (this *GetSpecType_Https) GoString() string { - if this == nil { - return "nil" + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { + return false + } + } else if this.LoadbalancerType == nil { + return false + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { + return false } - s := strings.Join([]string{`&cdn_loadbalancer.GetSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s -} -func (this *LilacCDNMetricsFilter) GoString() string { - if this == nil { - return "nil" + if this.AddLocation != that1.AddLocation { + return false } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.LilacCDNMetricsFilter{") - s = append(s, "Tag: "+fmt.Sprintf("%#v", this.Tag)+",\n") - s = append(s, "Values: "+fmt.Sprintf("%#v", this.Values)+",\n") - s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *LilacCDNMetricsResponseGroupBy) GoString() string { - if this == nil { - return "nil" + if !this.MoreOption.Equal(that1.MoreOption) { + return false } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseGroupBy{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") - s = append(s, "}") - return strings.Join(s, "") + if !this.OriginPool.Equal(that1.OriginPool) { + return false + } + return true } -func (this *LilacCDNMetricsResponseValue) GoString() string { - if this == nil { - return "nil" +func (this *ReplaceSpecType_Http) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseValue{") - s = append(s, "Timestamp: "+fmt.Sprintf("%#v", this.Timestamp)+",\n") - s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *LilacCDNMetricsResponseSeries) GoString() string { - if this == nil { - return "nil" + + that1, ok := that.(*ReplaceSpecType_Http) + if !ok { + that2, ok := that.(ReplaceSpecType_Http) + if ok { + that1 = &that2 + } else { + return false + } } - s := make([]string, 0, 6) - s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseSeries{") - if this.GroupBy != nil { - s = append(s, "GroupBy: "+fmt.Sprintf("%#v", this.GroupBy)+",\n") + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if this.Value != nil { - s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") + if !this.Http.Equal(that1.Http) { + return false } - s = append(s, "}") - return strings.Join(s, "") + return true } -func (this *LilacCDNMetricsResponseData) GoString() string { - if this == nil { - return "nil" +func (this *ReplaceSpecType_HttpsAutoCert) Equal(that interface{}) bool { + if that == nil { + return this == nil } - s := make([]string, 0, 7) - s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseData{") - s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") - s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") - if this.Series != nil { - s = append(s, "Series: "+fmt.Sprintf("%#v", this.Series)+",\n") + + that1, ok := that.(*ReplaceSpecType_HttpsAutoCert) + if !ok { + that2, ok := that.(ReplaceSpecType_HttpsAutoCert) + if ok { + that1 = &that2 + } else { + return false + } } - s = append(s, "}") - return strings.Join(s, "") -} -func valueToGoStringTypes(v interface{}, typ string) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" + if that1 == nil { + return this == nil + } else if this == nil { + return false } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) -} -func (m *ProxyTypeHttpsAutoCerts) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + return false } - return dAtA[:n], nil + return true } +func (this *ReplaceSpecType_Https) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ProxyTypeHttpsAutoCerts) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + that1, ok := that.(*ReplaceSpecType_Https) + if !ok { + that2, ok := that.(ReplaceSpecType_Https) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Https.Equal(that1.Https) { + return false + } + return true } +func (this *GetSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.ServerHeaderChoice != nil { - { - size := m.ServerHeaderChoice.Size() - i -= size - if _, err := m.ServerHeaderChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + that1, ok := that.(*GetSpecType) + if !ok { + that2, ok := that.(GetSpecType) + if ok { + that1 = &that2 + } else { + return false } } - if m.TlsConfig != nil { - { - size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Domains) != len(that1.Domains) { + return false + } + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { + return false } - i-- - dAtA[i] = 0x1a } - if m.AddHsts { - i-- - if m.AddHsts { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { + return false } - i-- - dAtA[i] = 0x10 + } else if this.LoadbalancerType == nil { + return false + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { + return false } - if m.HttpRedirect { - i-- - if m.HttpRedirect { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if this.AddLocation != that1.AddLocation { + return false + } + if !this.MoreOption.Equal(that1.MoreOption) { + return false + } + if !this.OriginPool.Equal(that1.OriginPool) { + return false + } + if this.HostName != that1.HostName { + return false + } + if len(this.DnsInfo) != len(that1.DnsInfo) { + return false + } + for i := range this.DnsInfo { + if !this.DnsInfo[i].Equal(that1.DnsInfo[i]) { + return false } - i-- - dAtA[i] = 0x8 } - return len(dAtA) - i, nil -} - -func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if this.State != that1.State { + return false + } + if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { + return false + } + if len(this.ServiceDomains) != len(that1.ServiceDomains) { + return false + } + for i := range this.ServiceDomains { + if !this.ServiceDomains[i].Equal(that1.ServiceDomains[i]) { + return false + } + } + if this.CertState != that1.CertState { + return false + } + return true } +func (this *GetSpecType_Http) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultHeader != nil { - { - size, err := m.DefaultHeader.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + that1, ok := that.(*GetSpecType_Http) + if !ok { + that2, ok := that.(GetSpecType_Http) + if ok { + that1 = &that2 + } else { + return false } - i-- - dAtA[i] = 0x2a } - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Http.Equal(that1.Http) { + return false + } + return true } +func (this *GetSpecType_HttpsAutoCert) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ServerName) - copy(dAtA[i:], m.ServerName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ServerName))) - i-- - dAtA[i] = 0x32 - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.AppendServerName) - copy(dAtA[i:], m.AppendServerName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.AppendServerName))) - i-- - dAtA[i] = 0x3a - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PassThrough != nil { - { - size, err := m.PassThrough.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + that1, ok := that.(*GetSpecType_HttpsAutoCert) + if !ok { + that2, ok := that.(GetSpecType_HttpsAutoCert) + if ok { + that1 = &that2 + } else { + return false } - i-- - dAtA[i] = 0x42 } - return len(dAtA) - i, nil -} -func (m *HeaderControlType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return dAtA[:n], nil + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { + return false + } + return true } +func (this *GetSpecType_Https) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *HeaderControlType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + that1, ok := that.(*GetSpecType_Https) + if !ok { + that2, ok := that.(GetSpecType_Https) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Https.Equal(that1.Https) { + return false + } + return true } +func (this *LilacCDNMetricsFilter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *HeaderControlType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ResponseHeadersToRemove) > 0 { - for iNdEx := len(m.ResponseHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ResponseHeadersToRemove[iNdEx]) - copy(dAtA[i:], m.ResponseHeadersToRemove[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ResponseHeadersToRemove[iNdEx]))) - i-- - dAtA[i] = 0x22 + that1, ok := that.(*LilacCDNMetricsFilter) + if !ok { + that2, ok := that.(LilacCDNMetricsFilter) + if ok { + that1 = &that2 + } else { + return false } } - if len(m.ResponseHeadersToAdd) > 0 { - for iNdEx := len(m.ResponseHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ResponseHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if len(m.RequestHeadersToRemove) > 0 { - for iNdEx := len(m.RequestHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.RequestHeadersToRemove[iNdEx]) - copy(dAtA[i:], m.RequestHeadersToRemove[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RequestHeadersToRemove[iNdEx]))) - i-- - dAtA[i] = 0x12 - } + if this.Tag != that1.Tag { + return false } - if len(m.RequestHeadersToAdd) > 0 { - for iNdEx := len(m.RequestHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RequestHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if len(this.Values) != len(that1.Values) { + return false + } + for i := range this.Values { + if this.Values[i] != that1.Values[i] { + return false } } - return len(dAtA) - i, nil -} - -func (m *SecurityOptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.Operator != that1.Operator { + return false } - return dAtA[:n], nil -} - -func (m *SecurityOptionsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return true } +func (this *LilacCDNMetricsResponseGroupBy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *SecurityOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.AuthOptions != nil { - { - size, err := m.AuthOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + that1, ok := that.(*LilacCDNMetricsResponseGroupBy) + if !ok { + that2, ok := that.(LilacCDNMetricsResponseGroupBy) + if ok { + that1 = &that2 + } else { + return false } - i-- - dAtA[i] = 0x4a } - if m.GeoFiltering != nil { - { - size, err := m.GeoFiltering.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 + if that1 == nil { + return this == nil + } else if this == nil { + return false } - if m.IpFiltering != nil { - { - size, err := m.IpFiltering.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if this.Name != that1.Name { + return false } - return len(dAtA) - i, nil -} - -func (m *LoggingOptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.Value != that1.Value { + return false } - return dAtA[:n], nil -} - -func (m *LoggingOptionsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return true } +func (this *LilacCDNMetricsResponseValue) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *LoggingOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.OriginLogOptions != nil { - { - size, err := m.OriginLogOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + that1, ok := that.(*LilacCDNMetricsResponseValue) + if !ok { + that2, ok := that.(LilacCDNMetricsResponseValue) + if ok { + that1 = &that2 + } else { + return false } - i-- - dAtA[i] = 0x42 } - if m.ClientLogOptions != nil { - { - size, err := m.ClientLogOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return len(dAtA) - i, nil -} - -func (m *CDNCacheRuleExpressionList) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.Timestamp != that1.Timestamp { + return false } - return dAtA[:n], nil -} - -func (m *CDNCacheRuleExpressionList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if this.Value != that1.Value { + return false + } + return true } +func (this *LilacCDNMetricsResponseSeries) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *CDNCacheRuleExpressionList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CacheRuleExpression) > 0 { - for iNdEx := len(m.CacheRuleExpression) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.CacheRuleExpression[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + that1, ok := that.(*LilacCDNMetricsResponseSeries) + if !ok { + that2, ok := that.(LilacCDNMetricsResponseSeries) + if ok { + that1 = &that2 + } else { + return false } } - if len(m.ExpressionName) > 0 { - i -= len(m.ExpressionName) - copy(dAtA[i:], m.ExpressionName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ExpressionName))) - i-- - dAtA[i] = 0xa + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return len(dAtA) - i, nil -} - -func (m *CacheOperator) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if len(this.GroupBy) != len(that1.GroupBy) { + return false } - return dAtA[:n], nil -} - -func (m *CacheOperator) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CacheOperator) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.CacheOperator != nil { - { - size := m.CacheOperator.Size() - i -= size - if _, err := m.CacheOperator.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + for i := range this.GroupBy { + if !this.GroupBy[i].Equal(that1.GroupBy[i]) { + return false } } - return len(dAtA) - i, nil -} - -func (m *CacheOperator_Equals) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if len(this.Value) != len(that1.Value) { + return false + } + for i := range this.Value { + if !this.Value[i].Equal(that1.Value[i]) { + return false + } + } + return true } +func (this *LilacCDNMetricsResponseData) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *CacheOperator_Equals) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Equals) - copy(dAtA[i:], m.Equals) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Equals))) - i-- - dAtA[i] = 0x12 - return len(dAtA) - i, nil + that1, ok := that.(*LilacCDNMetricsResponseData) + if !ok { + that2, ok := that.(LilacCDNMetricsResponseData) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Type != that1.Type { + return false + } + if this.Unit != that1.Unit { + return false + } + if len(this.Series) != len(that1.Series) { + return false + } + for i := range this.Series { + if !this.Series[i].Equal(that1.Series[i]) { + return false + } + } + return true } -func (m *CacheOperator_DoesNotEqual) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&cdn_loadbalancer.ProxyTypeHttpsAutoCerts{") + s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") + s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") + if this.TlsConfig != nil { + s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") + } + if this.ServerHeaderChoice != nil { + s = append(s, "ServerHeaderChoice: "+fmt.Sprintf("%#v", this.ServerHeaderChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheOperator_DoesNotEqual) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.DoesNotEqual) - copy(dAtA[i:], m.DoesNotEqual) - i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotEqual))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil +func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_DefaultHeader{` + + `DefaultHeader:` + fmt.Sprintf("%#v", this.DefaultHeader) + `}`}, ", ") + return s } -func (m *CacheOperator_Contains) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_ServerName) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_ServerName{` + + `ServerName:` + fmt.Sprintf("%#v", this.ServerName) + `}`}, ", ") + return s } - -func (m *CacheOperator_Contains) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Contains) - copy(dAtA[i:], m.Contains) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Contains))) - i-- - dAtA[i] = 0x22 - return len(dAtA) - i, nil +func (this *ProxyTypeHttpsAutoCerts_AppendServerName) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_AppendServerName{` + + `AppendServerName:` + fmt.Sprintf("%#v", this.AppendServerName) + `}`}, ", ") + return s } -func (m *CacheOperator_DoesNotContain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_PassThrough) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ProxyTypeHttpsAutoCerts_PassThrough{` + + `PassThrough:` + fmt.Sprintf("%#v", this.PassThrough) + `}`}, ", ") + return s } - -func (m *CacheOperator_DoesNotContain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.DoesNotContain) - copy(dAtA[i:], m.DoesNotContain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotContain))) - i-- - dAtA[i] = 0x2a - return len(dAtA) - i, nil +func (this *HeaderControlType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cdn_loadbalancer.HeaderControlType{") + if this.RequestHeadersToAdd != nil { + s = append(s, "RequestHeadersToAdd: "+fmt.Sprintf("%#v", this.RequestHeadersToAdd)+",\n") + } + s = append(s, "RequestHeadersToRemove: "+fmt.Sprintf("%#v", this.RequestHeadersToRemove)+",\n") + if this.ResponseHeadersToAdd != nil { + s = append(s, "ResponseHeadersToAdd: "+fmt.Sprintf("%#v", this.ResponseHeadersToAdd)+",\n") + } + s = append(s, "ResponseHeadersToRemove: "+fmt.Sprintf("%#v", this.ResponseHeadersToRemove)+",\n") + s = append(s, "}") + return strings.Join(s, "") } -func (m *CacheOperator_Startswith) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *WebApplicationFirewall) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&cdn_loadbalancer.WebApplicationFirewall{") + if this.WafChoice != nil { + s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") + } + if this.WafExclusionRules != nil { + s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") + } + if this.DataGuardRules != nil { + s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") + } + if this.CsrfPolicy != nil { + s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") + } + if this.GraphqlRules != nil { + s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") + } + if this.ProtectedCookies != nil { + s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheOperator_Startswith) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Startswith) - copy(dAtA[i:], m.Startswith) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Startswith))) - i-- - dAtA[i] = 0x32 - return len(dAtA) - i, nil +func (this *WebApplicationFirewall_DisableWaf) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.WebApplicationFirewall_DisableWaf{` + + `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") + return s } -func (m *CacheOperator_DoesNotStartWith) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *WebApplicationFirewall_AppFirewall) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.WebApplicationFirewall_AppFirewall{` + + `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") + return s } - -func (m *CacheOperator_DoesNotStartWith) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.DoesNotStartWith) - copy(dAtA[i:], m.DoesNotStartWith) - i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotStartWith))) - i-- - dAtA[i] = 0x3a - return len(dAtA) - i, nil +func (this *WebApplicationFirewall_AppFirewallOnCacheMiss) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.WebApplicationFirewall_AppFirewallOnCacheMiss{` + + `AppFirewallOnCacheMiss:` + fmt.Sprintf("%#v", this.AppFirewallOnCacheMiss) + `}`}, ", ") + return s } -func (m *CacheOperator_Endswith) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 27) + s = append(s, "&cdn_loadbalancer.CommonSecurityControls{") + if this.ServicePolicyChoice != nil { + s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") + } + if this.IpReputationChoice != nil { + s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") + } + if this.UserIdChoice != nil { + s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") + } + if this.MaliciousUserDetectionChoice != nil { + s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") + } + if this.ChallengeType != nil { + s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") + } + if this.RateLimitChoice != nil { + s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") + } + if this.TrustedClients != nil { + s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") + } + if this.BlockedClients != nil { + s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") + } + if this.CorsPolicy != nil { + s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheOperator_Endswith) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Endswith) - copy(dAtA[i:], m.Endswith) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Endswith))) - i-- - dAtA[i] = 0x42 - return len(dAtA) - i, nil +func (this *CommonSecurityControls_ServicePoliciesFromNamespace) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{` + + `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") + return s } -func (m *CacheOperator_DoesNotEndWith) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls_NoServicePolicies) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_NoServicePolicies{` + + `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") + return s } - -func (m *CacheOperator_DoesNotEndWith) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.DoesNotEndWith) - copy(dAtA[i:], m.DoesNotEndWith) - i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotEndWith))) - i-- - dAtA[i] = 0x4a - return len(dAtA) - i, nil +func (this *CommonSecurityControls_ActiveServicePolicies) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_ActiveServicePolicies{` + + `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") + return s } -func (m *CacheOperator_MatchRegex) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls_DisableIpReputation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_DisableIpReputation{` + + `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") + return s } - -func (m *CacheOperator_MatchRegex) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.MatchRegex) - copy(dAtA[i:], m.MatchRegex) - i = encodeVarintTypes(dAtA, i, uint64(len(m.MatchRegex))) - i-- - dAtA[i] = 0x52 - return len(dAtA) - i, nil +func (this *CommonSecurityControls_EnableIpReputation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_EnableIpReputation{` + + `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") + return s } -func (m *CacheHeaderMatcherType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CommonSecurityControls_IpReputationOnCacheMiss) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_IpReputationOnCacheMiss{` + + `IpReputationOnCacheMiss:` + fmt.Sprintf("%#v", this.IpReputationOnCacheMiss) + `}`}, ", ") + return s } - -func (m *CacheHeaderMatcherType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls_UserIdClientIp) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{` + + `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") + return s } - -func (m *CacheHeaderMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Operator != nil { - { - size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *CommonSecurityControls_UserIdentification) GoString() string { + if this == nil { + return "nil" } - if m.Name != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Name)) - i-- - dAtA[i] = 0x8 + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_UserIdentification{` + + `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") + return s +} +func (this *CommonSecurityControls_DisableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{` + + `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") + return s } - -func (m *CDNPathMatcherType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CommonSecurityControls_EnableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_EnableMaliciousUserDetection{` + + `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") + return s } - -func (m *CDNPathMatcherType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_MaliciousUserDetectionOnCacheMiss{` + + `MaliciousUserDetectionOnCacheMiss:` + fmt.Sprintf("%#v", this.MaliciousUserDetectionOnCacheMiss) + `}`}, ", ") + return s } - -func (m *CDNPathMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Operator != nil { - { - size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *CommonSecurityControls_NoChallenge) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_NoChallenge{` + + `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") + return s } - -func (m *CacheCookieMatcherType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CommonSecurityControls_EnableChallenge) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_EnableChallenge{` + + `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") + return s } - -func (m *CacheCookieMatcherType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls_ChallengeOnCacheMiss) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_ChallengeOnCacheMiss{` + + `ChallengeOnCacheMiss:` + fmt.Sprintf("%#v", this.ChallengeOnCacheMiss) + `}`}, ", ") + return s } - -func (m *CacheCookieMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Operator != nil { - { - size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa +func (this *CommonSecurityControls_JsChallenge) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_JsChallenge{` + + `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") + return s } - -func (m *CacheQueryParameterMatcherType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CommonSecurityControls_CaptchaChallenge) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *CacheQueryParameterMatcherType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_CaptchaChallenge{` + + `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") + return s } - -func (m *CacheQueryParameterMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Operator != nil { - { - size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *CommonSecurityControls_PolicyBasedChallenge) GoString() string { + if this == nil { + return "nil" } - if len(m.Key) > 0 { - i -= len(m.Key) - copy(dAtA[i:], m.Key) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Key))) - i-- - dAtA[i] = 0xa + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_PolicyBasedChallenge{` + + `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") + return s +} +func (this *CommonSecurityControls_DisableRateLimit) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{` + + `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") + return s } - -func (m *CDNCacheRuleExpression) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CommonSecurityControls_ApiRateLimit) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_ApiRateLimit{` + + `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") + return s } - -func (m *CDNCacheRuleExpression) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CommonSecurityControls_RateLimit) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CommonSecurityControls_RateLimit{` + + `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") + return s } - -func (m *CDNCacheRuleExpression) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CookieMatcher) > 0 { - for iNdEx := len(m.CookieMatcher) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.CookieMatcher[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } +func (this *ApiProtection) GoString() string { + if this == nil { + return "nil" } - if len(m.QueryParameters) > 0 { - for iNdEx := len(m.QueryParameters) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.QueryParameters[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } + s := make([]string, 0, 12) + s = append(s, "&cdn_loadbalancer.ApiProtection{") + if this.ApiDefinitionChoice != nil { + s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") } - if len(m.CacheHeaders) > 0 { - for iNdEx := len(m.CacheHeaders) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.CacheHeaders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } + if this.ApiProtectionRules != nil { + s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") } - if m.PathMatch != nil { - { - size, err := m.PathMatch.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if this.JwtValidation != nil { + s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") } - return len(dAtA) - i, nil -} - -func (m *CacheTTLEnableProps) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.ApiDiscoveryChoice != nil { + s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") } - return dAtA[:n], nil -} - -func (m *CacheTTLEnableProps) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheTTLEnableProps) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.IgnoreResponseCookie { - i-- - if m.IgnoreResponseCookie { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x28 - } - if m.CacheOverride { - i-- - if m.CacheOverride { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x20 - } - if len(m.CacheTtl) > 0 { - i -= len(m.CacheTtl) - copy(dAtA[i:], m.CacheTtl) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtl))) - i-- - dAtA[i] = 0xa +func (this *ApiProtection_DisableApiDefinition) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.ApiProtection_DisableApiDefinition{` + + `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *ApiProtection_ApiSpecification) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.ApiProtection_ApiSpecification{` + + `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ApiProtection_ApiSpecificationOnCacheMiss) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ApiProtection_ApiSpecificationOnCacheMiss{` + + `ApiSpecificationOnCacheMiss:` + fmt.Sprintf("%#v", this.ApiSpecificationOnCacheMiss) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.EligibleForCache != nil { - { - size := m.EligibleForCache.Size() - i -= size - if _, err := m.EligibleForCache.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *ApiProtection_EnableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.ApiProtection_EnableApiDiscovery{` + + `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions_SchemeHostnameUri) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ApiProtection_DisableApiDiscovery) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ApiProtection_DisableApiDiscovery{` + + `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions_SchemeHostnameUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SchemeHostnameUri != nil { - { - size, err := m.SchemeHostnameUri.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *ApiProtection_ApiDiscoveryOnCacheMiss) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.ApiProtection_ApiDiscoveryOnCacheMiss{` + + `ApiDiscoveryOnCacheMiss:` + fmt.Sprintf("%#v", this.ApiDiscoveryOnCacheMiss) + `}`}, ", ") + return s } -func (m *CacheEligibleOptions_SchemeHostnameRequestUri) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *SecurityOptionsType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&cdn_loadbalancer.SecurityOptionsType{") + if this.IpFiltering != nil { + s = append(s, "IpFiltering: "+fmt.Sprintf("%#v", this.IpFiltering)+",\n") + } + if this.GeoFiltering != nil { + s = append(s, "GeoFiltering: "+fmt.Sprintf("%#v", this.GeoFiltering)+",\n") + } + if this.AuthOptions != nil { + s = append(s, "AuthOptions: "+fmt.Sprintf("%#v", this.AuthOptions)+",\n") + } + if this.WebAppFirewall != nil { + s = append(s, "WebAppFirewall: "+fmt.Sprintf("%#v", this.WebAppFirewall)+",\n") + } + if this.ApiProtection != nil { + s = append(s, "ApiProtection: "+fmt.Sprintf("%#v", this.ApiProtection)+",\n") + } + if this.CommonSecurityControls != nil { + s = append(s, "CommonSecurityControls: "+fmt.Sprintf("%#v", this.CommonSecurityControls)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheEligibleOptions_SchemeHostnameRequestUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SchemeHostnameRequestUri != nil { - { - size, err := m.SchemeHostnameRequestUri.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *LoggingOptionsType) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.LoggingOptionsType{") + if this.ClientLogOptions != nil { + s = append(s, "ClientLogOptions: "+fmt.Sprintf("%#v", this.ClientLogOptions)+",\n") + } + if this.OriginLogOptions != nil { + s = append(s, "OriginLogOptions: "+fmt.Sprintf("%#v", this.OriginLogOptions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (m *CacheEligibleOptions_HostnameUri) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CDNCacheRuleExpressionList) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CDNCacheRuleExpressionList{") + s = append(s, "ExpressionName: "+fmt.Sprintf("%#v", this.ExpressionName)+",\n") + if this.CacheRuleExpression != nil { + s = append(s, "CacheRuleExpression: "+fmt.Sprintf("%#v", this.CacheRuleExpression)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheEligibleOptions_HostnameUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HostnameUri != nil { - { - size, err := m.HostnameUri.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (this *CacheOperator) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 13) + s = append(s, "&cdn_loadbalancer.CacheOperator{") + if this.CacheOperator != nil { + s = append(s, "CacheOperator: "+fmt.Sprintf("%#v", this.CacheOperator)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (m *CacheEligibleOptions_SchemeHostnameUriQuery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheOperator_Equals) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Equals{` + + `Equals:` + fmt.Sprintf("%#v", this.Equals) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions_SchemeHostnameUriQuery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SchemeHostnameUriQuery != nil { - { - size, err := m.SchemeHostnameUriQuery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *CacheOperator_DoesNotEqual) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotEqual{` + + `DoesNotEqual:` + fmt.Sprintf("%#v", this.DoesNotEqual) + `}`}, ", ") + return s } -func (m *CacheEligibleOptions_SchemeProxyHostUri) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheOperator_Contains) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Contains{` + + `Contains:` + fmt.Sprintf("%#v", this.Contains) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions_SchemeProxyHostUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SchemeProxyHostUri != nil { - { - size, err := m.SchemeProxyHostUri.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (this *CacheOperator_DoesNotContain) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotContain{` + + `DoesNotContain:` + fmt.Sprintf("%#v", this.DoesNotContain) + `}`}, ", ") + return s } -func (m *CacheEligibleOptions_SchemeProxyHostRequestUri) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheOperator_Startswith) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Startswith{` + + `Startswith:` + fmt.Sprintf("%#v", this.Startswith) + `}`}, ", ") + return s } - -func (m *CacheEligibleOptions_SchemeProxyHostRequestUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SchemeProxyHostRequestUri != nil { - { - size, err := m.SchemeProxyHostRequestUri.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a +func (this *CacheOperator_DoesNotStartWith) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotStartWith{` + + `DoesNotStartWith:` + fmt.Sprintf("%#v", this.DoesNotStartWith) + `}`}, ", ") + return s } -func (m *CDNCacheRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CacheOperator_Endswith) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_Endswith{` + + `Endswith:` + fmt.Sprintf("%#v", this.Endswith) + `}`}, ", ") + return s } - -func (m *CDNCacheRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheOperator_DoesNotEndWith) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_DoesNotEndWith{` + + `DoesNotEndWith:` + fmt.Sprintf("%#v", this.DoesNotEndWith) + `}`}, ", ") + return s } - -func (m *CDNCacheRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.CacheActions != nil { - { - size := m.CacheActions.Size() - i -= size - if _, err := m.CacheActions.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *CacheOperator_MatchRegex) GoString() string { + if this == nil { + return "nil" } - if len(m.RuleExpressionList) > 0 { - for iNdEx := len(m.RuleExpressionList) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RuleExpressionList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + s := strings.Join([]string{`&cdn_loadbalancer.CacheOperator_MatchRegex{` + + `MatchRegex:` + fmt.Sprintf("%#v", this.MatchRegex) + `}`}, ", ") + return s +} +func (this *CacheHeaderMatcherType) GoString() string { + if this == nil { + return "nil" } - if len(m.RuleName) > 0 { - i -= len(m.RuleName) - copy(dAtA[i:], m.RuleName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RuleName))) - i-- - dAtA[i] = 0xa + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CacheHeaderMatcherType{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + if this.Operator != nil { + s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") } - return len(dAtA) - i, nil -} - -func (m *CDNCacheRule_CacheBypass) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNCacheRule_CacheBypass) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CacheBypass != nil { - { - size, err := m.CacheBypass.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (this *CDNPathMatcherType) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *CDNCacheRule_EligibleForCache) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := make([]string, 0, 5) + s = append(s, "&cdn_loadbalancer.CDNPathMatcherType{") + if this.Operator != nil { + s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNCacheRule_EligibleForCache) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EligibleForCache != nil { - { - size, err := m.EligibleForCache.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *CacheCookieMatcherType) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CacheCookieMatcherType{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + if this.Operator != nil { + s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (m *DefaultCacheTTLProps) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CacheQueryParameterMatcherType) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CacheQueryParameterMatcherType{") + s = append(s, "Key: "+fmt.Sprintf("%#v", this.Key)+",\n") + if this.Operator != nil { + s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DefaultCacheTTLProps) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CDNCacheRuleExpression) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cdn_loadbalancer.CDNCacheRuleExpression{") + if this.PathMatch != nil { + s = append(s, "PathMatch: "+fmt.Sprintf("%#v", this.PathMatch)+",\n") + } + if this.QueryParameters != nil { + s = append(s, "QueryParameters: "+fmt.Sprintf("%#v", this.QueryParameters)+",\n") + } + if this.CacheHeaders != nil { + s = append(s, "CacheHeaders: "+fmt.Sprintf("%#v", this.CacheHeaders)+",\n") + } + if this.CookieMatcher != nil { + s = append(s, "CookieMatcher: "+fmt.Sprintf("%#v", this.CookieMatcher)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DefaultCacheTTLProps) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CacheTtl) > 0 { - i -= len(m.CacheTtl) - copy(dAtA[i:], m.CacheTtl) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtl))) - i-- - dAtA[i] = 0xa +func (this *CacheTTLEnableProps) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.CacheTTLEnableProps{") + s = append(s, "CacheTtl: "+fmt.Sprintf("%#v", this.CacheTtl)+",\n") + s = append(s, "IgnoreResponseCookie: "+fmt.Sprintf("%#v", this.IgnoreResponseCookie)+",\n") + s = append(s, "CacheOverride: "+fmt.Sprintf("%#v", this.CacheOverride)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DefaultCacheAction) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CacheEligibleOptions) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := make([]string, 0, 10) + s = append(s, "&cdn_loadbalancer.CacheEligibleOptions{") + if this.EligibleForCache != nil { + s = append(s, "EligibleForCache: "+fmt.Sprintf("%#v", this.EligibleForCache)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DefaultCacheAction) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheEligibleOptions_SchemeHostnameUri) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUri{` + + `SchemeHostnameUri:` + fmt.Sprintf("%#v", this.SchemeHostnameUri) + `}`}, ", ") + return s } - -func (m *DefaultCacheAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.CacheActions != nil { - { - size := m.CacheActions.Size() - i -= size - if _, err := m.CacheActions.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *CacheEligibleOptions_SchemeHostnameRequestUri) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameRequestUri{` + + `SchemeHostnameRequestUri:` + fmt.Sprintf("%#v", this.SchemeHostnameRequestUri) + `}`}, ", ") + return s } - -func (m *DefaultCacheAction_EligibleForCache) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheEligibleOptions_HostnameUri) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_HostnameUri{` + + `HostnameUri:` + fmt.Sprintf("%#v", this.HostnameUri) + `}`}, ", ") + return s } - -func (m *DefaultCacheAction_EligibleForCache) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EligibleForCache != nil { - { - size, err := m.EligibleForCache.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *CacheEligibleOptions_SchemeHostnameUriQuery) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUriQuery{` + + `SchemeHostnameUriQuery:` + fmt.Sprintf("%#v", this.SchemeHostnameUriQuery) + `}`}, ", ") + return s } -func (m *DefaultCacheAction_CacheTtlDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheEligibleOptions_SchemeProxyHostUri) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostUri{` + + `SchemeProxyHostUri:` + fmt.Sprintf("%#v", this.SchemeProxyHostUri) + `}`}, ", ") + return s } - -func (m *DefaultCacheAction_CacheTtlDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.CacheTtlDefault) - copy(dAtA[i:], m.CacheTtlDefault) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlDefault))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil +func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostRequestUri{` + + `SchemeProxyHostRequestUri:` + fmt.Sprintf("%#v", this.SchemeProxyHostRequestUri) + `}`}, ", ") + return s } -func (m *DefaultCacheAction_CacheTtlOverride) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CDNCacheRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&cdn_loadbalancer.CDNCacheRule{") + s = append(s, "RuleName: "+fmt.Sprintf("%#v", this.RuleName)+",\n") + if this.RuleExpressionList != nil { + s = append(s, "RuleExpressionList: "+fmt.Sprintf("%#v", this.RuleExpressionList)+",\n") + } + if this.CacheActions != nil { + s = append(s, "CacheActions: "+fmt.Sprintf("%#v", this.CacheActions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *DefaultCacheAction_CacheTtlOverride) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.CacheTtlOverride) - copy(dAtA[i:], m.CacheTtlOverride) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlOverride))) - i-- - dAtA[i] = 0x22 - return len(dAtA) - i, nil -} -func (m *DefaultCacheAction_CacheDisabled) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *DefaultCacheAction_CacheDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CacheDisabled != nil { - { - size, err := m.CacheDisabled.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *CDNCacheRule_CacheBypass) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CDNCacheRule_CacheBypass{` + + `CacheBypass:` + fmt.Sprintf("%#v", this.CacheBypass) + `}`}, ", ") + return s } -func (m *CacheOptions) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CDNCacheRule_EligibleForCache) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CDNCacheRule_EligibleForCache{` + + `EligibleForCache:` + fmt.Sprintf("%#v", this.EligibleForCache) + `}`}, ", ") + return s } - -func (m *CacheOptions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *DefaultCacheTTLProps) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&cdn_loadbalancer.DefaultCacheTTLProps{") + s = append(s, "CacheTtl: "+fmt.Sprintf("%#v", this.CacheTtl)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CacheRules) > 0 { - for iNdEx := len(m.CacheRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.CacheRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } +func (this *DefaultCacheAction) GoString() string { + if this == nil { + return "nil" } - if m.DefaultCacheAction != nil { - { - size, err := m.DefaultCacheAction.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + s := make([]string, 0, 8) + s = append(s, "&cdn_loadbalancer.DefaultCacheAction{") + if this.CacheActions != nil { + s = append(s, "CacheActions: "+fmt.Sprintf("%#v", this.CacheActions)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheTTLOptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *DefaultCacheAction_EligibleForCache) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *CacheTTLOptionsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_EligibleForCache{` + + `EligibleForCache:` + fmt.Sprintf("%#v", this.EligibleForCache) + `}`}, ", ") + return s } - -func (m *CacheTTLOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TtlOptions != nil { - { - size := m.TtlOptions.Size() - i -= size - if _, err := m.TtlOptions.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *DefaultCacheAction_CacheTtlDefault) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} - -func (m *CacheTTLOptionsType_CacheTtlDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_CacheTtlDefault{` + + `CacheTtlDefault:` + fmt.Sprintf("%#v", this.CacheTtlDefault) + `}`}, ", ") + return s } - -func (m *CacheTTLOptionsType_CacheTtlDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.CacheTtlDefault) - copy(dAtA[i:], m.CacheTtlDefault) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlDefault))) - i-- - dAtA[i] = 0x12 - return len(dAtA) - i, nil +func (this *DefaultCacheAction_CacheTtlOverride) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_CacheTtlOverride{` + + `CacheTtlOverride:` + fmt.Sprintf("%#v", this.CacheTtlOverride) + `}`}, ", ") + return s } -func (m *CacheTTLOptionsType_CacheTtlOverride) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *DefaultCacheAction_CacheDisabled) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.DefaultCacheAction_CacheDisabled{` + + `CacheDisabled:` + fmt.Sprintf("%#v", this.CacheDisabled) + `}`}, ", ") + return s } - -func (m *CacheTTLOptionsType_CacheTtlOverride) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.CacheTtlOverride) - copy(dAtA[i:], m.CacheTtlOverride) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlOverride))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil +func (this *CacheOptions) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CacheOptions{") + if this.DefaultCacheAction != nil { + s = append(s, "DefaultCacheAction: "+fmt.Sprintf("%#v", this.DefaultCacheAction)+",\n") + } + if this.CacheRules != nil { + s = append(s, "CacheRules: "+fmt.Sprintf("%#v", this.CacheRules)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (m *CacheTTLOptionsType_CacheDisabled) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheTTLOptionsType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.CacheTTLOptionsType{") + if this.TtlOptions != nil { + s = append(s, "TtlOptions: "+fmt.Sprintf("%#v", this.TtlOptions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CacheTTLOptionsType_CacheDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CacheDisabled != nil { - { - size, err := m.CacheDisabled.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (this *CacheTTLOptionsType_CacheTtlDefault) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheTTLOptionsType_CacheTtlDefault{` + + `CacheTtlDefault:` + fmt.Sprintf("%#v", this.CacheTtlDefault) + `}`}, ", ") + return s } -func (m *AdvancedOptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CacheTTLOptionsType_CacheTtlOverride) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CacheTTLOptionsType_CacheTtlOverride{` + + `CacheTtlOverride:` + fmt.Sprintf("%#v", this.CacheTtlOverride) + `}`}, ", ") + return s } - -func (m *AdvancedOptionsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CacheTTLOptionsType_CacheDisabled) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CacheTTLOptionsType_CacheDisabled{` + + `CacheDisabled:` + fmt.Sprintf("%#v", this.CacheDisabled) + `}`}, ", ") + return s } - -func (m *AdvancedOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.CacheOptions != nil { - { - size, err := m.CacheOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa2 +func (this *AdvancedOptionsType) GoString() string { + if this == nil { + return "nil" } - if m.CacheTtlOptions != nil { - { - size, err := m.CacheTtlOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + s := make([]string, 0, 9) + s = append(s, "&cdn_loadbalancer.AdvancedOptionsType{") + if this.HeaderOptions != nil { + s = append(s, "HeaderOptions: "+fmt.Sprintf("%#v", this.HeaderOptions)+",\n") } - if m.LoggingOptions != nil { - { - size, err := m.LoggingOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 + if this.SecurityOptions != nil { + s = append(s, "SecurityOptions: "+fmt.Sprintf("%#v", this.SecurityOptions)+",\n") } - if m.SecurityOptions != nil { - { - size, err := m.SecurityOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x8a + if this.LoggingOptions != nil { + s = append(s, "LoggingOptions: "+fmt.Sprintf("%#v", this.LoggingOptions)+",\n") } - if m.HeaderOptions != nil { - { - size, err := m.HeaderOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 + if this.CacheTtlOptions != nil { + s = append(s, "CacheTtlOptions: "+fmt.Sprintf("%#v", this.CacheTtlOptions)+",\n") } - return len(dAtA) - i, nil -} - -func (m *CDNTLSConfig) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if this.CacheOptions != nil { + s = append(s, "CacheOptions: "+fmt.Sprintf("%#v", this.CacheOptions)+",\n") } - return dAtA[:n], nil -} - -func (m *CDNTLSConfig) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNTLSConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Choice != nil { - { - size := m.Choice.Size() - i -= size - if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *CDNTLSConfig) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} - -func (m *CDNTLSConfig_Tls_12Plus) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CDNTLSConfig_Tls_12Plus) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Tls_12Plus != nil { - { - size, err := m.Tls_12Plus.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CDNTLSConfig{") + if this.Choice != nil { + s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") } - return len(dAtA) - i, nil -} -func (m *CDNTLSConfig_Tls_11Plus) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNTLSConfig_Tls_11Plus) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Tls_11Plus != nil { - { - size, err := m.Tls_11Plus.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *CDNTLSConfig_Tls_12Plus) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{` + + `Tls_12Plus:` + fmt.Sprintf("%#v", this.Tls_12Plus) + `}`}, ", ") + return s } -func (m *CDNHTTPSAutoCertsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CDNTLSConfig_Tls_11Plus) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{` + + `Tls_11Plus:` + fmt.Sprintf("%#v", this.Tls_11Plus) + `}`}, ", ") + return s } - -func (m *CDNHTTPSAutoCertsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CDNHTTPSAutoCertsType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.CDNHTTPSAutoCertsType{") + s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") + s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") + if this.TlsConfig != nil { + s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNHTTPSAutoCertsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TlsConfig != nil { - { - size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *CDNDownstreamTlsParamsType) GoString() string { + if this == nil { + return "nil" } - if m.AddHsts { - i-- - if m.AddHsts { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x10 + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.CDNDownstreamTlsParamsType{") + if this.TlsConfig != nil { + s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") } - if m.HttpRedirect { - i-- - if m.HttpRedirect { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x8 + if this.TlsCertificates != nil { + s = append(s, "TlsCertificates: "+fmt.Sprintf("%#v", this.TlsCertificates)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNDownstreamTlsParamsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CDNHTTPSCustomCertsType) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *CDNDownstreamTlsParamsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.CDNHTTPSCustomCertsType{") + s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") + s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") + if this.TlsParameters != nil { + s = append(s, "TlsParameters: "+fmt.Sprintf("%#v", this.TlsParameters)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNDownstreamTlsParamsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.TlsCertificates) > 0 { - for iNdEx := len(m.TlsCertificates) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.TlsCertificates[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" } - if m.TlsConfig != nil { - { - size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + s := make([]string, 0, 19) + s = append(s, "&cdn_loadbalancer.GlobalSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") } - return len(dAtA) - i, nil + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + } + if this.OriginPool != nil { + s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + } + if this.ViewInternal != nil { + s = append(s, "ViewInternal: "+fmt.Sprintf("%#v", this.ViewInternal)+",\n") + } + s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") + if this.DnsInfo != nil { + s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") + } + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "AutoCertState: "+fmt.Sprintf("%#v", this.AutoCertState)+",\n") + if this.AutoCertInfo != nil { + s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") + } + if this.ServiceDomains != nil { + s = append(s, "ServiceDomains: "+fmt.Sprintf("%#v", this.ServiceDomains)+",\n") + } + s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *CDNHTTPSCustomCertsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *GlobalSpecType_Http) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.GlobalSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s } - -func (m *CDNHTTPSCustomCertsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.GlobalSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s } - -func (m *CDNHTTPSCustomCertsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TlsParameters != nil { - { - size, err := m.TlsParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *GlobalSpecType_Https) GoString() string { + if this == nil { + return "nil" } - if m.AddHsts { - i-- - if m.AddHsts { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x10 + s := strings.Join([]string{`&cdn_loadbalancer.GlobalSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s +} +func (this *IpFilteringOptions) GoString() string { + if this == nil { + return "nil" } - if m.HttpRedirect { - i-- - if m.HttpRedirect { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x8 + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.IpFilteringOptions{") + if this.IpFilteringType != nil { + s = append(s, "IpFilteringType: "+fmt.Sprintf("%#v", this.IpFilteringType)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } - -func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *IpFilteringOptions_AllowList) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil -} - -func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&cdn_loadbalancer.IpFilteringOptions_AllowList{` + + `AllowList:` + fmt.Sprintf("%#v", this.AllowList) + `}`}, ", ") + return s } - -func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.CertState != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0xa0 +func (this *IpFilteringOptions_BlockList) GoString() string { + if this == nil { + return "nil" } - if len(m.ServiceDomains) > 0 { - for iNdEx := len(m.ServiceDomains) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ServiceDomains[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x9a - } + s := strings.Join([]string{`&cdn_loadbalancer.IpFilteringOptions_BlockList{` + + `BlockList:` + fmt.Sprintf("%#v", this.BlockList) + `}`}, ", ") + return s +} +func (this *GeoFilteringOptions) GoString() string { + if this == nil { + return "nil" } - if m.AutoCertInfo != nil { - { - size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x92 + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.GeoFilteringOptions{") + if this.GeoFilteringType != nil { + s = append(s, "GeoFilteringType: "+fmt.Sprintf("%#v", this.GeoFilteringType)+",\n") } - if m.AutoCertState != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.AutoCertState)) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xe0 + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GeoFilteringOptions_AllowList) GoString() string { + if this == nil { + return "nil" } - if m.State != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd8 + s := strings.Join([]string{`&cdn_loadbalancer.GeoFilteringOptions_AllowList{` + + `AllowList:` + fmt.Sprintf("%#v", this.AllowList) + `}`}, ", ") + return s +} +func (this *GeoFilteringOptions_BlockList) GoString() string { + if this == nil { + return "nil" } - if len(m.DnsInfo) > 0 { - for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd2 - } - } - if len(m.HostName) > 0 { - i -= len(m.HostName) - copy(dAtA[i:], m.HostName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xca - } - if m.ViewInternal != nil { - { - size, err := m.ViewInternal.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xc2 - } - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&cdn_loadbalancer.GeoFilteringOptions_BlockList{` + + `BlockList:` + fmt.Sprintf("%#v", this.BlockList) + `}`}, ", ") + return s +} +func (this *LogHeaderOptions) GoString() string { + if this == nil { + return "nil" } - if m.OriginPool != nil { - { - size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 + s := make([]string, 0, 5) + s = append(s, "&cdn_loadbalancer.LogHeaderOptions{") + s = append(s, "HeaderList: "+fmt.Sprintf("%#v", this.HeaderList)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CDNCustomAuthentication) GoString() string { + if this == nil { + return "nil" } - if m.MoreOption != nil { - { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a + s := make([]string, 0, 5) + s = append(s, "&cdn_loadbalancer.CDNCustomAuthentication{") + s = append(s, "CustomAuthConfig: "+fmt.Sprintf("%#v", this.CustomAuthConfig)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AuthenticationOptions) GoString() string { + if this == nil { + return "nil" } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x58 + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.AuthenticationOptions{") + if this.AuthOptions != nil { + s = append(s, "AuthOptions: "+fmt.Sprintf("%#v", this.AuthOptions)+",\n") } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AuthenticationOptions_DisableAuth) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.AuthenticationOptions_DisableAuth{` + + `DisableAuth:` + fmt.Sprintf("%#v", this.DisableAuth) + `}`}, ", ") + return s } - -func (m *GlobalSpecType_Http) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *AuthenticationOptions_Jwt) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.AuthenticationOptions_Jwt{` + + `Jwt:` + fmt.Sprintf("%#v", this.Jwt) + `}`}, ", ") + return s } - -func (m *GlobalSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Http != nil { - { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *AuthenticationOptions_Custom) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.AuthenticationOptions_Custom{` + + `Custom:` + fmt.Sprintf("%#v", this.Custom) + `}`}, ", ") + return s } -func (m *GlobalSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CDNOriginServerType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.CDNOriginServerType{") + if this.Choice != nil { + s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") + } + s = append(s, "Port: "+fmt.Sprintf("%#v", this.Port)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *GlobalSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HttpsAutoCert != nil { - { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 +func (this *CDNOriginServerType_PublicIp) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CDNOriginServerType_PublicIp{` + + `PublicIp:` + fmt.Sprintf("%#v", this.PublicIp) + `}`}, ", ") + return s } -func (m *GlobalSpecType_Https) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CDNOriginServerType_PublicName) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CDNOriginServerType_PublicName{` + + `PublicName:` + fmt.Sprintf("%#v", this.PublicName) + `}`}, ", ") + return s } - -func (m *GlobalSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Https != nil { - { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a +func (this *CdnOriginPoolType) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 11) + s = append(s, "&cdn_loadbalancer.CdnOriginPoolType{") + if this.PublicName != nil { + s = append(s, "PublicName: "+fmt.Sprintf("%#v", this.PublicName)+",\n") + } + if this.TlsChoice != nil { + s = append(s, "TlsChoice: "+fmt.Sprintf("%#v", this.TlsChoice)+",\n") + } + if this.OriginServers != nil { + s = append(s, "OriginServers: "+fmt.Sprintf("%#v", this.OriginServers)+",\n") + } + s = append(s, "FollowOriginRedirect: "+fmt.Sprintf("%#v", this.FollowOriginRedirect)+",\n") + s = append(s, "OriginRequestTimeout: "+fmt.Sprintf("%#v", this.OriginRequestTimeout)+",\n") + if this.MoreOriginOptions != nil { + s = append(s, "MoreOriginOptions: "+fmt.Sprintf("%#v", this.MoreOriginOptions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (m *IpFilteringOptions) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CdnOriginPoolType_NoTls) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CdnOriginPoolType_NoTls{` + + `NoTls:` + fmt.Sprintf("%#v", this.NoTls) + `}`}, ", ") + return s } - -func (m *IpFilteringOptions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *IpFilteringOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.IpFilteringType != nil { - { - size := m.IpFilteringType.Size() - i -= size - if _, err := m.IpFilteringType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *CdnOriginPoolType_UseTls) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} - -func (m *IpFilteringOptions_AllowList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&cdn_loadbalancer.CdnOriginPoolType_UseTls{` + + `UseTls:` + fmt.Sprintf("%#v", this.UseTls) + `}`}, ", ") + return s } - -func (m *IpFilteringOptions_AllowList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AllowList != nil { - { - size, err := m.AllowList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *OriginAdvancedConfiguration) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *IpFilteringOptions_BlockList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.OriginAdvancedConfiguration{") + s = append(s, "DisableByteRangeRequest: "+fmt.Sprintf("%#v", this.DisableByteRangeRequest)+",\n") + s = append(s, "WebsocketProxy: "+fmt.Sprintf("%#v", this.WebsocketProxy)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *IpFilteringOptions_BlockList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BlockList != nil { - { - size, err := m.BlockList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *CreateSpecType) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GeoFilteringOptions) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + s := make([]string, 0, 11) + s = append(s, "&cdn_loadbalancer.CreateSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") } - return dAtA[:n], nil -} - -func (m *GeoFilteringOptions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GeoFilteringOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.GeoFilteringType != nil { - { - size := m.GeoFilteringType.Size() - i -= size - if _, err := m.GeoFilteringType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") } - return len(dAtA) - i, nil -} - -func (m *GeoFilteringOptions_AllowList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GeoFilteringOptions_AllowList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AllowList != nil { - { - size, err := m.AllowList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + if this.OriginPool != nil { + s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") } - return len(dAtA) - i, nil + s = append(s, "}") + return strings.Join(s, "") } -func (m *GeoFilteringOptions_BlockList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_Http) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.CreateSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s } - -func (m *GeoFilteringOptions_BlockList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BlockList != nil { - { - size, err := m.BlockList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *CreateSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.CreateSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s } -func (m *LogHeaderOptions) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CreateSpecType_Https) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.CreateSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s } - -func (m *LogHeaderOptions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&cdn_loadbalancer.ReplaceSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + } + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + } + if this.OriginPool != nil { + s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } - -func (m *LogHeaderOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.HeaderList) > 0 { - for iNdEx := len(m.HeaderList) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.HeaderList[iNdEx]) - copy(dAtA[i:], m.HeaderList[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HeaderList[iNdEx]))) - i-- - dAtA[i] = 0xa - } +func (this *ReplaceSpecType_Http) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&cdn_loadbalancer.ReplaceSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s } - -func (m *CDNCustomAuthentication) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *ReplaceSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&cdn_loadbalancer.ReplaceSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s } - -func (m *CDNCustomAuthentication) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_Https) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.ReplaceSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s } - -func (m *CDNCustomAuthentication) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CustomAuthConfig) > 0 { - i -= len(m.CustomAuthConfig) - copy(dAtA[i:], m.CustomAuthConfig) - i = encodeVarintTypes(dAtA, i, uint64(len(m.CustomAuthConfig))) - i-- - dAtA[i] = 0xa +func (this *GetSpecType) GoString() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := make([]string, 0, 17) + s = append(s, "&cdn_loadbalancer.GetSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + } + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + } + if this.OriginPool != nil { + s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + } + s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") + if this.DnsInfo != nil { + s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") + } + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + if this.AutoCertInfo != nil { + s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") + } + if this.ServiceDomains != nil { + s = append(s, "ServiceDomains: "+fmt.Sprintf("%#v", this.ServiceDomains)+",\n") + } + s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") + s = append(s, "}") + return strings.Join(s, "") } - -func (m *AuthenticationOptions) Marshal() (dAtA []byte, err error) { +func (this *GetSpecType_Http) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.GetSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s +} +func (this *GetSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.GetSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s +} +func (this *GetSpecType_Https) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&cdn_loadbalancer.GetSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s +} +func (this *LilacCDNMetricsFilter) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.LilacCDNMetricsFilter{") + s = append(s, "Tag: "+fmt.Sprintf("%#v", this.Tag)+",\n") + s = append(s, "Values: "+fmt.Sprintf("%#v", this.Values)+",\n") + s = append(s, "Operator: "+fmt.Sprintf("%#v", this.Operator)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *LilacCDNMetricsResponseGroupBy) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseGroupBy{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *LilacCDNMetricsResponseValue) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseValue{") + s = append(s, "Timestamp: "+fmt.Sprintf("%#v", this.Timestamp)+",\n") + s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *LilacCDNMetricsResponseSeries) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseSeries{") + if this.GroupBy != nil { + s = append(s, "GroupBy: "+fmt.Sprintf("%#v", this.GroupBy)+",\n") + } + if this.Value != nil { + s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *LilacCDNMetricsResponseData) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&cdn_loadbalancer.LilacCDNMetricsResponseData{") + s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") + s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") + if this.Series != nil { + s = append(s, "Series: "+fmt.Sprintf("%#v", this.Series)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *ProxyTypeHttpsAutoCerts) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10248,38 +10398,28 @@ func (m *AuthenticationOptions) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *AuthenticationOptions) MarshalTo(dAtA []byte) (int, error) { +func (m *ProxyTypeHttpsAutoCerts) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AuthenticationOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.AuthOptions != nil { + if m.ServerHeaderChoice != nil { { - size := m.AuthOptions.Size() + size := m.ServerHeaderChoice.Size() i -= size - if _, err := m.AuthOptions.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.ServerHeaderChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - return len(dAtA) - i, nil -} - -func (m *AuthenticationOptions_DisableAuth) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AuthenticationOptions_DisableAuth) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableAuth != nil { + if m.TlsConfig != nil { { - size, err := m.DisableAuth.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10287,20 +10427,41 @@ func (m *AuthenticationOptions_DisableAuth) MarshalToSizedBuffer(dAtA []byte) (i i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x1a + } + if m.AddHsts { + i-- + if m.AddHsts { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 + } + if m.HttpRedirect { + i-- + if m.HttpRedirect { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *AuthenticationOptions_Jwt) MarshalTo(dAtA []byte) (int, error) { + +func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AuthenticationOptions_Jwt) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Jwt != nil { + if m.DefaultHeader != nil { { - size, err := m.Jwt.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DefaultHeader.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10308,20 +10469,48 @@ func (m *AuthenticationOptions_Jwt) MarshalToSizedBuffer(dAtA []byte) (int, erro i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x2a } return len(dAtA) - i, nil } -func (m *AuthenticationOptions_Custom) MarshalTo(dAtA []byte) (int, error) { +func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AuthenticationOptions_Custom) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Custom != nil { + i -= len(m.ServerName) + copy(dAtA[i:], m.ServerName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ServerName))) + i-- + dAtA[i] = 0x32 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.AppendServerName) + copy(dAtA[i:], m.AppendServerName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AppendServerName))) + i-- + dAtA[i] = 0x3a + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PassThrough != nil { { - size, err := m.Custom.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.PassThrough.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10329,11 +10518,11 @@ func (m *AuthenticationOptions_Custom) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x42 } return len(dAtA) - i, nil } -func (m *CDNOriginServerType) Marshal() (dAtA []byte, err error) { +func (m *HeaderControlType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10343,76 +10532,66 @@ func (m *CDNOriginServerType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *CDNOriginServerType) MarshalTo(dAtA []byte) (int, error) { +func (m *HeaderControlType) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNOriginServerType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *HeaderControlType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Port != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Port)) - i-- - dAtA[i] = 0x20 - } - if m.Choice != nil { - { - size := m.Choice.Size() - i -= size - if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.ResponseHeadersToRemove) > 0 { + for iNdEx := len(m.ResponseHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ResponseHeadersToRemove[iNdEx]) + copy(dAtA[i:], m.ResponseHeadersToRemove[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ResponseHeadersToRemove[iNdEx]))) + i-- + dAtA[i] = 0x22 } } - return len(dAtA) - i, nil -} - -func (m *CDNOriginServerType_PublicIp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CDNOriginServerType_PublicIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PublicIp != nil { - { - size, err := m.PublicIp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.ResponseHeadersToAdd) > 0 { + for iNdEx := len(m.ResponseHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ResponseHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x1a } - i-- - dAtA[i] = 0x12 } - return len(dAtA) - i, nil -} -func (m *CDNOriginServerType_PublicName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CDNOriginServerType_PublicName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PublicName != nil { - { - size, err := m.PublicName.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err + if len(m.RequestHeadersToRemove) > 0 { + for iNdEx := len(m.RequestHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.RequestHeadersToRemove[iNdEx]) + copy(dAtA[i:], m.RequestHeadersToRemove[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RequestHeadersToRemove[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.RequestHeadersToAdd) > 0 { + for iNdEx := len(m.RequestHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RequestHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *CdnOriginPoolType) Marshal() (dAtA []byte, err error) { + +func (m *WebApplicationFirewall) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10422,49 +10601,29 @@ func (m *CdnOriginPoolType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *CdnOriginPoolType) MarshalTo(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CdnOriginPoolType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.MoreOriginOptions != nil { + if m.WafChoice != nil { { - size, err := m.MoreOriginOptions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { + size := m.WafChoice.Size() + i -= size + if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 - } - if len(m.OriginRequestTimeout) > 0 { - i -= len(m.OriginRequestTimeout) - copy(dAtA[i:], m.OriginRequestTimeout) - i = encodeVarintTypes(dAtA, i, uint64(len(m.OriginRequestTimeout))) - i-- - dAtA[i] = 0x3a - } - if m.FollowOriginRedirect { - i-- - if m.FollowOriginRedirect { - dAtA[i] = 1 - } else { - dAtA[i] = 0 } - i-- - dAtA[i] = 0x30 } - if len(m.OriginServers) > 0 { - for iNdEx := len(m.OriginServers) - 1; iNdEx >= 0; iNdEx-- { + if len(m.ProtectedCookies) > 0 { + for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.OriginServers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10472,21 +10631,26 @@ func (m *CdnOriginPoolType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x42 } } - if m.TlsChoice != nil { - { - size := m.TlsChoice.Size() - i -= size - if _, err := m.TlsChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err + if len(m.GraphqlRules) > 0 { + for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x3a } } - if m.PublicName != nil { + if m.CsrfPolicy != nil { { - size, err := m.PublicName.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10494,21 +10658,49 @@ func (m *CdnOriginPoolType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa + dAtA[i] = 0x32 + } + if len(m.DataGuardRules) > 0 { + for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + } + if len(m.WafExclusionRules) > 0 { + for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } } return len(dAtA) - i, nil } -func (m *CdnOriginPoolType_NoTls) MarshalTo(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall_DisableWaf) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CdnOriginPoolType_NoTls) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.NoTls != nil { + if m.DisableWaf != nil { { - size, err := m.NoTls.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10516,20 +10708,20 @@ func (m *CdnOriginPoolType_NoTls) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x12 } return len(dAtA) - i, nil } -func (m *CdnOriginPoolType_UseTls) MarshalTo(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall_AppFirewall) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CdnOriginPoolType_UseTls) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.UseTls != nil { + if m.AppFirewall != nil { { - size, err := m.UseTls.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10537,54 +10729,32 @@ func (m *CdnOriginPoolType_UseTls) MarshalToSizedBuffer(dAtA []byte) (int, error i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *OriginAdvancedConfiguration) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *OriginAdvancedConfiguration) MarshalTo(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall_AppFirewallOnCacheMiss) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *OriginAdvancedConfiguration) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *WebApplicationFirewall_AppFirewallOnCacheMiss) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.WebsocketProxy { - i-- - if m.WebsocketProxy { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x10 - } - if m.DisableByteRangeRequest { - i-- - if m.DisableByteRangeRequest { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if m.AppFirewallOnCacheMiss != nil { + { + size, err := m.AppFirewallOnCacheMiss.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x4a } return len(dAtA) - i, nil } - -func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { +func (m *CommonSecurityControls) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10594,42 +10764,46 @@ func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.LoadbalancerType != nil { + if m.ChallengeType != nil { { - size := m.LoadbalancerType.Size() + size := m.ChallengeType.Size() i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.OriginPool != nil { + if m.MaliciousUserDetectionChoice != nil { { - size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { + size := m.MaliciousUserDetectionChoice.Size() + i -= size + if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } + } + } + if m.IpReputationChoice != nil { + { + size := m.IpReputationChoice.Size() i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 } - if m.MoreOption != nil { + if m.CorsPolicy != nil { { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10637,61 +10811,82 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x6a - } - if m.AddLocation { + dAtA[i] = 0x1 i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + dAtA[i] = 0xd2 + } + if len(m.BlockedClients) > 0 { + for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xca } - i-- - dAtA[i] = 0x58 } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + if len(m.TrustedClients) > 0 { + for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } i-- - dAtA[i] = 0xa + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 } } - return len(dAtA) - i, nil -} - -func (m *CreateSpecType_Http) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CreateSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Http != nil { + if m.RateLimitChoice != nil { { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { + size := m.RateLimitChoice.Size() + i -= size + if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } + } + } + if m.UserIdChoice != nil { + { + size := m.UserIdChoice.Size() i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ServicePolicyChoice != nil { + { + size := m.ServicePolicyChoice.Size() + i -= size + if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - i-- - dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *CreateSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + +func (m *CommonSecurityControls_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.HttpsAutoCert != nil { + if m.ServicePoliciesFromNamespace != nil { { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10699,22 +10894,20 @@ func (m *CreateSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 + dAtA[i] = 0x12 } return len(dAtA) - i, nil } -func (m *CreateSpecType_Https) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Https != nil { + if m.NoServicePolicies != nil { { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10722,58 +10915,20 @@ func (m *CreateSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.OriginPool != nil { - { - size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 - } - if m.MoreOption != nil { + if m.ActiveServicePolicies != nil { { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10781,40 +10936,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x6a - } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x58 - } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } + dAtA[i] = 0x22 } return len(dAtA) - i, nil } - -func (m *ReplaceSpecType_Http) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Http != nil { + if m.DisableIpReputation != nil { { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10822,20 +10957,20 @@ func (m *ReplaceSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x32 } return len(dAtA) - i, nil } -func (m *ReplaceSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.HttpsAutoCert != nil { + if m.EnableIpReputation != nil { { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10843,22 +10978,20 @@ func (m *ReplaceSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 + dAtA[i] = 0x3a } return len(dAtA) - i, nil } -func (m *ReplaceSpecType_Https) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Https != nil { + if m.UserIdClientIp != nil { { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10866,58 +10999,20 @@ func (m *ReplaceSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + dAtA[i] = 0x4a } return len(dAtA) - i, nil } -func (m *GetSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_UserIdentification) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.CertState != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0xa0 - } - if len(m.ServiceDomains) > 0 { - for iNdEx := len(m.ServiceDomains) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ServiceDomains[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x9a - } - } - if m.AutoCertInfo != nil { + if m.UserIdentification != nil { { - size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10925,54 +11020,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x92 - } - if m.State != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd8 - } - if len(m.DnsInfo) > 0 { - for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd2 - } - } - if len(m.HostName) > 0 { - i -= len(m.HostName) - copy(dAtA[i:], m.HostName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xca - } - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0x52 } - if m.OriginPool != nil { + return len(dAtA) - i, nil +} +func (m *CommonSecurityControls_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CommonSecurityControls_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMaliciousUserDetection != nil { { - size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10980,13 +11041,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 + dAtA[i] = 0x62 } - if m.MoreOption != nil { + return len(dAtA) - i, nil +} +func (m *CommonSecurityControls_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CommonSecurityControls_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableMaliciousUserDetection != nil { { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10996,38 +11064,18 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x6a } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x58 - } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } - } return len(dAtA) - i, nil } - -func (m *GetSpecType_Http) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_NoChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GetSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Http != nil { + if m.NoChallenge != nil { { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -11035,20 +11083,20 @@ func (m *GetSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x7a } return len(dAtA) - i, nil } -func (m *GetSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GetSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.HttpsAutoCert != nil { + if m.EnableChallenge != nil { { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -11058,20 +11106,20 @@ func (m *GetSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, erro i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0x92 + dAtA[i] = 0x82 } return len(dAtA) - i, nil } -func (m *GetSpecType_Https) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_JsChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GetSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.Https != nil { + if m.JsChallenge != nil { { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -11081,176 +11129,195 @@ func (m *GetSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0x9a + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *LilacCDNMetricsFilter) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *LilacCDNMetricsFilter) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsFilter) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.Operator != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Operator)) - i-- - dAtA[i] = 0x18 - } - if len(m.Values) > 0 { - for iNdEx := len(m.Values) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Values[iNdEx]) - copy(dAtA[i:], m.Values[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Values[iNdEx]))) - i-- - dAtA[i] = 0x12 + if m.CaptchaChallenge != nil { + { + size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } - if m.Tag != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Tag)) i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } return len(dAtA) - i, nil } - -func (m *LilacCDNMetricsResponseGroupBy) Marshal() (dAtA []byte, err error) { +func (m *CommonSecurityControls_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseGroupBy) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PolicyBasedChallenge != nil { + { + size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a + } + return len(dAtA) - i, nil +} +func (m *CommonSecurityControls_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseGroupBy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Value) > 0 { - i -= len(m.Value) - copy(dAtA[i:], m.Value) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Value))) + if m.DisableRateLimit != nil { + { + size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } i-- - dAtA[i] = 0x12 - } - if m.Name != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Name)) + dAtA[i] = 0x1 i-- - dAtA[i] = 0x8 + dAtA[i] = 0xaa } return len(dAtA) - i, nil } - -func (m *LilacCDNMetricsResponseValue) Marshal() (dAtA []byte, err error) { +func (m *CommonSecurityControls_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseValue) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiRateLimit != nil { + { + size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 + } + return len(dAtA) - i, nil +} +func (m *CommonSecurityControls_RateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Value) > 0 { - i -= len(m.Value) - copy(dAtA[i:], m.Value) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Value))) + if m.RateLimit != nil { + { + size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } i-- - dAtA[i] = 0x12 - } - if len(m.Timestamp) > 0 { - i -= len(m.Timestamp) - copy(dAtA[i:], m.Timestamp) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Timestamp))) + dAtA[i] = 0x1 i-- - dAtA[i] = 0xa + dAtA[i] = 0xba } return len(dAtA) - i, nil } - -func (m *LilacCDNMetricsResponseSeries) Marshal() (dAtA []byte, err error) { +func (m *CommonSecurityControls_IpReputationOnCacheMiss) MarshalTo(dAtA []byte) (int, error) { size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseSeries) MarshalTo(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_IpReputationOnCacheMiss) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IpReputationOnCacheMiss != nil { + { + size, err := m.IpReputationOnCacheMiss.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda + } + return len(dAtA) - i, nil +} +func (m *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseSeries) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Value) > 0 { - for iNdEx := len(m.Value) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Value[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.MaliciousUserDetectionOnCacheMiss != nil { + { + size, err := m.MaliciousUserDetectionOnCacheMiss.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0x12 + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xe2 } - if len(m.GroupBy) > 0 { - for iNdEx := len(m.GroupBy) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.GroupBy[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + return len(dAtA) - i, nil +} +func (m *CommonSecurityControls_ChallengeOnCacheMiss) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CommonSecurityControls_ChallengeOnCacheMiss) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ChallengeOnCacheMiss != nil { + { + size, err := m.ChallengeOnCacheMiss.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0xa + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xea } return len(dAtA) - i, nil } - -func (m *LilacCDNMetricsResponseData) Marshal() (dAtA []byte, err error) { +func (m *ApiProtection) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11260,2587 +11327,8175 @@ func (m *LilacCDNMetricsResponseData) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *LilacCDNMetricsResponseData) MarshalTo(dAtA []byte) (int, error) { +func (m *ApiProtection) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseData) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ApiProtection) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Series) > 0 { - for iNdEx := len(m.Series) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Series[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.ApiDiscoveryChoice != nil { + { + size := m.ApiDiscoveryChoice.Size() + i -= size + if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err } - i-- - dAtA[i] = 0x1a } } - if m.Unit != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Unit)) - i-- - dAtA[i] = 0x10 + if m.ApiDefinitionChoice != nil { + { + size := m.ApiDefinitionChoice.Size() + i -= size + if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if m.Type != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Type)) + if m.JwtValidation != nil { + { + size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x2a } - return len(dAtA) - i, nil -} - -func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { - offset -= sovTypes(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ + if m.ApiProtectionRules != nil { + { + size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - dAtA[offset] = uint8(v) - return base + return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpRedirect { - n += 2 - } - if m.AddHsts { - n += 2 - } - if m.TlsConfig != nil { - l = m.TlsConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ServerHeaderChoice != nil { - n += m.ServerHeaderChoice.Size() - } - return n + +func (m *ApiProtection_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultHeader != nil { - l = m.DefaultHeader.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *ApiProtection_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDefinition != nil { + { + size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - return n + return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_ServerName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ServerName) - n += 1 + l + sovTypes(uint64(l)) - return n +func (m *ApiProtection_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_AppendServerName) Size() (n int) { - if m == nil { - return 0 + +func (m *ApiProtection_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiSpecification != nil { + { + size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - var l int - _ = l - l = len(m.AppendServerName) - n += 1 + l + sovTypes(uint64(l)) - return n + return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_PassThrough) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PassThrough != nil { - l = m.PassThrough.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *ApiProtection_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *HeaderControlType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.RequestHeadersToAdd) > 0 { - for _, e := range m.RequestHeadersToAdd { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.RequestHeadersToRemove) > 0 { - for _, s := range m.RequestHeadersToRemove { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + +func (m *ApiProtection_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableApiDiscovery != nil { + { + size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x3a } - if len(m.ResponseHeadersToAdd) > 0 { - for _, e := range m.ResponseHeadersToAdd { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + return len(dAtA) - i, nil +} +func (m *ApiProtection_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiProtection_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDiscovery != nil { + { + size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x42 } - if len(m.ResponseHeadersToRemove) > 0 { - for _, s := range m.ResponseHeadersToRemove { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + return len(dAtA) - i, nil +} +func (m *ApiProtection_ApiSpecificationOnCacheMiss) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiProtection_ApiSpecificationOnCacheMiss) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiSpecificationOnCacheMiss != nil { + { + size, err := m.ApiSpecificationOnCacheMiss.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x4a } - return n + return len(dAtA) - i, nil +} +func (m *ApiProtection_ApiDiscoveryOnCacheMiss) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *SecurityOptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IpFiltering != nil { - l = m.IpFiltering.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.GeoFiltering != nil { - l = m.GeoFiltering.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *ApiProtection_ApiDiscoveryOnCacheMiss) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiDiscoveryOnCacheMiss != nil { + { + size, err := m.ApiDiscoveryOnCacheMiss.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 } - if m.AuthOptions != nil { - l = m.AuthOptions.Size() - n += 1 + l + sovTypes(uint64(l)) + return len(dAtA) - i, nil +} +func (m *SecurityOptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *LoggingOptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ClientLogOptions != nil { - l = m.ClientLogOptions.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.OriginLogOptions != nil { - l = m.OriginLogOptions.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *SecurityOptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNCacheRuleExpressionList) Size() (n int) { - if m == nil { - return 0 - } +func (m *SecurityOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.ExpressionName) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) + if m.ApiProtection != nil { + { + size, err := m.ApiProtection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 } - if len(m.CacheRuleExpression) > 0 { - for _, e := range m.CacheRuleExpression { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.CommonSecurityControls != nil { + { + size, err := m.CommonSecurityControls.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x5a } - return n -} - -func (m *CacheOperator) Size() (n int) { - if m == nil { - return 0 + if m.WebAppFirewall != nil { + { + size, err := m.WebAppFirewall.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 } - var l int - _ = l - if m.CacheOperator != nil { - n += m.CacheOperator.Size() + if m.AuthOptions != nil { + { + size, err := m.AuthOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - return n -} - -func (m *CacheOperator_Equals) Size() (n int) { - if m == nil { - return 0 + if m.GeoFiltering != nil { + { + size, err := m.GeoFiltering.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 } - var l int - _ = l - l = len(m.Equals) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *CacheOperator_DoesNotEqual) Size() (n int) { - if m == nil { - return 0 + if m.IpFiltering != nil { + { + size, err := m.IpFiltering.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - var l int - _ = l - l = len(m.DoesNotEqual) - n += 1 + l + sovTypes(uint64(l)) - return n + return len(dAtA) - i, nil } -func (m *CacheOperator_Contains) Size() (n int) { - if m == nil { - return 0 + +func (m *LoggingOptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - l = len(m.Contains) - n += 1 + l + sovTypes(uint64(l)) - return n + return dAtA[:n], nil } -func (m *CacheOperator_DoesNotContain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.DoesNotContain) - n += 1 + l + sovTypes(uint64(l)) - return n + +func (m *LoggingOptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CacheOperator_Startswith) Size() (n int) { - if m == nil { - return 0 - } + +func (m *LoggingOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Startswith) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *CacheOperator_DoesNotStartWith) Size() (n int) { - if m == nil { - return 0 + if m.OriginLogOptions != nil { + { + size, err := m.OriginLogOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - var l int - _ = l - l = len(m.DoesNotStartWith) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *CacheOperator_Endswith) Size() (n int) { - if m == nil { - return 0 + if m.ClientLogOptions != nil { + { + size, err := m.ClientLogOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a } - var l int - _ = l - l = len(m.Endswith) - n += 1 + l + sovTypes(uint64(l)) - return n + return len(dAtA) - i, nil } -func (m *CacheOperator_DoesNotEndWith) Size() (n int) { - if m == nil { - return 0 + +func (m *CDNCacheRuleExpressionList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - l = len(m.DoesNotEndWith) - n += 1 + l + sovTypes(uint64(l)) - return n + return dAtA[:n], nil } -func (m *CacheOperator_MatchRegex) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.MatchRegex) - n += 1 + l + sovTypes(uint64(l)) - return n + +func (m *CDNCacheRuleExpressionList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CacheHeaderMatcherType) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CDNCacheRuleExpressionList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Name != 0 { - n += 1 + sovTypes(uint64(m.Name)) + if len(m.CacheRuleExpression) > 0 { + for iNdEx := len(m.CacheRuleExpression) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CacheRuleExpression[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - if m.Operator != nil { - l = m.Operator.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.ExpressionName) > 0 { + i -= len(m.ExpressionName) + copy(dAtA[i:], m.ExpressionName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ExpressionName))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *CDNPathMatcherType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Operator != nil { - l = m.Operator.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CacheOperator) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CacheCookieMatcherType) Size() (n int) { - if m == nil { - return 0 - } +func (m *CacheOperator) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) + if m.CacheOperator != nil { + { + size := m.CacheOperator.Size() + i -= size + if _, err := m.CacheOperator.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if m.Operator != nil { - l = m.Operator.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n + return len(dAtA) - i, nil } -func (m *CacheQueryParameterMatcherType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Key) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.Operator != nil { - l = m.Operator.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *CacheOperator_Equals) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNCacheRuleExpression) Size() (n int) { - if m == nil { - return 0 +func (m *CacheOperator_Equals) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Equals) + copy(dAtA[i:], m.Equals) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Equals))) + i-- + dAtA[i] = 0x12 + return len(dAtA) - i, nil +} +func (m *CacheOperator_DoesNotEqual) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_DoesNotEqual) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.DoesNotEqual) + copy(dAtA[i:], m.DoesNotEqual) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotEqual))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *CacheOperator_Contains) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_Contains) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Contains) + copy(dAtA[i:], m.Contains) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Contains))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} +func (m *CacheOperator_DoesNotContain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_DoesNotContain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.DoesNotContain) + copy(dAtA[i:], m.DoesNotContain) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotContain))) + i-- + dAtA[i] = 0x2a + return len(dAtA) - i, nil +} +func (m *CacheOperator_Startswith) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_Startswith) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Startswith) + copy(dAtA[i:], m.Startswith) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Startswith))) + i-- + dAtA[i] = 0x32 + return len(dAtA) - i, nil +} +func (m *CacheOperator_DoesNotStartWith) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_DoesNotStartWith) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.DoesNotStartWith) + copy(dAtA[i:], m.DoesNotStartWith) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotStartWith))) + i-- + dAtA[i] = 0x3a + return len(dAtA) - i, nil +} +func (m *CacheOperator_Endswith) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_Endswith) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Endswith) + copy(dAtA[i:], m.Endswith) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Endswith))) + i-- + dAtA[i] = 0x42 + return len(dAtA) - i, nil +} +func (m *CacheOperator_DoesNotEndWith) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_DoesNotEndWith) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.DoesNotEndWith) + copy(dAtA[i:], m.DoesNotEndWith) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DoesNotEndWith))) + i-- + dAtA[i] = 0x4a + return len(dAtA) - i, nil +} +func (m *CacheOperator_MatchRegex) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOperator_MatchRegex) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.MatchRegex) + copy(dAtA[i:], m.MatchRegex) + i = encodeVarintTypes(dAtA, i, uint64(len(m.MatchRegex))) + i-- + dAtA[i] = 0x52 + return len(dAtA) - i, nil +} +func (m *CacheHeaderMatcherType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *CacheHeaderMatcherType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheHeaderMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.PathMatch != nil { - l = m.PathMatch.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.CacheHeaders) > 0 { - for _, e := range m.CacheHeaders { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.QueryParameters) > 0 { - for _, e := range m.QueryParameters { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.Operator != nil { + { + size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2a } - if len(m.CookieMatcher) > 0 { - for _, e := range m.CookieMatcher { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } + if m.Name != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Name)) + i-- + dAtA[i] = 0x8 } - return n + return len(dAtA) - i, nil } -func (m *CacheTTLEnableProps) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.CacheTtl) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.CacheOverride { - n += 2 - } - if m.IgnoreResponseCookie { - n += 2 +func (m *CDNPathMatcherType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CacheEligibleOptions) Size() (n int) { - if m == nil { - return 0 - } +func (m *CDNPathMatcherType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNPathMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.EligibleForCache != nil { - n += m.EligibleForCache.Size() + if m.Operator != nil { + { + size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - return n + return len(dAtA) - i, nil } -func (m *CacheEligibleOptions_SchemeHostnameUri) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SchemeHostnameUri != nil { - l = m.SchemeHostnameUri.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CacheCookieMatcherType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CacheEligibleOptions_SchemeHostnameRequestUri) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SchemeHostnameRequestUri != nil { - l = m.SchemeHostnameRequestUri.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n + +func (m *CacheCookieMatcherType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CacheEligibleOptions_HostnameUri) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CacheCookieMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.HostnameUri != nil { - l = m.HostnameUri.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CacheEligibleOptions_SchemeHostnameUriQuery) Size() (n int) { - if m == nil { - return 0 + if m.Operator != nil { + { + size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - var l int - _ = l - if m.SchemeHostnameUriQuery != nil { - l = m.SchemeHostnameUriQuery.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *CacheEligibleOptions_SchemeProxyHostUri) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SchemeProxyHostUri != nil { - l = m.SchemeProxyHostUri.Size() - n += 1 + l + sovTypes(uint64(l)) + +func (m *CacheQueryParameterMatcherType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CacheEligibleOptions_SchemeProxyHostRequestUri) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SchemeProxyHostRequestUri != nil { - l = m.SchemeProxyHostRequestUri.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n + +func (m *CacheQueryParameterMatcherType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNCacheRule) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CacheQueryParameterMatcherType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.RuleName) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.RuleExpressionList) > 0 { - for _, e := range m.RuleExpressionList { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.Operator != nil { + { + size, err := m.Operator.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if m.CacheActions != nil { - n += m.CacheActions.Size() + if len(m.Key) > 0 { + i -= len(m.Key) + copy(dAtA[i:], m.Key) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Key))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *CDNCacheRule_CacheBypass) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CacheBypass != nil { - l = m.CacheBypass.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CDNCacheRuleExpression) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CDNCacheRule_EligibleForCache) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CDNCacheRuleExpression) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNCacheRuleExpression) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.EligibleForCache != nil { - l = m.EligibleForCache.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.CookieMatcher) > 0 { + for iNdEx := len(m.CookieMatcher) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CookieMatcher[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } } - return n -} -func (m *DefaultCacheTTLProps) Size() (n int) { - if m == nil { - return 0 + if len(m.QueryParameters) > 0 { + for iNdEx := len(m.QueryParameters) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.QueryParameters[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } } - var l int - _ = l - l = len(m.CacheTtl) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) + if len(m.CacheHeaders) > 0 { + for iNdEx := len(m.CacheHeaders) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CacheHeaders[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } } - return n + if m.PathMatch != nil { + { + size, err := m.PathMatch.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *DefaultCacheAction) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CacheActions != nil { - n += m.CacheActions.Size() +func (m *CacheTTLEnableProps) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *DefaultCacheAction_EligibleForCache) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EligibleForCache != nil { - l = m.EligibleForCache.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *CacheTTLEnableProps) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *DefaultCacheAction_CacheTtlDefault) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CacheTTLEnableProps) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.CacheTtlDefault) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *DefaultCacheAction_CacheTtlOverride) Size() (n int) { - if m == nil { - return 0 + if m.IgnoreResponseCookie { + i-- + if m.IgnoreResponseCookie { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x28 } - var l int - _ = l - l = len(m.CacheTtlOverride) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *DefaultCacheAction_CacheDisabled) Size() (n int) { - if m == nil { - return 0 + if m.CacheOverride { + i-- + if m.CacheOverride { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x20 } - var l int - _ = l - if m.CacheDisabled != nil { - l = m.CacheDisabled.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.CacheTtl) > 0 { + i -= len(m.CacheTtl) + copy(dAtA[i:], m.CacheTtl) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtl))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *CacheOptions) Size() (n int) { - if m == nil { - return 0 + +func (m *CacheEligibleOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *CacheEligibleOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheEligibleOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.DefaultCacheAction != nil { - l = m.DefaultCacheAction.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.CacheRules) > 0 { - for _, e := range m.CacheRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.EligibleForCache != nil { + { + size := m.EligibleForCache.Size() + i -= size + if _, err := m.EligibleForCache.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - return n + return len(dAtA) - i, nil } -func (m *CacheTTLOptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TtlOptions != nil { - n += m.TtlOptions.Size() - } - return n +func (m *CacheEligibleOptions_SchemeHostnameUri) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CacheTTLOptionsType_CacheTtlDefault) Size() (n int) { - if m == nil { - return 0 +func (m *CacheEligibleOptions_SchemeHostnameUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SchemeHostnameUri != nil { + { + size, err := m.SchemeHostnameUri.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - var l int - _ = l - l = len(m.CacheTtlDefault) - n += 1 + l + sovTypes(uint64(l)) - return n + return len(dAtA) - i, nil } -func (m *CacheTTLOptionsType_CacheTtlOverride) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.CacheTtlOverride) - n += 1 + l + sovTypes(uint64(l)) - return n +func (m *CacheEligibleOptions_SchemeHostnameRequestUri) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CacheTTLOptionsType_CacheDisabled) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CacheDisabled != nil { - l = m.CacheDisabled.Size() - n += 1 + l + sovTypes(uint64(l)) + +func (m *CacheEligibleOptions_SchemeHostnameRequestUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SchemeHostnameRequestUri != nil { + { + size, err := m.SchemeHostnameRequestUri.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - return n + return len(dAtA) - i, nil } -func (m *AdvancedOptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HeaderOptions != nil { - l = m.HeaderOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.SecurityOptions != nil { - l = m.SecurityOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.LoggingOptions != nil { - l = m.LoggingOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.CacheTtlOptions != nil { - l = m.CacheTtlOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.CacheOptions != nil { - l = m.CacheOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n +func (m *CacheEligibleOptions_HostnameUri) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNTLSConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Choice != nil { - n += m.Choice.Size() +func (m *CacheEligibleOptions_HostnameUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HostnameUri != nil { + { + size, err := m.HostnameUri.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - return n + return len(dAtA) - i, nil +} +func (m *CacheEligibleOptions_SchemeHostnameUriQuery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNTLSConfig_Tls_12Plus) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Tls_12Plus != nil { - l = m.Tls_12Plus.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CacheEligibleOptions_SchemeHostnameUriQuery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SchemeHostnameUriQuery != nil { + { + size, err := m.SchemeHostnameUriQuery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - return n + return len(dAtA) - i, nil } -func (m *CDNTLSConfig_Tls_11Plus) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Tls_11Plus != nil { - l = m.Tls_11Plus.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CDNHTTPSAutoCertsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpRedirect { - n += 2 - } - if m.AddHsts { - n += 2 - } - if m.TlsConfig != nil { - l = m.TlsConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *CacheEligibleOptions_SchemeProxyHostUri) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNDownstreamTlsParamsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TlsConfig != nil { - l = m.TlsConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.TlsCertificates) > 0 { - for _, e := range m.TlsCertificates { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CacheEligibleOptions_SchemeProxyHostUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SchemeProxyHostUri != nil { + { + size, err := m.SchemeProxyHostUri.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x32 } - return n + return len(dAtA) - i, nil +} +func (m *CacheEligibleOptions_SchemeProxyHostRequestUri) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNHTTPSCustomCertsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpRedirect { - n += 2 - } - if m.AddHsts { - n += 2 +func (m *CacheEligibleOptions_SchemeProxyHostRequestUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SchemeProxyHostRequestUri != nil { + { + size, err := m.SchemeProxyHostRequestUri.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a } - if m.TlsParameters != nil { - l = m.TlsParameters.Size() - n += 1 + l + sovTypes(uint64(l)) + return len(dAtA) - i, nil +} +func (m *CDNCacheRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *GlobalSpecType) Size() (n int) { - if m == nil { - return 0 - } +func (m *CDNCacheRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNCacheRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + if m.CacheActions != nil { + { + size := m.CacheActions.Size() + i -= size + if _, err := m.CacheActions.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AddLocation { - n += 2 - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.OriginPool != nil { - l = m.OriginPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ViewInternal != nil { - l = m.ViewInternal.Size() - n += 2 + l + sovTypes(uint64(l)) - } - l = len(m.HostName) - if l > 0 { - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.DnsInfo) > 0 { - for _, e := range m.DnsInfo { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) + if len(m.RuleExpressionList) > 0 { + for iNdEx := len(m.RuleExpressionList) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RuleExpressionList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - if m.State != 0 { - n += 2 + sovTypes(uint64(m.State)) - } - if m.AutoCertState != 0 { - n += 2 + sovTypes(uint64(m.AutoCertState)) + if len(m.RuleName) > 0 { + i -= len(m.RuleName) + copy(dAtA[i:], m.RuleName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RuleName))) + i-- + dAtA[i] = 0xa } - if m.AutoCertInfo != nil { - l = m.AutoCertInfo.Size() - n += 2 + l + sovTypes(uint64(l)) + return len(dAtA) - i, nil +} + +func (m *CDNCacheRule_CacheBypass) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNCacheRule_CacheBypass) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CacheBypass != nil { + { + size, err := m.CacheBypass.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - if len(m.ServiceDomains) > 0 { - for _, e := range m.ServiceDomains { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) + return len(dAtA) - i, nil +} +func (m *CDNCacheRule_EligibleForCache) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNCacheRule_EligibleForCache) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EligibleForCache != nil { + { + size, err := m.EligibleForCache.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2a } - if m.CertState != 0 { - n += 2 + sovTypes(uint64(m.CertState)) + return len(dAtA) - i, nil +} +func (m *DefaultCacheTTLProps) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *GlobalSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } +func (m *DefaultCacheTTLProps) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DefaultCacheTTLProps) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.CacheTtl) > 0 { + i -= len(m.CacheTtl) + copy(dAtA[i:], m.CacheTtl) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtl))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *GlobalSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) + +func (m *DefaultCacheAction) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *GlobalSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n + +func (m *DefaultCacheAction) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *IpFilteringOptions) Size() (n int) { - if m == nil { - return 0 - } + +func (m *DefaultCacheAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.IpFilteringType != nil { - n += m.IpFilteringType.Size() + if m.CacheActions != nil { + { + size := m.CacheActions.Size() + i -= size + if _, err := m.CacheActions.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return n + return len(dAtA) - i, nil } -func (m *IpFilteringOptions_AllowList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AllowList != nil { - l = m.AllowList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *DefaultCacheAction_EligibleForCache) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *IpFilteringOptions_BlockList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BlockList != nil { - l = m.BlockList.Size() - n += 1 + l + sovTypes(uint64(l)) + +func (m *DefaultCacheAction_EligibleForCache) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EligibleForCache != nil { + { + size, err := m.EligibleForCache.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - return n + return len(dAtA) - i, nil } -func (m *GeoFilteringOptions) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.GeoFilteringType != nil { - n += m.GeoFilteringType.Size() - } - return n +func (m *DefaultCacheAction_CacheTtlDefault) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GeoFilteringOptions_AllowList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AllowList != nil { - l = m.AllowList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *DefaultCacheAction_CacheTtlDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.CacheTtlDefault) + copy(dAtA[i:], m.CacheTtlDefault) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlDefault))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil } -func (m *GeoFilteringOptions_BlockList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BlockList != nil { - l = m.BlockList.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *DefaultCacheAction_CacheTtlOverride) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DefaultCacheAction_CacheTtlOverride) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.CacheTtlOverride) + copy(dAtA[i:], m.CacheTtlOverride) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlOverride))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} +func (m *DefaultCacheAction_CacheDisabled) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DefaultCacheAction_CacheDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CacheDisabled != nil { + { + size, err := m.CacheDisabled.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - return n + return len(dAtA) - i, nil } -func (m *LogHeaderOptions) Size() (n int) { - if m == nil { - return 0 +func (m *CacheOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *CacheOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if len(m.HeaderList) > 0 { - for _, s := range m.HeaderList { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + if len(m.CacheRules) > 0 { + for iNdEx := len(m.CacheRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CacheRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } } - return n + if m.DefaultCacheAction != nil { + { + size, err := m.DefaultCacheAction.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *CDNCustomAuthentication) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.CustomAuthConfig) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) +func (m *CacheTTLOptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *AuthenticationOptions) Size() (n int) { - if m == nil { - return 0 - } +func (m *CacheTTLOptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CacheTTLOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.AuthOptions != nil { - n += m.AuthOptions.Size() + if m.TtlOptions != nil { + { + size := m.TtlOptions.Size() + i -= size + if _, err := m.TtlOptions.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return n + return len(dAtA) - i, nil } -func (m *AuthenticationOptions_DisableAuth) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableAuth != nil { - l = m.DisableAuth.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *CacheTTLOptionsType_CacheTtlDefault) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AuthenticationOptions_Jwt) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Jwt != nil { - l = m.Jwt.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n + +func (m *CacheTTLOptionsType_CacheTtlDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.CacheTtlDefault) + copy(dAtA[i:], m.CacheTtlDefault) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlDefault))) + i-- + dAtA[i] = 0x12 + return len(dAtA) - i, nil } -func (m *AuthenticationOptions_Custom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Custom != nil { - l = m.Custom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *CacheTTLOptionsType_CacheTtlOverride) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNOriginServerType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Choice != nil { - n += m.Choice.Size() - } - if m.Port != 0 { - n += 1 + sovTypes(uint64(m.Port)) - } - return n + +func (m *CacheTTLOptionsType_CacheTtlOverride) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.CacheTtlOverride) + copy(dAtA[i:], m.CacheTtlOverride) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CacheTtlOverride))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *CacheTTLOptionsType_CacheDisabled) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CDNOriginServerType_PublicIp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PublicIp != nil { - l = m.PublicIp.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CacheTTLOptionsType_CacheDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CacheDisabled != nil { + { + size, err := m.CacheDisabled.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - return n + return len(dAtA) - i, nil } -func (m *CDNOriginServerType_PublicName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PublicName != nil { - l = m.PublicName.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *AdvancedOptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CdnOriginPoolType) Size() (n int) { - if m == nil { - return 0 - } + +func (m *AdvancedOptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AdvancedOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.PublicName != nil { - l = m.PublicName.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.TlsChoice != nil { - n += m.TlsChoice.Size() + if m.CacheOptions != nil { + { + size, err := m.CacheOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 } - if len(m.OriginServers) > 0 { - for _, e := range m.OriginServers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.CacheTtlOptions != nil { + { + size, err := m.CacheTtlOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - if m.FollowOriginRedirect { - n += 2 + if m.LoggingOptions != nil { + { + size, err := m.LoggingOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - l = len(m.OriginRequestTimeout) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) + if m.SecurityOptions != nil { + { + size, err := m.SecurityOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x8a } - if m.MoreOriginOptions != nil { - l = m.MoreOriginOptions.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.HeaderOptions != nil { + { + size, err := m.HeaderOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 } - return n + return len(dAtA) - i, nil } -func (m *CdnOriginPoolType_NoTls) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoTls != nil { - l = m.NoTls.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CDNTLSConfig) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CdnOriginPoolType_UseTls) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CDNTLSConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNTLSConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.UseTls != nil { - l = m.UseTls.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.Choice != nil { + { + size := m.Choice.Size() + i -= size + if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return n + return len(dAtA) - i, nil } -func (m *OriginAdvancedConfiguration) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableByteRangeRequest { - n += 2 - } - if m.WebsocketProxy { - n += 2 - } - return n + +func (m *CDNTLSConfig_Tls_12Plus) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateSpecType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) +func (m *CDNTLSConfig_Tls_12Plus) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Tls_12Plus != nil { + { + size, err := m.Tls_12Plus.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AddLocation { - n += 2 - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.OriginPool != nil { - l = m.OriginPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n + return len(dAtA) - i, nil +} +func (m *CDNTLSConfig_Tls_11Plus) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *CreateSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CDNTLSConfig_Tls_11Plus) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Tls_11Plus != nil { + { + size, err := m.Tls_11Plus.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - return n + return len(dAtA) - i, nil } -func (m *CreateSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) +func (m *CDNHTTPSAutoCertsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *CreateSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n + +func (m *CDNHTTPSAutoCertsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceSpecType) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CDNHTTPSAutoCertsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + if m.TlsConfig != nil { + { + size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1a } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AddLocation { - n += 2 - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.AddHsts { + i-- + if m.AddHsts { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 } - if m.OriginPool != nil { - l = m.OriginPool.Size() - n += 2 + l + sovTypes(uint64(l)) + if m.HttpRedirect { + i-- + if m.HttpRedirect { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 } - return n + return len(dAtA) - i, nil } -func (m *ReplaceSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) +func (m *CDNDownstreamTlsParamsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *ReplaceSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n + +func (m *CDNDownstreamTlsParamsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ReplaceSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } + +func (m *CDNDownstreamTlsParamsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Https != nil { - l = m.Https.Size() - n += 2 + l + sovTypes(uint64(l)) + if len(m.TlsCertificates) > 0 { + for iNdEx := len(m.TlsCertificates) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TlsCertificates[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - return n + if m.TlsConfig != nil { + { + size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *GetSpecType) Size() (n int) { - if m == nil { - return 0 + +func (m *CDNHTTPSCustomCertsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *CDNHTTPSCustomCertsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CDNHTTPSCustomCertsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) + if m.TlsParameters != nil { + { + size, err := m.TlsParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1a } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AddLocation { - n += 2 - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.OriginPool != nil { - l = m.OriginPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - l = len(m.HostName) - if l > 0 { - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.DnsInfo) > 0 { - for _, e := range m.DnsInfo { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) + if m.AddHsts { + i-- + if m.AddHsts { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } + i-- + dAtA[i] = 0x10 } - if m.State != 0 { - n += 2 + sovTypes(uint64(m.State)) - } - if m.AutoCertInfo != nil { - l = m.AutoCertInfo.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.ServiceDomains) > 0 { - for _, e := range m.ServiceDomains { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) + if m.HttpRedirect { + i-- + if m.HttpRedirect { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } + i-- + dAtA[i] = 0x8 } - if m.CertState != 0 { - n += 2 + sovTypes(uint64(m.CertState)) - } - return n + return len(dAtA) - i, nil } -func (m *GetSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *LilacCDNMetricsFilter) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Tag != 0 { - n += 1 + sovTypes(uint64(m.Tag)) - } - if len(m.Values) > 0 { - for _, s := range m.Values { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.Operator != 0 { - n += 1 + sovTypes(uint64(m.Operator)) +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *LilacCDNMetricsResponseGroupBy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Name != 0 { - n += 1 + sovTypes(uint64(m.Name)) - } - l = len(m.Value) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - return n +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LilacCDNMetricsResponseValue) Size() (n int) { - if m == nil { - return 0 - } +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Timestamp) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.Value) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *LilacCDNMetricsResponseSeries) Size() (n int) { - if m == nil { - return 0 + if m.CertState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0xa0 } - var l int - _ = l - if len(m.GroupBy) > 0 { - for _, e := range m.GroupBy { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.ServiceDomains) > 0 { + for iNdEx := len(m.ServiceDomains) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ServiceDomains[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x9a } } - if len(m.Value) > 0 { - for _, e := range m.Value { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if m.AutoCertInfo != nil { + { + size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x92 } - return n -} - -func (m *LilacCDNMetricsResponseData) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Type != 0 { - n += 1 + sovTypes(uint64(m.Type)) + if m.AutoCertState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.AutoCertState)) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xe0 } - if m.Unit != 0 { - n += 1 + sovTypes(uint64(m.Unit)) + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd8 } - if len(m.Series) > 0 { - for _, e := range m.Series { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) + if len(m.DnsInfo) > 0 { + for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd2 } } - return n -} - -func sovTypes(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozTypes(x uint64) (n int) { - return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *ProxyTypeHttpsAutoCerts) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts{`, - `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, - `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, - `TlsConfig:` + strings.Replace(fmt.Sprintf("%v", this.TlsConfig), "TlsConfig", "views.TlsConfig", 1) + `,`, - `ServerHeaderChoice:` + fmt.Sprintf("%v", this.ServerHeaderChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) String() string { - if this == nil { - return "nil" + if len(m.HostName) > 0 { + i -= len(m.HostName) + copy(dAtA[i:], m.HostName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DefaultHeader{`, - `DefaultHeader:` + strings.Replace(fmt.Sprintf("%v", this.DefaultHeader), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_ServerName) String() string { - if this == nil { - return "nil" + if m.ViewInternal != nil { + { + size, err := m.ViewInternal.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_ServerName{`, - `ServerName:` + fmt.Sprintf("%v", this.ServerName) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_AppendServerName) String() string { - if this == nil { - return "nil" + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_AppendServerName{`, - `AppendServerName:` + fmt.Sprintf("%v", this.AppendServerName) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_PassThrough) String() string { - if this == nil { - return "nil" + if m.OriginPool != nil { + { + size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_PassThrough{`, - `PassThrough:` + strings.Replace(fmt.Sprintf("%v", this.PassThrough), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *HeaderControlType) String() string { - if this == nil { - return "nil" + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a } - repeatedStringForRequestHeadersToAdd := "[]*HeaderManipulationOptionType{" - for _, f := range this.RequestHeadersToAdd { - repeatedStringForRequestHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x58 } - repeatedStringForRequestHeadersToAdd += "}" - repeatedStringForResponseHeadersToAdd := "[]*HeaderManipulationOptionType{" - for _, f := range this.ResponseHeadersToAdd { - repeatedStringForResponseHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - repeatedStringForResponseHeadersToAdd += "}" - s := strings.Join([]string{`&HeaderControlType{`, - `RequestHeadersToAdd:` + repeatedStringForRequestHeadersToAdd + `,`, - `RequestHeadersToRemove:` + fmt.Sprintf("%v", this.RequestHeadersToRemove) + `,`, - `ResponseHeadersToAdd:` + repeatedStringForResponseHeadersToAdd + `,`, - `ResponseHeadersToRemove:` + fmt.Sprintf("%v", this.ResponseHeadersToRemove) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *SecurityOptionsType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SecurityOptionsType{`, - `IpFiltering:` + strings.Replace(this.IpFiltering.String(), "IpFilteringOptions", "IpFilteringOptions", 1) + `,`, - `GeoFiltering:` + strings.Replace(this.GeoFiltering.String(), "GeoFilteringOptions", "GeoFilteringOptions", 1) + `,`, - `AuthOptions:` + strings.Replace(this.AuthOptions.String(), "AuthenticationOptions", "AuthenticationOptions", 1) + `,`, - `}`, - }, "") - return s + +func (m *GlobalSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *LoggingOptionsType) String() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&LoggingOptionsType{`, - `ClientLogOptions:` + strings.Replace(this.ClientLogOptions.String(), "LogHeaderOptions", "LogHeaderOptions", 1) + `,`, - `OriginLogOptions:` + strings.Replace(this.OriginLogOptions.String(), "LogHeaderOptions", "LogHeaderOptions", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CDNCacheRuleExpressionList) String() string { - if this == nil { - return "nil" - } - repeatedStringForCacheRuleExpression := "[]*CDNCacheRuleExpression{" - for _, f := range this.CacheRuleExpression { - repeatedStringForCacheRuleExpression += strings.Replace(f.String(), "CDNCacheRuleExpression", "CDNCacheRuleExpression", 1) + "," - } - repeatedStringForCacheRuleExpression += "}" - s := strings.Join([]string{`&CDNCacheRuleExpressionList{`, - `ExpressionName:` + fmt.Sprintf("%v", this.ExpressionName) + `,`, - `CacheRuleExpression:` + repeatedStringForCacheRuleExpression + `,`, - `}`, - }, "") - return s +func (m *GlobalSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CacheOperator) String() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&CacheOperator{`, - `CacheOperator:` + fmt.Sprintf("%v", this.CacheOperator) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_Equals) String() string { - if this == nil { - return "nil" +func (m *GlobalSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&CacheOperator_Equals{`, - `Equals:` + fmt.Sprintf("%v", this.Equals) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_DoesNotEqual) String() string { - if this == nil { - return "nil" +func (m *IpFilteringOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CacheOperator_DoesNotEqual{`, - `DoesNotEqual:` + fmt.Sprintf("%v", this.DoesNotEqual) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CacheOperator_Contains) String() string { - if this == nil { - return "nil" + +func (m *IpFilteringOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IpFilteringOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IpFilteringType != nil { + { + size := m.IpFilteringType.Size() + i -= size + if _, err := m.IpFilteringType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&CacheOperator_Contains{`, - `Contains:` + fmt.Sprintf("%v", this.Contains) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_DoesNotContain) String() string { - if this == nil { - return "nil" + +func (m *IpFilteringOptions_AllowList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IpFilteringOptions_AllowList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AllowList != nil { + { + size, err := m.AllowList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&CacheOperator_DoesNotContain{`, - `DoesNotContain:` + fmt.Sprintf("%v", this.DoesNotContain) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_Startswith) String() string { - if this == nil { - return "nil" +func (m *IpFilteringOptions_BlockList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IpFilteringOptions_BlockList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BlockList != nil { + { + size, err := m.BlockList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&CacheOperator_Startswith{`, - `Startswith:` + fmt.Sprintf("%v", this.Startswith) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_DoesNotStartWith) String() string { - if this == nil { - return "nil" +func (m *GeoFilteringOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CacheOperator_DoesNotStartWith{`, - `DoesNotStartWith:` + fmt.Sprintf("%v", this.DoesNotStartWith) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CacheOperator_Endswith) String() string { - if this == nil { - return "nil" + +func (m *GeoFilteringOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GeoFilteringOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GeoFilteringType != nil { + { + size := m.GeoFilteringType.Size() + i -= size + if _, err := m.GeoFilteringType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&CacheOperator_Endswith{`, - `Endswith:` + fmt.Sprintf("%v", this.Endswith) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_DoesNotEndWith) String() string { - if this == nil { - return "nil" + +func (m *GeoFilteringOptions_AllowList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GeoFilteringOptions_AllowList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AllowList != nil { + { + size, err := m.AllowList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&CacheOperator_DoesNotEndWith{`, - `DoesNotEndWith:` + fmt.Sprintf("%v", this.DoesNotEndWith) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOperator_MatchRegex) String() string { - if this == nil { - return "nil" +func (m *GeoFilteringOptions_BlockList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GeoFilteringOptions_BlockList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BlockList != nil { + { + size, err := m.BlockList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&CacheOperator_MatchRegex{`, - `MatchRegex:` + fmt.Sprintf("%v", this.MatchRegex) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheHeaderMatcherType) String() string { - if this == nil { - return "nil" +func (m *LogHeaderOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CacheHeaderMatcherType{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CDNPathMatcherType) String() string { - if this == nil { - return "nil" + +func (m *LogHeaderOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LogHeaderOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.HeaderList) > 0 { + for iNdEx := len(m.HeaderList) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.HeaderList[iNdEx]) + copy(dAtA[i:], m.HeaderList[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HeaderList[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - s := strings.Join([]string{`&CDNPathMatcherType{`, - `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheCookieMatcherType) String() string { - if this == nil { - return "nil" + +func (m *CDNCustomAuthentication) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CacheCookieMatcherType{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CacheQueryParameterMatcherType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CacheQueryParameterMatcherType{`, - `Key:` + fmt.Sprintf("%v", this.Key) + `,`, - `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, - `}`, - }, "") - return s + +func (m *CDNCustomAuthentication) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CDNCacheRuleExpression) String() string { - if this == nil { - return "nil" - } - repeatedStringForCacheHeaders := "[]*CacheHeaderMatcherType{" - for _, f := range this.CacheHeaders { - repeatedStringForCacheHeaders += strings.Replace(f.String(), "CacheHeaderMatcherType", "CacheHeaderMatcherType", 1) + "," - } - repeatedStringForCacheHeaders += "}" - repeatedStringForQueryParameters := "[]*CacheQueryParameterMatcherType{" - for _, f := range this.QueryParameters { - repeatedStringForQueryParameters += strings.Replace(f.String(), "CacheQueryParameterMatcherType", "CacheQueryParameterMatcherType", 1) + "," - } - repeatedStringForQueryParameters += "}" - repeatedStringForCookieMatcher := "[]*CacheCookieMatcherType{" - for _, f := range this.CookieMatcher { - repeatedStringForCookieMatcher += strings.Replace(f.String(), "CacheCookieMatcherType", "CacheCookieMatcherType", 1) + "," + +func (m *CDNCustomAuthentication) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.CustomAuthConfig) > 0 { + i -= len(m.CustomAuthConfig) + copy(dAtA[i:], m.CustomAuthConfig) + i = encodeVarintTypes(dAtA, i, uint64(len(m.CustomAuthConfig))) + i-- + dAtA[i] = 0xa } - repeatedStringForCookieMatcher += "}" - s := strings.Join([]string{`&CDNCacheRuleExpression{`, - `PathMatch:` + strings.Replace(this.PathMatch.String(), "CDNPathMatcherType", "CDNPathMatcherType", 1) + `,`, - `CacheHeaders:` + repeatedStringForCacheHeaders + `,`, - `QueryParameters:` + repeatedStringForQueryParameters + `,`, - `CookieMatcher:` + repeatedStringForCookieMatcher + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheTTLEnableProps) String() string { - if this == nil { - return "nil" + +func (m *AuthenticationOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CacheTTLEnableProps{`, - `CacheTtl:` + fmt.Sprintf("%v", this.CacheTtl) + `,`, - `CacheOverride:` + fmt.Sprintf("%v", this.CacheOverride) + `,`, - `IgnoreResponseCookie:` + fmt.Sprintf("%v", this.IgnoreResponseCookie) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CacheEligibleOptions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CacheEligibleOptions{`, - `EligibleForCache:` + fmt.Sprintf("%v", this.EligibleForCache) + `,`, - `}`, - }, "") - return s + +func (m *AuthenticationOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CacheEligibleOptions_SchemeHostnameUri) String() string { - if this == nil { - return "nil" + +func (m *AuthenticationOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AuthOptions != nil { + { + size := m.AuthOptions.Size() + i -= size + if _, err := m.AuthOptions.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&CacheEligibleOptions_SchemeHostnameUri{`, - `SchemeHostnameUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeHostnameUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheEligibleOptions_SchemeHostnameRequestUri) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CacheEligibleOptions_SchemeHostnameRequestUri{`, - `SchemeHostnameRequestUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeHostnameRequestUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, - `}`, - }, "") - return s + +func (m *AuthenticationOptions_DisableAuth) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CacheEligibleOptions_HostnameUri) String() string { - if this == nil { - return "nil" + +func (m *AuthenticationOptions_DisableAuth) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableAuth != nil { + { + size, err := m.DisableAuth.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&CacheEligibleOptions_HostnameUri{`, - `HostnameUri:` + strings.Replace(fmt.Sprintf("%v", this.HostnameUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheEligibleOptions_SchemeHostnameUriQuery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CacheEligibleOptions_SchemeHostnameUriQuery{`, - `SchemeHostnameUriQuery:` + strings.Replace(fmt.Sprintf("%v", this.SchemeHostnameUriQuery), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, - `}`, - }, "") - return s +func (m *AuthenticationOptions_Jwt) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CacheEligibleOptions_SchemeProxyHostUri) String() string { - if this == nil { - return "nil" + +func (m *AuthenticationOptions_Jwt) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Jwt != nil { + { + size, err := m.Jwt.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&CacheEligibleOptions_SchemeProxyHostUri{`, - `SchemeProxyHostUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeProxyHostUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CacheEligibleOptions_SchemeProxyHostRequestUri{`, - `SchemeProxyHostRequestUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeProxyHostRequestUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, - `}`, - }, "") - return s +func (m *AuthenticationOptions_Custom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CDNCacheRule) String() string { - if this == nil { - return "nil" - } - repeatedStringForRuleExpressionList := "[]*CDNCacheRuleExpressionList{" - for _, f := range this.RuleExpressionList { - repeatedStringForRuleExpressionList += strings.Replace(f.String(), "CDNCacheRuleExpressionList", "CDNCacheRuleExpressionList", 1) + "," + +func (m *AuthenticationOptions_Custom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Custom != nil { + { + size, err := m.Custom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - repeatedStringForRuleExpressionList += "}" - s := strings.Join([]string{`&CDNCacheRule{`, - `RuleName:` + fmt.Sprintf("%v", this.RuleName) + `,`, - `RuleExpressionList:` + repeatedStringForRuleExpressionList + `,`, - `CacheActions:` + fmt.Sprintf("%v", this.CacheActions) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CDNCacheRule_CacheBypass) String() string { - if this == nil { - return "nil" +func (m *CDNOriginServerType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CDNCacheRule_CacheBypass{`, - `CacheBypass:` + strings.Replace(fmt.Sprintf("%v", this.CacheBypass), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CDNCacheRule_EligibleForCache) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CDNCacheRule_EligibleForCache{`, - `EligibleForCache:` + strings.Replace(fmt.Sprintf("%v", this.EligibleForCache), "CacheEligibleOptions", "CacheEligibleOptions", 1) + `,`, - `}`, - }, "") - return s + +func (m *CDNOriginServerType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *DefaultCacheTTLProps) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DefaultCacheTTLProps{`, - `CacheTtl:` + fmt.Sprintf("%v", this.CacheTtl) + `,`, - `}`, - }, "") - return s -} -func (this *DefaultCacheAction) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DefaultCacheAction{`, - `CacheActions:` + fmt.Sprintf("%v", this.CacheActions) + `,`, - `}`, - }, "") - return s -} -func (this *DefaultCacheAction_EligibleForCache) String() string { - if this == nil { - return "nil" + +func (m *CDNOriginServerType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Port != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Port)) + i-- + dAtA[i] = 0x20 } - s := strings.Join([]string{`&DefaultCacheAction_EligibleForCache{`, - `EligibleForCache:` + strings.Replace(fmt.Sprintf("%v", this.EligibleForCache), "DefaultCacheTTLProps", "DefaultCacheTTLProps", 1) + `,`, - `}`, - }, "") - return s -} -func (this *DefaultCacheAction_CacheTtlDefault) String() string { - if this == nil { - return "nil" + if m.Choice != nil { + { + size := m.Choice.Size() + i -= size + if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&DefaultCacheAction_CacheTtlDefault{`, - `CacheTtlDefault:` + fmt.Sprintf("%v", this.CacheTtlDefault) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *DefaultCacheAction_CacheTtlOverride) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DefaultCacheAction_CacheTtlOverride{`, - `CacheTtlOverride:` + fmt.Sprintf("%v", this.CacheTtlOverride) + `,`, - `}`, - }, "") - return s + +func (m *CDNOriginServerType_PublicIp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *DefaultCacheAction_CacheDisabled) String() string { - if this == nil { - return "nil" + +func (m *CDNOriginServerType_PublicIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PublicIp != nil { + { + size, err := m.PublicIp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&DefaultCacheAction_CacheDisabled{`, - `CacheDisabled:` + strings.Replace(fmt.Sprintf("%v", this.CacheDisabled), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheOptions) String() string { - if this == nil { - return "nil" - } - repeatedStringForCacheRules := "[]*CDNCacheRule{" - for _, f := range this.CacheRules { - repeatedStringForCacheRules += strings.Replace(f.String(), "CDNCacheRule", "CDNCacheRule", 1) + "," - } - repeatedStringForCacheRules += "}" - s := strings.Join([]string{`&CacheOptions{`, - `DefaultCacheAction:` + strings.Replace(this.DefaultCacheAction.String(), "DefaultCacheAction", "DefaultCacheAction", 1) + `,`, - `CacheRules:` + repeatedStringForCacheRules + `,`, - `}`, - }, "") - return s +func (m *CDNOriginServerType_PublicName) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CacheTTLOptionsType) String() string { - if this == nil { - return "nil" + +func (m *CDNOriginServerType_PublicName) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PublicName != nil { + { + size, err := m.PublicName.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&CacheTTLOptionsType{`, - `TtlOptions:` + fmt.Sprintf("%v", this.TtlOptions) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CacheTTLOptionsType_CacheTtlDefault) String() string { - if this == nil { - return "nil" +func (m *CdnOriginPoolType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CacheTTLOptionsType_CacheTtlDefault{`, - `CacheTtlDefault:` + fmt.Sprintf("%v", this.CacheTtlDefault) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *CacheTTLOptionsType_CacheTtlOverride) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CacheTTLOptionsType_CacheTtlOverride{`, - `CacheTtlOverride:` + fmt.Sprintf("%v", this.CacheTtlOverride) + `,`, - `}`, - }, "") - return s + +func (m *CdnOriginPoolType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CacheTTLOptionsType_CacheDisabled) String() string { - if this == nil { - return "nil" + +func (m *CdnOriginPoolType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MoreOriginOptions != nil { + { + size, err := m.MoreOriginOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - s := strings.Join([]string{`&CacheTTLOptionsType_CacheDisabled{`, - `CacheDisabled:` + strings.Replace(fmt.Sprintf("%v", this.CacheDisabled), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AdvancedOptionsType) String() string { - if this == nil { - return "nil" + if len(m.OriginRequestTimeout) > 0 { + i -= len(m.OriginRequestTimeout) + copy(dAtA[i:], m.OriginRequestTimeout) + i = encodeVarintTypes(dAtA, i, uint64(len(m.OriginRequestTimeout))) + i-- + dAtA[i] = 0x3a } - s := strings.Join([]string{`&AdvancedOptionsType{`, - `HeaderOptions:` + strings.Replace(this.HeaderOptions.String(), "HeaderControlType", "HeaderControlType", 1) + `,`, - `SecurityOptions:` + strings.Replace(this.SecurityOptions.String(), "SecurityOptionsType", "SecurityOptionsType", 1) + `,`, - `LoggingOptions:` + strings.Replace(this.LoggingOptions.String(), "LoggingOptionsType", "LoggingOptionsType", 1) + `,`, - `CacheTtlOptions:` + strings.Replace(this.CacheTtlOptions.String(), "CacheTTLOptionsType", "CacheTTLOptionsType", 1) + `,`, - `CacheOptions:` + strings.Replace(this.CacheOptions.String(), "CacheOptions", "CacheOptions", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CDNTLSConfig) String() string { - if this == nil { - return "nil" + if m.FollowOriginRedirect { + i-- + if m.FollowOriginRedirect { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 } - s := strings.Join([]string{`&CDNTLSConfig{`, - `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, - `}`, - }, "") - return s -} -func (this *CDNTLSConfig_Tls_12Plus) String() string { - if this == nil { - return "nil" + if len(m.OriginServers) > 0 { + for iNdEx := len(m.OriginServers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.OriginServers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } } - s := strings.Join([]string{`&CDNTLSConfig_Tls_12Plus{`, - `Tls_12Plus:` + strings.Replace(fmt.Sprintf("%v", this.Tls_12Plus), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CDNTLSConfig_Tls_11Plus) String() string { - if this == nil { - return "nil" + if m.TlsChoice != nil { + { + size := m.TlsChoice.Size() + i -= size + if _, err := m.TlsChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&CDNTLSConfig_Tls_11Plus{`, - `Tls_11Plus:` + strings.Replace(fmt.Sprintf("%v", this.Tls_11Plus), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CDNHTTPSAutoCertsType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CDNHTTPSAutoCertsType{`, - `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, - `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, - `TlsConfig:` + strings.Replace(this.TlsConfig.String(), "CDNTLSConfig", "CDNTLSConfig", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CDNDownstreamTlsParamsType) String() string { - if this == nil { - return "nil" - } - repeatedStringForTlsCertificates := "[]*TlsCertificateType{" - for _, f := range this.TlsCertificates { - repeatedStringForTlsCertificates += strings.Replace(fmt.Sprintf("%v", f), "TlsCertificateType", "schema.TlsCertificateType", 1) + "," + if m.PublicName != nil { + { + size, err := m.PublicName.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - repeatedStringForTlsCertificates += "}" - s := strings.Join([]string{`&CDNDownstreamTlsParamsType{`, - `TlsConfig:` + strings.Replace(this.TlsConfig.String(), "CDNTLSConfig", "CDNTLSConfig", 1) + `,`, - `TlsCertificates:` + repeatedStringForTlsCertificates + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CDNHTTPSCustomCertsType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CDNHTTPSCustomCertsType{`, - `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, - `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, - `TlsParameters:` + strings.Replace(this.TlsParameters.String(), "CDNDownstreamTlsParamsType", "CDNDownstreamTlsParamsType", 1) + `,`, - `}`, - }, "") - return s + +func (m *CdnOriginPoolType_NoTls) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType) String() string { - if this == nil { - return "nil" - } - repeatedStringForDnsInfo := "[]*DnsInfo{" - for _, f := range this.DnsInfo { - repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," - } - repeatedStringForDnsInfo += "}" - repeatedStringForServiceDomains := "[]*ServiceDomain{" - for _, f := range this.ServiceDomains { - repeatedStringForServiceDomains += strings.Replace(fmt.Sprintf("%v", f), "ServiceDomain", "virtual_host.ServiceDomain", 1) + "," + +func (m *CdnOriginPoolType_NoTls) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoTls != nil { + { + size, err := m.NoTls.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - repeatedStringForServiceDomains += "}" - s := strings.Join([]string{`&GlobalSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, - `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, - `DnsInfo:` + repeatedStringForDnsInfo + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, - `AutoCertState:` + fmt.Sprintf("%v", this.AutoCertState) + `,`, - `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, - `ServiceDomains:` + repeatedStringForServiceDomains + `,`, - `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s +func (m *CdnOriginPoolType_UseTls) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" + +func (m *CdnOriginPoolType_UseTls) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UseTls != nil { + { + size, err := m.UseTls.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&GlobalSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_Https) String() string { - if this == nil { - return "nil" +func (m *OriginAdvancedConfiguration) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&GlobalSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *IpFilteringOptions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&IpFilteringOptions{`, - `IpFilteringType:` + fmt.Sprintf("%v", this.IpFilteringType) + `,`, - `}`, - }, "") - return s + +func (m *OriginAdvancedConfiguration) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *IpFilteringOptions_AllowList) String() string { - if this == nil { - return "nil" + +func (m *OriginAdvancedConfiguration) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.WebsocketProxy { + i-- + if m.WebsocketProxy { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 } - s := strings.Join([]string{`&IpFilteringOptions_AllowList{`, - `AllowList:` + strings.Replace(fmt.Sprintf("%v", this.AllowList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *IpFilteringOptions_BlockList) String() string { - if this == nil { - return "nil" + if m.DisableByteRangeRequest { + i-- + if m.DisableByteRangeRequest { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 } - s := strings.Join([]string{`&IpFilteringOptions_BlockList{`, - `BlockList:` + strings.Replace(fmt.Sprintf("%v", this.BlockList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *GeoFilteringOptions) String() string { - if this == nil { - return "nil" + +func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&GeoFilteringOptions{`, - `GeoFilteringType:` + fmt.Sprintf("%v", this.GeoFilteringType) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *GeoFilteringOptions_AllowList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GeoFilteringOptions_AllowList{`, - `AllowList:` + strings.Replace(fmt.Sprintf("%v", this.AllowList), "CountryCodeList", "policy.CountryCodeList", 1) + `,`, - `}`, - }, "") - return s + +func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GeoFilteringOptions_BlockList) String() string { - if this == nil { - return "nil" + +func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&GeoFilteringOptions_BlockList{`, - `BlockList:` + strings.Replace(fmt.Sprintf("%v", this.BlockList), "CountryCodeList", "policy.CountryCodeList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *LogHeaderOptions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&LogHeaderOptions{`, - `HeaderList:` + fmt.Sprintf("%v", this.HeaderList) + `,`, - `}`, - }, "") - return s -} -func (this *CDNCustomAuthentication) String() string { - if this == nil { - return "nil" + if m.OriginPool != nil { + { + size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&CDNCustomAuthentication{`, - `CustomAuthConfig:` + fmt.Sprintf("%v", this.CustomAuthConfig) + `,`, - `}`, - }, "") - return s -} -func (this *AuthenticationOptions) String() string { - if this == nil { - return "nil" + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a } - s := strings.Join([]string{`&AuthenticationOptions{`, - `AuthOptions:` + fmt.Sprintf("%v", this.AuthOptions) + `,`, - `}`, - }, "") - return s -} -func (this *AuthenticationOptions_DisableAuth) String() string { - if this == nil { - return "nil" + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x58 } - s := strings.Join([]string{`&AuthenticationOptions_DisableAuth{`, - `DisableAuth:` + strings.Replace(fmt.Sprintf("%v", this.DisableAuth), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AuthenticationOptions_Jwt) String() string { - if this == nil { - return "nil" + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - s := strings.Join([]string{`&AuthenticationOptions_Jwt{`, - `Jwt:` + strings.Replace(fmt.Sprintf("%v", this.Jwt), "JwtTokenAuthOptions", "policy.JwtTokenAuthOptions", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *AuthenticationOptions_Custom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AuthenticationOptions_Custom{`, - `Custom:` + strings.Replace(fmt.Sprintf("%v", this.Custom), "CDNCustomAuthentication", "CDNCustomAuthentication", 1) + `,`, - `}`, - }, "") - return s + +func (m *CreateSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CDNOriginServerType) String() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&CDNOriginServerType{`, - `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, - `Port:` + fmt.Sprintf("%v", this.Port) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CDNOriginServerType_PublicIp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CDNOriginServerType_PublicIp{`, - `PublicIp:` + strings.Replace(fmt.Sprintf("%v", this.PublicIp), "OriginServerPublicIP", "origin_pool.OriginServerPublicIP", 1) + `,`, - `}`, - }, "") - return s +func (m *CreateSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CDNOriginServerType_PublicName) String() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&CDNOriginServerType_PublicName{`, - `PublicName:` + strings.Replace(fmt.Sprintf("%v", this.PublicName), "OriginServerPublicName", "origin_pool.OriginServerPublicName", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CdnOriginPoolType) String() string { - if this == nil { - return "nil" - } - repeatedStringForOriginServers := "[]*CDNOriginServerType{" - for _, f := range this.OriginServers { - repeatedStringForOriginServers += strings.Replace(f.String(), "CDNOriginServerType", "CDNOriginServerType", 1) + "," - } - repeatedStringForOriginServers += "}" - s := strings.Join([]string{`&CdnOriginPoolType{`, - `PublicName:` + strings.Replace(fmt.Sprintf("%v", this.PublicName), "OriginServerPublicName", "origin_pool.OriginServerPublicName", 1) + `,`, - `TlsChoice:` + fmt.Sprintf("%v", this.TlsChoice) + `,`, - `OriginServers:` + repeatedStringForOriginServers + `,`, - `FollowOriginRedirect:` + fmt.Sprintf("%v", this.FollowOriginRedirect) + `,`, - `OriginRequestTimeout:` + fmt.Sprintf("%v", this.OriginRequestTimeout) + `,`, - `MoreOriginOptions:` + strings.Replace(this.MoreOriginOptions.String(), "OriginAdvancedConfiguration", "OriginAdvancedConfiguration", 1) + `,`, - `}`, - }, "") - return s +func (m *CreateSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CdnOriginPoolType_NoTls) String() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&CdnOriginPoolType_NoTls{`, - `NoTls:` + strings.Replace(fmt.Sprintf("%v", this.NoTls), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *CdnOriginPoolType_UseTls) String() string { - if this == nil { - return "nil" +func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&CdnOriginPoolType_UseTls{`, - `UseTls:` + strings.Replace(fmt.Sprintf("%v", this.UseTls), "UpstreamTlsParameters", "origin_pool.UpstreamTlsParameters", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *OriginAdvancedConfiguration) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OriginAdvancedConfiguration{`, - `DisableByteRangeRequest:` + fmt.Sprintf("%v", this.DisableByteRangeRequest) + `,`, - `WebsocketProxy:` + fmt.Sprintf("%v", this.WebsocketProxy) + `,`, - `}`, - }, "") - return s + +func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType) String() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&CreateSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_Http) String() string { - if this == nil { - return "nil" + if m.OriginPool != nil { + { + size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&CreateSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a } - s := strings.Join([]string{`&CreateSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_Https) String() string { - if this == nil { - return "nil" + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x58 } - s := strings.Join([]string{`&CreateSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType) String() string { - if this == nil { - return "nil" + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - s := strings.Join([]string{`&ReplaceSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s + +func (m *ReplaceSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&ReplaceSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_Https) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, - `}`, - }, "") - return s +func (m *ReplaceSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType) String() string { - if this == nil { - return "nil" - } - repeatedStringForDnsInfo := "[]*DnsInfo{" - for _, f := range this.DnsInfo { - repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," - } - repeatedStringForDnsInfo += "}" - repeatedStringForServiceDomains := "[]*ServiceDomain{" - for _, f := range this.ServiceDomains { - repeatedStringForServiceDomains += strings.Replace(fmt.Sprintf("%v", f), "ServiceDomain", "virtual_host.ServiceDomain", 1) + "," + +func (m *ReplaceSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - repeatedStringForServiceDomains += "}" - s := strings.Join([]string{`&GetSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, - `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, - `DnsInfo:` + repeatedStringForDnsInfo + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, - `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, - `ServiceDomains:` + repeatedStringForServiceDomains + `,`, - `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s +func (m *ReplaceSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&GetSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_Https) String() string { - if this == nil { - return "nil" +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&GetSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *LilacCDNMetricsFilter) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&LilacCDNMetricsFilter{`, - `Tag:` + fmt.Sprintf("%v", this.Tag) + `,`, - `Values:` + fmt.Sprintf("%v", this.Values) + `,`, - `Operator:` + fmt.Sprintf("%v", this.Operator) + `,`, - `}`, - }, "") - return s + +func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *LilacCDNMetricsResponseGroupBy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&LilacCDNMetricsResponseGroupBy{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `Value:` + fmt.Sprintf("%v", this.Value) + `,`, - `}`, - }, "") - return s + +func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.CertState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0xa0 + } + if len(m.ServiceDomains) > 0 { + for iNdEx := len(m.ServiceDomains) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ServiceDomains[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x9a + } + } + if m.AutoCertInfo != nil { + { + size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x92 + } + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd8 + } + if len(m.DnsInfo) > 0 { + for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd2 + } + } + if len(m.HostName) > 0 { + i -= len(m.HostName) + copy(dAtA[i:], m.HostName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xca + } + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.OriginPool != nil { + { + size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x58 + } + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil } -func (this *LilacCDNMetricsResponseValue) String() string { - if this == nil { - return "nil" + +func (m *GetSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&LilacCDNMetricsResponseValue{`, - `Timestamp:` + fmt.Sprintf("%v", this.Timestamp) + `,`, - `Value:` + fmt.Sprintf("%v", this.Value) + `,`, - `}`, - }, "") - return s + return len(dAtA) - i, nil } -func (this *LilacCDNMetricsResponseSeries) String() string { - if this == nil { - return "nil" +func (m *GetSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - repeatedStringForGroupBy := "[]*LilacCDNMetricsResponseGroupBy{" - for _, f := range this.GroupBy { - repeatedStringForGroupBy += strings.Replace(f.String(), "LilacCDNMetricsResponseGroupBy", "LilacCDNMetricsResponseGroupBy", 1) + "," + return len(dAtA) - i, nil +} +func (m *GetSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - repeatedStringForGroupBy += "}" - repeatedStringForValue := "[]*LilacCDNMetricsResponseValue{" - for _, f := range this.Value { - repeatedStringForValue += strings.Replace(f.String(), "LilacCDNMetricsResponseValue", "LilacCDNMetricsResponseValue", 1) + "," + return len(dAtA) - i, nil +} +func (m *LilacCDNMetricsFilter) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - repeatedStringForValue += "}" - s := strings.Join([]string{`&LilacCDNMetricsResponseSeries{`, - `GroupBy:` + repeatedStringForGroupBy + `,`, - `Value:` + repeatedStringForValue + `,`, - `}`, - }, "") - return s + return dAtA[:n], nil } -func (this *LilacCDNMetricsResponseData) String() string { - if this == nil { - return "nil" + +func (m *LilacCDNMetricsFilter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNMetricsFilter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Operator != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Operator)) + i-- + dAtA[i] = 0x18 } - repeatedStringForSeries := "[]*LilacCDNMetricsResponseSeries{" - for _, f := range this.Series { - repeatedStringForSeries += strings.Replace(f.String(), "LilacCDNMetricsResponseSeries", "LilacCDNMetricsResponseSeries", 1) + "," + if len(m.Values) > 0 { + for iNdEx := len(m.Values) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Values[iNdEx]) + copy(dAtA[i:], m.Values[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Values[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if m.Tag != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Tag)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *LilacCDNMetricsResponseGroupBy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LilacCDNMetricsResponseGroupBy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNMetricsResponseGroupBy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Value) > 0 { + i -= len(m.Value) + copy(dAtA[i:], m.Value) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Value))) + i-- + dAtA[i] = 0x12 + } + if m.Name != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Name)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *LilacCDNMetricsResponseValue) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LilacCDNMetricsResponseValue) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNMetricsResponseValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Value) > 0 { + i -= len(m.Value) + copy(dAtA[i:], m.Value) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Value))) + i-- + dAtA[i] = 0x12 + } + if len(m.Timestamp) > 0 { + i -= len(m.Timestamp) + copy(dAtA[i:], m.Timestamp) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Timestamp))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *LilacCDNMetricsResponseSeries) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LilacCDNMetricsResponseSeries) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNMetricsResponseSeries) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Value) > 0 { + for iNdEx := len(m.Value) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Value[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.GroupBy) > 0 { + for iNdEx := len(m.GroupBy) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GroupBy[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *LilacCDNMetricsResponseData) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LilacCDNMetricsResponseData) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LilacCDNMetricsResponseData) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Series) > 0 { + for iNdEx := len(m.Series) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Series[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if m.Unit != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Unit)) + i-- + dAtA[i] = 0x10 + } + if m.Type != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Type)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ProxyTypeHttpsAutoCerts) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpRedirect { + n += 2 + } + if m.AddHsts { + n += 2 + } + if m.TlsConfig != nil { + l = m.TlsConfig.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ServerHeaderChoice != nil { + n += m.ServerHeaderChoice.Size() + } + return n +} + +func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultHeader != nil { + l = m.DefaultHeader.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ProxyTypeHttpsAutoCerts_ServerName) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ServerName) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *ProxyTypeHttpsAutoCerts_AppendServerName) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.AppendServerName) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *ProxyTypeHttpsAutoCerts_PassThrough) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PassThrough != nil { + l = m.PassThrough.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *HeaderControlType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RequestHeadersToAdd) > 0 { + for _, e := range m.RequestHeadersToAdd { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.RequestHeadersToRemove) > 0 { + for _, s := range m.RequestHeadersToRemove { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.ResponseHeadersToAdd) > 0 { + for _, e := range m.ResponseHeadersToAdd { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.ResponseHeadersToRemove) > 0 { + for _, s := range m.ResponseHeadersToRemove { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *WebApplicationFirewall) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.WafChoice != nil { + n += m.WafChoice.Size() + } + if len(m.WafExclusionRules) > 0 { + for _, e := range m.WafExclusionRules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.DataGuardRules) > 0 { + for _, e := range m.DataGuardRules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.CsrfPolicy != nil { + l = m.CsrfPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.GraphqlRules) > 0 { + for _, e := range m.GraphqlRules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.ProtectedCookies) > 0 { + for _, e := range m.ProtectedCookies { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *WebApplicationFirewall_DisableWaf) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableWaf != nil { + l = m.DisableWaf.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *WebApplicationFirewall_AppFirewall) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AppFirewall != nil { + l = m.AppFirewall.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *WebApplicationFirewall_AppFirewallOnCacheMiss) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AppFirewallOnCacheMiss != nil { + l = m.AppFirewallOnCacheMiss.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ServicePolicyChoice != nil { + n += m.ServicePolicyChoice.Size() + } + if m.IpReputationChoice != nil { + n += m.IpReputationChoice.Size() + } + if m.UserIdChoice != nil { + n += m.UserIdChoice.Size() + } + if m.MaliciousUserDetectionChoice != nil { + n += m.MaliciousUserDetectionChoice.Size() + } + if m.ChallengeType != nil { + n += m.ChallengeType.Size() + } + if m.RateLimitChoice != nil { + n += m.RateLimitChoice.Size() + } + if len(m.TrustedClients) > 0 { + for _, e := range m.TrustedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if len(m.BlockedClients) > 0 { + for _, e := range m.BlockedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.CorsPolicy != nil { + l = m.CorsPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CommonSecurityControls_ServicePoliciesFromNamespace) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ServicePoliciesFromNamespace != nil { + l = m.ServicePoliciesFromNamespace.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_NoServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoServicePolicies != nil { + l = m.NoServicePolicies.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_ActiveServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveServicePolicies != nil { + l = m.ActiveServicePolicies.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_DisableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableIpReputation != nil { + l = m.DisableIpReputation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_EnableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableIpReputation != nil { + l = m.EnableIpReputation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_UserIdClientIp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UserIdClientIp != nil { + l = m.UserIdClientIp.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_UserIdentification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UserIdentification != nil { + l = m.UserIdentification.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_DisableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableMaliciousUserDetection != nil { + l = m.DisableMaliciousUserDetection.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_EnableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableMaliciousUserDetection != nil { + l = m.EnableMaliciousUserDetection.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_NoChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoChallenge != nil { + l = m.NoChallenge.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_EnableChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableChallenge != nil { + l = m.EnableChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_JsChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JsChallenge != nil { + l = m.JsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_CaptchaChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CaptchaChallenge != nil { + l = m.CaptchaChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_PolicyBasedChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PolicyBasedChallenge != nil { + l = m.PolicyBasedChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_DisableRateLimit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableRateLimit != nil { + l = m.DisableRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_ApiRateLimit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiRateLimit != nil { + l = m.ApiRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_RateLimit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RateLimit != nil { + l = m.RateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_IpReputationOnCacheMiss) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpReputationOnCacheMiss != nil { + l = m.IpReputationOnCacheMiss.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MaliciousUserDetectionOnCacheMiss != nil { + l = m.MaliciousUserDetectionOnCacheMiss.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CommonSecurityControls_ChallengeOnCacheMiss) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ChallengeOnCacheMiss != nil { + l = m.ChallengeOnCacheMiss.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ApiProtection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiDefinitionChoice != nil { + n += m.ApiDefinitionChoice.Size() + } + if m.ApiProtectionRules != nil { + l = m.ApiProtectionRules.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.JwtValidation != nil { + l = m.JwtValidation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ApiDiscoveryChoice != nil { + n += m.ApiDiscoveryChoice.Size() + } + return n +} + +func (m *ApiProtection_DisableApiDefinition) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableApiDefinition != nil { + l = m.DisableApiDefinition.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ApiProtection_ApiSpecification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiSpecification != nil { + l = m.ApiSpecification.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ApiProtection_EnableApiDiscovery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableApiDiscovery != nil { + l = m.EnableApiDiscovery.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ApiProtection_DisableApiDiscovery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableApiDiscovery != nil { + l = m.DisableApiDiscovery.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ApiProtection_ApiSpecificationOnCacheMiss) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiSpecificationOnCacheMiss != nil { + l = m.ApiSpecificationOnCacheMiss.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ApiProtection_ApiDiscoveryOnCacheMiss) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiDiscoveryOnCacheMiss != nil { + l = m.ApiDiscoveryOnCacheMiss.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *SecurityOptionsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpFiltering != nil { + l = m.IpFiltering.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.GeoFiltering != nil { + l = m.GeoFiltering.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.AuthOptions != nil { + l = m.AuthOptions.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.WebAppFirewall != nil { + l = m.WebAppFirewall.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.CommonSecurityControls != nil { + l = m.CommonSecurityControls.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ApiProtection != nil { + l = m.ApiProtection.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *LoggingOptionsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ClientLogOptions != nil { + l = m.ClientLogOptions.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.OriginLogOptions != nil { + l = m.OriginLogOptions.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CDNCacheRuleExpressionList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ExpressionName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.CacheRuleExpression) > 0 { + for _, e := range m.CacheRuleExpression { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *CacheOperator) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CacheOperator != nil { + n += m.CacheOperator.Size() + } + return n +} + +func (m *CacheOperator_Equals) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Equals) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_DoesNotEqual) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DoesNotEqual) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_Contains) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Contains) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_DoesNotContain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DoesNotContain) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_Startswith) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Startswith) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_DoesNotStartWith) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DoesNotStartWith) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_Endswith) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Endswith) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_DoesNotEndWith) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DoesNotEndWith) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheOperator_MatchRegex) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.MatchRegex) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheHeaderMatcherType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Name != 0 { + n += 1 + sovTypes(uint64(m.Name)) + } + if m.Operator != nil { + l = m.Operator.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CDNPathMatcherType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Operator != nil { + l = m.Operator.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CacheCookieMatcherType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Operator != nil { + l = m.Operator.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CacheQueryParameterMatcherType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Key) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Operator != nil { + l = m.Operator.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CDNCacheRuleExpression) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PathMatch != nil { + l = m.PathMatch.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.CacheHeaders) > 0 { + for _, e := range m.CacheHeaders { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.QueryParameters) > 0 { + for _, e := range m.QueryParameters { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.CookieMatcher) > 0 { + for _, e := range m.CookieMatcher { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *CacheTTLEnableProps) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CacheTtl) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.CacheOverride { + n += 2 + } + if m.IgnoreResponseCookie { + n += 2 + } + return n +} + +func (m *CacheEligibleOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EligibleForCache != nil { + n += m.EligibleForCache.Size() + } + return n +} + +func (m *CacheEligibleOptions_SchemeHostnameUri) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SchemeHostnameUri != nil { + l = m.SchemeHostnameUri.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CacheEligibleOptions_SchemeHostnameRequestUri) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SchemeHostnameRequestUri != nil { + l = m.SchemeHostnameRequestUri.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CacheEligibleOptions_HostnameUri) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HostnameUri != nil { + l = m.HostnameUri.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CacheEligibleOptions_SchemeHostnameUriQuery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SchemeHostnameUriQuery != nil { + l = m.SchemeHostnameUriQuery.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CacheEligibleOptions_SchemeProxyHostUri) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SchemeProxyHostUri != nil { + l = m.SchemeProxyHostUri.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CacheEligibleOptions_SchemeProxyHostRequestUri) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SchemeProxyHostRequestUri != nil { + l = m.SchemeProxyHostRequestUri.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CDNCacheRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.RuleName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.RuleExpressionList) > 0 { + for _, e := range m.RuleExpressionList { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.CacheActions != nil { + n += m.CacheActions.Size() + } + return n +} + +func (m *CDNCacheRule_CacheBypass) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CacheBypass != nil { + l = m.CacheBypass.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CDNCacheRule_EligibleForCache) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EligibleForCache != nil { + l = m.EligibleForCache.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *DefaultCacheTTLProps) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CacheTtl) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *DefaultCacheAction) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CacheActions != nil { + n += m.CacheActions.Size() + } + return n +} + +func (m *DefaultCacheAction_EligibleForCache) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EligibleForCache != nil { + l = m.EligibleForCache.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *DefaultCacheAction_CacheTtlDefault) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CacheTtlDefault) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *DefaultCacheAction_CacheTtlOverride) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CacheTtlOverride) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *DefaultCacheAction_CacheDisabled) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CacheDisabled != nil { + l = m.CacheDisabled.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CacheOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultCacheAction != nil { + l = m.DefaultCacheAction.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.CacheRules) > 0 { + for _, e := range m.CacheRules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *CacheTTLOptionsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TtlOptions != nil { + n += m.TtlOptions.Size() + } + return n +} + +func (m *CacheTTLOptionsType_CacheTtlDefault) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CacheTtlDefault) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheTTLOptionsType_CacheTtlOverride) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CacheTtlOverride) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *CacheTTLOptionsType_CacheDisabled) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CacheDisabled != nil { + l = m.CacheDisabled.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *AdvancedOptionsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HeaderOptions != nil { + l = m.HeaderOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.SecurityOptions != nil { + l = m.SecurityOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.LoggingOptions != nil { + l = m.LoggingOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.CacheTtlOptions != nil { + l = m.CacheTtlOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.CacheOptions != nil { + l = m.CacheOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CDNTLSConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Choice != nil { + n += m.Choice.Size() + } + return n +} + +func (m *CDNTLSConfig_Tls_12Plus) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Tls_12Plus != nil { + l = m.Tls_12Plus.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CDNTLSConfig_Tls_11Plus) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Tls_11Plus != nil { + l = m.Tls_11Plus.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CDNHTTPSAutoCertsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpRedirect { + n += 2 + } + if m.AddHsts { + n += 2 + } + if m.TlsConfig != nil { + l = m.TlsConfig.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CDNDownstreamTlsParamsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TlsConfig != nil { + l = m.TlsConfig.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.TlsCertificates) > 0 { + for _, e := range m.TlsCertificates { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *CDNHTTPSCustomCertsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpRedirect { + n += 2 + } + if m.AddHsts { + n += 2 + } + if m.TlsParameters != nil { + l = m.TlsParameters.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() + } + if m.AddLocation { + n += 2 + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.OriginPool != nil { + l = m.OriginPool.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ViewInternal != nil { + l = m.ViewInternal.Size() + n += 2 + l + sovTypes(uint64(l)) + } + l = len(m.HostName) + if l > 0 { + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.DnsInfo) > 0 { + for _, e := range m.DnsInfo { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.State != 0 { + n += 2 + sovTypes(uint64(m.State)) + } + if m.AutoCertState != 0 { + n += 2 + sovTypes(uint64(m.AutoCertState)) + } + if m.AutoCertInfo != nil { + l = m.AutoCertInfo.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.ServiceDomains) > 0 { + for _, e := range m.ServiceDomains { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.CertState != 0 { + n += 2 + sovTypes(uint64(m.CertState)) + } + return n +} + +func (m *GlobalSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType_Https) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Https != nil { + l = m.Https.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *IpFilteringOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpFilteringType != nil { + n += m.IpFilteringType.Size() + } + return n +} + +func (m *IpFilteringOptions_AllowList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllowList != nil { + l = m.AllowList.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *IpFilteringOptions_BlockList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BlockList != nil { + l = m.BlockList.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GeoFilteringOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GeoFilteringType != nil { + n += m.GeoFilteringType.Size() + } + return n +} + +func (m *GeoFilteringOptions_AllowList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllowList != nil { + l = m.AllowList.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GeoFilteringOptions_BlockList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BlockList != nil { + l = m.BlockList.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *LogHeaderOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.HeaderList) > 0 { + for _, s := range m.HeaderList { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *CDNCustomAuthentication) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.CustomAuthConfig) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *AuthenticationOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AuthOptions != nil { + n += m.AuthOptions.Size() + } + return n +} + +func (m *AuthenticationOptions_DisableAuth) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableAuth != nil { + l = m.DisableAuth.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *AuthenticationOptions_Jwt) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Jwt != nil { + l = m.Jwt.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *AuthenticationOptions_Custom) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Custom != nil { + l = m.Custom.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CDNOriginServerType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Choice != nil { + n += m.Choice.Size() + } + if m.Port != 0 { + n += 1 + sovTypes(uint64(m.Port)) + } + return n +} + +func (m *CDNOriginServerType_PublicIp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PublicIp != nil { + l = m.PublicIp.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CDNOriginServerType_PublicName) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PublicName != nil { + l = m.PublicName.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CdnOriginPoolType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PublicName != nil { + l = m.PublicName.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.TlsChoice != nil { + n += m.TlsChoice.Size() + } + if len(m.OriginServers) > 0 { + for _, e := range m.OriginServers { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.FollowOriginRedirect { + n += 2 + } + l = len(m.OriginRequestTimeout) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.MoreOriginOptions != nil { + l = m.MoreOriginOptions.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CdnOriginPoolType_NoTls) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoTls != nil { + l = m.NoTls.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CdnOriginPoolType_UseTls) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UseTls != nil { + l = m.UseTls.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *OriginAdvancedConfiguration) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableByteRangeRequest { + n += 2 + } + if m.WebsocketProxy { + n += 2 + } + return n +} + +func (m *CreateSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() + } + if m.AddLocation { + n += 2 + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.OriginPool != nil { + l = m.OriginPool.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CreateSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CreateSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *CreateSpecType_Https) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Https != nil { + l = m.Https.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ReplaceSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() + } + if m.AddLocation { + n += 2 + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.OriginPool != nil { + l = m.OriginPool.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ReplaceSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ReplaceSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ReplaceSpecType_Https) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Https != nil { + l = m.Https.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() + } + if m.AddLocation { + n += 2 + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.OriginPool != nil { + l = m.OriginPool.Size() + n += 2 + l + sovTypes(uint64(l)) + } + l = len(m.HostName) + if l > 0 { + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.DnsInfo) > 0 { + for _, e := range m.DnsInfo { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.State != 0 { + n += 2 + sovTypes(uint64(m.State)) + } + if m.AutoCertInfo != nil { + l = m.AutoCertInfo.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.ServiceDomains) > 0 { + for _, e := range m.ServiceDomains { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.CertState != 0 { + n += 2 + sovTypes(uint64(m.CertState)) + } + return n +} + +func (m *GetSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GetSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GetSpecType_Https) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Https != nil { + l = m.Https.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *LilacCDNMetricsFilter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Tag != 0 { + n += 1 + sovTypes(uint64(m.Tag)) + } + if len(m.Values) > 0 { + for _, s := range m.Values { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.Operator != 0 { + n += 1 + sovTypes(uint64(m.Operator)) + } + return n +} + +func (m *LilacCDNMetricsResponseGroupBy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Name != 0 { + n += 1 + sovTypes(uint64(m.Name)) + } + l = len(m.Value) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *LilacCDNMetricsResponseValue) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Timestamp) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.Value) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *LilacCDNMetricsResponseSeries) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.GroupBy) > 0 { + for _, e := range m.GroupBy { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.Value) > 0 { + for _, e := range m.Value { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *LilacCDNMetricsResponseData) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Type != 0 { + n += 1 + sovTypes(uint64(m.Type)) + } + if m.Unit != 0 { + n += 1 + sovTypes(uint64(m.Unit)) + } + if len(m.Series) > 0 { + for _, e := range m.Series { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ProxyTypeHttpsAutoCerts) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts{`, + `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, + `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, + `TlsConfig:` + strings.Replace(fmt.Sprintf("%v", this.TlsConfig), "TlsConfig", "views.TlsConfig", 1) + `,`, + `ServerHeaderChoice:` + fmt.Sprintf("%v", this.ServerHeaderChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DefaultHeader{`, + `DefaultHeader:` + strings.Replace(fmt.Sprintf("%v", this.DefaultHeader), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyTypeHttpsAutoCerts_ServerName) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_ServerName{`, + `ServerName:` + fmt.Sprintf("%v", this.ServerName) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyTypeHttpsAutoCerts_AppendServerName) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_AppendServerName{`, + `AppendServerName:` + fmt.Sprintf("%v", this.AppendServerName) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyTypeHttpsAutoCerts_PassThrough) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_PassThrough{`, + `PassThrough:` + strings.Replace(fmt.Sprintf("%v", this.PassThrough), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *HeaderControlType) String() string { + if this == nil { + return "nil" + } + repeatedStringForRequestHeadersToAdd := "[]*HeaderManipulationOptionType{" + for _, f := range this.RequestHeadersToAdd { + repeatedStringForRequestHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + } + repeatedStringForRequestHeadersToAdd += "}" + repeatedStringForResponseHeadersToAdd := "[]*HeaderManipulationOptionType{" + for _, f := range this.ResponseHeadersToAdd { + repeatedStringForResponseHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + } + repeatedStringForResponseHeadersToAdd += "}" + s := strings.Join([]string{`&HeaderControlType{`, + `RequestHeadersToAdd:` + repeatedStringForRequestHeadersToAdd + `,`, + `RequestHeadersToRemove:` + fmt.Sprintf("%v", this.RequestHeadersToRemove) + `,`, + `ResponseHeadersToAdd:` + repeatedStringForResponseHeadersToAdd + `,`, + `ResponseHeadersToRemove:` + fmt.Sprintf("%v", this.ResponseHeadersToRemove) + `,`, + `}`, + }, "") + return s +} +func (this *WebApplicationFirewall) String() string { + if this == nil { + return "nil" + } + repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" + for _, f := range this.WafExclusionRules { + repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," + } + repeatedStringForWafExclusionRules += "}" + repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" + for _, f := range this.DataGuardRules { + repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," + } + repeatedStringForDataGuardRules += "}" + repeatedStringForGraphqlRules := "[]*GraphQLRule{" + for _, f := range this.GraphqlRules { + repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," + } + repeatedStringForGraphqlRules += "}" + repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" + for _, f := range this.ProtectedCookies { + repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," + } + repeatedStringForProtectedCookies += "}" + s := strings.Join([]string{`&WebApplicationFirewall{`, + `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, + `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, + `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, + `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, + `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, + `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, + `}`, + }, "") + return s +} +func (this *WebApplicationFirewall_DisableWaf) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&WebApplicationFirewall_DisableWaf{`, + `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *WebApplicationFirewall_AppFirewall) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&WebApplicationFirewall_AppFirewall{`, + `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *WebApplicationFirewall_AppFirewallOnCacheMiss) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&WebApplicationFirewall_AppFirewallOnCacheMiss{`, + `AppFirewallOnCacheMiss:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewallOnCacheMiss), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls) String() string { + if this == nil { + return "nil" + } + repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.TrustedClients { + repeatedStringForTrustedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForTrustedClients += "}" + repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.BlockedClients { + repeatedStringForBlockedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForBlockedClients += "}" + s := strings.Join([]string{`&CommonSecurityControls{`, + `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, + `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, + `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, + `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, + `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, + `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, + `TrustedClients:` + repeatedStringForTrustedClients + `,`, + `BlockedClients:` + repeatedStringForBlockedClients + `,`, + `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_ServicePoliciesFromNamespace) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_ServicePoliciesFromNamespace{`, + `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_NoServicePolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_NoServicePolicies{`, + `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_ActiveServicePolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_ActiveServicePolicies{`, + `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "common_waf.ServicePolicyList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_DisableIpReputation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_DisableIpReputation{`, + `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_EnableIpReputation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_EnableIpReputation{`, + `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "common_waf.IPThreatCategoryListType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_UserIdClientIp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_UserIdClientIp{`, + `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_UserIdentification) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_UserIdentification{`, + `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_DisableMaliciousUserDetection) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_DisableMaliciousUserDetection{`, + `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_EnableMaliciousUserDetection) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_EnableMaliciousUserDetection{`, + `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_NoChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_NoChallenge{`, + `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_EnableChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_EnableChallenge{`, + `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "common_waf.EnableChallenge", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_JsChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_JsChallenge{`, + `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_CaptchaChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_CaptchaChallenge{`, + `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_PolicyBasedChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_PolicyBasedChallenge{`, + `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "common_waf.PolicyBasedChallenge", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_DisableRateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_DisableRateLimit{`, + `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_ApiRateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_ApiRateLimit{`, + `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "common_waf.APIRateLimit", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_RateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_RateLimit{`, + `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "common_waf.RateLimitConfigType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_IpReputationOnCacheMiss) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_IpReputationOnCacheMiss{`, + `IpReputationOnCacheMiss:` + strings.Replace(fmt.Sprintf("%v", this.IpReputationOnCacheMiss), "IPThreatCategoryListType", "common_waf.IPThreatCategoryListType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_MaliciousUserDetectionOnCacheMiss{`, + `MaliciousUserDetectionOnCacheMiss:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserDetectionOnCacheMiss), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CommonSecurityControls_ChallengeOnCacheMiss) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CommonSecurityControls_ChallengeOnCacheMiss{`, + `ChallengeOnCacheMiss:` + strings.Replace(fmt.Sprintf("%v", this.ChallengeOnCacheMiss), "EnableChallenge", "common_waf.EnableChallenge", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection{`, + `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, + `ApiProtectionRules:` + strings.Replace(fmt.Sprintf("%v", this.ApiProtectionRules), "APIProtectionRules", "common_waf.APIProtectionRules", 1) + `,`, + `JwtValidation:` + strings.Replace(fmt.Sprintf("%v", this.JwtValidation), "JWTValidation", "common_waf.JWTValidation", 1) + `,`, + `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection_DisableApiDefinition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection_DisableApiDefinition{`, + `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection_ApiSpecification) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection_ApiSpecification{`, + `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "common_waf.APISpecificationSettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection_EnableApiDiscovery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection_EnableApiDiscovery{`, + `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection_DisableApiDiscovery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection_DisableApiDiscovery{`, + `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection_ApiSpecificationOnCacheMiss) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection_ApiSpecificationOnCacheMiss{`, + `ApiSpecificationOnCacheMiss:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecificationOnCacheMiss), "APISpecificationSettings", "common_waf.APISpecificationSettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiProtection_ApiDiscoveryOnCacheMiss) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiProtection_ApiDiscoveryOnCacheMiss{`, + `ApiDiscoveryOnCacheMiss:` + strings.Replace(fmt.Sprintf("%v", this.ApiDiscoveryOnCacheMiss), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SecurityOptionsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SecurityOptionsType{`, + `IpFiltering:` + strings.Replace(this.IpFiltering.String(), "IpFilteringOptions", "IpFilteringOptions", 1) + `,`, + `GeoFiltering:` + strings.Replace(this.GeoFiltering.String(), "GeoFilteringOptions", "GeoFilteringOptions", 1) + `,`, + `AuthOptions:` + strings.Replace(this.AuthOptions.String(), "AuthenticationOptions", "AuthenticationOptions", 1) + `,`, + `WebAppFirewall:` + strings.Replace(this.WebAppFirewall.String(), "WebApplicationFirewall", "WebApplicationFirewall", 1) + `,`, + `CommonSecurityControls:` + strings.Replace(this.CommonSecurityControls.String(), "CommonSecurityControls", "CommonSecurityControls", 1) + `,`, + `ApiProtection:` + strings.Replace(this.ApiProtection.String(), "ApiProtection", "ApiProtection", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LoggingOptionsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LoggingOptionsType{`, + `ClientLogOptions:` + strings.Replace(this.ClientLogOptions.String(), "LogHeaderOptions", "LogHeaderOptions", 1) + `,`, + `OriginLogOptions:` + strings.Replace(this.OriginLogOptions.String(), "LogHeaderOptions", "LogHeaderOptions", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNCacheRuleExpressionList) String() string { + if this == nil { + return "nil" + } + repeatedStringForCacheRuleExpression := "[]*CDNCacheRuleExpression{" + for _, f := range this.CacheRuleExpression { + repeatedStringForCacheRuleExpression += strings.Replace(f.String(), "CDNCacheRuleExpression", "CDNCacheRuleExpression", 1) + "," + } + repeatedStringForCacheRuleExpression += "}" + s := strings.Join([]string{`&CDNCacheRuleExpressionList{`, + `ExpressionName:` + fmt.Sprintf("%v", this.ExpressionName) + `,`, + `CacheRuleExpression:` + repeatedStringForCacheRuleExpression + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator{`, + `CacheOperator:` + fmt.Sprintf("%v", this.CacheOperator) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_Equals) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_Equals{`, + `Equals:` + fmt.Sprintf("%v", this.Equals) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_DoesNotEqual) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_DoesNotEqual{`, + `DoesNotEqual:` + fmt.Sprintf("%v", this.DoesNotEqual) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_Contains) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_Contains{`, + `Contains:` + fmt.Sprintf("%v", this.Contains) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_DoesNotContain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_DoesNotContain{`, + `DoesNotContain:` + fmt.Sprintf("%v", this.DoesNotContain) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_Startswith) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_Startswith{`, + `Startswith:` + fmt.Sprintf("%v", this.Startswith) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_DoesNotStartWith) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_DoesNotStartWith{`, + `DoesNotStartWith:` + fmt.Sprintf("%v", this.DoesNotStartWith) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_Endswith) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_Endswith{`, + `Endswith:` + fmt.Sprintf("%v", this.Endswith) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_DoesNotEndWith) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_DoesNotEndWith{`, + `DoesNotEndWith:` + fmt.Sprintf("%v", this.DoesNotEndWith) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOperator_MatchRegex) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheOperator_MatchRegex{`, + `MatchRegex:` + fmt.Sprintf("%v", this.MatchRegex) + `,`, + `}`, + }, "") + return s +} +func (this *CacheHeaderMatcherType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheHeaderMatcherType{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNPathMatcherType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNPathMatcherType{`, + `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheCookieMatcherType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheCookieMatcherType{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheQueryParameterMatcherType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheQueryParameterMatcherType{`, + `Key:` + fmt.Sprintf("%v", this.Key) + `,`, + `Operator:` + strings.Replace(this.Operator.String(), "CacheOperator", "CacheOperator", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNCacheRuleExpression) String() string { + if this == nil { + return "nil" + } + repeatedStringForCacheHeaders := "[]*CacheHeaderMatcherType{" + for _, f := range this.CacheHeaders { + repeatedStringForCacheHeaders += strings.Replace(f.String(), "CacheHeaderMatcherType", "CacheHeaderMatcherType", 1) + "," + } + repeatedStringForCacheHeaders += "}" + repeatedStringForQueryParameters := "[]*CacheQueryParameterMatcherType{" + for _, f := range this.QueryParameters { + repeatedStringForQueryParameters += strings.Replace(f.String(), "CacheQueryParameterMatcherType", "CacheQueryParameterMatcherType", 1) + "," + } + repeatedStringForQueryParameters += "}" + repeatedStringForCookieMatcher := "[]*CacheCookieMatcherType{" + for _, f := range this.CookieMatcher { + repeatedStringForCookieMatcher += strings.Replace(f.String(), "CacheCookieMatcherType", "CacheCookieMatcherType", 1) + "," + } + repeatedStringForCookieMatcher += "}" + s := strings.Join([]string{`&CDNCacheRuleExpression{`, + `PathMatch:` + strings.Replace(this.PathMatch.String(), "CDNPathMatcherType", "CDNPathMatcherType", 1) + `,`, + `CacheHeaders:` + repeatedStringForCacheHeaders + `,`, + `QueryParameters:` + repeatedStringForQueryParameters + `,`, + `CookieMatcher:` + repeatedStringForCookieMatcher + `,`, + `}`, + }, "") + return s +} +func (this *CacheTTLEnableProps) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheTTLEnableProps{`, + `CacheTtl:` + fmt.Sprintf("%v", this.CacheTtl) + `,`, + `CacheOverride:` + fmt.Sprintf("%v", this.CacheOverride) + `,`, + `IgnoreResponseCookie:` + fmt.Sprintf("%v", this.IgnoreResponseCookie) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions{`, + `EligibleForCache:` + fmt.Sprintf("%v", this.EligibleForCache) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions_SchemeHostnameUri) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions_SchemeHostnameUri{`, + `SchemeHostnameUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeHostnameUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions_SchemeHostnameRequestUri) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions_SchemeHostnameRequestUri{`, + `SchemeHostnameRequestUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeHostnameRequestUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions_HostnameUri) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions_HostnameUri{`, + `HostnameUri:` + strings.Replace(fmt.Sprintf("%v", this.HostnameUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions_SchemeHostnameUriQuery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions_SchemeHostnameUriQuery{`, + `SchemeHostnameUriQuery:` + strings.Replace(fmt.Sprintf("%v", this.SchemeHostnameUriQuery), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions_SchemeProxyHostUri) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions_SchemeProxyHostUri{`, + `SchemeProxyHostUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeProxyHostUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheEligibleOptions_SchemeProxyHostRequestUri) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheEligibleOptions_SchemeProxyHostRequestUri{`, + `SchemeProxyHostRequestUri:` + strings.Replace(fmt.Sprintf("%v", this.SchemeProxyHostRequestUri), "CacheTTLEnableProps", "CacheTTLEnableProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNCacheRule) String() string { + if this == nil { + return "nil" + } + repeatedStringForRuleExpressionList := "[]*CDNCacheRuleExpressionList{" + for _, f := range this.RuleExpressionList { + repeatedStringForRuleExpressionList += strings.Replace(f.String(), "CDNCacheRuleExpressionList", "CDNCacheRuleExpressionList", 1) + "," + } + repeatedStringForRuleExpressionList += "}" + s := strings.Join([]string{`&CDNCacheRule{`, + `RuleName:` + fmt.Sprintf("%v", this.RuleName) + `,`, + `RuleExpressionList:` + repeatedStringForRuleExpressionList + `,`, + `CacheActions:` + fmt.Sprintf("%v", this.CacheActions) + `,`, + `}`, + }, "") + return s +} +func (this *CDNCacheRule_CacheBypass) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNCacheRule_CacheBypass{`, + `CacheBypass:` + strings.Replace(fmt.Sprintf("%v", this.CacheBypass), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNCacheRule_EligibleForCache) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNCacheRule_EligibleForCache{`, + `EligibleForCache:` + strings.Replace(fmt.Sprintf("%v", this.EligibleForCache), "CacheEligibleOptions", "CacheEligibleOptions", 1) + `,`, + `}`, + }, "") + return s +} +func (this *DefaultCacheTTLProps) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DefaultCacheTTLProps{`, + `CacheTtl:` + fmt.Sprintf("%v", this.CacheTtl) + `,`, + `}`, + }, "") + return s +} +func (this *DefaultCacheAction) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DefaultCacheAction{`, + `CacheActions:` + fmt.Sprintf("%v", this.CacheActions) + `,`, + `}`, + }, "") + return s +} +func (this *DefaultCacheAction_EligibleForCache) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DefaultCacheAction_EligibleForCache{`, + `EligibleForCache:` + strings.Replace(fmt.Sprintf("%v", this.EligibleForCache), "DefaultCacheTTLProps", "DefaultCacheTTLProps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *DefaultCacheAction_CacheTtlDefault) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DefaultCacheAction_CacheTtlDefault{`, + `CacheTtlDefault:` + fmt.Sprintf("%v", this.CacheTtlDefault) + `,`, + `}`, + }, "") + return s +} +func (this *DefaultCacheAction_CacheTtlOverride) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DefaultCacheAction_CacheTtlOverride{`, + `CacheTtlOverride:` + fmt.Sprintf("%v", this.CacheTtlOverride) + `,`, + `}`, + }, "") + return s +} +func (this *DefaultCacheAction_CacheDisabled) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DefaultCacheAction_CacheDisabled{`, + `CacheDisabled:` + strings.Replace(fmt.Sprintf("%v", this.CacheDisabled), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CacheOptions) String() string { + if this == nil { + return "nil" + } + repeatedStringForCacheRules := "[]*CDNCacheRule{" + for _, f := range this.CacheRules { + repeatedStringForCacheRules += strings.Replace(f.String(), "CDNCacheRule", "CDNCacheRule", 1) + "," + } + repeatedStringForCacheRules += "}" + s := strings.Join([]string{`&CacheOptions{`, + `DefaultCacheAction:` + strings.Replace(this.DefaultCacheAction.String(), "DefaultCacheAction", "DefaultCacheAction", 1) + `,`, + `CacheRules:` + repeatedStringForCacheRules + `,`, + `}`, + }, "") + return s +} +func (this *CacheTTLOptionsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheTTLOptionsType{`, + `TtlOptions:` + fmt.Sprintf("%v", this.TtlOptions) + `,`, + `}`, + }, "") + return s +} +func (this *CacheTTLOptionsType_CacheTtlDefault) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheTTLOptionsType_CacheTtlDefault{`, + `CacheTtlDefault:` + fmt.Sprintf("%v", this.CacheTtlDefault) + `,`, + `}`, + }, "") + return s +} +func (this *CacheTTLOptionsType_CacheTtlOverride) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheTTLOptionsType_CacheTtlOverride{`, + `CacheTtlOverride:` + fmt.Sprintf("%v", this.CacheTtlOverride) + `,`, + `}`, + }, "") + return s +} +func (this *CacheTTLOptionsType_CacheDisabled) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CacheTTLOptionsType_CacheDisabled{`, + `CacheDisabled:` + strings.Replace(fmt.Sprintf("%v", this.CacheDisabled), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AdvancedOptionsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AdvancedOptionsType{`, + `HeaderOptions:` + strings.Replace(this.HeaderOptions.String(), "HeaderControlType", "HeaderControlType", 1) + `,`, + `SecurityOptions:` + strings.Replace(this.SecurityOptions.String(), "SecurityOptionsType", "SecurityOptionsType", 1) + `,`, + `LoggingOptions:` + strings.Replace(this.LoggingOptions.String(), "LoggingOptionsType", "LoggingOptionsType", 1) + `,`, + `CacheTtlOptions:` + strings.Replace(this.CacheTtlOptions.String(), "CacheTTLOptionsType", "CacheTTLOptionsType", 1) + `,`, + `CacheOptions:` + strings.Replace(this.CacheOptions.String(), "CacheOptions", "CacheOptions", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNTLSConfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNTLSConfig{`, + `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, + `}`, + }, "") + return s +} +func (this *CDNTLSConfig_Tls_12Plus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNTLSConfig_Tls_12Plus{`, + `Tls_12Plus:` + strings.Replace(fmt.Sprintf("%v", this.Tls_12Plus), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNTLSConfig_Tls_11Plus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNTLSConfig_Tls_11Plus{`, + `Tls_11Plus:` + strings.Replace(fmt.Sprintf("%v", this.Tls_11Plus), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNHTTPSAutoCertsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNHTTPSAutoCertsType{`, + `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, + `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, + `TlsConfig:` + strings.Replace(this.TlsConfig.String(), "CDNTLSConfig", "CDNTLSConfig", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNDownstreamTlsParamsType) String() string { + if this == nil { + return "nil" + } + repeatedStringForTlsCertificates := "[]*TlsCertificateType{" + for _, f := range this.TlsCertificates { + repeatedStringForTlsCertificates += strings.Replace(fmt.Sprintf("%v", f), "TlsCertificateType", "schema.TlsCertificateType", 1) + "," + } + repeatedStringForTlsCertificates += "}" + s := strings.Join([]string{`&CDNDownstreamTlsParamsType{`, + `TlsConfig:` + strings.Replace(this.TlsConfig.String(), "CDNTLSConfig", "CDNTLSConfig", 1) + `,`, + `TlsCertificates:` + repeatedStringForTlsCertificates + `,`, + `}`, + }, "") + return s +} +func (this *CDNHTTPSCustomCertsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNHTTPSCustomCertsType{`, + `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, + `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, + `TlsParameters:` + strings.Replace(this.TlsParameters.String(), "CDNDownstreamTlsParamsType", "CDNDownstreamTlsParamsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForDnsInfo := "[]*DnsInfo{" + for _, f := range this.DnsInfo { + repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," + } + repeatedStringForDnsInfo += "}" + repeatedStringForServiceDomains := "[]*ServiceDomain{" + for _, f := range this.ServiceDomains { + repeatedStringForServiceDomains += strings.Replace(fmt.Sprintf("%v", f), "ServiceDomain", "virtual_host.ServiceDomain", 1) + "," + } + repeatedStringForServiceDomains += "}" + s := strings.Join([]string{`&GlobalSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, + `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, + `DnsInfo:` + repeatedStringForDnsInfo + `,`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `AutoCertState:` + fmt.Sprintf("%v", this.AutoCertState) + `,`, + `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, + `ServiceDomains:` + repeatedStringForServiceDomains + `,`, + `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_Http) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType_Https) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *IpFilteringOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&IpFilteringOptions{`, + `IpFilteringType:` + fmt.Sprintf("%v", this.IpFilteringType) + `,`, + `}`, + }, "") + return s +} +func (this *IpFilteringOptions_AllowList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&IpFilteringOptions_AllowList{`, + `AllowList:` + strings.Replace(fmt.Sprintf("%v", this.AllowList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *IpFilteringOptions_BlockList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&IpFilteringOptions_BlockList{`, + `BlockList:` + strings.Replace(fmt.Sprintf("%v", this.BlockList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GeoFilteringOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GeoFilteringOptions{`, + `GeoFilteringType:` + fmt.Sprintf("%v", this.GeoFilteringType) + `,`, + `}`, + }, "") + return s +} +func (this *GeoFilteringOptions_AllowList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GeoFilteringOptions_AllowList{`, + `AllowList:` + strings.Replace(fmt.Sprintf("%v", this.AllowList), "CountryCodeList", "policy.CountryCodeList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GeoFilteringOptions_BlockList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GeoFilteringOptions_BlockList{`, + `BlockList:` + strings.Replace(fmt.Sprintf("%v", this.BlockList), "CountryCodeList", "policy.CountryCodeList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LogHeaderOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LogHeaderOptions{`, + `HeaderList:` + fmt.Sprintf("%v", this.HeaderList) + `,`, + `}`, + }, "") + return s +} +func (this *CDNCustomAuthentication) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNCustomAuthentication{`, + `CustomAuthConfig:` + fmt.Sprintf("%v", this.CustomAuthConfig) + `,`, + `}`, + }, "") + return s +} +func (this *AuthenticationOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AuthenticationOptions{`, + `AuthOptions:` + fmt.Sprintf("%v", this.AuthOptions) + `,`, + `}`, + }, "") + return s +} +func (this *AuthenticationOptions_DisableAuth) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AuthenticationOptions_DisableAuth{`, + `DisableAuth:` + strings.Replace(fmt.Sprintf("%v", this.DisableAuth), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AuthenticationOptions_Jwt) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AuthenticationOptions_Jwt{`, + `Jwt:` + strings.Replace(fmt.Sprintf("%v", this.Jwt), "JwtTokenAuthOptions", "policy.JwtTokenAuthOptions", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AuthenticationOptions_Custom) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AuthenticationOptions_Custom{`, + `Custom:` + strings.Replace(fmt.Sprintf("%v", this.Custom), "CDNCustomAuthentication", "CDNCustomAuthentication", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNOriginServerType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNOriginServerType{`, + `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, + `Port:` + fmt.Sprintf("%v", this.Port) + `,`, + `}`, + }, "") + return s +} +func (this *CDNOriginServerType_PublicIp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNOriginServerType_PublicIp{`, + `PublicIp:` + strings.Replace(fmt.Sprintf("%v", this.PublicIp), "OriginServerPublicIP", "origin_pool.OriginServerPublicIP", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CDNOriginServerType_PublicName) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CDNOriginServerType_PublicName{`, + `PublicName:` + strings.Replace(fmt.Sprintf("%v", this.PublicName), "OriginServerPublicName", "origin_pool.OriginServerPublicName", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CdnOriginPoolType) String() string { + if this == nil { + return "nil" + } + repeatedStringForOriginServers := "[]*CDNOriginServerType{" + for _, f := range this.OriginServers { + repeatedStringForOriginServers += strings.Replace(f.String(), "CDNOriginServerType", "CDNOriginServerType", 1) + "," + } + repeatedStringForOriginServers += "}" + s := strings.Join([]string{`&CdnOriginPoolType{`, + `PublicName:` + strings.Replace(fmt.Sprintf("%v", this.PublicName), "OriginServerPublicName", "origin_pool.OriginServerPublicName", 1) + `,`, + `TlsChoice:` + fmt.Sprintf("%v", this.TlsChoice) + `,`, + `OriginServers:` + repeatedStringForOriginServers + `,`, + `FollowOriginRedirect:` + fmt.Sprintf("%v", this.FollowOriginRedirect) + `,`, + `OriginRequestTimeout:` + fmt.Sprintf("%v", this.OriginRequestTimeout) + `,`, + `MoreOriginOptions:` + strings.Replace(this.MoreOriginOptions.String(), "OriginAdvancedConfiguration", "OriginAdvancedConfiguration", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CdnOriginPoolType_NoTls) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CdnOriginPoolType_NoTls{`, + `NoTls:` + strings.Replace(fmt.Sprintf("%v", this.NoTls), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CdnOriginPoolType_UseTls) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CdnOriginPoolType_UseTls{`, + `UseTls:` + strings.Replace(fmt.Sprintf("%v", this.UseTls), "UpstreamTlsParameters", "origin_pool.UpstreamTlsParameters", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OriginAdvancedConfiguration) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OriginAdvancedConfiguration{`, + `DisableByteRangeRequest:` + fmt.Sprintf("%v", this.DisableByteRangeRequest) + `,`, + `WebsocketProxy:` + fmt.Sprintf("%v", this.WebsocketProxy) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_Http) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_Https) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_Http) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_Https) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForDnsInfo := "[]*DnsInfo{" + for _, f := range this.DnsInfo { + repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," + } + repeatedStringForDnsInfo += "}" + repeatedStringForServiceDomains := "[]*ServiceDomain{" + for _, f := range this.ServiceDomains { + repeatedStringForServiceDomains += strings.Replace(fmt.Sprintf("%v", f), "ServiceDomain", "virtual_host.ServiceDomain", 1) + "," + } + repeatedStringForServiceDomains += "}" + s := strings.Join([]string{`&GetSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `OriginPool:` + strings.Replace(this.OriginPool.String(), "CdnOriginPoolType", "CdnOriginPoolType", 1) + `,`, + `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, + `DnsInfo:` + repeatedStringForDnsInfo + `,`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, + `ServiceDomains:` + repeatedStringForServiceDomains + `,`, + `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType_Http) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "http_loadbalancer.ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "CDNHTTPSAutoCertsType", "CDNHTTPSAutoCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType_Https) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "CDNHTTPSCustomCertsType", "CDNHTTPSCustomCertsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNMetricsFilter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNMetricsFilter{`, + `Tag:` + fmt.Sprintf("%v", this.Tag) + `,`, + `Values:` + fmt.Sprintf("%v", this.Values) + `,`, + `Operator:` + fmt.Sprintf("%v", this.Operator) + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNMetricsResponseGroupBy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNMetricsResponseGroupBy{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Value:` + fmt.Sprintf("%v", this.Value) + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNMetricsResponseValue) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LilacCDNMetricsResponseValue{`, + `Timestamp:` + fmt.Sprintf("%v", this.Timestamp) + `,`, + `Value:` + fmt.Sprintf("%v", this.Value) + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNMetricsResponseSeries) String() string { + if this == nil { + return "nil" + } + repeatedStringForGroupBy := "[]*LilacCDNMetricsResponseGroupBy{" + for _, f := range this.GroupBy { + repeatedStringForGroupBy += strings.Replace(f.String(), "LilacCDNMetricsResponseGroupBy", "LilacCDNMetricsResponseGroupBy", 1) + "," + } + repeatedStringForGroupBy += "}" + repeatedStringForValue := "[]*LilacCDNMetricsResponseValue{" + for _, f := range this.Value { + repeatedStringForValue += strings.Replace(f.String(), "LilacCDNMetricsResponseValue", "LilacCDNMetricsResponseValue", 1) + "," + } + repeatedStringForValue += "}" + s := strings.Join([]string{`&LilacCDNMetricsResponseSeries{`, + `GroupBy:` + repeatedStringForGroupBy + `,`, + `Value:` + repeatedStringForValue + `,`, + `}`, + }, "") + return s +} +func (this *LilacCDNMetricsResponseData) String() string { + if this == nil { + return "nil" + } + repeatedStringForSeries := "[]*LilacCDNMetricsResponseSeries{" + for _, f := range this.Series { + repeatedStringForSeries += strings.Replace(f.String(), "LilacCDNMetricsResponseSeries", "LilacCDNMetricsResponseSeries", 1) + "," + } + repeatedStringForSeries += "}" + s := strings.Join([]string{`&LilacCDNMetricsResponseData{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, + `Series:` + repeatedStringForSeries + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirect", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.HttpRedirect = bool(v != 0) + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AddHsts", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AddHsts = bool(v != 0) + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TlsConfig", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TlsConfig == nil { + m.TlsConfig = &views.TlsConfig{} + } + if err := m.TlsConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultHeader", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_DefaultHeader{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_ServerName{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AppendServerName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_AppendServerName{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PassThrough", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_PassThrough{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HeaderControlType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HeaderControlType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HeaderControlType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToAdd", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RequestHeadersToAdd = append(m.RequestHeadersToAdd, &schema.HeaderManipulationOptionType{}) + if err := m.RequestHeadersToAdd[len(m.RequestHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToRemove", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RequestHeadersToRemove = append(m.RequestHeadersToRemove, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToAdd", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResponseHeadersToAdd = append(m.ResponseHeadersToAdd, &schema.HeaderManipulationOptionType{}) + if err := m.ResponseHeadersToAdd[len(m.ResponseHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToRemove", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResponseHeadersToRemove = append(m.ResponseHeadersToRemove, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *WebApplicationFirewall) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: WebApplicationFirewall: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: WebApplicationFirewall: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.WafChoice = &WebApplicationFirewall_DisableWaf{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.WafChoice = &WebApplicationFirewall_AppFirewall{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WafExclusionRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.WafExclusionRules = append(m.WafExclusionRules, &policy.SimpleWafExclusionRule{}) + if err := m.WafExclusionRules[len(m.WafExclusionRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) + if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CsrfPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CsrfPolicy == nil { + m.CsrfPolicy = &schema.CsrfPolicy{} + } + if err := m.CsrfPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GraphqlRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GraphqlRules = append(m.GraphqlRules, &policy.GraphQLRule{}) + if err := m.GraphqlRules[len(m.GraphqlRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProtectedCookies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProtectedCookies = append(m.ProtectedCookies, &schema.CookieManipulationOptionType{}) + if err := m.ProtectedCookies[len(m.ProtectedCookies)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AppFirewallOnCacheMiss", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.WafChoice = &WebApplicationFirewall_AppFirewallOnCacheMiss{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CommonSecurityControls) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CommonSecurityControls: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CommonSecurityControls: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ServicePoliciesFromNamespace", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ServicePolicyChoice = &CommonSecurityControls_ServicePoliciesFromNamespace{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoServicePolicies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ServicePolicyChoice = &CommonSecurityControls_NoServicePolicies{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActiveServicePolicies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.ServicePolicyList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ServicePolicyChoice = &CommonSecurityControls_ActiveServicePolicies{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpReputationChoice = &CommonSecurityControls_DisableIpReputation{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.IPThreatCategoryListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpReputationChoice = &CommonSecurityControls_EnableIpReputation{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.UserIdChoice = &CommonSecurityControls_UserIdClientIp{v} + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserIdentification", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.UserIdChoice = &CommonSecurityControls_UserIdentification{v} + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableMaliciousUserDetection", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserDetectionChoice = &CommonSecurityControls_DisableMaliciousUserDetection{v} + iNdEx = postIndex + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableMaliciousUserDetection", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserDetectionChoice = &CommonSecurityControls_EnableMaliciousUserDetection{v} + iNdEx = postIndex + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeType = &CommonSecurityControls_NoChallenge{v} + iNdEx = postIndex + case 16: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.EnableChallenge{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeType = &CommonSecurityControls_EnableChallenge{v} + iNdEx = postIndex + case 17: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JsChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.JavascriptChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeType = &CommonSecurityControls_JsChallenge{v} + iNdEx = postIndex + case 18: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.CaptchaChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeType = &CommonSecurityControls_CaptchaChallenge{v} + iNdEx = postIndex + case 19: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyBasedChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.PolicyBasedChallenge{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeType = &CommonSecurityControls_PolicyBasedChallenge{v} + iNdEx = postIndex + case 21: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableRateLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimitChoice = &CommonSecurityControls_DisableRateLimit{v} + iNdEx = postIndex + case 22: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.APIRateLimit{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimitChoice = &CommonSecurityControls_ApiRateLimit{v} + iNdEx = postIndex + case 23: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RateLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.RateLimitConfigType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimitChoice = &CommonSecurityControls_RateLimit{v} + iNdEx = postIndex + case 24: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TrustedClients", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TrustedClients = append(m.TrustedClients, &common_waf.SimpleClientSrcRule{}) + if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 25: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BlockedClients", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BlockedClients = append(m.BlockedClients, &common_waf.SimpleClientSrcRule{}) + if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 26: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CorsPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CorsPolicy == nil { + m.CorsPolicy = &schema.CorsPolicy{} + } + if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 27: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpReputationOnCacheMiss", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.IPThreatCategoryListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpReputationChoice = &CommonSecurityControls_IpReputationOnCacheMiss{v} + iNdEx = postIndex + case 28: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserDetectionOnCacheMiss", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserDetectionChoice = &CommonSecurityControls_MaliciousUserDetectionOnCacheMiss{v} + iNdEx = postIndex + case 29: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChallengeOnCacheMiss", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.EnableChallenge{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeType = &CommonSecurityControls_ChallengeOnCacheMiss{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - repeatedStringForSeries += "}" - s := strings.Join([]string{`&LilacCDNMetricsResponseData{`, - `Type:` + fmt.Sprintf("%v", this.Type) + `,`, - `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, - `Series:` + repeatedStringForSeries + `,`, - `}`, - }, "") - return s -} -func valueToStringTypes(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" + + if iNdEx > l { + return io.ErrUnexpectedEOF } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) + return nil } -func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { +func (m *ApiProtection) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13859,21 +19514,56 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { if b < 0x80 { break } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirect", wireType) + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ApiProtection: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ApiProtection: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDefinitionChoice = &ApiProtection_DisableApiDefinition{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -13883,17 +19573,32 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.HttpRedirect = bool(v != 0) - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AddHsts", wireType) + if msglen < 0 { + return ErrInvalidLengthTypes } - var v int + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.APISpecificationSettings{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDefinitionChoice = &ApiProtection_ApiSpecification{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) + } + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -13903,15 +19608,31 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.AddHsts = bool(v != 0) - case 3: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ApiProtectionRules == nil { + m.ApiProtectionRules = &common_waf.APIProtectionRules{} + } + if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TlsConfig", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JwtValidation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13938,16 +19659,16 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.TlsConfig == nil { - m.TlsConfig = &views.TlsConfig{} + if m.JwtValidation == nil { + m.JwtValidation = &common_waf.JWTValidation{} } - if err := m.TlsConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.JwtValidation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 5: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultHeader", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableApiDiscovery", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13974,17 +19695,17 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.ApiDiscoverySetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_DefaultHeader{v} + m.ApiDiscoveryChoice = &ApiProtection_EnableApiDiscovery{v} iNdEx = postIndex - case 6: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDiscovery", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -13994,29 +19715,32 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_ServerName{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDiscoveryChoice = &ApiProtection_DisableApiDiscovery{v} iNdEx = postIndex - case 7: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppendServerName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecificationOnCacheMiss", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -14026,27 +19750,30 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_AppendServerName{string(dAtA[iNdEx:postIndex])} + v := &common_waf.APISpecificationSettings{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDefinitionChoice = &ApiProtection_ApiSpecificationOnCacheMiss{v} iNdEx = postIndex - case 8: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PassThrough", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiDiscoveryOnCacheMiss", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14073,11 +19800,11 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.ApiDiscoverySetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_PassThrough{v} + m.ApiDiscoveryChoice = &ApiProtection_ApiDiscoveryOnCacheMiss{v} iNdEx = postIndex default: iNdEx = preIndex @@ -14103,7 +19830,7 @@ func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { } return nil } -func (m *HeaderControlType) Unmarshal(dAtA []byte) error { +func (m *SecurityOptionsType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14126,15 +19853,15 @@ func (m *HeaderControlType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: HeaderControlType: wiretype end group for non-group") + return fmt.Errorf("proto: SecurityOptionsType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: HeaderControlType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SecurityOptionsType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToAdd", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IpFiltering", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14161,46 +19888,16 @@ func (m *HeaderControlType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RequestHeadersToAdd = append(m.RequestHeadersToAdd, &schema.HeaderManipulationOptionType{}) - if err := m.RequestHeadersToAdd[len(m.RequestHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToRemove", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes + if m.IpFiltering == nil { + m.IpFiltering = &IpFilteringOptions{} } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.IpFiltering.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.RequestHeadersToRemove = append(m.RequestHeadersToRemove, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 3: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToAdd", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GeoFiltering", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14227,16 +19924,18 @@ func (m *HeaderControlType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ResponseHeadersToAdd = append(m.ResponseHeadersToAdd, &schema.HeaderManipulationOptionType{}) - if err := m.ResponseHeadersToAdd[len(m.ResponseHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.GeoFiltering == nil { + m.GeoFiltering = &GeoFilteringOptions{} + } + if err := m.GeoFiltering.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 4: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToRemove", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AuthOptions", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -14246,80 +19945,31 @@ func (m *HeaderControlType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ResponseHeadersToRemove = append(m.ResponseHeadersToRemove, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SecurityOptionsType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + if m.AuthOptions == nil { + m.AuthOptions = &AuthenticationOptions{} } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.AuthOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SecurityOptionsType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SecurityOptionsType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 5: + iNdEx = postIndex + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IpFiltering", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WebAppFirewall", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14346,16 +19996,16 @@ func (m *SecurityOptionsType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.IpFiltering == nil { - m.IpFiltering = &IpFilteringOptions{} + if m.WebAppFirewall == nil { + m.WebAppFirewall = &WebApplicationFirewall{} } - if err := m.IpFiltering.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.WebAppFirewall.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 6: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GeoFiltering", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CommonSecurityControls", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14382,16 +20032,16 @@ func (m *SecurityOptionsType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.GeoFiltering == nil { - m.GeoFiltering = &GeoFilteringOptions{} + if m.CommonSecurityControls == nil { + m.CommonSecurityControls = &CommonSecurityControls{} } - if err := m.GeoFiltering.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.CommonSecurityControls.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 9: + case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AuthOptions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiProtection", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14418,10 +20068,10 @@ func (m *SecurityOptionsType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.AuthOptions == nil { - m.AuthOptions = &AuthenticationOptions{} + if m.ApiProtection == nil { + m.ApiProtection = &ApiProtection{} } - if err := m.AuthOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ApiProtection.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex diff --git a/pbgo/extschema/schema/views/cdn_loadbalancer/types.vesmsg.go b/pbgo/extschema/schema/views/cdn_loadbalancer/types.vesmsg.go index 0bfe16b32..578971be0 100644 --- a/pbgo/extschema/schema/views/cdn_loadbalancer/types.vesmsg.go +++ b/pbgo/extschema/schema/views/cdn_loadbalancer/types.vesmsg.go @@ -17,8 +17,10 @@ import ( ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" ves_io_schema_views_http_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/http_loadbalancer" ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" + ves_io_schema_virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" ves_io_schema_virtual_host_dns_info "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host_dns_info" ) @@ -84,6 +86,33 @@ func (m *AdvancedOptionsType) Validate(ctx context.Context, opts ...db.ValidateO return AdvancedOptionsTypeValidator().Validate(ctx, m, opts...) } +func (m *AdvancedOptionsType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSecurityOptionsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *AdvancedOptionsType) GetSecurityOptionsDRefInfo() ([]db.DRefInfo, error) { + if m.GetSecurityOptions() == nil { + return nil, nil + } + + drInfos, err := m.GetSecurityOptions().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSecurityOptions().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "security_options." + dri.DRField + } + return drInfos, err + +} + type ValidateAdvancedOptionsType struct { FldValidators map[string]db.ValidatorFunc } @@ -173,6 +202,337 @@ func AdvancedOptionsTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *ApiProtection) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ApiProtection) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ApiProtection) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetJwtValidation().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ApiProtection.jwt_validation") + } + + return nil +} + +func (m *ApiProtection) DeepCopy() *ApiProtection { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ApiProtection{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ApiProtection) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ApiProtection) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ApiProtectionValidator().Validate(ctx, m, opts...) +} + +func (m *ApiProtection) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ApiProtection) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiDefinitionChoice() == nil { + return nil, nil + } + switch m.GetApiDefinitionChoice().(type) { + case *ApiProtection_DisableApiDefinition: + + return nil, nil + + case *ApiProtection_ApiSpecification: + + drInfos, err := m.GetApiSpecification().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_specification." + dri.DRField + } + return drInfos, err + + case *ApiProtection_ApiSpecificationOnCacheMiss: + + drInfos, err := m.GetApiSpecificationOnCacheMiss().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiSpecificationOnCacheMiss().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_specification_on_cache_miss." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } + +} + +// GetDRefInfo for the field's type +func (m *ApiProtection) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiProtectionRules() == nil { + return nil, nil + } + + drInfos, err := m.GetApiProtectionRules().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_protection_rules." + dri.DRField + } + return drInfos, err + +} + +type ValidateApiProtection struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateApiProtection) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") + } + return validatorFn, nil +} + +func (v *ValidateApiProtection) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") + } + return validatorFn, nil +} + +func (v *ValidateApiProtection) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ApiProtection) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ApiProtection got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_definition_choice"]; exists { + val := m.GetApiDefinitionChoice() + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetApiDefinitionChoice().(type) { + case *ApiProtection_DisableApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*ApiProtection_DisableApiDefinition).DisableApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("disable_api_definition"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiProtection_ApiSpecification: + if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { + val := m.GetApiDefinitionChoice().(*ApiProtection_ApiSpecification).ApiSpecification + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_specification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiProtection_ApiSpecificationOnCacheMiss: + if fv, exists := v.FldValidators["api_definition_choice.api_specification_on_cache_miss"]; exists { + val := m.GetApiDefinitionChoice().(*ApiProtection_ApiSpecificationOnCacheMiss).ApiSpecificationOnCacheMiss + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_specification_on_cache_miss"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["api_discovery_choice"]; exists { + val := m.GetApiDiscoveryChoice() + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetApiDiscoveryChoice().(type) { + case *ApiProtection_EnableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*ApiProtection_EnableApiDiscovery).EnableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("enable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiProtection_DisableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*ApiProtection_DisableApiDiscovery).DisableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("disable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiProtection_ApiDiscoveryOnCacheMiss: + if fv, exists := v.FldValidators["api_discovery_choice.api_discovery_on_cache_miss"]; exists { + val := m.GetApiDiscoveryChoice().(*ApiProtection_ApiDiscoveryOnCacheMiss).ApiDiscoveryOnCacheMiss + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("api_discovery_on_cache_miss"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["api_protection_rules"]; exists { + + vOpts := append(opts, db.WithValidateField("api_protection_rules")) + if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["jwt_validation"]; exists { + + vOpts := append(opts, db.WithValidateField("jwt_validation")) + if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultApiProtectionValidator = func() *ValidateApiProtection { + v := &ValidateApiProtection{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler + rulesApiDefinitionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiProtection.api_definition_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_definition_choice"] = vFn + + vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler + rulesApiDiscoveryChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiProtection.api_discovery_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_discovery_choice"] = vFn + + v.FldValidators["api_definition_choice.api_specification"] = ves_io_schema_views_common_waf.APISpecificationSettingsValidator().Validate + v.FldValidators["api_definition_choice.api_specification_on_cache_miss"] = ves_io_schema_views_common_waf.APISpecificationSettingsValidator().Validate + + v.FldValidators["api_discovery_choice.enable_api_discovery"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate + v.FldValidators["api_discovery_choice.api_discovery_on_cache_miss"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate + + v.FldValidators["api_protection_rules"] = ves_io_schema_views_common_waf.APIProtectionRulesValidator().Validate + + v.FldValidators["jwt_validation"] = ves_io_schema_views_common_waf.JWTValidationValidator().Validate + + return v +}() + +func ApiProtectionValidator() db.Validator { + return DefaultApiProtectionValidator +} + +// augmented methods on protoc/std generated struct + func (m *AuthenticationOptions) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -3351,37 +3711,15 @@ func CdnOriginPoolTypeValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *CreateSpecType) ToJSON() (string, error) { +func (m *CommonSecurityControls) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *CreateSpecType) ToYAML() (string, error) { +func (m *CommonSecurityControls) ToYAML() (string, error) { return codec.ToYAML(m) } -// Redact squashes sensitive info in m (in-place) -func (m *CreateSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.more_option") - } - - if err := m.GetOriginPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.origin_pool") - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.https") - } - - return nil -} - -func (m *CreateSpecType) DeepCopy() *CreateSpecType { +func (m *CommonSecurityControls) DeepCopy() *CommonSecurityControls { if m == nil { return nil } @@ -3389,7 +3727,7 @@ func (m *CreateSpecType) DeepCopy() *CreateSpecType { if err != nil { return nil } - c := &CreateSpecType{} + c := &CommonSecurityControls{} err = c.Unmarshal(ser) if err != nil { return nil @@ -3397,91 +3735,333 @@ func (m *CreateSpecType) DeepCopy() *CreateSpecType { return c } -func (m *CreateSpecType) DeepCopyProto() proto.Message { +func (m *CommonSecurityControls) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CreateSpecTypeValidator().Validate(ctx, m, opts...) +func (m *CommonSecurityControls) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CommonSecurityControlsValidator().Validate(ctx, m, opts...) } -func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { +func (m *CommonSecurityControls) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { return nil, nil } - return m.GetOriginPoolDRefInfo() + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil } // GetDRefInfo for the field's type -func (m *CreateSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPool() == nil { +func (m *CommonSecurityControls) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetChallengeType() == nil { return nil, nil } + switch m.GetChallengeType().(type) { + case *CommonSecurityControls_NoChallenge: - drInfos, err := m.GetOriginPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + return nil, nil + + case *CommonSecurityControls_EnableChallenge: + + drInfos, err := m.GetEnableChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "enable_challenge." + dri.DRField + } + return drInfos, err + + case *CommonSecurityControls_JsChallenge: + + return nil, nil + + case *CommonSecurityControls_CaptchaChallenge: + + return nil, nil + + case *CommonSecurityControls_PolicyBasedChallenge: + + drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "policy_based_challenge." + dri.DRField + } + return drInfos, err + + case *CommonSecurityControls_ChallengeOnCacheMiss: + + drInfos, err := m.GetChallengeOnCacheMiss().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetChallengeOnCacheMiss().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "challenge_on_cache_miss." + dri.DRField + } + return drInfos, err + + default: + return nil, nil } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_pool." + dri.DRField + +} + +// GetDRefInfo for the field's type +func (m *CommonSecurityControls) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimitChoice() == nil { + return nil, nil + } + switch m.GetRateLimitChoice().(type) { + case *CommonSecurityControls_DisableRateLimit: + + return nil, nil + + case *CommonSecurityControls_ApiRateLimit: + + drInfos, err := m.GetApiRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_rate_limit." + dri.DRField + } + return drInfos, err + + case *CommonSecurityControls_RateLimit: + + drInfos, err := m.GetRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rate_limit." + dri.DRField + } + return drInfos, err + + default: + return nil, nil } - return drInfos, err } -type ValidateCreateSpecType struct { +// GetDRefInfo for the field's type +func (m *CommonSecurityControls) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetServicePolicyChoice() == nil { + return nil, nil + } + switch m.GetServicePolicyChoice().(type) { + case *CommonSecurityControls_ServicePoliciesFromNamespace: + + return nil, nil + + case *CommonSecurityControls_NoServicePolicies: + + return nil, nil + + case *CommonSecurityControls_ActiveServicePolicies: + + drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "active_service_policies." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } + +} + +func (m *CommonSecurityControls) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetUserIdChoice().(type) { + case *CommonSecurityControls_UserIdClientIp: + + return nil, nil + + case *CommonSecurityControls_UserIdentification: + + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("user_identification.Object") + dri := db.DRefInfo{ + RefdType: "user_identification.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "user_identification", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } +} + +// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CommonSecurityControls) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetUserIdChoice().(type) { + case *CommonSecurityControls_UserIdClientIp: + + case *CommonSecurityControls_UserIdentification: + refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") + } + + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "user_identification.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + } + + return entries, nil +} + +type ValidateCommonSecurityControls struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateCreateSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCommonSecurityControls) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") } return validatorFn, nil } -func (v *ValidateCreateSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCommonSecurityControls) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") + } + return validatorFn, nil +} - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) +func (v *ValidateCommonSecurityControls) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + return validatorFn, nil +} + +func (v *ValidateCommonSecurityControls) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") + } + return validatorFn, nil +} + +func (v *ValidateCommonSecurityControls) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") + } + return validatorFn, nil +} + +func (v *ValidateCommonSecurityControls) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") + return errors.Wrap(err, "repeated trusted_clients") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") + return errors.Wrap(err, "items trusted_clients") } return nil } @@ -3489,97 +4069,241 @@ func (v *ValidateCreateSpecType) DomainsValidationRuleHandler(rules map[string]s return validatorFn, nil } -func (v *ValidateCreateSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCommonSecurityControls) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") + } - if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated blocked_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items blocked_clients") } - return nil } return validatorFn, nil } -func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CreateSpecType) +func (v *ValidateCommonSecurityControls) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CommonSecurityControls) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *CreateSpecType got type %s", t) + return fmt.Errorf("Expected type *CommonSecurityControls got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["add_location"]; exists { - - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + if fv, exists := v.FldValidators["blocked_clients"]; exists { + vOpts := append(opts, db.WithValidateField("blocked_clients")) + if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + if fv, exists := v.FldValidators["challenge_type"]; exists { + val := m.GetChallengeType() + vOpts := append(opts, + db.WithValidateField("challenge_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } + + switch m.GetChallengeType().(type) { + case *CommonSecurityControls_NoChallenge: + if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { + val := m.GetChallengeType().(*CommonSecurityControls_NoChallenge).NoChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("no_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_EnableChallenge: + if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { + val := m.GetChallengeType().(*CommonSecurityControls_EnableChallenge).EnableChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("enable_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_JsChallenge: + if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { + val := m.GetChallengeType().(*CommonSecurityControls_JsChallenge).JsChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_CaptchaChallenge: + if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { + val := m.GetChallengeType().(*CommonSecurityControls_CaptchaChallenge).CaptchaChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("captcha_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_PolicyBasedChallenge: + if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { + val := m.GetChallengeType().(*CommonSecurityControls_PolicyBasedChallenge).PolicyBasedChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("policy_based_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_ChallengeOnCacheMiss: + if fv, exists := v.FldValidators["challenge_type.challenge_on_cache_miss"]; exists { + val := m.GetChallengeType().(*CommonSecurityControls_ChallengeOnCacheMiss).ChallengeOnCacheMiss + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("challenge_on_cache_miss"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() + if fv, exists := v.FldValidators["cors_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("cors_policy")) + if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { + return err + } + + } + + switch m.GetIpReputationChoice().(type) { + case *CommonSecurityControls_DisableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*CommonSecurityControls_DisableIpReputation).DisableIpReputation + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("disable_ip_reputation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_EnableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*CommonSecurityControls_EnableIpReputation).EnableIpReputation + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("enable_ip_reputation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_IpReputationOnCacheMiss: + if fv, exists := v.FldValidators["ip_reputation_choice.ip_reputation_on_cache_miss"]; exists { + val := m.GetIpReputationChoice().(*CommonSecurityControls_IpReputationOnCacheMiss).IpReputationOnCacheMiss + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("ip_reputation_on_cache_miss"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { + val := m.GetMaliciousUserDetectionChoice() vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), + db.WithValidateField("malicious_user_detection_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetLoadbalancerType().(type) { - case *CreateSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*CreateSpecType_Http).Http + switch m.GetMaliciousUserDetectionChoice().(type) { + case *CommonSecurityControls_DisableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*CommonSecurityControls_DisableMaliciousUserDetection).DisableMaliciousUserDetection vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("disable_malicious_user_detection"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *CreateSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert).HttpsAutoCert + case *CommonSecurityControls_EnableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*CommonSecurityControls_EnableMaliciousUserDetection).EnableMaliciousUserDetection vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("enable_malicious_user_detection"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *CreateSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*CreateSpecType_Https).Https + case *CommonSecurityControls_MaliciousUserDetectionOnCacheMiss: + if fv, exists := v.FldValidators["malicious_user_detection_choice.malicious_user_detection_on_cache_miss"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*CommonSecurityControls_MaliciousUserDetectionOnCacheMiss).MaliciousUserDetectionOnCacheMiss vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("malicious_user_detection_on_cache_miss"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -3588,21 +4312,141 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["more_option"]; exists { + if fv, exists := v.FldValidators["rate_limit_choice"]; exists { + val := m.GetRateLimitChoice() + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + switch m.GetRateLimitChoice().(type) { + case *CommonSecurityControls_DisableRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*CommonSecurityControls_DisableRateLimit).DisableRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("disable_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_ApiRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*CommonSecurityControls_ApiRateLimit).ApiRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("api_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_RateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { + val := m.GetRateLimitChoice().(*CommonSecurityControls_RateLimit).RateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["service_policy_choice"]; exists { + val := m.GetServicePolicyChoice() + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } + + switch m.GetServicePolicyChoice().(type) { + case *CommonSecurityControls_ServicePoliciesFromNamespace: + if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { + val := m.GetServicePolicyChoice().(*CommonSecurityControls_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("service_policies_from_namespace"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_NoServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*CommonSecurityControls_NoServicePolicies).NoServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("no_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_ActiveServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*CommonSecurityControls_ActiveServicePolicies).ActiveServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("active_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } - if fv, exists := v.FldValidators["origin_pool"]; exists { + if fv, exists := v.FldValidators["trusted_clients"]; exists { + vOpts := append(opts, db.WithValidateField("trusted_clients")) + if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { + return err + } - vOpts := append(opts, db.WithValidateField("origin_pool")) - if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + } + + if fv, exists := v.FldValidators["user_id_choice"]; exists { + val := m.GetUserIdChoice() + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } + + switch m.GetUserIdChoice().(type) { + case *CommonSecurityControls_UserIdClientIp: + if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { + val := m.GetUserIdChoice().(*CommonSecurityControls_UserIdClientIp).UserIdClientIp + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_id_client_ip"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CommonSecurityControls_UserIdentification: + if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { + val := m.GetUserIdChoice().(*CommonSecurityControls_UserIdentification).UserIdentification + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_identification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -3610,8 +4454,8 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } // Well-known symbol for default validator implementation -var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { - v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultCommonSecurityControlsValidator = func() *ValidateCommonSecurityControls { + v := &ValidateCommonSecurityControls{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -3621,70 +4465,143 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ + vrhChallengeType := v.ChallengeTypeValidationRuleHandler + rulesChallengeType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + vFn, err = vrhChallengeType(rulesChallengeType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.loadbalancer_type: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.challenge_type: %s", err) panic(errMsg) } - v.FldValidators["loadbalancer_type"] = vFn + v.FldValidators["challenge_type"] = vFn - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.hostname": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler + rulesMaliciousUserDetectionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhDomains(rulesDomains) + vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.domains: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.malicious_user_detection_choice: %s", err) panic(errMsg) } - v.FldValidators["domains"] = vFn + v.FldValidators["malicious_user_detection_choice"] = vFn - vrhOriginPool := v.OriginPoolValidationRuleHandler - rulesOriginPool := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler + rulesRateLimitChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhOriginPool(rulesOriginPool) + vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.origin_pool: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.rate_limit_choice: %s", err) panic(errMsg) } - v.FldValidators["origin_pool"] = vFn + v.FldValidators["rate_limit_choice"] = vFn - v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate - v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate + vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler + rulesServicePolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.service_policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["service_policy_choice"] = vFn - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler + rulesUserIdChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhUserIdChoice(rulesUserIdChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.user_id_choice: %s", err) + panic(errMsg) + } + v.FldValidators["user_id_choice"] = vFn + + vrhTrustedClients := v.TrustedClientsValidationRuleHandler + rulesTrustedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhTrustedClients(rulesTrustedClients) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.trusted_clients: %s", err) + panic(errMsg) + } + v.FldValidators["trusted_clients"] = vFn + + vrhBlockedClients := v.BlockedClientsValidationRuleHandler + rulesBlockedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhBlockedClients(rulesBlockedClients) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CommonSecurityControls.blocked_clients: %s", err) + panic(errMsg) + } + v.FldValidators["blocked_clients"] = vFn + + v.FldValidators["challenge_type.enable_challenge"] = ves_io_schema_views_common_waf.EnableChallengeValidator().Validate + v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + v.FldValidators["challenge_type.policy_based_challenge"] = ves_io_schema_views_common_waf.PolicyBasedChallengeValidator().Validate + v.FldValidators["challenge_type.challenge_on_cache_miss"] = ves_io_schema_views_common_waf.EnableChallengeValidator().Validate + + v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = ves_io_schema_views_common_waf.IPThreatCategoryListTypeValidator().Validate + v.FldValidators["ip_reputation_choice.ip_reputation_on_cache_miss"] = ves_io_schema_views_common_waf.IPThreatCategoryListTypeValidator().Validate + + v.FldValidators["rate_limit_choice.api_rate_limit"] = ves_io_schema_views_common_waf.APIRateLimitValidator().Validate + v.FldValidators["rate_limit_choice.rate_limit"] = ves_io_schema_views_common_waf.RateLimitConfigTypeValidator().Validate + + v.FldValidators["service_policy_choice.active_service_policies"] = ves_io_schema_views_common_waf.ServicePolicyListValidator().Validate + + v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate return v }() -func CreateSpecTypeValidator() db.Validator { - return DefaultCreateSpecTypeValidator +func CommonSecurityControlsValidator() db.Validator { + return DefaultCommonSecurityControlsValidator } // augmented methods on protoc/std generated struct -func (m *DefaultCacheAction) ToJSON() (string, error) { +func (m *CreateSpecType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *DefaultCacheAction) ToYAML() (string, error) { +func (m *CreateSpecType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *DefaultCacheAction) DeepCopy() *DefaultCacheAction { +// Redact squashes sensitive info in m (in-place) +func (m *CreateSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.more_option") + } + + if err := m.GetOriginPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.origin_pool") + } + + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.https") + } + + return nil +} + +func (m *CreateSpecType) DeepCopy() *CreateSpecType { if m == nil { return nil } @@ -3692,7 +4609,7 @@ func (m *DefaultCacheAction) DeepCopy() *DefaultCacheAction { if err != nil { return nil } - c := &DefaultCacheAction{} + c := &CreateSpecType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -3700,90 +4617,220 @@ func (m *DefaultCacheAction) DeepCopy() *DefaultCacheAction { return c } -func (m *DefaultCacheAction) DeepCopyProto() proto.Message { +func (m *CreateSpecType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *DefaultCacheAction) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return DefaultCacheActionValidator().Validate(ctx, m, opts...) -} +func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateSpecTypeValidator().Validate(ctx, m, opts...) +} -type ValidateDefaultCacheAction struct { +func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetOriginPoolDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil + } + + drInfos, err := m.GetMoreOption().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPool() == nil { + return nil, nil + } + + drInfos, err := m.GetOriginPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_pool." + dri.DRField + } + return drInfos, err + +} + +type ValidateCreateSpecType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateDefaultCacheAction) CacheActionsCacheTtlDefaultValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_CacheTtlDefault, err := db.NewStringValidationRuleHandler(rules) +func (v *ValidateCreateSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for cache_ttl_default") + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") } - return oValidatorFn_CacheTtlDefault, nil + return validatorFn, nil } -func (v *ValidateDefaultCacheAction) CacheActionsCacheTtlOverrideValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_CacheTtlOverride, err := db.NewStringValidationRuleHandler(rules) + +func (v *ValidateCreateSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for cache_ttl_override") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") } - return oValidatorFn_CacheTtlOverride, nil + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated domains") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items domains") + } + return nil + } + + return validatorFn, nil } -func (v *ValidateDefaultCacheAction) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*DefaultCacheAction) +func (v *ValidateCreateSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateSpecType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *DefaultCacheAction got type %s", t) + return fmt.Errorf("Expected type *CreateSpecType got type %s", t) } } if m == nil { return nil } - switch m.GetCacheActions().(type) { - case *DefaultCacheAction_EligibleForCache: - if fv, exists := v.FldValidators["cache_actions.eligible_for_cache"]; exists { - val := m.GetCacheActions().(*DefaultCacheAction_EligibleForCache).EligibleForCache - vOpts := append(opts, - db.WithValidateField("cache_actions"), - db.WithValidateField("eligible_for_cache"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["add_location"]; exists { + + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + return err } - case *DefaultCacheAction_CacheTtlDefault: - if fv, exists := v.FldValidators["cache_actions.cache_ttl_default"]; exists { - val := m.GetCacheActions().(*DefaultCacheAction_CacheTtlDefault).CacheTtlDefault + + } + + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetLoadbalancerType().(type) { + case *CreateSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*CreateSpecType_Http).Http vOpts := append(opts, - db.WithValidateField("cache_actions"), - db.WithValidateField("cache_ttl_default"), + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *DefaultCacheAction_CacheTtlOverride: - if fv, exists := v.FldValidators["cache_actions.cache_ttl_override"]; exists { - val := m.GetCacheActions().(*DefaultCacheAction_CacheTtlOverride).CacheTtlOverride + case *CreateSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert).HttpsAutoCert vOpts := append(opts, - db.WithValidateField("cache_actions"), - db.WithValidateField("cache_ttl_override"), + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *DefaultCacheAction_CacheDisabled: - if fv, exists := v.FldValidators["cache_actions.cache_disabled"]; exists { - val := m.GetCacheActions().(*DefaultCacheAction_CacheDisabled).CacheDisabled + case *CreateSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*CreateSpecType_Https).Https vOpts := append(opts, - db.WithValidateField("cache_actions"), - db.WithValidateField("cache_disabled"), + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -3792,12 +4839,30 @@ func (v *ValidateDefaultCacheAction) Validate(ctx context.Context, pm interface{ } + if fv, exists := v.FldValidators["more_option"]; exists { + + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["origin_pool"]; exists { + + vOpts := append(opts, db.WithValidateField("origin_pool")) + if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + return err + } + + } + return nil } // Well-known symbol for default validator implementation -var DefaultDefaultCacheActionValidator = func() *ValidateDefaultCacheAction { - v := &ValidateDefaultCacheAction{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { + v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -3807,27 +4872,213 @@ var DefaultDefaultCacheActionValidator = func() *ValidateDefaultCacheAction { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhCacheActionsCacheTtlDefault := v.CacheActionsCacheTtlDefaultValidationRuleHandler - rulesCacheActionsCacheTtlDefault := map[string]string{ - "ves.io.schema.rules.string.time_interval": "true", + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFnMap["cache_actions.cache_ttl_default"], err = vrhCacheActionsCacheTtlDefault(rulesCacheActionsCacheTtlDefault) + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field DefaultCacheAction.cache_actions_cache_ttl_default: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.loadbalancer_type: %s", err) panic(errMsg) } - vrhCacheActionsCacheTtlOverride := v.CacheActionsCacheTtlOverrideValidationRuleHandler - rulesCacheActionsCacheTtlOverride := map[string]string{ - "ves.io.schema.rules.string.time_interval": "true", + v.FldValidators["loadbalancer_type"] = vFn + + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.hostname": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - vFnMap["cache_actions.cache_ttl_override"], err = vrhCacheActionsCacheTtlOverride(rulesCacheActionsCacheTtlOverride) + vFn, err = vrhDomains(rulesDomains) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field DefaultCacheAction.cache_actions_cache_ttl_override: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.domains: %s", err) panic(errMsg) } + v.FldValidators["domains"] = vFn - v.FldValidators["cache_actions.cache_ttl_default"] = vFnMap["cache_actions.cache_ttl_default"] - v.FldValidators["cache_actions.cache_ttl_override"] = vFnMap["cache_actions.cache_ttl_override"] + vrhOriginPool := v.OriginPoolValidationRuleHandler + rulesOriginPool := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOriginPool(rulesOriginPool) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.origin_pool: %s", err) + panic(errMsg) + } + v.FldValidators["origin_pool"] = vFn + + v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate + v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate + + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DefaultCacheAction) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DefaultCacheAction) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DefaultCacheAction) DeepCopy() *DefaultCacheAction { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DefaultCacheAction{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DefaultCacheAction) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DefaultCacheAction) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DefaultCacheActionValidator().Validate(ctx, m, opts...) +} + +type ValidateDefaultCacheAction struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDefaultCacheAction) CacheActionsCacheTtlDefaultValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_CacheTtlDefault, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for cache_ttl_default") + } + return oValidatorFn_CacheTtlDefault, nil +} +func (v *ValidateDefaultCacheAction) CacheActionsCacheTtlOverrideValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_CacheTtlOverride, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for cache_ttl_override") + } + return oValidatorFn_CacheTtlOverride, nil +} + +func (v *ValidateDefaultCacheAction) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DefaultCacheAction) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DefaultCacheAction got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetCacheActions().(type) { + case *DefaultCacheAction_EligibleForCache: + if fv, exists := v.FldValidators["cache_actions.eligible_for_cache"]; exists { + val := m.GetCacheActions().(*DefaultCacheAction_EligibleForCache).EligibleForCache + vOpts := append(opts, + db.WithValidateField("cache_actions"), + db.WithValidateField("eligible_for_cache"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *DefaultCacheAction_CacheTtlDefault: + if fv, exists := v.FldValidators["cache_actions.cache_ttl_default"]; exists { + val := m.GetCacheActions().(*DefaultCacheAction_CacheTtlDefault).CacheTtlDefault + vOpts := append(opts, + db.WithValidateField("cache_actions"), + db.WithValidateField("cache_ttl_default"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *DefaultCacheAction_CacheTtlOverride: + if fv, exists := v.FldValidators["cache_actions.cache_ttl_override"]; exists { + val := m.GetCacheActions().(*DefaultCacheAction_CacheTtlOverride).CacheTtlOverride + vOpts := append(opts, + db.WithValidateField("cache_actions"), + db.WithValidateField("cache_ttl_override"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *DefaultCacheAction_CacheDisabled: + if fv, exists := v.FldValidators["cache_actions.cache_disabled"]; exists { + val := m.GetCacheActions().(*DefaultCacheAction_CacheDisabled).CacheDisabled + vOpts := append(opts, + db.WithValidateField("cache_actions"), + db.WithValidateField("cache_disabled"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDefaultCacheActionValidator = func() *ValidateDefaultCacheAction { + v := &ValidateDefaultCacheAction{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCacheActionsCacheTtlDefault := v.CacheActionsCacheTtlDefaultValidationRuleHandler + rulesCacheActionsCacheTtlDefault := map[string]string{ + "ves.io.schema.rules.string.time_interval": "true", + } + vFnMap["cache_actions.cache_ttl_default"], err = vrhCacheActionsCacheTtlDefault(rulesCacheActionsCacheTtlDefault) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field DefaultCacheAction.cache_actions_cache_ttl_default: %s", err) + panic(errMsg) + } + vrhCacheActionsCacheTtlOverride := v.CacheActionsCacheTtlOverrideValidationRuleHandler + rulesCacheActionsCacheTtlOverride := map[string]string{ + "ves.io.schema.rules.string.time_interval": "true", + } + vFnMap["cache_actions.cache_ttl_override"], err = vrhCacheActionsCacheTtlOverride(rulesCacheActionsCacheTtlOverride) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field DefaultCacheAction.cache_actions_cache_ttl_override: %s", err) + panic(errMsg) + } + + v.FldValidators["cache_actions.cache_ttl_default"] = vFnMap["cache_actions.cache_ttl_default"] + v.FldValidators["cache_actions.cache_ttl_override"] = vFnMap["cache_actions.cache_ttl_override"] v.FldValidators["cache_actions.eligible_for_cache"] = DefaultCacheTTLPropsValidator().Validate @@ -3864,49 +5115,1020 @@ func (m *DefaultCacheTTLProps) DeepCopy() *DefaultCacheTTLProps { return c } -func (m *DefaultCacheTTLProps) DeepCopyProto() proto.Message { - if m == nil { - return nil +func (m *DefaultCacheTTLProps) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DefaultCacheTTLProps) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DefaultCacheTTLPropsValidator().Validate(ctx, m, opts...) +} + +type ValidateDefaultCacheTTLProps struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDefaultCacheTTLProps) CacheTtlValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for cache_ttl") + } + + return validatorFn, nil +} + +func (v *ValidateDefaultCacheTTLProps) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DefaultCacheTTLProps) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DefaultCacheTTLProps got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cache_ttl"]; exists { + + vOpts := append(opts, db.WithValidateField("cache_ttl")) + if err := fv(ctx, m.GetCacheTtl(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDefaultCacheTTLPropsValidator = func() *ValidateDefaultCacheTTLProps { + v := &ValidateDefaultCacheTTLProps{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCacheTtl := v.CacheTtlValidationRuleHandler + rulesCacheTtl := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.time_interval": "true", + } + vFn, err = vrhCacheTtl(rulesCacheTtl) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DefaultCacheTTLProps.cache_ttl: %s", err) + panic(errMsg) + } + v.FldValidators["cache_ttl"] = vFn + + return v +}() + +func DefaultCacheTTLPropsValidator() db.Validator { + return DefaultDefaultCacheTTLPropsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GeoFilteringOptions) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GeoFilteringOptions) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GeoFilteringOptions) DeepCopy() *GeoFilteringOptions { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GeoFilteringOptions{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GeoFilteringOptions) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GeoFilteringOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GeoFilteringOptionsValidator().Validate(ctx, m, opts...) +} + +type ValidateGeoFilteringOptions struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGeoFilteringOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GeoFilteringOptions) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GeoFilteringOptions got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetGeoFilteringType().(type) { + case *GeoFilteringOptions_AllowList: + if fv, exists := v.FldValidators["geo_filtering_type.allow_list"]; exists { + val := m.GetGeoFilteringType().(*GeoFilteringOptions_AllowList).AllowList + vOpts := append(opts, + db.WithValidateField("geo_filtering_type"), + db.WithValidateField("allow_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GeoFilteringOptions_BlockList: + if fv, exists := v.FldValidators["geo_filtering_type.block_list"]; exists { + val := m.GetGeoFilteringType().(*GeoFilteringOptions_BlockList).BlockList + vOpts := append(opts, + db.WithValidateField("geo_filtering_type"), + db.WithValidateField("block_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGeoFilteringOptionsValidator = func() *ValidateGeoFilteringOptions { + v := &ValidateGeoFilteringOptions{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["geo_filtering_type.allow_list"] = ves_io_schema_policy.CountryCodeListValidator().Validate + v.FldValidators["geo_filtering_type.block_list"] = ves_io_schema_policy.CountryCodeListValidator().Validate + + return v +}() + +func GeoFilteringOptionsValidator() db.Validator { + return DefaultGeoFilteringOptionsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *GetSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.more_option") + } + + if err := m.GetOriginPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.origin_pool") + } + + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.https") + } + + return nil +} + +func (m *GetSpecType) DeepCopy() *GetSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetOriginPoolDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil + } + + drInfos, err := m.GetMoreOption().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPool() == nil { + return nil, nil + } + + drInfos, err := m.GetOriginPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_pool." + dri.DRField + } + return drInfos, err + +} + +type ValidateGetSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + } + return validatorFn, nil +} + +func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated domains") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items domains") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGetSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["add_location"]; exists { + + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["auto_cert_info"]; exists { + + vOpts := append(opts, db.WithValidateField("auto_cert_info")) + if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["cert_state"]; exists { + + vOpts := append(opts, db.WithValidateField("cert_state")) + if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["dns_info"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_info")) + for idx, item := range m.GetDnsInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["host_name"]; exists { + + vOpts := append(opts, db.WithValidateField("host_name")) + if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetLoadbalancerType().(type) { + case *GetSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*GetSpecType_Http).Http + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert).HttpsAutoCert + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*GetSpecType_Https).Https + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["more_option"]; exists { + + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["origin_pool"]; exists { + + vOpts := append(opts, db.WithValidateField("origin_pool")) + if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["service_domains"]; exists { + + vOpts := append(opts, db.WithValidateField("service_domains")) + for idx, item := range m.GetServiceDomains() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["state"]; exists { + + vOpts := append(opts, db.WithValidateField("state")) + if err := fv(ctx, m.GetState(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { + v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.loadbalancer_type: %s", err) + panic(errMsg) + } + v.FldValidators["loadbalancer_type"] = vFn + + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.hostname": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDomains(rulesDomains) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.domains: %s", err) + panic(errMsg) + } + v.FldValidators["domains"] = vFn + + vrhOriginPool := v.OriginPoolValidationRuleHandler + rulesOriginPool := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOriginPool(rulesOriginPool) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.origin_pool: %s", err) + panic(errMsg) + } + v.FldValidators["origin_pool"] = vFn + + v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate + v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate + + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + + v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate + + return v +}() + +func GetSpecTypeValidator() db.Validator { + return DefaultGetSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *GlobalSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.more_option") + } + + if err := m.GetOriginPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.origin_pool") + } + + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.https") + } + + return nil +} + +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GlobalSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GlobalSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetOriginPoolDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetViewInternalDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetViewInternalDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil + } + + drInfos, err := m.GetMoreOption().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPool() == nil { + return nil, nil + } + + drInfos, err := m.GetOriginPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_pool." + dri.DRField + } + return drInfos, err + +} + +func (m *GlobalSpecType) GetViewInternalDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetViewInternal() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("view_internal.Object") + dri := db.DRefInfo{ + RefdType: "view_internal.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "view_internal", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetViewInternalDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetViewInternalDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "view_internal.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: view_internal") + } + + vref := m.GetViewInternal() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "view_internal.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGlobalSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + } + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated domains") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items domains") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["add_location"]; exists { + + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["auto_cert_info"]; exists { + + vOpts := append(opts, db.WithValidateField("auto_cert_info")) + if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["auto_cert_state"]; exists { + + vOpts := append(opts, db.WithValidateField("auto_cert_state")) + if err := fv(ctx, m.GetAutoCertState(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["cert_state"]; exists { + + vOpts := append(opts, db.WithValidateField("cert_state")) + if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["dns_info"]; exists { + + vOpts := append(opts, db.WithValidateField("dns_info")) + for idx, item := range m.GetDnsInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["host_name"]; exists { + + vOpts := append(opts, db.WithValidateField("host_name")) + if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetLoadbalancerType().(type) { + case *GlobalSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*GlobalSpecType_Http).Http + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert).HttpsAutoCert + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*GlobalSpecType_Https).Https + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["more_option"]; exists { + + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err + } + } - return m.DeepCopy() -} - -func (m *DefaultCacheTTLProps) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return DefaultCacheTTLPropsValidator().Validate(ctx, m, opts...) -} -type ValidateDefaultCacheTTLProps struct { - FldValidators map[string]db.ValidatorFunc -} + if fv, exists := v.FldValidators["origin_pool"]; exists { -func (v *ValidateDefaultCacheTTLProps) CacheTtlValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + vOpts := append(opts, db.WithValidateField("origin_pool")) + if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for cache_ttl") } - return validatorFn, nil -} + if fv, exists := v.FldValidators["service_domains"]; exists { -func (v *ValidateDefaultCacheTTLProps) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*DefaultCacheTTLProps) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *DefaultCacheTTLProps got type %s", t) + vOpts := append(opts, db.WithValidateField("service_domains")) + for idx, item := range m.GetServiceDomains() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } } + } - if m == nil { - return nil + + if fv, exists := v.FldValidators["state"]; exists { + + vOpts := append(opts, db.WithValidateField("state")) + if err := fv(ctx, m.GetState(), vOpts...); err != nil { + return err + } + } - if fv, exists := v.FldValidators["cache_ttl"]; exists { + if fv, exists := v.FldValidators["view_internal"]; exists { - vOpts := append(opts, db.WithValidateField("cache_ttl")) - if err := fv(ctx, m.GetCacheTtl(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("view_internal")) + if err := fv(ctx, m.GetViewInternal(), vOpts...); err != nil { return err } @@ -3916,8 +6138,8 @@ func (v *ValidateDefaultCacheTTLProps) Validate(ctx context.Context, pm interfac } // Well-known symbol for default validator implementation -var DefaultDefaultCacheTTLPropsValidator = func() *ValidateDefaultCacheTTLProps { - v := &ValidateDefaultCacheTTLProps{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -3927,156 +6149,96 @@ var DefaultDefaultCacheTTLPropsValidator = func() *ValidateDefaultCacheTTLProps vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhCacheTtl := v.CacheTtlValidationRuleHandler - rulesCacheTtl := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.time_interval": "true", + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhCacheTtl(rulesCacheTtl) + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for DefaultCacheTTLProps.cache_ttl: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.loadbalancer_type: %s", err) panic(errMsg) } - v.FldValidators["cache_ttl"] = vFn - - return v -}() - -func DefaultCacheTTLPropsValidator() db.Validator { - return DefaultDefaultCacheTTLPropsValidator -} - -// augmented methods on protoc/std generated struct - -func (m *GeoFilteringOptions) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *GeoFilteringOptions) ToYAML() (string, error) { - return codec.ToYAML(m) -} + v.FldValidators["loadbalancer_type"] = vFn -func (m *GeoFilteringOptions) DeepCopy() *GeoFilteringOptions { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.hostname": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - c := &GeoFilteringOptions{} - err = c.Unmarshal(ser) + vFn, err = vrhDomains(rulesDomains) if err != nil { - return nil - } - return c -} - -func (m *GeoFilteringOptions) DeepCopyProto() proto.Message { - if m == nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.domains: %s", err) + panic(errMsg) } - return m.DeepCopy() -} - -func (m *GeoFilteringOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GeoFilteringOptionsValidator().Validate(ctx, m, opts...) -} - -type ValidateGeoFilteringOptions struct { - FldValidators map[string]db.ValidatorFunc -} + v.FldValidators["domains"] = vFn -func (v *ValidateGeoFilteringOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GeoFilteringOptions) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *GeoFilteringOptions got type %s", t) - } + vrhOriginPool := v.OriginPoolValidationRuleHandler + rulesOriginPool := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - if m == nil { - return nil + vFn, err = vrhOriginPool(rulesOriginPool) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.origin_pool: %s", err) + panic(errMsg) } + v.FldValidators["origin_pool"] = vFn - switch m.GetGeoFilteringType().(type) { - case *GeoFilteringOptions_AllowList: - if fv, exists := v.FldValidators["geo_filtering_type.allow_list"]; exists { - val := m.GetGeoFilteringType().(*GeoFilteringOptions_AllowList).AllowList - vOpts := append(opts, - db.WithValidateField("geo_filtering_type"), - db.WithValidateField("allow_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GeoFilteringOptions_BlockList: - if fv, exists := v.FldValidators["geo_filtering_type.block_list"]; exists { - val := m.GetGeoFilteringType().(*GeoFilteringOptions_BlockList).BlockList - vOpts := append(opts, - db.WithValidateField("geo_filtering_type"), - db.WithValidateField("block_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } + v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate + v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate - return nil -} + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate -// Well-known symbol for default validator implementation -var DefaultGeoFilteringOptionsValidator = func() *ValidateGeoFilteringOptions { - v := &ValidateGeoFilteringOptions{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - v.FldValidators["geo_filtering_type.allow_list"] = ves_io_schema_policy.CountryCodeListValidator().Validate - v.FldValidators["geo_filtering_type.block_list"] = ves_io_schema_policy.CountryCodeListValidator().Validate + v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate return v }() -func GeoFilteringOptionsValidator() db.Validator { - return DefaultGeoFilteringOptionsValidator +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator } // augmented methods on protoc/std generated struct -func (m *GetSpecType) ToJSON() (string, error) { +func (m *HeaderControlType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *GetSpecType) ToYAML() (string, error) { +func (m *HeaderControlType) ToYAML() (string, error) { return codec.ToYAML(m) } // Redact squashes sensitive info in m (in-place) -func (m *GetSpecType) Redact(ctx context.Context) error { +func (m *HeaderControlType) Redact(ctx context.Context) error { // clear fields with confidential option set (at message or field level) if m == nil { return nil } - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.more_option") - } - - if err := m.GetOriginPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.origin_pool") + for idx, e := range m.GetRequestHeadersToAdd() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting HeaderControlType.request_headers_to_add idx %v", idx) + } } - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.https") + for idx, e := range m.GetResponseHeadersToAdd() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting HeaderControlType.response_headers_to_add idx %v", idx) + } } return nil } -func (m *GetSpecType) DeepCopy() *GetSpecType { +func (m *HeaderControlType) DeepCopy() *HeaderControlType { if m == nil { return nil } @@ -4084,7 +6246,7 @@ func (m *GetSpecType) DeepCopy() *GetSpecType { if err != nil { return nil } - c := &GetSpecType{} + c := &HeaderControlType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -4092,62 +6254,75 @@ func (m *GetSpecType) DeepCopy() *GetSpecType { return c } -func (m *GetSpecType) DeepCopyProto() proto.Message { +func (m *HeaderControlType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GetSpecTypeValidator().Validate(ctx, m, opts...) +func (m *HeaderControlType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return HeaderControlTypeValidator().Validate(ctx, m, opts...) } -func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetOriginPoolDRefInfo() - +type ValidateHeaderControlType struct { + FldValidators map[string]db.ValidatorFunc } -// GetDRefInfo for the field's type -func (m *GetSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPool() == nil { - return nil, nil - } +func (v *ValidateHeaderControlType) RequestHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - drInfos, err := m.GetOriginPool().GetDRefInfo() + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for request_headers_to_add") } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_pool." + dri.DRField + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - return drInfos, err - -} - -type ValidateGetSpecType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateGetSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_add") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated request_headers_to_add") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items request_headers_to_add") + } + return nil } + return validatorFn, nil } -func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateHeaderControlType) RequestHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepStringItemRules(rules) itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for request_headers_to_remove") } itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { for i, el := range elems { @@ -4159,7 +6334,7 @@ func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]stri } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_remove") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { @@ -4173,10 +6348,10 @@ func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]stri l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") + return errors.Wrap(err, "repeated request_headers_to_remove") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") + return errors.Wrap(err, "items request_headers_to_remove") } return nil } @@ -4184,178 +6359,137 @@ func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]stri return validatorFn, nil } -func (v *ValidateGetSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateHeaderControlType) ResponseHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for response_headers_to_add") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - return nil } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GetSpecType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *GetSpecType got type %s", t) - } - } - if m == nil { - return nil + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_add") } - if fv, exists := v.FldValidators["add_location"]; exists { - - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) } - - } - - if fv, exists := v.FldValidators["auto_cert_info"]; exists { - - vOpts := append(opts, db.WithValidateField("auto_cert_info")) - if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - - } - - if fv, exists := v.FldValidators["cert_state"]; exists { - - vOpts := append(opts, db.WithValidateField("cert_state")) - if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { - return err + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_headers_to_add") } - + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_headers_to_add") + } + return nil } - if fv, exists := v.FldValidators["dns_info"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("dns_info")) - for idx, item := range m.GetDnsInfo() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } +func (v *ValidateHeaderControlType) ResponseHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for response_headers_to_remove") } - - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - + return nil } - - if fv, exists := v.FldValidators["host_name"]; exists { - - vOpts := append(opts, db.WithValidateField("host_name")) - if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { - return err - } - + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_remove") } - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) } - } - - switch m.GetLoadbalancerType().(type) { - case *GetSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*GetSpecType_Http).Http - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) } - case *GetSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert).HttpsAutoCert - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_headers_to_remove") } - case *GetSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*GetSpecType_Https).Https - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_headers_to_remove") } - + return nil } - if fv, exists := v.FldValidators["more_option"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { - return err +func (v *ValidateHeaderControlType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*HeaderControlType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *HeaderControlType got type %s", t) } - + } + if m == nil { + return nil } - if fv, exists := v.FldValidators["origin_pool"]; exists { - - vOpts := append(opts, db.WithValidateField("origin_pool")) - if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + if fv, exists := v.FldValidators["request_headers_to_add"]; exists { + vOpts := append(opts, db.WithValidateField("request_headers_to_add")) + if err := fv(ctx, m.GetRequestHeadersToAdd(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["service_domains"]; exists { - - vOpts := append(opts, db.WithValidateField("service_domains")) - for idx, item := range m.GetServiceDomains() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["request_headers_to_remove"]; exists { + vOpts := append(opts, db.WithValidateField("request_headers_to_remove")) + if err := fv(ctx, m.GetRequestHeadersToRemove(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["state"]; exists { + if fv, exists := v.FldValidators["response_headers_to_add"]; exists { + vOpts := append(opts, db.WithValidateField("response_headers_to_add")) + if err := fv(ctx, m.GetResponseHeadersToAdd(), vOpts...); err != nil { + return err + } - vOpts := append(opts, db.WithValidateField("state")) - if err := fv(ctx, m.GetState(), vOpts...); err != nil { + } + + if fv, exists := v.FldValidators["response_headers_to_remove"]; exists { + vOpts := append(opts, db.WithValidateField("response_headers_to_remove")) + if err := fv(ctx, m.GetResponseHeadersToRemove(), vOpts...); err != nil { return err } @@ -4365,8 +6499,8 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } // Well-known symbol for default validator implementation -var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { - v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultHeaderControlTypeValidator = func() *ValidateHeaderControlType { + v := &ValidateHeaderControlType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -4376,94 +6510,76 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhRequestHeadersToAdd := v.RequestHeadersToAddValidationRuleHandler + rulesRequestHeadersToAdd := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + vFn, err = vrhRequestHeadersToAdd(rulesRequestHeadersToAdd) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.loadbalancer_type: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.request_headers_to_add: %s", err) panic(errMsg) } - v.FldValidators["loadbalancer_type"] = vFn + v.FldValidators["request_headers_to_add"] = vFn - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.hostname": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vrhRequestHeadersToRemove := v.RequestHeadersToRemoveValidationRuleHandler + rulesRequestHeadersToRemove := map[string]string{ + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.items.string.pattern": "^[0-9A-Za-z_\\-\\.]+$", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhDomains(rulesDomains) + vFn, err = vrhRequestHeadersToRemove(rulesRequestHeadersToRemove) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.domains: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.request_headers_to_remove: %s", err) panic(errMsg) } - v.FldValidators["domains"] = vFn + v.FldValidators["request_headers_to_remove"] = vFn - vrhOriginPool := v.OriginPoolValidationRuleHandler - rulesOriginPool := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhResponseHeadersToAdd := v.ResponseHeadersToAddValidationRuleHandler + rulesResponseHeadersToAdd := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhOriginPool(rulesOriginPool) + vFn, err = vrhResponseHeadersToAdd(rulesResponseHeadersToAdd) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.origin_pool: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.response_headers_to_add: %s", err) panic(errMsg) } - v.FldValidators["origin_pool"] = vFn - - v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate - v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate - - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + v.FldValidators["response_headers_to_add"] = vFn - v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate + vrhResponseHeadersToRemove := v.ResponseHeadersToRemoveValidationRuleHandler + rulesResponseHeadersToRemove := map[string]string{ + "ves.io.schema.rules.repeated.items.string.pattern": "^[0-9A-Za-z_\\-\\.]+$", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhResponseHeadersToRemove(rulesResponseHeadersToRemove) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.response_headers_to_remove: %s", err) + panic(errMsg) + } + v.FldValidators["response_headers_to_remove"] = vFn return v }() -func GetSpecTypeValidator() db.Validator { - return DefaultGetSpecTypeValidator +func HeaderControlTypeValidator() db.Validator { + return DefaultHeaderControlTypeValidator } // augmented methods on protoc/std generated struct -func (m *GlobalSpecType) ToJSON() (string, error) { +func (m *IpFilteringOptions) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *GlobalSpecType) ToYAML() (string, error) { +func (m *IpFilteringOptions) ToYAML() (string, error) { return codec.ToYAML(m) } -// Redact squashes sensitive info in m (in-place) -func (m *GlobalSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.more_option") - } - - if err := m.GetOriginPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.origin_pool") - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.https") - } - - return nil -} - -func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { +func (m *IpFilteringOptions) DeepCopy() *IpFilteringOptions { if m == nil { return nil } @@ -4471,7 +6587,7 @@ func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { if err != nil { return nil } - c := &GlobalSpecType{} + c := &IpFilteringOptions{} err = c.Unmarshal(ser) if err != nil { return nil @@ -4479,124 +6595,141 @@ func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { return c } -func (m *GlobalSpecType) DeepCopyProto() proto.Message { +func (m *IpFilteringOptions) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +func (m *IpFilteringOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return IpFilteringOptionsValidator().Validate(ctx, m, opts...) } -func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { +type ValidateIpFilteringOptions struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateIpFilteringOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*IpFilteringOptions) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *IpFilteringOptions got type %s", t) + } + } if m == nil { - return nil, nil + return nil } - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetOriginPoolDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginPoolDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } + switch m.GetIpFilteringType().(type) { + case *IpFilteringOptions_AllowList: + if fv, exists := v.FldValidators["ip_filtering_type.allow_list"]; exists { + val := m.GetIpFilteringType().(*IpFilteringOptions_AllowList).AllowList + vOpts := append(opts, + db.WithValidateField("ip_filtering_type"), + db.WithValidateField("allow_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *IpFilteringOptions_BlockList: + if fv, exists := v.FldValidators["ip_filtering_type.block_list"]; exists { + val := m.GetIpFilteringType().(*IpFilteringOptions_BlockList).BlockList + vOpts := append(opts, + db.WithValidateField("ip_filtering_type"), + db.WithValidateField("block_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - if fdrInfos, err := m.GetViewInternalDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetViewInternalDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) } - return drInfos, nil - + return nil } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPool() == nil { - return nil, nil - } +// Well-known symbol for default validator implementation +var DefaultIpFilteringOptionsValidator = func() *ValidateIpFilteringOptions { + v := &ValidateIpFilteringOptions{FldValidators: map[string]db.ValidatorFunc{}} - drInfos, err := m.GetOriginPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_pool." + dri.DRField - } - return drInfos, err + v.FldValidators["ip_filtering_type.allow_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate + v.FldValidators["ip_filtering_type.block_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate -} + return v +}() -func (m *GlobalSpecType) GetViewInternalDRefInfo() ([]db.DRefInfo, error) { +func IpFilteringOptionsValidator() db.Validator { + return DefaultIpFilteringOptionsValidator +} - vref := m.GetViewInternal() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("view_internal.Object") - dri := db.DRefInfo{ - RefdType: "view_internal.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "view_internal", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil +// augmented methods on protoc/std generated struct +func (m *LilacCDNMetricsFilter) ToJSON() (string, error) { + return codec.ToJSON(m) } -// GetViewInternalDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GlobalSpecType) GetViewInternalDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "view_internal.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: view_internal") - } +func (m *LilacCDNMetricsFilter) ToYAML() (string, error) { + return codec.ToYAML(m) +} - vref := m.GetViewInternal() - if vref == nil { - return nil, nil +func (m *LilacCDNMetricsFilter) DeepCopy() *LilacCDNMetricsFilter { + if m == nil { + return nil } - ref := &ves_io_schema.ObjectRefType{ - Kind: "view_internal.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + ser, err := m.Marshal() + if err != nil { + return nil } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + c := &LilacCDNMetricsFilter{} + err = c.Unmarshal(ser) if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + return nil } - if refdEnt != nil { - entries = append(entries, refdEnt) + return c +} + +func (m *LilacCDNMetricsFilter) DeepCopyProto() proto.Message { + if m == nil { + return nil } + return m.DeepCopy() +} - return entries, nil +func (m *LilacCDNMetricsFilter) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LilacCDNMetricsFilterValidator().Validate(ctx, m, opts...) } -type ValidateGlobalSpecType struct { +type ValidateLilacCDNMetricsFilter struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateGlobalSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) +func (v *ValidateLilacCDNMetricsFilter) TagValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(LilacCDNMetricsTag) + return int32(i) + } + // LilacCDNMetricsTag_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, LilacCDNMetricsTag_name, conv) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + return nil, errors.Wrap(err, "ValidationRuleHandler for tag") } + return validatorFn, nil } -func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateLilacCDNMetricsFilter) ValuesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepStringItemRules(rules) itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for values") } itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { for i, el := range elems { @@ -4608,7 +6741,7 @@ func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]s } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for values") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { @@ -4622,10 +6755,10 @@ func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]s l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") + return errors.Wrap(err, "repeated values") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") + return errors.Wrap(err, "items values") } return nil } @@ -4633,196 +6766,57 @@ func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]s return validatorFn, nil } -func (v *ValidateGlobalSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateLilacCDNMetricsFilter) OperatorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(LilacCDNMetricsOperatorType) + return int32(i) } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil + // LilacCDNMetricsOperatorType_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, LilacCDNMetricsOperatorType_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for operator") } return validatorFn, nil } -func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GlobalSpecType) +func (v *ValidateLilacCDNMetricsFilter) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LilacCDNMetricsFilter) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + return fmt.Errorf("Expected type *LilacCDNMetricsFilter got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["add_location"]; exists { - - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["auto_cert_info"]; exists { - - vOpts := append(opts, db.WithValidateField("auto_cert_info")) - if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["auto_cert_state"]; exists { - - vOpts := append(opts, db.WithValidateField("auto_cert_state")) - if err := fv(ctx, m.GetAutoCertState(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["cert_state"]; exists { - - vOpts := append(opts, db.WithValidateField("cert_state")) - if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["dns_info"]; exists { - - vOpts := append(opts, db.WithValidateField("dns_info")) - for idx, item := range m.GetDnsInfo() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["host_name"]; exists { - - vOpts := append(opts, db.WithValidateField("host_name")) - if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetLoadbalancerType().(type) { - case *GlobalSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*GlobalSpecType_Http).Http - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert).HttpsAutoCert - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*GlobalSpecType_Https).Https - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["more_option"]; exists { - - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["origin_pool"]; exists { + if fv, exists := v.FldValidators["operator"]; exists { - vOpts := append(opts, db.WithValidateField("origin_pool")) - if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("operator")) + if err := fv(ctx, m.GetOperator(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["service_domains"]; exists { - - vOpts := append(opts, db.WithValidateField("service_domains")) - for idx, item := range m.GetServiceDomains() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["state"]; exists { + if fv, exists := v.FldValidators["tag"]; exists { - vOpts := append(opts, db.WithValidateField("state")) - if err := fv(ctx, m.GetState(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("tag")) + if err := fv(ctx, m.GetTag(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["view_internal"]; exists { - - vOpts := append(opts, db.WithValidateField("view_internal")) - if err := fv(ctx, m.GetViewInternal(), vOpts...); err != nil { + if fv, exists := v.FldValidators["values"]; exists { + vOpts := append(opts, db.WithValidateField("values")) + if err := fv(ctx, m.GetValues(), vOpts...); err != nil { return err } @@ -4832,8 +6826,8 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } // Well-known symbol for default validator implementation -var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { - v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultLilacCDNMetricsFilterValidator = func() *ValidateLilacCDNMetricsFilter { + v := &ValidateLilacCDNMetricsFilter{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -4843,96 +6837,57 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhTag := v.TagValidationRuleHandler + rulesTag := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + vFn, err = vrhTag(rulesTag) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.loadbalancer_type: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNMetricsFilter.tag: %s", err) panic(errMsg) } - v.FldValidators["loadbalancer_type"] = vFn + v.FldValidators["tag"] = vFn - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.hostname": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vrhValues := v.ValuesValidationRuleHandler + rulesValues := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhDomains(rulesDomains) + vFn, err = vrhValues(rulesValues) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.domains: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNMetricsFilter.values: %s", err) panic(errMsg) } - v.FldValidators["domains"] = vFn + v.FldValidators["values"] = vFn - vrhOriginPool := v.OriginPoolValidationRuleHandler - rulesOriginPool := map[string]string{ + vrhOperator := v.OperatorValidationRuleHandler + rulesOperator := map[string]string{ "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhOriginPool(rulesOriginPool) + vFn, err = vrhOperator(rulesOperator) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.origin_pool: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNMetricsFilter.operator: %s", err) panic(errMsg) } - v.FldValidators["origin_pool"] = vFn - - v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate - v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate - - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - - v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate + v.FldValidators["operator"] = vFn return v }() -func GlobalSpecTypeValidator() db.Validator { - return DefaultGlobalSpecTypeValidator +func LilacCDNMetricsFilterValidator() db.Validator { + return DefaultLilacCDNMetricsFilterValidator } // augmented methods on protoc/std generated struct -func (m *HeaderControlType) ToJSON() (string, error) { +func (m *LilacCDNMetricsResponseData) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *HeaderControlType) ToYAML() (string, error) { +func (m *LilacCDNMetricsResponseData) ToYAML() (string, error) { return codec.ToYAML(m) } -// Redact squashes sensitive info in m (in-place) -func (m *HeaderControlType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - for idx, e := range m.GetRequestHeadersToAdd() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting HeaderControlType.request_headers_to_add idx %v", idx) - } - } - - for idx, e := range m.GetResponseHeadersToAdd() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting HeaderControlType.response_headers_to_add idx %v", idx) - } - } - - return nil -} - -func (m *HeaderControlType) DeepCopy() *HeaderControlType { +func (m *LilacCDNMetricsResponseData) DeepCopy() *LilacCDNMetricsResponseData { if m == nil { return nil } @@ -4940,7 +6895,7 @@ func (m *HeaderControlType) DeepCopy() *HeaderControlType { if err != nil { return nil } - c := &HeaderControlType{} + c := &LilacCDNMetricsResponseData{} err = c.Unmarshal(ser) if err != nil { return nil @@ -4948,242 +6903,147 @@ func (m *HeaderControlType) DeepCopy() *HeaderControlType { return c } -func (m *HeaderControlType) DeepCopyProto() proto.Message { +func (m *LilacCDNMetricsResponseData) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *HeaderControlType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return HeaderControlTypeValidator().Validate(ctx, m, opts...) +func (m *LilacCDNMetricsResponseData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LilacCDNMetricsResponseDataValidator().Validate(ctx, m, opts...) } -type ValidateHeaderControlType struct { +type ValidateLilacCDNMetricsResponseData struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateHeaderControlType) RequestHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for request_headers_to_add") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } +func (v *ValidateLilacCDNMetricsResponseData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LilacCDNMetricsResponseData) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *LilacCDNMetricsResponseData got type %s", t) } - return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_add") + if m == nil { + return nil } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) + if fv, exists := v.FldValidators["series"]; exists { + + vOpts := append(opts, db.WithValidateField("series")) + for idx, item := range m.GetSeries() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_headers_to_add") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_headers_to_add") } - return nil - } - return validatorFn, nil -} + } -func (v *ValidateHeaderControlType) RequestHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["type"]; exists { - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for request_headers_to_remove") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } + vOpts := append(opts, db.WithValidateField("type")) + if err := fv(ctx, m.GetType(), vOpts...); err != nil { + return err } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_remove") + } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_headers_to_remove") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_headers_to_remove") + if fv, exists := v.FldValidators["unit"]; exists { + + vOpts := append(opts, db.WithValidateField("unit")) + if err := fv(ctx, m.GetUnit(), vOpts...); err != nil { + return err } - return nil + } - return validatorFn, nil + return nil } -func (v *ValidateHeaderControlType) ResponseHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// Well-known symbol for default validator implementation +var DefaultLilacCDNMetricsResponseDataValidator = func() *ValidateLilacCDNMetricsResponseData { + v := &ValidateLilacCDNMetricsResponseData{FldValidators: map[string]db.ValidatorFunc{}} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for response_headers_to_add") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_add") - } + return v +}() - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_headers_to_add") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_headers_to_add") - } - return nil - } +func LilacCDNMetricsResponseDataValidator() db.Validator { + return DefaultLilacCDNMetricsResponseDataValidator +} - return validatorFn, nil +// augmented methods on protoc/std generated struct + +func (m *LilacCDNMetricsResponseGroupBy) ToJSON() (string, error) { + return codec.ToJSON(m) } -func (v *ValidateHeaderControlType) ResponseHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (m *LilacCDNMetricsResponseGroupBy) ToYAML() (string, error) { + return codec.ToYAML(m) +} - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for response_headers_to_remove") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } +func (m *LilacCDNMetricsResponseGroupBy) DeepCopy() *LilacCDNMetricsResponseGroupBy { + if m == nil { return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + ser, err := m.Marshal() if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_remove") + return nil } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_headers_to_remove") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_headers_to_remove") - } + c := &LilacCDNMetricsResponseGroupBy{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *LilacCDNMetricsResponseGroupBy) DeepCopyProto() proto.Message { + if m == nil { return nil } + return m.DeepCopy() +} - return validatorFn, nil +func (m *LilacCDNMetricsResponseGroupBy) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LilacCDNMetricsResponseGroupByValidator().Validate(ctx, m, opts...) } -func (v *ValidateHeaderControlType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*HeaderControlType) +type ValidateLilacCDNMetricsResponseGroupBy struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateLilacCDNMetricsResponseGroupBy) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LilacCDNMetricsResponseGroupBy) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *HeaderControlType got type %s", t) + return fmt.Errorf("Expected type *LilacCDNMetricsResponseGroupBy got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["request_headers_to_add"]; exists { - vOpts := append(opts, db.WithValidateField("request_headers_to_add")) - if err := fv(ctx, m.GetRequestHeadersToAdd(), vOpts...); err != nil { - return err - } - - } + if fv, exists := v.FldValidators["name"]; exists { - if fv, exists := v.FldValidators["request_headers_to_remove"]; exists { - vOpts := append(opts, db.WithValidateField("request_headers_to_remove")) - if err := fv(ctx, m.GetRequestHeadersToRemove(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["response_headers_to_add"]; exists { - vOpts := append(opts, db.WithValidateField("response_headers_to_add")) - if err := fv(ctx, m.GetResponseHeadersToAdd(), vOpts...); err != nil { - return err - } - - } + if fv, exists := v.FldValidators["value"]; exists { - if fv, exists := v.FldValidators["response_headers_to_remove"]; exists { - vOpts := append(opts, db.WithValidateField("response_headers_to_remove")) - if err := fv(ctx, m.GetResponseHeadersToRemove(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("value")) + if err := fv(ctx, m.GetValue(), vOpts...); err != nil { return err } @@ -5193,87 +7053,27 @@ func (v *ValidateHeaderControlType) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultHeaderControlTypeValidator = func() *ValidateHeaderControlType { - v := &ValidateHeaderControlType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhRequestHeadersToAdd := v.RequestHeadersToAddValidationRuleHandler - rulesRequestHeadersToAdd := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRequestHeadersToAdd(rulesRequestHeadersToAdd) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.request_headers_to_add: %s", err) - panic(errMsg) - } - v.FldValidators["request_headers_to_add"] = vFn - - vrhRequestHeadersToRemove := v.RequestHeadersToRemoveValidationRuleHandler - rulesRequestHeadersToRemove := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.items.string.pattern": "^[0-9A-Za-z_\\-\\.]+$", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRequestHeadersToRemove(rulesRequestHeadersToRemove) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.request_headers_to_remove: %s", err) - panic(errMsg) - } - v.FldValidators["request_headers_to_remove"] = vFn - - vrhResponseHeadersToAdd := v.ResponseHeadersToAddValidationRuleHandler - rulesResponseHeadersToAdd := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhResponseHeadersToAdd(rulesResponseHeadersToAdd) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.response_headers_to_add: %s", err) - panic(errMsg) - } - v.FldValidators["response_headers_to_add"] = vFn - - vrhResponseHeadersToRemove := v.ResponseHeadersToRemoveValidationRuleHandler - rulesResponseHeadersToRemove := map[string]string{ - "ves.io.schema.rules.repeated.items.string.pattern": "^[0-9A-Za-z_\\-\\.]+$", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhResponseHeadersToRemove(rulesResponseHeadersToRemove) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for HeaderControlType.response_headers_to_remove: %s", err) - panic(errMsg) - } - v.FldValidators["response_headers_to_remove"] = vFn +var DefaultLilacCDNMetricsResponseGroupByValidator = func() *ValidateLilacCDNMetricsResponseGroupBy { + v := &ValidateLilacCDNMetricsResponseGroupBy{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func HeaderControlTypeValidator() db.Validator { - return DefaultHeaderControlTypeValidator +func LilacCDNMetricsResponseGroupByValidator() db.Validator { + return DefaultLilacCDNMetricsResponseGroupByValidator } // augmented methods on protoc/std generated struct -func (m *IpFilteringOptions) ToJSON() (string, error) { +func (m *LilacCDNMetricsResponseSeries) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *IpFilteringOptions) ToYAML() (string, error) { +func (m *LilacCDNMetricsResponseSeries) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *IpFilteringOptions) DeepCopy() *IpFilteringOptions { +func (m *LilacCDNMetricsResponseSeries) DeepCopy() *LilacCDNMetricsResponseSeries { if m == nil { return nil } @@ -5281,7 +7081,7 @@ func (m *IpFilteringOptions) DeepCopy() *IpFilteringOptions { if err != nil { return nil } - c := &IpFilteringOptions{} + c := &LilacCDNMetricsResponseSeries{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5289,55 +7089,53 @@ func (m *IpFilteringOptions) DeepCopy() *IpFilteringOptions { return c } -func (m *IpFilteringOptions) DeepCopyProto() proto.Message { +func (m *LilacCDNMetricsResponseSeries) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *IpFilteringOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return IpFilteringOptionsValidator().Validate(ctx, m, opts...) +func (m *LilacCDNMetricsResponseSeries) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LilacCDNMetricsResponseSeriesValidator().Validate(ctx, m, opts...) } -type ValidateIpFilteringOptions struct { +type ValidateLilacCDNMetricsResponseSeries struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateIpFilteringOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*IpFilteringOptions) +func (v *ValidateLilacCDNMetricsResponseSeries) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LilacCDNMetricsResponseSeries) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *IpFilteringOptions got type %s", t) + return fmt.Errorf("Expected type *LilacCDNMetricsResponseSeries got type %s", t) } } if m == nil { return nil } - switch m.GetIpFilteringType().(type) { - case *IpFilteringOptions_AllowList: - if fv, exists := v.FldValidators["ip_filtering_type.allow_list"]; exists { - val := m.GetIpFilteringType().(*IpFilteringOptions_AllowList).AllowList - vOpts := append(opts, - db.WithValidateField("ip_filtering_type"), - db.WithValidateField("allow_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["group_by"]; exists { + + vOpts := append(opts, db.WithValidateField("group_by")) + for idx, item := range m.GetGroupBy() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { return err } } - case *IpFilteringOptions_BlockList: - if fv, exists := v.FldValidators["ip_filtering_type.block_list"]; exists { - val := m.GetIpFilteringType().(*IpFilteringOptions_BlockList).BlockList - vOpts := append(opts, - db.WithValidateField("ip_filtering_type"), - db.WithValidateField("block_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + + } + + if fv, exists := v.FldValidators["value"]; exists { + + vOpts := append(opts, db.WithValidateField("value")) + for idx, item := range m.GetValue() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { return err } } @@ -5348,30 +7146,27 @@ func (v *ValidateIpFilteringOptions) Validate(ctx context.Context, pm interface{ } // Well-known symbol for default validator implementation -var DefaultIpFilteringOptionsValidator = func() *ValidateIpFilteringOptions { - v := &ValidateIpFilteringOptions{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["ip_filtering_type.allow_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate - v.FldValidators["ip_filtering_type.block_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate +var DefaultLilacCDNMetricsResponseSeriesValidator = func() *ValidateLilacCDNMetricsResponseSeries { + v := &ValidateLilacCDNMetricsResponseSeries{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func IpFilteringOptionsValidator() db.Validator { - return DefaultIpFilteringOptionsValidator +func LilacCDNMetricsResponseSeriesValidator() db.Validator { + return DefaultLilacCDNMetricsResponseSeriesValidator } // augmented methods on protoc/std generated struct -func (m *LilacCDNMetricsFilter) ToJSON() (string, error) { +func (m *LilacCDNMetricsResponseValue) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *LilacCDNMetricsFilter) ToYAML() (string, error) { +func (m *LilacCDNMetricsResponseValue) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *LilacCDNMetricsFilter) DeepCopy() *LilacCDNMetricsFilter { +func (m *LilacCDNMetricsResponseValue) DeepCopy() *LilacCDNMetricsResponseValue { if m == nil { return nil } @@ -5379,7 +7174,7 @@ func (m *LilacCDNMetricsFilter) DeepCopy() *LilacCDNMetricsFilter { if err != nil { return nil } - c := &LilacCDNMetricsFilter{} + c := &LilacCDNMetricsResponseValue{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5387,130 +7182,48 @@ func (m *LilacCDNMetricsFilter) DeepCopy() *LilacCDNMetricsFilter { return c } -func (m *LilacCDNMetricsFilter) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *LilacCDNMetricsFilter) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LilacCDNMetricsFilterValidator().Validate(ctx, m, opts...) -} - -type ValidateLilacCDNMetricsFilter struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateLilacCDNMetricsFilter) TagValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(LilacCDNMetricsTag) - return int32(i) - } - // LilacCDNMetricsTag_name is generated in .pb.go - validatorFn, err := db.NewEnumValidationRuleHandler(rules, LilacCDNMetricsTag_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for tag") - } - - return validatorFn, nil -} - -func (v *ValidateLilacCDNMetricsFilter) ValuesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for values") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for values") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated values") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items values") - } +func (m *LilacCDNMetricsResponseValue) DeepCopyProto() proto.Message { + if m == nil { return nil } - - return validatorFn, nil + return m.DeepCopy() } -func (v *ValidateLilacCDNMetricsFilter) OperatorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(LilacCDNMetricsOperatorType) - return int32(i) - } - // LilacCDNMetricsOperatorType_name is generated in .pb.go - validatorFn, err := db.NewEnumValidationRuleHandler(rules, LilacCDNMetricsOperatorType_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for operator") - } +func (m *LilacCDNMetricsResponseValue) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LilacCDNMetricsResponseValueValidator().Validate(ctx, m, opts...) +} - return validatorFn, nil +type ValidateLilacCDNMetricsResponseValue struct { + FldValidators map[string]db.ValidatorFunc } -func (v *ValidateLilacCDNMetricsFilter) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LilacCDNMetricsFilter) +func (v *ValidateLilacCDNMetricsResponseValue) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LilacCDNMetricsResponseValue) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *LilacCDNMetricsFilter got type %s", t) + return fmt.Errorf("Expected type *LilacCDNMetricsResponseValue got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["operator"]; exists { + if fv, exists := v.FldValidators["timestamp"]; exists { - vOpts := append(opts, db.WithValidateField("operator")) - if err := fv(ctx, m.GetOperator(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("timestamp")) + if err := fv(ctx, m.GetTimestamp(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["tag"]; exists { - - vOpts := append(opts, db.WithValidateField("tag")) - if err := fv(ctx, m.GetTag(), vOpts...); err != nil { - return err - } - - } + if fv, exists := v.FldValidators["value"]; exists { - if fv, exists := v.FldValidators["values"]; exists { - vOpts := append(opts, db.WithValidateField("values")) - if err := fv(ctx, m.GetValues(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("value")) + if err := fv(ctx, m.GetValue(), vOpts...); err != nil { return err } @@ -5520,68 +7233,27 @@ func (v *ValidateLilacCDNMetricsFilter) Validate(ctx context.Context, pm interfa } // Well-known symbol for default validator implementation -var DefaultLilacCDNMetricsFilterValidator = func() *ValidateLilacCDNMetricsFilter { - v := &ValidateLilacCDNMetricsFilter{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhTag := v.TagValidationRuleHandler - rulesTag := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhTag(rulesTag) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNMetricsFilter.tag: %s", err) - panic(errMsg) - } - v.FldValidators["tag"] = vFn - - vrhValues := v.ValuesValidationRuleHandler - rulesValues := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhValues(rulesValues) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNMetricsFilter.values: %s", err) - panic(errMsg) - } - v.FldValidators["values"] = vFn - - vrhOperator := v.OperatorValidationRuleHandler - rulesOperator := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhOperator(rulesOperator) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for LilacCDNMetricsFilter.operator: %s", err) - panic(errMsg) - } - v.FldValidators["operator"] = vFn +var DefaultLilacCDNMetricsResponseValueValidator = func() *ValidateLilacCDNMetricsResponseValue { + v := &ValidateLilacCDNMetricsResponseValue{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func LilacCDNMetricsFilterValidator() db.Validator { - return DefaultLilacCDNMetricsFilterValidator +func LilacCDNMetricsResponseValueValidator() db.Validator { + return DefaultLilacCDNMetricsResponseValueValidator } // augmented methods on protoc/std generated struct -func (m *LilacCDNMetricsResponseData) ToJSON() (string, error) { +func (m *LogHeaderOptions) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *LilacCDNMetricsResponseData) ToYAML() (string, error) { +func (m *LogHeaderOptions) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *LilacCDNMetricsResponseData) DeepCopy() *LilacCDNMetricsResponseData { +func (m *LogHeaderOptions) DeepCopy() *LogHeaderOptions { if m == nil { return nil } @@ -5589,7 +7261,7 @@ func (m *LilacCDNMetricsResponseData) DeepCopy() *LilacCDNMetricsResponseData { if err != nil { return nil } - c := &LilacCDNMetricsResponseData{} + c := &LogHeaderOptions{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5597,60 +7269,80 @@ func (m *LilacCDNMetricsResponseData) DeepCopy() *LilacCDNMetricsResponseData { return c } -func (m *LilacCDNMetricsResponseData) DeepCopyProto() proto.Message { +func (m *LogHeaderOptions) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *LilacCDNMetricsResponseData) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LilacCDNMetricsResponseDataValidator().Validate(ctx, m, opts...) +func (m *LogHeaderOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LogHeaderOptionsValidator().Validate(ctx, m, opts...) } -type ValidateLilacCDNMetricsResponseData struct { +type ValidateLogHeaderOptions struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateLilacCDNMetricsResponseData) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LilacCDNMetricsResponseData) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *LilacCDNMetricsResponseData got type %s", t) - } +func (v *ValidateLogHeaderOptions) HeaderListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for header_list") } - if m == nil { + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for header_list") + } - if fv, exists := v.FldValidators["series"]; exists { - - vOpts := append(opts, db.WithValidateField("series")) - for idx, item := range m.GetSeries() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) } - + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated header_list") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items header_list") + } + return nil } - if fv, exists := v.FldValidators["type"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("type")) - if err := fv(ctx, m.GetType(), vOpts...); err != nil { - return err +func (v *ValidateLogHeaderOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LogHeaderOptions) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *LogHeaderOptions got type %s", t) } - + } + if m == nil { + return nil } - if fv, exists := v.FldValidators["unit"]; exists { - - vOpts := append(opts, db.WithValidateField("unit")) - if err := fv(ctx, m.GetUnit(), vOpts...); err != nil { + if fv, exists := v.FldValidators["header_list"]; exists { + vOpts := append(opts, db.WithValidateField("header_list")) + if err := fv(ctx, m.GetHeaderList(), vOpts...); err != nil { return err } @@ -5660,27 +7352,47 @@ func (v *ValidateLilacCDNMetricsResponseData) Validate(ctx context.Context, pm i } // Well-known symbol for default validator implementation -var DefaultLilacCDNMetricsResponseDataValidator = func() *ValidateLilacCDNMetricsResponseData { - v := &ValidateLilacCDNMetricsResponseData{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultLogHeaderOptionsValidator = func() *ValidateLogHeaderOptions { + v := &ValidateLogHeaderOptions{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhHeaderList := v.HeaderListValidationRuleHandler + rulesHeaderList := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhHeaderList(rulesHeaderList) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for LogHeaderOptions.header_list: %s", err) + panic(errMsg) + } + v.FldValidators["header_list"] = vFn return v }() -func LilacCDNMetricsResponseDataValidator() db.Validator { - return DefaultLilacCDNMetricsResponseDataValidator +func LogHeaderOptionsValidator() db.Validator { + return DefaultLogHeaderOptionsValidator } // augmented methods on protoc/std generated struct -func (m *LilacCDNMetricsResponseGroupBy) ToJSON() (string, error) { +func (m *LoggingOptionsType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *LilacCDNMetricsResponseGroupBy) ToYAML() (string, error) { +func (m *LoggingOptionsType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *LilacCDNMetricsResponseGroupBy) DeepCopy() *LilacCDNMetricsResponseGroupBy { +func (m *LoggingOptionsType) DeepCopy() *LoggingOptionsType { if m == nil { return nil } @@ -5688,7 +7400,7 @@ func (m *LilacCDNMetricsResponseGroupBy) DeepCopy() *LilacCDNMetricsResponseGrou if err != nil { return nil } - c := &LilacCDNMetricsResponseGroupBy{} + c := &LoggingOptionsType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5696,48 +7408,48 @@ func (m *LilacCDNMetricsResponseGroupBy) DeepCopy() *LilacCDNMetricsResponseGrou return c } -func (m *LilacCDNMetricsResponseGroupBy) DeepCopyProto() proto.Message { +func (m *LoggingOptionsType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *LilacCDNMetricsResponseGroupBy) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LilacCDNMetricsResponseGroupByValidator().Validate(ctx, m, opts...) +func (m *LoggingOptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LoggingOptionsTypeValidator().Validate(ctx, m, opts...) } -type ValidateLilacCDNMetricsResponseGroupBy struct { +type ValidateLoggingOptionsType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateLilacCDNMetricsResponseGroupBy) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LilacCDNMetricsResponseGroupBy) +func (v *ValidateLoggingOptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LoggingOptionsType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *LilacCDNMetricsResponseGroupBy got type %s", t) + return fmt.Errorf("Expected type *LoggingOptionsType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["name"]; exists { + if fv, exists := v.FldValidators["client_log_options"]; exists { - vOpts := append(opts, db.WithValidateField("name")) - if err := fv(ctx, m.GetName(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("client_log_options")) + if err := fv(ctx, m.GetClientLogOptions(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["value"]; exists { + if fv, exists := v.FldValidators["origin_log_options"]; exists { - vOpts := append(opts, db.WithValidateField("value")) - if err := fv(ctx, m.GetValue(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("origin_log_options")) + if err := fv(ctx, m.GetOriginLogOptions(), vOpts...); err != nil { return err } @@ -5746,28 +7458,32 @@ func (v *ValidateLilacCDNMetricsResponseGroupBy) Validate(ctx context.Context, p return nil } -// Well-known symbol for default validator implementation -var DefaultLilacCDNMetricsResponseGroupByValidator = func() *ValidateLilacCDNMetricsResponseGroupBy { - v := &ValidateLilacCDNMetricsResponseGroupBy{FldValidators: map[string]db.ValidatorFunc{}} +// Well-known symbol for default validator implementation +var DefaultLoggingOptionsTypeValidator = func() *ValidateLoggingOptionsType { + v := &ValidateLoggingOptionsType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["client_log_options"] = LogHeaderOptionsValidator().Validate + + v.FldValidators["origin_log_options"] = LogHeaderOptionsValidator().Validate return v }() -func LilacCDNMetricsResponseGroupByValidator() db.Validator { - return DefaultLilacCDNMetricsResponseGroupByValidator +func LoggingOptionsTypeValidator() db.Validator { + return DefaultLoggingOptionsTypeValidator } // augmented methods on protoc/std generated struct -func (m *LilacCDNMetricsResponseSeries) ToJSON() (string, error) { +func (m *OriginAdvancedConfiguration) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *LilacCDNMetricsResponseSeries) ToYAML() (string, error) { +func (m *OriginAdvancedConfiguration) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *LilacCDNMetricsResponseSeries) DeepCopy() *LilacCDNMetricsResponseSeries { +func (m *OriginAdvancedConfiguration) DeepCopy() *OriginAdvancedConfiguration { if m == nil { return nil } @@ -5775,7 +7491,7 @@ func (m *LilacCDNMetricsResponseSeries) DeepCopy() *LilacCDNMetricsResponseSerie if err != nil { return nil } - c := &LilacCDNMetricsResponseSeries{} + c := &OriginAdvancedConfiguration{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5783,55 +7499,49 @@ func (m *LilacCDNMetricsResponseSeries) DeepCopy() *LilacCDNMetricsResponseSerie return c } -func (m *LilacCDNMetricsResponseSeries) DeepCopyProto() proto.Message { +func (m *OriginAdvancedConfiguration) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *LilacCDNMetricsResponseSeries) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LilacCDNMetricsResponseSeriesValidator().Validate(ctx, m, opts...) +func (m *OriginAdvancedConfiguration) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OriginAdvancedConfigurationValidator().Validate(ctx, m, opts...) } -type ValidateLilacCDNMetricsResponseSeries struct { +type ValidateOriginAdvancedConfiguration struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateLilacCDNMetricsResponseSeries) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LilacCDNMetricsResponseSeries) +func (v *ValidateOriginAdvancedConfiguration) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OriginAdvancedConfiguration) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *LilacCDNMetricsResponseSeries got type %s", t) + return fmt.Errorf("Expected type *OriginAdvancedConfiguration got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["group_by"]; exists { + if fv, exists := v.FldValidators["disable_byte_range_request"]; exists { - vOpts := append(opts, db.WithValidateField("group_by")) - for idx, item := range m.GetGroupBy() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("disable_byte_range_request")) + if err := fv(ctx, m.GetDisableByteRangeRequest(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["value"]; exists { + if fv, exists := v.FldValidators["websocket_proxy"]; exists { - vOpts := append(opts, db.WithValidateField("value")) - for idx, item := range m.GetValue() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("websocket_proxy")) + if err := fv(ctx, m.GetWebsocketProxy(), vOpts...); err != nil { + return err } } @@ -5840,27 +7550,27 @@ func (v *ValidateLilacCDNMetricsResponseSeries) Validate(ctx context.Context, pm } // Well-known symbol for default validator implementation -var DefaultLilacCDNMetricsResponseSeriesValidator = func() *ValidateLilacCDNMetricsResponseSeries { - v := &ValidateLilacCDNMetricsResponseSeries{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultOriginAdvancedConfigurationValidator = func() *ValidateOriginAdvancedConfiguration { + v := &ValidateOriginAdvancedConfiguration{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func LilacCDNMetricsResponseSeriesValidator() db.Validator { - return DefaultLilacCDNMetricsResponseSeriesValidator +func OriginAdvancedConfigurationValidator() db.Validator { + return DefaultOriginAdvancedConfigurationValidator } // augmented methods on protoc/std generated struct -func (m *LilacCDNMetricsResponseValue) ToJSON() (string, error) { +func (m *ProxyTypeHttpsAutoCerts) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *LilacCDNMetricsResponseValue) ToYAML() (string, error) { +func (m *ProxyTypeHttpsAutoCerts) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *LilacCDNMetricsResponseValue) DeepCopy() *LilacCDNMetricsResponseValue { +func (m *ProxyTypeHttpsAutoCerts) DeepCopy() *ProxyTypeHttpsAutoCerts { if m == nil { return nil } @@ -5868,7 +7578,7 @@ func (m *LilacCDNMetricsResponseValue) DeepCopy() *LilacCDNMetricsResponseValue if err != nil { return nil } - c := &LilacCDNMetricsResponseValue{} + c := &ProxyTypeHttpsAutoCerts{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5876,48 +7586,138 @@ func (m *LilacCDNMetricsResponseValue) DeepCopy() *LilacCDNMetricsResponseValue return c } -func (m *LilacCDNMetricsResponseValue) DeepCopyProto() proto.Message { +func (m *ProxyTypeHttpsAutoCerts) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *LilacCDNMetricsResponseValue) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LilacCDNMetricsResponseValueValidator().Validate(ctx, m, opts...) +func (m *ProxyTypeHttpsAutoCerts) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProxyTypeHttpsAutoCertsValidator().Validate(ctx, m, opts...) } -type ValidateLilacCDNMetricsResponseValue struct { +type ValidateProxyTypeHttpsAutoCerts struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateLilacCDNMetricsResponseValue) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LilacCDNMetricsResponseValue) +func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for server_header_choice") + } + return validatorFn, nil +} + +func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ServerName, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for server_name") + } + return oValidatorFn_ServerName, nil +} +func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceAppendServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_AppendServerName, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for append_server_name") + } + return oValidatorFn_AppendServerName, nil +} + +func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProxyTypeHttpsAutoCerts) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *LilacCDNMetricsResponseValue got type %s", t) + return fmt.Errorf("Expected type *ProxyTypeHttpsAutoCerts got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["timestamp"]; exists { + if fv, exists := v.FldValidators["add_hsts"]; exists { - vOpts := append(opts, db.WithValidateField("timestamp")) - if err := fv(ctx, m.GetTimestamp(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("add_hsts")) + if err := fv(ctx, m.GetAddHsts(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["value"]; exists { + if fv, exists := v.FldValidators["http_redirect"]; exists { - vOpts := append(opts, db.WithValidateField("value")) - if err := fv(ctx, m.GetValue(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("http_redirect")) + if err := fv(ctx, m.GetHttpRedirect(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["server_header_choice"]; exists { + val := m.GetServerHeaderChoice() + vOpts := append(opts, + db.WithValidateField("server_header_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetServerHeaderChoice().(type) { + case *ProxyTypeHttpsAutoCerts_DefaultHeader: + if fv, exists := v.FldValidators["server_header_choice.default_header"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_DefaultHeader).DefaultHeader + vOpts := append(opts, + db.WithValidateField("server_header_choice"), + db.WithValidateField("default_header"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyTypeHttpsAutoCerts_ServerName: + if fv, exists := v.FldValidators["server_header_choice.server_name"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_ServerName).ServerName + vOpts := append(opts, + db.WithValidateField("server_header_choice"), + db.WithValidateField("server_name"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyTypeHttpsAutoCerts_AppendServerName: + if fv, exists := v.FldValidators["server_header_choice.append_server_name"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_AppendServerName).AppendServerName + vOpts := append(opts, + db.WithValidateField("server_header_choice"), + db.WithValidateField("append_server_name"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyTypeHttpsAutoCerts_PassThrough: + if fv, exists := v.FldValidators["server_header_choice.pass_through"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_PassThrough).PassThrough + vOpts := append(opts, + db.WithValidateField("server_header_choice"), + db.WithValidateField("pass_through"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["tls_config"]; exists { + + vOpts := append(opts, db.WithValidateField("tls_config")) + if err := fv(ctx, m.GetTlsConfig(), vOpts...); err != nil { return err } @@ -5927,27 +7727,92 @@ func (v *ValidateLilacCDNMetricsResponseValue) Validate(ctx context.Context, pm } // Well-known symbol for default validator implementation -var DefaultLilacCDNMetricsResponseValueValidator = func() *ValidateLilacCDNMetricsResponseValue { - v := &ValidateLilacCDNMetricsResponseValue{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultProxyTypeHttpsAutoCertsValidator = func() *ValidateProxyTypeHttpsAutoCerts { + v := &ValidateProxyTypeHttpsAutoCerts{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhServerHeaderChoice := v.ServerHeaderChoiceValidationRuleHandler + rulesServerHeaderChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhServerHeaderChoice(rulesServerHeaderChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.server_header_choice: %s", err) + panic(errMsg) + } + v.FldValidators["server_header_choice"] = vFn + + vrhServerHeaderChoiceServerName := v.ServerHeaderChoiceServerNameValidationRuleHandler + rulesServerHeaderChoiceServerName := map[string]string{ + "ves.io.schema.rules.string.hostname_or_ip": "true", + } + vFnMap["server_header_choice.server_name"], err = vrhServerHeaderChoiceServerName(rulesServerHeaderChoiceServerName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_server_name: %s", err) + panic(errMsg) + } + vrhServerHeaderChoiceAppendServerName := v.ServerHeaderChoiceAppendServerNameValidationRuleHandler + rulesServerHeaderChoiceAppendServerName := map[string]string{ + "ves.io.schema.rules.string.hostname_or_ip": "true", + } + vFnMap["server_header_choice.append_server_name"], err = vrhServerHeaderChoiceAppendServerName(rulesServerHeaderChoiceAppendServerName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_append_server_name: %s", err) + panic(errMsg) + } + + v.FldValidators["server_header_choice.server_name"] = vFnMap["server_header_choice.server_name"] + v.FldValidators["server_header_choice.append_server_name"] = vFnMap["server_header_choice.append_server_name"] + + v.FldValidators["tls_config"] = ves_io_schema_views.TlsConfigValidator().Validate return v }() -func LilacCDNMetricsResponseValueValidator() db.Validator { - return DefaultLilacCDNMetricsResponseValueValidator +func ProxyTypeHttpsAutoCertsValidator() db.Validator { + return DefaultProxyTypeHttpsAutoCertsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) } -// augmented methods on protoc/std generated struct +// Redact squashes sensitive info in m (in-place) +func (m *ReplaceSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.more_option") + } + + if err := m.GetOriginPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.origin_pool") + } -func (m *LogHeaderOptions) ToJSON() (string, error) { - return codec.ToJSON(m) -} + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.https") + } -func (m *LogHeaderOptions) ToYAML() (string, error) { - return codec.ToYAML(m) + return nil } -func (m *LogHeaderOptions) DeepCopy() *LogHeaderOptions { +func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { if m == nil { return nil } @@ -5955,7 +7820,7 @@ func (m *LogHeaderOptions) DeepCopy() *LogHeaderOptions { if err != nil { return nil } - c := &LogHeaderOptions{} + c := &ReplaceSpecType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -5963,27 +7828,93 @@ func (m *LogHeaderOptions) DeepCopy() *LogHeaderOptions { return c } -func (m *LogHeaderOptions) DeepCopyProto() proto.Message { +func (m *ReplaceSpecType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *LogHeaderOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LogHeaderOptionsValidator().Validate(ctx, m, opts...) +func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) } -type ValidateLogHeaderOptions struct { +func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetOriginPoolDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil + } + + drInfos, err := m.GetMoreOption().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPool() == nil { + return nil, nil + } + + drInfos, err := m.GetOriginPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_pool." + dri.DRField + } + return drInfos, err + +} + +type ValidateReplaceSpecType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateLogHeaderOptions) HeaderListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + } + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepStringItemRules(rules) itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for header_list") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") } itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { for i, el := range elems { @@ -5995,7 +7926,7 @@ func (v *ValidateLogHeaderOptions) HeaderListValidationRuleHandler(rules map[str } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for header_list") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { @@ -6009,10 +7940,10 @@ func (v *ValidateLogHeaderOptions) HeaderListValidationRuleHandler(rules map[str l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated header_list") + return errors.Wrap(err, "repeated domains") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items header_list") + return errors.Wrap(err, "items domains") } return nil } @@ -6020,130 +7951,118 @@ func (v *ValidateLogHeaderOptions) HeaderListValidationRuleHandler(rules map[str return validatorFn, nil } -func (v *ValidateLogHeaderOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LogHeaderOptions) +func (v *ValidateReplaceSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *LogHeaderOptions got type %s", t) + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["header_list"]; exists { - vOpts := append(opts, db.WithValidateField("header_list")) - if err := fv(ctx, m.GetHeaderList(), vOpts...); err != nil { + if fv, exists := v.FldValidators["add_location"]; exists { + + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultLogHeaderOptionsValidator = func() *ValidateLogHeaderOptions { - v := &ValidateLogHeaderOptions{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhHeaderList := v.HeaderListValidationRuleHandler - rulesHeaderList := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhHeaderList(rulesHeaderList) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for LogHeaderOptions.header_list: %s", err) - panic(errMsg) - } - v.FldValidators["header_list"] = vFn - - return v -}() - -func LogHeaderOptionsValidator() db.Validator { - return DefaultLogHeaderOptionsValidator -} - -// augmented methods on protoc/std generated struct - -func (m *LoggingOptionsType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *LoggingOptionsType) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err + } -func (m *LoggingOptionsType) DeepCopy() *LoggingOptionsType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil } - c := &LoggingOptionsType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} -func (m *LoggingOptionsType) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return m.DeepCopy() -} - -func (m *LoggingOptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return LoggingOptionsTypeValidator().Validate(ctx, m, opts...) -} -type ValidateLoggingOptionsType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateLoggingOptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*LoggingOptionsType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *LoggingOptionsType got type %s", t) + switch m.GetLoadbalancerType().(type) { + case *ReplaceSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*ReplaceSpecType_Http).Http + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - } - if m == nil { - return nil + case *ReplaceSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert).HttpsAutoCert + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*ReplaceSpecType_Https).Https + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - if fv, exists := v.FldValidators["client_log_options"]; exists { + if fv, exists := v.FldValidators["more_option"]; exists { - vOpts := append(opts, db.WithValidateField("client_log_options")) - if err := fv(ctx, m.GetClientLogOptions(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["origin_log_options"]; exists { + if fv, exists := v.FldValidators["origin_pool"]; exists { - vOpts := append(opts, db.WithValidateField("origin_log_options")) - if err := fv(ctx, m.GetOriginLogOptions(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("origin_pool")) + if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { return err } @@ -6153,31 +8072,99 @@ func (v *ValidateLoggingOptionsType) Validate(ctx context.Context, pm interface{ } // Well-known symbol for default validator implementation -var DefaultLoggingOptionsTypeValidator = func() *ValidateLoggingOptionsType { - v := &ValidateLoggingOptionsType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { + v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} - v.FldValidators["client_log_options"] = LogHeaderOptionsValidator().Validate + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap - v.FldValidators["origin_log_options"] = LogHeaderOptionsValidator().Validate + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.loadbalancer_type: %s", err) + panic(errMsg) + } + v.FldValidators["loadbalancer_type"] = vFn + + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.hostname": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDomains(rulesDomains) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.domains: %s", err) + panic(errMsg) + } + v.FldValidators["domains"] = vFn + + vrhOriginPool := v.OriginPoolValidationRuleHandler + rulesOriginPool := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOriginPool(rulesOriginPool) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.origin_pool: %s", err) + panic(errMsg) + } + v.FldValidators["origin_pool"] = vFn + + v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate + v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate + + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate return v }() -func LoggingOptionsTypeValidator() db.Validator { - return DefaultLoggingOptionsTypeValidator +func ReplaceSpecTypeValidator() db.Validator { + return DefaultReplaceSpecTypeValidator } // augmented methods on protoc/std generated struct -func (m *OriginAdvancedConfiguration) ToJSON() (string, error) { +func (m *SecurityOptionsType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *OriginAdvancedConfiguration) ToYAML() (string, error) { +func (m *SecurityOptionsType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *OriginAdvancedConfiguration) DeepCopy() *OriginAdvancedConfiguration { +// Redact squashes sensitive info in m (in-place) +func (m *SecurityOptionsType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetAuthOptions().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting SecurityOptionsType.auth_options") + } + + if err := m.GetApiProtection().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting SecurityOptionsType.api_protection") + } + + return nil +} + +func (m *SecurityOptionsType) DeepCopy() *SecurityOptionsType { if m == nil { return nil } @@ -6185,7 +8172,7 @@ func (m *OriginAdvancedConfiguration) DeepCopy() *OriginAdvancedConfiguration { if err != nil { return nil } - c := &OriginAdvancedConfiguration{} + c := &SecurityOptionsType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -6193,225 +8180,166 @@ func (m *OriginAdvancedConfiguration) DeepCopy() *OriginAdvancedConfiguration { return c } -func (m *OriginAdvancedConfiguration) DeepCopyProto() proto.Message { +func (m *SecurityOptionsType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *OriginAdvancedConfiguration) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OriginAdvancedConfigurationValidator().Validate(ctx, m, opts...) -} - -type ValidateOriginAdvancedConfiguration struct { - FldValidators map[string]db.ValidatorFunc +func (m *SecurityOptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SecurityOptionsTypeValidator().Validate(ctx, m, opts...) } -func (v *ValidateOriginAdvancedConfiguration) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OriginAdvancedConfiguration) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OriginAdvancedConfiguration got type %s", t) - } - } +func (m *SecurityOptionsType) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { - return nil + return nil, nil } - if fv, exists := v.FldValidators["disable_byte_range_request"]; exists { - - vOpts := append(opts, db.WithValidateField("disable_byte_range_request")) - if err := fv(ctx, m.GetDisableByteRangeRequest(), vOpts...); err != nil { - return err - } - + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetApiProtectionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiProtectionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["websocket_proxy"]; exists { - - vOpts := append(opts, db.WithValidateField("websocket_proxy")) - if err := fv(ctx, m.GetWebsocketProxy(), vOpts...); err != nil { - return err - } - + if fdrInfos, err := m.GetCommonSecurityControlsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetCommonSecurityControlsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultOriginAdvancedConfigurationValidator = func() *ValidateOriginAdvancedConfiguration { - v := &ValidateOriginAdvancedConfiguration{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func OriginAdvancedConfigurationValidator() db.Validator { - return DefaultOriginAdvancedConfigurationValidator -} - -// augmented methods on protoc/std generated struct + if fdrInfos, err := m.GetWebAppFirewallDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWebAppFirewallDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func (m *ProxyTypeHttpsAutoCerts) ToJSON() (string, error) { - return codec.ToJSON(m) -} + return drInfos, nil -func (m *ProxyTypeHttpsAutoCerts) ToYAML() (string, error) { - return codec.ToYAML(m) } -func (m *ProxyTypeHttpsAutoCerts) DeepCopy() *ProxyTypeHttpsAutoCerts { - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *SecurityOptionsType) GetApiProtectionDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiProtection() == nil { + return nil, nil } - ser, err := m.Marshal() + + drInfos, err := m.GetApiProtection().GetDRefInfo() if err != nil { - return nil + return nil, errors.Wrap(err, "GetApiProtection().GetDRefInfo() FAILED") } - c := &ProxyTypeHttpsAutoCerts{} - err = c.Unmarshal(ser) - if err != nil { - return nil + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_protection." + dri.DRField } - return c + return drInfos, err + } -func (m *ProxyTypeHttpsAutoCerts) DeepCopyProto() proto.Message { - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *SecurityOptionsType) GetCommonSecurityControlsDRefInfo() ([]db.DRefInfo, error) { + if m.GetCommonSecurityControls() == nil { + return nil, nil } - return m.DeepCopy() -} -func (m *ProxyTypeHttpsAutoCerts) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ProxyTypeHttpsAutoCertsValidator().Validate(ctx, m, opts...) -} + drInfos, err := m.GetCommonSecurityControls().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetCommonSecurityControls().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "common_security_controls." + dri.DRField + } + return drInfos, err -type ValidateProxyTypeHttpsAutoCerts struct { - FldValidators map[string]db.ValidatorFunc } -func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for server_header_choice") +// GetDRefInfo for the field's type +func (m *SecurityOptionsType) GetWebAppFirewallDRefInfo() ([]db.DRefInfo, error) { + if m.GetWebAppFirewall() == nil { + return nil, nil } - return validatorFn, nil -} -func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ServerName, err := db.NewStringValidationRuleHandler(rules) + drInfos, err := m.GetWebAppFirewall().GetDRefInfo() if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for server_name") + return nil, errors.Wrap(err, "GetWebAppFirewall().GetDRefInfo() FAILED") } - return oValidatorFn_ServerName, nil -} -func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceAppendServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_AppendServerName, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for append_server_name") + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "web_app_firewall." + dri.DRField } - return oValidatorFn_AppendServerName, nil + return drInfos, err + } -func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ProxyTypeHttpsAutoCerts) +type ValidateSecurityOptionsType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSecurityOptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SecurityOptionsType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ProxyTypeHttpsAutoCerts got type %s", t) + return fmt.Errorf("Expected type *SecurityOptionsType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["add_hsts"]; exists { + if fv, exists := v.FldValidators["api_protection"]; exists { - vOpts := append(opts, db.WithValidateField("add_hsts")) - if err := fv(ctx, m.GetAddHsts(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("api_protection")) + if err := fv(ctx, m.GetApiProtection(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["http_redirect"]; exists { + if fv, exists := v.FldValidators["auth_options"]; exists { - vOpts := append(opts, db.WithValidateField("http_redirect")) - if err := fv(ctx, m.GetHttpRedirect(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("auth_options")) + if err := fv(ctx, m.GetAuthOptions(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["server_header_choice"]; exists { - val := m.GetServerHeaderChoice() - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["common_security_controls"]; exists { + + vOpts := append(opts, db.WithValidateField("common_security_controls")) + if err := fv(ctx, m.GetCommonSecurityControls(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["geo_filtering"]; exists { + + vOpts := append(opts, db.WithValidateField("geo_filtering")) + if err := fv(ctx, m.GetGeoFiltering(), vOpts...); err != nil { return err } + } - switch m.GetServerHeaderChoice().(type) { - case *ProxyTypeHttpsAutoCerts_DefaultHeader: - if fv, exists := v.FldValidators["server_header_choice.default_header"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_DefaultHeader).DefaultHeader - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("default_header"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ProxyTypeHttpsAutoCerts_ServerName: - if fv, exists := v.FldValidators["server_header_choice.server_name"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_ServerName).ServerName - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("server_name"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ProxyTypeHttpsAutoCerts_AppendServerName: - if fv, exists := v.FldValidators["server_header_choice.append_server_name"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_AppendServerName).AppendServerName - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("append_server_name"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ProxyTypeHttpsAutoCerts_PassThrough: - if fv, exists := v.FldValidators["server_header_choice.pass_through"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_PassThrough).PassThrough - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("pass_through"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["ip_filtering"]; exists { + + vOpts := append(opts, db.WithValidateField("ip_filtering")) + if err := fv(ctx, m.GetIpFiltering(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["tls_config"]; exists { + if fv, exists := v.FldValidators["web_app_firewall"]; exists { - vOpts := append(opts, db.WithValidateField("tls_config")) - if err := fv(ctx, m.GetTlsConfig(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("web_app_firewall")) + if err := fv(ctx, m.GetWebAppFirewall(), vOpts...); err != nil { return err } @@ -6421,92 +8349,39 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } // Well-known symbol for default validator implementation -var DefaultProxyTypeHttpsAutoCertsValidator = func() *ValidateProxyTypeHttpsAutoCerts { - v := &ValidateProxyTypeHttpsAutoCerts{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSecurityOptionsTypeValidator = func() *ValidateSecurityOptionsType { + v := &ValidateSecurityOptionsType{FldValidators: map[string]db.ValidatorFunc{}} - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + v.FldValidators["ip_filtering"] = IpFilteringOptionsValidator().Validate - vrhServerHeaderChoice := v.ServerHeaderChoiceValidationRuleHandler - rulesServerHeaderChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhServerHeaderChoice(rulesServerHeaderChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.server_header_choice: %s", err) - panic(errMsg) - } - v.FldValidators["server_header_choice"] = vFn + v.FldValidators["geo_filtering"] = GeoFilteringOptionsValidator().Validate - vrhServerHeaderChoiceServerName := v.ServerHeaderChoiceServerNameValidationRuleHandler - rulesServerHeaderChoiceServerName := map[string]string{ - "ves.io.schema.rules.string.hostname_or_ip": "true", - } - vFnMap["server_header_choice.server_name"], err = vrhServerHeaderChoiceServerName(rulesServerHeaderChoiceServerName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_server_name: %s", err) - panic(errMsg) - } - vrhServerHeaderChoiceAppendServerName := v.ServerHeaderChoiceAppendServerNameValidationRuleHandler - rulesServerHeaderChoiceAppendServerName := map[string]string{ - "ves.io.schema.rules.string.hostname_or_ip": "true", - } - vFnMap["server_header_choice.append_server_name"], err = vrhServerHeaderChoiceAppendServerName(rulesServerHeaderChoiceAppendServerName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_append_server_name: %s", err) - panic(errMsg) - } + v.FldValidators["auth_options"] = AuthenticationOptionsValidator().Validate - v.FldValidators["server_header_choice.server_name"] = vFnMap["server_header_choice.server_name"] - v.FldValidators["server_header_choice.append_server_name"] = vFnMap["server_header_choice.append_server_name"] + v.FldValidators["web_app_firewall"] = WebApplicationFirewallValidator().Validate - v.FldValidators["tls_config"] = ves_io_schema_views.TlsConfigValidator().Validate + v.FldValidators["common_security_controls"] = CommonSecurityControlsValidator().Validate + + v.FldValidators["api_protection"] = ApiProtectionValidator().Validate return v }() -func ProxyTypeHttpsAutoCertsValidator() db.Validator { - return DefaultProxyTypeHttpsAutoCertsValidator +func SecurityOptionsTypeValidator() db.Validator { + return DefaultSecurityOptionsTypeValidator } // augmented methods on protoc/std generated struct -func (m *ReplaceSpecType) ToJSON() (string, error) { +func (m *WebApplicationFirewall) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ReplaceSpecType) ToYAML() (string, error) { +func (m *WebApplicationFirewall) ToYAML() (string, error) { return codec.ToYAML(m) } -// Redact squashes sensitive info in m (in-place) -func (m *ReplaceSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.more_option") - } - - if err := m.GetOriginPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.origin_pool") - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.https") - } - - return nil -} - -func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { +func (m *WebApplicationFirewall) DeepCopy() *WebApplicationFirewall { if m == nil { return nil } @@ -6514,7 +8389,7 @@ func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { if err != nil { return nil } - c := &ReplaceSpecType{} + c := &WebApplicationFirewall{} err = c.Unmarshal(ser) if err != nil { return nil @@ -6522,91 +8397,282 @@ func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { return c } -func (m *ReplaceSpecType) DeepCopyProto() proto.Message { +func (m *WebApplicationFirewall) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +func (m *WebApplicationFirewall) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return WebApplicationFirewallValidator().Validate(ctx, m, opts...) } -func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { +func (m *WebApplicationFirewall) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { return nil, nil } - return m.GetOriginPoolDRefInfo() + return m.GetWafChoiceDRefInfo() } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPool() == nil { +func (m *WebApplicationFirewall) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetWafChoice().(type) { + case *WebApplicationFirewall_DisableWaf: + return nil, nil - } - drInfos, err := m.GetOriginPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginPool().GetDRefInfo() FAILED") + case *WebApplicationFirewall_AppFirewall: + + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + case *WebApplicationFirewall_AppFirewallOnCacheMiss: + + vref := m.GetAppFirewallOnCacheMiss() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall_on_cache_miss", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_pool." + dri.DRField +} + +// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *WebApplicationFirewall) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetWafChoice().(type) { + case *WebApplicationFirewall_DisableWaf: + + case *WebApplicationFirewall_AppFirewall: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + } + + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + case *WebApplicationFirewall_AppFirewallOnCacheMiss: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + } + + vref := m.GetAppFirewallOnCacheMiss() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } - return drInfos, err + return entries, nil } -type ValidateReplaceSpecType struct { +type ValidateWebApplicationFirewall struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateReplaceSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateWebApplicationFirewall) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") + } + return validatorFn, nil +} + +func (v *ValidateWebApplicationFirewall) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated waf_exclusion_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items waf_exclusion_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateWebApplicationFirewall) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated data_guard_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items data_guard_rules") + } + return nil } + return validatorFn, nil } -func (v *ValidateReplaceSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateWebApplicationFirewall) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) + elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") + return errors.Wrap(err, "repeated graphql_rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") + return errors.Wrap(err, "items graphql_rules") } return nil } @@ -6614,97 +8680,140 @@ func (v *ValidateReplaceSpecType) DomainsValidationRuleHandler(rules map[string] return validatorFn, nil } -func (v *ValidateReplaceSpecType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateWebApplicationFirewall) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") + } - if err := CdnOriginPoolTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated protected_cookies") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items protected_cookies") } - return nil } return validatorFn, nil } -func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ReplaceSpecType) +func (v *ValidateWebApplicationFirewall) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*WebApplicationFirewall) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + return fmt.Errorf("Expected type *WebApplicationFirewall got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["add_location"]; exists { + if fv, exists := v.FldValidators["csrf_policy"]; exists { - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("csrf_policy")) + if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + if fv, exists := v.FldValidators["data_guard_rules"]; exists { + vOpts := append(opts, db.WithValidateField("data_guard_rules")) + if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() + if fv, exists := v.FldValidators["graphql_rules"]; exists { + vOpts := append(opts, db.WithValidateField("graphql_rules")) + if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["protected_cookies"]; exists { + vOpts := append(opts, db.WithValidateField("protected_cookies")) + if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["waf_choice"]; exists { + val := m.GetWafChoice() vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), + db.WithValidateField("waf_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetLoadbalancerType().(type) { - case *ReplaceSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*ReplaceSpecType_Http).Http + switch m.GetWafChoice().(type) { + case *WebApplicationFirewall_DisableWaf: + if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { + val := m.GetWafChoice().(*WebApplicationFirewall_DisableWaf).DisableWaf vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), + db.WithValidateField("waf_choice"), + db.WithValidateField("disable_waf"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert).HttpsAutoCert + case *WebApplicationFirewall_AppFirewall: + if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { + val := m.GetWafChoice().(*WebApplicationFirewall_AppFirewall).AppFirewall vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*ReplaceSpecType_Https).Https + case *WebApplicationFirewall_AppFirewallOnCacheMiss: + if fv, exists := v.FldValidators["waf_choice.app_firewall_on_cache_miss"]; exists { + val := m.GetWafChoice().(*WebApplicationFirewall_AppFirewallOnCacheMiss).AppFirewallOnCacheMiss vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall_on_cache_miss"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -6713,19 +8822,9 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["more_option"]; exists { - - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["origin_pool"]; exists { - - vOpts := append(opts, db.WithValidateField("origin_pool")) - if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { + vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) + if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { return err } @@ -6735,8 +8834,8 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } // Well-known symbol for default validator implementation -var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { - v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultWebApplicationFirewallValidator = func() *ValidateWebApplicationFirewall { + v := &ValidateWebApplicationFirewall{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -6746,173 +8845,75 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ + vrhWafChoice := v.WafChoiceValidationRuleHandler + rulesWafChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + vFn, err = vrhWafChoice(rulesWafChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.loadbalancer_type: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for WebApplicationFirewall.waf_choice: %s", err) panic(errMsg) } - v.FldValidators["loadbalancer_type"] = vFn + v.FldValidators["waf_choice"] = vFn - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.hostname": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.pattern": "[\\.]+[A-Za-z]+", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler + rulesWafExclusionRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - vFn, err = vrhDomains(rulesDomains) + vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.domains: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for WebApplicationFirewall.waf_exclusion_rules: %s", err) panic(errMsg) } - v.FldValidators["domains"] = vFn + v.FldValidators["waf_exclusion_rules"] = vFn - vrhOriginPool := v.OriginPoolValidationRuleHandler - rulesOriginPool := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler + rulesDataGuardRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - vFn, err = vrhOriginPool(rulesOriginPool) + vFn, err = vrhDataGuardRules(rulesDataGuardRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.origin_pool: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for WebApplicationFirewall.data_guard_rules: %s", err) panic(errMsg) } - v.FldValidators["origin_pool"] = vFn - - v.FldValidators["loadbalancer_type.http"] = ves_io_schema_views_http_loadbalancer.ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = CDNHTTPSAutoCertsTypeValidator().Validate - v.FldValidators["loadbalancer_type.https"] = CDNHTTPSCustomCertsTypeValidator().Validate - - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - - return v -}() - -func ReplaceSpecTypeValidator() db.Validator { - return DefaultReplaceSpecTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *SecurityOptionsType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *SecurityOptionsType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -// Redact squashes sensitive info in m (in-place) -func (m *SecurityOptionsType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetAuthOptions().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting SecurityOptionsType.auth_options") - } - - return nil -} + v.FldValidators["data_guard_rules"] = vFn -func (m *SecurityOptionsType) DeepCopy() *SecurityOptionsType { - if m == nil { - return nil + vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler + rulesGraphqlRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &SecurityOptionsType{} - err = c.Unmarshal(ser) + vFn, err = vrhGraphqlRules(rulesGraphqlRules) if err != nil { - return nil - } - return c -} - -func (m *SecurityOptionsType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *SecurityOptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SecurityOptionsTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateSecurityOptionsType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateSecurityOptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SecurityOptionsType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *SecurityOptionsType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["auth_options"]; exists { - - vOpts := append(opts, db.WithValidateField("auth_options")) - if err := fv(ctx, m.GetAuthOptions(), vOpts...); err != nil { - return err - } - + errMsg := fmt.Sprintf("ValidationRuleHandler for WebApplicationFirewall.graphql_rules: %s", err) + panic(errMsg) } + v.FldValidators["graphql_rules"] = vFn - if fv, exists := v.FldValidators["geo_filtering"]; exists { - - vOpts := append(opts, db.WithValidateField("geo_filtering")) - if err := fv(ctx, m.GetGeoFiltering(), vOpts...); err != nil { - return err - } - + vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler + rulesProtectedCookies := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - - if fv, exists := v.FldValidators["ip_filtering"]; exists { - - vOpts := append(opts, db.WithValidateField("ip_filtering")) - if err := fv(ctx, m.GetIpFiltering(), vOpts...); err != nil { - return err - } - + vFn, err = vrhProtectedCookies(rulesProtectedCookies) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for WebApplicationFirewall.protected_cookies: %s", err) + panic(errMsg) } + v.FldValidators["protected_cookies"] = vFn - return nil -} - -// Well-known symbol for default validator implementation -var DefaultSecurityOptionsTypeValidator = func() *ValidateSecurityOptionsType { - v := &ValidateSecurityOptionsType{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["ip_filtering"] = IpFilteringOptionsValidator().Validate - - v.FldValidators["geo_filtering"] = GeoFilteringOptionsValidator().Validate + v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + v.FldValidators["waf_choice.app_firewall_on_cache_miss"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - v.FldValidators["auth_options"] = AuthenticationOptionsValidator().Validate + v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate return v }() -func SecurityOptionsTypeValidator() db.Validator { - return DefaultSecurityOptionsTypeValidator +func WebApplicationFirewallValidator() db.Validator { + return DefaultWebApplicationFirewallValidator } // create setters in CreateSpecType from GlobalSpecType for oneof fields diff --git a/pbgo/extschema/schema/views/common_waf/common_waf_types.pb.go b/pbgo/extschema/schema/views/common_waf/common_waf_types.pb.go new file mode 100644 index 000000000..375529817 --- /dev/null +++ b/pbgo/extschema/schema/views/common_waf/common_waf_types.pb.go @@ -0,0 +1,29018 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/views/common_waf/common_waf_types.proto + +package common_waf + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + app_type "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" + policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" + rate_limiter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy" + service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" + views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" + virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// action +// +// x-displayName: "Action" +// Action that should be taken when client identifier matches the rule +type ClientSrcRuleAction int32 + +const ( + // x-displayName: "Skip WAF" + SKIP_PROCESSING_WAF ClientSrcRuleAction = 0 + // x-displayName: "Skip Bot Defense" + SKIP_PROCESSING_BOT ClientSrcRuleAction = 1 + // x-displayName: "Skip Malicious Users" + SKIP_PROCESSING_MUM ClientSrcRuleAction = 2 + // x-displayName: "Skip IP Reputation" + SKIP_PROCESSING_IP_REPUTATION ClientSrcRuleAction = 3 + // x-displayName: "Skip API Protection" + SKIP_PROCESSING_API_PROTECTION ClientSrcRuleAction = 4 + // x-displayName: "Skip Open API Specification Validation" + SKIP_PROCESSING_OAS_VALIDATION ClientSrcRuleAction = 5 + // x-displayName: "Skip DDoS Protection" + SKIP_PROCESSING_DDOS_PROTECTION ClientSrcRuleAction = 6 + // x-displayName: "Skip Threat Mesh" + SKIP_PROCESSING_THREAT_MESH ClientSrcRuleAction = 7 +) + +var ClientSrcRuleAction_name = map[int32]string{ + 0: "SKIP_PROCESSING_WAF", + 1: "SKIP_PROCESSING_BOT", + 2: "SKIP_PROCESSING_MUM", + 3: "SKIP_PROCESSING_IP_REPUTATION", + 4: "SKIP_PROCESSING_API_PROTECTION", + 5: "SKIP_PROCESSING_OAS_VALIDATION", + 6: "SKIP_PROCESSING_DDOS_PROTECTION", + 7: "SKIP_PROCESSING_THREAT_MESH", +} + +var ClientSrcRuleAction_value = map[string]int32{ + "SKIP_PROCESSING_WAF": 0, + "SKIP_PROCESSING_BOT": 1, + "SKIP_PROCESSING_MUM": 2, + "SKIP_PROCESSING_IP_REPUTATION": 3, + "SKIP_PROCESSING_API_PROTECTION": 4, + "SKIP_PROCESSING_OAS_VALIDATION": 5, + "SKIP_PROCESSING_DDOS_PROTECTION": 6, + "SKIP_PROCESSING_THREAT_MESH": 7, +} + +func (ClientSrcRuleAction) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{0} +} + +// service policy list +// +// x-displayName: "Service Policy List" +// List of service policies. +type ServicePolicyList struct { + // policies + // + // x-displayName: "Policies" + // x-required + // Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the + // correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result. + // For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the + // current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated. + // If all policies are evaluated and none match, then the request will be denied by default. + Policies []*views.ObjectRefType `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` +} + +func (m *ServicePolicyList) Reset() { *m = ServicePolicyList{} } +func (*ServicePolicyList) ProtoMessage() {} +func (*ServicePolicyList) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{0} +} +func (m *ServicePolicyList) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ServicePolicyList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ServicePolicyList) XXX_Merge(src proto.Message) { + xxx_messageInfo_ServicePolicyList.Merge(m, src) +} +func (m *ServicePolicyList) XXX_Size() int { + return m.Size() +} +func (m *ServicePolicyList) XXX_DiscardUnknown() { + xxx_messageInfo_ServicePolicyList.DiscardUnknown(m) +} + +var xxx_messageInfo_ServicePolicyList proto.InternalMessageInfo + +func (m *ServicePolicyList) GetPolicies() []*views.ObjectRefType { + if m != nil { + return m.Policies + } + return nil +} + +// enable challenge +// +// x-displayName: "Enable Malicious User Challenge" +// Configure auto mitigation i.e risk based challenges for malicious users +type EnableChallenge struct { + // Malicious user mitigation choice + // + // x-displayName: "Malicious User Mitigation Settings" + // Settings that specify the actions to be taken when malicious users are determined to be at different threat levels. + // User's activity is monitored and continuously analyzed for malicious behavior. From this analysis, a threat-level + // is assigned to each user. The settings defined in malicious user mitigation specify what mitigation actions to take + // for user determined to be at different threat levels. + // + // Types that are valid to be assigned to MaliciousUserMitigationChoice: + // *EnableChallenge_DefaultMitigationSettings + // *EnableChallenge_MaliciousUserMitigation + MaliciousUserMitigationChoice isEnableChallenge_MaliciousUserMitigationChoice `protobuf_oneof:"malicious_user_mitigation_choice"` + // JavaScript challenge parameters choice + // + // x-displayName: "JavaScript Challenge Parameters" + // Select Default or Custom Parameters + // + // Types that are valid to be assigned to JsChallengeParametersChoice: + // *EnableChallenge_DefaultJsChallengeParameters + // *EnableChallenge_JsChallengeParameters + JsChallengeParametersChoice isEnableChallenge_JsChallengeParametersChoice `protobuf_oneof:"js_challenge_parameters_choice"` + // Captcha challenge parameters choice + // + // x-displayName: "Captcha Challenge Parameters" + // Select Default or Custom Parameters + // + // Types that are valid to be assigned to CaptchaChallengeParametersChoice: + // *EnableChallenge_DefaultCaptchaChallengeParameters + // *EnableChallenge_CaptchaChallengeParameters + CaptchaChallengeParametersChoice isEnableChallenge_CaptchaChallengeParametersChoice `protobuf_oneof:"captcha_challenge_parameters_choice"` +} + +func (m *EnableChallenge) Reset() { *m = EnableChallenge{} } +func (*EnableChallenge) ProtoMessage() {} +func (*EnableChallenge) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{1} +} +func (m *EnableChallenge) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *EnableChallenge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *EnableChallenge) XXX_Merge(src proto.Message) { + xxx_messageInfo_EnableChallenge.Merge(m, src) +} +func (m *EnableChallenge) XXX_Size() int { + return m.Size() +} +func (m *EnableChallenge) XXX_DiscardUnknown() { + xxx_messageInfo_EnableChallenge.DiscardUnknown(m) +} + +var xxx_messageInfo_EnableChallenge proto.InternalMessageInfo + +type isEnableChallenge_MaliciousUserMitigationChoice interface { + isEnableChallenge_MaliciousUserMitigationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isEnableChallenge_JsChallengeParametersChoice interface { + isEnableChallenge_JsChallengeParametersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isEnableChallenge_CaptchaChallengeParametersChoice interface { + isEnableChallenge_CaptchaChallengeParametersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type EnableChallenge_DefaultMitigationSettings struct { + DefaultMitigationSettings *schema.Empty `protobuf:"bytes,2,opt,name=default_mitigation_settings,json=defaultMitigationSettings,proto3,oneof" json:"default_mitigation_settings,omitempty"` +} +type EnableChallenge_MaliciousUserMitigation struct { + MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,3,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3,oneof" json:"malicious_user_mitigation,omitempty"` +} +type EnableChallenge_DefaultJsChallengeParameters struct { + DefaultJsChallengeParameters *schema.Empty `protobuf:"bytes,5,opt,name=default_js_challenge_parameters,json=defaultJsChallengeParameters,proto3,oneof" json:"default_js_challenge_parameters,omitempty"` +} +type EnableChallenge_JsChallengeParameters struct { + JsChallengeParameters *virtual_host.JavascriptChallengeType `protobuf:"bytes,6,opt,name=js_challenge_parameters,json=jsChallengeParameters,proto3,oneof" json:"js_challenge_parameters,omitempty"` +} +type EnableChallenge_DefaultCaptchaChallengeParameters struct { + DefaultCaptchaChallengeParameters *schema.Empty `protobuf:"bytes,8,opt,name=default_captcha_challenge_parameters,json=defaultCaptchaChallengeParameters,proto3,oneof" json:"default_captcha_challenge_parameters,omitempty"` +} +type EnableChallenge_CaptchaChallengeParameters struct { + CaptchaChallengeParameters *virtual_host.CaptchaChallengeType `protobuf:"bytes,9,opt,name=captcha_challenge_parameters,json=captchaChallengeParameters,proto3,oneof" json:"captcha_challenge_parameters,omitempty"` +} + +func (*EnableChallenge_DefaultMitigationSettings) isEnableChallenge_MaliciousUserMitigationChoice() {} +func (*EnableChallenge_MaliciousUserMitigation) isEnableChallenge_MaliciousUserMitigationChoice() {} +func (*EnableChallenge_DefaultJsChallengeParameters) isEnableChallenge_JsChallengeParametersChoice() { +} +func (*EnableChallenge_JsChallengeParameters) isEnableChallenge_JsChallengeParametersChoice() {} +func (*EnableChallenge_DefaultCaptchaChallengeParameters) isEnableChallenge_CaptchaChallengeParametersChoice() { +} +func (*EnableChallenge_CaptchaChallengeParameters) isEnableChallenge_CaptchaChallengeParametersChoice() { +} + +func (m *EnableChallenge) GetMaliciousUserMitigationChoice() isEnableChallenge_MaliciousUserMitigationChoice { + if m != nil { + return m.MaliciousUserMitigationChoice + } + return nil +} +func (m *EnableChallenge) GetJsChallengeParametersChoice() isEnableChallenge_JsChallengeParametersChoice { + if m != nil { + return m.JsChallengeParametersChoice + } + return nil +} +func (m *EnableChallenge) GetCaptchaChallengeParametersChoice() isEnableChallenge_CaptchaChallengeParametersChoice { + if m != nil { + return m.CaptchaChallengeParametersChoice + } + return nil +} + +func (m *EnableChallenge) GetDefaultMitigationSettings() *schema.Empty { + if x, ok := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_DefaultMitigationSettings); ok { + return x.DefaultMitigationSettings + } + return nil +} + +func (m *EnableChallenge) GetMaliciousUserMitigation() *views.ObjectRefType { + if x, ok := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_MaliciousUserMitigation); ok { + return x.MaliciousUserMitigation + } + return nil +} + +func (m *EnableChallenge) GetDefaultJsChallengeParameters() *schema.Empty { + if x, ok := m.GetJsChallengeParametersChoice().(*EnableChallenge_DefaultJsChallengeParameters); ok { + return x.DefaultJsChallengeParameters + } + return nil +} + +func (m *EnableChallenge) GetJsChallengeParameters() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetJsChallengeParametersChoice().(*EnableChallenge_JsChallengeParameters); ok { + return x.JsChallengeParameters + } + return nil +} + +func (m *EnableChallenge) GetDefaultCaptchaChallengeParameters() *schema.Empty { + if x, ok := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_DefaultCaptchaChallengeParameters); ok { + return x.DefaultCaptchaChallengeParameters + } + return nil +} + +func (m *EnableChallenge) GetCaptchaChallengeParameters() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_CaptchaChallengeParameters); ok { + return x.CaptchaChallengeParameters + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*EnableChallenge) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*EnableChallenge_DefaultMitigationSettings)(nil), + (*EnableChallenge_MaliciousUserMitigation)(nil), + (*EnableChallenge_DefaultJsChallengeParameters)(nil), + (*EnableChallenge_JsChallengeParameters)(nil), + (*EnableChallenge_DefaultCaptchaChallengeParameters)(nil), + (*EnableChallenge_CaptchaChallengeParameters)(nil), + } +} + +// policy based challenge +// +// x-displayName: "Policy Based Challenge" +// Specifies the settings for policy rule based challenge +type PolicyBasedChallenge struct { + // JavaScript challenge parameters choice + // + // x-displayName: "JavaScript Challenge Parameters" + // Select Default or Custom Parameters + // + // Types that are valid to be assigned to JsChallengeParametersChoice: + // *PolicyBasedChallenge_DefaultJsChallengeParameters + // *PolicyBasedChallenge_JsChallengeParameters + JsChallengeParametersChoice isPolicyBasedChallenge_JsChallengeParametersChoice `protobuf_oneof:"js_challenge_parameters_choice"` + // Captcha challenge parameters choice + // + // x-displayName: "Captcha Challenge Parameters" + // Select Default or Custom Parameters + // + // Types that are valid to be assigned to CaptchaChallengeParametersChoice: + // *PolicyBasedChallenge_DefaultCaptchaChallengeParameters + // *PolicyBasedChallenge_CaptchaChallengeParameters + CaptchaChallengeParametersChoice isPolicyBasedChallenge_CaptchaChallengeParametersChoice `protobuf_oneof:"captcha_challenge_parameters_choice"` + // Temporary blocking parameters choice + // + // x-displayName: "Temporary Blocking Parameters" + // Select Default or Custom Parameters + // + // Types that are valid to be assigned to TemporaryBlockingParametersChoice: + // *PolicyBasedChallenge_DefaultTemporaryBlockingParameters + // *PolicyBasedChallenge_TemporaryUserBlocking + TemporaryBlockingParametersChoice isPolicyBasedChallenge_TemporaryBlockingParametersChoice `protobuf_oneof:"temporary_blocking_parameters_choice"` + // Malicious user mitigation choice + // + // x-displayName: "Malicious User Mitigation Settings" + // Settings that specify the actions to be taken when malicious users are determined to be at different threat levels. + // User's activity is monitored and continuously analyzed for malicious behavior. From this analysis, a threat-level + // is assigned to each user. The settings defined in malicious user mitigation specify what mitigation actions to take + // for user determined to be at different threat levels. + // + // Types that are valid to be assigned to MaliciousUserMitigationChoice: + // *PolicyBasedChallenge_DefaultMitigationSettings + // *PolicyBasedChallenge_MaliciousUserMitigation + MaliciousUserMitigationChoice isPolicyBasedChallenge_MaliciousUserMitigationChoice `protobuf_oneof:"malicious_user_mitigation_choice"` + // challenge choice + // + // x-displayName: "Challenge Type" + // x-required + // Selection of different types of challenge. + // Selecting javascript or captcha shallenge will enable it for all traffic served by this load balancer. + // Policy based challenge can be used to define policy rules to enable or bypass challenge. + // + // Types that are valid to be assigned to ChallengeChoice: + // *PolicyBasedChallenge_NoChallenge + // *PolicyBasedChallenge_AlwaysEnableJsChallenge + // *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge + ChallengeChoice isPolicyBasedChallenge_ChallengeChoice `protobuf_oneof:"challenge_choice"` + // Challenge rule list + // + // x-displayName: "Challenge rule list" + // list challenge rules to be used in policy based challenge + RuleList *ChallengeRuleList `protobuf:"bytes,18,opt,name=rule_list,json=ruleList,proto3" json:"rule_list,omitempty"` +} + +func (m *PolicyBasedChallenge) Reset() { *m = PolicyBasedChallenge{} } +func (*PolicyBasedChallenge) ProtoMessage() {} +func (*PolicyBasedChallenge) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{2} +} +func (m *PolicyBasedChallenge) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *PolicyBasedChallenge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *PolicyBasedChallenge) XXX_Merge(src proto.Message) { + xxx_messageInfo_PolicyBasedChallenge.Merge(m, src) +} +func (m *PolicyBasedChallenge) XXX_Size() int { + return m.Size() +} +func (m *PolicyBasedChallenge) XXX_DiscardUnknown() { + xxx_messageInfo_PolicyBasedChallenge.DiscardUnknown(m) +} + +var xxx_messageInfo_PolicyBasedChallenge proto.InternalMessageInfo + +type isPolicyBasedChallenge_JsChallengeParametersChoice interface { + isPolicyBasedChallenge_JsChallengeParametersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isPolicyBasedChallenge_CaptchaChallengeParametersChoice interface { + isPolicyBasedChallenge_CaptchaChallengeParametersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isPolicyBasedChallenge_TemporaryBlockingParametersChoice interface { + isPolicyBasedChallenge_TemporaryBlockingParametersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isPolicyBasedChallenge_MaliciousUserMitigationChoice interface { + isPolicyBasedChallenge_MaliciousUserMitigationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isPolicyBasedChallenge_ChallengeChoice interface { + isPolicyBasedChallenge_ChallengeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type PolicyBasedChallenge_DefaultJsChallengeParameters struct { + DefaultJsChallengeParameters *schema.Empty `protobuf:"bytes,2,opt,name=default_js_challenge_parameters,json=defaultJsChallengeParameters,proto3,oneof" json:"default_js_challenge_parameters,omitempty"` +} +type PolicyBasedChallenge_JsChallengeParameters struct { + JsChallengeParameters *virtual_host.JavascriptChallengeType `protobuf:"bytes,3,opt,name=js_challenge_parameters,json=jsChallengeParameters,proto3,oneof" json:"js_challenge_parameters,omitempty"` +} +type PolicyBasedChallenge_DefaultCaptchaChallengeParameters struct { + DefaultCaptchaChallengeParameters *schema.Empty `protobuf:"bytes,5,opt,name=default_captcha_challenge_parameters,json=defaultCaptchaChallengeParameters,proto3,oneof" json:"default_captcha_challenge_parameters,omitempty"` +} +type PolicyBasedChallenge_CaptchaChallengeParameters struct { + CaptchaChallengeParameters *virtual_host.CaptchaChallengeType `protobuf:"bytes,6,opt,name=captcha_challenge_parameters,json=captchaChallengeParameters,proto3,oneof" json:"captcha_challenge_parameters,omitempty"` +} +type PolicyBasedChallenge_DefaultTemporaryBlockingParameters struct { + DefaultTemporaryBlockingParameters *schema.Empty `protobuf:"bytes,8,opt,name=default_temporary_blocking_parameters,json=defaultTemporaryBlockingParameters,proto3,oneof" json:"default_temporary_blocking_parameters,omitempty"` +} +type PolicyBasedChallenge_TemporaryUserBlocking struct { + TemporaryUserBlocking *virtual_host.TemporaryUserBlockingType `protobuf:"bytes,9,opt,name=temporary_user_blocking,json=temporaryUserBlocking,proto3,oneof" json:"temporary_user_blocking,omitempty"` +} +type PolicyBasedChallenge_DefaultMitigationSettings struct { + DefaultMitigationSettings *schema.Empty `protobuf:"bytes,11,opt,name=default_mitigation_settings,json=defaultMitigationSettings,proto3,oneof" json:"default_mitigation_settings,omitempty"` +} +type PolicyBasedChallenge_MaliciousUserMitigation struct { + MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,12,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3,oneof" json:"malicious_user_mitigation,omitempty"` +} +type PolicyBasedChallenge_NoChallenge struct { + NoChallenge *schema.Empty `protobuf:"bytes,14,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` +} +type PolicyBasedChallenge_AlwaysEnableJsChallenge struct { + AlwaysEnableJsChallenge *schema.Empty `protobuf:"bytes,15,opt,name=always_enable_js_challenge,json=alwaysEnableJsChallenge,proto3,oneof" json:"always_enable_js_challenge,omitempty"` +} +type PolicyBasedChallenge_AlwaysEnableCaptchaChallenge struct { + AlwaysEnableCaptchaChallenge *schema.Empty `protobuf:"bytes,16,opt,name=always_enable_captcha_challenge,json=alwaysEnableCaptchaChallenge,proto3,oneof" json:"always_enable_captcha_challenge,omitempty"` +} + +func (*PolicyBasedChallenge_DefaultJsChallengeParameters) isPolicyBasedChallenge_JsChallengeParametersChoice() { +} +func (*PolicyBasedChallenge_JsChallengeParameters) isPolicyBasedChallenge_JsChallengeParametersChoice() { +} +func (*PolicyBasedChallenge_DefaultCaptchaChallengeParameters) isPolicyBasedChallenge_CaptchaChallengeParametersChoice() { +} +func (*PolicyBasedChallenge_CaptchaChallengeParameters) isPolicyBasedChallenge_CaptchaChallengeParametersChoice() { +} +func (*PolicyBasedChallenge_DefaultTemporaryBlockingParameters) isPolicyBasedChallenge_TemporaryBlockingParametersChoice() { +} +func (*PolicyBasedChallenge_TemporaryUserBlocking) isPolicyBasedChallenge_TemporaryBlockingParametersChoice() { +} +func (*PolicyBasedChallenge_DefaultMitigationSettings) isPolicyBasedChallenge_MaliciousUserMitigationChoice() { +} +func (*PolicyBasedChallenge_MaliciousUserMitigation) isPolicyBasedChallenge_MaliciousUserMitigationChoice() { +} +func (*PolicyBasedChallenge_NoChallenge) isPolicyBasedChallenge_ChallengeChoice() {} +func (*PolicyBasedChallenge_AlwaysEnableJsChallenge) isPolicyBasedChallenge_ChallengeChoice() {} +func (*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) isPolicyBasedChallenge_ChallengeChoice() {} + +func (m *PolicyBasedChallenge) GetJsChallengeParametersChoice() isPolicyBasedChallenge_JsChallengeParametersChoice { + if m != nil { + return m.JsChallengeParametersChoice + } + return nil +} +func (m *PolicyBasedChallenge) GetCaptchaChallengeParametersChoice() isPolicyBasedChallenge_CaptchaChallengeParametersChoice { + if m != nil { + return m.CaptchaChallengeParametersChoice + } + return nil +} +func (m *PolicyBasedChallenge) GetTemporaryBlockingParametersChoice() isPolicyBasedChallenge_TemporaryBlockingParametersChoice { + if m != nil { + return m.TemporaryBlockingParametersChoice + } + return nil +} +func (m *PolicyBasedChallenge) GetMaliciousUserMitigationChoice() isPolicyBasedChallenge_MaliciousUserMitigationChoice { + if m != nil { + return m.MaliciousUserMitigationChoice + } + return nil +} +func (m *PolicyBasedChallenge) GetChallengeChoice() isPolicyBasedChallenge_ChallengeChoice { + if m != nil { + return m.ChallengeChoice + } + return nil +} + +func (m *PolicyBasedChallenge) GetDefaultJsChallengeParameters() *schema.Empty { + if x, ok := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_DefaultJsChallengeParameters); ok { + return x.DefaultJsChallengeParameters + } + return nil +} + +func (m *PolicyBasedChallenge) GetJsChallengeParameters() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_JsChallengeParameters); ok { + return x.JsChallengeParameters + } + return nil +} + +func (m *PolicyBasedChallenge) GetDefaultCaptchaChallengeParameters() *schema.Empty { + if x, ok := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_DefaultCaptchaChallengeParameters); ok { + return x.DefaultCaptchaChallengeParameters + } + return nil +} + +func (m *PolicyBasedChallenge) GetCaptchaChallengeParameters() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_CaptchaChallengeParameters); ok { + return x.CaptchaChallengeParameters + } + return nil +} + +func (m *PolicyBasedChallenge) GetDefaultTemporaryBlockingParameters() *schema.Empty { + if x, ok := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_DefaultTemporaryBlockingParameters); ok { + return x.DefaultTemporaryBlockingParameters + } + return nil +} + +func (m *PolicyBasedChallenge) GetTemporaryUserBlocking() *virtual_host.TemporaryUserBlockingType { + if x, ok := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_TemporaryUserBlocking); ok { + return x.TemporaryUserBlocking + } + return nil +} + +func (m *PolicyBasedChallenge) GetDefaultMitigationSettings() *schema.Empty { + if x, ok := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_DefaultMitigationSettings); ok { + return x.DefaultMitigationSettings + } + return nil +} + +func (m *PolicyBasedChallenge) GetMaliciousUserMitigation() *views.ObjectRefType { + if x, ok := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_MaliciousUserMitigation); ok { + return x.MaliciousUserMitigation + } + return nil +} + +func (m *PolicyBasedChallenge) GetNoChallenge() *schema.Empty { + if x, ok := m.GetChallengeChoice().(*PolicyBasedChallenge_NoChallenge); ok { + return x.NoChallenge + } + return nil +} + +func (m *PolicyBasedChallenge) GetAlwaysEnableJsChallenge() *schema.Empty { + if x, ok := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableJsChallenge); ok { + return x.AlwaysEnableJsChallenge + } + return nil +} + +func (m *PolicyBasedChallenge) GetAlwaysEnableCaptchaChallenge() *schema.Empty { + if x, ok := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge); ok { + return x.AlwaysEnableCaptchaChallenge + } + return nil +} + +func (m *PolicyBasedChallenge) GetRuleList() *ChallengeRuleList { + if m != nil { + return m.RuleList + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*PolicyBasedChallenge) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*PolicyBasedChallenge_DefaultJsChallengeParameters)(nil), + (*PolicyBasedChallenge_JsChallengeParameters)(nil), + (*PolicyBasedChallenge_DefaultCaptchaChallengeParameters)(nil), + (*PolicyBasedChallenge_CaptchaChallengeParameters)(nil), + (*PolicyBasedChallenge_DefaultTemporaryBlockingParameters)(nil), + (*PolicyBasedChallenge_TemporaryUserBlocking)(nil), + (*PolicyBasedChallenge_DefaultMitigationSettings)(nil), + (*PolicyBasedChallenge_MaliciousUserMitigation)(nil), + (*PolicyBasedChallenge_NoChallenge)(nil), + (*PolicyBasedChallenge_AlwaysEnableJsChallenge)(nil), + (*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge)(nil), + } +} + +// Challenge Rule +// +// x-displayName: "Challenge Rule" +// Challenge rule +type ChallengeRule struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Challenge Rule Specification" + // x-required + // Specification for the rule including match predicates and actions. + Spec *service_policy_rule.ChallengeRuleSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ChallengeRule) Reset() { *m = ChallengeRule{} } +func (*ChallengeRule) ProtoMessage() {} +func (*ChallengeRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{3} +} +func (m *ChallengeRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ChallengeRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ChallengeRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_ChallengeRule.Merge(m, src) +} +func (m *ChallengeRule) XXX_Size() int { + return m.Size() +} +func (m *ChallengeRule) XXX_DiscardUnknown() { + xxx_messageInfo_ChallengeRule.DiscardUnknown(m) +} + +var xxx_messageInfo_ChallengeRule proto.InternalMessageInfo + +func (m *ChallengeRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ChallengeRule) GetSpec() *service_policy_rule.ChallengeRuleSpec { + if m != nil { + return m.Spec + } + return nil +} + +// Challenge Rule List +// +// x-displayName: "Challenge Rule List" +// List of challenge rules to be used in policy based challenge +type ChallengeRuleList struct { + // Rules + // + // x-displayName: "Rules" + // Rules that specify the match conditions and challenge type to be launched. + // When a challenge type is selected to be always enabled, + // these rules can be used to disable challenge or launch a different challenge for requests that match the specified conditions + Rules []*ChallengeRule `protobuf:"bytes,2,rep,name=rules,proto3" json:"rules,omitempty"` +} + +func (m *ChallengeRuleList) Reset() { *m = ChallengeRuleList{} } +func (*ChallengeRuleList) ProtoMessage() {} +func (*ChallengeRuleList) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{4} +} +func (m *ChallengeRuleList) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ChallengeRuleList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ChallengeRuleList) XXX_Merge(src proto.Message) { + xxx_messageInfo_ChallengeRuleList.Merge(m, src) +} +func (m *ChallengeRuleList) XXX_Size() int { + return m.Size() +} +func (m *ChallengeRuleList) XXX_DiscardUnknown() { + xxx_messageInfo_ChallengeRuleList.DiscardUnknown(m) +} + +var xxx_messageInfo_ChallengeRuleList proto.InternalMessageInfo + +func (m *ChallengeRuleList) GetRules() []*ChallengeRule { + if m != nil { + return m.Rules + } + return nil +} + +// IP Threat Category List Type +// +// x-displayName: "IP Threat Category List" +// List of ip threat categories +type IPThreatCategoryListType struct { + // IP Threat Categories + // + // x-displayName: "List of IP Threat Categories to choose" + // x-required + // If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied. + IpThreatCategories []policy.IPThreatCategory `protobuf:"varint,1,rep,packed,name=ip_threat_categories,json=ipThreatCategories,proto3,enum=ves.io.schema.policy.IPThreatCategory" json:"ip_threat_categories,omitempty"` +} + +func (m *IPThreatCategoryListType) Reset() { *m = IPThreatCategoryListType{} } +func (*IPThreatCategoryListType) ProtoMessage() {} +func (*IPThreatCategoryListType) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{5} +} +func (m *IPThreatCategoryListType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *IPThreatCategoryListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *IPThreatCategoryListType) XXX_Merge(src proto.Message) { + xxx_messageInfo_IPThreatCategoryListType.Merge(m, src) +} +func (m *IPThreatCategoryListType) XXX_Size() int { + return m.Size() +} +func (m *IPThreatCategoryListType) XXX_DiscardUnknown() { + xxx_messageInfo_IPThreatCategoryListType.DiscardUnknown(m) +} + +var xxx_messageInfo_IPThreatCategoryListType proto.InternalMessageInfo + +func (m *IPThreatCategoryListType) GetIpThreatCategories() []policy.IPThreatCategory { + if m != nil { + return m.IpThreatCategories + } + return nil +} + +// HTTP Header +// +// x-displayName: "HTTP Header" +// Request header name and value pairs +type HttpHeaderMatcherList struct { + // headers + // + // x-displayName: "HTTP Headers" + // x-required + // List of HTTP header name and value pairs + Headers []*schema.HeaderMatcherType `protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty"` +} + +func (m *HttpHeaderMatcherList) Reset() { *m = HttpHeaderMatcherList{} } +func (*HttpHeaderMatcherList) ProtoMessage() {} +func (*HttpHeaderMatcherList) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{6} +} +func (m *HttpHeaderMatcherList) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *HttpHeaderMatcherList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *HttpHeaderMatcherList) XXX_Merge(src proto.Message) { + xxx_messageInfo_HttpHeaderMatcherList.Merge(m, src) +} +func (m *HttpHeaderMatcherList) XXX_Size() int { + return m.Size() +} +func (m *HttpHeaderMatcherList) XXX_DiscardUnknown() { + xxx_messageInfo_HttpHeaderMatcherList.DiscardUnknown(m) +} + +var xxx_messageInfo_HttpHeaderMatcherList proto.InternalMessageInfo + +func (m *HttpHeaderMatcherList) GetHeaders() []*schema.HeaderMatcherType { + if m != nil { + return m.Headers + } + return nil +} + +// SimpleClientSrcRule +// +// x-displayName: "Client Rule" +// Simple client source rule specifies the sources to be blocked or trusted (skip WAF) +type SimpleClientSrcRule struct { + // Client Identifier + // + // x-displayName: "Client Identifier" + // x-required + // Client identifier that should be used for the client rule + // + // Types that are valid to be assigned to ClientSourceChoice: + // *SimpleClientSrcRule_IpPrefix + // *SimpleClientSrcRule_AsNumber + // *SimpleClientSrcRule_HttpHeader + // *SimpleClientSrcRule_UserIdentifier + ClientSourceChoice isSimpleClientSrcRule_ClientSourceChoice `protobuf_oneof:"client_source_choice"` + // expiration timestamp + // + // x-displayName: "Expiration Timestamp" + // x-example: "2019-12-31:44:34.171543432Z" + // The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in + // the configuration but is not applied anymore. + ExpirationTimestamp *types.Timestamp `protobuf:"bytes,9,opt,name=expiration_timestamp,json=expirationTimestamp,proto3" json:"expiration_timestamp,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,10,opt,name=metadata,proto3" json:"metadata,omitempty"` + // action + // + // x-displayName: "Action" + // Action that should be taken when client identifier matches the rule + // + // Types that are valid to be assigned to ActionChoice: + // *SimpleClientSrcRule_SkipProcessing + // *SimpleClientSrcRule_WafSkipProcessing + // *SimpleClientSrcRule_BotSkipProcessing + ActionChoice isSimpleClientSrcRule_ActionChoice `protobuf_oneof:"action_choice"` + // actions + // + // x-displayName: "Actions" + // Actions that should be taken when client identifier matches the rule + Actions []ClientSrcRuleAction `protobuf:"varint,16,rep,packed,name=actions,proto3,enum=ves.io.schema.views.common_waf.ClientSrcRuleAction" json:"actions,omitempty"` +} + +func (m *SimpleClientSrcRule) Reset() { *m = SimpleClientSrcRule{} } +func (*SimpleClientSrcRule) ProtoMessage() {} +func (*SimpleClientSrcRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{7} +} +func (m *SimpleClientSrcRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SimpleClientSrcRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SimpleClientSrcRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_SimpleClientSrcRule.Merge(m, src) +} +func (m *SimpleClientSrcRule) XXX_Size() int { + return m.Size() +} +func (m *SimpleClientSrcRule) XXX_DiscardUnknown() { + xxx_messageInfo_SimpleClientSrcRule.DiscardUnknown(m) +} + +var xxx_messageInfo_SimpleClientSrcRule proto.InternalMessageInfo + +type isSimpleClientSrcRule_ClientSourceChoice interface { + isSimpleClientSrcRule_ClientSourceChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isSimpleClientSrcRule_ActionChoice interface { + isSimpleClientSrcRule_ActionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type SimpleClientSrcRule_IpPrefix struct { + IpPrefix string `protobuf:"bytes,4,opt,name=ip_prefix,json=ipPrefix,proto3,oneof" json:"ip_prefix,omitempty"` +} +type SimpleClientSrcRule_AsNumber struct { + AsNumber uint32 `protobuf:"varint,5,opt,name=as_number,json=asNumber,proto3,oneof" json:"as_number,omitempty"` +} +type SimpleClientSrcRule_HttpHeader struct { + HttpHeader *HttpHeaderMatcherList `protobuf:"bytes,15,opt,name=http_header,json=httpHeader,proto3,oneof" json:"http_header,omitempty"` +} +type SimpleClientSrcRule_UserIdentifier struct { + UserIdentifier string `protobuf:"bytes,17,opt,name=user_identifier,json=userIdentifier,proto3,oneof" json:"user_identifier,omitempty"` +} +type SimpleClientSrcRule_SkipProcessing struct { + SkipProcessing *schema.Empty `protobuf:"bytes,12,opt,name=skip_processing,json=skipProcessing,proto3,oneof" json:"skip_processing,omitempty"` +} +type SimpleClientSrcRule_WafSkipProcessing struct { + WafSkipProcessing *schema.Empty `protobuf:"bytes,13,opt,name=waf_skip_processing,json=wafSkipProcessing,proto3,oneof" json:"waf_skip_processing,omitempty"` +} +type SimpleClientSrcRule_BotSkipProcessing struct { + BotSkipProcessing *schema.Empty `protobuf:"bytes,14,opt,name=bot_skip_processing,json=botSkipProcessing,proto3,oneof" json:"bot_skip_processing,omitempty"` +} + +func (*SimpleClientSrcRule_IpPrefix) isSimpleClientSrcRule_ClientSourceChoice() {} +func (*SimpleClientSrcRule_AsNumber) isSimpleClientSrcRule_ClientSourceChoice() {} +func (*SimpleClientSrcRule_HttpHeader) isSimpleClientSrcRule_ClientSourceChoice() {} +func (*SimpleClientSrcRule_UserIdentifier) isSimpleClientSrcRule_ClientSourceChoice() {} +func (*SimpleClientSrcRule_SkipProcessing) isSimpleClientSrcRule_ActionChoice() {} +func (*SimpleClientSrcRule_WafSkipProcessing) isSimpleClientSrcRule_ActionChoice() {} +func (*SimpleClientSrcRule_BotSkipProcessing) isSimpleClientSrcRule_ActionChoice() {} + +func (m *SimpleClientSrcRule) GetClientSourceChoice() isSimpleClientSrcRule_ClientSourceChoice { + if m != nil { + return m.ClientSourceChoice + } + return nil +} +func (m *SimpleClientSrcRule) GetActionChoice() isSimpleClientSrcRule_ActionChoice { + if m != nil { + return m.ActionChoice + } + return nil +} + +func (m *SimpleClientSrcRule) GetIpPrefix() string { + if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_IpPrefix); ok { + return x.IpPrefix + } + return "" +} + +func (m *SimpleClientSrcRule) GetAsNumber() uint32 { + if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_AsNumber); ok { + return x.AsNumber + } + return 0 +} + +func (m *SimpleClientSrcRule) GetHttpHeader() *HttpHeaderMatcherList { + if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_HttpHeader); ok { + return x.HttpHeader + } + return nil +} + +func (m *SimpleClientSrcRule) GetUserIdentifier() string { + if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_UserIdentifier); ok { + return x.UserIdentifier + } + return "" +} + +func (m *SimpleClientSrcRule) GetExpirationTimestamp() *types.Timestamp { + if m != nil { + return m.ExpirationTimestamp + } + return nil +} + +func (m *SimpleClientSrcRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *SimpleClientSrcRule) GetSkipProcessing() *schema.Empty { + if x, ok := m.GetActionChoice().(*SimpleClientSrcRule_SkipProcessing); ok { + return x.SkipProcessing + } + return nil +} + +func (m *SimpleClientSrcRule) GetWafSkipProcessing() *schema.Empty { + if x, ok := m.GetActionChoice().(*SimpleClientSrcRule_WafSkipProcessing); ok { + return x.WafSkipProcessing + } + return nil +} + +func (m *SimpleClientSrcRule) GetBotSkipProcessing() *schema.Empty { + if x, ok := m.GetActionChoice().(*SimpleClientSrcRule_BotSkipProcessing); ok { + return x.BotSkipProcessing + } + return nil +} + +func (m *SimpleClientSrcRule) GetActions() []ClientSrcRuleAction { + if m != nil { + return m.Actions + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*SimpleClientSrcRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*SimpleClientSrcRule_IpPrefix)(nil), + (*SimpleClientSrcRule_AsNumber)(nil), + (*SimpleClientSrcRule_HttpHeader)(nil), + (*SimpleClientSrcRule_UserIdentifier)(nil), + (*SimpleClientSrcRule_SkipProcessing)(nil), + (*SimpleClientSrcRule_WafSkipProcessing)(nil), + (*SimpleClientSrcRule_BotSkipProcessing)(nil), + } +} + +// RateLimitConfigType +// +// x-displayName: "RateLimitConfigType" +type RateLimitConfigType struct { + // rate_limiter + // + // x-displayName: "Request Rate Limiter" + // Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter. + RateLimiter *rate_limiter.RateLimitValue `protobuf:"bytes,1,opt,name=rate_limiter,json=rateLimiter,proto3" json:"rate_limiter,omitempty"` + // IP Allowed List + // + // x-displayName: "IP(s) Allowed without Rate Limiting" + // x-required + // Allowed List of IPs for which rate limiting will be disabled. + // + // Types that are valid to be assigned to IpAllowedListChoice: + // *RateLimitConfigType_NoIpAllowedList + // *RateLimitConfigType_IpAllowedList + // *RateLimitConfigType_CustomIpAllowedList + IpAllowedListChoice isRateLimitConfigType_IpAllowedListChoice `protobuf_oneof:"ip_allowed_list_choice"` + // policy choice + // + // x-displayName: "Rate Limiter Policies" + // x-required + // Manage rate limiter policies. Note that an implicit policy based on the IP Allowed List is always applied as the first policy. + // + // Types that are valid to be assigned to PolicyChoice: + // *RateLimitConfigType_NoPolicies + // *RateLimitConfigType_Policies + PolicyChoice isRateLimitConfigType_PolicyChoice `protobuf_oneof:"policy_choice"` +} + +func (m *RateLimitConfigType) Reset() { *m = RateLimitConfigType{} } +func (*RateLimitConfigType) ProtoMessage() {} +func (*RateLimitConfigType) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{8} +} +func (m *RateLimitConfigType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RateLimitConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *RateLimitConfigType) XXX_Merge(src proto.Message) { + xxx_messageInfo_RateLimitConfigType.Merge(m, src) +} +func (m *RateLimitConfigType) XXX_Size() int { + return m.Size() +} +func (m *RateLimitConfigType) XXX_DiscardUnknown() { + xxx_messageInfo_RateLimitConfigType.DiscardUnknown(m) +} + +var xxx_messageInfo_RateLimitConfigType proto.InternalMessageInfo + +type isRateLimitConfigType_IpAllowedListChoice interface { + isRateLimitConfigType_IpAllowedListChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isRateLimitConfigType_PolicyChoice interface { + isRateLimitConfigType_PolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type RateLimitConfigType_NoIpAllowedList struct { + NoIpAllowedList *schema.Empty `protobuf:"bytes,3,opt,name=no_ip_allowed_list,json=noIpAllowedList,proto3,oneof" json:"no_ip_allowed_list,omitempty"` +} +type RateLimitConfigType_IpAllowedList struct { + IpAllowedList *views.PrefixStringListType `protobuf:"bytes,4,opt,name=ip_allowed_list,json=ipAllowedList,proto3,oneof" json:"ip_allowed_list,omitempty"` +} +type RateLimitConfigType_CustomIpAllowedList struct { + CustomIpAllowedList *CustomIpAllowedList `protobuf:"bytes,5,opt,name=custom_ip_allowed_list,json=customIpAllowedList,proto3,oneof" json:"custom_ip_allowed_list,omitempty"` +} +type RateLimitConfigType_NoPolicies struct { + NoPolicies *schema.Empty `protobuf:"bytes,12,opt,name=no_policies,json=noPolicies,proto3,oneof" json:"no_policies,omitempty"` +} +type RateLimitConfigType_Policies struct { + Policies *rate_limiter_policy.PolicyList `protobuf:"bytes,13,opt,name=policies,proto3,oneof" json:"policies,omitempty"` +} + +func (*RateLimitConfigType_NoIpAllowedList) isRateLimitConfigType_IpAllowedListChoice() {} +func (*RateLimitConfigType_IpAllowedList) isRateLimitConfigType_IpAllowedListChoice() {} +func (*RateLimitConfigType_CustomIpAllowedList) isRateLimitConfigType_IpAllowedListChoice() {} +func (*RateLimitConfigType_NoPolicies) isRateLimitConfigType_PolicyChoice() {} +func (*RateLimitConfigType_Policies) isRateLimitConfigType_PolicyChoice() {} + +func (m *RateLimitConfigType) GetIpAllowedListChoice() isRateLimitConfigType_IpAllowedListChoice { + if m != nil { + return m.IpAllowedListChoice + } + return nil +} +func (m *RateLimitConfigType) GetPolicyChoice() isRateLimitConfigType_PolicyChoice { + if m != nil { + return m.PolicyChoice + } + return nil +} + +func (m *RateLimitConfigType) GetRateLimiter() *rate_limiter.RateLimitValue { + if m != nil { + return m.RateLimiter + } + return nil +} + +func (m *RateLimitConfigType) GetNoIpAllowedList() *schema.Empty { + if x, ok := m.GetIpAllowedListChoice().(*RateLimitConfigType_NoIpAllowedList); ok { + return x.NoIpAllowedList + } + return nil +} + +func (m *RateLimitConfigType) GetIpAllowedList() *views.PrefixStringListType { + if x, ok := m.GetIpAllowedListChoice().(*RateLimitConfigType_IpAllowedList); ok { + return x.IpAllowedList + } + return nil +} + +func (m *RateLimitConfigType) GetCustomIpAllowedList() *CustomIpAllowedList { + if x, ok := m.GetIpAllowedListChoice().(*RateLimitConfigType_CustomIpAllowedList); ok { + return x.CustomIpAllowedList + } + return nil +} + +func (m *RateLimitConfigType) GetNoPolicies() *schema.Empty { + if x, ok := m.GetPolicyChoice().(*RateLimitConfigType_NoPolicies); ok { + return x.NoPolicies + } + return nil +} + +func (m *RateLimitConfigType) GetPolicies() *rate_limiter_policy.PolicyList { + if x, ok := m.GetPolicyChoice().(*RateLimitConfigType_Policies); ok { + return x.Policies + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*RateLimitConfigType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*RateLimitConfigType_NoIpAllowedList)(nil), + (*RateLimitConfigType_IpAllowedList)(nil), + (*RateLimitConfigType_CustomIpAllowedList)(nil), + (*RateLimitConfigType_NoPolicies)(nil), + (*RateLimitConfigType_Policies)(nil), + } +} + +// APIRateLimit +// +// x-displayName: "APIRateLimit" +type APIRateLimit struct { + // IP Allowed List + // + // x-displayName: "IP(s) Allowed without Rate Limiting" + // x-required + // Allowed List of IPs for which rate limiting will be disabled. + // + // Types that are valid to be assigned to IpAllowedListChoice: + // *APIRateLimit_NoIpAllowedList + // *APIRateLimit_IpAllowedList + // *APIRateLimit_CustomIpAllowedList + // *APIRateLimit_BypassRateLimitingRules + IpAllowedListChoice isAPIRateLimit_IpAllowedListChoice `protobuf_oneof:"ip_allowed_list_choice"` + // server_url_policy + // + // x-displayName: "Server URLs" + // Set of rules for entire domain or base path that contain multiple endpoints. + // Order is matter as it uses first match policy. + // For matching also specific endpoints you can use the API endpoint rules set bellow. + ServerUrlRules []*ServerUrlRule `protobuf:"bytes,6,rep,name=server_url_rules,json=serverUrlRules,proto3" json:"server_url_rules,omitempty"` + // api_endpoint_policy + // + // x-displayName: "API Endpoints" + // Sets of rules for a specific endpoints. + // Order is matter as it uses first match policy. + // For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above. + ApiEndpointRules []*ApiEndpointRule `protobuf:"bytes,7,rep,name=api_endpoint_rules,json=apiEndpointRules,proto3" json:"api_endpoint_rules,omitempty"` +} + +func (m *APIRateLimit) Reset() { *m = APIRateLimit{} } +func (*APIRateLimit) ProtoMessage() {} +func (*APIRateLimit) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{9} +} +func (m *APIRateLimit) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APIRateLimit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APIRateLimit) XXX_Merge(src proto.Message) { + xxx_messageInfo_APIRateLimit.Merge(m, src) +} +func (m *APIRateLimit) XXX_Size() int { + return m.Size() +} +func (m *APIRateLimit) XXX_DiscardUnknown() { + xxx_messageInfo_APIRateLimit.DiscardUnknown(m) +} + +var xxx_messageInfo_APIRateLimit proto.InternalMessageInfo + +type isAPIRateLimit_IpAllowedListChoice interface { + isAPIRateLimit_IpAllowedListChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type APIRateLimit_NoIpAllowedList struct { + NoIpAllowedList *schema.Empty `protobuf:"bytes,2,opt,name=no_ip_allowed_list,json=noIpAllowedList,proto3,oneof" json:"no_ip_allowed_list,omitempty"` +} +type APIRateLimit_IpAllowedList struct { + IpAllowedList *views.PrefixStringListType `protobuf:"bytes,3,opt,name=ip_allowed_list,json=ipAllowedList,proto3,oneof" json:"ip_allowed_list,omitempty"` +} +type APIRateLimit_CustomIpAllowedList struct { + CustomIpAllowedList *CustomIpAllowedList `protobuf:"bytes,4,opt,name=custom_ip_allowed_list,json=customIpAllowedList,proto3,oneof" json:"custom_ip_allowed_list,omitempty"` +} +type APIRateLimit_BypassRateLimitingRules struct { + BypassRateLimitingRules *BypassRateLimitingRules `protobuf:"bytes,5,opt,name=bypass_rate_limiting_rules,json=bypassRateLimitingRules,proto3,oneof" json:"bypass_rate_limiting_rules,omitempty"` +} + +func (*APIRateLimit_NoIpAllowedList) isAPIRateLimit_IpAllowedListChoice() {} +func (*APIRateLimit_IpAllowedList) isAPIRateLimit_IpAllowedListChoice() {} +func (*APIRateLimit_CustomIpAllowedList) isAPIRateLimit_IpAllowedListChoice() {} +func (*APIRateLimit_BypassRateLimitingRules) isAPIRateLimit_IpAllowedListChoice() {} + +func (m *APIRateLimit) GetIpAllowedListChoice() isAPIRateLimit_IpAllowedListChoice { + if m != nil { + return m.IpAllowedListChoice + } + return nil +} + +func (m *APIRateLimit) GetNoIpAllowedList() *schema.Empty { + if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_NoIpAllowedList); ok { + return x.NoIpAllowedList + } + return nil +} + +func (m *APIRateLimit) GetIpAllowedList() *views.PrefixStringListType { + if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_IpAllowedList); ok { + return x.IpAllowedList + } + return nil +} + +func (m *APIRateLimit) GetCustomIpAllowedList() *CustomIpAllowedList { + if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_CustomIpAllowedList); ok { + return x.CustomIpAllowedList + } + return nil +} + +func (m *APIRateLimit) GetBypassRateLimitingRules() *BypassRateLimitingRules { + if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_BypassRateLimitingRules); ok { + return x.BypassRateLimitingRules + } + return nil +} + +func (m *APIRateLimit) GetServerUrlRules() []*ServerUrlRule { + if m != nil { + return m.ServerUrlRules + } + return nil +} + +func (m *APIRateLimit) GetApiEndpointRules() []*ApiEndpointRule { + if m != nil { + return m.ApiEndpointRules + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*APIRateLimit) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*APIRateLimit_NoIpAllowedList)(nil), + (*APIRateLimit_IpAllowedList)(nil), + (*APIRateLimit_CustomIpAllowedList)(nil), + (*APIRateLimit_BypassRateLimitingRules)(nil), + } +} + +// BypassRateLimitingRule +// +// x-displayName: "Bypass Rate Limiting Rule" +type BypassRateLimitingRule struct { + // domain choices + // + // x-displayName: "Domain" + // x-required + // Choose if the rule will apply for all domains or a specific one. + // + // Types that are valid to be assigned to DomainChoice: + // *BypassRateLimitingRule_AnyDomain + // *BypassRateLimitingRule_SpecificDomain + DomainChoice isBypassRateLimitingRule_DomainChoice `protobuf_oneof:"domain_choice"` + // TYpe + // + // x-displayName: "Type" + // x-required + // + // Types that are valid to be assigned to DestinationType: + // *BypassRateLimitingRule_AnyUrl + // *BypassRateLimitingRule_BasePath + // *BypassRateLimitingRule_ApiEndpoint + // *BypassRateLimitingRule_ApiGroups + DestinationType isBypassRateLimitingRule_DestinationType `protobuf_oneof:"destination_type"` + // request_matcher + // + // x-displayName: "Request" + // Conditions related to the request, such as query parameters, headers, etc. + RequestMatcher *policy.RequestMatcher `protobuf:"bytes,9,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` + // client_matcher + // + // x-displayName: "Clients" + // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. + ClientMatcher *policy.ClientMatcher `protobuf:"bytes,10,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` +} + +func (m *BypassRateLimitingRule) Reset() { *m = BypassRateLimitingRule{} } +func (*BypassRateLimitingRule) ProtoMessage() {} +func (*BypassRateLimitingRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{10} +} +func (m *BypassRateLimitingRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *BypassRateLimitingRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *BypassRateLimitingRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_BypassRateLimitingRule.Merge(m, src) +} +func (m *BypassRateLimitingRule) XXX_Size() int { + return m.Size() +} +func (m *BypassRateLimitingRule) XXX_DiscardUnknown() { + xxx_messageInfo_BypassRateLimitingRule.DiscardUnknown(m) +} + +var xxx_messageInfo_BypassRateLimitingRule proto.InternalMessageInfo + +type isBypassRateLimitingRule_DomainChoice interface { + isBypassRateLimitingRule_DomainChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isBypassRateLimitingRule_DestinationType interface { + isBypassRateLimitingRule_DestinationType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type BypassRateLimitingRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,2,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type BypassRateLimitingRule_SpecificDomain struct { + SpecificDomain string `protobuf:"bytes,3,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` +} +type BypassRateLimitingRule_AnyUrl struct { + AnyUrl *schema.Empty `protobuf:"bytes,5,opt,name=any_url,json=anyUrl,proto3,oneof" json:"any_url,omitempty"` +} +type BypassRateLimitingRule_BasePath struct { + BasePath string `protobuf:"bytes,6,opt,name=base_path,json=basePath,proto3,oneof" json:"base_path,omitempty"` +} +type BypassRateLimitingRule_ApiEndpoint struct { + ApiEndpoint *ApiEndpointDetails `protobuf:"bytes,7,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof" json:"api_endpoint,omitempty"` +} +type BypassRateLimitingRule_ApiGroups struct { + ApiGroups *APIGroups `protobuf:"bytes,8,opt,name=api_groups,json=apiGroups,proto3,oneof" json:"api_groups,omitempty"` +} + +func (*BypassRateLimitingRule_AnyDomain) isBypassRateLimitingRule_DomainChoice() {} +func (*BypassRateLimitingRule_SpecificDomain) isBypassRateLimitingRule_DomainChoice() {} +func (*BypassRateLimitingRule_AnyUrl) isBypassRateLimitingRule_DestinationType() {} +func (*BypassRateLimitingRule_BasePath) isBypassRateLimitingRule_DestinationType() {} +func (*BypassRateLimitingRule_ApiEndpoint) isBypassRateLimitingRule_DestinationType() {} +func (*BypassRateLimitingRule_ApiGroups) isBypassRateLimitingRule_DestinationType() {} + +func (m *BypassRateLimitingRule) GetDomainChoice() isBypassRateLimitingRule_DomainChoice { + if m != nil { + return m.DomainChoice + } + return nil +} +func (m *BypassRateLimitingRule) GetDestinationType() isBypassRateLimitingRule_DestinationType { + if m != nil { + return m.DestinationType + } + return nil +} + +func (m *BypassRateLimitingRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainChoice().(*BypassRateLimitingRule_AnyDomain); ok { + return x.AnyDomain + } + return nil +} + +func (m *BypassRateLimitingRule) GetSpecificDomain() string { + if x, ok := m.GetDomainChoice().(*BypassRateLimitingRule_SpecificDomain); ok { + return x.SpecificDomain + } + return "" +} + +func (m *BypassRateLimitingRule) GetAnyUrl() *schema.Empty { + if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_AnyUrl); ok { + return x.AnyUrl + } + return nil +} + +func (m *BypassRateLimitingRule) GetBasePath() string { + if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_BasePath); ok { + return x.BasePath + } + return "" +} + +func (m *BypassRateLimitingRule) GetApiEndpoint() *ApiEndpointDetails { + if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_ApiEndpoint); ok { + return x.ApiEndpoint + } + return nil +} + +func (m *BypassRateLimitingRule) GetApiGroups() *APIGroups { + if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_ApiGroups); ok { + return x.ApiGroups + } + return nil +} + +func (m *BypassRateLimitingRule) GetRequestMatcher() *policy.RequestMatcher { + if m != nil { + return m.RequestMatcher + } + return nil +} + +func (m *BypassRateLimitingRule) GetClientMatcher() *policy.ClientMatcher { + if m != nil { + return m.ClientMatcher + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*BypassRateLimitingRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*BypassRateLimitingRule_AnyDomain)(nil), + (*BypassRateLimitingRule_SpecificDomain)(nil), + (*BypassRateLimitingRule_AnyUrl)(nil), + (*BypassRateLimitingRule_BasePath)(nil), + (*BypassRateLimitingRule_ApiEndpoint)(nil), + (*BypassRateLimitingRule_ApiGroups)(nil), + } +} + +// api groups +// +// x-displayName: "API Groups" +type APIGroups struct { + // api group + // + // x-displayName: "API Groups" + // x-required + ApiGroups []string `protobuf:"bytes,2,rep,name=api_groups,json=apiGroups,proto3" json:"api_groups,omitempty"` +} + +func (m *APIGroups) Reset() { *m = APIGroups{} } +func (*APIGroups) ProtoMessage() {} +func (*APIGroups) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{11} +} +func (m *APIGroups) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APIGroups) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APIGroups) XXX_Merge(src proto.Message) { + xxx_messageInfo_APIGroups.Merge(m, src) +} +func (m *APIGroups) XXX_Size() int { + return m.Size() +} +func (m *APIGroups) XXX_DiscardUnknown() { + xxx_messageInfo_APIGroups.DiscardUnknown(m) +} + +var xxx_messageInfo_APIGroups proto.InternalMessageInfo + +func (m *APIGroups) GetApiGroups() []string { + if m != nil { + return m.ApiGroups + } + return nil +} + +// ApiEndpointDetails +// +// x-displayName: "API Endpoint" +// This defines api endpoint +type ApiEndpointDetails struct { + // Path + // + // x-displayName: "Path" + // x-required + // x-example: "/api/v1/login" + // Path to be matched + Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` + // Methods + // + // x-displayName: "Methods" + // x-example: "GET" + // Methods to be matched + Methods []schema.HttpMethod `protobuf:"varint,2,rep,packed,name=methods,proto3,enum=ves.io.schema.HttpMethod" json:"methods,omitempty"` +} + +func (m *ApiEndpointDetails) Reset() { *m = ApiEndpointDetails{} } +func (*ApiEndpointDetails) ProtoMessage() {} +func (*ApiEndpointDetails) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{12} +} +func (m *ApiEndpointDetails) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ApiEndpointDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ApiEndpointDetails) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApiEndpointDetails.Merge(m, src) +} +func (m *ApiEndpointDetails) XXX_Size() int { + return m.Size() +} +func (m *ApiEndpointDetails) XXX_DiscardUnknown() { + xxx_messageInfo_ApiEndpointDetails.DiscardUnknown(m) +} + +var xxx_messageInfo_ApiEndpointDetails proto.InternalMessageInfo + +func (m *ApiEndpointDetails) GetPath() string { + if m != nil { + return m.Path + } + return "" +} + +func (m *ApiEndpointDetails) GetMethods() []schema.HttpMethod { + if m != nil { + return m.Methods + } + return nil +} + +// bypass_rate_limiting_policy +// +// x-displayName: "Bypass Rate Limiting" +// This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting. +type BypassRateLimitingRules struct { + // bypass_rate_limiting_policy + // + // x-displayName: "Bypass Rate Limiting" + // This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting. + BypassRateLimitingRules []*BypassRateLimitingRule `protobuf:"bytes,7,rep,name=bypass_rate_limiting_rules,json=bypassRateLimitingRules,proto3" json:"bypass_rate_limiting_rules,omitempty"` +} + +func (m *BypassRateLimitingRules) Reset() { *m = BypassRateLimitingRules{} } +func (*BypassRateLimitingRules) ProtoMessage() {} +func (*BypassRateLimitingRules) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{13} +} +func (m *BypassRateLimitingRules) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *BypassRateLimitingRules) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *BypassRateLimitingRules) XXX_Merge(src proto.Message) { + xxx_messageInfo_BypassRateLimitingRules.Merge(m, src) +} +func (m *BypassRateLimitingRules) XXX_Size() int { + return m.Size() +} +func (m *BypassRateLimitingRules) XXX_DiscardUnknown() { + xxx_messageInfo_BypassRateLimitingRules.DiscardUnknown(m) +} + +var xxx_messageInfo_BypassRateLimitingRules proto.InternalMessageInfo + +func (m *BypassRateLimitingRules) GetBypassRateLimitingRules() []*BypassRateLimitingRule { + if m != nil { + return m.BypassRateLimitingRules + } + return nil +} + +// ApiEndpointRule +// +// x-displayName: "ApiEndpointRule" +type ApiEndpointRule struct { + // domain choices + // + // x-displayName: "Domain" + // x-required + // Choose if the rule will apply for all domains or a specific one. + // + // Types that are valid to be assigned to DomainChoice: + // *ApiEndpointRule_AnyDomain + // *ApiEndpointRule_SpecificDomain + DomainChoice isApiEndpointRule_DomainChoice `protobuf_oneof:"domain_choice"` + // base path + // + // x-example: "/" + // x-displayName: "Base Path" + // The request base path. + BasePath string `protobuf:"bytes,4,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` + // api endpoint path + // + // x-displayName: "API Endpoint" + // x-example: "value" + // x-required + // The endpoint (path) of the request. + ApiEndpointPath string `protobuf:"bytes,5,opt,name=api_endpoint_path,json=apiEndpointPath,proto3" json:"api_endpoint_path,omitempty"` + // method + // + // x-displayName: "HTTP Methods" + // The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request. + // The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values. + ApiEndpointMethod *policy.HttpMethodMatcherType `protobuf:"bytes,6,opt,name=api_endpoint_method,json=apiEndpointMethod,proto3" json:"api_endpoint_method,omitempty"` + // request_matcher + // + // x-displayName: "Request" + // Conditions related to the request, such as query parameters, headers, etc. + RequestMatcher *policy.RequestMatcher `protobuf:"bytes,10,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` + // client_matcher + // + // x-displayName: "Clients" + // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. + ClientMatcher *policy.ClientMatcher `protobuf:"bytes,11,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` + // Rate limit values + // + // x-displayName: "Rate Limiter Values" + // x-required + // This defines the values of the rate limiter. + // + // Types that are valid to be assigned to RateLimiterChoice: + // *ApiEndpointRule_InlineRateLimiter + // *ApiEndpointRule_RefRateLimiter + RateLimiterChoice isApiEndpointRule_RateLimiterChoice `protobuf_oneof:"rate_limiter_choice"` +} + +func (m *ApiEndpointRule) Reset() { *m = ApiEndpointRule{} } +func (*ApiEndpointRule) ProtoMessage() {} +func (*ApiEndpointRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{14} +} +func (m *ApiEndpointRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ApiEndpointRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ApiEndpointRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApiEndpointRule.Merge(m, src) +} +func (m *ApiEndpointRule) XXX_Size() int { + return m.Size() +} +func (m *ApiEndpointRule) XXX_DiscardUnknown() { + xxx_messageInfo_ApiEndpointRule.DiscardUnknown(m) +} + +var xxx_messageInfo_ApiEndpointRule proto.InternalMessageInfo + +type isApiEndpointRule_DomainChoice interface { + isApiEndpointRule_DomainChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isApiEndpointRule_RateLimiterChoice interface { + isApiEndpointRule_RateLimiterChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ApiEndpointRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,2,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type ApiEndpointRule_SpecificDomain struct { + SpecificDomain string `protobuf:"bytes,3,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` +} +type ApiEndpointRule_InlineRateLimiter struct { + InlineRateLimiter *InlineRateLimiter `protobuf:"bytes,8,opt,name=inline_rate_limiter,json=inlineRateLimiter,proto3,oneof" json:"inline_rate_limiter,omitempty"` +} +type ApiEndpointRule_RefRateLimiter struct { + RefRateLimiter *views.ObjectRefType `protobuf:"bytes,9,opt,name=ref_rate_limiter,json=refRateLimiter,proto3,oneof" json:"ref_rate_limiter,omitempty"` +} + +func (*ApiEndpointRule_AnyDomain) isApiEndpointRule_DomainChoice() {} +func (*ApiEndpointRule_SpecificDomain) isApiEndpointRule_DomainChoice() {} +func (*ApiEndpointRule_InlineRateLimiter) isApiEndpointRule_RateLimiterChoice() {} +func (*ApiEndpointRule_RefRateLimiter) isApiEndpointRule_RateLimiterChoice() {} + +func (m *ApiEndpointRule) GetDomainChoice() isApiEndpointRule_DomainChoice { + if m != nil { + return m.DomainChoice + } + return nil +} +func (m *ApiEndpointRule) GetRateLimiterChoice() isApiEndpointRule_RateLimiterChoice { + if m != nil { + return m.RateLimiterChoice + } + return nil +} + +func (m *ApiEndpointRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainChoice().(*ApiEndpointRule_AnyDomain); ok { + return x.AnyDomain + } + return nil +} + +func (m *ApiEndpointRule) GetSpecificDomain() string { + if x, ok := m.GetDomainChoice().(*ApiEndpointRule_SpecificDomain); ok { + return x.SpecificDomain + } + return "" +} + +func (m *ApiEndpointRule) GetBasePath() string { + if m != nil { + return m.BasePath + } + return "" +} + +func (m *ApiEndpointRule) GetApiEndpointPath() string { + if m != nil { + return m.ApiEndpointPath + } + return "" +} + +func (m *ApiEndpointRule) GetApiEndpointMethod() *policy.HttpMethodMatcherType { + if m != nil { + return m.ApiEndpointMethod + } + return nil +} + +func (m *ApiEndpointRule) GetRequestMatcher() *policy.RequestMatcher { + if m != nil { + return m.RequestMatcher + } + return nil +} + +func (m *ApiEndpointRule) GetClientMatcher() *policy.ClientMatcher { + if m != nil { + return m.ClientMatcher + } + return nil +} + +func (m *ApiEndpointRule) GetInlineRateLimiter() *InlineRateLimiter { + if x, ok := m.GetRateLimiterChoice().(*ApiEndpointRule_InlineRateLimiter); ok { + return x.InlineRateLimiter + } + return nil +} + +func (m *ApiEndpointRule) GetRefRateLimiter() *views.ObjectRefType { + if x, ok := m.GetRateLimiterChoice().(*ApiEndpointRule_RefRateLimiter); ok { + return x.RefRateLimiter + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ApiEndpointRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ApiEndpointRule_AnyDomain)(nil), + (*ApiEndpointRule_SpecificDomain)(nil), + (*ApiEndpointRule_InlineRateLimiter)(nil), + (*ApiEndpointRule_RefRateLimiter)(nil), + } +} + +// InlineRateLimiter +// +// x-displayName: "InlineRateLimiter" +type InlineRateLimiter struct { + // threshold + // + // x-displayName: "Threshold" + // x-example: "1" + // x-required + // The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period. + Threshold uint32 `protobuf:"varint,1,opt,name=threshold,proto3" json:"threshold,omitempty"` + // rate + // + // x-displayName: "Duration" + // x-required + // Unit for the period per which the rate limit is applied. + Unit rate_limiter.RateLimitPeriodUnit `protobuf:"varint,2,opt,name=unit,proto3,enum=ves.io.schema.rate_limiter.RateLimitPeriodUnit" json:"unit,omitempty"` + // Count by + // + // x-displayName: "Count By" + // x-required + // The classification criteria for requests counts. + // + // Types that are valid to be assigned to CountByChoice: + // *InlineRateLimiter_UseHttpLbUserId + // *InlineRateLimiter_RefUserId + CountByChoice isInlineRateLimiter_CountByChoice `protobuf_oneof:"count_by_choice"` +} + +func (m *InlineRateLimiter) Reset() { *m = InlineRateLimiter{} } +func (*InlineRateLimiter) ProtoMessage() {} +func (*InlineRateLimiter) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{15} +} +func (m *InlineRateLimiter) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *InlineRateLimiter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *InlineRateLimiter) XXX_Merge(src proto.Message) { + xxx_messageInfo_InlineRateLimiter.Merge(m, src) +} +func (m *InlineRateLimiter) XXX_Size() int { + return m.Size() +} +func (m *InlineRateLimiter) XXX_DiscardUnknown() { + xxx_messageInfo_InlineRateLimiter.DiscardUnknown(m) +} + +var xxx_messageInfo_InlineRateLimiter proto.InternalMessageInfo + +type isInlineRateLimiter_CountByChoice interface { + isInlineRateLimiter_CountByChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type InlineRateLimiter_UseHttpLbUserId struct { + UseHttpLbUserId *schema.Empty `protobuf:"bytes,4,opt,name=use_http_lb_user_id,json=useHttpLbUserId,proto3,oneof" json:"use_http_lb_user_id,omitempty"` +} +type InlineRateLimiter_RefUserId struct { + RefUserId *views.ObjectRefType `protobuf:"bytes,5,opt,name=ref_user_id,json=refUserId,proto3,oneof" json:"ref_user_id,omitempty"` +} + +func (*InlineRateLimiter_UseHttpLbUserId) isInlineRateLimiter_CountByChoice() {} +func (*InlineRateLimiter_RefUserId) isInlineRateLimiter_CountByChoice() {} + +func (m *InlineRateLimiter) GetCountByChoice() isInlineRateLimiter_CountByChoice { + if m != nil { + return m.CountByChoice + } + return nil +} + +func (m *InlineRateLimiter) GetThreshold() uint32 { + if m != nil { + return m.Threshold + } + return 0 +} + +func (m *InlineRateLimiter) GetUnit() rate_limiter.RateLimitPeriodUnit { + if m != nil { + return m.Unit + } + return rate_limiter.SECOND +} + +func (m *InlineRateLimiter) GetUseHttpLbUserId() *schema.Empty { + if x, ok := m.GetCountByChoice().(*InlineRateLimiter_UseHttpLbUserId); ok { + return x.UseHttpLbUserId + } + return nil +} + +func (m *InlineRateLimiter) GetRefUserId() *views.ObjectRefType { + if x, ok := m.GetCountByChoice().(*InlineRateLimiter_RefUserId); ok { + return x.RefUserId + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*InlineRateLimiter) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*InlineRateLimiter_UseHttpLbUserId)(nil), + (*InlineRateLimiter_RefUserId)(nil), + } +} + +// ServerUrlRule +// +// x-displayName: "Server URLs and API Groups" +type ServerUrlRule struct { + // domain choices + // + // x-displayName: "Domain" + // x-required + // Choose if the rule will apply for all domains or a specific one. + // + // Types that are valid to be assigned to DomainChoice: + // *ServerUrlRule_AnyDomain + // *ServerUrlRule_SpecificDomain + DomainChoice isServerUrlRule_DomainChoice `protobuf_oneof:"domain_choice"` + // base path + // + // x-displayName: "Base Path" + // x-example: "/" + // x-required + // Prefix of the request path. + BasePath string `protobuf:"bytes,4,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` + // api_group + // + // x-displayName: "API Group" + // x-example: "oas-all-operations" + // API groups derived from API Definition swaggers. + // For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers. + // Custom groups can be created if user tags paths or operations with "x-volterra-api-group" extensions inside swaggers. + ApiGroup string `protobuf:"bytes,10,opt,name=api_group,json=apiGroup,proto3" json:"api_group,omitempty"` + // request_matcher + // + // x-displayName: "Request" + // Conditions related to the request, such as query parameters, headers, etc. + RequestMatcher *policy.RequestMatcher `protobuf:"bytes,11,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` + // client_matcher + // + // x-displayName: "Clients" + // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. + ClientMatcher *policy.ClientMatcher `protobuf:"bytes,9,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` + // Rate limit values + // + // x-displayName: "Rate Limiter Values" + // x-required + // This defines the values of the rate limiter. + // + // Types that are valid to be assigned to RateLimiterChoice: + // *ServerUrlRule_InlineRateLimiter + // *ServerUrlRule_RefRateLimiter + RateLimiterChoice isServerUrlRule_RateLimiterChoice `protobuf_oneof:"rate_limiter_choice"` +} + +func (m *ServerUrlRule) Reset() { *m = ServerUrlRule{} } +func (*ServerUrlRule) ProtoMessage() {} +func (*ServerUrlRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{16} +} +func (m *ServerUrlRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ServerUrlRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ServerUrlRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_ServerUrlRule.Merge(m, src) +} +func (m *ServerUrlRule) XXX_Size() int { + return m.Size() +} +func (m *ServerUrlRule) XXX_DiscardUnknown() { + xxx_messageInfo_ServerUrlRule.DiscardUnknown(m) +} + +var xxx_messageInfo_ServerUrlRule proto.InternalMessageInfo + +type isServerUrlRule_DomainChoice interface { + isServerUrlRule_DomainChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isServerUrlRule_RateLimiterChoice interface { + isServerUrlRule_RateLimiterChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ServerUrlRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,2,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type ServerUrlRule_SpecificDomain struct { + SpecificDomain string `protobuf:"bytes,3,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` +} +type ServerUrlRule_InlineRateLimiter struct { + InlineRateLimiter *InlineRateLimiter `protobuf:"bytes,6,opt,name=inline_rate_limiter,json=inlineRateLimiter,proto3,oneof" json:"inline_rate_limiter,omitempty"` +} +type ServerUrlRule_RefRateLimiter struct { + RefRateLimiter *views.ObjectRefType `protobuf:"bytes,7,opt,name=ref_rate_limiter,json=refRateLimiter,proto3,oneof" json:"ref_rate_limiter,omitempty"` +} + +func (*ServerUrlRule_AnyDomain) isServerUrlRule_DomainChoice() {} +func (*ServerUrlRule_SpecificDomain) isServerUrlRule_DomainChoice() {} +func (*ServerUrlRule_InlineRateLimiter) isServerUrlRule_RateLimiterChoice() {} +func (*ServerUrlRule_RefRateLimiter) isServerUrlRule_RateLimiterChoice() {} + +func (m *ServerUrlRule) GetDomainChoice() isServerUrlRule_DomainChoice { + if m != nil { + return m.DomainChoice + } + return nil +} +func (m *ServerUrlRule) GetRateLimiterChoice() isServerUrlRule_RateLimiterChoice { + if m != nil { + return m.RateLimiterChoice + } + return nil +} + +func (m *ServerUrlRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainChoice().(*ServerUrlRule_AnyDomain); ok { + return x.AnyDomain + } + return nil +} + +func (m *ServerUrlRule) GetSpecificDomain() string { + if x, ok := m.GetDomainChoice().(*ServerUrlRule_SpecificDomain); ok { + return x.SpecificDomain + } + return "" +} + +func (m *ServerUrlRule) GetBasePath() string { + if m != nil { + return m.BasePath + } + return "" +} + +func (m *ServerUrlRule) GetApiGroup() string { + if m != nil { + return m.ApiGroup + } + return "" +} + +func (m *ServerUrlRule) GetRequestMatcher() *policy.RequestMatcher { + if m != nil { + return m.RequestMatcher + } + return nil +} + +func (m *ServerUrlRule) GetClientMatcher() *policy.ClientMatcher { + if m != nil { + return m.ClientMatcher + } + return nil +} + +func (m *ServerUrlRule) GetInlineRateLimiter() *InlineRateLimiter { + if x, ok := m.GetRateLimiterChoice().(*ServerUrlRule_InlineRateLimiter); ok { + return x.InlineRateLimiter + } + return nil +} + +func (m *ServerUrlRule) GetRefRateLimiter() *views.ObjectRefType { + if x, ok := m.GetRateLimiterChoice().(*ServerUrlRule_RefRateLimiter); ok { + return x.RefRateLimiter + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ServerUrlRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ServerUrlRule_AnyDomain)(nil), + (*ServerUrlRule_SpecificDomain)(nil), + (*ServerUrlRule_InlineRateLimiter)(nil), + (*ServerUrlRule_RefRateLimiter)(nil), + } +} + +// Custom IP Allowed List +// +// x-displayName: "Custom IP Allowed List" +// IP Allowed list using existing ip_prefix_set objects +type CustomIpAllowedList struct { + // rate_limiter_allowed_prefixes + // + // x-displayName: "List of IP Prefix Sets" + // x-required + // References to ip_prefix_set objects. + // Requests from source IP addresses that are covered by one of the allowed IP Prefixes are not subjected to rate limiting. + RateLimiterAllowedPrefixes []*views.ObjectRefType `protobuf:"bytes,22,rep,name=rate_limiter_allowed_prefixes,json=rateLimiterAllowedPrefixes,proto3" json:"rate_limiter_allowed_prefixes,omitempty"` +} + +func (m *CustomIpAllowedList) Reset() { *m = CustomIpAllowedList{} } +func (*CustomIpAllowedList) ProtoMessage() {} +func (*CustomIpAllowedList) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{17} +} +func (m *CustomIpAllowedList) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CustomIpAllowedList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CustomIpAllowedList) XXX_Merge(src proto.Message) { + xxx_messageInfo_CustomIpAllowedList.Merge(m, src) +} +func (m *CustomIpAllowedList) XXX_Size() int { + return m.Size() +} +func (m *CustomIpAllowedList) XXX_DiscardUnknown() { + xxx_messageInfo_CustomIpAllowedList.DiscardUnknown(m) +} + +var xxx_messageInfo_CustomIpAllowedList proto.InternalMessageInfo + +func (m *CustomIpAllowedList) GetRateLimiterAllowedPrefixes() []*views.ObjectRefType { + if m != nil { + return m.RateLimiterAllowedPrefixes + } + return nil +} + +// APISpecificationSettings +// +// x-displayName: "API Specification and Validation" +// Settings for api specification (api definition, OpenAPI validation, etc.) +type APISpecificationSettings struct { + // Use API Definition + // + // x-displayName: "API Definition" + // x-required + // Specify API definition which includes application API paths and methods derived from swagger files. + ApiDefinition *views.ObjectRefType `protobuf:"bytes,1,opt,name=api_definition,json=apiDefinition,proto3" json:"api_definition,omitempty"` + // Validation + // + // x-displayName: "Validation" + // x-required + // List of api-endpoints (may be aggregated by api-group or base-path) to run them through OpenAPI specification validation. + // Any other api-endpoint not listed will act according to "Fall Through Mode" + // + // Types that are valid to be assigned to ValidationTargetChoice: + // *APISpecificationSettings_ValidationDisabled + // *APISpecificationSettings_ValidationAllSpecEndpoints + // *APISpecificationSettings_ValidationCustomList + ValidationTargetChoice isAPISpecificationSettings_ValidationTargetChoice `protobuf_oneof:"validation_target_choice"` +} + +func (m *APISpecificationSettings) Reset() { *m = APISpecificationSettings{} } +func (*APISpecificationSettings) ProtoMessage() {} +func (*APISpecificationSettings) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{18} +} +func (m *APISpecificationSettings) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APISpecificationSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APISpecificationSettings) XXX_Merge(src proto.Message) { + xxx_messageInfo_APISpecificationSettings.Merge(m, src) +} +func (m *APISpecificationSettings) XXX_Size() int { + return m.Size() +} +func (m *APISpecificationSettings) XXX_DiscardUnknown() { + xxx_messageInfo_APISpecificationSettings.DiscardUnknown(m) +} + +var xxx_messageInfo_APISpecificationSettings proto.InternalMessageInfo + +type isAPISpecificationSettings_ValidationTargetChoice interface { + isAPISpecificationSettings_ValidationTargetChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type APISpecificationSettings_ValidationDisabled struct { + ValidationDisabled *schema.Empty `protobuf:"bytes,3,opt,name=validation_disabled,json=validationDisabled,proto3,oneof" json:"validation_disabled,omitempty"` +} +type APISpecificationSettings_ValidationAllSpecEndpoints struct { + ValidationAllSpecEndpoints *OpenApiValidationAllSpecEndpointsSettings `protobuf:"bytes,4,opt,name=validation_all_spec_endpoints,json=validationAllSpecEndpoints,proto3,oneof" json:"validation_all_spec_endpoints,omitempty"` +} +type APISpecificationSettings_ValidationCustomList struct { + ValidationCustomList *ValidateApiBySpecRule `protobuf:"bytes,5,opt,name=validation_custom_list,json=validationCustomList,proto3,oneof" json:"validation_custom_list,omitempty"` +} + +func (*APISpecificationSettings_ValidationDisabled) isAPISpecificationSettings_ValidationTargetChoice() { +} +func (*APISpecificationSettings_ValidationAllSpecEndpoints) isAPISpecificationSettings_ValidationTargetChoice() { +} +func (*APISpecificationSettings_ValidationCustomList) isAPISpecificationSettings_ValidationTargetChoice() { +} + +func (m *APISpecificationSettings) GetValidationTargetChoice() isAPISpecificationSettings_ValidationTargetChoice { + if m != nil { + return m.ValidationTargetChoice + } + return nil +} + +func (m *APISpecificationSettings) GetApiDefinition() *views.ObjectRefType { + if m != nil { + return m.ApiDefinition + } + return nil +} + +func (m *APISpecificationSettings) GetValidationDisabled() *schema.Empty { + if x, ok := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationDisabled); ok { + return x.ValidationDisabled + } + return nil +} + +func (m *APISpecificationSettings) GetValidationAllSpecEndpoints() *OpenApiValidationAllSpecEndpointsSettings { + if x, ok := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationAllSpecEndpoints); ok { + return x.ValidationAllSpecEndpoints + } + return nil +} + +func (m *APISpecificationSettings) GetValidationCustomList() *ValidateApiBySpecRule { + if x, ok := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationCustomList); ok { + return x.ValidationCustomList + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*APISpecificationSettings) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*APISpecificationSettings_ValidationDisabled)(nil), + (*APISpecificationSettings_ValidationAllSpecEndpoints)(nil), + (*APISpecificationSettings_ValidationCustomList)(nil), + } +} + +// OpenAPI Validation API Inventory Settings +// +// x-displayName: "API Inventory" +// Settings for API Inventory validation +type OpenApiValidationAllSpecEndpointsSettings struct { + // Validation Mode + // + // x-displayName: "Validation Mode" + // x-required + // Validation mode of OpenAPI specification. + // When a validation mismatch occurs on a request to one of the API Inventory endpoints + ValidationMode *OpenApiValidationMode `protobuf:"bytes,1,opt,name=validation_mode,json=validationMode,proto3" json:"validation_mode,omitempty"` + // Fall Through Mode + // + // x-displayName: "Fall Through Mode" + // x-required + // Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules) + FallThroughMode *OpenApiFallThroughMode `protobuf:"bytes,2,opt,name=fall_through_mode,json=fallThroughMode,proto3" json:"fall_through_mode,omitempty"` + // Policy of over-sized body + // + // x-displayName: "Policy for Over-Sized Body in Request/Response" + // Policy of handling request/response with too long body + // DEPRECATED. use settings.oversized_body_choice + // + // Types that are valid to be assigned to OversizedBodyChoice: + // *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation + // *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation + OversizedBodyChoice isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice `protobuf_oneof:"oversized_body_choice"` + // OpenAPI specification validation common settings + // + // x-displayName: "Common Settings" + // OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement + Settings *OpenApiValidationCommonSettings `protobuf:"bytes,6,opt,name=settings,proto3" json:"settings,omitempty"` +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) Reset() { + *m = OpenApiValidationAllSpecEndpointsSettings{} +} +func (*OpenApiValidationAllSpecEndpointsSettings) ProtoMessage() {} +func (*OpenApiValidationAllSpecEndpointsSettings) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{19} +} +func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiValidationAllSpecEndpointsSettings.Merge(m, src) +} +func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Size() int { + return m.Size() +} +func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiValidationAllSpecEndpointsSettings.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiValidationAllSpecEndpointsSettings proto.InternalMessageInfo + +type isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice interface { + isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation struct { + OversizedBodySkipValidation *schema.Empty `protobuf:"bytes,4,opt,name=oversized_body_skip_validation,json=oversizedBodySkipValidation,proto3,oneof" json:"oversized_body_skip_validation,omitempty"` +} +type OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation struct { + OversizedBodyFailValidation *schema.Empty `protobuf:"bytes,5,opt,name=oversized_body_fail_validation,json=oversizedBodyFailValidation,proto3,oneof" json:"oversized_body_fail_validation,omitempty"` +} + +func (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice() { +} +func (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice() { +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) GetOversizedBodyChoice() isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice { + if m != nil { + return m.OversizedBodyChoice + } + return nil +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) GetValidationMode() *OpenApiValidationMode { + if m != nil { + return m.ValidationMode + } + return nil +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) GetFallThroughMode() *OpenApiFallThroughMode { + if m != nil { + return m.FallThroughMode + } + return nil +} + +// Deprecated: Do not use. +func (m *OpenApiValidationAllSpecEndpointsSettings) GetOversizedBodySkipValidation() *schema.Empty { + if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation); ok { + return x.OversizedBodySkipValidation + } + return nil +} + +// Deprecated: Do not use. +func (m *OpenApiValidationAllSpecEndpointsSettings) GetOversizedBodyFailValidation() *schema.Empty { + if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation); ok { + return x.OversizedBodyFailValidation + } + return nil +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) GetSettings() *OpenApiValidationCommonSettings { + if m != nil { + return m.Settings + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiValidationAllSpecEndpointsSettings) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation)(nil), + (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation)(nil), + } +} + +// Validation Mode +// +// x-displayName: "Validation Mode" +// x-required +// Validation mode of OpenAPI specification. +// +// When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger) +type OpenApiValidationMode struct { + // Request Validation Mode Choice + // + // x-displayName: "OpenAPI Validation Request Processing Mode" + // x-required + // Validation mode of OpenAPI specification request. + // Indicates if enforcement is needed when a validation mismatch occurs on a request to one of the endpoints + // listed on the OpenAPI specification file (a.k.a. swagger) + // + // Types that are valid to be assigned to ValidationModeChoice: + // *OpenApiValidationMode_ValidationModeActive + // *OpenApiValidationMode_SkipValidation + ValidationModeChoice isOpenApiValidationMode_ValidationModeChoice `protobuf_oneof:"validation_mode_choice"` + // Response Validation Mode Choice + // + // x-displayName: "OpenAPI Validation Response Processing Mode" + // x-required + // Validation mode of OpenAPI specification response. + // Indicates if enforcement is needed when a validation mismatch occurs on a response to one of the endpoints + // listed on the OpenAPI specification file (a.k.a. swagger) + // + // Types that are valid to be assigned to ResponseValidationModeChoice: + // *OpenApiValidationMode_SkipResponseValidation + // *OpenApiValidationMode_ResponseValidationModeActive + ResponseValidationModeChoice isOpenApiValidationMode_ResponseValidationModeChoice `protobuf_oneof:"response_validation_mode_choice"` +} + +func (m *OpenApiValidationMode) Reset() { *m = OpenApiValidationMode{} } +func (*OpenApiValidationMode) ProtoMessage() {} +func (*OpenApiValidationMode) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{20} +} +func (m *OpenApiValidationMode) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiValidationMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiValidationMode) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiValidationMode.Merge(m, src) +} +func (m *OpenApiValidationMode) XXX_Size() int { + return m.Size() +} +func (m *OpenApiValidationMode) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiValidationMode.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiValidationMode proto.InternalMessageInfo + +type isOpenApiValidationMode_ValidationModeChoice interface { + isOpenApiValidationMode_ValidationModeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isOpenApiValidationMode_ResponseValidationModeChoice interface { + isOpenApiValidationMode_ResponseValidationModeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiValidationMode_ValidationModeActive struct { + ValidationModeActive *OpenApiValidationModeActive `protobuf:"bytes,2,opt,name=validation_mode_active,json=validationModeActive,proto3,oneof" json:"validation_mode_active,omitempty"` +} +type OpenApiValidationMode_SkipValidation struct { + SkipValidation *schema.Empty `protobuf:"bytes,3,opt,name=skip_validation,json=skipValidation,proto3,oneof" json:"skip_validation,omitempty"` +} +type OpenApiValidationMode_SkipResponseValidation struct { + SkipResponseValidation *schema.Empty `protobuf:"bytes,5,opt,name=skip_response_validation,json=skipResponseValidation,proto3,oneof" json:"skip_response_validation,omitempty"` +} +type OpenApiValidationMode_ResponseValidationModeActive struct { + ResponseValidationModeActive *OpenApiValidationModeActiveResponse `protobuf:"bytes,6,opt,name=response_validation_mode_active,json=responseValidationModeActive,proto3,oneof" json:"response_validation_mode_active,omitempty"` +} + +func (*OpenApiValidationMode_ValidationModeActive) isOpenApiValidationMode_ValidationModeChoice() {} +func (*OpenApiValidationMode_SkipValidation) isOpenApiValidationMode_ValidationModeChoice() {} +func (*OpenApiValidationMode_SkipResponseValidation) isOpenApiValidationMode_ResponseValidationModeChoice() { +} +func (*OpenApiValidationMode_ResponseValidationModeActive) isOpenApiValidationMode_ResponseValidationModeChoice() { +} + +func (m *OpenApiValidationMode) GetValidationModeChoice() isOpenApiValidationMode_ValidationModeChoice { + if m != nil { + return m.ValidationModeChoice + } + return nil +} +func (m *OpenApiValidationMode) GetResponseValidationModeChoice() isOpenApiValidationMode_ResponseValidationModeChoice { + if m != nil { + return m.ResponseValidationModeChoice + } + return nil +} + +func (m *OpenApiValidationMode) GetValidationModeActive() *OpenApiValidationModeActive { + if x, ok := m.GetValidationModeChoice().(*OpenApiValidationMode_ValidationModeActive); ok { + return x.ValidationModeActive + } + return nil +} + +func (m *OpenApiValidationMode) GetSkipValidation() *schema.Empty { + if x, ok := m.GetValidationModeChoice().(*OpenApiValidationMode_SkipValidation); ok { + return x.SkipValidation + } + return nil +} + +func (m *OpenApiValidationMode) GetSkipResponseValidation() *schema.Empty { + if x, ok := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_SkipResponseValidation); ok { + return x.SkipResponseValidation + } + return nil +} + +func (m *OpenApiValidationMode) GetResponseValidationModeActive() *OpenApiValidationModeActiveResponse { + if x, ok := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_ResponseValidationModeActive); ok { + return x.ResponseValidationModeActive + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiValidationMode) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiValidationMode_ValidationModeActive)(nil), + (*OpenApiValidationMode_SkipValidation)(nil), + (*OpenApiValidationMode_SkipResponseValidation)(nil), + (*OpenApiValidationMode_ResponseValidationModeActive)(nil), + } +} + +// Open API Validation Mode Active For Request +// +// x-displayName: "Open API Validation Mode Active" +// Validation mode properties of request +type OpenApiValidationModeActive struct { + // Request Validation Enforcement Mode + // + // x-displayName: "Request Validation Enforcement Type" + // x-required + // Enforcement type of OpenAPI specification for the request + // + // Types that are valid to be assigned to ValidationEnforcementType: + // *OpenApiValidationModeActive_EnforcementReport + // *OpenApiValidationModeActive_EnforcementBlock + ValidationEnforcementType isOpenApiValidationModeActive_ValidationEnforcementType `protobuf_oneof:"validation_enforcement_type"` + // Request Validation Properties + // + // x-displayName: "Request Validation Properties" + // x-required + // List of properties of the request to validate according to the OpenAPI specification file (a.k.a. swagger) + RequestValidationProperties []schema.OpenApiValidationProperties `protobuf:"varint,4,rep,packed,name=request_validation_properties,json=requestValidationProperties,proto3,enum=ves.io.schema.OpenApiValidationProperties" json:"request_validation_properties,omitempty"` +} + +func (m *OpenApiValidationModeActive) Reset() { *m = OpenApiValidationModeActive{} } +func (*OpenApiValidationModeActive) ProtoMessage() {} +func (*OpenApiValidationModeActive) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{21} +} +func (m *OpenApiValidationModeActive) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiValidationModeActive) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiValidationModeActive) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiValidationModeActive.Merge(m, src) +} +func (m *OpenApiValidationModeActive) XXX_Size() int { + return m.Size() +} +func (m *OpenApiValidationModeActive) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiValidationModeActive.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiValidationModeActive proto.InternalMessageInfo + +type isOpenApiValidationModeActive_ValidationEnforcementType interface { + isOpenApiValidationModeActive_ValidationEnforcementType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiValidationModeActive_EnforcementReport struct { + EnforcementReport *schema.Empty `protobuf:"bytes,2,opt,name=enforcement_report,json=enforcementReport,proto3,oneof" json:"enforcement_report,omitempty"` +} +type OpenApiValidationModeActive_EnforcementBlock struct { + EnforcementBlock *schema.Empty `protobuf:"bytes,3,opt,name=enforcement_block,json=enforcementBlock,proto3,oneof" json:"enforcement_block,omitempty"` +} + +func (*OpenApiValidationModeActive_EnforcementReport) isOpenApiValidationModeActive_ValidationEnforcementType() { +} +func (*OpenApiValidationModeActive_EnforcementBlock) isOpenApiValidationModeActive_ValidationEnforcementType() { +} + +func (m *OpenApiValidationModeActive) GetValidationEnforcementType() isOpenApiValidationModeActive_ValidationEnforcementType { + if m != nil { + return m.ValidationEnforcementType + } + return nil +} + +func (m *OpenApiValidationModeActive) GetEnforcementReport() *schema.Empty { + if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementReport); ok { + return x.EnforcementReport + } + return nil +} + +func (m *OpenApiValidationModeActive) GetEnforcementBlock() *schema.Empty { + if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementBlock); ok { + return x.EnforcementBlock + } + return nil +} + +func (m *OpenApiValidationModeActive) GetRequestValidationProperties() []schema.OpenApiValidationProperties { + if m != nil { + return m.RequestValidationProperties + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiValidationModeActive) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiValidationModeActive_EnforcementReport)(nil), + (*OpenApiValidationModeActive_EnforcementBlock)(nil), + } +} + +// Open API Validation Mode Active For Response +// +// x-displayName: "Open API Validation Mode Active" +// Validation mode properties of response +type OpenApiValidationModeActiveResponse struct { + // Response Validation Enforcement Mode + // + // x-displayName: "Response Validation Enforcement Type" + // x-required + // Enforcement type of OpenAPI specification for the response + // + // Types that are valid to be assigned to ValidationEnforcementType: + // *OpenApiValidationModeActiveResponse_EnforcementReport + // *OpenApiValidationModeActiveResponse_EnforcementBlock + ValidationEnforcementType isOpenApiValidationModeActiveResponse_ValidationEnforcementType `protobuf_oneof:"validation_enforcement_type"` + // Response Validation Properties + // + // x-displayName: "Response Validation Properties" + // x-required + // List of properties of the response to validate according to the OpenAPI specification file (a.k.a. swagger) + ResponseValidationProperties []schema.OpenApiValidationProperties `protobuf:"varint,4,rep,packed,name=response_validation_properties,json=responseValidationProperties,proto3,enum=ves.io.schema.OpenApiValidationProperties" json:"response_validation_properties,omitempty"` +} + +func (m *OpenApiValidationModeActiveResponse) Reset() { *m = OpenApiValidationModeActiveResponse{} } +func (*OpenApiValidationModeActiveResponse) ProtoMessage() {} +func (*OpenApiValidationModeActiveResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{22} +} +func (m *OpenApiValidationModeActiveResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiValidationModeActiveResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiValidationModeActiveResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiValidationModeActiveResponse.Merge(m, src) +} +func (m *OpenApiValidationModeActiveResponse) XXX_Size() int { + return m.Size() +} +func (m *OpenApiValidationModeActiveResponse) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiValidationModeActiveResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiValidationModeActiveResponse proto.InternalMessageInfo + +type isOpenApiValidationModeActiveResponse_ValidationEnforcementType interface { + isOpenApiValidationModeActiveResponse_ValidationEnforcementType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiValidationModeActiveResponse_EnforcementReport struct { + EnforcementReport *schema.Empty `protobuf:"bytes,2,opt,name=enforcement_report,json=enforcementReport,proto3,oneof" json:"enforcement_report,omitempty"` +} +type OpenApiValidationModeActiveResponse_EnforcementBlock struct { + EnforcementBlock *schema.Empty `protobuf:"bytes,3,opt,name=enforcement_block,json=enforcementBlock,proto3,oneof" json:"enforcement_block,omitempty"` +} + +func (*OpenApiValidationModeActiveResponse_EnforcementReport) isOpenApiValidationModeActiveResponse_ValidationEnforcementType() { +} +func (*OpenApiValidationModeActiveResponse_EnforcementBlock) isOpenApiValidationModeActiveResponse_ValidationEnforcementType() { +} + +func (m *OpenApiValidationModeActiveResponse) GetValidationEnforcementType() isOpenApiValidationModeActiveResponse_ValidationEnforcementType { + if m != nil { + return m.ValidationEnforcementType + } + return nil +} + +func (m *OpenApiValidationModeActiveResponse) GetEnforcementReport() *schema.Empty { + if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementReport); ok { + return x.EnforcementReport + } + return nil +} + +func (m *OpenApiValidationModeActiveResponse) GetEnforcementBlock() *schema.Empty { + if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementBlock); ok { + return x.EnforcementBlock + } + return nil +} + +func (m *OpenApiValidationModeActiveResponse) GetResponseValidationProperties() []schema.OpenApiValidationProperties { + if m != nil { + return m.ResponseValidationProperties + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiValidationModeActiveResponse) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiValidationModeActiveResponse_EnforcementReport)(nil), + (*OpenApiValidationModeActiveResponse_EnforcementBlock)(nil), + } +} + +// Fall Through Mode +// +// x-displayName: "Fall Through Mode" +// x-required +// Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules) +type OpenApiFallThroughMode struct { + // Fall Through Mode + // + // x-displayName: "Fall Through Mode" + // x-required + // Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules) + // + // Types that are valid to be assigned to FallThroughModeChoice: + // *OpenApiFallThroughMode_FallThroughModeAllow + // *OpenApiFallThroughMode_FallThroughModeCustom + FallThroughModeChoice isOpenApiFallThroughMode_FallThroughModeChoice `protobuf_oneof:"fall_through_mode_choice"` +} + +func (m *OpenApiFallThroughMode) Reset() { *m = OpenApiFallThroughMode{} } +func (*OpenApiFallThroughMode) ProtoMessage() {} +func (*OpenApiFallThroughMode) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{23} +} +func (m *OpenApiFallThroughMode) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiFallThroughMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiFallThroughMode) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiFallThroughMode.Merge(m, src) +} +func (m *OpenApiFallThroughMode) XXX_Size() int { + return m.Size() +} +func (m *OpenApiFallThroughMode) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiFallThroughMode.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiFallThroughMode proto.InternalMessageInfo + +type isOpenApiFallThroughMode_FallThroughModeChoice interface { + isOpenApiFallThroughMode_FallThroughModeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiFallThroughMode_FallThroughModeAllow struct { + FallThroughModeAllow *schema.Empty `protobuf:"bytes,4,opt,name=fall_through_mode_allow,json=fallThroughModeAllow,proto3,oneof" json:"fall_through_mode_allow,omitempty"` +} +type OpenApiFallThroughMode_FallThroughModeCustom struct { + FallThroughModeCustom *CustomFallThroughMode `protobuf:"bytes,5,opt,name=fall_through_mode_custom,json=fallThroughModeCustom,proto3,oneof" json:"fall_through_mode_custom,omitempty"` +} + +func (*OpenApiFallThroughMode_FallThroughModeAllow) isOpenApiFallThroughMode_FallThroughModeChoice() { +} +func (*OpenApiFallThroughMode_FallThroughModeCustom) isOpenApiFallThroughMode_FallThroughModeChoice() { +} + +func (m *OpenApiFallThroughMode) GetFallThroughModeChoice() isOpenApiFallThroughMode_FallThroughModeChoice { + if m != nil { + return m.FallThroughModeChoice + } + return nil +} + +func (m *OpenApiFallThroughMode) GetFallThroughModeAllow() *schema.Empty { + if x, ok := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeAllow); ok { + return x.FallThroughModeAllow + } + return nil +} + +func (m *OpenApiFallThroughMode) GetFallThroughModeCustom() *CustomFallThroughMode { + if x, ok := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeCustom); ok { + return x.FallThroughModeCustom + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiFallThroughMode) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiFallThroughMode_FallThroughModeAllow)(nil), + (*OpenApiFallThroughMode_FallThroughModeCustom)(nil), + } +} + +// Custom Fall Through Mode +// +// x-displayName: "Custom Fall Through Mode" +// Define the fall through settings +type CustomFallThroughMode struct { + // Custom Fall Through Rule List + // + // x-required + // x-displayName: "Custom Fall Through Rule List" + OpenApiValidationRules []*FallThroughRule `protobuf:"bytes,1,rep,name=open_api_validation_rules,json=openApiValidationRules,proto3" json:"open_api_validation_rules,omitempty"` +} + +func (m *CustomFallThroughMode) Reset() { *m = CustomFallThroughMode{} } +func (*CustomFallThroughMode) ProtoMessage() {} +func (*CustomFallThroughMode) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{24} +} +func (m *CustomFallThroughMode) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CustomFallThroughMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CustomFallThroughMode) XXX_Merge(src proto.Message) { + xxx_messageInfo_CustomFallThroughMode.Merge(m, src) +} +func (m *CustomFallThroughMode) XXX_Size() int { + return m.Size() +} +func (m *CustomFallThroughMode) XXX_DiscardUnknown() { + xxx_messageInfo_CustomFallThroughMode.DiscardUnknown(m) +} + +var xxx_messageInfo_CustomFallThroughMode proto.InternalMessageInfo + +func (m *CustomFallThroughMode) GetOpenApiValidationRules() []*FallThroughRule { + if m != nil { + return m.OpenApiValidationRules + } + return nil +} + +// Fall Through Rule +// +// x-displayName: "Fall Through Rule" +// Fall Through Rule for a specific endpoint, base-path, or API group +type FallThroughRule struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // action choices + // + // x-required + // x-displayName: "Action" + // Choose what action to do when the rule will apply + // + // Types that are valid to be assigned to ActionChoice: + // *FallThroughRule_ActionSkip + // *FallThroughRule_ActionReport + // *FallThroughRule_ActionBlock + ActionChoice isFallThroughRule_ActionChoice `protobuf_oneof:"action_choice"` + // condition type choices + // + // x-displayName: "Type" + // x-required + // Choose type of granularity this rule applies to + // + // Types that are valid to be assigned to ConditionTypeChoice: + // *FallThroughRule_ApiEndpoint + // *FallThroughRule_BasePath + // *FallThroughRule_ApiGroup + ConditionTypeChoice isFallThroughRule_ConditionTypeChoice `protobuf_oneof:"condition_type_choice"` +} + +func (m *FallThroughRule) Reset() { *m = FallThroughRule{} } +func (*FallThroughRule) ProtoMessage() {} +func (*FallThroughRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{25} +} +func (m *FallThroughRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *FallThroughRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *FallThroughRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_FallThroughRule.Merge(m, src) +} +func (m *FallThroughRule) XXX_Size() int { + return m.Size() +} +func (m *FallThroughRule) XXX_DiscardUnknown() { + xxx_messageInfo_FallThroughRule.DiscardUnknown(m) +} + +var xxx_messageInfo_FallThroughRule proto.InternalMessageInfo + +type isFallThroughRule_ActionChoice interface { + isFallThroughRule_ActionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isFallThroughRule_ConditionTypeChoice interface { + isFallThroughRule_ConditionTypeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type FallThroughRule_ActionSkip struct { + ActionSkip *schema.Empty `protobuf:"bytes,3,opt,name=action_skip,json=actionSkip,proto3,oneof" json:"action_skip,omitempty"` +} +type FallThroughRule_ActionReport struct { + ActionReport *schema.Empty `protobuf:"bytes,4,opt,name=action_report,json=actionReport,proto3,oneof" json:"action_report,omitempty"` +} +type FallThroughRule_ActionBlock struct { + ActionBlock *schema.Empty `protobuf:"bytes,5,opt,name=action_block,json=actionBlock,proto3,oneof" json:"action_block,omitempty"` +} +type FallThroughRule_ApiEndpoint struct { + ApiEndpoint *ApiEndpointDetails `protobuf:"bytes,10,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof" json:"api_endpoint,omitempty"` +} +type FallThroughRule_BasePath struct { + BasePath string `protobuf:"bytes,8,opt,name=base_path,json=basePath,proto3,oneof" json:"base_path,omitempty"` +} +type FallThroughRule_ApiGroup struct { + ApiGroup string `protobuf:"bytes,9,opt,name=api_group,json=apiGroup,proto3,oneof" json:"api_group,omitempty"` +} + +func (*FallThroughRule_ActionSkip) isFallThroughRule_ActionChoice() {} +func (*FallThroughRule_ActionReport) isFallThroughRule_ActionChoice() {} +func (*FallThroughRule_ActionBlock) isFallThroughRule_ActionChoice() {} +func (*FallThroughRule_ApiEndpoint) isFallThroughRule_ConditionTypeChoice() {} +func (*FallThroughRule_BasePath) isFallThroughRule_ConditionTypeChoice() {} +func (*FallThroughRule_ApiGroup) isFallThroughRule_ConditionTypeChoice() {} + +func (m *FallThroughRule) GetActionChoice() isFallThroughRule_ActionChoice { + if m != nil { + return m.ActionChoice + } + return nil +} +func (m *FallThroughRule) GetConditionTypeChoice() isFallThroughRule_ConditionTypeChoice { + if m != nil { + return m.ConditionTypeChoice + } + return nil +} + +func (m *FallThroughRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *FallThroughRule) GetActionSkip() *schema.Empty { + if x, ok := m.GetActionChoice().(*FallThroughRule_ActionSkip); ok { + return x.ActionSkip + } + return nil +} + +func (m *FallThroughRule) GetActionReport() *schema.Empty { + if x, ok := m.GetActionChoice().(*FallThroughRule_ActionReport); ok { + return x.ActionReport + } + return nil +} + +func (m *FallThroughRule) GetActionBlock() *schema.Empty { + if x, ok := m.GetActionChoice().(*FallThroughRule_ActionBlock); ok { + return x.ActionBlock + } + return nil +} + +func (m *FallThroughRule) GetApiEndpoint() *ApiEndpointDetails { + if x, ok := m.GetConditionTypeChoice().(*FallThroughRule_ApiEndpoint); ok { + return x.ApiEndpoint + } + return nil +} + +func (m *FallThroughRule) GetBasePath() string { + if x, ok := m.GetConditionTypeChoice().(*FallThroughRule_BasePath); ok { + return x.BasePath + } + return "" +} + +func (m *FallThroughRule) GetApiGroup() string { + if x, ok := m.GetConditionTypeChoice().(*FallThroughRule_ApiGroup); ok { + return x.ApiGroup + } + return "" +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*FallThroughRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*FallThroughRule_ActionSkip)(nil), + (*FallThroughRule_ActionReport)(nil), + (*FallThroughRule_ActionBlock)(nil), + (*FallThroughRule_ApiEndpoint)(nil), + (*FallThroughRule_BasePath)(nil), + (*FallThroughRule_ApiGroup)(nil), + } +} + +// ValidateApiBySpecRule +// +// x-displayName: "Custom List" +// Define API groups, base paths, or API endpoints and their OpenAPI validation modes. +// +// Any other api-endpoint not listed will act according to "Fall Through Mode". +type ValidateApiBySpecRule struct { + // Validation List + // + // x-required + // x-displayName: "Validation List" + OpenApiValidationRules []*OpenApiValidationRule `protobuf:"bytes,1,rep,name=open_api_validation_rules,json=openApiValidationRules,proto3" json:"open_api_validation_rules,omitempty"` + // Fall Through Mode + // + // x-displayName: "Fall Through Mode" + // x-required + // Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules) + FallThroughMode *OpenApiFallThroughMode `protobuf:"bytes,2,opt,name=fall_through_mode,json=fallThroughMode,proto3" json:"fall_through_mode,omitempty"` + // Policy of over-sized body + // + // x-displayName: "Policy for Over-Sized Body in Request/Response" + // Policy of handling request/response with too long body + // DEPRECATED. use settings.oversized_body_choice + // + // Types that are valid to be assigned to OversizedBodyChoice: + // *ValidateApiBySpecRule_OversizedBodySkipValidation + // *ValidateApiBySpecRule_OversizedBodyFailValidation + OversizedBodyChoice isValidateApiBySpecRule_OversizedBodyChoice `protobuf_oneof:"oversized_body_choice"` + // OpenAPI specification validation common settings + // + // x-displayName: "OpenAPI specification validation settings" + // OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement + Settings *OpenApiValidationCommonSettings `protobuf:"bytes,6,opt,name=settings,proto3" json:"settings,omitempty"` +} + +func (m *ValidateApiBySpecRule) Reset() { *m = ValidateApiBySpecRule{} } +func (*ValidateApiBySpecRule) ProtoMessage() {} +func (*ValidateApiBySpecRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{26} +} +func (m *ValidateApiBySpecRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ValidateApiBySpecRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ValidateApiBySpecRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_ValidateApiBySpecRule.Merge(m, src) +} +func (m *ValidateApiBySpecRule) XXX_Size() int { + return m.Size() +} +func (m *ValidateApiBySpecRule) XXX_DiscardUnknown() { + xxx_messageInfo_ValidateApiBySpecRule.DiscardUnknown(m) +} + +var xxx_messageInfo_ValidateApiBySpecRule proto.InternalMessageInfo + +type isValidateApiBySpecRule_OversizedBodyChoice interface { + isValidateApiBySpecRule_OversizedBodyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ValidateApiBySpecRule_OversizedBodySkipValidation struct { + OversizedBodySkipValidation *schema.Empty `protobuf:"bytes,4,opt,name=oversized_body_skip_validation,json=oversizedBodySkipValidation,proto3,oneof" json:"oversized_body_skip_validation,omitempty"` +} +type ValidateApiBySpecRule_OversizedBodyFailValidation struct { + OversizedBodyFailValidation *schema.Empty `protobuf:"bytes,5,opt,name=oversized_body_fail_validation,json=oversizedBodyFailValidation,proto3,oneof" json:"oversized_body_fail_validation,omitempty"` +} + +func (*ValidateApiBySpecRule_OversizedBodySkipValidation) isValidateApiBySpecRule_OversizedBodyChoice() { +} +func (*ValidateApiBySpecRule_OversizedBodyFailValidation) isValidateApiBySpecRule_OversizedBodyChoice() { +} + +func (m *ValidateApiBySpecRule) GetOversizedBodyChoice() isValidateApiBySpecRule_OversizedBodyChoice { + if m != nil { + return m.OversizedBodyChoice + } + return nil +} + +func (m *ValidateApiBySpecRule) GetOpenApiValidationRules() []*OpenApiValidationRule { + if m != nil { + return m.OpenApiValidationRules + } + return nil +} + +func (m *ValidateApiBySpecRule) GetFallThroughMode() *OpenApiFallThroughMode { + if m != nil { + return m.FallThroughMode + } + return nil +} + +// Deprecated: Do not use. +func (m *ValidateApiBySpecRule) GetOversizedBodySkipValidation() *schema.Empty { + if x, ok := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodySkipValidation); ok { + return x.OversizedBodySkipValidation + } + return nil +} + +// Deprecated: Do not use. +func (m *ValidateApiBySpecRule) GetOversizedBodyFailValidation() *schema.Empty { + if x, ok := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodyFailValidation); ok { + return x.OversizedBodyFailValidation + } + return nil +} + +func (m *ValidateApiBySpecRule) GetSettings() *OpenApiValidationCommonSettings { + if m != nil { + return m.Settings + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ValidateApiBySpecRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ValidateApiBySpecRule_OversizedBodySkipValidation)(nil), + (*ValidateApiBySpecRule_OversizedBodyFailValidation)(nil), + } +} + +// OpenAPI Validation Rule +// +// x-displayName: "OpenAPI Validation Rule" +// OpenAPI Validation Rule for a specific endpoint, base-path, or API group +type OpenApiValidationRule struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Validation Mode + // + // x-displayName: "Validation Mode" + // x-required + // Validation mode of OpenAPI specification. + // When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger) + ValidationMode *OpenApiValidationMode `protobuf:"bytes,2,opt,name=validation_mode,json=validationMode,proto3" json:"validation_mode,omitempty"` + // domain choices + // + // x-required + // x-displayName: "Domain" + // Choose if the rule will apply for all domains or a specific one. + // + // Types that are valid to be assigned to DomainChoice: + // *OpenApiValidationRule_AnyDomain + // *OpenApiValidationRule_SpecificDomain + DomainChoice isOpenApiValidationRule_DomainChoice `protobuf_oneof:"domain_choice"` + // condition type choices + // + // x-displayName: "Type" + // x-required + // Choose type of granularity this rule applies to + // + // Types that are valid to be assigned to ConditionTypeChoice: + // *OpenApiValidationRule_ApiEndpoint + // *OpenApiValidationRule_BasePath + // *OpenApiValidationRule_ApiGroup + ConditionTypeChoice isOpenApiValidationRule_ConditionTypeChoice `protobuf_oneof:"condition_type_choice"` +} + +func (m *OpenApiValidationRule) Reset() { *m = OpenApiValidationRule{} } +func (*OpenApiValidationRule) ProtoMessage() {} +func (*OpenApiValidationRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{27} +} +func (m *OpenApiValidationRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiValidationRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiValidationRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiValidationRule.Merge(m, src) +} +func (m *OpenApiValidationRule) XXX_Size() int { + return m.Size() +} +func (m *OpenApiValidationRule) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiValidationRule.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiValidationRule proto.InternalMessageInfo + +type isOpenApiValidationRule_DomainChoice interface { + isOpenApiValidationRule_DomainChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isOpenApiValidationRule_ConditionTypeChoice interface { + isOpenApiValidationRule_ConditionTypeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiValidationRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,7,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type OpenApiValidationRule_SpecificDomain struct { + SpecificDomain string `protobuf:"bytes,8,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` +} +type OpenApiValidationRule_ApiEndpoint struct { + ApiEndpoint *ApiEndpointDetails `protobuf:"bytes,13,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof" json:"api_endpoint,omitempty"` +} +type OpenApiValidationRule_BasePath struct { + BasePath string `protobuf:"bytes,11,opt,name=base_path,json=basePath,proto3,oneof" json:"base_path,omitempty"` +} +type OpenApiValidationRule_ApiGroup struct { + ApiGroup string `protobuf:"bytes,12,opt,name=api_group,json=apiGroup,proto3,oneof" json:"api_group,omitempty"` +} + +func (*OpenApiValidationRule_AnyDomain) isOpenApiValidationRule_DomainChoice() {} +func (*OpenApiValidationRule_SpecificDomain) isOpenApiValidationRule_DomainChoice() {} +func (*OpenApiValidationRule_ApiEndpoint) isOpenApiValidationRule_ConditionTypeChoice() {} +func (*OpenApiValidationRule_BasePath) isOpenApiValidationRule_ConditionTypeChoice() {} +func (*OpenApiValidationRule_ApiGroup) isOpenApiValidationRule_ConditionTypeChoice() {} + +func (m *OpenApiValidationRule) GetDomainChoice() isOpenApiValidationRule_DomainChoice { + if m != nil { + return m.DomainChoice + } + return nil +} +func (m *OpenApiValidationRule) GetConditionTypeChoice() isOpenApiValidationRule_ConditionTypeChoice { + if m != nil { + return m.ConditionTypeChoice + } + return nil +} + +func (m *OpenApiValidationRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *OpenApiValidationRule) GetValidationMode() *OpenApiValidationMode { + if m != nil { + return m.ValidationMode + } + return nil +} + +func (m *OpenApiValidationRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainChoice().(*OpenApiValidationRule_AnyDomain); ok { + return x.AnyDomain + } + return nil +} + +func (m *OpenApiValidationRule) GetSpecificDomain() string { + if x, ok := m.GetDomainChoice().(*OpenApiValidationRule_SpecificDomain); ok { + return x.SpecificDomain + } + return "" +} + +func (m *OpenApiValidationRule) GetApiEndpoint() *ApiEndpointDetails { + if x, ok := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiEndpoint); ok { + return x.ApiEndpoint + } + return nil +} + +func (m *OpenApiValidationRule) GetBasePath() string { + if x, ok := m.GetConditionTypeChoice().(*OpenApiValidationRule_BasePath); ok { + return x.BasePath + } + return "" +} + +func (m *OpenApiValidationRule) GetApiGroup() string { + if x, ok := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiGroup); ok { + return x.ApiGroup + } + return "" +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiValidationRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiValidationRule_AnyDomain)(nil), + (*OpenApiValidationRule_SpecificDomain)(nil), + (*OpenApiValidationRule_ApiEndpoint)(nil), + (*OpenApiValidationRule_BasePath)(nil), + (*OpenApiValidationRule_ApiGroup)(nil), + } +} + +// OpenAPI specification validation common settings +// +// x-displayName: "Common Settings" +// OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement +type OpenApiValidationCommonSettings struct { + // Policy of over-sized body + // + // x-displayName: "Policy for Over-Sized Body in Request/Response" + // Policy of handling request/response with too long body + // + // Types that are valid to be assigned to OversizedBodyChoice: + // *OpenApiValidationCommonSettings_OversizedBodySkipValidation + // *OpenApiValidationCommonSettings_OversizedBodyFailValidation + OversizedBodyChoice isOpenApiValidationCommonSettings_OversizedBodyChoice `protobuf_oneof:"oversized_body_choice"` + // Property validation settings + // + // x-displayName: "Property Validation Settings" + // Request/response properties validation settings + // + // Types that are valid to be assigned to PropertyValidationSettingsChoice: + // *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault + // *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom + PropertyValidationSettingsChoice isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice `protobuf_oneof:"property_validation_settings_choice"` +} + +func (m *OpenApiValidationCommonSettings) Reset() { *m = OpenApiValidationCommonSettings{} } +func (*OpenApiValidationCommonSettings) ProtoMessage() {} +func (*OpenApiValidationCommonSettings) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{28} +} +func (m *OpenApiValidationCommonSettings) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OpenApiValidationCommonSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *OpenApiValidationCommonSettings) XXX_Merge(src proto.Message) { + xxx_messageInfo_OpenApiValidationCommonSettings.Merge(m, src) +} +func (m *OpenApiValidationCommonSettings) XXX_Size() int { + return m.Size() +} +func (m *OpenApiValidationCommonSettings) XXX_DiscardUnknown() { + xxx_messageInfo_OpenApiValidationCommonSettings.DiscardUnknown(m) +} + +var xxx_messageInfo_OpenApiValidationCommonSettings proto.InternalMessageInfo + +type isOpenApiValidationCommonSettings_OversizedBodyChoice interface { + isOpenApiValidationCommonSettings_OversizedBodyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice interface { + isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type OpenApiValidationCommonSettings_OversizedBodySkipValidation struct { + OversizedBodySkipValidation *schema.Empty `protobuf:"bytes,2,opt,name=oversized_body_skip_validation,json=oversizedBodySkipValidation,proto3,oneof" json:"oversized_body_skip_validation,omitempty"` +} +type OpenApiValidationCommonSettings_OversizedBodyFailValidation struct { + OversizedBodyFailValidation *schema.Empty `protobuf:"bytes,3,opt,name=oversized_body_fail_validation,json=oversizedBodyFailValidation,proto3,oneof" json:"oversized_body_fail_validation,omitempty"` +} +type OpenApiValidationCommonSettings_PropertyValidationSettingsDefault struct { + PropertyValidationSettingsDefault *schema.Empty `protobuf:"bytes,5,opt,name=property_validation_settings_default,json=propertyValidationSettingsDefault,proto3,oneof" json:"property_validation_settings_default,omitempty"` +} +type OpenApiValidationCommonSettings_PropertyValidationSettingsCustom struct { + PropertyValidationSettingsCustom *ValidationPropertySetting `protobuf:"bytes,6,opt,name=property_validation_settings_custom,json=propertyValidationSettingsCustom,proto3,oneof" json:"property_validation_settings_custom,omitempty"` +} + +func (*OpenApiValidationCommonSettings_OversizedBodySkipValidation) isOpenApiValidationCommonSettings_OversizedBodyChoice() { +} +func (*OpenApiValidationCommonSettings_OversizedBodyFailValidation) isOpenApiValidationCommonSettings_OversizedBodyChoice() { +} +func (*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice() { +} +func (*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice() { +} + +func (m *OpenApiValidationCommonSettings) GetOversizedBodyChoice() isOpenApiValidationCommonSettings_OversizedBodyChoice { + if m != nil { + return m.OversizedBodyChoice + } + return nil +} +func (m *OpenApiValidationCommonSettings) GetPropertyValidationSettingsChoice() isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice { + if m != nil { + return m.PropertyValidationSettingsChoice + } + return nil +} + +func (m *OpenApiValidationCommonSettings) GetOversizedBodySkipValidation() *schema.Empty { + if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodySkipValidation); ok { + return x.OversizedBodySkipValidation + } + return nil +} + +func (m *OpenApiValidationCommonSettings) GetOversizedBodyFailValidation() *schema.Empty { + if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodyFailValidation); ok { + return x.OversizedBodyFailValidation + } + return nil +} + +func (m *OpenApiValidationCommonSettings) GetPropertyValidationSettingsDefault() *schema.Empty { + if x, ok := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault); ok { + return x.PropertyValidationSettingsDefault + } + return nil +} + +func (m *OpenApiValidationCommonSettings) GetPropertyValidationSettingsCustom() *ValidationPropertySetting { + if x, ok := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom); ok { + return x.PropertyValidationSettingsCustom + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*OpenApiValidationCommonSettings) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*OpenApiValidationCommonSettings_OversizedBodySkipValidation)(nil), + (*OpenApiValidationCommonSettings_OversizedBodyFailValidation)(nil), + (*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault)(nil), + (*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom)(nil), + } +} + +// Validation Property settings +// +// x-displayName: "Validation Property Settings" +// Custom property validation settings +type ValidationPropertySetting struct { + // Query parameters validation settings + // + // x-displayName: "Validation Settings For Query Parameters" + // Custom settings for query parameters validation + QueryParameters *ValidationSettingForQueryParameters `protobuf:"bytes,1,opt,name=queryParameters,proto3" json:"queryParameters,omitempty"` + // Headers validation settings + // + // x-displayName: "Validation Settings For Headers" + // Custom settings for headers validation + Headers *ValidationSettingForHeaders `protobuf:"bytes,2,opt,name=headers,proto3" json:"headers,omitempty"` +} + +func (m *ValidationPropertySetting) Reset() { *m = ValidationPropertySetting{} } +func (*ValidationPropertySetting) ProtoMessage() {} +func (*ValidationPropertySetting) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{29} +} +func (m *ValidationPropertySetting) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ValidationPropertySetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ValidationPropertySetting) XXX_Merge(src proto.Message) { + xxx_messageInfo_ValidationPropertySetting.Merge(m, src) +} +func (m *ValidationPropertySetting) XXX_Size() int { + return m.Size() +} +func (m *ValidationPropertySetting) XXX_DiscardUnknown() { + xxx_messageInfo_ValidationPropertySetting.DiscardUnknown(m) +} + +var xxx_messageInfo_ValidationPropertySetting proto.InternalMessageInfo + +func (m *ValidationPropertySetting) GetQueryParameters() *ValidationSettingForQueryParameters { + if m != nil { + return m.QueryParameters + } + return nil +} + +func (m *ValidationPropertySetting) GetHeaders() *ValidationSettingForHeaders { + if m != nil { + return m.Headers + } + return nil +} + +// Validation Settings For Query Parameters +// +// x-displayName: "Validation Settings For Query Parameters" +// Custom settings for query parameters validation +type ValidationSettingForQueryParameters struct { + // Allow/Disallow additional query parameters in Request + // + // x-displayName: "Allow/Disallow additional query parameters in Request" + // x-required + // Allow/Disallow additional query parameters in Request + // + // Types that are valid to be assigned to AdditionalParametersChoice: + // *ValidationSettingForQueryParameters_AllowAdditionalParameters + // *ValidationSettingForQueryParameters_DisallowAdditionalParameters + AdditionalParametersChoice isValidationSettingForQueryParameters_AdditionalParametersChoice `protobuf_oneof:"additional_parameters_choice"` +} + +func (m *ValidationSettingForQueryParameters) Reset() { *m = ValidationSettingForQueryParameters{} } +func (*ValidationSettingForQueryParameters) ProtoMessage() {} +func (*ValidationSettingForQueryParameters) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{30} +} +func (m *ValidationSettingForQueryParameters) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ValidationSettingForQueryParameters) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ValidationSettingForQueryParameters) XXX_Merge(src proto.Message) { + xxx_messageInfo_ValidationSettingForQueryParameters.Merge(m, src) +} +func (m *ValidationSettingForQueryParameters) XXX_Size() int { + return m.Size() +} +func (m *ValidationSettingForQueryParameters) XXX_DiscardUnknown() { + xxx_messageInfo_ValidationSettingForQueryParameters.DiscardUnknown(m) +} + +var xxx_messageInfo_ValidationSettingForQueryParameters proto.InternalMessageInfo + +type isValidationSettingForQueryParameters_AdditionalParametersChoice interface { + isValidationSettingForQueryParameters_AdditionalParametersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ValidationSettingForQueryParameters_AllowAdditionalParameters struct { + AllowAdditionalParameters *schema.Empty `protobuf:"bytes,2,opt,name=allow_additional_parameters,json=allowAdditionalParameters,proto3,oneof" json:"allow_additional_parameters,omitempty"` +} +type ValidationSettingForQueryParameters_DisallowAdditionalParameters struct { + DisallowAdditionalParameters *schema.Empty `protobuf:"bytes,3,opt,name=disallow_additional_parameters,json=disallowAdditionalParameters,proto3,oneof" json:"disallow_additional_parameters,omitempty"` +} + +func (*ValidationSettingForQueryParameters_AllowAdditionalParameters) isValidationSettingForQueryParameters_AdditionalParametersChoice() { +} +func (*ValidationSettingForQueryParameters_DisallowAdditionalParameters) isValidationSettingForQueryParameters_AdditionalParametersChoice() { +} + +func (m *ValidationSettingForQueryParameters) GetAdditionalParametersChoice() isValidationSettingForQueryParameters_AdditionalParametersChoice { + if m != nil { + return m.AdditionalParametersChoice + } + return nil +} + +func (m *ValidationSettingForQueryParameters) GetAllowAdditionalParameters() *schema.Empty { + if x, ok := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_AllowAdditionalParameters); ok { + return x.AllowAdditionalParameters + } + return nil +} + +func (m *ValidationSettingForQueryParameters) GetDisallowAdditionalParameters() *schema.Empty { + if x, ok := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_DisallowAdditionalParameters); ok { + return x.DisallowAdditionalParameters + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ValidationSettingForQueryParameters) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ValidationSettingForQueryParameters_AllowAdditionalParameters)(nil), + (*ValidationSettingForQueryParameters_DisallowAdditionalParameters)(nil), + } +} + +// Validation Settings For Headers +// +// x-displayName: "Validation Settings For Headers" +// Custom settings for headers validation +type ValidationSettingForHeaders struct { + // Allow/Disallow additional headers in Request/Response + // + // x-displayName: "Allow/Disallow additional headers in Request/Response" + // x-required + // Allow/Disallow additional headers in Request/Response + // + // Types that are valid to be assigned to AdditionalHeadersChoice: + // *ValidationSettingForHeaders_AllowAdditionalHeaders + // *ValidationSettingForHeaders_DisallowAdditionalHeaders + AdditionalHeadersChoice isValidationSettingForHeaders_AdditionalHeadersChoice `protobuf_oneof:"additional_headers_choice"` +} + +func (m *ValidationSettingForHeaders) Reset() { *m = ValidationSettingForHeaders{} } +func (*ValidationSettingForHeaders) ProtoMessage() {} +func (*ValidationSettingForHeaders) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{31} +} +func (m *ValidationSettingForHeaders) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ValidationSettingForHeaders) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ValidationSettingForHeaders) XXX_Merge(src proto.Message) { + xxx_messageInfo_ValidationSettingForHeaders.Merge(m, src) +} +func (m *ValidationSettingForHeaders) XXX_Size() int { + return m.Size() +} +func (m *ValidationSettingForHeaders) XXX_DiscardUnknown() { + xxx_messageInfo_ValidationSettingForHeaders.DiscardUnknown(m) +} + +var xxx_messageInfo_ValidationSettingForHeaders proto.InternalMessageInfo + +type isValidationSettingForHeaders_AdditionalHeadersChoice interface { + isValidationSettingForHeaders_AdditionalHeadersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ValidationSettingForHeaders_AllowAdditionalHeaders struct { + AllowAdditionalHeaders *schema.Empty `protobuf:"bytes,2,opt,name=allow_additional_headers,json=allowAdditionalHeaders,proto3,oneof" json:"allow_additional_headers,omitempty"` +} +type ValidationSettingForHeaders_DisallowAdditionalHeaders struct { + DisallowAdditionalHeaders *schema.Empty `protobuf:"bytes,3,opt,name=disallow_additional_headers,json=disallowAdditionalHeaders,proto3,oneof" json:"disallow_additional_headers,omitempty"` +} + +func (*ValidationSettingForHeaders_AllowAdditionalHeaders) isValidationSettingForHeaders_AdditionalHeadersChoice() { +} +func (*ValidationSettingForHeaders_DisallowAdditionalHeaders) isValidationSettingForHeaders_AdditionalHeadersChoice() { +} + +func (m *ValidationSettingForHeaders) GetAdditionalHeadersChoice() isValidationSettingForHeaders_AdditionalHeadersChoice { + if m != nil { + return m.AdditionalHeadersChoice + } + return nil +} + +func (m *ValidationSettingForHeaders) GetAllowAdditionalHeaders() *schema.Empty { + if x, ok := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_AllowAdditionalHeaders); ok { + return x.AllowAdditionalHeaders + } + return nil +} + +func (m *ValidationSettingForHeaders) GetDisallowAdditionalHeaders() *schema.Empty { + if x, ok := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_DisallowAdditionalHeaders); ok { + return x.DisallowAdditionalHeaders + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ValidationSettingForHeaders) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ValidationSettingForHeaders_AllowAdditionalHeaders)(nil), + (*ValidationSettingForHeaders_DisallowAdditionalHeaders)(nil), + } +} + +// api definition list +// +// x-displayName: "API Definition List" +// List of api definitions. +type ApiDefinitionList struct { + // API Definitions + // + // x-displayName: "API Definitions" + // API Definitions using OpenAPI specification files + ApiDefinitions []*views.ObjectRefType `protobuf:"bytes,1,rep,name=api_definitions,json=apiDefinitions,proto3" json:"api_definitions,omitempty"` +} + +func (m *ApiDefinitionList) Reset() { *m = ApiDefinitionList{} } +func (*ApiDefinitionList) ProtoMessage() {} +func (*ApiDefinitionList) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{32} +} +func (m *ApiDefinitionList) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ApiDefinitionList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ApiDefinitionList) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApiDefinitionList.Merge(m, src) +} +func (m *ApiDefinitionList) XXX_Size() int { + return m.Size() +} +func (m *ApiDefinitionList) XXX_DiscardUnknown() { + xxx_messageInfo_ApiDefinitionList.DiscardUnknown(m) +} + +var xxx_messageInfo_ApiDefinitionList proto.InternalMessageInfo + +func (m *ApiDefinitionList) GetApiDefinitions() []*views.ObjectRefType { + if m != nil { + return m.ApiDefinitions + } + return nil +} + +// API Protection Rules +// +// x-displayName: "API Protection Rules" +// API Protection Rules +type APIProtectionRules struct { + // api_endpoint_rules + // + // x-displayName: "API Endpoints" + // This category defines specific rules per API endpoints. + // If request matches any of these rules, skipping second category rules. + ApiEndpointRules []*APIEndpointProtectionRule `protobuf:"bytes,1,rep,name=api_endpoint_rules,json=apiEndpointRules,proto3" json:"api_endpoint_rules,omitempty"` + // api_groups_rules + // + // x-displayName: "Server URLs and API Groups" + // This category includes rules per API group or Server URL. + // For API groups, refer to API Definition which includes API groups derived from uploaded swaggers. + ApiGroupsRules []*APIGroupProtectionRule `protobuf:"bytes,2,rep,name=api_groups_rules,json=apiGroupsRules,proto3" json:"api_groups_rules,omitempty"` +} + +func (m *APIProtectionRules) Reset() { *m = APIProtectionRules{} } +func (*APIProtectionRules) ProtoMessage() {} +func (*APIProtectionRules) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{33} +} +func (m *APIProtectionRules) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APIProtectionRules) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APIProtectionRules) XXX_Merge(src proto.Message) { + xxx_messageInfo_APIProtectionRules.Merge(m, src) +} +func (m *APIProtectionRules) XXX_Size() int { + return m.Size() +} +func (m *APIProtectionRules) XXX_DiscardUnknown() { + xxx_messageInfo_APIProtectionRules.DiscardUnknown(m) +} + +var xxx_messageInfo_APIProtectionRules proto.InternalMessageInfo + +func (m *APIProtectionRules) GetApiEndpointRules() []*APIEndpointProtectionRule { + if m != nil { + return m.ApiEndpointRules + } + return nil +} + +func (m *APIProtectionRules) GetApiGroupsRules() []*APIGroupProtectionRule { + if m != nil { + return m.ApiGroupsRules + } + return nil +} + +// API Endpoint Protection Rule +// +// x-displayName: "API Endpoint Protection Rule" +// API Protection Rule for a specific endpoint +type APIEndpointProtectionRule struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // action + // + // x-required + // x-displayName: "Rule Action" + // The action to take if the input request matches the rule. + Action *APIProtectionRuleAction `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` + // domain choices + // + // x-displayName: "Domain" + // x-required + // Choose if the rule will apply for all domains or a specific one. + // + // Types that are valid to be assigned to DomainChoice: + // *APIEndpointProtectionRule_AnyDomain + // *APIEndpointProtectionRule_SpecificDomain + DomainChoice isAPIEndpointProtectionRule_DomainChoice `protobuf_oneof:"domain_choice"` + // api endpoint path + // + // x-required + // x-example: "/endpoint1" + // x-displayName: "API Endpoint" + // The endpoint (path) of the request. + ApiEndpointPath string `protobuf:"bytes,4,opt,name=api_endpoint_path,json=apiEndpointPath,proto3" json:"api_endpoint_path,omitempty"` + // method + // + // x-displayName: "HTTP Methods" + // The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request. + // The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values. + ApiEndpointMethod *policy.HttpMethodMatcherType `protobuf:"bytes,5,opt,name=api_endpoint_method,json=apiEndpointMethod,proto3" json:"api_endpoint_method,omitempty"` + // request_matcher + // + // x-displayName: "Request" + // Conditions related to the request, such as query parameters, headers, etc. + RequestMatcher *policy.RequestMatcher `protobuf:"bytes,6,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` + // client_matcher + // + // x-displayName: "Clients" + // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. + ClientMatcher *policy.ClientMatcher `protobuf:"bytes,7,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` +} + +func (m *APIEndpointProtectionRule) Reset() { *m = APIEndpointProtectionRule{} } +func (*APIEndpointProtectionRule) ProtoMessage() {} +func (*APIEndpointProtectionRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{34} +} +func (m *APIEndpointProtectionRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APIEndpointProtectionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APIEndpointProtectionRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_APIEndpointProtectionRule.Merge(m, src) +} +func (m *APIEndpointProtectionRule) XXX_Size() int { + return m.Size() +} +func (m *APIEndpointProtectionRule) XXX_DiscardUnknown() { + xxx_messageInfo_APIEndpointProtectionRule.DiscardUnknown(m) +} + +var xxx_messageInfo_APIEndpointProtectionRule proto.InternalMessageInfo + +type isAPIEndpointProtectionRule_DomainChoice interface { + isAPIEndpointProtectionRule_DomainChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type APIEndpointProtectionRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,9,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type APIEndpointProtectionRule_SpecificDomain struct { + SpecificDomain string `protobuf:"bytes,10,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` +} + +func (*APIEndpointProtectionRule_AnyDomain) isAPIEndpointProtectionRule_DomainChoice() {} +func (*APIEndpointProtectionRule_SpecificDomain) isAPIEndpointProtectionRule_DomainChoice() {} + +func (m *APIEndpointProtectionRule) GetDomainChoice() isAPIEndpointProtectionRule_DomainChoice { + if m != nil { + return m.DomainChoice + } + return nil +} + +func (m *APIEndpointProtectionRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *APIEndpointProtectionRule) GetAction() *APIProtectionRuleAction { + if m != nil { + return m.Action + } + return nil +} + +func (m *APIEndpointProtectionRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainChoice().(*APIEndpointProtectionRule_AnyDomain); ok { + return x.AnyDomain + } + return nil +} + +func (m *APIEndpointProtectionRule) GetSpecificDomain() string { + if x, ok := m.GetDomainChoice().(*APIEndpointProtectionRule_SpecificDomain); ok { + return x.SpecificDomain + } + return "" +} + +func (m *APIEndpointProtectionRule) GetApiEndpointPath() string { + if m != nil { + return m.ApiEndpointPath + } + return "" +} + +func (m *APIEndpointProtectionRule) GetApiEndpointMethod() *policy.HttpMethodMatcherType { + if m != nil { + return m.ApiEndpointMethod + } + return nil +} + +func (m *APIEndpointProtectionRule) GetRequestMatcher() *policy.RequestMatcher { + if m != nil { + return m.RequestMatcher + } + return nil +} + +func (m *APIEndpointProtectionRule) GetClientMatcher() *policy.ClientMatcher { + if m != nil { + return m.ClientMatcher + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*APIEndpointProtectionRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*APIEndpointProtectionRule_AnyDomain)(nil), + (*APIEndpointProtectionRule_SpecificDomain)(nil), + } +} + +// API Group Protection Rule +// +// x-displayName: "API Group Protection Rule" +// API Protection Rule for a group or a base url +type APIGroupProtectionRule struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // action + // + // x-required + // x-displayName: "Rule Action" + // The action to take if the input request matches the rule. + Action *APIProtectionRuleAction `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` + // domain choices + // + // x-displayName: "Domain" + // x-required + // Choose if the rule will apply for all domains or a specific one. + // + // Types that are valid to be assigned to DomainChoice: + // *APIGroupProtectionRule_AnyDomain + // *APIGroupProtectionRule_SpecificDomain + DomainChoice isAPIGroupProtectionRule_DomainChoice `protobuf_oneof:"domain_choice"` + // base path + // + // x-required + // x-example: "/v1" + // x-displayName: "Base Path" + // Prefix of the request path. + // For example: /v1 + BasePath string `protobuf:"bytes,10,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` + // api_group + // + // x-displayName: "API Group" + // x-example: "oas-all-operations" + // API groups derived from API Definition swaggers. + // For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers. + // Custom groups can be created if user tags paths or operations with "x-volterra-api-group" extensions inside swaggers. + ApiGroup string `protobuf:"bytes,4,opt,name=api_group,json=apiGroup,proto3" json:"api_group,omitempty"` + // request_matcher + // + // x-displayName: "Request" + // Conditions related to the request, such as query parameters, headers, etc. + RequestMatcher *policy.RequestMatcher `protobuf:"bytes,5,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` + // client_matcher + // + // x-displayName: "Clients" + // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. + ClientMatcher *policy.ClientMatcher `protobuf:"bytes,6,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` +} + +func (m *APIGroupProtectionRule) Reset() { *m = APIGroupProtectionRule{} } +func (*APIGroupProtectionRule) ProtoMessage() {} +func (*APIGroupProtectionRule) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{35} +} +func (m *APIGroupProtectionRule) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APIGroupProtectionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APIGroupProtectionRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_APIGroupProtectionRule.Merge(m, src) +} +func (m *APIGroupProtectionRule) XXX_Size() int { + return m.Size() +} +func (m *APIGroupProtectionRule) XXX_DiscardUnknown() { + xxx_messageInfo_APIGroupProtectionRule.DiscardUnknown(m) +} + +var xxx_messageInfo_APIGroupProtectionRule proto.InternalMessageInfo + +type isAPIGroupProtectionRule_DomainChoice interface { + isAPIGroupProtectionRule_DomainChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type APIGroupProtectionRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,8,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type APIGroupProtectionRule_SpecificDomain struct { + SpecificDomain string `protobuf:"bytes,9,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` +} + +func (*APIGroupProtectionRule_AnyDomain) isAPIGroupProtectionRule_DomainChoice() {} +func (*APIGroupProtectionRule_SpecificDomain) isAPIGroupProtectionRule_DomainChoice() {} + +func (m *APIGroupProtectionRule) GetDomainChoice() isAPIGroupProtectionRule_DomainChoice { + if m != nil { + return m.DomainChoice + } + return nil +} + +func (m *APIGroupProtectionRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *APIGroupProtectionRule) GetAction() *APIProtectionRuleAction { + if m != nil { + return m.Action + } + return nil +} + +func (m *APIGroupProtectionRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainChoice().(*APIGroupProtectionRule_AnyDomain); ok { + return x.AnyDomain + } + return nil +} + +func (m *APIGroupProtectionRule) GetSpecificDomain() string { + if x, ok := m.GetDomainChoice().(*APIGroupProtectionRule_SpecificDomain); ok { + return x.SpecificDomain + } + return "" +} + +func (m *APIGroupProtectionRule) GetBasePath() string { + if m != nil { + return m.BasePath + } + return "" +} + +func (m *APIGroupProtectionRule) GetApiGroup() string { + if m != nil { + return m.ApiGroup + } + return "" +} + +func (m *APIGroupProtectionRule) GetRequestMatcher() *policy.RequestMatcher { + if m != nil { + return m.RequestMatcher + } + return nil +} + +func (m *APIGroupProtectionRule) GetClientMatcher() *policy.ClientMatcher { + if m != nil { + return m.ClientMatcher + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*APIGroupProtectionRule) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*APIGroupProtectionRule_AnyDomain)(nil), + (*APIGroupProtectionRule_SpecificDomain)(nil), + } +} + +// API Protection Rule Action +// +// x-displayName: "API Protection Rule Action" +// The action to take if the input request matches the rule. +type APIProtectionRuleAction struct { + // action + // + // x-displayName: "Action" + // x-required + // The action to take when rule is matched. + // + // Types that are valid to be assigned to Action: + // *APIProtectionRuleAction_Allow + // *APIProtectionRuleAction_Deny + Action isAPIProtectionRuleAction_Action `protobuf_oneof:"action"` +} + +func (m *APIProtectionRuleAction) Reset() { *m = APIProtectionRuleAction{} } +func (*APIProtectionRuleAction) ProtoMessage() {} +func (*APIProtectionRuleAction) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{36} +} +func (m *APIProtectionRuleAction) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *APIProtectionRuleAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *APIProtectionRuleAction) XXX_Merge(src proto.Message) { + xxx_messageInfo_APIProtectionRuleAction.Merge(m, src) +} +func (m *APIProtectionRuleAction) XXX_Size() int { + return m.Size() +} +func (m *APIProtectionRuleAction) XXX_DiscardUnknown() { + xxx_messageInfo_APIProtectionRuleAction.DiscardUnknown(m) +} + +var xxx_messageInfo_APIProtectionRuleAction proto.InternalMessageInfo + +type isAPIProtectionRuleAction_Action interface { + isAPIProtectionRuleAction_Action() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type APIProtectionRuleAction_Allow struct { + Allow *schema.Empty `protobuf:"bytes,2,opt,name=allow,proto3,oneof" json:"allow,omitempty"` +} +type APIProtectionRuleAction_Deny struct { + Deny *schema.Empty `protobuf:"bytes,3,opt,name=deny,proto3,oneof" json:"deny,omitempty"` +} + +func (*APIProtectionRuleAction_Allow) isAPIProtectionRuleAction_Action() {} +func (*APIProtectionRuleAction_Deny) isAPIProtectionRuleAction_Action() {} + +func (m *APIProtectionRuleAction) GetAction() isAPIProtectionRuleAction_Action { + if m != nil { + return m.Action + } + return nil +} + +func (m *APIProtectionRuleAction) GetAllow() *schema.Empty { + if x, ok := m.GetAction().(*APIProtectionRuleAction_Allow); ok { + return x.Allow + } + return nil +} + +func (m *APIProtectionRuleAction) GetDeny() *schema.Empty { + if x, ok := m.GetAction().(*APIProtectionRuleAction_Deny); ok { + return x.Deny + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*APIProtectionRuleAction) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*APIProtectionRuleAction_Allow)(nil), + (*APIProtectionRuleAction_Deny)(nil), + } +} + +// JWT Validation +// +// x-displayName: "JWT Validation" +// JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming +// JWTs before they are passed to your API origin. JWT Validation will also stop requests with expired +// tokens or tokens that are not yet valid. +type JWTValidation struct { + // target + // + // x-displayName: "Target" + // x-required + // Define endpoints for which JWT token validation will be performed + Target *Target `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"` + // token location + // + // x-displayName: "Token Location" + // x-required + // Define where in the HTTP request the JWT token will be extracted + TokenLocation *TokenLocation `protobuf:"bytes,2,opt,name=token_location,json=tokenLocation,proto3" json:"token_location,omitempty"` + // action + // + // x-displayName: "Action" + // x-required + Action *schema.Action `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"` + // jwks_configuration + // + // x-displayName: "JSON Web Key Set (JWKS) Configuration" + // x-required + // Configuration of the encryption keys that are used for JWT signature validation. + // Currently only the option of manually importing the JSON Web Key Set (JWKS) is supported. + // + // Types that are valid to be assigned to JwksConfiguration: + // *JWTValidation_AuthServerUri + // *JWTValidation_Jwks + // *JWTValidation_JwksConfig + JwksConfiguration isJWTValidation_JwksConfiguration `protobuf_oneof:"jwks_configuration"` + // reserved_claims + // + // x-displayName: "Reserved Claims Validation" + // Configuration required for validation of reserved claims. If some claims are absent in + // the token validation of these claims should be disabled. + ReservedClaims *ReservedClaims `protobuf:"bytes,7,opt,name=reserved_claims,json=reservedClaims,proto3" json:"reserved_claims,omitempty"` + // Mandatory Claims + // + // x-displayName: "Mandatory Claims" + // Configuration for validation of mandatory claims. The system will verify that the claim exists in JWT. + // If the claim does not exist JWT token validation will fail. + MandatoryClaims *MandatoryClaims `protobuf:"bytes,9,opt,name=mandatory_claims,json=mandatoryClaims,proto3" json:"mandatory_claims,omitempty"` +} + +func (m *JWTValidation) Reset() { *m = JWTValidation{} } +func (*JWTValidation) ProtoMessage() {} +func (*JWTValidation) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{37} +} +func (m *JWTValidation) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *JWTValidation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *JWTValidation) XXX_Merge(src proto.Message) { + xxx_messageInfo_JWTValidation.Merge(m, src) +} +func (m *JWTValidation) XXX_Size() int { + return m.Size() +} +func (m *JWTValidation) XXX_DiscardUnknown() { + xxx_messageInfo_JWTValidation.DiscardUnknown(m) +} + +var xxx_messageInfo_JWTValidation proto.InternalMessageInfo + +type isJWTValidation_JwksConfiguration interface { + isJWTValidation_JwksConfiguration() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type JWTValidation_AuthServerUri struct { + AuthServerUri string `protobuf:"bytes,5,opt,name=auth_server_uri,json=authServerUri,proto3,oneof" json:"auth_server_uri,omitempty"` +} +type JWTValidation_Jwks struct { + Jwks string `protobuf:"bytes,6,opt,name=jwks,proto3,oneof" json:"jwks,omitempty"` +} +type JWTValidation_JwksConfig struct { + JwksConfig *JWKS `protobuf:"bytes,8,opt,name=jwks_config,json=jwksConfig,proto3,oneof" json:"jwks_config,omitempty"` +} + +func (*JWTValidation_AuthServerUri) isJWTValidation_JwksConfiguration() {} +func (*JWTValidation_Jwks) isJWTValidation_JwksConfiguration() {} +func (*JWTValidation_JwksConfig) isJWTValidation_JwksConfiguration() {} + +func (m *JWTValidation) GetJwksConfiguration() isJWTValidation_JwksConfiguration { + if m != nil { + return m.JwksConfiguration + } + return nil +} + +func (m *JWTValidation) GetTarget() *Target { + if m != nil { + return m.Target + } + return nil +} + +func (m *JWTValidation) GetTokenLocation() *TokenLocation { + if m != nil { + return m.TokenLocation + } + return nil +} + +func (m *JWTValidation) GetAction() *schema.Action { + if m != nil { + return m.Action + } + return nil +} + +func (m *JWTValidation) GetAuthServerUri() string { + if x, ok := m.GetJwksConfiguration().(*JWTValidation_AuthServerUri); ok { + return x.AuthServerUri + } + return "" +} + +func (m *JWTValidation) GetJwks() string { + if x, ok := m.GetJwksConfiguration().(*JWTValidation_Jwks); ok { + return x.Jwks + } + return "" +} + +func (m *JWTValidation) GetJwksConfig() *JWKS { + if x, ok := m.GetJwksConfiguration().(*JWTValidation_JwksConfig); ok { + return x.JwksConfig + } + return nil +} + +func (m *JWTValidation) GetReservedClaims() *ReservedClaims { + if m != nil { + return m.ReservedClaims + } + return nil +} + +func (m *JWTValidation) GetMandatoryClaims() *MandatoryClaims { + if m != nil { + return m.MandatoryClaims + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*JWTValidation) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*JWTValidation_AuthServerUri)(nil), + (*JWTValidation_Jwks)(nil), + (*JWTValidation_JwksConfig)(nil), + } +} + +// MandatoryClaims +// +// x-displayName: "Mandatory Claims" +// Configurable Validation of mandatory Claims. +type MandatoryClaims struct { + // Claim names + // + // x-displayName: "Claim Names" + ClaimNames []string `protobuf:"bytes,1,rep,name=claim_names,json=claimNames,proto3" json:"claim_names,omitempty"` +} + +func (m *MandatoryClaims) Reset() { *m = MandatoryClaims{} } +func (*MandatoryClaims) ProtoMessage() {} +func (*MandatoryClaims) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{38} +} +func (m *MandatoryClaims) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MandatoryClaims) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *MandatoryClaims) XXX_Merge(src proto.Message) { + xxx_messageInfo_MandatoryClaims.Merge(m, src) +} +func (m *MandatoryClaims) XXX_Size() int { + return m.Size() +} +func (m *MandatoryClaims) XXX_DiscardUnknown() { + xxx_messageInfo_MandatoryClaims.DiscardUnknown(m) +} + +var xxx_messageInfo_MandatoryClaims proto.InternalMessageInfo + +func (m *MandatoryClaims) GetClaimNames() []string { + if m != nil { + return m.ClaimNames + } + return nil +} + +// target +// +// x-displayName: "Target" +// Define endpoints for which JWT token validation will be performed +type Target struct { + // target + // + // x-displayName: "Target" + // x-required + // Define endpoints for which JWT token validation will be performed + // + // Types that are valid to be assigned to Target: + // *Target_AllEndpoint + // *Target_ApiGroups + // *Target_BasePaths + Target isTarget_Target `protobuf_oneof:"target"` +} + +func (m *Target) Reset() { *m = Target{} } +func (*Target) ProtoMessage() {} +func (*Target) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{39} +} +func (m *Target) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Target) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Target) XXX_Merge(src proto.Message) { + xxx_messageInfo_Target.Merge(m, src) +} +func (m *Target) XXX_Size() int { + return m.Size() +} +func (m *Target) XXX_DiscardUnknown() { + xxx_messageInfo_Target.DiscardUnknown(m) +} + +var xxx_messageInfo_Target proto.InternalMessageInfo + +type isTarget_Target interface { + isTarget_Target() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type Target_AllEndpoint struct { + AllEndpoint *schema.Empty `protobuf:"bytes,2,opt,name=all_endpoint,json=allEndpoint,proto3,oneof" json:"all_endpoint,omitempty"` +} +type Target_ApiGroups struct { + ApiGroups *APIGroups `protobuf:"bytes,3,opt,name=api_groups,json=apiGroups,proto3,oneof" json:"api_groups,omitempty"` +} +type Target_BasePaths struct { + BasePaths *BasePathsType `protobuf:"bytes,4,opt,name=base_paths,json=basePaths,proto3,oneof" json:"base_paths,omitempty"` +} + +func (*Target_AllEndpoint) isTarget_Target() {} +func (*Target_ApiGroups) isTarget_Target() {} +func (*Target_BasePaths) isTarget_Target() {} + +func (m *Target) GetTarget() isTarget_Target { + if m != nil { + return m.Target + } + return nil +} + +func (m *Target) GetAllEndpoint() *schema.Empty { + if x, ok := m.GetTarget().(*Target_AllEndpoint); ok { + return x.AllEndpoint + } + return nil +} + +func (m *Target) GetApiGroups() *APIGroups { + if x, ok := m.GetTarget().(*Target_ApiGroups); ok { + return x.ApiGroups + } + return nil +} + +func (m *Target) GetBasePaths() *BasePathsType { + if x, ok := m.GetTarget().(*Target_BasePaths); ok { + return x.BasePaths + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Target) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Target_AllEndpoint)(nil), + (*Target_ApiGroups)(nil), + (*Target_BasePaths)(nil), + } +} + +// jwks +// +// x-displayName: "JSON Web Key Set (JWKS)" +// The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details. +type JWKS struct { + // cleartext + // + // x-displayName: "JSON Web Key Set (JWKS)" + // The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details. + Cleartext string `protobuf:"bytes,3,opt,name=cleartext,proto3" json:"cleartext,omitempty"` +} + +func (m *JWKS) Reset() { *m = JWKS{} } +func (*JWKS) ProtoMessage() {} +func (*JWKS) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{40} +} +func (m *JWKS) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *JWKS) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *JWKS) XXX_Merge(src proto.Message) { + xxx_messageInfo_JWKS.Merge(m, src) +} +func (m *JWKS) XXX_Size() int { + return m.Size() +} +func (m *JWKS) XXX_DiscardUnknown() { + xxx_messageInfo_JWKS.DiscardUnknown(m) +} + +var xxx_messageInfo_JWKS proto.InternalMessageInfo + +func (m *JWKS) GetCleartext() string { + if m != nil { + return m.Cleartext + } + return "" +} + +// token location +// +// x-displayName: "Token Location" +// Location of JWT in Http request +type TokenLocation struct { + // token location + // + // x-displayName: "Token Location" + // x-required + // Define where in the HTTP request the JWT token will be extracted + // + // Types that are valid to be assigned to TokenLocation: + // *TokenLocation_BearerToken + // *TokenLocation_Cookie + // *TokenLocation_Header + // *TokenLocation_QueryParam + TokenLocation isTokenLocation_TokenLocation `protobuf_oneof:"token_location"` +} + +func (m *TokenLocation) Reset() { *m = TokenLocation{} } +func (*TokenLocation) ProtoMessage() {} +func (*TokenLocation) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{41} +} +func (m *TokenLocation) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *TokenLocation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *TokenLocation) XXX_Merge(src proto.Message) { + xxx_messageInfo_TokenLocation.Merge(m, src) +} +func (m *TokenLocation) XXX_Size() int { + return m.Size() +} +func (m *TokenLocation) XXX_DiscardUnknown() { + xxx_messageInfo_TokenLocation.DiscardUnknown(m) +} + +var xxx_messageInfo_TokenLocation proto.InternalMessageInfo + +type isTokenLocation_TokenLocation interface { + isTokenLocation_TokenLocation() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type TokenLocation_BearerToken struct { + BearerToken *schema.Empty `protobuf:"bytes,2,opt,name=bearer_token,json=bearerToken,proto3,oneof" json:"bearer_token,omitempty"` +} +type TokenLocation_Cookie struct { + Cookie string `protobuf:"bytes,3,opt,name=cookie,proto3,oneof" json:"cookie,omitempty"` +} +type TokenLocation_Header struct { + Header string `protobuf:"bytes,4,opt,name=header,proto3,oneof" json:"header,omitempty"` +} +type TokenLocation_QueryParam struct { + QueryParam string `protobuf:"bytes,5,opt,name=query_param,json=queryParam,proto3,oneof" json:"query_param,omitempty"` +} + +func (*TokenLocation_BearerToken) isTokenLocation_TokenLocation() {} +func (*TokenLocation_Cookie) isTokenLocation_TokenLocation() {} +func (*TokenLocation_Header) isTokenLocation_TokenLocation() {} +func (*TokenLocation_QueryParam) isTokenLocation_TokenLocation() {} + +func (m *TokenLocation) GetTokenLocation() isTokenLocation_TokenLocation { + if m != nil { + return m.TokenLocation + } + return nil +} + +func (m *TokenLocation) GetBearerToken() *schema.Empty { + if x, ok := m.GetTokenLocation().(*TokenLocation_BearerToken); ok { + return x.BearerToken + } + return nil +} + +func (m *TokenLocation) GetCookie() string { + if x, ok := m.GetTokenLocation().(*TokenLocation_Cookie); ok { + return x.Cookie + } + return "" +} + +func (m *TokenLocation) GetHeader() string { + if x, ok := m.GetTokenLocation().(*TokenLocation_Header); ok { + return x.Header + } + return "" +} + +func (m *TokenLocation) GetQueryParam() string { + if x, ok := m.GetTokenLocation().(*TokenLocation_QueryParam); ok { + return x.QueryParam + } + return "" +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*TokenLocation) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*TokenLocation_BearerToken)(nil), + (*TokenLocation_Cookie)(nil), + (*TokenLocation_Header)(nil), + (*TokenLocation_QueryParam)(nil), + } +} + +// reserved claims +// +// x-displayName: "Reserved claims configuration" +// Configurable Validation of reserved Claims +type ReservedClaims struct { + // issuer_validation + // + // x-displayName: "Issuer (iss)" + // x-required + // The value of the iss claim in the JWT token should exactly match the configured value + // + // Types that are valid to be assigned to IssuerValidation: + // *ReservedClaims_IssuerDisable + // *ReservedClaims_Issuer + IssuerValidation isReservedClaims_IssuerValidation `protobuf_oneof:"issuer_validation"` + // audience_validation + // + // x-displayName: "Audience (aud)" + // x-required + // The value of the aud claim in the JWT token should match one of the configured values + // + // Types that are valid to be assigned to AudienceValidation: + // *ReservedClaims_AudienceDisable + // *ReservedClaims_Audience + AudienceValidation isReservedClaims_AudienceValidation `protobuf_oneof:"audience_validation"` + // validate_period + // + // x-displayName: "Validate Period" + // x-required + // Validate that current time is before the Expiration Time (as specified in the exp claim). If exp claim is not present JWT validation fails. If Not Before (nbf) claim is present in the JWT token validate that current time is after the nbf value. + // + // Types that are valid to be assigned to ValidatePeriod: + // *ReservedClaims_ValidatePeriodDisable + // *ReservedClaims_ValidatePeriodEnable + ValidatePeriod isReservedClaims_ValidatePeriod `protobuf_oneof:"validate_period"` +} + +func (m *ReservedClaims) Reset() { *m = ReservedClaims{} } +func (*ReservedClaims) ProtoMessage() {} +func (*ReservedClaims) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{42} +} +func (m *ReservedClaims) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReservedClaims) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReservedClaims) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReservedClaims.Merge(m, src) +} +func (m *ReservedClaims) XXX_Size() int { + return m.Size() +} +func (m *ReservedClaims) XXX_DiscardUnknown() { + xxx_messageInfo_ReservedClaims.DiscardUnknown(m) +} + +var xxx_messageInfo_ReservedClaims proto.InternalMessageInfo + +type isReservedClaims_IssuerValidation interface { + isReservedClaims_IssuerValidation() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReservedClaims_AudienceValidation interface { + isReservedClaims_AudienceValidation() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReservedClaims_ValidatePeriod interface { + isReservedClaims_ValidatePeriod() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ReservedClaims_IssuerDisable struct { + IssuerDisable *schema.Empty `protobuf:"bytes,2,opt,name=issuer_disable,json=issuerDisable,proto3,oneof" json:"issuer_disable,omitempty"` +} +type ReservedClaims_Issuer struct { + Issuer string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"` +} +type ReservedClaims_AudienceDisable struct { + AudienceDisable *schema.Empty `protobuf:"bytes,5,opt,name=audience_disable,json=audienceDisable,proto3,oneof" json:"audience_disable,omitempty"` +} +type ReservedClaims_Audience struct { + Audience *Audiences `protobuf:"bytes,6,opt,name=audience,proto3,oneof" json:"audience,omitempty"` +} +type ReservedClaims_ValidatePeriodDisable struct { + ValidatePeriodDisable *schema.Empty `protobuf:"bytes,8,opt,name=validate_period_disable,json=validatePeriodDisable,proto3,oneof" json:"validate_period_disable,omitempty"` +} +type ReservedClaims_ValidatePeriodEnable struct { + ValidatePeriodEnable *schema.Empty `protobuf:"bytes,9,opt,name=validate_period_enable,json=validatePeriodEnable,proto3,oneof" json:"validate_period_enable,omitempty"` +} + +func (*ReservedClaims_IssuerDisable) isReservedClaims_IssuerValidation() {} +func (*ReservedClaims_Issuer) isReservedClaims_IssuerValidation() {} +func (*ReservedClaims_AudienceDisable) isReservedClaims_AudienceValidation() {} +func (*ReservedClaims_Audience) isReservedClaims_AudienceValidation() {} +func (*ReservedClaims_ValidatePeriodDisable) isReservedClaims_ValidatePeriod() {} +func (*ReservedClaims_ValidatePeriodEnable) isReservedClaims_ValidatePeriod() {} + +func (m *ReservedClaims) GetIssuerValidation() isReservedClaims_IssuerValidation { + if m != nil { + return m.IssuerValidation + } + return nil +} +func (m *ReservedClaims) GetAudienceValidation() isReservedClaims_AudienceValidation { + if m != nil { + return m.AudienceValidation + } + return nil +} +func (m *ReservedClaims) GetValidatePeriod() isReservedClaims_ValidatePeriod { + if m != nil { + return m.ValidatePeriod + } + return nil +} + +func (m *ReservedClaims) GetIssuerDisable() *schema.Empty { + if x, ok := m.GetIssuerValidation().(*ReservedClaims_IssuerDisable); ok { + return x.IssuerDisable + } + return nil +} + +func (m *ReservedClaims) GetIssuer() string { + if x, ok := m.GetIssuerValidation().(*ReservedClaims_Issuer); ok { + return x.Issuer + } + return "" +} + +func (m *ReservedClaims) GetAudienceDisable() *schema.Empty { + if x, ok := m.GetAudienceValidation().(*ReservedClaims_AudienceDisable); ok { + return x.AudienceDisable + } + return nil +} + +func (m *ReservedClaims) GetAudience() *Audiences { + if x, ok := m.GetAudienceValidation().(*ReservedClaims_Audience); ok { + return x.Audience + } + return nil +} + +func (m *ReservedClaims) GetValidatePeriodDisable() *schema.Empty { + if x, ok := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodDisable); ok { + return x.ValidatePeriodDisable + } + return nil +} + +func (m *ReservedClaims) GetValidatePeriodEnable() *schema.Empty { + if x, ok := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodEnable); ok { + return x.ValidatePeriodEnable + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ReservedClaims) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ReservedClaims_IssuerDisable)(nil), + (*ReservedClaims_Issuer)(nil), + (*ReservedClaims_AudienceDisable)(nil), + (*ReservedClaims_Audience)(nil), + (*ReservedClaims_ValidatePeriodDisable)(nil), + (*ReservedClaims_ValidatePeriodEnable)(nil), + } +} + +// audiences +// +// x-displayName: "Audiences" +type Audiences struct { + // audiences + // + // x-displayName: "Values" + // x-example: "value" + // x-required + Audiences []string `protobuf:"bytes,1,rep,name=audiences,proto3" json:"audiences,omitempty"` +} + +func (m *Audiences) Reset() { *m = Audiences{} } +func (*Audiences) ProtoMessage() {} +func (*Audiences) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{43} +} +func (m *Audiences) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Audiences) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Audiences) XXX_Merge(src proto.Message) { + xxx_messageInfo_Audiences.Merge(m, src) +} +func (m *Audiences) XXX_Size() int { + return m.Size() +} +func (m *Audiences) XXX_DiscardUnknown() { + xxx_messageInfo_Audiences.DiscardUnknown(m) +} + +var xxx_messageInfo_Audiences proto.InternalMessageInfo + +func (m *Audiences) GetAudiences() []string { + if m != nil { + return m.Audiences + } + return nil +} + +// base_paths +// +// x-displayName: "Base Paths" +type BasePathsType struct { + // base_paths + // + // x-displayName: "Prefix Values" + // x-example: "/basepath" + // x-required + BasePaths []string `protobuf:"bytes,1,rep,name=base_paths,json=basePaths,proto3" json:"base_paths,omitempty"` +} + +func (m *BasePathsType) Reset() { *m = BasePathsType{} } +func (*BasePathsType) ProtoMessage() {} +func (*BasePathsType) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{44} +} +func (m *BasePathsType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *BasePathsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *BasePathsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_BasePathsType.Merge(m, src) +} +func (m *BasePathsType) XXX_Size() int { + return m.Size() +} +func (m *BasePathsType) XXX_DiscardUnknown() { + xxx_messageInfo_BasePathsType.DiscardUnknown(m) +} + +var xxx_messageInfo_BasePathsType proto.InternalMessageInfo + +func (m *BasePathsType) GetBasePaths() []string { + if m != nil { + return m.BasePaths + } + return nil +} + +// API Discovery Setting +// +// x-displayName: "API Discovery Setting" +// Specifies the settings used for API discovery +type ApiDiscoverySetting struct { + // Include or Exclude data in machine learning from traffic with redirect response in Business Logic Markup + // + // x-required + // x-displayName: "Learn From Traffic With Redirect Response" + // By default, the system only learns API Endpoints and patterns from traffic with response code 2xx + // On enabling this, the AI engine will learn API Endpoints from traffic with response code 3xx in addition to 2xx + // + // Types that are valid to be assigned to LearnFromRedirectTraffic: + // *ApiDiscoverySetting_DisableLearnFromRedirectTraffic + // *ApiDiscoverySetting_EnableLearnFromRedirectTraffic + LearnFromRedirectTraffic isApiDiscoverySetting_LearnFromRedirectTraffic `protobuf_oneof:"learn_from_redirect_traffic"` + // sensitive data rules + // + // x-displayName: "Sensitive Data Detection" + // Manage rules to detect sensitive data in requests and/or response sections. + SensitiveDataDetectionRules *app_type.SensitiveDataDetectionRules `protobuf:"bytes,5,opt,name=sensitive_data_detection_rules,json=sensitiveDataDetectionRules,proto3" json:"sensitive_data_detection_rules,omitempty"` + // Discovered API Settings + // + // x-displayName: "Discovered API Settings" + // Configure Discovered API Settings. + DiscoveredApiSettings *app_type.DiscoveredAPISettings `protobuf:"bytes,6,opt,name=discovered_api_settings,json=discoveredApiSettings,proto3" json:"discovered_api_settings,omitempty"` +} + +func (m *ApiDiscoverySetting) Reset() { *m = ApiDiscoverySetting{} } +func (*ApiDiscoverySetting) ProtoMessage() {} +func (*ApiDiscoverySetting) Descriptor() ([]byte, []int) { + return fileDescriptor_0072b3e117243bde, []int{45} +} +func (m *ApiDiscoverySetting) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ApiDiscoverySetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ApiDiscoverySetting) XXX_Merge(src proto.Message) { + xxx_messageInfo_ApiDiscoverySetting.Merge(m, src) +} +func (m *ApiDiscoverySetting) XXX_Size() int { + return m.Size() +} +func (m *ApiDiscoverySetting) XXX_DiscardUnknown() { + xxx_messageInfo_ApiDiscoverySetting.DiscardUnknown(m) +} + +var xxx_messageInfo_ApiDiscoverySetting proto.InternalMessageInfo + +type isApiDiscoverySetting_LearnFromRedirectTraffic interface { + isApiDiscoverySetting_LearnFromRedirectTraffic() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ApiDiscoverySetting_DisableLearnFromRedirectTraffic struct { + DisableLearnFromRedirectTraffic *schema.Empty `protobuf:"bytes,2,opt,name=disable_learn_from_redirect_traffic,json=disableLearnFromRedirectTraffic,proto3,oneof" json:"disable_learn_from_redirect_traffic,omitempty"` +} +type ApiDiscoverySetting_EnableLearnFromRedirectTraffic struct { + EnableLearnFromRedirectTraffic *schema.Empty `protobuf:"bytes,3,opt,name=enable_learn_from_redirect_traffic,json=enableLearnFromRedirectTraffic,proto3,oneof" json:"enable_learn_from_redirect_traffic,omitempty"` +} + +func (*ApiDiscoverySetting_DisableLearnFromRedirectTraffic) isApiDiscoverySetting_LearnFromRedirectTraffic() { +} +func (*ApiDiscoverySetting_EnableLearnFromRedirectTraffic) isApiDiscoverySetting_LearnFromRedirectTraffic() { +} + +func (m *ApiDiscoverySetting) GetLearnFromRedirectTraffic() isApiDiscoverySetting_LearnFromRedirectTraffic { + if m != nil { + return m.LearnFromRedirectTraffic + } + return nil +} + +func (m *ApiDiscoverySetting) GetDisableLearnFromRedirectTraffic() *schema.Empty { + if x, ok := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_DisableLearnFromRedirectTraffic); ok { + return x.DisableLearnFromRedirectTraffic + } + return nil +} + +func (m *ApiDiscoverySetting) GetEnableLearnFromRedirectTraffic() *schema.Empty { + if x, ok := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_EnableLearnFromRedirectTraffic); ok { + return x.EnableLearnFromRedirectTraffic + } + return nil +} + +func (m *ApiDiscoverySetting) GetSensitiveDataDetectionRules() *app_type.SensitiveDataDetectionRules { + if m != nil { + return m.SensitiveDataDetectionRules + } + return nil +} + +func (m *ApiDiscoverySetting) GetDiscoveredApiSettings() *app_type.DiscoveredAPISettings { + if m != nil { + return m.DiscoveredApiSettings + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ApiDiscoverySetting) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ApiDiscoverySetting_DisableLearnFromRedirectTraffic)(nil), + (*ApiDiscoverySetting_EnableLearnFromRedirectTraffic)(nil), + } +} + +func init() { + proto.RegisterEnum("ves.io.schema.views.common_waf.ClientSrcRuleAction", ClientSrcRuleAction_name, ClientSrcRuleAction_value) + golang_proto.RegisterEnum("ves.io.schema.views.common_waf.ClientSrcRuleAction", ClientSrcRuleAction_name, ClientSrcRuleAction_value) + proto.RegisterType((*ServicePolicyList)(nil), "ves.io.schema.views.common_waf.ServicePolicyList") + golang_proto.RegisterType((*ServicePolicyList)(nil), "ves.io.schema.views.common_waf.ServicePolicyList") + proto.RegisterType((*EnableChallenge)(nil), "ves.io.schema.views.common_waf.EnableChallenge") + golang_proto.RegisterType((*EnableChallenge)(nil), "ves.io.schema.views.common_waf.EnableChallenge") + proto.RegisterType((*PolicyBasedChallenge)(nil), "ves.io.schema.views.common_waf.PolicyBasedChallenge") + golang_proto.RegisterType((*PolicyBasedChallenge)(nil), "ves.io.schema.views.common_waf.PolicyBasedChallenge") + proto.RegisterType((*ChallengeRule)(nil), "ves.io.schema.views.common_waf.ChallengeRule") + golang_proto.RegisterType((*ChallengeRule)(nil), "ves.io.schema.views.common_waf.ChallengeRule") + proto.RegisterType((*ChallengeRuleList)(nil), "ves.io.schema.views.common_waf.ChallengeRuleList") + golang_proto.RegisterType((*ChallengeRuleList)(nil), "ves.io.schema.views.common_waf.ChallengeRuleList") + proto.RegisterType((*IPThreatCategoryListType)(nil), "ves.io.schema.views.common_waf.IPThreatCategoryListType") + golang_proto.RegisterType((*IPThreatCategoryListType)(nil), "ves.io.schema.views.common_waf.IPThreatCategoryListType") + proto.RegisterType((*HttpHeaderMatcherList)(nil), "ves.io.schema.views.common_waf.HttpHeaderMatcherList") + golang_proto.RegisterType((*HttpHeaderMatcherList)(nil), "ves.io.schema.views.common_waf.HttpHeaderMatcherList") + proto.RegisterType((*SimpleClientSrcRule)(nil), "ves.io.schema.views.common_waf.SimpleClientSrcRule") + golang_proto.RegisterType((*SimpleClientSrcRule)(nil), "ves.io.schema.views.common_waf.SimpleClientSrcRule") + proto.RegisterType((*RateLimitConfigType)(nil), "ves.io.schema.views.common_waf.RateLimitConfigType") + golang_proto.RegisterType((*RateLimitConfigType)(nil), "ves.io.schema.views.common_waf.RateLimitConfigType") + proto.RegisterType((*APIRateLimit)(nil), "ves.io.schema.views.common_waf.APIRateLimit") + golang_proto.RegisterType((*APIRateLimit)(nil), "ves.io.schema.views.common_waf.APIRateLimit") + proto.RegisterType((*BypassRateLimitingRule)(nil), "ves.io.schema.views.common_waf.BypassRateLimitingRule") + golang_proto.RegisterType((*BypassRateLimitingRule)(nil), "ves.io.schema.views.common_waf.BypassRateLimitingRule") + proto.RegisterType((*APIGroups)(nil), "ves.io.schema.views.common_waf.APIGroups") + golang_proto.RegisterType((*APIGroups)(nil), "ves.io.schema.views.common_waf.APIGroups") + proto.RegisterType((*ApiEndpointDetails)(nil), "ves.io.schema.views.common_waf.ApiEndpointDetails") + golang_proto.RegisterType((*ApiEndpointDetails)(nil), "ves.io.schema.views.common_waf.ApiEndpointDetails") + proto.RegisterType((*BypassRateLimitingRules)(nil), "ves.io.schema.views.common_waf.BypassRateLimitingRules") + golang_proto.RegisterType((*BypassRateLimitingRules)(nil), "ves.io.schema.views.common_waf.BypassRateLimitingRules") + proto.RegisterType((*ApiEndpointRule)(nil), "ves.io.schema.views.common_waf.ApiEndpointRule") + golang_proto.RegisterType((*ApiEndpointRule)(nil), "ves.io.schema.views.common_waf.ApiEndpointRule") + proto.RegisterType((*InlineRateLimiter)(nil), "ves.io.schema.views.common_waf.InlineRateLimiter") + golang_proto.RegisterType((*InlineRateLimiter)(nil), "ves.io.schema.views.common_waf.InlineRateLimiter") + proto.RegisterType((*ServerUrlRule)(nil), "ves.io.schema.views.common_waf.ServerUrlRule") + golang_proto.RegisterType((*ServerUrlRule)(nil), "ves.io.schema.views.common_waf.ServerUrlRule") + proto.RegisterType((*CustomIpAllowedList)(nil), "ves.io.schema.views.common_waf.CustomIpAllowedList") + golang_proto.RegisterType((*CustomIpAllowedList)(nil), "ves.io.schema.views.common_waf.CustomIpAllowedList") + proto.RegisterType((*APISpecificationSettings)(nil), "ves.io.schema.views.common_waf.APISpecificationSettings") + golang_proto.RegisterType((*APISpecificationSettings)(nil), "ves.io.schema.views.common_waf.APISpecificationSettings") + proto.RegisterType((*OpenApiValidationAllSpecEndpointsSettings)(nil), "ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings") + golang_proto.RegisterType((*OpenApiValidationAllSpecEndpointsSettings)(nil), "ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings") + proto.RegisterType((*OpenApiValidationMode)(nil), "ves.io.schema.views.common_waf.OpenApiValidationMode") + golang_proto.RegisterType((*OpenApiValidationMode)(nil), "ves.io.schema.views.common_waf.OpenApiValidationMode") + proto.RegisterType((*OpenApiValidationModeActive)(nil), "ves.io.schema.views.common_waf.OpenApiValidationModeActive") + golang_proto.RegisterType((*OpenApiValidationModeActive)(nil), "ves.io.schema.views.common_waf.OpenApiValidationModeActive") + proto.RegisterType((*OpenApiValidationModeActiveResponse)(nil), "ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse") + golang_proto.RegisterType((*OpenApiValidationModeActiveResponse)(nil), "ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse") + proto.RegisterType((*OpenApiFallThroughMode)(nil), "ves.io.schema.views.common_waf.OpenApiFallThroughMode") + golang_proto.RegisterType((*OpenApiFallThroughMode)(nil), "ves.io.schema.views.common_waf.OpenApiFallThroughMode") + proto.RegisterType((*CustomFallThroughMode)(nil), "ves.io.schema.views.common_waf.CustomFallThroughMode") + golang_proto.RegisterType((*CustomFallThroughMode)(nil), "ves.io.schema.views.common_waf.CustomFallThroughMode") + proto.RegisterType((*FallThroughRule)(nil), "ves.io.schema.views.common_waf.FallThroughRule") + golang_proto.RegisterType((*FallThroughRule)(nil), "ves.io.schema.views.common_waf.FallThroughRule") + proto.RegisterType((*ValidateApiBySpecRule)(nil), "ves.io.schema.views.common_waf.ValidateApiBySpecRule") + golang_proto.RegisterType((*ValidateApiBySpecRule)(nil), "ves.io.schema.views.common_waf.ValidateApiBySpecRule") + proto.RegisterType((*OpenApiValidationRule)(nil), "ves.io.schema.views.common_waf.OpenApiValidationRule") + golang_proto.RegisterType((*OpenApiValidationRule)(nil), "ves.io.schema.views.common_waf.OpenApiValidationRule") + proto.RegisterType((*OpenApiValidationCommonSettings)(nil), "ves.io.schema.views.common_waf.OpenApiValidationCommonSettings") + golang_proto.RegisterType((*OpenApiValidationCommonSettings)(nil), "ves.io.schema.views.common_waf.OpenApiValidationCommonSettings") + proto.RegisterType((*ValidationPropertySetting)(nil), "ves.io.schema.views.common_waf.ValidationPropertySetting") + golang_proto.RegisterType((*ValidationPropertySetting)(nil), "ves.io.schema.views.common_waf.ValidationPropertySetting") + proto.RegisterType((*ValidationSettingForQueryParameters)(nil), "ves.io.schema.views.common_waf.ValidationSettingForQueryParameters") + golang_proto.RegisterType((*ValidationSettingForQueryParameters)(nil), "ves.io.schema.views.common_waf.ValidationSettingForQueryParameters") + proto.RegisterType((*ValidationSettingForHeaders)(nil), "ves.io.schema.views.common_waf.ValidationSettingForHeaders") + golang_proto.RegisterType((*ValidationSettingForHeaders)(nil), "ves.io.schema.views.common_waf.ValidationSettingForHeaders") + proto.RegisterType((*ApiDefinitionList)(nil), "ves.io.schema.views.common_waf.ApiDefinitionList") + golang_proto.RegisterType((*ApiDefinitionList)(nil), "ves.io.schema.views.common_waf.ApiDefinitionList") + proto.RegisterType((*APIProtectionRules)(nil), "ves.io.schema.views.common_waf.APIProtectionRules") + golang_proto.RegisterType((*APIProtectionRules)(nil), "ves.io.schema.views.common_waf.APIProtectionRules") + proto.RegisterType((*APIEndpointProtectionRule)(nil), "ves.io.schema.views.common_waf.APIEndpointProtectionRule") + golang_proto.RegisterType((*APIEndpointProtectionRule)(nil), "ves.io.schema.views.common_waf.APIEndpointProtectionRule") + proto.RegisterType((*APIGroupProtectionRule)(nil), "ves.io.schema.views.common_waf.APIGroupProtectionRule") + golang_proto.RegisterType((*APIGroupProtectionRule)(nil), "ves.io.schema.views.common_waf.APIGroupProtectionRule") + proto.RegisterType((*APIProtectionRuleAction)(nil), "ves.io.schema.views.common_waf.APIProtectionRuleAction") + golang_proto.RegisterType((*APIProtectionRuleAction)(nil), "ves.io.schema.views.common_waf.APIProtectionRuleAction") + proto.RegisterType((*JWTValidation)(nil), "ves.io.schema.views.common_waf.JWTValidation") + golang_proto.RegisterType((*JWTValidation)(nil), "ves.io.schema.views.common_waf.JWTValidation") + proto.RegisterType((*MandatoryClaims)(nil), "ves.io.schema.views.common_waf.MandatoryClaims") + golang_proto.RegisterType((*MandatoryClaims)(nil), "ves.io.schema.views.common_waf.MandatoryClaims") + proto.RegisterType((*Target)(nil), "ves.io.schema.views.common_waf.Target") + golang_proto.RegisterType((*Target)(nil), "ves.io.schema.views.common_waf.Target") + proto.RegisterType((*JWKS)(nil), "ves.io.schema.views.common_waf.JWKS") + golang_proto.RegisterType((*JWKS)(nil), "ves.io.schema.views.common_waf.JWKS") + proto.RegisterType((*TokenLocation)(nil), "ves.io.schema.views.common_waf.TokenLocation") + golang_proto.RegisterType((*TokenLocation)(nil), "ves.io.schema.views.common_waf.TokenLocation") + proto.RegisterType((*ReservedClaims)(nil), "ves.io.schema.views.common_waf.ReservedClaims") + golang_proto.RegisterType((*ReservedClaims)(nil), "ves.io.schema.views.common_waf.ReservedClaims") + proto.RegisterType((*Audiences)(nil), "ves.io.schema.views.common_waf.Audiences") + golang_proto.RegisterType((*Audiences)(nil), "ves.io.schema.views.common_waf.Audiences") + proto.RegisterType((*BasePathsType)(nil), "ves.io.schema.views.common_waf.BasePathsType") + golang_proto.RegisterType((*BasePathsType)(nil), "ves.io.schema.views.common_waf.BasePathsType") + proto.RegisterType((*ApiDiscoverySetting)(nil), "ves.io.schema.views.common_waf.ApiDiscoverySetting") + golang_proto.RegisterType((*ApiDiscoverySetting)(nil), "ves.io.schema.views.common_waf.ApiDiscoverySetting") +} + +func init() { + proto.RegisterFile("ves.io/schema/views/common_waf/common_waf_types.proto", fileDescriptor_0072b3e117243bde) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/views/common_waf/common_waf_types.proto", fileDescriptor_0072b3e117243bde) +} + +var fileDescriptor_0072b3e117243bde = []byte{ + // 6825 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3d, 0x69, 0x6c, 0x1c, 0xd7, + 0x79, 0x7c, 0x7b, 0xef, 0xc7, 0x63, 0x97, 0xc3, 0x6b, 0x45, 0xca, 0xd4, 0x7a, 0x25, 0xcb, 0x14, + 0xbd, 0x5a, 0x89, 0x2b, 0x91, 0x3a, 0x1c, 0x27, 0xde, 0x21, 0x29, 0x93, 0x8c, 0x44, 0xad, 0x87, + 0x94, 0x9d, 0x38, 0x6e, 0xa6, 0xc3, 0xdd, 0x47, 0x72, 0xac, 0xdd, 0x9d, 0xc9, 0xcc, 0x90, 0x12, + 0x8d, 0x28, 0x70, 0xdd, 0x16, 0x09, 0x9c, 0x1a, 0x4e, 0x8c, 0x00, 0x69, 0xd0, 0x20, 0x29, 0x02, + 0xb4, 0x0d, 0x0c, 0x04, 0x48, 0xdb, 0x00, 0x45, 0xb5, 0x02, 0x22, 0xb8, 0x2d, 0x10, 0x08, 0x05, + 0xaa, 0x9f, 0x86, 0x51, 0xa0, 0x31, 0x8d, 0xa2, 0x2e, 0xd0, 0x1f, 0x4e, 0x7e, 0x14, 0x01, 0x82, + 0x02, 0xc5, 0xbc, 0xf7, 0xe6, 0xda, 0x9d, 0x3d, 0x24, 0xca, 0x80, 0x8b, 0xe6, 0x1f, 0x77, 0xe6, + 0x3b, 0xde, 0xf1, 0xdd, 0xef, 0x7b, 0x43, 0x98, 0xdd, 0xc5, 0x7a, 0x4e, 0x56, 0x4e, 0xe9, 0xa5, + 0x6d, 0x5c, 0x95, 0x4e, 0xed, 0xca, 0xf8, 0x86, 0x7e, 0xaa, 0xa4, 0x54, 0xab, 0x4a, 0x4d, 0xbc, + 0x21, 0x6d, 0xba, 0xfe, 0x14, 0x8d, 0x3d, 0x15, 0xeb, 0x39, 0x55, 0x53, 0x0c, 0x85, 0x9b, 0xa4, + 0x68, 0x39, 0x8a, 0x96, 0x23, 0x68, 0x39, 0x07, 0x76, 0xfc, 0xe4, 0x96, 0x6c, 0x6c, 0xef, 0x6c, + 0x98, 0x8f, 0x4e, 0x6d, 0x29, 0x5b, 0xca, 0x29, 0x82, 0xb6, 0xb1, 0xb3, 0x49, 0x7e, 0x91, 0x1f, + 0xe4, 0x2f, 0x4a, 0x6e, 0xfc, 0xc8, 0x96, 0xa2, 0x6c, 0x55, 0xb0, 0x03, 0x65, 0xc8, 0x55, 0xac, + 0x1b, 0x52, 0x55, 0x65, 0x00, 0x19, 0xef, 0x30, 0x25, 0x55, 0x25, 0xc3, 0x39, 0xe5, 0x1a, 0xd3, + 0xf8, 0x84, 0x17, 0x46, 0x51, 0x0d, 0x59, 0xa9, 0x59, 0x2f, 0xd3, 0xde, 0x97, 0xaa, 0x52, 0x91, + 0x4b, 0x7b, 0x1e, 0xf4, 0xe3, 0x5e, 0x08, 0x4d, 0x32, 0xb0, 0x58, 0x91, 0xab, 0xb2, 0x81, 0x35, + 0x0f, 0xdc, 0x94, 0x17, 0x4e, 0xc7, 0xda, 0xae, 0x5c, 0xc2, 0xa2, 0x0f, 0xc5, 0x93, 0xed, 0x20, + 0x45, 0x6d, 0xa7, 0xe2, 0x1d, 0xff, 0x21, 0x2f, 0xb8, 0xfb, 0xd5, 0xe1, 0x86, 0x5d, 0x92, 0x2a, + 0x72, 0x59, 0x32, 0xb0, 0xff, 0xdc, 0xcc, 0xcd, 0x10, 0xbd, 0xb3, 0x3f, 0xe3, 0xb7, 0xcb, 0xee, + 0x19, 0xfa, 0x0d, 0xff, 0x88, 0x1f, 0x52, 0x9b, 0x15, 0xdb, 0x95, 0x35, 0x63, 0x47, 0xaa, 0x88, + 0xdb, 0x8a, 0x6e, 0xb8, 0xe1, 0x32, 0x6f, 0x21, 0x18, 0x5c, 0xa3, 0x93, 0x2f, 0x12, 0x36, 0x97, + 0x65, 0xdd, 0xe0, 0x5e, 0x85, 0x18, 0x61, 0x2a, 0x63, 0x3d, 0x85, 0xd2, 0xc1, 0xa9, 0xde, 0x7c, + 0x26, 0xe7, 0x27, 0x55, 0x57, 0x37, 0x5e, 0xc1, 0x25, 0x43, 0xc0, 0x9b, 0xeb, 0x7b, 0x2a, 0xe6, + 0x2f, 0xbe, 0x73, 0x6b, 0xc0, 0xbb, 0x90, 0xb7, 0xff, 0xf3, 0x6e, 0x30, 0xfc, 0x36, 0x0a, 0x24, + 0x93, 0xd6, 0x5f, 0x31, 0x64, 0xfd, 0x95, 0x42, 0xfb, 0xbf, 0xfc, 0xa7, 0x60, 0xe4, 0xed, 0x3b, + 0x28, 0x90, 0x44, 0x82, 0xcd, 0x2f, 0xf3, 0xaf, 0x11, 0x48, 0x2c, 0xd6, 0xa4, 0x8d, 0x0a, 0x9e, + 0xdf, 0x96, 0x2a, 0x15, 0x5c, 0xdb, 0xc2, 0xdc, 0x0b, 0x30, 0x51, 0xc6, 0x9b, 0xd2, 0x4e, 0xc5, + 0x10, 0xab, 0xb2, 0x21, 0x6f, 0x49, 0xe6, 0x02, 0x8a, 0x3a, 0x36, 0x0c, 0xb9, 0xb6, 0xa5, 0xa7, + 0x02, 0x69, 0x34, 0xd5, 0x9b, 0x1f, 0x6e, 0x18, 0xe2, 0x62, 0x55, 0x35, 0xf6, 0x96, 0x7a, 0x84, + 0x43, 0x0c, 0xf5, 0x8a, 0x8d, 0xb9, 0xc6, 0x10, 0xb9, 0xaf, 0xc1, 0xa1, 0xaa, 0x64, 0xf2, 0x55, + 0x76, 0x74, 0x71, 0x47, 0xc7, 0x9a, 0x8b, 0x7c, 0x2a, 0x48, 0xa8, 0x76, 0x33, 0xf1, 0xc3, 0xef, + 0xdc, 0x6a, 0x4d, 0x67, 0xa9, 0x47, 0x18, 0xb3, 0x5f, 0x5e, 0xd3, 0xb1, 0xe6, 0x8c, 0x83, 0xfb, + 0x3d, 0x38, 0x62, 0xcd, 0xeb, 0x15, 0x5d, 0x2c, 0x59, 0xf3, 0x15, 0x55, 0x49, 0x93, 0xaa, 0xd8, + 0xc0, 0x9a, 0x9e, 0x0a, 0xb7, 0x99, 0x1b, 0x12, 0x0e, 0x33, 0xf4, 0x15, 0xdd, 0x5e, 0xac, 0xa2, + 0x8d, 0xcb, 0xe9, 0x30, 0xd6, 0x8a, 0x6c, 0x84, 0x90, 0x3d, 0xd3, 0x34, 0x39, 0x47, 0x4c, 0x72, + 0x2b, 0xd2, 0xae, 0xa4, 0x97, 0x34, 0x59, 0x35, 0x6c, 0xda, 0x64, 0xb6, 0xa1, 0xfb, 0x75, 0x84, + 0x96, 0x90, 0x30, 0xf2, 0x8a, 0x2f, 0xd3, 0x2d, 0x38, 0x66, 0xcd, 0xa9, 0x24, 0xa9, 0x46, 0x69, + 0x5b, 0xf2, 0x1f, 0x41, 0xac, 0xcd, 0xc4, 0x02, 0xc2, 0xe3, 0x8c, 0xc6, 0x3c, 0x25, 0xe1, 0xc7, + 0xe8, 0x55, 0x38, 0xdc, 0x96, 0x41, 0x9c, 0x30, 0x38, 0xdd, 0x6e, 0x8a, 0x8d, 0xd4, 0x5d, 0xf3, + 0x0b, 0x08, 0xe3, 0xa5, 0x96, 0xbc, 0xf9, 0x33, 0x90, 0x6e, 0xb9, 0xe1, 0x62, 0x69, 0x5b, 0x91, + 0x4b, 0x98, 0x4b, 0xdc, 0xad, 0xa3, 0x80, 0x49, 0x6b, 0xbf, 0x8e, 0x82, 0xf9, 0xec, 0x19, 0x7e, + 0x16, 0x26, 0x5b, 0x6c, 0x87, 0x85, 0x32, 0x74, 0xb7, 0x8e, 0xc2, 0xbf, 0xa8, 0x23, 0x74, 0xbf, + 0x8e, 0x42, 0x26, 0xda, 0x6c, 0x76, 0x8e, 0xbf, 0x08, 0x47, 0xdb, 0xcd, 0xd3, 0x8d, 0x1b, 0x63, + 0xb8, 0x51, 0x13, 0xf7, 0x7c, 0xf6, 0xc2, 0x4a, 0x28, 0x86, 0x92, 0x81, 0x95, 0x50, 0x2c, 0x94, + 0x0c, 0xaf, 0x84, 0x62, 0xd1, 0x64, 0x2c, 0xf3, 0xdb, 0x5e, 0x18, 0xa6, 0x9a, 0xce, 0x4b, 0x3a, + 0x2e, 0x3b, 0x3a, 0xd6, 0x85, 0x2c, 0xb6, 0xd7, 0xb3, 0x87, 0x96, 0xc5, 0xe0, 0x41, 0x65, 0xb1, + 0xe7, 0xa0, 0xb2, 0xd8, 0x5e, 0xc9, 0x1e, 0x81, 0x2c, 0x46, 0x0e, 0x24, 0x8b, 0xa8, 0x9d, 0x2c, + 0x72, 0x32, 0x3c, 0x61, 0x4d, 0xd2, 0xc0, 0x55, 0x55, 0xd1, 0x24, 0x6d, 0x4f, 0xdc, 0xa8, 0x28, + 0xa5, 0xeb, 0x72, 0x6d, 0xab, 0x7b, 0x8d, 0xcb, 0x30, 0x22, 0xeb, 0x16, 0x0d, 0x9e, 0x91, 0x70, + 0xb1, 0xda, 0x81, 0x31, 0x87, 0x05, 0x11, 0x7b, 0x8b, 0x0f, 0xd3, 0xb6, 0xd9, 0x76, 0x33, 0xb4, + 0x29, 0x9b, 0x56, 0xd0, 0xa2, 0xee, 0x51, 0xb9, 0x11, 0xc3, 0x0f, 0xa4, 0x93, 0xf9, 0xef, 0x6d, + 0x33, 0xaf, 0xe0, 0x43, 0x9b, 0xff, 0xbe, 0x47, 0x64, 0xfe, 0x83, 0xad, 0xcd, 0xff, 0x05, 0xe8, + 0xab, 0x29, 0x8e, 0xc0, 0xa4, 0x06, 0xda, 0x4c, 0x24, 0x24, 0xf4, 0xd6, 0x14, 0x47, 0x5b, 0xd7, + 0x60, 0x5c, 0xaa, 0xdc, 0x90, 0xf6, 0x74, 0x11, 0x13, 0x5f, 0xe9, 0xd1, 0xd9, 0x54, 0xa2, 0x2d, + 0xa1, 0x31, 0x8a, 0x49, 0x9d, 0xac, 0x4b, 0x5b, 0x4d, 0x13, 0xe0, 0x25, 0xda, 0x24, 0xd3, 0xa9, + 0x64, 0x5b, 0xca, 0x87, 0xdd, 0x94, 0x1b, 0x05, 0x9a, 0x5b, 0x87, 0xb8, 0x19, 0x58, 0x89, 0x15, + 0x59, 0x37, 0x52, 0x1c, 0x21, 0x34, 0x93, 0x6b, 0x1f, 0xac, 0xe6, 0x6c, 0x6c, 0x61, 0xa7, 0x82, + 0xcd, 0xd8, 0x84, 0x0f, 0x7d, 0x5c, 0x47, 0x48, 0x88, 0x69, 0xd6, 0xef, 0x99, 0x8e, 0x56, 0xb5, + 0xc9, 0x10, 0xcf, 0x75, 0x67, 0x51, 0x4d, 0xbc, 0xb0, 0xdb, 0x12, 0x3f, 0x0d, 0xc7, 0xda, 0x6a, + 0x98, 0xc7, 0x14, 0xbb, 0xcc, 0xb0, 0x39, 0x62, 0x7e, 0xb6, 0x0b, 0x97, 0x31, 0x78, 0xb7, 0x8e, + 0x7a, 0xef, 0xd7, 0x11, 0xec, 0xd7, 0x51, 0x78, 0x66, 0x26, 0x3b, 0x93, 0xe7, 0xa7, 0x20, 0xe9, + 0x8c, 0x91, 0x81, 0x0d, 0xdf, 0xad, 0xa3, 0x81, 0xfb, 0x75, 0xd4, 0xbf, 0x5f, 0x47, 0xb1, 0x99, + 0xb3, 0xd9, 0x99, 0xd9, 0xec, 0xcc, 0x5c, 0xb3, 0xad, 0x5f, 0x09, 0xc5, 0x20, 0xd9, 0xbb, 0x12, + 0x8a, 0xf5, 0x27, 0x07, 0x56, 0x42, 0xb1, 0xc1, 0x24, 0x97, 0xb9, 0x1d, 0x87, 0x7e, 0xcf, 0x92, + 0x72, 0x17, 0x21, 0x56, 0xc5, 0x86, 0x54, 0x96, 0x0c, 0x29, 0x85, 0xc8, 0x9e, 0x4c, 0x36, 0xec, + 0xc9, 0x15, 0xac, 0xeb, 0xd2, 0x16, 0xbe, 0x82, 0x0d, 0xc9, 0x14, 0x77, 0xc1, 0x86, 0xe7, 0x56, + 0x21, 0xa4, 0xab, 0xb8, 0xc4, 0xfc, 0xc2, 0xd9, 0x06, 0x3c, 0x9f, 0x98, 0xda, 0xbb, 0x9d, 0x6b, + 0x2a, 0x2e, 0x51, 0xd5, 0x17, 0x08, 0x9d, 0x8b, 0xdf, 0x8f, 0xdd, 0xab, 0xa3, 0xef, 0xc6, 0x60, + 0x0c, 0x42, 0xab, 0x52, 0x15, 0x8f, 0x27, 0xa0, 0xdf, 0xe2, 0x95, 0xab, 0x49, 0x55, 0x0c, 0x7f, + 0x8b, 0x20, 0x69, 0x93, 0x48, 0x17, 0x4a, 0xe6, 0xda, 0x4d, 0xff, 0x00, 0xc1, 0x9f, 0x21, 0x78, + 0x0a, 0x46, 0x4d, 0x1a, 0xb9, 0xb2, 0xac, 0x53, 0xd1, 0xb5, 0xc0, 0xf2, 0x83, 0x0b, 0xf4, 0x51, + 0xda, 0xc6, 0x84, 0xf3, 0x90, 0x26, 0xc0, 0x96, 0xee, 0xd8, 0xde, 0xc5, 0x85, 0x36, 0xec, 0xf8, + 0x1c, 0x17, 0x66, 0x1e, 0x1e, 0x73, 0x63, 0x36, 0x89, 0x51, 0x7e, 0x90, 0x89, 0xbd, 0x0b, 0xe7, + 0x16, 0x04, 0x96, 0x8b, 0xd3, 0x37, 0x60, 0x07, 0x38, 0xe8, 0x25, 0xd8, 0x52, 0x6d, 0x4f, 0x94, + 0xd5, 0x7c, 0xb0, 0x50, 0xdb, 0x83, 0x53, 0x70, 0x84, 0x3c, 0x93, 0x55, 0x51, 0xd5, 0xf0, 0xa6, + 0x7c, 0x93, 0xe8, 0x87, 0xf3, 0x13, 0xeb, 0x99, 0xbe, 0x64, 0x70, 0x3a, 0x56, 0x64, 0xbf, 0x20, + 0x07, 0x13, 0x16, 0x42, 0x55, 0x32, 0x4a, 0xdb, 0x58, 0xcb, 0x31, 0x44, 0x1d, 0x1b, 0x7a, 0x26, + 0x91, 0x0c, 0x4e, 0xf7, 0x52, 0xe0, 0xf4, 0x1a, 0x36, 0x74, 0xd8, 0x81, 0x60, 0x61, 0x6d, 0x75, + 0xba, 0x06, 0x15, 0x18, 0x82, 0x3e, 0x9b, 0xbf, 0xa4, 0xd7, 0xe8, 0x00, 0xa6, 0x21, 0x45, 0x1f, + 0xea, 0x35, 0xca, 0x5a, 0xd2, 0xc5, 0xda, 0x4e, 0x75, 0x03, 0x6b, 0x7a, 0x66, 0x20, 0x19, 0x9c, + 0x86, 0xc2, 0x5a, 0x7a, 0x95, 0xfe, 0x86, 0x13, 0x70, 0xc8, 0x86, 0xb5, 0x98, 0x9b, 0x7f, 0x13, + 0xce, 0x64, 0x98, 0x85, 0xb5, 0x55, 0xca, 0xf6, 0x33, 0x10, 0x99, 0xaf, 0xc8, 0xb8, 0x66, 0x4c, + 0xe7, 0xe1, 0x34, 0x8c, 0x42, 0xc2, 0xe6, 0x5c, 0x22, 0x8f, 0x29, 0xf3, 0x51, 0x18, 0x26, 0xcf, + 0xe9, 0x33, 0x51, 0xc7, 0x15, 0x5c, 0x32, 0x14, 0x0d, 0x56, 0x21, 0xb9, 0x7e, 0x79, 0x2d, 0x7d, + 0x49, 0xae, 0x6d, 0x61, 0x4d, 0xd5, 0xe4, 0x9a, 0xa1, 0x67, 0x2e, 0xc2, 0x61, 0x02, 0x6b, 0x54, + 0x74, 0x71, 0xd3, 0x79, 0x61, 0x0d, 0x84, 0x83, 0x79, 0xa5, 0xb6, 0x29, 0x6f, 0xed, 0x68, 0xb8, + 0x3c, 0x3e, 0xb0, 0xaa, 0x18, 0x69, 0xe7, 0x37, 0x9c, 0x86, 0xc8, 0x82, 0x52, 0x95, 0xe4, 0x5a, + 0x12, 0xf1, 0xc7, 0xd8, 0xee, 0x97, 0xc9, 0x03, 0x7b, 0x1e, 0xf8, 0xa6, 0x54, 0x32, 0xc4, 0x5d, + 0xa9, 0xb2, 0x83, 0xf5, 0x64, 0x10, 0xe6, 0xa0, 0x8f, 0x62, 0xa4, 0x05, 0xbc, 0x85, 0x6f, 0xb6, + 0xc6, 0xd3, 0xcc, 0xd7, 0x0e, 0xde, 0x31, 0x08, 0x15, 0x25, 0x63, 0x3b, 0x89, 0xf8, 0x71, 0x26, + 0x92, 0xaa, 0x64, 0x6c, 0x37, 0x52, 0xcf, 0x42, 0xaf, 0x09, 0x95, 0xa6, 0x1b, 0x95, 0x44, 0xfc, + 0x04, 0x8c, 0x39, 0xc0, 0x6c, 0x3f, 0x6d, 0xe8, 0x69, 0x00, 0x02, 0x6d, 0x8d, 0xc4, 0x43, 0xb9, + 0x81, 0xff, 0x51, 0x88, 0x2e, 0x61, 0xa9, 0x8c, 0x35, 0x3d, 0x89, 0xf8, 0x51, 0xb6, 0xe1, 0xdb, + 0xec, 0x49, 0x30, 0x13, 0x22, 0x8a, 0xf4, 0x14, 0x44, 0xaf, 0x60, 0x63, 0x5b, 0x29, 0x9b, 0x40, + 0x93, 0x4c, 0x00, 0xb6, 0x0d, 0x43, 0x15, 0xab, 0xe4, 0x71, 0xae, 0xca, 0xde, 0x06, 0x4f, 0x23, + 0xc8, 0x42, 0xdf, 0xf3, 0x3b, 0x58, 0xdb, 0x4b, 0x93, 0x48, 0x40, 0x27, 0xfc, 0x07, 0x09, 0xc6, + 0x57, 0xcc, 0xc7, 0xd4, 0x00, 0x9a, 0xb4, 0x83, 0xd7, 0xf1, 0x9e, 0x49, 0x7a, 0x5e, 0x51, 0xae, + 0xcb, 0x98, 0x92, 0x66, 0xdb, 0x4b, 0x9e, 0x58, 0x4b, 0xe6, 0x1e, 0x07, 0x2c, 0xde, 0x54, 0x65, + 0x8d, 0x58, 0xc1, 0x24, 0x1a, 0x9f, 0x60, 0xf2, 0x85, 0xed, 0x87, 0xa2, 0x5d, 0x6e, 0xc8, 0xfc, + 0x21, 0x82, 0xc1, 0x26, 0x7f, 0xc0, 0x6d, 0x43, 0xd8, 0x34, 0x2d, 0x66, 0x74, 0x6a, 0x26, 0xaa, + 0x27, 0x1f, 0xc8, 0xa3, 0xf0, 0x47, 0x4d, 0xf3, 0x63, 0xa7, 0xa9, 0xcf, 0x5a, 0x7f, 0x9d, 0xf6, + 0x24, 0xa7, 0x94, 0x01, 0x35, 0xb0, 0x99, 0x37, 0x10, 0xa4, 0x96, 0x8b, 0xeb, 0xdb, 0x1a, 0x96, + 0x8c, 0x79, 0xc9, 0xc0, 0x5b, 0x8a, 0x46, 0x92, 0x66, 0xd3, 0x36, 0x72, 0x35, 0x18, 0x96, 0x55, + 0xd1, 0x20, 0x2f, 0xc5, 0x12, 0x7d, 0x6b, 0x25, 0xd1, 0x03, 0xf9, 0xe3, 0x0d, 0x63, 0xa3, 0x96, + 0x31, 0xd7, 0x48, 0x8d, 0x1f, 0xb6, 0x07, 0x94, 0x76, 0xb2, 0x65, 0x81, 0x93, 0x55, 0x0f, 0x9c, + 0x99, 0x2c, 0x8b, 0x30, 0xb2, 0x64, 0x18, 0x2a, 0xdd, 0xf0, 0x2b, 0x74, 0x75, 0xc9, 0xaa, 0x5c, + 0x82, 0x28, 0xdb, 0x73, 0x96, 0xc0, 0xa7, 0x1b, 0x78, 0x7b, 0x50, 0x48, 0x18, 0x03, 0x4e, 0xb6, + 0x2e, 0x58, 0xc8, 0x99, 0xbf, 0x8b, 0xc3, 0xd0, 0x9a, 0x5c, 0x55, 0x2b, 0x98, 0x2a, 0xf3, 0x9a, + 0x56, 0x22, 0x6e, 0xe3, 0x04, 0xc4, 0x6d, 0x0b, 0x95, 0x0a, 0xa5, 0xd1, 0x54, 0x9c, 0xe1, 0x6b, + 0xc1, 0xdf, 0x90, 0x88, 0x3c, 0x26, 0xab, 0x54, 0xb6, 0xb9, 0x2c, 0xc4, 0x6d, 0x8b, 0x42, 0x22, + 0xed, 0x7e, 0xbe, 0xdf, 0x04, 0x8d, 0x4d, 0x47, 0x52, 0xdf, 0xff, 0x79, 0x6a, 0x8a, 0x40, 0x4b, + 0x3a, 0x35, 0x31, 0xdc, 0x17, 0xa0, 0x97, 0xc8, 0x21, 0x1d, 0x00, 0x8b, 0x64, 0x66, 0x3b, 0x6d, + 0xaa, 0xef, 0x22, 0x2c, 0xf5, 0x08, 0xb0, 0x6d, 0xbf, 0xe0, 0x66, 0x21, 0x41, 0xdc, 0xae, 0x5c, + 0xc6, 0x35, 0x43, 0xde, 0x94, 0xb1, 0x96, 0x1a, 0xf4, 0x0c, 0x3c, 0xf5, 0x5a, 0x60, 0xa9, 0x47, + 0x18, 0x30, 0x81, 0x96, 0x6d, 0x18, 0xee, 0xcb, 0x30, 0xec, 0x27, 0x8d, 0x2c, 0xe0, 0x1d, 0xcf, + 0xd1, 0xf2, 0x58, 0xce, 0x2a, 0x8f, 0xe5, 0xd6, 0x2d, 0x08, 0x3e, 0x61, 0xd2, 0x85, 0xbf, 0x41, + 0xd1, 0x95, 0x70, 0xec, 0xb5, 0xff, 0xf8, 0xa3, 0x84, 0x30, 0xe4, 0x10, 0xb2, 0xa1, 0x3c, 0x0e, + 0x18, 0x1e, 0xd0, 0x01, 0x7f, 0x0e, 0x12, 0xfa, 0x75, 0xb2, 0x0f, 0x4a, 0x09, 0xeb, 0xba, 0x19, + 0x87, 0xf7, 0xb5, 0x4d, 0x65, 0x06, 0x4c, 0xf0, 0xa2, 0x0d, 0xcd, 0x5d, 0x82, 0xa1, 0x1b, 0xd2, + 0xa6, 0xd8, 0x48, 0xa4, 0xbf, 0x2d, 0x91, 0xc1, 0x1b, 0xd2, 0xe6, 0x5a, 0x13, 0x9d, 0x0d, 0xc5, + 0x68, 0xa2, 0x33, 0xd0, 0x9e, 0xce, 0x86, 0x62, 0x34, 0xd0, 0xf9, 0x1e, 0x82, 0xa8, 0x44, 0xdc, + 0xba, 0x9e, 0x4a, 0x12, 0x9d, 0x39, 0xd3, 0x51, 0x9f, 0xdd, 0x72, 0x49, 0x43, 0x02, 0x7e, 0xe5, + 0x9d, 0x3b, 0x68, 0x6a, 0xfc, 0x38, 0x11, 0xa4, 0x8a, 0x22, 0x95, 0x37, 0xa4, 0x8a, 0x54, 0x2b, + 0x61, 0x2d, 0x47, 0x8c, 0x0b, 0x89, 0xdc, 0x70, 0x99, 0xf9, 0x21, 0x9d, 0xec, 0xfe, 0xeb, 0xa6, + 0xa2, 0xdb, 0x0a, 0x00, 0x2e, 0xb5, 0xb3, 0xc6, 0x73, 0xf1, 0xdb, 0x81, 0x77, 0xeb, 0xe8, 0x0b, + 0x30, 0x00, 0xb1, 0x2b, 0xd6, 0xfa, 0x07, 0x66, 0x4e, 0x43, 0x02, 0xa2, 0x94, 0xab, 0xce, 0x05, + 0x66, 0xe6, 0xa6, 0x10, 0xa4, 0x60, 0x90, 0x8e, 0x29, 0xed, 0x92, 0x22, 0x74, 0x66, 0x0a, 0xc1, + 0x04, 0x0c, 0x3b, 0xd6, 0x2e, 0xed, 0x88, 0x00, 0xba, 0x30, 0x85, 0xee, 0xd5, 0xd1, 0x4f, 0x51, + 0xeb, 0xc8, 0x07, 0xfb, 0x10, 0x9d, 0x2e, 0xc2, 0x2a, 0xf4, 0xba, 0x14, 0xd1, 0xfc, 0x61, 0xab, + 0x1a, 0x1c, 0x81, 0x21, 0x97, 0x26, 0x59, 0x2e, 0x20, 0x13, 0x4b, 0x86, 0x98, 0xf1, 0x1d, 0x6c, + 0x52, 0x08, 0xc8, 0xf9, 0x8f, 0x70, 0x7c, 0xd4, 0x5f, 0x09, 0xf8, 0x69, 0x18, 0xb6, 0x3c, 0xb7, + 0xb2, 0xa3, 0x95, 0xec, 0x08, 0x95, 0xbb, 0x5b, 0x47, 0x66, 0x64, 0x17, 0xdc, 0xaf, 0xa3, 0xc8, + 0xd9, 0xec, 0x6c, 0x76, 0x66, 0x96, 0xbf, 0x06, 0xfd, 0x74, 0x29, 0x2d, 0xa0, 0x85, 0xbb, 0x75, + 0xd4, 0x77, 0xbf, 0x8e, 0x7a, 0x49, 0x18, 0x9b, 0xcf, 0xce, 0x9c, 0xc9, 0xce, 0x9c, 0x35, 0x63, + 0xe5, 0x37, 0x1e, 0x60, 0xf7, 0xec, 0xb0, 0x37, 0x90, 0x0c, 0xae, 0x84, 0x62, 0xc1, 0x64, 0x68, + 0x25, 0x14, 0xeb, 0x4d, 0xf6, 0x65, 0xfe, 0x27, 0x04, 0x43, 0x82, 0x64, 0xe0, 0xcb, 0x72, 0x55, + 0x36, 0x68, 0x24, 0x40, 0x4c, 0xf4, 0x15, 0xe8, 0x73, 0x57, 0x57, 0x59, 0xd0, 0x3b, 0xdd, 0x20, + 0x66, 0x6e, 0x90, 0x9c, 0x4d, 0xe6, 0x05, 0xd3, 0xc9, 0x0a, 0xbd, 0x9a, 0xf5, 0x1b, 0x6b, 0xdc, + 0x3c, 0x70, 0x35, 0x45, 0x94, 0x55, 0x51, 0xaa, 0x54, 0x94, 0x1b, 0xb8, 0x4c, 0xb3, 0x9b, 0x60, + 0xdb, 0x4a, 0x49, 0xa2, 0xa6, 0x2c, 0xab, 0x05, 0x0a, 0x4f, 0xac, 0xf5, 0x1a, 0x24, 0x1a, 0x29, + 0x84, 0x08, 0x85, 0x13, 0xbe, 0xd2, 0x4f, 0x0d, 0xeb, 0x9a, 0xa1, 0xc9, 0xb5, 0x2d, 0xcb, 0xf5, + 0x2c, 0xf5, 0x08, 0xfd, 0xb2, 0x87, 0xe8, 0x2b, 0x30, 0x5a, 0xda, 0xd1, 0x0d, 0xa5, 0xda, 0x34, + 0xba, 0x70, 0x8b, 0x82, 0x4b, 0xa3, 0x66, 0x11, 0x6c, 0xcf, 0x48, 0x97, 0x7a, 0x84, 0xa1, 0x52, + 0xf3, 0x63, 0xee, 0x1c, 0xf4, 0xd6, 0x14, 0xd1, 0xae, 0x19, 0xb7, 0x37, 0x42, 0x50, 0x53, 0x8a, + 0x0c, 0x92, 0x7b, 0xde, 0x55, 0x69, 0xee, 0x6f, 0x33, 0x2c, 0x9f, 0x82, 0x78, 0xce, 0x29, 0x58, + 0x2f, 0xb9, 0x0a, 0xc8, 0x17, 0xa7, 0xde, 0xad, 0xa3, 0x63, 0x90, 0x81, 0x94, 0xb9, 0x6d, 0x69, + 0xb2, 0x4f, 0x76, 0x24, 0x48, 0xf3, 0xee, 0xc8, 0x4c, 0x36, 0x9f, 0x9d, 0x99, 0xe1, 0x9f, 0x82, + 0xd1, 0x86, 0xa5, 0x71, 0x27, 0x62, 0xc1, 0xfb, 0x75, 0x14, 0x30, 0x13, 0xb1, 0x33, 0xd9, 0xb3, + 0xd9, 0x59, 0x3e, 0x03, 0xfd, 0x2c, 0x93, 0x71, 0xc1, 0x58, 0xe2, 0x1b, 0x26, 0xe2, 0x6b, 0x4b, + 0xa1, 0x29, 0x7f, 0x3f, 0x09, 0x43, 0x5f, 0xa1, 0xb8, 0x6c, 0xcb, 0x4e, 0x0b, 0x49, 0x09, 0x1c, + 0x58, 0x52, 0x82, 0x9f, 0xa0, 0xa4, 0x84, 0x1e, 0xb9, 0xa4, 0x7c, 0x15, 0xc6, 0x37, 0xf6, 0x54, + 0x49, 0xd7, 0x45, 0x67, 0x4b, 0xcd, 0x2c, 0x9a, 0xc6, 0x70, 0x54, 0x32, 0xcf, 0x75, 0xe2, 0xc7, + 0x13, 0x0a, 0xf6, 0xd2, 0xca, 0xb5, 0x2d, 0xd3, 0xf8, 0xeb, 0xb4, 0x36, 0xb0, 0xd4, 0x23, 0x8c, + 0x6d, 0xf8, 0x03, 0x70, 0x35, 0x48, 0x9a, 0x69, 0x29, 0xd6, 0xc4, 0x1d, 0xad, 0xc2, 0x78, 0x46, + 0xba, 0x8b, 0x1b, 0xd7, 0x08, 0xde, 0x35, 0xad, 0x42, 0xe2, 0xc6, 0x11, 0xdb, 0x57, 0x0c, 0xbb, + 0x23, 0xc5, 0x01, 0xdd, 0x0d, 0xa5, 0x73, 0x06, 0x70, 0x92, 0x2a, 0x8b, 0xb8, 0x56, 0x56, 0x15, + 0x33, 0x55, 0xa1, 0x1c, 0xa3, 0x84, 0xe3, 0xa9, 0x4e, 0x1c, 0x0b, 0xaa, 0xbc, 0xc8, 0x10, 0xdb, + 0xf1, 0x4c, 0x4a, 0x5e, 0x38, 0x9d, 0x3f, 0xd9, 0x52, 0xae, 0x87, 0x5c, 0xa5, 0x90, 0x68, 0x3e, + 0x4b, 0x24, 0x9b, 0xc5, 0xb5, 0x3f, 0x89, 0xc1, 0xa8, 0xff, 0xba, 0x72, 0xb3, 0x00, 0x66, 0xde, + 0x46, 0xf3, 0x9e, 0x0e, 0x12, 0x1b, 0x97, 0x6a, 0x7b, 0x34, 0x6f, 0xe2, 0xae, 0xd2, 0x9c, 0x4f, + 0xde, 0x94, 0x4b, 0x16, 0x6e, 0x90, 0x04, 0x5c, 0xc7, 0x6e, 0xdf, 0x41, 0x7d, 0xb1, 0xc0, 0x69, + 0x74, 0x31, 0x52, 0x22, 0x8a, 0x69, 0x07, 0x60, 0x88, 0xfd, 0xf5, 0x8d, 0x80, 0xb9, 0x8d, 0x03, + 0x16, 0x3a, 0x23, 0x78, 0x0a, 0xa2, 0xe6, 0x38, 0x76, 0xb4, 0x4a, 0x87, 0x8a, 0x6d, 0x44, 0xaa, + 0xed, 0x5d, 0xd3, 0x2a, 0xdc, 0x19, 0x88, 0x6f, 0x48, 0x3a, 0x16, 0xcd, 0x3c, 0x89, 0xd4, 0x60, + 0xe3, 0x2c, 0xb6, 0xd6, 0x82, 0x1f, 0x05, 0x90, 0xc3, 0xd5, 0xb4, 0x1f, 0x26, 0xa0, 0x99, 0x64, + 0x71, 0x2f, 0x42, 0x9f, 0x7b, 0xcf, 0x52, 0x51, 0xc2, 0x2a, 0xff, 0x00, 0xbb, 0xb5, 0x80, 0x0d, + 0x49, 0xae, 0xe8, 0x4b, 0x48, 0xe8, 0x75, 0xed, 0x0d, 0xb7, 0x02, 0x60, 0x12, 0xde, 0xd2, 0x94, + 0x1d, 0xd5, 0xaa, 0xc6, 0x9e, 0xe8, 0x48, 0xb6, 0xb8, 0xfc, 0x1c, 0x41, 0x58, 0x42, 0x42, 0x5c, + 0x52, 0x65, 0xfa, 0xc3, 0xb4, 0x03, 0x1a, 0xfe, 0xca, 0x0e, 0xd6, 0xed, 0xf4, 0x97, 0x05, 0xa4, + 0xc7, 0xfc, 0x73, 0x0c, 0x81, 0x02, 0xb3, 0xe8, 0x98, 0x0f, 0xdd, 0xad, 0x23, 0x24, 0x0c, 0x68, + 0x9e, 0xa7, 0x5c, 0x11, 0x06, 0x98, 0x37, 0xb7, 0x68, 0xd2, 0x80, 0xf4, 0xa8, 0x3f, 0x4d, 0x1a, + 0x90, 0xd8, 0x24, 0x7f, 0x7a, 0x07, 0x21, 0xa1, 0xbf, 0xe4, 0x7e, 0x78, 0xf1, 0x1b, 0xc1, 0x77, + 0xeb, 0x68, 0x1c, 0xe2, 0x5c, 0x74, 0x26, 0x9b, 0x3e, 0x9b, 0x4d, 0x5f, 0x80, 0x7e, 0x88, 0x52, + 0x3c, 0x33, 0x5c, 0x3a, 0x7d, 0xaf, 0x8e, 0xfe, 0x3d, 0x00, 0x79, 0x2b, 0x39, 0x9f, 0x9e, 0x82, + 0xe3, 0x30, 0xe8, 0x96, 0x36, 0x5a, 0x25, 0x18, 0x6c, 0x92, 0x24, 0xb8, 0x09, 0x03, 0xf3, 0x4a, + 0xad, 0x2c, 0xd3, 0x40, 0x65, 0x4f, 0xc5, 0xd3, 0x9b, 0x50, 0x06, 0xce, 0x96, 0x90, 0x7c, 0xb4, + 0x50, 0xdb, 0x4b, 0x5f, 0x13, 0x2e, 0xc3, 0x61, 0xef, 0x7e, 0xe6, 0x4d, 0xab, 0x9c, 0xb6, 0x36, + 0x05, 0x46, 0x5d, 0x22, 0x92, 0x8f, 0xf3, 0x92, 0x8e, 0xd3, 0xa6, 0x14, 0x40, 0xca, 0xbd, 0x59, + 0x79, 0x30, 0x71, 0xe8, 0xd2, 0xc3, 0x9b, 0x08, 0x12, 0x0e, 0x6b, 0x12, 0x12, 0x4c, 0xbf, 0x0a, + 0x37, 0x61, 0x0a, 0x06, 0xdd, 0x7c, 0x48, 0x72, 0xce, 0x0d, 0xf9, 0x3c, 0x84, 0x94, 0x8b, 0x27, + 0xd7, 0xeb, 0xfa, 0x01, 0x79, 0x18, 0x71, 0xb8, 0xe6, 0x9c, 0x3f, 0x33, 0x87, 0x5a, 0xbc, 0x48, + 0x02, 0x3c, 0x61, 0xe7, 0xf2, 0xfc, 0x38, 0x0c, 0x7b, 0xb8, 0xb9, 0xb2, 0x78, 0xfe, 0x10, 0xf4, + 0xb3, 0xc2, 0x05, 0xb3, 0x05, 0x31, 0xcb, 0x16, 0xf0, 0x4f, 0x42, 0xb2, 0x8c, 0x75, 0x43, 0xae, + 0xb1, 0xf0, 0xce, 0x0c, 0x93, 0x86, 0x5c, 0xc5, 0xcf, 0xe8, 0x6c, 0x76, 0x2e, 0x7b, 0x2e, 0x7b, + 0xde, 0x5d, 0x62, 0xcc, 0x68, 0x10, 0xb7, 0x65, 0x93, 0x13, 0x3d, 0xa2, 0x6d, 0x66, 0xe2, 0x71, + 0xfe, 0xd9, 0xdb, 0x77, 0xd0, 0x40, 0x2c, 0x30, 0x85, 0xbc, 0x7a, 0x0e, 0x6f, 0xa3, 0x68, 0x26, + 0xac, 0x05, 0xdf, 0x73, 0xe5, 0xdd, 0x69, 0xbf, 0x43, 0xe1, 0x1e, 0x97, 0xbc, 0x33, 0x1b, 0xf5, + 0x63, 0x04, 0x5c, 0xb3, 0x9e, 0x71, 0xe7, 0x21, 0x44, 0x34, 0x1c, 0xb9, 0xac, 0x0b, 0xf2, 0xb1, + 0x2e, 0x31, 0xf6, 0xd7, 0xb7, 0x82, 0x48, 0x20, 0x18, 0xdc, 0x17, 0x20, 0xca, 0xd6, 0x88, 0x0c, + 0x7a, 0x20, 0x7f, 0xa8, 0x31, 0x4d, 0x36, 0x0c, 0x95, 0xae, 0x2e, 0x7f, 0xd4, 0x19, 0xbd, 0x37, + 0x5b, 0x48, 0xba, 0xb3, 0x05, 0x46, 0x2e, 0xf3, 0x97, 0x08, 0xc6, 0x5a, 0xb8, 0x29, 0xee, 0x0d, + 0xd4, 0xd6, 0x09, 0x52, 0xf7, 0x30, 0xf7, 0x70, 0x4e, 0xb0, 0x95, 0x97, 0x68, 0xe5, 0x12, 0x33, + 0xaf, 0xf5, 0x42, 0xa2, 0xc1, 0xd3, 0x3c, 0xac, 0xc1, 0xff, 0x3a, 0x6a, 0x65, 0xf1, 0x5f, 0xbe, + 0x7d, 0x07, 0x2d, 0xc4, 0x02, 0x99, 0x39, 0x5a, 0x04, 0x54, 0x65, 0xd7, 0xc4, 0x73, 0xcd, 0x1e, + 0x32, 0xd7, 0x40, 0xe5, 0x81, 0x3d, 0xc5, 0x31, 0xb7, 0xe1, 0xa7, 0xe5, 0x89, 0xe8, 0x7b, 0xb7, + 0xd0, 0x47, 0xe4, 0xe8, 0xc0, 0xb6, 0xf4, 0x6f, 0x20, 0xaf, 0x76, 0x52, 0xf0, 0x30, 0x01, 0xff, + 0xf2, 0xed, 0x3b, 0xe8, 0x52, 0x0c, 0x65, 0xce, 0x77, 0x39, 0xe2, 0x26, 0x3a, 0x1d, 0xe4, 0x2f, + 0xe1, 0xf2, 0x0c, 0x64, 0x30, 0x5f, 0x82, 0x21, 0x0f, 0x0d, 0x2a, 0x48, 0xec, 0xe4, 0xf0, 0x29, + 0x7f, 0x0b, 0xec, 0x48, 0xa7, 0xab, 0x90, 0x23, 0x0c, 0xba, 0x48, 0xd3, 0xb7, 0x7e, 0xee, 0x02, + 0x3e, 0x01, 0x77, 0xd1, 0x7b, 0x30, 0x77, 0xc1, 0x95, 0x60, 0x48, 0xae, 0x55, 0xe4, 0x1a, 0x16, + 0x3d, 0x29, 0x5a, 0xac, 0xbb, 0xb3, 0xa2, 0x65, 0x82, 0x2a, 0x38, 0xc9, 0xd9, 0x12, 0x12, 0x06, + 0xe5, 0xc6, 0x87, 0x9c, 0x08, 0x49, 0x0d, 0x6f, 0x7a, 0x39, 0xc4, 0xbb, 0x3e, 0xec, 0x4b, 0xbc, + 0x73, 0xcb, 0x93, 0x3f, 0x2e, 0x91, 0x75, 0xd9, 0x74, 0x31, 0xb8, 0xf8, 0x9e, 0xe9, 0xf4, 0x9e, + 0x85, 0x49, 0xf0, 0x78, 0x1a, 0x6e, 0x80, 0xba, 0xc0, 0xd9, 0x6c, 0x7a, 0x2e, 0x9b, 0x9e, 0x39, + 0xed, 0xf5, 0x84, 0x33, 0x90, 0x00, 0x70, 0x12, 0x16, 0x0e, 0x9d, 0xbb, 0x57, 0x47, 0x6f, 0x05, + 0x1f, 0xca, 0x35, 0x1e, 0xf5, 0x32, 0x1e, 0x1f, 0xf2, 0x91, 0x72, 0xc8, 0x3a, 0x5e, 0xe3, 0x71, + 0x98, 0xf0, 0x91, 0x3c, 0x4f, 0x09, 0x78, 0x01, 0xe2, 0xeb, 0xdb, 0x1a, 0xd6, 0xb7, 0x95, 0x4a, + 0x79, 0xfa, 0x1c, 0xcc, 0xc2, 0x11, 0x78, 0xcc, 0x67, 0xa7, 0x72, 0x86, 0x05, 0x04, 0x5c, 0xf3, + 0x2a, 0x03, 0x0f, 0xb1, 0x05, 0x96, 0x83, 0x4d, 0xcf, 0xc1, 0x59, 0x98, 0x84, 0x94, 0x1f, 0x91, + 0x9d, 0x9a, 0x6c, 0x70, 0x81, 0x34, 0xf2, 0xa5, 0xf1, 0x55, 0x88, 0xcd, 0x2b, 0x3b, 0x35, 0x23, + 0xcd, 0xef, 0x4d, 0xab, 0x50, 0x83, 0x59, 0x78, 0xd2, 0x97, 0x86, 0x8e, 0x45, 0x5a, 0x40, 0xd8, + 0x10, 0x59, 0x91, 0x23, 0x0f, 0x97, 0xf9, 0xf4, 0x35, 0x1d, 0x6b, 0xe9, 0xe5, 0x32, 0x3c, 0x0e, + 0x47, 0xfc, 0xd0, 0x4c, 0x76, 0x0c, 0xdc, 0x8f, 0x3b, 0x9f, 0x6e, 0x74, 0xa2, 0x4d, 0x67, 0x8b, + 0xc7, 0x61, 0xc8, 0x93, 0xab, 0xba, 0xe0, 0x62, 0x7e, 0x9d, 0x19, 0xd1, 0x64, 0x2c, 0xf3, 0x41, + 0x00, 0x06, 0x9b, 0x84, 0x97, 0x3b, 0x09, 0x71, 0x7b, 0x39, 0x89, 0x6b, 0xeb, 0xe7, 0x13, 0xef, + 0xd7, 0x11, 0x9a, 0x21, 0x56, 0x64, 0x3a, 0x98, 0x7a, 0xed, 0x59, 0xc1, 0x81, 0xe0, 0xae, 0x42, + 0xc8, 0x5c, 0x38, 0x62, 0xad, 0x07, 0x9a, 0x92, 0x0b, 0xff, 0x7a, 0x46, 0x11, 0x6b, 0xb2, 0x52, + 0xbe, 0x56, 0x93, 0x0d, 0x1e, 0xde, 0xaf, 0xa3, 0xc8, 0xda, 0xe2, 0xfc, 0xd5, 0xd5, 0x05, 0x81, + 0x10, 0xe2, 0x16, 0x60, 0xc8, 0x67, 0x15, 0x59, 0x4a, 0xd8, 0x32, 0x61, 0xdd, 0xd1, 0xb1, 0x69, + 0x95, 0x2e, 0x6f, 0x5c, 0x23, 0x65, 0x54, 0xee, 0x65, 0xe8, 0x75, 0x2d, 0x2a, 0x8b, 0xdb, 0xbb, + 0x51, 0xb4, 0xd1, 0x77, 0x6e, 0x0d, 0x79, 0xca, 0x53, 0x25, 0xab, 0x9d, 0x2a, 0xae, 0xe1, 0x4d, + 0x4a, 0x9d, 0xcf, 0x40, 0xa2, 0x64, 0x4a, 0x83, 0xb8, 0xb1, 0xe7, 0x5e, 0x69, 0xab, 0xf4, 0x14, + 0xa4, 0xe9, 0x4d, 0x30, 0x19, 0xca, 0xfc, 0x01, 0x40, 0xbf, 0x27, 0x85, 0x7b, 0x58, 0x27, 0xf7, + 0xc7, 0x2d, 0x9d, 0xdc, 0x4b, 0xb7, 0xef, 0x20, 0x3e, 0x16, 0xc8, 0x9c, 0xf5, 0x73, 0x19, 0x8d, + 0x69, 0xe7, 0x81, 0x5d, 0xdc, 0x6e, 0xb3, 0x8b, 0xfb, 0xa2, 0x29, 0x1e, 0xa7, 0x6e, 0xdf, 0x41, + 0x9f, 0x89, 0xa1, 0x4c, 0xae, 0xab, 0x51, 0xd8, 0x24, 0x9a, 0xf8, 0x7b, 0x12, 0x24, 0x97, 0xd3, + 0xbc, 0x00, 0x71, 0x3b, 0xd4, 0x23, 0x4e, 0x24, 0xce, 0x1f, 0xf6, 0x8f, 0xf4, 0x2c, 0x54, 0x2b, + 0x8a, 0xf3, 0xf3, 0x42, 0xbd, 0x9f, 0x80, 0x17, 0x8a, 0x7f, 0x32, 0x5e, 0x28, 0xf2, 0x89, 0x7b, + 0xa1, 0xe8, 0xa3, 0xf4, 0x42, 0xb7, 0x4d, 0x2f, 0x54, 0x80, 0x34, 0x0c, 0xdb, 0xb9, 0xcb, 0xa9, + 0xb4, 0x9d, 0xdf, 0x70, 0x31, 0xea, 0x8d, 0x66, 0x66, 0xa0, 0xcf, 0xf1, 0x43, 0xe8, 0x42, 0xa3, + 0x1b, 0x9a, 0xbd, 0x57, 0x47, 0x1f, 0x3f, 0x5c, 0x86, 0x96, 0x02, 0x27, 0x9d, 0x1a, 0xf7, 0x64, + 0x39, 0x29, 0x92, 0x3a, 0xd0, 0x31, 0x99, 0x6f, 0x6c, 0x79, 0xfa, 0x9d, 0x9f, 0x79, 0x14, 0x7e, + 0x26, 0x72, 0xbf, 0x8e, 0xc2, 0x26, 0xdc, 0x5c, 0xf6, 0x9c, 0xed, 0x67, 0xc2, 0xc9, 0x48, 0xe6, + 0xaf, 0x10, 0x0c, 0xf9, 0x94, 0xea, 0xb8, 0xb7, 0x10, 0x3c, 0xe6, 0x21, 0x66, 0x95, 0x8e, 0xac, + 0x0e, 0x84, 0xd4, 0x68, 0xd7, 0x4d, 0xc0, 0x53, 0xef, 0xdc, 0xea, 0x77, 0x5a, 0x19, 0x74, 0x6c, + 0xfc, 0xa6, 0x8e, 0x7a, 0xec, 0x94, 0x24, 0xe4, 0xf4, 0x01, 0x0b, 0xe3, 0xae, 0x32, 0x3a, 0x1b, + 0x8d, 0xd5, 0xe3, 0x90, 0x79, 0x3d, 0x04, 0xa9, 0x42, 0x71, 0x79, 0x8d, 0x89, 0x94, 0xb7, 0x6d, + 0xeb, 0x65, 0x18, 0x30, 0x25, 0xa6, 0x8c, 0x37, 0xe5, 0x1a, 0x49, 0xc2, 0x59, 0x0d, 0xbf, 0x9b, + 0xe1, 0x0d, 0xbe, 0x73, 0xab, 0x01, 0x59, 0xe8, 0x97, 0x54, 0x79, 0xc1, 0xfe, 0xc9, 0x3d, 0x07, + 0x43, 0xac, 0x87, 0xdb, 0xcc, 0x85, 0x59, 0x3b, 0x49, 0xb9, 0x43, 0x45, 0x9f, 0x73, 0x50, 0x58, + 0xb7, 0x49, 0x99, 0xfb, 0x0e, 0x82, 0xc7, 0x5c, 0x94, 0xa4, 0x4a, 0x45, 0x34, 0x55, 0xc4, 0x8e, + 0xb3, 0x74, 0xe6, 0x4a, 0x97, 0x3b, 0x59, 0x94, 0xab, 0x2a, 0xae, 0x15, 0x54, 0xf9, 0x05, 0x9b, + 0x56, 0xa1, 0x52, 0x31, 0x57, 0xc6, 0x0a, 0xf0, 0x74, 0x6b, 0x65, 0xec, 0x76, 0xc8, 0xf1, 0xdd, + 0x96, 0xb0, 0x9c, 0x0e, 0xa3, 0xae, 0x51, 0xb1, 0xba, 0xaf, 0xeb, 0x58, 0xa0, 0xe3, 0x59, 0x2b, + 0x1b, 0x07, 0x2e, 0xa8, 0x32, 0xbf, 0x67, 0xd2, 0x26, 0x69, 0xa7, 0xc5, 0x7a, 0xd8, 0x21, 0x4e, + 0x45, 0x8d, 0x34, 0x69, 0x9d, 0x84, 0x94, 0x8b, 0xa9, 0x21, 0x69, 0x5b, 0xb8, 0x4d, 0xad, 0x9d, + 0xd6, 0xd1, 0x33, 0x6f, 0x86, 0xe1, 0x44, 0xd7, 0x73, 0xe7, 0xca, 0x90, 0x70, 0xb1, 0xa8, 0x2a, + 0x65, 0xcc, 0xc4, 0x62, 0xf6, 0x81, 0xd7, 0xf7, 0x8a, 0x52, 0xc6, 0xac, 0xcf, 0x6c, 0x60, 0xd7, + 0xf3, 0x94, 0xdb, 0x86, 0xc1, 0x4d, 0x73, 0x27, 0x8d, 0x6d, 0x4d, 0xd9, 0xd9, 0xda, 0xa6, 0x7c, + 0x68, 0xec, 0x30, 0xd7, 0x25, 0x9f, 0x4b, 0x52, 0xa5, 0xb2, 0x4e, 0xd1, 0x5d, 0x8c, 0x12, 0x9b, + 0xde, 0xc7, 0x5c, 0x09, 0x26, 0x95, 0x5d, 0xac, 0xe9, 0xf2, 0xab, 0xb8, 0x2c, 0x6e, 0x28, 0xe5, + 0x3d, 0x7a, 0xba, 0xea, 0x8c, 0xa7, 0x5d, 0x24, 0xc6, 0x47, 0xcc, 0x54, 0x37, 0x65, 0x6e, 0xc8, + 0x84, 0x4d, 0x85, 0x57, 0xca, 0x7b, 0x6b, 0xd7, 0x65, 0xd5, 0x99, 0xa8, 0x0f, 0x93, 0x4d, 0x49, + 0xae, 0xb8, 0x99, 0x84, 0x1f, 0x82, 0xc9, 0x25, 0x49, 0xae, 0xb8, 0x98, 0x60, 0x88, 0xd9, 0xbd, + 0x9a, 0xd4, 0x89, 0x7e, 0xee, 0x81, 0xb7, 0x64, 0x9e, 0xbc, 0xb3, 0x05, 0x3d, 0x66, 0x86, 0x02, + 0xb4, 0x11, 0xd0, 0x22, 0x7d, 0xf1, 0xc9, 0x77, 0xeb, 0xe8, 0x28, 0x3c, 0x4e, 0x0c, 0x47, 0x7a, + 0xb9, 0xb6, 0x8b, 0x6b, 0x86, 0xa2, 0xed, 0xa5, 0x9d, 0xb9, 0x70, 0xe1, 0x99, 0x6c, 0x3e, 0x3b, + 0xc7, 0x9f, 0x86, 0x91, 0x86, 0x49, 0x33, 0x49, 0x1c, 0x33, 0x43, 0x47, 0xd6, 0x42, 0x6d, 0x85, + 0x8f, 0x26, 0x13, 0x16, 0x42, 0x7e, 0x2f, 0x04, 0x23, 0xbe, 0xb2, 0xd2, 0xa0, 0x53, 0xa6, 0x4c, + 0x88, 0x52, 0xc9, 0x90, 0x77, 0x2d, 0xd1, 0x78, 0xfa, 0xa1, 0x44, 0xb0, 0x40, 0x48, 0x78, 0x75, + 0xca, 0x79, 0x6e, 0x1f, 0xfe, 0xbb, 0x36, 0xab, 0xbd, 0x91, 0x22, 0x87, 0xff, 0xae, 0x7d, 0x29, + 0x42, 0x8a, 0x10, 0xd0, 0xb0, 0xae, 0x2a, 0x35, 0x1d, 0x77, 0xb9, 0xed, 0x4b, 0x48, 0x18, 0x35, + 0xf1, 0x04, 0x86, 0xe6, 0xa2, 0xf8, 0x27, 0x08, 0x8e, 0xf8, 0x50, 0xf3, 0xac, 0x08, 0x95, 0x80, + 0xf9, 0x03, 0xac, 0x88, 0xc5, 0x78, 0x09, 0x09, 0x87, 0xb5, 0xa6, 0x41, 0x38, 0x70, 0xfc, 0x89, + 0xe6, 0x6d, 0x69, 0xe5, 0x4e, 0xf3, 0x6d, 0x06, 0xde, 0xa2, 0x1d, 0xd4, 0x53, 0x0d, 0xfd, 0xc7, + 0x20, 0x4c, 0xb4, 0x19, 0x32, 0xb7, 0x08, 0x1c, 0xae, 0x6d, 0x2a, 0x5a, 0x09, 0x57, 0xcd, 0x50, + 0x55, 0xc3, 0xaa, 0xa2, 0x75, 0x3a, 0xfc, 0x1b, 0x74, 0x61, 0x08, 0x04, 0x81, 0x9b, 0x07, 0xf7, + 0x43, 0xda, 0x83, 0xda, 0x61, 0xd7, 0x93, 0x2e, 0x04, 0xd2, 0x51, 0xcd, 0xed, 0x9b, 0xee, 0x9e, + 0xc5, 0xe1, 0xae, 0xb9, 0xaa, 0x9a, 0xa2, 0x62, 0xcd, 0x90, 0xb1, 0xe9, 0x98, 0x82, 0x53, 0x03, + 0x4d, 0x67, 0xe2, 0x4d, 0xf3, 0x2b, 0xda, 0x18, 0xbc, 0xf6, 0x7e, 0x1d, 0x2d, 0x15, 0x85, 0xab, + 0xc5, 0x45, 0x61, 0xfd, 0x8b, 0x62, 0xb1, 0xb0, 0xbe, 0x24, 0x16, 0x0b, 0x42, 0xe1, 0xca, 0xe2, + 0xfa, 0xa2, 0xb0, 0x96, 0xb5, 0x5f, 0x3c, 0x7f, 0x6d, 0x51, 0xf8, 0xa2, 0xef, 0x9b, 0xa5, 0xf5, + 0xf5, 0xa2, 0xb8, 0xb4, 0x58, 0x58, 0x58, 0x14, 0xd6, 0xcc, 0x20, 0xa1, 0xff, 0x6d, 0x04, 0x99, + 0xd8, 0xeb, 0x28, 0x9c, 0x44, 0x19, 0x14, 0xf5, 0xbb, 0x3e, 0x24, 0x4c, 0xb0, 0x49, 0xf8, 0x0e, + 0x28, 0x07, 0x13, 0xae, 0xb9, 0xb9, 0x17, 0x8d, 0x94, 0xb7, 0x1b, 0x05, 0x80, 0x15, 0x98, 0x7f, + 0x10, 0x84, 0xa3, 0x5d, 0x48, 0xde, 0xa7, 0x6a, 0x3b, 0x7f, 0x86, 0x60, 0xd2, 0x4f, 0x76, 0x0f, + 0xb4, 0x9f, 0xfc, 0xfb, 0x75, 0x34, 0xd2, 0x72, 0x73, 0x92, 0x6f, 0xa3, 0xfe, 0x4c, 0xef, 0xeb, + 0x28, 0x96, 0x44, 0xe3, 0xa1, 0x40, 0x28, 0xec, 0xbf, 0x3f, 0x3e, 0xca, 0x79, 0xe0, 0x0d, 0xfa, + 0xd3, 0x00, 0x8c, 0xfa, 0xfb, 0x51, 0xee, 0x0a, 0x8c, 0x35, 0xb9, 0x66, 0x1a, 0xc9, 0x76, 0xa8, + 0x59, 0x0c, 0x37, 0xb8, 0x5e, 0x12, 0x8c, 0x72, 0x2a, 0xa4, 0x9a, 0xc9, 0xd1, 0x70, 0xa9, 0xdb, + 0x48, 0x89, 0x06, 0x40, 0x0d, 0xe3, 0x5c, 0xea, 0x11, 0x46, 0x1a, 0x18, 0x52, 0x38, 0xfe, 0x29, + 0x5f, 0x8e, 0xde, 0xaa, 0x06, 0x72, 0xaa, 0x1a, 0x0d, 0x6d, 0x2f, 0x99, 0xbf, 0x40, 0x30, 0xe2, + 0xcb, 0x91, 0xfb, 0x26, 0x82, 0x43, 0x8a, 0x8a, 0x6b, 0xa2, 0x19, 0xf9, 0xba, 0x16, 0x9d, 0x1e, + 0x37, 0xa0, 0xee, 0x4e, 0xa3, 0x5d, 0x44, 0x49, 0xc0, 0x77, 0xc4, 0x0e, 0xea, 0x13, 0xfe, 0x5d, + 0x93, 0xa3, 0x4a, 0xa3, 0x7c, 0xd1, 0x03, 0x87, 0xbf, 0x8f, 0x42, 0xa2, 0x81, 0x18, 0xf7, 0xec, + 0x83, 0x76, 0xa1, 0x5b, 0xd7, 0x00, 0xec, 0x56, 0xb8, 0x73, 0xd0, 0xcb, 0xba, 0x8b, 0x4c, 0xdf, + 0xd4, 0x41, 0x89, 0x80, 0x82, 0x9a, 0xc1, 0x10, 0xf7, 0xb4, 0xdd, 0x96, 0xc4, 0xb4, 0xb8, 0xbd, + 0xb0, 0xf4, 0x51, 0x60, 0xa6, 0xc0, 0x17, 0x80, 0xfd, 0x66, 0xba, 0x1b, 0x6e, 0x8b, 0xcb, 0x46, + 0x48, 0xd5, 0xb6, 0xf1, 0x98, 0x19, 0x1e, 0xd5, 0x31, 0xf3, 0xbc, 0xbb, 0x30, 0x14, 0x6b, 0x7b, + 0x24, 0xd6, 0xfa, 0x10, 0xdc, 0x53, 0xe5, 0x89, 0x13, 0x22, 0xe3, 0xad, 0x4f, 0xed, 0x97, 0x5c, + 0x55, 0x9e, 0x8b, 0xff, 0x1d, 0xb8, 0x57, 0x47, 0xbf, 0x0a, 0xb4, 0xee, 0x65, 0x7b, 0x01, 0x7a, + 0xcd, 0x4d, 0xb7, 0xfa, 0xf7, 0x9f, 0x83, 0x45, 0x18, 0xf2, 0xec, 0x5e, 0x3e, 0x64, 0xee, 0x0c, + 0x8c, 0x35, 0xec, 0x4c, 0x3e, 0x42, 0x57, 0x1d, 0x46, 0xbc, 0xab, 0x9e, 0x0f, 0x93, 0x15, 0x85, + 0x8d, 0xa6, 0x23, 0xe1, 0x22, 0xac, 0x3e, 0xe4, 0xf1, 0xef, 0xa8, 0x6b, 0xfe, 0x79, 0xa7, 0x5a, + 0x01, 0x7a, 0xf3, 0xd9, 0xef, 0xef, 0xc3, 0x97, 0x1f, 0xc9, 0xd9, 0x6f, 0xca, 0xc5, 0x92, 0xf3, + 0x54, 0x45, 0xba, 0x38, 0xe1, 0x85, 0xd3, 0x88, 0xcf, 0x34, 0x36, 0xd8, 0x0d, 0x32, 0xa3, 0xe1, + 0xea, 0x62, 0x7a, 0x0a, 0x46, 0x4a, 0xd6, 0xf8, 0x89, 0xa1, 0x75, 0x77, 0xec, 0xc1, 0xfd, 0x3a, + 0x8a, 0xec, 0xd7, 0x51, 0x64, 0xe6, 0x74, 0x96, 0xd6, 0xa8, 0xa9, 0x75, 0x89, 0x24, 0xa3, 0xac, + 0x52, 0xfd, 0xc3, 0x30, 0x8c, 0xf8, 0xe6, 0x7f, 0xdc, 0xb7, 0xbb, 0xb0, 0x31, 0x0f, 0x9e, 0x89, + 0x1d, 0xc8, 0xd2, 0xfc, 0x2e, 0x59, 0xfb, 0xf4, 0x26, 0x6b, 0x47, 0xde, 0xad, 0xa3, 0x09, 0x38, + 0x04, 0x49, 0x07, 0x2b, 0x4d, 0x44, 0xe5, 0xa0, 0x49, 0xda, 0x0f, 0x7a, 0x7d, 0x92, 0xb4, 0x47, + 0xe4, 0x63, 0x7c, 0x4a, 0x0c, 0x81, 0x47, 0x5f, 0x62, 0xf0, 0x9e, 0x4b, 0x44, 0x0f, 0xd0, 0x6d, + 0x15, 0x3b, 0x50, 0xb7, 0x55, 0xa3, 0x83, 0xea, 0x7f, 0x54, 0x0e, 0x6a, 0xd1, 0xed, 0xa0, 0x7a, + 0xc9, 0x18, 0x8f, 0x93, 0x13, 0x04, 0x34, 0xf5, 0x20, 0x2e, 0xea, 0x69, 0xb7, 0x8b, 0xea, 0xeb, + 0x7c, 0x10, 0xe1, 0x71, 0x52, 0xdf, 0x89, 0xdc, 0xab, 0xa3, 0xb7, 0x22, 0xad, 0x9d, 0xd4, 0xc3, + 0x54, 0xbc, 0xff, 0x9f, 0x3b, 0x20, 0xb8, 0x8f, 0x60, 0x8c, 0x9d, 0xd9, 0xa4, 0x5d, 0x7a, 0x6d, + 0x4a, 0xf5, 0xf4, 0xcf, 0x10, 0xfc, 0x35, 0x82, 0x02, 0x9c, 0x6f, 0xd0, 0xa0, 0x9c, 0x7f, 0x99, + 0x20, 0xd7, 0x94, 0x17, 0x59, 0x5e, 0x7e, 0x1e, 0x2e, 0x3c, 0x04, 0x89, 0x86, 0x08, 0xe2, 0x49, + 0x38, 0xd2, 0x48, 0xa4, 0xc1, 0x60, 0xb3, 0x18, 0xe4, 0xbf, 0x10, 0xa4, 0xac, 0xac, 0xaf, 0x69, + 0x4e, 0xff, 0x82, 0xe0, 0x9f, 0x11, 0xac, 0x40, 0xa1, 0x91, 0x56, 0x87, 0x1a, 0x48, 0xeb, 0xc9, + 0x5d, 0x06, 0xfe, 0x20, 0xb4, 0x1a, 0x66, 0x79, 0x1a, 0xa6, 0x7c, 0x67, 0xe9, 0x43, 0x92, 0x4e, + 0xd7, 0xff, 0xdc, 0x21, 0xca, 0xc2, 0x82, 0xe0, 0xb9, 0xec, 0x79, 0xfe, 0x64, 0xab, 0x00, 0x62, + 0xf8, 0x6e, 0x1d, 0xf5, 0xdf, 0xaf, 0xa3, 0x38, 0xe9, 0xe6, 0x3f, 0x93, 0x25, 0xd7, 0x57, 0xed, + 0xe0, 0x21, 0x9e, 0x04, 0x7a, 0x1d, 0x35, 0xf3, 0xf3, 0x10, 0x1c, 0xe9, 0xe0, 0x31, 0xb8, 0x2f, + 0x75, 0x74, 0xa7, 0xed, 0x53, 0xed, 0xb6, 0x6e, 0xf4, 0x4b, 0x1d, 0xdd, 0x68, 0xf0, 0x01, 0x88, + 0x37, 0xb8, 0xcf, 0x2d, 0x38, 0xc6, 0xf2, 0xee, 0x3d, 0xf7, 0x86, 0x59, 0x7e, 0x4f, 0x64, 0x97, + 0xd1, 0x3b, 0x7d, 0x71, 0xc0, 0xa2, 0xe1, 0x50, 0xb6, 0xd6, 0x66, 0x81, 0x12, 0xe0, 0xde, 0x40, + 0x70, 0xb4, 0x2d, 0x27, 0x96, 0xaa, 0x52, 0x1f, 0x7e, 0xa1, 0xcb, 0xa2, 0xbe, 0x93, 0xa2, 0xef, + 0x31, 0x86, 0x4b, 0x48, 0x48, 0xb7, 0x1e, 0x0d, 0xcb, 0x5c, 0xa7, 0x5a, 0x39, 0x6b, 0xbf, 0xab, + 0xd7, 0xed, 0x47, 0xdd, 0x45, 0xad, 0xed, 0x57, 0x08, 0x0e, 0xb5, 0x1c, 0x2f, 0xa7, 0x43, 0x82, + 0x5c, 0x4b, 0x74, 0x3e, 0x5b, 0xc0, 0xbc, 0xfd, 0x7c, 0xf7, 0x6b, 0xc0, 0x68, 0x5d, 0x52, 0xb4, + 0xe7, 0xbd, 0xa4, 0xac, 0xf8, 0xaf, 0x81, 0x03, 0x27, 0x3a, 0xd7, 0xed, 0xba, 0xac, 0xf8, 0xfa, + 0x31, 0x63, 0xf7, 0x36, 0xf9, 0xd8, 0x47, 0x56, 0xc0, 0x64, 0xdf, 0xc3, 0x7b, 0x3b, 0x00, 0x47, + 0xbb, 0x18, 0x1f, 0xf7, 0x02, 0x4c, 0x90, 0x92, 0x87, 0x28, 0x95, 0xa9, 0x8e, 0x4a, 0x95, 0xee, + 0xbf, 0xe0, 0x71, 0x88, 0xa0, 0x16, 0x6c, 0x4c, 0x17, 0xdd, 0x97, 0x61, 0xb2, 0x2c, 0xeb, 0xed, + 0x48, 0x07, 0x3b, 0x7c, 0x1c, 0x84, 0x61, 0xfb, 0x51, 0xe7, 0x4f, 0xc1, 0x61, 0x5f, 0xa2, 0xad, + 0xc4, 0x88, 0x15, 0x83, 0x7e, 0x8b, 0x60, 0xa2, 0xcd, 0x3a, 0x72, 0x45, 0x48, 0x35, 0x8d, 0xd8, + 0xbb, 0x4d, 0xad, 0x86, 0x3b, 0xda, 0x30, 0x56, 0x8b, 0xe2, 0x0b, 0x30, 0xe1, 0xb7, 0x0c, 0x16, + 0xd1, 0x60, 0x87, 0x0f, 0x11, 0x35, 0xad, 0x81, 0xb5, 0xe3, 0x59, 0x38, 0xd4, 0x4c, 0xae, 0xc3, + 0xec, 0xbf, 0x8e, 0x60, 0xb0, 0xe0, 0x3e, 0xba, 0x24, 0x67, 0xb9, 0x1a, 0x24, 0xbc, 0xe7, 0x9b, + 0x0f, 0xf2, 0x05, 0xa7, 0x27, 0x9a, 0x4e, 0x47, 0xed, 0xd4, 0xcb, 0x5d, 0xd8, 0x1b, 0xf0, 0x9c, + 0x98, 0xea, 0x99, 0x37, 0x03, 0xc0, 0x15, 0x8a, 0xcb, 0x45, 0x4d, 0x31, 0x70, 0xc9, 0x49, 0xbf, + 0xbe, 0xe6, 0x7b, 0xf9, 0x81, 0x8e, 0xe6, 0x42, 0x17, 0x7d, 0xef, 0x76, 0x7b, 0xa4, 0x87, 0x6e, + 0xd7, 0xd7, 0x20, 0xb8, 0x1b, 0x90, 0x74, 0x9a, 0x92, 0x45, 0xf7, 0x25, 0xe1, 0xb9, 0x6e, 0xbb, + 0xee, 0xbb, 0x63, 0x3d, 0x60, 0xf7, 0x29, 0xd3, 0x0a, 0xd7, 0x9f, 0xc7, 0xe0, 0x50, 0xcb, 0xf1, + 0x3f, 0x82, 0x3c, 0xe4, 0x1a, 0x44, 0x68, 0xa2, 0xcf, 0xa4, 0xf8, 0x5c, 0x17, 0xd3, 0xf1, 0x0e, + 0x82, 0xdd, 0x93, 0xa4, 0x84, 0x19, 0xb1, 0x86, 0xc4, 0x23, 0x7e, 0x80, 0xc4, 0x03, 0x0e, 0x94, + 0x78, 0x7c, 0xcb, 0xb7, 0x2d, 0x97, 0xb6, 0x38, 0x95, 0x6f, 0xdf, 0x41, 0x97, 0x63, 0x28, 0xf3, + 0x59, 0xbb, 0xbb, 0x49, 0xb5, 0x27, 0xe6, 0xd7, 0x89, 0xfb, 0xc9, 0x36, 0xe7, 0x86, 0x1f, 0x49, + 0x73, 0xee, 0x8b, 0xcd, 0x6d, 0x51, 0x91, 0x07, 0x68, 0x8b, 0x72, 0xd2, 0xeb, 0xce, 0xad, 0x51, + 0xd1, 0x03, 0xde, 0xe7, 0xf8, 0x61, 0xe0, 0xdd, 0x3a, 0x3a, 0x07, 0xfd, 0xae, 0x3b, 0xb0, 0x68, + 0x06, 0xfa, 0x21, 0x42, 0x05, 0x8a, 0x43, 0xf9, 0x29, 0x04, 0x63, 0x0d, 0x8d, 0xaf, 0xd1, 0xf3, + 0xd9, 0xb3, 0xd9, 0xd9, 0xec, 0xdc, 0xbd, 0x3a, 0xfa, 0xb7, 0x36, 0x57, 0x5c, 0x9f, 0xf1, 0x96, + 0x05, 0x73, 0x90, 0x75, 0x0a, 0x7d, 0x39, 0x62, 0x37, 0xf3, 0x61, 0x52, 0x9a, 0x77, 0xaa, 0x85, + 0xb9, 0x32, 0xae, 0xed, 0xe5, 0x43, 0x0b, 0xb8, 0xb6, 0xf7, 0x29, 0xe9, 0x94, 0xf5, 0xbf, 0x66, + 0x11, 0xbf, 0x5f, 0x47, 0x31, 0xfb, 0x76, 0x6a, 0x2c, 0x19, 0xcf, 0xbc, 0x1f, 0x85, 0x51, 0x7f, + 0x23, 0xf3, 0x7f, 0xc5, 0x3e, 0xc4, 0x0e, 0x60, 0x1f, 0xe2, 0x07, 0xb2, 0x0f, 0x97, 0xdc, 0xf5, + 0x03, 0x6a, 0x6a, 0x4e, 0x58, 0x9d, 0x8f, 0x7e, 0xf4, 0x5a, 0x75, 0x32, 0x2a, 0xee, 0x02, 0x02, + 0x35, 0x2f, 0x02, 0xbb, 0xa7, 0x70, 0xb6, 0xbd, 0x79, 0x71, 0xbb, 0x14, 0xe7, 0xc1, 0xc3, 0xf4, + 0x3f, 0x86, 0x3f, 0x81, 0xfe, 0xc7, 0xc8, 0x01, 0x95, 0xfc, 0xbb, 0xa6, 0x92, 0xaf, 0x76, 0x50, + 0xf2, 0x96, 0x7d, 0x85, 0xe7, 0xb2, 0x33, 0xa7, 0x4d, 0x7d, 0xf7, 0xf4, 0x15, 0x9a, 0xba, 0x7f, + 0xf7, 0xd3, 0xa5, 0xfb, 0x0f, 0xd1, 0x9e, 0xe8, 0xaf, 0xdc, 0xa4, 0xad, 0xdb, 0x56, 0xee, 0x68, + 0x32, 0x96, 0x79, 0x13, 0xc1, 0x58, 0x0b, 0x95, 0xe2, 0xb2, 0x10, 0xa6, 0x67, 0x92, 0xed, 0x03, + 0x50, 0x0a, 0xc4, 0x4d, 0x43, 0xc8, 0x9c, 0x66, 0x87, 0xc0, 0x92, 0xc0, 0xf0, 0x9c, 0xa5, 0xf5, + 0xce, 0xcd, 0x2e, 0x16, 0x29, 0x7e, 0x27, 0x0c, 0xfd, 0x2b, 0x2f, 0xae, 0xbb, 0xd2, 0xd4, 0x05, + 0x88, 0xd0, 0x26, 0x2c, 0x66, 0x61, 0x8e, 0x77, 0xb2, 0x10, 0xeb, 0x04, 0xda, 0x32, 0x08, 0x14, + 0x97, 0x7b, 0x09, 0x06, 0x0c, 0xe5, 0x3a, 0xae, 0x89, 0x15, 0xa5, 0xe4, 0x4e, 0xcb, 0x3b, 0xde, + 0xa5, 0x5d, 0x37, 0xb1, 0x2e, 0x33, 0x24, 0x46, 0xb4, 0xdf, 0x70, 0x3f, 0xe4, 0xce, 0xd8, 0x36, + 0x8c, 0xce, 0x7d, 0xa4, 0x81, 0xa6, 0xaf, 0x85, 0x9a, 0x81, 0x84, 0xb4, 0x63, 0x6c, 0x8b, 0x76, + 0x9b, 0xb3, 0xcc, 0x6e, 0xf3, 0x58, 0x97, 0x7f, 0x96, 0x7a, 0x84, 0x7e, 0x13, 0xc2, 0xea, 0x04, + 0x97, 0xb9, 0x05, 0x08, 0xbd, 0x72, 0xe3, 0xba, 0xce, 0x6e, 0x87, 0xe6, 0xde, 0xbb, 0x85, 0xf6, + 0x6f, 0xa5, 0x04, 0xac, 0x56, 0xa4, 0x12, 0x2e, 0xa7, 0x37, 0xf6, 0xd2, 0x4f, 0x9a, 0xaf, 0x45, + 0xaa, 0xd5, 0x26, 0x89, 0xdf, 0xd4, 0x51, 0xe8, 0x47, 0x77, 0x50, 0xe8, 0x15, 0x9d, 0x34, 0xa3, + 0x13, 0x6c, 0xee, 0x79, 0xe8, 0x75, 0x81, 0x31, 0xdb, 0x78, 0xac, 0xd3, 0x32, 0xac, 0xbc, 0xf8, + 0xf9, 0x35, 0xde, 0x14, 0x1f, 0xc4, 0xee, 0x2d, 0x83, 0x49, 0x84, 0xde, 0x55, 0xa7, 0x51, 0x01, + 0x99, 0x48, 0x59, 0x2c, 0x55, 0x24, 0xb9, 0xaa, 0x33, 0xef, 0x9d, 0xeb, 0x44, 0x56, 0x60, 0x68, + 0xf3, 0x04, 0xcb, 0x34, 0x18, 0xee, 0xdf, 0xdc, 0x4b, 0x90, 0xac, 0x4a, 0xb5, 0xb2, 0x64, 0x28, + 0xda, 0x9e, 0x45, 0x99, 0x06, 0x7b, 0x1d, 0xcf, 0x80, 0xaf, 0x58, 0x78, 0x8c, 0x74, 0xa2, 0xea, + 0x7d, 0xc0, 0x3f, 0x01, 0x9c, 0x6b, 0x1d, 0xac, 0xfb, 0xf6, 0xd6, 0xe5, 0x87, 0x10, 0xbd, 0xfc, + 0x30, 0xcb, 0xf2, 0xf8, 0x35, 0x48, 0x34, 0x10, 0xe4, 0x9e, 0x85, 0x5e, 0x32, 0x22, 0xd1, 0xb4, + 0x0a, 0x34, 0x57, 0x88, 0xbb, 0xce, 0x7f, 0x92, 0xfe, 0xf7, 0x04, 0x81, 0xe0, 0x98, 0x96, 0x45, + 0xcf, 0xbc, 0x1e, 0x80, 0x08, 0x15, 0x56, 0x72, 0x38, 0x5b, 0xa9, 0x38, 0x05, 0xec, 0x40, 0x87, + 0xc3, 0xd9, 0x4a, 0xa5, 0xc5, 0x55, 0xdd, 0xe0, 0x83, 0x5e, 0xd5, 0x75, 0x5f, 0x5d, 0xe4, 0x56, + 0x01, 0x6c, 0xdb, 0x62, 0xf5, 0x7c, 0x76, 0xd4, 0x10, 0x9e, 0x39, 0x29, 0x9d, 0xdd, 0xd8, 0x8f, + 0x5b, 0x5e, 0x4b, 0xe7, 0x27, 0x2c, 0xdd, 0x25, 0xe7, 0x7b, 0x56, 0x62, 0x18, 0x26, 0xb7, 0xb9, + 0x99, 0xc2, 0x5f, 0x86, 0x90, 0x29, 0x5b, 0xdc, 0x79, 0x88, 0x97, 0x2a, 0x58, 0xd2, 0x0c, 0x7c, + 0xd3, 0x60, 0x97, 0x14, 0xc6, 0x7f, 0x71, 0x0b, 0xfd, 0xfa, 0x56, 0x4c, 0x58, 0x5c, 0x28, 0xcc, + 0xaf, 0x2f, 0x2e, 0xb8, 0xa5, 0x59, 0x70, 0x80, 0xdd, 0xed, 0x05, 0x99, 0x1f, 0x05, 0xa0, 0xdf, + 0xa3, 0xb1, 0xe6, 0xca, 0x6e, 0x60, 0x49, 0xc3, 0x9a, 0x48, 0x94, 0xb6, 0xd3, 0xca, 0x52, 0x58, + 0x42, 0x82, 0x3b, 0x0b, 0x11, 0xfa, 0x31, 0x28, 0x6b, 0x3c, 0x4c, 0x33, 0x99, 0xc3, 0x9c, 0x7a, + 0x2d, 0x60, 0xfe, 0x15, 0xd2, 0x02, 0x69, 0x53, 0x21, 0x18, 0xac, 0x89, 0xc5, 0x3e, 0x08, 0x14, + 0xea, 0x06, 0x8b, 0xc2, 0x72, 0xcf, 0x40, 0xaf, 0xeb, 0x0b, 0x55, 0xcc, 0x14, 0xb4, 0x47, 0x05, + 0xa7, 0xb2, 0xc3, 0x3f, 0xd1, 0x68, 0xde, 0xda, 0x5d, 0x9f, 0xff, 0x6e, 0x08, 0x06, 0xbc, 0x8a, + 0xc7, 0x3d, 0x03, 0x03, 0xb2, 0xae, 0xef, 0x60, 0xcd, 0xea, 0x22, 0xee, 0xb0, 0x4e, 0xfd, 0x14, + 0x9a, 0x35, 0x10, 0x73, 0x29, 0x88, 0xd0, 0x07, 0x74, 0xa5, 0xcc, 0x79, 0xd1, 0xdf, 0x5c, 0x01, + 0x92, 0xd2, 0x4e, 0x59, 0xc6, 0xb5, 0x12, 0xb6, 0x49, 0xb7, 0x2f, 0x28, 0x26, 0x2c, 0x78, 0x8b, + 0xf8, 0x73, 0x10, 0xb3, 0x1e, 0xb1, 0x78, 0xa1, 0xb3, 0x78, 0x33, 0x78, 0x9d, 0x1c, 0xa4, 0xb0, + 0x1f, 0xdc, 0x2a, 0x8c, 0x59, 0x9f, 0xbc, 0x16, 0x55, 0x72, 0x9d, 0xc8, 0x1e, 0x52, 0xfb, 0xef, + 0x8d, 0x8e, 0x58, 0x68, 0xf4, 0x12, 0x92, 0x35, 0xb0, 0xcb, 0x76, 0xcf, 0x9e, 0x4d, 0x8f, 0x7e, + 0x6b, 0xaf, 0x6d, 0x42, 0x1a, 0xb0, 0x7b, 0x24, 0x19, 0x39, 0xfa, 0x09, 0x4a, 0xfe, 0x18, 0x0c, + 0xb2, 0x2d, 0x70, 0xb5, 0x81, 0x26, 0x58, 0xc3, 0x31, 0xa9, 0xa7, 0x9c, 0xc9, 0xe6, 0xf9, 0xe3, + 0x30, 0x64, 0xaf, 0x67, 0x03, 0x5c, 0xc4, 0x32, 0x5b, 0x73, 0xe4, 0x13, 0x20, 0x89, 0x86, 0xb1, + 0x11, 0x98, 0xb8, 0x75, 0xaf, 0xeb, 0x82, 0xf7, 0x8a, 0x34, 0x8b, 0x06, 0xd6, 0x21, 0x6e, 0x2f, + 0x1d, 0xf7, 0x1c, 0xc4, 0x2d, 0x56, 0x96, 0x79, 0x3b, 0xd1, 0xed, 0x57, 0xb2, 0x4d, 0xab, 0x62, + 0xe1, 0x66, 0xaa, 0xd0, 0xef, 0xb1, 0x11, 0xdc, 0xcb, 0x1e, 0x33, 0x43, 0x49, 0x3f, 0xe3, 0xbe, + 0x70, 0xcd, 0xc2, 0x60, 0xbf, 0xfb, 0xd7, 0x2d, 0xec, 0xaa, 0x63, 0x74, 0x32, 0xdf, 0x0c, 0xc1, + 0x50, 0x41, 0x95, 0x17, 0x64, 0xbd, 0xa4, 0xec, 0x62, 0xcd, 0xae, 0xb6, 0x96, 0xe1, 0xa8, 0xf5, + 0xc5, 0x45, 0xd3, 0x76, 0xd4, 0xc4, 0x4d, 0x4d, 0xa9, 0x8a, 0x1a, 0x2e, 0xcb, 0x1a, 0x2e, 0x19, + 0xa2, 0xa1, 0x49, 0x9b, 0x9b, 0x72, 0xa9, 0x83, 0xe0, 0x1f, 0x61, 0x24, 0x2e, 0x9b, 0x14, 0x2e, + 0x69, 0x4a, 0x55, 0x60, 0xf8, 0xeb, 0x14, 0x9d, 0xdb, 0x80, 0x0c, 0xfb, 0xe0, 0x62, 0x3b, 0x26, + 0xed, 0x83, 0xa4, 0x49, 0x4a, 0xa1, 0x25, 0x8f, 0xaf, 0xc1, 0xa4, 0x8e, 0x6b, 0xba, 0x6c, 0xc8, + 0xbb, 0x58, 0x34, 0x23, 0x53, 0xb1, 0x8c, 0x3d, 0x91, 0x7f, 0x8b, 0xcf, 0xe6, 0x58, 0xdf, 0xbb, + 0xcf, 0xad, 0x59, 0xd8, 0x0b, 0x92, 0x21, 0x2d, 0x60, 0x77, 0x29, 0x8c, 0x7d, 0xe5, 0x72, 0x42, + 0x6f, 0x0d, 0xc2, 0x5d, 0x87, 0xb1, 0x32, 0x5b, 0x5d, 0x5c, 0x26, 0x5d, 0x14, 0x0d, 0xe7, 0xf0, + 0x27, 0x5b, 0x31, 0x5e, 0xb0, 0xd1, 0x0a, 0xc5, 0x65, 0xe7, 0x2e, 0x00, 0x89, 0x8c, 0x46, 0x1c, + 0x9a, 0x05, 0x55, 0xb6, 0x5e, 0x5e, 0x8c, 0xfd, 0xfa, 0xb3, 0xe1, 0x99, 0xac, 0x29, 0xd3, 0x4f, + 0xc2, 0x44, 0x9b, 0x35, 0xf5, 0x84, 0x92, 0x54, 0xa4, 0x51, 0x32, 0x30, 0xfd, 0x0f, 0x01, 0x18, + 0xf2, 0xf9, 0xee, 0x16, 0x37, 0x06, 0x43, 0x6b, 0x9f, 0x5f, 0x2e, 0x8a, 0x45, 0xe1, 0xea, 0xfc, + 0xe2, 0xda, 0xda, 0xf2, 0xea, 0x73, 0xe2, 0x8b, 0x85, 0x4b, 0xc9, 0x1e, 0xbf, 0x17, 0xfc, 0xd5, + 0xf5, 0x24, 0xf2, 0x7b, 0x71, 0xe5, 0xda, 0x95, 0x64, 0x80, 0x7b, 0x1c, 0x1e, 0x6b, 0x7c, 0xb1, + 0x5c, 0x14, 0x85, 0xc5, 0xe2, 0xb5, 0xf5, 0xc2, 0xfa, 0xf2, 0xd5, 0xd5, 0x64, 0x90, 0xcb, 0xc0, + 0x64, 0x23, 0x48, 0xa1, 0xb8, 0x6c, 0xfe, 0x5c, 0x5f, 0x9c, 0x27, 0x30, 0x21, 0x3f, 0x98, 0xab, + 0x85, 0x35, 0xf1, 0x85, 0xc2, 0xe5, 0xe5, 0x05, 0x4a, 0x27, 0xcc, 0x1d, 0x85, 0x23, 0x8d, 0x30, + 0x0b, 0x0b, 0x57, 0xd7, 0xdc, 0x84, 0x22, 0xdc, 0xe7, 0x61, 0xa2, 0x11, 0x68, 0x7d, 0x49, 0x58, + 0x2c, 0xac, 0x8b, 0x57, 0x16, 0xd7, 0x96, 0x92, 0xd1, 0xf1, 0xe9, 0x7b, 0x75, 0x74, 0x7c, 0x3a, + 0xaa, 0x1b, 0xd2, 0x96, 0x5c, 0xdb, 0x9a, 0x0e, 0xa9, 0x9a, 0x52, 0x9e, 0xee, 0xd3, 0x95, 0x4d, + 0x63, 0x43, 0xaa, 0x5d, 0x17, 0xab, 0xb8, 0x34, 0x1d, 0xdd, 0xc4, 0x65, 0x4d, 0xaa, 0xaa, 0xe3, + 0x21, 0xd3, 0x01, 0xf1, 0x6f, 0xa3, 0xfb, 0x1f, 0x4c, 0xf6, 0xbc, 0xf7, 0xc1, 0x64, 0xcf, 0xc7, + 0x1f, 0x4c, 0xa2, 0xd7, 0xf6, 0x27, 0xd1, 0x8f, 0xf7, 0x27, 0xd1, 0x2f, 0xf6, 0x27, 0xd1, 0xfd, + 0xfd, 0x49, 0xf4, 0xde, 0xfe, 0x24, 0xfa, 0xe5, 0xfe, 0x24, 0xfa, 0x68, 0x7f, 0xb2, 0xe7, 0xe3, + 0xfd, 0x49, 0xf4, 0xad, 0x0f, 0x27, 0x7b, 0xee, 0x7e, 0x38, 0x89, 0xee, 0x7f, 0x38, 0xd9, 0xf3, + 0xde, 0x87, 0x93, 0x3d, 0x2f, 0xad, 0x6f, 0x29, 0xea, 0xf5, 0xad, 0xdc, 0xae, 0x52, 0x31, 0xb0, + 0xa6, 0x49, 0xb9, 0x1d, 0xfd, 0x14, 0xf9, 0x63, 0x53, 0xd1, 0xaa, 0x27, 0x55, 0x4d, 0xd9, 0x95, + 0xcb, 0x58, 0x3b, 0x69, 0xbd, 0x3e, 0xa5, 0x6e, 0x6c, 0x29, 0xa7, 0xf0, 0x4d, 0xc3, 0xfa, 0x8f, + 0x07, 0xfe, 0xff, 0x54, 0x62, 0x23, 0x42, 0x3e, 0x64, 0x77, 0xe6, 0x7f, 0x03, 0x00, 0x00, 0xff, + 0xff, 0xef, 0xab, 0x21, 0x52, 0x7d, 0x62, 0x00, 0x00, +} + +func (x ClientSrcRuleAction) String() string { + s, ok := ClientSrcRuleAction_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ServicePolicyList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServicePolicyList) + if !ok { + that2, ok := that.(ServicePolicyList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Policies) != len(that1.Policies) { + return false + } + for i := range this.Policies { + if !this.Policies[i].Equal(that1.Policies[i]) { + return false + } + } + return true +} +func (this *EnableChallenge) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge) + if !ok { + that2, ok := that.(EnableChallenge) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.MaliciousUserMitigationChoice == nil { + if this.MaliciousUserMitigationChoice != nil { + return false + } + } else if this.MaliciousUserMitigationChoice == nil { + return false + } else if !this.MaliciousUserMitigationChoice.Equal(that1.MaliciousUserMitigationChoice) { + return false + } + if that1.JsChallengeParametersChoice == nil { + if this.JsChallengeParametersChoice != nil { + return false + } + } else if this.JsChallengeParametersChoice == nil { + return false + } else if !this.JsChallengeParametersChoice.Equal(that1.JsChallengeParametersChoice) { + return false + } + if that1.CaptchaChallengeParametersChoice == nil { + if this.CaptchaChallengeParametersChoice != nil { + return false + } + } else if this.CaptchaChallengeParametersChoice == nil { + return false + } else if !this.CaptchaChallengeParametersChoice.Equal(that1.CaptchaChallengeParametersChoice) { + return false + } + return true +} +func (this *EnableChallenge_DefaultMitigationSettings) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge_DefaultMitigationSettings) + if !ok { + that2, ok := that.(EnableChallenge_DefaultMitigationSettings) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultMitigationSettings.Equal(that1.DefaultMitigationSettings) { + return false + } + return true +} +func (this *EnableChallenge_MaliciousUserMitigation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge_MaliciousUserMitigation) + if !ok { + that2, ok := that.(EnableChallenge_MaliciousUserMitigation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { + return false + } + return true +} +func (this *EnableChallenge_DefaultJsChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge_DefaultJsChallengeParameters) + if !ok { + that2, ok := that.(EnableChallenge_DefaultJsChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultJsChallengeParameters.Equal(that1.DefaultJsChallengeParameters) { + return false + } + return true +} +func (this *EnableChallenge_JsChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge_JsChallengeParameters) + if !ok { + that2, ok := that.(EnableChallenge_JsChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.JsChallengeParameters.Equal(that1.JsChallengeParameters) { + return false + } + return true +} +func (this *EnableChallenge_DefaultCaptchaChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge_DefaultCaptchaChallengeParameters) + if !ok { + that2, ok := that.(EnableChallenge_DefaultCaptchaChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultCaptchaChallengeParameters.Equal(that1.DefaultCaptchaChallengeParameters) { + return false + } + return true +} +func (this *EnableChallenge_CaptchaChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*EnableChallenge_CaptchaChallengeParameters) + if !ok { + that2, ok := that.(EnableChallenge_CaptchaChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CaptchaChallengeParameters.Equal(that1.CaptchaChallengeParameters) { + return false + } + return true +} +func (this *PolicyBasedChallenge) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge) + if !ok { + that2, ok := that.(PolicyBasedChallenge) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.JsChallengeParametersChoice == nil { + if this.JsChallengeParametersChoice != nil { + return false + } + } else if this.JsChallengeParametersChoice == nil { + return false + } else if !this.JsChallengeParametersChoice.Equal(that1.JsChallengeParametersChoice) { + return false + } + if that1.CaptchaChallengeParametersChoice == nil { + if this.CaptchaChallengeParametersChoice != nil { + return false + } + } else if this.CaptchaChallengeParametersChoice == nil { + return false + } else if !this.CaptchaChallengeParametersChoice.Equal(that1.CaptchaChallengeParametersChoice) { + return false + } + if that1.TemporaryBlockingParametersChoice == nil { + if this.TemporaryBlockingParametersChoice != nil { + return false + } + } else if this.TemporaryBlockingParametersChoice == nil { + return false + } else if !this.TemporaryBlockingParametersChoice.Equal(that1.TemporaryBlockingParametersChoice) { + return false + } + if that1.MaliciousUserMitigationChoice == nil { + if this.MaliciousUserMitigationChoice != nil { + return false + } + } else if this.MaliciousUserMitigationChoice == nil { + return false + } else if !this.MaliciousUserMitigationChoice.Equal(that1.MaliciousUserMitigationChoice) { + return false + } + if that1.ChallengeChoice == nil { + if this.ChallengeChoice != nil { + return false + } + } else if this.ChallengeChoice == nil { + return false + } else if !this.ChallengeChoice.Equal(that1.ChallengeChoice) { + return false + } + if !this.RuleList.Equal(that1.RuleList) { + return false + } + return true +} +func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_DefaultJsChallengeParameters) + if !ok { + that2, ok := that.(PolicyBasedChallenge_DefaultJsChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultJsChallengeParameters.Equal(that1.DefaultJsChallengeParameters) { + return false + } + return true +} +func (this *PolicyBasedChallenge_JsChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_JsChallengeParameters) + if !ok { + that2, ok := that.(PolicyBasedChallenge_JsChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.JsChallengeParameters.Equal(that1.JsChallengeParameters) { + return false + } + return true +} +func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_DefaultCaptchaChallengeParameters) + if !ok { + that2, ok := that.(PolicyBasedChallenge_DefaultCaptchaChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultCaptchaChallengeParameters.Equal(that1.DefaultCaptchaChallengeParameters) { + return false + } + return true +} +func (this *PolicyBasedChallenge_CaptchaChallengeParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_CaptchaChallengeParameters) + if !ok { + that2, ok := that.(PolicyBasedChallenge_CaptchaChallengeParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CaptchaChallengeParameters.Equal(that1.CaptchaChallengeParameters) { + return false + } + return true +} +func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_DefaultTemporaryBlockingParameters) + if !ok { + that2, ok := that.(PolicyBasedChallenge_DefaultTemporaryBlockingParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultTemporaryBlockingParameters.Equal(that1.DefaultTemporaryBlockingParameters) { + return false + } + return true +} +func (this *PolicyBasedChallenge_TemporaryUserBlocking) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_TemporaryUserBlocking) + if !ok { + that2, ok := that.(PolicyBasedChallenge_TemporaryUserBlocking) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.TemporaryUserBlocking.Equal(that1.TemporaryUserBlocking) { + return false + } + return true +} +func (this *PolicyBasedChallenge_DefaultMitigationSettings) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_DefaultMitigationSettings) + if !ok { + that2, ok := that.(PolicyBasedChallenge_DefaultMitigationSettings) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultMitigationSettings.Equal(that1.DefaultMitigationSettings) { + return false + } + return true +} +func (this *PolicyBasedChallenge_MaliciousUserMitigation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_MaliciousUserMitigation) + if !ok { + that2, ok := that.(PolicyBasedChallenge_MaliciousUserMitigation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { + return false + } + return true +} +func (this *PolicyBasedChallenge_NoChallenge) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_NoChallenge) + if !ok { + that2, ok := that.(PolicyBasedChallenge_NoChallenge) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoChallenge.Equal(that1.NoChallenge) { + return false + } + return true +} +func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_AlwaysEnableJsChallenge) + if !ok { + that2, ok := that.(PolicyBasedChallenge_AlwaysEnableJsChallenge) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AlwaysEnableJsChallenge.Equal(that1.AlwaysEnableJsChallenge) { + return false + } + return true +} +func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) + if !ok { + that2, ok := that.(PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AlwaysEnableCaptchaChallenge.Equal(that1.AlwaysEnableCaptchaChallenge) { + return false + } + return true +} +func (this *ChallengeRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ChallengeRule) + if !ok { + that2, ok := that.(ChallengeRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ChallengeRuleList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ChallengeRuleList) + if !ok { + that2, ok := that.(ChallengeRuleList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Rules) != len(that1.Rules) { + return false + } + for i := range this.Rules { + if !this.Rules[i].Equal(that1.Rules[i]) { + return false + } + } + return true +} +func (this *IPThreatCategoryListType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*IPThreatCategoryListType) + if !ok { + that2, ok := that.(IPThreatCategoryListType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.IpThreatCategories) != len(that1.IpThreatCategories) { + return false + } + for i := range this.IpThreatCategories { + if this.IpThreatCategories[i] != that1.IpThreatCategories[i] { + return false + } + } + return true +} +func (this *HttpHeaderMatcherList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*HttpHeaderMatcherList) + if !ok { + that2, ok := that.(HttpHeaderMatcherList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Headers) != len(that1.Headers) { + return false + } + for i := range this.Headers { + if !this.Headers[i].Equal(that1.Headers[i]) { + return false + } + } + return true +} +func (this *SimpleClientSrcRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule) + if !ok { + that2, ok := that.(SimpleClientSrcRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.ClientSourceChoice == nil { + if this.ClientSourceChoice != nil { + return false + } + } else if this.ClientSourceChoice == nil { + return false + } else if !this.ClientSourceChoice.Equal(that1.ClientSourceChoice) { + return false + } + if !this.ExpirationTimestamp.Equal(that1.ExpirationTimestamp) { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if that1.ActionChoice == nil { + if this.ActionChoice != nil { + return false + } + } else if this.ActionChoice == nil { + return false + } else if !this.ActionChoice.Equal(that1.ActionChoice) { + return false + } + if len(this.Actions) != len(that1.Actions) { + return false + } + for i := range this.Actions { + if this.Actions[i] != that1.Actions[i] { + return false + } + } + return true +} +func (this *SimpleClientSrcRule_IpPrefix) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_IpPrefix) + if !ok { + that2, ok := that.(SimpleClientSrcRule_IpPrefix) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.IpPrefix != that1.IpPrefix { + return false + } + return true +} +func (this *SimpleClientSrcRule_AsNumber) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_AsNumber) + if !ok { + that2, ok := that.(SimpleClientSrcRule_AsNumber) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.AsNumber != that1.AsNumber { + return false + } + return true +} +func (this *SimpleClientSrcRule_HttpHeader) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_HttpHeader) + if !ok { + that2, ok := that.(SimpleClientSrcRule_HttpHeader) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.HttpHeader.Equal(that1.HttpHeader) { + return false + } + return true +} +func (this *SimpleClientSrcRule_UserIdentifier) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_UserIdentifier) + if !ok { + that2, ok := that.(SimpleClientSrcRule_UserIdentifier) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.UserIdentifier != that1.UserIdentifier { + return false + } + return true +} +func (this *SimpleClientSrcRule_SkipProcessing) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_SkipProcessing) + if !ok { + that2, ok := that.(SimpleClientSrcRule_SkipProcessing) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SkipProcessing.Equal(that1.SkipProcessing) { + return false + } + return true +} +func (this *SimpleClientSrcRule_WafSkipProcessing) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_WafSkipProcessing) + if !ok { + that2, ok := that.(SimpleClientSrcRule_WafSkipProcessing) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.WafSkipProcessing.Equal(that1.WafSkipProcessing) { + return false + } + return true +} +func (this *SimpleClientSrcRule_BotSkipProcessing) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SimpleClientSrcRule_BotSkipProcessing) + if !ok { + that2, ok := that.(SimpleClientSrcRule_BotSkipProcessing) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.BotSkipProcessing.Equal(that1.BotSkipProcessing) { + return false + } + return true +} +func (this *RateLimitConfigType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RateLimitConfigType) + if !ok { + that2, ok := that.(RateLimitConfigType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RateLimiter.Equal(that1.RateLimiter) { + return false + } + if that1.IpAllowedListChoice == nil { + if this.IpAllowedListChoice != nil { + return false + } + } else if this.IpAllowedListChoice == nil { + return false + } else if !this.IpAllowedListChoice.Equal(that1.IpAllowedListChoice) { + return false + } + if that1.PolicyChoice == nil { + if this.PolicyChoice != nil { + return false + } + } else if this.PolicyChoice == nil { + return false + } else if !this.PolicyChoice.Equal(that1.PolicyChoice) { + return false + } + return true +} +func (this *RateLimitConfigType_NoIpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RateLimitConfigType_NoIpAllowedList) + if !ok { + that2, ok := that.(RateLimitConfigType_NoIpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoIpAllowedList.Equal(that1.NoIpAllowedList) { + return false + } + return true +} +func (this *RateLimitConfigType_IpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RateLimitConfigType_IpAllowedList) + if !ok { + that2, ok := that.(RateLimitConfigType_IpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.IpAllowedList.Equal(that1.IpAllowedList) { + return false + } + return true +} +func (this *RateLimitConfigType_CustomIpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RateLimitConfigType_CustomIpAllowedList) + if !ok { + that2, ok := that.(RateLimitConfigType_CustomIpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CustomIpAllowedList.Equal(that1.CustomIpAllowedList) { + return false + } + return true +} +func (this *RateLimitConfigType_NoPolicies) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RateLimitConfigType_NoPolicies) + if !ok { + that2, ok := that.(RateLimitConfigType_NoPolicies) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoPolicies.Equal(that1.NoPolicies) { + return false + } + return true +} +func (this *RateLimitConfigType_Policies) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RateLimitConfigType_Policies) + if !ok { + that2, ok := that.(RateLimitConfigType_Policies) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Policies.Equal(that1.Policies) { + return false + } + return true +} +func (this *APIRateLimit) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIRateLimit) + if !ok { + that2, ok := that.(APIRateLimit) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.IpAllowedListChoice == nil { + if this.IpAllowedListChoice != nil { + return false + } + } else if this.IpAllowedListChoice == nil { + return false + } else if !this.IpAllowedListChoice.Equal(that1.IpAllowedListChoice) { + return false + } + if len(this.ServerUrlRules) != len(that1.ServerUrlRules) { + return false + } + for i := range this.ServerUrlRules { + if !this.ServerUrlRules[i].Equal(that1.ServerUrlRules[i]) { + return false + } + } + if len(this.ApiEndpointRules) != len(that1.ApiEndpointRules) { + return false + } + for i := range this.ApiEndpointRules { + if !this.ApiEndpointRules[i].Equal(that1.ApiEndpointRules[i]) { + return false + } + } + return true +} +func (this *APIRateLimit_NoIpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIRateLimit_NoIpAllowedList) + if !ok { + that2, ok := that.(APIRateLimit_NoIpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoIpAllowedList.Equal(that1.NoIpAllowedList) { + return false + } + return true +} +func (this *APIRateLimit_IpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIRateLimit_IpAllowedList) + if !ok { + that2, ok := that.(APIRateLimit_IpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.IpAllowedList.Equal(that1.IpAllowedList) { + return false + } + return true +} +func (this *APIRateLimit_CustomIpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIRateLimit_CustomIpAllowedList) + if !ok { + that2, ok := that.(APIRateLimit_CustomIpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CustomIpAllowedList.Equal(that1.CustomIpAllowedList) { + return false + } + return true +} +func (this *APIRateLimit_BypassRateLimitingRules) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIRateLimit_BypassRateLimitingRules) + if !ok { + that2, ok := that.(APIRateLimit_BypassRateLimitingRules) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.BypassRateLimitingRules.Equal(that1.BypassRateLimitingRules) { + return false + } + return true +} +func (this *BypassRateLimitingRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule) + if !ok { + that2, ok := that.(BypassRateLimitingRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.DomainChoice == nil { + if this.DomainChoice != nil { + return false + } + } else if this.DomainChoice == nil { + return false + } else if !this.DomainChoice.Equal(that1.DomainChoice) { + return false + } + if that1.DestinationType == nil { + if this.DestinationType != nil { + return false + } + } else if this.DestinationType == nil { + return false + } else if !this.DestinationType.Equal(that1.DestinationType) { + return false + } + if !this.RequestMatcher.Equal(that1.RequestMatcher) { + return false + } + if !this.ClientMatcher.Equal(that1.ClientMatcher) { + return false + } + return true +} +func (this *BypassRateLimitingRule_AnyDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule_AnyDomain) + if !ok { + that2, ok := that.(BypassRateLimitingRule_AnyDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyDomain.Equal(that1.AnyDomain) { + return false + } + return true +} +func (this *BypassRateLimitingRule_SpecificDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule_SpecificDomain) + if !ok { + that2, ok := that.(BypassRateLimitingRule_SpecificDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SpecificDomain != that1.SpecificDomain { + return false + } + return true +} +func (this *BypassRateLimitingRule_AnyUrl) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule_AnyUrl) + if !ok { + that2, ok := that.(BypassRateLimitingRule_AnyUrl) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyUrl.Equal(that1.AnyUrl) { + return false + } + return true +} +func (this *BypassRateLimitingRule_BasePath) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule_BasePath) + if !ok { + that2, ok := that.(BypassRateLimitingRule_BasePath) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.BasePath != that1.BasePath { + return false + } + return true +} +func (this *BypassRateLimitingRule_ApiEndpoint) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule_ApiEndpoint) + if !ok { + that2, ok := that.(BypassRateLimitingRule_ApiEndpoint) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ApiEndpoint.Equal(that1.ApiEndpoint) { + return false + } + return true +} +func (this *BypassRateLimitingRule_ApiGroups) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRule_ApiGroups) + if !ok { + that2, ok := that.(BypassRateLimitingRule_ApiGroups) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ApiGroups.Equal(that1.ApiGroups) { + return false + } + return true +} +func (this *APIGroups) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroups) + if !ok { + that2, ok := that.(APIGroups) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.ApiGroups) != len(that1.ApiGroups) { + return false + } + for i := range this.ApiGroups { + if this.ApiGroups[i] != that1.ApiGroups[i] { + return false + } + } + return true +} +func (this *ApiEndpointDetails) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointDetails) + if !ok { + that2, ok := that.(ApiEndpointDetails) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Path != that1.Path { + return false + } + if len(this.Methods) != len(that1.Methods) { + return false + } + for i := range this.Methods { + if this.Methods[i] != that1.Methods[i] { + return false + } + } + return true +} +func (this *BypassRateLimitingRules) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BypassRateLimitingRules) + if !ok { + that2, ok := that.(BypassRateLimitingRules) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.BypassRateLimitingRules) != len(that1.BypassRateLimitingRules) { + return false + } + for i := range this.BypassRateLimitingRules { + if !this.BypassRateLimitingRules[i].Equal(that1.BypassRateLimitingRules[i]) { + return false + } + } + return true +} +func (this *ApiEndpointRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointRule) + if !ok { + that2, ok := that.(ApiEndpointRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.DomainChoice == nil { + if this.DomainChoice != nil { + return false + } + } else if this.DomainChoice == nil { + return false + } else if !this.DomainChoice.Equal(that1.DomainChoice) { + return false + } + if this.BasePath != that1.BasePath { + return false + } + if this.ApiEndpointPath != that1.ApiEndpointPath { + return false + } + if !this.ApiEndpointMethod.Equal(that1.ApiEndpointMethod) { + return false + } + if !this.RequestMatcher.Equal(that1.RequestMatcher) { + return false + } + if !this.ClientMatcher.Equal(that1.ClientMatcher) { + return false + } + if that1.RateLimiterChoice == nil { + if this.RateLimiterChoice != nil { + return false + } + } else if this.RateLimiterChoice == nil { + return false + } else if !this.RateLimiterChoice.Equal(that1.RateLimiterChoice) { + return false + } + return true +} +func (this *ApiEndpointRule_AnyDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointRule_AnyDomain) + if !ok { + that2, ok := that.(ApiEndpointRule_AnyDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyDomain.Equal(that1.AnyDomain) { + return false + } + return true +} +func (this *ApiEndpointRule_SpecificDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointRule_SpecificDomain) + if !ok { + that2, ok := that.(ApiEndpointRule_SpecificDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SpecificDomain != that1.SpecificDomain { + return false + } + return true +} +func (this *ApiEndpointRule_InlineRateLimiter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointRule_InlineRateLimiter) + if !ok { + that2, ok := that.(ApiEndpointRule_InlineRateLimiter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.InlineRateLimiter.Equal(that1.InlineRateLimiter) { + return false + } + return true +} +func (this *ApiEndpointRule_RefRateLimiter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiEndpointRule_RefRateLimiter) + if !ok { + that2, ok := that.(ApiEndpointRule_RefRateLimiter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RefRateLimiter.Equal(that1.RefRateLimiter) { + return false + } + return true +} +func (this *InlineRateLimiter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*InlineRateLimiter) + if !ok { + that2, ok := that.(InlineRateLimiter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Threshold != that1.Threshold { + return false + } + if this.Unit != that1.Unit { + return false + } + if that1.CountByChoice == nil { + if this.CountByChoice != nil { + return false + } + } else if this.CountByChoice == nil { + return false + } else if !this.CountByChoice.Equal(that1.CountByChoice) { + return false + } + return true +} +func (this *InlineRateLimiter_UseHttpLbUserId) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*InlineRateLimiter_UseHttpLbUserId) + if !ok { + that2, ok := that.(InlineRateLimiter_UseHttpLbUserId) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.UseHttpLbUserId.Equal(that1.UseHttpLbUserId) { + return false + } + return true +} +func (this *InlineRateLimiter_RefUserId) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*InlineRateLimiter_RefUserId) + if !ok { + that2, ok := that.(InlineRateLimiter_RefUserId) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RefUserId.Equal(that1.RefUserId) { + return false + } + return true +} +func (this *ServerUrlRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServerUrlRule) + if !ok { + that2, ok := that.(ServerUrlRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.DomainChoice == nil { + if this.DomainChoice != nil { + return false + } + } else if this.DomainChoice == nil { + return false + } else if !this.DomainChoice.Equal(that1.DomainChoice) { + return false + } + if this.BasePath != that1.BasePath { + return false + } + if this.ApiGroup != that1.ApiGroup { + return false + } + if !this.RequestMatcher.Equal(that1.RequestMatcher) { + return false + } + if !this.ClientMatcher.Equal(that1.ClientMatcher) { + return false + } + if that1.RateLimiterChoice == nil { + if this.RateLimiterChoice != nil { + return false + } + } else if this.RateLimiterChoice == nil { + return false + } else if !this.RateLimiterChoice.Equal(that1.RateLimiterChoice) { + return false + } + return true +} +func (this *ServerUrlRule_AnyDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServerUrlRule_AnyDomain) + if !ok { + that2, ok := that.(ServerUrlRule_AnyDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyDomain.Equal(that1.AnyDomain) { + return false + } + return true +} +func (this *ServerUrlRule_SpecificDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServerUrlRule_SpecificDomain) + if !ok { + that2, ok := that.(ServerUrlRule_SpecificDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SpecificDomain != that1.SpecificDomain { + return false + } + return true +} +func (this *ServerUrlRule_InlineRateLimiter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServerUrlRule_InlineRateLimiter) + if !ok { + that2, ok := that.(ServerUrlRule_InlineRateLimiter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.InlineRateLimiter.Equal(that1.InlineRateLimiter) { + return false + } + return true +} +func (this *ServerUrlRule_RefRateLimiter) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServerUrlRule_RefRateLimiter) + if !ok { + that2, ok := that.(ServerUrlRule_RefRateLimiter) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RefRateLimiter.Equal(that1.RefRateLimiter) { + return false + } + return true +} +func (this *CustomIpAllowedList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CustomIpAllowedList) + if !ok { + that2, ok := that.(CustomIpAllowedList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.RateLimiterAllowedPrefixes) != len(that1.RateLimiterAllowedPrefixes) { + return false + } + for i := range this.RateLimiterAllowedPrefixes { + if !this.RateLimiterAllowedPrefixes[i].Equal(that1.RateLimiterAllowedPrefixes[i]) { + return false + } + } + return true +} +func (this *APISpecificationSettings) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APISpecificationSettings) + if !ok { + that2, ok := that.(APISpecificationSettings) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ApiDefinition.Equal(that1.ApiDefinition) { + return false + } + if that1.ValidationTargetChoice == nil { + if this.ValidationTargetChoice != nil { + return false + } + } else if this.ValidationTargetChoice == nil { + return false + } else if !this.ValidationTargetChoice.Equal(that1.ValidationTargetChoice) { + return false + } + return true +} +func (this *APISpecificationSettings_ValidationDisabled) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APISpecificationSettings_ValidationDisabled) + if !ok { + that2, ok := that.(APISpecificationSettings_ValidationDisabled) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidationDisabled.Equal(that1.ValidationDisabled) { + return false + } + return true +} +func (this *APISpecificationSettings_ValidationAllSpecEndpoints) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APISpecificationSettings_ValidationAllSpecEndpoints) + if !ok { + that2, ok := that.(APISpecificationSettings_ValidationAllSpecEndpoints) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidationAllSpecEndpoints.Equal(that1.ValidationAllSpecEndpoints) { + return false + } + return true +} +func (this *APISpecificationSettings_ValidationCustomList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APISpecificationSettings_ValidationCustomList) + if !ok { + that2, ok := that.(APISpecificationSettings_ValidationCustomList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidationCustomList.Equal(that1.ValidationCustomList) { + return false + } + return true +} +func (this *OpenApiValidationAllSpecEndpointsSettings) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationAllSpecEndpointsSettings) + if !ok { + that2, ok := that.(OpenApiValidationAllSpecEndpointsSettings) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidationMode.Equal(that1.ValidationMode) { + return false + } + if !this.FallThroughMode.Equal(that1.FallThroughMode) { + return false + } + if that1.OversizedBodyChoice == nil { + if this.OversizedBodyChoice != nil { + return false + } + } else if this.OversizedBodyChoice == nil { + return false + } else if !this.OversizedBodyChoice.Equal(that1.OversizedBodyChoice) { + return false + } + if !this.Settings.Equal(that1.Settings) { + return false + } + return true +} +func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) + if !ok { + that2, ok := that.(OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OversizedBodySkipValidation.Equal(that1.OversizedBodySkipValidation) { + return false + } + return true +} +func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) + if !ok { + that2, ok := that.(OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OversizedBodyFailValidation.Equal(that1.OversizedBodyFailValidation) { + return false + } + return true +} +func (this *OpenApiValidationMode) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationMode) + if !ok { + that2, ok := that.(OpenApiValidationMode) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.ValidationModeChoice == nil { + if this.ValidationModeChoice != nil { + return false + } + } else if this.ValidationModeChoice == nil { + return false + } else if !this.ValidationModeChoice.Equal(that1.ValidationModeChoice) { + return false + } + if that1.ResponseValidationModeChoice == nil { + if this.ResponseValidationModeChoice != nil { + return false + } + } else if this.ResponseValidationModeChoice == nil { + return false + } else if !this.ResponseValidationModeChoice.Equal(that1.ResponseValidationModeChoice) { + return false + } + return true +} +func (this *OpenApiValidationMode_ValidationModeActive) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationMode_ValidationModeActive) + if !ok { + that2, ok := that.(OpenApiValidationMode_ValidationModeActive) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidationModeActive.Equal(that1.ValidationModeActive) { + return false + } + return true +} +func (this *OpenApiValidationMode_SkipValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationMode_SkipValidation) + if !ok { + that2, ok := that.(OpenApiValidationMode_SkipValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SkipValidation.Equal(that1.SkipValidation) { + return false + } + return true +} +func (this *OpenApiValidationMode_SkipResponseValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationMode_SkipResponseValidation) + if !ok { + that2, ok := that.(OpenApiValidationMode_SkipResponseValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SkipResponseValidation.Equal(that1.SkipResponseValidation) { + return false + } + return true +} +func (this *OpenApiValidationMode_ResponseValidationModeActive) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationMode_ResponseValidationModeActive) + if !ok { + that2, ok := that.(OpenApiValidationMode_ResponseValidationModeActive) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ResponseValidationModeActive.Equal(that1.ResponseValidationModeActive) { + return false + } + return true +} +func (this *OpenApiValidationModeActive) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationModeActive) + if !ok { + that2, ok := that.(OpenApiValidationModeActive) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.ValidationEnforcementType == nil { + if this.ValidationEnforcementType != nil { + return false + } + } else if this.ValidationEnforcementType == nil { + return false + } else if !this.ValidationEnforcementType.Equal(that1.ValidationEnforcementType) { + return false + } + if len(this.RequestValidationProperties) != len(that1.RequestValidationProperties) { + return false + } + for i := range this.RequestValidationProperties { + if this.RequestValidationProperties[i] != that1.RequestValidationProperties[i] { + return false + } + } + return true +} +func (this *OpenApiValidationModeActive_EnforcementReport) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationModeActive_EnforcementReport) + if !ok { + that2, ok := that.(OpenApiValidationModeActive_EnforcementReport) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EnforcementReport.Equal(that1.EnforcementReport) { + return false + } + return true +} +func (this *OpenApiValidationModeActive_EnforcementBlock) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationModeActive_EnforcementBlock) + if !ok { + that2, ok := that.(OpenApiValidationModeActive_EnforcementBlock) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EnforcementBlock.Equal(that1.EnforcementBlock) { + return false + } + return true +} +func (this *OpenApiValidationModeActiveResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationModeActiveResponse) + if !ok { + that2, ok := that.(OpenApiValidationModeActiveResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.ValidationEnforcementType == nil { + if this.ValidationEnforcementType != nil { + return false + } + } else if this.ValidationEnforcementType == nil { + return false + } else if !this.ValidationEnforcementType.Equal(that1.ValidationEnforcementType) { + return false + } + if len(this.ResponseValidationProperties) != len(that1.ResponseValidationProperties) { + return false + } + for i := range this.ResponseValidationProperties { + if this.ResponseValidationProperties[i] != that1.ResponseValidationProperties[i] { + return false + } + } + return true +} +func (this *OpenApiValidationModeActiveResponse_EnforcementReport) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationModeActiveResponse_EnforcementReport) + if !ok { + that2, ok := that.(OpenApiValidationModeActiveResponse_EnforcementReport) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EnforcementReport.Equal(that1.EnforcementReport) { + return false + } + return true +} +func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationModeActiveResponse_EnforcementBlock) + if !ok { + that2, ok := that.(OpenApiValidationModeActiveResponse_EnforcementBlock) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EnforcementBlock.Equal(that1.EnforcementBlock) { + return false + } + return true +} +func (this *OpenApiFallThroughMode) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiFallThroughMode) + if !ok { + that2, ok := that.(OpenApiFallThroughMode) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.FallThroughModeChoice == nil { + if this.FallThroughModeChoice != nil { + return false + } + } else if this.FallThroughModeChoice == nil { + return false + } else if !this.FallThroughModeChoice.Equal(that1.FallThroughModeChoice) { + return false + } + return true +} +func (this *OpenApiFallThroughMode_FallThroughModeAllow) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiFallThroughMode_FallThroughModeAllow) + if !ok { + that2, ok := that.(OpenApiFallThroughMode_FallThroughModeAllow) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.FallThroughModeAllow.Equal(that1.FallThroughModeAllow) { + return false + } + return true +} +func (this *OpenApiFallThroughMode_FallThroughModeCustom) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiFallThroughMode_FallThroughModeCustom) + if !ok { + that2, ok := that.(OpenApiFallThroughMode_FallThroughModeCustom) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.FallThroughModeCustom.Equal(that1.FallThroughModeCustom) { + return false + } + return true +} +func (this *CustomFallThroughMode) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CustomFallThroughMode) + if !ok { + that2, ok := that.(CustomFallThroughMode) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.OpenApiValidationRules) != len(that1.OpenApiValidationRules) { + return false + } + for i := range this.OpenApiValidationRules { + if !this.OpenApiValidationRules[i].Equal(that1.OpenApiValidationRules[i]) { + return false + } + } + return true +} +func (this *FallThroughRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule) + if !ok { + that2, ok := that.(FallThroughRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if that1.ActionChoice == nil { + if this.ActionChoice != nil { + return false + } + } else if this.ActionChoice == nil { + return false + } else if !this.ActionChoice.Equal(that1.ActionChoice) { + return false + } + if that1.ConditionTypeChoice == nil { + if this.ConditionTypeChoice != nil { + return false + } + } else if this.ConditionTypeChoice == nil { + return false + } else if !this.ConditionTypeChoice.Equal(that1.ConditionTypeChoice) { + return false + } + return true +} +func (this *FallThroughRule_ActionSkip) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule_ActionSkip) + if !ok { + that2, ok := that.(FallThroughRule_ActionSkip) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ActionSkip.Equal(that1.ActionSkip) { + return false + } + return true +} +func (this *FallThroughRule_ActionReport) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule_ActionReport) + if !ok { + that2, ok := that.(FallThroughRule_ActionReport) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ActionReport.Equal(that1.ActionReport) { + return false + } + return true +} +func (this *FallThroughRule_ActionBlock) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule_ActionBlock) + if !ok { + that2, ok := that.(FallThroughRule_ActionBlock) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ActionBlock.Equal(that1.ActionBlock) { + return false + } + return true +} +func (this *FallThroughRule_ApiEndpoint) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule_ApiEndpoint) + if !ok { + that2, ok := that.(FallThroughRule_ApiEndpoint) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ApiEndpoint.Equal(that1.ApiEndpoint) { + return false + } + return true +} +func (this *FallThroughRule_BasePath) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule_BasePath) + if !ok { + that2, ok := that.(FallThroughRule_BasePath) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.BasePath != that1.BasePath { + return false + } + return true +} +func (this *FallThroughRule_ApiGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*FallThroughRule_ApiGroup) + if !ok { + that2, ok := that.(FallThroughRule_ApiGroup) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ApiGroup != that1.ApiGroup { + return false + } + return true +} +func (this *ValidateApiBySpecRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidateApiBySpecRule) + if !ok { + that2, ok := that.(ValidateApiBySpecRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.OpenApiValidationRules) != len(that1.OpenApiValidationRules) { + return false + } + for i := range this.OpenApiValidationRules { + if !this.OpenApiValidationRules[i].Equal(that1.OpenApiValidationRules[i]) { + return false + } + } + if !this.FallThroughMode.Equal(that1.FallThroughMode) { + return false + } + if that1.OversizedBodyChoice == nil { + if this.OversizedBodyChoice != nil { + return false + } + } else if this.OversizedBodyChoice == nil { + return false + } else if !this.OversizedBodyChoice.Equal(that1.OversizedBodyChoice) { + return false + } + if !this.Settings.Equal(that1.Settings) { + return false + } + return true +} +func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidateApiBySpecRule_OversizedBodySkipValidation) + if !ok { + that2, ok := that.(ValidateApiBySpecRule_OversizedBodySkipValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OversizedBodySkipValidation.Equal(that1.OversizedBodySkipValidation) { + return false + } + return true +} +func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidateApiBySpecRule_OversizedBodyFailValidation) + if !ok { + that2, ok := that.(ValidateApiBySpecRule_OversizedBodyFailValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OversizedBodyFailValidation.Equal(that1.OversizedBodyFailValidation) { + return false + } + return true +} +func (this *OpenApiValidationRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationRule) + if !ok { + that2, ok := that.(OpenApiValidationRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.ValidationMode.Equal(that1.ValidationMode) { + return false + } + if that1.DomainChoice == nil { + if this.DomainChoice != nil { + return false + } + } else if this.DomainChoice == nil { + return false + } else if !this.DomainChoice.Equal(that1.DomainChoice) { + return false + } + if that1.ConditionTypeChoice == nil { + if this.ConditionTypeChoice != nil { + return false + } + } else if this.ConditionTypeChoice == nil { + return false + } else if !this.ConditionTypeChoice.Equal(that1.ConditionTypeChoice) { + return false + } + return true +} +func (this *OpenApiValidationRule_AnyDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationRule_AnyDomain) + if !ok { + that2, ok := that.(OpenApiValidationRule_AnyDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyDomain.Equal(that1.AnyDomain) { + return false + } + return true +} +func (this *OpenApiValidationRule_SpecificDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationRule_SpecificDomain) + if !ok { + that2, ok := that.(OpenApiValidationRule_SpecificDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SpecificDomain != that1.SpecificDomain { + return false + } + return true +} +func (this *OpenApiValidationRule_ApiEndpoint) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationRule_ApiEndpoint) + if !ok { + that2, ok := that.(OpenApiValidationRule_ApiEndpoint) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ApiEndpoint.Equal(that1.ApiEndpoint) { + return false + } + return true +} +func (this *OpenApiValidationRule_BasePath) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationRule_BasePath) + if !ok { + that2, ok := that.(OpenApiValidationRule_BasePath) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.BasePath != that1.BasePath { + return false + } + return true +} +func (this *OpenApiValidationRule_ApiGroup) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationRule_ApiGroup) + if !ok { + that2, ok := that.(OpenApiValidationRule_ApiGroup) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ApiGroup != that1.ApiGroup { + return false + } + return true +} +func (this *OpenApiValidationCommonSettings) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationCommonSettings) + if !ok { + that2, ok := that.(OpenApiValidationCommonSettings) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.OversizedBodyChoice == nil { + if this.OversizedBodyChoice != nil { + return false + } + } else if this.OversizedBodyChoice == nil { + return false + } else if !this.OversizedBodyChoice.Equal(that1.OversizedBodyChoice) { + return false + } + if that1.PropertyValidationSettingsChoice == nil { + if this.PropertyValidationSettingsChoice != nil { + return false + } + } else if this.PropertyValidationSettingsChoice == nil { + return false + } else if !this.PropertyValidationSettingsChoice.Equal(that1.PropertyValidationSettingsChoice) { + return false + } + return true +} +func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationCommonSettings_OversizedBodySkipValidation) + if !ok { + that2, ok := that.(OpenApiValidationCommonSettings_OversizedBodySkipValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OversizedBodySkipValidation.Equal(that1.OversizedBodySkipValidation) { + return false + } + return true +} +func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationCommonSettings_OversizedBodyFailValidation) + if !ok { + that2, ok := that.(OpenApiValidationCommonSettings_OversizedBodyFailValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OversizedBodyFailValidation.Equal(that1.OversizedBodyFailValidation) { + return false + } + return true +} +func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) + if !ok { + that2, ok := that.(OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.PropertyValidationSettingsDefault.Equal(that1.PropertyValidationSettingsDefault) { + return false + } + return true +} +func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) + if !ok { + that2, ok := that.(OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.PropertyValidationSettingsCustom.Equal(that1.PropertyValidationSettingsCustom) { + return false + } + return true +} +func (this *ValidationPropertySetting) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationPropertySetting) + if !ok { + that2, ok := that.(ValidationPropertySetting) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.QueryParameters.Equal(that1.QueryParameters) { + return false + } + if !this.Headers.Equal(that1.Headers) { + return false + } + return true +} +func (this *ValidationSettingForQueryParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationSettingForQueryParameters) + if !ok { + that2, ok := that.(ValidationSettingForQueryParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.AdditionalParametersChoice == nil { + if this.AdditionalParametersChoice != nil { + return false + } + } else if this.AdditionalParametersChoice == nil { + return false + } else if !this.AdditionalParametersChoice.Equal(that1.AdditionalParametersChoice) { + return false + } + return true +} +func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationSettingForQueryParameters_AllowAdditionalParameters) + if !ok { + that2, ok := that.(ValidationSettingForQueryParameters_AllowAdditionalParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AllowAdditionalParameters.Equal(that1.AllowAdditionalParameters) { + return false + } + return true +} +func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationSettingForQueryParameters_DisallowAdditionalParameters) + if !ok { + that2, ok := that.(ValidationSettingForQueryParameters_DisallowAdditionalParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisallowAdditionalParameters.Equal(that1.DisallowAdditionalParameters) { + return false + } + return true +} +func (this *ValidationSettingForHeaders) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationSettingForHeaders) + if !ok { + that2, ok := that.(ValidationSettingForHeaders) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.AdditionalHeadersChoice == nil { + if this.AdditionalHeadersChoice != nil { + return false + } + } else if this.AdditionalHeadersChoice == nil { + return false + } else if !this.AdditionalHeadersChoice.Equal(that1.AdditionalHeadersChoice) { + return false + } + return true +} +func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationSettingForHeaders_AllowAdditionalHeaders) + if !ok { + that2, ok := that.(ValidationSettingForHeaders_AllowAdditionalHeaders) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AllowAdditionalHeaders.Equal(that1.AllowAdditionalHeaders) { + return false + } + return true +} +func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ValidationSettingForHeaders_DisallowAdditionalHeaders) + if !ok { + that2, ok := that.(ValidationSettingForHeaders_DisallowAdditionalHeaders) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisallowAdditionalHeaders.Equal(that1.DisallowAdditionalHeaders) { + return false + } + return true +} +func (this *ApiDefinitionList) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiDefinitionList) + if !ok { + that2, ok := that.(ApiDefinitionList) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.ApiDefinitions) != len(that1.ApiDefinitions) { + return false + } + for i := range this.ApiDefinitions { + if !this.ApiDefinitions[i].Equal(that1.ApiDefinitions[i]) { + return false + } + } + return true +} +func (this *APIProtectionRules) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIProtectionRules) + if !ok { + that2, ok := that.(APIProtectionRules) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.ApiEndpointRules) != len(that1.ApiEndpointRules) { + return false + } + for i := range this.ApiEndpointRules { + if !this.ApiEndpointRules[i].Equal(that1.ApiEndpointRules[i]) { + return false + } + } + if len(this.ApiGroupsRules) != len(that1.ApiGroupsRules) { + return false + } + for i := range this.ApiGroupsRules { + if !this.ApiGroupsRules[i].Equal(that1.ApiGroupsRules[i]) { + return false + } + } + return true +} +func (this *APIEndpointProtectionRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIEndpointProtectionRule) + if !ok { + that2, ok := that.(APIEndpointProtectionRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Action.Equal(that1.Action) { + return false + } + if that1.DomainChoice == nil { + if this.DomainChoice != nil { + return false + } + } else if this.DomainChoice == nil { + return false + } else if !this.DomainChoice.Equal(that1.DomainChoice) { + return false + } + if this.ApiEndpointPath != that1.ApiEndpointPath { + return false + } + if !this.ApiEndpointMethod.Equal(that1.ApiEndpointMethod) { + return false + } + if !this.RequestMatcher.Equal(that1.RequestMatcher) { + return false + } + if !this.ClientMatcher.Equal(that1.ClientMatcher) { + return false + } + return true +} +func (this *APIEndpointProtectionRule_AnyDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIEndpointProtectionRule_AnyDomain) + if !ok { + that2, ok := that.(APIEndpointProtectionRule_AnyDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyDomain.Equal(that1.AnyDomain) { + return false + } + return true +} +func (this *APIEndpointProtectionRule_SpecificDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIEndpointProtectionRule_SpecificDomain) + if !ok { + that2, ok := that.(APIEndpointProtectionRule_SpecificDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SpecificDomain != that1.SpecificDomain { + return false + } + return true +} +func (this *APIGroupProtectionRule) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupProtectionRule) + if !ok { + that2, ok := that.(APIGroupProtectionRule) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Action.Equal(that1.Action) { + return false + } + if that1.DomainChoice == nil { + if this.DomainChoice != nil { + return false + } + } else if this.DomainChoice == nil { + return false + } else if !this.DomainChoice.Equal(that1.DomainChoice) { + return false + } + if this.BasePath != that1.BasePath { + return false + } + if this.ApiGroup != that1.ApiGroup { + return false + } + if !this.RequestMatcher.Equal(that1.RequestMatcher) { + return false + } + if !this.ClientMatcher.Equal(that1.ClientMatcher) { + return false + } + return true +} +func (this *APIGroupProtectionRule_AnyDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupProtectionRule_AnyDomain) + if !ok { + that2, ok := that.(APIGroupProtectionRule_AnyDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AnyDomain.Equal(that1.AnyDomain) { + return false + } + return true +} +func (this *APIGroupProtectionRule_SpecificDomain) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIGroupProtectionRule_SpecificDomain) + if !ok { + that2, ok := that.(APIGroupProtectionRule_SpecificDomain) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SpecificDomain != that1.SpecificDomain { + return false + } + return true +} +func (this *APIProtectionRuleAction) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIProtectionRuleAction) + if !ok { + that2, ok := that.(APIProtectionRuleAction) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.Action == nil { + if this.Action != nil { + return false + } + } else if this.Action == nil { + return false + } else if !this.Action.Equal(that1.Action) { + return false + } + return true +} +func (this *APIProtectionRuleAction_Allow) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIProtectionRuleAction_Allow) + if !ok { + that2, ok := that.(APIProtectionRuleAction_Allow) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Allow.Equal(that1.Allow) { + return false + } + return true +} +func (this *APIProtectionRuleAction_Deny) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*APIProtectionRuleAction_Deny) + if !ok { + that2, ok := that.(APIProtectionRuleAction_Deny) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Deny.Equal(that1.Deny) { + return false + } + return true +} +func (this *JWTValidation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*JWTValidation) + if !ok { + that2, ok := that.(JWTValidation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Target.Equal(that1.Target) { + return false + } + if !this.TokenLocation.Equal(that1.TokenLocation) { + return false + } + if !this.Action.Equal(that1.Action) { + return false + } + if that1.JwksConfiguration == nil { + if this.JwksConfiguration != nil { + return false + } + } else if this.JwksConfiguration == nil { + return false + } else if !this.JwksConfiguration.Equal(that1.JwksConfiguration) { + return false + } + if !this.ReservedClaims.Equal(that1.ReservedClaims) { + return false + } + if !this.MandatoryClaims.Equal(that1.MandatoryClaims) { + return false + } + return true +} +func (this *JWTValidation_AuthServerUri) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*JWTValidation_AuthServerUri) + if !ok { + that2, ok := that.(JWTValidation_AuthServerUri) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.AuthServerUri != that1.AuthServerUri { + return false + } + return true +} +func (this *JWTValidation_Jwks) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*JWTValidation_Jwks) + if !ok { + that2, ok := that.(JWTValidation_Jwks) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Jwks != that1.Jwks { + return false + } + return true +} +func (this *JWTValidation_JwksConfig) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*JWTValidation_JwksConfig) + if !ok { + that2, ok := that.(JWTValidation_JwksConfig) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.JwksConfig.Equal(that1.JwksConfig) { + return false + } + return true +} +func (this *MandatoryClaims) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*MandatoryClaims) + if !ok { + that2, ok := that.(MandatoryClaims) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.ClaimNames) != len(that1.ClaimNames) { + return false + } + for i := range this.ClaimNames { + if this.ClaimNames[i] != that1.ClaimNames[i] { + return false + } + } + return true +} +func (this *Target) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Target) + if !ok { + that2, ok := that.(Target) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.Target == nil { + if this.Target != nil { + return false + } + } else if this.Target == nil { + return false + } else if !this.Target.Equal(that1.Target) { + return false + } + return true +} +func (this *Target_AllEndpoint) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Target_AllEndpoint) + if !ok { + that2, ok := that.(Target_AllEndpoint) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AllEndpoint.Equal(that1.AllEndpoint) { + return false + } + return true +} +func (this *Target_ApiGroups) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Target_ApiGroups) + if !ok { + that2, ok := that.(Target_ApiGroups) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ApiGroups.Equal(that1.ApiGroups) { + return false + } + return true +} +func (this *Target_BasePaths) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Target_BasePaths) + if !ok { + that2, ok := that.(Target_BasePaths) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.BasePaths.Equal(that1.BasePaths) { + return false + } + return true +} +func (this *JWKS) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*JWKS) + if !ok { + that2, ok := that.(JWKS) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Cleartext != that1.Cleartext { + return false + } + return true +} +func (this *TokenLocation) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TokenLocation) + if !ok { + that2, ok := that.(TokenLocation) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.TokenLocation == nil { + if this.TokenLocation != nil { + return false + } + } else if this.TokenLocation == nil { + return false + } else if !this.TokenLocation.Equal(that1.TokenLocation) { + return false + } + return true +} +func (this *TokenLocation_BearerToken) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TokenLocation_BearerToken) + if !ok { + that2, ok := that.(TokenLocation_BearerToken) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.BearerToken.Equal(that1.BearerToken) { + return false + } + return true +} +func (this *TokenLocation_Cookie) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TokenLocation_Cookie) + if !ok { + that2, ok := that.(TokenLocation_Cookie) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Cookie != that1.Cookie { + return false + } + return true +} +func (this *TokenLocation_Header) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TokenLocation_Header) + if !ok { + that2, ok := that.(TokenLocation_Header) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Header != that1.Header { + return false + } + return true +} +func (this *TokenLocation_QueryParam) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TokenLocation_QueryParam) + if !ok { + that2, ok := that.(TokenLocation_QueryParam) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.QueryParam != that1.QueryParam { + return false + } + return true +} +func (this *ReservedClaims) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims) + if !ok { + that2, ok := that.(ReservedClaims) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.IssuerValidation == nil { + if this.IssuerValidation != nil { + return false + } + } else if this.IssuerValidation == nil { + return false + } else if !this.IssuerValidation.Equal(that1.IssuerValidation) { + return false + } + if that1.AudienceValidation == nil { + if this.AudienceValidation != nil { + return false + } + } else if this.AudienceValidation == nil { + return false + } else if !this.AudienceValidation.Equal(that1.AudienceValidation) { + return false + } + if that1.ValidatePeriod == nil { + if this.ValidatePeriod != nil { + return false + } + } else if this.ValidatePeriod == nil { + return false + } else if !this.ValidatePeriod.Equal(that1.ValidatePeriod) { + return false + } + return true +} +func (this *ReservedClaims_IssuerDisable) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims_IssuerDisable) + if !ok { + that2, ok := that.(ReservedClaims_IssuerDisable) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.IssuerDisable.Equal(that1.IssuerDisable) { + return false + } + return true +} +func (this *ReservedClaims_Issuer) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims_Issuer) + if !ok { + that2, ok := that.(ReservedClaims_Issuer) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Issuer != that1.Issuer { + return false + } + return true +} +func (this *ReservedClaims_AudienceDisable) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims_AudienceDisable) + if !ok { + that2, ok := that.(ReservedClaims_AudienceDisable) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AudienceDisable.Equal(that1.AudienceDisable) { + return false + } + return true +} +func (this *ReservedClaims_Audience) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims_Audience) + if !ok { + that2, ok := that.(ReservedClaims_Audience) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Audience.Equal(that1.Audience) { + return false + } + return true +} +func (this *ReservedClaims_ValidatePeriodDisable) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims_ValidatePeriodDisable) + if !ok { + that2, ok := that.(ReservedClaims_ValidatePeriodDisable) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidatePeriodDisable.Equal(that1.ValidatePeriodDisable) { + return false + } + return true +} +func (this *ReservedClaims_ValidatePeriodEnable) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReservedClaims_ValidatePeriodEnable) + if !ok { + that2, ok := that.(ReservedClaims_ValidatePeriodEnable) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ValidatePeriodEnable.Equal(that1.ValidatePeriodEnable) { + return false + } + return true +} +func (this *Audiences) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Audiences) + if !ok { + that2, ok := that.(Audiences) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Audiences) != len(that1.Audiences) { + return false + } + for i := range this.Audiences { + if this.Audiences[i] != that1.Audiences[i] { + return false + } + } + return true +} +func (this *BasePathsType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BasePathsType) + if !ok { + that2, ok := that.(BasePathsType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.BasePaths) != len(that1.BasePaths) { + return false + } + for i := range this.BasePaths { + if this.BasePaths[i] != that1.BasePaths[i] { + return false + } + } + return true +} +func (this *ApiDiscoverySetting) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiDiscoverySetting) + if !ok { + that2, ok := that.(ApiDiscoverySetting) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.LearnFromRedirectTraffic == nil { + if this.LearnFromRedirectTraffic != nil { + return false + } + } else if this.LearnFromRedirectTraffic == nil { + return false + } else if !this.LearnFromRedirectTraffic.Equal(that1.LearnFromRedirectTraffic) { + return false + } + if !this.SensitiveDataDetectionRules.Equal(that1.SensitiveDataDetectionRules) { + return false + } + if !this.DiscoveredApiSettings.Equal(that1.DiscoveredApiSettings) { + return false + } + return true +} +func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiDiscoverySetting_DisableLearnFromRedirectTraffic) + if !ok { + that2, ok := that.(ApiDiscoverySetting_DisableLearnFromRedirectTraffic) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableLearnFromRedirectTraffic.Equal(that1.DisableLearnFromRedirectTraffic) { + return false + } + return true +} +func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ApiDiscoverySetting_EnableLearnFromRedirectTraffic) + if !ok { + that2, ok := that.(ApiDiscoverySetting_EnableLearnFromRedirectTraffic) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EnableLearnFromRedirectTraffic.Equal(that1.EnableLearnFromRedirectTraffic) { + return false + } + return true +} +func (this *ServicePolicyList) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.ServicePolicyList{") + if this.Policies != nil { + s = append(s, "Policies: "+fmt.Sprintf("%#v", this.Policies)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *EnableChallenge) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&common_waf.EnableChallenge{") + if this.MaliciousUserMitigationChoice != nil { + s = append(s, "MaliciousUserMitigationChoice: "+fmt.Sprintf("%#v", this.MaliciousUserMitigationChoice)+",\n") + } + if this.JsChallengeParametersChoice != nil { + s = append(s, "JsChallengeParametersChoice: "+fmt.Sprintf("%#v", this.JsChallengeParametersChoice)+",\n") + } + if this.CaptchaChallengeParametersChoice != nil { + s = append(s, "CaptchaChallengeParametersChoice: "+fmt.Sprintf("%#v", this.CaptchaChallengeParametersChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *EnableChallenge_DefaultMitigationSettings) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.EnableChallenge_DefaultMitigationSettings{` + + `DefaultMitigationSettings:` + fmt.Sprintf("%#v", this.DefaultMitigationSettings) + `}`}, ", ") + return s +} +func (this *EnableChallenge_MaliciousUserMitigation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.EnableChallenge_MaliciousUserMitigation{` + + `MaliciousUserMitigation:` + fmt.Sprintf("%#v", this.MaliciousUserMitigation) + `}`}, ", ") + return s +} +func (this *EnableChallenge_DefaultJsChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.EnableChallenge_DefaultJsChallengeParameters{` + + `DefaultJsChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultJsChallengeParameters) + `}`}, ", ") + return s +} +func (this *EnableChallenge_JsChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.EnableChallenge_JsChallengeParameters{` + + `JsChallengeParameters:` + fmt.Sprintf("%#v", this.JsChallengeParameters) + `}`}, ", ") + return s +} +func (this *EnableChallenge_DefaultCaptchaChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{` + + `DefaultCaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultCaptchaChallengeParameters) + `}`}, ", ") + return s +} +func (this *EnableChallenge_CaptchaChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.EnableChallenge_CaptchaChallengeParameters{` + + `CaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.CaptchaChallengeParameters) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 16) + s = append(s, "&common_waf.PolicyBasedChallenge{") + if this.JsChallengeParametersChoice != nil { + s = append(s, "JsChallengeParametersChoice: "+fmt.Sprintf("%#v", this.JsChallengeParametersChoice)+",\n") + } + if this.CaptchaChallengeParametersChoice != nil { + s = append(s, "CaptchaChallengeParametersChoice: "+fmt.Sprintf("%#v", this.CaptchaChallengeParametersChoice)+",\n") + } + if this.TemporaryBlockingParametersChoice != nil { + s = append(s, "TemporaryBlockingParametersChoice: "+fmt.Sprintf("%#v", this.TemporaryBlockingParametersChoice)+",\n") + } + if this.MaliciousUserMitigationChoice != nil { + s = append(s, "MaliciousUserMitigationChoice: "+fmt.Sprintf("%#v", this.MaliciousUserMitigationChoice)+",\n") + } + if this.ChallengeChoice != nil { + s = append(s, "ChallengeChoice: "+fmt.Sprintf("%#v", this.ChallengeChoice)+",\n") + } + if this.RuleList != nil { + s = append(s, "RuleList: "+fmt.Sprintf("%#v", this.RuleList)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_DefaultJsChallengeParameters{` + + `DefaultJsChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultJsChallengeParameters) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_JsChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_JsChallengeParameters{` + + `JsChallengeParameters:` + fmt.Sprintf("%#v", this.JsChallengeParameters) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{` + + `DefaultCaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultCaptchaChallengeParameters) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_CaptchaChallengeParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_CaptchaChallengeParameters{` + + `CaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.CaptchaChallengeParameters) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{` + + `DefaultTemporaryBlockingParameters:` + fmt.Sprintf("%#v", this.DefaultTemporaryBlockingParameters) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_TemporaryUserBlocking) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_TemporaryUserBlocking{` + + `TemporaryUserBlocking:` + fmt.Sprintf("%#v", this.TemporaryUserBlocking) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_DefaultMitigationSettings) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_DefaultMitigationSettings{` + + `DefaultMitigationSettings:` + fmt.Sprintf("%#v", this.DefaultMitigationSettings) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_MaliciousUserMitigation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_MaliciousUserMitigation{` + + `MaliciousUserMitigation:` + fmt.Sprintf("%#v", this.MaliciousUserMitigation) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_NoChallenge) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_NoChallenge{` + + `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_AlwaysEnableJsChallenge{` + + `AlwaysEnableJsChallenge:` + fmt.Sprintf("%#v", this.AlwaysEnableJsChallenge) + `}`}, ", ") + return s +} +func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{` + + `AlwaysEnableCaptchaChallenge:` + fmt.Sprintf("%#v", this.AlwaysEnableCaptchaChallenge) + `}`}, ", ") + return s +} +func (this *ChallengeRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.ChallengeRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ChallengeRuleList) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.ChallengeRuleList{") + if this.Rules != nil { + s = append(s, "Rules: "+fmt.Sprintf("%#v", this.Rules)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *IPThreatCategoryListType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.IPThreatCategoryListType{") + s = append(s, "IpThreatCategories: "+fmt.Sprintf("%#v", this.IpThreatCategories)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *HttpHeaderMatcherList) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.HttpHeaderMatcherList{") + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SimpleClientSrcRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 14) + s = append(s, "&common_waf.SimpleClientSrcRule{") + if this.ClientSourceChoice != nil { + s = append(s, "ClientSourceChoice: "+fmt.Sprintf("%#v", this.ClientSourceChoice)+",\n") + } + if this.ExpirationTimestamp != nil { + s = append(s, "ExpirationTimestamp: "+fmt.Sprintf("%#v", this.ExpirationTimestamp)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.ActionChoice != nil { + s = append(s, "ActionChoice: "+fmt.Sprintf("%#v", this.ActionChoice)+",\n") + } + s = append(s, "Actions: "+fmt.Sprintf("%#v", this.Actions)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SimpleClientSrcRule_IpPrefix) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_IpPrefix{` + + `IpPrefix:` + fmt.Sprintf("%#v", this.IpPrefix) + `}`}, ", ") + return s +} +func (this *SimpleClientSrcRule_AsNumber) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_AsNumber{` + + `AsNumber:` + fmt.Sprintf("%#v", this.AsNumber) + `}`}, ", ") + return s +} +func (this *SimpleClientSrcRule_HttpHeader) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_HttpHeader{` + + `HttpHeader:` + fmt.Sprintf("%#v", this.HttpHeader) + `}`}, ", ") + return s +} +func (this *SimpleClientSrcRule_UserIdentifier) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_UserIdentifier{` + + `UserIdentifier:` + fmt.Sprintf("%#v", this.UserIdentifier) + `}`}, ", ") + return s +} +func (this *SimpleClientSrcRule_SkipProcessing) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_SkipProcessing{` + + `SkipProcessing:` + fmt.Sprintf("%#v", this.SkipProcessing) + `}`}, ", ") + return s +} +func (this *SimpleClientSrcRule_WafSkipProcessing) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_WafSkipProcessing{` + + `WafSkipProcessing:` + fmt.Sprintf("%#v", this.WafSkipProcessing) + `}`}, ", ") + return s +} +func (this *SimpleClientSrcRule_BotSkipProcessing) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.SimpleClientSrcRule_BotSkipProcessing{` + + `BotSkipProcessing:` + fmt.Sprintf("%#v", this.BotSkipProcessing) + `}`}, ", ") + return s +} +func (this *RateLimitConfigType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&common_waf.RateLimitConfigType{") + if this.RateLimiter != nil { + s = append(s, "RateLimiter: "+fmt.Sprintf("%#v", this.RateLimiter)+",\n") + } + if this.IpAllowedListChoice != nil { + s = append(s, "IpAllowedListChoice: "+fmt.Sprintf("%#v", this.IpAllowedListChoice)+",\n") + } + if this.PolicyChoice != nil { + s = append(s, "PolicyChoice: "+fmt.Sprintf("%#v", this.PolicyChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RateLimitConfigType_NoIpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.RateLimitConfigType_NoIpAllowedList{` + + `NoIpAllowedList:` + fmt.Sprintf("%#v", this.NoIpAllowedList) + `}`}, ", ") + return s +} +func (this *RateLimitConfigType_IpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.RateLimitConfigType_IpAllowedList{` + + `IpAllowedList:` + fmt.Sprintf("%#v", this.IpAllowedList) + `}`}, ", ") + return s +} +func (this *RateLimitConfigType_CustomIpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.RateLimitConfigType_CustomIpAllowedList{` + + `CustomIpAllowedList:` + fmt.Sprintf("%#v", this.CustomIpAllowedList) + `}`}, ", ") + return s +} +func (this *RateLimitConfigType_NoPolicies) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.RateLimitConfigType_NoPolicies{` + + `NoPolicies:` + fmt.Sprintf("%#v", this.NoPolicies) + `}`}, ", ") + return s +} +func (this *RateLimitConfigType_Policies) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.RateLimitConfigType_Policies{` + + `Policies:` + fmt.Sprintf("%#v", this.Policies) + `}`}, ", ") + return s +} +func (this *APIRateLimit) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&common_waf.APIRateLimit{") + if this.IpAllowedListChoice != nil { + s = append(s, "IpAllowedListChoice: "+fmt.Sprintf("%#v", this.IpAllowedListChoice)+",\n") + } + if this.ServerUrlRules != nil { + s = append(s, "ServerUrlRules: "+fmt.Sprintf("%#v", this.ServerUrlRules)+",\n") + } + if this.ApiEndpointRules != nil { + s = append(s, "ApiEndpointRules: "+fmt.Sprintf("%#v", this.ApiEndpointRules)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APIRateLimit_NoIpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIRateLimit_NoIpAllowedList{` + + `NoIpAllowedList:` + fmt.Sprintf("%#v", this.NoIpAllowedList) + `}`}, ", ") + return s +} +func (this *APIRateLimit_IpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIRateLimit_IpAllowedList{` + + `IpAllowedList:` + fmt.Sprintf("%#v", this.IpAllowedList) + `}`}, ", ") + return s +} +func (this *APIRateLimit_CustomIpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIRateLimit_CustomIpAllowedList{` + + `CustomIpAllowedList:` + fmt.Sprintf("%#v", this.CustomIpAllowedList) + `}`}, ", ") + return s +} +func (this *APIRateLimit_BypassRateLimitingRules) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIRateLimit_BypassRateLimitingRules{` + + `BypassRateLimitingRules:` + fmt.Sprintf("%#v", this.BypassRateLimitingRules) + `}`}, ", ") + return s +} +func (this *BypassRateLimitingRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&common_waf.BypassRateLimitingRule{") + if this.DomainChoice != nil { + s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + } + if this.DestinationType != nil { + s = append(s, "DestinationType: "+fmt.Sprintf("%#v", this.DestinationType)+",\n") + } + if this.RequestMatcher != nil { + s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") + } + if this.ClientMatcher != nil { + s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *BypassRateLimitingRule_AnyDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.BypassRateLimitingRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *BypassRateLimitingRule_SpecificDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.BypassRateLimitingRule_SpecificDomain{` + + `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") + return s +} +func (this *BypassRateLimitingRule_AnyUrl) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.BypassRateLimitingRule_AnyUrl{` + + `AnyUrl:` + fmt.Sprintf("%#v", this.AnyUrl) + `}`}, ", ") + return s +} +func (this *BypassRateLimitingRule_BasePath) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.BypassRateLimitingRule_BasePath{` + + `BasePath:` + fmt.Sprintf("%#v", this.BasePath) + `}`}, ", ") + return s +} +func (this *BypassRateLimitingRule_ApiEndpoint) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.BypassRateLimitingRule_ApiEndpoint{` + + `ApiEndpoint:` + fmt.Sprintf("%#v", this.ApiEndpoint) + `}`}, ", ") + return s +} +func (this *BypassRateLimitingRule_ApiGroups) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.BypassRateLimitingRule_ApiGroups{` + + `ApiGroups:` + fmt.Sprintf("%#v", this.ApiGroups) + `}`}, ", ") + return s +} +func (this *APIGroups) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.APIGroups{") + s = append(s, "ApiGroups: "+fmt.Sprintf("%#v", this.ApiGroups)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ApiEndpointDetails) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.ApiEndpointDetails{") + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") + s = append(s, "Methods: "+fmt.Sprintf("%#v", this.Methods)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *BypassRateLimitingRules) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.BypassRateLimitingRules{") + if this.BypassRateLimitingRules != nil { + s = append(s, "BypassRateLimitingRules: "+fmt.Sprintf("%#v", this.BypassRateLimitingRules)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ApiEndpointRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 13) + s = append(s, "&common_waf.ApiEndpointRule{") + if this.DomainChoice != nil { + s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + } + s = append(s, "BasePath: "+fmt.Sprintf("%#v", this.BasePath)+",\n") + s = append(s, "ApiEndpointPath: "+fmt.Sprintf("%#v", this.ApiEndpointPath)+",\n") + if this.ApiEndpointMethod != nil { + s = append(s, "ApiEndpointMethod: "+fmt.Sprintf("%#v", this.ApiEndpointMethod)+",\n") + } + if this.RequestMatcher != nil { + s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") + } + if this.ClientMatcher != nil { + s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + } + if this.RateLimiterChoice != nil { + s = append(s, "RateLimiterChoice: "+fmt.Sprintf("%#v", this.RateLimiterChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ApiEndpointRule_AnyDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ApiEndpointRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *ApiEndpointRule_SpecificDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ApiEndpointRule_SpecificDomain{` + + `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") + return s +} +func (this *ApiEndpointRule_InlineRateLimiter) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ApiEndpointRule_InlineRateLimiter{` + + `InlineRateLimiter:` + fmt.Sprintf("%#v", this.InlineRateLimiter) + `}`}, ", ") + return s +} +func (this *ApiEndpointRule_RefRateLimiter) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ApiEndpointRule_RefRateLimiter{` + + `RefRateLimiter:` + fmt.Sprintf("%#v", this.RefRateLimiter) + `}`}, ", ") + return s +} +func (this *InlineRateLimiter) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common_waf.InlineRateLimiter{") + s = append(s, "Threshold: "+fmt.Sprintf("%#v", this.Threshold)+",\n") + s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") + if this.CountByChoice != nil { + s = append(s, "CountByChoice: "+fmt.Sprintf("%#v", this.CountByChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *InlineRateLimiter_UseHttpLbUserId) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.InlineRateLimiter_UseHttpLbUserId{` + + `UseHttpLbUserId:` + fmt.Sprintf("%#v", this.UseHttpLbUserId) + `}`}, ", ") + return s +} +func (this *InlineRateLimiter_RefUserId) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.InlineRateLimiter_RefUserId{` + + `RefUserId:` + fmt.Sprintf("%#v", this.RefUserId) + `}`}, ", ") + return s +} +func (this *ServerUrlRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&common_waf.ServerUrlRule{") + if this.DomainChoice != nil { + s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + } + s = append(s, "BasePath: "+fmt.Sprintf("%#v", this.BasePath)+",\n") + s = append(s, "ApiGroup: "+fmt.Sprintf("%#v", this.ApiGroup)+",\n") + if this.RequestMatcher != nil { + s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") + } + if this.ClientMatcher != nil { + s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + } + if this.RateLimiterChoice != nil { + s = append(s, "RateLimiterChoice: "+fmt.Sprintf("%#v", this.RateLimiterChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ServerUrlRule_AnyDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ServerUrlRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *ServerUrlRule_SpecificDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ServerUrlRule_SpecificDomain{` + + `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") + return s +} +func (this *ServerUrlRule_InlineRateLimiter) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ServerUrlRule_InlineRateLimiter{` + + `InlineRateLimiter:` + fmt.Sprintf("%#v", this.InlineRateLimiter) + `}`}, ", ") + return s +} +func (this *ServerUrlRule_RefRateLimiter) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ServerUrlRule_RefRateLimiter{` + + `RefRateLimiter:` + fmt.Sprintf("%#v", this.RefRateLimiter) + `}`}, ", ") + return s +} +func (this *CustomIpAllowedList) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.CustomIpAllowedList{") + if this.RateLimiterAllowedPrefixes != nil { + s = append(s, "RateLimiterAllowedPrefixes: "+fmt.Sprintf("%#v", this.RateLimiterAllowedPrefixes)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APISpecificationSettings) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common_waf.APISpecificationSettings{") + if this.ApiDefinition != nil { + s = append(s, "ApiDefinition: "+fmt.Sprintf("%#v", this.ApiDefinition)+",\n") + } + if this.ValidationTargetChoice != nil { + s = append(s, "ValidationTargetChoice: "+fmt.Sprintf("%#v", this.ValidationTargetChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APISpecificationSettings_ValidationDisabled) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APISpecificationSettings_ValidationDisabled{` + + `ValidationDisabled:` + fmt.Sprintf("%#v", this.ValidationDisabled) + `}`}, ", ") + return s +} +func (this *APISpecificationSettings_ValidationAllSpecEndpoints) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{` + + `ValidationAllSpecEndpoints:` + fmt.Sprintf("%#v", this.ValidationAllSpecEndpoints) + `}`}, ", ") + return s +} +func (this *APISpecificationSettings_ValidationCustomList) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APISpecificationSettings_ValidationCustomList{` + + `ValidationCustomList:` + fmt.Sprintf("%#v", this.ValidationCustomList) + `}`}, ", ") + return s +} +func (this *OpenApiValidationAllSpecEndpointsSettings) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&common_waf.OpenApiValidationAllSpecEndpointsSettings{") + if this.ValidationMode != nil { + s = append(s, "ValidationMode: "+fmt.Sprintf("%#v", this.ValidationMode)+",\n") + } + if this.FallThroughMode != nil { + s = append(s, "FallThroughMode: "+fmt.Sprintf("%#v", this.FallThroughMode)+",\n") + } + if this.OversizedBodyChoice != nil { + s = append(s, "OversizedBodyChoice: "+fmt.Sprintf("%#v", this.OversizedBodyChoice)+",\n") + } + if this.Settings != nil { + s = append(s, "Settings: "+fmt.Sprintf("%#v", this.Settings)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{` + + `OversizedBodySkipValidation:` + fmt.Sprintf("%#v", this.OversizedBodySkipValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{` + + `OversizedBodyFailValidation:` + fmt.Sprintf("%#v", this.OversizedBodyFailValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationMode) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common_waf.OpenApiValidationMode{") + if this.ValidationModeChoice != nil { + s = append(s, "ValidationModeChoice: "+fmt.Sprintf("%#v", this.ValidationModeChoice)+",\n") + } + if this.ResponseValidationModeChoice != nil { + s = append(s, "ResponseValidationModeChoice: "+fmt.Sprintf("%#v", this.ResponseValidationModeChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiValidationMode_ValidationModeActive) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationMode_ValidationModeActive{` + + `ValidationModeActive:` + fmt.Sprintf("%#v", this.ValidationModeActive) + `}`}, ", ") + return s +} +func (this *OpenApiValidationMode_SkipValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationMode_SkipValidation{` + + `SkipValidation:` + fmt.Sprintf("%#v", this.SkipValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationMode_SkipResponseValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationMode_SkipResponseValidation{` + + `SkipResponseValidation:` + fmt.Sprintf("%#v", this.SkipResponseValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationMode_ResponseValidationModeActive) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationMode_ResponseValidationModeActive{` + + `ResponseValidationModeActive:` + fmt.Sprintf("%#v", this.ResponseValidationModeActive) + `}`}, ", ") + return s +} +func (this *OpenApiValidationModeActive) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&common_waf.OpenApiValidationModeActive{") + if this.ValidationEnforcementType != nil { + s = append(s, "ValidationEnforcementType: "+fmt.Sprintf("%#v", this.ValidationEnforcementType)+",\n") + } + s = append(s, "RequestValidationProperties: "+fmt.Sprintf("%#v", this.RequestValidationProperties)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiValidationModeActive_EnforcementReport) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationModeActive_EnforcementReport{` + + `EnforcementReport:` + fmt.Sprintf("%#v", this.EnforcementReport) + `}`}, ", ") + return s +} +func (this *OpenApiValidationModeActive_EnforcementBlock) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationModeActive_EnforcementBlock{` + + `EnforcementBlock:` + fmt.Sprintf("%#v", this.EnforcementBlock) + `}`}, ", ") + return s +} +func (this *OpenApiValidationModeActiveResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&common_waf.OpenApiValidationModeActiveResponse{") + if this.ValidationEnforcementType != nil { + s = append(s, "ValidationEnforcementType: "+fmt.Sprintf("%#v", this.ValidationEnforcementType)+",\n") + } + s = append(s, "ResponseValidationProperties: "+fmt.Sprintf("%#v", this.ResponseValidationProperties)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiValidationModeActiveResponse_EnforcementReport) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{` + + `EnforcementReport:` + fmt.Sprintf("%#v", this.EnforcementReport) + `}`}, ", ") + return s +} +func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{` + + `EnforcementBlock:` + fmt.Sprintf("%#v", this.EnforcementBlock) + `}`}, ", ") + return s +} +func (this *OpenApiFallThroughMode) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.OpenApiFallThroughMode{") + if this.FallThroughModeChoice != nil { + s = append(s, "FallThroughModeChoice: "+fmt.Sprintf("%#v", this.FallThroughModeChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiFallThroughMode_FallThroughModeAllow) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiFallThroughMode_FallThroughModeAllow{` + + `FallThroughModeAllow:` + fmt.Sprintf("%#v", this.FallThroughModeAllow) + `}`}, ", ") + return s +} +func (this *OpenApiFallThroughMode_FallThroughModeCustom) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiFallThroughMode_FallThroughModeCustom{` + + `FallThroughModeCustom:` + fmt.Sprintf("%#v", this.FallThroughModeCustom) + `}`}, ", ") + return s +} +func (this *CustomFallThroughMode) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.CustomFallThroughMode{") + if this.OpenApiValidationRules != nil { + s = append(s, "OpenApiValidationRules: "+fmt.Sprintf("%#v", this.OpenApiValidationRules)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FallThroughRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&common_waf.FallThroughRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.ActionChoice != nil { + s = append(s, "ActionChoice: "+fmt.Sprintf("%#v", this.ActionChoice)+",\n") + } + if this.ConditionTypeChoice != nil { + s = append(s, "ConditionTypeChoice: "+fmt.Sprintf("%#v", this.ConditionTypeChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *FallThroughRule_ActionSkip) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.FallThroughRule_ActionSkip{` + + `ActionSkip:` + fmt.Sprintf("%#v", this.ActionSkip) + `}`}, ", ") + return s +} +func (this *FallThroughRule_ActionReport) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.FallThroughRule_ActionReport{` + + `ActionReport:` + fmt.Sprintf("%#v", this.ActionReport) + `}`}, ", ") + return s +} +func (this *FallThroughRule_ActionBlock) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.FallThroughRule_ActionBlock{` + + `ActionBlock:` + fmt.Sprintf("%#v", this.ActionBlock) + `}`}, ", ") + return s +} +func (this *FallThroughRule_ApiEndpoint) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.FallThroughRule_ApiEndpoint{` + + `ApiEndpoint:` + fmt.Sprintf("%#v", this.ApiEndpoint) + `}`}, ", ") + return s +} +func (this *FallThroughRule_BasePath) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.FallThroughRule_BasePath{` + + `BasePath:` + fmt.Sprintf("%#v", this.BasePath) + `}`}, ", ") + return s +} +func (this *FallThroughRule_ApiGroup) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.FallThroughRule_ApiGroup{` + + `ApiGroup:` + fmt.Sprintf("%#v", this.ApiGroup) + `}`}, ", ") + return s +} +func (this *ValidateApiBySpecRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&common_waf.ValidateApiBySpecRule{") + if this.OpenApiValidationRules != nil { + s = append(s, "OpenApiValidationRules: "+fmt.Sprintf("%#v", this.OpenApiValidationRules)+",\n") + } + if this.FallThroughMode != nil { + s = append(s, "FallThroughMode: "+fmt.Sprintf("%#v", this.FallThroughMode)+",\n") + } + if this.OversizedBodyChoice != nil { + s = append(s, "OversizedBodyChoice: "+fmt.Sprintf("%#v", this.OversizedBodyChoice)+",\n") + } + if this.Settings != nil { + s = append(s, "Settings: "+fmt.Sprintf("%#v", this.Settings)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{` + + `OversizedBodySkipValidation:` + fmt.Sprintf("%#v", this.OversizedBodySkipValidation) + `}`}, ", ") + return s +} +func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{` + + `OversizedBodyFailValidation:` + fmt.Sprintf("%#v", this.OversizedBodyFailValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&common_waf.OpenApiValidationRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.ValidationMode != nil { + s = append(s, "ValidationMode: "+fmt.Sprintf("%#v", this.ValidationMode)+",\n") + } + if this.DomainChoice != nil { + s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + } + if this.ConditionTypeChoice != nil { + s = append(s, "ConditionTypeChoice: "+fmt.Sprintf("%#v", this.ConditionTypeChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiValidationRule_AnyDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *OpenApiValidationRule_SpecificDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationRule_SpecificDomain{` + + `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") + return s +} +func (this *OpenApiValidationRule_ApiEndpoint) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationRule_ApiEndpoint{` + + `ApiEndpoint:` + fmt.Sprintf("%#v", this.ApiEndpoint) + `}`}, ", ") + return s +} +func (this *OpenApiValidationRule_BasePath) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationRule_BasePath{` + + `BasePath:` + fmt.Sprintf("%#v", this.BasePath) + `}`}, ", ") + return s +} +func (this *OpenApiValidationRule_ApiGroup) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationRule_ApiGroup{` + + `ApiGroup:` + fmt.Sprintf("%#v", this.ApiGroup) + `}`}, ", ") + return s +} +func (this *OpenApiValidationCommonSettings) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common_waf.OpenApiValidationCommonSettings{") + if this.OversizedBodyChoice != nil { + s = append(s, "OversizedBodyChoice: "+fmt.Sprintf("%#v", this.OversizedBodyChoice)+",\n") + } + if this.PropertyValidationSettingsChoice != nil { + s = append(s, "PropertyValidationSettingsChoice: "+fmt.Sprintf("%#v", this.PropertyValidationSettingsChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{` + + `OversizedBodySkipValidation:` + fmt.Sprintf("%#v", this.OversizedBodySkipValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{` + + `OversizedBodyFailValidation:` + fmt.Sprintf("%#v", this.OversizedBodyFailValidation) + `}`}, ", ") + return s +} +func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{` + + `PropertyValidationSettingsDefault:` + fmt.Sprintf("%#v", this.PropertyValidationSettingsDefault) + `}`}, ", ") + return s +} +func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{` + + `PropertyValidationSettingsCustom:` + fmt.Sprintf("%#v", this.PropertyValidationSettingsCustom) + `}`}, ", ") + return s +} +func (this *ValidationPropertySetting) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.ValidationPropertySetting{") + if this.QueryParameters != nil { + s = append(s, "QueryParameters: "+fmt.Sprintf("%#v", this.QueryParameters)+",\n") + } + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ValidationSettingForQueryParameters) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.ValidationSettingForQueryParameters{") + if this.AdditionalParametersChoice != nil { + s = append(s, "AdditionalParametersChoice: "+fmt.Sprintf("%#v", this.AdditionalParametersChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{` + + `AllowAdditionalParameters:` + fmt.Sprintf("%#v", this.AllowAdditionalParameters) + `}`}, ", ") + return s +} +func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{` + + `DisallowAdditionalParameters:` + fmt.Sprintf("%#v", this.DisallowAdditionalParameters) + `}`}, ", ") + return s +} +func (this *ValidationSettingForHeaders) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.ValidationSettingForHeaders{") + if this.AdditionalHeadersChoice != nil { + s = append(s, "AdditionalHeadersChoice: "+fmt.Sprintf("%#v", this.AdditionalHeadersChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{` + + `AllowAdditionalHeaders:` + fmt.Sprintf("%#v", this.AllowAdditionalHeaders) + `}`}, ", ") + return s +} +func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{` + + `DisallowAdditionalHeaders:` + fmt.Sprintf("%#v", this.DisallowAdditionalHeaders) + `}`}, ", ") + return s +} +func (this *ApiDefinitionList) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.ApiDefinitionList{") + if this.ApiDefinitions != nil { + s = append(s, "ApiDefinitions: "+fmt.Sprintf("%#v", this.ApiDefinitions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APIProtectionRules) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.APIProtectionRules{") + if this.ApiEndpointRules != nil { + s = append(s, "ApiEndpointRules: "+fmt.Sprintf("%#v", this.ApiEndpointRules)+",\n") + } + if this.ApiGroupsRules != nil { + s = append(s, "ApiGroupsRules: "+fmt.Sprintf("%#v", this.ApiGroupsRules)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APIEndpointProtectionRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&common_waf.APIEndpointProtectionRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Action != nil { + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + } + if this.DomainChoice != nil { + s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + } + s = append(s, "ApiEndpointPath: "+fmt.Sprintf("%#v", this.ApiEndpointPath)+",\n") + if this.ApiEndpointMethod != nil { + s = append(s, "ApiEndpointMethod: "+fmt.Sprintf("%#v", this.ApiEndpointMethod)+",\n") + } + if this.RequestMatcher != nil { + s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") + } + if this.ClientMatcher != nil { + s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APIEndpointProtectionRule_AnyDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIEndpointProtectionRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *APIEndpointProtectionRule_SpecificDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIEndpointProtectionRule_SpecificDomain{` + + `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") + return s +} +func (this *APIGroupProtectionRule) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&common_waf.APIGroupProtectionRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Action != nil { + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + } + if this.DomainChoice != nil { + s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + } + s = append(s, "BasePath: "+fmt.Sprintf("%#v", this.BasePath)+",\n") + s = append(s, "ApiGroup: "+fmt.Sprintf("%#v", this.ApiGroup)+",\n") + if this.RequestMatcher != nil { + s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") + } + if this.ClientMatcher != nil { + s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APIGroupProtectionRule_AnyDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIGroupProtectionRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *APIGroupProtectionRule_SpecificDomain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIGroupProtectionRule_SpecificDomain{` + + `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") + return s +} +func (this *APIProtectionRuleAction) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&common_waf.APIProtectionRuleAction{") + if this.Action != nil { + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *APIProtectionRuleAction_Allow) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIProtectionRuleAction_Allow{` + + `Allow:` + fmt.Sprintf("%#v", this.Allow) + `}`}, ", ") + return s +} +func (this *APIProtectionRuleAction_Deny) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.APIProtectionRuleAction_Deny{` + + `Deny:` + fmt.Sprintf("%#v", this.Deny) + `}`}, ", ") + return s +} +func (this *JWTValidation) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&common_waf.JWTValidation{") + if this.Target != nil { + s = append(s, "Target: "+fmt.Sprintf("%#v", this.Target)+",\n") + } + if this.TokenLocation != nil { + s = append(s, "TokenLocation: "+fmt.Sprintf("%#v", this.TokenLocation)+",\n") + } + if this.Action != nil { + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + } + if this.JwksConfiguration != nil { + s = append(s, "JwksConfiguration: "+fmt.Sprintf("%#v", this.JwksConfiguration)+",\n") + } + if this.ReservedClaims != nil { + s = append(s, "ReservedClaims: "+fmt.Sprintf("%#v", this.ReservedClaims)+",\n") + } + if this.MandatoryClaims != nil { + s = append(s, "MandatoryClaims: "+fmt.Sprintf("%#v", this.MandatoryClaims)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *JWTValidation_AuthServerUri) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.JWTValidation_AuthServerUri{` + + `AuthServerUri:` + fmt.Sprintf("%#v", this.AuthServerUri) + `}`}, ", ") + return s +} +func (this *JWTValidation_Jwks) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.JWTValidation_Jwks{` + + `Jwks:` + fmt.Sprintf("%#v", this.Jwks) + `}`}, ", ") + return s +} +func (this *JWTValidation_JwksConfig) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.JWTValidation_JwksConfig{` + + `JwksConfig:` + fmt.Sprintf("%#v", this.JwksConfig) + `}`}, ", ") + return s +} +func (this *MandatoryClaims) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.MandatoryClaims{") + s = append(s, "ClaimNames: "+fmt.Sprintf("%#v", this.ClaimNames)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Target) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&common_waf.Target{") + if this.Target != nil { + s = append(s, "Target: "+fmt.Sprintf("%#v", this.Target)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Target_AllEndpoint) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.Target_AllEndpoint{` + + `AllEndpoint:` + fmt.Sprintf("%#v", this.AllEndpoint) + `}`}, ", ") + return s +} +func (this *Target_ApiGroups) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.Target_ApiGroups{` + + `ApiGroups:` + fmt.Sprintf("%#v", this.ApiGroups) + `}`}, ", ") + return s +} +func (this *Target_BasePaths) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.Target_BasePaths{` + + `BasePaths:` + fmt.Sprintf("%#v", this.BasePaths) + `}`}, ", ") + return s +} +func (this *JWKS) goString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.JWKS{") + s = append(s, "Cleartext: "+fmt.Sprintf("%#v", this.Cleartext)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *TokenLocation) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common_waf.TokenLocation{") + if this.TokenLocation != nil { + s = append(s, "TokenLocation: "+fmt.Sprintf("%#v", this.TokenLocation)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *TokenLocation_BearerToken) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.TokenLocation_BearerToken{` + + `BearerToken:` + fmt.Sprintf("%#v", this.BearerToken) + `}`}, ", ") + return s +} +func (this *TokenLocation_Cookie) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.TokenLocation_Cookie{` + + `Cookie:` + fmt.Sprintf("%#v", this.Cookie) + `}`}, ", ") + return s +} +func (this *TokenLocation_Header) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.TokenLocation_Header{` + + `Header:` + fmt.Sprintf("%#v", this.Header) + `}`}, ", ") + return s +} +func (this *TokenLocation_QueryParam) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.TokenLocation_QueryParam{` + + `QueryParam:` + fmt.Sprintf("%#v", this.QueryParam) + `}`}, ", ") + return s +} +func (this *ReservedClaims) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&common_waf.ReservedClaims{") + if this.IssuerValidation != nil { + s = append(s, "IssuerValidation: "+fmt.Sprintf("%#v", this.IssuerValidation)+",\n") + } + if this.AudienceValidation != nil { + s = append(s, "AudienceValidation: "+fmt.Sprintf("%#v", this.AudienceValidation)+",\n") + } + if this.ValidatePeriod != nil { + s = append(s, "ValidatePeriod: "+fmt.Sprintf("%#v", this.ValidatePeriod)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReservedClaims_IssuerDisable) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ReservedClaims_IssuerDisable{` + + `IssuerDisable:` + fmt.Sprintf("%#v", this.IssuerDisable) + `}`}, ", ") + return s +} +func (this *ReservedClaims_Issuer) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ReservedClaims_Issuer{` + + `Issuer:` + fmt.Sprintf("%#v", this.Issuer) + `}`}, ", ") + return s +} +func (this *ReservedClaims_AudienceDisable) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ReservedClaims_AudienceDisable{` + + `AudienceDisable:` + fmt.Sprintf("%#v", this.AudienceDisable) + `}`}, ", ") + return s +} +func (this *ReservedClaims_Audience) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ReservedClaims_Audience{` + + `Audience:` + fmt.Sprintf("%#v", this.Audience) + `}`}, ", ") + return s +} +func (this *ReservedClaims_ValidatePeriodDisable) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ReservedClaims_ValidatePeriodDisable{` + + `ValidatePeriodDisable:` + fmt.Sprintf("%#v", this.ValidatePeriodDisable) + `}`}, ", ") + return s +} +func (this *ReservedClaims_ValidatePeriodEnable) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ReservedClaims_ValidatePeriodEnable{` + + `ValidatePeriodEnable:` + fmt.Sprintf("%#v", this.ValidatePeriodEnable) + `}`}, ", ") + return s +} +func (this *Audiences) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.Audiences{") + s = append(s, "Audiences: "+fmt.Sprintf("%#v", this.Audiences)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *BasePathsType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&common_waf.BasePathsType{") + s = append(s, "BasePaths: "+fmt.Sprintf("%#v", this.BasePaths)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ApiDiscoverySetting) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&common_waf.ApiDiscoverySetting{") + if this.LearnFromRedirectTraffic != nil { + s = append(s, "LearnFromRedirectTraffic: "+fmt.Sprintf("%#v", this.LearnFromRedirectTraffic)+",\n") + } + if this.SensitiveDataDetectionRules != nil { + s = append(s, "SensitiveDataDetectionRules: "+fmt.Sprintf("%#v", this.SensitiveDataDetectionRules)+",\n") + } + if this.DiscoveredApiSettings != nil { + s = append(s, "DiscoveredApiSettings: "+fmt.Sprintf("%#v", this.DiscoveredApiSettings)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{` + + `DisableLearnFromRedirectTraffic:` + fmt.Sprintf("%#v", this.DisableLearnFromRedirectTraffic) + `}`}, ", ") + return s +} +func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{` + + `EnableLearnFromRedirectTraffic:` + fmt.Sprintf("%#v", this.EnableLearnFromRedirectTraffic) + `}`}, ", ") + return s +} +func valueToGoStringCommonWafTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *ServicePolicyList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ServicePolicyList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServicePolicyList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Policies) > 0 { + for iNdEx := len(m.Policies) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Policies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *EnableChallenge) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *EnableChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.CaptchaChallengeParametersChoice != nil { + { + size := m.CaptchaChallengeParametersChoice.Size() + i -= size + if _, err := m.CaptchaChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.JsChallengeParametersChoice != nil { + { + size := m.JsChallengeParametersChoice.Size() + i -= size + if _, err := m.JsChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.MaliciousUserMitigationChoice != nil { + { + size := m.MaliciousUserMitigationChoice.Size() + i -= size + if _, err := m.MaliciousUserMitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *EnableChallenge_DefaultMitigationSettings) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge_DefaultMitigationSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultMitigationSettings != nil { + { + size, err := m.DefaultMitigationSettings.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *EnableChallenge_MaliciousUserMitigation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge_MaliciousUserMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MaliciousUserMitigation != nil { + { + size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *EnableChallenge_DefaultJsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge_DefaultJsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultJsChallengeParameters != nil { + { + size, err := m.DefaultJsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *EnableChallenge_JsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge_JsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsChallengeParameters != nil { + { + size, err := m.JsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *EnableChallenge_DefaultCaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge_DefaultCaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultCaptchaChallengeParameters != nil { + { + size, err := m.DefaultCaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *EnableChallenge_CaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *EnableChallenge_CaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CaptchaChallengeParameters != nil { + { + size, err := m.CaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.RuleList != nil { + { + size, err := m.RuleList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 + } + if m.ChallengeChoice != nil { + { + size := m.ChallengeChoice.Size() + i -= size + if _, err := m.ChallengeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.MaliciousUserMitigationChoice != nil { + { + size := m.MaliciousUserMitigationChoice.Size() + i -= size + if _, err := m.MaliciousUserMitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.TemporaryBlockingParametersChoice != nil { + { + size := m.TemporaryBlockingParametersChoice.Size() + i -= size + if _, err := m.TemporaryBlockingParametersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.CaptchaChallengeParametersChoice != nil { + { + size := m.CaptchaChallengeParametersChoice.Size() + i -= size + if _, err := m.CaptchaChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.JsChallengeParametersChoice != nil { + { + size := m.JsChallengeParametersChoice.Size() + i -= size + if _, err := m.JsChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *PolicyBasedChallenge_DefaultJsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_DefaultJsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultJsChallengeParameters != nil { + { + size, err := m.DefaultJsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_JsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_JsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsChallengeParameters != nil { + { + size, err := m.JsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultCaptchaChallengeParameters != nil { + { + size, err := m.DefaultCaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_CaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_CaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CaptchaChallengeParameters != nil { + { + size, err := m.CaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultTemporaryBlockingParameters != nil { + { + size, err := m.DefaultTemporaryBlockingParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_TemporaryUserBlocking) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_TemporaryUserBlocking) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.TemporaryUserBlocking != nil { + { + size, err := m.TemporaryUserBlocking.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_DefaultMitigationSettings) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_DefaultMitigationSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultMitigationSettings != nil { + { + size, err := m.DefaultMitigationSettings.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_MaliciousUserMitigation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_MaliciousUserMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MaliciousUserMitigation != nil { + { + size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_NoChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoChallenge != nil { + { + size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_AlwaysEnableJsChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_AlwaysEnableJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AlwaysEnableJsChallenge != nil { + { + size, err := m.AlwaysEnableJsChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a + } + return len(dAtA) - i, nil +} +func (m *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AlwaysEnableCaptchaChallenge != nil { + { + size, err := m.AlwaysEnableCaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} +func (m *ChallengeRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ChallengeRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ChallengeRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ChallengeRuleList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ChallengeRuleList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ChallengeRuleList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Rules) > 0 { + for iNdEx := len(m.Rules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Rules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + return len(dAtA) - i, nil +} + +func (m *IPThreatCategoryListType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *IPThreatCategoryListType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IPThreatCategoryListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.IpThreatCategories) > 0 { + dAtA22 := make([]byte, len(m.IpThreatCategories)*10) + var j21 int + for _, num := range m.IpThreatCategories { + for num >= 1<<7 { + dAtA22[j21] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j21++ + } + dAtA22[j21] = uint8(num) + j21++ + } + i -= j21 + copy(dAtA[i:], dAtA22[:j21]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(j21)) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *HttpHeaderMatcherList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *HttpHeaderMatcherList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *HttpHeaderMatcherList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Headers) > 0 { + for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *SimpleClientSrcRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SimpleClientSrcRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ClientSourceChoice != nil { + { + size := m.ClientSourceChoice.Size() + i -= size + if _, err := m.ClientSourceChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.Actions) > 0 { + dAtA24 := make([]byte, len(m.Actions)*10) + var j23 int + for _, num := range m.Actions { + for num >= 1<<7 { + dAtA24[j23] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j23++ + } + dAtA24[j23] = uint8(num) + j23++ + } + i -= j23 + copy(dAtA[i:], dAtA24[:j23]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(j23)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 + } + if m.ActionChoice != nil { + { + size := m.ActionChoice.Size() + i -= size + if _, err := m.ActionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + if m.ExpirationTimestamp != nil { + { + size, err := m.ExpirationTimestamp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} + +func (m *SimpleClientSrcRule_IpPrefix) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_IpPrefix) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.IpPrefix) + copy(dAtA[i:], m.IpPrefix) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.IpPrefix))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} +func (m *SimpleClientSrcRule_AsNumber) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_AsNumber) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(m.AsNumber)) + i-- + dAtA[i] = 0x28 + return len(dAtA) - i, nil +} +func (m *SimpleClientSrcRule_SkipProcessing) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_SkipProcessing) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SkipProcessing != nil { + { + size, err := m.SkipProcessing.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 + } + return len(dAtA) - i, nil +} +func (m *SimpleClientSrcRule_WafSkipProcessing) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_WafSkipProcessing) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.WafSkipProcessing != nil { + { + size, err := m.WafSkipProcessing.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + return len(dAtA) - i, nil +} +func (m *SimpleClientSrcRule_BotSkipProcessing) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_BotSkipProcessing) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BotSkipProcessing != nil { + { + size, err := m.BotSkipProcessing.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + return len(dAtA) - i, nil +} +func (m *SimpleClientSrcRule_HttpHeader) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_HttpHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpHeader != nil { + { + size, err := m.HttpHeader.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a + } + return len(dAtA) - i, nil +} +func (m *SimpleClientSrcRule_UserIdentifier) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SimpleClientSrcRule_UserIdentifier) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.UserIdentifier) + copy(dAtA[i:], m.UserIdentifier) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.UserIdentifier))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x8a + return len(dAtA) - i, nil +} +func (m *RateLimitConfigType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RateLimitConfigType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RateLimitConfigType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PolicyChoice != nil { + { + size := m.PolicyChoice.Size() + i -= size + if _, err := m.PolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.IpAllowedListChoice != nil { + { + size := m.IpAllowedListChoice.Size() + i -= size + if _, err := m.IpAllowedListChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.RateLimiter != nil { + { + size, err := m.RateLimiter.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *RateLimitConfigType_NoIpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RateLimitConfigType_NoIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoIpAllowedList != nil { + { + size, err := m.NoIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *RateLimitConfigType_IpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RateLimitConfigType_IpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IpAllowedList != nil { + { + size, err := m.IpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *RateLimitConfigType_CustomIpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RateLimitConfigType_CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CustomIpAllowedList != nil { + { + size, err := m.CustomIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *RateLimitConfigType_NoPolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RateLimitConfigType_NoPolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoPolicies != nil { + { + size, err := m.NoPolicies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 + } + return len(dAtA) - i, nil +} +func (m *RateLimitConfigType_Policies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RateLimitConfigType_Policies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Policies != nil { + { + size, err := m.Policies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + return len(dAtA) - i, nil +} +func (m *APIRateLimit) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIRateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ApiEndpointRules) > 0 { + for iNdEx := len(m.ApiEndpointRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ApiEndpointRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + } + if len(m.ServerUrlRules) > 0 { + for iNdEx := len(m.ServerUrlRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ServerUrlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + } + if m.IpAllowedListChoice != nil { + { + size := m.IpAllowedListChoice.Size() + i -= size + if _, err := m.IpAllowedListChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *APIRateLimit_NoIpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIRateLimit_NoIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoIpAllowedList != nil { + { + size, err := m.NoIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *APIRateLimit_IpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIRateLimit_IpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IpAllowedList != nil { + { + size, err := m.IpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *APIRateLimit_CustomIpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIRateLimit_CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CustomIpAllowedList != nil { + { + size, err := m.CustomIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *APIRateLimit_BypassRateLimitingRules) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIRateLimit_BypassRateLimitingRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BypassRateLimitingRules != nil { + { + size, err := m.BypassRateLimitingRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *BypassRateLimitingRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *BypassRateLimitingRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ClientMatcher != nil { + { + size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + if m.RequestMatcher != nil { + { + size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if m.DestinationType != nil { + { + size := m.DestinationType.Size() + i -= size + if _, err := m.DestinationType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.DomainChoice != nil { + { + size := m.DomainChoice.Size() + i -= size + if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *BypassRateLimitingRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *BypassRateLimitingRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.SpecificDomain) + copy(dAtA[i:], m.SpecificDomain) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.SpecificDomain))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *BypassRateLimitingRule_AnyUrl) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule_AnyUrl) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyUrl != nil { + { + size, err := m.AnyUrl.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *BypassRateLimitingRule_BasePath) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule_BasePath) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.BasePath) + copy(dAtA[i:], m.BasePath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePath))) + i-- + dAtA[i] = 0x32 + return len(dAtA) - i, nil +} +func (m *BypassRateLimitingRule_ApiEndpoint) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiEndpoint != nil { + { + size, err := m.ApiEndpoint.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *BypassRateLimitingRule_ApiGroups) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRule_ApiGroups) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiGroups != nil { + { + size, err := m.ApiGroups.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *APIGroups) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIGroups) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroups) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ApiGroups) > 0 { + for iNdEx := len(m.ApiGroups) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ApiGroups[iNdEx]) + copy(dAtA[i:], m.ApiGroups[iNdEx]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiGroups[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + return len(dAtA) - i, nil +} + +func (m *ApiEndpointDetails) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ApiEndpointDetails) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Methods) > 0 { + dAtA48 := make([]byte, len(m.Methods)*10) + var j47 int + for _, num := range m.Methods { + for num >= 1<<7 { + dAtA48[j47] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j47++ + } + dAtA48[j47] = uint8(num) + j47++ + } + i -= j47 + copy(dAtA[i:], dAtA48[:j47]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(j47)) + i-- + dAtA[i] = 0x12 + } + if len(m.Path) > 0 { + i -= len(m.Path) + copy(dAtA[i:], m.Path) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Path))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *BypassRateLimitingRules) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *BypassRateLimitingRules) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BypassRateLimitingRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.BypassRateLimitingRules) > 0 { + for iNdEx := len(m.BypassRateLimitingRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BypassRateLimitingRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + } + return len(dAtA) - i, nil +} + +func (m *ApiEndpointRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ApiEndpointRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ClientMatcher != nil { + { + size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a + } + if m.RequestMatcher != nil { + { + size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + if m.RateLimiterChoice != nil { + { + size := m.RateLimiterChoice.Size() + i -= size + if _, err := m.RateLimiterChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ApiEndpointMethod != nil { + { + size, err := m.ApiEndpointMethod.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if len(m.ApiEndpointPath) > 0 { + i -= len(m.ApiEndpointPath) + copy(dAtA[i:], m.ApiEndpointPath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiEndpointPath))) + i-- + dAtA[i] = 0x2a + } + if len(m.BasePath) > 0 { + i -= len(m.BasePath) + copy(dAtA[i:], m.BasePath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePath))) + i-- + dAtA[i] = 0x22 + } + if m.DomainChoice != nil { + { + size := m.DomainChoice.Size() + i -= size + if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ApiEndpointRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ApiEndpointRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.SpecificDomain) + copy(dAtA[i:], m.SpecificDomain) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.SpecificDomain))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *ApiEndpointRule_InlineRateLimiter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointRule_InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.InlineRateLimiter != nil { + { + size, err := m.InlineRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *ApiEndpointRule_RefRateLimiter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiEndpointRule_RefRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RefRateLimiter != nil { + { + size, err := m.RefRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} +func (m *InlineRateLimiter) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *InlineRateLimiter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.CountByChoice != nil { + { + size := m.CountByChoice.Size() + i -= size + if _, err := m.CountByChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.Unit != 0 { + i = encodeVarintCommonWafTypes(dAtA, i, uint64(m.Unit)) + i-- + dAtA[i] = 0x10 + } + if m.Threshold != 0 { + i = encodeVarintCommonWafTypes(dAtA, i, uint64(m.Threshold)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *InlineRateLimiter_UseHttpLbUserId) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *InlineRateLimiter_UseHttpLbUserId) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UseHttpLbUserId != nil { + { + size, err := m.UseHttpLbUserId.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *InlineRateLimiter_RefUserId) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *InlineRateLimiter_RefUserId) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RefUserId != nil { + { + size, err := m.RefUserId.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *ServerUrlRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ServerUrlRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServerUrlRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.RequestMatcher != nil { + { + size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a + } + if len(m.ApiGroup) > 0 { + i -= len(m.ApiGroup) + copy(dAtA[i:], m.ApiGroup) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiGroup))) + i-- + dAtA[i] = 0x52 + } + if m.ClientMatcher != nil { + { + size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if m.RateLimiterChoice != nil { + { + size := m.RateLimiterChoice.Size() + i -= size + if _, err := m.RateLimiterChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.BasePath) > 0 { + i -= len(m.BasePath) + copy(dAtA[i:], m.BasePath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePath))) + i-- + dAtA[i] = 0x22 + } + if m.DomainChoice != nil { + { + size := m.DomainChoice.Size() + i -= size + if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ServerUrlRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServerUrlRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ServerUrlRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServerUrlRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.SpecificDomain) + copy(dAtA[i:], m.SpecificDomain) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.SpecificDomain))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *ServerUrlRule_InlineRateLimiter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServerUrlRule_InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.InlineRateLimiter != nil { + { + size, err := m.InlineRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *ServerUrlRule_RefRateLimiter) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServerUrlRule_RefRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RefRateLimiter != nil { + { + size, err := m.RefRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *CustomIpAllowedList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CustomIpAllowedList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.RateLimiterAllowedPrefixes) > 0 { + for iNdEx := len(m.RateLimiterAllowedPrefixes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RateLimiterAllowedPrefixes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 + } + } + return len(dAtA) - i, nil +} + +func (m *APISpecificationSettings) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APISpecificationSettings) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APISpecificationSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ValidationTargetChoice != nil { + { + size := m.ValidationTargetChoice.Size() + i -= size + if _, err := m.ValidationTargetChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ApiDefinition != nil { + { + size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *APISpecificationSettings_ValidationDisabled) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APISpecificationSettings_ValidationDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ValidationDisabled != nil { + { + size, err := m.ValidationDisabled.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *APISpecificationSettings_ValidationAllSpecEndpoints) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APISpecificationSettings_ValidationAllSpecEndpoints) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ValidationAllSpecEndpoints != nil { + { + size, err := m.ValidationAllSpecEndpoints.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *APISpecificationSettings_ValidationCustomList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APISpecificationSettings_ValidationCustomList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ValidationCustomList != nil { + { + size, err := m.ValidationCustomList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationAllSpecEndpointsSettings) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Settings != nil { + { + size, err := m.Settings.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.OversizedBodyChoice != nil { + { + size := m.OversizedBodyChoice.Size() + i -= size + if _, err := m.OversizedBodyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.FallThroughMode != nil { + { + size, err := m.FallThroughMode.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.ValidationMode != nil { + { + size, err := m.ValidationMode.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OversizedBodySkipValidation != nil { + { + size, err := m.OversizedBodySkipValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OversizedBodyFailValidation != nil { + { + size, err := m.OversizedBodyFailValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationMode) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiValidationMode) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResponseValidationModeChoice != nil { + { + size := m.ResponseValidationModeChoice.Size() + i -= size + if _, err := m.ResponseValidationModeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ValidationModeChoice != nil { + { + size := m.ValidationModeChoice.Size() + i -= size + if _, err := m.ValidationModeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *OpenApiValidationMode_ValidationModeActive) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationMode_ValidationModeActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ValidationModeActive != nil { + { + size, err := m.ValidationModeActive.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationMode_SkipValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationMode_SkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SkipValidation != nil { + { + size, err := m.SkipValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationMode_SkipResponseValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationMode_SkipResponseValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SkipResponseValidation != nil { + { + size, err := m.SkipResponseValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationMode_ResponseValidationModeActive) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationMode_ResponseValidationModeActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ResponseValidationModeActive != nil { + { + size, err := m.ResponseValidationModeActive.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationModeActive) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiValidationModeActive) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationModeActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.RequestValidationProperties) > 0 { + dAtA76 := make([]byte, len(m.RequestValidationProperties)*10) + var j75 int + for _, num := range m.RequestValidationProperties { + for num >= 1<<7 { + dAtA76[j75] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j75++ + } + dAtA76[j75] = uint8(num) + j75++ + } + i -= j75 + copy(dAtA[i:], dAtA76[:j75]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(j75)) + i-- + dAtA[i] = 0x22 + } + if m.ValidationEnforcementType != nil { + { + size := m.ValidationEnforcementType.Size() + i -= size + if _, err := m.ValidationEnforcementType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *OpenApiValidationModeActive_EnforcementReport) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationModeActive_EnforcementReport) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnforcementReport != nil { + { + size, err := m.EnforcementReport.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationModeActive_EnforcementBlock) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationModeActive_EnforcementBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnforcementBlock != nil { + { + size, err := m.EnforcementBlock.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationModeActiveResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiValidationModeActiveResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationModeActiveResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResponseValidationProperties) > 0 { + dAtA80 := make([]byte, len(m.ResponseValidationProperties)*10) + var j79 int + for _, num := range m.ResponseValidationProperties { + for num >= 1<<7 { + dAtA80[j79] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j79++ + } + dAtA80[j79] = uint8(num) + j79++ + } + i -= j79 + copy(dAtA[i:], dAtA80[:j79]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(j79)) + i-- + dAtA[i] = 0x22 + } + if m.ValidationEnforcementType != nil { + { + size := m.ValidationEnforcementType.Size() + i -= size + if _, err := m.ValidationEnforcementType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *OpenApiValidationModeActiveResponse_EnforcementReport) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationModeActiveResponse_EnforcementReport) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnforcementReport != nil { + { + size, err := m.EnforcementReport.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationModeActiveResponse_EnforcementBlock) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationModeActiveResponse_EnforcementBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnforcementBlock != nil { + { + size, err := m.EnforcementBlock.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *OpenApiFallThroughMode) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiFallThroughMode) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiFallThroughMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FallThroughModeChoice != nil { + { + size := m.FallThroughModeChoice.Size() + i -= size + if _, err := m.FallThroughModeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *OpenApiFallThroughMode_FallThroughModeAllow) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiFallThroughMode_FallThroughModeAllow) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.FallThroughModeAllow != nil { + { + size, err := m.FallThroughModeAllow.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *OpenApiFallThroughMode_FallThroughModeCustom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiFallThroughMode_FallThroughModeCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.FallThroughModeCustom != nil { + { + size, err := m.FallThroughModeCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *CustomFallThroughMode) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CustomFallThroughMode) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CustomFallThroughMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.OpenApiValidationRules) > 0 { + for iNdEx := len(m.OpenApiValidationRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.OpenApiValidationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *FallThroughRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FallThroughRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ConditionTypeChoice != nil { + { + size := m.ConditionTypeChoice.Size() + i -= size + if _, err := m.ConditionTypeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ActionChoice != nil { + { + size := m.ActionChoice.Size() + i -= size + if _, err := m.ActionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *FallThroughRule_ActionSkip) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule_ActionSkip) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActionSkip != nil { + { + size, err := m.ActionSkip.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *FallThroughRule_ActionReport) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule_ActionReport) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActionReport != nil { + { + size, err := m.ActionReport.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *FallThroughRule_ActionBlock) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule_ActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActionBlock != nil { + { + size, err := m.ActionBlock.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *FallThroughRule_BasePath) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule_BasePath) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.BasePath) + copy(dAtA[i:], m.BasePath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePath))) + i-- + dAtA[i] = 0x42 + return len(dAtA) - i, nil +} +func (m *FallThroughRule_ApiGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule_ApiGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.ApiGroup) + copy(dAtA[i:], m.ApiGroup) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiGroup))) + i-- + dAtA[i] = 0x4a + return len(dAtA) - i, nil +} +func (m *FallThroughRule_ApiEndpoint) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *FallThroughRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiEndpoint != nil { + { + size, err := m.ApiEndpoint.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + return len(dAtA) - i, nil +} +func (m *ValidateApiBySpecRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ValidateApiBySpecRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidateApiBySpecRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Settings != nil { + { + size, err := m.Settings.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.OversizedBodyChoice != nil { + { + size := m.OversizedBodyChoice.Size() + i -= size + if _, err := m.OversizedBodyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.FallThroughMode != nil { + { + size, err := m.FallThroughMode.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.OpenApiValidationRules) > 0 { + for iNdEx := len(m.OpenApiValidationRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.OpenApiValidationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ValidateApiBySpecRule_OversizedBodySkipValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidateApiBySpecRule_OversizedBodySkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OversizedBodySkipValidation != nil { + { + size, err := m.OversizedBodySkipValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *ValidateApiBySpecRule_OversizedBodyFailValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidateApiBySpecRule_OversizedBodyFailValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OversizedBodyFailValidation != nil { + { + size, err := m.OversizedBodyFailValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiValidationRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ConditionTypeChoice != nil { + { + size := m.ConditionTypeChoice.Size() + i -= size + if _, err := m.ConditionTypeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.DomainChoice != nil { + { + size := m.DomainChoice.Size() + i -= size + if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ValidationMode != nil { + { + size, err := m.ValidationMode.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *OpenApiValidationRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.SpecificDomain) + copy(dAtA[i:], m.SpecificDomain) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.SpecificDomain))) + i-- + dAtA[i] = 0x42 + return len(dAtA) - i, nil +} +func (m *OpenApiValidationRule_BasePath) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationRule_BasePath) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.BasePath) + copy(dAtA[i:], m.BasePath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePath))) + i-- + dAtA[i] = 0x5a + return len(dAtA) - i, nil +} +func (m *OpenApiValidationRule_ApiGroup) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationRule_ApiGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.ApiGroup) + copy(dAtA[i:], m.ApiGroup) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiGroup))) + i-- + dAtA[i] = 0x62 + return len(dAtA) - i, nil +} +func (m *OpenApiValidationRule_ApiEndpoint) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiEndpoint != nil { + { + size, err := m.ApiEndpoint.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationCommonSettings) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *OpenApiValidationCommonSettings) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationCommonSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PropertyValidationSettingsChoice != nil { + { + size := m.PropertyValidationSettingsChoice.Size() + i -= size + if _, err := m.PropertyValidationSettingsChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.OversizedBodyChoice != nil { + { + size := m.OversizedBodyChoice.Size() + i -= size + if _, err := m.OversizedBodyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *OpenApiValidationCommonSettings_OversizedBodySkipValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationCommonSettings_OversizedBodySkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OversizedBodySkipValidation != nil { + { + size, err := m.OversizedBodySkipValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationCommonSettings_OversizedBodyFailValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationCommonSettings_OversizedBodyFailValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OversizedBodyFailValidation != nil { + { + size, err := m.OversizedBodyFailValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PropertyValidationSettingsDefault != nil { + { + size, err := m.PropertyValidationSettingsDefault.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PropertyValidationSettingsCustom != nil { + { + size, err := m.PropertyValidationSettingsCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *ValidationPropertySetting) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ValidationPropertySetting) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationPropertySetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Headers != nil { + { + size, err := m.Headers.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.QueryParameters != nil { + { + size, err := m.QueryParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ValidationSettingForQueryParameters) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ValidationSettingForQueryParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationSettingForQueryParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AdditionalParametersChoice != nil { + { + size := m.AdditionalParametersChoice.Size() + i -= size + if _, err := m.AdditionalParametersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ValidationSettingForQueryParameters_AllowAdditionalParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationSettingForQueryParameters_AllowAdditionalParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AllowAdditionalParameters != nil { + { + size, err := m.AllowAdditionalParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ValidationSettingForQueryParameters_DisallowAdditionalParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationSettingForQueryParameters_DisallowAdditionalParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisallowAdditionalParameters != nil { + { + size, err := m.DisallowAdditionalParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *ValidationSettingForHeaders) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ValidationSettingForHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationSettingForHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AdditionalHeadersChoice != nil { + { + size := m.AdditionalHeadersChoice.Size() + i -= size + if _, err := m.AdditionalHeadersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ValidationSettingForHeaders_AllowAdditionalHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationSettingForHeaders_AllowAdditionalHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AllowAdditionalHeaders != nil { + { + size, err := m.AllowAdditionalHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ValidationSettingForHeaders_DisallowAdditionalHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ValidationSettingForHeaders_DisallowAdditionalHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisallowAdditionalHeaders != nil { + { + size, err := m.DisallowAdditionalHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *ApiDefinitionList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ApiDefinitionList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiDefinitionList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ApiDefinitions) > 0 { + for iNdEx := len(m.ApiDefinitions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ApiDefinitions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *APIProtectionRules) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIProtectionRules) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIProtectionRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ApiGroupsRules) > 0 { + for iNdEx := len(m.ApiGroupsRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ApiGroupsRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.ApiEndpointRules) > 0 { + for iNdEx := len(m.ApiEndpointRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ApiEndpointRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *APIEndpointProtectionRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIEndpointProtectionRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIEndpointProtectionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.DomainChoice != nil { + { + size := m.DomainChoice.Size() + i -= size + if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ClientMatcher != nil { + { + size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if m.RequestMatcher != nil { + { + size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.ApiEndpointMethod != nil { + { + size, err := m.ApiEndpointMethod.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.ApiEndpointPath) > 0 { + i -= len(m.ApiEndpointPath) + copy(dAtA[i:], m.ApiEndpointPath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiEndpointPath))) + i-- + dAtA[i] = 0x22 + } + if m.Action != nil { + { + size, err := m.Action.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *APIEndpointProtectionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIEndpointProtectionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} +func (m *APIEndpointProtectionRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIEndpointProtectionRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.SpecificDomain) + copy(dAtA[i:], m.SpecificDomain) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.SpecificDomain))) + i-- + dAtA[i] = 0x52 + return len(dAtA) - i, nil +} +func (m *APIGroupProtectionRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIGroupProtectionRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupProtectionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.BasePath) > 0 { + i -= len(m.BasePath) + copy(dAtA[i:], m.BasePath) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePath))) + i-- + dAtA[i] = 0x52 + } + if m.DomainChoice != nil { + { + size := m.DomainChoice.Size() + i -= size + if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ClientMatcher != nil { + { + size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.RequestMatcher != nil { + { + size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.ApiGroup) > 0 { + i -= len(m.ApiGroup) + copy(dAtA[i:], m.ApiGroup) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ApiGroup))) + i-- + dAtA[i] = 0x22 + } + if m.Action != nil { + { + size, err := m.Action.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *APIGroupProtectionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupProtectionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *APIGroupProtectionRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIGroupProtectionRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.SpecificDomain) + copy(dAtA[i:], m.SpecificDomain) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.SpecificDomain))) + i-- + dAtA[i] = 0x4a + return len(dAtA) - i, nil +} +func (m *APIProtectionRuleAction) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *APIProtectionRuleAction) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIProtectionRuleAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Action != nil { + { + size := m.Action.Size() + i -= size + if _, err := m.Action.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *APIProtectionRuleAction_Allow) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIProtectionRuleAction_Allow) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Allow != nil { + { + size, err := m.Allow.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *APIProtectionRuleAction_Deny) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *APIProtectionRuleAction_Deny) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Deny != nil { + { + size, err := m.Deny.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *JWTValidation) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *JWTValidation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *JWTValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MandatoryClaims != nil { + { + size, err := m.MandatoryClaims.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if m.JwksConfiguration != nil { + { + size := m.JwksConfiguration.Size() + i -= size + if _, err := m.JwksConfiguration.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ReservedClaims != nil { + { + size, err := m.ReservedClaims.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if m.Action != nil { + { + size, err := m.Action.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.TokenLocation != nil { + { + size, err := m.TokenLocation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Target != nil { + { + size, err := m.Target.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *JWTValidation_AuthServerUri) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *JWTValidation_AuthServerUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.AuthServerUri) + copy(dAtA[i:], m.AuthServerUri) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.AuthServerUri))) + i-- + dAtA[i] = 0x2a + return len(dAtA) - i, nil +} +func (m *JWTValidation_Jwks) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *JWTValidation_Jwks) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Jwks) + copy(dAtA[i:], m.Jwks) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Jwks))) + i-- + dAtA[i] = 0x32 + return len(dAtA) - i, nil +} +func (m *JWTValidation_JwksConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *JWTValidation_JwksConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JwksConfig != nil { + { + size, err := m.JwksConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *MandatoryClaims) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MandatoryClaims) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MandatoryClaims) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ClaimNames) > 0 { + for iNdEx := len(m.ClaimNames) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ClaimNames[iNdEx]) + copy(dAtA[i:], m.ClaimNames[iNdEx]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.ClaimNames[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *Target) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Target) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Target) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Target != nil { + { + size := m.Target.Size() + i -= size + if _, err := m.Target.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *Target_AllEndpoint) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Target_AllEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AllEndpoint != nil { + { + size, err := m.AllEndpoint.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *Target_ApiGroups) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Target_ApiGroups) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiGroups != nil { + { + size, err := m.ApiGroups.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *Target_BasePaths) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Target_BasePaths) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BasePaths != nil { + { + size, err := m.BasePaths.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *JWKS) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *JWKS) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *JWKS) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Cleartext) > 0 { + i -= len(m.Cleartext) + copy(dAtA[i:], m.Cleartext) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Cleartext))) + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} + +func (m *TokenLocation) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *TokenLocation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TokenLocation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TokenLocation != nil { + { + size := m.TokenLocation.Size() + i -= size + if _, err := m.TokenLocation.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *TokenLocation_BearerToken) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TokenLocation_BearerToken) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BearerToken != nil { + { + size, err := m.BearerToken.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *TokenLocation_Cookie) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TokenLocation_Cookie) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Cookie) + copy(dAtA[i:], m.Cookie) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Cookie))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *TokenLocation_Header) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TokenLocation_Header) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Header) + copy(dAtA[i:], m.Header) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Header))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} +func (m *TokenLocation_QueryParam) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TokenLocation_QueryParam) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.QueryParam) + copy(dAtA[i:], m.QueryParam) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.QueryParam))) + i-- + dAtA[i] = 0x2a + return len(dAtA) - i, nil +} +func (m *ReservedClaims) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReservedClaims) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ValidatePeriod != nil { + { + size := m.ValidatePeriod.Size() + i -= size + if _, err := m.ValidatePeriod.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.AudienceValidation != nil { + { + size := m.AudienceValidation.Size() + i -= size + if _, err := m.AudienceValidation.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.IssuerValidation != nil { + { + size := m.IssuerValidation.Size() + i -= size + if _, err := m.IssuerValidation.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ReservedClaims_IssuerDisable) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims_IssuerDisable) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IssuerDisable != nil { + { + size, err := m.IssuerDisable.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ReservedClaims_Issuer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims_Issuer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.Issuer) + copy(dAtA[i:], m.Issuer) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Issuer))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil +} +func (m *ReservedClaims_AudienceDisable) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims_AudienceDisable) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AudienceDisable != nil { + { + size, err := m.AudienceDisable.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *ReservedClaims_Audience) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims_Audience) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Audience != nil { + { + size, err := m.Audience.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *ReservedClaims_ValidatePeriodDisable) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims_ValidatePeriodDisable) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ValidatePeriodDisable != nil { + { + size, err := m.ValidatePeriodDisable.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + return len(dAtA) - i, nil +} +func (m *ReservedClaims_ValidatePeriodEnable) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReservedClaims_ValidatePeriodEnable) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ValidatePeriodEnable != nil { + { + size, err := m.ValidatePeriodEnable.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + return len(dAtA) - i, nil +} +func (m *Audiences) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Audiences) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Audiences) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Audiences) > 0 { + for iNdEx := len(m.Audiences) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Audiences[iNdEx]) + copy(dAtA[i:], m.Audiences[iNdEx]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.Audiences[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *BasePathsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *BasePathsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BasePathsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.BasePaths) > 0 { + for iNdEx := len(m.BasePaths) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.BasePaths[iNdEx]) + copy(dAtA[i:], m.BasePaths[iNdEx]) + i = encodeVarintCommonWafTypes(dAtA, i, uint64(len(m.BasePaths[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ApiDiscoverySetting) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ApiDiscoverySetting) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiDiscoverySetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.DiscoveredApiSettings != nil { + { + size, err := m.DiscoveredApiSettings.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.SensitiveDataDetectionRules != nil { + { + size, err := m.SensitiveDataDetectionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if m.LearnFromRedirectTraffic != nil { + { + size := m.LearnFromRedirectTraffic.Size() + i -= size + if _, err := m.LearnFromRedirectTraffic.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableLearnFromRedirectTraffic != nil { + { + size, err := m.DisableLearnFromRedirectTraffic.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableLearnFromRedirectTraffic != nil { + { + size, err := m.EnableLearnFromRedirectTraffic.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCommonWafTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func encodeVarintCommonWafTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovCommonWafTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ServicePolicyList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Policies) > 0 { + for _, e := range m.Policies { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *EnableChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MaliciousUserMitigationChoice != nil { + n += m.MaliciousUserMitigationChoice.Size() + } + if m.JsChallengeParametersChoice != nil { + n += m.JsChallengeParametersChoice.Size() + } + if m.CaptchaChallengeParametersChoice != nil { + n += m.CaptchaChallengeParametersChoice.Size() + } + return n +} + +func (m *EnableChallenge_DefaultMitigationSettings) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultMitigationSettings != nil { + l = m.DefaultMitigationSettings.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *EnableChallenge_MaliciousUserMitigation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MaliciousUserMitigation != nil { + l = m.MaliciousUserMitigation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *EnableChallenge_DefaultJsChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultJsChallengeParameters != nil { + l = m.DefaultJsChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *EnableChallenge_JsChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JsChallengeParameters != nil { + l = m.JsChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *EnableChallenge_DefaultCaptchaChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultCaptchaChallengeParameters != nil { + l = m.DefaultCaptchaChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *EnableChallenge_CaptchaChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CaptchaChallengeParameters != nil { + l = m.CaptchaChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JsChallengeParametersChoice != nil { + n += m.JsChallengeParametersChoice.Size() + } + if m.CaptchaChallengeParametersChoice != nil { + n += m.CaptchaChallengeParametersChoice.Size() + } + if m.TemporaryBlockingParametersChoice != nil { + n += m.TemporaryBlockingParametersChoice.Size() + } + if m.MaliciousUserMitigationChoice != nil { + n += m.MaliciousUserMitigationChoice.Size() + } + if m.ChallengeChoice != nil { + n += m.ChallengeChoice.Size() + } + if m.RuleList != nil { + l = m.RuleList.Size() + n += 2 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *PolicyBasedChallenge_DefaultJsChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultJsChallengeParameters != nil { + l = m.DefaultJsChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_JsChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JsChallengeParameters != nil { + l = m.JsChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultCaptchaChallengeParameters != nil { + l = m.DefaultCaptchaChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_CaptchaChallengeParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CaptchaChallengeParameters != nil { + l = m.CaptchaChallengeParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultTemporaryBlockingParameters != nil { + l = m.DefaultTemporaryBlockingParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_TemporaryUserBlocking) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TemporaryUserBlocking != nil { + l = m.TemporaryUserBlocking.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_DefaultMitigationSettings) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultMitigationSettings != nil { + l = m.DefaultMitigationSettings.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_MaliciousUserMitigation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MaliciousUserMitigation != nil { + l = m.MaliciousUserMitigation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_NoChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoChallenge != nil { + l = m.NoChallenge.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_AlwaysEnableJsChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AlwaysEnableJsChallenge != nil { + l = m.AlwaysEnableJsChallenge.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AlwaysEnableCaptchaChallenge != nil { + l = m.AlwaysEnableCaptchaChallenge.Size() + n += 2 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ChallengeRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *ChallengeRuleList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *IPThreatCategoryListType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.IpThreatCategories) > 0 { + l = 0 + for _, e := range m.IpThreatCategories { + l += sovCommonWafTypes(uint64(e)) + } + n += 1 + sovCommonWafTypes(uint64(l)) + l + } + return n +} + +func (m *HttpHeaderMatcherList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Headers) > 0 { + for _, e := range m.Headers { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *SimpleClientSrcRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ClientSourceChoice != nil { + n += m.ClientSourceChoice.Size() + } + if m.ExpirationTimestamp != nil { + l = m.ExpirationTimestamp.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ActionChoice != nil { + n += m.ActionChoice.Size() + } + if len(m.Actions) > 0 { + l = 0 + for _, e := range m.Actions { + l += sovCommonWafTypes(uint64(e)) + } + n += 2 + sovCommonWafTypes(uint64(l)) + l + } + return n +} + +func (m *SimpleClientSrcRule_IpPrefix) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.IpPrefix) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *SimpleClientSrcRule_AsNumber) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 1 + sovCommonWafTypes(uint64(m.AsNumber)) + return n +} +func (m *SimpleClientSrcRule_SkipProcessing) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SkipProcessing != nil { + l = m.SkipProcessing.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *SimpleClientSrcRule_WafSkipProcessing) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.WafSkipProcessing != nil { + l = m.WafSkipProcessing.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *SimpleClientSrcRule_BotSkipProcessing) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BotSkipProcessing != nil { + l = m.BotSkipProcessing.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *SimpleClientSrcRule_HttpHeader) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpHeader != nil { + l = m.HttpHeader.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *SimpleClientSrcRule_UserIdentifier) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.UserIdentifier) + n += 2 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *RateLimitConfigType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RateLimiter != nil { + l = m.RateLimiter.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.IpAllowedListChoice != nil { + n += m.IpAllowedListChoice.Size() + } + if m.PolicyChoice != nil { + n += m.PolicyChoice.Size() + } + return n +} + +func (m *RateLimitConfigType_NoIpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoIpAllowedList != nil { + l = m.NoIpAllowedList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *RateLimitConfigType_IpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpAllowedList != nil { + l = m.IpAllowedList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *RateLimitConfigType_CustomIpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CustomIpAllowedList != nil { + l = m.CustomIpAllowedList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *RateLimitConfigType_NoPolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoPolicies != nil { + l = m.NoPolicies.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *RateLimitConfigType_Policies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Policies != nil { + l = m.Policies.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIRateLimit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpAllowedListChoice != nil { + n += m.IpAllowedListChoice.Size() + } + if len(m.ServerUrlRules) > 0 { + for _, e := range m.ServerUrlRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + if len(m.ApiEndpointRules) > 0 { + for _, e := range m.ApiEndpointRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *APIRateLimit_NoIpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoIpAllowedList != nil { + l = m.NoIpAllowedList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIRateLimit_IpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IpAllowedList != nil { + l = m.IpAllowedList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIRateLimit_CustomIpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CustomIpAllowedList != nil { + l = m.CustomIpAllowedList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIRateLimit_BypassRateLimitingRules) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BypassRateLimitingRules != nil { + l = m.BypassRateLimitingRules.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *BypassRateLimitingRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DomainChoice != nil { + n += m.DomainChoice.Size() + } + if m.DestinationType != nil { + n += m.DestinationType.Size() + } + if m.RequestMatcher != nil { + l = m.RequestMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ClientMatcher != nil { + l = m.ClientMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *BypassRateLimitingRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *BypassRateLimitingRule_SpecificDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SpecificDomain) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *BypassRateLimitingRule_AnyUrl) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyUrl != nil { + l = m.AnyUrl.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *BypassRateLimitingRule_BasePath) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.BasePath) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *BypassRateLimitingRule_ApiEndpoint) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiEndpoint != nil { + l = m.ApiEndpoint.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *BypassRateLimitingRule_ApiGroups) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiGroups != nil { + l = m.ApiGroups.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIGroups) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ApiGroups) > 0 { + for _, s := range m.ApiGroups { + l = len(s) + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *ApiEndpointDetails) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Path) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if len(m.Methods) > 0 { + l = 0 + for _, e := range m.Methods { + l += sovCommonWafTypes(uint64(e)) + } + n += 1 + sovCommonWafTypes(uint64(l)) + l + } + return n +} + +func (m *BypassRateLimitingRules) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.BypassRateLimitingRules) > 0 { + for _, e := range m.BypassRateLimitingRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *ApiEndpointRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DomainChoice != nil { + n += m.DomainChoice.Size() + } + l = len(m.BasePath) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + l = len(m.ApiEndpointPath) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ApiEndpointMethod != nil { + l = m.ApiEndpointMethod.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.RateLimiterChoice != nil { + n += m.RateLimiterChoice.Size() + } + if m.RequestMatcher != nil { + l = m.RequestMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ClientMatcher != nil { + l = m.ClientMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *ApiEndpointRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ApiEndpointRule_SpecificDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SpecificDomain) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *ApiEndpointRule_InlineRateLimiter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.InlineRateLimiter != nil { + l = m.InlineRateLimiter.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ApiEndpointRule_RefRateLimiter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RefRateLimiter != nil { + l = m.RefRateLimiter.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *InlineRateLimiter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Threshold != 0 { + n += 1 + sovCommonWafTypes(uint64(m.Threshold)) + } + if m.Unit != 0 { + n += 1 + sovCommonWafTypes(uint64(m.Unit)) + } + if m.CountByChoice != nil { + n += m.CountByChoice.Size() + } + return n +} + +func (m *InlineRateLimiter_UseHttpLbUserId) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UseHttpLbUserId != nil { + l = m.UseHttpLbUserId.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *InlineRateLimiter_RefUserId) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RefUserId != nil { + l = m.RefUserId.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ServerUrlRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DomainChoice != nil { + n += m.DomainChoice.Size() + } + l = len(m.BasePath) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.RateLimiterChoice != nil { + n += m.RateLimiterChoice.Size() + } + if m.ClientMatcher != nil { + l = m.ClientMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + l = len(m.ApiGroup) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.RequestMatcher != nil { + l = m.RequestMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *ServerUrlRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ServerUrlRule_SpecificDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SpecificDomain) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *ServerUrlRule_InlineRateLimiter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.InlineRateLimiter != nil { + l = m.InlineRateLimiter.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ServerUrlRule_RefRateLimiter) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RefRateLimiter != nil { + l = m.RefRateLimiter.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *CustomIpAllowedList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.RateLimiterAllowedPrefixes) > 0 { + for _, e := range m.RateLimiterAllowedPrefixes { + l = e.Size() + n += 2 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *APISpecificationSettings) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiDefinition != nil { + l = m.ApiDefinition.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ValidationTargetChoice != nil { + n += m.ValidationTargetChoice.Size() + } + return n +} + +func (m *APISpecificationSettings_ValidationDisabled) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationDisabled != nil { + l = m.ValidationDisabled.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APISpecificationSettings_ValidationAllSpecEndpoints) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationAllSpecEndpoints != nil { + l = m.ValidationAllSpecEndpoints.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APISpecificationSettings_ValidationCustomList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationCustomList != nil { + l = m.ValidationCustomList.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationAllSpecEndpointsSettings) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationMode != nil { + l = m.ValidationMode.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.FallThroughMode != nil { + l = m.FallThroughMode.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.OversizedBodyChoice != nil { + n += m.OversizedBodyChoice.Size() + } + if m.Settings != nil { + l = m.Settings.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodySkipValidation != nil { + l = m.OversizedBodySkipValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodyFailValidation != nil { + l = m.OversizedBodyFailValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationMode) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationModeChoice != nil { + n += m.ValidationModeChoice.Size() + } + if m.ResponseValidationModeChoice != nil { + n += m.ResponseValidationModeChoice.Size() + } + return n +} + +func (m *OpenApiValidationMode_ValidationModeActive) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationModeActive != nil { + l = m.ValidationModeActive.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationMode_SkipValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SkipValidation != nil { + l = m.SkipValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationMode_SkipResponseValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SkipResponseValidation != nil { + l = m.SkipResponseValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationMode_ResponseValidationModeActive) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ResponseValidationModeActive != nil { + l = m.ResponseValidationModeActive.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationModeActive) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationEnforcementType != nil { + n += m.ValidationEnforcementType.Size() + } + if len(m.RequestValidationProperties) > 0 { + l = 0 + for _, e := range m.RequestValidationProperties { + l += sovCommonWafTypes(uint64(e)) + } + n += 1 + sovCommonWafTypes(uint64(l)) + l + } + return n +} + +func (m *OpenApiValidationModeActive_EnforcementReport) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnforcementReport != nil { + l = m.EnforcementReport.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationModeActive_EnforcementBlock) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnforcementBlock != nil { + l = m.EnforcementBlock.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationModeActiveResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidationEnforcementType != nil { + n += m.ValidationEnforcementType.Size() + } + if len(m.ResponseValidationProperties) > 0 { + l = 0 + for _, e := range m.ResponseValidationProperties { + l += sovCommonWafTypes(uint64(e)) + } + n += 1 + sovCommonWafTypes(uint64(l)) + l + } + return n +} + +func (m *OpenApiValidationModeActiveResponse_EnforcementReport) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnforcementReport != nil { + l = m.EnforcementReport.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationModeActiveResponse_EnforcementBlock) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnforcementBlock != nil { + l = m.EnforcementBlock.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiFallThroughMode) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.FallThroughModeChoice != nil { + n += m.FallThroughModeChoice.Size() + } + return n +} + +func (m *OpenApiFallThroughMode_FallThroughModeAllow) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.FallThroughModeAllow != nil { + l = m.FallThroughModeAllow.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiFallThroughMode_FallThroughModeCustom) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.FallThroughModeCustom != nil { + l = m.FallThroughModeCustom.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *CustomFallThroughMode) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.OpenApiValidationRules) > 0 { + for _, e := range m.OpenApiValidationRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *FallThroughRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ActionChoice != nil { + n += m.ActionChoice.Size() + } + if m.ConditionTypeChoice != nil { + n += m.ConditionTypeChoice.Size() + } + return n +} + +func (m *FallThroughRule_ActionSkip) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActionSkip != nil { + l = m.ActionSkip.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *FallThroughRule_ActionReport) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActionReport != nil { + l = m.ActionReport.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *FallThroughRule_ActionBlock) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActionBlock != nil { + l = m.ActionBlock.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *FallThroughRule_BasePath) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.BasePath) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *FallThroughRule_ApiGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ApiGroup) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *FallThroughRule_ApiEndpoint) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiEndpoint != nil { + l = m.ApiEndpoint.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ValidateApiBySpecRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.OpenApiValidationRules) > 0 { + for _, e := range m.OpenApiValidationRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + if m.FallThroughMode != nil { + l = m.FallThroughMode.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.OversizedBodyChoice != nil { + n += m.OversizedBodyChoice.Size() + } + if m.Settings != nil { + l = m.Settings.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *ValidateApiBySpecRule_OversizedBodySkipValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodySkipValidation != nil { + l = m.OversizedBodySkipValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ValidateApiBySpecRule_OversizedBodyFailValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodyFailValidation != nil { + l = m.OversizedBodyFailValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ValidationMode != nil { + l = m.ValidationMode.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.DomainChoice != nil { + n += m.DomainChoice.Size() + } + if m.ConditionTypeChoice != nil { + n += m.ConditionTypeChoice.Size() + } + return n +} + +func (m *OpenApiValidationRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationRule_SpecificDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SpecificDomain) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *OpenApiValidationRule_BasePath) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.BasePath) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *OpenApiValidationRule_ApiGroup) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ApiGroup) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *OpenApiValidationRule_ApiEndpoint) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiEndpoint != nil { + l = m.ApiEndpoint.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationCommonSettings) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodyChoice != nil { + n += m.OversizedBodyChoice.Size() + } + if m.PropertyValidationSettingsChoice != nil { + n += m.PropertyValidationSettingsChoice.Size() + } + return n +} + +func (m *OpenApiValidationCommonSettings_OversizedBodySkipValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodySkipValidation != nil { + l = m.OversizedBodySkipValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationCommonSettings_OversizedBodyFailValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OversizedBodyFailValidation != nil { + l = m.OversizedBodyFailValidation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PropertyValidationSettingsDefault != nil { + l = m.PropertyValidationSettingsDefault.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PropertyValidationSettingsCustom != nil { + l = m.PropertyValidationSettingsCustom.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ValidationPropertySetting) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.QueryParameters != nil { + l = m.QueryParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.Headers != nil { + l = m.Headers.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *ValidationSettingForQueryParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdditionalParametersChoice != nil { + n += m.AdditionalParametersChoice.Size() + } + return n +} + +func (m *ValidationSettingForQueryParameters_AllowAdditionalParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllowAdditionalParameters != nil { + l = m.AllowAdditionalParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ValidationSettingForQueryParameters_DisallowAdditionalParameters) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisallowAdditionalParameters != nil { + l = m.DisallowAdditionalParameters.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ValidationSettingForHeaders) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdditionalHeadersChoice != nil { + n += m.AdditionalHeadersChoice.Size() + } + return n +} + +func (m *ValidationSettingForHeaders_AllowAdditionalHeaders) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllowAdditionalHeaders != nil { + l = m.AllowAdditionalHeaders.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ValidationSettingForHeaders_DisallowAdditionalHeaders) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisallowAdditionalHeaders != nil { + l = m.DisallowAdditionalHeaders.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ApiDefinitionList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ApiDefinitions) > 0 { + for _, e := range m.ApiDefinitions { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *APIProtectionRules) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ApiEndpointRules) > 0 { + for _, e := range m.ApiEndpointRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + if len(m.ApiGroupsRules) > 0 { + for _, e := range m.ApiGroupsRules { + l = e.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *APIEndpointProtectionRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.Action != nil { + l = m.Action.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + l = len(m.ApiEndpointPath) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ApiEndpointMethod != nil { + l = m.ApiEndpointMethod.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.RequestMatcher != nil { + l = m.RequestMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ClientMatcher != nil { + l = m.ClientMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.DomainChoice != nil { + n += m.DomainChoice.Size() + } + return n +} + +func (m *APIEndpointProtectionRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIEndpointProtectionRule_SpecificDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SpecificDomain) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *APIGroupProtectionRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.Action != nil { + l = m.Action.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + l = len(m.ApiGroup) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.RequestMatcher != nil { + l = m.RequestMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.ClientMatcher != nil { + l = m.ClientMatcher.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.DomainChoice != nil { + n += m.DomainChoice.Size() + } + l = len(m.BasePath) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *APIGroupProtectionRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIGroupProtectionRule_SpecificDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SpecificDomain) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *APIProtectionRuleAction) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Action != nil { + n += m.Action.Size() + } + return n +} + +func (m *APIProtectionRuleAction_Allow) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Allow != nil { + l = m.Allow.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *APIProtectionRuleAction_Deny) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Deny != nil { + l = m.Deny.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *JWTValidation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Target != nil { + l = m.Target.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.TokenLocation != nil { + l = m.TokenLocation.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.Action != nil { + l = m.Action.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.JwksConfiguration != nil { + n += m.JwksConfiguration.Size() + } + if m.ReservedClaims != nil { + l = m.ReservedClaims.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.MandatoryClaims != nil { + l = m.MandatoryClaims.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *JWTValidation_AuthServerUri) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.AuthServerUri) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *JWTValidation_Jwks) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Jwks) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *JWTValidation_JwksConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JwksConfig != nil { + l = m.JwksConfig.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *MandatoryClaims) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ClaimNames) > 0 { + for _, s := range m.ClaimNames { + l = len(s) + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *Target) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Target != nil { + n += m.Target.Size() + } + return n +} + +func (m *Target_AllEndpoint) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllEndpoint != nil { + l = m.AllEndpoint.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *Target_ApiGroups) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiGroups != nil { + l = m.ApiGroups.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *Target_BasePaths) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BasePaths != nil { + l = m.BasePaths.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *JWKS) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Cleartext) + if l > 0 { + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *TokenLocation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TokenLocation != nil { + n += m.TokenLocation.Size() + } + return n +} + +func (m *TokenLocation_BearerToken) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BearerToken != nil { + l = m.BearerToken.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *TokenLocation_Cookie) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Cookie) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *TokenLocation_Header) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Header) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *TokenLocation_QueryParam) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.QueryParam) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *ReservedClaims) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IssuerValidation != nil { + n += m.IssuerValidation.Size() + } + if m.AudienceValidation != nil { + n += m.AudienceValidation.Size() + } + if m.ValidatePeriod != nil { + n += m.ValidatePeriod.Size() + } + return n +} + +func (m *ReservedClaims_IssuerDisable) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IssuerDisable != nil { + l = m.IssuerDisable.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ReservedClaims_Issuer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Issuer) + n += 1 + l + sovCommonWafTypes(uint64(l)) + return n +} +func (m *ReservedClaims_AudienceDisable) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AudienceDisable != nil { + l = m.AudienceDisable.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ReservedClaims_Audience) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Audience != nil { + l = m.Audience.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ReservedClaims_ValidatePeriodDisable) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidatePeriodDisable != nil { + l = m.ValidatePeriodDisable.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ReservedClaims_ValidatePeriodEnable) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ValidatePeriodEnable != nil { + l = m.ValidatePeriodEnable.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *Audiences) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Audiences) > 0 { + for _, s := range m.Audiences { + l = len(s) + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *BasePathsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.BasePaths) > 0 { + for _, s := range m.BasePaths { + l = len(s) + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + } + return n +} + +func (m *ApiDiscoverySetting) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.LearnFromRedirectTraffic != nil { + n += m.LearnFromRedirectTraffic.Size() + } + if m.SensitiveDataDetectionRules != nil { + l = m.SensitiveDataDetectionRules.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + if m.DiscoveredApiSettings != nil { + l = m.DiscoveredApiSettings.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func (m *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableLearnFromRedirectTraffic != nil { + l = m.DisableLearnFromRedirectTraffic.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} +func (m *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableLearnFromRedirectTraffic != nil { + l = m.EnableLearnFromRedirectTraffic.Size() + n += 1 + l + sovCommonWafTypes(uint64(l)) + } + return n +} + +func sovCommonWafTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozCommonWafTypes(x uint64) (n int) { + return sovCommonWafTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ServicePolicyList) String() string { + if this == nil { + return "nil" + } + repeatedStringForPolicies := "[]*ObjectRefType{" + for _, f := range this.Policies { + repeatedStringForPolicies += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," + } + repeatedStringForPolicies += "}" + s := strings.Join([]string{`&ServicePolicyList{`, + `Policies:` + repeatedStringForPolicies + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge{`, + `MaliciousUserMitigationChoice:` + fmt.Sprintf("%v", this.MaliciousUserMitigationChoice) + `,`, + `JsChallengeParametersChoice:` + fmt.Sprintf("%v", this.JsChallengeParametersChoice) + `,`, + `CaptchaChallengeParametersChoice:` + fmt.Sprintf("%v", this.CaptchaChallengeParametersChoice) + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge_DefaultMitigationSettings) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge_DefaultMitigationSettings{`, + `DefaultMitigationSettings:` + strings.Replace(fmt.Sprintf("%v", this.DefaultMitigationSettings), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge_MaliciousUserMitigation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge_MaliciousUserMitigation{`, + `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge_DefaultJsChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge_DefaultJsChallengeParameters{`, + `DefaultJsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultJsChallengeParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge_JsChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge_JsChallengeParameters{`, + `JsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.JsChallengeParameters), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge_DefaultCaptchaChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge_DefaultCaptchaChallengeParameters{`, + `DefaultCaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultCaptchaChallengeParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *EnableChallenge_CaptchaChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&EnableChallenge_CaptchaChallengeParameters{`, + `CaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallengeParameters), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge{`, + `JsChallengeParametersChoice:` + fmt.Sprintf("%v", this.JsChallengeParametersChoice) + `,`, + `CaptchaChallengeParametersChoice:` + fmt.Sprintf("%v", this.CaptchaChallengeParametersChoice) + `,`, + `TemporaryBlockingParametersChoice:` + fmt.Sprintf("%v", this.TemporaryBlockingParametersChoice) + `,`, + `MaliciousUserMitigationChoice:` + fmt.Sprintf("%v", this.MaliciousUserMitigationChoice) + `,`, + `ChallengeChoice:` + fmt.Sprintf("%v", this.ChallengeChoice) + `,`, + `RuleList:` + strings.Replace(this.RuleList.String(), "ChallengeRuleList", "ChallengeRuleList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_DefaultJsChallengeParameters{`, + `DefaultJsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultJsChallengeParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_JsChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_JsChallengeParameters{`, + `JsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.JsChallengeParameters), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_DefaultCaptchaChallengeParameters{`, + `DefaultCaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultCaptchaChallengeParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_CaptchaChallengeParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_CaptchaChallengeParameters{`, + `CaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallengeParameters), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_DefaultTemporaryBlockingParameters{`, + `DefaultTemporaryBlockingParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultTemporaryBlockingParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_TemporaryUserBlocking) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_TemporaryUserBlocking{`, + `TemporaryUserBlocking:` + strings.Replace(fmt.Sprintf("%v", this.TemporaryUserBlocking), "TemporaryUserBlockingType", "virtual_host.TemporaryUserBlockingType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_DefaultMitigationSettings) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_DefaultMitigationSettings{`, + `DefaultMitigationSettings:` + strings.Replace(fmt.Sprintf("%v", this.DefaultMitigationSettings), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_MaliciousUserMitigation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_MaliciousUserMitigation{`, + `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_NoChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_NoChallenge{`, + `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_AlwaysEnableJsChallenge{`, + `AlwaysEnableJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.AlwaysEnableJsChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{`, + `AlwaysEnableCaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.AlwaysEnableCaptchaChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ChallengeRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ChallengeRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ChallengeRuleSpec", "service_policy_rule.ChallengeRuleSpec", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ChallengeRuleList) String() string { + if this == nil { + return "nil" + } + repeatedStringForRules := "[]*ChallengeRule{" + for _, f := range this.Rules { + repeatedStringForRules += strings.Replace(f.String(), "ChallengeRule", "ChallengeRule", 1) + "," + } + repeatedStringForRules += "}" + s := strings.Join([]string{`&ChallengeRuleList{`, + `Rules:` + repeatedStringForRules + `,`, + `}`, + }, "") + return s +} +func (this *IPThreatCategoryListType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&IPThreatCategoryListType{`, + `IpThreatCategories:` + fmt.Sprintf("%v", this.IpThreatCategories) + `,`, + `}`, + }, "") + return s +} +func (this *HttpHeaderMatcherList) String() string { + if this == nil { + return "nil" + } + repeatedStringForHeaders := "[]*HeaderMatcherType{" + for _, f := range this.Headers { + repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," + } + repeatedStringForHeaders += "}" + s := strings.Join([]string{`&HttpHeaderMatcherList{`, + `Headers:` + repeatedStringForHeaders + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule{`, + `ClientSourceChoice:` + fmt.Sprintf("%v", this.ClientSourceChoice) + `,`, + `ExpirationTimestamp:` + strings.Replace(fmt.Sprintf("%v", this.ExpirationTimestamp), "Timestamp", "types.Timestamp", 1) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `ActionChoice:` + fmt.Sprintf("%v", this.ActionChoice) + `,`, + `Actions:` + fmt.Sprintf("%v", this.Actions) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_IpPrefix) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_IpPrefix{`, + `IpPrefix:` + fmt.Sprintf("%v", this.IpPrefix) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_AsNumber) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_AsNumber{`, + `AsNumber:` + fmt.Sprintf("%v", this.AsNumber) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_SkipProcessing) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_SkipProcessing{`, + `SkipProcessing:` + strings.Replace(fmt.Sprintf("%v", this.SkipProcessing), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_WafSkipProcessing) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_WafSkipProcessing{`, + `WafSkipProcessing:` + strings.Replace(fmt.Sprintf("%v", this.WafSkipProcessing), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_BotSkipProcessing) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_BotSkipProcessing{`, + `BotSkipProcessing:` + strings.Replace(fmt.Sprintf("%v", this.BotSkipProcessing), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_HttpHeader) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_HttpHeader{`, + `HttpHeader:` + strings.Replace(fmt.Sprintf("%v", this.HttpHeader), "HttpHeaderMatcherList", "HttpHeaderMatcherList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SimpleClientSrcRule_UserIdentifier) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SimpleClientSrcRule_UserIdentifier{`, + `UserIdentifier:` + fmt.Sprintf("%v", this.UserIdentifier) + `,`, + `}`, + }, "") + return s +} +func (this *RateLimitConfigType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RateLimitConfigType{`, + `RateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.RateLimiter), "RateLimitValue", "rate_limiter.RateLimitValue", 1) + `,`, + `IpAllowedListChoice:` + fmt.Sprintf("%v", this.IpAllowedListChoice) + `,`, + `PolicyChoice:` + fmt.Sprintf("%v", this.PolicyChoice) + `,`, + `}`, + }, "") + return s +} +func (this *RateLimitConfigType_NoIpAllowedList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RateLimitConfigType_NoIpAllowedList{`, + `NoIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.NoIpAllowedList), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *RateLimitConfigType_IpAllowedList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RateLimitConfigType_IpAllowedList{`, + `IpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.IpAllowedList), "PrefixStringListType", "views.PrefixStringListType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *RateLimitConfigType_CustomIpAllowedList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RateLimitConfigType_CustomIpAllowedList{`, + `CustomIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.CustomIpAllowedList), "CustomIpAllowedList", "CustomIpAllowedList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *RateLimitConfigType_NoPolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RateLimitConfigType_NoPolicies{`, + `NoPolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoPolicies), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *RateLimitConfigType_Policies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RateLimitConfigType_Policies{`, + `Policies:` + strings.Replace(fmt.Sprintf("%v", this.Policies), "PolicyList", "rate_limiter_policy.PolicyList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIRateLimit) String() string { + if this == nil { + return "nil" + } + repeatedStringForServerUrlRules := "[]*ServerUrlRule{" + for _, f := range this.ServerUrlRules { + repeatedStringForServerUrlRules += strings.Replace(f.String(), "ServerUrlRule", "ServerUrlRule", 1) + "," + } + repeatedStringForServerUrlRules += "}" + repeatedStringForApiEndpointRules := "[]*ApiEndpointRule{" + for _, f := range this.ApiEndpointRules { + repeatedStringForApiEndpointRules += strings.Replace(f.String(), "ApiEndpointRule", "ApiEndpointRule", 1) + "," + } + repeatedStringForApiEndpointRules += "}" + s := strings.Join([]string{`&APIRateLimit{`, + `IpAllowedListChoice:` + fmt.Sprintf("%v", this.IpAllowedListChoice) + `,`, + `ServerUrlRules:` + repeatedStringForServerUrlRules + `,`, + `ApiEndpointRules:` + repeatedStringForApiEndpointRules + `,`, + `}`, + }, "") + return s +} +func (this *APIRateLimit_NoIpAllowedList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIRateLimit_NoIpAllowedList{`, + `NoIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.NoIpAllowedList), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIRateLimit_IpAllowedList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIRateLimit_IpAllowedList{`, + `IpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.IpAllowedList), "PrefixStringListType", "views.PrefixStringListType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIRateLimit_CustomIpAllowedList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIRateLimit_CustomIpAllowedList{`, + `CustomIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.CustomIpAllowedList), "CustomIpAllowedList", "CustomIpAllowedList", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIRateLimit_BypassRateLimitingRules) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIRateLimit_BypassRateLimitingRules{`, + `BypassRateLimitingRules:` + strings.Replace(fmt.Sprintf("%v", this.BypassRateLimitingRules), "BypassRateLimitingRules", "BypassRateLimitingRules", 1) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule{`, + `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, + `DestinationType:` + fmt.Sprintf("%v", this.DestinationType) + `,`, + `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, + `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule_SpecificDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule_SpecificDomain{`, + `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule_AnyUrl) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule_AnyUrl{`, + `AnyUrl:` + strings.Replace(fmt.Sprintf("%v", this.AnyUrl), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule_BasePath) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule_BasePath{`, + `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule_ApiEndpoint) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule_ApiEndpoint{`, + `ApiEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpoint), "ApiEndpointDetails", "ApiEndpointDetails", 1) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRule_ApiGroups) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BypassRateLimitingRule_ApiGroups{`, + `ApiGroups:` + strings.Replace(fmt.Sprintf("%v", this.ApiGroups), "APIGroups", "APIGroups", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroups) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroups{`, + `ApiGroups:` + fmt.Sprintf("%v", this.ApiGroups) + `,`, + `}`, + }, "") + return s +} +func (this *ApiEndpointDetails) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointDetails{`, + `Path:` + fmt.Sprintf("%v", this.Path) + `,`, + `Methods:` + fmt.Sprintf("%v", this.Methods) + `,`, + `}`, + }, "") + return s +} +func (this *BypassRateLimitingRules) String() string { + if this == nil { + return "nil" + } + repeatedStringForBypassRateLimitingRules := "[]*BypassRateLimitingRule{" + for _, f := range this.BypassRateLimitingRules { + repeatedStringForBypassRateLimitingRules += strings.Replace(f.String(), "BypassRateLimitingRule", "BypassRateLimitingRule", 1) + "," + } + repeatedStringForBypassRateLimitingRules += "}" + s := strings.Join([]string{`&BypassRateLimitingRules{`, + `BypassRateLimitingRules:` + repeatedStringForBypassRateLimitingRules + `,`, + `}`, + }, "") + return s +} +func (this *ApiEndpointRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointRule{`, + `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, + `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, + `ApiEndpointPath:` + fmt.Sprintf("%v", this.ApiEndpointPath) + `,`, + `ApiEndpointMethod:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpointMethod), "HttpMethodMatcherType", "policy.HttpMethodMatcherType", 1) + `,`, + `RateLimiterChoice:` + fmt.Sprintf("%v", this.RateLimiterChoice) + `,`, + `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, + `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiEndpointRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiEndpointRule_SpecificDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointRule_SpecificDomain{`, + `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, + `}`, + }, "") + return s +} +func (this *ApiEndpointRule_InlineRateLimiter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointRule_InlineRateLimiter{`, + `InlineRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.InlineRateLimiter), "InlineRateLimiter", "InlineRateLimiter", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiEndpointRule_RefRateLimiter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiEndpointRule_RefRateLimiter{`, + `RefRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.RefRateLimiter), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *InlineRateLimiter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InlineRateLimiter{`, + `Threshold:` + fmt.Sprintf("%v", this.Threshold) + `,`, + `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, + `CountByChoice:` + fmt.Sprintf("%v", this.CountByChoice) + `,`, + `}`, + }, "") + return s +} +func (this *InlineRateLimiter_UseHttpLbUserId) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InlineRateLimiter_UseHttpLbUserId{`, + `UseHttpLbUserId:` + strings.Replace(fmt.Sprintf("%v", this.UseHttpLbUserId), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *InlineRateLimiter_RefUserId) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InlineRateLimiter_RefUserId{`, + `RefUserId:` + strings.Replace(fmt.Sprintf("%v", this.RefUserId), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServerUrlRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServerUrlRule{`, + `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, + `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, + `RateLimiterChoice:` + fmt.Sprintf("%v", this.RateLimiterChoice) + `,`, + `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, + `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, + `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServerUrlRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServerUrlRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServerUrlRule_SpecificDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServerUrlRule_SpecificDomain{`, + `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, + `}`, + }, "") + return s +} +func (this *ServerUrlRule_InlineRateLimiter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServerUrlRule_InlineRateLimiter{`, + `InlineRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.InlineRateLimiter), "InlineRateLimiter", "InlineRateLimiter", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServerUrlRule_RefRateLimiter) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServerUrlRule_RefRateLimiter{`, + `RefRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.RefRateLimiter), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CustomIpAllowedList) String() string { + if this == nil { + return "nil" + } + repeatedStringForRateLimiterAllowedPrefixes := "[]*ObjectRefType{" + for _, f := range this.RateLimiterAllowedPrefixes { + repeatedStringForRateLimiterAllowedPrefixes += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," + } + repeatedStringForRateLimiterAllowedPrefixes += "}" + s := strings.Join([]string{`&CustomIpAllowedList{`, + `RateLimiterAllowedPrefixes:` + repeatedStringForRateLimiterAllowedPrefixes + `,`, + `}`, + }, "") + return s +} +func (this *APISpecificationSettings) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APISpecificationSettings{`, + `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `ValidationTargetChoice:` + fmt.Sprintf("%v", this.ValidationTargetChoice) + `,`, + `}`, + }, "") + return s +} +func (this *APISpecificationSettings_ValidationDisabled) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APISpecificationSettings_ValidationDisabled{`, + `ValidationDisabled:` + strings.Replace(fmt.Sprintf("%v", this.ValidationDisabled), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APISpecificationSettings_ValidationAllSpecEndpoints) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APISpecificationSettings_ValidationAllSpecEndpoints{`, + `ValidationAllSpecEndpoints:` + strings.Replace(fmt.Sprintf("%v", this.ValidationAllSpecEndpoints), "OpenApiValidationAllSpecEndpointsSettings", "OpenApiValidationAllSpecEndpointsSettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APISpecificationSettings_ValidationCustomList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APISpecificationSettings_ValidationCustomList{`, + `ValidationCustomList:` + strings.Replace(fmt.Sprintf("%v", this.ValidationCustomList), "ValidateApiBySpecRule", "ValidateApiBySpecRule", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationAllSpecEndpointsSettings) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationAllSpecEndpointsSettings{`, + `ValidationMode:` + strings.Replace(this.ValidationMode.String(), "OpenApiValidationMode", "OpenApiValidationMode", 1) + `,`, + `FallThroughMode:` + strings.Replace(this.FallThroughMode.String(), "OpenApiFallThroughMode", "OpenApiFallThroughMode", 1) + `,`, + `OversizedBodyChoice:` + fmt.Sprintf("%v", this.OversizedBodyChoice) + `,`, + `Settings:` + strings.Replace(this.Settings.String(), "OpenApiValidationCommonSettings", "OpenApiValidationCommonSettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{`, + `OversizedBodySkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodySkipValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{`, + `OversizedBodyFailValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodyFailValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationMode) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationMode{`, + `ValidationModeChoice:` + fmt.Sprintf("%v", this.ValidationModeChoice) + `,`, + `ResponseValidationModeChoice:` + fmt.Sprintf("%v", this.ResponseValidationModeChoice) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationMode_ValidationModeActive) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationMode_ValidationModeActive{`, + `ValidationModeActive:` + strings.Replace(fmt.Sprintf("%v", this.ValidationModeActive), "OpenApiValidationModeActive", "OpenApiValidationModeActive", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationMode_SkipValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationMode_SkipValidation{`, + `SkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.SkipValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationMode_SkipResponseValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationMode_SkipResponseValidation{`, + `SkipResponseValidation:` + strings.Replace(fmt.Sprintf("%v", this.SkipResponseValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationMode_ResponseValidationModeActive) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationMode_ResponseValidationModeActive{`, + `ResponseValidationModeActive:` + strings.Replace(fmt.Sprintf("%v", this.ResponseValidationModeActive), "OpenApiValidationModeActiveResponse", "OpenApiValidationModeActiveResponse", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationModeActive) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationModeActive{`, + `ValidationEnforcementType:` + fmt.Sprintf("%v", this.ValidationEnforcementType) + `,`, + `RequestValidationProperties:` + fmt.Sprintf("%v", this.RequestValidationProperties) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationModeActive_EnforcementReport) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationModeActive_EnforcementReport{`, + `EnforcementReport:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementReport), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationModeActive_EnforcementBlock) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationModeActive_EnforcementBlock{`, + `EnforcementBlock:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationModeActiveResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationModeActiveResponse{`, + `ValidationEnforcementType:` + fmt.Sprintf("%v", this.ValidationEnforcementType) + `,`, + `ResponseValidationProperties:` + fmt.Sprintf("%v", this.ResponseValidationProperties) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationModeActiveResponse_EnforcementReport) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationModeActiveResponse_EnforcementReport{`, + `EnforcementReport:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementReport), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationModeActiveResponse_EnforcementBlock{`, + `EnforcementBlock:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiFallThroughMode) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiFallThroughMode{`, + `FallThroughModeChoice:` + fmt.Sprintf("%v", this.FallThroughModeChoice) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiFallThroughMode_FallThroughModeAllow) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiFallThroughMode_FallThroughModeAllow{`, + `FallThroughModeAllow:` + strings.Replace(fmt.Sprintf("%v", this.FallThroughModeAllow), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiFallThroughMode_FallThroughModeCustom) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiFallThroughMode_FallThroughModeCustom{`, + `FallThroughModeCustom:` + strings.Replace(fmt.Sprintf("%v", this.FallThroughModeCustom), "CustomFallThroughMode", "CustomFallThroughMode", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CustomFallThroughMode) String() string { + if this == nil { + return "nil" + } + repeatedStringForOpenApiValidationRules := "[]*FallThroughRule{" + for _, f := range this.OpenApiValidationRules { + repeatedStringForOpenApiValidationRules += strings.Replace(f.String(), "FallThroughRule", "FallThroughRule", 1) + "," + } + repeatedStringForOpenApiValidationRules += "}" + s := strings.Join([]string{`&CustomFallThroughMode{`, + `OpenApiValidationRules:` + repeatedStringForOpenApiValidationRules + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `ActionChoice:` + fmt.Sprintf("%v", this.ActionChoice) + `,`, + `ConditionTypeChoice:` + fmt.Sprintf("%v", this.ConditionTypeChoice) + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule_ActionSkip) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule_ActionSkip{`, + `ActionSkip:` + strings.Replace(fmt.Sprintf("%v", this.ActionSkip), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule_ActionReport) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule_ActionReport{`, + `ActionReport:` + strings.Replace(fmt.Sprintf("%v", this.ActionReport), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule_ActionBlock) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule_ActionBlock{`, + `ActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.ActionBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule_BasePath) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule_BasePath{`, + `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule_ApiGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule_ApiGroup{`, + `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, + `}`, + }, "") + return s +} +func (this *FallThroughRule_ApiEndpoint) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FallThroughRule_ApiEndpoint{`, + `ApiEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpoint), "ApiEndpointDetails", "ApiEndpointDetails", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidateApiBySpecRule) String() string { + if this == nil { + return "nil" + } + repeatedStringForOpenApiValidationRules := "[]*OpenApiValidationRule{" + for _, f := range this.OpenApiValidationRules { + repeatedStringForOpenApiValidationRules += strings.Replace(f.String(), "OpenApiValidationRule", "OpenApiValidationRule", 1) + "," + } + repeatedStringForOpenApiValidationRules += "}" + s := strings.Join([]string{`&ValidateApiBySpecRule{`, + `OpenApiValidationRules:` + repeatedStringForOpenApiValidationRules + `,`, + `FallThroughMode:` + strings.Replace(this.FallThroughMode.String(), "OpenApiFallThroughMode", "OpenApiFallThroughMode", 1) + `,`, + `OversizedBodyChoice:` + fmt.Sprintf("%v", this.OversizedBodyChoice) + `,`, + `Settings:` + strings.Replace(this.Settings.String(), "OpenApiValidationCommonSettings", "OpenApiValidationCommonSettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidateApiBySpecRule_OversizedBodySkipValidation{`, + `OversizedBodySkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodySkipValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidateApiBySpecRule_OversizedBodyFailValidation{`, + `OversizedBodyFailValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodyFailValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `ValidationMode:` + strings.Replace(this.ValidationMode.String(), "OpenApiValidationMode", "OpenApiValidationMode", 1) + `,`, + `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, + `ConditionTypeChoice:` + fmt.Sprintf("%v", this.ConditionTypeChoice) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationRule_SpecificDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationRule_SpecificDomain{`, + `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationRule_BasePath) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationRule_BasePath{`, + `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationRule_ApiGroup) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationRule_ApiGroup{`, + `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationRule_ApiEndpoint) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationRule_ApiEndpoint{`, + `ApiEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpoint), "ApiEndpointDetails", "ApiEndpointDetails", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationCommonSettings) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationCommonSettings{`, + `OversizedBodyChoice:` + fmt.Sprintf("%v", this.OversizedBodyChoice) + `,`, + `PropertyValidationSettingsChoice:` + fmt.Sprintf("%v", this.PropertyValidationSettingsChoice) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationCommonSettings_OversizedBodySkipValidation{`, + `OversizedBodySkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodySkipValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationCommonSettings_OversizedBodyFailValidation{`, + `OversizedBodyFailValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodyFailValidation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{`, + `PropertyValidationSettingsDefault:` + strings.Replace(fmt.Sprintf("%v", this.PropertyValidationSettingsDefault), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{`, + `PropertyValidationSettingsCustom:` + strings.Replace(fmt.Sprintf("%v", this.PropertyValidationSettingsCustom), "ValidationPropertySetting", "ValidationPropertySetting", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationPropertySetting) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationPropertySetting{`, + `QueryParameters:` + strings.Replace(this.QueryParameters.String(), "ValidationSettingForQueryParameters", "ValidationSettingForQueryParameters", 1) + `,`, + `Headers:` + strings.Replace(this.Headers.String(), "ValidationSettingForHeaders", "ValidationSettingForHeaders", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationSettingForQueryParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationSettingForQueryParameters{`, + `AdditionalParametersChoice:` + fmt.Sprintf("%v", this.AdditionalParametersChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationSettingForQueryParameters_AllowAdditionalParameters{`, + `AllowAdditionalParameters:` + strings.Replace(fmt.Sprintf("%v", this.AllowAdditionalParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationSettingForQueryParameters_DisallowAdditionalParameters{`, + `DisallowAdditionalParameters:` + strings.Replace(fmt.Sprintf("%v", this.DisallowAdditionalParameters), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationSettingForHeaders) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationSettingForHeaders{`, + `AdditionalHeadersChoice:` + fmt.Sprintf("%v", this.AdditionalHeadersChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationSettingForHeaders_AllowAdditionalHeaders{`, + `AllowAdditionalHeaders:` + strings.Replace(fmt.Sprintf("%v", this.AllowAdditionalHeaders), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ValidationSettingForHeaders_DisallowAdditionalHeaders{`, + `DisallowAdditionalHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisallowAdditionalHeaders), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiDefinitionList) String() string { + if this == nil { + return "nil" + } + repeatedStringForApiDefinitions := "[]*ObjectRefType{" + for _, f := range this.ApiDefinitions { + repeatedStringForApiDefinitions += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," + } + repeatedStringForApiDefinitions += "}" + s := strings.Join([]string{`&ApiDefinitionList{`, + `ApiDefinitions:` + repeatedStringForApiDefinitions + `,`, + `}`, + }, "") + return s +} +func (this *APIProtectionRules) String() string { + if this == nil { + return "nil" + } + repeatedStringForApiEndpointRules := "[]*APIEndpointProtectionRule{" + for _, f := range this.ApiEndpointRules { + repeatedStringForApiEndpointRules += strings.Replace(f.String(), "APIEndpointProtectionRule", "APIEndpointProtectionRule", 1) + "," + } + repeatedStringForApiEndpointRules += "}" + repeatedStringForApiGroupsRules := "[]*APIGroupProtectionRule{" + for _, f := range this.ApiGroupsRules { + repeatedStringForApiGroupsRules += strings.Replace(f.String(), "APIGroupProtectionRule", "APIGroupProtectionRule", 1) + "," + } + repeatedStringForApiGroupsRules += "}" + s := strings.Join([]string{`&APIProtectionRules{`, + `ApiEndpointRules:` + repeatedStringForApiEndpointRules + `,`, + `ApiGroupsRules:` + repeatedStringForApiGroupsRules + `,`, + `}`, + }, "") + return s +} +func (this *APIEndpointProtectionRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIEndpointProtectionRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `Action:` + strings.Replace(this.Action.String(), "APIProtectionRuleAction", "APIProtectionRuleAction", 1) + `,`, + `ApiEndpointPath:` + fmt.Sprintf("%v", this.ApiEndpointPath) + `,`, + `ApiEndpointMethod:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpointMethod), "HttpMethodMatcherType", "policy.HttpMethodMatcherType", 1) + `,`, + `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, + `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, + `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, + `}`, + }, "") + return s +} +func (this *APIEndpointProtectionRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIEndpointProtectionRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIEndpointProtectionRule_SpecificDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIEndpointProtectionRule_SpecificDomain{`, + `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupProtectionRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupProtectionRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `Action:` + strings.Replace(this.Action.String(), "APIProtectionRuleAction", "APIProtectionRuleAction", 1) + `,`, + `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, + `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, + `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, + `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, + `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupProtectionRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupProtectionRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIGroupProtectionRule_SpecificDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIGroupProtectionRule_SpecificDomain{`, + `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, + `}`, + }, "") + return s +} +func (this *APIProtectionRuleAction) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIProtectionRuleAction{`, + `Action:` + fmt.Sprintf("%v", this.Action) + `,`, + `}`, + }, "") + return s +} +func (this *APIProtectionRuleAction_Allow) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIProtectionRuleAction_Allow{`, + `Allow:` + strings.Replace(fmt.Sprintf("%v", this.Allow), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *APIProtectionRuleAction_Deny) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&APIProtectionRuleAction_Deny{`, + `Deny:` + strings.Replace(fmt.Sprintf("%v", this.Deny), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *JWTValidation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&JWTValidation{`, + `Target:` + strings.Replace(this.Target.String(), "Target", "Target", 1) + `,`, + `TokenLocation:` + strings.Replace(this.TokenLocation.String(), "TokenLocation", "TokenLocation", 1) + `,`, + `Action:` + strings.Replace(fmt.Sprintf("%v", this.Action), "Action", "schema.Action", 1) + `,`, + `JwksConfiguration:` + fmt.Sprintf("%v", this.JwksConfiguration) + `,`, + `ReservedClaims:` + strings.Replace(this.ReservedClaims.String(), "ReservedClaims", "ReservedClaims", 1) + `,`, + `MandatoryClaims:` + strings.Replace(this.MandatoryClaims.String(), "MandatoryClaims", "MandatoryClaims", 1) + `,`, + `}`, + }, "") + return s +} +func (this *JWTValidation_AuthServerUri) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&JWTValidation_AuthServerUri{`, + `AuthServerUri:` + fmt.Sprintf("%v", this.AuthServerUri) + `,`, + `}`, + }, "") + return s +} +func (this *JWTValidation_Jwks) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&JWTValidation_Jwks{`, + `Jwks:` + fmt.Sprintf("%v", this.Jwks) + `,`, + `}`, + }, "") + return s +} +func (this *JWTValidation_JwksConfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&JWTValidation_JwksConfig{`, + `JwksConfig:` + strings.Replace(fmt.Sprintf("%v", this.JwksConfig), "JWKS", "JWKS", 1) + `,`, + `}`, + }, "") + return s +} +func (this *MandatoryClaims) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MandatoryClaims{`, + `ClaimNames:` + fmt.Sprintf("%v", this.ClaimNames) + `,`, + `}`, + }, "") + return s +} +func (this *Target) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Target{`, + `Target:` + fmt.Sprintf("%v", this.Target) + `,`, + `}`, + }, "") + return s +} +func (this *Target_AllEndpoint) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Target_AllEndpoint{`, + `AllEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.AllEndpoint), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Target_ApiGroups) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Target_ApiGroups{`, + `ApiGroups:` + strings.Replace(fmt.Sprintf("%v", this.ApiGroups), "APIGroups", "APIGroups", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Target_BasePaths) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Target_BasePaths{`, + `BasePaths:` + strings.Replace(fmt.Sprintf("%v", this.BasePaths), "BasePathsType", "BasePathsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *JWKS) string() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&JWKS{`, + `Cleartext:` + fmt.Sprintf("%v", this.Cleartext) + `,`, + `}`, + }, "") + return s +} +func (this *TokenLocation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenLocation{`, + `TokenLocation:` + fmt.Sprintf("%v", this.TokenLocation) + `,`, + `}`, + }, "") + return s +} +func (this *TokenLocation_BearerToken) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenLocation_BearerToken{`, + `BearerToken:` + strings.Replace(fmt.Sprintf("%v", this.BearerToken), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *TokenLocation_Cookie) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenLocation_Cookie{`, + `Cookie:` + fmt.Sprintf("%v", this.Cookie) + `,`, + `}`, + }, "") + return s +} +func (this *TokenLocation_Header) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenLocation_Header{`, + `Header:` + fmt.Sprintf("%v", this.Header) + `,`, + `}`, + }, "") + return s +} +func (this *TokenLocation_QueryParam) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenLocation_QueryParam{`, + `QueryParam:` + fmt.Sprintf("%v", this.QueryParam) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims{`, + `IssuerValidation:` + fmt.Sprintf("%v", this.IssuerValidation) + `,`, + `AudienceValidation:` + fmt.Sprintf("%v", this.AudienceValidation) + `,`, + `ValidatePeriod:` + fmt.Sprintf("%v", this.ValidatePeriod) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims_IssuerDisable) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims_IssuerDisable{`, + `IssuerDisable:` + strings.Replace(fmt.Sprintf("%v", this.IssuerDisable), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims_Issuer) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims_Issuer{`, + `Issuer:` + fmt.Sprintf("%v", this.Issuer) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims_AudienceDisable) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims_AudienceDisable{`, + `AudienceDisable:` + strings.Replace(fmt.Sprintf("%v", this.AudienceDisable), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims_Audience) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims_Audience{`, + `Audience:` + strings.Replace(fmt.Sprintf("%v", this.Audience), "Audiences", "Audiences", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims_ValidatePeriodDisable) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims_ValidatePeriodDisable{`, + `ValidatePeriodDisable:` + strings.Replace(fmt.Sprintf("%v", this.ValidatePeriodDisable), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReservedClaims_ValidatePeriodEnable) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReservedClaims_ValidatePeriodEnable{`, + `ValidatePeriodEnable:` + strings.Replace(fmt.Sprintf("%v", this.ValidatePeriodEnable), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Audiences) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Audiences{`, + `Audiences:` + fmt.Sprintf("%v", this.Audiences) + `,`, + `}`, + }, "") + return s +} +func (this *BasePathsType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BasePathsType{`, + `BasePaths:` + fmt.Sprintf("%v", this.BasePaths) + `,`, + `}`, + }, "") + return s +} +func (this *ApiDiscoverySetting) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiDiscoverySetting{`, + `LearnFromRedirectTraffic:` + fmt.Sprintf("%v", this.LearnFromRedirectTraffic) + `,`, + `SensitiveDataDetectionRules:` + strings.Replace(fmt.Sprintf("%v", this.SensitiveDataDetectionRules), "SensitiveDataDetectionRules", "app_type.SensitiveDataDetectionRules", 1) + `,`, + `DiscoveredApiSettings:` + strings.Replace(fmt.Sprintf("%v", this.DiscoveredApiSettings), "DiscoveredAPISettings", "app_type.DiscoveredAPISettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiDiscoverySetting_DisableLearnFromRedirectTraffic{`, + `DisableLearnFromRedirectTraffic:` + strings.Replace(fmt.Sprintf("%v", this.DisableLearnFromRedirectTraffic), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ApiDiscoverySetting_EnableLearnFromRedirectTraffic{`, + `EnableLearnFromRedirectTraffic:` + strings.Replace(fmt.Sprintf("%v", this.EnableLearnFromRedirectTraffic), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringCommonWafTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ServicePolicyList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ServicePolicyList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ServicePolicyList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Policies = append(m.Policies, &views.ObjectRefType{}) + if err := m.Policies[len(m.Policies)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *EnableChallenge) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: EnableChallenge: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: EnableChallenge: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultMitigationSettings", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserMitigationChoice = &EnableChallenge_DefaultMitigationSettings{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserMitigationChoice = &EnableChallenge_MaliciousUserMitigation{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultJsChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.JsChallengeParametersChoice = &EnableChallenge_DefaultJsChallengeParameters{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JsChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.JavascriptChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.JsChallengeParametersChoice = &EnableChallenge_JsChallengeParameters{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultCaptchaChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CaptchaChallengeParametersChoice = &EnableChallenge_DefaultCaptchaChallengeParameters{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.CaptchaChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CaptchaChallengeParametersChoice = &EnableChallenge_CaptchaChallengeParameters{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PolicyBasedChallenge) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PolicyBasedChallenge: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PolicyBasedChallenge: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultJsChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.JsChallengeParametersChoice = &PolicyBasedChallenge_DefaultJsChallengeParameters{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JsChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.JavascriptChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.JsChallengeParametersChoice = &PolicyBasedChallenge_JsChallengeParameters{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultCaptchaChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CaptchaChallengeParametersChoice = &PolicyBasedChallenge_DefaultCaptchaChallengeParameters{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallengeParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.CaptchaChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CaptchaChallengeParametersChoice = &PolicyBasedChallenge_CaptchaChallengeParameters{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultTemporaryBlockingParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.TemporaryBlockingParametersChoice = &PolicyBasedChallenge_DefaultTemporaryBlockingParameters{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TemporaryUserBlocking", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.TemporaryUserBlockingType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.TemporaryBlockingParametersChoice = &PolicyBasedChallenge_TemporaryUserBlocking{v} + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DefaultMitigationSettings", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserMitigationChoice = &PolicyBasedChallenge_DefaultMitigationSettings{v} + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserMitigationChoice = &PolicyBasedChallenge_MaliciousUserMitigation{v} + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeChoice = &PolicyBasedChallenge_NoChallenge{v} + iNdEx = postIndex + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AlwaysEnableJsChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeChoice = &PolicyBasedChallenge_AlwaysEnableJsChallenge{v} + iNdEx = postIndex + case 16: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AlwaysEnableCaptchaChallenge", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ChallengeChoice = &PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{v} + iNdEx = postIndex + case 18: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RuleList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RuleList == nil { + m.RuleList = &ChallengeRuleList{} + } + if err := m.RuleList.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ChallengeRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ChallengeRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ChallengeRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &service_policy_rule.ChallengeRuleSpec{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ChallengeRuleList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ChallengeRuleList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ChallengeRuleList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Rules = append(m.Rules, &ChallengeRule{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *IPThreatCategoryListType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: IPThreatCategoryListType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: IPThreatCategoryListType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType == 0 { + var v policy.IPThreatCategory + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= policy.IPThreatCategory(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IpThreatCategories = append(m.IpThreatCategories, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.IpThreatCategories) == 0 { + m.IpThreatCategories = make([]policy.IPThreatCategory, 0, elementCount) + } + for iNdEx < postIndex { + var v policy.IPThreatCategory + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= policy.IPThreatCategory(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IpThreatCategories = append(m.IpThreatCategories, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field IpThreatCategories", wireType) + } + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HttpHeaderMatcherList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HttpHeaderMatcherList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HttpHeaderMatcherList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) + if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SimpleClientSrcRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SimpleClientSrcRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SimpleClientSrcRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpPrefix", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClientSourceChoice = &SimpleClientSrcRule_IpPrefix{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AsNumber", wireType) + } + var v uint32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ClientSourceChoice = &SimpleClientSrcRule_AsNumber{v} + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTimestamp", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ExpirationTimestamp == nil { + m.ExpirationTimestamp = &types.Timestamp{} + } + if err := m.ExpirationTimestamp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SkipProcessing", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ActionChoice = &SimpleClientSrcRule_SkipProcessing{v} + iNdEx = postIndex + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WafSkipProcessing", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ActionChoice = &SimpleClientSrcRule_WafSkipProcessing{v} + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BotSkipProcessing", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ActionChoice = &SimpleClientSrcRule_BotSkipProcessing{v} + iNdEx = postIndex + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpHeader", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &HttpHeaderMatcherList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ClientSourceChoice = &SimpleClientSrcRule_HttpHeader{v} + iNdEx = postIndex + case 16: + if wireType == 0 { + var v ClientSrcRuleAction + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= ClientSrcRuleAction(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Actions = append(m.Actions, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.Actions) == 0 { + m.Actions = make([]ClientSrcRuleAction, 0, elementCount) + } + for iNdEx < postIndex { + var v ClientSrcRuleAction + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= ClientSrcRuleAction(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Actions = append(m.Actions, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field Actions", wireType) + } + case 17: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserIdentifier", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClientSourceChoice = &SimpleClientSrcRule_UserIdentifier{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RateLimitConfigType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RateLimitConfigType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RateLimiter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RateLimiter == nil { + m.RateLimiter = &rate_limiter.RateLimitValue{} + } + if err := m.RateLimiter.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoIpAllowedList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &RateLimitConfigType_NoIpAllowedList{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpAllowedList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.PrefixStringListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &RateLimitConfigType_IpAllowedList{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomIpAllowedList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &CustomIpAllowedList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &RateLimitConfigType_CustomIpAllowedList{v} + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoPolicies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.PolicyChoice = &RateLimitConfigType_NoPolicies{v} + iNdEx = postIndex + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &rate_limiter_policy.PolicyList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.PolicyChoice = &RateLimitConfigType_Policies{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APIRateLimit) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIRateLimit: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIRateLimit: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NoIpAllowedList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &APIRateLimit_NoIpAllowedList{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IpAllowedList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.PrefixStringListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &APIRateLimit_IpAllowedList{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomIpAllowedList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &CustomIpAllowedList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &APIRateLimit_CustomIpAllowedList{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BypassRateLimitingRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &BypassRateLimitingRules{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IpAllowedListChoice = &APIRateLimit_BypassRateLimitingRules{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ServerUrlRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ServerUrlRules = append(m.ServerUrlRules, &ServerUrlRule{}) + if err := m.ServerUrlRules[len(m.ServerUrlRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiEndpointRules = append(m.ApiEndpointRules, &ApiEndpointRule{}) + if err := m.ApiEndpointRules[len(m.ApiEndpointRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *BypassRateLimitingRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: BypassRateLimitingRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: BypassRateLimitingRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainChoice = &BypassRateLimitingRule_AnyDomain{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainChoice = &BypassRateLimitingRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyUrl", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DestinationType = &BypassRateLimitingRule_AnyUrl{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DestinationType = &BypassRateLimitingRule_BasePath{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpoint", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ApiEndpointDetails{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DestinationType = &BypassRateLimitingRule_ApiEndpoint{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroups", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &APIGroups{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DestinationType = &BypassRateLimitingRule_ApiGroups{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RequestMatcher == nil { + m.RequestMatcher = &policy.RequestMatcher{} + } + if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ClientMatcher == nil { + m.ClientMatcher = &policy.ClientMatcher{} + } + if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APIGroups) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIGroups: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIGroups: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroups", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiGroups = append(m.ApiGroups, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ApiEndpointDetails) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ApiEndpointDetails: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ApiEndpointDetails: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Path = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType == 0 { + var v schema.HttpMethod + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.HttpMethod(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Methods = append(m.Methods, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.Methods) == 0 { + m.Methods = make([]schema.HttpMethod, 0, elementCount) + } + for iNdEx < postIndex { + var v schema.HttpMethod + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.HttpMethod(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Methods = append(m.Methods, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field Methods", wireType) + } + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *BypassRateLimitingRules) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: BypassRateLimitingRules: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: BypassRateLimitingRules: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BypassRateLimitingRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BypassRateLimitingRules = append(m.BypassRateLimitingRules, &BypassRateLimitingRule{}) + if err := m.BypassRateLimitingRules[len(m.BypassRateLimitingRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ApiEndpointRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ApiEndpointRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ApiEndpointRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainChoice = &ApiEndpointRule_AnyDomain{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainChoice = &ApiEndpointRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BasePath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointPath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiEndpointPath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointMethod", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ApiEndpointMethod == nil { + m.ApiEndpointMethod = &policy.HttpMethodMatcherType{} + } + if err := m.ApiEndpointMethod.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InlineRateLimiter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &InlineRateLimiter{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimiterChoice = &ApiEndpointRule_InlineRateLimiter{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefRateLimiter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimiterChoice = &ApiEndpointRule_RefRateLimiter{v} + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RequestMatcher == nil { + m.RequestMatcher = &policy.RequestMatcher{} + } + if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ClientMatcher == nil { + m.ClientMatcher = &policy.ClientMatcher{} + } + if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *InlineRateLimiter) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: InlineRateLimiter: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: InlineRateLimiter: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Threshold", wireType) + } + m.Threshold = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Threshold |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Unit", wireType) + } + m.Unit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Unit |= rate_limiter.RateLimitPeriodUnit(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UseHttpLbUserId", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CountByChoice = &InlineRateLimiter_UseHttpLbUserId{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefUserId", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.CountByChoice = &InlineRateLimiter_RefUserId{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ServerUrlRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ServerUrlRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ServerUrlRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainChoice = &ServerUrlRule_AnyDomain{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainChoice = &ServerUrlRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BasePath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InlineRateLimiter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &InlineRateLimiter{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimiterChoice = &ServerUrlRule_InlineRateLimiter{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RefRateLimiter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimiterChoice = &ServerUrlRule_RefRateLimiter{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ClientMatcher == nil { + m.ClientMatcher = &policy.ClientMatcher{} + } + if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiGroup = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RequestMatcher == nil { + m.RequestMatcher = &policy.RequestMatcher{} + } + if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CustomIpAllowedList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CustomIpAllowedList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CustomIpAllowedList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 22: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RateLimiterAllowedPrefixes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RateLimiterAllowedPrefixes = append(m.RateLimiterAllowedPrefixes, &views.ObjectRefType{}) + if err := m.RateLimiterAllowedPrefixes[len(m.RateLimiterAllowedPrefixes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APISpecificationSettings) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APISpecificationSettings: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APISpecificationSettings: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ApiDefinition == nil { + m.ApiDefinition = &views.ObjectRefType{} + } + if err := m.ApiDefinition.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidationDisabled", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationTargetChoice = &APISpecificationSettings_ValidationDisabled{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidationAllSpecEndpoints", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &OpenApiValidationAllSpecEndpointsSettings{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationTargetChoice = &APISpecificationSettings_ValidationAllSpecEndpoints{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidationCustomList", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ValidateApiBySpecRule{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationTargetChoice = &APISpecificationSettings_ValidationCustomList{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiValidationAllSpecEndpointsSettings: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiValidationAllSpecEndpointsSettings: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidationMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ValidationMode == nil { + m.ValidationMode = &OpenApiValidationMode{} + } + if err := m.ValidationMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FallThroughMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.FallThroughMode == nil { + m.FallThroughMode = &OpenApiFallThroughMode{} + } + if err := m.FallThroughMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodySkipValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.OversizedBodyChoice = &OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodyFailValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.OversizedBodyChoice = &OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Settings", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Settings == nil { + m.Settings = &OpenApiValidationCommonSettings{} + } + if err := m.Settings.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiValidationMode) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiValidationMode: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiValidationMode: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidationModeActive", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &OpenApiValidationModeActive{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationModeChoice = &OpenApiValidationMode_ValidationModeActive{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SkipValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationModeChoice = &OpenApiValidationMode_SkipValidation{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SkipResponseValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResponseValidationModeChoice = &OpenApiValidationMode_SkipResponseValidation{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseValidationModeActive", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &OpenApiValidationModeActiveResponse{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResponseValidationModeChoice = &OpenApiValidationMode_ResponseValidationModeActive{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiValidationModeActive) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiValidationModeActive: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiValidationModeActive: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnforcementReport", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationEnforcementType = &OpenApiValidationModeActive_EnforcementReport{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnforcementBlock", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationEnforcementType = &OpenApiValidationModeActive_EnforcementBlock{v} + iNdEx = postIndex + case 4: + if wireType == 0 { + var v schema.OpenApiValidationProperties + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.OpenApiValidationProperties(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.RequestValidationProperties = append(m.RequestValidationProperties, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.RequestValidationProperties) == 0 { + m.RequestValidationProperties = make([]schema.OpenApiValidationProperties, 0, elementCount) + } + for iNdEx < postIndex { + var v schema.OpenApiValidationProperties + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.OpenApiValidationProperties(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.RequestValidationProperties = append(m.RequestValidationProperties, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field RequestValidationProperties", wireType) + } + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiValidationModeActiveResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiValidationModeActiveResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiValidationModeActiveResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnforcementReport", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationEnforcementType = &OpenApiValidationModeActiveResponse_EnforcementReport{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnforcementBlock", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidationEnforcementType = &OpenApiValidationModeActiveResponse_EnforcementBlock{v} + iNdEx = postIndex + case 4: + if wireType == 0 { + var v schema.OpenApiValidationProperties + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.OpenApiValidationProperties(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResponseValidationProperties = append(m.ResponseValidationProperties, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.ResponseValidationProperties) == 0 { + m.ResponseValidationProperties = make([]schema.OpenApiValidationProperties, 0, elementCount) + } + for iNdEx < postIndex { + var v schema.OpenApiValidationProperties + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.OpenApiValidationProperties(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResponseValidationProperties = append(m.ResponseValidationProperties, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseValidationProperties", wireType) + } + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiFallThroughMode) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiFallThroughMode: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiFallThroughMode: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FallThroughModeAllow", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.FallThroughModeChoice = &OpenApiFallThroughMode_FallThroughModeAllow{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FallThroughModeCustom", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &CustomFallThroughMode{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.FallThroughModeChoice = &OpenApiFallThroughMode_FallThroughModeCustom{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CustomFallThroughMode) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CustomFallThroughMode: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CustomFallThroughMode: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OpenApiValidationRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OpenApiValidationRules = append(m.OpenApiValidationRules, &FallThroughRule{}) + if err := m.OpenApiValidationRules[len(m.OpenApiValidationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *FallThroughRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FallThroughRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FallThroughRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActionSkip", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ActionChoice = &FallThroughRule_ActionSkip{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActionReport", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ActionChoice = &FallThroughRule_ActionReport{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActionBlock", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ActionChoice = &FallThroughRule_ActionBlock{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConditionTypeChoice = &FallThroughRule_BasePath{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConditionTypeChoice = &FallThroughRule_ApiGroup{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpoint", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ApiEndpointDetails{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ConditionTypeChoice = &FallThroughRule_ApiEndpoint{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ValidateApiBySpecRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ValidateApiBySpecRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OpenApiValidationRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OpenApiValidationRules = append(m.OpenApiValidationRules, &OpenApiValidationRule{}) + if err := m.OpenApiValidationRules[len(m.OpenApiValidationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FallThroughMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.FallThroughMode == nil { + m.FallThroughMode = &OpenApiFallThroughMode{} + } + if err := m.FallThroughMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodySkipValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.OversizedBodyChoice = &ValidateApiBySpecRule_OversizedBodySkipValidation{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodyFailValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.OversizedBodyChoice = &ValidateApiBySpecRule_OversizedBodyFailValidation{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Settings", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Settings == nil { + m.Settings = &OpenApiValidationCommonSettings{} + } + if err := m.Settings.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiValidationRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiValidationRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidationMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ValidationMode == nil { + m.ValidationMode = &OpenApiValidationMode{} + } + if err := m.ValidationMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainChoice = &OpenApiValidationRule_AnyDomain{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainChoice = &OpenApiValidationRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConditionTypeChoice = &OpenApiValidationRule_BasePath{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConditionTypeChoice = &OpenApiValidationRule_ApiGroup{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpoint", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ApiEndpointDetails{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ConditionTypeChoice = &OpenApiValidationRule_ApiEndpoint{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OpenApiValidationCommonSettings: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OpenApiValidationCommonSettings: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodySkipValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.OversizedBodyChoice = &OpenApiValidationCommonSettings_OversizedBodySkipValidation{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodyFailValidation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.OversizedBodyChoice = &OpenApiValidationCommonSettings_OversizedBodyFailValidation{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PropertyValidationSettingsDefault", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.PropertyValidationSettingsChoice = &OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PropertyValidationSettingsCustom", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ValidationPropertySetting{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.PropertyValidationSettingsChoice = &OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ValidationPropertySetting) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ValidationPropertySetting: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ValidationPropertySetting: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field QueryParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.QueryParameters == nil { + m.QueryParameters = &ValidationSettingForQueryParameters{} + } + if err := m.QueryParameters.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Headers == nil { + m.Headers = &ValidationSettingForHeaders{} + } + if err := m.Headers.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ValidationSettingForQueryParameters) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ValidationSettingForQueryParameters: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ValidationSettingForQueryParameters: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowAdditionalParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdditionalParametersChoice = &ValidationSettingForQueryParameters_AllowAdditionalParameters{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisallowAdditionalParameters", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdditionalParametersChoice = &ValidationSettingForQueryParameters_DisallowAdditionalParameters{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ValidationSettingForHeaders) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ValidationSettingForHeaders: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ValidationSettingForHeaders: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowAdditionalHeaders", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdditionalHeadersChoice = &ValidationSettingForHeaders_AllowAdditionalHeaders{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisallowAdditionalHeaders", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdditionalHeadersChoice = &ValidationSettingForHeaders_DisallowAdditionalHeaders{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ApiDefinitionList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ApiDefinitionList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ApiDefinitionList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiDefinitions = append(m.ApiDefinitions, &views.ObjectRefType{}) + if err := m.ApiDefinitions[len(m.ApiDefinitions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APIProtectionRules) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIProtectionRules: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIProtectionRules: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiEndpointRules = append(m.ApiEndpointRules, &APIEndpointProtectionRule{}) + if err := m.ApiEndpointRules[len(m.ApiEndpointRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroupsRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiGroupsRules = append(m.ApiGroupsRules, &APIGroupProtectionRule{}) + if err := m.ApiGroupsRules[len(m.ApiGroupsRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APIEndpointProtectionRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIEndpointProtectionRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIEndpointProtectionRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Action == nil { + m.Action = &APIProtectionRuleAction{} + } + if err := m.Action.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointPath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiEndpointPath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointMethod", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ApiEndpointMethod == nil { + m.ApiEndpointMethod = &policy.HttpMethodMatcherType{} + } + if err := m.ApiEndpointMethod.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RequestMatcher == nil { + m.RequestMatcher = &policy.RequestMatcher{} + } + if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ClientMatcher == nil { + m.ClientMatcher = &policy.ClientMatcher{} + } + if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainChoice = &APIEndpointProtectionRule_AnyDomain{v} + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainChoice = &APIEndpointProtectionRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APIGroupProtectionRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIGroupProtectionRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIGroupProtectionRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Action == nil { + m.Action = &APIProtectionRuleAction{} + } + if err := m.Action.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ApiGroup = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RequestMatcher == nil { + m.RequestMatcher = &policy.RequestMatcher{} + } + if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ClientMatcher == nil { + m.ClientMatcher = &policy.ClientMatcher{} + } + if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainChoice = &APIGroupProtectionRule_AnyDomain{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainChoice = &APIGroupProtectionRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BasePath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *APIProtectionRuleAction) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: APIProtectionRuleAction: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: APIProtectionRuleAction: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Allow", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Action = &APIProtectionRuleAction_Allow{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Deny", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Action = &APIProtectionRuleAction_Deny{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *JWTValidation) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: JWTValidation: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: JWTValidation: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Target == nil { + m.Target = &Target{} + } + if err := m.Target.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TokenLocation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TokenLocation == nil { + m.TokenLocation = &TokenLocation{} + } + if err := m.TokenLocation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Action == nil { + m.Action = &schema.Action{} + } + if err := m.Action.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AuthServerUri", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.JwksConfiguration = &JWTValidation_AuthServerUri{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Jwks", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.JwksConfiguration = &JWTValidation_Jwks{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReservedClaims", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ReservedClaims == nil { + m.ReservedClaims = &ReservedClaims{} + } + if err := m.ReservedClaims.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JwksConfig", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &JWKS{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.JwksConfiguration = &JWTValidation_JwksConfig{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MandatoryClaims", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MandatoryClaims == nil { + m.MandatoryClaims = &MandatoryClaims{} + } + if err := m.MandatoryClaims.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MandatoryClaims) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MandatoryClaims: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MandatoryClaims: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClaimNames", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClaimNames = append(m.ClaimNames, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Target) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Target: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Target: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllEndpoint", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Target = &Target_AllEndpoint{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiGroups", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &APIGroups{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Target = &Target_ApiGroups{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePaths", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &BasePathsType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Target = &Target_BasePaths{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *JWKS) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: JWKS: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: JWKS: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cleartext", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Cleartext = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TokenLocation) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TokenLocation: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TokenLocation: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BearerToken", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.TokenLocation = &TokenLocation_BearerToken{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cookie", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TokenLocation = &TokenLocation_Cookie{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Header", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TokenLocation = &TokenLocation_Header{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field QueryParam", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TokenLocation = &TokenLocation_QueryParam{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReservedClaims) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReservedClaims: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReservedClaims: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IssuerDisable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.IssuerValidation = &ReservedClaims_IssuerDisable{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Issuer", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.IssuerValidation = &ReservedClaims_Issuer{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AudienceDisable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AudienceValidation = &ReservedClaims_AudienceDisable{v} + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Audience", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &Audiences{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AudienceValidation = &ReservedClaims_Audience{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidatePeriodDisable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidatePeriod = &ReservedClaims_ValidatePeriodDisable{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ValidatePeriodEnable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ValidatePeriod = &ReservedClaims_ValidatePeriodEnable{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Audiences) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Audiences: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Audiences: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Audiences", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Audiences = append(m.Audiences, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *BasePathsType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: BasePathsType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: BasePathsType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BasePaths", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BasePaths = append(m.BasePaths, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ApiDiscoverySetting: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ApiDiscoverySetting: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableLearnFromRedirectTraffic", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.LearnFromRedirectTraffic = &ApiDiscoverySetting_DisableLearnFromRedirectTraffic{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableLearnFromRedirectTraffic", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.LearnFromRedirectTraffic = &ApiDiscoverySetting_EnableLearnFromRedirectTraffic{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SensitiveDataDetectionRules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SensitiveDataDetectionRules == nil { + m.SensitiveDataDetectionRules = &app_type.SensitiveDataDetectionRules{} + } + if err := m.SensitiveDataDetectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DiscoveredApiSettings", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCommonWafTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCommonWafTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.DiscoveredApiSettings == nil { + m.DiscoveredApiSettings = &app_type.DiscoveredAPISettings{} + } + if err := m.DiscoveredApiSettings.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCommonWafTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthCommonWafTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipCommonWafTypes(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowCommonWafTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthCommonWafTypes + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupCommonWafTypes + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthCommonWafTypes + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthCommonWafTypes = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowCommonWafTypes = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupCommonWafTypes = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/views/common_waf/common_waf_types.vesmsg.go b/pbgo/extschema/schema/views/common_waf/common_waf_types.vesmsg.go new file mode 100644 index 000000000..19db45124 --- /dev/null +++ b/pbgo/extschema/schema/views/common_waf/common_waf_types.vesmsg.go @@ -0,0 +1,10162 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package common_waf + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_app_type "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" + ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" + ves_io_schema_rate_limiter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" + ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_views_rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" + ves_io_schema_virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *APIEndpointProtectionRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APIEndpointProtectionRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APIEndpointProtectionRule) DeepCopy() *APIEndpointProtectionRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APIEndpointProtectionRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APIEndpointProtectionRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APIEndpointProtectionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APIEndpointProtectionRuleValidator().Validate(ctx, m, opts...) +} + +func (m *APIEndpointProtectionRule) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetClientMatcherDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *APIEndpointProtectionRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { + if m.GetClientMatcher() == nil { + return nil, nil + } + + drInfos, err := m.GetClientMatcher().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "client_matcher." + dri.DRField + } + return drInfos, err + +} + +type ValidateAPIEndpointProtectionRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPIEndpointProtectionRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + } + return validatorFn, nil +} + +func (v *ValidateAPIEndpointProtectionRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + } + return oValidatorFn_SpecificDomain, nil +} + +func (v *ValidateAPIEndpointProtectionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIEndpointProtectionRule) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for action") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := APIProtectionRuleActionValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIEndpointProtectionRule) ApiEndpointPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_endpoint_path") + } + + return validatorFn, nil +} + +func (v *ValidateAPIEndpointProtectionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APIEndpointProtectionRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APIEndpointProtectionRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + + vOpts := append(opts, db.WithValidateField("action")) + if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["api_endpoint_method"]; exists { + + vOpts := append(opts, db.WithValidateField("api_endpoint_method")) + if err := fv(ctx, m.GetApiEndpointMethod(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["api_endpoint_path"]; exists { + + vOpts := append(opts, db.WithValidateField("api_endpoint_path")) + if err := fv(ctx, m.GetApiEndpointPath(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["client_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("client_matcher")) + if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["domain_choice"]; exists { + val := m.GetDomainChoice() + vOpts := append(opts, + db.WithValidateField("domain_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDomainChoice().(type) { + case *APIEndpointProtectionRule_AnyDomain: + if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { + val := m.GetDomainChoice().(*APIEndpointProtectionRule_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIEndpointProtectionRule_SpecificDomain: + if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { + val := m.GetDomainChoice().(*APIEndpointProtectionRule_SpecificDomain).SpecificDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("specific_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["request_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("request_matcher")) + if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPIEndpointProtectionRuleValidator = func() *ValidateAPIEndpointProtectionRule { + v := &ValidateAPIEndpointProtectionRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDomainChoice := v.DomainChoiceValidationRuleHandler + rulesDomainChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDomainChoice(rulesDomainChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.domain_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_choice"] = vFn + + vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler + rulesDomainChoiceSpecificDomain := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field APIEndpointProtectionRule.domain_choice_specific_domain: %s", err) + panic(errMsg) + } + + v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhAction := v.ActionValidationRuleHandler + rulesAction := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhAction(rulesAction) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.action: %s", err) + panic(errMsg) + } + v.FldValidators["action"] = vFn + + vrhApiEndpointPath := v.ApiEndpointPathValidationRuleHandler + rulesApiEndpointPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true", + } + vFn, err = vrhApiEndpointPath(rulesApiEndpointPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.api_endpoint_path: %s", err) + panic(errMsg) + } + v.FldValidators["api_endpoint_path"] = vFn + + v.FldValidators["api_endpoint_method"] = ves_io_schema_policy.HttpMethodMatcherTypeValidator().Validate + + v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate + + v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate + + return v +}() + +func APIEndpointProtectionRuleValidator() db.Validator { + return DefaultAPIEndpointProtectionRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *APIGroupProtectionRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APIGroupProtectionRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APIGroupProtectionRule) DeepCopy() *APIGroupProtectionRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APIGroupProtectionRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APIGroupProtectionRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APIGroupProtectionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APIGroupProtectionRuleValidator().Validate(ctx, m, opts...) +} + +func (m *APIGroupProtectionRule) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetClientMatcherDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *APIGroupProtectionRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { + if m.GetClientMatcher() == nil { + return nil, nil + } + + drInfos, err := m.GetClientMatcher().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "client_matcher." + dri.DRField + } + return drInfos, err + +} + +type ValidateAPIGroupProtectionRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPIGroupProtectionRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + } + return validatorFn, nil +} + +func (v *ValidateAPIGroupProtectionRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + } + return oValidatorFn_SpecificDomain, nil +} + +func (v *ValidateAPIGroupProtectionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIGroupProtectionRule) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for action") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := APIProtectionRuleActionValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIGroupProtectionRule) ApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") + } + + return validatorFn, nil +} + +func (v *ValidateAPIGroupProtectionRule) BasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") + } + + return validatorFn, nil +} + +func (v *ValidateAPIGroupProtectionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APIGroupProtectionRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APIGroupProtectionRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + + vOpts := append(opts, db.WithValidateField("action")) + if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["api_group"]; exists { + + vOpts := append(opts, db.WithValidateField("api_group")) + if err := fv(ctx, m.GetApiGroup(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["base_path"]; exists { + + vOpts := append(opts, db.WithValidateField("base_path")) + if err := fv(ctx, m.GetBasePath(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["client_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("client_matcher")) + if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["domain_choice"]; exists { + val := m.GetDomainChoice() + vOpts := append(opts, + db.WithValidateField("domain_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDomainChoice().(type) { + case *APIGroupProtectionRule_AnyDomain: + if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { + val := m.GetDomainChoice().(*APIGroupProtectionRule_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIGroupProtectionRule_SpecificDomain: + if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { + val := m.GetDomainChoice().(*APIGroupProtectionRule_SpecificDomain).SpecificDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("specific_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["request_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("request_matcher")) + if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPIGroupProtectionRuleValidator = func() *ValidateAPIGroupProtectionRule { + v := &ValidateAPIGroupProtectionRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDomainChoice := v.DomainChoiceValidationRuleHandler + rulesDomainChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDomainChoice(rulesDomainChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.domain_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_choice"] = vFn + + vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler + rulesDomainChoiceSpecificDomain := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field APIGroupProtectionRule.domain_choice_specific_domain: %s", err) + panic(errMsg) + } + + v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhAction := v.ActionValidationRuleHandler + rulesAction := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhAction(rulesAction) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.action: %s", err) + panic(errMsg) + } + v.FldValidators["action"] = vFn + + vrhApiGroup := v.ApiGroupValidationRuleHandler + rulesApiGroup := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + } + vFn, err = vrhApiGroup(rulesApiGroup) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.api_group: %s", err) + panic(errMsg) + } + v.FldValidators["api_group"] = vFn + + vrhBasePath := v.BasePathValidationRuleHandler + rulesBasePath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128", + } + vFn, err = vrhBasePath(rulesBasePath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.base_path: %s", err) + panic(errMsg) + } + v.FldValidators["base_path"] = vFn + + v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate + + v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate + + return v +}() + +func APIGroupProtectionRuleValidator() db.Validator { + return DefaultAPIGroupProtectionRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *APIGroups) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APIGroups) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APIGroups) DeepCopy() *APIGroups { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APIGroups{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APIGroups) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APIGroups) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APIGroupsValidator().Validate(ctx, m, opts...) +} + +type ValidateAPIGroups struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPIGroups) ApiGroupsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for api_groups") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_groups") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated api_groups") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items api_groups") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIGroups) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APIGroups) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APIGroups got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_groups"]; exists { + vOpts := append(opts, db.WithValidateField("api_groups")) + if err := fv(ctx, m.GetApiGroups(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPIGroupsValidator = func() *ValidateAPIGroups { + v := &ValidateAPIGroups{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhApiGroups := v.ApiGroupsValidationRuleHandler + rulesApiGroups := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhApiGroups(rulesApiGroups) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroups.api_groups: %s", err) + panic(errMsg) + } + v.FldValidators["api_groups"] = vFn + + return v +}() + +func APIGroupsValidator() db.Validator { + return DefaultAPIGroupsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *APIProtectionRuleAction) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APIProtectionRuleAction) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APIProtectionRuleAction) DeepCopy() *APIProtectionRuleAction { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APIProtectionRuleAction{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APIProtectionRuleAction) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APIProtectionRuleAction) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APIProtectionRuleActionValidator().Validate(ctx, m, opts...) +} + +type ValidateAPIProtectionRuleAction struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPIProtectionRuleAction) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for action") + } + return validatorFn, nil +} + +func (v *ValidateAPIProtectionRuleAction) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APIProtectionRuleAction) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APIProtectionRuleAction got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + val := m.GetAction() + vOpts := append(opts, + db.WithValidateField("action"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAction().(type) { + case *APIProtectionRuleAction_Allow: + if fv, exists := v.FldValidators["action.allow"]; exists { + val := m.GetAction().(*APIProtectionRuleAction_Allow).Allow + vOpts := append(opts, + db.WithValidateField("action"), + db.WithValidateField("allow"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIProtectionRuleAction_Deny: + if fv, exists := v.FldValidators["action.deny"]; exists { + val := m.GetAction().(*APIProtectionRuleAction_Deny).Deny + vOpts := append(opts, + db.WithValidateField("action"), + db.WithValidateField("deny"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPIProtectionRuleActionValidator = func() *ValidateAPIProtectionRuleAction { + v := &ValidateAPIProtectionRuleAction{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAction := v.ActionValidationRuleHandler + rulesAction := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAction(rulesAction) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIProtectionRuleAction.action: %s", err) + panic(errMsg) + } + v.FldValidators["action"] = vFn + + return v +}() + +func APIProtectionRuleActionValidator() db.Validator { + return DefaultAPIProtectionRuleActionValidator +} + +// augmented methods on protoc/std generated struct + +func (m *APIProtectionRules) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APIProtectionRules) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APIProtectionRules) DeepCopy() *APIProtectionRules { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APIProtectionRules{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APIProtectionRules) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APIProtectionRules) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APIProtectionRulesValidator().Validate(ctx, m, opts...) +} + +func (m *APIProtectionRules) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetApiEndpointRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiEndpointRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetApiGroupsRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiGroupsRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *APIProtectionRules) GetApiEndpointRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiEndpointRules() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetApiEndpointRules() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiEndpointRules() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("api_endpoint_rules[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *APIProtectionRules) GetApiGroupsRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiGroupsRules() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetApiGroupsRules() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiGroupsRules() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("api_groups_rules[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateAPIProtectionRules struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPIProtectionRules) ApiEndpointRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_endpoint_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*APIEndpointProtectionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := APIEndpointProtectionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_endpoint_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*APIEndpointProtectionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*APIEndpointProtectionRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated api_endpoint_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items api_endpoint_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIProtectionRules) ApiGroupsRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_groups_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*APIGroupProtectionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := APIGroupProtectionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_groups_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*APIGroupProtectionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*APIGroupProtectionRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated api_groups_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items api_groups_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIProtectionRules) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APIProtectionRules) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APIProtectionRules got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_endpoint_rules"]; exists { + vOpts := append(opts, db.WithValidateField("api_endpoint_rules")) + if err := fv(ctx, m.GetApiEndpointRules(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["api_groups_rules"]; exists { + vOpts := append(opts, db.WithValidateField("api_groups_rules")) + if err := fv(ctx, m.GetApiGroupsRules(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPIProtectionRulesValidator = func() *ValidateAPIProtectionRules { + v := &ValidateAPIProtectionRules{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhApiEndpointRules := v.ApiEndpointRulesValidationRuleHandler + rulesApiEndpointRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "20", + } + vFn, err = vrhApiEndpointRules(rulesApiEndpointRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIProtectionRules.api_endpoint_rules: %s", err) + panic(errMsg) + } + v.FldValidators["api_endpoint_rules"] = vFn + + vrhApiGroupsRules := v.ApiGroupsRulesValidationRuleHandler + rulesApiGroupsRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "20", + } + vFn, err = vrhApiGroupsRules(rulesApiGroupsRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIProtectionRules.api_groups_rules: %s", err) + panic(errMsg) + } + v.FldValidators["api_groups_rules"] = vFn + + return v +}() + +func APIProtectionRulesValidator() db.Validator { + return DefaultAPIProtectionRulesValidator +} + +// augmented methods on protoc/std generated struct + +func (m *APIRateLimit) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APIRateLimit) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APIRateLimit) DeepCopy() *APIRateLimit { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APIRateLimit{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APIRateLimit) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APIRateLimit) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APIRateLimitValidator().Validate(ctx, m, opts...) +} + +func (m *APIRateLimit) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetApiEndpointRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiEndpointRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetIpAllowedListChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetIpAllowedListChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetServerUrlRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetServerUrlRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *APIRateLimit) GetApiEndpointRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiEndpointRules() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetApiEndpointRules() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiEndpointRules() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("api_endpoint_rules[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *APIRateLimit) GetIpAllowedListChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetIpAllowedListChoice() == nil { + return nil, nil + } + switch m.GetIpAllowedListChoice().(type) { + case *APIRateLimit_NoIpAllowedList: + + return nil, nil + + case *APIRateLimit_IpAllowedList: + + return nil, nil + + case *APIRateLimit_CustomIpAllowedList: + + drInfos, err := m.GetCustomIpAllowedList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetCustomIpAllowedList().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "custom_ip_allowed_list." + dri.DRField + } + return drInfos, err + + case *APIRateLimit_BypassRateLimitingRules: + + drInfos, err := m.GetBypassRateLimitingRules().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetBypassRateLimitingRules().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "bypass_rate_limiting_rules." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } + +} + +// GetDRefInfo for the field's type +func (m *APIRateLimit) GetServerUrlRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetServerUrlRules() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetServerUrlRules() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetServerUrlRules() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("server_url_rules[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateAPIRateLimit struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPIRateLimit) IpAllowedListChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ip_allowed_list_choice") + } + return validatorFn, nil +} + +func (v *ValidateAPIRateLimit) ServerUrlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for server_url_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*ServerUrlRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ServerUrlRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for server_url_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ServerUrlRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ServerUrlRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated server_url_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items server_url_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIRateLimit) ApiEndpointRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_endpoint_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*ApiEndpointRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ApiEndpointRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_endpoint_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ApiEndpointRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ApiEndpointRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated api_endpoint_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items api_endpoint_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPIRateLimit) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APIRateLimit) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APIRateLimit got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_endpoint_rules"]; exists { + vOpts := append(opts, db.WithValidateField("api_endpoint_rules")) + if err := fv(ctx, m.GetApiEndpointRules(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["ip_allowed_list_choice"]; exists { + val := m.GetIpAllowedListChoice() + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetIpAllowedListChoice().(type) { + case *APIRateLimit_NoIpAllowedList: + if fv, exists := v.FldValidators["ip_allowed_list_choice.no_ip_allowed_list"]; exists { + val := m.GetIpAllowedListChoice().(*APIRateLimit_NoIpAllowedList).NoIpAllowedList + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("no_ip_allowed_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIRateLimit_IpAllowedList: + if fv, exists := v.FldValidators["ip_allowed_list_choice.ip_allowed_list"]; exists { + val := m.GetIpAllowedListChoice().(*APIRateLimit_IpAllowedList).IpAllowedList + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("ip_allowed_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIRateLimit_CustomIpAllowedList: + if fv, exists := v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"]; exists { + val := m.GetIpAllowedListChoice().(*APIRateLimit_CustomIpAllowedList).CustomIpAllowedList + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("custom_ip_allowed_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APIRateLimit_BypassRateLimitingRules: + if fv, exists := v.FldValidators["ip_allowed_list_choice.bypass_rate_limiting_rules"]; exists { + val := m.GetIpAllowedListChoice().(*APIRateLimit_BypassRateLimitingRules).BypassRateLimitingRules + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("bypass_rate_limiting_rules"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["server_url_rules"]; exists { + vOpts := append(opts, db.WithValidateField("server_url_rules")) + if err := fv(ctx, m.GetServerUrlRules(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPIRateLimitValidator = func() *ValidateAPIRateLimit { + v := &ValidateAPIRateLimit{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhIpAllowedListChoice := v.IpAllowedListChoiceValidationRuleHandler + rulesIpAllowedListChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhIpAllowedListChoice(rulesIpAllowedListChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIRateLimit.ip_allowed_list_choice: %s", err) + panic(errMsg) + } + v.FldValidators["ip_allowed_list_choice"] = vFn + + vrhServerUrlRules := v.ServerUrlRulesValidationRuleHandler + rulesServerUrlRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "20", + } + vFn, err = vrhServerUrlRules(rulesServerUrlRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIRateLimit.server_url_rules: %s", err) + panic(errMsg) + } + v.FldValidators["server_url_rules"] = vFn + + vrhApiEndpointRules := v.ApiEndpointRulesValidationRuleHandler + rulesApiEndpointRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "20", + } + vFn, err = vrhApiEndpointRules(rulesApiEndpointRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APIRateLimit.api_endpoint_rules: %s", err) + panic(errMsg) + } + v.FldValidators["api_endpoint_rules"] = vFn + + v.FldValidators["ip_allowed_list_choice.ip_allowed_list"] = ves_io_schema_views.PrefixStringListTypeValidator().Validate + v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"] = CustomIpAllowedListValidator().Validate + v.FldValidators["ip_allowed_list_choice.bypass_rate_limiting_rules"] = BypassRateLimitingRulesValidator().Validate + + return v +}() + +func APIRateLimitValidator() db.Validator { + return DefaultAPIRateLimitValidator +} + +// augmented methods on protoc/std generated struct + +func (m *APISpecificationSettings) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *APISpecificationSettings) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *APISpecificationSettings) DeepCopy() *APISpecificationSettings { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &APISpecificationSettings{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *APISpecificationSettings) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *APISpecificationSettings) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return APISpecificationSettingsValidator().Validate(ctx, m, opts...) +} + +func (m *APISpecificationSettings) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetApiDefinitionDRefInfo() + +} + +func (m *APISpecificationSettings) GetApiDefinitionDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetApiDefinition() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("api_definition.Object") + dri := db.DRefInfo{ + RefdType: "api_definition.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "api_definition", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetApiDefinitionDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *APISpecificationSettings) GetApiDefinitionDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "api_definition.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: api_definition") + } + + vref := m.GetApiDefinition() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "api_definition.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateAPISpecificationSettings struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAPISpecificationSettings) ValidationTargetChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for validation_target_choice") + } + return validatorFn, nil +} + +func (v *ValidateAPISpecificationSettings) ApiDefinitionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for api_definition") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAPISpecificationSettings) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*APISpecificationSettings) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *APISpecificationSettings got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_definition"]; exists { + + vOpts := append(opts, db.WithValidateField("api_definition")) + if err := fv(ctx, m.GetApiDefinition(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["validation_target_choice"]; exists { + val := m.GetValidationTargetChoice() + vOpts := append(opts, + db.WithValidateField("validation_target_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetValidationTargetChoice().(type) { + case *APISpecificationSettings_ValidationDisabled: + if fv, exists := v.FldValidators["validation_target_choice.validation_disabled"]; exists { + val := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationDisabled).ValidationDisabled + vOpts := append(opts, + db.WithValidateField("validation_target_choice"), + db.WithValidateField("validation_disabled"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APISpecificationSettings_ValidationAllSpecEndpoints: + if fv, exists := v.FldValidators["validation_target_choice.validation_all_spec_endpoints"]; exists { + val := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationAllSpecEndpoints).ValidationAllSpecEndpoints + vOpts := append(opts, + db.WithValidateField("validation_target_choice"), + db.WithValidateField("validation_all_spec_endpoints"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *APISpecificationSettings_ValidationCustomList: + if fv, exists := v.FldValidators["validation_target_choice.validation_custom_list"]; exists { + val := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationCustomList).ValidationCustomList + vOpts := append(opts, + db.WithValidateField("validation_target_choice"), + db.WithValidateField("validation_custom_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAPISpecificationSettingsValidator = func() *ValidateAPISpecificationSettings { + v := &ValidateAPISpecificationSettings{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhValidationTargetChoice := v.ValidationTargetChoiceValidationRuleHandler + rulesValidationTargetChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhValidationTargetChoice(rulesValidationTargetChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APISpecificationSettings.validation_target_choice: %s", err) + panic(errMsg) + } + v.FldValidators["validation_target_choice"] = vFn + + vrhApiDefinition := v.ApiDefinitionValidationRuleHandler + rulesApiDefinition := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhApiDefinition(rulesApiDefinition) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for APISpecificationSettings.api_definition: %s", err) + panic(errMsg) + } + v.FldValidators["api_definition"] = vFn + + v.FldValidators["validation_target_choice.validation_all_spec_endpoints"] = OpenApiValidationAllSpecEndpointsSettingsValidator().Validate + v.FldValidators["validation_target_choice.validation_custom_list"] = ValidateApiBySpecRuleValidator().Validate + + return v +}() + +func APISpecificationSettingsValidator() db.Validator { + return DefaultAPISpecificationSettingsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ApiDefinitionList) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ApiDefinitionList) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ApiDefinitionList) DeepCopy() *ApiDefinitionList { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ApiDefinitionList{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ApiDefinitionList) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ApiDefinitionList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ApiDefinitionListValidator().Validate(ctx, m, opts...) +} + +func (m *ApiDefinitionList) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetApiDefinitionsDRefInfo() + +} + +func (m *ApiDefinitionList) GetApiDefinitionsDRefInfo() ([]db.DRefInfo, error) { + vrefs := m.GetApiDefinitions() + if len(vrefs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(vrefs)) + for i, vref := range vrefs { + if vref == nil { + return nil, fmt.Errorf("ApiDefinitionList.api_definitions[%d] has a nil value", i) + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("api_definition.Object") + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "api_definition.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "api_definitions", + Ref: vdRef, + }) + } + return drInfos, nil + +} + +// GetApiDefinitionsDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ApiDefinitionList) GetApiDefinitionsDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "api_definition.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: api_definition") + } + for i, vref := range m.GetApiDefinitions() { + if vref == nil { + return nil, fmt.Errorf("ApiDefinitionList.api_definitions[%d] has a nil value", i) + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "api_definition.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateApiDefinitionList struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateApiDefinitionList) ApiDefinitionsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_definitions") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_definitions") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated api_definitions") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items api_definitions") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateApiDefinitionList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ApiDefinitionList) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ApiDefinitionList got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_definitions"]; exists { + vOpts := append(opts, db.WithValidateField("api_definitions")) + if err := fv(ctx, m.GetApiDefinitions(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultApiDefinitionListValidator = func() *ValidateApiDefinitionList { + v := &ValidateApiDefinitionList{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhApiDefinitions := v.ApiDefinitionsValidationRuleHandler + rulesApiDefinitions := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhApiDefinitions(rulesApiDefinitions) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiDefinitionList.api_definitions: %s", err) + panic(errMsg) + } + v.FldValidators["api_definitions"] = vFn + + return v +}() + +func ApiDefinitionListValidator() db.Validator { + return DefaultApiDefinitionListValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ApiDiscoverySetting) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ApiDiscoverySetting) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ApiDiscoverySetting) DeepCopy() *ApiDiscoverySetting { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ApiDiscoverySetting{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ApiDiscoverySetting) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ApiDiscoverySetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ApiDiscoverySettingValidator().Validate(ctx, m, opts...) +} + +type ValidateApiDiscoverySetting struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateApiDiscoverySetting) LearnFromRedirectTrafficValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for learn_from_redirect_traffic") + } + return validatorFn, nil +} + +func (v *ValidateApiDiscoverySetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ApiDiscoverySetting) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ApiDiscoverySetting got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["discovered_api_settings"]; exists { + + vOpts := append(opts, db.WithValidateField("discovered_api_settings")) + if err := fv(ctx, m.GetDiscoveredApiSettings(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["learn_from_redirect_traffic"]; exists { + val := m.GetLearnFromRedirectTraffic() + vOpts := append(opts, + db.WithValidateField("learn_from_redirect_traffic"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetLearnFromRedirectTraffic().(type) { + case *ApiDiscoverySetting_DisableLearnFromRedirectTraffic: + if fv, exists := v.FldValidators["learn_from_redirect_traffic.disable_learn_from_redirect_traffic"]; exists { + val := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_DisableLearnFromRedirectTraffic).DisableLearnFromRedirectTraffic + vOpts := append(opts, + db.WithValidateField("learn_from_redirect_traffic"), + db.WithValidateField("disable_learn_from_redirect_traffic"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiDiscoverySetting_EnableLearnFromRedirectTraffic: + if fv, exists := v.FldValidators["learn_from_redirect_traffic.enable_learn_from_redirect_traffic"]; exists { + val := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_EnableLearnFromRedirectTraffic).EnableLearnFromRedirectTraffic + vOpts := append(opts, + db.WithValidateField("learn_from_redirect_traffic"), + db.WithValidateField("enable_learn_from_redirect_traffic"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["sensitive_data_detection_rules"]; exists { + + vOpts := append(opts, db.WithValidateField("sensitive_data_detection_rules")) + if err := fv(ctx, m.GetSensitiveDataDetectionRules(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultApiDiscoverySettingValidator = func() *ValidateApiDiscoverySetting { + v := &ValidateApiDiscoverySetting{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhLearnFromRedirectTraffic := v.LearnFromRedirectTrafficValidationRuleHandler + rulesLearnFromRedirectTraffic := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhLearnFromRedirectTraffic(rulesLearnFromRedirectTraffic) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiDiscoverySetting.learn_from_redirect_traffic: %s", err) + panic(errMsg) + } + v.FldValidators["learn_from_redirect_traffic"] = vFn + + v.FldValidators["sensitive_data_detection_rules"] = ves_io_schema_app_type.SensitiveDataDetectionRulesValidator().Validate + + v.FldValidators["discovered_api_settings"] = ves_io_schema_app_type.DiscoveredAPISettingsValidator().Validate + + return v +}() + +func ApiDiscoverySettingValidator() db.Validator { + return DefaultApiDiscoverySettingValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ApiEndpointDetails) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ApiEndpointDetails) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ApiEndpointDetails) DeepCopy() *ApiEndpointDetails { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ApiEndpointDetails{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ApiEndpointDetails) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ApiEndpointDetails) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ApiEndpointDetailsValidator().Validate(ctx, m, opts...) +} + +type ValidateApiEndpointDetails struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateApiEndpointDetails) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for path") + } + + return validatorFn, nil +} + +func (v *ValidateApiEndpointDetails) MethodsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.HttpMethod) + return int32(i) + } + // ves_io_schema.HttpMethod_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.HttpMethod_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for methods") + } + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.HttpMethod, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for methods") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ves_io_schema.HttpMethod) + if !ok { + return fmt.Errorf("Repeated validation expected []ves_io_schema.HttpMethod, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated methods") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items methods") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateApiEndpointDetails) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ApiEndpointDetails) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ApiEndpointDetails got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["methods"]; exists { + vOpts := append(opts, db.WithValidateField("methods")) + if err := fv(ctx, m.GetMethods(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["path"]; exists { + + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultApiEndpointDetailsValidator = func() *ValidateApiEndpointDetails { + v := &ValidateApiEndpointDetails{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true", + } + vFn, err = vrhPath(rulesPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointDetails.path: %s", err) + panic(errMsg) + } + v.FldValidators["path"] = vFn + + vrhMethods := v.MethodsValidationRuleHandler + rulesMethods := map[string]string{ + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhMethods(rulesMethods) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointDetails.methods: %s", err) + panic(errMsg) + } + v.FldValidators["methods"] = vFn + + return v +}() + +func ApiEndpointDetailsValidator() db.Validator { + return DefaultApiEndpointDetailsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ApiEndpointRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ApiEndpointRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ApiEndpointRule) DeepCopy() *ApiEndpointRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ApiEndpointRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ApiEndpointRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ApiEndpointRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ApiEndpointRuleValidator().Validate(ctx, m, opts...) +} + +func (m *ApiEndpointRule) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetClientMatcherDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetClientMatcherDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetRateLimiterChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimiterChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ApiEndpointRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { + if m.GetClientMatcher() == nil { + return nil, nil + } + + drInfos, err := m.GetClientMatcher().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "client_matcher." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ApiEndpointRule) GetRateLimiterChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimiterChoice() == nil { + return nil, nil + } + switch m.GetRateLimiterChoice().(type) { + case *ApiEndpointRule_InlineRateLimiter: + + drInfos, err := m.GetInlineRateLimiter().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetInlineRateLimiter().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "inline_rate_limiter." + dri.DRField + } + return drInfos, err + + case *ApiEndpointRule_RefRateLimiter: + + vref := m.GetRefRateLimiter() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("rate_limiter.Object") + dri := db.DRefInfo{ + RefdType: "rate_limiter.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "ref_rate_limiter", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } + +} + +type ValidateApiEndpointRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateApiEndpointRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + } + return validatorFn, nil +} + +func (v *ValidateApiEndpointRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + } + return oValidatorFn_SpecificDomain, nil +} + +func (v *ValidateApiEndpointRule) RateLimiterChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limiter_choice") + } + return validatorFn, nil +} + +func (v *ValidateApiEndpointRule) ApiEndpointPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_endpoint_path") + } + + return validatorFn, nil +} + +func (v *ValidateApiEndpointRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ApiEndpointRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ApiEndpointRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_endpoint_method"]; exists { + + vOpts := append(opts, db.WithValidateField("api_endpoint_method")) + if err := fv(ctx, m.GetApiEndpointMethod(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["api_endpoint_path"]; exists { + + vOpts := append(opts, db.WithValidateField("api_endpoint_path")) + if err := fv(ctx, m.GetApiEndpointPath(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["base_path"]; exists { + + vOpts := append(opts, db.WithValidateField("base_path")) + if err := fv(ctx, m.GetBasePath(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["client_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("client_matcher")) + if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["domain_choice"]; exists { + val := m.GetDomainChoice() + vOpts := append(opts, + db.WithValidateField("domain_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDomainChoice().(type) { + case *ApiEndpointRule_AnyDomain: + if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { + val := m.GetDomainChoice().(*ApiEndpointRule_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiEndpointRule_SpecificDomain: + if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { + val := m.GetDomainChoice().(*ApiEndpointRule_SpecificDomain).SpecificDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("specific_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["rate_limiter_choice"]; exists { + val := m.GetRateLimiterChoice() + vOpts := append(opts, + db.WithValidateField("rate_limiter_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetRateLimiterChoice().(type) { + case *ApiEndpointRule_InlineRateLimiter: + if fv, exists := v.FldValidators["rate_limiter_choice.inline_rate_limiter"]; exists { + val := m.GetRateLimiterChoice().(*ApiEndpointRule_InlineRateLimiter).InlineRateLimiter + vOpts := append(opts, + db.WithValidateField("rate_limiter_choice"), + db.WithValidateField("inline_rate_limiter"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ApiEndpointRule_RefRateLimiter: + if fv, exists := v.FldValidators["rate_limiter_choice.ref_rate_limiter"]; exists { + val := m.GetRateLimiterChoice().(*ApiEndpointRule_RefRateLimiter).RefRateLimiter + vOpts := append(opts, + db.WithValidateField("rate_limiter_choice"), + db.WithValidateField("ref_rate_limiter"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["request_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("request_matcher")) + if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultApiEndpointRuleValidator = func() *ValidateApiEndpointRule { + v := &ValidateApiEndpointRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDomainChoice := v.DomainChoiceValidationRuleHandler + rulesDomainChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDomainChoice(rulesDomainChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointRule.domain_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_choice"] = vFn + + vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler + rulesDomainChoiceSpecificDomain := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ApiEndpointRule.domain_choice_specific_domain: %s", err) + panic(errMsg) + } + + v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + + vrhRateLimiterChoice := v.RateLimiterChoiceValidationRuleHandler + rulesRateLimiterChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRateLimiterChoice(rulesRateLimiterChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointRule.rate_limiter_choice: %s", err) + panic(errMsg) + } + v.FldValidators["rate_limiter_choice"] = vFn + + vrhApiEndpointPath := v.ApiEndpointPathValidationRuleHandler + rulesApiEndpointPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "1024", + "ves.io.schema.rules.string.templated_http_path": "true", + } + vFn, err = vrhApiEndpointPath(rulesApiEndpointPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointRule.api_endpoint_path: %s", err) + panic(errMsg) + } + v.FldValidators["api_endpoint_path"] = vFn + + v.FldValidators["rate_limiter_choice.inline_rate_limiter"] = InlineRateLimiterValidator().Validate + v.FldValidators["rate_limiter_choice.ref_rate_limiter"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["api_endpoint_method"] = ves_io_schema_policy.HttpMethodMatcherTypeValidator().Validate + + v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate + + v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate + + return v +}() + +func ApiEndpointRuleValidator() db.Validator { + return DefaultApiEndpointRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Audiences) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Audiences) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Audiences) DeepCopy() *Audiences { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Audiences{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Audiences) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Audiences) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AudiencesValidator().Validate(ctx, m, opts...) +} + +type ValidateAudiences struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAudiences) AudiencesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for audiences") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for audiences") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated audiences") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items audiences") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateAudiences) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Audiences) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Audiences got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["audiences"]; exists { + vOpts := append(opts, db.WithValidateField("audiences")) + if err := fv(ctx, m.GetAudiences(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAudiencesValidator = func() *ValidateAudiences { + v := &ValidateAudiences{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAudiences := v.AudiencesValidationRuleHandler + rulesAudiences := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhAudiences(rulesAudiences) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for Audiences.audiences: %s", err) + panic(errMsg) + } + v.FldValidators["audiences"] = vFn + + return v +}() + +func AudiencesValidator() db.Validator { + return DefaultAudiencesValidator +} + +// augmented methods on protoc/std generated struct + +func (m *BasePathsType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *BasePathsType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *BasePathsType) DeepCopy() *BasePathsType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &BasePathsType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *BasePathsType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *BasePathsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BasePathsTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateBasePathsType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateBasePathsType) BasePathsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for base_paths") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for base_paths") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated base_paths") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items base_paths") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateBasePathsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*BasePathsType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *BasePathsType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["base_paths"]; exists { + vOpts := append(opts, db.WithValidateField("base_paths")) + if err := fv(ctx, m.GetBasePaths(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultBasePathsTypeValidator = func() *ValidateBasePathsType { + v := &ValidateBasePathsType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhBasePaths := v.BasePathsValidationRuleHandler + rulesBasePaths := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.http_path": "true", + "ves.io.schema.rules.repeated.items.string.not_empty": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhBasePaths(rulesBasePaths) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for BasePathsType.base_paths: %s", err) + panic(errMsg) + } + v.FldValidators["base_paths"] = vFn + + return v +}() + +func BasePathsTypeValidator() db.Validator { + return DefaultBasePathsTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *BypassRateLimitingRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *BypassRateLimitingRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *BypassRateLimitingRule) DeepCopy() *BypassRateLimitingRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &BypassRateLimitingRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *BypassRateLimitingRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *BypassRateLimitingRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BypassRateLimitingRuleValidator().Validate(ctx, m, opts...) +} + +func (m *BypassRateLimitingRule) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetClientMatcherDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *BypassRateLimitingRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { + if m.GetClientMatcher() == nil { + return nil, nil + } + + drInfos, err := m.GetClientMatcher().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "client_matcher." + dri.DRField + } + return drInfos, err + +} + +type ValidateBypassRateLimitingRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateBypassRateLimitingRule) DestinationTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for destination_type") + } + return validatorFn, nil +} + +func (v *ValidateBypassRateLimitingRule) DestinationTypeApiEndpointValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + return ApiEndpointDetailsValidator().Validate, nil +} + +func (v *ValidateBypassRateLimitingRule) DestinationTypeBasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_BasePath, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") + } + return oValidatorFn_BasePath, nil +} + +func (v *ValidateBypassRateLimitingRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + } + return validatorFn, nil +} + +func (v *ValidateBypassRateLimitingRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + } + return oValidatorFn_SpecificDomain, nil +} + +func (v *ValidateBypassRateLimitingRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*BypassRateLimitingRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *BypassRateLimitingRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["client_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("client_matcher")) + if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["destination_type"]; exists { + val := m.GetDestinationType() + vOpts := append(opts, + db.WithValidateField("destination_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDestinationType().(type) { + case *BypassRateLimitingRule_AnyUrl: + if fv, exists := v.FldValidators["destination_type.any_url"]; exists { + val := m.GetDestinationType().(*BypassRateLimitingRule_AnyUrl).AnyUrl + vOpts := append(opts, + db.WithValidateField("destination_type"), + db.WithValidateField("any_url"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *BypassRateLimitingRule_BasePath: + if fv, exists := v.FldValidators["destination_type.base_path"]; exists { + val := m.GetDestinationType().(*BypassRateLimitingRule_BasePath).BasePath + vOpts := append(opts, + db.WithValidateField("destination_type"), + db.WithValidateField("base_path"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *BypassRateLimitingRule_ApiEndpoint: + if fv, exists := v.FldValidators["destination_type.api_endpoint"]; exists { + val := m.GetDestinationType().(*BypassRateLimitingRule_ApiEndpoint).ApiEndpoint + vOpts := append(opts, + db.WithValidateField("destination_type"), + db.WithValidateField("api_endpoint"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *BypassRateLimitingRule_ApiGroups: + if fv, exists := v.FldValidators["destination_type.api_groups"]; exists { + val := m.GetDestinationType().(*BypassRateLimitingRule_ApiGroups).ApiGroups + vOpts := append(opts, + db.WithValidateField("destination_type"), + db.WithValidateField("api_groups"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["domain_choice"]; exists { + val := m.GetDomainChoice() + vOpts := append(opts, + db.WithValidateField("domain_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDomainChoice().(type) { + case *BypassRateLimitingRule_AnyDomain: + if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { + val := m.GetDomainChoice().(*BypassRateLimitingRule_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *BypassRateLimitingRule_SpecificDomain: + if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { + val := m.GetDomainChoice().(*BypassRateLimitingRule_SpecificDomain).SpecificDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("specific_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["request_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("request_matcher")) + if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultBypassRateLimitingRuleValidator = func() *ValidateBypassRateLimitingRule { + v := &ValidateBypassRateLimitingRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDestinationType := v.DestinationTypeValidationRuleHandler + rulesDestinationType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDestinationType(rulesDestinationType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for BypassRateLimitingRule.destination_type: %s", err) + panic(errMsg) + } + v.FldValidators["destination_type"] = vFn + + vrhDestinationTypeBasePath := v.DestinationTypeBasePathValidationRuleHandler + rulesDestinationTypeBasePath := map[string]string{ + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128", + } + vFnMap["destination_type.base_path"], err = vrhDestinationTypeBasePath(rulesDestinationTypeBasePath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field BypassRateLimitingRule.destination_type_base_path: %s", err) + panic(errMsg) + } + vrhDestinationTypeApiEndpoint := v.DestinationTypeApiEndpointValidationRuleHandler + rulesDestinationTypeApiEndpoint := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFnMap["destination_type.api_endpoint"], err = vrhDestinationTypeApiEndpoint(rulesDestinationTypeApiEndpoint) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field BypassRateLimitingRule.destination_type_api_endpoint: %s", err) + panic(errMsg) + } + + v.FldValidators["destination_type.base_path"] = vFnMap["destination_type.base_path"] + v.FldValidators["destination_type.api_endpoint"] = vFnMap["destination_type.api_endpoint"] + + vrhDomainChoice := v.DomainChoiceValidationRuleHandler + rulesDomainChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDomainChoice(rulesDomainChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for BypassRateLimitingRule.domain_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_choice"] = vFn + + vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler + rulesDomainChoiceSpecificDomain := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field BypassRateLimitingRule.domain_choice_specific_domain: %s", err) + panic(errMsg) + } + + v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + + v.FldValidators["destination_type.api_groups"] = APIGroupsValidator().Validate + + v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate + + v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate + + return v +}() + +func BypassRateLimitingRuleValidator() db.Validator { + return DefaultBypassRateLimitingRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *BypassRateLimitingRules) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *BypassRateLimitingRules) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *BypassRateLimitingRules) DeepCopy() *BypassRateLimitingRules { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &BypassRateLimitingRules{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *BypassRateLimitingRules) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *BypassRateLimitingRules) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BypassRateLimitingRulesValidator().Validate(ctx, m, opts...) +} + +func (m *BypassRateLimitingRules) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetBypassRateLimitingRulesDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *BypassRateLimitingRules) GetBypassRateLimitingRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetBypassRateLimitingRules() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetBypassRateLimitingRules() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetBypassRateLimitingRules() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("bypass_rate_limiting_rules[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateBypassRateLimitingRules struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateBypassRateLimitingRules) BypassRateLimitingRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for bypass_rate_limiting_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*BypassRateLimitingRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := BypassRateLimitingRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for bypass_rate_limiting_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*BypassRateLimitingRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*BypassRateLimitingRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated bypass_rate_limiting_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items bypass_rate_limiting_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateBypassRateLimitingRules) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*BypassRateLimitingRules) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *BypassRateLimitingRules got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["bypass_rate_limiting_rules"]; exists { + vOpts := append(opts, db.WithValidateField("bypass_rate_limiting_rules")) + if err := fv(ctx, m.GetBypassRateLimitingRules(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultBypassRateLimitingRulesValidator = func() *ValidateBypassRateLimitingRules { + v := &ValidateBypassRateLimitingRules{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhBypassRateLimitingRules := v.BypassRateLimitingRulesValidationRuleHandler + rulesBypassRateLimitingRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "20", + } + vFn, err = vrhBypassRateLimitingRules(rulesBypassRateLimitingRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for BypassRateLimitingRules.bypass_rate_limiting_rules: %s", err) + panic(errMsg) + } + v.FldValidators["bypass_rate_limiting_rules"] = vFn + + return v +}() + +func BypassRateLimitingRulesValidator() db.Validator { + return DefaultBypassRateLimitingRulesValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ChallengeRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ChallengeRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ChallengeRule) DeepCopy() *ChallengeRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ChallengeRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ChallengeRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ChallengeRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ChallengeRuleValidator().Validate(ctx, m, opts...) +} + +func (m *ChallengeRule) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSpecDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ChallengeRule) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateChallengeRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateChallengeRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateChallengeRule) SpecValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for spec") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema_service_policy_rule.ChallengeRuleSpecValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateChallengeRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ChallengeRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ChallengeRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultChallengeRuleValidator = func() *ValidateChallengeRule { + v := &ValidateChallengeRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ChallengeRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhSpec := v.SpecValidationRuleHandler + rulesSpec := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhSpec(rulesSpec) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ChallengeRule.spec: %s", err) + panic(errMsg) + } + v.FldValidators["spec"] = vFn + + return v +}() + +func ChallengeRuleValidator() db.Validator { + return DefaultChallengeRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ChallengeRuleList) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ChallengeRuleList) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ChallengeRuleList) DeepCopy() *ChallengeRuleList { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ChallengeRuleList{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ChallengeRuleList) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ChallengeRuleList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ChallengeRuleListValidator().Validate(ctx, m, opts...) +} + +func (m *ChallengeRuleList) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRulesDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ChallengeRuleList) GetRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetRules() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetRules() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRules() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("rules[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateChallengeRuleList struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateChallengeRuleList) RulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*ChallengeRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ChallengeRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ChallengeRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ChallengeRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateChallengeRuleList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ChallengeRuleList) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ChallengeRuleList got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["rules"]; exists { + vOpts := append(opts, db.WithValidateField("rules")) + if err := fv(ctx, m.GetRules(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultChallengeRuleListValidator = func() *ValidateChallengeRuleList { + v := &ValidateChallengeRuleList{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRules := v.RulesValidationRuleHandler + rulesRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhRules(rulesRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ChallengeRuleList.rules: %s", err) + panic(errMsg) + } + v.FldValidators["rules"] = vFn + + return v +}() + +func ChallengeRuleListValidator() db.Validator { + return DefaultChallengeRuleListValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CustomFallThroughMode) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CustomFallThroughMode) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CustomFallThroughMode) DeepCopy() *CustomFallThroughMode { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CustomFallThroughMode{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CustomFallThroughMode) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CustomFallThroughMode) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CustomFallThroughModeValidator().Validate(ctx, m, opts...) +} + +type ValidateCustomFallThroughMode struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCustomFallThroughMode) OpenApiValidationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for open_api_validation_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*FallThroughRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := FallThroughRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for open_api_validation_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*FallThroughRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*FallThroughRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated open_api_validation_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items open_api_validation_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateCustomFallThroughMode) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CustomFallThroughMode) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CustomFallThroughMode got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["open_api_validation_rules"]; exists { + vOpts := append(opts, db.WithValidateField("open_api_validation_rules")) + if err := fv(ctx, m.GetOpenApiValidationRules(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCustomFallThroughModeValidator = func() *ValidateCustomFallThroughMode { + v := &ValidateCustomFallThroughMode{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhOpenApiValidationRules := v.OpenApiValidationRulesValidationRuleHandler + rulesOpenApiValidationRules := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhOpenApiValidationRules(rulesOpenApiValidationRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CustomFallThroughMode.open_api_validation_rules: %s", err) + panic(errMsg) + } + v.FldValidators["open_api_validation_rules"] = vFn + + return v +}() + +func CustomFallThroughModeValidator() db.Validator { + return DefaultCustomFallThroughModeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CustomIpAllowedList) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CustomIpAllowedList) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CustomIpAllowedList) DeepCopy() *CustomIpAllowedList { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CustomIpAllowedList{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CustomIpAllowedList) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CustomIpAllowedList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CustomIpAllowedListValidator().Validate(ctx, m, opts...) +} + +func (m *CustomIpAllowedList) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetRateLimiterAllowedPrefixesDRefInfo() + +} + +func (m *CustomIpAllowedList) GetRateLimiterAllowedPrefixesDRefInfo() ([]db.DRefInfo, error) { + vrefs := m.GetRateLimiterAllowedPrefixes() + if len(vrefs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(vrefs)) + for i, vref := range vrefs { + if vref == nil { + return nil, fmt.Errorf("CustomIpAllowedList.rate_limiter_allowed_prefixes[%d] has a nil value", i) + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("ip_prefix_set.Object") + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "ip_prefix_set.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "rate_limiter_allowed_prefixes", + Ref: vdRef, + }) + } + return drInfos, nil + +} + +// GetRateLimiterAllowedPrefixesDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CustomIpAllowedList) GetRateLimiterAllowedPrefixesDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "ip_prefix_set.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: ip_prefix_set") + } + for i, vref := range m.GetRateLimiterAllowedPrefixes() { + if vref == nil { + return nil, fmt.Errorf("CustomIpAllowedList.rate_limiter_allowed_prefixes[%d] has a nil value", i) + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "ip_prefix_set.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateCustomIpAllowedList struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCustomIpAllowedList) RateLimiterAllowedPrefixesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for rate_limiter_allowed_prefixes") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rate_limiter_allowed_prefixes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated rate_limiter_allowed_prefixes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items rate_limiter_allowed_prefixes") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateCustomIpAllowedList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CustomIpAllowedList) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CustomIpAllowedList got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["rate_limiter_allowed_prefixes"]; exists { + vOpts := append(opts, db.WithValidateField("rate_limiter_allowed_prefixes")) + if err := fv(ctx, m.GetRateLimiterAllowedPrefixes(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCustomIpAllowedListValidator = func() *ValidateCustomIpAllowedList { + v := &ValidateCustomIpAllowedList{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhRateLimiterAllowedPrefixes := v.RateLimiterAllowedPrefixesValidationRuleHandler + rulesRateLimiterAllowedPrefixes := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "4", + "ves.io.schema.rules.repeated.min_items": "1", + } + vFn, err = vrhRateLimiterAllowedPrefixes(rulesRateLimiterAllowedPrefixes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CustomIpAllowedList.rate_limiter_allowed_prefixes: %s", err) + panic(errMsg) + } + v.FldValidators["rate_limiter_allowed_prefixes"] = vFn + + return v +}() + +func CustomIpAllowedListValidator() db.Validator { + return DefaultCustomIpAllowedListValidator +} + +// augmented methods on protoc/std generated struct + +func (m *EnableChallenge) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *EnableChallenge) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *EnableChallenge) DeepCopy() *EnableChallenge { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &EnableChallenge{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *EnableChallenge) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *EnableChallenge) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return EnableChallengeValidator().Validate(ctx, m, opts...) +} + +func (m *EnableChallenge) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetMaliciousUserMitigationChoiceDRefInfo() + +} + +func (m *EnableChallenge) GetMaliciousUserMitigationChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetMaliciousUserMitigationChoice().(type) { + case *EnableChallenge_DefaultMitigationSettings: + + return nil, nil + + case *EnableChallenge_MaliciousUserMitigation: + + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("malicious_user_mitigation.Object") + dri := db.DRefInfo{ + RefdType: "malicious_user_mitigation.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "malicious_user_mitigation", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } +} + +// GetMaliciousUserMitigationChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *EnableChallenge) GetMaliciousUserMitigationChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetMaliciousUserMitigationChoice().(type) { + case *EnableChallenge_DefaultMitigationSettings: + + case *EnableChallenge_MaliciousUserMitigation: + refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") + } + + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "malicious_user_mitigation.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + } + + return entries, nil +} + +type ValidateEnableChallenge struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateEnableChallenge) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*EnableChallenge) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *EnableChallenge got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetCaptchaChallengeParametersChoice().(type) { + case *EnableChallenge_DefaultCaptchaChallengeParameters: + if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.default_captcha_challenge_parameters"]; exists { + val := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_DefaultCaptchaChallengeParameters).DefaultCaptchaChallengeParameters + vOpts := append(opts, + db.WithValidateField("captcha_challenge_parameters_choice"), + db.WithValidateField("default_captcha_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *EnableChallenge_CaptchaChallengeParameters: + if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"]; exists { + val := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_CaptchaChallengeParameters).CaptchaChallengeParameters + vOpts := append(opts, + db.WithValidateField("captcha_challenge_parameters_choice"), + db.WithValidateField("captcha_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + switch m.GetJsChallengeParametersChoice().(type) { + case *EnableChallenge_DefaultJsChallengeParameters: + if fv, exists := v.FldValidators["js_challenge_parameters_choice.default_js_challenge_parameters"]; exists { + val := m.GetJsChallengeParametersChoice().(*EnableChallenge_DefaultJsChallengeParameters).DefaultJsChallengeParameters + vOpts := append(opts, + db.WithValidateField("js_challenge_parameters_choice"), + db.WithValidateField("default_js_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *EnableChallenge_JsChallengeParameters: + if fv, exists := v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"]; exists { + val := m.GetJsChallengeParametersChoice().(*EnableChallenge_JsChallengeParameters).JsChallengeParameters + vOpts := append(opts, + db.WithValidateField("js_challenge_parameters_choice"), + db.WithValidateField("js_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + switch m.GetMaliciousUserMitigationChoice().(type) { + case *EnableChallenge_DefaultMitigationSettings: + if fv, exists := v.FldValidators["malicious_user_mitigation_choice.default_mitigation_settings"]; exists { + val := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_DefaultMitigationSettings).DefaultMitigationSettings + vOpts := append(opts, + db.WithValidateField("malicious_user_mitigation_choice"), + db.WithValidateField("default_mitigation_settings"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *EnableChallenge_MaliciousUserMitigation: + if fv, exists := v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"]; exists { + val := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_MaliciousUserMitigation).MaliciousUserMitigation + vOpts := append(opts, + db.WithValidateField("malicious_user_mitigation_choice"), + db.WithValidateField("malicious_user_mitigation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultEnableChallengeValidator = func() *ValidateEnableChallenge { + v := &ValidateEnableChallenge{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + + v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + + v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func EnableChallengeValidator() db.Validator { + return DefaultEnableChallengeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *FallThroughRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *FallThroughRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *FallThroughRule) DeepCopy() *FallThroughRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &FallThroughRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *FallThroughRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *FallThroughRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return FallThroughRuleValidator().Validate(ctx, m, opts...) +} + +type ValidateFallThroughRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateFallThroughRule) ActionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for action_choice") + } + return validatorFn, nil +} + +func (v *ValidateFallThroughRule) ConditionTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for condition_type_choice") + } + return validatorFn, nil +} + +func (v *ValidateFallThroughRule) ConditionTypeChoiceBasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_BasePath, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") + } + return oValidatorFn_BasePath, nil +} +func (v *ValidateFallThroughRule) ConditionTypeChoiceApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ApiGroup, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") + } + return oValidatorFn_ApiGroup, nil +} + +func (v *ValidateFallThroughRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateFallThroughRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*FallThroughRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *FallThroughRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action_choice"]; exists { + val := m.GetActionChoice() + vOpts := append(opts, + db.WithValidateField("action_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetActionChoice().(type) { + case *FallThroughRule_ActionSkip: + if fv, exists := v.FldValidators["action_choice.action_skip"]; exists { + val := m.GetActionChoice().(*FallThroughRule_ActionSkip).ActionSkip + vOpts := append(opts, + db.WithValidateField("action_choice"), + db.WithValidateField("action_skip"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FallThroughRule_ActionReport: + if fv, exists := v.FldValidators["action_choice.action_report"]; exists { + val := m.GetActionChoice().(*FallThroughRule_ActionReport).ActionReport + vOpts := append(opts, + db.WithValidateField("action_choice"), + db.WithValidateField("action_report"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FallThroughRule_ActionBlock: + if fv, exists := v.FldValidators["action_choice.action_block"]; exists { + val := m.GetActionChoice().(*FallThroughRule_ActionBlock).ActionBlock + vOpts := append(opts, + db.WithValidateField("action_choice"), + db.WithValidateField("action_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["condition_type_choice"]; exists { + val := m.GetConditionTypeChoice() + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetConditionTypeChoice().(type) { + case *FallThroughRule_BasePath: + if fv, exists := v.FldValidators["condition_type_choice.base_path"]; exists { + val := m.GetConditionTypeChoice().(*FallThroughRule_BasePath).BasePath + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + db.WithValidateField("base_path"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FallThroughRule_ApiGroup: + if fv, exists := v.FldValidators["condition_type_choice.api_group"]; exists { + val := m.GetConditionTypeChoice().(*FallThroughRule_ApiGroup).ApiGroup + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + db.WithValidateField("api_group"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *FallThroughRule_ApiEndpoint: + if fv, exists := v.FldValidators["condition_type_choice.api_endpoint"]; exists { + val := m.GetConditionTypeChoice().(*FallThroughRule_ApiEndpoint).ApiEndpoint + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + db.WithValidateField("api_endpoint"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultFallThroughRuleValidator = func() *ValidateFallThroughRule { + v := &ValidateFallThroughRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhActionChoice := v.ActionChoiceValidationRuleHandler + rulesActionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhActionChoice(rulesActionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FallThroughRule.action_choice: %s", err) + panic(errMsg) + } + v.FldValidators["action_choice"] = vFn + + vrhConditionTypeChoice := v.ConditionTypeChoiceValidationRuleHandler + rulesConditionTypeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhConditionTypeChoice(rulesConditionTypeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FallThroughRule.condition_type_choice: %s", err) + panic(errMsg) + } + v.FldValidators["condition_type_choice"] = vFn + + vrhConditionTypeChoiceBasePath := v.ConditionTypeChoiceBasePathValidationRuleHandler + rulesConditionTypeChoiceBasePath := map[string]string{ + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128", + } + vFnMap["condition_type_choice.base_path"], err = vrhConditionTypeChoiceBasePath(rulesConditionTypeChoiceBasePath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field FallThroughRule.condition_type_choice_base_path: %s", err) + panic(errMsg) + } + vrhConditionTypeChoiceApiGroup := v.ConditionTypeChoiceApiGroupValidationRuleHandler + rulesConditionTypeChoiceApiGroup := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + } + vFnMap["condition_type_choice.api_group"], err = vrhConditionTypeChoiceApiGroup(rulesConditionTypeChoiceApiGroup) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field FallThroughRule.condition_type_choice_api_group: %s", err) + panic(errMsg) + } + + v.FldValidators["condition_type_choice.base_path"] = vFnMap["condition_type_choice.base_path"] + v.FldValidators["condition_type_choice.api_group"] = vFnMap["condition_type_choice.api_group"] + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for FallThroughRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + v.FldValidators["condition_type_choice.api_endpoint"] = ApiEndpointDetailsValidator().Validate + + return v +}() + +func FallThroughRuleValidator() db.Validator { + return DefaultFallThroughRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *HttpHeaderMatcherList) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *HttpHeaderMatcherList) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *HttpHeaderMatcherList) DeepCopy() *HttpHeaderMatcherList { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &HttpHeaderMatcherList{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *HttpHeaderMatcherList) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *HttpHeaderMatcherList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return HttpHeaderMatcherListValidator().Validate(ctx, m, opts...) +} + +type ValidateHttpHeaderMatcherList struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateHttpHeaderMatcherList) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderMatcherType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated headers") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items headers") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateHttpHeaderMatcherList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*HttpHeaderMatcherList) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *HttpHeaderMatcherList got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["headers"]; exists { + vOpts := append(opts, db.WithValidateField("headers")) + if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultHttpHeaderMatcherListValidator = func() *ValidateHttpHeaderMatcherList { + v := &ValidateHttpHeaderMatcherList{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhHeaders := v.HeadersValidationRuleHandler + rulesHeaders := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + } + vFn, err = vrhHeaders(rulesHeaders) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for HttpHeaderMatcherList.headers: %s", err) + panic(errMsg) + } + v.FldValidators["headers"] = vFn + + return v +}() + +func HttpHeaderMatcherListValidator() db.Validator { + return DefaultHttpHeaderMatcherListValidator +} + +// augmented methods on protoc/std generated struct + +func (m *IPThreatCategoryListType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *IPThreatCategoryListType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *IPThreatCategoryListType) DeepCopy() *IPThreatCategoryListType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &IPThreatCategoryListType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *IPThreatCategoryListType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *IPThreatCategoryListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return IPThreatCategoryListTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateIPThreatCategoryListType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateIPThreatCategoryListType) IpThreatCategoriesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema_policy.IPThreatCategory) + return int32(i) + } + // ves_io_schema_policy.IPThreatCategory_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema_policy.IPThreatCategory_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ip_threat_categories") + } + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema_policy.IPThreatCategory, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ip_threat_categories") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ves_io_schema_policy.IPThreatCategory) + if !ok { + return fmt.Errorf("Repeated validation expected []ves_io_schema_policy.IPThreatCategory, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated ip_threat_categories") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items ip_threat_categories") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateIPThreatCategoryListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*IPThreatCategoryListType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *IPThreatCategoryListType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ip_threat_categories"]; exists { + vOpts := append(opts, db.WithValidateField("ip_threat_categories")) + if err := fv(ctx, m.GetIpThreatCategories(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultIPThreatCategoryListTypeValidator = func() *ValidateIPThreatCategoryListType { + v := &ValidateIPThreatCategoryListType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhIpThreatCategories := v.IpThreatCategoriesValidationRuleHandler + rulesIpThreatCategories := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhIpThreatCategories(rulesIpThreatCategories) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for IPThreatCategoryListType.ip_threat_categories: %s", err) + panic(errMsg) + } + v.FldValidators["ip_threat_categories"] = vFn + + return v +}() + +func IPThreatCategoryListTypeValidator() db.Validator { + return DefaultIPThreatCategoryListTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *InlineRateLimiter) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *InlineRateLimiter) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *InlineRateLimiter) DeepCopy() *InlineRateLimiter { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &InlineRateLimiter{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *InlineRateLimiter) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *InlineRateLimiter) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return InlineRateLimiterValidator().Validate(ctx, m, opts...) +} + +func (m *InlineRateLimiter) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetCountByChoiceDRefInfo() + +} + +func (m *InlineRateLimiter) GetCountByChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetCountByChoice().(type) { + case *InlineRateLimiter_UseHttpLbUserId: + + return nil, nil + + case *InlineRateLimiter_RefUserId: + + vref := m.GetRefUserId() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("user_identification.Object") + dri := db.DRefInfo{ + RefdType: "user_identification.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "ref_user_id", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } +} + +// GetCountByChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *InlineRateLimiter) GetCountByChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetCountByChoice().(type) { + case *InlineRateLimiter_UseHttpLbUserId: + + case *InlineRateLimiter_RefUserId: + refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") + } + + vref := m.GetRefUserId() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "user_identification.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + } + + return entries, nil +} + +type ValidateInlineRateLimiter struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateInlineRateLimiter) CountByChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for count_by_choice") + } + return validatorFn, nil +} + +func (v *ValidateInlineRateLimiter) ThresholdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for threshold") + } + + return validatorFn, nil +} + +func (v *ValidateInlineRateLimiter) UnitValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema_rate_limiter.RateLimitPeriodUnit) + return int32(i) + } + // ves_io_schema_rate_limiter.RateLimitPeriodUnit_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema_rate_limiter.RateLimitPeriodUnit_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for unit") + } + + return validatorFn, nil +} + +func (v *ValidateInlineRateLimiter) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*InlineRateLimiter) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *InlineRateLimiter got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["count_by_choice"]; exists { + val := m.GetCountByChoice() + vOpts := append(opts, + db.WithValidateField("count_by_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetCountByChoice().(type) { + case *InlineRateLimiter_UseHttpLbUserId: + if fv, exists := v.FldValidators["count_by_choice.use_http_lb_user_id"]; exists { + val := m.GetCountByChoice().(*InlineRateLimiter_UseHttpLbUserId).UseHttpLbUserId + vOpts := append(opts, + db.WithValidateField("count_by_choice"), + db.WithValidateField("use_http_lb_user_id"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *InlineRateLimiter_RefUserId: + if fv, exists := v.FldValidators["count_by_choice.ref_user_id"]; exists { + val := m.GetCountByChoice().(*InlineRateLimiter_RefUserId).RefUserId + vOpts := append(opts, + db.WithValidateField("count_by_choice"), + db.WithValidateField("ref_user_id"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["threshold"]; exists { + + vOpts := append(opts, db.WithValidateField("threshold")) + if err := fv(ctx, m.GetThreshold(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["unit"]; exists { + + vOpts := append(opts, db.WithValidateField("unit")) + if err := fv(ctx, m.GetUnit(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultInlineRateLimiterValidator = func() *ValidateInlineRateLimiter { + v := &ValidateInlineRateLimiter{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCountByChoice := v.CountByChoiceValidationRuleHandler + rulesCountByChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhCountByChoice(rulesCountByChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for InlineRateLimiter.count_by_choice: %s", err) + panic(errMsg) + } + v.FldValidators["count_by_choice"] = vFn + + vrhThreshold := v.ThresholdValidationRuleHandler + rulesThreshold := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "8192", + } + vFn, err = vrhThreshold(rulesThreshold) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for InlineRateLimiter.threshold: %s", err) + panic(errMsg) + } + v.FldValidators["threshold"] = vFn + + vrhUnit := v.UnitValidationRuleHandler + rulesUnit := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhUnit(rulesUnit) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for InlineRateLimiter.unit: %s", err) + panic(errMsg) + } + v.FldValidators["unit"] = vFn + + v.FldValidators["count_by_choice.ref_user_id"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func InlineRateLimiterValidator() db.Validator { + return DefaultInlineRateLimiterValidator +} + +// augmented methods on protoc/std generated struct + +func (m *JWKS) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *JWKS) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *JWKS) String() string { + if m == nil { + return "" + } + copy := m.DeepCopy() + copy.Redact(context.Background()) + return copy.string() +} + +func (m *JWKS) GoString() string { + copy := m.DeepCopy() + copy.Redact(context.Background()) + return copy.goString() +} + +// Redact squashes sensitive info in m (in-place) +func (m *JWKS) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + m.Cleartext = "REDACTED" + + return nil +} + +func (m *JWKS) DeepCopy() *JWKS { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &JWKS{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *JWKS) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *JWKS) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return JWKSValidator().Validate(ctx, m, opts...) +} + +type ValidateJWKS struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateJWKS) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*JWKS) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *JWKS got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["cleartext"]; exists { + + vOpts := append(opts, db.WithValidateField("cleartext")) + if err := fv(ctx, m.GetCleartext(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultJWKSValidator = func() *ValidateJWKS { + v := &ValidateJWKS{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func JWKSValidator() db.Validator { + return DefaultJWKSValidator +} + +// augmented methods on protoc/std generated struct + +func (m *JWTValidation) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *JWTValidation) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *JWTValidation) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetJwksConfig().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting JWTValidation.jwks_config") + } + + return nil +} + +func (m *JWTValidation) DeepCopy() *JWTValidation { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &JWTValidation{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *JWTValidation) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *JWTValidation) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return JWTValidationValidator().Validate(ctx, m, opts...) +} + +type ValidateJWTValidation struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateJWTValidation) JwksConfigurationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for jwks_configuration") + } + return validatorFn, nil +} + +func (v *ValidateJWTValidation) TargetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for target") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := TargetValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateJWTValidation) TokenLocationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for token_location") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := TokenLocationValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateJWTValidation) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for action") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.ActionValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateJWTValidation) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*JWTValidation) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *JWTValidation got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + + vOpts := append(opts, db.WithValidateField("action")) + if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["jwks_configuration"]; exists { + val := m.GetJwksConfiguration() + vOpts := append(opts, + db.WithValidateField("jwks_configuration"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetJwksConfiguration().(type) { + case *JWTValidation_AuthServerUri: + if fv, exists := v.FldValidators["jwks_configuration.auth_server_uri"]; exists { + val := m.GetJwksConfiguration().(*JWTValidation_AuthServerUri).AuthServerUri + vOpts := append(opts, + db.WithValidateField("jwks_configuration"), + db.WithValidateField("auth_server_uri"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *JWTValidation_Jwks: + if fv, exists := v.FldValidators["jwks_configuration.jwks"]; exists { + val := m.GetJwksConfiguration().(*JWTValidation_Jwks).Jwks + vOpts := append(opts, + db.WithValidateField("jwks_configuration"), + db.WithValidateField("jwks"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *JWTValidation_JwksConfig: + if fv, exists := v.FldValidators["jwks_configuration.jwks_config"]; exists { + val := m.GetJwksConfiguration().(*JWTValidation_JwksConfig).JwksConfig + vOpts := append(opts, + db.WithValidateField("jwks_configuration"), + db.WithValidateField("jwks_config"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["mandatory_claims"]; exists { + + vOpts := append(opts, db.WithValidateField("mandatory_claims")) + if err := fv(ctx, m.GetMandatoryClaims(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["reserved_claims"]; exists { + + vOpts := append(opts, db.WithValidateField("reserved_claims")) + if err := fv(ctx, m.GetReservedClaims(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["target"]; exists { + + vOpts := append(opts, db.WithValidateField("target")) + if err := fv(ctx, m.GetTarget(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["token_location"]; exists { + + vOpts := append(opts, db.WithValidateField("token_location")) + if err := fv(ctx, m.GetTokenLocation(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultJWTValidationValidator = func() *ValidateJWTValidation { + v := &ValidateJWTValidation{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhJwksConfiguration := v.JwksConfigurationValidationRuleHandler + rulesJwksConfiguration := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhJwksConfiguration(rulesJwksConfiguration) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.jwks_configuration: %s", err) + panic(errMsg) + } + v.FldValidators["jwks_configuration"] = vFn + + vrhTarget := v.TargetValidationRuleHandler + rulesTarget := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhTarget(rulesTarget) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.target: %s", err) + panic(errMsg) + } + v.FldValidators["target"] = vFn + + vrhTokenLocation := v.TokenLocationValidationRuleHandler + rulesTokenLocation := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhTokenLocation(rulesTokenLocation) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.token_location: %s", err) + panic(errMsg) + } + v.FldValidators["token_location"] = vFn + + vrhAction := v.ActionValidationRuleHandler + rulesAction := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhAction(rulesAction) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.action: %s", err) + panic(errMsg) + } + v.FldValidators["action"] = vFn + + v.FldValidators["reserved_claims"] = ReservedClaimsValidator().Validate + + v.FldValidators["mandatory_claims"] = MandatoryClaimsValidator().Validate + + return v +}() + +func JWTValidationValidator() db.Validator { + return DefaultJWTValidationValidator +} + +// augmented methods on protoc/std generated struct + +func (m *MandatoryClaims) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *MandatoryClaims) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *MandatoryClaims) DeepCopy() *MandatoryClaims { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &MandatoryClaims{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *MandatoryClaims) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *MandatoryClaims) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return MandatoryClaimsValidator().Validate(ctx, m, opts...) +} + +type ValidateMandatoryClaims struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateMandatoryClaims) ClaimNamesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for claim_names") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for claim_names") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated claim_names") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items claim_names") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateMandatoryClaims) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*MandatoryClaims) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *MandatoryClaims got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["claim_names"]; exists { + vOpts := append(opts, db.WithValidateField("claim_names")) + if err := fv(ctx, m.GetClaimNames(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultMandatoryClaimsValidator = func() *ValidateMandatoryClaims { + v := &ValidateMandatoryClaims{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhClaimNames := v.ClaimNamesValidationRuleHandler + rulesClaimNames := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhClaimNames(rulesClaimNames) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for MandatoryClaims.claim_names: %s", err) + panic(errMsg) + } + v.FldValidators["claim_names"] = vFn + + return v +}() + +func MandatoryClaimsValidator() db.Validator { + return DefaultMandatoryClaimsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiFallThroughMode) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiFallThroughMode) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiFallThroughMode) DeepCopy() *OpenApiFallThroughMode { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiFallThroughMode{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiFallThroughMode) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiFallThroughMode) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiFallThroughModeValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiFallThroughMode struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiFallThroughMode) FallThroughModeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for fall_through_mode_choice") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiFallThroughMode) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiFallThroughMode) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiFallThroughMode got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fall_through_mode_choice"]; exists { + val := m.GetFallThroughModeChoice() + vOpts := append(opts, + db.WithValidateField("fall_through_mode_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetFallThroughModeChoice().(type) { + case *OpenApiFallThroughMode_FallThroughModeAllow: + if fv, exists := v.FldValidators["fall_through_mode_choice.fall_through_mode_allow"]; exists { + val := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeAllow).FallThroughModeAllow + vOpts := append(opts, + db.WithValidateField("fall_through_mode_choice"), + db.WithValidateField("fall_through_mode_allow"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiFallThroughMode_FallThroughModeCustom: + if fv, exists := v.FldValidators["fall_through_mode_choice.fall_through_mode_custom"]; exists { + val := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeCustom).FallThroughModeCustom + vOpts := append(opts, + db.WithValidateField("fall_through_mode_choice"), + db.WithValidateField("fall_through_mode_custom"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiFallThroughModeValidator = func() *ValidateOpenApiFallThroughMode { + v := &ValidateOpenApiFallThroughMode{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhFallThroughModeChoice := v.FallThroughModeChoiceValidationRuleHandler + rulesFallThroughModeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhFallThroughModeChoice(rulesFallThroughModeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiFallThroughMode.fall_through_mode_choice: %s", err) + panic(errMsg) + } + v.FldValidators["fall_through_mode_choice"] = vFn + + v.FldValidators["fall_through_mode_choice.fall_through_mode_custom"] = CustomFallThroughModeValidator().Validate + + return v +}() + +func OpenApiFallThroughModeValidator() db.Validator { + return DefaultOpenApiFallThroughModeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiValidationAllSpecEndpointsSettings) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) DeepCopy() *OpenApiValidationAllSpecEndpointsSettings { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiValidationAllSpecEndpointsSettings{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiValidationAllSpecEndpointsSettings) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiValidationAllSpecEndpointsSettingsValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiValidationAllSpecEndpointsSettings struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiValidationAllSpecEndpointsSettings) ValidationModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for validation_mode") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := OpenApiValidationModeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationAllSpecEndpointsSettings) FallThroughModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for fall_through_mode") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := OpenApiFallThroughModeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationAllSpecEndpointsSettings) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiValidationAllSpecEndpointsSettings) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiValidationAllSpecEndpointsSettings got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fall_through_mode"]; exists { + + vOpts := append(opts, db.WithValidateField("fall_through_mode")) + if err := fv(ctx, m.GetFallThroughMode(), vOpts...); err != nil { + return err + } + + } + + switch m.GetOversizedBodyChoice().(type) { + case *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation: + if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_skip_validation"]; exists { + val := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation).OversizedBodySkipValidation + vOpts := append(opts, + db.WithValidateField("oversized_body_choice"), + db.WithValidateField("oversized_body_skip_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation: + if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_fail_validation"]; exists { + val := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation).OversizedBodyFailValidation + vOpts := append(opts, + db.WithValidateField("oversized_body_choice"), + db.WithValidateField("oversized_body_fail_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["settings"]; exists { + + vOpts := append(opts, db.WithValidateField("settings")) + if err := fv(ctx, m.GetSettings(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["validation_mode"]; exists { + + vOpts := append(opts, db.WithValidateField("validation_mode")) + if err := fv(ctx, m.GetValidationMode(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiValidationAllSpecEndpointsSettingsValidator = func() *ValidateOpenApiValidationAllSpecEndpointsSettings { + v := &ValidateOpenApiValidationAllSpecEndpointsSettings{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhValidationMode := v.ValidationModeValidationRuleHandler + rulesValidationMode := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhValidationMode(rulesValidationMode) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationAllSpecEndpointsSettings.validation_mode: %s", err) + panic(errMsg) + } + v.FldValidators["validation_mode"] = vFn + + vrhFallThroughMode := v.FallThroughModeValidationRuleHandler + rulesFallThroughMode := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhFallThroughMode(rulesFallThroughMode) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationAllSpecEndpointsSettings.fall_through_mode: %s", err) + panic(errMsg) + } + v.FldValidators["fall_through_mode"] = vFn + + v.FldValidators["settings"] = OpenApiValidationCommonSettingsValidator().Validate + + return v +}() + +func OpenApiValidationAllSpecEndpointsSettingsValidator() db.Validator { + return DefaultOpenApiValidationAllSpecEndpointsSettingsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiValidationCommonSettings) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiValidationCommonSettings) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiValidationCommonSettings) DeepCopy() *OpenApiValidationCommonSettings { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiValidationCommonSettings{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiValidationCommonSettings) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiValidationCommonSettings) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiValidationCommonSettingsValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiValidationCommonSettings struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiValidationCommonSettings) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiValidationCommonSettings) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiValidationCommonSettings got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetOversizedBodyChoice().(type) { + case *OpenApiValidationCommonSettings_OversizedBodySkipValidation: + if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_skip_validation"]; exists { + val := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodySkipValidation).OversizedBodySkipValidation + vOpts := append(opts, + db.WithValidateField("oversized_body_choice"), + db.WithValidateField("oversized_body_skip_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationCommonSettings_OversizedBodyFailValidation: + if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_fail_validation"]; exists { + val := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodyFailValidation).OversizedBodyFailValidation + vOpts := append(opts, + db.WithValidateField("oversized_body_choice"), + db.WithValidateField("oversized_body_fail_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + switch m.GetPropertyValidationSettingsChoice().(type) { + case *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault: + if fv, exists := v.FldValidators["property_validation_settings_choice.property_validation_settings_default"]; exists { + val := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault).PropertyValidationSettingsDefault + vOpts := append(opts, + db.WithValidateField("property_validation_settings_choice"), + db.WithValidateField("property_validation_settings_default"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom: + if fv, exists := v.FldValidators["property_validation_settings_choice.property_validation_settings_custom"]; exists { + val := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom).PropertyValidationSettingsCustom + vOpts := append(opts, + db.WithValidateField("property_validation_settings_choice"), + db.WithValidateField("property_validation_settings_custom"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiValidationCommonSettingsValidator = func() *ValidateOpenApiValidationCommonSettings { + v := &ValidateOpenApiValidationCommonSettings{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["property_validation_settings_choice.property_validation_settings_custom"] = ValidationPropertySettingValidator().Validate + + return v +}() + +func OpenApiValidationCommonSettingsValidator() db.Validator { + return DefaultOpenApiValidationCommonSettingsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiValidationMode) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiValidationMode) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiValidationMode) DeepCopy() *OpenApiValidationMode { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiValidationMode{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiValidationMode) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiValidationMode) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiValidationModeValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiValidationMode struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiValidationMode) ResponseValidationModeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for response_validation_mode_choice") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationMode) ValidationModeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for validation_mode_choice") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationMode) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiValidationMode) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiValidationMode got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["response_validation_mode_choice"]; exists { + val := m.GetResponseValidationModeChoice() + vOpts := append(opts, + db.WithValidateField("response_validation_mode_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetResponseValidationModeChoice().(type) { + case *OpenApiValidationMode_SkipResponseValidation: + if fv, exists := v.FldValidators["response_validation_mode_choice.skip_response_validation"]; exists { + val := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_SkipResponseValidation).SkipResponseValidation + vOpts := append(opts, + db.WithValidateField("response_validation_mode_choice"), + db.WithValidateField("skip_response_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationMode_ResponseValidationModeActive: + if fv, exists := v.FldValidators["response_validation_mode_choice.response_validation_mode_active"]; exists { + val := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_ResponseValidationModeActive).ResponseValidationModeActive + vOpts := append(opts, + db.WithValidateField("response_validation_mode_choice"), + db.WithValidateField("response_validation_mode_active"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["validation_mode_choice"]; exists { + val := m.GetValidationModeChoice() + vOpts := append(opts, + db.WithValidateField("validation_mode_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetValidationModeChoice().(type) { + case *OpenApiValidationMode_ValidationModeActive: + if fv, exists := v.FldValidators["validation_mode_choice.validation_mode_active"]; exists { + val := m.GetValidationModeChoice().(*OpenApiValidationMode_ValidationModeActive).ValidationModeActive + vOpts := append(opts, + db.WithValidateField("validation_mode_choice"), + db.WithValidateField("validation_mode_active"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationMode_SkipValidation: + if fv, exists := v.FldValidators["validation_mode_choice.skip_validation"]; exists { + val := m.GetValidationModeChoice().(*OpenApiValidationMode_SkipValidation).SkipValidation + vOpts := append(opts, + db.WithValidateField("validation_mode_choice"), + db.WithValidateField("skip_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiValidationModeValidator = func() *ValidateOpenApiValidationMode { + v := &ValidateOpenApiValidationMode{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhResponseValidationModeChoice := v.ResponseValidationModeChoiceValidationRuleHandler + rulesResponseValidationModeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhResponseValidationModeChoice(rulesResponseValidationModeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationMode.response_validation_mode_choice: %s", err) + panic(errMsg) + } + v.FldValidators["response_validation_mode_choice"] = vFn + + vrhValidationModeChoice := v.ValidationModeChoiceValidationRuleHandler + rulesValidationModeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhValidationModeChoice(rulesValidationModeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationMode.validation_mode_choice: %s", err) + panic(errMsg) + } + v.FldValidators["validation_mode_choice"] = vFn + + v.FldValidators["response_validation_mode_choice.response_validation_mode_active"] = OpenApiValidationModeActiveResponseValidator().Validate + + v.FldValidators["validation_mode_choice.validation_mode_active"] = OpenApiValidationModeActiveValidator().Validate + + return v +}() + +func OpenApiValidationModeValidator() db.Validator { + return DefaultOpenApiValidationModeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiValidationModeActive) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiValidationModeActive) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiValidationModeActive) DeepCopy() *OpenApiValidationModeActive { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiValidationModeActive{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiValidationModeActive) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiValidationModeActive) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiValidationModeActiveValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiValidationModeActive struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiValidationModeActive) ValidationEnforcementTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for validation_enforcement_type") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationModeActive) RequestValidationPropertiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.OpenApiValidationProperties) + return int32(i) + } + // ves_io_schema.OpenApiValidationProperties_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.OpenApiValidationProperties_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for request_validation_properties") + } + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.OpenApiValidationProperties, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_validation_properties") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ves_io_schema.OpenApiValidationProperties) + if !ok { + return fmt.Errorf("Repeated validation expected []ves_io_schema.OpenApiValidationProperties, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated request_validation_properties") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items request_validation_properties") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationModeActive) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiValidationModeActive) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiValidationModeActive got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["request_validation_properties"]; exists { + vOpts := append(opts, db.WithValidateField("request_validation_properties")) + if err := fv(ctx, m.GetRequestValidationProperties(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["validation_enforcement_type"]; exists { + val := m.GetValidationEnforcementType() + vOpts := append(opts, + db.WithValidateField("validation_enforcement_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetValidationEnforcementType().(type) { + case *OpenApiValidationModeActive_EnforcementReport: + if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_report"]; exists { + val := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementReport).EnforcementReport + vOpts := append(opts, + db.WithValidateField("validation_enforcement_type"), + db.WithValidateField("enforcement_report"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationModeActive_EnforcementBlock: + if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_block"]; exists { + val := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementBlock).EnforcementBlock + vOpts := append(opts, + db.WithValidateField("validation_enforcement_type"), + db.WithValidateField("enforcement_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiValidationModeActiveValidator = func() *ValidateOpenApiValidationModeActive { + v := &ValidateOpenApiValidationModeActive{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhValidationEnforcementType := v.ValidationEnforcementTypeValidationRuleHandler + rulesValidationEnforcementType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhValidationEnforcementType(rulesValidationEnforcementType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActive.validation_enforcement_type: %s", err) + panic(errMsg) + } + v.FldValidators["validation_enforcement_type"] = vFn + + vrhRequestValidationProperties := v.RequestValidationPropertiesValidationRuleHandler + rulesRequestValidationProperties := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.not_in": "[7]", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRequestValidationProperties(rulesRequestValidationProperties) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActive.request_validation_properties: %s", err) + panic(errMsg) + } + v.FldValidators["request_validation_properties"] = vFn + + return v +}() + +func OpenApiValidationModeActiveValidator() db.Validator { + return DefaultOpenApiValidationModeActiveValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiValidationModeActiveResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiValidationModeActiveResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiValidationModeActiveResponse) DeepCopy() *OpenApiValidationModeActiveResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiValidationModeActiveResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiValidationModeActiveResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiValidationModeActiveResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiValidationModeActiveResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiValidationModeActiveResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiValidationModeActiveResponse) ValidationEnforcementTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for validation_enforcement_type") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationModeActiveResponse) ResponseValidationPropertiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.OpenApiValidationProperties) + return int32(i) + } + // ves_io_schema.OpenApiValidationProperties_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.OpenApiValidationProperties_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for response_validation_properties") + } + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.OpenApiValidationProperties, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_validation_properties") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ves_io_schema.OpenApiValidationProperties) + if !ok { + return fmt.Errorf("Repeated validation expected []ves_io_schema.OpenApiValidationProperties, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_validation_properties") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_validation_properties") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationModeActiveResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiValidationModeActiveResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiValidationModeActiveResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["response_validation_properties"]; exists { + vOpts := append(opts, db.WithValidateField("response_validation_properties")) + if err := fv(ctx, m.GetResponseValidationProperties(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["validation_enforcement_type"]; exists { + val := m.GetValidationEnforcementType() + vOpts := append(opts, + db.WithValidateField("validation_enforcement_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetValidationEnforcementType().(type) { + case *OpenApiValidationModeActiveResponse_EnforcementReport: + if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_report"]; exists { + val := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementReport).EnforcementReport + vOpts := append(opts, + db.WithValidateField("validation_enforcement_type"), + db.WithValidateField("enforcement_report"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationModeActiveResponse_EnforcementBlock: + if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_block"]; exists { + val := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementBlock).EnforcementBlock + vOpts := append(opts, + db.WithValidateField("validation_enforcement_type"), + db.WithValidateField("enforcement_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiValidationModeActiveResponseValidator = func() *ValidateOpenApiValidationModeActiveResponse { + v := &ValidateOpenApiValidationModeActiveResponse{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhValidationEnforcementType := v.ValidationEnforcementTypeValidationRuleHandler + rulesValidationEnforcementType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhValidationEnforcementType(rulesValidationEnforcementType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActiveResponse.validation_enforcement_type: %s", err) + panic(errMsg) + } + v.FldValidators["validation_enforcement_type"] = vFn + + vrhResponseValidationProperties := v.ResponseValidationPropertiesValidationRuleHandler + rulesResponseValidationProperties := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.in": "[2,4,5,7]", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhResponseValidationProperties(rulesResponseValidationProperties) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActiveResponse.response_validation_properties: %s", err) + panic(errMsg) + } + v.FldValidators["response_validation_properties"] = vFn + + return v +}() + +func OpenApiValidationModeActiveResponseValidator() db.Validator { + return DefaultOpenApiValidationModeActiveResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *OpenApiValidationRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OpenApiValidationRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OpenApiValidationRule) DeepCopy() *OpenApiValidationRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &OpenApiValidationRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *OpenApiValidationRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *OpenApiValidationRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OpenApiValidationRuleValidator().Validate(ctx, m, opts...) +} + +type ValidateOpenApiValidationRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateOpenApiValidationRule) ConditionTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for condition_type_choice") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationRule) ConditionTypeChoiceBasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_BasePath, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") + } + return oValidatorFn_BasePath, nil +} +func (v *ValidateOpenApiValidationRule) ConditionTypeChoiceApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ApiGroup, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") + } + return oValidatorFn_ApiGroup, nil +} + +func (v *ValidateOpenApiValidationRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + } + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + } + return oValidatorFn_SpecificDomain, nil +} + +func (v *ValidateOpenApiValidationRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationRule) ValidationModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for validation_mode") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := OpenApiValidationModeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateOpenApiValidationRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OpenApiValidationRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OpenApiValidationRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["condition_type_choice"]; exists { + val := m.GetConditionTypeChoice() + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetConditionTypeChoice().(type) { + case *OpenApiValidationRule_BasePath: + if fv, exists := v.FldValidators["condition_type_choice.base_path"]; exists { + val := m.GetConditionTypeChoice().(*OpenApiValidationRule_BasePath).BasePath + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + db.WithValidateField("base_path"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationRule_ApiGroup: + if fv, exists := v.FldValidators["condition_type_choice.api_group"]; exists { + val := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiGroup).ApiGroup + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + db.WithValidateField("api_group"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationRule_ApiEndpoint: + if fv, exists := v.FldValidators["condition_type_choice.api_endpoint"]; exists { + val := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiEndpoint).ApiEndpoint + vOpts := append(opts, + db.WithValidateField("condition_type_choice"), + db.WithValidateField("api_endpoint"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["domain_choice"]; exists { + val := m.GetDomainChoice() + vOpts := append(opts, + db.WithValidateField("domain_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDomainChoice().(type) { + case *OpenApiValidationRule_AnyDomain: + if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { + val := m.GetDomainChoice().(*OpenApiValidationRule_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OpenApiValidationRule_SpecificDomain: + if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { + val := m.GetDomainChoice().(*OpenApiValidationRule_SpecificDomain).SpecificDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("specific_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["validation_mode"]; exists { + + vOpts := append(opts, db.WithValidateField("validation_mode")) + if err := fv(ctx, m.GetValidationMode(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultOpenApiValidationRuleValidator = func() *ValidateOpenApiValidationRule { + v := &ValidateOpenApiValidationRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhConditionTypeChoice := v.ConditionTypeChoiceValidationRuleHandler + rulesConditionTypeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhConditionTypeChoice(rulesConditionTypeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.condition_type_choice: %s", err) + panic(errMsg) + } + v.FldValidators["condition_type_choice"] = vFn + + vrhConditionTypeChoiceBasePath := v.ConditionTypeChoiceBasePathValidationRuleHandler + rulesConditionTypeChoiceBasePath := map[string]string{ + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128", + } + vFnMap["condition_type_choice.base_path"], err = vrhConditionTypeChoiceBasePath(rulesConditionTypeChoiceBasePath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OpenApiValidationRule.condition_type_choice_base_path: %s", err) + panic(errMsg) + } + vrhConditionTypeChoiceApiGroup := v.ConditionTypeChoiceApiGroupValidationRuleHandler + rulesConditionTypeChoiceApiGroup := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + } + vFnMap["condition_type_choice.api_group"], err = vrhConditionTypeChoiceApiGroup(rulesConditionTypeChoiceApiGroup) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OpenApiValidationRule.condition_type_choice_api_group: %s", err) + panic(errMsg) + } + + v.FldValidators["condition_type_choice.base_path"] = vFnMap["condition_type_choice.base_path"] + v.FldValidators["condition_type_choice.api_group"] = vFnMap["condition_type_choice.api_group"] + + vrhDomainChoice := v.DomainChoiceValidationRuleHandler + rulesDomainChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDomainChoice(rulesDomainChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.domain_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_choice"] = vFn + + vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler + rulesDomainChoiceSpecificDomain := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OpenApiValidationRule.domain_choice_specific_domain: %s", err) + panic(errMsg) + } + + v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhValidationMode := v.ValidationModeValidationRuleHandler + rulesValidationMode := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhValidationMode(rulesValidationMode) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.validation_mode: %s", err) + panic(errMsg) + } + v.FldValidators["validation_mode"] = vFn + + v.FldValidators["condition_type_choice.api_endpoint"] = ApiEndpointDetailsValidator().Validate + + return v +}() + +func OpenApiValidationRuleValidator() db.Validator { + return DefaultOpenApiValidationRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *PolicyBasedChallenge) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *PolicyBasedChallenge) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *PolicyBasedChallenge) DeepCopy() *PolicyBasedChallenge { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &PolicyBasedChallenge{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *PolicyBasedChallenge) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *PolicyBasedChallenge) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return PolicyBasedChallengeValidator().Validate(ctx, m, opts...) +} + +func (m *PolicyBasedChallenge) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMaliciousUserMitigationChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMaliciousUserMitigationChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetRuleListDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRuleListDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +func (m *PolicyBasedChallenge) GetMaliciousUserMitigationChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetMaliciousUserMitigationChoice().(type) { + case *PolicyBasedChallenge_DefaultMitigationSettings: + + return nil, nil + + case *PolicyBasedChallenge_MaliciousUserMitigation: + + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("malicious_user_mitigation.Object") + dri := db.DRefInfo{ + RefdType: "malicious_user_mitigation.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "malicious_user_mitigation", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } +} + +// GetMaliciousUserMitigationChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *PolicyBasedChallenge) GetMaliciousUserMitigationChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetMaliciousUserMitigationChoice().(type) { + case *PolicyBasedChallenge_DefaultMitigationSettings: + + case *PolicyBasedChallenge_MaliciousUserMitigation: + refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") + } + + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "malicious_user_mitigation.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + } + + return entries, nil +} + +// GetDRefInfo for the field's type +func (m *PolicyBasedChallenge) GetRuleListDRefInfo() ([]db.DRefInfo, error) { + if m.GetRuleList() == nil { + return nil, nil + } + + drInfos, err := m.GetRuleList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRuleList().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rule_list." + dri.DRField + } + return drInfos, err + +} + +type ValidatePolicyBasedChallenge struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidatePolicyBasedChallenge) ChallengeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_choice") + } + return validatorFn, nil +} + +func (v *ValidatePolicyBasedChallenge) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*PolicyBasedChallenge) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *PolicyBasedChallenge got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetCaptchaChallengeParametersChoice().(type) { + case *PolicyBasedChallenge_DefaultCaptchaChallengeParameters: + if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.default_captcha_challenge_parameters"]; exists { + val := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_DefaultCaptchaChallengeParameters).DefaultCaptchaChallengeParameters + vOpts := append(opts, + db.WithValidateField("captcha_challenge_parameters_choice"), + db.WithValidateField("default_captcha_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *PolicyBasedChallenge_CaptchaChallengeParameters: + if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"]; exists { + val := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_CaptchaChallengeParameters).CaptchaChallengeParameters + vOpts := append(opts, + db.WithValidateField("captcha_challenge_parameters_choice"), + db.WithValidateField("captcha_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["challenge_choice"]; exists { + val := m.GetChallengeChoice() + vOpts := append(opts, + db.WithValidateField("challenge_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetChallengeChoice().(type) { + case *PolicyBasedChallenge_NoChallenge: + if fv, exists := v.FldValidators["challenge_choice.no_challenge"]; exists { + val := m.GetChallengeChoice().(*PolicyBasedChallenge_NoChallenge).NoChallenge + vOpts := append(opts, + db.WithValidateField("challenge_choice"), + db.WithValidateField("no_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *PolicyBasedChallenge_AlwaysEnableJsChallenge: + if fv, exists := v.FldValidators["challenge_choice.always_enable_js_challenge"]; exists { + val := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableJsChallenge).AlwaysEnableJsChallenge + vOpts := append(opts, + db.WithValidateField("challenge_choice"), + db.WithValidateField("always_enable_js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge: + if fv, exists := v.FldValidators["challenge_choice.always_enable_captcha_challenge"]; exists { + val := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge).AlwaysEnableCaptchaChallenge + vOpts := append(opts, + db.WithValidateField("challenge_choice"), + db.WithValidateField("always_enable_captcha_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + switch m.GetJsChallengeParametersChoice().(type) { + case *PolicyBasedChallenge_DefaultJsChallengeParameters: + if fv, exists := v.FldValidators["js_challenge_parameters_choice.default_js_challenge_parameters"]; exists { + val := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_DefaultJsChallengeParameters).DefaultJsChallengeParameters + vOpts := append(opts, + db.WithValidateField("js_challenge_parameters_choice"), + db.WithValidateField("default_js_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *PolicyBasedChallenge_JsChallengeParameters: + if fv, exists := v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"]; exists { + val := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_JsChallengeParameters).JsChallengeParameters + vOpts := append(opts, + db.WithValidateField("js_challenge_parameters_choice"), + db.WithValidateField("js_challenge_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + switch m.GetMaliciousUserMitigationChoice().(type) { + case *PolicyBasedChallenge_DefaultMitigationSettings: + if fv, exists := v.FldValidators["malicious_user_mitigation_choice.default_mitigation_settings"]; exists { + val := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_DefaultMitigationSettings).DefaultMitigationSettings + vOpts := append(opts, + db.WithValidateField("malicious_user_mitigation_choice"), + db.WithValidateField("default_mitigation_settings"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *PolicyBasedChallenge_MaliciousUserMitigation: + if fv, exists := v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"]; exists { + val := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_MaliciousUserMitigation).MaliciousUserMitigation + vOpts := append(opts, + db.WithValidateField("malicious_user_mitigation_choice"), + db.WithValidateField("malicious_user_mitigation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["rule_list"]; exists { + + vOpts := append(opts, db.WithValidateField("rule_list")) + if err := fv(ctx, m.GetRuleList(), vOpts...); err != nil { + return err + } + + } + + switch m.GetTemporaryBlockingParametersChoice().(type) { + case *PolicyBasedChallenge_DefaultTemporaryBlockingParameters: + if fv, exists := v.FldValidators["temporary_blocking_parameters_choice.default_temporary_blocking_parameters"]; exists { + val := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_DefaultTemporaryBlockingParameters).DefaultTemporaryBlockingParameters + vOpts := append(opts, + db.WithValidateField("temporary_blocking_parameters_choice"), + db.WithValidateField("default_temporary_blocking_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *PolicyBasedChallenge_TemporaryUserBlocking: + if fv, exists := v.FldValidators["temporary_blocking_parameters_choice.temporary_user_blocking"]; exists { + val := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_TemporaryUserBlocking).TemporaryUserBlocking + vOpts := append(opts, + db.WithValidateField("temporary_blocking_parameters_choice"), + db.WithValidateField("temporary_user_blocking"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultPolicyBasedChallengeValidator = func() *ValidatePolicyBasedChallenge { + v := &ValidatePolicyBasedChallenge{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhChallengeChoice := v.ChallengeChoiceValidationRuleHandler + rulesChallengeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhChallengeChoice(rulesChallengeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for PolicyBasedChallenge.challenge_choice: %s", err) + panic(errMsg) + } + v.FldValidators["challenge_choice"] = vFn + + v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + + v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + + v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["temporary_blocking_parameters_choice.temporary_user_blocking"] = ves_io_schema_virtual_host.TemporaryUserBlockingTypeValidator().Validate + + v.FldValidators["rule_list"] = ChallengeRuleListValidator().Validate + + return v +}() + +func PolicyBasedChallengeValidator() db.Validator { + return DefaultPolicyBasedChallengeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *RateLimitConfigType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *RateLimitConfigType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *RateLimitConfigType) DeepCopy() *RateLimitConfigType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &RateLimitConfigType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *RateLimitConfigType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *RateLimitConfigType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RateLimitConfigTypeValidator().Validate(ctx, m, opts...) +} + +func (m *RateLimitConfigType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetIpAllowedListChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetIpAllowedListChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetPolicyChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetPolicyChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *RateLimitConfigType) GetIpAllowedListChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetIpAllowedListChoice() == nil { + return nil, nil + } + switch m.GetIpAllowedListChoice().(type) { + case *RateLimitConfigType_NoIpAllowedList: + + return nil, nil + + case *RateLimitConfigType_IpAllowedList: + + return nil, nil + + case *RateLimitConfigType_CustomIpAllowedList: + + drInfos, err := m.GetCustomIpAllowedList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetCustomIpAllowedList().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "custom_ip_allowed_list." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } + +} + +// GetDRefInfo for the field's type +func (m *RateLimitConfigType) GetPolicyChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetPolicyChoice() == nil { + return nil, nil + } + switch m.GetPolicyChoice().(type) { + case *RateLimitConfigType_NoPolicies: + + return nil, nil + + case *RateLimitConfigType_Policies: + + drInfos, err := m.GetPolicies().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetPolicies().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "policies." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } + +} + +type ValidateRateLimitConfigType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateRateLimitConfigType) IpAllowedListChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ip_allowed_list_choice") + } + return validatorFn, nil +} + +func (v *ValidateRateLimitConfigType) PolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for policy_choice") + } + return validatorFn, nil +} + +func (v *ValidateRateLimitConfigType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RateLimitConfigType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *RateLimitConfigType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ip_allowed_list_choice"]; exists { + val := m.GetIpAllowedListChoice() + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetIpAllowedListChoice().(type) { + case *RateLimitConfigType_NoIpAllowedList: + if fv, exists := v.FldValidators["ip_allowed_list_choice.no_ip_allowed_list"]; exists { + val := m.GetIpAllowedListChoice().(*RateLimitConfigType_NoIpAllowedList).NoIpAllowedList + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("no_ip_allowed_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RateLimitConfigType_IpAllowedList: + if fv, exists := v.FldValidators["ip_allowed_list_choice.ip_allowed_list"]; exists { + val := m.GetIpAllowedListChoice().(*RateLimitConfigType_IpAllowedList).IpAllowedList + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("ip_allowed_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RateLimitConfigType_CustomIpAllowedList: + if fv, exists := v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"]; exists { + val := m.GetIpAllowedListChoice().(*RateLimitConfigType_CustomIpAllowedList).CustomIpAllowedList + vOpts := append(opts, + db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("custom_ip_allowed_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["policy_choice"]; exists { + val := m.GetPolicyChoice() + vOpts := append(opts, + db.WithValidateField("policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetPolicyChoice().(type) { + case *RateLimitConfigType_NoPolicies: + if fv, exists := v.FldValidators["policy_choice.no_policies"]; exists { + val := m.GetPolicyChoice().(*RateLimitConfigType_NoPolicies).NoPolicies + vOpts := append(opts, + db.WithValidateField("policy_choice"), + db.WithValidateField("no_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RateLimitConfigType_Policies: + if fv, exists := v.FldValidators["policy_choice.policies"]; exists { + val := m.GetPolicyChoice().(*RateLimitConfigType_Policies).Policies + vOpts := append(opts, + db.WithValidateField("policy_choice"), + db.WithValidateField("policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["rate_limiter"]; exists { + + vOpts := append(opts, db.WithValidateField("rate_limiter")) + if err := fv(ctx, m.GetRateLimiter(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultRateLimitConfigTypeValidator = func() *ValidateRateLimitConfigType { + v := &ValidateRateLimitConfigType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhIpAllowedListChoice := v.IpAllowedListChoiceValidationRuleHandler + rulesIpAllowedListChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhIpAllowedListChoice(rulesIpAllowedListChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RateLimitConfigType.ip_allowed_list_choice: %s", err) + panic(errMsg) + } + v.FldValidators["ip_allowed_list_choice"] = vFn + + vrhPolicyChoice := v.PolicyChoiceValidationRuleHandler + rulesPolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhPolicyChoice(rulesPolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RateLimitConfigType.policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["policy_choice"] = vFn + + v.FldValidators["ip_allowed_list_choice.ip_allowed_list"] = ves_io_schema_views.PrefixStringListTypeValidator().Validate + v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"] = CustomIpAllowedListValidator().Validate + + v.FldValidators["policy_choice.policies"] = ves_io_schema_views_rate_limiter_policy.PolicyListValidator().Validate + + v.FldValidators["rate_limiter"] = ves_io_schema_rate_limiter.RateLimitValueValidator().Validate + + return v +}() + +func RateLimitConfigTypeValidator() db.Validator { + return DefaultRateLimitConfigTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReservedClaims) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReservedClaims) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReservedClaims) DeepCopy() *ReservedClaims { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReservedClaims{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReservedClaims) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReservedClaims) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReservedClaimsValidator().Validate(ctx, m, opts...) +} + +type ValidateReservedClaims struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReservedClaims) AudienceValidationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for audience_validation") + } + return validatorFn, nil +} + +func (v *ValidateReservedClaims) IssuerValidationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for issuer_validation") + } + return validatorFn, nil +} + +func (v *ValidateReservedClaims) ValidatePeriodValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for validate_period") + } + return validatorFn, nil +} + +func (v *ValidateReservedClaims) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReservedClaims) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReservedClaims got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["audience_validation"]; exists { + val := m.GetAudienceValidation() + vOpts := append(opts, + db.WithValidateField("audience_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAudienceValidation().(type) { + case *ReservedClaims_AudienceDisable: + if fv, exists := v.FldValidators["audience_validation.audience_disable"]; exists { + val := m.GetAudienceValidation().(*ReservedClaims_AudienceDisable).AudienceDisable + vOpts := append(opts, + db.WithValidateField("audience_validation"), + db.WithValidateField("audience_disable"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReservedClaims_Audience: + if fv, exists := v.FldValidators["audience_validation.audience"]; exists { + val := m.GetAudienceValidation().(*ReservedClaims_Audience).Audience + vOpts := append(opts, + db.WithValidateField("audience_validation"), + db.WithValidateField("audience"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["issuer_validation"]; exists { + val := m.GetIssuerValidation() + vOpts := append(opts, + db.WithValidateField("issuer_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetIssuerValidation().(type) { + case *ReservedClaims_IssuerDisable: + if fv, exists := v.FldValidators["issuer_validation.issuer_disable"]; exists { + val := m.GetIssuerValidation().(*ReservedClaims_IssuerDisable).IssuerDisable + vOpts := append(opts, + db.WithValidateField("issuer_validation"), + db.WithValidateField("issuer_disable"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReservedClaims_Issuer: + if fv, exists := v.FldValidators["issuer_validation.issuer"]; exists { + val := m.GetIssuerValidation().(*ReservedClaims_Issuer).Issuer + vOpts := append(opts, + db.WithValidateField("issuer_validation"), + db.WithValidateField("issuer"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["validate_period"]; exists { + val := m.GetValidatePeriod() + vOpts := append(opts, + db.WithValidateField("validate_period"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetValidatePeriod().(type) { + case *ReservedClaims_ValidatePeriodDisable: + if fv, exists := v.FldValidators["validate_period.validate_period_disable"]; exists { + val := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodDisable).ValidatePeriodDisable + vOpts := append(opts, + db.WithValidateField("validate_period"), + db.WithValidateField("validate_period_disable"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReservedClaims_ValidatePeriodEnable: + if fv, exists := v.FldValidators["validate_period.validate_period_enable"]; exists { + val := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodEnable).ValidatePeriodEnable + vOpts := append(opts, + db.WithValidateField("validate_period"), + db.WithValidateField("validate_period_enable"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReservedClaimsValidator = func() *ValidateReservedClaims { + v := &ValidateReservedClaims{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAudienceValidation := v.AudienceValidationValidationRuleHandler + rulesAudienceValidation := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAudienceValidation(rulesAudienceValidation) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReservedClaims.audience_validation: %s", err) + panic(errMsg) + } + v.FldValidators["audience_validation"] = vFn + + vrhIssuerValidation := v.IssuerValidationValidationRuleHandler + rulesIssuerValidation := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhIssuerValidation(rulesIssuerValidation) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReservedClaims.issuer_validation: %s", err) + panic(errMsg) + } + v.FldValidators["issuer_validation"] = vFn + + vrhValidatePeriod := v.ValidatePeriodValidationRuleHandler + rulesValidatePeriod := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhValidatePeriod(rulesValidatePeriod) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReservedClaims.validate_period: %s", err) + panic(errMsg) + } + v.FldValidators["validate_period"] = vFn + + v.FldValidators["audience_validation.audience"] = AudiencesValidator().Validate + + return v +}() + +func ReservedClaimsValidator() db.Validator { + return DefaultReservedClaimsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ServerUrlRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ServerUrlRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ServerUrlRule) DeepCopy() *ServerUrlRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ServerUrlRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ServerUrlRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ServerUrlRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ServerUrlRuleValidator().Validate(ctx, m, opts...) +} + +func (m *ServerUrlRule) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetClientMatcherDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetClientMatcherDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetRateLimiterChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimiterChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ServerUrlRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { + if m.GetClientMatcher() == nil { + return nil, nil + } + + drInfos, err := m.GetClientMatcher().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "client_matcher." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ServerUrlRule) GetRateLimiterChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimiterChoice() == nil { + return nil, nil + } + switch m.GetRateLimiterChoice().(type) { + case *ServerUrlRule_InlineRateLimiter: + + drInfos, err := m.GetInlineRateLimiter().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetInlineRateLimiter().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "inline_rate_limiter." + dri.DRField + } + return drInfos, err + + case *ServerUrlRule_RefRateLimiter: + + vref := m.GetRefRateLimiter() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("rate_limiter.Object") + dri := db.DRefInfo{ + RefdType: "rate_limiter.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "ref_rate_limiter", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } + +} + +type ValidateServerUrlRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateServerUrlRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + } + return validatorFn, nil +} + +func (v *ValidateServerUrlRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + } + return oValidatorFn_SpecificDomain, nil +} + +func (v *ValidateServerUrlRule) RateLimiterChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limiter_choice") + } + return validatorFn, nil +} + +func (v *ValidateServerUrlRule) BasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") + } + + return validatorFn, nil +} + +func (v *ValidateServerUrlRule) ApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") + } + + return validatorFn, nil +} + +func (v *ValidateServerUrlRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ServerUrlRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ServerUrlRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["api_group"]; exists { + + vOpts := append(opts, db.WithValidateField("api_group")) + if err := fv(ctx, m.GetApiGroup(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["base_path"]; exists { + + vOpts := append(opts, db.WithValidateField("base_path")) + if err := fv(ctx, m.GetBasePath(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["client_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("client_matcher")) + if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["domain_choice"]; exists { + val := m.GetDomainChoice() + vOpts := append(opts, + db.WithValidateField("domain_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDomainChoice().(type) { + case *ServerUrlRule_AnyDomain: + if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { + val := m.GetDomainChoice().(*ServerUrlRule_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ServerUrlRule_SpecificDomain: + if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { + val := m.GetDomainChoice().(*ServerUrlRule_SpecificDomain).SpecificDomain + vOpts := append(opts, + db.WithValidateField("domain_choice"), + db.WithValidateField("specific_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["rate_limiter_choice"]; exists { + val := m.GetRateLimiterChoice() + vOpts := append(opts, + db.WithValidateField("rate_limiter_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetRateLimiterChoice().(type) { + case *ServerUrlRule_InlineRateLimiter: + if fv, exists := v.FldValidators["rate_limiter_choice.inline_rate_limiter"]; exists { + val := m.GetRateLimiterChoice().(*ServerUrlRule_InlineRateLimiter).InlineRateLimiter + vOpts := append(opts, + db.WithValidateField("rate_limiter_choice"), + db.WithValidateField("inline_rate_limiter"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ServerUrlRule_RefRateLimiter: + if fv, exists := v.FldValidators["rate_limiter_choice.ref_rate_limiter"]; exists { + val := m.GetRateLimiterChoice().(*ServerUrlRule_RefRateLimiter).RefRateLimiter + vOpts := append(opts, + db.WithValidateField("rate_limiter_choice"), + db.WithValidateField("ref_rate_limiter"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["request_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("request_matcher")) + if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultServerUrlRuleValidator = func() *ValidateServerUrlRule { + v := &ValidateServerUrlRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDomainChoice := v.DomainChoiceValidationRuleHandler + rulesDomainChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDomainChoice(rulesDomainChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.domain_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_choice"] = vFn + + vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler + rulesDomainChoiceSpecificDomain := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true", + } + vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ServerUrlRule.domain_choice_specific_domain: %s", err) + panic(errMsg) + } + + v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + + vrhRateLimiterChoice := v.RateLimiterChoiceValidationRuleHandler + rulesRateLimiterChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRateLimiterChoice(rulesRateLimiterChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.rate_limiter_choice: %s", err) + panic(errMsg) + } + v.FldValidators["rate_limiter_choice"] = vFn + + vrhBasePath := v.BasePathValidationRuleHandler + rulesBasePath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128", + } + vFn, err = vrhBasePath(rulesBasePath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.base_path: %s", err) + panic(errMsg) + } + v.FldValidators["base_path"] = vFn + + vrhApiGroup := v.ApiGroupValidationRuleHandler + rulesApiGroup := map[string]string{ + "ves.io.schema.rules.string.max_len": "128", + } + vFn, err = vrhApiGroup(rulesApiGroup) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.api_group: %s", err) + panic(errMsg) + } + v.FldValidators["api_group"] = vFn + + v.FldValidators["rate_limiter_choice.inline_rate_limiter"] = InlineRateLimiterValidator().Validate + v.FldValidators["rate_limiter_choice.ref_rate_limiter"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate + + v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate + + return v +}() + +func ServerUrlRuleValidator() db.Validator { + return DefaultServerUrlRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ServicePolicyList) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ServicePolicyList) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ServicePolicyList) DeepCopy() *ServicePolicyList { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ServicePolicyList{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ServicePolicyList) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ServicePolicyList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ServicePolicyListValidator().Validate(ctx, m, opts...) +} + +func (m *ServicePolicyList) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetPoliciesDRefInfo() + +} + +func (m *ServicePolicyList) GetPoliciesDRefInfo() ([]db.DRefInfo, error) { + vrefs := m.GetPolicies() + if len(vrefs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(vrefs)) + for i, vref := range vrefs { + if vref == nil { + return nil, fmt.Errorf("ServicePolicyList.policies[%d] has a nil value", i) + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("service_policy.Object") + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "service_policy.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "policies", + Ref: vdRef, + }) + } + return drInfos, nil + +} + +// GetPoliciesDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ServicePolicyList) GetPoliciesDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "service_policy.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: service_policy") + } + for i, vref := range m.GetPolicies() { + if vref == nil { + return nil, fmt.Errorf("ServicePolicyList.policies[%d] has a nil value", i) + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "service_policy.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateServicePolicyList struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateServicePolicyList) PoliciesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for policies") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for policies") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated policies") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items policies") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateServicePolicyList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ServicePolicyList) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ServicePolicyList got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["policies"]; exists { + vOpts := append(opts, db.WithValidateField("policies")) + if err := fv(ctx, m.GetPolicies(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultServicePolicyListValidator = func() *ValidateServicePolicyList { + v := &ValidateServicePolicyList{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhPolicies := v.PoliciesValidationRuleHandler + rulesPolicies := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhPolicies(rulesPolicies) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ServicePolicyList.policies: %s", err) + panic(errMsg) + } + v.FldValidators["policies"] = vFn + + return v +}() + +func ServicePolicyListValidator() db.Validator { + return DefaultServicePolicyListValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SimpleClientSrcRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SimpleClientSrcRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SimpleClientSrcRule) DeepCopy() *SimpleClientSrcRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SimpleClientSrcRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SimpleClientSrcRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SimpleClientSrcRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SimpleClientSrcRuleValidator().Validate(ctx, m, opts...) +} + +type ValidateSimpleClientSrcRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for client_source_choice") + } + return validatorFn, nil +} + +func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceIpPrefixValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_IpPrefix, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ip_prefix") + } + return oValidatorFn_IpPrefix, nil +} +func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceAsNumberValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_AsNumber, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for as_number") + } + return oValidatorFn_AsNumber, nil +} +func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceUserIdentifierValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_UserIdentifier, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for user_identifier") + } + return oValidatorFn_UserIdentifier, nil +} + +func (v *ValidateSimpleClientSrcRule) ExpirationTimestampValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var ( + reqdValidatorFn db.ValidatorFunc + err error + ) + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if reqdValidatorFn != nil { + if err = reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + } + // TODO: lookup configured third-party type validators + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSimpleClientSrcRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSimpleClientSrcRule) ActionsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ClientSrcRuleAction) + return int32(i) + } + // ClientSrcRuleAction_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ClientSrcRuleAction_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for actions") + } + itemsValidatorFn := func(ctx context.Context, elems []ClientSrcRuleAction, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for actions") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ClientSrcRuleAction) + if !ok { + return fmt.Errorf("Repeated validation expected []ClientSrcRuleAction, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated actions") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items actions") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateSimpleClientSrcRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SimpleClientSrcRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SimpleClientSrcRule got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetActionChoice().(type) { + case *SimpleClientSrcRule_SkipProcessing: + if fv, exists := v.FldValidators["action_choice.skip_processing"]; exists { + val := m.GetActionChoice().(*SimpleClientSrcRule_SkipProcessing).SkipProcessing + vOpts := append(opts, + db.WithValidateField("action_choice"), + db.WithValidateField("skip_processing"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SimpleClientSrcRule_WafSkipProcessing: + if fv, exists := v.FldValidators["action_choice.waf_skip_processing"]; exists { + val := m.GetActionChoice().(*SimpleClientSrcRule_WafSkipProcessing).WafSkipProcessing + vOpts := append(opts, + db.WithValidateField("action_choice"), + db.WithValidateField("waf_skip_processing"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SimpleClientSrcRule_BotSkipProcessing: + if fv, exists := v.FldValidators["action_choice.bot_skip_processing"]; exists { + val := m.GetActionChoice().(*SimpleClientSrcRule_BotSkipProcessing).BotSkipProcessing + vOpts := append(opts, + db.WithValidateField("action_choice"), + db.WithValidateField("bot_skip_processing"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["actions"]; exists { + vOpts := append(opts, db.WithValidateField("actions")) + if err := fv(ctx, m.GetActions(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["client_source_choice"]; exists { + val := m.GetClientSourceChoice() + vOpts := append(opts, + db.WithValidateField("client_source_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetClientSourceChoice().(type) { + case *SimpleClientSrcRule_IpPrefix: + if fv, exists := v.FldValidators["client_source_choice.ip_prefix"]; exists { + val := m.GetClientSourceChoice().(*SimpleClientSrcRule_IpPrefix).IpPrefix + vOpts := append(opts, + db.WithValidateField("client_source_choice"), + db.WithValidateField("ip_prefix"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SimpleClientSrcRule_AsNumber: + if fv, exists := v.FldValidators["client_source_choice.as_number"]; exists { + val := m.GetClientSourceChoice().(*SimpleClientSrcRule_AsNumber).AsNumber + vOpts := append(opts, + db.WithValidateField("client_source_choice"), + db.WithValidateField("as_number"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SimpleClientSrcRule_HttpHeader: + if fv, exists := v.FldValidators["client_source_choice.http_header"]; exists { + val := m.GetClientSourceChoice().(*SimpleClientSrcRule_HttpHeader).HttpHeader + vOpts := append(opts, + db.WithValidateField("client_source_choice"), + db.WithValidateField("http_header"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SimpleClientSrcRule_UserIdentifier: + if fv, exists := v.FldValidators["client_source_choice.user_identifier"]; exists { + val := m.GetClientSourceChoice().(*SimpleClientSrcRule_UserIdentifier).UserIdentifier + vOpts := append(opts, + db.WithValidateField("client_source_choice"), + db.WithValidateField("user_identifier"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["expiration_timestamp"]; exists { + + vOpts := append(opts, db.WithValidateField("expiration_timestamp")) + if err := fv(ctx, m.GetExpirationTimestamp(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSimpleClientSrcRuleValidator = func() *ValidateSimpleClientSrcRule { + v := &ValidateSimpleClientSrcRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhClientSourceChoice := v.ClientSourceChoiceValidationRuleHandler + rulesClientSourceChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhClientSourceChoice(rulesClientSourceChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.client_source_choice: %s", err) + panic(errMsg) + } + v.FldValidators["client_source_choice"] = vFn + + vrhClientSourceChoiceIpPrefix := v.ClientSourceChoiceIpPrefixValidationRuleHandler + rulesClientSourceChoiceIpPrefix := map[string]string{ + "ves.io.schema.rules.string.ipv4_prefix": "true", + } + vFnMap["client_source_choice.ip_prefix"], err = vrhClientSourceChoiceIpPrefix(rulesClientSourceChoiceIpPrefix) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field SimpleClientSrcRule.client_source_choice_ip_prefix: %s", err) + panic(errMsg) + } + vrhClientSourceChoiceAsNumber := v.ClientSourceChoiceAsNumberValidationRuleHandler + rulesClientSourceChoiceAsNumber := map[string]string{ + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "401308", + } + vFnMap["client_source_choice.as_number"], err = vrhClientSourceChoiceAsNumber(rulesClientSourceChoiceAsNumber) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field SimpleClientSrcRule.client_source_choice_as_number: %s", err) + panic(errMsg) + } + vrhClientSourceChoiceUserIdentifier := v.ClientSourceChoiceUserIdentifierValidationRuleHandler + rulesClientSourceChoiceUserIdentifier := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + } + vFnMap["client_source_choice.user_identifier"], err = vrhClientSourceChoiceUserIdentifier(rulesClientSourceChoiceUserIdentifier) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field SimpleClientSrcRule.client_source_choice_user_identifier: %s", err) + panic(errMsg) + } + + v.FldValidators["client_source_choice.ip_prefix"] = vFnMap["client_source_choice.ip_prefix"] + v.FldValidators["client_source_choice.as_number"] = vFnMap["client_source_choice.as_number"] + v.FldValidators["client_source_choice.user_identifier"] = vFnMap["client_source_choice.user_identifier"] + + vrhExpirationTimestamp := v.ExpirationTimestampValidationRuleHandler + rulesExpirationTimestamp := map[string]string{ + "ves.io.schema.rules.timestamp.within.seconds": "31536000", + } + vFn, err = vrhExpirationTimestamp(rulesExpirationTimestamp) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.expiration_timestamp: %s", err) + panic(errMsg) + } + v.FldValidators["expiration_timestamp"] = vFn + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhActions := v.ActionsValidationRuleHandler + rulesActions := map[string]string{ + "ves.io.schema.rules.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "10", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhActions(rulesActions) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.actions: %s", err) + panic(errMsg) + } + v.FldValidators["actions"] = vFn + + v.FldValidators["client_source_choice.http_header"] = HttpHeaderMatcherListValidator().Validate + + return v +}() + +func SimpleClientSrcRuleValidator() db.Validator { + return DefaultSimpleClientSrcRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Target) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Target) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Target) DeepCopy() *Target { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Target{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Target) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Target) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return TargetValidator().Validate(ctx, m, opts...) +} + +type ValidateTarget struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateTarget) TargetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for target") + } + return validatorFn, nil +} + +func (v *ValidateTarget) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Target) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Target got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["target"]; exists { + val := m.GetTarget() + vOpts := append(opts, + db.WithValidateField("target"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetTarget().(type) { + case *Target_AllEndpoint: + if fv, exists := v.FldValidators["target.all_endpoint"]; exists { + val := m.GetTarget().(*Target_AllEndpoint).AllEndpoint + vOpts := append(opts, + db.WithValidateField("target"), + db.WithValidateField("all_endpoint"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *Target_ApiGroups: + if fv, exists := v.FldValidators["target.api_groups"]; exists { + val := m.GetTarget().(*Target_ApiGroups).ApiGroups + vOpts := append(opts, + db.WithValidateField("target"), + db.WithValidateField("api_groups"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *Target_BasePaths: + if fv, exists := v.FldValidators["target.base_paths"]; exists { + val := m.GetTarget().(*Target_BasePaths).BasePaths + vOpts := append(opts, + db.WithValidateField("target"), + db.WithValidateField("base_paths"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultTargetValidator = func() *ValidateTarget { + v := &ValidateTarget{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTarget := v.TargetValidationRuleHandler + rulesTarget := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTarget(rulesTarget) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for Target.target: %s", err) + panic(errMsg) + } + v.FldValidators["target"] = vFn + + v.FldValidators["target.api_groups"] = APIGroupsValidator().Validate + v.FldValidators["target.base_paths"] = BasePathsTypeValidator().Validate + + return v +}() + +func TargetValidator() db.Validator { + return DefaultTargetValidator +} + +// augmented methods on protoc/std generated struct + +func (m *TokenLocation) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *TokenLocation) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *TokenLocation) DeepCopy() *TokenLocation { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &TokenLocation{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *TokenLocation) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *TokenLocation) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return TokenLocationValidator().Validate(ctx, m, opts...) +} + +type ValidateTokenLocation struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateTokenLocation) TokenLocationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for token_location") + } + return validatorFn, nil +} + +func (v *ValidateTokenLocation) TokenLocationCookieValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Cookie, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for cookie") + } + return oValidatorFn_Cookie, nil +} +func (v *ValidateTokenLocation) TokenLocationHeaderValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Header, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for header") + } + return oValidatorFn_Header, nil +} +func (v *ValidateTokenLocation) TokenLocationQueryParamValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_QueryParam, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for query_param") + } + return oValidatorFn_QueryParam, nil +} + +func (v *ValidateTokenLocation) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*TokenLocation) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *TokenLocation got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["token_location"]; exists { + val := m.GetTokenLocation() + vOpts := append(opts, + db.WithValidateField("token_location"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetTokenLocation().(type) { + case *TokenLocation_BearerToken: + if fv, exists := v.FldValidators["token_location.bearer_token"]; exists { + val := m.GetTokenLocation().(*TokenLocation_BearerToken).BearerToken + vOpts := append(opts, + db.WithValidateField("token_location"), + db.WithValidateField("bearer_token"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *TokenLocation_Cookie: + if fv, exists := v.FldValidators["token_location.cookie"]; exists { + val := m.GetTokenLocation().(*TokenLocation_Cookie).Cookie + vOpts := append(opts, + db.WithValidateField("token_location"), + db.WithValidateField("cookie"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *TokenLocation_Header: + if fv, exists := v.FldValidators["token_location.header"]; exists { + val := m.GetTokenLocation().(*TokenLocation_Header).Header + vOpts := append(opts, + db.WithValidateField("token_location"), + db.WithValidateField("header"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *TokenLocation_QueryParam: + if fv, exists := v.FldValidators["token_location.query_param"]; exists { + val := m.GetTokenLocation().(*TokenLocation_QueryParam).QueryParam + vOpts := append(opts, + db.WithValidateField("token_location"), + db.WithValidateField("query_param"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultTokenLocationValidator = func() *ValidateTokenLocation { + v := &ValidateTokenLocation{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTokenLocation := v.TokenLocationValidationRuleHandler + rulesTokenLocation := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTokenLocation(rulesTokenLocation) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for TokenLocation.token_location: %s", err) + panic(errMsg) + } + v.FldValidators["token_location"] = vFn + + vrhTokenLocationCookie := v.TokenLocationCookieValidationRuleHandler + rulesTokenLocationCookie := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1", + } + vFnMap["token_location.cookie"], err = vrhTokenLocationCookie(rulesTokenLocationCookie) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field TokenLocation.token_location_cookie: %s", err) + panic(errMsg) + } + vrhTokenLocationHeader := v.TokenLocationHeaderValidationRuleHandler + rulesTokenLocationHeader := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1", + } + vFnMap["token_location.header"], err = vrhTokenLocationHeader(rulesTokenLocationHeader) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field TokenLocation.token_location_header: %s", err) + panic(errMsg) + } + vrhTokenLocationQueryParam := v.TokenLocationQueryParamValidationRuleHandler + rulesTokenLocationQueryParam := map[string]string{ + "ves.io.schema.rules.string.max_bytes": "256", + "ves.io.schema.rules.string.min_bytes": "1", + } + vFnMap["token_location.query_param"], err = vrhTokenLocationQueryParam(rulesTokenLocationQueryParam) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field TokenLocation.token_location_query_param: %s", err) + panic(errMsg) + } + + v.FldValidators["token_location.cookie"] = vFnMap["token_location.cookie"] + v.FldValidators["token_location.header"] = vFnMap["token_location.header"] + v.FldValidators["token_location.query_param"] = vFnMap["token_location.query_param"] + + return v +}() + +func TokenLocationValidator() db.Validator { + return DefaultTokenLocationValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ValidateApiBySpecRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ValidateApiBySpecRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ValidateApiBySpecRule) DeepCopy() *ValidateApiBySpecRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ValidateApiBySpecRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ValidateApiBySpecRule) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ValidateApiBySpecRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ValidateApiBySpecRuleValidator().Validate(ctx, m, opts...) +} + +type ValidateValidateApiBySpecRule struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateValidateApiBySpecRule) OpenApiValidationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for open_api_validation_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*OpenApiValidationRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := OpenApiValidationRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for open_api_validation_rules") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*OpenApiValidationRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*OpenApiValidationRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated open_api_validation_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items open_api_validation_rules") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateValidateApiBySpecRule) FallThroughModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for fall_through_mode") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := OpenApiFallThroughModeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil + } + + return validatorFn, nil +} + +func (v *ValidateValidateApiBySpecRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ValidateApiBySpecRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ValidateApiBySpecRule got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fall_through_mode"]; exists { + + vOpts := append(opts, db.WithValidateField("fall_through_mode")) + if err := fv(ctx, m.GetFallThroughMode(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["open_api_validation_rules"]; exists { + vOpts := append(opts, db.WithValidateField("open_api_validation_rules")) + if err := fv(ctx, m.GetOpenApiValidationRules(), vOpts...); err != nil { + return err + } + + } + + switch m.GetOversizedBodyChoice().(type) { + case *ValidateApiBySpecRule_OversizedBodySkipValidation: + if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_skip_validation"]; exists { + val := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodySkipValidation).OversizedBodySkipValidation + vOpts := append(opts, + db.WithValidateField("oversized_body_choice"), + db.WithValidateField("oversized_body_skip_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ValidateApiBySpecRule_OversizedBodyFailValidation: + if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_fail_validation"]; exists { + val := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodyFailValidation).OversizedBodyFailValidation + vOpts := append(opts, + db.WithValidateField("oversized_body_choice"), + db.WithValidateField("oversized_body_fail_validation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["settings"]; exists { + + vOpts := append(opts, db.WithValidateField("settings")) + if err := fv(ctx, m.GetSettings(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultValidateApiBySpecRuleValidator = func() *ValidateValidateApiBySpecRule { + v := &ValidateValidateApiBySpecRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhOpenApiValidationRules := v.OpenApiValidationRulesValidationRuleHandler + rulesOpenApiValidationRules := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhOpenApiValidationRules(rulesOpenApiValidationRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ValidateApiBySpecRule.open_api_validation_rules: %s", err) + panic(errMsg) + } + v.FldValidators["open_api_validation_rules"] = vFn + + vrhFallThroughMode := v.FallThroughModeValidationRuleHandler + rulesFallThroughMode := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhFallThroughMode(rulesFallThroughMode) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ValidateApiBySpecRule.fall_through_mode: %s", err) + panic(errMsg) + } + v.FldValidators["fall_through_mode"] = vFn + + v.FldValidators["settings"] = OpenApiValidationCommonSettingsValidator().Validate + + return v +}() + +func ValidateApiBySpecRuleValidator() db.Validator { + return DefaultValidateApiBySpecRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ValidationPropertySetting) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ValidationPropertySetting) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ValidationPropertySetting) DeepCopy() *ValidationPropertySetting { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ValidationPropertySetting{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ValidationPropertySetting) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ValidationPropertySetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ValidationPropertySettingValidator().Validate(ctx, m, opts...) +} + +type ValidateValidationPropertySetting struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateValidationPropertySetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ValidationPropertySetting) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ValidationPropertySetting got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["headers"]; exists { + + vOpts := append(opts, db.WithValidateField("headers")) + if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["queryParameters"]; exists { + + vOpts := append(opts, db.WithValidateField("queryParameters")) + if err := fv(ctx, m.GetQueryParameters(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultValidationPropertySettingValidator = func() *ValidateValidationPropertySetting { + v := &ValidateValidationPropertySetting{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["queryParameters"] = ValidationSettingForQueryParametersValidator().Validate + + v.FldValidators["headers"] = ValidationSettingForHeadersValidator().Validate + + return v +}() + +func ValidationPropertySettingValidator() db.Validator { + return DefaultValidationPropertySettingValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ValidationSettingForHeaders) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ValidationSettingForHeaders) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ValidationSettingForHeaders) DeepCopy() *ValidationSettingForHeaders { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ValidationSettingForHeaders{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ValidationSettingForHeaders) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ValidationSettingForHeaders) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ValidationSettingForHeadersValidator().Validate(ctx, m, opts...) +} + +type ValidateValidationSettingForHeaders struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateValidationSettingForHeaders) AdditionalHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for additional_headers_choice") + } + return validatorFn, nil +} + +func (v *ValidateValidationSettingForHeaders) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ValidationSettingForHeaders) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ValidationSettingForHeaders got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["additional_headers_choice"]; exists { + val := m.GetAdditionalHeadersChoice() + vOpts := append(opts, + db.WithValidateField("additional_headers_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAdditionalHeadersChoice().(type) { + case *ValidationSettingForHeaders_AllowAdditionalHeaders: + if fv, exists := v.FldValidators["additional_headers_choice.allow_additional_headers"]; exists { + val := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_AllowAdditionalHeaders).AllowAdditionalHeaders + vOpts := append(opts, + db.WithValidateField("additional_headers_choice"), + db.WithValidateField("allow_additional_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ValidationSettingForHeaders_DisallowAdditionalHeaders: + if fv, exists := v.FldValidators["additional_headers_choice.disallow_additional_headers"]; exists { + val := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_DisallowAdditionalHeaders).DisallowAdditionalHeaders + vOpts := append(opts, + db.WithValidateField("additional_headers_choice"), + db.WithValidateField("disallow_additional_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultValidationSettingForHeadersValidator = func() *ValidateValidationSettingForHeaders { + v := &ValidateValidationSettingForHeaders{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAdditionalHeadersChoice := v.AdditionalHeadersChoiceValidationRuleHandler + rulesAdditionalHeadersChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAdditionalHeadersChoice(rulesAdditionalHeadersChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ValidationSettingForHeaders.additional_headers_choice: %s", err) + panic(errMsg) + } + v.FldValidators["additional_headers_choice"] = vFn + + return v +}() + +func ValidationSettingForHeadersValidator() db.Validator { + return DefaultValidationSettingForHeadersValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ValidationSettingForQueryParameters) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ValidationSettingForQueryParameters) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ValidationSettingForQueryParameters) DeepCopy() *ValidationSettingForQueryParameters { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ValidationSettingForQueryParameters{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ValidationSettingForQueryParameters) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ValidationSettingForQueryParameters) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ValidationSettingForQueryParametersValidator().Validate(ctx, m, opts...) +} + +type ValidateValidationSettingForQueryParameters struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateValidationSettingForQueryParameters) AdditionalParametersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for additional_parameters_choice") + } + return validatorFn, nil +} + +func (v *ValidateValidationSettingForQueryParameters) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ValidationSettingForQueryParameters) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ValidationSettingForQueryParameters got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["additional_parameters_choice"]; exists { + val := m.GetAdditionalParametersChoice() + vOpts := append(opts, + db.WithValidateField("additional_parameters_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAdditionalParametersChoice().(type) { + case *ValidationSettingForQueryParameters_AllowAdditionalParameters: + if fv, exists := v.FldValidators["additional_parameters_choice.allow_additional_parameters"]; exists { + val := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_AllowAdditionalParameters).AllowAdditionalParameters + vOpts := append(opts, + db.WithValidateField("additional_parameters_choice"), + db.WithValidateField("allow_additional_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ValidationSettingForQueryParameters_DisallowAdditionalParameters: + if fv, exists := v.FldValidators["additional_parameters_choice.disallow_additional_parameters"]; exists { + val := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_DisallowAdditionalParameters).DisallowAdditionalParameters + vOpts := append(opts, + db.WithValidateField("additional_parameters_choice"), + db.WithValidateField("disallow_additional_parameters"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultValidationSettingForQueryParametersValidator = func() *ValidateValidationSettingForQueryParameters { + v := &ValidateValidationSettingForQueryParameters{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAdditionalParametersChoice := v.AdditionalParametersChoiceValidationRuleHandler + rulesAdditionalParametersChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAdditionalParametersChoice(rulesAdditionalParametersChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ValidationSettingForQueryParameters.additional_parameters_choice: %s", err) + panic(errMsg) + } + v.FldValidators["additional_parameters_choice"] = vFn + + return v +}() + +func ValidationSettingForQueryParametersValidator() db.Validator { + return DefaultValidationSettingForQueryParametersValidator +} diff --git a/pbgo/extschema/schema/views/common_waf/pkg.vespkg.go b/pbgo/extschema/schema/views/common_waf/pkg.vespkg.go new file mode 100644 index 000000000..8ff53d73a --- /dev/null +++ b/pbgo/extschema/schema/views/common_waf/pkg.vespkg.go @@ -0,0 +1,99 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package common_waf + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.views.common_waf.APIEndpointProtectionRule"] = APIEndpointProtectionRuleValidator() + vr["ves.io.schema.views.common_waf.APIGroupProtectionRule"] = APIGroupProtectionRuleValidator() + vr["ves.io.schema.views.common_waf.APIGroups"] = APIGroupsValidator() + vr["ves.io.schema.views.common_waf.APIProtectionRuleAction"] = APIProtectionRuleActionValidator() + vr["ves.io.schema.views.common_waf.APIProtectionRules"] = APIProtectionRulesValidator() + vr["ves.io.schema.views.common_waf.APIRateLimit"] = APIRateLimitValidator() + vr["ves.io.schema.views.common_waf.APISpecificationSettings"] = APISpecificationSettingsValidator() + vr["ves.io.schema.views.common_waf.ApiDefinitionList"] = ApiDefinitionListValidator() + vr["ves.io.schema.views.common_waf.ApiDiscoverySetting"] = ApiDiscoverySettingValidator() + vr["ves.io.schema.views.common_waf.ApiEndpointDetails"] = ApiEndpointDetailsValidator() + vr["ves.io.schema.views.common_waf.ApiEndpointRule"] = ApiEndpointRuleValidator() + vr["ves.io.schema.views.common_waf.Audiences"] = AudiencesValidator() + vr["ves.io.schema.views.common_waf.BasePathsType"] = BasePathsTypeValidator() + vr["ves.io.schema.views.common_waf.BypassRateLimitingRule"] = BypassRateLimitingRuleValidator() + vr["ves.io.schema.views.common_waf.BypassRateLimitingRules"] = BypassRateLimitingRulesValidator() + vr["ves.io.schema.views.common_waf.ChallengeRule"] = ChallengeRuleValidator() + vr["ves.io.schema.views.common_waf.ChallengeRuleList"] = ChallengeRuleListValidator() + vr["ves.io.schema.views.common_waf.CustomFallThroughMode"] = CustomFallThroughModeValidator() + vr["ves.io.schema.views.common_waf.CustomIpAllowedList"] = CustomIpAllowedListValidator() + vr["ves.io.schema.views.common_waf.EnableChallenge"] = EnableChallengeValidator() + vr["ves.io.schema.views.common_waf.FallThroughRule"] = FallThroughRuleValidator() + vr["ves.io.schema.views.common_waf.HttpHeaderMatcherList"] = HttpHeaderMatcherListValidator() + vr["ves.io.schema.views.common_waf.IPThreatCategoryListType"] = IPThreatCategoryListTypeValidator() + vr["ves.io.schema.views.common_waf.InlineRateLimiter"] = InlineRateLimiterValidator() + vr["ves.io.schema.views.common_waf.JWKS"] = JWKSValidator() + vr["ves.io.schema.views.common_waf.JWTValidation"] = JWTValidationValidator() + vr["ves.io.schema.views.common_waf.MandatoryClaims"] = MandatoryClaimsValidator() + vr["ves.io.schema.views.common_waf.OpenApiFallThroughMode"] = OpenApiFallThroughModeValidator() + vr["ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings"] = OpenApiValidationAllSpecEndpointsSettingsValidator() + vr["ves.io.schema.views.common_waf.OpenApiValidationCommonSettings"] = OpenApiValidationCommonSettingsValidator() + vr["ves.io.schema.views.common_waf.OpenApiValidationMode"] = OpenApiValidationModeValidator() + vr["ves.io.schema.views.common_waf.OpenApiValidationModeActive"] = OpenApiValidationModeActiveValidator() + vr["ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse"] = OpenApiValidationModeActiveResponseValidator() + vr["ves.io.schema.views.common_waf.OpenApiValidationRule"] = OpenApiValidationRuleValidator() + vr["ves.io.schema.views.common_waf.PolicyBasedChallenge"] = PolicyBasedChallengeValidator() + vr["ves.io.schema.views.common_waf.RateLimitConfigType"] = RateLimitConfigTypeValidator() + vr["ves.io.schema.views.common_waf.ReservedClaims"] = ReservedClaimsValidator() + vr["ves.io.schema.views.common_waf.ServerUrlRule"] = ServerUrlRuleValidator() + vr["ves.io.schema.views.common_waf.ServicePolicyList"] = ServicePolicyListValidator() + vr["ves.io.schema.views.common_waf.SimpleClientSrcRule"] = SimpleClientSrcRuleValidator() + vr["ves.io.schema.views.common_waf.Target"] = TargetValidator() + vr["ves.io.schema.views.common_waf.TokenLocation"] = TokenLocationValidator() + vr["ves.io.schema.views.common_waf.ValidateApiBySpecRule"] = ValidateApiBySpecRuleValidator() + vr["ves.io.schema.views.common_waf.ValidationPropertySetting"] = ValidationPropertySettingValidator() + vr["ves.io.schema.views.common_waf.ValidationSettingForHeaders"] = ValidationSettingForHeadersValidator() + vr["ves.io.schema.views.common_waf.ValidationSettingForQueryParameters"] = ValidationSettingForQueryParametersValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/forward_proxy_policy/crudapi/api.vesapi.go index b01da59e3..65b514c1b 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/crudapi/api.vesapi.go @@ -2963,11 +2963,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Port Matcher" }, "prefix_list": { - "description": "Exclusive with [all_sources ip_prefix_set label_selector]\n list of ip prefixes that are representing source of traffic seen by proxy\n\nExample: - \"192.168.20.0/24\"-", - "title": "ipv4 prefix list", + "description": "Exclusive with [all_sources ip_prefix_set label_selector]\n list of ip prefixes that are representing source of traffic seen by proxy\n list is a sublist of both V4 and V6 prefix list", + "title": "ip prefix list", "$ref": "#/definitions/viewsPrefixStringListType", - "x-displayname": "IPv4 Prefix List", - "x-ves-example": "192.168.20.0/24" + "x-displayname": "IP Prefix List" }, "tls_list": { "description": "Exclusive with [all_destinations dst_asn_list dst_asn_set dst_ip_prefix_set dst_label_selector dst_prefix_list http_list url_category_list]\n Domains in SNI for TLS connections", @@ -3331,14 +3330,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -3723,7 +3722,7 @@ var APISwaggerJSON string = `{ }, "prefixes": { "type": "array", - "description": " Destination IPv4 prefixes.\n\nExample: - \"10.0.0./24\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Destination IPv4 prefixes.\n\nExample: - \"10.0.0.1/24\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "prefixes", "minItems": 1, "maxItems": 32, @@ -3731,7 +3730,7 @@ var APISwaggerJSON string = `{ "type": "string" }, "x-displayname": "IPv4 Prefixes", - "x-ves-example": "10.0.0./24", + "x-ves-example": "10.0.0.1/24", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", @@ -3836,10 +3835,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/object.pb.go b/pbgo/extschema/schema/views/forward_proxy_policy/object.pb.go index f6d0595d6..08abb1ffe 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/object.pb.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/object.pb.go @@ -231,46 +231,47 @@ func init() { } var fileDescriptor_f2ae0af24ac1bfa4 = []byte{ - // 616 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x4f, 0x13, 0x4f, - 0x18, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0xfc, 0xc8, 0xfe, 0x4c, 0xac, 0xa8, 0x23, 0xa9, 0x17, - 0x0e, 0xee, 0xae, 0xa9, 0x92, 0x08, 0x1a, 0x0f, 0x60, 0xe4, 0x02, 0x31, 0x16, 0xe3, 0xc1, 0x44, - 0x9b, 0xd9, 0xe9, 0xd3, 0x65, 0xa4, 0xdb, 0x99, 0xcc, 0xcc, 0xb6, 0xf4, 0x60, 0xe2, 0x4b, 0x30, - 0xf1, 0xea, 0x0b, 0x30, 0xc6, 0xbb, 0x57, 0xf1, 0xe4, 0x91, 0x70, 0xe2, 0x28, 0xdb, 0x8b, 0x47, - 0x0e, 0xbe, 0x00, 0xc3, 0x2c, 0x4b, 0x68, 0xd9, 0xc4, 0x86, 0xdb, 0x6c, 0x9e, 0xef, 0xe7, 0xbb, - 0xcf, 0x3c, 0x7f, 0x06, 0x2f, 0x75, 0x41, 0x7b, 0x5c, 0xf8, 0x9a, 0x6d, 0x43, 0x44, 0xfd, 0x2e, - 0x87, 0x9e, 0xf6, 0x5b, 0x42, 0xf5, 0xa8, 0x6a, 0x36, 0xa4, 0x12, 0xbb, 0xfd, 0x86, 0x14, 0x6d, - 0xce, 0xfa, 0xbe, 0x08, 0xde, 0x02, 0x33, 0x9e, 0x54, 0xc2, 0x08, 0x67, 0x31, 0xc5, 0xbc, 0x14, - 0xf3, 0x2c, 0xe6, 0xe5, 0x61, 0xf3, 0x6e, 0xc8, 0xcd, 0x76, 0x1c, 0x78, 0x4c, 0x44, 0x7e, 0x28, - 0x42, 0xe1, 0x5b, 0x83, 0x20, 0x6e, 0xd9, 0x2f, 0xfb, 0x61, 0x4f, 0xa9, 0xf1, 0xfc, 0xf5, 0xe1, - 0x7c, 0x84, 0x34, 0x5c, 0x74, 0xf4, 0x69, 0xf0, 0xda, 0x70, 0xd0, 0xf4, 0x25, 0x64, 0xa1, 0xea, - 0xc8, 0x3d, 0x40, 0x43, 0xa7, 0x3b, 0x82, 0x2f, 0x5c, 0xbc, 0x6b, 0x63, 0x58, 0x71, 0x7f, 0xec, - 0x6a, 0x9c, 0xff, 0xf7, 0xad, 0x3c, 0xea, 0x9c, 0xa0, 0xfa, 0x71, 0x02, 0x97, 0x9f, 0xd9, 0xf2, - 0x39, 0xcb, 0x78, 0x2a, 0x02, 0x43, 0x9b, 0xd4, 0xd0, 0x0a, 0x5a, 0x40, 0x8b, 0xd3, 0xb5, 0x9b, - 0xde, 0x70, 0x2d, 0x53, 0xe1, 0x26, 0x18, 0xfa, 0xa2, 0x2f, 0xa1, 0x7e, 0x26, 0x77, 0x36, 0xf0, - 0x7f, 0xba, 0xaf, 0x0d, 0x44, 0x8d, 0x33, 0x87, 0xa2, 0x75, 0xb8, 0x3d, 0xe2, 0xb0, 0x65, 0x55, - 0x23, 0x3e, 0xb3, 0x29, 0xbb, 0x99, 0xb9, 0x3d, 0xc5, 0x13, 0x5a, 0x02, 0xab, 0x94, 0xac, 0x45, - 0xcd, 0x1b, 0xb7, 0xa1, 0xde, 0x96, 0x04, 0x66, 0x1d, 0x2d, 0xbf, 0xf2, 0xad, 0xf8, 0x63, 0xaf, - 0x52, 0x9c, 0x43, 0x07, 0x7b, 0x95, 0xaf, 0x45, 0xbc, 0x8c, 0x4b, 0xeb, 0x60, 0x9c, 0x5a, 0x6b, - 0x69, 0x97, 0xb9, 0x1a, 0x58, 0xac, 0x20, 0x02, 0xbd, 0xed, 0x06, 0x54, 0x73, 0xe6, 0x46, 0xa2, - 0xc3, 0x8d, 0x50, 0x77, 0x4e, 0x1a, 0xe1, 0x72, 0xe1, 0x76, 0xc0, 0xf4, 0x84, 0xda, 0x71, 0x15, - 0xd0, 0x26, 0x7e, 0x88, 0x27, 0xeb, 0x20, 0xdb, 0x94, 0x81, 0x73, 0x37, 0x1f, 0x8f, 0x35, 0x5c, - 0x64, 0x7b, 0x8a, 0x1b, 0xc0, 0x2b, 0xb8, 0xbc, 0xa6, 0x80, 0x9a, 0x4b, 0xb2, 0x4f, 0xa0, 0x0d, - 0x97, 0x64, 0x27, 0x36, 0xb8, 0xbe, 0xd4, 0x85, 0xab, 0xaf, 0xf1, 0x54, 0x56, 0x4b, 0xe7, 0x39, - 0x9e, 0x0c, 0x59, 0xc3, 0x36, 0x24, 0x9d, 0x8a, 0x07, 0xe3, 0x37, 0x64, 0xbd, 0x2d, 0x02, 0xda, - 0x3e, 0x6b, 0x4b, 0x39, 0x64, 0x27, 0xe7, 0xea, 0x1f, 0x84, 0x67, 0xb6, 0x0c, 0x35, 0xb1, 0x1e, - 0x7b, 0xf4, 0x52, 0x79, 0xce, 0xe8, 0xbd, 0xc4, 0xd3, 0xe9, 0xfa, 0x37, 0x14, 0xb4, 0x74, 0xa5, - 0xb8, 0x50, 0x5a, 0x9c, 0xae, 0xdd, 0xc8, 0x1d, 0xdc, 0x3a, 0xb4, 0x4e, 0xe0, 0xd5, 0xab, 0x5f, - 0xde, 0x5d, 0xc9, 0x4b, 0xb7, 0x8e, 0x45, 0xa6, 0xd3, 0xce, 0x23, 0x8c, 0x99, 0xe8, 0x34, 0xb9, - 0xdd, 0xc1, 0x4a, 0x29, 0xd7, 0x76, 0x2d, 0x13, 0xd8, 0x9c, 0xce, 0xe9, 0x57, 0xfe, 0x3f, 0x78, - 0x3c, 0x87, 0x67, 0xf1, 0x4c, 0x96, 0xa6, 0x17, 0xf3, 0xe6, 0xea, 0x27, 0xb4, 0x7f, 0x44, 0x0a, - 0x87, 0x47, 0xa4, 0x70, 0x7c, 0x44, 0xd0, 0xfb, 0x84, 0xa0, 0xcf, 0x09, 0x41, 0x3f, 0x13, 0x82, - 0xf6, 0x13, 0x82, 0x0e, 0x13, 0x82, 0x7e, 0x25, 0x04, 0xfd, 0x4e, 0x48, 0xe1, 0x38, 0x21, 0xe8, - 0xc3, 0x80, 0x14, 0xbe, 0x0f, 0x08, 0xda, 0x1f, 0x90, 0xc2, 0xe1, 0x80, 0x14, 0x5e, 0xbd, 0x09, - 0x85, 0xdc, 0x09, 0xbd, 0xae, 0x68, 0x1b, 0x50, 0x8a, 0x7a, 0xb1, 0xf6, 0xed, 0xa1, 0x25, 0x54, - 0xe4, 0x4a, 0x25, 0xba, 0xbc, 0x09, 0xca, 0xcd, 0xc2, 0xbe, 0x0c, 0x42, 0xe1, 0xc3, 0xae, 0x39, - 0x5d, 0xfd, 0x7f, 0xbe, 0x1b, 0x41, 0xd9, 0xbe, 0x08, 0xf7, 0xfe, 0x06, 0x00, 0x00, 0xff, 0xff, - 0x77, 0xe5, 0x60, 0xc0, 0x78, 0x05, 0x00, 0x00, + // 636 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x4f, 0x4f, 0x13, 0x4f, + 0x18, 0xc7, 0x3b, 0x94, 0x5f, 0x21, 0x03, 0xe1, 0x47, 0x56, 0x13, 0x2b, 0xea, 0xd8, 0xd4, 0x0b, + 0x07, 0x77, 0x37, 0x41, 0x49, 0x94, 0x18, 0x0f, 0x60, 0xe4, 0x02, 0x21, 0x16, 0x62, 0x22, 0xfe, + 0x69, 0x66, 0x67, 0x9f, 0x2e, 0x23, 0xdd, 0xce, 0x66, 0x66, 0xb6, 0xa5, 0x07, 0x13, 0x5f, 0x82, + 0x2f, 0xc0, 0x17, 0x60, 0x3c, 0xfb, 0x02, 0xc4, 0x93, 0x17, 0x13, 0xc2, 0xa9, 0x47, 0xd9, 0x5e, + 0x3c, 0x72, 0xf0, 0x05, 0x18, 0x66, 0x59, 0xa4, 0x75, 0xa3, 0xbd, 0x70, 0x9b, 0xc9, 0xf3, 0xfd, + 0x7e, 0xe6, 0x99, 0x67, 0x9e, 0x79, 0xf0, 0x62, 0x1b, 0x94, 0xc3, 0x85, 0xab, 0xd8, 0x0e, 0x84, + 0xd4, 0x6d, 0x73, 0xe8, 0x28, 0xb7, 0x21, 0x64, 0x87, 0x4a, 0xbf, 0x1e, 0x49, 0xb1, 0xd7, 0xad, + 0x47, 0xa2, 0xc9, 0x59, 0xd7, 0x15, 0xde, 0x6b, 0x60, 0xda, 0x89, 0xa4, 0xd0, 0xc2, 0x9a, 0x4f, + 0x6d, 0x4e, 0x6a, 0x73, 0x8c, 0xcd, 0xc9, 0xb3, 0xcd, 0xd9, 0x01, 0xd7, 0x3b, 0xb1, 0xe7, 0x30, + 0x11, 0xba, 0x81, 0x08, 0x84, 0x6b, 0x00, 0x5e, 0xdc, 0x30, 0x3b, 0xb3, 0x31, 0xab, 0x14, 0x3c, + 0x77, 0x6d, 0x30, 0x1f, 0x11, 0x69, 0x2e, 0x5a, 0xea, 0x34, 0x78, 0x75, 0x30, 0xa8, 0xbb, 0x11, + 0x64, 0xa1, 0xea, 0xd0, 0x3d, 0x40, 0x41, 0xab, 0x3d, 0x64, 0xaf, 0xfc, 0x79, 0xd7, 0xfa, 0xa0, + 0xe2, 0xee, 0xc8, 0xd5, 0x38, 0x7f, 0xf6, 0xcd, 0x3c, 0xd7, 0x39, 0x41, 0xf5, 0xd3, 0x7f, 0xb8, + 0xb4, 0x61, 0xca, 0x67, 0xdd, 0xc7, 0x93, 0x21, 0x68, 0xea, 0x53, 0x4d, 0xcb, 0xa8, 0x82, 0xe6, + 0xa7, 0x16, 0x6e, 0x38, 0x83, 0xb5, 0x4c, 0x85, 0xeb, 0xa0, 0xe9, 0x56, 0x37, 0x82, 0xda, 0x99, + 0xdc, 0x5a, 0xc3, 0xff, 0xab, 0xae, 0xd2, 0x10, 0xd6, 0xcf, 0x08, 0x63, 0x86, 0x70, 0x6b, 0x88, + 0xb0, 0x69, 0x54, 0x43, 0x9c, 0x99, 0xd4, 0xbb, 0x9e, 0xd1, 0x1e, 0xe3, 0x71, 0x15, 0x01, 0x2b, + 0x17, 0x0d, 0x62, 0xc1, 0x19, 0xf5, 0x41, 0x9d, 0xcd, 0x08, 0x98, 0x21, 0x1a, 0xff, 0x52, 0xaf, + 0xf8, 0x65, 0xbf, 0x3c, 0x36, 0x8b, 0x0e, 0xf7, 0xcb, 0xdf, 0x8a, 0xf8, 0x39, 0x2e, 0xae, 0x82, + 0xb6, 0xb6, 0x1a, 0x8b, 0x7b, 0xcc, 0x56, 0xc0, 0x62, 0x09, 0x21, 0xa8, 0x1d, 0xdb, 0xa3, 0x8a, + 0x33, 0x3b, 0x14, 0x2d, 0xae, 0x85, 0xbc, 0x5d, 0x19, 0x0e, 0x2b, 0x4d, 0x5b, 0x3e, 0x95, 0xfe, + 0x6f, 0x45, 0x1b, 0x94, 0xcd, 0x85, 0xdd, 0x02, 0xdd, 0x11, 0x72, 0xd7, 0x96, 0x40, 0x7d, 0xbc, + 0x8d, 0x27, 0x6a, 0x10, 0x35, 0x29, 0x03, 0x6b, 0x23, 0xff, 0x80, 0x58, 0xc1, 0xdf, 0xe8, 0x69, + 0x78, 0x08, 0xdd, 0x91, 0x5c, 0x03, 0x7e, 0x86, 0x4b, 0x2b, 0x12, 0xa8, 0xbe, 0x18, 0xf4, 0x23, + 0x68, 0xc2, 0x45, 0xa0, 0x5f, 0xe0, 0xf1, 0x35, 0xae, 0x2e, 0xa8, 0xde, 0xd5, 0x97, 0x78, 0x32, + 0x7b, 0x6c, 0xeb, 0x09, 0x9e, 0x08, 0x58, 0xdd, 0x74, 0x4c, 0xda, 0xb6, 0xf7, 0x46, 0xef, 0x98, + 0xd5, 0xa6, 0xf0, 0x68, 0xf3, 0xac, 0x6f, 0x4a, 0x01, 0x3b, 0x59, 0x57, 0x7f, 0x22, 0x3c, 0xbd, + 0xa9, 0xa9, 0x8e, 0xd5, 0xc8, 0x7f, 0x23, 0x95, 0xe7, 0xfc, 0x8d, 0xa7, 0x78, 0x2a, 0x9d, 0x4f, + 0x75, 0x09, 0x0d, 0x55, 0x1e, 0xab, 0x14, 0xe7, 0xa7, 0x16, 0xae, 0xe7, 0xfe, 0xac, 0x1a, 0x34, + 0x4e, 0xcc, 0xcb, 0x57, 0x3e, 0xbe, 0xb9, 0x9c, 0x97, 0x6e, 0x0d, 0x8b, 0x4c, 0xa7, 0xac, 0x07, + 0x18, 0x33, 0xd1, 0xf2, 0xb9, 0x19, 0x12, 0xe5, 0x62, 0x2e, 0x76, 0x25, 0x13, 0x98, 0x9c, 0xce, + 0xe9, 0x97, 0x2e, 0x1d, 0x3e, 0x9c, 0xc5, 0x33, 0x78, 0x3a, 0x4b, 0xd3, 0x89, 0xb9, 0xbf, 0xfc, + 0x1e, 0x1d, 0x1c, 0x91, 0x42, 0xef, 0x88, 0x14, 0x8e, 0x8f, 0x08, 0x7a, 0x9b, 0x10, 0xf4, 0x21, + 0x21, 0xe8, 0x6b, 0x42, 0xd0, 0x41, 0x42, 0x50, 0x2f, 0x21, 0xe8, 0x7b, 0x42, 0xd0, 0x8f, 0x84, + 0x14, 0x8e, 0x13, 0x82, 0xde, 0xf5, 0x49, 0xe1, 0x73, 0x9f, 0xa0, 0x83, 0x3e, 0x29, 0xf4, 0xfa, + 0xa4, 0xb0, 0xfd, 0x2a, 0x10, 0xd1, 0x6e, 0xe0, 0xb4, 0x45, 0x53, 0x83, 0x94, 0xd4, 0x89, 0x95, + 0x6b, 0x16, 0x0d, 0x21, 0x43, 0x3b, 0x92, 0xa2, 0xcd, 0x7d, 0x90, 0x76, 0x16, 0x76, 0x23, 0x2f, + 0x10, 0x2e, 0xec, 0xe9, 0xd3, 0xd9, 0xf4, 0xcf, 0xc1, 0xe6, 0x95, 0xcc, 0xc8, 0xba, 0xf3, 0x2b, + 0x00, 0x00, 0xff, 0xff, 0x7f, 0x1a, 0xfa, 0xb0, 0x19, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/pkg.vespkg.go b/pbgo/extschema/schema/views/forward_proxy_policy/pkg.vespkg.go index 656a6f58e..8fce8b8db 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/pkg.vespkg.go @@ -75,60 +75,60 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.forward_proxy_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.forward_proxy_policy.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.forward_proxy_policy.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.forward_proxy_policy.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -144,11 +144,11 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.forward_proxy_policy.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.rule_list.rules.#.dst_prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rule_list.rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.pb.go b/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.pb.go index 111d2f21c..55eb53e66 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.pb.go @@ -1064,110 +1064,111 @@ func init() { } var fileDescriptor_b9061640061ac3e4 = []byte{ - // 1635 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x1b, 0x4f, - 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x63, 0xbf, 0x43, 0x9b, 0x3a, 0xa6, 0x18, 0xe3, 0x56, - 0x28, 0x8a, 0xf0, 0x6e, 0x09, 0x4d, 0x69, 0x02, 0xfd, 0xe1, 0x24, 0x76, 0x94, 0x36, 0x69, 0xa2, - 0xb5, 0x53, 0x55, 0x45, 0x74, 0xb5, 0x5e, 0x8f, 0x9d, 0x25, 0xb6, 0x77, 0x99, 0x19, 0x3b, 0x35, - 0x25, 0x12, 0xea, 0x81, 0x0b, 0x1c, 0x10, 0xdc, 0x10, 0x87, 0x5e, 0x90, 0xfa, 0x27, 0x20, 0x72, - 0xe9, 0x01, 0xd4, 0xaa, 0x07, 0x54, 0x01, 0x87, 0x1e, 0xa9, 0xc3, 0xa1, 0x07, 0x84, 0x2a, 0xc4, - 0x81, 0x23, 0xda, 0x99, 0x5d, 0xd7, 0x76, 0x0c, 0xb5, 0x9d, 0x9c, 0xbc, 0x33, 0xef, 0xbd, 0xcf, - 0xbc, 0xcf, 0x9b, 0xf7, 0x9e, 0xdf, 0x2e, 0xbc, 0xd9, 0xc0, 0x54, 0x36, 0x2d, 0x85, 0x1a, 0x7b, - 0xb8, 0xaa, 0x2b, 0x0d, 0x13, 0x1f, 0x50, 0xa5, 0x64, 0x91, 0x03, 0x9d, 0x14, 0x35, 0x9b, 0x58, - 0x4f, 0x9a, 0x9a, 0x6d, 0x55, 0x4c, 0xa3, 0xa9, 0xd8, 0xf5, 0x42, 0xc5, 0x34, 0x34, 0x83, 0xd4, - 0x8b, 0xba, 0x6d, 0xca, 0x36, 0xb1, 0x98, 0x85, 0xe6, 0x84, 0xb9, 0x2c, 0xcc, 0x65, 0x6e, 0x2e, - 0xf7, 0x33, 0x8f, 0xa5, 0xca, 0x26, 0xdb, 0xab, 0x17, 0x64, 0xc3, 0xaa, 0x2a, 0x65, 0xab, 0x6c, - 0x29, 0x1c, 0xa0, 0x50, 0x2f, 0xf1, 0x15, 0x5f, 0xf0, 0x27, 0x01, 0x1c, 0xbb, 0x54, 0xb6, 0xac, - 0x72, 0x05, 0x2b, 0xba, 0x6d, 0x2a, 0x7a, 0xad, 0x66, 0x31, 0x9d, 0x99, 0x56, 0x8d, 0xba, 0xd2, - 0x2f, 0xbb, 0xd2, 0x36, 0x06, 0xae, 0xda, 0xac, 0xe9, 0x0a, 0x63, 0xdd, 0x94, 0x30, 0x21, 0x16, - 0x69, 0x1b, 0x76, 0xcb, 0x2c, 0xbb, 0x13, 0x75, 0xb6, 0x5b, 0xc8, 0x9a, 0x36, 0xf6, 0x44, 0xc9, - 0x9e, 0x30, 0x61, 0x8a, 0x6b, 0x8d, 0x1e, 0xf3, 0xc4, 0xc9, 0x50, 0x6a, 0xdd, 0x1a, 0x8b, 0x03, - 0x07, 0xdb, 0x2a, 0xfc, 0x00, 0x1b, 0xcc, 0x35, 0xbb, 0x36, 0xb0, 0x59, 0xa7, 0xcb, 0x5f, 0xed, - 0x67, 0xd5, 0xa1, 0x90, 0xfc, 0x3d, 0x80, 0x93, 0xab, 0x04, 0xeb, 0x0c, 0xab, 0xf8, 0x87, 0x75, - 0x4c, 0x19, 0xba, 0x0d, 0x43, 0x55, 0xcc, 0xf4, 0xa2, 0xce, 0xf4, 0x28, 0x48, 0x80, 0xb9, 0xc8, - 0xc2, 0x65, 0xb9, 0xfb, 0x82, 0xb7, 0xb9, 0x5f, 0xc2, 0x6a, 0x0b, 0x33, 0x3d, 0xdf, 0xb4, 0xb1, - 0xda, 0x36, 0x42, 0xdf, 0x87, 0x01, 0x6a, 0x63, 0x23, 0xea, 0xe3, 0xc6, 0x37, 0xe4, 0x41, 0xb3, - 0x43, 0x16, 0x88, 0x39, 0x1b, 0x1b, 0x0e, 0xe2, 0xca, 0xf4, 0xaf, 0x0f, 0x27, 0x1c, 0x20, 0xb9, - 0x6c, 0x68, 0xce, 0xaf, 0xca, 0x61, 0x97, 0xc3, 0x6f, 0x6e, 0x05, 0x85, 0x07, 0xc9, 0x9f, 0xfa, - 0xe0, 0x94, 0xe7, 0x3c, 0xb5, 0xad, 0x1a, 0xc5, 0xe8, 0xbb, 0x27, 0xbc, 0x4f, 0xf4, 0xf5, 0x7e, - 0x1d, 0xb3, 0x3e, 0xae, 0x6f, 0xc3, 0x69, 0xda, 0xa4, 0x0c, 0x57, 0xb5, 0x36, 0x88, 0x9f, 0x83, - 0x7c, 0xbd, 0x07, 0x24, 0xc7, 0xb5, 0x4e, 0x42, 0x4d, 0x09, 0xf3, 0x2d, 0x0f, 0xf0, 0x51, 0x57, - 0x2c, 0x16, 0x07, 0x8f, 0xc5, 0x3a, 0x66, 0x43, 0x04, 0xe2, 0x9f, 0x00, 0x4e, 0xa9, 0xd8, 0xae, - 0xe8, 0x46, 0xfb, 0x1a, 0xef, 0x9c, 0x08, 0xc4, 0x95, 0xbe, 0x81, 0x70, 0xcd, 0xfa, 0x04, 0xe3, - 0x71, 0x97, 0xef, 0x4b, 0x83, 0xfb, 0xee, 0x42, 0x7e, 0xc6, 0x7f, 0xa4, 0x40, 0x89, 0x60, 0x6a, - 0xd5, 0x89, 0x81, 0xb5, 0x06, 0x26, 0xd4, 0xb4, 0x6a, 0x3c, 0xda, 0xe1, 0x95, 0xc0, 0x87, 0x23, - 0x00, 0xd4, 0x69, 0x4f, 0xfa, 0x40, 0x08, 0x3b, 0x09, 0x7f, 0x01, 0xa7, 0xdb, 0x7c, 0xc5, 0xcd, - 0x27, 0x5f, 0x00, 0x08, 0xd7, 0x31, 0xf3, 0xf8, 0x5f, 0x82, 0xe1, 0x9a, 0x5e, 0xc5, 0xd4, 0xd6, - 0x0d, 0xcc, 0x03, 0x10, 0x56, 0x3f, 0x6d, 0x20, 0x04, 0x03, 0xce, 0x82, 0x73, 0x0b, 0xab, 0xfc, - 0x19, 0xed, 0x41, 0xe7, 0x44, 0x0e, 0xa6, 0x95, 0x2c, 0x52, 0xd5, 0x19, 0x77, 0x67, 0x6a, 0xe1, - 0xf6, 0x50, 0xd7, 0xe6, 0x39, 0x94, 0xe5, 0x10, 0xab, 0x56, 0x11, 0xab, 0x53, 0xa4, 0x6b, 0x2f, - 0xf9, 0xc7, 0x20, 0x8c, 0x74, 0x68, 0xa2, 0x87, 0x30, 0x62, 0xf0, 0x34, 0xe6, 0xe7, 0xba, 0x01, - 0xff, 0xf6, 0xb0, 0x85, 0xe3, 0x32, 0x57, 0xa1, 0xc0, 0x72, 0xce, 0x42, 0xdf, 0x83, 0x13, 0x44, - 0xc4, 0x49, 0x40, 0xfb, 0x87, 0xad, 0xc9, 0xee, 0xac, 0x52, 0x23, 0x2e, 0x1a, 0x07, 0xef, 0x77, - 0x81, 0x81, 0xff, 0x73, 0x81, 0x5d, 0xc5, 0x39, 0x7e, 0x16, 0xc5, 0x79, 0xee, 0x4c, 0x8a, 0x33, - 0x78, 0xf6, 0xc5, 0x89, 0x76, 0x61, 0x90, 0x32, 0x9d, 0xd5, 0x69, 0xf4, 0xf9, 0x6f, 0x40, 0xc2, - 0x3f, 0x17, 0x59, 0xb8, 0x3e, 0x38, 0x7e, 0x8e, 0x5b, 0x0a, 0x02, 0x2b, 0xfe, 0x97, 0x87, 0x40, - 0x75, 0xc1, 0xd0, 0x06, 0xfc, 0x82, 0xe0, 0x12, 0x26, 0xc4, 0xac, 0x95, 0x35, 0xf1, 0xff, 0x40, - 0xa3, 0x21, 0x8e, 0x7f, 0xe9, 0x7f, 0x94, 0x77, 0x89, 0x73, 0x97, 0xda, 0x66, 0x62, 0x9f, 0xa2, - 0x07, 0x30, 0x5a, 0xc4, 0x15, 0xcc, 0x70, 0x51, 0x13, 0x32, 0x5c, 0x6c, 0x23, 0x86, 0x07, 0x40, - 0x9c, 0x71, 0xad, 0x55, 0xd7, 0xd8, 0xc3, 0x7d, 0x08, 0x67, 0x8b, 0x26, 0xd5, 0x0b, 0x95, 0x7e, - 0xc0, 0x70, 0x00, 0xe0, 0x8b, 0x9e, 0x79, 0x0f, 0x72, 0x47, 0xfd, 0xdf, 0x0d, 0x84, 0x80, 0xe4, - 0x4b, 0xfe, 0x16, 0xc0, 0xc8, 0xa6, 0x49, 0x07, 0xac, 0xf9, 0xaf, 0xc1, 0x89, 0x8a, 0x5e, 0xc0, - 0x15, 0xad, 0x64, 0x56, 0x18, 0x26, 0x6e, 0xed, 0x47, 0xf8, 0x5e, 0x96, 0x6f, 0xa1, 0xcb, 0x70, - 0x92, 0x60, 0xdb, 0x22, 0x4c, 0x2b, 0x99, 0xb8, 0x52, 0xa4, 0x51, 0x7f, 0xc2, 0x3f, 0x17, 0x56, - 0x27, 0xc4, 0x66, 0x96, 0xef, 0xa1, 0xab, 0xf0, 0xbc, 0xab, 0x24, 0x2e, 0xc5, 0xd3, 0x0d, 0x70, - 0x5d, 0x24, 0x64, 0xe2, 0x0a, 0x85, 0x45, 0xf2, 0xdf, 0x41, 0x28, 0x09, 0x3f, 0x45, 0xc1, 0x6f, - 0x30, 0x5c, 0x45, 0x33, 0x30, 0xc8, 0x70, 0x4d, 0xaf, 0x31, 0x9e, 0x7f, 0x61, 0xd5, 0x5d, 0x8d, - 0xd0, 0xb8, 0x24, 0xe8, 0xaf, 0x9b, 0x45, 0xd1, 0x3b, 0x55, 0xe7, 0x11, 0x25, 0x60, 0xa4, 0x88, - 0xa9, 0x41, 0x4c, 0x3e, 0x79, 0x44, 0x23, 0x82, 0x69, 0xc7, 0x16, 0x8a, 0xc1, 0x90, 0x17, 0xe6, - 0xe8, 0x44, 0x02, 0xcc, 0x85, 0xd4, 0xf6, 0x1a, 0x3d, 0x86, 0x41, 0x1e, 0x14, 0x41, 0x29, 0xb2, - 0x90, 0x1d, 0x3c, 0x73, 0x7b, 0x59, 0xca, 0x9b, 0x1c, 0x28, 0x53, 0x63, 0xa4, 0xa9, 0xba, 0xa8, - 0xa8, 0x0a, 0x23, 0x1d, 0xd3, 0x9c, 0x9b, 0x13, 0xf7, 0x4e, 0x71, 0x48, 0xfa, 0x13, 0x9a, 0x38, - 0xa9, 0x13, 0x1f, 0x2d, 0x41, 0x68, 0x1d, 0xd4, 0x30, 0xd1, 0x1c, 0xc8, 0x68, 0x98, 0x17, 0x7b, - 0xac, 0xe7, 0xb4, 0x07, 0x26, 0x3e, 0xf0, 0xf2, 0x2f, 0xcc, 0xb5, 0x9d, 0x9d, 0xae, 0x86, 0x35, - 0x79, 0x16, 0x0d, 0x6b, 0xea, 0x54, 0x0d, 0x6b, 0x07, 0x86, 0xca, 0x98, 0xf1, 0x36, 0xe3, 0xb6, - 0xbe, 0xd1, 0x9a, 0x96, 0x7a, 0xae, 0x2c, 0x16, 0xe8, 0x11, 0x84, 0x6e, 0x12, 0x53, 0xcc, 0xdc, - 0x46, 0x72, 0xaa, 0x46, 0x15, 0x16, 0x70, 0x39, 0xcc, 0x62, 0x4b, 0x30, 0xd2, 0x71, 0xfb, 0x4e, - 0x96, 0xee, 0xe3, 0xa6, 0x9b, 0xd1, 0xce, 0x23, 0x3a, 0x0f, 0xc7, 0x1b, 0x7a, 0xa5, 0xee, 0x25, - 0xb3, 0x58, 0x2c, 0xfb, 0x6e, 0x80, 0xd8, 0x2d, 0x28, 0xf5, 0xde, 0xe9, 0x30, 0xf6, 0x77, 0x03, - 0xa1, 0x71, 0x29, 0x98, 0xfc, 0x25, 0x80, 0x13, 0x9d, 0xb9, 0x82, 0x76, 0xe0, 0xb8, 0xc9, 0x70, - 0x95, 0x46, 0x45, 0x47, 0x5e, 0x1e, 0x3d, 0xe5, 0x54, 0x01, 0x84, 0xae, 0xc2, 0xa0, 0x78, 0xb5, - 0x88, 0xfa, 0x38, 0x64, 0xb4, 0x07, 0x32, 0xe3, 0x08, 0x79, 0xc8, 0x5d, 0xbd, 0xe4, 0x3e, 0x9c, - 0x5c, 0xe3, 0x8d, 0x73, 0xf4, 0x41, 0x65, 0x0e, 0x4a, 0x25, 0xdd, 0xac, 0x68, 0x66, 0xa9, 0xdd, - 0x60, 0x79, 0xf1, 0x87, 0xd4, 0x29, 0x67, 0x7f, 0xa3, 0xe4, 0x35, 0xce, 0xf9, 0x7f, 0x01, 0x78, - 0xa1, 0xef, 0x48, 0x82, 0x62, 0x70, 0x66, 0x3d, 0x93, 0xd7, 0xd4, 0xdc, 0x8e, 0x96, 0xdd, 0x56, - 0xb7, 0xd2, 0x79, 0x6d, 0x2d, 0x93, 0x4d, 0xef, 0x6e, 0xe6, 0xa5, 0x31, 0xf4, 0x15, 0x38, 0xdb, - 0x23, 0xcb, 0x6e, 0xab, 0xda, 0xaa, 0x9a, 0x49, 0xe7, 0x33, 0x12, 0x40, 0x71, 0x18, 0xeb, 0x23, - 0x56, 0x33, 0x3b, 0x9b, 0xe9, 0xd5, 0x8c, 0xe4, 0x43, 0xb3, 0xf0, 0x42, 0x8f, 0x3c, 0x97, 0x4f, - 0xe7, 0x77, 0x73, 0x92, 0x1f, 0x5d, 0x84, 0x5f, 0xea, 0x11, 0xa9, 0x99, 0xf4, 0x9a, 0x14, 0x40, - 0x57, 0x60, 0xe2, 0x84, 0x20, 0x9b, 0x51, 0xd5, 0x8d, 0xfb, 0xeb, 0xda, 0xf6, 0xca, 0xdd, 0xcc, - 0x6a, 0x3e, 0x27, 0x8d, 0xf7, 0xd1, 0x5a, 0x51, 0xb7, 0xef, 0x65, 0xee, 0x0b, 0xe5, 0xcc, 0xfd, - 0xd5, 0x4c, 0x4e, 0x0a, 0x2e, 0xfc, 0x01, 0x42, 0x7f, 0x7a, 0x67, 0x03, 0xfd, 0x07, 0xc0, 0xa0, - 0x98, 0x8c, 0xd0, 0xa8, 0xb3, 0x54, 0xec, 0xc6, 0xf0, 0x86, 0xee, 0x38, 0xfa, 0xb4, 0xf5, 0x2a, - 0xaa, 0x94, 0x16, 0x9f, 0x18, 0x29, 0x8a, 0x8d, 0x3a, 0xc1, 0x55, 0x4c, 0xf7, 0x52, 0x05, 0x9d, - 0x9a, 0x46, 0xaa, 0x4e, 0x31, 0xf9, 0x46, 0x03, 0xd3, 0x94, 0x69, 0xa5, 0x6a, 0x98, 0x1d, 0x58, - 0x64, 0x3f, 0x75, 0x40, 0x4c, 0x86, 0x9f, 0xfd, 0xe5, 0xef, 0xbf, 0xf2, 0xad, 0x24, 0x6f, 0xba, - 0xaf, 0xd9, 0x4a, 0x3b, 0x0d, 0xa8, 0xf2, 0xd4, 0x6b, 0x21, 0x72, 0x7b, 0xf3, 0xb0, 0xef, 0xeb, - 0x1f, 0x5d, 0x06, 0xf3, 0xe8, 0x23, 0x80, 0xfe, 0x75, 0xcc, 0xd0, 0xb5, 0x21, 0x27, 0x57, 0x41, - 0x7a, 0x71, 0xa4, 0x79, 0x37, 0xf9, 0xe3, 0xd7, 0xbf, 0xf3, 0x81, 0xd6, 0xab, 0xe8, 0x37, 0xfb, - 0xb3, 0xae, 0x5a, 0x35, 0x93, 0x59, 0x27, 0x88, 0x13, 0xac, 0x17, 0x39, 0xef, 0x9b, 0xe8, 0x3b, - 0xfd, 0x78, 0x7f, 0x8e, 0xae, 0xd0, 0x38, 0x44, 0xff, 0x00, 0x30, 0xe0, 0x54, 0x29, 0x5a, 0x1c, - 0xb6, 0xaa, 0x05, 0xe9, 0xeb, 0xa3, 0x35, 0x83, 0x64, 0xfd, 0x74, 0xac, 0xaf, 0xa3, 0x6b, 0xa3, - 0xb0, 0x46, 0x3f, 0xf7, 0xc1, 0x73, 0xee, 0x6c, 0x8e, 0x46, 0x1e, 0xe7, 0x63, 0x4b, 0x23, 0x58, - 0xba, 0xbc, 0x7f, 0x06, 0x46, 0x4d, 0x70, 0x35, 0xb6, 0x75, 0xaa, 0x04, 0xef, 0x51, 0x3d, 0x74, - 0x12, 0xfe, 0xaf, 0x00, 0x06, 0x45, 0x5b, 0x1d, 0xa6, 0xd6, 0xbb, 0x1a, 0x71, 0x6c, 0x46, 0x16, - 0x1f, 0x94, 0x64, 0xef, 0x83, 0x92, 0x9c, 0xa9, 0xda, 0xac, 0x99, 0x6c, 0x8e, 0x4a, 0xf4, 0xce, - 0xfc, 0x69, 0x32, 0x7a, 0x19, 0xcc, 0xc7, 0x7e, 0xf4, 0xf2, 0x08, 0xf8, 0xfe, 0x7c, 0x04, 0x94, - 0x81, 0x29, 0x89, 0xff, 0xe2, 0x77, 0x47, 0x00, 0xb4, 0x8e, 0xc0, 0xe2, 0x48, 0x7f, 0xe4, 0xcf, - 0xfe, 0x14, 0xf5, 0x49, 0x60, 0xe5, 0x39, 0x78, 0x73, 0x6b, 0x7c, 0x55, 0xdd, 0x5d, 0xdb, 0x7c, - 0xfb, 0x3e, 0x3e, 0xf6, 0xee, 0x7d, 0x7c, 0xec, 0xe3, 0xfb, 0x38, 0xf8, 0x49, 0x2b, 0x0e, 0x5e, - 0xb4, 0xe2, 0xe0, 0x75, 0x2b, 0x0e, 0xde, 0xb6, 0xe2, 0xe0, 0x6f, 0xad, 0x38, 0xf8, 0xd0, 0x8a, - 0x8f, 0x7d, 0x6c, 0xc5, 0xc1, 0x2f, 0x8e, 0xe3, 0x63, 0x2f, 0x8f, 0xe3, 0xe0, 0xed, 0x71, 0x7c, - 0xec, 0xdd, 0x71, 0x7c, 0xec, 0xd1, 0xe3, 0xb2, 0x65, 0xef, 0x97, 0xe5, 0x86, 0xe5, 0x0c, 0xd7, - 0x44, 0x97, 0xeb, 0x54, 0xe1, 0x0f, 0xce, 0xab, 0x68, 0xca, 0x26, 0x56, 0xc3, 0x2c, 0x62, 0x92, - 0xf2, 0xc4, 0x8a, 0x5d, 0x28, 0x5b, 0x0a, 0x7e, 0xc2, 0xdc, 0x8f, 0x55, 0x9f, 0xfd, 0xd2, 0x55, - 0x08, 0xf2, 0x9b, 0xfa, 0xd6, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x9a, 0xb0, 0x4c, 0x17, 0xc0, - 0x14, 0x00, 0x00, + // 1656 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x5f, 0x6f, 0x1b, 0x59, + 0x15, 0xcf, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0x9f, 0xd9, 0xcb, 0x6e, 0xd6, 0x31, 0xc5, 0x18, 0xef, + 0x0a, 0x45, 0x11, 0x1e, 0xaf, 0x42, 0x53, 0x9a, 0x40, 0xbb, 0xeb, 0x24, 0x76, 0x94, 0x6e, 0xd2, + 0x44, 0xd7, 0x4e, 0xb5, 0x2a, 0xa2, 0xa3, 0xf1, 0xf8, 0xda, 0x19, 0x62, 0x7b, 0x86, 0x7b, 0xaf, + 0x9d, 0x1a, 0x14, 0x09, 0xed, 0x03, 0x8f, 0x08, 0x2d, 0x12, 0x2b, 0x10, 0x48, 0x7d, 0x41, 0x2a, + 0x7c, 0x02, 0x44, 0x5e, 0xfa, 0x82, 0xa8, 0xfa, 0x80, 0x2a, 0x78, 0xe9, 0x23, 0x75, 0xfa, 0xd0, + 0x27, 0x54, 0x01, 0x1f, 0x00, 0xcd, 0xbd, 0x33, 0xae, 0xed, 0x98, 0xd6, 0x76, 0xd2, 0x27, 0xcf, + 0xbd, 0xe7, 0x9c, 0xdf, 0x3d, 0xe7, 0x77, 0xcf, 0x39, 0x3e, 0x33, 0xf0, 0x7a, 0x93, 0x30, 0xd5, + 0xb4, 0xd2, 0xcc, 0x38, 0x20, 0x35, 0x3d, 0xdd, 0x34, 0xc9, 0x11, 0x4b, 0x97, 0x2d, 0x7a, 0xa4, + 0xd3, 0x92, 0x66, 0x53, 0xeb, 0x5e, 0x4b, 0xb3, 0xad, 0xaa, 0x69, 0xb4, 0xd2, 0x76, 0xa3, 0x58, + 0x35, 0x0d, 0xcd, 0xa0, 0x8d, 0x92, 0x6e, 0x9b, 0xaa, 0x4d, 0x2d, 0x6e, 0xa1, 0x05, 0x69, 0xae, + 0x4a, 0x73, 0x55, 0x98, 0xab, 0x83, 0xcc, 0x63, 0xa9, 0x8a, 0xc9, 0x0f, 0x1a, 0x45, 0xd5, 0xb0, + 0x6a, 0xe9, 0x8a, 0x55, 0xb1, 0xd2, 0x02, 0xa0, 0xd8, 0x28, 0x8b, 0x95, 0x58, 0x88, 0x27, 0x09, + 0x1c, 0xbb, 0x5c, 0xb1, 0xac, 0x4a, 0x95, 0xa4, 0x75, 0xdb, 0x4c, 0xeb, 0xf5, 0xba, 0xc5, 0x75, + 0x6e, 0x5a, 0x75, 0xe6, 0x4a, 0xbf, 0xea, 0x4a, 0x3b, 0x18, 0xa4, 0x66, 0xf3, 0x96, 0x2b, 0x8c, + 0xf5, 0x86, 0x44, 0x28, 0xb5, 0x68, 0xc7, 0xb0, 0x57, 0x66, 0xd9, 0xdd, 0xa8, 0xf3, 0xbd, 0x42, + 0xde, 0xb2, 0x89, 0x27, 0x4a, 0xf6, 0xd1, 0x44, 0x18, 0xa9, 0x37, 0xfb, 0xcc, 0x13, 0x67, 0xa9, + 0xd4, 0x7a, 0x35, 0x96, 0x87, 0x26, 0xdb, 0x2a, 0xfe, 0x90, 0x18, 0xdc, 0x35, 0xbb, 0x32, 0xb4, + 0x59, 0xb7, 0xcb, 0x5f, 0x1f, 0x64, 0xd5, 0xa5, 0x90, 0xfc, 0x33, 0x80, 0xd3, 0xeb, 0x94, 0xe8, + 0x9c, 0x60, 0xf2, 0xa3, 0x06, 0x61, 0x1c, 0x7d, 0x0c, 0x43, 0x35, 0xc2, 0xf5, 0x92, 0xce, 0xf5, + 0x28, 0x48, 0x80, 0x85, 0xc8, 0xd2, 0x07, 0x6a, 0xef, 0x05, 0xef, 0x0a, 0xbf, 0xa4, 0xd5, 0x0e, + 0xe1, 0x7a, 0xa1, 0x65, 0x13, 0xdc, 0x31, 0x42, 0x3f, 0x80, 0x01, 0x66, 0x13, 0x23, 0xea, 0x13, + 0xc6, 0xd7, 0xd4, 0x61, 0xb3, 0x43, 0x95, 0x88, 0x79, 0x9b, 0x18, 0x0e, 0xe2, 0xda, 0xec, 0x6f, + 0x8e, 0xa7, 0x1c, 0x20, 0xb5, 0x62, 0x68, 0xce, 0x2f, 0x16, 0xb0, 0xab, 0xe1, 0xc7, 0x37, 0x82, + 0xd2, 0x83, 0xe4, 0xcf, 0x7c, 0x70, 0xc6, 0x73, 0x9e, 0xd9, 0x56, 0x9d, 0x11, 0xf4, 0xbd, 0x33, + 0xde, 0x27, 0x06, 0x7a, 0xbf, 0x49, 0xf8, 0x00, 0xd7, 0x77, 0xe1, 0x2c, 0x6b, 0x31, 0x4e, 0x6a, + 0x5a, 0x07, 0xc4, 0x2f, 0x40, 0xbe, 0xd9, 0x07, 0x92, 0x17, 0x5a, 0x67, 0xa1, 0x66, 0xa4, 0xf9, + 0x8e, 0x07, 0x78, 0xa7, 0x87, 0x8b, 0xe5, 0xe1, 0xb9, 0xd8, 0x24, 0x7c, 0x04, 0x22, 0xfe, 0x05, + 0xe0, 0x0c, 0x26, 0x76, 0x55, 0x37, 0x3a, 0xd7, 0xf8, 0xc9, 0x19, 0x22, 0x3e, 0x1c, 0x48, 0x84, + 0x6b, 0x36, 0x80, 0x8c, 0xbb, 0x3d, 0xbe, 0xaf, 0x0c, 0xef, 0xbb, 0x0b, 0xf9, 0x06, 0xff, 0x51, + 0x1a, 0x2a, 0x94, 0x30, 0xab, 0x41, 0x0d, 0xa2, 0x35, 0x09, 0x65, 0xa6, 0x55, 0x17, 0x6c, 0x87, + 0xd7, 0x02, 0x2f, 0x4e, 0x00, 0xc0, 0xb3, 0x9e, 0xf4, 0xb6, 0x14, 0x76, 0x07, 0xfc, 0x0e, 0x9c, + 0xed, 0xc4, 0x2b, 0x6f, 0x3e, 0xf9, 0x00, 0x40, 0xb8, 0x49, 0xb8, 0x17, 0xff, 0x65, 0x18, 0xae, + 0xeb, 0x35, 0xc2, 0x6c, 0xdd, 0x20, 0x82, 0x80, 0x30, 0x7e, 0xb5, 0x81, 0x10, 0x0c, 0x38, 0x0b, + 0x11, 0x5b, 0x18, 0x8b, 0x67, 0x74, 0x00, 0x9d, 0x13, 0x05, 0x98, 0x56, 0xb6, 0x68, 0x4d, 0xe7, + 0xc2, 0x9d, 0x99, 0xa5, 0x8f, 0x47, 0xba, 0x36, 0xcf, 0xa1, 0x9c, 0x80, 0x58, 0xb7, 0x4a, 0x04, + 0xcf, 0xd0, 0x9e, 0xbd, 0xe4, 0x5f, 0x82, 0x30, 0xd2, 0xa5, 0x89, 0x3e, 0x83, 0x11, 0x43, 0xa4, + 0xb1, 0x38, 0xd7, 0x25, 0xfc, 0x3b, 0xa3, 0x16, 0x8e, 0x1b, 0x39, 0x86, 0x12, 0xcb, 0x39, 0x0b, + 0x7d, 0x1f, 0x4e, 0x51, 0xc9, 0x93, 0x84, 0xf6, 0x8f, 0x5a, 0x93, 0xbd, 0x59, 0x85, 0x23, 0x2e, + 0x9a, 0x00, 0x1f, 0x74, 0x81, 0x81, 0xd7, 0x5c, 0x60, 0x4f, 0x71, 0x4e, 0x5e, 0x44, 0x71, 0x5e, + 0xba, 0x90, 0xe2, 0x0c, 0x5e, 0x7c, 0x71, 0xa2, 0x7d, 0x18, 0x64, 0x5c, 0xe7, 0x0d, 0x16, 0xbd, + 0xff, 0x5b, 0x90, 0xf0, 0x2f, 0x44, 0x96, 0xae, 0x0e, 0x8f, 0x9f, 0x17, 0x96, 0x32, 0x80, 0x35, + 0xff, 0xc3, 0x63, 0x80, 0x5d, 0x30, 0xb4, 0x05, 0xdf, 0xa1, 0xa4, 0x4c, 0x28, 0x35, 0xeb, 0x15, + 0x4d, 0xfe, 0x3f, 0xb0, 0x68, 0x48, 0xe0, 0x5f, 0xfe, 0x3f, 0xe5, 0x5d, 0x16, 0xb1, 0x2b, 0x1d, + 0x33, 0xb9, 0xcf, 0xd0, 0x6d, 0x18, 0x2d, 0x91, 0x2a, 0xe1, 0xa4, 0xa4, 0x49, 0x19, 0x29, 0x75, + 0x10, 0xc3, 0x43, 0x20, 0xce, 0xb9, 0xd6, 0xd8, 0x35, 0xf6, 0x70, 0x3f, 0x83, 0xf3, 0x25, 0x93, + 0xe9, 0xc5, 0xea, 0x20, 0x60, 0x38, 0x04, 0xf0, 0xfb, 0x9e, 0x79, 0x1f, 0x72, 0x57, 0xfd, 0xdf, + 0x0c, 0x84, 0x80, 0xe2, 0x4b, 0xfe, 0x1e, 0xc0, 0xc8, 0xb6, 0xc9, 0x86, 0xac, 0xf9, 0x6f, 0xc0, + 0xa9, 0xaa, 0x5e, 0x24, 0x55, 0xad, 0x6c, 0x56, 0x39, 0xa1, 0x6e, 0xed, 0x47, 0xc4, 0x5e, 0x4e, + 0x6c, 0xa1, 0x0f, 0xe0, 0x34, 0x25, 0xb6, 0x45, 0xb9, 0x56, 0x36, 0x49, 0xb5, 0xc4, 0xa2, 0xfe, + 0x84, 0x7f, 0x21, 0x8c, 0xa7, 0xe4, 0x66, 0x4e, 0xec, 0xa1, 0x8f, 0xe0, 0xbb, 0xae, 0x92, 0xbc, + 0x14, 0x4f, 0x37, 0x20, 0x74, 0x91, 0x94, 0xc9, 0x2b, 0x94, 0x16, 0xc9, 0xff, 0x06, 0xa1, 0x22, + 0xfd, 0x94, 0x05, 0xbf, 0xc5, 0x49, 0x0d, 0xcd, 0xc1, 0x20, 0x27, 0x75, 0xbd, 0xce, 0x45, 0xfe, + 0x85, 0xb1, 0xbb, 0x1a, 0xa3, 0x71, 0x29, 0xd0, 0xdf, 0x30, 0x4b, 0xb2, 0x77, 0x62, 0xe7, 0x11, + 0x25, 0x60, 0xa4, 0x44, 0x98, 0x41, 0x4d, 0x31, 0x79, 0x44, 0x23, 0x32, 0xd2, 0xae, 0x2d, 0x14, + 0x83, 0x21, 0x8f, 0xe6, 0xe8, 0x54, 0x02, 0x2c, 0x84, 0x70, 0x67, 0x8d, 0xee, 0xc2, 0xa0, 0x20, + 0x45, 0x86, 0x14, 0x59, 0xca, 0x0d, 0x9f, 0xb9, 0xfd, 0x51, 0xaa, 0xdb, 0x02, 0x28, 0x5b, 0xe7, + 0xb4, 0x85, 0x5d, 0x54, 0x54, 0x83, 0x91, 0xae, 0x69, 0xce, 0xcd, 0x89, 0x4f, 0xcf, 0x71, 0x48, + 0xe6, 0x15, 0x9a, 0x3c, 0xa9, 0x1b, 0x1f, 0xad, 0x40, 0x68, 0x1d, 0xd5, 0x09, 0xd5, 0x1c, 0xc8, + 0x68, 0x58, 0x14, 0x7b, 0xac, 0xef, 0xb4, 0xdb, 0x26, 0x39, 0xf2, 0xf2, 0x2f, 0x2c, 0xb4, 0x9d, + 0x9d, 0x9e, 0x86, 0x35, 0x7d, 0x11, 0x0d, 0x6b, 0xe6, 0x5c, 0x0d, 0x6b, 0x0f, 0x86, 0x2a, 0x84, + 0x8b, 0x36, 0xe3, 0xb6, 0xbe, 0xf1, 0x9a, 0x16, 0xbe, 0x54, 0x91, 0x0b, 0x74, 0x07, 0x42, 0x37, + 0x89, 0x19, 0xe1, 0x6e, 0x23, 0x39, 0x57, 0xa3, 0x0a, 0x4b, 0xb8, 0x3c, 0xe1, 0xb1, 0x15, 0x18, + 0xe9, 0xba, 0x7d, 0x27, 0x4b, 0x0f, 0x49, 0xcb, 0xcd, 0x68, 0xe7, 0x11, 0xbd, 0x0b, 0x27, 0x9b, + 0x7a, 0xb5, 0xe1, 0x25, 0xb3, 0x5c, 0xac, 0xfa, 0xae, 0x81, 0xd8, 0x0d, 0xa8, 0xf4, 0xdf, 0xe9, + 0x28, 0xf6, 0x37, 0x03, 0xa1, 0x49, 0x25, 0x98, 0xfc, 0x02, 0xc0, 0xa9, 0xee, 0x5c, 0x41, 0x7b, + 0x70, 0xd2, 0xe4, 0xa4, 0xc6, 0xa2, 0xb2, 0x23, 0xaf, 0x8e, 0x9f, 0x72, 0x58, 0x02, 0xa1, 0x8f, + 0x60, 0x50, 0xbe, 0x5a, 0x44, 0x7d, 0x02, 0x32, 0xda, 0x07, 0x99, 0x75, 0x84, 0x82, 0x72, 0x57, + 0x2f, 0x79, 0x08, 0xa7, 0x37, 0x44, 0xe3, 0x1c, 0x7f, 0x50, 0x59, 0x80, 0x4a, 0x59, 0x37, 0xab, + 0x9a, 0x59, 0xee, 0x34, 0x58, 0x51, 0xfc, 0x21, 0x3c, 0xe3, 0xec, 0x6f, 0x95, 0xbd, 0xc6, 0xb9, + 0xf8, 0x6f, 0x00, 0xdf, 0x1b, 0x38, 0x92, 0xa0, 0x18, 0x9c, 0xdb, 0xcc, 0x16, 0x34, 0x9c, 0xdf, + 0xd3, 0x72, 0xbb, 0x78, 0x27, 0x53, 0xd0, 0x36, 0xb2, 0xb9, 0xcc, 0xfe, 0x76, 0x41, 0x99, 0x40, + 0x5f, 0x83, 0xf3, 0x7d, 0xb2, 0xdc, 0x2e, 0xd6, 0xd6, 0x71, 0x36, 0x53, 0xc8, 0x2a, 0x00, 0xc5, + 0x61, 0x6c, 0x80, 0x18, 0x67, 0xf7, 0xb6, 0x33, 0xeb, 0x59, 0xc5, 0x87, 0xe6, 0xe1, 0x7b, 0x7d, + 0xf2, 0x7c, 0x21, 0x53, 0xd8, 0xcf, 0x2b, 0x7e, 0xf4, 0x3e, 0xfc, 0x4a, 0x9f, 0x08, 0x67, 0x33, + 0x1b, 0x4a, 0x00, 0x7d, 0x08, 0x13, 0x67, 0x04, 0xb9, 0x2c, 0xc6, 0x5b, 0xb7, 0x36, 0xb5, 0xdd, + 0xb5, 0x9b, 0xd9, 0xf5, 0x42, 0x5e, 0x99, 0x1c, 0xa0, 0xb5, 0x86, 0x77, 0x3f, 0xcd, 0xde, 0x92, + 0xca, 0xd9, 0x5b, 0xeb, 0xd9, 0xbc, 0x12, 0x5c, 0x7a, 0x1e, 0x81, 0xfe, 0xcc, 0xde, 0x16, 0xfa, + 0xd2, 0x07, 0x83, 0x72, 0x32, 0x42, 0xe3, 0xce, 0x52, 0xb1, 0x6b, 0xa3, 0x1b, 0xba, 0xe3, 0xe8, + 0xaf, 0x41, 0xfb, 0xaf, 0xd1, 0x9d, 0xf2, 0xf2, 0x3d, 0x23, 0xc5, 0x88, 0xd1, 0xa0, 0xa4, 0x46, + 0xd8, 0x41, 0xaa, 0xa8, 0x33, 0xd3, 0x48, 0x35, 0x18, 0xa1, 0xdf, 0xea, 0x17, 0x31, 0xae, 0xd7, + 0x4b, 0x3a, 0x2d, 0x49, 0x69, 0x93, 0xb0, 0x94, 0x69, 0xa5, 0xea, 0x84, 0x1f, 0x59, 0xf4, 0x30, + 0x75, 0x44, 0x4d, 0x4e, 0x3e, 0xff, 0xc7, 0xf3, 0x5f, 0xfa, 0xd6, 0x92, 0xd7, 0xdd, 0xb7, 0xf0, + 0x74, 0x27, 0x4b, 0x58, 0xfa, 0x27, 0x5e, 0x87, 0x51, 0x3b, 0x9b, 0xc7, 0x03, 0xdf, 0x0e, 0xd9, + 0x2a, 0x58, 0x44, 0x5f, 0xf8, 0xa0, 0x7f, 0x93, 0x70, 0x74, 0x65, 0xc4, 0xc1, 0x56, 0x72, 0xb2, + 0x3c, 0xd6, 0x38, 0x9c, 0xfc, 0x1d, 0x78, 0xf4, 0x27, 0x9f, 0x43, 0x0a, 0x1e, 0x4c, 0x4a, 0xcd, + 0xaa, 0x9b, 0xdc, 0x7a, 0x0d, 0x2f, 0x9e, 0x42, 0x1f, 0x35, 0x94, 0xe8, 0x25, 0xc1, 0xcc, 0x75, + 0xf4, 0xdd, 0x41, 0xcc, 0xbc, 0x89, 0x10, 0xa9, 0x71, 0x8c, 0x7e, 0xee, 0x83, 0x01, 0xa7, 0xcc, + 0xd1, 0xf2, 0xa8, 0x6d, 0x41, 0xd2, 0x72, 0x75, 0xbc, 0x6e, 0x92, 0xfc, 0xd5, 0xdb, 0xe6, 0xe5, + 0x2a, 0xba, 0x32, 0x0e, 0x2f, 0xe8, 0x8f, 0x3e, 0x78, 0xc9, 0x1d, 0xff, 0xd1, 0xd8, 0x6f, 0x0c, + 0xb1, 0x95, 0x31, 0x2c, 0x5d, 0x66, 0xfe, 0xf0, 0x96, 0x4a, 0x08, 0xc7, 0x76, 0xce, 0x55, 0x42, + 0x7d, 0xaa, 0xc7, 0x4e, 0x49, 0xfd, 0x07, 0xc0, 0xa0, 0xec, 0xeb, 0xa3, 0x34, 0x9b, 0x9e, 0x7f, + 0x82, 0xd8, 0x9c, 0x2a, 0xbf, 0x68, 0xa9, 0xde, 0x17, 0x2d, 0x35, 0x5b, 0xb3, 0x79, 0x2b, 0xf9, + 0xe5, 0x5b, 0xe2, 0xe1, 0x93, 0xc5, 0xf3, 0x14, 0xcc, 0x2a, 0x58, 0x8c, 0xfd, 0xf8, 0xe1, 0x09, + 0xf0, 0xfd, 0xfd, 0x04, 0xa4, 0x87, 0x8e, 0x58, 0xce, 0x0a, 0x4f, 0x4f, 0x00, 0x68, 0x9f, 0x80, + 0xe5, 0xb1, 0x06, 0x8d, 0xcf, 0xff, 0x16, 0xf5, 0x29, 0x60, 0xed, 0x3e, 0x78, 0x7c, 0x63, 0x72, + 0x1d, 0xef, 0x6f, 0x6c, 0x3f, 0x79, 0x16, 0x9f, 0x78, 0xfa, 0x2c, 0x3e, 0xf1, 0xf2, 0x59, 0x1c, + 0xfc, 0xb4, 0x1d, 0x07, 0x0f, 0xda, 0x71, 0xf0, 0xa8, 0x1d, 0x07, 0x4f, 0xda, 0x71, 0xf0, 0xcf, + 0x76, 0x1c, 0xbc, 0x68, 0xc7, 0x27, 0x5e, 0xb6, 0xe3, 0xe0, 0x17, 0xa7, 0xf1, 0x89, 0x87, 0xa7, + 0x71, 0xf0, 0xe4, 0x34, 0x3e, 0xf1, 0xf4, 0x34, 0x3e, 0x71, 0xe7, 0x6e, 0xc5, 0xb2, 0x0f, 0x2b, + 0x6a, 0xd3, 0x72, 0x86, 0x7f, 0xaa, 0xab, 0x0d, 0x96, 0x16, 0x0f, 0xce, 0xab, 0x72, 0xca, 0xa6, + 0x56, 0xd3, 0x2c, 0x11, 0x9a, 0xf2, 0xc4, 0x69, 0xbb, 0x58, 0xb1, 0xd2, 0xe4, 0x1e, 0x77, 0x3f, + 0xa6, 0xbd, 0xf1, 0x4b, 0x5c, 0x31, 0x28, 0x2e, 0xf2, 0xdb, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, + 0xe4, 0xe8, 0x1b, 0x4b, 0x60, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.vesapi.go index 336d65b72..24226f931 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/public_crudapi.vesapi.go @@ -2376,11 +2376,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Port Matcher" }, "prefix_list": { - "description": "Exclusive with [all_sources ip_prefix_set label_selector]\n list of ip prefixes that are representing source of traffic seen by proxy\n\nExample: - \"192.168.20.0/24\"-", - "title": "ipv4 prefix list", + "description": "Exclusive with [all_sources ip_prefix_set label_selector]\n list of ip prefixes that are representing source of traffic seen by proxy\n list is a sublist of both V4 and V6 prefix list", + "title": "ip prefix list", "$ref": "#/definitions/viewsPrefixStringListType", - "x-displayname": "IPv4 Prefix List", - "x-ves-example": "192.168.20.0/24" + "x-displayname": "IP Prefix List" }, "tls_list": { "description": "Exclusive with [all_destinations dst_asn_list dst_asn_set dst_ip_prefix_set dst_label_selector dst_prefix_list http_list url_category_list]\n Domains in SNI for TLS connections", @@ -2965,14 +2964,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -3372,7 +3371,7 @@ var APISwaggerJSON string = `{ }, "prefixes": { "type": "array", - "description": " Destination IPv4 prefixes.\n\nExample: - \"10.0.0./24\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Destination IPv4 prefixes.\n\nExample: - \"10.0.0.1/24\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.ipv4_prefix: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "prefixes", "minItems": 1, "maxItems": 32, @@ -3380,7 +3379,7 @@ var APISwaggerJSON string = `{ "type": "string" }, "x-displayname": "IPv4 Prefixes", - "x-ves-example": "10.0.0./24", + "x-ves-example": "10.0.0.1/24", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", @@ -3477,10 +3476,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3537,10 +3540,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3599,10 +3606,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/public_custom_data_api.pb.go b/pbgo/extschema/schema/views/forward_proxy_policy/public_custom_data_api.pb.go index c15b3be34..5f2f44f8d 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/public_custom_data_api.pb.go @@ -563,64 +563,66 @@ func init() { } var fileDescriptor_7c7ad11eab78dc2e = []byte{ - // 903 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xac, 0x7f, 0xb4, 0x1e, 0xa7, 0x60, 0x0d, 0xa8, 0x5a, 0x4c, 0x58, 0x82, 0x11, 0x52, - 0xa8, 0xf0, 0xae, 0x64, 0x2e, 0x08, 0xa9, 0x12, 0x4e, 0x70, 0x1b, 0x4b, 0x49, 0x6d, 0x4d, 0xdc, - 0x4a, 0x20, 0xd1, 0xd5, 0x78, 0x77, 0xb2, 0x19, 0xba, 0xde, 0x19, 0x76, 0x66, 0x9d, 0x5a, 0x08, - 0x09, 0x55, 0xe2, 0xc4, 0x05, 0x09, 0x09, 0xf5, 0xd8, 0x23, 0x7f, 0x02, 0xa2, 0x97, 0xdc, 0xc8, - 0x09, 0x45, 0x70, 0xe9, 0x81, 0x03, 0x71, 0x38, 0xc0, 0x2d, 0x7f, 0x02, 0xf2, 0xec, 0x26, 0x8d, - 0x53, 0x57, 0x8d, 0x94, 0xde, 0xde, 0x9b, 0xef, 0xed, 0xb7, 0xef, 0x7d, 0xef, 0xcd, 0x3c, 0xd8, - 0x1e, 0x51, 0x69, 0x33, 0xee, 0x48, 0x6f, 0x9b, 0x0e, 0x89, 0x33, 0x62, 0x74, 0x47, 0x3a, 0x5b, - 0x3c, 0xde, 0x21, 0xb1, 0xef, 0x8a, 0x98, 0xdf, 0x1f, 0xbb, 0x82, 0x87, 0xcc, 0x1b, 0x3b, 0x22, - 0x19, 0x84, 0xcc, 0x73, 0xbd, 0x44, 0x2a, 0x3e, 0x74, 0x7d, 0xa2, 0x88, 0x4b, 0x04, 0xb3, 0x45, - 0xcc, 0x15, 0x47, 0xcb, 0x29, 0x8d, 0x9d, 0xd2, 0xd8, 0x9a, 0xc6, 0x9e, 0x47, 0x53, 0x6b, 0x04, - 0x4c, 0x6d, 0x27, 0x03, 0xdb, 0xe3, 0x43, 0x27, 0xe0, 0x01, 0x77, 0x34, 0xc1, 0x20, 0xd9, 0xd2, - 0x9e, 0x76, 0xb4, 0x95, 0x12, 0xd7, 0x16, 0x03, 0xce, 0x83, 0x90, 0x3a, 0x44, 0x30, 0x87, 0x44, - 0x11, 0x57, 0x44, 0x31, 0x1e, 0xc9, 0x0c, 0x7d, 0x73, 0x36, 0x7b, 0x2e, 0x4e, 0x83, 0x6f, 0xcc, - 0x82, 0x6a, 0x2c, 0xe8, 0x31, 0xb4, 0x78, 0xa6, 0x6a, 0x12, 0x32, 0x9f, 0x28, 0x9a, 0xa1, 0xf5, - 0x33, 0x28, 0x95, 0x34, 0x1a, 0xcd, 0x92, 0xd7, 0xbf, 0xcb, 0xc3, 0xb7, 0x6e, 0xa4, 0xf5, 0xf5, - 0xa6, 0xe5, 0xf5, 0x74, 0x75, 0x6b, 0x4c, 0x49, 0x4c, 0xbf, 0x4a, 0xa8, 0x54, 0x68, 0x11, 0x96, - 0x23, 0x32, 0xa4, 0x52, 0x10, 0x8f, 0x9a, 0x60, 0x09, 0x2c, 0x97, 0xf1, 0xd3, 0x03, 0x24, 0xe0, - 0x42, 0x48, 0x06, 0x34, 0x74, 0xb7, 0x58, 0xa8, 0x68, 0x6c, 0x1a, 0x4b, 0xf9, 0xe5, 0x4a, 0x73, - 0xc3, 0x3e, 0xaf, 0x8e, 0xf6, 0xb3, 0x3f, 0xdf, 0xa0, 0x2a, 0x66, 0xde, 0xfa, 0x94, 0xf5, 0x86, - 0x26, 0xc5, 0x95, 0xf0, 0xa9, 0x83, 0x06, 0xf0, 0x72, 0x10, 0xf3, 0x44, 0xb8, 0x83, 0xb1, 0x99, - 0x5f, 0xca, 0x2f, 0xbf, 0xd2, 0xbc, 0xf9, 0x92, 0xfe, 0x86, 0x2f, 0x69, 0xe2, 0x95, 0x31, 0x7a, - 0x1f, 0x42, 0xa9, 0x48, 0xac, 0x5c, 0xc5, 0x86, 0xd4, 0x2c, 0x4c, 0x8b, 0x5e, 0x81, 0xbf, 0xfe, - 0xb7, 0x9b, 0x2f, 0xc6, 0xf9, 0x87, 0x05, 0x80, 0xcb, 0x1a, 0xed, 0xb3, 0x21, 0x45, 0xef, 0xc1, - 0xcb, 0x34, 0xf2, 0xd3, 0xc0, 0xe2, 0x33, 0x81, 0x97, 0x68, 0xe4, 0xeb, 0x30, 0x0b, 0x16, 0xa4, - 0xa2, 0xc2, 0x2c, 0xcd, 0x84, 0x3c, 0x2a, 0x00, 0xac, 0xcf, 0xeb, 0x7b, 0x00, 0xbe, 0x7b, 0x0e, - 0x29, 0xd0, 0x17, 0xb0, 0xa8, 0xc5, 0xd0, 0x9d, 0x78, 0x89, 0xa5, 0xa7, 0xac, 0xe8, 0x03, 0x68, - 0x70, 0x61, 0x1a, 0x9a, 0x7b, 0xf1, 0x0c, 0xf7, 0xa9, 0xf0, 0xae, 0xc0, 0x06, 0x17, 0xe8, 0x75, - 0x58, 0x1c, 0x91, 0x30, 0xa1, 0x66, 0x5e, 0x8f, 0x45, 0xea, 0xd4, 0x77, 0x01, 0x34, 0xe7, 0x8f, - 0x54, 0xc7, 0x7f, 0xc1, 0x34, 0x5d, 0x85, 0xa5, 0x34, 0x5b, 0x9d, 0x42, 0x19, 0x67, 0x1e, 0x7a, - 0x1b, 0x56, 0x52, 0xcb, 0x8d, 0x93, 0xf0, 0xf8, 0x77, 0x30, 0x3d, 0xc2, 0x49, 0xa8, 0x3f, 0x24, - 0xde, 0x74, 0xae, 0xd3, 0x66, 0xe1, 0xcc, 0x43, 0x08, 0x16, 0x24, 0x53, 0x59, 0x67, 0xb0, 0xb6, - 0xd1, 0x3b, 0x70, 0x61, 0xc4, 0x62, 0x95, 0x90, 0xd0, 0xdd, 0xe6, 0x52, 0xa5, 0x2d, 0xc1, 0x95, - 0xec, 0x6c, 0x8d, 0x4b, 0x55, 0x7f, 0x04, 0xe0, 0xd5, 0xf9, 0x25, 0x20, 0x0c, 0x0d, 0xe6, 0xeb, - 0xcc, 0x2b, 0xcd, 0x95, 0x8b, 0xa8, 0x9f, 0x0a, 0x82, 0x0d, 0xe6, 0xa3, 0x26, 0x2c, 0x0d, 0xb5, - 0xb8, 0xd9, 0xf5, 0xa9, 0xcd, 0x55, 0xfe, 0xce, 0x54, 0x5d, 0x9c, 0x45, 0xd6, 0x7f, 0x02, 0xd0, - 0x7a, 0xde, 0xc5, 0x95, 0x82, 0x47, 0x92, 0xa2, 0x3e, 0x2c, 0x4c, 0x9f, 0x37, 0x13, 0x68, 0xd2, - 0x4f, 0x2e, 0x9a, 0x2c, 0xd6, 0x6c, 0x27, 0x93, 0x6c, 0xcc, 0x4c, 0xf2, 0x91, 0x91, 0x4d, 0xf2, - 0x35, 0x39, 0xef, 0x41, 0x39, 0x35, 0x3b, 0xe8, 0x0a, 0x2c, 0xdf, 0x6a, 0x6d, 0xb4, 0x37, 0x7b, - 0xad, 0xd5, 0x76, 0x35, 0x87, 0x20, 0x2c, 0xf5, 0xba, 0xeb, 0x9d, 0xd5, 0xcf, 0xaa, 0x00, 0xbd, - 0x0a, 0x2b, 0xa9, 0xed, 0xe2, 0xdb, 0xeb, 0xed, 0xaa, 0x31, 0x05, 0x5b, 0xab, 0xfd, 0x4e, 0xf7, - 0x56, 0x35, 0x8f, 0x2e, 0xc3, 0xc2, 0x66, 0xa7, 0xdf, 0xae, 0x16, 0x50, 0x15, 0x2e, 0xdc, 0xe9, - 0xe0, 0xfe, 0xed, 0xd6, 0xba, 0xbb, 0xd6, 0xdd, 0xec, 0x57, 0x8b, 0xcd, 0xbf, 0x0c, 0x78, 0x65, - 0x55, 0xbf, 0xe8, 0x9f, 0x12, 0x45, 0x5a, 0xbd, 0x0e, 0xfa, 0xde, 0x78, 0x6e, 0x0b, 0x6f, 0x5e, - 0x58, 0x89, 0xf4, 0x69, 0xac, 0xad, 0x5d, 0x9c, 0x28, 0x6d, 0x55, 0xfd, 0xee, 0xde, 0x2f, 0x06, - 0x98, 0xfc, 0x66, 0xbe, 0x36, 0xa2, 0xb2, 0xc1, 0x78, 0x23, 0xa2, 0x6a, 0x87, 0xc7, 0xf7, 0x1a, - 0x31, 0x25, 0xfe, 0x83, 0x3f, 0xff, 0xf9, 0xd1, 0xb8, 0x5e, 0xff, 0x28, 0xdb, 0x5c, 0xce, 0xc9, - 0x75, 0x91, 0xce, 0xd7, 0x27, 0xf6, 0x37, 0xf3, 0x97, 0xdd, 0x36, 0x53, 0xf2, 0x63, 0x70, 0xad, - 0x76, 0x7d, 0xf7, 0x31, 0xc8, 0xff, 0xf1, 0x18, 0x38, 0xe7, 0x4e, 0xb8, 0x3b, 0xf8, 0x92, 0x7a, - 0xea, 0xc1, 0xef, 0xa6, 0x61, 0x82, 0x95, 0x87, 0x60, 0xff, 0xc0, 0xca, 0x3d, 0x39, 0xb0, 0x72, - 0x47, 0x07, 0x16, 0xf8, 0x76, 0x62, 0x81, 0x9f, 0x27, 0x16, 0xd8, 0x9b, 0x58, 0x60, 0x7f, 0x62, - 0x81, 0xbf, 0x27, 0x16, 0xf8, 0x77, 0x62, 0xe5, 0x8e, 0x26, 0x16, 0xf8, 0xe1, 0xd0, 0xca, 0xed, - 0x1e, 0x5a, 0x60, 0xff, 0xd0, 0xca, 0x3d, 0x39, 0xb4, 0x72, 0x9f, 0xdf, 0x0d, 0xb8, 0xb8, 0x17, - 0xd8, 0x23, 0x3e, 0x7d, 0xbe, 0x62, 0x62, 0x27, 0xd2, 0xd1, 0xc6, 0x16, 0x8f, 0x87, 0x0d, 0x11, - 0xf3, 0x11, 0xf3, 0x69, 0xdc, 0x38, 0x86, 0x1d, 0x31, 0x08, 0xb8, 0x43, 0xef, 0xab, 0x6c, 0x67, - 0xbd, 0x70, 0x9d, 0x0f, 0x4a, 0x7a, 0x8f, 0x7d, 0xf8, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x83, - 0xa1, 0x10, 0x1f, 0x01, 0x08, 0x00, 0x00, + // 937 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xc1, 0x6b, 0x1b, 0xc7, + 0x17, 0xd6, 0xec, 0xca, 0x8e, 0x3d, 0x72, 0x7e, 0x3f, 0x31, 0x94, 0xb0, 0x55, 0xdd, 0xad, 0xab, + 0x52, 0x70, 0x43, 0xb4, 0x0b, 0x2a, 0x85, 0x52, 0x08, 0x54, 0x76, 0x95, 0x58, 0x60, 0x47, 0x62, + 0xad, 0x04, 0x5a, 0x68, 0x97, 0xd9, 0xdd, 0x91, 0x34, 0xcd, 0xee, 0xce, 0x76, 0x66, 0x56, 0xb6, + 0x28, 0x85, 0x12, 0xe8, 0xbd, 0x50, 0x28, 0x39, 0xb4, 0x90, 0x63, 0xff, 0x84, 0xd2, 0x5c, 0x7c, + 0xab, 0xa1, 0x50, 0x4c, 0x7b, 0xc9, 0xb1, 0x96, 0x7b, 0x68, 0x6f, 0xfe, 0x13, 0x8a, 0x66, 0xd7, + 0x8e, 0xe5, 0x28, 0xc4, 0xe0, 0xdc, 0xde, 0x9b, 0xef, 0xe9, 0xdb, 0xf7, 0xbe, 0xf7, 0xe6, 0x8d, + 0x60, 0x73, 0x48, 0x84, 0x45, 0x99, 0x2d, 0xfc, 0x01, 0x89, 0xb0, 0x3d, 0xa4, 0x64, 0x47, 0xd8, + 0x3d, 0xc6, 0x77, 0x30, 0x0f, 0xdc, 0x84, 0xb3, 0xdd, 0x91, 0x9b, 0xb0, 0x90, 0xfa, 0x23, 0x3b, + 0x49, 0xbd, 0x90, 0xfa, 0xae, 0x9f, 0x0a, 0xc9, 0x22, 0x37, 0xc0, 0x12, 0xbb, 0x38, 0xa1, 0x56, + 0xc2, 0x99, 0x64, 0x68, 0x35, 0xa3, 0xb1, 0x32, 0x1a, 0x4b, 0xd1, 0x58, 0xb3, 0x68, 0x2a, 0xb5, + 0x3e, 0x95, 0x83, 0xd4, 0xb3, 0x7c, 0x16, 0xd9, 0x7d, 0xd6, 0x67, 0xb6, 0x22, 0xf0, 0xd2, 0x9e, + 0xf2, 0x94, 0xa3, 0xac, 0x8c, 0xb8, 0xb2, 0xdc, 0x67, 0xac, 0x1f, 0x12, 0x1b, 0x27, 0xd4, 0xc6, + 0x71, 0xcc, 0x24, 0x96, 0x94, 0xc5, 0x22, 0x47, 0x5f, 0x9b, 0xce, 0x9e, 0x25, 0x67, 0xc1, 0x57, + 0xa7, 0x41, 0x39, 0x4a, 0xc8, 0x09, 0xb4, 0x7c, 0xae, 0x6a, 0x1c, 0xd2, 0x00, 0x4b, 0x92, 0xa3, + 0xd5, 0x73, 0x28, 0x11, 0x24, 0x1e, 0x4e, 0x93, 0x57, 0xbf, 0xd1, 0xe1, 0xeb, 0xb7, 0xb2, 0xfa, + 0x3a, 0x93, 0xf2, 0x3a, 0xaa, 0xba, 0x0d, 0x2a, 0x85, 0x43, 0xbe, 0x48, 0x89, 0x90, 0x68, 0x19, + 0x2e, 0xc6, 0x38, 0x22, 0x22, 0xc1, 0x3e, 0x31, 0xc0, 0x0a, 0x58, 0x5d, 0x74, 0x9e, 0x1e, 0xa0, + 0x04, 0x2e, 0x85, 0xd8, 0x23, 0xa1, 0xdb, 0xa3, 0xa1, 0x24, 0xdc, 0xd0, 0x56, 0xf4, 0xd5, 0x52, + 0x7d, 0xcb, 0xba, 0xa8, 0x8e, 0xd6, 0xb3, 0x1f, 0xdf, 0x22, 0x92, 0x53, 0x7f, 0x73, 0xc2, 0x7a, + 0x4b, 0x91, 0x3a, 0xa5, 0xf0, 0xa9, 0x83, 0x3c, 0xb8, 0xd0, 0xe7, 0x2c, 0x4d, 0x5c, 0x6f, 0x64, + 0xe8, 0x2b, 0xfa, 0xea, 0xff, 0xea, 0xb7, 0x5f, 0xd2, 0xd7, 0x9c, 0x2b, 0x8a, 0x78, 0x6d, 0x84, + 0xde, 0x81, 0x50, 0x48, 0xcc, 0xa5, 0x2b, 0x69, 0x44, 0x8c, 0xe2, 0xa4, 0xe8, 0x35, 0xf8, 0xcb, + 0xbf, 0x7b, 0xfa, 0x1c, 0xd7, 0x1f, 0x16, 0x81, 0xb3, 0xa8, 0xd0, 0x2e, 0x8d, 0x08, 0x7a, 0x1b, + 0x2e, 0x90, 0x38, 0xc8, 0x02, 0xe7, 0x9e, 0x09, 0xbc, 0x42, 0xe2, 0x40, 0x85, 0x99, 0xb0, 0x28, + 0x24, 0x49, 0x8c, 0xf9, 0xa9, 0x90, 0x47, 0x45, 0xe0, 0xa8, 0xf3, 0xea, 0x3e, 0x80, 0x6f, 0x5d, + 0x40, 0x0a, 0xf4, 0x29, 0x9c, 0x53, 0x62, 0xa8, 0x4e, 0xbc, 0xc4, 0xd2, 0x33, 0x56, 0x74, 0x03, + 0x6a, 0x2c, 0x31, 0x34, 0xc5, 0xbd, 0x7c, 0x8e, 0xfb, 0x4c, 0x78, 0x3b, 0x71, 0x34, 0x96, 0xa0, + 0x57, 0xe0, 0xdc, 0x10, 0x87, 0x29, 0x31, 0x74, 0x35, 0x16, 0x99, 0x53, 0xdd, 0x03, 0xd0, 0x98, + 0x3d, 0x52, 0xad, 0xe0, 0x05, 0xd3, 0x74, 0x0d, 0xce, 0x67, 0xd9, 0xaa, 0x14, 0x16, 0x9d, 0xdc, + 0x43, 0x6f, 0xc0, 0x52, 0x66, 0xb9, 0x3c, 0x0d, 0x4f, 0x3e, 0x07, 0xb3, 0x23, 0x27, 0x0d, 0xd5, + 0x0f, 0xb1, 0x3f, 0x99, 0xeb, 0xac, 0x59, 0x4e, 0xee, 0x21, 0x04, 0x8b, 0x82, 0xca, 0xbc, 0x33, + 0x8e, 0xb2, 0xd1, 0x9b, 0x70, 0x69, 0x48, 0xb9, 0x4c, 0x71, 0xe8, 0x0e, 0x98, 0x90, 0x59, 0x4b, + 0x9c, 0x52, 0x7e, 0xb6, 0xc1, 0x84, 0xac, 0x3e, 0x02, 0xf0, 0xda, 0xec, 0x12, 0x90, 0x03, 0x35, + 0x1a, 0xa8, 0xcc, 0x4b, 0xf5, 0xb5, 0xcb, 0xa8, 0x9f, 0x09, 0xe2, 0x68, 0x34, 0x40, 0x75, 0x38, + 0x1f, 0x29, 0x71, 0xf3, 0xeb, 0x53, 0x99, 0xa9, 0xfc, 0xbd, 0x89, 0xba, 0x4e, 0x1e, 0x59, 0xfd, + 0x1e, 0x40, 0xf3, 0x79, 0x17, 0x57, 0x24, 0x2c, 0x16, 0x04, 0x75, 0x61, 0x71, 0xb2, 0xde, 0x0c, + 0xa0, 0x48, 0x3f, 0xbc, 0x6c, 0xb2, 0x8e, 0x62, 0x3b, 0x9d, 0x64, 0x6d, 0x6a, 0x92, 0x8f, 0xb5, + 0x7c, 0x92, 0xaf, 0x8b, 0x59, 0x0b, 0xe5, 0xcc, 0xec, 0xa0, 0xab, 0x70, 0xf1, 0x4e, 0x63, 0xab, + 0xb9, 0xdd, 0x69, 0xac, 0x37, 0xcb, 0x05, 0x04, 0xe1, 0x7c, 0xa7, 0xbd, 0xd9, 0x5a, 0xff, 0xb8, + 0x0c, 0xd0, 0xff, 0x61, 0x29, 0xb3, 0x5d, 0xe7, 0xee, 0x66, 0xb3, 0xac, 0x4d, 0xc0, 0xc6, 0x7a, + 0xb7, 0xd5, 0xbe, 0x53, 0xd6, 0xd1, 0x02, 0x2c, 0x6e, 0xb7, 0xba, 0xcd, 0x72, 0x11, 0x95, 0xe1, + 0xd2, 0xbd, 0x96, 0xd3, 0xbd, 0xdb, 0xd8, 0x74, 0x37, 0xda, 0xdb, 0xdd, 0xf2, 0x5c, 0xfd, 0x07, + 0x1d, 0x5e, 0x5d, 0x57, 0x1b, 0xfd, 0x23, 0x2c, 0x71, 0xa3, 0xd3, 0x42, 0xbf, 0x69, 0xcf, 0x6d, + 0xe1, 0xed, 0x4b, 0x2b, 0x91, 0xad, 0xc6, 0xca, 0xc6, 0xe5, 0x89, 0xb2, 0x56, 0x55, 0x7f, 0x04, + 0xfb, 0x3f, 0x6b, 0x60, 0xfc, 0xab, 0xe1, 0xf4, 0xde, 0xdb, 0xf5, 0x6b, 0x82, 0xf8, 0x29, 0x27, + 0x11, 0x11, 0x83, 0x9a, 0x87, 0x05, 0xf5, 0x6b, 0x11, 0x8b, 0xa9, 0x64, 0xfc, 0xc6, 0x79, 0x54, + 0x48, 0x1c, 0x07, 0x98, 0x07, 0xa7, 0x01, 0x43, 0x22, 0x6a, 0x94, 0xd5, 0x62, 0x22, 0x77, 0x18, + 0xbf, 0x5f, 0xe3, 0x04, 0x07, 0x0f, 0xfe, 0xfc, 0xfb, 0x3b, 0xed, 0x66, 0xf5, 0xfd, 0xfc, 0xe5, + 0xb3, 0x4f, 0xaf, 0x9b, 0xb0, 0xbf, 0x3c, 0xb5, 0xbf, 0x9a, 0xfd, 0x58, 0x0e, 0xa8, 0x14, 0x1f, + 0x80, 0xeb, 0x95, 0x9b, 0x7b, 0x8f, 0x81, 0xfe, 0xc7, 0x63, 0x60, 0x5f, 0xb8, 0xe0, 0xb6, 0xf7, + 0x39, 0xf1, 0xe5, 0x83, 0xdf, 0x0d, 0xcd, 0x00, 0x6b, 0x0f, 0xc1, 0xc1, 0xa1, 0x59, 0x78, 0x72, + 0x68, 0x16, 0x8e, 0x0f, 0x4d, 0xf0, 0xf5, 0xd8, 0x04, 0x3f, 0x8d, 0x4d, 0xb0, 0x3f, 0x36, 0xc1, + 0xc1, 0xd8, 0x04, 0x7f, 0x8d, 0x4d, 0xf0, 0xcf, 0xd8, 0x2c, 0x1c, 0x8f, 0x4d, 0xf0, 0xed, 0x91, + 0x59, 0xd8, 0x3b, 0x32, 0xc1, 0xc1, 0x91, 0x59, 0x78, 0x72, 0x64, 0x16, 0x3e, 0xf9, 0xac, 0xcf, + 0x92, 0xfb, 0x7d, 0x6b, 0xc8, 0x26, 0xeb, 0x8f, 0x63, 0x2b, 0x15, 0xb6, 0x32, 0x7a, 0x8c, 0x47, + 0xb5, 0x84, 0xb3, 0x21, 0x0d, 0x08, 0xaf, 0x9d, 0xc0, 0x76, 0xe2, 0xf5, 0x99, 0x4d, 0x76, 0x65, + 0xfe, 0xe6, 0xbd, 0xf0, 0xef, 0x80, 0x37, 0xaf, 0xde, 0xc1, 0x77, 0xff, 0x0b, 0x00, 0x00, 0xff, + 0xff, 0x52, 0x13, 0xa8, 0x71, 0x41, 0x08, 0x00, 0x00, } func (x ForwardProxyPolicyMetricLabel) String() string { diff --git a/pbgo/extschema/schema/views/forward_proxy_policy/types.pb.go b/pbgo/extschema/schema/views/forward_proxy_policy/types.pb.go index 055be9592..873230586 100644 --- a/pbgo/extschema/schema/views/forward_proxy_policy/types.pb.go +++ b/pbgo/extschema/schema/views/forward_proxy_policy/types.pb.go @@ -1736,166 +1736,165 @@ func init() { } var fileDescriptor_2204e8d809da33de = []byte{ - // 2537 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcf, 0x6f, 0x1b, 0xc7, - 0xf5, 0xe7, 0x90, 0x4b, 0x72, 0xf9, 0x48, 0x91, 0xab, 0x95, 0x1c, 0xd1, 0x4c, 0xc2, 0x2f, 0xc3, - 0xe4, 0x5b, 0x3b, 0xca, 0x9a, 0x32, 0x29, 0xf9, 0x47, 0x8c, 0x36, 0xad, 0x68, 0xc5, 0xa1, 0x05, - 0xd9, 0x15, 0x96, 0x76, 0x8b, 0xa6, 0x45, 0x88, 0x15, 0x39, 0xa2, 0xb6, 0x5e, 0xee, 0x2e, 0x76, - 0x86, 0xb2, 0x59, 0xc0, 0x80, 0x91, 0x1e, 0x7b, 0x29, 0x72, 0x34, 0xfa, 0x07, 0x04, 0xfe, 0x13, - 0x4a, 0x15, 0x10, 0x02, 0x14, 0x0d, 0x7c, 0xd2, 0xa5, 0x88, 0x81, 0x02, 0x6d, 0x4c, 0x1f, 0xea, - 0xde, 0x82, 0x1e, 0xda, 0x22, 0xa7, 0x62, 0x66, 0x97, 0xe4, 0x2e, 0x4d, 0xab, 0x4a, 0x9c, 0xb4, - 0x17, 0xdd, 0x96, 0x3b, 0xef, 0x7d, 0xe6, 0xcd, 0xfb, 0xf1, 0x79, 0x6f, 0x16, 0x84, 0x95, 0x5d, - 0x4c, 0x4a, 0xba, 0xb5, 0x44, 0x9a, 0x3b, 0xb8, 0xa3, 0x2d, 0xed, 0xea, 0xf8, 0x36, 0x59, 0xda, - 0xb6, 0x9c, 0xdb, 0x9a, 0xd3, 0x6a, 0xd8, 0x8e, 0x75, 0xa7, 0xd7, 0xb0, 0x2d, 0x43, 0x6f, 0xf6, - 0x96, 0x68, 0xcf, 0xc6, 0xa4, 0x64, 0x3b, 0x16, 0xb5, 0xe4, 0xd3, 0xae, 0x56, 0xc9, 0xd5, 0x2a, - 0x71, 0xad, 0xd2, 0x34, 0xad, 0xdc, 0x99, 0xb6, 0x4e, 0x77, 0xba, 0x5b, 0xa5, 0xa6, 0xd5, 0x59, - 0x6a, 0x5b, 0x6d, 0x6b, 0x89, 0x03, 0x6c, 0x75, 0xb7, 0xf9, 0x2f, 0xfe, 0x83, 0x3f, 0xb9, 0xc0, - 0xb9, 0x85, 0xa0, 0x39, 0x26, 0xa6, 0xde, 0xc2, 0xcb, 0xc1, 0x05, 0xcb, 0xa6, 0xba, 0x65, 0x7a, - 0xe6, 0xe4, 0x0a, 0xc1, 0xc5, 0x67, 0x0d, 0xce, 0x9d, 0x0c, 0x4a, 0xf8, 0x97, 0x5e, 0x99, 0xf0, - 0x80, 0x66, 0xe8, 0x2d, 0x8d, 0xe2, 0xe9, 0xd0, 0xec, 0xa4, 0x8d, 0xe0, 0xe6, 0x6f, 0x4c, 0xf3, - 0x20, 0xd1, 0x29, 0x6e, 0xf8, 0x77, 0xf9, 0xbf, 0x69, 0x52, 0x3e, 0x81, 0xe2, 0x67, 0x51, 0x88, - 0xdf, 0x54, 0x37, 0x6e, 0xf4, 0x6c, 0x2c, 0x9f, 0x83, 0x24, 0xbe, 0xa3, 0x35, 0x69, 0x63, 0x57, - 0x33, 0xba, 0x38, 0x8b, 0x0a, 0xe8, 0x74, 0xa2, 0x2a, 0xff, 0xab, 0x8f, 0x42, 0xbf, 0xfd, 0xdb, - 0x7e, 0x24, 0xe1, 0xc4, 0x25, 0x94, 0xbd, 0x17, 0xde, 0x41, 0xb5, 0x90, 0x0a, 0x5c, 0xf0, 0x47, - 0x4c, 0x4e, 0xbe, 0x00, 0x29, 0xd2, 0xdd, 0xde, 0xd6, 0xef, 0x78, 0x7a, 0xe1, 0x43, 0xf4, 0x92, - 0xae, 0xa4, 0xab, 0x78, 0x1e, 0x92, 0x0e, 0x6e, 0xe3, 0xa1, 0x5e, 0x84, 0xeb, 0xcd, 0x0d, 0xf5, - 0xc0, 0x11, 0xb9, 0xde, 0x3e, 0xe2, 0x1b, 0x72, 0x49, 0x57, 0xef, 0xfb, 0x20, 0xd9, 0x1a, 0xdd, - 0x69, 0xf8, 0x8d, 0x15, 0xa6, 0x2b, 0x3f, 0x0d, 0xa3, 0x1a, 0x52, 0xd3, 0x4c, 0xfc, 0xdd, 0xb1, - 0xc5, 0xab, 0x30, 0xcb, 0x01, 0x6c, 0x07, 0x8f, 0xcd, 0x8e, 0x1e, 0x86, 0x90, 0x61, 0xf2, 0x9b, - 0x5c, 0x3c, 0x68, 0x83, 0xff, 0x00, 0xb1, 0xe7, 0x1f, 0xc0, 0xb3, 0x41, 0x1d, 0x1f, 0xa2, 0x0c, - 0xa2, 0x66, 0xf6, 0x1a, 0xec, 0x6d, 0x36, 0x51, 0x40, 0xa7, 0x93, 0x95, 0xf9, 0x52, 0x30, 0xbd, - 0xdf, 0xed, 0xd8, 0xb4, 0x57, 0x43, 0x6a, 0x5c, 0x33, 0x7b, 0x9b, 0x1a, 0xdd, 0xb9, 0xf4, 0x19, - 0xfa, 0xa4, 0x8f, 0x64, 0x90, 0x20, 0x51, 0xbb, 0x71, 0x63, 0xb3, 0x70, 0x53, 0xdd, 0x20, 0x72, - 0xe4, 0x82, 0x72, 0xf1, 0x61, 0x1f, 0xed, 0x21, 0xb8, 0x06, 0xb1, 0x35, 0xab, 0xa3, 0xe9, 0xe6, - 0xe2, 0x65, 0x58, 0x85, 0x99, 0x40, 0x2c, 0x21, 0x1b, 0x8c, 0x91, 0x2c, 0xe6, 0x62, 0x75, 0xfe, - 0x1b, 0x5e, 0x0a, 0x04, 0x41, 0x8e, 0xe7, 0xa2, 0xdc, 0x48, 0xb8, 0x05, 0x02, 0xdb, 0x74, 0xb1, - 0x09, 0x1a, 0x64, 0xc6, 0xb6, 0x56, 0x22, 0xab, 0x66, 0x0f, 0xe4, 0x67, 0x23, 0x00, 0xaf, 0x4e, - 0x71, 0x2a, 0xdb, 0xc7, 0xf5, 0x1a, 0xbc, 0xfc, 0xac, 0xc3, 0x46, 0x9b, 0x55, 0x8b, 0x30, 0xd3, - 0xe2, 0xb6, 0x37, 0x9a, 0x3b, 0x96, 0xde, 0xc4, 0xf2, 0xec, 0x7e, 0x1f, 0xa1, 0x83, 0x3e, 0x8a, - 0x0f, 0xfa, 0x28, 0x5a, 0x56, 0x2a, 0xca, 0x72, 0xb5, 0x08, 0x49, 0x0e, 0xe0, 0x49, 0xcc, 0xed, - 0xf7, 0x51, 0xe2, 0xa0, 0x8f, 0xc4, 0x41, 0x1f, 0xc5, 0xdf, 0x56, 0x56, 0x94, 0x73, 0xca, 0xf9, - 0x75, 0x41, 0x8c, 0x4b, 0xe2, 0xba, 0x20, 0x8a, 0x52, 0xa2, 0xf8, 0x27, 0x01, 0x72, 0x57, 0x5c, - 0x6e, 0xd8, 0x64, 0xd4, 0x50, 0xd7, 0x3b, 0xb6, 0x81, 0xd5, 0xae, 0x81, 0x79, 0xb2, 0xaf, 0x83, - 0x48, 0x0d, 0xd2, 0x30, 0x74, 0x42, 0xb3, 0xa8, 0x10, 0x39, 0x9d, 0xac, 0x9c, 0x9c, 0xf0, 0xbf, - 0xeb, 0x4d, 0x26, 0x5c, 0x9d, 0x67, 0xf1, 0x8c, 0x7e, 0x84, 0xc2, 0x92, 0x34, 0x7c, 0xca, 0x22, - 0x35, 0x4e, 0x0d, 0xb2, 0xa1, 0x13, 0x2a, 0xb7, 0x20, 0xb1, 0x43, 0xa9, 0xed, 0x82, 0x85, 0x39, - 0x58, 0xb9, 0x74, 0x54, 0xae, 0x2a, 0x79, 0xe5, 0xf7, 0x9c, 0x4d, 0x44, 0x86, 0xcc, 0x77, 0xd9, - 0x84, 0x44, 0x0b, 0x13, 0xea, 0xee, 0x12, 0x99, 0x6a, 0xf2, 0xc6, 0xca, 0x1a, 0x26, 0x94, 0xa3, - 0x65, 0x99, 0x07, 0xa7, 0x23, 0x32, 0x14, 0x8e, 0x58, 0x87, 0x5c, 0x0b, 0x6f, 0x6b, 0x5d, 0x83, - 0x36, 0xb4, 0x26, 0x23, 0x97, 0x86, 0x89, 0xef, 0x50, 0xcf, 0xae, 0x6c, 0xfc, 0x90, 0xac, 0x0c, - 0xa9, 0x0b, 0x9e, 0xe6, 0x2a, 0x57, 0xbc, 0x8e, 0xef, 0xd0, 0x4d, 0xae, 0x26, 0x5f, 0x81, 0xb9, - 0x09, 0xd0, 0x16, 0x36, 0x7b, 0x59, 0xf1, 0x50, 0xb4, 0xd9, 0x00, 0xda, 0x1a, 0x36, 0x7b, 0x72, - 0x0d, 0xe6, 0x27, 0x70, 0x34, 0xc3, 0xb0, 0x6e, 0x1f, 0x5a, 0x2c, 0x21, 0x55, 0x0e, 0x00, 0xad, - 0x32, 0x8d, 0x4b, 0xf0, 0xf7, 0x77, 0xe2, 0x3c, 0x87, 0x94, 0xf3, 0xd5, 0x12, 0x9c, 0x98, 0x40, - 0xf5, 0xf2, 0xe9, 0xc4, 0x7e, 0x1f, 0xc5, 0x3f, 0x75, 0xb3, 0x2e, 0xc6, 0xb2, 0xee, 0x82, 0x72, - 0x51, 0x79, 0x7b, 0x5d, 0x10, 0x05, 0x29, 0xba, 0x2e, 0x88, 0x51, 0x29, 0xb6, 0x2e, 0x88, 0x20, - 0x25, 0xd7, 0x05, 0x31, 0x26, 0xc5, 0x8b, 0x3f, 0x83, 0xb4, 0x9b, 0x1f, 0xcc, 0x91, 0xdf, 0x74, - 0x42, 0x15, 0x09, 0x24, 0x6f, 0xaa, 0x1b, 0x23, 0xe8, 0xff, 0x4a, 0x7e, 0x15, 0xff, 0x3a, 0x07, - 0xaf, 0xf8, 0x0b, 0x66, 0xb5, 0xb5, 0xab, 0x99, 0x4d, 0xdc, 0x1a, 0x95, 0xcc, 0x25, 0x10, 0x3b, - 0x98, 0x6a, 0x2d, 0x8d, 0x6a, 0xd9, 0x93, 0x3c, 0x0a, 0xf9, 0x09, 0x2b, 0xae, 0x61, 0x42, 0xb4, - 0x36, 0xbe, 0x86, 0xa9, 0xc6, 0x34, 0xd4, 0x91, 0xbc, 0xfc, 0x06, 0x24, 0x9c, 0xae, 0x81, 0x1b, - 0xa6, 0xd6, 0x19, 0x76, 0x96, 0xf8, 0xa3, 0xbb, 0xe8, 0x69, 0x1f, 0x21, 0x55, 0x64, 0x2b, 0xd7, - 0xb5, 0x0e, 0x96, 0x2b, 0x20, 0x71, 0xa9, 0x16, 0x26, 0x4d, 0x47, 0xe7, 0xfd, 0x2e, 0x2b, 0x07, - 0x85, 0x33, 0x4c, 0x60, 0x6d, 0xbc, 0x2e, 0x5f, 0x81, 0x98, 0x1b, 0x49, 0xde, 0x78, 0xd2, 0x95, - 0xc2, 0x84, 0x4d, 0x9e, 0x17, 0xd8, 0x29, 0xdc, 0xa4, 0xa8, 0xa6, 0xd8, 0xf1, 0xe3, 0x1f, 0x22, - 0x21, 0x17, 0x0e, 0x21, 0xd5, 0xd3, 0x96, 0x2f, 0x40, 0x52, 0x33, 0x8c, 0x06, 0xb1, 0xba, 0x4e, - 0x13, 0x13, 0xde, 0x50, 0x9e, 0x9f, 0x66, 0xa0, 0x19, 0x46, 0xdd, 0x95, 0x94, 0x55, 0x48, 0x7a, - 0x9c, 0xc7, 0xe3, 0x13, 0xe5, 0x8a, 0x6f, 0x4e, 0x8d, 0x8f, 0xcb, 0x85, 0x75, 0xea, 0xe8, 0x66, - 0x7b, 0x18, 0xdd, 0xaa, 0x70, 0xd0, 0x77, 0x5b, 0x9c, 0x8b, 0xc2, 0x2b, 0xf3, 0x0a, 0xa4, 0x75, - 0x93, 0xe8, 0x2d, 0x3c, 0xb2, 0x27, 0xf6, 0x7c, 0x7b, 0x46, 0xce, 0xa9, 0x85, 0xd4, 0x19, 0x57, - 0x6d, 0x68, 0x5b, 0x03, 0x12, 0xba, 0x49, 0xb1, 0xb3, 0xad, 0x35, 0xb1, 0x57, 0xd0, 0xc5, 0xa9, - 0x96, 0xfd, 0x70, 0xeb, 0xe7, 0xb8, 0x49, 0x55, 0xbc, 0xcd, 0x4d, 0x7a, 0xf9, 0xc1, 0xdd, 0x59, - 0x13, 0xd3, 0xdb, 0x96, 0x73, 0xab, 0x31, 0xd2, 0x1f, 0x6f, 0x32, 0xc6, 0x94, 0x4f, 0x41, 0x82, - 0x85, 0x94, 0xd8, 0x6c, 0x03, 0x31, 0x10, 0x2a, 0x26, 0x38, 0x5a, 0x93, 0xeb, 0x90, 0x36, 0xb4, - 0x2d, 0x6c, 0x34, 0x08, 0x36, 0x70, 0x93, 0x5a, 0x8e, 0x57, 0xc8, 0x93, 0xe1, 0xda, 0x60, 0x42, - 0x75, 0x4f, 0x86, 0x1b, 0x23, 0xde, 0xdf, 0x43, 0x02, 0x84, 0x51, 0x84, 0x1d, 0xcf, 0xf0, 0x2f, - 0xcb, 0xef, 0xc3, 0x8c, 0x6e, 0x0f, 0x3b, 0x0e, 0xc1, 0x34, 0x0b, 0x47, 0x3e, 0xa2, 0xf4, 0xe0, - 0x6e, 0x50, 0x97, 0x4d, 0x27, 0xba, 0xed, 0x45, 0x08, 0x53, 0x79, 0x15, 0x24, 0x96, 0x0f, 0x8c, - 0x2c, 0x75, 0x53, 0xe3, 0xa3, 0x57, 0x36, 0x75, 0x68, 0xa3, 0xce, 0x68, 0x86, 0xb1, 0xe6, 0x13, - 0x97, 0x6f, 0xfa, 0x28, 0x61, 0x86, 0xab, 0x5e, 0x3c, 0x7a, 0xd9, 0x06, 0xe9, 0xa5, 0xe6, 0x6b, - 0x37, 0x37, 0xfc, 0x74, 0x90, 0xe6, 0xb8, 0xe7, 0xbe, 0x12, 0x1d, 0xf8, 0x40, 0xc7, 0xed, 0x45, - 0x83, 0xd9, 0x16, 0xa1, 0x8d, 0xa0, 0x3f, 0xe7, 0x5f, 0xc0, 0x9f, 0x48, 0x4d, 0xb7, 0x08, 0xbd, - 0xea, 0x73, 0xe9, 0x4f, 0x20, 0xc3, 0xb6, 0xf0, 0x57, 0xcb, 0x89, 0xaf, 0x57, 0x2d, 0x48, 0x9d, - 0x69, 0x11, 0xba, 0x39, 0x2e, 0x98, 0x1b, 0x90, 0x64, 0xd0, 0x1a, 0x31, 0xb9, 0xdd, 0x0b, 0x47, - 0xb6, 0x3b, 0xfd, 0xe0, 0x6e, 0x72, 0xab, 0x6d, 0x0f, 0x35, 0x6b, 0x48, 0x4d, 0xb4, 0x08, 0x5d, - 0x25, 0x26, 0x33, 0x78, 0x03, 0x52, 0x43, 0x54, 0x6e, 0x6d, 0x76, 0x2a, 0xac, 0xe7, 0xd8, 0x55, - 0x62, 0x5e, 0xd3, 0x68, 0x73, 0x87, 0xd9, 0x33, 0x32, 0x13, 0x5c, 0x30, 0x6e, 0xe3, 0x2d, 0x98, - 0xed, 0x3a, 0x46, 0xa3, 0xa9, 0x51, 0xdc, 0xb6, 0x9c, 0x9e, 0x0b, 0x99, 0xe7, 0x90, 0xdf, 0xfb, - 0x4a, 0xf1, 0xbb, 0xec, 0x21, 0xf8, 0xe2, 0x98, 0xe9, 0x3a, 0x86, 0xff, 0xb5, 0xfc, 0x53, 0x90, - 0x99, 0xe9, 0x13, 0x35, 0xf7, 0xd2, 0x11, 0x6b, 0x2e, 0x71, 0x7f, 0x0f, 0x45, 0x21, 0x12, 0x8e, - 0x44, 0x6b, 0x48, 0x95, 0x5a, 0x84, 0x06, 0x44, 0xe4, 0xf7, 0x60, 0xde, 0xb4, 0x1a, 0x3c, 0x09, - 0x9b, 0x96, 0x69, 0xe2, 0x26, 0x1b, 0x1a, 0x1c, 0x9a, 0x95, 0x0e, 0xa9, 0x8f, 0xb0, 0x3a, 0x6b, - 0x5a, 0x35, 0x4a, 0xed, 0xcb, 0xae, 0xc6, 0xa6, 0xe5, 0x50, 0x79, 0x1d, 0x52, 0x4c, 0xb1, 0xd1, - 0x61, 0x8e, 0xc3, 0x4e, 0x76, 0x96, 0x03, 0xfc, 0xff, 0x74, 0x07, 0x33, 0x8d, 0x6b, 0xae, 0x20, - 0x3f, 0x75, 0x58, 0x4d, 0xda, 0xe3, 0x57, 0x97, 0xfe, 0x21, 0x7c, 0xd2, 0x47, 0x69, 0x48, 0x81, - 0xc0, 0xb8, 0x5e, 0x16, 0x2a, 0xe7, 0x94, 0xca, 0xc3, 0x3e, 0xfa, 0x8b, 0x00, 0x0b, 0x20, 0xb0, - 0xf6, 0x92, 0xcb, 0xc0, 0xcc, 0xb0, 0x21, 0x95, 0x18, 0x33, 0xc1, 0x1f, 0x11, 0xc4, 0x5c, 0xaa, - 0x5c, 0x7c, 0x88, 0xe0, 0x0f, 0x08, 0xe4, 0x40, 0x13, 0x70, 0x87, 0xdd, 0x53, 0x30, 0xef, 0xcb, - 0xd8, 0x92, 0xfb, 0x8c, 0x49, 0x31, 0x23, 0x45, 0x16, 0x93, 0x57, 0x37, 0x0b, 0x9b, 0xde, 0x0b, - 0x78, 0x7d, 0x92, 0xb4, 0x2b, 0xb3, 0x57, 0xf9, 0xef, 0xc2, 0xd5, 0x21, 0x5f, 0x12, 0xc8, 0xfa, - 0x18, 0x59, 0x4e, 0xe6, 0x12, 0xa3, 0x25, 0xb6, 0x32, 0xa6, 0xcb, 0x64, 0x2e, 0x71, 0x7d, 0xf8, - 0x03, 0xa4, 0x49, 0xee, 0x84, 0x57, 0x27, 0x88, 0x4f, 0x4e, 0xe5, 0xc0, 0xb5, 0xa3, 0x50, 0xc7, - 0x14, 0x0e, 0xc2, 0x90, 0xf4, 0x31, 0xd1, 0xe2, 0x7e, 0x18, 0x7e, 0x17, 0x86, 0x85, 0x67, 0x19, - 0xcd, 0x3d, 0x61, 0x1e, 0x66, 0x87, 0x3c, 0x55, 0x1a, 0x3e, 0xe4, 0x12, 0x72, 0xdc, 0xa5, 0x20, - 0x02, 0xaf, 0xc2, 0xdc, 0x88, 0x70, 0x4a, 0xa3, 0xa7, 0x5c, 0x4c, 0x16, 0xd8, 0x1d, 0x04, 0x5e, - 0x9b, 0xc2, 0x1c, 0x13, 0x06, 0xbd, 0x05, 0xd9, 0x89, 0xca, 0x3f, 0xc4, 0x8f, 0xd9, 0x40, 0x2d, - 0xcb, 0x89, 0x5c, 0x7c, 0xb5, 0x7e, 0x9d, 0xc3, 0xbc, 0x09, 0x0b, 0xfe, 0x7a, 0x2c, 0x69, 0xa4, - 0x61, 0x76, 0x3b, 0x5b, 0xd8, 0x21, 0xc5, 0xb4, 0x14, 0x5d, 0x84, 0xd5, 0x7a, 0xe1, 0xba, 0xfb, - 0x1b, 0xe6, 0xa7, 0xe5, 0x3f, 0x5c, 0x84, 0xc2, 0x33, 0x25, 0x58, 0xf2, 0xbd, 0xd1, 0x31, 0x29, - 0xce, 0x4b, 0x91, 0xc5, 0xf4, 0x4d, 0x75, 0xa3, 0x70, 0x79, 0xf4, 0xee, 0x2c, 0x82, 0x93, 0x90, - 0x64, 0x69, 0x55, 0x70, 0x67, 0x88, 0x1c, 0x0c, 0xa7, 0x8e, 0x02, 0xaa, 0xbe, 0x05, 0x33, 0x6e, - 0xc0, 0x87, 0xb3, 0x64, 0x6e, 0xbf, 0x8f, 0x18, 0x01, 0x44, 0x06, 0x7d, 0x94, 0xe6, 0x37, 0x13, - 0x85, 0x4f, 0x93, 0x4a, 0xf9, 0x6c, 0xf5, 0xbb, 0x20, 0xfb, 0x02, 0x30, 0xd4, 0xf8, 0xce, 0x7e, - 0x1f, 0xa5, 0x0e, 0xfa, 0x28, 0x39, 0xe8, 0xa3, 0x5c, 0xb9, 0xa2, 0x94, 0x97, 0x95, 0xf2, 0x8a, - 0x52, 0x29, 0x2b, 0x95, 0xb3, 0x4a, 0x65, 0x45, 0xa9, 0x2c, 0x2b, 0xcb, 0x67, 0x95, 0x4a, 0xa5, - 0xaa, 0x78, 0x91, 0x18, 0x56, 0x9d, 0x6f, 0x78, 0x95, 0xbc, 0xe1, 0x35, 0xc3, 0xaf, 0x4c, 0xe7, - 0x95, 0xf2, 0x85, 0x75, 0x41, 0x8c, 0x48, 0xc2, 0xba, 0x20, 0x26, 0xa5, 0xd4, 0xba, 0x20, 0xce, - 0x49, 0xf3, 0xeb, 0x82, 0x98, 0x91, 0xa4, 0xe2, 0x2e, 0xcc, 0x4d, 0x61, 0x11, 0xb9, 0x01, 0xe9, - 0xa0, 0x2b, 0xf8, 0x1c, 0x9b, 0xae, 0xbc, 0x36, 0xbd, 0x1c, 0x7d, 0x10, 0xd5, 0x13, 0x6c, 0xa4, - 0x8a, 0x7d, 0x84, 0x22, 0xd2, 0x3d, 0xe4, 0x1b, 0x2e, 0x67, 0xc6, 0xac, 0xc4, 0x3c, 0xfb, 0x31, - 0x82, 0xac, 0x7f, 0xc2, 0x64, 0x0e, 0x1d, 0xed, 0xfe, 0x2b, 0x04, 0x51, 0x36, 0xdb, 0x11, 0x6f, - 0x7a, 0xbe, 0x72, 0x74, 0x4a, 0x3c, 0x6c, 0x6a, 0xad, 0x9e, 0x39, 0xf0, 0x5f, 0x84, 0x0a, 0xc3, - 0x27, 0x71, 0xf4, 0xee, 0x2c, 0x1a, 0x7c, 0xfe, 0xfb, 0x48, 0xec, 0xa3, 0x3d, 0x14, 0x96, 0x90, - 0xea, 0xda, 0x50, 0xfc, 0xa7, 0x08, 0xe9, 0xf7, 0x0c, 0x6b, 0x4b, 0x33, 0xea, 0x36, 0x6e, 0x72, - 0x03, 0xd7, 0x20, 0xc1, 0x6f, 0xc1, 0x6c, 0x17, 0x3e, 0x6b, 0x3e, 0x6f, 0x1c, 0xcb, 0x30, 0x3c, - 0xb8, 0xbf, 0x87, 0x62, 0xa4, 0x47, 0x28, 0xee, 0xd4, 0x42, 0x2a, 0xbb, 0x3f, 0x73, 0xf3, 0xe4, - 0x5f, 0xc0, 0x68, 0xb2, 0xf2, 0x82, 0x68, 0x39, 0xfc, 0xd3, 0xc7, 0xd1, 0xda, 0xd5, 0x29, 0xdf, - 0x64, 0x36, 0xd2, 0xbf, 0xb7, 0x87, 0xd0, 0xb3, 0x7b, 0x4a, 0x9e, 0xdc, 0xe5, 0xa1, 0x98, 0xdc, - 0x61, 0x4c, 0xc6, 0xfc, 0x36, 0xd1, 0x15, 0x84, 0x23, 0x76, 0x85, 0x05, 0x77, 0x12, 0x0b, 0x4d, - 0xd9, 0x4c, 0xe6, 0xc0, 0xc1, 0x2e, 0xf1, 0x63, 0x90, 0x5a, 0x8e, 0x1d, 0x68, 0x13, 0xd9, 0xe4, - 0x21, 0x7e, 0x3b, 0xc1, 0x60, 0xa5, 0xfb, 0x7b, 0x28, 0x45, 0x76, 0x34, 0x07, 0xb7, 0x94, 0x42, - 0x97, 0x60, 0xa7, 0x16, 0x52, 0xd3, 0x2d, 0xc7, 0xf6, 0x75, 0x0e, 0x79, 0x19, 0x12, 0xfc, 0x2e, - 0xc8, 0x6e, 0x84, 0x87, 0x5e, 0x53, 0x91, 0x2a, 0x72, 0xc1, 0x55, 0xc3, 0x90, 0x31, 0x80, 0xab, - 0xc4, 0xdb, 0xae, 0x7b, 0x1d, 0x5d, 0xfb, 0x7a, 0x39, 0x16, 0xfc, 0x94, 0xc0, 0x46, 0x06, 0x8e, - 0xcc, 0xfb, 0x6e, 0x93, 0xdd, 0xd2, 0x4d, 0xaf, 0xb9, 0x27, 0xbe, 0xd1, 0x5d, 0x44, 0x06, 0xec, - 0xcd, 0x6a, 0xee, 0x6d, 0x8a, 0x6f, 0xe2, 0xce, 0xbc, 0xd5, 0xaf, 0xb7, 0x89, 0xbf, 0x04, 0x6b, - 0xde, 0x55, 0x8c, 0x6f, 0xf1, 0x4b, 0x04, 0x69, 0x82, 0xdb, 0x1d, 0x6c, 0x8e, 0x3e, 0x08, 0xb8, - 0xd3, 0xef, 0xa9, 0xe9, 0x6c, 0x50, 0x77, 0x65, 0xdd, 0x8f, 0x00, 0x3c, 0x5b, 0x96, 0xbf, 0xe8, - 0x23, 0xf4, 0x60, 0x0f, 0xbd, 0xb5, 0x18, 0x69, 0x3a, 0x74, 0x31, 0x4e, 0xa8, 0xd6, 0xd6, 0xcd, - 0xf6, 0xa2, 0x60, 0x3b, 0x56, 0x6b, 0x31, 0x45, 0xac, 0x6d, 0xba, 0xa5, 0x99, 0xb7, 0x1a, 0x1d, - 0xdc, 0x5c, 0x8c, 0x6f, 0xe3, 0x96, 0xa3, 0x75, 0x6c, 0x75, 0x86, 0xf8, 0x71, 0xe4, 0x0f, 0x60, - 0x86, 0x7f, 0xfb, 0xe4, 0x2d, 0xd3, 0xd4, 0x8c, 0xec, 0xd3, 0xa3, 0x5f, 0x62, 0xe6, 0x1f, 0xdc, - 0x0d, 0x2a, 0xf3, 0xfb, 0x63, 0x8a, 0xbd, 0xba, 0xea, 0xbd, 0xb9, 0xb4, 0xf2, 0x49, 0x1f, 0x9d, - 0x05, 0x80, 0xa8, 0x5b, 0x9c, 0xa8, 0xcc, 0x9e, 0x99, 0x4f, 0x88, 0x8c, 0xce, 0xc3, 0x4b, 0x20, - 0x79, 0xc7, 0x2a, 0x8c, 0x92, 0x3a, 0x5c, 0xae, 0x54, 0xdf, 0x80, 0x94, 0xeb, 0x50, 0x8f, 0x7e, - 0xe7, 0xf7, 0xfb, 0x28, 0xcc, 0x68, 0x66, 0xd0, 0x47, 0x62, 0x45, 0x29, 0x97, 0x95, 0x65, 0x65, - 0xa5, 0xfa, 0x3a, 0x24, 0x79, 0x90, 0x7c, 0x42, 0x71, 0xef, 0xe3, 0x82, 0x38, 0x6c, 0x07, 0xa3, - 0x2f, 0x0b, 0x48, 0x0a, 0x7b, 0x5f, 0x16, 0x1e, 0xc7, 0x20, 0x7d, 0xd9, 0xc1, 0x1a, 0xc5, 0x23, - 0xe6, 0x59, 0x3e, 0x22, 0xf3, 0x04, 0x88, 0xa6, 0xfd, 0x62, 0x44, 0x33, 0x3f, 0x8d, 0x68, 0xa6, - 0xb2, 0xca, 0x8d, 0x17, 0x63, 0x95, 0xe7, 0x90, 0xc7, 0x0f, 0xbe, 0x1a, 0x79, 0x1c, 0xb3, 0xc4, - 0xff, 0x84, 0x25, 0xae, 0xbf, 0x20, 0x49, 0x4c, 0xd4, 0xfb, 0xa5, 0xd9, 0x87, 0xef, 0x4c, 0xb4, - 0xdd, 0x6a, 0x61, 0xa2, 0xd8, 0xa4, 0x0f, 0xbf, 0x44, 0x81, 0x37, 0xd5, 0x7c, 0xb0, 0xd0, 0x32, - 0x1f, 0x7e, 0x89, 0xfc, 0x2f, 0xa6, 0xd4, 0xd8, 0x20, 0x06, 0x19, 0x15, 0xdb, 0x86, 0xd6, 0x3c, - 0x2e, 0xb2, 0xe3, 0x22, 0x3b, 0x2e, 0xb2, 0x6f, 0xa5, 0xc8, 0xfe, 0x1c, 0x83, 0xe4, 0x7b, 0x98, - 0x1e, 0x17, 0xd8, 0x71, 0x81, 0x1d, 0x17, 0xd8, 0xb7, 0x50, 0x60, 0xd5, 0xdf, 0xa0, 0x83, 0xc7, - 0xf9, 0xd0, 0xa3, 0xc7, 0xf9, 0xd0, 0x17, 0x8f, 0xf3, 0xe8, 0xde, 0x20, 0x8f, 0x3e, 0x1e, 0xe4, - 0xd1, 0xa7, 0x83, 0x3c, 0x3a, 0x18, 0xe4, 0xd1, 0xa3, 0x41, 0x1e, 0x7d, 0x3e, 0xc8, 0xa3, 0xa7, - 0x83, 0x7c, 0xe8, 0x8b, 0x41, 0x1e, 0xfd, 0xfa, 0x49, 0x3e, 0xb4, 0xff, 0x24, 0x8f, 0x0e, 0x9e, - 0xe4, 0x43, 0x8f, 0x9e, 0xe4, 0x43, 0xef, 0x7f, 0xd0, 0xb6, 0xec, 0x5b, 0xed, 0xd2, 0xae, 0x65, - 0x50, 0xec, 0x38, 0x5a, 0xa9, 0x4b, 0x96, 0xf8, 0xc3, 0xb6, 0xe5, 0x74, 0xce, 0xd8, 0x8e, 0xb5, - 0xab, 0xb7, 0xb0, 0x73, 0x66, 0xb8, 0xbc, 0x64, 0x6f, 0xb5, 0xad, 0x25, 0x7c, 0x87, 0x7a, 0x7f, - 0x25, 0xf8, 0x8f, 0xff, 0xdc, 0xd8, 0x8a, 0xf1, 0x7f, 0x18, 0x2c, 0xff, 0x3b, 0x00, 0x00, 0xff, - 0xff, 0x15, 0xbc, 0xa4, 0x13, 0xec, 0x21, 0x00, 0x00, + // 2515 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xdd, 0x6f, 0xdb, 0xd6, + 0x15, 0xd7, 0x95, 0x28, 0x89, 0x3a, 0x92, 0x25, 0x9a, 0x56, 0x6a, 0x45, 0x6d, 0x55, 0x55, 0xed, + 0x96, 0xd4, 0x65, 0xe4, 0x48, 0x76, 0x3e, 0x1a, 0x6c, 0xdd, 0x24, 0xbb, 0xa9, 0x22, 0x38, 0x9e, + 0x41, 0x39, 0x1b, 0xd6, 0x0d, 0x15, 0x68, 0xe9, 0x5a, 0xd6, 0x42, 0x91, 0x04, 0x79, 0xe5, 0x58, + 0x03, 0x02, 0x04, 0x7d, 0xdd, 0xcb, 0xd0, 0xc7, 0x60, 0x7f, 0x40, 0x91, 0x3f, 0x61, 0xf2, 0x00, + 0xa3, 0xc0, 0xb0, 0x22, 0x4f, 0x7e, 0x19, 0x1a, 0x60, 0xc0, 0xd6, 0x28, 0x0f, 0xcb, 0xde, 0x8a, + 0x3d, 0x0c, 0x43, 0x9f, 0x86, 0x7b, 0x49, 0x49, 0xa4, 0x2c, 0x7b, 0x6e, 0xd3, 0x6e, 0x2f, 0x7e, + 0x23, 0xef, 0x3d, 0x5f, 0xf7, 0x7c, 0xfc, 0xce, 0xb9, 0x04, 0x61, 0x79, 0x17, 0x5b, 0xf9, 0xb6, + 0xbe, 0x68, 0x35, 0x76, 0x70, 0x47, 0x59, 0xdc, 0x6d, 0xe3, 0x7b, 0xd6, 0xe2, 0xb6, 0x6e, 0xde, + 0x53, 0xcc, 0x66, 0xdd, 0x30, 0xf5, 0xbd, 0x5e, 0xdd, 0xd0, 0xd5, 0x76, 0xa3, 0xb7, 0x48, 0x7a, + 0x06, 0xb6, 0xf2, 0x86, 0xa9, 0x13, 0x5d, 0xbc, 0x68, 0x73, 0xe5, 0x6d, 0xae, 0x3c, 0xe3, 0xca, + 0x4f, 0xe3, 0x4a, 0x5f, 0x6a, 0xb5, 0xc9, 0x4e, 0x77, 0x2b, 0xdf, 0xd0, 0x3b, 0x8b, 0x2d, 0xbd, + 0xa5, 0x2f, 0x32, 0x01, 0x5b, 0xdd, 0x6d, 0xf6, 0xc6, 0x5e, 0xd8, 0x93, 0x2d, 0x38, 0x3d, 0xef, + 0x35, 0x47, 0xc3, 0xc4, 0xd9, 0x78, 0xd9, 0xbb, 0xa1, 0x1b, 0xa4, 0xad, 0x6b, 0x8e, 0x39, 0xe9, + 0xac, 0x77, 0xf3, 0xa8, 0xc1, 0xe9, 0xf3, 0x5e, 0x0a, 0xf7, 0xd6, 0x2b, 0x13, 0x1e, 0x50, 0xd4, + 0x76, 0x53, 0x21, 0x78, 0xba, 0x68, 0x7a, 0xd2, 0xba, 0x57, 0xf9, 0x9b, 0xd3, 0x3c, 0x68, 0xb5, + 0x09, 0xae, 0xbb, 0xb5, 0xbc, 0x36, 0x8d, 0xca, 0x45, 0x90, 0xfb, 0x3c, 0x08, 0xe1, 0x3b, 0xf2, + 0xda, 0x66, 0xcf, 0xc0, 0xe2, 0x15, 0x88, 0xe2, 0x3d, 0xa5, 0x41, 0xea, 0xbb, 0x8a, 0xda, 0xc5, + 0x29, 0x94, 0x45, 0x17, 0x23, 0x65, 0xf1, 0xdf, 0x7d, 0xe4, 0xfb, 0xfd, 0x3f, 0x0e, 0x02, 0x11, + 0x33, 0x2c, 0xa0, 0xd4, 0x03, 0xff, 0x0e, 0xaa, 0xf8, 0x64, 0x60, 0x84, 0x3f, 0xa5, 0x74, 0xe2, + 0x35, 0x88, 0x59, 0xdd, 0xed, 0xed, 0xf6, 0x9e, 0xc3, 0xe7, 0x3f, 0x81, 0x2f, 0x6a, 0x53, 0xda, + 0x8c, 0x57, 0x21, 0x6a, 0xe2, 0x16, 0x1e, 0xf2, 0x05, 0x18, 0xdf, 0xdc, 0x90, 0x0f, 0x4c, 0x9e, + 0xf1, 0x1d, 0x20, 0xa6, 0x90, 0x51, 0xda, 0x7c, 0x3f, 0x02, 0xc1, 0x50, 0xc8, 0x4e, 0xdd, 0x6d, + 0x2c, 0x37, 0x9d, 0xf9, 0xb9, 0x1f, 0x55, 0x90, 0x1c, 0xa7, 0xe4, 0xef, 0x8d, 0x2d, 0x2e, 0xc1, + 0x2c, 0x13, 0x60, 0x98, 0x78, 0x6c, 0x76, 0xf0, 0x24, 0x09, 0x09, 0x4a, 0xbf, 0xc1, 0xc8, 0xbd, + 0x36, 0xb8, 0x0f, 0x10, 0x3a, 0xfe, 0x00, 0x8e, 0x0d, 0xf2, 0xf8, 0x10, 0x05, 0xe0, 0x15, 0xad, + 0x57, 0xa7, 0xab, 0xa9, 0x48, 0x16, 0x5d, 0x8c, 0x16, 0x93, 0x79, 0x6f, 0x7a, 0xbf, 0xd7, 0x31, + 0x48, 0xaf, 0x82, 0xe4, 0xb0, 0xa2, 0xf5, 0x36, 0x14, 0xb2, 0x73, 0xe3, 0x73, 0xf4, 0x69, 0x1f, + 0x89, 0x20, 0x40, 0xa4, 0xb2, 0xb9, 0xb9, 0x91, 0xbd, 0x23, 0xaf, 0x59, 0x62, 0xe0, 0x9a, 0x74, + 0xfd, 0x71, 0x1f, 0xed, 0x23, 0xb8, 0x0d, 0xa1, 0x55, 0xbd, 0xa3, 0xb4, 0xb5, 0x85, 0x15, 0x28, + 0xc1, 0x8c, 0x27, 0x96, 0x90, 0xf2, 0xc6, 0x48, 0xe4, 0xd3, 0xa1, 0x1a, 0x7b, 0x87, 0x97, 0x3c, + 0x41, 0x10, 0xc3, 0xe9, 0x20, 0x33, 0x12, 0xee, 0x02, 0x47, 0x95, 0x2e, 0x34, 0x40, 0x81, 0xc4, + 0xd8, 0xd6, 0x62, 0xa0, 0xa4, 0xf5, 0x40, 0x3c, 0x1a, 0x01, 0x78, 0x75, 0x8a, 0x53, 0xa9, 0x1e, + 0xdb, 0x6b, 0xf0, 0xf2, 0x51, 0x87, 0x8d, 0x94, 0x95, 0x73, 0x30, 0xd3, 0x64, 0xb6, 0xd7, 0x1b, + 0x3b, 0x7a, 0xbb, 0x81, 0xc5, 0xd9, 0x83, 0x3e, 0x42, 0x87, 0x7d, 0x14, 0x1e, 0xf4, 0x51, 0xb0, + 0x20, 0x15, 0xa5, 0xa5, 0x72, 0x0e, 0xa2, 0x4c, 0x80, 0x43, 0x31, 0x77, 0xd0, 0x47, 0x91, 0xc3, + 0x3e, 0xe2, 0x07, 0x7d, 0x14, 0x7e, 0x47, 0x5a, 0x96, 0xae, 0x48, 0x57, 0xab, 0x1c, 0x1f, 0x16, + 0xf8, 0x2a, 0xc7, 0xf3, 0x42, 0x24, 0xf7, 0x17, 0x0e, 0xd2, 0x37, 0x6d, 0x6c, 0xd8, 0xa0, 0xd0, + 0x50, 0x6b, 0x77, 0x0c, 0x15, 0xcb, 0x5d, 0x15, 0xb3, 0x64, 0xaf, 0x02, 0x4f, 0x54, 0xab, 0xae, + 0xb6, 0x2d, 0x92, 0x42, 0xd9, 0xc0, 0xc5, 0x68, 0xf1, 0xfc, 0x84, 0xff, 0x6d, 0x6f, 0x52, 0xe2, + 0x72, 0x92, 0xc6, 0x33, 0xf8, 0x31, 0xf2, 0x0b, 0xc2, 0xf0, 0x29, 0x85, 0xe4, 0x30, 0x51, 0xad, + 0xb5, 0xb6, 0x45, 0xc4, 0x26, 0x44, 0x76, 0x08, 0x31, 0x6c, 0x61, 0x7e, 0x26, 0xac, 0x90, 0x3f, + 0x2d, 0x56, 0xe5, 0x9d, 0xf2, 0x3b, 0x46, 0x09, 0x4f, 0x25, 0x33, 0x2d, 0x1b, 0x10, 0x69, 0x62, + 0x8b, 0xd8, 0x5a, 0x02, 0x53, 0x4d, 0x5e, 0x5b, 0x5e, 0xc5, 0x16, 0x61, 0xd2, 0x52, 0xd4, 0x83, + 0xd3, 0x25, 0x52, 0x29, 0x4c, 0x62, 0x0d, 0xd2, 0x4d, 0xbc, 0xad, 0x74, 0x55, 0x52, 0x57, 0x1a, + 0x14, 0x5c, 0xea, 0x1a, 0xde, 0x23, 0x8e, 0x5d, 0xa9, 0xf0, 0x09, 0x59, 0xe9, 0x93, 0xe7, 0x1d, + 0xce, 0x12, 0x63, 0x5c, 0xc7, 0x7b, 0x64, 0x83, 0xb1, 0x89, 0x37, 0x61, 0x6e, 0x42, 0x68, 0x13, + 0x6b, 0xbd, 0x14, 0x7f, 0xa2, 0xb4, 0x59, 0x8f, 0xb4, 0x55, 0xac, 0xf5, 0xc4, 0x0a, 0x24, 0x27, + 0xe4, 0x28, 0xaa, 0xaa, 0xdf, 0x3b, 0xb1, 0x58, 0x7c, 0xb2, 0xe8, 0x11, 0x54, 0xa2, 0x1c, 0x37, + 0xe0, 0x9f, 0xef, 0x86, 0x59, 0x0e, 0x49, 0x57, 0xcb, 0x79, 0x38, 0x37, 0x21, 0xd5, 0xc9, 0xa7, + 0x73, 0x07, 0x7d, 0x14, 0xfe, 0xcc, 0xce, 0xba, 0x10, 0xcd, 0xba, 0x6b, 0xd2, 0x75, 0xe9, 0x9d, + 0x2a, 0xc7, 0x73, 0x42, 0xb0, 0xca, 0xf1, 0x41, 0x21, 0x54, 0xe5, 0x78, 0x10, 0xa2, 0x55, 0x8e, + 0x0f, 0x09, 0xe1, 0xdc, 0x2f, 0x21, 0x6e, 0xe7, 0x07, 0x75, 0xe4, 0xb7, 0x9d, 0x50, 0x39, 0x0b, + 0xa2, 0x77, 0xe4, 0xb5, 0x91, 0xe8, 0xff, 0x49, 0x7e, 0xe5, 0xfe, 0x3e, 0x07, 0xaf, 0xb8, 0x0b, + 0xa6, 0xd4, 0xdc, 0x55, 0xb4, 0x06, 0x6e, 0x8e, 0x4a, 0xe6, 0x06, 0xf0, 0x1d, 0x4c, 0x94, 0xa6, + 0x42, 0x94, 0xd4, 0x79, 0x16, 0x85, 0xcc, 0x84, 0x15, 0xb7, 0xb1, 0x65, 0x29, 0x2d, 0x7c, 0x1b, + 0x13, 0x85, 0x72, 0xc8, 0x23, 0x7a, 0xf1, 0x4d, 0x88, 0x98, 0x5d, 0x15, 0xd7, 0x35, 0xa5, 0x33, + 0xec, 0x2c, 0xe1, 0x27, 0xf7, 0xd1, 0xf3, 0x3e, 0x42, 0x32, 0x4f, 0x77, 0xd6, 0x95, 0x0e, 0x16, + 0x8b, 0x20, 0x30, 0xaa, 0x26, 0xb6, 0x1a, 0x66, 0x9b, 0xf5, 0xbb, 0x94, 0xe8, 0x25, 0x4e, 0x50, + 0x82, 0xd5, 0xf1, 0xbe, 0x78, 0x13, 0x42, 0x76, 0x24, 0x59, 0xe3, 0x89, 0x17, 0xb3, 0x13, 0x36, + 0x39, 0x5e, 0xa0, 0xa7, 0xb0, 0x93, 0xa2, 0x1c, 0xa3, 0xc7, 0x0f, 0x7f, 0x84, 0xb8, 0xb4, 0xdf, + 0x87, 0x64, 0x87, 0x5b, 0xbc, 0x06, 0x51, 0x45, 0x55, 0xeb, 0x96, 0xde, 0x35, 0x1b, 0xd8, 0x62, + 0x0d, 0xe5, 0xf8, 0x34, 0x03, 0x45, 0x55, 0x6b, 0x36, 0xa5, 0x28, 0x43, 0xd4, 0xc1, 0x3c, 0x16, + 0x9f, 0x20, 0x63, 0x7c, 0x6b, 0x6a, 0x7c, 0x6c, 0x2c, 0xac, 0x11, 0xb3, 0xad, 0xb5, 0x86, 0xd1, + 0x2d, 0x73, 0x87, 0x7d, 0xbb, 0xc5, 0xd9, 0x52, 0x58, 0x65, 0xde, 0x84, 0x78, 0x5b, 0xb3, 0xda, + 0x4d, 0x3c, 0xb2, 0x27, 0x74, 0xbc, 0x3d, 0x23, 0xe7, 0x54, 0x7c, 0xf2, 0x8c, 0xcd, 0x36, 0xb4, + 0xad, 0x0e, 0x91, 0xb6, 0x46, 0xb0, 0xb9, 0xad, 0x34, 0xb0, 0x53, 0xd0, 0xb9, 0xa9, 0x96, 0xfd, + 0x64, 0xeb, 0x57, 0xb8, 0x41, 0x64, 0xbc, 0xcd, 0x4c, 0x7a, 0xf9, 0xd1, 0xfd, 0x59, 0x0d, 0x93, + 0x7b, 0xba, 0x79, 0xb7, 0x3e, 0xe2, 0x1f, 0x2b, 0x19, 0xcb, 0x14, 0x2f, 0x40, 0x84, 0x86, 0xd4, + 0x32, 0xa8, 0x02, 0xde, 0x13, 0x2a, 0x4a, 0x38, 0xda, 0x13, 0x6b, 0x10, 0x57, 0x95, 0x2d, 0xac, + 0xd6, 0x2d, 0xac, 0xe2, 0x06, 0xd1, 0x4d, 0xa7, 0x90, 0x27, 0xc3, 0xb5, 0x46, 0x89, 0x6a, 0x0e, + 0x0d, 0x33, 0x86, 0x7f, 0xb8, 0x8f, 0x38, 0xf0, 0xa3, 0x00, 0x3d, 0x9e, 0xea, 0xde, 0x16, 0x3f, + 0x80, 0x99, 0xb6, 0x31, 0xec, 0x38, 0x16, 0x26, 0x29, 0x38, 0xf5, 0x11, 0x85, 0x47, 0xf7, 0xbd, + 0xbc, 0x74, 0x3a, 0x69, 0x1b, 0x4e, 0x84, 0x30, 0x11, 0x4b, 0x20, 0xd0, 0x7c, 0xa0, 0x60, 0xd9, + 0xd6, 0x14, 0x36, 0x7a, 0xa5, 0x62, 0x27, 0x36, 0xea, 0x84, 0xa2, 0xaa, 0xab, 0x2e, 0x72, 0xf1, + 0x8e, 0x0b, 0x12, 0x66, 0x18, 0xeb, 0xf5, 0xd3, 0x97, 0xad, 0x17, 0x5e, 0x2a, 0xae, 0x76, 0xb3, + 0xe9, 0x86, 0x83, 0x38, 0x93, 0x7b, 0xe5, 0x6b, 0xc1, 0x81, 0x4b, 0xe8, 0xb8, 0xbd, 0x28, 0x30, + 0xdb, 0xb4, 0x48, 0xdd, 0xeb, 0xcf, 0xe4, 0x0b, 0xf8, 0x13, 0xc9, 0xf1, 0xa6, 0x45, 0x6e, 0xb9, + 0x5c, 0xfa, 0x73, 0x48, 0x50, 0x15, 0xee, 0x6a, 0x39, 0xf7, 0xcd, 0xaa, 0x05, 0xc9, 0x33, 0x4d, + 0x8b, 0x6c, 0x8c, 0x0b, 0x66, 0x13, 0xa2, 0x54, 0xb4, 0x62, 0x69, 0xcc, 0xee, 0xf9, 0x53, 0xdb, + 0x1d, 0x7f, 0x74, 0x3f, 0xba, 0xd5, 0x32, 0x86, 0x9c, 0x15, 0x24, 0x47, 0x9a, 0x16, 0x29, 0x59, + 0x1a, 0x35, 0x78, 0x0d, 0x62, 0x43, 0xa9, 0xcc, 0xda, 0xd4, 0x54, 0xb1, 0x8e, 0x63, 0x4b, 0x96, + 0x76, 0x5b, 0x21, 0x8d, 0x1d, 0x6a, 0xcf, 0xc8, 0x4c, 0xb0, 0x85, 0x31, 0x1b, 0xef, 0xc2, 0x6c, + 0xd7, 0x54, 0xeb, 0x0d, 0x85, 0xe0, 0x96, 0x6e, 0xf6, 0x6c, 0x91, 0x19, 0x26, 0xf2, 0x87, 0x5f, + 0x2b, 0x7e, 0x2b, 0x8e, 0x04, 0x57, 0x1c, 0x13, 0x5d, 0x53, 0x75, 0x2f, 0x8b, 0xbf, 0x00, 0x91, + 0x9a, 0x3e, 0x51, 0x73, 0x2f, 0x9d, 0xb2, 0xe6, 0x22, 0x0f, 0xf7, 0x51, 0x10, 0x02, 0xfe, 0x40, + 0xb0, 0x82, 0x64, 0xa1, 0x69, 0x11, 0x0f, 0x89, 0xf8, 0x3e, 0x24, 0x35, 0xbd, 0xce, 0x92, 0xb0, + 0xa1, 0x6b, 0x1a, 0x6e, 0xd0, 0xa1, 0xc1, 0x24, 0x29, 0xe1, 0x84, 0xfa, 0xf0, 0xcb, 0xb3, 0x9a, + 0x5e, 0x21, 0xc4, 0x58, 0xb1, 0x39, 0x36, 0x74, 0x93, 0x88, 0x55, 0x88, 0x51, 0xc6, 0x7a, 0x87, + 0x3a, 0x0e, 0x9b, 0xa9, 0x59, 0x26, 0xe0, 0x7b, 0xd3, 0x1d, 0x4c, 0x39, 0x6e, 0xdb, 0x84, 0xec, + 0xd4, 0x7e, 0x39, 0x6a, 0x8c, 0x97, 0x6e, 0xfc, 0x8b, 0xfb, 0xb4, 0x8f, 0xe2, 0x10, 0x03, 0x8e, + 0x62, 0xbd, 0xc8, 0x15, 0xaf, 0x48, 0xc5, 0xc7, 0x7d, 0xf4, 0x37, 0x0e, 0xe6, 0x81, 0xa3, 0xed, + 0x25, 0x9d, 0x80, 0x99, 0x61, 0x43, 0xca, 0x53, 0x64, 0x82, 0x3f, 0x23, 0x08, 0xd9, 0x50, 0xb9, + 0xf0, 0x18, 0xc1, 0x9f, 0x10, 0x88, 0x9e, 0x26, 0x60, 0x0f, 0xbb, 0x17, 0x20, 0xe9, 0xca, 0xd8, + 0xbc, 0xfd, 0x8c, 0xad, 0x5c, 0x42, 0x08, 0x2c, 0x44, 0x6f, 0x6d, 0x64, 0x37, 0x9c, 0x05, 0x78, + 0x63, 0x12, 0xb4, 0x8b, 0xb3, 0xb7, 0xd8, 0x7b, 0xf6, 0xd6, 0x10, 0x2f, 0x2d, 0x48, 0xb9, 0x10, + 0x59, 0x8c, 0xa6, 0x23, 0xa3, 0x2d, 0xba, 0x33, 0x86, 0xcb, 0x68, 0x3a, 0xb2, 0x3e, 0x7c, 0x01, + 0x61, 0x12, 0x3b, 0xe1, 0xd5, 0x09, 0xe0, 0x13, 0x63, 0x69, 0xb0, 0xed, 0xc8, 0xd6, 0x30, 0x81, + 0x43, 0x3f, 0x44, 0x5d, 0x48, 0xb4, 0x70, 0xe0, 0x87, 0x3f, 0xf8, 0x61, 0xfe, 0x28, 0xa2, 0xd9, + 0x27, 0xcc, 0xc0, 0xec, 0x10, 0xa7, 0xf2, 0xc3, 0x87, 0x74, 0x44, 0x0c, 0xdb, 0x10, 0x64, 0xc1, + 0xab, 0x30, 0x37, 0x02, 0x9c, 0xfc, 0xe8, 0x29, 0x1d, 0x12, 0x39, 0x7a, 0x07, 0x81, 0xd7, 0xa7, + 0x20, 0xc7, 0x84, 0x41, 0x6f, 0x43, 0x6a, 0xa2, 0xf2, 0x4f, 0xf0, 0x63, 0xca, 0x53, 0xcb, 0x62, + 0x24, 0x1d, 0x2e, 0xd5, 0xd6, 0x99, 0x98, 0xb7, 0x60, 0xde, 0x5d, 0x8f, 0x79, 0xc5, 0xaa, 0x6b, + 0xdd, 0xce, 0x16, 0x36, 0xad, 0x5c, 0x5c, 0x08, 0x2e, 0x40, 0xa9, 0x96, 0x5d, 0xb7, 0xdf, 0x21, + 0x39, 0x2d, 0xff, 0xe1, 0x3a, 0x64, 0x8f, 0x94, 0x60, 0xde, 0xb5, 0xd2, 0xc6, 0x56, 0x2e, 0x29, + 0x04, 0x16, 0xe2, 0x77, 0xe4, 0xb5, 0xec, 0xca, 0x68, 0xed, 0x32, 0x82, 0xf3, 0x10, 0xa5, 0x69, + 0x95, 0xb5, 0x67, 0x88, 0x34, 0x0c, 0xa7, 0x8e, 0x2c, 0x2a, 0xbf, 0x0d, 0x33, 0x76, 0xc0, 0x87, + 0xb3, 0x64, 0xfa, 0xa0, 0x8f, 0x28, 0x00, 0x04, 0x06, 0x7d, 0x14, 0x67, 0x37, 0x13, 0x89, 0x4d, + 0x93, 0x52, 0xe1, 0x72, 0xf9, 0x07, 0x20, 0xba, 0x02, 0x30, 0xe4, 0xf8, 0xfe, 0x41, 0x1f, 0xc5, + 0x0e, 0xfb, 0x28, 0x3a, 0xe8, 0xa3, 0x74, 0xa1, 0x28, 0x15, 0x96, 0xa4, 0xc2, 0xb2, 0x54, 0x2c, + 0x48, 0xc5, 0xcb, 0x52, 0x71, 0x59, 0x2a, 0x2e, 0x49, 0x4b, 0x97, 0xa5, 0x62, 0xb1, 0x2c, 0x39, + 0x91, 0x18, 0x56, 0x9d, 0x6b, 0x78, 0x15, 0x9c, 0xe1, 0x35, 0xc1, 0xae, 0x4c, 0x57, 0xa5, 0xc2, + 0xb5, 0x2a, 0xc7, 0x07, 0x04, 0xae, 0xca, 0xf1, 0x51, 0x21, 0x56, 0xe5, 0xf8, 0x39, 0x21, 0x59, + 0xe5, 0xf8, 0x84, 0x20, 0xe4, 0x76, 0x61, 0x6e, 0x0a, 0x8a, 0x88, 0x75, 0x88, 0x7b, 0x5d, 0xc1, + 0xe6, 0xd8, 0x78, 0xf1, 0xf5, 0xe9, 0xe5, 0xe8, 0x12, 0x51, 0x3e, 0x47, 0x47, 0xaa, 0xd0, 0xc7, + 0x28, 0x20, 0x3c, 0x40, 0xae, 0xe1, 0x72, 0x66, 0x8c, 0x4a, 0xd4, 0xb3, 0x9f, 0x20, 0x48, 0xb9, + 0x27, 0x4c, 0xea, 0xd0, 0x91, 0xf6, 0xdf, 0x20, 0x08, 0xd2, 0xd9, 0xce, 0x72, 0xa6, 0xe7, 0x9b, + 0xa7, 0x87, 0xc4, 0x93, 0xa6, 0xd6, 0xf2, 0xa5, 0x43, 0xf7, 0x45, 0x28, 0x3b, 0x7c, 0xe2, 0x47, + 0x6b, 0x97, 0xd1, 0xe0, 0x8b, 0x3f, 0x06, 0x42, 0x1f, 0xef, 0x23, 0xbf, 0x80, 0x64, 0xdb, 0x86, + 0xdc, 0x80, 0x87, 0xf8, 0xfb, 0xaa, 0xbe, 0xa5, 0xa8, 0x35, 0x03, 0x37, 0x98, 0x81, 0xab, 0x10, + 0x61, 0xb7, 0x60, 0xaa, 0x85, 0xcd, 0x9a, 0xc7, 0x8d, 0x63, 0x09, 0x2a, 0x0f, 0x1e, 0xee, 0xa3, + 0x90, 0xd5, 0xb3, 0x08, 0xee, 0x54, 0x7c, 0x32, 0xbd, 0x3f, 0x33, 0xf3, 0xc4, 0x5f, 0xc3, 0x68, + 0xb2, 0x72, 0x82, 0xa8, 0x9b, 0xec, 0xd3, 0xc7, 0xe9, 0xda, 0xd5, 0x05, 0xd7, 0x64, 0x36, 0xe2, + 0x7f, 0xb0, 0x8f, 0xd0, 0x51, 0x9d, 0x82, 0x43, 0xb7, 0x32, 0x24, 0x13, 0x3b, 0x14, 0xc9, 0xa8, + 0xdf, 0x26, 0xba, 0x02, 0x77, 0xca, 0xae, 0x30, 0x6f, 0x4f, 0x62, 0xbe, 0x29, 0xca, 0x44, 0x26, + 0xd8, 0xdb, 0x25, 0x7e, 0x06, 0x42, 0xd3, 0x34, 0x3c, 0x6d, 0x22, 0x15, 0x3d, 0xc1, 0x6f, 0xe7, + 0xa8, 0x58, 0xe1, 0xe1, 0x3e, 0x8a, 0x59, 0x3b, 0x8a, 0x89, 0x9b, 0x52, 0xb6, 0x6b, 0x61, 0xb3, + 0xe2, 0x93, 0xe3, 0x4d, 0xd3, 0x70, 0x75, 0x0e, 0x71, 0x09, 0x22, 0xec, 0x2e, 0x48, 0x6f, 0x84, + 0x27, 0x5e, 0x53, 0x91, 0xcc, 0x33, 0xc2, 0x92, 0xaa, 0x8a, 0x18, 0xc0, 0x66, 0x62, 0x6d, 0xd7, + 0xbe, 0x8e, 0xae, 0x7e, 0xb3, 0x1c, 0xf3, 0x7e, 0x4a, 0xa0, 0x23, 0x03, 0x93, 0xcc, 0xfa, 0x6e, + 0x83, 0xde, 0xd2, 0x35, 0xa7, 0xb9, 0x47, 0xbe, 0x55, 0x2d, 0x3c, 0x15, 0xec, 0xcc, 0x6a, 0xf6, + 0x6d, 0x8a, 0x29, 0xb1, 0x67, 0xde, 0xf2, 0x37, 0x53, 0xe2, 0x2e, 0xc1, 0x8a, 0x73, 0x15, 0x63, + 0x2a, 0x74, 0x88, 0x5b, 0xb8, 0xd5, 0xc1, 0xda, 0xe8, 0x7b, 0x80, 0x3d, 0xfc, 0x5e, 0x98, 0x0e, + 0x06, 0x35, 0x9b, 0xd6, 0xfe, 0x06, 0xc0, 0x92, 0xe5, 0xb5, 0x2f, 0xfb, 0x08, 0x3d, 0xda, 0x47, + 0xf3, 0x0b, 0x31, 0x4b, 0xdf, 0x26, 0x5b, 0x8a, 0x76, 0xb7, 0xde, 0xc1, 0x8d, 0x85, 0xf0, 0x36, + 0x6e, 0x9a, 0x4a, 0xc7, 0x90, 0x67, 0x2c, 0x37, 0x8f, 0xf8, 0x21, 0xcc, 0xb0, 0xcf, 0x9c, 0xac, + 0x3b, 0x6a, 0x8a, 0x9a, 0x7a, 0x7e, 0xfa, 0xfb, 0x4a, 0xf2, 0xd1, 0x7d, 0x2f, 0x33, 0xbb, 0x2a, + 0xc6, 0xe8, 0xd2, 0x2d, 0x67, 0xe5, 0xc6, 0xf2, 0xa7, 0x7d, 0x74, 0x19, 0x00, 0x82, 0x76, 0x1d, + 0xa2, 0x02, 0x7d, 0xa6, 0xc7, 0xb7, 0x44, 0x74, 0x15, 0x5e, 0x02, 0xc1, 0x39, 0x42, 0x76, 0x94, + 0xbf, 0xfe, 0x42, 0xb1, 0xfc, 0x26, 0xc4, 0x6c, 0xdf, 0x39, 0x48, 0x9b, 0x3c, 0xe8, 0x23, 0x3f, + 0x45, 0x94, 0x41, 0x1f, 0xf1, 0x45, 0xa9, 0x50, 0x90, 0x96, 0xa4, 0xe5, 0xf2, 0x1b, 0x10, 0x65, + 0xf1, 0x70, 0x11, 0x85, 0x9d, 0xef, 0x08, 0xfc, 0x10, 0xf9, 0x47, 0x1f, 0x11, 0x90, 0xe0, 0x77, + 0x3e, 0x22, 0x3c, 0x0d, 0x41, 0x7c, 0xc5, 0xc4, 0x0a, 0xc1, 0x23, 0x90, 0x59, 0x3a, 0x25, 0xc8, + 0x78, 0x30, 0xa5, 0xf5, 0x62, 0x98, 0x92, 0x9c, 0x86, 0x29, 0x53, 0x01, 0x64, 0xf3, 0xc5, 0x00, + 0xe4, 0x18, 0x9c, 0xf8, 0xf1, 0xd7, 0xc3, 0x89, 0x33, 0x40, 0xf8, 0xbf, 0x00, 0xc2, 0xfa, 0x0b, + 0x02, 0xc2, 0x44, 0xbd, 0xdf, 0x98, 0x7d, 0xfc, 0xee, 0x44, 0x87, 0x2d, 0x67, 0x27, 0x8a, 0x4d, + 0xf8, 0xe8, 0x2b, 0xe4, 0x59, 0x29, 0x67, 0xbc, 0x85, 0x96, 0xf8, 0xe8, 0x2b, 0xe4, 0x5e, 0x98, + 0x52, 0x63, 0x83, 0x10, 0x24, 0x64, 0x6c, 0xa8, 0x4a, 0xe3, 0xac, 0xc8, 0xce, 0x8a, 0xec, 0xac, + 0xc8, 0xbe, 0x93, 0x22, 0xfb, 0x6b, 0x08, 0xa2, 0xef, 0x63, 0x72, 0x56, 0x60, 0x67, 0x05, 0x76, + 0x56, 0x60, 0xdf, 0x41, 0x81, 0x95, 0x7f, 0x87, 0x0e, 0x9f, 0x66, 0x7c, 0x4f, 0x9e, 0x66, 0x7c, + 0x5f, 0x3e, 0xcd, 0xa0, 0x07, 0x83, 0x0c, 0xfa, 0x64, 0x90, 0x41, 0x9f, 0x0d, 0x32, 0xe8, 0x70, + 0x90, 0x41, 0x4f, 0x06, 0x19, 0xf4, 0xc5, 0x20, 0x83, 0x9e, 0x0f, 0x32, 0xbe, 0x2f, 0x07, 0x19, + 0xf4, 0xdb, 0x67, 0x19, 0xdf, 0xc1, 0xb3, 0x0c, 0x3a, 0x7c, 0x96, 0xf1, 0x3d, 0x79, 0x96, 0xf1, + 0x7d, 0xf0, 0x61, 0x4b, 0x37, 0xee, 0xb6, 0xf2, 0xbb, 0xba, 0x4a, 0xb0, 0x69, 0x2a, 0xf9, 0xae, + 0xb5, 0xc8, 0x1e, 0xb6, 0x75, 0xb3, 0x73, 0xc9, 0x30, 0xf5, 0xdd, 0x76, 0x13, 0x9b, 0x97, 0x86, + 0xdb, 0x8b, 0xc6, 0x56, 0x4b, 0x5f, 0xc4, 0x7b, 0xc4, 0xf9, 0x6b, 0xe0, 0xbf, 0xfe, 0xa4, 0xb1, + 0x15, 0x62, 0x3f, 0x13, 0x2c, 0xfd, 0x27, 0x00, 0x00, 0xff, 0xff, 0x9e, 0x9d, 0x92, 0x2b, 0xd7, + 0x21, 0x00, 0x00, } func (this *URLType) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/gcp_vpc_site/crudapi/api.vesapi.go index d682cdc8f..8e9bb95b8 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/crudapi/api.vesapi.go @@ -4058,10 +4058,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5273,6 +5277,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -5615,10 +5690,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", - "title": "Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", + "title": "Allow access to DNS, SSH services on Site", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "disk_size": { "type": "integer", @@ -5688,6 +5763,12 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "title": "Disable Logs Streaming", @@ -5736,15 +5817,17 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", "title": "Public SSH key", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "suggested_action": { diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/object.pb.go b/pbgo/extschema/schema/views/gcp_vpc_site/object.pb.go index fe1115b74..42a9948fc 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/object.pb.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/object.pb.go @@ -244,49 +244,50 @@ func init() { } var fileDescriptor_3f3843e2930980f7 = []byte{ - // 663 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x4f, 0x4f, 0x13, 0x41, - 0x18, 0xc6, 0xbb, 0x6d, 0x53, 0xc8, 0x40, 0x80, 0xac, 0x97, 0x8a, 0x3a, 0x36, 0xf5, 0x42, 0x0c, - 0xbb, 0x6b, 0x50, 0x0f, 0x12, 0x52, 0x13, 0x40, 0x89, 0x09, 0x68, 0x52, 0xd4, 0x83, 0x07, 0x9b, - 0xe9, 0xf4, 0xed, 0x32, 0xda, 0xed, 0x4c, 0x66, 0x66, 0x0b, 0x3d, 0x98, 0x18, 0x3f, 0x81, 0x07, - 0x3f, 0x84, 0xf1, 0x53, 0x88, 0x27, 0x0f, 0x1e, 0x1a, 0x4e, 0x1c, 0x65, 0x7b, 0xe1, 0xc8, 0x07, - 0xf0, 0x60, 0x3a, 0x4b, 0x4b, 0x5b, 0x17, 0x31, 0x91, 0xdb, 0x6e, 0xde, 0xe7, 0xf9, 0xed, 0xfb, - 0x6f, 0x5f, 0xe4, 0xb4, 0x40, 0xb9, 0x8c, 0x7b, 0x8a, 0xee, 0x40, 0x40, 0xbc, 0x16, 0x83, 0x5d, - 0xe5, 0xf9, 0x54, 0x54, 0x5a, 0x82, 0x56, 0x14, 0xd3, 0xe0, 0xf1, 0xea, 0x1b, 0xa0, 0xda, 0x15, - 0x92, 0x6b, 0x6e, 0x17, 0x62, 0xb9, 0x1b, 0xcb, 0x5d, 0x23, 0x77, 0x87, 0xe5, 0xf3, 0x8e, 0xcf, - 0xf4, 0x4e, 0x58, 0x75, 0x29, 0x0f, 0x3c, 0x9f, 0xfb, 0xdc, 0x33, 0xc6, 0x6a, 0x58, 0x37, 0x6f, - 0xe6, 0xc5, 0x3c, 0xc5, 0xc0, 0xf9, 0x6b, 0xa3, 0xdf, 0xe7, 0x42, 0x33, 0xde, 0x54, 0xa7, 0xc1, - 0xab, 0xa3, 0x41, 0xdd, 0x16, 0xd0, 0x0f, 0x15, 0xc7, 0xf2, 0x06, 0x05, 0xcd, 0xd6, 0x98, 0xbd, - 0xf0, 0x67, 0x6d, 0x95, 0x51, 0xc5, 0xe2, 0x85, 0xd5, 0x0f, 0x7f, 0xf3, 0x5e, 0x92, 0x5a, 0x83, - 0x94, 0xa4, 0xce, 0x65, 0x50, 0x11, 0x44, 0x92, 0x00, 0x34, 0x48, 0x35, 0xe2, 0xba, 0x99, 0xe8, - 0x3a, 0x13, 0x14, 0x3b, 0x59, 0x94, 0x7b, 0x66, 0x9a, 0x6c, 0x3f, 0x40, 0x93, 0x01, 0x68, 0x52, - 0x23, 0x9a, 0xe4, 0xad, 0x82, 0xb5, 0x30, 0xb5, 0x74, 0xc3, 0x1d, 0xed, 0x78, 0x2c, 0xdc, 0x02, - 0x4d, 0x9e, 0xb7, 0x05, 0x94, 0x07, 0x72, 0x7b, 0x13, 0xcd, 0xaa, 0xb6, 0xd2, 0x10, 0x54, 0x06, - 0x84, 0xb4, 0x21, 0xdc, 0x1a, 0x23, 0x6c, 0x1b, 0xd5, 0x18, 0x67, 0x26, 0xf6, 0x6e, 0xf5, 0x69, - 0x25, 0x94, 0x55, 0x02, 0x68, 0x3e, 0x63, 0x10, 0xb7, 0xdd, 0x8b, 0xc6, 0xee, 0x6e, 0x0b, 0xa0, - 0x86, 0x64, 0x7c, 0xcb, 0xbf, 0xd2, 0x1f, 0x1e, 0xe6, 0x62, 0xe6, 0xb7, 0xfd, 0x7c, 0x7a, 0xce, - 0x3a, 0xd8, 0xcf, 0x1f, 0xa7, 0xd1, 0x23, 0x94, 0xd9, 0x00, 0x6d, 0x97, 0xea, 0xf7, 0xf7, 0xa8, - 0xd3, 0xf3, 0x39, 0x01, 0x69, 0x12, 0x1f, 0x02, 0x68, 0x6a, 0xa7, 0x4a, 0x14, 0xa3, 0x4e, 0xc0, - 0x9b, 0x4c, 0x73, 0xb9, 0xd8, 0x1b, 0x9e, 0xc3, 0xb8, 0xc3, 0x9a, 0x75, 0x49, 0x94, 0x96, 0x21, - 0xd5, 0xa1, 0x04, 0x47, 0x02, 0xa9, 0xa1, 0x0d, 0x34, 0x51, 0x06, 0xd1, 0x20, 0x14, 0xec, 0x95, - 0xbf, 0xa0, 0x42, 0x05, 0xe7, 0x72, 0x76, 0x25, 0xd3, 0x80, 0x1e, 0xa3, 0xdc, 0x9a, 0x04, 0xa2, - 0x2f, 0x81, 0xb3, 0x0e, 0x0d, 0xb8, 0x04, 0x4e, 0x76, 0x93, 0xa9, 0xff, 0x6e, 0x50, 0xf1, 0x05, - 0x9a, 0xec, 0x0f, 0xc4, 0x7e, 0x82, 0x26, 0x7c, 0x5a, 0x31, 0xd3, 0x8c, 0x57, 0xea, 0xce, 0xc5, - 0xd3, 0xdc, 0x68, 0xf0, 0x2a, 0x69, 0x0c, 0x66, 0x9a, 0xf3, 0x69, 0xef, 0xb9, 0xf8, 0x23, 0x8d, - 0xa6, 0xb7, 0x35, 0xd1, 0xa1, 0xfa, 0xe7, 0x7d, 0x8d, 0xe5, 0x09, 0xfb, 0xfa, 0x14, 0x4d, 0xc5, - 0x97, 0xa5, 0x22, 0xa1, 0xae, 0xf2, 0xe9, 0x42, 0x66, 0x61, 0x6a, 0xe9, 0x7a, 0xe2, 0xb6, 0x97, - 0xa1, 0xde, 0x33, 0xaf, 0xce, 0x7e, 0x79, 0x37, 0x3d, 0x9c, 0x66, 0x19, 0xf1, 0x7e, 0x5c, 0xd9, - 0x2b, 0x08, 0x51, 0xde, 0xac, 0x31, 0xf3, 0x7b, 0xe7, 0x33, 0x89, 0xb8, 0xb5, 0xbe, 0xc0, 0xe4, - 0x32, 0xa4, 0xb7, 0x5f, 0x23, 0x54, 0x03, 0xd1, 0xe0, 0xed, 0x5e, 0xa3, 0xf3, 0x59, 0x53, 0x4a, - 0x29, 0xb1, 0x4f, 0x49, 0xff, 0xbb, 0xbb, 0x3e, 0xf0, 0xc6, 0xf5, 0xc6, 0xfc, 0x33, 0xe2, 0xf2, - 0x95, 0x83, 0xd2, 0x1c, 0x9a, 0x41, 0xd3, 0xfd, 0xf2, 0xdd, 0x90, 0xd5, 0x56, 0x3f, 0x59, 0x9d, - 0x23, 0x9c, 0x3a, 0x3c, 0xc2, 0xa9, 0x93, 0x23, 0x6c, 0xbd, 0x8f, 0xb0, 0xf5, 0x39, 0xc2, 0xd6, - 0xf7, 0x08, 0x5b, 0x9d, 0x08, 0x5b, 0x87, 0x11, 0xb6, 0x7e, 0x46, 0xd8, 0x3a, 0x8e, 0x70, 0xea, - 0x24, 0xc2, 0xd6, 0xc7, 0x2e, 0x4e, 0x7d, 0xed, 0x62, 0xab, 0xd3, 0xc5, 0xa9, 0xc3, 0x2e, 0x4e, - 0xbd, 0x7a, 0xe9, 0x73, 0xf1, 0xd6, 0x77, 0x5b, 0xbc, 0x61, 0x72, 0x72, 0xc3, 0xa1, 0x63, 0xe4, - 0x08, 0xc9, 0x5b, 0xac, 0x06, 0xd2, 0xe9, 0x87, 0x3d, 0x51, 0xf5, 0xb9, 0x07, 0x7b, 0xfa, 0xf4, - 0x0e, 0x9d, 0x7b, 0xf2, 0xaa, 0x39, 0x73, 0x96, 0xee, 0xfe, 0x0e, 0x00, 0x00, 0xff, 0xff, 0xc3, - 0x96, 0xa2, 0xc1, 0x1b, 0x06, 0x00, 0x00, + // 683 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0xb1, 0x6f, 0xd3, 0x4e, + 0x14, 0xc7, 0xe3, 0x24, 0x4a, 0xab, 0x6b, 0xd5, 0x56, 0xfe, 0x2d, 0xf9, 0x15, 0x38, 0xa2, 0xb0, + 0x54, 0xa8, 0xb6, 0x51, 0x81, 0x81, 0x0a, 0x15, 0xa9, 0xad, 0x54, 0x21, 0xb5, 0x20, 0xa5, 0xc0, + 0xc0, 0x40, 0xb8, 0xd8, 0x2f, 0xee, 0xb5, 0xb1, 0xef, 0x74, 0x77, 0x4e, 0x9b, 0x01, 0x09, 0x31, + 0x32, 0x31, 0xf0, 0x17, 0x30, 0x21, 0xfe, 0x00, 0x66, 0xca, 0xc4, 0xc0, 0x50, 0x75, 0xea, 0x48, + 0x9d, 0x85, 0xb1, 0x7f, 0x02, 0xca, 0xb9, 0x4e, 0x93, 0x60, 0x08, 0x53, 0x37, 0x5b, 0xef, 0xf3, + 0xfd, 0xbe, 0x7b, 0x77, 0xef, 0x3d, 0x64, 0xb5, 0x41, 0xda, 0x94, 0x39, 0xd2, 0xdd, 0x81, 0x80, + 0x38, 0x6d, 0x0a, 0xfb, 0xd2, 0xf1, 0x5d, 0x5e, 0x6f, 0x73, 0xb7, 0x2e, 0xa9, 0x02, 0x87, 0x35, + 0x76, 0xc1, 0x55, 0x36, 0x17, 0x4c, 0x31, 0xb3, 0x92, 0xe0, 0x76, 0x82, 0xdb, 0x1a, 0xb7, 0x07, + 0xf1, 0x79, 0xcb, 0xa7, 0x6a, 0x27, 0x6a, 0xd8, 0x2e, 0x0b, 0x1c, 0x9f, 0xf9, 0xcc, 0xd1, 0xc2, + 0x46, 0xd4, 0xd4, 0x7f, 0xfa, 0x47, 0x7f, 0x25, 0x86, 0xf3, 0x57, 0x86, 0xf3, 0x33, 0xae, 0x28, + 0x0b, 0xe5, 0x79, 0xf0, 0xff, 0xe1, 0xa0, 0xea, 0x70, 0x48, 0x43, 0xd5, 0x91, 0x73, 0x83, 0x84, + 0xb0, 0x3d, 0x22, 0xaf, 0xfc, 0x5e, 0x5b, 0x7d, 0x98, 0x58, 0x1c, 0x5b, 0xfd, 0x60, 0xce, 0x3b, + 0x59, 0xb4, 0x02, 0x21, 0x48, 0x93, 0x89, 0xa0, 0xce, 0x89, 0x20, 0x01, 0x28, 0x10, 0x72, 0x48, + 0x75, 0x3d, 0x53, 0x75, 0x01, 0x54, 0xdf, 0x96, 0x50, 0xe9, 0xb1, 0xbe, 0x64, 0xf3, 0x1e, 0x9a, + 0x0c, 0x40, 0x11, 0x8f, 0x28, 0x52, 0x36, 0x2a, 0xc6, 0xc2, 0xd4, 0xd2, 0x35, 0x7b, 0xf8, 0xc6, + 0x13, 0x70, 0x0b, 0x14, 0x79, 0xd2, 0xe1, 0x50, 0xeb, 0xe3, 0xe6, 0x26, 0x9a, 0x95, 0x1d, 0xa9, + 0x20, 0xa8, 0xf7, 0x1d, 0xf2, 0xda, 0xe1, 0xc6, 0x88, 0xc3, 0xb6, 0xa6, 0x46, 0x7c, 0x66, 0x12, + 0xed, 0x56, 0xea, 0xb6, 0x82, 0x8a, 0x92, 0x83, 0x5b, 0x2e, 0x68, 0x8b, 0x9b, 0xf6, 0xb8, 0x67, + 0xb7, 0xb7, 0x39, 0xb8, 0xda, 0x49, 0xeb, 0x96, 0x3f, 0x17, 0xdf, 0x3c, 0x28, 0x25, 0x9e, 0x5f, + 0x0f, 0xcb, 0xf9, 0x39, 0xe3, 0xf8, 0xb0, 0xfc, 0xa1, 0x88, 0x5a, 0xa8, 0xb0, 0x01, 0xca, 0x84, + 0xe6, 0xdd, 0x03, 0xd7, 0xea, 0xe9, 0xac, 0x80, 0x84, 0xc4, 0x87, 0x00, 0x42, 0x65, 0x35, 0x88, + 0xa4, 0xae, 0x15, 0xb0, 0x90, 0x2a, 0x26, 0x16, 0x2b, 0x99, 0x8c, 0x54, 0x24, 0xf4, 0x88, 0xf0, + 0x2e, 0xb0, 0x36, 0x48, 0x8b, 0x32, 0x8b, 0x86, 0x4d, 0x41, 0xa4, 0x12, 0x91, 0xab, 0x22, 0x01, + 0x96, 0x00, 0xe2, 0xa1, 0x3d, 0x34, 0x51, 0x03, 0xde, 0x22, 0x2e, 0x98, 0x2f, 0xff, 0x92, 0x31, + 0x92, 0x30, 0x36, 0x5d, 0xc2, 0x64, 0xe7, 0xda, 0x17, 0x54, 0x01, 0xda, 0x45, 0xa5, 0x35, 0x01, + 0x44, 0x5d, 0x52, 0xae, 0x75, 0x68, 0xc1, 0xa5, 0xe4, 0x0a, 0x50, 0x71, 0x93, 0xca, 0xcb, 0x7a, + 0xb3, 0xea, 0x53, 0x34, 0x99, 0xb6, 0x92, 0xf9, 0x10, 0x4d, 0xf8, 0x6e, 0x5d, 0xf7, 0x61, 0x32, + 0x0c, 0xb7, 0xc6, 0xf7, 0xe1, 0x46, 0x8b, 0x35, 0x48, 0xab, 0xdf, 0x8d, 0x25, 0xdf, 0xed, 0x7d, + 0x57, 0xbf, 0xe7, 0xd1, 0xf4, 0xb6, 0x22, 0x2a, 0x92, 0xff, 0x3c, 0x69, 0x09, 0x9e, 0x31, 0x69, + 0x8f, 0xd0, 0x54, 0xb2, 0x13, 0xeb, 0x02, 0x9a, 0xb2, 0x9c, 0xaf, 0x14, 0x16, 0xa6, 0x96, 0xae, + 0x66, 0xce, 0x69, 0x0d, 0x9a, 0x3d, 0xf1, 0xea, 0xec, 0xa7, 0x57, 0xd3, 0x83, 0xc7, 0xac, 0x21, + 0x96, 0xc6, 0xa5, 0x79, 0x1f, 0x21, 0x97, 0x85, 0x1e, 0xd5, 0x8b, 0xa9, 0x5c, 0xc8, 0xb4, 0x5b, + 0x4b, 0x01, 0x7d, 0x96, 0x01, 0xde, 0x7c, 0x81, 0x90, 0x07, 0xbc, 0xc5, 0x3a, 0xbd, 0xbb, 0x2e, + 0x17, 0x75, 0x29, 0x2b, 0x99, 0xf7, 0x94, 0xb5, 0xa9, 0xec, 0xf5, 0xbe, 0x36, 0xa9, 0x37, 0xf1, + 0xbf, 0x70, 0x5c, 0xfe, 0xef, 0x78, 0x65, 0x0e, 0xcd, 0xa0, 0xe9, 0xb4, 0x7c, 0x3b, 0xa2, 0xde, + 0xea, 0x7b, 0xe3, 0xe8, 0x14, 0xe7, 0x4e, 0x4e, 0x71, 0xee, 0xec, 0x14, 0x1b, 0xaf, 0x63, 0x6c, + 0x7c, 0x8c, 0xb1, 0xf1, 0x2d, 0xc6, 0xc6, 0x51, 0x8c, 0x8d, 0x93, 0x18, 0x1b, 0x3f, 0x62, 0x6c, + 0xfc, 0x8c, 0x71, 0xee, 0x2c, 0xc6, 0xc6, 0xbb, 0x2e, 0xce, 0x7d, 0xe9, 0x62, 0xe3, 0xa8, 0x8b, + 0x73, 0x27, 0x5d, 0x9c, 0x7b, 0xfe, 0xcc, 0x67, 0x7c, 0xcf, 0xb7, 0xdb, 0xac, 0xa5, 0xcf, 0x64, + 0x47, 0x03, 0x6b, 0xd4, 0xe2, 0x82, 0xb5, 0xa9, 0x07, 0xc2, 0x4a, 0xc3, 0x0e, 0x6f, 0xf8, 0xcc, + 0x81, 0x03, 0x75, 0xbe, 0x41, 0xff, 0xb8, 0xac, 0x1b, 0x25, 0xbd, 0x50, 0x6f, 0xff, 0x0a, 0x00, + 0x00, 0xff, 0xff, 0x81, 0x14, 0x39, 0x3f, 0xd5, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/private_customapi.pb.go b/pbgo/extschema/schema/views/gcp_vpc_site/private_customapi.pb.go index 3e1a8fd27..c41daf6ff 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/private_customapi.pb.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/private_customapi.pb.go @@ -40,39 +40,40 @@ func init() { } var fileDescriptor_6dadb40db7df8027 = []byte{ - // 504 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0x41, 0x6b, 0x13, 0x41, - 0x18, 0xdd, 0x89, 0xe2, 0x21, 0x17, 0x4b, 0x4e, 0x35, 0x96, 0xb1, 0x04, 0x51, 0x50, 0x77, 0x06, - 0x94, 0x82, 0x78, 0x53, 0xf1, 0x20, 0x08, 0x16, 0x45, 0x0f, 0xbd, 0x2c, 0xb3, 0xd3, 0x2f, 0x93, - 0xd1, 0xec, 0x7e, 0xe3, 0xcc, 0xec, 0xb6, 0x22, 0x05, 0xe9, 0x2f, 0x28, 0xf8, 0x07, 0x3c, 0xfa, - 0x1f, 0x72, 0xe9, 0x4d, 0x4f, 0x12, 0xd4, 0x43, 0x8f, 0x66, 0xa3, 0xe0, 0xb1, 0x3f, 0x41, 0x32, - 0x49, 0x24, 0x59, 0x2b, 0x7a, 0xf0, 0xf6, 0xcd, 0xbe, 0xf7, 0x66, 0xdf, 0xf7, 0xf6, 0x6d, 0xf3, - 0x66, 0x09, 0x8e, 0x69, 0xe4, 0x4e, 0xf6, 0x20, 0x13, 0xbc, 0xd4, 0xb0, 0xe3, 0xb8, 0x92, 0x26, - 0x29, 0x8d, 0x4c, 0x9c, 0xf6, 0xc0, 0x8d, 0xd5, 0xa5, 0xf0, 0x90, 0xc8, 0xc2, 0x79, 0xcc, 0x84, - 0xd1, 0xcc, 0x58, 0xf4, 0xd8, 0x5a, 0x9f, 0x2a, 0xd9, 0x54, 0xc9, 0x82, 0x92, 0x2d, 0x2a, 0xdb, - 0xb1, 0xd2, 0xbe, 0x57, 0xa4, 0x4c, 0x62, 0xc6, 0x15, 0x2a, 0xe4, 0x41, 0x98, 0x16, 0xdd, 0x70, - 0x0a, 0x87, 0x30, 0x4d, 0x2f, 0x6c, 0xaf, 0x29, 0x44, 0xd5, 0x07, 0x2e, 0x8c, 0xe6, 0x22, 0xcf, - 0xd1, 0x0b, 0xaf, 0x31, 0x77, 0x33, 0xf4, 0xfc, 0xb2, 0x51, 0x34, 0x8b, 0xe0, 0xb9, 0x65, 0xd0, - 0xbf, 0x34, 0x30, 0x87, 0xd6, 0x6a, 0x0b, 0x8a, 0xbe, 0xde, 0x16, 0x1e, 0x66, 0x68, 0xa7, 0x86, - 0x82, 0x83, 0xbc, 0xac, 0x5d, 0xbe, 0xfe, 0x7b, 0x44, 0xc9, 0x32, 0xe3, 0xe2, 0x49, 0x21, 0x4e, - 0x22, 0x48, 0x16, 0x9d, 0x5c, 0xaa, 0xb3, 0xac, 0x2f, 0x44, 0x3f, 0xe9, 0xa1, 0xf3, 0x8b, 0x8e, - 0xaf, 0xbf, 0x3d, 0xd5, 0x5c, 0xd9, 0x9c, 0x86, 0x7e, 0x37, 0x64, 0x7e, 0x7b, 0xf3, 0x7e, 0xeb, - 0x4b, 0xa3, 0x79, 0xf6, 0x89, 0x99, 0x38, 0x7f, 0xac, 0x3d, 0xdc, 0xb3, 0x16, 0x6d, 0xeb, 0x2a, - 0x3b, 0xe9, 0x13, 0xd4, 0x58, 0x8f, 0xe0, 0x45, 0x01, 0xce, 0xb7, 0xaf, 0xfd, 0x1b, 0xd9, 0x19, - 0xcc, 0x1d, 0x74, 0xbe, 0x93, 0xea, 0xfd, 0xea, 0x85, 0xee, 0xc6, 0xae, 0x8c, 0x27, 0x7b, 0xc4, - 0x99, 0xc8, 0x85, 0x82, 0x0c, 0x72, 0x1f, 0xa7, 0xc2, 0x69, 0x19, 0x17, 0x0e, 0xec, 0xfe, 0xe7, - 0x6f, 0x6f, 0x1a, 0x03, 0xd2, 0x79, 0x30, 0xef, 0x08, 0x9f, 0x76, 0x84, 0xe7, 0x22, 0x03, 0x67, - 0x84, 0x04, 0xc7, 0x5f, 0xfd, 0x9a, 0xf7, 0x96, 0x6b, 0x15, 0x80, 0x3d, 0x5e, 0x04, 0x03, 0xe1, - 0x51, 0x02, 0x13, 0x0b, 0xb7, 0xc8, 0x95, 0xad, 0x5e, 0x47, 0xf2, 0x25, 0xb7, 0x5c, 0xe7, 0xde, - 0xa2, 0x33, 0x20, 0x3d, 0xdf, 0xb1, 0xfa, 0xbf, 0xbd, 0xa9, 0xbd, 0x71, 0x38, 0x20, 0xa7, 0x3f, - 0x0d, 0xc8, 0xe5, 0xbf, 0x95, 0x99, 0x3d, 0x4c, 0x9f, 0x81, 0xf4, 0xfb, 0x1f, 0x57, 0x1b, 0x2b, - 0xe4, 0xce, 0x01, 0x19, 0x8e, 0x68, 0x74, 0x34, 0xa2, 0xd1, 0xf1, 0x88, 0x92, 0xd7, 0x15, 0x25, - 0xef, 0x2a, 0x4a, 0x3e, 0x54, 0x94, 0x0c, 0x2b, 0x4a, 0xbe, 0x56, 0x94, 0xfc, 0xa8, 0x68, 0x74, - 0x5c, 0x51, 0x72, 0x30, 0xa6, 0xd1, 0xe1, 0x98, 0x92, 0xe1, 0x98, 0x46, 0x47, 0x63, 0x1a, 0x6d, - 0x3d, 0x55, 0x68, 0x9e, 0x2b, 0x56, 0x62, 0xdf, 0x83, 0xb5, 0x82, 0x15, 0x8e, 0x87, 0xa1, 0x8b, - 0x36, 0x8b, 0x8d, 0xc5, 0x52, 0x6f, 0x83, 0x8d, 0xe7, 0x30, 0x37, 0xa9, 0x42, 0x0e, 0xbb, 0x7e, - 0x96, 0xc3, 0x1f, 0x7f, 0xd3, 0xf4, 0x4c, 0x28, 0xcf, 0x8d, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, - 0x54, 0xca, 0x70, 0x86, 0xd1, 0x03, 0x00, 0x00, + // 515 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0x31, 0x8b, 0x13, 0x41, + 0x18, 0xdd, 0x89, 0x62, 0x91, 0xc6, 0x23, 0xd5, 0x19, 0x8f, 0x21, 0x04, 0x51, 0xd0, 0xdb, 0x1d, + 0x50, 0x0e, 0xc4, 0x4e, 0x0f, 0x0b, 0x41, 0xf0, 0x50, 0xb4, 0xb8, 0x66, 0x99, 0x9d, 0x7c, 0xd9, + 0x8c, 0x66, 0xe7, 0x1b, 0x67, 0x66, 0xf7, 0x4e, 0xe4, 0x40, 0xae, 0xb3, 0x3b, 0xf0, 0x4f, 0xf8, + 0x1f, 0xd2, 0x5c, 0x21, 0x68, 0x25, 0x41, 0x9b, 0x2b, 0xcd, 0xc6, 0xc2, 0xf2, 0x4a, 0x4b, 0xc9, + 0x24, 0x91, 0x64, 0x8d, 0x68, 0x71, 0xdd, 0x37, 0xfb, 0xde, 0x9b, 0x7d, 0xdf, 0xdb, 0xb7, 0xf5, + 0xdb, 0x05, 0xd8, 0x48, 0x22, 0xb3, 0xa2, 0x07, 0x19, 0x67, 0x85, 0x84, 0x3d, 0xcb, 0x52, 0xa1, + 0xe3, 0x42, 0x8b, 0xd8, 0x4a, 0x07, 0x4c, 0x1b, 0x59, 0x70, 0x07, 0xb1, 0xc8, 0xad, 0xc3, 0x8c, + 0x6b, 0x19, 0x69, 0x83, 0x0e, 0x1b, 0xad, 0xa9, 0x32, 0x9a, 0x2a, 0x23, 0xaf, 0x8c, 0x16, 0x95, + 0xcd, 0x30, 0x95, 0xae, 0x97, 0x27, 0x91, 0xc0, 0x8c, 0xa5, 0x98, 0x22, 0xf3, 0xc2, 0x24, 0xef, + 0xfa, 0x93, 0x3f, 0xf8, 0x69, 0x7a, 0x61, 0x73, 0x23, 0x45, 0x4c, 0xfb, 0xc0, 0xb8, 0x96, 0x8c, + 0x2b, 0x85, 0x8e, 0x3b, 0x89, 0xca, 0xce, 0xd0, 0xcb, 0xcb, 0x46, 0x51, 0x2f, 0x82, 0x97, 0x96, + 0x41, 0xf7, 0x4a, 0xc3, 0x1c, 0xda, 0xa8, 0x2c, 0xc8, 0xfb, 0xb2, 0xc3, 0x1d, 0xcc, 0xd0, 0x76, + 0x05, 0x05, 0x0b, 0xaa, 0xa8, 0x5c, 0xde, 0xfa, 0x33, 0xa2, 0x78, 0x99, 0x71, 0x65, 0x55, 0x88, + 0x93, 0x08, 0xe2, 0x45, 0x27, 0x57, 0xab, 0x2c, 0xe3, 0x72, 0xde, 0x8f, 0x7b, 0x68, 0xdd, 0xa2, + 0xe3, 0x9b, 0x1f, 0xce, 0xd5, 0xd7, 0x76, 0xa6, 0xa1, 0x6f, 0xfb, 0xcc, 0xef, 0xee, 0x3c, 0x68, + 0xfc, 0xac, 0xd5, 0x2f, 0x3e, 0xd5, 0x13, 0xe7, 0x4f, 0xa4, 0x83, 0xfb, 0xc6, 0xa0, 0x69, 0xdc, + 0x88, 0x56, 0x7d, 0x82, 0x0a, 0xeb, 0x31, 0xbc, 0xcc, 0xc1, 0xba, 0xe6, 0xe6, 0xff, 0x91, 0xad, + 0x46, 0x65, 0xa1, 0xfd, 0xb6, 0x56, 0x7e, 0x5c, 0xdf, 0xee, 0x6e, 0xed, 0x8b, 0x70, 0xb2, 0x47, + 0x98, 0x71, 0xc5, 0x53, 0xc8, 0x40, 0xb9, 0x30, 0xe1, 0x56, 0x8a, 0x30, 0xb7, 0x60, 0x36, 0x5b, + 0x2b, 0x09, 0xd6, 0x71, 0xd5, 0xe1, 0xa6, 0xe3, 0x39, 0x87, 0x5f, 0xbf, 0xbf, 0xab, 0x0d, 0x48, + 0xfb, 0xe1, 0xbc, 0x47, 0x6c, 0xda, 0x23, 0xa6, 0x78, 0x06, 0x56, 0x73, 0x01, 0x96, 0xbd, 0xfe, + 0x3d, 0x1f, 0x2c, 0x57, 0xcf, 0x03, 0x07, 0x2c, 0xf7, 0x26, 0xfd, 0xa3, 0x18, 0x26, 0x36, 0xef, + 0x90, 0xeb, 0xbb, 0xbd, 0xb6, 0x60, 0x4b, 0x1b, 0x31, 0xa9, 0x9c, 0x41, 0xab, 0x41, 0x38, 0xb6, + 0x67, 0xe4, 0x99, 0xbd, 0xa9, 0xb9, 0x75, 0x3c, 0x20, 0xe7, 0xbf, 0x0c, 0xc8, 0xb5, 0x7f, 0x15, + 0x3e, 0x7a, 0x94, 0x3c, 0x07, 0xe1, 0x0e, 0x3f, 0xaf, 0xd7, 0xd6, 0xc8, 0xbd, 0x23, 0x32, 0x1c, + 0xd1, 0xe0, 0x64, 0x44, 0x83, 0xd3, 0x11, 0x25, 0x6f, 0x4a, 0x4a, 0xde, 0x97, 0x94, 0x7c, 0x2a, + 0x29, 0x19, 0x96, 0x94, 0x7c, 0x2b, 0x29, 0xf9, 0x51, 0xd2, 0xe0, 0xb4, 0xa4, 0xe4, 0x68, 0x4c, + 0x83, 0xe3, 0x31, 0x25, 0xc3, 0x31, 0x0d, 0x4e, 0xc6, 0x34, 0xd8, 0x7d, 0x96, 0xa2, 0x7e, 0x91, + 0x46, 0x05, 0xf6, 0x1d, 0x18, 0xc3, 0xa3, 0xdc, 0x32, 0x3f, 0x74, 0xd1, 0x64, 0xa1, 0x36, 0x58, + 0xc8, 0x0e, 0x98, 0x70, 0x0e, 0x33, 0x9d, 0xa4, 0xc8, 0x60, 0xdf, 0xcd, 0x72, 0xf8, 0xeb, 0xaf, + 0x9c, 0x5c, 0xf0, 0x05, 0xbb, 0xf5, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xca, 0xab, 0x6b, 0x1c, 0xf5, + 0x03, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.pb.go b/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.pb.go index 00516596c..c8ed4bc16 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.pb.go @@ -1061,110 +1061,112 @@ func init() { } var fileDescriptor_44e5039c03b1f8ff = []byte{ - // 1647 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x41, 0x6f, 0x23, 0x49, - 0x15, 0x4e, 0xd9, 0x8e, 0xc7, 0x2e, 0x67, 0x32, 0xbd, 0xc5, 0xee, 0xac, 0xc7, 0x0c, 0xc6, 0x78, - 0x57, 0x10, 0x8d, 0xc6, 0xed, 0xd9, 0x2c, 0x23, 0x76, 0x03, 0x0c, 0x38, 0x9e, 0x4e, 0x36, 0x21, - 0x99, 0x44, 0x65, 0x27, 0x42, 0x5c, 0x9a, 0x76, 0xfb, 0xd9, 0xdb, 0x3b, 0x76, 0x77, 0x53, 0x5d, - 0x76, 0xd6, 0x42, 0x11, 0xc3, 0x1e, 0xb9, 0x80, 0xc4, 0x05, 0x21, 0x0e, 0x7b, 0x59, 0x89, 0x33, - 0x27, 0xa4, 0x5c, 0xe6, 0xb6, 0xab, 0x3d, 0xa0, 0x08, 0x38, 0xcc, 0x71, 0xc7, 0x01, 0xb4, 0x07, - 0x0e, 0x2b, 0x7e, 0x00, 0x42, 0x5d, 0xd5, 0xed, 0xb1, 0x1d, 0x67, 0x6d, 0x87, 0x9c, 0xdc, 0x55, - 0xef, 0x7d, 0x5f, 0xd7, 0xf7, 0xea, 0xbd, 0xe7, 0xea, 0xc2, 0xf7, 0xbb, 0xe0, 0xa9, 0x96, 0x53, - 0xf4, 0xcc, 0x77, 0xa1, 0x6d, 0x14, 0xbb, 0x16, 0x1c, 0x79, 0xc5, 0xa6, 0xe9, 0xea, 0x5d, 0xd7, - 0xd4, 0x3d, 0x8b, 0x43, 0xd1, 0xed, 0xd4, 0x5a, 0x96, 0xa9, 0x9b, 0xac, 0x53, 0x37, 0x5c, 0x4b, - 0x75, 0x99, 0xc3, 0x1d, 0x92, 0x93, 0x30, 0x55, 0xc2, 0x54, 0x01, 0x53, 0x87, 0x61, 0x99, 0x42, - 0xd3, 0xe2, 0xef, 0x76, 0x6a, 0xaa, 0xe9, 0xb4, 0x8b, 0x4d, 0xa7, 0xe9, 0x14, 0x05, 0xb0, 0xd6, - 0x69, 0x88, 0x91, 0x18, 0x88, 0x27, 0x49, 0x98, 0xb9, 0xdd, 0x74, 0x9c, 0x66, 0x0b, 0x8a, 0x86, - 0x6b, 0x15, 0x0d, 0xdb, 0x76, 0xb8, 0xc1, 0x2d, 0xc7, 0xf6, 0x02, 0xeb, 0x57, 0x03, 0xeb, 0x80, - 0x03, 0xda, 0x2e, 0xef, 0x05, 0xc6, 0xcc, 0xa8, 0x04, 0x60, 0xcc, 0x61, 0x03, 0xe0, 0xa8, 0xcd, - 0x71, 0x87, 0x59, 0x6f, 0x8d, 0x1a, 0x79, 0xcf, 0x85, 0xd0, 0x94, 0x1f, 0x0b, 0x0b, 0x78, 0x60, - 0x77, 0xc7, 0xe0, 0xb9, 0xf3, 0xa1, 0xd3, 0x47, 0x3d, 0x0a, 0x53, 0x83, 0xeb, 0xd4, 0xde, 0x03, - 0x93, 0x07, 0xee, 0x77, 0xa7, 0xba, 0x0f, 0x2f, 0xf1, 0xdb, 0x93, 0xbc, 0x39, 0x30, 0x66, 0x34, - 0x1c, 0xd6, 0xd6, 0x5d, 0x83, 0x19, 0x6d, 0xe0, 0xc0, 0xbc, 0x11, 0xd4, 0xd7, 0x27, 0xa2, 0x5e, - 0x38, 0xe4, 0xff, 0x84, 0xf0, 0xf5, 0x32, 0x03, 0x83, 0x03, 0x85, 0x9f, 0x75, 0xc0, 0xe3, 0xe4, - 0x07, 0x38, 0xd1, 0x06, 0x6e, 0xd4, 0x0d, 0x6e, 0xa4, 0x51, 0x0e, 0xad, 0xa4, 0x56, 0x5f, 0x53, - 0x47, 0xb7, 0x7f, 0x4f, 0xa8, 0x90, 0xa8, 0x5d, 0xe0, 0x46, 0xb5, 0xe7, 0x02, 0x1d, 0x80, 0xc8, - 0x01, 0x8e, 0x79, 0x2e, 0x98, 0xe9, 0x88, 0x00, 0xdf, 0x53, 0xa7, 0xe5, 0x8e, 0x2a, 0x99, 0x2a, - 0x2e, 0x98, 0x3e, 0xd3, 0xfa, 0x8d, 0xdf, 0x1f, 0x2f, 0xf9, 0x04, 0x6a, 0xd3, 0xd4, 0xfd, 0x5f, - 0x2a, 0xe8, 0xd6, 0x92, 0x9f, 0x3e, 0x88, 0xcb, 0x37, 0xe7, 0xff, 0x8b, 0xf0, 0x72, 0xb8, 0x68, - 0xcf, 0x75, 0x6c, 0x0f, 0xc8, 0xf7, 0xce, 0xad, 0x3a, 0x37, 0x71, 0xd5, 0x9b, 0xc0, 0x27, 0x2c, - 0x79, 0x0f, 0xdf, 0xf0, 0x7a, 0x1e, 0x87, 0xb6, 0x3e, 0x20, 0x89, 0x0a, 0x92, 0x6f, 0x8e, 0x91, - 0x54, 0x84, 0xd7, 0x79, 0xaa, 0x65, 0x09, 0xdf, 0x0d, 0x09, 0xe9, 0x48, 0x0c, 0x0a, 0xd3, 0x63, - 0xb0, 0x09, 0x7c, 0x8e, 0x00, 0xfc, 0x0b, 0xe1, 0x65, 0x0a, 0x6e, 0xcb, 0x30, 0x07, 0xdb, 0xf6, - 0xc3, 0x73, 0x01, 0x78, 0x7d, 0x62, 0x00, 0x02, 0xd8, 0x84, 0x20, 0x1c, 0x8e, 0xac, 0xf9, 0x8d, - 0xe9, 0x6b, 0x0e, 0xa8, 0xa6, 0xac, 0x9b, 0x14, 0xb1, 0xc2, 0xc0, 0x73, 0x3a, 0xcc, 0x04, 0xbd, - 0x0b, 0xcc, 0xb3, 0x1c, 0x5b, 0x44, 0x37, 0xb9, 0x1e, 0xfb, 0xfc, 0x04, 0x21, 0x7a, 0x23, 0xb4, - 0x1e, 0x4a, 0xe3, 0xb0, 0xd0, 0x97, 0xf0, 0x8d, 0x81, 0x4e, 0xb9, 0xd3, 0xf9, 0x0f, 0x11, 0xc6, - 0x9b, 0xc0, 0x43, 0xdd, 0xb7, 0x71, 0xd2, 0x36, 0xda, 0xe0, 0xb9, 0x86, 0x09, 0x42, 0x78, 0x92, - 0xbe, 0x98, 0x20, 0x04, 0xc7, 0xfc, 0x81, 0xd0, 0x94, 0xa4, 0xe2, 0x99, 0xfc, 0x14, 0xfb, 0x6f, - 0x14, 0x64, 0xba, 0x5f, 0x3b, 0x06, 0x17, 0xcb, 0x59, 0x5e, 0xfd, 0xce, 0x4c, 0xdb, 0x14, 0x2e, - 0x64, 0x43, 0x40, 0xcb, 0x4e, 0x1d, 0xe8, 0x32, 0x1b, 0x99, 0xcb, 0x7f, 0x14, 0xc7, 0xa9, 0x21, - 0x4f, 0xb2, 0x8f, 0x53, 0xa6, 0x48, 0x57, 0xf1, 0xbe, 0x20, 0xc0, 0xc5, 0x59, 0x0b, 0x23, 0x50, - 0x4a, 0xb1, 0xe4, 0xf0, 0xdf, 0x41, 0x2a, 0x78, 0x89, 0xc9, 0xb8, 0x48, 0xca, 0xe8, 0xac, 0xb5, - 0x36, 0x9a, 0x35, 0x34, 0x15, 0xb0, 0x08, 0xd2, 0x49, 0x1b, 0x15, 0xfb, 0x92, 0x8d, 0x1a, 0x29, - 0xba, 0xc5, 0xab, 0x28, 0xba, 0x6b, 0x57, 0x52, 0x74, 0xf1, 0xab, 0x2b, 0x3a, 0xb2, 0x8b, 0xe3, - 0x1e, 0x37, 0x78, 0xc7, 0x4b, 0x7f, 0xf8, 0x07, 0x94, 0x8b, 0xae, 0xa4, 0x56, 0xd5, 0xe9, 0xbc, - 0x15, 0x81, 0x90, 0x0b, 0x5e, 0x8f, 0x3e, 0x3d, 0x46, 0x34, 0x20, 0x21, 0x5b, 0xf8, 0x25, 0x06, - 0x0d, 0x60, 0xcc, 0xb2, 0x9b, 0xba, 0xfc, 0x37, 0xf0, 0xd2, 0x09, 0xc1, 0x7b, 0xfb, 0x82, 0x72, - 0x6d, 0x08, 0xad, 0xca, 0x00, 0x26, 0xe7, 0x3d, 0x72, 0x88, 0xd3, 0x75, 0x68, 0x01, 0x87, 0xba, - 0x2e, 0x6d, 0x50, 0x1f, 0x30, 0x26, 0x67, 0x60, 0xbc, 0x19, 0xa0, 0x69, 0x00, 0x0e, 0x79, 0x7f, - 0x8c, 0x6f, 0xd5, 0x2d, 0xcf, 0xa8, 0xb5, 0x26, 0x11, 0xe3, 0x19, 0x88, 0x5f, 0x0d, 0xe1, 0x63, - 0xcc, 0x43, 0x75, 0xbd, 0x1d, 0x4b, 0x20, 0x25, 0x92, 0xff, 0x08, 0xe1, 0xd4, 0x8e, 0xe5, 0xcd, - 0x58, 0xcb, 0xdf, 0xc0, 0x4b, 0x2d, 0xa3, 0x06, 0x2d, 0xbd, 0x61, 0xb5, 0x38, 0xb0, 0xa0, 0xa6, - 0x53, 0x62, 0x6e, 0x43, 0x4c, 0x91, 0xd7, 0xf0, 0x75, 0x06, 0xae, 0xc3, 0xb8, 0xde, 0xb0, 0xa0, - 0x55, 0xf7, 0xd2, 0xd1, 0x5c, 0x74, 0x25, 0x49, 0x97, 0xe4, 0xe4, 0x86, 0x98, 0x23, 0xf7, 0xf0, - 0xcb, 0x81, 0x93, 0xdc, 0x94, 0xd0, 0x37, 0x26, 0x7c, 0x89, 0xb4, 0xc9, 0x2d, 0x94, 0x88, 0xfc, - 0xdf, 0xe3, 0x58, 0x91, 0xeb, 0x94, 0x05, 0xbd, 0xc5, 0xa1, 0x4d, 0x6e, 0xe2, 0x38, 0x07, 0xdb, - 0xb0, 0xb9, 0xc8, 0xb7, 0x24, 0x0d, 0x46, 0x97, 0x68, 0x48, 0x0a, 0x8e, 0x76, 0xac, 0xba, 0xec, - 0x89, 0xd4, 0x7f, 0x24, 0x39, 0x9c, 0xaa, 0x83, 0x67, 0x32, 0x4b, 0x9c, 0x2f, 0xd2, 0x29, 0xa9, - 0x74, 0x68, 0x8a, 0x64, 0x70, 0x22, 0x0c, 0x73, 0x7a, 0x29, 0x87, 0x56, 0x12, 0x74, 0x30, 0x26, - 0x87, 0x38, 0x2e, 0x82, 0x22, 0x25, 0xa5, 0x56, 0x1f, 0x4c, 0xcf, 0xd8, 0x71, 0x75, 0xea, 0x8e, - 0x20, 0xd0, 0x6c, 0xce, 0x7a, 0x34, 0x60, 0x23, 0x80, 0x53, 0x43, 0x67, 0xb5, 0x20, 0x17, 0xca, - 0x97, 0x20, 0x2f, 0xbd, 0x60, 0x91, 0x6f, 0x18, 0xe6, 0x25, 0x6f, 0x63, 0xec, 0x1c, 0xd9, 0xc0, - 0x74, 0x9f, 0x2a, 0x9d, 0x14, 0xc5, 0x9c, 0x19, 0x7b, 0xcb, 0xa1, 0x05, 0x47, 0x61, 0xbe, 0x25, - 0x85, 0xb7, 0x3f, 0x33, 0xd2, 0x90, 0xae, 0x5f, 0x45, 0x43, 0x5a, 0xfe, 0xbf, 0x1a, 0xd2, 0x3b, - 0x38, 0xd1, 0x04, 0x2e, 0xda, 0x49, 0xd0, 0xda, 0xe6, 0x6b, 0x4a, 0xf4, 0x5a, 0x53, 0x0e, 0x08, - 0xc5, 0x38, 0x48, 0x56, 0x0f, 0x78, 0xd0, 0x30, 0x2e, 0xd5, 0x88, 0x92, 0x92, 0xa6, 0x02, 0x3c, - 0xf3, 0x36, 0x4e, 0x0d, 0xed, 0xb2, 0x9f, 0x85, 0x8f, 0xa1, 0x17, 0x64, 0xac, 0xff, 0x48, 0x5e, - 0xc6, 0x8b, 0x5d, 0xa3, 0xd5, 0x09, 0x93, 0x55, 0x0e, 0xd6, 0x22, 0x6f, 0xa1, 0xcc, 0x03, 0xac, - 0x8c, 0xef, 0xe1, 0x3c, 0xf8, 0xed, 0x58, 0x62, 0x51, 0x89, 0xe7, 0x7f, 0x85, 0xf0, 0xd2, 0x70, - 0x6e, 0x90, 0x77, 0xf0, 0xa2, 0xc5, 0xa1, 0xed, 0xa5, 0x65, 0xa7, 0x5d, 0x9d, 0x3f, 0xb5, 0xa8, - 0x24, 0x20, 0xf7, 0x70, 0x5c, 0x7e, 0x18, 0xa4, 0x23, 0x82, 0x2a, 0x3d, 0x46, 0xa5, 0xf9, 0x46, - 0x11, 0xe2, 0xc0, 0x2f, 0xff, 0x18, 0x5f, 0x7f, 0x28, 0x1a, 0xe2, 0xe5, 0x0f, 0x16, 0x2b, 0x58, - 0x69, 0x18, 0x56, 0x4b, 0xb7, 0x1a, 0x83, 0xc6, 0x29, 0x8a, 0x3a, 0x41, 0x97, 0xfd, 0xf9, 0xad, - 0x46, 0xd8, 0x10, 0xef, 0xfc, 0x07, 0xe1, 0x57, 0x26, 0x1e, 0x25, 0x48, 0x06, 0xdf, 0xdc, 0xd4, - 0xaa, 0x3a, 0xad, 0xec, 0xeb, 0x1b, 0x7b, 0x74, 0xb7, 0x54, 0xd5, 0x1f, 0x6a, 0x1b, 0xa5, 0x83, - 0x9d, 0xaa, 0xb2, 0x40, 0xbe, 0x86, 0x6f, 0x8d, 0xd9, 0x36, 0xf6, 0xa8, 0x5e, 0xa6, 0x5a, 0xa9, - 0xaa, 0x29, 0x88, 0x64, 0x71, 0x66, 0x82, 0x99, 0x6a, 0xfb, 0x3b, 0xa5, 0xb2, 0xa6, 0x44, 0xc8, - 0x2d, 0xfc, 0xca, 0x98, 0xbd, 0x52, 0x2d, 0x55, 0x0f, 0x2a, 0x4a, 0x94, 0xbc, 0x8a, 0xbf, 0x32, - 0x66, 0xa2, 0x5a, 0xe9, 0xa1, 0x12, 0x23, 0xaf, 0xe3, 0xdc, 0x39, 0xc3, 0x86, 0x46, 0xe9, 0xd6, - 0xa3, 0x4d, 0x7d, 0x6f, 0x7d, 0x5b, 0x2b, 0x57, 0x2b, 0xca, 0xe2, 0x04, 0xaf, 0x75, 0xba, 0xf7, - 0x23, 0xed, 0x91, 0x74, 0xd6, 0x1e, 0x95, 0xb5, 0x8a, 0x12, 0x5f, 0xfd, 0x25, 0xc6, 0xd1, 0xd2, - 0xfe, 0x16, 0xf9, 0x37, 0xc2, 0x71, 0x79, 0xb2, 0x21, 0xf3, 0x9e, 0x81, 0x32, 0xf7, 0x66, 0x07, - 0x04, 0xc7, 0xc5, 0x5f, 0xf4, 0x3f, 0x4e, 0x7f, 0xb7, 0x71, 0xff, 0x7d, 0xb3, 0xe0, 0x5b, 0x0b, - 0x6d, 0xc3, 0x36, 0x9a, 0xd0, 0x06, 0x9b, 0x17, 0x6a, 0x86, 0x67, 0x99, 0x85, 0x8e, 0x07, 0xcc, - 0xff, 0x12, 0x2b, 0x58, 0x4e, 0xc1, 0xb2, 0x1b, 0xcc, 0xf0, 0x38, 0xeb, 0x98, 0xbc, 0xc3, 0xa0, - 0x70, 0xc4, 0x2c, 0x0e, 0x1f, 0xfc, 0xed, 0x1f, 0xbf, 0x8d, 0xac, 0xe5, 0xef, 0x07, 0x1f, 0xc6, - 0xc5, 0x41, 0x0a, 0x78, 0xc5, 0x9f, 0x87, 0x6d, 0x42, 0x1d, 0x4c, 0x1e, 0x8f, 0x7c, 0xc0, 0x79, - 0x6b, 0xe8, 0x0e, 0xf9, 0x27, 0xc2, 0xd1, 0x4d, 0xe0, 0xe4, 0xee, 0x8c, 0xa7, 0x4b, 0x29, 0xb4, - 0x30, 0xd7, 0x59, 0x34, 0xff, 0x04, 0x7d, 0xf2, 0xe7, 0x08, 0xea, 0x7f, 0x9c, 0xfe, 0xfe, 0x97, - 0x48, 0x6d, 0x3b, 0xb6, 0xc5, 0x9d, 0x8b, 0xd4, 0x32, 0x30, 0xea, 0x42, 0xec, 0x7d, 0xf2, 0xe6, - 0x24, 0xb1, 0x17, 0x69, 0x94, 0x96, 0x63, 0xf2, 0x19, 0xc2, 0x31, 0xbf, 0x1c, 0x49, 0x61, 0xd6, - 0xb2, 0x95, 0x4a, 0xd5, 0xf9, 0xaa, 0x3c, 0xdf, 0xbb, 0x3a, 0xa5, 0x2a, 0xb9, 0x3b, 0x8f, 0x52, - 0xf2, 0x24, 0x82, 0xaf, 0x05, 0x07, 0x68, 0x32, 0xf7, 0x59, 0x3b, 0xf3, 0xc6, 0x1c, 0x88, 0x40, - 0xeb, 0xaf, 0xd1, 0x55, 0x64, 0xef, 0x76, 0x46, 0xbb, 0x54, 0xf6, 0x8e, 0xb9, 0x1c, 0xfb, 0xd9, - 0x7c, 0x8a, 0x70, 0x5c, 0xf6, 0xc9, 0x59, 0x8a, 0x77, 0xa4, 0xa3, 0x66, 0x6e, 0xaa, 0xf2, 0x5e, - 0x47, 0x0d, 0xef, 0x75, 0x54, 0xad, 0xed, 0xf2, 0x5e, 0xfe, 0xf8, 0x2a, 0x44, 0xbe, 0x75, 0xe7, - 0x32, 0x59, 0xbb, 0x86, 0xee, 0x64, 0xde, 0x7b, 0x7a, 0x82, 0x22, 0x7f, 0x3d, 0x41, 0xdf, 0x9a, - 0x2a, 0x47, 0xfe, 0x91, 0x3e, 0x3b, 0x41, 0xa8, 0x7f, 0x82, 0x0a, 0x73, 0xfd, 0xfb, 0x7e, 0xf0, - 0x97, 0x74, 0x44, 0x41, 0xeb, 0xbf, 0x43, 0x9f, 0x3e, 0x58, 0x2c, 0xd3, 0x83, 0x87, 0x3b, 0xa7, - 0xcf, 0xb3, 0x0b, 0xcf, 0x9e, 0x67, 0x17, 0xbe, 0x78, 0x9e, 0x45, 0x4f, 0xfa, 0x59, 0xf4, 0xc7, - 0x7e, 0x16, 0x7d, 0xd2, 0xcf, 0xa2, 0xd3, 0x7e, 0x16, 0x7d, 0xd6, 0xcf, 0xa2, 0xcf, 0xfb, 0xd9, - 0x85, 0x2f, 0xfa, 0x59, 0xf4, 0x9b, 0xb3, 0xec, 0xc2, 0xd3, 0xb3, 0x2c, 0x3a, 0x3d, 0xcb, 0x2e, - 0x3c, 0x3b, 0xcb, 0x2e, 0xfc, 0xe4, 0xb0, 0xe9, 0xb8, 0x8f, 0x9b, 0x6a, 0xd7, 0x69, 0x89, 0xdb, - 0x1f, 0xb5, 0x33, 0x74, 0x0d, 0x54, 0x70, 0x99, 0xd3, 0xb5, 0xea, 0xc0, 0x0a, 0xa1, 0xb9, 0xe8, - 0xd6, 0x9a, 0x4e, 0x11, 0xde, 0xe7, 0xc1, 0x0d, 0xd0, 0x85, 0x97, 0x4d, 0xb5, 0xb8, 0xd8, 0x95, - 0x37, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0x85, 0xaf, 0x06, 0x8e, 0x23, 0x14, 0x00, 0x00, + // 1665 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x41, 0x8c, 0x1b, 0x49, + 0x15, 0x9d, 0xb2, 0x3d, 0x8e, 0x5d, 0x9e, 0x4c, 0x7a, 0x8b, 0xdd, 0xac, 0x63, 0x82, 0x31, 0xde, + 0x15, 0x8c, 0xa2, 0xb8, 0x9d, 0x9d, 0x25, 0x62, 0x77, 0x84, 0x02, 0x1e, 0xa7, 0x67, 0x76, 0xc2, + 0x24, 0x13, 0x95, 0x9d, 0x11, 0xe2, 0x40, 0xd3, 0x6e, 0x7f, 0x7b, 0x7b, 0x63, 0x77, 0x37, 0x55, + 0x65, 0x67, 0x47, 0x68, 0x24, 0xb4, 0x17, 0x24, 0xb8, 0xac, 0xc4, 0x05, 0x21, 0x24, 0x22, 0xd0, + 0x22, 0xce, 0x7b, 0x02, 0xcd, 0x25, 0x37, 0x56, 0x7b, 0x40, 0x11, 0x70, 0xc8, 0x91, 0x38, 0x08, + 0xed, 0x71, 0x85, 0x38, 0x23, 0xd4, 0x55, 0xdd, 0x8e, 0xed, 0x71, 0x62, 0x7b, 0x76, 0x94, 0xd3, + 0x74, 0xd5, 0xff, 0xef, 0x75, 0xfd, 0x57, 0xff, 0xff, 0xf9, 0x6e, 0x7c, 0xb5, 0x0f, 0x5c, 0x77, + 0xbc, 0x32, 0xb7, 0xdf, 0x85, 0xae, 0x55, 0xee, 0x3b, 0x70, 0x8f, 0x97, 0xdb, 0xb6, 0x6f, 0xf6, + 0x7d, 0xdb, 0xe4, 0x8e, 0x80, 0xb2, 0xdf, 0x6b, 0x74, 0x1c, 0xdb, 0xb4, 0x59, 0xaf, 0x69, 0xf9, + 0x8e, 0xee, 0x33, 0x4f, 0x78, 0xa4, 0xa0, 0x60, 0xba, 0x82, 0xe9, 0x12, 0xa6, 0x8f, 0xc2, 0x72, + 0xa5, 0xb6, 0x23, 0xde, 0xed, 0x35, 0x74, 0xdb, 0xeb, 0x96, 0xdb, 0x5e, 0xdb, 0x2b, 0x4b, 0x60, + 0xa3, 0xd7, 0x92, 0x2b, 0xb9, 0x90, 0x4f, 0x8a, 0x30, 0x77, 0xb1, 0xed, 0x79, 0xed, 0x0e, 0x94, + 0x2d, 0xdf, 0x29, 0x5b, 0xae, 0xeb, 0x09, 0x4b, 0x38, 0x9e, 0xcb, 0x43, 0xeb, 0x97, 0x43, 0xeb, + 0x90, 0x03, 0xba, 0xbe, 0x38, 0x08, 0x8d, 0xb9, 0xf1, 0x10, 0x80, 0x31, 0x8f, 0x0d, 0x81, 0xe3, + 0x36, 0xcf, 0x1f, 0x65, 0xbd, 0x30, 0x6e, 0x14, 0x07, 0x3e, 0x44, 0xa6, 0xe2, 0x84, 0x2c, 0xc0, + 0xc1, 0xed, 0x4f, 0xc0, 0x0b, 0xc7, 0xa5, 0x33, 0xc7, 0x3d, 0x4a, 0x33, 0xc5, 0xf5, 0x1a, 0xef, + 0x81, 0x2d, 0x42, 0xf7, 0xcb, 0x33, 0xdd, 0x47, 0x8f, 0xf8, 0xcd, 0x69, 0xde, 0x02, 0x18, 0xb3, + 0x5a, 0x1e, 0xeb, 0x9a, 0xbe, 0xc5, 0xac, 0x2e, 0x08, 0x60, 0x7c, 0x0c, 0xf5, 0xd5, 0xa9, 0xa8, + 0xa7, 0x0e, 0xc5, 0x8f, 0x11, 0x3e, 0x5b, 0x65, 0x60, 0x09, 0xa0, 0xf0, 0xe3, 0x1e, 0x70, 0x41, + 0xbe, 0x83, 0x53, 0x5d, 0x10, 0x56, 0xd3, 0x12, 0x56, 0x16, 0x15, 0xd0, 0x5a, 0x66, 0xfd, 0x35, + 0x7d, 0xfc, 0xfa, 0xf7, 0x64, 0x14, 0x0a, 0x75, 0x13, 0x84, 0x55, 0x3f, 0xf0, 0x81, 0x0e, 0x41, + 0xe4, 0x0e, 0x4e, 0x70, 0x1f, 0xec, 0x6c, 0x4c, 0x82, 0xaf, 0xe8, 0xb3, 0x72, 0x47, 0x57, 0x4c, + 0x35, 0x1f, 0xec, 0x80, 0x69, 0xf3, 0xdc, 0xaf, 0x0f, 0x57, 0x02, 0x02, 0xbd, 0x6d, 0x9b, 0xc1, + 0x5f, 0x2a, 0xe9, 0x36, 0xd2, 0x9f, 0x5e, 0x4b, 0xaa, 0x37, 0x17, 0xff, 0x87, 0xf0, 0x6a, 0x74, + 0x68, 0xee, 0x7b, 0x2e, 0x07, 0xf2, 0xed, 0x63, 0xa7, 0x2e, 0x4c, 0x3d, 0xf5, 0x36, 0x88, 0x29, + 0x47, 0xde, 0xc3, 0xe7, 0xf8, 0x01, 0x17, 0xd0, 0x35, 0x87, 0x24, 0x71, 0x49, 0xf2, 0xf5, 0x09, + 0x92, 0x9a, 0xf4, 0x3a, 0x4e, 0xb5, 0xaa, 0xe0, 0x37, 0x23, 0x42, 0x3a, 0xa6, 0x41, 0x69, 0xb6, + 0x06, 0xdb, 0x20, 0x16, 0x10, 0xe0, 0xdf, 0x08, 0xaf, 0x52, 0xf0, 0x3b, 0x96, 0x3d, 0xbc, 0xb6, + 0xef, 0x1e, 0x13, 0xe0, 0xf5, 0xa9, 0x02, 0x84, 0xb0, 0x29, 0x22, 0xec, 0x8f, 0x9d, 0xf9, 0x8d, + 0xd9, 0x67, 0x0e, 0xa9, 0x66, 0x9c, 0x9b, 0x94, 0xb1, 0xc6, 0x80, 0x7b, 0x3d, 0x66, 0x83, 0xd9, + 0x07, 0xc6, 0x1d, 0xcf, 0x95, 0xea, 0xa6, 0x37, 0x13, 0x9f, 0x1d, 0x21, 0x44, 0xcf, 0x45, 0xd6, + 0x7d, 0x65, 0x1c, 0x0d, 0xf4, 0x25, 0x7c, 0x6e, 0x18, 0xa7, 0xba, 0xe9, 0xe2, 0x7d, 0x84, 0xf1, + 0x36, 0x88, 0x28, 0xee, 0x8b, 0x38, 0xed, 0x5a, 0x5d, 0xe0, 0xbe, 0x65, 0x83, 0x0c, 0x3c, 0x4d, + 0x9f, 0x6e, 0x10, 0x82, 0x13, 0xc1, 0x42, 0xc6, 0x94, 0xa6, 0xf2, 0x99, 0xfc, 0x08, 0x07, 0x6f, + 0x94, 0x64, 0x66, 0x50, 0x3b, 0x96, 0x90, 0xc7, 0x59, 0x5d, 0xff, 0xd6, 0x5c, 0xd7, 0x14, 0x1d, + 0x64, 0x4b, 0x42, 0xab, 0x5e, 0x13, 0xe8, 0x2a, 0x1b, 0xdb, 0x2b, 0x7e, 0x94, 0xc4, 0x99, 0x11, + 0x4f, 0x72, 0x1b, 0x67, 0x6c, 0x99, 0xae, 0xf2, 0x7d, 0xa1, 0xc0, 0xe5, 0x79, 0x0b, 0x23, 0x8c, + 0x94, 0x62, 0xc5, 0x11, 0xbc, 0x83, 0xd4, 0xf0, 0x0a, 0x53, 0xba, 0x28, 0xca, 0xf8, 0xbc, 0xb5, + 0x36, 0x9e, 0x35, 0x34, 0x13, 0xb2, 0x48, 0xd2, 0x69, 0x17, 0x95, 0x78, 0xce, 0x45, 0x8d, 0x15, + 0xdd, 0xf2, 0x69, 0x14, 0xdd, 0x99, 0x53, 0x29, 0xba, 0xe4, 0xe9, 0x15, 0x1d, 0xb9, 0x89, 0x93, + 0x5c, 0x58, 0xa2, 0xc7, 0xb3, 0xf7, 0x7f, 0x83, 0x0a, 0xf1, 0xb5, 0xcc, 0xba, 0x3e, 0x9b, 0xb7, + 0x26, 0x11, 0xea, 0xc0, 0x9b, 0xf1, 0x07, 0x87, 0x88, 0x86, 0x24, 0x64, 0x07, 0xbf, 0xc4, 0xa0, + 0x05, 0x8c, 0x39, 0x6e, 0xdb, 0x54, 0xff, 0x0d, 0x78, 0x36, 0x25, 0x79, 0x2f, 0x3e, 0xa3, 0x5c, + 0x5b, 0x32, 0x56, 0x6d, 0x08, 0x53, 0xfb, 0x9c, 0xec, 0xe3, 0x6c, 0x13, 0x3a, 0x20, 0xa0, 0x69, + 0x2a, 0x1b, 0x34, 0x87, 0x8c, 0xe9, 0x39, 0x18, 0xcf, 0x87, 0x68, 0x1a, 0x82, 0x23, 0xde, 0xef, + 0xe3, 0x0b, 0x4d, 0x87, 0x5b, 0x8d, 0xce, 0x34, 0x62, 0x3c, 0x07, 0xf1, 0xab, 0x11, 0x7c, 0x82, + 0x79, 0xa4, 0xae, 0x6f, 0x24, 0x52, 0x48, 0x8b, 0x15, 0x3f, 0x42, 0x38, 0xb3, 0xeb, 0xf0, 0x39, + 0x6b, 0xf9, 0x6b, 0x78, 0xa5, 0x63, 0x35, 0xa0, 0x63, 0xb6, 0x9c, 0x8e, 0x00, 0x16, 0xd6, 0x74, + 0x46, 0xee, 0x6d, 0xc9, 0x2d, 0xf2, 0x1a, 0x3e, 0xcb, 0xc0, 0xf7, 0x98, 0x30, 0x5b, 0x0e, 0x74, + 0x9a, 0x3c, 0x1b, 0x2f, 0xc4, 0xd7, 0xd2, 0x74, 0x45, 0x6d, 0x6e, 0xc9, 0x3d, 0x72, 0x05, 0xbf, + 0x1c, 0x3a, 0xa9, 0x4b, 0x89, 0x7c, 0x13, 0xd2, 0x97, 0x28, 0x9b, 0xba, 0x42, 0x85, 0x28, 0xfe, + 0x23, 0x89, 0x35, 0x75, 0x4e, 0x55, 0xd0, 0x3b, 0x02, 0xba, 0xe4, 0x3c, 0x4e, 0x0a, 0x70, 0x2d, + 0x57, 0xc8, 0x7c, 0x4b, 0xd3, 0x70, 0x75, 0x82, 0x86, 0xa4, 0xe1, 0x78, 0xcf, 0x69, 0xaa, 0x9e, + 0x48, 0x83, 0x47, 0x52, 0xc0, 0x99, 0x26, 0x70, 0x9b, 0x39, 0x72, 0xbe, 0xc8, 0x66, 0x54, 0xa4, + 0x23, 0x5b, 0x24, 0x87, 0x53, 0x91, 0xcc, 0xd9, 0x95, 0x02, 0x5a, 0x4b, 0xd1, 0xe1, 0x9a, 0xec, + 0xe3, 0xa4, 0x14, 0x45, 0x85, 0x94, 0x59, 0xbf, 0x36, 0x3b, 0x63, 0x27, 0xa3, 0xd3, 0x77, 0x25, + 0x81, 0xe1, 0x0a, 0x76, 0x40, 0x43, 0x36, 0x02, 0x38, 0x33, 0x32, 0xab, 0x85, 0xb9, 0x50, 0x3d, + 0x01, 0x79, 0xe5, 0x29, 0x8b, 0x7a, 0xc3, 0x28, 0x2f, 0x79, 0x1b, 0x63, 0xef, 0x9e, 0x0b, 0xcc, + 0x0c, 0xa8, 0xb2, 0x69, 0x59, 0xcc, 0xb9, 0x89, 0xb7, 0xec, 0x3b, 0x70, 0x2f, 0xca, 0xb7, 0xb4, + 0xf4, 0x0e, 0x76, 0xc6, 0x1a, 0xd2, 0xd9, 0xd3, 0x68, 0x48, 0xab, 0x5f, 0xa8, 0x21, 0xbd, 0x83, + 0x53, 0x6d, 0x10, 0xb2, 0x9d, 0x84, 0xad, 0x6d, 0xb1, 0xa6, 0x44, 0xcf, 0xb4, 0xd5, 0x82, 0x50, + 0x8c, 0xc3, 0x64, 0xe5, 0x20, 0xc2, 0x86, 0x71, 0xa2, 0x46, 0x94, 0x56, 0x34, 0x35, 0x10, 0xb9, + 0xb7, 0x71, 0x66, 0xe4, 0x96, 0x83, 0x2c, 0xbc, 0x0b, 0x07, 0x61, 0xc6, 0x06, 0x8f, 0xe4, 0x65, + 0xbc, 0xdc, 0xb7, 0x3a, 0xbd, 0x28, 0x59, 0xd5, 0x62, 0x23, 0xf6, 0x16, 0xca, 0x5d, 0xc3, 0xda, + 0xe4, 0x1d, 0x2e, 0x82, 0xbf, 0x91, 0x48, 0x2d, 0x6b, 0xc9, 0xe2, 0xcf, 0x11, 0x5e, 0x19, 0xcd, + 0x0d, 0xf2, 0x0e, 0x5e, 0x76, 0x04, 0x74, 0x79, 0x56, 0x75, 0xda, 0xf5, 0xc5, 0x53, 0x8b, 0x2a, + 0x02, 0x72, 0x05, 0x27, 0xd5, 0x0f, 0x83, 0x6c, 0x4c, 0x52, 0x65, 0x27, 0xa8, 0x8c, 0xc0, 0x28, + 0x25, 0x0e, 0xfd, 0x8a, 0x77, 0xf1, 0xd9, 0xeb, 0xb2, 0x21, 0x9e, 0x7c, 0xb0, 0x58, 0xc3, 0x5a, + 0xcb, 0x72, 0x3a, 0xa6, 0xd3, 0x1a, 0x36, 0x4e, 0x59, 0xd4, 0x29, 0xba, 0x1a, 0xec, 0xef, 0xb4, + 0xa2, 0x86, 0x78, 0xe9, 0x3f, 0x08, 0xbf, 0x32, 0x75, 0x94, 0x20, 0x39, 0x7c, 0x7e, 0xdb, 0xa8, + 0x9b, 0xb4, 0x76, 0xdb, 0xdc, 0xda, 0xa3, 0x37, 0x2b, 0x75, 0xf3, 0xba, 0xb1, 0x55, 0xb9, 0xb3, + 0x5b, 0xd7, 0x96, 0xc8, 0x57, 0xf0, 0x85, 0x09, 0xdb, 0xd6, 0x1e, 0x35, 0xab, 0xd4, 0xa8, 0xd4, + 0x0d, 0x0d, 0x91, 0x3c, 0xce, 0x4d, 0x31, 0x53, 0xe3, 0xf6, 0x6e, 0xa5, 0x6a, 0x68, 0x31, 0x72, + 0x01, 0xbf, 0x32, 0x61, 0xaf, 0xd5, 0x2b, 0xf5, 0x3b, 0x35, 0x2d, 0x4e, 0x5e, 0xc5, 0x5f, 0x9a, + 0x30, 0x51, 0xa3, 0x72, 0x5d, 0x4b, 0x90, 0xd7, 0x71, 0xe1, 0x98, 0x61, 0xcb, 0xa0, 0x74, 0xe7, + 0xd6, 0xb6, 0xb9, 0xb7, 0x79, 0xc3, 0xa8, 0xd6, 0x6b, 0xda, 0xf2, 0x14, 0xaf, 0x4d, 0xba, 0xf7, + 0x3d, 0xe3, 0x96, 0x72, 0x36, 0x6e, 0x55, 0x8d, 0x9a, 0x96, 0x5c, 0xff, 0x73, 0x06, 0xc7, 0x2b, + 0xb7, 0x77, 0xc8, 0x87, 0x31, 0x9c, 0x54, 0x93, 0x0d, 0x59, 0x74, 0x06, 0xca, 0x5d, 0x99, 0x1f, + 0x10, 0x8e, 0x8b, 0xbf, 0x43, 0x83, 0xbf, 0x64, 0x7f, 0xd8, 0xba, 0xfa, 0xbe, 0x5d, 0x0a, 0xcc, + 0xa5, 0xae, 0xe5, 0x5a, 0x6d, 0xe8, 0x82, 0x2b, 0x4a, 0x0d, 0x8b, 0x3b, 0x76, 0xa9, 0xc7, 0x81, + 0x5d, 0x9e, 0x6a, 0xe7, 0xc2, 0x72, 0x9b, 0x16, 0x6b, 0x2a, 0x97, 0x3e, 0xf0, 0x92, 0xe3, 0x95, + 0x1c, 0xb7, 0xc5, 0x2c, 0x2e, 0x58, 0xcf, 0x16, 0x3d, 0x06, 0xa5, 0x7b, 0xcc, 0x11, 0xf0, 0xc1, + 0xdf, 0xff, 0xf5, 0xcb, 0xd8, 0x46, 0xf1, 0x6a, 0xf8, 0xe3, 0xb9, 0x3c, 0x4c, 0x13, 0x5e, 0xfe, + 0x49, 0xd4, 0x4a, 0xf4, 0xe1, 0xe6, 0xe1, 0xd8, 0x8f, 0x3c, 0xbe, 0x81, 0x2e, 0x91, 0x5f, 0xc4, + 0x70, 0x7c, 0x1b, 0x04, 0xb9, 0x3c, 0xe7, 0x04, 0xaa, 0xc4, 0x28, 0x2d, 0x34, 0xaf, 0x16, 0xff, + 0x80, 0x3e, 0xf9, 0x53, 0x2c, 0x50, 0xc3, 0x7e, 0x8e, 0x1a, 0x5d, 0xcf, 0x75, 0x84, 0x37, 0x4b, + 0x90, 0xc8, 0x6b, 0xba, 0x26, 0x0c, 0xac, 0xa6, 0x94, 0xe4, 0x2a, 0x79, 0x73, 0x9a, 0x24, 0xcf, + 0x52, 0x42, 0x59, 0x0e, 0xc9, 0xcf, 0x62, 0x38, 0x11, 0x14, 0x36, 0x29, 0xcd, 0xdb, 0x00, 0x94, + 0x1e, 0xfa, 0x62, 0xfd, 0xa2, 0xf8, 0xdb, 0x17, 0x2e, 0x88, 0x4e, 0x2e, 0x2f, 0x22, 0x08, 0xf9, + 0x7d, 0x0c, 0x9f, 0x09, 0x27, 0x76, 0xb2, 0xf0, 0x70, 0x9f, 0x7b, 0x63, 0x01, 0x44, 0x28, 0xc9, + 0xc7, 0x2f, 0xaa, 0x5a, 0x6e, 0xe4, 0x8c, 0x13, 0x55, 0xcb, 0x84, 0xcb, 0x61, 0x50, 0x3d, 0xff, + 0x45, 0x38, 0xa9, 0x7a, 0xf7, 0x3c, 0x0d, 0x65, 0xac, 0xcb, 0xe7, 0xce, 0xeb, 0xea, 0x5b, 0x93, + 0x1e, 0x7d, 0x6b, 0xd2, 0x8d, 0xae, 0x2f, 0x0e, 0x8a, 0xf7, 0x5f, 0x94, 0x10, 0x6f, 0x5d, 0x3a, + 0x49, 0x8d, 0x6c, 0xa0, 0x4b, 0xb9, 0xf7, 0x1e, 0x1c, 0xa1, 0xd8, 0xdf, 0x8e, 0xd0, 0x37, 0x66, + 0x86, 0xac, 0x06, 0x80, 0x47, 0x47, 0x08, 0x0d, 0x8e, 0x50, 0x69, 0xa1, 0xa9, 0xe1, 0x83, 0xbf, + 0x66, 0x63, 0x1a, 0xda, 0xfc, 0x15, 0xfa, 0xf4, 0xda, 0x72, 0x95, 0xde, 0xb9, 0xbe, 0xfb, 0xf0, + 0x71, 0x7e, 0xe9, 0xd1, 0xe3, 0xfc, 0xd2, 0xe7, 0x8f, 0xf3, 0xe8, 0xa7, 0x83, 0x3c, 0xfa, 0xe3, + 0x20, 0x8f, 0x3e, 0x19, 0xe4, 0xd1, 0xc3, 0x41, 0x1e, 0xfd, 0x73, 0x90, 0x47, 0x9f, 0x0d, 0xf2, + 0x4b, 0x9f, 0x0f, 0xf2, 0xe8, 0xc3, 0x27, 0xf9, 0xa5, 0x07, 0x4f, 0xf2, 0xe8, 0xe1, 0x93, 0xfc, + 0xd2, 0xa3, 0x27, 0xf9, 0xa5, 0x1f, 0xec, 0xb7, 0x3d, 0xff, 0x6e, 0x5b, 0xef, 0x7b, 0x1d, 0xf9, + 0xd5, 0x4a, 0xef, 0x8d, 0x7c, 0xbe, 0x2a, 0xf9, 0xcc, 0xeb, 0x3b, 0x4d, 0x60, 0xa5, 0xc8, 0x5c, + 0xf6, 0x1b, 0x6d, 0xaf, 0x0c, 0xef, 0x8b, 0xf0, 0xcb, 0xd5, 0x33, 0x3f, 0x92, 0x35, 0x92, 0xf2, + 0xe6, 0xde, 0xfc, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x1a, 0xb5, 0xc1, 0x8b, 0xdb, 0x14, 0x00, + 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.vesapi.go index 9189b98a3..d2ebb056c 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/public_crudapi.vesapi.go @@ -2356,18 +2356,49 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable Forward Proxy with Allow All Policy" }, + "gcp_zone_names": { + "type": "array", + "description": " x-required\n List of zones when instances will be created, needs to match with region selected.\n\nExample: - \"us-west1-a, us-west1-b, us-west1-c\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 3\n ves.io.schema.rules.repeated.unique: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "GCP zones", + "maxItems": 3, + "items": { + "type": "string", + "maxLength": 64 + }, + "x-displayname": "GCP zone names", + "x-ves-example": "us-west1-a, us-west1-b, us-west1-c", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "3", + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, "global_network_list": { "description": "Exclusive with [no_global_network]\n List of global network connections", "title": "Connect Global Networks", "$ref": "#/definitions/viewsGlobalNetworkConnectionListType", "x-displayname": "Connect Global Networks" }, + "inside_network": { + "description": " Network for the inside interface of the node", + "title": "Network", + "$ref": "#/definitions/viewsGCPVPCNetworkChoiceType", + "x-displayname": "VPC Network for Inside Interface" + }, "inside_static_routes": { "description": "Exclusive with [no_inside_static_routes]\n Manage static routes for inside network.", "title": "Manage Static routes", "$ref": "#/definitions/viewsSiteStaticRoutesListType", "x-displayname": "Manage Static routes" }, + "inside_subnet": { + "description": " Subnet for the inside interface of the node.", + "title": "Subnet", + "$ref": "#/definitions/viewsGCPVPCSubnetChoiceType", + "x-displayname": "Subnet for Inside Interface" + }, "no_dc_cluster_group": { "description": "Exclusive with [dc_cluster_group_inside_vn dc_cluster_group_outside_vn]\n This site is not a member of dc cluster group", "title": "Not a Member of DC Cluster Group", @@ -2404,12 +2435,35 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Static Routes" }, + "node_number": { + "type": "integer", + "description": " Number of main nodes to create, either 1 or 3.\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.in: [1,3]\n", + "title": "Number of main nodes", + "format": "int64", + "x-displayname": "Number of main nodes", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.in": "[1,3]" + } + }, + "outside_network": { + "description": " Network for the outside interface of the node", + "title": "Network", + "$ref": "#/definitions/viewsGCPVPCNetworkChoiceType", + "x-displayname": "VPC Network for Outside Interface" + }, "outside_static_routes": { "description": "Exclusive with [no_outside_static_routes]\n Manage static routes for outside network.", "title": "Manage Static routes", "$ref": "#/definitions/viewsSiteStaticRoutesListType", "x-displayname": "Manage Static routes" }, + "outside_subnet": { + "description": " Subnet for the outside interface of the node.", + "title": "Subnet", + "$ref": "#/definitions/viewsGCPVPCSubnetChoiceType", + "x-displayname": "Subnet for Outside Interface" + }, "performance_enhancement_mode": { "description": " Performance Enhancement Mode to optimize for L3 or L7 networking", "title": "Performance Enhancement Choice", @@ -2629,6 +2683,48 @@ var APISwaggerJSON string = `{ "x-displayname": "GCP Ingress Gateway", "x-ves-proto-message": "ves.io.schema.views.gcp_vpc_site.GCPVPCIngressGwReplaceType", "properties": { + "gcp_zone_names": { + "type": "array", + "description": " x-required\n List of zones when instances will be created, needs to match with region selected.\n\nExample: - \"us-west1-a, us-west1-b, us-west1-c\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 3\n ves.io.schema.rules.repeated.unique: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "GCP zones", + "maxItems": 3, + "items": { + "type": "string", + "maxLength": 64 + }, + "x-displayname": "GCP zone names", + "x-ves-example": "us-west1-a, us-west1-b, us-west1-c", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "3", + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, + "local_network": { + "description": " Network for the local interface of the node", + "title": "Network", + "$ref": "#/definitions/viewsGCPVPCNetworkChoiceType", + "x-displayname": "VPC Network for Local Interface" + }, + "local_subnet": { + "description": " Subnet for the local interface of the node.", + "title": "Subnet", + "$ref": "#/definitions/viewsGCPVPCSubnetChoiceType", + "x-displayname": "Subnet for Local Interface" + }, + "node_number": { + "type": "integer", + "description": " Number of main nodes to create, either 1 or 3.\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.in: [1,3]\n", + "title": "Number of main nodes", + "format": "int64", + "x-displayname": "Number of main nodes", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.in": "[1,3]" + } + }, "performance_enhancement_mode": { "description": " Performance Enhancement Mode to optimize for L3 or L7 networking", "title": "Performance Enhancement Choice", @@ -2794,6 +2890,25 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable Forward Proxy with Allow All Policy" }, + "gcp_zone_names": { + "type": "array", + "description": " x-required\n List of zones when instances will be created, needs to match with region selected.\n\nExample: - \"us-west1-a, us-west1-b, us-west1-c\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 3\n ves.io.schema.rules.repeated.unique: true\n ves.io.schema.rules.string.max_len: 64\n", + "title": "GCP zones", + "maxItems": 3, + "items": { + "type": "string", + "maxLength": 64 + }, + "x-displayname": "GCP zone names", + "x-ves-example": "us-west1-a, us-west1-b, us-west1-c", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "3", + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, "global_network_list": { "description": "Exclusive with [no_global_network]\n List of global network connections", "title": "Connect Global Networks", @@ -2830,12 +2945,35 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Static Routes" }, + "node_number": { + "type": "integer", + "description": " Number of main nodes to create, either 1 or 3.\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.in: [1,3]\n", + "title": "Number of main nodes", + "format": "int64", + "x-displayname": "Number of main Nodes", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.in": "[1,3]" + } + }, "outside_static_routes": { "description": "Exclusive with [no_outside_static_routes]\n Manage static routes for outside network.", "title": "Manage Static routes", "$ref": "#/definitions/viewsSiteStaticRoutesListType", "x-displayname": "Manage Static routes" }, + "site_local_network": { + "description": " Network for the local interface of the node", + "title": "Network", + "$ref": "#/definitions/viewsGCPVPCNetworkChoiceType", + "x-displayname": "VPC Network for Local Interface" + }, + "site_local_subnet": { + "description": " Subnet for the local interface of the node.", + "title": "Subnet", + "$ref": "#/definitions/viewsGCPVPCSubnetChoiceType", + "x-displayname": "Subnet for Local Interface" + }, "sm_connection_public_ip": { "description": "Exclusive with [sm_connection_pvt_ip]\n Site Mesh Group Connection Via Public IP. This option will use elastic IP for\n creating ipsec between two sites which are part of the site mesh group", "title": "Site Mesh Group Connection Via Public Ip", @@ -3885,10 +4023,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3945,10 +4087,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4007,10 +4153,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5236,6 +5386,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -5567,9 +5788,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "disk_size": { "type": "integer", @@ -5626,6 +5847,11 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -5659,14 +5885,16 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "sw": { @@ -5736,9 +5964,9 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" }, "disk_size": { "type": "integer", @@ -5801,6 +6029,11 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.string.max_len": "64" } }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -5843,14 +6076,16 @@ var APISwaggerJSON string = `{ }, "ssh_key": { "type": "string", - "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, "maxLength": 8192, "x-displayname": "Public SSH key", "x-ves-example": "ssh-rsa AAAAB...", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "8192" + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" } }, "suggested_action": { @@ -5921,9 +6156,31 @@ var APISwaggerJSON string = `{ "x-displayname": "Custom DNS" }, "default_blocked_services": { - "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH \u0026 WebUI services on Site", + "description": "Exclusive with [block_all_services blocked_services]\n Allow access to DNS, SSH services on Site", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow access to DNS, SSH \u0026 WebUI services on Site" + "x-displayname": "Allow access to DNS, SSH services on Site" + }, + "disk_size": { + "type": "integer", + "description": " Disk size to be used for this instance in GiB. 80 is 80 GiB\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 64000\n", + "format": "int64", + "x-displayname": "Cloud Disk Size", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "64000" + } + }, + "gcp_region": { + "type": "string", + "description": " Name for GCP Region.\n\nExample: - \"us-west1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-displayname": "GCP Region", + "x-ves-example": "us-west1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } }, "ingress_egress_gw": { "description": "Exclusive with [ingress_gw voltstack_cluster]\n Two interface site is useful when site is used as ingress/egress gateway to the VPC network.", @@ -5937,6 +6194,23 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/gcp_vpc_siteGCPVPCIngressGwReplaceType", "x-displayname": "Ingress Gateway (One Interface)" }, + "instance_type": { + "type": "string", + "description": " Select Instance size based on performance needed\n\nExample: - \"n1-standard-4\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 64\n", + "maxLength": 64, + "x-displayname": "GCP Instance Type for Node", + "x-ves-example": "n1-standard-4", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64" + } + }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -5962,6 +6236,20 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/viewsPrivateConnectConfigType", "x-displayname": "Enable Private Connectivity" }, + "ssh_key": { + "type": "string", + "description": " Public SSH key for accessing the site.\n\nExample: - \"ssh-rsa AAAAB...\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_len: 8192\n ves.io.schema.rules.string.min_len: 1\n", + "minLength": 1, + "maxLength": 8192, + "x-displayname": "Public SSH key", + "x-ves-example": "ssh-rsa AAAAB...", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1" + } + }, "voltstack_cluster": { "description": "Exclusive with [ingress_egress_gw ingress_gw]\n App Stack Cluster using single interface, useful for deploying K8s cluster.", "title": "App Stack Cluster", diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/public_customapi.pb.go b/pbgo/extschema/schema/views/gcp_vpc_site/public_customapi.pb.go index bda0f82e9..d412f121e 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/public_customapi.pb.go @@ -178,47 +178,48 @@ func init() { } var fileDescriptor_c7881f50a1a77c55 = []byte{ - // 635 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xc1, 0x6b, 0x13, 0x4f, - 0x14, 0xce, 0xa4, 0xe5, 0x07, 0xdd, 0x9f, 0x48, 0xd9, 0x8b, 0x21, 0x96, 0x21, 0x04, 0xc1, 0x52, - 0xbb, 0x3b, 0x50, 0x2d, 0x62, 0xf1, 0x62, 0x03, 0x96, 0xe2, 0xc1, 0xd2, 0x4a, 0x0e, 0x5e, 0x96, - 0xd9, 0xe9, 0xdb, 0xed, 0x68, 0x76, 0x67, 0xdc, 0x99, 0xdd, 0xb4, 0x48, 0x41, 0x7a, 0x17, 0x2a, - 0x9e, 0x3d, 0x79, 0xf1, 0x7f, 0xe8, 0xa5, 0x37, 0x3d, 0x49, 0xd1, 0x4b, 0x4f, 0x62, 0x36, 0x1e, - 0x3c, 0xf6, 0xea, 0x4d, 0x32, 0x49, 0x6a, 0x92, 0xb6, 0x44, 0x8a, 0xb7, 0xf7, 0xe6, 0xfb, 0xde, - 0xec, 0xf7, 0xbd, 0x79, 0x6f, 0xad, 0xbb, 0x19, 0x28, 0x97, 0x0b, 0xa2, 0xd8, 0x16, 0x44, 0x94, - 0x64, 0x1c, 0x9a, 0x8a, 0x84, 0x4c, 0x7a, 0x99, 0x64, 0x9e, 0xe2, 0x1a, 0x88, 0x4c, 0xfd, 0x06, - 0x67, 0x1e, 0x4b, 0x95, 0x16, 0x11, 0x95, 0xdc, 0x95, 0x89, 0xd0, 0xc2, 0xae, 0x74, 0x0b, 0xdd, - 0x6e, 0xa1, 0x6b, 0x0a, 0xdd, 0xc1, 0xc2, 0xb2, 0x13, 0x72, 0xbd, 0x95, 0xfa, 0x2e, 0x13, 0x11, - 0x09, 0x45, 0x28, 0x88, 0x29, 0xf4, 0xd3, 0xc0, 0x64, 0x26, 0x31, 0x51, 0xf7, 0xc2, 0xf2, 0x4c, - 0x28, 0x44, 0xd8, 0x00, 0x42, 0x25, 0x27, 0x34, 0x8e, 0x85, 0xa6, 0x9a, 0x8b, 0x58, 0xf5, 0xd0, - 0xeb, 0xc3, 0x3a, 0x85, 0x1c, 0x04, 0xf1, 0x30, 0x68, 0x64, 0xeb, 0x1d, 0x09, 0x7d, 0x7c, 0x66, - 0xc4, 0x24, 0x6d, 0xf0, 0x4d, 0xaa, 0xa1, 0x87, 0x56, 0x47, 0x50, 0x50, 0x10, 0x67, 0x23, 0x5f, - 0xa8, 0x9c, 0x6d, 0x93, 0x37, 0xcc, 0x70, 0xc6, 0x36, 0x52, 0xf8, 0xcf, 0x80, 0xe9, 0x1e, 0x7d, - 0x7e, 0x2c, 0x7d, 0xd0, 0xc0, 0x8d, 0xf3, 0xd8, 0x1d, 0x96, 0x37, 0xc0, 0xaa, 0xbe, 0x47, 0xd6, - 0xb5, 0x0d, 0xd0, 0xb5, 0x86, 0x48, 0x37, 0x37, 0xb8, 0x86, 0xd5, 0x38, 0x10, 0xeb, 0xf0, 0x22, - 0x05, 0xa5, 0xed, 0x19, 0x6b, 0x2a, 0xa6, 0x11, 0x28, 0x49, 0x19, 0x94, 0x50, 0x05, 0xcd, 0x4e, - 0xad, 0xff, 0x39, 0xb0, 0x6d, 0x6b, 0xb2, 0x93, 0x94, 0x8a, 0x06, 0x30, 0xb1, 0x5d, 0xb7, 0xae, - 0xd0, 0xa6, 0x32, 0x7a, 0x78, 0x1c, 0x88, 0xd2, 0x44, 0x05, 0xcd, 0xfe, 0xbf, 0x70, 0xc7, 0x1d, - 0xf7, 0xee, 0xee, 0x4a, 0x6d, 0xad, 0xbe, 0x56, 0xeb, 0x0b, 0x78, 0xb2, 0x23, 0x61, 0xdd, 0xa2, - 0x4d, 0x55, 0x97, 0xac, 0x93, 0x57, 0xcb, 0x56, 0xe9, 0xac, 0x48, 0x25, 0x45, 0xac, 0x60, 0xe1, - 0xdb, 0xa4, 0x35, 0x55, 0x33, 0x83, 0xf6, 0x60, 0x6d, 0xd5, 0x7e, 0x57, 0xb4, 0xa6, 0x47, 0xa9, - 0xf6, 0xbd, 0xf1, 0x02, 0x2e, 0xe8, 0x41, 0x79, 0xe9, 0x32, 0xa5, 0x5d, 0x65, 0xd5, 0x37, 0x28, - 0xff, 0x58, 0xba, 0x9f, 0x81, 0x72, 0xb8, 0x70, 0x78, 0x1c, 0x24, 0x54, 0xe9, 0x24, 0x65, 0x3a, - 0x4d, 0xc0, 0x69, 0x26, 0x5c, 0xc3, 0x7c, 0x25, 0x58, 0xdc, 0x66, 0x4e, 0xe7, 0x16, 0x27, 0xa2, - 0x31, 0x0d, 0x21, 0x82, 0x58, 0x3b, 0x3e, 0x55, 0x9c, 0x39, 0xa9, 0x82, 0x64, 0xef, 0xeb, 0x8f, - 0xb7, 0xc5, 0x47, 0xd5, 0x87, 0xbd, 0x85, 0x22, 0xa7, 0xdd, 0x57, 0xe4, 0xe5, 0x69, 0xbc, 0x3b, - 0x3c, 0x03, 0x06, 0xd8, 0x25, 0x0a, 0xb4, 0xc7, 0x3a, 0xb2, 0xcc, 0xa9, 0x79, 0x8e, 0x25, 0x34, - 0x67, 0xff, 0x42, 0xd6, 0xd5, 0x7a, 0x6f, 0x96, 0x6b, 0x22, 0x0e, 0x78, 0x68, 0xcf, 0x9d, 0x6b, - 0x71, 0x98, 0xd4, 0x6f, 0xc7, 0xad, 0xbf, 0xe2, 0xf6, 0xfc, 0xbf, 0xfe, 0x37, 0xfe, 0x57, 0xaa, - 0xcb, 0x97, 0xf0, 0xdf, 0x5f, 0x58, 0x8f, 0x19, 0x51, 0x4b, 0x68, 0xae, 0xbc, 0x78, 0x78, 0x80, - 0x26, 0xbe, 0x1c, 0xa0, 0x9b, 0x63, 0x9f, 0xf4, 0xb1, 0x59, 0xbb, 0xbd, 0xcf, 0xa5, 0xe2, 0x34, - 0x5a, 0xde, 0x47, 0x47, 0x2d, 0x5c, 0x38, 0x6e, 0xe1, 0xc2, 0x49, 0x0b, 0xa3, 0x57, 0x39, 0x46, - 0x1f, 0x72, 0x8c, 0x3e, 0xe5, 0x18, 0x1d, 0xe5, 0x18, 0x7d, 0xcf, 0x31, 0xfa, 0x99, 0xe3, 0xc2, - 0x49, 0x8e, 0xd1, 0x7e, 0x1b, 0x17, 0x0e, 0xdb, 0x18, 0x1d, 0xb5, 0x71, 0xe1, 0xb8, 0x8d, 0x0b, - 0x4f, 0xeb, 0xa1, 0x90, 0xcf, 0x43, 0x37, 0x13, 0x0d, 0x0d, 0x49, 0x42, 0xdd, 0x54, 0x11, 0x13, - 0x04, 0x22, 0x89, 0x1c, 0x99, 0x88, 0x8c, 0x6f, 0x42, 0xe2, 0xf4, 0x61, 0x22, 0xfd, 0x50, 0x10, - 0xd8, 0xd6, 0xfd, 0x7f, 0xd2, 0x45, 0x7b, 0xee, 0xff, 0x67, 0x96, 0xf7, 0xf6, 0xef, 0x00, 0x00, - 0x00, 0xff, 0xff, 0x8b, 0x4c, 0x02, 0x34, 0x8a, 0x05, 0x00, 0x00, + // 646 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0xc1, 0x6b, 0x13, 0x4f, + 0x18, 0xcd, 0xa4, 0xbf, 0x9f, 0xd0, 0x55, 0xa4, 0xec, 0xc5, 0x10, 0xcb, 0x10, 0x82, 0x60, 0xa9, + 0xdd, 0x1d, 0xa8, 0x16, 0xb1, 0x37, 0x1b, 0xb0, 0x14, 0x0f, 0x96, 0x56, 0x72, 0xf0, 0xb2, 0xce, + 0x4e, 0xbe, 0xdd, 0x8e, 0x66, 0x77, 0xc6, 0x9d, 0xd9, 0x4d, 0x8b, 0x14, 0xa4, 0x7f, 0x41, 0xc1, + 0xb3, 0x27, 0x41, 0xbc, 0x7a, 0xf0, 0xd4, 0x4b, 0x3d, 0xe9, 0x49, 0x8a, 0x5e, 0x7a, 0xb4, 0x1b, + 0x0f, 0x1e, 0xfb, 0x27, 0x48, 0x26, 0x49, 0x4d, 0xd2, 0x96, 0x48, 0x0f, 0xde, 0xbe, 0x6f, 0xdf, + 0x7b, 0xb3, 0x6f, 0xde, 0x7c, 0x33, 0xd6, 0xdd, 0x0c, 0x94, 0xcb, 0x05, 0x51, 0x6c, 0x03, 0x22, + 0x4a, 0x32, 0x0e, 0x2d, 0x45, 0x42, 0x26, 0xbd, 0x4c, 0x32, 0x4f, 0x71, 0x0d, 0x44, 0xa6, 0x7e, + 0x93, 0x33, 0x8f, 0xa5, 0x4a, 0x8b, 0x88, 0x4a, 0xee, 0xca, 0x44, 0x68, 0x61, 0x57, 0xba, 0x42, + 0xb7, 0x2b, 0x74, 0x8d, 0xd0, 0x1d, 0x14, 0x96, 0x9d, 0x90, 0xeb, 0x8d, 0xd4, 0x77, 0x99, 0x88, + 0x48, 0x28, 0x42, 0x41, 0x8c, 0xd0, 0x4f, 0x03, 0xd3, 0x99, 0xc6, 0x54, 0xdd, 0x05, 0xcb, 0xd3, + 0xa1, 0x10, 0x61, 0x13, 0x08, 0x95, 0x9c, 0xd0, 0x38, 0x16, 0x9a, 0x6a, 0x2e, 0x62, 0xd5, 0x43, + 0xaf, 0x0f, 0xfb, 0x14, 0x72, 0x10, 0xc4, 0xc3, 0xa0, 0xb1, 0xad, 0xb7, 0x24, 0xf4, 0xf1, 0xe9, + 0x91, 0x4d, 0xd2, 0x26, 0x6f, 0x50, 0x0d, 0x3d, 0xb4, 0x3a, 0x82, 0x82, 0x82, 0x38, 0x1b, 0xf9, + 0x43, 0xe5, 0x74, 0x4c, 0xde, 0x30, 0xc3, 0x19, 0x1b, 0xa4, 0xf0, 0x9f, 0x01, 0xd3, 0x3d, 0xfa, + 0xdc, 0x58, 0xfa, 0xe0, 0x06, 0x6e, 0x9c, 0xc5, 0xee, 0xb0, 0xbc, 0x01, 0x56, 0xf5, 0x2d, 0xb2, + 0xae, 0xad, 0x83, 0xae, 0x35, 0x45, 0xda, 0x58, 0xe7, 0x1a, 0x56, 0xe2, 0x40, 0xac, 0xc1, 0x8b, + 0x14, 0x94, 0xb6, 0xa7, 0xad, 0xc9, 0x98, 0x46, 0xa0, 0x24, 0x65, 0x50, 0x42, 0x15, 0x34, 0x33, + 0xb9, 0xf6, 0xe7, 0x83, 0x6d, 0x5b, 0xff, 0x75, 0x9a, 0x52, 0xd1, 0x00, 0xa6, 0xb6, 0xeb, 0xd6, + 0x15, 0xda, 0x52, 0xc6, 0x0f, 0x8f, 0x03, 0x51, 0x9a, 0xa8, 0xa0, 0x99, 0xcb, 0xf3, 0x77, 0xdc, + 0x71, 0xe7, 0xee, 0x2e, 0xd7, 0x56, 0xeb, 0xab, 0xb5, 0xbe, 0x81, 0xc7, 0x5b, 0x12, 0xd6, 0x2c, + 0xda, 0x52, 0x75, 0xc9, 0x3a, 0x7d, 0xb5, 0x6c, 0x95, 0x4e, 0x9b, 0x54, 0x52, 0xc4, 0x0a, 0xe6, + 0xdf, 0xfd, 0x6f, 0x4d, 0xd6, 0xcc, 0xa0, 0xdd, 0x5f, 0x5d, 0xb1, 0x3f, 0x15, 0xad, 0xa9, 0x51, + 0xaa, 0x7d, 0x6f, 0xbc, 0x81, 0x73, 0x32, 0x28, 0x2f, 0x5e, 0x44, 0xda, 0x75, 0x56, 0xfd, 0x88, + 0xf2, 0xcf, 0xa5, 0xa7, 0x19, 0x28, 0x87, 0x0b, 0x87, 0xc7, 0x41, 0x42, 0x95, 0x4e, 0x52, 0xa6, + 0xd3, 0x04, 0x9c, 0x56, 0xc2, 0x35, 0xcc, 0x55, 0x82, 0x85, 0x4d, 0xe6, 0x74, 0x56, 0x71, 0x22, + 0x1a, 0xd3, 0x10, 0x22, 0x88, 0xb5, 0xe3, 0x53, 0xc5, 0x99, 0x93, 0x2a, 0x48, 0xce, 0x21, 0x28, + 0x4d, 0xe3, 0x06, 0x4d, 0x1a, 0x86, 0xb3, 0xf3, 0xfd, 0xe7, 0xeb, 0xe2, 0xc3, 0xea, 0x83, 0xde, + 0xa5, 0x23, 0x27, 0x27, 0xa4, 0xc8, 0xcb, 0x93, 0x7a, 0x7b, 0x78, 0x4e, 0x0c, 0xb0, 0x4d, 0x14, + 0x68, 0x8f, 0x75, 0xac, 0x9b, 0xaf, 0xe6, 0xc8, 0x16, 0xd1, 0xac, 0xfd, 0xa6, 0x68, 0x5d, 0xad, + 0xf7, 0xe6, 0xbd, 0x26, 0xe2, 0x80, 0x87, 0xf6, 0xec, 0x99, 0x31, 0x0c, 0x93, 0xfa, 0x91, 0xdd, + 0xfa, 0x2b, 0x6e, 0x2f, 0xa3, 0x0f, 0xff, 0x2e, 0xa3, 0xe5, 0xea, 0xd2, 0x05, 0x32, 0xea, 0x5f, + 0x7c, 0x8f, 0x19, 0xe3, 0x8b, 0x68, 0xb6, 0xbc, 0xb0, 0xbf, 0x87, 0x26, 0xbe, 0xed, 0xa1, 0x9b, + 0x63, 0x47, 0xe3, 0x91, 0xb9, 0xbe, 0x3b, 0x5f, 0x4b, 0xc5, 0x29, 0xb4, 0xb4, 0x8b, 0x0e, 0x8e, + 0x70, 0xe1, 0xf0, 0x08, 0x17, 0x8e, 0x8f, 0x30, 0x7a, 0x95, 0x63, 0xf4, 0x3e, 0xc7, 0xe8, 0x4b, + 0x8e, 0xd1, 0x41, 0x8e, 0xd1, 0x8f, 0x1c, 0xa3, 0x5f, 0x39, 0x2e, 0x1c, 0xe7, 0x18, 0xed, 0xb6, + 0x71, 0x61, 0xbf, 0x8d, 0xd1, 0x41, 0x1b, 0x17, 0x0e, 0xdb, 0xb8, 0xf0, 0xa4, 0x1e, 0x0a, 0xf9, + 0x3c, 0x74, 0x33, 0xd1, 0xd4, 0x90, 0x24, 0xd4, 0x4d, 0x15, 0x31, 0x45, 0x20, 0x92, 0xc8, 0x91, + 0x89, 0xc8, 0x78, 0x03, 0x12, 0xa7, 0x0f, 0x13, 0xe9, 0x87, 0x82, 0xc0, 0xa6, 0xee, 0xbf, 0x6d, + 0xe7, 0xbd, 0x17, 0xfe, 0x25, 0xf3, 0x08, 0xdc, 0xfe, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x62, 0xcf, + 0x7c, 0xa4, 0xd2, 0x05, 0x00, 0x00, } func (this *SetCloudSiteInfoRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/types.pb.go b/pbgo/extschema/schema/views/gcp_vpc_site/types.pb.go index ac4f89fc6..204be9649 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/types.pb.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/types.pb.go @@ -1193,6 +1193,30 @@ func (*GCPVPCVoltstackClusterType) XXX_OneofWrappers() []interface{} { // x-displayName: "GCP Ingress Gateway" // Single interface GCP ingress site type GCPVPCIngressGwReplaceType struct { + // GCP zones + // + // x-required + // x-displayName: "GCP zone names" + // x-required + // x-example: "us-west1-a, us-west1-b, us-west1-c" + // List of zones when instances will be created, needs to match with region selected. + GcpZoneNames []string `protobuf:"bytes,4,rep,name=gcp_zone_names,json=gcpZoneNames,proto3" json:"gcp_zone_names,omitempty"` + // Number of main nodes + // + // x-displayName: "Number of main nodes" + // x-example: "1" + // Number of main nodes to create, either 1 or 3. + NodeNumber uint32 `protobuf:"varint,6,opt,name=node_number,json=nodeNumber,proto3" json:"node_number,omitempty"` + // Network + // + // x-displayName: "VPC Network for Local Interface" + // Network for the local interface of the node + LocalNetwork *views.GCPVPCNetworkChoiceType `protobuf:"bytes,2,opt,name=local_network,json=localNetwork,proto3" json:"local_network,omitempty"` + // Subnet + // + // x-displayName: "Subnet for Local Interface" + // Subnet for the local interface of the node. + LocalSubnet *views.GCPVPCSubnetChoiceType `protobuf:"bytes,5,opt,name=local_subnet,json=localSubnet,proto3" json:"local_subnet,omitempty"` // Performance Enhancement Choice // // x-displayName: "Performance Enhancement Mode" @@ -1228,6 +1252,34 @@ func (m *GCPVPCIngressGwReplaceType) XXX_DiscardUnknown() { var xxx_messageInfo_GCPVPCIngressGwReplaceType proto.InternalMessageInfo +func (m *GCPVPCIngressGwReplaceType) GetGcpZoneNames() []string { + if m != nil { + return m.GcpZoneNames + } + return nil +} + +func (m *GCPVPCIngressGwReplaceType) GetNodeNumber() uint32 { + if m != nil { + return m.NodeNumber + } + return 0 +} + +func (m *GCPVPCIngressGwReplaceType) GetLocalNetwork() *views.GCPVPCNetworkChoiceType { + if m != nil { + return m.LocalNetwork + } + return nil +} + +func (m *GCPVPCIngressGwReplaceType) GetLocalSubnet() *views.GCPVPCSubnetChoiceType { + if m != nil { + return m.LocalSubnet + } + return nil +} + func (m *GCPVPCIngressGwReplaceType) GetPerformanceEnhancementMode() *views.PerformanceEnhancementModeType { if m != nil { return m.PerformanceEnhancementMode @@ -1240,6 +1292,40 @@ func (m *GCPVPCIngressGwReplaceType) GetPerformanceEnhancementMode() *views.Perf // x-displayName: "GCP Ingress/Egress Gateway" // Two interface GCP ingress/egress site type GCPVPCIngressEgressGwReplaceType struct { + // GCP zones + // + // x-required + // x-displayName: "GCP zone names" + // x-required + // x-example: "us-west1-a, us-west1-b, us-west1-c" + // List of zones when instances will be created, needs to match with region selected. + GcpZoneNames []string `protobuf:"bytes,24,rep,name=gcp_zone_names,json=gcpZoneNames,proto3" json:"gcp_zone_names,omitempty"` + // Number of main nodes + // + // x-displayName: "Number of main nodes" + // x-example: "1" + // Number of main nodes to create, either 1 or 3. + NodeNumber uint32 `protobuf:"varint,23,opt,name=node_number,json=nodeNumber,proto3" json:"node_number,omitempty"` + // Network + // + // x-displayName: "VPC Network for Inside Interface" + // Network for the inside interface of the node + InsideNetwork *views.GCPVPCNetworkChoiceType `protobuf:"bytes,2,opt,name=inside_network,json=insideNetwork,proto3" json:"inside_network,omitempty"` + // Subnet + // + // x-displayName: "Subnet for Inside Interface" + // Subnet for the inside interface of the node. + InsideSubnet *views.GCPVPCSubnetChoiceType `protobuf:"bytes,21,opt,name=inside_subnet,json=insideSubnet,proto3" json:"inside_subnet,omitempty"` + // Network + // + // x-displayName: "VPC Network for Outside Interface" + // Network for the outside interface of the node + OutsideNetwork *views.GCPVPCNetworkChoiceType `protobuf:"bytes,3,opt,name=outside_network,json=outsideNetwork,proto3" json:"outside_network,omitempty"` + // Subnet + // + // x-displayName: "Subnet for Outside Interface" + // Subnet for the outside interface of the node. + OutsideSubnet *views.GCPVPCSubnetChoiceType `protobuf:"bytes,22,opt,name=outside_subnet,json=outsideSubnet,proto3" json:"outside_subnet,omitempty"` // Manage Firewall Policy // // x-displayName: "Manage Firewall Policy" @@ -1521,6 +1607,48 @@ func (m *GCPVPCIngressEgressGwReplaceType) GetOutsideStaticRouteChoice() isGCPVP return nil } +func (m *GCPVPCIngressEgressGwReplaceType) GetGcpZoneNames() []string { + if m != nil { + return m.GcpZoneNames + } + return nil +} + +func (m *GCPVPCIngressEgressGwReplaceType) GetNodeNumber() uint32 { + if m != nil { + return m.NodeNumber + } + return 0 +} + +func (m *GCPVPCIngressEgressGwReplaceType) GetInsideNetwork() *views.GCPVPCNetworkChoiceType { + if m != nil { + return m.InsideNetwork + } + return nil +} + +func (m *GCPVPCIngressEgressGwReplaceType) GetInsideSubnet() *views.GCPVPCSubnetChoiceType { + if m != nil { + return m.InsideSubnet + } + return nil +} + +func (m *GCPVPCIngressEgressGwReplaceType) GetOutsideNetwork() *views.GCPVPCNetworkChoiceType { + if m != nil { + return m.OutsideNetwork + } + return nil +} + +func (m *GCPVPCIngressEgressGwReplaceType) GetOutsideSubnet() *views.GCPVPCSubnetChoiceType { + if m != nil { + return m.OutsideSubnet + } + return nil +} + func (m *GCPVPCIngressEgressGwReplaceType) GetNoNetworkPolicy() *schema.Empty { if x, ok := m.GetNetworkPolicyChoice().(*GCPVPCIngressEgressGwReplaceType_NoNetworkPolicy); ok { return x.NoNetworkPolicy @@ -1675,6 +1803,30 @@ func (*GCPVPCIngressEgressGwReplaceType) XXX_OneofWrappers() []interface{} { // x-displayName: "GCP App Stack Cluster" // App Stack cluster of single interface GCP nodes type GCPVPCVoltstackClusterReplaceType struct { + // GCP zones + // + // x-required + // x-displayName: "GCP zone names" + // x-required + // x-example: "us-west1-a, us-west1-b, us-west1-c" + // List of zones when instances will be created, needs to match with region selected. + GcpZoneNames []string `protobuf:"bytes,36,rep,name=gcp_zone_names,json=gcpZoneNames,proto3" json:"gcp_zone_names,omitempty"` + // Number of main nodes + // + // x-displayName: "Number of main Nodes" + // x-example: "1" + // Number of main nodes to create, either 1 or 3. + NodeNumber uint32 `protobuf:"varint,18,opt,name=node_number,json=nodeNumber,proto3" json:"node_number,omitempty"` + // Network + // + // x-displayName: "VPC Network for Local Interface" + // Network for the local interface of the node + SiteLocalNetwork *views.GCPVPCNetworkChoiceType `protobuf:"bytes,2,opt,name=site_local_network,json=siteLocalNetwork,proto3" json:"site_local_network,omitempty"` + // Subnet + // + // x-displayName: "Subnet for Local Interface" + // Subnet for the local interface of the node. + SiteLocalSubnet *views.GCPVPCSubnetChoiceType `protobuf:"bytes,19,opt,name=site_local_subnet,json=siteLocalSubnet,proto3" json:"site_local_subnet,omitempty"` // Manage Firewall Policy // // x-displayName: "Manage Firewall Policy" @@ -1913,6 +2065,34 @@ func (m *GCPVPCVoltstackClusterReplaceType) GetOutsideStaticRouteChoice() isGCPV return nil } +func (m *GCPVPCVoltstackClusterReplaceType) GetGcpZoneNames() []string { + if m != nil { + return m.GcpZoneNames + } + return nil +} + +func (m *GCPVPCVoltstackClusterReplaceType) GetNodeNumber() uint32 { + if m != nil { + return m.NodeNumber + } + return 0 +} + +func (m *GCPVPCVoltstackClusterReplaceType) GetSiteLocalNetwork() *views.GCPVPCNetworkChoiceType { + if m != nil { + return m.SiteLocalNetwork + } + return nil +} + +func (m *GCPVPCVoltstackClusterReplaceType) GetSiteLocalSubnet() *views.GCPVPCSubnetChoiceType { + if m != nil { + return m.SiteLocalSubnet + } + return nil +} + func (m *GCPVPCVoltstackClusterReplaceType) GetNoNetworkPolicy() *schema.Empty { if x, ok := m.GetNetworkPolicyChoice().(*GCPVPCVoltstackClusterReplaceType_NoNetworkPolicy); ok { return x.NoNetworkPolicy @@ -2270,6 +2450,11 @@ type GlobalSpecType struct { // x-displayName: "Custom DNS" // custom dns configure to the CE site CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,48,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` // Reference to terraform parameters // // x-displayName: "Terraform Parameters" @@ -2654,6 +2839,13 @@ func (m *GlobalSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + func (m *GlobalSpecType) GetTfParams() *views.ObjectRefType { if m != nil { return m.TfParams @@ -2742,7 +2934,8 @@ type CreateSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,48,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -3042,6 +3235,13 @@ func (m *CreateSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3064,6 +3264,7 @@ func (*CreateSpecType) XXX_OneofWrappers() []interface{} { // x-displayName: "Replace GCP VPC site" // Shape of the GCP VPC site replace specification type ReplaceSpecType struct { + GcpRegion string `protobuf:"bytes,1,opt,name=gcp_region,json=gcpRegion,proto3" json:"gcp_region,omitempty"` // Site Type // // x-displayName: "Edit Networking Config" @@ -3077,9 +3278,13 @@ type ReplaceSpecType struct { SiteType isReplaceSpecType_SiteType `protobuf_oneof:"site_type"` // Types that are valid to be assigned to Deployment: // *ReplaceSpecType_CloudCredentials - Deployment isReplaceSpecType_Deployment `protobuf_oneof:"deployment"` - Address string `protobuf:"bytes,15,opt,name=address,proto3" json:"address,omitempty"` - Coordinates *site.Coordinates `protobuf:"bytes,16,opt,name=coordinates,proto3" json:"coordinates,omitempty"` + Deployment isReplaceSpecType_Deployment `protobuf_oneof:"deployment"` + InstanceType string `protobuf:"bytes,8,opt,name=instance_type,json=instanceType,proto3" json:"instance_type,omitempty"` + NodesPerAz uint32 `protobuf:"varint,9,opt,name=nodes_per_az,json=nodesPerAz,proto3" json:"nodes_per_az,omitempty"` + DiskSize uint32 `protobuf:"varint,12,opt,name=disk_size,json=diskSize,proto3" json:"disk_size,omitempty"` + SshKey string `protobuf:"bytes,13,opt,name=ssh_key,json=sshKey,proto3" json:"ssh_key,omitempty"` + Address string `protobuf:"bytes,15,opt,name=address,proto3" json:"address,omitempty"` + Coordinates *site.Coordinates `protobuf:"bytes,16,opt,name=coordinates,proto3" json:"coordinates,omitempty"` // Types that are valid to be assigned to LogsReceiverChoice: // *ReplaceSpecType_LogsStreamingDisabled // *ReplaceSpecType_LogReceiver @@ -3098,7 +3303,8 @@ type ReplaceSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,48,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -3237,6 +3443,13 @@ func (m *ReplaceSpecType) GetPrivateConnectivityChoice() isReplaceSpecType_Priva return nil } +func (m *ReplaceSpecType) GetGcpRegion() string { + if m != nil { + return m.GcpRegion + } + return "" +} + func (m *ReplaceSpecType) GetIngressGw() *GCPVPCIngressGwReplaceType { if x, ok := m.GetSiteType().(*ReplaceSpecType_IngressGw); ok { return x.IngressGw @@ -3265,6 +3478,34 @@ func (m *ReplaceSpecType) GetCloudCredentials() *views.ObjectRefType { return nil } +func (m *ReplaceSpecType) GetInstanceType() string { + if m != nil { + return m.InstanceType + } + return "" +} + +func (m *ReplaceSpecType) GetNodesPerAz() uint32 { + if m != nil { + return m.NodesPerAz + } + return 0 +} + +func (m *ReplaceSpecType) GetDiskSize() uint32 { + if m != nil { + return m.DiskSize + } + return 0 +} + +func (m *ReplaceSpecType) GetSshKey() string { + if m != nil { + return m.SshKey + } + return "" +} + func (m *ReplaceSpecType) GetAddress() string { if m != nil { return m.Address @@ -3342,6 +3583,13 @@ func (m *ReplaceSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3412,7 +3660,8 @@ type GetSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,47,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,48,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -3772,6 +4021,13 @@ func (m *GetSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3829,351 +4085,357 @@ func init() { } var fileDescriptor_29b986390e509b9b = []byte{ - // 5504 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x4b, 0x6c, 0x1c, 0x47, - 0x7a, 0xbf, 0x8a, 0x1c, 0x92, 0xc3, 0xe2, 0xab, 0xd9, 0x24, 0xc5, 0x31, 0x25, 0x91, 0x2d, 0x7a, - 0x6d, 0x93, 0x54, 0xf3, 0x31, 0x3d, 0x43, 0x8a, 0xd2, 0xda, 0xb2, 0xd8, 0x23, 0x8a, 0x0f, 0xbd, - 0xb8, 0x3d, 0x92, 0xbc, 0xf6, 0xfe, 0xbd, 0xbd, 0xc5, 0x99, 0xe2, 0xb0, 0xff, 0xec, 0xe9, 0x9a, - 0x74, 0xf5, 0x0c, 0x4d, 0x25, 0xc2, 0x2e, 0xb4, 0x40, 0x0e, 0x49, 0x80, 0x0d, 0x8c, 0x24, 0x07, - 0x23, 0x87, 0x9c, 0x82, 0xc0, 0x87, 0x20, 0xe7, 0x1d, 0x1f, 0x04, 0x01, 0x01, 0x16, 0x3e, 0xe9, - 0x90, 0x83, 0x61, 0x24, 0xc0, 0x2e, 0x7d, 0x88, 0x37, 0x01, 0x82, 0x3d, 0x04, 0xc8, 0x42, 0x08, - 0x90, 0xa0, 0xab, 0x1f, 0xec, 0x9e, 0xe9, 0x19, 0xd1, 0x14, 0xb5, 0x8e, 0xd7, 0xbc, 0x58, 0x9c, - 0xae, 0xef, 0xf7, 0xfb, 0xaa, 0xaa, 0xab, 0xea, 0xfb, 0xd5, 0x57, 0x35, 0x63, 0x28, 0x56, 0x30, - 0x9d, 0xd1, 0xc8, 0x2c, 0xcd, 0x6d, 0xe3, 0x22, 0x9a, 0xad, 0x68, 0x78, 0x97, 0xce, 0x16, 0x72, - 0x25, 0xb5, 0x52, 0xca, 0xa9, 0x54, 0xb3, 0xf0, 0xac, 0xb5, 0x57, 0xc2, 0x74, 0xa6, 0x64, 0x12, - 0x8b, 0xf0, 0x82, 0x63, 0x3d, 0xe3, 0x58, 0xcf, 0x30, 0xeb, 0x99, 0xa0, 0xf5, 0xc8, 0x74, 0x41, - 0xb3, 0xb6, 0xcb, 0x9b, 0x33, 0x39, 0x52, 0x9c, 0x2d, 0x90, 0x02, 0x99, 0x65, 0xc0, 0xcd, 0xf2, - 0x16, 0xfb, 0xc4, 0x3e, 0xb0, 0xbf, 0x1c, 0xc2, 0x91, 0xb1, 0x02, 0x21, 0x05, 0x1d, 0x1f, 0x58, - 0x59, 0x5a, 0x11, 0x53, 0x0b, 0x15, 0x4b, 0x9e, 0x41, 0xb8, 0x7e, 0x5b, 0x3a, 0xc6, 0x56, 0xb0, - 0x4a, 0x23, 0x53, 0x61, 0x03, 0x03, 0x5b, 0xbb, 0xc4, 0xdc, 0x51, 0xb7, 0x34, 0x13, 0xef, 0x22, - 0x5d, 0x0f, 0xd9, 0x9e, 0x09, 0xdb, 0x92, 0x92, 0xa5, 0x11, 0xc3, 0x2b, 0x1c, 0x0d, 0x17, 0xd6, - 0xb6, 0x7d, 0xe4, 0x95, 0x70, 0x79, 0xb0, 0xe8, 0x6c, 0x4d, 0x27, 0x22, 0x5d, 0xcb, 0x23, 0x0b, - 0xbb, 0xa5, 0x42, 0x7d, 0x17, 0xab, 0x61, 0xd7, 0xdf, 0x89, 0x7a, 0x09, 0x76, 0x05, 0xd4, 0xa0, - 0x97, 0x37, 0x22, 0xad, 0x2c, 0x62, 0xa2, 0x42, 0xd8, 0x70, 0x2c, 0xca, 0x30, 0x60, 0x30, 0xfe, - 0xef, 0x31, 0x38, 0xb0, 0x92, 0xd9, 0xb8, 0xbf, 0x91, 0x59, 0x33, 0x0a, 0x26, 0xa6, 0x74, 0x65, - 0xf7, 0xee, 0x5e, 0x09, 0xf3, 0x2a, 0xe4, 0xec, 0x97, 0x99, 0xc3, 0xa6, 0xa5, 0x6d, 0x69, 0x38, - 0xaf, 0x6e, 0xef, 0x26, 0x80, 0x00, 0x26, 0x3a, 0xe5, 0xf9, 0xcf, 0xab, 0xa0, 0xbf, 0x90, 0x2b, - 0x4d, 0x6f, 0xee, 0x11, 0x7d, 0xba, 0x42, 0x74, 0xab, 0x88, 0xe9, 0xf6, 0x6f, 0xab, 0xe0, 0xd4, - 0xcf, 0x7f, 0xfd, 0xb8, 0x75, 0xd8, 0x1c, 0x4a, 0x5c, 0x55, 0xea, 0xcb, 0x95, 0xde, 0x42, 0xae, - 0x94, 0xf1, 0xd8, 0x56, 0x77, 0xf9, 0x77, 0xa0, 0xfd, 0x44, 0x7d, 0x40, 0x0c, 0xac, 0x1a, 0xa8, - 0x88, 0x69, 0x22, 0x26, 0xb4, 0x4e, 0x74, 0xca, 0x49, 0xc6, 0xf4, 0x09, 0xe8, 0x8e, 0x83, 0x39, - 0x70, 0xb9, 0x3d, 0x47, 0x8c, 0x2d, 0xad, 0x60, 0x33, 0xb7, 0x7d, 0x08, 0x5a, 0xb8, 0x56, 0xef, - 0xaf, 0x04, 0xb0, 0xff, 0x8a, 0x99, 0x2d, 0x89, 0xab, 0x4a, 0x77, 0x21, 0x57, 0x7a, 0x8f, 0x18, - 0xf8, 0xb6, 0x4d, 0xc3, 0x8b, 0xb0, 0xcb, 0x20, 0x79, 0xac, 0x1a, 0xe5, 0xe2, 0x26, 0x36, 0x13, - 0xed, 0x02, 0x98, 0xe8, 0x91, 0xbb, 0x6c, 0xeb, 0xf6, 0xa9, 0x98, 0xd4, 0x02, 0x5a, 0x15, 0x68, - 0x97, 0xdf, 0x66, 0xc5, 0xfc, 0x3b, 0xb0, 0x47, 0x27, 0x39, 0xa4, 0xab, 0xee, 0x68, 0x49, 0xb4, - 0x08, 0x60, 0xa2, 0x4b, 0x12, 0x67, 0xa2, 0x86, 0xb7, 0xd3, 0x51, 0xb7, 0x1d, 0xcb, 0xcc, 0x36, - 0xd1, 0x72, 0xd8, 0xee, 0x2c, 0x39, 0xf6, 0x0f, 0x9f, 0x00, 0xa0, 0x74, 0x33, 0x22, 0xb7, 0x94, - 0xbf, 0x0b, 0x9d, 0xcf, 0x2a, 0x2d, 0x6f, 0x1a, 0xd8, 0x4a, 0xb4, 0x31, 0xde, 0x0b, 0x4d, 0x78, - 0xb3, 0xcc, 0xb0, 0x8e, 0xb6, 0x8b, 0xd1, 0x38, 0x85, 0xfc, 0x8f, 0xe1, 0xd9, 0x12, 0x36, 0xb7, - 0x88, 0x59, 0x44, 0x46, 0x0e, 0xab, 0xd8, 0xd8, 0xb6, 0xff, 0x2d, 0x62, 0xc3, 0x52, 0x8b, 0x24, - 0x8f, 0x13, 0xd3, 0xcc, 0x4b, 0x2a, 0xd2, 0xcb, 0xc6, 0x01, 0x70, 0xf9, 0x00, 0x77, 0x8b, 0xe4, - 0x1d, 0x6f, 0xf1, 0xc7, 0x55, 0x00, 0x7e, 0x53, 0x05, 0x40, 0x19, 0x29, 0x35, 0xb4, 0xbc, 0x3c, - 0xf7, 0xa4, 0x0a, 0x44, 0xc8, 0xc3, 0xb6, 0xdb, 0x24, 0x8f, 0x29, 0xdf, 0x99, 0x14, 0xd3, 0xe2, - 0x82, 0x28, 0x89, 0xf3, 0xf0, 0x34, 0xe4, 0x96, 0xf2, 0x15, 0xdb, 0x38, 0x2f, 0xdc, 0x71, 0xc6, - 0x34, 0xdf, 0x92, 0x9e, 0x5f, 0x8f, 0xc5, 0x5b, 0xb9, 0xd8, 0x7a, 0x2c, 0xde, 0xc1, 0xc5, 0xc7, - 0xff, 0xeb, 0x34, 0x7c, 0x25, 0x34, 0xda, 0x96, 0x83, 0x63, 0x8e, 0x36, 0x1c, 0x73, 0x6b, 0x9f, - 0x57, 0xc1, 0x19, 0x7f, 0x4c, 0x15, 0xcb, 0xba, 0xa5, 0x4d, 0x1b, 0x5a, 0xae, 0x6e, 0xf4, 0x9d, - 0x37, 0xc7, 0x12, 0x57, 0x95, 0x66, 0x96, 0x87, 0x18, 0x87, 0x89, 0x97, 0x32, 0x0e, 0x87, 0x9b, - 0x8f, 0xc3, 0x77, 0x61, 0xaf, 0x66, 0x50, 0xcd, 0xb6, 0x7f, 0xe1, 0x81, 0xd8, 0xe3, 0x30, 0x79, - 0x23, 0xf1, 0x3e, 0x74, 0x1f, 0x78, 0x43, 0x71, 0xe8, 0xa8, 0x43, 0xb1, 0xdb, 0xe1, 0x71, 0xc7, - 0xe2, 0x0f, 0x60, 0x1f, 0x29, 0x5b, 0xa1, 0x3a, 0xb7, 0x1e, 0xb9, 0xce, 0xbd, 0x2e, 0x95, 0x57, - 0xe9, 0xef, 0x43, 0xef, 0x89, 0x57, 0xeb, 0xd3, 0x47, 0xad, 0x75, 0x8f, 0x4b, 0xe4, 0x56, 0x5b, - 0x86, 0xfd, 0x06, 0xf1, 0x6a, 0xac, 0x96, 0x88, 0xae, 0xe5, 0xf6, 0xd8, 0x2a, 0xd1, 0x25, 0x0d, - 0xd6, 0x90, 0x2f, 0x17, 0x4b, 0xd6, 0xde, 0xea, 0x29, 0xa5, 0xcf, 0x20, 0x6e, 0xbd, 0x36, 0x98, - 0x39, 0x4f, 0xe1, 0x30, 0xca, 0x59, 0x5a, 0x05, 0x87, 0x79, 0x34, 0x4c, 0x13, 0x1d, 0x8c, 0xe9, - 0x52, 0x0d, 0x53, 0x6d, 0x2c, 0x9a, 0x59, 0x62, 0xf0, 0x20, 0xab, 0x86, 0xa9, 0x5d, 0xe9, 0xd5, - 0x53, 0xca, 0x10, 0x8a, 0x2a, 0xe4, 0xff, 0x12, 0xc0, 0xf3, 0xae, 0x57, 0x77, 0xde, 0xe7, 0x7d, - 0xbe, 0x03, 0xff, 0xe7, 0x99, 0x7f, 0xf9, 0x70, 0xfe, 0xdd, 0xd9, 0x9d, 0xbf, 0xee, 0x3e, 0x0e, - 0x56, 0xc4, 0xe9, 0xbd, 0xd5, 0x53, 0xca, 0x28, 0x6a, 0x6a, 0xcb, 0x5f, 0x85, 0x9c, 0x41, 0xd4, - 0x2d, 0x62, 0xee, 0x22, 0x33, 0xaf, 0x96, 0x4c, 0xf2, 0xc1, 0x5e, 0xa2, 0xb3, 0x49, 0x7f, 0x02, - 0xa5, 0xd7, 0x20, 0xd7, 0x1d, 0xf3, 0x0d, 0xdb, 0x9a, 0xff, 0x29, 0x80, 0xe7, 0xdc, 0x96, 0x85, - 0x68, 0x0e, 0x5a, 0x05, 0x19, 0xdf, 0x95, 0xc3, 0xb5, 0x2a, 0xc8, 0x1d, 0xea, 0x5a, 0xa0, 0x8c, - 0xa0, 0x86, 0x16, 0xfc, 0x2d, 0x38, 0x1c, 0xf6, 0x8e, 0x74, 0x9d, 0xec, 0xda, 0xff, 0x4d, 0x0c, - 0x36, 0x6d, 0xce, 0xe0, 0x56, 0x80, 0x6e, 0xc9, 0x06, 0x2d, 0xe9, 0xba, 0x3b, 0xce, 0x0a, 0x3a, - 0xd9, 0x0c, 0x44, 0x97, 0xee, 0x26, 0x44, 0x2d, 0xf6, 0x38, 0x5b, 0x61, 0xf6, 0xde, 0x2c, 0xd8, - 0x82, 0x03, 0x61, 0x02, 0x55, 0xd7, 0xa8, 0x95, 0xe8, 0x61, 0x2c, 0xe9, 0xe8, 0xa9, 0x10, 0x24, - 0xc8, 0x10, 0xc3, 0xc0, 0x39, 0x7b, 0x2d, 0xbe, 0xa9, 0x51, 0x8b, 0xf5, 0x41, 0x8b, 0xd2, 0x5f, - 0x08, 0x9a, 0xd8, 0x05, 0xfc, 0x0d, 0x38, 0x60, 0x10, 0x35, 0x9f, 0x53, 0x73, 0x7a, 0x99, 0x5a, - 0xd8, 0x54, 0x0b, 0x26, 0x29, 0x97, 0x12, 0x23, 0x8d, 0x6b, 0x2b, 0xc7, 0xec, 0x70, 0xb1, 0xda, - 0xaa, 0x70, 0x06, 0xb9, 0x96, 0xcb, 0x38, 0xb0, 0x15, 0x1b, 0xc5, 0xff, 0x21, 0x3c, 0x53, 0xcb, - 0xa4, 0x7a, 0x73, 0xb9, 0x62, 0x24, 0xce, 0x30, 0xd2, 0xf1, 0xc8, 0xca, 0xdf, 0xd9, 0xfc, 0xff, - 0x38, 0x67, 0x29, 0x78, 0x8b, 0x0d, 0xc0, 0xe1, 0x8f, 0x1f, 0x72, 0xb5, 0x4c, 0xae, 0xd7, 0xe1, - 0x7c, 0xc8, 0xe7, 0x1d, 0x87, 0xfe, 0xbe, 0xc1, 0xef, 0xc1, 0x91, 0x3a, 0xe7, 0xee, 0xea, 0x57, - 0x31, 0x12, 0x67, 0x8f, 0xc3, 0xf7, 0xe9, 0xb0, 0xef, 0x35, 0xc3, 0x75, 0x9d, 0x85, 0xc3, 0xb4, - 0xa8, 0xe6, 0xfc, 0x2e, 0x57, 0x4b, 0xe5, 0x4d, 0x5d, 0xcb, 0xa9, 0x5a, 0x29, 0x31, 0xf6, 0xdc, - 0x8e, 0x8c, 0x29, 0x83, 0xb4, 0x78, 0xf0, 0xba, 0x36, 0x18, 0x74, 0xad, 0xc4, 0xdf, 0x82, 0x83, - 0x35, 0xa4, 0x15, 0xcb, 0x66, 0x14, 0x0e, 0xc1, 0xd8, 0x1f, 0x62, 0xac, 0x58, 0x6b, 0x25, 0xbb, - 0x8e, 0x06, 0xf1, 0x3a, 0x84, 0x5a, 0xc8, 0xd2, 0x72, 0xaa, 0x49, 0xca, 0x16, 0xa6, 0x89, 0xbe, - 0xe7, 0x32, 0xb6, 0x29, 0x83, 0x06, 0x71, 0x9a, 0x9b, 0x65, 0x50, 0x85, 0x21, 0xf9, 0x02, 0x1c, - 0x8c, 0x64, 0xe4, 0x18, 0xe3, 0x74, 0x64, 0x6f, 0x67, 0x35, 0x2b, 0x44, 0xe2, 0x8d, 0x4f, 0xdf, - 0x15, 0xaf, 0xd5, 0x3b, 0xba, 0x07, 0x13, 0x06, 0xf1, 0xc7, 0x52, 0xd8, 0x19, 0xff, 0xdc, 0xea, - 0xb7, 0x2b, 0x43, 0x06, 0x71, 0x47, 0x4a, 0x88, 0x56, 0x83, 0x43, 0xd1, 0x9c, 0x03, 0x47, 0x6f, - 0x40, 0xbb, 0x32, 0x40, 0x22, 0x5c, 0x7d, 0xed, 0xfa, 0x0d, 0x3f, 0xa9, 0x02, 0x04, 0x47, 0x3c, - 0xfd, 0xd6, 0x9f, 0x14, 0xa5, 0xb4, 0x28, 0xa5, 0x44, 0x49, 0x94, 0x92, 0x62, 0x4a, 0x94, 0x24, - 0x78, 0x16, 0x0e, 0xd9, 0x6d, 0x13, 0xdc, 0xf5, 0x41, 0xf0, 0xd6, 0x7b, 0xbe, 0x75, 0x5e, 0x5c, - 0x84, 0xaf, 0x45, 0xa8, 0xbc, 0xfe, 0x64, 0x52, 0x94, 0xe6, 0xc5, 0x64, 0x5a, 0x4c, 0x5e, 0x14, - 0x53, 0x73, 0x62, 0x7a, 0x5e, 0xbe, 0x00, 0x87, 0xc2, 0x11, 0x56, 0xcd, 0xb1, 0xb0, 0xcc, 0xf3, - 0x8f, 0xab, 0xa0, 0xfd, 0x69, 0x15, 0xb4, 0xed, 0x57, 0x41, 0xfb, 0x82, 0x98, 0x4a, 0x89, 0x17, - 0xe5, 0x0b, 0x70, 0x30, 0xbc, 0xf0, 0xba, 0xb6, 0x03, 0x8f, 0xab, 0xa0, 0xf3, 0x69, 0x15, 0xc4, - 0xf7, 0xab, 0xa0, 0xe3, 0x92, 0x28, 0xcd, 0x89, 0xc9, 0x39, 0x79, 0x06, 0x0e, 0xd5, 0x2c, 0x89, - 0xae, 0xf5, 0xd0, 0xe3, 0x2a, 0xe8, 0xfe, 0x45, 0x15, 0x80, 0xa7, 0x55, 0xd0, 0xb5, 0x5f, 0x05, - 0x6d, 0x49, 0x49, 0x4c, 0xa6, 0xe4, 0x14, 0x1c, 0xae, 0x5b, 0x10, 0x5c, 0x44, 0xe2, 0x71, 0x15, - 0x8c, 0xb8, 0x88, 0x57, 0xf6, 0xab, 0x20, 0x2e, 0x2d, 0x88, 0xd2, 0x45, 0x51, 0x5a, 0x94, 0x67, - 0xe1, 0x69, 0xb6, 0xe7, 0xb2, 0x15, 0x63, 0x18, 0x63, 0x7b, 0x19, 0x73, 0x31, 0xa3, 0xb6, 0x97, - 0x54, 0x52, 0x4c, 0x49, 0x72, 0x0a, 0x8e, 0x44, 0x4c, 0x81, 0x20, 0xa8, 0xcf, 0x05, 0xf5, 0xb2, - 0xaa, 0xcd, 0x8b, 0xc9, 0x05, 0x39, 0x0d, 0xcf, 0x44, 0x8d, 0xbb, 0x20, 0x8a, 0x77, 0x51, 0xfd, - 0x0c, 0xb5, 0x28, 0x26, 0x2f, 0xad, 0xc7, 0xe2, 0x31, 0xae, 0x6d, 0x3d, 0x16, 0x6f, 0xe3, 0xda, - 0xd7, 0x63, 0xf1, 0x38, 0xd7, 0xb9, 0x1e, 0x8b, 0x77, 0x71, 0xdd, 0xeb, 0xb1, 0xf8, 0x2b, 0xdc, - 0xc8, 0x7a, 0x2c, 0x3e, 0xca, 0x8d, 0xad, 0xc7, 0xe2, 0xbd, 0x5c, 0xdf, 0x7a, 0x2c, 0xde, 0xcf, - 0xf1, 0xeb, 0xb1, 0xf8, 0x39, 0x6e, 0x74, 0xfc, 0x3f, 0x06, 0xe1, 0x88, 0xa3, 0x92, 0xee, 0x13, - 0xdd, 0xa2, 0x16, 0xca, 0xed, 0xb8, 0x8b, 0x18, 0x93, 0xde, 0xc5, 0x86, 0xd2, 0x3b, 0xf3, 0x79, - 0x15, 0x24, 0x42, 0xdb, 0x39, 0x06, 0x9e, 0xce, 0x91, 0xe2, 0x26, 0xf1, 0x74, 0xf7, 0xa8, 0x79, - 0x36, 0x71, 0x55, 0x69, 0x68, 0x76, 0x08, 0xd1, 0x3d, 0xf8, 0x52, 0x44, 0x37, 0xdf, 0x5c, 0x74, - 0xff, 0x08, 0xf2, 0xec, 0x35, 0x1f, 0xd7, 0x0e, 0x90, 0xb3, 0xd9, 0x6e, 0x06, 0x77, 0x81, 0xef, - 0xc3, 0xfe, 0x80, 0x07, 0x57, 0xc9, 0x0e, 0x1c, 0x55, 0xc9, 0xf6, 0xf9, 0xfc, 0xcd, 0xb4, 0x6c, - 0xdb, 0xb1, 0x69, 0xd9, 0xf6, 0x97, 0xa6, 0x65, 0x7f, 0x76, 0x28, 0x2d, 0xfb, 0xea, 0x71, 0x69, - 0xd9, 0x23, 0xaa, 0xd8, 0xf8, 0x31, 0xab, 0xd8, 0xce, 0xaf, 0x57, 0xc5, 0xf6, 0x1f, 0x97, 0x8a, - 0xed, 0x3a, 0x16, 0x15, 0xdb, 0xfd, 0x3b, 0x52, 0xb1, 0xe7, 0x8e, 0xa4, 0x62, 0x0b, 0xb0, 0x4e, - 0xff, 0x25, 0x46, 0x8f, 0x43, 0x3e, 0xf6, 0x86, 0xe5, 0x63, 0x33, 0xd9, 0x78, 0xfe, 0xd8, 0x65, - 0xe3, 0xf8, 0xd1, 0x64, 0x63, 0x33, 0xe1, 0x75, 0x18, 0xdd, 0xf8, 0x55, 0x85, 0xd7, 0x0b, 0x29, - 0xc7, 0x48, 0xe1, 0x25, 0xc3, 0x5e, 0x83, 0xa8, 0x3b, 0x8b, 0xd4, 0x7b, 0x27, 0x87, 0xd8, 0xdc, - 0xb4, 0x2b, 0xdd, 0x06, 0xb9, 0xb1, 0x48, 0xdd, 0xd7, 0xc5, 0xbf, 0x0b, 0xbb, 0x82, 0x04, 0x87, - 0xdf, 0xc8, 0xf0, 0x1f, 0x3f, 0x0c, 0x22, 0x5d, 0x72, 0xb8, 0x73, 0x40, 0xfd, 0x36, 0xec, 0xcb, - 0xe3, 0x2d, 0x54, 0xd6, 0x2d, 0xd5, 0x4d, 0xe3, 0xba, 0xf9, 0x8e, 0xe8, 0x49, 0xd6, 0xa1, 0xf4, - 0xba, 0xe6, 0x59, 0xc7, 0x9a, 0x7f, 0x17, 0xf2, 0x5e, 0xfe, 0x37, 0xa7, 0x23, 0x4a, 0x9d, 0x29, - 0x36, 0xcc, 0x38, 0x26, 0xa3, 0xfb, 0xd1, 0x31, 0xcf, 0xd8, 0xd6, 0xfe, 0xbc, 0xea, 0x50, 0x38, - 0x5a, 0xf3, 0xfc, 0xf2, 0x83, 0x27, 0x55, 0x50, 0x81, 0x43, 0x9e, 0x64, 0xec, 0x4e, 0x32, 0x25, - 0xb6, 0x28, 0x4a, 0x62, 0xf2, 0x52, 0x13, 0xb5, 0x98, 0x16, 0x2f, 0xc2, 0x33, 0x70, 0xc8, 0x75, - 0x23, 0x64, 0x58, 0x2c, 0x2f, 0x9b, 0xc8, 0x1e, 0x55, 0x7c, 0x8b, 0x94, 0x84, 0xe3, 0x11, 0x52, - 0xb2, 0x37, 0x39, 0x27, 0x4a, 0x8b, 0x62, 0x4a, 0xb2, 0xd5, 0xa4, 0xf4, 0x1c, 0x1d, 0xd9, 0xf6, - 0xb4, 0x0a, 0x62, 0xb6, 0x8e, 0x9c, 0x17, 0x53, 0xf3, 0xe2, 0x82, 0x3c, 0xd5, 0x40, 0x47, 0xda, - 0xb6, 0xf1, 0xa7, 0x55, 0xd0, 0x61, 0xdb, 0x2e, 0xda, 0x22, 0xf5, 0x52, 0x73, 0x19, 0xd9, 0xe5, - 0xaa, 0x2e, 0xc8, 0x54, 0x57, 0x52, 0x4c, 0x4a, 0xf2, 0x5c, 0x63, 0x19, 0x69, 0x23, 0xce, 0xb9, - 0x88, 0xb3, 0x36, 0x42, 0xba, 0x24, 0xa6, 0xe6, 0x9e, 0xa3, 0x21, 0xcf, 0xbb, 0x00, 0x81, 0x69, - 0xc8, 0x94, 0x98, 0x4a, 0x1f, 0x46, 0x0e, 0x46, 0x88, 0xc8, 0x0b, 0x90, 0x0f, 0x0c, 0xad, 0xa0, - 0x71, 0x50, 0xda, 0xb6, 0x31, 0x69, 0x2b, 0x4f, 0xc3, 0xc1, 0xf0, 0x28, 0x09, 0x98, 0x9f, 0x76, - 0xcd, 0x87, 0x98, 0xb9, 0x24, 0x4a, 0x29, 0x3f, 0x75, 0xeb, 0x08, 0xce, 0x0e, 0x2e, 0xbe, 0x1e, - 0x8b, 0x43, 0xae, 0x6b, 0x3d, 0x16, 0x3f, 0xcb, 0x9d, 0x5b, 0x8f, 0xc5, 0x05, 0xee, 0xbc, 0x2f, - 0x35, 0x1d, 0xf1, 0x39, 0xc4, 0x9d, 0x5e, 0x8f, 0xc5, 0xc7, 0x38, 0x61, 0xfc, 0x5f, 0x80, 0x27, - 0x38, 0xfd, 0x83, 0x05, 0x05, 0x97, 0x74, 0xe4, 0x08, 0x9a, 0xaf, 0x7f, 0x23, 0x24, 0x7d, 0x7a, - 0x25, 0xea, 0xe0, 0xe3, 0x49, 0x15, 0x24, 0x9a, 0xa4, 0xb2, 0x5b, 0xb8, 0x56, 0xd6, 0x1f, 0xf1, - 0xf1, 0x5f, 0x0c, 0x40, 0x21, 0x32, 0x95, 0x1d, 0x6c, 0xe5, 0x37, 0x36, 0xd7, 0xf8, 0xb3, 0xdf, - 0x6d, 0xae, 0xf1, 0x24, 0xcb, 0x78, 0x92, 0x65, 0x3c, 0xc9, 0x32, 0x9e, 0x64, 0x19, 0x4f, 0xb2, - 0x8c, 0xbf, 0x27, 0x59, 0xc6, 0x4f, 0xaf, 0x34, 0x3e, 0xe7, 0x7d, 0x52, 0x05, 0xcb, 0x47, 0xcf, - 0x32, 0xa6, 0xe6, 0xdc, 0x44, 0x63, 0x7a, 0x5e, 0xbe, 0xd6, 0x48, 0x1d, 0x5e, 0xa8, 0xcf, 0x32, - 0x3e, 0x7a, 0x06, 0xa2, 0x8d, 0xe5, 0x4c, 0x03, 0xd9, 0x78, 0x21, 0x22, 0xfd, 0xf8, 0xe8, 0x19, - 0x88, 0x34, 0x96, 0x57, 0x1a, 0xe9, 0xc9, 0x99, 0xc8, 0xb4, 0xa4, 0x5d, 0x9b, 0x48, 0x7b, 0xf9, - 0x76, 0x63, 0xa1, 0x99, 0x6a, 0x94, 0xaf, 0x7c, 0xf4, 0x0c, 0x34, 0x02, 0xc9, 0x6b, 0x0d, 0x65, - 0xe8, 0x6c, 0x64, 0x2a, 0xf3, 0xd1, 0x33, 0xd0, 0x00, 0x20, 0x7f, 0xaf, 0x69, 0x92, 0x33, 0x15, - 0xa9, 0x4f, 0x1f, 0x3d, 0x03, 0x4d, 0x40, 0x72, 0xb6, 0xb9, 0xe6, 0x4d, 0x47, 0xa6, 0x40, 0x1f, - 0x3d, 0x03, 0xcd, 0x50, 0x5f, 0x39, 0x37, 0xfa, 0x51, 0x1f, 0x3c, 0x1f, 0x9d, 0x1b, 0xfd, 0x16, - 0x69, 0xb9, 0x57, 0x4f, 0xb4, 0xdc, 0x89, 0x96, 0x3b, 0xc9, 0xb5, 0x9d, 0xe4, 0xda, 0x5e, 0x38, - 0xd7, 0x76, 0xf9, 0x47, 0x9f, 0x5e, 0x69, 0x72, 0xd6, 0xf4, 0xa4, 0x0a, 0xde, 0x7e, 0x4e, 0xf8, - 0x1f, 0x8b, 0x08, 0xff, 0x5d, 0x76, 0xf8, 0x77, 0x33, 0x43, 0x87, 0x0f, 0xfc, 0xf3, 0xdf, 0x9c, - 0xc0, 0x7f, 0xa3, 0x71, 0xe0, 0x9f, 0x8b, 0xcc, 0x30, 0x1d, 0x3d, 0xea, 0xd7, 0x27, 0x9f, 0x9a, - 0x44, 0xfd, 0x43, 0x84, 0xe8, 0xc8, 0xb0, 0xff, 0x95, 0x43, 0x74, 0x7d, 0x4e, 0x69, 0x8c, 0x13, - 0xc6, 0xff, 0x16, 0x40, 0xde, 0x3d, 0x14, 0xd3, 0x2c, 0xbc, 0x66, 0x6c, 0x11, 0x16, 0x8d, 0xaf, - 0x43, 0xe8, 0xcf, 0x5d, 0x9a, 0x00, 0xec, 0xf4, 0xf0, 0x8d, 0x9f, 0xff, 0xfa, 0x71, 0x6b, 0xe7, - 0x87, 0xa0, 0x7d, 0x3c, 0x66, 0xb6, 0x94, 0xd8, 0x19, 0x21, 0xfc, 0x10, 0x74, 0x4c, 0xb5, 0xcd, - 0x89, 0x49, 0x31, 0x75, 0x70, 0x78, 0xa8, 0x74, 0x96, 0xdc, 0xb9, 0x4b, 0xf9, 0x55, 0xd8, 0x55, - 0x32, 0xb5, 0x0a, 0xb2, 0x30, 0x23, 0x6a, 0xf9, 0x6a, 0x44, 0xd0, 0xc5, 0xae, 0x95, 0xe8, 0xf8, - 0x3f, 0x4b, 0xb0, 0xd7, 0x59, 0x4a, 0xb3, 0x25, 0x9c, 0x63, 0x95, 0xfc, 0xeb, 0x41, 0x08, 0x0b, - 0xb9, 0x92, 0x6a, 0xe2, 0x82, 0x46, 0x0c, 0xf7, 0x40, 0xf5, 0xbf, 0x07, 0x7e, 0x5b, 0x05, 0xa7, - 0x3e, 0xfc, 0x04, 0xfc, 0xdb, 0x00, 0x9c, 0x85, 0x10, 0x51, 0x0d, 0x4d, 0x63, 0x44, 0xad, 0x24, - 0x7f, 0x7e, 0x62, 0x69, 0x63, 0x29, 0x33, 0x29, 0x2c, 0x51, 0x0d, 0x09, 0xcb, 0x88, 0x5a, 0x82, - 0xc2, 0x80, 0x82, 0x66, 0x08, 0x77, 0x91, 0xb6, 0x8b, 0x0c, 0x98, 0x0a, 0x00, 0x24, 0xfe, 0xb5, - 0x5a, 0x80, 0x14, 0x40, 0xac, 0x12, 0xa3, 0x20, 0xdc, 0x20, 0x46, 0x01, 0x2e, 0xc1, 0x3e, 0x06, - 0x32, 0x88, 0x69, 0x6d, 0x3b, 0xae, 0x66, 0x82, 0xc8, 0xdb, 0xf6, 0x73, 0x86, 0x4f, 0x06, 0x3d, - 0x92, 0x9d, 0x3d, 0x22, 0x0a, 0xeb, 0xa8, 0x84, 0x8c, 0x7a, 0x0a, 0xa9, 0x11, 0x45, 0xb0, 0x0a, - 0x77, 0x28, 0xda, 0x41, 0x1e, 0xc5, 0x4a, 0x2d, 0x45, 0x8a, 0x4f, 0x47, 0x53, 0xa4, 0x02, 0x14, - 0x59, 0x4c, 0xca, 0xba, 0x28, 0x64, 0x49, 0xd9, 0xda, 0x16, 0x6e, 0x10, 0x13, 0x23, 0x78, 0x09, - 0x76, 0x31, 0x22, 0x6a, 0x3f, 0x4b, 0xf2, 0x53, 0x41, 0x12, 0x66, 0x17, 0x6c, 0xc5, 0xad, 0x72, - 0x71, 0x13, 0x69, 0xa2, 0xb0, 0x66, 0xe4, 0x35, 0x04, 0x17, 0x83, 0x50, 0x89, 0x9f, 0xac, 0x83, - 0x06, 0x6b, 0x7f, 0x0d, 0xeb, 0xdb, 0x3e, 0x72, 0xdd, 0xad, 0x3d, 0x43, 0x3a, 0x7d, 0x78, 0xb1, - 0x0e, 0x5d, 0xdb, 0x85, 0xeb, 0x65, 0xd3, 0x7e, 0x09, 0xef, 0x60, 0x6a, 0x89, 0x42, 0x56, 0x33, - 0x0a, 0xa8, 0x44, 0x4c, 0x0c, 0xaf, 0xd7, 0x72, 0x49, 0x7c, 0x2a, 0x92, 0x2b, 0x58, 0x9b, 0x75, - 0xb4, 0x83, 0x4c, 0x0b, 0xb1, 0xfa, 0x10, 0x03, 0x53, 0x0d, 0xc1, 0x3b, 0x70, 0x10, 0x95, 0xa9, - 0x65, 0x22, 0xbd, 0x41, 0xc5, 0xbc, 0x42, 0x87, 0x11, 0xd7, 0xd4, 0x2e, 0xbb, 0x97, 0x37, 0xf0, - 0x9e, 0x78, 0x60, 0x06, 0x95, 0x48, 0x42, 0x89, 0xbf, 0xdc, 0x98, 0x30, 0x58, 0xc5, 0x5b, 0x58, - 0xdf, 0x24, 0x65, 0xd3, 0xc0, 0x41, 0xce, 0x6b, 0xb0, 0x0f, 0x97, 0x4d, 0x52, 0xc2, 0xd3, 0x39, - 0x6c, 0xd8, 0xcf, 0x24, 0x3e, 0x39, 0xb1, 0xcc, 0x9e, 0x4c, 0x0a, 0xce, 0xbf, 0x42, 0xc6, 0x2d, - 0x09, 0x70, 0xbd, 0x83, 0x4c, 0x8a, 0x76, 0x45, 0x61, 0x83, 0xe8, 0xc8, 0xc8, 0xc3, 0x25, 0xd8, - 0xe3, 0xb2, 0xb0, 0xe1, 0x93, 0xe4, 0xe7, 0x6a, 0x39, 0xd8, 0xf0, 0x09, 0x36, 0x6f, 0x15, 0x15, - 0x35, 0x03, 0x89, 0xc2, 0x75, 0xcd, 0x60, 0x14, 0x2b, 0xb0, 0xdf, 0xa5, 0x60, 0x2d, 0xdb, 0xc5, - 0x76, 0x57, 0x49, 0xb5, 0x34, 0x59, 0xbf, 0x2c, 0xd8, 0x30, 0x94, 0x37, 0xb5, 0xbc, 0x28, 0x64, - 0x4b, 0x48, 0x33, 0xe0, 0x32, 0xec, 0x76, 0x89, 0x1c, 0x8e, 0xf9, 0x5a, 0x8e, 0x77, 0x6a, 0xe0, - 0x59, 0x6b, 0x46, 0x58, 0xd9, 0xd6, 0xa8, 0x8e, 0x34, 0x43, 0x14, 0x64, 0xac, 0x17, 0xb4, 0x72, - 0x11, 0xbe, 0x1d, 0xa2, 0x91, 0xf8, 0xd9, 0x28, 0x9a, 0x60, 0x97, 0xdc, 0x24, 0xf6, 0x9b, 0x17, - 0x85, 0x65, 0xa3, 0xc0, 0x1a, 0x24, 0x87, 0x08, 0x52, 0xf5, 0x6d, 0xb1, 0x09, 0x82, 0x73, 0xe9, - 0xba, 0x89, 0x8c, 0x9d, 0xad, 0xb2, 0x69, 0x89, 0xc2, 0x0a, 0xb6, 0x37, 0xee, 0x7b, 0xf0, 0x7a, - 0x88, 0x23, 0xcd, 0x2f, 0x44, 0x71, 0xa4, 0x03, 0x1c, 0xcb, 0xb8, 0x48, 0xb7, 0x51, 0x05, 0x1b, - 0xa2, 0x1d, 0xbb, 0xb7, 0xb1, 0x69, 0x57, 0x85, 0xc2, 0x4c, 0x88, 0x67, 0x81, 0x4f, 0x45, 0xf1, - 0x2c, 0x04, 0x78, 0xde, 0x2b, 0x9b, 0x5a, 0x6e, 0x5b, 0x14, 0xb2, 0xbb, 0x9a, 0xf5, 0xc0, 0x61, - 0x81, 0x6f, 0x86, 0x48, 0x16, 0x79, 0x31, 0x8a, 0x64, 0x31, 0xf8, 0x5e, 0x34, 0x1d, 0x19, 0xa2, - 0xb0, 0x66, 0x21, 0x7d, 0x0f, 0xbe, 0x15, 0x42, 0x5f, 0xe2, 0xa7, 0xa3, 0xd0, 0x97, 0x02, 0xe8, - 0x0d, 0x64, 0x6a, 0x54, 0x64, 0xbd, 0x92, 0xc3, 0xf0, 0x8a, 0x3f, 0xc2, 0xd8, 0x5b, 0x95, 0xa2, - 0xf1, 0xc9, 0xe0, 0x0b, 0xb9, 0x5b, 0x36, 0x35, 0xdf, 0xfd, 0x4d, 0xd8, 0x55, 0xf4, 0xc7, 0x78, - 0x92, 0x7f, 0x6b, 0xe2, 0x96, 0x96, 0xcf, 0xeb, 0x98, 0x2d, 0x68, 0x93, 0x42, 0xe0, 0x83, 0x37, - 0xda, 0x43, 0x6b, 0x2d, 0xd6, 0x85, 0xa5, 0x8a, 0x56, 0x11, 0x85, 0x35, 0x6a, 0x22, 0xac, 0xc3, - 0x25, 0x18, 0x2f, 0x1e, 0x8c, 0xaf, 0x86, 0x54, 0xb5, 0x23, 0xed, 0x1a, 0xd9, 0x46, 0xa2, 0xf0, - 0x3d, 0x64, 0x21, 0x13, 0x6e, 0xc1, 0x61, 0x36, 0x57, 0x50, 0x11, 0x9b, 0x5a, 0x2e, 0xb4, 0xfa, - 0xdf, 0x98, 0x70, 0x16, 0xdb, 0x25, 0xa7, 0x68, 0x52, 0x08, 0x7d, 0x74, 0x3e, 0xd5, 0xae, 0x16, - 0xb7, 0x88, 0x61, 0x99, 0x18, 0xe9, 0xa2, 0xf0, 0xbd, 0x32, 0xde, 0xc4, 0x39, 0x51, 0xc8, 0x20, - 0x03, 0xe5, 0x51, 0x63, 0x3f, 0xd2, 0xa1, 0xfd, 0x84, 0x3a, 0x95, 0x98, 0xc4, 0xb0, 0x88, 0x28, - 0xdc, 0x31, 0x2c, 0x64, 0x6a, 0xc4, 0xf7, 0xf3, 0x3e, 0xe4, 0xd9, 0xc4, 0xf5, 0xfc, 0x38, 0x4d, - 0x59, 0x99, 0x70, 0x42, 0x83, 0xef, 0x22, 0xf4, 0xb1, 0x2e, 0xa8, 0xdd, 0xa1, 0x88, 0xe6, 0x88, - 0x28, 0x64, 0x11, 0x11, 0x36, 0x50, 0x59, 0x27, 0xa2, 0x20, 0x9b, 0xe8, 0x81, 0xa6, 0xc3, 0x6c, - 0x0d, 0xbd, 0xd3, 0xf7, 0x6f, 0x35, 0xa7, 0xaf, 0x9b, 0xe9, 0xc8, 0xb0, 0x34, 0x54, 0xb0, 0x2b, - 0xbd, 0xad, 0xe9, 0xf6, 0xa0, 0xea, 0x2a, 0xd3, 0x83, 0x41, 0x31, 0x3b, 0x71, 0x2f, 0x3b, 0x29, - 0xdc, 0xcb, 0x46, 0x0d, 0x81, 0x0c, 0x29, 0x1b, 0x39, 0x4d, 0x17, 0x64, 0xbd, 0xbc, 0xb5, 0x45, - 0x45, 0x61, 0x8d, 0xec, 0x22, 0x28, 0xc3, 0x78, 0x99, 0xba, 0x2d, 0x5d, 0xf0, 0xc0, 0xcb, 0xf5, - 0x6f, 0x26, 0xb7, 0x43, 0x85, 0x0c, 0x31, 0x0d, 0x6c, 0x7a, 0xa1, 0x32, 0x83, 0x4c, 0xa2, 0xdb, - 0xeb, 0x1f, 0x9c, 0xf7, 0x39, 0xd2, 0xfc, 0x64, 0x90, 0x23, 0x38, 0xad, 0x97, 0xe8, 0xf6, 0x66, - 0xd9, 0x34, 0x44, 0xe1, 0xbe, 0x66, 0x16, 0x34, 0x43, 0x43, 0x50, 0xf2, 0x61, 0xf3, 0xfc, 0xeb, - 0x41, 0xd8, 0x7c, 0xa8, 0xd2, 0x7a, 0xb9, 0xb8, 0x59, 0xa6, 0xa2, 0x70, 0x67, 0x5b, 0x23, 0x30, - 0x05, 0x3b, 0xcb, 0xd4, 0x8b, 0xcb, 0x3e, 0xa8, 0x2e, 0x26, 0x5f, 0x43, 0xba, 0x8e, 0xa8, 0x28, - 0xdc, 0xc5, 0x1f, 0x20, 0x0a, 0x17, 0x98, 0x23, 0xa7, 0xbb, 0xa7, 0x3c, 0x4c, 0x6d, 0xc7, 0xde, - 0xdd, 0xc6, 0x0c, 0x86, 0x6d, 0x57, 0x26, 0x2e, 0x10, 0x03, 0x7e, 0xd7, 0xc7, 0x49, 0x07, 0x1d, - 0x5b, 0xbf, 0x66, 0x52, 0x61, 0xc9, 0x28, 0x60, 0x06, 0xcc, 0x20, 0x5d, 0xdb, 0x22, 0xa6, 0xc1, - 0x84, 0x80, 0x07, 0x4e, 0xf1, 0x62, 0x10, 0x1c, 0xd2, 0x1e, 0x48, 0xb7, 0x84, 0x9b, 0x68, 0x07, - 0x0b, 0x19, 0xcd, 0xda, 0x13, 0x85, 0x7b, 0x16, 0xda, 0x76, 0xbb, 0xd3, 0x59, 0x2d, 0x27, 0x83, - 0xc8, 0x60, 0x77, 0xde, 0x44, 0x54, 0xb8, 0x8f, 0x0b, 0x76, 0x23, 0x6f, 0xe3, 0x0a, 0xca, 0xa3, - 0x83, 0xfb, 0x6a, 0x9d, 0x85, 0x5c, 0xc9, 0x31, 0xe4, 0xff, 0x1f, 0x84, 0x9a, 0x93, 0x1e, 0x55, - 0x0b, 0xbb, 0xee, 0x77, 0x27, 0xe6, 0x67, 0x9e, 0xf7, 0xbd, 0xba, 0x99, 0x88, 0x53, 0x4b, 0x39, - 0xf6, 0xb4, 0xca, 0xee, 0xea, 0x77, 0x6a, 0xde, 0x63, 0x9e, 0xc0, 0x7e, 0x8f, 0x1d, 0xfb, 0x4e, - 0x62, 0xcc, 0xc9, 0x77, 0xbf, 0xa2, 0x93, 0xe5, 0x28, 0x57, 0x7d, 0x5a, 0xb8, 0x90, 0xff, 0x03, - 0xd8, 0xef, 0xdf, 0xfb, 0xf3, 0x2f, 0x49, 0xf4, 0x32, 0x87, 0x6f, 0x1e, 0xd6, 0x61, 0xd4, 0x86, - 0xd1, 0xf7, 0xc8, 0x55, 0x6a, 0x4a, 0xf9, 0x3d, 0xd8, 0x9f, 0xd3, 0x49, 0x39, 0xaf, 0xe6, 0x4c, - 0x9c, 0xc7, 0xf6, 0xdc, 0xd3, 0xbd, 0x5b, 0x6b, 0x87, 0xc9, 0x1c, 0xbc, 0xfe, 0xf1, 0xc3, 0x7a, - 0xfc, 0xcf, 0x3f, 0x01, 0xbd, 0x71, 0x30, 0x11, 0xb8, 0x80, 0xb8, 0x0a, 0x14, 0x8e, 0x99, 0x65, - 0x0e, 0xac, 0xf8, 0xb7, 0x60, 0x1c, 0x51, 0xaa, 0x51, 0x0b, 0xe7, 0xdd, 0xdc, 0x5d, 0xf4, 0xb6, - 0xbc, 0xf3, 0xb3, 0x87, 0xe0, 0xcb, 0x2a, 0x00, 0x09, 0xb0, 0x0a, 0x14, 0x1f, 0xc2, 0xff, 0x53, - 0x1b, 0xfb, 0x56, 0x8e, 0xc5, 0x12, 0xf4, 0xd6, 0x5e, 0x09, 0xb3, 0xcb, 0x66, 0x9d, 0xf2, 0xdf, - 0xb7, 0x7d, 0x5e, 0x05, 0x3d, 0x46, 0x72, 0xda, 0x2e, 0xca, 0x23, 0x33, 0x3f, 0x9d, 0x76, 0xb7, - 0x0b, 0x7f, 0xda, 0x06, 0xbf, 0x0b, 0xc3, 0x25, 0xfc, 0xd4, 0x44, 0x5a, 0xf8, 0x40, 0xa8, 0x64, - 0x36, 0xee, 0x89, 0x42, 0x72, 0x61, 0x45, 0x16, 0x94, 0xa5, 0x5b, 0x93, 0xc2, 0xed, 0xa4, 0x50, - 0xc4, 0x79, 0xad, 0x5c, 0x14, 0x02, 0x29, 0x7a, 0x78, 0x29, 0x0c, 0x5e, 0xe4, 0x27, 0x26, 0x16, - 0x7d, 0x70, 0x4a, 0x0a, 0x80, 0xb7, 0xb5, 0xc2, 0x76, 0x08, 0x7a, 0x15, 0xf6, 0x06, 0xa1, 0xc9, - 0x05, 0x7e, 0x66, 0x22, 0xb9, 0xe0, 0x83, 0x17, 0xd2, 0x01, 0x70, 0x05, 0x9b, 0x7b, 0xf5, 0x0c, - 0x4b, 0xb0, 0xd7, 0x92, 0xf2, 0xc1, 0xaa, 0xcf, 0x46, 0x56, 0xfd, 0x2e, 0x2a, 0x0b, 0x77, 0xa5, - 0x6b, 0x51, 0xf5, 0x7f, 0xbb, 0x86, 0x62, 0x91, 0x9f, 0x8e, 0x6c, 0x80, 0x47, 0x51, 0x57, 0x87, - 0xeb, 0xb0, 0x2f, 0x44, 0x90, 0xb4, 0x65, 0x4a, 0x64, 0x33, 0x3c, 0x8a, 0xe8, 0xb6, 0x64, 0x61, - 0x0f, 0x92, 0xa6, 0xed, 0xc7, 0x85, 0x52, 0x79, 0x3a, 0x59, 0xe0, 0xe5, 0x89, 0xa4, 0xb0, 0x62, - 0x33, 0xa4, 0xe7, 0x84, 0x15, 0x59, 0x58, 0x95, 0x6f, 0x49, 0xa2, 0x90, 0x94, 0x7c, 0xe2, 0xc5, - 0x79, 0x8f, 0x78, 0x65, 0xe3, 0x9e, 0xb0, 0x24, 0x45, 0xb5, 0x2e, 0x4c, 0x2a, 0xd9, 0xa4, 0x92, - 0x6d, 0x4e, 0x45, 0x61, 0x31, 0xc0, 0x2a, 0x05, 0x3a, 0xed, 0xe2, 0x5c, 0x0d, 0x6d, 0x5d, 0x4d, - 0xdf, 0x0d, 0x91, 0xa6, 0x0b, 0xfc, 0xea, 0x44, 0xda, 0x25, 0x4d, 0x2e, 0x04, 0x58, 0xd3, 0x81, - 0x7e, 0x4c, 0xd7, 0xb2, 0x46, 0x76, 0x42, 0xe0, 0xfe, 0xad, 0x37, 0x8a, 0xd9, 0x8e, 0xf7, 0x4d, - 0xd8, 0x6d, 0x90, 0x3c, 0xa6, 0x6a, 0x09, 0x9b, 0x2a, 0x7a, 0xc0, 0xb2, 0xba, 0x3d, 0xf2, 0xc8, - 0xe3, 0x2a, 0x00, 0x9f, 0x57, 0x01, 0x98, 0xb3, 0x67, 0x82, 0x77, 0x69, 0x38, 0x36, 0xd5, 0x92, - 0x18, 0x72, 0xee, 0xe3, 0xd2, 0x0d, 0x6c, 0x2e, 0x3d, 0xe0, 0x37, 0xe0, 0x2b, 0xf6, 0x14, 0xc7, - 0xa6, 0x89, 0x54, 0x4a, 0xb6, 0xac, 0x5d, 0x64, 0x62, 0xb5, 0x82, 0x4d, 0x6a, 0xef, 0x9e, 0x21, - 0x9b, 0x1f, 0x83, 0xee, 0x74, 0xf2, 0x49, 0x58, 0x25, 0x86, 0x3d, 0x58, 0xd6, 0x45, 0xdd, 0x77, - 0x40, 0xfc, 0x6d, 0x98, 0x20, 0x25, 0x6c, 0x22, 0x4b, 0x33, 0x0a, 0x2a, 0xdd, 0xa3, 0x16, 0x2e, - 0xfa, 0x84, 0x5d, 0x4d, 0x08, 0x4f, 0xfb, 0xa8, 0x2c, 0x03, 0x79, 0x7c, 0x73, 0xb0, 0x33, 0xaf, - 0xd1, 0x1d, 0x95, 0x6a, 0x0f, 0x30, 0x4b, 0xcd, 0xf6, 0xc8, 0x03, 0x8f, 0x03, 0xe8, 0xf6, 0xa9, - 0x58, 0xe2, 0x27, 0xff, 0xd9, 0xaa, 0xc4, 0x6d, 0xab, 0xac, 0xf6, 0x00, 0xf3, 0x6f, 0xc0, 0x0e, - 0x4a, 0xb7, 0xd5, 0x1d, 0xbc, 0xc7, 0x92, 0xb0, 0x9d, 0x72, 0xef, 0x6f, 0xab, 0xc0, 0xb9, 0xc9, - 0x6c, 0xb6, 0x26, 0x7e, 0x72, 0x55, 0x69, 0xa7, 0x74, 0xfb, 0x06, 0xde, 0xe3, 0x27, 0x60, 0x07, - 0xca, 0xe7, 0xed, 0xb5, 0x94, 0xa5, 0xf9, 0x3a, 0xe5, 0x5e, 0x9b, 0xd8, 0x37, 0x6c, 0x51, 0xbc, - 0x62, 0x7e, 0x05, 0x76, 0xe5, 0x08, 0x31, 0xf3, 0x9a, 0x81, 0x0e, 0x12, 0x78, 0x63, 0x35, 0xab, - 0x0f, 0x5b, 0x54, 0x33, 0x07, 0x66, 0x4e, 0xca, 0x4e, 0x09, 0x22, 0xf9, 0xdb, 0x70, 0x58, 0x27, - 0x05, 0xaa, 0x52, 0x5b, 0xd9, 0x15, 0xed, 0x2e, 0xca, 0x6b, 0x14, 0x6d, 0xea, 0x38, 0xdf, 0xec, - 0xa0, 0x73, 0xb5, 0x45, 0x19, 0xb2, 0x61, 0x59, 0x0f, 0x75, 0xcd, 0x05, 0xf1, 0xdf, 0x87, 0xdd, - 0x3a, 0x29, 0xa8, 0x26, 0xce, 0x61, 0xad, 0x82, 0x4d, 0xf7, 0x64, 0xf3, 0x30, 0x2b, 0x71, 0xdf, - 0xc7, 0x0f, 0x43, 0xd0, 0xd5, 0x16, 0xa5, 0x4b, 0x27, 0x05, 0xc5, 0xfd, 0xc8, 0x67, 0x60, 0x0b, - 0xdd, 0x75, 0x93, 0xea, 0xd1, 0xd7, 0xd9, 0xee, 0xd7, 0x8c, 0x80, 0x9a, 0xd3, 0xca, 0x16, 0xba, - 0xcb, 0xcb, 0xb0, 0x85, 0x50, 0xf7, 0xdb, 0x8f, 0x13, 0xd1, 0x95, 0x0a, 0xbf, 0xf5, 0x5a, 0x0e, - 0x42, 0xf9, 0xbf, 0x02, 0x4e, 0x4a, 0x47, 0x47, 0x9b, 0x58, 0xa7, 0x89, 0x51, 0xa1, 0x75, 0xa2, - 0x4b, 0x7a, 0xfb, 0x10, 0xe1, 0x2d, 0x94, 0x19, 0x9a, 0x59, 0xc9, 0x95, 0x6e, 0x32, 0x86, 0x65, - 0xc3, 0x32, 0xf7, 0xe4, 0x05, 0xef, 0x55, 0x77, 0x7e, 0xe4, 0x24, 0x9d, 0x12, 0x3f, 0x66, 0x2f, - 0xfe, 0x23, 0xd0, 0xc2, 0x4d, 0xb0, 0xf4, 0xd3, 0x47, 0xa0, 0x63, 0xca, 0x1e, 0x07, 0xff, 0x03, - 0xf6, 0x7f, 0xf9, 0x8f, 0xad, 0xed, 0x7f, 0xf2, 0x09, 0x68, 0x89, 0x9f, 0x62, 0x62, 0xc2, 0xe1, - 0xe1, 0xdf, 0x72, 0x33, 0x7e, 0x16, 0x51, 0x9d, 0x7f, 0xcb, 0x86, 0x81, 0x75, 0x55, 0x2b, 0xb1, - 0x8b, 0x84, 0x9d, 0x81, 0x38, 0xa4, 0xb0, 0x4b, 0xef, 0x77, 0x49, 0xd6, 0xfe, 0x2f, 0xb3, 0x5a, - 0x2b, 0xf1, 0x7b, 0x70, 0x84, 0x6c, 0x6d, 0xe9, 0x9a, 0x81, 0x55, 0x5a, 0x36, 0x2b, 0x5a, 0x05, - 0x6d, 0x6a, 0xba, 0x66, 0xed, 0x39, 0x07, 0xc6, 0xdf, 0x61, 0x7d, 0x96, 0x8c, 0xee, 0x33, 0x07, - 0x96, 0x0d, 0xa2, 0x22, 0x8e, 0x8b, 0x13, 0xa4, 0x81, 0x1d, 0xff, 0x7d, 0x98, 0xf0, 0xee, 0x3e, - 0x6e, 0xea, 0x24, 0xb7, 0x83, 0xf3, 0x2a, 0xc5, 0x66, 0x45, 0xcb, 0x61, 0xda, 0xf4, 0x02, 0x42, - 0xfb, 0x63, 0x27, 0xac, 0xb6, 0x2a, 0xa7, 0x5d, 0xbc, 0xec, 0xc0, 0xb3, 0x2e, 0x9a, 0xbf, 0x06, - 0x79, 0xc6, 0xa8, 0x22, 0x5d, 0x3f, 0xe0, 0x7c, 0xa3, 0xc9, 0xd0, 0x6e, 0x55, 0x38, 0x86, 0x58, - 0xd2, 0x75, 0x9f, 0xe5, 0x5d, 0xc8, 0xd5, 0xd5, 0xeb, 0xd5, 0xc8, 0xef, 0x08, 0xb0, 0x9f, 0x24, - 0x98, 0xa9, 0xa9, 0x85, 0x7f, 0x8e, 0xd2, 0xaa, 0xf4, 0x6d, 0xd6, 0x54, 0xf0, 0x47, 0xf0, 0x4c, - 0x99, 0x62, 0xd3, 0xee, 0x64, 0x6d, 0x4b, 0xcb, 0xb1, 0xbb, 0x91, 0xaa, 0xff, 0xbb, 0x07, 0x89, - 0xd7, 0x99, 0x97, 0x91, 0x19, 0xe7, 0x97, 0x11, 0x66, 0xbc, 0x5f, 0x46, 0x98, 0xb9, 0xeb, 0x59, - 0xc8, 0x31, 0xfb, 0x95, 0x2a, 0xaf, 0xd8, 0x24, 0xb7, 0x02, 0x1c, 0xbe, 0x01, 0x3f, 0x09, 0x39, - 0x5a, 0x2e, 0x14, 0xb0, 0x2d, 0x3a, 0x54, 0xc4, 0x8e, 0x19, 0x12, 0x13, 0xf6, 0x80, 0x50, 0xfa, - 0xfc, 0xe7, 0x4b, 0xec, 0x31, 0x7f, 0x01, 0xf6, 0x63, 0xd3, 0x24, 0xa6, 0x9a, 0xc7, 0x34, 0x67, - 0x6a, 0x2c, 0xef, 0x9e, 0x98, 0x64, 0xb6, 0x1c, 0x2b, 0xb8, 0x76, 0xf0, 0x9c, 0xdf, 0x80, 0x09, - 0x2f, 0x6f, 0xea, 0x9e, 0x7c, 0x1c, 0xac, 0x1d, 0x17, 0x9a, 0x74, 0x70, 0x4c, 0x39, 0xed, 0xe2, - 0xdc, 0x73, 0x0f, 0x7f, 0xf1, 0xd8, 0x86, 0x83, 0x35, 0x8c, 0x5a, 0x45, 0xb3, 0xf6, 0x12, 0x62, - 0x93, 0xf3, 0x89, 0x8d, 0x10, 0x95, 0x73, 0xc5, 0x34, 0x20, 0x19, 0x63, 0xca, 0x40, 0xd8, 0x19, - 0x63, 0xe4, 0xdf, 0x86, 0x5d, 0x6c, 0x8a, 0xb0, 0x46, 0xd1, 0xc4, 0x34, 0x9b, 0xc3, 0xa3, 0x0d, - 0x0f, 0x40, 0x96, 0x6d, 0x33, 0x05, 0x52, 0xef, 0x4f, 0xca, 0xdf, 0x83, 0x9c, 0xfb, 0xc3, 0x0e, - 0xf6, 0xfb, 0xa2, 0x16, 0xb2, 0x70, 0x62, 0x46, 0x00, 0x13, 0xbd, 0xd2, 0x54, 0x24, 0x8b, 0x53, - 0xb1, 0xfb, 0x3e, 0x24, 0x6b, 0x23, 0x94, 0xbe, 0x4a, 0xf8, 0x01, 0x9f, 0x81, 0x30, 0x57, 0xa6, - 0x16, 0x29, 0xaa, 0x79, 0x83, 0x26, 0x66, 0x59, 0xbb, 0xa3, 0xab, 0x95, 0x61, 0x66, 0xd7, 0x6e, - 0x67, 0xdd, 0x55, 0xbd, 0xd3, 0xc1, 0x5d, 0x33, 0x28, 0xff, 0x3e, 0xec, 0xb4, 0xb6, 0xd4, 0x12, - 0x32, 0x51, 0x91, 0x26, 0xfe, 0xb5, 0xe3, 0xd0, 0x2b, 0xf0, 0x99, 0x8f, 0x1f, 0x0e, 0xb2, 0x05, - 0xd4, 0x0e, 0xf1, 0x0e, 0x1e, 0x5b, 0xd8, 0xa4, 0x6c, 0x80, 0xc5, 0xad, 0xad, 0x0d, 0xc6, 0xc8, - 0xff, 0x10, 0xf6, 0xb0, 0x5f, 0xad, 0xd0, 0x0c, 0x0b, 0x9b, 0x06, 0xd2, 0x13, 0x5f, 0x1e, 0xde, - 0xc5, 0xe0, 0xc7, 0x0f, 0xc3, 0x60, 0xc6, 0xdd, 0x6d, 0x3f, 0x5a, 0x73, 0x9f, 0xf0, 0xef, 0xc3, - 0x3e, 0x47, 0x91, 0xb3, 0x37, 0xa4, 0x19, 0x5b, 0x24, 0xf1, 0xeb, 0x8e, 0x26, 0x87, 0x97, 0x11, - 0x7b, 0x88, 0xe0, 0x39, 0x81, 0xd2, 0xc3, 0xd8, 0xbc, 0x47, 0x23, 0x6f, 0xc2, 0xde, 0xf0, 0xd2, - 0xcb, 0x73, 0xb0, 0xd5, 0x8e, 0xcd, 0x2c, 0x37, 0xaf, 0xd8, 0x7f, 0xf2, 0x83, 0xb0, 0xad, 0x82, - 0xf4, 0x32, 0x66, 0x5f, 0x04, 0xea, 0x54, 0x9c, 0x0f, 0x97, 0x5b, 0x16, 0xc1, 0xe5, 0x3f, 0x7a, - 0x52, 0x05, 0x1f, 0xc0, 0xb3, 0x70, 0x80, 0x9d, 0x5d, 0xd9, 0xfc, 0x42, 0x16, 0xeb, 0xce, 0xe1, - 0x1d, 0xdf, 0x96, 0x64, 0x3f, 0x83, 0xf0, 0x1a, 0x1c, 0x74, 0x4e, 0xb6, 0x48, 0x1e, 0x0b, 0x1b, - 0x7e, 0x37, 0xf2, 0x3d, 0x8b, 0x22, 0x3b, 0x00, 0x12, 0xd9, 0xf9, 0x08, 0x4c, 0xc2, 0xd3, 0xfe, - 0x11, 0x57, 0xf8, 0x6a, 0xf4, 0x70, 0xf2, 0xa2, 0x28, 0xcd, 0x89, 0x52, 0x52, 0x4c, 0x4b, 0x62, - 0x6a, 0x4e, 0x4c, 0x25, 0xc5, 0xd4, 0x82, 0x98, 0xbe, 0x28, 0x0b, 0xb0, 0xd3, 0xff, 0x21, 0x10, - 0xf6, 0xdd, 0xb8, 0xd6, 0xa7, 0x55, 0xd0, 0xb2, 0x5f, 0x05, 0xad, 0x29, 0x31, 0x6d, 0x77, 0xa5, - 0x3c, 0x06, 0x61, 0x1e, 0x97, 0x74, 0xb2, 0x57, 0xc4, 0x86, 0xc5, 0xf7, 0x07, 0xce, 0xc2, 0xc0, - 0xc2, 0xdf, 0x7c, 0x02, 0x80, 0x3c, 0x09, 0x07, 0x59, 0xc0, 0xf7, 0xc2, 0xac, 0x77, 0x88, 0x63, - 0x9b, 0xf2, 0xa1, 0x3b, 0x16, 0xb2, 0x08, 0x87, 0x6b, 0x57, 0xbd, 0xa0, 0xf5, 0x1b, 0x4f, 0xab, - 0x60, 0x8c, 0x1d, 0x1f, 0x5d, 0x12, 0x53, 0xf3, 0xf2, 0x1c, 0x3c, 0x13, 0x35, 0x79, 0x83, 0x88, - 0x0b, 0x4f, 0xab, 0x60, 0xca, 0x46, 0xa4, 0x53, 0x62, 0x3a, 0xed, 0xdf, 0xa5, 0x75, 0xce, 0x81, - 0x9c, 0xcb, 0x18, 0x63, 0x9c, 0xb0, 0x1e, 0x8b, 0x9f, 0xe7, 0xc6, 0xd7, 0x63, 0xf1, 0x71, 0xee, - 0xd5, 0xf5, 0x58, 0xfc, 0x35, 0xee, 0xf5, 0xf5, 0x58, 0x7c, 0x8a, 0xbb, 0x30, 0xfe, 0x53, 0x0e, - 0xf6, 0x66, 0x4c, 0x8c, 0x2c, 0xec, 0x1f, 0xaf, 0x9c, 0xab, 0x3f, 0x5d, 0x09, 0x6e, 0xaf, 0xef, - 0x1f, 0xdb, 0xf6, 0x3a, 0xbc, 0xb1, 0xd6, 0x5e, 0xce, 0xc6, 0x3a, 0x6a, 0x4b, 0xbd, 0xf3, 0x92, - 0xb6, 0xd4, 0x91, 0x9b, 0xe9, 0xc2, 0x8b, 0x6d, 0xa6, 0x07, 0xa3, 0x36, 0xd3, 0x91, 0x5b, 0xe7, - 0x57, 0x23, 0xb7, 0xbe, 0x35, 0x3b, 0x09, 0x21, 0x6a, 0x27, 0x11, 0xda, 0x2d, 0x9c, 0xa9, 0xd3, - 0xe2, 0x01, 0xd9, 0x3d, 0x5c, 0x23, 0xbb, 0x7d, 0x99, 0x9d, 0xa8, 0x91, 0xd9, 0x07, 0xb2, 0x7a, - 0xe9, 0x28, 0xb2, 0xfa, 0x9b, 0x2a, 0xa8, 0xdf, 0x3e, 0x9a, 0xa0, 0x8e, 0xf9, 0x62, 0xfa, 0xca, - 0x91, 0xc4, 0x74, 0xcc, 0x17, 0xd2, 0x3f, 0x3c, 0x9a, 0x8e, 0x0e, 0x2f, 0x01, 0x35, 0x3a, 0x3a, - 0xa8, 0x87, 0xc9, 0x4b, 0x11, 0xb4, 0x4d, 0x64, 0xec, 0xc6, 0xd1, 0x64, 0xec, 0x37, 0x59, 0xbe, - 0x7e, 0x93, 0x45, 0xe0, 0x71, 0x88, 0xad, 0x17, 0x94, 0x13, 0xfd, 0x9f, 0x5e, 0xa9, 0xb9, 0x31, - 0x20, 0x8f, 0x04, 0x63, 0x7c, 0xcf, 0xa3, 0x67, 0xe0, 0xe0, 0xa3, 0x7c, 0x36, 0x14, 0xdd, 0x7b, - 0x1f, 0x3d, 0x03, 0x81, 0xcf, 0xf2, 0x5c, 0x83, 0xd0, 0x9e, 0x78, 0xf4, 0x0c, 0x44, 0x96, 0xc8, - 0x0b, 0x8d, 0x23, 0xfc, 0x99, 0x47, 0xcf, 0x40, 0xa3, 0x42, 0xf9, 0x4a, 0xf3, 0x58, 0x3f, 0xf6, - 0xe8, 0x19, 0x68, 0x66, 0xe0, 0x47, 0x7e, 0xe7, 0x9b, 0x44, 0xce, 0xdd, 0x8f, 0xfa, 0xf8, 0x3f, - 0xc5, 0x5d, 0x58, 0x8f, 0xc5, 0x4f, 0x73, 0xc3, 0x41, 0x2d, 0x30, 0xfe, 0x67, 0xbd, 0xb0, 0xcf, - 0xbd, 0x94, 0xe9, 0xcb, 0x80, 0x5c, 0x44, 0x9c, 0x7f, 0xf3, 0x2b, 0xc7, 0xf9, 0xc0, 0x55, 0xcf, - 0xa8, 0x6c, 0x7a, 0xa5, 0x71, 0xd0, 0x97, 0x8f, 0x18, 0xf4, 0xa3, 0x3c, 0xd6, 0x29, 0x80, 0x0f, - 0x1a, 0x2b, 0x80, 0xcc, 0x51, 0x15, 0x40, 0x94, 0xe3, 0xaf, 0x51, 0x0e, 0x9c, 0x44, 0x64, 0x16, - 0x91, 0xbf, 0x85, 0xf1, 0xe3, 0xeb, 0x88, 0xd1, 0xdf, 0xea, 0x80, 0x75, 0xf9, 0x41, 0x5d, 0xc8, - 0x79, 0x52, 0x05, 0x18, 0x8e, 0x44, 0x6f, 0x69, 0x5b, 0xed, 0x0d, 0xed, 0xb9, 0x06, 0x1b, 0x5a, - 0xe7, 0xa2, 0x1f, 0x9c, 0x68, 0xb8, 0x91, 0xed, 0x4d, 0x5e, 0x64, 0x5b, 0x58, 0x6f, 0xff, 0x3a, - 0x19, 0x8c, 0x6d, 0x67, 0x6b, 0xf6, 0xaf, 0xbf, 0xdf, 0xa1, 0x0e, 0x70, 0x2d, 0xfe, 0x65, 0xc7, - 0x6e, 0xae, 0x67, 0x3d, 0x16, 0xef, 0xe1, 0x7a, 0xfd, 0xcd, 0x6f, 0x27, 0x07, 0x23, 0xc3, 0xe1, - 0x20, 0x37, 0xf4, 0x9c, 0x4d, 0xf1, 0x1f, 0x0f, 0xc2, 0xae, 0x15, 0x6c, 0x9d, 0xec, 0x88, 0xbf, - 0xe1, 0x3b, 0x62, 0xe9, 0x70, 0x87, 0xc9, 0xa1, 0x13, 0xe4, 0x63, 0xda, 0x45, 0x5f, 0x7e, 0xee, - 0x99, 0x5b, 0xe3, 0xd3, 0xb5, 0xc5, 0xe7, 0x9d, 0xae, 0x35, 0x3c, 0x47, 0x3b, 0xd9, 0xbb, 0xbf, - 0x80, 0x52, 0xf8, 0x41, 0xc4, 0xd6, 0xf9, 0x30, 0x83, 0xff, 0x60, 0xa1, 0xf8, 0xbf, 0xb4, 0x6f, - 0x7e, 0x13, 0xb2, 0xd4, 0xba, 0x9b, 0x46, 0x1f, 0x64, 0x69, 0xf4, 0x73, 0x51, 0x6f, 0xce, 0xfb, - 0x32, 0x02, 0x56, 0x58, 0xa4, 0x70, 0x72, 0xe6, 0xdf, 0x42, 0xd5, 0xf4, 0x72, 0x53, 0xe4, 0xfc, - 0x7b, 0x2f, 0x78, 0x26, 0x75, 0x72, 0x1a, 0x75, 0x72, 0x1a, 0x75, 0x4c, 0x09, 0x92, 0xc1, 0x3a, - 0xb5, 0xfa, 0xe5, 0x15, 0xf0, 0xad, 0xca, 0x91, 0x38, 0x42, 0xd0, 0xff, 0x55, 0x95, 0x46, 0x42, - 0x50, 0xfe, 0x0b, 0xf0, 0xf4, 0x57, 0xa3, 0xa7, 0x3e, 0xfb, 0xd5, 0xe8, 0xa9, 0xdf, 0xfc, 0x6a, - 0x14, 0xfc, 0x64, 0x7f, 0x14, 0xfc, 0xdd, 0xfe, 0x28, 0xf8, 0xc5, 0xfe, 0x28, 0x78, 0xba, 0x3f, - 0x0a, 0x3e, 0xdb, 0x1f, 0x05, 0xbf, 0xdc, 0x1f, 0x05, 0x5f, 0xee, 0x8f, 0x9e, 0xfa, 0xcd, 0xfe, - 0x28, 0xf8, 0xf3, 0x2f, 0x46, 0x4f, 0x3d, 0xfe, 0x62, 0x14, 0x3c, 0xfd, 0x62, 0xf4, 0xd4, 0x67, - 0x5f, 0x8c, 0x9e, 0x7a, 0xef, 0x7e, 0x81, 0x94, 0x76, 0x0a, 0x33, 0x5e, 0x9c, 0x9f, 0x29, 0xd3, - 0x59, 0xff, 0x2c, 0x70, 0xba, 0x64, 0x92, 0x8a, 0x96, 0xc7, 0xe6, 0xb4, 0x57, 0x3c, 0x5b, 0xda, - 0x2c, 0x90, 0x59, 0xfc, 0x81, 0xe5, 0xfd, 0x3e, 0x7e, 0xa3, 0xff, 0x61, 0xc0, 0x66, 0x3b, 0x5b, - 0x1e, 0x52, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x27, 0x8f, 0xc7, 0x05, 0x5b, 0x60, 0x00, 0x00, + // 5593 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x4d, 0x6c, 0x1c, 0x47, + 0x7a, 0xb6, 0x8a, 0x1c, 0x92, 0xc3, 0xe2, 0xdf, 0xb0, 0x45, 0x8a, 0x6d, 0x4a, 0x22, 0x5b, 0xf4, + 0xda, 0x26, 0xa9, 0xe6, 0xcf, 0xf4, 0x0c, 0x29, 0x4a, 0x6b, 0xcb, 0x62, 0x0f, 0x25, 0xfe, 0xe8, + 0x8f, 0xdb, 0x23, 0xc9, 0x6b, 0xef, 0xe7, 0xed, 0x2d, 0xce, 0x14, 0x87, 0xfd, 0xb1, 0xa7, 0x6b, + 0xbe, 0xae, 0x9e, 0xa1, 0xa9, 0x85, 0x60, 0x43, 0xdf, 0x2d, 0x8b, 0x60, 0x03, 0x23, 0xc9, 0x61, + 0x91, 0x43, 0x2e, 0x09, 0x02, 0x1f, 0x82, 0x9c, 0x77, 0x7c, 0x10, 0x04, 0x04, 0x58, 0xf8, 0x24, + 0x04, 0x39, 0x38, 0x3e, 0xed, 0xd2, 0x87, 0x78, 0x13, 0x20, 0x30, 0x90, 0x00, 0xbb, 0x10, 0x02, + 0x24, 0xe8, 0xea, 0x1f, 0x76, 0xcf, 0xf4, 0x8c, 0x68, 0x8a, 0xda, 0x5d, 0xad, 0x79, 0xb1, 0x38, + 0x5d, 0xef, 0xf3, 0xbc, 0x55, 0xd5, 0xf5, 0xf3, 0xd4, 0xfb, 0xd6, 0x8c, 0xa1, 0x58, 0xc1, 0x74, + 0x5a, 0x23, 0x33, 0x34, 0xb7, 0x85, 0x8b, 0x68, 0xa6, 0xa2, 0xe1, 0x1d, 0x3a, 0x53, 0xc8, 0x95, + 0xd4, 0x4a, 0x29, 0xa7, 0x52, 0xcd, 0xc2, 0x33, 0xd6, 0x6e, 0x09, 0xd3, 0xe9, 0x92, 0x49, 0x2c, + 0xc2, 0x09, 0x8e, 0xf5, 0xb4, 0x63, 0x3d, 0xcd, 0xac, 0xa7, 0x83, 0xd6, 0xc3, 0x53, 0x05, 0xcd, + 0xda, 0x2a, 0x6f, 0x4c, 0xe7, 0x48, 0x71, 0xa6, 0x40, 0x0a, 0x64, 0x86, 0x01, 0x37, 0xca, 0x9b, + 0xec, 0x13, 0xfb, 0xc0, 0xfe, 0x72, 0x08, 0x87, 0x47, 0x0b, 0x84, 0x14, 0x74, 0xbc, 0x6f, 0x65, + 0x69, 0x45, 0x4c, 0x2d, 0x54, 0x2c, 0x79, 0x06, 0xe1, 0xfa, 0x6d, 0xea, 0x18, 0x5b, 0xc1, 0x2a, + 0x0d, 0x4f, 0x86, 0x0d, 0x0c, 0x6c, 0xed, 0x10, 0x73, 0x5b, 0xdd, 0xd4, 0x4c, 0xbc, 0x83, 0x74, + 0x3d, 0x64, 0x7b, 0x3a, 0x6c, 0x4b, 0x4a, 0x96, 0x46, 0x0c, 0xaf, 0x70, 0x24, 0x5c, 0x58, 0xdb, + 0xf6, 0xe1, 0x57, 0xc2, 0xe5, 0xc1, 0xa2, 0x33, 0x35, 0x9d, 0x88, 0x74, 0x2d, 0x8f, 0x2c, 0xec, + 0x96, 0x0a, 0xf5, 0x5d, 0xac, 0x86, 0x5d, 0x7f, 0x27, 0xea, 0x25, 0xd8, 0x15, 0x50, 0x83, 0x5e, + 0xde, 0x88, 0xb4, 0xb2, 0x88, 0x89, 0x0a, 0x61, 0xc3, 0xd1, 0x28, 0xc3, 0x80, 0xc1, 0xd8, 0xbf, + 0xc7, 0xe0, 0xc9, 0xe5, 0xcc, 0xfa, 0xbd, 0xf5, 0xcc, 0xaa, 0x51, 0x30, 0x31, 0xa5, 0xcb, 0x3b, + 0x77, 0x76, 0x4b, 0x98, 0x53, 0x61, 0xc2, 0x7e, 0x99, 0x39, 0x6c, 0x5a, 0xda, 0xa6, 0x86, 0xf3, + 0xea, 0xd6, 0x0e, 0x0f, 0x04, 0x30, 0xde, 0x29, 0xcf, 0x7d, 0x51, 0x05, 0xfd, 0x85, 0x5c, 0x69, + 0x6a, 0x63, 0x97, 0xe8, 0x53, 0x15, 0xa2, 0x5b, 0x45, 0x4c, 0xb7, 0x7e, 0x5b, 0x05, 0x27, 0x7e, + 0xfe, 0xeb, 0x47, 0xad, 0x43, 0xe6, 0x20, 0x7f, 0x45, 0xa9, 0x2f, 0x57, 0x7a, 0x0b, 0xb9, 0x52, + 0xc6, 0x63, 0x5b, 0xd9, 0xe1, 0xde, 0x81, 0xf6, 0x13, 0xf5, 0x3e, 0x31, 0xb0, 0x6a, 0xa0, 0x22, + 0xa6, 0x7c, 0x4c, 0x68, 0x1d, 0xef, 0x94, 0x93, 0x8c, 0xe9, 0x53, 0xd0, 0x1d, 0x07, 0xb3, 0xe0, + 0x52, 0x7b, 0x8e, 0x18, 0x9b, 0x5a, 0xc1, 0x66, 0x6e, 0xfb, 0x18, 0xb4, 0x24, 0x5a, 0xbd, 0xbf, + 0x78, 0x60, 0xff, 0x15, 0x33, 0x5b, 0xf8, 0x2b, 0x4a, 0x77, 0x21, 0x57, 0x7a, 0x8f, 0x18, 0xf8, + 0x96, 0x4d, 0xc3, 0x89, 0xb0, 0xcb, 0x20, 0x79, 0xac, 0x1a, 0xe5, 0xe2, 0x06, 0x36, 0xf9, 0x76, + 0x01, 0x8c, 0xf7, 0xc8, 0x5d, 0xb6, 0x75, 0xfb, 0x64, 0x4c, 0x6a, 0x01, 0xad, 0x0a, 0xb4, 0xcb, + 0x6f, 0xb1, 0x62, 0xee, 0x1d, 0xd8, 0xa3, 0x93, 0x1c, 0xd2, 0x55, 0x77, 0xb4, 0xf0, 0x2d, 0x02, + 0x18, 0xef, 0x92, 0xc4, 0xe9, 0xa8, 0xe1, 0xed, 0x74, 0xd4, 0x2d, 0xc7, 0x32, 0xb3, 0x45, 0xb4, + 0x1c, 0xb6, 0x3b, 0x4b, 0x8e, 0xfd, 0xc3, 0xa7, 0x00, 0x28, 0xdd, 0x8c, 0xc8, 0x2d, 0xe5, 0xee, + 0x40, 0xe7, 0xb3, 0x4a, 0xcb, 0x1b, 0x06, 0xb6, 0xf8, 0x36, 0xc6, 0x7b, 0xbe, 0x09, 0x6f, 0x96, + 0x19, 0xd6, 0xd1, 0x76, 0x31, 0x1a, 0xa7, 0x90, 0xfb, 0x10, 0x9e, 0x29, 0x61, 0x73, 0x93, 0x98, + 0x45, 0x64, 0xe4, 0xb0, 0x8a, 0x8d, 0x2d, 0xfb, 0xdf, 0x22, 0x36, 0x2c, 0xb5, 0x48, 0xf2, 0x98, + 0x9f, 0x62, 0x5e, 0x52, 0x91, 0x5e, 0xd6, 0xf7, 0x81, 0x57, 0xf7, 0x71, 0x37, 0x49, 0xde, 0xf1, + 0x16, 0x7f, 0x54, 0x05, 0xe0, 0xeb, 0x2a, 0x00, 0xca, 0x70, 0xa9, 0xa1, 0xe5, 0xa5, 0xd9, 0xc7, + 0x55, 0x20, 0x42, 0x0e, 0xb6, 0xdd, 0x22, 0x79, 0x4c, 0xb9, 0xce, 0xa4, 0x98, 0x16, 0xe7, 0x45, + 0x49, 0x9c, 0x83, 0xa7, 0x60, 0x62, 0x31, 0x5f, 0xb1, 0x8d, 0xf3, 0xc2, 0x6d, 0x67, 0x4c, 0x73, + 0x2d, 0xe9, 0xb9, 0xb5, 0x58, 0xbc, 0x35, 0x11, 0x5b, 0x8b, 0xc5, 0x3b, 0x12, 0xf1, 0xb1, 0xdf, + 0x9c, 0x82, 0xaf, 0x84, 0x46, 0xdb, 0xd5, 0xe0, 0x98, 0xa3, 0x0d, 0xc7, 0xdc, 0xea, 0x17, 0x55, + 0x70, 0xda, 0x1f, 0x53, 0xc5, 0xb2, 0x6e, 0x69, 0x53, 0x86, 0x96, 0xab, 0x1b, 0x7d, 0xe7, 0xcc, + 0x51, 0xfe, 0x8a, 0xd2, 0xcc, 0xf2, 0x00, 0xe3, 0x90, 0x7f, 0x21, 0xe3, 0x70, 0xa8, 0xf9, 0x38, + 0x7c, 0x17, 0xf6, 0x6a, 0x06, 0xd5, 0x6c, 0xfb, 0xe7, 0x1e, 0x88, 0x3d, 0x0e, 0x93, 0x37, 0x12, + 0xef, 0x41, 0xf7, 0x81, 0x37, 0x14, 0x07, 0x0f, 0x3b, 0x14, 0xbb, 0x1d, 0x1e, 0x77, 0x2c, 0xfe, + 0x00, 0xf6, 0x91, 0xb2, 0x15, 0xaa, 0x73, 0xeb, 0xa1, 0xeb, 0xdc, 0xeb, 0x52, 0x79, 0x95, 0xfe, + 0x3e, 0xf4, 0x9e, 0x78, 0xb5, 0x3e, 0x75, 0xd8, 0x5a, 0xf7, 0xb8, 0x44, 0x6e, 0xb5, 0x65, 0xd8, + 0x6f, 0x10, 0xaf, 0xc6, 0x6a, 0x89, 0xe8, 0x5a, 0x6e, 0x97, 0xad, 0x12, 0x5d, 0xd2, 0x40, 0x0d, + 0xf9, 0xd5, 0x62, 0xc9, 0xda, 0x5d, 0x39, 0xa1, 0xf4, 0x19, 0xc4, 0xad, 0xd7, 0x3a, 0x33, 0xe7, + 0x28, 0x1c, 0x42, 0x39, 0x4b, 0xab, 0xe0, 0x30, 0x8f, 0x86, 0x29, 0xdf, 0xc1, 0x98, 0x2e, 0xd6, + 0x30, 0xd5, 0xee, 0x45, 0xd3, 0x8b, 0x0c, 0x1e, 0x64, 0xd5, 0x30, 0xb5, 0x2b, 0xbd, 0x72, 0x42, + 0x19, 0x44, 0x51, 0x85, 0xdc, 0x5f, 0x00, 0x78, 0xce, 0xf5, 0xea, 0xce, 0xfb, 0xbc, 0xcf, 0xb7, + 0xef, 0xff, 0x1c, 0xf3, 0x2f, 0x1f, 0xcc, 0xbf, 0x3b, 0xbb, 0xf3, 0xd7, 0xdc, 0xc7, 0xc1, 0x8a, + 0x38, 0xbd, 0xb7, 0x72, 0x42, 0x19, 0x41, 0x4d, 0x6d, 0xb9, 0x2b, 0x30, 0x61, 0x10, 0x75, 0x93, + 0x98, 0x3b, 0xc8, 0xcc, 0xab, 0x25, 0x93, 0x7c, 0xb0, 0xcb, 0x77, 0x36, 0xe9, 0x4f, 0xa0, 0xf4, + 0x1a, 0xe4, 0x9a, 0x63, 0xbe, 0x6e, 0x5b, 0x73, 0xff, 0x1f, 0xc0, 0xb3, 0x6e, 0xcb, 0x42, 0x34, + 0xfb, 0xad, 0x82, 0x8c, 0xef, 0xf2, 0xc1, 0x5a, 0x15, 0xe4, 0x0e, 0x75, 0x2d, 0x50, 0x86, 0x51, + 0x43, 0x0b, 0xee, 0x26, 0x1c, 0x0a, 0x7b, 0x47, 0xba, 0x4e, 0x76, 0xec, 0xff, 0xf2, 0x03, 0x4d, + 0x9b, 0x33, 0xb0, 0x19, 0xa0, 0x5b, 0xb4, 0x41, 0x8b, 0xba, 0xee, 0x8e, 0xb3, 0x82, 0x4e, 0x36, + 0x02, 0xbb, 0x4b, 0x77, 0x13, 0xa2, 0x16, 0x7b, 0x9c, 0x2d, 0x33, 0x7b, 0x6f, 0x16, 0x6c, 0xc2, + 0x93, 0x61, 0x02, 0x55, 0xd7, 0xa8, 0xc5, 0xf7, 0x30, 0x96, 0x74, 0xf4, 0x54, 0x08, 0x12, 0x64, + 0x88, 0x61, 0xe0, 0x9c, 0xbd, 0x16, 0xdf, 0xd0, 0xa8, 0xc5, 0xfa, 0xa0, 0x45, 0xe9, 0x2f, 0x04, + 0x4d, 0xec, 0x02, 0xee, 0x3a, 0x3c, 0x69, 0x10, 0x35, 0x9f, 0x53, 0x73, 0x7a, 0x99, 0x5a, 0xd8, + 0x54, 0x0b, 0x26, 0x29, 0x97, 0xf8, 0xe1, 0xc6, 0xb5, 0x95, 0x63, 0xf6, 0x76, 0xb1, 0xd2, 0xaa, + 0x24, 0x0c, 0xb2, 0x94, 0xcb, 0x38, 0xb0, 0x65, 0x1b, 0xc5, 0xfd, 0x18, 0x9e, 0xae, 0x65, 0x52, + 0xbd, 0xb9, 0x5c, 0x31, 0xf8, 0xd3, 0x8c, 0x74, 0x2c, 0xb2, 0xf2, 0xb7, 0x37, 0xfe, 0x2f, 0xce, + 0x59, 0x0a, 0xde, 0x64, 0x03, 0x70, 0xe8, 0x93, 0x07, 0x89, 0x5a, 0x26, 0xd7, 0xeb, 0x50, 0x3e, + 0xe4, 0xf3, 0xb6, 0x43, 0x7f, 0xcf, 0xe0, 0x76, 0xe1, 0x70, 0x9d, 0x73, 0x77, 0xf5, 0xab, 0x18, + 0xfc, 0x99, 0xa3, 0xf0, 0x7d, 0x2a, 0xec, 0x7b, 0xd5, 0x70, 0x5d, 0x67, 0xe1, 0x10, 0x2d, 0xaa, + 0x39, 0xbf, 0xcb, 0xd5, 0x52, 0x79, 0x43, 0xd7, 0x72, 0xaa, 0x56, 0xe2, 0x47, 0x9f, 0xd9, 0x91, + 0x31, 0x65, 0x80, 0x16, 0xf7, 0x5f, 0xd7, 0x3a, 0x83, 0xae, 0x96, 0xb8, 0x9b, 0x70, 0xa0, 0x86, + 0xb4, 0x62, 0xd9, 0x8c, 0xc2, 0x01, 0x18, 0xfb, 0x43, 0x8c, 0x15, 0x6b, 0xb5, 0x64, 0xd7, 0xd1, + 0x20, 0x5e, 0x87, 0x50, 0x0b, 0x59, 0x5a, 0x4e, 0x35, 0x49, 0xd9, 0xc2, 0x94, 0xef, 0x7b, 0x26, + 0x63, 0x9b, 0x32, 0x60, 0x10, 0xa7, 0xb9, 0x59, 0x06, 0x55, 0x18, 0x92, 0x2b, 0xc0, 0x81, 0x48, + 0xc6, 0x04, 0x63, 0x9c, 0x8a, 0xec, 0xed, 0xac, 0x66, 0x85, 0x48, 0xbc, 0xf1, 0xe9, 0xbb, 0xe2, + 0xb4, 0x7a, 0x47, 0x77, 0x21, 0x6f, 0x10, 0x7f, 0x2c, 0x85, 0x9d, 0x71, 0xcf, 0xac, 0x7e, 0xbb, + 0x32, 0x68, 0x10, 0x77, 0xa4, 0x84, 0x68, 0x35, 0x38, 0x18, 0xcd, 0x79, 0xf2, 0xf0, 0x0d, 0x68, + 0x57, 0x4e, 0x92, 0x08, 0x57, 0xbf, 0x77, 0xfd, 0x86, 0x1f, 0x57, 0x01, 0x82, 0xc3, 0x9e, 0x7e, + 0xeb, 0x4f, 0x8a, 0x52, 0x5a, 0x94, 0x52, 0xa2, 0x24, 0x4a, 0x49, 0x31, 0x25, 0x4a, 0x12, 0x3c, + 0x03, 0x07, 0xed, 0xb6, 0x09, 0xee, 0xfa, 0x20, 0x78, 0xeb, 0x3d, 0xd7, 0x3a, 0x27, 0x2e, 0xc0, + 0xd7, 0x22, 0x54, 0x5e, 0x7f, 0x32, 0x29, 0x4a, 0x73, 0x62, 0x32, 0x2d, 0x26, 0x2f, 0x88, 0xa9, + 0x59, 0x31, 0x3d, 0x27, 0x9f, 0x87, 0x83, 0xe1, 0x1d, 0x56, 0xcd, 0xb1, 0x6d, 0x99, 0xe3, 0x1e, + 0x55, 0x41, 0xfb, 0x93, 0x2a, 0x68, 0xdb, 0xab, 0x82, 0xf6, 0x79, 0x31, 0x95, 0x12, 0x2f, 0xc8, + 0xe7, 0xe1, 0x40, 0x78, 0xe1, 0x75, 0x6d, 0x4f, 0x3e, 0xaa, 0x82, 0xce, 0x27, 0x55, 0x10, 0xdf, + 0xab, 0x82, 0x8e, 0x8b, 0xa2, 0x34, 0x2b, 0x26, 0x67, 0xe5, 0x69, 0x38, 0x58, 0xb3, 0x24, 0xba, + 0xd6, 0x83, 0x8f, 0xaa, 0xa0, 0xfb, 0x17, 0x55, 0x00, 0x9e, 0x54, 0x41, 0xd7, 0x5e, 0x15, 0xb4, + 0x25, 0x25, 0x31, 0x99, 0x92, 0x53, 0x70, 0xa8, 0x6e, 0x41, 0x70, 0x11, 0xfc, 0xa3, 0x2a, 0x18, + 0x76, 0x11, 0xaf, 0xec, 0x55, 0x41, 0x5c, 0x9a, 0x17, 0xa5, 0x0b, 0xa2, 0xb4, 0x20, 0xcf, 0xc0, + 0x53, 0xec, 0xcc, 0x65, 0x2b, 0xc6, 0x30, 0xc6, 0xf6, 0x32, 0xea, 0x62, 0x46, 0x6c, 0x2f, 0xa9, + 0xa4, 0x98, 0x92, 0xe4, 0x14, 0x1c, 0x8e, 0x98, 0x02, 0x41, 0x50, 0x9f, 0x0b, 0xea, 0x65, 0x55, + 0x9b, 0x13, 0x93, 0xf3, 0x72, 0x1a, 0x9e, 0x8e, 0x1a, 0x77, 0x41, 0x14, 0xe7, 0xa2, 0xfa, 0x19, + 0x6a, 0x41, 0x4c, 0x5e, 0x5c, 0x8b, 0xc5, 0x63, 0x89, 0xb6, 0xb5, 0x58, 0xbc, 0x2d, 0xd1, 0xbe, + 0x16, 0x8b, 0xc7, 0x13, 0x9d, 0x6b, 0xb1, 0x78, 0x57, 0xa2, 0x7b, 0x2d, 0x16, 0x7f, 0x25, 0x31, + 0xbc, 0x16, 0x8b, 0x8f, 0x24, 0x46, 0xd7, 0x62, 0xf1, 0xde, 0x44, 0xdf, 0x5a, 0x2c, 0xde, 0x9f, + 0xe0, 0xd6, 0x62, 0xf1, 0xb3, 0x89, 0x91, 0xb1, 0xff, 0x18, 0x80, 0xc3, 0x8e, 0x4a, 0xba, 0x47, + 0x74, 0x8b, 0x5a, 0x28, 0xb7, 0xed, 0x2e, 0x62, 0x4c, 0x7a, 0x17, 0x1b, 0x4a, 0xef, 0xcc, 0x17, + 0x55, 0xc0, 0x87, 0x8e, 0x73, 0x0c, 0x3c, 0x95, 0x23, 0xc5, 0x0d, 0xe2, 0xe9, 0xee, 0x11, 0xf3, + 0x0c, 0x7f, 0x45, 0x69, 0x68, 0x76, 0x00, 0xd1, 0x3d, 0xf0, 0x42, 0x44, 0x37, 0xd7, 0x5c, 0x74, + 0xff, 0x08, 0x72, 0xec, 0x35, 0x1f, 0xd5, 0x09, 0x30, 0x61, 0xb3, 0xdd, 0x08, 0x9e, 0x02, 0xdf, + 0x87, 0xfd, 0x01, 0x0f, 0xae, 0x92, 0x3d, 0x79, 0x58, 0x25, 0xdb, 0xe7, 0xf3, 0x37, 0xd3, 0xb2, + 0x6d, 0x47, 0xa6, 0x65, 0xdb, 0x5f, 0x98, 0x96, 0xfd, 0xe9, 0x81, 0xb4, 0xec, 0xab, 0x47, 0xa5, + 0x65, 0x0f, 0xa9, 0x62, 0xe3, 0x47, 0xac, 0x62, 0x3b, 0x7f, 0xbf, 0x2a, 0xb6, 0xff, 0xa8, 0x54, + 0x6c, 0xd7, 0x91, 0xa8, 0xd8, 0xee, 0xdf, 0x91, 0x8a, 0x3d, 0x7b, 0x28, 0x15, 0x5b, 0x80, 0x75, + 0xfa, 0x8f, 0x1f, 0x39, 0x0a, 0xf9, 0xd8, 0x1b, 0x96, 0x8f, 0xcd, 0x64, 0xe3, 0xb9, 0x23, 0x97, + 0x8d, 0x63, 0x87, 0x93, 0x8d, 0xcd, 0x84, 0xd7, 0x41, 0x74, 0xe3, 0x37, 0x15, 0x5e, 0xcf, 0xa5, + 0x1c, 0x23, 0x85, 0x97, 0x0c, 0x7b, 0x0d, 0xa2, 0x6e, 0x2f, 0x50, 0xef, 0x9d, 0x1c, 0xe0, 0x70, + 0xd3, 0xae, 0x74, 0x1b, 0xe4, 0xfa, 0x02, 0x75, 0x5f, 0x17, 0xf7, 0x2e, 0xec, 0x0a, 0x12, 0x1c, + 0xfc, 0x20, 0xc3, 0x7d, 0xf2, 0x20, 0x88, 0x74, 0xc9, 0xe1, 0xf6, 0x3e, 0xf5, 0xdb, 0xb0, 0x2f, + 0x8f, 0x37, 0x51, 0x59, 0xb7, 0x54, 0x37, 0x8c, 0xeb, 0xc6, 0x3b, 0xa2, 0x27, 0x59, 0x87, 0xd2, + 0xeb, 0x9a, 0x67, 0x1d, 0x6b, 0xee, 0x5d, 0xc8, 0x79, 0xf1, 0xdf, 0x9c, 0x8e, 0x28, 0x75, 0xa6, + 0xd8, 0x10, 0xe3, 0x98, 0x88, 0xee, 0x47, 0xc7, 0x3c, 0x63, 0x5b, 0xfb, 0xf3, 0xaa, 0x43, 0x49, + 0xd0, 0x9a, 0xe7, 0x97, 0xee, 0x3f, 0xae, 0x82, 0x0a, 0x1c, 0xf4, 0x24, 0x63, 0x77, 0x92, 0x29, + 0xb1, 0x05, 0x51, 0x12, 0x93, 0x17, 0x9b, 0xa8, 0xc5, 0xb4, 0x78, 0x01, 0x9e, 0x86, 0x83, 0xae, + 0x1b, 0x21, 0xc3, 0xf6, 0xf2, 0xb2, 0x89, 0xec, 0x51, 0xc5, 0xb5, 0x48, 0x49, 0x38, 0x16, 0x21, + 0x25, 0x7b, 0x93, 0xb3, 0xa2, 0xb4, 0x20, 0xa6, 0x24, 0x5b, 0x4d, 0x4a, 0xcf, 0xd0, 0x91, 0x6d, + 0x4f, 0xaa, 0x20, 0x66, 0xeb, 0xc8, 0x39, 0x31, 0x35, 0x27, 0xce, 0xcb, 0x93, 0x0d, 0x74, 0xa4, + 0x6d, 0x1b, 0x7f, 0x52, 0x05, 0x1d, 0xb6, 0xed, 0x82, 0x2d, 0x52, 0x2f, 0x36, 0x97, 0x91, 0x5d, + 0xae, 0xea, 0x82, 0x4c, 0x75, 0x25, 0xc5, 0xa4, 0x24, 0xcf, 0x36, 0x96, 0x91, 0x36, 0xe2, 0xac, + 0x8b, 0x38, 0x63, 0x23, 0xa4, 0x8b, 0x62, 0x6a, 0xf6, 0x19, 0x1a, 0xf2, 0x9c, 0x0b, 0x10, 0x98, + 0x86, 0x4c, 0x89, 0xa9, 0xf4, 0x41, 0xe4, 0x60, 0x84, 0x88, 0x3c, 0x0f, 0xb9, 0xc0, 0xd0, 0x0a, + 0x1a, 0x07, 0xa5, 0x6d, 0x1b, 0x93, 0xb6, 0xf2, 0x14, 0x1c, 0x08, 0x8f, 0x92, 0x80, 0xf9, 0x29, + 0xd7, 0x7c, 0x90, 0x99, 0x4b, 0xa2, 0x94, 0xf2, 0x43, 0xb7, 0x8e, 0xe0, 0xec, 0x48, 0xc4, 0xd7, + 0x62, 0x71, 0x98, 0xe8, 0x5a, 0x8b, 0xc5, 0xcf, 0x24, 0xce, 0xae, 0xc5, 0xe2, 0x42, 0xe2, 0x9c, + 0x2f, 0x35, 0x1d, 0xf1, 0x39, 0x98, 0x38, 0xb5, 0x16, 0x8b, 0x8f, 0x26, 0x84, 0xb1, 0xbf, 0x89, + 0x79, 0x82, 0xd3, 0x4f, 0x2c, 0x28, 0xb8, 0xa4, 0x23, 0x47, 0xd0, 0x1c, 0x87, 0xff, 0x5f, 0xce, + 0xf0, 0xff, 0xd2, 0x67, 0x97, 0xa3, 0xd2, 0x45, 0x8f, 0xab, 0x60, 0x12, 0x26, 0xbc, 0x15, 0xa2, + 0xe3, 0x9b, 0xa4, 0x04, 0xfe, 0x65, 0x08, 0x0a, 0x91, 0x29, 0x81, 0xe6, 0xa3, 0xe5, 0x38, 0x48, + 0x7f, 0x1c, 0xa4, 0xff, 0x43, 0x0c, 0xd2, 0xff, 0xf4, 0x77, 0x1b, 0xa4, 0x3f, 0x0e, 0xcf, 0x1f, + 0x87, 0xe7, 0x8f, 0xc3, 0xf3, 0xc7, 0xe1, 0xf9, 0xe3, 0xf0, 0xfc, 0x1f, 0x47, 0x78, 0xfe, 0xc3, + 0xcf, 0x2e, 0x37, 0xbe, 0x20, 0xf1, 0xb8, 0x0a, 0x54, 0xc8, 0x7b, 0x2a, 0xab, 0xef, 0xc8, 0x02, + 0xf7, 0xa9, 0x59, 0x37, 0x76, 0x9f, 0x9e, 0x93, 0x97, 0x1a, 0x1d, 0xb8, 0xce, 0xd7, 0x07, 0xee, + 0x1f, 0x3e, 0x05, 0xd1, 0xc6, 0x72, 0xa6, 0xc1, 0x49, 0xec, 0x7c, 0x44, 0x44, 0xff, 0xe1, 0x53, + 0x10, 0x69, 0x2c, 0x2f, 0x37, 0x3a, 0xa2, 0x4d, 0x47, 0x46, 0xfa, 0xed, 0xda, 0x44, 0xda, 0xcb, + 0xb7, 0x1a, 0x9f, 0xdd, 0x52, 0x8d, 0x52, 0x00, 0x0f, 0x9f, 0x82, 0x46, 0x20, 0x79, 0xb5, 0xe1, + 0xc9, 0x6e, 0x26, 0x32, 0x3b, 0xf0, 0xf0, 0x29, 0x68, 0x00, 0x90, 0xbf, 0xd7, 0x34, 0x6f, 0x90, + 0x8a, 0x3c, 0xf2, 0x3d, 0x7c, 0x0a, 0x9a, 0x80, 0xe4, 0x6c, 0xf3, 0x63, 0x64, 0x3a, 0x32, 0xab, + 0xf0, 0xf0, 0x29, 0x68, 0x86, 0x3a, 0x64, 0xd2, 0xe1, 0x37, 0xfd, 0xf0, 0x5c, 0x74, 0xd2, 0xa1, + 0xb9, 0xb8, 0xff, 0xce, 0x71, 0x32, 0xe0, 0xa8, 0x92, 0x01, 0x7f, 0x3c, 0x9a, 0xf9, 0xd5, 0x63, + 0xcd, 0x7c, 0xac, 0x99, 0x8f, 0x93, 0x01, 0xc7, 0xc9, 0x80, 0xe7, 0x4e, 0x06, 0x5c, 0x2a, 0x7f, + 0x76, 0xb9, 0x49, 0x32, 0xfc, 0x71, 0x15, 0xdc, 0x81, 0x27, 0x3d, 0x99, 0x05, 0x53, 0xf3, 0x07, + 0x08, 0x76, 0xdb, 0x0a, 0x6b, 0x34, 0x42, 0x61, 0x75, 0xd9, 0x0a, 0xcb, 0x8d, 0x67, 0x1f, 0x5c, + 0x5b, 0xcd, 0xbd, 0x3c, 0xda, 0xea, 0x7a, 0x63, 0x6d, 0x35, 0x1b, 0x19, 0x17, 0x3f, 0xbc, 0xb0, + 0xaa, 0x0f, 0x99, 0x37, 0x11, 0x56, 0x07, 0x50, 0x41, 0x91, 0xca, 0xea, 0x19, 0x2a, 0xa8, 0x5e, + 0xff, 0xd4, 0x47, 0xc2, 0x47, 0x13, 0xc2, 0xd8, 0xdf, 0x02, 0xc8, 0xb9, 0xbb, 0xb7, 0x66, 0xe1, + 0x55, 0x63, 0x93, 0x30, 0xa9, 0x73, 0x0d, 0x42, 0x7f, 0x42, 0x53, 0x1e, 0x30, 0x99, 0xf3, 0x86, + 0x2d, 0x48, 0x3a, 0x3f, 0x06, 0xed, 0x63, 0x31, 0xb3, 0xa5, 0xc4, 0xc4, 0x0c, 0xfc, 0x18, 0x74, + 0x4c, 0xb6, 0xcd, 0x8a, 0x49, 0x31, 0xb5, 0xaf, 0x72, 0x94, 0xce, 0x92, 0x3b, 0xa1, 0x29, 0xb7, + 0x02, 0xbb, 0x4a, 0xa6, 0x56, 0x41, 0x16, 0x66, 0x44, 0x2d, 0xdf, 0x8c, 0x08, 0xba, 0xd8, 0xd5, + 0x12, 0x1d, 0xfb, 0xa7, 0x14, 0xec, 0x75, 0xd6, 0xd7, 0x6c, 0x09, 0xe7, 0x58, 0x25, 0xff, 0x6a, + 0x00, 0x42, 0x5b, 0x90, 0x99, 0xb8, 0xa0, 0x11, 0xc3, 0xbd, 0x06, 0xf2, 0xdf, 0x27, 0x6d, 0x35, + 0xf6, 0xf1, 0xa7, 0xe0, 0xdf, 0x4e, 0xc2, 0x19, 0x08, 0x11, 0xd5, 0xd0, 0x14, 0x46, 0xd4, 0x4a, + 0x72, 0xe7, 0xc6, 0x17, 0xd7, 0x17, 0x33, 0x13, 0xc2, 0x22, 0xd5, 0x90, 0x70, 0x15, 0x51, 0x4b, + 0x50, 0x18, 0x50, 0xd0, 0x0c, 0xe1, 0x0e, 0xd2, 0x76, 0x90, 0x01, 0x53, 0x01, 0x80, 0xc4, 0xbd, + 0x56, 0x0b, 0x90, 0x02, 0x88, 0x15, 0x62, 0x14, 0x84, 0xeb, 0xc4, 0x28, 0xc0, 0x45, 0xd8, 0xc7, + 0x40, 0x06, 0x31, 0xad, 0x2d, 0xc7, 0xd5, 0x74, 0x10, 0x79, 0xcb, 0x7e, 0xce, 0xf0, 0xc9, 0xa0, + 0x47, 0xb2, 0xbd, 0x4b, 0x44, 0x61, 0x0d, 0x95, 0x90, 0x51, 0x4f, 0x21, 0x35, 0xa2, 0x08, 0x56, + 0xe1, 0x36, 0x45, 0xdb, 0xc8, 0xa3, 0x58, 0xae, 0xa5, 0x48, 0x71, 0xe9, 0x68, 0x8a, 0x54, 0x80, + 0x22, 0x8b, 0x49, 0x59, 0x17, 0x85, 0x2c, 0x29, 0x5b, 0x5b, 0xc2, 0x75, 0x62, 0x62, 0x04, 0x2f, + 0xc2, 0x2e, 0x46, 0x44, 0xed, 0x67, 0x49, 0x6e, 0x32, 0x48, 0xc2, 0xec, 0x82, 0xad, 0xb8, 0x59, + 0x2e, 0x6e, 0x20, 0x4d, 0x14, 0x56, 0x8d, 0xbc, 0x86, 0xe0, 0x42, 0x10, 0x2a, 0x71, 0x13, 0x75, + 0xd0, 0x60, 0xed, 0x97, 0xb0, 0xbe, 0xe5, 0x23, 0xd7, 0xdc, 0xda, 0x33, 0xa4, 0xd3, 0x87, 0x17, + 0xea, 0xd0, 0xb5, 0x5d, 0xb8, 0x56, 0x36, 0xed, 0x97, 0xf0, 0x0e, 0xa6, 0x96, 0x28, 0x64, 0x35, + 0xa3, 0x80, 0x4a, 0xc4, 0xc4, 0xf0, 0x5a, 0x2d, 0x97, 0xc4, 0xa5, 0x22, 0xb9, 0x82, 0xb5, 0x59, + 0x43, 0xdb, 0xc8, 0xb4, 0x10, 0xab, 0x0f, 0x31, 0x30, 0xd5, 0x10, 0xbc, 0x0d, 0x07, 0x50, 0x99, + 0x5a, 0x26, 0xd2, 0x1b, 0x54, 0xcc, 0x2b, 0x74, 0x18, 0x71, 0x4d, 0xed, 0xb2, 0xbb, 0x79, 0x03, + 0xef, 0x8a, 0xfb, 0x66, 0x50, 0x89, 0x24, 0x94, 0xb8, 0x4b, 0x8d, 0x09, 0x83, 0x55, 0xbc, 0x89, + 0xf5, 0x0d, 0x52, 0x36, 0x0d, 0x1c, 0xe4, 0x5c, 0x82, 0x7d, 0xb8, 0x6c, 0x92, 0x12, 0x9e, 0xca, + 0x61, 0xc3, 0x7e, 0x26, 0x71, 0xc9, 0xf1, 0xab, 0xec, 0xc9, 0x84, 0xe0, 0xfc, 0x2b, 0x64, 0xdc, + 0x92, 0x00, 0xd7, 0x3b, 0xc8, 0xa4, 0x68, 0x47, 0x14, 0xd6, 0x89, 0x8e, 0x8c, 0x3c, 0x5c, 0x84, + 0x3d, 0x2e, 0x0b, 0x1b, 0x3e, 0x49, 0x6e, 0xb6, 0x96, 0x83, 0x0d, 0x9f, 0x60, 0xf3, 0x56, 0x50, + 0x51, 0x33, 0x90, 0x28, 0x5c, 0xd3, 0x0c, 0x46, 0xb1, 0x0c, 0xfb, 0x5d, 0x0a, 0xd6, 0xb2, 0x1d, + 0x6c, 0x77, 0x95, 0x54, 0x4b, 0x93, 0xf5, 0xcb, 0x82, 0x0d, 0x43, 0x79, 0x53, 0xcb, 0x8b, 0x42, + 0xb6, 0x84, 0x34, 0x03, 0x5e, 0x85, 0xdd, 0x2e, 0x91, 0xc3, 0x31, 0x57, 0xcb, 0xf1, 0x4e, 0x0d, + 0x3c, 0x6b, 0x4d, 0x0b, 0xcb, 0x5b, 0x1a, 0xd5, 0x91, 0x66, 0x88, 0x82, 0x8c, 0xf5, 0x82, 0x56, + 0x2e, 0xc2, 0xb7, 0x43, 0x34, 0x12, 0x37, 0x13, 0x45, 0x13, 0xec, 0x92, 0x1b, 0xc4, 0x7e, 0xf3, + 0xa2, 0x70, 0xd5, 0x28, 0xb0, 0x06, 0xc9, 0x21, 0x82, 0x54, 0x7d, 0x5b, 0x6c, 0x82, 0xe0, 0x5c, + 0xba, 0x66, 0x22, 0x63, 0x7b, 0xb3, 0x6c, 0x5a, 0xa2, 0xb0, 0x8c, 0xcd, 0x22, 0x32, 0x76, 0xe1, + 0xb5, 0x10, 0x47, 0x9a, 0x9b, 0x8f, 0xe2, 0x48, 0x07, 0x38, 0xae, 0xe2, 0x22, 0xdd, 0x42, 0x15, + 0x6c, 0x88, 0xf6, 0xde, 0xbd, 0x85, 0x4d, 0xbb, 0x2a, 0x14, 0x66, 0x42, 0x3c, 0xf3, 0x5c, 0x2a, + 0x8a, 0x67, 0x3e, 0xc0, 0xf3, 0x5e, 0xd9, 0xd4, 0x72, 0x5b, 0xa2, 0x90, 0xdd, 0xd1, 0xac, 0xfb, + 0x0e, 0x0b, 0x7c, 0x33, 0x44, 0xb2, 0xc0, 0x89, 0x51, 0x24, 0x0b, 0xc1, 0xf7, 0xa2, 0xe9, 0xc8, + 0x10, 0x85, 0x55, 0x0b, 0xe9, 0xbb, 0xf0, 0xad, 0x10, 0xfa, 0x22, 0x37, 0x15, 0x85, 0xbe, 0x18, + 0x40, 0xaf, 0x23, 0x53, 0xa3, 0x22, 0xeb, 0x95, 0x1c, 0x86, 0x97, 0xfd, 0x11, 0xc6, 0xde, 0xaa, + 0x14, 0x8d, 0x4f, 0x06, 0x5f, 0xc8, 0x9d, 0xb2, 0xa9, 0xf9, 0xee, 0x6f, 0xc0, 0xae, 0xa2, 0x3f, + 0xc6, 0x93, 0xdc, 0x5b, 0xe3, 0x37, 0xb5, 0x7c, 0x5e, 0xc7, 0x6c, 0x41, 0x9b, 0x10, 0x02, 0x1f, + 0xbc, 0xd1, 0x1e, 0x5a, 0x6b, 0xb1, 0x2e, 0x2c, 0x56, 0xb4, 0x8a, 0x28, 0xac, 0x52, 0x13, 0x61, + 0x1d, 0x2e, 0xc2, 0x78, 0x71, 0x7f, 0x7c, 0x35, 0xa4, 0xaa, 0x1d, 0x69, 0x4b, 0x64, 0x0b, 0x89, + 0xc2, 0xf7, 0x90, 0x85, 0x4c, 0xb8, 0x09, 0x87, 0xd8, 0x5c, 0x41, 0x45, 0x6c, 0x6a, 0xb9, 0xd0, + 0xea, 0x7f, 0x7d, 0xdc, 0x59, 0x6c, 0x17, 0x9d, 0xa2, 0x09, 0x21, 0xf4, 0xd1, 0xf9, 0x54, 0xbb, + 0x5a, 0xdc, 0x24, 0x86, 0x65, 0x62, 0xa4, 0x8b, 0xc2, 0xf7, 0xca, 0x78, 0x03, 0xe7, 0x44, 0x21, + 0x83, 0x0c, 0x94, 0x47, 0x8d, 0xfd, 0x48, 0x07, 0xf6, 0x13, 0xea, 0x54, 0x62, 0x12, 0xc3, 0x22, + 0xa2, 0x70, 0xdb, 0xb0, 0x90, 0xa9, 0x11, 0xdf, 0xcf, 0xfb, 0x90, 0x63, 0x13, 0xd7, 0xf3, 0xe3, + 0x34, 0x65, 0x79, 0xdc, 0xd9, 0x1a, 0x7c, 0x17, 0xa1, 0x8f, 0x75, 0x9b, 0xda, 0x6d, 0x8a, 0x68, + 0x8e, 0x88, 0x42, 0x16, 0x11, 0x61, 0x1d, 0x95, 0x75, 0x22, 0x0a, 0xb2, 0x89, 0xee, 0x6b, 0x3a, + 0xcc, 0xd6, 0xd0, 0x3b, 0x7d, 0xff, 0x56, 0x73, 0xfa, 0xba, 0x99, 0x8e, 0x0c, 0x4b, 0x43, 0x05, + 0xbb, 0xd2, 0x5b, 0x9a, 0x6e, 0x0f, 0xaa, 0xae, 0x32, 0xdd, 0x1f, 0x14, 0x33, 0xe3, 0x77, 0xb3, + 0x13, 0xc2, 0xdd, 0x6c, 0xd4, 0x10, 0xc8, 0x90, 0xb2, 0x91, 0xd3, 0x74, 0x41, 0xd6, 0xcb, 0x9b, + 0x9b, 0x54, 0x14, 0x56, 0xc9, 0x0e, 0x82, 0x32, 0x8c, 0x97, 0xa9, 0xdb, 0xd2, 0x79, 0x0f, 0x7c, + 0xb5, 0xfe, 0xcd, 0xe4, 0xb6, 0xa9, 0x90, 0x21, 0xa6, 0x81, 0x4d, 0x6f, 0xab, 0xcc, 0x20, 0x93, + 0xe8, 0xf6, 0xfa, 0x07, 0xe7, 0x7c, 0x8e, 0x34, 0x37, 0x11, 0xe4, 0x08, 0x4e, 0xeb, 0x45, 0xba, + 0xb5, 0x51, 0x36, 0x0d, 0x51, 0xb8, 0xa7, 0x99, 0x05, 0xcd, 0xd0, 0x10, 0x94, 0x7c, 0xd8, 0x1c, + 0xf7, 0x7a, 0x10, 0x36, 0x17, 0xaa, 0xb4, 0x5e, 0x2e, 0x6e, 0x94, 0xa9, 0x28, 0xdc, 0xde, 0xd2, + 0x08, 0x4c, 0xc1, 0xce, 0x32, 0xf5, 0xf6, 0x65, 0x1f, 0x54, 0xb7, 0x27, 0x2f, 0x21, 0x5d, 0x47, + 0x54, 0x14, 0xee, 0xe0, 0x0f, 0x10, 0x85, 0xf3, 0xcc, 0x91, 0xd3, 0xdd, 0x93, 0x1e, 0xa6, 0xb6, + 0x63, 0xef, 0x6c, 0x61, 0x06, 0xc3, 0xb6, 0x2b, 0x13, 0x17, 0x88, 0x01, 0xbf, 0xeb, 0xe3, 0xa4, + 0xfd, 0x8e, 0xad, 0x5f, 0x33, 0xa9, 0xb0, 0x68, 0x14, 0x30, 0x03, 0x66, 0x90, 0xae, 0x6d, 0x12, + 0xd3, 0x60, 0x42, 0xc0, 0x03, 0xa7, 0x38, 0x31, 0x08, 0x0e, 0x69, 0x0f, 0xa4, 0x5b, 0xc2, 0x0d, + 0xb4, 0x8d, 0x85, 0x8c, 0x66, 0xed, 0x8a, 0xc2, 0x5d, 0x0b, 0x6d, 0xb9, 0xdd, 0xe9, 0xac, 0x96, + 0x13, 0x41, 0x64, 0xb0, 0x3b, 0x6f, 0x20, 0x2a, 0xdc, 0xc3, 0x05, 0xbb, 0x91, 0xb7, 0x70, 0x05, + 0xe5, 0xd1, 0x7e, 0x60, 0xad, 0xb3, 0x90, 0x2b, 0x39, 0x86, 0xdc, 0xff, 0x81, 0x50, 0x73, 0x62, + 0xd3, 0x6a, 0x61, 0xc7, 0x4d, 0x26, 0xcf, 0x4d, 0x3f, 0xeb, 0xdb, 0xc0, 0xd3, 0x11, 0xb7, 0x06, + 0xe4, 0xd8, 0x93, 0x2a, 0xfb, 0x86, 0x51, 0xa7, 0xe6, 0x3d, 0xe6, 0x08, 0xec, 0xf7, 0xd8, 0xb1, + 0xef, 0x24, 0xc6, 0x9c, 0x7c, 0xf7, 0x1b, 0x3a, 0xb9, 0x1a, 0xe5, 0xaa, 0x4f, 0x0b, 0x17, 0x72, + 0xff, 0x0f, 0xf6, 0xfb, 0xb7, 0x95, 0xfd, 0xab, 0x5d, 0xbd, 0xcc, 0xe1, 0x9b, 0x07, 0x75, 0x18, + 0x75, 0x8a, 0xf4, 0x3d, 0x26, 0x2a, 0x35, 0xa5, 0xdc, 0x2e, 0xec, 0xcf, 0xe9, 0xa4, 0x9c, 0x57, + 0x73, 0x26, 0xce, 0x63, 0x7b, 0xee, 0xe9, 0xde, 0x5d, 0xdb, 0x83, 0x84, 0x13, 0x5e, 0xff, 0xe4, + 0x41, 0x3d, 0xfe, 0xe7, 0x9f, 0x82, 0xde, 0x38, 0x18, 0x0f, 0x44, 0x4a, 0x57, 0x80, 0x92, 0x60, + 0x66, 0x99, 0x7d, 0x2b, 0xee, 0x2d, 0x18, 0x47, 0x94, 0x6a, 0xd4, 0xc2, 0x79, 0x37, 0xa0, 0x17, + 0x7d, 0x56, 0xef, 0xfc, 0xfc, 0x01, 0xf8, 0xaa, 0x0a, 0x00, 0x0f, 0x56, 0x80, 0xe2, 0x43, 0xb8, + 0x7f, 0x6e, 0x63, 0xd7, 0x14, 0x2c, 0x96, 0x1d, 0xb1, 0x76, 0x4b, 0x98, 0x5d, 0x91, 0xed, 0x94, + 0xff, 0xbe, 0xed, 0x8b, 0x2a, 0xe8, 0x31, 0x92, 0x53, 0x76, 0x51, 0x1e, 0x99, 0xf9, 0xa9, 0xb4, + 0x7b, 0x5c, 0xf8, 0x49, 0x1b, 0xfc, 0x2e, 0x0c, 0x97, 0x70, 0x93, 0xe3, 0x69, 0xe1, 0x03, 0xa1, + 0x92, 0x59, 0xbf, 0x2b, 0x0a, 0xc9, 0xf9, 0x65, 0x59, 0x50, 0x16, 0x6f, 0x4e, 0x08, 0xb7, 0x92, + 0x42, 0x11, 0xe7, 0xb5, 0x72, 0x51, 0x08, 0xe4, 0x47, 0xe0, 0xc5, 0x30, 0x78, 0x81, 0x1b, 0x1f, + 0x5f, 0xf0, 0xc1, 0x29, 0x29, 0x00, 0xde, 0xd2, 0x0a, 0x5b, 0x21, 0xe8, 0x15, 0xd8, 0x1b, 0x84, + 0x26, 0xe7, 0xb9, 0xe9, 0xf1, 0xe4, 0xbc, 0x0f, 0x9e, 0x4f, 0x07, 0xc0, 0x15, 0x6c, 0xee, 0xd6, + 0x33, 0x2c, 0xc2, 0x5e, 0x4b, 0xca, 0x07, 0xab, 0x3e, 0x13, 0x59, 0xf5, 0x3b, 0xa8, 0x2c, 0xdc, + 0x91, 0x96, 0xa2, 0xea, 0xff, 0x76, 0x0d, 0xc5, 0x02, 0x37, 0x15, 0xd9, 0x00, 0x8f, 0xa2, 0xae, + 0x0e, 0xd7, 0x60, 0x5f, 0x88, 0x20, 0x69, 0xcb, 0x94, 0xc8, 0x66, 0x78, 0x14, 0xd1, 0x6d, 0xc9, + 0xc2, 0x1e, 0x24, 0x4d, 0xd9, 0x8f, 0x0b, 0xa5, 0xf2, 0x54, 0xb2, 0xc0, 0xc9, 0xe3, 0x49, 0x61, + 0xd9, 0x66, 0x48, 0xcf, 0x0a, 0xcb, 0xb2, 0xb0, 0x22, 0xdf, 0x94, 0x44, 0x21, 0x29, 0xf9, 0xc4, + 0x0b, 0x73, 0x1e, 0xf1, 0xf2, 0xfa, 0x5d, 0x61, 0x51, 0x8a, 0x6a, 0x5d, 0x98, 0x54, 0xb2, 0x49, + 0x25, 0xdb, 0x9c, 0x8a, 0xc2, 0x42, 0x80, 0x55, 0x0a, 0x74, 0xda, 0x85, 0xd9, 0x1a, 0xda, 0xba, + 0x9a, 0xbe, 0x1b, 0x22, 0x4d, 0x17, 0xb8, 0x95, 0xf1, 0xb4, 0x4b, 0x9a, 0x9c, 0x0f, 0xb0, 0xa6, + 0x03, 0xfd, 0x98, 0xae, 0x65, 0x8d, 0xec, 0x84, 0x40, 0xa2, 0xc0, 0x1b, 0xc5, 0xec, 0xc4, 0xfb, + 0x26, 0xec, 0x36, 0x48, 0x1e, 0x53, 0xb5, 0x84, 0x4d, 0x15, 0xdd, 0x67, 0xa1, 0xde, 0x1e, 0x79, + 0xf8, 0x51, 0x15, 0x80, 0x2f, 0xaa, 0x00, 0xcc, 0xda, 0x33, 0xc1, 0xfb, 0xaa, 0x43, 0x6c, 0xb2, + 0x85, 0x1f, 0x74, 0x12, 0x07, 0x74, 0x1d, 0x9b, 0x8b, 0xf7, 0xb9, 0x75, 0xf8, 0x8a, 0x3d, 0xc5, + 0xb1, 0x69, 0x22, 0x95, 0x92, 0x4d, 0x6b, 0x07, 0x99, 0x58, 0xad, 0x60, 0x93, 0xda, 0xa7, 0x67, + 0xc8, 0xe6, 0xc7, 0x80, 0x3b, 0x9d, 0x7c, 0x12, 0x56, 0x89, 0x21, 0x0f, 0x96, 0x75, 0x51, 0xf7, + 0x1c, 0x10, 0x77, 0x0b, 0xf2, 0xa4, 0x84, 0x4d, 0x64, 0x69, 0x46, 0x41, 0xa5, 0xbb, 0xd4, 0xc2, + 0x45, 0x9f, 0xb0, 0xab, 0x09, 0xe1, 0x29, 0x1f, 0x95, 0x65, 0x20, 0x8f, 0x6f, 0x16, 0x76, 0xe6, + 0x35, 0xba, 0xad, 0x52, 0xed, 0x3e, 0x66, 0xf1, 0xda, 0x1e, 0xf9, 0xe4, 0xa3, 0x00, 0xba, 0x7d, + 0x32, 0xc6, 0x7f, 0xf4, 0x5f, 0xad, 0x4a, 0xdc, 0xb6, 0xca, 0x6a, 0xf7, 0x31, 0x37, 0x01, 0x3b, + 0x28, 0xdd, 0x52, 0xb7, 0xf1, 0x2e, 0x8b, 0xcc, 0x76, 0xca, 0x89, 0xdf, 0x56, 0x01, 0x4b, 0xb9, + 0x74, 0x98, 0x6d, 0x09, 0xc0, 0x7f, 0x74, 0x45, 0x69, 0xa7, 0x74, 0xeb, 0x3a, 0xde, 0xe5, 0xc6, + 0x61, 0x07, 0xca, 0xe7, 0xed, 0xd5, 0x94, 0x45, 0xff, 0x3a, 0xe5, 0x5e, 0x9b, 0x9a, 0x85, 0x1b, + 0xcc, 0x56, 0xfe, 0xa3, 0x16, 0xc5, 0x2b, 0xe6, 0x96, 0x61, 0x57, 0x8e, 0x10, 0x33, 0xaf, 0x19, + 0x68, 0x3f, 0xae, 0x37, 0x5a, 0xb3, 0xfe, 0xb0, 0x65, 0x35, 0xb3, 0x6f, 0xe6, 0x44, 0xf2, 0x94, + 0x20, 0x92, 0xbb, 0x05, 0x87, 0x74, 0x52, 0xa0, 0x2a, 0xb5, 0xb5, 0x5d, 0xd1, 0xee, 0xa4, 0xbc, + 0x46, 0xd1, 0x86, 0x8e, 0xf3, 0xcd, 0xf2, 0xcc, 0x2b, 0x2d, 0xca, 0xa0, 0x0d, 0xcb, 0x7a, 0xa8, + 0x25, 0x17, 0xc4, 0x7d, 0x1f, 0x76, 0xeb, 0xa4, 0xa0, 0x9a, 0x38, 0x87, 0xb5, 0x0a, 0x36, 0xdd, + 0x9c, 0xcc, 0x41, 0xd6, 0xe2, 0xbe, 0x4f, 0x1e, 0x84, 0xa0, 0x2b, 0x2d, 0x4a, 0x97, 0x4e, 0x0a, + 0x8a, 0xfb, 0x91, 0xcb, 0xc0, 0x16, 0xba, 0xe3, 0xc6, 0xda, 0xa3, 0xaf, 0xe1, 0xde, 0xab, 0x19, + 0x03, 0x35, 0xc9, 0xe2, 0x16, 0xba, 0xc3, 0xc9, 0xb0, 0x85, 0x50, 0xf7, 0x42, 0xd8, 0x78, 0x74, + 0xa5, 0xc2, 0xef, 0xbd, 0x96, 0x83, 0x50, 0xee, 0x2f, 0x81, 0x13, 0xd4, 0xd1, 0xd1, 0x06, 0xd6, + 0x29, 0x3f, 0x22, 0xb4, 0x8e, 0x77, 0x49, 0x6f, 0x1f, 0x60, 0x83, 0x0b, 0xc5, 0x86, 0xa6, 0x97, + 0x73, 0xa5, 0x1b, 0x8c, 0xe1, 0xaa, 0x61, 0x99, 0xbb, 0xf2, 0xbc, 0xf7, 0xaa, 0x3b, 0x7f, 0xe6, + 0x84, 0x9d, 0xf8, 0x0f, 0xd9, 0x8b, 0xff, 0x19, 0x68, 0x49, 0x8c, 0xb3, 0x00, 0xd4, 0xcf, 0x40, + 0xc7, 0xa4, 0x3d, 0x0e, 0xfe, 0x07, 0xec, 0xfd, 0xf2, 0x1f, 0x5b, 0xdb, 0xff, 0xe4, 0x53, 0xd0, + 0x12, 0x3f, 0xc1, 0xe4, 0x84, 0xc3, 0xc3, 0xbd, 0xe5, 0xc6, 0xfc, 0x2c, 0xa2, 0x3a, 0xff, 0x96, + 0x0d, 0x03, 0xeb, 0xaa, 0x56, 0x62, 0x77, 0xc9, 0x3a, 0x03, 0x3b, 0x91, 0xc2, 0xf2, 0x73, 0x77, + 0x48, 0xd6, 0xfe, 0x2f, 0xb3, 0x5a, 0x2d, 0x71, 0xbb, 0x70, 0x98, 0x6c, 0x6e, 0xea, 0x9a, 0x81, + 0x55, 0x5a, 0x36, 0x2b, 0x5a, 0x05, 0x6d, 0x68, 0xba, 0x66, 0xed, 0x3a, 0xf9, 0xfa, 0xef, 0xb0, + 0x3e, 0x4b, 0x46, 0xf7, 0x99, 0x03, 0xcb, 0x06, 0x51, 0x11, 0xd9, 0x7a, 0x9e, 0x34, 0xb0, 0xe3, + 0xbe, 0x0f, 0x79, 0xef, 0xce, 0xf6, 0x86, 0x4e, 0x72, 0xdb, 0x38, 0xaf, 0x52, 0x6c, 0x56, 0xb4, + 0x1c, 0xa6, 0x4d, 0xef, 0x7f, 0xb4, 0x3f, 0x72, 0x36, 0xd6, 0x56, 0xe5, 0x94, 0x8b, 0x97, 0x1d, + 0x78, 0xd6, 0x45, 0x73, 0x4b, 0x90, 0x63, 0x8c, 0x2a, 0xd2, 0xf5, 0x7d, 0xce, 0x37, 0x9a, 0x0c, + 0xed, 0x56, 0x25, 0xc1, 0x10, 0x8b, 0xba, 0xee, 0xb3, 0xbc, 0x0b, 0x13, 0x75, 0xf5, 0x7a, 0x35, + 0x32, 0x9d, 0xc9, 0x7e, 0x4a, 0x65, 0xba, 0xa6, 0x16, 0x7e, 0x7a, 0xa5, 0x55, 0xe9, 0xdb, 0xa8, + 0xa9, 0xe0, 0x8f, 0xe0, 0xe9, 0x32, 0xc5, 0xa6, 0xdd, 0xc9, 0xda, 0xa6, 0x96, 0x63, 0x77, 0xba, + 0x55, 0xff, 0xf7, 0x5a, 0xf8, 0xd7, 0x99, 0x97, 0xe1, 0x69, 0xe7, 0x17, 0x5d, 0xa6, 0xbd, 0x5f, + 0x74, 0x99, 0xbe, 0xe3, 0x59, 0xc8, 0x31, 0xfb, 0x95, 0x2a, 0xaf, 0xd8, 0x24, 0x37, 0x03, 0x1c, + 0xbe, 0x01, 0x37, 0x01, 0x13, 0xb4, 0x5c, 0x28, 0x60, 0x5b, 0x76, 0xa8, 0x88, 0x65, 0x1f, 0xf8, + 0x71, 0x7b, 0x40, 0x28, 0x7d, 0xfe, 0xf3, 0x45, 0xf6, 0x98, 0x3b, 0x0f, 0xfb, 0xb1, 0x69, 0x12, + 0x53, 0xcd, 0x63, 0x9a, 0x33, 0x35, 0x16, 0x79, 0xe7, 0x27, 0x98, 0x6d, 0x82, 0x15, 0x2c, 0xed, + 0x3f, 0xe7, 0xd6, 0x21, 0xef, 0x45, 0x4e, 0xdd, 0x84, 0xc8, 0xfe, 0xda, 0x71, 0xbe, 0x49, 0x07, + 0xc7, 0x94, 0x53, 0x2e, 0xce, 0x4d, 0x87, 0xf8, 0x8b, 0xc7, 0x16, 0x1c, 0xa8, 0x61, 0xd4, 0x2a, + 0x9a, 0xb5, 0xcb, 0x8b, 0x4d, 0xd2, 0x16, 0xeb, 0x21, 0x2a, 0xe7, 0x6a, 0x7c, 0x40, 0x34, 0xc6, + 0x94, 0x93, 0x61, 0x67, 0x8c, 0x91, 0x7b, 0x1b, 0x76, 0xb1, 0x29, 0xc2, 0x1a, 0x45, 0xf9, 0x29, + 0x36, 0x87, 0x47, 0x1a, 0xe6, 0x45, 0xae, 0xda, 0x66, 0x0a, 0xa4, 0xde, 0x9f, 0x94, 0xbb, 0x0b, + 0x13, 0xee, 0x0f, 0xd2, 0xd8, 0xef, 0x8b, 0x5a, 0xc8, 0xc2, 0xfc, 0xb4, 0x00, 0xc6, 0x7b, 0xa5, + 0xc9, 0x48, 0x16, 0xa7, 0x62, 0xf7, 0x7c, 0x48, 0xd6, 0x46, 0x28, 0x7d, 0x95, 0xf0, 0x03, 0x2e, + 0x03, 0x61, 0xae, 0x4c, 0x2d, 0x52, 0x54, 0xf3, 0x06, 0xe5, 0x67, 0x58, 0xbb, 0xa3, 0xab, 0x95, + 0x61, 0x66, 0x4b, 0xb7, 0xb2, 0xee, 0xaa, 0xde, 0xe9, 0xe0, 0x96, 0x0c, 0xca, 0x11, 0xc8, 0x6f, + 0x97, 0x37, 0xb0, 0x69, 0x60, 0x0b, 0x53, 0xb5, 0x5c, 0x2a, 0x98, 0x28, 0x8f, 0xd5, 0xbc, 0x89, + 0x34, 0x83, 0x9f, 0x6d, 0x92, 0x23, 0xbf, 0xee, 0x83, 0xee, 0x3a, 0x98, 0x25, 0x1b, 0x12, 0x98, + 0xc0, 0xa7, 0xb6, 0x23, 0x2d, 0xb8, 0xf7, 0x61, 0xa7, 0xb5, 0xa9, 0x96, 0x90, 0x89, 0x8a, 0x94, + 0xff, 0xd7, 0x8e, 0x03, 0x2f, 0xf9, 0xa7, 0x3f, 0x79, 0x30, 0xc0, 0x56, 0x6c, 0x5b, 0x55, 0x38, + 0x78, 0x6c, 0x61, 0x93, 0xb2, 0x11, 0x1d, 0xb7, 0x36, 0xd7, 0x19, 0x23, 0xf7, 0x43, 0xd8, 0xc3, + 0x7e, 0xde, 0x47, 0x33, 0x2c, 0x6c, 0x1a, 0x48, 0xe7, 0xbf, 0x3a, 0xb8, 0x8b, 0x81, 0x4f, 0x1e, + 0x84, 0xc1, 0x8c, 0xbb, 0xdb, 0x7e, 0xb4, 0xea, 0x3e, 0xe1, 0xde, 0x87, 0x7d, 0xce, 0x21, 0x80, + 0x0d, 0x09, 0xcd, 0xd8, 0x24, 0xfc, 0xaf, 0x3b, 0x9a, 0x24, 0x51, 0x23, 0x8e, 0x2d, 0xc1, 0xd4, + 0x84, 0xd2, 0xc3, 0xd8, 0xbc, 0x47, 0xc3, 0x6f, 0xc2, 0xde, 0xf0, 0x5a, 0xcf, 0x25, 0x60, 0xab, + 0x2d, 0x07, 0x58, 0x3a, 0x40, 0xb1, 0xff, 0xe4, 0x06, 0x60, 0x5b, 0x05, 0xe9, 0x65, 0xcc, 0x2e, + 0x49, 0x74, 0x2a, 0xce, 0x87, 0x4b, 0x2d, 0x0b, 0xe0, 0xd2, 0x87, 0x8f, 0xab, 0xe0, 0xc7, 0xf0, + 0x0c, 0x3c, 0xc9, 0xd2, 0x65, 0x36, 0xbf, 0x90, 0xc5, 0xba, 0x93, 0x44, 0xe4, 0xda, 0x92, 0xec, + 0x72, 0xf8, 0x6b, 0x70, 0xc0, 0x49, 0xa6, 0x91, 0x3c, 0x16, 0xd6, 0xfd, 0x6e, 0xe4, 0x7a, 0x16, + 0x44, 0x96, 0x73, 0x12, 0x59, 0x4a, 0x06, 0xa6, 0xe1, 0x29, 0x3f, 0xab, 0x16, 0xfe, 0x0e, 0xc9, + 0x70, 0xf2, 0x82, 0x28, 0xcd, 0x8a, 0x52, 0x52, 0x4c, 0x2f, 0x88, 0x69, 0x49, 0x4c, 0xcd, 0x8a, + 0xa9, 0xa4, 0x98, 0x9a, 0x17, 0xd3, 0x17, 0x64, 0x01, 0x76, 0xfa, 0x3f, 0x9a, 0xc4, 0xbe, 0x47, + 0xdc, 0xfa, 0xa4, 0x0a, 0x5a, 0xf6, 0xaa, 0xa0, 0x35, 0x25, 0xa6, 0xed, 0xde, 0x94, 0x47, 0x21, + 0xcc, 0xe3, 0x92, 0x4e, 0x76, 0x8b, 0xd8, 0xb0, 0xb8, 0xfe, 0x40, 0x06, 0x0e, 0xcc, 0xff, 0xf5, + 0xa7, 0x00, 0xc8, 0x13, 0x70, 0x80, 0x89, 0x0c, 0x6f, 0x6b, 0xf7, 0x52, 0x47, 0xb6, 0x29, 0x17, + 0xba, 0x3c, 0x23, 0x8b, 0x70, 0xa8, 0x76, 0xa5, 0x0d, 0x5a, 0xbf, 0xf1, 0xa4, 0x0a, 0x46, 0x59, + 0xd2, 0xea, 0xa2, 0x98, 0x9a, 0x93, 0x67, 0xe1, 0xe9, 0xa8, 0x05, 0x23, 0x88, 0x38, 0xff, 0xa4, + 0x0a, 0x26, 0x6d, 0x44, 0x3a, 0x25, 0xa6, 0xd3, 0x6b, 0xb1, 0x78, 0x4b, 0xa2, 0xd5, 0xcf, 0x3e, + 0x39, 0xf7, 0x6b, 0x46, 0x13, 0xc2, 0x5a, 0x2c, 0x7e, 0x2e, 0x31, 0xb6, 0x16, 0x8b, 0x8f, 0x25, + 0x5e, 0x5d, 0x8b, 0xc5, 0x5f, 0x4b, 0xbc, 0xbe, 0x16, 0x8b, 0x4f, 0x26, 0xce, 0x8f, 0x7d, 0x9d, + 0x80, 0xbd, 0x19, 0x13, 0x23, 0x0b, 0xfb, 0x49, 0x9d, 0xb3, 0xf5, 0x39, 0x9d, 0xe0, 0xa1, 0xfe, + 0xde, 0x91, 0x1d, 0xea, 0xc3, 0xc7, 0x79, 0xed, 0xc5, 0x1c, 0xe7, 0xa3, 0x0e, 0xf2, 0xdb, 0x2f, + 0xe8, 0x20, 0x1f, 0x79, 0x84, 0x2f, 0x3c, 0xdf, 0x11, 0x7e, 0x20, 0xea, 0x08, 0x1f, 0x79, 0x60, + 0x7f, 0x35, 0xf2, 0xc0, 0x5d, 0x73, 0x7e, 0x11, 0xa2, 0xce, 0x2f, 0xa1, 0x33, 0xca, 0xe9, 0xba, + 0x13, 0x40, 0x40, 0xec, 0x0f, 0xd5, 0x88, 0x7d, 0x5f, 0xda, 0xf3, 0x35, 0xd2, 0x7e, 0x5f, 0xca, + 0x2f, 0x1e, 0x46, 0xca, 0xbf, 0xac, 0x22, 0xfe, 0xed, 0xc3, 0x89, 0xf8, 0x98, 0x2f, 0xe0, 0x2f, + 0x1f, 0x4a, 0xc0, 0xc7, 0x7c, 0xf1, 0xfe, 0xc3, 0xc3, 0x69, 0xf7, 0xf0, 0x12, 0x50, 0xa3, 0xdd, + 0x83, 0x1a, 0x9c, 0xbc, 0x10, 0x11, 0xdd, 0x44, 0x3a, 0xaf, 0x1f, 0x4e, 0x3a, 0xbf, 0xcc, 0x92, + 0xf9, 0x65, 0x16, 0x9e, 0x47, 0x22, 0xf0, 0xb6, 0x8f, 0x56, 0xe0, 0xc5, 0x9a, 0x89, 0xbb, 0xe7, + 0x94, 0x2f, 0xfd, 0x9f, 0x5d, 0xae, 0xb9, 0x14, 0x21, 0x0f, 0x07, 0x05, 0x45, 0xcf, 0xc3, 0xa7, + 0x60, 0xff, 0xa3, 0x7c, 0x26, 0x24, 0x25, 0x7a, 0x1f, 0x3e, 0x05, 0x81, 0xcf, 0xf2, 0x6c, 0x03, + 0x1d, 0xc1, 0x3f, 0x7c, 0x0a, 0x22, 0x4b, 0xe4, 0xf9, 0xc6, 0x72, 0xe2, 0xf4, 0xc3, 0xa7, 0xa0, + 0x51, 0xa1, 0x7c, 0xb9, 0xb9, 0xb0, 0x18, 0x7d, 0xf8, 0x14, 0x34, 0x33, 0xf0, 0x65, 0x86, 0xf3, + 0x15, 0x4f, 0xe7, 0x7a, 0x4b, 0xbd, 0xd8, 0x98, 0x4c, 0x9c, 0x5f, 0x8b, 0xc5, 0x4f, 0x25, 0x86, + 0x82, 0xc2, 0x63, 0xec, 0x27, 0x09, 0xd8, 0xe7, 0x5e, 0xea, 0x3d, 0xa8, 0xe6, 0xc8, 0x45, 0x68, + 0x8e, 0x37, 0xbf, 0xb1, 0xe6, 0x08, 0xdc, 0x24, 0x8e, 0xca, 0x27, 0x54, 0x1a, 0x0b, 0x10, 0xf9, + 0x90, 0x02, 0x24, 0xca, 0x63, 0x9d, 0x1a, 0xf9, 0xa0, 0xb1, 0x1a, 0xc9, 0x1c, 0x56, 0x8d, 0x44, + 0x39, 0x3e, 0x96, 0x26, 0xdf, 0x6a, 0x69, 0xf2, 0x2d, 0xdc, 0x48, 0x7f, 0x1f, 0x62, 0xe5, 0x78, + 0xe7, 0xfe, 0x5d, 0xed, 0xdc, 0x97, 0xfe, 0x14, 0xd4, 0x6d, 0xbe, 0x8f, 0xab, 0xe0, 0x03, 0x38, + 0x1c, 0x1d, 0x4c, 0x68, 0x95, 0xc4, 0x39, 0x38, 0xd5, 0x20, 0x94, 0x30, 0x98, 0x14, 0x17, 0x44, + 0xe1, 0xa2, 0x28, 0x24, 0x25, 0x51, 0x48, 0xa6, 0x44, 0xc1, 0x09, 0x29, 0x9c, 0x6f, 0x18, 0x52, + 0xe8, 0x4f, 0x5e, 0xf0, 0x82, 0x09, 0x5e, 0x24, 0x61, 0x22, 0xb8, 0xf1, 0x9f, 0xa9, 0x89, 0x24, + 0xfc, 0x71, 0xeb, 0x00, 0x27, 0xdc, 0x50, 0xaf, 0x06, 0x06, 0x12, 0x83, 0xcf, 0x08, 0x40, 0xfc, + 0xe7, 0x00, 0xec, 0x5a, 0xc6, 0xd6, 0x71, 0xf4, 0xe1, 0x25, 0x8f, 0x3e, 0x48, 0x07, 0xbb, 0x2e, + 0x10, 0xba, 0x23, 0x70, 0x44, 0xb2, 0xe0, 0xd2, 0x33, 0xb3, 0xaa, 0x8d, 0xf3, 0xa7, 0x0b, 0xcf, + 0xca, 0x9f, 0x36, 0xcc, 0x94, 0x1e, 0x8b, 0x91, 0xe7, 0x10, 0x23, 0x3f, 0x88, 0x08, 0x53, 0x1c, + 0x64, 0xf0, 0xef, 0x2f, 0x14, 0x7f, 0x48, 0x31, 0x8a, 0x37, 0x21, 0x4b, 0x9d, 0xb8, 0x69, 0x92, + 0x01, 0x96, 0x26, 0x39, 0x1b, 0xf5, 0xe6, 0xbc, 0xef, 0xa0, 0x60, 0x85, 0xed, 0x05, 0x4e, 0x4e, + 0xe4, 0x5b, 0x28, 0xcc, 0x5e, 0x6c, 0x46, 0x82, 0x7b, 0xef, 0x39, 0x73, 0x8e, 0xc7, 0xd9, 0xc6, + 0xe3, 0x6c, 0xe3, 0xcb, 0x18, 0x8c, 0x1a, 0xa8, 0xd3, 0xc3, 0x5f, 0x5d, 0x06, 0xdf, 0xaa, 0x78, + 0x94, 0xa3, 0x3a, 0xfd, 0x9f, 0x16, 0x6b, 0xa4, 0x3a, 0xe5, 0x3f, 0x07, 0x4f, 0x7e, 0x35, 0x72, + 0xe2, 0xf3, 0x5f, 0x8d, 0x9c, 0xf8, 0xfa, 0x57, 0x23, 0xe0, 0xa3, 0xbd, 0x11, 0xf0, 0x77, 0x7b, + 0x23, 0xe0, 0x17, 0x7b, 0x23, 0xe0, 0xc9, 0xde, 0x08, 0xf8, 0x7c, 0x6f, 0x04, 0xfc, 0x72, 0x6f, + 0x04, 0x7c, 0xb5, 0x37, 0x72, 0xe2, 0xeb, 0xbd, 0x11, 0xf0, 0x67, 0x5f, 0x8e, 0x9c, 0x78, 0xf4, + 0xe5, 0x08, 0x78, 0xf2, 0xe5, 0xc8, 0x89, 0xcf, 0xbf, 0x1c, 0x39, 0xf1, 0xde, 0xbd, 0x02, 0x29, + 0x6d, 0x17, 0xa6, 0x3d, 0x51, 0x31, 0x5d, 0xa6, 0x33, 0x7e, 0x9e, 0x77, 0xaa, 0x64, 0x92, 0x8a, + 0x96, 0xc7, 0xe6, 0x94, 0x57, 0x3c, 0x53, 0xda, 0x28, 0x90, 0x19, 0xfc, 0x81, 0xe5, 0xfd, 0x4f, + 0x62, 0x1a, 0xfd, 0x5f, 0x73, 0x36, 0xda, 0xd9, 0x5a, 0x94, 0xfa, 0xdf, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xf6, 0x5b, 0x5b, 0x39, 0x60, 0x67, 0x00, 0x00, } func (this *GCPVPCIngressGwType) Equal(that interface{}) bool { @@ -5305,6 +5567,23 @@ func (this *GCPVPCIngressGwReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } + if len(this.GcpZoneNames) != len(that1.GcpZoneNames) { + return false + } + for i := range this.GcpZoneNames { + if this.GcpZoneNames[i] != that1.GcpZoneNames[i] { + return false + } + } + if this.NodeNumber != that1.NodeNumber { + return false + } + if !this.LocalNetwork.Equal(that1.LocalNetwork) { + return false + } + if !this.LocalSubnet.Equal(that1.LocalSubnet) { + return false + } if !this.PerformanceEnhancementMode.Equal(that1.PerformanceEnhancementMode) { return false } @@ -5329,25 +5608,48 @@ func (this *GCPVPCIngressEgressGwReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.NetworkPolicyChoice == nil { - if this.NetworkPolicyChoice != nil { - return false - } - } else if this.NetworkPolicyChoice == nil { - return false - } else if !this.NetworkPolicyChoice.Equal(that1.NetworkPolicyChoice) { + if len(this.GcpZoneNames) != len(that1.GcpZoneNames) { return false } - if that1.ForwardProxyChoice == nil { - if this.ForwardProxyChoice != nil { + for i := range this.GcpZoneNames { + if this.GcpZoneNames[i] != that1.GcpZoneNames[i] { return false } - } else if this.ForwardProxyChoice == nil { + } + if this.NodeNumber != that1.NodeNumber { return false - } else if !this.ForwardProxyChoice.Equal(that1.ForwardProxyChoice) { + } + if !this.InsideNetwork.Equal(that1.InsideNetwork) { return false } - if that1.GlobalNetworkChoice == nil { + if !this.InsideSubnet.Equal(that1.InsideSubnet) { + return false + } + if !this.OutsideNetwork.Equal(that1.OutsideNetwork) { + return false + } + if !this.OutsideSubnet.Equal(that1.OutsideSubnet) { + return false + } + if that1.NetworkPolicyChoice == nil { + if this.NetworkPolicyChoice != nil { + return false + } + } else if this.NetworkPolicyChoice == nil { + return false + } else if !this.NetworkPolicyChoice.Equal(that1.NetworkPolicyChoice) { + return false + } + if that1.ForwardProxyChoice == nil { + if this.ForwardProxyChoice != nil { + return false + } + } else if this.ForwardProxyChoice == nil { + return false + } else if !this.ForwardProxyChoice.Equal(that1.ForwardProxyChoice) { + return false + } + if that1.GlobalNetworkChoice == nil { if this.GlobalNetworkChoice != nil { return false } @@ -5824,6 +6126,23 @@ func (this *GCPVPCVoltstackClusterReplaceType) Equal(that interface{}) bool { } else if this == nil { return false } + if len(this.GcpZoneNames) != len(that1.GcpZoneNames) { + return false + } + for i := range this.GcpZoneNames { + if this.GcpZoneNames[i] != that1.GcpZoneNames[i] { + return false + } + } + if this.NodeNumber != that1.NodeNumber { + return false + } + if !this.SiteLocalNetwork.Equal(that1.SiteLocalNetwork) { + return false + } + if !this.SiteLocalSubnet.Equal(that1.SiteLocalSubnet) { + return false + } if that1.NetworkPolicyChoice == nil { if this.NetworkPolicyChoice != nil { return false @@ -6387,6 +6706,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } if !this.TfParams.Equal(that1.TfParams) { return false } @@ -6791,6 +7113,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_IngressGw) Equal(that interface{}) bool { @@ -7076,6 +7401,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if this == nil { return false } + if this.GcpRegion != that1.GcpRegion { + return false + } if that1.SiteType == nil { if this.SiteType != nil { return false @@ -7094,6 +7422,18 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { } else if !this.Deployment.Equal(that1.Deployment) { return false } + if this.InstanceType != that1.InstanceType { + return false + } + if this.NodesPerAz != that1.NodesPerAz { + return false + } + if this.DiskSize != that1.DiskSize { + return false + } + if this.SshKey != that1.SshKey { + return false + } if this.Address != that1.Address { return false } @@ -7133,6 +7473,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *ReplaceSpecType_IngressGw) Equal(that interface{}) bool { @@ -7530,6 +7873,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GetSpecType_IngressGw) Equal(that interface{}) bool { @@ -8215,8 +8561,16 @@ func (this *GCPVPCIngressGwReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 5) + s := make([]string, 0, 9) s = append(s, "&gcp_vpc_site.GCPVPCIngressGwReplaceType{") + s = append(s, "GcpZoneNames: "+fmt.Sprintf("%#v", this.GcpZoneNames)+",\n") + s = append(s, "NodeNumber: "+fmt.Sprintf("%#v", this.NodeNumber)+",\n") + if this.LocalNetwork != nil { + s = append(s, "LocalNetwork: "+fmt.Sprintf("%#v", this.LocalNetwork)+",\n") + } + if this.LocalSubnet != nil { + s = append(s, "LocalSubnet: "+fmt.Sprintf("%#v", this.LocalSubnet)+",\n") + } if this.PerformanceEnhancementMode != nil { s = append(s, "PerformanceEnhancementMode: "+fmt.Sprintf("%#v", this.PerformanceEnhancementMode)+",\n") } @@ -8227,8 +8581,22 @@ func (this *GCPVPCIngressEgressGwReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 22) + s := make([]string, 0, 28) s = append(s, "&gcp_vpc_site.GCPVPCIngressEgressGwReplaceType{") + s = append(s, "GcpZoneNames: "+fmt.Sprintf("%#v", this.GcpZoneNames)+",\n") + s = append(s, "NodeNumber: "+fmt.Sprintf("%#v", this.NodeNumber)+",\n") + if this.InsideNetwork != nil { + s = append(s, "InsideNetwork: "+fmt.Sprintf("%#v", this.InsideNetwork)+",\n") + } + if this.InsideSubnet != nil { + s = append(s, "InsideSubnet: "+fmt.Sprintf("%#v", this.InsideSubnet)+",\n") + } + if this.OutsideNetwork != nil { + s = append(s, "OutsideNetwork: "+fmt.Sprintf("%#v", this.OutsideNetwork)+",\n") + } + if this.OutsideSubnet != nil { + s = append(s, "OutsideSubnet: "+fmt.Sprintf("%#v", this.OutsideSubnet)+",\n") + } if this.NetworkPolicyChoice != nil { s = append(s, "NetworkPolicyChoice: "+fmt.Sprintf("%#v", this.NetworkPolicyChoice)+",\n") } @@ -8396,8 +8764,16 @@ func (this *GCPVPCVoltstackClusterReplaceType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 18) + s := make([]string, 0, 22) s = append(s, "&gcp_vpc_site.GCPVPCVoltstackClusterReplaceType{") + s = append(s, "GcpZoneNames: "+fmt.Sprintf("%#v", this.GcpZoneNames)+",\n") + s = append(s, "NodeNumber: "+fmt.Sprintf("%#v", this.NodeNumber)+",\n") + if this.SiteLocalNetwork != nil { + s = append(s, "SiteLocalNetwork: "+fmt.Sprintf("%#v", this.SiteLocalNetwork)+",\n") + } + if this.SiteLocalSubnet != nil { + s = append(s, "SiteLocalSubnet: "+fmt.Sprintf("%#v", this.SiteLocalSubnet)+",\n") + } if this.NetworkPolicyChoice != nil { s = append(s, "NetworkPolicyChoice: "+fmt.Sprintf("%#v", this.NetworkPolicyChoice)+",\n") } @@ -8546,7 +8922,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 39) + s := make([]string, 0, 40) s = append(s, "&gcp_vpc_site.GlobalSpecType{") s = append(s, "GcpRegion: "+fmt.Sprintf("%#v", this.GcpRegion)+",\n") if this.SiteType != nil { @@ -8609,6 +8985,9 @@ func (this *GlobalSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } if this.TfParams != nil { s = append(s, "TfParams: "+fmt.Sprintf("%#v", this.TfParams)+",\n") } @@ -8721,7 +9100,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 27) + s := make([]string, 0, 28) s = append(s, "&gcp_vpc_site.CreateSpecType{") s = append(s, "GcpRegion: "+fmt.Sprintf("%#v", this.GcpRegion)+",\n") if this.SiteType != nil { @@ -8772,6 +9151,9 @@ func (this *CreateSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -8867,14 +9249,19 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 19) + s := make([]string, 0, 25) s = append(s, "&gcp_vpc_site.ReplaceSpecType{") + s = append(s, "GcpRegion: "+fmt.Sprintf("%#v", this.GcpRegion)+",\n") if this.SiteType != nil { s = append(s, "SiteType: "+fmt.Sprintf("%#v", this.SiteType)+",\n") } if this.Deployment != nil { s = append(s, "Deployment: "+fmt.Sprintf("%#v", this.Deployment)+",\n") } + s = append(s, "InstanceType: "+fmt.Sprintf("%#v", this.InstanceType)+",\n") + s = append(s, "NodesPerAz: "+fmt.Sprintf("%#v", this.NodesPerAz)+",\n") + s = append(s, "DiskSize: "+fmt.Sprintf("%#v", this.DiskSize)+",\n") + s = append(s, "SshKey: "+fmt.Sprintf("%#v", this.SshKey)+",\n") s = append(s, "Address: "+fmt.Sprintf("%#v", this.Address)+",\n") if this.Coordinates != nil { s = append(s, "Coordinates: "+fmt.Sprintf("%#v", this.Coordinates)+",\n") @@ -8894,6 +9281,9 @@ func (this *ReplaceSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -8989,7 +9379,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 35) + s := make([]string, 0, 36) s = append(s, "&gcp_vpc_site.GetSpecType{") s = append(s, "GcpRegion: "+fmt.Sprintf("%#v", this.GcpRegion)+",\n") if this.SiteType != nil { @@ -9049,6 +9439,9 @@ func (this *GetSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -10372,6 +10765,44 @@ func (m *GCPVPCIngressGwReplaceType) MarshalToSizedBuffer(dAtA []byte) (int, err i-- dAtA[i] = 0xea } + if m.NodeNumber != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.NodeNumber)) + i-- + dAtA[i] = 0x30 + } + if m.LocalSubnet != nil { + { + size, err := m.LocalSubnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.GcpZoneNames) > 0 { + for iNdEx := len(m.GcpZoneNames) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.GcpZoneNames[iNdEx]) + copy(dAtA[i:], m.GcpZoneNames[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.GcpZoneNames[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + if m.LocalNetwork != nil { + { + size, err := m.LocalNetwork.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } return len(dAtA) - i, nil } @@ -10436,6 +10867,52 @@ func (m *GCPVPCIngressEgressGwReplaceType) MarshalToSizedBuffer(dAtA []byte) (in } } } + if len(m.GcpZoneNames) > 0 { + for iNdEx := len(m.GcpZoneNames) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.GcpZoneNames[iNdEx]) + copy(dAtA[i:], m.GcpZoneNames[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.GcpZoneNames[iNdEx]))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 + } + } + if m.NodeNumber != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.NodeNumber)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb8 + } + if m.OutsideSubnet != nil { + { + size, err := m.OutsideSubnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 + } + if m.InsideSubnet != nil { + { + size, err := m.InsideSubnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xaa + } if m.ForwardProxyChoice != nil { { size := m.ForwardProxyChoice.Size() @@ -10472,6 +10949,30 @@ func (m *GCPVPCIngressEgressGwReplaceType) MarshalToSizedBuffer(dAtA []byte) (in } } } + if m.OutsideNetwork != nil { + { + size, err := m.OutsideNetwork.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.InsideNetwork != nil { + { + size, err := m.InsideNetwork.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } return len(dAtA) - i, nil } @@ -10872,6 +11373,17 @@ func (m *GCPVPCVoltstackClusterReplaceType) MarshalToSizedBuffer(dAtA []byte) (i _ = i var l int _ = l + if len(m.GcpZoneNames) > 0 { + for iNdEx := len(m.GcpZoneNames) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.GcpZoneNames[iNdEx]) + copy(dAtA[i:], m.GcpZoneNames[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.GcpZoneNames[iNdEx]))) + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xa2 + } + } if m.NetworkPolicyChoice != nil { { size := m.NetworkPolicyChoice.Size() @@ -10908,6 +11420,27 @@ func (m *GCPVPCVoltstackClusterReplaceType) MarshalToSizedBuffer(dAtA []byte) (i } } } + if m.SiteLocalSubnet != nil { + { + size, err := m.SiteLocalSubnet.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a + } + if m.NodeNumber != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.NodeNumber)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x90 + } if m.OutsideStaticRouteChoice != nil { { size := m.OutsideStaticRouteChoice.Size() @@ -10926,12 +11459,24 @@ func (m *GCPVPCVoltstackClusterReplaceType) MarshalToSizedBuffer(dAtA []byte) (i } } } - return len(dAtA) - i, nil -} - -func (m *GCPVPCVoltstackClusterReplaceType_NoNetworkPolicy) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.SiteLocalNetwork != nil { + { + size, err := m.SiteLocalNetwork.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *GCPVPCVoltstackClusterReplaceType_NoNetworkPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } func (m *GCPVPCVoltstackClusterReplaceType_NoNetworkPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { @@ -11340,6 +11885,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xba } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -11886,6 +12445,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -12333,6 +12906,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -12418,6 +13005,30 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if len(m.SshKey) > 0 { + i -= len(m.SshKey) + copy(dAtA[i:], m.SshKey) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SshKey))) + i-- + dAtA[i] = 0x6a + } + if m.DiskSize != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DiskSize)) + i-- + dAtA[i] = 0x60 + } + if m.NodesPerAz != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.NodesPerAz)) + i-- + dAtA[i] = 0x48 + } + if len(m.InstanceType) > 0 { + i -= len(m.InstanceType) + copy(dAtA[i:], m.InstanceType) + i = encodeVarintTypes(dAtA, i, uint64(len(m.InstanceType))) + i-- + dAtA[i] = 0x42 + } if m.Deployment != nil { { size := m.Deployment.Size() @@ -12427,6 +13038,13 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } + if len(m.GcpRegion) > 0 { + i -= len(m.GcpRegion) + copy(dAtA[i:], m.GcpRegion) + i = encodeVarintTypes(dAtA, i, uint64(len(m.GcpRegion))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } @@ -12709,6 +13327,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xca } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -13793,6 +14425,23 @@ func (m *GCPVPCIngressGwReplaceType) Size() (n int) { } var l int _ = l + if m.LocalNetwork != nil { + l = m.LocalNetwork.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.GcpZoneNames) > 0 { + for _, s := range m.GcpZoneNames { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.LocalSubnet != nil { + l = m.LocalSubnet.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.NodeNumber != 0 { + n += 1 + sovTypes(uint64(m.NodeNumber)) + } if m.PerformanceEnhancementMode != nil { l = m.PerformanceEnhancementMode.Size() n += 2 + l + sovTypes(uint64(l)) @@ -13806,6 +14455,14 @@ func (m *GCPVPCIngressEgressGwReplaceType) Size() (n int) { } var l int _ = l + if m.InsideNetwork != nil { + l = m.InsideNetwork.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.OutsideNetwork != nil { + l = m.OutsideNetwork.Size() + n += 1 + l + sovTypes(uint64(l)) + } if m.NetworkPolicyChoice != nil { n += m.NetworkPolicyChoice.Size() } @@ -13821,6 +14478,23 @@ func (m *GCPVPCIngressEgressGwReplaceType) Size() (n int) { if m.OutsideStaticRouteChoice != nil { n += m.OutsideStaticRouteChoice.Size() } + if m.InsideSubnet != nil { + l = m.InsideSubnet.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.OutsideSubnet != nil { + l = m.OutsideSubnet.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.NodeNumber != 0 { + n += 2 + sovTypes(uint64(m.NodeNumber)) + } + if len(m.GcpZoneNames) > 0 { + for _, s := range m.GcpZoneNames { + l = len(s) + n += 2 + l + sovTypes(uint64(l)) + } + } if m.DcClusterGroupChoice != nil { n += m.DcClusterGroupChoice.Size() } @@ -14044,6 +14718,10 @@ func (m *GCPVPCVoltstackClusterReplaceType) Size() (n int) { } var l int _ = l + if m.SiteLocalNetwork != nil { + l = m.SiteLocalNetwork.Size() + n += 1 + l + sovTypes(uint64(l)) + } if m.NetworkPolicyChoice != nil { n += m.NetworkPolicyChoice.Size() } @@ -14056,12 +14734,25 @@ func (m *GCPVPCVoltstackClusterReplaceType) Size() (n int) { if m.OutsideStaticRouteChoice != nil { n += m.OutsideStaticRouteChoice.Size() } + if m.NodeNumber != 0 { + n += 2 + sovTypes(uint64(m.NodeNumber)) + } + if m.SiteLocalSubnet != nil { + l = m.SiteLocalSubnet.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.DcClusterGroupChoice != nil { n += m.DcClusterGroupChoice.Size() } if m.SiteMeshGroupChoice != nil { n += m.SiteMeshGroupChoice.Size() } + if len(m.GcpZoneNames) > 0 { + for _, s := range m.GcpZoneNames { + l = len(s) + n += 2 + l + sovTypes(uint64(l)) + } + } return n } @@ -14358,6 +15049,10 @@ func (m *GlobalSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.TfParams != nil { l = m.TfParams.Size() n += 2 + l + sovTypes(uint64(l)) @@ -14588,6 +15283,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -14729,12 +15428,30 @@ func (m *ReplaceSpecType) Size() (n int) { } var l int _ = l + l = len(m.GcpRegion) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.SiteType != nil { n += m.SiteType.Size() } if m.Deployment != nil { n += m.Deployment.Size() } + l = len(m.InstanceType) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.NodesPerAz != 0 { + n += 1 + sovTypes(uint64(m.NodesPerAz)) + } + if m.DiskSize != 0 { + n += 1 + sovTypes(uint64(m.DiskSize)) + } + l = len(m.SshKey) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } l = len(m.Address) if l > 0 { n += 1 + l + sovTypes(uint64(l)) @@ -14760,6 +15477,10 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -14990,6 +15711,10 @@ func (m *GetSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.CloudSiteInfo != nil { l = m.CloudSiteInfo.Size() n += 2 + l + sovTypes(uint64(l)) @@ -15564,6 +16289,10 @@ func (this *GCPVPCIngressGwReplaceType) String() string { return "nil" } s := strings.Join([]string{`&GCPVPCIngressGwReplaceType{`, + `LocalNetwork:` + strings.Replace(fmt.Sprintf("%v", this.LocalNetwork), "GCPVPCNetworkChoiceType", "views.GCPVPCNetworkChoiceType", 1) + `,`, + `GcpZoneNames:` + fmt.Sprintf("%v", this.GcpZoneNames) + `,`, + `LocalSubnet:` + strings.Replace(fmt.Sprintf("%v", this.LocalSubnet), "GCPVPCSubnetChoiceType", "views.GCPVPCSubnetChoiceType", 1) + `,`, + `NodeNumber:` + fmt.Sprintf("%v", this.NodeNumber) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, `}`, }, "") @@ -15574,11 +16303,17 @@ func (this *GCPVPCIngressEgressGwReplaceType) String() string { return "nil" } s := strings.Join([]string{`&GCPVPCIngressEgressGwReplaceType{`, + `InsideNetwork:` + strings.Replace(fmt.Sprintf("%v", this.InsideNetwork), "GCPVPCNetworkChoiceType", "views.GCPVPCNetworkChoiceType", 1) + `,`, + `OutsideNetwork:` + strings.Replace(fmt.Sprintf("%v", this.OutsideNetwork), "GCPVPCNetworkChoiceType", "views.GCPVPCNetworkChoiceType", 1) + `,`, `NetworkPolicyChoice:` + fmt.Sprintf("%v", this.NetworkPolicyChoice) + `,`, `ForwardProxyChoice:` + fmt.Sprintf("%v", this.ForwardProxyChoice) + `,`, `GlobalNetworkChoice:` + fmt.Sprintf("%v", this.GlobalNetworkChoice) + `,`, `InsideStaticRouteChoice:` + fmt.Sprintf("%v", this.InsideStaticRouteChoice) + `,`, `OutsideStaticRouteChoice:` + fmt.Sprintf("%v", this.OutsideStaticRouteChoice) + `,`, + `InsideSubnet:` + strings.Replace(fmt.Sprintf("%v", this.InsideSubnet), "GCPVPCSubnetChoiceType", "views.GCPVPCSubnetChoiceType", 1) + `,`, + `OutsideSubnet:` + strings.Replace(fmt.Sprintf("%v", this.OutsideSubnet), "GCPVPCSubnetChoiceType", "views.GCPVPCSubnetChoiceType", 1) + `,`, + `NodeNumber:` + fmt.Sprintf("%v", this.NodeNumber) + `,`, + `GcpZoneNames:` + fmt.Sprintf("%v", this.GcpZoneNames) + `,`, `DcClusterGroupChoice:` + fmt.Sprintf("%v", this.DcClusterGroupChoice) + `,`, `SiteMeshGroupChoice:` + fmt.Sprintf("%v", this.SiteMeshGroupChoice) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, @@ -15761,12 +16496,16 @@ func (this *GCPVPCVoltstackClusterReplaceType) String() string { return "nil" } s := strings.Join([]string{`&GCPVPCVoltstackClusterReplaceType{`, + `SiteLocalNetwork:` + strings.Replace(fmt.Sprintf("%v", this.SiteLocalNetwork), "GCPVPCNetworkChoiceType", "views.GCPVPCNetworkChoiceType", 1) + `,`, `NetworkPolicyChoice:` + fmt.Sprintf("%v", this.NetworkPolicyChoice) + `,`, `ForwardProxyChoice:` + fmt.Sprintf("%v", this.ForwardProxyChoice) + `,`, `GlobalNetworkChoice:` + fmt.Sprintf("%v", this.GlobalNetworkChoice) + `,`, `OutsideStaticRouteChoice:` + fmt.Sprintf("%v", this.OutsideStaticRouteChoice) + `,`, + `NodeNumber:` + fmt.Sprintf("%v", this.NodeNumber) + `,`, + `SiteLocalSubnet:` + strings.Replace(fmt.Sprintf("%v", this.SiteLocalSubnet), "GCPVPCSubnetChoiceType", "views.GCPVPCSubnetChoiceType", 1) + `,`, `DcClusterGroupChoice:` + fmt.Sprintf("%v", this.DcClusterGroupChoice) + `,`, `SiteMeshGroupChoice:` + fmt.Sprintf("%v", this.SiteMeshGroupChoice) + `,`, + `GcpZoneNames:` + fmt.Sprintf("%v", this.GcpZoneNames) + `,`, `}`, }, "") return s @@ -15967,6 +16706,7 @@ func (this *GlobalSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `TfParams:` + strings.Replace(fmt.Sprintf("%v", this.TfParams), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `CloudSiteInfo:` + strings.Replace(this.CloudSiteInfo.String(), "GCPVPCSiteInfoType", "GCPVPCSiteInfoType", 1) + `,`, @@ -16126,6 +16866,7 @@ func (this *CreateSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `PrivateConnectivityChoice:` + fmt.Sprintf("%v", this.PrivateConnectivityChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -16245,8 +16986,13 @@ func (this *ReplaceSpecType) String() string { return "nil" } s := strings.Join([]string{`&ReplaceSpecType{`, + `GcpRegion:` + fmt.Sprintf("%v", this.GcpRegion) + `,`, `SiteType:` + fmt.Sprintf("%v", this.SiteType) + `,`, `Deployment:` + fmt.Sprintf("%v", this.Deployment) + `,`, + `InstanceType:` + fmt.Sprintf("%v", this.InstanceType) + `,`, + `NodesPerAz:` + fmt.Sprintf("%v", this.NodesPerAz) + `,`, + `DiskSize:` + fmt.Sprintf("%v", this.DiskSize) + `,`, + `SshKey:` + fmt.Sprintf("%v", this.SshKey) + `,`, `Address:` + fmt.Sprintf("%v", this.Address) + `,`, `Coordinates:` + strings.Replace(fmt.Sprintf("%v", this.Coordinates), "Coordinates", "site.Coordinates", 1) + `,`, `LogsReceiverChoice:` + fmt.Sprintf("%v", this.LogsReceiverChoice) + `,`, @@ -16254,6 +17000,7 @@ func (this *ReplaceSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `PrivateConnectivityChoice:` + fmt.Sprintf("%v", this.PrivateConnectivityChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -16411,6 +17158,7 @@ func (this *GetSpecType) String() string { `SiteErrors:` + repeatedStringForSiteErrors + `,`, `ValidationState:` + fmt.Sprintf("%v", this.ValidationState) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `CloudSiteInfo:` + strings.Replace(this.CloudSiteInfo.String(), "GCPVPCSiteInfoType", "GCPVPCSiteInfoType", 1) + `,`, `}`, }, "") @@ -18566,9 +19314,9 @@ func (m *GCPVPCIngressGwReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: GCPVPCIngressGwReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 45: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PerformanceEnhancementMode", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field LocalNetwork", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -18595,46 +19343,169 @@ func (m *GCPVPCIngressGwReplaceType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.PerformanceEnhancementMode == nil { - m.PerformanceEnhancementMode = &views.PerformanceEnhancementModeType{} + if m.LocalNetwork == nil { + m.LocalNetwork = &views.GCPVPCNetworkChoiceType{} } - if err := m.PerformanceEnhancementMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.LocalNetwork.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcpZoneNames", wireType) } - if skippy < 0 { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + intStringLen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GCPVPCIngressEgressGwReplaceType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes + m.GcpZoneNames = append(m.GcpZoneNames, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LocalSubnet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.LocalSubnet == nil { + m.LocalSubnet = &views.GCPVPCSubnetChoiceType{} + } + if err := m.LocalSubnet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeNumber", wireType) + } + m.NodeNumber = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NodeNumber |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 45: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PerformanceEnhancementMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PerformanceEnhancementMode == nil { + m.PerformanceEnhancementMode = &views.PerformanceEnhancementModeType{} + } + if err := m.PerformanceEnhancementMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GCPVPCIngressEgressGwReplaceType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -18655,6 +19526,78 @@ func (m *GCPVPCIngressEgressGwReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: GCPVPCIngressEgressGwReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InsideNetwork", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.InsideNetwork == nil { + m.InsideNetwork = &views.GCPVPCNetworkChoiceType{} + } + if err := m.InsideNetwork.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OutsideNetwork", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OutsideNetwork == nil { + m.OutsideNetwork = &views.GCPVPCNetworkChoiceType{} + } + if err := m.OutsideNetwork.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 6: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field NoNetworkPolicy", wireType) @@ -19040,6 +19983,129 @@ func (m *GCPVPCIngressEgressGwReplaceType) Unmarshal(dAtA []byte) error { } m.ForwardProxyChoice = &GCPVPCIngressEgressGwReplaceType_ForwardProxyAllowAll{v} iNdEx = postIndex + case 21: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InsideSubnet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.InsideSubnet == nil { + m.InsideSubnet = &views.GCPVPCSubnetChoiceType{} + } + if err := m.InsideSubnet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 22: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OutsideSubnet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OutsideSubnet == nil { + m.OutsideSubnet = &views.GCPVPCSubnetChoiceType{} + } + if err := m.OutsideSubnet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 23: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeNumber", wireType) + } + m.NodeNumber = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NodeNumber |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 24: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcpZoneNames", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GcpZoneNames = append(m.GcpZoneNames, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex case 26: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field NoDcClusterGroup", wireType) @@ -19339,6 +20405,42 @@ func (m *GCPVPCVoltstackClusterReplaceType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: GCPVPCVoltstackClusterReplaceType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SiteLocalNetwork", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SiteLocalNetwork == nil { + m.SiteLocalNetwork = &views.GCPVPCNetworkChoiceType{} + } + if err := m.SiteLocalNetwork.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 6: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field NoNetworkPolicy", wireType) @@ -19619,6 +20721,61 @@ func (m *GCPVPCVoltstackClusterReplaceType) Unmarshal(dAtA []byte) error { } m.OutsideStaticRouteChoice = &GCPVPCVoltstackClusterReplaceType_OutsideStaticRoutes{v} iNdEx = postIndex + case 18: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeNumber", wireType) + } + m.NodeNumber = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NodeNumber |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 19: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SiteLocalSubnet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SiteLocalSubnet == nil { + m.SiteLocalSubnet = &views.GCPVPCSubnetChoiceType{} + } + if err := m.SiteLocalSubnet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 20: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ForwardProxyAllowAll", wireType) @@ -19829,6 +20986,38 @@ func (m *GCPVPCVoltstackClusterReplaceType) Unmarshal(dAtA []byte) error { } m.NetworkPolicyChoice = &GCPVPCVoltstackClusterReplaceType_ActiveEnhancedFirewallPolicies{v} iNdEx = postIndex + case 36: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcpZoneNames", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GcpZoneNames = append(m.GcpZoneNames, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -21090,7 +22279,26 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field ValidationState", wireType) } - m.ValidationState = 0 + m.ValidationState = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ValidationState |= views.ConfigValidationState(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 47: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomDns", wireType) + } + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -21100,14 +22308,31 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.ValidationState |= views.ConfigValidationState(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 47: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CustomDns == nil { + m.CustomDns = &views.CustomDNS{} + } + if err := m.CustomDns.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 48: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomDns", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -21134,10 +22359,10 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CustomDns == nil { - m.CustomDns = &views.CustomDNS{} + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} } - if err := m.CustomDns.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -22160,6 +23385,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 48: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -22213,6 +23474,38 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcpRegion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GcpRegion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 3: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field IngressGw", wireType) @@ -22318,6 +23611,108 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.Deployment = &ReplaceSpecType_CloudCredentials{v} iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InstanceType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InstanceType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NodesPerAz", wireType) + } + m.NodesPerAz = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NodesPerAz |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DiskSize", wireType) + } + m.DiskSize = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DiskSize |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SshKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SshKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 14: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field VoltstackCluster", wireType) @@ -22738,6 +24133,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 48: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -23848,6 +25279,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 48: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1001: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field CloudSiteInfo", wireType) diff --git a/pbgo/extschema/schema/views/gcp_vpc_site/types.vesmsg.go b/pbgo/extschema/schema/views/gcp_vpc_site/types.vesmsg.go index 76094719f..e9ee41a19 100644 --- a/pbgo/extschema/schema/views/gcp_vpc_site/types.vesmsg.go +++ b/pbgo/extschema/schema/views/gcp_vpc_site/types.vesmsg.go @@ -606,6 +606,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -891,6 +900,7 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -945,6 +955,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -1372,6 +1384,58 @@ func (v *ValidateGCPVPCIngressEgressGwReplaceType) SiteMeshGroupChoiceValidation return validatorFn, nil } +func (v *ValidateGCPVPCIngressEgressGwReplaceType) NodeNumberValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for node_number") + } + + return validatorFn, nil +} + +func (v *ValidateGCPVPCIngressEgressGwReplaceType) GcpZoneNamesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for gcp_zone_names") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for gcp_zone_names") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated gcp_zone_names") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items gcp_zone_names") + } + return nil + } + + return validatorFn, nil +} + func (v *ValidateGCPVPCIngressEgressGwReplaceType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*GCPVPCIngressEgressGwReplaceType) if !ok { @@ -1480,6 +1544,14 @@ func (v *ValidateGCPVPCIngressEgressGwReplaceType) Validate(ctx context.Context, } + if fv, exists := v.FldValidators["gcp_zone_names"]; exists { + vOpts := append(opts, db.WithValidateField("gcp_zone_names")) + if err := fv(ctx, m.GetGcpZoneNames(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["global_network_choice"]; exists { val := m.GetGlobalNetworkChoice() vOpts := append(opts, @@ -1516,6 +1588,15 @@ func (v *ValidateGCPVPCIngressEgressGwReplaceType) Validate(ctx context.Context, } + if fv, exists := v.FldValidators["inside_network"]; exists { + + vOpts := append(opts, db.WithValidateField("inside_network")) + if err := fv(ctx, m.GetInsideNetwork(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["inside_static_route_choice"]; exists { val := m.GetInsideStaticRouteChoice() vOpts := append(opts, @@ -1552,6 +1633,15 @@ func (v *ValidateGCPVPCIngressEgressGwReplaceType) Validate(ctx context.Context, } + if fv, exists := v.FldValidators["inside_subnet"]; exists { + + vOpts := append(opts, db.WithValidateField("inside_subnet")) + if err := fv(ctx, m.GetInsideSubnet(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["network_policy_choice"]; exists { val := m.GetNetworkPolicyChoice() vOpts := append(opts, @@ -1599,6 +1689,24 @@ func (v *ValidateGCPVPCIngressEgressGwReplaceType) Validate(ctx context.Context, } + if fv, exists := v.FldValidators["node_number"]; exists { + + vOpts := append(opts, db.WithValidateField("node_number")) + if err := fv(ctx, m.GetNodeNumber(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["outside_network"]; exists { + + vOpts := append(opts, db.WithValidateField("outside_network")) + if err := fv(ctx, m.GetOutsideNetwork(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["outside_static_route_choice"]; exists { val := m.GetOutsideStaticRouteChoice() vOpts := append(opts, @@ -1635,6 +1743,15 @@ func (v *ValidateGCPVPCIngressEgressGwReplaceType) Validate(ctx context.Context, } + if fv, exists := v.FldValidators["outside_subnet"]; exists { + + vOpts := append(opts, db.WithValidateField("outside_subnet")) + if err := fv(ctx, m.GetOutsideSubnet(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["performance_enhancement_mode"]; exists { vOpts := append(opts, db.WithValidateField("performance_enhancement_mode")) @@ -1772,6 +1889,31 @@ var DefaultGCPVPCIngressEgressGwReplaceTypeValidator = func() *ValidateGCPVPCIng } v.FldValidators["site_mesh_group_choice"] = vFn + vrhNodeNumber := v.NodeNumberValidationRuleHandler + rulesNodeNumber := map[string]string{ + "ves.io.schema.rules.uint32.in": "[1,3]", + } + vFn, err = vrhNodeNumber(rulesNodeNumber) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GCPVPCIngressEgressGwReplaceType.node_number: %s", err) + panic(errMsg) + } + v.FldValidators["node_number"] = vFn + + vrhGcpZoneNames := v.GcpZoneNamesValidationRuleHandler + rulesGcpZoneNames := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "3", + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhGcpZoneNames(rulesGcpZoneNames) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GCPVPCIngressEgressGwReplaceType.gcp_zone_names: %s", err) + panic(errMsg) + } + v.FldValidators["gcp_zone_names"] = vFn + v.FldValidators["dc_cluster_group_choice.dc_cluster_group_outside_vn"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["dc_cluster_group_choice.dc_cluster_group_inside_vn"] = ves_io_schema_views.ObjectRefTypeValidator().Validate @@ -1786,6 +1928,14 @@ var DefaultGCPVPCIngressEgressGwReplaceTypeValidator = func() *ValidateGCPVPCIng v.FldValidators["outside_static_route_choice.outside_static_routes"] = ves_io_schema_views.SiteStaticRoutesListTypeValidator().Validate + v.FldValidators["inside_network"] = ves_io_schema_views.GCPVPCNetworkChoiceTypeValidator().Validate + + v.FldValidators["outside_network"] = ves_io_schema_views.GCPVPCNetworkChoiceTypeValidator().Validate + + v.FldValidators["inside_subnet"] = ves_io_schema_views.GCPVPCSubnetChoiceTypeValidator().Validate + + v.FldValidators["outside_subnet"] = ves_io_schema_views.GCPVPCSubnetChoiceTypeValidator().Validate + v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate return v @@ -2849,6 +2999,58 @@ type ValidateGCPVPCIngressGwReplaceType struct { FldValidators map[string]db.ValidatorFunc } +func (v *ValidateGCPVPCIngressGwReplaceType) GcpZoneNamesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for gcp_zone_names") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for gcp_zone_names") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated gcp_zone_names") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items gcp_zone_names") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateGCPVPCIngressGwReplaceType) NodeNumberValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for node_number") + } + + return validatorFn, nil +} + func (v *ValidateGCPVPCIngressGwReplaceType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { m, ok := pm.(*GCPVPCIngressGwReplaceType) if !ok { @@ -2863,6 +3065,41 @@ func (v *ValidateGCPVPCIngressGwReplaceType) Validate(ctx context.Context, pm in return nil } + if fv, exists := v.FldValidators["gcp_zone_names"]; exists { + vOpts := append(opts, db.WithValidateField("gcp_zone_names")) + if err := fv(ctx, m.GetGcpZoneNames(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["local_network"]; exists { + + vOpts := append(opts, db.WithValidateField("local_network")) + if err := fv(ctx, m.GetLocalNetwork(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["local_subnet"]; exists { + + vOpts := append(opts, db.WithValidateField("local_subnet")) + if err := fv(ctx, m.GetLocalSubnet(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["node_number"]; exists { + + vOpts := append(opts, db.WithValidateField("node_number")) + if err := fv(ctx, m.GetNodeNumber(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["performance_enhancement_mode"]; exists { vOpts := append(opts, db.WithValidateField("performance_enhancement_mode")) @@ -2879,6 +3116,43 @@ func (v *ValidateGCPVPCIngressGwReplaceType) Validate(ctx context.Context, pm in var DefaultGCPVPCIngressGwReplaceTypeValidator = func() *ValidateGCPVPCIngressGwReplaceType { v := &ValidateGCPVPCIngressGwReplaceType{FldValidators: map[string]db.ValidatorFunc{}} + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhGcpZoneNames := v.GcpZoneNamesValidationRuleHandler + rulesGcpZoneNames := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "3", + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhGcpZoneNames(rulesGcpZoneNames) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GCPVPCIngressGwReplaceType.gcp_zone_names: %s", err) + panic(errMsg) + } + v.FldValidators["gcp_zone_names"] = vFn + + vrhNodeNumber := v.NodeNumberValidationRuleHandler + rulesNodeNumber := map[string]string{ + "ves.io.schema.rules.uint32.in": "[1,3]", + } + vFn, err = vrhNodeNumber(rulesNodeNumber) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GCPVPCIngressGwReplaceType.node_number: %s", err) + panic(errMsg) + } + v.FldValidators["node_number"] = vFn + + v.FldValidators["local_network"] = ves_io_schema_views.GCPVPCNetworkChoiceTypeValidator().Validate + + v.FldValidators["local_subnet"] = ves_io_schema_views.GCPVPCSubnetChoiceTypeValidator().Validate + v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate return v @@ -3654,14 +3928,66 @@ func (v *ValidateGCPVPCVoltstackClusterReplaceType) OutsideStaticRouteChoiceVali if err != nil { return nil, errors.Wrap(err, "ValidationRuleHandler for outside_static_route_choice") } - return validatorFn, nil -} + return validatorFn, nil +} + +func (v *ValidateGCPVPCVoltstackClusterReplaceType) SiteMeshGroupChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for site_mesh_group_choice") + } + return validatorFn, nil +} + +func (v *ValidateGCPVPCVoltstackClusterReplaceType) NodeNumberValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for node_number") + } + + return validatorFn, nil +} + +func (v *ValidateGCPVPCVoltstackClusterReplaceType) GcpZoneNamesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for gcp_zone_names") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for gcp_zone_names") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated gcp_zone_names") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items gcp_zone_names") + } + return nil + } -func (v *ValidateGCPVPCVoltstackClusterReplaceType) SiteMeshGroupChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for site_mesh_group_choice") - } return validatorFn, nil } @@ -3762,6 +4088,14 @@ func (v *ValidateGCPVPCVoltstackClusterReplaceType) Validate(ctx context.Context } + if fv, exists := v.FldValidators["gcp_zone_names"]; exists { + vOpts := append(opts, db.WithValidateField("gcp_zone_names")) + if err := fv(ctx, m.GetGcpZoneNames(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["global_network_choice"]; exists { val := m.GetGlobalNetworkChoice() vOpts := append(opts, @@ -3845,6 +4179,15 @@ func (v *ValidateGCPVPCVoltstackClusterReplaceType) Validate(ctx context.Context } + if fv, exists := v.FldValidators["node_number"]; exists { + + vOpts := append(opts, db.WithValidateField("node_number")) + if err := fv(ctx, m.GetNodeNumber(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["outside_static_route_choice"]; exists { val := m.GetOutsideStaticRouteChoice() vOpts := append(opts, @@ -3881,6 +4224,24 @@ func (v *ValidateGCPVPCVoltstackClusterReplaceType) Validate(ctx context.Context } + if fv, exists := v.FldValidators["site_local_network"]; exists { + + vOpts := append(opts, db.WithValidateField("site_local_network")) + if err := fv(ctx, m.GetSiteLocalNetwork(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["site_local_subnet"]; exists { + + vOpts := append(opts, db.WithValidateField("site_local_subnet")) + if err := fv(ctx, m.GetSiteLocalSubnet(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["site_mesh_group_choice"]; exists { val := m.GetSiteMeshGroupChoice() vOpts := append(opts, @@ -3998,6 +4359,31 @@ var DefaultGCPVPCVoltstackClusterReplaceTypeValidator = func() *ValidateGCPVPCVo } v.FldValidators["site_mesh_group_choice"] = vFn + vrhNodeNumber := v.NodeNumberValidationRuleHandler + rulesNodeNumber := map[string]string{ + "ves.io.schema.rules.uint32.in": "[1,3]", + } + vFn, err = vrhNodeNumber(rulesNodeNumber) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GCPVPCVoltstackClusterReplaceType.node_number: %s", err) + panic(errMsg) + } + v.FldValidators["node_number"] = vFn + + vrhGcpZoneNames := v.GcpZoneNamesValidationRuleHandler + rulesGcpZoneNames := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "3", + "ves.io.schema.rules.repeated.unique": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhGcpZoneNames(rulesGcpZoneNames) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GCPVPCVoltstackClusterReplaceType.gcp_zone_names: %s", err) + panic(errMsg) + } + v.FldValidators["gcp_zone_names"] = vFn + v.FldValidators["dc_cluster_group_choice.dc_cluster_group"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["forward_proxy_choice.active_forward_proxy_policies"] = ves_io_schema_network_firewall.ActiveForwardProxyPoliciesTypeValidator().Validate @@ -4009,6 +4395,10 @@ var DefaultGCPVPCVoltstackClusterReplaceTypeValidator = func() *ValidateGCPVPCVo v.FldValidators["outside_static_route_choice.outside_static_routes"] = ves_io_schema_views.SiteStaticRoutesListTypeValidator().Validate + v.FldValidators["site_local_network"] = ves_io_schema_views.GCPVPCNetworkChoiceTypeValidator().Validate + + v.FldValidators["site_local_subnet"] = ves_io_schema_views.GCPVPCSubnetChoiceTypeValidator().Validate + return v }() @@ -5669,6 +6059,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -6024,6 +6423,7 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -6074,6 +6474,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["cloud_site_info"] = GCPVPCSiteInfoTypeValidator().Validate return v @@ -6826,6 +7228,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -7217,6 +7628,7 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { rulesSshKey := map[string]string{ "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", } vFn, err = vrhSshKey(rulesSshKey) if err != nil { @@ -7271,6 +7683,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["tf_params"] = ves_io_schema_views.ObjectRefTypeValidator().Validate v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate @@ -7609,6 +8023,56 @@ func (v *ValidateReplaceSpecType) SiteTypeValidationRuleHandler(rules map[string return validatorFn, nil } +func (v *ValidateReplaceSpecType) GcpRegionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for gcp_region") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) InstanceTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for instance_type") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) NodesPerAzValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for nodes_per_az") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) DiskSizeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for disk_size") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) SshKeyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for ssh_key") + } + + return validatorFn, nil +} + func (v *ValidateReplaceSpecType) AddressValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) @@ -7732,6 +8196,42 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["disk_size"]; exists { + + vOpts := append(opts, db.WithValidateField("disk_size")) + if err := fv(ctx, m.GetDiskSize(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["gcp_region"]; exists { + + vOpts := append(opts, db.WithValidateField("gcp_region")) + if err := fv(ctx, m.GetGcpRegion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["instance_type"]; exists { + + vOpts := append(opts, db.WithValidateField("instance_type")) + if err := fv(ctx, m.GetInstanceType(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -7768,6 +8268,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["nodes_per_az"]; exists { + + vOpts := append(opts, db.WithValidateField("nodes_per_az")) + if err := fv(ctx, m.GetNodesPerAz(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["offline_survivability_mode"]; exists { vOpts := append(opts, db.WithValidateField("offline_survivability_mode")) @@ -7860,6 +8369,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["ssh_key"]; exists { + + vOpts := append(opts, db.WithValidateField("ssh_key")) + if err := fv(ctx, m.GetSshKey(), vOpts...); err != nil { + return err + } + + } + return nil } @@ -7930,6 +8448,66 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { } v.FldValidators["site_type"] = vFn + vrhGcpRegion := v.GcpRegionValidationRuleHandler + rulesGcpRegion := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhGcpRegion(rulesGcpRegion) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.gcp_region: %s", err) + panic(errMsg) + } + v.FldValidators["gcp_region"] = vFn + + vrhInstanceType := v.InstanceTypeValidationRuleHandler + rulesInstanceType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "64", + } + vFn, err = vrhInstanceType(rulesInstanceType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.instance_type: %s", err) + panic(errMsg) + } + v.FldValidators["instance_type"] = vFn + + vrhNodesPerAz := v.NodesPerAzValidationRuleHandler + rulesNodesPerAz := map[string]string{ + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "21", + } + vFn, err = vrhNodesPerAz(rulesNodesPerAz) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.nodes_per_az: %s", err) + panic(errMsg) + } + v.FldValidators["nodes_per_az"] = vFn + + vrhDiskSize := v.DiskSizeValidationRuleHandler + rulesDiskSize := map[string]string{ + "ves.io.schema.rules.uint32.lte": "64000", + } + vFn, err = vrhDiskSize(rulesDiskSize) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.disk_size: %s", err) + panic(errMsg) + } + v.FldValidators["disk_size"] = vFn + + vrhSshKey := v.SshKeyValidationRuleHandler + rulesSshKey := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_len": "8192", + "ves.io.schema.rules.string.min_len": "1", + } + vFn, err = vrhSshKey(rulesSshKey) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.ssh_key: %s", err) + panic(errMsg) + } + v.FldValidators["ssh_key"] = vFn + vrhAddress := v.AddressValidationRuleHandler rulesAddress := map[string]string{ "ves.io.schema.rules.string.max_len": "256", @@ -7959,6 +8537,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -8160,6 +8740,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.GcpLabels = f.GetGcpLabels() m.GcpRegion = f.GetGcpRegion() m.InstanceType = f.GetInstanceType() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.NodesPerAz = f.GetNodesPerAz() m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() @@ -8194,6 +8775,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.GcpLabels = m1.GcpLabels f.GcpRegion = m1.GcpRegion f.InstanceType = m1.InstanceType + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.NodesPerAz = m1.NodesPerAz f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode @@ -8481,10 +9063,16 @@ func (m *GCPVPCIngressEgressGwReplaceType) fromGCPVPCIngressEgressGwType(f *GCPV } m.GetDcClusterGroupChoiceFromGCPVPCIngressEgressGwType(f) m.GetForwardProxyChoiceFromGCPVPCIngressEgressGwType(f) + m.GcpZoneNames = f.GetGcpZoneNames() m.GetGlobalNetworkChoiceFromGCPVPCIngressEgressGwType(f) + m.InsideNetwork = f.GetInsideNetwork() m.GetInsideStaticRouteChoiceFromGCPVPCIngressEgressGwType(f) + m.InsideSubnet = f.GetInsideSubnet() m.GetNetworkPolicyChoiceFromGCPVPCIngressEgressGwType(f) + m.NodeNumber = f.GetNodeNumber() + m.OutsideNetwork = f.GetOutsideNetwork() m.GetOutsideStaticRouteChoiceFromGCPVPCIngressEgressGwType(f) + m.OutsideSubnet = f.GetOutsideSubnet() m.PerformanceEnhancementMode = f.GetPerformanceEnhancementMode() m.GetSiteMeshGroupChoiceFromGCPVPCIngressEgressGwType(f) } @@ -8506,10 +9094,16 @@ func (m *GCPVPCIngressEgressGwReplaceType) toGCPVPCIngressEgressGwType(f *GCPVPC m1.SetDcClusterGroupChoiceToGCPVPCIngressEgressGwType(f) m1.SetForwardProxyChoiceToGCPVPCIngressEgressGwType(f) + f.GcpZoneNames = m1.GcpZoneNames m1.SetGlobalNetworkChoiceToGCPVPCIngressEgressGwType(f) + f.InsideNetwork = m1.InsideNetwork m1.SetInsideStaticRouteChoiceToGCPVPCIngressEgressGwType(f) + f.InsideSubnet = m1.InsideSubnet m1.SetNetworkPolicyChoiceToGCPVPCIngressEgressGwType(f) + f.NodeNumber = m1.NodeNumber + f.OutsideNetwork = m1.OutsideNetwork m1.SetOutsideStaticRouteChoiceToGCPVPCIngressEgressGwType(f) + f.OutsideSubnet = m1.OutsideSubnet f.PerformanceEnhancementMode = m1.PerformanceEnhancementMode m1.SetSiteMeshGroupChoiceToGCPVPCIngressEgressGwType(f) } @@ -8526,6 +9120,10 @@ func (m *GCPVPCIngressGwReplaceType) fromGCPVPCIngressGwType(f *GCPVPCIngressGwT if f == nil { return } + m.GcpZoneNames = f.GetGcpZoneNames() + m.LocalNetwork = f.GetLocalNetwork() + m.LocalSubnet = f.GetLocalSubnet() + m.NodeNumber = f.GetNodeNumber() m.PerformanceEnhancementMode = f.GetPerformanceEnhancementMode() } @@ -8544,6 +9142,10 @@ func (m *GCPVPCIngressGwReplaceType) toGCPVPCIngressGwType(f *GCPVPCIngressGwTyp } _ = m1 + f.GcpZoneNames = m1.GcpZoneNames + f.LocalNetwork = m1.LocalNetwork + f.LocalSubnet = m1.LocalSubnet + f.NodeNumber = m1.NodeNumber f.PerformanceEnhancementMode = m1.PerformanceEnhancementMode } @@ -8783,9 +9385,13 @@ func (m *GCPVPCVoltstackClusterReplaceType) fromGCPVPCVoltstackClusterType(f *GC } m.GetDcClusterGroupChoiceFromGCPVPCVoltstackClusterType(f) m.GetForwardProxyChoiceFromGCPVPCVoltstackClusterType(f) + m.GcpZoneNames = f.GetGcpZoneNames() m.GetGlobalNetworkChoiceFromGCPVPCVoltstackClusterType(f) m.GetNetworkPolicyChoiceFromGCPVPCVoltstackClusterType(f) + m.NodeNumber = f.GetNodeNumber() m.GetOutsideStaticRouteChoiceFromGCPVPCVoltstackClusterType(f) + m.SiteLocalNetwork = f.GetSiteLocalNetwork() + m.SiteLocalSubnet = f.GetSiteLocalSubnet() m.GetSiteMeshGroupChoiceFromGCPVPCVoltstackClusterType(f) } @@ -8806,9 +9412,13 @@ func (m *GCPVPCVoltstackClusterReplaceType) toGCPVPCVoltstackClusterType(f *GCPV m1.SetDcClusterGroupChoiceToGCPVPCVoltstackClusterType(f) m1.SetForwardProxyChoiceToGCPVPCVoltstackClusterType(f) + f.GcpZoneNames = m1.GcpZoneNames m1.SetGlobalNetworkChoiceToGCPVPCVoltstackClusterType(f) m1.SetNetworkPolicyChoiceToGCPVPCVoltstackClusterType(f) + f.NodeNumber = m1.NodeNumber m1.SetOutsideStaticRouteChoiceToGCPVPCVoltstackClusterType(f) + f.SiteLocalNetwork = m1.SiteLocalNetwork + f.SiteLocalSubnet = m1.SiteLocalSubnet m1.SetSiteMeshGroupChoiceToGCPVPCVoltstackClusterType(f) } @@ -9022,6 +9632,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GcpLabels = f.GetGcpLabels() m.GcpRegion = f.GetGcpRegion() m.InstanceType = f.GetInstanceType() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.NodesPerAz = f.GetNodesPerAz() m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() @@ -9063,6 +9674,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.GcpLabels = m1.GcpLabels f.GcpRegion = m1.GcpRegion f.InstanceType = m1.InstanceType + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.NodesPerAz = m1.NodesPerAz f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode @@ -9303,10 +9915,16 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.Coordinates = f.GetCoordinates() m.CustomDns = f.GetCustomDns() m.GetDeploymentFromGlobalSpecType(f) + m.DiskSize = f.GetDiskSize() + m.GcpRegion = f.GetGcpRegion() + m.InstanceType = f.GetInstanceType() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) + m.NodesPerAz = f.GetNodesPerAz() m.OfflineSurvivabilityMode = f.GetOfflineSurvivabilityMode() m.GetPrivateConnectivityChoiceFromGlobalSpecType(f) m.GetSiteTypeFromGlobalSpecType(f) + m.SshKey = f.GetSshKey() } func (m *ReplaceSpecType) FromGlobalSpecType(f *GlobalSpecType) { @@ -9329,10 +9947,16 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Coordinates = m1.Coordinates f.CustomDns = m1.CustomDns m1.SetDeploymentToGlobalSpecType(f) + f.DiskSize = m1.DiskSize + f.GcpRegion = m1.GcpRegion + f.InstanceType = m1.InstanceType + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) + f.NodesPerAz = m1.NodesPerAz f.OfflineSurvivabilityMode = m1.OfflineSurvivabilityMode m1.SetPrivateConnectivityChoiceToGlobalSpecType(f) m1.SetSiteTypeToGlobalSpecType(f) + f.SshKey = m1.SshKey } func (m *ReplaceSpecType) ToGlobalSpecType(f *GlobalSpecType) { diff --git a/pbgo/extschema/schema/views/http_loadbalancer/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/http_loadbalancer/crudapi/api.vesapi.go index 378e84c37..d43e53bb5 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/crudapi/api.vesapi.go @@ -3333,197 +3333,18 @@ var APISwaggerJSON string = `{ } } }, - "crudapiObjectCreateReq": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq", - "properties": { - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" - }, - "spec": { - "$ref": "#/definitions/viewshttp_loadbalancerSpecType" - }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" - } - } - }, - "crudapiObjectCreateRsp": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateRsp", - "properties": { - "err": { - "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" - }, - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" - }, - "object_uid": { - "type": "string" - }, - "spec": { - "$ref": "#/definitions/viewshttp_loadbalancerSpecType" - }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" - } - } - }, - "crudapiObjectDeleteRsp": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectDeleteRsp", - "properties": { - "err": { - "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" - } - } - }, - "crudapiObjectGetRsp": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectGetRsp", - "properties": { - "ent_backrefs": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - }, - "err": { - "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" - }, - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" - }, - "resource_version": { - "type": "string" - }, - "spec": { - "$ref": "#/definitions/viewshttp_loadbalancerSpecType" - }, - "status": { - "type": "array", - "items": { - "$ref": "#/definitions/http_loadbalancerStatusObject" - } - }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" - } - } - }, - "crudapiObjectListRsp": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectListRsp", - "properties": { - "err": { - "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" - }, - "items": { - "type": "array", - "items": { - "$ref": "#/definitions/crudapiObjectListRspItem" - } - }, - "metadata": { - "$ref": "#/definitions/schemaListMetaType" - }, - "next_page": { - "type": "string", - "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" - }, - "uids": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "crudapiObjectListRspItem": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectListRspItem", - "properties": { - "labels": { - "type": "object" - }, - "metadata": { - "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", - "$ref": "#/definitions/schemaObjectMetaType" - }, - "name": { - "type": "string" - }, - "namespace": { - "type": "string" - }, - "object_uid": { - "type": "string" - }, - "spec": { - "$ref": "#/definitions/viewshttp_loadbalancerSpecType" - }, - "status": { - "type": "array", - "items": { - "$ref": "#/definitions/http_loadbalancerStatusObject" - } - }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" - }, - "tenant": { - "type": "string" - } - } - }, - "crudapiObjectReplaceReq": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq", - "properties": { - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" - }, - "object_uid": { - "type": "string" - }, - "resource_version": { - "type": "string" - }, - "spec": { - "$ref": "#/definitions/viewshttp_loadbalancerSpecType" - } - } - }, - "crudapiObjectReplaceRsp": { - "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceRsp", - "properties": { - "err": { - "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" - }, - "metadata": { - "$ref": "#/definitions/schemaObjectMetaType" - }, - "spec": { - "$ref": "#/definitions/viewshttp_loadbalancerSpecType" - }, - "system_metadata": { - "$ref": "#/definitions/schemaSystemObjectMetaType" - } - } - }, - "http_loadbalancerAPIEndpointProtectionRule": { + "common_wafAPIEndpointProtectionRule": { "type": "object", "description": "API Protection Rule for a specific endpoint", "title": "API Endpoint Protection Rule", "x-displayname": "API Endpoint Protection Rule", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIEndpointProtectionRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIEndpointProtectionRule", "properties": { "action": { "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "action", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRuleAction", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", "x-displayname": "Rule Action", "x-ves-required": "true", "x-ves-validation-rules": { @@ -3592,18 +3413,18 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIGroupProtectionRule": { + "common_wafAPIGroupProtectionRule": { "type": "object", "description": "API Protection Rule for a group or a base url", "title": "API Group Protection Rule", "x-displayname": "API Group Protection Rule", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIGroupProtectionRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroupProtectionRule", "properties": { "action": { "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "action", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRuleAction", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", "x-displayname": "Rule Action", "x-ves-required": "true", "x-ves-validation-rules": { @@ -3677,11 +3498,11 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIGroups": { + "common_wafAPIGroups": { "type": "object", "title": "api groups", "x-displayname": "API Groups", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIGroups", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroups", "properties": { "api_groups": { "type": "array", @@ -3702,13 +3523,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIProtectionRuleAction": { + "common_wafAPIProtectionRuleAction": { "type": "object", "description": "The action to take if the input request matches the rule.", "title": "API Protection Rule Action", "x-displayname": "API Protection Rule Action", "x-ves-oneof-field-action": "[\"allow\",\"deny\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIProtectionRuleAction", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRuleAction", "properties": { "allow": { "description": "Exclusive with [deny]\n Allow the request to proceed.", @@ -3724,12 +3545,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIProtectionRules": { + "common_wafAPIProtectionRules": { "type": "object", "description": "API Protection Rules", "title": "API Protection Rules", "x-displayname": "API Protection Rules", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIProtectionRules", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRules", "properties": { "api_endpoint_rules": { "type": "array", @@ -3737,7 +3558,7 @@ var APISwaggerJSON string = `{ "title": "api_endpoint_rules", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerAPIEndpointProtectionRule" + "$ref": "#/definitions/common_wafAPIEndpointProtectionRule" }, "x-displayname": "API Endpoints", "x-ves-validation-rules": { @@ -3750,7 +3571,7 @@ var APISwaggerJSON string = `{ "title": "api_groups_rules", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerAPIGroupProtectionRule" + "$ref": "#/definitions/common_wafAPIGroupProtectionRule" }, "x-displayname": "Server URLs and API Groups", "x-ves-validation-rules": { @@ -3759,20 +3580,20 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIRateLimit": { + "common_wafAPIRateLimit": { "type": "object", "title": "APIRateLimit", - "x-displayname": "API Rate Limit", + "x-displayname": "APIRateLimit", "x-ves-oneof-field-ip_allowed_list_choice": "[\"bypass_rate_limiting_rules\",\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIRateLimit", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIRateLimit", "properties": { "api_endpoint_rules": { "type": "array", - "description": " Sets of rules for a specific endpoints.\n Order matters as it uses first match policy.\n For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "description": " Sets of rules for a specific endpoints.\n Order is matter as it uses first match policy.\n For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", "title": "api_endpoint_policy", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerApiEndpointRule" + "$ref": "#/definitions/common_wafApiEndpointRule" }, "x-displayname": "API Endpoints", "x-ves-validation-rules": { @@ -3782,13 +3603,13 @@ var APISwaggerJSON string = `{ "bypass_rate_limiting_rules": { "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list no_ip_allowed_list]\n This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", "title": "bypass_rate_limiting_policy", - "$ref": "#/definitions/http_loadbalancerBypassRateLimitingRules", + "$ref": "#/definitions/common_wafBypassRateLimitingRules", "x-displayname": "Bypass Rate Limiting" }, "custom_ip_allowed_list": { "description": "Exclusive with [bypass_rate_limiting_rules ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", "title": "Custom IP list", - "$ref": "#/definitions/http_loadbalancerCustomIpAllowedList", + "$ref": "#/definitions/common_wafCustomIpAllowedList", "x-displayname": "IP Allowed List using IP Prefix Set(s)" }, "ip_allowed_list": { @@ -3798,33 +3619,33 @@ var APISwaggerJSON string = `{ "x-displayname": "IP Allowed List" }, "no_ip_allowed_list": { - "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list ip_allowed_list]\n There is no skip rules for rate limiting, all clients go through rate limiting.", - "title": "No Skip Rules", + "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "No Skip Rules" + "x-displayname": "No IP Allowed" }, "server_url_rules": { "type": "array", - "description": " Set of rules for entire domain or base path that contain multiple endpoints.\n Order matters as it uses first match policy.\n For matching also specific endpoints you can use the API endpoint rules set bellow.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "description": " Set of rules for entire domain or base path that contain multiple endpoints.\n Order is matter as it uses first match policy.\n For matching also specific endpoints you can use the API endpoint rules set bellow.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", "title": "server_url_policy", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerServerUrlRule" + "$ref": "#/definitions/common_wafServerUrlRule" }, - "x-displayname": "Server URLs and API Groups", + "x-displayname": "Server URLs", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "20" } } } }, - "http_loadbalancerAPISpecificationSettings": { + "common_wafAPISpecificationSettings": { "type": "object", "description": "Settings for api specification (api definition, OpenAPI validation, etc.)", "title": "APISpecificationSettings", "x-displayname": "API Specification and Validation", "x-ves-oneof-field-validation_target_choice": "[\"validation_all_spec_endpoints\",\"validation_custom_list\",\"validation_disabled\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APISpecificationSettings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APISpecificationSettings", "properties": { "api_definition": { "description": " Specify API definition which includes application API paths and methods derived from swagger files.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -3839,13 +3660,13 @@ var APISwaggerJSON string = `{ "validation_all_spec_endpoints": { "description": "Exclusive with [validation_custom_list validation_disabled]\n Validate all API endpoints specified by the API Inventory.\n All other API endpoints would proceed according to \"Fall Through Mode\"", "title": "validation_all_spec_endpoints", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationAllSpecEndpointsSettings", + "$ref": "#/definitions/common_wafOpenApiValidationAllSpecEndpointsSettings", "x-displayname": "API Inventory" }, "validation_custom_list": { "description": "Exclusive with [validation_all_spec_endpoints validation_disabled]\n Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other end-points not listed will act according to \"Fall Through Mode\"", "title": "Custom list", - "$ref": "#/definitions/http_loadbalancerValidateApiBySpecRule", + "$ref": "#/definitions/common_wafValidateApiBySpecRule", "x-displayname": "Custom List" }, "validation_disabled": { @@ -3856,190 +3677,47 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAdvancedOptionsType": { + "common_wafApiDefinitionList": { "type": "object", - "description": "This defines various options to define a route", - "title": "Advanced options", - "x-displayname": "Advanced Options", - "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", - "x-ves-oneof-field-strict_sni_host_header_check_choice": "[]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType", + "description": "x-displayName: \"API Definition List\"\nList of api definitions.", + "title": "api definition list", "properties": { - "buffer_policy": { - "description": " Some upstream applications are not capable of handling streamed data and high network latency.\n This config enables buffering the entire request before sending to upstream application. We can\n specify the maximum buffer size and buffer interval with this config.", - "title": "Buffer configuration for requests", - "$ref": "#/definitions/schemaBufferConfigType", - "x-displayname": "Buffer Policy" - }, - "compression_params": { - "description": " Enables load balancer to compress dispatched data from an upstream service upon client request.\n Only GZIP compression is supported", - "title": "Compression configuration", - "$ref": "#/definitions/virtual_hostCompressionType", - "x-displayname": "Compression Parameters" - }, - "custom_errors": { - "type": "object", - "description": " Map of integer error codes as keys and string values that can be used to provide custom\n http pages for each error code.\n Key of the map can be either response code class or HTTP Error code. Response code classes\n for key is configured as follows\n 3 -- for 3xx response code class\n 4 -- for 4xx response code class\n 5 -- for 5xx response code class\n Value of the map is string which represents custom HTTP responses.\n Specific response code takes preference when both response code and response code class\n matches for a request.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.uint32.ranges: 3,4,5,300-599\n ves.io.schema.rules.map.max_pairs: 16\n ves.io.schema.rules.map.values.string.max_len: 65536\n ves.io.schema.rules.map.values.string.uri_ref: true\n", - "title": "Custom Errors", - "x-displayname": "Custom Error Responses", - "x-ves-example": "value", - "x-ves-validation-rules": { - "ves.io.schema.rules.map.keys.uint32.ranges": "3,4,5,300-599", - "ves.io.schema.rules.map.max_pairs": "16", - "ves.io.schema.rules.map.values.string.max_len": "65536", - "ves.io.schema.rules.map.values.string.uri_ref": "true" + "api_definitions": { + "type": "array", + "description": "x-displayName: \"API Definitions\"\nAPI Definitions using OpenAPI specification files", + "title": "API Definitions", + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" } + } + } + }, + "common_wafApiDiscoverySetting": { + "type": "object", + "description": "Specifies the settings used for API discovery", + "title": "API Discovery Setting", + "x-displayname": "API Discovery Setting", + "x-ves-displayorder": "1,6,5", + "x-ves-oneof-field-learn_from_redirect_traffic": "[\"disable_learn_from_redirect_traffic\",\"enable_learn_from_redirect_traffic\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiDiscoverySetting", + "properties": { + "disable_learn_from_redirect_traffic": { + "description": "Exclusive with [enable_learn_from_redirect_traffic]\n Disable learning API patterns from traffic with redirect response codes 3xx", + "title": "Disable learning from redirected request traffic", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Learning From Redirect Traffic" }, - "disable_default_error_pages": { - "type": "boolean", - "description": " Disable the use of default F5XC error pages.", - "title": "Disable the use of default F5XC error pages", - "format": "boolean", - "x-displayname": "Disable Default Error Pages" + "discovered_api_settings": { + "description": " Configure Discovered API Settings.", + "title": "Discovered API Settings", + "$ref": "#/definitions/app_typeDiscoveredAPISettings", + "x-displayname": "Discovered API Settings" }, - "disable_path_normalize": { - "description": "Exclusive with [enable_path_normalize]\n", - "title": "Disable Path normalization", + "enable_learn_from_redirect_traffic": { + "description": "Exclusive with [disable_learn_from_redirect_traffic]\n Enable learning API patterns from traffic with redirect response codes 3xx", + "title": "Enable learning from redirected request traffic", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" - }, - "enable_path_normalize": { - "description": "Exclusive with [disable_path_normalize]\n", - "title": "Enable Path normalization", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable" - }, - "idle_timeout": { - "type": "integer", - "description": " The amount of time that a stream can exist without upstream or downstream activity, in milliseconds.\n The stream is terminated with a HTTP 504 (Gateway Timeout) error code if no upstream response header has been\n received, otherwise the stream is reset.\n\nExample: - \"2000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 3600000\n", - "title": "Idle timeout", - "format": "int64", - "x-displayname": "Idle Timeout", - "x-ves-example": "2000", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "3600000" - } - }, - "max_request_header_size": { - "type": "integer", - "description": " The maximum request header size for downstream connections, in KiB.\n A HTTP 431 (Request Header Fields Too Large) error code is sent for requests that exceed this size.\n\n If multiple load balancers share the same advertise_policy, the highest value configured across all\n such load balancers is used for all the load balancers in question.\n\nExample: - \"60\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 96\n", - "title": "Maximum request header size", - "format": "int64", - "x-displayname": "Maximum Request Header Size", - "x-ves-example": "60", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "96" - } - }, - "request_headers_to_add": { - "type": "array", - "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Headers to add in request", - "maxItems": 32, - "items": { - "$ref": "#/definitions/schemaHeaderManipulationOptionType" - }, - "x-displayname": "Add Request Headers", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "request_headers_to_remove": { - "type": "array", - "description": " List of keys of Headers to be removed from the HTTP request being sent towards upstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Header to be removed from request", - "maxItems": 32, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 256 - }, - "x-displayname": "Remove Request Headers", - "x-ves-example": "host", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "response_headers_to_add": { - "type": "array", - "description": " Headers are key-value pairs to be added to HTTP response being sent towards downstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Headers to add in response", - "maxItems": 32, - "items": { - "$ref": "#/definitions/schemaHeaderManipulationOptionType" - }, - "x-displayname": "Add Response Headers", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "response_headers_to_remove": { - "type": "array", - "description": " List of keys of Headers to be removed from the HTTP response being sent towards downstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Header to be removed from response", - "maxItems": 32, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 256 - }, - "x-displayname": "Remove Response Headers", - "x-ves-example": "host", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerApiDefinitionList": { - "type": "object", - "description": "x-displayName: \"API Definition List\"\nList of api definitions.", - "title": "api definition list", - "properties": { - "api_definitions": { - "type": "array", - "description": "x-displayName: \"API Definitions\"\nAPI Definitions using OpenAPI specification files", - "title": "API Definitions", - "items": { - "$ref": "#/definitions/schemaviewsObjectRefType" - } - } - } - }, - "http_loadbalancerApiDiscoverySetting": { - "type": "object", - "description": "Specifies the settings used for API discovery", - "title": "API Discovery Setting", - "x-displayname": "API Discovery Setting", - "x-ves-displayorder": "1,6,5", - "x-ves-oneof-field-learn_from_redirect_traffic": "[\"disable_learn_from_redirect_traffic\",\"enable_learn_from_redirect_traffic\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ApiDiscoverySetting", - "properties": { - "disable_learn_from_redirect_traffic": { - "description": "Exclusive with [enable_learn_from_redirect_traffic]\n Disable learning API patterns from traffic with redirect response codes 3xx", - "title": "Disable learning from redirected request traffic", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable Learning From Redirect Traffic" - }, - "discovered_api_settings": { - "description": " Configure Discovered API Settings.", - "title": "Discovered API Settings", - "$ref": "#/definitions/app_typeDiscoveredAPISettings", - "x-displayname": "Discovered API Settings" - }, - "enable_learn_from_redirect_traffic": { - "description": "Exclusive with [disable_learn_from_redirect_traffic]\n Enable learning API patterns from traffic with redirect response codes 3xx", - "title": "Enable learning from redirected request traffic", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable Learning From Redirect Traffic" + "x-displayname": "Enable Learning From Redirect Traffic" }, "sensitive_data_detection_rules": { "description": " Manage rules to detect sensitive data in requests and/or response sections.", @@ -4049,12 +3727,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerApiEndpointDetails": { + "common_wafApiEndpointDetails": { "type": "object", "description": "This defines api endpoint", "title": "ApiEndpointDetails", "x-displayname": "API Endpoint", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ApiEndpointDetails", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointDetails", "properties": { "methods": { "type": "array", @@ -4088,13 +3766,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerApiEndpointRule": { + "common_wafApiEndpointRule": { "type": "object", "title": "ApiEndpointRule", "x-displayname": "ApiEndpointRule", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ApiEndpointRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointRule", "properties": { "any_domain": { "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", @@ -4131,7 +3809,7 @@ var APISwaggerJSON string = `{ "inline_rate_limiter": { "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", "title": "Inline Rate Limiter", - "$ref": "#/definitions/http_loadbalancerInlineRateLimiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", "x-displayname": "Specific Values" }, "ref_rate_limiter": { @@ -4159,91 +3837,11 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAppEndpointType": { - "type": "object", - "description": "x-displayName: \"Application Endpoint\"\nApplication Endpoint.", - "title": "AppEndpointType", - "properties": { - "allow_good_bots": { - "description": "System flags Good Bot traffic and allow it to continue to the origin", - "title": "x-displayName: \"Allow All Good Bots to Continue to Origin\"", - "$ref": "#/definitions/schemaEmpty" - }, - "any_domain": { - "description": "x-displayName: \"Any Domain\"\nAny Domain.", - "title": "Any domain", - "$ref": "#/definitions/schemaEmpty" - }, - "domain": { - "description": "x-displayName: \"Domain\"\nDomain matcher.", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType" - }, - "flow_label": { - "description": "x-displayName: \"Specify Endpoint label category\"", - "title": "flow_label", - "$ref": "#/definitions/schemaBotDefenseFlowLabelCategoriesChoiceType" - }, - "http_methods": { - "type": "array", - "description": "x-displayName: \"HTTP Methods\"\nx-required\nList of HTTP methods.", - "title": "HTTP Methods", - "items": { - "$ref": "#/definitions/schemaBotHttpMethod" - } - }, - "metadata": { - "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType" - }, - "mitigate_good_bots": { - "description": "System flags Good Bot Traffic, but mitigation is handled in the same manner as malicious automated traffic defined above", - "title": "x-displayName: \"Apply Mitigation to Good Bots\"", - "$ref": "#/definitions/schemaEmpty" - }, - "mitigation": { - "description": "x-displayName: \"Bot Traffic Mitigation\"\nx-required\nMitigation action.", - "title": "Mitigation", - "$ref": "#/definitions/policyShapeBotMitigationAction" - }, - "mobile": { - "description": "x-displayName: \"Mobile Traffic\"\nMobile traffic channel.", - "title": "MobileTrafficChannel", - "$ref": "#/definitions/schemaEmpty" - }, - "path": { - "description": "x-displayName: \"Path\"\nx-required\nMatching URI path of the route.", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType" - }, - "protocol": { - "description": "x-displayName: \"Protocol\"\nProtocol.", - "title": "Protocol", - "$ref": "#/definitions/http_loadbalancerURLScheme" - }, - "undefined_flow_label": { - "description": "x-displayName: \"Undefined\"", - "title": "undefined", - "$ref": "#/definitions/schemaEmpty" - }, - "web": { - "description": "x-displayName: \"Web Traffic\"\nWeb traffic channel.", - "title": "WebTrafficChannel", - "$ref": "#/definitions/schemaEmpty" - }, - "web_mobile": { - "description": "x-displayName: \"Web and Mobile Traffic\"\nWeb and mobile traffic channel.", - "title": "WebMobileTrafficChannel", - "$ref": "#/definitions/http_loadbalancerWebMobileTrafficType" - } - } - }, - "http_loadbalancerAudiences": { + "common_wafAudiences": { "type": "object", "title": "audiences", "x-displayname": "Audiences", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.Audiences", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Audiences", "properties": { "audiences": { "type": "array", @@ -4266,32 +3864,11 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAutoMitigationAction": { - "type": "object", - "description": "Select action for auto mitigation", - "title": "Auto Mitigation Action", - "x-displayname": "Auto Mitigation Action", - "x-ves-oneof-field-action": "[\"block\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AutoMitigationAction", - "properties": { - "block": { - "description": "Exclusive with []\n", - "title": "block", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Block" - }, - "js_challenge": { - "title": "JavaScript Challenge", - "$ref": "#/definitions/virtual_hostJavascriptChallengeType", - "x-displayname": "JavaScript Challenge" - } - } - }, - "http_loadbalancerBasePathsType": { + "common_wafBasePathsType": { "type": "object", "title": "base_paths", "x-displayname": "Base Paths", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.BasePathsType", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BasePathsType", "properties": { "base_paths": { "type": "array", @@ -4314,83 +3891,19 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerBotAdvancedMobileSDKConfigType": { - "type": "object", - "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers.", - "title": "BotAdvancedMobileSDKConfigType", - "properties": { - "mobile_identifier": { - "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers Type.", - "title": "MobileTrafficIdentifierType", - "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" - } - } - }, - "http_loadbalancerBotDefenseAdvancedPolicyType": { + "common_wafBypassRateLimitingRule": { "type": "object", - "description": "x-displayName: \"Bot Defense Advanced Policy\"\nThis defines various configuration options for Bot Defense Advanced Policy.", - "title": "BotDefenseAdvancedPolicyType", + "title": "BypassRateLimitingRule", + "x-displayname": "Bypass Rate Limiting Rule", + "x-ves-oneof-field-destination_type": "[\"any_url\",\"api_endpoint\",\"api_groups\",\"base_path\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRule", "properties": { - "disable_mobile_sdk": { - "description": "x-displayName: \"Disable Mobile SDK\"\nDisable Mobile SDK.", - "title": "Disable Mobile SDK", - "$ref": "#/definitions/schemaEmpty" - }, - "js_download_path": { - "type": "string", - "description": "x-displayName: \"Web Client JavaScript Download Path\"\nx-example: \"/common.js\"\nx-required\nCustomize Bot Defense Web Client JavaScript path", - "title": "js_download_path" - }, - "mobile_sdk_config": { - "description": "x-displayName: \"Enable Mobile SDK\"\nEnable Mobile SDK Configuration", - "title": "Enable Mobile SDK", - "$ref": "#/definitions/http_loadbalancerBotAdvancedMobileSDKConfigType" - }, - "protected_app_endpoints": { - "type": "array", - "description": "x-displayName: \"Protected App Endpoints\"\nx-required\nList of protected endpoints (max 128 items)", - "title": "ProtectedAppEndpointType", - "items": { - "$ref": "#/definitions/http_loadbalancerProtectedAppEndpointType" - } - } - } - }, - "http_loadbalancerBotDefenseAdvancedType": { - "type": "object", - "description": "x-displayName: \"Bot Defense Advanced\"\nBot Defense Advanced", - "title": "BotDefenseAdvancedType", - "properties": { - "mobile": { - "description": "x-displayName: \"Infrastructure For Mobile\"\nSelect infrastructure for mobile.", - "title": "Mobile", - "$ref": "#/definitions/schemaviewsObjectRefType" - }, - "policy": { - "description": "x-displayName: \"Bot Defense Advanced Policy\"\nx-required\nBot Defense Advanced Policy.", - "title": "BotDefenseAdvancedPolicyType", - "$ref": "#/definitions/http_loadbalancerBotDefenseAdvancedPolicyType" - }, - "web": { - "description": "x-displayName: \"Infrastructure For Web\"\nSelect infrastructure for web.", - "title": "Web", - "$ref": "#/definitions/schemaviewsObjectRefType" - } - } - }, - "http_loadbalancerBypassRateLimitingRule": { - "type": "object", - "title": "BypassRateLimitingRule", - "x-displayname": "Bypass Rate Limiting Rule", - "x-ves-oneof-field-destination_type": "[\"any_url\",\"api_endpoint\",\"api_groups\",\"base_path\"]", - "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRule", - "properties": { - "any_domain": { - "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", - "title": "any domain", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Any Domain" + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" }, "any_url": { "description": "Exclusive with [api_endpoint api_groups base_path]\n Any URL ", @@ -4401,7 +3914,7 @@ var APISwaggerJSON string = `{ "api_endpoint": { "description": "Exclusive with [any_url api_groups base_path]\n The endpoint (path) of the request.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "api endpoint path", - "$ref": "#/definitions/http_loadbalancerApiEndpointDetails", + "$ref": "#/definitions/common_wafApiEndpointDetails", "x-displayname": "API Endpoint", "x-ves-example": "/endpoint1", "x-ves-required": "true", @@ -4412,7 +3925,7 @@ var APISwaggerJSON string = `{ "api_groups": { "description": "Exclusive with [any_url api_endpoint base_path]\n Validation will be performed for the endpoints mentioned in the API Groups", "title": "api group", - "$ref": "#/definitions/http_loadbalancerAPIGroups", + "$ref": "#/definitions/common_wafAPIGroups", "x-displayname": "API Groups" }, "base_path": { @@ -4453,141 +3966,34 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerBypassRateLimitingRules": { + "common_wafBypassRateLimitingRules": { "type": "object", "description": "This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", "title": "bypass_rate_limiting_policy", "x-displayname": "Bypass Rate Limiting", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRules", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRules", "properties": { "bypass_rate_limiting_rules": { "type": "array", - "description": " This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n ves.io.schema.rules.repeated.unique: true\n", + "description": " This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", "title": "bypass_rate_limiting_policy", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerBypassRateLimitingRule" + "$ref": "#/definitions/common_wafBypassRateLimitingRule" }, "x-displayname": "Bypass Rate Limiting", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "20", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType": { - "type": "object", - "description": "Insert Client-Side Defense JavaScript in all pages with the exceptions", - "title": "CSDJavaScriptInsertAllWithExceptionsType", - "x-displayname": "Insert JavaScript in All Pages with the Exceptions", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType", - "properties": { - "exclude_list": { - "type": "array", - "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "exclude_list", - "maxItems": 128, - "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" - }, - "x-displayname": "Exclude Pages", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerCSDJavaScriptInsertType": { - "type": "object", - "description": "This defines custom JavaScript insertion rules for Client-Side Defense Policy.", - "title": "CSDJavaScriptInsertType", - "x-displayname": "JavaScript Custom Insertion Rules", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType", - "properties": { - "exclude_list": { - "type": "array", - "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "exclude_list", - "maxItems": 128, - "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" - }, - "x-displayname": "Exclude Paths", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "rules": { - "type": "array", - "description": " Required list of pages to insert Client-Side Defense client JavaScript.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", - "title": "rules", - "minItems": 1, - "maxItems": 128, - "items": { - "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertionRule" - }, - "x-displayname": "JavaScript Insertions", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerCSDJavaScriptInsertionRule": { - "type": "object", - "description": "This defines a rule for Client-Side Defense JavaScript insertion.", - "title": "CSDJavaScriptInsertionRule", - "x-displayname": "JavaScript Insertion Rule", - "x-ves-oneof-field-domain_matcher_choice": "[\"any_domain\",\"domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule", - "properties": { - "any_domain": { - "description": "Exclusive with [domain]\n Any Domain.", - "title": "Any domain", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Any Domain" - }, - "domain": { - "description": "Exclusive with [any_domain]\n Domain matcher.", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType", - "x-displayname": "Domain" - }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "path": { - "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType", - "x-displayname": "Path", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "ves.io.schema.rules.repeated.max_items": "20" } } } }, - "http_loadbalancerChallengeRule": { + "common_wafChallengeRule": { "type": "object", "description": "Challenge rule", "title": "Challenge Rule", "x-displayname": "Challenge Rule", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ChallengeRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRule", "properties": { "metadata": { "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -4611,12 +4017,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerChallengeRuleList": { + "common_wafChallengeRuleList": { "type": "object", "description": "List of challenge rules to be used in policy based challenge", "title": "Challenge Rule List", "x-displayname": "Challenge Rule List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ChallengeRuleList", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRuleList", "properties": { "rules": { "type": "array", @@ -4624,7 +4030,7 @@ var APISwaggerJSON string = `{ "title": "Rules", "maxItems": 64, "items": { - "$ref": "#/definitions/http_loadbalancerChallengeRule" + "$ref": "#/definitions/common_wafChallengeRule" }, "x-displayname": "Rules", "x-ves-validation-rules": { @@ -4634,60 +4040,7 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerClientSideDefensePolicyType": { - "type": "object", - "description": "This defines various configuration options for Client-Side Defense policy.", - "title": "ClientSideDefensePolicyType", - "x-displayname": "Client-Side Defense Policy", - "x-ves-oneof-field-java_script_choice": "[\"disable_js_insert\",\"js_insert_all_pages\",\"js_insert_all_pages_except\",\"js_insertion_rules\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType", - "properties": { - "disable_js_insert": { - "description": "Exclusive with [js_insert_all_pages js_insert_all_pages_except js_insertion_rules]\n Disable JavaScript insertion.", - "title": "Disable JavaScript Insertion", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable JavaScript Insertion" - }, - "js_insert_all_pages": { - "description": "Exclusive with [disable_js_insert js_insert_all_pages_except js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages.", - "title": "Insert JavaScript in All Pages", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Insert JavaScript in All Pages" - }, - "js_insert_all_pages_except": { - "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages with the exceptions.", - "title": "Insert JavaScript in All Pages with the Exceptions", - "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType", - "x-displayname": "Insert JavaScript in All Pages with the Exceptions" - }, - "js_insertion_rules": { - "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insert_all_pages_except]\n Specify custom JavaScript insertion rules.", - "title": "Custom JavaScript Insertion Rules", - "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertType", - "x-displayname": "Custom JavaScript Insertion Rules" - } - } - }, - "http_loadbalancerClientSideDefenseType": { - "type": "object", - "description": "This defines various configuration options for Client-Side Defense Policy.", - "title": "ClientSideDefenseType", - "x-displayname": "Client-Side Defense", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType", - "properties": { - "policy": { - "description": " Configure the pages where you want Client-Side Defense Protection.\n Please ensure that the same domains are configured in the Client-Side Defense configuration.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "ClientSideDefensePolicyType", - "$ref": "#/definitions/http_loadbalancerClientSideDefensePolicyType", - "x-displayname": "Client-Side Defense Policy", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "http_loadbalancerClientSrcRuleAction": { + "common_wafClientSrcRuleAction": { "type": "string", "description": "Action that should be taken when client identifier matches the rule\n", "title": "action", @@ -4699,18 +4052,18 @@ var APISwaggerJSON string = `{ "SKIP_PROCESSING_API_PROTECTION", "SKIP_PROCESSING_OAS_VALIDATION", "SKIP_PROCESSING_DDOS_PROTECTION", - "SKIP_PROCESSING_THREAT_INTELLIGENCE" + "SKIP_PROCESSING_THREAT_MESH" ], "default": "SKIP_PROCESSING_WAF", "x-displayname": "Action", - "x-ves-proto-enum": "ves.io.schema.views.http_loadbalancer.ClientSrcRuleAction" + "x-ves-proto-enum": "ves.io.schema.views.common_waf.ClientSrcRuleAction" }, - "http_loadbalancerCustomFallThroughMode": { + "common_wafCustomFallThroughMode": { "type": "object", "description": "Define the fall through settings", "title": "Custom Fall Through Mode", "x-displayname": "Custom Fall Through Mode", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CustomFallThroughMode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomFallThroughMode", "properties": { "open_api_validation_rules": { "type": "array", @@ -4718,7 +4071,7 @@ var APISwaggerJSON string = `{ "title": "Custom Fall Through Rule List", "maxItems": 15, "items": { - "$ref": "#/definitions/http_loadbalancerFallThroughRule" + "$ref": "#/definitions/common_wafFallThroughRule" }, "x-displayname": "Custom Fall Through Rule List", "x-ves-required": "true", @@ -4730,12 +4083,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerCustomIpAllowedList": { + "common_wafCustomIpAllowedList": { "type": "object", "description": "IP Allowed list using existing ip_prefix_set objects", "title": "Custom IP Allowed List", "x-displayname": "Custom IP Allowed List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CustomIpAllowedList", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomIpAllowedList", "properties": { "rate_limiter_allowed_prefixes": { "type": "array", @@ -4756,119 +4109,27 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerDDoSClientSource": { + "common_wafEnableChallenge": { "type": "object", - "description": "DDoS Mitigation sources to be blocked", - "title": "DDoSClientSource", - "x-displayname": "DDoS Client Source Choice", - "x-ves-displayorder": "1,3,5", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSClientSource", + "description": "Configure auto mitigation i.e risk based challenges for malicious users", + "title": "enable challenge", + "x-displayname": "Enable Malicious User Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.EnableChallenge", "properties": { - "asn_list": { - "description": " Addresses that belong to the ASNs in the given list\n The ASN is obtained by performing a lookup for the source IPv4 Address in a GeoIP DB.", - "title": "asn_list", - "$ref": "#/definitions/policyAsnMatchList", - "x-displayname": "ASN List" + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" }, - "country_list": { - "type": "array", - "description": " Sources that are located in one of the countries in the given list\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.not_in: [0]\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", - "title": "country_list", - "maxItems": 64, - "items": { - "$ref": "#/definitions/policyCountryCode" - }, - "x-displayname": "Country List", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.not_in": "[0]", - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "tls_fingerprint_matcher": { - "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", - "title": "TLS JA3 fingerprint matcher", - "$ref": "#/definitions/policyTlsFingerprintMatcherType", - "x-displayname": "TLS Fingerprint Matcher" - } - } - }, - "http_loadbalancerDDoSMitigationRule": { - "type": "object", - "description": "DDoS Mitigation Rule specifies the sources to be blocked", - "title": "DDoSMitigationRule", - "x-displayname": "DDoS Mitigation Rule", - "x-ves-displayorder": "1,2,7,10", - "x-ves-oneof-field-mitigation_action": "[\"block\"]", - "x-ves-oneof-field-mitigation_choice": "[\"ddos_client_source\",\"ip_prefix_list\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule", - "properties": { - "block": { - "description": "Exclusive with []\n Block user for a duration determined by the expiration time", - "title": "Block User", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Block User" - }, - "ddos_client_source": { - "description": "Exclusive with [ip_prefix_list]\n Combination of Region, ASN and TLS Fingerprints\n\nValidation Rules:\n ves.io.schema.rules.message.required_one_nonzero_field: true\n", - "title": "ddos_client_source", - "$ref": "#/definitions/http_loadbalancerDDoSClientSource", - "x-displayname": "DDoS Client Source", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required_one_nonzero_field": "true" - } - }, - "expiration_timestamp": { - "type": "string", - "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", - "title": "expiration timestamp", - "format": "date-time", - "x-displayname": "Expiration Timestamp", - "x-ves-example": "2019-12-31:44:34.171543432Z", - "x-ves-validation-rules": { - "ves.io.schema.rules.timestamp.within.seconds": "31536000" - } - }, - "ip_prefix_list": { - "description": "Exclusive with [ddos_client_source]\n IPv4 prefix string.", - "title": "ip source", - "$ref": "#/definitions/policyPrefixMatchList", - "x-displayname": "IP Source" - }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "http_loadbalancerEnableChallenge": { - "type": "object", - "description": "Configure auto mitigation i.e risk based challenges for malicious users", - "title": "enable challenge", - "x-displayname": "Enable Malicious User Challenge", - "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", - "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", - "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.EnableChallenge", - "properties": { - "captcha_challenge_parameters": { - "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", - "title": "Captcha Challenge", - "$ref": "#/definitions/virtual_hostCaptchaChallengeType", - "x-displayname": "Captcha Challenge Parameters" - }, - "default_captcha_challenge_parameters": { - "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Default Parameters" + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" }, "default_js_challenge_parameters": { "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", @@ -4896,35 +4157,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerEnableDDoSDetectionSetting": { - "type": "object", - "title": "Enable DDoS Detection", - "x-displayname": "Enable DDoS detection", - "x-ves-oneof-field-auto_mitigation_choice": "[\"disable_auto_mitigation\",\"enable_auto_mitigation\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.EnableDDoSDetectionSetting", - "properties": { - "disable_auto_mitigation": { - "description": "Exclusive with [enable_auto_mitigation]\n", - "title": "Disable Auto Mitigation", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" - }, - "enable_auto_mitigation": { - "description": "Exclusive with [disable_auto_mitigation]\n", - "title": "Enable Auto Mitigation", - "$ref": "#/definitions/http_loadbalancerAutoMitigationAction", - "x-displayname": "Enable" - } - } - }, - "http_loadbalancerFallThroughRule": { + "common_wafFallThroughRule": { "type": "object", "description": "Fall Through Rule for a specific endpoint, base-path, or API group", "title": "Fall Through Rule", "x-displayname": "Fall Through Rule", "x-ves-oneof-field-action_choice": "[\"action_block\",\"action_report\",\"action_skip\"]", "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.FallThroughRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.FallThroughRule", "properties": { "action_block": { "description": "Exclusive with [action_report action_skip]\n Block the request and issue an API security event", @@ -4947,7 +4187,7 @@ var APISwaggerJSON string = `{ "api_endpoint": { "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", "title": "API Endpoint", - "$ref": "#/definitions/http_loadbalancerApiEndpointDetails", + "$ref": "#/definitions/common_wafApiEndpointDetails", "x-displayname": "API Endpoint" }, "api_group": { @@ -4985,37 +4225,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerHashPolicyListType": { - "type": "object", - "description": "List of hash policy rules", - "title": "Hash Policy List", - "x-displayname": "Hash Policy List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.HashPolicyListType", - "properties": { - "hash_policy": { - "type": "array", - "description": " Specifies a list of hash policies to use for ring hash load balancing. Each\n hash policy is evaluated individually and the combined result is used to\n route the request\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 8\n ves.io.schema.rules.repeated.unique: true\n", - "title": "hash_policy", - "maxItems": 8, - "items": { - "$ref": "#/definitions/routeHashPolicyType" - }, - "x-displayname": "Hash Policy", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerHttpHeaderMatcherList": { + "common_wafHttpHeaderMatcherList": { "type": "object", "description": "Request header name and value pairs", "title": "HTTP Header", "x-displayname": "HTTP Header", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.HttpHeaderMatcherList", + "x-ves-proto-message": "ves.io.schema.views.common_waf.HttpHeaderMatcherList", "properties": { "headers": { "type": "array", @@ -5034,12 +4249,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerInlineRateLimiter": { + "common_wafInlineRateLimiter": { "type": "object", "title": "InlineRateLimiter", "x-displayname": "InlineRateLimiter", "x-ves-oneof-field-count_by_choice": "[\"ref_user_id\",\"use_http_lb_user_id\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.InlineRateLimiter", + "x-ves-proto-message": "ves.io.schema.views.common_waf.InlineRateLimiter", "properties": { "ref_user_id": { "description": "Exclusive with [use_http_lb_user_id]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier to be rate limited.", @@ -5079,12 +4294,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerJWKS": { + "common_wafJWKS": { "type": "object", "description": "The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", "title": "jwks", "x-displayname": "JSON Web Key Set (JWKS)", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.JWKS", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWKS", "properties": { "cleartext": { "type": "string", @@ -5094,13 +4309,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerJWTValidation": { + "common_wafJWTValidation": { "type": "object", "description": "JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\nJWTs before they are passed to your API origin. JWT Validation will also stop requests with expired\ntokens or tokens that are not yet valid.", "title": "JWT Validation", "x-displayname": "JWT Validation", "x-ves-oneof-field-jwks_configuration": "[\"jwks_config\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.JWTValidation", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWTValidation", "properties": { "action": { "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -5115,25 +4330,25 @@ var APISwaggerJSON string = `{ "jwks_config": { "description": "Exclusive with []\n The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", "title": "jwks_config", - "$ref": "#/definitions/http_loadbalancerJWKS", + "$ref": "#/definitions/common_wafJWKS", "x-displayname": "JSON Web Key Set (JWKS)" }, "mandatory_claims": { "description": " Configuration for validation of mandatory claims. The system will verify that the claim exists in JWT.\n If the claim does not exist JWT token validation will fail.", "title": "Mandatory Claims", - "$ref": "#/definitions/http_loadbalancerMandatoryClaims", + "$ref": "#/definitions/common_wafMandatoryClaims", "x-displayname": "Mandatory Claims" }, "reserved_claims": { "description": " Configuration required for validation of reserved claims. If some claims are absent in\n the token validation of these claims should be disabled.", "title": "reserved_claims", - "$ref": "#/definitions/http_loadbalancerReservedClaims", + "$ref": "#/definitions/common_wafReservedClaims", "x-displayname": "Reserved Claims Validation" }, "target": { "description": " Define endpoints for which JWT token validation will be performed\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "target", - "$ref": "#/definitions/http_loadbalancerTarget", + "$ref": "#/definitions/common_wafTarget", "x-displayname": "Target", "x-ves-required": "true", "x-ves-validation-rules": { @@ -5143,7 +4358,7 @@ var APISwaggerJSON string = `{ "token_location": { "description": " Define where in the HTTP request the JWT token will be extracted\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "token location", - "$ref": "#/definitions/http_loadbalancerTokenLocation", + "$ref": "#/definitions/common_wafTokenLocation", "x-displayname": "Token Location", "x-ves-required": "true", "x-ves-validation-rules": { @@ -5152,12 +4367,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerMandatoryClaims": { + "common_wafMandatoryClaims": { "type": "object", "description": "Configurable Validation of mandatory Claims.", "title": "MandatoryClaims", "x-displayname": "Mandatory Claims", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.MandatoryClaims", + "x-ves-proto-message": "ves.io.schema.views.common_waf.MandatoryClaims", "properties": { "claim_names": { "type": "array", @@ -5175,54 +4390,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerMobileIdentifier": { - "type": "string", - "description": "x-displayName: \"Mobile Identifier\"\nMobile identifier type\n\n - HEADERS: Headers\n\nx-displayName: \"Headers\"\nHeaders", - "title": "MobileIdentifier", - "enum": [ - "HEADERS" - ], - "default": "HEADERS" - }, - "http_loadbalancerMobileSDKConfigType": { - "type": "object", - "description": "x-displayName: \"Mobile SDK Configuration\"\nMobile SDK configuration.", - "title": "MobileSDKConfigType", - "properties": { - "mobile_identifier": { - "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", - "title": "Mobile Traffic Identifier Type", - "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" - }, - "reload_header_name": { - "type": "string", - "description": "x-displayName: \"Reload Header Name\"\nx-required\nx-example: \"x-oomZEZlK\"\nHeader that is used for SDK configuration sync.", - "title": "Reload header name" - } - } - }, - "http_loadbalancerMobileTrafficIdentifierType": { - "type": "object", - "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", - "title": "MobileTrafficIdentifierType", - "properties": { - "headers": { - "type": "array", - "description": "x-displayName: \"Headers\"\nHeaders that can be used to identify mobile traffic.", - "title": "Mobile headers", - "items": { - "$ref": "#/definitions/policyHeaderMatcherTypeBasic" - } - } - } - }, - "http_loadbalancerOpenApiFallThroughMode": { + "common_wafOpenApiFallThroughMode": { "type": "object", "description": "x-required\nDetermine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)", "title": "Fall Through Mode", "x-displayname": "Fall Through Mode", "x-ves-oneof-field-fall_through_mode_choice": "[\"fall_through_mode_allow\",\"fall_through_mode_custom\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiFallThroughMode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiFallThroughMode", "properties": { "fall_through_mode_allow": { "description": "Exclusive with [fall_through_mode_custom]\n Allow any unprotected end point", @@ -5233,23 +4407,23 @@ var APISwaggerJSON string = `{ "fall_through_mode_custom": { "description": "Exclusive with [fall_through_mode_allow]\n Custom rules for any unprotected end point", "title": "Custom", - "$ref": "#/definitions/http_loadbalancerCustomFallThroughMode", + "$ref": "#/definitions/common_wafCustomFallThroughMode", "x-displayname": "Custom" } } }, - "http_loadbalancerOpenApiValidationAllSpecEndpointsSettings": { + "common_wafOpenApiValidationAllSpecEndpointsSettings": { "type": "object", "description": "Settings for API Inventory validation", "title": "OpenAPI Validation API Inventory Settings", "x-displayname": "API Inventory", "x-ves-oneof-field-oversized_body_choice": "[]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings", "properties": { "fall_through_mode": { "description": " Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Fall Through Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiFallThroughMode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", "x-displayname": "Fall Through Mode", "x-ves-required": "true", "x-ves-validation-rules": { @@ -5259,13 +4433,13 @@ var APISwaggerJSON string = `{ "settings": { "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", "title": "OpenAPI specification validation common settings", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationCommonSettings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", "x-displayname": "Common Settings" }, "validation_mode": { "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the API Inventory endpoints\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Validation Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationMode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", "x-displayname": "Validation Mode", "x-ves-required": "true", "x-ves-validation-rules": { @@ -5274,14 +4448,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationCommonSettings": { + "common_wafOpenApiValidationCommonSettings": { "type": "object", "description": "OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", "title": "OpenAPI specification validation common settings", "x-displayname": "Common Settings", "x-ves-oneof-field-oversized_body_choice": "[\"oversized_body_fail_validation\",\"oversized_body_skip_validation\"]", "x-ves-oneof-field-property_validation_settings_choice": "[\"property_validation_settings_custom\",\"property_validation_settings_default\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationCommonSettings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationCommonSettings", "properties": { "oversized_body_fail_validation": { "description": "Exclusive with [oversized_body_skip_validation]\n Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb)", @@ -5298,7 +4472,7 @@ var APISwaggerJSON string = `{ "property_validation_settings_custom": { "description": "Exclusive with [property_validation_settings_default]\n Use custom settings with Open API specification validation", "title": "Custom settings", - "$ref": "#/definitions/http_loadbalancerValidationPropertySetting", + "$ref": "#/definitions/common_wafValidationPropertySetting", "x-displayname": "Custom" }, "property_validation_settings_default": { @@ -5309,19 +4483,19 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationMode": { + "common_wafOpenApiValidationMode": { "type": "object", "description": "x-required\nValidation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)", "title": "Validation Mode", "x-displayname": "Validation Mode", "x-ves-oneof-field-response_validation_mode_choice": "[\"response_validation_mode_active\",\"skip_response_validation\"]", "x-ves-oneof-field-validation_mode_choice": "[\"skip_validation\",\"validation_mode_active\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationMode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationMode", "properties": { "response_validation_mode_active": { "description": "Exclusive with [skip_response_validation]\n Enforce OpenAPI validation processing for this event", "title": "Validate", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationModeActiveResponse", + "$ref": "#/definitions/common_wafOpenApiValidationModeActiveResponse", "x-displayname": "Validate" }, "skip_response_validation": { @@ -5339,18 +4513,18 @@ var APISwaggerJSON string = `{ "validation_mode_active": { "description": "Exclusive with [skip_validation]\n Enforce OpenAPI validation processing for this event", "title": "Validate", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationModeActive", + "$ref": "#/definitions/common_wafOpenApiValidationModeActive", "x-displayname": "Validate" } } }, - "http_loadbalancerOpenApiValidationModeActive": { + "common_wafOpenApiValidationModeActive": { "type": "object", "description": "Validation mode properties of request", "title": "Open API Validation Mode Active For Request", "x-displayname": "Open API Validation Mode Active", "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActive", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActive", "properties": { "enforcement_block": { "description": "Exclusive with [enforcement_report]\n Block the request, trigger an API security event", @@ -5384,13 +4558,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationModeActiveResponse": { + "common_wafOpenApiValidationModeActiveResponse": { "type": "object", "description": "Validation mode properties of response", "title": "Open API Validation Mode Active For Response", "x-displayname": "Open API Validation Mode Active", "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActiveResponse", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse", "properties": { "enforcement_block": { "description": "Exclusive with [enforcement_report]\n Block the response, trigger an API security event", @@ -5424,14 +4598,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationRule": { + "common_wafOpenApiValidationRule": { "type": "object", "description": "OpenAPI Validation Rule for a specific endpoint, base-path, or API group", "title": "OpenAPI Validation Rule", "x-displayname": "OpenAPI Validation Rule", "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationRule", "properties": { "any_domain": { "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", @@ -5442,7 +4616,7 @@ var APISwaggerJSON string = `{ "api_endpoint": { "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", "title": "API Endpoint", - "$ref": "#/definitions/http_loadbalancerApiEndpointDetails", + "$ref": "#/definitions/common_wafApiEndpointDetails", "x-displayname": "API Endpoint" }, "api_group": { @@ -5492,7 +4666,7 @@ var APISwaggerJSON string = `{ "validation_mode": { "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Validation Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationMode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", "x-displayname": "Validation Mode", "x-ves-required": "true", "x-ves-validation-rules": { @@ -5501,733 +4675,703 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOriginServerSubsetRuleListType": { + "common_wafRateLimitConfigType": { "type": "object", - "description": "List of Origin Pools", - "title": "OriginServerSubsetRuleListType", - "x-displayname": "Origin Server Subset Rule List Type", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType", + "title": "RateLimitConfigType", + "x-displayname": "RateLimitConfigType", + "x-ves-oneof-field-ip_allowed_list_choice": "[\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", + "x-ves-oneof-field-policy_choice": "[\"no_policies\",\"policies\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.RateLimitConfigType", "properties": { - "origin_server_subset_rules": { - "type": "array", - "description": " Origin Server Subset Rules allow users to define match condition on Client (IP address, ASN, Country), IP Reputation, Regional Edge names,\n Request for subset selection of origin servers. Origin Server Subset is a sequential engine where rules are evaluated one after the other.\n It's important to define the correct order for Origin Server Subset to get the intended result, rules are evaluated from top to bottom in the list.\n When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", - "title": "Origin Server Subset", - "maxItems": 64, - "items": { - "$ref": "#/definitions/policyOriginServerSubsetRule" - }, - "x-displayname": "Origin Server Subset Rules", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true" - } + "custom_ip_allowed_list": { + "description": "Exclusive with [ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", + "title": "Custom IP list", + "$ref": "#/definitions/common_wafCustomIpAllowedList", + "x-displayname": "IP Allowed List using IP Prefix Set(s)" + }, + "ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", + "title": "IP Allowed List", + "$ref": "#/definitions/viewsPrefixStringListType", + "x-displayname": "IP Allowed List" + }, + "no_ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No IP Allowed" + }, + "no_policies": { + "description": "Exclusive with [policies]\n Do not apply additional rate limiter policies.", + "title": "no_policies", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No Rate Limiter Policies" + }, + "policies": { + "description": "Exclusive with [no_policies]\n Apply rate limiter policies to requests that are not from the IP Allowed List.\n The policies are evaluated sequentially until a matching rule is identified. If there's a match, the rate limiting behavior is modified according\n to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.", + "title": "policies", + "$ref": "#/definitions/rate_limiter_policyPolicyList", + "x-displayname": "Rate Limiter Policies" + }, + "rate_limiter": { + "description": " Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.", + "title": "rate_limiter", + "$ref": "#/definitions/rate_limiterRateLimitValue", + "x-displayname": "Request Rate Limiter" } } }, - "http_loadbalancerProtectedAppEndpointType": { + "common_wafReservedClaims": { "type": "object", - "description": "x-displayName: \"Protected App Endpoint\"\nProtected Application Endpoint.", - "title": "ProtectedAppEndpointType", + "description": "Configurable Validation of reserved Claims", + "title": "reserved claims", + "x-displayname": "Reserved claims configuration", + "x-ves-oneof-field-audience_validation": "[\"audience\",\"audience_disable\"]", + "x-ves-oneof-field-issuer_validation": "[\"issuer\",\"issuer_disable\"]", + "x-ves-oneof-field-validate_period": "[\"validate_period_disable\",\"validate_period_enable\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ReservedClaims", "properties": { - "any_domain": { - "description": "x-displayName: \"Any Domain\"\nAny Domain", - "title": "Any domain", - "$ref": "#/definitions/schemaEmpty" - }, - "domain": { - "description": "x-displayName: \"Domain\"\nSelect Domain matcher", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType" + "audience": { + "description": "Exclusive with [audience_disable]\n", + "title": "audience", + "$ref": "#/definitions/common_wafAudiences", + "x-displayname": "Exact Match" }, - "flow_label": { - "description": "x-displayName: \"Specify endpoint label category\"", - "title": "flow_label", - "$ref": "#/definitions/schemaBotDefenseFlowLabelCategoriesChoiceType" + "audience_disable": { + "description": "Exclusive with [audience]\n", + "title": "audience_disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" }, - "http_methods": { - "type": "array", - "description": "x-displayName: \"HTTP Methods\"\nx-required\nList of HTTP methods.", - "title": "HTTP Methods", - "items": { - "$ref": "#/definitions/schemaBotHttpMethod" - } + "issuer": { + "type": "string", + "description": "Exclusive with [issuer_disable]\n", + "title": "issuer", + "x-displayname": "Exact Match" }, - "metadata": { - "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType" + "issuer_disable": { + "description": "Exclusive with [issuer]\n", + "title": "issuer_disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" }, - "mobile_client": { - "description": "x-displayName: \"Mobile Traffic\"\nMobile traffic channel.", - "title": "MobileTraffic", - "$ref": "#/definitions/schemaEmpty" + "validate_period_disable": { + "description": "Exclusive with [validate_period_enable]\n", + "title": "validate_period_disable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" }, - "path": { - "description": "x-displayName: \"Path\"\nx-required\nx-example: \"/id/1\"\nx-example: \"/id/*\"\nx-example: \"*login\"\nAccepts wildcards * to match multiple characters or ? to match a single character", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType" + "validate_period_enable": { + "description": "Exclusive with [validate_period_disable]\n", + "title": "validate_period_enable", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" + } + } + }, + "common_wafServerUrlRule": { + "type": "object", + "title": "ServerUrlRule", + "x-displayname": "Server URLs and API Groups", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServerUrlRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" }, - "query": { - "type": "array", - "description": "x-displayName: \"Query\"\nx-example: \"(^|[^\\\\w])action=login([^\\\\w]|$)\"\nEnter a regular expression or exact value to match your query parameters of interest", - "title": "Query", - "items": { - "$ref": "#/definitions/http_loadbalancerQuery" + "api_group": { + "type": "string", + "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" } }, - "request_body": { - "type": "array", - "description": "x-displayName: \"Request Body\"\nRequest Body", - "title": "Request Body", - "items": { - "$ref": "#/definitions/http_loadbalancerRequestBody" + "base_path": { + "type": "string", + "description": " Prefix of the request path.\n\nExample: - \"/\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" } }, - "undefined_flow_label": { - "description": "x-displayName: \"Undefined\"", - "title": "undefined", - "$ref": "#/definitions/schemaEmpty" + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" }, - "web_client": { - "description": "x-displayName: \"Web Traffic\"\nWeb traffic channel.", - "title": "WebTraffic", - "$ref": "#/definitions/schemaEmpty" + "inline_rate_limiter": { + "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", + "title": "Inline Rate Limiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", + "x-displayname": "Specific Values" }, - "web_mobile_client": { - "description": "x-displayName: \"Web and Mobile Traffic\"\nWeb and mobile traffic channel.", - "title": "WebMobileTraffic", - "$ref": "#/definitions/http_loadbalancerWebMobileTrafficType" + "ref_rate_limiter": { + "description": "Exclusive with [inline_rate_limiter]\n Use external rate limiter.", + "title": "External Rate Limiter", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "External Rate Limiter" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } } } }, - "http_loadbalancerProxyTypeHttp": { + "common_wafServicePolicyList": { "type": "object", - "description": "Choice for selecting HTTP proxy", - "title": "HTTP Choice", - "x-displayname": "HTTP Choice", - "x-ves-displayorder": "1,3", - "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp", + "description": "List of service policies.", + "title": "service policy list", + "x-displayname": "Service Policy List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServicePolicyList", "properties": { - "dns_volterra_managed": { - "type": "boolean", - "description": " DNS records for domains will be managed automatically by F5 Distributed Cloud.\n As a prerequisite, the domain must be delegated to F5 Distributed Cloud using Delegated domain feature\n or a DNS CNAME record should be created in your DNS provider's portal.", - "title": "Manage DNS Domain", - "format": "boolean", - "x-displayname": "Automatically Manage DNS Records" - }, - "port": { - "type": "integer", - "description": "Exclusive with [port_ranges]\n HTTP port to Listen.\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", - "title": "HTTP port to listen", - "format": "int64", - "x-displayname": "HTTP Listen Port", - "x-ves-example": "80", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "65535" - } - }, - "port_ranges": { - "type": "string", - "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", - "title": "Port_ranges", - "minLength": 1, - "maxLength": 512, - "x-displayname": "Port Ranges", - "x-ves-example": "80,443,8080-8191,9080", + "policies": { + "type": "array", + "description": " Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\n correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result.\n For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\n current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\n If all policies are evaluated and none match, then the request will be denied by default.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "policies", + "minItems": 1, + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Policies", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" } } } }, - "http_loadbalancerProxyTypeHttps": { + "common_wafSimpleClientSrcRule": { "type": "object", - "description": "Choice for selecting HTTP proxy with bring your own certificates", - "title": "BYOC HTTPS Choice", - "x-displayname": "BYOC HTTPS Choice", - "x-ves-displayorder": "1,2,24,3,4,9,16,19,20", - "x-ves-oneof-field-default_lb_choice": "[\"default_loadbalancer\",\"non_default_loadbalancer\"]", - "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", - "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", - "x-ves-oneof-field-server_header_choice": "[\"append_server_name\",\"default_header\",\"pass_through\",\"server_name\"]", - "x-ves-oneof-field-tls_certificates_choice": "[\"tls_cert_params\",\"tls_parameters\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttps", + "description": "Simple client source rule specifies the sources to be blocked or trusted (skip WAF)", + "title": "SimpleClientSrcRule", + "x-displayname": "Client Rule", + "x-ves-oneof-field-action_choice": "[\"bot_skip_processing\",\"skip_processing\",\"waf_skip_processing\"]", + "x-ves-oneof-field-client_source_choice": "[\"as_number\",\"http_header\",\"ip_prefix\",\"user_identifier\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.SimpleClientSrcRule", "properties": { - "add_hsts": { - "type": "boolean", - "description": " Add HTTP Strict-Transport-Security response header", - "title": "Add HSTS", - "format": "boolean", - "x-displayname": "Add HSTS Header" - }, - "append_server_name": { - "type": "string", - "description": "Exclusive with [default_header pass_through server_name]\n Define the header value for the header name “server”.\n If header value is already present, it is not overwritten and passed as-is.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", - "title": "append_server_name", - "maxLength": 8096, - "x-displayname": "Append header value", + "actions": { + "type": "array", + "description": " Actions that should be taken when client identifier matches the rule\n\nValidation Rules:\n ves.io.schema.rules.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 10\n ves.io.schema.rules.repeated.unique: true\n", + "title": "actions", + "maxItems": 10, + "items": { + "$ref": "#/definitions/common_wafClientSrcRuleAction" + }, + "x-displayname": "Actions", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "8096" + "ves.io.schema.rules.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "10", + "ves.io.schema.rules.repeated.unique": "true" } }, - "connection_idle_timeout": { + "as_number": { "type": "integer", - "description": " The idle timeout for downstream connections. The idle timeout is defined as the\n period in which there are no active requests. When the idle timeout is reached the connection\n will be closed. Note that request based timeouts mean that HTTP/2 PINGs will not keep the connection alive.\n This is specified in milliseconds. The default value is 2 minutes.\n\nExample: - \"60000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 600000\n", - "title": "Connection Idle Timeout", + "description": "Exclusive with [http_header ip_prefix user_identifier]\n RFC 6793 defined 4-byte AS number\n\nExample: - \"4683\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 401308\n", + "title": "as number", "format": "int64", - "x-displayname": "Connection Idle Timeout", - "x-ves-example": "60000", + "x-displayname": "AS Number", + "x-ves-example": "4683", "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "600000" + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "401308" } }, - "default_header": { - "description": "Exclusive with [append_server_name pass_through server_name]\n Response header name is “server” and value is “volt-adc”", - "title": "default_header", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Default" - }, - "default_loadbalancer": { - "description": "Exclusive with [non_default_loadbalancer]\n", - "title": "Default load balancer", + "bot_skip_processing": { + "description": "Exclusive with [skip_processing waf_skip_processing]\n Skip Bot Defense processing for clients matching this rule.", + "title": "Skip Bot Processing", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Yes" + "x-displayname": "Skip Bot Defense Processing" }, - "disable_path_normalize": { - "description": "Exclusive with [enable_path_normalize]\n", - "title": "Disable Path normalization", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.timestamp.within.seconds": "31536000" + } }, - "enable_path_normalize": { - "description": "Exclusive with [disable_path_normalize]\n", - "title": "Enable Path normalization", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable" - }, - "http_redirect": { - "type": "boolean", - "description": " Redirect HTTP traffic to HTTPS", - "title": "HTTP Redirect", - "format": "boolean", - "x-displayname": "HTTP Redirect to HTTPS" - }, - "non_default_loadbalancer": { - "description": "Exclusive with [default_loadbalancer]\n", - "title": "Not a default load balancer", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "No" - }, - "pass_through": { - "description": "Exclusive with [append_server_name default_header server_name]\n Pass existing server header as is. If server header is absent, a new header is not appended.", - "title": "pass_through", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Do not modify" + "http_header": { + "description": "Exclusive with [as_number ip_prefix user_identifier]\n Request header name and value pairs", + "title": "HTTP Header", + "$ref": "#/definitions/common_wafHttpHeaderMatcherList", + "x-displayname": "HTTP Headers" }, - "port": { - "type": "integer", - "description": "Exclusive with [port_ranges]\n HTTPS port to Listen.\n\nExample: - \"443\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", - "title": "HTTPS port to listen", - "format": "int64", - "x-displayname": "HTTPS Port", - "x-ves-example": "443", + "ip_prefix": { + "type": "string", + "description": "Exclusive with [as_number http_header user_identifier]\n IPv4 prefix string.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4_prefix: true\n", + "title": "ip prefix", + "x-displayname": "IP Prefix", + "x-ves-example": "192.168.20.0/24", "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "65535" + "ves.io.schema.rules.string.ipv4_prefix": "true" } }, - "port_ranges": { - "type": "string", - "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", - "title": "Port_ranges", - "minLength": 1, - "maxLength": 512, - "x-displayname": "Port Ranges", - "x-ves-example": "80,443,8080-8191,9080", + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true" + "ves.io.schema.rules.message.required": "true" } }, - "server_name": { + "skip_processing": { + "description": "Exclusive with [bot_skip_processing waf_skip_processing]\n Skip both WAF and Bot Defense processing for clients matching this rule.", + "title": "Skip Both", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip Both" + }, + "user_identifier": { "type": "string", - "description": "Exclusive with [append_server_name default_header pass_through]\n Define the header value for the header name “server”.\n This will overwrite existing values, if any, for the server header.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", - "title": "server_name", - "maxLength": 8096, - "x-displayname": "Modify header value", + "description": "Exclusive with [as_number http_header ip_prefix]\n Identify user based on user identifier. User identifier value needs to be copied from security event.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "user identifier", + "maxLength": 256, + "x-displayname": "User Identifier", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "8096" + "ves.io.schema.rules.string.max_len": "256" } }, - "tls_cert_params": { - "description": "Exclusive with [tls_parameters]\n Select/Add one or more TLS Certificate objects to associate with this Load Balancer", - "title": "TLS Certificates", - "$ref": "#/definitions/viewsDownstreamTLSCertsParams", - "x-displayname": "TLS Certificates" - }, - "tls_parameters": { - "description": "Exclusive with [tls_cert_params]\n Upload a TLS certificate covering all domain names for this Load Balancer", - "title": "Inline TLS Parameters (legacy)", - "$ref": "#/definitions/schemaviewsDownstreamTlsParamsType", - "x-displayname": "Inline Certificate (legacy)" + "waf_skip_processing": { + "description": "Exclusive with [bot_skip_processing skip_processing]\n Skip WAF processing for clients matching this rule.", + "title": "Skip WAF Processing", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Skip WAF Processing" } } }, - "http_loadbalancerProxyTypeHttpsAutoCerts": { + "common_wafTarget": { "type": "object", - "description": "Choice for selecting HTTP proxy with bring your own certificates", - "title": "HTTPS with Auto Certs Choice", - "x-displayname": "HTTPS with Auto Certs Choice", - "x-ves-displayorder": "1,2,25,3,4,7,12,19,22,23", - "x-ves-oneof-field-default_lb_choice": "[\"default_loadbalancer\",\"non_default_loadbalancer\"]", - "x-ves-oneof-field-mtls_choice": "[\"no_mtls\",\"use_mtls\"]", - "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", - "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", - "x-ves-oneof-field-server_header_choice": "[\"append_server_name\",\"default_header\",\"pass_through\",\"server_name\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts", + "description": "Define endpoints for which JWT token validation will be performed", + "title": "target", + "x-displayname": "Target", + "x-ves-oneof-field-target": "[\"all_endpoint\",\"api_groups\",\"base_paths\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Target", "properties": { - "add_hsts": { - "type": "boolean", - "description": " Add HTTP Strict-Transport-Security response header", - "title": "Add HSTS", - "format": "boolean", - "x-displayname": "Add HSTS Header" + "all_endpoint": { + "description": "Exclusive with [api_groups base_paths]\n Validation will be performed for all requests on this LB", + "title": "all_endpoint", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "API Inventory" }, - "append_server_name": { - "type": "string", - "description": "Exclusive with [default_header pass_through server_name]\n Define the header value for the header name “server”.\n If header value is already present, it is not overwritten and passed as-is.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", - "title": "append_server_name", - "maxLength": 8096, - "x-displayname": "Append header value", + "api_groups": { + "description": "Exclusive with [all_endpoint base_paths]\n Validation will be performed for the endpoints mentioned in the API Groups", + "title": "api group", + "$ref": "#/definitions/common_wafAPIGroups", + "x-displayname": "API Groups" + }, + "base_paths": { + "description": "Exclusive with [all_endpoint api_groups]\n Validation will be performed for selected path prefixes", + "title": "base paths", + "$ref": "#/definitions/common_wafBasePathsType", + "x-displayname": "Base Paths" + } + } + }, + "common_wafTokenLocation": { + "type": "object", + "description": "Location of JWT in Http request", + "title": "token location", + "x-displayname": "Token Location", + "x-ves-oneof-field-token_location": "[\"bearer_token\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.TokenLocation", + "properties": { + "bearer_token": { + "description": "Exclusive with []\n Token is found in Authorization HTTP header with Bearer authentication scheme", + "title": "bearer token", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Bearer Token" + } + } + }, + "common_wafValidateApiBySpecRule": { + "type": "object", + "description": "Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other api-endpoint not listed will act according to \"Fall Through Mode\".", + "title": "ValidateApiBySpecRule", + "x-displayname": "Custom List", + "x-ves-oneof-field-oversized_body_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidateApiBySpecRule", + "properties": { + "fall_through_mode": { + "description": " Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Fall Through Mode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", + "x-displayname": "Fall Through Mode", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "8096" + "ves.io.schema.rules.message.required": "true" } }, - "connection_idle_timeout": { - "type": "integer", - "description": " The idle timeout for downstream connections. The idle timeout is defined as the\n period in which there are no active requests. When the idle timeout is reached the connection\n will be closed. Note that request based timeouts mean that HTTP/2 PINGs will not keep the connection alive.\n This is specified in milliseconds. The default value is 2 minutes.\n\nExample: - \"60000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 600000\n", - "title": "Connection Idle Timeout", - "format": "int64", - "x-displayname": "Connection Idle Timeout", - "x-ves-example": "60000", + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Validation List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafOpenApiValidationRule" + }, + "x-displayname": "Validation List", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "600000" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" } }, - "default_header": { - "description": "Exclusive with [append_server_name pass_through server_name]\n Response header name is “server” and value is “volt-adc”", - "title": "default_header", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Default" + "settings": { + "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", + "x-displayname": "OpenAPI specification validation settings" + } + } + }, + "common_wafValidationPropertySetting": { + "type": "object", + "description": "Custom property validation settings", + "title": "Validation Property settings", + "x-displayname": "Validation Property Settings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationPropertySetting", + "properties": { + "queryParameters": { + "description": " Custom settings for query parameters validation", + "title": "Query parameters validation settings", + "$ref": "#/definitions/common_wafValidationSettingForQueryParameters", + "x-displayname": "Validation Settings For Query Parameters" + } + } + }, + "common_wafValidationSettingForHeaders": { + "type": "object", + "description": "x-displayName: \"Validation Settings For Headers\"\nCustom settings for headers validation", + "title": "Validation Settings For Headers", + "properties": { + "allow_additional_headers": { + "description": "x-displayName: \"Allow\"\nAllow extra headers (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/schemaEmpty" }, - "default_loadbalancer": { - "description": "Exclusive with [non_default_loadbalancer]\n For traffic terminating at this load balancer, the certificate associated with the first configured domain will be used for TLS termination.", - "title": "Default load balancer", + "disallow_additional_headers": { + "description": "x-displayName: \"Disallow\"\nDisallow extra headers (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/schemaEmpty" + } + } + }, + "common_wafValidationSettingForQueryParameters": { + "type": "object", + "description": "Custom settings for query parameters validation", + "title": "Validation Settings For Query Parameters", + "x-displayname": "Validation Settings For Query Parameters", + "x-ves-oneof-field-additional_parameters_choice": "[\"allow_additional_parameters\",\"disallow_additional_parameters\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationSettingForQueryParameters", + "properties": { + "allow_additional_parameters": { + "description": "Exclusive with [disallow_additional_parameters]\n Allow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Allow", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Yes" + "x-displayname": "Allow" }, - "disable_path_normalize": { - "description": "Exclusive with [enable_path_normalize]\n", - "title": "Disable Path normalization", + "disallow_additional_parameters": { + "description": "Exclusive with [allow_additional_parameters]\n Disallow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Custom settings", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "x-displayname": "Disallow" + } + } + }, + "crudapiObjectCreateReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" }, - "enable_path_normalize": { - "description": "Exclusive with [disable_path_normalize]\n", - "title": "Enable Path normalization", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable" + "spec": { + "$ref": "#/definitions/viewshttp_loadbalancerSpecType" }, - "http_redirect": { - "type": "boolean", - "description": " Redirect HTTP traffic to HTTPS", - "title": "HTTP Redirect", - "format": "boolean", - "x-displayname": "HTTP Redirect to HTTPS" + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectCreateRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectCreateRsp", + "properties": { + "err": { + "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" }, - "no_mtls": { - "description": "Exclusive with [use_mtls]\n", - "title": "No mTLS", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" }, - "non_default_loadbalancer": { - "description": "Exclusive with [default_loadbalancer]\n", - "title": "Not a default load balancer", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "No" + "object_uid": { + "type": "string" }, - "pass_through": { - "description": "Exclusive with [append_server_name default_header server_name]\n Pass existing server header as is. If server header is absent, a new header is not appended.", - "title": "pass_through", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Do not modify" + "spec": { + "$ref": "#/definitions/viewshttp_loadbalancerSpecType" }, - "port": { - "type": "integer", - "description": "Exclusive with [port_ranges]\n HTTPS port to Listen.\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", - "title": "HTTPS port to listen", - "format": "int64", - "x-displayname": "HTTPS Listen Port", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "65535" + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectDeleteRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectDeleteRsp", + "properties": { + "err": { + "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" + } + } + }, + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" } }, - "port_ranges": { - "type": "string", - "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", - "title": "Port_ranges", - "minLength": 1, - "maxLength": 512, - "x-displayname": "Port Ranges", - "x-ves-example": "80,443,8080-8191,9080", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true" - } + "err": { + "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" }, - "server_name": { - "type": "string", - "description": "Exclusive with [append_server_name default_header pass_through]\n Define the header value for the header name “server”.\n This will overwrite existing values, if any, for the server header.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", - "title": "server_name", - "maxLength": 8096, - "x-displayname": "Modify header value", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "8096" - } + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" }, - "tls_config": { - "description": " Configuration of TLS settings such as min/max TLS version and ciphersuites", - "title": "TLS Config", - "$ref": "#/definitions/viewsTlsConfig", - "x-displayname": "TLS" + "resource_version": { + "type": "string" }, - "use_mtls": { - "description": "Exclusive with [no_mtls]\n", - "title": "Use mTLS", - "$ref": "#/definitions/viewsDownstreamTlsValidationContext", - "x-displayname": "Enable" + "spec": { + "$ref": "#/definitions/viewshttp_loadbalancerSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/http_loadbalancerStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" } } }, - "http_loadbalancerQuery": { + "crudapiObjectListRsp": { "type": "object", - "description": "x-displayName: \"Query Parameter Matcher\"\nQuery Parameter Matcher", - "title": "Query", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectListRsp", "properties": { - "check_presence": { - "description": "x-displayName: \"Presence\"\nParameter name taken which is exist in the query parameter", - "title": "check_presence", - "$ref": "#/definitions/schemaEmpty" + "err": { + "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" }, - "exact_value": { - "type": "string", - "description": "x-displayName: \"Exact Value\"\nx-example: \"login\"\nExact query value to match", - "title": "exact value" + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } }, - "name": { - "type": "string", - "description": "x-displayName: \"Query Parameter Name\"\nx-example: \"id\"\nEnter query parameter name", - "title": "Name" + "metadata": { + "$ref": "#/definitions/schemaListMetaType" }, - "regex_value": { + "next_page": { "type": "string", - "description": "x-displayName: \"Regex Value\"\nx-example: \"([a-z]([-a-z0-9]*[a-z0-9])?)$'\"\nRegular expression of query match (e.g. the value .* will match on all query)", - "title": "regex value" + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } } } }, - "http_loadbalancerRateLimitConfigType": { + "crudapiObjectListRspItem": { "type": "object", - "title": "RateLimitConfigType", - "x-displayname": "RateLimitConfigType", - "x-ves-oneof-field-ip_allowed_list_choice": "[\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", - "x-ves-oneof-field-policy_choice": "[\"no_policies\",\"policies\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RateLimitConfigType", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectListRspItem", "properties": { - "custom_ip_allowed_list": { - "description": "Exclusive with [ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", - "title": "Custom IP list", - "$ref": "#/definitions/http_loadbalancerCustomIpAllowedList", - "x-displayname": "IP Allowed List using IP Prefix Set(s)" + "labels": { + "type": "object" }, - "ip_allowed_list": { - "description": "Exclusive with [custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", - "title": "IP Allowed List", - "$ref": "#/definitions/viewsPrefixStringListType", - "x-displayname": "IP Allowed List" + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" }, - "no_ip_allowed_list": { - "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", - "title": "No IP Allowed List", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "No IP Allowed" + "name": { + "type": "string" }, - "no_policies": { - "description": "Exclusive with [policies]\n Do not apply additional rate limiter policies.", - "title": "no_policies", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "No Rate Limiter Policies" + "namespace": { + "type": "string" }, - "policies": { - "description": "Exclusive with [no_policies]\n Apply rate limiter policies to requests that are not from the IP Allowed List.\n The policies are evaluated sequentially until a matching rule is identified. If there's a match, the rate limiting behavior is modified according\n to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.", - "title": "policies", - "$ref": "#/definitions/rate_limiter_policyPolicyList", - "x-displayname": "Rate Limiter Policies" + "object_uid": { + "type": "string" }, - "rate_limiter": { - "description": " Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.", - "title": "rate_limiter", - "$ref": "#/definitions/rate_limiterRateLimitValue", - "x-displayname": "Request Rate Limiter" + "spec": { + "$ref": "#/definitions/viewshttp_loadbalancerSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/http_loadbalancerStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" } } }, - "http_loadbalancerRequestBody": { + "crudapiObjectReplaceReq": { "type": "object", - "description": "x-displayName: \"Request Body Parameter Matcher\"\nRequest Body Parameter Matcher", - "title": "RequestBody", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceReq", "properties": { - "exact_value": { - "type": "string", - "description": "x-displayName: \"Exact Value\"\nx-example: \"login\"\nExact query value to match", - "title": "exact value" + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" }, - "name": { - "type": "string", - "description": "x-displayName: \"Request Body Parameter Name\"\nx-example: \"id\"\nEnter request body parameter name", - "title": "Name" + "object_uid": { + "type": "string" }, - "regex_value": { - "type": "string", - "description": "x-displayName: \"Regex Value\"\nx-example: \"([a-z]([-a-z0-9]*[a-z0-9])?)$'\"\nRegular expression of query match (e.g. the value .* will match on all query)", - "title": "regex value" + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/viewshttp_loadbalancerSpecType" } } }, - "http_loadbalancerReservedClaims": { + "crudapiObjectReplaceRsp": { "type": "object", - "description": "Configurable Validation of reserved Claims", - "title": "reserved claims", - "x-displayname": "Reserved claims configuration", - "x-ves-oneof-field-audience_validation": "[\"audience\",\"audience_disable\"]", - "x-ves-oneof-field-issuer_validation": "[\"issuer\",\"issuer_disable\"]", - "x-ves-oneof-field-validate_period": "[\"validate_period_disable\",\"validate_period_enable\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ReservedClaims", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.crudapi.ObjectReplaceRsp", "properties": { - "audience": { - "description": "Exclusive with [audience_disable]\n", - "title": "audience", - "$ref": "#/definitions/http_loadbalancerAudiences", - "x-displayname": "Exact Match" - }, - "audience_disable": { - "description": "Exclusive with [audience]\n", - "title": "audience_disable", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" - }, - "issuer": { - "type": "string", - "description": "Exclusive with [issuer_disable]\n", - "title": "issuer", - "x-displayname": "Exact Match" + "err": { + "$ref": "#/definitions/http_loadbalancercrudapiErrorCode" }, - "issuer_disable": { - "description": "Exclusive with [issuer]\n", - "title": "issuer_disable", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" }, - "validate_period_disable": { - "description": "Exclusive with [validate_period_enable]\n", - "title": "validate_period_disable", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "spec": { + "$ref": "#/definitions/viewshttp_loadbalancerSpecType" }, - "validate_period_enable": { - "description": "Exclusive with [validate_period_disable]\n", - "title": "validate_period_enable", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable" + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" } } }, - "http_loadbalancerRouteSimpleAdvancedOptions": { + "http_loadbalancerAdvancedOptionsType": { "type": "object", - "description": "Configure advanced options for route like path rewrite, hash policy, etc.", - "title": "Advanced Route Options", - "x-displayname": "Advanced Route Options", - "x-ves-oneof-field-bot_defense_javascript_injection_choice": "[\"bot_defense_javascript_injection\",\"inherited_bot_defense_javascript_injection\"]", - "x-ves-oneof-field-buffer_choice": "[\"buffer_policy\",\"common_buffering\"]", - "x-ves-oneof-field-cluster_retract_choice": "[\"do_not_retract_cluster\",\"retract_cluster\"]", - "x-ves-oneof-field-hash_policy_choice": "[\"common_hash_policy\",\"specific_hash_policy\"]", - "x-ves-oneof-field-mirroring_choice": "[\"disable_mirroring\",\"mirror_policy\"]", - "x-ves-oneof-field-retry_policy_choice": "[\"default_retry_policy\",\"no_retry_policy\",\"retry_policy\"]", - "x-ves-oneof-field-rewrite_choice": "[\"disable_prefix_rewrite\",\"prefix_rewrite\"]", - "x-ves-oneof-field-spdy_choice": "[\"disable_spdy\",\"enable_spdy\"]", - "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\",\"inherited_waf\"]", - "x-ves-oneof-field-websocket_choice": "[\"disable_web_socket_config\",\"web_socket_config\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions", + "description": "This defines various options to define a route", + "title": "Advanced options", + "x-displayname": "Advanced Options", + "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", + "x-ves-oneof-field-strict_sni_host_header_check_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType", "properties": { - "app_firewall": { - "description": "Exclusive with [disable_waf inherited_waf]\n Reference to App Firewall configuration object", - "title": "app_firewall", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "App Firewall" - }, - "bot_defense_javascript_injection": { - "description": "Exclusive with [inherited_bot_defense_javascript_injection]\n Configuration for Bot Defense JavaScript Injection", - "title": "Bot Defense JavaScript Injection for inline bot defense deployments", - "$ref": "#/definitions/routeBotDefenseJavascriptInjectionType", - "x-displayname": "Enable" - }, "buffer_policy": { - "description": "Exclusive with [common_buffering]\n Buffering configuration for requests\n Some upstream applications are not capable of handling streamed data. This config\n enables buffering the entire request before sending to upstream application. We can\n specify the maximum buffer size and buffer interval with this config.\n Route level buffer configuration overrides any configuration at VirtualHost level.", - "title": "Route Specific Buffering Configuration", + "description": " Some upstream applications are not capable of handling streamed data and high network latency.\n This config enables buffering the entire request before sending to upstream application. We can\n specify the maximum buffer size and buffer interval with this config.", + "title": "Buffer configuration for requests", "$ref": "#/definitions/schemaBufferConfigType", - "x-displayname": "Route Specific Buffering Configuration" - }, - "common_buffering": { - "description": "Exclusive with [buffer_policy]\n Use common buffering configuration", - "title": "Common buffering Configuration", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Common buffering Configuration" - }, - "common_hash_policy": { - "description": "Exclusive with [specific_hash_policy]\n Use load balancer hash policy for this route", - "title": "Common Hash Policy", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Load Balancer Hash Policy" - }, - "cors_policy": { - "description": " Cross-Origin Resource Sharing requests configuration\n\n CORS is a mechanism that uses additional HTTP headers to tell a browser to let\n a web application running at one origin (domain) have permission to access selected\n resources from a server at a different origin", - "title": "cors_policy", - "$ref": "#/definitions/schemaCorsPolicy", - "x-displayname": "CORS Policy" - }, - "csrf_policy": { - "description": " Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf.\n\n The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host.\n\n 1. The origin that caused the user agent to issue the request (source origin).\n 2. The origin that the request is going to (target origin).\n When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid.\n Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).", - "title": "csrf_policy", - "$ref": "#/definitions/schemaCsrfPolicy", - "x-displayname": "CSRF Policy" - }, - "default_retry_policy": { - "description": "Exclusive with [no_retry_policy retry_policy]\n Use system default retry policy", - "title": "Use Default Retry Policy", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Default Retry Policy" - }, - "disable_location_add": { - "type": "boolean", - "description": " disables append of x-volterra-location = \u003cre-site-name\u003e at route level, if it is configured at\n virtual-host level. This configuration is ignored on CE sites.\n\nExample: - true-", - "title": "disable_location_add", - "format": "boolean", - "x-displayname": "Disable Location Addition" - }, - "disable_mirroring": { - "description": "Exclusive with [mirror_policy]\n Disable Mirroring of request", - "title": "Disable Mirroring", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable Mirroring" - }, - "disable_prefix_rewrite": { - "description": "Exclusive with [prefix_rewrite]\n Do not rewrite any path portion.", - "title": "Disable Rewrite", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable Rewrite" - }, - "disable_spdy": { - "description": "Exclusive with [enable_spdy]\n SPDY upgrade is disabled", - "title": "Disable SPDY", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable SPDY" - }, - "disable_waf": { - "description": "Exclusive with [app_firewall inherited_waf]\n App Firewall configuration that is configured in the Load Balancer will not be enforced on this route", - "title": "disable_app_firewall", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable App Firewall" - }, - "disable_web_socket_config": { - "description": "Exclusive with [web_socket_config]\n Websocket upgrade is disabled", - "title": "Disable Websocket", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable Websocket" - }, - "do_not_retract_cluster": { - "description": "Exclusive with [retract_cluster]\n When this option is configured, cluster with no healthy\n endpoints is not retracted from route having weighted cluster\n configuration.", - "title": "do_not_retract_cluster", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable cluster retraction" + "x-displayname": "Buffer Policy" }, - "enable_spdy": { - "description": "Exclusive with [disable_spdy]\n SPDY upgrade is enabled", - "title": "Enable SPDY", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable SPDY" + "compression_params": { + "description": " Enables load balancer to compress dispatched data from an upstream service upon client request.\n Only GZIP compression is supported", + "title": "Compression configuration", + "$ref": "#/definitions/virtual_hostCompressionType", + "x-displayname": "Compression Parameters" }, - "endpoint_subsets": { + "custom_errors": { "type": "object", - "description": " Upstream origin pool may be configured to divide its origin servers into subsets based on metadata\n attached to the origin servers. Routes may then specify the metadata that a endpoint must match in\n order to be selected by the load balancer\n\n For origin servers which are discovered in K8S or Consul cluster, the label of the service is merged with\n endpoint's labels. In case of Consul, the label is derived from the \"Tag\" field.\n For labels that are common between configured endpoint and discovered service, labels from discovered service\n takes precedence.\n\n List of key-value pairs that will be used as matching metadata. Only those origin servers of\n upstream origin pool which match this metadata will be selected for load balancing\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.max_pairs: 16\n", - "title": "Origin Servers Subset", - "x-displayname": "Origin Servers Subsets", + "description": " Map of integer error codes as keys and string values that can be used to provide custom\n http pages for each error code.\n Key of the map can be either response code class or HTTP Error code. Response code classes\n for key is configured as follows\n 3 -- for 3xx response code class\n 4 -- for 4xx response code class\n 5 -- for 5xx response code class\n Value of the map is string which represents custom HTTP responses.\n Specific response code takes preference when both response code and response code class\n matches for a request.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.uint32.ranges: 3,4,5,300-599\n ves.io.schema.rules.map.max_pairs: 16\n ves.io.schema.rules.map.values.string.max_len: 65536\n ves.io.schema.rules.map.values.string.uri_ref: true\n", + "title": "Custom Errors", + "x-displayname": "Custom Error Responses", "x-ves-example": "value", "x-ves-validation-rules": { - "ves.io.schema.rules.map.max_pairs": "16" + "ves.io.schema.rules.map.keys.uint32.ranges": "3,4,5,300-599", + "ves.io.schema.rules.map.max_pairs": "16", + "ves.io.schema.rules.map.values.string.max_len": "65536", + "ves.io.schema.rules.map.values.string.uri_ref": "true" } }, - "inherited_bot_defense_javascript_injection": { - "description": "Exclusive with [bot_defense_javascript_injection]\n Bot Defense JavaScript Injection configuration is taken from Load Balancer.\n Hence no custom configuration is applied on the route", - "title": "Inherited Bot Defense JavaScript Injection", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Inherit Bot Defense JavaScript Injection" + "disable_default_error_pages": { + "type": "boolean", + "description": " Disable the use of default F5XC error pages.", + "title": "Disable the use of default F5XC error pages", + "format": "boolean", + "x-displayname": "Disable Default Error Pages" }, - "inherited_waf": { - "description": "Exclusive with [app_firewall disable_waf]\n App Firewall configuration is taken from Load Balancer.\n Hence no custom configuration is applied on the route", - "title": "Inherited WAF", + "disable_path_normalize": { + "description": "Exclusive with [enable_path_normalize]\n", + "title": "Disable Path normalization", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Inherit App Firewall" - }, - "mirror_policy": { - "description": "Exclusive with [disable_mirroring]\n MirrorPolicy is used for shadowing traffic from one cluster to another. The current\n implementation is \"fire and forget,\" meaning it will not wait for the shadow cluster to\n respond before returning the response from the primary cluster. All normal statistics are\n collected for the shadow cluster making this feature useful for testing.\n\n During shadowing, the host/authority header is altered such that *-shadow* is appended. This is\n useful for logging. For example, *cluster1* becomes *cluster1-shadow*.", - "title": "Enable Mirroring", - "$ref": "#/definitions/viewshttp_loadbalancerMirrorPolicyType", - "x-displayname": "Enable Mirroring" + "x-displayname": "Disable" }, - "no_retry_policy": { - "description": "Exclusive with [default_retry_policy retry_policy]\n Do not configure retry policy", - "title": "No retry policy", + "enable_path_normalize": { + "description": "Exclusive with [disable_path_normalize]\n", + "title": "Enable Path normalization", "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Do not retry" + "x-displayname": "Enable" }, - "prefix_rewrite": { - "type": "string", - "description": "Exclusive with [disable_prefix_rewrite]\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value.\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", - "title": "prefix_rewrite", - "maxLength": 256, - "x-displayname": "Enable Prefix Rewrite", - "x-ves-example": "/", + "idle_timeout": { + "type": "integer", + "description": " The amount of time that a stream can exist without upstream or downstream activity, in milliseconds.\n The stream is terminated with a HTTP 504 (Gateway Timeout) error code if no upstream response header has been\n received, otherwise the stream is reset.\n\nExample: - \"2000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 3600000\n", + "title": "Idle timeout", + "format": "int64", + "x-displayname": "Idle Timeout", + "x-ves-example": "2000", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "256" + "ves.io.schema.rules.uint32.lte": "3600000" } }, - "priority": { - "description": " Priority routing for each route. Different connection pools are used based on the priority of the route.\n Also, circuit-breaker configuration at destination cluster is chosen based on the route priority.", - "title": "priority", - "$ref": "#/definitions/schemaRoutingPriority", - "x-displayname": "Priority" + "max_request_header_size": { + "type": "integer", + "description": " The maximum request header size for downstream connections, in KiB.\n A HTTP 431 (Request Header Fields Too Large) error code is sent for requests that exceed this size.\n\n If multiple load balancers share the same advertise_policy, the highest value configured across all\n such load balancers is used for all the load balancers in question.\n\nExample: - \"60\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 96\n", + "title": "Maximum request header size", + "format": "int64", + "x-displayname": "Maximum Request Header Size", + "x-ves-example": "60", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "96" + } }, "request_headers_to_add": { "type": "array", - "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", "title": "Headers to add in request", "maxItems": 32, "items": { @@ -6260,7 +5404,7 @@ var APISwaggerJSON string = `{ }, "response_headers_to_add": { "type": "array", - "description": " Headers are key-value pairs to be added to HTTP response being sent towards downstream.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Headers are key-value pairs to be added to HTTP response being sent towards downstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", "title": "Headers to add in response", "maxItems": 32, "items": { @@ -6290,930 +5434,1749 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.repeated.max_items": "32", "ves.io.schema.rules.repeated.unique": "true" } + } + } + }, + "http_loadbalancerAppEndpointType": { + "type": "object", + "description": "x-displayName: \"Application Endpoint\"\nApplication Endpoint.", + "title": "AppEndpointType", + "properties": { + "allow_good_bots": { + "description": "System flags Good Bot traffic and allow it to continue to the origin", + "title": "x-displayName: \"Allow All Good Bots to Continue to Origin\"", + "$ref": "#/definitions/schemaEmpty" }, - "retract_cluster": { - "description": "Exclusive with [do_not_retract_cluster]\n When this option is enabled, weighted cluster will not be considered\n for load balancing, if all its endpoints are unhealthy.\n Since the cluster with all unhealthy endpoints is removed, the traffic\n will be distributed among remaining clusters as per their weight.\n Also panic-threshold configuration is ignored for retracted cluster.\n\n This option is ignored when single destination cluster is configured\n for route", - "title": "retract_cluster", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Retract cluster with no healthy endpoints" + "any_domain": { + "description": "x-displayName: \"Any Domain\"\nAny Domain.", + "title": "Any domain", + "$ref": "#/definitions/schemaEmpty" }, - "retry_policy": { - "description": "Exclusive with [default_retry_policy no_retry_policy]\n Configure custom retry policy", - "title": "Custom Retry Policy", - "$ref": "#/definitions/schemaRetryPolicyType", - "x-displayname": "Custom Retry Policy" + "domain": { + "description": "x-displayName: \"Domain\"\nDomain matcher.", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType" }, - "specific_hash_policy": { - "description": "Exclusive with [common_hash_policy]\n Configure hash policy specific for this route", - "title": "Route Specific Hash Policy", - "$ref": "#/definitions/http_loadbalancerHashPolicyListType", - "x-displayname": "Route Specific Hash Policy" + "flow_label": { + "description": "x-displayName: \"Specify Endpoint label category\"", + "title": "flow_label", + "$ref": "#/definitions/schemaBotDefenseFlowLabelCategoriesChoiceType" }, - "timeout": { - "type": "integer", - "description": " The timeout for the route including all retries, in milliseconds.\n Should be set to a high value or 0 (infinite timeout) for server-side streaming.\n\nExample: - \"2000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 600000\n", - "title": "timeout", - "format": "int64", - "x-displayname": "Timeout", - "x-ves-example": "2000", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.gte": "0", - "ves.io.schema.rules.uint32.lte": "600000" + "http_methods": { + "type": "array", + "description": "x-displayName: \"HTTP Methods\"\nx-required\nList of HTTP methods.", + "title": "HTTP Methods", + "items": { + "$ref": "#/definitions/schemaBotHttpMethod" } }, - "web_socket_config": { - "description": "Exclusive with [disable_web_socket_config]\n Upgrade to Websocket for this route", - "title": "Websocket Configuration", - "$ref": "#/definitions/routeWebsocketConfigType", - "x-displayname": "Enable Websocket" + "metadata": { + "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType" + }, + "mitigate_good_bots": { + "description": "System flags Good Bot Traffic, but mitigation is handled in the same manner as malicious automated traffic defined above", + "title": "x-displayName: \"Apply Mitigation to Good Bots\"", + "$ref": "#/definitions/schemaEmpty" + }, + "mitigation": { + "description": "x-displayName: \"Bot Traffic Mitigation\"\nx-required\nMitigation action.", + "title": "Mitigation", + "$ref": "#/definitions/policyShapeBotMitigationAction" + }, + "mobile": { + "description": "x-displayName: \"Mobile Traffic\"\nMobile traffic channel.", + "title": "MobileTrafficChannel", + "$ref": "#/definitions/schemaEmpty" + }, + "path": { + "description": "x-displayName: \"Path\"\nx-required\nMatching URI path of the route.", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType" + }, + "protocol": { + "description": "x-displayName: \"Protocol\"\nProtocol.", + "title": "Protocol", + "$ref": "#/definitions/http_loadbalancerURLScheme" + }, + "undefined_flow_label": { + "description": "x-displayName: \"Undefined\"", + "title": "undefined", + "$ref": "#/definitions/schemaEmpty" + }, + "web": { + "description": "x-displayName: \"Web Traffic\"\nWeb traffic channel.", + "title": "WebTrafficChannel", + "$ref": "#/definitions/schemaEmpty" + }, + "web_mobile": { + "description": "x-displayName: \"Web and Mobile Traffic\"\nWeb and mobile traffic channel.", + "title": "WebMobileTrafficChannel", + "$ref": "#/definitions/http_loadbalancerWebMobileTrafficType" } } }, - "http_loadbalancerRouteTypeCustomRoute": { + "http_loadbalancerBotAdvancedMobileSDKConfigType": { "type": "object", - "description": "A custom route uses a route object created outside of this view.", - "title": "RouteTypeCustomRoute", - "x-displayname": "Custom Route Object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute", + "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers.", + "title": "BotAdvancedMobileSDKConfigType", "properties": { - "route_ref": { - "description": " Reference to a custom route object", - "title": "route_refs", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Reference to Custom Route" + "mobile_identifier": { + "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers Type.", + "title": "MobileTrafficIdentifierType", + "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" } } }, - "http_loadbalancerRouteTypeDirectResponse": { + "http_loadbalancerBotDefenseAdvancedPolicyType": { "type": "object", - "description": "A direct response route matches on path, incoming header, incoming port and/or HTTP method\nand responds directly to the matching traffic", - "title": "RouteTypeDirectResponse", - "x-displayname": "Direct Response Route", - "x-ves-displayorder": "2,1,4,5,3", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeDirectResponse", + "description": "x-displayName: \"Bot Defense Advanced Policy\"\nThis defines various configuration options for Bot Defense Advanced Policy.", + "title": "BotDefenseAdvancedPolicyType", "properties": { - "headers": { - "type": "array", - "description": " List of (key, value) headers\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", - "title": "headers", - "maxItems": 16, - "items": { - "$ref": "#/definitions/ioschemaHeaderMatcherType" - }, - "x-displayname": "Headers", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true" - } + "disable_mobile_sdk": { + "description": "x-displayName: \"Disable Mobile SDK\"\nDisable Mobile SDK.", + "title": "Disable Mobile SDK", + "$ref": "#/definitions/schemaEmpty" }, - "http_method": { - "description": " The name of the HTTP Method (GET, PUT, POST, etc)", - "title": "http_method", - "$ref": "#/definitions/schemaHttpMethod", - "x-displayname": "HTTP Method" + "js_download_path": { + "type": "string", + "description": "x-displayName: \"Web Client JavaScript Download Path\"\nx-example: \"/common.js\"\nx-required\nCustomize Bot Defense Web Client JavaScript path", + "title": "js_download_path" }, - "incoming_port": { - "description": " The port on which the request is received", - "title": "incoming_port", - "$ref": "#/definitions/ioschemaPortMatcherType", - "x-displayname": "Match LB port" + "mobile_sdk_config": { + "description": "x-displayName: \"Enable Mobile SDK\"\nEnable Mobile SDK Configuration", + "title": "Enable Mobile SDK", + "$ref": "#/definitions/http_loadbalancerBotAdvancedMobileSDKConfigType" }, - "path": { - "description": " URI path of route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "path", - "$ref": "#/definitions/ioschemaPathMatcherType", - "x-displayname": "Path", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "protected_app_endpoints": { + "type": "array", + "description": "x-displayName: \"Protected App Endpoints\"\nx-required\nList of protected endpoints (max 128 items)", + "title": "ProtectedAppEndpointType", + "items": { + "$ref": "#/definitions/http_loadbalancerProtectedAppEndpointType" } + } + } + }, + "http_loadbalancerBotDefenseAdvancedType": { + "type": "object", + "description": "x-displayName: \"Bot Defense Advanced\"\nBot Defense Advanced", + "title": "BotDefenseAdvancedType", + "properties": { + "mobile": { + "description": "x-displayName: \"Infrastructure For Mobile\"\nSelect infrastructure for mobile.", + "title": "Mobile", + "$ref": "#/definitions/schemaviewsObjectRefType" }, - "route_direct_response": { - "description": " Send direct response", - "title": "route_direct_response", - "$ref": "#/definitions/routeRouteDirectResponse", - "x-displayname": "Direct Response" + "policy": { + "description": "x-displayName: \"Bot Defense Advanced Policy\"\nx-required\nBot Defense Advanced Policy.", + "title": "BotDefenseAdvancedPolicyType", + "$ref": "#/definitions/http_loadbalancerBotDefenseAdvancedPolicyType" + }, + "web": { + "description": "x-displayName: \"Infrastructure For Web\"\nSelect infrastructure for web.", + "title": "Web", + "$ref": "#/definitions/schemaviewsObjectRefType" } } }, - "http_loadbalancerRouteTypeRedirect": { + "http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType": { "type": "object", - "description": "A redirect route matches on path, incoming header, incoming port and/or HTTP method\nand redirects the matching traffic to a different URL", - "title": "RouteTypeRedirect", - "x-displayname": "Redirect Route", - "x-ves-displayorder": "2,1,4,5,3", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeRedirect", + "description": "Insert Client-Side Defense JavaScript in all pages with the exceptions", + "title": "CSDJavaScriptInsertAllWithExceptionsType", + "x-displayname": "Insert JavaScript in All Pages with the Exceptions", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType", "properties": { - "headers": { + "exclude_list": { "type": "array", - "description": " List of (key, value) headers\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", - "title": "headers", - "maxItems": 16, + "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exclude_list", + "maxItems": 128, "items": { - "$ref": "#/definitions/ioschemaHeaderMatcherType" + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" }, - "x-displayname": "Headers", + "x-displayname": "Exclude Pages", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.max_items": "128", "ves.io.schema.rules.repeated.unique": "true" } - }, - "http_method": { - "description": " The name of the HTTP Method (GET, PUT, POST, etc)", - "title": "http_method", - "$ref": "#/definitions/schemaHttpMethod", - "x-displayname": "HTTP Method" - }, - "incoming_port": { - "description": " The port on which the request is received", - "title": "incoming_port", - "$ref": "#/definitions/ioschemaPortMatcherType", - "x-displayname": "Match LB port" - }, - "path": { - "description": " URI path of route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "path", - "$ref": "#/definitions/ioschemaPathMatcherType", - "x-displayname": "Path", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "route_redirect": { - "description": " Send redirect response", - "title": "route_redirect", - "$ref": "#/definitions/routeRouteRedirect", - "x-displayname": "Redirect Parameters" } } }, - "http_loadbalancerRouteTypeSimple": { + "http_loadbalancerCSDJavaScriptInsertType": { "type": "object", - "description": "A simple route matches on path, incoming header, incoming port and/or HTTP method\nand forwards the matching traffic to the associated pools", - "title": "RouteTypeSimple", - "x-displayname": "Simple Route", - "x-ves-displayorder": "2,1,9,10,3,4,8", - "x-ves-oneof-field-host_rewrite_params": "[\"auto_host_rewrite\",\"disable_host_rewrite\",\"host_rewrite\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeSimple", + "description": "This defines custom JavaScript insertion rules for Client-Side Defense Policy.", + "title": "CSDJavaScriptInsertType", + "x-displayname": "JavaScript Custom Insertion Rules", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType", "properties": { - "advanced_options": { - "description": " Configure Advanced per route options", - "title": "Advanced Options", - "$ref": "#/definitions/http_loadbalancerRouteSimpleAdvancedOptions", - "x-displayname": "Advanced Options" - }, - "auto_host_rewrite": { - "description": "Exclusive with [disable_host_rewrite host_rewrite]\n Host header will be swapped with hostname of upstream host chosen by the cluster", - "title": "Auto Host Rewrite", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Automatic Host Rewrite" - }, - "disable_host_rewrite": { - "description": "Exclusive with [auto_host_rewrite host_rewrite]\n Host header is not modified", - "title": "Disable Host Rewrite", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable Host Rewrite" - }, - "headers": { + "exclude_list": { "type": "array", - "description": " List of (key, value) headers\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", - "title": "headers", - "maxItems": 16, + "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exclude_list", + "maxItems": 128, "items": { - "$ref": "#/definitions/ioschemaHeaderMatcherType" + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" }, - "x-displayname": "Headers", + "x-displayname": "Exclude Paths", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.max_items": "128", "ves.io.schema.rules.repeated.unique": "true" } }, - "host_rewrite": { - "type": "string", - "description": "Exclusive with [auto_host_rewrite disable_host_rewrite]\n Host header will be swapped with this value\n\nExample: - \"one.volterra.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n", - "title": "HostRewrite", - "x-displayname": "Host Rewrite Value", - "x-ves-example": "one.volterra.com", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.hostname": "true" - } - }, - "http_method": { - "description": " The name of the HTTP Method (GET, PUT, POST, etc)", - "title": "http_method", - "$ref": "#/definitions/schemaHttpMethod", - "x-displayname": "HTTP Method" - }, - "incoming_port": { - "description": " The port on which the request is received", - "title": "incoming_port", - "$ref": "#/definitions/ioschemaPortMatcherType", - "x-displayname": "Match LB port" - }, - "origin_pools": { + "rules": { "type": "array", - "description": " Origin Pools for this route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Origin Pools", + "description": " Required list of pages to insert Client-Side Defense client JavaScript.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "rules", "minItems": 1, - "maxItems": 16, + "maxItems": 128, "items": { - "$ref": "#/definitions/viewsOriginPoolWithWeight" + "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertionRule" }, - "x-displayname": "Origin Pools", + "x-displayname": "JavaScript Insertions", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.max_items": "128", "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true" } - }, - "path": { - "description": " URI path of route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "path", - "$ref": "#/definitions/ioschemaPathMatcherType", - "x-displayname": "Path", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } } } }, - "http_loadbalancerServerUrlRule": { + "http_loadbalancerCSDJavaScriptInsertionRule": { "type": "object", - "title": "ServerUrlRule", - "x-displayname": "Server URLs and API Groups", - "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ServerUrlRule", + "description": "This defines a rule for Client-Side Defense JavaScript insertion.", + "title": "CSDJavaScriptInsertionRule", + "x-displayname": "JavaScript Insertion Rule", + "x-ves-oneof-field-domain_matcher_choice": "[\"any_domain\",\"domain\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule", "properties": { "any_domain": { - "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", - "title": "any domain", + "description": "Exclusive with [domain]\n Any Domain.", + "title": "Any domain", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Any Domain" }, - "api_group": { - "type": "string", - "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", - "title": "api_group", - "maxLength": 128, - "x-displayname": "API Group", - "x-ves-example": "oas-all-operations", + "domain": { + "description": "Exclusive with [any_domain]\n Domain matcher.", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType", + "x-displayname": "Domain" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "128" + "ves.io.schema.rules.message.required": "true" } }, - "base_path": { - "type": "string", - "description": " Prefix of the request path.\n\nExample: - \"/\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", - "title": "base path", - "maxLength": 128, - "x-displayname": "Base Path", - "x-ves-example": "/", + "path": { + "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128" + "ves.io.schema.rules.message.required": "true" } + } + } + }, + "http_loadbalancerClientSideDefensePolicyType": { + "type": "object", + "description": "This defines various configuration options for Client-Side Defense policy.", + "title": "ClientSideDefensePolicyType", + "x-displayname": "Client-Side Defense Policy", + "x-ves-oneof-field-java_script_choice": "[\"disable_js_insert\",\"js_insert_all_pages\",\"js_insert_all_pages_except\",\"js_insertion_rules\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType", + "properties": { + "disable_js_insert": { + "description": "Exclusive with [js_insert_all_pages js_insert_all_pages_except js_insertion_rules]\n Disable JavaScript insertion.", + "title": "Disable JavaScript Insertion", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable JavaScript Insertion" }, - "client_matcher": { - "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", - "title": "client_matcher", - "$ref": "#/definitions/policyClientMatcher", - "x-displayname": "Clients" - }, - "inline_rate_limiter": { - "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", - "title": "Inline Rate Limiter", - "$ref": "#/definitions/http_loadbalancerInlineRateLimiter", - "x-displayname": "Specific Values" - }, - "ref_rate_limiter": { - "description": "Exclusive with [inline_rate_limiter]\n Use external rate limiter.", - "title": "External Rate Limiter", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "External Rate Limiter" + "js_insert_all_pages": { + "description": "Exclusive with [disable_js_insert js_insert_all_pages_except js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages.", + "title": "Insert JavaScript in All Pages", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Insert JavaScript in All Pages" }, - "request_matcher": { - "description": " Conditions related to the request, such as query parameters, headers, etc.", - "title": "request_matcher", - "$ref": "#/definitions/policyRequestMatcher", - "x-displayname": "Request" + "js_insert_all_pages_except": { + "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages with the exceptions.", + "title": "Insert JavaScript in All Pages with the Exceptions", + "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType", + "x-displayname": "Insert JavaScript in All Pages with the Exceptions" }, - "specific_domain": { - "type": "string", - "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", - "title": "domain", - "maxLength": 128, - "x-displayname": "Specific Domain", + "js_insertion_rules": { + "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insert_all_pages_except]\n Specify custom JavaScript insertion rules.", + "title": "Custom JavaScript Insertion Rules", + "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertType", + "x-displayname": "Custom JavaScript Insertion Rules" + } + } + }, + "http_loadbalancerClientSideDefenseType": { + "type": "object", + "description": "This defines various configuration options for Client-Side Defense Policy.", + "title": "ClientSideDefenseType", + "x-displayname": "Client-Side Defense", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType", + "properties": { + "policy": { + "description": " Configure the pages where you want Client-Side Defense Protection.\n Please ensure that the same domains are configured in the Client-Side Defense configuration.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "ClientSideDefensePolicyType", + "$ref": "#/definitions/http_loadbalancerClientSideDefensePolicyType", + "x-displayname": "Client-Side Defense Policy", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true" + "ves.io.schema.rules.message.required": "true" } } } }, - "http_loadbalancerServicePolicyList": { + "http_loadbalancerDDoSClientSource": { "type": "object", - "description": "List of service policies.", - "title": "service policy list", - "x-displayname": "Service Policy List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ServicePolicyList", + "description": "DDoS Mitigation sources to be blocked", + "title": "DDoSClientSource", + "x-displayname": "DDoS Client Source Choice", + "x-ves-displayorder": "1,3,5", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSClientSource", "properties": { - "policies": { + "asn_list": { + "description": " Addresses that belong to the ASNs in the given list\n The ASN is obtained by performing a lookup for the source IPv4 Address in a GeoIP DB.", + "title": "asn_list", + "$ref": "#/definitions/policyAsnMatchList", + "x-displayname": "ASN List" + }, + "country_list": { "type": "array", - "description": " Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\n correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result.\n For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\n current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\n If all policies are evaluated and none match, then the request will be denied by default.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", - "title": "policies", - "minItems": 1, - "maxItems": 16, + "description": " Sources that are located in one of the countries in the given list\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.not_in: [0]\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "country_list", + "maxItems": 64, "items": { - "$ref": "#/definitions/schemaviewsObjectRefType" + "$ref": "#/definitions/policyCountryCode" }, - "x-displayname": "Policies", - "x-ves-required": "true", + "x-displayname": "Country List", "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.not_in": "[0]", + "ves.io.schema.rules.repeated.max_items": "64", "ves.io.schema.rules.repeated.unique": "true" } + }, + "tls_fingerprint_matcher": { + "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", + "title": "TLS JA3 fingerprint matcher", + "$ref": "#/definitions/policyTlsFingerprintMatcherType", + "x-displayname": "TLS Fingerprint Matcher" } } }, - "http_loadbalancerShapeBotDefensePolicyType": { + "http_loadbalancerDDoSMitigationRule": { "type": "object", - "description": "x-displayName: \"Bot Defense Policy\"\nThis defines various configuration options for Bot Defense policy.", - "title": "ShapeShapeBotDefensePolicyType", + "description": "DDoS Mitigation Rule specifies the sources to be blocked", + "title": "DDoSMitigationRule", + "x-displayname": "DDoS Mitigation Rule", + "x-ves-displayorder": "1,2,7,10", + "x-ves-oneof-field-mitigation_action": "[\"block\"]", + "x-ves-oneof-field-mitigation_choice": "[\"ddos_client_source\",\"ip_prefix_list\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule", "properties": { - "disable_js_insert": { - "description": "x-displayName: \"Disable JavaScript Insertion\"\nDisable JavaScript insertion.", - "title": "Disable JavaScript Insertion", + "block": { + "description": "Exclusive with []\n Block user for a duration determined by the expiration time", + "title": "Block User", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Block User" + }, + "ddos_client_source": { + "description": "Exclusive with [ip_prefix_list]\n Combination of Region, ASN and TLS Fingerprints\n\nValidation Rules:\n ves.io.schema.rules.message.required_one_nonzero_field: true\n", + "title": "ddos_client_source", + "$ref": "#/definitions/http_loadbalancerDDoSClientSource", + "x-displayname": "DDoS Client Source", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required_one_nonzero_field": "true" + } + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.timestamp.within.seconds": "31536000" + } + }, + "ip_prefix_list": { + "description": "Exclusive with [ddos_client_source]\n IPv4 prefix string.", + "title": "ip source", + "$ref": "#/definitions/policyPrefixMatchList", + "x-displayname": "IP Source" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "http_loadbalancerHashPolicyListType": { + "type": "object", + "description": "List of hash policy rules", + "title": "Hash Policy List", + "x-displayname": "Hash Policy List", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.HashPolicyListType", + "properties": { + "hash_policy": { + "type": "array", + "description": " Specifies a list of hash policies to use for ring hash load balancing. Each\n hash policy is evaluated individually and the combined result is used to\n route the request\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 8\n ves.io.schema.rules.repeated.unique: true\n", + "title": "hash_policy", + "maxItems": 8, + "items": { + "$ref": "#/definitions/routeHashPolicyType" + }, + "x-displayname": "Hash Policy", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "http_loadbalancerMobileIdentifier": { + "type": "string", + "description": "x-displayName: \"Mobile Identifier\"\nMobile identifier type\n\n - HEADERS: Headers\n\nx-displayName: \"Headers\"\nHeaders", + "title": "MobileIdentifier", + "enum": [ + "HEADERS" + ], + "default": "HEADERS" + }, + "http_loadbalancerMobileSDKConfigType": { + "type": "object", + "description": "x-displayName: \"Mobile SDK Configuration\"\nMobile SDK configuration.", + "title": "MobileSDKConfigType", + "properties": { + "mobile_identifier": { + "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", + "title": "Mobile Traffic Identifier Type", + "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" + }, + "reload_header_name": { + "type": "string", + "description": "x-displayName: \"Reload Header Name\"\nx-example: \"x-oomZEZlK\"\nHeader that is used for SDK configuration sync.", + "title": "Reload header name" + } + } + }, + "http_loadbalancerMobileTrafficIdentifierType": { + "type": "object", + "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", + "title": "MobileTrafficIdentifierType", + "properties": { + "headers": { + "type": "array", + "description": "x-displayName: \"Headers\"\nHeaders that can be used to identify mobile traffic.", + "title": "Mobile headers", + "items": { + "$ref": "#/definitions/policyHeaderMatcherTypeBasic" + } + } + } + }, + "http_loadbalancerOriginServerSubsetRuleListType": { + "type": "object", + "description": "List of Origin Pools", + "title": "OriginServerSubsetRuleListType", + "x-displayname": "Origin Server Subset Rule List Type", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType", + "properties": { + "origin_server_subset_rules": { + "type": "array", + "description": " Origin Server Subset Rules allow users to define match condition on Client (IP address, ASN, Country), IP Reputation, Regional Edge names,\n Request for subset selection of origin servers. Origin Server Subset is a sequential engine where rules are evaluated one after the other.\n It's important to define the correct order for Origin Server Subset to get the intended result, rules are evaluated from top to bottom in the list.\n When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Origin Server Subset", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyOriginServerSubsetRule" + }, + "x-displayname": "Origin Server Subset Rules", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + } + } + }, + "http_loadbalancerProtectedAppEndpointType": { + "type": "object", + "description": "x-displayName: \"Protected App Endpoint\"\nProtected Application Endpoint.", + "title": "ProtectedAppEndpointType", + "properties": { + "any_domain": { + "description": "x-displayName: \"Any Domain\"\nAny Domain", + "title": "Any domain", "$ref": "#/definitions/schemaEmpty" }, - "disable_mobile_sdk": { - "description": "x-displayName: \"Disable Mobile SDK\"\nDisable Mobile SDK.", - "title": "Disable Mobile SDK", + "domain": { + "description": "x-displayName: \"Domain\"\nSelect Domain matcher", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType" + }, + "flow_label": { + "description": "x-displayName: \"Specify endpoint label category\"", + "title": "flow_label", + "$ref": "#/definitions/schemaBotDefenseFlowLabelCategoriesChoiceType" + }, + "http_methods": { + "type": "array", + "description": "x-displayName: \"HTTP Methods\"\nx-required\nList of HTTP methods.", + "title": "HTTP Methods", + "items": { + "$ref": "#/definitions/schemaBotHttpMethod" + } + }, + "metadata": { + "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType" + }, + "mobile_client": { + "description": "x-displayName: \"Mobile Traffic\"\nMobile traffic channel.", + "title": "MobileTraffic", "$ref": "#/definitions/schemaEmpty" }, - "javascript_mode": { - "description": "x-displayName: \"Web Client JavaScript Mode\"\nx-required\nDetermine the mode in which the JavaScript is loaded into the entry page.\nThe JavaScript is split into 2 chunks.\nThe larger chunk can be loaded asynchronously or synchronously. It can also be cacheable or non-cacheable on the browser.", - "title": "javascript_mode", - "$ref": "#/definitions/schemaJavaScriptMode" + "path": { + "description": "x-displayName: \"Path\"\nx-required\nx-example: \"/id/1\"\nx-example: \"/id/*\"\nx-example: \"*login\"\nAccepts wildcards * to match multiple characters or ? to match a single character", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType" }, - "js_download_path": { - "type": "string", - "description": "x-displayName: \"JavaScript Download Path\"\nx-example: \"value\"\nCustomize Bot Defense Client JavaScript path. If not specified, default -/common.js-", - "title": "js_download_path" + "query": { + "type": "array", + "description": "x-displayName: \"Query\"\nx-example: \"(^|[^\\\\w])action=login([^\\\\w]|$)\"\nEnter a regular expression or exact value to match your query parameters of interest", + "title": "Query", + "items": { + "$ref": "#/definitions/http_loadbalancerQuery" + } }, - "js_insert_all_pages": { - "description": "x-displayName: \"Insert JavaScript in All Pages\"\nInsert Bot Defense JavaScript in all pages.", - "title": "Insert JavaScript in All Pages", - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertAllType" + "request_body": { + "type": "array", + "description": "x-displayName: \"Request Body\"\nRequest Body", + "title": "Request Body", + "items": { + "$ref": "#/definitions/http_loadbalancerRequestBody" + } }, - "js_insert_all_pages_except": { - "description": "x-displayName: \"Insert JavaScript in All Pages with the Exceptions\"\nInsert Bot Defense JavaScript in all pages with the exceptions.", - "title": "Insert JavaScript in All Pages with the Exceptions", - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertAllWithExceptionsType" + "undefined_flow_label": { + "description": "x-displayName: \"Undefined\"", + "title": "undefined", + "$ref": "#/definitions/schemaEmpty" }, - "js_insertion_rules": { - "description": "x-displayName: \"Custom JavaScript Insertion Rules\"\nSpecify custom JavaScript insertion rules.", - "title": "Custom JavaScript Insertion Rules", - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertType" + "web_client": { + "description": "x-displayName: \"Web Traffic\"\nWeb traffic channel.", + "title": "WebTraffic", + "$ref": "#/definitions/schemaEmpty" }, - "mobile_sdk_config": { - "description": "x-displayName: \"Mobile SDK Configuration\"\nMobile SDK configuration", - "title": "Mobile SDK configuration", - "$ref": "#/definitions/http_loadbalancerMobileSDKConfigType" + "web_mobile_client": { + "description": "x-displayName: \"Web and Mobile Traffic\"\nWeb and mobile traffic channel.", + "title": "WebMobileTraffic", + "$ref": "#/definitions/http_loadbalancerWebMobileTrafficType" + } + } + }, + "http_loadbalancerProxyTypeHttp": { + "type": "object", + "description": "Choice for selecting HTTP proxy", + "title": "HTTP Choice", + "x-displayname": "HTTP Choice", + "x-ves-displayorder": "1,3", + "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp", + "properties": { + "dns_volterra_managed": { + "type": "boolean", + "description": " DNS records for domains will be managed automatically by F5 Distributed Cloud.\n As a prerequisite, the domain must be delegated to F5 Distributed Cloud using Delegated domain feature\n or a DNS CNAME record should be created in your DNS provider's portal.", + "title": "Manage DNS Domain", + "format": "boolean", + "x-displayname": "Automatically Manage DNS Records" + }, + "port": { + "type": "integer", + "description": "Exclusive with [port_ranges]\n HTTP port to Listen.\n\nExample: - \"80\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "HTTP port to listen", + "format": "int64", + "x-displayname": "HTTP Listen Port", + "x-ves-example": "80", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "port_ranges": { + "type": "string", + "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", + "title": "Port_ranges", + "minLength": 1, + "maxLength": 512, + "x-displayname": "Port Ranges", + "x-ves-example": "80,443,8080-8191,9080", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true" + } + } + } + }, + "http_loadbalancerProxyTypeHttps": { + "type": "object", + "description": "Choice for selecting HTTP proxy with bring your own certificates", + "title": "BYOC HTTPS Choice", + "x-displayname": "BYOC HTTPS Choice", + "x-ves-displayorder": "1,2,24,3,4,9,16,19,20", + "x-ves-oneof-field-default_lb_choice": "[\"default_loadbalancer\",\"non_default_loadbalancer\"]", + "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", + "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", + "x-ves-oneof-field-server_header_choice": "[\"append_server_name\",\"default_header\",\"pass_through\",\"server_name\"]", + "x-ves-oneof-field-tls_certificates_choice": "[\"tls_cert_params\",\"tls_parameters\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttps", + "properties": { + "add_hsts": { + "type": "boolean", + "description": " Add HTTP Strict-Transport-Security response header", + "title": "Add HSTS", + "format": "boolean", + "x-displayname": "Add HSTS Header" + }, + "append_server_name": { + "type": "string", + "description": "Exclusive with [default_header pass_through server_name]\n Define the header value for the header name “server”.\n If header value is already present, it is not overwritten and passed as-is.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", + "title": "append_server_name", + "maxLength": 8096, + "x-displayname": "Append header value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "8096" + } + }, + "connection_idle_timeout": { + "type": "integer", + "description": " The idle timeout for downstream connections. The idle timeout is defined as the\n period in which there are no active requests. When the idle timeout is reached the connection\n will be closed. Note that request based timeouts mean that HTTP/2 PINGs will not keep the connection alive.\n This is specified in milliseconds. The default value is 2 minutes.\n\nExample: - \"60000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 600000\n", + "title": "Connection Idle Timeout", + "format": "int64", + "x-displayname": "Connection Idle Timeout", + "x-ves-example": "60000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "600000" + } + }, + "default_header": { + "description": "Exclusive with [append_server_name pass_through server_name]\n Response header name is “server” and value is “volt-adc”", + "title": "default_header", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + }, + "default_loadbalancer": { + "description": "Exclusive with [non_default_loadbalancer]\n", + "title": "Default load balancer", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Yes" + }, + "disable_path_normalize": { + "description": "Exclusive with [enable_path_normalize]\n", + "title": "Disable Path normalization", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_path_normalize": { + "description": "Exclusive with [disable_path_normalize]\n", + "title": "Enable Path normalization", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" + }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "title": "http_protocol_options", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, + "http_redirect": { + "type": "boolean", + "description": " Redirect HTTP traffic to HTTPS", + "title": "HTTP Redirect", + "format": "boolean", + "x-displayname": "HTTP Redirect to HTTPS" + }, + "non_default_loadbalancer": { + "description": "Exclusive with [default_loadbalancer]\n", + "title": "Not a default load balancer", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No" + }, + "pass_through": { + "description": "Exclusive with [append_server_name default_header server_name]\n Pass existing server header as is. If server header is absent, a new header is not appended.", + "title": "pass_through", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Do not modify" + }, + "port": { + "type": "integer", + "description": "Exclusive with [port_ranges]\n HTTPS port to Listen.\n\nExample: - \"443\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "HTTPS port to listen", + "format": "int64", + "x-displayname": "HTTPS Port", + "x-ves-example": "443", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "port_ranges": { + "type": "string", + "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", + "title": "Port_ranges", + "minLength": 1, + "maxLength": 512, + "x-displayname": "Port Ranges", + "x-ves-example": "80,443,8080-8191,9080", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true" + } + }, + "server_name": { + "type": "string", + "description": "Exclusive with [append_server_name default_header pass_through]\n Define the header value for the header name “server”.\n This will overwrite existing values, if any, for the server header.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", + "title": "server_name", + "maxLength": 8096, + "x-displayname": "Modify header value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "8096" + } + }, + "tls_cert_params": { + "description": "Exclusive with [tls_parameters]\n Select/Add one or more TLS Certificate objects to associate with this Load Balancer", + "title": "TLS Certificates", + "$ref": "#/definitions/viewsDownstreamTLSCertsParams", + "x-displayname": "TLS Certificates" + }, + "tls_parameters": { + "description": "Exclusive with [tls_cert_params]\n Upload a TLS certificate covering all domain names for this Load Balancer", + "title": "Inline TLS Parameters (legacy)", + "$ref": "#/definitions/schemaviewsDownstreamTlsParamsType", + "x-displayname": "Inline Certificate (legacy)" + } + } + }, + "http_loadbalancerProxyTypeHttpsAutoCerts": { + "type": "object", + "description": "Choice for selecting HTTP proxy with bring your own certificates", + "title": "HTTPS with Auto Certs Choice", + "x-displayname": "HTTPS with Auto Certs Choice", + "x-ves-displayorder": "1,2,25,3,4,7,12,19,22,23", + "x-ves-oneof-field-default_lb_choice": "[\"default_loadbalancer\",\"non_default_loadbalancer\"]", + "x-ves-oneof-field-mtls_choice": "[\"no_mtls\",\"use_mtls\"]", + "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", + "x-ves-oneof-field-port_choice": "[\"port\",\"port_ranges\"]", + "x-ves-oneof-field-server_header_choice": "[\"append_server_name\",\"default_header\",\"pass_through\",\"server_name\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts", + "properties": { + "add_hsts": { + "type": "boolean", + "description": " Add HTTP Strict-Transport-Security response header", + "title": "Add HSTS", + "format": "boolean", + "x-displayname": "Add HSTS Header" + }, + "append_server_name": { + "type": "string", + "description": "Exclusive with [default_header pass_through server_name]\n Define the header value for the header name “server”.\n If header value is already present, it is not overwritten and passed as-is.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", + "title": "append_server_name", + "maxLength": 8096, + "x-displayname": "Append header value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "8096" + } + }, + "connection_idle_timeout": { + "type": "integer", + "description": " The idle timeout for downstream connections. The idle timeout is defined as the\n period in which there are no active requests. When the idle timeout is reached the connection\n will be closed. Note that request based timeouts mean that HTTP/2 PINGs will not keep the connection alive.\n This is specified in milliseconds. The default value is 2 minutes.\n\nExample: - \"60000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 600000\n", + "title": "Connection Idle Timeout", + "format": "int64", + "x-displayname": "Connection Idle Timeout", + "x-ves-example": "60000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "600000" + } + }, + "default_header": { + "description": "Exclusive with [append_server_name pass_through server_name]\n Response header name is “server” and value is “volt-adc”", + "title": "default_header", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + }, + "default_loadbalancer": { + "description": "Exclusive with [non_default_loadbalancer]\n For traffic terminating at this load balancer, the certificate associated with the first configured domain will be used for TLS termination.", + "title": "Default load balancer", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Yes" + }, + "disable_path_normalize": { + "description": "Exclusive with [enable_path_normalize]\n", + "title": "Disable Path normalization", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_path_normalize": { + "description": "Exclusive with [disable_path_normalize]\n", + "title": "Enable Path normalization", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" + }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "title": "http_protocol_options", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, + "http_redirect": { + "type": "boolean", + "description": " Redirect HTTP traffic to HTTPS", + "title": "HTTP Redirect", + "format": "boolean", + "x-displayname": "HTTP Redirect to HTTPS" + }, + "no_mtls": { + "description": "Exclusive with [use_mtls]\n", + "title": "No mTLS", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "non_default_loadbalancer": { + "description": "Exclusive with [default_loadbalancer]\n", + "title": "Not a default load balancer", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "No" + }, + "pass_through": { + "description": "Exclusive with [append_server_name default_header server_name]\n Pass existing server header as is. If server header is absent, a new header is not appended.", + "title": "pass_through", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Do not modify" + }, + "port": { + "type": "integer", + "description": "Exclusive with [port_ranges]\n HTTPS port to Listen.\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "HTTPS port to listen", + "format": "int64", + "x-displayname": "HTTPS Listen Port", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "port_ranges": { + "type": "string", + "description": "Exclusive with [port]\n A string containing a comma separated list of port ranges.\n Each port range consists of a single port or two ports separated by \"-\".\n\nExample: - \"80,443,8080-8191,9080\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 512\n ves.io.schema.rules.string.max_ports: 64\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.unique_port_range_list: true\n", + "title": "Port_ranges", + "minLength": 1, + "maxLength": 512, + "x-displayname": "Port Ranges", + "x-ves-example": "80,443,8080-8191,9080", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true" + } + }, + "server_name": { + "type": "string", + "description": "Exclusive with [append_server_name default_header pass_through]\n Define the header value for the header name “server”.\n This will overwrite existing values, if any, for the server header.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 8096\n", + "title": "server_name", + "maxLength": 8096, + "x-displayname": "Modify header value", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "8096" + } + }, + "tls_config": { + "description": " Configuration of TLS settings such as min/max TLS version and ciphersuites", + "title": "TLS Config", + "$ref": "#/definitions/viewsTlsConfig", + "x-displayname": "TLS" + }, + "use_mtls": { + "description": "Exclusive with [no_mtls]\n", + "title": "Use mTLS", + "$ref": "#/definitions/viewsDownstreamTlsValidationContext", + "x-displayname": "Enable" + } + } + }, + "http_loadbalancerQuery": { + "type": "object", + "description": "x-displayName: \"Query Parameter Matcher\"\nQuery Parameter Matcher", + "title": "Query", + "properties": { + "check_presence": { + "description": "x-displayName: \"Presence\"\nParameter name taken which is exist in the query parameter", + "title": "check_presence", + "$ref": "#/definitions/schemaEmpty" + }, + "exact_value": { + "type": "string", + "description": "x-displayName: \"Exact Value\"\nx-example: \"login\"\nExact query value to match", + "title": "exact value" + }, + "name": { + "type": "string", + "description": "x-displayName: \"Query Parameter Name\"\nx-example: \"id\"\nEnter query parameter name", + "title": "Name" + }, + "regex_value": { + "type": "string", + "description": "x-displayName: \"Regex Value\"\nx-example: \"([a-z]([-a-z0-9]*[a-z0-9])?)$'\"\nRegular expression of query match (e.g. the value .* will match on all query)", + "title": "regex value" + } + } + }, + "http_loadbalancerRequestBody": { + "type": "object", + "description": "x-displayName: \"Request Body Parameter Matcher\"\nRequest Body Parameter Matcher", + "title": "RequestBody", + "properties": { + "exact_value": { + "type": "string", + "description": "x-displayName: \"Exact Value\"\nx-example: \"login\"\nExact query value to match", + "title": "exact value" + }, + "name": { + "type": "string", + "description": "x-displayName: \"Request Body Parameter Name\"\nx-example: \"id\"\nEnter request body parameter name", + "title": "Name" + }, + "regex_value": { + "type": "string", + "description": "x-displayName: \"Regex Value\"\nx-example: \"([a-z]([-a-z0-9]*[a-z0-9])?)$'\"\nRegular expression of query match (e.g. the value .* will match on all query)", + "title": "regex value" + } + } + }, + "http_loadbalancerRouteSimpleAdvancedOptions": { + "type": "object", + "description": "Configure advanced options for route like path rewrite, hash policy, etc.", + "title": "Advanced Route Options", + "x-displayname": "Advanced Route Options", + "x-ves-oneof-field-bot_defense_javascript_injection_choice": "[\"bot_defense_javascript_injection\",\"inherited_bot_defense_javascript_injection\"]", + "x-ves-oneof-field-buffer_choice": "[\"buffer_policy\",\"common_buffering\"]", + "x-ves-oneof-field-cluster_retract_choice": "[\"do_not_retract_cluster\",\"retract_cluster\"]", + "x-ves-oneof-field-hash_policy_choice": "[\"common_hash_policy\",\"specific_hash_policy\"]", + "x-ves-oneof-field-mirroring_choice": "[\"disable_mirroring\",\"mirror_policy\"]", + "x-ves-oneof-field-retry_policy_choice": "[\"default_retry_policy\",\"no_retry_policy\",\"retry_policy\"]", + "x-ves-oneof-field-rewrite_choice": "[\"disable_prefix_rewrite\",\"prefix_rewrite\",\"regex_rewrite\"]", + "x-ves-oneof-field-spdy_choice": "[\"disable_spdy\",\"enable_spdy\"]", + "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\",\"inherited_waf\"]", + "x-ves-oneof-field-websocket_choice": "[\"disable_web_socket_config\",\"web_socket_config\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions", + "properties": { + "app_firewall": { + "description": "Exclusive with [disable_waf inherited_waf]\n Reference to App Firewall configuration object", + "title": "app_firewall", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "App Firewall" + }, + "bot_defense_javascript_injection": { + "description": "Exclusive with [inherited_bot_defense_javascript_injection]\n Configuration for Bot Defense JavaScript Injection", + "title": "Bot Defense JavaScript Injection for inline bot defense deployments", + "$ref": "#/definitions/routeBotDefenseJavascriptInjectionType", + "x-displayname": "Enable" + }, + "buffer_policy": { + "description": "Exclusive with [common_buffering]\n Buffering configuration for requests\n Some upstream applications are not capable of handling streamed data. This config\n enables buffering the entire request before sending to upstream application. We can\n specify the maximum buffer size and buffer interval with this config.\n Route level buffer configuration overrides any configuration at VirtualHost level.", + "title": "Route Specific Buffering Configuration", + "$ref": "#/definitions/schemaBufferConfigType", + "x-displayname": "Route Specific Buffering Configuration" + }, + "common_buffering": { + "description": "Exclusive with [buffer_policy]\n Use common buffering configuration", + "title": "Common buffering Configuration", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Common buffering Configuration" + }, + "common_hash_policy": { + "description": "Exclusive with [specific_hash_policy]\n Use load balancer hash policy for this route", + "title": "Common Hash Policy", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Load Balancer Hash Policy" + }, + "cors_policy": { + "description": " Cross-Origin Resource Sharing requests configuration\n\n CORS is a mechanism that uses additional HTTP headers to tell a browser to let\n a web application running at one origin (domain) have permission to access selected\n resources from a server at a different origin", + "title": "cors_policy", + "$ref": "#/definitions/schemaCorsPolicy", + "x-displayname": "CORS Policy" + }, + "csrf_policy": { + "description": " Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf.\n\n The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host.\n\n 1. The origin that caused the user agent to issue the request (source origin).\n 2. The origin that the request is going to (target origin).\n When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid.\n Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.).", + "title": "csrf_policy", + "$ref": "#/definitions/schemaCsrfPolicy", + "x-displayname": "CSRF Policy" + }, + "default_retry_policy": { + "description": "Exclusive with [no_retry_policy retry_policy]\n Use system default retry policy", + "title": "Use Default Retry Policy", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Retry Policy" + }, + "disable_location_add": { + "type": "boolean", + "description": " disables append of x-volterra-location = \u003cre-site-name\u003e at route level, if it is configured at\n virtual-host level. This configuration is ignored on CE sites.\n\nExample: - true-", + "title": "disable_location_add", + "format": "boolean", + "x-displayname": "Disable Location Addition" + }, + "disable_mirroring": { + "description": "Exclusive with [mirror_policy]\n Disable Mirroring of request", + "title": "Disable Mirroring", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Mirroring" + }, + "disable_prefix_rewrite": { + "description": "Exclusive with [prefix_rewrite regex_rewrite]\n Do not rewrite any path portion.", + "title": "Disable Rewrite", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Rewrite" + }, + "disable_spdy": { + "description": "Exclusive with [enable_spdy]\n SPDY upgrade is disabled", + "title": "Disable SPDY", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable SPDY" + }, + "disable_waf": { + "description": "Exclusive with [app_firewall inherited_waf]\n App Firewall configuration that is configured in the Load Balancer will not be enforced on this route", + "title": "disable_app_firewall", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable App Firewall" + }, + "disable_web_socket_config": { + "description": "Exclusive with [web_socket_config]\n Websocket upgrade is disabled", + "title": "Disable Websocket", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Websocket" + }, + "do_not_retract_cluster": { + "description": "Exclusive with [retract_cluster]\n When this option is configured, cluster with no healthy\n endpoints is not retracted from route having weighted cluster\n configuration.", + "title": "do_not_retract_cluster", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable cluster retraction" + }, + "enable_spdy": { + "description": "Exclusive with [disable_spdy]\n SPDY upgrade is enabled", + "title": "Enable SPDY", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable SPDY" + }, + "endpoint_subsets": { + "type": "object", + "description": " Upstream origin pool may be configured to divide its origin servers into subsets based on metadata\n attached to the origin servers. Routes may then specify the metadata that a endpoint must match in\n order to be selected by the load balancer\n\n For origin servers which are discovered in K8S or Consul cluster, the label of the service is merged with\n endpoint's labels. In case of Consul, the label is derived from the \"Tag\" field.\n For labels that are common between configured endpoint and discovered service, labels from discovered service\n takes precedence.\n\n List of key-value pairs that will be used as matching metadata. Only those origin servers of\n upstream origin pool which match this metadata will be selected for load balancing\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.max_pairs: 16\n", + "title": "Origin Servers Subset", + "x-displayname": "Origin Servers Subsets", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.max_pairs": "16" + } + }, + "inherited_bot_defense_javascript_injection": { + "description": "Exclusive with [bot_defense_javascript_injection]\n Bot Defense JavaScript Injection configuration is taken from Load Balancer.\n Hence no custom configuration is applied on the route", + "title": "Inherited Bot Defense JavaScript Injection", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Inherit Bot Defense JavaScript Injection" + }, + "inherited_waf": { + "description": "Exclusive with [app_firewall disable_waf]\n App Firewall configuration is taken from Load Balancer.\n Hence no custom configuration is applied on the route", + "title": "Inherited WAF", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Inherit App Firewall" + }, + "mirror_policy": { + "description": "Exclusive with [disable_mirroring]\n MirrorPolicy is used for shadowing traffic from one cluster to another. The current\n implementation is \"fire and forget,\" meaning it will not wait for the shadow cluster to\n respond before returning the response from the primary cluster. All normal statistics are\n collected for the shadow cluster making this feature useful for testing.\n\n During shadowing, the host/authority header is altered such that *-shadow* is appended. This is\n useful for logging. For example, *cluster1* becomes *cluster1-shadow*.", + "title": "Enable Mirroring", + "$ref": "#/definitions/viewshttp_loadbalancerMirrorPolicyType", + "x-displayname": "Enable Mirroring" + }, + "no_retry_policy": { + "description": "Exclusive with [default_retry_policy retry_policy]\n Do not configure retry policy", + "title": "No retry policy", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Do not retry" + }, + "prefix_rewrite": { + "type": "string", + "description": "Exclusive with [disable_prefix_rewrite regex_rewrite]\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value.\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "prefix_rewrite", + "maxLength": 256, + "x-displayname": "Enable Prefix Rewrite", + "x-ves-example": "/", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "priority": { + "description": " Priority routing for each route. Different connection pools are used based on the priority of the route.\n Also, circuit-breaker configuration at destination cluster is chosen based on the route priority.", + "title": "priority", + "$ref": "#/definitions/schemaRoutingPriority", + "x-displayname": "Priority" + }, + "regex_rewrite": { + "description": "Exclusive with [disable_prefix_rewrite prefix_rewrite]\n regex_rewrite indicates that during forwarding, the matched regex should be swapped\n with the substitution value.\n\nExample: - \"^/service/([^/]+)(/.*)$\"-", + "title": "regex_rewrite", + "$ref": "#/definitions/schemaRegexMatchRewrite", + "x-displayname": "Enable Regex Rewrite", + "x-ves-example": "^/service/([^/]+)(/.*)$" + }, + "request_headers_to_add": { + "type": "array", + "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Headers to add in request", + "maxItems": 32, + "items": { + "$ref": "#/definitions/schemaHeaderManipulationOptionType" + }, + "x-displayname": "Add Request Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "request_headers_to_remove": { + "type": "array", + "description": " List of keys of Headers to be removed from the HTTP request being sent towards upstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Header to be removed from request", + "maxItems": 32, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Remove Request Headers", + "x-ves-example": "host", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "response_headers_to_add": { + "type": "array", + "description": " Headers are key-value pairs to be added to HTTP response being sent towards downstream.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Headers to add in response", + "maxItems": 32, + "items": { + "$ref": "#/definitions/schemaHeaderManipulationOptionType" + }, + "x-displayname": "Add Response Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } }, - "protected_app_endpoints": { + "response_headers_to_remove": { "type": "array", - "description": "x-displayName: \"App Endpoint Type\"\nx-required\nList of protected application endpoints (max 128 items).", - "title": "AppEndpointType", + "description": " List of keys of Headers to be removed from the HTTP response being sent towards downstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Header to be removed from response", + "maxItems": 32, "items": { - "$ref": "#/definitions/http_loadbalancerAppEndpointType" + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Remove Response Headers", + "x-ves-example": "host", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" } - } - } - }, - "http_loadbalancerShapeBotDefenseRegion": { - "type": "string", - "description": "x-displayName: \"Bot Defense Region\"\nDefines a selection for Bot Defense region\n\n - AUTO: AUTO\n\nx-displayName: \"Auto\"\nAutomatic selection based on client IP address\n - US: US\n\nx-displayName: \"US\"\nUS region\n - EU: EU\n\nx-displayName: \"EU\"\nEuropean Union region\n - ASIA: ASIA\n\nx-displayName: \"Asia\"\nAsia region", - "title": "ShapeBotDefenseRegion", - "enum": [ - "AUTO", - "US", - "EU", - "ASIA" - ], - "default": "AUTO" - }, - "http_loadbalancerShapeBotDefenseType": { - "type": "object", - "description": "x-displayName: \"Bot Defense\"\nThis defines various configuration options for Bot Defense Policy.", - "title": "ShapeBotDefenseType", - "properties": { - "disable_cors_support": { - "description": "x-displayName: \"Disable\"\nBlocks Bot Defense from working with existing CORS policies on your \napplication. This will significantly impact Bot Defense's ability to \nprotect against Bot Attacks.", - "title": "Disable CORS Support", - "$ref": "#/definitions/schemaEmpty" }, - "enable_cors_support": { - "description": "x-displayName: \"Enable\"\nAllows Bot Defense to work with your existing CORS policies.", - "title": "Enable CORS Support", - "$ref": "#/definitions/schemaEmpty" + "retract_cluster": { + "description": "Exclusive with [do_not_retract_cluster]\n When this option is enabled, weighted cluster will not be considered\n for load balancing, if all its endpoints are unhealthy.\n Since the cluster with all unhealthy endpoints is removed, the traffic\n will be distributed among remaining clusters as per their weight.\n Also panic-threshold configuration is ignored for retracted cluster.\n\n This option is ignored when single destination cluster is configured\n for route", + "title": "retract_cluster", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Retract cluster with no healthy endpoints" }, - "policy": { - "description": "x-displayName: \"Bot Defense Policy\"\nx-required\nBot Defense Policy.", - "title": "ShapeBotDefensePolicyType", - "$ref": "#/definitions/http_loadbalancerShapeBotDefensePolicyType" + "retry_policy": { + "description": "Exclusive with [default_retry_policy no_retry_policy]\n Configure custom retry policy", + "title": "Custom Retry Policy", + "$ref": "#/definitions/schemaRetryPolicyType", + "x-displayname": "Custom Retry Policy" }, - "regional_endpoint": { - "description": "x-displayName: \"Bot Defense Region\"\nSpecify Bot Defense region to use\nx-required", - "title": "Bot Defense Region", - "$ref": "#/definitions/http_loadbalancerShapeBotDefenseRegion" + "specific_hash_policy": { + "description": "Exclusive with [common_hash_policy]\n Configure hash policy specific for this route", + "title": "Route Specific Hash Policy", + "$ref": "#/definitions/http_loadbalancerHashPolicyListType", + "x-displayname": "Route Specific Hash Policy" }, "timeout": { "type": "integer", - "description": "x-displayName: \"Timeout\"\nx-example: \"300\"\nThe timeout for the inference check, in milliseconds.", + "description": " The timeout for the route including all retries, in milliseconds.\n Should be set to a high value or 0 (infinite timeout) for server-side streaming.\n\nExample: - \"2000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 600000\n", "title": "timeout", - "format": "int64" - } - } - }, - "http_loadbalancerShapeJavaScriptExclusionRule": { - "type": "object", - "description": "Define JavaScript insertion exclusion rule", - "title": "ShapeJavaScriptExclusionRule", - "x-displayname": "JavaScript Insertion Exclusion Rule", - "x-ves-oneof-field-domain_matcher_choice": "[\"any_domain\",\"domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule", - "properties": { - "any_domain": { - "description": "Exclusive with [domain]\n Any Domain.", - "title": "Any domain", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Any Domain" - }, - "domain": { - "description": "Exclusive with [any_domain]\n Domain matcher.", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType", - "x-displayname": "Domain" - }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", - "x-ves-required": "true", + "format": "int64", + "x-displayname": "Timeout", + "x-ves-example": "2000", "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "600000" } }, - "path": { - "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType", - "x-displayname": "Path", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } + "web_socket_config": { + "description": "Exclusive with [disable_web_socket_config]\n Upgrade to Websocket for this route", + "title": "Websocket Configuration", + "$ref": "#/definitions/routeWebsocketConfigType", + "x-displayname": "Enable Websocket" } } }, - "http_loadbalancerShapeJavaScriptInsertAllType": { + "http_loadbalancerRouteTypeCustomRoute": { "type": "object", - "description": "x-displayName: \"Insert Bot Defense JavaScript in All Pages\"\nInsert Bot Defense JavaScript in all pages", - "title": "ShapeJavaScriptInsertAllType", + "description": "A custom route uses a route object created outside of this view.", + "title": "RouteTypeCustomRoute", + "x-displayname": "Custom Route Object", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute", "properties": { - "javascript_location": { - "description": "x-displayName: \"JavaScript Location\"\nDefines where to insert Bot Defense JavaScript in HTML page.", - "title": "javascript_location", - "$ref": "#/definitions/viewshttp_loadbalancerJavaScriptLocation" + "route_ref": { + "description": " Reference to a custom route object", + "title": "route_refs", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Reference to Custom Route" } } }, - "http_loadbalancerShapeJavaScriptInsertAllWithExceptionsType": { + "http_loadbalancerRouteTypeDirectResponse": { "type": "object", - "description": "x-displayName: \"Insert JavaScript in All Pages with the Exceptions\"\nInsert Bot Defense JavaScript in all pages with the exceptions", - "title": "ShapeJavaScriptInsertAllWithExceptionsType", + "description": "A direct response route matches on path, incoming header, incoming port and/or HTTP method\nand responds directly to the matching traffic", + "title": "RouteTypeDirectResponse", + "x-displayname": "Direct Response Route", + "x-ves-displayorder": "2,1,4,5,3", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeDirectResponse", "properties": { - "exclude_list": { + "headers": { "type": "array", - "description": "x-displayName: \"Exclude Pages\"\nOptional JavaScript insertions exclude list of domain and path matchers.", - "title": "exclude_list", + "description": " List of (key, value) headers\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "headers", + "maxItems": 16, "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" + "$ref": "#/definitions/ioschemaHeaderMatcherType" + }, + "x-displayname": "Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" } }, - "javascript_location": { - "description": "x-displayName: \"JavaScript Location\"\nDefines where to insert Bot Defense JavaScript in HTML page.", - "title": "javascript_location", - "$ref": "#/definitions/viewshttp_loadbalancerJavaScriptLocation" + "http_method": { + "description": " The name of the HTTP Method (GET, PUT, POST, etc)", + "title": "http_method", + "$ref": "#/definitions/schemaHttpMethod", + "x-displayname": "HTTP Method" + }, + "incoming_port": { + "description": " The port on which the request is received", + "title": "incoming_port", + "$ref": "#/definitions/ioschemaPortMatcherType", + "x-displayname": "Match LB port" + }, + "path": { + "description": " URI path of route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "route_direct_response": { + "description": " Send direct response", + "title": "route_direct_response", + "$ref": "#/definitions/routeRouteDirectResponse", + "x-displayname": "Direct Response" } } }, - "http_loadbalancerShapeJavaScriptInsertType": { + "http_loadbalancerRouteTypeRedirect": { "type": "object", - "description": "x-displayName: \"JavaScript Custom Insertion Rules\"\nThis defines custom JavaScript insertion rules for Bot Defense Policy.", - "title": "ShapeJavaScriptInsertType", + "description": "A redirect route matches on path, incoming header, incoming port and/or HTTP method\nand redirects the matching traffic to a different URL", + "title": "RouteTypeRedirect", + "x-displayname": "Redirect Route", + "x-ves-displayorder": "2,1,4,5,3", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeRedirect", "properties": { - "exclude_list": { - "type": "array", - "description": "x-displayName: \"Exclude Paths\"\nOptional JavaScript insertions exclude list of domain and path matchers.", - "title": "exclude_list", - "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" - } - }, - "rules": { + "headers": { "type": "array", - "description": "x-displayName: \"JavaScript Insertions\"\nx-required\nRequired list of pages to insert Bot Defense client JavaScript.", - "title": "rules", + "description": " List of (key, value) headers\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "headers", + "maxItems": 16, "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertionRule" + "$ref": "#/definitions/ioschemaHeaderMatcherType" + }, + "x-displayname": "Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true" } - } - } - }, - "http_loadbalancerShapeJavaScriptInsertionRule": { - "type": "object", - "description": "x-displayName: \"JavaScript Insertion Rule\"\nThis defines a rule for Bot Defense JavaScript insertion.", - "title": "ShapeJavaScriptInsertionRule", - "properties": { - "any_domain": { - "description": "x-displayName: \"Any Domain\"\nAny Domain.", - "title": "Any domain", - "$ref": "#/definitions/schemaEmpty" - }, - "domain": { - "description": "x-displayName: \"Domain\"\nDomain matcher.", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType" }, - "javascript_location": { - "description": "x-displayName: \"JavaScript Location\"\nDefines where to insert Bot Defense JavaScript in HTML page.", - "title": "javascript_location", - "$ref": "#/definitions/viewshttp_loadbalancerJavaScriptLocation" + "http_method": { + "description": " The name of the HTTP Method (GET, PUT, POST, etc)", + "title": "http_method", + "$ref": "#/definitions/schemaHttpMethod", + "x-displayname": "HTTP Method" }, - "metadata": { - "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType" + "incoming_port": { + "description": " The port on which the request is received", + "title": "incoming_port", + "$ref": "#/definitions/ioschemaPortMatcherType", + "x-displayname": "Match LB port" }, "path": { - "description": "x-displayName: \"Path\"\nx-required\nURI path matcher.", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType" + "description": " URI path of route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "route_redirect": { + "description": " Send redirect response", + "title": "route_redirect", + "$ref": "#/definitions/routeRouteRedirect", + "x-displayname": "Redirect Parameters" } } }, - "http_loadbalancerSimpleClientSrcRule": { + "http_loadbalancerRouteTypeSimple": { "type": "object", - "description": "Simple client source rule specifies the sources to be blocked or trusted (skip WAF)", - "title": "SimpleClientSrcRule", - "x-displayname": "Client Rule", - "x-ves-oneof-field-action_choice": "[\"bot_skip_processing\",\"skip_processing\",\"waf_skip_processing\"]", - "x-ves-oneof-field-client_source_choice": "[\"as_number\",\"http_header\",\"ip_prefix\",\"user_identifier\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.SimpleClientSrcRule", + "description": "A simple route matches on path, incoming header, incoming port and/or HTTP method\nand forwards the matching traffic to the associated pools", + "title": "RouteTypeSimple", + "x-displayname": "Simple Route", + "x-ves-displayorder": "2,1,9,10,3,4,8", + "x-ves-oneof-field-host_rewrite_params": "[\"auto_host_rewrite\",\"disable_host_rewrite\",\"host_rewrite\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RouteTypeSimple", "properties": { - "actions": { + "advanced_options": { + "description": " Configure Advanced per route options", + "title": "Advanced Options", + "$ref": "#/definitions/http_loadbalancerRouteSimpleAdvancedOptions", + "x-displayname": "Advanced Options" + }, + "auto_host_rewrite": { + "description": "Exclusive with [disable_host_rewrite host_rewrite]\n Host header will be swapped with hostname of upstream host chosen by the cluster", + "title": "Auto Host Rewrite", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Automatic Host Rewrite" + }, + "disable_host_rewrite": { + "description": "Exclusive with [auto_host_rewrite host_rewrite]\n Host header is not modified", + "title": "Disable Host Rewrite", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Host Rewrite" + }, + "headers": { "type": "array", - "description": " Actions that should be taken when client identifier matches the rule\n\nValidation Rules:\n ves.io.schema.rules.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 10\n ves.io.schema.rules.repeated.unique: true\n", - "title": "actions", - "maxItems": 10, + "description": " List of (key, value) headers\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.unique: true\n", + "title": "headers", + "maxItems": 16, "items": { - "$ref": "#/definitions/http_loadbalancerClientSrcRuleAction" + "$ref": "#/definitions/ioschemaHeaderMatcherType" }, - "x-displayname": "Actions", + "x-displayname": "Headers", "x-ves-validation-rules": { - "ves.io.schema.rules.enum.defined_only": "true", - "ves.io.schema.rules.repeated.max_items": "10", + "ves.io.schema.rules.repeated.max_items": "16", "ves.io.schema.rules.repeated.unique": "true" } }, - "as_number": { - "type": "integer", - "description": "Exclusive with [http_header ip_prefix user_identifier]\n RFC 6793 defined 4-byte AS number\n\nExample: - \"4683\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 401308\n", - "title": "as number", - "format": "int64", - "x-displayname": "AS Number", - "x-ves-example": "4683", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.gte": "1", - "ves.io.schema.rules.uint32.lte": "401308" - } - }, - "bot_skip_processing": { - "description": "Exclusive with [skip_processing waf_skip_processing]\n Skip Bot Defense processing for clients matching this rule.", - "title": "Skip Bot Processing", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Skip Bot Defense Processing" - }, - "expiration_timestamp": { + "host_rewrite": { "type": "string", - "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", - "title": "expiration timestamp", - "format": "date-time", - "x-displayname": "Expiration Timestamp", - "x-ves-example": "2019-12-31:44:34.171543432Z", + "description": "Exclusive with [auto_host_rewrite disable_host_rewrite]\n Host header will be swapped with this value\n\nExample: - \"one.volterra.com\"-\n\nValidation Rules:\n ves.io.schema.rules.string.hostname: true\n", + "title": "HostRewrite", + "x-displayname": "Host Rewrite Value", + "x-ves-example": "one.volterra.com", "x-ves-validation-rules": { - "ves.io.schema.rules.timestamp.within.seconds": "31536000" + "ves.io.schema.rules.string.hostname": "true" } }, - "http_header": { - "description": "Exclusive with [as_number ip_prefix user_identifier]\n Request header name and value pairs", - "title": "HTTP Header", - "$ref": "#/definitions/http_loadbalancerHttpHeaderMatcherList", - "x-displayname": "HTTP Headers" + "http_method": { + "description": " The name of the HTTP Method (GET, PUT, POST, etc)", + "title": "http_method", + "$ref": "#/definitions/schemaHttpMethod", + "x-displayname": "HTTP Method" }, - "ip_prefix": { - "type": "string", - "description": "Exclusive with [as_number http_header user_identifier]\n IPv4 prefix string.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4_prefix: true\n", - "title": "ip prefix", - "x-displayname": "IP Prefix", - "x-ves-example": "192.168.20.0/24", + "incoming_port": { + "description": " The port on which the request is received", + "title": "incoming_port", + "$ref": "#/definitions/ioschemaPortMatcherType", + "x-displayname": "Match LB port" + }, + "origin_pools": { + "type": "array", + "description": " Origin Pools for this route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Origin Pools", + "minItems": 1, + "maxItems": 16, + "items": { + "$ref": "#/definitions/viewsOriginPoolWithWeight" + }, + "x-displayname": "Origin Pools", + "x-ves-required": "true", "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4_prefix": "true" + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" } }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", + "path": { + "description": " URI path of route\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" } + } + } + }, + "http_loadbalancerShapeBotDefensePolicyType": { + "type": "object", + "description": "x-displayName: \"Bot Defense Policy\"\nThis defines various configuration options for Bot Defense policy.", + "title": "ShapeShapeBotDefensePolicyType", + "properties": { + "disable_js_insert": { + "description": "x-displayName: \"Disable JavaScript Insertion\"\nDisable JavaScript insertion.", + "title": "Disable JavaScript Insertion", + "$ref": "#/definitions/schemaEmpty" }, - "skip_processing": { - "description": "Exclusive with [bot_skip_processing waf_skip_processing]\n Skip both WAF and Bot Defense processing for clients matching this rule.", - "title": "Skip Both", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Skip Both" + "disable_mobile_sdk": { + "description": "x-displayName: \"Disable Mobile SDK\"\nDisable Mobile SDK.", + "title": "Disable Mobile SDK", + "$ref": "#/definitions/schemaEmpty" }, - "user_identifier": { + "javascript_mode": { + "description": "x-displayName: \"Web Client JavaScript Mode\"\nx-required\nDetermine the mode in which the JavaScript is loaded into the entry page.\nThe JavaScript is split into 2 chunks.\nThe larger chunk can be loaded asynchronously or synchronously. It can also be cacheable or non-cacheable on the browser.", + "title": "javascript_mode", + "$ref": "#/definitions/schemaJavaScriptMode" + }, + "js_download_path": { "type": "string", - "description": "Exclusive with [as_number http_header ip_prefix]\n Identify user based on user identifier. User identifier value needs to be copied from security event.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", - "title": "user identifier", - "maxLength": 256, - "x-displayname": "User Identifier", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "256" - } + "description": "x-displayName: \"JavaScript Download Path\"\nx-example: \"value\"\nCustomize Bot Defense Client JavaScript path. If not specified, default -/common.js-", + "title": "js_download_path" }, - "waf_skip_processing": { - "description": "Exclusive with [bot_skip_processing skip_processing]\n Skip WAF processing for clients matching this rule.", - "title": "Skip WAF Processing", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Skip WAF Processing" + "js_insert_all_pages": { + "description": "x-displayName: \"Insert JavaScript in All Pages\"\nInsert Bot Defense JavaScript in all pages.", + "title": "Insert JavaScript in All Pages", + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertAllType" + }, + "js_insert_all_pages_except": { + "description": "x-displayName: \"Insert JavaScript in All Pages with the Exceptions\"\nInsert Bot Defense JavaScript in all pages with the exceptions.", + "title": "Insert JavaScript in All Pages with the Exceptions", + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertAllWithExceptionsType" + }, + "js_insertion_rules": { + "description": "x-displayName: \"Custom JavaScript Insertion Rules\"\nSpecify custom JavaScript insertion rules.", + "title": "Custom JavaScript Insertion Rules", + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertType" + }, + "mobile_sdk_config": { + "description": "x-displayName: \"Mobile SDK Configuration\"\nMobile SDK configuration", + "title": "Mobile SDK configuration", + "$ref": "#/definitions/http_loadbalancerMobileSDKConfigType" + }, + "protected_app_endpoints": { + "type": "array", + "description": "x-displayName: \"App Endpoint Type\"\nx-required\nList of protected application endpoints (max 128 items).", + "title": "AppEndpointType", + "items": { + "$ref": "#/definitions/http_loadbalancerAppEndpointType" + } } } }, - "http_loadbalancerSingleLoadBalancerAppSetting": { + "http_loadbalancerShapeBotDefenseRegion": { + "type": "string", + "description": "x-displayName: \"Bot Defense Region\"\nDefines a selection for Bot Defense region\n\n - AUTO: AUTO\n\nx-displayName: \"Auto\"\nAutomatic selection based on client IP address\n - US: US\n\nx-displayName: \"US\"\nUS region\n - EU: EU\n\nx-displayName: \"EU\"\nEuropean Union region\n - ASIA: ASIA\n\nx-displayName: \"Asia\"\nAsia region", + "title": "ShapeBotDefenseRegion", + "enum": [ + "AUTO", + "US", + "EU", + "ASIA" + ], + "default": "AUTO" + }, + "http_loadbalancerShapeBotDefenseType": { "type": "object", - "description": "Specific settings for Machine learning analysis on this HTTP LB, independently from other LBs.", - "title": "Single load balancer app setting", - "x-displayname": "Single Load Balancer App Setting", - "x-ves-oneof-field-api_discovery_choice": "[\"disable_discovery\",\"enable_discovery\"]", - "x-ves-oneof-field-ddos_detection_choice": "[\"disable_ddos_detection\",\"enable_ddos_detection\"]", - "x-ves-oneof-field-malicious_user_detection_choice": "[\"disable_malicious_user_detection\",\"enable_malicious_user_detection\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting", + "description": "x-displayName: \"Bot Defense\"\nThis defines various configuration options for Bot Defense Policy.", + "title": "ShapeBotDefenseType", "properties": { - "disable_ddos_detection": { - "description": "Exclusive with [enable_ddos_detection]\n", - "title": "Disable DDoS detection", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" - }, - "disable_discovery": { - "description": "Exclusive with [enable_discovery]\n", - "title": "Disable API discovery", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "disable_cors_support": { + "description": "x-displayName: \"Disable\"\nBlocks Bot Defense from working with existing CORS policies on your \napplication. This will significantly impact Bot Defense's ability to \nprotect against Bot Attacks.", + "title": "Disable CORS Support", + "$ref": "#/definitions/schemaEmpty" }, - "disable_malicious_user_detection": { - "description": "Exclusive with [enable_malicious_user_detection]\n", - "title": "Disable malicious user detection", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" + "enable_cors_support": { + "description": "x-displayName: \"Enable\"\nAllows Bot Defense to work with your existing CORS policies.", + "title": "Enable CORS Support", + "$ref": "#/definitions/schemaEmpty" }, - "enable_ddos_detection": { - "description": "Exclusive with [disable_ddos_detection]\n", - "title": "Enable DDoS detection", - "$ref": "#/definitions/http_loadbalancerEnableDDoSDetectionSetting", - "x-displayname": "Enable" + "policy": { + "description": "x-displayName: \"Bot Defense Policy\"\nx-required\nBot Defense Policy.", + "title": "ShapeBotDefensePolicyType", + "$ref": "#/definitions/http_loadbalancerShapeBotDefensePolicyType" }, - "enable_discovery": { - "description": "Exclusive with [disable_discovery]\n", - "title": "Enable API discovery", - "$ref": "#/definitions/http_loadbalancerApiDiscoverySetting", - "x-displayname": "Enable" + "regional_endpoint": { + "description": "x-displayName: \"Bot Defense Region\"\nSpecify Bot Defense region to use\nx-required", + "title": "Bot Defense Region", + "$ref": "#/definitions/http_loadbalancerShapeBotDefenseRegion" }, - "enable_malicious_user_detection": { - "description": "Exclusive with [disable_malicious_user_detection]\n", - "title": "Enable malicious user detection", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Enable" + "timeout": { + "type": "integer", + "description": "x-displayName: \"Timeout\"\nx-example: \"300\"\nThe timeout for the inference check, in milliseconds.", + "title": "timeout", + "format": "int64" } } }, - "http_loadbalancerStatusObject": { + "http_loadbalancerShapeJavaScriptExclusionRule": { "type": "object", - "description": "Most recently observed status of object", - "title": "StatusObject", - "x-displayname": "Status", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.StatusObject", + "description": "Define JavaScript insertion exclusion rule", + "title": "ShapeJavaScriptExclusionRule", + "x-displayname": "JavaScript Insertion Exclusion Rule", + "x-ves-oneof-field-domain_matcher_choice": "[\"any_domain\",\"domain\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule", "properties": { - "conditions": { - "type": "array", - "description": " Conditions represent the normalized status values for configuration object", - "title": "conditions", - "items": { - "$ref": "#/definitions/schemaConditionType" - }, - "x-displayname": "Conditions" + "any_domain": { + "description": "Exclusive with [domain]\n Any Domain.", + "title": "Any domain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Any Domain" + }, + "domain": { + "description": "Exclusive with [any_domain]\n Domain matcher.", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType", + "x-displayname": "Domain" }, "metadata": { - "description": " Standard status's metadata", + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "metadata", - "$ref": "#/definitions/schemaStatusMetaType", - "x-displayname": "Metadata" - }, - "object_refs": { - "type": "array", - "description": " HTTP loadbalancer view object direct reference", - "title": "object_refs", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Config Object" + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } }, - "virtual_host_status": { - "description": " DNS related Virtual Host status", - "title": "DNS Virtual Host Status", - "$ref": "#/definitions/virtual_hostDNSVHostStatusType", - "x-displayname": "DNS Virtual Host Status" + "path": { + "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } } } }, - "http_loadbalancerTarget": { + "http_loadbalancerShapeJavaScriptInsertAllType": { "type": "object", - "description": "Define endpoints for which JWT token validation will be performed", - "title": "target", - "x-displayname": "Target", - "x-ves-oneof-field-target": "[\"all_endpoint\",\"api_groups\",\"base_paths\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.Target", + "description": "x-displayName: \"Insert Bot Defense JavaScript in All Pages\"\nInsert Bot Defense JavaScript in all pages", + "title": "ShapeJavaScriptInsertAllType", "properties": { - "all_endpoint": { - "description": "Exclusive with [api_groups base_paths]\n Validation will be performed for all requests on this LB", - "title": "all_endpoint", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "API Inventory" - }, - "api_groups": { - "description": "Exclusive with [all_endpoint base_paths]\n Validation will be performed for the endpoints mentioned in the API Groups", - "title": "api group", - "$ref": "#/definitions/http_loadbalancerAPIGroups", - "x-displayname": "API Groups" - }, - "base_paths": { - "description": "Exclusive with [all_endpoint api_groups]\n Validation will be performed for selected path prefixes", - "title": "base paths", - "$ref": "#/definitions/http_loadbalancerBasePathsType", - "x-displayname": "Base Paths" + "javascript_location": { + "description": "x-displayName: \"JavaScript Location\"\nDefines where to insert Bot Defense JavaScript in HTML page.", + "title": "javascript_location", + "$ref": "#/definitions/viewshttp_loadbalancerJavaScriptLocation" } } }, - "http_loadbalancerTokenLocation": { + "http_loadbalancerShapeJavaScriptInsertAllWithExceptionsType": { "type": "object", - "description": "Location of JWT in Http request", - "title": "token location", - "x-displayname": "Token Location", - "x-ves-oneof-field-token_location": "[\"bearer_token\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.TokenLocation", + "description": "x-displayName: \"Insert JavaScript in All Pages with the Exceptions\"\nInsert Bot Defense JavaScript in all pages with the exceptions", + "title": "ShapeJavaScriptInsertAllWithExceptionsType", "properties": { - "bearer_token": { - "description": "Exclusive with []\n Token is found in Authorization HTTP header with Bearer authentication scheme", - "title": "bearer token", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Bearer Token" + "exclude_list": { + "type": "array", + "description": "x-displayName: \"Exclude Pages\"\nOptional JavaScript insertions exclude list of domain and path matchers.", + "title": "exclude_list", + "items": { + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" + } + }, + "javascript_location": { + "description": "x-displayName: \"JavaScript Location\"\nDefines where to insert Bot Defense JavaScript in HTML page.", + "title": "javascript_location", + "$ref": "#/definitions/viewshttp_loadbalancerJavaScriptLocation" } } }, - "http_loadbalancerURLScheme": { - "type": "string", - "description": "x-displayName: \"URL Scheme\"\nSchemeType is used to indicate URL scheme.\n\n - BOTH: BOTH\n\nx-displayName: \"BOTH\"\nURL scheme for https:// or http://.\n - HTTP: HTTP\n\nx-displayName: \"HTTP\"\nURL scheme http:// only.\n - HTTPS: HTTPS\n\nx-displayName: \"HTTPS\"\nURL scheme https:// only.", - "title": "URLSchemeType", - "enum": [ - "BOTH", - "HTTP", - "HTTPS" - ], - "default": "BOTH" - }, - "http_loadbalancerValidateApiBySpecRule": { + "http_loadbalancerShapeJavaScriptInsertType": { "type": "object", - "description": "Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other api-endpoint not listed will act according to \"Fall Through Mode\".", - "title": "ValidateApiBySpecRule", - "x-displayname": "Custom List", - "x-ves-oneof-field-oversized_body_choice": "[]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ValidateApiBySpecRule", + "description": "x-displayName: \"JavaScript Custom Insertion Rules\"\nThis defines custom JavaScript insertion rules for Bot Defense Policy.", + "title": "ShapeJavaScriptInsertType", "properties": { - "fall_through_mode": { - "description": " Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Fall Through Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiFallThroughMode", - "x-displayname": "Fall Through Mode", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "exclude_list": { + "type": "array", + "description": "x-displayName: \"Exclude Paths\"\nOptional JavaScript insertions exclude list of domain and path matchers.", + "title": "exclude_list", + "items": { + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" } }, - "open_api_validation_rules": { + "rules": { "type": "array", - "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", - "title": "Validation List", - "maxItems": 15, + "description": "x-displayName: \"JavaScript Insertions\"\nx-required\nRequired list of pages to insert Bot Defense client JavaScript.", + "title": "rules", "items": { - "$ref": "#/definitions/http_loadbalancerOpenApiValidationRule" - }, - "x-displayname": "Validation List", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "15", - "ves.io.schema.rules.repeated.unique_metadata_name": "true" + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptInsertionRule" } - }, - "settings": { - "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", - "title": "OpenAPI specification validation common settings", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationCommonSettings", - "x-displayname": "OpenAPI specification validation settings" } } }, - "http_loadbalancerValidationPropertySetting": { + "http_loadbalancerShapeJavaScriptInsertionRule": { "type": "object", - "description": "Custom property validation settings", - "title": "Validation Property settings", - "x-displayname": "Validation Property Settings", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ValidationPropertySetting", + "description": "x-displayName: \"JavaScript Insertion Rule\"\nThis defines a rule for Bot Defense JavaScript insertion.", + "title": "ShapeJavaScriptInsertionRule", "properties": { - "queryParameters": { - "description": " Custom settings for query parameters validation", - "title": "Query parameters validation settings", - "$ref": "#/definitions/http_loadbalancerValidationSettingForQueryParameters", - "x-displayname": "Validation Settings For Query Parameters" + "any_domain": { + "description": "x-displayName: \"Any Domain\"\nAny Domain.", + "title": "Any domain", + "$ref": "#/definitions/schemaEmpty" + }, + "domain": { + "description": "x-displayName: \"Domain\"\nDomain matcher.", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType" + }, + "javascript_location": { + "description": "x-displayName: \"JavaScript Location\"\nDefines where to insert Bot Defense JavaScript in HTML page.", + "title": "javascript_location", + "$ref": "#/definitions/viewshttp_loadbalancerJavaScriptLocation" + }, + "metadata": { + "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType" + }, + "path": { + "description": "x-displayName: \"Path\"\nx-required\nURI path matcher.", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType" } } }, - "http_loadbalancerValidationSettingForHeaders": { + "http_loadbalancerSingleLoadBalancerAppSetting": { "type": "object", - "description": "x-displayName: \"Validation Settings For Headers\"\nCustom settings for headers validation", - "title": "Validation Settings For Headers", + "description": "Specific settings for Machine learning analysis on this HTTP LB, independently from other LBs.", + "title": "Single load balancer app setting", + "x-displayname": "Single Load Balancer App Setting", + "x-ves-oneof-field-api_discovery_choice": "[\"disable_discovery\",\"enable_discovery\"]", + "x-ves-oneof-field-malicious_user_detection_choice": "[\"disable_malicious_user_detection\",\"enable_malicious_user_detection\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting", "properties": { - "allow_additional_headers": { - "description": "x-displayName: \"Allow\"\nAllow extra headers (on top of what specified in the OAS documentation)", - "title": "Allow", - "$ref": "#/definitions/schemaEmpty" + "disable_discovery": { + "description": "Exclusive with [enable_discovery]\n", + "title": "Disable API discovery", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" }, - "disallow_additional_headers": { - "description": "x-displayName: \"Disallow\"\nDisallow extra headers (on top of what specified in the OAS documentation)", - "title": "Custom settings", - "$ref": "#/definitions/schemaEmpty" + "disable_malicious_user_detection": { + "description": "Exclusive with [enable_malicious_user_detection]\n", + "title": "Disable malicious user detection", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable" + }, + "enable_discovery": { + "description": "Exclusive with [disable_discovery]\n", + "title": "Enable API discovery", + "$ref": "#/definitions/common_wafApiDiscoverySetting", + "x-displayname": "Enable" + }, + "enable_malicious_user_detection": { + "description": "Exclusive with [disable_malicious_user_detection]\n", + "title": "Enable malicious user detection", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable" } } }, - "http_loadbalancerValidationSettingForQueryParameters": { + "http_loadbalancerStatusObject": { "type": "object", - "description": "Custom settings for query parameters validation", - "title": "Validation Settings For Query Parameters", - "x-displayname": "Validation Settings For Query Parameters", - "x-ves-oneof-field-additional_parameters_choice": "[\"allow_additional_parameters\",\"disallow_additional_parameters\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ValidationSettingForQueryParameters", + "description": "Most recently observed status of object", + "title": "StatusObject", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.StatusObject", "properties": { - "allow_additional_parameters": { - "description": "Exclusive with [disallow_additional_parameters]\n Allow extra query parameters (on top of what specified in the OAS documentation)", - "title": "Allow", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Allow" + "conditions": { + "type": "array", + "description": " Conditions represent the normalized status values for configuration object", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" }, - "disallow_additional_parameters": { - "description": "Exclusive with [allow_additional_parameters]\n Disallow extra query parameters (on top of what specified in the OAS documentation)", - "title": "Custom settings", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disallow" + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " HTTP loadbalancer view object direct reference", + "title": "object_refs", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Config Object" + }, + "virtual_host_status": { + "description": " DNS related Virtual Host status", + "title": "DNS Virtual Host Status", + "$ref": "#/definitions/virtual_hostDNSVHostStatusType", + "x-displayname": "DNS Virtual Host Status" } } }, + "http_loadbalancerURLScheme": { + "type": "string", + "description": "x-displayName: \"URL Scheme\"\nSchemeType is used to indicate URL scheme.\n\n - BOTH: BOTH\n\nx-displayName: \"BOTH\"\nURL scheme for https:// or http://.\n - HTTP: HTTP\n\nx-displayName: \"HTTP\"\nURL scheme http:// only.\n - HTTPS: HTTPS\n\nx-displayName: \"HTTPS\"\nURL scheme https:// only.", + "title": "URLSchemeType", + "enum": [ + "BOTH", + "HTTP", + "HTTPS" + ], + "default": "BOTH" + }, "http_loadbalancerWebMobileTrafficType": { "type": "object", "description": "x-displayName: \"Web and Mobile traffic type\"\nWeb and Mobile traffic type", @@ -7456,9 +7419,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Origin Pool Advanced Options", "x-ves-oneof-field-circuit_breaker_choice": "[\"circuit_breaker\",\"default_circuit_breaker\",\"disable_circuit_breaker\"]", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", - "x-ves-oneof-field-lb_source_ip_persistance_choice": "[]", + "x-ves-oneof-field-lb_source_ip_persistance_choice": "[\"disable_lb_source_ip_persistance\",\"enable_lb_source_ip_persistance\"]", "x-ves-oneof-field-outlier_detection_choice": "[\"disable_outlier_detection\",\"outlier_detection\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_choice": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-oneof-field-subset_choice": "[\"disable_subsets\",\"enable_subsets\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginPoolAdvancedOptions", "properties": { @@ -7497,34 +7461,46 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable Circuit Breaker" }, + "disable_lb_source_ip_persistance": { + "description": "Exclusive with [enable_lb_source_ip_persistance]\n Disable LB source IP persistence", + "title": "disable_lb_source_ip_persistence", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable LB Source IP persistence" + }, "disable_outlier_detection": { "description": "Exclusive with [outlier_detection]\n Outlier detection is disabled", "title": "Disable Outlier Detection", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable Outlier Detection" }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "title": "Disable Proxy Protocol", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "disable_subsets": { "description": "Exclusive with [enable_subsets]\n Subset load balancing is disabled. All eligible origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Disabled", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable Subset Load Balancing" }, + "enable_lb_source_ip_persistance": { + "description": "Exclusive with [disable_lb_source_ip_persistance]\n Enable LB source IP persistence", + "title": "enable_lb_source_ip_persistence", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable LB Source IP persistence" + }, "enable_subsets": { "description": "Exclusive with [disable_subsets]\n Subset load balancing is enabled. Based on route, subset of origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Enable", "$ref": "#/definitions/origin_poolOriginPoolSubsets", "x-displayname": "Enable Subset Load Balancing" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "title": "Header transformation", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", "title": "http1_config", - "$ref": "#/definitions/schemaEmpty", + "$ref": "#/definitions/schemaclusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -7565,6 +7541,18 @@ var APISwaggerJSON string = `{ "x-ves-validation-rules": { "ves.io.schema.rules.uint32.lte": "100" } + }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol Version 1 for upstream connections", + "title": "Proxy Protocol V1", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol Version 2 for upstream connections", + "title": "Proxy Protocol V2", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proxy Protocol V2" } } }, @@ -7750,12 +7738,12 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateIP", "x-displayname": "IP address on given Sites", "x-ves-displayorder": "10,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-oneof-field-private_ip_choice": "[\"ip\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateIP", "properties": { "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Inside Network" @@ -7781,11 +7769,21 @@ var APISwaggerJSON string = `{ } }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Outside Network" }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -7804,7 +7802,7 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateName", "x-displayname": "DNS Name on given Sites", "x-ves-displayorder": "1,6,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateName", "properties": { "dns_name": { @@ -7819,13 +7817,13 @@ var APISwaggerJSON string = `{ } }, "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Inside Network" }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Outside Network" @@ -7841,6 +7839,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "604800" } }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -7921,131 +7929,28 @@ var APISwaggerJSON string = `{ } } }, - "origin_poolOriginServerSegmentIP": { - "type": "object", - "description": "Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site", - "x-ves-displayorder": "1,4,5", - "x-ves-oneof-field-ip_choice": "[\"ip\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentIP", - "properties": { - "ip": { - "type": "string", - "description": "Exclusive with []\n Private IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", - "title": "IP", - "x-displayname": "IP", - "x-ves-example": "8.8.8.8", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4": "true" - } - }, - "ipv6": { - "type": "string", - "description": " Private IPV6 address\n\nExample: - \"2001::10\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", - "title": "IP6", - "x-displayname": "IP6", - "x-ves-example": "2001::10", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv6": "true" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud Edge or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "origin_poolOriginServerSegmentName": { - "type": "object", - "description": "Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites", - "x-ves-displayorder": "1,2,3,4", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentName", - "properties": { - "dns_name": { - "type": "string", - "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "DNS name", - "x-displayname": "DNS Name", - "x-ves-example": "value", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "refresh_interval": { - "type": "integer", - "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", - "title": "refresh_interval", - "format": "int64", - "x-displayname": "DNS Refresh interval", - "x-ves-example": "20", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "604800" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud RE Region or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, "origin_poolOriginServerType": { "type": "object", "description": "Various options to specify origin server", "title": "OriginServerType", "x-displayname": "Origin Server", - "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"segment_ip\",\"segment_name\",\"vn_private_ip\",\"vn_private_name\"]", + "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"vn_private_ip\",\"vn_private_name\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerType", "properties": { "consul_service": { - "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", + "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", "title": "OriginServerConsulService", "$ref": "#/definitions/origin_poolOriginServerConsulService", "x-displayname": "Consul Service Name of Origin Server on given Sites" }, "custom_endpoint_object": { - "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", + "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", "title": "OriginServerCustomEndpoint", "$ref": "#/definitions/origin_poolOriginServerCustomEndpoint", "x-displayname": "Custom Endpoint Object for Origin Server" }, "k8s_service": { - "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", "title": "OriginServerK8SService", "$ref": "#/definitions/origin_poolOriginServerK8SService", "x-displayname": "K8s Service Name of Origin Server on given Sites" @@ -8058,49 +7963,37 @@ var APISwaggerJSON string = `{ "x-ves-example": "value" }, "private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", "title": "OriginServerPrivateIP", "$ref": "#/definitions/origin_poolOriginServerPrivateIP", "x-displayname": "IP address of Origin Server on given Sites" }, "private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", "title": "OriginServerPrivateName", "$ref": "#/definitions/origin_poolOriginServerPrivateName", "x-displayname": "DNS Name of Origin Server on given Sites" }, "public_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public IP", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name vn_private_ip vn_private_name]\n Specify origin server with public IP", "title": "OriginServerPublicIP", "$ref": "#/definitions/origin_poolOriginServerPublicIP", "x-displayname": "Public IP of Origin Server" }, "public_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public DNS name", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip vn_private_ip vn_private_name]\n Specify origin server with public DNS name", "title": "OriginServerPublicName", "$ref": "#/definitions/origin_poolOriginServerPublicName", "x-displayname": "Public DNS Name of Origin Server" }, - "segment_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_name vn_private_ip vn_private_name]\n Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "$ref": "#/definitions/origin_poolOriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site" - }, - "segment_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip vn_private_ip vn_private_name]\n Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "$ref": "#/definitions/origin_poolOriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites" - }, "vn_private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkIP", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkIP", "x-displayname": "IP address on Virtual Network" }, "vn_private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkName", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkName", "x-displayname": "Name on Virtual Network" @@ -8560,14 +8453,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -9166,7 +9059,7 @@ var APISwaggerJSON string = `{ }, "max_total_length": { "type": "integer", - "description": " Specify maximum length in bytes for the GraphQL query.\n\nExample: - \"5000\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 8096\n", + "description": " Specify maximum length in bytes for the GraphQL query.\n\nExample: - \"5000\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 16386\n", "title": "Max Total Length", "format": "int64", "x-displayname": "Maximum Total Length", @@ -9175,7 +9068,7 @@ var APISwaggerJSON string = `{ "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.uint32.gte": "0", - "ves.io.schema.rules.uint32.lte": "8096" + "ves.io.schema.rules.uint32.lte": "16386" } } } @@ -9292,6 +9185,55 @@ var APISwaggerJSON string = `{ } } }, + "policyJWTClaimMatcherType": { + "type": "object", + "description": "A JWT claim matcher specifies the name of a single JWT claim and the criteria for the input request to match it.\nThe input has a list of actual values for each JWT claim name in the JWT payload.\nA JWT claim matcher can check for one of the following:\n* Presence or absence of the JWT Claim in the input\n* At least one of the values for the JWT Claim in the input satisfies the MatcherType item", + "title": "JWTClaimMatcherType", + "x-displayname": "JWT Claim Matcher", + "x-ves-displayorder": "1,2,6", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.JWTClaimMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the JWT Claim is not present.", + "title": "check_not_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the JWT Claim is present.", + "title": "check_present", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the JWT Claim. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { + "type": "string", + "description": " JWT claim name.\n\nExample: - \"user_id\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "JWT Claim Name", + "x-ves-example": "user_id", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, "policyKnownTlsFingerprintClass": { "type": "string", "description": "Specifies known TLS fingerprint classes\n\n - TLS_FINGERPRINT_NONE: TLS_FINGERPRINT_NONE\n\nNo TLS fingerprint\n - ANY_MALICIOUS_FINGERPRINT: ANY_MALICIOUS_FINGERPRINT\n\nTLS fingerprints known to be associated with malicious clients\n - ADWARE: ADWARE\n\nTLS fingerprints known to be associated with adware\n - ADWIND: ADWIND\n\nTLS fingerprints known to be associated with adwind\n - DRIDEX: DRIDEX\n\nTLS fingerprints known to be associated with dridex\n - GOOTKIT: GOOTKIT\n\nTLS fingerprints known to be associated with gootkit\n - GOZI: GOZI\n\nTLS fingerprints known to be associated with gozi\n - JBIFROST: JBIFROST\n\nTLS fingerprints known to be associated with jbifrost\n - QUAKBOT: QUAKBOT\n\nTLS fingerprints known to be associated with quakbot\n - RANSOMWARE: RANSOMWARE\n\nTLS fingerprints known to be associated with ransomware\n - TROLDESH: TROLDESH\n\nTLS fingerprints known to be associated with troldesh\n - TOFSEE: TOFSEE\n\nTLS fingerprints known to be associated with tofsee\n - TORRENTLOCKER: TORRENTLOCKER\n\nTLS fingerprints known to be associated with torrentlocker\n - TRICKBOT: TRICKBOT\n\nTLS fingerprints known to be associated with trickbot", @@ -9624,6 +9566,19 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.repeated.max_items": "16" } }, + "jwt_claims": { + "type": "array", + "description": " A list of predicates for various JWT claims that need to match. The criteria for matching each JWT claim are described in individual JWTClaimMatcherType\n instances. The actual JWT claims values are extracted from the JWT payload as a list of strings.\n Note that all specified JWT claim predicates must evaluate to true.\n Note that this feature only works on LBs with JWT Validation feature enabled.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "JWT claims", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyJWTClaimMatcherType" + }, + "x-displayname": "JWT Claims", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, "query_params": { "type": "array", "description": " A list of predicates for all query parameters that need to be matched. The criteria for matching each query parameter are described in individual instances\n of QueryParameterMatcherType. The actual query parameter values are extracted from the request API as a list of strings for each query parameter name.\n Note that all specified query parameter predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", @@ -11493,23 +11448,29 @@ var APISwaggerJSON string = `{ "title": "HeaderTransformationType", "x-displayname": "Header Transformation", "x-ves-displayorder": "1", - "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "Exclusive with [preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Default" }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Legacy" + }, "preserve_case_header_transformation": { - "description": "Exclusive with [default_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "Exclusive with [default_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Proper Case" @@ -11760,10 +11721,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -11827,18 +11792,35 @@ var APISwaggerJSON string = `{ }, "schemaRegexMatchRewrite": { "type": "object", - "description": "x-displayName: \"Regex Match Rewrite\"\nRegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", + "description": "RegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", "title": "RegexMatchRewrite", + "x-displayname": "Regex Match Rewrite", + "x-ves-proto-message": "ves.io.schema.RegexMatchRewrite", "properties": { "pattern": { "type": "string", - "description": "x-displayName: \"Pattern\"\nx-example: \"^/service/([^/]+)(/.*)$\"\nThe regular expression used to find portions of a string that should be replaced.", - "title": "Pattern" + "description": " The regular expression used to find portions of a string that should be replaced.\n\nExample: - \"^/service/([^/]+)(/.*)$\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.regex: true\n", + "title": "Pattern", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Pattern", + "x-ves-example": "^/service/([^/]+)(/.*)$", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true" + } }, "substitution": { "type": "string", - "description": "x-displayName: \"Substitution\"\nx-example: \"\\\\2/instance/\\\\1\"\nThe string that should be substituted into matching portions of the subject string during a \nsubstitution operation to produce a new string.", - "title": "Substitution" + "description": " The string that should be substituted into matching portions of the subject string during a \n substitution operation to produce a new string.\n\nExample: - \"\\\\2/instance/\\\\1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Substitution", + "maxLength": 256, + "x-displayname": "Substitution", + "x-ves-example": "\\\\2/instance/\\\\1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } } } }, @@ -12411,6 +12393,21 @@ var APISwaggerJSON string = `{ "x-displayname": "XFCC Elements", "x-ves-proto-enum": "ves.io.schema.XfccElement" }, + "schemaclusterHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for upstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.cluster.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to the upstream request headers and when a\n Stateful formatter is selected, it applies to response headers sent to the client.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on http load balancer. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "schemapolicyHeaderMatcherType": { "type": "object", "description": "A header matcher specifies the name of a single HTTP header and the criteria for the input request to match it. The input has a list of actual values for each\nheader name in the original HTTP request.\nA header matcher can check for one of the following:\n* Presence or absence of the header in the input\n* At least one of the values for the header in the input satisfies the MatcherType item", @@ -12744,6 +12741,21 @@ var APISwaggerJSON string = `{ } } }, + "schemavirtual_hostHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for downstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.virtual_host.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to response headers sent to the client and when a\n Stateful formatter is selected, it applies to the upstream request headers.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on origin pool. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "service_policy_ruleChallengeRuleSpec": { "type": "object", "description": "A Challenge Rule consists of an unordered list of predicates and an action. The predicates are evaluated against a set of input fields that are extracted from\nor derived from an L7 request API. A request API is considered to match the rule if all predicates in the rule evaluate to true for that request. Any\npredicates that are not specified in a rule are implicitly considered to be true. If a request API matches a challenge rule, the configured challenge is\nenforced.", @@ -13370,34 +13382,6 @@ var APISwaggerJSON string = `{ "x-displayname": "Site Network", "x-ves-proto-enum": "ves.io.schema.views.SiteNetwork" }, - "viewsSiteRegionLocator": { - "type": "object", - "description": "This message defines reference to site or virtual site or a cloud-re-region object", - "title": "SiteRegionLocator", - "x-displayname": "Select Site or Virtual Site or Cloud Edge", - "x-ves-oneof-field-choice": "[\"cloud_re_region\",\"site\",\"virtual_site\"]", - "x-ves-proto-message": "ves.io.schema.views.SiteRegionLocator", - "properties": { - "cloud_re_region": { - "description": "Exclusive with [site virtual_site]\n Reference to a Cloud Edge", - "title": "Cloud Edge", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Cloud Edge" - }, - "site": { - "description": "Exclusive with [cloud_re_region virtual_site]\n Reference to site object", - "title": "site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Site" - }, - "virtual_site": { - "description": "Exclusive with [cloud_re_region site]\n Reference to virtual site object", - "title": "Virtual Site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Site" - } - } - }, "viewsTlsConfig": { "type": "object", "description": "This defines various options to configure TLS configuration parameters", @@ -13555,9 +13539,9 @@ var APISwaggerJSON string = `{ }, "network": { "description": " Select network types to be used on site\n By default VIP chosen as ip address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -13768,10 +13752,10 @@ var APISwaggerJSON string = `{ } }, "virtual_network": { - "description": " Select virtual network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Virtual Network", + "description": " Select network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -13789,9 +13773,9 @@ var APISwaggerJSON string = `{ "properties": { "network": { "description": " Select network types to be used on site.\n IP address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -13885,6 +13869,117 @@ var APISwaggerJSON string = `{ } } }, + "viewscommon_wafIPThreatCategoryListType": { + "type": "object", + "description": "List of ip threat categories", + "title": "IP Threat Category List Type", + "x-displayname": "IP Threat Category List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.IPThreatCategoryListType", + "properties": { + "ip_threat_categories": { + "type": "array", + "description": " If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IP Threat Categories", + "maxItems": 32, + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "List of IP Threat Categories to choose", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "viewscommon_wafPolicyBasedChallenge": { + "type": "object", + "description": "Specifies the settings for policy rule based challenge", + "title": "policy based challenge", + "x-displayname": "Policy Based Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-challenge_choice": "[\"always_enable_captcha_challenge\",\"always_enable_js_challenge\",\"no_challenge\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-oneof-field-temporary_blocking_parameters_choice": "[\"default_temporary_blocking_parameters\",\"temporary_user_blocking\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.PolicyBasedChallenge", + "properties": { + "always_enable_captcha_challenge": { + "description": "Exclusive with [always_enable_js_challenge no_challenge]\n Enable Captcha challenge for all requests.\n Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.", + "title": "always enable captcha challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Always enable Captcha Challenge" + }, + "always_enable_js_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge no_challenge]\n Enable JavaScript challenge for all requests.\n Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.", + "title": "always enable JS challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Always enable JS Challenge" + }, + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" + }, + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_js_challenge_parameters": { + "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_mitigation_settings": { + "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + }, + "default_temporary_blocking_parameters": { + "description": "Exclusive with [temporary_user_blocking]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "js_challenge_parameters": { + "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge Parameters" + }, + "malicious_user_mitigation": { + "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", + "title": "Malicious User Mitigation", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Custom" + }, + "no_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge always_enable_js_challenge]\n Disable JavaScript and Captcha challenge for all requests.\n Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.", + "title": "no_challenge", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "None" + }, + "rule_list": { + "description": " list challenge rules to be used in policy based challenge", + "title": "Challenge rule list", + "$ref": "#/definitions/common_wafChallengeRuleList", + "x-displayname": "Challenge rule list" + }, + "temporary_user_blocking": { + "description": "Exclusive with [default_temporary_blocking_parameters]\n Specifies configuration for temporary user blocking resulting from malicious user detection", + "title": "Temporary User Blocking", + "$ref": "#/definitions/virtual_hostTemporaryUserBlockingType", + "x-displayname": "Temporary User Blocking Parameters" + } + } + }, "viewshttp_loadbalancerGlobalSpecType": { "type": "object", "description": "Shape of the HTTP load balancer specification", @@ -13896,7 +13991,6 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-bot_defense_choice": "[]", "x-ves-oneof-field-challenge_type": "[\"captcha_challenge\",\"enable_challenge\",\"js_challenge\",\"no_challenge\",\"policy_based_challenge\"]", "x-ves-oneof-field-client_side_defense_choice": "[\"client_side_defense\",\"disable_client_side_defense\"]", - "x-ves-oneof-field-ddos_detection_choice": "[\"disable_ddos_detection\",\"enable_ddos_detection\"]", "x-ves-oneof-field-hash_policy_choice": "[\"cookie_stickiness\",\"least_active\",\"random\",\"ring_hash\",\"round_robin\",\"source_ip_stickiness\"]", "x-ves-oneof-field-host_rewrite_params": "[\"auto_host_rewrite\",\"disable_host_rewrite\",\"host_rewrite\"]", "x-ves-oneof-field-ip_reputation_choice": "[\"disable_ip_reputation\",\"enable_ip_reputation\"]", @@ -13908,7 +14002,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-rate_limit_choice": "[\"api_rate_limit\",\"disable_rate_limit\",\"rate_limit\"]", "x-ves-oneof-field-service_policy_choice": "[\"active_service_policies\",\"no_service_policies\",\"service_policies_from_namespace\"]", "x-ves-oneof-field-slow_ddos_mitigation_choice": "[\"slow_ddos_mitigation\",\"system_default_timeouts\"]", - "x-ves-oneof-field-threat_intelligence_choice": "[\"disable_threat_intelligence\",\"enable_threat_intelligence\"]", + "x-ves-oneof-field-threat_mesh_choice": "[\"disable_threat_mesh\",\"enable_threat_mesh\"]", "x-ves-oneof-field-trust_client_ip_headers_choice": "[\"disable_trust_client_ip_headers\",\"enable_trust_client_ip_headers\"]", "x-ves-oneof-field-user_id_choice": "[\"user_id_client_ip\",\"user_identification\"]", "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\"]", @@ -13917,7 +14011,7 @@ var APISwaggerJSON string = `{ "active_service_policies": { "description": "Exclusive with [no_service_policies service_policies_from_namespace]\n Apply the specified list of service policies and bypass the namespace service policy set", "title": "Apply Specified Service Policies", - "$ref": "#/definitions/http_loadbalancerServicePolicyList", + "$ref": "#/definitions/common_wafServicePolicyList", "x-displayname": "Apply Specified Service Policies" }, "add_location": { @@ -13949,19 +14043,19 @@ var APISwaggerJSON string = `{ "api_protection_rules": { "description": " API Protection Rules can be defined in two categories.\n The first category includes fine-grained rules, per API path and methods.\n The second category includes rules per API groups or Server URLs.\n If request matches any rule in the first category, second category rules are not evaluated.\n Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.", "title": "API Protection rules", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRules", + "$ref": "#/definitions/common_wafAPIProtectionRules", "x-displayname": "API Protection Rules" }, "api_rate_limit": { "description": "Exclusive with [disable_rate_limit rate_limit]\n Define rate limiting for one or more API endpoints", "title": "Rate Limiting Parameters", - "$ref": "#/definitions/http_loadbalancerAPIRateLimit", + "$ref": "#/definitions/common_wafAPIRateLimit", "x-displayname": "API Rate Limit" }, "api_specification": { "description": "Exclusive with [disable_api_definition]\n Specify API definition and OpenAPI Validation", "title": "API Specification", - "$ref": "#/definitions/http_loadbalancerAPISpecificationSettings", + "$ref": "#/definitions/common_wafAPISpecificationSettings", "x-displayname": "Enable" }, "app_firewall": { @@ -13988,7 +14082,7 @@ var APISwaggerJSON string = `{ "title": "Client Blocking Rules", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Client Blocking Rules", "x-ves-validation-rules": { @@ -14104,12 +14198,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable" }, - "disable_ddos_detection": { - "description": "Exclusive with [enable_ddos_detection]\n", - "title": "Disable DDoS detection", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Disable" - }, "disable_host_rewrite": { "description": "Exclusive with [auto_host_rewrite host_rewrite]\n Host header is not modified", "title": "Disable Host Rewrite", @@ -14134,9 +14222,9 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable" }, - "disable_threat_intelligence": { - "description": "Exclusive with [enable_threat_intelligence]\n", - "title": "disable_threat_intelligence", + "disable_threat_mesh": { + "description": "Exclusive with [enable_threat_mesh]\n", + "title": "disable_threat_mesh", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable" }, @@ -14194,25 +14282,19 @@ var APISwaggerJSON string = `{ "enable_api_discovery": { "description": "Exclusive with [disable_api_discovery]\n", "title": "Enable API discovery", - "$ref": "#/definitions/http_loadbalancerApiDiscoverySetting", + "$ref": "#/definitions/common_wafApiDiscoverySetting", "x-displayname": "Enable" }, "enable_challenge": { "description": "Exclusive with [captcha_challenge js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users", "title": "Enable", - "$ref": "#/definitions/http_loadbalancerEnableChallenge", - "x-displayname": "Enable" - }, - "enable_ddos_detection": { - "description": "Exclusive with [disable_ddos_detection]\n", - "title": "Enable DDoS detection", - "$ref": "#/definitions/http_loadbalancerEnableDDoSDetectionSetting", + "$ref": "#/definitions/common_wafEnableChallenge", "x-displayname": "Enable" }, "enable_ip_reputation": { "description": "Exclusive with [disable_ip_reputation]\n", "title": "enable_ip_reputation", - "$ref": "#/definitions/viewshttp_loadbalancerIPThreatCategoryListType", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", "x-displayname": "Enable" }, "enable_malicious_user_detection": { @@ -14221,9 +14303,9 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "Enable" }, - "enable_threat_intelligence": { - "description": "Exclusive with [disable_threat_intelligence]\n", - "title": "enable_threat_intelligence", + "enable_threat_mesh": { + "description": "Exclusive with [disable_threat_mesh]\n", + "title": "enable_threat_mesh", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Enable" }, @@ -14300,7 +14382,7 @@ var APISwaggerJSON string = `{ "jwt_validation": { "description": " JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\n JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired\n tokens or tokens that are not yet valid.", "title": "JWT Validation", - "$ref": "#/definitions/http_loadbalancerJWTValidation", + "$ref": "#/definitions/common_wafJWTValidation", "x-displayname": "JWT Validation" }, "l7_ddos_action_block": { @@ -14360,7 +14442,7 @@ var APISwaggerJSON string = `{ "policy_based_challenge": { "description": "Exclusive with [captcha_challenge enable_challenge js_challenge no_challenge]\n Specifies the settings for policy rule based challenge", "title": "policy based challenge", - "$ref": "#/definitions/viewshttp_loadbalancerPolicyBasedChallenge", + "$ref": "#/definitions/viewscommon_wafPolicyBasedChallenge", "x-displayname": "Policy Based Challenge" }, "protected_cookies": { @@ -14386,7 +14468,7 @@ var APISwaggerJSON string = `{ "rate_limit": { "description": "Exclusive with [api_rate_limit disable_rate_limit]\n Define custom rate limiting parameters for this load balancer", "title": "Custom Rate Limiting Parameters", - "$ref": "#/definitions/http_loadbalancerRateLimitConfigType", + "$ref": "#/definitions/common_wafRateLimitConfigType", "x-displayname": "Custom Rate Limiting Parameters" }, "ring_hash": { @@ -14457,7 +14539,7 @@ var APISwaggerJSON string = `{ "title": "Trusted Client Rules", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Trusted Client Rules", "x-ves-validation-rules": { @@ -14493,31 +14575,6 @@ var APISwaggerJSON string = `{ } } }, - "viewshttp_loadbalancerIPThreatCategoryListType": { - "type": "object", - "description": "List of ip threat categories", - "title": "IP Threat Category List Type", - "x-displayname": "IP Threat Category List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.IPThreatCategoryListType", - "properties": { - "ip_threat_categories": { - "type": "array", - "description": " If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "IP Threat Categories", - "maxItems": 32, - "items": { - "$ref": "#/definitions/policyIPThreatCategory" - }, - "x-displayname": "List of IP Threat Categories to choose", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, "viewshttp_loadbalancerJavaScriptLocation": { "type": "string", "description": "x-displayName: \"JavaScript Location\"\nAll inside networks.\n\n - AFTER_HEAD: x-displayName: \"After \u003chead\u003e tag\"\nInsert JavaScript after \u003chead\u003e tag\n - AFTER_TITLE_END: x-displayName: \"After \u003c/title\u003e tag\"\nInsert JavaScript after \u003c/title\u003e tag.\n - BEFORE_SCRIPT: x-displayName: \"Before \u003cscript\u003e tag\"\nInsert JavaScript before first \u003cscript\u003e tag", @@ -14558,92 +14615,6 @@ var APISwaggerJSON string = `{ } } }, - "viewshttp_loadbalancerPolicyBasedChallenge": { - "type": "object", - "description": "Specifies the settings for policy rule based challenge", - "title": "policy based challenge", - "x-displayname": "Policy Based Challenge", - "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", - "x-ves-oneof-field-challenge_choice": "[\"always_enable_captcha_challenge\",\"always_enable_js_challenge\",\"no_challenge\"]", - "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", - "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", - "x-ves-oneof-field-temporary_blocking_parameters_choice": "[\"default_temporary_blocking_parameters\",\"temporary_user_blocking\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.PolicyBasedChallenge", - "properties": { - "always_enable_captcha_challenge": { - "description": "Exclusive with [always_enable_js_challenge no_challenge]\n Enable Captcha challenge for all requests.\n Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.", - "title": "always enable captcha challenge", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Always enable Captcha Challenge" - }, - "always_enable_js_challenge": { - "description": "Exclusive with [always_enable_captcha_challenge no_challenge]\n Enable JavaScript challenge for all requests.\n Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.", - "title": "always enable JS challenge", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Always enable JS Challenge" - }, - "captcha_challenge_parameters": { - "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", - "title": "Captcha Challenge", - "$ref": "#/definitions/virtual_hostCaptchaChallengeType", - "x-displayname": "Captcha Challenge Parameters" - }, - "default_captcha_challenge_parameters": { - "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Default Parameters" - }, - "default_js_challenge_parameters": { - "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Default Parameters" - }, - "default_mitigation_settings": { - "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", - "title": "default parameters", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Default" - }, - "default_temporary_blocking_parameters": { - "description": "Exclusive with [temporary_user_blocking]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "Use Default Parameters" - }, - "js_challenge_parameters": { - "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", - "title": "JavaScript Challenge", - "$ref": "#/definitions/virtual_hostJavascriptChallengeType", - "x-displayname": "JavaScript Challenge Parameters" - }, - "malicious_user_mitigation": { - "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", - "title": "Malicious User Mitigation", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Custom" - }, - "no_challenge": { - "description": "Exclusive with [always_enable_captcha_challenge always_enable_js_challenge]\n Disable JavaScript and Captcha challenge for all requests.\n Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.", - "title": "no_challenge", - "$ref": "#/definitions/schemaEmpty", - "x-displayname": "None" - }, - "rule_list": { - "description": " list challenge rules to be used in policy based challenge", - "title": "Challenge rule list", - "$ref": "#/definitions/http_loadbalancerChallengeRuleList", - "x-displayname": "Challenge rule list" - }, - "temporary_user_blocking": { - "description": "Exclusive with [default_temporary_blocking_parameters]\n Specifies configuration for temporary user blocking resulting from malicious user detection", - "title": "Temporary User Blocking", - "$ref": "#/definitions/virtual_hostTemporaryUserBlockingType", - "x-displayname": "Temporary User Blocking Parameters" - } - } - }, "viewshttp_loadbalancerRouteType": { "type": "object", "description": "This defines various options to define a route", @@ -14929,8 +14900,9 @@ var APISwaggerJSON string = `{ "properties": { "client_ip_headers": { "type": "array", - "description": " Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning\n if the first header is not present in the request, the system will proceed to check for the second header,\n and so on, until one of the listed headers is found. If none of the defined headers exist, or the value\n is not an IP address, then the system will use the source IP of the packet. If multiple defined headers with\n different names are present in the request, the value of the first header name in the configuration will be used.\n If multiple defined headers with the same name are present in the request, values of all those headers will be combined.\n The system will read the right-most IP address from header, if there are multiple ip addresses in the header value.\n For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip\n\nExample: - \"Client-IP-Header\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 5\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning\n if the first header is not present in the request, the system will proceed to check for the second header,\n and so on, until one of the listed headers is found. If none of the defined headers exist, or the value\n is not an IP address, then the system will use the source IP of the packet. If multiple defined headers with\n different names are present in the request, the value of the first header name in the configuration will be used.\n If multiple defined headers with the same name are present in the request, values of all those headers will be combined.\n The system will read the right-most IP address from header, if there are multiple ip addresses in the header value.\n For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip\n\nExample: - \"Client-IP-Header\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 5\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "Client IP Headers", + "minItems": 1, "maxItems": 5, "items": { "type": "string", @@ -14939,10 +14911,13 @@ var APISwaggerJSON string = `{ }, "x-displayname": "Client IP Headers", "x-ves-example": "Client-IP-Header", + "x-ves-required": "true", "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.items.string.max_bytes": "256", "ves.io.schema.rules.repeated.items.string.min_bytes": "1", "ves.io.schema.rules.repeated.max_items": "5", + "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true" } } @@ -15075,23 +15050,30 @@ var APISwaggerJSON string = `{ }, "virtual_hostHttpProtocolOptions": { "type": "object", - "description": "x-displayName: \"HTTP Protocol Configuration Options\"\nHTTP protocol configuration options for downstream connections", + "description": "HTTP protocol configuration options for downstream connections", "title": "HttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration Options", + "x-ves-displayorder": "1", + "x-ves-oneof-field-http_protocol_choice": "[\"http_protocol_enable_v1_only\",\"http_protocol_enable_v1_v2\",\"http_protocol_enable_v2_only\"]", + "x-ves-proto-message": "ves.io.schema.virtual_host.HttpProtocolOptions", "properties": { "http_protocol_enable_v1_only": { - "description": "x-displayName: \"HTTP/1.1\"\nEnable HTTP/1.1 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_v2 http_protocol_enable_v2_only]\n Enable HTTP/1.1 for downstream connections", "title": "http_protocol_enable_v1_only", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemavirtual_hostHttp1ProtocolOptions", + "x-displayname": "HTTP/1.1" }, "http_protocol_enable_v1_v2": { - "description": "x-displayName: \"HTTP/1.1 and HTTP/2\"\nEnable both HTTP/1.1 and HTTP/2 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v2_only]\n Enable both HTTP/1.1 and HTTP/2 for downstream connections", "title": "http_protocol_enable_v1_v2", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "HTTP/1.1 and HTTP/2" }, "http_protocol_enable_v2_only": { - "description": "x-displayName: \"HTTP/2\"\nEnable HTTP/2 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v1_v2]\n Enable HTTP/2 for downstream connections", "title": "http_protocol_enable_v2_only", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "HTTP/2" } } }, diff --git a/pbgo/extschema/schema/views/http_loadbalancer/object.pb.go b/pbgo/extschema/schema/views/http_loadbalancer/object.pb.go index 1801c3016..db6174923 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/object.pb.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/object.pb.go @@ -245,49 +245,50 @@ func init() { } var fileDescriptor_ec00cb965966d0f2 = []byte{ - // 667 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xcf, 0x4f, 0x13, 0x4d, - 0x18, 0xc7, 0xbb, 0x6d, 0x53, 0xc8, 0x40, 0x78, 0x61, 0x79, 0x0f, 0xfb, 0xf2, 0xea, 0x40, 0x6a, - 0x34, 0x1c, 0xdc, 0x59, 0xc5, 0x10, 0x85, 0x18, 0x0f, 0x40, 0x82, 0x07, 0xc0, 0xa4, 0x35, 0x1e, - 0x30, 0x71, 0x33, 0xbb, 0x7d, 0xba, 0x5d, 0xdd, 0xed, 0x6c, 0x66, 0x66, 0x0b, 0x3d, 0x98, 0x78, - 0xf2, 0xec, 0xd5, 0xab, 0x27, 0x63, 0xe2, 0xff, 0x20, 0x9e, 0x3c, 0x22, 0x27, 0x8e, 0xb2, 0xbd, - 0x78, 0xe4, 0x4f, 0x30, 0x9d, 0x65, 0xa1, 0xbf, 0x62, 0x1a, 0x6e, 0xb3, 0x9d, 0xcf, 0xf7, 0xdb, - 0xe7, 0xd7, 0x3c, 0x68, 0xa5, 0x05, 0x82, 0xf8, 0xcc, 0x12, 0x6e, 0x03, 0x42, 0x6a, 0xb5, 0x7c, - 0x38, 0x10, 0x56, 0x43, 0xca, 0xc8, 0x0e, 0x18, 0xad, 0x39, 0x34, 0xa0, 0x4d, 0x17, 0xb8, 0xc5, - 0x9c, 0xd7, 0xe0, 0x4a, 0x12, 0x71, 0x26, 0x99, 0x7e, 0x3b, 0xd5, 0x90, 0x54, 0x43, 0x94, 0x86, - 0x0c, 0x69, 0x16, 0x4c, 0xcf, 0x97, 0x8d, 0xd8, 0x21, 0x2e, 0x0b, 0x2d, 0x8f, 0x79, 0xcc, 0x52, - 0x6a, 0x27, 0xae, 0xab, 0x2f, 0xf5, 0xa1, 0x4e, 0xa9, 0xeb, 0xc2, 0xff, 0xfd, 0x91, 0xb0, 0x48, - 0xfa, 0xac, 0x29, 0x2e, 0x2e, 0x17, 0xfb, 0x2f, 0x39, 0x8b, 0x25, 0x58, 0xb2, 0x1d, 0x41, 0x06, - 0xfc, 0xd7, 0x0f, 0xf4, 0x5e, 0x95, 0x07, 0x52, 0x04, 0x01, 0xcd, 0xd6, 0x80, 0xff, 0xd2, 0x70, - 0x19, 0xec, 0x7e, 0xe2, 0xfe, 0x78, 0x85, 0xea, 0xfd, 0xe3, 0xc5, 0x51, 0x92, 0x5e, 0xe0, 0xce, - 0x20, 0xc0, 0x65, 0x4c, 0x03, 0xbb, 0xc1, 0x84, 0xec, 0xe5, 0xca, 0xef, 0x8b, 0xa8, 0xf4, 0x4c, - 0x75, 0x40, 0x5f, 0x43, 0x93, 0x21, 0x48, 0x5a, 0xa3, 0x92, 0x1a, 0xda, 0x92, 0xb6, 0x3c, 0xb5, - 0x72, 0x93, 0xf4, 0xb7, 0x23, 0x05, 0x77, 0x41, 0xd2, 0xe7, 0xed, 0x08, 0x2a, 0x97, 0xb8, 0xbe, - 0x83, 0xfe, 0x11, 0x6d, 0x21, 0x21, 0xb4, 0x2f, 0x1d, 0xf2, 0xca, 0xe1, 0xd6, 0x80, 0x43, 0x55, - 0x51, 0x03, 0x3e, 0x33, 0xa9, 0x76, 0x37, 0x73, 0xdb, 0x44, 0x45, 0x11, 0x81, 0x6b, 0x14, 0x94, - 0x85, 0x45, 0xc6, 0x9a, 0x09, 0x52, 0x8d, 0xc0, 0x55, 0x76, 0x4a, 0xbc, 0xfe, 0x35, 0xff, 0xfd, - 0xc8, 0xc8, 0xcf, 0x6a, 0x27, 0x47, 0xc6, 0xa7, 0x3c, 0x7a, 0x88, 0x0a, 0xdb, 0x20, 0xf5, 0x7b, - 0xf5, 0xd5, 0x43, 0xd7, 0x14, 0xe0, 0xc6, 0x1c, 0x42, 0x10, 0x0d, 0xd3, 0xa1, 0xc2, 0x77, 0xcd, - 0x90, 0x35, 0x7d, 0xc9, 0xf8, 0xdd, 0x6e, 0xab, 0x4c, 0x9f, 0x99, 0x11, 0x67, 0x87, 0x6d, 0x93, - 0x03, 0xad, 0xa1, 0x35, 0x34, 0x51, 0x81, 0x28, 0xa0, 0x2e, 0xe8, 0x64, 0xb4, 0x38, 0x16, 0x30, - 0xa8, 0x3c, 0xe0, 0xbe, 0x04, 0xf4, 0x08, 0x95, 0x36, 0x39, 0x50, 0x79, 0x2d, 0xe5, 0x16, 0x04, - 0x70, 0x2d, 0x65, 0x71, 0xc7, 0x17, 0xd7, 0x48, 0xb4, 0xbc, 0x8f, 0x26, 0xb3, 0x0a, 0xea, 0x7b, - 0x68, 0xc2, 0x73, 0x6d, 0xd5, 0x83, 0x74, 0x10, 0x56, 0xc7, 0xec, 0xc1, 0x76, 0xc0, 0x1c, 0x1a, - 0x5c, 0x76, 0xa2, 0xe4, 0xb9, 0xdd, 0x73, 0xf9, 0x67, 0x1e, 0x4d, 0x57, 0x25, 0x95, 0xb1, 0x18, - 0x7b, 0xd4, 0x52, 0x7c, 0xc4, 0xa8, 0x55, 0xd1, 0x54, 0xba, 0x31, 0x6c, 0x0e, 0x75, 0x61, 0xe4, - 0x97, 0x0a, 0xcb, 0x53, 0x2b, 0x37, 0x46, 0x0e, 0x6a, 0x05, 0xea, 0x5d, 0xf1, 0xc6, 0xbf, 0x5f, - 0xde, 0xce, 0x0d, 0xc5, 0x5a, 0x41, 0x2c, 0x83, 0x84, 0xfe, 0x18, 0x21, 0x97, 0x35, 0x6b, 0xbe, - 0x7a, 0x95, 0x46, 0x61, 0xa4, 0xe7, 0x66, 0x06, 0xa8, 0x80, 0x7a, 0x78, 0xfd, 0x15, 0x9a, 0xef, - 0x7d, 0x5f, 0xb6, 0x50, 0xb1, 0x1b, 0x45, 0x95, 0x18, 0x19, 0x2a, 0xdd, 0x15, 0x49, 0xb6, 0xf6, - 0xaa, 0x2f, 0x9e, 0x32, 0x21, 0xd3, 0x6c, 0x95, 0xf1, 0xdc, 0x05, 0x70, 0xf5, 0xf3, 0xfa, 0xfc, - 0xc9, 0x93, 0x59, 0x34, 0x83, 0xa6, 0xb3, 0x1a, 0x90, 0xd8, 0xaf, 0x6d, 0x7c, 0xd4, 0x8e, 0xcf, - 0x70, 0xee, 0xf4, 0x0c, 0xe7, 0xce, 0xcf, 0xb0, 0xf6, 0x2e, 0xc1, 0xda, 0xe7, 0x04, 0x6b, 0x3f, - 0x12, 0xac, 0x1d, 0x27, 0x58, 0x3b, 0x4d, 0xb0, 0xf6, 0x2b, 0xc1, 0xda, 0xef, 0x04, 0xe7, 0xce, - 0x13, 0xac, 0x7d, 0xe8, 0xe0, 0xdc, 0xb7, 0x0e, 0xd6, 0x8e, 0x3b, 0x38, 0x77, 0xda, 0xc1, 0xb9, - 0xfd, 0x97, 0x1e, 0x8b, 0xde, 0x78, 0xa4, 0xc5, 0x02, 0x09, 0x9c, 0x53, 0x12, 0x0b, 0x4b, 0x1d, - 0xea, 0x8c, 0x87, 0xdd, 0xb1, 0x68, 0xf9, 0x35, 0xe0, 0x66, 0x76, 0x6d, 0x45, 0x8e, 0xc7, 0x2c, - 0x38, 0x94, 0x17, 0xeb, 0xe4, 0xef, 0x9b, 0xca, 0x29, 0xa9, 0xdd, 0xf2, 0xe0, 0x4f, 0x00, 0x00, - 0x00, 0xff, 0xff, 0x0e, 0x5f, 0x25, 0x6b, 0x02, 0x06, 0x00, 0x00, + // 686 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xcd, 0x4e, 0x14, 0x4b, + 0x14, 0xc7, 0xa7, 0x67, 0xb8, 0x03, 0x29, 0x08, 0x17, 0x9a, 0xbb, 0x98, 0x8b, 0x5a, 0x4c, 0xc6, + 0x68, 0x58, 0xd8, 0xd5, 0x11, 0xc3, 0x42, 0x62, 0x5c, 0x00, 0x09, 0x2e, 0x00, 0x93, 0x19, 0xe3, + 0x07, 0x26, 0x76, 0xaa, 0xbb, 0xcf, 0xf4, 0xb4, 0x76, 0x4f, 0x75, 0xaa, 0xaa, 0x07, 0x66, 0x61, + 0xe2, 0x23, 0xb8, 0xf5, 0x09, 0x34, 0x3e, 0x85, 0xe8, 0xc6, 0x95, 0x41, 0x56, 0x2c, 0xa5, 0x67, + 0xe3, 0x92, 0x47, 0x30, 0x54, 0xd3, 0x30, 0x5f, 0x21, 0xb3, 0x90, 0x5d, 0x55, 0x9f, 0xff, 0xff, + 0xd7, 0xa7, 0x4e, 0x9d, 0x3a, 0x68, 0xa9, 0x05, 0x82, 0xf8, 0xcc, 0x14, 0x4e, 0x03, 0x42, 0x6a, + 0xb6, 0x7c, 0xd8, 0x15, 0x66, 0x43, 0xca, 0xc8, 0x0a, 0x18, 0x75, 0x6d, 0x1a, 0xd0, 0xa6, 0x03, + 0xdc, 0x64, 0xf6, 0x6b, 0x70, 0x24, 0x89, 0x38, 0x93, 0x4c, 0xbf, 0x95, 0x7a, 0x48, 0xea, 0x21, + 0xca, 0x43, 0x06, 0x3c, 0xf3, 0x86, 0xe7, 0xcb, 0x46, 0x6c, 0x13, 0x87, 0x85, 0xa6, 0xc7, 0x3c, + 0x66, 0x2a, 0xb7, 0x1d, 0xd7, 0xd5, 0x4e, 0x6d, 0xd4, 0x2a, 0xa5, 0xce, 0x5f, 0xeb, 0xcd, 0x84, + 0x45, 0xd2, 0x67, 0x4d, 0x71, 0x16, 0x5c, 0xe8, 0x0d, 0x72, 0x16, 0x4b, 0x30, 0x65, 0x3b, 0x82, + 0x4c, 0xf0, 0x7f, 0xaf, 0xa0, 0x3b, 0x54, 0xe9, 0x3b, 0x22, 0x08, 0x68, 0xb6, 0xfa, 0xf8, 0xe5, + 0xc1, 0x32, 0x58, 0xbd, 0x8a, 0xbb, 0xa3, 0x15, 0xaa, 0xfb, 0xc7, 0x0b, 0xc3, 0x2c, 0xdd, 0x82, + 0xdb, 0xfd, 0x02, 0x2e, 0x63, 0x1a, 0x58, 0x0d, 0x26, 0x64, 0xb7, 0xae, 0xf2, 0xf1, 0x1f, 0x54, + 0x7c, 0xac, 0x6e, 0x40, 0xbf, 0x8f, 0x26, 0x42, 0x90, 0xd4, 0xa5, 0x92, 0x96, 0xb4, 0xb2, 0xb6, + 0x38, 0xb9, 0x74, 0x83, 0xf4, 0x5e, 0x47, 0x2a, 0xdc, 0x02, 0x49, 0x9f, 0xb4, 0x23, 0xa8, 0x9e, + 0xcb, 0xf5, 0x4d, 0xf4, 0xaf, 0x68, 0x0b, 0x09, 0xa1, 0x75, 0x4e, 0xc8, 0x2b, 0xc2, 0xcd, 0x3e, + 0x42, 0x4d, 0xa9, 0xfa, 0x38, 0xd3, 0xa9, 0x77, 0x2b, 0xa3, 0xad, 0xa1, 0x31, 0x11, 0x81, 0x53, + 0x2a, 0x28, 0x84, 0x49, 0x46, 0xea, 0x09, 0x52, 0x8b, 0xc0, 0x51, 0x38, 0x65, 0x5e, 0xf9, 0x51, + 0xf8, 0xba, 0x5f, 0xca, 0xcf, 0x68, 0x87, 0xfb, 0xa5, 0x6f, 0x05, 0xf4, 0x02, 0x15, 0x36, 0x40, + 0xea, 0xd5, 0xfa, 0xf2, 0x9e, 0x63, 0x08, 0x70, 0x62, 0x0e, 0x21, 0x88, 0x86, 0x61, 0x53, 0xe1, + 0x3b, 0x46, 0xc8, 0x9a, 0xbe, 0x64, 0xfc, 0x4e, 0xb9, 0x3f, 0x2c, 0x24, 0x6d, 0xba, 0x94, 0xbb, + 0x17, 0x8a, 0x16, 0x08, 0xc3, 0x67, 0x46, 0xc4, 0xd9, 0x5e, 0xdb, 0xe0, 0x40, 0x5d, 0xf4, 0x1c, + 0x8d, 0x57, 0x21, 0x0a, 0xa8, 0x03, 0xfa, 0xd6, 0x70, 0x7c, 0x2c, 0xe0, 0x32, 0x76, 0x1a, 0xee, + 0x01, 0xef, 0x72, 0x5f, 0x02, 0x7a, 0x86, 0x8a, 0x6b, 0x1c, 0xa8, 0xbc, 0x0a, 0xf0, 0x3a, 0x04, + 0xf0, 0xf7, 0xc1, 0x3b, 0x68, 0x6c, 0xd3, 0x17, 0x57, 0x52, 0xe7, 0xca, 0x0e, 0x9a, 0xc8, 0xae, + 0x58, 0xdf, 0x46, 0xe3, 0x9e, 0x63, 0xa9, 0x26, 0x49, 0x3b, 0x75, 0x79, 0xc4, 0x26, 0xd9, 0x08, + 0x98, 0x4d, 0x83, 0xf3, 0x56, 0x29, 0x7a, 0xce, 0xe9, 0xba, 0xf2, 0x33, 0x8f, 0xa6, 0x6a, 0x92, + 0xca, 0x58, 0x8c, 0xfc, 0x16, 0x52, 0xf9, 0x90, 0xb7, 0x50, 0x43, 0x93, 0xe9, 0x48, 0xb3, 0x38, + 0xd4, 0x45, 0x29, 0x5f, 0x2e, 0x2c, 0x4e, 0x2e, 0x5d, 0x1f, 0xfa, 0x92, 0xaa, 0x50, 0x3f, 0x35, + 0xaf, 0xfe, 0xf7, 0xf9, 0xed, 0xec, 0x40, 0xae, 0x55, 0xc4, 0x32, 0x91, 0xd0, 0x1f, 0x20, 0xe4, + 0xb0, 0xa6, 0xeb, 0xab, 0xb1, 0x51, 0x2a, 0x0c, 0x65, 0xae, 0x65, 0x02, 0x95, 0x50, 0x97, 0x5e, + 0x7f, 0x85, 0xe6, 0xba, 0x07, 0x80, 0x25, 0x54, 0xee, 0xa5, 0x31, 0x75, 0x30, 0x32, 0x50, 0xba, + 0x0b, 0x25, 0x59, 0xdf, 0xae, 0x3d, 0x7d, 0xc4, 0x84, 0x4c, 0x4f, 0xab, 0xc0, 0xb3, 0x67, 0x82, + 0x8b, 0xcf, 0x2b, 0x73, 0x87, 0x0f, 0x67, 0xd0, 0x34, 0x9a, 0xca, 0x6a, 0x40, 0x62, 0xdf, 0x5d, + 0xfd, 0xa0, 0x1d, 0x1c, 0xe3, 0xdc, 0xd1, 0x31, 0xce, 0x9d, 0x1c, 0x63, 0xed, 0x5d, 0x82, 0xb5, + 0x4f, 0x09, 0xd6, 0xbe, 0x27, 0x58, 0x3b, 0x48, 0xb0, 0x76, 0x94, 0x60, 0xed, 0x57, 0x82, 0xb5, + 0xdf, 0x09, 0xce, 0x9d, 0x24, 0x58, 0x7b, 0xdf, 0xc1, 0xb9, 0x2f, 0x1d, 0xac, 0x1d, 0x74, 0x70, + 0xee, 0xa8, 0x83, 0x73, 0x3b, 0x2f, 0x3d, 0x16, 0xbd, 0xf1, 0x48, 0x8b, 0x05, 0x12, 0x38, 0xa7, + 0x24, 0x16, 0xa6, 0x5a, 0xd4, 0x19, 0x0f, 0x4f, 0xdb, 0xa2, 0xe5, 0xbb, 0xc0, 0x8d, 0x2c, 0x6c, + 0x46, 0xb6, 0xc7, 0x4c, 0xd8, 0x93, 0x67, 0xf3, 0xee, 0xf2, 0x51, 0x6a, 0x17, 0xd5, 0xf0, 0xbb, + 0xf7, 0x27, 0x00, 0x00, 0xff, 0xff, 0xe0, 0x09, 0xb8, 0xb0, 0xa3, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/http_loadbalancer/pkg.vespkg.go b/pbgo/extschema/schema/views/http_loadbalancer/pkg.vespkg.go index b4228815b..34a6436a9 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/pkg.vespkg.go @@ -53,72 +53,33 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.http_loadbalancer.ListAvailableAPIDefinitionsReq"] = ListAvailableAPIDefinitionsReqValidator() vr["ves.io.schema.views.http_loadbalancer.ListAvailableAPIDefinitionsResp"] = ListAvailableAPIDefinitionsRespValidator() - vr["ves.io.schema.views.http_loadbalancer.APIEndpointProtectionRule"] = APIEndpointProtectionRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.APIGroupProtectionRule"] = APIGroupProtectionRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.APIGroups"] = APIGroupsValidator() - vr["ves.io.schema.views.http_loadbalancer.APIProtectionRuleAction"] = APIProtectionRuleActionValidator() - vr["ves.io.schema.views.http_loadbalancer.APIProtectionRules"] = APIProtectionRulesValidator() - vr["ves.io.schema.views.http_loadbalancer.APIRateLimit"] = APIRateLimitValidator() - vr["ves.io.schema.views.http_loadbalancer.APISpecificationSettings"] = APISpecificationSettingsValidator() vr["ves.io.schema.views.http_loadbalancer.AdvancedOptionsType"] = AdvancedOptionsTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.ApiDefinitionList"] = ApiDefinitionListValidator() - vr["ves.io.schema.views.http_loadbalancer.ApiDiscoverySetting"] = ApiDiscoverySettingValidator() - vr["ves.io.schema.views.http_loadbalancer.ApiEndpointDetails"] = ApiEndpointDetailsValidator() - vr["ves.io.schema.views.http_loadbalancer.ApiEndpointRule"] = ApiEndpointRuleValidator() vr["ves.io.schema.views.http_loadbalancer.AppEndpointType"] = AppEndpointTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.Audiences"] = AudiencesValidator() - vr["ves.io.schema.views.http_loadbalancer.AutoMitigationAction"] = AutoMitigationActionValidator() - vr["ves.io.schema.views.http_loadbalancer.BasePathsType"] = BasePathsTypeValidator() vr["ves.io.schema.views.http_loadbalancer.BotAdvancedMobileSDKConfigType"] = BotAdvancedMobileSDKConfigTypeValidator() vr["ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedPolicyType"] = BotDefenseAdvancedPolicyTypeValidator() vr["ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedType"] = BotDefenseAdvancedTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.BypassRateLimitingRule"] = BypassRateLimitingRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.BypassRateLimitingRules"] = BypassRateLimitingRulesValidator() vr["ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType"] = CSDJavaScriptInsertAllWithExceptionsTypeValidator() vr["ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType"] = CSDJavaScriptInsertTypeValidator() vr["ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule"] = CSDJavaScriptInsertionRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.ChallengeRule"] = ChallengeRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.ChallengeRuleList"] = ChallengeRuleListValidator() vr["ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType"] = ClientSideDefensePolicyTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ClientSideDefenseType"] = ClientSideDefenseTypeValidator() vr["ves.io.schema.views.http_loadbalancer.CreateSpecType"] = CreateSpecTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.CustomFallThroughMode"] = CustomFallThroughModeValidator() - vr["ves.io.schema.views.http_loadbalancer.CustomIpAllowedList"] = CustomIpAllowedListValidator() vr["ves.io.schema.views.http_loadbalancer.DDoSClientSource"] = DDoSClientSourceValidator() vr["ves.io.schema.views.http_loadbalancer.DDoSMitigationRule"] = DDoSMitigationRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.EnableChallenge"] = EnableChallengeValidator() - vr["ves.io.schema.views.http_loadbalancer.EnableDDoSDetectionSetting"] = EnableDDoSDetectionSettingValidator() - vr["ves.io.schema.views.http_loadbalancer.FallThroughRule"] = FallThroughRuleValidator() vr["ves.io.schema.views.http_loadbalancer.GetSpecType"] = GetSpecTypeValidator() vr["ves.io.schema.views.http_loadbalancer.GlobalSpecType"] = GlobalSpecTypeValidator() vr["ves.io.schema.views.http_loadbalancer.HashPolicyListType"] = HashPolicyListTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.HttpHeaderMatcherList"] = HttpHeaderMatcherListValidator() - vr["ves.io.schema.views.http_loadbalancer.IPThreatCategoryListType"] = IPThreatCategoryListTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.InlineRateLimiter"] = InlineRateLimiterValidator() - vr["ves.io.schema.views.http_loadbalancer.JWKS"] = JWKSValidator() - vr["ves.io.schema.views.http_loadbalancer.JWTValidation"] = JWTValidationValidator() - vr["ves.io.schema.views.http_loadbalancer.MandatoryClaims"] = MandatoryClaimsValidator() vr["ves.io.schema.views.http_loadbalancer.MirrorPolicyType"] = MirrorPolicyTypeValidator() vr["ves.io.schema.views.http_loadbalancer.MobileSDKConfigType"] = MobileSDKConfigTypeValidator() vr["ves.io.schema.views.http_loadbalancer.MobileTrafficIdentifierType"] = MobileTrafficIdentifierTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiFallThroughMode"] = OpenApiFallThroughModeValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings"] = OpenApiValidationAllSpecEndpointsSettingsValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiValidationCommonSettings"] = OpenApiValidationCommonSettingsValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiValidationMode"] = OpenApiValidationModeValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActive"] = OpenApiValidationModeActiveValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActiveResponse"] = OpenApiValidationModeActiveResponseValidator() - vr["ves.io.schema.views.http_loadbalancer.OpenApiValidationRule"] = OpenApiValidationRuleValidator() vr["ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType"] = OriginServerSubsetRuleListTypeValidator() - vr["ves.io.schema.views.http_loadbalancer.PolicyBasedChallenge"] = PolicyBasedChallengeValidator() vr["ves.io.schema.views.http_loadbalancer.ProtectedAppEndpointType"] = ProtectedAppEndpointTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ProxyTypeHttp"] = ProxyTypeHttpValidator() vr["ves.io.schema.views.http_loadbalancer.ProxyTypeHttps"] = ProxyTypeHttpsValidator() vr["ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts"] = ProxyTypeHttpsAutoCertsValidator() vr["ves.io.schema.views.http_loadbalancer.Query"] = QueryValidator() - vr["ves.io.schema.views.http_loadbalancer.RateLimitConfigType"] = RateLimitConfigTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ReplaceSpecType"] = ReplaceSpecTypeValidator() vr["ves.io.schema.views.http_loadbalancer.RequestBody"] = RequestBodyValidator() - vr["ves.io.schema.views.http_loadbalancer.ReservedClaims"] = ReservedClaimsValidator() vr["ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions"] = RouteSimpleAdvancedOptionsValidator() vr["ves.io.schema.views.http_loadbalancer.RouteType"] = RouteTypeValidator() vr["ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute"] = RouteTypeCustomRouteValidator() @@ -126,8 +87,6 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.http_loadbalancer.RouteTypeRedirect"] = RouteTypeRedirectValidator() vr["ves.io.schema.views.http_loadbalancer.RouteTypeSimple"] = RouteTypeSimpleValidator() vr["ves.io.schema.views.http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool"] = RouteTypeSimpleWithDefaultOriginPoolValidator() - vr["ves.io.schema.views.http_loadbalancer.ServerUrlRule"] = ServerUrlRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.ServicePolicyList"] = ServicePolicyListValidator() vr["ves.io.schema.views.http_loadbalancer.ShapeBotDefensePolicyType"] = ShapeBotDefensePolicyTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ShapeBotDefenseType"] = ShapeBotDefenseTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule"] = ShapeJavaScriptExclusionRuleValidator() @@ -135,14 +94,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType"] = ShapeJavaScriptInsertAllWithExceptionsTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertType"] = ShapeJavaScriptInsertTypeValidator() vr["ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertionRule"] = ShapeJavaScriptInsertionRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.SimpleClientSrcRule"] = SimpleClientSrcRuleValidator() vr["ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting"] = SingleLoadBalancerAppSettingValidator() - vr["ves.io.schema.views.http_loadbalancer.Target"] = TargetValidator() - vr["ves.io.schema.views.http_loadbalancer.TokenLocation"] = TokenLocationValidator() - vr["ves.io.schema.views.http_loadbalancer.ValidateApiBySpecRule"] = ValidateApiBySpecRuleValidator() - vr["ves.io.schema.views.http_loadbalancer.ValidationPropertySetting"] = ValidationPropertySettingValidator() - vr["ves.io.schema.views.http_loadbalancer.ValidationSettingForHeaders"] = ValidationSettingForHeadersValidator() - vr["ves.io.schema.views.http_loadbalancer.ValidationSettingForQueryParameters"] = ValidationSettingForQueryParametersValidator() vr["ves.io.schema.views.http_loadbalancer.WebMobileTrafficType"] = WebMobileTrafficTypeValidator() } @@ -162,18 +114,46 @@ func initializeEntryRegistry(mdr *svcfw.MDRegistry) { func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCSubscriptionFieldsRegistry["ves.io.schema.views.http_loadbalancer.API.Create"] = []svcfw.SubscriptionField{ + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_definition", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_definitions", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_definition_choice.api_specification", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.api_discovery_choice.enable_api_discovery", + AddonServices: []string{"f5xc-waap-advanced"}, + }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.bot_defense_choice.bot_defense", - AddonServices: []string{"shape-bot,f5xc-bot-defense-advanced"}, + AddonServices: []string{"shape-bot,f5xc-bot-defense-standard,f5xc-bot-defense-advanced"}, }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.bot_defense_choice.bot_defense_advanced", - AddonServices: []string{"shape-bot,f5xc-bot-defense-advanced"}, + AddonServices: []string{"shape-bot,f5xc-bot-defense-standard,f5xc-bot-defense-advanced"}, }, { FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.client_side_defense_choice.client_side_defense", AddonServices: []string{"client-side-defense"}, }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.ip_reputation_choice.enable_ip_reputation", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.malicious_user_detection_choice.enable_malicious_user_detection", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.CreateRequest.spec.waf_choice.app_firewall", + AddonServices: []string{"f5xc-waap-standard"}, + }, } mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.views.http_loadbalancer.API.Create"] = []string{ @@ -202,8 +182,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.cors_policy.max_age", "spec.data_guard_rules.#.metadata.disable", "spec.ddos_mitigation_rules.#.metadata.disable", - "spec.default_pool.advanced_options.disable_lb_source_ip_persistance", - "spec.default_pool.advanced_options.enable_lb_source_ip_persistance", + "spec.default_pool.advanced_options.header_transformation_type", "spec.default_pool.origin_servers.#.k8s_service.service_selector", "spec.default_pool.use_tls.use_mtls.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.default_pool.use_tls.use_mtls.tls_certificates.#.private_key.secret_encoding_type", @@ -214,12 +193,10 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.graphql_rules.#.graphql_settings.max_value_length", "spec.graphql_rules.#.graphql_settings.policy_name", "spec.graphql_rules.#.metadata.disable", - "spec.https.http_protocol_options", "spec.https.tls_parameters.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.https.tls_parameters.tls_certificates.#.private_key.secret_encoding_type", "spec.https.tls_parameters.tls_certificates.#.private_key.vault_secret_info", "spec.https.tls_parameters.tls_certificates.#.private_key.wingman_secret_info", - "spec.https_auto_cert.http_protocol_options", "spec.jwt_validation.auth_server_uri", "spec.jwt_validation.jwks", "spec.jwt_validation.token_location.cookie", @@ -268,58 +245,46 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.http_loadbalancer.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, - }, - { - FieldPath: "spec.threat_intelligence_choice", + FieldPath: "spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } @@ -327,58 +292,46 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.http_loadbalancer.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "spec.threat_intelligence_choice", + FieldPath: "spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } @@ -394,170 +347,134 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.http_loadbalancer.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "create_form.spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "create_form.spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "create_form.spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "create_form.spec.threat_intelligence_choice", + FieldPath: "create_form.spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "replace_form.spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "replace_form.spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "replace_form.spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "replace_form.spec.threat_intelligence_choice", + FieldPath: "replace_form.spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "spec.threat_intelligence_choice", + FieldPath: "spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } @@ -569,75 +486,91 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.http_loadbalancer.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "items.#.get_spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "items.#.get_spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "items.#.get_spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, - }, - { - FieldPath: "items.#.get_spec.threat_intelligence_choice", + FieldPath: "items.#.get_spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } mdr.RPCSubscriptionFieldsRegistry["ves.io.schema.views.http_loadbalancer.API.Replace"] = []svcfw.SubscriptionField{ + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_definition", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_definitions", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_definition_choice.api_specification", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.api_discovery_choice.enable_api_discovery", + AddonServices: []string{"f5xc-waap-advanced"}, + }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.bot_defense_choice.bot_defense", - AddonServices: []string{"shape-bot,f5xc-bot-defense-advanced"}, + AddonServices: []string{"shape-bot,f5xc-bot-defense-standard,f5xc-bot-defense-advanced"}, }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.bot_defense_choice.bot_defense_advanced", - AddonServices: []string{"shape-bot,f5xc-bot-defense-advanced"}, + AddonServices: []string{"shape-bot,f5xc-bot-defense-standard,f5xc-bot-defense-advanced"}, }, { FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.client_side_defense_choice.client_side_defense", AddonServices: []string{"client-side-defense"}, }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.ip_reputation_choice.enable_ip_reputation", + AddonServices: []string{"f5xc-waap-standard"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.malicious_user_detection_choice.enable_malicious_user_detection", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + { + FieldPath: "ves.io.schema.views.http_loadbalancer.ReplaceRequest.spec.waf_choice.app_firewall", + AddonServices: []string{"f5xc-waap-standard"}, + }, } mdr.RPCDeprecatedRequestFieldsRegistry["ves.io.schema.views.http_loadbalancer.API.Replace"] = []string{ @@ -662,8 +595,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.cors_policy.max_age", "spec.data_guard_rules.#.metadata.disable", "spec.ddos_mitigation_rules.#.metadata.disable", - "spec.default_pool.advanced_options.disable_lb_source_ip_persistance", - "spec.default_pool.advanced_options.enable_lb_source_ip_persistance", + "spec.default_pool.advanced_options.header_transformation_type", "spec.default_pool.origin_servers.#.k8s_service.service_selector", "spec.default_pool.use_tls.use_mtls.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.default_pool.use_tls.use_mtls.tls_certificates.#.private_key.secret_encoding_type", @@ -674,12 +606,10 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.graphql_rules.#.graphql_settings.max_value_length", "spec.graphql_rules.#.graphql_settings.policy_name", "spec.graphql_rules.#.metadata.disable", - "spec.https.http_protocol_options", "spec.https.tls_parameters.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.https.tls_parameters.tls_certificates.#.private_key.secret_encoding_type", "spec.https.tls_parameters.tls_certificates.#.private_key.vault_secret_info", "spec.https.tls_parameters.tls_certificates.#.private_key.wingman_secret_info", - "spec.https_auto_cert.http_protocol_options", "spec.jwt_validation.auth_server_uri", "spec.jwt_validation.jwks", "spec.jwt_validation.token_location.cookie", @@ -728,58 +658,46 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.http_loadbalancer.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.api_rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.default_pool.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.default_pool.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.rate_limit.ip_allowed_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.single_lb_app.enable_ddos_detection.enable_auto_mitigation.js_challenge", - AllowedEnvironments: []string{"devtest", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { - FieldPath: "spec.threat_intelligence_choice", + FieldPath: "spec.threat_mesh_choice", AllowedEnvironments: []string{"crt", "demo1", "test"}, }, } diff --git a/pbgo/extschema/schema/views/http_loadbalancer/public_apiep_customapi.vesapi.go b/pbgo/extschema/schema/views/http_loadbalancer/public_apiep_customapi.vesapi.go index 4d1bee6d2..9c0d2371a 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/public_apiep_customapi.vesapi.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/public_apiep_customapi.vesapi.go @@ -1514,15 +1514,15 @@ var ApiepLBCustomAPISwaggerJSON string = `{ }, "schema_json": { "type": "string", - "description": " The schema of the API endpoint\n\nExample: - \"{}\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 10000\n", + "description": " The schema of the API endpoint\n\nExample: - \"{}\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 20000\n", "title": "Schema JSON", - "maxLength": 10000, + "maxLength": 20000, "x-displayname": "Schema JSON", "x-ves-example": "{}", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_bytes": "10000" + "ves.io.schema.rules.string.max_bytes": "20000" } } } diff --git a/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.pb.go b/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.pb.go index 944c213de..60a9a5cfc 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.pb.go @@ -1069,111 +1069,112 @@ func init() { } var fileDescriptor_fa414ca6b2beb08b = []byte{ - // 1650 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x5f, 0x6f, 0x1b, 0x59, - 0x15, 0xcf, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0x9f, 0xd9, 0xcb, 0x6e, 0xd6, 0x31, 0xc5, 0x6b, 0xbc, - 0xcb, 0x2a, 0x8a, 0xd6, 0x33, 0x5b, 0x87, 0x2e, 0xbb, 0xd1, 0xd2, 0xc5, 0x71, 0x9c, 0x90, 0x90, - 0x34, 0xd5, 0xd8, 0xe9, 0xae, 0xb6, 0x0f, 0xa3, 0xf1, 0xf8, 0xd8, 0x99, 0xd6, 0xf6, 0x0c, 0x73, - 0xaf, 0x9d, 0x5a, 0x28, 0x12, 0x14, 0x89, 0x07, 0x5e, 0x40, 0xe2, 0x0d, 0x81, 0xc4, 0x0b, 0x12, - 0xdf, 0x00, 0x50, 0x5e, 0xfa, 0xd6, 0xaa, 0x42, 0xa8, 0x82, 0x97, 0x3e, 0x12, 0x07, 0xa4, 0x4a, - 0x08, 0xa9, 0xe2, 0x13, 0xa0, 0xb9, 0x77, 0xc6, 0xb5, 0x1d, 0xd3, 0xb5, 0xdd, 0x3c, 0x79, 0xee, - 0x3d, 0xe7, 0xf7, 0xbb, 0xe7, 0x9c, 0x7b, 0xce, 0xf1, 0x99, 0xc1, 0xeb, 0x6d, 0xa0, 0xb2, 0x69, - 0x29, 0xd4, 0x38, 0x82, 0x86, 0xae, 0xb4, 0x4d, 0x38, 0xa6, 0xca, 0x11, 0x63, 0xb6, 0x56, 0xb7, - 0xf4, 0x4a, 0x59, 0xaf, 0xeb, 0x4d, 0x03, 0x1c, 0xc5, 0x6e, 0x95, 0xeb, 0xa6, 0xa1, 0x19, 0x4e, - 0xab, 0xa2, 0xdb, 0xa6, 0x6c, 0x3b, 0x16, 0xb3, 0xc8, 0xb7, 0x04, 0x56, 0x16, 0x58, 0x99, 0x63, - 0xe5, 0x0b, 0xd8, 0x44, 0xa6, 0x66, 0xb2, 0xa3, 0x56, 0x59, 0x36, 0xac, 0x86, 0x52, 0xb3, 0x6a, - 0x96, 0xc2, 0xd1, 0xe5, 0x56, 0x95, 0xaf, 0xf8, 0x82, 0x3f, 0x09, 0xd6, 0xc4, 0xd5, 0x9a, 0x65, - 0xd5, 0xea, 0xa0, 0xe8, 0xb6, 0xa9, 0xe8, 0xcd, 0xa6, 0xc5, 0x74, 0x66, 0x5a, 0x4d, 0xea, 0x49, - 0xbf, 0xee, 0x49, 0x7b, 0x1c, 0xd0, 0xb0, 0x59, 0xc7, 0x13, 0x26, 0x06, 0x9d, 0x01, 0xc7, 0xb1, - 0x9c, 0x1e, 0x70, 0x50, 0x66, 0xd9, 0xfd, 0xac, 0xef, 0x0c, 0x0a, 0x1d, 0xab, 0xc5, 0x40, 0x61, - 0x1d, 0x1b, 0x7c, 0x85, 0xe5, 0x41, 0x85, 0x7e, 0x51, 0x7a, 0x28, 0x82, 0x40, 0xa1, 0xd9, 0x1e, - 0xe2, 0x4f, 0x5d, 0x8c, 0xb2, 0x36, 0xa8, 0x91, 0x1d, 0xef, 0x1e, 0xac, 0xf2, 0x5d, 0x30, 0x98, - 0x87, 0xb9, 0x36, 0x1e, 0xa6, 0xdf, 0xd8, 0x77, 0x46, 0x41, 0xfa, 0x15, 0xde, 0x1f, 0x56, 0x70, - 0x58, 0x4b, 0xaf, 0x6b, 0x47, 0x16, 0x65, 0xfd, 0x7a, 0xe9, 0x3f, 0x22, 0x3c, 0x9f, 0x77, 0x40, - 0x67, 0xa0, 0xc2, 0x0f, 0x5b, 0x40, 0x19, 0xf9, 0x0c, 0x47, 0x1a, 0xc0, 0xf4, 0x8a, 0xce, 0xf4, - 0x38, 0x4a, 0xa1, 0x95, 0x58, 0xf6, 0x5d, 0x79, 0x30, 0x41, 0x0e, 0xb8, 0xf1, 0x02, 0xb5, 0x0f, - 0x4c, 0x2f, 0x75, 0x6c, 0x50, 0x7b, 0x20, 0xf2, 0x25, 0x0e, 0x51, 0x1b, 0x8c, 0x78, 0x80, 0x83, - 0xaf, 0xcb, 0x63, 0x65, 0x97, 0x2c, 0xe8, 0x8a, 0x36, 0x18, 0x2e, 0xdd, 0xc6, 0xe2, 0xaf, 0x4f, - 0xe6, 0x5c, 0x16, 0xb9, 0x66, 0x68, 0xee, 0xaf, 0xca, 0x39, 0xd7, 0xa3, 0x4f, 0x6e, 0x84, 0xc5, - 0xf1, 0xe9, 0x9f, 0x06, 0xf0, 0x82, 0x6f, 0x39, 0xb5, 0xad, 0x26, 0x05, 0xf2, 0xe9, 0x05, 0xd3, - 0x53, 0x23, 0x4d, 0xdf, 0x06, 0x36, 0xc2, 0xee, 0x03, 0xbc, 0x48, 0x3b, 0x94, 0x41, 0x43, 0xeb, - 0x91, 0x04, 0x39, 0xc9, 0xfb, 0x43, 0x24, 0x45, 0xae, 0x75, 0x91, 0x6a, 0x41, 0xc0, 0xf7, 0x7d, - 0xc2, 0xcf, 0x07, 0x02, 0x91, 0x1d, 0x33, 0x10, 0xdb, 0xc0, 0x26, 0x88, 0xc2, 0xbf, 0x11, 0x5e, - 0x50, 0xc1, 0xae, 0xeb, 0x46, 0xef, 0x02, 0xbf, 0x77, 0x21, 0x0a, 0xef, 0x8d, 0x8c, 0x82, 0x07, - 0x1b, 0x11, 0x89, 0x3b, 0x03, 0x86, 0x7f, 0x34, 0xa6, 0xe1, 0x1e, 0xdf, 0x57, 0x18, 0x4f, 0x14, - 0x2c, 0x39, 0x40, 0xad, 0x96, 0x63, 0x80, 0xd6, 0x06, 0x87, 0x9a, 0x56, 0x93, 0xc7, 0x39, 0xba, - 0x11, 0x7a, 0x7e, 0x8a, 0x90, 0xba, 0xe8, 0x4b, 0x6f, 0x0b, 0x61, 0xbf, 0xb7, 0x6f, 0xe0, 0xc5, - 0x9e, 0xb3, 0xe2, 0xce, 0xd3, 0xbf, 0x47, 0x18, 0x6f, 0x03, 0xf3, 0x9d, 0xbf, 0x8a, 0xa3, 0x4d, - 0xbd, 0x01, 0xd4, 0xd6, 0x0d, 0xe0, 0xde, 0x47, 0xd5, 0x97, 0x1b, 0x84, 0xe0, 0x90, 0xbb, 0xe0, - 0x8e, 0x45, 0x55, 0xfe, 0x4c, 0x00, 0xbb, 0x27, 0x72, 0x32, 0xad, 0x6a, 0x39, 0x0d, 0x9d, 0x71, - 0x73, 0x16, 0xb2, 0x9f, 0x8e, 0x7f, 0x61, 0xbe, 0x35, 0x5b, 0x1c, 0x9f, 0xb7, 0x2a, 0xa0, 0x2e, - 0x38, 0x03, 0x7b, 0xe9, 0x3f, 0x87, 0x71, 0xac, 0x4f, 0x93, 0x1c, 0xe2, 0x98, 0xc1, 0xb3, 0x97, - 0x1f, 0xea, 0x85, 0xfa, 0xdb, 0x13, 0x15, 0x8b, 0xe7, 0xb3, 0x8a, 0x05, 0x91, 0x7b, 0x10, 0xf9, - 0x02, 0xcf, 0x39, 0x22, 0x42, 0x82, 0x37, 0x38, 0x51, 0x11, 0x0e, 0x66, 0x92, 0x1a, 0xf3, 0xa8, - 0x38, 0xf3, 0xa8, 0x7b, 0x0b, 0xbd, 0xe2, 0xde, 0x06, 0xaa, 0x71, 0xf6, 0x32, 0xaa, 0xf1, 0xca, - 0xa5, 0x54, 0x63, 0xf8, 0x92, 0xab, 0x91, 0xa8, 0x38, 0x4c, 0x99, 0xce, 0x5a, 0x34, 0xfe, 0xbb, - 0xdf, 0xa0, 0x54, 0x70, 0x25, 0x96, 0x5d, 0x1b, 0x93, 0xbc, 0xc8, 0x61, 0xc2, 0xf4, 0x8d, 0xe0, - 0xc3, 0x13, 0xa4, 0x7a, 0x4c, 0x64, 0x07, 0xbf, 0xe1, 0x40, 0x15, 0x1c, 0xc7, 0x6c, 0xd6, 0x34, - 0xf1, 0x67, 0x41, 0xe3, 0x11, 0x4e, 0x7e, 0xf5, 0xff, 0x14, 0x73, 0x95, 0x7b, 0x2d, 0xf5, 0x60, - 0x62, 0x9f, 0x92, 0xdb, 0x38, 0x5e, 0x81, 0x3a, 0x30, 0xa8, 0x68, 0x42, 0x06, 0x95, 0x1e, 0x63, - 0x74, 0x0c, 0xc6, 0x25, 0x0f, 0xad, 0x7a, 0x60, 0x9f, 0xf7, 0x0b, 0xbc, 0x5c, 0x31, 0xa9, 0x5e, - 0xae, 0x8f, 0x22, 0xc6, 0x63, 0x10, 0xbf, 0xed, 0xc3, 0x87, 0x98, 0xfb, 0x0a, 0x7e, 0x37, 0x14, - 0x41, 0x52, 0xc0, 0xad, 0xf1, 0xd8, 0x9e, 0x49, 0xc7, 0x2c, 0xf2, 0x6f, 0xe2, 0xb9, 0xba, 0x5e, - 0x86, 0xba, 0x56, 0x35, 0xeb, 0x0c, 0x1c, 0xaf, 0xd8, 0x63, 0x7c, 0x6f, 0x8b, 0x6f, 0x91, 0x77, - 0xf1, 0xbc, 0x03, 0xb6, 0xe5, 0x30, 0xad, 0x6a, 0x42, 0xbd, 0x42, 0xe3, 0xc1, 0x54, 0x70, 0x25, - 0xaa, 0xce, 0x89, 0xcd, 0x2d, 0xbe, 0x47, 0x3e, 0xc4, 0x6f, 0x7a, 0x4a, 0xe2, 0x52, 0x7c, 0xdd, - 0x10, 0xd7, 0x25, 0x42, 0x26, 0xae, 0x50, 0x20, 0xd2, 0xcf, 0xc3, 0x58, 0x12, 0x76, 0x8a, 0x22, - 0xdf, 0x61, 0xd0, 0x20, 0x4b, 0x38, 0xcc, 0xa0, 0xa9, 0x37, 0x19, 0xcf, 0xbc, 0xa8, 0xea, 0xad, - 0xa6, 0xe8, 0x54, 0x12, 0x0e, 0xb6, 0xcc, 0x8a, 0x68, 0x96, 0xaa, 0xfb, 0x48, 0x52, 0x38, 0x56, - 0x01, 0x6a, 0x38, 0x26, 0x9f, 0x41, 0xe2, 0x31, 0xe1, 0x69, 0xdf, 0x16, 0x49, 0xe0, 0x88, 0x1f, - 0xe6, 0xf8, 0x5c, 0x0a, 0xad, 0x44, 0xd4, 0xde, 0x9a, 0xdc, 0xc1, 0x61, 0x1e, 0x14, 0xe1, 0x52, - 0x2c, 0x9b, 0x1f, 0x33, 0x6d, 0x87, 0x5d, 0x94, 0xf7, 0x38, 0x4b, 0xa1, 0xc9, 0x9c, 0x8e, 0xea, - 0x51, 0x92, 0xbb, 0x38, 0xd6, 0x37, 0xf5, 0x79, 0x09, 0xf1, 0xfd, 0x69, 0x4f, 0xc8, 0xbd, 0xa4, - 0x12, 0xc7, 0xf4, 0x93, 0x93, 0x4f, 0x30, 0xb6, 0x8e, 0x9b, 0xe0, 0x68, 0x2e, 0x5f, 0x3c, 0xca, - 0x0b, 0x3c, 0x31, 0x74, 0xd4, 0x6d, 0x13, 0x8e, 0xfd, 0xcc, 0x8b, 0x72, 0x6d, 0x77, 0x67, 0xa0, - 0x49, 0xcd, 0x5f, 0x46, 0x93, 0x5a, 0x78, 0xad, 0x26, 0xb5, 0x8f, 0x23, 0x35, 0x60, 0xbc, 0xbb, - 0x78, 0xed, 0x6e, 0x8a, 0x46, 0xa5, 0x5e, 0xa9, 0x89, 0x05, 0xf9, 0x1c, 0x63, 0x2f, 0x77, 0x29, - 0x30, 0xaf, 0x7f, 0x4c, 0xdf, 0x9c, 0xa2, 0x82, 0xab, 0x08, 0x2c, 0xf1, 0x09, 0x8e, 0xf5, 0x5d, - 0xba, 0x9b, 0x99, 0xf7, 0xa0, 0xe3, 0x65, 0xb1, 0xfb, 0x48, 0xde, 0xc4, 0xb3, 0x6d, 0xbd, 0xde, - 0xf2, 0x13, 0x58, 0x2c, 0xd6, 0x03, 0x1f, 0xa3, 0xc4, 0x0d, 0x2c, 0x0d, 0xdf, 0xe6, 0x24, 0xf8, - 0xdd, 0x50, 0x64, 0x56, 0x0a, 0xa7, 0x7f, 0x81, 0xf0, 0x5c, 0x7f, 0x96, 0x90, 0x7d, 0x3c, 0x6b, - 0x32, 0x68, 0xd0, 0xb8, 0x68, 0xc1, 0xdf, 0x99, 0x32, 0xd3, 0x54, 0xc1, 0x42, 0x3e, 0xc4, 0x61, - 0xf1, 0xda, 0x11, 0x0f, 0x70, 0xbe, 0xf8, 0x10, 0x5f, 0xc1, 0x15, 0xf2, 0x60, 0x7b, 0x7a, 0xe9, - 0x7b, 0x78, 0x7e, 0x93, 0x77, 0xca, 0xe9, 0x47, 0x91, 0x15, 0x2c, 0x55, 0x75, 0xb3, 0xae, 0x99, - 0xd5, 0x5e, 0x47, 0xe5, 0xd5, 0x1e, 0x51, 0x17, 0xdc, 0xfd, 0x9d, 0xaa, 0xdf, 0x29, 0x57, 0xff, - 0x8b, 0xf0, 0x5b, 0x23, 0xe7, 0x0e, 0x92, 0xc0, 0x4b, 0xdb, 0x85, 0x92, 0xa6, 0x16, 0x6f, 0x69, - 0x5b, 0x07, 0xea, 0x7e, 0xae, 0xa4, 0x6d, 0x16, 0xb6, 0x72, 0x87, 0x7b, 0x25, 0x69, 0x86, 0x7c, - 0x03, 0x2f, 0x0f, 0xc9, 0xb6, 0x0e, 0x54, 0x2d, 0xaf, 0x16, 0x72, 0xa5, 0x82, 0x84, 0x48, 0x12, - 0x27, 0x46, 0x88, 0xd5, 0xc2, 0xad, 0xbd, 0x5c, 0xbe, 0x20, 0x05, 0xc8, 0x32, 0x7e, 0x6b, 0x48, - 0x5e, 0x2c, 0xe5, 0x4a, 0x87, 0x45, 0x29, 0x48, 0xde, 0xc6, 0x5f, 0x1b, 0x12, 0xa9, 0x85, 0xdc, - 0xa6, 0x14, 0x22, 0xef, 0xe1, 0xd4, 0x05, 0xc1, 0x56, 0x41, 0x55, 0x77, 0x6e, 0x6e, 0x6b, 0x07, - 0x1b, 0xbb, 0x85, 0x7c, 0xa9, 0x28, 0xcd, 0x8e, 0xd0, 0xda, 0x50, 0x0f, 0x7e, 0x50, 0xb8, 0x29, - 0x94, 0x0b, 0x37, 0xf3, 0x85, 0xa2, 0x14, 0xce, 0xfe, 0x1c, 0xe3, 0x60, 0xee, 0xd6, 0x0e, 0xf9, - 0x0f, 0xc2, 0x61, 0x31, 0x01, 0x91, 0xa9, 0x06, 0xa6, 0xc4, 0xf5, 0x09, 0x51, 0xde, 0xa8, 0xd9, - 0xee, 0x3e, 0x8a, 0x67, 0xaa, 0xd7, 0xef, 0x1b, 0x19, 0x0a, 0x46, 0xcb, 0x81, 0x06, 0xd0, 0xa3, - 0x4c, 0x59, 0xa7, 0xa6, 0x91, 0x69, 0x51, 0x70, 0x3e, 0x68, 0x03, 0xcd, 0x98, 0x56, 0xc6, 0x76, - 0xac, 0xfb, 0x9d, 0xcc, 0xb1, 0x63, 0x32, 0x78, 0xf0, 0xf7, 0x7f, 0xfe, 0x2a, 0xf0, 0x59, 0x7a, - 0xdd, 0x7b, 0xef, 0x56, 0x7a, 0xd7, 0x4f, 0x95, 0x1f, 0xf9, 0x1d, 0x43, 0xee, 0x6d, 0x9e, 0x5c, - 0x7c, 0xe9, 0xa3, 0xeb, 0x68, 0x95, 0xfc, 0x0b, 0xe1, 0xe0, 0x36, 0x30, 0x72, 0x6d, 0x92, 0x81, - 0x54, 0x78, 0x9a, 0x9d, 0x7c, 0x86, 0x4d, 0x1f, 0x3f, 0xfe, 0x53, 0x00, 0x75, 0x1f, 0xc5, 0x95, - 0xd1, 0xae, 0x36, 0xac, 0xa6, 0xc9, 0xac, 0x21, 0x6f, 0x1d, 0xd0, 0x2b, 0xdc, 0xd9, 0x75, 0xf2, - 0xf1, 0x28, 0x67, 0x5f, 0xe9, 0xa3, 0x10, 0x9f, 0x90, 0x33, 0x84, 0x43, 0x6e, 0x3d, 0x92, 0xec, - 0x44, 0xc5, 0x2b, 0x3c, 0x5d, 0x9b, 0xa2, 0xe0, 0xd3, 0xf6, 0xeb, 0xb8, 0xba, 0x46, 0xae, 0x4d, - 0xec, 0x2a, 0xf9, 0x49, 0x00, 0x5f, 0xf1, 0xa6, 0x6c, 0x32, 0xdd, 0x54, 0x9e, 0xf8, 0x68, 0x52, - 0x98, 0xe7, 0xec, 0xcf, 0xd0, 0x74, 0xf9, 0x7b, 0x90, 0xd8, 0x9d, 0x3e, 0x7f, 0x87, 0xf4, 0x4e, - 0xdc, 0x7c, 0xfe, 0x0b, 0xc2, 0x61, 0xd1, 0x2a, 0xc7, 0xae, 0xdf, 0x81, 0xce, 0x9a, 0x58, 0x92, - 0xc5, 0xd7, 0x23, 0xd9, 0xff, 0x7a, 0x24, 0x17, 0x1a, 0x36, 0xeb, 0xa4, 0xd9, 0x74, 0x0e, 0x7e, - 0x77, 0x75, 0xea, 0x9c, 0x5d, 0x47, 0xab, 0x09, 0xf6, 0xf0, 0x14, 0x05, 0xfe, 0x76, 0x8a, 0x3e, - 0x18, 0xcf, 0x15, 0xf1, 0x8f, 0xfa, 0xec, 0x14, 0xa1, 0xee, 0x29, 0xca, 0x4e, 0xfe, 0x5f, 0xfc, - 0xe0, 0xaf, 0xf1, 0x80, 0x84, 0x36, 0x7e, 0x8b, 0x9e, 0xdc, 0x98, 0xcd, 0xab, 0x87, 0x9b, 0x7b, - 0x4f, 0xcf, 0x92, 0x33, 0xcf, 0xce, 0x92, 0x33, 0x2f, 0xce, 0x92, 0xe8, 0xc7, 0xdd, 0x24, 0xfa, - 0x43, 0x37, 0x89, 0x1e, 0x77, 0x93, 0xe8, 0x69, 0x37, 0x89, 0xfe, 0xd1, 0x4d, 0xa2, 0xe7, 0xdd, - 0xe4, 0xcc, 0x8b, 0x6e, 0x12, 0xfd, 0xf2, 0x3c, 0x39, 0xf3, 0xf0, 0x3c, 0x89, 0x9e, 0x9e, 0x27, - 0x67, 0x9e, 0x9d, 0x27, 0x67, 0xbe, 0xbc, 0x53, 0xb3, 0xec, 0x7b, 0x35, 0xb9, 0x6d, 0xb9, 0x33, - 0xb1, 0xa3, 0xcb, 0x2d, 0xaa, 0xf0, 0x07, 0xf7, 0xc5, 0xd1, 0x0d, 0x52, 0xdb, 0xac, 0x80, 0x93, - 0xf1, 0xc5, 0x8a, 0x5d, 0xae, 0x59, 0x0a, 0xdc, 0x67, 0xde, 0x27, 0xa5, 0x57, 0x7f, 0xad, 0x2a, - 0x87, 0xf9, 0xdd, 0xac, 0xfd, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x91, 0xbd, 0x14, 0x1a, 0x99, 0x14, - 0x00, 0x00, + // 1671 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6f, 0x1b, 0xc7, + 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x8a, 0x75, 0x19, 0x96, 0x49, + 0x03, 0x41, 0x08, 0x97, 0x31, 0x55, 0xa7, 0x89, 0x90, 0x3a, 0xa5, 0x28, 0x4a, 0x95, 0x22, 0x59, + 0xc2, 0x92, 0x72, 0x82, 0xf8, 0xb0, 0x58, 0x2e, 0x1f, 0xa9, 0x8d, 0x49, 0xee, 0x76, 0x66, 0x48, + 0x99, 0x28, 0x04, 0x14, 0xc9, 0xa1, 0x97, 0x02, 0xfd, 0x7b, 0x28, 0x8a, 0x16, 0xed, 0xa1, 0x05, + 0x8a, 0x7e, 0x81, 0xb6, 0xd0, 0xc5, 0xb7, 0x06, 0x39, 0x14, 0x46, 0x7b, 0xf1, 0xb1, 0xa6, 0x7a, + 0x30, 0x90, 0x4b, 0xd0, 0x4f, 0x50, 0xec, 0xcc, 0x2e, 0x43, 0x52, 0xac, 0x4a, 0x32, 0xf2, 0x89, + 0x3b, 0xf3, 0xde, 0xfb, 0xcd, 0x7b, 0xbf, 0x79, 0xef, 0xf1, 0xed, 0xe2, 0xb5, 0x0e, 0x30, 0xd5, + 0xb2, 0xb3, 0xcc, 0x3c, 0x82, 0xa6, 0x91, 0xed, 0x58, 0x70, 0xcc, 0xb2, 0x47, 0x9c, 0x3b, 0x7a, + 0xc3, 0x36, 0xaa, 0x15, 0xa3, 0x61, 0xb4, 0x4c, 0xa0, 0x59, 0xa7, 0x5d, 0x69, 0x58, 0xa6, 0x6e, + 0xd2, 0x76, 0xd5, 0x70, 0x2c, 0xd5, 0xa1, 0x36, 0xb7, 0xc9, 0x37, 0xa4, 0xad, 0x2a, 0x6d, 0x55, + 0x61, 0xab, 0x9e, 0xb3, 0x4d, 0x64, 0xea, 0x16, 0x3f, 0x6a, 0x57, 0x54, 0xd3, 0x6e, 0x66, 0xeb, + 0x76, 0xdd, 0xce, 0x0a, 0xeb, 0x4a, 0xbb, 0x26, 0x56, 0x62, 0x21, 0x9e, 0x24, 0x6a, 0xe2, 0x46, + 0xdd, 0xb6, 0xeb, 0x0d, 0xc8, 0x1a, 0x8e, 0x95, 0x35, 0x5a, 0x2d, 0x9b, 0x1b, 0xdc, 0xb2, 0x5b, + 0xcc, 0x93, 0x7e, 0xd5, 0x93, 0xf6, 0x31, 0xa0, 0xe9, 0xf0, 0xae, 0x27, 0x4c, 0x0c, 0x07, 0x03, + 0x94, 0xda, 0xb4, 0x6f, 0x38, 0x2c, 0xb3, 0x9d, 0x41, 0xd4, 0x97, 0x86, 0x85, 0xd4, 0x6e, 0x73, + 0xc8, 0xf2, 0xae, 0x03, 0xbe, 0xc2, 0xd2, 0xb0, 0xc2, 0xa0, 0x28, 0x3d, 0xc2, 0x20, 0x30, 0x68, + 0x75, 0x46, 0xf0, 0x53, 0xe7, 0x59, 0xd6, 0x87, 0x35, 0x72, 0x93, 0xdd, 0x83, 0x5d, 0xf9, 0x10, + 0x4c, 0xee, 0xd9, 0xdc, 0x9c, 0xcc, 0x66, 0xd0, 0xd9, 0x97, 0xc6, 0x99, 0x0c, 0x2a, 0xbc, 0x3a, + 0xaa, 0x40, 0x79, 0xdb, 0x68, 0xe8, 0x47, 0x36, 0xe3, 0x83, 0x7a, 0xe9, 0x3f, 0x23, 0x7c, 0xb5, + 0x40, 0xc1, 0xe0, 0xa0, 0xc1, 0xf7, 0xda, 0xc0, 0x38, 0x79, 0x07, 0x47, 0x9a, 0xc0, 0x8d, 0xaa, + 0xc1, 0x8d, 0x38, 0x4a, 0xa1, 0xe5, 0x58, 0xee, 0x65, 0x75, 0x38, 0x41, 0xf6, 0x85, 0xf3, 0xd2, + 0x6a, 0x0f, 0xb8, 0x51, 0xee, 0x3a, 0xa0, 0xf5, 0x8d, 0xc8, 0x07, 0x38, 0xc4, 0x1c, 0x30, 0xe3, + 0x01, 0x61, 0x7c, 0x4b, 0x9d, 0x28, 0xbb, 0x54, 0x09, 0x57, 0x72, 0xc0, 0x74, 0xe1, 0xd6, 0xaf, + 0xfd, 0xea, 0x64, 0xc1, 0x45, 0x51, 0xeb, 0xa6, 0xee, 0xfe, 0x6a, 0x02, 0x73, 0x2d, 0xfa, 0xe9, + 0xed, 0xb0, 0x3c, 0x3e, 0xfd, 0x71, 0x00, 0x2f, 0xfa, 0x9e, 0x33, 0xc7, 0x6e, 0x31, 0x20, 0x6f, + 0x9f, 0x73, 0x3d, 0x35, 0xd6, 0xf5, 0x2d, 0xe0, 0x63, 0xfc, 0xde, 0xc7, 0xd7, 0x58, 0x97, 0x71, + 0x68, 0xea, 0x7d, 0x90, 0xa0, 0x00, 0x79, 0x75, 0x04, 0xa4, 0x24, 0xb4, 0xce, 0x43, 0x2d, 0x4a, + 0xf3, 0x3d, 0x1f, 0xf0, 0xbd, 0x21, 0x22, 0x72, 0x13, 0x12, 0xb1, 0x05, 0x7c, 0x0a, 0x16, 0x3e, + 0x43, 0x78, 0x51, 0x03, 0xa7, 0x61, 0x98, 0xfd, 0x0b, 0xfc, 0xce, 0x39, 0x16, 0x5e, 0x19, 0xcb, + 0x82, 0x67, 0x36, 0x86, 0x89, 0x7b, 0x43, 0x8e, 0xbf, 0x31, 0xa1, 0xe3, 0x1e, 0xde, 0xff, 0x71, + 0x9e, 0x64, 0xb1, 0x42, 0x81, 0xd9, 0x6d, 0x6a, 0x82, 0xde, 0x01, 0xca, 0x2c, 0xbb, 0x25, 0x78, + 0x8e, 0xae, 0x87, 0x9e, 0x9e, 0x22, 0xa4, 0x5d, 0xf3, 0xa5, 0x77, 0xa5, 0x70, 0x30, 0xda, 0xe7, + 0xf0, 0xb5, 0x7e, 0xb0, 0xf2, 0xce, 0xd3, 0x7f, 0x40, 0x18, 0x6f, 0x01, 0xf7, 0x83, 0xbf, 0x81, + 0xa3, 0x2d, 0xa3, 0x09, 0xcc, 0x31, 0x4c, 0x10, 0xd1, 0x47, 0xb5, 0x2f, 0x36, 0x08, 0xc1, 0x21, + 0x77, 0x21, 0x02, 0x8b, 0x6a, 0xe2, 0x99, 0x00, 0x76, 0x4f, 0x14, 0x60, 0x7a, 0xcd, 0xa6, 0x4d, + 0x83, 0x0b, 0x77, 0x16, 0x73, 0x6f, 0x4f, 0x7e, 0x61, 0xbe, 0x37, 0x9b, 0xc2, 0xbe, 0x60, 0x57, + 0x41, 0x5b, 0xa4, 0x43, 0x7b, 0xe9, 0xbf, 0x86, 0x71, 0x6c, 0x40, 0x93, 0x1c, 0xe2, 0x98, 0x29, + 0xb2, 0x57, 0x1c, 0xea, 0x51, 0xfd, 0xcd, 0xa9, 0x8a, 0xc5, 0x8b, 0x59, 0xc3, 0x12, 0xc8, 0x3d, + 0x88, 0xbc, 0x8f, 0x17, 0xa8, 0x64, 0x48, 0xe2, 0x06, 0xa7, 0x2a, 0xc2, 0xe1, 0x4c, 0xd2, 0x62, + 0x1e, 0x94, 0x40, 0x1e, 0x77, 0x6f, 0xa1, 0x0b, 0xee, 0x6d, 0xa8, 0x1a, 0xe7, 0x2f, 0xa3, 0x1a, + 0xaf, 0x5c, 0x4a, 0x35, 0x86, 0x2f, 0xb9, 0x1a, 0x89, 0x86, 0xc3, 0x8c, 0x1b, 0xbc, 0xcd, 0xe2, + 0xbf, 0xfb, 0x35, 0x4a, 0x05, 0x97, 0x63, 0xb9, 0xd5, 0x09, 0xc1, 0x4b, 0xc2, 0x4c, 0xba, 0xbe, + 0x1e, 0x7c, 0x78, 0x82, 0x34, 0x0f, 0x89, 0x6c, 0xe3, 0xe7, 0x28, 0xd4, 0x80, 0x52, 0xab, 0x55, + 0xd7, 0xe5, 0x9f, 0x05, 0x8b, 0x47, 0x04, 0xf8, 0x8d, 0xff, 0x51, 0xcc, 0x35, 0x11, 0xb5, 0xd2, + 0x37, 0x93, 0xfb, 0x8c, 0xdc, 0xc5, 0xf1, 0x2a, 0x34, 0x80, 0x43, 0x55, 0x97, 0x32, 0xa8, 0xf6, + 0x11, 0xa3, 0x13, 0x20, 0x5e, 0xf7, 0xac, 0x35, 0xcf, 0xd8, 0xc7, 0x7d, 0x1f, 0x2f, 0x55, 0x2d, + 0x66, 0x54, 0x1a, 0xe3, 0x80, 0xf1, 0x04, 0xc0, 0x2f, 0xfa, 0xe6, 0x23, 0xc8, 0x03, 0x05, 0xbf, + 0x13, 0x8a, 0x20, 0x25, 0xe0, 0xd6, 0x78, 0x6c, 0xd7, 0x62, 0x13, 0x16, 0xf9, 0xd7, 0xf1, 0x42, + 0xc3, 0xa8, 0x40, 0x43, 0xaf, 0x59, 0x0d, 0x0e, 0xd4, 0x2b, 0xf6, 0x98, 0xd8, 0xdb, 0x14, 0x5b, + 0xe4, 0x65, 0x7c, 0x95, 0x82, 0x63, 0x53, 0xae, 0xd7, 0x2c, 0x68, 0x54, 0x59, 0x3c, 0x98, 0x0a, + 0x2e, 0x47, 0xb5, 0x05, 0xb9, 0xb9, 0x29, 0xf6, 0xc8, 0xeb, 0xf8, 0x79, 0x4f, 0x49, 0x5e, 0x8a, + 0xaf, 0x1b, 0x12, 0xba, 0x44, 0xca, 0xe4, 0x15, 0x4a, 0x8b, 0xf4, 0xd3, 0x30, 0x56, 0xa4, 0x9f, + 0xb2, 0xc8, 0xb7, 0x39, 0x34, 0xc9, 0x75, 0x1c, 0xe6, 0xd0, 0x32, 0x5a, 0x5c, 0x64, 0x5e, 0x54, + 0xf3, 0x56, 0x33, 0x74, 0x2a, 0x05, 0x07, 0xdb, 0x56, 0x55, 0x36, 0x4b, 0xcd, 0x7d, 0x24, 0x29, + 0x1c, 0xab, 0x02, 0x33, 0xa9, 0x25, 0x66, 0x90, 0x78, 0x4c, 0x46, 0x3a, 0xb0, 0x45, 0x12, 0x38, + 0xe2, 0xd3, 0x1c, 0x5f, 0x48, 0xa1, 0xe5, 0x88, 0xd6, 0x5f, 0x93, 0x7b, 0x38, 0x2c, 0x48, 0x91, + 0x21, 0xc5, 0x72, 0x85, 0x09, 0xd3, 0x76, 0x34, 0x44, 0x75, 0x57, 0xa0, 0x14, 0x5b, 0x9c, 0x76, + 0x35, 0x0f, 0x92, 0x7c, 0x88, 0x63, 0x03, 0x53, 0x9f, 0x97, 0x10, 0xdf, 0x9d, 0xf5, 0x84, 0xfc, + 0x17, 0x50, 0xf2, 0x98, 0x41, 0x70, 0xf2, 0x16, 0xc6, 0xf6, 0x71, 0x0b, 0xa8, 0xee, 0xe2, 0xc5, + 0xa3, 0xa2, 0xc0, 0x13, 0x23, 0x47, 0xdd, 0xb5, 0xe0, 0xd8, 0xcf, 0xbc, 0xa8, 0xd0, 0x76, 0x77, + 0x86, 0x9a, 0xd4, 0xd5, 0xcb, 0x68, 0x52, 0x8b, 0x5f, 0xaa, 0x49, 0xed, 0xe1, 0x48, 0x1d, 0xb8, + 0xe8, 0x2e, 0x5e, 0xbb, 0x9b, 0xa1, 0x51, 0x69, 0x57, 0xea, 0x72, 0x41, 0xde, 0xc3, 0xd8, 0xcb, + 0x5d, 0x06, 0xdc, 0xeb, 0x1f, 0xb3, 0x37, 0xa7, 0xa8, 0xc4, 0x2a, 0x01, 0x4f, 0xbc, 0x85, 0x63, + 0x03, 0x97, 0xee, 0x66, 0xe6, 0x7d, 0xe8, 0x7a, 0x59, 0xec, 0x3e, 0x92, 0xe7, 0xf1, 0x7c, 0xc7, + 0x68, 0xb4, 0xfd, 0x04, 0x96, 0x8b, 0xb5, 0xc0, 0x9b, 0x28, 0x71, 0x1b, 0x2b, 0xa3, 0xb7, 0x39, + 0x8d, 0xfd, 0x4e, 0x28, 0x32, 0xaf, 0x84, 0xd3, 0x3f, 0x46, 0x78, 0x61, 0x30, 0x4b, 0xc8, 0x1e, + 0x9e, 0xb7, 0x38, 0x34, 0x59, 0x5c, 0xb6, 0xe0, 0x6f, 0xcd, 0x98, 0x69, 0x9a, 0x44, 0x21, 0xaf, + 0xe3, 0xb0, 0x7c, 0xed, 0x88, 0x07, 0x04, 0x5e, 0x7c, 0x04, 0xaf, 0xe8, 0x0a, 0x05, 0xd9, 0x9e, + 0x5e, 0xfa, 0x3e, 0xbe, 0xba, 0x21, 0x3a, 0xe5, 0xec, 0xa3, 0xc8, 0x32, 0x56, 0x6a, 0x86, 0xd5, + 0xd0, 0xad, 0x5a, 0xbf, 0xa3, 0x8a, 0x6a, 0x8f, 0x68, 0x8b, 0xee, 0xfe, 0x76, 0xcd, 0xef, 0x94, + 0x2b, 0xff, 0x41, 0xf8, 0x85, 0xb1, 0x73, 0x07, 0x49, 0xe0, 0xeb, 0x5b, 0xc5, 0xb2, 0xae, 0x95, + 0x0e, 0xf4, 0xcd, 0x7d, 0x6d, 0x2f, 0x5f, 0xd6, 0x37, 0x8a, 0x9b, 0xf9, 0xc3, 0xdd, 0xb2, 0x32, + 0x47, 0xbe, 0x86, 0x97, 0x46, 0x64, 0x9b, 0xfb, 0x9a, 0x5e, 0xd0, 0x8a, 0xf9, 0x72, 0x51, 0x41, + 0x24, 0x89, 0x13, 0x63, 0xc4, 0x5a, 0xf1, 0x60, 0x37, 0x5f, 0x28, 0x2a, 0x01, 0xb2, 0x84, 0x5f, + 0x18, 0x91, 0x97, 0xca, 0xf9, 0xf2, 0x61, 0x49, 0x09, 0x92, 0x17, 0xf1, 0x57, 0x46, 0x44, 0x5a, + 0x31, 0xbf, 0xa1, 0x84, 0xc8, 0x2b, 0x38, 0x75, 0x4e, 0xb0, 0x59, 0xd4, 0xb4, 0xed, 0x3b, 0x5b, + 0xfa, 0xfe, 0xfa, 0x4e, 0xb1, 0x50, 0x2e, 0x29, 0xf3, 0x63, 0xb4, 0xd6, 0xb5, 0xfd, 0x77, 0x8b, + 0x77, 0xa4, 0x72, 0xf1, 0x4e, 0xa1, 0x58, 0x52, 0xc2, 0xb9, 0x3f, 0xc5, 0x70, 0x30, 0x7f, 0xb0, + 0x4d, 0x7e, 0x14, 0xc0, 0x61, 0x39, 0x01, 0x91, 0x99, 0x06, 0xa6, 0xc4, 0xad, 0x29, 0xad, 0xbc, + 0x51, 0xf3, 0x17, 0xa8, 0xf7, 0xb7, 0xf8, 0xbb, 0xb5, 0x5b, 0x0f, 0xcc, 0x0c, 0x03, 0xb3, 0x4d, + 0xa1, 0x09, 0xec, 0x28, 0x53, 0x31, 0x98, 0x65, 0x66, 0xda, 0x0c, 0xe8, 0x6b, 0xa3, 0x22, 0xc6, + 0x8d, 0x56, 0xd5, 0xa0, 0x55, 0x29, 0xed, 0x00, 0xcb, 0x58, 0x76, 0xc6, 0xa1, 0xf6, 0x83, 0x6e, + 0xe6, 0x98, 0x5a, 0x1c, 0x3e, 0xfa, 0xe7, 0xbf, 0x7f, 0x1e, 0x78, 0x27, 0xbd, 0xe6, 0xbd, 0x96, + 0x67, 0xfb, 0xd9, 0xc1, 0xb2, 0xdf, 0xf7, 0x1b, 0x8a, 0xda, 0xdf, 0x3c, 0x39, 0xff, 0x4e, 0xc8, + 0xd6, 0xd0, 0x0a, 0xf9, 0x61, 0x00, 0x07, 0xb7, 0x80, 0x93, 0x9b, 0xd3, 0xcc, 0xab, 0x92, 0x88, + 0xdc, 0xf4, 0x23, 0x6e, 0xfa, 0x97, 0xe8, 0x93, 0xbf, 0x04, 0x5c, 0x26, 0x0e, 0xc6, 0x33, 0xd1, + 0xb4, 0x5b, 0x16, 0xb7, 0x2f, 0x20, 0xc3, 0x57, 0x18, 0xe2, 0x83, 0x82, 0x51, 0x15, 0x74, 0xac, + 0x91, 0x37, 0xc7, 0xd1, 0x71, 0x21, 0x0b, 0x52, 0x7c, 0x42, 0x3e, 0x0e, 0xe0, 0x90, 0x5b, 0xd0, + 0x24, 0x37, 0x55, 0xf5, 0x4b, 0x2e, 0x56, 0x67, 0xe8, 0x18, 0xe9, 0x9f, 0x3e, 0x5b, 0x32, 0x56, + 0xc9, 0xcd, 0xa9, 0xc9, 0x20, 0xbf, 0x0d, 0xe0, 0x2b, 0xde, 0x20, 0x4f, 0x66, 0x1b, 0xfc, 0x13, + 0x6f, 0x4c, 0x6b, 0xe6, 0xd1, 0xf1, 0xfb, 0x67, 0x52, 0x21, 0xfb, 0x89, 0x9d, 0xd9, 0x2b, 0x64, + 0x44, 0xef, 0xc4, 0xad, 0x98, 0xcf, 0x10, 0x0e, 0xcb, 0x5e, 0x3d, 0x71, 0x03, 0x19, 0x6a, 0xed, + 0x89, 0xeb, 0xaa, 0xfc, 0x7c, 0xa5, 0xfa, 0x9f, 0xaf, 0xd4, 0x62, 0xd3, 0xe1, 0xdd, 0xf4, 0xcf, + 0x9e, 0x49, 0xfc, 0xdf, 0x5e, 0x99, 0xb9, 0x24, 0xd6, 0xd0, 0x4a, 0x82, 0x3f, 0x3c, 0x45, 0x81, + 0x7f, 0x9c, 0xa2, 0xd7, 0x26, 0x8b, 0x54, 0xfe, 0xe3, 0x3f, 0x3e, 0x45, 0xa8, 0x77, 0x8a, 0x72, + 0xd3, 0xcf, 0x0a, 0x1f, 0xfd, 0x3d, 0x1e, 0x50, 0xd0, 0xfa, 0x6f, 0xd0, 0xa7, 0xb7, 0xe7, 0x0b, + 0xda, 0xe1, 0xc6, 0xee, 0xa3, 0x27, 0xc9, 0xb9, 0xc7, 0x4f, 0x92, 0x73, 0x9f, 0x3f, 0x49, 0xa2, + 0x1f, 0xf4, 0x92, 0xe8, 0x8f, 0xbd, 0x24, 0xfa, 0xa4, 0x97, 0x44, 0x8f, 0x7a, 0x49, 0xf4, 0xaf, + 0x5e, 0x12, 0x3d, 0xed, 0x25, 0xe7, 0x3e, 0xef, 0x25, 0xd1, 0x4f, 0xce, 0x92, 0x73, 0x0f, 0xcf, + 0x92, 0xe8, 0xd1, 0x59, 0x72, 0xee, 0xf1, 0x59, 0x72, 0xee, 0x83, 0x7b, 0x75, 0xdb, 0xb9, 0x5f, + 0x57, 0x3b, 0xb6, 0x3b, 0xb3, 0x53, 0x43, 0x6d, 0xb3, 0xac, 0x78, 0x70, 0x5f, 0x6c, 0x5d, 0x92, + 0x3a, 0x56, 0x15, 0x68, 0xc6, 0x17, 0x67, 0x9d, 0x4a, 0xdd, 0xce, 0xc2, 0x03, 0xee, 0x7d, 0xf2, + 0xba, 0xf8, 0x6b, 0x5a, 0x25, 0x2c, 0xae, 0x6e, 0xf5, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x6d, + 0x6d, 0xee, 0x55, 0x39, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.vesapi.go index ba9553589..0885eb9a2 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/public_crudapi.vesapi.go @@ -2870,18 +2870,18 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIEndpointProtectionRule": { + "common_wafAPIEndpointProtectionRule": { "type": "object", "description": "API Protection Rule for a specific endpoint", "title": "API Endpoint Protection Rule", "x-displayname": "API Endpoint Protection Rule", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIEndpointProtectionRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIEndpointProtectionRule", "properties": { "action": { "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "action", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRuleAction", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", "x-displayname": "Rule Action", "x-ves-required": "true", "x-ves-validation-rules": { @@ -2950,18 +2950,18 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIGroupProtectionRule": { + "common_wafAPIGroupProtectionRule": { "type": "object", "description": "API Protection Rule for a group or a base url", "title": "API Group Protection Rule", "x-displayname": "API Group Protection Rule", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIGroupProtectionRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroupProtectionRule", "properties": { "action": { "description": " The action to take if the input request matches the rule.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "action", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRuleAction", + "$ref": "#/definitions/common_wafAPIProtectionRuleAction", "x-displayname": "Rule Action", "x-ves-required": "true", "x-ves-validation-rules": { @@ -3035,11 +3035,11 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIGroups": { + "common_wafAPIGroups": { "type": "object", "title": "api groups", "x-displayname": "API Groups", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIGroups", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIGroups", "properties": { "api_groups": { "type": "array", @@ -3060,13 +3060,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIProtectionRuleAction": { + "common_wafAPIProtectionRuleAction": { "type": "object", "description": "The action to take if the input request matches the rule.", "title": "API Protection Rule Action", "x-displayname": "API Protection Rule Action", "x-ves-oneof-field-action": "[\"allow\",\"deny\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIProtectionRuleAction", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRuleAction", "properties": { "allow": { "description": "Exclusive with [deny]\n Allow the request to proceed.", @@ -3082,12 +3082,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIProtectionRules": { + "common_wafAPIProtectionRules": { "type": "object", "description": "API Protection Rules", "title": "API Protection Rules", "x-displayname": "API Protection Rules", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIProtectionRules", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIProtectionRules", "properties": { "api_endpoint_rules": { "type": "array", @@ -3095,7 +3095,7 @@ var APISwaggerJSON string = `{ "title": "api_endpoint_rules", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerAPIEndpointProtectionRule" + "$ref": "#/definitions/common_wafAPIEndpointProtectionRule" }, "x-displayname": "API Endpoints", "x-ves-validation-rules": { @@ -3108,7 +3108,7 @@ var APISwaggerJSON string = `{ "title": "api_groups_rules", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerAPIGroupProtectionRule" + "$ref": "#/definitions/common_wafAPIGroupProtectionRule" }, "x-displayname": "Server URLs and API Groups", "x-ves-validation-rules": { @@ -3117,20 +3117,20 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAPIRateLimit": { + "common_wafAPIRateLimit": { "type": "object", "title": "APIRateLimit", - "x-displayname": "API Rate Limit", + "x-displayname": "APIRateLimit", "x-ves-oneof-field-ip_allowed_list_choice": "[\"bypass_rate_limiting_rules\",\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APIRateLimit", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APIRateLimit", "properties": { "api_endpoint_rules": { "type": "array", - "description": " Sets of rules for a specific endpoints.\n Order matters as it uses first match policy.\n For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "description": " Sets of rules for a specific endpoints.\n Order is matter as it uses first match policy.\n For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", "title": "api_endpoint_policy", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerApiEndpointRule" + "$ref": "#/definitions/common_wafApiEndpointRule" }, "x-displayname": "API Endpoints", "x-ves-validation-rules": { @@ -3140,13 +3140,13 @@ var APISwaggerJSON string = `{ "bypass_rate_limiting_rules": { "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list no_ip_allowed_list]\n This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", "title": "bypass_rate_limiting_policy", - "$ref": "#/definitions/http_loadbalancerBypassRateLimitingRules", + "$ref": "#/definitions/common_wafBypassRateLimitingRules", "x-displayname": "Bypass Rate Limiting" }, "custom_ip_allowed_list": { "description": "Exclusive with [bypass_rate_limiting_rules ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", "title": "Custom IP list", - "$ref": "#/definitions/http_loadbalancerCustomIpAllowedList", + "$ref": "#/definitions/common_wafCustomIpAllowedList", "x-displayname": "IP Allowed List using IP Prefix Set(s)" }, "ip_allowed_list": { @@ -3156,33 +3156,33 @@ var APISwaggerJSON string = `{ "x-displayname": "IP Allowed List" }, "no_ip_allowed_list": { - "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list ip_allowed_list]\n There is no skip rules for rate limiting, all clients go through rate limiting.", - "title": "No Skip Rules", + "description": "Exclusive with [bypass_rate_limiting_rules custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "No Skip Rules" + "x-displayname": "No IP Allowed" }, "server_url_rules": { "type": "array", - "description": " Set of rules for entire domain or base path that contain multiple endpoints.\n Order matters as it uses first match policy.\n For matching also specific endpoints you can use the API endpoint rules set bellow.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", + "description": " Set of rules for entire domain or base path that contain multiple endpoints.\n Order is matter as it uses first match policy.\n For matching also specific endpoints you can use the API endpoint rules set bellow.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", "title": "server_url_policy", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerServerUrlRule" + "$ref": "#/definitions/common_wafServerUrlRule" }, - "x-displayname": "Server URLs and API Groups", + "x-displayname": "Server URLs", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "20" } } } }, - "http_loadbalancerAPISpecificationSettings": { + "common_wafAPISpecificationSettings": { "type": "object", "description": "Settings for api specification (api definition, OpenAPI validation, etc.)", "title": "APISpecificationSettings", "x-displayname": "API Specification and Validation", "x-ves-oneof-field-validation_target_choice": "[\"validation_all_spec_endpoints\",\"validation_custom_list\",\"validation_disabled\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.APISpecificationSettings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.APISpecificationSettings", "properties": { "api_definition": { "description": " Specify API definition which includes application API paths and methods derived from swagger files.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -3197,13 +3197,13 @@ var APISwaggerJSON string = `{ "validation_all_spec_endpoints": { "description": "Exclusive with [validation_custom_list validation_disabled]\n Validate all API endpoints specified by the API Inventory.\n All other API endpoints would proceed according to \"Fall Through Mode\"", "title": "validation_all_spec_endpoints", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationAllSpecEndpointsSettings", + "$ref": "#/definitions/common_wafOpenApiValidationAllSpecEndpointsSettings", "x-displayname": "API Inventory" }, "validation_custom_list": { "description": "Exclusive with [validation_all_spec_endpoints validation_disabled]\n Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other end-points not listed will act according to \"Fall Through Mode\"", "title": "Custom list", - "$ref": "#/definitions/http_loadbalancerValidateApiBySpecRule", + "$ref": "#/definitions/common_wafValidateApiBySpecRule", "x-displayname": "Custom List" }, "validation_disabled": { @@ -3214,150 +3214,7 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAdvancedOptionsType": { - "type": "object", - "description": "This defines various options to define a route", - "title": "Advanced options", - "x-displayname": "Advanced Options", - "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", - "x-ves-oneof-field-strict_sni_host_header_check_choice": "[]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType", - "properties": { - "buffer_policy": { - "description": " Some upstream applications are not capable of handling streamed data and high network latency.\n This config enables buffering the entire request before sending to upstream application. We can\n specify the maximum buffer size and buffer interval with this config.", - "title": "Buffer configuration for requests", - "$ref": "#/definitions/schemaBufferConfigType", - "x-displayname": "Buffer Policy" - }, - "compression_params": { - "description": " Enables load balancer to compress dispatched data from an upstream service upon client request.\n Only GZIP compression is supported", - "title": "Compression configuration", - "$ref": "#/definitions/virtual_hostCompressionType", - "x-displayname": "Compression Parameters" - }, - "custom_errors": { - "type": "object", - "description": " Map of integer error codes as keys and string values that can be used to provide custom\n http pages for each error code.\n Key of the map can be either response code class or HTTP Error code. Response code classes\n for key is configured as follows\n 3 -- for 3xx response code class\n 4 -- for 4xx response code class\n 5 -- for 5xx response code class\n Value of the map is string which represents custom HTTP responses.\n Specific response code takes preference when both response code and response code class\n matches for a request.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.uint32.ranges: 3,4,5,300-599\n ves.io.schema.rules.map.max_pairs: 16\n ves.io.schema.rules.map.values.string.max_len: 65536\n ves.io.schema.rules.map.values.string.uri_ref: true\n", - "title": "Custom Errors", - "x-displayname": "Custom Error Responses", - "x-ves-example": "value", - "x-ves-validation-rules": { - "ves.io.schema.rules.map.keys.uint32.ranges": "3,4,5,300-599", - "ves.io.schema.rules.map.max_pairs": "16", - "ves.io.schema.rules.map.values.string.max_len": "65536", - "ves.io.schema.rules.map.values.string.uri_ref": "true" - } - }, - "disable_default_error_pages": { - "type": "boolean", - "description": " Disable the use of default F5XC error pages.", - "title": "Disable the use of default F5XC error pages", - "format": "boolean", - "x-displayname": "Disable Default Error Pages" - }, - "disable_path_normalize": { - "description": "Exclusive with [enable_path_normalize]\n", - "title": "Disable Path normalization", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, - "enable_path_normalize": { - "description": "Exclusive with [disable_path_normalize]\n", - "title": "Enable Path normalization", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Enable" - }, - "idle_timeout": { - "type": "integer", - "description": " The amount of time that a stream can exist without upstream or downstream activity, in milliseconds.\n The stream is terminated with a HTTP 504 (Gateway Timeout) error code if no upstream response header has been\n received, otherwise the stream is reset.\n\nExample: - \"2000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 3600000\n", - "title": "Idle timeout", - "format": "int64", - "x-displayname": "Idle Timeout", - "x-ves-example": "2000", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "3600000" - } - }, - "max_request_header_size": { - "type": "integer", - "description": " The maximum request header size for downstream connections, in KiB.\n A HTTP 431 (Request Header Fields Too Large) error code is sent for requests that exceed this size.\n\n If multiple load balancers share the same advertise_policy, the highest value configured across all\n such load balancers is used for all the load balancers in question.\n\nExample: - \"60\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 96\n", - "title": "Maximum request header size", - "format": "int64", - "x-displayname": "Maximum Request Header Size", - "x-ves-example": "60", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "96" - } - }, - "request_headers_to_add": { - "type": "array", - "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Headers to add in request", - "maxItems": 32, - "items": { - "$ref": "#/definitions/schemaHeaderManipulationOptionType" - }, - "x-displayname": "Add Request Headers", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "request_headers_to_remove": { - "type": "array", - "description": " List of keys of Headers to be removed from the HTTP request being sent towards upstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Header to be removed from request", - "maxItems": 32, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 256 - }, - "x-displayname": "Remove Request Headers", - "x-ves-example": "host", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "response_headers_to_add": { - "type": "array", - "description": " Headers are key-value pairs to be added to HTTP response being sent towards downstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Headers to add in response", - "maxItems": 32, - "items": { - "$ref": "#/definitions/schemaHeaderManipulationOptionType" - }, - "x-displayname": "Add Response Headers", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "response_headers_to_remove": { - "type": "array", - "description": " List of keys of Headers to be removed from the HTTP response being sent towards downstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "Header to be removed from response", - "maxItems": 32, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 256 - }, - "x-displayname": "Remove Response Headers", - "x-ves-example": "host", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerApiDefinitionList": { + "common_wafApiDefinitionList": { "type": "object", "description": "x-displayName: \"API Definition List\"\nList of api definitions.", "title": "api definition list", @@ -3372,14 +3229,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerApiDiscoverySetting": { + "common_wafApiDiscoverySetting": { "type": "object", "description": "Specifies the settings used for API discovery", "title": "API Discovery Setting", "x-displayname": "API Discovery Setting", "x-ves-displayorder": "1,6,5", "x-ves-oneof-field-learn_from_redirect_traffic": "[\"disable_learn_from_redirect_traffic\",\"enable_learn_from_redirect_traffic\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ApiDiscoverySetting", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiDiscoverySetting", "properties": { "disable_learn_from_redirect_traffic": { "description": "Exclusive with [enable_learn_from_redirect_traffic]\n Disable learning API patterns from traffic with redirect response codes 3xx", @@ -3407,12 +3264,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerApiEndpointDetails": { + "common_wafApiEndpointDetails": { "type": "object", "description": "This defines api endpoint", "title": "ApiEndpointDetails", "x-displayname": "API Endpoint", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ApiEndpointDetails", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointDetails", "properties": { "methods": { "type": "array", @@ -3446,13 +3303,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerApiEndpointRule": { + "common_wafApiEndpointRule": { "type": "object", "title": "ApiEndpointRule", "x-displayname": "ApiEndpointRule", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ApiEndpointRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ApiEndpointRule", "properties": { "any_domain": { "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", @@ -3489,7 +3346,7 @@ var APISwaggerJSON string = `{ "inline_rate_limiter": { "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", "title": "Inline Rate Limiter", - "$ref": "#/definitions/http_loadbalancerInlineRateLimiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", "x-displayname": "Specific Values" }, "ref_rate_limiter": { @@ -3517,91 +3374,11 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAppEndpointType": { - "type": "object", - "description": "x-displayName: \"Application Endpoint\"\nApplication Endpoint.", - "title": "AppEndpointType", - "properties": { - "allow_good_bots": { - "description": "System flags Good Bot traffic and allow it to continue to the origin", - "title": "x-displayName: \"Allow All Good Bots to Continue to Origin\"", - "$ref": "#/definitions/ioschemaEmpty" - }, - "any_domain": { - "description": "x-displayName: \"Any Domain\"\nAny Domain.", - "title": "Any domain", - "$ref": "#/definitions/ioschemaEmpty" - }, - "domain": { - "description": "x-displayName: \"Domain\"\nDomain matcher.", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType" - }, - "flow_label": { - "description": "x-displayName: \"Specify Endpoint label category\"", - "title": "flow_label", - "$ref": "#/definitions/schemaBotDefenseFlowLabelCategoriesChoiceType" - }, - "http_methods": { - "type": "array", - "description": "x-displayName: \"HTTP Methods\"\nx-required\nList of HTTP methods.", - "title": "HTTP Methods", - "items": { - "$ref": "#/definitions/schemaBotHttpMethod" - } - }, - "metadata": { - "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType" - }, - "mitigate_good_bots": { - "description": "System flags Good Bot Traffic, but mitigation is handled in the same manner as malicious automated traffic defined above", - "title": "x-displayName: \"Apply Mitigation to Good Bots\"", - "$ref": "#/definitions/ioschemaEmpty" - }, - "mitigation": { - "description": "x-displayName: \"Bot Traffic Mitigation\"\nx-required\nMitigation action.", - "title": "Mitigation", - "$ref": "#/definitions/policyShapeBotMitigationAction" - }, - "mobile": { - "description": "x-displayName: \"Mobile Traffic\"\nMobile traffic channel.", - "title": "MobileTrafficChannel", - "$ref": "#/definitions/ioschemaEmpty" - }, - "path": { - "description": "x-displayName: \"Path\"\nx-required\nMatching URI path of the route.", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType" - }, - "protocol": { - "description": "x-displayName: \"Protocol\"\nProtocol.", - "title": "Protocol", - "$ref": "#/definitions/http_loadbalancerURLScheme" - }, - "undefined_flow_label": { - "description": "x-displayName: \"Undefined\"", - "title": "undefined", - "$ref": "#/definitions/ioschemaEmpty" - }, - "web": { - "description": "x-displayName: \"Web Traffic\"\nWeb traffic channel.", - "title": "WebTrafficChannel", - "$ref": "#/definitions/ioschemaEmpty" - }, - "web_mobile": { - "description": "x-displayName: \"Web and Mobile Traffic\"\nWeb and mobile traffic channel.", - "title": "WebMobileTrafficChannel", - "$ref": "#/definitions/http_loadbalancerWebMobileTrafficType" - } - } - }, - "http_loadbalancerAudiences": { + "common_wafAudiences": { "type": "object", "title": "audiences", "x-displayname": "Audiences", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.Audiences", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Audiences", "properties": { "audiences": { "type": "array", @@ -3624,32 +3401,11 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerAutoMitigationAction": { - "type": "object", - "description": "Select action for auto mitigation", - "title": "Auto Mitigation Action", - "x-displayname": "Auto Mitigation Action", - "x-ves-oneof-field-action": "[\"block\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AutoMitigationAction", - "properties": { - "block": { - "description": "Exclusive with []\n", - "title": "block", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Block" - }, - "js_challenge": { - "title": "JavaScript Challenge", - "$ref": "#/definitions/virtual_hostJavascriptChallengeType", - "x-displayname": "JavaScript Challenge" - } - } - }, - "http_loadbalancerBasePathsType": { + "common_wafBasePathsType": { "type": "object", "title": "base_paths", "x-displayname": "Base Paths", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.BasePathsType", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BasePathsType", "properties": { "base_paths": { "type": "array", @@ -3672,77 +3428,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerBotAdvancedMobileSDKConfigType": { + "common_wafBypassRateLimitingRule": { "type": "object", - "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers.", - "title": "BotAdvancedMobileSDKConfigType", - "properties": { - "mobile_identifier": { - "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers Type.", - "title": "MobileTrafficIdentifierType", - "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" - } - } - }, - "http_loadbalancerBotDefenseAdvancedPolicyType": { - "type": "object", - "description": "x-displayName: \"Bot Defense Advanced Policy\"\nThis defines various configuration options for Bot Defense Advanced Policy.", - "title": "BotDefenseAdvancedPolicyType", - "properties": { - "disable_mobile_sdk": { - "description": "x-displayName: \"Disable Mobile SDK\"\nDisable Mobile SDK.", - "title": "Disable Mobile SDK", - "$ref": "#/definitions/ioschemaEmpty" - }, - "js_download_path": { - "type": "string", - "description": "x-displayName: \"Web Client JavaScript Download Path\"\nx-example: \"/common.js\"\nx-required\nCustomize Bot Defense Web Client JavaScript path", - "title": "js_download_path" - }, - "mobile_sdk_config": { - "description": "x-displayName: \"Enable Mobile SDK\"\nEnable Mobile SDK Configuration", - "title": "Enable Mobile SDK", - "$ref": "#/definitions/http_loadbalancerBotAdvancedMobileSDKConfigType" - }, - "protected_app_endpoints": { - "type": "array", - "description": "x-displayName: \"Protected App Endpoints\"\nx-required\nList of protected endpoints (max 128 items)", - "title": "ProtectedAppEndpointType", - "items": { - "$ref": "#/definitions/http_loadbalancerProtectedAppEndpointType" - } - } - } - }, - "http_loadbalancerBotDefenseAdvancedType": { - "type": "object", - "description": "x-displayName: \"Bot Defense Advanced\"\nBot Defense Advanced", - "title": "BotDefenseAdvancedType", - "properties": { - "mobile": { - "description": "x-displayName: \"Infrastructure For Mobile\"\nSelect infrastructure for mobile.", - "title": "Mobile", - "$ref": "#/definitions/schemaviewsObjectRefType" - }, - "policy": { - "description": "x-displayName: \"Bot Defense Advanced Policy\"\nx-required\nBot Defense Advanced Policy.", - "title": "BotDefenseAdvancedPolicyType", - "$ref": "#/definitions/http_loadbalancerBotDefenseAdvancedPolicyType" - }, - "web": { - "description": "x-displayName: \"Infrastructure For Web\"\nSelect infrastructure for web.", - "title": "Web", - "$ref": "#/definitions/schemaviewsObjectRefType" - } - } - }, - "http_loadbalancerBypassRateLimitingRule": { - "type": "object", - "title": "BypassRateLimitingRule", - "x-displayname": "Bypass Rate Limiting Rule", - "x-ves-oneof-field-destination_type": "[\"any_url\",\"api_endpoint\",\"api_groups\",\"base_path\"]", - "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRule", + "title": "BypassRateLimitingRule", + "x-displayname": "Bypass Rate Limiting Rule", + "x-ves-oneof-field-destination_type": "[\"any_url\",\"api_endpoint\",\"api_groups\",\"base_path\"]", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRule", "properties": { "any_domain": { "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", @@ -3759,7 +3451,7 @@ var APISwaggerJSON string = `{ "api_endpoint": { "description": "Exclusive with [any_url api_groups base_path]\n The endpoint (path) of the request.\n\nExample: - \"/endpoint1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "api endpoint path", - "$ref": "#/definitions/http_loadbalancerApiEndpointDetails", + "$ref": "#/definitions/common_wafApiEndpointDetails", "x-displayname": "API Endpoint", "x-ves-example": "/endpoint1", "x-ves-required": "true", @@ -3770,7 +3462,7 @@ var APISwaggerJSON string = `{ "api_groups": { "description": "Exclusive with [any_url api_endpoint base_path]\n Validation will be performed for the endpoints mentioned in the API Groups", "title": "api group", - "$ref": "#/definitions/http_loadbalancerAPIGroups", + "$ref": "#/definitions/common_wafAPIGroups", "x-displayname": "API Groups" }, "base_path": { @@ -3811,141 +3503,34 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerBypassRateLimitingRules": { + "common_wafBypassRateLimitingRules": { "type": "object", "description": "This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.", "title": "bypass_rate_limiting_policy", "x-displayname": "Bypass Rate Limiting", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRules", + "x-ves-proto-message": "ves.io.schema.views.common_waf.BypassRateLimitingRules", "properties": { "bypass_rate_limiting_rules": { "type": "array", - "description": " This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n ves.io.schema.rules.repeated.unique: true\n", + "description": " This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 20\n", "title": "bypass_rate_limiting_policy", "maxItems": 20, "items": { - "$ref": "#/definitions/http_loadbalancerBypassRateLimitingRule" + "$ref": "#/definitions/common_wafBypassRateLimitingRule" }, "x-displayname": "Bypass Rate Limiting", "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "20", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType": { - "type": "object", - "description": "Insert Client-Side Defense JavaScript in all pages with the exceptions", - "title": "CSDJavaScriptInsertAllWithExceptionsType", - "x-displayname": "Insert JavaScript in All Pages with the Exceptions", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType", - "properties": { - "exclude_list": { - "type": "array", - "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "exclude_list", - "maxItems": 128, - "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" - }, - "x-displayname": "Exclude Pages", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerCSDJavaScriptInsertType": { - "type": "object", - "description": "This defines custom JavaScript insertion rules for Client-Side Defense Policy.", - "title": "CSDJavaScriptInsertType", - "x-displayname": "JavaScript Custom Insertion Rules", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType", - "properties": { - "exclude_list": { - "type": "array", - "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", - "title": "exclude_list", - "maxItems": 128, - "items": { - "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" - }, - "x-displayname": "Exclude Paths", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "rules": { - "type": "array", - "description": " Required list of pages to insert Client-Side Defense client JavaScript.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", - "title": "rules", - "minItems": 1, - "maxItems": 128, - "items": { - "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertionRule" - }, - "x-displayname": "JavaScript Insertions", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerCSDJavaScriptInsertionRule": { - "type": "object", - "description": "This defines a rule for Client-Side Defense JavaScript insertion.", - "title": "CSDJavaScriptInsertionRule", - "x-displayname": "JavaScript Insertion Rule", - "x-ves-oneof-field-domain_matcher_choice": "[\"any_domain\",\"domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule", - "properties": { - "any_domain": { - "description": "Exclusive with [domain]\n Any Domain.", - "title": "Any domain", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Any Domain" - }, - "domain": { - "description": "Exclusive with [any_domain]\n Domain matcher.", - "title": "Domain", - "$ref": "#/definitions/schemaDomainType", - "x-displayname": "Domain" - }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "path": { - "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Path", - "$ref": "#/definitions/ioschemaPathMatcherType", - "x-displayname": "Path", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "ves.io.schema.rules.repeated.max_items": "20" } } } }, - "http_loadbalancerChallengeRule": { + "common_wafChallengeRule": { "type": "object", "description": "Challenge rule", "title": "Challenge Rule", "x-displayname": "Challenge Rule", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ChallengeRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRule", "properties": { "metadata": { "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -3969,12 +3554,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerChallengeRuleList": { + "common_wafChallengeRuleList": { "type": "object", "description": "List of challenge rules to be used in policy based challenge", "title": "Challenge Rule List", "x-displayname": "Challenge Rule List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ChallengeRuleList", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ChallengeRuleList", "properties": { "rules": { "type": "array", @@ -3982,7 +3567,7 @@ var APISwaggerJSON string = `{ "title": "Rules", "maxItems": 64, "items": { - "$ref": "#/definitions/http_loadbalancerChallengeRule" + "$ref": "#/definitions/common_wafChallengeRule" }, "x-displayname": "Rules", "x-ves-validation-rules": { @@ -3992,60 +3577,7 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerClientSideDefensePolicyType": { - "type": "object", - "description": "This defines various configuration options for Client-Side Defense policy.", - "title": "ClientSideDefensePolicyType", - "x-displayname": "Client-Side Defense Policy", - "x-ves-oneof-field-java_script_choice": "[\"disable_js_insert\",\"js_insert_all_pages\",\"js_insert_all_pages_except\",\"js_insertion_rules\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType", - "properties": { - "disable_js_insert": { - "description": "Exclusive with [js_insert_all_pages js_insert_all_pages_except js_insertion_rules]\n Disable JavaScript insertion.", - "title": "Disable JavaScript Insertion", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable JavaScript Insertion" - }, - "js_insert_all_pages": { - "description": "Exclusive with [disable_js_insert js_insert_all_pages_except js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages.", - "title": "Insert JavaScript in All Pages", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Insert JavaScript in All Pages" - }, - "js_insert_all_pages_except": { - "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages with the exceptions.", - "title": "Insert JavaScript in All Pages with the Exceptions", - "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType", - "x-displayname": "Insert JavaScript in All Pages with the Exceptions" - }, - "js_insertion_rules": { - "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insert_all_pages_except]\n Specify custom JavaScript insertion rules.", - "title": "Custom JavaScript Insertion Rules", - "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertType", - "x-displayname": "Custom JavaScript Insertion Rules" - } - } - }, - "http_loadbalancerClientSideDefenseType": { - "type": "object", - "description": "This defines various configuration options for Client-Side Defense Policy.", - "title": "ClientSideDefenseType", - "x-displayname": "Client-Side Defense", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType", - "properties": { - "policy": { - "description": " Configure the pages where you want Client-Side Defense Protection.\n Please ensure that the same domains are configured in the Client-Side Defense configuration.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "ClientSideDefensePolicyType", - "$ref": "#/definitions/http_loadbalancerClientSideDefensePolicyType", - "x-displayname": "Client-Side Defense Policy", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "http_loadbalancerClientSrcRuleAction": { + "common_wafClientSrcRuleAction": { "type": "string", "description": "Action that should be taken when client identifier matches the rule\n", "title": "action", @@ -4057,88 +3589,43 @@ var APISwaggerJSON string = `{ "SKIP_PROCESSING_API_PROTECTION", "SKIP_PROCESSING_OAS_VALIDATION", "SKIP_PROCESSING_DDOS_PROTECTION", - "SKIP_PROCESSING_THREAT_INTELLIGENCE" + "SKIP_PROCESSING_THREAT_MESH" ], "default": "SKIP_PROCESSING_WAF", "x-displayname": "Action", - "x-ves-proto-enum": "ves.io.schema.views.http_loadbalancer.ClientSrcRuleAction" + "x-ves-proto-enum": "ves.io.schema.views.common_waf.ClientSrcRuleAction" }, - "http_loadbalancerCreateRequest": { + "common_wafCustomFallThroughMode": { "type": "object", - "description": "This is the input message of the 'Create' RPC", - "title": "CreateRequest is used to create an instance of http_loadbalancer", - "x-displayname": "Create Request", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CreateRequest", + "description": "Define the fall through settings", + "title": "Custom Fall Through Mode", + "x-displayname": "Custom Fall Through Mode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomFallThroughMode", "properties": { - "metadata": { - "description": " Standard object's metadata", - "title": "metadata", - "$ref": "#/definitions/schemaObjectCreateMetaType", - "x-displayname": "Metadata" - }, - "spec": { - "description": " Specification of the desired behavior of the tenant", - "title": "spec", - "$ref": "#/definitions/viewshttp_loadbalancerCreateSpecType", - "x-displayname": "Spec" + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Custom Fall Through Rule List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafFallThroughRule" + }, + "x-displayname": "Custom Fall Through Rule List", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } } } }, - "http_loadbalancerCreateResponse": { + "common_wafCustomIpAllowedList": { "type": "object", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CreateResponse", - "properties": { - "metadata": { - "description": " Standard object's metadata", - "title": "metadata", - "$ref": "#/definitions/schemaObjectGetMetaType", - "x-displayname": "Metadata" - }, - "spec": { - "description": " Specification of the desired behavior of the tenant", - "title": "spec", - "$ref": "#/definitions/viewshttp_loadbalancerGetSpecType", - "x-displayname": "Spec" - }, - "system_metadata": { - "description": " System generated object's metadata", - "title": "system metadata", - "$ref": "#/definitions/schemaSystemObjectGetMetaType", - "x-displayname": "System Metadata" - } - } - }, - "http_loadbalancerCustomFallThroughMode": { - "type": "object", - "description": "Define the fall through settings", - "title": "Custom Fall Through Mode", - "x-displayname": "Custom Fall Through Mode", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CustomFallThroughMode", - "properties": { - "open_api_validation_rules": { - "type": "array", - "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", - "title": "Custom Fall Through Rule List", - "maxItems": 15, - "items": { - "$ref": "#/definitions/http_loadbalancerFallThroughRule" - }, - "x-displayname": "Custom Fall Through Rule List", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "15", - "ves.io.schema.rules.repeated.unique_metadata_name": "true" - } - } - } - }, - "http_loadbalancerCustomIpAllowedList": { - "type": "object", - "description": "IP Allowed list using existing ip_prefix_set objects", - "title": "Custom IP Allowed List", - "x-displayname": "Custom IP Allowed List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CustomIpAllowedList", + "description": "IP Allowed list using existing ip_prefix_set objects", + "title": "Custom IP Allowed List", + "x-displayname": "Custom IP Allowed List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.CustomIpAllowedList", "properties": { "rate_limiter_allowed_prefixes": { "type": "array", @@ -4159,129 +3646,7 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerDDoSClientSource": { - "type": "object", - "description": "DDoS Mitigation sources to be blocked", - "title": "DDoSClientSource", - "x-displayname": "DDoS Client Source Choice", - "x-ves-displayorder": "1,3,5", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSClientSource", - "properties": { - "asn_list": { - "description": " Addresses that belong to the ASNs in the given list\n The ASN is obtained by performing a lookup for the source IPv4 Address in a GeoIP DB.", - "title": "asn_list", - "$ref": "#/definitions/policyAsnMatchList", - "x-displayname": "ASN List" - }, - "country_list": { - "type": "array", - "description": " Sources that are located in one of the countries in the given list\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.not_in: [0]\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", - "title": "country_list", - "maxItems": 64, - "items": { - "$ref": "#/definitions/policyCountryCode" - }, - "x-displayname": "Country List", - "x-ves-validation-rules": { - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.not_in": "[0]", - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "tls_fingerprint_matcher": { - "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", - "title": "TLS JA3 fingerprint matcher", - "$ref": "#/definitions/policyTlsFingerprintMatcherType", - "x-displayname": "TLS Fingerprint Matcher" - } - } - }, - "http_loadbalancerDDoSMitigationRule": { - "type": "object", - "description": "DDoS Mitigation Rule specifies the sources to be blocked", - "title": "DDoSMitigationRule", - "x-displayname": "DDoS Mitigation Rule", - "x-ves-displayorder": "1,2,7,10", - "x-ves-oneof-field-mitigation_action": "[\"block\"]", - "x-ves-oneof-field-mitigation_choice": "[\"ddos_client_source\",\"ip_prefix_list\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule", - "properties": { - "block": { - "description": "Exclusive with []\n Block user for a duration determined by the expiration time", - "title": "Block User", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Block User" - }, - "ddos_client_source": { - "description": "Exclusive with [ip_prefix_list]\n Combination of Region, ASN and TLS Fingerprints\n\nValidation Rules:\n ves.io.schema.rules.message.required_one_nonzero_field: true\n", - "title": "ddos_client_source", - "$ref": "#/definitions/http_loadbalancerDDoSClientSource", - "x-displayname": "DDoS Client Source", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required_one_nonzero_field": "true" - } - }, - "expiration_timestamp": { - "type": "string", - "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", - "title": "expiration timestamp", - "format": "date-time", - "x-displayname": "Expiration Timestamp", - "x-ves-example": "2019-12-31:44:34.171543432Z", - "x-ves-validation-rules": { - "ves.io.schema.rules.timestamp.within.seconds": "31536000" - } - }, - "ip_prefix_list": { - "description": "Exclusive with [ddos_client_source]\n IPv4 prefix string.", - "title": "ip source", - "$ref": "#/definitions/policyPrefixMatchList", - "x-displayname": "IP Source" - }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "http_loadbalancerDeleteRequest": { - "type": "object", - "description": "This is the input message of the 'Delete' RPC.", - "title": "DeleteRequest is used to delete a http_loadbalancer", - "x-displayname": "Delete Request", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DeleteRequest", - "properties": { - "fail_if_referred": { - "type": "boolean", - "description": " Fail the delete operation if this object is being referred by other objects", - "title": "fail_if_referred", - "format": "boolean", - "x-displayname": "Fail-If-Referred" - }, - "name": { - "type": "string", - "description": " Name of the configuration object\n\nExample: - \"name\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "name" - }, - "namespace": { - "type": "string", - "description": " Namespace in which the configuration object is present\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" - } - } - }, - "http_loadbalancerEnableChallenge": { + "common_wafEnableChallenge": { "type": "object", "description": "Configure auto mitigation i.e risk based challenges for malicious users", "title": "enable challenge", @@ -4289,7 +3654,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.EnableChallenge", + "x-ves-proto-message": "ves.io.schema.views.common_waf.EnableChallenge", "properties": { "captcha_challenge_parameters": { "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", @@ -4329,35 +3694,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerEnableDDoSDetectionSetting": { - "type": "object", - "title": "Enable DDoS Detection", - "x-displayname": "Enable DDoS detection", - "x-ves-oneof-field-auto_mitigation_choice": "[\"disable_auto_mitigation\",\"enable_auto_mitigation\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.EnableDDoSDetectionSetting", - "properties": { - "disable_auto_mitigation": { - "description": "Exclusive with [enable_auto_mitigation]\n", - "title": "Disable Auto Mitigation", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, - "enable_auto_mitigation": { - "description": "Exclusive with [disable_auto_mitigation]\n", - "title": "Enable Auto Mitigation", - "$ref": "#/definitions/http_loadbalancerAutoMitigationAction", - "x-displayname": "Enable" - } - } - }, - "http_loadbalancerFallThroughRule": { + "common_wafFallThroughRule": { "type": "object", "description": "Fall Through Rule for a specific endpoint, base-path, or API group", "title": "Fall Through Rule", "x-displayname": "Fall Through Rule", "x-ves-oneof-field-action_choice": "[\"action_block\",\"action_report\",\"action_skip\"]", "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.FallThroughRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.FallThroughRule", "properties": { "action_block": { "description": "Exclusive with [action_report action_skip]\n Block the request and issue an API security event", @@ -4380,7 +3724,7 @@ var APISwaggerJSON string = `{ "api_endpoint": { "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", "title": "API Endpoint", - "$ref": "#/definitions/http_loadbalancerApiEndpointDetails", + "$ref": "#/definitions/common_wafApiEndpointDetails", "x-displayname": "API Endpoint" }, "api_group": { @@ -4418,181 +3762,66 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerGetResponse": { + "common_wafHttpHeaderMatcherList": { "type": "object", - "description": "This is the output message of the 'Get' RPC", - "title": "GetResponse is the shape of a read http_loadbalancer", - "x-displayname": "Get Response", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.GetResponse", + "description": "Request header name and value pairs", + "title": "HTTP Header", + "x-displayname": "HTTP Header", + "x-ves-proto-message": "ves.io.schema.views.common_waf.HttpHeaderMatcherList", "properties": { - "create_form": { - "description": "Format used to create a new similar object", - "title": "create_form", - "$ref": "#/definitions/http_loadbalancerCreateRequest", - "x-displayname": "CreateRequest Format" - }, - "deleted_referred_objects": { + "headers": { "type": "array", - "description": "The set of deleted objects that are referred by this object", - "title": "deleted_referred_objects", + "description": " List of HTTP header name and value pairs\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "headers", + "maxItems": 16, "items": { - "$ref": "#/definitions/ioschemaObjectRefType" + "$ref": "#/definitions/ioschemaHeaderMatcherType" }, - "x-displayname": "Deleted Referred Objects" + "x-displayname": "HTTP Headers", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16" + } + } + } + }, + "common_wafInlineRateLimiter": { + "type": "object", + "title": "InlineRateLimiter", + "x-displayname": "InlineRateLimiter", + "x-ves-oneof-field-count_by_choice": "[\"ref_user_id\",\"use_http_lb_user_id\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.InlineRateLimiter", + "properties": { + "ref_user_id": { + "description": "Exclusive with [use_http_lb_user_id]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier to be rate limited.", + "title": "ref_user_id", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "User Identification Policy" }, - "disabled_referred_objects": { - "type": "array", - "description": "The set of deleted objects that are referred by this object", - "title": "disabled_referred_objects", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Disabled Referred Objects" + "threshold": { + "type": "integer", + "description": " The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 8192\n", + "title": "threshold", + "format": "int64", + "x-displayname": "Threshold", + "x-ves-example": "1", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gt": "0", + "ves.io.schema.rules.uint32.lte": "8192" + } }, - "metadata": { - "description": " Standard object's metadata", - "title": "metadata", - "$ref": "#/definitions/schemaObjectGetMetaType", - "x-displayname": "Metadata" - }, - "referring_objects": { - "type": "array", - "description": "The set of objects that are referring to this object in their spec", - "title": "referring_objects", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Referring Objects" - }, - "replace_form": { - "description": "Format to replace changeable values in object", - "title": "replace_form", - "$ref": "#/definitions/http_loadbalancerReplaceRequest", - "x-displayname": "ReplaceRequest Format" - }, - "spec": { - "description": " Specification of the desired behavior of the tenant", - "title": "spec", - "$ref": "#/definitions/viewshttp_loadbalancerGetSpecType", - "x-displayname": "Spec" - }, - "status": { - "type": "array", - "description": "The status reported by different services for this configuration object", - "title": "status", - "items": { - "$ref": "#/definitions/http_loadbalancerStatusObject" - }, - "x-displayname": "Status" - }, - "system_metadata": { - "description": " System generated object's metadata", - "title": "system metadata", - "$ref": "#/definitions/schemaSystemObjectGetMetaType", - "x-displayname": "System Metadata" - } - } - }, - "http_loadbalancerGetResponseFormatCode": { - "type": "string", - "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_STATUS: x-displayName: \"Status format\"\nResponse should be in StatusObject(s) format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", - "title": "GetResponseFormatCode", - "enum": [ - "GET_RSP_FORMAT_DEFAULT", - "GET_RSP_FORMAT_FOR_CREATE", - "GET_RSP_FORMAT_FOR_REPLACE", - "GET_RSP_FORMAT_STATUS", - "GET_RSP_FORMAT_READ", - "GET_RSP_FORMAT_REFERRING_OBJECTS", - "GET_RSP_FORMAT_BROKEN_REFERENCES" - ], - "default": "GET_RSP_FORMAT_DEFAULT" - }, - "http_loadbalancerHashPolicyListType": { - "type": "object", - "description": "List of hash policy rules", - "title": "Hash Policy List", - "x-displayname": "Hash Policy List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.HashPolicyListType", - "properties": { - "hash_policy": { - "type": "array", - "description": " Specifies a list of hash policies to use for ring hash load balancing. Each\n hash policy is evaluated individually and the combined result is used to\n route the request\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 8\n ves.io.schema.rules.repeated.unique: true\n", - "title": "hash_policy", - "maxItems": 8, - "items": { - "$ref": "#/definitions/routeHashPolicyType" - }, - "x-displayname": "Hash Policy", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, - "http_loadbalancerHttpHeaderMatcherList": { - "type": "object", - "description": "Request header name and value pairs", - "title": "HTTP Header", - "x-displayname": "HTTP Header", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.HttpHeaderMatcherList", - "properties": { - "headers": { - "type": "array", - "description": " List of HTTP header name and value pairs\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n", - "title": "headers", - "maxItems": 16, - "items": { - "$ref": "#/definitions/ioschemaHeaderMatcherType" - }, - "x-displayname": "HTTP Headers", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16" - } - } - } - }, - "http_loadbalancerInlineRateLimiter": { - "type": "object", - "title": "InlineRateLimiter", - "x-displayname": "InlineRateLimiter", - "x-ves-oneof-field-count_by_choice": "[\"ref_user_id\",\"use_http_lb_user_id\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.InlineRateLimiter", - "properties": { - "ref_user_id": { - "description": "Exclusive with [use_http_lb_user_id]\n A reference to user_identification object.\n The rules in the user_identification object are evaluated to determine the user identifier to be rate limited.", - "title": "ref_user_id", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "User Identification Policy" - }, - "threshold": { - "type": "integer", - "description": " The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period.\n\nExample: - \"1\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gt: 0\n ves.io.schema.rules.uint32.lte: 8192\n", - "title": "threshold", - "format": "int64", - "x-displayname": "Threshold", - "x-ves-example": "1", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.uint32.gt": "0", - "ves.io.schema.rules.uint32.lte": "8192" - } - }, - "unit": { - "description": " Unit for the period per which the rate limit is applied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "rate", - "$ref": "#/definitions/rate_limiterRateLimitPeriodUnit", - "x-displayname": "Duration", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } + "unit": { + "description": " Unit for the period per which the rate limit is applied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "rate", + "$ref": "#/definitions/rate_limiterRateLimitPeriodUnit", + "x-displayname": "Duration", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } }, "use_http_lb_user_id": { "description": "Exclusive with [ref_user_id]\n Defined in HTTP-LB Security Configuration -\u003e User Identifier.", @@ -4602,12 +3831,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerJWKS": { + "common_wafJWKS": { "type": "object", "description": "The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", "title": "jwks", "x-displayname": "JSON Web Key Set (JWKS)", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.JWKS", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWKS", "properties": { "cleartext": { "type": "string", @@ -4617,13 +3846,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerJWTValidation": { + "common_wafJWTValidation": { "type": "object", "description": "JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\nJWTs before they are passed to your API origin. JWT Validation will also stop requests with expired\ntokens or tokens that are not yet valid.", "title": "JWT Validation", "x-displayname": "JWT Validation", "x-ves-oneof-field-jwks_configuration": "[\"jwks_config\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.JWTValidation", + "x-ves-proto-message": "ves.io.schema.views.common_waf.JWTValidation", "properties": { "action": { "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", @@ -4638,25 +3867,25 @@ var APISwaggerJSON string = `{ "jwks_config": { "description": "Exclusive with []\n The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details.", "title": "jwks_config", - "$ref": "#/definitions/http_loadbalancerJWKS", + "$ref": "#/definitions/common_wafJWKS", "x-displayname": "JSON Web Key Set (JWKS)" }, "mandatory_claims": { "description": " Configuration for validation of mandatory claims. The system will verify that the claim exists in JWT.\n If the claim does not exist JWT token validation will fail.", "title": "Mandatory Claims", - "$ref": "#/definitions/http_loadbalancerMandatoryClaims", + "$ref": "#/definitions/common_wafMandatoryClaims", "x-displayname": "Mandatory Claims" }, "reserved_claims": { "description": " Configuration required for validation of reserved claims. If some claims are absent in\n the token validation of these claims should be disabled.", "title": "reserved_claims", - "$ref": "#/definitions/http_loadbalancerReservedClaims", + "$ref": "#/definitions/common_wafReservedClaims", "x-displayname": "Reserved Claims Validation" }, "target": { "description": " Define endpoints for which JWT token validation will be performed\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "target", - "$ref": "#/definitions/http_loadbalancerTarget", + "$ref": "#/definitions/common_wafTarget", "x-displayname": "Target", "x-ves-required": "true", "x-ves-validation-rules": { @@ -4666,7 +3895,7 @@ var APISwaggerJSON string = `{ "token_location": { "description": " Define where in the HTTP request the JWT token will be extracted\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "token location", - "$ref": "#/definitions/http_loadbalancerTokenLocation", + "$ref": "#/definitions/common_wafTokenLocation", "x-displayname": "Token Location", "x-ves-required": "true", "x-ves-validation-rules": { @@ -4675,134 +3904,12 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerListResponse": { - "type": "object", - "description": "This is the output message of 'List' RPC.", - "title": "ListResponse is the collection of http_loadbalancer", - "x-displayname": "List Response", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ListResponse", - "properties": { - "errors": { - "type": "array", - "description": " Errors(if any) while listing items from collection", - "title": "errors", - "items": { - "$ref": "#/definitions/schemaErrorType" - }, - "x-displayname": "Errors" - }, - "items": { - "type": "array", - "description": " items represents the collection in response", - "title": "items", - "items": { - "$ref": "#/definitions/http_loadbalancerListResponseItem" - }, - "x-displayname": "Items" - } - } - }, - "http_loadbalancerListResponseItem": { - "type": "object", - "description": "By default a summary of http_loadbalancer is returned in 'List'. By setting\n'report_fields' in the ListRequest more details of each item can be got.", - "title": "ListResponseItem is an individual item in a collection of http_loadbalancer", - "x-displayname": "List Item", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ListResponseItem", - "properties": { - "annotations": { - "type": "object", - "description": " The set of annotations present on this http_loadbalancer", - "title": "annotations", - "x-displayname": "Annotations" - }, - "description": { - "type": "string", - "description": " The description set for this http_loadbalancer", - "title": "description", - "x-displayname": "Description" - }, - "disabled": { - "type": "boolean", - "description": " A value of true indicates http_loadbalancer is administratively disabled", - "title": "disabled", - "format": "boolean", - "x-displayname": "Disabled" - }, - "get_spec": { - "description": " If ListRequest has any specified report_fields, it will appear in object", - "title": "get_spec", - "$ref": "#/definitions/viewshttp_loadbalancerGetSpecType", - "x-displayname": "Get Specification" - }, - "labels": { - "type": "object", - "description": " The set of labels present on this http_loadbalancer", - "title": "labels", - "x-displayname": "Labels" - }, - "metadata": { - "description": " If list request has report_fields set then metadata will\n contain all the metadata associated with the object.", - "title": "metadata", - "$ref": "#/definitions/schemaObjectGetMetaType", - "x-displayname": "Metadata" - }, - "name": { - "type": "string", - "description": " The name of this http_loadbalancer\n\nExample: - \"name\"-", - "title": "name", - "x-displayname": "Name", - "x-ves-example": "name" - }, - "namespace": { - "type": "string", - "description": " The namespace this item belongs to\n\nExample: - \"ns1\"-", - "title": "namespace", - "x-displayname": "Namespace", - "x-ves-example": "ns1" - }, - "owner_view": { - "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", - "title": "owner_view", - "$ref": "#/definitions/schemaViewRefType", - "x-displayname": "Owner View" - }, - "status_set": { - "type": "array", - "description": " The status reported by different services for this configuration object", - "title": "status", - "items": { - "$ref": "#/definitions/http_loadbalancerStatusObject" - }, - "x-displayname": "Status" - }, - "system_metadata": { - "description": " If list request has report_fields set then system_metadata will\n contain all the system generated details of this object.", - "title": "system_metadata", - "$ref": "#/definitions/schemaSystemObjectGetMetaType", - "x-displayname": "System Metadata" - }, - "tenant": { - "type": "string", - "description": " The tenant this item belongs to\n\nExample: - \"acmecorp\"-", - "title": "tenant", - "x-displayname": "Tenant", - "x-ves-example": "acmecorp" - }, - "uid": { - "type": "string", - "description": " The unique uid of this http_loadbalancer\n\nExample: - \"d27938ba-967e-40a7-9709-57b8627f9f75\"-", - "title": "uid", - "x-displayname": "UID", - "x-ves-example": "d27938ba-967e-40a7-9709-57b8627f9f75" - } - } - }, - "http_loadbalancerMandatoryClaims": { + "common_wafMandatoryClaims": { "type": "object", "description": "Configurable Validation of mandatory Claims.", "title": "MandatoryClaims", "x-displayname": "Mandatory Claims", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.MandatoryClaims", + "x-ves-proto-message": "ves.io.schema.views.common_waf.MandatoryClaims", "properties": { "claim_names": { "type": "array", @@ -4820,54 +3927,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerMobileIdentifier": { - "type": "string", - "description": "x-displayName: \"Mobile Identifier\"\nMobile identifier type\n\n - HEADERS: Headers\n\nx-displayName: \"Headers\"\nHeaders", - "title": "MobileIdentifier", - "enum": [ - "HEADERS" - ], - "default": "HEADERS" - }, - "http_loadbalancerMobileSDKConfigType": { - "type": "object", - "description": "x-displayName: \"Mobile SDK Configuration\"\nMobile SDK configuration.", - "title": "MobileSDKConfigType", - "properties": { - "mobile_identifier": { - "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", - "title": "Mobile Traffic Identifier Type", - "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" - }, - "reload_header_name": { - "type": "string", - "description": "x-displayName: \"Reload Header Name\"\nx-required\nx-example: \"x-oomZEZlK\"\nHeader that is used for SDK configuration sync.", - "title": "Reload header name" - } - } - }, - "http_loadbalancerMobileTrafficIdentifierType": { - "type": "object", - "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", - "title": "MobileTrafficIdentifierType", - "properties": { - "headers": { - "type": "array", - "description": "x-displayName: \"Headers\"\nHeaders that can be used to identify mobile traffic.", - "title": "Mobile headers", - "items": { - "$ref": "#/definitions/policyHeaderMatcherTypeBasic" - } - } - } - }, - "http_loadbalancerOpenApiFallThroughMode": { + "common_wafOpenApiFallThroughMode": { "type": "object", "description": "x-required\nDetermine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)", "title": "Fall Through Mode", "x-displayname": "Fall Through Mode", "x-ves-oneof-field-fall_through_mode_choice": "[\"fall_through_mode_allow\",\"fall_through_mode_custom\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiFallThroughMode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiFallThroughMode", "properties": { "fall_through_mode_allow": { "description": "Exclusive with [fall_through_mode_custom]\n Allow any unprotected end point", @@ -4878,23 +3944,23 @@ var APISwaggerJSON string = `{ "fall_through_mode_custom": { "description": "Exclusive with [fall_through_mode_allow]\n Custom rules for any unprotected end point", "title": "Custom", - "$ref": "#/definitions/http_loadbalancerCustomFallThroughMode", + "$ref": "#/definitions/common_wafCustomFallThroughMode", "x-displayname": "Custom" } } }, - "http_loadbalancerOpenApiValidationAllSpecEndpointsSettings": { + "common_wafOpenApiValidationAllSpecEndpointsSettings": { "type": "object", "description": "Settings for API Inventory validation", "title": "OpenAPI Validation API Inventory Settings", "x-displayname": "API Inventory", "x-ves-oneof-field-oversized_body_choice": "[]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationAllSpecEndpointsSettings", "properties": { "fall_through_mode": { "description": " Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Fall Through Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiFallThroughMode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", "x-displayname": "Fall Through Mode", "x-ves-required": "true", "x-ves-validation-rules": { @@ -4904,13 +3970,13 @@ var APISwaggerJSON string = `{ "settings": { "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", "title": "OpenAPI specification validation common settings", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationCommonSettings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", "x-displayname": "Common Settings" }, "validation_mode": { "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the API Inventory endpoints\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Validation Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationMode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", "x-displayname": "Validation Mode", "x-ves-required": "true", "x-ves-validation-rules": { @@ -4919,14 +3985,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationCommonSettings": { + "common_wafOpenApiValidationCommonSettings": { "type": "object", "description": "OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", "title": "OpenAPI specification validation common settings", "x-displayname": "Common Settings", "x-ves-oneof-field-oversized_body_choice": "[\"oversized_body_fail_validation\",\"oversized_body_skip_validation\"]", "x-ves-oneof-field-property_validation_settings_choice": "[\"property_validation_settings_custom\",\"property_validation_settings_default\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationCommonSettings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationCommonSettings", "properties": { "oversized_body_fail_validation": { "description": "Exclusive with [oversized_body_skip_validation]\n Apply the request/response action (block or report) when the body length is too long to verify (default 64Kb)", @@ -4943,7 +4009,7 @@ var APISwaggerJSON string = `{ "property_validation_settings_custom": { "description": "Exclusive with [property_validation_settings_default]\n Use custom settings with Open API specification validation", "title": "Custom settings", - "$ref": "#/definitions/http_loadbalancerValidationPropertySetting", + "$ref": "#/definitions/common_wafValidationPropertySetting", "x-displayname": "Custom" }, "property_validation_settings_default": { @@ -4954,19 +4020,19 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationMode": { + "common_wafOpenApiValidationMode": { "type": "object", "description": "x-required\nValidation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)", "title": "Validation Mode", "x-displayname": "Validation Mode", "x-ves-oneof-field-response_validation_mode_choice": "[\"response_validation_mode_active\",\"skip_response_validation\"]", "x-ves-oneof-field-validation_mode_choice": "[\"skip_validation\",\"validation_mode_active\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationMode", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationMode", "properties": { "response_validation_mode_active": { "description": "Exclusive with [skip_response_validation]\n Enforce OpenAPI validation processing for this event", "title": "Validate", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationModeActiveResponse", + "$ref": "#/definitions/common_wafOpenApiValidationModeActiveResponse", "x-displayname": "Validate" }, "skip_response_validation": { @@ -4984,18 +4050,18 @@ var APISwaggerJSON string = `{ "validation_mode_active": { "description": "Exclusive with [skip_validation]\n Enforce OpenAPI validation processing for this event", "title": "Validate", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationModeActive", + "$ref": "#/definitions/common_wafOpenApiValidationModeActive", "x-displayname": "Validate" } } }, - "http_loadbalancerOpenApiValidationModeActive": { + "common_wafOpenApiValidationModeActive": { "type": "object", "description": "Validation mode properties of request", "title": "Open API Validation Mode Active For Request", "x-displayname": "Open API Validation Mode Active", "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActive", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActive", "properties": { "enforcement_block": { "description": "Exclusive with [enforcement_report]\n Block the request, trigger an API security event", @@ -5029,13 +4095,13 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationModeActiveResponse": { + "common_wafOpenApiValidationModeActiveResponse": { "type": "object", "description": "Validation mode properties of response", "title": "Open API Validation Mode Active For Response", "x-displayname": "Open API Validation Mode Active", "x-ves-oneof-field-validation_enforcement_type": "[\"enforcement_block\",\"enforcement_report\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActiveResponse", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationModeActiveResponse", "properties": { "enforcement_block": { "description": "Exclusive with [enforcement_report]\n Block the response, trigger an API security event", @@ -5069,14 +4135,14 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerOpenApiValidationRule": { + "common_wafOpenApiValidationRule": { "type": "object", "description": "OpenAPI Validation Rule for a specific endpoint, base-path, or API group", "title": "OpenAPI Validation Rule", "x-displayname": "OpenAPI Validation Rule", "x-ves-oneof-field-condition_type_choice": "[\"api_endpoint\",\"api_group\",\"base_path\"]", "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.OpenApiValidationRule", + "x-ves-proto-message": "ves.io.schema.views.common_waf.OpenApiValidationRule", "properties": { "any_domain": { "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", @@ -5087,7 +4153,7 @@ var APISwaggerJSON string = `{ "api_endpoint": { "description": "Exclusive with [api_group base_path]\n The API endpoint (Path + Method) which this validation applies to", "title": "API Endpoint", - "$ref": "#/definitions/http_loadbalancerApiEndpointDetails", + "$ref": "#/definitions/common_wafApiEndpointDetails", "x-displayname": "API Endpoint" }, "api_group": { @@ -5123,25 +4189,1356 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.message.required": "true" } }, - "specific_domain": { + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + }, + "validation_mode": { + "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Validation Mode", + "$ref": "#/definitions/common_wafOpenApiValidationMode", + "x-displayname": "Validation Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "common_wafRateLimitConfigType": { + "type": "object", + "title": "RateLimitConfigType", + "x-displayname": "RateLimitConfigType", + "x-ves-oneof-field-ip_allowed_list_choice": "[\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", + "x-ves-oneof-field-policy_choice": "[\"no_policies\",\"policies\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.RateLimitConfigType", + "properties": { + "custom_ip_allowed_list": { + "description": "Exclusive with [ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", + "title": "Custom IP list", + "$ref": "#/definitions/common_wafCustomIpAllowedList", + "x-displayname": "IP Allowed List using IP Prefix Set(s)" + }, + "ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", + "title": "IP Allowed List", + "$ref": "#/definitions/viewsPrefixStringListType", + "x-displayname": "IP Allowed List" + }, + "no_ip_allowed_list": { + "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", + "title": "No IP Allowed List", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "No IP Allowed" + }, + "no_policies": { + "description": "Exclusive with [policies]\n Do not apply additional rate limiter policies.", + "title": "no_policies", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "No Rate Limiter Policies" + }, + "policies": { + "description": "Exclusive with [no_policies]\n Apply rate limiter policies to requests that are not from the IP Allowed List.\n The policies are evaluated sequentially until a matching rule is identified. If there's a match, the rate limiting behavior is modified according\n to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.", + "title": "policies", + "$ref": "#/definitions/rate_limiter_policyPolicyList", + "x-displayname": "Rate Limiter Policies" + }, + "rate_limiter": { + "description": " Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.", + "title": "rate_limiter", + "$ref": "#/definitions/rate_limiterRateLimitValue", + "x-displayname": "Request Rate Limiter" + } + } + }, + "common_wafReservedClaims": { + "type": "object", + "description": "Configurable Validation of reserved Claims", + "title": "reserved claims", + "x-displayname": "Reserved claims configuration", + "x-ves-oneof-field-audience_validation": "[\"audience\",\"audience_disable\"]", + "x-ves-oneof-field-issuer_validation": "[\"issuer\",\"issuer_disable\"]", + "x-ves-oneof-field-validate_period": "[\"validate_period_disable\",\"validate_period_enable\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ReservedClaims", + "properties": { + "audience": { + "description": "Exclusive with [audience_disable]\n", + "title": "audience", + "$ref": "#/definitions/common_wafAudiences", + "x-displayname": "Exact Match" + }, + "audience_disable": { + "description": "Exclusive with [audience]\n", + "title": "audience_disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "issuer": { + "type": "string", + "description": "Exclusive with [issuer_disable]\n", + "title": "issuer", + "x-displayname": "Exact Match" + }, + "issuer_disable": { + "description": "Exclusive with [issuer]\n", + "title": "issuer_disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "validate_period_disable": { + "description": "Exclusive with [validate_period_enable]\n", + "title": "validate_period_disable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "validate_period_enable": { + "description": "Exclusive with [validate_period_disable]\n", + "title": "validate_period_enable", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable" + } + } + }, + "common_wafServerUrlRule": { + "type": "object", + "title": "ServerUrlRule", + "x-displayname": "Server URLs and API Groups", + "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", + "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServerUrlRule", + "properties": { + "any_domain": { + "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", + "title": "any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "api_group": { + "type": "string", + "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", + "title": "api_group", + "maxLength": 128, + "x-displayname": "API Group", + "x-ves-example": "oas-all-operations", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128" + } + }, + "base_path": { + "type": "string", + "description": " Prefix of the request path.\n\nExample: - \"/\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", + "title": "base path", + "maxLength": 128, + "x-displayname": "Base Path", + "x-ves-example": "/", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", + "ves.io.schema.rules.string.max_len": "128" + } + }, + "client_matcher": { + "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", + "title": "client_matcher", + "$ref": "#/definitions/policyClientMatcher", + "x-displayname": "Clients" + }, + "inline_rate_limiter": { + "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", + "title": "Inline Rate Limiter", + "$ref": "#/definitions/common_wafInlineRateLimiter", + "x-displayname": "Specific Values" + }, + "ref_rate_limiter": { + "description": "Exclusive with [inline_rate_limiter]\n Use external rate limiter.", + "title": "External Rate Limiter", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "External Rate Limiter" + }, + "request_matcher": { + "description": " Conditions related to the request, such as query parameters, headers, etc.", + "title": "request_matcher", + "$ref": "#/definitions/policyRequestMatcher", + "x-displayname": "Request" + }, + "specific_domain": { + "type": "string", + "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", + "title": "domain", + "maxLength": 128, + "x-displayname": "Specific Domain", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "128", + "ves.io.schema.rules.string.vh_domain": "true" + } + } + } + }, + "common_wafServicePolicyList": { + "type": "object", + "description": "List of service policies.", + "title": "service policy list", + "x-displayname": "Service Policy List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ServicePolicyList", + "properties": { + "policies": { + "type": "array", + "description": " Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\n correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result.\n For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\n current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\n If all policies are evaluated and none match, then the request will be denied by default.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "policies", + "minItems": 1, + "maxItems": 16, + "items": { + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "x-displayname": "Policies", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "common_wafSimpleClientSrcRule": { + "type": "object", + "description": "Simple client source rule specifies the sources to be blocked or trusted (skip WAF)", + "title": "SimpleClientSrcRule", + "x-displayname": "Client Rule", + "x-ves-oneof-field-action_choice": "[\"bot_skip_processing\",\"skip_processing\",\"waf_skip_processing\"]", + "x-ves-oneof-field-client_source_choice": "[\"as_number\",\"http_header\",\"ip_prefix\",\"user_identifier\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.SimpleClientSrcRule", + "properties": { + "actions": { + "type": "array", + "description": " Actions that should be taken when client identifier matches the rule\n\nValidation Rules:\n ves.io.schema.rules.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 10\n ves.io.schema.rules.repeated.unique: true\n", + "title": "actions", + "maxItems": 10, + "items": { + "$ref": "#/definitions/common_wafClientSrcRuleAction" + }, + "x-displayname": "Actions", + "x-ves-validation-rules": { + "ves.io.schema.rules.enum.defined_only": "true", + "ves.io.schema.rules.repeated.max_items": "10", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "as_number": { + "type": "integer", + "description": "Exclusive with [http_header ip_prefix user_identifier]\n RFC 6793 defined 4-byte AS number\n\nExample: - \"4683\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 401308\n", + "title": "as number", + "format": "int64", + "x-displayname": "AS Number", + "x-ves-example": "4683", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "401308" + } + }, + "bot_skip_processing": { + "description": "Exclusive with [skip_processing waf_skip_processing]\n Skip Bot Defense processing for clients matching this rule.", + "title": "Skip Bot Processing", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip Bot Defense Processing" + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.timestamp.within.seconds": "31536000" + } + }, + "http_header": { + "description": "Exclusive with [as_number ip_prefix user_identifier]\n Request header name and value pairs", + "title": "HTTP Header", + "$ref": "#/definitions/common_wafHttpHeaderMatcherList", + "x-displayname": "HTTP Headers" + }, + "ip_prefix": { + "type": "string", + "description": "Exclusive with [as_number http_header user_identifier]\n IPv4 prefix string.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4_prefix: true\n", + "title": "ip prefix", + "x-displayname": "IP Prefix", + "x-ves-example": "192.168.20.0/24", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4_prefix": "true" + } + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "skip_processing": { + "description": "Exclusive with [bot_skip_processing waf_skip_processing]\n Skip both WAF and Bot Defense processing for clients matching this rule.", + "title": "Skip Both", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip Both" + }, + "user_identifier": { + "type": "string", + "description": "Exclusive with [as_number http_header ip_prefix]\n Identify user based on user identifier. User identifier value needs to be copied from security event.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "user identifier", + "maxLength": 256, + "x-displayname": "User Identifier", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } + }, + "waf_skip_processing": { + "description": "Exclusive with [bot_skip_processing skip_processing]\n Skip WAF processing for clients matching this rule.", + "title": "Skip WAF Processing", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Skip WAF Processing" + } + } + }, + "common_wafTarget": { + "type": "object", + "description": "Define endpoints for which JWT token validation will be performed", + "title": "target", + "x-displayname": "Target", + "x-ves-oneof-field-target": "[\"all_endpoint\",\"api_groups\",\"base_paths\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.Target", + "properties": { + "all_endpoint": { + "description": "Exclusive with [api_groups base_paths]\n Validation will be performed for all requests on this LB", + "title": "all_endpoint", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "API Inventory" + }, + "api_groups": { + "description": "Exclusive with [all_endpoint base_paths]\n Validation will be performed for the endpoints mentioned in the API Groups", + "title": "api group", + "$ref": "#/definitions/common_wafAPIGroups", + "x-displayname": "API Groups" + }, + "base_paths": { + "description": "Exclusive with [all_endpoint api_groups]\n Validation will be performed for selected path prefixes", + "title": "base paths", + "$ref": "#/definitions/common_wafBasePathsType", + "x-displayname": "Base Paths" + } + } + }, + "common_wafTokenLocation": { + "type": "object", + "description": "Location of JWT in Http request", + "title": "token location", + "x-displayname": "Token Location", + "x-ves-oneof-field-token_location": "[\"bearer_token\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.TokenLocation", + "properties": { + "bearer_token": { + "description": "Exclusive with []\n Token is found in Authorization HTTP header with Bearer authentication scheme", + "title": "bearer token", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Bearer Token" + } + } + }, + "common_wafValidateApiBySpecRule": { + "type": "object", + "description": "Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other api-endpoint not listed will act according to \"Fall Through Mode\".", + "title": "ValidateApiBySpecRule", + "x-displayname": "Custom List", + "x-ves-oneof-field-oversized_body_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidateApiBySpecRule", + "properties": { + "fall_through_mode": { + "description": " Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Fall Through Mode", + "$ref": "#/definitions/common_wafOpenApiFallThroughMode", + "x-displayname": "Fall Through Mode", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "open_api_validation_rules": { + "type": "array", + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", + "title": "Validation List", + "maxItems": 15, + "items": { + "$ref": "#/definitions/common_wafOpenApiValidationRule" + }, + "x-displayname": "Validation List", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "15", + "ves.io.schema.rules.repeated.unique_metadata_name": "true" + } + }, + "settings": { + "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", + "title": "OpenAPI specification validation common settings", + "$ref": "#/definitions/common_wafOpenApiValidationCommonSettings", + "x-displayname": "OpenAPI specification validation settings" + } + } + }, + "common_wafValidationPropertySetting": { + "type": "object", + "description": "Custom property validation settings", + "title": "Validation Property settings", + "x-displayname": "Validation Property Settings", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationPropertySetting", + "properties": { + "queryParameters": { + "description": " Custom settings for query parameters validation", + "title": "Query parameters validation settings", + "$ref": "#/definitions/common_wafValidationSettingForQueryParameters", + "x-displayname": "Validation Settings For Query Parameters" + } + } + }, + "common_wafValidationSettingForHeaders": { + "type": "object", + "description": "x-displayName: \"Validation Settings For Headers\"\nCustom settings for headers validation", + "title": "Validation Settings For Headers", + "properties": { + "allow_additional_headers": { + "description": "x-displayName: \"Allow\"\nAllow extra headers (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/ioschemaEmpty" + }, + "disallow_additional_headers": { + "description": "x-displayName: \"Disallow\"\nDisallow extra headers (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/ioschemaEmpty" + } + } + }, + "common_wafValidationSettingForQueryParameters": { + "type": "object", + "description": "Custom settings for query parameters validation", + "title": "Validation Settings For Query Parameters", + "x-displayname": "Validation Settings For Query Parameters", + "x-ves-oneof-field-additional_parameters_choice": "[\"allow_additional_parameters\",\"disallow_additional_parameters\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.ValidationSettingForQueryParameters", + "properties": { + "allow_additional_parameters": { + "description": "Exclusive with [disallow_additional_parameters]\n Allow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Allow", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Allow" + }, + "disallow_additional_parameters": { + "description": "Exclusive with [allow_additional_parameters]\n Disallow extra query parameters (on top of what specified in the OAS documentation)", + "title": "Custom settings", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disallow" + } + } + }, + "http_loadbalancerAdvancedOptionsType": { + "type": "object", + "description": "This defines various options to define a route", + "title": "Advanced options", + "x-displayname": "Advanced Options", + "x-ves-oneof-field-path_normalize_choice": "[\"disable_path_normalize\",\"enable_path_normalize\"]", + "x-ves-oneof-field-strict_sni_host_header_check_choice": "[]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType", + "properties": { + "buffer_policy": { + "description": " Some upstream applications are not capable of handling streamed data and high network latency.\n This config enables buffering the entire request before sending to upstream application. We can\n specify the maximum buffer size and buffer interval with this config.", + "title": "Buffer configuration for requests", + "$ref": "#/definitions/schemaBufferConfigType", + "x-displayname": "Buffer Policy" + }, + "compression_params": { + "description": " Enables load balancer to compress dispatched data from an upstream service upon client request.\n Only GZIP compression is supported", + "title": "Compression configuration", + "$ref": "#/definitions/virtual_hostCompressionType", + "x-displayname": "Compression Parameters" + }, + "custom_errors": { + "type": "object", + "description": " Map of integer error codes as keys and string values that can be used to provide custom\n http pages for each error code.\n Key of the map can be either response code class or HTTP Error code. Response code classes\n for key is configured as follows\n 3 -- for 3xx response code class\n 4 -- for 4xx response code class\n 5 -- for 5xx response code class\n Value of the map is string which represents custom HTTP responses.\n Specific response code takes preference when both response code and response code class\n matches for a request.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.uint32.ranges: 3,4,5,300-599\n ves.io.schema.rules.map.max_pairs: 16\n ves.io.schema.rules.map.values.string.max_len: 65536\n ves.io.schema.rules.map.values.string.uri_ref: true\n", + "title": "Custom Errors", + "x-displayname": "Custom Error Responses", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.uint32.ranges": "3,4,5,300-599", + "ves.io.schema.rules.map.max_pairs": "16", + "ves.io.schema.rules.map.values.string.max_len": "65536", + "ves.io.schema.rules.map.values.string.uri_ref": "true" + } + }, + "disable_default_error_pages": { + "type": "boolean", + "description": " Disable the use of default F5XC error pages.", + "title": "Disable the use of default F5XC error pages", + "format": "boolean", + "x-displayname": "Disable Default Error Pages" + }, + "disable_path_normalize": { + "description": "Exclusive with [enable_path_normalize]\n", + "title": "Disable Path normalization", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable" + }, + "enable_path_normalize": { + "description": "Exclusive with [disable_path_normalize]\n", + "title": "Enable Path normalization", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable" + }, + "idle_timeout": { + "type": "integer", + "description": " The amount of time that a stream can exist without upstream or downstream activity, in milliseconds.\n The stream is terminated with a HTTP 504 (Gateway Timeout) error code if no upstream response header has been\n received, otherwise the stream is reset.\n\nExample: - \"2000\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 3600000\n", + "title": "Idle timeout", + "format": "int64", + "x-displayname": "Idle Timeout", + "x-ves-example": "2000", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "3600000" + } + }, + "max_request_header_size": { + "type": "integer", + "description": " The maximum request header size for downstream connections, in KiB.\n A HTTP 431 (Request Header Fields Too Large) error code is sent for requests that exceed this size.\n\n If multiple load balancers share the same advertise_policy, the highest value configured across all\n such load balancers is used for all the load balancers in question.\n\nExample: - \"60\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 96\n", + "title": "Maximum request header size", + "format": "int64", + "x-displayname": "Maximum Request Header Size", + "x-ves-example": "60", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.lte": "96" + } + }, + "request_headers_to_add": { + "type": "array", + "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Headers to add in request", + "maxItems": 32, + "items": { + "$ref": "#/definitions/schemaHeaderManipulationOptionType" + }, + "x-displayname": "Add Request Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "request_headers_to_remove": { + "type": "array", + "description": " List of keys of Headers to be removed from the HTTP request being sent towards upstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Header to be removed from request", + "maxItems": 32, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Remove Request Headers", + "x-ves-example": "host", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "response_headers_to_add": { + "type": "array", + "description": " Headers are key-value pairs to be added to HTTP response being sent towards downstream.\n Headers specified at this level are applied after headers from matched Route are applied\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Headers to add in response", + "maxItems": 32, + "items": { + "$ref": "#/definitions/schemaHeaderManipulationOptionType" + }, + "x-displayname": "Add Response Headers", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "response_headers_to_remove": { + "type": "array", + "description": " List of keys of Headers to be removed from the HTTP response being sent towards downstream.\n\nExample: - \"host\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Header to be removed from response", + "maxItems": 32, + "items": { + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "x-displayname": "Remove Response Headers", + "x-ves-example": "host", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "http_loadbalancerAppEndpointType": { + "type": "object", + "description": "x-displayName: \"Application Endpoint\"\nApplication Endpoint.", + "title": "AppEndpointType", + "properties": { + "allow_good_bots": { + "description": "System flags Good Bot traffic and allow it to continue to the origin", + "title": "x-displayName: \"Allow All Good Bots to Continue to Origin\"", + "$ref": "#/definitions/ioschemaEmpty" + }, + "any_domain": { + "description": "x-displayName: \"Any Domain\"\nAny Domain.", + "title": "Any domain", + "$ref": "#/definitions/ioschemaEmpty" + }, + "domain": { + "description": "x-displayName: \"Domain\"\nDomain matcher.", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType" + }, + "flow_label": { + "description": "x-displayName: \"Specify Endpoint label category\"", + "title": "flow_label", + "$ref": "#/definitions/schemaBotDefenseFlowLabelCategoriesChoiceType" + }, + "http_methods": { + "type": "array", + "description": "x-displayName: \"HTTP Methods\"\nx-required\nList of HTTP methods.", + "title": "HTTP Methods", + "items": { + "$ref": "#/definitions/schemaBotHttpMethod" + } + }, + "metadata": { + "description": "x-displayName: \"Metadata\"\nx-required\nCommon attributes for the rule including name and description.", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType" + }, + "mitigate_good_bots": { + "description": "System flags Good Bot Traffic, but mitigation is handled in the same manner as malicious automated traffic defined above", + "title": "x-displayName: \"Apply Mitigation to Good Bots\"", + "$ref": "#/definitions/ioschemaEmpty" + }, + "mitigation": { + "description": "x-displayName: \"Bot Traffic Mitigation\"\nx-required\nMitigation action.", + "title": "Mitigation", + "$ref": "#/definitions/policyShapeBotMitigationAction" + }, + "mobile": { + "description": "x-displayName: \"Mobile Traffic\"\nMobile traffic channel.", + "title": "MobileTrafficChannel", + "$ref": "#/definitions/ioschemaEmpty" + }, + "path": { + "description": "x-displayName: \"Path\"\nx-required\nMatching URI path of the route.", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType" + }, + "protocol": { + "description": "x-displayName: \"Protocol\"\nProtocol.", + "title": "Protocol", + "$ref": "#/definitions/http_loadbalancerURLScheme" + }, + "undefined_flow_label": { + "description": "x-displayName: \"Undefined\"", + "title": "undefined", + "$ref": "#/definitions/ioschemaEmpty" + }, + "web": { + "description": "x-displayName: \"Web Traffic\"\nWeb traffic channel.", + "title": "WebTrafficChannel", + "$ref": "#/definitions/ioschemaEmpty" + }, + "web_mobile": { + "description": "x-displayName: \"Web and Mobile Traffic\"\nWeb and mobile traffic channel.", + "title": "WebMobileTrafficChannel", + "$ref": "#/definitions/http_loadbalancerWebMobileTrafficType" + } + } + }, + "http_loadbalancerBotAdvancedMobileSDKConfigType": { + "type": "object", + "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers.", + "title": "BotAdvancedMobileSDKConfigType", + "properties": { + "mobile_identifier": { + "description": "x-displayName: \"Mobile Request Identifier Headers\"\nMobile Request Identifier Headers Type.", + "title": "MobileTrafficIdentifierType", + "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" + } + } + }, + "http_loadbalancerBotDefenseAdvancedPolicyType": { + "type": "object", + "description": "x-displayName: \"Bot Defense Advanced Policy\"\nThis defines various configuration options for Bot Defense Advanced Policy.", + "title": "BotDefenseAdvancedPolicyType", + "properties": { + "disable_mobile_sdk": { + "description": "x-displayName: \"Disable Mobile SDK\"\nDisable Mobile SDK.", + "title": "Disable Mobile SDK", + "$ref": "#/definitions/ioschemaEmpty" + }, + "js_download_path": { + "type": "string", + "description": "x-displayName: \"Web Client JavaScript Download Path\"\nx-example: \"/common.js\"\nx-required\nCustomize Bot Defense Web Client JavaScript path", + "title": "js_download_path" + }, + "mobile_sdk_config": { + "description": "x-displayName: \"Enable Mobile SDK\"\nEnable Mobile SDK Configuration", + "title": "Enable Mobile SDK", + "$ref": "#/definitions/http_loadbalancerBotAdvancedMobileSDKConfigType" + }, + "protected_app_endpoints": { + "type": "array", + "description": "x-displayName: \"Protected App Endpoints\"\nx-required\nList of protected endpoints (max 128 items)", + "title": "ProtectedAppEndpointType", + "items": { + "$ref": "#/definitions/http_loadbalancerProtectedAppEndpointType" + } + } + } + }, + "http_loadbalancerBotDefenseAdvancedType": { + "type": "object", + "description": "x-displayName: \"Bot Defense Advanced\"\nBot Defense Advanced", + "title": "BotDefenseAdvancedType", + "properties": { + "mobile": { + "description": "x-displayName: \"Infrastructure For Mobile\"\nSelect infrastructure for mobile.", + "title": "Mobile", + "$ref": "#/definitions/schemaviewsObjectRefType" + }, + "policy": { + "description": "x-displayName: \"Bot Defense Advanced Policy\"\nx-required\nBot Defense Advanced Policy.", + "title": "BotDefenseAdvancedPolicyType", + "$ref": "#/definitions/http_loadbalancerBotDefenseAdvancedPolicyType" + }, + "web": { + "description": "x-displayName: \"Infrastructure For Web\"\nSelect infrastructure for web.", + "title": "Web", + "$ref": "#/definitions/schemaviewsObjectRefType" + } + } + }, + "http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType": { + "type": "object", + "description": "Insert Client-Side Defense JavaScript in all pages with the exceptions", + "title": "CSDJavaScriptInsertAllWithExceptionsType", + "x-displayname": "Insert JavaScript in All Pages with the Exceptions", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType", + "properties": { + "exclude_list": { + "type": "array", + "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exclude_list", + "maxItems": 128, + "items": { + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" + }, + "x-displayname": "Exclude Pages", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "http_loadbalancerCSDJavaScriptInsertType": { + "type": "object", + "description": "This defines custom JavaScript insertion rules for Client-Side Defense Policy.", + "title": "CSDJavaScriptInsertType", + "x-displayname": "JavaScript Custom Insertion Rules", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType", + "properties": { + "exclude_list": { + "type": "array", + "description": " Optional JavaScript insertions exclude list of domain and path matchers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.unique: true\n", + "title": "exclude_list", + "maxItems": 128, + "items": { + "$ref": "#/definitions/http_loadbalancerShapeJavaScriptExclusionRule" + }, + "x-displayname": "Exclude Paths", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "rules": { + "type": "array", + "description": " Required list of pages to insert Client-Side Defense client JavaScript.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 128\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "rules", + "minItems": 1, + "maxItems": 128, + "items": { + "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertionRule" + }, + "x-displayname": "JavaScript Insertions", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "http_loadbalancerCSDJavaScriptInsertionRule": { + "type": "object", + "description": "This defines a rule for Client-Side Defense JavaScript insertion.", + "title": "CSDJavaScriptInsertionRule", + "x-displayname": "JavaScript Insertion Rule", + "x-ves-oneof-field-domain_matcher_choice": "[\"any_domain\",\"domain\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule", + "properties": { + "any_domain": { + "description": "Exclusive with [domain]\n Any Domain.", + "title": "Any domain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Any Domain" + }, + "domain": { + "description": "Exclusive with [any_domain]\n Domain matcher.", + "title": "Domain", + "$ref": "#/definitions/schemaDomainType", + "x-displayname": "Domain" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "path": { + "description": " URI path matcher.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Path", + "$ref": "#/definitions/ioschemaPathMatcherType", + "x-displayname": "Path", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "http_loadbalancerClientSideDefensePolicyType": { + "type": "object", + "description": "This defines various configuration options for Client-Side Defense policy.", + "title": "ClientSideDefensePolicyType", + "x-displayname": "Client-Side Defense Policy", + "x-ves-oneof-field-java_script_choice": "[\"disable_js_insert\",\"js_insert_all_pages\",\"js_insert_all_pages_except\",\"js_insertion_rules\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType", + "properties": { + "disable_js_insert": { + "description": "Exclusive with [js_insert_all_pages js_insert_all_pages_except js_insertion_rules]\n Disable JavaScript insertion.", + "title": "Disable JavaScript Insertion", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable JavaScript Insertion" + }, + "js_insert_all_pages": { + "description": "Exclusive with [disable_js_insert js_insert_all_pages_except js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages.", + "title": "Insert JavaScript in All Pages", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Insert JavaScript in All Pages" + }, + "js_insert_all_pages_except": { + "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insertion_rules]\n Insert Client-Side Defense JavaScript in all pages with the exceptions.", + "title": "Insert JavaScript in All Pages with the Exceptions", + "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertAllWithExceptionsType", + "x-displayname": "Insert JavaScript in All Pages with the Exceptions" + }, + "js_insertion_rules": { + "description": "Exclusive with [disable_js_insert js_insert_all_pages js_insert_all_pages_except]\n Specify custom JavaScript insertion rules.", + "title": "Custom JavaScript Insertion Rules", + "$ref": "#/definitions/http_loadbalancerCSDJavaScriptInsertType", + "x-displayname": "Custom JavaScript Insertion Rules" + } + } + }, + "http_loadbalancerClientSideDefenseType": { + "type": "object", + "description": "This defines various configuration options for Client-Side Defense Policy.", + "title": "ClientSideDefenseType", + "x-displayname": "Client-Side Defense", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType", + "properties": { + "policy": { + "description": " Configure the pages where you want Client-Side Defense Protection.\n Please ensure that the same domains are configured in the Client-Side Defense configuration.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "ClientSideDefensePolicyType", + "$ref": "#/definitions/http_loadbalancerClientSideDefensePolicyType", + "x-displayname": "Client-Side Defense Policy", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "http_loadbalancerCreateRequest": { + "type": "object", + "description": "This is the input message of the 'Create' RPC", + "title": "CreateRequest is used to create an instance of http_loadbalancer", + "x-displayname": "Create Request", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CreateRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectCreateMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the tenant", + "title": "spec", + "$ref": "#/definitions/viewshttp_loadbalancerCreateSpecType", + "x-displayname": "Spec" + } + } + }, + "http_loadbalancerCreateResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.CreateResponse", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the tenant", + "title": "spec", + "$ref": "#/definitions/viewshttp_loadbalancerGetSpecType", + "x-displayname": "Spec" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "http_loadbalancerDDoSClientSource": { + "type": "object", + "description": "DDoS Mitigation sources to be blocked", + "title": "DDoSClientSource", + "x-displayname": "DDoS Client Source Choice", + "x-ves-displayorder": "1,3,5", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSClientSource", + "properties": { + "asn_list": { + "description": " Addresses that belong to the ASNs in the given list\n The ASN is obtained by performing a lookup for the source IPv4 Address in a GeoIP DB.", + "title": "asn_list", + "$ref": "#/definitions/policyAsnMatchList", + "x-displayname": "ASN List" + }, + "country_list": { + "type": "array", + "description": " Sources that are located in one of the countries in the given list\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.enum.defined_only: true\n ves.io.schema.rules.repeated.items.enum.not_in: [0]\n ves.io.schema.rules.repeated.max_items: 64\n ves.io.schema.rules.repeated.unique: true\n", + "title": "country_list", + "maxItems": 64, + "items": { + "$ref": "#/definitions/policyCountryCode" + }, + "x-displayname": "Country List", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.not_in": "[0]", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true" + } + }, + "tls_fingerprint_matcher": { + "description": " TLS JA3 fingerprints to be matched.\n The predicate evaluates to true if the TLS fingerprint matches any of the exact values or classes of known TLS fingerprints.", + "title": "TLS JA3 fingerprint matcher", + "$ref": "#/definitions/policyTlsFingerprintMatcherType", + "x-displayname": "TLS Fingerprint Matcher" + } + } + }, + "http_loadbalancerDDoSMitigationRule": { + "type": "object", + "description": "DDoS Mitigation Rule specifies the sources to be blocked", + "title": "DDoSMitigationRule", + "x-displayname": "DDoS Mitigation Rule", + "x-ves-displayorder": "1,2,7,10", + "x-ves-oneof-field-mitigation_action": "[\"block\"]", + "x-ves-oneof-field-mitigation_choice": "[\"ddos_client_source\",\"ip_prefix_list\"]", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule", + "properties": { + "block": { + "description": "Exclusive with []\n Block user for a duration determined by the expiration time", + "title": "Block User", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Block User" + }, + "ddos_client_source": { + "description": "Exclusive with [ip_prefix_list]\n Combination of Region, ASN and TLS Fingerprints\n\nValidation Rules:\n ves.io.schema.rules.message.required_one_nonzero_field: true\n", + "title": "ddos_client_source", + "$ref": "#/definitions/http_loadbalancerDDoSClientSource", + "x-displayname": "DDoS Client Source", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required_one_nonzero_field": "true" + } + }, + "expiration_timestamp": { + "type": "string", + "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", + "title": "expiration timestamp", + "format": "date-time", + "x-displayname": "Expiration Timestamp", + "x-ves-example": "2019-12-31:44:34.171543432Z", + "x-ves-validation-rules": { + "ves.io.schema.rules.timestamp.within.seconds": "31536000" + } + }, + "ip_prefix_list": { + "description": "Exclusive with [ddos_client_source]\n IPv4 prefix string.", + "title": "ip source", + "$ref": "#/definitions/policyPrefixMatchList", + "x-displayname": "IP Source" + }, + "metadata": { + "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "metadata", + "$ref": "#/definitions/schemaMessageMetaType", + "x-displayname": "Metadata", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "http_loadbalancerDeleteRequest": { + "type": "object", + "description": "This is the input message of the 'Delete' RPC.", + "title": "DeleteRequest is used to delete a http_loadbalancer", + "x-displayname": "Delete Request", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.DeleteRequest", + "properties": { + "fail_if_referred": { + "type": "boolean", + "description": " Fail the delete operation if this object is being referred by other objects", + "title": "fail_if_referred", + "format": "boolean", + "x-displayname": "Fail-If-Referred" + }, + "name": { + "type": "string", + "description": " Name of the configuration object\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " Namespace in which the configuration object is present\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + } + } + }, + "http_loadbalancerGetResponse": { + "type": "object", + "description": "This is the output message of the 'Get' RPC", + "title": "GetResponse is the shape of a read http_loadbalancer", + "x-displayname": "Get Response", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.GetResponse", + "properties": { + "create_form": { + "description": "Format used to create a new similar object", + "title": "create_form", + "$ref": "#/definitions/http_loadbalancerCreateRequest", + "x-displayname": "CreateRequest Format" + }, + "deleted_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "deleted_referred_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Deleted Referred Objects" + }, + "disabled_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "disabled_referred_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Disabled Referred Objects" + }, + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "referring_objects": { + "type": "array", + "description": "The set of objects that are referring to this object in their spec", + "title": "referring_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Referring Objects" + }, + "replace_form": { + "description": "Format to replace changeable values in object", + "title": "replace_form", + "$ref": "#/definitions/http_loadbalancerReplaceRequest", + "x-displayname": "ReplaceRequest Format" + }, + "spec": { + "description": " Specification of the desired behavior of the tenant", + "title": "spec", + "$ref": "#/definitions/viewshttp_loadbalancerGetSpecType", + "x-displayname": "Spec" + }, + "status": { + "type": "array", + "description": "The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/http_loadbalancerStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "http_loadbalancerGetResponseFormatCode": { + "type": "string", + "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_STATUS: x-displayName: \"Status format\"\nResponse should be in StatusObject(s) format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", + "title": "GetResponseFormatCode", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT" + }, + "http_loadbalancerHashPolicyListType": { + "type": "object", + "description": "List of hash policy rules", + "title": "Hash Policy List", + "x-displayname": "Hash Policy List", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.HashPolicyListType", + "properties": { + "hash_policy": { + "type": "array", + "description": " Specifies a list of hash policies to use for ring hash load balancing. Each\n hash policy is evaluated individually and the combined result is used to\n route the request\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 8\n ves.io.schema.rules.repeated.unique: true\n", + "title": "hash_policy", + "maxItems": 8, + "items": { + "$ref": "#/definitions/routeHashPolicyType" + }, + "x-displayname": "Hash Policy", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "http_loadbalancerListResponse": { + "type": "object", + "description": "This is the output message of 'List' RPC.", + "title": "ListResponse is the collection of http_loadbalancer", + "x-displayname": "List Response", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ListResponse", + "properties": { + "errors": { + "type": "array", + "description": " Errors(if any) while listing items from collection", + "title": "errors", + "items": { + "$ref": "#/definitions/schemaErrorType" + }, + "x-displayname": "Errors" + }, + "items": { + "type": "array", + "description": " items represents the collection in response", + "title": "items", + "items": { + "$ref": "#/definitions/http_loadbalancerListResponseItem" + }, + "x-displayname": "Items" + } + } + }, + "http_loadbalancerListResponseItem": { + "type": "object", + "description": "By default a summary of http_loadbalancer is returned in 'List'. By setting\n'report_fields' in the ListRequest more details of each item can be got.", + "title": "ListResponseItem is an individual item in a collection of http_loadbalancer", + "x-displayname": "List Item", + "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ListResponseItem", + "properties": { + "annotations": { + "type": "object", + "description": " The set of annotations present on this http_loadbalancer", + "title": "annotations", + "x-displayname": "Annotations" + }, + "description": { + "type": "string", + "description": " The description set for this http_loadbalancer", + "title": "description", + "x-displayname": "Description" + }, + "disabled": { + "type": "boolean", + "description": " A value of true indicates http_loadbalancer is administratively disabled", + "title": "disabled", + "format": "boolean", + "x-displayname": "Disabled" + }, + "get_spec": { + "description": " If ListRequest has any specified report_fields, it will appear in object", + "title": "get_spec", + "$ref": "#/definitions/viewshttp_loadbalancerGetSpecType", + "x-displayname": "Get Specification" + }, + "labels": { + "type": "object", + "description": " The set of labels present on this http_loadbalancer", + "title": "labels", + "x-displayname": "Labels" + }, + "metadata": { + "description": " If list request has report_fields set then metadata will\n contain all the metadata associated with the object.", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "name": { + "type": "string", + "description": " The name of this http_loadbalancer\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " The namespace this item belongs to\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "status_set": { + "type": "array", + "description": " The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/http_loadbalancerStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " If list request has report_fields set then system_metadata will\n contain all the system generated details of this object.", + "title": "system_metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + }, + "tenant": { "type": "string", - "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", - "title": "domain", - "maxLength": 128, - "x-displayname": "Specific Domain", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true" - } + "description": " The tenant this item belongs to\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" }, - "validation_mode": { - "description": " Validation mode of OpenAPI specification.\n When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Validation Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationMode", - "x-displayname": "Validation Mode", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" + "uid": { + "type": "string", + "description": " The unique uid of this http_loadbalancer\n\nExample: - \"d27938ba-967e-40a7-9709-57b8627f9f75\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d27938ba-967e-40a7-9709-57b8627f9f75" + } + } + }, + "http_loadbalancerMobileIdentifier": { + "type": "string", + "description": "x-displayName: \"Mobile Identifier\"\nMobile identifier type\n\n - HEADERS: Headers\n\nx-displayName: \"Headers\"\nHeaders", + "title": "MobileIdentifier", + "enum": [ + "HEADERS" + ], + "default": "HEADERS" + }, + "http_loadbalancerMobileSDKConfigType": { + "type": "object", + "description": "x-displayName: \"Mobile SDK Configuration\"\nMobile SDK configuration.", + "title": "MobileSDKConfigType", + "properties": { + "mobile_identifier": { + "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", + "title": "Mobile Traffic Identifier Type", + "$ref": "#/definitions/http_loadbalancerMobileTrafficIdentifierType" + }, + "reload_header_name": { + "type": "string", + "description": "x-displayName: \"Reload Header Name\"\nx-example: \"x-oomZEZlK\"\nHeader that is used for SDK configuration sync.", + "title": "Reload header name" + } + } + }, + "http_loadbalancerMobileTrafficIdentifierType": { + "type": "object", + "description": "x-displayName: \"Mobile Traffic Identifier\"\nMobile traffic identifier type.", + "title": "MobileTrafficIdentifierType", + "properties": { + "headers": { + "type": "array", + "description": "x-displayName: \"Headers\"\nHeaders that can be used to identify mobile traffic.", + "title": "Mobile headers", + "items": { + "$ref": "#/definitions/policyHeaderMatcherTypeBasic" } } } @@ -5354,6 +5751,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "title": "http_protocol_options", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, "http_redirect": { "type": "boolean", "description": " Redirect HTTP traffic to HTTPS", @@ -5488,6 +5891,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "title": "http_protocol_options", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, "http_redirect": { "type": "boolean", "description": " Redirect HTTP traffic to HTTPS", @@ -5589,52 +5998,6 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerRateLimitConfigType": { - "type": "object", - "title": "RateLimitConfigType", - "x-displayname": "RateLimitConfigType", - "x-ves-oneof-field-ip_allowed_list_choice": "[\"custom_ip_allowed_list\",\"ip_allowed_list\",\"no_ip_allowed_list\"]", - "x-ves-oneof-field-policy_choice": "[\"no_policies\",\"policies\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.RateLimitConfigType", - "properties": { - "custom_ip_allowed_list": { - "description": "Exclusive with [ip_allowed_list no_ip_allowed_list]\n IP Allowed list using existing ip_prefix_set objects.", - "title": "Custom IP list", - "$ref": "#/definitions/http_loadbalancerCustomIpAllowedList", - "x-displayname": "IP Allowed List using IP Prefix Set(s)" - }, - "ip_allowed_list": { - "description": "Exclusive with [custom_ip_allowed_list no_ip_allowed_list]\n List of IP(s) for which rate limiting will be disabled.", - "title": "IP Allowed List", - "$ref": "#/definitions/viewsPrefixStringListType", - "x-displayname": "IP Allowed List" - }, - "no_ip_allowed_list": { - "description": "Exclusive with [custom_ip_allowed_list ip_allowed_list]\n There is no ip allowed list for rate limiting, all clients go through rate limiting.", - "title": "No IP Allowed List", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "No IP Allowed" - }, - "no_policies": { - "description": "Exclusive with [policies]\n Do not apply additional rate limiter policies.", - "title": "no_policies", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "No Rate Limiter Policies" - }, - "policies": { - "description": "Exclusive with [no_policies]\n Apply rate limiter policies to requests that are not from the IP Allowed List.\n The policies are evaluated sequentially until a matching rule is identified. If there's a match, the rate limiting behavior is modified according\n to the action configured in the rule. If there's no match, the rate limiting configuration for the HTTP load balancer is honored.", - "title": "policies", - "$ref": "#/definitions/rate_limiter_policyPolicyList", - "x-displayname": "Rate Limiter Policies" - }, - "rate_limiter": { - "description": " Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter.", - "title": "rate_limiter", - "$ref": "#/definitions/rate_limiterRateLimitValue", - "x-displayname": "Request Rate Limiter" - } - } - }, "http_loadbalancerReplaceRequest": { "type": "object", "description": "This is the input message of the 'Replace' RPC", @@ -5682,54 +6045,6 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerReservedClaims": { - "type": "object", - "description": "Configurable Validation of reserved Claims", - "title": "reserved claims", - "x-displayname": "Reserved claims configuration", - "x-ves-oneof-field-audience_validation": "[\"audience\",\"audience_disable\"]", - "x-ves-oneof-field-issuer_validation": "[\"issuer\",\"issuer_disable\"]", - "x-ves-oneof-field-validate_period": "[\"validate_period_disable\",\"validate_period_enable\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ReservedClaims", - "properties": { - "audience": { - "description": "Exclusive with [audience_disable]\n", - "title": "audience", - "$ref": "#/definitions/http_loadbalancerAudiences", - "x-displayname": "Exact Match" - }, - "audience_disable": { - "description": "Exclusive with [audience]\n", - "title": "audience_disable", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, - "issuer": { - "type": "string", - "description": "Exclusive with [issuer_disable]\n", - "title": "issuer", - "x-displayname": "Exact Match" - }, - "issuer_disable": { - "description": "Exclusive with [issuer]\n", - "title": "issuer_disable", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, - "validate_period_disable": { - "description": "Exclusive with [validate_period_enable]\n", - "title": "validate_period_disable", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, - "validate_period_enable": { - "description": "Exclusive with [validate_period_disable]\n", - "title": "validate_period_enable", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Enable" - } - } - }, "http_loadbalancerRouteSimpleAdvancedOptions": { "type": "object", "description": "Configure advanced options for route like path rewrite, hash policy, etc.", @@ -5741,7 +6056,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-hash_policy_choice": "[\"common_hash_policy\",\"specific_hash_policy\"]", "x-ves-oneof-field-mirroring_choice": "[\"disable_mirroring\",\"mirror_policy\"]", "x-ves-oneof-field-retry_policy_choice": "[\"default_retry_policy\",\"no_retry_policy\",\"retry_policy\"]", - "x-ves-oneof-field-rewrite_choice": "[\"disable_prefix_rewrite\",\"prefix_rewrite\"]", + "x-ves-oneof-field-rewrite_choice": "[\"disable_prefix_rewrite\",\"prefix_rewrite\",\"regex_rewrite\"]", "x-ves-oneof-field-spdy_choice": "[\"disable_spdy\",\"enable_spdy\"]", "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\",\"inherited_waf\"]", "x-ves-oneof-field-websocket_choice": "[\"disable_web_socket_config\",\"web_socket_config\"]", @@ -5809,7 +6124,7 @@ var APISwaggerJSON string = `{ "x-displayname": "Disable Mirroring" }, "disable_prefix_rewrite": { - "description": "Exclusive with [prefix_rewrite]\n Do not rewrite any path portion.", + "description": "Exclusive with [prefix_rewrite regex_rewrite]\n Do not rewrite any path portion.", "title": "Disable Rewrite", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Rewrite" @@ -5880,7 +6195,7 @@ var APISwaggerJSON string = `{ }, "prefix_rewrite": { "type": "string", - "description": "Exclusive with [disable_prefix_rewrite]\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value.\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "description": "Exclusive with [disable_prefix_rewrite regex_rewrite]\n prefix_rewrite indicates that during forwarding, the matched prefix (or path) should be swapped\n with its value. When using regex path matching, the entire path (not including\n the query string) will be swapped with this value.\n\nExample: - \"/\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", "title": "prefix_rewrite", "maxLength": 256, "x-displayname": "Enable Prefix Rewrite", @@ -5895,6 +6210,13 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaRoutingPriority", "x-displayname": "Priority" }, + "regex_rewrite": { + "description": "Exclusive with [disable_prefix_rewrite prefix_rewrite]\n regex_rewrite indicates that during forwarding, the matched regex should be swapped\n with the substitution value.\n\nExample: - \"^/service/([^/]+)(/.*)$\"-", + "title": "regex_rewrite", + "$ref": "#/definitions/schemaRegexMatchRewrite", + "x-displayname": "Enable Regex Rewrite", + "x-ves-example": "^/service/([^/]+)(/.*)$" + }, "request_headers_to_add": { "type": "array", "description": " Headers are key-value pairs to be added to HTTP request being routed towards upstream.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", @@ -6211,109 +6533,6 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerServerUrlRule": { - "type": "object", - "title": "ServerUrlRule", - "x-displayname": "Server URLs and API Groups", - "x-ves-oneof-field-domain_choice": "[\"any_domain\",\"specific_domain\"]", - "x-ves-oneof-field-rate_limiter_choice": "[\"inline_rate_limiter\",\"ref_rate_limiter\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ServerUrlRule", - "properties": { - "any_domain": { - "description": "Exclusive with [specific_domain]\n The rule will apply for all domains.", - "title": "any domain", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Any Domain" - }, - "api_group": { - "type": "string", - "description": " API groups derived from API Definition swaggers.\n For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers.\n Custom groups can be created if user tags paths or operations with \"x-volterra-api-group\" extensions inside swaggers.\n\nExample: - \"oas-all-operations\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n", - "title": "api_group", - "maxLength": 128, - "x-displayname": "API Group", - "x-ves-example": "oas-all-operations", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "128" - } - }, - "base_path": { - "type": "string", - "description": " Prefix of the request path.\n\nExample: - \"/\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.http_path: true\n ves.io.schema.rules.string.max_len: 128\n", - "title": "base path", - "maxLength": 128, - "x-displayname": "Base Path", - "x-ves-example": "/", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128" - } - }, - "client_matcher": { - "description": " Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc.", - "title": "client_matcher", - "$ref": "#/definitions/policyClientMatcher", - "x-displayname": "Clients" - }, - "inline_rate_limiter": { - "description": "Exclusive with [ref_rate_limiter]\n Specify rate values for the rule.", - "title": "Inline Rate Limiter", - "$ref": "#/definitions/http_loadbalancerInlineRateLimiter", - "x-displayname": "Specific Values" - }, - "ref_rate_limiter": { - "description": "Exclusive with [inline_rate_limiter]\n Use external rate limiter.", - "title": "External Rate Limiter", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "External Rate Limiter" - }, - "request_matcher": { - "description": " Conditions related to the request, such as query parameters, headers, etc.", - "title": "request_matcher", - "$ref": "#/definitions/policyRequestMatcher", - "x-displayname": "Request" - }, - "specific_domain": { - "type": "string", - "description": "Exclusive with [any_domain]\n The rule will apply for a specific domain.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 128\n ves.io.schema.rules.string.vh_domain: true\n", - "title": "domain", - "maxLength": 128, - "x-displayname": "Specific Domain", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true" - } - } - } - }, - "http_loadbalancerServicePolicyList": { - "type": "object", - "description": "List of service policies.", - "title": "service policy list", - "x-displayname": "Service Policy List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ServicePolicyList", - "properties": { - "policies": { - "type": "array", - "description": " Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\n correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result.\n For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\n current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\n If all policies are evaluated and none match, then the request will be denied by default.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", - "title": "policies", - "minItems": 1, - "maxItems": 16, - "items": { - "$ref": "#/definitions/schemaviewsObjectRefType" - }, - "x-displayname": "Policies", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, "http_loadbalancerShapeBotDefensePolicyType": { "type": "object", "description": "x-displayName: \"Bot Defense Policy\"\nThis defines various configuration options for Bot Defense policy.", @@ -6543,125 +6762,15 @@ var APISwaggerJSON string = `{ } } }, - "http_loadbalancerSimpleClientSrcRule": { - "type": "object", - "description": "Simple client source rule specifies the sources to be blocked or trusted (skip WAF)", - "title": "SimpleClientSrcRule", - "x-displayname": "Client Rule", - "x-ves-oneof-field-action_choice": "[\"bot_skip_processing\",\"skip_processing\",\"waf_skip_processing\"]", - "x-ves-oneof-field-client_source_choice": "[\"as_number\",\"http_header\",\"ip_prefix\",\"user_identifier\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.SimpleClientSrcRule", - "properties": { - "actions": { - "type": "array", - "description": " Actions that should be taken when client identifier matches the rule\n\nValidation Rules:\n ves.io.schema.rules.enum.defined_only: true\n ves.io.schema.rules.repeated.max_items: 10\n ves.io.schema.rules.repeated.unique: true\n", - "title": "actions", - "maxItems": 10, - "items": { - "$ref": "#/definitions/http_loadbalancerClientSrcRuleAction" - }, - "x-displayname": "Actions", - "x-ves-validation-rules": { - "ves.io.schema.rules.enum.defined_only": "true", - "ves.io.schema.rules.repeated.max_items": "10", - "ves.io.schema.rules.repeated.unique": "true" - } - }, - "as_number": { - "type": "integer", - "description": "Exclusive with [http_header ip_prefix user_identifier]\n RFC 6793 defined 4-byte AS number\n\nExample: - \"4683\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 401308\n", - "title": "as number", - "format": "int64", - "x-displayname": "AS Number", - "x-ves-example": "4683", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.gte": "1", - "ves.io.schema.rules.uint32.lte": "401308" - } - }, - "bot_skip_processing": { - "description": "Exclusive with [skip_processing waf_skip_processing]\n Skip Bot Defense processing for clients matching this rule.", - "title": "Skip Bot Processing", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Skip Bot Defense Processing" - }, - "expiration_timestamp": { - "type": "string", - "description": " The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in\n the configuration but is not applied anymore.\n\nExample: - \"2019-12-31:44:34.171543432Z\"-\n\nValidation Rules:\n ves.io.schema.rules.timestamp.within.seconds: 31536000\n", - "title": "expiration timestamp", - "format": "date-time", - "x-displayname": "Expiration Timestamp", - "x-ves-example": "2019-12-31:44:34.171543432Z", - "x-ves-validation-rules": { - "ves.io.schema.rules.timestamp.within.seconds": "31536000" - } - }, - "http_header": { - "description": "Exclusive with [as_number ip_prefix user_identifier]\n Request header name and value pairs", - "title": "HTTP Header", - "$ref": "#/definitions/http_loadbalancerHttpHeaderMatcherList", - "x-displayname": "HTTP Headers" - }, - "ip_prefix": { - "type": "string", - "description": "Exclusive with [as_number http_header user_identifier]\n IPv4 prefix string.\n\nExample: - \"192.168.20.0/24\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4_prefix: true\n", - "title": "ip prefix", - "x-displayname": "IP Prefix", - "x-ves-example": "192.168.20.0/24", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4_prefix": "true" - } - }, - "metadata": { - "description": " Common attributes for the rule including name and description.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "metadata", - "$ref": "#/definitions/schemaMessageMetaType", - "x-displayname": "Metadata", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "skip_processing": { - "description": "Exclusive with [bot_skip_processing waf_skip_processing]\n Skip both WAF and Bot Defense processing for clients matching this rule.", - "title": "Skip Both", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Skip Both" - }, - "user_identifier": { - "type": "string", - "description": "Exclusive with [as_number http_header ip_prefix]\n Identify user based on user identifier. User identifier value needs to be copied from security event.\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", - "title": "user identifier", - "maxLength": 256, - "x-displayname": "User Identifier", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.max_len": "256" - } - }, - "waf_skip_processing": { - "description": "Exclusive with [bot_skip_processing skip_processing]\n Skip WAF processing for clients matching this rule.", - "title": "Skip WAF Processing", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Skip WAF Processing" - } - } - }, "http_loadbalancerSingleLoadBalancerAppSetting": { "type": "object", "description": "Specific settings for Machine learning analysis on this HTTP LB, independently from other LBs.", "title": "Single load balancer app setting", "x-displayname": "Single Load Balancer App Setting", "x-ves-oneof-field-api_discovery_choice": "[\"disable_discovery\",\"enable_discovery\"]", - "x-ves-oneof-field-ddos_detection_choice": "[\"disable_ddos_detection\",\"enable_ddos_detection\"]", "x-ves-oneof-field-malicious_user_detection_choice": "[\"disable_malicious_user_detection\",\"enable_malicious_user_detection\"]", "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting", "properties": { - "disable_ddos_detection": { - "description": "Exclusive with [enable_ddos_detection]\n", - "title": "Disable DDoS detection", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, "disable_discovery": { "description": "Exclusive with [enable_discovery]\n", "title": "Disable API discovery", @@ -6674,16 +6783,10 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "enable_ddos_detection": { - "description": "Exclusive with [disable_ddos_detection]\n", - "title": "Enable DDoS detection", - "$ref": "#/definitions/http_loadbalancerEnableDDoSDetectionSetting", - "x-displayname": "Enable" - }, "enable_discovery": { "description": "Exclusive with [disable_discovery]\n", "title": "Enable API discovery", - "$ref": "#/definitions/http_loadbalancerApiDiscoverySetting", + "$ref": "#/definitions/common_wafApiDiscoverySetting", "x-displayname": "Enable" }, "enable_malicious_user_detection": { @@ -6701,189 +6804,49 @@ var APISwaggerJSON string = `{ "x-displayname": "Status", "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.StatusObject", "properties": { - "conditions": { - "type": "array", - "description": " Conditions represent the normalized status values for configuration object", - "title": "conditions", - "items": { - "$ref": "#/definitions/schemaConditionType" - }, - "x-displayname": "Conditions" - }, - "metadata": { - "description": " Standard status's metadata", - "title": "metadata", - "$ref": "#/definitions/schemaStatusMetaType", - "x-displayname": "Metadata" - }, - "object_refs": { - "type": "array", - "description": " HTTP loadbalancer view object direct reference", - "title": "object_refs", - "items": { - "$ref": "#/definitions/ioschemaObjectRefType" - }, - "x-displayname": "Config Object" - }, - "virtual_host_status": { - "description": " DNS related Virtual Host status", - "title": "DNS Virtual Host Status", - "$ref": "#/definitions/virtual_hostDNSVHostStatusType", - "x-displayname": "DNS Virtual Host Status" - } - } - }, - "http_loadbalancerTarget": { - "type": "object", - "description": "Define endpoints for which JWT token validation will be performed", - "title": "target", - "x-displayname": "Target", - "x-ves-oneof-field-target": "[\"all_endpoint\",\"api_groups\",\"base_paths\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.Target", - "properties": { - "all_endpoint": { - "description": "Exclusive with [api_groups base_paths]\n Validation will be performed for all requests on this LB", - "title": "all_endpoint", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "API Inventory" - }, - "api_groups": { - "description": "Exclusive with [all_endpoint base_paths]\n Validation will be performed for the endpoints mentioned in the API Groups", - "title": "api group", - "$ref": "#/definitions/http_loadbalancerAPIGroups", - "x-displayname": "API Groups" - }, - "base_paths": { - "description": "Exclusive with [all_endpoint api_groups]\n Validation will be performed for selected path prefixes", - "title": "base paths", - "$ref": "#/definitions/http_loadbalancerBasePathsType", - "x-displayname": "Base Paths" - } - } - }, - "http_loadbalancerTokenLocation": { - "type": "object", - "description": "Location of JWT in Http request", - "title": "token location", - "x-displayname": "Token Location", - "x-ves-oneof-field-token_location": "[\"bearer_token\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.TokenLocation", - "properties": { - "bearer_token": { - "description": "Exclusive with []\n Token is found in Authorization HTTP header with Bearer authentication scheme", - "title": "bearer token", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Bearer Token" - } - } - }, - "http_loadbalancerURLScheme": { - "type": "string", - "description": "x-displayName: \"URL Scheme\"\nSchemeType is used to indicate URL scheme.\n\n - BOTH: BOTH\n\nx-displayName: \"BOTH\"\nURL scheme for https:// or http://.\n - HTTP: HTTP\n\nx-displayName: \"HTTP\"\nURL scheme http:// only.\n - HTTPS: HTTPS\n\nx-displayName: \"HTTPS\"\nURL scheme https:// only.", - "title": "URLSchemeType", - "enum": [ - "BOTH", - "HTTP", - "HTTPS" - ], - "default": "BOTH" - }, - "http_loadbalancerValidateApiBySpecRule": { - "type": "object", - "description": "Define API groups, base paths, or API endpoints and their OpenAPI validation modes.\n Any other api-endpoint not listed will act according to \"Fall Through Mode\".", - "title": "ValidateApiBySpecRule", - "x-displayname": "Custom List", - "x-ves-oneof-field-oversized_body_choice": "[]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ValidateApiBySpecRule", - "properties": { - "fall_through_mode": { - "description": " Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules)\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Fall Through Mode", - "$ref": "#/definitions/http_loadbalancerOpenApiFallThroughMode", - "x-displayname": "Fall Through Mode", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "open_api_validation_rules": { - "type": "array", - "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 15\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", - "title": "Validation List", - "maxItems": 15, - "items": { - "$ref": "#/definitions/http_loadbalancerOpenApiValidationRule" - }, - "x-displayname": "Validation List", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "15", - "ves.io.schema.rules.repeated.unique_metadata_name": "true" - } - }, - "settings": { - "description": " OpenAPI specification validation settings relevant for \"API Inventory\" enforcement and for \"Custom list\" enforcement", - "title": "OpenAPI specification validation common settings", - "$ref": "#/definitions/http_loadbalancerOpenApiValidationCommonSettings", - "x-displayname": "OpenAPI specification validation settings" - } - } - }, - "http_loadbalancerValidationPropertySetting": { - "type": "object", - "description": "Custom property validation settings", - "title": "Validation Property settings", - "x-displayname": "Validation Property Settings", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ValidationPropertySetting", - "properties": { - "queryParameters": { - "description": " Custom settings for query parameters validation", - "title": "Query parameters validation settings", - "$ref": "#/definitions/http_loadbalancerValidationSettingForQueryParameters", - "x-displayname": "Validation Settings For Query Parameters" - } - } - }, - "http_loadbalancerValidationSettingForHeaders": { - "type": "object", - "description": "x-displayName: \"Validation Settings For Headers\"\nCustom settings for headers validation", - "title": "Validation Settings For Headers", - "properties": { - "allow_additional_headers": { - "description": "x-displayName: \"Allow\"\nAllow extra headers (on top of what specified in the OAS documentation)", - "title": "Allow", - "$ref": "#/definitions/ioschemaEmpty" - }, - "disallow_additional_headers": { - "description": "x-displayName: \"Disallow\"\nDisallow extra headers (on top of what specified in the OAS documentation)", - "title": "Custom settings", - "$ref": "#/definitions/ioschemaEmpty" - } - } - }, - "http_loadbalancerValidationSettingForQueryParameters": { - "type": "object", - "description": "Custom settings for query parameters validation", - "title": "Validation Settings For Query Parameters", - "x-displayname": "Validation Settings For Query Parameters", - "x-ves-oneof-field-additional_parameters_choice": "[\"allow_additional_parameters\",\"disallow_additional_parameters\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.ValidationSettingForQueryParameters", - "properties": { - "allow_additional_parameters": { - "description": "Exclusive with [disallow_additional_parameters]\n Allow extra query parameters (on top of what specified in the OAS documentation)", - "title": "Allow", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Allow" + "conditions": { + "type": "array", + "description": " Conditions represent the normalized status values for configuration object", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" }, - "disallow_additional_parameters": { - "description": "Exclusive with [allow_additional_parameters]\n Disallow extra query parameters (on top of what specified in the OAS documentation)", - "title": "Custom settings", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disallow" + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " HTTP loadbalancer view object direct reference", + "title": "object_refs", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Config Object" + }, + "virtual_host_status": { + "description": " DNS related Virtual Host status", + "title": "DNS Virtual Host Status", + "$ref": "#/definitions/virtual_hostDNSVHostStatusType", + "x-displayname": "DNS Virtual Host Status" } } }, + "http_loadbalancerURLScheme": { + "type": "string", + "description": "x-displayName: \"URL Scheme\"\nSchemeType is used to indicate URL scheme.\n\n - BOTH: BOTH\n\nx-displayName: \"BOTH\"\nURL scheme for https:// or http://.\n - HTTP: HTTP\n\nx-displayName: \"HTTP\"\nURL scheme http:// only.\n - HTTPS: HTTPS\n\nx-displayName: \"HTTPS\"\nURL scheme https:// only.", + "title": "URLSchemeType", + "enum": [ + "BOTH", + "HTTP", + "HTTPS" + ], + "default": "BOTH" + }, "http_loadbalancerWebMobileTrafficType": { "type": "object", "description": "x-displayName: \"Web and Mobile traffic type\"\nWeb and Mobile traffic type", @@ -7121,9 +7084,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Origin Pool Advanced Options", "x-ves-oneof-field-circuit_breaker_choice": "[\"circuit_breaker\",\"default_circuit_breaker\",\"disable_circuit_breaker\"]", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", - "x-ves-oneof-field-lb_source_ip_persistance_choice": "[]", + "x-ves-oneof-field-lb_source_ip_persistance_choice": "[\"disable_lb_source_ip_persistance\",\"enable_lb_source_ip_persistance\"]", "x-ves-oneof-field-outlier_detection_choice": "[\"disable_outlier_detection\",\"outlier_detection\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_choice": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-oneof-field-subset_choice": "[\"disable_subsets\",\"enable_subsets\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginPoolAdvancedOptions", "properties": { @@ -7162,34 +7126,46 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Circuit Breaker" }, + "disable_lb_source_ip_persistance": { + "description": "Exclusive with [enable_lb_source_ip_persistance]\n Disable LB source IP persistence", + "title": "disable_lb_source_ip_persistence", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable LB Source IP persistence" + }, "disable_outlier_detection": { "description": "Exclusive with [outlier_detection]\n Outlier detection is disabled", "title": "Disable Outlier Detection", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Outlier Detection" }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "title": "Disable Proxy Protocol", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "disable_subsets": { "description": "Exclusive with [enable_subsets]\n Subset load balancing is disabled. All eligible origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Disabled", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Subset Load Balancing" }, + "enable_lb_source_ip_persistance": { + "description": "Exclusive with [disable_lb_source_ip_persistance]\n Enable LB source IP persistence", + "title": "enable_lb_source_ip_persistence", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable LB Source IP persistence" + }, "enable_subsets": { "description": "Exclusive with [disable_subsets]\n Subset load balancing is enabled. Based on route, subset of origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Enable", "$ref": "#/definitions/origin_poolOriginPoolSubsets", "x-displayname": "Enable Subset Load Balancing" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "title": "Header transformation", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", "title": "http1_config", - "$ref": "#/definitions/ioschemaEmpty", + "$ref": "#/definitions/schemaclusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -7230,6 +7206,18 @@ var APISwaggerJSON string = `{ "x-ves-validation-rules": { "ves.io.schema.rules.uint32.lte": "100" } + }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol Version 1 for upstream connections", + "title": "Proxy Protocol V1", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol Version 2 for upstream connections", + "title": "Proxy Protocol V2", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V2" } } }, @@ -7415,12 +7403,12 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateIP", "x-displayname": "IP address on given Sites", "x-ves-displayorder": "10,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-oneof-field-private_ip_choice": "[\"ip\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateIP", "properties": { "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Inside Network" @@ -7446,11 +7434,21 @@ var APISwaggerJSON string = `{ } }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Outside Network" }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -7469,7 +7467,7 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateName", "x-displayname": "DNS Name on given Sites", "x-ves-displayorder": "1,6,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateName", "properties": { "dns_name": { @@ -7484,13 +7482,13 @@ var APISwaggerJSON string = `{ } }, "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Inside Network" }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Outside Network" @@ -7506,6 +7504,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "604800" } }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -7586,131 +7594,28 @@ var APISwaggerJSON string = `{ } } }, - "origin_poolOriginServerSegmentIP": { - "type": "object", - "description": "Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site", - "x-ves-displayorder": "1,4,5", - "x-ves-oneof-field-ip_choice": "[\"ip\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentIP", - "properties": { - "ip": { - "type": "string", - "description": "Exclusive with []\n Private IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", - "title": "IP", - "x-displayname": "IP", - "x-ves-example": "8.8.8.8", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4": "true" - } - }, - "ipv6": { - "type": "string", - "description": " Private IPV6 address\n\nExample: - \"2001::10\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", - "title": "IP6", - "x-displayname": "IP6", - "x-ves-example": "2001::10", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv6": "true" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud Edge or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "origin_poolOriginServerSegmentName": { - "type": "object", - "description": "Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites", - "x-ves-displayorder": "1,2,3,4", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentName", - "properties": { - "dns_name": { - "type": "string", - "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "DNS name", - "x-displayname": "DNS Name", - "x-ves-example": "value", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "refresh_interval": { - "type": "integer", - "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", - "title": "refresh_interval", - "format": "int64", - "x-displayname": "DNS Refresh interval", - "x-ves-example": "20", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "604800" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud RE Region or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, "origin_poolOriginServerType": { "type": "object", "description": "Various options to specify origin server", "title": "OriginServerType", "x-displayname": "Origin Server", - "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"segment_ip\",\"segment_name\",\"vn_private_ip\",\"vn_private_name\"]", + "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"vn_private_ip\",\"vn_private_name\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerType", "properties": { "consul_service": { - "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", + "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", "title": "OriginServerConsulService", "$ref": "#/definitions/origin_poolOriginServerConsulService", "x-displayname": "Consul Service Name of Origin Server on given Sites" }, "custom_endpoint_object": { - "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", + "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", "title": "OriginServerCustomEndpoint", "$ref": "#/definitions/origin_poolOriginServerCustomEndpoint", "x-displayname": "Custom Endpoint Object for Origin Server" }, "k8s_service": { - "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", "title": "OriginServerK8SService", "$ref": "#/definitions/origin_poolOriginServerK8SService", "x-displayname": "K8s Service Name of Origin Server on given Sites" @@ -7723,49 +7628,37 @@ var APISwaggerJSON string = `{ "x-ves-example": "value" }, "private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", "title": "OriginServerPrivateIP", "$ref": "#/definitions/origin_poolOriginServerPrivateIP", "x-displayname": "IP address of Origin Server on given Sites" }, "private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", "title": "OriginServerPrivateName", "$ref": "#/definitions/origin_poolOriginServerPrivateName", "x-displayname": "DNS Name of Origin Server on given Sites" }, "public_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public IP", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name vn_private_ip vn_private_name]\n Specify origin server with public IP", "title": "OriginServerPublicIP", "$ref": "#/definitions/origin_poolOriginServerPublicIP", "x-displayname": "Public IP of Origin Server" }, "public_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public DNS name", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip vn_private_ip vn_private_name]\n Specify origin server with public DNS name", "title": "OriginServerPublicName", "$ref": "#/definitions/origin_poolOriginServerPublicName", "x-displayname": "Public DNS Name of Origin Server" }, - "segment_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_name vn_private_ip vn_private_name]\n Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "$ref": "#/definitions/origin_poolOriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site" - }, - "segment_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip vn_private_ip vn_private_name]\n Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "$ref": "#/definitions/origin_poolOriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites" - }, "vn_private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkIP", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkIP", "x-displayname": "IP address on Virtual Network" }, "vn_private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkName", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkName", "x-displayname": "Name on Virtual Network" @@ -8225,14 +8118,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -8831,7 +8724,7 @@ var APISwaggerJSON string = `{ }, "max_total_length": { "type": "integer", - "description": " Specify maximum length in bytes for the GraphQL query.\n\nExample: - \"5000\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 8096\n", + "description": " Specify maximum length in bytes for the GraphQL query.\n\nExample: - \"5000\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 16386\n", "title": "Max Total Length", "format": "int64", "x-displayname": "Maximum Total Length", @@ -8840,7 +8733,7 @@ var APISwaggerJSON string = `{ "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.uint32.gte": "0", - "ves.io.schema.rules.uint32.lte": "8096" + "ves.io.schema.rules.uint32.lte": "16386" } } } @@ -8957,6 +8850,55 @@ var APISwaggerJSON string = `{ } } }, + "policyJWTClaimMatcherType": { + "type": "object", + "description": "A JWT claim matcher specifies the name of a single JWT claim and the criteria for the input request to match it.\nThe input has a list of actual values for each JWT claim name in the JWT payload.\nA JWT claim matcher can check for one of the following:\n* Presence or absence of the JWT Claim in the input\n* At least one of the values for the JWT Claim in the input satisfies the MatcherType item", + "title": "JWTClaimMatcherType", + "x-displayname": "JWT Claim Matcher", + "x-ves-displayorder": "1,2,6", + "x-ves-oneof-field-match": "[\"check_not_present\",\"check_present\",\"item\"]", + "x-ves-proto-message": "ves.io.schema.policy.JWTClaimMatcherType", + "properties": { + "check_not_present": { + "description": "Exclusive with [check_present item]\n Check that the JWT Claim is not present.", + "title": "check_not_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Not Present" + }, + "check_present": { + "description": "Exclusive with [check_not_present item]\n Check that the JWT Claim is present.", + "title": "check_present", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Present" + }, + "invert_matcher": { + "type": "boolean", + "description": " Invert the match result.", + "title": "invert_matcher", + "format": "boolean", + "x-displayname": "Invert Matcher" + }, + "item": { + "description": "Exclusive with [check_not_present check_present]\n Criteria for matching the values for the JWT Claim. The match is successful if any of the values in the input satisfies the criteria in the matcher.", + "title": "item", + "$ref": "#/definitions/policyMatcherType", + "x-displayname": "Match Values" + }, + "name": { + "type": "string", + "description": " JWT claim name.\n\nExample: - \"user_id\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 256\n", + "title": "name", + "maxLength": 256, + "x-displayname": "JWT Claim Name", + "x-ves-example": "user_id", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "256" + } + } + } + }, "policyKnownTlsFingerprintClass": { "type": "string", "description": "Specifies known TLS fingerprint classes\n\n - TLS_FINGERPRINT_NONE: TLS_FINGERPRINT_NONE\n\nNo TLS fingerprint\n - ANY_MALICIOUS_FINGERPRINT: ANY_MALICIOUS_FINGERPRINT\n\nTLS fingerprints known to be associated with malicious clients\n - ADWARE: ADWARE\n\nTLS fingerprints known to be associated with adware\n - ADWIND: ADWIND\n\nTLS fingerprints known to be associated with adwind\n - DRIDEX: DRIDEX\n\nTLS fingerprints known to be associated with dridex\n - GOOTKIT: GOOTKIT\n\nTLS fingerprints known to be associated with gootkit\n - GOZI: GOZI\n\nTLS fingerprints known to be associated with gozi\n - JBIFROST: JBIFROST\n\nTLS fingerprints known to be associated with jbifrost\n - QUAKBOT: QUAKBOT\n\nTLS fingerprints known to be associated with quakbot\n - RANSOMWARE: RANSOMWARE\n\nTLS fingerprints known to be associated with ransomware\n - TROLDESH: TROLDESH\n\nTLS fingerprints known to be associated with troldesh\n - TOFSEE: TOFSEE\n\nTLS fingerprints known to be associated with tofsee\n - TORRENTLOCKER: TORRENTLOCKER\n\nTLS fingerprints known to be associated with torrentlocker\n - TRICKBOT: TRICKBOT\n\nTLS fingerprints known to be associated with trickbot", @@ -9289,6 +9231,19 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.repeated.max_items": "16" } }, + "jwt_claims": { + "type": "array", + "description": " A list of predicates for various JWT claims that need to match. The criteria for matching each JWT claim are described in individual JWTClaimMatcherType\n instances. The actual JWT claims values are extracted from the JWT payload as a list of strings.\n Note that all specified JWT claim predicates must evaluate to true.\n Note that this feature only works on LBs with JWT Validation feature enabled.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", + "title": "JWT claims", + "maxItems": 16, + "items": { + "$ref": "#/definitions/policyJWTClaimMatcherType" + }, + "x-displayname": "JWT Claims", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "16" + } + }, "query_params": { "type": "array", "description": " A list of predicates for all query parameters that need to be matched. The criteria for matching each query parameter are described in individual instances\n of QueryParameterMatcherType. The actual query parameter values are extracted from the request API as a list of strings for each query parameter name.\n Note that all specified query parameter predicates must evaluate to true.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 16\n", @@ -11173,23 +11128,29 @@ var APISwaggerJSON string = `{ "title": "HeaderTransformationType", "x-displayname": "Header Transformation", "x-ves-displayorder": "1", - "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "Exclusive with [preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Default" }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Legacy" + }, "preserve_case_header_transformation": { - "description": "Exclusive with [default_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "Exclusive with [default_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Proper Case" @@ -11432,10 +11393,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -11492,10 +11457,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -11554,10 +11523,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -11612,18 +11585,35 @@ var APISwaggerJSON string = `{ }, "schemaRegexMatchRewrite": { "type": "object", - "description": "x-displayName: \"Regex Match Rewrite\"\nRegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", + "description": "RegexMatchRewrite describes how to match a string and then produce a new string using a \nregular expression and a substitution string.", "title": "RegexMatchRewrite", + "x-displayname": "Regex Match Rewrite", + "x-ves-proto-message": "ves.io.schema.RegexMatchRewrite", "properties": { "pattern": { "type": "string", - "description": "x-displayName: \"Pattern\"\nx-example: \"^/service/([^/]+)(/.*)$\"\nThe regular expression used to find portions of a string that should be replaced.", - "title": "Pattern" + "description": " The regular expression used to find portions of a string that should be replaced.\n\nExample: - \"^/service/([^/]+)(/.*)$\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n ves.io.schema.rules.string.min_len: 1\n ves.io.schema.rules.string.regex: true\n", + "title": "Pattern", + "minLength": 1, + "maxLength": 256, + "x-displayname": "Pattern", + "x-ves-example": "^/service/([^/]+)(/.*)$", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true" + } }, "substitution": { "type": "string", - "description": "x-displayName: \"Substitution\"\nx-example: \"\\\\2/instance/\\\\1\"\nThe string that should be substituted into matching portions of the subject string during a \nsubstitution operation to produce a new string.", - "title": "Substitution" + "description": " The string that should be substituted into matching portions of the subject string during a \n substitution operation to produce a new string.\n\nExample: - \"\\\\2/instance/\\\\1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_len: 256\n", + "title": "Substitution", + "maxLength": 256, + "x-displayname": "Substitution", + "x-ves-example": "\\\\2/instance/\\\\1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_len": "256" + } } } }, @@ -12148,6 +12138,21 @@ var APISwaggerJSON string = `{ "x-displayname": "XFCC Elements", "x-ves-proto-enum": "ves.io.schema.XfccElement" }, + "schemaclusterHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for upstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.cluster.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to the upstream request headers and when a\n Stateful formatter is selected, it applies to response headers sent to the client.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on http load balancer. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "schemapolicyHeaderMatcherType": { "type": "object", "description": "A header matcher specifies the name of a single HTTP header and the criteria for the input request to match it. The input has a list of actual values for each\nheader name in the original HTTP request.\nA header matcher can check for one of the following:\n* Presence or absence of the header in the input\n* At least one of the values for the header in the input satisfies the MatcherType item", @@ -12481,6 +12486,21 @@ var APISwaggerJSON string = `{ } } }, + "schemavirtual_hostHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for downstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.virtual_host.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to response headers sent to the client and when a\n Stateful formatter is selected, it applies to the upstream request headers.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on origin pool. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "service_policy_ruleChallengeRuleSpec": { "type": "object", "description": "A Challenge Rule consists of an unordered list of predicates and an action. The predicates are evaluated against a set of input fields that are extracted from\nor derived from an L7 request API. A request API is considered to match the rule if all predicates in the rule evaluate to true for that request. Any\npredicates that are not specified in a rule are implicitly considered to be true. If a request API matches a challenge rule, the configured challenge is\nenforced.", @@ -13107,34 +13127,6 @@ var APISwaggerJSON string = `{ "x-displayname": "Site Network", "x-ves-proto-enum": "ves.io.schema.views.SiteNetwork" }, - "viewsSiteRegionLocator": { - "type": "object", - "description": "This message defines reference to site or virtual site or a cloud-re-region object", - "title": "SiteRegionLocator", - "x-displayname": "Select Site or Virtual Site or Cloud Edge", - "x-ves-oneof-field-choice": "[\"cloud_re_region\",\"site\",\"virtual_site\"]", - "x-ves-proto-message": "ves.io.schema.views.SiteRegionLocator", - "properties": { - "cloud_re_region": { - "description": "Exclusive with [site virtual_site]\n Reference to a Cloud Edge", - "title": "Cloud Edge", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Cloud Edge" - }, - "site": { - "description": "Exclusive with [cloud_re_region virtual_site]\n Reference to site object", - "title": "site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Site" - }, - "virtual_site": { - "description": "Exclusive with [cloud_re_region site]\n Reference to virtual site object", - "title": "Virtual Site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Site" - } - } - }, "viewsTlsConfig": { "type": "object", "description": "This defines various options to configure TLS configuration parameters", @@ -13292,9 +13284,9 @@ var APISwaggerJSON string = `{ }, "network": { "description": " Select network types to be used on site\n By default VIP chosen as ip address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -13505,10 +13497,10 @@ var APISwaggerJSON string = `{ } }, "virtual_network": { - "description": " Select virtual network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Virtual Network", + "description": " Select network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -13526,9 +13518,9 @@ var APISwaggerJSON string = `{ "properties": { "network": { "description": " Select network types to be used on site.\n IP address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -13622,6 +13614,117 @@ var APISwaggerJSON string = `{ } } }, + "viewscommon_wafIPThreatCategoryListType": { + "type": "object", + "description": "List of ip threat categories", + "title": "IP Threat Category List Type", + "x-displayname": "IP Threat Category List", + "x-ves-proto-message": "ves.io.schema.views.common_waf.IPThreatCategoryListType", + "properties": { + "ip_threat_categories": { + "type": "array", + "description": " If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", + "title": "IP Threat Categories", + "maxItems": 32, + "items": { + "$ref": "#/definitions/policyIPThreatCategory" + }, + "x-displayname": "List of IP Threat Categories to choose", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "viewscommon_wafPolicyBasedChallenge": { + "type": "object", + "description": "Specifies the settings for policy rule based challenge", + "title": "policy based challenge", + "x-displayname": "Policy Based Challenge", + "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", + "x-ves-oneof-field-challenge_choice": "[\"always_enable_captcha_challenge\",\"always_enable_js_challenge\",\"no_challenge\"]", + "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", + "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", + "x-ves-oneof-field-temporary_blocking_parameters_choice": "[\"default_temporary_blocking_parameters\",\"temporary_user_blocking\"]", + "x-ves-proto-message": "ves.io.schema.views.common_waf.PolicyBasedChallenge", + "properties": { + "always_enable_captcha_challenge": { + "description": "Exclusive with [always_enable_js_challenge no_challenge]\n Enable Captcha challenge for all requests.\n Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.", + "title": "always enable captcha challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Always enable Captcha Challenge" + }, + "always_enable_js_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge no_challenge]\n Enable JavaScript challenge for all requests.\n Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.", + "title": "always enable JS challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Always enable JS Challenge" + }, + "captcha_challenge_parameters": { + "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", + "title": "Captcha Challenge", + "$ref": "#/definitions/virtual_hostCaptchaChallengeType", + "x-displayname": "Captcha Challenge Parameters" + }, + "default_captcha_challenge_parameters": { + "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_js_challenge_parameters": { + "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "default_mitigation_settings": { + "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default" + }, + "default_temporary_blocking_parameters": { + "description": "Exclusive with [temporary_user_blocking]\n Use default parameters", + "title": "default parameters", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default Parameters" + }, + "js_challenge_parameters": { + "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", + "title": "JavaScript Challenge", + "$ref": "#/definitions/virtual_hostJavascriptChallengeType", + "x-displayname": "JavaScript Challenge Parameters" + }, + "malicious_user_mitigation": { + "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", + "title": "Malicious User Mitigation", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Custom" + }, + "no_challenge": { + "description": "Exclusive with [always_enable_captcha_challenge always_enable_js_challenge]\n Disable JavaScript and Captcha challenge for all requests.\n Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.", + "title": "no_challenge", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "None" + }, + "rule_list": { + "description": " list challenge rules to be used in policy based challenge", + "title": "Challenge rule list", + "$ref": "#/definitions/common_wafChallengeRuleList", + "x-displayname": "Challenge rule list" + }, + "temporary_user_blocking": { + "description": "Exclusive with [default_temporary_blocking_parameters]\n Specifies configuration for temporary user blocking resulting from malicious user detection", + "title": "Temporary User Blocking", + "$ref": "#/definitions/virtual_hostTemporaryUserBlockingType", + "x-displayname": "Temporary User Blocking Parameters" + } + } + }, "viewshttp_loadbalancerCreateSpecType": { "type": "object", "description": "Shape of the HTTP load balancer specification", @@ -13633,7 +13736,6 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-bot_defense_choice": "[]", "x-ves-oneof-field-challenge_type": "[\"captcha_challenge\",\"enable_challenge\",\"js_challenge\",\"no_challenge\",\"policy_based_challenge\"]", "x-ves-oneof-field-client_side_defense_choice": "[\"client_side_defense\",\"disable_client_side_defense\"]", - "x-ves-oneof-field-ddos_detection_choice": "[\"disable_ddos_detection\",\"enable_ddos_detection\"]", "x-ves-oneof-field-hash_policy_choice": "[\"cookie_stickiness\",\"least_active\",\"random\",\"ring_hash\",\"round_robin\",\"source_ip_stickiness\"]", "x-ves-oneof-field-ip_reputation_choice": "[\"disable_ip_reputation\",\"enable_ip_reputation\"]", "x-ves-oneof-field-l7_ddos_auto_mitigation_action": "[\"l7_ddos_action_block\",\"l7_ddos_action_default\",\"l7_ddos_action_js_challenge\"]", @@ -13644,7 +13746,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-rate_limit_choice": "[\"api_rate_limit\",\"disable_rate_limit\",\"rate_limit\"]", "x-ves-oneof-field-service_policy_choice": "[\"active_service_policies\",\"no_service_policies\",\"service_policies_from_namespace\"]", "x-ves-oneof-field-slow_ddos_mitigation_choice": "[\"slow_ddos_mitigation\",\"system_default_timeouts\"]", - "x-ves-oneof-field-threat_intelligence_choice": "[\"disable_threat_intelligence\",\"enable_threat_intelligence\"]", + "x-ves-oneof-field-threat_mesh_choice": "[\"disable_threat_mesh\",\"enable_threat_mesh\"]", "x-ves-oneof-field-trust_client_ip_headers_choice": "[\"disable_trust_client_ip_headers\",\"enable_trust_client_ip_headers\"]", "x-ves-oneof-field-user_id_choice": "[\"user_id_client_ip\",\"user_identification\"]", "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\"]", @@ -13652,7 +13754,7 @@ var APISwaggerJSON string = `{ "properties": { "active_service_policies": { "description": "Exclusive with [no_service_policies service_policies_from_namespace]\n Apply the specified list of service policies and bypass the namespace service policy set", - "$ref": "#/definitions/http_loadbalancerServicePolicyList", + "$ref": "#/definitions/common_wafServicePolicyList", "x-displayname": "Apply Specified Service Policies" }, "add_location": { @@ -13679,17 +13781,17 @@ var APISwaggerJSON string = `{ }, "api_protection_rules": { "description": " API Protection Rules can be defined in two categories.\n The first category includes fine-grained rules, per API path and methods.\n The second category includes rules per API groups or Server URLs.\n If request matches any rule in the first category, second category rules are not evaluated.\n Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRules", + "$ref": "#/definitions/common_wafAPIProtectionRules", "x-displayname": "API Protection Rules" }, "api_rate_limit": { "description": "Exclusive with [disable_rate_limit rate_limit]\n Define rate limiting for one or more API endpoints", - "$ref": "#/definitions/http_loadbalancerAPIRateLimit", + "$ref": "#/definitions/common_wafAPIRateLimit", "x-displayname": "API Rate Limit" }, "api_specification": { "description": "Exclusive with [disable_api_definition]\n Specify API definition and OpenAPI Validation", - "$ref": "#/definitions/http_loadbalancerAPISpecificationSettings", + "$ref": "#/definitions/common_wafAPISpecificationSettings", "x-displayname": "Enable" }, "app_firewall": { @@ -13702,7 +13804,7 @@ var APISwaggerJSON string = `{ "description": " Define rules to block IP Prefixes or AS numbers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Client Blocking Rules", "x-ves-validation-rules": { @@ -13799,11 +13901,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "disable_ddos_detection": { - "description": "Exclusive with [enable_ddos_detection]\n", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, "disable_ip_reputation": { "description": "Exclusive with [enable_ip_reputation]\n", "$ref": "#/definitions/ioschemaEmpty", @@ -13819,8 +13916,8 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "disable_threat_intelligence": { - "description": "Exclusive with [enable_threat_intelligence]\n", + "disable_threat_mesh": { + "description": "Exclusive with [enable_threat_mesh]\n", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, @@ -13864,22 +13961,17 @@ var APISwaggerJSON string = `{ }, "enable_api_discovery": { "description": "Exclusive with [disable_api_discovery]\n", - "$ref": "#/definitions/http_loadbalancerApiDiscoverySetting", + "$ref": "#/definitions/common_wafApiDiscoverySetting", "x-displayname": "Enable" }, "enable_challenge": { "description": "Exclusive with [captcha_challenge js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users", - "$ref": "#/definitions/http_loadbalancerEnableChallenge", - "x-displayname": "Enable" - }, - "enable_ddos_detection": { - "description": "Exclusive with [disable_ddos_detection]\n", - "$ref": "#/definitions/http_loadbalancerEnableDDoSDetectionSetting", + "$ref": "#/definitions/common_wafEnableChallenge", "x-displayname": "Enable" }, "enable_ip_reputation": { "description": "Exclusive with [disable_ip_reputation]\n", - "$ref": "#/definitions/viewshttp_loadbalancerIPThreatCategoryListType", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", "x-displayname": "Enable" }, "enable_malicious_user_detection": { @@ -13887,8 +13979,8 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, - "enable_threat_intelligence": { - "description": "Exclusive with [disable_threat_intelligence]\n", + "enable_threat_mesh": { + "description": "Exclusive with [disable_threat_mesh]\n", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, @@ -13932,7 +14024,7 @@ var APISwaggerJSON string = `{ }, "jwt_validation": { "description": " JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\n JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired\n tokens or tokens that are not yet valid.", - "$ref": "#/definitions/http_loadbalancerJWTValidation", + "$ref": "#/definitions/common_wafJWTValidation", "x-displayname": "JWT Validation" }, "l7_ddos_action_block": { @@ -13982,7 +14074,7 @@ var APISwaggerJSON string = `{ }, "policy_based_challenge": { "description": "Exclusive with [captcha_challenge enable_challenge js_challenge no_challenge]\n Specifies the settings for policy rule based challenge", - "$ref": "#/definitions/viewshttp_loadbalancerPolicyBasedChallenge", + "$ref": "#/definitions/viewscommon_wafPolicyBasedChallenge", "x-displayname": "Policy Based Challenge" }, "protected_cookies": { @@ -14005,7 +14097,7 @@ var APISwaggerJSON string = `{ }, "rate_limit": { "description": "Exclusive with [api_rate_limit disable_rate_limit]\n Define custom rate limiting parameters for this load balancer", - "$ref": "#/definitions/http_loadbalancerRateLimitConfigType", + "$ref": "#/definitions/common_wafRateLimitConfigType", "x-displayname": "Custom Rate Limiting Parameters" }, "ring_hash": { @@ -14061,7 +14153,7 @@ var APISwaggerJSON string = `{ "description": " Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Trusted Client Rules", "x-ves-validation-rules": { @@ -14105,7 +14197,6 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-bot_defense_choice": "[]", "x-ves-oneof-field-challenge_type": "[\"captcha_challenge\",\"enable_challenge\",\"js_challenge\",\"no_challenge\",\"policy_based_challenge\"]", "x-ves-oneof-field-client_side_defense_choice": "[\"client_side_defense\",\"disable_client_side_defense\"]", - "x-ves-oneof-field-ddos_detection_choice": "[\"disable_ddos_detection\",\"enable_ddos_detection\"]", "x-ves-oneof-field-hash_policy_choice": "[\"cookie_stickiness\",\"least_active\",\"random\",\"ring_hash\",\"round_robin\",\"source_ip_stickiness\"]", "x-ves-oneof-field-ip_reputation_choice": "[\"disable_ip_reputation\",\"enable_ip_reputation\"]", "x-ves-oneof-field-l7_ddos_auto_mitigation_action": "[\"l7_ddos_action_block\",\"l7_ddos_action_default\",\"l7_ddos_action_js_challenge\"]", @@ -14116,7 +14207,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-rate_limit_choice": "[\"api_rate_limit\",\"disable_rate_limit\",\"rate_limit\"]", "x-ves-oneof-field-service_policy_choice": "[\"active_service_policies\",\"no_service_policies\",\"service_policies_from_namespace\"]", "x-ves-oneof-field-slow_ddos_mitigation_choice": "[\"slow_ddos_mitigation\",\"system_default_timeouts\"]", - "x-ves-oneof-field-threat_intelligence_choice": "[\"disable_threat_intelligence\",\"enable_threat_intelligence\"]", + "x-ves-oneof-field-threat_mesh_choice": "[\"disable_threat_mesh\",\"enable_threat_mesh\"]", "x-ves-oneof-field-trust_client_ip_headers_choice": "[\"disable_trust_client_ip_headers\",\"enable_trust_client_ip_headers\"]", "x-ves-oneof-field-user_id_choice": "[\"user_id_client_ip\",\"user_identification\"]", "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\"]", @@ -14124,7 +14215,7 @@ var APISwaggerJSON string = `{ "properties": { "active_service_policies": { "description": "Exclusive with [no_service_policies service_policies_from_namespace]\n Apply the specified list of service policies and bypass the namespace service policy set", - "$ref": "#/definitions/http_loadbalancerServicePolicyList", + "$ref": "#/definitions/common_wafServicePolicyList", "x-displayname": "Apply Specified Service Policies" }, "add_location": { @@ -14151,17 +14242,17 @@ var APISwaggerJSON string = `{ }, "api_protection_rules": { "description": " API Protection Rules can be defined in two categories.\n The first category includes fine-grained rules, per API path and methods.\n The second category includes rules per API groups or Server URLs.\n If request matches any rule in the first category, second category rules are not evaluated.\n Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRules", + "$ref": "#/definitions/common_wafAPIProtectionRules", "x-displayname": "API Protection Rules" }, "api_rate_limit": { "description": "Exclusive with [disable_rate_limit rate_limit]\n Define rate limiting for one or more API endpoints", - "$ref": "#/definitions/http_loadbalancerAPIRateLimit", + "$ref": "#/definitions/common_wafAPIRateLimit", "x-displayname": "API Rate Limit" }, "api_specification": { "description": "Exclusive with [disable_api_definition]\n Specify API definition and OpenAPI Validation", - "$ref": "#/definitions/http_loadbalancerAPISpecificationSettings", + "$ref": "#/definitions/common_wafAPISpecificationSettings", "x-displayname": "Enable" }, "app_firewall": { @@ -14179,7 +14270,7 @@ var APISwaggerJSON string = `{ "description": " Define rules to block IP Prefixes or AS numbers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Client Blocking Rules", "x-ves-validation-rules": { @@ -14281,11 +14372,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "disable_ddos_detection": { - "description": "Exclusive with [enable_ddos_detection]\n", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, "disable_ip_reputation": { "description": "Exclusive with [enable_ip_reputation]\n", "$ref": "#/definitions/ioschemaEmpty", @@ -14301,8 +14387,8 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "disable_threat_intelligence": { - "description": "Exclusive with [enable_threat_intelligence]\n", + "disable_threat_mesh": { + "description": "Exclusive with [enable_threat_mesh]\n", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, @@ -14354,22 +14440,17 @@ var APISwaggerJSON string = `{ }, "enable_api_discovery": { "description": "Exclusive with [disable_api_discovery]\n", - "$ref": "#/definitions/http_loadbalancerApiDiscoverySetting", + "$ref": "#/definitions/common_wafApiDiscoverySetting", "x-displayname": "Enable" }, "enable_challenge": { "description": "Exclusive with [captcha_challenge js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users", - "$ref": "#/definitions/http_loadbalancerEnableChallenge", - "x-displayname": "Enable" - }, - "enable_ddos_detection": { - "description": "Exclusive with [disable_ddos_detection]\n", - "$ref": "#/definitions/http_loadbalancerEnableDDoSDetectionSetting", + "$ref": "#/definitions/common_wafEnableChallenge", "x-displayname": "Enable" }, "enable_ip_reputation": { "description": "Exclusive with [disable_ip_reputation]\n", - "$ref": "#/definitions/viewshttp_loadbalancerIPThreatCategoryListType", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", "x-displayname": "Enable" }, "enable_malicious_user_detection": { @@ -14377,8 +14458,8 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, - "enable_threat_intelligence": { - "description": "Exclusive with [disable_threat_intelligence]\n", + "enable_threat_mesh": { + "description": "Exclusive with [disable_threat_mesh]\n", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, @@ -14436,7 +14517,7 @@ var APISwaggerJSON string = `{ }, "jwt_validation": { "description": " JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\n JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired\n tokens or tokens that are not yet valid.", - "$ref": "#/definitions/http_loadbalancerJWTValidation", + "$ref": "#/definitions/common_wafJWTValidation", "x-displayname": "JWT Validation" }, "l7_ddos_action_block": { @@ -14486,7 +14567,7 @@ var APISwaggerJSON string = `{ }, "policy_based_challenge": { "description": "Exclusive with [captcha_challenge enable_challenge js_challenge no_challenge]\n Specifies the settings for policy rule based challenge", - "$ref": "#/definitions/viewshttp_loadbalancerPolicyBasedChallenge", + "$ref": "#/definitions/viewscommon_wafPolicyBasedChallenge", "x-displayname": "Policy Based Challenge" }, "protected_cookies": { @@ -14509,7 +14590,7 @@ var APISwaggerJSON string = `{ }, "rate_limit": { "description": "Exclusive with [api_rate_limit disable_rate_limit]\n Define custom rate limiting parameters for this load balancer", - "$ref": "#/definitions/http_loadbalancerRateLimitConfigType", + "$ref": "#/definitions/common_wafRateLimitConfigType", "x-displayname": "Custom Rate Limiting Parameters" }, "ring_hash": { @@ -14570,7 +14651,7 @@ var APISwaggerJSON string = `{ "description": " Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Trusted Client Rules", "x-ves-validation-rules": { @@ -14603,31 +14684,6 @@ var APISwaggerJSON string = `{ } } }, - "viewshttp_loadbalancerIPThreatCategoryListType": { - "type": "object", - "description": "List of ip threat categories", - "title": "IP Threat Category List Type", - "x-displayname": "IP Threat Category List", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.IPThreatCategoryListType", - "properties": { - "ip_threat_categories": { - "type": "array", - "description": " If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", - "title": "IP Threat Categories", - "maxItems": 32, - "items": { - "$ref": "#/definitions/policyIPThreatCategory" - }, - "x-displayname": "List of IP Threat Categories to choose", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true" - } - } - } - }, "viewshttp_loadbalancerJavaScriptLocation": { "type": "string", "description": "x-displayName: \"JavaScript Location\"\nAll inside networks.\n\n - AFTER_HEAD: x-displayName: \"After \u003chead\u003e tag\"\nInsert JavaScript after \u003chead\u003e tag\n - AFTER_TITLE_END: x-displayName: \"After \u003c/title\u003e tag\"\nInsert JavaScript after \u003c/title\u003e tag.\n - BEFORE_SCRIPT: x-displayName: \"Before \u003cscript\u003e tag\"\nInsert JavaScript before first \u003cscript\u003e tag", @@ -14668,92 +14724,6 @@ var APISwaggerJSON string = `{ } } }, - "viewshttp_loadbalancerPolicyBasedChallenge": { - "type": "object", - "description": "Specifies the settings for policy rule based challenge", - "title": "policy based challenge", - "x-displayname": "Policy Based Challenge", - "x-ves-oneof-field-captcha_challenge_parameters_choice": "[\"captcha_challenge_parameters\",\"default_captcha_challenge_parameters\"]", - "x-ves-oneof-field-challenge_choice": "[\"always_enable_captcha_challenge\",\"always_enable_js_challenge\",\"no_challenge\"]", - "x-ves-oneof-field-js_challenge_parameters_choice": "[\"default_js_challenge_parameters\",\"js_challenge_parameters\"]", - "x-ves-oneof-field-malicious_user_mitigation_choice": "[\"default_mitigation_settings\",\"malicious_user_mitigation\"]", - "x-ves-oneof-field-temporary_blocking_parameters_choice": "[\"default_temporary_blocking_parameters\",\"temporary_user_blocking\"]", - "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.PolicyBasedChallenge", - "properties": { - "always_enable_captcha_challenge": { - "description": "Exclusive with [always_enable_js_challenge no_challenge]\n Enable Captcha challenge for all requests.\n Challenge rules can be used to selectively disable Captcha challenge or enable JavaScript challenge for some requests.", - "title": "always enable captcha challenge", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Always enable Captcha Challenge" - }, - "always_enable_js_challenge": { - "description": "Exclusive with [always_enable_captcha_challenge no_challenge]\n Enable JavaScript challenge for all requests.\n Challenge rules can be used to selectively disable JavaScript challenge or enable Captcha challenge for some requests.", - "title": "always enable JS challenge", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Always enable JS Challenge" - }, - "captcha_challenge_parameters": { - "description": "Exclusive with [default_captcha_challenge_parameters]\n Configure captcha challenge parameters", - "title": "Captcha Challenge", - "$ref": "#/definitions/virtual_hostCaptchaChallengeType", - "x-displayname": "Captcha Challenge Parameters" - }, - "default_captcha_challenge_parameters": { - "description": "Exclusive with [captcha_challenge_parameters]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Use Default Parameters" - }, - "default_js_challenge_parameters": { - "description": "Exclusive with [js_challenge_parameters]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Use Default Parameters" - }, - "default_mitigation_settings": { - "description": "Exclusive with [malicious_user_mitigation]\n For low threat level, JavaScript Challenge will be applied. For medium threat level, Captcha Challenge will be applied.\n For high level, users will be temporarily blocked.", - "title": "default parameters", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Default" - }, - "default_temporary_blocking_parameters": { - "description": "Exclusive with [temporary_user_blocking]\n Use default parameters", - "title": "default parameters", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Use Default Parameters" - }, - "js_challenge_parameters": { - "description": "Exclusive with [default_js_challenge_parameters]\n Configure JavaScript challenge parameters", - "title": "JavaScript Challenge", - "$ref": "#/definitions/virtual_hostJavascriptChallengeType", - "x-displayname": "JavaScript Challenge Parameters" - }, - "malicious_user_mitigation": { - "description": "Exclusive with [default_mitigation_settings]\n Define the mitigation actions to be taken for different threat levels", - "title": "Malicious User Mitigation", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Custom" - }, - "no_challenge": { - "description": "Exclusive with [always_enable_captcha_challenge always_enable_js_challenge]\n Disable JavaScript and Captcha challenge for all requests.\n Challenge rules can be used to selectively enable JavaScript or Captcha challenge for some requests.", - "title": "no_challenge", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "None" - }, - "rule_list": { - "description": " list challenge rules to be used in policy based challenge", - "title": "Challenge rule list", - "$ref": "#/definitions/http_loadbalancerChallengeRuleList", - "x-displayname": "Challenge rule list" - }, - "temporary_user_blocking": { - "description": "Exclusive with [default_temporary_blocking_parameters]\n Specifies configuration for temporary user blocking resulting from malicious user detection", - "title": "Temporary User Blocking", - "$ref": "#/definitions/virtual_hostTemporaryUserBlockingType", - "x-displayname": "Temporary User Blocking Parameters" - } - } - }, "viewshttp_loadbalancerReplaceSpecType": { "type": "object", "description": "Shape of the HTTP load balancer specification", @@ -14765,7 +14735,6 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-bot_defense_choice": "[]", "x-ves-oneof-field-challenge_type": "[\"captcha_challenge\",\"enable_challenge\",\"js_challenge\",\"no_challenge\",\"policy_based_challenge\"]", "x-ves-oneof-field-client_side_defense_choice": "[\"client_side_defense\",\"disable_client_side_defense\"]", - "x-ves-oneof-field-ddos_detection_choice": "[\"disable_ddos_detection\",\"enable_ddos_detection\"]", "x-ves-oneof-field-hash_policy_choice": "[\"cookie_stickiness\",\"least_active\",\"random\",\"ring_hash\",\"round_robin\",\"source_ip_stickiness\"]", "x-ves-oneof-field-ip_reputation_choice": "[\"disable_ip_reputation\",\"enable_ip_reputation\"]", "x-ves-oneof-field-l7_ddos_auto_mitigation_action": "[\"l7_ddos_action_block\",\"l7_ddos_action_default\",\"l7_ddos_action_js_challenge\"]", @@ -14776,7 +14745,7 @@ var APISwaggerJSON string = `{ "x-ves-oneof-field-rate_limit_choice": "[\"api_rate_limit\",\"disable_rate_limit\",\"rate_limit\"]", "x-ves-oneof-field-service_policy_choice": "[\"active_service_policies\",\"no_service_policies\",\"service_policies_from_namespace\"]", "x-ves-oneof-field-slow_ddos_mitigation_choice": "[\"slow_ddos_mitigation\",\"system_default_timeouts\"]", - "x-ves-oneof-field-threat_intelligence_choice": "[\"disable_threat_intelligence\",\"enable_threat_intelligence\"]", + "x-ves-oneof-field-threat_mesh_choice": "[\"disable_threat_mesh\",\"enable_threat_mesh\"]", "x-ves-oneof-field-trust_client_ip_headers_choice": "[\"disable_trust_client_ip_headers\",\"enable_trust_client_ip_headers\"]", "x-ves-oneof-field-user_id_choice": "[\"user_id_client_ip\",\"user_identification\"]", "x-ves-oneof-field-waf_choice": "[\"app_firewall\",\"disable_waf\"]", @@ -14784,7 +14753,7 @@ var APISwaggerJSON string = `{ "properties": { "active_service_policies": { "description": "Exclusive with [no_service_policies service_policies_from_namespace]\n Apply the specified list of service policies and bypass the namespace service policy set", - "$ref": "#/definitions/http_loadbalancerServicePolicyList", + "$ref": "#/definitions/common_wafServicePolicyList", "x-displayname": "Apply Specified Service Policies" }, "add_location": { @@ -14811,17 +14780,17 @@ var APISwaggerJSON string = `{ }, "api_protection_rules": { "description": " API Protection Rules can be defined in two categories.\n The first category includes fine-grained rules, per API path and methods.\n The second category includes rules per API groups or Server URLs.\n If request matches any rule in the first category, second category rules are not evaluated.\n Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group.", - "$ref": "#/definitions/http_loadbalancerAPIProtectionRules", + "$ref": "#/definitions/common_wafAPIProtectionRules", "x-displayname": "API Protection Rules" }, "api_rate_limit": { "description": "Exclusive with [disable_rate_limit rate_limit]\n Define rate limiting for one or more API endpoints", - "$ref": "#/definitions/http_loadbalancerAPIRateLimit", + "$ref": "#/definitions/common_wafAPIRateLimit", "x-displayname": "API Rate Limit" }, "api_specification": { "description": "Exclusive with [disable_api_definition]\n Specify API definition and OpenAPI Validation", - "$ref": "#/definitions/http_loadbalancerAPISpecificationSettings", + "$ref": "#/definitions/common_wafAPISpecificationSettings", "x-displayname": "Enable" }, "app_firewall": { @@ -14834,7 +14803,7 @@ var APISwaggerJSON string = `{ "description": " Define rules to block IP Prefixes or AS numbers.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Client Blocking Rules", "x-ves-validation-rules": { @@ -14931,11 +14900,6 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "disable_ddos_detection": { - "description": "Exclusive with [enable_ddos_detection]\n", - "$ref": "#/definitions/ioschemaEmpty", - "x-displayname": "Disable" - }, "disable_ip_reputation": { "description": "Exclusive with [enable_ip_reputation]\n", "$ref": "#/definitions/ioschemaEmpty", @@ -14951,8 +14915,8 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, - "disable_threat_intelligence": { - "description": "Exclusive with [enable_threat_intelligence]\n", + "disable_threat_mesh": { + "description": "Exclusive with [enable_threat_mesh]\n", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable" }, @@ -14996,22 +14960,17 @@ var APISwaggerJSON string = `{ }, "enable_api_discovery": { "description": "Exclusive with [disable_api_discovery]\n", - "$ref": "#/definitions/http_loadbalancerApiDiscoverySetting", + "$ref": "#/definitions/common_wafApiDiscoverySetting", "x-displayname": "Enable" }, "enable_challenge": { "description": "Exclusive with [captcha_challenge js_challenge no_challenge policy_based_challenge]\n Configure auto mitigation i.e risk based challenges for malicious users", - "$ref": "#/definitions/http_loadbalancerEnableChallenge", - "x-displayname": "Enable" - }, - "enable_ddos_detection": { - "description": "Exclusive with [disable_ddos_detection]\n", - "$ref": "#/definitions/http_loadbalancerEnableDDoSDetectionSetting", + "$ref": "#/definitions/common_wafEnableChallenge", "x-displayname": "Enable" }, "enable_ip_reputation": { "description": "Exclusive with [disable_ip_reputation]\n", - "$ref": "#/definitions/viewshttp_loadbalancerIPThreatCategoryListType", + "$ref": "#/definitions/viewscommon_wafIPThreatCategoryListType", "x-displayname": "Enable" }, "enable_malicious_user_detection": { @@ -15019,8 +14978,8 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, - "enable_threat_intelligence": { - "description": "Exclusive with [disable_threat_intelligence]\n", + "enable_threat_mesh": { + "description": "Exclusive with [disable_threat_mesh]\n", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable" }, @@ -15064,7 +15023,7 @@ var APISwaggerJSON string = `{ }, "jwt_validation": { "description": " JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming\n JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired\n tokens or tokens that are not yet valid.", - "$ref": "#/definitions/http_loadbalancerJWTValidation", + "$ref": "#/definitions/common_wafJWTValidation", "x-displayname": "JWT Validation" }, "l7_ddos_action_block": { @@ -15114,7 +15073,7 @@ var APISwaggerJSON string = `{ }, "policy_based_challenge": { "description": "Exclusive with [captcha_challenge enable_challenge js_challenge no_challenge]\n Specifies the settings for policy rule based challenge", - "$ref": "#/definitions/viewshttp_loadbalancerPolicyBasedChallenge", + "$ref": "#/definitions/viewscommon_wafPolicyBasedChallenge", "x-displayname": "Policy Based Challenge" }, "protected_cookies": { @@ -15137,7 +15096,7 @@ var APISwaggerJSON string = `{ }, "rate_limit": { "description": "Exclusive with [api_rate_limit disable_rate_limit]\n Define custom rate limiting parameters for this load balancer", - "$ref": "#/definitions/http_loadbalancerRateLimitConfigType", + "$ref": "#/definitions/common_wafRateLimitConfigType", "x-displayname": "Custom Rate Limiting Parameters" }, "ring_hash": { @@ -15193,7 +15152,7 @@ var APISwaggerJSON string = `{ "description": " Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 256\n ves.io.schema.rules.repeated.unique_metadata_name: true\n", "maxItems": 256, "items": { - "$ref": "#/definitions/http_loadbalancerSimpleClientSrcRule" + "$ref": "#/definitions/common_wafSimpleClientSrcRule" }, "x-displayname": "Trusted Client Rules", "x-ves-validation-rules": { @@ -15500,8 +15459,9 @@ var APISwaggerJSON string = `{ "properties": { "client_ip_headers": { "type": "array", - "description": " Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning\n if the first header is not present in the request, the system will proceed to check for the second header,\n and so on, until one of the listed headers is found. If none of the defined headers exist, or the value\n is not an IP address, then the system will use the source IP of the packet. If multiple defined headers with\n different names are present in the request, the value of the first header name in the configuration will be used.\n If multiple defined headers with the same name are present in the request, values of all those headers will be combined.\n The system will read the right-most IP address from header, if there are multiple ip addresses in the header value.\n For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip\n\nExample: - \"Client-IP-Header\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 5\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning\n if the first header is not present in the request, the system will proceed to check for the second header,\n and so on, until one of the listed headers is found. If none of the defined headers exist, or the value\n is not an IP address, then the system will use the source IP of the packet. If multiple defined headers with\n different names are present in the request, the value of the first header name in the configuration will be used.\n If multiple defined headers with the same name are present in the request, values of all those headers will be combined.\n The system will read the right-most IP address from header, if there are multiple ip addresses in the header value.\n For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip\n\nExample: - \"Client-IP-Header\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 5\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "Client IP Headers", + "minItems": 1, "maxItems": 5, "items": { "type": "string", @@ -15510,10 +15470,13 @@ var APISwaggerJSON string = `{ }, "x-displayname": "Client IP Headers", "x-ves-example": "Client-IP-Header", + "x-ves-required": "true", "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.items.string.max_bytes": "256", "ves.io.schema.rules.repeated.items.string.min_bytes": "1", "ves.io.schema.rules.repeated.max_items": "5", + "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true" } } @@ -15646,23 +15609,30 @@ var APISwaggerJSON string = `{ }, "virtual_hostHttpProtocolOptions": { "type": "object", - "description": "x-displayName: \"HTTP Protocol Configuration Options\"\nHTTP protocol configuration options for downstream connections", + "description": "HTTP protocol configuration options for downstream connections", "title": "HttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration Options", + "x-ves-displayorder": "1", + "x-ves-oneof-field-http_protocol_choice": "[\"http_protocol_enable_v1_only\",\"http_protocol_enable_v1_v2\",\"http_protocol_enable_v2_only\"]", + "x-ves-proto-message": "ves.io.schema.virtual_host.HttpProtocolOptions", "properties": { "http_protocol_enable_v1_only": { - "description": "x-displayName: \"HTTP/1.1\"\nEnable HTTP/1.1 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_v2 http_protocol_enable_v2_only]\n Enable HTTP/1.1 for downstream connections", "title": "http_protocol_enable_v1_only", - "$ref": "#/definitions/ioschemaEmpty" + "$ref": "#/definitions/schemavirtual_hostHttp1ProtocolOptions", + "x-displayname": "HTTP/1.1" }, "http_protocol_enable_v1_v2": { - "description": "x-displayName: \"HTTP/1.1 and HTTP/2\"\nEnable both HTTP/1.1 and HTTP/2 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v2_only]\n Enable both HTTP/1.1 and HTTP/2 for downstream connections", "title": "http_protocol_enable_v1_v2", - "$ref": "#/definitions/ioschemaEmpty" + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "HTTP/1.1 and HTTP/2" }, "http_protocol_enable_v2_only": { - "description": "x-displayName: \"HTTP/2\"\nEnable HTTP/2 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v1_v2]\n Enable HTTP/2 for downstream connections", "title": "http_protocol_enable_v2_only", - "$ref": "#/definitions/ioschemaEmpty" + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "HTTP/2" } } }, diff --git a/pbgo/extschema/schema/views/http_loadbalancer/public_customapi.pb.go b/pbgo/extschema/schema/views/http_loadbalancer/public_customapi.pb.go index ce2a98b4b..feb2dca65 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/public_customapi.pb.go @@ -945,94 +945,95 @@ func init() { } var fileDescriptor_e0f78b47e1ecaa96 = []byte{ - // 1382 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x3d, 0x6c, 0x1c, 0x45, - 0x1b, 0xbe, 0xd9, 0xb3, 0x13, 0x7b, 0xfc, 0x7d, 0x91, 0x3d, 0xf1, 0xe7, 0x9c, 0x2f, 0xd6, 0x3a, - 0xdf, 0x4a, 0x91, 0x22, 0x2b, 0x77, 0x1b, 0x12, 0x10, 0x21, 0xe1, 0x47, 0x76, 0xec, 0xd8, 0x8e, - 0x42, 0x62, 0xd6, 0xae, 0x00, 0xb1, 0x9a, 0xdb, 0x9d, 0x3b, 0x0f, 0xec, 0xed, 0x4c, 0x76, 0x66, - 0xfd, 0xa3, 0xc8, 0x52, 0x14, 0x89, 0x82, 0x0a, 0xe4, 0x90, 0x86, 0x8a, 0x12, 0x21, 0xa8, 0x41, - 0xa4, 0x49, 0x47, 0x68, 0x90, 0x05, 0x4d, 0x10, 0x0d, 0x39, 0x53, 0x40, 0x97, 0x3e, 0x0d, 0x9a, - 0xb9, 0xff, 0x1f, 0x5f, 0x8e, 0x8b, 0xbb, 0xdd, 0x79, 0x7f, 0xe6, 0x99, 0xe7, 0x7d, 0xe7, 0x7d, - 0xf6, 0x0e, 0xbe, 0xbe, 0x41, 0x44, 0x96, 0x32, 0x5b, 0x78, 0xeb, 0xa4, 0x88, 0xed, 0x0d, 0x4a, - 0x36, 0x85, 0xbd, 0x2e, 0x25, 0x77, 0x03, 0x86, 0xfd, 0x1c, 0x0e, 0x70, 0xe8, 0x91, 0xc8, 0xe6, - 0x71, 0x2e, 0xa0, 0x9e, 0xeb, 0xc5, 0x42, 0xb2, 0x22, 0xe6, 0x34, 0xcb, 0x23, 0x26, 0x19, 0x3a, - 0x5d, 0x8e, 0xce, 0x96, 0xa3, 0xb3, 0x3a, 0x3a, 0xdb, 0x16, 0x9d, 0xce, 0x14, 0xa8, 0x5c, 0x8f, - 0x73, 0x59, 0x8f, 0x15, 0xed, 0x02, 0x2b, 0x30, 0x5b, 0x47, 0xe7, 0xe2, 0xbc, 0x7e, 0xd3, 0x2f, - 0xfa, 0xa9, 0x9c, 0x35, 0x3d, 0x55, 0x60, 0xac, 0x10, 0x10, 0x1b, 0x73, 0x6a, 0xe3, 0x30, 0x64, - 0x12, 0x4b, 0xca, 0x42, 0x51, 0xb1, 0x9e, 0x69, 0x46, 0xec, 0x33, 0xe1, 0x16, 0xa9, 0xa4, 0x05, - 0xed, 0x64, 0xcb, 0x6d, 0x4e, 0xaa, 0x9e, 0x27, 0x9b, 0x3d, 0x19, 0x6f, 0x4c, 0x33, 0xd9, 0x6c, - 0x6c, 0x8c, 0x9b, 0x6a, 0xe1, 0x04, 0x07, 0xd4, 0xc7, 0x92, 0x54, 0xac, 0x56, 0x8b, 0x95, 0x08, - 0x12, 0x6e, 0xb4, 0x24, 0x3f, 0xd5, 0xce, 0xaa, 0xdb, 0xec, 0x31, 0xdd, 0x89, 0xf7, 0x46, 0x10, - 0xe7, 0x5a, 0x1d, 0x22, 0x19, 0xe3, 0xc0, 0x5d, 0x67, 0x42, 0xba, 0x7e, 0x28, 0x5c, 0x1a, 0xe6, - 0x99, 0xcd, 0x72, 0x1f, 0x12, 0x4f, 0x96, 0x23, 0xac, 0x05, 0x38, 0xb6, 0x48, 0xe4, 0x7c, 0x28, - 0x96, 0xc3, 0x3c, 0x73, 0xc8, 0xad, 0x98, 0x08, 0x89, 0xa6, 0xe0, 0x70, 0x88, 0x8b, 0x44, 0x70, - 0xec, 0x91, 0x14, 0x38, 0x05, 0xce, 0x0c, 0x3b, 0xf5, 0x05, 0x84, 0xe0, 0x80, 0x7a, 0x49, 0x19, - 0xda, 0xa0, 0x9f, 0x2d, 0x1f, 0xa2, 0xc6, 0x34, 0x82, 0xb3, 0x50, 0x10, 0x74, 0x03, 0x0e, 0x55, - 0x77, 0xd5, 0x69, 0x46, 0xce, 0x5f, 0xc8, 0xb6, 0x16, 0xbf, 0x03, 0xc2, 0xec, 0x62, 0xc0, 0x72, - 0x38, 0x58, 0xe5, 0xc4, 0x5b, 0xdb, 0xe6, 0xc4, 0x39, 0xea, 0x97, 0xf3, 0x5a, 0x5f, 0x1a, 0x70, - 0x7c, 0x91, 0xc8, 0x55, 0xe2, 0xc5, 0x11, 0x95, 0xdb, 0x57, 0x58, 0x98, 0xa7, 0x05, 0x87, 0xdc, - 0x7a, 0x0e, 0xe0, 0xeb, 0x70, 0x02, 0x07, 0x81, 0xdb, 0xd6, 0x62, 0x22, 0x95, 0xd4, 0xa0, 0xc6, - 0x5b, 0x40, 0x2d, 0x14, 0xb9, 0xdc, 0x5e, 0x4a, 0x38, 0xe3, 0x38, 0x08, 0x96, 0xa4, 0xe4, 0xd7, - 0x1b, 0x63, 0x50, 0x0c, 0x4f, 0xb4, 0x67, 0x72, 0x03, 0x2a, 0x64, 0x6a, 0x40, 0xa7, 0xbb, 0x9c, - 0xed, 0xa9, 0xc1, 0xb3, 0x4b, 0x6b, 0x6b, 0x2b, 0x2a, 0xf5, 0x5c, 0x65, 0xe1, 0x3a, 0x15, 0x72, - 0x29, 0xe1, 0xfc, 0x6f, 0xbd, 0x75, 0x4b, 0x65, 0x98, 0x9b, 0x86, 0xc7, 0x1b, 0xa3, 0x5d, 0x6f, - 0x9d, 0x51, 0x8f, 0xa0, 0xa1, 0x87, 0x0f, 0x40, 0x72, 0xef, 0x01, 0x30, 0xae, 0x0d, 0x0c, 0x19, - 0xa3, 0x49, 0xeb, 0x19, 0xe8, 0x44, 0x91, 0xe0, 0xe8, 0xff, 0xf0, 0x3f, 0x98, 0x73, 0x37, 0x4f, - 0x23, 0xb2, 0x89, 0x83, 0x20, 0x05, 0x4e, 0x25, 0xcf, 0x0c, 0x3b, 0x23, 0x98, 0xf3, 0xab, 0x95, - 0x25, 0x34, 0x0d, 0x47, 0x72, 0x4c, 0xba, 0x3e, 0xc9, 0x93, 0x50, 0xa8, 0xfa, 0x2a, 0x0f, 0x98, - 0x63, 0x72, 0xbe, 0xbc, 0x82, 0x4e, 0xc3, 0x63, 0xbe, 0xba, 0x3a, 0x3e, 0x91, 0xc4, 0x53, 0x8d, - 0x99, 0x4a, 0x6a, 0x9f, 0xff, 0xaa, 0xd5, 0xf9, 0xea, 0xa2, 0x72, 0xc3, 0x9c, 0xba, 0xaa, 0xc1, - 0x2a, 0x6e, 0x03, 0x65, 0x37, 0xcc, 0xe9, 0x4a, 0x6d, 0x51, 0x15, 0xad, 0xe2, 0x42, 0xfc, 0xd4, - 0xa0, 0xf6, 0xa8, 0x2f, 0xa0, 0x0b, 0x70, 0xa2, 0x11, 0xaf, 0xcb, 0x49, 0xe4, 0x46, 0x2c, 0x96, - 0x24, 0x75, 0x44, 0xbb, 0x1e, 0x6f, 0x40, 0xbe, 0x42, 0x22, 0x47, 0x99, 0xac, 0x0d, 0x38, 0xde, - 0x89, 0x55, 0xf4, 0x01, 0x1c, 0x6b, 0xe3, 0xbf, 0xcc, 0xc0, 0xdc, 0x4b, 0x3f, 0xfc, 0xfd, 0x30, - 0x09, 0x77, 0xc1, 0x51, 0x6b, 0x30, 0x4a, 0xa6, 0xee, 0x18, 0xea, 0x75, 0x78, 0x17, 0x1c, 0xb1, - 0x06, 0x22, 0x63, 0x14, 0xa8, 0xb7, 0xc1, 0x5d, 0x60, 0x8c, 0x0e, 0x56, 0x9f, 0x86, 0x80, 0x33, - 0xda, 0x5a, 0x21, 0x6b, 0x05, 0x4e, 0xa9, 0xf6, 0x67, 0xab, 0xb3, 0xb1, 0x64, 0x6f, 0xd7, 0x06, - 0x8b, 0x13, 0x07, 0x44, 0x3c, 0xbf, 0x3f, 0x3b, 0x5d, 0xa8, 0x7b, 0xa0, 0x5b, 0x4a, 0xc1, 0x51, - 0x11, 0xa6, 0x54, 0x29, 0x70, 0x2c, 0x59, 0x7d, 0x92, 0xb9, 0x91, 0x32, 0xeb, 0xca, 0xb5, 0xdf, - 0xb5, 0xe6, 0xa1, 0x97, 0x9d, 0x67, 0xab, 0xcd, 0x69, 0xf5, 0xd5, 0x9d, 0xf0, 0x99, 0x98, 0x6d, - 0xca, 0xa9, 0x77, 0xbc, 0x36, 0x30, 0x04, 0x46, 0x0d, 0x85, 0xca, 0x9c, 0x27, 0x01, 0x91, 0xa4, - 0x23, 0xb0, 0xbe, 0x8e, 0x8a, 0xde, 0x82, 0x53, 0x07, 0x9c, 0xc4, 0xd5, 0xbe, 0x49, 0xed, 0x3b, - 0xd9, 0x11, 0xd8, 0x0d, 0xc5, 0xd5, 0xcb, 0xdd, 0x41, 0x09, 0xde, 0x91, 0x61, 0x07, 0x9a, 0xaa, - 0x37, 0x66, 0x37, 0x30, 0x0d, 0x70, 0x2e, 0x20, 0xb3, 0x2b, 0xcb, 0xf3, 0x24, 0x4f, 0x43, 0xaa, - 0x27, 0x6e, 0x7f, 0x55, 0xfb, 0x1c, 0xc0, 0xe9, 0xae, 0x49, 0x05, 0x47, 0xb7, 0xe0, 0x24, 0xae, - 0x9a, 0x5d, 0x75, 0x4f, 0xfc, 0xba, 0x83, 0xee, 0xc9, 0x91, 0xf3, 0x56, 0xc7, 0x09, 0x72, 0x53, - 0xcf, 0x6d, 0x87, 0xe4, 0xd5, 0x50, 0x9c, 0x1b, 0xfb, 0x7a, 0xe7, 0x58, 0x73, 0xb4, 0x73, 0xa2, - 0x96, 0x77, 0x96, 0xd3, 0x86, 0x6d, 0xad, 0xdf, 0x00, 0x9c, 0x98, 0x15, 0x82, 0x16, 0xc2, 0x26, - 0x3c, 0xfd, 0x95, 0xeb, 0x7d, 0xd8, 0xb2, 0x6f, 0x65, 0x8a, 0xf6, 0x09, 0x5a, 0x0d, 0x85, 0x3a, - 0x24, 0x64, 0xc3, 0x71, 0x2f, 0x22, 0x58, 0x12, 0x97, 0xe6, 0xdd, 0x90, 0x49, 0x97, 0x6c, 0x51, - 0x21, 0x85, 0x1e, 0xad, 0x43, 0xce, 0x58, 0xd9, 0xb6, 0x9c, 0xbf, 0xc1, 0xe4, 0x82, 0x36, 0x58, - 0x93, 0xf0, 0x44, 0xc7, 0xa3, 0x09, 0x7e, 0xfe, 0xd9, 0x31, 0x38, 0x7c, 0x45, 0x7f, 0x7c, 0xcc, - 0xae, 0x2c, 0xa3, 0x4f, 0x0c, 0x08, 0xeb, 0x1a, 0x85, 0x2e, 0xf6, 0x38, 0xa5, 0xdb, 0xd4, 0x31, - 0xfd, 0x5a, 0x1f, 0x91, 0x65, 0x41, 0xb4, 0x3e, 0x06, 0x8f, 0xbe, 0x37, 0x40, 0xe9, 0xc7, 0xd4, - 0xb9, 0xfc, 0x2b, 0x5b, 0x5e, 0x46, 0xa8, 0x29, 0x4d, 0x8a, 0x44, 0xac, 0x67, 0x72, 0x58, 0x50, - 0x2f, 0x53, 0x64, 0x21, 0x95, 0x2c, 0x3a, 0xab, 0x3e, 0x05, 0x32, 0x94, 0x65, 0x78, 0xc4, 0xb6, - 0xb6, 0x33, 0x11, 0xc1, 0xfe, 0xdd, 0x5f, 0xff, 0xbc, 0x67, 0x2c, 0xa2, 0x85, 0xca, 0x47, 0x95, - 0x5d, 0xab, 0x91, 0xb0, 0x6f, 0xd7, 0x9e, 0x77, 0xda, 0x3f, 0xc2, 0x2a, 0xe6, 0x1d, 0xbb, 0x40, - 0x64, 0xc6, 0x0f, 0x45, 0x46, 0x09, 0x2c, 0xda, 0x35, 0xb4, 0xec, 0x37, 0xab, 0x04, 0xba, 0xdc, - 0xfb, 0xc1, 0xda, 0x24, 0x38, 0xdd, 0x7f, 0xb0, 0xe0, 0xd6, 0xdd, 0x2a, 0x2f, 0x33, 0x9a, 0x97, - 0x4d, 0x8c, 0x79, 0x6f, 0x8c, 0x5c, 0xb3, 0xfa, 0x60, 0xa4, 0x40, 0xa4, 0x2b, 0x2a, 0x18, 0x5c, - 0x4f, 0x83, 0xb8, 0x04, 0x66, 0xd0, 0x77, 0x06, 0x9c, 0x3c, 0x70, 0xe4, 0xa2, 0x2b, 0xff, 0xa2, - 0xea, 0x07, 0xe9, 0x40, 0xfa, 0xc5, 0x93, 0x08, 0x6e, 0x7d, 0x5a, 0x25, 0x2b, 0xdb, 0xb9, 0x89, - 0x62, 0x41, 0x5a, 0xf9, 0xda, 0x8c, 0xa8, 0x24, 0x9a, 0xb0, 0x55, 0xf4, 0x4e, 0xdf, 0x2d, 0x74, - 0x90, 0xde, 0xa0, 0xdf, 0x0d, 0x78, 0xb2, 0xcb, 0x04, 0x46, 0x0b, 0x3d, 0x1e, 0xbb, 0xbb, 0xb4, - 0xa4, 0x0f, 0x23, 0x8d, 0xe0, 0xd6, 0xb7, 0x55, 0xfe, 0x32, 0x3d, 0xf3, 0x57, 0xeb, 0xb7, 0x68, - 0x86, 0x1f, 0x3a, 0x7d, 0xf6, 0xed, 0x6e, 0xf2, 0xb7, 0x83, 0x7e, 0x32, 0xe0, 0xc9, 0x2e, 0xa2, - 0xd2, 0x33, 0xbb, 0xdd, 0xd5, 0x2e, 0x7d, 0xf5, 0x30, 0xd2, 0x08, 0x6e, 0x7d, 0x51, 0xa5, 0xf7, - 0x62, 0xf7, 0x19, 0xd7, 0x44, 0x70, 0xf5, 0x3a, 0xd6, 0x99, 0x5e, 0x43, 0x4e, 0xdf, 0x4c, 0xb7, - 0xa8, 0xaa, 0x5d, 0xd3, 0x45, 0xf4, 0x8d, 0x01, 0x8f, 0x77, 0x90, 0x0b, 0xf4, 0x46, 0x8f, 0x87, - 0xef, 0xac, 0xa2, 0xe9, 0x37, 0x5f, 0x24, 0x5c, 0x70, 0xeb, 0xbe, 0xe2, 0xeb, 0xd5, 0x9e, 0xdb, - 0xb1, 0xc6, 0x56, 0xfd, 0x5e, 0xaf, 0x59, 0x37, 0x0f, 0x8f, 0x2e, 0x8d, 0xf2, 0x12, 0x98, 0x49, - 0x5f, 0x52, 0xbf, 0x2e, 0x7e, 0x79, 0x00, 0xce, 0xf6, 0x76, 0xbc, 0xb2, 0xd8, 0xdf, 0xfd, 0x39, - 0x65, 0x8c, 0x82, 0xb9, 0xfb, 0x60, 0xef, 0x89, 0x99, 0x78, 0xfc, 0xc4, 0x4c, 0x3c, 0x7d, 0x62, - 0x82, 0x3b, 0x25, 0x13, 0x7c, 0x55, 0x32, 0xc1, 0xa3, 0x92, 0x09, 0xf6, 0x4a, 0x26, 0xf8, 0xa3, - 0x64, 0x82, 0xbf, 0x4a, 0x66, 0xe2, 0x69, 0xc9, 0x04, 0x9f, 0xed, 0x9b, 0x89, 0x87, 0xfb, 0x26, - 0xd8, 0xdb, 0x37, 0x13, 0x8f, 0xf7, 0xcd, 0xc4, 0xbb, 0xef, 0x15, 0x18, 0xff, 0xa8, 0x90, 0xdd, - 0x60, 0x81, 0x24, 0x51, 0x84, 0xb3, 0xb1, 0xb0, 0xf5, 0x43, 0x9e, 0x45, 0x45, 0x45, 0xc1, 0x06, - 0xf5, 0x49, 0x94, 0xa9, 0x9a, 0x6d, 0x9e, 0x2b, 0x30, 0x9b, 0x6c, 0xc9, 0xca, 0xaf, 0xde, 0xee, - 0xff, 0x4a, 0xe4, 0x8e, 0xe8, 0x1f, 0xbe, 0x17, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0x38, 0x60, - 0x58, 0xa6, 0xc5, 0x10, 0x00, 0x00, + // 1402 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1c, 0x35, + 0x14, 0x5f, 0xcf, 0x26, 0x6d, 0xe2, 0x40, 0x95, 0xb8, 0x21, 0xdd, 0x6c, 0xa3, 0x49, 0x18, 0xa9, + 0x52, 0x55, 0x75, 0x77, 0xa0, 0x05, 0x09, 0x5a, 0x3e, 0x94, 0x34, 0x69, 0x92, 0x2a, 0x6d, 0xc3, + 0x24, 0xe2, 0x50, 0x10, 0x23, 0xef, 0x8c, 0x77, 0x63, 0x98, 0x1d, 0xbb, 0x63, 0xef, 0x26, 0x51, + 0x15, 0xa9, 0xea, 0x5f, 0x80, 0x5a, 0xb8, 0x22, 0x6e, 0x20, 0x90, 0x7a, 0xe2, 0x50, 0x51, 0x0e, + 0xbd, 0x51, 0x09, 0x84, 0x22, 0x90, 0x50, 0xb9, 0xd1, 0x0d, 0x07, 0x10, 0x97, 0x9e, 0xe1, 0x82, + 0xec, 0xfd, 0xfe, 0xc8, 0x76, 0xd9, 0xe6, 0x66, 0xfb, 0x7d, 0xf8, 0xe7, 0xdf, 0x7b, 0x7e, 0xcf, + 0x33, 0xf0, 0x8d, 0x22, 0x11, 0x69, 0xca, 0x6c, 0xe1, 0x6d, 0x90, 0x3c, 0xb6, 0x8b, 0x94, 0x6c, + 0x0a, 0x7b, 0x43, 0x4a, 0xee, 0x06, 0x0c, 0xfb, 0x19, 0x1c, 0xe0, 0xd0, 0x23, 0x91, 0xcd, 0x0b, + 0x99, 0x80, 0x7a, 0xae, 0x57, 0x10, 0x92, 0xe5, 0x31, 0xa7, 0x69, 0x1e, 0x31, 0xc9, 0xd0, 0x89, + 0xb2, 0x75, 0xba, 0x6c, 0x9d, 0xd6, 0xd6, 0xe9, 0x36, 0xeb, 0x64, 0x2a, 0x47, 0xe5, 0x46, 0x21, + 0x93, 0xf6, 0x58, 0xde, 0xce, 0xb1, 0x1c, 0xb3, 0xb5, 0x75, 0xa6, 0x90, 0xd5, 0x33, 0x3d, 0xd1, + 0xa3, 0xb2, 0xd7, 0xe4, 0x54, 0x8e, 0xb1, 0x5c, 0x40, 0x6c, 0xcc, 0xa9, 0x8d, 0xc3, 0x90, 0x49, + 0x2c, 0x29, 0x0b, 0x45, 0x45, 0x7a, 0xb2, 0x19, 0xb1, 0xcf, 0x84, 0x9b, 0xa7, 0x92, 0xe6, 0xb4, + 0x92, 0x2d, 0xb7, 0x39, 0xa9, 0x6a, 0x1e, 0x6f, 0xd6, 0x64, 0xbc, 0xd1, 0xcd, 0x64, 0xb3, 0xb0, + 0xd1, 0x6e, 0xaa, 0x85, 0x13, 0x1c, 0x50, 0x1f, 0x4b, 0x52, 0x91, 0x5a, 0x2d, 0x52, 0x22, 0x48, + 0x58, 0x6c, 0x71, 0x3e, 0xd3, 0xce, 0xaa, 0xdb, 0xac, 0x31, 0xdd, 0x89, 0xf7, 0x46, 0x10, 0x2f, + 0xb5, 0x2a, 0x44, 0xb2, 0x80, 0x03, 0x77, 0x83, 0x09, 0xe9, 0xfa, 0xa1, 0x70, 0x69, 0x98, 0x65, + 0x36, 0xcb, 0x7c, 0x48, 0x3c, 0x59, 0xb6, 0xb0, 0x16, 0xe0, 0xd8, 0x22, 0x91, 0xf3, 0xa1, 0x58, + 0x0e, 0xb3, 0xcc, 0x21, 0xd7, 0x0b, 0x44, 0x48, 0x34, 0x05, 0x87, 0x43, 0x9c, 0x27, 0x82, 0x63, + 0x8f, 0x24, 0xc0, 0x0c, 0x38, 0x39, 0xec, 0xd4, 0x17, 0x10, 0x82, 0x03, 0x6a, 0x92, 0x30, 0xb4, + 0x40, 0x8f, 0x2d, 0x1f, 0xa2, 0x46, 0x37, 0x82, 0xb3, 0x50, 0x10, 0x74, 0x05, 0x0e, 0x55, 0x77, + 0xd5, 0x6e, 0x46, 0xce, 0x9c, 0x4d, 0xb7, 0x06, 0xbf, 0x03, 0xc2, 0xf4, 0x62, 0xc0, 0x32, 0x38, + 0x58, 0xe3, 0xc4, 0x5b, 0xdf, 0xe6, 0xc4, 0x39, 0xec, 0x97, 0xfd, 0x5a, 0x9f, 0x1b, 0x70, 0x7c, + 0x91, 0xc8, 0x35, 0xe2, 0x15, 0x22, 0x2a, 0xb7, 0x2f, 0xb0, 0x30, 0x4b, 0x73, 0x0e, 0xb9, 0xfe, + 0x14, 0xc0, 0x2b, 0x70, 0x02, 0x07, 0x81, 0xdb, 0x96, 0x62, 0x22, 0x11, 0xd7, 0xa0, 0xc6, 0x5b, + 0x40, 0x2d, 0xe4, 0xb9, 0xdc, 0x5e, 0x8a, 0x39, 0xe3, 0x38, 0x08, 0x96, 0xa4, 0xe4, 0x2b, 0x8d, + 0x36, 0xa8, 0x00, 0x8f, 0xb5, 0x7b, 0x72, 0x03, 0x2a, 0x64, 0x62, 0x40, 0xbb, 0x3b, 0x9f, 0xee, + 0x29, 0xc1, 0xd3, 0x4b, 0xeb, 0xeb, 0xab, 0xca, 0xf5, 0x5c, 0x65, 0x61, 0x85, 0x0a, 0xb9, 0x14, + 0x73, 0x5e, 0xd8, 0x68, 0xdd, 0x52, 0x09, 0xe6, 0xa6, 0xe1, 0xd1, 0x46, 0x6b, 0xd7, 0xdb, 0x60, + 0xd4, 0x23, 0x68, 0xe8, 0xc1, 0x7d, 0x10, 0xdf, 0xbd, 0x0f, 0x8c, 0x4b, 0x03, 0x43, 0xc6, 0x68, + 0xdc, 0xfa, 0x17, 0x74, 0xa2, 0x48, 0x70, 0xf4, 0x22, 0x7c, 0x0e, 0x73, 0xee, 0x66, 0x69, 0x44, + 0x36, 0x71, 0x10, 0x24, 0xc0, 0x4c, 0xfc, 0xe4, 0xb0, 0x33, 0x82, 0x39, 0xbf, 0x58, 0x59, 0x42, + 0xd3, 0x70, 0x24, 0xc3, 0xa4, 0xeb, 0x93, 0x2c, 0x09, 0x85, 0x8a, 0xaf, 0xd2, 0x80, 0x19, 0x26, + 0xe7, 0xcb, 0x2b, 0xe8, 0x04, 0x3c, 0xe2, 0xab, 0xab, 0xe3, 0x13, 0x49, 0x3c, 0x95, 0x98, 0x89, + 0xb8, 0xd6, 0x79, 0x5e, 0xad, 0xce, 0x57, 0x17, 0x95, 0x1a, 0xe6, 0xd4, 0x55, 0x09, 0x56, 0x51, + 0x1b, 0x28, 0xab, 0x61, 0x4e, 0x57, 0x6b, 0x8b, 0x2a, 0x68, 0x15, 0x15, 0xe2, 0x27, 0x06, 0xb5, + 0x46, 0x7d, 0x01, 0x9d, 0x85, 0x13, 0x8d, 0x78, 0x5d, 0x4e, 0x22, 0x37, 0x62, 0x05, 0x49, 0x12, + 0x87, 0xb4, 0xea, 0xd1, 0x06, 0xe4, 0xab, 0x24, 0x72, 0x94, 0xc8, 0x2a, 0xc2, 0xf1, 0x4e, 0xac, + 0xa2, 0x0f, 0xe0, 0x58, 0x1b, 0xff, 0x65, 0x06, 0xe6, 0x5e, 0xfe, 0xf6, 0xaf, 0x07, 0x71, 0x78, + 0x1b, 0x1c, 0xb6, 0x06, 0xa3, 0x78, 0xe2, 0xa6, 0xa1, 0xa6, 0xc3, 0xb7, 0xc1, 0x21, 0x6b, 0x20, + 0x32, 0x46, 0x81, 0x9a, 0x0d, 0xde, 0x06, 0xc6, 0xe8, 0x60, 0x75, 0x34, 0x04, 0x9c, 0xd1, 0xd6, + 0x08, 0x59, 0xab, 0x70, 0x4a, 0xa5, 0x3f, 0x5b, 0x9b, 0x2d, 0x48, 0x76, 0xb9, 0x56, 0x58, 0x9c, + 0x42, 0x40, 0xc4, 0xd3, 0xf3, 0xb3, 0xd3, 0x85, 0xba, 0x03, 0xba, 0xb9, 0x14, 0x1c, 0xe5, 0x61, + 0x42, 0x85, 0x02, 0x17, 0x24, 0xab, 0x57, 0x32, 0x37, 0x52, 0x62, 0x1d, 0xb9, 0xf6, 0xbb, 0xd6, + 0x5c, 0xf4, 0xd2, 0xf3, 0x6c, 0xad, 0xd9, 0xad, 0xbe, 0xba, 0x13, 0x3e, 0x13, 0xb3, 0x4d, 0x3e, + 0xf5, 0x8e, 0x97, 0x06, 0x86, 0xc0, 0xa8, 0xa1, 0x50, 0x99, 0xf3, 0x24, 0x20, 0x92, 0x74, 0x04, + 0xd6, 0xd7, 0x51, 0xd1, 0xdb, 0x70, 0x6a, 0x9f, 0x93, 0xb8, 0x5a, 0x37, 0xae, 0x75, 0x27, 0x3b, + 0x02, 0xbb, 0xa2, 0xb8, 0x7a, 0xa5, 0x3b, 0x28, 0xc1, 0x3b, 0x32, 0xec, 0x40, 0x53, 0xe5, 0xc6, + 0x6c, 0x11, 0xd3, 0x00, 0x67, 0x02, 0x32, 0xbb, 0xba, 0x3c, 0x4f, 0xb2, 0x34, 0xa4, 0xba, 0xe2, + 0xf6, 0x17, 0xb5, 0x4f, 0x00, 0x9c, 0xee, 0xea, 0x54, 0x70, 0x74, 0x1d, 0x4e, 0xe2, 0xaa, 0xd8, + 0x55, 0xf7, 0xc4, 0xaf, 0x2b, 0xe8, 0x9c, 0x1c, 0x39, 0x63, 0x75, 0xac, 0x20, 0x57, 0x75, 0xdd, + 0x76, 0x48, 0x56, 0x15, 0xc5, 0xb9, 0xb1, 0xaf, 0x76, 0x8e, 0x34, 0x5b, 0x3b, 0xc7, 0x6a, 0x7e, + 0x67, 0x39, 0x6d, 0xd8, 0xd6, 0xfa, 0x0d, 0xc0, 0x89, 0x59, 0x21, 0x68, 0x2e, 0x6c, 0xc2, 0xd3, + 0x5f, 0xb8, 0xde, 0x87, 0x2d, 0xfb, 0x56, 0xaa, 0x68, 0x9f, 0xa0, 0x55, 0x51, 0xa8, 0x43, 0x42, + 0x36, 0x1c, 0xf7, 0x22, 0x82, 0x25, 0x71, 0x69, 0xd6, 0x0d, 0x99, 0x74, 0xc9, 0x16, 0x15, 0x52, + 0xe8, 0xd2, 0x3a, 0xe4, 0x8c, 0x95, 0x65, 0xcb, 0xd9, 0x2b, 0x4c, 0x2e, 0x68, 0x81, 0x35, 0x09, + 0x8f, 0x75, 0x3c, 0x9a, 0xe0, 0x67, 0xee, 0x8d, 0xc2, 0xe1, 0x0b, 0xfa, 0xf1, 0x31, 0xbb, 0xba, + 0x8c, 0xbe, 0x36, 0x20, 0xac, 0xf7, 0x28, 0xf4, 0x5a, 0x8f, 0x55, 0xba, 0xad, 0x3b, 0x26, 0x5f, + 0xef, 0xc3, 0xb2, 0xdc, 0x10, 0xad, 0x2f, 0xc0, 0xc3, 0x7b, 0x06, 0x28, 0x7d, 0x9f, 0x70, 0xb2, + 0xaf, 0x6e, 0x79, 0x29, 0xa1, 0xaa, 0x34, 0xc9, 0x13, 0xb1, 0x91, 0xca, 0x60, 0x41, 0xbd, 0x54, + 0x9e, 0x85, 0x54, 0xb2, 0xe8, 0xf4, 0x4c, 0xab, 0x58, 0x48, 0x1c, 0xfa, 0x38, 0xf2, 0xeb, 0x1a, + 0x45, 0x22, 0x52, 0x94, 0xa5, 0x78, 0xc4, 0xb6, 0xb6, 0x53, 0x11, 0xc1, 0xfe, 0xad, 0x5f, 0xfe, + 0xb8, 0x63, 0x2c, 0xa2, 0x85, 0xca, 0xb3, 0xcb, 0xae, 0x45, 0x51, 0xd8, 0x37, 0x6a, 0xe3, 0x9d, + 0xf6, 0x67, 0x5a, 0x45, 0xbc, 0x63, 0xe7, 0x88, 0x4c, 0xf9, 0xa1, 0x48, 0xa9, 0x16, 0x8c, 0xee, + 0x1a, 0xfa, 0x61, 0xd0, 0xdc, 0x47, 0xd0, 0xf9, 0xde, 0x8f, 0xde, 0xd6, 0xa4, 0x93, 0xfd, 0x1b, + 0x0b, 0x6e, 0x7d, 0x56, 0x65, 0xee, 0xa2, 0xa6, 0x66, 0x13, 0x63, 0xde, 0x91, 0x33, 0x2d, 0xe8, + 0x95, 0xad, 0x4b, 0x56, 0x1f, 0x6c, 0xe5, 0x88, 0x74, 0x45, 0x05, 0x9f, 0xeb, 0x69, 0x80, 0xe7, + 0xc0, 0x29, 0xf4, 0xab, 0x01, 0x27, 0xf7, 0x2d, 0xd8, 0xe8, 0xc2, 0xff, 0xc8, 0x99, 0xfd, 0xba, + 0x48, 0xf2, 0xd9, 0x9d, 0x08, 0x6e, 0xdd, 0xad, 0x12, 0x79, 0xb9, 0x73, 0x0a, 0x16, 0x04, 0xe9, + 0x96, 0x7f, 0x65, 0x71, 0x13, 0x9d, 0x9b, 0x11, 0x95, 0x44, 0xf3, 0xb9, 0x86, 0xde, 0xe9, 0x3b, + 0xfb, 0xf6, 0x6b, 0x66, 0xe8, 0x1f, 0x03, 0x1e, 0xef, 0x52, 0xde, 0xd1, 0x42, 0x8f, 0xac, 0x74, + 0xef, 0x5b, 0xc9, 0x83, 0x70, 0x23, 0xb8, 0xf5, 0x63, 0x95, 0xde, 0x95, 0x83, 0xa2, 0xb7, 0x96, + 0xad, 0xd1, 0x29, 0x7e, 0xe0, 0xec, 0xda, 0x37, 0xba, 0xb5, 0xde, 0x1d, 0xf4, 0xb7, 0x01, 0x8f, + 0x77, 0x69, 0x68, 0x3d, 0x93, 0xdf, 0xbd, 0xd3, 0x26, 0x2f, 0x1e, 0x84, 0x1b, 0xc1, 0xad, 0xef, + 0xaa, 0xec, 0x5f, 0x7b, 0xd6, 0xfa, 0xda, 0x14, 0x82, 0xea, 0x75, 0xaf, 0xc7, 0x62, 0x1d, 0x39, + 0x7d, 0xc7, 0xa2, 0xa5, 0xe7, 0xdb, 0xb5, 0xae, 0x8d, 0x7e, 0x30, 0xe0, 0xd1, 0x0e, 0xcd, 0x0c, + 0xbd, 0xd9, 0x23, 0x3d, 0x9d, 0x7b, 0x7c, 0xf2, 0xad, 0x67, 0x31, 0x17, 0xdc, 0xfa, 0x46, 0x31, + 0xfa, 0xee, 0x41, 0xe5, 0x73, 0x8d, 0xcc, 0x7a, 0xdd, 0x58, 0xb7, 0xae, 0x1e, 0x1c, 0x9b, 0xfa, + 0x10, 0xe7, 0xc0, 0xa9, 0xe4, 0x39, 0xf5, 0x69, 0xf4, 0xf3, 0x7d, 0x70, 0xba, 0xb7, 0xd3, 0x97, + 0x5f, 0x2a, 0xb7, 0x7e, 0x4a, 0x18, 0xa3, 0x60, 0xee, 0x53, 0xb0, 0xfb, 0xd8, 0x8c, 0x3d, 0x7a, + 0x6c, 0xc6, 0x9e, 0x3c, 0x36, 0xc1, 0xcd, 0x92, 0x09, 0xbe, 0x2c, 0x99, 0xe0, 0x61, 0xc9, 0x04, + 0xbb, 0x25, 0x13, 0xfc, 0x5e, 0x32, 0xc1, 0x9f, 0x25, 0x33, 0xf6, 0xa4, 0x64, 0x82, 0x8f, 0xf7, + 0xcc, 0xd8, 0x83, 0x3d, 0x13, 0xec, 0xee, 0x99, 0xb1, 0x47, 0x7b, 0x66, 0xec, 0xda, 0x7b, 0x39, + 0xc6, 0x3f, 0xca, 0xa5, 0x8b, 0x2c, 0x90, 0x24, 0x8a, 0x70, 0xba, 0x20, 0x6c, 0x3d, 0xc8, 0xb2, + 0x28, 0xaf, 0x28, 0x28, 0x52, 0x9f, 0x44, 0xa9, 0xaa, 0xd8, 0xe6, 0x99, 0x1c, 0xb3, 0xc9, 0x96, + 0xac, 0x7c, 0xb2, 0x77, 0xff, 0xa5, 0x92, 0x39, 0xa4, 0xbf, 0xda, 0xcf, 0xfe, 0x17, 0x00, 0x00, + 0xff, 0xff, 0xde, 0x10, 0xb3, 0xd0, 0x82, 0x11, 0x00, 0x00, } func (this *GetDnsInfoRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/http_loadbalancer/types.pb.go b/pbgo/extschema/schema/views/http_loadbalancer/types.pb.go index 0bcfbbf57..4695a9a0c 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/types.pb.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/types.pb.go @@ -11,14 +11,15 @@ import ( types "github.com/gogo/protobuf/types" golang_proto "github.com/golang/protobuf/proto" schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" - app_type "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" - rate_limiter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" route "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/route" - service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" - rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" virtual_host_dns_info "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host_dns_info" io "io" @@ -41,57 +42,6 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package -// action -// -// x-displayName: "Action" -// Action that should be taken when client identifier matches the rule -type ClientSrcRuleAction int32 - -const ( - // x-displayName: "Skip WAF" - SKIP_PROCESSING_WAF ClientSrcRuleAction = 0 - // x-displayName: "Skip Bot Defense" - SKIP_PROCESSING_BOT ClientSrcRuleAction = 1 - // x-displayName: "Skip Malicious Users" - SKIP_PROCESSING_MUM ClientSrcRuleAction = 2 - // x-displayName: "Skip IP Reputation" - SKIP_PROCESSING_IP_REPUTATION ClientSrcRuleAction = 3 - // x-displayName: "Skip API Protection" - SKIP_PROCESSING_API_PROTECTION ClientSrcRuleAction = 4 - // x-displayName: "Skip Open API Specification Validation" - SKIP_PROCESSING_OAS_VALIDATION ClientSrcRuleAction = 5 - // x-displayName: "Skip DDoS Protection" - SKIP_PROCESSING_DDOS_PROTECTION ClientSrcRuleAction = 6 - // x-displayName: "Skip Threat Intelligence" - SKIP_PROCESSING_THREAT_INTELLIGENCE ClientSrcRuleAction = 7 -) - -var ClientSrcRuleAction_name = map[int32]string{ - 0: "SKIP_PROCESSING_WAF", - 1: "SKIP_PROCESSING_BOT", - 2: "SKIP_PROCESSING_MUM", - 3: "SKIP_PROCESSING_IP_REPUTATION", - 4: "SKIP_PROCESSING_API_PROTECTION", - 5: "SKIP_PROCESSING_OAS_VALIDATION", - 6: "SKIP_PROCESSING_DDOS_PROTECTION", - 7: "SKIP_PROCESSING_THREAT_INTELLIGENCE", -} - -var ClientSrcRuleAction_value = map[string]int32{ - "SKIP_PROCESSING_WAF": 0, - "SKIP_PROCESSING_BOT": 1, - "SKIP_PROCESSING_MUM": 2, - "SKIP_PROCESSING_IP_REPUTATION": 3, - "SKIP_PROCESSING_API_PROTECTION": 4, - "SKIP_PROCESSING_OAS_VALIDATION": 5, - "SKIP_PROCESSING_DDOS_PROTECTION": 6, - "SKIP_PROCESSING_THREAT_INTELLIGENCE": 7, -} - -func (ClientSrcRuleAction) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{0} -} - // MobileIdentifier // // x-displayName: "Mobile Identifier" @@ -115,7 +65,7 @@ var MobileIdentifier_value = map[string]int32{ } func (MobileIdentifier) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{1} + return fileDescriptor_6478b2bb990a4a3e, []int{0} } // URLSchemeType @@ -155,7 +105,7 @@ var URLScheme_value = map[string]int32{ } func (URLScheme) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{2} + return fileDescriptor_6478b2bb990a4a3e, []int{1} } // ShapeBotDefenseRegion @@ -202,7 +152,7 @@ var ShapeBotDefenseRegion_value = map[string]int32{ } func (ShapeBotDefenseRegion) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{3} + return fileDescriptor_6478b2bb990a4a3e, []int{2} } // JavaScriptLocation @@ -236,890 +186,8 @@ var JavaScriptLocation_value = map[string]int32{ } func (JavaScriptLocation) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{4} -} - -// InlineRateLimiter -// -// x-displayName: "InlineRateLimiter" -type InlineRateLimiter struct { - // threshold - // - // x-displayName: "Threshold" - // x-example: "1" - // x-required - // The total number of allowed requests for 1 unit (e.g. SECOND/MINUTE/HOUR etc.) of the specified period. - Threshold uint32 `protobuf:"varint,1,opt,name=threshold,proto3" json:"threshold,omitempty"` - // rate - // - // x-displayName: "Duration" - // x-required - // Unit for the period per which the rate limit is applied. - Unit rate_limiter.RateLimitPeriodUnit `protobuf:"varint,2,opt,name=unit,proto3,enum=ves.io.schema.rate_limiter.RateLimitPeriodUnit" json:"unit,omitempty"` - // Count by - // - // x-displayName: "Count By" - // x-required - // Determines the criteria that will be used to aggregate and count requests. - // - // Types that are valid to be assigned to CountByChoice: - // *InlineRateLimiter_UseHttpLbUserId - // *InlineRateLimiter_RefUserId - CountByChoice isInlineRateLimiter_CountByChoice `protobuf_oneof:"count_by_choice"` -} - -func (m *InlineRateLimiter) Reset() { *m = InlineRateLimiter{} } -func (*InlineRateLimiter) ProtoMessage() {} -func (*InlineRateLimiter) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{0} -} -func (m *InlineRateLimiter) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *InlineRateLimiter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *InlineRateLimiter) XXX_Merge(src proto.Message) { - xxx_messageInfo_InlineRateLimiter.Merge(m, src) -} -func (m *InlineRateLimiter) XXX_Size() int { - return m.Size() -} -func (m *InlineRateLimiter) XXX_DiscardUnknown() { - xxx_messageInfo_InlineRateLimiter.DiscardUnknown(m) -} - -var xxx_messageInfo_InlineRateLimiter proto.InternalMessageInfo - -type isInlineRateLimiter_CountByChoice interface { - isInlineRateLimiter_CountByChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type InlineRateLimiter_UseHttpLbUserId struct { - UseHttpLbUserId *schema.Empty `protobuf:"bytes,4,opt,name=use_http_lb_user_id,json=useHttpLbUserId,proto3,oneof" json:"use_http_lb_user_id,omitempty"` -} -type InlineRateLimiter_RefUserId struct { - RefUserId *views.ObjectRefType `protobuf:"bytes,5,opt,name=ref_user_id,json=refUserId,proto3,oneof" json:"ref_user_id,omitempty"` -} - -func (*InlineRateLimiter_UseHttpLbUserId) isInlineRateLimiter_CountByChoice() {} -func (*InlineRateLimiter_RefUserId) isInlineRateLimiter_CountByChoice() {} - -func (m *InlineRateLimiter) GetCountByChoice() isInlineRateLimiter_CountByChoice { - if m != nil { - return m.CountByChoice - } - return nil -} - -func (m *InlineRateLimiter) GetThreshold() uint32 { - if m != nil { - return m.Threshold - } - return 0 -} - -func (m *InlineRateLimiter) GetUnit() rate_limiter.RateLimitPeriodUnit { - if m != nil { - return m.Unit - } - return rate_limiter.SECOND -} - -func (m *InlineRateLimiter) GetUseHttpLbUserId() *schema.Empty { - if x, ok := m.GetCountByChoice().(*InlineRateLimiter_UseHttpLbUserId); ok { - return x.UseHttpLbUserId - } - return nil -} - -func (m *InlineRateLimiter) GetRefUserId() *views.ObjectRefType { - if x, ok := m.GetCountByChoice().(*InlineRateLimiter_RefUserId); ok { - return x.RefUserId - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*InlineRateLimiter) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*InlineRateLimiter_UseHttpLbUserId)(nil), - (*InlineRateLimiter_RefUserId)(nil), - } -} - -// ServerUrlRule -// -// x-displayName: "Server URLs and API Groups" -type ServerUrlRule struct { - // domain choices - // - // x-displayName: "Domain" - // x-required - // Choose if the rule will apply for all domains or a specific one. - // - // Types that are valid to be assigned to DomainChoice: - // *ServerUrlRule_AnyDomain - // *ServerUrlRule_SpecificDomain - DomainChoice isServerUrlRule_DomainChoice `protobuf_oneof:"domain_choice"` - // base path - // - // x-displayName: "Base Path" - // x-example: "/" - // x-required - // Prefix of the request path. - BasePath string `protobuf:"bytes,4,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` - // api_group - // - // x-displayName: "API Group" - // x-example: "oas-all-operations" - // API groups derived from API Definition swaggers. - // For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers. - // Custom groups can be created if user tags paths or operations with "x-volterra-api-group" extensions inside swaggers. - ApiGroup string `protobuf:"bytes,10,opt,name=api_group,json=apiGroup,proto3" json:"api_group,omitempty"` - // request_matcher - // - // x-displayName: "Request" - // Conditions related to the request, such as query parameters, headers, etc. - RequestMatcher *policy.RequestMatcher `protobuf:"bytes,11,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` - // client_matcher - // - // x-displayName: "Clients" - // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. - ClientMatcher *policy.ClientMatcher `protobuf:"bytes,9,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` - // Rate limit values - // - // x-displayName: "Rate Limiter Values" - // x-required - // This defines the values of the rate limiter. - // - // Types that are valid to be assigned to RateLimiterChoice: - // *ServerUrlRule_InlineRateLimiter - // *ServerUrlRule_RefRateLimiter - RateLimiterChoice isServerUrlRule_RateLimiterChoice `protobuf_oneof:"rate_limiter_choice"` -} - -func (m *ServerUrlRule) Reset() { *m = ServerUrlRule{} } -func (*ServerUrlRule) ProtoMessage() {} -func (*ServerUrlRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{1} -} -func (m *ServerUrlRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ServerUrlRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *ServerUrlRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_ServerUrlRule.Merge(m, src) -} -func (m *ServerUrlRule) XXX_Size() int { - return m.Size() -} -func (m *ServerUrlRule) XXX_DiscardUnknown() { - xxx_messageInfo_ServerUrlRule.DiscardUnknown(m) -} - -var xxx_messageInfo_ServerUrlRule proto.InternalMessageInfo - -type isServerUrlRule_DomainChoice interface { - isServerUrlRule_DomainChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isServerUrlRule_RateLimiterChoice interface { - isServerUrlRule_RateLimiterChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type ServerUrlRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,2,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` -} -type ServerUrlRule_SpecificDomain struct { - SpecificDomain string `protobuf:"bytes,3,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` -} -type ServerUrlRule_InlineRateLimiter struct { - InlineRateLimiter *InlineRateLimiter `protobuf:"bytes,6,opt,name=inline_rate_limiter,json=inlineRateLimiter,proto3,oneof" json:"inline_rate_limiter,omitempty"` -} -type ServerUrlRule_RefRateLimiter struct { - RefRateLimiter *views.ObjectRefType `protobuf:"bytes,7,opt,name=ref_rate_limiter,json=refRateLimiter,proto3,oneof" json:"ref_rate_limiter,omitempty"` -} - -func (*ServerUrlRule_AnyDomain) isServerUrlRule_DomainChoice() {} -func (*ServerUrlRule_SpecificDomain) isServerUrlRule_DomainChoice() {} -func (*ServerUrlRule_InlineRateLimiter) isServerUrlRule_RateLimiterChoice() {} -func (*ServerUrlRule_RefRateLimiter) isServerUrlRule_RateLimiterChoice() {} - -func (m *ServerUrlRule) GetDomainChoice() isServerUrlRule_DomainChoice { - if m != nil { - return m.DomainChoice - } - return nil -} -func (m *ServerUrlRule) GetRateLimiterChoice() isServerUrlRule_RateLimiterChoice { - if m != nil { - return m.RateLimiterChoice - } - return nil -} - -func (m *ServerUrlRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainChoice().(*ServerUrlRule_AnyDomain); ok { - return x.AnyDomain - } - return nil -} - -func (m *ServerUrlRule) GetSpecificDomain() string { - if x, ok := m.GetDomainChoice().(*ServerUrlRule_SpecificDomain); ok { - return x.SpecificDomain - } - return "" -} - -func (m *ServerUrlRule) GetBasePath() string { - if m != nil { - return m.BasePath - } - return "" -} - -func (m *ServerUrlRule) GetApiGroup() string { - if m != nil { - return m.ApiGroup - } - return "" -} - -func (m *ServerUrlRule) GetRequestMatcher() *policy.RequestMatcher { - if m != nil { - return m.RequestMatcher - } - return nil -} - -func (m *ServerUrlRule) GetClientMatcher() *policy.ClientMatcher { - if m != nil { - return m.ClientMatcher - } - return nil -} - -func (m *ServerUrlRule) GetInlineRateLimiter() *InlineRateLimiter { - if x, ok := m.GetRateLimiterChoice().(*ServerUrlRule_InlineRateLimiter); ok { - return x.InlineRateLimiter - } - return nil -} - -func (m *ServerUrlRule) GetRefRateLimiter() *views.ObjectRefType { - if x, ok := m.GetRateLimiterChoice().(*ServerUrlRule_RefRateLimiter); ok { - return x.RefRateLimiter - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ServerUrlRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ServerUrlRule_AnyDomain)(nil), - (*ServerUrlRule_SpecificDomain)(nil), - (*ServerUrlRule_InlineRateLimiter)(nil), - (*ServerUrlRule_RefRateLimiter)(nil), - } -} - -// ApiEndpointRule -// -// x-displayName: "ApiEndpointRule" -type ApiEndpointRule struct { - // domain choices - // - // x-displayName: "Domain" - // x-required - // Choose if the rule will apply for all domains or a specific one. - // - // Types that are valid to be assigned to DomainChoice: - // *ApiEndpointRule_AnyDomain - // *ApiEndpointRule_SpecificDomain - DomainChoice isApiEndpointRule_DomainChoice `protobuf_oneof:"domain_choice"` - // base path - // - // x-example: "/" - // x-displayName: "Base Path" - // The request base path. - BasePath string `protobuf:"bytes,4,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` - // api endpoint path - // - // x-displayName: "API Endpoint" - // x-example: "value" - // x-required - // The endpoint (path) of the request. - ApiEndpointPath string `protobuf:"bytes,5,opt,name=api_endpoint_path,json=apiEndpointPath,proto3" json:"api_endpoint_path,omitempty"` - // method - // - // x-displayName: "HTTP Methods" - // The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request. - // The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values. - ApiEndpointMethod *policy.HttpMethodMatcherType `protobuf:"bytes,6,opt,name=api_endpoint_method,json=apiEndpointMethod,proto3" json:"api_endpoint_method,omitempty"` - // request_matcher - // - // x-displayName: "Request" - // Conditions related to the request, such as query parameters, headers, etc. - RequestMatcher *policy.RequestMatcher `protobuf:"bytes,10,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` - // client_matcher - // - // x-displayName: "Clients" - // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. - ClientMatcher *policy.ClientMatcher `protobuf:"bytes,11,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` - // Rate limit values - // - // x-displayName: "Rate Limiter Values" - // x-required - // This defines the values of the rate limiter. - // - // Types that are valid to be assigned to RateLimiterChoice: - // *ApiEndpointRule_InlineRateLimiter - // *ApiEndpointRule_RefRateLimiter - RateLimiterChoice isApiEndpointRule_RateLimiterChoice `protobuf_oneof:"rate_limiter_choice"` -} - -func (m *ApiEndpointRule) Reset() { *m = ApiEndpointRule{} } -func (*ApiEndpointRule) ProtoMessage() {} -func (*ApiEndpointRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{2} -} -func (m *ApiEndpointRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ApiEndpointRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *ApiEndpointRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_ApiEndpointRule.Merge(m, src) -} -func (m *ApiEndpointRule) XXX_Size() int { - return m.Size() -} -func (m *ApiEndpointRule) XXX_DiscardUnknown() { - xxx_messageInfo_ApiEndpointRule.DiscardUnknown(m) -} - -var xxx_messageInfo_ApiEndpointRule proto.InternalMessageInfo - -type isApiEndpointRule_DomainChoice interface { - isApiEndpointRule_DomainChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isApiEndpointRule_RateLimiterChoice interface { - isApiEndpointRule_RateLimiterChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type ApiEndpointRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,2,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` -} -type ApiEndpointRule_SpecificDomain struct { - SpecificDomain string `protobuf:"bytes,3,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` -} -type ApiEndpointRule_InlineRateLimiter struct { - InlineRateLimiter *InlineRateLimiter `protobuf:"bytes,8,opt,name=inline_rate_limiter,json=inlineRateLimiter,proto3,oneof" json:"inline_rate_limiter,omitempty"` -} -type ApiEndpointRule_RefRateLimiter struct { - RefRateLimiter *views.ObjectRefType `protobuf:"bytes,9,opt,name=ref_rate_limiter,json=refRateLimiter,proto3,oneof" json:"ref_rate_limiter,omitempty"` -} - -func (*ApiEndpointRule_AnyDomain) isApiEndpointRule_DomainChoice() {} -func (*ApiEndpointRule_SpecificDomain) isApiEndpointRule_DomainChoice() {} -func (*ApiEndpointRule_InlineRateLimiter) isApiEndpointRule_RateLimiterChoice() {} -func (*ApiEndpointRule_RefRateLimiter) isApiEndpointRule_RateLimiterChoice() {} - -func (m *ApiEndpointRule) GetDomainChoice() isApiEndpointRule_DomainChoice { - if m != nil { - return m.DomainChoice - } - return nil -} -func (m *ApiEndpointRule) GetRateLimiterChoice() isApiEndpointRule_RateLimiterChoice { - if m != nil { - return m.RateLimiterChoice - } - return nil -} - -func (m *ApiEndpointRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainChoice().(*ApiEndpointRule_AnyDomain); ok { - return x.AnyDomain - } - return nil -} - -func (m *ApiEndpointRule) GetSpecificDomain() string { - if x, ok := m.GetDomainChoice().(*ApiEndpointRule_SpecificDomain); ok { - return x.SpecificDomain - } - return "" -} - -func (m *ApiEndpointRule) GetBasePath() string { - if m != nil { - return m.BasePath - } - return "" -} - -func (m *ApiEndpointRule) GetApiEndpointPath() string { - if m != nil { - return m.ApiEndpointPath - } - return "" -} - -func (m *ApiEndpointRule) GetApiEndpointMethod() *policy.HttpMethodMatcherType { - if m != nil { - return m.ApiEndpointMethod - } - return nil -} - -func (m *ApiEndpointRule) GetRequestMatcher() *policy.RequestMatcher { - if m != nil { - return m.RequestMatcher - } - return nil -} - -func (m *ApiEndpointRule) GetClientMatcher() *policy.ClientMatcher { - if m != nil { - return m.ClientMatcher - } - return nil -} - -func (m *ApiEndpointRule) GetInlineRateLimiter() *InlineRateLimiter { - if x, ok := m.GetRateLimiterChoice().(*ApiEndpointRule_InlineRateLimiter); ok { - return x.InlineRateLimiter - } - return nil -} - -func (m *ApiEndpointRule) GetRefRateLimiter() *views.ObjectRefType { - if x, ok := m.GetRateLimiterChoice().(*ApiEndpointRule_RefRateLimiter); ok { - return x.RefRateLimiter - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ApiEndpointRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ApiEndpointRule_AnyDomain)(nil), - (*ApiEndpointRule_SpecificDomain)(nil), - (*ApiEndpointRule_InlineRateLimiter)(nil), - (*ApiEndpointRule_RefRateLimiter)(nil), - } -} - -// BypassRateLimitingRule -// -// x-displayName: "Bypass Rate Limiting Rule" -type BypassRateLimitingRule struct { - // domain choices - // - // x-displayName: "Domain" - // x-required - // Choose if the rule will apply for all domains or a specific one. - // - // Types that are valid to be assigned to DomainChoice: - // *BypassRateLimitingRule_AnyDomain - // *BypassRateLimitingRule_SpecificDomain - DomainChoice isBypassRateLimitingRule_DomainChoice `protobuf_oneof:"domain_choice"` - // TYpe - // - // x-displayName: "Type" - // x-required - // - // Types that are valid to be assigned to DestinationType: - // *BypassRateLimitingRule_AnyUrl - // *BypassRateLimitingRule_BasePath - // *BypassRateLimitingRule_ApiEndpoint - // *BypassRateLimitingRule_ApiGroups - DestinationType isBypassRateLimitingRule_DestinationType `protobuf_oneof:"destination_type"` - // request_matcher - // - // x-displayName: "Request" - // Conditions related to the request, such as query parameters, headers, etc. - RequestMatcher *policy.RequestMatcher `protobuf:"bytes,9,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` - // client_matcher - // - // x-displayName: "Clients" - // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. - ClientMatcher *policy.ClientMatcher `protobuf:"bytes,10,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` -} - -func (m *BypassRateLimitingRule) Reset() { *m = BypassRateLimitingRule{} } -func (*BypassRateLimitingRule) ProtoMessage() {} -func (*BypassRateLimitingRule) Descriptor() ([]byte, []int) { return fileDescriptor_6478b2bb990a4a3e, []int{3} } -func (m *BypassRateLimitingRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BypassRateLimitingRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *BypassRateLimitingRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_BypassRateLimitingRule.Merge(m, src) -} -func (m *BypassRateLimitingRule) XXX_Size() int { - return m.Size() -} -func (m *BypassRateLimitingRule) XXX_DiscardUnknown() { - xxx_messageInfo_BypassRateLimitingRule.DiscardUnknown(m) -} - -var xxx_messageInfo_BypassRateLimitingRule proto.InternalMessageInfo - -type isBypassRateLimitingRule_DomainChoice interface { - isBypassRateLimitingRule_DomainChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isBypassRateLimitingRule_DestinationType interface { - isBypassRateLimitingRule_DestinationType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type BypassRateLimitingRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,2,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` -} -type BypassRateLimitingRule_SpecificDomain struct { - SpecificDomain string `protobuf:"bytes,3,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` -} -type BypassRateLimitingRule_AnyUrl struct { - AnyUrl *schema.Empty `protobuf:"bytes,5,opt,name=any_url,json=anyUrl,proto3,oneof" json:"any_url,omitempty"` -} -type BypassRateLimitingRule_BasePath struct { - BasePath string `protobuf:"bytes,6,opt,name=base_path,json=basePath,proto3,oneof" json:"base_path,omitempty"` -} -type BypassRateLimitingRule_ApiEndpoint struct { - ApiEndpoint *ApiEndpointDetails `protobuf:"bytes,7,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof" json:"api_endpoint,omitempty"` -} -type BypassRateLimitingRule_ApiGroups struct { - ApiGroups *APIGroups `protobuf:"bytes,8,opt,name=api_groups,json=apiGroups,proto3,oneof" json:"api_groups,omitempty"` -} - -func (*BypassRateLimitingRule_AnyDomain) isBypassRateLimitingRule_DomainChoice() {} -func (*BypassRateLimitingRule_SpecificDomain) isBypassRateLimitingRule_DomainChoice() {} -func (*BypassRateLimitingRule_AnyUrl) isBypassRateLimitingRule_DestinationType() {} -func (*BypassRateLimitingRule_BasePath) isBypassRateLimitingRule_DestinationType() {} -func (*BypassRateLimitingRule_ApiEndpoint) isBypassRateLimitingRule_DestinationType() {} -func (*BypassRateLimitingRule_ApiGroups) isBypassRateLimitingRule_DestinationType() {} - -func (m *BypassRateLimitingRule) GetDomainChoice() isBypassRateLimitingRule_DomainChoice { - if m != nil { - return m.DomainChoice - } - return nil -} -func (m *BypassRateLimitingRule) GetDestinationType() isBypassRateLimitingRule_DestinationType { - if m != nil { - return m.DestinationType - } - return nil -} - -func (m *BypassRateLimitingRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainChoice().(*BypassRateLimitingRule_AnyDomain); ok { - return x.AnyDomain - } - return nil -} - -func (m *BypassRateLimitingRule) GetSpecificDomain() string { - if x, ok := m.GetDomainChoice().(*BypassRateLimitingRule_SpecificDomain); ok { - return x.SpecificDomain - } - return "" -} - -func (m *BypassRateLimitingRule) GetAnyUrl() *schema.Empty { - if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_AnyUrl); ok { - return x.AnyUrl - } - return nil -} - -func (m *BypassRateLimitingRule) GetBasePath() string { - if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_BasePath); ok { - return x.BasePath - } - return "" -} - -func (m *BypassRateLimitingRule) GetApiEndpoint() *ApiEndpointDetails { - if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_ApiEndpoint); ok { - return x.ApiEndpoint - } - return nil -} - -func (m *BypassRateLimitingRule) GetApiGroups() *APIGroups { - if x, ok := m.GetDestinationType().(*BypassRateLimitingRule_ApiGroups); ok { - return x.ApiGroups - } - return nil -} - -func (m *BypassRateLimitingRule) GetRequestMatcher() *policy.RequestMatcher { - if m != nil { - return m.RequestMatcher - } - return nil -} - -func (m *BypassRateLimitingRule) GetClientMatcher() *policy.ClientMatcher { - if m != nil { - return m.ClientMatcher - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*BypassRateLimitingRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*BypassRateLimitingRule_AnyDomain)(nil), - (*BypassRateLimitingRule_SpecificDomain)(nil), - (*BypassRateLimitingRule_AnyUrl)(nil), - (*BypassRateLimitingRule_BasePath)(nil), - (*BypassRateLimitingRule_ApiEndpoint)(nil), - (*BypassRateLimitingRule_ApiGroups)(nil), - } -} - -// bypass_rate_limiting_policy -// -// x-displayName: "Bypass Rate Limiting" -// This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting. -type BypassRateLimitingRules struct { - // bypass_rate_limiting_policy - // - // x-displayName: "Bypass Rate Limiting" - // This category defines rules per URL or API group. If request matches any of these rules, skip Rate Limiting. - BypassRateLimitingRules []*BypassRateLimitingRule `protobuf:"bytes,7,rep,name=bypass_rate_limiting_rules,json=bypassRateLimitingRules,proto3" json:"bypass_rate_limiting_rules,omitempty"` -} - -func (m *BypassRateLimitingRules) Reset() { *m = BypassRateLimitingRules{} } -func (*BypassRateLimitingRules) ProtoMessage() {} -func (*BypassRateLimitingRules) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{4} -} -func (m *BypassRateLimitingRules) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BypassRateLimitingRules) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *BypassRateLimitingRules) XXX_Merge(src proto.Message) { - xxx_messageInfo_BypassRateLimitingRules.Merge(m, src) -} -func (m *BypassRateLimitingRules) XXX_Size() int { - return m.Size() -} -func (m *BypassRateLimitingRules) XXX_DiscardUnknown() { - xxx_messageInfo_BypassRateLimitingRules.DiscardUnknown(m) -} - -var xxx_messageInfo_BypassRateLimitingRules proto.InternalMessageInfo - -func (m *BypassRateLimitingRules) GetBypassRateLimitingRules() []*BypassRateLimitingRule { - if m != nil { - return m.BypassRateLimitingRules - } - return nil -} - -// APIRateLimit -// -// x-displayName: "API Rate Limit" -type APIRateLimit struct { - // Skip Rate Limiting Rules - // - // x-displayName: "Skip Rate Limiting Rules" - // x-required - // Allowlist ensures that the defined set remains unaffected by rate limits, even when the limits are reached. - // - // Types that are valid to be assigned to IpAllowedListChoice: - // *APIRateLimit_NoIpAllowedList - // *APIRateLimit_IpAllowedList - // *APIRateLimit_CustomIpAllowedList - // *APIRateLimit_BypassRateLimitingRules - IpAllowedListChoice isAPIRateLimit_IpAllowedListChoice `protobuf_oneof:"ip_allowed_list_choice"` - // server_url_policy - // - // x-displayName: "Server URLs and API Groups" - // Set of rules for entire domain or base path that contain multiple endpoints. - // Order matters as it uses first match policy. - // For matching also specific endpoints you can use the API endpoint rules set bellow. - ServerUrlRules []*ServerUrlRule `protobuf:"bytes,5,rep,name=server_url_rules,json=serverUrlRules,proto3" json:"server_url_rules,omitempty"` - // api_endpoint_policy - // - // x-displayName: "API Endpoints" - // Sets of rules for a specific endpoints. - // Order matters as it uses first match policy. - // For creating rule that contain a whole domain or group of endpoints, please use the server URL rules above. - ApiEndpointRules []*ApiEndpointRule `protobuf:"bytes,6,rep,name=api_endpoint_rules,json=apiEndpointRules,proto3" json:"api_endpoint_rules,omitempty"` -} - -func (m *APIRateLimit) Reset() { *m = APIRateLimit{} } -func (*APIRateLimit) ProtoMessage() {} -func (*APIRateLimit) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{5} -} -func (m *APIRateLimit) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *APIRateLimit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *APIRateLimit) XXX_Merge(src proto.Message) { - xxx_messageInfo_APIRateLimit.Merge(m, src) -} -func (m *APIRateLimit) XXX_Size() int { - return m.Size() -} -func (m *APIRateLimit) XXX_DiscardUnknown() { - xxx_messageInfo_APIRateLimit.DiscardUnknown(m) -} - -var xxx_messageInfo_APIRateLimit proto.InternalMessageInfo - -type isAPIRateLimit_IpAllowedListChoice interface { - isAPIRateLimit_IpAllowedListChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type APIRateLimit_NoIpAllowedList struct { - NoIpAllowedList *schema.Empty `protobuf:"bytes,2,opt,name=no_ip_allowed_list,json=noIpAllowedList,proto3,oneof" json:"no_ip_allowed_list,omitempty"` -} -type APIRateLimit_IpAllowedList struct { - IpAllowedList *views.PrefixStringListType `protobuf:"bytes,3,opt,name=ip_allowed_list,json=ipAllowedList,proto3,oneof" json:"ip_allowed_list,omitempty"` -} -type APIRateLimit_CustomIpAllowedList struct { - CustomIpAllowedList *CustomIpAllowedList `protobuf:"bytes,4,opt,name=custom_ip_allowed_list,json=customIpAllowedList,proto3,oneof" json:"custom_ip_allowed_list,omitempty"` -} -type APIRateLimit_BypassRateLimitingRules struct { - BypassRateLimitingRules *BypassRateLimitingRules `protobuf:"bytes,7,opt,name=bypass_rate_limiting_rules,json=bypassRateLimitingRules,proto3,oneof" json:"bypass_rate_limiting_rules,omitempty"` -} - -func (*APIRateLimit_NoIpAllowedList) isAPIRateLimit_IpAllowedListChoice() {} -func (*APIRateLimit_IpAllowedList) isAPIRateLimit_IpAllowedListChoice() {} -func (*APIRateLimit_CustomIpAllowedList) isAPIRateLimit_IpAllowedListChoice() {} -func (*APIRateLimit_BypassRateLimitingRules) isAPIRateLimit_IpAllowedListChoice() {} - -func (m *APIRateLimit) GetIpAllowedListChoice() isAPIRateLimit_IpAllowedListChoice { - if m != nil { - return m.IpAllowedListChoice - } - return nil -} - -func (m *APIRateLimit) GetNoIpAllowedList() *schema.Empty { - if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_NoIpAllowedList); ok { - return x.NoIpAllowedList - } - return nil -} - -func (m *APIRateLimit) GetIpAllowedList() *views.PrefixStringListType { - if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_IpAllowedList); ok { - return x.IpAllowedList - } - return nil -} - -func (m *APIRateLimit) GetCustomIpAllowedList() *CustomIpAllowedList { - if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_CustomIpAllowedList); ok { - return x.CustomIpAllowedList - } - return nil -} - -func (m *APIRateLimit) GetBypassRateLimitingRules() *BypassRateLimitingRules { - if x, ok := m.GetIpAllowedListChoice().(*APIRateLimit_BypassRateLimitingRules); ok { - return x.BypassRateLimitingRules - } - return nil -} - -func (m *APIRateLimit) GetServerUrlRules() []*ServerUrlRule { - if m != nil { - return m.ServerUrlRules - } - return nil -} - -func (m *APIRateLimit) GetApiEndpointRules() []*ApiEndpointRule { - if m != nil { - return m.ApiEndpointRules - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*APIRateLimit) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*APIRateLimit_NoIpAllowedList)(nil), - (*APIRateLimit_IpAllowedList)(nil), - (*APIRateLimit_CustomIpAllowedList)(nil), - (*APIRateLimit_BypassRateLimitingRules)(nil), - } -} // BYOC HTTPS Choice // @@ -1195,7 +263,7 @@ type ProxyTypeHttps struct { // // x-displayName: "Header Transformation Configuration" // Header transformation options for response headers to the client - HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,19,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` + HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,19,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` // Deprecated: Do not use. // Connection Idle Timeout // // x-displayName: "Connection Idle Timeout" @@ -1215,7 +283,7 @@ type ProxyTypeHttps struct { func (m *ProxyTypeHttps) Reset() { *m = ProxyTypeHttps{} } func (*ProxyTypeHttps) ProtoMessage() {} func (*ProxyTypeHttps) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{6} + return fileDescriptor_6478b2bb990a4a3e, []int{0} } func (m *ProxyTypeHttps) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1450,6 +518,7 @@ func (m *ProxyTypeHttps) GetDefaultLoadbalancer() *schema.Empty { return nil } +// Deprecated: Do not use. func (m *ProxyTypeHttps) GetHeaderTransformationType() *schema.HeaderTransformationType { if m != nil { return m.HeaderTransformationType @@ -1516,7 +585,7 @@ type ProxyTypeHttp struct { func (m *ProxyTypeHttp) Reset() { *m = ProxyTypeHttp{} } func (*ProxyTypeHttp) ProtoMessage() {} func (*ProxyTypeHttp) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{7} + return fileDescriptor_6478b2bb990a4a3e, []int{1} } func (m *ProxyTypeHttp) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1669,7 +738,7 @@ type ProxyTypeHttpsAutoCerts struct { // // x-displayName: "Header Transformation" // Header transformation options for response headers to the client - HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,22,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` + HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,22,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` // Deprecated: Do not use. // Connection Idle Timeout // // x-displayName: "Connection Idle Timeout" @@ -1689,7 +758,7 @@ type ProxyTypeHttpsAutoCerts struct { func (m *ProxyTypeHttpsAutoCerts) Reset() { *m = ProxyTypeHttpsAutoCerts{} } func (*ProxyTypeHttpsAutoCerts) ProtoMessage() {} func (*ProxyTypeHttpsAutoCerts) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{8} + return fileDescriptor_6478b2bb990a4a3e, []int{2} } func (m *ProxyTypeHttpsAutoCerts) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1932,6 +1001,7 @@ func (m *ProxyTypeHttpsAutoCerts) GetDefaultLoadbalancer() *schema.Empty { return nil } +// Deprecated: Do not use. func (m *ProxyTypeHttpsAutoCerts) GetHeaderTransformationType() *schema.HeaderTransformationType { if m != nil { return m.HeaderTransformationType @@ -1989,7 +1059,7 @@ type HashPolicyListType struct { func (m *HashPolicyListType) Reset() { *m = HashPolicyListType{} } func (*HashPolicyListType) ProtoMessage() {} func (*HashPolicyListType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{9} + return fileDescriptor_6478b2bb990a4a3e, []int{3} } func (m *HashPolicyListType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2047,7 +1117,7 @@ type MirrorPolicyType struct { func (m *MirrorPolicyType) Reset() { *m = MirrorPolicyType{} } func (*MirrorPolicyType) ProtoMessage() {} func (*MirrorPolicyType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{10} + return fileDescriptor_6478b2bb990a4a3e, []int{4} } func (m *MirrorPolicyType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2283,7 +1353,7 @@ type RouteSimpleAdvancedOptions struct { func (m *RouteSimpleAdvancedOptions) Reset() { *m = RouteSimpleAdvancedOptions{} } func (*RouteSimpleAdvancedOptions) ProtoMessage() {} func (*RouteSimpleAdvancedOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{11} + return fileDescriptor_6478b2bb990a4a3e, []int{5} } func (m *RouteSimpleAdvancedOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2824,7 +1894,7 @@ type RouteTypeSimpleWithDefaultOriginPool struct { func (m *RouteTypeSimpleWithDefaultOriginPool) Reset() { *m = RouteTypeSimpleWithDefaultOriginPool{} } func (*RouteTypeSimpleWithDefaultOriginPool) ProtoMessage() {} func (*RouteTypeSimpleWithDefaultOriginPool) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{12} + return fileDescriptor_6478b2bb990a4a3e, []int{6} } func (m *RouteTypeSimpleWithDefaultOriginPool) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2978,7 +2048,7 @@ type RouteTypeSimple struct { func (m *RouteTypeSimple) Reset() { *m = RouteTypeSimple{} } func (*RouteTypeSimple) ProtoMessage() {} func (*RouteTypeSimple) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{13} + return fileDescriptor_6478b2bb990a4a3e, []int{7} } func (m *RouteTypeSimple) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3140,7 +2210,7 @@ type RouteTypeRedirect struct { func (m *RouteTypeRedirect) Reset() { *m = RouteTypeRedirect{} } func (*RouteTypeRedirect) ProtoMessage() {} func (*RouteTypeRedirect) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{14} + return fileDescriptor_6478b2bb990a4a3e, []int{8} } func (m *RouteTypeRedirect) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3237,7 +2307,7 @@ type RouteTypeDirectResponse struct { func (m *RouteTypeDirectResponse) Reset() { *m = RouteTypeDirectResponse{} } func (*RouteTypeDirectResponse) ProtoMessage() {} func (*RouteTypeDirectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{15} + return fileDescriptor_6478b2bb990a4a3e, []int{9} } func (m *RouteTypeDirectResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3312,7 +2382,7 @@ type RouteTypeCustomRoute struct { func (m *RouteTypeCustomRoute) Reset() { *m = RouteTypeCustomRoute{} } func (*RouteTypeCustomRoute) ProtoMessage() {} func (*RouteTypeCustomRoute) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{16} + return fileDescriptor_6478b2bb990a4a3e, []int{10} } func (m *RouteTypeCustomRoute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3366,7 +2436,7 @@ type RouteType struct { func (m *RouteType) Reset() { *m = RouteType{} } func (*RouteType) ProtoMessage() {} func (*RouteType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{17} + return fileDescriptor_6478b2bb990a4a3e, []int{11} } func (m *RouteType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3583,7 +2653,7 @@ type AdvancedOptionsType struct { func (m *AdvancedOptionsType) Reset() { *m = AdvancedOptionsType{} } func (*AdvancedOptionsType) ProtoMessage() {} func (*AdvancedOptionsType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{18} + return fileDescriptor_6478b2bb990a4a3e, []int{12} } func (m *AdvancedOptionsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3785,873 +2855,6 @@ func (*AdvancedOptionsType) XXX_OneofWrappers() []interface{} { } } -// enable challenge -// -// x-displayName: "Enable Malicious User Challenge" -// Configure auto mitigation i.e risk based challenges for malicious users -type EnableChallenge struct { - // Malicious user mitigation choice - // - // x-displayName: "Malicious User Mitigation Settings" - // Settings that specify the actions to be taken when malicious users are determined to be at different threat levels. - // User's activity is monitored and continuously analyzed for malicious behavior. From this analysis, a threat-level - // is assigned to each user. The settings defined in malicious user mitigation specify what mitigation actions to take - // for user determined to be at different threat levels. - // - // Types that are valid to be assigned to MaliciousUserMitigationChoice: - // *EnableChallenge_DefaultMitigationSettings - // *EnableChallenge_MaliciousUserMitigation - MaliciousUserMitigationChoice isEnableChallenge_MaliciousUserMitigationChoice `protobuf_oneof:"malicious_user_mitigation_choice"` - // JavaScript challenge parameters choice - // - // x-displayName: "JavaScript Challenge Parameters" - // Select Default or Custom Parameters - // - // Types that are valid to be assigned to JsChallengeParametersChoice: - // *EnableChallenge_DefaultJsChallengeParameters - // *EnableChallenge_JsChallengeParameters - JsChallengeParametersChoice isEnableChallenge_JsChallengeParametersChoice `protobuf_oneof:"js_challenge_parameters_choice"` - // Captcha challenge parameters choice - // - // x-displayName: "Captcha Challenge Parameters" - // Select Default or Custom Parameters - // - // Types that are valid to be assigned to CaptchaChallengeParametersChoice: - // *EnableChallenge_DefaultCaptchaChallengeParameters - // *EnableChallenge_CaptchaChallengeParameters - CaptchaChallengeParametersChoice isEnableChallenge_CaptchaChallengeParametersChoice `protobuf_oneof:"captcha_challenge_parameters_choice"` -} - -func (m *EnableChallenge) Reset() { *m = EnableChallenge{} } -func (*EnableChallenge) ProtoMessage() {} -func (*EnableChallenge) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{19} -} -func (m *EnableChallenge) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *EnableChallenge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *EnableChallenge) XXX_Merge(src proto.Message) { - xxx_messageInfo_EnableChallenge.Merge(m, src) -} -func (m *EnableChallenge) XXX_Size() int { - return m.Size() -} -func (m *EnableChallenge) XXX_DiscardUnknown() { - xxx_messageInfo_EnableChallenge.DiscardUnknown(m) -} - -var xxx_messageInfo_EnableChallenge proto.InternalMessageInfo - -type isEnableChallenge_MaliciousUserMitigationChoice interface { - isEnableChallenge_MaliciousUserMitigationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isEnableChallenge_JsChallengeParametersChoice interface { - isEnableChallenge_JsChallengeParametersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isEnableChallenge_CaptchaChallengeParametersChoice interface { - isEnableChallenge_CaptchaChallengeParametersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type EnableChallenge_DefaultMitigationSettings struct { - DefaultMitigationSettings *schema.Empty `protobuf:"bytes,2,opt,name=default_mitigation_settings,json=defaultMitigationSettings,proto3,oneof" json:"default_mitigation_settings,omitempty"` -} -type EnableChallenge_MaliciousUserMitigation struct { - MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,3,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3,oneof" json:"malicious_user_mitigation,omitempty"` -} -type EnableChallenge_DefaultJsChallengeParameters struct { - DefaultJsChallengeParameters *schema.Empty `protobuf:"bytes,5,opt,name=default_js_challenge_parameters,json=defaultJsChallengeParameters,proto3,oneof" json:"default_js_challenge_parameters,omitempty"` -} -type EnableChallenge_JsChallengeParameters struct { - JsChallengeParameters *virtual_host.JavascriptChallengeType `protobuf:"bytes,6,opt,name=js_challenge_parameters,json=jsChallengeParameters,proto3,oneof" json:"js_challenge_parameters,omitempty"` -} -type EnableChallenge_DefaultCaptchaChallengeParameters struct { - DefaultCaptchaChallengeParameters *schema.Empty `protobuf:"bytes,8,opt,name=default_captcha_challenge_parameters,json=defaultCaptchaChallengeParameters,proto3,oneof" json:"default_captcha_challenge_parameters,omitempty"` -} -type EnableChallenge_CaptchaChallengeParameters struct { - CaptchaChallengeParameters *virtual_host.CaptchaChallengeType `protobuf:"bytes,9,opt,name=captcha_challenge_parameters,json=captchaChallengeParameters,proto3,oneof" json:"captcha_challenge_parameters,omitempty"` -} - -func (*EnableChallenge_DefaultMitigationSettings) isEnableChallenge_MaliciousUserMitigationChoice() {} -func (*EnableChallenge_MaliciousUserMitigation) isEnableChallenge_MaliciousUserMitigationChoice() {} -func (*EnableChallenge_DefaultJsChallengeParameters) isEnableChallenge_JsChallengeParametersChoice() { -} -func (*EnableChallenge_JsChallengeParameters) isEnableChallenge_JsChallengeParametersChoice() {} -func (*EnableChallenge_DefaultCaptchaChallengeParameters) isEnableChallenge_CaptchaChallengeParametersChoice() { -} -func (*EnableChallenge_CaptchaChallengeParameters) isEnableChallenge_CaptchaChallengeParametersChoice() { -} - -func (m *EnableChallenge) GetMaliciousUserMitigationChoice() isEnableChallenge_MaliciousUserMitigationChoice { - if m != nil { - return m.MaliciousUserMitigationChoice - } - return nil -} -func (m *EnableChallenge) GetJsChallengeParametersChoice() isEnableChallenge_JsChallengeParametersChoice { - if m != nil { - return m.JsChallengeParametersChoice - } - return nil -} -func (m *EnableChallenge) GetCaptchaChallengeParametersChoice() isEnableChallenge_CaptchaChallengeParametersChoice { - if m != nil { - return m.CaptchaChallengeParametersChoice - } - return nil -} - -func (m *EnableChallenge) GetDefaultMitigationSettings() *schema.Empty { - if x, ok := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_DefaultMitigationSettings); ok { - return x.DefaultMitigationSettings - } - return nil -} - -func (m *EnableChallenge) GetMaliciousUserMitigation() *views.ObjectRefType { - if x, ok := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_MaliciousUserMitigation); ok { - return x.MaliciousUserMitigation - } - return nil -} - -func (m *EnableChallenge) GetDefaultJsChallengeParameters() *schema.Empty { - if x, ok := m.GetJsChallengeParametersChoice().(*EnableChallenge_DefaultJsChallengeParameters); ok { - return x.DefaultJsChallengeParameters - } - return nil -} - -func (m *EnableChallenge) GetJsChallengeParameters() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetJsChallengeParametersChoice().(*EnableChallenge_JsChallengeParameters); ok { - return x.JsChallengeParameters - } - return nil -} - -func (m *EnableChallenge) GetDefaultCaptchaChallengeParameters() *schema.Empty { - if x, ok := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_DefaultCaptchaChallengeParameters); ok { - return x.DefaultCaptchaChallengeParameters - } - return nil -} - -func (m *EnableChallenge) GetCaptchaChallengeParameters() *virtual_host.CaptchaChallengeType { - if x, ok := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_CaptchaChallengeParameters); ok { - return x.CaptchaChallengeParameters - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*EnableChallenge) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*EnableChallenge_DefaultMitigationSettings)(nil), - (*EnableChallenge_MaliciousUserMitigation)(nil), - (*EnableChallenge_DefaultJsChallengeParameters)(nil), - (*EnableChallenge_JsChallengeParameters)(nil), - (*EnableChallenge_DefaultCaptchaChallengeParameters)(nil), - (*EnableChallenge_CaptchaChallengeParameters)(nil), - } -} - -// policy based challenge -// -// x-displayName: "Policy Based Challenge" -// Specifies the settings for policy rule based challenge -type PolicyBasedChallenge struct { - // JavaScript challenge parameters choice - // - // x-displayName: "JavaScript Challenge Parameters" - // Select Default or Custom Parameters - // - // Types that are valid to be assigned to JsChallengeParametersChoice: - // *PolicyBasedChallenge_DefaultJsChallengeParameters - // *PolicyBasedChallenge_JsChallengeParameters - JsChallengeParametersChoice isPolicyBasedChallenge_JsChallengeParametersChoice `protobuf_oneof:"js_challenge_parameters_choice"` - // Captcha challenge parameters choice - // - // x-displayName: "Captcha Challenge Parameters" - // Select Default or Custom Parameters - // - // Types that are valid to be assigned to CaptchaChallengeParametersChoice: - // *PolicyBasedChallenge_DefaultCaptchaChallengeParameters - // *PolicyBasedChallenge_CaptchaChallengeParameters - CaptchaChallengeParametersChoice isPolicyBasedChallenge_CaptchaChallengeParametersChoice `protobuf_oneof:"captcha_challenge_parameters_choice"` - // Temporary blocking parameters choice - // - // x-displayName: "Temporary Blocking Parameters" - // Select Default or Custom Parameters - // - // Types that are valid to be assigned to TemporaryBlockingParametersChoice: - // *PolicyBasedChallenge_DefaultTemporaryBlockingParameters - // *PolicyBasedChallenge_TemporaryUserBlocking - TemporaryBlockingParametersChoice isPolicyBasedChallenge_TemporaryBlockingParametersChoice `protobuf_oneof:"temporary_blocking_parameters_choice"` - // Malicious user mitigation choice - // - // x-displayName: "Malicious User Mitigation Settings" - // Settings that specify the actions to be taken when malicious users are determined to be at different threat levels. - // User's activity is monitored and continuously analyzed for malicious behavior. From this analysis, a threat-level - // is assigned to each user. The settings defined in malicious user mitigation specify what mitigation actions to take - // for user determined to be at different threat levels. - // - // Types that are valid to be assigned to MaliciousUserMitigationChoice: - // *PolicyBasedChallenge_DefaultMitigationSettings - // *PolicyBasedChallenge_MaliciousUserMitigation - MaliciousUserMitigationChoice isPolicyBasedChallenge_MaliciousUserMitigationChoice `protobuf_oneof:"malicious_user_mitigation_choice"` - // challenge choice - // - // x-displayName: "Challenge Type" - // x-required - // Selection of different types of challenge. - // Selecting javascript or captcha shallenge will enable it for all traffic served by this load balancer. - // Policy based challenge can be used to define policy rules to enable or bypass challenge. - // - // Types that are valid to be assigned to ChallengeChoice: - // *PolicyBasedChallenge_NoChallenge - // *PolicyBasedChallenge_AlwaysEnableJsChallenge - // *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge - ChallengeChoice isPolicyBasedChallenge_ChallengeChoice `protobuf_oneof:"challenge_choice"` - // Challenge rule list - // - // x-displayName: "Challenge rule list" - // list challenge rules to be used in policy based challenge - RuleList *ChallengeRuleList `protobuf:"bytes,18,opt,name=rule_list,json=ruleList,proto3" json:"rule_list,omitempty"` -} - -func (m *PolicyBasedChallenge) Reset() { *m = PolicyBasedChallenge{} } -func (*PolicyBasedChallenge) ProtoMessage() {} -func (*PolicyBasedChallenge) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{20} -} -func (m *PolicyBasedChallenge) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *PolicyBasedChallenge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *PolicyBasedChallenge) XXX_Merge(src proto.Message) { - xxx_messageInfo_PolicyBasedChallenge.Merge(m, src) -} -func (m *PolicyBasedChallenge) XXX_Size() int { - return m.Size() -} -func (m *PolicyBasedChallenge) XXX_DiscardUnknown() { - xxx_messageInfo_PolicyBasedChallenge.DiscardUnknown(m) -} - -var xxx_messageInfo_PolicyBasedChallenge proto.InternalMessageInfo - -type isPolicyBasedChallenge_JsChallengeParametersChoice interface { - isPolicyBasedChallenge_JsChallengeParametersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isPolicyBasedChallenge_CaptchaChallengeParametersChoice interface { - isPolicyBasedChallenge_CaptchaChallengeParametersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isPolicyBasedChallenge_TemporaryBlockingParametersChoice interface { - isPolicyBasedChallenge_TemporaryBlockingParametersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isPolicyBasedChallenge_MaliciousUserMitigationChoice interface { - isPolicyBasedChallenge_MaliciousUserMitigationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isPolicyBasedChallenge_ChallengeChoice interface { - isPolicyBasedChallenge_ChallengeChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type PolicyBasedChallenge_DefaultJsChallengeParameters struct { - DefaultJsChallengeParameters *schema.Empty `protobuf:"bytes,2,opt,name=default_js_challenge_parameters,json=defaultJsChallengeParameters,proto3,oneof" json:"default_js_challenge_parameters,omitempty"` -} -type PolicyBasedChallenge_JsChallengeParameters struct { - JsChallengeParameters *virtual_host.JavascriptChallengeType `protobuf:"bytes,3,opt,name=js_challenge_parameters,json=jsChallengeParameters,proto3,oneof" json:"js_challenge_parameters,omitempty"` -} -type PolicyBasedChallenge_DefaultCaptchaChallengeParameters struct { - DefaultCaptchaChallengeParameters *schema.Empty `protobuf:"bytes,5,opt,name=default_captcha_challenge_parameters,json=defaultCaptchaChallengeParameters,proto3,oneof" json:"default_captcha_challenge_parameters,omitempty"` -} -type PolicyBasedChallenge_CaptchaChallengeParameters struct { - CaptchaChallengeParameters *virtual_host.CaptchaChallengeType `protobuf:"bytes,6,opt,name=captcha_challenge_parameters,json=captchaChallengeParameters,proto3,oneof" json:"captcha_challenge_parameters,omitempty"` -} -type PolicyBasedChallenge_DefaultTemporaryBlockingParameters struct { - DefaultTemporaryBlockingParameters *schema.Empty `protobuf:"bytes,8,opt,name=default_temporary_blocking_parameters,json=defaultTemporaryBlockingParameters,proto3,oneof" json:"default_temporary_blocking_parameters,omitempty"` -} -type PolicyBasedChallenge_TemporaryUserBlocking struct { - TemporaryUserBlocking *virtual_host.TemporaryUserBlockingType `protobuf:"bytes,9,opt,name=temporary_user_blocking,json=temporaryUserBlocking,proto3,oneof" json:"temporary_user_blocking,omitempty"` -} -type PolicyBasedChallenge_DefaultMitigationSettings struct { - DefaultMitigationSettings *schema.Empty `protobuf:"bytes,11,opt,name=default_mitigation_settings,json=defaultMitigationSettings,proto3,oneof" json:"default_mitigation_settings,omitempty"` -} -type PolicyBasedChallenge_MaliciousUserMitigation struct { - MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,12,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3,oneof" json:"malicious_user_mitigation,omitempty"` -} -type PolicyBasedChallenge_NoChallenge struct { - NoChallenge *schema.Empty `protobuf:"bytes,14,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` -} -type PolicyBasedChallenge_AlwaysEnableJsChallenge struct { - AlwaysEnableJsChallenge *schema.Empty `protobuf:"bytes,15,opt,name=always_enable_js_challenge,json=alwaysEnableJsChallenge,proto3,oneof" json:"always_enable_js_challenge,omitempty"` -} -type PolicyBasedChallenge_AlwaysEnableCaptchaChallenge struct { - AlwaysEnableCaptchaChallenge *schema.Empty `protobuf:"bytes,16,opt,name=always_enable_captcha_challenge,json=alwaysEnableCaptchaChallenge,proto3,oneof" json:"always_enable_captcha_challenge,omitempty"` -} - -func (*PolicyBasedChallenge_DefaultJsChallengeParameters) isPolicyBasedChallenge_JsChallengeParametersChoice() { -} -func (*PolicyBasedChallenge_JsChallengeParameters) isPolicyBasedChallenge_JsChallengeParametersChoice() { -} -func (*PolicyBasedChallenge_DefaultCaptchaChallengeParameters) isPolicyBasedChallenge_CaptchaChallengeParametersChoice() { -} -func (*PolicyBasedChallenge_CaptchaChallengeParameters) isPolicyBasedChallenge_CaptchaChallengeParametersChoice() { -} -func (*PolicyBasedChallenge_DefaultTemporaryBlockingParameters) isPolicyBasedChallenge_TemporaryBlockingParametersChoice() { -} -func (*PolicyBasedChallenge_TemporaryUserBlocking) isPolicyBasedChallenge_TemporaryBlockingParametersChoice() { -} -func (*PolicyBasedChallenge_DefaultMitigationSettings) isPolicyBasedChallenge_MaliciousUserMitigationChoice() { -} -func (*PolicyBasedChallenge_MaliciousUserMitigation) isPolicyBasedChallenge_MaliciousUserMitigationChoice() { -} -func (*PolicyBasedChallenge_NoChallenge) isPolicyBasedChallenge_ChallengeChoice() {} -func (*PolicyBasedChallenge_AlwaysEnableJsChallenge) isPolicyBasedChallenge_ChallengeChoice() {} -func (*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) isPolicyBasedChallenge_ChallengeChoice() {} - -func (m *PolicyBasedChallenge) GetJsChallengeParametersChoice() isPolicyBasedChallenge_JsChallengeParametersChoice { - if m != nil { - return m.JsChallengeParametersChoice - } - return nil -} -func (m *PolicyBasedChallenge) GetCaptchaChallengeParametersChoice() isPolicyBasedChallenge_CaptchaChallengeParametersChoice { - if m != nil { - return m.CaptchaChallengeParametersChoice - } - return nil -} -func (m *PolicyBasedChallenge) GetTemporaryBlockingParametersChoice() isPolicyBasedChallenge_TemporaryBlockingParametersChoice { - if m != nil { - return m.TemporaryBlockingParametersChoice - } - return nil -} -func (m *PolicyBasedChallenge) GetMaliciousUserMitigationChoice() isPolicyBasedChallenge_MaliciousUserMitigationChoice { - if m != nil { - return m.MaliciousUserMitigationChoice - } - return nil -} -func (m *PolicyBasedChallenge) GetChallengeChoice() isPolicyBasedChallenge_ChallengeChoice { - if m != nil { - return m.ChallengeChoice - } - return nil -} - -func (m *PolicyBasedChallenge) GetDefaultJsChallengeParameters() *schema.Empty { - if x, ok := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_DefaultJsChallengeParameters); ok { - return x.DefaultJsChallengeParameters - } - return nil -} - -func (m *PolicyBasedChallenge) GetJsChallengeParameters() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_JsChallengeParameters); ok { - return x.JsChallengeParameters - } - return nil -} - -func (m *PolicyBasedChallenge) GetDefaultCaptchaChallengeParameters() *schema.Empty { - if x, ok := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_DefaultCaptchaChallengeParameters); ok { - return x.DefaultCaptchaChallengeParameters - } - return nil -} - -func (m *PolicyBasedChallenge) GetCaptchaChallengeParameters() *virtual_host.CaptchaChallengeType { - if x, ok := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_CaptchaChallengeParameters); ok { - return x.CaptchaChallengeParameters - } - return nil -} - -func (m *PolicyBasedChallenge) GetDefaultTemporaryBlockingParameters() *schema.Empty { - if x, ok := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_DefaultTemporaryBlockingParameters); ok { - return x.DefaultTemporaryBlockingParameters - } - return nil -} - -func (m *PolicyBasedChallenge) GetTemporaryUserBlocking() *virtual_host.TemporaryUserBlockingType { - if x, ok := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_TemporaryUserBlocking); ok { - return x.TemporaryUserBlocking - } - return nil -} - -func (m *PolicyBasedChallenge) GetDefaultMitigationSettings() *schema.Empty { - if x, ok := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_DefaultMitigationSettings); ok { - return x.DefaultMitigationSettings - } - return nil -} - -func (m *PolicyBasedChallenge) GetMaliciousUserMitigation() *views.ObjectRefType { - if x, ok := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_MaliciousUserMitigation); ok { - return x.MaliciousUserMitigation - } - return nil -} - -func (m *PolicyBasedChallenge) GetNoChallenge() *schema.Empty { - if x, ok := m.GetChallengeChoice().(*PolicyBasedChallenge_NoChallenge); ok { - return x.NoChallenge - } - return nil -} - -func (m *PolicyBasedChallenge) GetAlwaysEnableJsChallenge() *schema.Empty { - if x, ok := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableJsChallenge); ok { - return x.AlwaysEnableJsChallenge - } - return nil -} - -func (m *PolicyBasedChallenge) GetAlwaysEnableCaptchaChallenge() *schema.Empty { - if x, ok := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge); ok { - return x.AlwaysEnableCaptchaChallenge - } - return nil -} - -func (m *PolicyBasedChallenge) GetRuleList() *ChallengeRuleList { - if m != nil { - return m.RuleList - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*PolicyBasedChallenge) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*PolicyBasedChallenge_DefaultJsChallengeParameters)(nil), - (*PolicyBasedChallenge_JsChallengeParameters)(nil), - (*PolicyBasedChallenge_DefaultCaptchaChallengeParameters)(nil), - (*PolicyBasedChallenge_CaptchaChallengeParameters)(nil), - (*PolicyBasedChallenge_DefaultTemporaryBlockingParameters)(nil), - (*PolicyBasedChallenge_TemporaryUserBlocking)(nil), - (*PolicyBasedChallenge_DefaultMitigationSettings)(nil), - (*PolicyBasedChallenge_MaliciousUserMitigation)(nil), - (*PolicyBasedChallenge_NoChallenge)(nil), - (*PolicyBasedChallenge_AlwaysEnableJsChallenge)(nil), - (*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge)(nil), - } -} - -// Challenge Rule -// -// x-displayName: "Challenge Rule" -// Challenge rule -type ChallengeRule struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // spec - // - // x-displayName: "Challenge Rule Specification" - // x-required - // Specification for the rule including match predicates and actions. - Spec *service_policy_rule.ChallengeRuleSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` -} - -func (m *ChallengeRule) Reset() { *m = ChallengeRule{} } -func (*ChallengeRule) ProtoMessage() {} -func (*ChallengeRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{21} -} -func (m *ChallengeRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ChallengeRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *ChallengeRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_ChallengeRule.Merge(m, src) -} -func (m *ChallengeRule) XXX_Size() int { - return m.Size() -} -func (m *ChallengeRule) XXX_DiscardUnknown() { - xxx_messageInfo_ChallengeRule.DiscardUnknown(m) -} - -var xxx_messageInfo_ChallengeRule proto.InternalMessageInfo - -func (m *ChallengeRule) GetMetadata() *schema.MessageMetaType { - if m != nil { - return m.Metadata - } - return nil -} - -func (m *ChallengeRule) GetSpec() *service_policy_rule.ChallengeRuleSpec { - if m != nil { - return m.Spec - } - return nil -} - -// Challenge Rule List -// -// x-displayName: "Challenge Rule List" -// List of challenge rules to be used in policy based challenge -type ChallengeRuleList struct { - // Rules - // - // x-displayName: "Rules" - // Rules that specify the match conditions and challenge type to be launched. - // When a challenge type is selected to be always enabled, - // these rules can be used to disable challenge or launch a different challenge for requests that match the specified conditions - Rules []*ChallengeRule `protobuf:"bytes,2,rep,name=rules,proto3" json:"rules,omitempty"` -} - -func (m *ChallengeRuleList) Reset() { *m = ChallengeRuleList{} } -func (*ChallengeRuleList) ProtoMessage() {} -func (*ChallengeRuleList) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{22} -} -func (m *ChallengeRuleList) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ChallengeRuleList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *ChallengeRuleList) XXX_Merge(src proto.Message) { - xxx_messageInfo_ChallengeRuleList.Merge(m, src) -} -func (m *ChallengeRuleList) XXX_Size() int { - return m.Size() -} -func (m *ChallengeRuleList) XXX_DiscardUnknown() { - xxx_messageInfo_ChallengeRuleList.DiscardUnknown(m) -} - -var xxx_messageInfo_ChallengeRuleList proto.InternalMessageInfo - -func (m *ChallengeRuleList) GetRules() []*ChallengeRule { - if m != nil { - return m.Rules - } - return nil -} - -// HTTP Header -// -// x-displayName: "HTTP Header" -// Request header name and value pairs -type HttpHeaderMatcherList struct { - // headers - // - // x-displayName: "HTTP Headers" - // x-required - // List of HTTP header name and value pairs - Headers []*schema.HeaderMatcherType `protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty"` -} - -func (m *HttpHeaderMatcherList) Reset() { *m = HttpHeaderMatcherList{} } -func (*HttpHeaderMatcherList) ProtoMessage() {} -func (*HttpHeaderMatcherList) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{23} -} -func (m *HttpHeaderMatcherList) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *HttpHeaderMatcherList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *HttpHeaderMatcherList) XXX_Merge(src proto.Message) { - xxx_messageInfo_HttpHeaderMatcherList.Merge(m, src) -} -func (m *HttpHeaderMatcherList) XXX_Size() int { - return m.Size() -} -func (m *HttpHeaderMatcherList) XXX_DiscardUnknown() { - xxx_messageInfo_HttpHeaderMatcherList.DiscardUnknown(m) -} - -var xxx_messageInfo_HttpHeaderMatcherList proto.InternalMessageInfo - -func (m *HttpHeaderMatcherList) GetHeaders() []*schema.HeaderMatcherType { - if m != nil { - return m.Headers - } - return nil -} - -// SimpleClientSrcRule -// -// x-displayName: "Client Rule" -// Simple client source rule specifies the sources to be blocked or trusted (skip WAF) -type SimpleClientSrcRule struct { - // Client Identifier - // - // x-displayName: "Client Identifier" - // x-required - // Client identifier that should be used for the client rule - // - // Types that are valid to be assigned to ClientSourceChoice: - // *SimpleClientSrcRule_IpPrefix - // *SimpleClientSrcRule_AsNumber - // *SimpleClientSrcRule_HttpHeader - // *SimpleClientSrcRule_UserIdentifier - ClientSourceChoice isSimpleClientSrcRule_ClientSourceChoice `protobuf_oneof:"client_source_choice"` - // expiration timestamp - // - // x-displayName: "Expiration Timestamp" - // x-example: "2019-12-31:44:34.171543432Z" - // The expiration_timestamp is the RFC 3339 format timestamp at which the containing rule is considered to be logically expired. The rule continues to exist in - // the configuration but is not applied anymore. - ExpirationTimestamp *types.Timestamp `protobuf:"bytes,9,opt,name=expiration_timestamp,json=expirationTimestamp,proto3" json:"expiration_timestamp,omitempty"` - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,10,opt,name=metadata,proto3" json:"metadata,omitempty"` - // action - // - // x-displayName: "Action" - // Action that should be taken when client identifier matches the rule - // - // Types that are valid to be assigned to ActionChoice: - // *SimpleClientSrcRule_SkipProcessing - // *SimpleClientSrcRule_WafSkipProcessing - // *SimpleClientSrcRule_BotSkipProcessing - ActionChoice isSimpleClientSrcRule_ActionChoice `protobuf_oneof:"action_choice"` - // actions - // - // x-displayName: "Actions" - // Actions that should be taken when client identifier matches the rule - Actions []ClientSrcRuleAction `protobuf:"varint,16,rep,packed,name=actions,proto3,enum=ves.io.schema.views.http_loadbalancer.ClientSrcRuleAction" json:"actions,omitempty"` -} - -func (m *SimpleClientSrcRule) Reset() { *m = SimpleClientSrcRule{} } -func (*SimpleClientSrcRule) ProtoMessage() {} -func (*SimpleClientSrcRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{24} -} -func (m *SimpleClientSrcRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *SimpleClientSrcRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *SimpleClientSrcRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_SimpleClientSrcRule.Merge(m, src) -} -func (m *SimpleClientSrcRule) XXX_Size() int { - return m.Size() -} -func (m *SimpleClientSrcRule) XXX_DiscardUnknown() { - xxx_messageInfo_SimpleClientSrcRule.DiscardUnknown(m) -} - -var xxx_messageInfo_SimpleClientSrcRule proto.InternalMessageInfo - -type isSimpleClientSrcRule_ClientSourceChoice interface { - isSimpleClientSrcRule_ClientSourceChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isSimpleClientSrcRule_ActionChoice interface { - isSimpleClientSrcRule_ActionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type SimpleClientSrcRule_IpPrefix struct { - IpPrefix string `protobuf:"bytes,4,opt,name=ip_prefix,json=ipPrefix,proto3,oneof" json:"ip_prefix,omitempty"` -} -type SimpleClientSrcRule_AsNumber struct { - AsNumber uint32 `protobuf:"varint,5,opt,name=as_number,json=asNumber,proto3,oneof" json:"as_number,omitempty"` -} -type SimpleClientSrcRule_HttpHeader struct { - HttpHeader *HttpHeaderMatcherList `protobuf:"bytes,15,opt,name=http_header,json=httpHeader,proto3,oneof" json:"http_header,omitempty"` -} -type SimpleClientSrcRule_UserIdentifier struct { - UserIdentifier string `protobuf:"bytes,17,opt,name=user_identifier,json=userIdentifier,proto3,oneof" json:"user_identifier,omitempty"` -} -type SimpleClientSrcRule_SkipProcessing struct { - SkipProcessing *schema.Empty `protobuf:"bytes,12,opt,name=skip_processing,json=skipProcessing,proto3,oneof" json:"skip_processing,omitempty"` -} -type SimpleClientSrcRule_WafSkipProcessing struct { - WafSkipProcessing *schema.Empty `protobuf:"bytes,13,opt,name=waf_skip_processing,json=wafSkipProcessing,proto3,oneof" json:"waf_skip_processing,omitempty"` -} -type SimpleClientSrcRule_BotSkipProcessing struct { - BotSkipProcessing *schema.Empty `protobuf:"bytes,14,opt,name=bot_skip_processing,json=botSkipProcessing,proto3,oneof" json:"bot_skip_processing,omitempty"` -} - -func (*SimpleClientSrcRule_IpPrefix) isSimpleClientSrcRule_ClientSourceChoice() {} -func (*SimpleClientSrcRule_AsNumber) isSimpleClientSrcRule_ClientSourceChoice() {} -func (*SimpleClientSrcRule_HttpHeader) isSimpleClientSrcRule_ClientSourceChoice() {} -func (*SimpleClientSrcRule_UserIdentifier) isSimpleClientSrcRule_ClientSourceChoice() {} -func (*SimpleClientSrcRule_SkipProcessing) isSimpleClientSrcRule_ActionChoice() {} -func (*SimpleClientSrcRule_WafSkipProcessing) isSimpleClientSrcRule_ActionChoice() {} -func (*SimpleClientSrcRule_BotSkipProcessing) isSimpleClientSrcRule_ActionChoice() {} - -func (m *SimpleClientSrcRule) GetClientSourceChoice() isSimpleClientSrcRule_ClientSourceChoice { - if m != nil { - return m.ClientSourceChoice - } - return nil -} -func (m *SimpleClientSrcRule) GetActionChoice() isSimpleClientSrcRule_ActionChoice { - if m != nil { - return m.ActionChoice - } - return nil -} - -func (m *SimpleClientSrcRule) GetIpPrefix() string { - if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_IpPrefix); ok { - return x.IpPrefix - } - return "" -} - -func (m *SimpleClientSrcRule) GetAsNumber() uint32 { - if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_AsNumber); ok { - return x.AsNumber - } - return 0 -} - -func (m *SimpleClientSrcRule) GetHttpHeader() *HttpHeaderMatcherList { - if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_HttpHeader); ok { - return x.HttpHeader - } - return nil -} - -func (m *SimpleClientSrcRule) GetUserIdentifier() string { - if x, ok := m.GetClientSourceChoice().(*SimpleClientSrcRule_UserIdentifier); ok { - return x.UserIdentifier - } - return "" -} - -func (m *SimpleClientSrcRule) GetExpirationTimestamp() *types.Timestamp { - if m != nil { - return m.ExpirationTimestamp - } - return nil -} - -func (m *SimpleClientSrcRule) GetMetadata() *schema.MessageMetaType { - if m != nil { - return m.Metadata - } - return nil -} - -func (m *SimpleClientSrcRule) GetSkipProcessing() *schema.Empty { - if x, ok := m.GetActionChoice().(*SimpleClientSrcRule_SkipProcessing); ok { - return x.SkipProcessing - } - return nil -} - -func (m *SimpleClientSrcRule) GetWafSkipProcessing() *schema.Empty { - if x, ok := m.GetActionChoice().(*SimpleClientSrcRule_WafSkipProcessing); ok { - return x.WafSkipProcessing - } - return nil -} - -func (m *SimpleClientSrcRule) GetBotSkipProcessing() *schema.Empty { - if x, ok := m.GetActionChoice().(*SimpleClientSrcRule_BotSkipProcessing); ok { - return x.BotSkipProcessing - } - return nil -} - -func (m *SimpleClientSrcRule) GetActions() []ClientSrcRuleAction { - if m != nil { - return m.Actions - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*SimpleClientSrcRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*SimpleClientSrcRule_IpPrefix)(nil), - (*SimpleClientSrcRule_AsNumber)(nil), - (*SimpleClientSrcRule_HttpHeader)(nil), - (*SimpleClientSrcRule_UserIdentifier)(nil), - (*SimpleClientSrcRule_SkipProcessing)(nil), - (*SimpleClientSrcRule_WafSkipProcessing)(nil), - (*SimpleClientSrcRule_BotSkipProcessing)(nil), - } -} - // DDoSClientSource // // x-displayName: "DDoS Client Source Choice" @@ -4679,7 +2882,7 @@ type DDoSClientSource struct { func (m *DDoSClientSource) Reset() { *m = DDoSClientSource{} } func (*DDoSClientSource) ProtoMessage() {} func (*DDoSClientSource) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{25} + return fileDescriptor_6478b2bb990a4a3e, []int{13} } func (m *DDoSClientSource) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4725,497 +2928,6 @@ func (m *DDoSClientSource) GetTlsFingerprintMatcher() *policy.TlsFingerprintMatc return nil } -// API Protection Rule Action -// -// x-displayName: "API Protection Rule Action" -// The action to take if the input request matches the rule. -type APIProtectionRuleAction struct { - // action - // - // x-displayName: "Action" - // x-required - // The action to take when rule is matched. - // - // Types that are valid to be assigned to Action: - // *APIProtectionRuleAction_Allow - // *APIProtectionRuleAction_Deny - Action isAPIProtectionRuleAction_Action `protobuf_oneof:"action"` -} - -func (m *APIProtectionRuleAction) Reset() { *m = APIProtectionRuleAction{} } -func (*APIProtectionRuleAction) ProtoMessage() {} -func (*APIProtectionRuleAction) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{26} -} -func (m *APIProtectionRuleAction) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *APIProtectionRuleAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *APIProtectionRuleAction) XXX_Merge(src proto.Message) { - xxx_messageInfo_APIProtectionRuleAction.Merge(m, src) -} -func (m *APIProtectionRuleAction) XXX_Size() int { - return m.Size() -} -func (m *APIProtectionRuleAction) XXX_DiscardUnknown() { - xxx_messageInfo_APIProtectionRuleAction.DiscardUnknown(m) -} - -var xxx_messageInfo_APIProtectionRuleAction proto.InternalMessageInfo - -type isAPIProtectionRuleAction_Action interface { - isAPIProtectionRuleAction_Action() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type APIProtectionRuleAction_Allow struct { - Allow *schema.Empty `protobuf:"bytes,2,opt,name=allow,proto3,oneof" json:"allow,omitempty"` -} -type APIProtectionRuleAction_Deny struct { - Deny *schema.Empty `protobuf:"bytes,3,opt,name=deny,proto3,oneof" json:"deny,omitempty"` -} - -func (*APIProtectionRuleAction_Allow) isAPIProtectionRuleAction_Action() {} -func (*APIProtectionRuleAction_Deny) isAPIProtectionRuleAction_Action() {} - -func (m *APIProtectionRuleAction) GetAction() isAPIProtectionRuleAction_Action { - if m != nil { - return m.Action - } - return nil -} - -func (m *APIProtectionRuleAction) GetAllow() *schema.Empty { - if x, ok := m.GetAction().(*APIProtectionRuleAction_Allow); ok { - return x.Allow - } - return nil -} - -func (m *APIProtectionRuleAction) GetDeny() *schema.Empty { - if x, ok := m.GetAction().(*APIProtectionRuleAction_Deny); ok { - return x.Deny - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*APIProtectionRuleAction) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*APIProtectionRuleAction_Allow)(nil), - (*APIProtectionRuleAction_Deny)(nil), - } -} - -// API Endpoint Protection Rule -// -// x-displayName: "API Endpoint Protection Rule" -// API Protection Rule for a specific endpoint -type APIEndpointProtectionRule struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // action - // - // x-required - // x-displayName: "Rule Action" - // The action to take if the input request matches the rule. - Action *APIProtectionRuleAction `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` - // domain choices - // - // x-displayName: "Domain" - // x-required - // Choose if the rule will apply for all domains or a specific one. - // - // Types that are valid to be assigned to DomainChoice: - // *APIEndpointProtectionRule_AnyDomain - // *APIEndpointProtectionRule_SpecificDomain - DomainChoice isAPIEndpointProtectionRule_DomainChoice `protobuf_oneof:"domain_choice"` - // api endpoint path - // - // x-required - // x-example: "/endpoint1" - // x-displayName: "API Endpoint" - // The endpoint (path) of the request. - ApiEndpointPath string `protobuf:"bytes,4,opt,name=api_endpoint_path,json=apiEndpointPath,proto3" json:"api_endpoint_path,omitempty"` - // method - // - // x-displayName: "HTTP Methods" - // The list of expected values for the HTTP method in the request API. The actual value of the HTTP method is extracted from the HTTP request. - // The predicate evaluates to true if the actual HTTP method belongs is present in the list of expected values. - ApiEndpointMethod *policy.HttpMethodMatcherType `protobuf:"bytes,5,opt,name=api_endpoint_method,json=apiEndpointMethod,proto3" json:"api_endpoint_method,omitempty"` - // request_matcher - // - // x-displayName: "Request" - // Conditions related to the request, such as query parameters, headers, etc. - RequestMatcher *policy.RequestMatcher `protobuf:"bytes,6,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` - // client_matcher - // - // x-displayName: "Clients" - // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. - ClientMatcher *policy.ClientMatcher `protobuf:"bytes,7,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` -} - -func (m *APIEndpointProtectionRule) Reset() { *m = APIEndpointProtectionRule{} } -func (*APIEndpointProtectionRule) ProtoMessage() {} -func (*APIEndpointProtectionRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{27} -} -func (m *APIEndpointProtectionRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *APIEndpointProtectionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *APIEndpointProtectionRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_APIEndpointProtectionRule.Merge(m, src) -} -func (m *APIEndpointProtectionRule) XXX_Size() int { - return m.Size() -} -func (m *APIEndpointProtectionRule) XXX_DiscardUnknown() { - xxx_messageInfo_APIEndpointProtectionRule.DiscardUnknown(m) -} - -var xxx_messageInfo_APIEndpointProtectionRule proto.InternalMessageInfo - -type isAPIEndpointProtectionRule_DomainChoice interface { - isAPIEndpointProtectionRule_DomainChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type APIEndpointProtectionRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,9,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` -} -type APIEndpointProtectionRule_SpecificDomain struct { - SpecificDomain string `protobuf:"bytes,10,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` -} - -func (*APIEndpointProtectionRule_AnyDomain) isAPIEndpointProtectionRule_DomainChoice() {} -func (*APIEndpointProtectionRule_SpecificDomain) isAPIEndpointProtectionRule_DomainChoice() {} - -func (m *APIEndpointProtectionRule) GetDomainChoice() isAPIEndpointProtectionRule_DomainChoice { - if m != nil { - return m.DomainChoice - } - return nil -} - -func (m *APIEndpointProtectionRule) GetMetadata() *schema.MessageMetaType { - if m != nil { - return m.Metadata - } - return nil -} - -func (m *APIEndpointProtectionRule) GetAction() *APIProtectionRuleAction { - if m != nil { - return m.Action - } - return nil -} - -func (m *APIEndpointProtectionRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainChoice().(*APIEndpointProtectionRule_AnyDomain); ok { - return x.AnyDomain - } - return nil -} - -func (m *APIEndpointProtectionRule) GetSpecificDomain() string { - if x, ok := m.GetDomainChoice().(*APIEndpointProtectionRule_SpecificDomain); ok { - return x.SpecificDomain - } - return "" -} - -func (m *APIEndpointProtectionRule) GetApiEndpointPath() string { - if m != nil { - return m.ApiEndpointPath - } - return "" -} - -func (m *APIEndpointProtectionRule) GetApiEndpointMethod() *policy.HttpMethodMatcherType { - if m != nil { - return m.ApiEndpointMethod - } - return nil -} - -func (m *APIEndpointProtectionRule) GetRequestMatcher() *policy.RequestMatcher { - if m != nil { - return m.RequestMatcher - } - return nil -} - -func (m *APIEndpointProtectionRule) GetClientMatcher() *policy.ClientMatcher { - if m != nil { - return m.ClientMatcher - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*APIEndpointProtectionRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*APIEndpointProtectionRule_AnyDomain)(nil), - (*APIEndpointProtectionRule_SpecificDomain)(nil), - } -} - -// API Group Protection Rule -// -// x-displayName: "API Group Protection Rule" -// API Protection Rule for a group or a base url -type APIGroupProtectionRule struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // action - // - // x-required - // x-displayName: "Rule Action" - // The action to take if the input request matches the rule. - Action *APIProtectionRuleAction `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` - // domain choices - // - // x-displayName: "Domain" - // x-required - // Choose if the rule will apply for all domains or a specific one. - // - // Types that are valid to be assigned to DomainChoice: - // *APIGroupProtectionRule_AnyDomain - // *APIGroupProtectionRule_SpecificDomain - DomainChoice isAPIGroupProtectionRule_DomainChoice `protobuf_oneof:"domain_choice"` - // base path - // - // x-required - // x-example: "/v1" - // x-displayName: "Base Path" - // Prefix of the request path. - // For example: /v1 - BasePath string `protobuf:"bytes,10,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` - // api_group - // - // x-displayName: "API Group" - // x-example: "oas-all-operations" - // API groups derived from API Definition swaggers. - // For example oas-all-operations including all paths and methods from the swaggers, oas-base-urls covering all requests under base-paths from the swaggers. - // Custom groups can be created if user tags paths or operations with "x-volterra-api-group" extensions inside swaggers. - ApiGroup string `protobuf:"bytes,4,opt,name=api_group,json=apiGroup,proto3" json:"api_group,omitempty"` - // request_matcher - // - // x-displayName: "Request" - // Conditions related to the request, such as query parameters, headers, etc. - RequestMatcher *policy.RequestMatcher `protobuf:"bytes,5,opt,name=request_matcher,json=requestMatcher,proto3" json:"request_matcher,omitempty"` - // client_matcher - // - // x-displayName: "Clients" - // Conditions related to the origin of the request, such as client IP, TLS fingerprint, etc. - ClientMatcher *policy.ClientMatcher `protobuf:"bytes,6,opt,name=client_matcher,json=clientMatcher,proto3" json:"client_matcher,omitempty"` -} - -func (m *APIGroupProtectionRule) Reset() { *m = APIGroupProtectionRule{} } -func (*APIGroupProtectionRule) ProtoMessage() {} -func (*APIGroupProtectionRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{28} -} -func (m *APIGroupProtectionRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *APIGroupProtectionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *APIGroupProtectionRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_APIGroupProtectionRule.Merge(m, src) -} -func (m *APIGroupProtectionRule) XXX_Size() int { - return m.Size() -} -func (m *APIGroupProtectionRule) XXX_DiscardUnknown() { - xxx_messageInfo_APIGroupProtectionRule.DiscardUnknown(m) -} - -var xxx_messageInfo_APIGroupProtectionRule proto.InternalMessageInfo - -type isAPIGroupProtectionRule_DomainChoice interface { - isAPIGroupProtectionRule_DomainChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type APIGroupProtectionRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,8,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` -} -type APIGroupProtectionRule_SpecificDomain struct { - SpecificDomain string `protobuf:"bytes,9,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` -} - -func (*APIGroupProtectionRule_AnyDomain) isAPIGroupProtectionRule_DomainChoice() {} -func (*APIGroupProtectionRule_SpecificDomain) isAPIGroupProtectionRule_DomainChoice() {} - -func (m *APIGroupProtectionRule) GetDomainChoice() isAPIGroupProtectionRule_DomainChoice { - if m != nil { - return m.DomainChoice - } - return nil -} - -func (m *APIGroupProtectionRule) GetMetadata() *schema.MessageMetaType { - if m != nil { - return m.Metadata - } - return nil -} - -func (m *APIGroupProtectionRule) GetAction() *APIProtectionRuleAction { - if m != nil { - return m.Action - } - return nil -} - -func (m *APIGroupProtectionRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainChoice().(*APIGroupProtectionRule_AnyDomain); ok { - return x.AnyDomain - } - return nil -} - -func (m *APIGroupProtectionRule) GetSpecificDomain() string { - if x, ok := m.GetDomainChoice().(*APIGroupProtectionRule_SpecificDomain); ok { - return x.SpecificDomain - } - return "" -} - -func (m *APIGroupProtectionRule) GetBasePath() string { - if m != nil { - return m.BasePath - } - return "" -} - -func (m *APIGroupProtectionRule) GetApiGroup() string { - if m != nil { - return m.ApiGroup - } - return "" -} - -func (m *APIGroupProtectionRule) GetRequestMatcher() *policy.RequestMatcher { - if m != nil { - return m.RequestMatcher - } - return nil -} - -func (m *APIGroupProtectionRule) GetClientMatcher() *policy.ClientMatcher { - if m != nil { - return m.ClientMatcher - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*APIGroupProtectionRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*APIGroupProtectionRule_AnyDomain)(nil), - (*APIGroupProtectionRule_SpecificDomain)(nil), - } -} - -// API Protection Rules -// -// x-displayName: "API Protection Rules" -// API Protection Rules -type APIProtectionRules struct { - // api_endpoint_rules - // - // x-displayName: "API Endpoints" - // This category defines specific rules per API endpoints. - // If request matches any of these rules, skipping second category rules. - ApiEndpointRules []*APIEndpointProtectionRule `protobuf:"bytes,1,rep,name=api_endpoint_rules,json=apiEndpointRules,proto3" json:"api_endpoint_rules,omitempty"` - // api_groups_rules - // - // x-displayName: "Server URLs and API Groups" - // This category includes rules per API group or Server URL. - // For API groups, refer to API Definition which includes API groups derived from uploaded swaggers. - ApiGroupsRules []*APIGroupProtectionRule `protobuf:"bytes,2,rep,name=api_groups_rules,json=apiGroupsRules,proto3" json:"api_groups_rules,omitempty"` -} - -func (m *APIProtectionRules) Reset() { *m = APIProtectionRules{} } -func (*APIProtectionRules) ProtoMessage() {} -func (*APIProtectionRules) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{29} -} -func (m *APIProtectionRules) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *APIProtectionRules) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *APIProtectionRules) XXX_Merge(src proto.Message) { - xxx_messageInfo_APIProtectionRules.Merge(m, src) -} -func (m *APIProtectionRules) XXX_Size() int { - return m.Size() -} -func (m *APIProtectionRules) XXX_DiscardUnknown() { - xxx_messageInfo_APIProtectionRules.DiscardUnknown(m) -} - -var xxx_messageInfo_APIProtectionRules proto.InternalMessageInfo - -func (m *APIProtectionRules) GetApiEndpointRules() []*APIEndpointProtectionRule { - if m != nil { - return m.ApiEndpointRules - } - return nil -} - -func (m *APIProtectionRules) GetApiGroupsRules() []*APIGroupProtectionRule { - if m != nil { - return m.ApiGroupsRules - } - return nil -} - // DDoSMitigationRule // // x-displayName: "DDoS Mitigation Rule" @@ -5258,7 +2970,7 @@ type DDoSMitigationRule struct { func (m *DDoSMitigationRule) Reset() { *m = DDoSMitigationRule{} } func (*DDoSMitigationRule) ProtoMessage() {} func (*DDoSMitigationRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{30} + return fileDescriptor_6478b2bb990a4a3e, []int{14} } func (m *DDoSMitigationRule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5367,96 +3079,48 @@ func (*DDoSMitigationRule) XXX_OneofWrappers() []interface{} { } } -// Custom IP Allowed List -// -// x-displayName: "Custom IP Allowed List" -// IP Allowed list using existing ip_prefix_set objects -type CustomIpAllowedList struct { - // rate_limiter_allowed_prefixes - // - // x-displayName: "List of IP Prefix Sets" - // x-required - // References to ip_prefix_set objects. - // Requests from source IP addresses that are covered by one of the allowed IP Prefixes are not subjected to rate limiting. - RateLimiterAllowedPrefixes []*views.ObjectRefType `protobuf:"bytes,22,rep,name=rate_limiter_allowed_prefixes,json=rateLimiterAllowedPrefixes,proto3" json:"rate_limiter_allowed_prefixes,omitempty"` -} - -func (m *CustomIpAllowedList) Reset() { *m = CustomIpAllowedList{} } -func (*CustomIpAllowedList) ProtoMessage() {} -func (*CustomIpAllowedList) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{31} -} -func (m *CustomIpAllowedList) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CustomIpAllowedList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *CustomIpAllowedList) XXX_Merge(src proto.Message) { - xxx_messageInfo_CustomIpAllowedList.Merge(m, src) -} -func (m *CustomIpAllowedList) XXX_Size() int { - return m.Size() -} -func (m *CustomIpAllowedList) XXX_DiscardUnknown() { - xxx_messageInfo_CustomIpAllowedList.DiscardUnknown(m) -} - -var xxx_messageInfo_CustomIpAllowedList proto.InternalMessageInfo - -func (m *CustomIpAllowedList) GetRateLimiterAllowedPrefixes() []*views.ObjectRefType { - if m != nil { - return m.RateLimiterAllowedPrefixes - } - return nil -} - -// RateLimitConfigType +// Single load balancer app setting // -// x-displayName: "RateLimitConfigType" -type RateLimitConfigType struct { - // rate_limiter - // - // x-displayName: "Request Rate Limiter" - // Requests to the virtual_host are rate limited based on the parameters specified in the rate_limiter. - RateLimiter *rate_limiter.RateLimitValue `protobuf:"bytes,1,opt,name=rate_limiter,json=rateLimiter,proto3" json:"rate_limiter,omitempty"` - // IP Allowed List +// x-displayName: "Single Load Balancer App Setting" +// Specific settings for Machine learning analysis on this HTTP LB, independently from other LBs. +type SingleLoadBalancerAppSetting struct { + // API Discovery Choice // - // x-displayName: "IP(s) Allowed without Rate Limiting" // x-required - // Allowed List of IPs for which rate limiting will be disabled. + // x-displayName: "API Discovery" + // When enabled, sampled traffic passing through this load balancer is analyzed and + // APIs exposed by the application are identified. + // An API is identified by its canonical (collapsed) URL path and the method used to call it. + // Once all APIs are identified, for each API, the system learns its possible schema. + // The learnt schema for all APIs is used to automatically generate a swagger definition file for the entire API set exposed by this load balancer. // - // Types that are valid to be assigned to IpAllowedListChoice: - // *RateLimitConfigType_NoIpAllowedList - // *RateLimitConfigType_IpAllowedList - // *RateLimitConfigType_CustomIpAllowedList - IpAllowedListChoice isRateLimitConfigType_IpAllowedListChoice `protobuf_oneof:"ip_allowed_list_choice"` - // policy choice + // Types that are valid to be assigned to ApiDiscoveryChoice: + // *SingleLoadBalancerAppSetting_EnableDiscovery + // *SingleLoadBalancerAppSetting_DisableDiscovery + ApiDiscoveryChoice isSingleLoadBalancerAppSetting_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` + // Malicious User Detection Choice // - // x-displayName: "Rate Limiter Policies" // x-required - // Manage rate limiter policies. Note that an implicit policy based on the IP Allowed List is always applied as the first policy. + // x-displayName: "Malicious User Detection" + // Malicious User Detection performs user behavior analysis and assigns a risk score and threat level of low, medium + // or high based on the suspicious activity of the user. + // The risk score of the user is decayed over time, if no further suspicious activity is noticed. // - // Types that are valid to be assigned to PolicyChoice: - // *RateLimitConfigType_NoPolicies - // *RateLimitConfigType_Policies - PolicyChoice isRateLimitConfigType_PolicyChoice `protobuf_oneof:"policy_choice"` + // Types that are valid to be assigned to MaliciousUserDetectionChoice: + // *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection + // *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection + MaliciousUserDetectionChoice isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` } -func (m *RateLimitConfigType) Reset() { *m = RateLimitConfigType{} } -func (*RateLimitConfigType) ProtoMessage() {} -func (*RateLimitConfigType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{32} +func (m *SingleLoadBalancerAppSetting) Reset() { *m = SingleLoadBalancerAppSetting{} } +func (*SingleLoadBalancerAppSetting) ProtoMessage() {} +func (*SingleLoadBalancerAppSetting) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{15} } -func (m *RateLimitConfigType) XXX_Unmarshal(b []byte) error { +func (m *SingleLoadBalancerAppSetting) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *RateLimitConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *SingleLoadBalancerAppSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -5464,145 +3128,128 @@ func (m *RateLimitConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *RateLimitConfigType) XXX_Merge(src proto.Message) { - xxx_messageInfo_RateLimitConfigType.Merge(m, src) +func (m *SingleLoadBalancerAppSetting) XXX_Merge(src proto.Message) { + xxx_messageInfo_SingleLoadBalancerAppSetting.Merge(m, src) } -func (m *RateLimitConfigType) XXX_Size() int { +func (m *SingleLoadBalancerAppSetting) XXX_Size() int { return m.Size() } -func (m *RateLimitConfigType) XXX_DiscardUnknown() { - xxx_messageInfo_RateLimitConfigType.DiscardUnknown(m) +func (m *SingleLoadBalancerAppSetting) XXX_DiscardUnknown() { + xxx_messageInfo_SingleLoadBalancerAppSetting.DiscardUnknown(m) } -var xxx_messageInfo_RateLimitConfigType proto.InternalMessageInfo +var xxx_messageInfo_SingleLoadBalancerAppSetting proto.InternalMessageInfo -type isRateLimitConfigType_IpAllowedListChoice interface { - isRateLimitConfigType_IpAllowedListChoice() +type isSingleLoadBalancerAppSetting_ApiDiscoveryChoice interface { + isSingleLoadBalancerAppSetting_ApiDiscoveryChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isRateLimitConfigType_PolicyChoice interface { - isRateLimitConfigType_PolicyChoice() +type isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice interface { + isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type RateLimitConfigType_NoIpAllowedList struct { - NoIpAllowedList *schema.Empty `protobuf:"bytes,3,opt,name=no_ip_allowed_list,json=noIpAllowedList,proto3,oneof" json:"no_ip_allowed_list,omitempty"` -} -type RateLimitConfigType_IpAllowedList struct { - IpAllowedList *views.PrefixStringListType `protobuf:"bytes,4,opt,name=ip_allowed_list,json=ipAllowedList,proto3,oneof" json:"ip_allowed_list,omitempty"` +type SingleLoadBalancerAppSetting_EnableDiscovery struct { + EnableDiscovery *common_waf.ApiDiscoverySetting `protobuf:"bytes,2,opt,name=enable_discovery,json=enableDiscovery,proto3,oneof" json:"enable_discovery,omitempty"` } -type RateLimitConfigType_CustomIpAllowedList struct { - CustomIpAllowedList *CustomIpAllowedList `protobuf:"bytes,5,opt,name=custom_ip_allowed_list,json=customIpAllowedList,proto3,oneof" json:"custom_ip_allowed_list,omitempty"` +type SingleLoadBalancerAppSetting_DisableDiscovery struct { + DisableDiscovery *schema.Empty `protobuf:"bytes,3,opt,name=disable_discovery,json=disableDiscovery,proto3,oneof" json:"disable_discovery,omitempty"` } -type RateLimitConfigType_NoPolicies struct { - NoPolicies *schema.Empty `protobuf:"bytes,12,opt,name=no_policies,json=noPolicies,proto3,oneof" json:"no_policies,omitempty"` +type SingleLoadBalancerAppSetting_EnableMaliciousUserDetection struct { + EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,8,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` } -type RateLimitConfigType_Policies struct { - Policies *rate_limiter_policy.PolicyList `protobuf:"bytes,13,opt,name=policies,proto3,oneof" json:"policies,omitempty"` +type SingleLoadBalancerAppSetting_DisableMaliciousUserDetection struct { + DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,9,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` } -func (*RateLimitConfigType_NoIpAllowedList) isRateLimitConfigType_IpAllowedListChoice() {} -func (*RateLimitConfigType_IpAllowedList) isRateLimitConfigType_IpAllowedListChoice() {} -func (*RateLimitConfigType_CustomIpAllowedList) isRateLimitConfigType_IpAllowedListChoice() {} -func (*RateLimitConfigType_NoPolicies) isRateLimitConfigType_PolicyChoice() {} -func (*RateLimitConfigType_Policies) isRateLimitConfigType_PolicyChoice() {} - -func (m *RateLimitConfigType) GetIpAllowedListChoice() isRateLimitConfigType_IpAllowedListChoice { - if m != nil { - return m.IpAllowedListChoice - } - return nil +func (*SingleLoadBalancerAppSetting_EnableDiscovery) isSingleLoadBalancerAppSetting_ApiDiscoveryChoice() { } -func (m *RateLimitConfigType) GetPolicyChoice() isRateLimitConfigType_PolicyChoice { - if m != nil { - return m.PolicyChoice - } - return nil +func (*SingleLoadBalancerAppSetting_DisableDiscovery) isSingleLoadBalancerAppSetting_ApiDiscoveryChoice() { +} +func (*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice() { +} +func (*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice() { } -func (m *RateLimitConfigType) GetRateLimiter() *rate_limiter.RateLimitValue { +func (m *SingleLoadBalancerAppSetting) GetApiDiscoveryChoice() isSingleLoadBalancerAppSetting_ApiDiscoveryChoice { if m != nil { - return m.RateLimiter + return m.ApiDiscoveryChoice } return nil } - -func (m *RateLimitConfigType) GetNoIpAllowedList() *schema.Empty { - if x, ok := m.GetIpAllowedListChoice().(*RateLimitConfigType_NoIpAllowedList); ok { - return x.NoIpAllowedList +func (m *SingleLoadBalancerAppSetting) GetMaliciousUserDetectionChoice() isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice { + if m != nil { + return m.MaliciousUserDetectionChoice } return nil } -func (m *RateLimitConfigType) GetIpAllowedList() *views.PrefixStringListType { - if x, ok := m.GetIpAllowedListChoice().(*RateLimitConfigType_IpAllowedList); ok { - return x.IpAllowedList +func (m *SingleLoadBalancerAppSetting) GetEnableDiscovery() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_EnableDiscovery); ok { + return x.EnableDiscovery } return nil } -func (m *RateLimitConfigType) GetCustomIpAllowedList() *CustomIpAllowedList { - if x, ok := m.GetIpAllowedListChoice().(*RateLimitConfigType_CustomIpAllowedList); ok { - return x.CustomIpAllowedList +func (m *SingleLoadBalancerAppSetting) GetDisableDiscovery() *schema.Empty { + if x, ok := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_DisableDiscovery); ok { + return x.DisableDiscovery } return nil } -func (m *RateLimitConfigType) GetNoPolicies() *schema.Empty { - if x, ok := m.GetPolicyChoice().(*RateLimitConfigType_NoPolicies); ok { - return x.NoPolicies +func (m *SingleLoadBalancerAppSetting) GetEnableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection); ok { + return x.EnableMaliciousUserDetection } return nil } -func (m *RateLimitConfigType) GetPolicies() *rate_limiter_policy.PolicyList { - if x, ok := m.GetPolicyChoice().(*RateLimitConfigType_Policies); ok { - return x.Policies +func (m *SingleLoadBalancerAppSetting) GetDisableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection); ok { + return x.DisableMaliciousUserDetection } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*RateLimitConfigType) XXX_OneofWrappers() []interface{} { +func (*SingleLoadBalancerAppSetting) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*RateLimitConfigType_NoIpAllowedList)(nil), - (*RateLimitConfigType_IpAllowedList)(nil), - (*RateLimitConfigType_CustomIpAllowedList)(nil), - (*RateLimitConfigType_NoPolicies)(nil), - (*RateLimitConfigType_Policies)(nil), + (*SingleLoadBalancerAppSetting_EnableDiscovery)(nil), + (*SingleLoadBalancerAppSetting_DisableDiscovery)(nil), + (*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection)(nil), + (*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection)(nil), } } -// service policy list +// OriginServerSubsetRuleListType // -// x-displayName: "Service Policy List" -// List of service policies. -type ServicePolicyList struct { - // policies +// x-displayName: "Origin Server Subset Rule List Type" +// List of Origin Pools +type OriginServerSubsetRuleListType struct { + // Origin Server Subset // - // x-displayName: "Policies" - // x-required - // Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the - // correct order (policies evaluated from top to bottom in the list) for service policies, to get the intended result. - // For each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the - // current policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated. - // If all policies are evaluated and none match, then the request will be denied by default. - Policies []*views.ObjectRefType `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + // x-displayName: "Origin Server Subset Rules" + // Origin Server Subset Rules allow users to define match condition on Client (IP address, ASN, Country), IP Reputation, Regional Edge names, + // Request for subset selection of origin servers. Origin Server Subset is a sequential engine where rules are evaluated one after the other. + // It's important to define the correct order for Origin Server Subset to get the intended result, rules are evaluated from top to bottom in the list. + // When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated. + OriginServerSubsetRules []*policy.OriginServerSubsetRule `protobuf:"bytes,1,rep,name=origin_server_subset_rules,json=originServerSubsetRules,proto3" json:"origin_server_subset_rules,omitempty"` } -func (m *ServicePolicyList) Reset() { *m = ServicePolicyList{} } -func (*ServicePolicyList) ProtoMessage() {} -func (*ServicePolicyList) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{33} +func (m *OriginServerSubsetRuleListType) Reset() { *m = OriginServerSubsetRuleListType{} } +func (*OriginServerSubsetRuleListType) ProtoMessage() {} +func (*OriginServerSubsetRuleListType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{16} } -func (m *ServicePolicyList) XXX_Unmarshal(b []byte) error { +func (m *OriginServerSubsetRuleListType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ServicePolicyList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *OriginServerSubsetRuleListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -5610,46 +3257,48 @@ func (m *ServicePolicyList) XXX_Marshal(b []byte, deterministic bool) ([]byte, e } return b[:n], nil } -func (m *ServicePolicyList) XXX_Merge(src proto.Message) { - xxx_messageInfo_ServicePolicyList.Merge(m, src) +func (m *OriginServerSubsetRuleListType) XXX_Merge(src proto.Message) { + xxx_messageInfo_OriginServerSubsetRuleListType.Merge(m, src) } -func (m *ServicePolicyList) XXX_Size() int { +func (m *OriginServerSubsetRuleListType) XXX_Size() int { return m.Size() } -func (m *ServicePolicyList) XXX_DiscardUnknown() { - xxx_messageInfo_ServicePolicyList.DiscardUnknown(m) +func (m *OriginServerSubsetRuleListType) XXX_DiscardUnknown() { + xxx_messageInfo_OriginServerSubsetRuleListType.DiscardUnknown(m) } -var xxx_messageInfo_ServicePolicyList proto.InternalMessageInfo +var xxx_messageInfo_OriginServerSubsetRuleListType proto.InternalMessageInfo -func (m *ServicePolicyList) GetPolicies() []*views.ObjectRefType { +func (m *OriginServerSubsetRuleListType) GetOriginServerSubsetRules() []*policy.OriginServerSubsetRule { if m != nil { - return m.Policies + return m.OriginServerSubsetRules } return nil } -// api definition list +// ClientSideDefenseType // -// x-displayName: "API Definition List" -// List of api definitions. -type ApiDefinitionList struct { - // API Definitions +// x-displayName: "Client-Side Defense" +// This defines various configuration options for Client-Side Defense Policy. +type ClientSideDefenseType struct { + // ClientSideDefensePolicyType // - // x-displayName: "API Definitions" - // API Definitions using OpenAPI specification files - ApiDefinitions []*views.ObjectRefType `protobuf:"bytes,1,rep,name=api_definitions,json=apiDefinitions,proto3" json:"api_definitions,omitempty"` + // x-displayName: "Client-Side Defense Policy" + // x-required + // Configure the pages where you want Client-Side Defense Protection. + // Please ensure that the same domains are configured in the Client-Side Defense configuration. + Policy *ClientSideDefensePolicyType `protobuf:"bytes,1,opt,name=policy,proto3" json:"policy,omitempty"` } -func (m *ApiDefinitionList) Reset() { *m = ApiDefinitionList{} } -func (*ApiDefinitionList) ProtoMessage() {} -func (*ApiDefinitionList) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{34} +func (m *ClientSideDefenseType) Reset() { *m = ClientSideDefenseType{} } +func (*ClientSideDefenseType) ProtoMessage() {} +func (*ClientSideDefenseType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{17} } -func (m *ApiDefinitionList) XXX_Unmarshal(b []byte) error { +func (m *ClientSideDefenseType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ApiDefinitionList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ClientSideDefenseType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -5657,62 +3306,53 @@ func (m *ApiDefinitionList) XXX_Marshal(b []byte, deterministic bool) ([]byte, e } return b[:n], nil } -func (m *ApiDefinitionList) XXX_Merge(src proto.Message) { - xxx_messageInfo_ApiDefinitionList.Merge(m, src) +func (m *ClientSideDefenseType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClientSideDefenseType.Merge(m, src) } -func (m *ApiDefinitionList) XXX_Size() int { +func (m *ClientSideDefenseType) XXX_Size() int { return m.Size() } -func (m *ApiDefinitionList) XXX_DiscardUnknown() { - xxx_messageInfo_ApiDefinitionList.DiscardUnknown(m) +func (m *ClientSideDefenseType) XXX_DiscardUnknown() { + xxx_messageInfo_ClientSideDefenseType.DiscardUnknown(m) } -var xxx_messageInfo_ApiDefinitionList proto.InternalMessageInfo +var xxx_messageInfo_ClientSideDefenseType proto.InternalMessageInfo -func (m *ApiDefinitionList) GetApiDefinitions() []*views.ObjectRefType { +func (m *ClientSideDefenseType) GetPolicy() *ClientSideDefensePolicyType { if m != nil { - return m.ApiDefinitions + return m.Policy } return nil } -// API Discovery Setting +// ClientSideDefensePolicyType // -// x-displayName: "API Discovery Setting" -// Specifies the settings used for API discovery -type ApiDiscoverySetting struct { - // Include or Exclude data in machine learning from traffic with redirect response in Business Logic Markup +// x-displayName: "Client-Side Defense Policy" +// This defines various configuration options for Client-Side Defense policy. +type ClientSideDefensePolicyType struct { + // JavaScript Choice // + // x-displayName: "JavaScript Insertion Settings" // x-required - // x-displayName: "Learn From Traffic With Redirect Response" - // By default, the system only learns API Endpoints and patterns from traffic with response code 200 - // On enabling this, the AI engine will learn API Endpoints from traffic with response code 3xx in addition to 200 - // - // Types that are valid to be assigned to LearnFromRedirectTraffic: - // *ApiDiscoverySetting_DisableLearnFromRedirectTraffic - // *ApiDiscoverySetting_EnableLearnFromRedirectTraffic - LearnFromRedirectTraffic isApiDiscoverySetting_LearnFromRedirectTraffic `protobuf_oneof:"learn_from_redirect_traffic"` - // sensitive data rules - // - // x-displayName: "Sensitive Data Detection" - // Manage rules to detect sensitive data in requests and/or response sections. - SensitiveDataDetectionRules *app_type.SensitiveDataDetectionRules `protobuf:"bytes,5,opt,name=sensitive_data_detection_rules,json=sensitiveDataDetectionRules,proto3" json:"sensitive_data_detection_rules,omitempty"` - // Discovered API Settings + // This defines a JavaScript insertion rule. // - // x-displayName: "Discovered API Settings" - // Configure Discovered API Settings. - DiscoveredApiSettings *app_type.DiscoveredAPISettings `protobuf:"bytes,6,opt,name=discovered_api_settings,json=discoveredApiSettings,proto3" json:"discovered_api_settings,omitempty"` + // Types that are valid to be assigned to JavaScriptChoice: + // *ClientSideDefensePolicyType_DisableJsInsert + // *ClientSideDefensePolicyType_JsInsertAllPages + // *ClientSideDefensePolicyType_JsInsertAllPagesExcept + // *ClientSideDefensePolicyType_JsInsertionRules + JavaScriptChoice isClientSideDefensePolicyType_JavaScriptChoice `protobuf_oneof:"java_script_choice"` } -func (m *ApiDiscoverySetting) Reset() { *m = ApiDiscoverySetting{} } -func (*ApiDiscoverySetting) ProtoMessage() {} -func (*ApiDiscoverySetting) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{35} +func (m *ClientSideDefensePolicyType) Reset() { *m = ClientSideDefensePolicyType{} } +func (*ClientSideDefensePolicyType) ProtoMessage() {} +func (*ClientSideDefensePolicyType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{18} } -func (m *ApiDiscoverySetting) XXX_Unmarshal(b []byte) error { +func (m *ClientSideDefensePolicyType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ApiDiscoverySetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ClientSideDefensePolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -5720,104 +3360,115 @@ func (m *ApiDiscoverySetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *ApiDiscoverySetting) XXX_Merge(src proto.Message) { - xxx_messageInfo_ApiDiscoverySetting.Merge(m, src) +func (m *ClientSideDefensePolicyType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClientSideDefensePolicyType.Merge(m, src) } -func (m *ApiDiscoverySetting) XXX_Size() int { +func (m *ClientSideDefensePolicyType) XXX_Size() int { return m.Size() } -func (m *ApiDiscoverySetting) XXX_DiscardUnknown() { - xxx_messageInfo_ApiDiscoverySetting.DiscardUnknown(m) +func (m *ClientSideDefensePolicyType) XXX_DiscardUnknown() { + xxx_messageInfo_ClientSideDefensePolicyType.DiscardUnknown(m) } -var xxx_messageInfo_ApiDiscoverySetting proto.InternalMessageInfo +var xxx_messageInfo_ClientSideDefensePolicyType proto.InternalMessageInfo -type isApiDiscoverySetting_LearnFromRedirectTraffic interface { - isApiDiscoverySetting_LearnFromRedirectTraffic() +type isClientSideDefensePolicyType_JavaScriptChoice interface { + isClientSideDefensePolicyType_JavaScriptChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type ApiDiscoverySetting_DisableLearnFromRedirectTraffic struct { - DisableLearnFromRedirectTraffic *schema.Empty `protobuf:"bytes,2,opt,name=disable_learn_from_redirect_traffic,json=disableLearnFromRedirectTraffic,proto3,oneof" json:"disable_learn_from_redirect_traffic,omitempty"` +type ClientSideDefensePolicyType_DisableJsInsert struct { + DisableJsInsert *schema.Empty `protobuf:"bytes,2,opt,name=disable_js_insert,json=disableJsInsert,proto3,oneof" json:"disable_js_insert,omitempty"` +} +type ClientSideDefensePolicyType_JsInsertAllPages struct { + JsInsertAllPages *schema.Empty `protobuf:"bytes,3,opt,name=js_insert_all_pages,json=jsInsertAllPages,proto3,oneof" json:"js_insert_all_pages,omitempty"` } -type ApiDiscoverySetting_EnableLearnFromRedirectTraffic struct { - EnableLearnFromRedirectTraffic *schema.Empty `protobuf:"bytes,3,opt,name=enable_learn_from_redirect_traffic,json=enableLearnFromRedirectTraffic,proto3,oneof" json:"enable_learn_from_redirect_traffic,omitempty"` +type ClientSideDefensePolicyType_JsInsertAllPagesExcept struct { + JsInsertAllPagesExcept *CSDJavaScriptInsertAllWithExceptionsType `protobuf:"bytes,4,opt,name=js_insert_all_pages_except,json=jsInsertAllPagesExcept,proto3,oneof" json:"js_insert_all_pages_except,omitempty"` +} +type ClientSideDefensePolicyType_JsInsertionRules struct { + JsInsertionRules *CSDJavaScriptInsertType `protobuf:"bytes,5,opt,name=js_insertion_rules,json=jsInsertionRules,proto3,oneof" json:"js_insertion_rules,omitempty"` } -func (*ApiDiscoverySetting_DisableLearnFromRedirectTraffic) isApiDiscoverySetting_LearnFromRedirectTraffic() { +func (*ClientSideDefensePolicyType_DisableJsInsert) isClientSideDefensePolicyType_JavaScriptChoice() { +} +func (*ClientSideDefensePolicyType_JsInsertAllPages) isClientSideDefensePolicyType_JavaScriptChoice() { } -func (*ApiDiscoverySetting_EnableLearnFromRedirectTraffic) isApiDiscoverySetting_LearnFromRedirectTraffic() { +func (*ClientSideDefensePolicyType_JsInsertAllPagesExcept) isClientSideDefensePolicyType_JavaScriptChoice() { +} +func (*ClientSideDefensePolicyType_JsInsertionRules) isClientSideDefensePolicyType_JavaScriptChoice() { } -func (m *ApiDiscoverySetting) GetLearnFromRedirectTraffic() isApiDiscoverySetting_LearnFromRedirectTraffic { +func (m *ClientSideDefensePolicyType) GetJavaScriptChoice() isClientSideDefensePolicyType_JavaScriptChoice { if m != nil { - return m.LearnFromRedirectTraffic + return m.JavaScriptChoice } return nil } -func (m *ApiDiscoverySetting) GetDisableLearnFromRedirectTraffic() *schema.Empty { - if x, ok := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_DisableLearnFromRedirectTraffic); ok { - return x.DisableLearnFromRedirectTraffic +func (m *ClientSideDefensePolicyType) GetDisableJsInsert() *schema.Empty { + if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_DisableJsInsert); ok { + return x.DisableJsInsert } return nil } -func (m *ApiDiscoverySetting) GetEnableLearnFromRedirectTraffic() *schema.Empty { - if x, ok := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_EnableLearnFromRedirectTraffic); ok { - return x.EnableLearnFromRedirectTraffic +func (m *ClientSideDefensePolicyType) GetJsInsertAllPages() *schema.Empty { + if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPages); ok { + return x.JsInsertAllPages } return nil } -func (m *ApiDiscoverySetting) GetSensitiveDataDetectionRules() *app_type.SensitiveDataDetectionRules { - if m != nil { - return m.SensitiveDataDetectionRules +func (m *ClientSideDefensePolicyType) GetJsInsertAllPagesExcept() *CSDJavaScriptInsertAllWithExceptionsType { + if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPagesExcept); ok { + return x.JsInsertAllPagesExcept } return nil } -func (m *ApiDiscoverySetting) GetDiscoveredApiSettings() *app_type.DiscoveredAPISettings { - if m != nil { - return m.DiscoveredApiSettings +func (m *ClientSideDefensePolicyType) GetJsInsertionRules() *CSDJavaScriptInsertType { + if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertionRules); ok { + return x.JsInsertionRules } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*ApiDiscoverySetting) XXX_OneofWrappers() []interface{} { +func (*ClientSideDefensePolicyType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*ApiDiscoverySetting_DisableLearnFromRedirectTraffic)(nil), - (*ApiDiscoverySetting_EnableLearnFromRedirectTraffic)(nil), + (*ClientSideDefensePolicyType_DisableJsInsert)(nil), + (*ClientSideDefensePolicyType_JsInsertAllPages)(nil), + (*ClientSideDefensePolicyType_JsInsertAllPagesExcept)(nil), + (*ClientSideDefensePolicyType_JsInsertionRules)(nil), } } -// Enable DDoS Detection +// CSDJavaScriptInsertAllWithExceptionsType // -// x-displayName: "Enable DDoS detection" -type EnableDDoSDetectionSetting struct { - // Auto Mitigation - // - // x-displayName: "Auto Mitigation" - // Auto mitigation options are to either block or to present a JavaScript Challenge to the sources of DDoS attack - // - // Types that are valid to be assigned to AutoMitigationChoice: - // *EnableDDoSDetectionSetting_EnableAutoMitigation - // *EnableDDoSDetectionSetting_DisableAutoMitigation - AutoMitigationChoice isEnableDDoSDetectionSetting_AutoMitigationChoice `protobuf_oneof:"auto_mitigation_choice"` -} +// x-displayName: "Insert JavaScript in All Pages with the Exceptions" +// Insert Client-Side Defense JavaScript in all pages with the exceptions +type CSDJavaScriptInsertAllWithExceptionsType struct { + // exclude_list + // + // x-displayName: "Exclude Pages" + // Optional JavaScript insertions exclude list of domain and path matchers. + ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,1,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` +} -func (m *EnableDDoSDetectionSetting) Reset() { *m = EnableDDoSDetectionSetting{} } -func (*EnableDDoSDetectionSetting) ProtoMessage() {} -func (*EnableDDoSDetectionSetting) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{36} +func (m *CSDJavaScriptInsertAllWithExceptionsType) Reset() { + *m = CSDJavaScriptInsertAllWithExceptionsType{} +} +func (*CSDJavaScriptInsertAllWithExceptionsType) ProtoMessage() {} +func (*CSDJavaScriptInsertAllWithExceptionsType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{19} } -func (m *EnableDDoSDetectionSetting) XXX_Unmarshal(b []byte) error { +func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *EnableDDoSDetectionSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -5825,94 +3476,52 @@ func (m *EnableDDoSDetectionSetting) XXX_Marshal(b []byte, deterministic bool) ( } return b[:n], nil } -func (m *EnableDDoSDetectionSetting) XXX_Merge(src proto.Message) { - xxx_messageInfo_EnableDDoSDetectionSetting.Merge(m, src) +func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CSDJavaScriptInsertAllWithExceptionsType.Merge(m, src) } -func (m *EnableDDoSDetectionSetting) XXX_Size() int { +func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Size() int { return m.Size() } -func (m *EnableDDoSDetectionSetting) XXX_DiscardUnknown() { - xxx_messageInfo_EnableDDoSDetectionSetting.DiscardUnknown(m) -} - -var xxx_messageInfo_EnableDDoSDetectionSetting proto.InternalMessageInfo - -type isEnableDDoSDetectionSetting_AutoMitigationChoice interface { - isEnableDDoSDetectionSetting_AutoMitigationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type EnableDDoSDetectionSetting_EnableAutoMitigation struct { - EnableAutoMitigation *AutoMitigationAction `protobuf:"bytes,2,opt,name=enable_auto_mitigation,json=enableAutoMitigation,proto3,oneof" json:"enable_auto_mitigation,omitempty"` -} -type EnableDDoSDetectionSetting_DisableAutoMitigation struct { - DisableAutoMitigation *schema.Empty `protobuf:"bytes,3,opt,name=disable_auto_mitigation,json=disableAutoMitigation,proto3,oneof" json:"disable_auto_mitigation,omitempty"` +func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_DiscardUnknown() { + xxx_messageInfo_CSDJavaScriptInsertAllWithExceptionsType.DiscardUnknown(m) } -func (*EnableDDoSDetectionSetting_EnableAutoMitigation) isEnableDDoSDetectionSetting_AutoMitigationChoice() { -} -func (*EnableDDoSDetectionSetting_DisableAutoMitigation) isEnableDDoSDetectionSetting_AutoMitigationChoice() { -} +var xxx_messageInfo_CSDJavaScriptInsertAllWithExceptionsType proto.InternalMessageInfo -func (m *EnableDDoSDetectionSetting) GetAutoMitigationChoice() isEnableDDoSDetectionSetting_AutoMitigationChoice { +func (m *CSDJavaScriptInsertAllWithExceptionsType) GetExcludeList() []*ShapeJavaScriptExclusionRule { if m != nil { - return m.AutoMitigationChoice - } - return nil -} - -// Deprecated: Do not use. -func (m *EnableDDoSDetectionSetting) GetEnableAutoMitigation() *AutoMitigationAction { - if x, ok := m.GetAutoMitigationChoice().(*EnableDDoSDetectionSetting_EnableAutoMitigation); ok { - return x.EnableAutoMitigation - } - return nil -} - -// Deprecated: Do not use. -func (m *EnableDDoSDetectionSetting) GetDisableAutoMitigation() *schema.Empty { - if x, ok := m.GetAutoMitigationChoice().(*EnableDDoSDetectionSetting_DisableAutoMitigation); ok { - return x.DisableAutoMitigation + return m.ExcludeList } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*EnableDDoSDetectionSetting) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*EnableDDoSDetectionSetting_EnableAutoMitigation)(nil), - (*EnableDDoSDetectionSetting_DisableAutoMitigation)(nil), - } -} - -// Auto Mitigation Action +// CSDJavaScriptInsertType // -// x-displayName: "Auto Mitigation Action" -// Select action for auto mitigation -type AutoMitigationAction struct { - // Action +// x-displayName: "JavaScript Custom Insertion Rules" +// This defines custom JavaScript insertion rules for Client-Side Defense Policy. +type CSDJavaScriptInsertType struct { + // rules // - // x-displayName: "Action" + // x-displayName: "JavaScript Insertions" // x-required - // Select action for auto mitigation + // Required list of pages to insert Client-Side Defense client JavaScript. + Rules []*CSDJavaScriptInsertionRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"` + // exclude_list // - // Types that are valid to be assigned to Action: - // *AutoMitigationAction_Block - // *AutoMitigationAction_JsChallenge - Action isAutoMitigationAction_Action `protobuf_oneof:"action"` + // x-displayName: "Exclude Paths" + // Optional JavaScript insertions exclude list of domain and path matchers. + ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,2,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` } -func (m *AutoMitigationAction) Reset() { *m = AutoMitigationAction{} } -func (*AutoMitigationAction) ProtoMessage() {} -func (*AutoMitigationAction) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{37} +func (m *CSDJavaScriptInsertType) Reset() { *m = CSDJavaScriptInsertType{} } +func (*CSDJavaScriptInsertType) ProtoMessage() {} +func (*CSDJavaScriptInsertType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{20} } -func (m *AutoMitigationAction) XXX_Unmarshal(b []byte) error { +func (m *CSDJavaScriptInsertType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *AutoMitigationAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CSDJavaScriptInsertType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -5920,117 +3529,70 @@ func (m *AutoMitigationAction) XXX_Marshal(b []byte, deterministic bool) ([]byte } return b[:n], nil } -func (m *AutoMitigationAction) XXX_Merge(src proto.Message) { - xxx_messageInfo_AutoMitigationAction.Merge(m, src) +func (m *CSDJavaScriptInsertType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CSDJavaScriptInsertType.Merge(m, src) } -func (m *AutoMitigationAction) XXX_Size() int { +func (m *CSDJavaScriptInsertType) XXX_Size() int { return m.Size() } -func (m *AutoMitigationAction) XXX_DiscardUnknown() { - xxx_messageInfo_AutoMitigationAction.DiscardUnknown(m) -} - -var xxx_messageInfo_AutoMitigationAction proto.InternalMessageInfo - -type isAutoMitigationAction_Action interface { - isAutoMitigationAction_Action() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type AutoMitigationAction_Block struct { - Block *schema.Empty `protobuf:"bytes,2,opt,name=block,proto3,oneof" json:"block,omitempty"` -} -type AutoMitigationAction_JsChallenge struct { - JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,3,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` +func (m *CSDJavaScriptInsertType) XXX_DiscardUnknown() { + xxx_messageInfo_CSDJavaScriptInsertType.DiscardUnknown(m) } -func (*AutoMitigationAction_Block) isAutoMitigationAction_Action() {} -func (*AutoMitigationAction_JsChallenge) isAutoMitigationAction_Action() {} +var xxx_messageInfo_CSDJavaScriptInsertType proto.InternalMessageInfo -func (m *AutoMitigationAction) GetAction() isAutoMitigationAction_Action { +func (m *CSDJavaScriptInsertType) GetRules() []*CSDJavaScriptInsertionRule { if m != nil { - return m.Action - } - return nil -} - -func (m *AutoMitigationAction) GetBlock() *schema.Empty { - if x, ok := m.GetAction().(*AutoMitigationAction_Block); ok { - return x.Block + return m.Rules } return nil } -func (m *AutoMitigationAction) GetJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetAction().(*AutoMitigationAction_JsChallenge); ok { - return x.JsChallenge +func (m *CSDJavaScriptInsertType) GetExcludeList() []*ShapeJavaScriptExclusionRule { + if m != nil { + return m.ExcludeList } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*AutoMitigationAction) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*AutoMitigationAction_Block)(nil), - (*AutoMitigationAction_JsChallenge)(nil), - } -} - -// Single load balancer app setting +// CSDJavaScriptInsertionRule // -// x-displayName: "Single Load Balancer App Setting" -// Specific settings for Machine learning analysis on this HTTP LB, independently from other LBs. -type SingleLoadBalancerAppSetting struct { - // API Discovery Choice +// x-displayName: "JavaScript Insertion Rule" +// This defines a rule for Client-Side Defense JavaScript insertion. +type CSDJavaScriptInsertionRule struct { + // metadata // + // x-displayName: "Metadata" // x-required - // x-displayName: "API Discovery" - // When enabled, sampled traffic passing through this load balancer is analyzed and - // APIs exposed by the application are identified. - // An API is identified by its canonical (collapsed) URL path and the method used to call it. - // Once all APIs are identified, for each API, the system learns its possible schema. - // The learnt schema for all APIs is used to automatically generate a swagger definition file for the entire API set exposed by this load balancer. - // - // Types that are valid to be assigned to ApiDiscoveryChoice: - // *SingleLoadBalancerAppSetting_EnableDiscovery - // *SingleLoadBalancerAppSetting_DisableDiscovery - ApiDiscoveryChoice isSingleLoadBalancerAppSetting_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` - // ddos_detection_choice + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Domain Matcher // - // x-displayName: "DDoS Configuration" - // Time series anomaly detection is performed using advanced machine learning based on metrics such as request rate, - // error rate, latency, throughput, etc. - // The clients are flagged if anomalies are observed. + // x-displayName: "Domain Matcher" + // x-required + // This defines domain matcher. // - // Types that are valid to be assigned to DdosDetectionChoice: - // *SingleLoadBalancerAppSetting_EnableDdosDetection - // *SingleLoadBalancerAppSetting_DisableDdosDetection - DdosDetectionChoice isSingleLoadBalancerAppSetting_DdosDetectionChoice `protobuf_oneof:"ddos_detection_choice"` - // Malicious User Detection Choice + // Types that are valid to be assigned to DomainMatcherChoice: + // *CSDJavaScriptInsertionRule_AnyDomain + // *CSDJavaScriptInsertionRule_Domain + DomainMatcherChoice isCSDJavaScriptInsertionRule_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` + // Path // + // x-displayName: "Path" // x-required - // x-displayName: "Malicious User Detection" - // Malicious User Detection performs user behavior analysis and assigns a risk score and threat level of low, medium - // or high based on the suspicious activity of the user. - // The risk score of the user is decayed over time, if no further suspicious activity is noticed. - // - // Types that are valid to be assigned to MaliciousUserDetectionChoice: - // *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection - // *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection - MaliciousUserDetectionChoice isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` + // URI path matcher. + Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` } -func (m *SingleLoadBalancerAppSetting) Reset() { *m = SingleLoadBalancerAppSetting{} } -func (*SingleLoadBalancerAppSetting) ProtoMessage() {} -func (*SingleLoadBalancerAppSetting) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{38} +func (m *CSDJavaScriptInsertionRule) Reset() { *m = CSDJavaScriptInsertionRule{} } +func (*CSDJavaScriptInsertionRule) ProtoMessage() {} +func (*CSDJavaScriptInsertionRule) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{21} } -func (m *SingleLoadBalancerAppSetting) XXX_Unmarshal(b []byte) error { +func (m *CSDJavaScriptInsertionRule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *SingleLoadBalancerAppSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CSDJavaScriptInsertionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6038,178 +3600,120 @@ func (m *SingleLoadBalancerAppSetting) XXX_Marshal(b []byte, deterministic bool) } return b[:n], nil } -func (m *SingleLoadBalancerAppSetting) XXX_Merge(src proto.Message) { - xxx_messageInfo_SingleLoadBalancerAppSetting.Merge(m, src) +func (m *CSDJavaScriptInsertionRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_CSDJavaScriptInsertionRule.Merge(m, src) } -func (m *SingleLoadBalancerAppSetting) XXX_Size() int { +func (m *CSDJavaScriptInsertionRule) XXX_Size() int { return m.Size() } -func (m *SingleLoadBalancerAppSetting) XXX_DiscardUnknown() { - xxx_messageInfo_SingleLoadBalancerAppSetting.DiscardUnknown(m) +func (m *CSDJavaScriptInsertionRule) XXX_DiscardUnknown() { + xxx_messageInfo_CSDJavaScriptInsertionRule.DiscardUnknown(m) } -var xxx_messageInfo_SingleLoadBalancerAppSetting proto.InternalMessageInfo +var xxx_messageInfo_CSDJavaScriptInsertionRule proto.InternalMessageInfo -type isSingleLoadBalancerAppSetting_ApiDiscoveryChoice interface { - isSingleLoadBalancerAppSetting_ApiDiscoveryChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isSingleLoadBalancerAppSetting_DdosDetectionChoice interface { - isSingleLoadBalancerAppSetting_DdosDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice interface { - isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice() +type isCSDJavaScriptInsertionRule_DomainMatcherChoice interface { + isCSDJavaScriptInsertionRule_DomainMatcherChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type SingleLoadBalancerAppSetting_EnableDiscovery struct { - EnableDiscovery *ApiDiscoverySetting `protobuf:"bytes,2,opt,name=enable_discovery,json=enableDiscovery,proto3,oneof" json:"enable_discovery,omitempty"` -} -type SingleLoadBalancerAppSetting_DisableDiscovery struct { - DisableDiscovery *schema.Empty `protobuf:"bytes,3,opt,name=disable_discovery,json=disableDiscovery,proto3,oneof" json:"disable_discovery,omitempty"` -} -type SingleLoadBalancerAppSetting_EnableDdosDetection struct { - EnableDdosDetection *EnableDDoSDetectionSetting `protobuf:"bytes,5,opt,name=enable_ddos_detection,json=enableDdosDetection,proto3,oneof" json:"enable_ddos_detection,omitempty"` -} -type SingleLoadBalancerAppSetting_DisableDdosDetection struct { - DisableDdosDetection *schema.Empty `protobuf:"bytes,6,opt,name=disable_ddos_detection,json=disableDdosDetection,proto3,oneof" json:"disable_ddos_detection,omitempty"` -} -type SingleLoadBalancerAppSetting_EnableMaliciousUserDetection struct { - EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,8,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` +type CSDJavaScriptInsertionRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` } -type SingleLoadBalancerAppSetting_DisableMaliciousUserDetection struct { - DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,9,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` +type CSDJavaScriptInsertionRule_Domain struct { + Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` } -func (*SingleLoadBalancerAppSetting_EnableDiscovery) isSingleLoadBalancerAppSetting_ApiDiscoveryChoice() { -} -func (*SingleLoadBalancerAppSetting_DisableDiscovery) isSingleLoadBalancerAppSetting_ApiDiscoveryChoice() { -} -func (*SingleLoadBalancerAppSetting_EnableDdosDetection) isSingleLoadBalancerAppSetting_DdosDetectionChoice() { -} -func (*SingleLoadBalancerAppSetting_DisableDdosDetection) isSingleLoadBalancerAppSetting_DdosDetectionChoice() { -} -func (*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice() { -} -func (*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice() { -} +func (*CSDJavaScriptInsertionRule_AnyDomain) isCSDJavaScriptInsertionRule_DomainMatcherChoice() {} +func (*CSDJavaScriptInsertionRule_Domain) isCSDJavaScriptInsertionRule_DomainMatcherChoice() {} -func (m *SingleLoadBalancerAppSetting) GetApiDiscoveryChoice() isSingleLoadBalancerAppSetting_ApiDiscoveryChoice { - if m != nil { - return m.ApiDiscoveryChoice - } - return nil -} -func (m *SingleLoadBalancerAppSetting) GetDdosDetectionChoice() isSingleLoadBalancerAppSetting_DdosDetectionChoice { - if m != nil { - return m.DdosDetectionChoice - } - return nil -} -func (m *SingleLoadBalancerAppSetting) GetMaliciousUserDetectionChoice() isSingleLoadBalancerAppSetting_MaliciousUserDetectionChoice { +func (m *CSDJavaScriptInsertionRule) GetDomainMatcherChoice() isCSDJavaScriptInsertionRule_DomainMatcherChoice { if m != nil { - return m.MaliciousUserDetectionChoice - } - return nil -} - -func (m *SingleLoadBalancerAppSetting) GetEnableDiscovery() *ApiDiscoverySetting { - if x, ok := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_EnableDiscovery); ok { - return x.EnableDiscovery - } - return nil -} - -func (m *SingleLoadBalancerAppSetting) GetDisableDiscovery() *schema.Empty { - if x, ok := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_DisableDiscovery); ok { - return x.DisableDiscovery + return m.DomainMatcherChoice } return nil } -// Deprecated: Do not use. -func (m *SingleLoadBalancerAppSetting) GetEnableDdosDetection() *EnableDDoSDetectionSetting { - if x, ok := m.GetDdosDetectionChoice().(*SingleLoadBalancerAppSetting_EnableDdosDetection); ok { - return x.EnableDdosDetection +func (m *CSDJavaScriptInsertionRule) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata } return nil } -// Deprecated: Do not use. -func (m *SingleLoadBalancerAppSetting) GetDisableDdosDetection() *schema.Empty { - if x, ok := m.GetDdosDetectionChoice().(*SingleLoadBalancerAppSetting_DisableDdosDetection); ok { - return x.DisableDdosDetection +func (m *CSDJavaScriptInsertionRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_AnyDomain); ok { + return x.AnyDomain } return nil } -func (m *SingleLoadBalancerAppSetting) GetEnableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection); ok { - return x.EnableMaliciousUserDetection +func (m *CSDJavaScriptInsertionRule) GetDomain() *schema.DomainType { + if x, ok := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_Domain); ok { + return x.Domain } return nil } -func (m *SingleLoadBalancerAppSetting) GetDisableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection); ok { - return x.DisableMaliciousUserDetection +func (m *CSDJavaScriptInsertionRule) GetPath() *schema.PathMatcherType { + if m != nil { + return m.Path } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*SingleLoadBalancerAppSetting) XXX_OneofWrappers() []interface{} { +func (*CSDJavaScriptInsertionRule) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*SingleLoadBalancerAppSetting_EnableDiscovery)(nil), - (*SingleLoadBalancerAppSetting_DisableDiscovery)(nil), - (*SingleLoadBalancerAppSetting_EnableDdosDetection)(nil), - (*SingleLoadBalancerAppSetting_DisableDdosDetection)(nil), - (*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection)(nil), - (*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection)(nil), + (*CSDJavaScriptInsertionRule_AnyDomain)(nil), + (*CSDJavaScriptInsertionRule_Domain)(nil), } } -// APISpecificationSettings +// BotDefenseAdvancedPolicyType // -// x-displayName: "API Specification and Validation" -// Settings for api specification (api definition, OpenAPI validation, etc.) -type APISpecificationSettings struct { - // Use API Definition +// x-displayName: "Bot Defense Advanced Policy" +// This defines various configuration options for Bot Defense Advanced Policy. +type BotDefenseAdvancedPolicyType struct { + // ProtectedAppEndpointType // - // x-displayName: "API Definition" + // x-displayName: "Protected App Endpoints" + // x-required + // List of protected endpoints (max 128 items) + ProtectedAppEndpoints []*ProtectedAppEndpointType `protobuf:"bytes,1,rep,name=protected_app_endpoints,json=protectedAppEndpoints,proto3" json:"protected_app_endpoints,omitempty"` + // js_download_path + // + // x-displayName: "Web Client JavaScript Download Path" + // x-example: "/common.js" // x-required - // Specify API definition which includes application API paths and methods derived from swagger files. - ApiDefinition *views.ObjectRefType `protobuf:"bytes,1,opt,name=api_definition,json=apiDefinition,proto3" json:"api_definition,omitempty"` - // Validation + // Customize Bot Defense Web Client JavaScript path + JsDownloadPath string `protobuf:"bytes,2,opt,name=js_download_path,json=jsDownloadPath,proto3" json:"js_download_path,omitempty"` + // Mobile SDK Choice // - // x-displayName: "Validation" + // x-displayName: "Activate Mobile SDK" // x-required - // List of api-endpoints (may be aggregated by api-group or base-path) to run them through OpenAPI specification validation. - // Any other api-endpoint not listed will act according to "Fall Through Mode" + // Configure Mobile SDK parameters to protect native mobile app endpoints. If you have selected client type as + // 'Mobile' or 'Web And Mobile' please Enable Mobile SDK. In the event that there is at least one protected + // endpoint marked with a client type of 'Web And Mobile', then also define Mobile Request Identifier(s) in + // advanced setting. // - // Types that are valid to be assigned to ValidationTargetChoice: - // *APISpecificationSettings_ValidationDisabled - // *APISpecificationSettings_ValidationAllSpecEndpoints - // *APISpecificationSettings_ValidationCustomList - ValidationTargetChoice isAPISpecificationSettings_ValidationTargetChoice `protobuf_oneof:"validation_target_choice"` + // Types that are valid to be assigned to MobileSdkChoice: + // *BotDefenseAdvancedPolicyType_DisableMobileSdk + // *BotDefenseAdvancedPolicyType_MobileSdkConfig + MobileSdkChoice isBotDefenseAdvancedPolicyType_MobileSdkChoice `protobuf_oneof:"mobile_sdk_choice"` } -func (m *APISpecificationSettings) Reset() { *m = APISpecificationSettings{} } -func (*APISpecificationSettings) ProtoMessage() {} -func (*APISpecificationSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{39} +func (m *BotDefenseAdvancedPolicyType) Reset() { *m = BotDefenseAdvancedPolicyType{} } +func (*BotDefenseAdvancedPolicyType) ProtoMessage() {} +func (*BotDefenseAdvancedPolicyType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{22} } -func (m *APISpecificationSettings) XXX_Unmarshal(b []byte) error { +func (m *BotDefenseAdvancedPolicyType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *APISpecificationSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *BotDefenseAdvancedPolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6217,132 +3721,101 @@ func (m *APISpecificationSettings) XXX_Marshal(b []byte, deterministic bool) ([] } return b[:n], nil } -func (m *APISpecificationSettings) XXX_Merge(src proto.Message) { - xxx_messageInfo_APISpecificationSettings.Merge(m, src) +func (m *BotDefenseAdvancedPolicyType) XXX_Merge(src proto.Message) { + xxx_messageInfo_BotDefenseAdvancedPolicyType.Merge(m, src) } -func (m *APISpecificationSettings) XXX_Size() int { +func (m *BotDefenseAdvancedPolicyType) XXX_Size() int { return m.Size() } -func (m *APISpecificationSettings) XXX_DiscardUnknown() { - xxx_messageInfo_APISpecificationSettings.DiscardUnknown(m) +func (m *BotDefenseAdvancedPolicyType) XXX_DiscardUnknown() { + xxx_messageInfo_BotDefenseAdvancedPolicyType.DiscardUnknown(m) } -var xxx_messageInfo_APISpecificationSettings proto.InternalMessageInfo +var xxx_messageInfo_BotDefenseAdvancedPolicyType proto.InternalMessageInfo -type isAPISpecificationSettings_ValidationTargetChoice interface { - isAPISpecificationSettings_ValidationTargetChoice() +type isBotDefenseAdvancedPolicyType_MobileSdkChoice interface { + isBotDefenseAdvancedPolicyType_MobileSdkChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type APISpecificationSettings_ValidationDisabled struct { - ValidationDisabled *schema.Empty `protobuf:"bytes,3,opt,name=validation_disabled,json=validationDisabled,proto3,oneof" json:"validation_disabled,omitempty"` -} -type APISpecificationSettings_ValidationAllSpecEndpoints struct { - ValidationAllSpecEndpoints *OpenApiValidationAllSpecEndpointsSettings `protobuf:"bytes,4,opt,name=validation_all_spec_endpoints,json=validationAllSpecEndpoints,proto3,oneof" json:"validation_all_spec_endpoints,omitempty"` +type BotDefenseAdvancedPolicyType_DisableMobileSdk struct { + DisableMobileSdk *schema.Empty `protobuf:"bytes,4,opt,name=disable_mobile_sdk,json=disableMobileSdk,proto3,oneof" json:"disable_mobile_sdk,omitempty"` } -type APISpecificationSettings_ValidationCustomList struct { - ValidationCustomList *ValidateApiBySpecRule `protobuf:"bytes,5,opt,name=validation_custom_list,json=validationCustomList,proto3,oneof" json:"validation_custom_list,omitempty"` +type BotDefenseAdvancedPolicyType_MobileSdkConfig struct { + MobileSdkConfig *BotAdvancedMobileSDKConfigType `protobuf:"bytes,5,opt,name=mobile_sdk_config,json=mobileSdkConfig,proto3,oneof" json:"mobile_sdk_config,omitempty"` } -func (*APISpecificationSettings_ValidationDisabled) isAPISpecificationSettings_ValidationTargetChoice() { -} -func (*APISpecificationSettings_ValidationAllSpecEndpoints) isAPISpecificationSettings_ValidationTargetChoice() { +func (*BotDefenseAdvancedPolicyType_DisableMobileSdk) isBotDefenseAdvancedPolicyType_MobileSdkChoice() { } -func (*APISpecificationSettings_ValidationCustomList) isAPISpecificationSettings_ValidationTargetChoice() { +func (*BotDefenseAdvancedPolicyType_MobileSdkConfig) isBotDefenseAdvancedPolicyType_MobileSdkChoice() { } -func (m *APISpecificationSettings) GetValidationTargetChoice() isAPISpecificationSettings_ValidationTargetChoice { +func (m *BotDefenseAdvancedPolicyType) GetMobileSdkChoice() isBotDefenseAdvancedPolicyType_MobileSdkChoice { if m != nil { - return m.ValidationTargetChoice + return m.MobileSdkChoice } return nil } -func (m *APISpecificationSettings) GetApiDefinition() *views.ObjectRefType { +func (m *BotDefenseAdvancedPolicyType) GetProtectedAppEndpoints() []*ProtectedAppEndpointType { if m != nil { - return m.ApiDefinition + return m.ProtectedAppEndpoints } return nil } -func (m *APISpecificationSettings) GetValidationDisabled() *schema.Empty { - if x, ok := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationDisabled); ok { - return x.ValidationDisabled +func (m *BotDefenseAdvancedPolicyType) GetJsDownloadPath() string { + if m != nil { + return m.JsDownloadPath } - return nil + return "" } -func (m *APISpecificationSettings) GetValidationAllSpecEndpoints() *OpenApiValidationAllSpecEndpointsSettings { - if x, ok := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationAllSpecEndpoints); ok { - return x.ValidationAllSpecEndpoints +func (m *BotDefenseAdvancedPolicyType) GetDisableMobileSdk() *schema.Empty { + if x, ok := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_DisableMobileSdk); ok { + return x.DisableMobileSdk } return nil } -func (m *APISpecificationSettings) GetValidationCustomList() *ValidateApiBySpecRule { - if x, ok := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationCustomList); ok { - return x.ValidationCustomList +func (m *BotDefenseAdvancedPolicyType) GetMobileSdkConfig() *BotAdvancedMobileSDKConfigType { + if x, ok := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_MobileSdkConfig); ok { + return x.MobileSdkConfig } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*APISpecificationSettings) XXX_OneofWrappers() []interface{} { +func (*BotDefenseAdvancedPolicyType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*APISpecificationSettings_ValidationDisabled)(nil), - (*APISpecificationSettings_ValidationAllSpecEndpoints)(nil), - (*APISpecificationSettings_ValidationCustomList)(nil), + (*BotDefenseAdvancedPolicyType_DisableMobileSdk)(nil), + (*BotDefenseAdvancedPolicyType_MobileSdkConfig)(nil), } } -// OpenAPI Validation API Inventory Settings +// BotAdvancedMobileSDKConfigType // -// x-displayName: "API Inventory" -// Settings for API Inventory validation -type OpenApiValidationAllSpecEndpointsSettings struct { - // Validation Mode - // - // x-displayName: "Validation Mode" - // x-required - // Validation mode of OpenAPI specification. - // When a validation mismatch occurs on a request to one of the API Inventory endpoints - ValidationMode *OpenApiValidationMode `protobuf:"bytes,1,opt,name=validation_mode,json=validationMode,proto3" json:"validation_mode,omitempty"` - // Fall Through Mode - // - // x-displayName: "Fall Through Mode" - // x-required - // Determine what to do with unprotected endpoints (not part of the API Inventory or doesn't have a specific rule in custom rules) - FallThroughMode *OpenApiFallThroughMode `protobuf:"bytes,2,opt,name=fall_through_mode,json=fallThroughMode,proto3" json:"fall_through_mode,omitempty"` - // Policy of over-sized body - // - // x-displayName: "Policy for Over-Sized Body in Request/Response" - // Policy of handling request/response with too long body - // DEPRECATED. use settings.oversized_body_choice - // - // Types that are valid to be assigned to OversizedBodyChoice: - // *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation - // *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation - OversizedBodyChoice isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice `protobuf_oneof:"oversized_body_choice"` - // OpenAPI specification validation common settings +// x-displayName: "Mobile Request Identifier Headers" +// Mobile Request Identifier Headers. +type BotAdvancedMobileSDKConfigType struct { + // MobileTrafficIdentifierType // - // x-displayName: "Common Settings" - // OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement - Settings *OpenApiValidationCommonSettings `protobuf:"bytes,6,opt,name=settings,proto3" json:"settings,omitempty"` + // x-displayName: "Mobile Request Identifier Headers" + // Mobile Request Identifier Headers Type. + MobileIdentifier *MobileTrafficIdentifierType `protobuf:"bytes,1,opt,name=mobile_identifier,json=mobileIdentifier,proto3" json:"mobile_identifier,omitempty"` } -func (m *OpenApiValidationAllSpecEndpointsSettings) Reset() { - *m = OpenApiValidationAllSpecEndpointsSettings{} -} -func (*OpenApiValidationAllSpecEndpointsSettings) ProtoMessage() {} -func (*OpenApiValidationAllSpecEndpointsSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{40} +func (m *BotAdvancedMobileSDKConfigType) Reset() { *m = BotAdvancedMobileSDKConfigType{} } +func (*BotAdvancedMobileSDKConfigType) ProtoMessage() {} +func (*BotAdvancedMobileSDKConfigType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{23} } -func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Unmarshal(b []byte) error { +func (m *BotAdvancedMobileSDKConfigType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *BotAdvancedMobileSDKConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6350,123 +3823,102 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Marshal(b []byte, determ } return b[:n], nil } -func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiValidationAllSpecEndpointsSettings.Merge(m, src) +func (m *BotAdvancedMobileSDKConfigType) XXX_Merge(src proto.Message) { + xxx_messageInfo_BotAdvancedMobileSDKConfigType.Merge(m, src) } -func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_Size() int { +func (m *BotAdvancedMobileSDKConfigType) XXX_Size() int { return m.Size() } -func (m *OpenApiValidationAllSpecEndpointsSettings) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiValidationAllSpecEndpointsSettings.DiscardUnknown(m) -} - -var xxx_messageInfo_OpenApiValidationAllSpecEndpointsSettings proto.InternalMessageInfo - -type isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice interface { - isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation struct { - OversizedBodySkipValidation *schema.Empty `protobuf:"bytes,4,opt,name=oversized_body_skip_validation,json=oversizedBodySkipValidation,proto3,oneof" json:"oversized_body_skip_validation,omitempty"` -} -type OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation struct { - OversizedBodyFailValidation *schema.Empty `protobuf:"bytes,5,opt,name=oversized_body_fail_validation,json=oversizedBodyFailValidation,proto3,oneof" json:"oversized_body_fail_validation,omitempty"` -} - -func (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice() { -} -func (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice() { -} - -func (m *OpenApiValidationAllSpecEndpointsSettings) GetOversizedBodyChoice() isOpenApiValidationAllSpecEndpointsSettings_OversizedBodyChoice { - if m != nil { - return m.OversizedBodyChoice - } - return nil -} - -func (m *OpenApiValidationAllSpecEndpointsSettings) GetValidationMode() *OpenApiValidationMode { - if m != nil { - return m.ValidationMode - } - return nil -} - -func (m *OpenApiValidationAllSpecEndpointsSettings) GetFallThroughMode() *OpenApiFallThroughMode { - if m != nil { - return m.FallThroughMode - } - return nil -} - -// Deprecated: Do not use. -func (m *OpenApiValidationAllSpecEndpointsSettings) GetOversizedBodySkipValidation() *schema.Empty { - if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation); ok { - return x.OversizedBodySkipValidation - } - return nil +func (m *BotAdvancedMobileSDKConfigType) XXX_DiscardUnknown() { + xxx_messageInfo_BotAdvancedMobileSDKConfigType.DiscardUnknown(m) } -// Deprecated: Do not use. -func (m *OpenApiValidationAllSpecEndpointsSettings) GetOversizedBodyFailValidation() *schema.Empty { - if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation); ok { - return x.OversizedBodyFailValidation - } - return nil -} +var xxx_messageInfo_BotAdvancedMobileSDKConfigType proto.InternalMessageInfo -func (m *OpenApiValidationAllSpecEndpointsSettings) GetSettings() *OpenApiValidationCommonSettings { +func (m *BotAdvancedMobileSDKConfigType) GetMobileIdentifier() *MobileTrafficIdentifierType { if m != nil { - return m.Settings + return m.MobileIdentifier } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiValidationAllSpecEndpointsSettings) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation)(nil), - (*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation)(nil), - } -} - -// OpenAPI specification validation common settings +// ProtectedAppEndpointType // -// x-displayName: "Common Settings" -// OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement -type OpenApiValidationCommonSettings struct { - // Policy of over-sized body +// x-displayName: "Protected App Endpoint" +// Protected Application Endpoint. +type ProtectedAppEndpointType struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Domain Matcher + // + // x-displayName: "Domain Matcher" + // This defines domain matcher. + // + // Types that are valid to be assigned to DomainMatcherChoice: + // *ProtectedAppEndpointType_AnyDomain + // *ProtectedAppEndpointType_Domain + DomainMatcherChoice isProtectedAppEndpointType_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` + // Path + // + // x-displayName: "Path" + // x-required + // x-example: "/id/1" + // x-example: "/id/*" + // x-example: "*login" + // Accepts wildcards * to match multiple characters or ? to match a single character + Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` + // Query + // + // x-displayName: "Query" + // x-example: "(^|[^\\w])action=login([^\\w]|$)" + // Enter a regular expression or exact value to match your query parameters of interest + Query []*Query `protobuf:"bytes,6,rep,name=query,proto3" json:"query,omitempty"` + // Request Body + // + // x-displayName: "Request Body" + // Request Body + RequestBody []*RequestBody `protobuf:"bytes,7,rep,name=request_body,json=requestBody,proto3" json:"request_body,omitempty"` + // HTTP Methods + // + // x-displayName: "HTTP Methods" + // x-required + // List of HTTP methods. + HttpMethods []schema.BotHttpMethod `protobuf:"varint,8,rep,packed,name=http_methods,json=httpMethods,proto3,enum=ves.io.schema.BotHttpMethod" json:"http_methods,omitempty"` + // Traffic channel // - // x-displayName: "Policy for Over-Sized Body in Request/Response" - // Policy of handling request/response with too long body + // x-displayName: "Traffic Channel" + // x-required + // Select traffic channel. // - // Types that are valid to be assigned to OversizedBodyChoice: - // *OpenApiValidationCommonSettings_OversizedBodySkipValidation - // *OpenApiValidationCommonSettings_OversizedBodyFailValidation - OversizedBodyChoice isOpenApiValidationCommonSettings_OversizedBodyChoice `protobuf_oneof:"oversized_body_choice"` - // Property validation settings + // Types that are valid to be assigned to AppTrafficTypeChoice: + // *ProtectedAppEndpointType_WebClient + // *ProtectedAppEndpointType_MobileClient + // *ProtectedAppEndpointType_WebMobileClient + AppTrafficTypeChoice isProtectedAppEndpointType_AppTrafficTypeChoice `protobuf_oneof:"app_traffic_type_choice"` + // Endpoint category // - // x-displayName: "Property Validation Settings" - // Request/response properties validation settings + // x-displayName: "Endpoint category" + // Endpoint label category // - // Types that are valid to be assigned to PropertyValidationSettingsChoice: - // *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault - // *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom - PropertyValidationSettingsChoice isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice `protobuf_oneof:"property_validation_settings_choice"` + // Types that are valid to be assigned to FlowLabelChoice: + // *ProtectedAppEndpointType_UndefinedFlowLabel + // *ProtectedAppEndpointType_FlowLabel + FlowLabelChoice isProtectedAppEndpointType_FlowLabelChoice `protobuf_oneof:"flow_label_choice"` } -func (m *OpenApiValidationCommonSettings) Reset() { *m = OpenApiValidationCommonSettings{} } -func (*OpenApiValidationCommonSettings) ProtoMessage() {} -func (*OpenApiValidationCommonSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{41} +func (m *ProtectedAppEndpointType) Reset() { *m = ProtectedAppEndpointType{} } +func (*ProtectedAppEndpointType) ProtoMessage() {} +func (*ProtectedAppEndpointType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{24} } -func (m *OpenApiValidationCommonSettings) XXX_Unmarshal(b []byte) error { +func (m *ProtectedAppEndpointType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OpenApiValidationCommonSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ProtectedAppEndpointType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6474,282 +3926,215 @@ func (m *OpenApiValidationCommonSettings) XXX_Marshal(b []byte, deterministic bo } return b[:n], nil } -func (m *OpenApiValidationCommonSettings) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiValidationCommonSettings.Merge(m, src) +func (m *ProtectedAppEndpointType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ProtectedAppEndpointType.Merge(m, src) } -func (m *OpenApiValidationCommonSettings) XXX_Size() int { +func (m *ProtectedAppEndpointType) XXX_Size() int { return m.Size() } -func (m *OpenApiValidationCommonSettings) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiValidationCommonSettings.DiscardUnknown(m) +func (m *ProtectedAppEndpointType) XXX_DiscardUnknown() { + xxx_messageInfo_ProtectedAppEndpointType.DiscardUnknown(m) } -var xxx_messageInfo_OpenApiValidationCommonSettings proto.InternalMessageInfo +var xxx_messageInfo_ProtectedAppEndpointType proto.InternalMessageInfo -type isOpenApiValidationCommonSettings_OversizedBodyChoice interface { - isOpenApiValidationCommonSettings_OversizedBodyChoice() +type isProtectedAppEndpointType_DomainMatcherChoice interface { + isProtectedAppEndpointType_DomainMatcherChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice interface { - isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice() +type isProtectedAppEndpointType_AppTrafficTypeChoice interface { + isProtectedAppEndpointType_AppTrafficTypeChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } - -type OpenApiValidationCommonSettings_OversizedBodySkipValidation struct { - OversizedBodySkipValidation *schema.Empty `protobuf:"bytes,2,opt,name=oversized_body_skip_validation,json=oversizedBodySkipValidation,proto3,oneof" json:"oversized_body_skip_validation,omitempty"` +type isProtectedAppEndpointType_FlowLabelChoice interface { + isProtectedAppEndpointType_FlowLabelChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type OpenApiValidationCommonSettings_OversizedBodyFailValidation struct { - OversizedBodyFailValidation *schema.Empty `protobuf:"bytes,3,opt,name=oversized_body_fail_validation,json=oversizedBodyFailValidation,proto3,oneof" json:"oversized_body_fail_validation,omitempty"` + +type ProtectedAppEndpointType_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` } -type OpenApiValidationCommonSettings_PropertyValidationSettingsDefault struct { - PropertyValidationSettingsDefault *schema.Empty `protobuf:"bytes,5,opt,name=property_validation_settings_default,json=propertyValidationSettingsDefault,proto3,oneof" json:"property_validation_settings_default,omitempty"` +type ProtectedAppEndpointType_Domain struct { + Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` } -type OpenApiValidationCommonSettings_PropertyValidationSettingsCustom struct { - PropertyValidationSettingsCustom *ValidationPropertySetting `protobuf:"bytes,6,opt,name=property_validation_settings_custom,json=propertyValidationSettingsCustom,proto3,oneof" json:"property_validation_settings_custom,omitempty"` +type ProtectedAppEndpointType_WebClient struct { + WebClient *schema.Empty `protobuf:"bytes,10,opt,name=web_client,json=webClient,proto3,oneof" json:"web_client,omitempty"` } - -func (*OpenApiValidationCommonSettings_OversizedBodySkipValidation) isOpenApiValidationCommonSettings_OversizedBodyChoice() { +type ProtectedAppEndpointType_MobileClient struct { + MobileClient *schema.Empty `protobuf:"bytes,11,opt,name=mobile_client,json=mobileClient,proto3,oneof" json:"mobile_client,omitempty"` } -func (*OpenApiValidationCommonSettings_OversizedBodyFailValidation) isOpenApiValidationCommonSettings_OversizedBodyChoice() { +type ProtectedAppEndpointType_WebMobileClient struct { + WebMobileClient *WebMobileTrafficType `protobuf:"bytes,12,opt,name=web_mobile_client,json=webMobileClient,proto3,oneof" json:"web_mobile_client,omitempty"` } -func (*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice() { +type ProtectedAppEndpointType_UndefinedFlowLabel struct { + UndefinedFlowLabel *schema.Empty `protobuf:"bytes,14,opt,name=undefined_flow_label,json=undefinedFlowLabel,proto3,oneof" json:"undefined_flow_label,omitempty"` } -func (*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice() { +type ProtectedAppEndpointType_FlowLabel struct { + FlowLabel *schema.BotDefenseFlowLabelCategoriesChoiceType `protobuf:"bytes,15,opt,name=flow_label,json=flowLabel,proto3,oneof" json:"flow_label,omitempty"` } -func (m *OpenApiValidationCommonSettings) GetOversizedBodyChoice() isOpenApiValidationCommonSettings_OversizedBodyChoice { - if m != nil { - return m.OversizedBodyChoice - } - return nil -} -func (m *OpenApiValidationCommonSettings) GetPropertyValidationSettingsChoice() isOpenApiValidationCommonSettings_PropertyValidationSettingsChoice { - if m != nil { - return m.PropertyValidationSettingsChoice - } - return nil -} +func (*ProtectedAppEndpointType_AnyDomain) isProtectedAppEndpointType_DomainMatcherChoice() {} +func (*ProtectedAppEndpointType_Domain) isProtectedAppEndpointType_DomainMatcherChoice() {} +func (*ProtectedAppEndpointType_WebClient) isProtectedAppEndpointType_AppTrafficTypeChoice() {} +func (*ProtectedAppEndpointType_MobileClient) isProtectedAppEndpointType_AppTrafficTypeChoice() {} +func (*ProtectedAppEndpointType_WebMobileClient) isProtectedAppEndpointType_AppTrafficTypeChoice() {} +func (*ProtectedAppEndpointType_UndefinedFlowLabel) isProtectedAppEndpointType_FlowLabelChoice() {} +func (*ProtectedAppEndpointType_FlowLabel) isProtectedAppEndpointType_FlowLabelChoice() {} -func (m *OpenApiValidationCommonSettings) GetOversizedBodySkipValidation() *schema.Empty { - if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodySkipValidation); ok { - return x.OversizedBodySkipValidation +func (m *ProtectedAppEndpointType) GetDomainMatcherChoice() isProtectedAppEndpointType_DomainMatcherChoice { + if m != nil { + return m.DomainMatcherChoice } return nil } - -func (m *OpenApiValidationCommonSettings) GetOversizedBodyFailValidation() *schema.Empty { - if x, ok := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodyFailValidation); ok { - return x.OversizedBodyFailValidation +func (m *ProtectedAppEndpointType) GetAppTrafficTypeChoice() isProtectedAppEndpointType_AppTrafficTypeChoice { + if m != nil { + return m.AppTrafficTypeChoice } return nil } - -func (m *OpenApiValidationCommonSettings) GetPropertyValidationSettingsDefault() *schema.Empty { - if x, ok := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault); ok { - return x.PropertyValidationSettingsDefault +func (m *ProtectedAppEndpointType) GetFlowLabelChoice() isProtectedAppEndpointType_FlowLabelChoice { + if m != nil { + return m.FlowLabelChoice } return nil } -func (m *OpenApiValidationCommonSettings) GetPropertyValidationSettingsCustom() *ValidationPropertySetting { - if x, ok := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom); ok { - return x.PropertyValidationSettingsCustom +func (m *ProtectedAppEndpointType) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiValidationCommonSettings) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*OpenApiValidationCommonSettings_OversizedBodySkipValidation)(nil), - (*OpenApiValidationCommonSettings_OversizedBodyFailValidation)(nil), - (*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault)(nil), - (*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom)(nil), +func (m *ProtectedAppEndpointType) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_AnyDomain); ok { + return x.AnyDomain } + return nil } -// Validation Property settings -// -// x-displayName: "Validation Property Settings" -// Custom property validation settings -type ValidationPropertySetting struct { - // Query parameters validation settings - // - // x-displayName: "Validation Settings For Query Parameters" - // Custom settings for query parameters validation - QueryParameters *ValidationSettingForQueryParameters `protobuf:"bytes,1,opt,name=queryParameters,proto3" json:"queryParameters,omitempty"` - // Headers validation settings - // - // x-displayName: "Validation Settings For Headers" - // Custom settings for headers validation - Headers *ValidationSettingForHeaders `protobuf:"bytes,2,opt,name=headers,proto3" json:"headers,omitempty"` -} - -func (m *ValidationPropertySetting) Reset() { *m = ValidationPropertySetting{} } -func (*ValidationPropertySetting) ProtoMessage() {} -func (*ValidationPropertySetting) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{42} -} -func (m *ValidationPropertySetting) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ValidationPropertySetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ProtectedAppEndpointType) GetDomain() *schema.DomainType { + if x, ok := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_Domain); ok { + return x.Domain } - return b[:n], nil -} -func (m *ValidationPropertySetting) XXX_Merge(src proto.Message) { - xxx_messageInfo_ValidationPropertySetting.Merge(m, src) -} -func (m *ValidationPropertySetting) XXX_Size() int { - return m.Size() -} -func (m *ValidationPropertySetting) XXX_DiscardUnknown() { - xxx_messageInfo_ValidationPropertySetting.DiscardUnknown(m) + return nil } -var xxx_messageInfo_ValidationPropertySetting proto.InternalMessageInfo - -func (m *ValidationPropertySetting) GetQueryParameters() *ValidationSettingForQueryParameters { +func (m *ProtectedAppEndpointType) GetPath() *schema.PathMatcherType { if m != nil { - return m.QueryParameters + return m.Path } return nil } -func (m *ValidationPropertySetting) GetHeaders() *ValidationSettingForHeaders { +func (m *ProtectedAppEndpointType) GetQuery() []*Query { if m != nil { - return m.Headers + return m.Query } return nil } -// Validation Settings For Query Parameters -// -// x-displayName: "Validation Settings For Query Parameters" -// Custom settings for query parameters validation -type ValidationSettingForQueryParameters struct { - // Allow/Disallow additional query parameters in Request - // - // x-displayName: "Allow/Disallow additional query parameters in Request" - // x-required - // Allow/Disallow additional query parameters in Request - // - // Types that are valid to be assigned to AdditionalParametersChoice: - // *ValidationSettingForQueryParameters_AllowAdditionalParameters - // *ValidationSettingForQueryParameters_DisallowAdditionalParameters - AdditionalParametersChoice isValidationSettingForQueryParameters_AdditionalParametersChoice `protobuf_oneof:"additional_parameters_choice"` -} - -func (m *ValidationSettingForQueryParameters) Reset() { *m = ValidationSettingForQueryParameters{} } -func (*ValidationSettingForQueryParameters) ProtoMessage() {} -func (*ValidationSettingForQueryParameters) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{43} -} -func (m *ValidationSettingForQueryParameters) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ValidationSettingForQueryParameters) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ProtectedAppEndpointType) GetRequestBody() []*RequestBody { + if m != nil { + return m.RequestBody } - return b[:n], nil -} -func (m *ValidationSettingForQueryParameters) XXX_Merge(src proto.Message) { - xxx_messageInfo_ValidationSettingForQueryParameters.Merge(m, src) -} -func (m *ValidationSettingForQueryParameters) XXX_Size() int { - return m.Size() -} -func (m *ValidationSettingForQueryParameters) XXX_DiscardUnknown() { - xxx_messageInfo_ValidationSettingForQueryParameters.DiscardUnknown(m) + return nil } -var xxx_messageInfo_ValidationSettingForQueryParameters proto.InternalMessageInfo - -type isValidationSettingForQueryParameters_AdditionalParametersChoice interface { - isValidationSettingForQueryParameters_AdditionalParametersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *ProtectedAppEndpointType) GetHttpMethods() []schema.BotHttpMethod { + if m != nil { + return m.HttpMethods + } + return nil } -type ValidationSettingForQueryParameters_AllowAdditionalParameters struct { - AllowAdditionalParameters *schema.Empty `protobuf:"bytes,2,opt,name=allow_additional_parameters,json=allowAdditionalParameters,proto3,oneof" json:"allow_additional_parameters,omitempty"` -} -type ValidationSettingForQueryParameters_DisallowAdditionalParameters struct { - DisallowAdditionalParameters *schema.Empty `protobuf:"bytes,3,opt,name=disallow_additional_parameters,json=disallowAdditionalParameters,proto3,oneof" json:"disallow_additional_parameters,omitempty"` +func (m *ProtectedAppEndpointType) GetWebClient() *schema.Empty { + if x, ok := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebClient); ok { + return x.WebClient + } + return nil } -func (*ValidationSettingForQueryParameters_AllowAdditionalParameters) isValidationSettingForQueryParameters_AdditionalParametersChoice() { -} -func (*ValidationSettingForQueryParameters_DisallowAdditionalParameters) isValidationSettingForQueryParameters_AdditionalParametersChoice() { +func (m *ProtectedAppEndpointType) GetMobileClient() *schema.Empty { + if x, ok := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_MobileClient); ok { + return x.MobileClient + } + return nil } -func (m *ValidationSettingForQueryParameters) GetAdditionalParametersChoice() isValidationSettingForQueryParameters_AdditionalParametersChoice { - if m != nil { - return m.AdditionalParametersChoice +func (m *ProtectedAppEndpointType) GetWebMobileClient() *WebMobileTrafficType { + if x, ok := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebMobileClient); ok { + return x.WebMobileClient } return nil } -func (m *ValidationSettingForQueryParameters) GetAllowAdditionalParameters() *schema.Empty { - if x, ok := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_AllowAdditionalParameters); ok { - return x.AllowAdditionalParameters +func (m *ProtectedAppEndpointType) GetUndefinedFlowLabel() *schema.Empty { + if x, ok := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_UndefinedFlowLabel); ok { + return x.UndefinedFlowLabel } return nil } -func (m *ValidationSettingForQueryParameters) GetDisallowAdditionalParameters() *schema.Empty { - if x, ok := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_DisallowAdditionalParameters); ok { - return x.DisallowAdditionalParameters +func (m *ProtectedAppEndpointType) GetFlowLabel() *schema.BotDefenseFlowLabelCategoriesChoiceType { + if x, ok := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_FlowLabel); ok { + return x.FlowLabel } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*ValidationSettingForQueryParameters) XXX_OneofWrappers() []interface{} { +func (*ProtectedAppEndpointType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*ValidationSettingForQueryParameters_AllowAdditionalParameters)(nil), - (*ValidationSettingForQueryParameters_DisallowAdditionalParameters)(nil), + (*ProtectedAppEndpointType_AnyDomain)(nil), + (*ProtectedAppEndpointType_Domain)(nil), + (*ProtectedAppEndpointType_WebClient)(nil), + (*ProtectedAppEndpointType_MobileClient)(nil), + (*ProtectedAppEndpointType_WebMobileClient)(nil), + (*ProtectedAppEndpointType_UndefinedFlowLabel)(nil), + (*ProtectedAppEndpointType_FlowLabel)(nil), } } -// Validation Settings For Headers +// RequestBody // -// x-displayName: "Validation Settings For Headers" -// Custom settings for headers validation -type ValidationSettingForHeaders struct { - // Allow/Disallow additional headers in Request/Response +// x-displayName: "Request Body Parameter Matcher" +// Request Body Parameter Matcher +type RequestBody struct { + // Name + // + // x-displayName: "Request Body Parameter Name" + // x-example: "id" + // Enter request body parameter name + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Value Type // - // x-displayName: "Allow/Disallow additional headers in Request/Response" + // x-displayName: "Value Type" // x-required - // Allow/Disallow additional headers in Request/Response + // Request body value type // - // Types that are valid to be assigned to AdditionalHeadersChoice: - // *ValidationSettingForHeaders_AllowAdditionalHeaders - // *ValidationSettingForHeaders_DisallowAdditionalHeaders - AdditionalHeadersChoice isValidationSettingForHeaders_AdditionalHeadersChoice `protobuf_oneof:"additional_headers_choice"` + // Types that are valid to be assigned to ValueType: + // *RequestBody_ExactValue + // *RequestBody_RegexValue + ValueType isRequestBody_ValueType `protobuf_oneof:"value_type"` } -func (m *ValidationSettingForHeaders) Reset() { *m = ValidationSettingForHeaders{} } -func (*ValidationSettingForHeaders) ProtoMessage() {} -func (*ValidationSettingForHeaders) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{44} +func (m *RequestBody) Reset() { *m = RequestBody{} } +func (*RequestBody) ProtoMessage() {} +func (*RequestBody) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{25} } -func (m *ValidationSettingForHeaders) XXX_Unmarshal(b []byte) error { +func (m *RequestBody) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ValidationSettingForHeaders) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *RequestBody) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6757,109 +4142,104 @@ func (m *ValidationSettingForHeaders) XXX_Marshal(b []byte, deterministic bool) } return b[:n], nil } -func (m *ValidationSettingForHeaders) XXX_Merge(src proto.Message) { - xxx_messageInfo_ValidationSettingForHeaders.Merge(m, src) +func (m *RequestBody) XXX_Merge(src proto.Message) { + xxx_messageInfo_RequestBody.Merge(m, src) } -func (m *ValidationSettingForHeaders) XXX_Size() int { +func (m *RequestBody) XXX_Size() int { return m.Size() } -func (m *ValidationSettingForHeaders) XXX_DiscardUnknown() { - xxx_messageInfo_ValidationSettingForHeaders.DiscardUnknown(m) +func (m *RequestBody) XXX_DiscardUnknown() { + xxx_messageInfo_RequestBody.DiscardUnknown(m) } -var xxx_messageInfo_ValidationSettingForHeaders proto.InternalMessageInfo +var xxx_messageInfo_RequestBody proto.InternalMessageInfo -type isValidationSettingForHeaders_AdditionalHeadersChoice interface { - isValidationSettingForHeaders_AdditionalHeadersChoice() +type isRequestBody_ValueType interface { + isRequestBody_ValueType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type ValidationSettingForHeaders_AllowAdditionalHeaders struct { - AllowAdditionalHeaders *schema.Empty `protobuf:"bytes,2,opt,name=allow_additional_headers,json=allowAdditionalHeaders,proto3,oneof" json:"allow_additional_headers,omitempty"` +type RequestBody_ExactValue struct { + ExactValue string `protobuf:"bytes,2,opt,name=exact_value,json=exactValue,proto3,oneof" json:"exact_value,omitempty"` } -type ValidationSettingForHeaders_DisallowAdditionalHeaders struct { - DisallowAdditionalHeaders *schema.Empty `protobuf:"bytes,3,opt,name=disallow_additional_headers,json=disallowAdditionalHeaders,proto3,oneof" json:"disallow_additional_headers,omitempty"` +type RequestBody_RegexValue struct { + RegexValue string `protobuf:"bytes,3,opt,name=regex_value,json=regexValue,proto3,oneof" json:"regex_value,omitempty"` } -func (*ValidationSettingForHeaders_AllowAdditionalHeaders) isValidationSettingForHeaders_AdditionalHeadersChoice() { -} -func (*ValidationSettingForHeaders_DisallowAdditionalHeaders) isValidationSettingForHeaders_AdditionalHeadersChoice() { -} +func (*RequestBody_ExactValue) isRequestBody_ValueType() {} +func (*RequestBody_RegexValue) isRequestBody_ValueType() {} -func (m *ValidationSettingForHeaders) GetAdditionalHeadersChoice() isValidationSettingForHeaders_AdditionalHeadersChoice { +func (m *RequestBody) GetValueType() isRequestBody_ValueType { if m != nil { - return m.AdditionalHeadersChoice + return m.ValueType } return nil } -func (m *ValidationSettingForHeaders) GetAllowAdditionalHeaders() *schema.Empty { - if x, ok := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_AllowAdditionalHeaders); ok { - return x.AllowAdditionalHeaders +func (m *RequestBody) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *RequestBody) GetExactValue() string { + if x, ok := m.GetValueType().(*RequestBody_ExactValue); ok { + return x.ExactValue } - return nil + return "" } -func (m *ValidationSettingForHeaders) GetDisallowAdditionalHeaders() *schema.Empty { - if x, ok := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_DisallowAdditionalHeaders); ok { - return x.DisallowAdditionalHeaders +func (m *RequestBody) GetRegexValue() string { + if x, ok := m.GetValueType().(*RequestBody_RegexValue); ok { + return x.RegexValue } - return nil + return "" } // XXX_OneofWrappers is for the internal use of the proto package. -func (*ValidationSettingForHeaders) XXX_OneofWrappers() []interface{} { +func (*RequestBody) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*ValidationSettingForHeaders_AllowAdditionalHeaders)(nil), - (*ValidationSettingForHeaders_DisallowAdditionalHeaders)(nil), + (*RequestBody_ExactValue)(nil), + (*RequestBody_RegexValue)(nil), } } -// Validation Mode -// -// x-displayName: "Validation Mode" -// x-required -// Validation mode of OpenAPI specification. +// Query // -// When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger) -type OpenApiValidationMode struct { - // Request Validation Mode Choice - // - // x-displayName: "OpenAPI Validation Request Processing Mode" - // x-required - // Validation mode of OpenAPI specification request. - // Indicates if enforcement is needed when a validation mismatch occurs on a request to one of the endpoints - // listed on the OpenAPI specification file (a.k.a. swagger) +// x-displayName: "Query Parameter Matcher" +// Query Parameter Matcher +type Query struct { + // Name // - // Types that are valid to be assigned to ValidationModeChoice: - // *OpenApiValidationMode_ValidationModeActive - // *OpenApiValidationMode_SkipValidation - ValidationModeChoice isOpenApiValidationMode_ValidationModeChoice `protobuf_oneof:"validation_mode_choice"` - // Response Validation Mode Choice + // x-displayName: "Query Parameter Name" + // x-example: "id" + // Enter query parameter name + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Value Type // - // x-displayName: "OpenAPI Validation Response Processing Mode" + // x-displayName: "Value Type" // x-required - // Validation mode of OpenAPI specification response. - // Indicates if enforcement is needed when a validation mismatch occurs on a response to one of the endpoints - // listed on the OpenAPI specification file (a.k.a. swagger) + // Query parameter value type // - // Types that are valid to be assigned to ResponseValidationModeChoice: - // *OpenApiValidationMode_SkipResponseValidation - // *OpenApiValidationMode_ResponseValidationModeActive - ResponseValidationModeChoice isOpenApiValidationMode_ResponseValidationModeChoice `protobuf_oneof:"response_validation_mode_choice"` + // Types that are valid to be assigned to ValueType: + // *Query_ExactValue + // *Query_RegexValue + // *Query_CheckPresence + ValueType isQuery_ValueType `protobuf_oneof:"value_type"` } -func (m *OpenApiValidationMode) Reset() { *m = OpenApiValidationMode{} } -func (*OpenApiValidationMode) ProtoMessage() {} -func (*OpenApiValidationMode) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{45} +func (m *Query) Reset() { *m = Query{} } +func (*Query) ProtoMessage() {} +func (*Query) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{26} } -func (m *OpenApiValidationMode) XXX_Unmarshal(b []byte) error { +func (m *Query) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OpenApiValidationMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *Query) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6867,129 +4247,130 @@ func (m *OpenApiValidationMode) XXX_Marshal(b []byte, deterministic bool) ([]byt } return b[:n], nil } -func (m *OpenApiValidationMode) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiValidationMode.Merge(m, src) +func (m *Query) XXX_Merge(src proto.Message) { + xxx_messageInfo_Query.Merge(m, src) } -func (m *OpenApiValidationMode) XXX_Size() int { +func (m *Query) XXX_Size() int { return m.Size() } -func (m *OpenApiValidationMode) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiValidationMode.DiscardUnknown(m) +func (m *Query) XXX_DiscardUnknown() { + xxx_messageInfo_Query.DiscardUnknown(m) } -var xxx_messageInfo_OpenApiValidationMode proto.InternalMessageInfo +var xxx_messageInfo_Query proto.InternalMessageInfo -type isOpenApiValidationMode_ValidationModeChoice interface { - isOpenApiValidationMode_ValidationModeChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isOpenApiValidationMode_ResponseValidationModeChoice interface { - isOpenApiValidationMode_ResponseValidationModeChoice() +type isQuery_ValueType interface { + isQuery_ValueType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type OpenApiValidationMode_ValidationModeActive struct { - ValidationModeActive *OpenApiValidationModeActive `protobuf:"bytes,2,opt,name=validation_mode_active,json=validationModeActive,proto3,oneof" json:"validation_mode_active,omitempty"` -} -type OpenApiValidationMode_SkipValidation struct { - SkipValidation *schema.Empty `protobuf:"bytes,3,opt,name=skip_validation,json=skipValidation,proto3,oneof" json:"skip_validation,omitempty"` +type Query_ExactValue struct { + ExactValue string `protobuf:"bytes,2,opt,name=exact_value,json=exactValue,proto3,oneof" json:"exact_value,omitempty"` } -type OpenApiValidationMode_SkipResponseValidation struct { - SkipResponseValidation *schema.Empty `protobuf:"bytes,5,opt,name=skip_response_validation,json=skipResponseValidation,proto3,oneof" json:"skip_response_validation,omitempty"` +type Query_RegexValue struct { + RegexValue string `protobuf:"bytes,3,opt,name=regex_value,json=regexValue,proto3,oneof" json:"regex_value,omitempty"` } -type OpenApiValidationMode_ResponseValidationModeActive struct { - ResponseValidationModeActive *OpenApiValidationModeActiveResponse `protobuf:"bytes,6,opt,name=response_validation_mode_active,json=responseValidationModeActive,proto3,oneof" json:"response_validation_mode_active,omitempty"` +type Query_CheckPresence struct { + CheckPresence *schema.Empty `protobuf:"bytes,4,opt,name=check_presence,json=checkPresence,proto3,oneof" json:"check_presence,omitempty"` } -func (*OpenApiValidationMode_ValidationModeActive) isOpenApiValidationMode_ValidationModeChoice() {} -func (*OpenApiValidationMode_SkipValidation) isOpenApiValidationMode_ValidationModeChoice() {} -func (*OpenApiValidationMode_SkipResponseValidation) isOpenApiValidationMode_ResponseValidationModeChoice() { -} -func (*OpenApiValidationMode_ResponseValidationModeActive) isOpenApiValidationMode_ResponseValidationModeChoice() { -} +func (*Query_ExactValue) isQuery_ValueType() {} +func (*Query_RegexValue) isQuery_ValueType() {} +func (*Query_CheckPresence) isQuery_ValueType() {} -func (m *OpenApiValidationMode) GetValidationModeChoice() isOpenApiValidationMode_ValidationModeChoice { - if m != nil { - return m.ValidationModeChoice - } - return nil -} -func (m *OpenApiValidationMode) GetResponseValidationModeChoice() isOpenApiValidationMode_ResponseValidationModeChoice { +func (m *Query) GetValueType() isQuery_ValueType { if m != nil { - return m.ResponseValidationModeChoice + return m.ValueType } return nil } -func (m *OpenApiValidationMode) GetValidationModeActive() *OpenApiValidationModeActive { - if x, ok := m.GetValidationModeChoice().(*OpenApiValidationMode_ValidationModeActive); ok { - return x.ValidationModeActive +func (m *Query) GetName() string { + if m != nil { + return m.Name } - return nil + return "" } -func (m *OpenApiValidationMode) GetSkipValidation() *schema.Empty { - if x, ok := m.GetValidationModeChoice().(*OpenApiValidationMode_SkipValidation); ok { - return x.SkipValidation +func (m *Query) GetExactValue() string { + if x, ok := m.GetValueType().(*Query_ExactValue); ok { + return x.ExactValue } - return nil + return "" } -func (m *OpenApiValidationMode) GetSkipResponseValidation() *schema.Empty { - if x, ok := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_SkipResponseValidation); ok { - return x.SkipResponseValidation +func (m *Query) GetRegexValue() string { + if x, ok := m.GetValueType().(*Query_RegexValue); ok { + return x.RegexValue } - return nil + return "" } -func (m *OpenApiValidationMode) GetResponseValidationModeActive() *OpenApiValidationModeActiveResponse { - if x, ok := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_ResponseValidationModeActive); ok { - return x.ResponseValidationModeActive +func (m *Query) GetCheckPresence() *schema.Empty { + if x, ok := m.GetValueType().(*Query_CheckPresence); ok { + return x.CheckPresence } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiValidationMode) XXX_OneofWrappers() []interface{} { +func (*Query) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*OpenApiValidationMode_ValidationModeActive)(nil), - (*OpenApiValidationMode_SkipValidation)(nil), - (*OpenApiValidationMode_SkipResponseValidation)(nil), - (*OpenApiValidationMode_ResponseValidationModeActive)(nil), + (*Query_ExactValue)(nil), + (*Query_RegexValue)(nil), + (*Query_CheckPresence)(nil), } } -// Fall Through Mode +// ShapeBotDefenseType // -// x-displayName: "Fall Through Mode" -// x-required -// Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules) -type OpenApiFallThroughMode struct { - // Fall Through Mode +// x-displayName: "Bot Defense" +// This defines various configuration options for Bot Defense Policy. +type ShapeBotDefenseType struct { + // Bot Defense Region + // + // x-displayName: "Bot Defense Region" + // Specify Bot Defense region to use + // x-required + RegionalEndpoint ShapeBotDefenseRegion `protobuf:"varint,1,opt,name=regional_endpoint,json=regionalEndpoint,proto3,enum=ves.io.schema.views.http_loadbalancer.ShapeBotDefenseRegion" json:"regional_endpoint,omitempty"` + // ShapeBotDefensePolicyType + // + // x-displayName: "Bot Defense Policy" + // x-required + // Bot Defense Policy. + Policy *ShapeBotDefensePolicyType `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"` + // timeout // - // x-displayName: "Fall Through Mode" + // x-displayName: "Timeout" + // x-example: "300" + // The timeout for the inference check, in milliseconds. + Timeout uint32 `protobuf:"varint,3,opt,name=timeout,proto3" json:"timeout,omitempty"` + // Cors Support Choice + // + // x-displayName: "CORS Policy Support" // x-required - // Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules) + // Enables Cross-Origin Resource Sharing (CORS) Policy Support to allow + // Bot Defense to work with CORS on the origin server. If you use CORS + // on your application, disabling this setting significantly limits the + // ability of Bot Defense to protect against bot attacks. // - // Types that are valid to be assigned to FallThroughModeChoice: - // *OpenApiFallThroughMode_FallThroughModeAllow - // *OpenApiFallThroughMode_FallThroughModeCustom - FallThroughModeChoice isOpenApiFallThroughMode_FallThroughModeChoice `protobuf_oneof:"fall_through_mode_choice"` + // Types that are valid to be assigned to CorsSupportChoice: + // *ShapeBotDefenseType_EnableCorsSupport + // *ShapeBotDefenseType_DisableCorsSupport + CorsSupportChoice isShapeBotDefenseType_CorsSupportChoice `protobuf_oneof:"cors_support_choice"` } -func (m *OpenApiFallThroughMode) Reset() { *m = OpenApiFallThroughMode{} } -func (*OpenApiFallThroughMode) ProtoMessage() {} -func (*OpenApiFallThroughMode) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{46} +func (m *ShapeBotDefenseType) Reset() { *m = ShapeBotDefenseType{} } +func (*ShapeBotDefenseType) ProtoMessage() {} +func (*ShapeBotDefenseType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{27} } -func (m *OpenApiFallThroughMode) XXX_Unmarshal(b []byte) error { +func (m *ShapeBotDefenseType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OpenApiFallThroughMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeBotDefenseType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -6997,87 +4378,117 @@ func (m *OpenApiFallThroughMode) XXX_Marshal(b []byte, deterministic bool) ([]by } return b[:n], nil } -func (m *OpenApiFallThroughMode) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiFallThroughMode.Merge(m, src) +func (m *ShapeBotDefenseType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeBotDefenseType.Merge(m, src) } -func (m *OpenApiFallThroughMode) XXX_Size() int { +func (m *ShapeBotDefenseType) XXX_Size() int { return m.Size() } -func (m *OpenApiFallThroughMode) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiFallThroughMode.DiscardUnknown(m) +func (m *ShapeBotDefenseType) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeBotDefenseType.DiscardUnknown(m) } -var xxx_messageInfo_OpenApiFallThroughMode proto.InternalMessageInfo +var xxx_messageInfo_ShapeBotDefenseType proto.InternalMessageInfo -type isOpenApiFallThroughMode_FallThroughModeChoice interface { - isOpenApiFallThroughMode_FallThroughModeChoice() +type isShapeBotDefenseType_CorsSupportChoice interface { + isShapeBotDefenseType_CorsSupportChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type OpenApiFallThroughMode_FallThroughModeAllow struct { - FallThroughModeAllow *schema.Empty `protobuf:"bytes,4,opt,name=fall_through_mode_allow,json=fallThroughModeAllow,proto3,oneof" json:"fall_through_mode_allow,omitempty"` +type ShapeBotDefenseType_EnableCorsSupport struct { + EnableCorsSupport *schema.Empty `protobuf:"bytes,5,opt,name=enable_cors_support,json=enableCorsSupport,proto3,oneof" json:"enable_cors_support,omitempty"` } -type OpenApiFallThroughMode_FallThroughModeCustom struct { - FallThroughModeCustom *CustomFallThroughMode `protobuf:"bytes,5,opt,name=fall_through_mode_custom,json=fallThroughModeCustom,proto3,oneof" json:"fall_through_mode_custom,omitempty"` +type ShapeBotDefenseType_DisableCorsSupport struct { + DisableCorsSupport *schema.Empty `protobuf:"bytes,6,opt,name=disable_cors_support,json=disableCorsSupport,proto3,oneof" json:"disable_cors_support,omitempty"` } -func (*OpenApiFallThroughMode_FallThroughModeAllow) isOpenApiFallThroughMode_FallThroughModeChoice() { +func (*ShapeBotDefenseType_EnableCorsSupport) isShapeBotDefenseType_CorsSupportChoice() {} +func (*ShapeBotDefenseType_DisableCorsSupport) isShapeBotDefenseType_CorsSupportChoice() {} + +func (m *ShapeBotDefenseType) GetCorsSupportChoice() isShapeBotDefenseType_CorsSupportChoice { + if m != nil { + return m.CorsSupportChoice + } + return nil } -func (*OpenApiFallThroughMode_FallThroughModeCustom) isOpenApiFallThroughMode_FallThroughModeChoice() { + +func (m *ShapeBotDefenseType) GetRegionalEndpoint() ShapeBotDefenseRegion { + if m != nil { + return m.RegionalEndpoint + } + return AUTO } -func (m *OpenApiFallThroughMode) GetFallThroughModeChoice() isOpenApiFallThroughMode_FallThroughModeChoice { +func (m *ShapeBotDefenseType) GetPolicy() *ShapeBotDefensePolicyType { if m != nil { - return m.FallThroughModeChoice + return m.Policy } return nil } -func (m *OpenApiFallThroughMode) GetFallThroughModeAllow() *schema.Empty { - if x, ok := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeAllow); ok { - return x.FallThroughModeAllow +func (m *ShapeBotDefenseType) GetTimeout() uint32 { + if m != nil { + return m.Timeout + } + return 0 +} + +func (m *ShapeBotDefenseType) GetEnableCorsSupport() *schema.Empty { + if x, ok := m.GetCorsSupportChoice().(*ShapeBotDefenseType_EnableCorsSupport); ok { + return x.EnableCorsSupport } return nil } -func (m *OpenApiFallThroughMode) GetFallThroughModeCustom() *CustomFallThroughMode { - if x, ok := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeCustom); ok { - return x.FallThroughModeCustom +func (m *ShapeBotDefenseType) GetDisableCorsSupport() *schema.Empty { + if x, ok := m.GetCorsSupportChoice().(*ShapeBotDefenseType_DisableCorsSupport); ok { + return x.DisableCorsSupport } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiFallThroughMode) XXX_OneofWrappers() []interface{} { +func (*ShapeBotDefenseType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*OpenApiFallThroughMode_FallThroughModeAllow)(nil), - (*OpenApiFallThroughMode_FallThroughModeCustom)(nil), + (*ShapeBotDefenseType_EnableCorsSupport)(nil), + (*ShapeBotDefenseType_DisableCorsSupport)(nil), } } -// Custom Fall Through Mode +// BotDefenseAdvancedType // -// x-displayName: "Custom Fall Through Mode" -// Define the fall through settings -type CustomFallThroughMode struct { - // Custom Fall Through Rule List +// x-displayName: "Bot Defense Advanced" +// Bot Defense Advanced +type BotDefenseAdvancedType struct { + // Web + // + // x-displayName: "Infrastructure For Web" + // Select infrastructure for web. + Web *views.ObjectRefType `protobuf:"bytes,1,opt,name=web,proto3" json:"web,omitempty"` + // Mobile + // + // x-displayName: "Infrastructure For Mobile" + // Select infrastructure for mobile. + Mobile *views.ObjectRefType `protobuf:"bytes,2,opt,name=mobile,proto3" json:"mobile,omitempty"` + // BotDefenseAdvancedPolicyType // + // x-displayName: "Bot Defense Advanced Policy" // x-required - // x-displayName: "Custom Fall Through Rule List" - OpenApiValidationRules []*FallThroughRule `protobuf:"bytes,1,rep,name=open_api_validation_rules,json=openApiValidationRules,proto3" json:"open_api_validation_rules,omitempty"` + // Bot Defense Advanced Policy. + Policy *BotDefenseAdvancedPolicyType `protobuf:"bytes,3,opt,name=policy,proto3" json:"policy,omitempty"` } -func (m *CustomFallThroughMode) Reset() { *m = CustomFallThroughMode{} } -func (*CustomFallThroughMode) ProtoMessage() {} -func (*CustomFallThroughMode) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{47} +func (m *BotDefenseAdvancedType) Reset() { *m = BotDefenseAdvancedType{} } +func (*BotDefenseAdvancedType) ProtoMessage() {} +func (*BotDefenseAdvancedType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{28} } -func (m *CustomFallThroughMode) XXX_Unmarshal(b []byte) error { +func (m *BotDefenseAdvancedType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CustomFallThroughMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *BotDefenseAdvancedType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7085,69 +4496,97 @@ func (m *CustomFallThroughMode) XXX_Marshal(b []byte, deterministic bool) ([]byt } return b[:n], nil } -func (m *CustomFallThroughMode) XXX_Merge(src proto.Message) { - xxx_messageInfo_CustomFallThroughMode.Merge(m, src) +func (m *BotDefenseAdvancedType) XXX_Merge(src proto.Message) { + xxx_messageInfo_BotDefenseAdvancedType.Merge(m, src) } -func (m *CustomFallThroughMode) XXX_Size() int { +func (m *BotDefenseAdvancedType) XXX_Size() int { return m.Size() } -func (m *CustomFallThroughMode) XXX_DiscardUnknown() { - xxx_messageInfo_CustomFallThroughMode.DiscardUnknown(m) +func (m *BotDefenseAdvancedType) XXX_DiscardUnknown() { + xxx_messageInfo_BotDefenseAdvancedType.DiscardUnknown(m) +} + +var xxx_messageInfo_BotDefenseAdvancedType proto.InternalMessageInfo + +func (m *BotDefenseAdvancedType) GetWeb() *views.ObjectRefType { + if m != nil { + return m.Web + } + return nil } -var xxx_messageInfo_CustomFallThroughMode proto.InternalMessageInfo +func (m *BotDefenseAdvancedType) GetMobile() *views.ObjectRefType { + if m != nil { + return m.Mobile + } + return nil +} -func (m *CustomFallThroughMode) GetOpenApiValidationRules() []*FallThroughRule { +func (m *BotDefenseAdvancedType) GetPolicy() *BotDefenseAdvancedPolicyType { if m != nil { - return m.OpenApiValidationRules + return m.Policy } return nil } -// Fall Through Rule +// ShapeShapeBotDefensePolicyType // -// x-displayName: "Fall Through Rule" -// Fall Through Rule for a specific endpoint, base-path, or API group -type FallThroughRule struct { - // metadata +// x-displayName: "Bot Defense Policy" +// This defines various configuration options for Bot Defense policy. +type ShapeBotDefensePolicyType struct { + // AppEndpointType // - // x-displayName: "Metadata" + // x-displayName: "App Endpoint Type" // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // action choices + // List of protected application endpoints (max 128 items). + ProtectedAppEndpoints []*AppEndpointType `protobuf:"bytes,1,rep,name=protected_app_endpoints,json=protectedAppEndpoints,proto3" json:"protected_app_endpoints,omitempty"` + // JavaScript Choice // + // x-displayName: "JavaScript Insertion Settings" // x-required - // x-displayName: "Action" - // Choose what action to do when the rule will apply + // This defines a JavaScript insertion rule. + // + // Types that are valid to be assigned to JavaScriptChoice: + // *ShapeBotDefensePolicyType_DisableJsInsert + // *ShapeBotDefensePolicyType_JsInsertAllPages + // *ShapeBotDefensePolicyType_JsInsertAllPagesExcept + // *ShapeBotDefensePolicyType_JsInsertionRules + JavaScriptChoice isShapeBotDefensePolicyType_JavaScriptChoice `protobuf_oneof:"java_script_choice"` + // js_download_path + // + // x-displayName: "JavaScript Download Path" + // x-example: "value" + // Customize Bot Defense Client JavaScript path. If not specified, default `/common.js` + JsDownloadPath string `protobuf:"bytes,2,opt,name=js_download_path,json=jsDownloadPath,proto3" json:"js_download_path,omitempty"` + // javascript_mode // - // Types that are valid to be assigned to ActionChoice: - // *FallThroughRule_ActionSkip - // *FallThroughRule_ActionReport - // *FallThroughRule_ActionBlock - ActionChoice isFallThroughRule_ActionChoice `protobuf_oneof:"action_choice"` - // condition type choices + // x-displayName: "Web Client JavaScript Mode" + // x-required + // Determine the mode in which the JavaScript is loaded into the entry page. + // The JavaScript is split into 2 chunks. + // The larger chunk can be loaded asynchronously or synchronously. It can also be cacheable or non-cacheable on the browser. + JavascriptMode schema.JavaScriptMode `protobuf:"varint,11,opt,name=javascript_mode,json=javascriptMode,proto3,enum=ves.io.schema.JavaScriptMode" json:"javascript_mode,omitempty"` + // Mobile SDK Choice // - // x-displayName: "Type" + // x-displayName: "Mobile SDK Settings" // x-required - // Choose type of granularity this rule applies to + // This defines mobile SDK configuration. // - // Types that are valid to be assigned to ConditionTypeChoice: - // *FallThroughRule_ApiEndpoint - // *FallThroughRule_BasePath - // *FallThroughRule_ApiGroup - ConditionTypeChoice isFallThroughRule_ConditionTypeChoice `protobuf_oneof:"condition_type_choice"` + // Types that are valid to be assigned to MobileSdkChoice: + // *ShapeBotDefensePolicyType_DisableMobileSdk + // *ShapeBotDefensePolicyType_MobileSdkConfig + MobileSdkChoice isShapeBotDefensePolicyType_MobileSdkChoice `protobuf_oneof:"mobile_sdk_choice"` } -func (m *FallThroughRule) Reset() { *m = FallThroughRule{} } -func (*FallThroughRule) ProtoMessage() {} -func (*FallThroughRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{48} +func (m *ShapeBotDefensePolicyType) Reset() { *m = ShapeBotDefensePolicyType{} } +func (*ShapeBotDefensePolicyType) ProtoMessage() {} +func (*ShapeBotDefensePolicyType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{29} } -func (m *FallThroughRule) XXX_Unmarshal(b []byte) error { +func (m *ShapeBotDefensePolicyType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *FallThroughRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeBotDefensePolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7155,163 +4594,167 @@ func (m *FallThroughRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, err } return b[:n], nil } -func (m *FallThroughRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_FallThroughRule.Merge(m, src) +func (m *ShapeBotDefensePolicyType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeBotDefensePolicyType.Merge(m, src) } -func (m *FallThroughRule) XXX_Size() int { +func (m *ShapeBotDefensePolicyType) XXX_Size() int { return m.Size() } -func (m *FallThroughRule) XXX_DiscardUnknown() { - xxx_messageInfo_FallThroughRule.DiscardUnknown(m) +func (m *ShapeBotDefensePolicyType) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeBotDefensePolicyType.DiscardUnknown(m) } -var xxx_messageInfo_FallThroughRule proto.InternalMessageInfo +var xxx_messageInfo_ShapeBotDefensePolicyType proto.InternalMessageInfo -type isFallThroughRule_ActionChoice interface { - isFallThroughRule_ActionChoice() +type isShapeBotDefensePolicyType_JavaScriptChoice interface { + isShapeBotDefensePolicyType_JavaScriptChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isFallThroughRule_ConditionTypeChoice interface { - isFallThroughRule_ConditionTypeChoice() +type isShapeBotDefensePolicyType_MobileSdkChoice interface { + isShapeBotDefensePolicyType_MobileSdkChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type FallThroughRule_ActionSkip struct { - ActionSkip *schema.Empty `protobuf:"bytes,3,opt,name=action_skip,json=actionSkip,proto3,oneof" json:"action_skip,omitempty"` +type ShapeBotDefensePolicyType_DisableJsInsert struct { + DisableJsInsert *schema.Empty `protobuf:"bytes,4,opt,name=disable_js_insert,json=disableJsInsert,proto3,oneof" json:"disable_js_insert,omitempty"` } -type FallThroughRule_ActionReport struct { - ActionReport *schema.Empty `protobuf:"bytes,4,opt,name=action_report,json=actionReport,proto3,oneof" json:"action_report,omitempty"` +type ShapeBotDefensePolicyType_JsInsertAllPages struct { + JsInsertAllPages *ShapeJavaScriptInsertAllType `protobuf:"bytes,5,opt,name=js_insert_all_pages,json=jsInsertAllPages,proto3,oneof" json:"js_insert_all_pages,omitempty"` } -type FallThroughRule_ActionBlock struct { - ActionBlock *schema.Empty `protobuf:"bytes,5,opt,name=action_block,json=actionBlock,proto3,oneof" json:"action_block,omitempty"` +type ShapeBotDefensePolicyType_JsInsertAllPagesExcept struct { + JsInsertAllPagesExcept *ShapeJavaScriptInsertAllWithExceptionsType `protobuf:"bytes,6,opt,name=js_insert_all_pages_except,json=jsInsertAllPagesExcept,proto3,oneof" json:"js_insert_all_pages_except,omitempty"` } -type FallThroughRule_ApiEndpoint struct { - ApiEndpoint *ApiEndpointDetails `protobuf:"bytes,10,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof" json:"api_endpoint,omitempty"` +type ShapeBotDefensePolicyType_JsInsertionRules struct { + JsInsertionRules *ShapeJavaScriptInsertType `protobuf:"bytes,7,opt,name=js_insertion_rules,json=jsInsertionRules,proto3,oneof" json:"js_insertion_rules,omitempty"` } -type FallThroughRule_BasePath struct { - BasePath string `protobuf:"bytes,8,opt,name=base_path,json=basePath,proto3,oneof" json:"base_path,omitempty"` +type ShapeBotDefensePolicyType_DisableMobileSdk struct { + DisableMobileSdk *schema.Empty `protobuf:"bytes,9,opt,name=disable_mobile_sdk,json=disableMobileSdk,proto3,oneof" json:"disable_mobile_sdk,omitempty"` } -type FallThroughRule_ApiGroup struct { - ApiGroup string `protobuf:"bytes,9,opt,name=api_group,json=apiGroup,proto3,oneof" json:"api_group,omitempty"` +type ShapeBotDefensePolicyType_MobileSdkConfig struct { + MobileSdkConfig *MobileSDKConfigType `protobuf:"bytes,10,opt,name=mobile_sdk_config,json=mobileSdkConfig,proto3,oneof" json:"mobile_sdk_config,omitempty"` } -func (*FallThroughRule_ActionSkip) isFallThroughRule_ActionChoice() {} -func (*FallThroughRule_ActionReport) isFallThroughRule_ActionChoice() {} -func (*FallThroughRule_ActionBlock) isFallThroughRule_ActionChoice() {} -func (*FallThroughRule_ApiEndpoint) isFallThroughRule_ConditionTypeChoice() {} -func (*FallThroughRule_BasePath) isFallThroughRule_ConditionTypeChoice() {} -func (*FallThroughRule_ApiGroup) isFallThroughRule_ConditionTypeChoice() {} +func (*ShapeBotDefensePolicyType_DisableJsInsert) isShapeBotDefensePolicyType_JavaScriptChoice() {} +func (*ShapeBotDefensePolicyType_JsInsertAllPages) isShapeBotDefensePolicyType_JavaScriptChoice() {} +func (*ShapeBotDefensePolicyType_JsInsertAllPagesExcept) isShapeBotDefensePolicyType_JavaScriptChoice() { +} +func (*ShapeBotDefensePolicyType_JsInsertionRules) isShapeBotDefensePolicyType_JavaScriptChoice() {} +func (*ShapeBotDefensePolicyType_DisableMobileSdk) isShapeBotDefensePolicyType_MobileSdkChoice() {} +func (*ShapeBotDefensePolicyType_MobileSdkConfig) isShapeBotDefensePolicyType_MobileSdkChoice() {} -func (m *FallThroughRule) GetActionChoice() isFallThroughRule_ActionChoice { +func (m *ShapeBotDefensePolicyType) GetJavaScriptChoice() isShapeBotDefensePolicyType_JavaScriptChoice { if m != nil { - return m.ActionChoice + return m.JavaScriptChoice } return nil } -func (m *FallThroughRule) GetConditionTypeChoice() isFallThroughRule_ConditionTypeChoice { +func (m *ShapeBotDefensePolicyType) GetMobileSdkChoice() isShapeBotDefensePolicyType_MobileSdkChoice { if m != nil { - return m.ConditionTypeChoice + return m.MobileSdkChoice } return nil } -func (m *FallThroughRule) GetMetadata() *schema.MessageMetaType { +func (m *ShapeBotDefensePolicyType) GetProtectedAppEndpoints() []*AppEndpointType { if m != nil { - return m.Metadata + return m.ProtectedAppEndpoints } return nil } -func (m *FallThroughRule) GetActionSkip() *schema.Empty { - if x, ok := m.GetActionChoice().(*FallThroughRule_ActionSkip); ok { - return x.ActionSkip +func (m *ShapeBotDefensePolicyType) GetDisableJsInsert() *schema.Empty { + if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_DisableJsInsert); ok { + return x.DisableJsInsert } return nil } -func (m *FallThroughRule) GetActionReport() *schema.Empty { - if x, ok := m.GetActionChoice().(*FallThroughRule_ActionReport); ok { - return x.ActionReport +func (m *ShapeBotDefensePolicyType) GetJsInsertAllPages() *ShapeJavaScriptInsertAllType { + if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPages); ok { + return x.JsInsertAllPages } return nil } -func (m *FallThroughRule) GetActionBlock() *schema.Empty { - if x, ok := m.GetActionChoice().(*FallThroughRule_ActionBlock); ok { - return x.ActionBlock +func (m *ShapeBotDefensePolicyType) GetJsInsertAllPagesExcept() *ShapeJavaScriptInsertAllWithExceptionsType { + if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPagesExcept); ok { + return x.JsInsertAllPagesExcept } return nil } -func (m *FallThroughRule) GetApiEndpoint() *ApiEndpointDetails { - if x, ok := m.GetConditionTypeChoice().(*FallThroughRule_ApiEndpoint); ok { - return x.ApiEndpoint +func (m *ShapeBotDefensePolicyType) GetJsInsertionRules() *ShapeJavaScriptInsertType { + if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertionRules); ok { + return x.JsInsertionRules } return nil } -func (m *FallThroughRule) GetBasePath() string { - if x, ok := m.GetConditionTypeChoice().(*FallThroughRule_BasePath); ok { - return x.BasePath +func (m *ShapeBotDefensePolicyType) GetJsDownloadPath() string { + if m != nil { + return m.JsDownloadPath } return "" } -func (m *FallThroughRule) GetApiGroup() string { - if x, ok := m.GetConditionTypeChoice().(*FallThroughRule_ApiGroup); ok { - return x.ApiGroup +func (m *ShapeBotDefensePolicyType) GetJavascriptMode() schema.JavaScriptMode { + if m != nil { + return m.JavascriptMode } - return "" + return schema.ASYNC_JS_NO_CACHING +} + +func (m *ShapeBotDefensePolicyType) GetDisableMobileSdk() *schema.Empty { + if x, ok := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_DisableMobileSdk); ok { + return x.DisableMobileSdk + } + return nil +} + +func (m *ShapeBotDefensePolicyType) GetMobileSdkConfig() *MobileSDKConfigType { + if x, ok := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_MobileSdkConfig); ok { + return x.MobileSdkConfig + } + return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*FallThroughRule) XXX_OneofWrappers() []interface{} { +func (*ShapeBotDefensePolicyType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*FallThroughRule_ActionSkip)(nil), - (*FallThroughRule_ActionReport)(nil), - (*FallThroughRule_ActionBlock)(nil), - (*FallThroughRule_ApiEndpoint)(nil), - (*FallThroughRule_BasePath)(nil), - (*FallThroughRule_ApiGroup)(nil), + (*ShapeBotDefensePolicyType_DisableJsInsert)(nil), + (*ShapeBotDefensePolicyType_JsInsertAllPages)(nil), + (*ShapeBotDefensePolicyType_JsInsertAllPagesExcept)(nil), + (*ShapeBotDefensePolicyType_JsInsertionRules)(nil), + (*ShapeBotDefensePolicyType_DisableMobileSdk)(nil), + (*ShapeBotDefensePolicyType_MobileSdkConfig)(nil), } } -// Open API Validation Mode Active For Request +// MobileTrafficIdentifierType // -// x-displayName: "Open API Validation Mode Active" -// Validation mode properties of request -type OpenApiValidationModeActive struct { - // Request Validation Enforcement Mode - // - // x-displayName: "Request Validation Enforcement Type" - // x-required - // Enforcement type of OpenAPI specification for the request - // - // Types that are valid to be assigned to ValidationEnforcementType: - // *OpenApiValidationModeActive_EnforcementReport - // *OpenApiValidationModeActive_EnforcementBlock - ValidationEnforcementType isOpenApiValidationModeActive_ValidationEnforcementType `protobuf_oneof:"validation_enforcement_type"` - // Request Validation Properties +// x-displayName: "Mobile Traffic Identifier" +// Mobile traffic identifier type. +type MobileTrafficIdentifierType struct { + // Mobile headers // - // x-displayName: "Request Validation Properties" - // x-required - // List of properties of the request to validate according to the OpenAPI specification file (a.k.a. swagger) - RequestValidationProperties []schema.OpenApiValidationProperties `protobuf:"varint,4,rep,packed,name=request_validation_properties,json=requestValidationProperties,proto3,enum=ves.io.schema.OpenApiValidationProperties" json:"request_validation_properties,omitempty"` + // x-displayName: "Headers" + // Headers that can be used to identify mobile traffic. + Headers []*policy.HeaderMatcherTypeBasic `protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty"` } -func (m *OpenApiValidationModeActive) Reset() { *m = OpenApiValidationModeActive{} } -func (*OpenApiValidationModeActive) ProtoMessage() {} -func (*OpenApiValidationModeActive) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{49} +func (m *MobileTrafficIdentifierType) Reset() { *m = MobileTrafficIdentifierType{} } +func (*MobileTrafficIdentifierType) ProtoMessage() {} +func (*MobileTrafficIdentifierType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{30} } -func (m *OpenApiValidationModeActive) XXX_Unmarshal(b []byte) error { +func (m *MobileTrafficIdentifierType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OpenApiValidationModeActive) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *MobileTrafficIdentifierType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7319,105 +4762,52 @@ func (m *OpenApiValidationModeActive) XXX_Marshal(b []byte, deterministic bool) } return b[:n], nil } -func (m *OpenApiValidationModeActive) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiValidationModeActive.Merge(m, src) +func (m *MobileTrafficIdentifierType) XXX_Merge(src proto.Message) { + xxx_messageInfo_MobileTrafficIdentifierType.Merge(m, src) } -func (m *OpenApiValidationModeActive) XXX_Size() int { +func (m *MobileTrafficIdentifierType) XXX_Size() int { return m.Size() } -func (m *OpenApiValidationModeActive) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiValidationModeActive.DiscardUnknown(m) -} - -var xxx_messageInfo_OpenApiValidationModeActive proto.InternalMessageInfo - -type isOpenApiValidationModeActive_ValidationEnforcementType interface { - isOpenApiValidationModeActive_ValidationEnforcementType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type OpenApiValidationModeActive_EnforcementReport struct { - EnforcementReport *schema.Empty `protobuf:"bytes,2,opt,name=enforcement_report,json=enforcementReport,proto3,oneof" json:"enforcement_report,omitempty"` -} -type OpenApiValidationModeActive_EnforcementBlock struct { - EnforcementBlock *schema.Empty `protobuf:"bytes,3,opt,name=enforcement_block,json=enforcementBlock,proto3,oneof" json:"enforcement_block,omitempty"` -} - -func (*OpenApiValidationModeActive_EnforcementReport) isOpenApiValidationModeActive_ValidationEnforcementType() { -} -func (*OpenApiValidationModeActive_EnforcementBlock) isOpenApiValidationModeActive_ValidationEnforcementType() { -} - -func (m *OpenApiValidationModeActive) GetValidationEnforcementType() isOpenApiValidationModeActive_ValidationEnforcementType { - if m != nil { - return m.ValidationEnforcementType - } - return nil -} - -func (m *OpenApiValidationModeActive) GetEnforcementReport() *schema.Empty { - if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementReport); ok { - return x.EnforcementReport - } - return nil +func (m *MobileTrafficIdentifierType) XXX_DiscardUnknown() { + xxx_messageInfo_MobileTrafficIdentifierType.DiscardUnknown(m) } -func (m *OpenApiValidationModeActive) GetEnforcementBlock() *schema.Empty { - if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementBlock); ok { - return x.EnforcementBlock - } - return nil -} +var xxx_messageInfo_MobileTrafficIdentifierType proto.InternalMessageInfo -func (m *OpenApiValidationModeActive) GetRequestValidationProperties() []schema.OpenApiValidationProperties { +func (m *MobileTrafficIdentifierType) GetHeaders() []*policy.HeaderMatcherTypeBasic { if m != nil { - return m.RequestValidationProperties + return m.Headers } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiValidationModeActive) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*OpenApiValidationModeActive_EnforcementReport)(nil), - (*OpenApiValidationModeActive_EnforcementBlock)(nil), - } -} - -// Open API Validation Mode Active For Response +// MobileSDKConfigType // -// x-displayName: "Open API Validation Mode Active" -// Validation mode properties of response -type OpenApiValidationModeActiveResponse struct { - // Response Validation Enforcement Mode - // - // x-displayName: "Response Validation Enforcement Type" - // x-required - // Enforcement type of OpenAPI specification for the response +// x-displayName: "Mobile SDK Configuration" +// Mobile SDK configuration. +type MobileSDKConfigType struct { + // Reload header name // - // Types that are valid to be assigned to ValidationEnforcementType: - // *OpenApiValidationModeActiveResponse_EnforcementReport - // *OpenApiValidationModeActiveResponse_EnforcementBlock - ValidationEnforcementType isOpenApiValidationModeActiveResponse_ValidationEnforcementType `protobuf_oneof:"validation_enforcement_type"` - // Response Validation Properties + // x-displayName: "Reload Header Name" + // x-example: "x-oomZEZlK" + // Header that is used for SDK configuration sync. + ReloadHeaderName string `protobuf:"bytes,1,opt,name=reload_header_name,json=reloadHeaderName,proto3" json:"reload_header_name,omitempty"` + // Mobile Traffic Identifier Type // - // x-displayName: "Response Validation Properties" - // x-required - // List of properties of the response to validate according to the OpenAPI specification file (a.k.a. swagger) - ResponseValidationProperties []schema.OpenApiValidationProperties `protobuf:"varint,4,rep,packed,name=response_validation_properties,json=responseValidationProperties,proto3,enum=ves.io.schema.OpenApiValidationProperties" json:"response_validation_properties,omitempty"` + // x-displayName: "Mobile Traffic Identifier" + // Mobile traffic identifier type. + MobileIdentifier *MobileTrafficIdentifierType `protobuf:"bytes,2,opt,name=mobile_identifier,json=mobileIdentifier,proto3" json:"mobile_identifier,omitempty"` } -func (m *OpenApiValidationModeActiveResponse) Reset() { *m = OpenApiValidationModeActiveResponse{} } -func (*OpenApiValidationModeActiveResponse) ProtoMessage() {} -func (*OpenApiValidationModeActiveResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{50} +func (m *MobileSDKConfigType) Reset() { *m = MobileSDKConfigType{} } +func (*MobileSDKConfigType) ProtoMessage() {} +func (*MobileSDKConfigType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{31} } -func (m *OpenApiValidationModeActiveResponse) XXX_Unmarshal(b []byte) error { +func (m *MobileSDKConfigType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OpenApiValidationModeActiveResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *MobileSDKConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7425,117 +4815,116 @@ func (m *OpenApiValidationModeActiveResponse) XXX_Marshal(b []byte, deterministi } return b[:n], nil } -func (m *OpenApiValidationModeActiveResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiValidationModeActiveResponse.Merge(m, src) +func (m *MobileSDKConfigType) XXX_Merge(src proto.Message) { + xxx_messageInfo_MobileSDKConfigType.Merge(m, src) } -func (m *OpenApiValidationModeActiveResponse) XXX_Size() int { +func (m *MobileSDKConfigType) XXX_Size() int { return m.Size() } -func (m *OpenApiValidationModeActiveResponse) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiValidationModeActiveResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_OpenApiValidationModeActiveResponse proto.InternalMessageInfo - -type isOpenApiValidationModeActiveResponse_ValidationEnforcementType interface { - isOpenApiValidationModeActiveResponse_ValidationEnforcementType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type OpenApiValidationModeActiveResponse_EnforcementReport struct { - EnforcementReport *schema.Empty `protobuf:"bytes,2,opt,name=enforcement_report,json=enforcementReport,proto3,oneof" json:"enforcement_report,omitempty"` -} -type OpenApiValidationModeActiveResponse_EnforcementBlock struct { - EnforcementBlock *schema.Empty `protobuf:"bytes,3,opt,name=enforcement_block,json=enforcementBlock,proto3,oneof" json:"enforcement_block,omitempty"` +func (m *MobileSDKConfigType) XXX_DiscardUnknown() { + xxx_messageInfo_MobileSDKConfigType.DiscardUnknown(m) } -func (*OpenApiValidationModeActiveResponse_EnforcementReport) isOpenApiValidationModeActiveResponse_ValidationEnforcementType() { -} -func (*OpenApiValidationModeActiveResponse_EnforcementBlock) isOpenApiValidationModeActiveResponse_ValidationEnforcementType() { -} +var xxx_messageInfo_MobileSDKConfigType proto.InternalMessageInfo -func (m *OpenApiValidationModeActiveResponse) GetValidationEnforcementType() isOpenApiValidationModeActiveResponse_ValidationEnforcementType { +func (m *MobileSDKConfigType) GetReloadHeaderName() string { if m != nil { - return m.ValidationEnforcementType - } - return nil -} - -func (m *OpenApiValidationModeActiveResponse) GetEnforcementReport() *schema.Empty { - if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementReport); ok { - return x.EnforcementReport - } - return nil -} - -func (m *OpenApiValidationModeActiveResponse) GetEnforcementBlock() *schema.Empty { - if x, ok := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementBlock); ok { - return x.EnforcementBlock + return m.ReloadHeaderName } - return nil + return "" } -func (m *OpenApiValidationModeActiveResponse) GetResponseValidationProperties() []schema.OpenApiValidationProperties { +func (m *MobileSDKConfigType) GetMobileIdentifier() *MobileTrafficIdentifierType { if m != nil { - return m.ResponseValidationProperties + return m.MobileIdentifier } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiValidationModeActiveResponse) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*OpenApiValidationModeActiveResponse_EnforcementReport)(nil), - (*OpenApiValidationModeActiveResponse_EnforcementBlock)(nil), - } -} - -// ValidateApiBySpecRule -// -// x-displayName: "Custom List" -// Define API groups, base paths, or API endpoints and their OpenAPI validation modes. +// AppEndpointType // -// Any other api-endpoint not listed will act according to "Fall Through Mode". -type ValidateApiBySpecRule struct { - // Validation List +// x-displayName: "Application Endpoint" +// Application Endpoint. +type AppEndpointType struct { + // metadata + // + // x-displayName: "Metadata" + // x-required + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // HTTP Methods + // + // x-displayName: "HTTP Methods" + // x-required + // List of HTTP methods. + HttpMethods []schema.BotHttpMethod `protobuf:"varint,2,rep,packed,name=http_methods,json=httpMethods,proto3,enum=ves.io.schema.BotHttpMethod" json:"http_methods,omitempty"` + // Protocol + // + // x-displayName: "Protocol" + // Protocol. + Protocol URLScheme `protobuf:"varint,3,opt,name=protocol,proto3,enum=ves.io.schema.views.http_loadbalancer.URLScheme" json:"protocol,omitempty"` + // Path + // + // x-displayName: "Path" + // x-required + // Matching URI path of the route. + Path *schema.PathMatcherType `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"` + // Domain Matcher + // + // x-displayName: "Domain Matcher" + // This defines domain matcher. + // + // Types that are valid to be assigned to DomainMatcherChoice: + // *AppEndpointType_AnyDomain + // *AppEndpointType_Domain + DomainMatcherChoice isAppEndpointType_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` + // Traffic channel // + // x-displayName: "Traffic Channel" // x-required - // x-displayName: "Validation List" - OpenApiValidationRules []*OpenApiValidationRule `protobuf:"bytes,1,rep,name=open_api_validation_rules,json=openApiValidationRules,proto3" json:"open_api_validation_rules,omitempty"` - // Fall Through Mode + // Select traffic channel. + // + // Types that are valid to be assigned to AppTrafficTypeChoice: + // *AppEndpointType_Web + // *AppEndpointType_Mobile + // *AppEndpointType_WebMobile + AppTrafficTypeChoice isAppEndpointType_AppTrafficTypeChoice `protobuf_oneof:"app_traffic_type_choice"` + // Mitigation // - // x-displayName: "Fall Through Mode" + // x-displayName: "Bot Traffic Mitigation" // x-required - // Determine what to do with unprotected endpoints (not in the OpenAPI specification file (a.k.a. swagger) or doesn't have a specific rule in custom rules) - FallThroughMode *OpenApiFallThroughMode `protobuf:"bytes,2,opt,name=fall_through_mode,json=fallThroughMode,proto3" json:"fall_through_mode,omitempty"` - // Policy of over-sized body + // Mitigation action. + Mitigation *policy.ShapeBotMitigationAction `protobuf:"bytes,12,opt,name=mitigation,proto3" json:"mitigation,omitempty"` + // Flow label // - // x-displayName: "Policy for Over-Sized Body in Request/Response" - // Policy of handling request/response with too long body - // DEPRECATED. use settings.oversized_body_choice + // x-displayName: "Endpoint Label" + // Endpoint label category + // + // Types that are valid to be assigned to FlowLabelChoice: + // *AppEndpointType_UndefinedFlowLabel + // *AppEndpointType_FlowLabel + FlowLabelChoice isAppEndpointType_FlowLabelChoice `protobuf_oneof:"flow_label_choice"` + // Good Bot // - // Types that are valid to be assigned to OversizedBodyChoice: - // *ValidateApiBySpecRule_OversizedBodySkipValidation - // *ValidateApiBySpecRule_OversizedBodyFailValidation - OversizedBodyChoice isValidateApiBySpecRule_OversizedBodyChoice `protobuf_oneof:"oversized_body_choice"` - // OpenAPI specification validation common settings + // x-displayName: "Good Bot Detection Settings" + // x-required + // The system will distinguish between good bot traffic and malicious automation. Select if you want to allow good bots to continue to the origin or receive the same mitigation handling as defined for all automated traffic. // - // x-displayName: "OpenAPI specification validation settings" - // OpenAPI specification validation settings relevant for "API Inventory" enforcement and for "Custom list" enforcement - Settings *OpenApiValidationCommonSettings `protobuf:"bytes,6,opt,name=settings,proto3" json:"settings,omitempty"` + // Types that are valid to be assigned to GoodbotChoice: + // *AppEndpointType_AllowGoodBots + // *AppEndpointType_MitigateGoodBots + GoodbotChoice isAppEndpointType_GoodbotChoice `protobuf_oneof:"goodbot_choice"` } -func (m *ValidateApiBySpecRule) Reset() { *m = ValidateApiBySpecRule{} } -func (*ValidateApiBySpecRule) ProtoMessage() {} -func (*ValidateApiBySpecRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{51} +func (m *AppEndpointType) Reset() { *m = AppEndpointType{} } +func (*AppEndpointType) ProtoMessage() {} +func (*AppEndpointType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{32} } -func (m *ValidateApiBySpecRule) XXX_Unmarshal(b []byte) error { +func (m *AppEndpointType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ValidateApiBySpecRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *AppEndpointType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7543,295 +4932,250 @@ func (m *ValidateApiBySpecRule) XXX_Marshal(b []byte, deterministic bool) ([]byt } return b[:n], nil } -func (m *ValidateApiBySpecRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_ValidateApiBySpecRule.Merge(m, src) +func (m *AppEndpointType) XXX_Merge(src proto.Message) { + xxx_messageInfo_AppEndpointType.Merge(m, src) } -func (m *ValidateApiBySpecRule) XXX_Size() int { +func (m *AppEndpointType) XXX_Size() int { return m.Size() } -func (m *ValidateApiBySpecRule) XXX_DiscardUnknown() { - xxx_messageInfo_ValidateApiBySpecRule.DiscardUnknown(m) +func (m *AppEndpointType) XXX_DiscardUnknown() { + xxx_messageInfo_AppEndpointType.DiscardUnknown(m) } -var xxx_messageInfo_ValidateApiBySpecRule proto.InternalMessageInfo +var xxx_messageInfo_AppEndpointType proto.InternalMessageInfo -type isValidateApiBySpecRule_OversizedBodyChoice interface { - isValidateApiBySpecRule_OversizedBodyChoice() +type isAppEndpointType_DomainMatcherChoice interface { + isAppEndpointType_DomainMatcherChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } - -type ValidateApiBySpecRule_OversizedBodySkipValidation struct { - OversizedBodySkipValidation *schema.Empty `protobuf:"bytes,4,opt,name=oversized_body_skip_validation,json=oversizedBodySkipValidation,proto3,oneof" json:"oversized_body_skip_validation,omitempty"` +type isAppEndpointType_AppTrafficTypeChoice interface { + isAppEndpointType_AppTrafficTypeChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isAppEndpointType_FlowLabelChoice interface { + isAppEndpointType_FlowLabelChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ValidateApiBySpecRule_OversizedBodyFailValidation struct { - OversizedBodyFailValidation *schema.Empty `protobuf:"bytes,5,opt,name=oversized_body_fail_validation,json=oversizedBodyFailValidation,proto3,oneof" json:"oversized_body_fail_validation,omitempty"` +type isAppEndpointType_GoodbotChoice interface { + isAppEndpointType_GoodbotChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (*ValidateApiBySpecRule_OversizedBodySkipValidation) isValidateApiBySpecRule_OversizedBodyChoice() { +type AppEndpointType_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,6,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +} +type AppEndpointType_Domain struct { + Domain *schema.DomainType `protobuf:"bytes,7,opt,name=domain,proto3,oneof" json:"domain,omitempty"` +} +type AppEndpointType_Web struct { + Web *schema.Empty `protobuf:"bytes,9,opt,name=web,proto3,oneof" json:"web,omitempty"` +} +type AppEndpointType_Mobile struct { + Mobile *schema.Empty `protobuf:"bytes,10,opt,name=mobile,proto3,oneof" json:"mobile,omitempty"` +} +type AppEndpointType_WebMobile struct { + WebMobile *WebMobileTrafficType `protobuf:"bytes,11,opt,name=web_mobile,json=webMobile,proto3,oneof" json:"web_mobile,omitempty"` +} +type AppEndpointType_UndefinedFlowLabel struct { + UndefinedFlowLabel *schema.Empty `protobuf:"bytes,14,opt,name=undefined_flow_label,json=undefinedFlowLabel,proto3,oneof" json:"undefined_flow_label,omitempty"` +} +type AppEndpointType_FlowLabel struct { + FlowLabel *schema.BotDefenseFlowLabelCategoriesChoiceType `protobuf:"bytes,15,opt,name=flow_label,json=flowLabel,proto3,oneof" json:"flow_label,omitempty"` +} +type AppEndpointType_AllowGoodBots struct { + AllowGoodBots *schema.Empty `protobuf:"bytes,19,opt,name=allow_good_bots,json=allowGoodBots,proto3,oneof" json:"allow_good_bots,omitempty"` } -func (*ValidateApiBySpecRule_OversizedBodyFailValidation) isValidateApiBySpecRule_OversizedBodyChoice() { +type AppEndpointType_MitigateGoodBots struct { + MitigateGoodBots *schema.Empty `protobuf:"bytes,17,opt,name=mitigate_good_bots,json=mitigateGoodBots,proto3,oneof" json:"mitigate_good_bots,omitempty"` } -func (m *ValidateApiBySpecRule) GetOversizedBodyChoice() isValidateApiBySpecRule_OversizedBodyChoice { +func (*AppEndpointType_AnyDomain) isAppEndpointType_DomainMatcherChoice() {} +func (*AppEndpointType_Domain) isAppEndpointType_DomainMatcherChoice() {} +func (*AppEndpointType_Web) isAppEndpointType_AppTrafficTypeChoice() {} +func (*AppEndpointType_Mobile) isAppEndpointType_AppTrafficTypeChoice() {} +func (*AppEndpointType_WebMobile) isAppEndpointType_AppTrafficTypeChoice() {} +func (*AppEndpointType_UndefinedFlowLabel) isAppEndpointType_FlowLabelChoice() {} +func (*AppEndpointType_FlowLabel) isAppEndpointType_FlowLabelChoice() {} +func (*AppEndpointType_AllowGoodBots) isAppEndpointType_GoodbotChoice() {} +func (*AppEndpointType_MitigateGoodBots) isAppEndpointType_GoodbotChoice() {} + +func (m *AppEndpointType) GetDomainMatcherChoice() isAppEndpointType_DomainMatcherChoice { if m != nil { - return m.OversizedBodyChoice + return m.DomainMatcherChoice } return nil } - -func (m *ValidateApiBySpecRule) GetOpenApiValidationRules() []*OpenApiValidationRule { +func (m *AppEndpointType) GetAppTrafficTypeChoice() isAppEndpointType_AppTrafficTypeChoice { if m != nil { - return m.OpenApiValidationRules + return m.AppTrafficTypeChoice } return nil } - -func (m *ValidateApiBySpecRule) GetFallThroughMode() *OpenApiFallThroughMode { +func (m *AppEndpointType) GetFlowLabelChoice() isAppEndpointType_FlowLabelChoice { if m != nil { - return m.FallThroughMode + return m.FlowLabelChoice } return nil } - -// Deprecated: Do not use. -func (m *ValidateApiBySpecRule) GetOversizedBodySkipValidation() *schema.Empty { - if x, ok := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodySkipValidation); ok { - return x.OversizedBodySkipValidation +func (m *AppEndpointType) GetGoodbotChoice() isAppEndpointType_GoodbotChoice { + if m != nil { + return m.GoodbotChoice } return nil } -// Deprecated: Do not use. -func (m *ValidateApiBySpecRule) GetOversizedBodyFailValidation() *schema.Empty { - if x, ok := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodyFailValidation); ok { - return x.OversizedBodyFailValidation +func (m *AppEndpointType) GetMetadata() *schema.MessageMetaType { + if m != nil { + return m.Metadata } return nil } -func (m *ValidateApiBySpecRule) GetSettings() *OpenApiValidationCommonSettings { +func (m *AppEndpointType) GetHttpMethods() []schema.BotHttpMethod { if m != nil { - return m.Settings + return m.HttpMethods } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ValidateApiBySpecRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ValidateApiBySpecRule_OversizedBodySkipValidation)(nil), - (*ValidateApiBySpecRule_OversizedBodyFailValidation)(nil), +func (m *AppEndpointType) GetProtocol() URLScheme { + if m != nil { + return m.Protocol } + return BOTH } -// OpenAPI Validation Rule -// -// x-displayName: "OpenAPI Validation Rule" -// OpenAPI Validation Rule for a specific endpoint, base-path, or API group -type OpenApiValidationRule struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // Validation Mode - // - // x-displayName: "Validation Mode" - // x-required - // Validation mode of OpenAPI specification. - // When a validation mismatch occurs on a request to one of the endpoints listed on the OpenAPI specification file (a.k.a. swagger) - ValidationMode *OpenApiValidationMode `protobuf:"bytes,2,opt,name=validation_mode,json=validationMode,proto3" json:"validation_mode,omitempty"` - // domain choices - // - // x-required - // x-displayName: "Domain" - // Choose if the rule will apply for all domains or a specific one. - // - // Types that are valid to be assigned to DomainChoice: - // *OpenApiValidationRule_AnyDomain - // *OpenApiValidationRule_SpecificDomain - DomainChoice isOpenApiValidationRule_DomainChoice `protobuf_oneof:"domain_choice"` - // condition type choices - // - // x-displayName: "Type" - // x-required - // Choose type of granularity this rule applies to - // - // Types that are valid to be assigned to ConditionTypeChoice: - // *OpenApiValidationRule_ApiEndpoint - // *OpenApiValidationRule_BasePath - // *OpenApiValidationRule_ApiGroup - ConditionTypeChoice isOpenApiValidationRule_ConditionTypeChoice `protobuf_oneof:"condition_type_choice"` -} - -func (m *OpenApiValidationRule) Reset() { *m = OpenApiValidationRule{} } -func (*OpenApiValidationRule) ProtoMessage() {} -func (*OpenApiValidationRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{52} -} -func (m *OpenApiValidationRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *OpenApiValidationRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *AppEndpointType) GetPath() *schema.PathMatcherType { + if m != nil { + return m.Path } - return b[:n], nil -} -func (m *OpenApiValidationRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_OpenApiValidationRule.Merge(m, src) -} -func (m *OpenApiValidationRule) XXX_Size() int { - return m.Size() -} -func (m *OpenApiValidationRule) XXX_DiscardUnknown() { - xxx_messageInfo_OpenApiValidationRule.DiscardUnknown(m) -} - -var xxx_messageInfo_OpenApiValidationRule proto.InternalMessageInfo - -type isOpenApiValidationRule_DomainChoice interface { - isOpenApiValidationRule_DomainChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isOpenApiValidationRule_ConditionTypeChoice interface { - isOpenApiValidationRule_ConditionTypeChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + return nil } -type OpenApiValidationRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,7,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` -} -type OpenApiValidationRule_SpecificDomain struct { - SpecificDomain string `protobuf:"bytes,8,opt,name=specific_domain,json=specificDomain,proto3,oneof" json:"specific_domain,omitempty"` -} -type OpenApiValidationRule_ApiEndpoint struct { - ApiEndpoint *ApiEndpointDetails `protobuf:"bytes,13,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof" json:"api_endpoint,omitempty"` -} -type OpenApiValidationRule_BasePath struct { - BasePath string `protobuf:"bytes,11,opt,name=base_path,json=basePath,proto3,oneof" json:"base_path,omitempty"` -} -type OpenApiValidationRule_ApiGroup struct { - ApiGroup string `protobuf:"bytes,12,opt,name=api_group,json=apiGroup,proto3,oneof" json:"api_group,omitempty"` +func (m *AppEndpointType) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainMatcherChoice().(*AppEndpointType_AnyDomain); ok { + return x.AnyDomain + } + return nil } -func (*OpenApiValidationRule_AnyDomain) isOpenApiValidationRule_DomainChoice() {} -func (*OpenApiValidationRule_SpecificDomain) isOpenApiValidationRule_DomainChoice() {} -func (*OpenApiValidationRule_ApiEndpoint) isOpenApiValidationRule_ConditionTypeChoice() {} -func (*OpenApiValidationRule_BasePath) isOpenApiValidationRule_ConditionTypeChoice() {} -func (*OpenApiValidationRule_ApiGroup) isOpenApiValidationRule_ConditionTypeChoice() {} - -func (m *OpenApiValidationRule) GetDomainChoice() isOpenApiValidationRule_DomainChoice { - if m != nil { - return m.DomainChoice +func (m *AppEndpointType) GetDomain() *schema.DomainType { + if x, ok := m.GetDomainMatcherChoice().(*AppEndpointType_Domain); ok { + return x.Domain } return nil } -func (m *OpenApiValidationRule) GetConditionTypeChoice() isOpenApiValidationRule_ConditionTypeChoice { - if m != nil { - return m.ConditionTypeChoice + +func (m *AppEndpointType) GetWeb() *schema.Empty { + if x, ok := m.GetAppTrafficTypeChoice().(*AppEndpointType_Web); ok { + return x.Web } return nil } -func (m *OpenApiValidationRule) GetMetadata() *schema.MessageMetaType { - if m != nil { - return m.Metadata +func (m *AppEndpointType) GetMobile() *schema.Empty { + if x, ok := m.GetAppTrafficTypeChoice().(*AppEndpointType_Mobile); ok { + return x.Mobile } return nil } -func (m *OpenApiValidationRule) GetValidationMode() *OpenApiValidationMode { - if m != nil { - return m.ValidationMode +func (m *AppEndpointType) GetWebMobile() *WebMobileTrafficType { + if x, ok := m.GetAppTrafficTypeChoice().(*AppEndpointType_WebMobile); ok { + return x.WebMobile } return nil } -func (m *OpenApiValidationRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainChoice().(*OpenApiValidationRule_AnyDomain); ok { - return x.AnyDomain +func (m *AppEndpointType) GetMitigation() *policy.ShapeBotMitigationAction { + if m != nil { + return m.Mitigation } return nil } -func (m *OpenApiValidationRule) GetSpecificDomain() string { - if x, ok := m.GetDomainChoice().(*OpenApiValidationRule_SpecificDomain); ok { - return x.SpecificDomain +func (m *AppEndpointType) GetUndefinedFlowLabel() *schema.Empty { + if x, ok := m.GetFlowLabelChoice().(*AppEndpointType_UndefinedFlowLabel); ok { + return x.UndefinedFlowLabel } - return "" + return nil } -func (m *OpenApiValidationRule) GetApiEndpoint() *ApiEndpointDetails { - if x, ok := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiEndpoint); ok { - return x.ApiEndpoint +func (m *AppEndpointType) GetFlowLabel() *schema.BotDefenseFlowLabelCategoriesChoiceType { + if x, ok := m.GetFlowLabelChoice().(*AppEndpointType_FlowLabel); ok { + return x.FlowLabel } return nil } -func (m *OpenApiValidationRule) GetBasePath() string { - if x, ok := m.GetConditionTypeChoice().(*OpenApiValidationRule_BasePath); ok { - return x.BasePath +func (m *AppEndpointType) GetAllowGoodBots() *schema.Empty { + if x, ok := m.GetGoodbotChoice().(*AppEndpointType_AllowGoodBots); ok { + return x.AllowGoodBots } - return "" + return nil } -func (m *OpenApiValidationRule) GetApiGroup() string { - if x, ok := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiGroup); ok { - return x.ApiGroup +func (m *AppEndpointType) GetMitigateGoodBots() *schema.Empty { + if x, ok := m.GetGoodbotChoice().(*AppEndpointType_MitigateGoodBots); ok { + return x.MitigateGoodBots } - return "" + return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*OpenApiValidationRule) XXX_OneofWrappers() []interface{} { +func (*AppEndpointType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*OpenApiValidationRule_AnyDomain)(nil), - (*OpenApiValidationRule_SpecificDomain)(nil), - (*OpenApiValidationRule_ApiEndpoint)(nil), - (*OpenApiValidationRule_BasePath)(nil), - (*OpenApiValidationRule_ApiGroup)(nil), + (*AppEndpointType_AnyDomain)(nil), + (*AppEndpointType_Domain)(nil), + (*AppEndpointType_Web)(nil), + (*AppEndpointType_Mobile)(nil), + (*AppEndpointType_WebMobile)(nil), + (*AppEndpointType_UndefinedFlowLabel)(nil), + (*AppEndpointType_FlowLabel)(nil), + (*AppEndpointType_AllowGoodBots)(nil), + (*AppEndpointType_MitigateGoodBots)(nil), } } -// ApiEndpointDetails +// WebMobileTrafficType // -// x-displayName: "API Endpoint" -// This defines api endpoint -type ApiEndpointDetails struct { - // Path +// x-displayName: "Web and Mobile traffic type" +// Web and Mobile traffic type +type WebMobileTrafficType struct { + // Mobile header // - // x-displayName: "Path" - // x-required - // x-example: "/api/v1/login" - // Path to be matched - Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` - // Methods + // x-displayName: "Header" + // Header that is used by mobile traffic. + Header *policy.HeaderMatcherTypeBasic `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` // Deprecated: Do not use. + // Mobile headers + // + // x-displayName: "Headers" + // Headers that can be used to identify mobile traffic. + Headers []*policy.HeaderMatcherTypeBasic `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty"` // Deprecated: Do not use. + // Mobile Identifier // - // x-displayName: "Methods" - // x-example: "GET" - // Methods to be matched - Methods []schema.HttpMethod `protobuf:"varint,2,rep,packed,name=methods,proto3,enum=ves.io.schema.HttpMethod" json:"methods,omitempty"` + // x-displayName: "Mobile Identifier" + // Mobile identifier type + MobileIdentifier MobileIdentifier `protobuf:"varint,3,opt,name=mobile_identifier,json=mobileIdentifier,proto3,enum=ves.io.schema.views.http_loadbalancer.MobileIdentifier" json:"mobile_identifier,omitempty"` } -func (m *ApiEndpointDetails) Reset() { *m = ApiEndpointDetails{} } -func (*ApiEndpointDetails) ProtoMessage() {} -func (*ApiEndpointDetails) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{53} +func (m *WebMobileTrafficType) Reset() { *m = WebMobileTrafficType{} } +func (*WebMobileTrafficType) ProtoMessage() {} +func (*WebMobileTrafficType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{33} } -func (m *ApiEndpointDetails) XXX_Unmarshal(b []byte) error { +func (m *WebMobileTrafficType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ApiEndpointDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *WebMobileTrafficType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7839,56 +5183,68 @@ func (m *ApiEndpointDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, } return b[:n], nil } -func (m *ApiEndpointDetails) XXX_Merge(src proto.Message) { - xxx_messageInfo_ApiEndpointDetails.Merge(m, src) +func (m *WebMobileTrafficType) XXX_Merge(src proto.Message) { + xxx_messageInfo_WebMobileTrafficType.Merge(m, src) } -func (m *ApiEndpointDetails) XXX_Size() int { +func (m *WebMobileTrafficType) XXX_Size() int { return m.Size() } -func (m *ApiEndpointDetails) XXX_DiscardUnknown() { - xxx_messageInfo_ApiEndpointDetails.DiscardUnknown(m) +func (m *WebMobileTrafficType) XXX_DiscardUnknown() { + xxx_messageInfo_WebMobileTrafficType.DiscardUnknown(m) } -var xxx_messageInfo_ApiEndpointDetails proto.InternalMessageInfo +var xxx_messageInfo_WebMobileTrafficType proto.InternalMessageInfo -func (m *ApiEndpointDetails) GetPath() string { +// Deprecated: Do not use. +func (m *WebMobileTrafficType) GetHeader() *policy.HeaderMatcherTypeBasic { if m != nil { - return m.Path + return m.Header } - return "" + return nil } -func (m *ApiEndpointDetails) GetMethods() []schema.HttpMethod { +// Deprecated: Do not use. +func (m *WebMobileTrafficType) GetHeaders() []*policy.HeaderMatcherTypeBasic { if m != nil { - return m.Methods + return m.Headers } return nil } -// OriginServerSubsetRuleListType +func (m *WebMobileTrafficType) GetMobileIdentifier() MobileIdentifier { + if m != nil { + return m.MobileIdentifier + } + return HEADERS +} + +// ShapeJavaScriptInsertType // -// x-displayName: "Origin Server Subset Rule List Type" -// List of Origin Pools -type OriginServerSubsetRuleListType struct { - // Origin Server Subset +// x-displayName: "JavaScript Custom Insertion Rules" +// This defines custom JavaScript insertion rules for Bot Defense Policy. +type ShapeJavaScriptInsertType struct { + // rules // - // x-displayName: "Origin Server Subset Rules" - // Origin Server Subset Rules allow users to define match condition on Client (IP address, ASN, Country), IP Reputation, Regional Edge names, - // Request for subset selection of origin servers. Origin Server Subset is a sequential engine where rules are evaluated one after the other. - // It's important to define the correct order for Origin Server Subset to get the intended result, rules are evaluated from top to bottom in the list. - // When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated. - OriginServerSubsetRules []*policy.OriginServerSubsetRule `protobuf:"bytes,1,rep,name=origin_server_subset_rules,json=originServerSubsetRules,proto3" json:"origin_server_subset_rules,omitempty"` + // x-displayName: "JavaScript Insertions" + // x-required + // Required list of pages to insert Bot Defense client JavaScript. + Rules []*ShapeJavaScriptInsertionRule `protobuf:"bytes,2,rep,name=rules,proto3" json:"rules,omitempty"` + // exclude_list + // + // x-displayName: "Exclude Paths" + // Optional JavaScript insertions exclude list of domain and path matchers. + ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,3,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` } -func (m *OriginServerSubsetRuleListType) Reset() { *m = OriginServerSubsetRuleListType{} } -func (*OriginServerSubsetRuleListType) ProtoMessage() {} -func (*OriginServerSubsetRuleListType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{54} +func (m *ShapeJavaScriptInsertType) Reset() { *m = ShapeJavaScriptInsertType{} } +func (*ShapeJavaScriptInsertType) ProtoMessage() {} +func (*ShapeJavaScriptInsertType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{34} } -func (m *OriginServerSubsetRuleListType) XXX_Unmarshal(b []byte) error { +func (m *ShapeJavaScriptInsertType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *OriginServerSubsetRuleListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeJavaScriptInsertType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7896,48 +5252,60 @@ func (m *OriginServerSubsetRuleListType) XXX_Marshal(b []byte, deterministic boo } return b[:n], nil } -func (m *OriginServerSubsetRuleListType) XXX_Merge(src proto.Message) { - xxx_messageInfo_OriginServerSubsetRuleListType.Merge(m, src) +func (m *ShapeJavaScriptInsertType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeJavaScriptInsertType.Merge(m, src) } -func (m *OriginServerSubsetRuleListType) XXX_Size() int { +func (m *ShapeJavaScriptInsertType) XXX_Size() int { return m.Size() } -func (m *OriginServerSubsetRuleListType) XXX_DiscardUnknown() { - xxx_messageInfo_OriginServerSubsetRuleListType.DiscardUnknown(m) +func (m *ShapeJavaScriptInsertType) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeJavaScriptInsertType.DiscardUnknown(m) } -var xxx_messageInfo_OriginServerSubsetRuleListType proto.InternalMessageInfo +var xxx_messageInfo_ShapeJavaScriptInsertType proto.InternalMessageInfo -func (m *OriginServerSubsetRuleListType) GetOriginServerSubsetRules() []*policy.OriginServerSubsetRule { +func (m *ShapeJavaScriptInsertType) GetRules() []*ShapeJavaScriptInsertionRule { if m != nil { - return m.OriginServerSubsetRules + return m.Rules } return nil } -// ClientSideDefenseType +func (m *ShapeJavaScriptInsertType) GetExcludeList() []*ShapeJavaScriptExclusionRule { + if m != nil { + return m.ExcludeList + } + return nil +} + +// ShapeJavaScriptInsertAllWithExceptionsType // -// x-displayName: "Client-Side Defense" -// This defines various configuration options for Client-Side Defense Policy. -type ClientSideDefenseType struct { - // ClientSideDefensePolicyType +// x-displayName: "Insert JavaScript in All Pages with the Exceptions" +// Insert Bot Defense JavaScript in all pages with the exceptions +type ShapeJavaScriptInsertAllWithExceptionsType struct { + // javascript_location // - // x-displayName: "Client-Side Defense Policy" - // x-required - // Configure the pages where you want Client-Side Defense Protection. - // Please ensure that the same domains are configured in the Client-Side Defense configuration. - Policy *ClientSideDefensePolicyType `protobuf:"bytes,1,opt,name=policy,proto3" json:"policy,omitempty"` + // x-displayName: "JavaScript Location" + // Defines where to insert Bot Defense JavaScript in HTML page. + JavascriptLocation JavaScriptLocation `protobuf:"varint,1,opt,name=javascript_location,json=javascriptLocation,proto3,enum=ves.io.schema.views.http_loadbalancer.JavaScriptLocation" json:"javascript_location,omitempty"` + // exclude_list + // + // x-displayName: "Exclude Pages" + // Optional JavaScript insertions exclude list of domain and path matchers. + ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,2,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` } -func (m *ClientSideDefenseType) Reset() { *m = ClientSideDefenseType{} } -func (*ClientSideDefenseType) ProtoMessage() {} -func (*ClientSideDefenseType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{55} +func (m *ShapeJavaScriptInsertAllWithExceptionsType) Reset() { + *m = ShapeJavaScriptInsertAllWithExceptionsType{} } -func (m *ClientSideDefenseType) XXX_Unmarshal(b []byte) error { +func (*ShapeJavaScriptInsertAllWithExceptionsType) ProtoMessage() {} +func (*ShapeJavaScriptInsertAllWithExceptionsType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{35} +} +func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ClientSideDefenseType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -7945,222 +5313,53 @@ func (m *ClientSideDefenseType) XXX_Marshal(b []byte, deterministic bool) ([]byt } return b[:n], nil } -func (m *ClientSideDefenseType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClientSideDefenseType.Merge(m, src) -} -func (m *ClientSideDefenseType) XXX_Size() int { - return m.Size() -} -func (m *ClientSideDefenseType) XXX_DiscardUnknown() { - xxx_messageInfo_ClientSideDefenseType.DiscardUnknown(m) -} - -var xxx_messageInfo_ClientSideDefenseType proto.InternalMessageInfo - -func (m *ClientSideDefenseType) GetPolicy() *ClientSideDefensePolicyType { - if m != nil { - return m.Policy - } - return nil -} - -// ClientSideDefensePolicyType -// -// x-displayName: "Client-Side Defense Policy" -// This defines various configuration options for Client-Side Defense policy. -type ClientSideDefensePolicyType struct { - // JavaScript Choice - // - // x-displayName: "JavaScript Insertion Settings" - // x-required - // This defines a JavaScript insertion rule. - // - // Types that are valid to be assigned to JavaScriptChoice: - // *ClientSideDefensePolicyType_DisableJsInsert - // *ClientSideDefensePolicyType_JsInsertAllPages - // *ClientSideDefensePolicyType_JsInsertAllPagesExcept - // *ClientSideDefensePolicyType_JsInsertionRules - JavaScriptChoice isClientSideDefensePolicyType_JavaScriptChoice `protobuf_oneof:"java_script_choice"` -} - -func (m *ClientSideDefensePolicyType) Reset() { *m = ClientSideDefensePolicyType{} } -func (*ClientSideDefensePolicyType) ProtoMessage() {} -func (*ClientSideDefensePolicyType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{56} -} -func (m *ClientSideDefensePolicyType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ClientSideDefensePolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *ClientSideDefensePolicyType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClientSideDefensePolicyType.Merge(m, src) +func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeJavaScriptInsertAllWithExceptionsType.Merge(m, src) } -func (m *ClientSideDefensePolicyType) XXX_Size() int { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Size() int { return m.Size() } -func (m *ClientSideDefensePolicyType) XXX_DiscardUnknown() { - xxx_messageInfo_ClientSideDefensePolicyType.DiscardUnknown(m) -} - -var xxx_messageInfo_ClientSideDefensePolicyType proto.InternalMessageInfo - -type isClientSideDefensePolicyType_JavaScriptChoice interface { - isClientSideDefensePolicyType_JavaScriptChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type ClientSideDefensePolicyType_DisableJsInsert struct { - DisableJsInsert *schema.Empty `protobuf:"bytes,2,opt,name=disable_js_insert,json=disableJsInsert,proto3,oneof" json:"disable_js_insert,omitempty"` -} -type ClientSideDefensePolicyType_JsInsertAllPages struct { - JsInsertAllPages *schema.Empty `protobuf:"bytes,3,opt,name=js_insert_all_pages,json=jsInsertAllPages,proto3,oneof" json:"js_insert_all_pages,omitempty"` -} -type ClientSideDefensePolicyType_JsInsertAllPagesExcept struct { - JsInsertAllPagesExcept *CSDJavaScriptInsertAllWithExceptionsType `protobuf:"bytes,4,opt,name=js_insert_all_pages_except,json=jsInsertAllPagesExcept,proto3,oneof" json:"js_insert_all_pages_except,omitempty"` -} -type ClientSideDefensePolicyType_JsInsertionRules struct { - JsInsertionRules *CSDJavaScriptInsertType `protobuf:"bytes,5,opt,name=js_insertion_rules,json=jsInsertionRules,proto3,oneof" json:"js_insertion_rules,omitempty"` +func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeJavaScriptInsertAllWithExceptionsType.DiscardUnknown(m) } -func (*ClientSideDefensePolicyType_DisableJsInsert) isClientSideDefensePolicyType_JavaScriptChoice() { -} -func (*ClientSideDefensePolicyType_JsInsertAllPages) isClientSideDefensePolicyType_JavaScriptChoice() { -} -func (*ClientSideDefensePolicyType_JsInsertAllPagesExcept) isClientSideDefensePolicyType_JavaScriptChoice() { -} -func (*ClientSideDefensePolicyType_JsInsertionRules) isClientSideDefensePolicyType_JavaScriptChoice() { -} +var xxx_messageInfo_ShapeJavaScriptInsertAllWithExceptionsType proto.InternalMessageInfo -func (m *ClientSideDefensePolicyType) GetJavaScriptChoice() isClientSideDefensePolicyType_JavaScriptChoice { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) GetJavascriptLocation() JavaScriptLocation { if m != nil { - return m.JavaScriptChoice - } - return nil -} - -func (m *ClientSideDefensePolicyType) GetDisableJsInsert() *schema.Empty { - if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_DisableJsInsert); ok { - return x.DisableJsInsert - } - return nil -} - -func (m *ClientSideDefensePolicyType) GetJsInsertAllPages() *schema.Empty { - if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPages); ok { - return x.JsInsertAllPages - } - return nil -} - -func (m *ClientSideDefensePolicyType) GetJsInsertAllPagesExcept() *CSDJavaScriptInsertAllWithExceptionsType { - if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPagesExcept); ok { - return x.JsInsertAllPagesExcept - } - return nil -} - -func (m *ClientSideDefensePolicyType) GetJsInsertionRules() *CSDJavaScriptInsertType { - if x, ok := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertionRules); ok { - return x.JsInsertionRules - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ClientSideDefensePolicyType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ClientSideDefensePolicyType_DisableJsInsert)(nil), - (*ClientSideDefensePolicyType_JsInsertAllPages)(nil), - (*ClientSideDefensePolicyType_JsInsertAllPagesExcept)(nil), - (*ClientSideDefensePolicyType_JsInsertionRules)(nil), - } -} - -// CSDJavaScriptInsertAllWithExceptionsType -// -// x-displayName: "Insert JavaScript in All Pages with the Exceptions" -// Insert Client-Side Defense JavaScript in all pages with the exceptions -type CSDJavaScriptInsertAllWithExceptionsType struct { - // exclude_list - // - // x-displayName: "Exclude Pages" - // Optional JavaScript insertions exclude list of domain and path matchers. - ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,1,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) Reset() { - *m = CSDJavaScriptInsertAllWithExceptionsType{} -} -func (*CSDJavaScriptInsertAllWithExceptionsType) ProtoMessage() {} -func (*CSDJavaScriptInsertAllWithExceptionsType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{57} -} -func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + return m.JavascriptLocation } - return b[:n], nil -} -func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CSDJavaScriptInsertAllWithExceptionsType.Merge(m, src) -} -func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_Size() int { - return m.Size() -} -func (m *CSDJavaScriptInsertAllWithExceptionsType) XXX_DiscardUnknown() { - xxx_messageInfo_CSDJavaScriptInsertAllWithExceptionsType.DiscardUnknown(m) + return AFTER_HEAD } -var xxx_messageInfo_CSDJavaScriptInsertAllWithExceptionsType proto.InternalMessageInfo - -func (m *CSDJavaScriptInsertAllWithExceptionsType) GetExcludeList() []*ShapeJavaScriptExclusionRule { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) GetExcludeList() []*ShapeJavaScriptExclusionRule { if m != nil { return m.ExcludeList } return nil } -// CSDJavaScriptInsertType +// ShapeJavaScriptInsertAllType // -// x-displayName: "JavaScript Custom Insertion Rules" -// This defines custom JavaScript insertion rules for Client-Side Defense Policy. -type CSDJavaScriptInsertType struct { - // rules - // - // x-displayName: "JavaScript Insertions" - // x-required - // Required list of pages to insert Client-Side Defense client JavaScript. - Rules []*CSDJavaScriptInsertionRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"` - // exclude_list +// x-displayName: "Insert Bot Defense JavaScript in All Pages" +// Insert Bot Defense JavaScript in all pages +type ShapeJavaScriptInsertAllType struct { + // javascript_location // - // x-displayName: "Exclude Paths" - // Optional JavaScript insertions exclude list of domain and path matchers. - ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,2,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` + // x-displayName: "JavaScript Location" + // Defines where to insert Bot Defense JavaScript in HTML page. + JavascriptLocation JavaScriptLocation `protobuf:"varint,1,opt,name=javascript_location,json=javascriptLocation,proto3,enum=ves.io.schema.views.http_loadbalancer.JavaScriptLocation" json:"javascript_location,omitempty"` } -func (m *CSDJavaScriptInsertType) Reset() { *m = CSDJavaScriptInsertType{} } -func (*CSDJavaScriptInsertType) ProtoMessage() {} -func (*CSDJavaScriptInsertType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{58} +func (m *ShapeJavaScriptInsertAllType) Reset() { *m = ShapeJavaScriptInsertAllType{} } +func (*ShapeJavaScriptInsertAllType) ProtoMessage() {} +func (*ShapeJavaScriptInsertAllType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{36} } -func (m *CSDJavaScriptInsertType) XXX_Unmarshal(b []byte) error { +func (m *ShapeJavaScriptInsertAllType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CSDJavaScriptInsertType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeJavaScriptInsertAllType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -8168,37 +5367,30 @@ func (m *CSDJavaScriptInsertType) XXX_Marshal(b []byte, deterministic bool) ([]b } return b[:n], nil } -func (m *CSDJavaScriptInsertType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CSDJavaScriptInsertType.Merge(m, src) +func (m *ShapeJavaScriptInsertAllType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeJavaScriptInsertAllType.Merge(m, src) } -func (m *CSDJavaScriptInsertType) XXX_Size() int { +func (m *ShapeJavaScriptInsertAllType) XXX_Size() int { return m.Size() } -func (m *CSDJavaScriptInsertType) XXX_DiscardUnknown() { - xxx_messageInfo_CSDJavaScriptInsertType.DiscardUnknown(m) +func (m *ShapeJavaScriptInsertAllType) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeJavaScriptInsertAllType.DiscardUnknown(m) } -var xxx_messageInfo_CSDJavaScriptInsertType proto.InternalMessageInfo - -func (m *CSDJavaScriptInsertType) GetRules() []*CSDJavaScriptInsertionRule { - if m != nil { - return m.Rules - } - return nil -} +var xxx_messageInfo_ShapeJavaScriptInsertAllType proto.InternalMessageInfo -func (m *CSDJavaScriptInsertType) GetExcludeList() []*ShapeJavaScriptExclusionRule { +func (m *ShapeJavaScriptInsertAllType) GetJavascriptLocation() JavaScriptLocation { if m != nil { - return m.ExcludeList + return m.JavascriptLocation } - return nil + return AFTER_HEAD } -// CSDJavaScriptInsertionRule +// ShapeJavaScriptInsertionRule // // x-displayName: "JavaScript Insertion Rule" -// This defines a rule for Client-Side Defense JavaScript insertion. -type CSDJavaScriptInsertionRule struct { +// This defines a rule for Bot Defense JavaScript insertion. +type ShapeJavaScriptInsertionRule struct { // metadata // // x-displayName: "Metadata" @@ -8212,27 +5404,31 @@ type CSDJavaScriptInsertionRule struct { // This defines domain matcher. // // Types that are valid to be assigned to DomainMatcherChoice: - // - // *CSDJavaScriptInsertionRule_AnyDomain - // *CSDJavaScriptInsertionRule_Domain - DomainMatcherChoice isCSDJavaScriptInsertionRule_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` + // *ShapeJavaScriptInsertionRule_AnyDomain + // *ShapeJavaScriptInsertionRule_Domain + DomainMatcherChoice isShapeJavaScriptInsertionRule_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` // Path // // x-displayName: "Path" // x-required // URI path matcher. Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` + // javascript_location + // + // x-displayName: "JavaScript Location" + // Defines where to insert Bot Defense JavaScript in HTML page. + JavascriptLocation JavaScriptLocation `protobuf:"varint,6,opt,name=javascript_location,json=javascriptLocation,proto3,enum=ves.io.schema.views.http_loadbalancer.JavaScriptLocation" json:"javascript_location,omitempty"` } -func (m *CSDJavaScriptInsertionRule) Reset() { *m = CSDJavaScriptInsertionRule{} } -func (*CSDJavaScriptInsertionRule) ProtoMessage() {} -func (*CSDJavaScriptInsertionRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{59} +func (m *ShapeJavaScriptInsertionRule) Reset() { *m = ShapeJavaScriptInsertionRule{} } +func (*ShapeJavaScriptInsertionRule) ProtoMessage() {} +func (*ShapeJavaScriptInsertionRule) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{37} } -func (m *CSDJavaScriptInsertionRule) XXX_Unmarshal(b []byte) error { +func (m *ShapeJavaScriptInsertionRule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CSDJavaScriptInsertionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeJavaScriptInsertionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -8240,121 +5436,123 @@ func (m *CSDJavaScriptInsertionRule) XXX_Marshal(b []byte, deterministic bool) ( } return b[:n], nil } -func (m *CSDJavaScriptInsertionRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_CSDJavaScriptInsertionRule.Merge(m, src) +func (m *ShapeJavaScriptInsertionRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeJavaScriptInsertionRule.Merge(m, src) } -func (m *CSDJavaScriptInsertionRule) XXX_Size() int { +func (m *ShapeJavaScriptInsertionRule) XXX_Size() int { return m.Size() } -func (m *CSDJavaScriptInsertionRule) XXX_DiscardUnknown() { - xxx_messageInfo_CSDJavaScriptInsertionRule.DiscardUnknown(m) +func (m *ShapeJavaScriptInsertionRule) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeJavaScriptInsertionRule.DiscardUnknown(m) } -var xxx_messageInfo_CSDJavaScriptInsertionRule proto.InternalMessageInfo +var xxx_messageInfo_ShapeJavaScriptInsertionRule proto.InternalMessageInfo -type isCSDJavaScriptInsertionRule_DomainMatcherChoice interface { - isCSDJavaScriptInsertionRule_DomainMatcherChoice() +type isShapeJavaScriptInsertionRule_DomainMatcherChoice interface { + isShapeJavaScriptInsertionRule_DomainMatcherChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CSDJavaScriptInsertionRule_AnyDomain struct { +type ShapeJavaScriptInsertionRule_AnyDomain struct { AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` } -type CSDJavaScriptInsertionRule_Domain struct { +type ShapeJavaScriptInsertionRule_Domain struct { Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` } -func (*CSDJavaScriptInsertionRule_AnyDomain) isCSDJavaScriptInsertionRule_DomainMatcherChoice() {} -func (*CSDJavaScriptInsertionRule_Domain) isCSDJavaScriptInsertionRule_DomainMatcherChoice() {} +func (*ShapeJavaScriptInsertionRule_AnyDomain) isShapeJavaScriptInsertionRule_DomainMatcherChoice() {} +func (*ShapeJavaScriptInsertionRule_Domain) isShapeJavaScriptInsertionRule_DomainMatcherChoice() {} -func (m *CSDJavaScriptInsertionRule) GetDomainMatcherChoice() isCSDJavaScriptInsertionRule_DomainMatcherChoice { +func (m *ShapeJavaScriptInsertionRule) GetDomainMatcherChoice() isShapeJavaScriptInsertionRule_DomainMatcherChoice { if m != nil { return m.DomainMatcherChoice } return nil } -func (m *CSDJavaScriptInsertionRule) GetMetadata() *schema.MessageMetaType { +func (m *ShapeJavaScriptInsertionRule) GetMetadata() *schema.MessageMetaType { if m != nil { return m.Metadata } return nil } -func (m *CSDJavaScriptInsertionRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_AnyDomain); ok { +func (m *ShapeJavaScriptInsertionRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_AnyDomain); ok { return x.AnyDomain } return nil } -func (m *CSDJavaScriptInsertionRule) GetDomain() *schema.DomainType { - if x, ok := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_Domain); ok { +func (m *ShapeJavaScriptInsertionRule) GetDomain() *schema.DomainType { + if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_Domain); ok { return x.Domain } return nil } -func (m *CSDJavaScriptInsertionRule) GetPath() *schema.PathMatcherType { +func (m *ShapeJavaScriptInsertionRule) GetPath() *schema.PathMatcherType { if m != nil { return m.Path } return nil } +func (m *ShapeJavaScriptInsertionRule) GetJavascriptLocation() JavaScriptLocation { + if m != nil { + return m.JavascriptLocation + } + return AFTER_HEAD +} + // XXX_OneofWrappers is for the internal use of the proto package. -func (*CSDJavaScriptInsertionRule) XXX_OneofWrappers() []interface{} { +func (*ShapeJavaScriptInsertionRule) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*CSDJavaScriptInsertionRule_AnyDomain)(nil), - (*CSDJavaScriptInsertionRule_Domain)(nil), + (*ShapeJavaScriptInsertionRule_AnyDomain)(nil), + (*ShapeJavaScriptInsertionRule_Domain)(nil), } } -// BotDefenseAdvancedPolicyType +// ShapeJavaScriptExclusionRule // -// x-displayName: "Bot Defense Advanced Policy" -// This defines various configuration options for Bot Defense Advanced Policy. -type BotDefenseAdvancedPolicyType struct { - // ProtectedAppEndpointType - // - // x-displayName: "Protected App Endpoints" - // x-required - // List of protected endpoints (max 128 items) - ProtectedAppEndpoints []*ProtectedAppEndpointType `protobuf:"bytes,1,rep,name=protected_app_endpoints,json=protectedAppEndpoints,proto3" json:"protected_app_endpoints,omitempty"` - // js_download_path +// x-displayName: "JavaScript Insertion Exclusion Rule" +// Define JavaScript insertion exclusion rule +type ShapeJavaScriptExclusionRule struct { + // metadata // - // x-displayName: "Web Client JavaScript Download Path" - // x-example: "/common.js" + // x-displayName: "Metadata" // x-required - // Customize Bot Defense Web Client JavaScript path - JsDownloadPath string `protobuf:"bytes,2,opt,name=js_download_path,json=jsDownloadPath,proto3" json:"js_download_path,omitempty"` - // Mobile SDK Choice + // Common attributes for the rule including name and description. + Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Domain Matcher // - // x-displayName: "Activate Mobile SDK" + // x-displayName: "Domain Matcher" // x-required - // Configure Mobile SDK parameters to protect native mobile app endpoints. If you have selected client type as - // 'Mobile' or 'Web And Mobile' please Enable Mobile SDK. In the event that there is at least one protected - // endpoint marked with a client type of 'Web And Mobile', then also define Mobile Request Identifier(s) in - // advanced setting. + // This defines domain matcher. // - // Types that are valid to be assigned to MobileSdkChoice: + // Types that are valid to be assigned to DomainMatcherChoice: + // *ShapeJavaScriptExclusionRule_AnyDomain + // *ShapeJavaScriptExclusionRule_Domain + DomainMatcherChoice isShapeJavaScriptExclusionRule_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` + // Path // - // *BotDefenseAdvancedPolicyType_DisableMobileSdk - // *BotDefenseAdvancedPolicyType_MobileSdkConfig - MobileSdkChoice isBotDefenseAdvancedPolicyType_MobileSdkChoice `protobuf_oneof:"mobile_sdk_choice"` + // x-displayName: "Path" + // x-required + // URI path matcher. + Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` } -func (m *BotDefenseAdvancedPolicyType) Reset() { *m = BotDefenseAdvancedPolicyType{} } -func (*BotDefenseAdvancedPolicyType) ProtoMessage() {} -func (*BotDefenseAdvancedPolicyType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{60} +func (m *ShapeJavaScriptExclusionRule) Reset() { *m = ShapeJavaScriptExclusionRule{} } +func (*ShapeJavaScriptExclusionRule) ProtoMessage() {} +func (*ShapeJavaScriptExclusionRule) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{38} } -func (m *BotDefenseAdvancedPolicyType) XXX_Unmarshal(b []byte) error { +func (m *ShapeJavaScriptExclusionRule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *BotDefenseAdvancedPolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *ShapeJavaScriptExclusionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -8362,207 +5560,544 @@ func (m *BotDefenseAdvancedPolicyType) XXX_Marshal(b []byte, deterministic bool) } return b[:n], nil } -func (m *BotDefenseAdvancedPolicyType) XXX_Merge(src proto.Message) { - xxx_messageInfo_BotDefenseAdvancedPolicyType.Merge(m, src) +func (m *ShapeJavaScriptExclusionRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_ShapeJavaScriptExclusionRule.Merge(m, src) } -func (m *BotDefenseAdvancedPolicyType) XXX_Size() int { +func (m *ShapeJavaScriptExclusionRule) XXX_Size() int { return m.Size() } -func (m *BotDefenseAdvancedPolicyType) XXX_DiscardUnknown() { - xxx_messageInfo_BotDefenseAdvancedPolicyType.DiscardUnknown(m) +func (m *ShapeJavaScriptExclusionRule) XXX_DiscardUnknown() { + xxx_messageInfo_ShapeJavaScriptExclusionRule.DiscardUnknown(m) } -var xxx_messageInfo_BotDefenseAdvancedPolicyType proto.InternalMessageInfo +var xxx_messageInfo_ShapeJavaScriptExclusionRule proto.InternalMessageInfo -type isBotDefenseAdvancedPolicyType_MobileSdkChoice interface { - isBotDefenseAdvancedPolicyType_MobileSdkChoice() +type isShapeJavaScriptExclusionRule_DomainMatcherChoice interface { + isShapeJavaScriptExclusionRule_DomainMatcherChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type BotDefenseAdvancedPolicyType_DisableMobileSdk struct { - DisableMobileSdk *schema.Empty `protobuf:"bytes,4,opt,name=disable_mobile_sdk,json=disableMobileSdk,proto3,oneof" json:"disable_mobile_sdk,omitempty"` +type ShapeJavaScriptExclusionRule_AnyDomain struct { + AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` } -type BotDefenseAdvancedPolicyType_MobileSdkConfig struct { - MobileSdkConfig *BotAdvancedMobileSDKConfigType `protobuf:"bytes,5,opt,name=mobile_sdk_config,json=mobileSdkConfig,proto3,oneof" json:"mobile_sdk_config,omitempty"` +type ShapeJavaScriptExclusionRule_Domain struct { + Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` } -func (*BotDefenseAdvancedPolicyType_DisableMobileSdk) isBotDefenseAdvancedPolicyType_MobileSdkChoice() { -} -func (*BotDefenseAdvancedPolicyType_MobileSdkConfig) isBotDefenseAdvancedPolicyType_MobileSdkChoice() { -} +func (*ShapeJavaScriptExclusionRule_AnyDomain) isShapeJavaScriptExclusionRule_DomainMatcherChoice() {} +func (*ShapeJavaScriptExclusionRule_Domain) isShapeJavaScriptExclusionRule_DomainMatcherChoice() {} -func (m *BotDefenseAdvancedPolicyType) GetMobileSdkChoice() isBotDefenseAdvancedPolicyType_MobileSdkChoice { +func (m *ShapeJavaScriptExclusionRule) GetDomainMatcherChoice() isShapeJavaScriptExclusionRule_DomainMatcherChoice { if m != nil { - return m.MobileSdkChoice + return m.DomainMatcherChoice } return nil } -func (m *BotDefenseAdvancedPolicyType) GetProtectedAppEndpoints() []*ProtectedAppEndpointType { +func (m *ShapeJavaScriptExclusionRule) GetMetadata() *schema.MessageMetaType { if m != nil { - return m.ProtectedAppEndpoints + return m.Metadata } return nil } -func (m *BotDefenseAdvancedPolicyType) GetJsDownloadPath() string { - if m != nil { - return m.JsDownloadPath +func (m *ShapeJavaScriptExclusionRule) GetAnyDomain() *schema.Empty { + if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_AnyDomain); ok { + return x.AnyDomain } - return "" + return nil } -func (m *BotDefenseAdvancedPolicyType) GetDisableMobileSdk() *schema.Empty { - if x, ok := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_DisableMobileSdk); ok { - return x.DisableMobileSdk +func (m *ShapeJavaScriptExclusionRule) GetDomain() *schema.DomainType { + if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_Domain); ok { + return x.Domain } return nil } -func (m *BotDefenseAdvancedPolicyType) GetMobileSdkConfig() *BotAdvancedMobileSDKConfigType { - if x, ok := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_MobileSdkConfig); ok { - return x.MobileSdkConfig +func (m *ShapeJavaScriptExclusionRule) GetPath() *schema.PathMatcherType { + if m != nil { + return m.Path } return nil } // XXX_OneofWrappers is for the internal use of the proto package. -func (*BotDefenseAdvancedPolicyType) XXX_OneofWrappers() []interface{} { +func (*ShapeJavaScriptExclusionRule) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*BotDefenseAdvancedPolicyType_DisableMobileSdk)(nil), - (*BotDefenseAdvancedPolicyType_MobileSdkConfig)(nil), - } -} - -// BotAdvancedMobileSDKConfigType -// -// x-displayName: "Mobile Request Identifier Headers" -// Mobile Request Identifier Headers. -type BotAdvancedMobileSDKConfigType struct { - // MobileTrafficIdentifierType - // - // x-displayName: "Mobile Request Identifier Headers" - // Mobile Request Identifier Headers Type. - MobileIdentifier *MobileTrafficIdentifierType `protobuf:"bytes,1,opt,name=mobile_identifier,json=mobileIdentifier,proto3" json:"mobile_identifier,omitempty"` -} - -func (m *BotAdvancedMobileSDKConfigType) Reset() { *m = BotAdvancedMobileSDKConfigType{} } -func (*BotAdvancedMobileSDKConfigType) ProtoMessage() {} -func (*BotAdvancedMobileSDKConfigType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{61} -} -func (m *BotAdvancedMobileSDKConfigType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BotAdvancedMobileSDKConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *BotAdvancedMobileSDKConfigType) XXX_Merge(src proto.Message) { - xxx_messageInfo_BotAdvancedMobileSDKConfigType.Merge(m, src) -} -func (m *BotAdvancedMobileSDKConfigType) XXX_Size() int { - return m.Size() -} -func (m *BotAdvancedMobileSDKConfigType) XXX_DiscardUnknown() { - xxx_messageInfo_BotAdvancedMobileSDKConfigType.DiscardUnknown(m) -} - -var xxx_messageInfo_BotAdvancedMobileSDKConfigType proto.InternalMessageInfo - -func (m *BotAdvancedMobileSDKConfigType) GetMobileIdentifier() *MobileTrafficIdentifierType { - if m != nil { - return m.MobileIdentifier + (*ShapeJavaScriptExclusionRule_AnyDomain)(nil), + (*ShapeJavaScriptExclusionRule_Domain)(nil), } - return nil } -// ProtectedAppEndpointType +// GlobalSpecType // -// x-displayName: "Protected App Endpoint" -// Protected Application Endpoint. -type ProtectedAppEndpointType struct { - // metadata +// x-displayName: "Global Specification" +// Shape of the HTTP load balancer specification +type GlobalSpecType struct { + // Domains // - // x-displayName: "Metadata" + // x-displayName: "Domains" + // x-example: "www.foo.com" // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // Domain Matcher + // A list of domains (host/authority header) that will be matched to load balancer. // - // x-displayName: "Domain Matcher" - // This defines domain matcher. + // Supported Domains and search order: + // 1. Exact domain names: www.foo.com. + // 2. Domains start with a wildcard: *.foo.com or *-bar.foo.com. // - // Types that are valid to be assigned to DomainMatcherChoice: + // Not supported domains + // - Just a wildcard: * + // - Wild card and TLD: *.com + // - Wildcard in a middle of domian: test*.example.com // - // *ProtectedAppEndpointType_AnyDomain - // *ProtectedAppEndpointType_Domain - DomainMatcherChoice isProtectedAppEndpointType_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` - // Path + // Wildcard will not match empty string. + // e.g. *-bar.foo.com will match baz-bar.foo.com but not -bar.foo.com. + // The longest wildcards match first. + // Only a single virtual host in the entire route configuration can match on *. + // Also a domain must be unique across all virtual hosts within an advertise policy. // - // x-displayName: "Path" + // Domains are also used for SNI matching if the load balancer type is HTTPS + // Domains also indicate the list of names for which DNS resolution will be done by VER + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Proxy choice + // + // x-displayName: "Load Balancer Type" // x-required - // x-example: "/id/1" - // x-example: "/id/*" - // x-example: "*login" - // Accepts wildcards * to match multiple characters or ? to match a single character - Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` - // Query + // The type of load balancer, can be "http" or "https" // - // x-displayName: "Query" - // x-example: "(^|[^\\w])action=login([^\\w]|$)" - // Enter a regular expression or exact value to match your query parameters of interest - Query []*Query `protobuf:"bytes,6,rep,name=query,proto3" json:"query,omitempty"` - // Request Body + // Types that are valid to be assigned to LoadbalancerType: + // *GlobalSpecType_Http + // *GlobalSpecType_HttpsAutoCert + // *GlobalSpecType_Https + LoadbalancerType isGlobalSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + // download_tls_certificates_expiration_timestamp // - // x-displayName: "Request Body" - // Request Body - RequestBody []*RequestBody `protobuf:"bytes,7,rep,name=request_body,json=requestBody,proto3" json:"request_body,omitempty"` - // HTTP Methods + // x-displayName: "Certificate(s) Expiration Timestamp" + // In case of load balancer type of 'https'(BYOC) this lists expiration timestamp for certificate(s) + // in the same order as the list of tls_parameters.tls_certificates. + // In case of load balancer type of 'https_auto_cert' this has one element with the expiration + // timestamp of the autogenerated certificate. + DownstreamTlsCertificateExpirationTimestamps []*types.Timestamp `protobuf:"bytes,62,rep,name=downstream_tls_certificate_expiration_timestamps,json=downstreamTlsCertificateExpirationTimestamps,proto3" json:"downstream_tls_certificate_expiration_timestamps,omitempty"` + // Advertise choice // - // x-displayName: "HTTP Methods" + // x-displayName: "VIP Advertisement" // x-required - // List of HTTP methods. - HttpMethods []schema.BotHttpMethod `protobuf:"varint,8,rep,packed,name=http_methods,json=httpMethods,proto3,enum=ves.io.schema.BotHttpMethod" json:"http_methods,omitempty"` - // Traffic channel + // VIP Advertisement choice, Internet or Custom. // - // x-displayName: "Traffic Channel" + // Types that are valid to be assigned to AdvertiseChoice: + // *GlobalSpecType_DoNotAdvertise + // *GlobalSpecType_AdvertiseOnPublicDefaultVip + // *GlobalSpecType_AdvertiseOnPublic + // *GlobalSpecType_AdvertiseCustom + AdvertiseChoice isGlobalSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` + // Default Route Origin Pools + // + // x-displayName: "Origin Pools" + // Origin Pools used when no route is specified (default route) + DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` + // Origin Pool Choice + // + // x-displayName: "Origins" + // Origin Pool(s) used when no route is specified (default route) + // + // Types that are valid to be assigned to OriginPoolChoice: + // *GlobalSpecType_DefaultPool + // *GlobalSpecType_DefaultPoolList + OriginPoolChoice isGlobalSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` + // HostRewriteParams + // + // x-displayName: "Select Host Rewrite for Default Origin Servers" + // Select how the host header can be modified during forwarding to the default origin servers(default route) + // + // Types that are valid to be assigned to HostRewriteParams: + // *GlobalSpecType_AutoHostRewrite + // *GlobalSpecType_HostRewrite + // *GlobalSpecType_DisableHostRewrite + HostRewriteParams isGlobalSpecType_HostRewriteParams `protobuf_oneof:"host_rewrite_params"` + // Routes + // + // x-displayName: "Routes" + // Routes allow users to define match condition on a path and/or HTTP method to either forward matching traffic + // to origin pool or redirect matching traffic to a different URL or respond directly to matching traffic + Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` + // Origin Server Subset Rules + // + // x-displayName: "Origin Server Subset Rules" + // Origin Server Subset Rules allow users to define match condition on Client (IP address, ASN, Country), IP Reputation, Regional Edge names, + // Request for subset selection of origin servers. Origin Server Subset is a sequential engine where rules are evaluated one after the other. + // It's important to define the correct order for Origin Server Subset to get the intended result, rules are evaluated from top to bottom in the list. + // When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated. + OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` + // Cross-Origin Resource Sharing (CORS) configuration for requests + // + // x-displayName: "CORS Policy" + // CORS is a mechanism that uses additional HTTP headers to tell a browser to let + // a web application running at one origin (domain) have permission to access selected + // resources from a server at a different origin + CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` + // Enable the WAF (Web Application Firewall) functionality for VirtualHost + // + // x-displayName: "Web Application Firewall (WAF)" // x-required - // Select traffic channel. // - // Types that are valid to be assigned to AppTrafficTypeChoice: + // F5 Distributed Cloud WAF is a next-gen web application firewall that provides signature-based + // and behavior-based threat detection to protect applications wherever they are deployed. + // WAF can be configured in Monitoring (log threats) or Blocking (log and block threats) mode. // - // *ProtectedAppEndpointType_WebClient - // *ProtectedAppEndpointType_MobileClient - // *ProtectedAppEndpointType_WebMobileClient - AppTrafficTypeChoice isProtectedAppEndpointType_AppTrafficTypeChoice `protobuf_oneof:"app_traffic_type_choice"` - // Endpoint category + // Types that are valid to be assigned to WafChoice: + // *GlobalSpecType_DisableWaf + // *GlobalSpecType_AppFirewall + WafChoice isGlobalSpecType_WafChoice `protobuf_oneof:"waf_choice"` + // Add Site information // - // x-displayName: "Endpoint category" - // Endpoint label category + // x-displayName: "Add Location" + // x-example: "true" + // x-example: true + // Appends header x-volterra-location = in responses. This configuration + // is ignored on CE sites. + AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + // Challenge Type // - // Types that are valid to be assigned to FlowLabelChoice: + // x-displayName: "Malicious User Mitigation And Challenges" + // x-required + // Malicious User Mitigation is an adaptive response and risk-based challenge capability. + // Enabling this feature would automatically serve different challenges such as JavaScript challenge, + // Captcha challenge or block temporarily based on the threat level of the malicious user. + // Policy based challenge can be used to selectively enable or disable JavaScript or Captcha challenge + // on a specific client and request match criteria // - // *ProtectedAppEndpointType_UndefinedFlowLabel - // *ProtectedAppEndpointType_FlowLabel - FlowLabelChoice isProtectedAppEndpointType_FlowLabelChoice `protobuf_oneof:"flow_label_choice"` + // Types that are valid to be assigned to ChallengeType: + // *GlobalSpecType_NoChallenge + // *GlobalSpecType_EnableChallenge + // *GlobalSpecType_JsChallenge + // *GlobalSpecType_CaptchaChallenge + // *GlobalSpecType_PolicyBasedChallenge + ChallengeType isGlobalSpecType_ChallengeType `protobuf_oneof:"challenge_type"` + // More Options + // + // x-displayName: "More Options" + // More options like header manipulation, compression etc. + MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // User Identifier + // + // x-displayName: "User Identifier" + // x-required + // Select user identifier for rate limiting and malicious user mitigation. + // + // Types that are valid to be assigned to UserIdChoice: + // *GlobalSpecType_UserIdClientIp + // *GlobalSpecType_UserIdentification + UserIdChoice isGlobalSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` + // Enable Rate Limiting + // + // x-displayName: "Rate Limiting" + // x-required + // Rate Limiting allows you to control the rate of requests sent to your origin servers, protect against API traffic surge and denial of services attacks. + // + // Types that are valid to be assigned to RateLimitChoice: + // *GlobalSpecType_DisableRateLimit + // *GlobalSpecType_ApiRateLimit + // *GlobalSpecType_RateLimit + RateLimitChoice isGlobalSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` + // Malicious User Mitigation + // + // x-displayName: "Malicious User Mitigation" + // Settings that specify the actions to be taken when malicious users are determined to be at different threat levels. + // User's activity is monitored and continuously analyzed for malicious behavior. From this analysis, a threat level is assigned to each user. + // The settings defined in malicious user mitigation specify what mitigation actions to take for users determined to be at different threat levels. + MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` // Deprecated: Do not use. + // WAF Exclusion Rules + // + // x-displayName: "WAF Exclusion Rules" + // Define the Signature IDs, Violations, Attack Types and Bot Names that should be excluded from WAF processing on specific match criteria. + // The match criteria include domain, path and method. + // WAF Exclusion rules is a sequential engine where rules are evaluated one after the other. + // It's important to define the correct order for WAF exclusion rules to get the intended result, rules are evaluated from top to bottom in the list. + // For each request, its characteristics are evaluated based on the match criteria in each WAF exclusion rule, starting from the top. + // When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated. + WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` + // Data Guard Rules + // + // x-displayName: "Data Guard Rules" + // Data Guard prevents responses from exposing sensitive information by masking the data. + // The system masks credit card numbers and social security numbers leaked from the application from within the http response with a string of asterisks (*). + // Note: App Firewall should be enabled, to use Data Guard feature. + DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` + // Client Blocking Rules + // + // x-displayName: "Client Blocking Rules" + // Define rules to block IP Prefixes or AS numbers. + BlockedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` + // Trusted Client Rules + // + // x-displayName: "Trusted Client Rules" + // Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients. + TrustedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` + // API Protection rules + // + // x-displayName: "API Protection Rules" + // API Protection Rules can be defined in two categories. + // The first category includes fine-grained rules, per API path and methods. + // The second category includes rules per API groups or Server URLs. + // If request matches any rule in the first category, second category rules are not evaluated. + // Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group. + ApiProtectionRules *common_waf.APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` + // DDoS Mitigation Rules + // + // x-displayName: "DDoS Mitigation Rules" + // Define manual mitigation rules to block L7 DDoS attacks. + DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` + // Service Policies + // + // x-displayName: "Service Policies" + // x-required + // Service policies provide the ability to configure security controls such as IP Allow/Deny lists, Geo IP filtering and Custom rules + // + // Types that are valid to be assigned to ServicePolicyChoice: + // *GlobalSpecType_ServicePoliciesFromNamespace + // *GlobalSpecType_NoServicePolicies + // *GlobalSpecType_ActiveServicePolicies + ServicePolicyChoice isGlobalSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` + // Load Balancing Control + // + // x-displayName: "Load Balancing Algorithm" + // x-required + // The algorithm used to load balance requests between origin servers + // + // Types that are valid to be assigned to HashPolicyChoice: + // *GlobalSpecType_RoundRobin + // *GlobalSpecType_LeastActive + // *GlobalSpecType_Random + // *GlobalSpecType_SourceIpStickiness + // *GlobalSpecType_CookieStickiness + // *GlobalSpecType_RingHash + HashPolicyChoice isGlobalSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` + // Trusted Client IP Headers + // + // x-displayName: "Trusted Client IP Headers" + // x-required + // The system uses the real client IP address that initiated the connection to the platform as source IP, instead of the proxy’s IP address, when this feature is enabled. + // + // Types that are valid to be assigned to TrustClientIpHeadersChoice: + // *GlobalSpecType_DisableTrustClientIpHeaders + // *GlobalSpecType_EnableTrustClientIpHeaders + TrustClientIpHeadersChoice isGlobalSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` + // ML config choice + // + // x-displayName: "API Discovery/DDoS Detection/Malicious User Detection" + // Configuration of web app and API security features which are based on AI/ML + // + // Types that are valid to be assigned to MlConfigChoice: + // *GlobalSpecType_SingleLbApp + // *GlobalSpecType_MultiLbApp + MlConfigChoice isGlobalSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` + // Malicious User Detection Choice + // + // x-required + // x-displayName: "Malicious User Detection" + // Malicious User Detection performs user behavior analysis and assigns a risk score and threat level of low, medium + // or high based on the suspicious activity of the user. + // The risk score of the user is decayed over time, if no further suspicious activity is noticed. + // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. + // In this case external app_type configuration overrides internally disabled feature. + // Enabling the feature internally is allowed only when no labeling to external app_type. + // + // Types that are valid to be assigned to MaliciousUserDetectionChoice: + // *GlobalSpecType_EnableMaliciousUserDetection + // *GlobalSpecType_DisableMaliciousUserDetection + MaliciousUserDetectionChoice isGlobalSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` + // API Discovery Choice + // + // x-required + // x-displayName: "API Discovery" + // When enabled, sampled traffic passing through this load balancer is analyzed and + // APIs exposed by the application are identified. + // An API is identified by its canonical (collapsed) URL path and the method used to call it. + // Once all APIs are identified, for each API, the system learns its possible schema. + // The learnt schema for all APIs is used to automatically generate a swagger definition file for the entire API set exposed by this load balancer. + // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. + // In this case external app_type configuration overrides internally disabled feature. + // Enabling the feature internally is allowed only when no labeling to external app_type. + // + // Types that are valid to be assigned to ApiDiscoveryChoice: + // *GlobalSpecType_EnableApiDiscovery + // *GlobalSpecType_DisableApiDiscovery + ApiDiscoveryChoice isGlobalSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` + // Enable Bot Defense functionality for VirtualHost + // + // x-displayName: "Bot Defense" + // Bot Defense protects your applications from automated attacks by leveraging JavaScript and API calls to collect telemetry and mitigate sophisticated attacks within the context of F5's Distributed Cloud global network. When automation is detected, and mitigation action is set to Block or Redirect, the client will receive the configured mitigation response. If action is set to Flag, automated requests are monitored by Bot Defense, but are allowed to proceed to the customer's server. + // + // Types that are valid to be assigned to BotDefenseChoice: + // *GlobalSpecType_DisableBotDefense + // *GlobalSpecType_BotDefense + // *GlobalSpecType_BotDefenseAdvanced + BotDefenseChoice isGlobalSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` + // Enable Client-Side Defense functionality for VirtualHost + // + // x-displayName: "Client-Side Defense" + // Client-Side Defense (CSD) provides a multi-phase protection system that protects web applications against Magecart, formjacking, digital + // skimming, PII harvesting and other malicious JavaScript attacks. + // Enabling CSD is a 2-part process + // (1) Service Enablement + // (2) JavaScript injection using a Load Balancer. + // By clicking enable in this section and going through the configuration, you can complete part 2 of the process. + // To enable the service itself, please visit the Service's Landing page using the search on the left navigation pane. + // + // Types that are valid to be assigned to ClientSideDefenseChoice: + // *GlobalSpecType_DisableClientSideDefense + // *GlobalSpecType_ClientSideDefense + ClientSideDefenseChoice isGlobalSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` + // API Definition choice + // + // x-required + // x-displayName: "API Definition" + // API Definition based on the imported swagger specs + // + // Types that are valid to be assigned to ApiDefinitionChoice: + // *GlobalSpecType_DisableApiDefinition + // *GlobalSpecType_ApiDefinition + // *GlobalSpecType_ApiSpecification + // *GlobalSpecType_ApiDefinitions + ApiDefinitionChoice isGlobalSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` + // ip_reputation + // + // x-displayName: "IP Reputation" + // IP reputation service analyzes IP threats and publishes a dynamic data set of millions of high-risk IP addresses, to protect users from inbound traffic from malicious IPs. + // IP threat categories include Spam Sources, Windows Exploits, Web Attacks, BotNets, Scanners, Denial of Service, Reputation, Phishing, Proxy, Mobile Threats, and TOR Proxy. + // + // Types that are valid to be assigned to IpReputationChoice: + // *GlobalSpecType_DisableIpReputation + // *GlobalSpecType_EnableIpReputation + IpReputationChoice isGlobalSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` + // threat_mesh + // + // x-required + // x-displayName: "Threat Mesh" + // Threat Mesh provides F5 Distributed Cloud customers with an additional layer of protection against web application attacks. + // Threat mesh leverages cross-customer correlation i.e correlation of client attacks across different customers + // to identify malicious intent of the client. Whenever a client is flagged due to malicious intent by our WAAP decision engines, + // that client will be added to the ThreatDB and all customers get this intelligence and are protected in real-time. + // + // Types that are valid to be assigned to ThreatMeshChoice: + // *GlobalSpecType_DisableThreatMesh + // *GlobalSpecType_EnableThreatMesh + ThreatMeshChoice isGlobalSpecType_ThreatMeshChoice `protobuf_oneof:"threat_mesh_choice"` + // view_internal + // + // x-displayName: "View Internal" + // Reference to view internal object + ViewInternal *views.ObjectRefType `protobuf:"bytes,1000,opt,name=view_internal,json=viewInternal,proto3" json:"view_internal,omitempty"` + // host name + // + // x-displayName: "Host Name" + // x-example: "ves-io-cf8684b9-a18f-4843-a24f-1f9ee8ea2776.ac.vh.ves.io" + // Internally generated host name to be used for the virtual host + HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` + // DNS information + // + // x-displayName: "DNS Information" + // DNS information for this virtual host + DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` + // Virtual Host state + // + // x-displayName: "Virtual Host State" + // State of the virtual host + State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` + // Auto Cert State + // + // x-displayName: "Auto Cert State" + // State of auto certificate generation. + AutoCertState virtual_host.CertificationState `protobuf:"varint,1004,opt,name=auto_cert_state,json=autoCertState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"auto_cert_state,omitempty"` // Deprecated: Do not use. + // Auto Cert Information + // + // x-displayName: "Auto Cert Information" + // Auto certificate related information + AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` + // Internet VIP Info + // + // x-displayName: "Internet VIP Info" + // Internet VIP Info + InternetVipInfo []*views.InternetVIPInfo `protobuf:"bytes,1100,rep,name=internet_vip_info,json=internetVipInfo,proto3" json:"internet_vip_info,omitempty"` + // csrf_policy + // + // x-displayName: "Cross-Site Request Forgery Protection" + // Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf. + // + // The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host. + // + // 1. The origin that caused the user agent to issue the request (source origin). + // 2. The origin that the request is going to (target origin). + // When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid. + // Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.). + CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` + // GraphQL Inspection + // + // x-displayName: "GraphQL Inspection" + // GraphQL is a query language and server-side runtime for APIs which provides a complete and understandable + // description of the data in API. GraphQL gives clients the power to ask for exactly what they need, makes it + // easier to evolve APIs over time, and enables powerful developer tools. Policy configuration to analyze GraphQL + // queries and prevent GraphQL tailored attacks. + GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` + // Cookie protection + // + // x-displayName: "Cookie Protection" + // Allows setting attributes (SameSite, Secure, and HttpOnly) on cookies in responses. + // Cookie Tampering Protection prevents attackers from modifying the value of session cookies. + // For Cookie Tampering Protection, enabling a web app firewall (WAF) is a prerequisite. + // The configured mode of WAF (monitoring or blocking) will be enforced on the request when cookie tampering is identified. + // Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection. + ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` + // Slow DDoS Mitigation + // + // x-displayName: "Slow DDoS Mitigation" + // "Slow and low" attacks tie up server resources, leaving none available for servicing + // requests from actual users.Configuration that protects origins from slow and low attacks. + // In the case HTTP loadbalancer, only default settings can be applied. For HTTPS load balancer, + // the request timeout and request headers timeout value can be customized. + // + // Types that are valid to be assigned to SlowDdosMitigationChoice: + // *GlobalSpecType_SystemDefaultTimeouts + // *GlobalSpecType_SlowDdosMitigation + SlowDdosMitigationChoice isGlobalSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` + // JWT Validation + // + // x-displayName: "JWT Validation" + // JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming + // JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired + // tokens or tokens that are not yet valid. + JwtValidation *common_waf.JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` + // L7 DDoS Auto Mitigation Action + // + // x-displayName: "L7 DDoS Auto Mitigation" + // x-required + // Select an action for auto mitigation + // + // Types that are valid to be assigned to L7DdosAutoMitigationAction: + // *GlobalSpecType_L7DdosActionDefault + // *GlobalSpecType_L7DdosActionBlock + // *GlobalSpecType_L7DdosActionJsChallenge + // *GlobalSpecType_L7DdosActionNone + L7DdosAutoMitigationAction isGlobalSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` + // Cert State + // + // x-displayName: "Cert State" + // State of Custom certificate or Auto certificate generation. + CertState virtual_host.CertificationState `protobuf:"varint,115,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` } -func (m *ProtectedAppEndpointType) Reset() { *m = ProtectedAppEndpointType{} } -func (*ProtectedAppEndpointType) ProtoMessage() {} -func (*ProtectedAppEndpointType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{62} +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{39} } -func (m *ProtectedAppEndpointType) XXX_Unmarshal(b []byte) error { +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ProtectedAppEndpointType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -8570,1266 +6105,1343 @@ func (m *ProtectedAppEndpointType) XXX_Marshal(b []byte, deterministic bool) ([] } return b[:n], nil } -func (m *ProtectedAppEndpointType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProtectedAppEndpointType.Merge(m, src) +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) } -func (m *ProtectedAppEndpointType) XXX_Size() int { +func (m *GlobalSpecType) XXX_Size() int { return m.Size() } -func (m *ProtectedAppEndpointType) XXX_DiscardUnknown() { - xxx_messageInfo_ProtectedAppEndpointType.DiscardUnknown(m) +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) } -var xxx_messageInfo_ProtectedAppEndpointType proto.InternalMessageInfo +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo -type isProtectedAppEndpointType_DomainMatcherChoice interface { - isProtectedAppEndpointType_DomainMatcherChoice() +type isGlobalSpecType_LoadbalancerType interface { + isGlobalSpecType_LoadbalancerType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isProtectedAppEndpointType_AppTrafficTypeChoice interface { - isProtectedAppEndpointType_AppTrafficTypeChoice() +type isGlobalSpecType_AdvertiseChoice interface { + isGlobalSpecType_AdvertiseChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isProtectedAppEndpointType_FlowLabelChoice interface { - isProtectedAppEndpointType_FlowLabelChoice() +type isGlobalSpecType_OriginPoolChoice interface { + isGlobalSpecType_OriginPoolChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } - -type ProtectedAppEndpointType_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +type isGlobalSpecType_HostRewriteParams interface { + isGlobalSpecType_HostRewriteParams() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ProtectedAppEndpointType_Domain struct { - Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` +type isGlobalSpecType_WafChoice interface { + isGlobalSpecType_WafChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ProtectedAppEndpointType_WebClient struct { - WebClient *schema.Empty `protobuf:"bytes,10,opt,name=web_client,json=webClient,proto3,oneof" json:"web_client,omitempty"` +type isGlobalSpecType_ChallengeType interface { + isGlobalSpecType_ChallengeType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ProtectedAppEndpointType_MobileClient struct { - MobileClient *schema.Empty `protobuf:"bytes,11,opt,name=mobile_client,json=mobileClient,proto3,oneof" json:"mobile_client,omitempty"` +type isGlobalSpecType_UserIdChoice interface { + isGlobalSpecType_UserIdChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ProtectedAppEndpointType_WebMobileClient struct { - WebMobileClient *WebMobileTrafficType `protobuf:"bytes,12,opt,name=web_mobile_client,json=webMobileClient,proto3,oneof" json:"web_mobile_client,omitempty"` +type isGlobalSpecType_RateLimitChoice interface { + isGlobalSpecType_RateLimitChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ProtectedAppEndpointType_UndefinedFlowLabel struct { - UndefinedFlowLabel *schema.Empty `protobuf:"bytes,14,opt,name=undefined_flow_label,json=undefinedFlowLabel,proto3,oneof" json:"undefined_flow_label,omitempty"` +type isGlobalSpecType_ServicePolicyChoice interface { + isGlobalSpecType_ServicePolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -type ProtectedAppEndpointType_FlowLabel struct { - FlowLabel *schema.BotDefenseFlowLabelCategoriesChoiceType `protobuf:"bytes,15,opt,name=flow_label,json=flowLabel,proto3,oneof" json:"flow_label,omitempty"` +type isGlobalSpecType_HashPolicyChoice interface { + isGlobalSpecType_HashPolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_TrustClientIpHeadersChoice interface { + isGlobalSpecType_TrustClientIpHeadersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_MlConfigChoice interface { + isGlobalSpecType_MlConfigChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_MaliciousUserDetectionChoice interface { + isGlobalSpecType_MaliciousUserDetectionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_ApiDiscoveryChoice interface { + isGlobalSpecType_ApiDiscoveryChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_BotDefenseChoice interface { + isGlobalSpecType_BotDefenseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_ClientSideDefenseChoice interface { + isGlobalSpecType_ClientSideDefenseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_ApiDefinitionChoice interface { + isGlobalSpecType_ApiDefinitionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_IpReputationChoice interface { + isGlobalSpecType_IpReputationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_ThreatMeshChoice interface { + isGlobalSpecType_ThreatMeshChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_SlowDdosMitigationChoice interface { + isGlobalSpecType_SlowDdosMitigationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isGlobalSpecType_L7DdosAutoMitigationAction interface { + isGlobalSpecType_L7DdosAutoMitigationAction() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (*ProtectedAppEndpointType_AnyDomain) isProtectedAppEndpointType_DomainMatcherChoice() {} -func (*ProtectedAppEndpointType_Domain) isProtectedAppEndpointType_DomainMatcherChoice() {} -func (*ProtectedAppEndpointType_WebClient) isProtectedAppEndpointType_AppTrafficTypeChoice() {} -func (*ProtectedAppEndpointType_MobileClient) isProtectedAppEndpointType_AppTrafficTypeChoice() {} -func (*ProtectedAppEndpointType_WebMobileClient) isProtectedAppEndpointType_AppTrafficTypeChoice() {} -func (*ProtectedAppEndpointType_UndefinedFlowLabel) isProtectedAppEndpointType_FlowLabelChoice() {} -func (*ProtectedAppEndpointType_FlowLabel) isProtectedAppEndpointType_FlowLabelChoice() {} +type GlobalSpecType_Http struct { + Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` +} +type GlobalSpecType_HttpsAutoCert struct { + HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +} +type GlobalSpecType_Https struct { + Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` +} +type GlobalSpecType_DoNotAdvertise struct { + DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` +} +type GlobalSpecType_AdvertiseOnPublicDefaultVip struct { + AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` +} +type GlobalSpecType_AdvertiseOnPublic struct { + AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` +} +type GlobalSpecType_AdvertiseCustom struct { + AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` +} +type GlobalSpecType_DefaultPool struct { + DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` +} +type GlobalSpecType_DefaultPoolList struct { + DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` +} +type GlobalSpecType_AutoHostRewrite struct { + AutoHostRewrite *schema.Empty `protobuf:"bytes,28,opt,name=auto_host_rewrite,json=autoHostRewrite,proto3,oneof" json:"auto_host_rewrite,omitempty"` +} +type GlobalSpecType_HostRewrite struct { + HostRewrite string `protobuf:"bytes,29,opt,name=host_rewrite,json=hostRewrite,proto3,oneof" json:"host_rewrite,omitempty"` +} +type GlobalSpecType_DisableHostRewrite struct { + DisableHostRewrite *schema.Empty `protobuf:"bytes,30,opt,name=disable_host_rewrite,json=disableHostRewrite,proto3,oneof" json:"disable_host_rewrite,omitempty"` +} +type GlobalSpecType_DisableWaf struct { + DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` +} +type GlobalSpecType_AppFirewall struct { + AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` +} +type GlobalSpecType_NoChallenge struct { + NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` +} +type GlobalSpecType_EnableChallenge struct { + EnableChallenge *common_waf.EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` +} +type GlobalSpecType_JsChallenge struct { + JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` +} +type GlobalSpecType_CaptchaChallenge struct { + CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` +} +type GlobalSpecType_PolicyBasedChallenge struct { + PolicyBasedChallenge *common_waf.PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` +} +type GlobalSpecType_UserIdClientIp struct { + UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` +} +type GlobalSpecType_UserIdentification struct { + UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` +} +type GlobalSpecType_DisableRateLimit struct { + DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` +} +type GlobalSpecType_ApiRateLimit struct { + ApiRateLimit *common_waf.APIRateLimit `protobuf:"bytes,120,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` +} +type GlobalSpecType_RateLimit struct { + RateLimit *common_waf.RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` +} +type GlobalSpecType_ServicePoliciesFromNamespace struct { + ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` +} +type GlobalSpecType_NoServicePolicies struct { + NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` +} +type GlobalSpecType_ActiveServicePolicies struct { + ActiveServicePolicies *common_waf.ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` +} +type GlobalSpecType_RoundRobin struct { + RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` +} +type GlobalSpecType_LeastActive struct { + LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` +} +type GlobalSpecType_Random struct { + Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` +} +type GlobalSpecType_SourceIpStickiness struct { + SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` +} +type GlobalSpecType_CookieStickiness struct { + CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` +} +type GlobalSpecType_RingHash struct { + RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` +} +type GlobalSpecType_DisableTrustClientIpHeaders struct { + DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` +} +type GlobalSpecType_EnableTrustClientIpHeaders struct { + EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` +} +type GlobalSpecType_SingleLbApp struct { + SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` +} +type GlobalSpecType_MultiLbApp struct { + MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` +} +type GlobalSpecType_EnableMaliciousUserDetection struct { + EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` +} +type GlobalSpecType_DisableMaliciousUserDetection struct { + DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` +} +type GlobalSpecType_EnableApiDiscovery struct { + EnableApiDiscovery *common_waf.ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` +} +type GlobalSpecType_DisableApiDiscovery struct { + DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` +} +type GlobalSpecType_DisableBotDefense struct { + DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` +} +type GlobalSpecType_BotDefense struct { + BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` +} +type GlobalSpecType_BotDefenseAdvanced struct { + BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` +} +type GlobalSpecType_DisableClientSideDefense struct { + DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` +} +type GlobalSpecType_ClientSideDefense struct { + ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` +} +type GlobalSpecType_DisableApiDefinition struct { + DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` +} +type GlobalSpecType_ApiDefinition struct { + ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` +} +type GlobalSpecType_ApiSpecification struct { + ApiSpecification *common_waf.APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` +} +type GlobalSpecType_ApiDefinitions struct { + ApiDefinitions *common_waf.ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` +} +type GlobalSpecType_DisableIpReputation struct { + DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` +} +type GlobalSpecType_EnableIpReputation struct { + EnableIpReputation *common_waf.IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` +} +type GlobalSpecType_DisableThreatMesh struct { + DisableThreatMesh *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_mesh,json=disableThreatMesh,proto3,oneof" json:"disable_threat_mesh,omitempty"` +} +type GlobalSpecType_EnableThreatMesh struct { + EnableThreatMesh *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_mesh,json=enableThreatMesh,proto3,oneof" json:"enable_threat_mesh,omitempty"` +} +type GlobalSpecType_SystemDefaultTimeouts struct { + SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` +} +type GlobalSpecType_SlowDdosMitigation struct { + SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` +} +type GlobalSpecType_L7DdosActionDefault struct { + L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` +} +type GlobalSpecType_L7DdosActionBlock struct { + L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` +} +type GlobalSpecType_L7DdosActionJsChallenge struct { + L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` +} +type GlobalSpecType_L7DdosActionNone struct { + L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` +} -func (m *ProtectedAppEndpointType) GetDomainMatcherChoice() isProtectedAppEndpointType_DomainMatcherChoice { +func (*GlobalSpecType_Http) isGlobalSpecType_LoadbalancerType() {} +func (*GlobalSpecType_HttpsAutoCert) isGlobalSpecType_LoadbalancerType() {} +func (*GlobalSpecType_Https) isGlobalSpecType_LoadbalancerType() {} +func (*GlobalSpecType_DoNotAdvertise) isGlobalSpecType_AdvertiseChoice() {} +func (*GlobalSpecType_AdvertiseOnPublicDefaultVip) isGlobalSpecType_AdvertiseChoice() {} +func (*GlobalSpecType_AdvertiseOnPublic) isGlobalSpecType_AdvertiseChoice() {} +func (*GlobalSpecType_AdvertiseCustom) isGlobalSpecType_AdvertiseChoice() {} +func (*GlobalSpecType_DefaultPool) isGlobalSpecType_OriginPoolChoice() {} +func (*GlobalSpecType_DefaultPoolList) isGlobalSpecType_OriginPoolChoice() {} +func (*GlobalSpecType_AutoHostRewrite) isGlobalSpecType_HostRewriteParams() {} +func (*GlobalSpecType_HostRewrite) isGlobalSpecType_HostRewriteParams() {} +func (*GlobalSpecType_DisableHostRewrite) isGlobalSpecType_HostRewriteParams() {} +func (*GlobalSpecType_DisableWaf) isGlobalSpecType_WafChoice() {} +func (*GlobalSpecType_AppFirewall) isGlobalSpecType_WafChoice() {} +func (*GlobalSpecType_NoChallenge) isGlobalSpecType_ChallengeType() {} +func (*GlobalSpecType_EnableChallenge) isGlobalSpecType_ChallengeType() {} +func (*GlobalSpecType_JsChallenge) isGlobalSpecType_ChallengeType() {} +func (*GlobalSpecType_CaptchaChallenge) isGlobalSpecType_ChallengeType() {} +func (*GlobalSpecType_PolicyBasedChallenge) isGlobalSpecType_ChallengeType() {} +func (*GlobalSpecType_UserIdClientIp) isGlobalSpecType_UserIdChoice() {} +func (*GlobalSpecType_UserIdentification) isGlobalSpecType_UserIdChoice() {} +func (*GlobalSpecType_DisableRateLimit) isGlobalSpecType_RateLimitChoice() {} +func (*GlobalSpecType_ApiRateLimit) isGlobalSpecType_RateLimitChoice() {} +func (*GlobalSpecType_RateLimit) isGlobalSpecType_RateLimitChoice() {} +func (*GlobalSpecType_ServicePoliciesFromNamespace) isGlobalSpecType_ServicePolicyChoice() {} +func (*GlobalSpecType_NoServicePolicies) isGlobalSpecType_ServicePolicyChoice() {} +func (*GlobalSpecType_ActiveServicePolicies) isGlobalSpecType_ServicePolicyChoice() {} +func (*GlobalSpecType_RoundRobin) isGlobalSpecType_HashPolicyChoice() {} +func (*GlobalSpecType_LeastActive) isGlobalSpecType_HashPolicyChoice() {} +func (*GlobalSpecType_Random) isGlobalSpecType_HashPolicyChoice() {} +func (*GlobalSpecType_SourceIpStickiness) isGlobalSpecType_HashPolicyChoice() {} +func (*GlobalSpecType_CookieStickiness) isGlobalSpecType_HashPolicyChoice() {} +func (*GlobalSpecType_RingHash) isGlobalSpecType_HashPolicyChoice() {} +func (*GlobalSpecType_DisableTrustClientIpHeaders) isGlobalSpecType_TrustClientIpHeadersChoice() {} +func (*GlobalSpecType_EnableTrustClientIpHeaders) isGlobalSpecType_TrustClientIpHeadersChoice() {} +func (*GlobalSpecType_SingleLbApp) isGlobalSpecType_MlConfigChoice() {} +func (*GlobalSpecType_MultiLbApp) isGlobalSpecType_MlConfigChoice() {} +func (*GlobalSpecType_EnableMaliciousUserDetection) isGlobalSpecType_MaliciousUserDetectionChoice() {} +func (*GlobalSpecType_DisableMaliciousUserDetection) isGlobalSpecType_MaliciousUserDetectionChoice() { +} +func (*GlobalSpecType_EnableApiDiscovery) isGlobalSpecType_ApiDiscoveryChoice() {} +func (*GlobalSpecType_DisableApiDiscovery) isGlobalSpecType_ApiDiscoveryChoice() {} +func (*GlobalSpecType_DisableBotDefense) isGlobalSpecType_BotDefenseChoice() {} +func (*GlobalSpecType_BotDefense) isGlobalSpecType_BotDefenseChoice() {} +func (*GlobalSpecType_BotDefenseAdvanced) isGlobalSpecType_BotDefenseChoice() {} +func (*GlobalSpecType_DisableClientSideDefense) isGlobalSpecType_ClientSideDefenseChoice() {} +func (*GlobalSpecType_ClientSideDefense) isGlobalSpecType_ClientSideDefenseChoice() {} +func (*GlobalSpecType_DisableApiDefinition) isGlobalSpecType_ApiDefinitionChoice() {} +func (*GlobalSpecType_ApiDefinition) isGlobalSpecType_ApiDefinitionChoice() {} +func (*GlobalSpecType_ApiSpecification) isGlobalSpecType_ApiDefinitionChoice() {} +func (*GlobalSpecType_ApiDefinitions) isGlobalSpecType_ApiDefinitionChoice() {} +func (*GlobalSpecType_DisableIpReputation) isGlobalSpecType_IpReputationChoice() {} +func (*GlobalSpecType_EnableIpReputation) isGlobalSpecType_IpReputationChoice() {} +func (*GlobalSpecType_DisableThreatMesh) isGlobalSpecType_ThreatMeshChoice() {} +func (*GlobalSpecType_EnableThreatMesh) isGlobalSpecType_ThreatMeshChoice() {} +func (*GlobalSpecType_SystemDefaultTimeouts) isGlobalSpecType_SlowDdosMitigationChoice() {} +func (*GlobalSpecType_SlowDdosMitigation) isGlobalSpecType_SlowDdosMitigationChoice() {} +func (*GlobalSpecType_L7DdosActionDefault) isGlobalSpecType_L7DdosAutoMitigationAction() {} +func (*GlobalSpecType_L7DdosActionBlock) isGlobalSpecType_L7DdosAutoMitigationAction() {} +func (*GlobalSpecType_L7DdosActionJsChallenge) isGlobalSpecType_L7DdosAutoMitigationAction() {} +func (*GlobalSpecType_L7DdosActionNone) isGlobalSpecType_L7DdosAutoMitigationAction() {} + +func (m *GlobalSpecType) GetLoadbalancerType() isGlobalSpecType_LoadbalancerType { if m != nil { - return m.DomainMatcherChoice + return m.LoadbalancerType } return nil } -func (m *ProtectedAppEndpointType) GetAppTrafficTypeChoice() isProtectedAppEndpointType_AppTrafficTypeChoice { +func (m *GlobalSpecType) GetAdvertiseChoice() isGlobalSpecType_AdvertiseChoice { if m != nil { - return m.AppTrafficTypeChoice + return m.AdvertiseChoice } return nil } -func (m *ProtectedAppEndpointType) GetFlowLabelChoice() isProtectedAppEndpointType_FlowLabelChoice { +func (m *GlobalSpecType) GetOriginPoolChoice() isGlobalSpecType_OriginPoolChoice { if m != nil { - return m.FlowLabelChoice + return m.OriginPoolChoice } return nil } - -func (m *ProtectedAppEndpointType) GetMetadata() *schema.MessageMetaType { +func (m *GlobalSpecType) GetHostRewriteParams() isGlobalSpecType_HostRewriteParams { if m != nil { - return m.Metadata + return m.HostRewriteParams } return nil } - -func (m *ProtectedAppEndpointType) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_AnyDomain); ok { - return x.AnyDomain +func (m *GlobalSpecType) GetWafChoice() isGlobalSpecType_WafChoice { + if m != nil { + return m.WafChoice } return nil } - -func (m *ProtectedAppEndpointType) GetDomain() *schema.DomainType { - if x, ok := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_Domain); ok { - return x.Domain +func (m *GlobalSpecType) GetChallengeType() isGlobalSpecType_ChallengeType { + if m != nil { + return m.ChallengeType } return nil } - -func (m *ProtectedAppEndpointType) GetPath() *schema.PathMatcherType { +func (m *GlobalSpecType) GetUserIdChoice() isGlobalSpecType_UserIdChoice { if m != nil { - return m.Path + return m.UserIdChoice } return nil } - -func (m *ProtectedAppEndpointType) GetQuery() []*Query { +func (m *GlobalSpecType) GetRateLimitChoice() isGlobalSpecType_RateLimitChoice { if m != nil { - return m.Query + return m.RateLimitChoice } return nil } - -func (m *ProtectedAppEndpointType) GetRequestBody() []*RequestBody { +func (m *GlobalSpecType) GetServicePolicyChoice() isGlobalSpecType_ServicePolicyChoice { if m != nil { - return m.RequestBody + return m.ServicePolicyChoice } return nil } - -func (m *ProtectedAppEndpointType) GetHttpMethods() []schema.BotHttpMethod { +func (m *GlobalSpecType) GetHashPolicyChoice() isGlobalSpecType_HashPolicyChoice { if m != nil { - return m.HttpMethods + return m.HashPolicyChoice } return nil } - -func (m *ProtectedAppEndpointType) GetWebClient() *schema.Empty { - if x, ok := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebClient); ok { - return x.WebClient +func (m *GlobalSpecType) GetTrustClientIpHeadersChoice() isGlobalSpecType_TrustClientIpHeadersChoice { + if m != nil { + return m.TrustClientIpHeadersChoice } return nil } - -func (m *ProtectedAppEndpointType) GetMobileClient() *schema.Empty { - if x, ok := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_MobileClient); ok { - return x.MobileClient +func (m *GlobalSpecType) GetMlConfigChoice() isGlobalSpecType_MlConfigChoice { + if m != nil { + return m.MlConfigChoice } return nil } - -func (m *ProtectedAppEndpointType) GetWebMobileClient() *WebMobileTrafficType { - if x, ok := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebMobileClient); ok { - return x.WebMobileClient +func (m *GlobalSpecType) GetMaliciousUserDetectionChoice() isGlobalSpecType_MaliciousUserDetectionChoice { + if m != nil { + return m.MaliciousUserDetectionChoice } return nil } - -func (m *ProtectedAppEndpointType) GetUndefinedFlowLabel() *schema.Empty { - if x, ok := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_UndefinedFlowLabel); ok { - return x.UndefinedFlowLabel +func (m *GlobalSpecType) GetApiDiscoveryChoice() isGlobalSpecType_ApiDiscoveryChoice { + if m != nil { + return m.ApiDiscoveryChoice } return nil } - -func (m *ProtectedAppEndpointType) GetFlowLabel() *schema.BotDefenseFlowLabelCategoriesChoiceType { - if x, ok := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_FlowLabel); ok { - return x.FlowLabel +func (m *GlobalSpecType) GetBotDefenseChoice() isGlobalSpecType_BotDefenseChoice { + if m != nil { + return m.BotDefenseChoice } return nil } - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ProtectedAppEndpointType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ProtectedAppEndpointType_AnyDomain)(nil), - (*ProtectedAppEndpointType_Domain)(nil), - (*ProtectedAppEndpointType_WebClient)(nil), - (*ProtectedAppEndpointType_MobileClient)(nil), - (*ProtectedAppEndpointType_WebMobileClient)(nil), - (*ProtectedAppEndpointType_UndefinedFlowLabel)(nil), - (*ProtectedAppEndpointType_FlowLabel)(nil), +func (m *GlobalSpecType) GetClientSideDefenseChoice() isGlobalSpecType_ClientSideDefenseChoice { + if m != nil { + return m.ClientSideDefenseChoice } + return nil } - -// RequestBody -// -// x-displayName: "Request Body Parameter Matcher" -// Request Body Parameter Matcher -type RequestBody struct { - // Name - // - // x-displayName: "Request Body Parameter Name" - // x-example: "id" - // Enter request body parameter name - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Value Type - // - // x-displayName: "Value Type" - // x-required - // Request body value type - // - // Types that are valid to be assigned to ValueType: - // - // *RequestBody_ExactValue - // *RequestBody_RegexValue - ValueType isRequestBody_ValueType `protobuf_oneof:"value_type"` -} - -func (m *RequestBody) Reset() { *m = RequestBody{} } -func (*RequestBody) ProtoMessage() {} -func (*RequestBody) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{63} -} -func (m *RequestBody) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *RequestBody) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetApiDefinitionChoice() isGlobalSpecType_ApiDefinitionChoice { + if m != nil { + return m.ApiDefinitionChoice } - return b[:n], nil -} -func (m *RequestBody) XXX_Merge(src proto.Message) { - xxx_messageInfo_RequestBody.Merge(m, src) -} -func (m *RequestBody) XXX_Size() int { - return m.Size() -} -func (m *RequestBody) XXX_DiscardUnknown() { - xxx_messageInfo_RequestBody.DiscardUnknown(m) + return nil } - -var xxx_messageInfo_RequestBody proto.InternalMessageInfo - -type isRequestBody_ValueType interface { - isRequestBody_ValueType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *GlobalSpecType) GetIpReputationChoice() isGlobalSpecType_IpReputationChoice { + if m != nil { + return m.IpReputationChoice + } + return nil } - -type RequestBody_ExactValue struct { - ExactValue string `protobuf:"bytes,2,opt,name=exact_value,json=exactValue,proto3,oneof" json:"exact_value,omitempty"` +func (m *GlobalSpecType) GetThreatMeshChoice() isGlobalSpecType_ThreatMeshChoice { + if m != nil { + return m.ThreatMeshChoice + } + return nil } -type RequestBody_RegexValue struct { - RegexValue string `protobuf:"bytes,3,opt,name=regex_value,json=regexValue,proto3,oneof" json:"regex_value,omitempty"` +func (m *GlobalSpecType) GetSlowDdosMitigationChoice() isGlobalSpecType_SlowDdosMitigationChoice { + if m != nil { + return m.SlowDdosMitigationChoice + } + return nil } - -func (*RequestBody_ExactValue) isRequestBody_ValueType() {} -func (*RequestBody_RegexValue) isRequestBody_ValueType() {} - -func (m *RequestBody) GetValueType() isRequestBody_ValueType { +func (m *GlobalSpecType) GetL7DdosAutoMitigationAction() isGlobalSpecType_L7DdosAutoMitigationAction { if m != nil { - return m.ValueType + return m.L7DdosAutoMitigationAction } return nil } -func (m *RequestBody) GetName() string { +func (m *GlobalSpecType) GetDomains() []string { if m != nil { - return m.Name + return m.Domains } - return "" + return nil } -func (m *RequestBody) GetExactValue() string { - if x, ok := m.GetValueType().(*RequestBody_ExactValue); ok { - return x.ExactValue +func (m *GlobalSpecType) GetHttp() *ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Http); ok { + return x.Http } - return "" + return nil } -func (m *RequestBody) GetRegexValue() string { - if x, ok := m.GetValueType().(*RequestBody_RegexValue); ok { - return x.RegexValue +func (m *GlobalSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { + if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert } - return "" + return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*RequestBody) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*RequestBody_ExactValue)(nil), - (*RequestBody_RegexValue)(nil), +func (m *GlobalSpecType) GetHttps() *ProxyTypeHttps { + if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Https); ok { + return x.Https } + return nil } -// Query -// -// x-displayName: "Query Parameter Matcher" -// Query Parameter Matcher -type Query struct { - // Name - // - // x-displayName: "Query Parameter Name" - // x-example: "id" - // Enter query parameter name - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // Value Type - // - // x-displayName: "Value Type" - // x-required - // Query parameter value type - // - // Types that are valid to be assigned to ValueType: - // - // *Query_ExactValue - // *Query_RegexValue - // *Query_CheckPresence - ValueType isQuery_ValueType `protobuf_oneof:"value_type"` +func (m *GlobalSpecType) GetDownstreamTlsCertificateExpirationTimestamps() []*types.Timestamp { + if m != nil { + return m.DownstreamTlsCertificateExpirationTimestamps + } + return nil } -func (m *Query) Reset() { *m = Query{} } -func (*Query) ProtoMessage() {} -func (*Query) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{64} -} -func (m *Query) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *Query) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetDoNotAdvertise() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_DoNotAdvertise); ok { + return x.DoNotAdvertise } - return b[:n], nil -} -func (m *Query) XXX_Merge(src proto.Message) { - xxx_messageInfo_Query.Merge(m, src) -} -func (m *Query) XXX_Size() int { - return m.Size() -} -func (m *Query) XXX_DiscardUnknown() { - xxx_messageInfo_Query.DiscardUnknown(m) + return nil } -var xxx_messageInfo_Query proto.InternalMessageInfo - -type isQuery_ValueType interface { - isQuery_ValueType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *GlobalSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublicDefaultVip); ok { + return x.AdvertiseOnPublicDefaultVip + } + return nil } -type Query_ExactValue struct { - ExactValue string `protobuf:"bytes,2,opt,name=exact_value,json=exactValue,proto3,oneof" json:"exact_value,omitempty"` -} -type Query_RegexValue struct { - RegexValue string `protobuf:"bytes,3,opt,name=regex_value,json=regexValue,proto3,oneof" json:"regex_value,omitempty"` -} -type Query_CheckPresence struct { - CheckPresence *schema.Empty `protobuf:"bytes,4,opt,name=check_presence,json=checkPresence,proto3,oneof" json:"check_presence,omitempty"` +func (m *GlobalSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { + if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublic); ok { + return x.AdvertiseOnPublic + } + return nil } -func (*Query_ExactValue) isQuery_ValueType() {} -func (*Query_RegexValue) isQuery_ValueType() {} -func (*Query_CheckPresence) isQuery_ValueType() {} - -func (m *Query) GetValueType() isQuery_ValueType { - if m != nil { - return m.ValueType +func (m *GlobalSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { + if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseCustom); ok { + return x.AdvertiseCustom } return nil } -func (m *Query) GetName() string { +func (m *GlobalSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { if m != nil { - return m.Name + return m.DefaultRoutePools } - return "" + return nil } -func (m *Query) GetExactValue() string { - if x, ok := m.GetValueType().(*Query_ExactValue); ok { - return x.ExactValue +func (m *GlobalSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { + if x, ok := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPool); ok { + return x.DefaultPool } - return "" + return nil } -func (m *Query) GetRegexValue() string { - if x, ok := m.GetValueType().(*Query_RegexValue); ok { - return x.RegexValue +func (m *GlobalSpecType) GetDefaultPoolList() *views.OriginPoolListType { + if x, ok := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPoolList); ok { + return x.DefaultPoolList } - return "" + return nil } -func (m *Query) GetCheckPresence() *schema.Empty { - if x, ok := m.GetValueType().(*Query_CheckPresence); ok { - return x.CheckPresence +func (m *GlobalSpecType) GetAutoHostRewrite() *schema.Empty { + if x, ok := m.GetHostRewriteParams().(*GlobalSpecType_AutoHostRewrite); ok { + return x.AutoHostRewrite } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*Query) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*Query_ExactValue)(nil), - (*Query_RegexValue)(nil), - (*Query_CheckPresence)(nil), +func (m *GlobalSpecType) GetHostRewrite() string { + if x, ok := m.GetHostRewriteParams().(*GlobalSpecType_HostRewrite); ok { + return x.HostRewrite } + return "" } -// ShapeBotDefenseType -// -// x-displayName: "Bot Defense" -// This defines various configuration options for Bot Defense Policy. -type ShapeBotDefenseType struct { - // Bot Defense Region - // - // x-displayName: "Bot Defense Region" - // Specify Bot Defense region to use - // x-required - RegionalEndpoint ShapeBotDefenseRegion `protobuf:"varint,1,opt,name=regional_endpoint,json=regionalEndpoint,proto3,enum=ves.io.schema.views.http_loadbalancer.ShapeBotDefenseRegion" json:"regional_endpoint,omitempty"` - // ShapeBotDefensePolicyType - // - // x-displayName: "Bot Defense Policy" - // x-required - // Bot Defense Policy. - Policy *ShapeBotDefensePolicyType `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"` - // timeout - // - // x-displayName: "Timeout" - // x-example: "300" - // The timeout for the inference check, in milliseconds. - Timeout uint32 `protobuf:"varint,3,opt,name=timeout,proto3" json:"timeout,omitempty"` - // Cors Support Choice - // - // x-displayName: "CORS Policy Support" - // x-required - // Enables Cross-Origin Resource Sharing (CORS) Policy Support to allow - // Bot Defense to work with CORS on the origin server. If you use CORS - // on your application, disabling this setting significantly limits the - // ability of Bot Defense to protect against bot attacks. - // - // Types that are valid to be assigned to CorsSupportChoice: - // - // *ShapeBotDefenseType_EnableCorsSupport - // *ShapeBotDefenseType_DisableCorsSupport - CorsSupportChoice isShapeBotDefenseType_CorsSupportChoice `protobuf_oneof:"cors_support_choice"` -} - -func (m *ShapeBotDefenseType) Reset() { *m = ShapeBotDefenseType{} } -func (*ShapeBotDefenseType) ProtoMessage() {} -func (*ShapeBotDefenseType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{65} -} -func (m *ShapeBotDefenseType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ShapeBotDefenseType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetDisableHostRewrite() *schema.Empty { + if x, ok := m.GetHostRewriteParams().(*GlobalSpecType_DisableHostRewrite); ok { + return x.DisableHostRewrite } - return b[:n], nil -} -func (m *ShapeBotDefenseType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeBotDefenseType.Merge(m, src) -} -func (m *ShapeBotDefenseType) XXX_Size() int { - return m.Size() -} -func (m *ShapeBotDefenseType) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeBotDefenseType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_ShapeBotDefenseType proto.InternalMessageInfo - -type isShapeBotDefenseType_CorsSupportChoice interface { - isShapeBotDefenseType_CorsSupportChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *GlobalSpecType) GetRoutes() []*RouteType { + if m != nil { + return m.Routes + } + return nil } -type ShapeBotDefenseType_EnableCorsSupport struct { - EnableCorsSupport *schema.Empty `protobuf:"bytes,5,opt,name=enable_cors_support,json=enableCorsSupport,proto3,oneof" json:"enable_cors_support,omitempty"` -} -type ShapeBotDefenseType_DisableCorsSupport struct { - DisableCorsSupport *schema.Empty `protobuf:"bytes,6,opt,name=disable_cors_support,json=disableCorsSupport,proto3,oneof" json:"disable_cors_support,omitempty"` +func (m *GlobalSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { + if m != nil { + return m.OriginServerSubsetRuleList + } + return nil } -func (*ShapeBotDefenseType_EnableCorsSupport) isShapeBotDefenseType_CorsSupportChoice() {} -func (*ShapeBotDefenseType_DisableCorsSupport) isShapeBotDefenseType_CorsSupportChoice() {} - -func (m *ShapeBotDefenseType) GetCorsSupportChoice() isShapeBotDefenseType_CorsSupportChoice { +func (m *GlobalSpecType) GetCorsPolicy() *schema.CorsPolicy { if m != nil { - return m.CorsSupportChoice + return m.CorsPolicy } return nil } -func (m *ShapeBotDefenseType) GetRegionalEndpoint() ShapeBotDefenseRegion { - if m != nil { - return m.RegionalEndpoint +func (m *GlobalSpecType) GetDisableWaf() *schema.Empty { + if x, ok := m.GetWafChoice().(*GlobalSpecType_DisableWaf); ok { + return x.DisableWaf } - return AUTO + return nil } -func (m *ShapeBotDefenseType) GetPolicy() *ShapeBotDefensePolicyType { - if m != nil { - return m.Policy +func (m *GlobalSpecType) GetAppFirewall() *views.ObjectRefType { + if x, ok := m.GetWafChoice().(*GlobalSpecType_AppFirewall); ok { + return x.AppFirewall } return nil } -func (m *ShapeBotDefenseType) GetTimeout() uint32 { +func (m *GlobalSpecType) GetAddLocation() bool { if m != nil { - return m.Timeout + return m.AddLocation } - return 0 + return false } -func (m *ShapeBotDefenseType) GetEnableCorsSupport() *schema.Empty { - if x, ok := m.GetCorsSupportChoice().(*ShapeBotDefenseType_EnableCorsSupport); ok { - return x.EnableCorsSupport +func (m *GlobalSpecType) GetNoChallenge() *schema.Empty { + if x, ok := m.GetChallengeType().(*GlobalSpecType_NoChallenge); ok { + return x.NoChallenge } return nil } -func (m *ShapeBotDefenseType) GetDisableCorsSupport() *schema.Empty { - if x, ok := m.GetCorsSupportChoice().(*ShapeBotDefenseType_DisableCorsSupport); ok { - return x.DisableCorsSupport +func (m *GlobalSpecType) GetEnableChallenge() *common_waf.EnableChallenge { + if x, ok := m.GetChallengeType().(*GlobalSpecType_EnableChallenge); ok { + return x.EnableChallenge } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ShapeBotDefenseType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ShapeBotDefenseType_EnableCorsSupport)(nil), - (*ShapeBotDefenseType_DisableCorsSupport)(nil), +func (m *GlobalSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetChallengeType().(*GlobalSpecType_JsChallenge); ok { + return x.JsChallenge } + return nil } -// BotDefenseAdvancedType -// -// x-displayName: "Bot Defense Advanced" -// Bot Defense Advanced -type BotDefenseAdvancedType struct { - // Web - // - // x-displayName: "Infrastructure For Web" - // Select infrastructure for web. - Web *views.ObjectRefType `protobuf:"bytes,1,opt,name=web,proto3" json:"web,omitempty"` - // Mobile - // - // x-displayName: "Infrastructure For Mobile" - // Select infrastructure for mobile. - Mobile *views.ObjectRefType `protobuf:"bytes,2,opt,name=mobile,proto3" json:"mobile,omitempty"` - // BotDefenseAdvancedPolicyType - // - // x-displayName: "Bot Defense Advanced Policy" - // x-required - // Bot Defense Advanced Policy. - Policy *BotDefenseAdvancedPolicyType `protobuf:"bytes,3,opt,name=policy,proto3" json:"policy,omitempty"` -} - -func (m *BotDefenseAdvancedType) Reset() { *m = BotDefenseAdvancedType{} } -func (*BotDefenseAdvancedType) ProtoMessage() {} -func (*BotDefenseAdvancedType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{66} -} -func (m *BotDefenseAdvancedType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BotDefenseAdvancedType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetChallengeType().(*GlobalSpecType_CaptchaChallenge); ok { + return x.CaptchaChallenge } - return b[:n], nil -} -func (m *BotDefenseAdvancedType) XXX_Merge(src proto.Message) { - xxx_messageInfo_BotDefenseAdvancedType.Merge(m, src) -} -func (m *BotDefenseAdvancedType) XXX_Size() int { - return m.Size() -} -func (m *BotDefenseAdvancedType) XXX_DiscardUnknown() { - xxx_messageInfo_BotDefenseAdvancedType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_BotDefenseAdvancedType proto.InternalMessageInfo - -func (m *BotDefenseAdvancedType) GetWeb() *views.ObjectRefType { - if m != nil { - return m.Web +func (m *GlobalSpecType) GetPolicyBasedChallenge() *common_waf.PolicyBasedChallenge { + if x, ok := m.GetChallengeType().(*GlobalSpecType_PolicyBasedChallenge); ok { + return x.PolicyBasedChallenge } return nil } -func (m *BotDefenseAdvancedType) GetMobile() *views.ObjectRefType { +func (m *GlobalSpecType) GetMoreOption() *AdvancedOptionsType { if m != nil { - return m.Mobile + return m.MoreOption } return nil } -func (m *BotDefenseAdvancedType) GetPolicy() *BotDefenseAdvancedPolicyType { - if m != nil { - return m.Policy +func (m *GlobalSpecType) GetUserIdClientIp() *schema.Empty { + if x, ok := m.GetUserIdChoice().(*GlobalSpecType_UserIdClientIp); ok { + return x.UserIdClientIp } return nil } -// ShapeShapeBotDefensePolicyType -// -// x-displayName: "Bot Defense Policy" -// This defines various configuration options for Bot Defense policy. -type ShapeBotDefensePolicyType struct { - // AppEndpointType - // - // x-displayName: "App Endpoint Type" - // x-required - // List of protected application endpoints (max 128 items). - ProtectedAppEndpoints []*AppEndpointType `protobuf:"bytes,1,rep,name=protected_app_endpoints,json=protectedAppEndpoints,proto3" json:"protected_app_endpoints,omitempty"` - // JavaScript Choice - // - // x-displayName: "JavaScript Insertion Settings" - // x-required - // This defines a JavaScript insertion rule. - // - // Types that are valid to be assigned to JavaScriptChoice: - // - // *ShapeBotDefensePolicyType_DisableJsInsert - // *ShapeBotDefensePolicyType_JsInsertAllPages - // *ShapeBotDefensePolicyType_JsInsertAllPagesExcept - // *ShapeBotDefensePolicyType_JsInsertionRules - JavaScriptChoice isShapeBotDefensePolicyType_JavaScriptChoice `protobuf_oneof:"java_script_choice"` - // js_download_path - // - // x-displayName: "JavaScript Download Path" - // x-example: "value" - // Customize Bot Defense Client JavaScript path. If not specified, default `/common.js` - JsDownloadPath string `protobuf:"bytes,2,opt,name=js_download_path,json=jsDownloadPath,proto3" json:"js_download_path,omitempty"` - // javascript_mode - // - // x-displayName: "Web Client JavaScript Mode" - // x-required - // Determine the mode in which the JavaScript is loaded into the entry page. - // The JavaScript is split into 2 chunks. - // The larger chunk can be loaded asynchronously or synchronously. It can also be cacheable or non-cacheable on the browser. - JavascriptMode schema.JavaScriptMode `protobuf:"varint,11,opt,name=javascript_mode,json=javascriptMode,proto3,enum=ves.io.schema.JavaScriptMode" json:"javascript_mode,omitempty"` - // Mobile SDK Choice - // - // x-displayName: "Mobile SDK Settings" - // x-required - // This defines mobile SDK configuration. - // - // Types that are valid to be assigned to MobileSdkChoice: - // - // *ShapeBotDefensePolicyType_DisableMobileSdk - // *ShapeBotDefensePolicyType_MobileSdkConfig - MobileSdkChoice isShapeBotDefensePolicyType_MobileSdkChoice `protobuf_oneof:"mobile_sdk_choice"` +func (m *GlobalSpecType) GetUserIdentification() *views.ObjectRefType { + if x, ok := m.GetUserIdChoice().(*GlobalSpecType_UserIdentification); ok { + return x.UserIdentification + } + return nil } -func (m *ShapeBotDefensePolicyType) Reset() { *m = ShapeBotDefensePolicyType{} } -func (*ShapeBotDefensePolicyType) ProtoMessage() {} -func (*ShapeBotDefensePolicyType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{67} -} -func (m *ShapeBotDefensePolicyType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ShapeBotDefensePolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetDisableRateLimit() *schema.Empty { + if x, ok := m.GetRateLimitChoice().(*GlobalSpecType_DisableRateLimit); ok { + return x.DisableRateLimit } - return b[:n], nil -} -func (m *ShapeBotDefensePolicyType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeBotDefensePolicyType.Merge(m, src) -} -func (m *ShapeBotDefensePolicyType) XXX_Size() int { - return m.Size() -} -func (m *ShapeBotDefensePolicyType) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeBotDefensePolicyType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_ShapeBotDefensePolicyType proto.InternalMessageInfo - -type isShapeBotDefensePolicyType_JavaScriptChoice interface { - isShapeBotDefensePolicyType_JavaScriptChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isShapeBotDefensePolicyType_MobileSdkChoice interface { - isShapeBotDefensePolicyType_MobileSdkChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *GlobalSpecType) GetApiRateLimit() *common_waf.APIRateLimit { + if x, ok := m.GetRateLimitChoice().(*GlobalSpecType_ApiRateLimit); ok { + return x.ApiRateLimit + } + return nil } -type ShapeBotDefensePolicyType_DisableJsInsert struct { - DisableJsInsert *schema.Empty `protobuf:"bytes,4,opt,name=disable_js_insert,json=disableJsInsert,proto3,oneof" json:"disable_js_insert,omitempty"` -} -type ShapeBotDefensePolicyType_JsInsertAllPages struct { - JsInsertAllPages *ShapeJavaScriptInsertAllType `protobuf:"bytes,5,opt,name=js_insert_all_pages,json=jsInsertAllPages,proto3,oneof" json:"js_insert_all_pages,omitempty"` -} -type ShapeBotDefensePolicyType_JsInsertAllPagesExcept struct { - JsInsertAllPagesExcept *ShapeJavaScriptInsertAllWithExceptionsType `protobuf:"bytes,6,opt,name=js_insert_all_pages_except,json=jsInsertAllPagesExcept,proto3,oneof" json:"js_insert_all_pages_except,omitempty"` -} -type ShapeBotDefensePolicyType_JsInsertionRules struct { - JsInsertionRules *ShapeJavaScriptInsertType `protobuf:"bytes,7,opt,name=js_insertion_rules,json=jsInsertionRules,proto3,oneof" json:"js_insertion_rules,omitempty"` -} -type ShapeBotDefensePolicyType_DisableMobileSdk struct { - DisableMobileSdk *schema.Empty `protobuf:"bytes,9,opt,name=disable_mobile_sdk,json=disableMobileSdk,proto3,oneof" json:"disable_mobile_sdk,omitempty"` -} -type ShapeBotDefensePolicyType_MobileSdkConfig struct { - MobileSdkConfig *MobileSDKConfigType `protobuf:"bytes,10,opt,name=mobile_sdk_config,json=mobileSdkConfig,proto3,oneof" json:"mobile_sdk_config,omitempty"` +func (m *GlobalSpecType) GetRateLimit() *common_waf.RateLimitConfigType { + if x, ok := m.GetRateLimitChoice().(*GlobalSpecType_RateLimit); ok { + return x.RateLimit + } + return nil } -func (*ShapeBotDefensePolicyType_DisableJsInsert) isShapeBotDefensePolicyType_JavaScriptChoice() {} -func (*ShapeBotDefensePolicyType_JsInsertAllPages) isShapeBotDefensePolicyType_JavaScriptChoice() {} -func (*ShapeBotDefensePolicyType_JsInsertAllPagesExcept) isShapeBotDefensePolicyType_JavaScriptChoice() { +// Deprecated: Do not use. +func (m *GlobalSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { + if m != nil { + return m.MaliciousUserMitigation + } + return nil } -func (*ShapeBotDefensePolicyType_JsInsertionRules) isShapeBotDefensePolicyType_JavaScriptChoice() {} -func (*ShapeBotDefensePolicyType_DisableMobileSdk) isShapeBotDefensePolicyType_MobileSdkChoice() {} -func (*ShapeBotDefensePolicyType_MobileSdkConfig) isShapeBotDefensePolicyType_MobileSdkChoice() {} -func (m *ShapeBotDefensePolicyType) GetJavaScriptChoice() isShapeBotDefensePolicyType_JavaScriptChoice { +func (m *GlobalSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { if m != nil { - return m.JavaScriptChoice + return m.WafExclusionRules } return nil } -func (m *ShapeBotDefensePolicyType) GetMobileSdkChoice() isShapeBotDefensePolicyType_MobileSdkChoice { + +func (m *GlobalSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { if m != nil { - return m.MobileSdkChoice + return m.DataGuardRules } return nil } -func (m *ShapeBotDefensePolicyType) GetProtectedAppEndpoints() []*AppEndpointType { +func (m *GlobalSpecType) GetBlockedClients() []*common_waf.SimpleClientSrcRule { if m != nil { - return m.ProtectedAppEndpoints + return m.BlockedClients } return nil } -func (m *ShapeBotDefensePolicyType) GetDisableJsInsert() *schema.Empty { - if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_DisableJsInsert); ok { - return x.DisableJsInsert +func (m *GlobalSpecType) GetTrustedClients() []*common_waf.SimpleClientSrcRule { + if m != nil { + return m.TrustedClients } return nil } -func (m *ShapeBotDefensePolicyType) GetJsInsertAllPages() *ShapeJavaScriptInsertAllType { - if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPages); ok { - return x.JsInsertAllPages +func (m *GlobalSpecType) GetApiProtectionRules() *common_waf.APIProtectionRules { + if m != nil { + return m.ApiProtectionRules } return nil } -func (m *ShapeBotDefensePolicyType) GetJsInsertAllPagesExcept() *ShapeJavaScriptInsertAllWithExceptionsType { - if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPagesExcept); ok { - return x.JsInsertAllPagesExcept +func (m *GlobalSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { + if m != nil { + return m.DdosMitigationRules } return nil } -func (m *ShapeBotDefensePolicyType) GetJsInsertionRules() *ShapeJavaScriptInsertType { - if x, ok := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertionRules); ok { - return x.JsInsertionRules +func (m *GlobalSpecType) GetServicePoliciesFromNamespace() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*GlobalSpecType_ServicePoliciesFromNamespace); ok { + return x.ServicePoliciesFromNamespace } return nil } -func (m *ShapeBotDefensePolicyType) GetJsDownloadPath() string { - if m != nil { - return m.JsDownloadPath +func (m *GlobalSpecType) GetNoServicePolicies() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*GlobalSpecType_NoServicePolicies); ok { + return x.NoServicePolicies } - return "" + return nil } -func (m *ShapeBotDefensePolicyType) GetJavascriptMode() schema.JavaScriptMode { - if m != nil { - return m.JavascriptMode +func (m *GlobalSpecType) GetActiveServicePolicies() *common_waf.ServicePolicyList { + if x, ok := m.GetServicePolicyChoice().(*GlobalSpecType_ActiveServicePolicies); ok { + return x.ActiveServicePolicies } - return schema.ASYNC_JS_NO_CACHING + return nil } -func (m *ShapeBotDefensePolicyType) GetDisableMobileSdk() *schema.Empty { - if x, ok := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_DisableMobileSdk); ok { - return x.DisableMobileSdk +func (m *GlobalSpecType) GetRoundRobin() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_RoundRobin); ok { + return x.RoundRobin } return nil } -func (m *ShapeBotDefensePolicyType) GetMobileSdkConfig() *MobileSDKConfigType { - if x, ok := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_MobileSdkConfig); ok { - return x.MobileSdkConfig +func (m *GlobalSpecType) GetLeastActive() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_LeastActive); ok { + return x.LeastActive } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ShapeBotDefensePolicyType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ShapeBotDefensePolicyType_DisableJsInsert)(nil), - (*ShapeBotDefensePolicyType_JsInsertAllPages)(nil), - (*ShapeBotDefensePolicyType_JsInsertAllPagesExcept)(nil), - (*ShapeBotDefensePolicyType_JsInsertionRules)(nil), - (*ShapeBotDefensePolicyType_DisableMobileSdk)(nil), - (*ShapeBotDefensePolicyType_MobileSdkConfig)(nil), +func (m *GlobalSpecType) GetRandom() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_Random); ok { + return x.Random } + return nil } -// MobileTrafficIdentifierType -// -// x-displayName: "Mobile Traffic Identifier" -// Mobile traffic identifier type. -type MobileTrafficIdentifierType struct { - // Mobile headers - // - // x-displayName: "Headers" - // Headers that can be used to identify mobile traffic. - Headers []*policy.HeaderMatcherTypeBasic `protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty"` +func (m *GlobalSpecType) GetSourceIpStickiness() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_SourceIpStickiness); ok { + return x.SourceIpStickiness + } + return nil } -func (m *MobileTrafficIdentifierType) Reset() { *m = MobileTrafficIdentifierType{} } -func (*MobileTrafficIdentifierType) ProtoMessage() {} -func (*MobileTrafficIdentifierType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{68} -} -func (m *MobileTrafficIdentifierType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MobileTrafficIdentifierType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetCookieStickiness() *route.CookieForHashing { + if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_CookieStickiness); ok { + return x.CookieStickiness } - return b[:n], nil -} -func (m *MobileTrafficIdentifierType) XXX_Merge(src proto.Message) { - xxx_messageInfo_MobileTrafficIdentifierType.Merge(m, src) -} -func (m *MobileTrafficIdentifierType) XXX_Size() int { - return m.Size() -} -func (m *MobileTrafficIdentifierType) XXX_DiscardUnknown() { - xxx_messageInfo_MobileTrafficIdentifierType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_MobileTrafficIdentifierType proto.InternalMessageInfo - -func (m *MobileTrafficIdentifierType) GetHeaders() []*policy.HeaderMatcherTypeBasic { - if m != nil { - return m.Headers +func (m *GlobalSpecType) GetRingHash() *HashPolicyListType { + if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_RingHash); ok { + return x.RingHash } return nil } -// MobileSDKConfigType -// -// x-displayName: "Mobile SDK Configuration" -// Mobile SDK configuration. -type MobileSDKConfigType struct { - // Reload header name - // - // x-displayName: "Reload Header Name" - // x-required - // x-example: "x-oomZEZlK" - // Header that is used for SDK configuration sync. - ReloadHeaderName string `protobuf:"bytes,1,opt,name=reload_header_name,json=reloadHeaderName,proto3" json:"reload_header_name,omitempty"` - // Mobile Traffic Identifier Type - // - // x-displayName: "Mobile Traffic Identifier" - // Mobile traffic identifier type. - MobileIdentifier *MobileTrafficIdentifierType `protobuf:"bytes,2,opt,name=mobile_identifier,json=mobileIdentifier,proto3" json:"mobile_identifier,omitempty"` +func (m *GlobalSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { + if x, ok := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_DisableTrustClientIpHeaders); ok { + return x.DisableTrustClientIpHeaders + } + return nil } -func (m *MobileSDKConfigType) Reset() { *m = MobileSDKConfigType{} } -func (*MobileSDKConfigType) ProtoMessage() {} -func (*MobileSDKConfigType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{69} -} -func (m *MobileSDKConfigType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MobileSDKConfigType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { + if x, ok := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_EnableTrustClientIpHeaders); ok { + return x.EnableTrustClientIpHeaders } - return b[:n], nil -} -func (m *MobileSDKConfigType) XXX_Merge(src proto.Message) { - xxx_messageInfo_MobileSDKConfigType.Merge(m, src) -} -func (m *MobileSDKConfigType) XXX_Size() int { - return m.Size() -} -func (m *MobileSDKConfigType) XXX_DiscardUnknown() { - xxx_messageInfo_MobileSDKConfigType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_MobileSDKConfigType proto.InternalMessageInfo - -func (m *MobileSDKConfigType) GetReloadHeaderName() string { - if m != nil { - return m.ReloadHeaderName +func (m *GlobalSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { + if x, ok := m.GetMlConfigChoice().(*GlobalSpecType_SingleLbApp); ok { + return x.SingleLbApp } - return "" + return nil } -func (m *MobileSDKConfigType) GetMobileIdentifier() *MobileTrafficIdentifierType { - if m != nil { - return m.MobileIdentifier +func (m *GlobalSpecType) GetMultiLbApp() *schema.Empty { + if x, ok := m.GetMlConfigChoice().(*GlobalSpecType_MultiLbApp); ok { + return x.MultiLbApp } return nil } -// AppEndpointType -// -// x-displayName: "Application Endpoint" -// Application Endpoint. -type AppEndpointType struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // HTTP Methods - // - // x-displayName: "HTTP Methods" - // x-required - // List of HTTP methods. - HttpMethods []schema.BotHttpMethod `protobuf:"varint,2,rep,packed,name=http_methods,json=httpMethods,proto3,enum=ves.io.schema.BotHttpMethod" json:"http_methods,omitempty"` - // Protocol - // - // x-displayName: "Protocol" - // Protocol. - Protocol URLScheme `protobuf:"varint,3,opt,name=protocol,proto3,enum=ves.io.schema.views.http_loadbalancer.URLScheme" json:"protocol,omitempty"` - // Path - // - // x-displayName: "Path" - // x-required - // Matching URI path of the route. - Path *schema.PathMatcherType `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"` - // Domain Matcher - // - // x-displayName: "Domain Matcher" - // This defines domain matcher. - // - // Types that are valid to be assigned to DomainMatcherChoice: - // - // *AppEndpointType_AnyDomain - // *AppEndpointType_Domain - DomainMatcherChoice isAppEndpointType_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` - // Traffic channel - // - // x-displayName: "Traffic Channel" - // x-required - // Select traffic channel. - // - // Types that are valid to be assigned to AppTrafficTypeChoice: - // - // *AppEndpointType_Web - // *AppEndpointType_Mobile - // *AppEndpointType_WebMobile - AppTrafficTypeChoice isAppEndpointType_AppTrafficTypeChoice `protobuf_oneof:"app_traffic_type_choice"` - // Mitigation - // - // x-displayName: "Bot Traffic Mitigation" - // x-required - // Mitigation action. - Mitigation *policy.ShapeBotMitigationAction `protobuf:"bytes,12,opt,name=mitigation,proto3" json:"mitigation,omitempty"` - // Flow label - // - // x-displayName: "Endpoint Label" - // Endpoint label category - // - // Types that are valid to be assigned to FlowLabelChoice: - // - // *AppEndpointType_UndefinedFlowLabel - // *AppEndpointType_FlowLabel - FlowLabelChoice isAppEndpointType_FlowLabelChoice `protobuf_oneof:"flow_label_choice"` - // Good Bot - // - // x-displayName: "Good Bot Detection Settings" - // x-required - // The system will distinguish between good bot traffic and malicious automation. Select if you want to allow good bots to continue to the origin or receive the same mitigation handling as defined for all automated traffic. - // - // Types that are valid to be assigned to GoodbotChoice: - // - // *AppEndpointType_AllowGoodBots - // *AppEndpointType_MitigateGoodBots - GoodbotChoice isAppEndpointType_GoodbotChoice `protobuf_oneof:"goodbot_choice"` +func (m *GlobalSpecType) GetEnableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_EnableMaliciousUserDetection); ok { + return x.EnableMaliciousUserDetection + } + return nil } -func (m *AppEndpointType) Reset() { *m = AppEndpointType{} } -func (*AppEndpointType) ProtoMessage() {} -func (*AppEndpointType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{70} -} -func (m *AppEndpointType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *AppEndpointType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *GlobalSpecType) GetDisableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_DisableMaliciousUserDetection); ok { + return x.DisableMaliciousUserDetection } - return b[:n], nil -} -func (m *AppEndpointType) XXX_Merge(src proto.Message) { - xxx_messageInfo_AppEndpointType.Merge(m, src) -} -func (m *AppEndpointType) XXX_Size() int { - return m.Size() -} -func (m *AppEndpointType) XXX_DiscardUnknown() { - xxx_messageInfo_AppEndpointType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_AppEndpointType proto.InternalMessageInfo - -type isAppEndpointType_DomainMatcherChoice interface { - isAppEndpointType_DomainMatcherChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *GlobalSpecType) GetEnableApiDiscovery() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*GlobalSpecType_EnableApiDiscovery); ok { + return x.EnableApiDiscovery + } + return nil } -type isAppEndpointType_AppTrafficTypeChoice interface { - isAppEndpointType_AppTrafficTypeChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + +func (m *GlobalSpecType) GetDisableApiDiscovery() *schema.Empty { + if x, ok := m.GetApiDiscoveryChoice().(*GlobalSpecType_DisableApiDiscovery); ok { + return x.DisableApiDiscovery + } + return nil } -type isAppEndpointType_FlowLabelChoice interface { - isAppEndpointType_FlowLabelChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + +func (m *GlobalSpecType) GetDisableBotDefense() *schema.Empty { + if x, ok := m.GetBotDefenseChoice().(*GlobalSpecType_DisableBotDefense); ok { + return x.DisableBotDefense + } + return nil } -type isAppEndpointType_GoodbotChoice interface { - isAppEndpointType_GoodbotChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + +func (m *GlobalSpecType) GetBotDefense() *ShapeBotDefenseType { + if x, ok := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefense); ok { + return x.BotDefense + } + return nil } -type AppEndpointType_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,6,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +func (m *GlobalSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { + if x, ok := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefenseAdvanced); ok { + return x.BotDefenseAdvanced + } + return nil } -type AppEndpointType_Domain struct { - Domain *schema.DomainType `protobuf:"bytes,7,opt,name=domain,proto3,oneof" json:"domain,omitempty"` + +func (m *GlobalSpecType) GetDisableClientSideDefense() *schema.Empty { + if x, ok := m.GetClientSideDefenseChoice().(*GlobalSpecType_DisableClientSideDefense); ok { + return x.DisableClientSideDefense + } + return nil } -type AppEndpointType_Web struct { - Web *schema.Empty `protobuf:"bytes,9,opt,name=web,proto3,oneof" json:"web,omitempty"` + +func (m *GlobalSpecType) GetClientSideDefense() *ClientSideDefenseType { + if x, ok := m.GetClientSideDefenseChoice().(*GlobalSpecType_ClientSideDefense); ok { + return x.ClientSideDefense + } + return nil } -type AppEndpointType_Mobile struct { - Mobile *schema.Empty `protobuf:"bytes,10,opt,name=mobile,proto3,oneof" json:"mobile,omitempty"` + +func (m *GlobalSpecType) GetDisableApiDefinition() *schema.Empty { + if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_DisableApiDefinition); ok { + return x.DisableApiDefinition + } + return nil } -type AppEndpointType_WebMobile struct { - WebMobile *WebMobileTrafficType `protobuf:"bytes,11,opt,name=web_mobile,json=webMobile,proto3,oneof" json:"web_mobile,omitempty"` + +func (m *GlobalSpecType) GetApiDefinition() *views.ObjectRefType { + if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinition); ok { + return x.ApiDefinition + } + return nil } -type AppEndpointType_UndefinedFlowLabel struct { - UndefinedFlowLabel *schema.Empty `protobuf:"bytes,14,opt,name=undefined_flow_label,json=undefinedFlowLabel,proto3,oneof" json:"undefined_flow_label,omitempty"` + +func (m *GlobalSpecType) GetApiSpecification() *common_waf.APISpecificationSettings { + if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiSpecification); ok { + return x.ApiSpecification + } + return nil } -type AppEndpointType_FlowLabel struct { - FlowLabel *schema.BotDefenseFlowLabelCategoriesChoiceType `protobuf:"bytes,15,opt,name=flow_label,json=flowLabel,proto3,oneof" json:"flow_label,omitempty"` + +func (m *GlobalSpecType) GetApiDefinitions() *common_waf.ApiDefinitionList { + if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinitions); ok { + return x.ApiDefinitions + } + return nil } -type AppEndpointType_AllowGoodBots struct { - AllowGoodBots *schema.Empty `protobuf:"bytes,19,opt,name=allow_good_bots,json=allowGoodBots,proto3,oneof" json:"allow_good_bots,omitempty"` + +func (m *GlobalSpecType) GetDisableIpReputation() *schema.Empty { + if x, ok := m.GetIpReputationChoice().(*GlobalSpecType_DisableIpReputation); ok { + return x.DisableIpReputation + } + return nil } -type AppEndpointType_MitigateGoodBots struct { - MitigateGoodBots *schema.Empty `protobuf:"bytes,17,opt,name=mitigate_good_bots,json=mitigateGoodBots,proto3,oneof" json:"mitigate_good_bots,omitempty"` + +func (m *GlobalSpecType) GetEnableIpReputation() *common_waf.IPThreatCategoryListType { + if x, ok := m.GetIpReputationChoice().(*GlobalSpecType_EnableIpReputation); ok { + return x.EnableIpReputation + } + return nil } -func (*AppEndpointType_AnyDomain) isAppEndpointType_DomainMatcherChoice() {} -func (*AppEndpointType_Domain) isAppEndpointType_DomainMatcherChoice() {} -func (*AppEndpointType_Web) isAppEndpointType_AppTrafficTypeChoice() {} -func (*AppEndpointType_Mobile) isAppEndpointType_AppTrafficTypeChoice() {} -func (*AppEndpointType_WebMobile) isAppEndpointType_AppTrafficTypeChoice() {} -func (*AppEndpointType_UndefinedFlowLabel) isAppEndpointType_FlowLabelChoice() {} -func (*AppEndpointType_FlowLabel) isAppEndpointType_FlowLabelChoice() {} -func (*AppEndpointType_AllowGoodBots) isAppEndpointType_GoodbotChoice() {} -func (*AppEndpointType_MitigateGoodBots) isAppEndpointType_GoodbotChoice() {} +func (m *GlobalSpecType) GetDisableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*GlobalSpecType_DisableThreatMesh); ok { + return x.DisableThreatMesh + } + return nil +} -func (m *AppEndpointType) GetDomainMatcherChoice() isAppEndpointType_DomainMatcherChoice { - if m != nil { - return m.DomainMatcherChoice +func (m *GlobalSpecType) GetEnableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*GlobalSpecType_EnableThreatMesh); ok { + return x.EnableThreatMesh } return nil } -func (m *AppEndpointType) GetAppTrafficTypeChoice() isAppEndpointType_AppTrafficTypeChoice { + +func (m *GlobalSpecType) GetViewInternal() *views.ObjectRefType { if m != nil { - return m.AppTrafficTypeChoice + return m.ViewInternal } return nil } -func (m *AppEndpointType) GetFlowLabelChoice() isAppEndpointType_FlowLabelChoice { + +func (m *GlobalSpecType) GetHostName() string { if m != nil { - return m.FlowLabelChoice + return m.HostName } - return nil + return "" } -func (m *AppEndpointType) GetGoodbotChoice() isAppEndpointType_GoodbotChoice { + +func (m *GlobalSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { if m != nil { - return m.GoodbotChoice + return m.DnsInfo } return nil } -func (m *AppEndpointType) GetMetadata() *schema.MessageMetaType { +func (m *GlobalSpecType) GetState() virtual_host.VirtualHostState { if m != nil { - return m.Metadata + return m.State } - return nil + return virtual_host.VIRTUAL_HOST_READY } -func (m *AppEndpointType) GetHttpMethods() []schema.BotHttpMethod { +// Deprecated: Do not use. +func (m *GlobalSpecType) GetAutoCertState() virtual_host.CertificationState { if m != nil { - return m.HttpMethods + return m.AutoCertState } - return nil + return virtual_host.AutoCertDisabled } -func (m *AppEndpointType) GetProtocol() URLScheme { +func (m *GlobalSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { if m != nil { - return m.Protocol + return m.AutoCertInfo } - return BOTH + return nil } -func (m *AppEndpointType) GetPath() *schema.PathMatcherType { +func (m *GlobalSpecType) GetInternetVipInfo() []*views.InternetVIPInfo { if m != nil { - return m.Path + return m.InternetVipInfo } return nil } -func (m *AppEndpointType) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainMatcherChoice().(*AppEndpointType_AnyDomain); ok { - return x.AnyDomain +func (m *GlobalSpecType) GetCsrfPolicy() *schema.CsrfPolicy { + if m != nil { + return m.CsrfPolicy } return nil } -func (m *AppEndpointType) GetDomain() *schema.DomainType { - if x, ok := m.GetDomainMatcherChoice().(*AppEndpointType_Domain); ok { - return x.Domain +func (m *GlobalSpecType) GetGraphqlRules() []*policy.GraphQLRule { + if m != nil { + return m.GraphqlRules } return nil } -func (m *AppEndpointType) GetWeb() *schema.Empty { - if x, ok := m.GetAppTrafficTypeChoice().(*AppEndpointType_Web); ok { - return x.Web +func (m *GlobalSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { + if m != nil { + return m.ProtectedCookies } return nil } -func (m *AppEndpointType) GetMobile() *schema.Empty { - if x, ok := m.GetAppTrafficTypeChoice().(*AppEndpointType_Mobile); ok { - return x.Mobile +func (m *GlobalSpecType) GetSystemDefaultTimeouts() *schema.Empty { + if x, ok := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SystemDefaultTimeouts); ok { + return x.SystemDefaultTimeouts } return nil } -func (m *AppEndpointType) GetWebMobile() *WebMobileTrafficType { - if x, ok := m.GetAppTrafficTypeChoice().(*AppEndpointType_WebMobile); ok { - return x.WebMobile +func (m *GlobalSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { + if x, ok := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SlowDdosMitigation); ok { + return x.SlowDdosMitigation } return nil } -func (m *AppEndpointType) GetMitigation() *policy.ShapeBotMitigationAction { +func (m *GlobalSpecType) GetJwtValidation() *common_waf.JWTValidation { if m != nil { - return m.Mitigation + return m.JwtValidation } return nil } -func (m *AppEndpointType) GetUndefinedFlowLabel() *schema.Empty { - if x, ok := m.GetFlowLabelChoice().(*AppEndpointType_UndefinedFlowLabel); ok { - return x.UndefinedFlowLabel +func (m *GlobalSpecType) GetL7DdosActionDefault() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionDefault); ok { + return x.L7DdosActionDefault } return nil } -func (m *AppEndpointType) GetFlowLabel() *schema.BotDefenseFlowLabelCategoriesChoiceType { - if x, ok := m.GetFlowLabelChoice().(*AppEndpointType_FlowLabel); ok { - return x.FlowLabel +func (m *GlobalSpecType) GetL7DdosActionBlock() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionBlock); ok { + return x.L7DdosActionBlock } return nil } -func (m *AppEndpointType) GetAllowGoodBots() *schema.Empty { - if x, ok := m.GetGoodbotChoice().(*AppEndpointType_AllowGoodBots); ok { - return x.AllowGoodBots +func (m *GlobalSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionJsChallenge); ok { + return x.L7DdosActionJsChallenge } return nil } -func (m *AppEndpointType) GetMitigateGoodBots() *schema.Empty { - if x, ok := m.GetGoodbotChoice().(*AppEndpointType_MitigateGoodBots); ok { - return x.MitigateGoodBots +func (m *GlobalSpecType) GetL7DdosActionNone() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionNone); ok { + return x.L7DdosActionNone } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*AppEndpointType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*AppEndpointType_AnyDomain)(nil), - (*AppEndpointType_Domain)(nil), - (*AppEndpointType_Web)(nil), - (*AppEndpointType_Mobile)(nil), - (*AppEndpointType_WebMobile)(nil), - (*AppEndpointType_UndefinedFlowLabel)(nil), - (*AppEndpointType_FlowLabel)(nil), - (*AppEndpointType_AllowGoodBots)(nil), - (*AppEndpointType_MitigateGoodBots)(nil), +func (m *GlobalSpecType) GetCertState() virtual_host.CertificationState { + if m != nil { + return m.CertState } + return virtual_host.AutoCertDisabled } -// WebMobileTrafficType -// -// x-displayName: "Web and Mobile traffic type" -// Web and Mobile traffic type -type WebMobileTrafficType struct { - // Mobile header - // - // x-displayName: "Header" - // Header that is used by mobile traffic. - Header *policy.HeaderMatcherTypeBasic `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` // Deprecated: Do not use. - // Mobile headers +// XXX_OneofWrappers is for the internal use of the proto package. +func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*GlobalSpecType_Http)(nil), + (*GlobalSpecType_HttpsAutoCert)(nil), + (*GlobalSpecType_Https)(nil), + (*GlobalSpecType_DoNotAdvertise)(nil), + (*GlobalSpecType_AdvertiseOnPublicDefaultVip)(nil), + (*GlobalSpecType_AdvertiseOnPublic)(nil), + (*GlobalSpecType_AdvertiseCustom)(nil), + (*GlobalSpecType_DefaultPool)(nil), + (*GlobalSpecType_DefaultPoolList)(nil), + (*GlobalSpecType_AutoHostRewrite)(nil), + (*GlobalSpecType_HostRewrite)(nil), + (*GlobalSpecType_DisableHostRewrite)(nil), + (*GlobalSpecType_DisableWaf)(nil), + (*GlobalSpecType_AppFirewall)(nil), + (*GlobalSpecType_NoChallenge)(nil), + (*GlobalSpecType_EnableChallenge)(nil), + (*GlobalSpecType_JsChallenge)(nil), + (*GlobalSpecType_CaptchaChallenge)(nil), + (*GlobalSpecType_PolicyBasedChallenge)(nil), + (*GlobalSpecType_UserIdClientIp)(nil), + (*GlobalSpecType_UserIdentification)(nil), + (*GlobalSpecType_DisableRateLimit)(nil), + (*GlobalSpecType_ApiRateLimit)(nil), + (*GlobalSpecType_RateLimit)(nil), + (*GlobalSpecType_ServicePoliciesFromNamespace)(nil), + (*GlobalSpecType_NoServicePolicies)(nil), + (*GlobalSpecType_ActiveServicePolicies)(nil), + (*GlobalSpecType_RoundRobin)(nil), + (*GlobalSpecType_LeastActive)(nil), + (*GlobalSpecType_Random)(nil), + (*GlobalSpecType_SourceIpStickiness)(nil), + (*GlobalSpecType_CookieStickiness)(nil), + (*GlobalSpecType_RingHash)(nil), + (*GlobalSpecType_DisableTrustClientIpHeaders)(nil), + (*GlobalSpecType_EnableTrustClientIpHeaders)(nil), + (*GlobalSpecType_SingleLbApp)(nil), + (*GlobalSpecType_MultiLbApp)(nil), + (*GlobalSpecType_EnableMaliciousUserDetection)(nil), + (*GlobalSpecType_DisableMaliciousUserDetection)(nil), + (*GlobalSpecType_EnableApiDiscovery)(nil), + (*GlobalSpecType_DisableApiDiscovery)(nil), + (*GlobalSpecType_DisableBotDefense)(nil), + (*GlobalSpecType_BotDefense)(nil), + (*GlobalSpecType_BotDefenseAdvanced)(nil), + (*GlobalSpecType_DisableClientSideDefense)(nil), + (*GlobalSpecType_ClientSideDefense)(nil), + (*GlobalSpecType_DisableApiDefinition)(nil), + (*GlobalSpecType_ApiDefinition)(nil), + (*GlobalSpecType_ApiSpecification)(nil), + (*GlobalSpecType_ApiDefinitions)(nil), + (*GlobalSpecType_DisableIpReputation)(nil), + (*GlobalSpecType_EnableIpReputation)(nil), + (*GlobalSpecType_DisableThreatMesh)(nil), + (*GlobalSpecType_EnableThreatMesh)(nil), + (*GlobalSpecType_SystemDefaultTimeouts)(nil), + (*GlobalSpecType_SlowDdosMitigation)(nil), + (*GlobalSpecType_L7DdosActionDefault)(nil), + (*GlobalSpecType_L7DdosActionBlock)(nil), + (*GlobalSpecType_L7DdosActionJsChallenge)(nil), + (*GlobalSpecType_L7DdosActionNone)(nil), + } +} + +// CreateSpecType +// +// x-displayName: "Create HTTP Load Balancer" +// Shape of the HTTP load balancer specification +type CreateSpecType struct { + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: // - // x-displayName: "Headers" - // Headers that can be used to identify mobile traffic. - Headers []*policy.HeaderMatcherTypeBasic `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty"` // Deprecated: Do not use. - // Mobile Identifier + // *CreateSpecType_Http + // *CreateSpecType_HttpsAutoCert + // *CreateSpecType_Https + LoadbalancerType isCreateSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + // Types that are valid to be assigned to AdvertiseChoice: // - // x-displayName: "Mobile Identifier" - // Mobile identifier type - MobileIdentifier MobileIdentifier `protobuf:"varint,3,opt,name=mobile_identifier,json=mobileIdentifier,proto3,enum=ves.io.schema.views.http_loadbalancer.MobileIdentifier" json:"mobile_identifier,omitempty"` + // *CreateSpecType_DoNotAdvertise + // *CreateSpecType_AdvertiseOnPublicDefaultVip + // *CreateSpecType_AdvertiseOnPublic + // *CreateSpecType_AdvertiseCustom + AdvertiseChoice isCreateSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` + DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` + // Types that are valid to be assigned to OriginPoolChoice: + // + // *CreateSpecType_DefaultPool + // *CreateSpecType_DefaultPoolList + OriginPoolChoice isCreateSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` + OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` + Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` + CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` + // Types that are valid to be assigned to WafChoice: + // + // *CreateSpecType_DisableWaf + // *CreateSpecType_AppFirewall + WafChoice isCreateSpecType_WafChoice `protobuf_oneof:"waf_choice"` + AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + // Types that are valid to be assigned to ChallengeType: + // + // *CreateSpecType_NoChallenge + // *CreateSpecType_EnableChallenge + // *CreateSpecType_JsChallenge + // *CreateSpecType_CaptchaChallenge + // *CreateSpecType_PolicyBasedChallenge + ChallengeType isCreateSpecType_ChallengeType `protobuf_oneof:"challenge_type"` + MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // Types that are valid to be assigned to UserIdChoice: + // + // *CreateSpecType_UserIdClientIp + // *CreateSpecType_UserIdentification + UserIdChoice isCreateSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` + // Types that are valid to be assigned to RateLimitChoice: + // + // *CreateSpecType_DisableRateLimit + // *CreateSpecType_ApiRateLimit + // *CreateSpecType_RateLimit + RateLimitChoice isCreateSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` + MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` + WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` + DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` + BlockedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` + TrustedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` + ApiProtectionRules *common_waf.APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` + DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` + // Types that are valid to be assigned to ServicePolicyChoice: + // + // *CreateSpecType_ServicePoliciesFromNamespace + // *CreateSpecType_NoServicePolicies + // *CreateSpecType_ActiveServicePolicies + ServicePolicyChoice isCreateSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` + // Types that are valid to be assigned to HashPolicyChoice: + // + // *CreateSpecType_RoundRobin + // *CreateSpecType_LeastActive + // *CreateSpecType_Random + // *CreateSpecType_SourceIpStickiness + // *CreateSpecType_CookieStickiness + // *CreateSpecType_RingHash + HashPolicyChoice isCreateSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` + // Types that are valid to be assigned to TrustClientIpHeadersChoice: + // + // *CreateSpecType_DisableTrustClientIpHeaders + // *CreateSpecType_EnableTrustClientIpHeaders + TrustClientIpHeadersChoice isCreateSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` + // Types that are valid to be assigned to MlConfigChoice: + // + // *CreateSpecType_SingleLbApp + // *CreateSpecType_MultiLbApp + MlConfigChoice isCreateSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` + // Types that are valid to be assigned to MaliciousUserDetectionChoice: + // + // *CreateSpecType_EnableMaliciousUserDetection + // *CreateSpecType_DisableMaliciousUserDetection + MaliciousUserDetectionChoice isCreateSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` + // Types that are valid to be assigned to ApiDiscoveryChoice: + // + // *CreateSpecType_EnableApiDiscovery + // *CreateSpecType_DisableApiDiscovery + ApiDiscoveryChoice isCreateSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` + // Types that are valid to be assigned to BotDefenseChoice: + // + // *CreateSpecType_DisableBotDefense + // *CreateSpecType_BotDefense + // *CreateSpecType_BotDefenseAdvanced + BotDefenseChoice isCreateSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` + // Types that are valid to be assigned to ApiDefinitionChoice: + // + // *CreateSpecType_DisableApiDefinition + // *CreateSpecType_ApiDefinition + // *CreateSpecType_ApiSpecification + // *CreateSpecType_ApiDefinitions + ApiDefinitionChoice isCreateSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` + // Types that are valid to be assigned to IpReputationChoice: + // + // *CreateSpecType_DisableIpReputation + // *CreateSpecType_EnableIpReputation + IpReputationChoice isCreateSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` + // Types that are valid to be assigned to ClientSideDefenseChoice: + // + // *CreateSpecType_DisableClientSideDefense + // *CreateSpecType_ClientSideDefense + ClientSideDefenseChoice isCreateSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` + CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` + GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` + ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` + // Types that are valid to be assigned to SlowDdosMitigationChoice: + // + // *CreateSpecType_SystemDefaultTimeouts + // *CreateSpecType_SlowDdosMitigation + SlowDdosMitigationChoice isCreateSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` + JwtValidation *common_waf.JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` + // Types that are valid to be assigned to ThreatMeshChoice: + // + // *CreateSpecType_DisableThreatMesh + // *CreateSpecType_EnableThreatMesh + ThreatMeshChoice isCreateSpecType_ThreatMeshChoice `protobuf_oneof:"threat_mesh_choice"` + // Types that are valid to be assigned to L7DdosAutoMitigationAction: + // + // *CreateSpecType_L7DdosActionDefault + // *CreateSpecType_L7DdosActionBlock + // *CreateSpecType_L7DdosActionJsChallenge + // *CreateSpecType_L7DdosActionNone + L7DdosAutoMitigationAction isCreateSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` } -func (m *WebMobileTrafficType) Reset() { *m = WebMobileTrafficType{} } -func (*WebMobileTrafficType) ProtoMessage() {} -func (*WebMobileTrafficType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{71} +func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } +func (*CreateSpecType) ProtoMessage() {} +func (*CreateSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{40} } -func (m *WebMobileTrafficType) XXX_Unmarshal(b []byte) error { +func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *WebMobileTrafficType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -9837,3210 +7449,2469 @@ func (m *WebMobileTrafficType) XXX_Marshal(b []byte, deterministic bool) ([]byte } return b[:n], nil } -func (m *WebMobileTrafficType) XXX_Merge(src proto.Message) { - xxx_messageInfo_WebMobileTrafficType.Merge(m, src) +func (m *CreateSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateSpecType.Merge(m, src) } -func (m *WebMobileTrafficType) XXX_Size() int { +func (m *CreateSpecType) XXX_Size() int { return m.Size() } -func (m *WebMobileTrafficType) XXX_DiscardUnknown() { - xxx_messageInfo_WebMobileTrafficType.DiscardUnknown(m) +func (m *CreateSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_CreateSpecType.DiscardUnknown(m) } -var xxx_messageInfo_WebMobileTrafficType proto.InternalMessageInfo +var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo -// Deprecated: Do not use. -func (m *WebMobileTrafficType) GetHeader() *policy.HeaderMatcherTypeBasic { - if m != nil { - return m.Header - } - return nil +type isCreateSpecType_LoadbalancerType interface { + isCreateSpecType_LoadbalancerType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -// Deprecated: Do not use. -func (m *WebMobileTrafficType) GetHeaders() []*policy.HeaderMatcherTypeBasic { - if m != nil { - return m.Headers - } - return nil +type isCreateSpecType_AdvertiseChoice interface { + isCreateSpecType_AdvertiseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *WebMobileTrafficType) GetMobileIdentifier() MobileIdentifier { - if m != nil { - return m.MobileIdentifier - } - return HEADERS +type isCreateSpecType_OriginPoolChoice interface { + isCreateSpecType_OriginPoolChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -// ShapeJavaScriptInsertType -// -// x-displayName: "JavaScript Custom Insertion Rules" -// This defines custom JavaScript insertion rules for Bot Defense Policy. -type ShapeJavaScriptInsertType struct { - // rules - // - // x-displayName: "JavaScript Insertions" - // x-required - // Required list of pages to insert Bot Defense client JavaScript. - Rules []*ShapeJavaScriptInsertionRule `protobuf:"bytes,2,rep,name=rules,proto3" json:"rules,omitempty"` - // exclude_list - // - // x-displayName: "Exclude Paths" - // Optional JavaScript insertions exclude list of domain and path matchers. - ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,3,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` +type isCreateSpecType_WafChoice interface { + isCreateSpecType_WafChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *ShapeJavaScriptInsertType) Reset() { *m = ShapeJavaScriptInsertType{} } -func (*ShapeJavaScriptInsertType) ProtoMessage() {} -func (*ShapeJavaScriptInsertType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{72} +type isCreateSpecType_ChallengeType interface { + isCreateSpecType_ChallengeType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +type isCreateSpecType_UserIdChoice interface { + isCreateSpecType_UserIdChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +type isCreateSpecType_RateLimitChoice interface { + isCreateSpecType_RateLimitChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeJavaScriptInsertType.Merge(m, src) +type isCreateSpecType_ServicePolicyChoice interface { + isCreateSpecType_ServicePolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertType) XXX_Size() int { - return m.Size() +type isCreateSpecType_HashPolicyChoice interface { + isCreateSpecType_HashPolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertType) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeJavaScriptInsertType.DiscardUnknown(m) +type isCreateSpecType_TrustClientIpHeadersChoice interface { + isCreateSpecType_TrustClientIpHeadersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -var xxx_messageInfo_ShapeJavaScriptInsertType proto.InternalMessageInfo - -func (m *ShapeJavaScriptInsertType) GetRules() []*ShapeJavaScriptInsertionRule { - if m != nil { - return m.Rules - } - return nil +type isCreateSpecType_MlConfigChoice interface { + isCreateSpecType_MlConfigChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *ShapeJavaScriptInsertType) GetExcludeList() []*ShapeJavaScriptExclusionRule { - if m != nil { - return m.ExcludeList - } - return nil +type isCreateSpecType_MaliciousUserDetectionChoice interface { + isCreateSpecType_MaliciousUserDetectionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -// ShapeJavaScriptInsertAllWithExceptionsType -// -// x-displayName: "Insert JavaScript in All Pages with the Exceptions" -// Insert Bot Defense JavaScript in all pages with the exceptions -type ShapeJavaScriptInsertAllWithExceptionsType struct { - // javascript_location - // - // x-displayName: "JavaScript Location" - // Defines where to insert Bot Defense JavaScript in HTML page. - JavascriptLocation JavaScriptLocation `protobuf:"varint,1,opt,name=javascript_location,json=javascriptLocation,proto3,enum=ves.io.schema.views.http_loadbalancer.JavaScriptLocation" json:"javascript_location,omitempty"` - // exclude_list - // - // x-displayName: "Exclude Pages" - // Optional JavaScript insertions exclude list of domain and path matchers. - ExcludeList []*ShapeJavaScriptExclusionRule `protobuf:"bytes,2,rep,name=exclude_list,json=excludeList,proto3" json:"exclude_list,omitempty"` +type isCreateSpecType_ApiDiscoveryChoice interface { + isCreateSpecType_ApiDiscoveryChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) Reset() { - *m = ShapeJavaScriptInsertAllWithExceptionsType{} +type isCreateSpecType_BotDefenseChoice interface { + isCreateSpecType_BotDefenseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (*ShapeJavaScriptInsertAllWithExceptionsType) ProtoMessage() {} -func (*ShapeJavaScriptInsertAllWithExceptionsType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{73} +type isCreateSpecType_ApiDefinitionChoice interface { + isCreateSpecType_ApiDefinitionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +type isCreateSpecType_IpReputationChoice interface { + isCreateSpecType_IpReputationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +type isCreateSpecType_ClientSideDefenseChoice interface { + isCreateSpecType_ClientSideDefenseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeJavaScriptInsertAllWithExceptionsType.Merge(m, src) +type isCreateSpecType_SlowDdosMitigationChoice interface { + isCreateSpecType_SlowDdosMitigationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_Size() int { - return m.Size() +type isCreateSpecType_ThreatMeshChoice interface { + isCreateSpecType_ThreatMeshChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeJavaScriptInsertAllWithExceptionsType.DiscardUnknown(m) +type isCreateSpecType_L7DdosAutoMitigationAction interface { + isCreateSpecType_L7DdosAutoMitigationAction() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -var xxx_messageInfo_ShapeJavaScriptInsertAllWithExceptionsType proto.InternalMessageInfo - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) GetJavascriptLocation() JavaScriptLocation { - if m != nil { - return m.JavascriptLocation - } - return AFTER_HEAD +type CreateSpecType_Http struct { + Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` } - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) GetExcludeList() []*ShapeJavaScriptExclusionRule { - if m != nil { - return m.ExcludeList - } - return nil +type CreateSpecType_HttpsAutoCert struct { + HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` } - -// ShapeJavaScriptInsertAllType -// -// x-displayName: "Insert Bot Defense JavaScript in All Pages" -// Insert Bot Defense JavaScript in all pages -type ShapeJavaScriptInsertAllType struct { - // javascript_location - // - // x-displayName: "JavaScript Location" - // Defines where to insert Bot Defense JavaScript in HTML page. - JavascriptLocation JavaScriptLocation `protobuf:"varint,1,opt,name=javascript_location,json=javascriptLocation,proto3,enum=ves.io.schema.views.http_loadbalancer.JavaScriptLocation" json:"javascript_location,omitempty"` +type CreateSpecType_Https struct { + Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` } - -func (m *ShapeJavaScriptInsertAllType) Reset() { *m = ShapeJavaScriptInsertAllType{} } -func (*ShapeJavaScriptInsertAllType) ProtoMessage() {} -func (*ShapeJavaScriptInsertAllType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{74} +type CreateSpecType_DoNotAdvertise struct { + DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` } -func (m *ShapeJavaScriptInsertAllType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +type CreateSpecType_AdvertiseOnPublicDefaultVip struct { + AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` } -func (m *ShapeJavaScriptInsertAllType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +type CreateSpecType_AdvertiseOnPublic struct { + AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` } -func (m *ShapeJavaScriptInsertAllType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeJavaScriptInsertAllType.Merge(m, src) +type CreateSpecType_AdvertiseCustom struct { + AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` } -func (m *ShapeJavaScriptInsertAllType) XXX_Size() int { - return m.Size() +type CreateSpecType_DefaultPool struct { + DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` } -func (m *ShapeJavaScriptInsertAllType) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeJavaScriptInsertAllType.DiscardUnknown(m) +type CreateSpecType_DefaultPoolList struct { + DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` } - -var xxx_messageInfo_ShapeJavaScriptInsertAllType proto.InternalMessageInfo - -func (m *ShapeJavaScriptInsertAllType) GetJavascriptLocation() JavaScriptLocation { - if m != nil { - return m.JavascriptLocation - } - return AFTER_HEAD +type CreateSpecType_DisableWaf struct { + DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` } - -// ShapeJavaScriptInsertionRule -// -// x-displayName: "JavaScript Insertion Rule" -// This defines a rule for Bot Defense JavaScript insertion. -type ShapeJavaScriptInsertionRule struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // Domain Matcher - // - // x-displayName: "Domain Matcher" - // x-required - // This defines domain matcher. - // - // Types that are valid to be assigned to DomainMatcherChoice: - // - // *ShapeJavaScriptInsertionRule_AnyDomain - // *ShapeJavaScriptInsertionRule_Domain - DomainMatcherChoice isShapeJavaScriptInsertionRule_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` - // Path - // - // x-displayName: "Path" - // x-required - // URI path matcher. - Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` - // javascript_location - // - // x-displayName: "JavaScript Location" - // Defines where to insert Bot Defense JavaScript in HTML page. - JavascriptLocation JavaScriptLocation `protobuf:"varint,6,opt,name=javascript_location,json=javascriptLocation,proto3,enum=ves.io.schema.views.http_loadbalancer.JavaScriptLocation" json:"javascript_location,omitempty"` +type CreateSpecType_AppFirewall struct { + AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` } - -func (m *ShapeJavaScriptInsertionRule) Reset() { *m = ShapeJavaScriptInsertionRule{} } -func (*ShapeJavaScriptInsertionRule) ProtoMessage() {} -func (*ShapeJavaScriptInsertionRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{75} +type CreateSpecType_NoChallenge struct { + NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` } -func (m *ShapeJavaScriptInsertionRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +type CreateSpecType_EnableChallenge struct { + EnableChallenge *common_waf.EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` } -func (m *ShapeJavaScriptInsertionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +type CreateSpecType_JsChallenge struct { + JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` } -func (m *ShapeJavaScriptInsertionRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeJavaScriptInsertionRule.Merge(m, src) +type CreateSpecType_CaptchaChallenge struct { + CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` } -func (m *ShapeJavaScriptInsertionRule) XXX_Size() int { - return m.Size() +type CreateSpecType_PolicyBasedChallenge struct { + PolicyBasedChallenge *common_waf.PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` } -func (m *ShapeJavaScriptInsertionRule) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeJavaScriptInsertionRule.DiscardUnknown(m) +type CreateSpecType_UserIdClientIp struct { + UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` } - -var xxx_messageInfo_ShapeJavaScriptInsertionRule proto.InternalMessageInfo - -type isShapeJavaScriptInsertionRule_DomainMatcherChoice interface { - isShapeJavaScriptInsertionRule_DomainMatcherChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +type CreateSpecType_UserIdentification struct { + UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` } - -type ShapeJavaScriptInsertionRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +type CreateSpecType_DisableRateLimit struct { + DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` } -type ShapeJavaScriptInsertionRule_Domain struct { - Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` +type CreateSpecType_ApiRateLimit struct { + ApiRateLimit *common_waf.APIRateLimit `protobuf:"bytes,120,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` +} +type CreateSpecType_RateLimit struct { + RateLimit *common_waf.RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` +} +type CreateSpecType_ServicePoliciesFromNamespace struct { + ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` +} +type CreateSpecType_NoServicePolicies struct { + NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` +} +type CreateSpecType_ActiveServicePolicies struct { + ActiveServicePolicies *common_waf.ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` +} +type CreateSpecType_RoundRobin struct { + RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` +} +type CreateSpecType_LeastActive struct { + LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` +} +type CreateSpecType_Random struct { + Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` +} +type CreateSpecType_SourceIpStickiness struct { + SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` +} +type CreateSpecType_CookieStickiness struct { + CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` +} +type CreateSpecType_RingHash struct { + RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` +} +type CreateSpecType_DisableTrustClientIpHeaders struct { + DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` +} +type CreateSpecType_EnableTrustClientIpHeaders struct { + EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` +} +type CreateSpecType_SingleLbApp struct { + SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` +} +type CreateSpecType_MultiLbApp struct { + MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` +} +type CreateSpecType_EnableMaliciousUserDetection struct { + EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` +} +type CreateSpecType_DisableMaliciousUserDetection struct { + DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` +} +type CreateSpecType_EnableApiDiscovery struct { + EnableApiDiscovery *common_waf.ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` +} +type CreateSpecType_DisableApiDiscovery struct { + DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` +} +type CreateSpecType_DisableBotDefense struct { + DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` +} +type CreateSpecType_BotDefense struct { + BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` +} +type CreateSpecType_BotDefenseAdvanced struct { + BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` +} +type CreateSpecType_DisableApiDefinition struct { + DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` +} +type CreateSpecType_ApiDefinition struct { + ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` +} +type CreateSpecType_ApiSpecification struct { + ApiSpecification *common_waf.APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` +} +type CreateSpecType_ApiDefinitions struct { + ApiDefinitions *common_waf.ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` +} +type CreateSpecType_DisableIpReputation struct { + DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` +} +type CreateSpecType_EnableIpReputation struct { + EnableIpReputation *common_waf.IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` +} +type CreateSpecType_DisableClientSideDefense struct { + DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` +} +type CreateSpecType_ClientSideDefense struct { + ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` +} +type CreateSpecType_SystemDefaultTimeouts struct { + SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` +} +type CreateSpecType_SlowDdosMitigation struct { + SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` +} +type CreateSpecType_DisableThreatMesh struct { + DisableThreatMesh *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_mesh,json=disableThreatMesh,proto3,oneof" json:"disable_threat_mesh,omitempty"` +} +type CreateSpecType_EnableThreatMesh struct { + EnableThreatMesh *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_mesh,json=enableThreatMesh,proto3,oneof" json:"enable_threat_mesh,omitempty"` +} +type CreateSpecType_L7DdosActionDefault struct { + L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` +} +type CreateSpecType_L7DdosActionBlock struct { + L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` +} +type CreateSpecType_L7DdosActionJsChallenge struct { + L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` +} +type CreateSpecType_L7DdosActionNone struct { + L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` } -func (*ShapeJavaScriptInsertionRule_AnyDomain) isShapeJavaScriptInsertionRule_DomainMatcherChoice() {} -func (*ShapeJavaScriptInsertionRule_Domain) isShapeJavaScriptInsertionRule_DomainMatcherChoice() {} +func (*CreateSpecType_Http) isCreateSpecType_LoadbalancerType() {} +func (*CreateSpecType_HttpsAutoCert) isCreateSpecType_LoadbalancerType() {} +func (*CreateSpecType_Https) isCreateSpecType_LoadbalancerType() {} +func (*CreateSpecType_DoNotAdvertise) isCreateSpecType_AdvertiseChoice() {} +func (*CreateSpecType_AdvertiseOnPublicDefaultVip) isCreateSpecType_AdvertiseChoice() {} +func (*CreateSpecType_AdvertiseOnPublic) isCreateSpecType_AdvertiseChoice() {} +func (*CreateSpecType_AdvertiseCustom) isCreateSpecType_AdvertiseChoice() {} +func (*CreateSpecType_DefaultPool) isCreateSpecType_OriginPoolChoice() {} +func (*CreateSpecType_DefaultPoolList) isCreateSpecType_OriginPoolChoice() {} +func (*CreateSpecType_DisableWaf) isCreateSpecType_WafChoice() {} +func (*CreateSpecType_AppFirewall) isCreateSpecType_WafChoice() {} +func (*CreateSpecType_NoChallenge) isCreateSpecType_ChallengeType() {} +func (*CreateSpecType_EnableChallenge) isCreateSpecType_ChallengeType() {} +func (*CreateSpecType_JsChallenge) isCreateSpecType_ChallengeType() {} +func (*CreateSpecType_CaptchaChallenge) isCreateSpecType_ChallengeType() {} +func (*CreateSpecType_PolicyBasedChallenge) isCreateSpecType_ChallengeType() {} +func (*CreateSpecType_UserIdClientIp) isCreateSpecType_UserIdChoice() {} +func (*CreateSpecType_UserIdentification) isCreateSpecType_UserIdChoice() {} +func (*CreateSpecType_DisableRateLimit) isCreateSpecType_RateLimitChoice() {} +func (*CreateSpecType_ApiRateLimit) isCreateSpecType_RateLimitChoice() {} +func (*CreateSpecType_RateLimit) isCreateSpecType_RateLimitChoice() {} +func (*CreateSpecType_ServicePoliciesFromNamespace) isCreateSpecType_ServicePolicyChoice() {} +func (*CreateSpecType_NoServicePolicies) isCreateSpecType_ServicePolicyChoice() {} +func (*CreateSpecType_ActiveServicePolicies) isCreateSpecType_ServicePolicyChoice() {} +func (*CreateSpecType_RoundRobin) isCreateSpecType_HashPolicyChoice() {} +func (*CreateSpecType_LeastActive) isCreateSpecType_HashPolicyChoice() {} +func (*CreateSpecType_Random) isCreateSpecType_HashPolicyChoice() {} +func (*CreateSpecType_SourceIpStickiness) isCreateSpecType_HashPolicyChoice() {} +func (*CreateSpecType_CookieStickiness) isCreateSpecType_HashPolicyChoice() {} +func (*CreateSpecType_RingHash) isCreateSpecType_HashPolicyChoice() {} +func (*CreateSpecType_DisableTrustClientIpHeaders) isCreateSpecType_TrustClientIpHeadersChoice() {} +func (*CreateSpecType_EnableTrustClientIpHeaders) isCreateSpecType_TrustClientIpHeadersChoice() {} +func (*CreateSpecType_SingleLbApp) isCreateSpecType_MlConfigChoice() {} +func (*CreateSpecType_MultiLbApp) isCreateSpecType_MlConfigChoice() {} +func (*CreateSpecType_EnableMaliciousUserDetection) isCreateSpecType_MaliciousUserDetectionChoice() {} +func (*CreateSpecType_DisableMaliciousUserDetection) isCreateSpecType_MaliciousUserDetectionChoice() { +} +func (*CreateSpecType_EnableApiDiscovery) isCreateSpecType_ApiDiscoveryChoice() {} +func (*CreateSpecType_DisableApiDiscovery) isCreateSpecType_ApiDiscoveryChoice() {} +func (*CreateSpecType_DisableBotDefense) isCreateSpecType_BotDefenseChoice() {} +func (*CreateSpecType_BotDefense) isCreateSpecType_BotDefenseChoice() {} +func (*CreateSpecType_BotDefenseAdvanced) isCreateSpecType_BotDefenseChoice() {} +func (*CreateSpecType_DisableApiDefinition) isCreateSpecType_ApiDefinitionChoice() {} +func (*CreateSpecType_ApiDefinition) isCreateSpecType_ApiDefinitionChoice() {} +func (*CreateSpecType_ApiSpecification) isCreateSpecType_ApiDefinitionChoice() {} +func (*CreateSpecType_ApiDefinitions) isCreateSpecType_ApiDefinitionChoice() {} +func (*CreateSpecType_DisableIpReputation) isCreateSpecType_IpReputationChoice() {} +func (*CreateSpecType_EnableIpReputation) isCreateSpecType_IpReputationChoice() {} +func (*CreateSpecType_DisableClientSideDefense) isCreateSpecType_ClientSideDefenseChoice() {} +func (*CreateSpecType_ClientSideDefense) isCreateSpecType_ClientSideDefenseChoice() {} +func (*CreateSpecType_SystemDefaultTimeouts) isCreateSpecType_SlowDdosMitigationChoice() {} +func (*CreateSpecType_SlowDdosMitigation) isCreateSpecType_SlowDdosMitigationChoice() {} +func (*CreateSpecType_DisableThreatMesh) isCreateSpecType_ThreatMeshChoice() {} +func (*CreateSpecType_EnableThreatMesh) isCreateSpecType_ThreatMeshChoice() {} +func (*CreateSpecType_L7DdosActionDefault) isCreateSpecType_L7DdosAutoMitigationAction() {} +func (*CreateSpecType_L7DdosActionBlock) isCreateSpecType_L7DdosAutoMitigationAction() {} +func (*CreateSpecType_L7DdosActionJsChallenge) isCreateSpecType_L7DdosAutoMitigationAction() {} +func (*CreateSpecType_L7DdosActionNone) isCreateSpecType_L7DdosAutoMitigationAction() {} -func (m *ShapeJavaScriptInsertionRule) GetDomainMatcherChoice() isShapeJavaScriptInsertionRule_DomainMatcherChoice { +func (m *CreateSpecType) GetLoadbalancerType() isCreateSpecType_LoadbalancerType { if m != nil { - return m.DomainMatcherChoice + return m.LoadbalancerType } return nil } - -func (m *ShapeJavaScriptInsertionRule) GetMetadata() *schema.MessageMetaType { +func (m *CreateSpecType) GetAdvertiseChoice() isCreateSpecType_AdvertiseChoice { if m != nil { - return m.Metadata + return m.AdvertiseChoice } return nil } - -func (m *ShapeJavaScriptInsertionRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_AnyDomain); ok { - return x.AnyDomain +func (m *CreateSpecType) GetOriginPoolChoice() isCreateSpecType_OriginPoolChoice { + if m != nil { + return m.OriginPoolChoice } return nil } - -func (m *ShapeJavaScriptInsertionRule) GetDomain() *schema.DomainType { - if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_Domain); ok { - return x.Domain +func (m *CreateSpecType) GetWafChoice() isCreateSpecType_WafChoice { + if m != nil { + return m.WafChoice } return nil } - -func (m *ShapeJavaScriptInsertionRule) GetPath() *schema.PathMatcherType { +func (m *CreateSpecType) GetChallengeType() isCreateSpecType_ChallengeType { if m != nil { - return m.Path + return m.ChallengeType } return nil } - -func (m *ShapeJavaScriptInsertionRule) GetJavascriptLocation() JavaScriptLocation { +func (m *CreateSpecType) GetUserIdChoice() isCreateSpecType_UserIdChoice { if m != nil { - return m.JavascriptLocation + return m.UserIdChoice } - return AFTER_HEAD + return nil } - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ShapeJavaScriptInsertionRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ShapeJavaScriptInsertionRule_AnyDomain)(nil), - (*ShapeJavaScriptInsertionRule_Domain)(nil), +func (m *CreateSpecType) GetRateLimitChoice() isCreateSpecType_RateLimitChoice { + if m != nil { + return m.RateLimitChoice } + return nil } - -// ShapeJavaScriptExclusionRule -// -// x-displayName: "JavaScript Insertion Exclusion Rule" -// Define JavaScript insertion exclusion rule -type ShapeJavaScriptExclusionRule struct { - // metadata - // - // x-displayName: "Metadata" - // x-required - // Common attributes for the rule including name and description. - Metadata *schema.MessageMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // Domain Matcher - // - // x-displayName: "Domain Matcher" - // x-required - // This defines domain matcher. - // - // Types that are valid to be assigned to DomainMatcherChoice: - // - // *ShapeJavaScriptExclusionRule_AnyDomain - // *ShapeJavaScriptExclusionRule_Domain - DomainMatcherChoice isShapeJavaScriptExclusionRule_DomainMatcherChoice `protobuf_oneof:"domain_matcher_choice"` - // Path - // - // x-displayName: "Path" - // x-required - // URI path matcher. - Path *schema.PathMatcherType `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"` +func (m *CreateSpecType) GetServicePolicyChoice() isCreateSpecType_ServicePolicyChoice { + if m != nil { + return m.ServicePolicyChoice + } + return nil } - -func (m *ShapeJavaScriptExclusionRule) Reset() { *m = ShapeJavaScriptExclusionRule{} } -func (*ShapeJavaScriptExclusionRule) ProtoMessage() {} -func (*ShapeJavaScriptExclusionRule) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{76} +func (m *CreateSpecType) GetHashPolicyChoice() isCreateSpecType_HashPolicyChoice { + if m != nil { + return m.HashPolicyChoice + } + return nil } -func (m *ShapeJavaScriptExclusionRule) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +func (m *CreateSpecType) GetTrustClientIpHeadersChoice() isCreateSpecType_TrustClientIpHeadersChoice { + if m != nil { + return m.TrustClientIpHeadersChoice + } + return nil } -func (m *ShapeJavaScriptExclusionRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *CreateSpecType) GetMlConfigChoice() isCreateSpecType_MlConfigChoice { + if m != nil { + return m.MlConfigChoice } - return b[:n], nil + return nil } -func (m *ShapeJavaScriptExclusionRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_ShapeJavaScriptExclusionRule.Merge(m, src) +func (m *CreateSpecType) GetMaliciousUserDetectionChoice() isCreateSpecType_MaliciousUserDetectionChoice { + if m != nil { + return m.MaliciousUserDetectionChoice + } + return nil } -func (m *ShapeJavaScriptExclusionRule) XXX_Size() int { - return m.Size() +func (m *CreateSpecType) GetApiDiscoveryChoice() isCreateSpecType_ApiDiscoveryChoice { + if m != nil { + return m.ApiDiscoveryChoice + } + return nil } -func (m *ShapeJavaScriptExclusionRule) XXX_DiscardUnknown() { - xxx_messageInfo_ShapeJavaScriptExclusionRule.DiscardUnknown(m) +func (m *CreateSpecType) GetBotDefenseChoice() isCreateSpecType_BotDefenseChoice { + if m != nil { + return m.BotDefenseChoice + } + return nil } - -var xxx_messageInfo_ShapeJavaScriptExclusionRule proto.InternalMessageInfo - -type isShapeJavaScriptExclusionRule_DomainMatcherChoice interface { - isShapeJavaScriptExclusionRule_DomainMatcherChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *CreateSpecType) GetApiDefinitionChoice() isCreateSpecType_ApiDefinitionChoice { + if m != nil { + return m.ApiDefinitionChoice + } + return nil } - -type ShapeJavaScriptExclusionRule_AnyDomain struct { - AnyDomain *schema.Empty `protobuf:"bytes,3,opt,name=any_domain,json=anyDomain,proto3,oneof" json:"any_domain,omitempty"` +func (m *CreateSpecType) GetIpReputationChoice() isCreateSpecType_IpReputationChoice { + if m != nil { + return m.IpReputationChoice + } + return nil } -type ShapeJavaScriptExclusionRule_Domain struct { - Domain *schema.DomainType `protobuf:"bytes,4,opt,name=domain,proto3,oneof" json:"domain,omitempty"` +func (m *CreateSpecType) GetClientSideDefenseChoice() isCreateSpecType_ClientSideDefenseChoice { + if m != nil { + return m.ClientSideDefenseChoice + } + return nil } - -func (*ShapeJavaScriptExclusionRule_AnyDomain) isShapeJavaScriptExclusionRule_DomainMatcherChoice() {} -func (*ShapeJavaScriptExclusionRule_Domain) isShapeJavaScriptExclusionRule_DomainMatcherChoice() {} - -func (m *ShapeJavaScriptExclusionRule) GetDomainMatcherChoice() isShapeJavaScriptExclusionRule_DomainMatcherChoice { +func (m *CreateSpecType) GetSlowDdosMitigationChoice() isCreateSpecType_SlowDdosMitigationChoice { if m != nil { - return m.DomainMatcherChoice + return m.SlowDdosMitigationChoice + } + return nil +} +func (m *CreateSpecType) GetThreatMeshChoice() isCreateSpecType_ThreatMeshChoice { + if m != nil { + return m.ThreatMeshChoice + } + return nil +} +func (m *CreateSpecType) GetL7DdosAutoMitigationAction() isCreateSpecType_L7DdosAutoMitigationAction { + if m != nil { + return m.L7DdosAutoMitigationAction } return nil } -func (m *ShapeJavaScriptExclusionRule) GetMetadata() *schema.MessageMetaType { +func (m *CreateSpecType) GetDomains() []string { if m != nil { - return m.Metadata + return m.Domains } return nil } -func (m *ShapeJavaScriptExclusionRule) GetAnyDomain() *schema.Empty { - if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_AnyDomain); ok { - return x.AnyDomain +func (m *CreateSpecType) GetHttp() *ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Http); ok { + return x.Http } return nil } -func (m *ShapeJavaScriptExclusionRule) GetDomain() *schema.DomainType { - if x, ok := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_Domain); ok { - return x.Domain +func (m *CreateSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { + if x, ok := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert } return nil } -func (m *ShapeJavaScriptExclusionRule) GetPath() *schema.PathMatcherType { - if m != nil { - return m.Path +func (m *CreateSpecType) GetHttps() *ProxyTypeHttps { + if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Https); ok { + return x.Https } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ShapeJavaScriptExclusionRule) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ShapeJavaScriptExclusionRule_AnyDomain)(nil), - (*ShapeJavaScriptExclusionRule_Domain)(nil), +func (m *CreateSpecType) GetDoNotAdvertise() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_DoNotAdvertise); ok { + return x.DoNotAdvertise } + return nil } -// IP Threat Category List Type -// -// x-displayName: "IP Threat Category List" -// List of ip threat categories -type IPThreatCategoryListType struct { - // IP Threat Categories - // - // x-displayName: "List of IP Threat Categories to choose" - // x-required - // If the source IP matches on atleast one of the enabled IP threat categories, the request will be denied. - IpThreatCategories []policy.IPThreatCategory `protobuf:"varint,1,rep,packed,name=ip_threat_categories,json=ipThreatCategories,proto3,enum=ves.io.schema.policy.IPThreatCategory" json:"ip_threat_categories,omitempty"` +func (m *CreateSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublicDefaultVip); ok { + return x.AdvertiseOnPublicDefaultVip + } + return nil } -func (m *IPThreatCategoryListType) Reset() { *m = IPThreatCategoryListType{} } -func (*IPThreatCategoryListType) ProtoMessage() {} -func (*IPThreatCategoryListType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{77} +func (m *CreateSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { + if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublic); ok { + return x.AdvertiseOnPublic + } + return nil } -func (m *IPThreatCategoryListType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + +func (m *CreateSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { + if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseCustom); ok { + return x.AdvertiseCustom + } + return nil } -func (m *IPThreatCategoryListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +func (m *CreateSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { + if m != nil { + return m.DefaultRoutePools } - return b[:n], nil + return nil } -func (m *IPThreatCategoryListType) XXX_Merge(src proto.Message) { - xxx_messageInfo_IPThreatCategoryListType.Merge(m, src) + +func (m *CreateSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { + if x, ok := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPool); ok { + return x.DefaultPool + } + return nil } -func (m *IPThreatCategoryListType) XXX_Size() int { - return m.Size() + +func (m *CreateSpecType) GetDefaultPoolList() *views.OriginPoolListType { + if x, ok := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPoolList); ok { + return x.DefaultPoolList + } + return nil } -func (m *IPThreatCategoryListType) XXX_DiscardUnknown() { - xxx_messageInfo_IPThreatCategoryListType.DiscardUnknown(m) + +func (m *CreateSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { + if m != nil { + return m.OriginServerSubsetRuleList + } + return nil } -var xxx_messageInfo_IPThreatCategoryListType proto.InternalMessageInfo +func (m *CreateSpecType) GetRoutes() []*RouteType { + if m != nil { + return m.Routes + } + return nil +} -func (m *IPThreatCategoryListType) GetIpThreatCategories() []policy.IPThreatCategory { +func (m *CreateSpecType) GetCorsPolicy() *schema.CorsPolicy { if m != nil { - return m.IpThreatCategories + return m.CorsPolicy } return nil } -// GlobalSpecType -// -// x-displayName: "Global Specification" -// Shape of the HTTP load balancer specification -type GlobalSpecType struct { - // Domains - // - // x-displayName: "Domains" - // x-example: "www.foo.com" - // x-required - // A list of domains (host/authority header) that will be matched to load balancer. - // - // Supported Domains and search order: - // 1. Exact domain names: www.foo.com. - // 2. Domains start with a wildcard: *.foo.com or *-bar.foo.com. - // - // Not supported domains - // - Just a wildcard: * - // - Wild card and TLD: *.com - // - Wildcard in a middle of domian: test*.example.com - // - // Wildcard will not match empty string. - // e.g. *-bar.foo.com will match baz-bar.foo.com but not -bar.foo.com. - // The longest wildcards match first. - // Only a single virtual host in the entire route configuration can match on *. - // Also a domain must be unique across all virtual hosts within an advertise policy. - // - // Domains are also used for SNI matching if the load balancer type is HTTPS - // Domains also indicate the list of names for which DNS resolution will be done by VER - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Proxy choice - // - // x-displayName: "Load Balancer Type" - // x-required - // The type of load balancer, can be "http" or "https" - // - // Types that are valid to be assigned to LoadbalancerType: - // - // *GlobalSpecType_Http - // *GlobalSpecType_HttpsAutoCert - // *GlobalSpecType_Https - LoadbalancerType isGlobalSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - // download_tls_certificates_expiration_timestamp - // - // x-displayName: "Certificate(s) Expiration Timestamp" - // In case of load balancer type of 'https'(BYOC) this lists expiration timestamp for certificate(s) - // in the same order as the list of tls_parameters.tls_certificates. - // In case of load balancer type of 'https_auto_cert' this has one element with the expiration - // timestamp of the autogenerated certificate. - DownstreamTlsCertificateExpirationTimestamps []*types.Timestamp `protobuf:"bytes,62,rep,name=downstream_tls_certificate_expiration_timestamps,json=downstreamTlsCertificateExpirationTimestamps,proto3" json:"downstream_tls_certificate_expiration_timestamps,omitempty"` - // Advertise choice - // - // x-displayName: "VIP Advertisement" - // x-required - // VIP Advertisement choice, Internet or Custom. - // - // Types that are valid to be assigned to AdvertiseChoice: - // - // *GlobalSpecType_DoNotAdvertise - // *GlobalSpecType_AdvertiseOnPublicDefaultVip - // *GlobalSpecType_AdvertiseOnPublic - // *GlobalSpecType_AdvertiseCustom - AdvertiseChoice isGlobalSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` - // Default Route Origin Pools - // - // x-displayName: "Origin Pools" - // Origin Pools used when no route is specified (default route) - DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` - // Origin Pool Choice - // - // x-displayName: "Origins" - // Origin Pool(s) used when no route is specified (default route) - // - // Types that are valid to be assigned to OriginPoolChoice: - // - // *GlobalSpecType_DefaultPool - // *GlobalSpecType_DefaultPoolList - OriginPoolChoice isGlobalSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` - // HostRewriteParams - // - // x-displayName: "Select Host Rewrite for Default Origin Servers" - // Select how the host header can be modified during forwarding to the default origin servers(default route) - // - // Types that are valid to be assigned to HostRewriteParams: - // - // *GlobalSpecType_AutoHostRewrite - // *GlobalSpecType_HostRewrite - // *GlobalSpecType_DisableHostRewrite - HostRewriteParams isGlobalSpecType_HostRewriteParams `protobuf_oneof:"host_rewrite_params"` - // Routes - // - // x-displayName: "Routes" - // Routes allow users to define match condition on a path and/or HTTP method to either forward matching traffic - // to origin pool or redirect matching traffic to a different URL or respond directly to matching traffic - Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` - // Origin Server Subset Rules - // - // x-displayName: "Origin Server Subset Rules" - // Origin Server Subset Rules allow users to define match condition on Client (IP address, ASN, Country), IP Reputation, Regional Edge names, - // Request for subset selection of origin servers. Origin Server Subset is a sequential engine where rules are evaluated one after the other. - // It's important to define the correct order for Origin Server Subset to get the intended result, rules are evaluated from top to bottom in the list. - // When an Origin server subset rule is matched, then this selection rule takes effect and no more rules are evaluated. - OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` - // Cross-Origin Resource Sharing (CORS) configuration for requests - // - // x-displayName: "CORS Policy" - // CORS is a mechanism that uses additional HTTP headers to tell a browser to let - // a web application running at one origin (domain) have permission to access selected - // resources from a server at a different origin - CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` - // Enable the WAF (Web Application Firewall) functionality for VirtualHost - // - // x-displayName: "Web Application Firewall (WAF)" - // x-required - // - // F5 Distributed Cloud WAF is a next-gen web application firewall that provides signature-based - // and behavior-based threat detection to protect applications wherever they are deployed. - // WAF can be configured in Monitoring (log threats) or Blocking (log and block threats) mode. - // - // Types that are valid to be assigned to WafChoice: - // - // *GlobalSpecType_DisableWaf - // *GlobalSpecType_AppFirewall - WafChoice isGlobalSpecType_WafChoice `protobuf_oneof:"waf_choice"` - // Add Site information - // - // x-displayName: "Add Location" - // x-example: "true" - // x-example: true - // Appends header x-volterra-location = in responses. This configuration - // is ignored on CE sites. - AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - // Challenge Type - // - // x-displayName: "Malicious User Mitigation And Challenges" - // x-required - // Malicious User Mitigation is an adaptive response and risk-based challenge capability. - // Enabling this feature would automatically serve different challenges such as JavaScript challenge, - // Captcha challenge or block temporarily based on the threat level of the malicious user. - // Policy based challenge can be used to selectively enable or disable JavaScript or Captcha challenge - // on a specific client and request match criteria - // - // Types that are valid to be assigned to ChallengeType: - // - // *GlobalSpecType_NoChallenge - // *GlobalSpecType_EnableChallenge - // *GlobalSpecType_JsChallenge - // *GlobalSpecType_CaptchaChallenge - // *GlobalSpecType_PolicyBasedChallenge - ChallengeType isGlobalSpecType_ChallengeType `protobuf_oneof:"challenge_type"` - // More Options - // - // x-displayName: "More Options" - // More options like header manipulation, compression etc. - MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - // User Identifier - // - // x-displayName: "User Identifier" - // x-required - // Select user identifier for rate limiting and malicious user mitigation. - // - // Types that are valid to be assigned to UserIdChoice: - // - // *GlobalSpecType_UserIdClientIp - // *GlobalSpecType_UserIdentification - UserIdChoice isGlobalSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` - // Enable Rate Limiting - // - // x-displayName: "Rate Limiting" - // x-required - // Rate Limiting allows you to control the rate of requests sent to your origin servers, protect against API traffic surge and denial of services attacks. - // - // Types that are valid to be assigned to RateLimitChoice: - // - // *GlobalSpecType_DisableRateLimit - // *GlobalSpecType_ApiRateLimit - // *GlobalSpecType_RateLimit - RateLimitChoice isGlobalSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` - // Malicious User Mitigation - // - // x-displayName: "Malicious User Mitigation" - // Settings that specify the actions to be taken when malicious users are determined to be at different threat levels. - // User's activity is monitored and continuously analyzed for malicious behavior. From this analysis, a threat level is assigned to each user. - // The settings defined in malicious user mitigation specify what mitigation actions to take for users determined to be at different threat levels. - MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` // Deprecated: Do not use. - // WAF Exclusion Rules - // - // x-displayName: "WAF Exclusion Rules" - // Define the Signature IDs, Violations, Attack Types and Bot Names that should be excluded from WAF processing on specific match criteria. - // The match criteria include domain, path and method. - // WAF Exclusion rules is a sequential engine where rules are evaluated one after the other. - // It's important to define the correct order for WAF exclusion rules to get the intended result, rules are evaluated from top to bottom in the list. - // For each request, its characteristics are evaluated based on the match criteria in each WAF exclusion rule, starting from the top. - // When an exclusion rule is matched, then this exclusion rule takes effect and no more rules are evaluated. - WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` - // Data Guard Rules - // - // x-displayName: "Data Guard Rules" - // Data Guard prevents responses from exposing sensitive information by masking the data. - // The system masks credit card numbers and social security numbers leaked from the application from within the http response with a string of asterisks (*). - // Note: App Firewall should be enabled, to use Data Guard feature. - DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` - // Client Blocking Rules - // - // x-displayName: "Client Blocking Rules" - // Define rules to block IP Prefixes or AS numbers. - BlockedClients []*SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` - // Trusted Client Rules - // - // x-displayName: "Trusted Client Rules" - // Define rules to skip processing of one or more features such as WAF, Bot Defense etc. for clients. - TrustedClients []*SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` - // API Protection rules - // - // x-displayName: "API Protection Rules" - // API Protection Rules can be defined in two categories. - // The first category includes fine-grained rules, per API path and methods. - // The second category includes rules per API groups or Server URLs. - // If request matches any rule in the first category, second category rules are not evaluated. - // Rules can also include additional conditions, for example specific clients can access certain API endpoint or API group. - ApiProtectionRules *APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` - // DDoS Mitigation Rules - // - // x-displayName: "DDoS Mitigation Rules" - // Define manual mitigation rules to block L7 DDoS attacks. - DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` - // Service Policies - // - // x-displayName: "Service Policies" - // x-required - // Service policies provide the ability to configure security controls such as IP Allow/Deny lists, Geo IP filtering and Custom rules - // - // Types that are valid to be assigned to ServicePolicyChoice: - // - // *GlobalSpecType_ServicePoliciesFromNamespace - // *GlobalSpecType_NoServicePolicies - // *GlobalSpecType_ActiveServicePolicies - ServicePolicyChoice isGlobalSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` - // Load Balancing Control - // - // x-displayName: "Load Balancing Algorithm" - // x-required - // The algorithm used to load balance requests between origin servers - // - // Types that are valid to be assigned to HashPolicyChoice: - // - // *GlobalSpecType_RoundRobin - // *GlobalSpecType_LeastActive - // *GlobalSpecType_Random - // *GlobalSpecType_SourceIpStickiness - // *GlobalSpecType_CookieStickiness - // *GlobalSpecType_RingHash - HashPolicyChoice isGlobalSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` - // Trusted Client IP Headers - // - // x-displayName: "Trusted Client IP Headers" - // x-required - // The system uses the real client IP address that initiated the connection to the platform as source IP, instead of the proxy’s IP address, when this feature is enabled. - // - // Types that are valid to be assigned to TrustClientIpHeadersChoice: - // - // *GlobalSpecType_DisableTrustClientIpHeaders - // *GlobalSpecType_EnableTrustClientIpHeaders - TrustClientIpHeadersChoice isGlobalSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` - // ML config choice - // - // x-displayName: "API Discovery/DDoS Detection/Malicious User Detection" - // Configuration of web app and API security features which are based on AI/ML - // - // Types that are valid to be assigned to MlConfigChoice: - // - // *GlobalSpecType_SingleLbApp - // *GlobalSpecType_MultiLbApp - MlConfigChoice isGlobalSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` - // DDoS Detection Choice - // - // x-required - // x-displayName: "DDoS Detection" - // Time series anomaly detection is performed using advanced machine learning based on metrics such as request rate, - // error rate, latency, throughput, etc. - // The clients are flagged if anomalies are observed. - // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. - // In this case external app_type configuration overrides internally disabled feature. - // Enabling the feature internally is allowed only when no labeling to external app_type. - // Deprecated - // - // Types that are valid to be assigned to DdosDetectionChoice: - // - // *GlobalSpecType_EnableDdosDetection - // *GlobalSpecType_DisableDdosDetection - DdosDetectionChoice isGlobalSpecType_DdosDetectionChoice `protobuf_oneof:"ddos_detection_choice"` - // Malicious User Detection Choice - // - // x-required - // x-displayName: "Malicious User Detection" - // Malicious User Detection performs user behavior analysis and assigns a risk score and threat level of low, medium - // or high based on the suspicious activity of the user. - // The risk score of the user is decayed over time, if no further suspicious activity is noticed. - // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. - // In this case external app_type configuration overrides internally disabled feature. - // Enabling the feature internally is allowed only when no labeling to external app_type. - // - // Types that are valid to be assigned to MaliciousUserDetectionChoice: - // - // *GlobalSpecType_EnableMaliciousUserDetection - // *GlobalSpecType_DisableMaliciousUserDetection - MaliciousUserDetectionChoice isGlobalSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` - // API Discovery Choice - // - // x-required - // x-displayName: "API Discovery" - // When enabled, sampled traffic passing through this load balancer is analyzed and - // APIs exposed by the application are identified. - // An API is identified by its canonical (collapsed) URL path and the method used to call it. - // Once all APIs are identified, for each API, the system learns its possible schema. - // The learnt schema for all APIs is used to automatically generate a swagger definition file for the entire API set exposed by this load balancer. - // The feature can be configured also via external app_type and labeling this HTTP Load Balancer. - // In this case external app_type configuration overrides internally disabled feature. - // Enabling the feature internally is allowed only when no labeling to external app_type. - // - // Types that are valid to be assigned to ApiDiscoveryChoice: - // - // *GlobalSpecType_EnableApiDiscovery - // *GlobalSpecType_DisableApiDiscovery - ApiDiscoveryChoice isGlobalSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` - // Enable Bot Defense functionality for VirtualHost - // - // x-displayName: "Bot Defense" - // Bot Defense protects your applications from automated attacks by leveraging JavaScript and API calls to collect telemetry and mitigate sophisticated attacks within the context of F5's Distributed Cloud global network. When automation is detected, and mitigation action is set to Block or Redirect, the client will receive the configured mitigation response. If action is set to Flag, automated requests are monitored by Bot Defense, but are allowed to proceed to the customer's server. - // - // Types that are valid to be assigned to BotDefenseChoice: - // - // *GlobalSpecType_DisableBotDefense - // *GlobalSpecType_BotDefense - // *GlobalSpecType_BotDefenseAdvanced - BotDefenseChoice isGlobalSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` - // Enable Client-Side Defense functionality for VirtualHost - // - // x-displayName: "Client-Side Defense" - // Client-Side Defense (CSD) provides a multi-phase protection system that protects web applications against Magecart, formjacking, digital - // skimming, PII harvesting and other malicious JavaScript attacks. - // Enabling CSD is a 2-part process - // (1) Service Enablement - // (2) JavaScript injection using a Load Balancer. - // By clicking enable in this section and going through the configuration, you can complete part 2 of the process. - // To enable the service itself, please visit the Service's Landing page using the search on the left navigation pane. - // - // Types that are valid to be assigned to ClientSideDefenseChoice: - // - // *GlobalSpecType_DisableClientSideDefense - // *GlobalSpecType_ClientSideDefense - ClientSideDefenseChoice isGlobalSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` - // API Definition choice - // - // x-required - // x-displayName: "API Definition" - // API Definition based on the imported swagger specs - // - // Types that are valid to be assigned to ApiDefinitionChoice: - // - // *GlobalSpecType_DisableApiDefinition - // *GlobalSpecType_ApiDefinition - // *GlobalSpecType_ApiSpecification - // *GlobalSpecType_ApiDefinitions - ApiDefinitionChoice isGlobalSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` - // ip_reputation - // - // x-displayName: "IP Reputation" - // IP reputation service analyzes IP threats and publishes a dynamic data set of millions of high-risk IP addresses, to protect users from inbound traffic from malicious IPs. - // IP threat categories include Spam Sources, Windows Exploits, Web Attacks, BotNets, Scanners, Denial of Service, Reputation, Phishing, Proxy, Mobile Threats, and TOR Proxy. - // - // Types that are valid to be assigned to IpReputationChoice: - // - // *GlobalSpecType_DisableIpReputation - // *GlobalSpecType_EnableIpReputation - IpReputationChoice isGlobalSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` - // threat_intelligence - // - // x-required - // x-displayName: "Threat Intelligence" - // Threat Intelligence provides F5 Distributed Cloud customers with an additional layer of protection against web application attacks. - // Threat intelligence leverages cross-customer correlation i.e correlation of client attacks across different customers - // to identify malicious intent of the client. Whenever a client is flagged due to malicious intent by our WAAP decision engines, - // that client will be added to the ThreatDB and all customers get this intelligence and are protected in real-time. - // - // Types that are valid to be assigned to ThreatIntelligenceChoice: - // - // *GlobalSpecType_DisableThreatIntelligence - // *GlobalSpecType_EnableThreatIntelligence - ThreatIntelligenceChoice isGlobalSpecType_ThreatIntelligenceChoice `protobuf_oneof:"threat_intelligence_choice"` - // view_internal - // - // x-displayName: "View Internal" - // Reference to view internal object - ViewInternal *views.ObjectRefType `protobuf:"bytes,1000,opt,name=view_internal,json=viewInternal,proto3" json:"view_internal,omitempty"` - // host name - // - // x-displayName: "Host Name" - // x-example: "ves-io-cf8684b9-a18f-4843-a24f-1f9ee8ea2776.ac.vh.ves.io" - // Internally generated host name to be used for the virtual host - HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` - // DNS information - // - // x-displayName: "DNS Information" - // DNS information for this virtual host - DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` - // Virtual Host state - // - // x-displayName: "Virtual Host State" - // State of the virtual host - State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` - // Auto Cert State - // - // x-displayName: "Auto Cert State" - // State of auto certificate generation. - AutoCertState virtual_host.CertificationState `protobuf:"varint,1004,opt,name=auto_cert_state,json=autoCertState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"auto_cert_state,omitempty"` // Deprecated: Do not use. - // Auto Cert Information - // - // x-displayName: "Auto Cert Information" - // Auto certificate related information - AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` - // Internet VIP Info - // - // x-displayName: "Internet VIP Info" - // Internet VIP Info - InternetVipInfo []*views.InternetVIPInfo `protobuf:"bytes,1100,rep,name=internet_vip_info,json=internetVipInfo,proto3" json:"internet_vip_info,omitempty"` - // csrf_policy - // - // x-displayName: "Cross-Site Request Forgery Protection" - // Cross-Site Request Forgery (CSRF) is an attack that occurs when a malicious third-party website exploits a vulnerability thats allows them to submit an undesired request on user's behalf. - // - // The policy checks where a request is coming from to determine if the request's origin is the same as its destination. The policy relies on two pieces of information used in determining if a request originated from the same host. - // - // 1. The origin that caused the user agent to issue the request (source origin). - // 2. The origin that the request is going to (target origin). - // When the policy evaluating a request, it ensures both pieces of information are present and compare their values. If the source origin is missing or origins do not match the request is rejected. The exception to this being the source-origin has been added to the policy as valid. - // Because CSRF attacks specifically target state-changing requests, the policy only acts on the HTTP requests that have state-changing method (PUT,POST, etc.). - CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` - // GraphQL Inspection - // - // x-displayName: "GraphQL Inspection" - // GraphQL is a query language and server-side runtime for APIs which provides a complete and understandable - // description of the data in API. GraphQL gives clients the power to ask for exactly what they need, makes it - // easier to evolve APIs over time, and enables powerful developer tools. Policy configuration to analyze GraphQL - // queries and prevent GraphQL tailored attacks. - GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` - // Cookie protection - // - // x-displayName: "Cookie Protection" - // Allows setting attributes (SameSite, Secure, and HttpOnly) on cookies in responses. - // Cookie Tampering Protection prevents attackers from modifying the value of session cookies. - // For Cookie Tampering Protection, enabling a web app firewall (WAF) is a prerequisite. - // The configured mode of WAF (monitoring or blocking) will be enforced on the request when cookie tampering is identified. - // Note: We recommend enabling Secure and HttpOnly attributes along with cookie tampering protection. - ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` - // Slow DDoS Mitigation - // - // x-displayName: "Slow DDoS Mitigation" - // "Slow and low" attacks tie up server resources, leaving none available for servicing - // requests from actual users.Configuration that protects origins from slow and low attacks. - // In the case HTTP loadbalancer, only default settings can be applied. For HTTPS load balancer, - // the request timeout and request headers timeout value can be customized. - // - // Types that are valid to be assigned to SlowDdosMitigationChoice: - // - // *GlobalSpecType_SystemDefaultTimeouts - // *GlobalSpecType_SlowDdosMitigation - SlowDdosMitigationChoice isGlobalSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` - // JWT Validation - // - // x-displayName: "JWT Validation" - // JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming - // JWTs before they are passed to origin APIs. JWT Validation will also stop requests with expired - // tokens or tokens that are not yet valid. - JwtValidation *JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` - // L7 DDoS Auto Mitigation Action - // - // x-displayName: "L7 DDoS Auto Mitigation" - // x-required - // Select an action for auto mitigation - // - // Types that are valid to be assigned to L7DdosAutoMitigationAction: - // - // *GlobalSpecType_L7DdosActionDefault - // *GlobalSpecType_L7DdosActionBlock - // *GlobalSpecType_L7DdosActionJsChallenge - // *GlobalSpecType_L7DdosActionNone - L7DdosAutoMitigationAction isGlobalSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` - // Cert State - // - // x-displayName: "Cert State" - // State of Custom certificate or Auto certificate generation. - CertState virtual_host.CertificationState `protobuf:"varint,115,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` +func (m *CreateSpecType) GetDisableWaf() *schema.Empty { + if x, ok := m.GetWafChoice().(*CreateSpecType_DisableWaf); ok { + return x.DisableWaf + } + return nil } -func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } -func (*GlobalSpecType) ProtoMessage() {} -func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{78} -} -func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +func (m *CreateSpecType) GetAppFirewall() *views.ObjectRefType { + if x, ok := m.GetWafChoice().(*CreateSpecType_AppFirewall); ok { + return x.AppFirewall + } + return nil } -func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +func (m *CreateSpecType) GetAddLocation() bool { + if m != nil { + return m.AddLocation } - return b[:n], nil + return false } -func (m *GlobalSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_GlobalSpecType.Merge(m, src) + +func (m *CreateSpecType) GetNoChallenge() *schema.Empty { + if x, ok := m.GetChallengeType().(*CreateSpecType_NoChallenge); ok { + return x.NoChallenge + } + return nil } -func (m *GlobalSpecType) XXX_Size() int { - return m.Size() + +func (m *CreateSpecType) GetEnableChallenge() *common_waf.EnableChallenge { + if x, ok := m.GetChallengeType().(*CreateSpecType_EnableChallenge); ok { + return x.EnableChallenge + } + return nil } -func (m *GlobalSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) + +func (m *CreateSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetChallengeType().(*CreateSpecType_JsChallenge); ok { + return x.JsChallenge + } + return nil } -var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo +func (m *CreateSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetChallengeType().(*CreateSpecType_CaptchaChallenge); ok { + return x.CaptchaChallenge + } + return nil +} -type isGlobalSpecType_LoadbalancerType interface { - isGlobalSpecType_LoadbalancerType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *CreateSpecType) GetPolicyBasedChallenge() *common_waf.PolicyBasedChallenge { + if x, ok := m.GetChallengeType().(*CreateSpecType_PolicyBasedChallenge); ok { + return x.PolicyBasedChallenge + } + return nil } -type isGlobalSpecType_AdvertiseChoice interface { - isGlobalSpecType_AdvertiseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_OriginPoolChoice interface { - isGlobalSpecType_OriginPoolChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_HostRewriteParams interface { - isGlobalSpecType_HostRewriteParams() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_WafChoice interface { - isGlobalSpecType_WafChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_ChallengeType interface { - isGlobalSpecType_ChallengeType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_UserIdChoice interface { - isGlobalSpecType_UserIdChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_RateLimitChoice interface { - isGlobalSpecType_RateLimitChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_ServicePolicyChoice interface { - isGlobalSpecType_ServicePolicyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_HashPolicyChoice interface { - isGlobalSpecType_HashPolicyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_TrustClientIpHeadersChoice interface { - isGlobalSpecType_TrustClientIpHeadersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_MlConfigChoice interface { - isGlobalSpecType_MlConfigChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_DdosDetectionChoice interface { - isGlobalSpecType_DdosDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_MaliciousUserDetectionChoice interface { - isGlobalSpecType_MaliciousUserDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_ApiDiscoveryChoice interface { - isGlobalSpecType_ApiDiscoveryChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_BotDefenseChoice interface { - isGlobalSpecType_BotDefenseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_ClientSideDefenseChoice interface { - isGlobalSpecType_ClientSideDefenseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_ApiDefinitionChoice interface { - isGlobalSpecType_ApiDefinitionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_IpReputationChoice interface { - isGlobalSpecType_IpReputationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_ThreatIntelligenceChoice interface { - isGlobalSpecType_ThreatIntelligenceChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_SlowDdosMitigationChoice interface { - isGlobalSpecType_SlowDdosMitigationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGlobalSpecType_L7DdosAutoMitigationAction interface { - isGlobalSpecType_L7DdosAutoMitigationAction() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type GlobalSpecType_Http struct { - Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` -} -type GlobalSpecType_HttpsAutoCert struct { - HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` -} -type GlobalSpecType_Https struct { - Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` -} -type GlobalSpecType_DoNotAdvertise struct { - DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` -} -type GlobalSpecType_AdvertiseOnPublicDefaultVip struct { - AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` -} -type GlobalSpecType_AdvertiseOnPublic struct { - AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` -} -type GlobalSpecType_AdvertiseCustom struct { - AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` -} -type GlobalSpecType_DefaultPool struct { - DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` -} -type GlobalSpecType_DefaultPoolList struct { - DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` -} -type GlobalSpecType_AutoHostRewrite struct { - AutoHostRewrite *schema.Empty `protobuf:"bytes,28,opt,name=auto_host_rewrite,json=autoHostRewrite,proto3,oneof" json:"auto_host_rewrite,omitempty"` -} -type GlobalSpecType_HostRewrite struct { - HostRewrite string `protobuf:"bytes,29,opt,name=host_rewrite,json=hostRewrite,proto3,oneof" json:"host_rewrite,omitempty"` -} -type GlobalSpecType_DisableHostRewrite struct { - DisableHostRewrite *schema.Empty `protobuf:"bytes,30,opt,name=disable_host_rewrite,json=disableHostRewrite,proto3,oneof" json:"disable_host_rewrite,omitempty"` -} -type GlobalSpecType_DisableWaf struct { - DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` -} -type GlobalSpecType_AppFirewall struct { - AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` -} -type GlobalSpecType_NoChallenge struct { - NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` -} -type GlobalSpecType_EnableChallenge struct { - EnableChallenge *EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` -} -type GlobalSpecType_JsChallenge struct { - JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` -} -type GlobalSpecType_CaptchaChallenge struct { - CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` -} -type GlobalSpecType_PolicyBasedChallenge struct { - PolicyBasedChallenge *PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` -} -type GlobalSpecType_UserIdClientIp struct { - UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` -} -type GlobalSpecType_UserIdentification struct { - UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` -} -type GlobalSpecType_DisableRateLimit struct { - DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` -} -type GlobalSpecType_ApiRateLimit struct { - ApiRateLimit *APIRateLimit `protobuf:"bytes,68,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` -} -type GlobalSpecType_RateLimit struct { - RateLimit *RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` -} -type GlobalSpecType_ServicePoliciesFromNamespace struct { - ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` -} -type GlobalSpecType_NoServicePolicies struct { - NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` -} -type GlobalSpecType_ActiveServicePolicies struct { - ActiveServicePolicies *ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` -} -type GlobalSpecType_RoundRobin struct { - RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` -} -type GlobalSpecType_LeastActive struct { - LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` -} -type GlobalSpecType_Random struct { - Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` -} -type GlobalSpecType_SourceIpStickiness struct { - SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` -} -type GlobalSpecType_CookieStickiness struct { - CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` -} -type GlobalSpecType_RingHash struct { - RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` -} -type GlobalSpecType_DisableTrustClientIpHeaders struct { - DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` -} -type GlobalSpecType_EnableTrustClientIpHeaders struct { - EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` -} -type GlobalSpecType_SingleLbApp struct { - SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` -} -type GlobalSpecType_MultiLbApp struct { - MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` -} -type GlobalSpecType_EnableDdosDetection struct { - EnableDdosDetection *EnableDDoSDetectionSetting `protobuf:"bytes,77,opt,name=enable_ddos_detection,json=enableDdosDetection,proto3,oneof" json:"enable_ddos_detection,omitempty"` -} -type GlobalSpecType_DisableDdosDetection struct { - DisableDdosDetection *schema.Empty `protobuf:"bytes,78,opt,name=disable_ddos_detection,json=disableDdosDetection,proto3,oneof" json:"disable_ddos_detection,omitempty"` -} -type GlobalSpecType_EnableMaliciousUserDetection struct { - EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` -} -type GlobalSpecType_DisableMaliciousUserDetection struct { - DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` -} -type GlobalSpecType_EnableApiDiscovery struct { - EnableApiDiscovery *ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` -} -type GlobalSpecType_DisableApiDiscovery struct { - DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` -} -type GlobalSpecType_DisableBotDefense struct { - DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` -} -type GlobalSpecType_BotDefense struct { - BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` -} -type GlobalSpecType_BotDefenseAdvanced struct { - BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` -} -type GlobalSpecType_DisableClientSideDefense struct { - DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` -} -type GlobalSpecType_ClientSideDefense struct { - ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` -} -type GlobalSpecType_DisableApiDefinition struct { - DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` -} -type GlobalSpecType_ApiDefinition struct { - ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` -} -type GlobalSpecType_ApiSpecification struct { - ApiSpecification *APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` -} -type GlobalSpecType_ApiDefinitions struct { - ApiDefinitions *ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` -} -type GlobalSpecType_DisableIpReputation struct { - DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` -} -type GlobalSpecType_EnableIpReputation struct { - EnableIpReputation *IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` -} -type GlobalSpecType_DisableThreatIntelligence struct { - DisableThreatIntelligence *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_intelligence,json=disableThreatIntelligence,proto3,oneof" json:"disable_threat_intelligence,omitempty"` -} -type GlobalSpecType_EnableThreatIntelligence struct { - EnableThreatIntelligence *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_intelligence,json=enableThreatIntelligence,proto3,oneof" json:"enable_threat_intelligence,omitempty"` -} -type GlobalSpecType_SystemDefaultTimeouts struct { - SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` -} -type GlobalSpecType_SlowDdosMitigation struct { - SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` -} -type GlobalSpecType_L7DdosActionDefault struct { - L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` -} -type GlobalSpecType_L7DdosActionBlock struct { - L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` -} -type GlobalSpecType_L7DdosActionJsChallenge struct { - L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` -} -type GlobalSpecType_L7DdosActionNone struct { - L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` -} - -func (*GlobalSpecType_Http) isGlobalSpecType_LoadbalancerType() {} -func (*GlobalSpecType_HttpsAutoCert) isGlobalSpecType_LoadbalancerType() {} -func (*GlobalSpecType_Https) isGlobalSpecType_LoadbalancerType() {} -func (*GlobalSpecType_DoNotAdvertise) isGlobalSpecType_AdvertiseChoice() {} -func (*GlobalSpecType_AdvertiseOnPublicDefaultVip) isGlobalSpecType_AdvertiseChoice() {} -func (*GlobalSpecType_AdvertiseOnPublic) isGlobalSpecType_AdvertiseChoice() {} -func (*GlobalSpecType_AdvertiseCustom) isGlobalSpecType_AdvertiseChoice() {} -func (*GlobalSpecType_DefaultPool) isGlobalSpecType_OriginPoolChoice() {} -func (*GlobalSpecType_DefaultPoolList) isGlobalSpecType_OriginPoolChoice() {} -func (*GlobalSpecType_AutoHostRewrite) isGlobalSpecType_HostRewriteParams() {} -func (*GlobalSpecType_HostRewrite) isGlobalSpecType_HostRewriteParams() {} -func (*GlobalSpecType_DisableHostRewrite) isGlobalSpecType_HostRewriteParams() {} -func (*GlobalSpecType_DisableWaf) isGlobalSpecType_WafChoice() {} -func (*GlobalSpecType_AppFirewall) isGlobalSpecType_WafChoice() {} -func (*GlobalSpecType_NoChallenge) isGlobalSpecType_ChallengeType() {} -func (*GlobalSpecType_EnableChallenge) isGlobalSpecType_ChallengeType() {} -func (*GlobalSpecType_JsChallenge) isGlobalSpecType_ChallengeType() {} -func (*GlobalSpecType_CaptchaChallenge) isGlobalSpecType_ChallengeType() {} -func (*GlobalSpecType_PolicyBasedChallenge) isGlobalSpecType_ChallengeType() {} -func (*GlobalSpecType_UserIdClientIp) isGlobalSpecType_UserIdChoice() {} -func (*GlobalSpecType_UserIdentification) isGlobalSpecType_UserIdChoice() {} -func (*GlobalSpecType_DisableRateLimit) isGlobalSpecType_RateLimitChoice() {} -func (*GlobalSpecType_ApiRateLimit) isGlobalSpecType_RateLimitChoice() {} -func (*GlobalSpecType_RateLimit) isGlobalSpecType_RateLimitChoice() {} -func (*GlobalSpecType_ServicePoliciesFromNamespace) isGlobalSpecType_ServicePolicyChoice() {} -func (*GlobalSpecType_NoServicePolicies) isGlobalSpecType_ServicePolicyChoice() {} -func (*GlobalSpecType_ActiveServicePolicies) isGlobalSpecType_ServicePolicyChoice() {} -func (*GlobalSpecType_RoundRobin) isGlobalSpecType_HashPolicyChoice() {} -func (*GlobalSpecType_LeastActive) isGlobalSpecType_HashPolicyChoice() {} -func (*GlobalSpecType_Random) isGlobalSpecType_HashPolicyChoice() {} -func (*GlobalSpecType_SourceIpStickiness) isGlobalSpecType_HashPolicyChoice() {} -func (*GlobalSpecType_CookieStickiness) isGlobalSpecType_HashPolicyChoice() {} -func (*GlobalSpecType_RingHash) isGlobalSpecType_HashPolicyChoice() {} -func (*GlobalSpecType_DisableTrustClientIpHeaders) isGlobalSpecType_TrustClientIpHeadersChoice() {} -func (*GlobalSpecType_EnableTrustClientIpHeaders) isGlobalSpecType_TrustClientIpHeadersChoice() {} -func (*GlobalSpecType_SingleLbApp) isGlobalSpecType_MlConfigChoice() {} -func (*GlobalSpecType_MultiLbApp) isGlobalSpecType_MlConfigChoice() {} -func (*GlobalSpecType_EnableDdosDetection) isGlobalSpecType_DdosDetectionChoice() {} -func (*GlobalSpecType_DisableDdosDetection) isGlobalSpecType_DdosDetectionChoice() {} -func (*GlobalSpecType_EnableMaliciousUserDetection) isGlobalSpecType_MaliciousUserDetectionChoice() {} -func (*GlobalSpecType_DisableMaliciousUserDetection) isGlobalSpecType_MaliciousUserDetectionChoice() { -} -func (*GlobalSpecType_EnableApiDiscovery) isGlobalSpecType_ApiDiscoveryChoice() {} -func (*GlobalSpecType_DisableApiDiscovery) isGlobalSpecType_ApiDiscoveryChoice() {} -func (*GlobalSpecType_DisableBotDefense) isGlobalSpecType_BotDefenseChoice() {} -func (*GlobalSpecType_BotDefense) isGlobalSpecType_BotDefenseChoice() {} -func (*GlobalSpecType_BotDefenseAdvanced) isGlobalSpecType_BotDefenseChoice() {} -func (*GlobalSpecType_DisableClientSideDefense) isGlobalSpecType_ClientSideDefenseChoice() {} -func (*GlobalSpecType_ClientSideDefense) isGlobalSpecType_ClientSideDefenseChoice() {} -func (*GlobalSpecType_DisableApiDefinition) isGlobalSpecType_ApiDefinitionChoice() {} -func (*GlobalSpecType_ApiDefinition) isGlobalSpecType_ApiDefinitionChoice() {} -func (*GlobalSpecType_ApiSpecification) isGlobalSpecType_ApiDefinitionChoice() {} -func (*GlobalSpecType_ApiDefinitions) isGlobalSpecType_ApiDefinitionChoice() {} -func (*GlobalSpecType_DisableIpReputation) isGlobalSpecType_IpReputationChoice() {} -func (*GlobalSpecType_EnableIpReputation) isGlobalSpecType_IpReputationChoice() {} -func (*GlobalSpecType_DisableThreatIntelligence) isGlobalSpecType_ThreatIntelligenceChoice() {} -func (*GlobalSpecType_EnableThreatIntelligence) isGlobalSpecType_ThreatIntelligenceChoice() {} -func (*GlobalSpecType_SystemDefaultTimeouts) isGlobalSpecType_SlowDdosMitigationChoice() {} -func (*GlobalSpecType_SlowDdosMitigation) isGlobalSpecType_SlowDdosMitigationChoice() {} -func (*GlobalSpecType_L7DdosActionDefault) isGlobalSpecType_L7DdosAutoMitigationAction() {} -func (*GlobalSpecType_L7DdosActionBlock) isGlobalSpecType_L7DdosAutoMitigationAction() {} -func (*GlobalSpecType_L7DdosActionJsChallenge) isGlobalSpecType_L7DdosAutoMitigationAction() {} -func (*GlobalSpecType_L7DdosActionNone) isGlobalSpecType_L7DdosAutoMitigationAction() {} -func (m *GlobalSpecType) GetLoadbalancerType() isGlobalSpecType_LoadbalancerType { +func (m *CreateSpecType) GetMoreOption() *AdvancedOptionsType { if m != nil { - return m.LoadbalancerType + return m.MoreOption } return nil } -func (m *GlobalSpecType) GetAdvertiseChoice() isGlobalSpecType_AdvertiseChoice { - if m != nil { - return m.AdvertiseChoice + +func (m *CreateSpecType) GetUserIdClientIp() *schema.Empty { + if x, ok := m.GetUserIdChoice().(*CreateSpecType_UserIdClientIp); ok { + return x.UserIdClientIp } return nil } -func (m *GlobalSpecType) GetOriginPoolChoice() isGlobalSpecType_OriginPoolChoice { - if m != nil { - return m.OriginPoolChoice + +func (m *CreateSpecType) GetUserIdentification() *views.ObjectRefType { + if x, ok := m.GetUserIdChoice().(*CreateSpecType_UserIdentification); ok { + return x.UserIdentification } return nil } -func (m *GlobalSpecType) GetHostRewriteParams() isGlobalSpecType_HostRewriteParams { - if m != nil { - return m.HostRewriteParams + +func (m *CreateSpecType) GetDisableRateLimit() *schema.Empty { + if x, ok := m.GetRateLimitChoice().(*CreateSpecType_DisableRateLimit); ok { + return x.DisableRateLimit } return nil } -func (m *GlobalSpecType) GetWafChoice() isGlobalSpecType_WafChoice { - if m != nil { - return m.WafChoice + +func (m *CreateSpecType) GetApiRateLimit() *common_waf.APIRateLimit { + if x, ok := m.GetRateLimitChoice().(*CreateSpecType_ApiRateLimit); ok { + return x.ApiRateLimit } return nil } -func (m *GlobalSpecType) GetChallengeType() isGlobalSpecType_ChallengeType { - if m != nil { - return m.ChallengeType + +func (m *CreateSpecType) GetRateLimit() *common_waf.RateLimitConfigType { + if x, ok := m.GetRateLimitChoice().(*CreateSpecType_RateLimit); ok { + return x.RateLimit } return nil } -func (m *GlobalSpecType) GetUserIdChoice() isGlobalSpecType_UserIdChoice { + +func (m *CreateSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { if m != nil { - return m.UserIdChoice + return m.MaliciousUserMitigation } return nil } -func (m *GlobalSpecType) GetRateLimitChoice() isGlobalSpecType_RateLimitChoice { + +func (m *CreateSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { if m != nil { - return m.RateLimitChoice + return m.WafExclusionRules } return nil } -func (m *GlobalSpecType) GetServicePolicyChoice() isGlobalSpecType_ServicePolicyChoice { + +func (m *CreateSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { if m != nil { - return m.ServicePolicyChoice + return m.DataGuardRules } return nil } -func (m *GlobalSpecType) GetHashPolicyChoice() isGlobalSpecType_HashPolicyChoice { + +func (m *CreateSpecType) GetBlockedClients() []*common_waf.SimpleClientSrcRule { if m != nil { - return m.HashPolicyChoice + return m.BlockedClients } return nil } -func (m *GlobalSpecType) GetTrustClientIpHeadersChoice() isGlobalSpecType_TrustClientIpHeadersChoice { + +func (m *CreateSpecType) GetTrustedClients() []*common_waf.SimpleClientSrcRule { if m != nil { - return m.TrustClientIpHeadersChoice + return m.TrustedClients } return nil } -func (m *GlobalSpecType) GetMlConfigChoice() isGlobalSpecType_MlConfigChoice { + +func (m *CreateSpecType) GetApiProtectionRules() *common_waf.APIProtectionRules { if m != nil { - return m.MlConfigChoice + return m.ApiProtectionRules } return nil } -func (m *GlobalSpecType) GetDdosDetectionChoice() isGlobalSpecType_DdosDetectionChoice { + +func (m *CreateSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { if m != nil { - return m.DdosDetectionChoice + return m.DdosMitigationRules } return nil } -func (m *GlobalSpecType) GetMaliciousUserDetectionChoice() isGlobalSpecType_MaliciousUserDetectionChoice { - if m != nil { - return m.MaliciousUserDetectionChoice + +func (m *CreateSpecType) GetServicePoliciesFromNamespace() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*CreateSpecType_ServicePoliciesFromNamespace); ok { + return x.ServicePoliciesFromNamespace } return nil } -func (m *GlobalSpecType) GetApiDiscoveryChoice() isGlobalSpecType_ApiDiscoveryChoice { - if m != nil { - return m.ApiDiscoveryChoice + +func (m *CreateSpecType) GetNoServicePolicies() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*CreateSpecType_NoServicePolicies); ok { + return x.NoServicePolicies } return nil } -func (m *GlobalSpecType) GetBotDefenseChoice() isGlobalSpecType_BotDefenseChoice { - if m != nil { - return m.BotDefenseChoice + +func (m *CreateSpecType) GetActiveServicePolicies() *common_waf.ServicePolicyList { + if x, ok := m.GetServicePolicyChoice().(*CreateSpecType_ActiveServicePolicies); ok { + return x.ActiveServicePolicies } return nil } -func (m *GlobalSpecType) GetClientSideDefenseChoice() isGlobalSpecType_ClientSideDefenseChoice { - if m != nil { - return m.ClientSideDefenseChoice + +func (m *CreateSpecType) GetRoundRobin() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_RoundRobin); ok { + return x.RoundRobin } return nil } -func (m *GlobalSpecType) GetApiDefinitionChoice() isGlobalSpecType_ApiDefinitionChoice { - if m != nil { - return m.ApiDefinitionChoice + +func (m *CreateSpecType) GetLeastActive() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_LeastActive); ok { + return x.LeastActive } return nil } -func (m *GlobalSpecType) GetIpReputationChoice() isGlobalSpecType_IpReputationChoice { - if m != nil { - return m.IpReputationChoice + +func (m *CreateSpecType) GetRandom() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_Random); ok { + return x.Random } return nil } -func (m *GlobalSpecType) GetThreatIntelligenceChoice() isGlobalSpecType_ThreatIntelligenceChoice { - if m != nil { - return m.ThreatIntelligenceChoice + +func (m *CreateSpecType) GetSourceIpStickiness() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_SourceIpStickiness); ok { + return x.SourceIpStickiness } return nil } -func (m *GlobalSpecType) GetSlowDdosMitigationChoice() isGlobalSpecType_SlowDdosMitigationChoice { - if m != nil { - return m.SlowDdosMitigationChoice + +func (m *CreateSpecType) GetCookieStickiness() *route.CookieForHashing { + if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_CookieStickiness); ok { + return x.CookieStickiness } return nil } -func (m *GlobalSpecType) GetL7DdosAutoMitigationAction() isGlobalSpecType_L7DdosAutoMitigationAction { - if m != nil { - return m.L7DdosAutoMitigationAction + +func (m *CreateSpecType) GetRingHash() *HashPolicyListType { + if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_RingHash); ok { + return x.RingHash } return nil } -func (m *GlobalSpecType) GetDomains() []string { - if m != nil { - return m.Domains +func (m *CreateSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { + if x, ok := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_DisableTrustClientIpHeaders); ok { + return x.DisableTrustClientIpHeaders } return nil } -func (m *GlobalSpecType) GetHttp() *ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Http); ok { - return x.Http +func (m *CreateSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { + if x, ok := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_EnableTrustClientIpHeaders); ok { + return x.EnableTrustClientIpHeaders } return nil } -func (m *GlobalSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { - if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert +func (m *CreateSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { + if x, ok := m.GetMlConfigChoice().(*CreateSpecType_SingleLbApp); ok { + return x.SingleLbApp } return nil } -func (m *GlobalSpecType) GetHttps() *ProxyTypeHttps { - if x, ok := m.GetLoadbalancerType().(*GlobalSpecType_Https); ok { - return x.Https +func (m *CreateSpecType) GetMultiLbApp() *schema.Empty { + if x, ok := m.GetMlConfigChoice().(*CreateSpecType_MultiLbApp); ok { + return x.MultiLbApp } return nil } -func (m *GlobalSpecType) GetDownstreamTlsCertificateExpirationTimestamps() []*types.Timestamp { - if m != nil { - return m.DownstreamTlsCertificateExpirationTimestamps +func (m *CreateSpecType) GetEnableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_EnableMaliciousUserDetection); ok { + return x.EnableMaliciousUserDetection } return nil } -func (m *GlobalSpecType) GetDoNotAdvertise() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_DoNotAdvertise); ok { - return x.DoNotAdvertise +func (m *CreateSpecType) GetDisableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_DisableMaliciousUserDetection); ok { + return x.DisableMaliciousUserDetection } return nil } -func (m *GlobalSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublicDefaultVip); ok { - return x.AdvertiseOnPublicDefaultVip +func (m *CreateSpecType) GetEnableApiDiscovery() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*CreateSpecType_EnableApiDiscovery); ok { + return x.EnableApiDiscovery } return nil } -func (m *GlobalSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { - if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublic); ok { - return x.AdvertiseOnPublic +func (m *CreateSpecType) GetDisableApiDiscovery() *schema.Empty { + if x, ok := m.GetApiDiscoveryChoice().(*CreateSpecType_DisableApiDiscovery); ok { + return x.DisableApiDiscovery } return nil } -func (m *GlobalSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { - if x, ok := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseCustom); ok { - return x.AdvertiseCustom +func (m *CreateSpecType) GetDisableBotDefense() *schema.Empty { + if x, ok := m.GetBotDefenseChoice().(*CreateSpecType_DisableBotDefense); ok { + return x.DisableBotDefense } return nil } -func (m *GlobalSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { - if m != nil { - return m.DefaultRoutePools +func (m *CreateSpecType) GetBotDefense() *ShapeBotDefenseType { + if x, ok := m.GetBotDefenseChoice().(*CreateSpecType_BotDefense); ok { + return x.BotDefense } return nil } -func (m *GlobalSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { - if x, ok := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPool); ok { - return x.DefaultPool +func (m *CreateSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { + if x, ok := m.GetBotDefenseChoice().(*CreateSpecType_BotDefenseAdvanced); ok { + return x.BotDefenseAdvanced } return nil } -func (m *GlobalSpecType) GetDefaultPoolList() *views.OriginPoolListType { - if x, ok := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPoolList); ok { - return x.DefaultPoolList +func (m *CreateSpecType) GetDisableApiDefinition() *schema.Empty { + if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_DisableApiDefinition); ok { + return x.DisableApiDefinition } return nil } -func (m *GlobalSpecType) GetAutoHostRewrite() *schema.Empty { - if x, ok := m.GetHostRewriteParams().(*GlobalSpecType_AutoHostRewrite); ok { - return x.AutoHostRewrite +func (m *CreateSpecType) GetApiDefinition() *views.ObjectRefType { + if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinition); ok { + return x.ApiDefinition } return nil } -func (m *GlobalSpecType) GetHostRewrite() string { - if x, ok := m.GetHostRewriteParams().(*GlobalSpecType_HostRewrite); ok { - return x.HostRewrite - } - return "" -} - -func (m *GlobalSpecType) GetDisableHostRewrite() *schema.Empty { - if x, ok := m.GetHostRewriteParams().(*GlobalSpecType_DisableHostRewrite); ok { - return x.DisableHostRewrite +func (m *CreateSpecType) GetApiSpecification() *common_waf.APISpecificationSettings { + if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_ApiSpecification); ok { + return x.ApiSpecification } return nil } -func (m *GlobalSpecType) GetRoutes() []*RouteType { - if m != nil { - return m.Routes +func (m *CreateSpecType) GetApiDefinitions() *common_waf.ApiDefinitionList { + if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinitions); ok { + return x.ApiDefinitions } return nil } -func (m *GlobalSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { - if m != nil { - return m.OriginServerSubsetRuleList +func (m *CreateSpecType) GetDisableIpReputation() *schema.Empty { + if x, ok := m.GetIpReputationChoice().(*CreateSpecType_DisableIpReputation); ok { + return x.DisableIpReputation } return nil } -func (m *GlobalSpecType) GetCorsPolicy() *schema.CorsPolicy { - if m != nil { - return m.CorsPolicy +func (m *CreateSpecType) GetEnableIpReputation() *common_waf.IPThreatCategoryListType { + if x, ok := m.GetIpReputationChoice().(*CreateSpecType_EnableIpReputation); ok { + return x.EnableIpReputation } return nil } -func (m *GlobalSpecType) GetDisableWaf() *schema.Empty { - if x, ok := m.GetWafChoice().(*GlobalSpecType_DisableWaf); ok { - return x.DisableWaf +func (m *CreateSpecType) GetDisableClientSideDefense() *schema.Empty { + if x, ok := m.GetClientSideDefenseChoice().(*CreateSpecType_DisableClientSideDefense); ok { + return x.DisableClientSideDefense } return nil } -func (m *GlobalSpecType) GetAppFirewall() *views.ObjectRefType { - if x, ok := m.GetWafChoice().(*GlobalSpecType_AppFirewall); ok { - return x.AppFirewall +func (m *CreateSpecType) GetClientSideDefense() *ClientSideDefenseType { + if x, ok := m.GetClientSideDefenseChoice().(*CreateSpecType_ClientSideDefense); ok { + return x.ClientSideDefense } return nil } -func (m *GlobalSpecType) GetAddLocation() bool { +func (m *CreateSpecType) GetCsrfPolicy() *schema.CsrfPolicy { if m != nil { - return m.AddLocation - } - return false -} - -func (m *GlobalSpecType) GetNoChallenge() *schema.Empty { - if x, ok := m.GetChallengeType().(*GlobalSpecType_NoChallenge); ok { - return x.NoChallenge + return m.CsrfPolicy } return nil } -func (m *GlobalSpecType) GetEnableChallenge() *EnableChallenge { - if x, ok := m.GetChallengeType().(*GlobalSpecType_EnableChallenge); ok { - return x.EnableChallenge +func (m *CreateSpecType) GetGraphqlRules() []*policy.GraphQLRule { + if m != nil { + return m.GraphqlRules } return nil } -func (m *GlobalSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetChallengeType().(*GlobalSpecType_JsChallenge); ok { - return x.JsChallenge +func (m *CreateSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { + if m != nil { + return m.ProtectedCookies } return nil } -func (m *GlobalSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { - if x, ok := m.GetChallengeType().(*GlobalSpecType_CaptchaChallenge); ok { - return x.CaptchaChallenge +func (m *CreateSpecType) GetSystemDefaultTimeouts() *schema.Empty { + if x, ok := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SystemDefaultTimeouts); ok { + return x.SystemDefaultTimeouts } return nil } -func (m *GlobalSpecType) GetPolicyBasedChallenge() *PolicyBasedChallenge { - if x, ok := m.GetChallengeType().(*GlobalSpecType_PolicyBasedChallenge); ok { - return x.PolicyBasedChallenge +func (m *CreateSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { + if x, ok := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SlowDdosMitigation); ok { + return x.SlowDdosMitigation } return nil } -func (m *GlobalSpecType) GetMoreOption() *AdvancedOptionsType { +func (m *CreateSpecType) GetJwtValidation() *common_waf.JWTValidation { if m != nil { - return m.MoreOption + return m.JwtValidation } return nil } -func (m *GlobalSpecType) GetUserIdClientIp() *schema.Empty { - if x, ok := m.GetUserIdChoice().(*GlobalSpecType_UserIdClientIp); ok { - return x.UserIdClientIp +func (m *CreateSpecType) GetDisableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*CreateSpecType_DisableThreatMesh); ok { + return x.DisableThreatMesh } return nil } -func (m *GlobalSpecType) GetUserIdentification() *views.ObjectRefType { - if x, ok := m.GetUserIdChoice().(*GlobalSpecType_UserIdentification); ok { - return x.UserIdentification +func (m *CreateSpecType) GetEnableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*CreateSpecType_EnableThreatMesh); ok { + return x.EnableThreatMesh } return nil } -func (m *GlobalSpecType) GetDisableRateLimit() *schema.Empty { - if x, ok := m.GetRateLimitChoice().(*GlobalSpecType_DisableRateLimit); ok { - return x.DisableRateLimit +func (m *CreateSpecType) GetL7DdosActionDefault() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionDefault); ok { + return x.L7DdosActionDefault } return nil } -func (m *GlobalSpecType) GetApiRateLimit() *APIRateLimit { - if x, ok := m.GetRateLimitChoice().(*GlobalSpecType_ApiRateLimit); ok { - return x.ApiRateLimit +func (m *CreateSpecType) GetL7DdosActionBlock() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionBlock); ok { + return x.L7DdosActionBlock } return nil } -func (m *GlobalSpecType) GetRateLimit() *RateLimitConfigType { - if x, ok := m.GetRateLimitChoice().(*GlobalSpecType_RateLimit); ok { - return x.RateLimit +func (m *CreateSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionJsChallenge); ok { + return x.L7DdosActionJsChallenge } return nil } -// Deprecated: Do not use. -func (m *GlobalSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { - if m != nil { - return m.MaliciousUserMitigation +func (m *CreateSpecType) GetL7DdosActionNone() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionNone); ok { + return x.L7DdosActionNone } return nil } -func (m *GlobalSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { - if m != nil { - return m.WafExclusionRules +// XXX_OneofWrappers is for the internal use of the proto package. +func (*CreateSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*CreateSpecType_Http)(nil), + (*CreateSpecType_HttpsAutoCert)(nil), + (*CreateSpecType_Https)(nil), + (*CreateSpecType_DoNotAdvertise)(nil), + (*CreateSpecType_AdvertiseOnPublicDefaultVip)(nil), + (*CreateSpecType_AdvertiseOnPublic)(nil), + (*CreateSpecType_AdvertiseCustom)(nil), + (*CreateSpecType_DefaultPool)(nil), + (*CreateSpecType_DefaultPoolList)(nil), + (*CreateSpecType_DisableWaf)(nil), + (*CreateSpecType_AppFirewall)(nil), + (*CreateSpecType_NoChallenge)(nil), + (*CreateSpecType_EnableChallenge)(nil), + (*CreateSpecType_JsChallenge)(nil), + (*CreateSpecType_CaptchaChallenge)(nil), + (*CreateSpecType_PolicyBasedChallenge)(nil), + (*CreateSpecType_UserIdClientIp)(nil), + (*CreateSpecType_UserIdentification)(nil), + (*CreateSpecType_DisableRateLimit)(nil), + (*CreateSpecType_ApiRateLimit)(nil), + (*CreateSpecType_RateLimit)(nil), + (*CreateSpecType_ServicePoliciesFromNamespace)(nil), + (*CreateSpecType_NoServicePolicies)(nil), + (*CreateSpecType_ActiveServicePolicies)(nil), + (*CreateSpecType_RoundRobin)(nil), + (*CreateSpecType_LeastActive)(nil), + (*CreateSpecType_Random)(nil), + (*CreateSpecType_SourceIpStickiness)(nil), + (*CreateSpecType_CookieStickiness)(nil), + (*CreateSpecType_RingHash)(nil), + (*CreateSpecType_DisableTrustClientIpHeaders)(nil), + (*CreateSpecType_EnableTrustClientIpHeaders)(nil), + (*CreateSpecType_SingleLbApp)(nil), + (*CreateSpecType_MultiLbApp)(nil), + (*CreateSpecType_EnableMaliciousUserDetection)(nil), + (*CreateSpecType_DisableMaliciousUserDetection)(nil), + (*CreateSpecType_EnableApiDiscovery)(nil), + (*CreateSpecType_DisableApiDiscovery)(nil), + (*CreateSpecType_DisableBotDefense)(nil), + (*CreateSpecType_BotDefense)(nil), + (*CreateSpecType_BotDefenseAdvanced)(nil), + (*CreateSpecType_DisableApiDefinition)(nil), + (*CreateSpecType_ApiDefinition)(nil), + (*CreateSpecType_ApiSpecification)(nil), + (*CreateSpecType_ApiDefinitions)(nil), + (*CreateSpecType_DisableIpReputation)(nil), + (*CreateSpecType_EnableIpReputation)(nil), + (*CreateSpecType_DisableClientSideDefense)(nil), + (*CreateSpecType_ClientSideDefense)(nil), + (*CreateSpecType_SystemDefaultTimeouts)(nil), + (*CreateSpecType_SlowDdosMitigation)(nil), + (*CreateSpecType_DisableThreatMesh)(nil), + (*CreateSpecType_EnableThreatMesh)(nil), + (*CreateSpecType_L7DdosActionDefault)(nil), + (*CreateSpecType_L7DdosActionBlock)(nil), + (*CreateSpecType_L7DdosActionJsChallenge)(nil), + (*CreateSpecType_L7DdosActionNone)(nil), } - return nil } -func (m *GlobalSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { - if m != nil { - return m.DataGuardRules - } - return nil +// ReplaceSpecType +// +// x-displayName: "Replace HTTP Load Balancer" +// Shape of the HTTP load balancer specification +type ReplaceSpecType struct { + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: + // + // *ReplaceSpecType_Http + // *ReplaceSpecType_HttpsAutoCert + // *ReplaceSpecType_Https + LoadbalancerType isReplaceSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + // Types that are valid to be assigned to AdvertiseChoice: + // + // *ReplaceSpecType_DoNotAdvertise + // *ReplaceSpecType_AdvertiseOnPublicDefaultVip + // *ReplaceSpecType_AdvertiseOnPublic + // *ReplaceSpecType_AdvertiseCustom + AdvertiseChoice isReplaceSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` + DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` + // Types that are valid to be assigned to OriginPoolChoice: + // + // *ReplaceSpecType_DefaultPool + // *ReplaceSpecType_DefaultPoolList + OriginPoolChoice isReplaceSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` + OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` + Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` + CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` + // Types that are valid to be assigned to WafChoice: + // + // *ReplaceSpecType_DisableWaf + // *ReplaceSpecType_AppFirewall + WafChoice isReplaceSpecType_WafChoice `protobuf_oneof:"waf_choice"` + AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` + // Types that are valid to be assigned to ChallengeType: + // + // *ReplaceSpecType_NoChallenge + // *ReplaceSpecType_EnableChallenge + // *ReplaceSpecType_JsChallenge + // *ReplaceSpecType_CaptchaChallenge + // *ReplaceSpecType_PolicyBasedChallenge + ChallengeType isReplaceSpecType_ChallengeType `protobuf_oneof:"challenge_type"` + MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // Types that are valid to be assigned to UserIdChoice: + // + // *ReplaceSpecType_UserIdClientIp + // *ReplaceSpecType_UserIdentification + UserIdChoice isReplaceSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` + // Types that are valid to be assigned to RateLimitChoice: + // + // *ReplaceSpecType_DisableRateLimit + // *ReplaceSpecType_ApiRateLimit + // *ReplaceSpecType_RateLimit + RateLimitChoice isReplaceSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` + MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` + WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` + DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` + BlockedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` + TrustedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` + ApiProtectionRules *common_waf.APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` + DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` + // Types that are valid to be assigned to ServicePolicyChoice: + // + // *ReplaceSpecType_ServicePoliciesFromNamespace + // *ReplaceSpecType_NoServicePolicies + // *ReplaceSpecType_ActiveServicePolicies + ServicePolicyChoice isReplaceSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` + // Types that are valid to be assigned to HashPolicyChoice: + // + // *ReplaceSpecType_RoundRobin + // *ReplaceSpecType_LeastActive + // *ReplaceSpecType_Random + // *ReplaceSpecType_SourceIpStickiness + // *ReplaceSpecType_CookieStickiness + // *ReplaceSpecType_RingHash + HashPolicyChoice isReplaceSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` + // Types that are valid to be assigned to TrustClientIpHeadersChoice: + // + // *ReplaceSpecType_DisableTrustClientIpHeaders + // *ReplaceSpecType_EnableTrustClientIpHeaders + TrustClientIpHeadersChoice isReplaceSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` + // Types that are valid to be assigned to MlConfigChoice: + // + // *ReplaceSpecType_SingleLbApp + // *ReplaceSpecType_MultiLbApp + MlConfigChoice isReplaceSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` + // Types that are valid to be assigned to MaliciousUserDetectionChoice: + // + // *ReplaceSpecType_EnableMaliciousUserDetection + // *ReplaceSpecType_DisableMaliciousUserDetection + MaliciousUserDetectionChoice isReplaceSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` + // Types that are valid to be assigned to ApiDiscoveryChoice: + // + // *ReplaceSpecType_EnableApiDiscovery + // *ReplaceSpecType_DisableApiDiscovery + ApiDiscoveryChoice isReplaceSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` + // Types that are valid to be assigned to BotDefenseChoice: + // + // *ReplaceSpecType_DisableBotDefense + // *ReplaceSpecType_BotDefense + // *ReplaceSpecType_BotDefenseAdvanced + BotDefenseChoice isReplaceSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` + // Types that are valid to be assigned to ApiDefinitionChoice: + // + // *ReplaceSpecType_DisableApiDefinition + // *ReplaceSpecType_ApiDefinition + // *ReplaceSpecType_ApiSpecification + // *ReplaceSpecType_ApiDefinitions + ApiDefinitionChoice isReplaceSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` + // Types that are valid to be assigned to IpReputationChoice: + // + // *ReplaceSpecType_DisableIpReputation + // *ReplaceSpecType_EnableIpReputation + IpReputationChoice isReplaceSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` + // Types that are valid to be assigned to ClientSideDefenseChoice: + // + // *ReplaceSpecType_DisableClientSideDefense + // *ReplaceSpecType_ClientSideDefense + ClientSideDefenseChoice isReplaceSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` + CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` + GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` + ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` + // Types that are valid to be assigned to SlowDdosMitigationChoice: + // + // *ReplaceSpecType_SystemDefaultTimeouts + // *ReplaceSpecType_SlowDdosMitigation + SlowDdosMitigationChoice isReplaceSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` + JwtValidation *common_waf.JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` + // Types that are valid to be assigned to ThreatMeshChoice: + // + // *ReplaceSpecType_DisableThreatMesh + // *ReplaceSpecType_EnableThreatMesh + ThreatMeshChoice isReplaceSpecType_ThreatMeshChoice `protobuf_oneof:"threat_mesh_choice"` + // Types that are valid to be assigned to L7DdosAutoMitigationAction: + // + // *ReplaceSpecType_L7DdosActionDefault + // *ReplaceSpecType_L7DdosActionBlock + // *ReplaceSpecType_L7DdosActionJsChallenge + // *ReplaceSpecType_L7DdosActionNone + L7DdosAutoMitigationAction isReplaceSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` } -func (m *GlobalSpecType) GetBlockedClients() []*SimpleClientSrcRule { - if m != nil { - return m.BlockedClients - } - return nil +func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } +func (*ReplaceSpecType) ProtoMessage() {} +func (*ReplaceSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{41} } - -func (m *GlobalSpecType) GetTrustedClients() []*SimpleClientSrcRule { - if m != nil { - return m.TrustedClients - } - return nil +func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) } - -func (m *GlobalSpecType) GetApiProtectionRules() *APIProtectionRules { - if m != nil { - return m.ApiProtectionRules +func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err } - return nil + return b[:n], nil } - -func (m *GlobalSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { - if m != nil { - return m.DdosMitigationRules - } - return nil +func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceSpecType.Merge(m, src) } - -func (m *GlobalSpecType) GetServicePoliciesFromNamespace() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*GlobalSpecType_ServicePoliciesFromNamespace); ok { - return x.ServicePoliciesFromNamespace - } - return nil +func (m *ReplaceSpecType) XXX_Size() int { + return m.Size() } - -func (m *GlobalSpecType) GetNoServicePolicies() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*GlobalSpecType_NoServicePolicies); ok { - return x.NoServicePolicies - } - return nil +func (m *ReplaceSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) } -func (m *GlobalSpecType) GetActiveServicePolicies() *ServicePolicyList { - if x, ok := m.GetServicePolicyChoice().(*GlobalSpecType_ActiveServicePolicies); ok { - return x.ActiveServicePolicies - } - return nil -} +var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo -func (m *GlobalSpecType) GetRoundRobin() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_RoundRobin); ok { - return x.RoundRobin - } - return nil +type isReplaceSpecType_LoadbalancerType interface { + isReplaceSpecType_LoadbalancerType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetLeastActive() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_LeastActive); ok { - return x.LeastActive - } - return nil +type isReplaceSpecType_AdvertiseChoice interface { + isReplaceSpecType_AdvertiseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetRandom() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_Random); ok { - return x.Random - } - return nil +type isReplaceSpecType_OriginPoolChoice interface { + isReplaceSpecType_OriginPoolChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetSourceIpStickiness() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_SourceIpStickiness); ok { - return x.SourceIpStickiness - } - return nil +type isReplaceSpecType_WafChoice interface { + isReplaceSpecType_WafChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetCookieStickiness() *route.CookieForHashing { - if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_CookieStickiness); ok { - return x.CookieStickiness - } - return nil +type isReplaceSpecType_ChallengeType interface { + isReplaceSpecType_ChallengeType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetRingHash() *HashPolicyListType { - if x, ok := m.GetHashPolicyChoice().(*GlobalSpecType_RingHash); ok { - return x.RingHash - } - return nil +type isReplaceSpecType_UserIdChoice interface { + isReplaceSpecType_UserIdChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { - if x, ok := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_DisableTrustClientIpHeaders); ok { - return x.DisableTrustClientIpHeaders - } - return nil +type isReplaceSpecType_RateLimitChoice interface { + isReplaceSpecType_RateLimitChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { - if x, ok := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_EnableTrustClientIpHeaders); ok { - return x.EnableTrustClientIpHeaders - } - return nil +type isReplaceSpecType_ServicePolicyChoice interface { + isReplaceSpecType_ServicePolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { - if x, ok := m.GetMlConfigChoice().(*GlobalSpecType_SingleLbApp); ok { - return x.SingleLbApp - } - return nil +type isReplaceSpecType_HashPolicyChoice interface { + isReplaceSpecType_HashPolicyChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } - -func (m *GlobalSpecType) GetMultiLbApp() *schema.Empty { - if x, ok := m.GetMlConfigChoice().(*GlobalSpecType_MultiLbApp); ok { - return x.MultiLbApp - } - return nil +type isReplaceSpecType_TrustClientIpHeadersChoice interface { + isReplaceSpecType_TrustClientIpHeadersChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_MlConfigChoice interface { + isReplaceSpecType_MlConfigChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_MaliciousUserDetectionChoice interface { + isReplaceSpecType_MaliciousUserDetectionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_ApiDiscoveryChoice interface { + isReplaceSpecType_ApiDiscoveryChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_BotDefenseChoice interface { + isReplaceSpecType_BotDefenseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_ApiDefinitionChoice interface { + isReplaceSpecType_ApiDefinitionChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_IpReputationChoice interface { + isReplaceSpecType_IpReputationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_ClientSideDefenseChoice interface { + isReplaceSpecType_ClientSideDefenseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_SlowDdosMitigationChoice interface { + isReplaceSpecType_SlowDdosMitigationChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_ThreatMeshChoice interface { + isReplaceSpecType_ThreatMeshChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isReplaceSpecType_L7DdosAutoMitigationAction interface { + isReplaceSpecType_L7DdosAutoMitigationAction() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int } -// Deprecated: Do not use. -func (m *GlobalSpecType) GetEnableDdosDetection() *EnableDDoSDetectionSetting { - if x, ok := m.GetDdosDetectionChoice().(*GlobalSpecType_EnableDdosDetection); ok { - return x.EnableDdosDetection +type ReplaceSpecType_Http struct { + Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` +} +type ReplaceSpecType_HttpsAutoCert struct { + HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` +} +type ReplaceSpecType_Https struct { + Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` +} +type ReplaceSpecType_DoNotAdvertise struct { + DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` +} +type ReplaceSpecType_AdvertiseOnPublicDefaultVip struct { + AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` +} +type ReplaceSpecType_AdvertiseOnPublic struct { + AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` +} +type ReplaceSpecType_AdvertiseCustom struct { + AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` +} +type ReplaceSpecType_DefaultPool struct { + DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` +} +type ReplaceSpecType_DefaultPoolList struct { + DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` +} +type ReplaceSpecType_DisableWaf struct { + DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` +} +type ReplaceSpecType_AppFirewall struct { + AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` +} +type ReplaceSpecType_NoChallenge struct { + NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` +} +type ReplaceSpecType_EnableChallenge struct { + EnableChallenge *common_waf.EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` +} +type ReplaceSpecType_JsChallenge struct { + JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` +} +type ReplaceSpecType_CaptchaChallenge struct { + CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` +} +type ReplaceSpecType_PolicyBasedChallenge struct { + PolicyBasedChallenge *common_waf.PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` +} +type ReplaceSpecType_UserIdClientIp struct { + UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` +} +type ReplaceSpecType_UserIdentification struct { + UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` +} +type ReplaceSpecType_DisableRateLimit struct { + DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` +} +type ReplaceSpecType_ApiRateLimit struct { + ApiRateLimit *common_waf.APIRateLimit `protobuf:"bytes,120,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` +} +type ReplaceSpecType_RateLimit struct { + RateLimit *common_waf.RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` +} +type ReplaceSpecType_ServicePoliciesFromNamespace struct { + ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` +} +type ReplaceSpecType_NoServicePolicies struct { + NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` +} +type ReplaceSpecType_ActiveServicePolicies struct { + ActiveServicePolicies *common_waf.ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` +} +type ReplaceSpecType_RoundRobin struct { + RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` +} +type ReplaceSpecType_LeastActive struct { + LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` +} +type ReplaceSpecType_Random struct { + Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` +} +type ReplaceSpecType_SourceIpStickiness struct { + SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` +} +type ReplaceSpecType_CookieStickiness struct { + CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` +} +type ReplaceSpecType_RingHash struct { + RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` +} +type ReplaceSpecType_DisableTrustClientIpHeaders struct { + DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` +} +type ReplaceSpecType_EnableTrustClientIpHeaders struct { + EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` +} +type ReplaceSpecType_SingleLbApp struct { + SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` +} +type ReplaceSpecType_MultiLbApp struct { + MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` +} +type ReplaceSpecType_EnableMaliciousUserDetection struct { + EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` +} +type ReplaceSpecType_DisableMaliciousUserDetection struct { + DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` +} +type ReplaceSpecType_EnableApiDiscovery struct { + EnableApiDiscovery *common_waf.ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` +} +type ReplaceSpecType_DisableApiDiscovery struct { + DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` +} +type ReplaceSpecType_DisableBotDefense struct { + DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` +} +type ReplaceSpecType_BotDefense struct { + BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` +} +type ReplaceSpecType_BotDefenseAdvanced struct { + BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` +} +type ReplaceSpecType_DisableApiDefinition struct { + DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` +} +type ReplaceSpecType_ApiDefinition struct { + ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` +} +type ReplaceSpecType_ApiSpecification struct { + ApiSpecification *common_waf.APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` +} +type ReplaceSpecType_ApiDefinitions struct { + ApiDefinitions *common_waf.ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` +} +type ReplaceSpecType_DisableIpReputation struct { + DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` +} +type ReplaceSpecType_EnableIpReputation struct { + EnableIpReputation *common_waf.IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` +} +type ReplaceSpecType_DisableClientSideDefense struct { + DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` +} +type ReplaceSpecType_ClientSideDefense struct { + ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` +} +type ReplaceSpecType_SystemDefaultTimeouts struct { + SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` +} +type ReplaceSpecType_SlowDdosMitigation struct { + SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` +} +type ReplaceSpecType_DisableThreatMesh struct { + DisableThreatMesh *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_mesh,json=disableThreatMesh,proto3,oneof" json:"disable_threat_mesh,omitempty"` +} +type ReplaceSpecType_EnableThreatMesh struct { + EnableThreatMesh *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_mesh,json=enableThreatMesh,proto3,oneof" json:"enable_threat_mesh,omitempty"` +} +type ReplaceSpecType_L7DdosActionDefault struct { + L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` +} +type ReplaceSpecType_L7DdosActionBlock struct { + L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` +} +type ReplaceSpecType_L7DdosActionJsChallenge struct { + L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` +} +type ReplaceSpecType_L7DdosActionNone struct { + L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` +} + +func (*ReplaceSpecType_Http) isReplaceSpecType_LoadbalancerType() {} +func (*ReplaceSpecType_HttpsAutoCert) isReplaceSpecType_LoadbalancerType() {} +func (*ReplaceSpecType_Https) isReplaceSpecType_LoadbalancerType() {} +func (*ReplaceSpecType_DoNotAdvertise) isReplaceSpecType_AdvertiseChoice() {} +func (*ReplaceSpecType_AdvertiseOnPublicDefaultVip) isReplaceSpecType_AdvertiseChoice() {} +func (*ReplaceSpecType_AdvertiseOnPublic) isReplaceSpecType_AdvertiseChoice() {} +func (*ReplaceSpecType_AdvertiseCustom) isReplaceSpecType_AdvertiseChoice() {} +func (*ReplaceSpecType_DefaultPool) isReplaceSpecType_OriginPoolChoice() {} +func (*ReplaceSpecType_DefaultPoolList) isReplaceSpecType_OriginPoolChoice() {} +func (*ReplaceSpecType_DisableWaf) isReplaceSpecType_WafChoice() {} +func (*ReplaceSpecType_AppFirewall) isReplaceSpecType_WafChoice() {} +func (*ReplaceSpecType_NoChallenge) isReplaceSpecType_ChallengeType() {} +func (*ReplaceSpecType_EnableChallenge) isReplaceSpecType_ChallengeType() {} +func (*ReplaceSpecType_JsChallenge) isReplaceSpecType_ChallengeType() {} +func (*ReplaceSpecType_CaptchaChallenge) isReplaceSpecType_ChallengeType() {} +func (*ReplaceSpecType_PolicyBasedChallenge) isReplaceSpecType_ChallengeType() {} +func (*ReplaceSpecType_UserIdClientIp) isReplaceSpecType_UserIdChoice() {} +func (*ReplaceSpecType_UserIdentification) isReplaceSpecType_UserIdChoice() {} +func (*ReplaceSpecType_DisableRateLimit) isReplaceSpecType_RateLimitChoice() {} +func (*ReplaceSpecType_ApiRateLimit) isReplaceSpecType_RateLimitChoice() {} +func (*ReplaceSpecType_RateLimit) isReplaceSpecType_RateLimitChoice() {} +func (*ReplaceSpecType_ServicePoliciesFromNamespace) isReplaceSpecType_ServicePolicyChoice() {} +func (*ReplaceSpecType_NoServicePolicies) isReplaceSpecType_ServicePolicyChoice() {} +func (*ReplaceSpecType_ActiveServicePolicies) isReplaceSpecType_ServicePolicyChoice() {} +func (*ReplaceSpecType_RoundRobin) isReplaceSpecType_HashPolicyChoice() {} +func (*ReplaceSpecType_LeastActive) isReplaceSpecType_HashPolicyChoice() {} +func (*ReplaceSpecType_Random) isReplaceSpecType_HashPolicyChoice() {} +func (*ReplaceSpecType_SourceIpStickiness) isReplaceSpecType_HashPolicyChoice() {} +func (*ReplaceSpecType_CookieStickiness) isReplaceSpecType_HashPolicyChoice() {} +func (*ReplaceSpecType_RingHash) isReplaceSpecType_HashPolicyChoice() {} +func (*ReplaceSpecType_DisableTrustClientIpHeaders) isReplaceSpecType_TrustClientIpHeadersChoice() {} +func (*ReplaceSpecType_EnableTrustClientIpHeaders) isReplaceSpecType_TrustClientIpHeadersChoice() {} +func (*ReplaceSpecType_SingleLbApp) isReplaceSpecType_MlConfigChoice() {} +func (*ReplaceSpecType_MultiLbApp) isReplaceSpecType_MlConfigChoice() {} +func (*ReplaceSpecType_EnableMaliciousUserDetection) isReplaceSpecType_MaliciousUserDetectionChoice() { +} +func (*ReplaceSpecType_DisableMaliciousUserDetection) isReplaceSpecType_MaliciousUserDetectionChoice() { +} +func (*ReplaceSpecType_EnableApiDiscovery) isReplaceSpecType_ApiDiscoveryChoice() {} +func (*ReplaceSpecType_DisableApiDiscovery) isReplaceSpecType_ApiDiscoveryChoice() {} +func (*ReplaceSpecType_DisableBotDefense) isReplaceSpecType_BotDefenseChoice() {} +func (*ReplaceSpecType_BotDefense) isReplaceSpecType_BotDefenseChoice() {} +func (*ReplaceSpecType_BotDefenseAdvanced) isReplaceSpecType_BotDefenseChoice() {} +func (*ReplaceSpecType_DisableApiDefinition) isReplaceSpecType_ApiDefinitionChoice() {} +func (*ReplaceSpecType_ApiDefinition) isReplaceSpecType_ApiDefinitionChoice() {} +func (*ReplaceSpecType_ApiSpecification) isReplaceSpecType_ApiDefinitionChoice() {} +func (*ReplaceSpecType_ApiDefinitions) isReplaceSpecType_ApiDefinitionChoice() {} +func (*ReplaceSpecType_DisableIpReputation) isReplaceSpecType_IpReputationChoice() {} +func (*ReplaceSpecType_EnableIpReputation) isReplaceSpecType_IpReputationChoice() {} +func (*ReplaceSpecType_DisableClientSideDefense) isReplaceSpecType_ClientSideDefenseChoice() {} +func (*ReplaceSpecType_ClientSideDefense) isReplaceSpecType_ClientSideDefenseChoice() {} +func (*ReplaceSpecType_SystemDefaultTimeouts) isReplaceSpecType_SlowDdosMitigationChoice() {} +func (*ReplaceSpecType_SlowDdosMitigation) isReplaceSpecType_SlowDdosMitigationChoice() {} +func (*ReplaceSpecType_DisableThreatMesh) isReplaceSpecType_ThreatMeshChoice() {} +func (*ReplaceSpecType_EnableThreatMesh) isReplaceSpecType_ThreatMeshChoice() {} +func (*ReplaceSpecType_L7DdosActionDefault) isReplaceSpecType_L7DdosAutoMitigationAction() {} +func (*ReplaceSpecType_L7DdosActionBlock) isReplaceSpecType_L7DdosAutoMitigationAction() {} +func (*ReplaceSpecType_L7DdosActionJsChallenge) isReplaceSpecType_L7DdosAutoMitigationAction() {} +func (*ReplaceSpecType_L7DdosActionNone) isReplaceSpecType_L7DdosAutoMitigationAction() {} + +func (m *ReplaceSpecType) GetLoadbalancerType() isReplaceSpecType_LoadbalancerType { + if m != nil { + return m.LoadbalancerType } return nil } - -// Deprecated: Do not use. -func (m *GlobalSpecType) GetDisableDdosDetection() *schema.Empty { - if x, ok := m.GetDdosDetectionChoice().(*GlobalSpecType_DisableDdosDetection); ok { - return x.DisableDdosDetection +func (m *ReplaceSpecType) GetAdvertiseChoice() isReplaceSpecType_AdvertiseChoice { + if m != nil { + return m.AdvertiseChoice } return nil } - -func (m *GlobalSpecType) GetEnableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_EnableMaliciousUserDetection); ok { - return x.EnableMaliciousUserDetection +func (m *ReplaceSpecType) GetOriginPoolChoice() isReplaceSpecType_OriginPoolChoice { + if m != nil { + return m.OriginPoolChoice } return nil } - -func (m *GlobalSpecType) GetDisableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_DisableMaliciousUserDetection); ok { - return x.DisableMaliciousUserDetection +func (m *ReplaceSpecType) GetWafChoice() isReplaceSpecType_WafChoice { + if m != nil { + return m.WafChoice } return nil } - -func (m *GlobalSpecType) GetEnableApiDiscovery() *ApiDiscoverySetting { - if x, ok := m.GetApiDiscoveryChoice().(*GlobalSpecType_EnableApiDiscovery); ok { - return x.EnableApiDiscovery +func (m *ReplaceSpecType) GetChallengeType() isReplaceSpecType_ChallengeType { + if m != nil { + return m.ChallengeType } return nil } - -func (m *GlobalSpecType) GetDisableApiDiscovery() *schema.Empty { - if x, ok := m.GetApiDiscoveryChoice().(*GlobalSpecType_DisableApiDiscovery); ok { - return x.DisableApiDiscovery +func (m *ReplaceSpecType) GetUserIdChoice() isReplaceSpecType_UserIdChoice { + if m != nil { + return m.UserIdChoice } return nil } - -func (m *GlobalSpecType) GetDisableBotDefense() *schema.Empty { - if x, ok := m.GetBotDefenseChoice().(*GlobalSpecType_DisableBotDefense); ok { - return x.DisableBotDefense +func (m *ReplaceSpecType) GetRateLimitChoice() isReplaceSpecType_RateLimitChoice { + if m != nil { + return m.RateLimitChoice } return nil } - -func (m *GlobalSpecType) GetBotDefense() *ShapeBotDefenseType { - if x, ok := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefense); ok { - return x.BotDefense +func (m *ReplaceSpecType) GetServicePolicyChoice() isReplaceSpecType_ServicePolicyChoice { + if m != nil { + return m.ServicePolicyChoice } return nil } - -func (m *GlobalSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { - if x, ok := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefenseAdvanced); ok { - return x.BotDefenseAdvanced +func (m *ReplaceSpecType) GetHashPolicyChoice() isReplaceSpecType_HashPolicyChoice { + if m != nil { + return m.HashPolicyChoice } return nil } - -func (m *GlobalSpecType) GetDisableClientSideDefense() *schema.Empty { - if x, ok := m.GetClientSideDefenseChoice().(*GlobalSpecType_DisableClientSideDefense); ok { - return x.DisableClientSideDefense +func (m *ReplaceSpecType) GetTrustClientIpHeadersChoice() isReplaceSpecType_TrustClientIpHeadersChoice { + if m != nil { + return m.TrustClientIpHeadersChoice } return nil } - -func (m *GlobalSpecType) GetClientSideDefense() *ClientSideDefenseType { - if x, ok := m.GetClientSideDefenseChoice().(*GlobalSpecType_ClientSideDefense); ok { - return x.ClientSideDefense +func (m *ReplaceSpecType) GetMlConfigChoice() isReplaceSpecType_MlConfigChoice { + if m != nil { + return m.MlConfigChoice } return nil } - -func (m *GlobalSpecType) GetDisableApiDefinition() *schema.Empty { - if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_DisableApiDefinition); ok { - return x.DisableApiDefinition +func (m *ReplaceSpecType) GetMaliciousUserDetectionChoice() isReplaceSpecType_MaliciousUserDetectionChoice { + if m != nil { + return m.MaliciousUserDetectionChoice } return nil } - -func (m *GlobalSpecType) GetApiDefinition() *views.ObjectRefType { - if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinition); ok { - return x.ApiDefinition +func (m *ReplaceSpecType) GetApiDiscoveryChoice() isReplaceSpecType_ApiDiscoveryChoice { + if m != nil { + return m.ApiDiscoveryChoice } return nil } - -func (m *GlobalSpecType) GetApiSpecification() *APISpecificationSettings { - if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiSpecification); ok { - return x.ApiSpecification +func (m *ReplaceSpecType) GetBotDefenseChoice() isReplaceSpecType_BotDefenseChoice { + if m != nil { + return m.BotDefenseChoice } return nil } - -func (m *GlobalSpecType) GetApiDefinitions() *ApiDefinitionList { - if x, ok := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinitions); ok { - return x.ApiDefinitions +func (m *ReplaceSpecType) GetApiDefinitionChoice() isReplaceSpecType_ApiDefinitionChoice { + if m != nil { + return m.ApiDefinitionChoice } return nil } - -func (m *GlobalSpecType) GetDisableIpReputation() *schema.Empty { - if x, ok := m.GetIpReputationChoice().(*GlobalSpecType_DisableIpReputation); ok { - return x.DisableIpReputation +func (m *ReplaceSpecType) GetIpReputationChoice() isReplaceSpecType_IpReputationChoice { + if m != nil { + return m.IpReputationChoice } return nil } - -func (m *GlobalSpecType) GetEnableIpReputation() *IPThreatCategoryListType { - if x, ok := m.GetIpReputationChoice().(*GlobalSpecType_EnableIpReputation); ok { - return x.EnableIpReputation +func (m *ReplaceSpecType) GetClientSideDefenseChoice() isReplaceSpecType_ClientSideDefenseChoice { + if m != nil { + return m.ClientSideDefenseChoice } return nil } - -func (m *GlobalSpecType) GetDisableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*GlobalSpecType_DisableThreatIntelligence); ok { - return x.DisableThreatIntelligence +func (m *ReplaceSpecType) GetSlowDdosMitigationChoice() isReplaceSpecType_SlowDdosMitigationChoice { + if m != nil { + return m.SlowDdosMitigationChoice } return nil } - -func (m *GlobalSpecType) GetEnableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*GlobalSpecType_EnableThreatIntelligence); ok { - return x.EnableThreatIntelligence +func (m *ReplaceSpecType) GetThreatMeshChoice() isReplaceSpecType_ThreatMeshChoice { + if m != nil { + return m.ThreatMeshChoice } return nil } - -func (m *GlobalSpecType) GetViewInternal() *views.ObjectRefType { +func (m *ReplaceSpecType) GetL7DdosAutoMitigationAction() isReplaceSpecType_L7DdosAutoMitigationAction { if m != nil { - return m.ViewInternal + return m.L7DdosAutoMitigationAction } return nil } -func (m *GlobalSpecType) GetHostName() string { +func (m *ReplaceSpecType) GetDomains() []string { if m != nil { - return m.HostName + return m.Domains } - return "" + return nil } -func (m *GlobalSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { - if m != nil { - return m.DnsInfo +func (m *ReplaceSpecType) GetHttp() *ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Http); ok { + return x.Http } return nil } -func (m *GlobalSpecType) GetState() virtual_host.VirtualHostState { - if m != nil { - return m.State +func (m *ReplaceSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { + if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert); ok { + return x.HttpsAutoCert } - return virtual_host.VIRTUAL_HOST_READY + return nil } -// Deprecated: Do not use. -func (m *GlobalSpecType) GetAutoCertState() virtual_host.CertificationState { - if m != nil { - return m.AutoCertState +func (m *ReplaceSpecType) GetHttps() *ProxyTypeHttps { + if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Https); ok { + return x.Https } - return virtual_host.AutoCertDisabled + return nil } -func (m *GlobalSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { - if m != nil { - return m.AutoCertInfo +func (m *ReplaceSpecType) GetDoNotAdvertise() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_DoNotAdvertise); ok { + return x.DoNotAdvertise } return nil } -func (m *GlobalSpecType) GetInternetVipInfo() []*views.InternetVIPInfo { - if m != nil { - return m.InternetVipInfo +func (m *ReplaceSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublicDefaultVip); ok { + return x.AdvertiseOnPublicDefaultVip } return nil } -func (m *GlobalSpecType) GetCsrfPolicy() *schema.CsrfPolicy { - if m != nil { - return m.CsrfPolicy +func (m *ReplaceSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { + if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublic); ok { + return x.AdvertiseOnPublic } return nil } -func (m *GlobalSpecType) GetGraphqlRules() []*policy.GraphQLRule { - if m != nil { - return m.GraphqlRules +func (m *ReplaceSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { + if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseCustom); ok { + return x.AdvertiseCustom } return nil } -func (m *GlobalSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { +func (m *ReplaceSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { if m != nil { - return m.ProtectedCookies + return m.DefaultRoutePools } return nil } -func (m *GlobalSpecType) GetSystemDefaultTimeouts() *schema.Empty { - if x, ok := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SystemDefaultTimeouts); ok { - return x.SystemDefaultTimeouts +func (m *ReplaceSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { + if x, ok := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPool); ok { + return x.DefaultPool } return nil } -func (m *GlobalSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { - if x, ok := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SlowDdosMitigation); ok { - return x.SlowDdosMitigation +func (m *ReplaceSpecType) GetDefaultPoolList() *views.OriginPoolListType { + if x, ok := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPoolList); ok { + return x.DefaultPoolList } return nil } -func (m *GlobalSpecType) GetJwtValidation() *JWTValidation { +func (m *ReplaceSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { if m != nil { - return m.JwtValidation + return m.OriginServerSubsetRuleList } return nil } -func (m *GlobalSpecType) GetL7DdosActionDefault() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionDefault); ok { - return x.L7DdosActionDefault +func (m *ReplaceSpecType) GetRoutes() []*RouteType { + if m != nil { + return m.Routes } return nil } -func (m *GlobalSpecType) GetL7DdosActionBlock() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionBlock); ok { - return x.L7DdosActionBlock +func (m *ReplaceSpecType) GetCorsPolicy() *schema.CorsPolicy { + if m != nil { + return m.CorsPolicy } return nil } -func (m *GlobalSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionJsChallenge); ok { - return x.L7DdosActionJsChallenge +func (m *ReplaceSpecType) GetDisableWaf() *schema.Empty { + if x, ok := m.GetWafChoice().(*ReplaceSpecType_DisableWaf); ok { + return x.DisableWaf } return nil } -func (m *GlobalSpecType) GetL7DdosActionNone() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionNone); ok { - return x.L7DdosActionNone +func (m *ReplaceSpecType) GetAppFirewall() *views.ObjectRefType { + if x, ok := m.GetWafChoice().(*ReplaceSpecType_AppFirewall); ok { + return x.AppFirewall } return nil } -func (m *GlobalSpecType) GetCertState() virtual_host.CertificationState { +func (m *ReplaceSpecType) GetAddLocation() bool { if m != nil { - return m.CertState + return m.AddLocation } - return virtual_host.AutoCertDisabled + return false } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*GlobalSpecType_Http)(nil), - (*GlobalSpecType_HttpsAutoCert)(nil), - (*GlobalSpecType_Https)(nil), - (*GlobalSpecType_DoNotAdvertise)(nil), - (*GlobalSpecType_AdvertiseOnPublicDefaultVip)(nil), - (*GlobalSpecType_AdvertiseOnPublic)(nil), - (*GlobalSpecType_AdvertiseCustom)(nil), - (*GlobalSpecType_DefaultPool)(nil), - (*GlobalSpecType_DefaultPoolList)(nil), - (*GlobalSpecType_AutoHostRewrite)(nil), - (*GlobalSpecType_HostRewrite)(nil), - (*GlobalSpecType_DisableHostRewrite)(nil), - (*GlobalSpecType_DisableWaf)(nil), - (*GlobalSpecType_AppFirewall)(nil), - (*GlobalSpecType_NoChallenge)(nil), - (*GlobalSpecType_EnableChallenge)(nil), - (*GlobalSpecType_JsChallenge)(nil), - (*GlobalSpecType_CaptchaChallenge)(nil), - (*GlobalSpecType_PolicyBasedChallenge)(nil), - (*GlobalSpecType_UserIdClientIp)(nil), - (*GlobalSpecType_UserIdentification)(nil), - (*GlobalSpecType_DisableRateLimit)(nil), - (*GlobalSpecType_ApiRateLimit)(nil), - (*GlobalSpecType_RateLimit)(nil), - (*GlobalSpecType_ServicePoliciesFromNamespace)(nil), - (*GlobalSpecType_NoServicePolicies)(nil), - (*GlobalSpecType_ActiveServicePolicies)(nil), - (*GlobalSpecType_RoundRobin)(nil), - (*GlobalSpecType_LeastActive)(nil), - (*GlobalSpecType_Random)(nil), - (*GlobalSpecType_SourceIpStickiness)(nil), - (*GlobalSpecType_CookieStickiness)(nil), - (*GlobalSpecType_RingHash)(nil), - (*GlobalSpecType_DisableTrustClientIpHeaders)(nil), - (*GlobalSpecType_EnableTrustClientIpHeaders)(nil), - (*GlobalSpecType_SingleLbApp)(nil), - (*GlobalSpecType_MultiLbApp)(nil), - (*GlobalSpecType_EnableDdosDetection)(nil), - (*GlobalSpecType_DisableDdosDetection)(nil), - (*GlobalSpecType_EnableMaliciousUserDetection)(nil), - (*GlobalSpecType_DisableMaliciousUserDetection)(nil), - (*GlobalSpecType_EnableApiDiscovery)(nil), - (*GlobalSpecType_DisableApiDiscovery)(nil), - (*GlobalSpecType_DisableBotDefense)(nil), - (*GlobalSpecType_BotDefense)(nil), - (*GlobalSpecType_BotDefenseAdvanced)(nil), - (*GlobalSpecType_DisableClientSideDefense)(nil), - (*GlobalSpecType_ClientSideDefense)(nil), - (*GlobalSpecType_DisableApiDefinition)(nil), - (*GlobalSpecType_ApiDefinition)(nil), - (*GlobalSpecType_ApiSpecification)(nil), - (*GlobalSpecType_ApiDefinitions)(nil), - (*GlobalSpecType_DisableIpReputation)(nil), - (*GlobalSpecType_EnableIpReputation)(nil), - (*GlobalSpecType_DisableThreatIntelligence)(nil), - (*GlobalSpecType_EnableThreatIntelligence)(nil), - (*GlobalSpecType_SystemDefaultTimeouts)(nil), - (*GlobalSpecType_SlowDdosMitigation)(nil), - (*GlobalSpecType_L7DdosActionDefault)(nil), - (*GlobalSpecType_L7DdosActionBlock)(nil), - (*GlobalSpecType_L7DdosActionJsChallenge)(nil), - (*GlobalSpecType_L7DdosActionNone)(nil), +func (m *ReplaceSpecType) GetNoChallenge() *schema.Empty { + if x, ok := m.GetChallengeType().(*ReplaceSpecType_NoChallenge); ok { + return x.NoChallenge } + return nil } -// JWT Validation -// -// x-displayName: "JWT Validation" -// JWT Validation stops JWT replay attacks and JWT tampering by cryptographically verifying incoming -// JWTs before they are passed to your API origin. JWT Validation will also stop requests with expired -// tokens or tokens that are not yet valid. -type JWTValidation struct { - // target - // - // x-displayName: "Target" - // x-required - // Define endpoints for which JWT token validation will be performed - Target *Target `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"` - // token location - // - // x-displayName: "Token Location" - // x-required - // Define where in the HTTP request the JWT token will be extracted - TokenLocation *TokenLocation `protobuf:"bytes,2,opt,name=token_location,json=tokenLocation,proto3" json:"token_location,omitempty"` - // action - // - // x-displayName: "Action" - // x-required - Action *schema.Action `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"` - // jwks_configuration - // - // x-displayName: "JSON Web Key Set (JWKS) Configuration" - // x-required - // Configuration of the encryption keys that are used for JWT signature validation. - // Currently only the option of manually importing the JSON Web Key Set (JWKS) is supported. - // - // Types that are valid to be assigned to JwksConfiguration: - // - // *JWTValidation_AuthServerUri - // *JWTValidation_Jwks - // *JWTValidation_JwksConfig - JwksConfiguration isJWTValidation_JwksConfiguration `protobuf_oneof:"jwks_configuration"` - // reserved_claims - // - // x-displayName: "Reserved Claims Validation" - // Configuration required for validation of reserved claims. If some claims are absent in - // the token validation of these claims should be disabled. - ReservedClaims *ReservedClaims `protobuf:"bytes,7,opt,name=reserved_claims,json=reservedClaims,proto3" json:"reserved_claims,omitempty"` - // Mandatory Claims - // - // x-displayName: "Mandatory Claims" - // Configuration for validation of mandatory claims. The system will verify that the claim exists in JWT. - // If the claim does not exist JWT token validation will fail. - MandatoryClaims *MandatoryClaims `protobuf:"bytes,9,opt,name=mandatory_claims,json=mandatoryClaims,proto3" json:"mandatory_claims,omitempty"` -} - -func (m *JWTValidation) Reset() { *m = JWTValidation{} } -func (*JWTValidation) ProtoMessage() {} -func (*JWTValidation) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{79} -} -func (m *JWTValidation) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *JWTValidation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetEnableChallenge() *common_waf.EnableChallenge { + if x, ok := m.GetChallengeType().(*ReplaceSpecType_EnableChallenge); ok { + return x.EnableChallenge } - return b[:n], nil -} -func (m *JWTValidation) XXX_Merge(src proto.Message) { - xxx_messageInfo_JWTValidation.Merge(m, src) -} -func (m *JWTValidation) XXX_Size() int { - return m.Size() -} -func (m *JWTValidation) XXX_DiscardUnknown() { - xxx_messageInfo_JWTValidation.DiscardUnknown(m) + return nil } -var xxx_messageInfo_JWTValidation proto.InternalMessageInfo - -type isJWTValidation_JwksConfiguration interface { - isJWTValidation_JwksConfiguration() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *ReplaceSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetChallengeType().(*ReplaceSpecType_JsChallenge); ok { + return x.JsChallenge + } + return nil } -type JWTValidation_AuthServerUri struct { - AuthServerUri string `protobuf:"bytes,5,opt,name=auth_server_uri,json=authServerUri,proto3,oneof" json:"auth_server_uri,omitempty"` -} -type JWTValidation_Jwks struct { - Jwks string `protobuf:"bytes,6,opt,name=jwks,proto3,oneof" json:"jwks,omitempty"` -} -type JWTValidation_JwksConfig struct { - JwksConfig *JWKS `protobuf:"bytes,8,opt,name=jwks_config,json=jwksConfig,proto3,oneof" json:"jwks_config,omitempty"` +func (m *ReplaceSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetChallengeType().(*ReplaceSpecType_CaptchaChallenge); ok { + return x.CaptchaChallenge + } + return nil } -func (*JWTValidation_AuthServerUri) isJWTValidation_JwksConfiguration() {} -func (*JWTValidation_Jwks) isJWTValidation_JwksConfiguration() {} -func (*JWTValidation_JwksConfig) isJWTValidation_JwksConfiguration() {} - -func (m *JWTValidation) GetJwksConfiguration() isJWTValidation_JwksConfiguration { - if m != nil { - return m.JwksConfiguration +func (m *ReplaceSpecType) GetPolicyBasedChallenge() *common_waf.PolicyBasedChallenge { + if x, ok := m.GetChallengeType().(*ReplaceSpecType_PolicyBasedChallenge); ok { + return x.PolicyBasedChallenge } return nil } -func (m *JWTValidation) GetTarget() *Target { +func (m *ReplaceSpecType) GetMoreOption() *AdvancedOptionsType { if m != nil { - return m.Target + return m.MoreOption } return nil } -func (m *JWTValidation) GetTokenLocation() *TokenLocation { - if m != nil { - return m.TokenLocation +func (m *ReplaceSpecType) GetUserIdClientIp() *schema.Empty { + if x, ok := m.GetUserIdChoice().(*ReplaceSpecType_UserIdClientIp); ok { + return x.UserIdClientIp } return nil } -func (m *JWTValidation) GetAction() *schema.Action { - if m != nil { - return m.Action +func (m *ReplaceSpecType) GetUserIdentification() *views.ObjectRefType { + if x, ok := m.GetUserIdChoice().(*ReplaceSpecType_UserIdentification); ok { + return x.UserIdentification } return nil } -func (m *JWTValidation) GetAuthServerUri() string { - if x, ok := m.GetJwksConfiguration().(*JWTValidation_AuthServerUri); ok { - return x.AuthServerUri +func (m *ReplaceSpecType) GetDisableRateLimit() *schema.Empty { + if x, ok := m.GetRateLimitChoice().(*ReplaceSpecType_DisableRateLimit); ok { + return x.DisableRateLimit } - return "" + return nil } -func (m *JWTValidation) GetJwks() string { - if x, ok := m.GetJwksConfiguration().(*JWTValidation_Jwks); ok { - return x.Jwks +func (m *ReplaceSpecType) GetApiRateLimit() *common_waf.APIRateLimit { + if x, ok := m.GetRateLimitChoice().(*ReplaceSpecType_ApiRateLimit); ok { + return x.ApiRateLimit } - return "" + return nil } -func (m *JWTValidation) GetJwksConfig() *JWKS { - if x, ok := m.GetJwksConfiguration().(*JWTValidation_JwksConfig); ok { - return x.JwksConfig +func (m *ReplaceSpecType) GetRateLimit() *common_waf.RateLimitConfigType { + if x, ok := m.GetRateLimitChoice().(*ReplaceSpecType_RateLimit); ok { + return x.RateLimit } return nil } -func (m *JWTValidation) GetReservedClaims() *ReservedClaims { +func (m *ReplaceSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { if m != nil { - return m.ReservedClaims + return m.MaliciousUserMitigation } return nil } -func (m *JWTValidation) GetMandatoryClaims() *MandatoryClaims { +func (m *ReplaceSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { if m != nil { - return m.MandatoryClaims + return m.WafExclusionRules } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*JWTValidation) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*JWTValidation_AuthServerUri)(nil), - (*JWTValidation_Jwks)(nil), - (*JWTValidation_JwksConfig)(nil), +func (m *ReplaceSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { + if m != nil { + return m.DataGuardRules } + return nil } -// MandatoryClaims -// -// x-displayName: "Mandatory Claims" -// Configurable Validation of mandatory Claims. -type MandatoryClaims struct { - // Claim names - // - // x-displayName: "Claim Names" - ClaimNames []string `protobuf:"bytes,1,rep,name=claim_names,json=claimNames,proto3" json:"claim_names,omitempty"` -} - -func (m *MandatoryClaims) Reset() { *m = MandatoryClaims{} } -func (*MandatoryClaims) ProtoMessage() {} -func (*MandatoryClaims) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{80} -} -func (m *MandatoryClaims) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MandatoryClaims) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetBlockedClients() []*common_waf.SimpleClientSrcRule { + if m != nil { + return m.BlockedClients } - return b[:n], nil -} -func (m *MandatoryClaims) XXX_Merge(src proto.Message) { - xxx_messageInfo_MandatoryClaims.Merge(m, src) -} -func (m *MandatoryClaims) XXX_Size() int { - return m.Size() -} -func (m *MandatoryClaims) XXX_DiscardUnknown() { - xxx_messageInfo_MandatoryClaims.DiscardUnknown(m) + return nil } -var xxx_messageInfo_MandatoryClaims proto.InternalMessageInfo - -func (m *MandatoryClaims) GetClaimNames() []string { +func (m *ReplaceSpecType) GetTrustedClients() []*common_waf.SimpleClientSrcRule { if m != nil { - return m.ClaimNames + return m.TrustedClients } return nil } -// jwks -// -// x-displayName: "JSON Web Key Set (JWKS)" -// The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details. -type JWKS struct { - // cleartext - // - // x-displayName: "JSON Web Key Set (JWKS)" - // The JSON Web Key Set (JWKS) is a set of keys used to verify JSON Web Token (JWT) issued by the Authorization Server. See RFC 7517 for more details. - Cleartext string `protobuf:"bytes,3,opt,name=cleartext,proto3" json:"cleartext,omitempty"` -} - -func (m *JWKS) Reset() { *m = JWKS{} } -func (*JWKS) ProtoMessage() {} -func (*JWKS) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{81} -} -func (m *JWKS) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *JWKS) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetApiProtectionRules() *common_waf.APIProtectionRules { + if m != nil { + return m.ApiProtectionRules } - return b[:n], nil -} -func (m *JWKS) XXX_Merge(src proto.Message) { - xxx_messageInfo_JWKS.Merge(m, src) -} -func (m *JWKS) XXX_Size() int { - return m.Size() -} -func (m *JWKS) XXX_DiscardUnknown() { - xxx_messageInfo_JWKS.DiscardUnknown(m) + return nil } -var xxx_messageInfo_JWKS proto.InternalMessageInfo - -func (m *JWKS) GetCleartext() string { +func (m *ReplaceSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { if m != nil { - return m.Cleartext + return m.DdosMitigationRules } - return "" -} - -// target -// -// x-displayName: "Target" -// Define endpoints for which JWT token validation will be performed -type Target struct { - // target - // - // x-displayName: "Target" - // x-required - // Define endpoints for which JWT token validation will be performed - // - // Types that are valid to be assigned to Target: - // - // *Target_AllEndpoint - // *Target_ApiGroups - // *Target_BasePaths - Target isTarget_Target `protobuf_oneof:"target"` + return nil } -func (m *Target) Reset() { *m = Target{} } -func (*Target) ProtoMessage() {} -func (*Target) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{82} -} -func (m *Target) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *Target) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetServicePoliciesFromNamespace() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*ReplaceSpecType_ServicePoliciesFromNamespace); ok { + return x.ServicePoliciesFromNamespace } - return b[:n], nil -} -func (m *Target) XXX_Merge(src proto.Message) { - xxx_messageInfo_Target.Merge(m, src) -} -func (m *Target) XXX_Size() int { - return m.Size() -} -func (m *Target) XXX_DiscardUnknown() { - xxx_messageInfo_Target.DiscardUnknown(m) -} - -var xxx_messageInfo_Target proto.InternalMessageInfo - -type isTarget_Target interface { - isTarget_Target() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + return nil } -type Target_AllEndpoint struct { - AllEndpoint *schema.Empty `protobuf:"bytes,2,opt,name=all_endpoint,json=allEndpoint,proto3,oneof" json:"all_endpoint,omitempty"` -} -type Target_ApiGroups struct { - ApiGroups *APIGroups `protobuf:"bytes,3,opt,name=api_groups,json=apiGroups,proto3,oneof" json:"api_groups,omitempty"` -} -type Target_BasePaths struct { - BasePaths *BasePathsType `protobuf:"bytes,4,opt,name=base_paths,json=basePaths,proto3,oneof" json:"base_paths,omitempty"` +func (m *ReplaceSpecType) GetNoServicePolicies() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*ReplaceSpecType_NoServicePolicies); ok { + return x.NoServicePolicies + } + return nil } -func (*Target_AllEndpoint) isTarget_Target() {} -func (*Target_ApiGroups) isTarget_Target() {} -func (*Target_BasePaths) isTarget_Target() {} - -func (m *Target) GetTarget() isTarget_Target { - if m != nil { - return m.Target +func (m *ReplaceSpecType) GetActiveServicePolicies() *common_waf.ServicePolicyList { + if x, ok := m.GetServicePolicyChoice().(*ReplaceSpecType_ActiveServicePolicies); ok { + return x.ActiveServicePolicies } return nil } -func (m *Target) GetAllEndpoint() *schema.Empty { - if x, ok := m.GetTarget().(*Target_AllEndpoint); ok { - return x.AllEndpoint +func (m *ReplaceSpecType) GetRoundRobin() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_RoundRobin); ok { + return x.RoundRobin } return nil } -func (m *Target) GetApiGroups() *APIGroups { - if x, ok := m.GetTarget().(*Target_ApiGroups); ok { - return x.ApiGroups +func (m *ReplaceSpecType) GetLeastActive() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_LeastActive); ok { + return x.LeastActive } return nil } -func (m *Target) GetBasePaths() *BasePathsType { - if x, ok := m.GetTarget().(*Target_BasePaths); ok { - return x.BasePaths +func (m *ReplaceSpecType) GetRandom() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_Random); ok { + return x.Random } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*Target) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*Target_AllEndpoint)(nil), - (*Target_ApiGroups)(nil), - (*Target_BasePaths)(nil), +func (m *ReplaceSpecType) GetSourceIpStickiness() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_SourceIpStickiness); ok { + return x.SourceIpStickiness } + return nil } -// token location -// -// x-displayName: "Token Location" -// Location of JWT in Http request -type TokenLocation struct { - // token location - // - // x-displayName: "Token Location" - // x-required - // Define where in the HTTP request the JWT token will be extracted - // - // Types that are valid to be assigned to TokenLocation: - // - // *TokenLocation_BearerToken - // *TokenLocation_Cookie - // *TokenLocation_Header - // *TokenLocation_QueryParam - TokenLocation isTokenLocation_TokenLocation `protobuf_oneof:"token_location"` +func (m *ReplaceSpecType) GetCookieStickiness() *route.CookieForHashing { + if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_CookieStickiness); ok { + return x.CookieStickiness + } + return nil } -func (m *TokenLocation) Reset() { *m = TokenLocation{} } -func (*TokenLocation) ProtoMessage() {} -func (*TokenLocation) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{83} -} -func (m *TokenLocation) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *TokenLocation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetRingHash() *HashPolicyListType { + if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_RingHash); ok { + return x.RingHash } - return b[:n], nil -} -func (m *TokenLocation) XXX_Merge(src proto.Message) { - xxx_messageInfo_TokenLocation.Merge(m, src) -} -func (m *TokenLocation) XXX_Size() int { - return m.Size() -} -func (m *TokenLocation) XXX_DiscardUnknown() { - xxx_messageInfo_TokenLocation.DiscardUnknown(m) + return nil } -var xxx_messageInfo_TokenLocation proto.InternalMessageInfo - -type isTokenLocation_TokenLocation interface { - isTokenLocation_TokenLocation() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *ReplaceSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { + if x, ok := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_DisableTrustClientIpHeaders); ok { + return x.DisableTrustClientIpHeaders + } + return nil } -type TokenLocation_BearerToken struct { - BearerToken *schema.Empty `protobuf:"bytes,2,opt,name=bearer_token,json=bearerToken,proto3,oneof" json:"bearer_token,omitempty"` -} -type TokenLocation_Cookie struct { - Cookie string `protobuf:"bytes,3,opt,name=cookie,proto3,oneof" json:"cookie,omitempty"` -} -type TokenLocation_Header struct { - Header string `protobuf:"bytes,4,opt,name=header,proto3,oneof" json:"header,omitempty"` -} -type TokenLocation_QueryParam struct { - QueryParam string `protobuf:"bytes,5,opt,name=query_param,json=queryParam,proto3,oneof" json:"query_param,omitempty"` +func (m *ReplaceSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { + if x, ok := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_EnableTrustClientIpHeaders); ok { + return x.EnableTrustClientIpHeaders + } + return nil } -func (*TokenLocation_BearerToken) isTokenLocation_TokenLocation() {} -func (*TokenLocation_Cookie) isTokenLocation_TokenLocation() {} -func (*TokenLocation_Header) isTokenLocation_TokenLocation() {} -func (*TokenLocation_QueryParam) isTokenLocation_TokenLocation() {} - -func (m *TokenLocation) GetTokenLocation() isTokenLocation_TokenLocation { - if m != nil { - return m.TokenLocation +func (m *ReplaceSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { + if x, ok := m.GetMlConfigChoice().(*ReplaceSpecType_SingleLbApp); ok { + return x.SingleLbApp } return nil } -func (m *TokenLocation) GetBearerToken() *schema.Empty { - if x, ok := m.GetTokenLocation().(*TokenLocation_BearerToken); ok { - return x.BearerToken +func (m *ReplaceSpecType) GetMultiLbApp() *schema.Empty { + if x, ok := m.GetMlConfigChoice().(*ReplaceSpecType_MultiLbApp); ok { + return x.MultiLbApp } return nil } -func (m *TokenLocation) GetCookie() string { - if x, ok := m.GetTokenLocation().(*TokenLocation_Cookie); ok { - return x.Cookie +func (m *ReplaceSpecType) GetEnableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_EnableMaliciousUserDetection); ok { + return x.EnableMaliciousUserDetection } - return "" + return nil } -func (m *TokenLocation) GetHeader() string { - if x, ok := m.GetTokenLocation().(*TokenLocation_Header); ok { - return x.Header +func (m *ReplaceSpecType) GetDisableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_DisableMaliciousUserDetection); ok { + return x.DisableMaliciousUserDetection } - return "" + return nil } -func (m *TokenLocation) GetQueryParam() string { - if x, ok := m.GetTokenLocation().(*TokenLocation_QueryParam); ok { - return x.QueryParam +func (m *ReplaceSpecType) GetEnableApiDiscovery() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*ReplaceSpecType_EnableApiDiscovery); ok { + return x.EnableApiDiscovery } - return "" + return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*TokenLocation) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*TokenLocation_BearerToken)(nil), - (*TokenLocation_Cookie)(nil), - (*TokenLocation_Header)(nil), - (*TokenLocation_QueryParam)(nil), +func (m *ReplaceSpecType) GetDisableApiDiscovery() *schema.Empty { + if x, ok := m.GetApiDiscoveryChoice().(*ReplaceSpecType_DisableApiDiscovery); ok { + return x.DisableApiDiscovery } + return nil } -// reserved claims -// -// x-displayName: "Reserved claims configuration" -// Configurable Validation of reserved Claims -type ReservedClaims struct { - // issuer_validation - // - // x-displayName: "Issuer (iss)" - // x-required - // The value of the iss claim in the JWT token should exactly match the configured value - // - // Types that are valid to be assigned to IssuerValidation: - // - // *ReservedClaims_IssuerDisable - // *ReservedClaims_Issuer - IssuerValidation isReservedClaims_IssuerValidation `protobuf_oneof:"issuer_validation"` - // audience_validation - // - // x-displayName: "Audience (aud)" - // x-required - // The value of the aud claim in the JWT token should match one of the configured values - // - // Types that are valid to be assigned to AudienceValidation: - // - // *ReservedClaims_AudienceDisable - // *ReservedClaims_Audience - AudienceValidation isReservedClaims_AudienceValidation `protobuf_oneof:"audience_validation"` - // validate_period - // - // x-displayName: "Validate Period" - // x-required - // Validate that current time is before the Expiration Time (as specified in the exp claim). If exp claim is not present JWT validation fails. If Not Before (nbf) claim is present in the JWT token validate that current time is after the nbf value. - // - // Types that are valid to be assigned to ValidatePeriod: - // - // *ReservedClaims_ValidatePeriodDisable - // *ReservedClaims_ValidatePeriodEnable - ValidatePeriod isReservedClaims_ValidatePeriod `protobuf_oneof:"validate_period"` +func (m *ReplaceSpecType) GetDisableBotDefense() *schema.Empty { + if x, ok := m.GetBotDefenseChoice().(*ReplaceSpecType_DisableBotDefense); ok { + return x.DisableBotDefense + } + return nil } -func (m *ReservedClaims) Reset() { *m = ReservedClaims{} } -func (*ReservedClaims) ProtoMessage() {} -func (*ReservedClaims) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{84} -} -func (m *ReservedClaims) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ReservedClaims) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetBotDefense() *ShapeBotDefenseType { + if x, ok := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefense); ok { + return x.BotDefense } - return b[:n], nil -} -func (m *ReservedClaims) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReservedClaims.Merge(m, src) -} -func (m *ReservedClaims) XXX_Size() int { - return m.Size() -} -func (m *ReservedClaims) XXX_DiscardUnknown() { - xxx_messageInfo_ReservedClaims.DiscardUnknown(m) + return nil } -var xxx_messageInfo_ReservedClaims proto.InternalMessageInfo - -type isReservedClaims_IssuerValidation interface { - isReservedClaims_IssuerValidation() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReservedClaims_AudienceValidation interface { - isReservedClaims_AudienceValidation() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReservedClaims_ValidatePeriod interface { - isReservedClaims_ValidatePeriod() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (m *ReplaceSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { + if x, ok := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefenseAdvanced); ok { + return x.BotDefenseAdvanced + } + return nil } -type ReservedClaims_IssuerDisable struct { - IssuerDisable *schema.Empty `protobuf:"bytes,2,opt,name=issuer_disable,json=issuerDisable,proto3,oneof" json:"issuer_disable,omitempty"` -} -type ReservedClaims_Issuer struct { - Issuer string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"` -} -type ReservedClaims_AudienceDisable struct { - AudienceDisable *schema.Empty `protobuf:"bytes,5,opt,name=audience_disable,json=audienceDisable,proto3,oneof" json:"audience_disable,omitempty"` -} -type ReservedClaims_Audience struct { - Audience *Audiences `protobuf:"bytes,6,opt,name=audience,proto3,oneof" json:"audience,omitempty"` -} -type ReservedClaims_ValidatePeriodDisable struct { - ValidatePeriodDisable *schema.Empty `protobuf:"bytes,8,opt,name=validate_period_disable,json=validatePeriodDisable,proto3,oneof" json:"validate_period_disable,omitempty"` -} -type ReservedClaims_ValidatePeriodEnable struct { - ValidatePeriodEnable *schema.Empty `protobuf:"bytes,9,opt,name=validate_period_enable,json=validatePeriodEnable,proto3,oneof" json:"validate_period_enable,omitempty"` +func (m *ReplaceSpecType) GetDisableApiDefinition() *schema.Empty { + if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_DisableApiDefinition); ok { + return x.DisableApiDefinition + } + return nil } -func (*ReservedClaims_IssuerDisable) isReservedClaims_IssuerValidation() {} -func (*ReservedClaims_Issuer) isReservedClaims_IssuerValidation() {} -func (*ReservedClaims_AudienceDisable) isReservedClaims_AudienceValidation() {} -func (*ReservedClaims_Audience) isReservedClaims_AudienceValidation() {} -func (*ReservedClaims_ValidatePeriodDisable) isReservedClaims_ValidatePeriod() {} -func (*ReservedClaims_ValidatePeriodEnable) isReservedClaims_ValidatePeriod() {} - -func (m *ReservedClaims) GetIssuerValidation() isReservedClaims_IssuerValidation { - if m != nil { - return m.IssuerValidation +func (m *ReplaceSpecType) GetApiDefinition() *views.ObjectRefType { + if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinition); ok { + return x.ApiDefinition } return nil } -func (m *ReservedClaims) GetAudienceValidation() isReservedClaims_AudienceValidation { - if m != nil { - return m.AudienceValidation + +func (m *ReplaceSpecType) GetApiSpecification() *common_waf.APISpecificationSettings { + if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiSpecification); ok { + return x.ApiSpecification } return nil } -func (m *ReservedClaims) GetValidatePeriod() isReservedClaims_ValidatePeriod { - if m != nil { - return m.ValidatePeriod + +func (m *ReplaceSpecType) GetApiDefinitions() *common_waf.ApiDefinitionList { + if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinitions); ok { + return x.ApiDefinitions } return nil } -func (m *ReservedClaims) GetIssuerDisable() *schema.Empty { - if x, ok := m.GetIssuerValidation().(*ReservedClaims_IssuerDisable); ok { - return x.IssuerDisable +func (m *ReplaceSpecType) GetDisableIpReputation() *schema.Empty { + if x, ok := m.GetIpReputationChoice().(*ReplaceSpecType_DisableIpReputation); ok { + return x.DisableIpReputation } return nil } -func (m *ReservedClaims) GetIssuer() string { - if x, ok := m.GetIssuerValidation().(*ReservedClaims_Issuer); ok { - return x.Issuer +func (m *ReplaceSpecType) GetEnableIpReputation() *common_waf.IPThreatCategoryListType { + if x, ok := m.GetIpReputationChoice().(*ReplaceSpecType_EnableIpReputation); ok { + return x.EnableIpReputation } - return "" + return nil } -func (m *ReservedClaims) GetAudienceDisable() *schema.Empty { - if x, ok := m.GetAudienceValidation().(*ReservedClaims_AudienceDisable); ok { - return x.AudienceDisable +func (m *ReplaceSpecType) GetDisableClientSideDefense() *schema.Empty { + if x, ok := m.GetClientSideDefenseChoice().(*ReplaceSpecType_DisableClientSideDefense); ok { + return x.DisableClientSideDefense } return nil } -func (m *ReservedClaims) GetAudience() *Audiences { - if x, ok := m.GetAudienceValidation().(*ReservedClaims_Audience); ok { - return x.Audience +func (m *ReplaceSpecType) GetClientSideDefense() *ClientSideDefenseType { + if x, ok := m.GetClientSideDefenseChoice().(*ReplaceSpecType_ClientSideDefense); ok { + return x.ClientSideDefense } return nil } -func (m *ReservedClaims) GetValidatePeriodDisable() *schema.Empty { - if x, ok := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodDisable); ok { - return x.ValidatePeriodDisable +func (m *ReplaceSpecType) GetCsrfPolicy() *schema.CsrfPolicy { + if m != nil { + return m.CsrfPolicy } return nil } -func (m *ReservedClaims) GetValidatePeriodEnable() *schema.Empty { - if x, ok := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodEnable); ok { - return x.ValidatePeriodEnable +func (m *ReplaceSpecType) GetGraphqlRules() []*policy.GraphQLRule { + if m != nil { + return m.GraphqlRules } return nil } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ReservedClaims) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ReservedClaims_IssuerDisable)(nil), - (*ReservedClaims_Issuer)(nil), - (*ReservedClaims_AudienceDisable)(nil), - (*ReservedClaims_Audience)(nil), - (*ReservedClaims_ValidatePeriodDisable)(nil), - (*ReservedClaims_ValidatePeriodEnable)(nil), +func (m *ReplaceSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { + if m != nil { + return m.ProtectedCookies } + return nil } -// api groups -// -// x-displayName: "API Groups" -type APIGroups struct { - // api group - // - // x-displayName: "API Groups" - // x-required - ApiGroups []string `protobuf:"bytes,2,rep,name=api_groups,json=apiGroups,proto3" json:"api_groups,omitempty"` +func (m *ReplaceSpecType) GetSystemDefaultTimeouts() *schema.Empty { + if x, ok := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SystemDefaultTimeouts); ok { + return x.SystemDefaultTimeouts + } + return nil } -func (m *APIGroups) Reset() { *m = APIGroups{} } -func (*APIGroups) ProtoMessage() {} -func (*APIGroups) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{85} -} -func (m *APIGroups) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *APIGroups) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { + if x, ok := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SlowDdosMitigation); ok { + return x.SlowDdosMitigation } - return b[:n], nil -} -func (m *APIGroups) XXX_Merge(src proto.Message) { - xxx_messageInfo_APIGroups.Merge(m, src) -} -func (m *APIGroups) XXX_Size() int { - return m.Size() -} -func (m *APIGroups) XXX_DiscardUnknown() { - xxx_messageInfo_APIGroups.DiscardUnknown(m) + return nil } -var xxx_messageInfo_APIGroups proto.InternalMessageInfo - -func (m *APIGroups) GetApiGroups() []string { +func (m *ReplaceSpecType) GetJwtValidation() *common_waf.JWTValidation { if m != nil { - return m.ApiGroups + return m.JwtValidation } return nil } -// base_paths -// -// x-displayName: "Base Paths" -type BasePathsType struct { - // base_paths - // - // x-displayName: "Prefix Values" - // x-example: "/basepath" - // x-required - BasePaths []string `protobuf:"bytes,1,rep,name=base_paths,json=basePaths,proto3" json:"base_paths,omitempty"` +func (m *ReplaceSpecType) GetDisableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*ReplaceSpecType_DisableThreatMesh); ok { + return x.DisableThreatMesh + } + return nil } -func (m *BasePathsType) Reset() { *m = BasePathsType{} } -func (*BasePathsType) ProtoMessage() {} -func (*BasePathsType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{86} -} -func (m *BasePathsType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BasePathsType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetEnableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*ReplaceSpecType_EnableThreatMesh); ok { + return x.EnableThreatMesh } - return b[:n], nil -} -func (m *BasePathsType) XXX_Merge(src proto.Message) { - xxx_messageInfo_BasePathsType.Merge(m, src) -} -func (m *BasePathsType) XXX_Size() int { - return m.Size() -} -func (m *BasePathsType) XXX_DiscardUnknown() { - xxx_messageInfo_BasePathsType.DiscardUnknown(m) + return nil } -var xxx_messageInfo_BasePathsType proto.InternalMessageInfo - -func (m *BasePathsType) GetBasePaths() []string { - if m != nil { - return m.BasePaths +func (m *ReplaceSpecType) GetL7DdosActionDefault() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionDefault); ok { + return x.L7DdosActionDefault } return nil } -// audiences -// -// x-displayName: "Audiences" -type Audiences struct { - // audiences - // - // x-displayName: "Values" - // x-example: "value" - // x-required - Audiences []string `protobuf:"bytes,1,rep,name=audiences,proto3" json:"audiences,omitempty"` +func (m *ReplaceSpecType) GetL7DdosActionBlock() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionBlock); ok { + return x.L7DdosActionBlock + } + return nil } -func (m *Audiences) Reset() { *m = Audiences{} } -func (*Audiences) ProtoMessage() {} -func (*Audiences) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{87} -} -func (m *Audiences) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *Audiences) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (m *ReplaceSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionJsChallenge); ok { + return x.L7DdosActionJsChallenge } - return b[:n], nil -} -func (m *Audiences) XXX_Merge(src proto.Message) { - xxx_messageInfo_Audiences.Merge(m, src) -} -func (m *Audiences) XXX_Size() int { - return m.Size() -} -func (m *Audiences) XXX_DiscardUnknown() { - xxx_messageInfo_Audiences.DiscardUnknown(m) + return nil } -var xxx_messageInfo_Audiences proto.InternalMessageInfo - -func (m *Audiences) GetAudiences() []string { - if m != nil { - return m.Audiences +func (m *ReplaceSpecType) GetL7DdosActionNone() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionNone); ok { + return x.L7DdosActionNone } return nil } -// CreateSpecType -// -// x-displayName: "Create HTTP Load Balancer" -// Shape of the HTTP load balancer specification -type CreateSpecType struct { - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Types that are valid to be assigned to LoadbalancerType: - // - // *CreateSpecType_Http - // *CreateSpecType_HttpsAutoCert - // *CreateSpecType_Https - LoadbalancerType isCreateSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - // Types that are valid to be assigned to AdvertiseChoice: - // - // *CreateSpecType_DoNotAdvertise - // *CreateSpecType_AdvertiseOnPublicDefaultVip - // *CreateSpecType_AdvertiseOnPublic - // *CreateSpecType_AdvertiseCustom - AdvertiseChoice isCreateSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` - DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` - // Types that are valid to be assigned to OriginPoolChoice: - // - // *CreateSpecType_DefaultPool - // *CreateSpecType_DefaultPoolList - OriginPoolChoice isCreateSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` - OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` - Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` - CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` - // Types that are valid to be assigned to WafChoice: - // - // *CreateSpecType_DisableWaf - // *CreateSpecType_AppFirewall - WafChoice isCreateSpecType_WafChoice `protobuf_oneof:"waf_choice"` - AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ReplaceSpecType_Http)(nil), + (*ReplaceSpecType_HttpsAutoCert)(nil), + (*ReplaceSpecType_Https)(nil), + (*ReplaceSpecType_DoNotAdvertise)(nil), + (*ReplaceSpecType_AdvertiseOnPublicDefaultVip)(nil), + (*ReplaceSpecType_AdvertiseOnPublic)(nil), + (*ReplaceSpecType_AdvertiseCustom)(nil), + (*ReplaceSpecType_DefaultPool)(nil), + (*ReplaceSpecType_DefaultPoolList)(nil), + (*ReplaceSpecType_DisableWaf)(nil), + (*ReplaceSpecType_AppFirewall)(nil), + (*ReplaceSpecType_NoChallenge)(nil), + (*ReplaceSpecType_EnableChallenge)(nil), + (*ReplaceSpecType_JsChallenge)(nil), + (*ReplaceSpecType_CaptchaChallenge)(nil), + (*ReplaceSpecType_PolicyBasedChallenge)(nil), + (*ReplaceSpecType_UserIdClientIp)(nil), + (*ReplaceSpecType_UserIdentification)(nil), + (*ReplaceSpecType_DisableRateLimit)(nil), + (*ReplaceSpecType_ApiRateLimit)(nil), + (*ReplaceSpecType_RateLimit)(nil), + (*ReplaceSpecType_ServicePoliciesFromNamespace)(nil), + (*ReplaceSpecType_NoServicePolicies)(nil), + (*ReplaceSpecType_ActiveServicePolicies)(nil), + (*ReplaceSpecType_RoundRobin)(nil), + (*ReplaceSpecType_LeastActive)(nil), + (*ReplaceSpecType_Random)(nil), + (*ReplaceSpecType_SourceIpStickiness)(nil), + (*ReplaceSpecType_CookieStickiness)(nil), + (*ReplaceSpecType_RingHash)(nil), + (*ReplaceSpecType_DisableTrustClientIpHeaders)(nil), + (*ReplaceSpecType_EnableTrustClientIpHeaders)(nil), + (*ReplaceSpecType_SingleLbApp)(nil), + (*ReplaceSpecType_MultiLbApp)(nil), + (*ReplaceSpecType_EnableMaliciousUserDetection)(nil), + (*ReplaceSpecType_DisableMaliciousUserDetection)(nil), + (*ReplaceSpecType_EnableApiDiscovery)(nil), + (*ReplaceSpecType_DisableApiDiscovery)(nil), + (*ReplaceSpecType_DisableBotDefense)(nil), + (*ReplaceSpecType_BotDefense)(nil), + (*ReplaceSpecType_BotDefenseAdvanced)(nil), + (*ReplaceSpecType_DisableApiDefinition)(nil), + (*ReplaceSpecType_ApiDefinition)(nil), + (*ReplaceSpecType_ApiSpecification)(nil), + (*ReplaceSpecType_ApiDefinitions)(nil), + (*ReplaceSpecType_DisableIpReputation)(nil), + (*ReplaceSpecType_EnableIpReputation)(nil), + (*ReplaceSpecType_DisableClientSideDefense)(nil), + (*ReplaceSpecType_ClientSideDefense)(nil), + (*ReplaceSpecType_SystemDefaultTimeouts)(nil), + (*ReplaceSpecType_SlowDdosMitigation)(nil), + (*ReplaceSpecType_DisableThreatMesh)(nil), + (*ReplaceSpecType_EnableThreatMesh)(nil), + (*ReplaceSpecType_L7DdosActionDefault)(nil), + (*ReplaceSpecType_L7DdosActionBlock)(nil), + (*ReplaceSpecType_L7DdosActionJsChallenge)(nil), + (*ReplaceSpecType_L7DdosActionNone)(nil), + } +} + +// GetSpecType +// +// x-displayName: "Get HTTP Load Balancer" +// Shape of the HTTP load balancer specification +type GetSpecType struct { + Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` + // Types that are valid to be assigned to LoadbalancerType: + // + // *GetSpecType_Http + // *GetSpecType_HttpsAutoCert + // *GetSpecType_Https + LoadbalancerType isGetSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` + DownstreamTlsCertificateExpirationTimestamps []*types.Timestamp `protobuf:"bytes,62,rep,name=downstream_tls_certificate_expiration_timestamps,json=downstreamTlsCertificateExpirationTimestamps,proto3" json:"downstream_tls_certificate_expiration_timestamps,omitempty"` + // Types that are valid to be assigned to AdvertiseChoice: + // + // *GetSpecType_DoNotAdvertise + // *GetSpecType_AdvertiseOnPublicDefaultVip + // *GetSpecType_AdvertiseOnPublic + // *GetSpecType_AdvertiseCustom + AdvertiseChoice isGetSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` + DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` + // Types that are valid to be assigned to OriginPoolChoice: + // + // *GetSpecType_DefaultPool + // *GetSpecType_DefaultPoolList + OriginPoolChoice isGetSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` + OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` + Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` + CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` + // Types that are valid to be assigned to WafChoice: + // + // *GetSpecType_DisableWaf + // *GetSpecType_AppFirewall + WafChoice isGetSpecType_WafChoice `protobuf_oneof:"waf_choice"` + AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` // Types that are valid to be assigned to ChallengeType: // - // *CreateSpecType_NoChallenge - // *CreateSpecType_EnableChallenge - // *CreateSpecType_JsChallenge - // *CreateSpecType_CaptchaChallenge - // *CreateSpecType_PolicyBasedChallenge - ChallengeType isCreateSpecType_ChallengeType `protobuf_oneof:"challenge_type"` - MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` + // *GetSpecType_NoChallenge + // *GetSpecType_EnableChallenge + // *GetSpecType_JsChallenge + // *GetSpecType_CaptchaChallenge + // *GetSpecType_PolicyBasedChallenge + ChallengeType isGetSpecType_ChallengeType `protobuf_oneof:"challenge_type"` + MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` // Types that are valid to be assigned to UserIdChoice: // - // *CreateSpecType_UserIdClientIp - // *CreateSpecType_UserIdentification - UserIdChoice isCreateSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` + // *GetSpecType_UserIdClientIp + // *GetSpecType_UserIdentification + UserIdChoice isGetSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` // Types that are valid to be assigned to RateLimitChoice: // - // *CreateSpecType_DisableRateLimit - // *CreateSpecType_ApiRateLimit - // *CreateSpecType_RateLimit - RateLimitChoice isCreateSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` - MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` - WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` - DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` - BlockedClients []*SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` - TrustedClients []*SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` - ApiProtectionRules *APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` - DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` + // *GetSpecType_DisableRateLimit + // *GetSpecType_ApiRateLimit + // *GetSpecType_RateLimit + RateLimitChoice isGetSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` + MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` + WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` + DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` + BlockedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` + TrustedClients []*common_waf.SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` + ApiProtectionRules *common_waf.APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` + DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` // Types that are valid to be assigned to ServicePolicyChoice: // - // *CreateSpecType_ServicePoliciesFromNamespace - // *CreateSpecType_NoServicePolicies - // *CreateSpecType_ActiveServicePolicies - ServicePolicyChoice isCreateSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` + // *GetSpecType_ServicePoliciesFromNamespace + // *GetSpecType_NoServicePolicies + // *GetSpecType_ActiveServicePolicies + ServicePolicyChoice isGetSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` // Types that are valid to be assigned to HashPolicyChoice: // - // *CreateSpecType_RoundRobin - // *CreateSpecType_LeastActive - // *CreateSpecType_Random - // *CreateSpecType_SourceIpStickiness - // *CreateSpecType_CookieStickiness - // *CreateSpecType_RingHash - HashPolicyChoice isCreateSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` + // *GetSpecType_RoundRobin + // *GetSpecType_LeastActive + // *GetSpecType_Random + // *GetSpecType_SourceIpStickiness + // *GetSpecType_CookieStickiness + // *GetSpecType_RingHash + HashPolicyChoice isGetSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` // Types that are valid to be assigned to TrustClientIpHeadersChoice: // - // *CreateSpecType_DisableTrustClientIpHeaders - // *CreateSpecType_EnableTrustClientIpHeaders - TrustClientIpHeadersChoice isCreateSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` + // *GetSpecType_DisableTrustClientIpHeaders + // *GetSpecType_EnableTrustClientIpHeaders + TrustClientIpHeadersChoice isGetSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` // Types that are valid to be assigned to MlConfigChoice: // - // *CreateSpecType_SingleLbApp - // *CreateSpecType_MultiLbApp - MlConfigChoice isCreateSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` - // Types that are valid to be assigned to DdosDetectionChoice: - // - // *CreateSpecType_EnableDdosDetection - // *CreateSpecType_DisableDdosDetection - DdosDetectionChoice isCreateSpecType_DdosDetectionChoice `protobuf_oneof:"ddos_detection_choice"` + // *GetSpecType_SingleLbApp + // *GetSpecType_MultiLbApp + MlConfigChoice isGetSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` // Types that are valid to be assigned to MaliciousUserDetectionChoice: // - // *CreateSpecType_EnableMaliciousUserDetection - // *CreateSpecType_DisableMaliciousUserDetection - MaliciousUserDetectionChoice isCreateSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` + // *GetSpecType_EnableMaliciousUserDetection + // *GetSpecType_DisableMaliciousUserDetection + MaliciousUserDetectionChoice isGetSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` // Types that are valid to be assigned to ApiDiscoveryChoice: // - // *CreateSpecType_EnableApiDiscovery - // *CreateSpecType_DisableApiDiscovery - ApiDiscoveryChoice isCreateSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` + // *GetSpecType_EnableApiDiscovery + // *GetSpecType_DisableApiDiscovery + ApiDiscoveryChoice isGetSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` // Types that are valid to be assigned to BotDefenseChoice: // - // *CreateSpecType_DisableBotDefense - // *CreateSpecType_BotDefense - // *CreateSpecType_BotDefenseAdvanced - BotDefenseChoice isCreateSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` + // *GetSpecType_DisableBotDefense + // *GetSpecType_BotDefense + // *GetSpecType_BotDefenseAdvanced + BotDefenseChoice isGetSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` // Types that are valid to be assigned to ApiDefinitionChoice: // - // *CreateSpecType_DisableApiDefinition - // *CreateSpecType_ApiDefinition - // *CreateSpecType_ApiSpecification - // *CreateSpecType_ApiDefinitions - ApiDefinitionChoice isCreateSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` + // *GetSpecType_DisableApiDefinition + // *GetSpecType_ApiDefinition + // *GetSpecType_ApiSpecification + // *GetSpecType_ApiDefinitions + ApiDefinitionChoice isGetSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` // Types that are valid to be assigned to IpReputationChoice: // - // *CreateSpecType_DisableIpReputation - // *CreateSpecType_EnableIpReputation - IpReputationChoice isCreateSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` + // *GetSpecType_DisableIpReputation + // *GetSpecType_EnableIpReputation + IpReputationChoice isGetSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` // Types that are valid to be assigned to ClientSideDefenseChoice: // - // *CreateSpecType_DisableClientSideDefense - // *CreateSpecType_ClientSideDefense - ClientSideDefenseChoice isCreateSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` - CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` - GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` - ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` + // *GetSpecType_DisableClientSideDefense + // *GetSpecType_ClientSideDefense + ClientSideDefenseChoice isGetSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` + CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` + GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` + ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` + HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` + DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` + State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` + AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` + InternetVipInfo []*views.InternetVIPInfo `protobuf:"bytes,1100,rep,name=internet_vip_info,json=internetVipInfo,proto3" json:"internet_vip_info,omitempty"` // Types that are valid to be assigned to SlowDdosMitigationChoice: // - // *CreateSpecType_SystemDefaultTimeouts - // *CreateSpecType_SlowDdosMitigation - SlowDdosMitigationChoice isCreateSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` - JwtValidation *JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` - // Types that are valid to be assigned to ThreatIntelligenceChoice: + // *GetSpecType_SystemDefaultTimeouts + // *GetSpecType_SlowDdosMitigation + SlowDdosMitigationChoice isGetSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` + JwtValidation *common_waf.JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` + // Types that are valid to be assigned to ThreatMeshChoice: // - // *CreateSpecType_DisableThreatIntelligence - // *CreateSpecType_EnableThreatIntelligence - ThreatIntelligenceChoice isCreateSpecType_ThreatIntelligenceChoice `protobuf_oneof:"threat_intelligence_choice"` + // *GetSpecType_DisableThreatMesh + // *GetSpecType_EnableThreatMesh + ThreatMeshChoice isGetSpecType_ThreatMeshChoice `protobuf_oneof:"threat_mesh_choice"` // Types that are valid to be assigned to L7DdosAutoMitigationAction: // - // *CreateSpecType_L7DdosActionDefault - // *CreateSpecType_L7DdosActionBlock - // *CreateSpecType_L7DdosActionJsChallenge - // *CreateSpecType_L7DdosActionNone - L7DdosAutoMitigationAction isCreateSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` + // *GetSpecType_L7DdosActionDefault + // *GetSpecType_L7DdosActionBlock + // *GetSpecType_L7DdosActionJsChallenge + // *GetSpecType_L7DdosActionNone + L7DdosAutoMitigationAction isGetSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` + CertState virtual_host.CertificationState `protobuf:"varint,115,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` } -func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } -func (*CreateSpecType) ProtoMessage() {} -func (*CreateSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{88} +func (m *GetSpecType) Reset() { *m = GetSpecType{} } +func (*GetSpecType) ProtoMessage() {} +func (*GetSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_6478b2bb990a4a3e, []int{42} } -func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { +func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -13048,5110 +9919,3871 @@ func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro } return b[:n], nil } -func (m *CreateSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_CreateSpecType.Merge(m, src) +func (m *GetSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetSpecType.Merge(m, src) } -func (m *CreateSpecType) XXX_Size() int { +func (m *GetSpecType) XXX_Size() int { return m.Size() } -func (m *CreateSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_CreateSpecType.DiscardUnknown(m) +func (m *GetSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GetSpecType.DiscardUnknown(m) } -var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo +var xxx_messageInfo_GetSpecType proto.InternalMessageInfo -type isCreateSpecType_LoadbalancerType interface { - isCreateSpecType_LoadbalancerType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isCreateSpecType_AdvertiseChoice interface { - isCreateSpecType_AdvertiseChoice() +type isGetSpecType_LoadbalancerType interface { + isGetSpecType_LoadbalancerType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_OriginPoolChoice interface { - isCreateSpecType_OriginPoolChoice() +type isGetSpecType_AdvertiseChoice interface { + isGetSpecType_AdvertiseChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_WafChoice interface { - isCreateSpecType_WafChoice() +type isGetSpecType_OriginPoolChoice interface { + isGetSpecType_OriginPoolChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_ChallengeType interface { - isCreateSpecType_ChallengeType() +type isGetSpecType_WafChoice interface { + isGetSpecType_WafChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_UserIdChoice interface { - isCreateSpecType_UserIdChoice() +type isGetSpecType_ChallengeType interface { + isGetSpecType_ChallengeType() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_RateLimitChoice interface { - isCreateSpecType_RateLimitChoice() +type isGetSpecType_UserIdChoice interface { + isGetSpecType_UserIdChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_ServicePolicyChoice interface { - isCreateSpecType_ServicePolicyChoice() +type isGetSpecType_RateLimitChoice interface { + isGetSpecType_RateLimitChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_HashPolicyChoice interface { - isCreateSpecType_HashPolicyChoice() +type isGetSpecType_ServicePolicyChoice interface { + isGetSpecType_ServicePolicyChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_TrustClientIpHeadersChoice interface { - isCreateSpecType_TrustClientIpHeadersChoice() +type isGetSpecType_HashPolicyChoice interface { + isGetSpecType_HashPolicyChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_MlConfigChoice interface { - isCreateSpecType_MlConfigChoice() +type isGetSpecType_TrustClientIpHeadersChoice interface { + isGetSpecType_TrustClientIpHeadersChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_DdosDetectionChoice interface { - isCreateSpecType_DdosDetectionChoice() +type isGetSpecType_MlConfigChoice interface { + isGetSpecType_MlConfigChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_MaliciousUserDetectionChoice interface { - isCreateSpecType_MaliciousUserDetectionChoice() +type isGetSpecType_MaliciousUserDetectionChoice interface { + isGetSpecType_MaliciousUserDetectionChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_ApiDiscoveryChoice interface { - isCreateSpecType_ApiDiscoveryChoice() +type isGetSpecType_ApiDiscoveryChoice interface { + isGetSpecType_ApiDiscoveryChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_BotDefenseChoice interface { - isCreateSpecType_BotDefenseChoice() +type isGetSpecType_BotDefenseChoice interface { + isGetSpecType_BotDefenseChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_ApiDefinitionChoice interface { - isCreateSpecType_ApiDefinitionChoice() +type isGetSpecType_ApiDefinitionChoice interface { + isGetSpecType_ApiDefinitionChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_IpReputationChoice interface { - isCreateSpecType_IpReputationChoice() +type isGetSpecType_IpReputationChoice interface { + isGetSpecType_IpReputationChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_ClientSideDefenseChoice interface { - isCreateSpecType_ClientSideDefenseChoice() +type isGetSpecType_ClientSideDefenseChoice interface { + isGetSpecType_ClientSideDefenseChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_SlowDdosMitigationChoice interface { - isCreateSpecType_SlowDdosMitigationChoice() +type isGetSpecType_SlowDdosMitigationChoice interface { + isGetSpecType_SlowDdosMitigationChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_ThreatIntelligenceChoice interface { - isCreateSpecType_ThreatIntelligenceChoice() +type isGetSpecType_ThreatMeshChoice interface { + isGetSpecType_ThreatMeshChoice() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type isCreateSpecType_L7DdosAutoMitigationAction interface { - isCreateSpecType_L7DdosAutoMitigationAction() +type isGetSpecType_L7DdosAutoMitigationAction interface { + isGetSpecType_L7DdosAutoMitigationAction() Equal(interface{}) bool MarshalTo([]byte) (int, error) Size() int } -type CreateSpecType_Http struct { +type GetSpecType_Http struct { Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` } -type CreateSpecType_HttpsAutoCert struct { +type GetSpecType_HttpsAutoCert struct { HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` } -type CreateSpecType_Https struct { +type GetSpecType_Https struct { Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` } -type CreateSpecType_DoNotAdvertise struct { +type GetSpecType_DoNotAdvertise struct { DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` } -type CreateSpecType_AdvertiseOnPublicDefaultVip struct { +type GetSpecType_AdvertiseOnPublicDefaultVip struct { AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` } -type CreateSpecType_AdvertiseOnPublic struct { +type GetSpecType_AdvertiseOnPublic struct { AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` } -type CreateSpecType_AdvertiseCustom struct { +type GetSpecType_AdvertiseCustom struct { AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` } -type CreateSpecType_DefaultPool struct { +type GetSpecType_DefaultPool struct { DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` } -type CreateSpecType_DefaultPoolList struct { +type GetSpecType_DefaultPoolList struct { DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` } -type CreateSpecType_DisableWaf struct { +type GetSpecType_DisableWaf struct { DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` } -type CreateSpecType_AppFirewall struct { +type GetSpecType_AppFirewall struct { AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` } -type CreateSpecType_NoChallenge struct { +type GetSpecType_NoChallenge struct { NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` } -type CreateSpecType_EnableChallenge struct { - EnableChallenge *EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` +type GetSpecType_EnableChallenge struct { + EnableChallenge *common_waf.EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` } -type CreateSpecType_JsChallenge struct { +type GetSpecType_JsChallenge struct { JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` } -type CreateSpecType_CaptchaChallenge struct { +type GetSpecType_CaptchaChallenge struct { CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` } -type CreateSpecType_PolicyBasedChallenge struct { - PolicyBasedChallenge *PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` +type GetSpecType_PolicyBasedChallenge struct { + PolicyBasedChallenge *common_waf.PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` } -type CreateSpecType_UserIdClientIp struct { +type GetSpecType_UserIdClientIp struct { UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` } -type CreateSpecType_UserIdentification struct { +type GetSpecType_UserIdentification struct { UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` } -type CreateSpecType_DisableRateLimit struct { +type GetSpecType_DisableRateLimit struct { DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` } -type CreateSpecType_ApiRateLimit struct { - ApiRateLimit *APIRateLimit `protobuf:"bytes,68,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` +type GetSpecType_ApiRateLimit struct { + ApiRateLimit *common_waf.APIRateLimit `protobuf:"bytes,120,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` } -type CreateSpecType_RateLimit struct { - RateLimit *RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` +type GetSpecType_RateLimit struct { + RateLimit *common_waf.RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` } -type CreateSpecType_ServicePoliciesFromNamespace struct { +type GetSpecType_ServicePoliciesFromNamespace struct { ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` } -type CreateSpecType_NoServicePolicies struct { +type GetSpecType_NoServicePolicies struct { NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` } -type CreateSpecType_ActiveServicePolicies struct { - ActiveServicePolicies *ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` +type GetSpecType_ActiveServicePolicies struct { + ActiveServicePolicies *common_waf.ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` } -type CreateSpecType_RoundRobin struct { +type GetSpecType_RoundRobin struct { RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` } -type CreateSpecType_LeastActive struct { +type GetSpecType_LeastActive struct { LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` } -type CreateSpecType_Random struct { +type GetSpecType_Random struct { Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` } -type CreateSpecType_SourceIpStickiness struct { +type GetSpecType_SourceIpStickiness struct { SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` } -type CreateSpecType_CookieStickiness struct { +type GetSpecType_CookieStickiness struct { CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` } -type CreateSpecType_RingHash struct { +type GetSpecType_RingHash struct { RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` } -type CreateSpecType_DisableTrustClientIpHeaders struct { +type GetSpecType_DisableTrustClientIpHeaders struct { DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` } -type CreateSpecType_EnableTrustClientIpHeaders struct { +type GetSpecType_EnableTrustClientIpHeaders struct { EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` } -type CreateSpecType_SingleLbApp struct { +type GetSpecType_SingleLbApp struct { SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` } -type CreateSpecType_MultiLbApp struct { +type GetSpecType_MultiLbApp struct { MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` } -type CreateSpecType_EnableDdosDetection struct { - EnableDdosDetection *EnableDDoSDetectionSetting `protobuf:"bytes,77,opt,name=enable_ddos_detection,json=enableDdosDetection,proto3,oneof" json:"enable_ddos_detection,omitempty"` -} -type CreateSpecType_DisableDdosDetection struct { - DisableDdosDetection *schema.Empty `protobuf:"bytes,78,opt,name=disable_ddos_detection,json=disableDdosDetection,proto3,oneof" json:"disable_ddos_detection,omitempty"` -} -type CreateSpecType_EnableMaliciousUserDetection struct { +type GetSpecType_EnableMaliciousUserDetection struct { EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` } -type CreateSpecType_DisableMaliciousUserDetection struct { +type GetSpecType_DisableMaliciousUserDetection struct { DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` } -type CreateSpecType_EnableApiDiscovery struct { - EnableApiDiscovery *ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` +type GetSpecType_EnableApiDiscovery struct { + EnableApiDiscovery *common_waf.ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` } -type CreateSpecType_DisableApiDiscovery struct { +type GetSpecType_DisableApiDiscovery struct { DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` } -type CreateSpecType_DisableBotDefense struct { +type GetSpecType_DisableBotDefense struct { DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` } -type CreateSpecType_BotDefense struct { +type GetSpecType_BotDefense struct { BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` } -type CreateSpecType_BotDefenseAdvanced struct { +type GetSpecType_BotDefenseAdvanced struct { BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` } -type CreateSpecType_DisableApiDefinition struct { +type GetSpecType_DisableApiDefinition struct { DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` } -type CreateSpecType_ApiDefinition struct { +type GetSpecType_ApiDefinition struct { ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` } -type CreateSpecType_ApiSpecification struct { - ApiSpecification *APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` +type GetSpecType_ApiSpecification struct { + ApiSpecification *common_waf.APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` } -type CreateSpecType_ApiDefinitions struct { - ApiDefinitions *ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` +type GetSpecType_ApiDefinitions struct { + ApiDefinitions *common_waf.ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` } -type CreateSpecType_DisableIpReputation struct { +type GetSpecType_DisableIpReputation struct { DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` } -type CreateSpecType_EnableIpReputation struct { - EnableIpReputation *IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` +type GetSpecType_EnableIpReputation struct { + EnableIpReputation *common_waf.IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` } -type CreateSpecType_DisableClientSideDefense struct { +type GetSpecType_DisableClientSideDefense struct { DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` } -type CreateSpecType_ClientSideDefense struct { +type GetSpecType_ClientSideDefense struct { ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` } -type CreateSpecType_SystemDefaultTimeouts struct { +type GetSpecType_SystemDefaultTimeouts struct { SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` } -type CreateSpecType_SlowDdosMitigation struct { +type GetSpecType_SlowDdosMitigation struct { SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` } -type CreateSpecType_DisableThreatIntelligence struct { - DisableThreatIntelligence *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_intelligence,json=disableThreatIntelligence,proto3,oneof" json:"disable_threat_intelligence,omitempty"` +type GetSpecType_DisableThreatMesh struct { + DisableThreatMesh *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_mesh,json=disableThreatMesh,proto3,oneof" json:"disable_threat_mesh,omitempty"` } -type CreateSpecType_EnableThreatIntelligence struct { - EnableThreatIntelligence *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_intelligence,json=enableThreatIntelligence,proto3,oneof" json:"enable_threat_intelligence,omitempty"` +type GetSpecType_EnableThreatMesh struct { + EnableThreatMesh *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_mesh,json=enableThreatMesh,proto3,oneof" json:"enable_threat_mesh,omitempty"` } -type CreateSpecType_L7DdosActionDefault struct { +type GetSpecType_L7DdosActionDefault struct { L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` } -type CreateSpecType_L7DdosActionBlock struct { +type GetSpecType_L7DdosActionBlock struct { L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` } -type CreateSpecType_L7DdosActionJsChallenge struct { +type GetSpecType_L7DdosActionJsChallenge struct { L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` } -type CreateSpecType_L7DdosActionNone struct { +type GetSpecType_L7DdosActionNone struct { L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` } -func (*CreateSpecType_Http) isCreateSpecType_LoadbalancerType() {} -func (*CreateSpecType_HttpsAutoCert) isCreateSpecType_LoadbalancerType() {} -func (*CreateSpecType_Https) isCreateSpecType_LoadbalancerType() {} -func (*CreateSpecType_DoNotAdvertise) isCreateSpecType_AdvertiseChoice() {} -func (*CreateSpecType_AdvertiseOnPublicDefaultVip) isCreateSpecType_AdvertiseChoice() {} -func (*CreateSpecType_AdvertiseOnPublic) isCreateSpecType_AdvertiseChoice() {} -func (*CreateSpecType_AdvertiseCustom) isCreateSpecType_AdvertiseChoice() {} -func (*CreateSpecType_DefaultPool) isCreateSpecType_OriginPoolChoice() {} -func (*CreateSpecType_DefaultPoolList) isCreateSpecType_OriginPoolChoice() {} -func (*CreateSpecType_DisableWaf) isCreateSpecType_WafChoice() {} -func (*CreateSpecType_AppFirewall) isCreateSpecType_WafChoice() {} -func (*CreateSpecType_NoChallenge) isCreateSpecType_ChallengeType() {} -func (*CreateSpecType_EnableChallenge) isCreateSpecType_ChallengeType() {} -func (*CreateSpecType_JsChallenge) isCreateSpecType_ChallengeType() {} -func (*CreateSpecType_CaptchaChallenge) isCreateSpecType_ChallengeType() {} -func (*CreateSpecType_PolicyBasedChallenge) isCreateSpecType_ChallengeType() {} -func (*CreateSpecType_UserIdClientIp) isCreateSpecType_UserIdChoice() {} -func (*CreateSpecType_UserIdentification) isCreateSpecType_UserIdChoice() {} -func (*CreateSpecType_DisableRateLimit) isCreateSpecType_RateLimitChoice() {} -func (*CreateSpecType_ApiRateLimit) isCreateSpecType_RateLimitChoice() {} -func (*CreateSpecType_RateLimit) isCreateSpecType_RateLimitChoice() {} -func (*CreateSpecType_ServicePoliciesFromNamespace) isCreateSpecType_ServicePolicyChoice() {} -func (*CreateSpecType_NoServicePolicies) isCreateSpecType_ServicePolicyChoice() {} -func (*CreateSpecType_ActiveServicePolicies) isCreateSpecType_ServicePolicyChoice() {} -func (*CreateSpecType_RoundRobin) isCreateSpecType_HashPolicyChoice() {} -func (*CreateSpecType_LeastActive) isCreateSpecType_HashPolicyChoice() {} -func (*CreateSpecType_Random) isCreateSpecType_HashPolicyChoice() {} -func (*CreateSpecType_SourceIpStickiness) isCreateSpecType_HashPolicyChoice() {} -func (*CreateSpecType_CookieStickiness) isCreateSpecType_HashPolicyChoice() {} -func (*CreateSpecType_RingHash) isCreateSpecType_HashPolicyChoice() {} -func (*CreateSpecType_DisableTrustClientIpHeaders) isCreateSpecType_TrustClientIpHeadersChoice() {} -func (*CreateSpecType_EnableTrustClientIpHeaders) isCreateSpecType_TrustClientIpHeadersChoice() {} -func (*CreateSpecType_SingleLbApp) isCreateSpecType_MlConfigChoice() {} -func (*CreateSpecType_MultiLbApp) isCreateSpecType_MlConfigChoice() {} -func (*CreateSpecType_EnableDdosDetection) isCreateSpecType_DdosDetectionChoice() {} -func (*CreateSpecType_DisableDdosDetection) isCreateSpecType_DdosDetectionChoice() {} -func (*CreateSpecType_EnableMaliciousUserDetection) isCreateSpecType_MaliciousUserDetectionChoice() {} -func (*CreateSpecType_DisableMaliciousUserDetection) isCreateSpecType_MaliciousUserDetectionChoice() { -} -func (*CreateSpecType_EnableApiDiscovery) isCreateSpecType_ApiDiscoveryChoice() {} -func (*CreateSpecType_DisableApiDiscovery) isCreateSpecType_ApiDiscoveryChoice() {} -func (*CreateSpecType_DisableBotDefense) isCreateSpecType_BotDefenseChoice() {} -func (*CreateSpecType_BotDefense) isCreateSpecType_BotDefenseChoice() {} -func (*CreateSpecType_BotDefenseAdvanced) isCreateSpecType_BotDefenseChoice() {} -func (*CreateSpecType_DisableApiDefinition) isCreateSpecType_ApiDefinitionChoice() {} -func (*CreateSpecType_ApiDefinition) isCreateSpecType_ApiDefinitionChoice() {} -func (*CreateSpecType_ApiSpecification) isCreateSpecType_ApiDefinitionChoice() {} -func (*CreateSpecType_ApiDefinitions) isCreateSpecType_ApiDefinitionChoice() {} -func (*CreateSpecType_DisableIpReputation) isCreateSpecType_IpReputationChoice() {} -func (*CreateSpecType_EnableIpReputation) isCreateSpecType_IpReputationChoice() {} -func (*CreateSpecType_DisableClientSideDefense) isCreateSpecType_ClientSideDefenseChoice() {} -func (*CreateSpecType_ClientSideDefense) isCreateSpecType_ClientSideDefenseChoice() {} -func (*CreateSpecType_SystemDefaultTimeouts) isCreateSpecType_SlowDdosMitigationChoice() {} -func (*CreateSpecType_SlowDdosMitigation) isCreateSpecType_SlowDdosMitigationChoice() {} -func (*CreateSpecType_DisableThreatIntelligence) isCreateSpecType_ThreatIntelligenceChoice() {} -func (*CreateSpecType_EnableThreatIntelligence) isCreateSpecType_ThreatIntelligenceChoice() {} -func (*CreateSpecType_L7DdosActionDefault) isCreateSpecType_L7DdosAutoMitigationAction() {} -func (*CreateSpecType_L7DdosActionBlock) isCreateSpecType_L7DdosAutoMitigationAction() {} -func (*CreateSpecType_L7DdosActionJsChallenge) isCreateSpecType_L7DdosAutoMitigationAction() {} -func (*CreateSpecType_L7DdosActionNone) isCreateSpecType_L7DdosAutoMitigationAction() {} - -func (m *CreateSpecType) GetLoadbalancerType() isCreateSpecType_LoadbalancerType { - if m != nil { - return m.LoadbalancerType - } - return nil -} -func (m *CreateSpecType) GetAdvertiseChoice() isCreateSpecType_AdvertiseChoice { +func (*GetSpecType_Http) isGetSpecType_LoadbalancerType() {} +func (*GetSpecType_HttpsAutoCert) isGetSpecType_LoadbalancerType() {} +func (*GetSpecType_Https) isGetSpecType_LoadbalancerType() {} +func (*GetSpecType_DoNotAdvertise) isGetSpecType_AdvertiseChoice() {} +func (*GetSpecType_AdvertiseOnPublicDefaultVip) isGetSpecType_AdvertiseChoice() {} +func (*GetSpecType_AdvertiseOnPublic) isGetSpecType_AdvertiseChoice() {} +func (*GetSpecType_AdvertiseCustom) isGetSpecType_AdvertiseChoice() {} +func (*GetSpecType_DefaultPool) isGetSpecType_OriginPoolChoice() {} +func (*GetSpecType_DefaultPoolList) isGetSpecType_OriginPoolChoice() {} +func (*GetSpecType_DisableWaf) isGetSpecType_WafChoice() {} +func (*GetSpecType_AppFirewall) isGetSpecType_WafChoice() {} +func (*GetSpecType_NoChallenge) isGetSpecType_ChallengeType() {} +func (*GetSpecType_EnableChallenge) isGetSpecType_ChallengeType() {} +func (*GetSpecType_JsChallenge) isGetSpecType_ChallengeType() {} +func (*GetSpecType_CaptchaChallenge) isGetSpecType_ChallengeType() {} +func (*GetSpecType_PolicyBasedChallenge) isGetSpecType_ChallengeType() {} +func (*GetSpecType_UserIdClientIp) isGetSpecType_UserIdChoice() {} +func (*GetSpecType_UserIdentification) isGetSpecType_UserIdChoice() {} +func (*GetSpecType_DisableRateLimit) isGetSpecType_RateLimitChoice() {} +func (*GetSpecType_ApiRateLimit) isGetSpecType_RateLimitChoice() {} +func (*GetSpecType_RateLimit) isGetSpecType_RateLimitChoice() {} +func (*GetSpecType_ServicePoliciesFromNamespace) isGetSpecType_ServicePolicyChoice() {} +func (*GetSpecType_NoServicePolicies) isGetSpecType_ServicePolicyChoice() {} +func (*GetSpecType_ActiveServicePolicies) isGetSpecType_ServicePolicyChoice() {} +func (*GetSpecType_RoundRobin) isGetSpecType_HashPolicyChoice() {} +func (*GetSpecType_LeastActive) isGetSpecType_HashPolicyChoice() {} +func (*GetSpecType_Random) isGetSpecType_HashPolicyChoice() {} +func (*GetSpecType_SourceIpStickiness) isGetSpecType_HashPolicyChoice() {} +func (*GetSpecType_CookieStickiness) isGetSpecType_HashPolicyChoice() {} +func (*GetSpecType_RingHash) isGetSpecType_HashPolicyChoice() {} +func (*GetSpecType_DisableTrustClientIpHeaders) isGetSpecType_TrustClientIpHeadersChoice() {} +func (*GetSpecType_EnableTrustClientIpHeaders) isGetSpecType_TrustClientIpHeadersChoice() {} +func (*GetSpecType_SingleLbApp) isGetSpecType_MlConfigChoice() {} +func (*GetSpecType_MultiLbApp) isGetSpecType_MlConfigChoice() {} +func (*GetSpecType_EnableMaliciousUserDetection) isGetSpecType_MaliciousUserDetectionChoice() {} +func (*GetSpecType_DisableMaliciousUserDetection) isGetSpecType_MaliciousUserDetectionChoice() {} +func (*GetSpecType_EnableApiDiscovery) isGetSpecType_ApiDiscoveryChoice() {} +func (*GetSpecType_DisableApiDiscovery) isGetSpecType_ApiDiscoveryChoice() {} +func (*GetSpecType_DisableBotDefense) isGetSpecType_BotDefenseChoice() {} +func (*GetSpecType_BotDefense) isGetSpecType_BotDefenseChoice() {} +func (*GetSpecType_BotDefenseAdvanced) isGetSpecType_BotDefenseChoice() {} +func (*GetSpecType_DisableApiDefinition) isGetSpecType_ApiDefinitionChoice() {} +func (*GetSpecType_ApiDefinition) isGetSpecType_ApiDefinitionChoice() {} +func (*GetSpecType_ApiSpecification) isGetSpecType_ApiDefinitionChoice() {} +func (*GetSpecType_ApiDefinitions) isGetSpecType_ApiDefinitionChoice() {} +func (*GetSpecType_DisableIpReputation) isGetSpecType_IpReputationChoice() {} +func (*GetSpecType_EnableIpReputation) isGetSpecType_IpReputationChoice() {} +func (*GetSpecType_DisableClientSideDefense) isGetSpecType_ClientSideDefenseChoice() {} +func (*GetSpecType_ClientSideDefense) isGetSpecType_ClientSideDefenseChoice() {} +func (*GetSpecType_SystemDefaultTimeouts) isGetSpecType_SlowDdosMitigationChoice() {} +func (*GetSpecType_SlowDdosMitigation) isGetSpecType_SlowDdosMitigationChoice() {} +func (*GetSpecType_DisableThreatMesh) isGetSpecType_ThreatMeshChoice() {} +func (*GetSpecType_EnableThreatMesh) isGetSpecType_ThreatMeshChoice() {} +func (*GetSpecType_L7DdosActionDefault) isGetSpecType_L7DdosAutoMitigationAction() {} +func (*GetSpecType_L7DdosActionBlock) isGetSpecType_L7DdosAutoMitigationAction() {} +func (*GetSpecType_L7DdosActionJsChallenge) isGetSpecType_L7DdosAutoMitigationAction() {} +func (*GetSpecType_L7DdosActionNone) isGetSpecType_L7DdosAutoMitigationAction() {} + +func (m *GetSpecType) GetLoadbalancerType() isGetSpecType_LoadbalancerType { + if m != nil { + return m.LoadbalancerType + } + return nil +} +func (m *GetSpecType) GetAdvertiseChoice() isGetSpecType_AdvertiseChoice { if m != nil { return m.AdvertiseChoice } return nil } -func (m *CreateSpecType) GetOriginPoolChoice() isCreateSpecType_OriginPoolChoice { +func (m *GetSpecType) GetOriginPoolChoice() isGetSpecType_OriginPoolChoice { if m != nil { return m.OriginPoolChoice } return nil } -func (m *CreateSpecType) GetWafChoice() isCreateSpecType_WafChoice { +func (m *GetSpecType) GetWafChoice() isGetSpecType_WafChoice { if m != nil { return m.WafChoice } return nil } -func (m *CreateSpecType) GetChallengeType() isCreateSpecType_ChallengeType { +func (m *GetSpecType) GetChallengeType() isGetSpecType_ChallengeType { if m != nil { return m.ChallengeType } return nil } -func (m *CreateSpecType) GetUserIdChoice() isCreateSpecType_UserIdChoice { +func (m *GetSpecType) GetUserIdChoice() isGetSpecType_UserIdChoice { if m != nil { return m.UserIdChoice } return nil } -func (m *CreateSpecType) GetRateLimitChoice() isCreateSpecType_RateLimitChoice { +func (m *GetSpecType) GetRateLimitChoice() isGetSpecType_RateLimitChoice { if m != nil { return m.RateLimitChoice } return nil } -func (m *CreateSpecType) GetServicePolicyChoice() isCreateSpecType_ServicePolicyChoice { +func (m *GetSpecType) GetServicePolicyChoice() isGetSpecType_ServicePolicyChoice { if m != nil { return m.ServicePolicyChoice } return nil } -func (m *CreateSpecType) GetHashPolicyChoice() isCreateSpecType_HashPolicyChoice { +func (m *GetSpecType) GetHashPolicyChoice() isGetSpecType_HashPolicyChoice { if m != nil { return m.HashPolicyChoice } return nil } -func (m *CreateSpecType) GetTrustClientIpHeadersChoice() isCreateSpecType_TrustClientIpHeadersChoice { +func (m *GetSpecType) GetTrustClientIpHeadersChoice() isGetSpecType_TrustClientIpHeadersChoice { if m != nil { return m.TrustClientIpHeadersChoice } return nil } -func (m *CreateSpecType) GetMlConfigChoice() isCreateSpecType_MlConfigChoice { +func (m *GetSpecType) GetMlConfigChoice() isGetSpecType_MlConfigChoice { if m != nil { return m.MlConfigChoice } return nil } -func (m *CreateSpecType) GetDdosDetectionChoice() isCreateSpecType_DdosDetectionChoice { - if m != nil { - return m.DdosDetectionChoice - } - return nil -} -func (m *CreateSpecType) GetMaliciousUserDetectionChoice() isCreateSpecType_MaliciousUserDetectionChoice { +func (m *GetSpecType) GetMaliciousUserDetectionChoice() isGetSpecType_MaliciousUserDetectionChoice { if m != nil { return m.MaliciousUserDetectionChoice } return nil } -func (m *CreateSpecType) GetApiDiscoveryChoice() isCreateSpecType_ApiDiscoveryChoice { +func (m *GetSpecType) GetApiDiscoveryChoice() isGetSpecType_ApiDiscoveryChoice { if m != nil { return m.ApiDiscoveryChoice } return nil } -func (m *CreateSpecType) GetBotDefenseChoice() isCreateSpecType_BotDefenseChoice { +func (m *GetSpecType) GetBotDefenseChoice() isGetSpecType_BotDefenseChoice { if m != nil { return m.BotDefenseChoice } return nil } -func (m *CreateSpecType) GetApiDefinitionChoice() isCreateSpecType_ApiDefinitionChoice { +func (m *GetSpecType) GetApiDefinitionChoice() isGetSpecType_ApiDefinitionChoice { if m != nil { return m.ApiDefinitionChoice } return nil } -func (m *CreateSpecType) GetIpReputationChoice() isCreateSpecType_IpReputationChoice { +func (m *GetSpecType) GetIpReputationChoice() isGetSpecType_IpReputationChoice { if m != nil { return m.IpReputationChoice } return nil } -func (m *CreateSpecType) GetClientSideDefenseChoice() isCreateSpecType_ClientSideDefenseChoice { +func (m *GetSpecType) GetClientSideDefenseChoice() isGetSpecType_ClientSideDefenseChoice { if m != nil { return m.ClientSideDefenseChoice } return nil } -func (m *CreateSpecType) GetSlowDdosMitigationChoice() isCreateSpecType_SlowDdosMitigationChoice { +func (m *GetSpecType) GetSlowDdosMitigationChoice() isGetSpecType_SlowDdosMitigationChoice { if m != nil { return m.SlowDdosMitigationChoice } return nil } -func (m *CreateSpecType) GetThreatIntelligenceChoice() isCreateSpecType_ThreatIntelligenceChoice { +func (m *GetSpecType) GetThreatMeshChoice() isGetSpecType_ThreatMeshChoice { if m != nil { - return m.ThreatIntelligenceChoice + return m.ThreatMeshChoice } return nil } -func (m *CreateSpecType) GetL7DdosAutoMitigationAction() isCreateSpecType_L7DdosAutoMitigationAction { +func (m *GetSpecType) GetL7DdosAutoMitigationAction() isGetSpecType_L7DdosAutoMitigationAction { if m != nil { return m.L7DdosAutoMitigationAction } return nil } -func (m *CreateSpecType) GetDomains() []string { +func (m *GetSpecType) GetDomains() []string { if m != nil { return m.Domains } return nil } -func (m *CreateSpecType) GetHttp() *ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Http); ok { +func (m *GetSpecType) GetHttp() *ProxyTypeHttp { + if x, ok := m.GetLoadbalancerType().(*GetSpecType_Http); ok { return x.Http } return nil } -func (m *CreateSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { - if x, ok := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert); ok { +func (m *GetSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { + if x, ok := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert); ok { return x.HttpsAutoCert } return nil } -func (m *CreateSpecType) GetHttps() *ProxyTypeHttps { - if x, ok := m.GetLoadbalancerType().(*CreateSpecType_Https); ok { +func (m *GetSpecType) GetHttps() *ProxyTypeHttps { + if x, ok := m.GetLoadbalancerType().(*GetSpecType_Https); ok { return x.Https } return nil } -func (m *CreateSpecType) GetDoNotAdvertise() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_DoNotAdvertise); ok { +func (m *GetSpecType) GetDownstreamTlsCertificateExpirationTimestamps() []*types.Timestamp { + if m != nil { + return m.DownstreamTlsCertificateExpirationTimestamps + } + return nil +} + +func (m *GetSpecType) GetDoNotAdvertise() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*GetSpecType_DoNotAdvertise); ok { return x.DoNotAdvertise } return nil } -func (m *CreateSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublicDefaultVip); ok { +func (m *GetSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublicDefaultVip); ok { return x.AdvertiseOnPublicDefaultVip } return nil } -func (m *CreateSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { - if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublic); ok { +func (m *GetSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { + if x, ok := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublic); ok { return x.AdvertiseOnPublic } return nil } -func (m *CreateSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { - if x, ok := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseCustom); ok { +func (m *GetSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { + if x, ok := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseCustom); ok { return x.AdvertiseCustom } return nil } -func (m *CreateSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { +func (m *GetSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { if m != nil { return m.DefaultRoutePools } return nil } -func (m *CreateSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { - if x, ok := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPool); ok { +func (m *GetSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { + if x, ok := m.GetOriginPoolChoice().(*GetSpecType_DefaultPool); ok { return x.DefaultPool } return nil } -func (m *CreateSpecType) GetDefaultPoolList() *views.OriginPoolListType { - if x, ok := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPoolList); ok { +func (m *GetSpecType) GetDefaultPoolList() *views.OriginPoolListType { + if x, ok := m.GetOriginPoolChoice().(*GetSpecType_DefaultPoolList); ok { return x.DefaultPoolList } return nil } -func (m *CreateSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { +func (m *GetSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { if m != nil { return m.OriginServerSubsetRuleList } return nil } -func (m *CreateSpecType) GetRoutes() []*RouteType { +func (m *GetSpecType) GetRoutes() []*RouteType { if m != nil { return m.Routes } return nil } -func (m *CreateSpecType) GetCorsPolicy() *schema.CorsPolicy { +func (m *GetSpecType) GetCorsPolicy() *schema.CorsPolicy { if m != nil { return m.CorsPolicy } return nil } -func (m *CreateSpecType) GetDisableWaf() *schema.Empty { - if x, ok := m.GetWafChoice().(*CreateSpecType_DisableWaf); ok { +func (m *GetSpecType) GetDisableWaf() *schema.Empty { + if x, ok := m.GetWafChoice().(*GetSpecType_DisableWaf); ok { return x.DisableWaf } return nil } -func (m *CreateSpecType) GetAppFirewall() *views.ObjectRefType { - if x, ok := m.GetWafChoice().(*CreateSpecType_AppFirewall); ok { +func (m *GetSpecType) GetAppFirewall() *views.ObjectRefType { + if x, ok := m.GetWafChoice().(*GetSpecType_AppFirewall); ok { return x.AppFirewall } return nil } -func (m *CreateSpecType) GetAddLocation() bool { +func (m *GetSpecType) GetAddLocation() bool { if m != nil { return m.AddLocation } return false } -func (m *CreateSpecType) GetNoChallenge() *schema.Empty { - if x, ok := m.GetChallengeType().(*CreateSpecType_NoChallenge); ok { +func (m *GetSpecType) GetNoChallenge() *schema.Empty { + if x, ok := m.GetChallengeType().(*GetSpecType_NoChallenge); ok { return x.NoChallenge } return nil } -func (m *CreateSpecType) GetEnableChallenge() *EnableChallenge { - if x, ok := m.GetChallengeType().(*CreateSpecType_EnableChallenge); ok { +func (m *GetSpecType) GetEnableChallenge() *common_waf.EnableChallenge { + if x, ok := m.GetChallengeType().(*GetSpecType_EnableChallenge); ok { return x.EnableChallenge } return nil } -func (m *CreateSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetChallengeType().(*CreateSpecType_JsChallenge); ok { +func (m *GetSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetChallengeType().(*GetSpecType_JsChallenge); ok { return x.JsChallenge } return nil } -func (m *CreateSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { - if x, ok := m.GetChallengeType().(*CreateSpecType_CaptchaChallenge); ok { +func (m *GetSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { + if x, ok := m.GetChallengeType().(*GetSpecType_CaptchaChallenge); ok { return x.CaptchaChallenge } return nil } -func (m *CreateSpecType) GetPolicyBasedChallenge() *PolicyBasedChallenge { - if x, ok := m.GetChallengeType().(*CreateSpecType_PolicyBasedChallenge); ok { +func (m *GetSpecType) GetPolicyBasedChallenge() *common_waf.PolicyBasedChallenge { + if x, ok := m.GetChallengeType().(*GetSpecType_PolicyBasedChallenge); ok { return x.PolicyBasedChallenge } return nil } -func (m *CreateSpecType) GetMoreOption() *AdvancedOptionsType { +func (m *GetSpecType) GetMoreOption() *AdvancedOptionsType { if m != nil { return m.MoreOption } return nil } -func (m *CreateSpecType) GetUserIdClientIp() *schema.Empty { - if x, ok := m.GetUserIdChoice().(*CreateSpecType_UserIdClientIp); ok { +func (m *GetSpecType) GetUserIdClientIp() *schema.Empty { + if x, ok := m.GetUserIdChoice().(*GetSpecType_UserIdClientIp); ok { return x.UserIdClientIp } return nil } -func (m *CreateSpecType) GetUserIdentification() *views.ObjectRefType { - if x, ok := m.GetUserIdChoice().(*CreateSpecType_UserIdentification); ok { +func (m *GetSpecType) GetUserIdentification() *views.ObjectRefType { + if x, ok := m.GetUserIdChoice().(*GetSpecType_UserIdentification); ok { return x.UserIdentification } return nil } -func (m *CreateSpecType) GetDisableRateLimit() *schema.Empty { - if x, ok := m.GetRateLimitChoice().(*CreateSpecType_DisableRateLimit); ok { +func (m *GetSpecType) GetDisableRateLimit() *schema.Empty { + if x, ok := m.GetRateLimitChoice().(*GetSpecType_DisableRateLimit); ok { return x.DisableRateLimit } return nil } -func (m *CreateSpecType) GetApiRateLimit() *APIRateLimit { - if x, ok := m.GetRateLimitChoice().(*CreateSpecType_ApiRateLimit); ok { +func (m *GetSpecType) GetApiRateLimit() *common_waf.APIRateLimit { + if x, ok := m.GetRateLimitChoice().(*GetSpecType_ApiRateLimit); ok { return x.ApiRateLimit } return nil } -func (m *CreateSpecType) GetRateLimit() *RateLimitConfigType { - if x, ok := m.GetRateLimitChoice().(*CreateSpecType_RateLimit); ok { +func (m *GetSpecType) GetRateLimit() *common_waf.RateLimitConfigType { + if x, ok := m.GetRateLimitChoice().(*GetSpecType_RateLimit); ok { return x.RateLimit } return nil } -func (m *CreateSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { +func (m *GetSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { if m != nil { return m.MaliciousUserMitigation } return nil } -func (m *CreateSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { +func (m *GetSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { if m != nil { return m.WafExclusionRules } return nil } -func (m *CreateSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { +func (m *GetSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { if m != nil { return m.DataGuardRules } return nil } -func (m *CreateSpecType) GetBlockedClients() []*SimpleClientSrcRule { +func (m *GetSpecType) GetBlockedClients() []*common_waf.SimpleClientSrcRule { if m != nil { return m.BlockedClients } return nil } -func (m *CreateSpecType) GetTrustedClients() []*SimpleClientSrcRule { +func (m *GetSpecType) GetTrustedClients() []*common_waf.SimpleClientSrcRule { if m != nil { return m.TrustedClients } return nil } -func (m *CreateSpecType) GetApiProtectionRules() *APIProtectionRules { +func (m *GetSpecType) GetApiProtectionRules() *common_waf.APIProtectionRules { if m != nil { return m.ApiProtectionRules } return nil } -func (m *CreateSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { +func (m *GetSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { if m != nil { return m.DdosMitigationRules } return nil } -func (m *CreateSpecType) GetServicePoliciesFromNamespace() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*CreateSpecType_ServicePoliciesFromNamespace); ok { +func (m *GetSpecType) GetServicePoliciesFromNamespace() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*GetSpecType_ServicePoliciesFromNamespace); ok { return x.ServicePoliciesFromNamespace } return nil } -func (m *CreateSpecType) GetNoServicePolicies() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*CreateSpecType_NoServicePolicies); ok { +func (m *GetSpecType) GetNoServicePolicies() *schema.Empty { + if x, ok := m.GetServicePolicyChoice().(*GetSpecType_NoServicePolicies); ok { return x.NoServicePolicies } return nil } -func (m *CreateSpecType) GetActiveServicePolicies() *ServicePolicyList { - if x, ok := m.GetServicePolicyChoice().(*CreateSpecType_ActiveServicePolicies); ok { +func (m *GetSpecType) GetActiveServicePolicies() *common_waf.ServicePolicyList { + if x, ok := m.GetServicePolicyChoice().(*GetSpecType_ActiveServicePolicies); ok { return x.ActiveServicePolicies } return nil } -func (m *CreateSpecType) GetRoundRobin() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_RoundRobin); ok { +func (m *GetSpecType) GetRoundRobin() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GetSpecType_RoundRobin); ok { return x.RoundRobin } return nil } -func (m *CreateSpecType) GetLeastActive() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_LeastActive); ok { +func (m *GetSpecType) GetLeastActive() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GetSpecType_LeastActive); ok { return x.LeastActive } return nil } -func (m *CreateSpecType) GetRandom() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_Random); ok { +func (m *GetSpecType) GetRandom() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GetSpecType_Random); ok { return x.Random } return nil } -func (m *CreateSpecType) GetSourceIpStickiness() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_SourceIpStickiness); ok { +func (m *GetSpecType) GetSourceIpStickiness() *schema.Empty { + if x, ok := m.GetHashPolicyChoice().(*GetSpecType_SourceIpStickiness); ok { return x.SourceIpStickiness } return nil } -func (m *CreateSpecType) GetCookieStickiness() *route.CookieForHashing { - if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_CookieStickiness); ok { +func (m *GetSpecType) GetCookieStickiness() *route.CookieForHashing { + if x, ok := m.GetHashPolicyChoice().(*GetSpecType_CookieStickiness); ok { return x.CookieStickiness } return nil } -func (m *CreateSpecType) GetRingHash() *HashPolicyListType { - if x, ok := m.GetHashPolicyChoice().(*CreateSpecType_RingHash); ok { +func (m *GetSpecType) GetRingHash() *HashPolicyListType { + if x, ok := m.GetHashPolicyChoice().(*GetSpecType_RingHash); ok { return x.RingHash } return nil } -func (m *CreateSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { - if x, ok := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_DisableTrustClientIpHeaders); ok { +func (m *GetSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { + if x, ok := m.GetTrustClientIpHeadersChoice().(*GetSpecType_DisableTrustClientIpHeaders); ok { return x.DisableTrustClientIpHeaders } return nil } -func (m *CreateSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { - if x, ok := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_EnableTrustClientIpHeaders); ok { +func (m *GetSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { + if x, ok := m.GetTrustClientIpHeadersChoice().(*GetSpecType_EnableTrustClientIpHeaders); ok { return x.EnableTrustClientIpHeaders } return nil } -func (m *CreateSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { - if x, ok := m.GetMlConfigChoice().(*CreateSpecType_SingleLbApp); ok { +func (m *GetSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { + if x, ok := m.GetMlConfigChoice().(*GetSpecType_SingleLbApp); ok { return x.SingleLbApp } return nil } -func (m *CreateSpecType) GetMultiLbApp() *schema.Empty { - if x, ok := m.GetMlConfigChoice().(*CreateSpecType_MultiLbApp); ok { +func (m *GetSpecType) GetMultiLbApp() *schema.Empty { + if x, ok := m.GetMlConfigChoice().(*GetSpecType_MultiLbApp); ok { return x.MultiLbApp } return nil } -func (m *CreateSpecType) GetEnableDdosDetection() *EnableDDoSDetectionSetting { - if x, ok := m.GetDdosDetectionChoice().(*CreateSpecType_EnableDdosDetection); ok { - return x.EnableDdosDetection - } - return nil -} - -func (m *CreateSpecType) GetDisableDdosDetection() *schema.Empty { - if x, ok := m.GetDdosDetectionChoice().(*CreateSpecType_DisableDdosDetection); ok { - return x.DisableDdosDetection - } - return nil -} - -func (m *CreateSpecType) GetEnableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_EnableMaliciousUserDetection); ok { +func (m *GetSpecType) GetEnableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*GetSpecType_EnableMaliciousUserDetection); ok { return x.EnableMaliciousUserDetection } return nil } -func (m *CreateSpecType) GetDisableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_DisableMaliciousUserDetection); ok { +func (m *GetSpecType) GetDisableMaliciousUserDetection() *schema.Empty { + if x, ok := m.GetMaliciousUserDetectionChoice().(*GetSpecType_DisableMaliciousUserDetection); ok { return x.DisableMaliciousUserDetection } return nil } -func (m *CreateSpecType) GetEnableApiDiscovery() *ApiDiscoverySetting { - if x, ok := m.GetApiDiscoveryChoice().(*CreateSpecType_EnableApiDiscovery); ok { +func (m *GetSpecType) GetEnableApiDiscovery() *common_waf.ApiDiscoverySetting { + if x, ok := m.GetApiDiscoveryChoice().(*GetSpecType_EnableApiDiscovery); ok { return x.EnableApiDiscovery } return nil } -func (m *CreateSpecType) GetDisableApiDiscovery() *schema.Empty { - if x, ok := m.GetApiDiscoveryChoice().(*CreateSpecType_DisableApiDiscovery); ok { +func (m *GetSpecType) GetDisableApiDiscovery() *schema.Empty { + if x, ok := m.GetApiDiscoveryChoice().(*GetSpecType_DisableApiDiscovery); ok { return x.DisableApiDiscovery } return nil } -func (m *CreateSpecType) GetDisableBotDefense() *schema.Empty { - if x, ok := m.GetBotDefenseChoice().(*CreateSpecType_DisableBotDefense); ok { +func (m *GetSpecType) GetDisableBotDefense() *schema.Empty { + if x, ok := m.GetBotDefenseChoice().(*GetSpecType_DisableBotDefense); ok { return x.DisableBotDefense } return nil } -func (m *CreateSpecType) GetBotDefense() *ShapeBotDefenseType { - if x, ok := m.GetBotDefenseChoice().(*CreateSpecType_BotDefense); ok { +func (m *GetSpecType) GetBotDefense() *ShapeBotDefenseType { + if x, ok := m.GetBotDefenseChoice().(*GetSpecType_BotDefense); ok { return x.BotDefense } return nil } -func (m *CreateSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { - if x, ok := m.GetBotDefenseChoice().(*CreateSpecType_BotDefenseAdvanced); ok { +func (m *GetSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { + if x, ok := m.GetBotDefenseChoice().(*GetSpecType_BotDefenseAdvanced); ok { return x.BotDefenseAdvanced } return nil } -func (m *CreateSpecType) GetDisableApiDefinition() *schema.Empty { - if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_DisableApiDefinition); ok { +func (m *GetSpecType) GetDisableApiDefinition() *schema.Empty { + if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_DisableApiDefinition); ok { return x.DisableApiDefinition } return nil } -func (m *CreateSpecType) GetApiDefinition() *views.ObjectRefType { - if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinition); ok { +func (m *GetSpecType) GetApiDefinition() *views.ObjectRefType { + if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinition); ok { return x.ApiDefinition } return nil } -func (m *CreateSpecType) GetApiSpecification() *APISpecificationSettings { - if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_ApiSpecification); ok { +func (m *GetSpecType) GetApiSpecification() *common_waf.APISpecificationSettings { + if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_ApiSpecification); ok { return x.ApiSpecification } return nil } -func (m *CreateSpecType) GetApiDefinitions() *ApiDefinitionList { - if x, ok := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinitions); ok { +func (m *GetSpecType) GetApiDefinitions() *common_waf.ApiDefinitionList { + if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinitions); ok { return x.ApiDefinitions } return nil } -func (m *CreateSpecType) GetDisableIpReputation() *schema.Empty { - if x, ok := m.GetIpReputationChoice().(*CreateSpecType_DisableIpReputation); ok { +func (m *GetSpecType) GetDisableIpReputation() *schema.Empty { + if x, ok := m.GetIpReputationChoice().(*GetSpecType_DisableIpReputation); ok { return x.DisableIpReputation } return nil } -func (m *CreateSpecType) GetEnableIpReputation() *IPThreatCategoryListType { - if x, ok := m.GetIpReputationChoice().(*CreateSpecType_EnableIpReputation); ok { +func (m *GetSpecType) GetEnableIpReputation() *common_waf.IPThreatCategoryListType { + if x, ok := m.GetIpReputationChoice().(*GetSpecType_EnableIpReputation); ok { return x.EnableIpReputation } return nil } -func (m *CreateSpecType) GetDisableClientSideDefense() *schema.Empty { - if x, ok := m.GetClientSideDefenseChoice().(*CreateSpecType_DisableClientSideDefense); ok { +func (m *GetSpecType) GetDisableClientSideDefense() *schema.Empty { + if x, ok := m.GetClientSideDefenseChoice().(*GetSpecType_DisableClientSideDefense); ok { return x.DisableClientSideDefense } return nil } -func (m *CreateSpecType) GetClientSideDefense() *ClientSideDefenseType { - if x, ok := m.GetClientSideDefenseChoice().(*CreateSpecType_ClientSideDefense); ok { +func (m *GetSpecType) GetClientSideDefense() *ClientSideDefenseType { + if x, ok := m.GetClientSideDefenseChoice().(*GetSpecType_ClientSideDefense); ok { return x.ClientSideDefense } return nil } -func (m *CreateSpecType) GetCsrfPolicy() *schema.CsrfPolicy { +func (m *GetSpecType) GetCsrfPolicy() *schema.CsrfPolicy { if m != nil { return m.CsrfPolicy } return nil } -func (m *CreateSpecType) GetGraphqlRules() []*policy.GraphQLRule { +func (m *GetSpecType) GetGraphqlRules() []*policy.GraphQLRule { if m != nil { return m.GraphqlRules } return nil } -func (m *CreateSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { +func (m *GetSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { if m != nil { return m.ProtectedCookies } return nil } -func (m *CreateSpecType) GetSystemDefaultTimeouts() *schema.Empty { - if x, ok := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SystemDefaultTimeouts); ok { +func (m *GetSpecType) GetHostName() string { + if m != nil { + return m.HostName + } + return "" +} + +func (m *GetSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { + if m != nil { + return m.DnsInfo + } + return nil +} + +func (m *GetSpecType) GetState() virtual_host.VirtualHostState { + if m != nil { + return m.State + } + return virtual_host.VIRTUAL_HOST_READY +} + +func (m *GetSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { + if m != nil { + return m.AutoCertInfo + } + return nil +} + +func (m *GetSpecType) GetInternetVipInfo() []*views.InternetVIPInfo { + if m != nil { + return m.InternetVipInfo + } + return nil +} + +func (m *GetSpecType) GetSystemDefaultTimeouts() *schema.Empty { + if x, ok := m.GetSlowDdosMitigationChoice().(*GetSpecType_SystemDefaultTimeouts); ok { return x.SystemDefaultTimeouts } return nil } -func (m *CreateSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { - if x, ok := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SlowDdosMitigation); ok { +func (m *GetSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { + if x, ok := m.GetSlowDdosMitigationChoice().(*GetSpecType_SlowDdosMitigation); ok { return x.SlowDdosMitigation } return nil } -func (m *CreateSpecType) GetJwtValidation() *JWTValidation { +func (m *GetSpecType) GetJwtValidation() *common_waf.JWTValidation { if m != nil { return m.JwtValidation } return nil } -func (m *CreateSpecType) GetDisableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*CreateSpecType_DisableThreatIntelligence); ok { - return x.DisableThreatIntelligence +func (m *GetSpecType) GetDisableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*GetSpecType_DisableThreatMesh); ok { + return x.DisableThreatMesh } return nil } -func (m *CreateSpecType) GetEnableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*CreateSpecType_EnableThreatIntelligence); ok { - return x.EnableThreatIntelligence +func (m *GetSpecType) GetEnableThreatMesh() *schema.Empty { + if x, ok := m.GetThreatMeshChoice().(*GetSpecType_EnableThreatMesh); ok { + return x.EnableThreatMesh } return nil } -func (m *CreateSpecType) GetL7DdosActionDefault() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionDefault); ok { +func (m *GetSpecType) GetL7DdosActionDefault() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionDefault); ok { return x.L7DdosActionDefault } return nil } -func (m *CreateSpecType) GetL7DdosActionBlock() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionBlock); ok { +func (m *GetSpecType) GetL7DdosActionBlock() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionBlock); ok { return x.L7DdosActionBlock } return nil } -func (m *CreateSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionJsChallenge); ok { +func (m *GetSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionJsChallenge); ok { return x.L7DdosActionJsChallenge } return nil } -func (m *CreateSpecType) GetL7DdosActionNone() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionNone); ok { +func (m *GetSpecType) GetL7DdosActionNone() *schema.Empty { + if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionNone); ok { return x.L7DdosActionNone } return nil } +func (m *GetSpecType) GetCertState() virtual_host.CertificationState { + if m != nil { + return m.CertState + } + return virtual_host.AutoCertDisabled +} + // XXX_OneofWrappers is for the internal use of the proto package. -func (*CreateSpecType) XXX_OneofWrappers() []interface{} { +func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ - (*CreateSpecType_Http)(nil), - (*CreateSpecType_HttpsAutoCert)(nil), - (*CreateSpecType_Https)(nil), - (*CreateSpecType_DoNotAdvertise)(nil), - (*CreateSpecType_AdvertiseOnPublicDefaultVip)(nil), - (*CreateSpecType_AdvertiseOnPublic)(nil), - (*CreateSpecType_AdvertiseCustom)(nil), - (*CreateSpecType_DefaultPool)(nil), - (*CreateSpecType_DefaultPoolList)(nil), - (*CreateSpecType_DisableWaf)(nil), - (*CreateSpecType_AppFirewall)(nil), - (*CreateSpecType_NoChallenge)(nil), - (*CreateSpecType_EnableChallenge)(nil), - (*CreateSpecType_JsChallenge)(nil), - (*CreateSpecType_CaptchaChallenge)(nil), - (*CreateSpecType_PolicyBasedChallenge)(nil), - (*CreateSpecType_UserIdClientIp)(nil), - (*CreateSpecType_UserIdentification)(nil), - (*CreateSpecType_DisableRateLimit)(nil), - (*CreateSpecType_ApiRateLimit)(nil), - (*CreateSpecType_RateLimit)(nil), - (*CreateSpecType_ServicePoliciesFromNamespace)(nil), - (*CreateSpecType_NoServicePolicies)(nil), - (*CreateSpecType_ActiveServicePolicies)(nil), - (*CreateSpecType_RoundRobin)(nil), - (*CreateSpecType_LeastActive)(nil), - (*CreateSpecType_Random)(nil), - (*CreateSpecType_SourceIpStickiness)(nil), - (*CreateSpecType_CookieStickiness)(nil), - (*CreateSpecType_RingHash)(nil), - (*CreateSpecType_DisableTrustClientIpHeaders)(nil), - (*CreateSpecType_EnableTrustClientIpHeaders)(nil), - (*CreateSpecType_SingleLbApp)(nil), - (*CreateSpecType_MultiLbApp)(nil), - (*CreateSpecType_EnableDdosDetection)(nil), - (*CreateSpecType_DisableDdosDetection)(nil), - (*CreateSpecType_EnableMaliciousUserDetection)(nil), - (*CreateSpecType_DisableMaliciousUserDetection)(nil), - (*CreateSpecType_EnableApiDiscovery)(nil), - (*CreateSpecType_DisableApiDiscovery)(nil), - (*CreateSpecType_DisableBotDefense)(nil), - (*CreateSpecType_BotDefense)(nil), - (*CreateSpecType_BotDefenseAdvanced)(nil), - (*CreateSpecType_DisableApiDefinition)(nil), - (*CreateSpecType_ApiDefinition)(nil), - (*CreateSpecType_ApiSpecification)(nil), - (*CreateSpecType_ApiDefinitions)(nil), - (*CreateSpecType_DisableIpReputation)(nil), - (*CreateSpecType_EnableIpReputation)(nil), - (*CreateSpecType_DisableClientSideDefense)(nil), - (*CreateSpecType_ClientSideDefense)(nil), - (*CreateSpecType_SystemDefaultTimeouts)(nil), - (*CreateSpecType_SlowDdosMitigation)(nil), - (*CreateSpecType_DisableThreatIntelligence)(nil), - (*CreateSpecType_EnableThreatIntelligence)(nil), - (*CreateSpecType_L7DdosActionDefault)(nil), - (*CreateSpecType_L7DdosActionBlock)(nil), - (*CreateSpecType_L7DdosActionJsChallenge)(nil), - (*CreateSpecType_L7DdosActionNone)(nil), + (*GetSpecType_Http)(nil), + (*GetSpecType_HttpsAutoCert)(nil), + (*GetSpecType_Https)(nil), + (*GetSpecType_DoNotAdvertise)(nil), + (*GetSpecType_AdvertiseOnPublicDefaultVip)(nil), + (*GetSpecType_AdvertiseOnPublic)(nil), + (*GetSpecType_AdvertiseCustom)(nil), + (*GetSpecType_DefaultPool)(nil), + (*GetSpecType_DefaultPoolList)(nil), + (*GetSpecType_DisableWaf)(nil), + (*GetSpecType_AppFirewall)(nil), + (*GetSpecType_NoChallenge)(nil), + (*GetSpecType_EnableChallenge)(nil), + (*GetSpecType_JsChallenge)(nil), + (*GetSpecType_CaptchaChallenge)(nil), + (*GetSpecType_PolicyBasedChallenge)(nil), + (*GetSpecType_UserIdClientIp)(nil), + (*GetSpecType_UserIdentification)(nil), + (*GetSpecType_DisableRateLimit)(nil), + (*GetSpecType_ApiRateLimit)(nil), + (*GetSpecType_RateLimit)(nil), + (*GetSpecType_ServicePoliciesFromNamespace)(nil), + (*GetSpecType_NoServicePolicies)(nil), + (*GetSpecType_ActiveServicePolicies)(nil), + (*GetSpecType_RoundRobin)(nil), + (*GetSpecType_LeastActive)(nil), + (*GetSpecType_Random)(nil), + (*GetSpecType_SourceIpStickiness)(nil), + (*GetSpecType_CookieStickiness)(nil), + (*GetSpecType_RingHash)(nil), + (*GetSpecType_DisableTrustClientIpHeaders)(nil), + (*GetSpecType_EnableTrustClientIpHeaders)(nil), + (*GetSpecType_SingleLbApp)(nil), + (*GetSpecType_MultiLbApp)(nil), + (*GetSpecType_EnableMaliciousUserDetection)(nil), + (*GetSpecType_DisableMaliciousUserDetection)(nil), + (*GetSpecType_EnableApiDiscovery)(nil), + (*GetSpecType_DisableApiDiscovery)(nil), + (*GetSpecType_DisableBotDefense)(nil), + (*GetSpecType_BotDefense)(nil), + (*GetSpecType_BotDefenseAdvanced)(nil), + (*GetSpecType_DisableApiDefinition)(nil), + (*GetSpecType_ApiDefinition)(nil), + (*GetSpecType_ApiSpecification)(nil), + (*GetSpecType_ApiDefinitions)(nil), + (*GetSpecType_DisableIpReputation)(nil), + (*GetSpecType_EnableIpReputation)(nil), + (*GetSpecType_DisableClientSideDefense)(nil), + (*GetSpecType_ClientSideDefense)(nil), + (*GetSpecType_SystemDefaultTimeouts)(nil), + (*GetSpecType_SlowDdosMitigation)(nil), + (*GetSpecType_DisableThreatMesh)(nil), + (*GetSpecType_EnableThreatMesh)(nil), + (*GetSpecType_L7DdosActionDefault)(nil), + (*GetSpecType_L7DdosActionBlock)(nil), + (*GetSpecType_L7DdosActionJsChallenge)(nil), + (*GetSpecType_L7DdosActionNone)(nil), } } -// ReplaceSpecType -// -// x-displayName: "Replace HTTP Load Balancer" -// Shape of the HTTP load balancer specification -type ReplaceSpecType struct { - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Types that are valid to be assigned to LoadbalancerType: - // - // *ReplaceSpecType_Http - // *ReplaceSpecType_HttpsAutoCert - // *ReplaceSpecType_Https - LoadbalancerType isReplaceSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - // Types that are valid to be assigned to AdvertiseChoice: - // - // *ReplaceSpecType_DoNotAdvertise - // *ReplaceSpecType_AdvertiseOnPublicDefaultVip - // *ReplaceSpecType_AdvertiseOnPublic - // *ReplaceSpecType_AdvertiseCustom - AdvertiseChoice isReplaceSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` - DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` - // Types that are valid to be assigned to OriginPoolChoice: - // - // *ReplaceSpecType_DefaultPool - // *ReplaceSpecType_DefaultPoolList - OriginPoolChoice isReplaceSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` - OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` - Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` - CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` - // Types that are valid to be assigned to WafChoice: - // - // *ReplaceSpecType_DisableWaf - // *ReplaceSpecType_AppFirewall - WafChoice isReplaceSpecType_WafChoice `protobuf_oneof:"waf_choice"` - AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - // Types that are valid to be assigned to ChallengeType: - // - // *ReplaceSpecType_NoChallenge - // *ReplaceSpecType_EnableChallenge - // *ReplaceSpecType_JsChallenge - // *ReplaceSpecType_CaptchaChallenge - // *ReplaceSpecType_PolicyBasedChallenge - ChallengeType isReplaceSpecType_ChallengeType `protobuf_oneof:"challenge_type"` - MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - // Types that are valid to be assigned to UserIdChoice: - // - // *ReplaceSpecType_UserIdClientIp - // *ReplaceSpecType_UserIdentification - UserIdChoice isReplaceSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` - // Types that are valid to be assigned to RateLimitChoice: - // - // *ReplaceSpecType_DisableRateLimit - // *ReplaceSpecType_ApiRateLimit - // *ReplaceSpecType_RateLimit - RateLimitChoice isReplaceSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` - MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` - WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` - DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` - BlockedClients []*SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` - TrustedClients []*SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` - ApiProtectionRules *APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` - DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` - // Types that are valid to be assigned to ServicePolicyChoice: - // - // *ReplaceSpecType_ServicePoliciesFromNamespace - // *ReplaceSpecType_NoServicePolicies - // *ReplaceSpecType_ActiveServicePolicies - ServicePolicyChoice isReplaceSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` - // Types that are valid to be assigned to HashPolicyChoice: - // - // *ReplaceSpecType_RoundRobin - // *ReplaceSpecType_LeastActive - // *ReplaceSpecType_Random - // *ReplaceSpecType_SourceIpStickiness - // *ReplaceSpecType_CookieStickiness - // *ReplaceSpecType_RingHash - HashPolicyChoice isReplaceSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` - // Types that are valid to be assigned to TrustClientIpHeadersChoice: - // - // *ReplaceSpecType_DisableTrustClientIpHeaders - // *ReplaceSpecType_EnableTrustClientIpHeaders - TrustClientIpHeadersChoice isReplaceSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` - // Types that are valid to be assigned to MlConfigChoice: - // - // *ReplaceSpecType_SingleLbApp - // *ReplaceSpecType_MultiLbApp - MlConfigChoice isReplaceSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` - // Types that are valid to be assigned to DdosDetectionChoice: - // - // *ReplaceSpecType_EnableDdosDetection - // *ReplaceSpecType_DisableDdosDetection - DdosDetectionChoice isReplaceSpecType_DdosDetectionChoice `protobuf_oneof:"ddos_detection_choice"` - // Types that are valid to be assigned to MaliciousUserDetectionChoice: - // - // *ReplaceSpecType_EnableMaliciousUserDetection - // *ReplaceSpecType_DisableMaliciousUserDetection - MaliciousUserDetectionChoice isReplaceSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` - // Types that are valid to be assigned to ApiDiscoveryChoice: - // - // *ReplaceSpecType_EnableApiDiscovery - // *ReplaceSpecType_DisableApiDiscovery - ApiDiscoveryChoice isReplaceSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` - // Types that are valid to be assigned to BotDefenseChoice: - // - // *ReplaceSpecType_DisableBotDefense - // *ReplaceSpecType_BotDefense - // *ReplaceSpecType_BotDefenseAdvanced - BotDefenseChoice isReplaceSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` - // Types that are valid to be assigned to ApiDefinitionChoice: - // - // *ReplaceSpecType_DisableApiDefinition - // *ReplaceSpecType_ApiDefinition - // *ReplaceSpecType_ApiSpecification - // *ReplaceSpecType_ApiDefinitions - ApiDefinitionChoice isReplaceSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` - // Types that are valid to be assigned to IpReputationChoice: - // - // *ReplaceSpecType_DisableIpReputation - // *ReplaceSpecType_EnableIpReputation - IpReputationChoice isReplaceSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` - // Types that are valid to be assigned to ClientSideDefenseChoice: - // - // *ReplaceSpecType_DisableClientSideDefense - // *ReplaceSpecType_ClientSideDefense - ClientSideDefenseChoice isReplaceSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` - CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` - GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` - ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` - // Types that are valid to be assigned to SlowDdosMitigationChoice: - // - // *ReplaceSpecType_SystemDefaultTimeouts - // *ReplaceSpecType_SlowDdosMitigation - SlowDdosMitigationChoice isReplaceSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` - JwtValidation *JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` - // Types that are valid to be assigned to ThreatIntelligenceChoice: - // - // *ReplaceSpecType_DisableThreatIntelligence - // *ReplaceSpecType_EnableThreatIntelligence - ThreatIntelligenceChoice isReplaceSpecType_ThreatIntelligenceChoice `protobuf_oneof:"threat_intelligence_choice"` - // Types that are valid to be assigned to L7DdosAutoMitigationAction: - // - // *ReplaceSpecType_L7DdosActionDefault - // *ReplaceSpecType_L7DdosActionBlock - // *ReplaceSpecType_L7DdosActionJsChallenge - // *ReplaceSpecType_L7DdosActionNone - L7DdosAutoMitigationAction isReplaceSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` +func init() { + proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.MobileIdentifier", MobileIdentifier_name, MobileIdentifier_value) + golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.MobileIdentifier", MobileIdentifier_name, MobileIdentifier_value) + proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.URLScheme", URLScheme_name, URLScheme_value) + golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.URLScheme", URLScheme_name, URLScheme_value) + proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.ShapeBotDefenseRegion", ShapeBotDefenseRegion_name, ShapeBotDefenseRegion_value) + golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.ShapeBotDefenseRegion", ShapeBotDefenseRegion_name, ShapeBotDefenseRegion_value) + proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.JavaScriptLocation", JavaScriptLocation_name, JavaScriptLocation_value) + golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.JavaScriptLocation", JavaScriptLocation_name, JavaScriptLocation_value) + proto.RegisterType((*ProxyTypeHttps)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttps") + golang_proto.RegisterType((*ProxyTypeHttps)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttps") + proto.RegisterType((*ProxyTypeHttp)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp") + golang_proto.RegisterType((*ProxyTypeHttp)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp") + proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts") + golang_proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts") + proto.RegisterType((*HashPolicyListType)(nil), "ves.io.schema.views.http_loadbalancer.HashPolicyListType") + golang_proto.RegisterType((*HashPolicyListType)(nil), "ves.io.schema.views.http_loadbalancer.HashPolicyListType") + proto.RegisterType((*MirrorPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.MirrorPolicyType") + golang_proto.RegisterType((*MirrorPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.MirrorPolicyType") + proto.RegisterType((*RouteSimpleAdvancedOptions)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions") + golang_proto.RegisterType((*RouteSimpleAdvancedOptions)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions.EndpointSubsetsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions.EndpointSubsetsEntry") + proto.RegisterType((*RouteTypeSimpleWithDefaultOriginPool)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool") + golang_proto.RegisterType((*RouteTypeSimpleWithDefaultOriginPool)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool") + proto.RegisterType((*RouteTypeSimple)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimple") + golang_proto.RegisterType((*RouteTypeSimple)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimple") + proto.RegisterType((*RouteTypeRedirect)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeRedirect") + golang_proto.RegisterType((*RouteTypeRedirect)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeRedirect") + proto.RegisterType((*RouteTypeDirectResponse)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeDirectResponse") + golang_proto.RegisterType((*RouteTypeDirectResponse)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeDirectResponse") + proto.RegisterType((*RouteTypeCustomRoute)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute") + golang_proto.RegisterType((*RouteTypeCustomRoute)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute") + proto.RegisterType((*RouteType)(nil), "ves.io.schema.views.http_loadbalancer.RouteType") + golang_proto.RegisterType((*RouteType)(nil), "ves.io.schema.views.http_loadbalancer.RouteType") + proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType") + golang_proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType") + proto.RegisterMapType((map[uint32]string)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType.CustomErrorsEntry") + golang_proto.RegisterMapType((map[uint32]string)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType.CustomErrorsEntry") + proto.RegisterType((*DDoSClientSource)(nil), "ves.io.schema.views.http_loadbalancer.DDoSClientSource") + golang_proto.RegisterType((*DDoSClientSource)(nil), "ves.io.schema.views.http_loadbalancer.DDoSClientSource") + proto.RegisterType((*DDoSMitigationRule)(nil), "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule") + golang_proto.RegisterType((*DDoSMitigationRule)(nil), "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule") + proto.RegisterType((*SingleLoadBalancerAppSetting)(nil), "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting") + golang_proto.RegisterType((*SingleLoadBalancerAppSetting)(nil), "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting") + proto.RegisterType((*OriginServerSubsetRuleListType)(nil), "ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType") + golang_proto.RegisterType((*OriginServerSubsetRuleListType)(nil), "ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType") + proto.RegisterType((*ClientSideDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType") + golang_proto.RegisterType((*ClientSideDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType") + proto.RegisterType((*ClientSideDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType") + golang_proto.RegisterType((*ClientSideDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType") + proto.RegisterType((*CSDJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType") + golang_proto.RegisterType((*CSDJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType") + proto.RegisterType((*CSDJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType") + golang_proto.RegisterType((*CSDJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType") + proto.RegisterType((*CSDJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule") + golang_proto.RegisterType((*CSDJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule") + proto.RegisterType((*BotDefenseAdvancedPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedPolicyType") + golang_proto.RegisterType((*BotDefenseAdvancedPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedPolicyType") + proto.RegisterType((*BotAdvancedMobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.BotAdvancedMobileSDKConfigType") + golang_proto.RegisterType((*BotAdvancedMobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.BotAdvancedMobileSDKConfigType") + proto.RegisterType((*ProtectedAppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.ProtectedAppEndpointType") + golang_proto.RegisterType((*ProtectedAppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.ProtectedAppEndpointType") + proto.RegisterType((*RequestBody)(nil), "ves.io.schema.views.http_loadbalancer.RequestBody") + golang_proto.RegisterType((*RequestBody)(nil), "ves.io.schema.views.http_loadbalancer.RequestBody") + proto.RegisterType((*Query)(nil), "ves.io.schema.views.http_loadbalancer.Query") + golang_proto.RegisterType((*Query)(nil), "ves.io.schema.views.http_loadbalancer.Query") + proto.RegisterType((*ShapeBotDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefenseType") + golang_proto.RegisterType((*ShapeBotDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefenseType") + proto.RegisterType((*BotDefenseAdvancedType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedType") + golang_proto.RegisterType((*BotDefenseAdvancedType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedType") + proto.RegisterType((*ShapeBotDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefensePolicyType") + golang_proto.RegisterType((*ShapeBotDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefensePolicyType") + proto.RegisterType((*MobileTrafficIdentifierType)(nil), "ves.io.schema.views.http_loadbalancer.MobileTrafficIdentifierType") + golang_proto.RegisterType((*MobileTrafficIdentifierType)(nil), "ves.io.schema.views.http_loadbalancer.MobileTrafficIdentifierType") + proto.RegisterType((*MobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.MobileSDKConfigType") + golang_proto.RegisterType((*MobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.MobileSDKConfigType") + proto.RegisterType((*AppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.AppEndpointType") + golang_proto.RegisterType((*AppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.AppEndpointType") + proto.RegisterType((*WebMobileTrafficType)(nil), "ves.io.schema.views.http_loadbalancer.WebMobileTrafficType") + golang_proto.RegisterType((*WebMobileTrafficType)(nil), "ves.io.schema.views.http_loadbalancer.WebMobileTrafficType") + proto.RegisterType((*ShapeJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertType") + golang_proto.RegisterType((*ShapeJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertType") + proto.RegisterType((*ShapeJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType") + golang_proto.RegisterType((*ShapeJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType") + proto.RegisterType((*ShapeJavaScriptInsertAllType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllType") + golang_proto.RegisterType((*ShapeJavaScriptInsertAllType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllType") + proto.RegisterType((*ShapeJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertionRule") + golang_proto.RegisterType((*ShapeJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertionRule") + proto.RegisterType((*ShapeJavaScriptExclusionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule") + golang_proto.RegisterType((*ShapeJavaScriptExclusionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule") + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GlobalSpecType") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.http_loadbalancer.CreateSpecType") + golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.http_loadbalancer.CreateSpecType") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.http_loadbalancer.ReplaceSpecType") + golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.http_loadbalancer.ReplaceSpecType") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GetSpecType") + golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GetSpecType") } -func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } -func (*ReplaceSpecType) ProtoMessage() {} -func (*ReplaceSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{89} +func init() { + proto.RegisterFile("ves.io/schema/views/http_loadbalancer/types.proto", fileDescriptor_6478b2bb990a4a3e) } -func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) +func init() { + golang_proto.RegisterFile("ves.io/schema/views/http_loadbalancer/types.proto", fileDescriptor_6478b2bb990a4a3e) } -func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err + +var fileDescriptor_6478b2bb990a4a3e = []byte{ + // 12192 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x5b, 0x70, 0x1b, 0x69, + 0x76, 0x1f, 0xce, 0x0f, 0x04, 0x40, 0xf0, 0x80, 0x04, 0x1b, 0x1f, 0x49, 0x11, 0xa2, 0x24, 0x0a, + 0x43, 0x8d, 0x46, 0x1a, 0x4d, 0x8b, 0x22, 0xc0, 0x3b, 0x67, 0x46, 0x33, 0x6c, 0x4a, 0x1a, 0x08, + 0xab, 0x0b, 0xa7, 0x49, 0x49, 0x73, 0xc7, 0x34, 0x81, 0x26, 0xd9, 0x12, 0x80, 0xc6, 0x74, 0x37, + 0x75, 0xb1, 0xff, 0x53, 0xd6, 0x5f, 0x7f, 0xff, 0x9d, 0xb5, 0x7c, 0x59, 0x7b, 0xf2, 0x10, 0xef, + 0x3e, 0xb8, 0x52, 0x76, 0xaa, 0xe2, 0x9a, 0x97, 0x24, 0xae, 0x72, 0x2a, 0x15, 0x68, 0x53, 0xcc, + 0x54, 0x39, 0xb5, 0x35, 0x49, 0x95, 0x59, 0xa9, 0x3c, 0x6c, 0x26, 0x89, 0xcb, 0xe6, 0x26, 0xe5, + 0xf5, 0xda, 0xa9, 0xda, 0x1a, 0xbf, 0xb8, 0xe6, 0xc1, 0x4e, 0x7d, 0x97, 0x6e, 0x74, 0x83, 0x0d, + 0xf0, 0x22, 0x6a, 0x26, 0xeb, 0xc5, 0x13, 0x89, 0xee, 0x73, 0xce, 0x77, 0xff, 0xce, 0x77, 0xce, + 0xf9, 0x7d, 0xa7, 0x21, 0x75, 0x57, 0x35, 0x47, 0x34, 0xfd, 0x9c, 0x99, 0x5f, 0x53, 0x4b, 0xca, + 0xb9, 0xbb, 0x9a, 0x7a, 0xcf, 0x3c, 0xb7, 0x66, 0x59, 0x95, 0x5c, 0x51, 0x57, 0x0a, 0xcb, 0x4a, + 0x51, 0x29, 0xe7, 0x55, 0xe3, 0x9c, 0xf5, 0xa0, 0xa2, 0x9a, 0x23, 0x15, 0x43, 0xb7, 0x74, 0x7c, + 0x92, 0xb1, 0x8c, 0x30, 0x96, 0x11, 0xca, 0x32, 0xb2, 0x8d, 0x65, 0xf0, 0xec, 0xaa, 0x66, 0xad, + 0xad, 0x2f, 0x8f, 0xe4, 0xf5, 0xd2, 0xb9, 0x55, 0x7d, 0x55, 0x3f, 0x47, 0xb9, 0x97, 0xd7, 0x57, + 0xe8, 0x2f, 0xfa, 0x83, 0xfe, 0xc7, 0xa4, 0x0e, 0x1e, 0x5f, 0xd5, 0xf5, 0xd5, 0xa2, 0x5a, 0xa3, + 0xb2, 0xb4, 0x92, 0x6a, 0x5a, 0x4a, 0xa9, 0xc2, 0x09, 0x86, 0xbd, 0x35, 0x55, 0x2a, 0x95, 0x1c, + 0xa9, 0x95, 0xbb, 0x6a, 0x83, 0x47, 0xbc, 0x34, 0x7a, 0xc5, 0xd2, 0xf4, 0xb2, 0xfd, 0x32, 0xe9, + 0x7d, 0x59, 0xd1, 0x8b, 0x5a, 0xfe, 0x81, 0x87, 0xfd, 0x05, 0x2f, 0x85, 0xa1, 0x58, 0x6a, 0xae, + 0xa8, 0x95, 0x34, 0xcb, 0xdb, 0x03, 0x83, 0xc7, 0xeb, 0xe8, 0xf4, 0x75, 0xcb, 0x5b, 0x8f, 0xb3, + 0x5e, 0x02, 0x53, 0x35, 0xee, 0x6a, 0x79, 0x35, 0xc7, 0x8a, 0xcc, 0x19, 0xeb, 0x45, 0x2f, 0xf9, + 0x61, 0x2f, 0xb9, 0xfb, 0xd5, 0xd1, 0xba, 0xf1, 0x51, 0x8a, 0x5a, 0x41, 0xb1, 0x54, 0xff, 0x26, + 0x91, 0xa1, 0xc8, 0x79, 0x1b, 0x3d, 0xe1, 0x37, 0xbe, 0x79, 0xbd, 0x54, 0xd2, 0xcb, 0xb9, 0x7b, + 0xca, 0x8a, 0xeb, 0xdf, 0x9c, 0xbb, 0xd8, 0x97, 0xfc, 0xd8, 0x74, 0x43, 0x5b, 0xd5, 0xca, 0xb9, + 0x8a, 0xae, 0x17, 0x3d, 0x75, 0x1c, 0xf3, 0x23, 0x76, 0x77, 0x5e, 0xce, 0xa7, 0xaf, 0x8f, 0xfb, + 0x31, 0x35, 0x19, 0x8c, 0xbb, 0x9a, 0x61, 0xad, 0x2b, 0xc5, 0xdc, 0x9a, 0x6e, 0x5a, 0x1e, 0xba, + 0xd1, 0xc6, 0x74, 0xb9, 0x42, 0xd9, 0xcc, 0x69, 0xe5, 0x15, 0xfd, 0x9c, 0xbe, 0x7c, 0x5b, 0xcd, + 0x5b, 0x8c, 0x63, 0xf8, 0x8f, 0xba, 0x20, 0xb6, 0x60, 0xe8, 0xf7, 0x1f, 0x2c, 0x3d, 0xa8, 0xa8, + 0x19, 0xcb, 0xaa, 0x98, 0xf8, 0x45, 0xe8, 0xa6, 0x33, 0xd8, 0x50, 0x0b, 0x9a, 0xa1, 0xe6, 0xad, + 0x04, 0x4a, 0xa2, 0xd3, 0x11, 0x29, 0xf8, 0xb7, 0x55, 0xd4, 0x26, 0x77, 0x91, 0x57, 0x32, 0x7f, + 0x83, 0x8f, 0x43, 0x44, 0x29, 0x14, 0x72, 0x6b, 0xa6, 0x65, 0x26, 0x02, 0x2e, 0xaa, 0x0e, 0xa5, + 0x50, 0xc8, 0x98, 0x96, 0x89, 0xdf, 0x85, 0x98, 0x55, 0x34, 0x73, 0x15, 0xc5, 0x50, 0x4a, 0xaa, + 0xa5, 0x1a, 0x66, 0xa2, 0x3d, 0x89, 0x4e, 0x47, 0xd3, 0xe2, 0x88, 0xdf, 0xc2, 0xb9, 0xa0, 0xdf, + 0x2b, 0x9b, 0x96, 0xa1, 0x2a, 0xa5, 0xa5, 0xa2, 0xb9, 0x40, 0x78, 0x4c, 0x52, 0x2d, 0x29, 0xb8, + 0x59, 0x45, 0x28, 0xd3, 0x26, 0x77, 0x5b, 0xfc, 0x31, 0x15, 0x85, 0xdf, 0x87, 0x1e, 0x22, 0x3c, + 0xaf, 0x1a, 0x16, 0x2b, 0xc1, 0x4c, 0x1c, 0xa2, 0xd2, 0xcf, 0xee, 0x24, 0xfd, 0xca, 0xe2, 0xbc, + 0x6a, 0x58, 0xbc, 0x08, 0x8f, 0x78, 0xf2, 0x9c, 0x3d, 0xc6, 0xf3, 0x10, 0x2b, 0xa8, 0x2b, 0xca, + 0x7a, 0xd1, 0xca, 0xad, 0xa9, 0x4a, 0x41, 0x35, 0x12, 0x21, 0x2a, 0xbd, 0xaf, 0x4e, 0xfa, 0xc5, + 0x52, 0xc5, 0x7a, 0x20, 0x05, 0x37, 0x88, 0x10, 0x24, 0x77, 0x73, 0x9e, 0x0c, 0x65, 0xc1, 0x29, + 0x88, 0x92, 0x19, 0xaf, 0x1a, 0xb9, 0xb2, 0x52, 0x52, 0x13, 0xe1, 0x24, 0x3a, 0xdd, 0x29, 0xc5, + 0x08, 0xed, 0xbf, 0xfd, 0xcb, 0x8d, 0xf6, 0x90, 0xd1, 0x9e, 0xf8, 0xa7, 0xaf, 0x65, 0x90, 0x0c, + 0x8c, 0xe8, 0x9a, 0x52, 0x52, 0xf1, 0x79, 0xc0, 0x4a, 0xa5, 0xa2, 0x96, 0x0b, 0x39, 0x37, 0x67, + 0x47, 0x03, 0x4e, 0x81, 0xd1, 0x2e, 0xd6, 0xf8, 0x5f, 0x83, 0xae, 0x8a, 0x62, 0x9a, 0x39, 0x6b, + 0xcd, 0xd0, 0xd7, 0x57, 0xd7, 0x12, 0x91, 0x5d, 0xd4, 0x3a, 0x4a, 0x38, 0x96, 0x18, 0x03, 0x5e, + 0x80, 0x7e, 0xb5, 0xac, 0x2c, 0x17, 0xd5, 0x5c, 0x45, 0xb1, 0xd6, 0x72, 0x65, 0xdd, 0x28, 0x29, + 0x45, 0xed, 0x17, 0xd4, 0x04, 0xec, 0x28, 0x29, 0x20, 0xf7, 0x32, 0xd6, 0x05, 0xc5, 0x5a, 0xbb, + 0x66, 0x33, 0x62, 0x19, 0x0e, 0x15, 0x34, 0xd3, 0x4f, 0x64, 0x74, 0x17, 0x22, 0xfb, 0x38, 0xaf, + 0x57, 0xe6, 0x69, 0x08, 0x56, 0x74, 0xc3, 0x4a, 0xf4, 0x24, 0xd1, 0xe9, 0x6e, 0x09, 0x7f, 0x51, + 0x45, 0xed, 0xe3, 0xe3, 0x63, 0xa4, 0x6f, 0xc2, 0x67, 0x82, 0x89, 0xbf, 0xff, 0xfb, 0xf6, 0x4c, + 0xbb, 0x4c, 0x29, 0x70, 0x16, 0xa2, 0xe4, 0x6f, 0xce, 0x50, 0xca, 0xab, 0xaa, 0x99, 0x38, 0x4c, + 0x7b, 0xf2, 0x94, 0xdd, 0x8b, 0x0f, 0x83, 0xfc, 0xbf, 0xcd, 0xe0, 0xeb, 0xe4, 0xbf, 0xa0, 0x11, + 0x10, 0xec, 0x2e, 0xfe, 0x61, 0x10, 0x65, 0xda, 0x65, 0x20, 0xdc, 0x32, 0x65, 0xc6, 0x37, 0x21, + 0x51, 0xd6, 0xcb, 0x39, 0x7b, 0x62, 0xb8, 0x77, 0xf9, 0x44, 0x7c, 0xc7, 0xb6, 0x04, 0xe5, 0x43, + 0x65, 0xbd, 0x7c, 0x81, 0x31, 0x5f, 0x71, 0xf1, 0xe2, 0xeb, 0xd0, 0xe7, 0x2b, 0x13, 0xef, 0x42, + 0x66, 0x6f, 0xc1, 0x47, 0xe0, 0x47, 0x30, 0xc8, 0x66, 0x6d, 0xce, 0x32, 0x94, 0xb2, 0xb9, 0x42, + 0xfa, 0x8d, 0x6c, 0x86, 0x74, 0x6b, 0x4b, 0xf4, 0x52, 0xb1, 0xa7, 0xea, 0xc4, 0xb2, 0x39, 0xbb, + 0xe4, 0xa1, 0xa7, 0x0b, 0x10, 0x48, 0x49, 0x3f, 0xae, 0x22, 0x94, 0x40, 0x72, 0x62, 0xad, 0x01, + 0x15, 0x7e, 0x1b, 0x06, 0xf2, 0x7a, 0xb9, 0xac, 0xe6, 0x69, 0x39, 0x5a, 0xa1, 0xa8, 0xe6, 0x88, + 0xe2, 0xd2, 0xd7, 0xad, 0x44, 0x1f, 0x1d, 0xa4, 0xe7, 0x88, 0x98, 0x2f, 0xaa, 0x28, 0x9c, 0x4a, + 0x8f, 0x8e, 0x8e, 0x8e, 0x92, 0xad, 0xe2, 0xdb, 0x4f, 0x50, 0x9b, 0x3d, 0x66, 0x1b, 0x7f, 0xf2, + 0xbc, 0xdc, 0x5f, 0x93, 0x70, 0xb9, 0x50, 0x54, 0x97, 0x18, 0x3f, 0xd6, 0xa0, 0x9f, 0xee, 0x49, + 0x74, 0xd3, 0xca, 0xeb, 0x45, 0x7b, 0x67, 0x4f, 0x0c, 0xd0, 0x86, 0x9c, 0xdb, 0xb6, 0xe0, 0x6b, + 0x1b, 0xdf, 0x08, 0xd9, 0xd5, 0x16, 0x38, 0xdf, 0x75, 0xc6, 0x26, 0x05, 0xff, 0xe5, 0x13, 0x84, + 0xe4, 0xde, 0xb5, 0xed, 0xaf, 0x66, 0x13, 0x5f, 0x9e, 0xef, 0x4f, 0x89, 0x69, 0x31, 0x3d, 0x2e, + 0x8e, 0x89, 0xe3, 0xe2, 0x8c, 0x98, 0x9a, 0x14, 0x53, 0x33, 0x62, 0x7a, 0x54, 0x7a, 0x09, 0x06, + 0xec, 0xfd, 0x46, 0x5b, 0xd1, 0xf2, 0x8a, 0xa5, 0x9a, 0xb9, 0xfc, 0x9a, 0xae, 0xe5, 0x55, 0x2c, + 0x6c, 0x54, 0xd1, 0xa1, 0xcd, 0x2a, 0xea, 0xdf, 0xaa, 0xa2, 0x60, 0x3a, 0x2d, 0x8e, 0x49, 0xe7, + 0xa0, 0x8f, 0x2f, 0x5f, 0x3e, 0x0c, 0x9c, 0x72, 0x60, 0xa3, 0x8a, 0x42, 0x3f, 0xa8, 0x22, 0xb4, + 0x59, 0x45, 0xc1, 0xad, 0x2a, 0xea, 0x98, 0x10, 0x27, 0xc5, 0x29, 0x71, 0x5a, 0x1a, 0x81, 0x7e, + 0xef, 0xda, 0xb0, 0x39, 0xfa, 0x37, 0xaa, 0x08, 0x38, 0x47, 0xe7, 0x56, 0x15, 0x85, 0x52, 0xa3, + 0x62, 0x2a, 0x25, 0x25, 0xf9, 0xac, 0xe6, 0x54, 0xf1, 0x8d, 0x2a, 0xea, 0xd9, 0xac, 0xa2, 0x04, + 0xa5, 0x98, 0x10, 0xd3, 0x13, 0xd2, 0x19, 0x88, 0x3b, 0x73, 0x6a, 0xd9, 0x2d, 0x2d, 0xce, 0xa5, + 0x09, 0x94, 0x76, 0x4a, 0x4c, 0x4d, 0x67, 0x83, 0x91, 0x7e, 0xe1, 0x50, 0x36, 0x18, 0x09, 0x0a, + 0xa1, 0x6c, 0x30, 0xd2, 0x29, 0x40, 0x36, 0x18, 0xe9, 0x12, 0xba, 0xb3, 0xc1, 0x48, 0xb7, 0x10, + 0xcb, 0x06, 0x23, 0x31, 0xa1, 0x27, 0x1b, 0x8c, 0x24, 0x84, 0xc3, 0xd9, 0x60, 0x44, 0x10, 0xe2, + 0xc3, 0x0f, 0x03, 0xd0, 0xed, 0xd1, 0x1b, 0x78, 0x12, 0xfa, 0x88, 0x8a, 0xb9, 0xab, 0x17, 0x2d, + 0xd5, 0x30, 0x94, 0x5c, 0x49, 0x29, 0x2b, 0xab, 0x6a, 0xc1, 0xa3, 0x3d, 0x70, 0xa1, 0x6c, 0xde, + 0xe4, 0x04, 0x57, 0xd9, 0x7b, 0x7c, 0x8a, 0xaf, 0xe3, 0x00, 0x9d, 0x22, 0xf1, 0x2f, 0xaa, 0x28, + 0x30, 0x3d, 0xea, 0x5e, 0xc6, 0x6d, 0xfe, 0xcb, 0x38, 0xb8, 0xb7, 0x65, 0xdc, 0xe6, 0x5e, 0xc6, + 0xb3, 0xe1, 0x2f, 0xcf, 0xb7, 0xa7, 0xc4, 0x31, 0x69, 0xdc, 0xdb, 0x89, 0x27, 0x37, 0xaa, 0x28, + 0xb0, 0x59, 0x45, 0xed, 0x5b, 0x55, 0xd4, 0x9e, 0x16, 0xc7, 0x1f, 0x3f, 0x41, 0x18, 0x84, 0x7c, + 0xa1, 0xec, 0x59, 0x94, 0xd9, 0x60, 0xa4, 0x5d, 0x08, 0x0e, 0x7f, 0xd1, 0x05, 0x03, 0x5e, 0xd5, + 0x39, 0xb7, 0x6e, 0xe9, 0x54, 0xb1, 0x1c, 0xa8, 0x0e, 0x9d, 0x07, 0xa0, 0xd3, 0x4e, 0x2f, 0xaf, + 0x68, 0xab, 0x5c, 0x7f, 0x0e, 0xf9, 0x6a, 0xb8, 0xa5, 0xa2, 0x39, 0x4f, 0xa9, 0xa4, 0xe0, 0x4f, + 0xab, 0x08, 0xc9, 0x9d, 0x96, 0xfd, 0x00, 0x4f, 0x40, 0x47, 0x59, 0xcf, 0x95, 0xac, 0xa2, 0xb9, + 0x0b, 0x2d, 0xd6, 0x26, 0x87, 0xcb, 0xfa, 0x55, 0xab, 0x48, 0xb6, 0xbb, 0xc8, 0xba, 0xa9, 0x32, + 0xbe, 0x30, 0xe5, 0x1b, 0xdb, 0x59, 0x73, 0xdf, 0x64, 0x07, 0x33, 0x4d, 0x2f, 0xcf, 0xeb, 0x65, + 0x4b, 0xbd, 0x6f, 0x39, 0x62, 0x3b, 0xd6, 0x4d, 0x95, 0xca, 0xdd, 0xae, 0x5b, 0x23, 0x4f, 0xad, + 0x5b, 0x3b, 0xf7, 0xad, 0x5b, 0x61, 0xdf, 0xba, 0x35, 0x7a, 0x60, 0xba, 0xb5, 0xfb, 0xe0, 0x75, + 0x6b, 0x6c, 0xdf, 0xba, 0x55, 0xe4, 0x6b, 0x12, 0xd3, 0x35, 0x79, 0x88, 0xeb, 0x56, 0x32, 0x2d, + 0x77, 0xa1, 0x5f, 0x07, 0x9f, 0x95, 0x7e, 0xed, 0x7b, 0x06, 0xfa, 0xb5, 0x7f, 0xbf, 0xfa, 0x75, + 0xbd, 0xa9, 0x7e, 0x3d, 0xb4, 0x37, 0xfd, 0x1a, 0xb3, 0xf5, 0x2b, 0x51, 0x4b, 0xfb, 0xd5, 0xb1, + 0x03, 0xcf, 0x4a, 0xc7, 0x26, 0x0e, 0x5c, 0xc7, 0x1e, 0xf9, 0xf2, 0x7c, 0x82, 0xea, 0xd8, 0x09, + 0xaa, 0x63, 0xa7, 0xc4, 0x54, 0x9a, 0xea, 0xd8, 0xb4, 0x98, 0x1e, 0x93, 0x86, 0x21, 0x5a, 0xa2, + 0x1b, 0x1e, 0xdb, 0x93, 0x7b, 0xeb, 0x14, 0x66, 0xfb, 0x84, 0x38, 0x29, 0xa5, 0x1a, 0x68, 0xd7, + 0xc3, 0x1b, 0x55, 0x14, 0xe1, 0xc4, 0x1d, 0x5b, 0x55, 0xd4, 0x39, 0x4d, 0x14, 0x38, 0xd5, 0x97, + 0x4d, 0xf5, 0x6b, 0x37, 0xe7, 0xe9, 0xa2, 0x1a, 0x71, 0x4c, 0x4c, 0x8d, 0xfb, 0xe9, 0x57, 0xbc, + 0x59, 0x45, 0x87, 0x29, 0xc5, 0xb4, 0x98, 0x9e, 0x6c, 0xac, 0x5f, 0xfb, 0xb8, 0xb4, 0x5e, 0x42, + 0x9b, 0x1e, 0x15, 0xd3, 0x29, 0x47, 0xb3, 0x76, 0x08, 0x11, 0x47, 0xb3, 0xf6, 0x08, 0x02, 0xd3, + 0xa6, 0xd9, 0x60, 0x24, 0x2e, 0xe0, 0x6c, 0x30, 0x72, 0x58, 0x18, 0xcc, 0x06, 0x23, 0xbd, 0x42, + 0xdf, 0xf0, 0x2f, 0x01, 0xce, 0x28, 0xe6, 0xda, 0x02, 0x35, 0x16, 0xaf, 0x68, 0xa6, 0x45, 0x47, + 0x5f, 0x83, 0xe8, 0x9a, 0x62, 0xae, 0x71, 0x1b, 0x32, 0x21, 0x24, 0xdb, 0x4f, 0x47, 0xd3, 0x27, + 0xea, 0x06, 0x86, 0x9a, 0xe0, 0x23, 0x35, 0x6e, 0x3a, 0xc3, 0x4e, 0x6c, 0xda, 0x9b, 0xdb, 0x27, + 0x28, 0x20, 0x44, 0xec, 0xff, 0x12, 0x68, 0xeb, 0xcf, 0xfe, 0xb8, 0x3d, 0xfc, 0xc9, 0x13, 0x14, + 0x10, 0x90, 0x0c, 0x6b, 0x0e, 0xd3, 0xf0, 0xef, 0x23, 0x10, 0xae, 0x6a, 0x86, 0xa1, 0x1b, 0x35, + 0x29, 0x78, 0x11, 0xa2, 0x2e, 0xc3, 0x97, 0x2a, 0xb5, 0x68, 0x7a, 0xd8, 0x57, 0x23, 0x5c, 0xa7, + 0x56, 0xa6, 0xac, 0xae, 0xb0, 0x09, 0xfe, 0xe9, 0xc7, 0x6e, 0x4e, 0x19, 0xd8, 0x8f, 0x05, 0x5d, + 0x2f, 0xe2, 0x59, 0xe8, 0xa8, 0xa8, 0x46, 0x5e, 0x2d, 0xb3, 0x33, 0x40, 0x34, 0x9d, 0xac, 0x13, + 0x78, 0xc9, 0x50, 0xe8, 0x64, 0x55, 0x8a, 0x0b, 0x8c, 0x4e, 0xb6, 0x19, 0x86, 0xff, 0xf8, 0x08, + 0x0c, 0xca, 0xa4, 0xbd, 0x8b, 0x5a, 0xa9, 0x52, 0x54, 0xe7, 0x0a, 0x77, 0xc9, 0xea, 0x2c, 0xf0, + 0x79, 0x86, 0x2f, 0x00, 0xe6, 0x46, 0xbd, 0xbb, 0xdb, 0x02, 0x8d, 0xd7, 0x7c, 0xa6, 0x4d, 0x16, + 0x18, 0x47, 0xad, 0xff, 0x70, 0x09, 0xfa, 0xcc, 0x8a, 0x9a, 0x27, 0x67, 0x3e, 0x8f, 0x1c, 0xa6, + 0x8a, 0x67, 0x46, 0x76, 0xe5, 0x03, 0x1a, 0xd9, 0x3e, 0x9c, 0x99, 0x36, 0x19, 0xdb, 0x82, 0x5d, + 0xc5, 0xcd, 0x42, 0xa4, 0x62, 0x68, 0xba, 0xa1, 0x59, 0x0f, 0xe8, 0x21, 0x27, 0xb6, 0x4d, 0xdb, + 0x93, 0x16, 0x6b, 0xe5, 0xd5, 0x05, 0x4e, 0x25, 0x3b, 0xf4, 0xf8, 0x9f, 0x21, 0x10, 0xd4, 0x72, + 0xa1, 0xa2, 0x6b, 0x65, 0x2b, 0x67, 0xae, 0x2f, 0x9b, 0xaa, 0x45, 0x14, 0x3e, 0x99, 0x26, 0x37, + 0x77, 0x59, 0xcf, 0xc6, 0xdd, 0x39, 0x72, 0x91, 0x4b, 0x5e, 0x64, 0x82, 0x2f, 0x96, 0x2d, 0xe3, + 0x81, 0xf4, 0x1c, 0x99, 0x59, 0xdf, 0x7b, 0x82, 0x82, 0x10, 0x68, 0x63, 0x33, 0xec, 0x7b, 0x28, + 0x20, 0x08, 0x74, 0x5e, 0x3d, 0x7e, 0x82, 0x02, 0x91, 0x36, 0xb9, 0x47, 0xf5, 0x32, 0xe2, 0x2b, + 0x2e, 0x9d, 0x65, 0xa8, 0x2b, 0xda, 0xfd, 0x9c, 0xa1, 0xde, 0x33, 0x34, 0x8b, 0x99, 0xb9, 0x8d, + 0xc6, 0x06, 0xd5, 0xb4, 0x15, 0x65, 0x92, 0x19, 0x0f, 0x9e, 0x82, 0x58, 0x9d, 0x94, 0x08, 0x53, + 0xe8, 0xb6, 0xc2, 0xa2, 0x6a, 0x28, 0x40, 0x0e, 0x10, 0x15, 0x0f, 0xe3, 0x1b, 0xd0, 0x6d, 0xa8, + 0xab, 0x6a, 0x8d, 0x4f, 0xf4, 0x9d, 0x7f, 0x32, 0xa1, 0xb9, 0xaa, 0x58, 0xf9, 0x35, 0xce, 0x98, + 0x41, 0x72, 0x17, 0x65, 0xb4, 0x05, 0xdd, 0x85, 0x43, 0x86, 0xfa, 0xd1, 0xba, 0x6a, 0xda, 0xc7, + 0x19, 0x33, 0x67, 0xe9, 0x39, 0xa5, 0x50, 0x48, 0x74, 0xd2, 0xbe, 0x7f, 0xc9, 0x57, 0x11, 0x5c, + 0x55, 0xca, 0x5a, 0x65, 0xbd, 0x48, 0x37, 0x77, 0xd6, 0xc5, 0x74, 0xad, 0xf4, 0x39, 0xcb, 0x34, + 0x59, 0x5b, 0xa6, 0x72, 0x2f, 0x2f, 0x80, 0xb1, 0x9a, 0x4b, 0xfa, 0x5c, 0xa1, 0x80, 0x3f, 0x84, + 0xc3, 0x3e, 0xe5, 0x1a, 0x6a, 0x49, 0xbf, 0x4b, 0x4e, 0x35, 0xed, 0xa7, 0x3b, 0xa5, 0x93, 0x44, + 0x46, 0xd7, 0x27, 0xa8, 0x73, 0xb8, 0xc3, 0x20, 0x27, 0xbf, 0x87, 0x01, 0x5f, 0xf1, 0x87, 0xea, + 0xc5, 0xcb, 0x54, 0x08, 0xbe, 0x0f, 0x03, 0x86, 0x6a, 0x56, 0xf4, 0xb2, 0xa9, 0xd6, 0x37, 0x2d, + 0x7a, 0x50, 0x4d, 0xeb, 0xb3, 0x4b, 0xf0, 0xb4, 0x6d, 0x19, 0x06, 0xfd, 0x4a, 0xe6, 0x8d, 0xeb, + 0xda, 0x4b, 0xe3, 0x06, 0xb6, 0x15, 0xc0, 0x5b, 0x47, 0x6c, 0x16, 0x3e, 0x0f, 0x8b, 0x7a, 0x9e, + 0xe9, 0x6f, 0xd2, 0xb4, 0x6e, 0x8f, 0xcd, 0xc2, 0x28, 0xae, 0x70, 0x02, 0x52, 0xb7, 0x97, 0xa1, + 0x5b, 0x2b, 0xaf, 0xa9, 0x64, 0xec, 0x0b, 0xb9, 0x7b, 0xca, 0x0a, 0x75, 0x42, 0x34, 0x9a, 0xb6, + 0x01, 0xb9, 0xcb, 0x21, 0xbe, 0xa5, 0xac, 0xe0, 0xb7, 0xa0, 0x4b, 0xa9, 0x54, 0x72, 0x2b, 0x9a, + 0xa1, 0xde, 0x53, 0x8a, 0xc5, 0xc4, 0xf8, 0xae, 0x77, 0xd1, 0x9e, 0x4f, 0x3f, 0xf6, 0xb0, 0x66, + 0x02, 0x72, 0x54, 0xa9, 0x54, 0x2e, 0xf1, 0x9f, 0x78, 0x0a, 0xa2, 0x76, 0x73, 0x48, 0xa5, 0x5e, + 0x6c, 0x5a, 0x29, 0xe0, 0xa4, 0xa4, 0x4a, 0xaf, 0x43, 0x34, 0xaf, 0x1b, 0xa6, 0xbd, 0xb1, 0x31, + 0xa7, 0xc3, 0xe1, 0x3a, 0xc6, 0x79, 0xdd, 0x30, 0xd9, 0x16, 0xc5, 0x3c, 0x66, 0x32, 0xe4, 0x9d, + 0x27, 0x54, 0x82, 0x69, 0xac, 0xd8, 0x12, 0x5e, 0xf2, 0x97, 0x60, 0x1a, 0x2b, 0x75, 0x12, 0x9c, + 0x27, 0x78, 0x06, 0xba, 0xec, 0xca, 0x9b, 0x95, 0xc2, 0x83, 0x66, 0xa7, 0xbd, 0x4c, 0xbb, 0x6c, + 0x37, 0x74, 0xb1, 0x52, 0x78, 0x40, 0xda, 0xcd, 0x0f, 0xd5, 0x94, 0xb3, 0xbf, 0x29, 0x27, 0x30, + 0x52, 0xca, 0xf8, 0x26, 0x1c, 0x76, 0x3a, 0x4c, 0x5d, 0xce, 0x99, 0x7a, 0xfe, 0x8e, 0x6a, 0xd9, + 0x96, 0xd6, 0x40, 0x13, 0x31, 0x41, 0xd9, 0xde, 0xc0, 0x6e, 0xa9, 0xcb, 0x8b, 0x94, 0x8d, 0x1b, + 0x5a, 0x37, 0x21, 0xbe, 0x5d, 0x14, 0x3b, 0x41, 0x9d, 0xf6, 0x55, 0xd4, 0xb7, 0xd4, 0x65, 0xd3, + 0x25, 0x80, 0x2a, 0x86, 0xa0, 0xdc, 0x73, 0xaf, 0x4e, 0x6e, 0xa6, 0x76, 0x80, 0x35, 0x54, 0xcb, + 0x78, 0x60, 0xf7, 0xf4, 0x60, 0x93, 0x5a, 0x86, 0x64, 0xcc, 0x79, 0x64, 0xc2, 0xc2, 0x3b, 0xfa, + 0x3c, 0xf4, 0x94, 0x75, 0xaf, 0x90, 0x33, 0x4d, 0x85, 0x74, 0x97, 0x75, 0x37, 0xff, 0x65, 0xe8, + 0xf2, 0x30, 0x1f, 0xf1, 0xb5, 0x48, 0x5d, 0x1c, 0x2e, 0x1f, 0x6e, 0x48, 0x8e, 0x1a, 0x2e, 0x51, + 0x93, 0xd0, 0x61, 0x9f, 0x5e, 0x8f, 0xd2, 0xd3, 0xeb, 0xd1, 0x2f, 0xaa, 0x28, 0x34, 0xd6, 0xe8, + 0xe0, 0x6a, 0x13, 0xe3, 0x39, 0xe0, 0x5a, 0x3a, 0xb7, 0xbc, 0xbe, 0xb2, 0xa2, 0x1a, 0x5a, 0x79, + 0x35, 0x31, 0xd4, 0xa4, 0x0d, 0x61, 0xb9, 0x87, 0xd1, 0x4b, 0x36, 0x39, 0xbe, 0x04, 0xdd, 0x8c, + 0xd7, 0x6e, 0xc6, 0x71, 0xca, 0x7f, 0xbc, 0x8e, 0x9f, 0x31, 0xb8, 0x86, 0x26, 0x2c, 0x77, 0x31, + 0x3e, 0xde, 0x84, 0x79, 0x88, 0xdb, 0x53, 0xa8, 0x44, 0x8f, 0x4b, 0xa4, 0x2e, 0xcf, 0x35, 0xa9, + 0x4b, 0x87, 0x2c, 0x70, 0x86, 0xab, 0x36, 0x3d, 0xfe, 0x00, 0xba, 0x19, 0xb3, 0x5d, 0x99, 0x61, + 0x2a, 0x60, 0x6a, 0x97, 0x2a, 0xbb, 0xfe, 0x9c, 0x96, 0xe9, 0x90, 0xbb, 0x4a, 0xae, 0x67, 0xf8, + 0x35, 0xe8, 0x21, 0xdd, 0xae, 0xe4, 0xad, 0x5c, 0xbe, 0xb8, 0x6e, 0x5a, 0xaa, 0x91, 0x78, 0xbe, + 0x49, 0x15, 0x23, 0x72, 0x8c, 0x93, 0xcf, 0x33, 0x6a, 0xfc, 0x2d, 0x38, 0x54, 0xd0, 0x73, 0x65, + 0x9d, 0x4d, 0x3e, 0xb7, 0x9c, 0x93, 0x4d, 0xe5, 0xf4, 0x16, 0xf4, 0x6b, 0x3a, 0x9d, 0x7d, 0x2e, + 0x61, 0x06, 0x9c, 0xa9, 0xed, 0x9e, 0xcb, 0xba, 0x45, 0xac, 0x3d, 0x95, 0x6c, 0xf3, 0xb7, 0x95, + 0xbb, 0x8a, 0x99, 0x37, 0xb4, 0x8a, 0x95, 0xd3, 0xca, 0xb7, 0x99, 0x85, 0x92, 0x38, 0xd5, 0xa4, + 0x80, 0x4e, 0xf9, 0x05, 0x47, 0x92, 0xa4, 0x5b, 0x17, 0x98, 0x9c, 0xac, 0x23, 0xe6, 0xb2, 0x2d, + 0x05, 0xff, 0xbf, 0x08, 0x92, 0x3b, 0x16, 0x75, 0x9a, 0x16, 0x35, 0xe9, 0xbb, 0x4c, 0x9b, 0x8a, + 0xa7, 0x9d, 0xde, 0x29, 0x1f, 0x5b, 0x6e, 0x46, 0x34, 0x28, 0x41, 0x9f, 0xdf, 0x09, 0x0a, 0x0b, + 0xd0, 0x7e, 0x47, 0x7d, 0x40, 0x4f, 0xd3, 0x9d, 0x32, 0xf9, 0x17, 0xf7, 0x41, 0xe8, 0xae, 0x52, + 0x5c, 0x57, 0xe9, 0x51, 0xb5, 0x53, 0x66, 0x3f, 0x66, 0x03, 0xd3, 0x68, 0xf6, 0x27, 0xe8, 0xb3, + 0x2a, 0xfa, 0x5f, 0x08, 0x8e, 0xc3, 0x21, 0x62, 0x8e, 0x26, 0x25, 0x3a, 0x07, 0xb4, 0xf2, 0x6a, + 0x72, 0x5e, 0x2f, 0x5b, 0x86, 0x5e, 0xc4, 0xa1, 0x94, 0x38, 0x2e, 0x4e, 0xc0, 0x28, 0x1c, 0x93, + 0x99, 0x4a, 0x3f, 0x27, 0x73, 0xed, 0x97, 0x74, 0x6b, 0x65, 0xdc, 0x33, 0x69, 0x9b, 0x46, 0xd4, + 0xfa, 0x1a, 0x83, 0x3e, 0x88, 0x2c, 0xaa, 0xf9, 0x75, 0x7a, 0x8e, 0x8c, 0xa4, 0xc6, 0xc5, 0xd4, + 0xb4, 0x38, 0x3e, 0x06, 0x83, 0x10, 0xb7, 0xad, 0xb7, 0xe4, 0x8d, 0xca, 0xaa, 0xa1, 0x14, 0x54, + 0x13, 0x87, 0xa8, 0xb1, 0x06, 0xcf, 0x43, 0xff, 0x55, 0xcd, 0xcc, 0xab, 0xc5, 0xa2, 0x52, 0x56, + 0xf5, 0x75, 0x33, 0x69, 0x9f, 0xbb, 0xa3, 0xe9, 0x09, 0x31, 0x3d, 0x2d, 0xa6, 0x67, 0xc4, 0xb1, + 0x34, 0x4c, 0x43, 0x5a, 0xd2, 0xad, 0x24, 0xef, 0x98, 0xe4, 0x0b, 0x49, 0x59, 0x33, 0xef, 0x24, + 0x99, 0xfb, 0xaf, 0xa4, 0x96, 0xad, 0x64, 0xad, 0xaf, 0x92, 0xb5, 0x01, 0x0b, 0x8c, 0x4d, 0x4b, + 0x27, 0x01, 0xbb, 0xce, 0xdb, 0xb6, 0x85, 0xd5, 0xc3, 0x9d, 0x74, 0x88, 0x39, 0xe9, 0xc6, 0xa4, + 0xe7, 0x21, 0xc6, 0x0f, 0x70, 0x36, 0x09, 0xde, 0xa8, 0xa2, 0x8e, 0xcd, 0x2a, 0x0a, 0x6f, 0x55, + 0x51, 0x78, 0x4a, 0x9c, 0x16, 0xc7, 0xc7, 0xa5, 0x17, 0x00, 0xee, 0x29, 0x2b, 0x36, 0x45, 0x82, + 0xbb, 0x4b, 0x63, 0x5b, 0x55, 0x14, 0x49, 0x4d, 0x88, 0x13, 0x69, 0x71, 0x3c, 0xf5, 0xd3, 0x2a, + 0x6a, 0x23, 0x76, 0x1f, 0xd1, 0x22, 0x6e, 0xbb, 0xaf, 0xcf, 0x63, 0xcb, 0x49, 0x27, 0x41, 0xb8, + 0x67, 0x6f, 0xda, 0x6e, 0xb2, 0x81, 0xcd, 0x2a, 0x3a, 0x44, 0xc9, 0xc6, 0xc4, 0xf4, 0xb8, 0xf4, + 0x12, 0xf4, 0xba, 0xf7, 0x49, 0x9b, 0xb2, 0x6f, 0xa3, 0x8a, 0x06, 0xb9, 0x21, 0x19, 0x49, 0x4f, + 0x8a, 0xe3, 0x69, 0x31, 0x3d, 0x25, 0x0d, 0x3b, 0xdb, 0x91, 0x4b, 0xe0, 0xd0, 0x66, 0x15, 0x1d, + 0xdb, 0xa2, 0x3b, 0xa2, 0x38, 0x46, 0xcb, 0x75, 0xb6, 0x18, 0x37, 0x19, 0x39, 0x81, 0x27, 0x29, + 0xd9, 0x98, 0x38, 0x36, 0x2e, 0x89, 0x70, 0x88, 0x2f, 0xce, 0xda, 0x62, 0xad, 0x75, 0xcb, 0xf3, + 0x9b, 0x55, 0x74, 0x82, 0x74, 0xcb, 0xd8, 0xa4, 0x98, 0x1c, 0x9b, 0x92, 0x5e, 0x81, 0x53, 0x3b, + 0xad, 0x0b, 0x77, 0x59, 0xa7, 0x36, 0xab, 0xe8, 0x05, 0x5a, 0xd6, 0x8c, 0x38, 0x3e, 0x9a, 0x0d, + 0x46, 0x90, 0x10, 0xc8, 0x06, 0x23, 0x61, 0xa1, 0xc3, 0x71, 0x12, 0xbb, 0x0d, 0xda, 0x5e, 0xa1, + 0x2f, 0x1b, 0x8c, 0x1c, 0x12, 0x06, 0x1c, 0xe3, 0xf6, 0x98, 0x30, 0x94, 0x0d, 0x46, 0x92, 0xc2, + 0x73, 0xd9, 0x60, 0xe4, 0x84, 0xf0, 0x7c, 0x36, 0x18, 0x79, 0x41, 0x38, 0x35, 0xfc, 0x3b, 0xed, + 0xf0, 0x3c, 0x35, 0x3c, 0xc8, 0x4a, 0x62, 0xc6, 0xc7, 0x2d, 0xcd, 0x5a, 0xe3, 0x9e, 0x9c, 0xeb, + 0x6e, 0x63, 0x31, 0x4a, 0xf7, 0xbf, 0x92, 0x6a, 0xad, 0xe9, 0xcc, 0xb9, 0x1c, 0xdb, 0x76, 0xce, + 0xc8, 0x58, 0x56, 0xe5, 0x2a, 0x25, 0x90, 0x61, 0xcd, 0xf9, 0x1f, 0x4f, 0x43, 0xb0, 0xa2, 0x58, + 0x6b, 0xdc, 0xfe, 0xab, 0x57, 0x58, 0x0b, 0x8a, 0xb5, 0x46, 0x0f, 0xf9, 0xaa, 0xc1, 0x14, 0x16, + 0x75, 0xa1, 0x52, 0x0e, 0x2c, 0x41, 0x5c, 0x59, 0xb7, 0x74, 0x16, 0x48, 0xb5, 0x8d, 0x85, 0x60, + 0x53, 0x33, 0xb2, 0x87, 0x30, 0x64, 0x74, 0xd3, 0xb2, 0x6d, 0x84, 0x34, 0x74, 0x79, 0xd8, 0x43, + 0xd4, 0x46, 0xe9, 0xb6, 0x6d, 0x94, 0xa0, 0x11, 0x58, 0x43, 0x99, 0x36, 0x39, 0xba, 0xe6, 0xe2, + 0xc9, 0xd4, 0xce, 0xa7, 0x1e, 0xde, 0x70, 0xd3, 0xa2, 0xed, 0x13, 0xab, 0xab, 0xf4, 0xd9, 0xc8, + 0x97, 0xe7, 0x43, 0x29, 0x91, 0xac, 0x96, 0xd3, 0xd0, 0xeb, 0x96, 0xc5, 0x23, 0xa7, 0x74, 0x70, + 0x83, 0xdc, 0xf5, 0x1d, 0x1a, 0x17, 0x27, 0xc4, 0x49, 0xee, 0xe6, 0xfe, 0xb5, 0x30, 0xf4, 0xd4, + 0x0d, 0x8d, 0xd3, 0x93, 0x68, 0xcf, 0x3d, 0x59, 0x37, 0x7e, 0x81, 0xbd, 0x8c, 0x5f, 0x11, 0xba, + 0x5c, 0x3e, 0x04, 0x33, 0xd1, 0x4e, 0x0d, 0x90, 0x17, 0xfd, 0x0f, 0xce, 0xce, 0x94, 0x21, 0xf3, + 0xe8, 0x96, 0xaa, 0xad, 0xae, 0x59, 0xd2, 0x90, 0x63, 0x1d, 0x08, 0xf6, 0x7f, 0x11, 0xe4, 0xb2, + 0x13, 0xa2, 0x35, 0xaf, 0x84, 0xe9, 0x3f, 0xe6, 0xa1, 0xa7, 0x1b, 0xf3, 0xf0, 0x53, 0x8c, 0x79, + 0xc7, 0x5e, 0xc7, 0x1c, 0x2f, 0x40, 0x07, 0x37, 0x9c, 0xb8, 0x19, 0x9a, 0x6c, 0x60, 0xab, 0xd5, + 0x86, 0xaa, 0x6f, 0x7b, 0x0f, 0x25, 0x90, 0x6c, 0x8b, 0xc1, 0x97, 0x89, 0xdd, 0x93, 0xd7, 0x4b, + 0x64, 0x03, 0xa2, 0x0e, 0x62, 0xf0, 0x9f, 0x00, 0xba, 0x61, 0x6d, 0x9f, 0x00, 0x5d, 0x36, 0x2b, + 0x79, 0x8d, 0x0d, 0x10, 0x14, 0xee, 0x5e, 0x70, 0x1c, 0x8d, 0x2c, 0x06, 0x30, 0xf7, 0xd4, 0x8e, + 0x0a, 0x6e, 0x5d, 0xf4, 0x28, 0xde, 0xc7, 0xb3, 0xf1, 0x2f, 0xcf, 0xc7, 0xd2, 0x62, 0x8a, 0xe9, + 0xbd, 0x31, 0x71, 0x5c, 0x9c, 0x6e, 0xb6, 0x1a, 0x42, 0xdc, 0xe1, 0x18, 0xa2, 0x11, 0x3a, 0xe6, + 0xc1, 0x1b, 0xfe, 0xfb, 0x00, 0xc4, 0x9d, 0xd5, 0xe0, 0xc4, 0x70, 0xbe, 0x99, 0xf5, 0x70, 0x19, + 0x62, 0xf4, 0x6c, 0x52, 0x8b, 0x32, 0xb5, 0xfb, 0x9a, 0x92, 0xec, 0x00, 0x43, 0x6b, 0x6d, 0xd7, + 0x58, 0xee, 0x36, 0xdc, 0x3f, 0xdd, 0x53, 0x25, 0xf8, 0x8c, 0xa6, 0x4a, 0x68, 0xbf, 0x53, 0x65, + 0xb6, 0xeb, 0xcb, 0xf3, 0x9d, 0x64, 0xd8, 0xc8, 0xae, 0x34, 0x36, 0xfc, 0xbb, 0xed, 0x30, 0xe0, + 0x8c, 0xc0, 0x05, 0xd6, 0x1a, 0x7e, 0xc0, 0xf9, 0x86, 0xc6, 0x61, 0x19, 0xfa, 0xd9, 0x38, 0xb0, + 0xce, 0xcc, 0xd9, 0xde, 0x06, 0x3e, 0x1c, 0xa7, 0x1b, 0x0f, 0x87, 0xb7, 0xfa, 0x7c, 0xda, 0xf6, + 0x1a, 0xdb, 0x5f, 0xfd, 0x2c, 0x0d, 0x90, 0x0a, 0x7d, 0xce, 0xf8, 0xcc, 0xaf, 0x9b, 0x96, 0x5e, + 0xa2, 0x3f, 0xf1, 0x55, 0xe8, 0xb4, 0xa7, 0xeb, 0xca, 0x1e, 0x5c, 0xc7, 0x5d, 0x9f, 0x7e, 0x1c, + 0xa2, 0x7c, 0x0f, 0x9f, 0x20, 0x24, 0x47, 0xf8, 0xbc, 0x5d, 0x19, 0xfe, 0x8d, 0x18, 0x74, 0x3a, + 0xe5, 0xe0, 0x77, 0xa1, 0xcb, 0xa4, 0x5b, 0x41, 0x8e, 0x12, 0x70, 0xf9, 0x93, 0x7b, 0xd9, 0x4a, + 0x6a, 0xfa, 0x8d, 0x6c, 0xc9, 0x4c, 0x1a, 0xab, 0xb9, 0x42, 0x0e, 0x98, 0xf6, 0xe0, 0x52, 0xf1, + 0xec, 0x08, 0x31, 0xbd, 0x57, 0xf1, 0xf6, 0x7a, 0xcb, 0xb4, 0xc9, 0xdd, 0xb6, 0x44, 0x56, 0x84, + 0x05, 0xfd, 0x75, 0xb3, 0x87, 0x97, 0xc4, 0xe6, 0xd0, 0xf9, 0xbd, 0x96, 0xe4, 0x9d, 0x3e, 0x99, + 0x36, 0xb9, 0xb7, 0xe0, 0x79, 0xc2, 0x4a, 0x2d, 0x41, 0x6f, 0x9e, 0x8e, 0x10, 0x2b, 0x2c, 0xc7, + 0xa0, 0x61, 0xfc, 0x64, 0xf3, 0xf2, 0x5e, 0xcb, 0x74, 0x0d, 0x76, 0xa6, 0x4d, 0x8e, 0xe7, 0x6b, + 0x3f, 0xd9, 0x88, 0xce, 0xfe, 0x11, 0x7c, 0x56, 0x45, 0xbd, 0x10, 0x07, 0xa0, 0x4f, 0x93, 0x74, + 0xe4, 0xd0, 0xc4, 0x69, 0xf4, 0x79, 0x15, 0x7d, 0x17, 0xe0, 0xb7, 0x11, 0x04, 0xc9, 0xa3, 0x33, + 0xdf, 0x46, 0xf0, 0x31, 0x1c, 0xf2, 0x8e, 0x68, 0x3a, 0xcc, 0xc6, 0x06, 0x06, 0xeb, 0x07, 0x23, + 0x1d, 0xb1, 0xbb, 0x15, 0x4e, 0x37, 0xe8, 0xc5, 0x74, 0x0f, 0xeb, 0x8f, 0xa4, 0xdd, 0x7c, 0x38, + 0xe6, 0xdb, 0xf2, 0x74, 0x98, 0xb5, 0x01, 0x77, 0xdc, 0x28, 0xdf, 0x29, 0xeb, 0xf7, 0xca, 0xf0, + 0xa8, 0x13, 0xa0, 0x06, 0x39, 0x93, 0xff, 0x26, 0x02, 0x2f, 0xe1, 0x84, 0xbb, 0x5e, 0x23, 0xae, + 0x6d, 0x63, 0x30, 0x9a, 0x59, 0x5a, 0x5a, 0x48, 0xb2, 0x6d, 0x21, 0x1d, 0x48, 0x22, 0x38, 0x55, + 0x47, 0x4c, 0xf6, 0x9a, 0x11, 0xe6, 0x84, 0x1e, 0x8c, 0x92, 0xfd, 0x28, 0xc9, 0x5c, 0xd9, 0x30, + 0x84, 0x0f, 0xf9, 0x10, 0x2a, 0xd6, 0xda, 0x60, 0x90, 0x90, 0xc1, 0x49, 0x3c, 0xb0, 0xfd, 0x3d, + 0xf5, 0x41, 0x0f, 0x02, 0x95, 0x43, 0x9d, 0xd4, 0x70, 0x1d, 0x8e, 0xc1, 0x61, 0x0f, 0xa1, 0xfb, + 0xc4, 0x24, 0x20, 0xfc, 0x5c, 0xc3, 0x97, 0xef, 0x8e, 0xbe, 0x3f, 0x42, 0xfe, 0x19, 0x8c, 0xb2, + 0xb3, 0x53, 0x92, 0x1c, 0x83, 0xe0, 0xda, 0x4e, 0x02, 0x9f, 0x6f, 0x2a, 0x90, 0x1b, 0x22, 0x83, + 0x1d, 0xdc, 0xf6, 0x87, 0x2b, 0x4d, 0xe5, 0x25, 0x10, 0x6e, 0xfc, 0x72, 0xb0, 0xcb, 0x55, 0x31, + 0x73, 0x38, 0x90, 0x40, 0x70, 0x16, 0x0f, 0x7a, 0xe7, 0x42, 0xf3, 0xd1, 0x78, 0x71, 0x1b, 0x79, + 0xc3, 0xf1, 0x48, 0xe2, 0x84, 0x2f, 0x69, 0x6d, 0x44, 0x4e, 0xe1, 0xc3, 0x7e, 0x14, 0xdb, 0xc7, + 0xe4, 0x15, 0xfc, 0x52, 0x1d, 0xa1, 0x57, 0x6b, 0x8f, 0xf0, 0x03, 0x08, 0xfb, 0x35, 0xd8, 0x6d, + 0xcf, 0xe6, 0x24, 0x39, 0xcb, 0xed, 0xcc, 0x4d, 0x83, 0x9a, 0x3e, 0xdc, 0xb4, 0x92, 0x17, 0xb1, + 0xb8, 0x03, 0xb7, 0x27, 0x70, 0x32, 0xd8, 0xef, 0x61, 0x4f, 0xf2, 0xc7, 0x30, 0xb7, 0xb3, 0x18, + 0x9d, 0xfa, 0xe6, 0x79, 0x2d, 0xe2, 0x35, 0x31, 0xdc, 0x77, 0x00, 0xe3, 0xf8, 0x39, 0xdf, 0xa5, + 0xd9, 0x7c, 0xc4, 0x46, 0x1b, 0x71, 0x35, 0x1c, 0xb8, 0x53, 0xf8, 0x78, 0x33, 0x8e, 0xda, 0xf8, + 0x8d, 0xe0, 0x64, 0x13, 0xc2, 0xed, 0xc3, 0x98, 0xc5, 0x33, 0xfe, 0xf4, 0xbe, 0xba, 0x7f, 0xc4, + 0x21, 0xca, 0xeb, 0x05, 0x95, 0x0c, 0x0b, 0xf7, 0xc1, 0xcc, 0xeb, 0x05, 0x15, 0xce, 0xe2, 0x63, + 0x3e, 0xbb, 0x8f, 0xd3, 0xa9, 0x2b, 0x83, 0x5d, 0x6c, 0x83, 0x64, 0xfb, 0xa6, 0x74, 0x0c, 0xc2, + 0xae, 0x60, 0x38, 0xda, 0xac, 0xa2, 0xd0, 0x56, 0x15, 0x75, 0x50, 0x7b, 0x4e, 0x1c, 0xcf, 0x06, + 0x23, 0x21, 0x21, 0x3c, 0xfc, 0xb8, 0x17, 0x7a, 0xeb, 0xce, 0xc1, 0x74, 0x7f, 0x6d, 0x1c, 0x9b, + 0x42, 0xdf, 0x5c, 0x6c, 0x2a, 0xf0, 0x8c, 0x63, 0x53, 0xed, 0xdf, 0x64, 0x6c, 0x2a, 0x78, 0x20, + 0xb1, 0xa9, 0x6b, 0x30, 0x50, 0x52, 0xc8, 0xca, 0x74, 0xf7, 0x61, 0xce, 0xd4, 0x7e, 0x81, 0x59, + 0xa1, 0xdd, 0xd2, 0xc0, 0x17, 0x55, 0x14, 0x98, 0xb4, 0x1d, 0xe5, 0x51, 0x6a, 0x50, 0x9e, 0x09, + 0x24, 0x3e, 0x94, 0xfb, 0x4a, 0xca, 0x7d, 0xd9, 0xdd, 0x65, 0x8b, 0xda, 0x2f, 0xa8, 0x38, 0x5b, + 0xef, 0xf0, 0x0e, 0xef, 0xca, 0xe1, 0xcd, 0x0f, 0xa5, 0x5e, 0xa7, 0xf7, 0x87, 0x34, 0xae, 0x5e, + 0x31, 0x54, 0xd3, 0xd4, 0xf4, 0xb2, 0x0d, 0xbe, 0x66, 0x16, 0xea, 0x4b, 0xcd, 0x70, 0x22, 0xf3, + 0x35, 0x2e, 0x97, 0xf0, 0xb8, 0x4b, 0x18, 0x07, 0x5f, 0x6f, 0x06, 0xa1, 0x9b, 0x2f, 0x11, 0xd5, + 0x30, 0x74, 0x83, 0x18, 0x87, 0x64, 0x48, 0xaf, 0xec, 0xf2, 0x50, 0xe2, 0xb3, 0x12, 0x46, 0x98, + 0x6e, 0xbf, 0x48, 0xc5, 0xb1, 0xd8, 0xf5, 0x7f, 0x6f, 0xb7, 0x61, 0x11, 0x87, 0xbe, 0x87, 0x7a, + 0x87, 0xe3, 0x67, 0x7a, 0xa4, 0xee, 0x31, 0x76, 0x8c, 0x1d, 0x1d, 0x3d, 0x3b, 0x31, 0x33, 0x53, + 0x8b, 0x67, 0x93, 0xff, 0x62, 0xdf, 0x43, 0xd1, 0x33, 0x9d, 0x46, 0x47, 0xe2, 0xe1, 0xc3, 0xe0, + 0x6f, 0x21, 0x0a, 0x9d, 0xf8, 0x63, 0xf4, 0xf8, 0x09, 0xda, 0x40, 0xf8, 0xfb, 0xe8, 0x27, 0x55, + 0xf4, 0x6f, 0x10, 0xdd, 0xbf, 0x68, 0x09, 0x49, 0xb2, 0xee, 0x93, 0xd4, 0x71, 0x9b, 0xa4, 0x22, + 0x93, 0xba, 0x91, 0x5c, 0x56, 0xad, 0x7b, 0xaa, 0x5a, 0x4e, 0x8e, 0x8d, 0x8e, 0x26, 0x95, 0x72, + 0x21, 0x39, 0x31, 0x33, 0x33, 0x92, 0xbc, 0xb8, 0x3a, 0x92, 0xbc, 0x49, 0xe9, 0xc6, 0x93, 0xaf, + 0x26, 0xc7, 0xef, 0xdf, 0x27, 0x94, 0x4a, 0xb1, 0x98, 0x1c, 0x1f, 0x1d, 0x3d, 0x3b, 0x3e, 0x33, + 0x93, 0x54, 0x1d, 0x79, 0xa6, 0x98, 0x9c, 0x48, 0xbe, 0x9a, 0x9c, 0xa8, 0xd1, 0x4c, 0xb0, 0x7a, + 0xba, 0x69, 0x46, 0x92, 0x6f, 0xeb, 0xeb, 0xc9, 0xbc, 0x52, 0x4e, 0x2a, 0x45, 0x53, 0x4f, 0x32, + 0x84, 0xc1, 0x83, 0xa4, 0x52, 0x4e, 0xaa, 0xf7, 0x95, 0xbc, 0xe5, 0x22, 0x4d, 0x16, 0xb5, 0x3b, + 0x6a, 0x72, 0x7c, 0x74, 0x7c, 0x84, 0x34, 0xa5, 0xef, 0xf1, 0x13, 0x24, 0xe0, 0xd8, 0x56, 0x15, + 0x01, 0x6b, 0x01, 0xd9, 0xaa, 0xc8, 0x0b, 0x78, 0xfc, 0x04, 0x85, 0x71, 0xf0, 0x07, 0x55, 0xd4, + 0x56, 0x8b, 0xea, 0xd3, 0xd6, 0xcf, 0x3d, 0x7e, 0x82, 0x5e, 0x1d, 0x7c, 0xf9, 0x27, 0x55, 0x34, + 0xb5, 0x68, 0x19, 0x5a, 0x79, 0x35, 0x69, 0xa8, 0x64, 0x20, 0xd5, 0xb2, 0x45, 0x7e, 0xb0, 0x92, + 0xec, 0x09, 0x2e, 0x26, 0xd7, 0xcd, 0x75, 0xa5, 0x58, 0x7c, 0x90, 0x54, 0x92, 0x6b, 0x56, 0xa9, + 0x48, 0xab, 0x40, 0xa4, 0x1c, 0x7b, 0xfc, 0x04, 0x1d, 0x1e, 0x1c, 0xd8, 0xaa, 0xa2, 0x5e, 0x56, + 0xb0, 0xb3, 0x59, 0x4a, 0x7a, 0xe1, 0x01, 0xa1, 0x18, 0x78, 0xfc, 0x04, 0xf5, 0x0e, 0xc6, 0x7f, + 0xef, 0x09, 0xea, 0x56, 0xcc, 0xbc, 0xa6, 0x89, 0xc9, 0x65, 0xc5, 0x54, 0x27, 0xc7, 0x9d, 0xda, + 0x0d, 0x92, 0xda, 0x05, 0x5d, 0x3f, 0x37, 0xe8, 0xa4, 0xcd, 0xbb, 0x46, 0x1c, 0xaf, 0x40, 0x8f, + 0xc7, 0xbb, 0xb9, 0xa2, 0x53, 0xc8, 0x60, 0x34, 0x3d, 0xda, 0x6c, 0xc6, 0x66, 0x95, 0xbb, 0xca, + 0x22, 0x65, 0x71, 0xad, 0x89, 0xe8, 0x0f, 0x3f, 0x26, 0xbb, 0x30, 0x85, 0x6c, 0xc9, 0xb1, 0xdb, + 0x2e, 0x5f, 0xff, 0x8a, 0x8e, 0x6f, 0x41, 0xfb, 0xed, 0x7b, 0x16, 0x0d, 0xbf, 0xef, 0xce, 0xc2, + 0x79, 0xee, 0xd3, 0x8f, 0x09, 0xc7, 0x0f, 0x3f, 0xa6, 0xf2, 0x9c, 0x5d, 0xc2, 0xed, 0x99, 0x22, + 0xef, 0xf1, 0xeb, 0xd0, 0xe5, 0x01, 0x7c, 0x45, 0xe9, 0x36, 0x70, 0xcc, 0x37, 0x64, 0xd6, 0x71, + 0x26, 0x94, 0x78, 0xf8, 0x3f, 0xfe, 0x1b, 0x92, 0xa3, 0x9a, 0x0b, 0xe2, 0xf5, 0x2a, 0x1c, 0xb1, + 0x7d, 0x4b, 0x76, 0x30, 0x51, 0x65, 0x61, 0x27, 0x65, 0x55, 0x35, 0x59, 0xd8, 0x5b, 0x4e, 0x70, + 0x12, 0xee, 0x7c, 0xa5, 0xbd, 0xb7, 0x40, 0xde, 0xe3, 0x6b, 0x8d, 0xc0, 0x8b, 0x4d, 0xc2, 0xdf, + 0x52, 0x20, 0x81, 0x88, 0xf9, 0xe1, 0x07, 0x5d, 0x5c, 0x68, 0x08, 0x5d, 0x14, 0x76, 0x14, 0xe8, + 0x0f, 0x5c, 0x2c, 0xc1, 0x09, 0x3b, 0x12, 0x6c, 0x19, 0x5a, 0xde, 0xca, 0x99, 0x65, 0x8d, 0xb9, + 0xd1, 0x1c, 0x9c, 0x98, 0x9a, 0xbf, 0xd3, 0x14, 0x55, 0x1f, 0xb1, 0xb1, 0x78, 0x19, 0x24, 0x0f, + 0xf1, 0x58, 0x31, 0x95, 0xb5, 0x58, 0xd6, 0xc8, 0x89, 0x8c, 0x6d, 0xa9, 0xf3, 0x44, 0x0e, 0x7e, + 0x0b, 0xb0, 0x52, 0x28, 0x68, 0x0c, 0x9c, 0x94, 0x2b, 0xe8, 0x25, 0x45, 0x2b, 0x9b, 0x1c, 0x5c, + 0x7f, 0xac, 0x4e, 0xfa, 0x05, 0xfa, 0xf6, 0x9a, 0x52, 0x52, 0xaf, 0x68, 0xa6, 0xe5, 0x29, 0x26, + 0x5e, 0x13, 0xc2, 0xa8, 0x4c, 0xfc, 0x5b, 0x08, 0xe2, 0x79, 0x5d, 0xbf, 0xa3, 0xa9, 0x54, 0xb3, + 0x94, 0xf4, 0x82, 0xb6, 0xf2, 0x20, 0xd1, 0xe7, 0xab, 0xd6, 0xe6, 0x29, 0x5d, 0x03, 0xb5, 0x36, + 0xc5, 0xa7, 0xd5, 0xa7, 0x4f, 0x50, 0x07, 0x84, 0x2a, 0x86, 0x7e, 0xff, 0xc1, 0xee, 0x14, 0x53, + 0x0f, 0x2f, 0x7e, 0x49, 0xbf, 0x4a, 0x0b, 0x1f, 0x7c, 0x0d, 0xe2, 0xdb, 0x76, 0x50, 0x77, 0xec, + 0xaa, 0x7b, 0xa7, 0xd8, 0x95, 0xfe, 0x59, 0x15, 0xdd, 0x81, 0x21, 0x88, 0xb1, 0x2e, 0x74, 0xa2, + 0x45, 0x5d, 0xfc, 0x20, 0x23, 0xa6, 0x47, 0xc5, 0x09, 0x38, 0x0d, 0x49, 0xb6, 0xd2, 0xd6, 0x0d, + 0x35, 0x59, 0xb7, 0x1f, 0xd8, 0x1c, 0xc1, 0x69, 0x31, 0x35, 0x06, 0xc7, 0x1b, 0x85, 0x9f, 0xc2, + 0x93, 0xe2, 0x94, 0x98, 0x4a, 0x49, 0x67, 0x1a, 0x41, 0xfe, 0xe2, 0x3c, 0xf2, 0x13, 0x4a, 0x4d, + 0x88, 0xa9, 0xc9, 0x9f, 0x56, 0x11, 0x92, 0x5e, 0x87, 0x13, 0xcd, 0xa6, 0x8c, 0x1b, 0x60, 0x88, + 0x39, 0xbc, 0x2f, 0xce, 0xa1, 0x80, 0xa9, 0x19, 0x22, 0xc1, 0x89, 0x7f, 0xc4, 0x05, 0x3c, 0xfc, + 0x3f, 0x03, 0x20, 0x5c, 0xb8, 0xa0, 0x2f, 0xce, 0x17, 0x35, 0xb5, 0x6c, 0x2d, 0xea, 0xeb, 0x46, + 0x5e, 0xc5, 0xf3, 0x10, 0x51, 0xcc, 0x72, 0xae, 0xa8, 0x99, 0x56, 0x03, 0xff, 0x07, 0xd3, 0xcc, + 0x23, 0x73, 0x66, 0x99, 0xba, 0x5c, 0xe8, 0x44, 0x61, 0x2a, 0xb2, 0x43, 0x31, 0xcb, 0xe4, 0x27, + 0x2e, 0x42, 0x57, 0x5e, 0x5f, 0x27, 0x7d, 0xcf, 0x04, 0x91, 0x93, 0x4e, 0x2c, 0xfd, 0x9c, 0xbf, + 0xa0, 0x79, 0x46, 0x49, 0x36, 0x72, 0xe9, 0x05, 0x32, 0xb6, 0xdd, 0x9f, 0x20, 0x18, 0x8e, 0x3c, + 0x42, 0x21, 0x01, 0x0d, 0x73, 0x6c, 0x14, 0x19, 0xf7, 0xd7, 0xdd, 0x4e, 0x70, 0x2e, 0x9e, 0x96, + 0xf6, 0x2b, 0x88, 0xdd, 0x79, 0x58, 0xd1, 0xca, 0xab, 0xaa, 0x51, 0x31, 0xb4, 0xb2, 0x95, 0x2b, + 0x31, 0x6f, 0x10, 0xf7, 0x17, 0x9d, 0xf3, 0x2f, 0x79, 0xa9, 0x68, 0x5e, 0xaa, 0xf1, 0xb8, 0x1d, + 0x48, 0xc7, 0xf8, 0x11, 0x96, 0x2a, 0x10, 0xe1, 0x7b, 0x4f, 0x50, 0x97, 0xb9, 0xa6, 0x18, 0x6a, + 0x81, 0xa8, 0x07, 0xd5, 0x90, 0xfb, 0x2d, 0x3f, 0x4e, 0x1e, 0xbf, 0x18, 0x13, 0x27, 0xb2, 0xc1, + 0x48, 0x40, 0x68, 0xe7, 0xde, 0xd8, 0xef, 0x86, 0x01, 0x93, 0x6e, 0xbe, 0xaa, 0x59, 0xda, 0x2a, + 0x9d, 0xf9, 0xf2, 0x7a, 0x51, 0xc5, 0xb3, 0x10, 0x29, 0xa9, 0x96, 0x52, 0x50, 0x2c, 0xa5, 0x81, + 0x2b, 0xf0, 0xaa, 0x6a, 0x9a, 0xca, 0xaa, 0x7a, 0x55, 0xb5, 0x14, 0xea, 0x97, 0x71, 0xe8, 0xb1, + 0x08, 0xa1, 0xe5, 0xa2, 0x9e, 0xbf, 0xc3, 0x1d, 0x2f, 0x8d, 0xfc, 0xed, 0x8c, 0x08, 0x9b, 0x80, + 0x0b, 0x05, 0xdd, 0xcc, 0xe5, 0xe9, 0x38, 0xe7, 0x4c, 0x3a, 0xd0, 0xdc, 0x8f, 0xbd, 0xdb, 0xe8, + 0x7d, 0xfd, 0x3c, 0x91, 0x80, 0x8e, 0xc6, 0x63, 0x14, 0x48, 0x92, 0xcd, 0x41, 0x20, 0x05, 0x78, + 0xe6, 0xd1, 0x55, 0x88, 0x69, 0x15, 0x1b, 0x38, 0x47, 0x27, 0x01, 0xd3, 0x63, 0x27, 0xfd, 0x87, + 0x82, 0x19, 0x46, 0xce, 0x84, 0xca, 0x20, 0xb9, 0x4b, 0xab, 0xb0, 0x87, 0x74, 0x8c, 0x3f, 0x80, + 0x3e, 0xf5, 0x7e, 0x45, 0x33, 0x38, 0x7c, 0xd9, 0xbe, 0x6a, 0xca, 0x7d, 0xfb, 0x83, 0x23, 0xec, + 0x32, 0xea, 0x88, 0x7d, 0x19, 0x75, 0x64, 0xc9, 0xa6, 0x90, 0x7a, 0x48, 0x45, 0xe1, 0x0f, 0x51, + 0x47, 0x36, 0x14, 0x79, 0xf8, 0x17, 0xbf, 0xdc, 0x23, 0xf7, 0xd6, 0x04, 0x39, 0x54, 0xb3, 0xbf, + 0x1b, 0xf8, 0xf2, 0x7c, 0x84, 0x2c, 0xf1, 0x29, 0x31, 0x35, 0xfa, 0x79, 0x15, 0xfd, 0x66, 0x00, + 0x06, 0x20, 0x48, 0x36, 0xc2, 0xc1, 0x1e, 0xe8, 0xb6, 0x3b, 0x7e, 0xa4, 0xac, 0x94, 0x54, 0x38, + 0x0b, 0xd1, 0xcb, 0x0b, 0xdc, 0x94, 0x53, 0x4d, 0x69, 0x08, 0x06, 0xbd, 0x2d, 0x1d, 0x71, 0x7e, + 0xaa, 0xa6, 0x10, 0x80, 0x34, 0x04, 0xe7, 0x16, 0xaf, 0x99, 0xd2, 0x19, 0x78, 0x61, 0xfb, 0x30, + 0x8c, 0xd8, 0x8b, 0x6d, 0x44, 0x31, 0x73, 0xe5, 0xf5, 0xd2, 0xb2, 0x6a, 0x98, 0x42, 0x3b, 0xa4, + 0xa1, 0x93, 0x2d, 0x0b, 0x4d, 0x35, 0xa5, 0x93, 0x70, 0xdc, 0x87, 0xd1, 0xbd, 0xc0, 0x84, 0xd0, + 0x28, 0x82, 0xf7, 0x40, 0x58, 0xba, 0xb2, 0x98, 0x74, 0xcd, 0x4b, 0x73, 0x38, 0x03, 0x67, 0x7c, + 0x58, 0x1b, 0x2c, 0x16, 0x0c, 0xce, 0x9e, 0x56, 0x18, 0x8c, 0x5d, 0xd3, 0xad, 0xda, 0x1e, 0x57, + 0x90, 0x86, 0x21, 0x5e, 0x72, 0x26, 0x70, 0x8e, 0x61, 0x5d, 0x71, 0xf7, 0x46, 0x15, 0x91, 0xd3, + 0x69, 0x60, 0xab, 0x8a, 0xd0, 0x98, 0xf4, 0xbc, 0x87, 0xc6, 0x15, 0x09, 0xef, 0xe4, 0x48, 0xe7, + 0xf6, 0x69, 0x71, 0xc6, 0x59, 0x1b, 0x1d, 0x42, 0x64, 0xf8, 0x61, 0x10, 0x8e, 0x2e, 0x6a, 0xe5, + 0xd5, 0xa2, 0x7a, 0x45, 0x57, 0x0a, 0x12, 0x9f, 0x6d, 0x73, 0x95, 0xca, 0xa2, 0x6a, 0x91, 0xd3, + 0x19, 0xfe, 0x10, 0x04, 0xae, 0x2b, 0x0b, 0x9a, 0x99, 0xd7, 0xef, 0xaa, 0x86, 0x0d, 0x8d, 0xf5, + 0xbf, 0xe3, 0x51, 0xbb, 0x1e, 0x3b, 0x32, 0x57, 0xd1, 0x2e, 0xd8, 0x3c, 0x5c, 0x5c, 0x86, 0xc2, + 0x3c, 0xe9, 0xb9, 0xc1, 0x7e, 0xe3, 0xc6, 0xc6, 0xd4, 0x8a, 0x68, 0xbe, 0xae, 0x6c, 0x6c, 0x4c, + 0x4d, 0xc8, 0xfb, 0x70, 0x9c, 0x57, 0x93, 0xec, 0xe1, 0x79, 0x4d, 0x5f, 0x37, 0x73, 0x64, 0xa7, + 0xc8, 0x15, 0x54, 0x8b, 0xe3, 0x36, 0x22, 0x4d, 0x41, 0xa3, 0x47, 0x19, 0xfb, 0x55, 0x9b, 0xfb, + 0x86, 0xa9, 0x1a, 0x17, 0x6c, 0x5e, 0x9c, 0x83, 0xa4, 0x83, 0xdf, 0x69, 0x24, 0xbf, 0xb3, 0xa9, + 0xfc, 0x63, 0x36, 0x9c, 0xc7, 0xb7, 0x00, 0xe9, 0x14, 0xf4, 0x29, 0x15, 0xad, 0xd6, 0x01, 0x0d, + 0x61, 0x0c, 0x69, 0x38, 0xde, 0xa8, 0x06, 0x6e, 0x9e, 0x88, 0x77, 0xc0, 0x59, 0xfc, 0x9d, 0x81, + 0xcb, 0x43, 0x42, 0xd8, 0x89, 0xc5, 0x93, 0x29, 0xf0, 0xaf, 0x10, 0x0c, 0x31, 0x9f, 0x19, 0xbb, + 0xc2, 0xc2, 0x50, 0x27, 0x64, 0x8b, 0x74, 0x10, 0xe5, 0xbf, 0x89, 0x60, 0x90, 0x3b, 0xd9, 0x38, + 0xa0, 0x9e, 0xa1, 0x86, 0xe9, 0xc5, 0x6c, 0x93, 0xbb, 0x08, 0x44, 0xff, 0x8d, 0xc5, 0x5f, 0x74, + 0x1d, 0xd4, 0xdc, 0x51, 0x2d, 0xa3, 0x1e, 0xa8, 0xf9, 0x80, 0xee, 0xcb, 0x6c, 0x0e, 0x3f, 0x80, + 0x7e, 0xbe, 0xd9, 0x69, 0x05, 0x95, 0x63, 0x46, 0x68, 0x4d, 0x3f, 0x84, 0x30, 0x37, 0x5c, 0xd9, + 0x96, 0x2e, 0xed, 0x72, 0x7b, 0xdd, 0x26, 0xad, 0x1e, 0x94, 0x26, 0x73, 0xb9, 0xc3, 0xbf, 0x12, + 0x84, 0x23, 0x4d, 0xa8, 0x71, 0xa6, 0x36, 0x9d, 0x6f, 0x9b, 0x39, 0xad, 0x6c, 0xaa, 0x86, 0xd5, + 0x0c, 0x4c, 0xee, 0x5c, 0x7b, 0xea, 0xe1, 0x6c, 0x59, 0xf3, 0x32, 0x65, 0xc2, 0x17, 0xa1, 0xd7, + 0x91, 0x90, 0x53, 0x8a, 0x45, 0x7e, 0xfe, 0xde, 0x61, 0x69, 0xdc, 0xe6, 0xec, 0x73, 0xc5, 0x22, + 0x3b, 0x8f, 0xff, 0x06, 0x82, 0x41, 0x1f, 0x39, 0x39, 0xf5, 0x7e, 0x5e, 0xad, 0xd8, 0x6e, 0xfc, + 0xeb, 0xbb, 0xed, 0xa7, 0xc5, 0x0b, 0x35, 0x5b, 0xc7, 0x29, 0xe8, 0x96, 0x66, 0xad, 0x5d, 0xa4, + 0xe2, 0x6c, 0x33, 0x3a, 0xd3, 0x26, 0x1f, 0xaa, 0xaf, 0x09, 0xa3, 0xc0, 0x16, 0x60, 0xa7, 0x3a, + 0x64, 0xd6, 0xb2, 0x39, 0x14, 0xda, 0x53, 0x04, 0xc3, 0xa7, 0x1a, 0x6c, 0xa8, 0x78, 0x5f, 0x3a, + 0xbd, 0xc0, 0x95, 0xbd, 0x39, 0x7b, 0xfc, 0xb3, 0x2a, 0x3a, 0x02, 0x87, 0xa1, 0xaf, 0xc6, 0x97, + 0x74, 0x48, 0x30, 0x4a, 0x49, 0x2f, 0x02, 0x26, 0x26, 0x5a, 0x8e, 0x5b, 0x7e, 0x2e, 0x57, 0x5a, + 0x3b, 0x5f, 0x7f, 0x1d, 0xcc, 0xe8, 0x4f, 0xb3, 0xf5, 0x34, 0xfc, 0x47, 0x08, 0x4e, 0xef, 0xb6, + 0x3b, 0xf0, 0xb7, 0x11, 0x74, 0xa9, 0xf7, 0xf3, 0xc5, 0xf5, 0x82, 0x6a, 0x1f, 0xed, 0xc8, 0x9a, + 0x99, 0xdf, 0x65, 0x7b, 0x17, 0xd7, 0x94, 0x8a, 0x5a, 0x2b, 0xe9, 0x22, 0x91, 0x64, 0xf2, 0xb6, + 0x49, 0xf4, 0x3c, 0x1e, 0xfe, 0x04, 0xb5, 0x0b, 0x0f, 0x91, 0xff, 0x95, 0x8d, 0x28, 0x2f, 0x9a, + 0x2c, 0xe8, 0xe1, 0x3f, 0x0c, 0xc0, 0x40, 0x83, 0xfe, 0xc3, 0xff, 0x08, 0x41, 0xc8, 0xbd, 0xa6, + 0xe7, 0xf6, 0x3f, 0x1e, 0x76, 0xed, 0x46, 0xec, 0x85, 0x5e, 0x57, 0xc3, 0x48, 0x83, 0xba, 0xb2, + 0xf2, 0xf1, 0xaf, 0xd7, 0x77, 0x58, 0xe0, 0xe0, 0x3a, 0xec, 0xf9, 0x06, 0x55, 0x6a, 0xd2, 0x69, + 0xdf, 0x09, 0xc2, 0x60, 0xe3, 0x46, 0x3e, 0xd5, 0x59, 0x72, 0x02, 0x40, 0x29, 0x3f, 0xe0, 0x76, + 0xe1, 0x0e, 0xab, 0xbb, 0x53, 0x29, 0x3f, 0x60, 0xc6, 0x1f, 0x9e, 0x81, 0x30, 0x67, 0x09, 0xfa, + 0xc2, 0xa8, 0x19, 0x59, 0x2d, 0x1a, 0x9b, 0x69, 0x93, 0x39, 0x03, 0x4e, 0xf3, 0x00, 0x78, 0x68, + 0x37, 0x01, 0x70, 0x16, 0xfa, 0x9e, 0xfd, 0x53, 0xf4, 0x79, 0x15, 0xfd, 0x57, 0xd4, 0xf8, 0x50, + 0xb6, 0x0e, 0x61, 0x56, 0xe4, 0x99, 0x3b, 0xa0, 0x41, 0xdc, 0xdd, 0xa8, 0x74, 0xfb, 0x5c, 0xf9, + 0x01, 0xf4, 0x01, 0x66, 0x3f, 0x47, 0xa8, 0x87, 0x29, 0x47, 0x4d, 0x3e, 0x38, 0x0e, 0xbd, 0xfc, + 0xa9, 0xb9, 0xbe, 0x42, 0x0e, 0x70, 0xf4, 0x31, 0x8e, 0x0c, 0x86, 0x17, 0xe9, 0x6f, 0x38, 0xe6, + 0xb0, 0xb1, 0x5b, 0x18, 0xec, 0x7d, 0xc7, 0x60, 0x88, 0x39, 0xdc, 0xdf, 0x00, 0xea, 0xa8, 0x3f, + 0xf3, 0x1a, 0xbc, 0x0a, 0x03, 0x10, 0x75, 0x79, 0xfc, 0x89, 0x0c, 0xee, 0xee, 0x8f, 0x42, 0xa7, + 0xe3, 0xd8, 0x87, 0x7e, 0x80, 0x9a, 0xf3, 0xde, 0x11, 0x24, 0x9d, 0x86, 0x7e, 0x56, 0x8e, 0x7d, + 0x1a, 0x73, 0xab, 0x53, 0xfb, 0x8c, 0xd5, 0xce, 0x3c, 0xe9, 0x01, 0xa1, 0x7d, 0xf8, 0x3f, 0x07, + 0xe1, 0x68, 0x0d, 0xee, 0x69, 0x7b, 0x12, 0x5d, 0x8a, 0xe0, 0x9f, 0x23, 0x18, 0x20, 0xc7, 0x61, + 0x35, 0x6f, 0xa9, 0x85, 0x9c, 0x52, 0xa9, 0xe4, 0xec, 0x0b, 0x2e, 0xf6, 0xea, 0x7a, 0x6d, 0x97, + 0x93, 0x79, 0xc1, 0x96, 0x32, 0x57, 0xa9, 0xd8, 0xd8, 0x50, 0x3a, 0xb0, 0x7b, 0x5d, 0x5b, 0xfd, + 0x15, 0x1f, 0x49, 0x26, 0x96, 0x40, 0xb8, 0x6d, 0xe6, 0x0a, 0xfa, 0xbd, 0x32, 0x29, 0x36, 0xe7, + 0xc0, 0xdf, 0x3a, 0xa5, 0xc4, 0x17, 0x55, 0x04, 0x3c, 0xe5, 0xc9, 0xc8, 0x6d, 0x93, 0x5f, 0x93, + 0xf9, 0x71, 0x00, 0xc9, 0xb1, 0xdb, 0xe6, 0x05, 0xce, 0x40, 0xfa, 0x1f, 0x5f, 0x00, 0xec, 0x9c, + 0x90, 0xf4, 0x65, 0xad, 0xa8, 0xe6, 0xcc, 0xc2, 0x9d, 0x1d, 0xd0, 0x6f, 0x0e, 0xc4, 0x99, 0x32, + 0x2c, 0x16, 0x88, 0xa5, 0x14, 0xaf, 0x71, 0xdb, 0xb8, 0x78, 0x36, 0x4d, 0x2f, 0xee, 0xb2, 0xb3, + 0x24, 0xdd, 0xb2, 0x07, 0x83, 0xcb, 0xbd, 0xf0, 0x2d, 0x17, 0x32, 0xbb, 0x4d, 0xee, 0x29, 0xd9, + 0xc5, 0xb1, 0xc7, 0xb3, 0xef, 0x7f, 0x56, 0x45, 0x6f, 0xc3, 0x51, 0x7a, 0x4f, 0x9b, 0xf5, 0x4e, + 0x72, 0xae, 0x52, 0x49, 0xd6, 0xfa, 0x07, 0xa5, 0xe0, 0x04, 0x0c, 0xdd, 0x52, 0x97, 0x93, 0x4c, + 0xf1, 0x27, 0x5d, 0x3a, 0x84, 0x1f, 0x6c, 0x4d, 0x8c, 0xd2, 0xd0, 0x07, 0x3d, 0xac, 0x48, 0xd7, + 0x53, 0x76, 0x28, 0x77, 0xb5, 0xa9, 0x36, 0xa9, 0x6c, 0x20, 0x5d, 0xfb, 0x38, 0x35, 0x58, 0xdb, + 0x85, 0xe0, 0xf0, 0x3f, 0x41, 0x30, 0xd4, 0xbc, 0x01, 0x78, 0xdd, 0x11, 0xa7, 0x15, 0xd4, 0xb2, + 0xa5, 0xad, 0x68, 0xaa, 0xb1, 0xc7, 0xc3, 0x0e, 0x13, 0xbb, 0x64, 0x28, 0x2b, 0x2b, 0x5a, 0xfe, + 0xb2, 0x23, 0xa5, 0xa6, 0x41, 0x65, 0x81, 0x15, 0x51, 0x7b, 0x37, 0xfc, 0x6b, 0x51, 0x48, 0x34, + 0x9a, 0x87, 0xff, 0xf0, 0xb7, 0x3f, 0x2c, 0x41, 0xe8, 0xa3, 0x75, 0x62, 0x98, 0x84, 0x7d, 0xcf, + 0xba, 0x8d, 0x7a, 0xfa, 0x4d, 0xc2, 0x23, 0x33, 0x56, 0x7c, 0x03, 0xba, 0xec, 0x38, 0xcd, 0xb2, + 0x5e, 0x78, 0x90, 0xe8, 0xa0, 0xa2, 0xd2, 0xbb, 0x05, 0x50, 0x30, 0x56, 0x49, 0x2f, 0x3c, 0x90, + 0xa3, 0x46, 0xed, 0x07, 0xbe, 0x0b, 0x5d, 0xae, 0xe8, 0x28, 0x0b, 0x81, 0xc4, 0xd2, 0x47, 0xeb, + 0x23, 0x36, 0xba, 0x55, 0x03, 0x26, 0x49, 0x13, 0x64, 0x25, 0xe3, 0x4f, 0x50, 0xcf, 0x70, 0xf7, + 0x23, 0x04, 0x02, 0x1a, 0x0c, 0xb7, 0xa1, 0xf6, 0x60, 0x28, 0xec, 0x1c, 0xc8, 0xc3, 0xfe, 0xd0, + 0xc7, 0x1a, 0x9e, 0xc9, 0x24, 0x03, 0x77, 0x4f, 0x5d, 0xe6, 0x96, 0x6d, 0xb3, 0xac, 0x2f, 0x19, + 0x24, 0x77, 0xde, 0x53, 0x97, 0xd9, 0xda, 0xc1, 0x2f, 0x43, 0x37, 0x9f, 0xbf, 0x9c, 0x33, 0xda, + 0x94, 0xb3, 0x8b, 0x11, 0x73, 0x66, 0x8d, 0xdd, 0x9b, 0xf1, 0x0a, 0xe8, 0xda, 0x13, 0x10, 0xe5, + 0x96, 0xba, 0xec, 0x99, 0xff, 0x74, 0x57, 0x40, 0xf4, 0x2a, 0xcd, 0x55, 0x77, 0x51, 0x19, 0xe8, + 0x5b, 0x2f, 0x17, 0xd4, 0x15, 0xad, 0xac, 0x16, 0x72, 0x2b, 0x45, 0xfd, 0x5e, 0xae, 0xa8, 0x2c, + 0xab, 0xc5, 0x66, 0xf7, 0xe5, 0x33, 0x01, 0x19, 0x3b, 0x3c, 0x97, 0x8a, 0xfa, 0xbd, 0x2b, 0x84, + 0x03, 0xdf, 0x02, 0x70, 0xf1, 0xf7, 0xf8, 0x62, 0x8e, 0x6a, 0x9a, 0xc4, 0xe1, 0x9b, 0x57, 0x2c, + 0x75, 0x55, 0x37, 0x34, 0xd5, 0x9c, 0xa7, 0x7b, 0x06, 0xad, 0x68, 0x40, 0xee, 0x5c, 0xb1, 0x09, + 0x66, 0xff, 0x2a, 0xf0, 0xe5, 0xf9, 0x3e, 0xdb, 0x2d, 0xca, 0x33, 0x84, 0x88, 0xa9, 0x31, 0x71, + 0xe6, 0xf3, 0x2a, 0xfa, 0x93, 0x26, 0xfe, 0x93, 0x25, 0x47, 0x55, 0x67, 0x21, 0xb3, 0x7b, 0x55, + 0xbd, 0x83, 0x26, 0x3e, 0xcc, 0x35, 0x71, 0x1c, 0x7a, 0xa0, 0x9b, 0x2d, 0xb1, 0x74, 0x88, 0x3c, + 0x31, 0x21, 0x01, 0x21, 0xba, 0x12, 0xa4, 0x1e, 0xbe, 0x8c, 0x84, 0xd0, 0x70, 0x90, 0x56, 0xe5, + 0x05, 0xe8, 0xe2, 0x13, 0x9b, 0x86, 0x71, 0xa4, 0x43, 0xde, 0x35, 0xe2, 0xd0, 0x2d, 0x43, 0x94, + 0xef, 0xbd, 0x14, 0xfb, 0xb3, 0x08, 0x6f, 0x92, 0x7a, 0xd7, 0xe6, 0x5f, 0xba, 0xfd, 0x96, 0xba, + 0x0c, 0x03, 0x75, 0x73, 0x2b, 0x1d, 0x66, 0x43, 0x0a, 0x27, 0x7c, 0xe6, 0x4d, 0x3a, 0x46, 0x76, + 0x74, 0xa5, 0x5c, 0x48, 0x72, 0xa2, 0x63, 0xd0, 0xc1, 0xe7, 0xb6, 0x84, 0xbd, 0x6b, 0x4a, 0x80, + 0x51, 0xb4, 0xfb, 0x03, 0x82, 0x74, 0x0e, 0x06, 0x68, 0xb2, 0x35, 0x36, 0xc1, 0xe8, 0x5d, 0x7f, + 0x37, 0xae, 0x1f, 0x78, 0x8a, 0x96, 0x88, 0x7d, 0xaf, 0x42, 0x3a, 0x06, 0xf1, 0xda, 0x0c, 0xb1, + 0x49, 0x23, 0x1b, 0x55, 0x14, 0xdb, 0xac, 0xa2, 0x6e, 0xc7, 0x61, 0xc3, 0x12, 0xae, 0x74, 0x0b, + 0xb1, 0xe1, 0x3f, 0x0d, 0x40, 0xd4, 0xb5, 0x21, 0x60, 0x0c, 0xb4, 0x9b, 0xf8, 0xed, 0x10, 0xfa, + 0x3f, 0x1e, 0x83, 0xa8, 0x6b, 0xf4, 0xb8, 0x42, 0x17, 0xfe, 0xb6, 0x8a, 0xda, 0x69, 0xe8, 0xc7, + 0x08, 0x09, 0x28, 0xf1, 0x30, 0x90, 0x69, 0x93, 0x81, 0x92, 0xd1, 0xe0, 0x22, 0x9e, 0x84, 0xa8, + 0x6b, 0x70, 0xe9, 0x76, 0xdc, 0x29, 0xf5, 0xda, 0x4c, 0x60, 0x44, 0x28, 0xd3, 0x06, 0xdd, 0x4f, + 0x81, 0x52, 0x52, 0xbe, 0xd9, 0x3f, 0x40, 0x34, 0x57, 0xca, 0xf8, 0x67, 0x55, 0x74, 0x0a, 0x4e, + 0xc2, 0x90, 0x7b, 0x50, 0x93, 0x0e, 0x34, 0x2a, 0xc9, 0x37, 0x56, 0x4c, 0x48, 0x3f, 0xaf, 0x22, + 0x13, 0x62, 0x7c, 0x8e, 0x86, 0x59, 0x03, 0xe0, 0x15, 0x00, 0x16, 0xe5, 0xa4, 0xc3, 0x3c, 0x02, + 0x22, 0xf4, 0x79, 0x9a, 0x91, 0x0e, 0x5d, 0x24, 0x3f, 0xc8, 0x53, 0x57, 0x3d, 0xd3, 0x7c, 0x0a, + 0x9e, 0x80, 0x10, 0xe5, 0x4e, 0x0f, 0x7a, 0x98, 0x3c, 0xb4, 0xd2, 0x31, 0x00, 0xfa, 0x0f, 0x1d, + 0x17, 0xc7, 0xc1, 0x12, 0xe4, 0x0e, 0x16, 0xee, 0x33, 0xfe, 0x17, 0xed, 0x7c, 0xca, 0xee, 0xad, + 0x6b, 0xdb, 0xf6, 0xd3, 0xb5, 0x6d, 0x4d, 0xbb, 0x16, 0xbf, 0x0a, 0x31, 0x16, 0x5c, 0x60, 0x31, + 0xd3, 0xfc, 0x4e, 0x77, 0x0a, 0xba, 0x29, 0xf5, 0x02, 0x27, 0x9e, 0xfd, 0x77, 0x6c, 0x64, 0x26, + 0x3e, 0xab, 0xa2, 0x24, 0x0c, 0xc1, 0x00, 0x6d, 0x95, 0xff, 0x90, 0x4c, 0x7c, 0x5e, 0x45, 0xdf, + 0x41, 0xdb, 0xc6, 0xe4, 0x2d, 0xcf, 0x98, 0x90, 0x2d, 0x63, 0x2f, 0x63, 0x32, 0x58, 0x5f, 0xfd, + 0x74, 0xc4, 0xae, 0xdb, 0xee, 0xc6, 0xeb, 0xb8, 0x67, 0xbc, 0xe2, 0x7c, 0xbc, 0x42, 0xf4, 0x0a, + 0x8d, 0x0b, 0xd9, 0xf2, 0xe3, 0x76, 0xe8, 0xa5, 0x56, 0x5f, 0x6d, 0x2b, 0xb5, 0xcf, 0x4b, 0x86, + 0xba, 0xca, 0x62, 0x6f, 0xf6, 0x01, 0x9c, 0xdf, 0x08, 0x79, 0x65, 0x2f, 0xc6, 0x64, 0x4d, 0xac, + 0x4c, 0xc5, 0x71, 0x07, 0xfc, 0x23, 0x7a, 0xb0, 0x16, 0xec, 0x22, 0xec, 0x63, 0x11, 0xfe, 0xc0, + 0x71, 0x44, 0x31, 0xdf, 0xcf, 0xeb, 0xfb, 0x2b, 0xab, 0x91, 0x1b, 0x0a, 0xcf, 0xd4, 0x2e, 0x45, + 0xb6, 0xd3, 0x08, 0xef, 0x71, 0x9e, 0xd2, 0x23, 0x98, 0xf2, 0xb9, 0x17, 0xf9, 0x67, 0xff, 0xa5, + 0xbd, 0x76, 0x2f, 0xf2, 0x12, 0xf0, 0x38, 0x6b, 0x8e, 0x5e, 0xe7, 0x35, 0xd7, 0x2b, 0x2e, 0x64, + 0x6f, 0xa3, 0x59, 0x15, 0x67, 0x2c, 0xf3, 0xba, 0x61, 0x2e, 0x32, 0x06, 0xf7, 0x1d, 0x04, 0x8f, + 0xa0, 0xdd, 0xdd, 0x3b, 0x71, 0x49, 0x92, 0x4e, 0x41, 0xaf, 0x5b, 0x82, 0x3b, 0x5f, 0x56, 0xd8, + 0x4e, 0xea, 0xc1, 0xa3, 0x67, 0x64, 0x71, 0x56, 0x03, 0x70, 0x68, 0xbb, 0xe9, 0xc5, 0x11, 0xbe, + 0xed, 0xf7, 0xd4, 0xe5, 0x3d, 0x00, 0x87, 0x4f, 0x7e, 0xfa, 0xf1, 0x90, 0xfb, 0x6a, 0x13, 0xd9, + 0xb8, 0xb5, 0xf2, 0x8a, 0xa1, 0x98, 0x96, 0xb1, 0x9e, 0xb7, 0xd6, 0x0d, 0x86, 0x28, 0x26, 0x52, + 0xb1, 0x02, 0x61, 0xa6, 0x41, 0xf8, 0x98, 0x1e, 0xa0, 0x7c, 0x2e, 0x98, 0x14, 0xe1, 0xc9, 0x1b, + 0x31, 0xbf, 0x7b, 0xab, 0xa7, 0xa1, 0x25, 0x5a, 0xe7, 0xc0, 0xfc, 0xbb, 0x08, 0x1c, 0x6e, 0x38, + 0xcb, 0xf0, 0xef, 0xee, 0x68, 0xb5, 0xee, 0x16, 0x2e, 0xfd, 0x8c, 0x8c, 0x55, 0x5f, 0xff, 0x6a, + 0x70, 0x3f, 0xfe, 0x55, 0xcb, 0xdf, 0xbf, 0x1a, 0xda, 0x53, 0xc7, 0xd7, 0x39, 0x9a, 0x1c, 0x1f, + 0x20, 0x37, 0x36, 0xb7, 0xbb, 0x63, 0xbf, 0xd3, 0xdc, 0x1d, 0xcb, 0x16, 0xcf, 0x9b, 0x4f, 0x59, + 0xfa, 0x9e, 0x1c, 0xb2, 0x77, 0x7d, 0x1d, 0xb2, 0x1d, 0x7b, 0xdf, 0xb6, 0xf6, 0xe6, 0x92, 0x3d, + 0x10, 0xb7, 0xc3, 0x25, 0x0f, 0x5c, 0xa7, 0xa4, 0x17, 0x58, 0xb2, 0xc8, 0xd8, 0x36, 0x60, 0x45, + 0xad, 0x6e, 0x57, 0xf5, 0x82, 0xea, 0x86, 0xe3, 0x90, 0xdf, 0x0d, 0xdc, 0x17, 0xcd, 0x43, 0x3a, + 0xdb, 0xdd, 0x17, 0x6b, 0x7e, 0xee, 0x0b, 0x66, 0x19, 0xcd, 0xee, 0xc9, 0x36, 0xf7, 0xfa, 0x2c, + 0xd0, 0x76, 0x9f, 0xc5, 0x7b, 0x9f, 0x55, 0xd1, 0x5b, 0x3b, 0xf8, 0x2c, 0x86, 0x1a, 0x38, 0xbb, + 0xc3, 0x69, 0x72, 0xec, 0x1c, 0x83, 0x04, 0xf4, 0xda, 0xee, 0x8a, 0x0b, 0xdf, 0x72, 0xb9, 0x2c, + 0xa6, 0x9b, 0xf8, 0xc2, 0x43, 0xdc, 0x67, 0xc1, 0x13, 0x12, 0x8e, 0x4b, 0x27, 0xfd, 0xbc, 0x1b, + 0x02, 0x0f, 0x39, 0x46, 0xb6, 0xaa, 0x28, 0x38, 0x23, 0xa6, 0x46, 0x99, 0x7b, 0x23, 0x1b, 0x8c, + 0x44, 0x84, 0xce, 0xe1, 0x5f, 0x84, 0x23, 0x4d, 0x3c, 0x10, 0xf8, 0xbd, 0xda, 0x25, 0x96, 0xa6, + 0x81, 0xa5, 0xed, 0x77, 0x59, 0x14, 0x53, 0xcb, 0x37, 0x40, 0x68, 0xda, 0x22, 0x87, 0xb7, 0x90, + 0xdd, 0x6a, 0xaf, 0x5b, 0x65, 0x09, 0xb0, 0xa1, 0xd2, 0x79, 0xc8, 0x01, 0x1d, 0xb5, 0x43, 0x9f, + 0xf4, 0x02, 0x99, 0x8e, 0xf7, 0xcf, 0xea, 0x7a, 0xe9, 0x9d, 0x8b, 0xef, 0x14, 0xbf, 0xf5, 0xe3, + 0x5a, 0x06, 0xb8, 0x1f, 0x38, 0xff, 0x9d, 0x7e, 0x18, 0x20, 0xa7, 0x00, 0x22, 0x81, 0x55, 0x8c, + 0x66, 0x82, 0xf3, 0x75, 0xd6, 0x04, 0x9e, 0xb9, 0xb3, 0xe6, 0x3b, 0xdd, 0xd0, 0x73, 0x90, 0x3e, + 0x9a, 0xf5, 0x3a, 0x17, 0x43, 0x60, 0x17, 0x2e, 0x86, 0x71, 0xd2, 0x31, 0xf1, 0x4f, 0x50, 0x6c, + 0xb8, 0xeb, 0x11, 0xea, 0x14, 0xd0, 0x60, 0xa8, 0x0d, 0xb5, 0x07, 0xc1, 0x19, 0x9d, 0xd0, 0xce, + 0x1e, 0x86, 0x2b, 0x10, 0xb1, 0xd3, 0x8c, 0x51, 0x75, 0x18, 0xf3, 0x01, 0xe1, 0xf9, 0x77, 0xda, + 0x0d, 0xf9, 0xca, 0x22, 0xa1, 0x50, 0x65, 0x47, 0x82, 0xe3, 0xf6, 0x09, 0xee, 0xc1, 0xed, 0xe3, + 0x75, 0x4e, 0x85, 0xf7, 0xee, 0x9c, 0xea, 0xd8, 0xab, 0x73, 0xea, 0x34, 0x3b, 0xc0, 0x34, 0xdf, + 0x79, 0xe8, 0x69, 0x64, 0xc4, 0x39, 0x8d, 0x34, 0xf7, 0xbd, 0xd8, 0x47, 0x8b, 0xf7, 0x98, 0xbd, + 0xcc, 0x79, 0xa2, 0x07, 0xe1, 0x34, 0xe9, 0x74, 0x9c, 0x26, 0xf8, 0x1a, 0x40, 0x0d, 0x7a, 0xc0, + 0x5d, 0x32, 0x23, 0xfe, 0x0b, 0xd7, 0x3e, 0x7c, 0xd4, 0xf0, 0x38, 0x73, 0x34, 0x7e, 0x2d, 0xbb, + 0x24, 0xfc, 0x0c, 0xb8, 0x5f, 0xf0, 0x79, 0xe8, 0x51, 0x8a, 0x44, 0xf2, 0xaa, 0xae, 0xd3, 0x14, + 0x15, 0x36, 0xa8, 0xaf, 0x51, 0x52, 0x99, 0x6e, 0x4a, 0xfe, 0x86, 0xae, 0x17, 0x24, 0xdd, 0xa2, + 0x79, 0xc7, 0x78, 0x83, 0x55, 0x97, 0x88, 0x78, 0x53, 0x11, 0x82, 0xcd, 0x61, 0x4b, 0x99, 0xfd, + 0x8b, 0x76, 0xee, 0x04, 0x4a, 0x8d, 0x89, 0x63, 0xe2, 0x84, 0x38, 0x2e, 0x4e, 0xd3, 0x54, 0x0d, + 0x93, 0x9f, 0x57, 0xd1, 0x7f, 0x6c, 0x6f, 0xec, 0x04, 0x6a, 0xe2, 0xed, 0x08, 0x8e, 0x22, 0x48, + 0x40, 0xc4, 0xbe, 0x95, 0x31, 0xd8, 0x55, 0x5b, 0x87, 0x49, 0xf4, 0xb3, 0x1e, 0xe8, 0x81, 0x22, + 0xc4, 0x6b, 0x33, 0x2f, 0xc9, 0xa6, 0xde, 0x99, 0x5b, 0x70, 0x03, 0x06, 0xa0, 0xa7, 0x36, 0x01, + 0x47, 0x56, 0x8a, 0xca, 0x6a, 0x3a, 0x78, 0xa9, 0xa8, 0xac, 0xc2, 0x61, 0x10, 0x5c, 0x2f, 0x28, + 0xa6, 0x2b, 0x1d, 0x92, 0xc8, 0x1f, 0xd2, 0x2a, 0xd7, 0x2b, 0xfb, 0x6a, 0x8b, 0xeb, 0xb2, 0xd9, + 0x65, 0xe8, 0x98, 0x5f, 0x53, 0xca, 0x65, 0xb5, 0x78, 0xe6, 0x3c, 0xbc, 0x02, 0x40, 0x97, 0x37, + 0xf3, 0x56, 0x09, 0xf6, 0x02, 0x76, 0xdc, 0x54, 0x47, 0xdd, 0x4b, 0xb4, 0xde, 0x3f, 0xd5, 0xdc, + 0x01, 0x15, 0xe6, 0x36, 0x71, 0xfb, 0xa4, 0x38, 0x25, 0x8d, 0x34, 0x76, 0x40, 0xf5, 0xba, 0x54, + 0x73, 0x87, 0x9d, 0xf5, 0xb0, 0xb9, 0xff, 0x49, 0x3a, 0x01, 0x31, 0x32, 0x3f, 0x89, 0x19, 0xe3, + 0x4a, 0xf2, 0x10, 0xdf, 0xac, 0x22, 0x4c, 0xc1, 0x8d, 0x33, 0x62, 0x6a, 0xca, 0x01, 0x96, 0x44, + 0x84, 0x4e, 0x27, 0x1f, 0x30, 0x16, 0x7a, 0x79, 0x26, 0xe0, 0xef, 0x05, 0xa0, 0xcf, 0x6f, 0x13, + 0xc1, 0x57, 0x20, 0xcc, 0x73, 0xbb, 0x22, 0xdf, 0x9c, 0xef, 0xcd, 0x95, 0x7d, 0x98, 0xa7, 0x9b, + 0xe6, 0x32, 0xf0, 0xb5, 0xda, 0xd9, 0x21, 0xb0, 0x8f, 0xb3, 0x83, 0x2d, 0xce, 0xb9, 0xfe, 0x5a, + 0xf0, 0xd3, 0xdf, 0x4c, 0x15, 0x4d, 0xed, 0x49, 0x7f, 0xd7, 0x94, 0xb3, 0x8f, 0xba, 0xfe, 0xd7, + 0x01, 0x6e, 0x91, 0xf9, 0xc6, 0xe4, 0x7f, 0xd5, 0x89, 0xc9, 0x3f, 0x55, 0x08, 0xfc, 0xd9, 0x44, + 0xe5, 0xdb, 0xbf, 0xd1, 0xa8, 0xfc, 0xef, 0x07, 0xe0, 0xcc, 0xee, 0x4d, 0x20, 0x7c, 0x1b, 0x7a, + 0x5d, 0xc6, 0x82, 0x9d, 0xcb, 0x8d, 0x3b, 0x83, 0x76, 0x9b, 0xa1, 0xb1, 0x56, 0x94, 0x9d, 0xeb, + 0x4d, 0xc6, 0x35, 0xa9, 0xf6, 0xb3, 0xed, 0x80, 0x8f, 0xc0, 0x37, 0x06, 0xf8, 0x78, 0x8c, 0xe0, + 0x68, 0x33, 0x33, 0xf5, 0xeb, 0xec, 0x97, 0xe1, 0xdf, 0x0b, 0x35, 0xa8, 0xcc, 0xcf, 0x0d, 0x94, + 0xa2, 0x51, 0x77, 0x87, 0x9f, 0x41, 0x77, 0xcf, 0xfe, 0x7f, 0x81, 0xcf, 0xab, 0xe8, 0xef, 0xfe, + 0xe1, 0xc2, 0x36, 0xe0, 0x04, 0x44, 0xec, 0xc6, 0x0e, 0x0e, 0xf8, 0x76, 0x6c, 0x12, 0xed, 0x19, + 0xdb, 0xf1, 0xdb, 0xc1, 0x6d, 0x93, 0xd4, 0xb3, 0x02, 0x5b, 0x78, 0x9f, 0x9f, 0x3f, 0xbc, 0xcf, + 0xaf, 0x5f, 0x85, 0xd8, 0x1b, 0x45, 0x7d, 0x59, 0x29, 0x2e, 0x56, 0x54, 0x76, 0x76, 0x29, 0x40, + 0x87, 0x7d, 0x9b, 0x07, 0xd1, 0xdb, 0x9c, 0x59, 0x1a, 0xc9, 0xf9, 0x04, 0x75, 0x0c, 0xb3, 0x64, + 0xb2, 0xe4, 0x67, 0xe7, 0x27, 0x28, 0x3c, 0xec, 0xa4, 0x33, 0xb7, 0x5f, 0x7e, 0x3b, 0x80, 0xb6, + 0xfb, 0x29, 0x3c, 0x96, 0xb0, 0x2d, 0x1a, 0x67, 0x21, 0x48, 0x96, 0x3f, 0x77, 0x1b, 0x8c, 0xef, + 0x1e, 0x33, 0x54, 0xfb, 0xe6, 0x40, 0xa6, 0x4d, 0xa6, 0x32, 0xf0, 0x1a, 0xf4, 0x90, 0xbf, 0x66, + 0x8e, 0x26, 0x2d, 0xca, 0xab, 0x86, 0xc5, 0x13, 0x33, 0x9e, 0xdf, 0x8f, 0xd8, 0xda, 0xa7, 0x0c, + 0x32, 0x6d, 0x32, 0xfd, 0x94, 0x81, 0xf3, 0x04, 0x5f, 0x85, 0x10, 0x7d, 0xc0, 0x27, 0xf8, 0xc4, + 0xbe, 0xe4, 0x67, 0xda, 0x64, 0x26, 0x05, 0xff, 0x1a, 0x82, 0xd1, 0x82, 0xf3, 0xf9, 0x80, 0x5c, + 0xdd, 0x17, 0x36, 0x72, 0x7e, 0x57, 0x13, 0xcc, 0xc4, 0x79, 0xaa, 0x72, 0x9b, 0xdd, 0x4d, 0xe8, + 0xe0, 0xf7, 0x9e, 0x64, 0xb1, 0xe0, 0xfe, 0x36, 0xc1, 0x7c, 0x4d, 0xf4, 0xc5, 0xed, 0x77, 0x15, + 0x4c, 0xfc, 0x3a, 0x08, 0x3c, 0xd1, 0xa1, 0x52, 0xb8, 0x4b, 0x68, 0x4d, 0x95, 0x9b, 0xbc, 0x8d, + 0x8c, 0xf0, 0x18, 0x4d, 0x71, 0x38, 0x67, 0x53, 0xe3, 0xf7, 0xe0, 0xb8, 0xc3, 0x9a, 0xd3, 0xcb, + 0xb9, 0xca, 0xfa, 0x72, 0x51, 0xcb, 0x3b, 0xf7, 0xed, 0xee, 0x6a, 0x95, 0x66, 0xb9, 0xfe, 0x33, + 0x48, 0x3e, 0xe2, 0xb0, 0x5f, 0x2f, 0x2f, 0x50, 0x66, 0x7e, 0x13, 0xef, 0xa6, 0x56, 0xc1, 0x37, + 0xa1, 0xd7, 0x47, 0x3a, 0xdf, 0x38, 0x9e, 0xf7, 0x1d, 0x0a, 0xa7, 0x6a, 0x4c, 0x18, 0xbb, 0x6f, + 0x56, 0x57, 0x02, 0xbe, 0x45, 0xd3, 0x31, 0x71, 0xb9, 0xec, 0xda, 0x24, 0xdf, 0x54, 0x76, 0x10, + 0xca, 0xae, 0x84, 0xf1, 0xf4, 0x9e, 0x2c, 0xe7, 0x92, 0xfb, 0x05, 0xd6, 0xa1, 0xd7, 0xc9, 0x5b, + 0x4a, 0xaf, 0xb7, 0xb3, 0x44, 0x0f, 0xe1, 0xbd, 0xe6, 0xee, 0xea, 0xf3, 0x4b, 0x5e, 0x2e, 0xdb, + 0x09, 0xd8, 0xe9, 0x75, 0x79, 0x96, 0xb7, 0xeb, 0x1d, 0xe8, 0xb2, 0x0b, 0xa4, 0x49, 0xca, 0xdf, + 0x6e, 0x90, 0xbd, 0x9e, 0x94, 0xe4, 0x4a, 0x2f, 0x31, 0xe2, 0xdd, 0x01, 0x78, 0x83, 0x02, 0x72, + 0x94, 0x0b, 0xa3, 0xd9, 0xe7, 0x6e, 0xd4, 0x32, 0xbe, 0x13, 0x1e, 0x76, 0xfc, 0x7b, 0xc7, 0x37, + 0xd7, 0x7f, 0x7d, 0x53, 0x9c, 0xa4, 0xdf, 0x01, 0xb9, 0xc7, 0x25, 0x92, 0xde, 0xc0, 0xf1, 0x4d, + 0x35, 0x76, 0xb4, 0xa9, 0xb7, 0x60, 0xc7, 0x54, 0x63, 0xc7, 0xfc, 0x52, 0x8d, 0xb5, 0xef, 0x2e, + 0xd5, 0xd8, 0x50, 0xd3, 0xa2, 0xfd, 0x52, 0x8d, 0x95, 0x21, 0x4c, 0x47, 0xd7, 0xe4, 0xd0, 0xa7, + 0xd1, 0xbd, 0xe6, 0x8e, 0xa9, 0xb7, 0x11, 0x02, 0xfe, 0xa7, 0x5f, 0x5e, 0x0a, 0xfe, 0xc7, 0x08, + 0x86, 0x1a, 0x5e, 0x5b, 0x60, 0xc3, 0xa2, 0xee, 0x09, 0x5b, 0xd8, 0xfc, 0x9a, 0x04, 0xbb, 0xad, + 0x49, 0x33, 0x1f, 0x0d, 0xea, 0x0d, 0x29, 0xeb, 0xd3, 0x28, 0x47, 0xf6, 0x9e, 0x46, 0xb9, 0x2e, + 0x83, 0x73, 0xb4, 0x69, 0x0a, 0x62, 0x77, 0x06, 0xe7, 0xf2, 0xbe, 0x93, 0x4a, 0x9f, 0xac, 0x4b, + 0x2a, 0xfd, 0xf8, 0xfb, 0x08, 0xaf, 0x4c, 0xdc, 0xcf, 0x9f, 0xbd, 0xa7, 0x28, 0x95, 0xb3, 0xa6, + 0xa5, 0x94, 0x0b, 0x8a, 0x51, 0xc8, 0x04, 0xbd, 0xa9, 0xa6, 0x5f, 0x82, 0x2e, 0xa5, 0x50, 0xa8, + 0x1d, 0x71, 0xe3, 0x34, 0x63, 0x76, 0xe4, 0x8b, 0x2a, 0x0a, 0x5a, 0xc6, 0xba, 0x2a, 0x47, 0x95, + 0x42, 0xc1, 0xb1, 0x98, 0x66, 0xa0, 0xab, 0xac, 0xe7, 0xf2, 0x6b, 0x4a, 0xb1, 0xa8, 0x96, 0x57, + 0xd5, 0x1d, 0x72, 0x16, 0x47, 0xcb, 0xfa, 0xbc, 0x4d, 0x8a, 0xdf, 0x73, 0x2e, 0x29, 0xd5, 0xd8, + 0x73, 0x4d, 0x56, 0xb4, 0xeb, 0x92, 0xd2, 0x45, 0x16, 0xd6, 0xb6, 0xd9, 0x32, 0x21, 0xfb, 0x82, + 0x52, 0x4d, 0xfa, 0x07, 0xd0, 0x75, 0xdb, 0x74, 0x49, 0xc6, 0x0d, 0xae, 0x3f, 0xd5, 0xdd, 0x07, + 0x67, 0xc7, 0x50, 0x47, 0x8c, 0x37, 0xbf, 0xf1, 0x6d, 0xb3, 0x26, 0x5f, 0x83, 0x78, 0x5e, 0xa9, + 0x58, 0xf9, 0x35, 0xc5, 0x55, 0x48, 0x62, 0xe7, 0x4b, 0xe7, 0xf3, 0x8c, 0xc9, 0x5b, 0x42, 0xc4, + 0xbe, 0x38, 0x99, 0x09, 0xc9, 0x42, 0xbe, 0x8e, 0x02, 0xdf, 0x85, 0x43, 0x3c, 0xcf, 0xe8, 0xb2, + 0x62, 0xaa, 0x05, 0x57, 0x79, 0x63, 0x4d, 0x4e, 0x17, 0xae, 0xee, 0xe2, 0x73, 0x92, 0x30, 0x3b, + 0x52, 0x3d, 0x65, 0xf6, 0x55, 0x7c, 0x28, 0xb0, 0x02, 0xd1, 0x92, 0x6e, 0xa8, 0x3c, 0x87, 0x1f, + 0x77, 0x93, 0xce, 0xee, 0x3f, 0x4b, 0x83, 0xbd, 0x28, 0x88, 0x50, 0xf6, 0x18, 0xcf, 0x41, 0x9c, + 0x5e, 0x87, 0xd2, 0x0a, 0xf6, 0x65, 0x3b, 0xad, 0x92, 0x78, 0xa5, 0x69, 0xba, 0xe7, 0x18, 0x61, + 0xb8, 0x5c, 0x60, 0xc0, 0xb2, 0xcb, 0x15, 0x5c, 0x82, 0x5e, 0x2e, 0x82, 0xb9, 0x66, 0xf8, 0xac, + 0xed, 0xdb, 0xf5, 0x2a, 0x39, 0xf4, 0xe9, 0xc7, 0x7e, 0x12, 0x32, 0x61, 0x19, 0xb3, 0xa2, 0xdc, + 0x4f, 0xdd, 0x31, 0xc7, 0xda, 0xb7, 0x1f, 0xf9, 0x47, 0x61, 0x76, 0xca, 0x0a, 0x2d, 0x2b, 0x96, + 0x7a, 0x85, 0xd0, 0xe3, 0x0f, 0x20, 0xa6, 0x54, 0x34, 0xb7, 0x84, 0xfb, 0x4d, 0x3e, 0x9e, 0xe8, + 0xbe, 0x9e, 0xb7, 0x70, 0xd9, 0x91, 0x22, 0x45, 0x36, 0xf9, 0xd6, 0x95, 0xe9, 0x90, 0xbb, 0x94, + 0x8a, 0x56, 0x93, 0xff, 0x0e, 0x80, 0x4b, 0xf6, 0xc0, 0xee, 0xae, 0xfe, 0x39, 0xec, 0xf5, 0x29, + 0x42, 0x32, 0x1d, 0x72, 0xa7, 0xe1, 0xc8, 0xfe, 0xff, 0x11, 0x1c, 0xae, 0xbb, 0xcd, 0xe6, 0x0a, + 0x22, 0x24, 0xf7, 0xb2, 0x3b, 0x35, 0x96, 0xc3, 0x8f, 0x78, 0x09, 0x24, 0x0f, 0x94, 0xdc, 0x97, + 0xef, 0x6a, 0x4e, 0x60, 0xfc, 0x08, 0x41, 0xef, 0x3d, 0x65, 0x25, 0xa7, 0xda, 0x46, 0x1e, 0x8f, + 0x81, 0x3f, 0xd7, 0xcc, 0x87, 0xc8, 0x13, 0xd0, 0x2a, 0x2b, 0x4d, 0xdd, 0x58, 0x01, 0xff, 0x9b, + 0x6d, 0xf1, 0x7b, 0x75, 0x7c, 0x26, 0xbe, 0x0f, 0x02, 0xb1, 0xae, 0x72, 0xab, 0xeb, 0x8a, 0x51, + 0xe0, 0x15, 0x78, 0xcd, 0xf7, 0x00, 0xe4, 0xa9, 0xc0, 0x05, 0xc5, 0x52, 0xde, 0x20, 0x2c, 0xbb, + 0xbf, 0x56, 0x17, 0x2b, 0xb8, 0x79, 0x4c, 0xd2, 0xfc, 0x1e, 0xea, 0xd5, 0x56, 0xed, 0xb5, 0x63, + 0x26, 0x86, 0x69, 0xc9, 0x3b, 0x0e, 0x34, 0xab, 0x03, 0xbf, 0x0f, 0x67, 0xe4, 0xf7, 0xd0, 0x03, + 0x31, 0x5e, 0x22, 0xe3, 0x65, 0x95, 0xb0, 0x8c, 0x75, 0xd3, 0x72, 0x55, 0xe2, 0xc4, 0x33, 0xaf, + 0x04, 0x2f, 0xd1, 0xae, 0xc4, 0x6d, 0x76, 0x0d, 0x93, 0x23, 0x4f, 0x6a, 0x13, 0x21, 0x43, 0xa7, + 0x62, 0x7a, 0x17, 0x4b, 0x6a, 0xc1, 0x61, 0xa5, 0x7d, 0xcb, 0x37, 0x2a, 0xac, 0x54, 0xb4, 0xba, + 0x37, 0xe4, 0x74, 0xd2, 0x4f, 0xef, 0x06, 0xbb, 0xae, 0xec, 0xb2, 0xd2, 0x4e, 0xd2, 0x66, 0xcf, + 0xec, 0xe1, 0x66, 0xb8, 0xf7, 0x6a, 0xfb, 0x2e, 0x1b, 0xdf, 0x4b, 0x4a, 0xf7, 0x72, 0x9a, 0xf8, + 0x7d, 0x38, 0xee, 0xf9, 0xf8, 0xae, 0xa6, 0x9a, 0xb9, 0x15, 0x43, 0x2f, 0xd1, 0x78, 0xb8, 0x59, + 0x51, 0xf2, 0x6a, 0xd3, 0x2f, 0x46, 0x44, 0xe4, 0xa3, 0x9c, 0x7d, 0x81, 0x73, 0x5f, 0x32, 0xf4, + 0xd2, 0x35, 0x9b, 0x17, 0x5f, 0x82, 0xde, 0xb2, 0x9e, 0xab, 0x2f, 0xa1, 0xe9, 0xa7, 0x05, 0x22, + 0x72, 0xbc, 0xac, 0x2f, 0x7a, 0x85, 0xe2, 0x3b, 0x30, 0xa0, 0xe4, 0x2d, 0xed, 0xae, 0xba, 0x5d, + 0x16, 0xfb, 0xaa, 0x44, 0x6a, 0xc7, 0x49, 0xe3, 0x92, 0x48, 0xd3, 0x18, 0x64, 0x22, 0x72, 0x3f, + 0x93, 0x59, 0x5f, 0xd8, 0x14, 0x44, 0x0d, 0x7d, 0xbd, 0x5c, 0xc8, 0x19, 0xfa, 0xb2, 0x56, 0x4e, + 0x9c, 0x6d, 0x9a, 0x6b, 0x1e, 0x28, 0xa9, 0x4c, 0x28, 0xc9, 0x91, 0xa6, 0xa8, 0x2a, 0xa6, 0x95, + 0x63, 0x72, 0x13, 0x23, 0x4d, 0x39, 0xa3, 0x94, 0x76, 0x8e, 0x92, 0xe2, 0x11, 0x08, 0x1b, 0x4a, + 0xb9, 0xa0, 0x97, 0x12, 0xe7, 0x9a, 0x32, 0x71, 0x2a, 0x72, 0x4a, 0x67, 0x97, 0xcb, 0x73, 0x5a, + 0x25, 0x67, 0x5a, 0x5a, 0xfe, 0x8e, 0x56, 0x56, 0x4d, 0x33, 0x31, 0xda, 0x94, 0x1b, 0x33, 0x9e, + 0xcb, 0x95, 0x45, 0x87, 0x03, 0x2f, 0xd9, 0x39, 0x45, 0xdc, 0x62, 0x52, 0xbe, 0xb9, 0x03, 0x58, + 0x6a, 0x33, 0x96, 0x59, 0xe4, 0x92, 0x6e, 0x64, 0x14, 0x73, 0x4d, 0x2b, 0xaf, 0x66, 0x3a, 0x65, + 0x81, 0x49, 0x70, 0x49, 0x7d, 0x0b, 0x3a, 0x69, 0x46, 0xf2, 0x35, 0xc5, 0x5c, 0x4b, 0xa4, 0x9f, + 0xf6, 0x9b, 0x48, 0x9d, 0x72, 0x84, 0x48, 0x23, 0x6f, 0x88, 0x29, 0x6d, 0xab, 0x51, 0xba, 0x9a, + 0x6b, 0xea, 0xdf, 0xce, 0xba, 0x95, 0xc8, 0x36, 0xe9, 0x04, 0x90, 0xed, 0x6c, 0x37, 0x4b, 0x84, + 0xdb, 0x3e, 0x0c, 0xf0, 0x44, 0x5b, 0xf8, 0x23, 0xe0, 0xe9, 0x5d, 0x1a, 0x0a, 0xff, 0xd6, 0x2e, + 0x12, 0x5a, 0x31, 0xa1, 0x0b, 0x5c, 0x68, 0x06, 0xe4, 0x41, 0x26, 0xd4, 0xb7, 0x48, 0x1d, 0xba, + 0x4d, 0x7a, 0x25, 0x3f, 0x57, 0x5c, 0xce, 0x29, 0x95, 0x4a, 0x62, 0x72, 0x6f, 0x88, 0xb4, 0x26, + 0xd7, 0xf9, 0x39, 0x1a, 0x2b, 0x2a, 0x47, 0x59, 0x09, 0x57, 0x96, 0xe7, 0x2a, 0x15, 0x7c, 0x1e, + 0xba, 0x4a, 0xeb, 0x45, 0x4b, 0xb3, 0xcb, 0x9b, 0xda, 0x11, 0x4d, 0x17, 0x95, 0x81, 0x72, 0x30, + 0xfe, 0xf5, 0x9d, 0x2f, 0xdf, 0x2f, 0x34, 0x11, 0x79, 0xc8, 0x6b, 0x4c, 0xd8, 0xf9, 0x98, 0x33, + 0x5d, 0x07, 0x70, 0x29, 0xff, 0xcd, 0x26, 0x23, 0xdf, 0xb5, 0xc3, 0xa5, 0x7c, 0xfc, 0x4b, 0xd0, + 0xc7, 0xdb, 0xe5, 0xb9, 0x9b, 0x9f, 0x58, 0xdc, 0x77, 0xfe, 0x83, 0x86, 0x6d, 0xed, 0x96, 0x31, + 0x2b, 0xca, 0xcd, 0x84, 0xb3, 0xd0, 0x6f, 0xb7, 0xd0, 0x5b, 0x83, 0xa5, 0x26, 0xcd, 0xea, 0x96, + 0x7b, 0x39, 0x93, 0x47, 0xd6, 0x75, 0xb0, 0x1f, 0xbb, 0xbf, 0xa6, 0x91, 0x98, 0x69, 0x32, 0x30, + 0xdc, 0x3b, 0xd6, 0x96, 0x89, 0xc9, 0x36, 0xe6, 0xb2, 0x06, 0x94, 0xc0, 0xbf, 0x81, 0x20, 0xea, + 0x96, 0x34, 0xbb, 0xa7, 0x43, 0xbd, 0x0f, 0x54, 0x5b, 0x1a, 0xe1, 0xe5, 0x3d, 0xfe, 0x3e, 0x3a, + 0x61, 0x92, 0xf7, 0x67, 0x97, 0x75, 0x4b, 0xa4, 0xbd, 0xb5, 0xac, 0x5b, 0x67, 0x79, 0x41, 0x35, + 0x6b, 0x33, 0x26, 0x43, 0xed, 0x5b, 0x1a, 0xf8, 0x77, 0x10, 0xf4, 0x79, 0x90, 0xb6, 0xbc, 0x6f, + 0x13, 0x7f, 0xc3, 0x40, 0x38, 0xaf, 0xee, 0x1b, 0x4a, 0xcb, 0x5c, 0x0f, 0xfc, 0x1c, 0xf9, 0xf8, + 0xfb, 0xe8, 0xf0, 0xb6, 0x2a, 0x39, 0xe3, 0x18, 0x93, 0xf1, 0xf2, 0x36, 0x7e, 0x7c, 0xa3, 0x96, + 0x51, 0xcb, 0x4e, 0x04, 0xa2, 0x15, 0x54, 0xa7, 0xe7, 0x6e, 0x36, 0x19, 0xcd, 0x1e, 0x27, 0xd3, + 0xd6, 0xb6, 0xa4, 0x03, 0xb8, 0x0c, 0xbd, 0x7e, 0xe2, 0x6e, 0x51, 0x71, 0xaf, 0xec, 0x37, 0xf3, + 0x01, 0xdd, 0x60, 0x7b, 0xe4, 0x78, 0x7e, 0x5b, 0x79, 0xae, 0x0f, 0xb2, 0xd1, 0xe9, 0xa8, 0xae, + 0x68, 0x65, 0x9a, 0x91, 0x2a, 0x71, 0xa9, 0x49, 0x0b, 0x04, 0x27, 0x0b, 0x17, 0x99, 0x8f, 0x0e, + 0x0f, 0xfe, 0x45, 0x66, 0xb8, 0xb8, 0xa4, 0xbc, 0xb1, 0xeb, 0x03, 0xff, 0xc8, 0xa7, 0x1f, 0xd7, + 0x31, 0xd7, 0x46, 0xc7, 0x6f, 0x79, 0x09, 0x72, 0xb7, 0xe2, 0x29, 0x7c, 0x15, 0xe2, 0x84, 0xdf, + 0xfe, 0xb0, 0x1e, 0x33, 0x38, 0xe6, 0x9b, 0xe4, 0x6b, 0xf6, 0x9e, 0xf2, 0x16, 0xdd, 0x7c, 0x36, + 0x72, 0x32, 0x23, 0xc8, 0x82, 0x52, 0xd1, 0x3c, 0xef, 0xb0, 0x0a, 0x3d, 0xde, 0x8a, 0x9a, 0x89, + 0x57, 0x77, 0x77, 0x40, 0xf1, 0xf4, 0x16, 0x4d, 0xf2, 0x64, 0x7b, 0xab, 0x33, 0x82, 0x1c, 0xf3, + 0x34, 0xc7, 0x74, 0xef, 0x14, 0x5a, 0x25, 0x67, 0xa8, 0x95, 0x75, 0x8b, 0xb5, 0x69, 0xae, 0xc9, + 0xc8, 0xc4, 0x9d, 0x9d, 0xe2, 0x72, 0x45, 0x76, 0x58, 0xf0, 0x2f, 0x23, 0x67, 0xdf, 0xf3, 0xca, + 0x92, 0x76, 0xd7, 0x3f, 0x97, 0x17, 0x96, 0xd6, 0x0c, 0x55, 0xb1, 0x38, 0x82, 0xca, 0xd1, 0xda, + 0xf5, 0x9b, 0x9f, 0xb3, 0x8e, 0xe3, 0xf6, 0xe6, 0xe7, 0xa9, 0xc6, 0xa5, 0xda, 0x86, 0x65, 0x51, + 0x79, 0xb9, 0x92, 0x6a, 0xae, 0x25, 0x56, 0x9b, 0x34, 0x08, 0x3b, 0xfb, 0x14, 0xab, 0xc1, 0x55, + 0xd5, 0xa4, 0x37, 0x93, 0x6d, 0x0d, 0xee, 0x12, 0xa3, 0x35, 0x15, 0xc3, 0xdd, 0x49, 0x2e, 0x29, + 0x1f, 0x40, 0x37, 0x69, 0x68, 0x4e, 0x2b, 0x5b, 0xaa, 0x51, 0x56, 0x8a, 0x89, 0x1f, 0x77, 0xec, + 0x7a, 0xb6, 0xf6, 0x7d, 0xfa, 0xb1, 0x97, 0x99, 0x86, 0x1c, 0xba, 0xc8, 0xa3, 0xcb, 0xfc, 0x09, + 0x3e, 0x0a, 0x9d, 0xd4, 0xbb, 0x4a, 0x61, 0xa7, 0x7f, 0x49, 0xbf, 0xe3, 0x2f, 0x47, 0xc8, 0x13, + 0x8a, 0x23, 0xcd, 0x40, 0xa4, 0x50, 0x36, 0x59, 0x3a, 0xc2, 0x9f, 0x74, 0x34, 0xb8, 0x82, 0x5a, + 0x3b, 0x70, 0xe4, 0x6c, 0xe2, 0x91, 0x0b, 0x65, 0xf3, 0x72, 0x79, 0x45, 0x97, 0x3b, 0x0a, 0xec, + 0x1f, 0x3c, 0x0f, 0x21, 0xd3, 0x52, 0x2c, 0x35, 0xf1, 0x57, 0x1d, 0x34, 0xde, 0xdc, 0x4c, 0xcc, + 0xc8, 0x4d, 0xf6, 0x23, 0xa3, 0x9b, 0xd6, 0x22, 0x61, 0x92, 0x19, 0x2f, 0x5e, 0x86, 0x1e, 0x27, + 0x80, 0x94, 0x63, 0xe2, 0xfe, 0x9a, 0x89, 0x1b, 0x69, 0x7a, 0x0c, 0x72, 0xc2, 0x2a, 0x64, 0xd5, + 0x10, 0x36, 0xa9, 0xb3, 0x66, 0x9d, 0x77, 0x2b, 0x3c, 0x76, 0x44, 0xdf, 0xe0, 0x45, 0x88, 0xd5, + 0xca, 0xa0, 0x0d, 0xff, 0xb2, 0xa3, 0x81, 0x63, 0xc3, 0x55, 0x84, 0x1d, 0x7f, 0x22, 0x6d, 0xa5, + 0xd1, 0xcc, 0x2e, 0xc5, 0xf5, 0x04, 0xbf, 0x09, 0x71, 0x36, 0x06, 0x2a, 0x8d, 0xb1, 0x30, 0xb9, + 0xff, 0x89, 0x25, 0x0d, 0xf5, 0x0f, 0x61, 0x5c, 0xe6, 0xe4, 0x37, 0x2f, 0x2f, 0xd0, 0x8e, 0xec, + 0xb1, 0xf9, 0x6f, 0x6a, 0x15, 0x2a, 0xb2, 0xee, 0x9b, 0x76, 0xef, 0xee, 0xfd, 0x9b, 0x76, 0x77, + 0xa0, 0x7b, 0xd5, 0x50, 0x2a, 0x6b, 0x1f, 0x15, 0xb9, 0xfd, 0xf7, 0x1e, 0xad, 0x4f, 0x83, 0x6c, + 0x6d, 0x6f, 0x10, 0xd2, 0x37, 0xaf, 0xec, 0xde, 0xda, 0xef, 0xe2, 0xc2, 0x99, 0x7d, 0xf7, 0x31, + 0xc4, 0x6b, 0xd7, 0x3b, 0x78, 0xf2, 0xbe, 0xc4, 0xfb, 0x7b, 0xcf, 0x18, 0xe8, 0x2d, 0x5a, 0xf0, + 0x77, 0xc4, 0x0b, 0x4e, 0x51, 0x4c, 0x96, 0x89, 0xaf, 0xc1, 0x80, 0xf9, 0xc0, 0xb4, 0xd4, 0x92, + 0x13, 0xea, 0xe2, 0xb7, 0x92, 0xcc, 0x84, 0xd2, 0x64, 0x45, 0xf6, 0xca, 0xfd, 0x8c, 0x8d, 0x07, + 0xb9, 0x78, 0xaa, 0x4a, 0x13, 0x2f, 0x43, 0x9f, 0x59, 0xd4, 0xef, 0xe5, 0xea, 0x0c, 0xe9, 0xc4, + 0x07, 0xbe, 0x00, 0x54, 0xcf, 0x54, 0x59, 0x2c, 0xea, 0xf7, 0xbc, 0xb6, 0x73, 0xa6, 0x57, 0xc6, + 0x44, 0xda, 0x05, 0x8f, 0x5d, 0x8c, 0xdf, 0x81, 0xd8, 0xed, 0x7b, 0x34, 0x7e, 0xcd, 0x3f, 0x58, + 0x9e, 0x58, 0xa6, 0xd2, 0xcf, 0xee, 0xb4, 0x11, 0x66, 0x6f, 0x2d, 0xd5, 0xbe, 0x72, 0xce, 0x07, + 0xbe, 0xfb, 0xf6, 0x3d, 0xab, 0xf6, 0x10, 0x7f, 0x0b, 0x0e, 0x15, 0xa7, 0x58, 0xed, 0x59, 0x4a, + 0x2f, 0xbb, 0x5f, 0x12, 0x7a, 0x93, 0xee, 0xe8, 0x93, 0x7b, 0x8b, 0x53, 0xa4, 0x96, 0x0c, 0xbd, + 0xc8, 0x3b, 0x05, 0xbf, 0x01, 0x7d, 0x75, 0xc2, 0x58, 0x92, 0xba, 0x4a, 0x53, 0x51, 0x71, 0xb7, + 0x28, 0x8a, 0x6a, 0xc4, 0x0f, 0xe0, 0x48, 0x9d, 0x20, 0x8f, 0x03, 0xfc, 0xa3, 0xa7, 0x75, 0x80, + 0xf7, 0xc9, 0x03, 0xee, 0x42, 0xb3, 0x2e, 0x67, 0xf8, 0x35, 0xe8, 0xad, 0x2b, 0xba, 0xac, 0x97, + 0xd5, 0x84, 0xb1, 0xf3, 0x31, 0x95, 0x88, 0x15, 0xdc, 0x62, 0xaf, 0xe9, 0x65, 0x15, 0x5f, 0x05, + 0x70, 0xed, 0x52, 0xe6, 0x7e, 0x36, 0x29, 0xb9, 0x33, 0x6f, 0xef, 0x4a, 0xb3, 0xff, 0x3e, 0xf0, + 0x59, 0x15, 0x3d, 0x09, 0xc0, 0x11, 0xe8, 0xe5, 0x49, 0x38, 0x29, 0x42, 0xf3, 0x8a, 0xc4, 0x3e, + 0x53, 0x10, 0x4c, 0x89, 0xa9, 0x71, 0xe8, 0x85, 0x0e, 0x16, 0x29, 0x32, 0x71, 0x64, 0x52, 0x1c, + 0x4b, 0x89, 0xa9, 0xd1, 0x14, 0x74, 0x43, 0x58, 0x66, 0x61, 0x29, 0x34, 0x75, 0x1a, 0xc1, 0x59, + 0x48, 0xdc, 0x52, 0x97, 0x93, 0x73, 0x95, 0x4a, 0x91, 0x97, 0x95, 0x74, 0xc2, 0x26, 0xf1, 0xd4, + 0xa4, 0x38, 0x36, 0x26, 0x4e, 0x8e, 0x89, 0x33, 0x29, 0x71, 0x26, 0x2d, 0xce, 0x8c, 0x41, 0x1f, + 0xc4, 0x24, 0x9d, 0x25, 0x4a, 0xb7, 0x3f, 0x7d, 0x36, 0x31, 0x09, 0xc7, 0x20, 0x36, 0xb7, 0x70, + 0xd9, 0xfd, 0x34, 0x3a, 0x39, 0x23, 0x4e, 0xa5, 0xc5, 0x99, 0x69, 0x71, 0x3a, 0x0d, 0x47, 0x20, + 0x76, 0x41, 0x5f, 0x74, 0xbf, 0xee, 0x4c, 0xa5, 0x46, 0xc5, 0xb1, 0x29, 0x71, 0x66, 0x92, 0xb4, + 0x80, 0x1d, 0xfd, 0xce, 0x92, 0x23, 0x9e, 0xfd, 0xe1, 0x35, 0x1c, 0x98, 0x9e, 0x38, 0x8d, 0x60, + 0x06, 0x12, 0xf3, 0x74, 0x1e, 0x27, 0xed, 0x8f, 0xbd, 0xd9, 0x5f, 0x8e, 0x33, 0xf1, 0xb1, 0xf1, + 0x51, 0x71, 0x72, 0x5c, 0x4c, 0x8d, 0xa6, 0xc5, 0x89, 0x19, 0x71, 0x6a, 0x46, 0x4c, 0x4f, 0x88, + 0xe9, 0x94, 0x38, 0x36, 0x21, 0x8e, 0x8d, 0x8b, 0xd3, 0x90, 0x84, 0xd8, 0x75, 0x6b, 0x4d, 0x35, + 0x6a, 0x17, 0x4a, 0x62, 0xa9, 0x09, 0x71, 0x7c, 0x5c, 0x9c, 0x1a, 0x13, 0x53, 0x53, 0x62, 0x6a, + 0x46, 0x3a, 0x05, 0x71, 0xf7, 0x09, 0x94, 0xdd, 0xeb, 0xc4, 0x1b, 0x55, 0x74, 0x84, 0x27, 0xdc, + 0x0c, 0xa7, 0xa7, 0xc4, 0x31, 0x31, 0x2d, 0xbd, 0xe8, 0x09, 0x37, 0xbb, 0xbe, 0xc3, 0xbd, 0x59, + 0x45, 0x3d, 0x5b, 0x55, 0xd4, 0x99, 0x62, 0x17, 0xdf, 0x53, 0x69, 0xe9, 0x25, 0xc0, 0xae, 0x30, + 0xad, 0x9b, 0xf8, 0xed, 0xcd, 0x2a, 0x7a, 0x6b, 0xab, 0x8a, 0x42, 0xd3, 0x33, 0xe2, 0xcc, 0x28, + 0xcd, 0xe2, 0x79, 0xce, 0xff, 0x73, 0x3e, 0x89, 0x8d, 0x2a, 0x3a, 0xca, 0xaf, 0x1b, 0x1e, 0xa7, + 0xdf, 0x5d, 0x63, 0x1f, 0xa7, 0x1b, 0x95, 0x26, 0x3c, 0x5f, 0x85, 0x3b, 0xb5, 0x51, 0x45, 0xd1, + 0xcd, 0x2a, 0x12, 0x28, 0xf8, 0x35, 0x25, 0x4e, 0xa4, 0x3f, 0x79, 0xe2, 0x77, 0xae, 0x91, 0x44, + 0x88, 0x39, 0x8b, 0x86, 0xb5, 0x72, 0xd0, 0xf5, 0x59, 0xb7, 0x58, 0x7a, 0x52, 0x9c, 0x99, 0x10, + 0x53, 0xd3, 0x62, 0x7a, 0x5c, 0x9c, 0x48, 0x49, 0x27, 0x20, 0xe6, 0x04, 0x30, 0x6a, 0x28, 0xdb, + 0x57, 0x36, 0xab, 0xe8, 0x65, 0x52, 0xd0, 0xe4, 0xa8, 0x98, 0x1e, 0x95, 0xce, 0x40, 0xbc, 0xe6, + 0x8d, 0x77, 0x37, 0xf3, 0xd0, 0x66, 0x15, 0xf5, 0x93, 0x3e, 0x49, 0xa7, 0xc5, 0x54, 0x7a, 0x54, + 0x4c, 0x8f, 0x49, 0x67, 0xa1, 0xdf, 0xe3, 0x1c, 0xf3, 0x7c, 0x5c, 0xee, 0xc5, 0xcd, 0x2a, 0x3a, + 0x4d, 0x1a, 0x39, 0x9e, 0x12, 0xc7, 0xd3, 0xe2, 0xf8, 0x98, 0x34, 0xe6, 0xfb, 0x1d, 0xbd, 0x63, + 0x1b, 0x55, 0x74, 0x76, 0xb3, 0x8a, 0xc4, 0xad, 0x2a, 0x8a, 0x8f, 0x4f, 0x88, 0xe3, 0x93, 0xe2, + 0xf8, 0x94, 0x38, 0x3e, 0x2d, 0x8e, 0xcf, 0x88, 0x13, 0xa3, 0xd2, 0x18, 0x0c, 0x35, 0xf0, 0x8b, + 0xb8, 0x1b, 0x91, 0xdd, 0xac, 0xa2, 0xcb, 0xa4, 0x11, 0x53, 0xe3, 0xe2, 0xd4, 0x04, 0x19, 0xd7, + 0x52, 0x91, 0x5f, 0x8f, 0x72, 0xda, 0xc0, 0x3b, 0x7e, 0x82, 0x7e, 0x4b, 0x69, 0x5c, 0x9c, 0x98, + 0xa0, 0x43, 0x35, 0xb7, 0x73, 0xba, 0xbb, 0xa1, 0x8d, 0x2a, 0x7a, 0x73, 0xb3, 0x8a, 0xae, 0x7b, + 0x47, 0xc1, 0x3e, 0xfb, 0x4b, 0x93, 0x0d, 0x52, 0xeb, 0x11, 0xbe, 0xa5, 0xcd, 0x2a, 0x92, 0x1b, + 0xf0, 0x7d, 0x04, 0xd8, 0x6d, 0x4e, 0x72, 0xae, 0x77, 0x37, 0xaa, 0x68, 0x66, 0xb3, 0x8a, 0xa6, + 0xb7, 0xaa, 0x08, 0x26, 0xa6, 0xc4, 0x89, 0x69, 0xb2, 0xba, 0xe9, 0x47, 0x01, 0x3f, 0x79, 0x82, + 0x5e, 0xdd, 0x85, 0xd9, 0x2a, 0x36, 0xb4, 0x1e, 0xa5, 0x2c, 0x0c, 0xfa, 0x18, 0x74, 0x76, 0xd1, + 0xe2, 0x46, 0x15, 0xdd, 0xdc, 0xac, 0xa2, 0x1b, 0x74, 0x36, 0x4f, 0x8a, 0xd3, 0x53, 0xbc, 0x54, + 0x6e, 0x05, 0x9e, 0x25, 0x4c, 0xb6, 0x50, 0xe9, 0x12, 0xf4, 0x7b, 0x0d, 0x0f, 0x5b, 0xcc, 0xd9, + 0x8d, 0x2a, 0xba, 0xb4, 0x59, 0x45, 0x17, 0xb7, 0xaa, 0x28, 0x3a, 0x35, 0x2a, 0x4e, 0xa5, 0xc4, + 0xc9, 0x29, 0x71, 0x32, 0xd5, 0xa0, 0x1b, 0x5e, 0x83, 0x3e, 0x8f, 0x15, 0xe0, 0x5e, 0x05, 0x73, + 0x9b, 0x55, 0xf4, 0x3a, 0x9d, 0x9c, 0x13, 0xe2, 0xe4, 0x64, 0x83, 0x55, 0xf0, 0x32, 0x60, 0xd7, + 0xc1, 0xdb, 0x66, 0x3f, 0xb9, 0x51, 0x45, 0xab, 0x9b, 0x55, 0xb4, 0x42, 0xbf, 0x51, 0x30, 0x3a, + 0x26, 0xa6, 0x46, 0x27, 0x1e, 0x7f, 0x85, 0x62, 0x05, 0xb5, 0xa4, 0xa7, 0x44, 0x4b, 0x35, 0x2d, + 0x31, 0x6f, 0x58, 0xd2, 0x28, 0x1c, 0xf1, 0xd3, 0xef, 0xee, 0xc9, 0xa5, 0x6c, 0x56, 0xd1, 0x87, + 0xa4, 0x12, 0x33, 0x53, 0xe2, 0xcc, 0xb8, 0xf4, 0x2a, 0x0c, 0x39, 0x0a, 0x84, 0x9c, 0x1f, 0xb7, + 0x27, 0xcd, 0x3c, 0xb2, 0x51, 0x45, 0xfa, 0x66, 0x15, 0x95, 0xb7, 0xaa, 0xa8, 0x27, 0x95, 0x4a, + 0x89, 0xa9, 0x54, 0x5a, 0x4c, 0xa5, 0xc6, 0xc4, 0x54, 0x6a, 0xdc, 0xc9, 0xcf, 0xcb, 0x3e, 0xbb, + 0xff, 0x96, 0xf0, 0x76, 0x36, 0x18, 0x39, 0x2e, 0x24, 0x9d, 0x2f, 0x16, 0xb2, 0x1c, 0x0c, 0x20, + 0x44, 0x9d, 0x6f, 0x15, 0xbe, 0x2c, 0xbc, 0x92, 0x0d, 0x46, 0x2e, 0x08, 0x17, 0xb3, 0xc1, 0x48, + 0xbf, 0x70, 0x28, 0x1b, 0x8c, 0x9c, 0x16, 0x5e, 0xcc, 0x06, 0x23, 0xa2, 0x70, 0x36, 0x1b, 0x8c, + 0x5c, 0x16, 0xb2, 0xd9, 0x60, 0x64, 0x42, 0x98, 0xcc, 0x06, 0x23, 0x57, 0x84, 0xab, 0xd9, 0x60, + 0xe4, 0xaa, 0x70, 0x2d, 0x1b, 0x8c, 0x5c, 0x13, 0xae, 0x67, 0x83, 0x91, 0xeb, 0xc2, 0x42, 0x36, + 0x18, 0x91, 0x85, 0xc5, 0x6c, 0x30, 0x32, 0x2d, 0xcc, 0x64, 0x83, 0x91, 0x1b, 0xc2, 0xcd, 0x6c, + 0x30, 0x72, 0x51, 0xb8, 0x94, 0x0d, 0x46, 0x5e, 0x17, 0xe6, 0xb2, 0xc1, 0xc8, 0x8a, 0xb0, 0x9a, + 0x0d, 0x46, 0xd6, 0x04, 0x2d, 0x1b, 0x8c, 0x7c, 0x28, 0x28, 0xd9, 0x60, 0xa4, 0x2c, 0xe8, 0xc3, + 0xbf, 0xf3, 0x32, 0xc4, 0xe6, 0x49, 0xaf, 0xaa, 0x0e, 0x1c, 0x2d, 0x51, 0x07, 0x47, 0x6b, 0x41, + 0xc8, 0x3c, 0x10, 0xb2, 0x9f, 0x57, 0xd0, 0xd6, 0x9b, 0x4f, 0x07, 0xda, 0xf2, 0x83, 0x6b, 0xbd, + 0x7d, 0x30, 0x70, 0x2d, 0x3f, 0x60, 0xd6, 0xd2, 0x81, 0x00, 0xb3, 0xbe, 0x26, 0x48, 0xd6, 0xaf, + 0x7e, 0xbd, 0x00, 0xa3, 0xa6, 0xb0, 0xa2, 0xcc, 0xd3, 0x82, 0xab, 0x1c, 0xd8, 0xd4, 0xec, 0xde, + 0x00, 0x4a, 0xfb, 0x85, 0x26, 0xb5, 0x7b, 0xa0, 0x49, 0x6f, 0xec, 0x17, 0x9a, 0x94, 0x69, 0xf7, + 0x62, 0x8e, 0x9e, 0xf3, 0xc3, 0x1c, 0xed, 0x1f, 0x69, 0x14, 0x7c, 0x66, 0x48, 0xa3, 0xe0, 0x76, + 0xa4, 0xd1, 0x5b, 0x07, 0x86, 0x34, 0x22, 0xf5, 0x76, 0x63, 0x8c, 0x72, 0x07, 0x88, 0x31, 0xca, + 0x04, 0x7d, 0x90, 0x45, 0xc5, 0x67, 0x81, 0x2c, 0xca, 0x04, 0x1b, 0xe0, 0x89, 0xde, 0x3d, 0x60, + 0x3c, 0xd1, 0xd3, 0x21, 0x89, 0x42, 0xdb, 0x90, 0x44, 0x37, 0x9e, 0x12, 0x49, 0x94, 0x09, 0x1d, + 0x10, 0x62, 0x28, 0xec, 0x83, 0x18, 0x5a, 0x3a, 0x08, 0xc4, 0x50, 0x26, 0x5c, 0x87, 0x13, 0x5a, + 0x3a, 0x20, 0x9c, 0x50, 0x26, 0xec, 0x46, 0x08, 0xfd, 0x3f, 0x07, 0x03, 0x10, 0x3a, 0xda, 0x0c, + 0x20, 0xd4, 0x18, 0x17, 0xf4, 0xde, 0x81, 0xc1, 0x82, 0xfc, 0x00, 0x3f, 0x8b, 0x07, 0x00, 0xf8, + 0xd9, 0x86, 0xe5, 0x79, 0xef, 0x20, 0xa1, 0x3c, 0xdb, 0x40, 0x3a, 0xef, 0x1d, 0x24, 0x46, 0x67, + 0x1b, 0xfa, 0xa6, 0x70, 0xd0, 0xe8, 0x1b, 0x5f, 0xdc, 0x4d, 0xe9, 0x59, 0xc1, 0x6e, 0x9e, 0x09, + 0xa0, 0xa6, 0xe3, 0xe0, 0x01, 0x35, 0x1d, 0x5f, 0x17, 0xa0, 0xa6, 0xe3, 0x00, 0x00, 0x35, 0x91, + 0x7d, 0x03, 0x6a, 0x22, 0xfb, 0x01, 0xd4, 0x44, 0x9e, 0x0a, 0x50, 0x13, 0x79, 0x46, 0x80, 0x9a, + 0xc8, 0x33, 0x07, 0xd4, 0x44, 0x0e, 0x0e, 0x50, 0xd3, 0xf9, 0x0d, 0x00, 0x6a, 0x3a, 0x9b, 0x02, + 0x6a, 0xb4, 0x67, 0x07, 0xa8, 0xc9, 0x80, 0x17, 0x4a, 0x33, 0xbd, 0x7b, 0x28, 0x4d, 0x06, 0x3c, + 0x20, 0x9a, 0xf7, 0x9f, 0x0a, 0x44, 0x93, 0x89, 0x3e, 0x63, 0xb0, 0x4c, 0x74, 0x27, 0xb0, 0xcc, + 0xea, 0x81, 0x83, 0x65, 0x32, 0x5d, 0x07, 0x07, 0x8a, 0xe9, 0xf2, 0x07, 0xc5, 0x5c, 0xda, 0x33, + 0x28, 0x26, 0xd3, 0xed, 0x87, 0x85, 0x79, 0xff, 0x80, 0xa1, 0x30, 0x99, 0x6e, 0x0f, 0xb4, 0xc5, + 0x78, 0x96, 0xc8, 0x96, 0x4c, 0xb7, 0x2f, 0x66, 0x65, 0x7f, 0x60, 0x8f, 0x58, 0x03, 0xb0, 0xc7, + 0xb7, 0xf6, 0x0f, 0xf6, 0xc8, 0xc4, 0xbe, 0x16, 0xf0, 0x46, 0xcc, 0x07, 0xbc, 0xf1, 0xde, 0xc1, + 0x81, 0x37, 0x32, 0xb1, 0x83, 0xc1, 0x6c, 0xf4, 0xf8, 0x63, 0x36, 0x8a, 0xcf, 0x06, 0xb2, 0x91, + 0xe9, 0xf1, 0x85, 0x66, 0x3c, 0x05, 0x9e, 0x49, 0xf8, 0x66, 0xf0, 0x4c, 0x82, 0x1f, 0x9e, 0x69, + 0x76, 0x6f, 0xa1, 0x7b, 0x4f, 0xd0, 0xfe, 0xd2, 0x7e, 0x83, 0xf6, 0x75, 0xf1, 0xf8, 0xb7, 0x0e, + 0x26, 0x1e, 0x7f, 0x70, 0xa1, 0xf6, 0xf8, 0xd7, 0x13, 0x6a, 0x8f, 0xfb, 0x86, 0xda, 0x97, 0x0e, + 0x24, 0xd4, 0x5e, 0x1f, 0x64, 0xff, 0xbf, 0x0b, 0x49, 0xb4, 0xbf, 0x90, 0x7f, 0xef, 0xc1, 0x85, + 0xfc, 0x7b, 0xfd, 0x42, 0xfe, 0xe6, 0xb3, 0x0a, 0xf9, 0x67, 0x7a, 0x1b, 0x07, 0xfb, 0x2f, 0xee, + 0x39, 0xd8, 0x9f, 0xe9, 0xdd, 0x1e, 0xe3, 0x9f, 0x8d, 0x7f, 0x7e, 0xbe, 0xee, 0x6a, 0xbe, 0x74, + 0xc6, 0x2f, 0xc6, 0xdc, 0xff, 0xe8, 0x2b, 0xb4, 0xfd, 0xb1, 0x74, 0xda, 0x27, 0xcc, 0xdc, 0xf7, + 0xe8, 0x2b, 0xb4, 0xed, 0xa9, 0x24, 0xfa, 0x46, 0x99, 0x0f, 0x3d, 0xfa, 0x0a, 0xf9, 0x3c, 0x97, + 0x8e, 0x7a, 0xa2, 0xc6, 0xb1, 0x47, 0x5f, 0x21, 0xd7, 0x6f, 0xe9, 0xf9, 0x6d, 0xc1, 0x61, 0xfc, + 0xe8, 0x2b, 0x54, 0xf7, 0x8c, 0x50, 0xd5, 0x05, 0x85, 0x29, 0x95, 0xf7, 0x59, 0x83, 0xa8, 0x30, + 0x69, 0xed, 0xb6, 0xc7, 0x52, 0xba, 0x51, 0x54, 0xf8, 0xf0, 0xa3, 0xaf, 0x90, 0xff, 0x2b, 0xd2, + 0x6e, 0x9f, 0xd0, 0x30, 0x6d, 0xf7, 0xf6, 0xe7, 0xd2, 0x85, 0x1d, 0x63, 0xc2, 0xc3, 0x8f, 0xbe, + 0x42, 0x3b, 0xd0, 0x90, 0x51, 0xd9, 0x16, 0x24, 0xa6, 0xa3, 0x52, 0xff, 0x54, 0xba, 0xb4, 0x73, + 0x8c, 0xf8, 0xc4, 0xa3, 0xaf, 0xd0, 0x4e, 0x44, 0xd2, 0x68, 0x83, 0x40, 0x71, 0xe2, 0xd1, 0x57, + 0xc8, 0xf7, 0x0d, 0xe9, 0x17, 0x9f, 0x10, 0x31, 0xed, 0x97, 0xed, 0xcf, 0x49, 0xcf, 0xfb, 0x47, + 0x64, 0x69, 0xcf, 0xfb, 0xbe, 0x22, 0x75, 0xf2, 0x8d, 0xbe, 0xd2, 0x3a, 0xf9, 0xbd, 0x91, 0x5e, + 0x69, 0x1a, 0x43, 0x1e, 0x7a, 0xf4, 0x15, 0x6a, 0xf2, 0x5e, 0x3a, 0xdf, 0x3c, 0xde, 0x7a, 0xfc, + 0xd1, 0x57, 0xa8, 0x19, 0x01, 0xe9, 0x11, 0x9f, 0x60, 0x2f, 0xed, 0x91, 0xed, 0xcf, 0xc9, 0x4c, + 0xd9, 0x21, 0x56, 0x4b, 0x67, 0x4a, 0x73, 0x9a, 0xba, 0x90, 0x6d, 0xa3, 0x30, 0x2d, 0x0b, 0xcd, + 0xb2, 0x30, 0xed, 0xfe, 0x42, 0xb3, 0xee, 0xa0, 0x2c, 0x0b, 0xd3, 0xb2, 0x70, 0xac, 0x3b, 0x40, + 0x5b, 0x16, 0xf4, 0xe1, 0xef, 0xbe, 0x0c, 0x3d, 0xb2, 0x5a, 0x29, 0x2a, 0xf9, 0x56, 0x6c, 0xb6, + 0x15, 0x9b, 0x6d, 0xc5, 0x66, 0x5b, 0xb1, 0xd9, 0x56, 0x6c, 0xb6, 0x15, 0x9b, 0x6d, 0xc5, 0x66, + 0x5b, 0xb1, 0xd9, 0x56, 0x6c, 0xb6, 0x15, 0x9b, 0x6d, 0xc5, 0x66, 0x5b, 0xb1, 0xd9, 0x56, 0x6c, + 0xb6, 0x15, 0x9b, 0x6d, 0xc5, 0x66, 0x5b, 0xb1, 0xd9, 0x56, 0x6c, 0xb6, 0x15, 0x9b, 0x6d, 0xc5, + 0x66, 0x5b, 0xb1, 0xd9, 0x56, 0x6c, 0xb6, 0x15, 0x9b, 0x6d, 0xc5, 0x66, 0x5b, 0xb1, 0xd9, 0x56, + 0x6c, 0xb6, 0x15, 0x9b, 0x6d, 0xc5, 0x66, 0x5b, 0xb1, 0xd9, 0x56, 0x6c, 0xf6, 0x59, 0xc5, 0x66, + 0xff, 0xc3, 0x6b, 0x10, 0x7d, 0x43, 0xb5, 0x5a, 0x71, 0xd9, 0xdd, 0xc5, 0x65, 0x1f, 0x3d, 0x93, + 0xcf, 0x2e, 0xb4, 0xbe, 0xb6, 0xd0, 0x0a, 0x0e, 0xb7, 0x82, 0xc3, 0xad, 0xe0, 0x70, 0x2b, 0x38, + 0xdc, 0x0a, 0x0e, 0xb7, 0x82, 0xc3, 0xad, 0xe0, 0x70, 0x2b, 0x38, 0xdc, 0x0a, 0x0e, 0xb7, 0x82, + 0xc3, 0xad, 0xe0, 0x70, 0x2b, 0x38, 0xdc, 0x0a, 0x0e, 0xb7, 0x82, 0xc3, 0xad, 0xe0, 0x70, 0x2b, + 0x38, 0xdc, 0x0a, 0x0e, 0xb7, 0x82, 0xc3, 0xad, 0xe0, 0xf0, 0xcf, 0x69, 0x70, 0xf8, 0x67, 0x2a, + 0x15, 0xfc, 0xcf, 0x4a, 0x9a, 0xf6, 0x56, 0xc4, 0xbd, 0x15, 0x71, 0xff, 0xb9, 0x88, 0xb8, 0x1f, + 0x74, 0xc6, 0xf3, 0x56, 0x00, 0xbf, 0x15, 0xc0, 0x6f, 0x05, 0xf0, 0x5b, 0x01, 0xfc, 0xaf, 0x39, + 0x80, 0x1f, 0x8e, 0xfc, 0x75, 0x87, 0xf0, 0xbf, 0x3b, 0x1a, 0x05, 0xf2, 0xcf, 0x9c, 0x04, 0xe1, + 0xaa, 0xbe, 0xac, 0x15, 0x55, 0xdb, 0xd3, 0xae, 0x1a, 0x38, 0x0a, 0x1d, 0x99, 0x8b, 0x73, 0x17, + 0x2e, 0xca, 0x8b, 0x42, 0xdb, 0x60, 0x70, 0xa3, 0x8a, 0xda, 0xce, 0x8c, 0x42, 0xe7, 0x0d, 0xf9, + 0xca, 0x22, 0xd9, 0xf5, 0x54, 0x1c, 0x81, 0xa0, 0x74, 0x7d, 0x29, 0x23, 0xb4, 0x91, 0xff, 0x32, + 0x4b, 0x4b, 0x0b, 0x02, 0xc2, 0x9d, 0x10, 0x22, 0xff, 0x2d, 0x0a, 0x01, 0xce, 0x71, 0x09, 0xfa, + 0xeb, 0xec, 0x3a, 0x59, 0x5d, 0x25, 0xbd, 0xd5, 0x0d, 0xc1, 0xb9, 0x1b, 0x4b, 0xd7, 0x85, 0xb6, + 0xc1, 0xf6, 0x87, 0x1f, 0x23, 0x1c, 0x86, 0xc0, 0x8d, 0x45, 0x81, 0xfe, 0xbd, 0x78, 0x43, 0x08, + 0x10, 0x91, 0x73, 0x8b, 0x97, 0xe7, 0x84, 0x76, 0x2a, 0x07, 0x9d, 0x91, 0x01, 0x13, 0x1d, 0xb0, + 0x48, 0x75, 0x80, 0x13, 0xc1, 0x8a, 0x01, 0xcc, 0x5d, 0x5a, 0xba, 0x28, 0xe7, 0x48, 0x45, 0x85, + 0x36, 0xdc, 0x0b, 0x3d, 0xec, 0xf7, 0xd2, 0xe5, 0xa5, 0x2b, 0x17, 0x73, 0x17, 0xaf, 0x5d, 0x10, + 0x10, 0x8e, 0x43, 0xb7, 0x74, 0xf1, 0xd2, 0x75, 0xf9, 0x62, 0x6e, 0x71, 0x5e, 0xbe, 0xbc, 0xb0, + 0x64, 0xd7, 0x4d, 0xfa, 0x2e, 0xda, 0xfc, 0xf3, 0xa1, 0xb6, 0x1f, 0xfe, 0xf9, 0x50, 0xdb, 0x4f, + 0xff, 0x7c, 0x08, 0x3d, 0xdc, 0x1a, 0x42, 0x7f, 0xb0, 0x35, 0x84, 0x7e, 0xb0, 0x35, 0x84, 0x36, + 0xb7, 0x86, 0xd0, 0x0f, 0xb7, 0x86, 0xd0, 0x9f, 0x6d, 0x0d, 0xa1, 0x1f, 0x6f, 0x0d, 0xb5, 0xfd, + 0x74, 0x6b, 0x08, 0xfd, 0xd6, 0x8f, 0x86, 0xda, 0x36, 0x7e, 0x34, 0x84, 0x36, 0x7f, 0x34, 0xd4, + 0xf6, 0xc3, 0x1f, 0x0d, 0xb5, 0xbd, 0xf3, 0xee, 0xaa, 0x5e, 0xb9, 0xb3, 0x3a, 0x72, 0x57, 0x2f, + 0x5a, 0xaa, 0x61, 0x28, 0x23, 0xeb, 0xe6, 0x39, 0xfa, 0xcf, 0x8a, 0x6e, 0x94, 0xce, 0x56, 0x0c, + 0xfd, 0xae, 0x56, 0x50, 0x8d, 0xb3, 0xf6, 0xeb, 0x73, 0x95, 0xe5, 0x55, 0xfd, 0x9c, 0x7a, 0xdf, + 0x62, 0x3a, 0xe3, 0x1c, 0xff, 0x43, 0x0f, 0x1b, 0xe7, 0xb6, 0x1d, 0xdf, 0x97, 0xc3, 0x34, 0xce, + 0x3f, 0xf6, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xb0, 0x54, 0xb6, 0x35, 0x20, 0xed, 0x00, 0x00, +} + +func (x MobileIdentifier) String() string { + s, ok := MobileIdentifier_name[int32(x)] + if ok { + return s } - return b[:n], nil + return strconv.Itoa(int(x)) } -func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplaceSpecType.Merge(m, src) +func (x URLScheme) String() string { + s, ok := URLScheme_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) } -func (m *ReplaceSpecType) XXX_Size() int { - return m.Size() +func (x ShapeBotDefenseRegion) String() string { + s, ok := ShapeBotDefenseRegion_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) } -func (m *ReplaceSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) +func (x JavaScriptLocation) String() string { + s, ok := JavaScriptLocation_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) } +func (this *ProxyTypeHttps) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo - -type isReplaceSpecType_LoadbalancerType interface { - isReplaceSpecType_LoadbalancerType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_AdvertiseChoice interface { - isReplaceSpecType_AdvertiseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_OriginPoolChoice interface { - isReplaceSpecType_OriginPoolChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + that1, ok := that.(*ProxyTypeHttps) + if !ok { + that2, ok := that.(ProxyTypeHttps) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.HttpRedirect != that1.HttpRedirect { + return false + } + if this.AddHsts != that1.AddHsts { + return false + } + if that1.TlsCertificatesChoice == nil { + if this.TlsCertificatesChoice != nil { + return false + } + } else if this.TlsCertificatesChoice == nil { + return false + } else if !this.TlsCertificatesChoice.Equal(that1.TlsCertificatesChoice) { + return false + } + if that1.ServerHeaderChoice == nil { + if this.ServerHeaderChoice != nil { + return false + } + } else if this.ServerHeaderChoice == nil { + return false + } else if !this.ServerHeaderChoice.Equal(that1.ServerHeaderChoice) { + return false + } + if that1.PathNormalizeChoice == nil { + if this.PathNormalizeChoice != nil { + return false + } + } else if this.PathNormalizeChoice == nil { + return false + } else if !this.PathNormalizeChoice.Equal(that1.PathNormalizeChoice) { + return false + } + if that1.PortChoice == nil { + if this.PortChoice != nil { + return false + } + } else if this.PortChoice == nil { + return false + } else if !this.PortChoice.Equal(that1.PortChoice) { + return false + } + if that1.DefaultLbChoice == nil { + if this.DefaultLbChoice != nil { + return false + } + } else if this.DefaultLbChoice == nil { + return false + } else if !this.DefaultLbChoice.Equal(that1.DefaultLbChoice) { + return false + } + if !this.HeaderTransformationType.Equal(that1.HeaderTransformationType) { + return false + } + if this.ConnectionIdleTimeout != that1.ConnectionIdleTimeout { + return false + } + if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { + return false + } + return true } -type isReplaceSpecType_WafChoice interface { - isReplaceSpecType_WafChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *ProxyTypeHttps_TlsParameters) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyTypeHttps_TlsParameters) + if !ok { + that2, ok := that.(ProxyTypeHttps_TlsParameters) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.TlsParameters.Equal(that1.TlsParameters) { + return false + } + return true } -type isReplaceSpecType_ChallengeType interface { - isReplaceSpecType_ChallengeType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *ProxyTypeHttps_TlsCertParams) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyTypeHttps_TlsCertParams) + if !ok { + that2, ok := that.(ProxyTypeHttps_TlsCertParams) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.TlsCertParams.Equal(that1.TlsCertParams) { + return false + } + return true } -type isReplaceSpecType_UserIdChoice interface { - isReplaceSpecType_UserIdChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *ProxyTypeHttps_DefaultHeader) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyTypeHttps_DefaultHeader) + if !ok { + that2, ok := that.(ProxyTypeHttps_DefaultHeader) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultHeader.Equal(that1.DefaultHeader) { + return false + } + return true } -type isReplaceSpecType_RateLimitChoice interface { - isReplaceSpecType_RateLimitChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *ProxyTypeHttps_ServerName) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyTypeHttps_ServerName) + if !ok { + that2, ok := that.(ProxyTypeHttps_ServerName) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ServerName != that1.ServerName { + return false + } + return true } -type isReplaceSpecType_ServicePolicyChoice interface { - isReplaceSpecType_ServicePolicyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *ProxyTypeHttps_AppendServerName) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyTypeHttps_AppendServerName) + if !ok { + that2, ok := that.(ProxyTypeHttps_AppendServerName) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.AppendServerName != that1.AppendServerName { + return false + } + return true } -type isReplaceSpecType_HashPolicyChoice interface { - isReplaceSpecType_HashPolicyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_TrustClientIpHeadersChoice interface { - isReplaceSpecType_TrustClientIpHeadersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_MlConfigChoice interface { - isReplaceSpecType_MlConfigChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_DdosDetectionChoice interface { - isReplaceSpecType_DdosDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_MaliciousUserDetectionChoice interface { - isReplaceSpecType_MaliciousUserDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_ApiDiscoveryChoice interface { - isReplaceSpecType_ApiDiscoveryChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_BotDefenseChoice interface { - isReplaceSpecType_BotDefenseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_ApiDefinitionChoice interface { - isReplaceSpecType_ApiDefinitionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_IpReputationChoice interface { - isReplaceSpecType_IpReputationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_ClientSideDefenseChoice interface { - isReplaceSpecType_ClientSideDefenseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_SlowDdosMitigationChoice interface { - isReplaceSpecType_SlowDdosMitigationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_ThreatIntelligenceChoice interface { - isReplaceSpecType_ThreatIntelligenceChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isReplaceSpecType_L7DdosAutoMitigationAction interface { - isReplaceSpecType_L7DdosAutoMitigationAction() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type ReplaceSpecType_Http struct { - Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` -} -type ReplaceSpecType_HttpsAutoCert struct { - HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` -} -type ReplaceSpecType_Https struct { - Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` -} -type ReplaceSpecType_DoNotAdvertise struct { - DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` -} -type ReplaceSpecType_AdvertiseOnPublicDefaultVip struct { - AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` -} -type ReplaceSpecType_AdvertiseOnPublic struct { - AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` -} -type ReplaceSpecType_AdvertiseCustom struct { - AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` -} -type ReplaceSpecType_DefaultPool struct { - DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` -} -type ReplaceSpecType_DefaultPoolList struct { - DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` -} -type ReplaceSpecType_DisableWaf struct { - DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` -} -type ReplaceSpecType_AppFirewall struct { - AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` -} -type ReplaceSpecType_NoChallenge struct { - NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` -} -type ReplaceSpecType_EnableChallenge struct { - EnableChallenge *EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` -} -type ReplaceSpecType_JsChallenge struct { - JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` -} -type ReplaceSpecType_CaptchaChallenge struct { - CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` -} -type ReplaceSpecType_PolicyBasedChallenge struct { - PolicyBasedChallenge *PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` -} -type ReplaceSpecType_UserIdClientIp struct { - UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` -} -type ReplaceSpecType_UserIdentification struct { - UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` -} -type ReplaceSpecType_DisableRateLimit struct { - DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` -} -type ReplaceSpecType_ApiRateLimit struct { - ApiRateLimit *APIRateLimit `protobuf:"bytes,68,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` -} -type ReplaceSpecType_RateLimit struct { - RateLimit *RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` -} -type ReplaceSpecType_ServicePoliciesFromNamespace struct { - ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` -} -type ReplaceSpecType_NoServicePolicies struct { - NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` -} -type ReplaceSpecType_ActiveServicePolicies struct { - ActiveServicePolicies *ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` -} -type ReplaceSpecType_RoundRobin struct { - RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` -} -type ReplaceSpecType_LeastActive struct { - LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` -} -type ReplaceSpecType_Random struct { - Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` -} -type ReplaceSpecType_SourceIpStickiness struct { - SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` -} -type ReplaceSpecType_CookieStickiness struct { - CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` -} -type ReplaceSpecType_RingHash struct { - RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` -} -type ReplaceSpecType_DisableTrustClientIpHeaders struct { - DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` -} -type ReplaceSpecType_EnableTrustClientIpHeaders struct { - EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` -} -type ReplaceSpecType_SingleLbApp struct { - SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` -} -type ReplaceSpecType_MultiLbApp struct { - MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` -} -type ReplaceSpecType_EnableDdosDetection struct { - EnableDdosDetection *EnableDDoSDetectionSetting `protobuf:"bytes,77,opt,name=enable_ddos_detection,json=enableDdosDetection,proto3,oneof" json:"enable_ddos_detection,omitempty"` -} -type ReplaceSpecType_DisableDdosDetection struct { - DisableDdosDetection *schema.Empty `protobuf:"bytes,78,opt,name=disable_ddos_detection,json=disableDdosDetection,proto3,oneof" json:"disable_ddos_detection,omitempty"` -} -type ReplaceSpecType_EnableMaliciousUserDetection struct { - EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` -} -type ReplaceSpecType_DisableMaliciousUserDetection struct { - DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` -} -type ReplaceSpecType_EnableApiDiscovery struct { - EnableApiDiscovery *ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` -} -type ReplaceSpecType_DisableApiDiscovery struct { - DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` -} -type ReplaceSpecType_DisableBotDefense struct { - DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` -} -type ReplaceSpecType_BotDefense struct { - BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` -} -type ReplaceSpecType_BotDefenseAdvanced struct { - BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` -} -type ReplaceSpecType_DisableApiDefinition struct { - DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` -} -type ReplaceSpecType_ApiDefinition struct { - ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` -} -type ReplaceSpecType_ApiSpecification struct { - ApiSpecification *APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` -} -type ReplaceSpecType_ApiDefinitions struct { - ApiDefinitions *ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` -} -type ReplaceSpecType_DisableIpReputation struct { - DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` -} -type ReplaceSpecType_EnableIpReputation struct { - EnableIpReputation *IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` -} -type ReplaceSpecType_DisableClientSideDefense struct { - DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` -} -type ReplaceSpecType_ClientSideDefense struct { - ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` -} -type ReplaceSpecType_SystemDefaultTimeouts struct { - SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` -} -type ReplaceSpecType_SlowDdosMitigation struct { - SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` -} -type ReplaceSpecType_DisableThreatIntelligence struct { - DisableThreatIntelligence *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_intelligence,json=disableThreatIntelligence,proto3,oneof" json:"disable_threat_intelligence,omitempty"` -} -type ReplaceSpecType_EnableThreatIntelligence struct { - EnableThreatIntelligence *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_intelligence,json=enableThreatIntelligence,proto3,oneof" json:"enable_threat_intelligence,omitempty"` -} -type ReplaceSpecType_L7DdosActionDefault struct { - L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` -} -type ReplaceSpecType_L7DdosActionBlock struct { - L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` -} -type ReplaceSpecType_L7DdosActionJsChallenge struct { - L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` -} -type ReplaceSpecType_L7DdosActionNone struct { - L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` -} - -func (*ReplaceSpecType_Http) isReplaceSpecType_LoadbalancerType() {} -func (*ReplaceSpecType_HttpsAutoCert) isReplaceSpecType_LoadbalancerType() {} -func (*ReplaceSpecType_Https) isReplaceSpecType_LoadbalancerType() {} -func (*ReplaceSpecType_DoNotAdvertise) isReplaceSpecType_AdvertiseChoice() {} -func (*ReplaceSpecType_AdvertiseOnPublicDefaultVip) isReplaceSpecType_AdvertiseChoice() {} -func (*ReplaceSpecType_AdvertiseOnPublic) isReplaceSpecType_AdvertiseChoice() {} -func (*ReplaceSpecType_AdvertiseCustom) isReplaceSpecType_AdvertiseChoice() {} -func (*ReplaceSpecType_DefaultPool) isReplaceSpecType_OriginPoolChoice() {} -func (*ReplaceSpecType_DefaultPoolList) isReplaceSpecType_OriginPoolChoice() {} -func (*ReplaceSpecType_DisableWaf) isReplaceSpecType_WafChoice() {} -func (*ReplaceSpecType_AppFirewall) isReplaceSpecType_WafChoice() {} -func (*ReplaceSpecType_NoChallenge) isReplaceSpecType_ChallengeType() {} -func (*ReplaceSpecType_EnableChallenge) isReplaceSpecType_ChallengeType() {} -func (*ReplaceSpecType_JsChallenge) isReplaceSpecType_ChallengeType() {} -func (*ReplaceSpecType_CaptchaChallenge) isReplaceSpecType_ChallengeType() {} -func (*ReplaceSpecType_PolicyBasedChallenge) isReplaceSpecType_ChallengeType() {} -func (*ReplaceSpecType_UserIdClientIp) isReplaceSpecType_UserIdChoice() {} -func (*ReplaceSpecType_UserIdentification) isReplaceSpecType_UserIdChoice() {} -func (*ReplaceSpecType_DisableRateLimit) isReplaceSpecType_RateLimitChoice() {} -func (*ReplaceSpecType_ApiRateLimit) isReplaceSpecType_RateLimitChoice() {} -func (*ReplaceSpecType_RateLimit) isReplaceSpecType_RateLimitChoice() {} -func (*ReplaceSpecType_ServicePoliciesFromNamespace) isReplaceSpecType_ServicePolicyChoice() {} -func (*ReplaceSpecType_NoServicePolicies) isReplaceSpecType_ServicePolicyChoice() {} -func (*ReplaceSpecType_ActiveServicePolicies) isReplaceSpecType_ServicePolicyChoice() {} -func (*ReplaceSpecType_RoundRobin) isReplaceSpecType_HashPolicyChoice() {} -func (*ReplaceSpecType_LeastActive) isReplaceSpecType_HashPolicyChoice() {} -func (*ReplaceSpecType_Random) isReplaceSpecType_HashPolicyChoice() {} -func (*ReplaceSpecType_SourceIpStickiness) isReplaceSpecType_HashPolicyChoice() {} -func (*ReplaceSpecType_CookieStickiness) isReplaceSpecType_HashPolicyChoice() {} -func (*ReplaceSpecType_RingHash) isReplaceSpecType_HashPolicyChoice() {} -func (*ReplaceSpecType_DisableTrustClientIpHeaders) isReplaceSpecType_TrustClientIpHeadersChoice() {} -func (*ReplaceSpecType_EnableTrustClientIpHeaders) isReplaceSpecType_TrustClientIpHeadersChoice() {} -func (*ReplaceSpecType_SingleLbApp) isReplaceSpecType_MlConfigChoice() {} -func (*ReplaceSpecType_MultiLbApp) isReplaceSpecType_MlConfigChoice() {} -func (*ReplaceSpecType_EnableDdosDetection) isReplaceSpecType_DdosDetectionChoice() {} -func (*ReplaceSpecType_DisableDdosDetection) isReplaceSpecType_DdosDetectionChoice() {} -func (*ReplaceSpecType_EnableMaliciousUserDetection) isReplaceSpecType_MaliciousUserDetectionChoice() { -} -func (*ReplaceSpecType_DisableMaliciousUserDetection) isReplaceSpecType_MaliciousUserDetectionChoice() { -} -func (*ReplaceSpecType_EnableApiDiscovery) isReplaceSpecType_ApiDiscoveryChoice() {} -func (*ReplaceSpecType_DisableApiDiscovery) isReplaceSpecType_ApiDiscoveryChoice() {} -func (*ReplaceSpecType_DisableBotDefense) isReplaceSpecType_BotDefenseChoice() {} -func (*ReplaceSpecType_BotDefense) isReplaceSpecType_BotDefenseChoice() {} -func (*ReplaceSpecType_BotDefenseAdvanced) isReplaceSpecType_BotDefenseChoice() {} -func (*ReplaceSpecType_DisableApiDefinition) isReplaceSpecType_ApiDefinitionChoice() {} -func (*ReplaceSpecType_ApiDefinition) isReplaceSpecType_ApiDefinitionChoice() {} -func (*ReplaceSpecType_ApiSpecification) isReplaceSpecType_ApiDefinitionChoice() {} -func (*ReplaceSpecType_ApiDefinitions) isReplaceSpecType_ApiDefinitionChoice() {} -func (*ReplaceSpecType_DisableIpReputation) isReplaceSpecType_IpReputationChoice() {} -func (*ReplaceSpecType_EnableIpReputation) isReplaceSpecType_IpReputationChoice() {} -func (*ReplaceSpecType_DisableClientSideDefense) isReplaceSpecType_ClientSideDefenseChoice() {} -func (*ReplaceSpecType_ClientSideDefense) isReplaceSpecType_ClientSideDefenseChoice() {} -func (*ReplaceSpecType_SystemDefaultTimeouts) isReplaceSpecType_SlowDdosMitigationChoice() {} -func (*ReplaceSpecType_SlowDdosMitigation) isReplaceSpecType_SlowDdosMitigationChoice() {} -func (*ReplaceSpecType_DisableThreatIntelligence) isReplaceSpecType_ThreatIntelligenceChoice() {} -func (*ReplaceSpecType_EnableThreatIntelligence) isReplaceSpecType_ThreatIntelligenceChoice() {} -func (*ReplaceSpecType_L7DdosActionDefault) isReplaceSpecType_L7DdosAutoMitigationAction() {} -func (*ReplaceSpecType_L7DdosActionBlock) isReplaceSpecType_L7DdosAutoMitigationAction() {} -func (*ReplaceSpecType_L7DdosActionJsChallenge) isReplaceSpecType_L7DdosAutoMitigationAction() {} -func (*ReplaceSpecType_L7DdosActionNone) isReplaceSpecType_L7DdosAutoMitigationAction() {} - -func (m *ReplaceSpecType) GetLoadbalancerType() isReplaceSpecType_LoadbalancerType { - if m != nil { - return m.LoadbalancerType +func (this *ProxyTypeHttps_PassThrough) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetAdvertiseChoice() isReplaceSpecType_AdvertiseChoice { - if m != nil { - return m.AdvertiseChoice + + that1, ok := that.(*ProxyTypeHttps_PassThrough) + if !ok { + that2, ok := that.(ProxyTypeHttps_PassThrough) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *ReplaceSpecType) GetOriginPoolChoice() isReplaceSpecType_OriginPoolChoice { - if m != nil { - return m.OriginPoolChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *ReplaceSpecType) GetWafChoice() isReplaceSpecType_WafChoice { - if m != nil { - return m.WafChoice + if !this.PassThrough.Equal(that1.PassThrough) { + return false } - return nil + return true } -func (m *ReplaceSpecType) GetChallengeType() isReplaceSpecType_ChallengeType { - if m != nil { - return m.ChallengeType +func (this *ProxyTypeHttps_EnablePathNormalize) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetUserIdChoice() isReplaceSpecType_UserIdChoice { - if m != nil { - return m.UserIdChoice + + that1, ok := that.(*ProxyTypeHttps_EnablePathNormalize) + if !ok { + that2, ok := that.(ProxyTypeHttps_EnablePathNormalize) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *ReplaceSpecType) GetRateLimitChoice() isReplaceSpecType_RateLimitChoice { - if m != nil { - return m.RateLimitChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *ReplaceSpecType) GetServicePolicyChoice() isReplaceSpecType_ServicePolicyChoice { - if m != nil { - return m.ServicePolicyChoice + if !this.EnablePathNormalize.Equal(that1.EnablePathNormalize) { + return false } - return nil + return true } -func (m *ReplaceSpecType) GetHashPolicyChoice() isReplaceSpecType_HashPolicyChoice { - if m != nil { - return m.HashPolicyChoice +func (this *ProxyTypeHttps_DisablePathNormalize) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetTrustClientIpHeadersChoice() isReplaceSpecType_TrustClientIpHeadersChoice { - if m != nil { - return m.TrustClientIpHeadersChoice + + that1, ok := that.(*ProxyTypeHttps_DisablePathNormalize) + if !ok { + that2, ok := that.(ProxyTypeHttps_DisablePathNormalize) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *ReplaceSpecType) GetMlConfigChoice() isReplaceSpecType_MlConfigChoice { - if m != nil { - return m.MlConfigChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *ReplaceSpecType) GetDdosDetectionChoice() isReplaceSpecType_DdosDetectionChoice { - if m != nil { - return m.DdosDetectionChoice + if !this.DisablePathNormalize.Equal(that1.DisablePathNormalize) { + return false } - return nil + return true } -func (m *ReplaceSpecType) GetMaliciousUserDetectionChoice() isReplaceSpecType_MaliciousUserDetectionChoice { - if m != nil { - return m.MaliciousUserDetectionChoice +func (this *ProxyTypeHttps_Port) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetApiDiscoveryChoice() isReplaceSpecType_ApiDiscoveryChoice { - if m != nil { - return m.ApiDiscoveryChoice + + that1, ok := that.(*ProxyTypeHttps_Port) + if !ok { + that2, ok := that.(ProxyTypeHttps_Port) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *ReplaceSpecType) GetBotDefenseChoice() isReplaceSpecType_BotDefenseChoice { - if m != nil { - return m.BotDefenseChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *ReplaceSpecType) GetApiDefinitionChoice() isReplaceSpecType_ApiDefinitionChoice { - if m != nil { - return m.ApiDefinitionChoice + if this.Port != that1.Port { + return false } - return nil + return true } -func (m *ReplaceSpecType) GetIpReputationChoice() isReplaceSpecType_IpReputationChoice { - if m != nil { - return m.IpReputationChoice +func (this *ProxyTypeHttps_PortRanges) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetClientSideDefenseChoice() isReplaceSpecType_ClientSideDefenseChoice { - if m != nil { - return m.ClientSideDefenseChoice + + that1, ok := that.(*ProxyTypeHttps_PortRanges) + if !ok { + that2, ok := that.(ProxyTypeHttps_PortRanges) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *ReplaceSpecType) GetSlowDdosMitigationChoice() isReplaceSpecType_SlowDdosMitigationChoice { - if m != nil { - return m.SlowDdosMitigationChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *ReplaceSpecType) GetThreatIntelligenceChoice() isReplaceSpecType_ThreatIntelligenceChoice { - if m != nil { - return m.ThreatIntelligenceChoice + if this.PortRanges != that1.PortRanges { + return false } - return nil + return true } -func (m *ReplaceSpecType) GetL7DdosAutoMitigationAction() isReplaceSpecType_L7DdosAutoMitigationAction { - if m != nil { - return m.L7DdosAutoMitigationAction +func (this *ProxyTypeHttps_NonDefaultLoadbalancer) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetDomains() []string { - if m != nil { - return m.Domains + that1, ok := that.(*ProxyTypeHttps_NonDefaultLoadbalancer) + if !ok { + that2, ok := that.(ProxyTypeHttps_NonDefaultLoadbalancer) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetHttp() *ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Http); ok { - return x.Http + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { - if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert + if !this.NonDefaultLoadbalancer.Equal(that1.NonDefaultLoadbalancer) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetHttps() *ProxyTypeHttps { - if x, ok := m.GetLoadbalancerType().(*ReplaceSpecType_Https); ok { - return x.Https +func (this *ProxyTypeHttps_DefaultLoadbalancer) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetDoNotAdvertise() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_DoNotAdvertise); ok { - return x.DoNotAdvertise + that1, ok := that.(*ProxyTypeHttps_DefaultLoadbalancer) + if !ok { + that2, ok := that.(ProxyTypeHttps_DefaultLoadbalancer) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublicDefaultVip); ok { - return x.AdvertiseOnPublicDefaultVip + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { - if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublic); ok { - return x.AdvertiseOnPublic + if !this.DefaultLoadbalancer.Equal(that1.DefaultLoadbalancer) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { - if x, ok := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseCustom); ok { - return x.AdvertiseCustom +func (this *ProxyTypeHttp) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { - if m != nil { - return m.DefaultRoutePools + that1, ok := that.(*ProxyTypeHttp) + if !ok { + that2, ok := that.(ProxyTypeHttp) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { - if x, ok := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPool); ok { - return x.DefaultPool + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDefaultPoolList() *views.OriginPoolListType { - if x, ok := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPoolList); ok { - return x.DefaultPoolList + if this.DnsVolterraManaged != that1.DnsVolterraManaged { + return false } - return nil -} - -func (m *ReplaceSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { - if m != nil { - return m.OriginServerSubsetRuleList + if that1.PortChoice == nil { + if this.PortChoice != nil { + return false + } + } else if this.PortChoice == nil { + return false + } else if !this.PortChoice.Equal(that1.PortChoice) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetRoutes() []*RouteType { - if m != nil { - return m.Routes +func (this *ProxyTypeHttp_Port) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetCorsPolicy() *schema.CorsPolicy { - if m != nil { - return m.CorsPolicy + that1, ok := that.(*ProxyTypeHttp_Port) + if !ok { + that2, ok := that.(ProxyTypeHttp_Port) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetDisableWaf() *schema.Empty { - if x, ok := m.GetWafChoice().(*ReplaceSpecType_DisableWaf); ok { - return x.DisableWaf + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetAppFirewall() *views.ObjectRefType { - if x, ok := m.GetWafChoice().(*ReplaceSpecType_AppFirewall); ok { - return x.AppFirewall + if this.Port != that1.Port { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetAddLocation() bool { - if m != nil { - return m.AddLocation +func (this *ProxyTypeHttp_PortRanges) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return false -} -func (m *ReplaceSpecType) GetNoChallenge() *schema.Empty { - if x, ok := m.GetChallengeType().(*ReplaceSpecType_NoChallenge); ok { - return x.NoChallenge + that1, ok := that.(*ProxyTypeHttp_PortRanges) + if !ok { + that2, ok := that.(ProxyTypeHttp_PortRanges) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetEnableChallenge() *EnableChallenge { - if x, ok := m.GetChallengeType().(*ReplaceSpecType_EnableChallenge); ok { - return x.EnableChallenge + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetChallengeType().(*ReplaceSpecType_JsChallenge); ok { - return x.JsChallenge + if this.PortRanges != that1.PortRanges { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { - if x, ok := m.GetChallengeType().(*ReplaceSpecType_CaptchaChallenge); ok { - return x.CaptchaChallenge +func (this *ProxyTypeHttpsAutoCerts) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetPolicyBasedChallenge() *PolicyBasedChallenge { - if x, ok := m.GetChallengeType().(*ReplaceSpecType_PolicyBasedChallenge); ok { - return x.PolicyBasedChallenge + that1, ok := that.(*ProxyTypeHttpsAutoCerts) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetMoreOption() *AdvancedOptionsType { - if m != nil { - return m.MoreOption + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetUserIdClientIp() *schema.Empty { - if x, ok := m.GetUserIdChoice().(*ReplaceSpecType_UserIdClientIp); ok { - return x.UserIdClientIp + if this.HttpRedirect != that1.HttpRedirect { + return false } - return nil -} - -func (m *ReplaceSpecType) GetUserIdentification() *views.ObjectRefType { - if x, ok := m.GetUserIdChoice().(*ReplaceSpecType_UserIdentification); ok { - return x.UserIdentification + if this.AddHsts != that1.AddHsts { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDisableRateLimit() *schema.Empty { - if x, ok := m.GetRateLimitChoice().(*ReplaceSpecType_DisableRateLimit); ok { - return x.DisableRateLimit + if !this.TlsConfig.Equal(that1.TlsConfig) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetApiRateLimit() *APIRateLimit { - if x, ok := m.GetRateLimitChoice().(*ReplaceSpecType_ApiRateLimit); ok { - return x.ApiRateLimit + if that1.MtlsChoice == nil { + if this.MtlsChoice != nil { + return false + } + } else if this.MtlsChoice == nil { + return false + } else if !this.MtlsChoice.Equal(that1.MtlsChoice) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetRateLimit() *RateLimitConfigType { - if x, ok := m.GetRateLimitChoice().(*ReplaceSpecType_RateLimit); ok { - return x.RateLimit + if that1.ServerHeaderChoice == nil { + if this.ServerHeaderChoice != nil { + return false + } + } else if this.ServerHeaderChoice == nil { + return false + } else if !this.ServerHeaderChoice.Equal(that1.ServerHeaderChoice) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { - if m != nil { - return m.MaliciousUserMitigation + if that1.PathNormalizeChoice == nil { + if this.PathNormalizeChoice != nil { + return false + } + } else if this.PathNormalizeChoice == nil { + return false + } else if !this.PathNormalizeChoice.Equal(that1.PathNormalizeChoice) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { - if m != nil { - return m.WafExclusionRules + if that1.PortChoice == nil { + if this.PortChoice != nil { + return false + } + } else if this.PortChoice == nil { + return false + } else if !this.PortChoice.Equal(that1.PortChoice) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { - if m != nil { - return m.DataGuardRules + if that1.DefaultLbChoice == nil { + if this.DefaultLbChoice != nil { + return false + } + } else if this.DefaultLbChoice == nil { + return false + } else if !this.DefaultLbChoice.Equal(that1.DefaultLbChoice) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetBlockedClients() []*SimpleClientSrcRule { - if m != nil { - return m.BlockedClients + if !this.HeaderTransformationType.Equal(that1.HeaderTransformationType) { + return false } - return nil -} - -func (m *ReplaceSpecType) GetTrustedClients() []*SimpleClientSrcRule { - if m != nil { - return m.TrustedClients + if this.ConnectionIdleTimeout != that1.ConnectionIdleTimeout { + return false } - return nil -} - -func (m *ReplaceSpecType) GetApiProtectionRules() *APIProtectionRules { - if m != nil { - return m.ApiProtectionRules + if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { - if m != nil { - return m.DdosMitigationRules +func (this *ProxyTypeHttpsAutoCerts_NoMtls) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetServicePoliciesFromNamespace() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*ReplaceSpecType_ServicePoliciesFromNamespace); ok { - return x.ServicePoliciesFromNamespace + that1, ok := that.(*ProxyTypeHttpsAutoCerts_NoMtls) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_NoMtls) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetNoServicePolicies() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*ReplaceSpecType_NoServicePolicies); ok { - return x.NoServicePolicies + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetActiveServicePolicies() *ServicePolicyList { - if x, ok := m.GetServicePolicyChoice().(*ReplaceSpecType_ActiveServicePolicies); ok { - return x.ActiveServicePolicies + if !this.NoMtls.Equal(that1.NoMtls) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetRoundRobin() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_RoundRobin); ok { - return x.RoundRobin +func (this *ProxyTypeHttpsAutoCerts_UseMtls) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetLeastActive() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_LeastActive); ok { - return x.LeastActive + that1, ok := that.(*ProxyTypeHttpsAutoCerts_UseMtls) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_UseMtls) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetRandom() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_Random); ok { - return x.Random + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetSourceIpStickiness() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_SourceIpStickiness); ok { - return x.SourceIpStickiness + if !this.UseMtls.Equal(that1.UseMtls) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetCookieStickiness() *route.CookieForHashing { - if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_CookieStickiness); ok { - return x.CookieStickiness +func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetRingHash() *HashPolicyListType { - if x, ok := m.GetHashPolicyChoice().(*ReplaceSpecType_RingHash); ok { - return x.RingHash + that1, ok := that.(*ProxyTypeHttpsAutoCerts_DefaultHeader) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_DefaultHeader) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { - if x, ok := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_DisableTrustClientIpHeaders); ok { - return x.DisableTrustClientIpHeaders + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { - if x, ok := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_EnableTrustClientIpHeaders); ok { - return x.EnableTrustClientIpHeaders + if !this.DefaultHeader.Equal(that1.DefaultHeader) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { - if x, ok := m.GetMlConfigChoice().(*ReplaceSpecType_SingleLbApp); ok { - return x.SingleLbApp +func (this *ProxyTypeHttpsAutoCerts_ServerName) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetMultiLbApp() *schema.Empty { - if x, ok := m.GetMlConfigChoice().(*ReplaceSpecType_MultiLbApp); ok { - return x.MultiLbApp + that1, ok := that.(*ProxyTypeHttpsAutoCerts_ServerName) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_ServerName) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetEnableDdosDetection() *EnableDDoSDetectionSetting { - if x, ok := m.GetDdosDetectionChoice().(*ReplaceSpecType_EnableDdosDetection); ok { - return x.EnableDdosDetection + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDisableDdosDetection() *schema.Empty { - if x, ok := m.GetDdosDetectionChoice().(*ReplaceSpecType_DisableDdosDetection); ok { - return x.DisableDdosDetection + if this.ServerName != that1.ServerName { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetEnableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_EnableMaliciousUserDetection); ok { - return x.EnableMaliciousUserDetection +func (this *ProxyTypeHttpsAutoCerts_AppendServerName) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetDisableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_DisableMaliciousUserDetection); ok { - return x.DisableMaliciousUserDetection + that1, ok := that.(*ProxyTypeHttpsAutoCerts_AppendServerName) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_AppendServerName) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetEnableApiDiscovery() *ApiDiscoverySetting { - if x, ok := m.GetApiDiscoveryChoice().(*ReplaceSpecType_EnableApiDiscovery); ok { - return x.EnableApiDiscovery + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDisableApiDiscovery() *schema.Empty { - if x, ok := m.GetApiDiscoveryChoice().(*ReplaceSpecType_DisableApiDiscovery); ok { - return x.DisableApiDiscovery + if this.AppendServerName != that1.AppendServerName { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetDisableBotDefense() *schema.Empty { - if x, ok := m.GetBotDefenseChoice().(*ReplaceSpecType_DisableBotDefense); ok { - return x.DisableBotDefense +func (this *ProxyTypeHttpsAutoCerts_PassThrough) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetBotDefense() *ShapeBotDefenseType { - if x, ok := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefense); ok { - return x.BotDefense + that1, ok := that.(*ProxyTypeHttpsAutoCerts_PassThrough) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_PassThrough) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { - if x, ok := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefenseAdvanced); ok { - return x.BotDefenseAdvanced + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDisableApiDefinition() *schema.Empty { - if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_DisableApiDefinition); ok { - return x.DisableApiDefinition + if !this.PassThrough.Equal(that1.PassThrough) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetApiDefinition() *views.ObjectRefType { - if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinition); ok { - return x.ApiDefinition +func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetApiSpecification() *APISpecificationSettings { - if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiSpecification); ok { - return x.ApiSpecification + that1, ok := that.(*ProxyTypeHttpsAutoCerts_EnablePathNormalize) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_EnablePathNormalize) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetApiDefinitions() *ApiDefinitionList { - if x, ok := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinitions); ok { - return x.ApiDefinitions + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetDisableIpReputation() *schema.Empty { - if x, ok := m.GetIpReputationChoice().(*ReplaceSpecType_DisableIpReputation); ok { - return x.DisableIpReputation + if !this.EnablePathNormalize.Equal(that1.EnablePathNormalize) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetEnableIpReputation() *IPThreatCategoryListType { - if x, ok := m.GetIpReputationChoice().(*ReplaceSpecType_EnableIpReputation); ok { - return x.EnableIpReputation +func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetDisableClientSideDefense() *schema.Empty { - if x, ok := m.GetClientSideDefenseChoice().(*ReplaceSpecType_DisableClientSideDefense); ok { - return x.DisableClientSideDefense + that1, ok := that.(*ProxyTypeHttpsAutoCerts_DisablePathNormalize) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_DisablePathNormalize) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetClientSideDefense() *ClientSideDefenseType { - if x, ok := m.GetClientSideDefenseChoice().(*ReplaceSpecType_ClientSideDefense); ok { - return x.ClientSideDefense + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *ReplaceSpecType) GetCsrfPolicy() *schema.CsrfPolicy { - if m != nil { - return m.CsrfPolicy + if !this.DisablePathNormalize.Equal(that1.DisablePathNormalize) { + return false } - return nil + return true } - -func (m *ReplaceSpecType) GetGraphqlRules() []*policy.GraphQLRule { - if m != nil { - return m.GraphqlRules +func (this *ProxyTypeHttpsAutoCerts_Port) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *ReplaceSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { - if m != nil { - return m.ProtectedCookies + that1, ok := that.(*ProxyTypeHttpsAutoCerts_Port) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_Port) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *ReplaceSpecType) GetSystemDefaultTimeouts() *schema.Empty { - if x, ok := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SystemDefaultTimeouts); ok { - return x.SystemDefaultTimeouts + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil + if this.Port != that1.Port { + return false + } + return true } +func (this *ProxyTypeHttpsAutoCerts_PortRanges) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { - if x, ok := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SlowDdosMitigation); ok { - return x.SlowDdosMitigation + that1, ok := that.(*ProxyTypeHttpsAutoCerts_PortRanges) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_PortRanges) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.PortRanges != that1.PortRanges { + return false + } + return true } +func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetJwtValidation() *JWTValidation { - if m != nil { - return m.JwtValidation + that1, ok := that.(*ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NonDefaultLoadbalancer.Equal(that1.NonDefaultLoadbalancer) { + return false + } + return true } +func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetDisableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*ReplaceSpecType_DisableThreatIntelligence); ok { - return x.DisableThreatIntelligence + that1, ok := that.(*ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) + if !ok { + that2, ok := that.(ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultLoadbalancer.Equal(that1.DefaultLoadbalancer) { + return false + } + return true } +func (this *HashPolicyListType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetEnableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*ReplaceSpecType_EnableThreatIntelligence); ok { - return x.EnableThreatIntelligence + that1, ok := that.(*HashPolicyListType) + if !ok { + that2, ok := that.(HashPolicyListType) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.HashPolicy) != len(that1.HashPolicy) { + return false + } + for i := range this.HashPolicy { + if !this.HashPolicy[i].Equal(that1.HashPolicy[i]) { + return false + } + } + return true } +func (this *MirrorPolicyType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetL7DdosActionDefault() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionDefault); ok { - return x.L7DdosActionDefault + that1, ok := that.(*MirrorPolicyType) + if !ok { + that2, ok := that.(MirrorPolicyType) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.OriginPool.Equal(that1.OriginPool) { + return false + } + if !this.Percent.Equal(that1.Percent) { + return false + } + return true } +func (this *RouteSimpleAdvancedOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetL7DdosActionBlock() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionBlock); ok { - return x.L7DdosActionBlock + that1, ok := that.(*RouteSimpleAdvancedOptions) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.HashPolicyChoice == nil { + if this.HashPolicyChoice != nil { + return false + } + } else if this.HashPolicyChoice == nil { + return false + } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { + return false + } + if this.Priority != that1.Priority { + return false + } + if len(this.EndpointSubsets) != len(that1.EndpointSubsets) { + return false + } + for i := range this.EndpointSubsets { + if this.EndpointSubsets[i] != that1.EndpointSubsets[i] { + return false + } + } + if that1.RewriteChoice == nil { + if this.RewriteChoice != nil { + return false + } + } else if this.RewriteChoice == nil { + return false + } else if !this.RewriteChoice.Equal(that1.RewriteChoice) { + return false + } + if len(this.RequestHeadersToAdd) != len(that1.RequestHeadersToAdd) { + return false + } + for i := range this.RequestHeadersToAdd { + if !this.RequestHeadersToAdd[i].Equal(that1.RequestHeadersToAdd[i]) { + return false + } + } + if len(this.RequestHeadersToRemove) != len(that1.RequestHeadersToRemove) { + return false + } + for i := range this.RequestHeadersToRemove { + if this.RequestHeadersToRemove[i] != that1.RequestHeadersToRemove[i] { + return false + } + } + if len(this.ResponseHeadersToAdd) != len(that1.ResponseHeadersToAdd) { + return false + } + for i := range this.ResponseHeadersToAdd { + if !this.ResponseHeadersToAdd[i].Equal(that1.ResponseHeadersToAdd[i]) { + return false + } + } + if len(this.ResponseHeadersToRemove) != len(that1.ResponseHeadersToRemove) { + return false + } + for i := range this.ResponseHeadersToRemove { + if this.ResponseHeadersToRemove[i] != that1.ResponseHeadersToRemove[i] { + return false + } + } + if this.DisableLocationAdd != that1.DisableLocationAdd { + return false + } + if that1.WafChoice == nil { + if this.WafChoice != nil { + return false + } + } else if this.WafChoice == nil { + return false + } else if !this.WafChoice.Equal(that1.WafChoice) { + return false + } + if !this.CorsPolicy.Equal(that1.CorsPolicy) { + return false + } + if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { + return false + } + if that1.SpdyChoice == nil { + if this.SpdyChoice != nil { + return false + } + } else if this.SpdyChoice == nil { + return false + } else if !this.SpdyChoice.Equal(that1.SpdyChoice) { + return false + } + if that1.WebsocketChoice == nil { + if this.WebsocketChoice != nil { + return false + } + } else if this.WebsocketChoice == nil { + return false + } else if !this.WebsocketChoice.Equal(that1.WebsocketChoice) { + return false + } + if that1.RetryPolicyChoice == nil { + if this.RetryPolicyChoice != nil { + return false + } + } else if this.RetryPolicyChoice == nil { + return false + } else if !this.RetryPolicyChoice.Equal(that1.RetryPolicyChoice) { + return false + } + if this.Timeout != that1.Timeout { + return false + } + if that1.BufferChoice == nil { + if this.BufferChoice != nil { + return false + } + } else if this.BufferChoice == nil { + return false + } else if !this.BufferChoice.Equal(that1.BufferChoice) { + return false + } + if that1.MirroringChoice == nil { + if this.MirroringChoice != nil { + return false + } + } else if this.MirroringChoice == nil { + return false + } else if !this.MirroringChoice.Equal(that1.MirroringChoice) { + return false + } + if that1.ClusterRetractChoice == nil { + if this.ClusterRetractChoice != nil { + return false + } + } else if this.ClusterRetractChoice == nil { + return false + } else if !this.ClusterRetractChoice.Equal(that1.ClusterRetractChoice) { + return false + } + if that1.BotDefenseJavascriptInjectionChoice == nil { + if this.BotDefenseJavascriptInjectionChoice != nil { + return false + } + } else if this.BotDefenseJavascriptInjectionChoice == nil { + return false + } else if !this.BotDefenseJavascriptInjectionChoice.Equal(that1.BotDefenseJavascriptInjectionChoice) { + return false + } + return true } +func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionJsChallenge); ok { - return x.L7DdosActionJsChallenge + that1, ok := that.(*RouteSimpleAdvancedOptions_CommonHashPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_CommonHashPolicy) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CommonHashPolicy.Equal(that1.CommonHashPolicy) { + return false + } + return true } +func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *ReplaceSpecType) GetL7DdosActionNone() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionNone); ok { - return x.L7DdosActionNone + that1, ok := that.(*RouteSimpleAdvancedOptions_SpecificHashPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_SpecificHashPolicy) + if ok { + that1 = &that2 + } else { + return false + } } - return nil + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.SpecificHashPolicy.Equal(that1.SpecificHashPolicy) { + return false + } + return true } +func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -// XXX_OneofWrappers is for the internal use of the proto package. -func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*ReplaceSpecType_Http)(nil), - (*ReplaceSpecType_HttpsAutoCert)(nil), - (*ReplaceSpecType_Https)(nil), - (*ReplaceSpecType_DoNotAdvertise)(nil), - (*ReplaceSpecType_AdvertiseOnPublicDefaultVip)(nil), - (*ReplaceSpecType_AdvertiseOnPublic)(nil), - (*ReplaceSpecType_AdvertiseCustom)(nil), - (*ReplaceSpecType_DefaultPool)(nil), - (*ReplaceSpecType_DefaultPoolList)(nil), - (*ReplaceSpecType_DisableWaf)(nil), - (*ReplaceSpecType_AppFirewall)(nil), - (*ReplaceSpecType_NoChallenge)(nil), - (*ReplaceSpecType_EnableChallenge)(nil), - (*ReplaceSpecType_JsChallenge)(nil), - (*ReplaceSpecType_CaptchaChallenge)(nil), - (*ReplaceSpecType_PolicyBasedChallenge)(nil), - (*ReplaceSpecType_UserIdClientIp)(nil), - (*ReplaceSpecType_UserIdentification)(nil), - (*ReplaceSpecType_DisableRateLimit)(nil), - (*ReplaceSpecType_ApiRateLimit)(nil), - (*ReplaceSpecType_RateLimit)(nil), - (*ReplaceSpecType_ServicePoliciesFromNamespace)(nil), - (*ReplaceSpecType_NoServicePolicies)(nil), - (*ReplaceSpecType_ActiveServicePolicies)(nil), - (*ReplaceSpecType_RoundRobin)(nil), - (*ReplaceSpecType_LeastActive)(nil), - (*ReplaceSpecType_Random)(nil), - (*ReplaceSpecType_SourceIpStickiness)(nil), - (*ReplaceSpecType_CookieStickiness)(nil), - (*ReplaceSpecType_RingHash)(nil), - (*ReplaceSpecType_DisableTrustClientIpHeaders)(nil), - (*ReplaceSpecType_EnableTrustClientIpHeaders)(nil), - (*ReplaceSpecType_SingleLbApp)(nil), - (*ReplaceSpecType_MultiLbApp)(nil), - (*ReplaceSpecType_EnableDdosDetection)(nil), - (*ReplaceSpecType_DisableDdosDetection)(nil), - (*ReplaceSpecType_EnableMaliciousUserDetection)(nil), - (*ReplaceSpecType_DisableMaliciousUserDetection)(nil), - (*ReplaceSpecType_EnableApiDiscovery)(nil), - (*ReplaceSpecType_DisableApiDiscovery)(nil), - (*ReplaceSpecType_DisableBotDefense)(nil), - (*ReplaceSpecType_BotDefense)(nil), - (*ReplaceSpecType_BotDefenseAdvanced)(nil), - (*ReplaceSpecType_DisableApiDefinition)(nil), - (*ReplaceSpecType_ApiDefinition)(nil), - (*ReplaceSpecType_ApiSpecification)(nil), - (*ReplaceSpecType_ApiDefinitions)(nil), - (*ReplaceSpecType_DisableIpReputation)(nil), - (*ReplaceSpecType_EnableIpReputation)(nil), - (*ReplaceSpecType_DisableClientSideDefense)(nil), - (*ReplaceSpecType_ClientSideDefense)(nil), - (*ReplaceSpecType_SystemDefaultTimeouts)(nil), - (*ReplaceSpecType_SlowDdosMitigation)(nil), - (*ReplaceSpecType_DisableThreatIntelligence)(nil), - (*ReplaceSpecType_EnableThreatIntelligence)(nil), - (*ReplaceSpecType_L7DdosActionDefault)(nil), - (*ReplaceSpecType_L7DdosActionBlock)(nil), - (*ReplaceSpecType_L7DdosActionJsChallenge)(nil), - (*ReplaceSpecType_L7DdosActionNone)(nil), + that1, ok := that.(*RouteSimpleAdvancedOptions_DisablePrefixRewrite) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DisablePrefixRewrite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisablePrefixRewrite.Equal(that1.DisablePrefixRewrite) { + return false } + return true } +func (this *RouteSimpleAdvancedOptions_PrefixRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -// GetSpecType -// -// x-displayName: "Get HTTP Load Balancer" -// Shape of the HTTP load balancer specification -type GetSpecType struct { - Domains []string `protobuf:"bytes,1,rep,name=domains,proto3" json:"domains,omitempty"` - // Types that are valid to be assigned to LoadbalancerType: - // - // *GetSpecType_Http - // *GetSpecType_HttpsAutoCert - // *GetSpecType_Https - LoadbalancerType isGetSpecType_LoadbalancerType `protobuf_oneof:"loadbalancer_type"` - DownstreamTlsCertificateExpirationTimestamps []*types.Timestamp `protobuf:"bytes,62,rep,name=downstream_tls_certificate_expiration_timestamps,json=downstreamTlsCertificateExpirationTimestamps,proto3" json:"downstream_tls_certificate_expiration_timestamps,omitempty"` - // Types that are valid to be assigned to AdvertiseChoice: - // - // *GetSpecType_DoNotAdvertise - // *GetSpecType_AdvertiseOnPublicDefaultVip - // *GetSpecType_AdvertiseOnPublic - // *GetSpecType_AdvertiseCustom - AdvertiseChoice isGetSpecType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` - DefaultRoutePools []*views.OriginPoolWithWeight `protobuf:"bytes,6,rep,name=default_route_pools,json=defaultRoutePools,proto3" json:"default_route_pools,omitempty"` - // Types that are valid to be assigned to OriginPoolChoice: - // - // *GetSpecType_DefaultPool - // *GetSpecType_DefaultPoolList - OriginPoolChoice isGetSpecType_OriginPoolChoice `protobuf_oneof:"origin_pool_choice"` - OriginServerSubsetRuleList *OriginServerSubsetRuleListType `protobuf:"bytes,101,opt,name=origin_server_subset_rule_list,json=originServerSubsetRuleList,proto3" json:"origin_server_subset_rule_list,omitempty"` - Routes []*RouteType `protobuf:"bytes,7,rep,name=routes,proto3" json:"routes,omitempty"` - CorsPolicy *schema.CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"` - // Types that are valid to be assigned to WafChoice: - // - // *GetSpecType_DisableWaf - // *GetSpecType_AppFirewall - WafChoice isGetSpecType_WafChoice `protobuf_oneof:"waf_choice"` - AddLocation bool `protobuf:"varint,17,opt,name=add_location,json=addLocation,proto3" json:"add_location,omitempty"` - // Types that are valid to be assigned to ChallengeType: - // - // *GetSpecType_NoChallenge - // *GetSpecType_EnableChallenge - // *GetSpecType_JsChallenge - // *GetSpecType_CaptchaChallenge - // *GetSpecType_PolicyBasedChallenge - ChallengeType isGetSpecType_ChallengeType `protobuf_oneof:"challenge_type"` - MoreOption *AdvancedOptionsType `protobuf:"bytes,19,opt,name=more_option,json=moreOption,proto3" json:"more_option,omitempty"` - // Types that are valid to be assigned to UserIdChoice: - // - // *GetSpecType_UserIdClientIp - // *GetSpecType_UserIdentification - UserIdChoice isGetSpecType_UserIdChoice `protobuf_oneof:"user_id_choice"` - // Types that are valid to be assigned to RateLimitChoice: - // - // *GetSpecType_DisableRateLimit - // *GetSpecType_ApiRateLimit - // *GetSpecType_RateLimit - RateLimitChoice isGetSpecType_RateLimitChoice `protobuf_oneof:"rate_limit_choice"` - MaliciousUserMitigation *views.ObjectRefType `protobuf:"bytes,32,opt,name=malicious_user_mitigation,json=maliciousUserMitigation,proto3" json:"malicious_user_mitigation,omitempty"` - WafExclusionRules []*policy.SimpleWafExclusionRule `protobuf:"bytes,33,rep,name=waf_exclusion_rules,json=wafExclusionRules,proto3" json:"waf_exclusion_rules,omitempty"` - DataGuardRules []*policy.SimpleDataGuardRule `protobuf:"bytes,63,rep,name=data_guard_rules,json=dataGuardRules,proto3" json:"data_guard_rules,omitempty"` - BlockedClients []*SimpleClientSrcRule `protobuf:"bytes,34,rep,name=blocked_clients,json=blockedClients,proto3" json:"blocked_clients,omitempty"` - TrustedClients []*SimpleClientSrcRule `protobuf:"bytes,35,rep,name=trusted_clients,json=trustedClients,proto3" json:"trusted_clients,omitempty"` - ApiProtectionRules *APIProtectionRules `protobuf:"bytes,72,opt,name=api_protection_rules,json=apiProtectionRules,proto3" json:"api_protection_rules,omitempty"` - DdosMitigationRules []*DDoSMitigationRule `protobuf:"bytes,37,rep,name=ddos_mitigation_rules,json=ddosMitigationRules,proto3" json:"ddos_mitigation_rules,omitempty"` - // Types that are valid to be assigned to ServicePolicyChoice: - // - // *GetSpecType_ServicePoliciesFromNamespace - // *GetSpecType_NoServicePolicies - // *GetSpecType_ActiveServicePolicies - ServicePolicyChoice isGetSpecType_ServicePolicyChoice `protobuf_oneof:"service_policy_choice"` - // Types that are valid to be assigned to HashPolicyChoice: - // - // *GetSpecType_RoundRobin - // *GetSpecType_LeastActive - // *GetSpecType_Random - // *GetSpecType_SourceIpStickiness - // *GetSpecType_CookieStickiness - // *GetSpecType_RingHash - HashPolicyChoice isGetSpecType_HashPolicyChoice `protobuf_oneof:"hash_policy_choice"` - // Types that are valid to be assigned to TrustClientIpHeadersChoice: - // - // *GetSpecType_DisableTrustClientIpHeaders - // *GetSpecType_EnableTrustClientIpHeaders - TrustClientIpHeadersChoice isGetSpecType_TrustClientIpHeadersChoice `protobuf_oneof:"trust_client_ip_headers_choice"` - // Types that are valid to be assigned to MlConfigChoice: - // - // *GetSpecType_SingleLbApp - // *GetSpecType_MultiLbApp - MlConfigChoice isGetSpecType_MlConfigChoice `protobuf_oneof:"ml_config_choice"` - // Types that are valid to be assigned to DdosDetectionChoice: - // - // *GetSpecType_EnableDdosDetection - // *GetSpecType_DisableDdosDetection - DdosDetectionChoice isGetSpecType_DdosDetectionChoice `protobuf_oneof:"ddos_detection_choice"` - // Types that are valid to be assigned to MaliciousUserDetectionChoice: - // - // *GetSpecType_EnableMaliciousUserDetection - // *GetSpecType_DisableMaliciousUserDetection - MaliciousUserDetectionChoice isGetSpecType_MaliciousUserDetectionChoice `protobuf_oneof:"malicious_user_detection_choice"` - // Types that are valid to be assigned to ApiDiscoveryChoice: - // - // *GetSpecType_EnableApiDiscovery - // *GetSpecType_DisableApiDiscovery - ApiDiscoveryChoice isGetSpecType_ApiDiscoveryChoice `protobuf_oneof:"api_discovery_choice"` - // Types that are valid to be assigned to BotDefenseChoice: - // - // *GetSpecType_DisableBotDefense - // *GetSpecType_BotDefense - // *GetSpecType_BotDefenseAdvanced - BotDefenseChoice isGetSpecType_BotDefenseChoice `protobuf_oneof:"bot_defense_choice"` - // Types that are valid to be assigned to ApiDefinitionChoice: - // - // *GetSpecType_DisableApiDefinition - // *GetSpecType_ApiDefinition - // *GetSpecType_ApiSpecification - // *GetSpecType_ApiDefinitions - ApiDefinitionChoice isGetSpecType_ApiDefinitionChoice `protobuf_oneof:"api_definition_choice"` - // Types that are valid to be assigned to IpReputationChoice: - // - // *GetSpecType_DisableIpReputation - // *GetSpecType_EnableIpReputation - IpReputationChoice isGetSpecType_IpReputationChoice `protobuf_oneof:"ip_reputation_choice"` - // Types that are valid to be assigned to ClientSideDefenseChoice: - // - // *GetSpecType_DisableClientSideDefense - // *GetSpecType_ClientSideDefense - ClientSideDefenseChoice isGetSpecType_ClientSideDefenseChoice `protobuf_oneof:"client_side_defense_choice"` - CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,91,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` - GraphqlRules []*policy.GraphQLRule `protobuf:"bytes,92,rep,name=graphql_rules,json=graphqlRules,proto3" json:"graphql_rules,omitempty"` - ProtectedCookies []*schema.CookieManipulationOptionType `protobuf:"bytes,93,rep,name=protected_cookies,json=protectedCookies,proto3" json:"protected_cookies,omitempty"` - HostName string `protobuf:"bytes,1001,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` - DnsInfo []*virtual_host_dns_info.DnsInfo `protobuf:"bytes,1002,rep,name=dns_info,json=dnsInfo,proto3" json:"dns_info,omitempty"` - State virtual_host.VirtualHostState `protobuf:"varint,1003,opt,name=state,proto3,enum=ves.io.schema.virtual_host.VirtualHostState" json:"state,omitempty"` - AutoCertInfo *virtual_host.AutoCertInfoType `protobuf:"bytes,1010,opt,name=auto_cert_info,json=autoCertInfo,proto3" json:"auto_cert_info,omitempty"` - InternetVipInfo []*views.InternetVIPInfo `protobuf:"bytes,1100,rep,name=internet_vip_info,json=internetVipInfo,proto3" json:"internet_vip_info,omitempty"` - // Types that are valid to be assigned to SlowDdosMitigationChoice: - // - // *GetSpecType_SystemDefaultTimeouts - // *GetSpecType_SlowDdosMitigation - SlowDdosMitigationChoice isGetSpecType_SlowDdosMitigationChoice `protobuf_oneof:"slow_ddos_mitigation_choice"` - JwtValidation *JWTValidation `protobuf:"bytes,98,opt,name=jwt_validation,json=jwtValidation,proto3" json:"jwt_validation,omitempty"` - // Types that are valid to be assigned to ThreatIntelligenceChoice: - // - // *GetSpecType_DisableThreatIntelligence - // *GetSpecType_EnableThreatIntelligence - ThreatIntelligenceChoice isGetSpecType_ThreatIntelligenceChoice `protobuf_oneof:"threat_intelligence_choice"` - // Types that are valid to be assigned to L7DdosAutoMitigationAction: - // - // *GetSpecType_L7DdosActionDefault - // *GetSpecType_L7DdosActionBlock - // *GetSpecType_L7DdosActionJsChallenge - // *GetSpecType_L7DdosActionNone - L7DdosAutoMitigationAction isGetSpecType_L7DdosAutoMitigationAction `protobuf_oneof:"l7_ddos_auto_mitigation_action"` - CertState virtual_host.CertificationState `protobuf:"varint,115,opt,name=cert_state,json=certState,proto3,enum=ves.io.schema.virtual_host.CertificationState" json:"cert_state,omitempty"` + that1, ok := that.(*RouteSimpleAdvancedOptions_PrefixRewrite) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_PrefixRewrite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.PrefixRewrite != that1.PrefixRewrite { + return false + } + return true } +func (this *RouteSimpleAdvancedOptions_RegexRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -func (m *GetSpecType) Reset() { *m = GetSpecType{} } -func (*GetSpecType) ProtoMessage() {} -func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6478b2bb990a4a3e, []int{90} -} -func (m *GetSpecType) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + that1, ok := that.(*RouteSimpleAdvancedOptions_RegexRewrite) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_RegexRewrite) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RegexRewrite.Equal(that1.RegexRewrite) { + return false + } + return true } -func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (this *RouteSimpleAdvancedOptions_InheritedWaf) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return b[:n], nil + + that1, ok := that.(*RouteSimpleAdvancedOptions_InheritedWaf) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_InheritedWaf) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.InheritedWaf.Equal(that1.InheritedWaf) { + return false + } + return true } -func (m *GetSpecType) XXX_Merge(src proto.Message) { - xxx_messageInfo_GetSpecType.Merge(m, src) +func (this *RouteSimpleAdvancedOptions_AppFirewall) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_AppFirewall) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_AppFirewall) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AppFirewall.Equal(that1.AppFirewall) { + return false + } + return true } -func (m *GetSpecType) XXX_Size() int { - return m.Size() +func (this *RouteSimpleAdvancedOptions_DisableWaf) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_DisableWaf) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DisableWaf) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableWaf.Equal(that1.DisableWaf) { + return false + } + return true } -func (m *GetSpecType) XXX_DiscardUnknown() { - xxx_messageInfo_GetSpecType.DiscardUnknown(m) +func (this *RouteSimpleAdvancedOptions_DisableSpdy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_DisableSpdy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DisableSpdy) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableSpdy.Equal(that1.DisableSpdy) { + return false + } + return true } +func (this *RouteSimpleAdvancedOptions_EnableSpdy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -var xxx_messageInfo_GetSpecType proto.InternalMessageInfo + that1, ok := that.(*RouteSimpleAdvancedOptions_EnableSpdy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_EnableSpdy) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.EnableSpdy.Equal(that1.EnableSpdy) { + return false + } + return true +} +func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) Equal(that interface{}) bool { + if that == nil { + return this == nil + } -type isGetSpecType_LoadbalancerType interface { - isGetSpecType_LoadbalancerType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int + that1, ok := that.(*RouteSimpleAdvancedOptions_DisableWebSocketConfig) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DisableWebSocketConfig) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableWebSocketConfig.Equal(that1.DisableWebSocketConfig) { + return false + } + return true } -type isGetSpecType_AdvertiseChoice interface { - isGetSpecType_AdvertiseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *RouteSimpleAdvancedOptions_WebSocketConfig) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_WebSocketConfig) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_WebSocketConfig) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.WebSocketConfig.Equal(that1.WebSocketConfig) { + return false + } + return true } -type isGetSpecType_OriginPoolChoice interface { - isGetSpecType_OriginPoolChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_DefaultRetryPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DefaultRetryPolicy) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DefaultRetryPolicy.Equal(that1.DefaultRetryPolicy) { + return false + } + return true } -type isGetSpecType_WafChoice interface { - isGetSpecType_WafChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_NoRetryPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_NoRetryPolicy) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoRetryPolicy.Equal(that1.NoRetryPolicy) { + return false + } + return true } -type isGetSpecType_ChallengeType interface { - isGetSpecType_ChallengeType() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int +func (this *RouteSimpleAdvancedOptions_RetryPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*RouteSimpleAdvancedOptions_RetryPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_RetryPolicy) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.RetryPolicy.Equal(that1.RetryPolicy) { + return false + } + return true } -type isGetSpecType_UserIdChoice interface { - isGetSpecType_UserIdChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_RateLimitChoice interface { - isGetSpecType_RateLimitChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_ServicePolicyChoice interface { - isGetSpecType_ServicePolicyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_HashPolicyChoice interface { - isGetSpecType_HashPolicyChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_TrustClientIpHeadersChoice interface { - isGetSpecType_TrustClientIpHeadersChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_MlConfigChoice interface { - isGetSpecType_MlConfigChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_DdosDetectionChoice interface { - isGetSpecType_DdosDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_MaliciousUserDetectionChoice interface { - isGetSpecType_MaliciousUserDetectionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_ApiDiscoveryChoice interface { - isGetSpecType_ApiDiscoveryChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_BotDefenseChoice interface { - isGetSpecType_BotDefenseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_ApiDefinitionChoice interface { - isGetSpecType_ApiDefinitionChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_IpReputationChoice interface { - isGetSpecType_IpReputationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_ClientSideDefenseChoice interface { - isGetSpecType_ClientSideDefenseChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_SlowDdosMitigationChoice interface { - isGetSpecType_SlowDdosMitigationChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_ThreatIntelligenceChoice interface { - isGetSpecType_ThreatIntelligenceChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} -type isGetSpecType_L7DdosAutoMitigationAction interface { - isGetSpecType_L7DdosAutoMitigationAction() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type GetSpecType_Http struct { - Http *ProxyTypeHttp `protobuf:"bytes,2,opt,name=http,proto3,oneof" json:"http,omitempty"` -} -type GetSpecType_HttpsAutoCert struct { - HttpsAutoCert *ProxyTypeHttpsAutoCerts `protobuf:"bytes,27,opt,name=https_auto_cert,json=httpsAutoCert,proto3,oneof" json:"https_auto_cert,omitempty"` -} -type GetSpecType_Https struct { - Https *ProxyTypeHttps `protobuf:"bytes,3,opt,name=https,proto3,oneof" json:"https,omitempty"` -} -type GetSpecType_DoNotAdvertise struct { - DoNotAdvertise *schema.Empty `protobuf:"bytes,12,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` -} -type GetSpecType_AdvertiseOnPublicDefaultVip struct { - AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,13,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` -} -type GetSpecType_AdvertiseOnPublic struct { - AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` -} -type GetSpecType_AdvertiseCustom struct { - AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` -} -type GetSpecType_DefaultPool struct { - DefaultPool *origin_pool.GlobalSpecType `protobuf:"bytes,89,opt,name=default_pool,json=defaultPool,proto3,oneof" json:"default_pool,omitempty"` -} -type GetSpecType_DefaultPoolList struct { - DefaultPoolList *views.OriginPoolListType `protobuf:"bytes,90,opt,name=default_pool_list,json=defaultPoolList,proto3,oneof" json:"default_pool_list,omitempty"` -} -type GetSpecType_DisableWaf struct { - DisableWaf *schema.Empty `protobuf:"bytes,11,opt,name=disable_waf,json=disableWaf,proto3,oneof" json:"disable_waf,omitempty"` -} -type GetSpecType_AppFirewall struct { - AppFirewall *views.ObjectRefType `protobuf:"bytes,52,opt,name=app_firewall,json=appFirewall,proto3,oneof" json:"app_firewall,omitempty"` -} -type GetSpecType_NoChallenge struct { - NoChallenge *schema.Empty `protobuf:"bytes,26,opt,name=no_challenge,json=noChallenge,proto3,oneof" json:"no_challenge,omitempty"` -} -type GetSpecType_EnableChallenge struct { - EnableChallenge *EnableChallenge `protobuf:"bytes,95,opt,name=enable_challenge,json=enableChallenge,proto3,oneof" json:"enable_challenge,omitempty"` -} -type GetSpecType_JsChallenge struct { - JsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,18,opt,name=js_challenge,json=jsChallenge,proto3,oneof" json:"js_challenge,omitempty"` -} -type GetSpecType_CaptchaChallenge struct { - CaptchaChallenge *virtual_host.CaptchaChallengeType `protobuf:"bytes,24,opt,name=captcha_challenge,json=captchaChallenge,proto3,oneof" json:"captcha_challenge,omitempty"` -} -type GetSpecType_PolicyBasedChallenge struct { - PolicyBasedChallenge *PolicyBasedChallenge `protobuf:"bytes,51,opt,name=policy_based_challenge,json=policyBasedChallenge,proto3,oneof" json:"policy_based_challenge,omitempty"` -} -type GetSpecType_UserIdClientIp struct { - UserIdClientIp *schema.Empty `protobuf:"bytes,60,opt,name=user_id_client_ip,json=userIdClientIp,proto3,oneof" json:"user_id_client_ip,omitempty"` -} -type GetSpecType_UserIdentification struct { - UserIdentification *views.ObjectRefType `protobuf:"bytes,20,opt,name=user_identification,json=userIdentification,proto3,oneof" json:"user_identification,omitempty"` -} -type GetSpecType_DisableRateLimit struct { - DisableRateLimit *schema.Empty `protobuf:"bytes,22,opt,name=disable_rate_limit,json=disableRateLimit,proto3,oneof" json:"disable_rate_limit,omitempty"` -} -type GetSpecType_ApiRateLimit struct { - ApiRateLimit *APIRateLimit `protobuf:"bytes,68,opt,name=api_rate_limit,json=apiRateLimit,proto3,oneof" json:"api_rate_limit,omitempty"` -} -type GetSpecType_RateLimit struct { - RateLimit *RateLimitConfigType `protobuf:"bytes,23,opt,name=rate_limit,json=rateLimit,proto3,oneof" json:"rate_limit,omitempty"` -} -type GetSpecType_ServicePoliciesFromNamespace struct { - ServicePoliciesFromNamespace *schema.Empty `protobuf:"bytes,41,opt,name=service_policies_from_namespace,json=servicePoliciesFromNamespace,proto3,oneof" json:"service_policies_from_namespace,omitempty"` -} -type GetSpecType_NoServicePolicies struct { - NoServicePolicies *schema.Empty `protobuf:"bytes,42,opt,name=no_service_policies,json=noServicePolicies,proto3,oneof" json:"no_service_policies,omitempty"` -} -type GetSpecType_ActiveServicePolicies struct { - ActiveServicePolicies *ServicePolicyList `protobuf:"bytes,43,opt,name=active_service_policies,json=activeServicePolicies,proto3,oneof" json:"active_service_policies,omitempty"` -} -type GetSpecType_RoundRobin struct { - RoundRobin *schema.Empty `protobuf:"bytes,45,opt,name=round_robin,json=roundRobin,proto3,oneof" json:"round_robin,omitempty"` -} -type GetSpecType_LeastActive struct { - LeastActive *schema.Empty `protobuf:"bytes,46,opt,name=least_active,json=leastActive,proto3,oneof" json:"least_active,omitempty"` -} -type GetSpecType_Random struct { - Random *schema.Empty `protobuf:"bytes,47,opt,name=random,proto3,oneof" json:"random,omitempty"` -} -type GetSpecType_SourceIpStickiness struct { - SourceIpStickiness *schema.Empty `protobuf:"bytes,48,opt,name=source_ip_stickiness,json=sourceIpStickiness,proto3,oneof" json:"source_ip_stickiness,omitempty"` -} -type GetSpecType_CookieStickiness struct { - CookieStickiness *route.CookieForHashing `protobuf:"bytes,49,opt,name=cookie_stickiness,json=cookieStickiness,proto3,oneof" json:"cookie_stickiness,omitempty"` -} -type GetSpecType_RingHash struct { - RingHash *HashPolicyListType `protobuf:"bytes,50,opt,name=ring_hash,json=ringHash,proto3,oneof" json:"ring_hash,omitempty"` -} -type GetSpecType_DisableTrustClientIpHeaders struct { - DisableTrustClientIpHeaders *schema.Empty `protobuf:"bytes,74,opt,name=disable_trust_client_ip_headers,json=disableTrustClientIpHeaders,proto3,oneof" json:"disable_trust_client_ip_headers,omitempty"` -} -type GetSpecType_EnableTrustClientIpHeaders struct { - EnableTrustClientIpHeaders *virtual_host.ClientIPHeaders `protobuf:"bytes,75,opt,name=enable_trust_client_ip_headers,json=enableTrustClientIpHeaders,proto3,oneof" json:"enable_trust_client_ip_headers,omitempty"` -} -type GetSpecType_SingleLbApp struct { - SingleLbApp *SingleLoadBalancerAppSetting `protobuf:"bytes,54,opt,name=single_lb_app,json=singleLbApp,proto3,oneof" json:"single_lb_app,omitempty"` -} -type GetSpecType_MultiLbApp struct { - MultiLbApp *schema.Empty `protobuf:"bytes,55,opt,name=multi_lb_app,json=multiLbApp,proto3,oneof" json:"multi_lb_app,omitempty"` -} -type GetSpecType_EnableDdosDetection struct { - EnableDdosDetection *EnableDDoSDetectionSetting `protobuf:"bytes,77,opt,name=enable_ddos_detection,json=enableDdosDetection,proto3,oneof" json:"enable_ddos_detection,omitempty"` -} -type GetSpecType_DisableDdosDetection struct { - DisableDdosDetection *schema.Empty `protobuf:"bytes,78,opt,name=disable_ddos_detection,json=disableDdosDetection,proto3,oneof" json:"disable_ddos_detection,omitempty"` -} -type GetSpecType_EnableMaliciousUserDetection struct { - EnableMaliciousUserDetection *schema.Empty `protobuf:"bytes,80,opt,name=enable_malicious_user_detection,json=enableMaliciousUserDetection,proto3,oneof" json:"enable_malicious_user_detection,omitempty"` -} -type GetSpecType_DisableMaliciousUserDetection struct { - DisableMaliciousUserDetection *schema.Empty `protobuf:"bytes,81,opt,name=disable_malicious_user_detection,json=disableMaliciousUserDetection,proto3,oneof" json:"disable_malicious_user_detection,omitempty"` -} -type GetSpecType_EnableApiDiscovery struct { - EnableApiDiscovery *ApiDiscoverySetting `protobuf:"bytes,83,opt,name=enable_api_discovery,json=enableApiDiscovery,proto3,oneof" json:"enable_api_discovery,omitempty"` -} -type GetSpecType_DisableApiDiscovery struct { - DisableApiDiscovery *schema.Empty `protobuf:"bytes,84,opt,name=disable_api_discovery,json=disableApiDiscovery,proto3,oneof" json:"disable_api_discovery,omitempty"` -} -type GetSpecType_DisableBotDefense struct { - DisableBotDefense *schema.Empty `protobuf:"bytes,57,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` -} -type GetSpecType_BotDefense struct { - BotDefense *ShapeBotDefenseType `protobuf:"bytes,58,opt,name=bot_defense,json=botDefense,proto3,oneof" json:"bot_defense,omitempty"` -} -type GetSpecType_BotDefenseAdvanced struct { - BotDefenseAdvanced *BotDefenseAdvancedType `protobuf:"bytes,1011,opt,name=bot_defense_advanced,json=botDefenseAdvanced,proto3,oneof" json:"bot_defense_advanced,omitempty"` -} -type GetSpecType_DisableApiDefinition struct { - DisableApiDefinition *schema.Empty `protobuf:"bytes,70,opt,name=disable_api_definition,json=disableApiDefinition,proto3,oneof" json:"disable_api_definition,omitempty"` -} -type GetSpecType_ApiDefinition struct { - ApiDefinition *views.ObjectRefType `protobuf:"bytes,71,opt,name=api_definition,json=apiDefinition,proto3,oneof" json:"api_definition,omitempty"` -} -type GetSpecType_ApiSpecification struct { - ApiSpecification *APISpecificationSettings `protobuf:"bytes,67,opt,name=api_specification,json=apiSpecification,proto3,oneof" json:"api_specification,omitempty"` -} -type GetSpecType_ApiDefinitions struct { - ApiDefinitions *ApiDefinitionList `protobuf:"bytes,61,opt,name=api_definitions,json=apiDefinitions,proto3,oneof" json:"api_definitions,omitempty"` -} -type GetSpecType_DisableIpReputation struct { - DisableIpReputation *schema.Empty `protobuf:"bytes,65,opt,name=disable_ip_reputation,json=disableIpReputation,proto3,oneof" json:"disable_ip_reputation,omitempty"` -} -type GetSpecType_EnableIpReputation struct { - EnableIpReputation *IPThreatCategoryListType `protobuf:"bytes,66,opt,name=enable_ip_reputation,json=enableIpReputation,proto3,oneof" json:"enable_ip_reputation,omitempty"` -} -type GetSpecType_DisableClientSideDefense struct { - DisableClientSideDefense *schema.Empty `protobuf:"bytes,86,opt,name=disable_client_side_defense,json=disableClientSideDefense,proto3,oneof" json:"disable_client_side_defense,omitempty"` -} -type GetSpecType_ClientSideDefense struct { - ClientSideDefense *ClientSideDefenseType `protobuf:"bytes,87,opt,name=client_side_defense,json=clientSideDefense,proto3,oneof" json:"client_side_defense,omitempty"` -} -type GetSpecType_SystemDefaultTimeouts struct { - SystemDefaultTimeouts *schema.Empty `protobuf:"bytes,97,opt,name=system_default_timeouts,json=systemDefaultTimeouts,proto3,oneof" json:"system_default_timeouts,omitempty"` -} -type GetSpecType_SlowDdosMitigation struct { - SlowDdosMitigation *virtual_host.SlowDDoSMitigation `protobuf:"bytes,94,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3,oneof" json:"slow_ddos_mitigation,omitempty"` -} -type GetSpecType_DisableThreatIntelligence struct { - DisableThreatIntelligence *schema.Empty `protobuf:"bytes,103,opt,name=disable_threat_intelligence,json=disableThreatIntelligence,proto3,oneof" json:"disable_threat_intelligence,omitempty"` -} -type GetSpecType_EnableThreatIntelligence struct { - EnableThreatIntelligence *schema.Empty `protobuf:"bytes,105,opt,name=enable_threat_intelligence,json=enableThreatIntelligence,proto3,oneof" json:"enable_threat_intelligence,omitempty"` -} -type GetSpecType_L7DdosActionDefault struct { - L7DdosActionDefault *schema.Empty `protobuf:"bytes,111,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` -} -type GetSpecType_L7DdosActionBlock struct { - L7DdosActionBlock *schema.Empty `protobuf:"bytes,112,opt,name=l7_ddos_action_block,json=l7DdosActionBlock,proto3,oneof" json:"l7_ddos_action_block,omitempty"` -} -type GetSpecType_L7DdosActionJsChallenge struct { - L7DdosActionJsChallenge *virtual_host.JavascriptChallengeType `protobuf:"bytes,113,opt,name=l7_ddos_action_js_challenge,json=l7DdosActionJsChallenge,proto3,oneof" json:"l7_ddos_action_js_challenge,omitempty"` -} -type GetSpecType_L7DdosActionNone struct { - L7DdosActionNone *schema.Empty `protobuf:"bytes,114,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` -} - -func (*GetSpecType_Http) isGetSpecType_LoadbalancerType() {} -func (*GetSpecType_HttpsAutoCert) isGetSpecType_LoadbalancerType() {} -func (*GetSpecType_Https) isGetSpecType_LoadbalancerType() {} -func (*GetSpecType_DoNotAdvertise) isGetSpecType_AdvertiseChoice() {} -func (*GetSpecType_AdvertiseOnPublicDefaultVip) isGetSpecType_AdvertiseChoice() {} -func (*GetSpecType_AdvertiseOnPublic) isGetSpecType_AdvertiseChoice() {} -func (*GetSpecType_AdvertiseCustom) isGetSpecType_AdvertiseChoice() {} -func (*GetSpecType_DefaultPool) isGetSpecType_OriginPoolChoice() {} -func (*GetSpecType_DefaultPoolList) isGetSpecType_OriginPoolChoice() {} -func (*GetSpecType_DisableWaf) isGetSpecType_WafChoice() {} -func (*GetSpecType_AppFirewall) isGetSpecType_WafChoice() {} -func (*GetSpecType_NoChallenge) isGetSpecType_ChallengeType() {} -func (*GetSpecType_EnableChallenge) isGetSpecType_ChallengeType() {} -func (*GetSpecType_JsChallenge) isGetSpecType_ChallengeType() {} -func (*GetSpecType_CaptchaChallenge) isGetSpecType_ChallengeType() {} -func (*GetSpecType_PolicyBasedChallenge) isGetSpecType_ChallengeType() {} -func (*GetSpecType_UserIdClientIp) isGetSpecType_UserIdChoice() {} -func (*GetSpecType_UserIdentification) isGetSpecType_UserIdChoice() {} -func (*GetSpecType_DisableRateLimit) isGetSpecType_RateLimitChoice() {} -func (*GetSpecType_ApiRateLimit) isGetSpecType_RateLimitChoice() {} -func (*GetSpecType_RateLimit) isGetSpecType_RateLimitChoice() {} -func (*GetSpecType_ServicePoliciesFromNamespace) isGetSpecType_ServicePolicyChoice() {} -func (*GetSpecType_NoServicePolicies) isGetSpecType_ServicePolicyChoice() {} -func (*GetSpecType_ActiveServicePolicies) isGetSpecType_ServicePolicyChoice() {} -func (*GetSpecType_RoundRobin) isGetSpecType_HashPolicyChoice() {} -func (*GetSpecType_LeastActive) isGetSpecType_HashPolicyChoice() {} -func (*GetSpecType_Random) isGetSpecType_HashPolicyChoice() {} -func (*GetSpecType_SourceIpStickiness) isGetSpecType_HashPolicyChoice() {} -func (*GetSpecType_CookieStickiness) isGetSpecType_HashPolicyChoice() {} -func (*GetSpecType_RingHash) isGetSpecType_HashPolicyChoice() {} -func (*GetSpecType_DisableTrustClientIpHeaders) isGetSpecType_TrustClientIpHeadersChoice() {} -func (*GetSpecType_EnableTrustClientIpHeaders) isGetSpecType_TrustClientIpHeadersChoice() {} -func (*GetSpecType_SingleLbApp) isGetSpecType_MlConfigChoice() {} -func (*GetSpecType_MultiLbApp) isGetSpecType_MlConfigChoice() {} -func (*GetSpecType_EnableDdosDetection) isGetSpecType_DdosDetectionChoice() {} -func (*GetSpecType_DisableDdosDetection) isGetSpecType_DdosDetectionChoice() {} -func (*GetSpecType_EnableMaliciousUserDetection) isGetSpecType_MaliciousUserDetectionChoice() {} -func (*GetSpecType_DisableMaliciousUserDetection) isGetSpecType_MaliciousUserDetectionChoice() {} -func (*GetSpecType_EnableApiDiscovery) isGetSpecType_ApiDiscoveryChoice() {} -func (*GetSpecType_DisableApiDiscovery) isGetSpecType_ApiDiscoveryChoice() {} -func (*GetSpecType_DisableBotDefense) isGetSpecType_BotDefenseChoice() {} -func (*GetSpecType_BotDefense) isGetSpecType_BotDefenseChoice() {} -func (*GetSpecType_BotDefenseAdvanced) isGetSpecType_BotDefenseChoice() {} -func (*GetSpecType_DisableApiDefinition) isGetSpecType_ApiDefinitionChoice() {} -func (*GetSpecType_ApiDefinition) isGetSpecType_ApiDefinitionChoice() {} -func (*GetSpecType_ApiSpecification) isGetSpecType_ApiDefinitionChoice() {} -func (*GetSpecType_ApiDefinitions) isGetSpecType_ApiDefinitionChoice() {} -func (*GetSpecType_DisableIpReputation) isGetSpecType_IpReputationChoice() {} -func (*GetSpecType_EnableIpReputation) isGetSpecType_IpReputationChoice() {} -func (*GetSpecType_DisableClientSideDefense) isGetSpecType_ClientSideDefenseChoice() {} -func (*GetSpecType_ClientSideDefense) isGetSpecType_ClientSideDefenseChoice() {} -func (*GetSpecType_SystemDefaultTimeouts) isGetSpecType_SlowDdosMitigationChoice() {} -func (*GetSpecType_SlowDdosMitigation) isGetSpecType_SlowDdosMitigationChoice() {} -func (*GetSpecType_DisableThreatIntelligence) isGetSpecType_ThreatIntelligenceChoice() {} -func (*GetSpecType_EnableThreatIntelligence) isGetSpecType_ThreatIntelligenceChoice() {} -func (*GetSpecType_L7DdosActionDefault) isGetSpecType_L7DdosAutoMitigationAction() {} -func (*GetSpecType_L7DdosActionBlock) isGetSpecType_L7DdosAutoMitigationAction() {} -func (*GetSpecType_L7DdosActionJsChallenge) isGetSpecType_L7DdosAutoMitigationAction() {} -func (*GetSpecType_L7DdosActionNone) isGetSpecType_L7DdosAutoMitigationAction() {} - -func (m *GetSpecType) GetLoadbalancerType() isGetSpecType_LoadbalancerType { - if m != nil { - return m.LoadbalancerType - } - return nil -} -func (m *GetSpecType) GetAdvertiseChoice() isGetSpecType_AdvertiseChoice { - if m != nil { - return m.AdvertiseChoice +func (this *RouteSimpleAdvancedOptions_CommonBuffering) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetOriginPoolChoice() isGetSpecType_OriginPoolChoice { - if m != nil { - return m.OriginPoolChoice + + that1, ok := that.(*RouteSimpleAdvancedOptions_CommonBuffering) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_CommonBuffering) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *GetSpecType) GetWafChoice() isGetSpecType_WafChoice { - if m != nil { - return m.WafChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *GetSpecType) GetChallengeType() isGetSpecType_ChallengeType { - if m != nil { - return m.ChallengeType + if !this.CommonBuffering.Equal(that1.CommonBuffering) { + return false } - return nil + return true } -func (m *GetSpecType) GetUserIdChoice() isGetSpecType_UserIdChoice { - if m != nil { - return m.UserIdChoice +func (this *RouteSimpleAdvancedOptions_BufferPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetRateLimitChoice() isGetSpecType_RateLimitChoice { - if m != nil { - return m.RateLimitChoice + + that1, ok := that.(*RouteSimpleAdvancedOptions_BufferPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_BufferPolicy) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *GetSpecType) GetServicePolicyChoice() isGetSpecType_ServicePolicyChoice { - if m != nil { - return m.ServicePolicyChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *GetSpecType) GetHashPolicyChoice() isGetSpecType_HashPolicyChoice { - if m != nil { - return m.HashPolicyChoice + if !this.BufferPolicy.Equal(that1.BufferPolicy) { + return false } - return nil + return true } -func (m *GetSpecType) GetTrustClientIpHeadersChoice() isGetSpecType_TrustClientIpHeadersChoice { - if m != nil { - return m.TrustClientIpHeadersChoice +func (this *RouteSimpleAdvancedOptions_DisableMirroring) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetMlConfigChoice() isGetSpecType_MlConfigChoice { - if m != nil { - return m.MlConfigChoice + + that1, ok := that.(*RouteSimpleAdvancedOptions_DisableMirroring) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DisableMirroring) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *GetSpecType) GetDdosDetectionChoice() isGetSpecType_DdosDetectionChoice { - if m != nil { - return m.DdosDetectionChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *GetSpecType) GetMaliciousUserDetectionChoice() isGetSpecType_MaliciousUserDetectionChoice { - if m != nil { - return m.MaliciousUserDetectionChoice + if !this.DisableMirroring.Equal(that1.DisableMirroring) { + return false } - return nil + return true } -func (m *GetSpecType) GetApiDiscoveryChoice() isGetSpecType_ApiDiscoveryChoice { - if m != nil { - return m.ApiDiscoveryChoice +func (this *RouteSimpleAdvancedOptions_MirrorPolicy) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetBotDefenseChoice() isGetSpecType_BotDefenseChoice { - if m != nil { - return m.BotDefenseChoice + + that1, ok := that.(*RouteSimpleAdvancedOptions_MirrorPolicy) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_MirrorPolicy) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *GetSpecType) GetApiDefinitionChoice() isGetSpecType_ApiDefinitionChoice { - if m != nil { - return m.ApiDefinitionChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *GetSpecType) GetIpReputationChoice() isGetSpecType_IpReputationChoice { - if m != nil { - return m.IpReputationChoice + if !this.MirrorPolicy.Equal(that1.MirrorPolicy) { + return false } - return nil + return true } -func (m *GetSpecType) GetClientSideDefenseChoice() isGetSpecType_ClientSideDefenseChoice { - if m != nil { - return m.ClientSideDefenseChoice +func (this *RouteSimpleAdvancedOptions_RetractCluster) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetSlowDdosMitigationChoice() isGetSpecType_SlowDdosMitigationChoice { - if m != nil { - return m.SlowDdosMitigationChoice + + that1, ok := that.(*RouteSimpleAdvancedOptions_RetractCluster) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_RetractCluster) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} -func (m *GetSpecType) GetThreatIntelligenceChoice() isGetSpecType_ThreatIntelligenceChoice { - if m != nil { - return m.ThreatIntelligenceChoice + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} -func (m *GetSpecType) GetL7DdosAutoMitigationAction() isGetSpecType_L7DdosAutoMitigationAction { - if m != nil { - return m.L7DdosAutoMitigationAction + if !this.RetractCluster.Equal(that1.RetractCluster) { + return false } - return nil + return true } - -func (m *GetSpecType) GetDomains() []string { - if m != nil { - return m.Domains +func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetHttp() *ProxyTypeHttp { - if x, ok := m.GetLoadbalancerType().(*GetSpecType_Http); ok { - return x.Http + that1, ok := that.(*RouteSimpleAdvancedOptions_DoNotRetractCluster) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_DoNotRetractCluster) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetHttpsAutoCert() *ProxyTypeHttpsAutoCerts { - if x, ok := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert); ok { - return x.HttpsAutoCert + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetHttps() *ProxyTypeHttps { - if x, ok := m.GetLoadbalancerType().(*GetSpecType_Https); ok { - return x.Https + if !this.DoNotRetractCluster.Equal(that1.DoNotRetractCluster) { + return false } - return nil + return true } - -func (m *GetSpecType) GetDownstreamTlsCertificateExpirationTimestamps() []*types.Timestamp { - if m != nil { - return m.DownstreamTlsCertificateExpirationTimestamps +func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetDoNotAdvertise() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*GetSpecType_DoNotAdvertise); ok { - return x.DoNotAdvertise + that1, ok := that.(*RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { - if x, ok := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublicDefaultVip); ok { - return x.AdvertiseOnPublicDefaultVip + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetAdvertiseOnPublic() *views.AdvertisePublic { - if x, ok := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublic); ok { - return x.AdvertiseOnPublic + if !this.InheritedBotDefenseJavascriptInjection.Equal(that1.InheritedBotDefenseJavascriptInjection) { + return false } - return nil + return true } - -func (m *GetSpecType) GetAdvertiseCustom() *views.AdvertiseCustom { - if x, ok := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseCustom); ok { - return x.AdvertiseCustom +func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetDefaultRoutePools() []*views.OriginPoolWithWeight { - if m != nil { - return m.DefaultRoutePools + that1, ok := that.(*RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) + if !ok { + that2, ok := that.(RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetDefaultPool() *origin_pool.GlobalSpecType { - if x, ok := m.GetOriginPoolChoice().(*GetSpecType_DefaultPool); ok { - return x.DefaultPool + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetDefaultPoolList() *views.OriginPoolListType { - if x, ok := m.GetOriginPoolChoice().(*GetSpecType_DefaultPoolList); ok { - return x.DefaultPoolList + if !this.BotDefenseJavascriptInjection.Equal(that1.BotDefenseJavascriptInjection) { + return false } - return nil + return true } - -func (m *GetSpecType) GetOriginServerSubsetRuleList() *OriginServerSubsetRuleListType { - if m != nil { - return m.OriginServerSubsetRuleList +func (this *RouteTypeSimpleWithDefaultOriginPool) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetRoutes() []*RouteType { - if m != nil { - return m.Routes + that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool) + if !ok { + that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetCorsPolicy() *schema.CorsPolicy { - if m != nil { - return m.CorsPolicy + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetDisableWaf() *schema.Empty { - if x, ok := m.GetWafChoice().(*GetSpecType_DisableWaf); ok { - return x.DisableWaf + if this.HttpMethod != that1.HttpMethod { + return false } - return nil -} - -func (m *GetSpecType) GetAppFirewall() *views.ObjectRefType { - if x, ok := m.GetWafChoice().(*GetSpecType_AppFirewall); ok { - return x.AppFirewall + if !this.Path.Equal(that1.Path) { + return false } - return nil -} - -func (m *GetSpecType) GetAddLocation() bool { - if m != nil { - return m.AddLocation + if that1.HostRewriteParams == nil { + if this.HostRewriteParams != nil { + return false + } + } else if this.HostRewriteParams == nil { + return false + } else if !this.HostRewriteParams.Equal(that1.HostRewriteParams) { + return false } - return false + return true } - -func (m *GetSpecType) GetNoChallenge() *schema.Empty { - if x, ok := m.GetChallengeType().(*GetSpecType_NoChallenge); ok { - return x.NoChallenge +func (this *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetEnableChallenge() *EnableChallenge { - if x, ok := m.GetChallengeType().(*GetSpecType_EnableChallenge); ok { - return x.EnableChallenge + that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) + if !ok { + that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetChallengeType().(*GetSpecType_JsChallenge); ok { - return x.JsChallenge + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetCaptchaChallenge() *virtual_host.CaptchaChallengeType { - if x, ok := m.GetChallengeType().(*GetSpecType_CaptchaChallenge); ok { - return x.CaptchaChallenge + if !this.AutoHostRewrite.Equal(that1.AutoHostRewrite) { + return false } - return nil + return true } - -func (m *GetSpecType) GetPolicyBasedChallenge() *PolicyBasedChallenge { - if x, ok := m.GetChallengeType().(*GetSpecType_PolicyBasedChallenge); ok { - return x.PolicyBasedChallenge +func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetMoreOption() *AdvancedOptionsType { - if m != nil { - return m.MoreOption + that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool_HostRewrite) + if !ok { + that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool_HostRewrite) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetUserIdClientIp() *schema.Empty { - if x, ok := m.GetUserIdChoice().(*GetSpecType_UserIdClientIp); ok { - return x.UserIdClientIp + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetUserIdentification() *views.ObjectRefType { - if x, ok := m.GetUserIdChoice().(*GetSpecType_UserIdentification); ok { - return x.UserIdentification + if this.HostRewrite != that1.HostRewrite { + return false } - return nil + return true } - -func (m *GetSpecType) GetDisableRateLimit() *schema.Empty { - if x, ok := m.GetRateLimitChoice().(*GetSpecType_DisableRateLimit); ok { - return x.DisableRateLimit +func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetApiRateLimit() *APIRateLimit { - if x, ok := m.GetRateLimitChoice().(*GetSpecType_ApiRateLimit); ok { - return x.ApiRateLimit + that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) + if !ok { + that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetRateLimit() *RateLimitConfigType { - if x, ok := m.GetRateLimitChoice().(*GetSpecType_RateLimit); ok { - return x.RateLimit + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetMaliciousUserMitigation() *views.ObjectRefType { - if m != nil { - return m.MaliciousUserMitigation + if !this.DisableHostRewrite.Equal(that1.DisableHostRewrite) { + return false } - return nil + return true } - -func (m *GetSpecType) GetWafExclusionRules() []*policy.SimpleWafExclusionRule { - if m != nil { - return m.WafExclusionRules +func (this *RouteTypeSimple) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetDataGuardRules() []*policy.SimpleDataGuardRule { - if m != nil { - return m.DataGuardRules + that1, ok := that.(*RouteTypeSimple) + if !ok { + that2, ok := that.(RouteTypeSimple) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetBlockedClients() []*SimpleClientSrcRule { - if m != nil { - return m.BlockedClients + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetTrustedClients() []*SimpleClientSrcRule { - if m != nil { - return m.TrustedClients + if !this.Path.Equal(that1.Path) { + return false } - return nil -} - -func (m *GetSpecType) GetApiProtectionRules() *APIProtectionRules { - if m != nil { - return m.ApiProtectionRules + if this.HttpMethod != that1.HttpMethod { + return false } - return nil -} - -func (m *GetSpecType) GetDdosMitigationRules() []*DDoSMitigationRule { - if m != nil { - return m.DdosMitigationRules + if len(this.OriginPools) != len(that1.OriginPools) { + return false } - return nil -} - -func (m *GetSpecType) GetServicePoliciesFromNamespace() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*GetSpecType_ServicePoliciesFromNamespace); ok { - return x.ServicePoliciesFromNamespace + for i := range this.OriginPools { + if !this.OriginPools[i].Equal(that1.OriginPools[i]) { + return false + } } - return nil -} - -func (m *GetSpecType) GetNoServicePolicies() *schema.Empty { - if x, ok := m.GetServicePolicyChoice().(*GetSpecType_NoServicePolicies); ok { - return x.NoServicePolicies + if that1.HostRewriteParams == nil { + if this.HostRewriteParams != nil { + return false + } + } else if this.HostRewriteParams == nil { + return false + } else if !this.HostRewriteParams.Equal(that1.HostRewriteParams) { + return false } - return nil -} - -func (m *GetSpecType) GetActiveServicePolicies() *ServicePolicyList { - if x, ok := m.GetServicePolicyChoice().(*GetSpecType_ActiveServicePolicies); ok { - return x.ActiveServicePolicies + if len(this.Headers) != len(that1.Headers) { + return false } - return nil -} - -func (m *GetSpecType) GetRoundRobin() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GetSpecType_RoundRobin); ok { - return x.RoundRobin + for i := range this.Headers { + if !this.Headers[i].Equal(that1.Headers[i]) { + return false + } } - return nil -} - -func (m *GetSpecType) GetLeastActive() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GetSpecType_LeastActive); ok { - return x.LeastActive + if !this.IncomingPort.Equal(that1.IncomingPort) { + return false } - return nil -} - -func (m *GetSpecType) GetRandom() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GetSpecType_Random); ok { - return x.Random + if !this.AdvancedOptions.Equal(that1.AdvancedOptions) { + return false } - return nil + return true } - -func (m *GetSpecType) GetSourceIpStickiness() *schema.Empty { - if x, ok := m.GetHashPolicyChoice().(*GetSpecType_SourceIpStickiness); ok { - return x.SourceIpStickiness +func (this *RouteTypeSimple_AutoHostRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetCookieStickiness() *route.CookieForHashing { - if x, ok := m.GetHashPolicyChoice().(*GetSpecType_CookieStickiness); ok { - return x.CookieStickiness + that1, ok := that.(*RouteTypeSimple_AutoHostRewrite) + if !ok { + that2, ok := that.(RouteTypeSimple_AutoHostRewrite) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetRingHash() *HashPolicyListType { - if x, ok := m.GetHashPolicyChoice().(*GetSpecType_RingHash); ok { - return x.RingHash + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetDisableTrustClientIpHeaders() *schema.Empty { - if x, ok := m.GetTrustClientIpHeadersChoice().(*GetSpecType_DisableTrustClientIpHeaders); ok { - return x.DisableTrustClientIpHeaders + if !this.AutoHostRewrite.Equal(that1.AutoHostRewrite) { + return false } - return nil + return true } - -func (m *GetSpecType) GetEnableTrustClientIpHeaders() *virtual_host.ClientIPHeaders { - if x, ok := m.GetTrustClientIpHeadersChoice().(*GetSpecType_EnableTrustClientIpHeaders); ok { - return x.EnableTrustClientIpHeaders +func (this *RouteTypeSimple_HostRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetSingleLbApp() *SingleLoadBalancerAppSetting { - if x, ok := m.GetMlConfigChoice().(*GetSpecType_SingleLbApp); ok { - return x.SingleLbApp + that1, ok := that.(*RouteTypeSimple_HostRewrite) + if !ok { + that2, ok := that.(RouteTypeSimple_HostRewrite) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetMultiLbApp() *schema.Empty { - if x, ok := m.GetMlConfigChoice().(*GetSpecType_MultiLbApp); ok { - return x.MultiLbApp + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetEnableDdosDetection() *EnableDDoSDetectionSetting { - if x, ok := m.GetDdosDetectionChoice().(*GetSpecType_EnableDdosDetection); ok { - return x.EnableDdosDetection + if this.HostRewrite != that1.HostRewrite { + return false } - return nil + return true } - -func (m *GetSpecType) GetDisableDdosDetection() *schema.Empty { - if x, ok := m.GetDdosDetectionChoice().(*GetSpecType_DisableDdosDetection); ok { - return x.DisableDdosDetection +func (this *RouteTypeSimple_DisableHostRewrite) Equal(that interface{}) bool { + if that == nil { + return this == nil } - return nil -} -func (m *GetSpecType) GetEnableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*GetSpecType_EnableMaliciousUserDetection); ok { - return x.EnableMaliciousUserDetection + that1, ok := that.(*RouteTypeSimple_DisableHostRewrite) + if !ok { + that2, ok := that.(RouteTypeSimple_DisableHostRewrite) + if ok { + that1 = &that2 + } else { + return false + } } - return nil -} - -func (m *GetSpecType) GetDisableMaliciousUserDetection() *schema.Empty { - if x, ok := m.GetMaliciousUserDetectionChoice().(*GetSpecType_DisableMaliciousUserDetection); ok { - return x.DisableMaliciousUserDetection + if that1 == nil { + return this == nil + } else if this == nil { + return false } - return nil -} - -func (m *GetSpecType) GetEnableApiDiscovery() *ApiDiscoverySetting { - if x, ok := m.GetApiDiscoveryChoice().(*GetSpecType_EnableApiDiscovery); ok { - return x.EnableApiDiscovery + if !this.DisableHostRewrite.Equal(that1.DisableHostRewrite) { + return false } - return nil + return true } - -func (m *GetSpecType) GetDisableApiDiscovery() *schema.Empty { - if x, ok := m.GetApiDiscoveryChoice().(*GetSpecType_DisableApiDiscovery); ok { - return x.DisableApiDiscovery - } - return nil -} - -func (m *GetSpecType) GetDisableBotDefense() *schema.Empty { - if x, ok := m.GetBotDefenseChoice().(*GetSpecType_DisableBotDefense); ok { - return x.DisableBotDefense - } - return nil -} - -func (m *GetSpecType) GetBotDefense() *ShapeBotDefenseType { - if x, ok := m.GetBotDefenseChoice().(*GetSpecType_BotDefense); ok { - return x.BotDefense - } - return nil -} - -func (m *GetSpecType) GetBotDefenseAdvanced() *BotDefenseAdvancedType { - if x, ok := m.GetBotDefenseChoice().(*GetSpecType_BotDefenseAdvanced); ok { - return x.BotDefenseAdvanced - } - return nil -} - -func (m *GetSpecType) GetDisableApiDefinition() *schema.Empty { - if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_DisableApiDefinition); ok { - return x.DisableApiDefinition - } - return nil -} - -func (m *GetSpecType) GetApiDefinition() *views.ObjectRefType { - if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinition); ok { - return x.ApiDefinition - } - return nil -} - -func (m *GetSpecType) GetApiSpecification() *APISpecificationSettings { - if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_ApiSpecification); ok { - return x.ApiSpecification - } - return nil -} - -func (m *GetSpecType) GetApiDefinitions() *ApiDefinitionList { - if x, ok := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinitions); ok { - return x.ApiDefinitions - } - return nil -} - -func (m *GetSpecType) GetDisableIpReputation() *schema.Empty { - if x, ok := m.GetIpReputationChoice().(*GetSpecType_DisableIpReputation); ok { - return x.DisableIpReputation - } - return nil -} - -func (m *GetSpecType) GetEnableIpReputation() *IPThreatCategoryListType { - if x, ok := m.GetIpReputationChoice().(*GetSpecType_EnableIpReputation); ok { - return x.EnableIpReputation - } - return nil -} - -func (m *GetSpecType) GetDisableClientSideDefense() *schema.Empty { - if x, ok := m.GetClientSideDefenseChoice().(*GetSpecType_DisableClientSideDefense); ok { - return x.DisableClientSideDefense - } - return nil -} - -func (m *GetSpecType) GetClientSideDefense() *ClientSideDefenseType { - if x, ok := m.GetClientSideDefenseChoice().(*GetSpecType_ClientSideDefense); ok { - return x.ClientSideDefense - } - return nil -} - -func (m *GetSpecType) GetCsrfPolicy() *schema.CsrfPolicy { - if m != nil { - return m.CsrfPolicy - } - return nil -} - -func (m *GetSpecType) GetGraphqlRules() []*policy.GraphQLRule { - if m != nil { - return m.GraphqlRules - } - return nil -} - -func (m *GetSpecType) GetProtectedCookies() []*schema.CookieManipulationOptionType { - if m != nil { - return m.ProtectedCookies - } - return nil -} - -func (m *GetSpecType) GetHostName() string { - if m != nil { - return m.HostName - } - return "" -} - -func (m *GetSpecType) GetDnsInfo() []*virtual_host_dns_info.DnsInfo { - if m != nil { - return m.DnsInfo - } - return nil -} - -func (m *GetSpecType) GetState() virtual_host.VirtualHostState { - if m != nil { - return m.State - } - return virtual_host.VIRTUAL_HOST_READY -} - -func (m *GetSpecType) GetAutoCertInfo() *virtual_host.AutoCertInfoType { - if m != nil { - return m.AutoCertInfo - } - return nil -} - -func (m *GetSpecType) GetInternetVipInfo() []*views.InternetVIPInfo { - if m != nil { - return m.InternetVipInfo - } - return nil -} - -func (m *GetSpecType) GetSystemDefaultTimeouts() *schema.Empty { - if x, ok := m.GetSlowDdosMitigationChoice().(*GetSpecType_SystemDefaultTimeouts); ok { - return x.SystemDefaultTimeouts - } - return nil -} - -func (m *GetSpecType) GetSlowDdosMitigation() *virtual_host.SlowDDoSMitigation { - if x, ok := m.GetSlowDdosMitigationChoice().(*GetSpecType_SlowDdosMitigation); ok { - return x.SlowDdosMitigation - } - return nil -} - -func (m *GetSpecType) GetJwtValidation() *JWTValidation { - if m != nil { - return m.JwtValidation - } - return nil -} - -func (m *GetSpecType) GetDisableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*GetSpecType_DisableThreatIntelligence); ok { - return x.DisableThreatIntelligence - } - return nil -} - -func (m *GetSpecType) GetEnableThreatIntelligence() *schema.Empty { - if x, ok := m.GetThreatIntelligenceChoice().(*GetSpecType_EnableThreatIntelligence); ok { - return x.EnableThreatIntelligence - } - return nil -} - -func (m *GetSpecType) GetL7DdosActionDefault() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionDefault); ok { - return x.L7DdosActionDefault - } - return nil -} - -func (m *GetSpecType) GetL7DdosActionBlock() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionBlock); ok { - return x.L7DdosActionBlock - } - return nil -} - -func (m *GetSpecType) GetL7DdosActionJsChallenge() *virtual_host.JavascriptChallengeType { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionJsChallenge); ok { - return x.L7DdosActionJsChallenge - } - return nil -} - -func (m *GetSpecType) GetL7DdosActionNone() *schema.Empty { - if x, ok := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionNone); ok { - return x.L7DdosActionNone - } - return nil -} - -func (m *GetSpecType) GetCertState() virtual_host.CertificationState { - if m != nil { - return m.CertState - } - return virtual_host.AutoCertDisabled -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*GetSpecType) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*GetSpecType_Http)(nil), - (*GetSpecType_HttpsAutoCert)(nil), - (*GetSpecType_Https)(nil), - (*GetSpecType_DoNotAdvertise)(nil), - (*GetSpecType_AdvertiseOnPublicDefaultVip)(nil), - (*GetSpecType_AdvertiseOnPublic)(nil), - (*GetSpecType_AdvertiseCustom)(nil), - (*GetSpecType_DefaultPool)(nil), - (*GetSpecType_DefaultPoolList)(nil), - (*GetSpecType_DisableWaf)(nil), - (*GetSpecType_AppFirewall)(nil), - (*GetSpecType_NoChallenge)(nil), - (*GetSpecType_EnableChallenge)(nil), - (*GetSpecType_JsChallenge)(nil), - (*GetSpecType_CaptchaChallenge)(nil), - (*GetSpecType_PolicyBasedChallenge)(nil), - (*GetSpecType_UserIdClientIp)(nil), - (*GetSpecType_UserIdentification)(nil), - (*GetSpecType_DisableRateLimit)(nil), - (*GetSpecType_ApiRateLimit)(nil), - (*GetSpecType_RateLimit)(nil), - (*GetSpecType_ServicePoliciesFromNamespace)(nil), - (*GetSpecType_NoServicePolicies)(nil), - (*GetSpecType_ActiveServicePolicies)(nil), - (*GetSpecType_RoundRobin)(nil), - (*GetSpecType_LeastActive)(nil), - (*GetSpecType_Random)(nil), - (*GetSpecType_SourceIpStickiness)(nil), - (*GetSpecType_CookieStickiness)(nil), - (*GetSpecType_RingHash)(nil), - (*GetSpecType_DisableTrustClientIpHeaders)(nil), - (*GetSpecType_EnableTrustClientIpHeaders)(nil), - (*GetSpecType_SingleLbApp)(nil), - (*GetSpecType_MultiLbApp)(nil), - (*GetSpecType_EnableDdosDetection)(nil), - (*GetSpecType_DisableDdosDetection)(nil), - (*GetSpecType_EnableMaliciousUserDetection)(nil), - (*GetSpecType_DisableMaliciousUserDetection)(nil), - (*GetSpecType_EnableApiDiscovery)(nil), - (*GetSpecType_DisableApiDiscovery)(nil), - (*GetSpecType_DisableBotDefense)(nil), - (*GetSpecType_BotDefense)(nil), - (*GetSpecType_BotDefenseAdvanced)(nil), - (*GetSpecType_DisableApiDefinition)(nil), - (*GetSpecType_ApiDefinition)(nil), - (*GetSpecType_ApiSpecification)(nil), - (*GetSpecType_ApiDefinitions)(nil), - (*GetSpecType_DisableIpReputation)(nil), - (*GetSpecType_EnableIpReputation)(nil), - (*GetSpecType_DisableClientSideDefense)(nil), - (*GetSpecType_ClientSideDefense)(nil), - (*GetSpecType_SystemDefaultTimeouts)(nil), - (*GetSpecType_SlowDdosMitigation)(nil), - (*GetSpecType_DisableThreatIntelligence)(nil), - (*GetSpecType_EnableThreatIntelligence)(nil), - (*GetSpecType_L7DdosActionDefault)(nil), - (*GetSpecType_L7DdosActionBlock)(nil), - (*GetSpecType_L7DdosActionJsChallenge)(nil), - (*GetSpecType_L7DdosActionNone)(nil), - } -} - -func init() { - proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.ClientSrcRuleAction", ClientSrcRuleAction_name, ClientSrcRuleAction_value) - golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.ClientSrcRuleAction", ClientSrcRuleAction_name, ClientSrcRuleAction_value) - proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.MobileIdentifier", MobileIdentifier_name, MobileIdentifier_value) - golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.MobileIdentifier", MobileIdentifier_name, MobileIdentifier_value) - proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.URLScheme", URLScheme_name, URLScheme_value) - golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.URLScheme", URLScheme_name, URLScheme_value) - proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.ShapeBotDefenseRegion", ShapeBotDefenseRegion_name, ShapeBotDefenseRegion_value) - golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.ShapeBotDefenseRegion", ShapeBotDefenseRegion_name, ShapeBotDefenseRegion_value) - proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.JavaScriptLocation", JavaScriptLocation_name, JavaScriptLocation_value) - golang_proto.RegisterEnum("ves.io.schema.views.http_loadbalancer.JavaScriptLocation", JavaScriptLocation_name, JavaScriptLocation_value) - proto.RegisterType((*InlineRateLimiter)(nil), "ves.io.schema.views.http_loadbalancer.InlineRateLimiter") - golang_proto.RegisterType((*InlineRateLimiter)(nil), "ves.io.schema.views.http_loadbalancer.InlineRateLimiter") - proto.RegisterType((*ServerUrlRule)(nil), "ves.io.schema.views.http_loadbalancer.ServerUrlRule") - golang_proto.RegisterType((*ServerUrlRule)(nil), "ves.io.schema.views.http_loadbalancer.ServerUrlRule") - proto.RegisterType((*ApiEndpointRule)(nil), "ves.io.schema.views.http_loadbalancer.ApiEndpointRule") - golang_proto.RegisterType((*ApiEndpointRule)(nil), "ves.io.schema.views.http_loadbalancer.ApiEndpointRule") - proto.RegisterType((*BypassRateLimitingRule)(nil), "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRule") - golang_proto.RegisterType((*BypassRateLimitingRule)(nil), "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRule") - proto.RegisterType((*BypassRateLimitingRules)(nil), "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRules") - golang_proto.RegisterType((*BypassRateLimitingRules)(nil), "ves.io.schema.views.http_loadbalancer.BypassRateLimitingRules") - proto.RegisterType((*APIRateLimit)(nil), "ves.io.schema.views.http_loadbalancer.APIRateLimit") - golang_proto.RegisterType((*APIRateLimit)(nil), "ves.io.schema.views.http_loadbalancer.APIRateLimit") - proto.RegisterType((*ProxyTypeHttps)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttps") - golang_proto.RegisterType((*ProxyTypeHttps)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttps") - proto.RegisterType((*ProxyTypeHttp)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp") - golang_proto.RegisterType((*ProxyTypeHttp)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttp") - proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts") - golang_proto.RegisterType((*ProxyTypeHttpsAutoCerts)(nil), "ves.io.schema.views.http_loadbalancer.ProxyTypeHttpsAutoCerts") - proto.RegisterType((*HashPolicyListType)(nil), "ves.io.schema.views.http_loadbalancer.HashPolicyListType") - golang_proto.RegisterType((*HashPolicyListType)(nil), "ves.io.schema.views.http_loadbalancer.HashPolicyListType") - proto.RegisterType((*MirrorPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.MirrorPolicyType") - golang_proto.RegisterType((*MirrorPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.MirrorPolicyType") - proto.RegisterType((*RouteSimpleAdvancedOptions)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions") - golang_proto.RegisterType((*RouteSimpleAdvancedOptions)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions") - proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions.EndpointSubsetsEntry") - golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.views.http_loadbalancer.RouteSimpleAdvancedOptions.EndpointSubsetsEntry") - proto.RegisterType((*RouteTypeSimpleWithDefaultOriginPool)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool") - golang_proto.RegisterType((*RouteTypeSimpleWithDefaultOriginPool)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool") - proto.RegisterType((*RouteTypeSimple)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimple") - golang_proto.RegisterType((*RouteTypeSimple)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeSimple") - proto.RegisterType((*RouteTypeRedirect)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeRedirect") - golang_proto.RegisterType((*RouteTypeRedirect)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeRedirect") - proto.RegisterType((*RouteTypeDirectResponse)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeDirectResponse") - golang_proto.RegisterType((*RouteTypeDirectResponse)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeDirectResponse") - proto.RegisterType((*RouteTypeCustomRoute)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute") - golang_proto.RegisterType((*RouteTypeCustomRoute)(nil), "ves.io.schema.views.http_loadbalancer.RouteTypeCustomRoute") - proto.RegisterType((*RouteType)(nil), "ves.io.schema.views.http_loadbalancer.RouteType") - golang_proto.RegisterType((*RouteType)(nil), "ves.io.schema.views.http_loadbalancer.RouteType") - proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType") - golang_proto.RegisterType((*AdvancedOptionsType)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType") - proto.RegisterMapType((map[uint32]string)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType.CustomErrorsEntry") - golang_proto.RegisterMapType((map[uint32]string)(nil), "ves.io.schema.views.http_loadbalancer.AdvancedOptionsType.CustomErrorsEntry") - proto.RegisterType((*EnableChallenge)(nil), "ves.io.schema.views.http_loadbalancer.EnableChallenge") - golang_proto.RegisterType((*EnableChallenge)(nil), "ves.io.schema.views.http_loadbalancer.EnableChallenge") - proto.RegisterType((*PolicyBasedChallenge)(nil), "ves.io.schema.views.http_loadbalancer.PolicyBasedChallenge") - golang_proto.RegisterType((*PolicyBasedChallenge)(nil), "ves.io.schema.views.http_loadbalancer.PolicyBasedChallenge") - proto.RegisterType((*ChallengeRule)(nil), "ves.io.schema.views.http_loadbalancer.ChallengeRule") - golang_proto.RegisterType((*ChallengeRule)(nil), "ves.io.schema.views.http_loadbalancer.ChallengeRule") - proto.RegisterType((*ChallengeRuleList)(nil), "ves.io.schema.views.http_loadbalancer.ChallengeRuleList") - golang_proto.RegisterType((*ChallengeRuleList)(nil), "ves.io.schema.views.http_loadbalancer.ChallengeRuleList") - proto.RegisterType((*HttpHeaderMatcherList)(nil), "ves.io.schema.views.http_loadbalancer.HttpHeaderMatcherList") - golang_proto.RegisterType((*HttpHeaderMatcherList)(nil), "ves.io.schema.views.http_loadbalancer.HttpHeaderMatcherList") - proto.RegisterType((*SimpleClientSrcRule)(nil), "ves.io.schema.views.http_loadbalancer.SimpleClientSrcRule") - golang_proto.RegisterType((*SimpleClientSrcRule)(nil), "ves.io.schema.views.http_loadbalancer.SimpleClientSrcRule") - proto.RegisterType((*DDoSClientSource)(nil), "ves.io.schema.views.http_loadbalancer.DDoSClientSource") - golang_proto.RegisterType((*DDoSClientSource)(nil), "ves.io.schema.views.http_loadbalancer.DDoSClientSource") - proto.RegisterType((*APIProtectionRuleAction)(nil), "ves.io.schema.views.http_loadbalancer.APIProtectionRuleAction") - golang_proto.RegisterType((*APIProtectionRuleAction)(nil), "ves.io.schema.views.http_loadbalancer.APIProtectionRuleAction") - proto.RegisterType((*APIEndpointProtectionRule)(nil), "ves.io.schema.views.http_loadbalancer.APIEndpointProtectionRule") - golang_proto.RegisterType((*APIEndpointProtectionRule)(nil), "ves.io.schema.views.http_loadbalancer.APIEndpointProtectionRule") - proto.RegisterType((*APIGroupProtectionRule)(nil), "ves.io.schema.views.http_loadbalancer.APIGroupProtectionRule") - golang_proto.RegisterType((*APIGroupProtectionRule)(nil), "ves.io.schema.views.http_loadbalancer.APIGroupProtectionRule") - proto.RegisterType((*APIProtectionRules)(nil), "ves.io.schema.views.http_loadbalancer.APIProtectionRules") - golang_proto.RegisterType((*APIProtectionRules)(nil), "ves.io.schema.views.http_loadbalancer.APIProtectionRules") - proto.RegisterType((*DDoSMitigationRule)(nil), "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule") - golang_proto.RegisterType((*DDoSMitigationRule)(nil), "ves.io.schema.views.http_loadbalancer.DDoSMitigationRule") - proto.RegisterType((*CustomIpAllowedList)(nil), "ves.io.schema.views.http_loadbalancer.CustomIpAllowedList") - golang_proto.RegisterType((*CustomIpAllowedList)(nil), "ves.io.schema.views.http_loadbalancer.CustomIpAllowedList") - proto.RegisterType((*RateLimitConfigType)(nil), "ves.io.schema.views.http_loadbalancer.RateLimitConfigType") - golang_proto.RegisterType((*RateLimitConfigType)(nil), "ves.io.schema.views.http_loadbalancer.RateLimitConfigType") - proto.RegisterType((*ServicePolicyList)(nil), "ves.io.schema.views.http_loadbalancer.ServicePolicyList") - golang_proto.RegisterType((*ServicePolicyList)(nil), "ves.io.schema.views.http_loadbalancer.ServicePolicyList") - proto.RegisterType((*ApiDefinitionList)(nil), "ves.io.schema.views.http_loadbalancer.ApiDefinitionList") - golang_proto.RegisterType((*ApiDefinitionList)(nil), "ves.io.schema.views.http_loadbalancer.ApiDefinitionList") - proto.RegisterType((*ApiDiscoverySetting)(nil), "ves.io.schema.views.http_loadbalancer.ApiDiscoverySetting") - golang_proto.RegisterType((*ApiDiscoverySetting)(nil), "ves.io.schema.views.http_loadbalancer.ApiDiscoverySetting") - proto.RegisterType((*EnableDDoSDetectionSetting)(nil), "ves.io.schema.views.http_loadbalancer.EnableDDoSDetectionSetting") - golang_proto.RegisterType((*EnableDDoSDetectionSetting)(nil), "ves.io.schema.views.http_loadbalancer.EnableDDoSDetectionSetting") - proto.RegisterType((*AutoMitigationAction)(nil), "ves.io.schema.views.http_loadbalancer.AutoMitigationAction") - golang_proto.RegisterType((*AutoMitigationAction)(nil), "ves.io.schema.views.http_loadbalancer.AutoMitigationAction") - proto.RegisterType((*SingleLoadBalancerAppSetting)(nil), "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting") - golang_proto.RegisterType((*SingleLoadBalancerAppSetting)(nil), "ves.io.schema.views.http_loadbalancer.SingleLoadBalancerAppSetting") - proto.RegisterType((*APISpecificationSettings)(nil), "ves.io.schema.views.http_loadbalancer.APISpecificationSettings") - golang_proto.RegisterType((*APISpecificationSettings)(nil), "ves.io.schema.views.http_loadbalancer.APISpecificationSettings") - proto.RegisterType((*OpenApiValidationAllSpecEndpointsSettings)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings") - golang_proto.RegisterType((*OpenApiValidationAllSpecEndpointsSettings)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings") - proto.RegisterType((*OpenApiValidationCommonSettings)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationCommonSettings") - golang_proto.RegisterType((*OpenApiValidationCommonSettings)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationCommonSettings") - proto.RegisterType((*ValidationPropertySetting)(nil), "ves.io.schema.views.http_loadbalancer.ValidationPropertySetting") - golang_proto.RegisterType((*ValidationPropertySetting)(nil), "ves.io.schema.views.http_loadbalancer.ValidationPropertySetting") - proto.RegisterType((*ValidationSettingForQueryParameters)(nil), "ves.io.schema.views.http_loadbalancer.ValidationSettingForQueryParameters") - golang_proto.RegisterType((*ValidationSettingForQueryParameters)(nil), "ves.io.schema.views.http_loadbalancer.ValidationSettingForQueryParameters") - proto.RegisterType((*ValidationSettingForHeaders)(nil), "ves.io.schema.views.http_loadbalancer.ValidationSettingForHeaders") - golang_proto.RegisterType((*ValidationSettingForHeaders)(nil), "ves.io.schema.views.http_loadbalancer.ValidationSettingForHeaders") - proto.RegisterType((*OpenApiValidationMode)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationMode") - golang_proto.RegisterType((*OpenApiValidationMode)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationMode") - proto.RegisterType((*OpenApiFallThroughMode)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiFallThroughMode") - golang_proto.RegisterType((*OpenApiFallThroughMode)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiFallThroughMode") - proto.RegisterType((*CustomFallThroughMode)(nil), "ves.io.schema.views.http_loadbalancer.CustomFallThroughMode") - golang_proto.RegisterType((*CustomFallThroughMode)(nil), "ves.io.schema.views.http_loadbalancer.CustomFallThroughMode") - proto.RegisterType((*FallThroughRule)(nil), "ves.io.schema.views.http_loadbalancer.FallThroughRule") - golang_proto.RegisterType((*FallThroughRule)(nil), "ves.io.schema.views.http_loadbalancer.FallThroughRule") - proto.RegisterType((*OpenApiValidationModeActive)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActive") - golang_proto.RegisterType((*OpenApiValidationModeActive)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActive") - proto.RegisterType((*OpenApiValidationModeActiveResponse)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActiveResponse") - golang_proto.RegisterType((*OpenApiValidationModeActiveResponse)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationModeActiveResponse") - proto.RegisterType((*ValidateApiBySpecRule)(nil), "ves.io.schema.views.http_loadbalancer.ValidateApiBySpecRule") - golang_proto.RegisterType((*ValidateApiBySpecRule)(nil), "ves.io.schema.views.http_loadbalancer.ValidateApiBySpecRule") - proto.RegisterType((*OpenApiValidationRule)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationRule") - golang_proto.RegisterType((*OpenApiValidationRule)(nil), "ves.io.schema.views.http_loadbalancer.OpenApiValidationRule") - proto.RegisterType((*ApiEndpointDetails)(nil), "ves.io.schema.views.http_loadbalancer.ApiEndpointDetails") - golang_proto.RegisterType((*ApiEndpointDetails)(nil), "ves.io.schema.views.http_loadbalancer.ApiEndpointDetails") - proto.RegisterType((*OriginServerSubsetRuleListType)(nil), "ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType") - golang_proto.RegisterType((*OriginServerSubsetRuleListType)(nil), "ves.io.schema.views.http_loadbalancer.OriginServerSubsetRuleListType") - proto.RegisterType((*ClientSideDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType") - golang_proto.RegisterType((*ClientSideDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefenseType") - proto.RegisterType((*ClientSideDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType") - golang_proto.RegisterType((*ClientSideDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ClientSideDefensePolicyType") - proto.RegisterType((*CSDJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType") - golang_proto.RegisterType((*CSDJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType") - proto.RegisterType((*CSDJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType") - golang_proto.RegisterType((*CSDJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertType") - proto.RegisterType((*CSDJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule") - golang_proto.RegisterType((*CSDJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.CSDJavaScriptInsertionRule") - proto.RegisterType((*BotDefenseAdvancedPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedPolicyType") - golang_proto.RegisterType((*BotDefenseAdvancedPolicyType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedPolicyType") - proto.RegisterType((*BotAdvancedMobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.BotAdvancedMobileSDKConfigType") - golang_proto.RegisterType((*BotAdvancedMobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.BotAdvancedMobileSDKConfigType") - proto.RegisterType((*ProtectedAppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.ProtectedAppEndpointType") - golang_proto.RegisterType((*ProtectedAppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.ProtectedAppEndpointType") - proto.RegisterType((*RequestBody)(nil), "ves.io.schema.views.http_loadbalancer.RequestBody") - golang_proto.RegisterType((*RequestBody)(nil), "ves.io.schema.views.http_loadbalancer.RequestBody") - proto.RegisterType((*Query)(nil), "ves.io.schema.views.http_loadbalancer.Query") - golang_proto.RegisterType((*Query)(nil), "ves.io.schema.views.http_loadbalancer.Query") - proto.RegisterType((*ShapeBotDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefenseType") - golang_proto.RegisterType((*ShapeBotDefenseType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefenseType") - proto.RegisterType((*BotDefenseAdvancedType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedType") - golang_proto.RegisterType((*BotDefenseAdvancedType)(nil), "ves.io.schema.views.http_loadbalancer.BotDefenseAdvancedType") - proto.RegisterType((*ShapeBotDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefensePolicyType") - golang_proto.RegisterType((*ShapeBotDefensePolicyType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeBotDefensePolicyType") - proto.RegisterType((*MobileTrafficIdentifierType)(nil), "ves.io.schema.views.http_loadbalancer.MobileTrafficIdentifierType") - golang_proto.RegisterType((*MobileTrafficIdentifierType)(nil), "ves.io.schema.views.http_loadbalancer.MobileTrafficIdentifierType") - proto.RegisterType((*MobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.MobileSDKConfigType") - golang_proto.RegisterType((*MobileSDKConfigType)(nil), "ves.io.schema.views.http_loadbalancer.MobileSDKConfigType") - proto.RegisterType((*AppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.AppEndpointType") - golang_proto.RegisterType((*AppEndpointType)(nil), "ves.io.schema.views.http_loadbalancer.AppEndpointType") - proto.RegisterType((*WebMobileTrafficType)(nil), "ves.io.schema.views.http_loadbalancer.WebMobileTrafficType") - golang_proto.RegisterType((*WebMobileTrafficType)(nil), "ves.io.schema.views.http_loadbalancer.WebMobileTrafficType") - proto.RegisterType((*ShapeJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertType") - golang_proto.RegisterType((*ShapeJavaScriptInsertType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertType") - proto.RegisterType((*ShapeJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType") - golang_proto.RegisterType((*ShapeJavaScriptInsertAllWithExceptionsType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType") - proto.RegisterType((*ShapeJavaScriptInsertAllType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllType") - golang_proto.RegisterType((*ShapeJavaScriptInsertAllType)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertAllType") - proto.RegisterType((*ShapeJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertionRule") - golang_proto.RegisterType((*ShapeJavaScriptInsertionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptInsertionRule") - proto.RegisterType((*ShapeJavaScriptExclusionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule") - golang_proto.RegisterType((*ShapeJavaScriptExclusionRule)(nil), "ves.io.schema.views.http_loadbalancer.ShapeJavaScriptExclusionRule") - proto.RegisterType((*IPThreatCategoryListType)(nil), "ves.io.schema.views.http_loadbalancer.IPThreatCategoryListType") - golang_proto.RegisterType((*IPThreatCategoryListType)(nil), "ves.io.schema.views.http_loadbalancer.IPThreatCategoryListType") - proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GlobalSpecType") - golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GlobalSpecType") - proto.RegisterType((*JWTValidation)(nil), "ves.io.schema.views.http_loadbalancer.JWTValidation") - golang_proto.RegisterType((*JWTValidation)(nil), "ves.io.schema.views.http_loadbalancer.JWTValidation") - proto.RegisterType((*MandatoryClaims)(nil), "ves.io.schema.views.http_loadbalancer.MandatoryClaims") - golang_proto.RegisterType((*MandatoryClaims)(nil), "ves.io.schema.views.http_loadbalancer.MandatoryClaims") - proto.RegisterType((*JWKS)(nil), "ves.io.schema.views.http_loadbalancer.JWKS") - golang_proto.RegisterType((*JWKS)(nil), "ves.io.schema.views.http_loadbalancer.JWKS") - proto.RegisterType((*Target)(nil), "ves.io.schema.views.http_loadbalancer.Target") - golang_proto.RegisterType((*Target)(nil), "ves.io.schema.views.http_loadbalancer.Target") - proto.RegisterType((*TokenLocation)(nil), "ves.io.schema.views.http_loadbalancer.TokenLocation") - golang_proto.RegisterType((*TokenLocation)(nil), "ves.io.schema.views.http_loadbalancer.TokenLocation") - proto.RegisterType((*ReservedClaims)(nil), "ves.io.schema.views.http_loadbalancer.ReservedClaims") - golang_proto.RegisterType((*ReservedClaims)(nil), "ves.io.schema.views.http_loadbalancer.ReservedClaims") - proto.RegisterType((*APIGroups)(nil), "ves.io.schema.views.http_loadbalancer.APIGroups") - golang_proto.RegisterType((*APIGroups)(nil), "ves.io.schema.views.http_loadbalancer.APIGroups") - proto.RegisterType((*BasePathsType)(nil), "ves.io.schema.views.http_loadbalancer.BasePathsType") - golang_proto.RegisterType((*BasePathsType)(nil), "ves.io.schema.views.http_loadbalancer.BasePathsType") - proto.RegisterType((*Audiences)(nil), "ves.io.schema.views.http_loadbalancer.Audiences") - golang_proto.RegisterType((*Audiences)(nil), "ves.io.schema.views.http_loadbalancer.Audiences") - proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.http_loadbalancer.CreateSpecType") - golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.views.http_loadbalancer.CreateSpecType") - proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.http_loadbalancer.ReplaceSpecType") - golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.views.http_loadbalancer.ReplaceSpecType") - proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GetSpecType") - golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.views.http_loadbalancer.GetSpecType") -} - -func init() { - proto.RegisterFile("ves.io/schema/views/http_loadbalancer/types.proto", fileDescriptor_6478b2bb990a4a3e) -} -func init() { - golang_proto.RegisterFile("ves.io/schema/views/http_loadbalancer/types.proto", fileDescriptor_6478b2bb990a4a3e) -} - -var fileDescriptor_6478b2bb990a4a3e = []byte{ - // 18262 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x70, 0x1b, 0x49, - 0x76, 0x27, 0xc8, 0x04, 0x40, 0x00, 0x7c, 0x20, 0x81, 0x42, 0xf2, 0x0b, 0xa2, 0x24, 0x0a, 0x0d, - 0x49, 0x2d, 0x35, 0xbb, 0x44, 0x11, 0xe0, 0x97, 0xa8, 0xe9, 0xd6, 0x34, 0x8b, 0xa4, 0x1a, 0x64, - 0xeb, 0x83, 0x5d, 0xa4, 0xa4, 0xee, 0xe9, 0x9e, 0xc1, 0x14, 0x81, 0x22, 0x59, 0x2d, 0x10, 0x85, - 0xa9, 0x2a, 0x4a, 0xe2, 0x78, 0xe5, 0xeb, 0xd3, 0xae, 0xd7, 0xe3, 0xb6, 0xbd, 0x33, 0x6e, 0x5f, - 0x9c, 0xed, 0xb1, 0xc3, 0xbb, 0xe1, 0xbd, 0x08, 0x3b, 0xfa, 0x36, 0xe2, 0x6e, 0xf7, 0xbc, 0xbb, - 0x17, 0x0d, 0xf9, 0x4e, 0xd7, 0x71, 0x7b, 0xe1, 0x68, 0x6f, 0x84, 0x19, 0x17, 0xfb, 0xc7, 0x5c, - 0xef, 0x9e, 0xcf, 0x96, 0x6f, 0x63, 0x67, 0xbd, 0xbe, 0x88, 0xb9, 0xde, 0x8b, 0x0b, 0x47, 0x5f, - 0xc4, 0xfa, 0xa2, 0x32, 0xb3, 0xbe, 0x80, 0x02, 0x08, 0x52, 0xd4, 0xb4, 0xc7, 0xe6, 0x5f, 0x24, - 0xaa, 0xf2, 0xbd, 0xcc, 0xca, 0x8f, 0x97, 0x2f, 0xdf, 0xfb, 0xe5, 0x7b, 0x90, 0xbd, 0x27, 0xeb, - 0xa3, 0x8a, 0x7a, 0x51, 0x2f, 0x6e, 0xca, 0x5b, 0xd2, 0xc5, 0x7b, 0x8a, 0x7c, 0x5f, 0xbf, 0xb8, - 0x69, 0x18, 0xd5, 0x42, 0x59, 0x95, 0x4a, 0x6b, 0x52, 0x59, 0xaa, 0x14, 0x65, 0xed, 0xa2, 0xb1, - 0x53, 0x95, 0xf5, 0xd1, 0xaa, 0xa6, 0x1a, 0x2a, 0x3e, 0x4b, 0x49, 0x46, 0x29, 0xc9, 0x28, 0x21, - 0x19, 0x6d, 0x20, 0x19, 0xba, 0xb0, 0xa1, 0x18, 0x9b, 0xdb, 0x6b, 0xa3, 0x45, 0x75, 0xeb, 0xe2, - 0x86, 0xba, 0xa1, 0x5e, 0x24, 0xd4, 0x6b, 0xdb, 0xeb, 0xe4, 0x17, 0xf9, 0x41, 0xfe, 0xa3, 0x5c, - 0x87, 0x4e, 0x6d, 0xa8, 0xea, 0x46, 0x59, 0x76, 0x4a, 0x19, 0xca, 0x96, 0xac, 0x1b, 0xd2, 0x56, - 0x95, 0x15, 0xc8, 0x78, 0x5b, 0x2a, 0x55, 0xab, 0x05, 0xb3, 0x55, 0xee, 0xa6, 0x0d, 0x1d, 0xf7, - 0x96, 0x51, 0xab, 0x86, 0xa2, 0x56, 0xac, 0x97, 0x69, 0xef, 0xcb, 0xaa, 0x5a, 0x56, 0x8a, 0x3b, - 0x1e, 0xf2, 0x17, 0xbd, 0x25, 0x34, 0xc9, 0x90, 0x0b, 0x65, 0x65, 0x4b, 0x31, 0xbc, 0x3d, 0x30, - 0x74, 0xaa, 0xae, 0x9c, 0xba, 0x6d, 0x78, 0xdb, 0x71, 0xc1, 0x5b, 0x40, 0x97, 0xb5, 0x7b, 0x4a, - 0x51, 0x2e, 0xd0, 0x2a, 0x0b, 0xda, 0x76, 0xd9, 0x5b, 0xfc, 0x98, 0xb7, 0xb8, 0xfb, 0xd5, 0x89, - 0xba, 0xf1, 0x91, 0xca, 0x4a, 0x49, 0x32, 0x64, 0xff, 0x4f, 0x32, 0x87, 0xa2, 0xe0, 0xfd, 0xe8, - 0x97, 0xfd, 0xc6, 0x57, 0xd5, 0x94, 0x0d, 0xa5, 0x52, 0xa8, 0xaa, 0x6a, 0xd9, 0x53, 0xd9, 0xb8, - 0x5f, 0x61, 0x77, 0x2f, 0x14, 0x7c, 0x3a, 0xed, 0x94, 0x1f, 0x51, 0x8b, 0x5e, 0xbd, 0xa7, 0x68, - 0xc6, 0xb6, 0x54, 0x2e, 0x6c, 0xaa, 0xba, 0xe1, 0x29, 0x37, 0xd6, 0xbc, 0x5c, 0xa1, 0x54, 0xd1, - 0x0b, 0x4a, 0x65, 0x5d, 0xbd, 0xa8, 0xae, 0xbd, 0x27, 0x17, 0x0d, 0x4a, 0x91, 0xf9, 0x93, 0x00, - 0x24, 0x17, 0x2b, 0x65, 0xa5, 0x22, 0x8b, 0x92, 0x21, 0x5f, 0xa3, 0x6d, 0xc4, 0x17, 0xa0, 0xcb, - 0xd8, 0xd4, 0x64, 0x7d, 0x53, 0x2d, 0x97, 0x52, 0x28, 0x8d, 0xce, 0xf7, 0x08, 0x89, 0xcf, 0x6a, - 0x08, 0x65, 0x3f, 0xfe, 0xf7, 0x4f, 0x82, 0x9d, 0x23, 0xc1, 0xd4, 0xfb, 0xaf, 0x89, 0x4e, 0x09, - 0x7c, 0x13, 0x42, 0xdb, 0x15, 0xc5, 0x48, 0x05, 0xd2, 0xe8, 0x7c, 0x3c, 0x77, 0x71, 0xd4, 0x3b, - 0xbb, 0xdd, 0x5f, 0x3f, 0x6a, 0xd7, 0xb2, 0x2c, 0x6b, 0x8a, 0x5a, 0xba, 0x55, 0x51, 0x0c, 0x01, - 0x3e, 0xab, 0xa1, 0xf0, 0xca, 0xc2, 0xdc, 0xcd, 0x1b, 0xf3, 0x22, 0x61, 0x84, 0xe7, 0xa1, 0x77, - 0x5b, 0x97, 0x0b, 0x74, 0x45, 0xac, 0x15, 0xb6, 0x75, 0x59, 0x2b, 0x28, 0xa5, 0x54, 0x28, 0x8d, - 0xce, 0xc7, 0x72, 0x7d, 0x75, 0xfc, 0x17, 0xb6, 0xaa, 0xc6, 0x4e, 0xbe, 0x43, 0x4c, 0x6c, 0xeb, - 0x72, 0xde, 0x30, 0xaa, 0xd7, 0xd6, 0x6e, 0xe9, 0xb2, 0xb6, 0x58, 0xc2, 0xef, 0x42, 0x4c, 0x93, - 0xd7, 0x6d, 0xea, 0x4e, 0x42, 0x9d, 0x19, 0xf5, 0x5b, 0x7b, 0x37, 0x49, 0x9f, 0x88, 0xf2, 0xfa, - 0xea, 0x4e, 0x55, 0x16, 0x06, 0x3e, 0x7a, 0xd8, 0xcb, 0xa8, 0xe4, 0x8a, 0xa1, 0xac, 0x2b, 0x45, - 0xc9, 0x9c, 0x10, 0xf9, 0x0e, 0xb1, 0x4b, 0x93, 0xd7, 0x29, 0x77, 0x21, 0x03, 0x89, 0xa2, 0xba, - 0x5d, 0x31, 0x0a, 0x6b, 0x3b, 0x85, 0xe2, 0xa6, 0xaa, 0x14, 0x65, 0x9c, 0x78, 0x52, 0x43, 0xa1, - 0xdd, 0x1a, 0x0a, 0x3e, 0xad, 0xa1, 0xe0, 0x04, 0x3f, 0xb9, 0x14, 0x8a, 0x06, 0xb9, 0x50, 0xe6, - 0x3b, 0x00, 0x3d, 0x2b, 0xb2, 0x76, 0x4f, 0xd6, 0x6e, 0x69, 0x65, 0x71, 0xbb, 0x2c, 0xe3, 0x49, - 0x00, 0xa9, 0xb2, 0x53, 0x28, 0xa9, 0x5b, 0x92, 0x52, 0x21, 0xdd, 0xd6, 0xfc, 0xb3, 0xba, 0xa4, - 0xca, 0xce, 0x3c, 0x29, 0x88, 0x7f, 0x06, 0x41, 0x42, 0xaf, 0xca, 0x45, 0xb3, 0x45, 0x16, 0x71, - 0x30, 0x8d, 0xce, 0x77, 0x09, 0x5f, 0xfb, 0xf8, 0x31, 0x12, 0xa2, 0x81, 0xcc, 0x84, 0xf9, 0x7a, - 0x54, 0xaa, 0x2a, 0x05, 0xa7, 0xd7, 0x47, 0x75, 0x52, 0x77, 0x61, 0x5b, 0x2b, 0x93, 0x75, 0xa3, - 0x8f, 0xd6, 0xf1, 0x18, 0x43, 0x97, 0xc3, 0x45, 0xb5, 0xb2, 0xae, 0x6c, 0x90, 0xe1, 0xd5, 0x82, - 0xa9, 0xf7, 0x11, 0xfb, 0xef, 0x3b, 0x01, 0x94, 0xef, 0x10, 0xe3, 0x16, 0x01, 0x6b, 0xc7, 0x3d, - 0xe8, 0x5a, 0x93, 0x74, 0xb9, 0x50, 0x95, 0x8c, 0x4d, 0x32, 0x28, 0x5d, 0xc2, 0xdb, 0xe6, 0xf4, - 0xb8, 0xf8, 0xf1, 0x63, 0xf4, 0x4a, 0x14, 0x65, 0x46, 0xdb, 0x6a, 0x85, 0xcd, 0xa2, 0xa1, 0xfe, - 0x1f, 0x06, 0x90, 0xd3, 0x12, 0x31, 0x6a, 0x16, 0x5c, 0x96, 0x8c, 0x4d, 0x3c, 0x03, 0x5d, 0x26, - 0xd3, 0x0d, 0x4d, 0xdd, 0xae, 0xa6, 0x80, 0xd4, 0x7b, 0xe2, 0xe3, 0xc7, 0x28, 0x1e, 0x0d, 0x9c, - 0x47, 0x7e, 0x1f, 0x21, 0x46, 0xa5, 0xaa, 0xf2, 0xba, 0x59, 0x1a, 0xaf, 0x40, 0x42, 0x93, 0xbf, - 0xb5, 0x2d, 0xeb, 0x46, 0x61, 0x4b, 0x32, 0x8a, 0x9b, 0xb2, 0x96, 0x8a, 0x91, 0x6e, 0x3f, 0x53, - 0xd7, 0xed, 0x74, 0x79, 0x8e, 0x8a, 0xb4, 0xf0, 0x75, 0x5a, 0x56, 0x08, 0x3d, 0xa9, 0x21, 0x24, - 0xc6, 0x35, 0xcf, 0x53, 0xbc, 0x0c, 0xf1, 0x62, 0x59, 0x91, 0x2b, 0x0e, 0xcf, 0x2e, 0xc2, 0xf3, - 0xb4, 0x3f, 0xcf, 0x39, 0x52, 0xd6, 0x66, 0xf9, 0xdf, 0x3e, 0x46, 0x48, 0xec, 0x29, 0xba, 0x1f, - 0xe2, 0xf7, 0xa0, 0x57, 0x21, 0xab, 0xb1, 0xe0, 0x5e, 0x35, 0xa9, 0x30, 0x61, 0x7b, 0x69, 0xb4, - 0xad, 0x6d, 0x63, 0xb4, 0x61, 0x3d, 0xe7, 0x91, 0x98, 0x54, 0x1a, 0x16, 0x79, 0x01, 0x38, 0x73, - 0x79, 0x78, 0x2a, 0x8a, 0xb4, 0xbd, 0x46, 0x12, 0x1f, 0x3d, 0xec, 0x76, 0x93, 0xe6, 0x49, 0xf7, - 0xac, 0xbb, 0x2a, 0xb8, 0xfc, 0x71, 0xf0, 0x93, 0x1a, 0x9a, 0x85, 0x34, 0xf4, 0xcd, 0x2e, 0x2f, - 0xa6, 0xc9, 0x38, 0x5c, 0x4c, 0x0b, 0x92, 0x2e, 0xa7, 0xc9, 0x68, 0x46, 0xb3, 0x7c, 0x7a, 0x82, - 0x4f, 0x67, 0xb3, 0xd0, 0x0d, 0x11, 0xda, 0x37, 0x3a, 0x46, 0x33, 0x90, 0x00, 0x30, 0xb9, 0xa4, - 0x09, 0x1b, 0x8c, 0x26, 0x3f, 0xad, 0xa1, 0x1f, 0x05, 0x20, 0x07, 0x61, 0x3a, 0xfb, 0x46, 0xce, - 0xc3, 0x8b, 0x90, 0x74, 0x2f, 0xa0, 0x5c, 0x70, 0xb6, 0xb2, 0x03, 0xc9, 0x86, 0xb5, 0x01, 0x29, - 0xe8, 0xb2, 0xab, 0x1b, 0x8a, 0xb9, 0x26, 0xad, 0xf9, 0xc6, 0x6e, 0x93, 0xf9, 0xc6, 0x9e, 0x56, - 0x30, 0x0f, 0x5d, 0xab, 0x96, 0x60, 0x1b, 0x99, 0x86, 0x49, 0x38, 0x05, 0x27, 0x7d, 0x86, 0x64, - 0xd4, 0x96, 0x7e, 0x80, 0x1b, 0xfb, 0x11, 0x04, 0x88, 0xce, 0x6f, 0x6b, 0x44, 0x6a, 0x8c, 0x4c, - 0xc1, 0x04, 0x0c, 0x43, 0xca, 0x8f, 0x09, 0x11, 0x76, 0x81, 0x34, 0xf2, 0xe5, 0xf1, 0xb7, 0x20, - 0x3a, 0x67, 0x0a, 0x98, 0xb4, 0xb0, 0x33, 0x52, 0x85, 0x0a, 0x4c, 0xc2, 0x39, 0x5f, 0x1e, 0x8d, - 0x82, 0x32, 0x07, 0xd7, 0x84, 0xb4, 0x29, 0xa6, 0xd2, 0x8b, 0x25, 0x78, 0x01, 0x4e, 0xf9, 0x91, - 0xb9, 0x24, 0xa3, 0x5f, 0xed, 0x42, 0x1a, 0x7a, 0x68, 0x2f, 0xba, 0x85, 0x5b, 0x60, 0xb7, 0x86, - 0x90, 0x29, 0xdc, 0x72, 0xfc, 0xb8, 0xf0, 0x22, 0xf4, 0x7a, 0x36, 0x36, 0x57, 0xb9, 0xf0, 0x6e, - 0x0d, 0x75, 0x9a, 0xe5, 0xa6, 0xf8, 0xe9, 0xa5, 0x50, 0x14, 0x71, 0x81, 0xa5, 0x50, 0xb4, 0x93, - 0x0b, 0x67, 0x7e, 0x36, 0x06, 0x89, 0xd9, 0xaa, 0xb2, 0x50, 0x29, 0x55, 0x55, 0xa5, 0x62, 0x3c, - 0x8b, 0x30, 0xfc, 0xd9, 0xa6, 0xc2, 0xf0, 0xdd, 0x8f, 0x1f, 0xa3, 0xf9, 0x68, 0x20, 0x33, 0xe5, - 0x27, 0x86, 0xcc, 0x9f, 0x32, 0xab, 0xfe, 0x90, 0xc4, 0xe1, 0x99, 0x46, 0x71, 0x18, 0xf9, 0xc1, - 0x43, 0xf4, 0x43, 0x53, 0x64, 0x38, 0xc2, 0xeb, 0x03, 0x04, 0x49, 0x4f, 0xe5, 0xa4, 0x78, 0x27, - 0x29, 0xfe, 0x8d, 0x8f, 0x1f, 0xa3, 0xab, 0x51, 0x94, 0xb9, 0xd4, 0x66, 0x8b, 0x1b, 0xf8, 0xf8, - 0xb4, 0x39, 0xca, 0xfe, 0xfb, 0x5e, 0x10, 0x89, 0x09, 0xc9, 0xe9, 0x73, 0xd2, 0x98, 0x77, 0xa0, - 0xd7, 0xc3, 0x63, 0x4b, 0x36, 0x36, 0xd5, 0x12, 0x93, 0x33, 0x2f, 0xfb, 0x8b, 0x2f, 0x73, 0x6f, - 0xbd, 0x4e, 0xca, 0x31, 0x69, 0x65, 0xca, 0x01, 0x31, 0xe9, 0x62, 0x4d, 0xdf, 0xfa, 0xc9, 0x5a, - 0x78, 0x0e, 0xb2, 0x36, 0xf6, 0x7c, 0x64, 0x6d, 0xf4, 0xc7, 0x25, 0x6b, 0xbb, 0x0e, 0x53, 0xd6, - 0xfe, 0xc0, 0x94, 0xb5, 0xaf, 0xc1, 0x30, 0x74, 0x9b, 0x72, 0xcd, 0x1a, 0x10, 0x1c, 0xa7, 0x32, - 0x76, 0x92, 0x4f, 0x4f, 0xf1, 0xe9, 0xec, 0x18, 0xf4, 0x38, 0x92, 0x36, 0x90, 0xcd, 0xd6, 0x8b, - 0xda, 0xe9, 0x4f, 0x6b, 0xe8, 0xbb, 0xc1, 0x03, 0x89, 0xda, 0xd3, 0xde, 0x8a, 0x87, 0x7a, 0x7d, - 0x26, 0x3b, 0xf0, 0x10, 0xa1, 0x53, 0x44, 0x17, 0x5e, 0x80, 0xe3, 0x3e, 0x13, 0x70, 0x94, 0xfe, - 0xd1, 0xb9, 0xe0, 0x18, 0x3a, 0x92, 0xc4, 0x87, 0x21, 0x89, 0xa3, 0xbb, 0x35, 0x14, 0x31, 0xcb, - 0x5d, 0xe2, 0x67, 0x6c, 0x49, 0x1c, 0xe1, 0xa2, 0x99, 0x5a, 0x14, 0x06, 0x84, 0x9d, 0xaa, 0xa4, - 0xeb, 0xf6, 0x34, 0x52, 0x2a, 0x1b, 0xcf, 0x22, 0x90, 0x6f, 0x36, 0x93, 0xc7, 0x67, 0x3e, 0x7e, - 0x8c, 0xba, 0xa3, 0x81, 0x7d, 0xcb, 0xd5, 0x8b, 0x10, 0x31, 0xdb, 0xb1, 0xad, 0x95, 0x99, 0xee, - 0xee, 0xdf, 0x08, 0x24, 0x86, 0xa5, 0xca, 0xce, 0x2d, 0xad, 0x8c, 0xc7, 0xdd, 0x82, 0x38, 0x4c, - 0xea, 0xee, 0xf3, 0x53, 0x29, 0xf3, 0x6e, 0xb9, 0xfc, 0x0d, 0xe8, 0x76, 0xcf, 0x44, 0xa6, 0x02, - 0xcd, 0xb4, 0xb9, 0xfe, 0x5d, 0x9b, 0xd9, 0xbc, 0x6c, 0x48, 0x4a, 0x59, 0xcf, 0x23, 0x31, 0xe6, - 0x92, 0x89, 0xf8, 0x4d, 0x00, 0x5b, 0xbb, 0xd0, 0x99, 0x74, 0x19, 0x6b, 0x97, 0xfb, 0xf2, 0x22, - 0x51, 0x51, 0x4c, 0xa6, 0x5d, 0x96, 0x2e, 0xab, 0xfb, 0x09, 0xd8, 0xae, 0xe7, 0x20, 0x60, 0xe1, - 0xd9, 0x04, 0xec, 0xe5, 0xef, 0x98, 0x32, 0x69, 0x08, 0xba, 0x70, 0x84, 0x4a, 0xa1, 0x19, 0xaf, - 0xf8, 0x19, 0xfb, 0xb4, 0x86, 0xfe, 0xed, 0xc1, 0x14, 0xbb, 0x07, 0x10, 0x9f, 0x53, 0x2b, 0x25, - 0xc5, 0x5c, 0xd5, 0x69, 0x53, 0x44, 0x8e, 0xac, 0x83, 0xb9, 0x78, 0xac, 0xf9, 0x92, 0x8b, 0xcc, - 0x56, 0x76, 0xd2, 0xb7, 0xc4, 0x6b, 0x70, 0xc2, 0x3b, 0xba, 0x39, 0x8f, 0x94, 0x82, 0x01, 0xd7, - 0x84, 0xc9, 0x39, 0xba, 0x22, 0xa4, 0xdc, 0x63, 0x96, 0x03, 0x5b, 0x55, 0xd4, 0xe1, 0x17, 0x11, - 0x24, 0x9c, 0xaa, 0x6f, 0x4b, 0xe5, 0x6d, 0x79, 0xe4, 0xdb, 0xf0, 0x00, 0xce, 0x7b, 0xe5, 0xdd, - 0xa8, 0xc9, 0x11, 0xf7, 0xfa, 0x3c, 0x34, 0x55, 0x4f, 0xbb, 0x4e, 0xec, 0x51, 0x4a, 0x73, 0xd0, - 0xef, 0xd4, 0x3a, 0xea, 0xfc, 0x9b, 0x39, 0xd6, 0xe4, 0x05, 0x07, 0x70, 0xd6, 0x11, 0xa9, 0x43, - 0xd0, 0xe7, 0xa9, 0xcd, 0x25, 0x4b, 0x85, 0x63, 0xf5, 0x32, 0x24, 0x6a, 0xc9, 0x10, 0xe1, 0x1c, - 0x70, 0x25, 0x59, 0x37, 0x94, 0x0a, 0x91, 0x91, 0xc4, 0x20, 0x84, 0x7b, 0x9f, 0xd4, 0x50, 0xe7, - 0x6e, 0x0d, 0x85, 0x9e, 0xd6, 0x50, 0x64, 0x92, 0x9f, 0xe2, 0xa7, 0xf9, 0x4b, 0xb6, 0xf4, 0x08, - 0x71, 0x9d, 0x99, 0x7f, 0x8e, 0x60, 0xd0, 0x5f, 0x7a, 0xe8, 0xf8, 0xd7, 0x11, 0x0c, 0xad, 0x91, - 0x77, 0x2e, 0x39, 0xa6, 0x54, 0x36, 0xa8, 0xee, 0x92, 0x8a, 0xa4, 0x83, 0xe7, 0x63, 0xb9, 0x57, - 0xdb, 0x5c, 0x01, 0xfe, 0x95, 0x08, 0xa7, 0xc8, 0x62, 0xfe, 0x10, 0x05, 0xb8, 0x3e, 0xeb, 0xbf, - 0x14, 0x7a, 0xfa, 0xc7, 0xff, 0x22, 0x18, 0xfe, 0xf0, 0x31, 0x0a, 0x70, 0x1d, 0xe2, 0xe0, 0x9a, - 0x7f, 0xeb, 0x32, 0x9f, 0x76, 0x92, 0x9d, 0xca, 0x7e, 0x81, 0xe7, 0x00, 0x57, 0xd4, 0x82, 0x52, - 0x2d, 0x48, 0xe5, 0xb2, 0x7a, 0x5f, 0x2e, 0x15, 0xca, 0x8a, 0x6e, 0xec, 0x21, 0xf5, 0x12, 0x15, - 0x75, 0xb1, 0x3a, 0x4b, 0xcb, 0x5f, 0x53, 0x74, 0xc3, 0x5c, 0x91, 0xf5, 0x1c, 0x82, 0x84, 0xc3, - 0x4b, 0xbe, 0xdf, 0xb9, 0xac, 0xc9, 0xeb, 0xca, 0x83, 0x15, 0x43, 0x53, 0x2a, 0x1b, 0x26, 0xbd, - 0x39, 0x85, 0xf3, 0x1d, 0x62, 0x8f, 0xe2, 0x61, 0xfa, 0x2d, 0x18, 0x28, 0x6e, 0xeb, 0x86, 0xba, - 0xd5, 0xd0, 0x3a, 0x6a, 0x08, 0xb9, 0xdc, 0x66, 0x1f, 0xce, 0x11, 0x26, 0x9e, 0x06, 0xe7, 0x3b, - 0xc4, 0xde, 0x62, 0xe3, 0x63, 0xfc, 0xb7, 0xf7, 0x1a, 0x3b, 0xb3, 0xde, 0x2b, 0xcf, 0x34, 0x76, - 0xba, 0x10, 0xfa, 0x51, 0x0d, 0x99, 0xf2, 0xbe, 0xd9, 0x18, 0xe1, 0x6d, 0xe0, 0xea, 0xad, 0x05, - 0xa9, 0x4e, 0x32, 0x6d, 0x26, 0xda, 0xac, 0xda, 0x63, 0x6e, 0x11, 0xfa, 0x9d, 0xd9, 0xe2, 0xcc, - 0x11, 0x24, 0xc6, 0x75, 0x77, 0x29, 0x1d, 0xff, 0x14, 0xe0, 0x46, 0x5d, 0x3b, 0x15, 0x26, 0x15, - 0x4f, 0xed, 0x7f, 0x3f, 0x68, 0x55, 0x35, 0x27, 0x79, 0xcb, 0xe9, 0xc2, 0x05, 0x18, 0xa8, 0x1b, - 0x65, 0x6b, 0xa9, 0xf6, 0xba, 0xb6, 0xfb, 0x48, 0x8e, 0x1f, 0xe7, 0x27, 0xac, 0x43, 0x55, 0xe6, - 0x9f, 0x75, 0x43, 0x7c, 0x59, 0x53, 0x1f, 0xec, 0x90, 0x09, 0x64, 0x18, 0x55, 0x1d, 0xbf, 0x04, - 0x3d, 0xa4, 0x55, 0x9a, 0x5c, 0x52, 0x34, 0xb9, 0x68, 0x10, 0xf3, 0x5d, 0x54, 0x08, 0xfd, 0x45, - 0x0d, 0x75, 0x88, 0xdd, 0xe6, 0x2b, 0x91, 0xbd, 0xc1, 0xa7, 0x20, 0x2a, 0x95, 0x4a, 0x85, 0x4d, - 0xdd, 0xd0, 0xc9, 0x7c, 0xb7, 0x4a, 0x45, 0xa4, 0x52, 0x29, 0xaf, 0x1b, 0x3a, 0x7e, 0x07, 0xe2, - 0x46, 0x59, 0x2f, 0x54, 0x25, 0x4d, 0xda, 0x92, 0x0d, 0x59, 0xd3, 0xd9, 0xa4, 0xe6, 0x7d, 0x3b, - 0x63, 0x5e, 0xbd, 0x5f, 0xd1, 0x0d, 0x4d, 0x96, 0xb6, 0x56, 0xcb, 0xfa, 0xb2, 0x49, 0xa3, 0x13, - 0xed, 0x35, 0xb4, 0x4b, 0x87, 0xbb, 0xc7, 0x60, 0x8f, 0x09, 0x2b, 0xfc, 0x75, 0x48, 0x98, 0xcc, - 0x8b, 0xb2, 0x66, 0xd0, 0x1a, 0xf4, 0xd4, 0x00, 0xe1, 0x7e, 0x61, 0x2f, 0xee, 0xd7, 0x56, 0xe6, - 0x64, 0xcd, 0x60, 0x55, 0x78, 0xd8, 0x9b, 0xcf, 0xe9, 0x63, 0x3c, 0x07, 0xf1, 0x92, 0xbc, 0x2e, - 0x6d, 0x97, 0x8d, 0xc2, 0xa6, 0x2c, 0x95, 0x64, 0xad, 0x95, 0x0e, 0x41, 0xb7, 0xc4, 0x3c, 0x12, - 0x7b, 0x18, 0x4d, 0x9e, 0x90, 0xe0, 0x2c, 0xc4, 0xd8, 0x44, 0xac, 0x48, 0x5b, 0x32, 0x53, 0x29, - 0xe2, 0x66, 0x59, 0x4b, 0x99, 0xf8, 0x07, 0x5f, 0xcd, 0x23, 0x11, 0x68, 0xa1, 0x1b, 0xd2, 0x96, - 0x8c, 0xaf, 0x98, 0x93, 0xa8, 0x2a, 0x57, 0x4a, 0x05, 0x37, 0x65, 0xa4, 0x09, 0x25, 0x47, 0xcb, - 0xae, 0x38, 0xf4, 0x5f, 0x85, 0x6e, 0xb2, 0xfc, 0x8c, 0x4d, 0x4d, 0xdd, 0xde, 0xd8, 0x64, 0x0a, - 0x43, 0xeb, 0x56, 0xc7, 0x4c, 0x8a, 0x55, 0x4a, 0x80, 0x97, 0xa1, 0x5f, 0xae, 0x48, 0x6b, 0x65, - 0xba, 0xa9, 0x14, 0x2a, 0xaa, 0xb6, 0x25, 0x95, 0x95, 0x6f, 0xcb, 0x6c, 0x3b, 0x6f, 0xc5, 0x29, - 0x20, 0xf6, 0x52, 0x52, 0x73, 0x13, 0xbc, 0x61, 0x11, 0x62, 0x11, 0x06, 0x4a, 0x8a, 0xee, 0xc7, - 0x32, 0xd6, 0x06, 0xcb, 0x3e, 0x46, 0xeb, 0xe5, 0x79, 0x1e, 0x42, 0x55, 0x55, 0x33, 0x52, 0x09, - 0x62, 0x5c, 0xc6, 0x9f, 0xd5, 0x50, 0x70, 0x62, 0x62, 0xdc, 0xec, 0x9b, 0xf0, 0x48, 0x28, 0xf5, - 0x97, 0x7f, 0x19, 0xcc, 0x07, 0x45, 0x52, 0x02, 0x2f, 0x41, 0xcc, 0xfc, 0x5b, 0xd0, 0xa4, 0xca, - 0x86, 0xac, 0xa7, 0x8e, 0x91, 0x9e, 0x3c, 0x67, 0x2b, 0x73, 0x21, 0xf6, 0xdf, 0x6e, 0xe8, 0x35, - 0xf3, 0xbf, 0x90, 0x16, 0xe0, 0xac, 0x2e, 0xfe, 0x41, 0x08, 0xe5, 0x83, 0x22, 0x98, 0xd4, 0x22, - 0x21, 0xc6, 0xb7, 0x21, 0x55, 0x51, 0x2b, 0x05, 0x6b, 0x62, 0xb8, 0x57, 0x6e, 0x2a, 0xb9, 0xe7, - 0xb7, 0x84, 0xc4, 0x81, 0x8a, 0x5a, 0x99, 0xa7, 0xc4, 0xd7, 0x5c, 0xb4, 0xf8, 0x26, 0xf4, 0xf9, - 0xf2, 0xc4, 0x6d, 0xf0, 0xec, 0x2d, 0xf9, 0x30, 0x54, 0x61, 0x88, 0xce, 0xda, 0x82, 0xa1, 0x49, - 0x15, 0x7d, 0xdd, 0xec, 0x37, 0x7b, 0x7b, 0x4e, 0xf5, 0x12, 0xb6, 0xe7, 0xea, 0xd8, 0xd2, 0x39, - 0xbb, 0xea, 0x29, 0x4f, 0x16, 0xa0, 0xb9, 0xd7, 0x53, 0x6b, 0x44, 0x6a, 0xb3, 0x49, 0x19, 0xfc, - 0x36, 0x0c, 0x16, 0xd5, 0x4a, 0x45, 0x2e, 0x92, 0x5a, 0x94, 0x52, 0x59, 0x2e, 0x18, 0xca, 0x96, - 0xac, 0x6e, 0x1b, 0xa9, 0x3e, 0x32, 0x44, 0x2f, 0x98, 0x4c, 0x3e, 0xab, 0xa1, 0x70, 0x36, 0x37, - 0x36, 0x36, 0x36, 0x66, 0x0a, 0x8a, 0xef, 0x3c, 0x46, 0x1d, 0xd6, 0x88, 0x3d, 0xf9, 0xc3, 0x33, - 0x62, 0xbf, 0xc3, 0x61, 0xb1, 0x54, 0x96, 0x57, 0x29, 0x3d, 0x2e, 0x43, 0x3f, 0x91, 0x48, 0xc4, - 0xe1, 0x50, 0x54, 0xcb, 0x96, 0x7b, 0x25, 0x35, 0x48, 0x3e, 0xe3, 0x62, 0xc3, 0x72, 0x77, 0x9c, - 0x16, 0xc4, 0xe6, 0xb0, 0xcc, 0xe8, 0x6e, 0x52, 0x32, 0xc7, 0xb6, 0xd2, 0xbb, 0xd9, 0xf8, 0xf6, - 0x72, 0xea, 0xf3, 0x2b, 0xfd, 0x59, 0x3e, 0xc7, 0xe7, 0x26, 0x88, 0xa4, 0x9c, 0xe1, 0xb3, 0x53, - 0x7c, 0x76, 0x86, 0xcf, 0x8d, 0x09, 0x2f, 0xc3, 0xa0, 0x25, 0x70, 0xa8, 0x49, 0x5f, 0xd6, 0x2d, - 0x11, 0xcb, 0x3d, 0xa9, 0xa1, 0x81, 0xdd, 0x1a, 0xea, 0x7f, 0x5a, 0x43, 0xa1, 0x9c, 0x79, 0xa4, - 0xba, 0x08, 0x7d, 0x6c, 0xfd, 0xb2, 0x71, 0x60, 0x25, 0x07, 0x4d, 0xcd, 0xe8, 0xf7, 0x6b, 0x08, - 0xd5, 0x69, 0x47, 0xc2, 0x28, 0xf4, 0x7b, 0x17, 0x87, 0x45, 0xd1, 0xff, 0xa4, 0x86, 0x80, 0x51, - 0x74, 0x3d, 0xad, 0xa1, 0xce, 0xec, 0x18, 0x9f, 0xcd, 0x0a, 0x69, 0x36, 0xad, 0x59, 0xa9, 0xe4, - 0x93, 0x1a, 0x4a, 0xec, 0xd6, 0x50, 0x8a, 0x94, 0x98, 0xe4, 0x73, 0x93, 0xc2, 0x08, 0x24, 0xed, - 0x49, 0xb5, 0xe6, 0xe6, 0x96, 0x64, 0xdc, 0x38, 0x52, 0x76, 0x9a, 0xcf, 0x9a, 0xba, 0x59, 0x3f, - 0x37, 0x40, 0x75, 0xb3, 0xa5, 0x50, 0xb4, 0x8b, 0x83, 0xa5, 0x50, 0xb4, 0x9b, 0xeb, 0x59, 0x0a, - 0x45, 0x7b, 0xb8, 0xf8, 0x52, 0x28, 0x1a, 0xe7, 0x12, 0x4b, 0xa1, 0x68, 0x8a, 0x3b, 0xb6, 0x14, - 0x8a, 0x72, 0x5c, 0x32, 0xf3, 0x7e, 0x00, 0x7a, 0x3c, 0x1b, 0x07, 0x9e, 0x82, 0xbe, 0x52, 0x45, - 0x2f, 0xdc, 0x53, 0xcb, 0x86, 0xac, 0x69, 0x52, 0x61, 0x4b, 0xaa, 0x48, 0x1b, 0x72, 0xc9, 0xb3, - 0x7d, 0xe0, 0x52, 0x45, 0xbf, 0xcd, 0x0a, 0x5c, 0xa7, 0xef, 0xf1, 0x39, 0xb6, 0x90, 0x03, 0x64, - 0x96, 0x24, 0x3f, 0xab, 0xa1, 0xc0, 0xa5, 0x31, 0xf7, 0x3a, 0xee, 0xf0, 0x5f, 0xc7, 0xa1, 0xfd, - 0xad, 0xe3, 0x0e, 0xf7, 0x3a, 0xbe, 0x1c, 0xfe, 0xfc, 0x4a, 0x30, 0xcb, 0x8f, 0x0b, 0x13, 0xde, - 0x4e, 0x3c, 0xcb, 0x76, 0xca, 0x20, 0x3d, 0x18, 0x4f, 0x7c, 0xf0, 0x18, 0x61, 0xe0, 0x8a, 0xa5, - 0x8a, 0x67, 0x55, 0x32, 0xaf, 0xcc, 0xbf, 0xee, 0x86, 0x41, 0xef, 0xde, 0x39, 0xbb, 0x6d, 0xa8, - 0x64, 0x67, 0x39, 0xd4, 0x4d, 0x74, 0x0e, 0x80, 0x4c, 0x3b, 0x72, 0xf2, 0x65, 0x1b, 0xe8, 0xb0, - 0xef, 0x16, 0xb7, 0x5a, 0xd6, 0xe7, 0x48, 0x29, 0xaa, 0x21, 0x89, 0x5d, 0x86, 0xf5, 0x00, 0x4f, - 0x42, 0xa4, 0xa2, 0x16, 0xb6, 0x8c, 0xb2, 0xde, 0xc6, 0x36, 0xd6, 0x21, 0x86, 0x2b, 0xea, 0x75, - 0xa3, 0x6c, 0xca, 0xbb, 0xe8, 0xb6, 0x2e, 0x53, 0x3a, 0x6a, 0xdb, 0x1b, 0xdf, 0x7b, 0xeb, 0xbe, - 0x4d, 0x1d, 0xa4, 0x8a, 0x5a, 0x99, 0x53, 0x2b, 0x86, 0xfc, 0xc0, 0xb0, 0xd9, 0x46, 0xb6, 0x75, - 0x99, 0xf0, 0x6d, 0xdc, 0x5c, 0xa3, 0xcf, 0xbc, 0xb9, 0x76, 0x1d, 0x78, 0x73, 0x85, 0x03, 0x6f, - 0xae, 0xb1, 0x43, 0xdb, 0x5c, 0x7b, 0x0e, 0x7f, 0x73, 0x8d, 0x1f, 0x78, 0x73, 0xe5, 0xd9, 0x9a, - 0xc4, 0x64, 0x4d, 0x0e, 0xb0, 0xcd, 0xd5, 0x9c, 0x96, 0x6d, 0x6c, 0xb0, 0x43, 0xcf, 0x6b, 0x83, - 0xed, 0x7b, 0x0e, 0x1b, 0x6c, 0xff, 0x41, 0x37, 0x58, 0xbd, 0xe5, 0x06, 0x3b, 0xb0, 0xbf, 0x0d, - 0xb6, 0xdb, 0xda, 0x60, 0x89, 0x15, 0xe4, 0x40, 0x9b, 0xec, 0xe0, 0xf3, 0xda, 0x64, 0x53, 0xcf, - 0x63, 0x93, 0x3d, 0xfe, 0xf9, 0x95, 0x14, 0xd9, 0x64, 0x27, 0xe9, 0x71, 0x84, 0xcf, 0xe6, 0xc8, - 0x26, 0x9b, 0xe3, 0x73, 0xe3, 0x42, 0x06, 0x62, 0x5b, 0x44, 0xe2, 0x39, 0xc7, 0x17, 0xf7, 0x8e, - 0x19, 0x9c, 0xe4, 0xa7, 0x84, 0x6c, 0x93, 0xed, 0xf5, 0xd8, 0x93, 0x1a, 0x8a, 0xb2, 0xc2, 0x91, - 0xa7, 0x35, 0xd4, 0x75, 0xc9, 0xdc, 0xc1, 0xc9, 0x86, 0xd9, 0x72, 0x83, 0xed, 0x61, 0x34, 0xdd, - 0x64, 0x4b, 0x1c, 0xe7, 0xb3, 0x13, 0x7e, 0x1b, 0x2c, 0xde, 0xad, 0xa1, 0x63, 0xa4, 0xc4, 0x25, - 0x3e, 0x37, 0xd5, 0x7c, 0x83, 0xed, 0x63, 0xdc, 0x7a, 0xcd, 0xb2, 0xb9, 0x31, 0x3e, 0x97, 0xb5, - 0xb7, 0xd6, 0x08, 0x17, 0xb5, 0xb7, 0xd6, 0x04, 0xc7, 0xd1, 0xed, 0x74, 0x29, 0x14, 0x4d, 0x72, - 0x78, 0x29, 0x14, 0x3d, 0xc6, 0x0d, 0x2d, 0x85, 0xa2, 0xbd, 0x5c, 0x5f, 0xe6, 0x3f, 0x03, 0x9c, - 0x97, 0xf4, 0xcd, 0x65, 0x62, 0x2c, 0xb3, 0x8e, 0xf8, 0x58, 0x81, 0xd8, 0xa6, 0xa4, 0x6f, 0x32, - 0x0c, 0x48, 0x8a, 0x23, 0x47, 0xcb, 0x7a, 0x03, 0x1b, 0xc1, 0xc2, 0x8c, 0x3a, 0xd4, 0x64, 0x8a, - 0x9d, 0xde, 0xb5, 0xa4, 0x9b, 0x79, 0x96, 0x8c, 0xfa, 0x19, 0x3d, 0x90, 0x08, 0x9b, 0x36, 0x51, - 0xe6, 0x1f, 0x22, 0xe0, 0xae, 0x2b, 0x9a, 0xa6, 0x6a, 0x0e, 0x17, 0xbc, 0x02, 0x31, 0x17, 0x70, - 0x85, 0xec, 0x6a, 0xed, 0x79, 0x20, 0xe2, 0x1f, 0x3d, 0x74, 0x53, 0x8a, 0x40, 0x7f, 0x2c, 0xab, - 0x6a, 0x19, 0x5f, 0x86, 0x48, 0x55, 0xd6, 0x8a, 0x72, 0xc5, 0xb2, 0x9a, 0xa4, 0xeb, 0x18, 0x5e, - 0xd5, 0x24, 0x32, 0x5f, 0xa5, 0xf2, 0x32, 0x2d, 0x27, 0x5a, 0x04, 0x99, 0x3f, 0x38, 0x0e, 0x43, - 0xa2, 0xf9, 0xbd, 0x2b, 0xca, 0x56, 0xb5, 0x2c, 0xcf, 0x96, 0xee, 0x99, 0xcb, 0xb3, 0xc4, 0xe6, - 0x19, 0x9e, 0x07, 0x5c, 0x54, 0xb7, 0xb6, 0xd4, 0x4a, 0xc1, 0xdd, 0x6d, 0xad, 0x6d, 0x33, 0x1c, - 0xa5, 0x70, 0xfa, 0x0f, 0x6f, 0x41, 0x9f, 0x6d, 0x40, 0x74, 0xf3, 0x09, 0xee, 0xcb, 0xd2, 0xdb, - 0x38, 0x9c, 0xf9, 0x0e, 0x11, 0x5b, 0x8c, 0x5d, 0xd5, 0x5d, 0x86, 0x68, 0x55, 0x53, 0x54, 0x4d, - 0x31, 0x76, 0x88, 0x96, 0x13, 0x6f, 0xd8, 0xee, 0xcd, 0x2f, 0x56, 0x2a, 0x1b, 0xcb, 0xac, 0x94, - 0x68, 0x97, 0xc7, 0xff, 0x15, 0x02, 0xce, 0xb6, 0x3f, 0xe8, 0xdb, 0x6b, 0xba, 0x6c, 0x58, 0xa6, - 0x8f, 0xdb, 0x6d, 0xb6, 0xb3, 0x79, 0x77, 0x8e, 0x5a, 0x16, 0x87, 0x15, 0xca, 0x78, 0xa1, 0x62, - 0x68, 0x3b, 0xc2, 0x0b, 0xe6, 0xcc, 0xfa, 0xfe, 0x63, 0x14, 0x82, 0x40, 0x07, 0x9d, 0x61, 0xdf, - 0x47, 0x01, 0x8e, 0x23, 0xf3, 0xea, 0x83, 0xc7, 0x28, 0x10, 0xed, 0x10, 0x13, 0xb2, 0x97, 0x10, - 0x5f, 0x73, 0x6d, 0x5a, 0xc4, 0x94, 0x55, 0xd0, 0xe4, 0xfb, 0x9a, 0x62, 0xc8, 0xcc, 0x42, 0xd4, - 0xcc, 0x50, 0x6f, 0x6f, 0x57, 0x84, 0x48, 0xa4, 0x34, 0x78, 0x1a, 0xe2, 0x75, 0x5c, 0xa2, 0x74, - 0x47, 0xb7, 0x76, 0x2c, 0xb2, 0x0f, 0x05, 0x4c, 0x0d, 0xa2, 0xea, 0x21, 0xbc, 0x0e, 0x3d, 0x9a, - 0xbc, 0x21, 0x3b, 0x74, 0xbc, 0xef, 0xfc, 0x13, 0xcd, 0x32, 0xc4, 0x28, 0xcd, 0x08, 0x85, 0xd0, - 0x0f, 0xe9, 0xde, 0xde, 0x4d, 0xc8, 0x2d, 0x76, 0xf7, 0x60, 0xc0, 0x32, 0xab, 0x53, 0xa9, 0xa4, - 0x17, 0x0c, 0xb5, 0x20, 0x95, 0x4a, 0xa9, 0x2e, 0x32, 0x02, 0x2f, 0xfb, 0xee, 0x07, 0xd7, 0xa5, - 0x8a, 0x52, 0xdd, 0x2e, 0x13, 0x29, 0x4f, 0x3b, 0x9a, 0xac, 0x18, 0xdb, 0x2e, 0xc9, 0xa5, 0x9d, - 0xc5, 0x2a, 0xf6, 0xb2, 0x0a, 0x28, 0xa9, 0xbe, 0xaa, 0xce, 0x96, 0x4a, 0xf8, 0x9b, 0x70, 0xcc, - 0xa7, 0x5e, 0x4d, 0xde, 0x52, 0xef, 0x99, 0xca, 0x4d, 0xf0, 0x7c, 0x97, 0x70, 0xd6, 0xe4, 0xd1, - 0xfd, 0x21, 0xea, 0xca, 0x44, 0x34, 0x53, 0x01, 0x7c, 0x3f, 0xe0, 0xcb, 0x7e, 0xa0, 0x9e, 0xbd, - 0x48, 0x98, 0xe0, 0x07, 0x30, 0xa8, 0xc9, 0x7a, 0x55, 0xad, 0xe8, 0x72, 0xfd, 0xa7, 0xc5, 0x0e, - 0xeb, 0xd3, 0xfa, 0xac, 0x1a, 0x3c, 0xdf, 0xb6, 0x06, 0x43, 0x7e, 0x35, 0xb3, 0x8f, 0xeb, 0xde, - 0xcf, 0xc7, 0x0d, 0x36, 0x54, 0xc0, 0xbe, 0xce, 0x3c, 0xba, 0xb0, 0xd9, 0x58, 0x56, 0x29, 0x54, - 0x8b, 0x7c, 0x5a, 0x8f, 0xe7, 0xe8, 0x42, 0x4b, 0x5c, 0x63, 0x05, 0xcc, 0xb6, 0x7d, 0x05, 0x7a, - 0x94, 0xca, 0xa6, 0x6c, 0x8e, 0x7d, 0xa9, 0x70, 0x5f, 0x5a, 0x27, 0xc6, 0x88, 0x66, 0x93, 0x37, - 0x20, 0x76, 0xdb, 0x85, 0xef, 0x48, 0xeb, 0xf8, 0x2d, 0xe8, 0x96, 0xaa, 0xd5, 0xc2, 0xba, 0xa2, - 0xc9, 0xf7, 0xa5, 0x72, 0x39, 0x35, 0xb1, 0x2f, 0x6f, 0xae, 0x9b, 0x34, 0x1f, 0x10, 0x63, 0x52, - 0xb5, 0x7a, 0x95, 0xfd, 0xc4, 0xd3, 0x10, 0xb3, 0x3e, 0xc7, 0x6c, 0xd4, 0x4b, 0x2d, 0x1b, 0x05, - 0xac, 0xa8, 0xd9, 0xa4, 0xd7, 0x20, 0x56, 0x54, 0x35, 0xdd, 0x12, 0x6f, 0xd4, 0xf8, 0x70, 0xac, - 0x8e, 0x70, 0x4e, 0xd5, 0x74, 0x2a, 0xa8, 0xa8, 0xe5, 0x4c, 0x84, 0xa2, 0xfd, 0x84, 0x70, 0xd0, - 0xb5, 0x75, 0x8b, 0xc3, 0xcb, 0xfe, 0x1c, 0x74, 0x6d, 0xbd, 0x8e, 0x83, 0xfd, 0x04, 0xcf, 0x40, - 0xb7, 0xd5, 0x78, 0xbd, 0x5a, 0xda, 0x69, 0xa5, 0xf4, 0xe5, 0x83, 0xa2, 0xf5, 0xa1, 0x2b, 0xd5, - 0xd2, 0x8e, 0xf9, 0xdd, 0x4c, 0xb7, 0x26, 0x94, 0xfd, 0x2d, 0x29, 0x81, 0x16, 0x25, 0x84, 0x6f, - 0xc2, 0x31, 0xbb, 0xc3, 0xe4, 0xb5, 0x82, 0xae, 0x16, 0xef, 0xca, 0x86, 0x75, 0xe0, 0x1a, 0x6c, - 0xc1, 0x26, 0x24, 0x5a, 0x62, 0xec, 0x8e, 0xbc, 0xb6, 0x42, 0xc8, 0xd8, 0x79, 0xeb, 0x36, 0x24, - 0x1b, 0x59, 0x51, 0x55, 0xea, 0xbc, 0xef, 0x76, 0x7d, 0x47, 0x5e, 0xd3, 0x5d, 0x0c, 0xc8, 0xf6, - 0x10, 0x12, 0x13, 0xf7, 0xeb, 0xf8, 0xe6, 0x1d, 0x3d, 0x56, 0x93, 0x0d, 0x6d, 0xc7, 0xea, 0xe9, - 0xa1, 0x16, 0xad, 0xec, 0x14, 0x31, 0xa3, 0x11, 0x4d, 0x12, 0xd6, 0xd1, 0x57, 0x20, 0x51, 0x51, - 0xbd, 0x4c, 0x46, 0x5a, 0x32, 0xe9, 0xa9, 0xa8, 0x6e, 0xfa, 0x45, 0xe8, 0xf6, 0x10, 0x1f, 0xf7, - 0x3d, 0x98, 0xba, 0x28, 0x5c, 0xb6, 0xdc, 0x4e, 0x31, 0xa6, 0xb9, 0x58, 0x4d, 0x41, 0xc4, 0x52, - 0x63, 0x4f, 0x10, 0x35, 0xf6, 0xc4, 0x67, 0x35, 0xd4, 0x39, 0xde, 0x4c, 0x83, 0xb5, 0x0a, 0xe3, - 0x59, 0x60, 0x7b, 0x75, 0x61, 0x6d, 0x7b, 0x7d, 0x5d, 0xd6, 0x94, 0xca, 0x46, 0x6a, 0xb8, 0xc5, - 0x37, 0x84, 0xc5, 0x04, 0x2d, 0x2f, 0x58, 0xc5, 0xf1, 0x55, 0xe8, 0xa1, 0xb4, 0xd6, 0x67, 0x9c, - 0x22, 0xf4, 0xa7, 0xea, 0xe8, 0x29, 0x81, 0x6b, 0x68, 0xc2, 0x62, 0x37, 0xa5, 0x63, 0x9f, 0x30, - 0x07, 0x49, 0x6b, 0x0a, 0x6d, 0x11, 0xa5, 0xc9, 0x6c, 0xcb, 0x0b, 0x2d, 0xda, 0x12, 0x11, 0x39, - 0x46, 0x70, 0xdd, 0x2a, 0x8f, 0xbf, 0x01, 0x3d, 0x94, 0xd8, 0x6a, 0x4c, 0x86, 0x30, 0x98, 0x6e, - 0x73, 0xe3, 0xae, 0xd7, 0xd6, 0xf2, 0x11, 0xb1, 0x7b, 0xcb, 0xf5, 0x0c, 0x7f, 0x15, 0x12, 0x66, - 0xb7, 0x4b, 0x45, 0xa3, 0x50, 0x2c, 0x6f, 0xeb, 0x86, 0xac, 0xa5, 0xce, 0xb4, 0x68, 0x62, 0x54, - 0x8c, 0xb3, 0xe2, 0x73, 0xb4, 0x34, 0x7e, 0x03, 0x06, 0x4a, 0x6a, 0xa1, 0xa2, 0xd2, 0xc9, 0xe7, - 0xe6, 0x73, 0xb6, 0x25, 0x9f, 0xde, 0x92, 0x7a, 0x43, 0x25, 0xb3, 0xcf, 0xc5, 0x4c, 0x83, 0x11, - 0x47, 0x7a, 0xae, 0xa9, 0x86, 0x79, 0xe8, 0x93, 0x4d, 0x31, 0xff, 0x9e, 0x74, 0x4f, 0xd2, 0x8b, - 0x9a, 0x52, 0x35, 0x0a, 0x4a, 0xe5, 0x3d, 0x7a, 0x54, 0x49, 0x9d, 0x6b, 0x51, 0x41, 0x97, 0xf8, - 0xa2, 0xcd, 0x49, 0x50, 0x8d, 0x79, 0xca, 0x67, 0xc9, 0x66, 0xb3, 0x68, 0x71, 0xc1, 0xff, 0x39, - 0x82, 0xf4, 0x9e, 0x55, 0x9d, 0x27, 0x55, 0x4d, 0xf9, 0x2e, 0xd3, 0x96, 0xec, 0x49, 0xa7, 0x77, - 0x89, 0x27, 0xd7, 0x5a, 0x15, 0x1a, 0x12, 0xa0, 0xcf, 0x4f, 0x8f, 0xc2, 0x1c, 0x04, 0xef, 0xca, - 0x3b, 0x44, 0xa7, 0xee, 0x12, 0xcd, 0x7f, 0x71, 0x1f, 0x74, 0xde, 0x93, 0xca, 0xdb, 0x32, 0x51, - 0x58, 0xbb, 0x44, 0xfa, 0xe3, 0x72, 0xe0, 0x12, 0xba, 0xfc, 0x67, 0xe8, 0x93, 0x1a, 0xfa, 0xb7, - 0x08, 0x4e, 0xc1, 0x80, 0x79, 0x2a, 0x4d, 0x0b, 0x64, 0x0e, 0x28, 0x95, 0x8d, 0xf4, 0x9c, 0x5a, - 0x31, 0x34, 0xb5, 0x8c, 0x3b, 0xb3, 0xfc, 0x04, 0x3f, 0x09, 0x63, 0x70, 0x92, 0x39, 0xef, 0x2f, - 0x8a, 0x6c, 0xf7, 0x4b, 0xbb, 0x77, 0x65, 0x9c, 0x98, 0xb2, 0x0e, 0x48, 0xe4, 0x0c, 0x36, 0x0e, - 0x7d, 0x10, 0x5d, 0x91, 0x8b, 0xdb, 0x44, 0x9b, 0x8c, 0x66, 0x27, 0xf8, 0xec, 0x25, 0x7e, 0x62, - 0x1c, 0x86, 0x20, 0x69, 0x9d, 0xe1, 0xd2, 0xb7, 0xaa, 0x1b, 0x9a, 0x54, 0x92, 0x75, 0xdc, 0x49, - 0x8e, 0x6c, 0x70, 0x06, 0xfa, 0xaf, 0x2b, 0x7a, 0x51, 0x2e, 0x97, 0xa5, 0x8a, 0xac, 0x6e, 0xeb, - 0x69, 0x4b, 0xfb, 0x8e, 0xe5, 0x26, 0xf9, 0xdc, 0x25, 0x3e, 0x37, 0xc3, 0x8f, 0xe7, 0xe0, 0x12, - 0xe4, 0x04, 0xd5, 0x48, 0xb3, 0x8e, 0x49, 0xbf, 0x98, 0x16, 0x15, 0xfd, 0x6e, 0x9a, 0x5a, 0x01, - 0xb7, 0xe4, 0x8a, 0x91, 0x76, 0xfa, 0x2a, 0xed, 0x0c, 0x58, 0x60, 0xfc, 0x92, 0x70, 0x16, 0xb0, - 0x4b, 0xeb, 0x6e, 0x0a, 0x62, 0x39, 0x03, 0x71, 0xa6, 0xc6, 0x59, 0x45, 0xf0, 0x93, 0x1a, 0x8a, - 0xec, 0xd6, 0x50, 0xf8, 0x69, 0x0d, 0x85, 0xa7, 0xf9, 0x4b, 0xfc, 0xc4, 0x84, 0xf0, 0x22, 0xc0, - 0x7d, 0x69, 0xdd, 0x2a, 0x91, 0x62, 0x56, 0xd3, 0xf8, 0xd3, 0x1a, 0x8a, 0x66, 0x27, 0xf9, 0xc9, - 0x1c, 0x3f, 0x91, 0xfd, 0x51, 0x0d, 0x75, 0x98, 0xa7, 0x3f, 0x73, 0x17, 0x71, 0x9f, 0xfe, 0xfa, - 0x3c, 0x27, 0x3a, 0xe1, 0x2c, 0x70, 0xf7, 0x2d, 0xa1, 0xed, 0x2e, 0x36, 0xb8, 0x5b, 0x43, 0x03, - 0xa4, 0xd8, 0x38, 0x9f, 0x9b, 0x10, 0x5e, 0x86, 0x5e, 0xb7, 0x9c, 0xb4, 0x4a, 0xf6, 0x3d, 0xa9, - 0xa1, 0x21, 0x76, 0x9c, 0x8c, 0xe6, 0xa6, 0xf8, 0x89, 0x1c, 0x9f, 0x9b, 0x16, 0x32, 0xb6, 0x38, - 0x72, 0x31, 0x1c, 0xde, 0xad, 0xa1, 0x93, 0x4f, 0x89, 0x44, 0xe4, 0xc7, 0x49, 0xbd, 0xb6, 0x88, - 0x71, 0x17, 0x33, 0xf5, 0xf0, 0x34, 0x29, 0x36, 0xce, 0x8f, 0x4f, 0x08, 0x3c, 0x0c, 0xb0, 0xc5, - 0xe9, 0x2c, 0x56, 0xa7, 0x5b, 0xce, 0xec, 0xd6, 0xd0, 0x69, 0xb3, 0x5b, 0xc6, 0xa7, 0xf8, 0xf4, - 0xf8, 0xb4, 0xf0, 0x0a, 0x9c, 0xdb, 0x6b, 0x5d, 0xb8, 0xeb, 0x3a, 0xb7, 0x5b, 0x43, 0x2f, 0x92, - 0xba, 0x66, 0xf8, 0x89, 0x31, 0xdb, 0xb3, 0x1f, 0xe6, 0x22, 0xb6, 0xad, 0xd8, 0x7d, 0xac, 0xed, - 0xe5, 0xfa, 0x96, 0x42, 0xd1, 0x01, 0x6e, 0xd0, 0x3e, 0xe2, 0x9e, 0xe4, 0x86, 0x97, 0x42, 0xd1, - 0x34, 0xf7, 0xc2, 0x52, 0x28, 0x7a, 0x9a, 0x3b, 0xb3, 0x14, 0x8a, 0xbe, 0xc8, 0x9d, 0xcb, 0xfc, - 0x6a, 0x10, 0xce, 0x90, 0xe3, 0x87, 0xb9, 0x92, 0xe8, 0x11, 0xe4, 0x8e, 0x62, 0x6c, 0x32, 0x83, - 0xce, 0x4d, 0xf7, 0x91, 0x31, 0x46, 0xe4, 0x1f, 0x83, 0x1d, 0x22, 0x72, 0x4a, 0xaa, 0xd7, 0x33, - 0x1c, 0xbc, 0xa1, 0x08, 0x9b, 0xf6, 0xff, 0xf8, 0x12, 0x84, 0x08, 0xbe, 0x27, 0xe0, 0xbb, 0x61, - 0x2d, 0x4b, 0xc6, 0xa6, 0x0b, 0x9e, 0xc8, 0x2c, 0xa9, 0x84, 0x02, 0x0b, 0x90, 0x94, 0xb6, 0x0d, - 0x95, 0x5e, 0x87, 0xb0, 0x8e, 0x0c, 0x7b, 0xdc, 0x29, 0x30, 0x09, 0xf2, 0xaa, 0x6e, 0x58, 0x67, - 0x84, 0x1c, 0x74, 0x7b, 0xc8, 0x29, 0x7e, 0xb3, 0xc7, 0x3a, 0xa9, 0x84, 0xb4, 0xc0, 0x26, 0xca, - 0x77, 0x88, 0xb1, 0x4d, 0x17, 0x4d, 0xde, 0xd1, 0x4f, 0x3d, 0xb4, 0xe1, 0x96, 0x55, 0x5b, 0x1a, - 0xab, 0xab, 0xf6, 0xcb, 0xd1, 0xcf, 0xaf, 0x74, 0x66, 0x79, 0x73, 0xb5, 0x9c, 0x87, 0x5e, 0x37, - 0x2f, 0xe6, 0x41, 0x25, 0x83, 0x6b, 0xdd, 0x40, 0xe8, 0x9c, 0xe0, 0x27, 0xf9, 0x29, 0x66, 0xed, - 0xfe, 0xf9, 0x30, 0x24, 0xea, 0x86, 0xc6, 0xee, 0x49, 0xb4, 0xef, 0x9e, 0xac, 0x1b, 0xbf, 0xc0, - 0x7e, 0xc6, 0xaf, 0x0c, 0xdd, 0x2e, 0x4b, 0x82, 0x9e, 0x0a, 0x92, 0x03, 0x88, 0x3f, 0x4e, 0xc2, - 0x99, 0x32, 0xe6, 0x3c, 0xba, 0x23, 0x2b, 0x1b, 0x9b, 0x86, 0x30, 0x6c, 0x9f, 0x0e, 0x38, 0xeb, - 0xbf, 0x28, 0x72, 0x9d, 0x13, 0x62, 0x8e, 0x6d, 0x42, 0xf7, 0x1f, 0xf3, 0xce, 0x67, 0x1b, 0xf3, - 0xf0, 0x33, 0x8c, 0x79, 0x64, 0xbf, 0x63, 0x8e, 0x97, 0x21, 0xc2, 0x0e, 0x4e, 0xec, 0x18, 0x9a, - 0x6e, 0x72, 0x56, 0x73, 0x86, 0xaa, 0xaf, 0xb1, 0x87, 0x52, 0x48, 0xb4, 0xd8, 0xe0, 0x45, 0xf3, - 0xdc, 0x53, 0x54, 0xb7, 0x4c, 0x01, 0x44, 0xec, 0xc4, 0xe0, 0x3f, 0x01, 0x54, 0xcd, 0x68, 0x9c, - 0x00, 0xdd, 0x16, 0xa9, 0xf9, 0x1a, 0x6b, 0xc0, 0x49, 0xcc, 0xc8, 0x60, 0x5b, 0x1c, 0xa9, 0x2b, - 0x60, 0xf6, 0x99, 0xcd, 0x15, 0xec, 0x74, 0x91, 0x90, 0xbc, 0x8f, 0x2f, 0x27, 0x3f, 0xbf, 0x12, - 0xcf, 0xf1, 0x59, 0xba, 0xef, 0x8d, 0xf3, 0x13, 0xfc, 0xa5, 0x56, 0xab, 0xc1, 0x82, 0x31, 0x75, - 0x12, 0x47, 0x1d, 0x83, 0x2f, 0xfd, 0x65, 0x00, 0x92, 0xf6, 0x6a, 0xb0, 0x5d, 0x39, 0x5f, 0xce, - 0x7a, 0x58, 0x84, 0x38, 0xd1, 0x4d, 0x1c, 0x67, 0x53, 0xd0, 0xf7, 0x28, 0x49, 0x15, 0x18, 0xd2, - 0x6a, 0xab, 0xc5, 0x62, 0x8f, 0xe6, 0xfe, 0xe9, 0x9e, 0x2a, 0xa1, 0xe7, 0x34, 0x55, 0x3a, 0x0f, - 0x3a, 0x55, 0x2e, 0x77, 0x7f, 0x7e, 0xa5, 0xcb, 0x1c, 0x36, 0x53, 0x2a, 0x8d, 0x67, 0x7e, 0x33, - 0x08, 0x83, 0xf6, 0x08, 0xcc, 0xd3, 0xaf, 0x61, 0x0a, 0xce, 0x97, 0x34, 0x0e, 0x6b, 0xd0, 0x4f, - 0xc7, 0x81, 0x76, 0x66, 0xc1, 0xb2, 0x36, 0xb0, 0xe1, 0x38, 0xdf, 0x7c, 0x38, 0xbc, 0xcd, 0x67, - 0xd3, 0xb6, 0x57, 0x6b, 0x7c, 0xf5, 0x93, 0x34, 0x40, 0x32, 0xf4, 0xd9, 0xe3, 0x43, 0x01, 0x64, - 0xe4, 0x27, 0xbe, 0x0e, 0x5d, 0xd6, 0x74, 0x5d, 0xdf, 0x87, 0x01, 0xb9, 0xfb, 0xa3, 0x87, 0x9d, - 0x84, 0xee, 0xfd, 0xc7, 0x08, 0x89, 0x51, 0x36, 0x6f, 0xd7, 0x33, 0xbf, 0x18, 0x87, 0x2e, 0xbb, - 0x1e, 0xfc, 0x0e, 0x74, 0xeb, 0x44, 0x14, 0x14, 0x48, 0x01, 0xc6, 0x7f, 0x6a, 0x3f, 0xa2, 0xc4, - 0xd9, 0xdf, 0x4c, 0x91, 0x4c, 0xb9, 0xd1, 0x96, 0x4b, 0xa6, 0x82, 0x69, 0x0d, 0x2e, 0x61, 0x1f, - 0xd8, 0x17, 0xd4, 0xbf, 0x41, 0x60, 0xe4, 0x3b, 0xc4, 0x1e, 0x8b, 0x23, 0xad, 0xc2, 0x80, 0xfe, - 0xba, 0xd9, 0xc3, 0x6a, 0x0a, 0xee, 0x0b, 0x38, 0xd7, 0x64, 0x61, 0xe4, 0x3b, 0xc4, 0xde, 0x92, - 0xe7, 0x09, 0xad, 0x75, 0x0b, 0x18, 0x96, 0x8f, 0x56, 0x56, 0xa0, 0x17, 0x3c, 0x99, 0x66, 0xf3, - 0x95, 0xfd, 0xd6, 0xe9, 0x1a, 0xec, 0x7c, 0x87, 0x98, 0x2c, 0x3a, 0x3f, 0xe9, 0x88, 0x5e, 0xfe, - 0xa7, 0xf0, 0x49, 0x0d, 0xf5, 0x42, 0x12, 0x80, 0x3c, 0x25, 0xf8, 0x5b, 0x8c, 0x26, 0xcf, 0xa3, - 0x4f, 0x6b, 0xe8, 0xd7, 0x00, 0x7e, 0x09, 0x41, 0x88, 0x40, 0x72, 0xbf, 0x83, 0xe0, 0x21, 0x0c, - 0x78, 0x47, 0x34, 0x17, 0xa6, 0x63, 0x03, 0x43, 0xf5, 0x83, 0x91, 0x8b, 0x5a, 0xdd, 0x0a, 0xe7, - 0x9b, 0xf4, 0x62, 0x2e, 0x41, 0xfb, 0x23, 0x6d, 0x7d, 0x3e, 0x9c, 0xf4, 0xfd, 0xf2, 0x5c, 0x98, - 0x7e, 0x03, 0x8e, 0xdc, 0xaa, 0xdc, 0xad, 0xa8, 0xf7, 0x2b, 0xf0, 0xa8, 0x0b, 0xc0, 0x81, 0x9e, - 0x89, 0xff, 0x31, 0x0a, 0x2f, 0xe3, 0x94, 0xbb, 0x5d, 0xa3, 0x2e, 0xb1, 0x31, 0x14, 0xcb, 0xaf, - 0xae, 0x2e, 0xa7, 0xa9, 0x58, 0xc8, 0x05, 0xd2, 0x08, 0xce, 0xd5, 0x15, 0x36, 0x65, 0xcd, 0x28, - 0x35, 0x45, 0x0f, 0xc5, 0x4c, 0x79, 0x94, 0xa6, 0x06, 0x6d, 0x18, 0xc6, 0x03, 0x3e, 0x05, 0x25, - 0x63, 0x73, 0x28, 0x44, 0x70, 0xc5, 0x67, 0xf1, 0x60, 0xe3, 0x7b, 0x62, 0x83, 0x1e, 0x02, 0xc2, - 0x87, 0x98, 0xaa, 0xe1, 0x26, 0x9c, 0x84, 0x63, 0x9e, 0x82, 0x6e, 0x8d, 0x89, 0x43, 0xf8, 0x85, - 0xa6, 0x2f, 0xdf, 0x19, 0xfb, 0xfa, 0xa8, 0xf9, 0xcf, 0x50, 0x8c, 0xea, 0x4e, 0x69, 0x53, 0x0d, - 0x82, 0x1b, 0x7b, 0x31, 0x3c, 0xd3, 0x92, 0x21, 0x3b, 0x88, 0x0c, 0x45, 0xd8, 0xd9, 0x1f, 0xae, - 0xb5, 0xe4, 0x97, 0x42, 0xb8, 0xf9, 0xcb, 0xa1, 0x6e, 0x57, 0xc3, 0xf4, 0x4c, 0x20, 0x85, 0xe0, - 0x02, 0x1e, 0xf2, 0xce, 0x85, 0xd6, 0xa3, 0xf1, 0x52, 0x43, 0xf1, 0xa6, 0xe3, 0x91, 0xc6, 0x29, - 0xdf, 0xa2, 0xce, 0x88, 0x9c, 0xc3, 0xc7, 0xfc, 0x4a, 0x34, 0x8e, 0xc9, 0x2b, 0xf8, 0xe5, 0xba, - 0x82, 0xde, 0x5d, 0x7b, 0x94, 0x29, 0x20, 0xf4, 0xd7, 0x50, 0x8f, 0x35, 0x9b, 0xd3, 0xa6, 0x2e, - 0xb7, 0x37, 0x35, 0x71, 0x6d, 0xfa, 0x50, 0x93, 0x46, 0x2e, 0x60, 0x7e, 0x0f, 0x6a, 0x8f, 0xfb, - 0x64, 0xa8, 0xdf, 0x43, 0x9e, 0x66, 0x8f, 0x61, 0x76, 0x6f, 0x36, 0x2a, 0xb1, 0xcd, 0xb3, 0x56, - 0x24, 0x1d, 0x36, 0xcc, 0x76, 0x00, 0x13, 0xf8, 0x05, 0xdf, 0xa5, 0xd9, 0x7a, 0xc4, 0xc6, 0x9a, - 0x51, 0x35, 0x1d, 0xb8, 0x73, 0xf8, 0x54, 0x2b, 0x0a, 0x67, 0xfc, 0x46, 0x71, 0xba, 0x45, 0xc1, - 0xc6, 0x61, 0x5c, 0xc2, 0x33, 0xfe, 0xe5, 0x7d, 0xf7, 0xfe, 0x51, 0xbb, 0x50, 0x51, 0x2d, 0xc9, - 0xe6, 0xb0, 0x30, 0x1b, 0xcc, 0x9c, 0x5a, 0x92, 0xe1, 0x02, 0x3e, 0xe9, 0x23, 0x7d, 0xec, 0x4e, - 0x5d, 0x1f, 0xea, 0xa6, 0x02, 0x92, 0xca, 0x4d, 0xe1, 0x24, 0x84, 0x5d, 0x2e, 0x71, 0xc4, 0xae, - 0x48, 0x46, 0xc8, 0x79, 0x8e, 0x9f, 0x60, 0x17, 0x24, 0x3f, 0xe8, 0x85, 0xde, 0x3a, 0x3d, 0x98, - 0xc8, 0xd7, 0xe6, 0xbe, 0x29, 0xf4, 0xe5, 0xf9, 0xa6, 0x02, 0xcf, 0xd9, 0x37, 0x15, 0xfc, 0x32, - 0x7d, 0x53, 0xa1, 0x43, 0xf1, 0x4d, 0xdd, 0x80, 0xc1, 0x2d, 0xc9, 0x5c, 0x99, 0xee, 0x3e, 0x2c, - 0xe8, 0xca, 0xb7, 0xe9, 0x29, 0xb4, 0x47, 0x18, 0xfc, 0xac, 0x86, 0x02, 0x53, 0x96, 0xa1, 0x3c, - 0x46, 0x0e, 0x94, 0x23, 0x81, 0xd4, 0x37, 0xc5, 0xbe, 0x2d, 0xe9, 0x81, 0xe8, 0xee, 0xb2, 0x15, - 0xe5, 0xdb, 0x32, 0x5e, 0xaa, 0x37, 0x78, 0x87, 0xdb, 0x32, 0x78, 0x33, 0xa5, 0xd4, 0x6b, 0xf4, - 0xfe, 0x26, 0xf1, 0xae, 0x57, 0x35, 0x59, 0xd7, 0x15, 0xb5, 0x62, 0x81, 0xb0, 0x23, 0xbe, 0x77, - 0x40, 0x3d, 0x80, 0x91, 0x39, 0x87, 0xca, 0xc5, 0x3c, 0xe9, 0x62, 0xc6, 0x40, 0xd8, 0xbb, 0x21, - 0xe8, 0x61, 0x4b, 0x44, 0xd6, 0x34, 0x55, 0x33, 0x0f, 0x87, 0xe6, 0x90, 0x5e, 0x6b, 0x17, 0x4d, - 0xdf, 0xb8, 0x12, 0xd8, 0x6d, 0x86, 0x05, 0xc2, 0x8e, 0x7a, 0xb0, 0xff, 0x4d, 0xd0, 0x02, 0x47, - 0x0c, 0x7c, 0x1f, 0xf5, 0x66, 0x92, 0x23, 0x09, 0xa1, 0x67, 0x9c, 0xaa, 0xb1, 0x63, 0x63, 0x17, - 0x26, 0x67, 0x66, 0x1c, 0xaf, 0xb6, 0xf9, 0x5f, 0xfc, 0xfb, 0x28, 0x36, 0xd2, 0xa5, 0x45, 0x52, - 0xef, 0xbf, 0x1f, 0xfa, 0x1e, 0x22, 0x00, 0x8a, 0x7f, 0x81, 0x3e, 0x78, 0x8c, 0x9e, 0x20, 0xfc, - 0x7b, 0xe8, 0xcf, 0x6a, 0xe8, 0xbf, 0x47, 0x44, 0x7e, 0x91, 0x1a, 0xd2, 0xe6, 0xba, 0x4f, 0x13, - 0xc3, 0x6d, 0x9a, 0xb0, 0x4c, 0xab, 0x5a, 0x7a, 0x4d, 0x36, 0xee, 0xcb, 0x72, 0x25, 0x3d, 0x3e, - 0x36, 0x96, 0x96, 0x2a, 0xa5, 0xf4, 0xe4, 0xcc, 0xcc, 0x68, 0x7a, 0x61, 0x63, 0x94, 0x5e, 0x07, - 0x4a, 0x4f, 0xa4, 0x5f, 0x4d, 0x4f, 0x3c, 0x78, 0x60, 0x96, 0x94, 0xca, 0xe5, 0xf4, 0xc4, 0xd8, - 0xd8, 0x85, 0x89, 0x99, 0x99, 0xb4, 0x6c, 0xf3, 0xd3, 0xf9, 0xf4, 0x64, 0xfa, 0xd5, 0xf4, 0xa4, - 0x53, 0x66, 0x92, 0xb6, 0xd3, 0x5d, 0x66, 0x34, 0xfd, 0xb6, 0xba, 0x9d, 0x2e, 0x4a, 0x95, 0xb4, - 0x54, 0xd6, 0xd5, 0x34, 0xc5, 0x19, 0xec, 0xa4, 0xa5, 0x4a, 0x5a, 0x7e, 0x20, 0x15, 0x0d, 0x57, - 0xd1, 0x74, 0x59, 0xb9, 0x2b, 0xa7, 0x27, 0xc6, 0x26, 0x46, 0xcd, 0x4f, 0xe9, 0xfb, 0xe0, 0x31, - 0xe2, 0x70, 0xfc, 0x69, 0x0d, 0x01, 0xfd, 0x02, 0x53, 0x54, 0x99, 0x2f, 0xe0, 0x83, 0xc7, 0x28, - 0x8c, 0x43, 0xbf, 0x5f, 0x43, 0x1d, 0x8e, 0x6f, 0x9f, 0x7c, 0xfd, 0xec, 0x07, 0x8f, 0xd1, 0xab, - 0x43, 0x5f, 0xf9, 0xb3, 0x1a, 0x9a, 0xa6, 0x57, 0x52, 0xd2, 0x9a, 0x6c, 0x0e, 0xa4, 0x5c, 0x31, - 0xcc, 0x1f, 0xb4, 0x26, 0x6b, 0x82, 0xf3, 0xe9, 0x6d, 0x7d, 0x5b, 0x2a, 0x97, 0x77, 0xd2, 0x52, - 0x7a, 0xd3, 0xd8, 0x2a, 0x93, 0x26, 0x98, 0x5c, 0x4e, 0x7e, 0xf0, 0x18, 0x1d, 0x1b, 0x1a, 0x7c, - 0x5a, 0x43, 0xbd, 0xb4, 0x62, 0x5b, 0x58, 0x0a, 0x6a, 0x69, 0xc7, 0x2c, 0x31, 0xf8, 0xc1, 0x63, - 0xd4, 0x3b, 0x94, 0xfc, 0xad, 0xc7, 0xa8, 0x47, 0xd2, 0x8b, 0x8a, 0xc2, 0xa7, 0xd7, 0x24, 0x5d, - 0x9e, 0x9a, 0xb0, 0x5b, 0x37, 0x64, 0xb6, 0x2e, 0xe4, 0xfa, 0x49, 0x2e, 0xaa, 0x75, 0x17, 0x5d, - 0x23, 0x8e, 0xd7, 0x21, 0xe1, 0xb1, 0x6e, 0xae, 0xab, 0xec, 0xee, 0xdb, 0x58, 0xab, 0x19, 0xbb, - 0x24, 0xdd, 0x93, 0x56, 0x08, 0x89, 0x6b, 0x4d, 0xc4, 0x7e, 0xf0, 0xd0, 0x94, 0xc2, 0x14, 0xe7, - 0x14, 0x7f, 0xcf, 0x65, 0xeb, 0x5f, 0x57, 0xf1, 0x1d, 0x08, 0xbe, 0x77, 0xdf, 0x20, 0xee, 0xf7, - 0xf6, 0x4e, 0x38, 0x2f, 0x7c, 0xf4, 0xd0, 0xa4, 0x60, 0xb8, 0x29, 0x5b, 0x4a, 0xb8, 0x2d, 0x53, - 0xe6, 0x7b, 0xfc, 0x1a, 0x74, 0x7b, 0x90, 0x5f, 0x31, 0x22, 0x06, 0x4e, 0xfa, 0xba, 0xcc, 0x22, - 0x23, 0x9d, 0xa9, 0xf7, 0xff, 0xf7, 0x7f, 0x8d, 0xc4, 0x98, 0xe2, 0xc2, 0x7a, 0xbd, 0x0a, 0xc7, - 0x2d, 0xdb, 0x92, 0xe5, 0x4c, 0x94, 0xa9, 0xdb, 0x49, 0xda, 0x90, 0x75, 0xea, 0xf6, 0x16, 0x53, - 0xac, 0x08, 0x33, 0xbe, 0x92, 0xde, 0x5b, 0x36, 0xdf, 0xe3, 0x1b, 0xcd, 0x30, 0x8c, 0x2d, 0xdc, - 0xdf, 0x42, 0x20, 0x85, 0xcc, 0xe3, 0x87, 0x1f, 0x82, 0x71, 0xb9, 0x29, 0x82, 0x91, 0xdb, 0x93, - 0xa1, 0x3f, 0x7e, 0x71, 0x0b, 0x4e, 0x5b, 0x9e, 0x60, 0x43, 0x53, 0x8a, 0x46, 0x41, 0xaf, 0x28, - 0xd4, 0x8c, 0x66, 0xa3, 0xc5, 0xe4, 0xe2, 0xdd, 0x96, 0xe8, 0x7a, 0x1b, 0xf3, 0x9e, 0x47, 0xe2, - 0x30, 0xf3, 0x15, 0x13, 0x5e, 0x2b, 0x15, 0xc5, 0xd4, 0xc8, 0xa8, 0x48, 0x9d, 0x33, 0xf9, 0xe0, - 0xb7, 0x00, 0x4b, 0x25, 0x7a, 0xa3, 0x4f, 0x2a, 0xb3, 0x2b, 0x86, 0x3a, 0x03, 0xd9, 0x9f, 0xac, - 0xe3, 0x4e, 0xaf, 0x2a, 0xde, 0x90, 0xb6, 0xe4, 0x6b, 0x8a, 0x6e, 0x78, 0xaa, 0x49, 0x3a, 0x4c, - 0x68, 0x29, 0x1d, 0x7f, 0x0f, 0x41, 0xb2, 0xa8, 0xaa, 0x77, 0x15, 0x99, 0xec, 0x2c, 0x5b, 0x6a, - 0x49, 0x59, 0xdf, 0x49, 0xf5, 0xf9, 0x6e, 0x6b, 0x73, 0xa4, 0x5c, 0x93, 0x6d, 0x6d, 0x9a, 0x4d, - 0xab, 0x8f, 0x1e, 0xa3, 0x08, 0x74, 0x56, 0x35, 0xf5, 0xc1, 0x4e, 0x7b, 0x1b, 0x53, 0x82, 0x55, - 0xbf, 0xaa, 0x5e, 0x27, 0x95, 0x0f, 0x7d, 0x15, 0x92, 0x0d, 0x12, 0xd4, 0xed, 0xbb, 0xea, 0xd9, - 0xcb, 0x77, 0xa5, 0x7e, 0x52, 0x43, 0x77, 0x61, 0x18, 0xe2, 0xb4, 0x0b, 0x6d, 0x6f, 0x51, 0x37, - 0x53, 0x64, 0xf8, 0xdc, 0x18, 0x3f, 0x09, 0xe7, 0x21, 0x4d, 0x57, 0xda, 0xb6, 0x26, 0xa7, 0xeb, - 0xe4, 0x81, 0x45, 0x11, 0xba, 0xc4, 0x67, 0xc7, 0xe1, 0x54, 0x33, 0xf7, 0x53, 0x78, 0x8a, 0x9f, - 0xe6, 0xb3, 0x59, 0x61, 0xa4, 0x19, 0xf0, 0x2f, 0xc9, 0x3c, 0x3f, 0x9d, 0xd9, 0x49, 0x3e, 0x3b, - 0xf5, 0xa3, 0x1a, 0x42, 0xc2, 0x6b, 0x70, 0xba, 0xd5, 0x94, 0x71, 0xc3, 0x0c, 0x31, 0x03, 0xf9, - 0x25, 0x19, 0x20, 0x30, 0x3b, 0x63, 0x72, 0xb0, 0xfd, 0x1f, 0x49, 0x0e, 0x67, 0xfe, 0x4d, 0x18, - 0x12, 0x0b, 0x64, 0xee, 0xcc, 0x6d, 0x4a, 0xe5, 0xb2, 0x5c, 0xd9, 0x90, 0xf1, 0x6d, 0x38, 0x6e, - 0x2d, 0xba, 0x2d, 0xc5, 0x50, 0x36, 0x28, 0xdc, 0x44, 0x97, 0x0d, 0x53, 0x56, 0xea, 0x7b, 0x60, - 0xd3, 0x8e, 0x31, 0xd2, 0xeb, 0x36, 0xe5, 0x0a, 0x23, 0xc4, 0x3f, 0x0d, 0xc7, 0xcc, 0xaf, 0x2b, - 0x2a, 0xea, 0xb6, 0x4e, 0xaf, 0x83, 0x3b, 0xec, 0x9b, 0x58, 0x04, 0xfd, 0xa4, 0xd0, 0x89, 0x8f, - 0x1e, 0x36, 0xe7, 0x93, 0xef, 0x10, 0x07, 0xed, 0x97, 0xb7, 0x74, 0x59, 0x73, 0xda, 0x81, 0xbf, - 0x0e, 0xa7, 0xac, 0xef, 0x7a, 0x4f, 0x2f, 0x14, 0xad, 0xef, 0x75, 0x5f, 0xfe, 0x6a, 0x7d, 0x09, - 0xfb, 0x04, 0x23, 0x5f, 0xd2, 0xed, 0xce, 0x72, 0xdd, 0xf6, 0xd2, 0x61, 0xb0, 0x19, 0xdb, 0x66, - 0xc0, 0xf4, 0x3a, 0xf1, 0x4d, 0x65, 0xb3, 0xcd, 0xdb, 0x05, 0x47, 0x40, 0x62, 0xff, 0x7b, 0xbe, - 0x95, 0x6e, 0xc0, 0x19, 0xeb, 0x9b, 0x8a, 0x52, 0xd5, 0x28, 0x6e, 0x4a, 0xfe, 0x2d, 0x88, 0xb6, - 0x84, 0xd8, 0xbc, 0xc0, 0x78, 0xcc, 0x51, 0x16, 0x7e, 0x15, 0x7d, 0x1b, 0x4e, 0xb4, 0xac, 0xa0, - 0x8d, 0x1d, 0xaa, 0x9e, 0xbb, 0xeb, 0xfb, 0x02, 0xe2, 0x50, 0xb1, 0x69, 0xdd, 0xc2, 0x38, 0xa4, - 0x9b, 0x0e, 0x78, 0x53, 0x67, 0xeb, 0x24, 0x0c, 0x37, 0x19, 0x8e, 0x96, 0xb0, 0xdd, 0xcb, 0x70, - 0xba, 0xd5, 0x77, 0xba, 0x69, 0xdd, 0x28, 0x5e, 0x4f, 0xf0, 0x01, 0x1b, 0x47, 0x9b, 0x79, 0xd4, - 0x0d, 0x7d, 0x0c, 0x48, 0x24, 0xe9, 0x72, 0xc9, 0x59, 0x63, 0x6d, 0xcc, 0xc5, 0xd6, 0xeb, 0xec, - 0xc0, 0x73, 0x31, 0xf8, 0xac, 0x73, 0xb1, 0xe3, 0x59, 0xe7, 0x62, 0xeb, 0x45, 0x76, 0x08, 0x73, - 0x31, 0xfc, 0x4c, 0x73, 0x11, 0xb5, 0x9a, 0x8b, 0x58, 0x81, 0xb3, 0xd6, 0x47, 0x1a, 0xf2, 0x56, - 0x55, 0xd5, 0x24, 0x6d, 0xa7, 0xb0, 0x56, 0x56, 0x8b, 0x77, 0x89, 0x7d, 0xba, 0xdd, 0x15, 0x97, - 0x61, 0x4c, 0x56, 0x2d, 0x1e, 0x02, 0x63, 0xe1, 0xaa, 0x6a, 0x1b, 0x06, 0x9d, 0x2a, 0xc8, 0xb4, - 0xb7, 0xea, 0x61, 0xab, 0x6d, 0xb2, 0xd5, 0x17, 0xda, 0x9c, 0x4d, 0x29, 0x68, 0x71, 0xf7, 0x2c, - 0xb9, 0x7e, 0xc3, 0xaf, 0xc8, 0x5e, 0xe2, 0x3f, 0xd6, 0x12, 0xb4, 0x76, 0x50, 0xf1, 0xdf, 0x7d, - 0x48, 0xe2, 0x3f, 0xd8, 0x5c, 0xfc, 0xcf, 0x40, 0x77, 0x45, 0x75, 0x26, 0x4c, 0xab, 0xcb, 0x27, - 0xf9, 0x90, 0x18, 0xab, 0xa8, 0xce, 0x6a, 0x5d, 0x81, 0x21, 0xa9, 0x7c, 0x5f, 0xda, 0xd1, 0x0b, - 0x4c, 0x69, 0x73, 0x2f, 0xae, 0x96, 0x98, 0xca, 0x90, 0x38, 0x48, 0x29, 0xe9, 0x26, 0xeb, 0x5a, - 0xad, 0xa6, 0x08, 0xf0, 0x32, 0x6d, 0x98, 0xd3, 0xad, 0xb4, 0xcb, 0x7c, 0x48, 0x3c, 0xe1, 0xe6, - 0x5c, 0x3f, 0xa1, 0xf1, 0x3b, 0xd0, 0xa5, 0x6d, 0x97, 0x65, 0x7a, 0x9b, 0x1e, 0xef, 0xcb, 0x0d, - 0x60, 0x33, 0x11, 0xb7, 0xcb, 0x54, 0x09, 0xa4, 0xce, 0x94, 0xa8, 0x66, 0xfd, 0xce, 0xee, 0x29, - 0x5c, 0x1b, 0xe4, 0xf1, 0x54, 0x7b, 0x82, 0x35, 0xe1, 0x72, 0x68, 0x12, 0x81, 0xfc, 0x15, 0x38, - 0xd3, 0x72, 0xa1, 0x79, 0x24, 0xb2, 0x4b, 0x1a, 0x13, 0x65, 0x69, 0xb2, 0x8d, 0x9d, 0x23, 0xf9, - 0xa4, 0x86, 0x62, 0xbb, 0x35, 0x04, 0x44, 0x4b, 0xca, 0xf2, 0xd9, 0x9c, 0x70, 0x1e, 0x38, 0xa7, - 0x8d, 0x2e, 0x38, 0x4c, 0x7c, 0xb7, 0x86, 0x7a, 0x08, 0x10, 0x67, 0x82, 0x27, 0x1a, 0x59, 0xa3, - 0xc8, 0x5f, 0x0a, 0x45, 0x81, 0x8b, 0xd9, 0xb7, 0x12, 0x4d, 0x1d, 0xeb, 0xe3, 0x2e, 0xe8, 0xf1, - 0x74, 0x29, 0xbe, 0x0c, 0xd1, 0x2d, 0xd9, 0x90, 0x4a, 0x92, 0x21, 0x35, 0x71, 0x01, 0x5e, 0x97, - 0x75, 0x5d, 0xda, 0x90, 0xaf, 0xcb, 0x86, 0x44, 0xfc, 0x31, 0x76, 0x79, 0x7c, 0x03, 0x42, 0xe6, - 0x49, 0x99, 0x6d, 0x0f, 0xf5, 0xd1, 0x02, 0x7c, 0x82, 0x88, 0x7a, 0x87, 0x73, 0xa5, 0x2a, 0x17, - 0x99, 0x35, 0x83, 0xf0, 0xb9, 0xfc, 0x1b, 0xd1, 0x4f, 0x6b, 0xe8, 0x57, 0xa2, 0x30, 0x08, 0x21, - 0x53, 0xe7, 0x1f, 0x4a, 0x40, 0x8f, 0x55, 0xd7, 0x68, 0x45, 0xda, 0x92, 0xe1, 0xbf, 0x43, 0xc0, - 0xd9, 0x2c, 0xd2, 0xb3, 0x04, 0x69, 0x33, 0xf2, 0x9b, 0x08, 0x7e, 0x1d, 0xc1, 0xcb, 0x30, 0x40, - 0xc2, 0x79, 0x59, 0x87, 0x23, 0xbb, 0xd3, 0x72, 0xc9, 0x79, 0xfa, 0x28, 0x6d, 0x53, 0xc2, 0x25, - 0x20, 0x47, 0xfc, 0x51, 0x6b, 0x09, 0x39, 0x47, 0x5c, 0x87, 0xac, 0xcf, 0x05, 0xb1, 0x72, 0x28, - 0x73, 0x70, 0xd2, 0x4d, 0xd9, 0x30, 0x8d, 0x72, 0x49, 0x36, 0xfb, 0x5d, 0x34, 0x0f, 0x21, 0xb0, - 0xb8, 0x3c, 0x72, 0x1f, 0xb6, 0x01, 0x43, 0x8c, 0xc6, 0x1c, 0xab, 0xec, 0x14, 0x94, 0x2a, 0x0d, - 0xb8, 0x72, 0x11, 0x4e, 0x91, 0x67, 0x4a, 0xd5, 0x42, 0xf7, 0x9b, 0xcb, 0xc4, 0xf9, 0x29, 0xeb, - 0x99, 0x6e, 0x2e, 0x38, 0x12, 0x5d, 0x66, 0xbf, 0x60, 0x14, 0x8e, 0x5b, 0x04, 0x2c, 0x76, 0x8c, - 0x65, 0x91, 0xd6, 0x65, 0x43, 0xcf, 0x24, 0xb8, 0xe0, 0x48, 0x8c, 0x16, 0x4e, 0xaf, 0xc8, 0x86, - 0x0e, 0xdb, 0x10, 0x9c, 0x5d, 0xb9, 0x31, 0x52, 0x81, 0x32, 0xf4, 0x42, 0xb7, 0x5d, 0xbf, 0xa4, - 0xb3, 0x88, 0x2f, 0x23, 0x90, 0xa2, 0x0f, 0xf5, 0x0a, 0xad, 0x5a, 0xd2, 0x0b, 0x95, 0xed, 0xad, - 0x35, 0x59, 0xd3, 0x33, 0x71, 0x2e, 0x38, 0x02, 0xb3, 0x2b, 0xe9, 0x1b, 0xf4, 0x37, 0xbc, 0x04, - 0xc7, 0xec, 0xb2, 0x56, 0xe5, 0xe6, 0xff, 0xa4, 0x66, 0xd2, 0xcc, 0xd9, 0x95, 0x1b, 0xb4, 0xda, - 0x57, 0x20, 0x4c, 0xa3, 0xcf, 0x8c, 0xe4, 0x60, 0x0c, 0x06, 0x68, 0x58, 0x19, 0x52, 0x33, 0x8d, - 0x5b, 0x43, 0x2b, 0x1f, 0xa0, 0xb7, 0x45, 0x46, 0x59, 0x30, 0x1c, 0x5d, 0x2e, 0xcb, 0x45, 0x43, - 0xd5, 0xe0, 0x06, 0x70, 0xab, 0xd7, 0x56, 0xd2, 0x57, 0x95, 0xca, 0x86, 0xac, 0x55, 0x35, 0xa5, - 0x62, 0xe8, 0x99, 0xcb, 0x70, 0x82, 0x94, 0x35, 0xca, 0x7a, 0x61, 0xdd, 0x79, 0x61, 0x35, 0x04, - 0x83, 0x7d, 0x06, 0x2a, 0x0d, 0xc5, 0x6f, 0xa8, 0x86, 0x73, 0x26, 0x2a, 0xc1, 0x98, 0x15, 0xf7, - 0x86, 0x43, 0xc2, 0x19, 0x36, 0xfa, 0x2c, 0x46, 0x8b, 0xf5, 0x1d, 0xc4, 0xd2, 0x53, 0x20, 0x47, - 0x2f, 0x9d, 0x0b, 0xc2, 0x14, 0x74, 0x53, 0x0a, 0x6a, 0xcb, 0x6e, 0x4e, 0x47, 0x2f, 0x45, 0xd8, - 0x74, 0x67, 0x80, 0xd8, 0xca, 0x39, 0x24, 0x0c, 0xb1, 0x29, 0x49, 0x8c, 0xe3, 0x75, 0xdc, 0x79, - 0x70, 0x5b, 0xe0, 0x39, 0x24, 0x1c, 0x87, 0x41, 0xa7, 0x30, 0x1b, 0x4f, 0xbb, 0xf4, 0x08, 0xb8, - 0xac, 0xea, 0xf5, 0x9c, 0xeb, 0xea, 0x3f, 0x0d, 0x11, 0x66, 0x16, 0xe5, 0x90, 0x30, 0xc0, 0x06, - 0x9c, 0x19, 0x5c, 0xb9, 0x60, 0x26, 0x44, 0x16, 0xd2, 0xcb, 0x76, 0x20, 0x1b, 0x0e, 0x09, 0xc3, - 0x6c, 0x02, 0xb8, 0xbc, 0x0a, 0x9e, 0xd0, 0x60, 0x3c, 0x74, 0xbf, 0xb9, 0x2d, 0x6b, 0x3b, 0x69, - 0x6a, 0x67, 0x24, 0xf5, 0x27, 0x09, 0xc5, 0xb7, 0xcc, 0xc7, 0xcc, 0x94, 0xc9, 0x05, 0x33, 0xe6, - 0x59, 0xd6, 0x64, 0x4d, 0x0f, 0xd7, 0x94, 0x35, 0x1b, 0x5e, 0xf2, 0xc4, 0xea, 0x32, 0x77, 0x3b, - 0x60, 0xe1, 0x41, 0x55, 0xa1, 0x11, 0xc3, 0x38, 0x34, 0x74, 0x9c, 0xcd, 0x2f, 0xd9, 0x7e, 0x58, - 0xb0, 0xc3, 0x2a, 0x67, 0x3e, 0x40, 0x90, 0x6c, 0xd8, 0x0f, 0xb0, 0x0a, 0x9d, 0x34, 0x74, 0x48, - 0x60, 0x5f, 0x31, 0x4b, 0x3c, 0x8c, 0xea, 0x2e, 0x7c, 0xbd, 0x66, 0xfd, 0x37, 0xe6, 0xb9, 0xf0, - 0x45, 0xeb, 0x61, 0xc1, 0x40, 0x0a, 0xd0, 0x9f, 0x37, 0x8c, 0xaa, 0x07, 0x42, 0x40, 0xda, 0x73, - 0xd5, 0x41, 0x1d, 0xa0, 0x36, 0x51, 0x07, 0xe0, 0xa0, 0x0e, 0x6c, 0xac, 0x41, 0xe6, 0x49, 0x17, - 0xf4, 0x52, 0xf7, 0x2d, 0x5d, 0x46, 0x2b, 0x5a, 0x91, 0x08, 0xec, 0x97, 0xa0, 0xcb, 0x96, 0x0d, - 0xec, 0x5e, 0x37, 0xb0, 0x6b, 0x3b, 0x7f, 0x41, 0x54, 0xe2, 0xa8, 0x52, 0xa5, 0xb3, 0x0a, 0xf3, - 0xd0, 0x65, 0xaf, 0x65, 0x66, 0x00, 0xef, 0x31, 0x8b, 0x46, 0x47, 0xc2, 0xa9, 0xdf, 0xf8, 0x1f, - 0x53, 0xe7, 0x49, 0x69, 0x49, 0xa7, 0x8b, 0x1b, 0x17, 0x18, 0x9c, 0x83, 0xdd, 0x31, 0xa6, 0xaa, - 0xc4, 0x2b, 0xed, 0xde, 0xd7, 0xf2, 0xeb, 0x8b, 0x7c, 0x07, 0xc5, 0x7c, 0xb0, 0x2b, 0xc8, 0x93, - 0x90, 0xf0, 0xc4, 0xf9, 0x65, 0x61, 0x20, 0x9c, 0xf6, 0xa7, 0xde, 0x0f, 0xe4, 0x3b, 0xc4, 0xf8, - 0x36, 0x09, 0xf9, 0x6b, 0x95, 0xc1, 0xdf, 0x80, 0x3e, 0xbf, 0xe9, 0xc0, 0x14, 0xcf, 0xa1, 0x51, - 0x1a, 0x87, 0x7b, 0xd4, 0x8a, 0xc3, 0x3d, 0xba, 0x6a, 0x95, 0x10, 0x12, 0x26, 0x5f, 0xf8, 0x27, - 0x28, 0xb2, 0xd4, 0x19, 0x7d, 0xff, 0xdf, 0xfd, 0x9d, 0x84, 0xd8, 0xeb, 0x30, 0xb2, 0x4b, 0x79, - 0x76, 0x40, 0xd8, 0xe7, 0x0e, 0xf8, 0x55, 0x48, 0xe8, 0x77, 0xc9, 0x70, 0xa8, 0x45, 0x59, 0xd7, - 0x4d, 0x7d, 0xb8, 0xbb, 0xe5, 0x91, 0x22, 0x6e, 0x16, 0x5f, 0xb6, 0x4b, 0xe3, 0xab, 0xd0, 0x7b, - 0x5f, 0x5a, 0x2f, 0xd4, 0x33, 0xe9, 0x69, 0xc9, 0x24, 0x79, 0x5f, 0x5a, 0x5f, 0x69, 0xe0, 0xb3, - 0xa6, 0x1a, 0x0d, 0x7c, 0xe2, 0xad, 0xf9, 0xac, 0xa9, 0x46, 0x1d, 0x9f, 0x7f, 0x80, 0x20, 0x42, - 0xef, 0x0f, 0xea, 0xe4, 0xc2, 0x64, 0xbc, 0xfd, 0xb8, 0x47, 0xee, 0x59, 0x4a, 0xb7, 0x66, 0x61, - 0xe9, 0xa3, 0xc7, 0xe8, 0xfc, 0xd0, 0x8b, 0x8d, 0x85, 0xc9, 0x22, 0x27, 0x1a, 0x94, 0x5c, 0x62, - 0xfb, 0x81, 0x4e, 0x26, 0xc1, 0x23, 0xb7, 0x11, 0x97, 0x03, 0x37, 0x08, 0x87, 0x35, 0xeb, 0xf2, - 0x2f, 0x04, 0x3e, 0xa9, 0xa1, 0xb7, 0x20, 0x0e, 0xd1, 0xeb, 0xd6, 0x30, 0x04, 0xb2, 0x63, 0x90, - 0x80, 0x08, 0xad, 0x55, 0xc7, 0x81, 0xec, 0xd4, 0x79, 0x04, 0x29, 0x48, 0xd2, 0x36, 0xa5, 0x5d, - 0x93, 0x09, 0x8d, 0x9f, 0x47, 0x70, 0x1c, 0xfa, 0x1c, 0xa9, 0x93, 0x76, 0x66, 0x02, 0x9a, 0x21, - 0xb0, 0x8a, 0xff, 0x1a, 0x35, 0xd7, 0x40, 0x64, 0x1f, 0xa6, 0x23, 0xcb, 0x70, 0x03, 0x62, 0xae, - 0x65, 0x69, 0xfe, 0xb0, 0x17, 0x1e, 0x9c, 0x82, 0x5e, 0xd7, 0xba, 0xb2, 0x44, 0x71, 0x26, 0xca, - 0x85, 0x98, 0x10, 0x4c, 0x36, 0xac, 0x0b, 0x78, 0x09, 0x12, 0x75, 0x2d, 0x1c, 0x1a, 0xf0, 0x5f, - 0x06, 0xc2, 0x08, 0xf4, 0x59, 0x9b, 0xa7, 0xba, 0xad, 0x15, 0x3d, 0x78, 0x6e, 0x0b, 0x9c, 0x1a, - 0x9e, 0xe0, 0x27, 0xf9, 0xec, 0xa4, 0x70, 0x0b, 0x7a, 0x24, 0x0f, 0x3c, 0x79, 0xfe, 0x49, 0x0d, - 0x75, 0xef, 0xd6, 0x50, 0x8c, 0x68, 0x92, 0x39, 0x9e, 0x5c, 0xe6, 0x35, 0xd5, 0xd5, 0x0f, 0xf6, - 0x31, 0x70, 0xb6, 0xe6, 0x19, 0xe0, 0x82, 0x14, 0x00, 0xbb, 0x14, 0x8a, 0xc6, 0xb8, 0xee, 0xcc, - 0xff, 0x19, 0x00, 0x6e, 0x7e, 0x5e, 0x5d, 0x61, 0x53, 0x83, 0x34, 0x0f, 0xcf, 0x41, 0xd4, 0xd2, - 0x34, 0x9a, 0x20, 0x9a, 0x58, 0xcc, 0xbb, 0x59, 0xbd, 0x42, 0x64, 0x09, 0xd5, 0xfa, 0x89, 0x9a, - 0x18, 0x91, 0xf4, 0x0a, 0x11, 0xb2, 0x65, 0xe8, 0x26, 0xe1, 0xc0, 0xb5, 0x1d, 0x2b, 0xfc, 0x97, - 0x39, 0x55, 0x5f, 0x68, 0x12, 0x3c, 0x8f, 0x96, 0x9c, 0x53, 0x4b, 0xb2, 0xf0, 0xa2, 0x39, 0xa3, - 0x7a, 0x3e, 0x44, 0x90, 0x89, 0x3e, 0x42, 0x9d, 0x1c, 0xca, 0xb0, 0x3b, 0x8f, 0x1e, 0xb1, 0x9f, - 0x42, 0x62, 0x8c, 0xb1, 0x27, 0xb5, 0xfd, 0x5d, 0x44, 0x83, 0x99, 0xf8, 0x28, 0x1d, 0xcc, 0x82, - 0x70, 0xd1, 0xbf, 0xe6, 0xd5, 0xb2, 0xee, 0xd2, 0x60, 0xdc, 0x22, 0xff, 0x24, 0x73, 0x4a, 0x93, - 0x0d, 0x86, 0xfb, 0xfe, 0x63, 0xd4, 0xad, 0x6f, 0x4a, 0x9a, 0x5c, 0xe2, 0xd3, 0xe6, 0x54, 0x10, - 0xfb, 0x0d, 0x3f, 0x4a, 0x86, 0x48, 0x1e, 0x27, 0xb1, 0xce, 0x69, 0x67, 0x87, 0xb8, 0xce, 0xcc, - 0x2f, 0x22, 0x18, 0x9c, 0x5d, 0x5e, 0x5c, 0xd6, 0x54, 0x83, 0x82, 0xcf, 0x9d, 0x15, 0x88, 0x79, - 0xe8, 0x24, 0x51, 0xae, 0xf6, 0x30, 0xe1, 0xd0, 0x42, 0x78, 0x04, 0x42, 0x25, 0xb9, 0x62, 0xdd, - 0xd5, 0x6d, 0x56, 0x98, 0x94, 0x11, 0x30, 0x84, 0xe9, 0x5c, 0x72, 0xa2, 0xdb, 0xb1, 0xad, 0xf1, - 0xb7, 0xa3, 0x70, 0x6c, 0x76, 0x79, 0xd1, 0x0e, 0x81, 0xeb, 0x69, 0x17, 0x7e, 0x6d, 0xbf, 0x07, - 0x0e, 0xeb, 0xc4, 0x67, 0x0b, 0xdd, 0x77, 0xad, 0x9a, 0xd9, 0x47, 0x5d, 0x69, 0x3f, 0xbe, 0xa3, - 0x5f, 0x1f, 0x31, 0xfe, 0xd6, 0xd7, 0x78, 0xe3, 0x71, 0x76, 0x3d, 0x43, 0x3c, 0x4e, 0x78, 0xa6, - 0x78, 0x9c, 0xdf, 0xf3, 0x8d, 0x60, 0x4c, 0x37, 0xfc, 0xd2, 0xc7, 0x8f, 0xd1, 0xb5, 0x28, 0xca, - 0x5c, 0xb1, 0x23, 0x18, 0x57, 0xed, 0x0f, 0xf3, 0x0b, 0x5a, 0xfc, 0x7c, 0xe3, 0x18, 0x77, 0x1e, - 0x4a, 0x1c, 0xe3, 0x3b, 0x8d, 0x61, 0x36, 0xc3, 0xfb, 0x08, 0xb3, 0x49, 0x7c, 0x43, 0x3f, 0x6a, - 0x2f, 0xd4, 0x66, 0xe4, 0x19, 0x43, 0x6d, 0xfe, 0x7d, 0x73, 0x07, 0x9a, 0x86, 0x1e, 0xd7, 0x0e, - 0x84, 0xb2, 0xd0, 0x03, 0x61, 0xb6, 0xe8, 0x50, 0xee, 0xbc, 0xb9, 0x85, 0x78, 0x83, 0x03, 0x47, - 0x2e, 0x11, 0x27, 0xf9, 0xd4, 0xa7, 0x35, 0xf4, 0x7f, 0xb4, 0xd8, 0x60, 0x5e, 0x85, 0x98, 0x39, - 0x35, 0xad, 0xc3, 0xed, 0x28, 0xf0, 0xd0, 0x0f, 0xdd, 0x74, 0x6e, 0x8e, 0x92, 0x55, 0x9a, 0xeb, - 0x24, 0x31, 0x04, 0xa1, 0x17, 0x62, 0xec, 0xb1, 0xb9, 0x1e, 0x73, 0xa1, 0x79, 0xb9, 0xb2, 0xf3, - 0x57, 0x24, 0x9a, 0xb0, 0x7f, 0x04, 0xcc, 0xae, 0xdd, 0x1a, 0x8a, 0xda, 0x1b, 0x44, 0x94, 0xeb, - 0xca, 0xfc, 0x49, 0x04, 0x06, 0xac, 0xa8, 0xab, 0x3f, 0xd1, 0x62, 0x22, 0xfa, 0x0c, 0x62, 0xa2, - 0xeb, 0x99, 0xc4, 0xc4, 0x55, 0x77, 0x14, 0x5e, 0x2a, 0x71, 0x5e, 0xb2, 0xb2, 0x43, 0xf8, 0xf1, - 0x6b, 0x96, 0xed, 0x41, 0x75, 0x67, 0x7b, 0xa0, 0x52, 0x46, 0x64, 0x91, 0xdd, 0x27, 0x5a, 0x4b, - 0x19, 0x1a, 0x1d, 0xb5, 0xfe, 0xc1, 0x41, 0x72, 0x44, 0x74, 0x3e, 0x87, 0xb0, 0xba, 0xe1, 0x67, - 0x5c, 0xeb, 0xbf, 0x62, 0xae, 0xf5, 0x1b, 0x7b, 0xac, 0xf5, 0xa6, 0x49, 0x17, 0xa6, 0xf9, 0xec, - 0x18, 0xb9, 0x5a, 0xe8, 0x4e, 0xba, 0x60, 0x8a, 0x80, 0x27, 0x7f, 0xb5, 0x44, 0xc0, 0x01, 0x72, - 0x37, 0xf8, 0xaf, 0x71, 0x62, 0xf6, 0xb4, 0xd7, 0x78, 0x84, 0x8b, 0x66, 0x7e, 0x23, 0x00, 0xb8, - 0x61, 0x49, 0xe9, 0xf8, 0x67, 0x90, 0x6f, 0xfc, 0x4f, 0x7a, 0x64, 0x7e, 0xad, 0xfd, 0xa5, 0xea, - 0xaf, 0x65, 0xb4, 0x1d, 0x09, 0x14, 0xff, 0x34, 0x70, 0xf5, 0x93, 0x98, 0x59, 0x12, 0x5e, 0xdd, - 0x67, 0xd8, 0xe8, 0xf6, 0x5a, 0x10, 0xb7, 0x03, 0x4b, 0xd3, 0x08, 0xb9, 0xbf, 0x16, 0x06, 0x6c, - 0xea, 0xc8, 0x8e, 0x77, 0xe0, 0x99, 0xcd, 0xb2, 0x3c, 0x74, 0x12, 0x0d, 0x7d, 0x0f, 0x35, 0x8e, - 0x16, 0xc2, 0x3a, 0xe0, 0x52, 0x49, 0xd5, 0x0b, 0x9e, 0x43, 0x04, 0x13, 0x68, 0xed, 0x5e, 0xa6, - 0xae, 0x57, 0xf2, 0xd9, 0x89, 0xfe, 0x03, 0x14, 0x48, 0xa3, 0x3c, 0x12, 0x39, 0xb3, 0x02, 0xcf, - 0x21, 0xe0, 0x3a, 0xc4, 0xbd, 0xf6, 0x4e, 0xa6, 0x68, 0x9d, 0xf5, 0x5f, 0xa7, 0xd4, 0x9e, 0x61, - 0x9f, 0x06, 0xf2, 0x48, 0xec, 0xb6, 0x8c, 0x1c, 0x44, 0x41, 0x6f, 0x66, 0x22, 0x80, 0xc3, 0x31, - 0x11, 0x5c, 0xfe, 0xcd, 0xc0, 0xe7, 0x57, 0xa2, 0x59, 0x3e, 0xc7, 0x9b, 0xeb, 0xf9, 0xd3, 0x1a, - 0xfa, 0x7b, 0x81, 0xe6, 0xab, 0xf7, 0x02, 0xc4, 0x16, 0x97, 0xd3, 0x96, 0xb5, 0x56, 0x18, 0x86, - 0xa1, 0xe6, 0x96, 0x5d, 0x2e, 0x00, 0x39, 0x08, 0xcd, 0xae, 0xdc, 0xd0, 0x85, 0x11, 0x78, 0xb1, - 0x71, 0x18, 0xfc, 0x6c, 0xb2, 0x5c, 0x10, 0x72, 0xd0, 0x45, 0xcf, 0x34, 0x8a, 0xac, 0x0b, 0x67, - 0xe1, 0x94, 0x0f, 0xa1, 0xfb, 0x74, 0xc4, 0x75, 0x8e, 0x21, 0x78, 0xd7, 0xc7, 0xa0, 0x9a, 0x87, - 0x11, 0x1f, 0xd2, 0x03, 0x98, 0x57, 0x85, 0x0c, 0x24, 0x5d, 0xde, 0x0c, 0xb6, 0x45, 0xf6, 0x3c, - 0xa9, 0xa1, 0xe0, 0x6e, 0x0d, 0x05, 0x9e, 0xd6, 0x10, 0x1a, 0x17, 0xce, 0x78, 0xca, 0xb8, 0x7c, - 0x2c, 0x5d, 0x5e, 0xc7, 0x35, 0x3d, 0xd8, 0x98, 0xa2, 0xe3, 0xb7, 0x11, 0xf4, 0xfa, 0x84, 0x53, - 0xc6, 0xdf, 0x45, 0x70, 0xd2, 0x13, 0x82, 0xdf, 0x0a, 0xe4, 0x6b, 0xf5, 0x6b, 0x6a, 0xa0, 0x6d, - 0x20, 0xd9, 0xf9, 0x8f, 0x1e, 0xf6, 0x38, 0x03, 0xa4, 0xcb, 0x86, 0x1d, 0x06, 0xc7, 0x5c, 0xba, - 0x21, 0xe7, 0xce, 0xa3, 0x38, 0xa4, 0x39, 0x19, 0x20, 0x58, 0x6b, 0xac, 0x51, 0xce, 0xfc, 0x9d, - 0x4e, 0xe8, 0xb5, 0x23, 0x2b, 0x3b, 0xa0, 0x37, 0x7c, 0x1d, 0x3c, 0xa9, 0x24, 0xd8, 0x52, 0x1e, - 0x69, 0x2b, 0x67, 0x17, 0xc1, 0x37, 0x8a, 0x31, 0x57, 0xad, 0x4d, 0xa2, 0x67, 0x07, 0x9f, 0x39, - 0x7a, 0x76, 0xe8, 0x39, 0x46, 0xcf, 0xee, 0x7c, 0x5e, 0xd1, 0xb3, 0xa7, 0x21, 0x56, 0x51, 0xa9, - 0x77, 0x49, 0x91, 0xf5, 0x3d, 0xec, 0x6e, 0x50, 0x51, 0x97, 0x59, 0x49, 0xfc, 0x26, 0x44, 0x6d, - 0xaa, 0x9e, 0x16, 0x71, 0x1a, 0x7d, 0x12, 0xc9, 0x8d, 0x3a, 0x31, 0xa9, 0xf2, 0x48, 0xb4, 0xd9, - 0x5c, 0x3e, 0xff, 0x49, 0x0d, 0x9d, 0x81, 0x0c, 0xa4, 0x9c, 0x04, 0x1f, 0xf6, 0xf2, 0xa0, 0x2e, - 0xdf, 0xb0, 0x29, 0x3e, 0xb2, 0x59, 0xe1, 0xe5, 0xa6, 0x91, 0xa7, 0x93, 0xae, 0xe5, 0xd2, 0x49, - 0xe0, 0xaf, 0x42, 0x06, 0x7a, 0xbc, 0x17, 0xe1, 0x93, 0x2e, 0x7b, 0x4d, 0x27, 0xb1, 0xd7, 0xd8, - 0x0b, 0x26, 0xc6, 0x75, 0x67, 0xbe, 0x8b, 0x20, 0xb9, 0x42, 0xdd, 0x6e, 0x4e, 0x43, 0xf1, 0xb7, - 0x5d, 0xdf, 0x8b, 0xda, 0x5e, 0x18, 0x97, 0x3f, 0x7a, 0x18, 0xf7, 0xba, 0xf0, 0x5a, 0xdf, 0x04, - 0x76, 0x6f, 0x72, 0x76, 0x7d, 0x99, 0x9f, 0x45, 0x90, 0x9c, 0xad, 0x2a, 0xf3, 0xf2, 0xba, 0x52, - 0x21, 0x70, 0x3d, 0xd2, 0x22, 0x0d, 0xcc, 0xb3, 0x65, 0xa1, 0x64, 0x3f, 0xdd, 0x4f, 0xc3, 0xce, - 0x7e, 0xf4, 0x30, 0xee, 0xa5, 0xf6, 0x85, 0x7f, 0x9a, 0x65, 0x9c, 0x6a, 0xf5, 0xcc, 0xcf, 0x87, - 0xa0, 0xd7, 0x6c, 0x89, 0xa2, 0x17, 0xd5, 0x7b, 0xb2, 0xb6, 0xc3, 0xc0, 0x00, 0xb8, 0x04, 0xa7, - 0xed, 0x78, 0x46, 0xb2, 0xa4, 0x55, 0x0a, 0xeb, 0x9a, 0xba, 0x65, 0x5f, 0xcb, 0x28, 0x18, 0x9a, - 0xb4, 0xbe, 0xae, 0x14, 0xf7, 0xb0, 0x9f, 0x9c, 0xb2, 0x02, 0x1e, 0x99, 0x1c, 0xae, 0x6a, 0xea, - 0x96, 0x75, 0x99, 0x63, 0x95, 0x92, 0xe3, 0x35, 0xc8, 0x30, 0x97, 0x61, 0xab, 0x4a, 0x5a, 0xaf, - 0x64, 0x86, 0xac, 0x6c, 0x5a, 0xc7, 0x4f, 0xc3, 0xb0, 0x2e, 0x57, 0x74, 0xc5, 0x50, 0xee, 0xc9, - 0x05, 0x73, 0x43, 0x2a, 0x94, 0x64, 0x8f, 0xba, 0xce, 0xd6, 0x62, 0xfd, 0x6c, 0xb7, 0x32, 0x53, - 0x8e, 0xae, 0x58, 0xd4, 0xf3, 0x92, 0x21, 0xcd, 0xcb, 0x6e, 0x7d, 0x8d, 0x19, 0xe0, 0x8e, 0xeb, - 0xcd, 0x8b, 0xe0, 0xbb, 0x30, 0x58, 0x62, 0xbd, 0x2b, 0x97, 0x0a, 0xe6, 0x10, 0xd9, 0x48, 0x8d, - 0xb0, 0x6f, 0xac, 0x71, 0xbb, 0xe2, 0x79, 0x9b, 0x6c, 0x76, 0x79, 0xd1, 0x42, 0x69, 0xb0, 0x03, - 0x57, 0xbf, 0xc3, 0x73, 0xb6, 0xaa, 0x58, 0x2f, 0x99, 0x29, 0x6c, 0x8a, 0x9f, 0x14, 0xce, 0xc1, - 0xf1, 0x16, 0x7d, 0xea, 0xb1, 0x4e, 0x51, 0xd7, 0x38, 0xe2, 0x02, 0x99, 0xff, 0x32, 0x00, 0x43, - 0x14, 0xad, 0x60, 0xea, 0x2e, 0xf6, 0x87, 0x58, 0x93, 0xe2, 0x3e, 0x0c, 0xb0, 0xe1, 0x22, 0xf7, - 0xd9, 0x5d, 0xe8, 0x90, 0xc0, 0xbe, 0xee, 0xf9, 0xcd, 0x6e, 0x1b, 0xaa, 0xa3, 0xd9, 0xb1, 0x83, - 0x24, 0x03, 0xe3, 0xd2, 0x0a, 0xbc, 0x25, 0xb0, 0x48, 0xfa, 0xd0, 0xb7, 0xe6, 0xe0, 0x9e, 0xf8, - 0xde, 0x7e, 0x46, 0xea, 0xe5, 0x29, 0x9c, 0x85, 0x81, 0x3a, 0x5e, 0x96, 0x38, 0x89, 0x59, 0xa8, - 0x88, 0x71, 0x3e, 0xc7, 0x3a, 0xe6, 0x5f, 0x21, 0xe8, 0xf3, 0x6b, 0xb5, 0xa3, 0x55, 0x06, 0xda, - 0xd1, 0x2a, 0xb7, 0xa0, 0xdb, 0x03, 0x4c, 0x79, 0x06, 0xa8, 0x57, 0xef, 0x9f, 0x3d, 0xec, 0x36, - 0x64, 0xdd, 0xe0, 0x4b, 0xf2, 0x3d, 0xf3, 0x2f, 0x43, 0x7e, 0xc5, 0x5c, 0xc8, 0x2f, 0xe1, 0x98, - 0x6d, 0x8c, 0xac, 0x07, 0x7b, 0xb0, 0xcf, 0xfa, 0x7f, 0x3a, 0xe1, 0xc4, 0x8a, 0x52, 0xd9, 0x28, - 0xcb, 0xd7, 0x54, 0xa9, 0x24, 0xb0, 0xf1, 0x99, 0xad, 0x56, 0xad, 0x11, 0xdf, 0x00, 0x8e, 0x8d, - 0xb8, 0x35, 0xdf, 0xac, 0xd0, 0x87, 0x97, 0xdb, 0x4f, 0x46, 0x50, 0x2f, 0x5c, 0xf2, 0x24, 0x9a, - 0x1f, 0x99, 0x65, 0xd6, 0x1b, 0x77, 0xf0, 0x23, 0xa7, 0xa6, 0xd6, 0x0b, 0xdf, 0x0a, 0x7e, 0xe4, - 0x30, 0xf9, 0x29, 0x1b, 0x55, 0x4e, 0x14, 0x38, 0x7b, 0x9d, 0xb3, 0x15, 0xde, 0x6e, 0x38, 0x80, - 0xe6, 0x2b, 0x80, 0xcc, 0x28, 0x64, 0x41, 0xd0, 0xe7, 0x4b, 0xaa, 0x6e, 0x97, 0x70, 0x43, 0xd0, - 0xeb, 0x6a, 0x0f, 0xef, 0x31, 0x45, 0x9d, 0x98, 0x84, 0x5e, 0x8e, 0x5f, 0x87, 0x53, 0xec, 0x73, - 0xea, 0x20, 0x32, 0x0e, 0xeb, 0xd6, 0x18, 0xb6, 0x13, 0x94, 0xfc, 0xba, 0x1b, 0x6f, 0xe5, 0xb0, - 0x2f, 0x40, 0xda, 0x8e, 0x37, 0xd5, 0x8c, 0x7f, 0x57, 0x4b, 0xfe, 0x27, 0xad, 0xf0, 0x53, 0xbe, - 0x15, 0x08, 0xe7, 0x68, 0x32, 0x18, 0x7b, 0x3c, 0x9b, 0x22, 0x8f, 0xce, 0x43, 0xbf, 0xb7, 0xcb, - 0xec, 0x92, 0x2e, 0x9c, 0x11, 0x81, 0x0b, 0xe5, 0xe0, 0x54, 0xb3, 0xb6, 0xee, 0x99, 0x71, 0xca, - 0x01, 0x7d, 0x7e, 0x2f, 0x04, 0x29, 0x53, 0xa4, 0xb2, 0xe3, 0xbe, 0x17, 0x05, 0xf7, 0x2e, 0xd4, - 0xed, 0xa3, 0xfb, 0xb8, 0x61, 0x9e, 0x6c, 0xd8, 0x84, 0xc5, 0x1e, 0xcf, 0x86, 0x8b, 0x5f, 0x87, - 0xde, 0x7b, 0x76, 0x6c, 0xeb, 0x02, 0xeb, 0xbf, 0xd2, 0x1e, 0x33, 0x1d, 0x3b, 0x24, 0x0c, 0xb5, - 0x53, 0xc2, 0xbf, 0x8e, 0xe0, 0xa4, 0x8b, 0x93, 0x54, 0x2e, 0x17, 0xf4, 0xaa, 0x5c, 0xb4, 0x2d, - 0x07, 0x3a, 0x53, 0x5f, 0x97, 0xdb, 0x9c, 0xf4, 0x37, 0xab, 0x72, 0x65, 0xb6, 0xaa, 0x38, 0x81, - 0xb7, 0x67, 0xcb, 0x65, 0xb3, 0x83, 0x2c, 0xbb, 0x80, 0xee, 0x6c, 0x40, 0x4c, 0xd4, 0x0c, 0xdd, - 0x6b, 0x5a, 0x16, 0x7f, 0x1b, 0x06, 0x5c, 0x8d, 0x63, 0x3a, 0xb0, 0x4b, 0xf1, 0x6d, 0xd7, 0x81, - 0xce, 0x9a, 0x23, 0xcf, 0x56, 0x15, 0x61, 0xc7, 0xac, 0x82, 0x18, 0x11, 0xac, 0x16, 0xf4, 0x39, - 0x75, 0x50, 0x0d, 0x99, 0x38, 0xc5, 0x2e, 0x40, 0xca, 0x55, 0xb7, 0x21, 0x69, 0x1b, 0x72, 0x0b, - 0x6d, 0x92, 0x6a, 0x8a, 0x99, 0xdf, 0xea, 0x84, 0x97, 0xda, 0xee, 0x02, 0x7c, 0x17, 0x12, 0xae, - 0x2a, 0xb6, 0xd4, 0x92, 0x15, 0x26, 0xe0, 0x95, 0x83, 0xf6, 0xf6, 0x75, 0xb5, 0x64, 0xd9, 0x6a, - 0xe3, 0xf7, 0x3c, 0x4f, 0xb1, 0x0a, 0xc9, 0x75, 0x73, 0x78, 0x59, 0xc0, 0x70, 0x5a, 0x1d, 0x15, - 0xc2, 0xaf, 0xee, 0xaf, 0xba, 0xab, 0x52, 0xb9, 0xcc, 0xa2, 0x88, 0xbb, 0xea, 0x4b, 0xac, 0x7b, - 0x1f, 0xe3, 0x22, 0x0c, 0x9b, 0xeb, 0x55, 0x57, 0xbe, 0x4d, 0xa2, 0xaa, 0x95, 0x76, 0xa8, 0x03, - 0xdd, 0x69, 0x56, 0xab, 0x80, 0x45, 0x42, 0xf8, 0x87, 0x35, 0x84, 0xc8, 0xc6, 0x7b, 0xdc, 0xe6, - 0x22, 0xa8, 0xa5, 0x9d, 0x95, 0xbb, 0x4a, 0xd5, 0xf9, 0x5e, 0x9f, 0x4a, 0xd6, 0x25, 0xa5, 0xec, - 0xae, 0xa4, 0xf3, 0x00, 0x95, 0x5c, 0x95, 0x94, 0xb2, 0xab, 0x92, 0x32, 0x44, 0xeb, 0x94, 0xad, - 0xab, 0x07, 0x1d, 0xa0, 0x39, 0x12, 0xf5, 0xcf, 0x5e, 0x04, 0x8e, 0x63, 0xc5, 0xae, 0xe1, 0xf2, - 0xb9, 0x4f, 0x6a, 0xe8, 0x34, 0xbc, 0x40, 0x64, 0x4b, 0x7a, 0xb1, 0x72, 0x4f, 0xae, 0x18, 0xaa, - 0xb6, 0x93, 0x76, 0x3e, 0x09, 0x93, 0xc0, 0x49, 0x53, 0xc2, 0x18, 0xf4, 0xd7, 0x7d, 0xbb, 0x2b, - 0xb3, 0x43, 0x88, 0x81, 0xd6, 0xad, 0x04, 0xce, 0xec, 0x46, 0x48, 0x90, 0x0b, 0x65, 0xfe, 0x97, - 0x10, 0x9c, 0xda, 0xa3, 0x61, 0xf8, 0x9d, 0x3d, 0x07, 0xaf, 0xb5, 0xa6, 0xd2, 0x72, 0xd0, 0xde, - 0xd9, 0x73, 0xd0, 0x82, 0xfb, 0x60, 0x5e, 0x37, 0x58, 0x1b, 0x70, 0xa6, 0xaa, 0xa9, 0x55, 0x59, - 0x33, 0x76, 0x5c, 0x1c, 0x6d, 0x6d, 0xd9, 0xba, 0x67, 0xb6, 0x17, 0x3a, 0xdd, 0xe2, 0xe1, 0x70, - 0xb6, 0xfa, 0x86, 0x5d, 0x43, 0xc3, 0xbf, 0x84, 0xe0, 0x74, 0xcb, 0x9a, 0xa8, 0xbc, 0x62, 0x33, - 0xe6, 0xb5, 0xfd, 0x89, 0x2a, 0x45, 0xad, 0x2c, 0x33, 0xde, 0x96, 0xba, 0x83, 0xc4, 0x74, 0xf3, - 0x46, 0x51, 0xc1, 0x65, 0x6e, 0x81, 0xfe, 0x53, 0xc2, 0x0f, 0xa6, 0xdb, 0xba, 0xf1, 0xfe, 0x30, - 0x5d, 0x4f, 0xea, 0xb4, 0xbf, 0x44, 0x70, 0xac, 0x69, 0x7b, 0xf1, 0xb7, 0x21, 0x41, 0x20, 0x6c, - 0x0e, 0xd2, 0x9d, 0x49, 0xb7, 0xa5, 0x7d, 0x77, 0x05, 0x63, 0x79, 0x55, 0xd5, 0xde, 0xf4, 0x72, - 0xb4, 0x64, 0x4f, 0x5d, 0x45, 0x78, 0xdd, 0xc1, 0x89, 0xd1, 0x79, 0x2a, 0x3c, 0x43, 0x9d, 0x0c, - 0xf1, 0x27, 0x44, 0x7f, 0x68, 0x2d, 0x56, 0x1b, 0x47, 0xf6, 0x61, 0x00, 0x4e, 0xb7, 0xd1, 0x4c, - 0x7c, 0x1b, 0x8e, 0x13, 0xab, 0x44, 0xc1, 0x75, 0x3b, 0xaf, 0xed, 0x2b, 0x20, 0xc7, 0x08, 0xe9, - 0xac, 0x4d, 0xe9, 0xe2, 0xfb, 0x2e, 0x0c, 0x9b, 0x9b, 0x7f, 0x0b, 0xd6, 0xc1, 0x3d, 0x6e, 0x97, - 0x30, 0x6a, 0x3f, 0xee, 0xc2, 0x45, 0x38, 0xe1, 0xcb, 0xb4, 0xd9, 0xa4, 0x62, 0xc7, 0x81, 0xff, - 0x0f, 0xc1, 0xf1, 0x16, 0xfd, 0x88, 0x97, 0x21, 0xd5, 0xd0, 0x62, 0xef, 0x68, 0x35, 0x6b, 0xee, - 0x40, 0x5d, 0x5b, 0x2d, 0x8e, 0xb7, 0xe9, 0x35, 0xd2, 0x66, 0x4c, 0x83, 0x7b, 0xdc, 0x64, 0x6b, - 0xe8, 0x03, 0x6b, 0xc4, 0x79, 0x38, 0xd6, 0xc8, 0x6e, 0x8f, 0xaf, 0xff, 0xed, 0x10, 0xf4, 0xfb, - 0xee, 0xcb, 0x75, 0xda, 0x8c, 0xb9, 0xff, 0x12, 0x63, 0xee, 0x3d, 0x79, 0x9f, 0x73, 0xd4, 0x97, - 0xfb, 0x2c, 0xe1, 0xe4, 0xd5, 0x66, 0x9c, 0xe7, 0x36, 0x96, 0xae, 0x6d, 0x19, 0x4b, 0xb0, 0x74, - 0x2e, 0xb1, 0xba, 0x0c, 0x29, 0xc2, 0xc0, 0x0e, 0x33, 0xd0, 0xde, 0x16, 0x9b, 0x47, 0xe2, 0x80, - 0x49, 0x67, 0xdd, 0x98, 0x74, 0x71, 0xfc, 0x65, 0x04, 0xa7, 0x7c, 0xb8, 0x79, 0x3a, 0x26, 0xbc, - 0x2f, 0x81, 0xd1, 0xa2, 0x63, 0xec, 0xc0, 0x43, 0x48, 0x3c, 0xa1, 0x35, 0xb4, 0xc5, 0x29, 0x27, - 0xbc, 0xd4, 0x38, 0x48, 0xcd, 0x44, 0x68, 0xae, 0x45, 0xfb, 0xdb, 0x11, 0x9f, 0x7f, 0x3f, 0x00, - 0x03, 0xfe, 0x2a, 0x15, 0xbe, 0x0e, 0x83, 0x0d, 0xca, 0x1a, 0xb5, 0x6b, 0xee, 0x11, 0xe5, 0xb1, - 0xaf, 0x4e, 0x0b, 0x23, 0x36, 0x5d, 0x7c, 0x1f, 0x52, 0x8d, 0xec, 0xd8, 0xf6, 0xb4, 0x3f, 0x4d, - 0x9a, 0xee, 0x33, 0x75, 0xcd, 0xcd, 0x77, 0x88, 0xfd, 0x75, 0xf5, 0xb2, 0xfd, 0xe8, 0x65, 0xdf, - 0x8a, 0x9d, 0xbe, 0x09, 0x59, 0xfd, 0x49, 0x55, 0xe8, 0x3a, 0xa4, 0x5b, 0xe6, 0x1f, 0x21, 0xe8, - 0xf7, 0xad, 0x11, 0x7f, 0x88, 0xe0, 0x98, 0x5a, 0x95, 0x2b, 0xc4, 0x12, 0xe6, 0xea, 0x7c, 0xb7, - 0xa3, 0xb3, 0xdd, 0x60, 0x5b, 0x2e, 0xde, 0x75, 0x19, 0x39, 0x13, 0xfe, 0x58, 0xe5, 0x01, 0xb5, - 0x7e, 0xa2, 0x51, 0x77, 0xe3, 0x93, 0x08, 0x24, 0xea, 0x98, 0x1d, 0x02, 0xd4, 0x62, 0xda, 0xf2, - 0x43, 0x13, 0x15, 0x6c, 0x8f, 0x65, 0x0b, 0xb4, 0xa8, 0xa9, 0x70, 0xe1, 0xaf, 0xd8, 0x80, 0x44, - 0x4d, 0x26, 0x01, 0xd5, 0x5a, 0x4f, 0x1d, 0xe6, 0x04, 0x17, 0x49, 0x59, 0x3c, 0x63, 0x39, 0xc5, - 0xe9, 0x5d, 0x9c, 0x3d, 0x02, 0x4d, 0xb2, 0x16, 0x92, 0xbb, 0x65, 0x0d, 0x69, 0x88, 0xe1, 0x90, - 0xd3, 0x10, 0xcf, 0xb9, 0x51, 0x19, 0x51, 0x17, 0xc0, 0x03, 0xb5, 0x06, 0x64, 0x78, 0x72, 0x25, - 0xcf, 0xb8, 0x21, 0x19, 0x14, 0x25, 0x32, 0xd4, 0x1c, 0x25, 0x92, 0x77, 0x81, 0x2b, 0x2e, 0xff, - 0xbf, 0x81, 0x4f, 0x6b, 0xe8, 0xff, 0x6e, 0xe1, 0xa5, 0xbc, 0xed, 0xc5, 0x18, 0xbc, 0x0e, 0x0b, - 0x0e, 0x98, 0x80, 0x0c, 0x62, 0x2e, 0x64, 0x0e, 0x10, 0x0c, 0xd6, 0x0d, 0x50, 0x2e, 0x4c, 0x3b, - 0xdf, 0x41, 0x24, 0xd0, 0xce, 0xcf, 0x75, 0x92, 0x8e, 0x85, 0xb5, 0x86, 0x5c, 0xc1, 0xcb, 0x70, - 0xe3, 0x80, 0x79, 0x81, 0x07, 0x5c, 0xdf, 0x9f, 0x73, 0x50, 0x08, 0xa0, 0x37, 0x26, 0x05, 0xfe, - 0x26, 0x7c, 0xe3, 0x50, 0x92, 0x02, 0xa7, 0x5c, 0x55, 0x62, 0x37, 0xda, 0xa1, 0x9d, 0xd4, 0xbf, - 0x30, 0x86, 0x84, 0x4c, 0x3d, 0xc2, 0xd6, 0x8a, 0x11, 0xeb, 0xf2, 0xea, 0xbc, 0x0c, 0xfd, 0x45, - 0xab, 0xfd, 0xc4, 0xfe, 0xed, 0x86, 0xec, 0x82, 0x15, 0x82, 0x39, 0x3b, 0xc6, 0xbb, 0xfd, 0xa1, - 0x34, 0x5a, 0x70, 0x84, 0x8b, 0x66, 0xfe, 0xe7, 0x20, 0x1c, 0x6f, 0xb1, 0x8d, 0xe0, 0x05, 0xc0, - 0x72, 0x65, 0x5d, 0xd5, 0x8a, 0x24, 0x52, 0xb4, 0xb5, 0xb0, 0x5a, 0x6b, 0x2d, 0x49, 0x17, 0x05, - 0x5b, 0x5d, 0x73, 0xe0, 0x7e, 0x58, 0x68, 0x07, 0x51, 0xc0, 0xb9, 0x08, 0xe8, 0x3a, 0x7b, 0x8a, - 0xe0, 0xa4, 0x85, 0xf2, 0x71, 0x89, 0x40, 0xa6, 0xd6, 0x2b, 0x32, 0x8d, 0xcc, 0x18, 0x6f, 0xf0, - 0x88, 0x36, 0x7c, 0xdf, 0xb2, 0x4d, 0x21, 0x68, 0x9f, 0xd5, 0x50, 0x7e, 0x59, 0xbc, 0xb9, 0xbc, - 0x20, 0xae, 0xbe, 0x5d, 0x58, 0x9e, 0x5d, 0xcd, 0x17, 0x96, 0x67, 0xc5, 0xd9, 0xeb, 0x0b, 0xab, - 0x0b, 0xe2, 0x0a, 0x6f, 0xbf, 0x78, 0xf3, 0xd6, 0x82, 0xf8, 0xb6, 0xef, 0x9b, 0xfc, 0xea, 0xea, - 0x72, 0x21, 0xbf, 0x30, 0x3b, 0xbf, 0x20, 0xae, 0x34, 0xc0, 0x81, 0x23, 0xbe, 0x51, 0x6e, 0x8f, - 0xb3, 0x8f, 0xf0, 0x6d, 0xd0, 0x28, 0x1c, 0x77, 0x7d, 0x9b, 0xbb, 0xd3, 0x48, 0x7a, 0xe7, 0x26, - 0x4a, 0xd8, 0x6f, 0x06, 0xe1, 0x74, 0x1b, 0xda, 0xc0, 0x5f, 0xa9, 0xe1, 0xfc, 0x5d, 0x04, 0xc3, - 0x7e, 0xfa, 0xc4, 0x33, 0x8d, 0xa7, 0xf0, 0x59, 0x0d, 0xf5, 0x37, 0x1d, 0x1c, 0xee, 0x43, 0xd4, - 0x93, 0x89, 0x3d, 0x42, 0x51, 0x0e, 0x0d, 0x85, 0x02, 0xa1, 0x4e, 0xff, 0xf1, 0xf1, 0x51, 0x98, - 0x9e, 0x79, 0x80, 0x7e, 0xb7, 0x13, 0xfa, 0x7d, 0xad, 0x72, 0xf8, 0x57, 0xdb, 0xd8, 0xd9, 0x0f, - 0x6c, 0x1f, 0x7b, 0xa6, 0xfd, 0xfd, 0xc8, 0x84, 0xf6, 0x93, 0x62, 0x42, 0x3b, 0xf5, 0x49, 0x0d, - 0x1d, 0x87, 0x63, 0xc0, 0x39, 0x54, 0x69, 0x32, 0x7f, 0x9e, 0xd5, 0x74, 0xf6, 0x8f, 0x62, 0x3e, - 0x87, 0xbb, 0x43, 0xd2, 0xf3, 0x7c, 0xac, 0xc1, 0x81, 0xe7, 0x66, 0x0d, 0xf6, 0x22, 0x6c, 0x23, - 0xcf, 0x80, 0xb0, 0x8d, 0x3e, 0x13, 0xc2, 0xb6, 0x5e, 0x57, 0xec, 0x39, 0x64, 0x5d, 0x71, 0xc1, - 0xad, 0x2b, 0xc6, 0x48, 0x53, 0x5f, 0xfc, 0xf8, 0x31, 0x8a, 0x47, 0xd1, 0xf9, 0xfd, 0x68, 0x8b, - 0x5f, 0x71, 0x6b, 0x8b, 0xdd, 0x84, 0xcd, 0x09, 0xc2, 0x26, 0xe0, 0x0f, 0xc5, 0xf5, 0xe8, 0x8b, - 0xff, 0x45, 0xf8, 0xd3, 0x1a, 0xfa, 0x6e, 0xb8, 0xb9, 0xbe, 0x78, 0x10, 0x50, 0xe9, 0xdf, 0x70, - 0x5d, 0x10, 0x76, 0x11, 0x0c, 0x32, 0xd4, 0x72, 0xda, 0xb5, 0xca, 0xcd, 0xc9, 0x3d, 0xf2, 0xbb, - 0x08, 0xfe, 0x31, 0x82, 0x59, 0xb8, 0x54, 0xb7, 0x9e, 0x46, 0xfd, 0xad, 0x0c, 0xa3, 0x0d, 0x7b, - 0xb7, 0xa5, 0x70, 0xcf, 0xc1, 0xcc, 0x01, 0x58, 0xd4, 0x29, 0xf3, 0xe7, 0xe0, 0x54, 0x3d, 0x93, - 0x3a, 0x29, 0xce, 0x8e, 0x03, 0x7f, 0x8e, 0x20, 0x65, 0x47, 0x96, 0xaa, 0xff, 0xa6, 0x3f, 0x44, - 0xf0, 0x2f, 0x11, 0x2c, 0xc1, 0x6c, 0x3d, 0xaf, 0x3d, 0x4c, 0x28, 0xcd, 0x3f, 0xee, 0x1a, 0x08, - 0xcf, 0xc2, 0xab, 0xee, 0x2b, 0xc7, 0xe0, 0xbc, 0xef, 0x57, 0xfa, 0xb0, 0xa4, 0x9f, 0x2b, 0xa4, - 0xeb, 0x21, 0xce, 0x09, 0x57, 0x92, 0x94, 0xe0, 0x34, 0x7f, 0x49, 0xb8, 0xd0, 0x4c, 0x97, 0xef, - 0x7b, 0x52, 0x43, 0x3d, 0x2c, 0x09, 0x75, 0x34, 0x3b, 0x4e, 0x53, 0xc6, 0xd8, 0x7a, 0x3c, 0xcd, - 0x19, 0x0d, 0x5c, 0x2c, 0xf3, 0x3b, 0x08, 0x70, 0xa3, 0x8c, 0xf0, 0x44, 0x65, 0x6f, 0x7e, 0x76, - 0xf4, 0xde, 0xd7, 0xa1, 0x51, 0xd9, 0xdf, 0x82, 0x08, 0x9b, 0x84, 0x04, 0xc7, 0xdc, 0x2a, 0x22, - 0xbb, 0x70, 0x9a, 0xa0, 0x5f, 0x3f, 0x44, 0x91, 0x4c, 0xdd, 0xc5, 0x4b, 0x4f, 0xf4, 0x73, 0xc6, - 0x2e, 0xf3, 0x8f, 0x11, 0x0c, 0xd3, 0x70, 0xc2, 0x34, 0xc9, 0x2f, 0x4d, 0xc8, 0x63, 0x5d, 0xc4, - 0x26, 0x78, 0xc7, 0xbf, 0x87, 0x60, 0x88, 0xc5, 0x1f, 0x66, 0x19, 0x47, 0x69, 0x5a, 0x45, 0x8f, - 0x6a, 0xc4, 0xfb, 0x83, 0x7c, 0xfd, 0x59, 0xb7, 0x77, 0x35, 0x7b, 0x50, 0xf5, 0x25, 0xd6, 0x33, - 0x3b, 0xd0, 0xcf, 0x80, 0xc7, 0x4a, 0x49, 0x66, 0xe9, 0x74, 0x48, 0x4b, 0xbf, 0x09, 0x61, 0x16, - 0xd3, 0x13, 0xed, 0xcb, 0xb2, 0xd9, 0xc0, 0xad, 0x3e, 0x5f, 0x97, 0xc8, 0xf8, 0x66, 0xfe, 0x6e, - 0x08, 0x8e, 0xb7, 0x28, 0x8d, 0xf3, 0x0e, 0x10, 0xe4, 0x3d, 0xbd, 0xa0, 0x54, 0x74, 0xb9, 0xb5, - 0x5e, 0x6f, 0x27, 0x86, 0x4e, 0x30, 0xb2, 0x25, 0x7d, 0x91, 0x10, 0xe1, 0x05, 0xe8, 0xb5, 0x39, - 0x10, 0xff, 0x38, 0x0d, 0x4d, 0xb8, 0x87, 0x76, 0xff, 0x1e, 0x23, 0x9f, 0x2d, 0x97, 0x69, 0xa8, - 0xc2, 0x5f, 0x44, 0x30, 0xe4, 0xc3, 0xa7, 0x20, 0x3f, 0x28, 0xca, 0x55, 0xcb, 0x34, 0x73, 0xb3, - 0xdd, 0x7e, 0x5a, 0x99, 0x77, 0xc2, 0x40, 0xda, 0x15, 0xdd, 0x51, 0x8c, 0xcd, 0x05, 0xc2, 0xce, - 0x8a, 0x30, 0x9a, 0xef, 0x10, 0x07, 0xea, 0x5b, 0x42, 0x4b, 0x60, 0x03, 0xb0, 0xdd, 0x9c, 0x7a, - 0x0c, 0xdb, 0x95, 0x83, 0x37, 0x83, 0x0e, 0x15, 0xeb, 0x4b, 0xbb, 0x17, 0x2c, 0x0d, 0xda, 0x56, - 0xcc, 0xfa, 0x1c, 0xba, 0xb4, 0x5d, 0x04, 0xa3, 0xac, 0xf0, 0x12, 0xe0, 0xf7, 0xa4, 0x7b, 0x52, - 0xc1, 0x8e, 0x18, 0x62, 0xc7, 0x7c, 0x09, 0xb2, 0x43, 0x44, 0x84, 0xc6, 0x43, 0xb5, 0x20, 0x55, - 0xff, 0x14, 0xc1, 0xf9, 0x76, 0xbb, 0x03, 0x7f, 0x07, 0x41, 0xb7, 0xfc, 0xa0, 0x58, 0xde, 0x2e, - 0xc9, 0xd6, 0x1d, 0x59, 0x73, 0xcd, 0xcc, 0xb5, 0xf9, 0xbd, 0x2b, 0x9b, 0x52, 0x55, 0x76, 0x6a, - 0x5a, 0x30, 0x39, 0xe9, 0xd6, 0xa9, 0x82, 0x84, 0x2a, 0x0c, 0x7f, 0x88, 0x82, 0xdc, 0xfb, 0x4d, - 0x80, 0x9b, 0x31, 0x56, 0xb5, 0xb9, 0xa0, 0x33, 0xff, 0x24, 0x00, 0x83, 0x4d, 0xfa, 0x0f, 0xff, - 0x2c, 0xb2, 0xc2, 0x2e, 0xd0, 0xf6, 0xcd, 0x1e, 0x7c, 0x3c, 0xac, 0xd6, 0x8d, 0x5a, 0x0b, 0xbd, - 0xae, 0x85, 0xcd, 0x40, 0xa6, 0xb4, 0x7e, 0xfc, 0x0b, 0xf5, 0x1d, 0x16, 0x38, 0xbc, 0x0e, 0x3b, - 0xd3, 0xa4, 0x49, 0x2d, 0x3a, 0xed, 0xbb, 0x21, 0x18, 0x6a, 0xfe, 0x91, 0xcf, 0x74, 0xaf, 0xc3, - 0xab, 0x10, 0x07, 0xdb, 0x55, 0x88, 0x67, 0x20, 0xcc, 0x48, 0x42, 0xbe, 0x19, 0x26, 0x69, 0x31, - 0x47, 0xdf, 0xcf, 0x77, 0x88, 0x8c, 0x00, 0xe7, 0xd8, 0x2e, 0xd4, 0xd9, 0x4e, 0x6e, 0x10, 0xba, - 0xff, 0x5c, 0xfe, 0x23, 0xf4, 0x69, 0x0d, 0xfd, 0x6f, 0x2d, 0xae, 0x37, 0x6d, 0xdb, 0xaa, 0xe4, - 0x5d, 0x50, 0xfc, 0x54, 0xc9, 0x3e, 0xc0, 0xf4, 0xa7, 0x3b, 0x68, 0x0a, 0x9c, 0x82, 0x5e, 0xf6, - 0x54, 0xdf, 0x5e, 0xb7, 0xa3, 0xa3, 0xe0, 0xe8, 0x50, 0x78, 0x85, 0xfc, 0x86, 0x93, 0x36, 0x99, - 0x2b, 0x22, 0x0a, 0x8e, 0x0c, 0x75, 0xd2, 0x58, 0xe4, 0xaf, 0xd3, 0xb8, 0x2c, 0x23, 0x5f, 0x85, - 0x57, 0x61, 0x10, 0x62, 0xae, 0x38, 0x2b, 0x26, 0x8f, 0x65, 0xfb, 0xe2, 0xbe, 0x1d, 0xf3, 0x1c, - 0xfa, 0x01, 0x9c, 0x00, 0x2b, 0x36, 0x23, 0x82, 0xe1, 0xf2, 0x44, 0x80, 0x71, 0x2b, 0x07, 0x16, - 0xe4, 0x26, 0x48, 0x83, 0x8c, 0x07, 0xb8, 0x60, 0xe6, 0x7f, 0x0d, 0xc1, 0x09, 0x27, 0x13, 0x9e, - 0x15, 0x64, 0xd9, 0xb5, 0x11, 0xfc, 0x36, 0x82, 0x41, 0x76, 0xb3, 0x8e, 0xe0, 0x66, 0xab, 0x2e, - 0x68, 0x13, 0x5d, 0x5d, 0x5f, 0x6d, 0x73, 0x32, 0x2f, 0x5b, 0x5c, 0x66, 0xab, 0x55, 0x4b, 0xa3, - 0x20, 0x03, 0xbb, 0xdf, 0xb5, 0xd5, 0x5f, 0xf5, 0xe1, 0xa4, 0x63, 0x01, 0xb8, 0xf7, 0xf4, 0x42, - 0x49, 0xbd, 0x5f, 0x31, 0xab, 0x2d, 0xd8, 0x99, 0xc1, 0xba, 0x84, 0xd4, 0x67, 0x35, 0x04, 0x17, - 0x69, 0xc2, 0xc8, 0xd1, 0xf7, 0x74, 0xe7, 0xb4, 0x22, 0xc6, 0xdf, 0xd3, 0xe7, 0x19, 0x01, 0x39, - 0xa7, 0xcc, 0x03, 0xb6, 0xc1, 0x78, 0xea, 0x9a, 0x52, 0x96, 0x0b, 0x7a, 0xe9, 0xee, 0x1e, 0x76, - 0x7f, 0x3b, 0xfb, 0x23, 0x21, 0x58, 0x29, 0xdd, 0xc5, 0x3a, 0x24, 0x1d, 0x6a, 0x2b, 0x65, 0x28, - 0x9d, 0xa6, 0x0b, 0x6d, 0x76, 0x96, 0xa0, 0x1a, 0xd6, 0x60, 0x30, 0xbe, 0xf3, 0x6f, 0xb8, 0x92, - 0x56, 0x76, 0x88, 0x89, 0x2d, 0xab, 0x3a, 0xfa, 0xf8, 0xf2, 0xd7, 0x3f, 0xa9, 0xa1, 0xb7, 0xe1, - 0x04, 0x0c, 0xda, 0xfd, 0x9c, 0x9e, 0xad, 0x56, 0xd3, 0x4e, 0xff, 0xa0, 0x2c, 0x9c, 0x86, 0xe1, - 0x3b, 0xf2, 0x5a, 0x9a, 0x05, 0x89, 0x70, 0xed, 0x21, 0x36, 0x6e, 0x05, 0xe5, 0xa0, 0x0f, 0x12, - 0xb4, 0x4a, 0xd7, 0x53, 0x7a, 0x41, 0xc6, 0xf5, 0x4d, 0x5e, 0x17, 0x54, 0xd0, 0x71, 0x41, 0x99, - 0xa7, 0xfc, 0x5f, 0x41, 0x30, 0xdc, 0xfa, 0x03, 0xf0, 0xb6, 0xcd, 0xce, 0x15, 0x70, 0x65, 0x7f, - 0xca, 0x0e, 0x65, 0xcb, 0xf0, 0xe5, 0x4e, 0xc0, 0x0b, 0x67, 0x07, 0x15, 0x39, 0x5a, 0x85, 0xf3, - 0x2e, 0xf3, 0xf3, 0x31, 0x48, 0x35, 0x9b, 0x87, 0x7f, 0xfd, 0xc5, 0x1f, 0x16, 0xa0, 0x93, 0x20, - 0x3d, 0x52, 0x61, 0x5f, 0x5d, 0xb7, 0x59, 0x4f, 0x13, 0x34, 0x86, 0x48, 0x49, 0xf1, 0x2d, 0xe8, - 0xb6, 0x8c, 0xe6, 0x6b, 0x6a, 0x69, 0x27, 0x15, 0x21, 0xac, 0x72, 0xed, 0xe6, 0x96, 0xa1, 0xa4, - 0x82, 0x5a, 0xda, 0x11, 0x63, 0x9a, 0xf3, 0x03, 0xdf, 0x83, 0x6e, 0x57, 0x88, 0x27, 0x1a, 0x1d, - 0x3e, 0x9e, 0x3b, 0x51, 0x1f, 0xcc, 0x5e, 0x35, 0x5c, 0x27, 0x84, 0x49, 0x73, 0x25, 0xe3, 0x0f, - 0x51, 0x22, 0xd3, 0xf3, 0x08, 0x01, 0x87, 0x86, 0xc2, 0x1d, 0x28, 0x18, 0xea, 0x0c, 0xdb, 0x0a, - 0x79, 0xd8, 0x3f, 0x2b, 0x9c, 0x93, 0xea, 0x49, 0x37, 0x07, 0xee, 0xbe, 0xbc, 0xc6, 0x6e, 0x99, - 0x31, 0x57, 0x5b, 0x33, 0x4f, 0x7c, 0xd7, 0x7d, 0x79, 0x8d, 0xae, 0x1d, 0xfc, 0x15, 0xe8, 0x61, - 0xf3, 0x97, 0x51, 0xc6, 0x5a, 0x52, 0x76, 0xd3, 0xc2, 0x8c, 0x58, 0xa1, 0x29, 0x85, 0xbd, 0x0c, - 0xba, 0xf7, 0x85, 0xdd, 0xbf, 0x23, 0xaf, 0x79, 0xe6, 0x3f, 0x91, 0x0a, 0x88, 0x64, 0x19, 0xbe, - 0xee, 0xae, 0x2a, 0x0f, 0x7d, 0xdb, 0x15, 0x82, 0x83, 0x95, 0x4b, 0x85, 0xf5, 0xb2, 0x7a, 0xbf, - 0x50, 0x96, 0xd6, 0xe4, 0x72, 0xcb, 0xd8, 0x3b, 0x01, 0x11, 0xdb, 0x34, 0x57, 0xcb, 0xea, 0xfd, - 0x6b, 0x26, 0x05, 0xbe, 0x03, 0xe0, 0xa2, 0x4f, 0xf8, 0xa6, 0x63, 0x72, 0x76, 0x12, 0x9b, 0x6e, - 0x4e, 0x32, 0xe4, 0x0d, 0x55, 0x53, 0x64, 0x7d, 0x8e, 0xc8, 0x0c, 0xd2, 0xd0, 0x80, 0xd8, 0xb5, - 0x6e, 0x15, 0xb8, 0xfc, 0x1f, 0x02, 0x9f, 0x5f, 0xe9, 0xb3, 0x22, 0x46, 0x93, 0xd4, 0x6c, 0xfc, - 0x25, 0x3e, 0x3b, 0xce, 0xcf, 0x7c, 0x5a, 0x43, 0x7f, 0xd8, 0xc2, 0x4b, 0xb8, 0x6a, 0x6f, 0xd5, - 0x4b, 0x90, 0x6f, 0x7f, 0xab, 0xde, 0x63, 0x27, 0x3e, 0xc6, 0x76, 0xe2, 0x24, 0x24, 0xa0, 0x87, - 0x2e, 0xb1, 0x5c, 0xa7, 0xf9, 0x44, 0x87, 0x14, 0x74, 0x92, 0x95, 0x20, 0x24, 0xd8, 0x32, 0xe2, - 0x3a, 0x59, 0x90, 0x9c, 0x17, 0xa1, 0xdb, 0xb2, 0xa5, 0x98, 0x93, 0x59, 0x18, 0xf0, 0xae, 0x11, - 0xbb, 0xdc, 0x1a, 0xc4, 0x98, 0xec, 0x25, 0x16, 0xa7, 0x15, 0x78, 0xd3, 0x6c, 0xb7, 0x33, 0xff, - 0x72, 0xc1, 0x3b, 0xf2, 0x1a, 0x0c, 0xd6, 0xcd, 0xad, 0x5c, 0x98, 0x0e, 0x29, 0x9c, 0xf6, 0x99, - 0x37, 0xb9, 0xb8, 0x29, 0xd1, 0xa5, 0x4a, 0x29, 0xcd, 0x0a, 0x9d, 0x74, 0xec, 0x3f, 0xd8, 0xbb, - 0xa6, 0x88, 0x0f, 0xb0, 0x6d, 0x05, 0x41, 0xb8, 0x08, 0x83, 0xe4, 0x0e, 0x0c, 0x9d, 0x60, 0x0d, - 0xf6, 0x03, 0xb0, 0xed, 0x07, 0x2c, 0xe5, 0xac, 0x70, 0x12, 0x92, 0xce, 0x0c, 0x71, 0xdf, 0xbb, - 0x26, 0xe1, 0x20, 0x6d, 0x67, 0x21, 0x35, 0x2f, 0xf4, 0x70, 0xf1, 0xcc, 0x1f, 0x05, 0x20, 0xe6, - 0x12, 0x08, 0x18, 0x03, 0xe9, 0x26, 0x96, 0x38, 0x97, 0xfc, 0x8f, 0xc7, 0x21, 0xe6, 0x1a, 0x3d, - 0xb6, 0xa1, 0x73, 0x7f, 0x51, 0x43, 0x41, 0x12, 0x15, 0x5f, 0xeb, 0xe4, 0x10, 0x8d, 0xcc, 0x05, - 0xa4, 0x18, 0xb1, 0xb2, 0xe1, 0x29, 0x88, 0xb9, 0x06, 0x97, 0x88, 0xe3, 0x2e, 0xa1, 0xd7, 0x22, - 0x02, 0x2d, 0x4a, 0x88, 0x9e, 0x10, 0x79, 0x0a, 0xa4, 0x24, 0xa1, 0xbb, 0xfc, 0x3b, 0xe8, 0xf3, - 0x2b, 0xc1, 0x2c, 0x3f, 0xf1, 0x49, 0x0d, 0x9d, 0x83, 0xb3, 0x30, 0xec, 0x1e, 0xd4, 0xb4, 0x0d, - 0xec, 0x4a, 0x5b, 0x17, 0xfa, 0xcd, 0xa2, 0x9f, 0xd6, 0x90, 0x0e, 0x71, 0x36, 0x47, 0xc3, 0xf4, - 0x03, 0xe0, 0x15, 0x00, 0x9a, 0x00, 0x82, 0x0c, 0xf3, 0x28, 0xf0, 0xd0, 0xe7, 0xf9, 0x8c, 0x5c, - 0xe7, 0x82, 0xf9, 0xc3, 0x7c, 0xea, 0x6a, 0x67, 0x8e, 0x4d, 0xc1, 0xd3, 0xd0, 0x49, 0xa8, 0x73, - 0x43, 0x1e, 0x22, 0x4f, 0x59, 0xe1, 0x24, 0x00, 0xf9, 0xc7, 0xeb, 0x25, 0x0a, 0x39, 0x5e, 0xa2, - 0x10, 0xd7, 0x99, 0xf9, 0x6f, 0x82, 0x6c, 0xca, 0xee, 0xaf, 0x6b, 0x3b, 0x0e, 0xd2, 0xb5, 0x1d, - 0x2d, 0xbb, 0x16, 0xbf, 0x0a, 0x71, 0x1a, 0x77, 0x9d, 0xa6, 0x93, 0x28, 0xee, 0x95, 0x6e, 0xb5, - 0x87, 0x94, 0x5e, 0x66, 0x85, 0x2f, 0xff, 0x0f, 0x74, 0x64, 0x26, 0x3f, 0xa9, 0xa1, 0x34, 0x0c, - 0xc3, 0xa0, 0x2b, 0xe6, 0x5f, 0xfd, 0x90, 0x4c, 0x7e, 0x5a, 0x43, 0xdf, 0x45, 0x0d, 0x63, 0xf2, - 0x96, 0x67, 0x4c, 0x4c, 0x91, 0xb1, 0x9f, 0x31, 0x19, 0xaa, 0x6f, 0x7e, 0x2e, 0x6a, 0xb5, 0xad, - 0xbd, 0xf1, 0x3a, 0xe5, 0x19, 0xaf, 0x24, 0x1b, 0xaf, 0x4e, 0x92, 0x5d, 0xd8, 0x95, 0xf4, 0xe7, - 0x87, 0x41, 0xe8, 0x25, 0xa7, 0x3e, 0x47, 0x94, 0x5a, 0xfa, 0x92, 0x26, 0x6f, 0x50, 0x1c, 0x9d, - 0x6d, 0xec, 0xa7, 0xc9, 0x72, 0x5f, 0xd9, 0xcf, 0x61, 0xd2, 0x61, 0x2b, 0x12, 0x76, 0xec, 0x32, - 0xfc, 0x23, 0x1a, 0x80, 0xc0, 0xaa, 0xc2, 0x36, 0xff, 0x7f, 0xc3, 0x36, 0x44, 0x05, 0xf6, 0x85, - 0xc2, 0xad, 0xab, 0xab, 0x99, 0x19, 0x0a, 0xcf, 0x38, 0xf9, 0xe2, 0x83, 0x24, 0x04, 0xe0, 0x29, - 0x53, 0x71, 0xfb, 0xac, 0x86, 0x42, 0x59, 0x9f, 0x94, 0xf1, 0x7f, 0xfc, 0xaf, 0x82, 0x4e, 0xca, - 0xf8, 0xab, 0xd0, 0x6b, 0xc5, 0x39, 0x55, 0x35, 0xbd, 0xa0, 0x6f, 0x57, 0x5d, 0x49, 0x0f, 0x5b, - 0xf8, 0x9e, 0x49, 0x10, 0x60, 0x55, 0xd3, 0x57, 0x28, 0x81, 0x3b, 0x3d, 0xab, 0x87, 0x51, 0x7b, - 0x29, 0x79, 0x5d, 0x9c, 0x84, 0x73, 0xd0, 0xeb, 0xe6, 0x60, 0x49, 0x40, 0xee, 0x49, 0x0d, 0x85, - 0xad, 0xf0, 0xe9, 0x3f, 0xb2, 0xef, 0xfa, 0x65, 0x6a, 0x01, 0x18, 0x68, 0x3c, 0x7a, 0xb1, 0xe4, - 0x87, 0xc1, 0xfb, 0xf2, 0xda, 0x3e, 0x6e, 0xbc, 0x9c, 0xfd, 0xe8, 0xe1, 0xb0, 0x3b, 0xeb, 0xb3, - 0x29, 0xb8, 0x95, 0xca, 0xba, 0x26, 0xe9, 0x86, 0xb6, 0x5d, 0x34, 0xb6, 0x35, 0x9a, 0x6c, 0xd1, - 0xe4, 0x8a, 0x25, 0x08, 0xd3, 0x1d, 0x84, 0x8d, 0xe9, 0x21, 0xf2, 0x67, 0x8c, 0xcd, 0x2a, 0xd8, - 0xb4, 0xa1, 0x9a, 0xf0, 0x5c, 0xfb, 0xa7, 0x9e, 0xa6, 0x27, 0xd1, 0x3a, 0x03, 0xe6, 0x7f, 0x8a, - 0xc2, 0xb1, 0xa6, 0xb3, 0x0c, 0xff, 0xe6, 0x9e, 0xa7, 0xd6, 0xa9, 0xb6, 0x5d, 0x64, 0xcf, 0xe5, - 0xb0, 0xea, 0x6b, 0x5f, 0x0d, 0x1d, 0xc4, 0xbe, 0x6a, 0xf8, 0xdb, 0x57, 0x3b, 0xf7, 0xd5, 0xf1, - 0x75, 0x86, 0x26, 0xdb, 0x06, 0xc8, 0x0e, 0x9b, 0x8d, 0xe6, 0xd8, 0xef, 0xb6, 0x36, 0xc7, 0xd2, - 0xc5, 0xf3, 0xe6, 0x33, 0xd6, 0xbe, 0x2f, 0x83, 0xec, 0x3d, 0x5f, 0x83, 0x6c, 0x64, 0xff, 0x62, - 0x6b, 0x7f, 0x26, 0xd9, 0x43, 0x31, 0x3b, 0x5c, 0xf5, 0x64, 0x32, 0x22, 0xae, 0xeb, 0x18, 0x91, - 0xed, 0xf5, 0x39, 0x67, 0x9c, 0xb6, 0x5d, 0x57, 0x4b, 0xb2, 0x3b, 0x53, 0x11, 0xf1, 0x4a, 0xfb, - 0x9b, 0x2f, 0xba, 0x5a, 0x1e, 0x4d, 0x1a, 0xcd, 0x17, 0x9b, 0x7e, 0xe6, 0x0b, 0xd8, 0xd7, 0x75, - 0x53, 0x3f, 0x9b, 0x05, 0x6a, 0xb4, 0x59, 0xbc, 0x4b, 0x82, 0x65, 0xb6, 0xb6, 0x59, 0x0c, 0x37, - 0x31, 0x76, 0x87, 0x73, 0xa6, 0xda, 0x39, 0x0e, 0x29, 0xe8, 0xb5, 0xcc, 0x15, 0xf3, 0x6f, 0xb8, - 0x4c, 0x16, 0x97, 0x5a, 0xd8, 0xc2, 0x3b, 0x99, 0xcd, 0x22, 0x42, 0x8f, 0x1b, 0x13, 0xc2, 0x59, - 0x3f, 0xeb, 0x06, 0x67, 0x85, 0x05, 0x7b, 0x5a, 0x43, 0xa1, 0x19, 0x3e, 0x3b, 0xe6, 0x09, 0x0f, - 0xf6, 0x53, 0x70, 0xbc, 0x85, 0x05, 0x02, 0xbf, 0x5b, 0x1f, 0x69, 0xb7, 0x89, 0x63, 0xa9, 0x31, - 0xe0, 0xae, 0xa4, 0x2b, 0xc5, 0x26, 0xc9, 0xeb, 0xec, 0x7b, 0x13, 0x7f, 0x84, 0xac, 0xaf, 0xf6, - 0x9a, 0x55, 0x96, 0x01, 0x6b, 0x32, 0x99, 0x87, 0x2c, 0xd7, 0x8d, 0xa3, 0xf4, 0x09, 0x19, 0x73, - 0x3a, 0x3e, 0xb8, 0xa0, 0xaa, 0x5b, 0x5f, 0x5b, 0xf8, 0x5a, 0xf9, 0x0d, 0x36, 0x1d, 0x7f, 0x1f, - 0x59, 0x3e, 0xfb, 0xf3, 0xef, 0x07, 0x4c, 0x0d, 0xc0, 0xa4, 0xa6, 0x8d, 0x32, 0xd5, 0x27, 0x7f, - 0x43, 0x4d, 0xe0, 0xb9, 0x1b, 0x6a, 0xbe, 0xdb, 0x03, 0x89, 0xc3, 0xb4, 0xcf, 0x6c, 0xd7, 0x99, - 0x17, 0x02, 0x6d, 0x98, 0x17, 0x26, 0xcc, 0x8e, 0x49, 0x7e, 0x88, 0xe2, 0x99, 0xee, 0x47, 0xa8, - 0x8b, 0x43, 0x43, 0x9d, 0x1d, 0x28, 0x18, 0x72, 0xe2, 0x21, 0x77, 0xee, 0x6d, 0x5d, 0xb8, 0x06, - 0xd1, 0x2a, 0x4b, 0x98, 0x49, 0xb6, 0xc2, 0xb8, 0x4f, 0xb6, 0x0d, 0xff, 0x4e, 0xbb, 0x25, 0x5e, - 0x5b, 0x31, 0x4b, 0xc8, 0xa2, 0xcd, 0xc1, 0x36, 0xf9, 0x84, 0xf6, 0x61, 0xf2, 0xf1, 0x1a, 0xa6, - 0xc2, 0xfb, 0x37, 0x4c, 0x45, 0xf6, 0x6b, 0x98, 0x3a, 0x4f, 0x95, 0x97, 0xd6, 0x52, 0x87, 0x68, - 0x22, 0xa3, 0xb6, 0x26, 0xd2, 0xda, 0xee, 0x62, 0xa9, 0x15, 0xef, 0xd2, 0xb3, 0x32, 0xa3, 0x89, - 0x1d, 0x86, 0xc1, 0xa4, 0xcb, 0x36, 0x98, 0xe0, 0x1b, 0x00, 0x0d, 0x89, 0x36, 0x46, 0xfd, 0x17, - 0xad, 0xa5, 0x78, 0xd4, 0xc7, 0x21, 0x10, 0x5d, 0x1c, 0x7e, 0x02, 0x4c, 0x2f, 0xf8, 0x0a, 0x24, - 0xe8, 0xa5, 0x9f, 0x0d, 0x55, 0x2d, 0x15, 0xd6, 0x54, 0xc3, 0xca, 0x75, 0xd6, 0x2c, 0x6d, 0x49, - 0x0f, 0x29, 0xfe, 0xba, 0xaa, 0x96, 0x04, 0xd5, 0xd0, 0xcd, 0xfd, 0x86, 0x7d, 0xb0, 0xec, 0x62, - 0x91, 0x6c, 0xc9, 0x82, 0xb3, 0x28, 0x2c, 0x2e, 0x97, 0xff, 0x5d, 0x90, 0x19, 0x80, 0xb2, 0xe3, - 0xfc, 0x38, 0x3f, 0xc9, 0x4f, 0xf0, 0x97, 0xf8, 0x6c, 0x8e, 0xcf, 0x4e, 0x7d, 0x5a, 0x43, 0x7f, - 0x10, 0x6c, 0x6e, 0x00, 0x6a, 0x61, 0xe9, 0x08, 0x8d, 0x21, 0x48, 0x41, 0xd4, 0x4a, 0x56, 0x3b, - 0xd4, 0xed, 0xac, 0xc3, 0x34, 0xfa, 0x49, 0x77, 0xf2, 0x40, 0x19, 0x92, 0xce, 0xcc, 0xb3, 0x50, - 0xf2, 0x77, 0xe0, 0x16, 0x0c, 0x42, 0xc2, 0x99, 0x80, 0xa3, 0xeb, 0x65, 0x69, 0x23, 0x17, 0xba, - 0x5a, 0x96, 0x36, 0xe0, 0x18, 0x70, 0xae, 0x17, 0x1e, 0x18, 0xcb, 0x29, 0xe8, 0x75, 0xbd, 0xb2, - 0x22, 0x94, 0xb8, 0x72, 0x70, 0x2f, 0x42, 0x64, 0x6e, 0x53, 0xaa, 0x54, 0xe4, 0xf2, 0xc8, 0x15, - 0x78, 0x05, 0x80, 0x2c, 0x6f, 0x6a, 0xa9, 0xe2, 0xac, 0x05, 0x6c, 0x9b, 0xa8, 0x4e, 0xb8, 0x97, - 0x68, 0xbd, 0x6d, 0xaa, 0xb5, 0xf1, 0x29, 0xcc, 0xce, 0xc3, 0xc1, 0x29, 0x7e, 0x5a, 0x18, 0x6d, - 0x6e, 0x7c, 0xea, 0x75, 0x6d, 0xcb, 0x11, 0x73, 0x5b, 0xe6, 0xb3, 0xd9, 0x3d, 0x6c, 0x4f, 0xc2, - 0x69, 0x88, 0x9b, 0xf3, 0xd3, 0x3c, 0xc2, 0xb8, 0xa0, 0xef, 0xc9, 0xdd, 0x1a, 0xc2, 0x24, 0x58, - 0xd1, 0x0c, 0x9f, 0x9d, 0xa6, 0x27, 0x70, 0xba, 0xbb, 0xdb, 0x79, 0x49, 0x30, 0xd7, 0xbb, 0x14, - 0x8a, 0x72, 0x5c, 0x32, 0xf3, 0xfd, 0x00, 0xf4, 0xf9, 0x09, 0x11, 0x7c, 0x0d, 0xc2, 0x2c, 0x2a, - 0x3d, 0xdd, 0x94, 0xf6, 0xb7, 0xd1, 0x33, 0xfc, 0xa7, 0xc8, 0x78, 0xe0, 0x1b, 0xee, 0x9b, 0x97, - 0xc1, 0x03, 0xb3, 0xb3, 0x98, 0xe0, 0x92, 0xdf, 0xfe, 0x4d, 0xb7, 0xa2, 0xe9, 0x7d, 0xed, 0xdf, - 0xce, 0xe6, 0xec, 0xb3, 0x5d, 0xff, 0xb3, 0x00, 0x3b, 0x8d, 0xf9, 0xfa, 0xe3, 0x7f, 0x0e, 0x79, - 0xd3, 0x20, 0x3c, 0xd3, 0xa9, 0xe4, 0xb0, 0x3d, 0xf2, 0xc1, 0x2f, 0xd5, 0x23, 0xff, 0x0f, 0x03, - 0x30, 0xd2, 0xfe, 0xf1, 0x07, 0xbf, 0x07, 0xbd, 0xae, 0x83, 0x42, 0x59, 0xa5, 0x41, 0x33, 0x98, - 0x21, 0xa8, 0x5d, 0xd4, 0xa7, 0x53, 0xd5, 0x35, 0xc6, 0x40, 0xc4, 0x0e, 0x57, 0xeb, 0x59, 0x23, - 0xd8, 0x23, 0xf0, 0xa5, 0x81, 0x3d, 0x3e, 0x40, 0x70, 0xa2, 0xd5, 0x11, 0xf5, 0xc7, 0xd9, 0x2f, - 0x99, 0xdf, 0xea, 0x6c, 0xd2, 0x98, 0xbf, 0x31, 0x30, 0x8a, 0x66, 0xdd, 0x1d, 0x7e, 0x0e, 0xdd, - 0x7d, 0xf9, 0x6f, 0x07, 0x3e, 0xad, 0xa1, 0xff, 0xf4, 0xd7, 0x17, 0xb2, 0x01, 0xa7, 0x21, 0x6a, - 0x7d, 0xec, 0xd0, 0xa0, 0x6f, 0xc7, 0xa6, 0xd1, 0xbe, 0x71, 0x1d, 0xbf, 0x14, 0x6a, 0x98, 0xa4, - 0x9e, 0x15, 0x78, 0x84, 0xf5, 0xf9, 0x9b, 0x87, 0xf5, 0xf9, 0x00, 0x41, 0x6a, 0x71, 0x79, 0x75, - 0x53, 0x93, 0x25, 0x83, 0x9d, 0x0d, 0x76, 0x6c, 0x70, 0x6c, 0x05, 0xfa, 0x94, 0x6a, 0xc1, 0x20, - 0x2f, 0x0b, 0x45, 0xfb, 0xe4, 0x40, 0x8c, 0x17, 0xf1, 0xdc, 0x8b, 0xfe, 0x4a, 0x48, 0x3d, 0xb7, - 0x26, 0x66, 0x0b, 0xac, 0x54, 0x3d, 0xe5, 0x14, 0x59, 0xcf, 0xfc, 0xd1, 0x75, 0x88, 0xbf, 0x5e, - 0x56, 0xd7, 0x24, 0x12, 0xdb, 0x87, 0x34, 0xa1, 0x04, 0x11, 0x2b, 0xe3, 0x32, 0x22, 0x19, 0xf7, - 0x97, 0x1c, 0x04, 0x30, 0xc9, 0xbf, 0x63, 0xfe, 0xec, 0xfa, 0x10, 0x85, 0x33, 0x21, 0x8d, 0xe1, - 0x81, 0xad, 0x97, 0xdf, 0x09, 0xa0, 0xc6, 0x9a, 0x3d, 0xc7, 0x72, 0x8b, 0x35, 0x5e, 0x82, 0x90, - 0x29, 0x8b, 0x9a, 0xe4, 0x85, 0x6b, 0x01, 0x5e, 0x7a, 0x40, 0x4c, 0xcb, 0x24, 0x97, 0x50, 0x87, - 0x48, 0x78, 0xe0, 0x4d, 0x48, 0x98, 0x7f, 0x75, 0x1a, 0x0e, 0xaf, 0x28, 0x6b, 0x46, 0xea, 0xf8, - 0xbe, 0x10, 0xa0, 0x1e, 0xb6, 0xfa, 0xec, 0xb6, 0xa1, 0xce, 0xc9, 0x9a, 0xa1, 0xe7, 0x3b, 0xc4, - 0x9e, 0x4d, 0xf7, 0x13, 0x7c, 0x1d, 0x3a, 0xc9, 0x03, 0xb6, 0xda, 0x26, 0x0f, 0xc4, 0x3f, 0xdf, - 0x21, 0x52, 0x2e, 0xf8, 0xe7, 0x11, 0x8c, 0x95, 0xd4, 0xfb, 0x15, 0xdd, 0xd0, 0x64, 0x69, 0xab, - 0x60, 0x94, 0x75, 0xd2, 0x7a, 0x1a, 0x86, 0x4b, 0x2e, 0xf8, 0xc5, 0x2b, 0xd6, 0x53, 0x57, 0xc8, - 0xfe, 0xdf, 0x2a, 0x60, 0x71, 0x84, 0xe5, 0xa6, 0x16, 0x79, 0x87, 0xf9, 0x6a, 0x59, 0x9f, 0x73, - 0x58, 0x2f, 0x34, 0x06, 0x30, 0xd6, 0xf1, 0x6b, 0xc0, 0x95, 0xd4, 0x42, 0x45, 0x35, 0x0a, 0x52, - 0xe9, 0x9e, 0x59, 0x56, 0x97, 0xf7, 0xca, 0x54, 0x54, 0x52, 0x6f, 0x10, 0x80, 0x11, 0x2d, 0x8d, - 0xdf, 0x85, 0x53, 0x36, 0x69, 0x41, 0xad, 0x14, 0xaa, 0xdb, 0x6b, 0x65, 0xa5, 0x68, 0xe7, 0x44, - 0xbf, 0xa7, 0x54, 0xf7, 0xc8, 0x5a, 0x74, 0xdc, 0x26, 0xbf, 0x59, 0x59, 0x26, 0xc4, 0x2c, 0x4c, - 0xcd, 0x6d, 0xa5, 0x8a, 0x6f, 0x43, 0xaf, 0x0f, 0x77, 0x26, 0xc5, 0xce, 0xf8, 0x0e, 0x85, 0xdd, - 0x34, 0xca, 0x8c, 0xe6, 0x04, 0xaf, 0xab, 0x01, 0xdf, 0x01, 0xce, 0xe1, 0xeb, 0x09, 0x27, 0xb0, - 0x07, 0x53, 0x16, 0x1d, 0xc0, 0xca, 0xc3, 0x9a, 0x90, 0xbc, 0x2f, 0xb0, 0x0a, 0xbd, 0xd6, 0xa7, - 0x6b, 0xea, 0xb6, 0x21, 0x17, 0xaa, 0xaa, 0x5a, 0xd6, 0x19, 0xea, 0xc7, 0x3f, 0x92, 0x2e, 0x05, - 0xb8, 0x2f, 0xab, 0x2a, 0x51, 0x3b, 0xef, 0xc8, 0xca, 0xc6, 0xa6, 0xe1, 0x5a, 0xce, 0x51, 0xd7, - 0x52, 0x4a, 0x32, 0xde, 0xa2, 0xc9, 0xda, 0xa4, 0xd0, 0xf1, 0xd7, 0xa0, 0xdb, 0xaa, 0xd0, 0xac, - 0x2a, 0xf5, 0xb6, 0x6f, 0xe2, 0x19, 0x5a, 0x13, 0x83, 0xe0, 0x9b, 0xe5, 0x46, 0xbd, 0x12, 0xc0, - 0xce, 0xb8, 0x1a, 0x63, 0xcc, 0x4c, 0xe6, 0xf8, 0x16, 0x24, 0xdd, 0xbc, 0xa9, 0x2e, 0xfa, 0x35, - 0x52, 0xc1, 0xb9, 0x3d, 0x3e, 0xc5, 0x0e, 0x09, 0x1c, 0x10, 0x13, 0x2e, 0x96, 0x24, 0xcc, 0xab, - 0x00, 0x49, 0xb2, 0x6a, 0x49, 0x66, 0x70, 0x4d, 0xbe, 0xaf, 0x29, 0x86, 0x9c, 0x3a, 0xd1, 0xd2, - 0x74, 0x91, 0x30, 0x09, 0xf2, 0xaa, 0x6e, 0x88, 0xb4, 0x38, 0xce, 0x41, 0xb7, 0x87, 0xfc, 0x24, - 0x31, 0xb4, 0xf6, 0x58, 0xde, 0xf0, 0x90, 0x16, 0xd8, 0x44, 0xf9, 0xa0, 0x18, 0xdb, 0x74, 0xd1, - 0xb8, 0xfc, 0x8d, 0x1e, 0xda, 0xe1, 0x96, 0x55, 0x5b, 0x76, 0x7d, 0x77, 0xed, 0x15, 0x08, 0x93, - 0xd1, 0xd5, 0x19, 0x06, 0xab, 0x5d, 0xd3, 0x22, 0x19, 0x37, 0xd2, 0xdf, 0x75, 0x07, 0x96, 0x80, - 0xbf, 0x2a, 0xce, 0x6a, 0xc1, 0xbf, 0x8c, 0x60, 0xb8, 0xe9, 0xfd, 0x09, 0x3a, 0x2c, 0xf2, 0xbe, - 0x40, 0x8e, 0xad, 0xef, 0x6b, 0xb8, 0x6e, 0x26, 0x0e, 0xa9, 0x4d, 0x4b, 0xe2, 0xd7, 0x20, 0x46, - 0xbc, 0xae, 0xcc, 0xe1, 0x18, 0xf5, 0x55, 0x2d, 0xe6, 0x54, 0x4d, 0x67, 0xf9, 0xa5, 0xa9, 0x1b, - 0x11, 0x8a, 0xf6, 0x13, 0x3c, 0x0d, 0x31, 0x6b, 0x44, 0xee, 0x4b, 0xeb, 0x2d, 0x91, 0x5c, 0x21, - 0x11, 0x58, 0xd1, 0x3b, 0xd2, 0x3a, 0x7e, 0x0b, 0xba, 0xa5, 0x6a, 0xb5, 0xb0, 0xae, 0x68, 0xf2, - 0x7d, 0xa9, 0x5c, 0x4e, 0x4d, 0xb4, 0xed, 0x4f, 0x4d, 0x7c, 0xf4, 0xd0, 0x43, 0x9a, 0x0f, 0x89, - 0x31, 0xa9, 0x5a, 0xbd, 0xca, 0x7e, 0xe2, 0x97, 0xa1, 0x5b, 0x2a, 0x95, 0x1c, 0xcd, 0x3a, 0x99, - 0x46, 0xe7, 0xa3, 0x42, 0xf4, 0xb3, 0x1a, 0x0a, 0x19, 0xda, 0xb6, 0x2c, 0xc6, 0xa4, 0x52, 0xc9, - 0x3e, 0xa8, 0xd5, 0x27, 0xec, 0x1d, 0x6a, 0xf1, 0x01, 0x9d, 0xde, 0x84, 0xbd, 0x45, 0x3b, 0xb0, - 0xa8, 0x43, 0x5e, 0xf0, 0xb5, 0x2f, 0xb6, 0x8e, 0xd2, 0x69, 0x73, 0xcc, 0x77, 0x5a, 0x41, 0x45, - 0x9d, 0x4a, 0xd6, 0xea, 0xc2, 0xad, 0xe2, 0x83, 0x87, 0x5b, 0x8d, 0x5a, 0x99, 0xa9, 0xcc, 0x0f, - 0x71, 0xc5, 0x58, 0xc5, 0x0a, 0x24, 0x1b, 0xd3, 0x02, 0xa7, 0x0e, 0x98, 0xdf, 0xda, 0x5d, 0x0b, - 0x57, 0x9f, 0xe3, 0x1a, 0x3f, 0x84, 0x01, 0x16, 0xf7, 0x7a, 0x4d, 0xd2, 0xe5, 0x92, 0xab, 0xbe, - 0xf1, 0x7d, 0x59, 0xa4, 0xfd, 0xf2, 0x9d, 0x7b, 0xaa, 0xee, 0xab, 0xfa, 0x65, 0x44, 0x97, 0x20, - 0xb6, 0xa5, 0x6a, 0x72, 0x41, 0x25, 0x66, 0x01, 0x66, 0xaf, 0x6d, 0x3b, 0x0c, 0x2c, 0x73, 0xab, - 0xdf, 0x74, 0x6c, 0x0a, 0xd6, 0x82, 0x30, 0x99, 0xd2, 0xc7, 0x78, 0x16, 0x92, 0x2c, 0xe7, 0x9b, - 0x15, 0x7d, 0x5f, 0xa9, 0xa6, 0x5e, 0x69, 0x31, 0xab, 0xc2, 0x56, 0x5e, 0x44, 0x8a, 0x6e, 0x5b, - 0xac, 0xe2, 0x2d, 0xe8, 0xf5, 0xa4, 0x8d, 0x63, 0xf3, 0xb8, 0xaf, 0xed, 0x15, 0x32, 0xf0, 0xd1, - 0x43, 0x3f, 0x0e, 0xf9, 0xb0, 0x88, 0xdd, 0x29, 0x18, 0xd9, 0x12, 0x70, 0x39, 0x3e, 0x9d, 0xc0, - 0xe8, 0xa9, 0x81, 0x16, 0x4d, 0x8e, 0xd8, 0x8e, 0x4f, 0x3b, 0xa6, 0x3d, 0x96, 0x69, 0xcc, 0x51, - 0x17, 0x87, 0xf9, 0x16, 0x11, 0xd8, 0x7d, 0x93, 0x6d, 0xd8, 0xcc, 0x84, 0xe8, 0x2e, 0x93, 0x5e, - 0xf9, 0x88, 0xd8, 0x2d, 0x55, 0x15, 0xa7, 0x1a, 0x09, 0xc0, 0x55, 0xc5, 0xe0, 0xbe, 0x06, 0xd0, - 0x27, 0x8e, 0x3f, 0xdb, 0x35, 0x23, 0x62, 0x97, 0x1d, 0x8d, 0x1f, 0xff, 0x0c, 0x6a, 0x95, 0x44, - 0x3c, 0xbd, 0x1f, 0xdc, 0x47, 0x73, 0x3e, 0x4c, 0xd9, 0x4b, 0xa1, 0xe6, 0xb9, 0xc4, 0x1f, 0x21, - 0x9a, 0x42, 0x52, 0xb6, 0xce, 0x9e, 0xcc, 0x2d, 0xff, 0x42, 0x2b, 0xd3, 0x26, 0x4d, 0x2c, 0x7a, - 0x47, 0x5a, 0x6f, 0x69, 0x5d, 0x0b, 0xf8, 0x5f, 0xb6, 0x4b, 0xde, 0xaf, 0xa3, 0xd3, 0xf1, 0x03, - 0xe0, 0x48, 0xc0, 0xf1, 0x8d, 0x6d, 0x49, 0x2b, 0xb1, 0x06, 0x7c, 0xd5, 0x57, 0x15, 0xf2, 0x34, - 0x60, 0x5e, 0x32, 0xa4, 0xd7, 0x4d, 0x92, 0xf6, 0x6f, 0xfa, 0xc5, 0x4b, 0x6e, 0x1a, 0x1d, 0xff, - 0x1c, 0x82, 0x44, 0x5d, 0x3e, 0xc2, 0x54, 0x86, 0xd4, 0xdc, 0xee, 0x78, 0xfb, 0x24, 0x59, 0x6d, - 0xb3, 0x23, 0xe2, 0xac, 0x62, 0x2b, 0xb3, 0x8f, 0xd9, 0x16, 0x43, 0xdb, 0xd6, 0x0d, 0x57, 0x5b, - 0x4e, 0xff, 0xb8, 0xda, 0xc2, 0x2a, 0xb6, 0xda, 0xf2, 0x2d, 0x7a, 0x31, 0xb9, 0x3e, 0x63, 0x53, - 0x2a, 0xbf, 0xbf, 0xdb, 0xeb, 0x0d, 0x89, 0x7b, 0x98, 0x2c, 0xc3, 0x52, 0x55, 0xa9, 0x4f, 0xe9, - 0xf3, 0xcb, 0x88, 0x45, 0x37, 0x76, 0x05, 0x1a, 0xa7, 0x95, 0x9e, 0x25, 0x9d, 0x30, 0xb3, 0x8f, - 0x6c, 0x32, 0xde, 0x74, 0x38, 0x6d, 0xf6, 0x41, 0xaf, 0x59, 0xbb, 0x97, 0x52, 0xc7, 0x5f, 0x87, - 0x53, 0x9e, 0x34, 0x06, 0x8a, 0xac, 0xd3, 0x48, 0xf1, 0x15, 0x69, 0x4b, 0xd6, 0xab, 0x52, 0x51, - 0x4e, 0xbd, 0xd4, 0x42, 0x88, 0x45, 0xc5, 0x13, 0xba, 0x2b, 0xa3, 0x82, 0x22, 0xeb, 0x57, 0x35, - 0x75, 0xeb, 0x86, 0x45, 0x8b, 0xaf, 0x42, 0x6f, 0x45, 0x2d, 0xd4, 0xd7, 0x90, 0x1a, 0x69, 0xc9, - 0x32, 0x59, 0x51, 0x57, 0xbc, 0x4c, 0xb1, 0x06, 0x83, 0xf4, 0x06, 0x73, 0x23, 0xaf, 0x97, 0xf7, - 0x95, 0x31, 0xbf, 0x21, 0xff, 0x43, 0x3e, 0x2a, 0xf6, 0x53, 0xd6, 0xf5, 0x75, 0x4e, 0x43, 0x4c, - 0x53, 0xb7, 0x2b, 0xa5, 0x82, 0xa6, 0xae, 0x29, 0x95, 0xd4, 0x85, 0x16, 0x6d, 0xee, 0x12, 0x81, - 0x14, 0x15, 0xcd, 0x92, 0xa6, 0x3a, 0x54, 0x96, 0x25, 0xdd, 0xb0, 0x62, 0xe0, 0x8d, 0xb6, 0xa4, - 0x8c, 0x91, 0xb2, 0x2c, 0x3a, 0xd1, 0x28, 0x84, 0x35, 0xa9, 0x52, 0x52, 0xb7, 0x52, 0x17, 0x5b, - 0x12, 0xb1, 0x52, 0xa6, 0x2e, 0xcf, 0xf2, 0x9a, 0x2a, 0xd5, 0x82, 0x6e, 0x28, 0xc5, 0xbb, 0x4a, - 0x45, 0xd6, 0xf5, 0xd4, 0x58, 0x4b, 0x6a, 0x4c, 0x69, 0x16, 0xab, 0x2b, 0x36, 0x05, 0x5e, 0x85, - 0x24, 0x4b, 0x43, 0xed, 0x62, 0x93, 0xf5, 0x4d, 0x3b, 0x44, 0xb4, 0xf1, 0x51, 0x9a, 0xc6, 0xfa, - 0xaa, 0xaa, 0xe5, 0x25, 0x7d, 0x53, 0xa9, 0x6c, 0xe4, 0xbb, 0x44, 0x8e, 0x72, 0x70, 0x71, 0x7d, - 0x0b, 0xba, 0x34, 0xa5, 0xb2, 0x51, 0xd8, 0x94, 0xf4, 0xcd, 0x54, 0x6e, 0x5f, 0x8b, 0xcb, 0x64, - 0xeb, 0x0c, 0x13, 0x39, 0x44, 0x75, 0x89, 0x51, 0x93, 0x9b, 0xf9, 0xc6, 0x3c, 0x70, 0x5b, 0x1b, - 0x2e, 0x59, 0xdb, 0x8e, 0xa2, 0x60, 0x47, 0x8d, 0x5c, 0x6a, 0xd1, 0x09, 0x20, 0x1e, 0x67, 0xe4, - 0xab, 0x26, 0xb5, 0xa5, 0x36, 0x58, 0xf1, 0x28, 0xbf, 0x05, 0x2c, 0x9d, 0x44, 0x53, 0xe6, 0x6f, - 0xf8, 0xa6, 0x75, 0xf4, 0xaa, 0x76, 0x94, 0xe9, 0x32, 0x63, 0x9a, 0x07, 0x71, 0x88, 0x32, 0xf5, - 0xad, 0x52, 0x85, 0x1e, 0x9d, 0x84, 0xe0, 0x2f, 0x94, 0xd7, 0x0a, 0x52, 0xb5, 0x9a, 0x9a, 0xda, - 0x1f, 0x80, 0xae, 0x45, 0xf8, 0x7e, 0x06, 0x1e, 0x8b, 0x89, 0x31, 0x5a, 0xc3, 0xb5, 0xb5, 0xd9, - 0x6a, 0x15, 0x5f, 0x81, 0xee, 0xad, 0xed, 0xb2, 0xa1, 0x58, 0xf5, 0x4d, 0xef, 0x09, 0xfe, 0x8b, - 0x89, 0x40, 0x28, 0x28, 0x7d, 0xd3, 0x28, 0xfb, 0xd7, 0x0f, 0x33, 0xca, 0x7e, 0xf7, 0x7e, 0xa3, - 0xec, 0xdf, 0xd8, 0x23, 0xca, 0x7e, 0xf7, 0xc1, 0xa3, 0xec, 0x2f, 0xb7, 0x98, 0x50, 0x3d, 0x87, - 0x10, 0x65, 0xff, 0xcd, 0x96, 0xfc, 0x5b, 0x47, 0xd9, 0xc7, 0x15, 0xe8, 0xb3, 0x92, 0x72, 0xb8, - 0x83, 0xed, 0xa7, 0x56, 0x9e, 0x39, 0x4d, 0x43, 0x5c, 0xc4, 0x2c, 0x1b, 0x87, 0xeb, 0x25, 0x5e, - 0x82, 0x7e, 0x3b, 0x17, 0x87, 0xa7, 0xc2, 0xd5, 0x16, 0x5f, 0x11, 0x17, 0x7b, 0xad, 0x2c, 0x1c, - 0x6e, 0x5e, 0x37, 0xc1, 0x7a, 0x5c, 0x70, 0x81, 0x7c, 0x53, 0x33, 0x2d, 0x86, 0x92, 0x59, 0xfa, - 0x3a, 0xf2, 0x09, 0xd1, 0x02, 0xb2, 0x3a, 0x08, 0x14, 0xac, 0x43, 0xcc, 0xcd, 0xe8, 0xf2, 0xbe, - 0xfa, 0xc0, 0x07, 0xfe, 0x2e, 0xf4, 0xb1, 0xea, 0x3e, 0xf8, 0x3d, 0xd4, 0xa5, 0x9b, 0xef, 0x2f, - 0xac, 0xa9, 0x46, 0x3e, 0x21, 0xc2, 0x9a, 0x53, 0xe9, 0xaf, 0x22, 0xe8, 0xf3, 0x60, 0x94, 0xd9, - 0x59, 0x27, 0xf5, 0x1f, 0x23, 0xfb, 0x0a, 0x31, 0xe5, 0x8f, 0xc9, 0x16, 0xce, 0x30, 0x75, 0xf7, - 0x83, 0xdf, 0x43, 0xc7, 0xd6, 0x27, 0x1f, 0x14, 0xcd, 0x16, 0x5c, 0x60, 0x75, 0x5d, 0xb0, 0xea, - 0xca, 0x27, 0x44, 0xbc, 0xd6, 0x40, 0x8f, 0x6f, 0xc1, 0x71, 0x1b, 0x63, 0xce, 0xd2, 0x99, 0x29, - 0x25, 0xd9, 0xee, 0x9f, 0xdb, 0x2d, 0x86, 0x8c, 0x13, 0x53, 0x16, 0xd4, 0xbc, 0x3e, 0x5c, 0x03, - 0xae, 0x40, 0xaf, 0x1f, 0xbb, 0x3b, 0xfb, 0x8b, 0x48, 0xea, 0x17, 0x81, 0x22, 0xcf, 0x89, 0xc9, - 0x62, 0x43, 0x7d, 0xd7, 0x9c, 0x55, 0x5f, 0x97, 0x9b, 0xe1, 0x6a, 0x8b, 0x2f, 0x48, 0xda, 0x2b, - 0xde, 0x93, 0x6b, 0xc9, 0x3a, 0x6d, 0xb9, 0xb8, 0xbc, 0xde, 0xf6, 0xb9, 0x24, 0xd5, 0x90, 0xe1, - 0x81, 0x8d, 0x4e, 0x3e, 0x59, 0x9f, 0xea, 0xa1, 0x42, 0x03, 0xeb, 0xe8, 0xee, 0x2c, 0x13, 0xa9, - 0x39, 0x52, 0xd3, 0x57, 0xdb, 0x57, 0x34, 0x7d, 0x93, 0x54, 0xe4, 0x93, 0x24, 0x67, 0xa3, 0xe7, - 0x1d, 0x2e, 0x37, 0xa6, 0x8f, 0x7a, 0x75, 0x5f, 0x3a, 0x52, 0x43, 0x46, 0x2a, 0xdb, 0xac, 0x9e, - 0x4f, 0xd6, 0x27, 0x8e, 0x72, 0x8b, 0x01, 0x12, 0x2c, 0xa6, 0xba, 0x6d, 0xd0, 0x2f, 0x9c, 0x6d, - 0x31, 0x22, 0xd8, 0x16, 0x03, 0x8b, 0x55, 0xd1, 0x26, 0xc1, 0xba, 0x2d, 0xc2, 0xbc, 0xac, 0x84, - 0x7d, 0x75, 0x56, 0x33, 0x0f, 0x53, 0x1e, 0x5b, 0x72, 0xcc, 0x53, 0xe9, 0x6d, 0x67, 0x69, 0x30, - 0xe7, 0x93, 0x52, 0x31, 0xe4, 0x72, 0x59, 0xd9, 0x20, 0x97, 0x84, 0x36, 0x5a, 0x7c, 0x46, 0x2f, - 0x0d, 0x3d, 0x6d, 0xee, 0xe8, 0x84, 0x72, 0xd1, 0x45, 0x88, 0x57, 0x61, 0xc8, 0x52, 0x21, 0x7c, - 0xd8, 0x2a, 0x2d, 0xd9, 0xa6, 0x98, 0x9e, 0xd0, 0xc8, 0xf5, 0x1b, 0xd0, 0x63, 0x7e, 0x37, 0x61, - 0xa6, 0x55, 0xa4, 0x72, 0xea, 0x87, 0x91, 0xb6, 0xe7, 0x6c, 0xdf, 0x47, 0x0f, 0xbd, 0xc4, 0xc4, - 0x53, 0xd2, 0x6d, 0x3e, 0x5a, 0x64, 0x4f, 0xf0, 0x09, 0xe8, 0x22, 0x46, 0x61, 0x02, 0xdb, 0xfd, - 0xf7, 0x11, 0x72, 0x59, 0x2b, 0x6a, 0x3e, 0x21, 0x58, 0xdc, 0x3c, 0x44, 0x4b, 0x15, 0xbd, 0xa0, - 0x54, 0xd6, 0xd5, 0xd4, 0x9f, 0x45, 0x9a, 0x5c, 0xe1, 0x75, 0x34, 0xa0, 0x82, 0x55, 0x78, 0x74, - 0xbe, 0xa2, 0x2f, 0x56, 0xd6, 0x55, 0x31, 0x52, 0xa2, 0xff, 0xe0, 0x39, 0xe8, 0xd4, 0x0d, 0xc9, - 0x90, 0x53, 0xff, 0x21, 0x42, 0x7c, 0xf6, 0xad, 0xd8, 0x8c, 0xde, 0xa6, 0x3f, 0xf2, 0xaa, 0x6e, - 0xac, 0x98, 0x44, 0x22, 0xa5, 0xc5, 0x6b, 0x90, 0xb0, 0xfd, 0x5e, 0x05, 0xca, 0xee, 0xcf, 0x29, - 0xbb, 0xd1, 0x96, 0x7a, 0x99, 0xed, 0x0d, 0x32, 0x97, 0x92, 0x49, 0x26, 0x74, 0x39, 0xa6, 0x84, - 0x1e, 0x89, 0xb9, 0xbc, 0xc8, 0x1b, 0xbc, 0x02, 0x71, 0xa7, 0x0e, 0xf2, 0xe1, 0x9f, 0x47, 0x7c, - 0x51, 0x56, 0x9e, 0x2a, 0x2c, 0xb7, 0x99, 0xf9, 0xad, 0xc4, 0x23, 0xdc, 0x2d, 0xb9, 0x9e, 0xe0, - 0x37, 0x21, 0x49, 0xc7, 0x40, 0x26, 0xae, 0x21, 0xca, 0xf7, 0x5f, 0x46, 0x49, 0x87, 0xfa, 0x7b, - 0x5e, 0x16, 0x59, 0xf1, 0xdb, 0x8b, 0xcb, 0xa4, 0x23, 0x13, 0x16, 0xfd, 0x6d, 0xa5, 0x4a, 0x58, - 0xbe, 0x06, 0xb1, 0xa2, 0xae, 0xad, 0x5b, 0x56, 0xe8, 0x77, 0xfc, 0xad, 0xd0, 0xba, 0xb6, 0x5e, - 0x67, 0x85, 0xb6, 0x9f, 0xe0, 0xbb, 0xd0, 0xb3, 0xa1, 0x49, 0xd5, 0xcd, 0x6f, 0x95, 0xd9, 0xb9, - 0xf4, 0x5d, 0xd2, 0x9e, 0x17, 0xfc, 0x4d, 0x14, 0xaf, 0x9b, 0x45, 0xdf, 0xbc, 0xd6, 0xbe, 0x69, - 0xa2, 0x9b, 0x31, 0xa7, 0xe7, 0xce, 0x87, 0x90, 0x74, 0xae, 0xc7, 0xd0, 0x63, 0x83, 0x9e, 0xfa, - 0x3a, 0xa9, 0xf0, 0xe5, 0x06, 0xd3, 0xb9, 0xf9, 0xf6, 0xba, 0x54, 0x51, 0xaa, 0xdb, 0x65, 0x32, - 0x66, 0xd4, 0x4a, 0x48, 0xe6, 0xb4, 0xb7, 0x6a, 0xce, 0xdf, 0x7f, 0xc0, 0xd9, 0x55, 0x51, 0x5e, - 0x3a, 0xbe, 0x01, 0x83, 0xfa, 0x8e, 0x6e, 0xc8, 0x5b, 0xb6, 0x87, 0x8e, 0xdd, 0xea, 0xd2, 0x53, - 0x52, 0x8b, 0x95, 0xd9, 0x27, 0xf6, 0x53, 0x32, 0xe6, 0x9b, 0x5b, 0x65, 0x44, 0x78, 0x0d, 0xfa, - 0xf4, 0xb2, 0x7a, 0xbf, 0x50, 0x77, 0xc0, 0x4f, 0x7d, 0xc3, 0x17, 0xc4, 0xeb, 0x99, 0x2a, 0x2b, - 0x65, 0xf5, 0xbe, 0xf7, 0x4c, 0x9f, 0xef, 0x13, 0xb1, 0xc9, 0x6d, 0xde, 0x73, 0x5e, 0xc7, 0x12, - 0xc4, 0xdf, 0xbb, 0xef, 0x0e, 0x14, 0x9b, 0x5a, 0xdb, 0x97, 0x07, 0x79, 0xe9, 0xce, 0xaa, 0x13, - 0x93, 0x8c, 0x8d, 0x7f, 0xcf, 0x7b, 0xf7, 0x5d, 0x51, 0x5b, 0xf1, 0x1b, 0x30, 0x50, 0x9e, 0xa6, - 0x1f, 0xc1, 0xe2, 0xf4, 0x5a, 0xc9, 0x36, 0xd4, 0x16, 0xbd, 0xd2, 0x2f, 0xf6, 0x96, 0xa7, 0xcd, - 0xc6, 0x52, 0x20, 0xa8, 0x95, 0x5e, 0xe3, 0x75, 0xe8, 0xab, 0x63, 0x46, 0xc3, 0xaa, 0x56, 0x5b, - 0xb2, 0x4a, 0xba, 0x59, 0xd1, 0xb8, 0xaa, 0x3b, 0x70, 0xbc, 0x8e, 0x91, 0xc7, 0x9a, 0xff, 0xad, - 0x83, 0x5b, 0xf3, 0xa9, 0xe1, 0xb2, 0x5f, 0x1c, 0x74, 0x57, 0xba, 0xe4, 0xb2, 0xea, 0xdf, 0x80, - 0xde, 0xba, 0xaa, 0x2b, 0x6a, 0x45, 0x4e, 0x69, 0x7b, 0x2b, 0xa6, 0x26, 0x5b, 0xce, 0xcd, 0xf6, - 0x86, 0x5a, 0x91, 0xf1, 0x75, 0x00, 0x97, 0xb0, 0xd2, 0x0f, 0x22, 0xab, 0xc4, 0xae, 0xa2, 0x25, - 0x9c, 0x2e, 0xff, 0x4f, 0x81, 0x4f, 0x6a, 0xe8, 0x71, 0x00, 0x8e, 0x43, 0x2f, 0x05, 0x92, 0xe8, - 0x04, 0xec, 0x7a, 0x4d, 0x20, 0x77, 0x4c, 0x71, 0x28, 0xcb, 0x67, 0x27, 0xa0, 0x17, 0x22, 0xd4, - 0xcf, 0xa5, 0xe3, 0xe8, 0x14, 0x3f, 0x9e, 0xe5, 0xb3, 0x63, 0x24, 0x45, 0xb7, 0x48, 0x9d, 0x6a, - 0x68, 0xfa, 0x3c, 0x82, 0x0b, 0x90, 0xba, 0x23, 0xaf, 0xa5, 0x67, 0xab, 0xd5, 0x32, 0xab, 0x2b, - 0x6d, 0xbb, 0x82, 0x92, 0xd9, 0x29, 0x7e, 0x7c, 0x9c, 0x9f, 0x1a, 0xe7, 0x67, 0xb2, 0xfc, 0x4c, - 0x8e, 0x9f, 0x19, 0x87, 0x3e, 0x88, 0x0b, 0xaa, 0x91, 0x76, 0x4c, 0x5c, 0x38, 0x30, 0x39, 0x05, - 0x27, 0x21, 0x3e, 0xbb, 0xbc, 0xe8, 0x7e, 0x1a, 0x9b, 0x9a, 0xe1, 0xa7, 0x73, 0xfc, 0xcc, 0x25, - 0xfe, 0x52, 0x0e, 0x8e, 0x43, 0x7c, 0x5e, 0x5d, 0x71, 0xbf, 0xee, 0xca, 0x66, 0xc7, 0xf8, 0xf1, - 0x69, 0x7e, 0x66, 0xca, 0xfc, 0x02, 0xaa, 0x07, 0x5e, 0x30, 0xf5, 0xbd, 0xb4, 0xa5, 0xf0, 0x05, - 0x2e, 0x4d, 0x9e, 0x47, 0x30, 0x03, 0x29, 0x1a, 0x33, 0x34, 0xbd, 0x22, 0x17, 0xb7, 0x35, 0xc5, - 0xd8, 0x49, 0xcf, 0xa9, 0x15, 0x43, 0x53, 0xcb, 0x3a, 0x3e, 0x39, 0x31, 0xc6, 0x4f, 0x4d, 0xf0, - 0xd9, 0xb1, 0x1c, 0x3f, 0x39, 0xc3, 0x4f, 0xcf, 0xf0, 0xb9, 0x49, 0x3e, 0x97, 0xe5, 0xc7, 0x27, - 0xf9, 0xf1, 0x09, 0xfe, 0x12, 0xa4, 0x21, 0x7e, 0xd3, 0xd8, 0x94, 0x35, 0xe7, 0x5e, 0x4e, 0x3c, - 0x3b, 0xc9, 0x4f, 0x4c, 0xf0, 0xd3, 0xe3, 0x7c, 0x76, 0x9a, 0xcf, 0xce, 0x08, 0xe7, 0x20, 0xe9, - 0x5e, 0x26, 0xf4, 0x7a, 0x2c, 0x7e, 0x52, 0x43, 0xc7, 0x77, 0x6b, 0x28, 0xfe, 0xb4, 0x86, 0xc2, - 0xb9, 0x69, 0x7e, 0x9c, 0xcf, 0x09, 0x2f, 0x79, 0x9c, 0xe5, 0x14, 0xe8, 0xd2, 0xcf, 0xe2, 0xd8, - 0x25, 0x9e, 0xd6, 0x50, 0x57, 0x96, 0xc6, 0x0f, 0xc8, 0xe6, 0x84, 0x97, 0x01, 0xbb, 0x9c, 0xcc, - 0xee, 0xc2, 0x6f, 0xef, 0xd6, 0xd0, 0x5b, 0x4f, 0x6b, 0xa8, 0xf3, 0xd2, 0x0c, 0x3f, 0x33, 0x46, - 0x72, 0x99, 0x5d, 0x84, 0x5e, 0xb7, 0x1f, 0x96, 0xa6, 0xe9, 0xd0, 0x71, 0xea, 0x49, 0x0d, 0x9d, - 0x60, 0xb7, 0x36, 0x4f, 0x3d, 0xad, 0xa1, 0x68, 0xee, 0x12, 0x9f, 0x9b, 0xe1, 0xc7, 0xc7, 0x84, - 0x53, 0x00, 0xf7, 0xa5, 0x75, 0x37, 0x8e, 0x38, 0xb6, 0x5b, 0x43, 0x1c, 0xc1, 0x11, 0x67, 0xf9, - 0xc9, 0x9c, 0xc0, 0x43, 0xdc, 0x5e, 0x1e, 0xf4, 0x7b, 0x86, 0x9e, 0xd4, 0xd0, 0xd0, 0x6e, 0x0d, - 0x1d, 0x7b, 0x5a, 0x43, 0xf1, 0xdc, 0x14, 0x3f, 0x33, 0xc9, 0x67, 0x2f, 0xf1, 0xb9, 0x09, 0x7e, - 0x32, 0x2b, 0x9c, 0x86, 0xb8, 0xed, 0x6c, 0x71, 0x58, 0xbe, 0xb2, 0x5b, 0x43, 0x5f, 0x31, 0x59, - 0x4e, 0x8d, 0xf1, 0xb9, 0x31, 0xe1, 0x25, 0x48, 0x3a, 0x2e, 0x03, 0xf7, 0x2d, 0xfc, 0x81, 0xdd, - 0x1a, 0xea, 0x27, 0xcd, 0xcb, 0xf1, 0x53, 0x97, 0xf8, 0xdc, 0xb8, 0x70, 0x01, 0xfa, 0xbd, 0x99, - 0x51, 0xdd, 0xc5, 0x5f, 0xda, 0xad, 0xa1, 0xf3, 0x66, 0xf1, 0x89, 0x2c, 0x3f, 0x91, 0xe3, 0x27, - 0xc6, 0x85, 0x71, 0xc0, 0x9b, 0x92, 0xbe, 0x59, 0x57, 0xf6, 0xe4, 0x93, 0x1a, 0xba, 0xb0, 0x5b, - 0x43, 0xfc, 0xd3, 0x1a, 0x4a, 0x4e, 0x4c, 0xf2, 0x13, 0x53, 0xfc, 0xc4, 0x34, 0x3f, 0x71, 0x89, - 0x9f, 0x98, 0xe1, 0x27, 0xc7, 0x84, 0x71, 0x18, 0x6e, 0x62, 0x98, 0x71, 0x7f, 0xc3, 0xd2, 0x6e, - 0x0d, 0x2d, 0x9a, 0xdf, 0x30, 0x3d, 0xc1, 0x4f, 0x4f, 0x9a, 0x03, 0xb8, 0x55, 0x66, 0xd7, 0xc9, - 0xec, 0x31, 0x61, 0x3d, 0x3c, 0x69, 0x16, 0x9b, 0x9c, 0xe0, 0x27, 0x49, 0xb0, 0x58, 0xe1, 0x6c, - 0xb3, 0x4c, 0x74, 0xdd, 0x4f, 0x6a, 0xe8, 0xc6, 0x6e, 0x0d, 0x5d, 0x23, 0xc5, 0x5e, 0xde, 0x3b, - 0x0d, 0x5d, 0xf4, 0x49, 0x0d, 0xbd, 0xb9, 0x5b, 0x43, 0x37, 0x85, 0x74, 0x93, 0x34, 0x78, 0x66, - 0x89, 0xd5, 0xdd, 0x1a, 0x12, 0x85, 0x3b, 0x80, 0xdd, 0xe7, 0x47, 0xf6, 0x7e, 0xf6, 0x49, 0x0d, - 0xcd, 0xec, 0xd6, 0xd0, 0xa5, 0xa7, 0x35, 0x04, 0x93, 0xd3, 0xfc, 0xe4, 0x25, 0x73, 0x05, 0x67, - 0x7f, 0x54, 0x43, 0x1d, 0x1f, 0x3e, 0x46, 0xa7, 0xed, 0xd3, 0x28, 0xdf, 0xf4, 0x50, 0x28, 0x2c, - 0xc1, 0x90, 0xcf, 0x39, 0xcd, 0xaa, 0x80, 0x7f, 0x52, 0x43, 0xb7, 0x77, 0x6b, 0xe8, 0x16, 0x99, - 0x97, 0x53, 0xfc, 0xa5, 0x69, 0xc6, 0x9b, 0x1d, 0xee, 0x2e, 0x98, 0x44, 0x16, 0x53, 0x61, 0x0c, - 0xfa, 0xbd, 0xc7, 0x0b, 0x77, 0xe4, 0xdd, 0xab, 0xbb, 0x35, 0xb4, 0xf0, 0xb4, 0x86, 0x62, 0xd3, - 0x63, 0xfc, 0x74, 0x96, 0x9f, 0x9a, 0xe6, 0xa7, 0xb2, 0xc2, 0x4b, 0x04, 0xd9, 0xe5, 0xe8, 0xf3, - 0xee, 0x21, 0x9a, 0xdd, 0xad, 0xa1, 0xd7, 0xc8, 0x34, 0x9b, 0xe4, 0xa7, 0xa6, 0x84, 0x39, 0x18, - 0xf2, 0xd1, 0x96, 0x2d, 0x82, 0xb3, 0x4f, 0x6a, 0x68, 0x63, 0xb7, 0x86, 0xd6, 0x9f, 0xd6, 0x50, - 0x24, 0x3b, 0x36, 0xce, 0x67, 0xc7, 0x26, 0x3f, 0xf8, 0x02, 0xc5, 0x4b, 0xf2, 0x96, 0x9a, 0xe5, - 0x49, 0x16, 0xcc, 0xa2, 0x66, 0x08, 0x63, 0x70, 0xdc, 0x6f, 0x33, 0x76, 0x57, 0x2b, 0xed, 0xd6, - 0xd0, 0x37, 0xcd, 0x6a, 0x67, 0xa6, 0xf9, 0x99, 0x09, 0xe1, 0x55, 0x18, 0xb6, 0xc5, 0x7c, 0x5d, - 0x2e, 0x50, 0x96, 0x38, 0xf3, 0xf8, 0x93, 0x1a, 0x52, 0x77, 0x6b, 0xa8, 0xf2, 0xb4, 0x86, 0x12, - 0xd9, 0x6c, 0x96, 0xcf, 0x66, 0x73, 0x7c, 0x96, 0x44, 0xae, 0x9c, 0x58, 0x0a, 0x45, 0xe3, 0x5c, - 0x62, 0x29, 0x14, 0x4d, 0x70, 0xdc, 0x52, 0x28, 0xfa, 0x16, 0xf7, 0xf6, 0x52, 0x28, 0x7a, 0x8a, - 0x4b, 0x53, 0xdc, 0xbe, 0x3b, 0x9e, 0xe5, 0x52, 0x28, 0x7a, 0x8c, 0x1b, 0x5a, 0x0a, 0x45, 0xbf, - 0xc2, 0xbd, 0xb2, 0x14, 0x8a, 0xf6, 0x73, 0x03, 0x4b, 0xa1, 0xe8, 0x79, 0xee, 0xa5, 0xa5, 0x50, - 0x94, 0xe7, 0x2e, 0x2c, 0x85, 0xa2, 0x8b, 0xdc, 0xd2, 0x52, 0x28, 0x3a, 0xc9, 0x4d, 0x2d, 0x85, - 0xa2, 0xd7, 0xb8, 0xeb, 0x4b, 0xa1, 0xe8, 0x4d, 0x6e, 0x79, 0x29, 0x14, 0x15, 0xb9, 0x95, 0xa5, - 0x50, 0xf4, 0x12, 0x37, 0xb3, 0x14, 0x8a, 0xde, 0xe2, 0x6e, 0x2f, 0x85, 0xa2, 0x0b, 0xdc, 0xd5, - 0xa5, 0x50, 0xf4, 0x35, 0x6e, 0x76, 0x29, 0x14, 0x5d, 0xe7, 0x36, 0x96, 0x42, 0xd1, 0x4d, 0x4e, - 0x59, 0x0a, 0x45, 0xbf, 0xc9, 0x49, 0x4b, 0xa1, 0x68, 0x85, 0x53, 0x33, 0xff, 0xbc, 0x13, 0x7a, - 0x3c, 0x7b, 0x3e, 0x7e, 0x03, 0xc2, 0x34, 0x0d, 0x1e, 0x03, 0x5c, 0x5e, 0x68, 0x53, 0x73, 0x58, - 0x25, 0x44, 0x2c, 0x10, 0x31, 0x63, 0x61, 0xaa, 0x23, 0x86, 0x7a, 0x57, 0xae, 0x38, 0x18, 0x81, - 0xfd, 0x01, 0xda, 0x56, 0x4d, 0x62, 0x0b, 0x42, 0xc0, 0x78, 0xf7, 0x18, 0xee, 0x87, 0x78, 0xdc, - 0xca, 0x5b, 0xca, 0x40, 0x67, 0xfd, 0x75, 0xac, 0x99, 0x92, 0xc0, 0xda, 0xc5, 0x46, 0x2a, 0x4b, - 0x0e, 0x05, 0x9b, 0x16, 0x42, 0x64, 0x5b, 0x53, 0x08, 0xa4, 0xa9, 0xcb, 0xd9, 0x98, 0x3b, 0x88, - 0x8e, 0xbf, 0x49, 0xc1, 0x1c, 0xb7, 0x34, 0x05, 0xcf, 0x43, 0xe8, 0xbd, 0xfb, 0x77, 0x69, 0x5c, - 0xeb, 0x2e, 0x61, 0xf4, 0x07, 0x0f, 0xd1, 0xd3, 0x87, 0x29, 0x51, 0xae, 0x96, 0xa5, 0xa2, 0x5c, - 0x4a, 0xaf, 0xed, 0xa4, 0xcf, 0x99, 0xaf, 0x99, 0xe4, 0x30, 0x59, 0xfc, 0x45, 0x0d, 0x85, 0x7e, - 0xeb, 0x31, 0x0a, 0xbd, 0xa7, 0xab, 0x95, 0x7c, 0x87, 0x48, 0xa8, 0xf1, 0x5b, 0x10, 0x73, 0x15, - 0x63, 0x38, 0x90, 0x97, 0xdb, 0x56, 0xce, 0xde, 0x58, 0x71, 0x79, 0x6c, 0x3b, 0x44, 0x30, 0x79, - 0x51, 0x1f, 0x2b, 0xfe, 0x06, 0x24, 0x34, 0x99, 0x7c, 0x4f, 0xa9, 0x50, 0x2c, 0x4b, 0xca, 0x96, - 0x75, 0xad, 0x78, 0xb2, 0xed, 0xa0, 0x47, 0x94, 0x7a, 0x8e, 0x10, 0x8b, 0x71, 0xcd, 0xf3, 0x1b, - 0x4b, 0xc0, 0x6d, 0x49, 0x95, 0x92, 0x64, 0xa8, 0xa6, 0x54, 0xa2, 0x15, 0x74, 0xed, 0x0b, 0x84, - 0x71, 0xdd, 0x22, 0x67, 0x35, 0x24, 0xb6, 0xbc, 0x0f, 0x84, 0xb3, 0x80, 0x5d, 0x9d, 0x63, 0xa5, - 0xfd, 0xb6, 0x72, 0x74, 0x86, 0x68, 0x8e, 0xce, 0x49, 0x16, 0x98, 0x60, 0x05, 0x12, 0x75, 0x0c, - 0xc9, 0xf1, 0xc6, 0xfc, 0x8f, 0xfa, 0xa5, 0x18, 0x3c, 0xf3, 0x54, 0x6b, 0xc5, 0xbf, 0x43, 0x04, - 0x42, 0x43, 0xdc, 0x51, 0x99, 0x59, 0x08, 0x99, 0x9d, 0x8c, 0x2f, 0x40, 0x57, 0xb1, 0x2c, 0x4b, - 0x9a, 0x21, 0x3f, 0x30, 0x58, 0xf4, 0x90, 0xc4, 0xef, 0x3f, 0xf4, 0x0c, 0xa9, 0xe8, 0x94, 0x70, - 0xe7, 0xb4, 0xc9, 0x7c, 0x2f, 0x00, 0x61, 0xba, 0x16, 0x48, 0x76, 0x95, 0xb2, 0x2b, 0x12, 0x46, - 0x60, 0x8f, 0xec, 0x2a, 0x65, 0x27, 0xa4, 0xc5, 0x9b, 0x00, 0x76, 0xb0, 0x64, 0x0b, 0x4e, 0x39, - 0xd6, 0xbe, 0x21, 0x88, 0x44, 0x76, 0xd6, 0x09, 0xb0, 0x99, 0xc5, 0xa7, 0xd6, 0xf1, 0x2d, 0x00, - 0x3b, 0x32, 0xb3, 0x95, 0xf0, 0xb3, 0xdd, 0x75, 0x28, 0xb0, 0x10, 0xd9, 0xd6, 0xf5, 0xf6, 0x2e, - 0x2b, 0x66, 0xb6, 0x2e, 0x1c, 0xb7, 0xe4, 0x85, 0x1d, 0x2e, 0x04, 0xb9, 0xc3, 0x85, 0x20, 0x2e, - 0x90, 0xf9, 0xad, 0x00, 0xf4, 0x78, 0x56, 0xb2, 0xd9, 0x33, 0x6b, 0xb2, 0xa4, 0x99, 0x9a, 0x94, - 0xf9, 0x7c, 0xaf, 0x9e, 0xa1, 0x65, 0x09, 0x0b, 0x3c, 0x01, 0x61, 0x7a, 0x14, 0x64, 0xe3, 0x32, - 0xc4, 0x56, 0xac, 0x73, 0x3f, 0x98, 0x81, 0xda, 0xd2, 0x04, 0x9a, 0x4d, 0xcb, 0x9a, 0x54, 0xec, - 0xfa, 0x53, 0xa8, 0x1d, 0x2a, 0x76, 0xcd, 0xe9, 0x55, 0x88, 0x91, 0x10, 0x4a, 0x54, 0xdd, 0x62, - 0x22, 0xa2, 0x35, 0x29, 0x38, 0x49, 0xea, 0x84, 0xb3, 0xf5, 0xd2, 0x8f, 0xdc, 0x0a, 0xb3, 0xba, - 0x28, 0xc2, 0x62, 0x49, 0x59, 0xc9, 0x2c, 0x42, 0x10, 0xf7, 0x2e, 0x41, 0xfc, 0x2a, 0xc4, 0x15, - 0x5d, 0xdf, 0x36, 0x35, 0x06, 0x6a, 0x41, 0xda, 0xa3, 0x9f, 0x7a, 0x68, 0x69, 0x96, 0xf6, 0x15, - 0xa7, 0x20, 0x4c, 0x1f, 0xd0, 0x9e, 0x32, 0xbf, 0x8b, 0xfe, 0xc6, 0xb3, 0xc0, 0x49, 0xdb, 0x25, - 0x85, 0x6c, 0x9b, 0x16, 0xeb, 0xd6, 0xe9, 0xbd, 0x12, 0x56, 0x79, 0x8b, 0xf9, 0x0d, 0x88, 0x5a, - 0x8f, 0xd8, 0x7d, 0xdd, 0xb6, 0xa7, 0x27, 0x23, 0xd3, 0x49, 0xf8, 0x74, 0xf6, 0xc3, 0x3c, 0x6c, - 0xb3, 0x43, 0xab, 0x5c, 0xa8, 0xca, 0x9a, 0xa2, 0x96, 0xec, 0x96, 0xb5, 0xce, 0x5b, 0xdc, 0x6f, - 0x91, 0x2d, 0x13, 0x2a, 0xab, 0x7d, 0xd7, 0xec, 0x0c, 0x5f, 0x36, 0x3f, 0x6a, 0x2f, 0xdb, 0x23, - 0x4d, 0x71, 0x9f, 0x97, 0x1d, 0x75, 0x3c, 0x09, 0x67, 0x20, 0xc9, 0x46, 0xc2, 0x95, 0xa0, 0x33, - 0xe1, 0x8a, 0x57, 0x1b, 0x34, 0x95, 0xff, 0x17, 0xa1, 0xd7, 0xee, 0xd6, 0xba, 0x72, 0x61, 0x4b, - 0x80, 0x4d, 0xf1, 0x93, 0x42, 0xc6, 0xce, 0x01, 0x60, 0xb5, 0x8d, 0x94, 0xe9, 0xb2, 0x12, 0x11, - 0xcf, 0xf0, 0x97, 0x7c, 0x12, 0x11, 0x6b, 0xd0, 0x65, 0xaf, 0x6c, 0x5c, 0xf0, 0xc8, 0x87, 0x00, - 0x91, 0x74, 0xaf, 0xf9, 0xc7, 0xaa, 0xb7, 0xd0, 0xe7, 0x3f, 0x40, 0xc8, 0x0f, 0xf7, 0xee, 0x16, - 0x85, 0x8e, 0xb4, 0x60, 0x93, 0x72, 0x0b, 0x7a, 0x3c, 0x4b, 0x1f, 0xbf, 0xeb, 0x11, 0x22, 0x54, - 0xc2, 0xbe, 0xea, 0xae, 0x85, 0x45, 0xd7, 0xf7, 0xab, 0xb4, 0x89, 0xfc, 0x75, 0x64, 0x49, 0x66, - 0x15, 0xba, 0xec, 0xd9, 0x81, 0x5f, 0x87, 0x2e, 0xab, 0x37, 0xad, 0x9a, 0x5e, 0x6a, 0xe4, 0xe5, - 0x7f, 0x91, 0xce, 0xfc, 0x14, 0x8b, 0x36, 0xf3, 0x0b, 0x57, 0x20, 0x3e, 0x67, 0xea, 0x8b, 0xb2, - 0x0d, 0xe2, 0x4f, 0xd5, 0x81, 0xf8, 0x8f, 0x80, 0xf7, 0x1e, 0xe0, 0xfd, 0xdf, 0x54, 0xa8, 0xfb, - 0x9b, 0xcf, 0x06, 0x75, 0xf7, 0x03, 0xb9, 0xbf, 0x7d, 0x38, 0x20, 0x77, 0x3f, 0x38, 0xfb, 0xea, - 0xa1, 0xc0, 0xd9, 0x7f, 0x4c, 0x40, 0xf6, 0x9f, 0xfb, 0xf1, 0xc2, 0xb2, 0x5b, 0x82, 0xb1, 0xf3, - 0xcf, 0x0a, 0x49, 0xb7, 0xc1, 0xe6, 0x97, 0xf7, 0x07, 0xeb, 0x3e, 0x28, 0xa0, 0x3b, 0xe8, 0x01, - 0x74, 0xbf, 0x7e, 0x50, 0x40, 0x77, 0x3e, 0xe8, 0xc5, 0x6f, 0xbf, 0xe0, 0x87, 0xdf, 0x3e, 0x38, - 0x6a, 0x3b, 0xf4, 0xbc, 0x51, 0xdb, 0xa1, 0x46, 0xd4, 0xf6, 0x5b, 0x87, 0x86, 0xda, 0x36, 0x9b, - 0xef, 0xc6, 0x6a, 0x17, 0x0e, 0x11, 0xab, 0x9d, 0x0f, 0xf9, 0x20, 0xb4, 0xf5, 0xe7, 0x88, 0xd0, - 0xce, 0x87, 0x9a, 0xe0, 0xb2, 0xdf, 0x39, 0x64, 0x5c, 0xf6, 0xb3, 0x21, 0xb2, 0x3b, 0x1b, 0x10, - 0xd9, 0xb7, 0x9e, 0x11, 0x91, 0x9d, 0xef, 0x3c, 0x24, 0xe4, 0x75, 0xd8, 0x07, 0x79, 0xfd, 0xce, - 0x21, 0x22, 0xaf, 0xf3, 0xe1, 0x3a, 0xbc, 0xf5, 0x3b, 0x87, 0x8b, 0xb7, 0xce, 0x87, 0xdd, 0x48, - 0xeb, 0xbf, 0x75, 0x38, 0x40, 0xeb, 0x13, 0xad, 0x80, 0xd6, 0xcd, 0xf1, 0xd5, 0xef, 0x1e, 0x1a, - 0xbc, 0xda, 0x0f, 0x38, 0xbd, 0x72, 0x08, 0xc0, 0xe9, 0x06, 0x4c, 0x74, 0xf1, 0x39, 0x40, 0xa2, - 0x1b, 0xc0, 0xce, 0xc5, 0xe7, 0x80, 0x75, 0x6e, 0x40, 0x31, 0xdf, 0x7d, 0x4e, 0x28, 0x66, 0x5f, - 0xfc, 0xf2, 0xd6, 0xf3, 0x82, 0x2f, 0x3f, 0x17, 0x60, 0x72, 0xe4, 0xf0, 0x81, 0xc9, 0x91, 0x1f, - 0x33, 0x30, 0x39, 0x72, 0x08, 0xc0, 0xe4, 0xe8, 0x81, 0x81, 0xc9, 0xd1, 0x83, 0x00, 0x93, 0xa3, - 0xcf, 0x04, 0x4c, 0x8e, 0x3e, 0x27, 0x60, 0x72, 0xf4, 0xb9, 0x03, 0x93, 0xa3, 0x87, 0x07, 0x4c, - 0xee, 0xfa, 0x12, 0x80, 0xc9, 0x5d, 0x2d, 0x81, 0xc9, 0xca, 0xf3, 0x03, 0x26, 0xe7, 0xc1, 0x0b, - 0x49, 0xbe, 0xd4, 0x3e, 0x24, 0x39, 0x0f, 0x1e, 0x30, 0xf2, 0xfd, 0xe7, 0x0d, 0x46, 0xce, 0xc7, - 0xfc, 0x81, 0xc8, 0xd7, 0x0e, 0x02, 0x44, 0xce, 0xc7, 0x9e, 0x0f, 0x08, 0xb9, 0xfb, 0x39, 0x83, - 0x90, 0xbb, 0xbf, 0x3c, 0x10, 0x72, 0xcf, 0xe1, 0x81, 0x90, 0x7b, 0xfc, 0x41, 0xc8, 0x57, 0xf7, - 0x0d, 0x42, 0xce, 0xc7, 0xfd, 0xb0, 0xc7, 0x5f, 0x3f, 0x64, 0xec, 0x71, 0x3e, 0xee, 0x41, 0x19, - 0x6b, 0xcf, 0x13, 0x64, 0x9c, 0x8f, 0xfb, 0xc2, 0x87, 0x0f, 0x86, 0xbb, 0x4d, 0x34, 0xc1, 0xdd, - 0xbe, 0x71, 0x70, 0xdc, 0x6d, 0x3e, 0xf1, 0xe3, 0x44, 0xd7, 0x26, 0x7c, 0xd0, 0xb5, 0xc5, 0x43, - 0x47, 0xd7, 0xe6, 0x13, 0x87, 0x03, 0xaa, 0xe5, 0xbe, 0x14, 0x50, 0x2d, 0xe7, 0x0b, 0xaa, 0x7d, - 0x06, 0xbc, 0x79, 0xf2, 0xcb, 0xc1, 0x9b, 0x27, 0xfd, 0xf0, 0xe6, 0x97, 0xf7, 0x07, 0xaa, 0xf4, - 0xc0, 0x29, 0xaf, 0x1e, 0x14, 0x4e, 0x59, 0x87, 0x94, 0x7c, 0xeb, 0x70, 0x90, 0x92, 0x87, 0x07, - 0x82, 0xc4, 0x3f, 0x1e, 0x10, 0x24, 0xf6, 0x05, 0x41, 0xbe, 0x73, 0x98, 0x20, 0xc8, 0x7a, 0xf8, - 0xe3, 0x4f, 0x16, 0x14, 0xfc, 0x60, 0x60, 0xcd, 0xbe, 0xc3, 0x03, 0x6b, 0xf6, 0xf9, 0x81, 0x35, - 0xf5, 0xe7, 0x05, 0xd6, 0xcc, 0xf7, 0x35, 0x87, 0x69, 0x2e, 0xec, 0x1b, 0xa6, 0x99, 0xef, 0x6b, - 0x44, 0x67, 0x5e, 0x4e, 0x7e, 0x7a, 0xa5, 0x2e, 0x24, 0x94, 0x30, 0xe2, 0x87, 0x0e, 0xec, 0x7f, - 0xf4, 0x05, 0x6a, 0x7c, 0x2c, 0x9c, 0xf7, 0x01, 0x08, 0xf6, 0x3d, 0xfa, 0x02, 0x35, 0x3c, 0x15, - 0x78, 0x5f, 0x7c, 0xe0, 0xc0, 0xa3, 0x2f, 0x90, 0xcf, 0x73, 0xe1, 0x84, 0x07, 0xef, 0x17, 0x7f, - 0xf4, 0x05, 0x72, 0xfd, 0x16, 0xce, 0x34, 0x80, 0xfd, 0xf0, 0xa3, 0x2f, 0x50, 0xdd, 0x33, 0xb3, - 0x54, 0x1d, 0xc8, 0x8f, 0x94, 0xf2, 0x3e, 0x33, 0xbf, 0xb6, 0x11, 0xe5, 0x47, 0xbe, 0xb6, 0xe1, - 0xb1, 0x90, 0x6b, 0x06, 0xf3, 0x3b, 0xf6, 0xe8, 0x0b, 0xe4, 0xff, 0xca, 0xfc, 0x6e, 0x1f, 0xac, - 0x1f, 0xf9, 0xee, 0xc6, 0xe7, 0xc2, 0xfc, 0x9e, 0x20, 0xbf, 0xcc, 0xa3, 0x2f, 0xd0, 0x1e, 0x65, - 0xcc, 0x51, 0x69, 0x40, 0xfd, 0x91, 0x51, 0xa9, 0x7f, 0x6a, 0x7e, 0x91, 0x3f, 0xe8, 0x8f, 0x7c, - 0x91, 0xef, 0x2b, 0xe1, 0xea, 0xde, 0x08, 0xc0, 0xd3, 0x8f, 0xbe, 0x40, 0x7b, 0x15, 0x12, 0xc6, - 0x9a, 0x80, 0x03, 0x53, 0x8f, 0xbe, 0x40, 0xbe, 0x6f, 0xcc, 0xbe, 0xf4, 0x01, 0x0b, 0x92, 0xbe, - 0x6c, 0x7c, 0x6e, 0x7e, 0x9b, 0x3f, 0x6a, 0x8f, 0x7c, 0x9b, 0xef, 0x2b, 0xb3, 0x4d, 0xbe, 0xb8, - 0x3d, 0xd2, 0x26, 0xbf, 0x37, 0xc2, 0x2b, 0x2d, 0x71, 0x86, 0xc3, 0x8f, 0xbe, 0x40, 0x2d, 0xde, - 0x0b, 0x57, 0x5a, 0xe3, 0xf6, 0x4e, 0x3d, 0xfa, 0x02, 0xb5, 0x2a, 0x60, 0xd6, 0xde, 0x02, 0x3c, - 0x48, 0x6a, 0x6f, 0xfe, 0xde, 0x9c, 0x6d, 0x7b, 0x60, 0x00, 0xc9, 0x6c, 0x6b, 0x5d, 0xa6, 0x0e, - 0x0a, 0xd8, 0x0c, 0xfe, 0x47, 0x81, 0x7f, 0xed, 0x43, 0xfe, 0xdc, 0x60, 0x3f, 0x0a, 0xff, 0xa3, - 0x30, 0x3f, 0x37, 0xf0, 0xaf, 0xc2, 0xa9, 0x99, 0x5f, 0xbc, 0x02, 0x09, 0x86, 0x5b, 0x3b, 0xf2, - 0x87, 0x1f, 0xf9, 0xc3, 0x8f, 0xfc, 0xe1, 0x47, 0xfe, 0xf0, 0x23, 0x7f, 0xf8, 0x91, 0x3f, 0xfc, - 0xc8, 0x1f, 0x7e, 0xe4, 0x0f, 0x3f, 0xf2, 0x87, 0x1f, 0xf9, 0xc3, 0x8f, 0xfc, 0xe1, 0x47, 0xfe, - 0xf0, 0x23, 0x7f, 0xf8, 0x91, 0x3f, 0xfc, 0xc8, 0x1f, 0x7e, 0xe4, 0x0f, 0x3f, 0xf2, 0x87, 0x1f, - 0xf9, 0xc3, 0x8f, 0xfc, 0xe1, 0x47, 0xfe, 0xf0, 0x23, 0x7f, 0xf8, 0x91, 0x3f, 0xfc, 0xc8, 0x1f, - 0x7e, 0xe4, 0x0f, 0x3f, 0xf2, 0x87, 0x1f, 0xf9, 0xc3, 0x8f, 0xfc, 0xe1, 0x47, 0xfe, 0xf0, 0x23, - 0x7f, 0xf8, 0x91, 0x3f, 0xfc, 0xaf, 0x8d, 0x3f, 0xfc, 0x63, 0x01, 0x62, 0xaf, 0xcb, 0xc6, 0x91, - 0x2f, 0xbc, 0x3d, 0x5f, 0xf8, 0xa3, 0xe7, 0x92, 0x94, 0xed, 0x28, 0x17, 0xdb, 0x91, 0x43, 0xfe, - 0xc8, 0x21, 0x7f, 0xe4, 0x90, 0x3f, 0x72, 0xc8, 0x1f, 0x39, 0xe4, 0x8f, 0x1c, 0xf2, 0x47, 0x0e, - 0xf9, 0x23, 0x87, 0xfc, 0x91, 0x43, 0xfe, 0xc8, 0x21, 0x7f, 0xe4, 0x90, 0x3f, 0x72, 0xc8, 0x1f, - 0x39, 0xe4, 0x8f, 0x1c, 0xf2, 0x47, 0x0e, 0xf9, 0x23, 0x87, 0xfc, 0x91, 0x43, 0xfe, 0xc8, 0x21, - 0x7f, 0xe4, 0x90, 0x3f, 0x72, 0xc8, 0x1f, 0x39, 0xe4, 0xbd, 0x0e, 0xf9, 0x9f, 0xa8, 0x64, 0x54, - 0x3f, 0x29, 0x89, 0xa2, 0x8e, 0x50, 0x0e, 0x47, 0x28, 0x87, 0x23, 0x94, 0xc3, 0xf3, 0xcb, 0xc9, - 0x74, 0x04, 0x9a, 0x38, 0x02, 0x4d, 0x1c, 0x81, 0x26, 0x8e, 0x40, 0x13, 0x7f, 0xe5, 0x41, 0x13, - 0xe1, 0xe8, 0x9f, 0x47, 0xb8, 0xff, 0x2b, 0xd2, 0x0c, 0x3c, 0x31, 0xf2, 0x07, 0x01, 0x2b, 0x27, - 0x1b, 0x33, 0xef, 0x52, 0x99, 0x89, 0x07, 0xa1, 0x77, 0xe5, 0x8d, 0xc5, 0xe5, 0xc2, 0xb2, 0x78, - 0x73, 0x6e, 0x61, 0x65, 0x65, 0xf1, 0xc6, 0xeb, 0x85, 0x3b, 0xb3, 0x57, 0xb9, 0x0e, 0xbf, 0x17, - 0xc2, 0xcd, 0x55, 0x0e, 0xf9, 0xbd, 0xb8, 0x7e, 0xeb, 0x3a, 0x17, 0xc0, 0x2f, 0xc0, 0xc9, 0xfa, - 0x17, 0x8b, 0xcb, 0x05, 0x71, 0x61, 0xf9, 0xd6, 0xea, 0xec, 0xea, 0xe2, 0xcd, 0x1b, 0x5c, 0x10, - 0x67, 0x60, 0xb8, 0xbe, 0xc8, 0xec, 0xf2, 0xa2, 0xf9, 0x73, 0x75, 0x61, 0x8e, 0x94, 0x09, 0xf9, - 0x95, 0xb9, 0x39, 0xbb, 0x52, 0xb8, 0x3d, 0x7b, 0x6d, 0x71, 0x9e, 0xf2, 0xe9, 0xc4, 0xa7, 0xe1, - 0x54, 0x7d, 0x99, 0xf9, 0xf9, 0x9b, 0x2b, 0x6e, 0x46, 0x61, 0xbc, 0x02, 0xa7, 0xeb, 0x0b, 0xad, - 0xe6, 0xc5, 0x85, 0xd9, 0xd5, 0xc2, 0xe2, 0x8d, 0xd5, 0x85, 0x6b, 0xd7, 0x16, 0x5f, 0x5f, 0xb8, - 0x31, 0xb7, 0xc0, 0x45, 0x86, 0x46, 0x3e, 0xad, 0xa1, 0x17, 0x47, 0x22, 0xba, 0x21, 0x6d, 0x28, - 0x95, 0x8d, 0x91, 0x50, 0x55, 0x53, 0x4b, 0x23, 0xdd, 0xba, 0xba, 0x6e, 0xac, 0x49, 0x95, 0xbb, - 0x85, 0x2d, 0xb9, 0x38, 0x12, 0x59, 0x97, 0x4b, 0x9a, 0xb4, 0x55, 0x1d, 0x0a, 0xfd, 0xb0, 0x86, - 0xd0, 0xc8, 0x59, 0xe0, 0xae, 0xab, 0x6b, 0x4a, 0x59, 0xb6, 0xbc, 0x43, 0xb2, 0x86, 0x63, 0x10, - 0xc9, 0x2f, 0xcc, 0xce, 0x2f, 0x88, 0x2b, 0x5c, 0xc7, 0x50, 0xe8, 0x49, 0x0d, 0x75, 0x8c, 0x8c, - 0x41, 0xd7, 0x2d, 0xf1, 0xda, 0x8a, 0xb9, 0xeb, 0xc8, 0x38, 0x0a, 0x21, 0xe1, 0xe6, 0x6a, 0x9e, - 0xeb, 0x30, 0xff, 0xcb, 0xaf, 0xae, 0x2e, 0x73, 0x08, 0x77, 0x41, 0xa7, 0xf9, 0xdf, 0x0a, 0x17, - 0x60, 0x14, 0x57, 0xa1, 0xbf, 0xee, 0x4c, 0x2e, 0xca, 0x1b, 0xe6, 0x38, 0xf5, 0x40, 0x68, 0xf6, - 0xd6, 0xea, 0x4d, 0xae, 0x63, 0x28, 0xf8, 0xfe, 0x43, 0x84, 0xc3, 0x10, 0xb8, 0xb5, 0xc2, 0x91, - 0xbf, 0x0b, 0xb7, 0xb8, 0x80, 0xc9, 0x72, 0x76, 0x65, 0x71, 0x96, 0x0b, 0x12, 0x3e, 0x68, 0x44, - 0x04, 0x6c, 0xee, 0xc1, 0x2b, 0x64, 0x0f, 0xb6, 0x7d, 0xb0, 0x71, 0x80, 0xd9, 0xab, 0xab, 0x0b, - 0x62, 0xc1, 0x6c, 0x28, 0xd7, 0x81, 0x7b, 0x21, 0x41, 0x7f, 0xaf, 0x2e, 0xae, 0x5e, 0x5b, 0x28, - 0x2c, 0xdc, 0x98, 0xe7, 0x10, 0x4e, 0x42, 0x8f, 0xb0, 0x70, 0xf5, 0xa6, 0xb8, 0x50, 0x58, 0x99, - 0x13, 0x17, 0x97, 0x57, 0xad, 0xb6, 0x09, 0xbf, 0x86, 0x76, 0xff, 0x64, 0xb8, 0xe3, 0x07, 0x7f, - 0x32, 0xdc, 0xf1, 0xa3, 0x3f, 0x19, 0x46, 0xef, 0x3f, 0x1d, 0x46, 0xbf, 0xf3, 0x74, 0x18, 0xfd, - 0xfe, 0xd3, 0x61, 0xb4, 0xfb, 0x74, 0x18, 0xfd, 0xe0, 0xe9, 0x30, 0xfa, 0xe3, 0xa7, 0xc3, 0xe8, - 0x87, 0x4f, 0x87, 0x3b, 0x7e, 0xf4, 0x74, 0x18, 0x7d, 0xef, 0x4f, 0x87, 0x3b, 0x9e, 0xfc, 0xe9, - 0x30, 0xda, 0xfd, 0xd3, 0xe1, 0x8e, 0x1f, 0xfc, 0xe9, 0x70, 0xc7, 0xd7, 0xde, 0xd9, 0x50, 0xab, - 0x77, 0x37, 0x46, 0xef, 0xa9, 0x65, 0x43, 0xd6, 0x34, 0x69, 0x74, 0x5b, 0xbf, 0x48, 0xfe, 0x59, - 0x57, 0xb5, 0xad, 0x0b, 0x55, 0x4d, 0xbd, 0xa7, 0x94, 0x64, 0xed, 0x82, 0xf5, 0xfa, 0x62, 0x75, - 0x6d, 0x43, 0xbd, 0x28, 0x3f, 0x30, 0xe8, 0x9e, 0x7d, 0x91, 0xfd, 0x21, 0x3a, 0xe1, 0xc5, 0x06, - 0x9d, 0x70, 0x2d, 0x4c, 0x90, 0x2a, 0xe3, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3d, 0x29, - 0x6f, 0xad, 0x33, 0x55, 0x01, 0x00, -} - -func (x ClientSrcRuleAction) String() string { - s, ok := ClientSrcRuleAction_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) -} -func (x MobileIdentifier) String() string { - s, ok := MobileIdentifier_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) -} -func (x URLScheme) String() string { - s, ok := URLScheme_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) -} -func (x ShapeBotDefenseRegion) String() string { - s, ok := ShapeBotDefenseRegion_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) -} -func (x JavaScriptLocation) String() string { - s, ok := JavaScriptLocation_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) -} -func (this *InlineRateLimiter) Equal(that interface{}) bool { +func (this *RouteTypeRedirect) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*InlineRateLimiter) + that1, ok := that.(*RouteTypeRedirect) if !ok { - that2, ok := that.(InlineRateLimiter) + that2, ok := that.(RouteTypeRedirect) if ok { that1 = &that2 } else { @@ -18163,31 +13795,36 @@ func (this *InlineRateLimiter) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Threshold != that1.Threshold { + if !this.Path.Equal(that1.Path) { + return false + } + if this.HttpMethod != that1.HttpMethod { + return false + } + if !this.RouteRedirect.Equal(that1.RouteRedirect) { return false } - if this.Unit != that1.Unit { + if len(this.Headers) != len(that1.Headers) { return false } - if that1.CountByChoice == nil { - if this.CountByChoice != nil { + for i := range this.Headers { + if !this.Headers[i].Equal(that1.Headers[i]) { return false } - } else if this.CountByChoice == nil { - return false - } else if !this.CountByChoice.Equal(that1.CountByChoice) { + } + if !this.IncomingPort.Equal(that1.IncomingPort) { return false } return true } -func (this *InlineRateLimiter_UseHttpLbUserId) Equal(that interface{}) bool { +func (this *RouteTypeDirectResponse) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*InlineRateLimiter_UseHttpLbUserId) + that1, ok := that.(*RouteTypeDirectResponse) if !ok { - that2, ok := that.(InlineRateLimiter_UseHttpLbUserId) + that2, ok := that.(RouteTypeDirectResponse) if ok { that1 = &that2 } else { @@ -18199,19 +13836,36 @@ func (this *InlineRateLimiter_UseHttpLbUserId) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.UseHttpLbUserId.Equal(that1.UseHttpLbUserId) { + if !this.Path.Equal(that1.Path) { + return false + } + if this.HttpMethod != that1.HttpMethod { + return false + } + if !this.RouteDirectResponse.Equal(that1.RouteDirectResponse) { + return false + } + if len(this.Headers) != len(that1.Headers) { + return false + } + for i := range this.Headers { + if !this.Headers[i].Equal(that1.Headers[i]) { + return false + } + } + if !this.IncomingPort.Equal(that1.IncomingPort) { return false } return true } -func (this *InlineRateLimiter_RefUserId) Equal(that interface{}) bool { +func (this *RouteTypeCustomRoute) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*InlineRateLimiter_RefUserId) + that1, ok := that.(*RouteTypeCustomRoute) if !ok { - that2, ok := that.(InlineRateLimiter_RefUserId) + that2, ok := that.(RouteTypeCustomRoute) if ok { that1 = &that2 } else { @@ -18223,19 +13877,19 @@ func (this *InlineRateLimiter_RefUserId) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.RefUserId.Equal(that1.RefUserId) { + if !this.RouteRef.Equal(that1.RouteRef) { return false } return true } -func (this *ServerUrlRule) Equal(that interface{}) bool { +func (this *RouteType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServerUrlRule) + that1, ok := that.(*RouteType) if !ok { - that2, ok := that.(ServerUrlRule) + that2, ok := that.(RouteType) if ok { that1 = &that2 } else { @@ -18247,46 +13901,25 @@ func (this *ServerUrlRule) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.DomainChoice == nil { - if this.DomainChoice != nil { - return false - } - } else if this.DomainChoice == nil { - return false - } else if !this.DomainChoice.Equal(that1.DomainChoice) { - return false - } - if this.BasePath != that1.BasePath { - return false - } - if this.ApiGroup != that1.ApiGroup { - return false - } - if !this.RequestMatcher.Equal(that1.RequestMatcher) { - return false - } - if !this.ClientMatcher.Equal(that1.ClientMatcher) { - return false - } - if that1.RateLimiterChoice == nil { - if this.RateLimiterChoice != nil { + if that1.Choice == nil { + if this.Choice != nil { return false } - } else if this.RateLimiterChoice == nil { + } else if this.Choice == nil { return false - } else if !this.RateLimiterChoice.Equal(that1.RateLimiterChoice) { + } else if !this.Choice.Equal(that1.Choice) { return false } return true } -func (this *ServerUrlRule_AnyDomain) Equal(that interface{}) bool { +func (this *RouteType_SimpleRoute) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServerUrlRule_AnyDomain) + that1, ok := that.(*RouteType_SimpleRoute) if !ok { - that2, ok := that.(ServerUrlRule_AnyDomain) + that2, ok := that.(RouteType_SimpleRoute) if ok { that1 = &that2 } else { @@ -18298,19 +13931,19 @@ func (this *ServerUrlRule_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.SimpleRoute.Equal(that1.SimpleRoute) { return false } return true } -func (this *ServerUrlRule_SpecificDomain) Equal(that interface{}) bool { +func (this *RouteType_RedirectRoute) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServerUrlRule_SpecificDomain) + that1, ok := that.(*RouteType_RedirectRoute) if !ok { - that2, ok := that.(ServerUrlRule_SpecificDomain) + that2, ok := that.(RouteType_RedirectRoute) if ok { that1 = &that2 } else { @@ -18322,19 +13955,19 @@ func (this *ServerUrlRule_SpecificDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if this.SpecificDomain != that1.SpecificDomain { + if !this.RedirectRoute.Equal(that1.RedirectRoute) { return false } return true } -func (this *ServerUrlRule_InlineRateLimiter) Equal(that interface{}) bool { +func (this *RouteType_DirectResponseRoute) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServerUrlRule_InlineRateLimiter) + that1, ok := that.(*RouteType_DirectResponseRoute) if !ok { - that2, ok := that.(ServerUrlRule_InlineRateLimiter) + that2, ok := that.(RouteType_DirectResponseRoute) if ok { that1 = &that2 } else { @@ -18346,19 +13979,19 @@ func (this *ServerUrlRule_InlineRateLimiter) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.InlineRateLimiter.Equal(that1.InlineRateLimiter) { + if !this.DirectResponseRoute.Equal(that1.DirectResponseRoute) { return false } return true } -func (this *ServerUrlRule_RefRateLimiter) Equal(that interface{}) bool { +func (this *RouteType_CustomRouteObject) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServerUrlRule_RefRateLimiter) + that1, ok := that.(*RouteType_CustomRouteObject) if !ok { - that2, ok := that.(ServerUrlRule_RefRateLimiter) + that2, ok := that.(RouteType_CustomRouteObject) if ok { that1 = &that2 } else { @@ -18370,19 +14003,19 @@ func (this *ServerUrlRule_RefRateLimiter) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.RefRateLimiter.Equal(that1.RefRateLimiter) { + if !this.CustomRouteObject.Equal(that1.CustomRouteObject) { return false } return true } -func (this *ApiEndpointRule) Equal(that interface{}) bool { +func (this *AdvancedOptionsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiEndpointRule) + that1, ok := that.(*AdvancedOptionsType) if !ok { - that2, ok := that.(ApiEndpointRule) + that2, ok := that.(AdvancedOptionsType) if ok { that1 = &that2 } else { @@ -18394,97 +14027,108 @@ func (this *ApiEndpointRule) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.DomainChoice == nil { - if this.DomainChoice != nil { + if len(this.RequestHeadersToAdd) != len(that1.RequestHeadersToAdd) { + return false + } + for i := range this.RequestHeadersToAdd { + if !this.RequestHeadersToAdd[i].Equal(that1.RequestHeadersToAdd[i]) { return false } - } else if this.DomainChoice == nil { - return false - } else if !this.DomainChoice.Equal(that1.DomainChoice) { - return false } - if this.BasePath != that1.BasePath { + if len(this.RequestHeadersToRemove) != len(that1.RequestHeadersToRemove) { return false } - if this.ApiEndpointPath != that1.ApiEndpointPath { - return false + for i := range this.RequestHeadersToRemove { + if this.RequestHeadersToRemove[i] != that1.RequestHeadersToRemove[i] { + return false + } } - if !this.ApiEndpointMethod.Equal(that1.ApiEndpointMethod) { + if len(this.ResponseHeadersToAdd) != len(that1.ResponseHeadersToAdd) { return false } - if !this.RequestMatcher.Equal(that1.RequestMatcher) { - return false + for i := range this.ResponseHeadersToAdd { + if !this.ResponseHeadersToAdd[i].Equal(that1.ResponseHeadersToAdd[i]) { + return false + } } - if !this.ClientMatcher.Equal(that1.ClientMatcher) { + if len(this.ResponseHeadersToRemove) != len(that1.ResponseHeadersToRemove) { return false } - if that1.RateLimiterChoice == nil { - if this.RateLimiterChoice != nil { + for i := range this.ResponseHeadersToRemove { + if this.ResponseHeadersToRemove[i] != that1.ResponseHeadersToRemove[i] { return false } - } else if this.RateLimiterChoice == nil { + } + if this.MaxRequestHeaderSize != that1.MaxRequestHeaderSize { return false - } else if !this.RateLimiterChoice.Equal(that1.RateLimiterChoice) { + } + if !this.BufferPolicy.Equal(that1.BufferPolicy) { return false } - return true -} -func (this *ApiEndpointRule_AnyDomain) Equal(that interface{}) bool { - if that == nil { - return this == nil + if !this.CompressionParams.Equal(that1.CompressionParams) { + return false } - - that1, ok := that.(*ApiEndpointRule_AnyDomain) - if !ok { - that2, ok := that.(ApiEndpointRule_AnyDomain) - if ok { - that1 = &that2 - } else { + if len(this.CustomErrors) != len(that1.CustomErrors) { + return false + } + for i := range this.CustomErrors { + if this.CustomErrors[i] != that1.CustomErrors[i] { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.JavascriptInfo.Equal(that1.JavascriptInfo) { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if len(this.Jwt) != len(that1.Jwt) { return false } - return true -} -func (this *ApiEndpointRule_SpecificDomain) Equal(that interface{}) bool { - if that == nil { - return this == nil + for i := range this.Jwt { + if !this.Jwt[i].Equal(that1.Jwt[i]) { + return false + } } - - that1, ok := that.(*ApiEndpointRule_SpecificDomain) - if !ok { - that2, ok := that.(ApiEndpointRule_SpecificDomain) - if ok { - that1 = &that2 - } else { + if this.IdleTimeout != that1.IdleTimeout { + return false + } + if this.DisableDefaultErrorPages != that1.DisableDefaultErrorPages { + return false + } + if that1.PathNormalizeChoice == nil { + if this.PathNormalizeChoice != nil { return false } + } else if this.PathNormalizeChoice == nil { + return false + } else if !this.PathNormalizeChoice.Equal(that1.PathNormalizeChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if that1.StrictSniHostHeaderCheckChoice == nil { + if this.StrictSniHostHeaderCheckChoice != nil { + return false + } + } else if this.StrictSniHostHeaderCheckChoice == nil { + return false + } else if !this.StrictSniHostHeaderCheckChoice.Equal(that1.StrictSniHostHeaderCheckChoice) { return false } - if this.SpecificDomain != that1.SpecificDomain { + if len(this.CookiesToModify) != len(that1.CookiesToModify) { return false } + for i := range this.CookiesToModify { + if !this.CookiesToModify[i].Equal(that1.CookiesToModify[i]) { + return false + } + } return true } -func (this *ApiEndpointRule_InlineRateLimiter) Equal(that interface{}) bool { +func (this *AdvancedOptionsType_EnablePathNormalize) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiEndpointRule_InlineRateLimiter) + that1, ok := that.(*AdvancedOptionsType_EnablePathNormalize) if !ok { - that2, ok := that.(ApiEndpointRule_InlineRateLimiter) + that2, ok := that.(AdvancedOptionsType_EnablePathNormalize) if ok { that1 = &that2 } else { @@ -18496,19 +14140,19 @@ func (this *ApiEndpointRule_InlineRateLimiter) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.InlineRateLimiter.Equal(that1.InlineRateLimiter) { + if !this.EnablePathNormalize.Equal(that1.EnablePathNormalize) { return false } return true } -func (this *ApiEndpointRule_RefRateLimiter) Equal(that interface{}) bool { +func (this *AdvancedOptionsType_DisablePathNormalize) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiEndpointRule_RefRateLimiter) + that1, ok := that.(*AdvancedOptionsType_DisablePathNormalize) if !ok { - that2, ok := that.(ApiEndpointRule_RefRateLimiter) + that2, ok := that.(AdvancedOptionsType_DisablePathNormalize) if ok { that1 = &that2 } else { @@ -18520,19 +14164,19 @@ func (this *ApiEndpointRule_RefRateLimiter) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.RefRateLimiter.Equal(that1.RefRateLimiter) { + if !this.DisablePathNormalize.Equal(that1.DisablePathNormalize) { return false } return true } -func (this *BypassRateLimitingRule) Equal(that interface{}) bool { +func (this *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRule) + that1, ok := that.(*AdvancedOptionsType_EnableStrictSniHostHeaderCheck) if !ok { - that2, ok := that.(BypassRateLimitingRule) + that2, ok := that.(AdvancedOptionsType_EnableStrictSniHostHeaderCheck) if ok { that1 = &that2 } else { @@ -18544,40 +14188,19 @@ func (this *BypassRateLimitingRule) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.DomainChoice == nil { - if this.DomainChoice != nil { - return false - } - } else if this.DomainChoice == nil { - return false - } else if !this.DomainChoice.Equal(that1.DomainChoice) { - return false - } - if that1.DestinationType == nil { - if this.DestinationType != nil { - return false - } - } else if this.DestinationType == nil { - return false - } else if !this.DestinationType.Equal(that1.DestinationType) { - return false - } - if !this.RequestMatcher.Equal(that1.RequestMatcher) { - return false - } - if !this.ClientMatcher.Equal(that1.ClientMatcher) { + if !this.EnableStrictSniHostHeaderCheck.Equal(that1.EnableStrictSniHostHeaderCheck) { return false } return true } -func (this *BypassRateLimitingRule_AnyDomain) Equal(that interface{}) bool { +func (this *AdvancedOptionsType_AdditionalDomains) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRule_AnyDomain) + that1, ok := that.(*AdvancedOptionsType_AdditionalDomains) if !ok { - that2, ok := that.(BypassRateLimitingRule_AnyDomain) + that2, ok := that.(AdvancedOptionsType_AdditionalDomains) if ok { that1 = &that2 } else { @@ -18589,19 +14212,19 @@ func (this *BypassRateLimitingRule_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.AdditionalDomains.Equal(that1.AdditionalDomains) { return false } return true } -func (this *BypassRateLimitingRule_SpecificDomain) Equal(that interface{}) bool { +func (this *DDoSClientSource) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRule_SpecificDomain) + that1, ok := that.(*DDoSClientSource) if !ok { - that2, ok := that.(BypassRateLimitingRule_SpecificDomain) + that2, ok := that.(DDoSClientSource) if ok { that1 = &that2 } else { @@ -18613,19 +14236,30 @@ func (this *BypassRateLimitingRule_SpecificDomain) Equal(that interface{}) bool } else if this == nil { return false } - if this.SpecificDomain != that1.SpecificDomain { + if !this.AsnList.Equal(that1.AsnList) { + return false + } + if len(this.CountryList) != len(that1.CountryList) { + return false + } + for i := range this.CountryList { + if this.CountryList[i] != that1.CountryList[i] { + return false + } + } + if !this.TlsFingerprintMatcher.Equal(that1.TlsFingerprintMatcher) { return false } return true } -func (this *BypassRateLimitingRule_AnyUrl) Equal(that interface{}) bool { +func (this *DDoSMitigationRule) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRule_AnyUrl) + that1, ok := that.(*DDoSMitigationRule) if !ok { - that2, ok := that.(BypassRateLimitingRule_AnyUrl) + that2, ok := that.(DDoSMitigationRule) if ok { that1 = &that2 } else { @@ -18637,43 +14271,40 @@ func (this *BypassRateLimitingRule_AnyUrl) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyUrl.Equal(that1.AnyUrl) { + if !this.Metadata.Equal(that1.Metadata) { return false } - return true -} -func (this *BypassRateLimitingRule_BasePath) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*BypassRateLimitingRule_BasePath) - if !ok { - that2, ok := that.(BypassRateLimitingRule_BasePath) - if ok { - that1 = &that2 - } else { + if that1.MitigationAction == nil { + if this.MitigationAction != nil { return false } + } else if this.MitigationAction == nil { + return false + } else if !this.MitigationAction.Equal(that1.MitigationAction) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if that1.MitigationChoice == nil { + if this.MitigationChoice != nil { + return false + } + } else if this.MitigationChoice == nil { + return false + } else if !this.MitigationChoice.Equal(that1.MitigationChoice) { return false } - if this.BasePath != that1.BasePath { + if !this.ExpirationTimestamp.Equal(that1.ExpirationTimestamp) { return false } return true } -func (this *BypassRateLimitingRule_ApiEndpoint) Equal(that interface{}) bool { +func (this *DDoSMitigationRule_Block) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRule_ApiEndpoint) + that1, ok := that.(*DDoSMitigationRule_Block) if !ok { - that2, ok := that.(BypassRateLimitingRule_ApiEndpoint) + that2, ok := that.(DDoSMitigationRule_Block) if ok { that1 = &that2 } else { @@ -18685,19 +14316,19 @@ func (this *BypassRateLimitingRule_ApiEndpoint) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiEndpoint.Equal(that1.ApiEndpoint) { + if !this.Block.Equal(that1.Block) { return false } return true } -func (this *BypassRateLimitingRule_ApiGroups) Equal(that interface{}) bool { +func (this *DDoSMitigationRule_DdosClientSource) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRule_ApiGroups) + that1, ok := that.(*DDoSMitigationRule_DdosClientSource) if !ok { - that2, ok := that.(BypassRateLimitingRule_ApiGroups) + that2, ok := that.(DDoSMitigationRule_DdosClientSource) if ok { that1 = &that2 } else { @@ -18709,19 +14340,19 @@ func (this *BypassRateLimitingRule_ApiGroups) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiGroups.Equal(that1.ApiGroups) { + if !this.DdosClientSource.Equal(that1.DdosClientSource) { return false } return true } -func (this *BypassRateLimitingRules) Equal(that interface{}) bool { +func (this *DDoSMitigationRule_IpPrefixList) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BypassRateLimitingRules) + that1, ok := that.(*DDoSMitigationRule_IpPrefixList) if !ok { - that2, ok := that.(BypassRateLimitingRules) + that2, ok := that.(DDoSMitigationRule_IpPrefixList) if ok { that1 = &that2 } else { @@ -18733,24 +14364,19 @@ func (this *BypassRateLimitingRules) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.BypassRateLimitingRules) != len(that1.BypassRateLimitingRules) { + if !this.IpPrefixList.Equal(that1.IpPrefixList) { return false } - for i := range this.BypassRateLimitingRules { - if !this.BypassRateLimitingRules[i].Equal(that1.BypassRateLimitingRules[i]) { - return false - } - } return true } -func (this *APIRateLimit) Equal(that interface{}) bool { +func (this *SingleLoadBalancerAppSetting) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIRateLimit) + that1, ok := that.(*SingleLoadBalancerAppSetting) if !ok { - that2, ok := that.(APIRateLimit) + that2, ok := that.(SingleLoadBalancerAppSetting) if ok { that1 = &that2 } else { @@ -18762,41 +14388,34 @@ func (this *APIRateLimit) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.IpAllowedListChoice == nil { - if this.IpAllowedListChoice != nil { + if that1.ApiDiscoveryChoice == nil { + if this.ApiDiscoveryChoice != nil { return false } - } else if this.IpAllowedListChoice == nil { - return false - } else if !this.IpAllowedListChoice.Equal(that1.IpAllowedListChoice) { + } else if this.ApiDiscoveryChoice == nil { return false - } - if len(this.ServerUrlRules) != len(that1.ServerUrlRules) { + } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { return false } - for i := range this.ServerUrlRules { - if !this.ServerUrlRules[i].Equal(that1.ServerUrlRules[i]) { + if that1.MaliciousUserDetectionChoice == nil { + if this.MaliciousUserDetectionChoice != nil { return false } - } - if len(this.ApiEndpointRules) != len(that1.ApiEndpointRules) { + } else if this.MaliciousUserDetectionChoice == nil { + return false + } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { return false - } - for i := range this.ApiEndpointRules { - if !this.ApiEndpointRules[i].Equal(that1.ApiEndpointRules[i]) { - return false - } } return true } -func (this *APIRateLimit_NoIpAllowedList) Equal(that interface{}) bool { +func (this *SingleLoadBalancerAppSetting_EnableDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIRateLimit_NoIpAllowedList) + that1, ok := that.(*SingleLoadBalancerAppSetting_EnableDiscovery) if !ok { - that2, ok := that.(APIRateLimit_NoIpAllowedList) + that2, ok := that.(SingleLoadBalancerAppSetting_EnableDiscovery) if ok { that1 = &that2 } else { @@ -18808,19 +14427,19 @@ func (this *APIRateLimit_NoIpAllowedList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoIpAllowedList.Equal(that1.NoIpAllowedList) { + if !this.EnableDiscovery.Equal(that1.EnableDiscovery) { return false } return true } -func (this *APIRateLimit_IpAllowedList) Equal(that interface{}) bool { +func (this *SingleLoadBalancerAppSetting_DisableDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIRateLimit_IpAllowedList) + that1, ok := that.(*SingleLoadBalancerAppSetting_DisableDiscovery) if !ok { - that2, ok := that.(APIRateLimit_IpAllowedList) + that2, ok := that.(SingleLoadBalancerAppSetting_DisableDiscovery) if ok { that1 = &that2 } else { @@ -18832,19 +14451,19 @@ func (this *APIRateLimit_IpAllowedList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.IpAllowedList.Equal(that1.IpAllowedList) { + if !this.DisableDiscovery.Equal(that1.DisableDiscovery) { return false } return true } -func (this *APIRateLimit_CustomIpAllowedList) Equal(that interface{}) bool { +func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIRateLimit_CustomIpAllowedList) + that1, ok := that.(*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) if !ok { - that2, ok := that.(APIRateLimit_CustomIpAllowedList) + that2, ok := that.(SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -18856,19 +14475,19 @@ func (this *APIRateLimit_CustomIpAllowedList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.CustomIpAllowedList.Equal(that1.CustomIpAllowedList) { + if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { return false } return true } -func (this *APIRateLimit_BypassRateLimitingRules) Equal(that interface{}) bool { +func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIRateLimit_BypassRateLimitingRules) + that1, ok := that.(*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) if !ok { - that2, ok := that.(APIRateLimit_BypassRateLimitingRules) + that2, ok := that.(SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -18880,19 +14499,19 @@ func (this *APIRateLimit_BypassRateLimitingRules) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.BypassRateLimitingRules.Equal(that1.BypassRateLimitingRules) { + if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { return false } return true } -func (this *ProxyTypeHttps) Equal(that interface{}) bool { +func (this *OriginServerSubsetRuleListType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps) + that1, ok := that.(*OriginServerSubsetRuleListType) if !ok { - that2, ok := that.(ProxyTypeHttps) + that2, ok := that.(OriginServerSubsetRuleListType) if ok { that1 = &that2 } else { @@ -18904,76 +14523,24 @@ func (this *ProxyTypeHttps) Equal(that interface{}) bool { } else if this == nil { return false } - if this.HttpRedirect != that1.HttpRedirect { - return false - } - if this.AddHsts != that1.AddHsts { - return false - } - if that1.TlsCertificatesChoice == nil { - if this.TlsCertificatesChoice != nil { - return false - } - } else if this.TlsCertificatesChoice == nil { - return false - } else if !this.TlsCertificatesChoice.Equal(that1.TlsCertificatesChoice) { - return false - } - if that1.ServerHeaderChoice == nil { - if this.ServerHeaderChoice != nil { - return false - } - } else if this.ServerHeaderChoice == nil { - return false - } else if !this.ServerHeaderChoice.Equal(that1.ServerHeaderChoice) { - return false - } - if that1.PathNormalizeChoice == nil { - if this.PathNormalizeChoice != nil { - return false - } - } else if this.PathNormalizeChoice == nil { - return false - } else if !this.PathNormalizeChoice.Equal(that1.PathNormalizeChoice) { - return false - } - if that1.PortChoice == nil { - if this.PortChoice != nil { - return false - } - } else if this.PortChoice == nil { - return false - } else if !this.PortChoice.Equal(that1.PortChoice) { + if len(this.OriginServerSubsetRules) != len(that1.OriginServerSubsetRules) { return false } - if that1.DefaultLbChoice == nil { - if this.DefaultLbChoice != nil { + for i := range this.OriginServerSubsetRules { + if !this.OriginServerSubsetRules[i].Equal(that1.OriginServerSubsetRules[i]) { return false } - } else if this.DefaultLbChoice == nil { - return false - } else if !this.DefaultLbChoice.Equal(that1.DefaultLbChoice) { - return false - } - if !this.HeaderTransformationType.Equal(that1.HeaderTransformationType) { - return false - } - if this.ConnectionIdleTimeout != that1.ConnectionIdleTimeout { - return false - } - if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { - return false } return true } -func (this *ProxyTypeHttps_TlsParameters) Equal(that interface{}) bool { +func (this *ClientSideDefenseType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_TlsParameters) + that1, ok := that.(*ClientSideDefenseType) if !ok { - that2, ok := that.(ProxyTypeHttps_TlsParameters) + that2, ok := that.(ClientSideDefenseType) if ok { that1 = &that2 } else { @@ -18985,19 +14552,19 @@ func (this *ProxyTypeHttps_TlsParameters) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.TlsParameters.Equal(that1.TlsParameters) { + if !this.Policy.Equal(that1.Policy) { return false } return true } -func (this *ProxyTypeHttps_TlsCertParams) Equal(that interface{}) bool { +func (this *ClientSideDefensePolicyType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_TlsCertParams) + that1, ok := that.(*ClientSideDefensePolicyType) if !ok { - that2, ok := that.(ProxyTypeHttps_TlsCertParams) + that2, ok := that.(ClientSideDefensePolicyType) if ok { that1 = &that2 } else { @@ -19009,19 +14576,25 @@ func (this *ProxyTypeHttps_TlsCertParams) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.TlsCertParams.Equal(that1.TlsCertParams) { + if that1.JavaScriptChoice == nil { + if this.JavaScriptChoice != nil { + return false + } + } else if this.JavaScriptChoice == nil { + return false + } else if !this.JavaScriptChoice.Equal(that1.JavaScriptChoice) { return false } return true } -func (this *ProxyTypeHttps_DefaultHeader) Equal(that interface{}) bool { +func (this *ClientSideDefensePolicyType_DisableJsInsert) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_DefaultHeader) + that1, ok := that.(*ClientSideDefensePolicyType_DisableJsInsert) if !ok { - that2, ok := that.(ProxyTypeHttps_DefaultHeader) + that2, ok := that.(ClientSideDefensePolicyType_DisableJsInsert) if ok { that1 = &that2 } else { @@ -19033,19 +14606,19 @@ func (this *ProxyTypeHttps_DefaultHeader) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DefaultHeader.Equal(that1.DefaultHeader) { + if !this.DisableJsInsert.Equal(that1.DisableJsInsert) { return false } return true } -func (this *ProxyTypeHttps_ServerName) Equal(that interface{}) bool { +func (this *ClientSideDefensePolicyType_JsInsertAllPages) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_ServerName) + that1, ok := that.(*ClientSideDefensePolicyType_JsInsertAllPages) if !ok { - that2, ok := that.(ProxyTypeHttps_ServerName) + that2, ok := that.(ClientSideDefensePolicyType_JsInsertAllPages) if ok { that1 = &that2 } else { @@ -19057,19 +14630,19 @@ func (this *ProxyTypeHttps_ServerName) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ServerName != that1.ServerName { + if !this.JsInsertAllPages.Equal(that1.JsInsertAllPages) { return false } return true } -func (this *ProxyTypeHttps_AppendServerName) Equal(that interface{}) bool { +func (this *ClientSideDefensePolicyType_JsInsertAllPagesExcept) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_AppendServerName) + that1, ok := that.(*ClientSideDefensePolicyType_JsInsertAllPagesExcept) if !ok { - that2, ok := that.(ProxyTypeHttps_AppendServerName) + that2, ok := that.(ClientSideDefensePolicyType_JsInsertAllPagesExcept) if ok { that1 = &that2 } else { @@ -19081,19 +14654,19 @@ func (this *ProxyTypeHttps_AppendServerName) Equal(that interface{}) bool { } else if this == nil { return false } - if this.AppendServerName != that1.AppendServerName { + if !this.JsInsertAllPagesExcept.Equal(that1.JsInsertAllPagesExcept) { return false } return true } -func (this *ProxyTypeHttps_PassThrough) Equal(that interface{}) bool { +func (this *ClientSideDefensePolicyType_JsInsertionRules) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_PassThrough) + that1, ok := that.(*ClientSideDefensePolicyType_JsInsertionRules) if !ok { - that2, ok := that.(ProxyTypeHttps_PassThrough) + that2, ok := that.(ClientSideDefensePolicyType_JsInsertionRules) if ok { that1 = &that2 } else { @@ -19105,19 +14678,19 @@ func (this *ProxyTypeHttps_PassThrough) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.PassThrough.Equal(that1.PassThrough) { + if !this.JsInsertionRules.Equal(that1.JsInsertionRules) { return false } return true } -func (this *ProxyTypeHttps_EnablePathNormalize) Equal(that interface{}) bool { +func (this *CSDJavaScriptInsertAllWithExceptionsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_EnablePathNormalize) + that1, ok := that.(*CSDJavaScriptInsertAllWithExceptionsType) if !ok { - that2, ok := that.(ProxyTypeHttps_EnablePathNormalize) + that2, ok := that.(CSDJavaScriptInsertAllWithExceptionsType) if ok { that1 = &that2 } else { @@ -19129,19 +14702,24 @@ func (this *ProxyTypeHttps_EnablePathNormalize) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.EnablePathNormalize.Equal(that1.EnablePathNormalize) { + if len(this.ExcludeList) != len(that1.ExcludeList) { return false } + for i := range this.ExcludeList { + if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { + return false + } + } return true } -func (this *ProxyTypeHttps_DisablePathNormalize) Equal(that interface{}) bool { +func (this *CSDJavaScriptInsertType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_DisablePathNormalize) + that1, ok := that.(*CSDJavaScriptInsertType) if !ok { - that2, ok := that.(ProxyTypeHttps_DisablePathNormalize) + that2, ok := that.(CSDJavaScriptInsertType) if ok { that1 = &that2 } else { @@ -19153,19 +14731,32 @@ func (this *ProxyTypeHttps_DisablePathNormalize) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisablePathNormalize.Equal(that1.DisablePathNormalize) { + if len(this.Rules) != len(that1.Rules) { + return false + } + for i := range this.Rules { + if !this.Rules[i].Equal(that1.Rules[i]) { + return false + } + } + if len(this.ExcludeList) != len(that1.ExcludeList) { return false } + for i := range this.ExcludeList { + if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { + return false + } + } return true } -func (this *ProxyTypeHttps_Port) Equal(that interface{}) bool { +func (this *CSDJavaScriptInsertionRule) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_Port) + that1, ok := that.(*CSDJavaScriptInsertionRule) if !ok { - that2, ok := that.(ProxyTypeHttps_Port) + that2, ok := that.(CSDJavaScriptInsertionRule) if ok { that1 = &that2 } else { @@ -19177,19 +14768,31 @@ func (this *ProxyTypeHttps_Port) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Port != that1.Port { + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if that1.DomainMatcherChoice == nil { + if this.DomainMatcherChoice != nil { + return false + } + } else if this.DomainMatcherChoice == nil { + return false + } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { + return false + } + if !this.Path.Equal(that1.Path) { return false } return true } -func (this *ProxyTypeHttps_PortRanges) Equal(that interface{}) bool { +func (this *CSDJavaScriptInsertionRule_AnyDomain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_PortRanges) + that1, ok := that.(*CSDJavaScriptInsertionRule_AnyDomain) if !ok { - that2, ok := that.(ProxyTypeHttps_PortRanges) + that2, ok := that.(CSDJavaScriptInsertionRule_AnyDomain) if ok { that1 = &that2 } else { @@ -19201,19 +14804,19 @@ func (this *ProxyTypeHttps_PortRanges) Equal(that interface{}) bool { } else if this == nil { return false } - if this.PortRanges != that1.PortRanges { + if !this.AnyDomain.Equal(that1.AnyDomain) { return false } return true } -func (this *ProxyTypeHttps_NonDefaultLoadbalancer) Equal(that interface{}) bool { +func (this *CSDJavaScriptInsertionRule_Domain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_NonDefaultLoadbalancer) + that1, ok := that.(*CSDJavaScriptInsertionRule_Domain) if !ok { - that2, ok := that.(ProxyTypeHttps_NonDefaultLoadbalancer) + that2, ok := that.(CSDJavaScriptInsertionRule_Domain) if ok { that1 = &that2 } else { @@ -19225,19 +14828,19 @@ func (this *ProxyTypeHttps_NonDefaultLoadbalancer) Equal(that interface{}) bool } else if this == nil { return false } - if !this.NonDefaultLoadbalancer.Equal(that1.NonDefaultLoadbalancer) { + if !this.Domain.Equal(that1.Domain) { return false } return true } -func (this *ProxyTypeHttps_DefaultLoadbalancer) Equal(that interface{}) bool { +func (this *BotDefenseAdvancedPolicyType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttps_DefaultLoadbalancer) + that1, ok := that.(*BotDefenseAdvancedPolicyType) if !ok { - that2, ok := that.(ProxyTypeHttps_DefaultLoadbalancer) + that2, ok := that.(BotDefenseAdvancedPolicyType) if ok { that1 = &that2 } else { @@ -19249,19 +14852,36 @@ func (this *ProxyTypeHttps_DefaultLoadbalancer) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DefaultLoadbalancer.Equal(that1.DefaultLoadbalancer) { + if len(this.ProtectedAppEndpoints) != len(that1.ProtectedAppEndpoints) { + return false + } + for i := range this.ProtectedAppEndpoints { + if !this.ProtectedAppEndpoints[i].Equal(that1.ProtectedAppEndpoints[i]) { + return false + } + } + if this.JsDownloadPath != that1.JsDownloadPath { + return false + } + if that1.MobileSdkChoice == nil { + if this.MobileSdkChoice != nil { + return false + } + } else if this.MobileSdkChoice == nil { + return false + } else if !this.MobileSdkChoice.Equal(that1.MobileSdkChoice) { return false } return true } -func (this *ProxyTypeHttp) Equal(that interface{}) bool { +func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttp) + that1, ok := that.(*BotDefenseAdvancedPolicyType_DisableMobileSdk) if !ok { - that2, ok := that.(ProxyTypeHttp) + that2, ok := that.(BotDefenseAdvancedPolicyType_DisableMobileSdk) if ok { that1 = &that2 } else { @@ -19273,28 +14893,19 @@ func (this *ProxyTypeHttp) Equal(that interface{}) bool { } else if this == nil { return false } - if this.DnsVolterraManaged != that1.DnsVolterraManaged { - return false - } - if that1.PortChoice == nil { - if this.PortChoice != nil { - return false - } - } else if this.PortChoice == nil { - return false - } else if !this.PortChoice.Equal(that1.PortChoice) { + if !this.DisableMobileSdk.Equal(that1.DisableMobileSdk) { return false } return true } -func (this *ProxyTypeHttp_Port) Equal(that interface{}) bool { +func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttp_Port) + that1, ok := that.(*BotDefenseAdvancedPolicyType_MobileSdkConfig) if !ok { - that2, ok := that.(ProxyTypeHttp_Port) + that2, ok := that.(BotDefenseAdvancedPolicyType_MobileSdkConfig) if ok { that1 = &that2 } else { @@ -19306,19 +14917,19 @@ func (this *ProxyTypeHttp_Port) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Port != that1.Port { + if !this.MobileSdkConfig.Equal(that1.MobileSdkConfig) { return false } return true } -func (this *ProxyTypeHttp_PortRanges) Equal(that interface{}) bool { +func (this *BotAdvancedMobileSDKConfigType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttp_PortRanges) + that1, ok := that.(*BotAdvancedMobileSDKConfigType) if !ok { - that2, ok := that.(ProxyTypeHttp_PortRanges) + that2, ok := that.(BotAdvancedMobileSDKConfigType) if ok { that1 = &that2 } else { @@ -19330,19 +14941,19 @@ func (this *ProxyTypeHttp_PortRanges) Equal(that interface{}) bool { } else if this == nil { return false } - if this.PortRanges != that1.PortRanges { + if !this.MobileIdentifier.Equal(that1.MobileIdentifier) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts) + that1, ok := that.(*ProtectedAppEndpointType) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts) + that2, ok := that.(ProtectedAppEndpointType) if ok { that1 = &that2 } else { @@ -19354,79 +14965,73 @@ func (this *ProxyTypeHttpsAutoCerts) Equal(that interface{}) bool { } else if this == nil { return false } - if this.HttpRedirect != that1.HttpRedirect { + if !this.Metadata.Equal(that1.Metadata) { return false } - if this.AddHsts != that1.AddHsts { + if that1.DomainMatcherChoice == nil { + if this.DomainMatcherChoice != nil { + return false + } + } else if this.DomainMatcherChoice == nil { return false - } - if !this.TlsConfig.Equal(that1.TlsConfig) { + } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { return false } - if that1.MtlsChoice == nil { - if this.MtlsChoice != nil { - return false - } - } else if this.MtlsChoice == nil { + if !this.Path.Equal(that1.Path) { return false - } else if !this.MtlsChoice.Equal(that1.MtlsChoice) { + } + if len(this.Query) != len(that1.Query) { return false } - if that1.ServerHeaderChoice == nil { - if this.ServerHeaderChoice != nil { + for i := range this.Query { + if !this.Query[i].Equal(that1.Query[i]) { return false } - } else if this.ServerHeaderChoice == nil { - return false - } else if !this.ServerHeaderChoice.Equal(that1.ServerHeaderChoice) { + } + if len(this.RequestBody) != len(that1.RequestBody) { return false } - if that1.PathNormalizeChoice == nil { - if this.PathNormalizeChoice != nil { + for i := range this.RequestBody { + if !this.RequestBody[i].Equal(that1.RequestBody[i]) { return false } - } else if this.PathNormalizeChoice == nil { - return false - } else if !this.PathNormalizeChoice.Equal(that1.PathNormalizeChoice) { + } + if len(this.HttpMethods) != len(that1.HttpMethods) { return false } - if that1.PortChoice == nil { - if this.PortChoice != nil { + for i := range this.HttpMethods { + if this.HttpMethods[i] != that1.HttpMethods[i] { return false } - } else if this.PortChoice == nil { - return false - } else if !this.PortChoice.Equal(that1.PortChoice) { - return false } - if that1.DefaultLbChoice == nil { - if this.DefaultLbChoice != nil { + if that1.AppTrafficTypeChoice == nil { + if this.AppTrafficTypeChoice != nil { return false } - } else if this.DefaultLbChoice == nil { - return false - } else if !this.DefaultLbChoice.Equal(that1.DefaultLbChoice) { + } else if this.AppTrafficTypeChoice == nil { return false - } - if !this.HeaderTransformationType.Equal(that1.HeaderTransformationType) { + } else if !this.AppTrafficTypeChoice.Equal(that1.AppTrafficTypeChoice) { return false } - if this.ConnectionIdleTimeout != that1.ConnectionIdleTimeout { + if that1.FlowLabelChoice == nil { + if this.FlowLabelChoice != nil { + return false + } + } else if this.FlowLabelChoice == nil { return false - } - if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { + } else if !this.FlowLabelChoice.Equal(that1.FlowLabelChoice) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_NoMtls) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_AnyDomain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_NoMtls) + that1, ok := that.(*ProtectedAppEndpointType_AnyDomain) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_NoMtls) + that2, ok := that.(ProtectedAppEndpointType_AnyDomain) if ok { that1 = &that2 } else { @@ -19438,19 +15043,19 @@ func (this *ProxyTypeHttpsAutoCerts_NoMtls) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoMtls.Equal(that1.NoMtls) { + if !this.AnyDomain.Equal(that1.AnyDomain) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_UseMtls) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_Domain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_UseMtls) + that1, ok := that.(*ProtectedAppEndpointType_Domain) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_UseMtls) + that2, ok := that.(ProtectedAppEndpointType_Domain) if ok { that1 = &that2 } else { @@ -19462,19 +15067,19 @@ func (this *ProxyTypeHttpsAutoCerts_UseMtls) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.UseMtls.Equal(that1.UseMtls) { + if !this.Domain.Equal(that1.Domain) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_WebClient) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_DefaultHeader) + that1, ok := that.(*ProtectedAppEndpointType_WebClient) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_DefaultHeader) + that2, ok := that.(ProtectedAppEndpointType_WebClient) if ok { that1 = &that2 } else { @@ -19486,19 +15091,19 @@ func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) Equal(that interface{}) bool } else if this == nil { return false } - if !this.DefaultHeader.Equal(that1.DefaultHeader) { + if !this.WebClient.Equal(that1.WebClient) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_ServerName) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_MobileClient) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_ServerName) + that1, ok := that.(*ProtectedAppEndpointType_MobileClient) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_ServerName) + that2, ok := that.(ProtectedAppEndpointType_MobileClient) if ok { that1 = &that2 } else { @@ -19510,19 +15115,19 @@ func (this *ProxyTypeHttpsAutoCerts_ServerName) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ServerName != that1.ServerName { + if !this.MobileClient.Equal(that1.MobileClient) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_AppendServerName) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_WebMobileClient) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_AppendServerName) + that1, ok := that.(*ProtectedAppEndpointType_WebMobileClient) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_AppendServerName) + that2, ok := that.(ProtectedAppEndpointType_WebMobileClient) if ok { that1 = &that2 } else { @@ -19534,19 +15139,19 @@ func (this *ProxyTypeHttpsAutoCerts_AppendServerName) Equal(that interface{}) bo } else if this == nil { return false } - if this.AppendServerName != that1.AppendServerName { + if !this.WebMobileClient.Equal(that1.WebMobileClient) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_PassThrough) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_UndefinedFlowLabel) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_PassThrough) + that1, ok := that.(*ProtectedAppEndpointType_UndefinedFlowLabel) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_PassThrough) + that2, ok := that.(ProtectedAppEndpointType_UndefinedFlowLabel) if ok { that1 = &that2 } else { @@ -19558,19 +15163,19 @@ func (this *ProxyTypeHttpsAutoCerts_PassThrough) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.PassThrough.Equal(that1.PassThrough) { + if !this.UndefinedFlowLabel.Equal(that1.UndefinedFlowLabel) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) Equal(that interface{}) bool { +func (this *ProtectedAppEndpointType_FlowLabel) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_EnablePathNormalize) + that1, ok := that.(*ProtectedAppEndpointType_FlowLabel) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_EnablePathNormalize) + that2, ok := that.(ProtectedAppEndpointType_FlowLabel) if ok { that1 = &that2 } else { @@ -19582,19 +15187,19 @@ func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) Equal(that interface{}) } else if this == nil { return false } - if !this.EnablePathNormalize.Equal(that1.EnablePathNormalize) { + if !this.FlowLabel.Equal(that1.FlowLabel) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) Equal(that interface{}) bool { +func (this *RequestBody) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_DisablePathNormalize) + that1, ok := that.(*RequestBody) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_DisablePathNormalize) + that2, ok := that.(RequestBody) if ok { that1 = &that2 } else { @@ -19606,19 +15211,28 @@ func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) Equal(that interface{} } else if this == nil { return false } - if !this.DisablePathNormalize.Equal(that1.DisablePathNormalize) { + if this.Name != that1.Name { + return false + } + if that1.ValueType == nil { + if this.ValueType != nil { + return false + } + } else if this.ValueType == nil { + return false + } else if !this.ValueType.Equal(that1.ValueType) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_Port) Equal(that interface{}) bool { +func (this *RequestBody_ExactValue) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_Port) + that1, ok := that.(*RequestBody_ExactValue) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_Port) + that2, ok := that.(RequestBody_ExactValue) if ok { that1 = &that2 } else { @@ -19630,19 +15244,19 @@ func (this *ProxyTypeHttpsAutoCerts_Port) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Port != that1.Port { + if this.ExactValue != that1.ExactValue { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_PortRanges) Equal(that interface{}) bool { +func (this *RequestBody_RegexValue) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_PortRanges) + that1, ok := that.(*RequestBody_RegexValue) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_PortRanges) + that2, ok := that.(RequestBody_RegexValue) if ok { that1 = &that2 } else { @@ -19654,19 +15268,19 @@ func (this *ProxyTypeHttpsAutoCerts_PortRanges) Equal(that interface{}) bool { } else if this == nil { return false } - if this.PortRanges != that1.PortRanges { + if this.RegexValue != that1.RegexValue { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) Equal(that interface{}) bool { +func (this *Query) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) + that1, ok := that.(*Query) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) + that2, ok := that.(Query) if ok { that1 = &that2 } else { @@ -19678,19 +15292,28 @@ func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) Equal(that interface } else if this == nil { return false } - if !this.NonDefaultLoadbalancer.Equal(that1.NonDefaultLoadbalancer) { + if this.Name != that1.Name { + return false + } + if that1.ValueType == nil { + if this.ValueType != nil { + return false + } + } else if this.ValueType == nil { + return false + } else if !this.ValueType.Equal(that1.ValueType) { return false } return true } -func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) Equal(that interface{}) bool { +func (this *Query_ExactValue) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) + that1, ok := that.(*Query_ExactValue) if !ok { - that2, ok := that.(ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) + that2, ok := that.(Query_ExactValue) if ok { that1 = &that2 } else { @@ -19702,19 +15325,19 @@ func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) Equal(that interface{}) } else if this == nil { return false } - if !this.DefaultLoadbalancer.Equal(that1.DefaultLoadbalancer) { + if this.ExactValue != that1.ExactValue { return false } return true } -func (this *HashPolicyListType) Equal(that interface{}) bool { +func (this *Query_RegexValue) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*HashPolicyListType) + that1, ok := that.(*Query_RegexValue) if !ok { - that2, ok := that.(HashPolicyListType) + that2, ok := that.(Query_RegexValue) if ok { that1 = &that2 } else { @@ -19726,24 +15349,19 @@ func (this *HashPolicyListType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.HashPolicy) != len(that1.HashPolicy) { + if this.RegexValue != that1.RegexValue { return false } - for i := range this.HashPolicy { - if !this.HashPolicy[i].Equal(that1.HashPolicy[i]) { - return false - } - } return true } -func (this *MirrorPolicyType) Equal(that interface{}) bool { +func (this *Query_CheckPresence) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*MirrorPolicyType) + that1, ok := that.(*Query_CheckPresence) if !ok { - that2, ok := that.(MirrorPolicyType) + that2, ok := that.(Query_CheckPresence) if ok { that1 = &that2 } else { @@ -19755,22 +15373,19 @@ func (this *MirrorPolicyType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.OriginPool.Equal(that1.OriginPool) { - return false - } - if !this.Percent.Equal(that1.Percent) { + if !this.CheckPresence.Equal(that1.CheckPresence) { return false } return true } -func (this *RouteSimpleAdvancedOptions) Equal(that interface{}) bool { +func (this *ShapeBotDefenseType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions) + that1, ok := that.(*ShapeBotDefenseType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions) + that2, ok := that.(ShapeBotDefenseType) if ok { that1 = &that2 } else { @@ -19782,161 +15397,165 @@ func (this *RouteSimpleAdvancedOptions) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.HashPolicyChoice == nil { - if this.HashPolicyChoice != nil { - return false - } - } else if this.HashPolicyChoice == nil { - return false - } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { + if this.RegionalEndpoint != that1.RegionalEndpoint { return false } - if this.Priority != that1.Priority { + if !this.Policy.Equal(that1.Policy) { return false } - if len(this.EndpointSubsets) != len(that1.EndpointSubsets) { + if this.Timeout != that1.Timeout { return false } - for i := range this.EndpointSubsets { - if this.EndpointSubsets[i] != that1.EndpointSubsets[i] { - return false - } - } - if that1.RewriteChoice == nil { - if this.RewriteChoice != nil { + if that1.CorsSupportChoice == nil { + if this.CorsSupportChoice != nil { return false } - } else if this.RewriteChoice == nil { + } else if this.CorsSupportChoice == nil { return false - } else if !this.RewriteChoice.Equal(that1.RewriteChoice) { + } else if !this.CorsSupportChoice.Equal(that1.CorsSupportChoice) { return false } - if len(this.RequestHeadersToAdd) != len(that1.RequestHeadersToAdd) { - return false + return true +} +func (this *ShapeBotDefenseType_EnableCorsSupport) Equal(that interface{}) bool { + if that == nil { + return this == nil } - for i := range this.RequestHeadersToAdd { - if !this.RequestHeadersToAdd[i].Equal(that1.RequestHeadersToAdd[i]) { + + that1, ok := that.(*ShapeBotDefenseType_EnableCorsSupport) + if !ok { + that2, ok := that.(ShapeBotDefenseType_EnableCorsSupport) + if ok { + that1 = &that2 + } else { return false } } - if len(this.RequestHeadersToRemove) != len(that1.RequestHeadersToRemove) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - for i := range this.RequestHeadersToRemove { - if this.RequestHeadersToRemove[i] != that1.RequestHeadersToRemove[i] { - return false - } - } - if len(this.ResponseHeadersToAdd) != len(that1.ResponseHeadersToAdd) { + if !this.EnableCorsSupport.Equal(that1.EnableCorsSupport) { return false } - for i := range this.ResponseHeadersToAdd { - if !this.ResponseHeadersToAdd[i].Equal(that1.ResponseHeadersToAdd[i]) { + return true +} +func (this *ShapeBotDefenseType_DisableCorsSupport) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ShapeBotDefenseType_DisableCorsSupport) + if !ok { + that2, ok := that.(ShapeBotDefenseType_DisableCorsSupport) + if ok { + that1 = &that2 + } else { return false } } - if len(this.ResponseHeadersToRemove) != len(that1.ResponseHeadersToRemove) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - for i := range this.ResponseHeadersToRemove { - if this.ResponseHeadersToRemove[i] != that1.ResponseHeadersToRemove[i] { - return false - } - } - if this.DisableLocationAdd != that1.DisableLocationAdd { + if !this.DisableCorsSupport.Equal(that1.DisableCorsSupport) { return false } - if that1.WafChoice == nil { - if this.WafChoice != nil { + return true +} +func (this *BotDefenseAdvancedType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*BotDefenseAdvancedType) + if !ok { + that2, ok := that.(BotDefenseAdvancedType) + if ok { + that1 = &that2 + } else { return false } - } else if this.WafChoice == nil { - return false - } else if !this.WafChoice.Equal(that1.WafChoice) { - return false } - if !this.CorsPolicy.Equal(that1.CorsPolicy) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { + if !this.Web.Equal(that1.Web) { return false } - if that1.SpdyChoice == nil { - if this.SpdyChoice != nil { - return false - } - } else if this.SpdyChoice == nil { - return false - } else if !this.SpdyChoice.Equal(that1.SpdyChoice) { + if !this.Mobile.Equal(that1.Mobile) { return false } - if that1.WebsocketChoice == nil { - if this.WebsocketChoice != nil { - return false - } - } else if this.WebsocketChoice == nil { - return false - } else if !this.WebsocketChoice.Equal(that1.WebsocketChoice) { + if !this.Policy.Equal(that1.Policy) { return false } - if that1.RetryPolicyChoice == nil { - if this.RetryPolicyChoice != nil { + return true +} +func (this *ShapeBotDefensePolicyType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ShapeBotDefensePolicyType) + if !ok { + that2, ok := that.(ShapeBotDefensePolicyType) + if ok { + that1 = &that2 + } else { return false } - } else if this.RetryPolicyChoice == nil { - return false - } else if !this.RetryPolicyChoice.Equal(that1.RetryPolicyChoice) { + } + if that1 == nil { + return this == nil + } else if this == nil { return false } - if this.Timeout != that1.Timeout { + if len(this.ProtectedAppEndpoints) != len(that1.ProtectedAppEndpoints) { return false } - if that1.BufferChoice == nil { - if this.BufferChoice != nil { + for i := range this.ProtectedAppEndpoints { + if !this.ProtectedAppEndpoints[i].Equal(that1.ProtectedAppEndpoints[i]) { return false } - } else if this.BufferChoice == nil { - return false - } else if !this.BufferChoice.Equal(that1.BufferChoice) { - return false } - if that1.MirroringChoice == nil { - if this.MirroringChoice != nil { + if that1.JavaScriptChoice == nil { + if this.JavaScriptChoice != nil { return false } - } else if this.MirroringChoice == nil { + } else if this.JavaScriptChoice == nil { return false - } else if !this.MirroringChoice.Equal(that1.MirroringChoice) { + } else if !this.JavaScriptChoice.Equal(that1.JavaScriptChoice) { return false } - if that1.ClusterRetractChoice == nil { - if this.ClusterRetractChoice != nil { - return false - } - } else if this.ClusterRetractChoice == nil { + if this.JsDownloadPath != that1.JsDownloadPath { return false - } else if !this.ClusterRetractChoice.Equal(that1.ClusterRetractChoice) { + } + if this.JavascriptMode != that1.JavascriptMode { return false } - if that1.BotDefenseJavascriptInjectionChoice == nil { - if this.BotDefenseJavascriptInjectionChoice != nil { + if that1.MobileSdkChoice == nil { + if this.MobileSdkChoice != nil { return false } - } else if this.BotDefenseJavascriptInjectionChoice == nil { + } else if this.MobileSdkChoice == nil { return false - } else if !this.BotDefenseJavascriptInjectionChoice.Equal(that1.BotDefenseJavascriptInjectionChoice) { + } else if !this.MobileSdkChoice.Equal(that1.MobileSdkChoice) { return false } return true } -func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) Equal(that interface{}) bool { +func (this *ShapeBotDefensePolicyType_DisableJsInsert) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_CommonHashPolicy) + that1, ok := that.(*ShapeBotDefensePolicyType_DisableJsInsert) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_CommonHashPolicy) + that2, ok := that.(ShapeBotDefensePolicyType_DisableJsInsert) if ok { that1 = &that2 } else { @@ -19948,19 +15567,19 @@ func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) Equal(that interface{}) } else if this == nil { return false } - if !this.CommonHashPolicy.Equal(that1.CommonHashPolicy) { + if !this.DisableJsInsert.Equal(that1.DisableJsInsert) { return false } return true } -func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) Equal(that interface{}) bool { +func (this *ShapeBotDefensePolicyType_JsInsertAllPages) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_SpecificHashPolicy) + that1, ok := that.(*ShapeBotDefensePolicyType_JsInsertAllPages) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_SpecificHashPolicy) + that2, ok := that.(ShapeBotDefensePolicyType_JsInsertAllPages) if ok { that1 = &that2 } else { @@ -19972,19 +15591,19 @@ func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) Equal(that interface{ } else if this == nil { return false } - if !this.SpecificHashPolicy.Equal(that1.SpecificHashPolicy) { + if !this.JsInsertAllPages.Equal(that1.JsInsertAllPages) { return false } return true } -func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) Equal(that interface{}) bool { +func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DisablePrefixRewrite) + that1, ok := that.(*ShapeBotDefensePolicyType_JsInsertAllPagesExcept) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DisablePrefixRewrite) + that2, ok := that.(ShapeBotDefensePolicyType_JsInsertAllPagesExcept) if ok { that1 = &that2 } else { @@ -19996,19 +15615,19 @@ func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) Equal(that interfac } else if this == nil { return false } - if !this.DisablePrefixRewrite.Equal(that1.DisablePrefixRewrite) { + if !this.JsInsertAllPagesExcept.Equal(that1.JsInsertAllPagesExcept) { return false } return true } -func (this *RouteSimpleAdvancedOptions_PrefixRewrite) Equal(that interface{}) bool { +func (this *ShapeBotDefensePolicyType_JsInsertionRules) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_PrefixRewrite) + that1, ok := that.(*ShapeBotDefensePolicyType_JsInsertionRules) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_PrefixRewrite) + that2, ok := that.(ShapeBotDefensePolicyType_JsInsertionRules) if ok { that1 = &that2 } else { @@ -20020,19 +15639,19 @@ func (this *RouteSimpleAdvancedOptions_PrefixRewrite) Equal(that interface{}) bo } else if this == nil { return false } - if this.PrefixRewrite != that1.PrefixRewrite { + if !this.JsInsertionRules.Equal(that1.JsInsertionRules) { return false } return true } -func (this *RouteSimpleAdvancedOptions_RegexRewrite) Equal(that interface{}) bool { +func (this *ShapeBotDefensePolicyType_DisableMobileSdk) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_RegexRewrite) + that1, ok := that.(*ShapeBotDefensePolicyType_DisableMobileSdk) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_RegexRewrite) + that2, ok := that.(ShapeBotDefensePolicyType_DisableMobileSdk) if ok { that1 = &that2 } else { @@ -20044,19 +15663,19 @@ func (this *RouteSimpleAdvancedOptions_RegexRewrite) Equal(that interface{}) boo } else if this == nil { return false } - if !this.RegexRewrite.Equal(that1.RegexRewrite) { + if !this.DisableMobileSdk.Equal(that1.DisableMobileSdk) { return false } return true } -func (this *RouteSimpleAdvancedOptions_InheritedWaf) Equal(that interface{}) bool { +func (this *ShapeBotDefensePolicyType_MobileSdkConfig) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_InheritedWaf) + that1, ok := that.(*ShapeBotDefensePolicyType_MobileSdkConfig) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_InheritedWaf) + that2, ok := that.(ShapeBotDefensePolicyType_MobileSdkConfig) if ok { that1 = &that2 } else { @@ -20068,19 +15687,19 @@ func (this *RouteSimpleAdvancedOptions_InheritedWaf) Equal(that interface{}) boo } else if this == nil { return false } - if !this.InheritedWaf.Equal(that1.InheritedWaf) { + if !this.MobileSdkConfig.Equal(that1.MobileSdkConfig) { return false } return true } -func (this *RouteSimpleAdvancedOptions_AppFirewall) Equal(that interface{}) bool { +func (this *MobileTrafficIdentifierType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_AppFirewall) + that1, ok := that.(*MobileTrafficIdentifierType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_AppFirewall) + that2, ok := that.(MobileTrafficIdentifierType) if ok { that1 = &that2 } else { @@ -20092,19 +15711,24 @@ func (this *RouteSimpleAdvancedOptions_AppFirewall) Equal(that interface{}) bool } else if this == nil { return false } - if !this.AppFirewall.Equal(that1.AppFirewall) { + if len(this.Headers) != len(that1.Headers) { return false } + for i := range this.Headers { + if !this.Headers[i].Equal(that1.Headers[i]) { + return false + } + } return true } -func (this *RouteSimpleAdvancedOptions_DisableWaf) Equal(that interface{}) bool { +func (this *MobileSDKConfigType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DisableWaf) + that1, ok := that.(*MobileSDKConfigType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DisableWaf) + that2, ok := that.(MobileSDKConfigType) if ok { that1 = &that2 } else { @@ -20116,19 +15740,22 @@ func (this *RouteSimpleAdvancedOptions_DisableWaf) Equal(that interface{}) bool } else if this == nil { return false } - if !this.DisableWaf.Equal(that1.DisableWaf) { + if this.ReloadHeaderName != that1.ReloadHeaderName { + return false + } + if !this.MobileIdentifier.Equal(that1.MobileIdentifier) { return false } return true } -func (this *RouteSimpleAdvancedOptions_DisableSpdy) Equal(that interface{}) bool { +func (this *AppEndpointType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DisableSpdy) + that1, ok := that.(*AppEndpointType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DisableSpdy) + that2, ok := that.(AppEndpointType) if ok { that1 = &that2 } else { @@ -20140,19 +15767,72 @@ func (this *RouteSimpleAdvancedOptions_DisableSpdy) Equal(that interface{}) bool } else if this == nil { return false } - if !this.DisableSpdy.Equal(that1.DisableSpdy) { + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if len(this.HttpMethods) != len(that1.HttpMethods) { + return false + } + for i := range this.HttpMethods { + if this.HttpMethods[i] != that1.HttpMethods[i] { + return false + } + } + if this.Protocol != that1.Protocol { + return false + } + if !this.Path.Equal(that1.Path) { + return false + } + if that1.DomainMatcherChoice == nil { + if this.DomainMatcherChoice != nil { + return false + } + } else if this.DomainMatcherChoice == nil { + return false + } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { + return false + } + if that1.AppTrafficTypeChoice == nil { + if this.AppTrafficTypeChoice != nil { + return false + } + } else if this.AppTrafficTypeChoice == nil { + return false + } else if !this.AppTrafficTypeChoice.Equal(that1.AppTrafficTypeChoice) { + return false + } + if !this.Mitigation.Equal(that1.Mitigation) { + return false + } + if that1.FlowLabelChoice == nil { + if this.FlowLabelChoice != nil { + return false + } + } else if this.FlowLabelChoice == nil { + return false + } else if !this.FlowLabelChoice.Equal(that1.FlowLabelChoice) { + return false + } + if that1.GoodbotChoice == nil { + if this.GoodbotChoice != nil { + return false + } + } else if this.GoodbotChoice == nil { + return false + } else if !this.GoodbotChoice.Equal(that1.GoodbotChoice) { return false } return true } -func (this *RouteSimpleAdvancedOptions_EnableSpdy) Equal(that interface{}) bool { +func (this *AppEndpointType_AnyDomain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_EnableSpdy) + that1, ok := that.(*AppEndpointType_AnyDomain) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_EnableSpdy) + that2, ok := that.(AppEndpointType_AnyDomain) if ok { that1 = &that2 } else { @@ -20164,19 +15844,19 @@ func (this *RouteSimpleAdvancedOptions_EnableSpdy) Equal(that interface{}) bool } else if this == nil { return false } - if !this.EnableSpdy.Equal(that1.EnableSpdy) { + if !this.AnyDomain.Equal(that1.AnyDomain) { return false } return true } -func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) Equal(that interface{}) bool { +func (this *AppEndpointType_Domain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DisableWebSocketConfig) + that1, ok := that.(*AppEndpointType_Domain) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DisableWebSocketConfig) + that2, ok := that.(AppEndpointType_Domain) if ok { that1 = &that2 } else { @@ -20188,19 +15868,19 @@ func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) Equal(that interf } else if this == nil { return false } - if !this.DisableWebSocketConfig.Equal(that1.DisableWebSocketConfig) { + if !this.Domain.Equal(that1.Domain) { return false } return true } -func (this *RouteSimpleAdvancedOptions_WebSocketConfig) Equal(that interface{}) bool { +func (this *AppEndpointType_Web) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_WebSocketConfig) + that1, ok := that.(*AppEndpointType_Web) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_WebSocketConfig) + that2, ok := that.(AppEndpointType_Web) if ok { that1 = &that2 } else { @@ -20212,19 +15892,19 @@ func (this *RouteSimpleAdvancedOptions_WebSocketConfig) Equal(that interface{}) } else if this == nil { return false } - if !this.WebSocketConfig.Equal(that1.WebSocketConfig) { + if !this.Web.Equal(that1.Web) { return false } return true } -func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) Equal(that interface{}) bool { +func (this *AppEndpointType_Mobile) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DefaultRetryPolicy) + that1, ok := that.(*AppEndpointType_Mobile) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DefaultRetryPolicy) + that2, ok := that.(AppEndpointType_Mobile) if ok { that1 = &that2 } else { @@ -20236,19 +15916,19 @@ func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) Equal(that interface{ } else if this == nil { return false } - if !this.DefaultRetryPolicy.Equal(that1.DefaultRetryPolicy) { + if !this.Mobile.Equal(that1.Mobile) { return false } return true } -func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) Equal(that interface{}) bool { +func (this *AppEndpointType_WebMobile) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_NoRetryPolicy) + that1, ok := that.(*AppEndpointType_WebMobile) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_NoRetryPolicy) + that2, ok := that.(AppEndpointType_WebMobile) if ok { that1 = &that2 } else { @@ -20260,19 +15940,19 @@ func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) Equal(that interface{}) bo } else if this == nil { return false } - if !this.NoRetryPolicy.Equal(that1.NoRetryPolicy) { + if !this.WebMobile.Equal(that1.WebMobile) { return false } return true } -func (this *RouteSimpleAdvancedOptions_RetryPolicy) Equal(that interface{}) bool { +func (this *AppEndpointType_UndefinedFlowLabel) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_RetryPolicy) + that1, ok := that.(*AppEndpointType_UndefinedFlowLabel) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_RetryPolicy) + that2, ok := that.(AppEndpointType_UndefinedFlowLabel) if ok { that1 = &that2 } else { @@ -20284,19 +15964,19 @@ func (this *RouteSimpleAdvancedOptions_RetryPolicy) Equal(that interface{}) bool } else if this == nil { return false } - if !this.RetryPolicy.Equal(that1.RetryPolicy) { + if !this.UndefinedFlowLabel.Equal(that1.UndefinedFlowLabel) { return false } return true } -func (this *RouteSimpleAdvancedOptions_CommonBuffering) Equal(that interface{}) bool { +func (this *AppEndpointType_FlowLabel) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_CommonBuffering) + that1, ok := that.(*AppEndpointType_FlowLabel) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_CommonBuffering) + that2, ok := that.(AppEndpointType_FlowLabel) if ok { that1 = &that2 } else { @@ -20308,19 +15988,19 @@ func (this *RouteSimpleAdvancedOptions_CommonBuffering) Equal(that interface{}) } else if this == nil { return false } - if !this.CommonBuffering.Equal(that1.CommonBuffering) { + if !this.FlowLabel.Equal(that1.FlowLabel) { return false } return true } -func (this *RouteSimpleAdvancedOptions_BufferPolicy) Equal(that interface{}) bool { +func (this *AppEndpointType_AllowGoodBots) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_BufferPolicy) + that1, ok := that.(*AppEndpointType_AllowGoodBots) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_BufferPolicy) + that2, ok := that.(AppEndpointType_AllowGoodBots) if ok { that1 = &that2 } else { @@ -20332,19 +16012,19 @@ func (this *RouteSimpleAdvancedOptions_BufferPolicy) Equal(that interface{}) boo } else if this == nil { return false } - if !this.BufferPolicy.Equal(that1.BufferPolicy) { + if !this.AllowGoodBots.Equal(that1.AllowGoodBots) { return false } return true } -func (this *RouteSimpleAdvancedOptions_DisableMirroring) Equal(that interface{}) bool { +func (this *AppEndpointType_MitigateGoodBots) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DisableMirroring) + that1, ok := that.(*AppEndpointType_MitigateGoodBots) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DisableMirroring) + that2, ok := that.(AppEndpointType_MitigateGoodBots) if ok { that1 = &that2 } else { @@ -20356,19 +16036,19 @@ func (this *RouteSimpleAdvancedOptions_DisableMirroring) Equal(that interface{}) } else if this == nil { return false } - if !this.DisableMirroring.Equal(that1.DisableMirroring) { + if !this.MitigateGoodBots.Equal(that1.MitigateGoodBots) { return false } return true } -func (this *RouteSimpleAdvancedOptions_MirrorPolicy) Equal(that interface{}) bool { +func (this *WebMobileTrafficType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_MirrorPolicy) + that1, ok := that.(*WebMobileTrafficType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_MirrorPolicy) + that2, ok := that.(WebMobileTrafficType) if ok { that1 = &that2 } else { @@ -20380,43 +16060,30 @@ func (this *RouteSimpleAdvancedOptions_MirrorPolicy) Equal(that interface{}) boo } else if this == nil { return false } - if !this.MirrorPolicy.Equal(that1.MirrorPolicy) { + if !this.Header.Equal(that1.Header) { return false } - return true -} -func (this *RouteSimpleAdvancedOptions_RetractCluster) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(this.Headers) != len(that1.Headers) { + return false } - - that1, ok := that.(*RouteSimpleAdvancedOptions_RetractCluster) - if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_RetractCluster) - if ok { - that1 = &that2 - } else { + for i := range this.Headers { + if !this.Headers[i].Equal(that1.Headers[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.RetractCluster.Equal(that1.RetractCluster) { + if this.MobileIdentifier != that1.MobileIdentifier { return false } return true } -func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) Equal(that interface{}) bool { +func (this *ShapeJavaScriptInsertType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_DoNotRetractCluster) + that1, ok := that.(*ShapeJavaScriptInsertType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_DoNotRetractCluster) + that2, ok := that.(ShapeJavaScriptInsertType) if ok { that1 = &that2 } else { @@ -20428,19 +16095,32 @@ func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) Equal(that interface } else if this == nil { return false } - if !this.DoNotRetractCluster.Equal(that1.DoNotRetractCluster) { + if len(this.Rules) != len(that1.Rules) { + return false + } + for i := range this.Rules { + if !this.Rules[i].Equal(that1.Rules[i]) { + return false + } + } + if len(this.ExcludeList) != len(that1.ExcludeList) { return false } + for i := range this.ExcludeList { + if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { + return false + } + } return true } -func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) Equal(that interface{}) bool { +func (this *ShapeJavaScriptInsertAllWithExceptionsType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) + that1, ok := that.(*ShapeJavaScriptInsertAllWithExceptionsType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) + that2, ok := that.(ShapeJavaScriptInsertAllWithExceptionsType) if ok { that1 = &that2 } else { @@ -20452,19 +16132,27 @@ func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) E } else if this == nil { return false } - if !this.InheritedBotDefenseJavascriptInjection.Equal(that1.InheritedBotDefenseJavascriptInjection) { + if this.JavascriptLocation != that1.JavascriptLocation { return false } + if len(this.ExcludeList) != len(that1.ExcludeList) { + return false + } + for i := range this.ExcludeList { + if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { + return false + } + } return true } -func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) Equal(that interface{}) bool { +func (this *ShapeJavaScriptInsertAllType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) + that1, ok := that.(*ShapeJavaScriptInsertAllType) if !ok { - that2, ok := that.(RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) + that2, ok := that.(ShapeJavaScriptInsertAllType) if ok { that1 = &that2 } else { @@ -20476,19 +16164,19 @@ func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) Equal(that } else if this == nil { return false } - if !this.BotDefenseJavascriptInjection.Equal(that1.BotDefenseJavascriptInjection) { + if this.JavascriptLocation != that1.JavascriptLocation { return false } return true } -func (this *RouteTypeSimpleWithDefaultOriginPool) Equal(that interface{}) bool { +func (this *ShapeJavaScriptInsertionRule) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool) + that1, ok := that.(*ShapeJavaScriptInsertionRule) if !ok { - that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool) + that2, ok := that.(ShapeJavaScriptInsertionRule) if ok { that1 = &that2 } else { @@ -20500,55 +16188,34 @@ func (this *RouteTypeSimpleWithDefaultOriginPool) Equal(that interface{}) bool { } else if this == nil { return false } - if this.HttpMethod != that1.HttpMethod { - return false - } - if !this.Path.Equal(that1.Path) { + if !this.Metadata.Equal(that1.Metadata) { return false } - if that1.HostRewriteParams == nil { - if this.HostRewriteParams != nil { + if that1.DomainMatcherChoice == nil { + if this.DomainMatcherChoice != nil { return false } - } else if this.HostRewriteParams == nil { + } else if this.DomainMatcherChoice == nil { return false - } else if !this.HostRewriteParams.Equal(that1.HostRewriteParams) { + } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { return false } - return true -} -func (this *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) - if !ok { - that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.Path.Equal(that1.Path) { return false } - if !this.AutoHostRewrite.Equal(that1.AutoHostRewrite) { + if this.JavascriptLocation != that1.JavascriptLocation { return false } return true } -func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) Equal(that interface{}) bool { +func (this *ShapeJavaScriptInsertionRule_AnyDomain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool_HostRewrite) + that1, ok := that.(*ShapeJavaScriptInsertionRule_AnyDomain) if !ok { - that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool_HostRewrite) + that2, ok := that.(ShapeJavaScriptInsertionRule_AnyDomain) if ok { that1 = &that2 } else { @@ -20560,19 +16227,19 @@ func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) Equal(that interfa } else if this == nil { return false } - if this.HostRewrite != that1.HostRewrite { + if !this.AnyDomain.Equal(that1.AnyDomain) { return false } return true } -func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) Equal(that interface{}) bool { +func (this *ShapeJavaScriptInsertionRule_Domain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) + that1, ok := that.(*ShapeJavaScriptInsertionRule_Domain) if !ok { - that2, ok := that.(RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) + that2, ok := that.(ShapeJavaScriptInsertionRule_Domain) if ok { that1 = &that2 } else { @@ -20584,19 +16251,19 @@ func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) Equal(that } else if this == nil { return false } - if !this.DisableHostRewrite.Equal(that1.DisableHostRewrite) { + if !this.Domain.Equal(that1.Domain) { return false } return true } -func (this *RouteTypeSimple) Equal(that interface{}) bool { +func (this *ShapeJavaScriptExclusionRule) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimple) + that1, ok := that.(*ShapeJavaScriptExclusionRule) if !ok { - that2, ok := that.(RouteTypeSimple) + that2, ok := that.(ShapeJavaScriptExclusionRule) if ok { that1 = &that2 } else { @@ -20608,53 +16275,31 @@ func (this *RouteTypeSimple) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Path.Equal(that1.Path) { - return false - } - if this.HttpMethod != that1.HttpMethod { - return false - } - if len(this.OriginPools) != len(that1.OriginPools) { + if !this.Metadata.Equal(that1.Metadata) { return false } - for i := range this.OriginPools { - if !this.OriginPools[i].Equal(that1.OriginPools[i]) { - return false - } - } - if that1.HostRewriteParams == nil { - if this.HostRewriteParams != nil { + if that1.DomainMatcherChoice == nil { + if this.DomainMatcherChoice != nil { return false } - } else if this.HostRewriteParams == nil { - return false - } else if !this.HostRewriteParams.Equal(that1.HostRewriteParams) { - return false - } - if len(this.Headers) != len(that1.Headers) { + } else if this.DomainMatcherChoice == nil { return false - } - for i := range this.Headers { - if !this.Headers[i].Equal(that1.Headers[i]) { - return false - } - } - if !this.IncomingPort.Equal(that1.IncomingPort) { + } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { return false } - if !this.AdvancedOptions.Equal(that1.AdvancedOptions) { + if !this.Path.Equal(that1.Path) { return false } return true } -func (this *RouteTypeSimple_AutoHostRewrite) Equal(that interface{}) bool { +func (this *ShapeJavaScriptExclusionRule_AnyDomain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimple_AutoHostRewrite) + that1, ok := that.(*ShapeJavaScriptExclusionRule_AnyDomain) if !ok { - that2, ok := that.(RouteTypeSimple_AutoHostRewrite) + that2, ok := that.(ShapeJavaScriptExclusionRule_AnyDomain) if ok { that1 = &that2 } else { @@ -20666,19 +16311,19 @@ func (this *RouteTypeSimple_AutoHostRewrite) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AutoHostRewrite.Equal(that1.AutoHostRewrite) { + if !this.AnyDomain.Equal(that1.AnyDomain) { return false } return true } -func (this *RouteTypeSimple_HostRewrite) Equal(that interface{}) bool { +func (this *ShapeJavaScriptExclusionRule_Domain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimple_HostRewrite) + that1, ok := that.(*ShapeJavaScriptExclusionRule_Domain) if !ok { - that2, ok := that.(RouteTypeSimple_HostRewrite) + that2, ok := that.(ShapeJavaScriptExclusionRule_Domain) if ok { that1 = &that2 } else { @@ -20690,19 +16335,19 @@ func (this *RouteTypeSimple_HostRewrite) Equal(that interface{}) bool { } else if this == nil { return false } - if this.HostRewrite != that1.HostRewrite { + if !this.Domain.Equal(that1.Domain) { return false } return true } -func (this *RouteTypeSimple_DisableHostRewrite) Equal(that interface{}) bool { +func (this *GlobalSpecType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RouteTypeSimple_DisableHostRewrite) + that1, ok := that.(*GlobalSpecType) if !ok { - that2, ok := that.(RouteTypeSimple_DisableHostRewrite) + that2, ok := that.(GlobalSpecType) if ok { that1 = &that2 } else { @@ -20714,508 +16359,351 @@ func (this *RouteTypeSimple_DisableHostRewrite) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableHostRewrite.Equal(that1.DisableHostRewrite) { + if len(this.Domains) != len(that1.Domains) { return false } - return true -} -func (this *RouteTypeRedirect) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*RouteTypeRedirect) - if !ok { - that2, ok := that.(RouteTypeRedirect) - if ok { - that1 = &that2 - } else { + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { return false } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Path.Equal(that1.Path) { - return false - } - if this.HttpMethod != that1.HttpMethod { + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { + return false + } + } else if this.LoadbalancerType == nil { return false - } - if !this.RouteRedirect.Equal(that1.RouteRedirect) { + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { return false } - if len(this.Headers) != len(that1.Headers) { + if len(this.DownstreamTlsCertificateExpirationTimestamps) != len(that1.DownstreamTlsCertificateExpirationTimestamps) { return false } - for i := range this.Headers { - if !this.Headers[i].Equal(that1.Headers[i]) { + for i := range this.DownstreamTlsCertificateExpirationTimestamps { + if !this.DownstreamTlsCertificateExpirationTimestamps[i].Equal(that1.DownstreamTlsCertificateExpirationTimestamps[i]) { return false } } - if !this.IncomingPort.Equal(that1.IncomingPort) { - return false - } - return true -} -func (this *RouteTypeDirectResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*RouteTypeDirectResponse) - if !ok { - that2, ok := that.(RouteTypeDirectResponse) - if ok { - that1 = &that2 - } else { + if that1.AdvertiseChoice == nil { + if this.AdvertiseChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Path.Equal(that1.Path) { - return false - } - if this.HttpMethod != that1.HttpMethod { + } else if this.AdvertiseChoice == nil { return false - } - if !this.RouteDirectResponse.Equal(that1.RouteDirectResponse) { + } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { return false } - if len(this.Headers) != len(that1.Headers) { + if len(this.DefaultRoutePools) != len(that1.DefaultRoutePools) { return false } - for i := range this.Headers { - if !this.Headers[i].Equal(that1.Headers[i]) { + for i := range this.DefaultRoutePools { + if !this.DefaultRoutePools[i].Equal(that1.DefaultRoutePools[i]) { return false } } - if !this.IncomingPort.Equal(that1.IncomingPort) { - return false - } - return true -} -func (this *RouteTypeCustomRoute) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*RouteTypeCustomRoute) - if !ok { - that2, ok := that.(RouteTypeCustomRoute) - if ok { - that1 = &that2 - } else { + if that1.OriginPoolChoice == nil { + if this.OriginPoolChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.RouteRef.Equal(that1.RouteRef) { + } else if this.OriginPoolChoice == nil { return false - } - return true -} -func (this *RouteType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*RouteType) - if !ok { - that2, ok := that.(RouteType) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { return false } - if that1.Choice == nil { - if this.Choice != nil { + if that1.HostRewriteParams == nil { + if this.HostRewriteParams != nil { return false } - } else if this.Choice == nil { + } else if this.HostRewriteParams == nil { return false - } else if !this.Choice.Equal(that1.Choice) { + } else if !this.HostRewriteParams.Equal(that1.HostRewriteParams) { return false } - return true -} -func (this *RouteType_SimpleRoute) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(this.Routes) != len(that1.Routes) { + return false } - - that1, ok := that.(*RouteType_SimpleRoute) - if !ok { - that2, ok := that.(RouteType_SimpleRoute) - if ok { - that1 = &that2 - } else { + for i := range this.Routes { + if !this.Routes[i].Equal(that1.Routes[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { return false } - if !this.SimpleRoute.Equal(that1.SimpleRoute) { + if !this.CorsPolicy.Equal(that1.CorsPolicy) { return false } - return true -} -func (this *RouteType_RedirectRoute) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*RouteType_RedirectRoute) - if !ok { - that2, ok := that.(RouteType_RedirectRoute) - if ok { - that1 = &that2 - } else { + if that1.WafChoice == nil { + if this.WafChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.WafChoice == nil { return false - } - if !this.RedirectRoute.Equal(that1.RedirectRoute) { + } else if !this.WafChoice.Equal(that1.WafChoice) { return false } - return true -} -func (this *RouteType_DirectResponseRoute) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.AddLocation != that1.AddLocation { + return false } - - that1, ok := that.(*RouteType_DirectResponseRoute) - if !ok { - that2, ok := that.(RouteType_DirectResponseRoute) - if ok { - that1 = &that2 - } else { + if that1.ChallengeType == nil { + if this.ChallengeType != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.ChallengeType == nil { return false - } - if !this.DirectResponseRoute.Equal(that1.DirectResponseRoute) { + } else if !this.ChallengeType.Equal(that1.ChallengeType) { return false } - return true -} -func (this *RouteType_CustomRouteObject) Equal(that interface{}) bool { - if that == nil { - return this == nil + if !this.MoreOption.Equal(that1.MoreOption) { + return false } - - that1, ok := that.(*RouteType_CustomRouteObject) - if !ok { - that2, ok := that.(RouteType_CustomRouteObject) - if ok { - that1 = &that2 - } else { + if that1.UserIdChoice == nil { + if this.UserIdChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.UserIdChoice == nil { return false - } - if !this.CustomRouteObject.Equal(that1.CustomRouteObject) { + } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { return false } - return true -} -func (this *AdvancedOptionsType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*AdvancedOptionsType) - if !ok { - that2, ok := that.(AdvancedOptionsType) - if ok { - that1 = &that2 - } else { + if that1.RateLimitChoice == nil { + if this.RateLimitChoice != nil { return false } + } else if this.RateLimitChoice == nil { + return false + } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { return false } - if len(this.RequestHeadersToAdd) != len(that1.RequestHeadersToAdd) { + if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { return false } - for i := range this.RequestHeadersToAdd { - if !this.RequestHeadersToAdd[i].Equal(that1.RequestHeadersToAdd[i]) { + for i := range this.WafExclusionRules { + if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { return false } } - if len(this.RequestHeadersToRemove) != len(that1.RequestHeadersToRemove) { + if len(this.DataGuardRules) != len(that1.DataGuardRules) { return false } - for i := range this.RequestHeadersToRemove { - if this.RequestHeadersToRemove[i] != that1.RequestHeadersToRemove[i] { + for i := range this.DataGuardRules { + if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { return false } } - if len(this.ResponseHeadersToAdd) != len(that1.ResponseHeadersToAdd) { + if len(this.BlockedClients) != len(that1.BlockedClients) { return false } - for i := range this.ResponseHeadersToAdd { - if !this.ResponseHeadersToAdd[i].Equal(that1.ResponseHeadersToAdd[i]) { + for i := range this.BlockedClients { + if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { return false } } - if len(this.ResponseHeadersToRemove) != len(that1.ResponseHeadersToRemove) { + if len(this.TrustedClients) != len(that1.TrustedClients) { return false } - for i := range this.ResponseHeadersToRemove { - if this.ResponseHeadersToRemove[i] != that1.ResponseHeadersToRemove[i] { + for i := range this.TrustedClients { + if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { return false } } - if this.MaxRequestHeaderSize != that1.MaxRequestHeaderSize { - return false - } - if !this.BufferPolicy.Equal(that1.BufferPolicy) { - return false - } - if !this.CompressionParams.Equal(that1.CompressionParams) { + if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { return false } - if len(this.CustomErrors) != len(that1.CustomErrors) { + if len(this.DdosMitigationRules) != len(that1.DdosMitigationRules) { return false } - for i := range this.CustomErrors { - if this.CustomErrors[i] != that1.CustomErrors[i] { + for i := range this.DdosMitigationRules { + if !this.DdosMitigationRules[i].Equal(that1.DdosMitigationRules[i]) { return false } } - if !this.JavascriptInfo.Equal(that1.JavascriptInfo) { + if that1.ServicePolicyChoice == nil { + if this.ServicePolicyChoice != nil { + return false + } + } else if this.ServicePolicyChoice == nil { return false - } - if len(this.Jwt) != len(that1.Jwt) { + } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { return false } - for i := range this.Jwt { - if !this.Jwt[i].Equal(that1.Jwt[i]) { + if that1.HashPolicyChoice == nil { + if this.HashPolicyChoice != nil { return false } - } - if this.IdleTimeout != that1.IdleTimeout { + } else if this.HashPolicyChoice == nil { return false - } - if this.DisableDefaultErrorPages != that1.DisableDefaultErrorPages { + } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { return false } - if that1.PathNormalizeChoice == nil { - if this.PathNormalizeChoice != nil { + if that1.TrustClientIpHeadersChoice == nil { + if this.TrustClientIpHeadersChoice != nil { return false } - } else if this.PathNormalizeChoice == nil { + } else if this.TrustClientIpHeadersChoice == nil { return false - } else if !this.PathNormalizeChoice.Equal(that1.PathNormalizeChoice) { + } else if !this.TrustClientIpHeadersChoice.Equal(that1.TrustClientIpHeadersChoice) { return false } - if that1.StrictSniHostHeaderCheckChoice == nil { - if this.StrictSniHostHeaderCheckChoice != nil { + if that1.MlConfigChoice == nil { + if this.MlConfigChoice != nil { return false } - } else if this.StrictSniHostHeaderCheckChoice == nil { + } else if this.MlConfigChoice == nil { return false - } else if !this.StrictSniHostHeaderCheckChoice.Equal(that1.StrictSniHostHeaderCheckChoice) { + } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { return false } - if len(this.CookiesToModify) != len(that1.CookiesToModify) { + if that1.MaliciousUserDetectionChoice == nil { + if this.MaliciousUserDetectionChoice != nil { + return false + } + } else if this.MaliciousUserDetectionChoice == nil { + return false + } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { return false } - for i := range this.CookiesToModify { - if !this.CookiesToModify[i].Equal(that1.CookiesToModify[i]) { + if that1.ApiDiscoveryChoice == nil { + if this.ApiDiscoveryChoice != nil { return false } + } else if this.ApiDiscoveryChoice == nil { + return false + } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { + return false } - return true -} -func (this *AdvancedOptionsType_EnablePathNormalize) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*AdvancedOptionsType_EnablePathNormalize) - if !ok { - that2, ok := that.(AdvancedOptionsType_EnablePathNormalize) - if ok { - that1 = &that2 - } else { + if that1.BotDefenseChoice == nil { + if this.BotDefenseChoice != nil { return false } + } else if this.BotDefenseChoice == nil { + return false + } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if that1.ClientSideDefenseChoice == nil { + if this.ClientSideDefenseChoice != nil { + return false + } + } else if this.ClientSideDefenseChoice == nil { + return false + } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { return false } - if !this.EnablePathNormalize.Equal(that1.EnablePathNormalize) { + if that1.ApiDefinitionChoice == nil { + if this.ApiDefinitionChoice != nil { + return false + } + } else if this.ApiDefinitionChoice == nil { + return false + } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { return false } - return true -} -func (this *AdvancedOptionsType_DisablePathNormalize) Equal(that interface{}) bool { - if that == nil { - return this == nil + if that1.IpReputationChoice == nil { + if this.IpReputationChoice != nil { + return false + } + } else if this.IpReputationChoice == nil { + return false + } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { + return false } - - that1, ok := that.(*AdvancedOptionsType_DisablePathNormalize) - if !ok { - that2, ok := that.(AdvancedOptionsType_DisablePathNormalize) - if ok { - that1 = &that2 - } else { + if that1.ThreatMeshChoice == nil { + if this.ThreatMeshChoice != nil { return false } + } else if this.ThreatMeshChoice == nil { + return false + } else if !this.ThreatMeshChoice.Equal(that1.ThreatMeshChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.ViewInternal.Equal(that1.ViewInternal) { return false } - if !this.DisablePathNormalize.Equal(that1.DisablePathNormalize) { + if this.HostName != that1.HostName { return false } - return true -} -func (this *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(this.DnsInfo) != len(that1.DnsInfo) { + return false } - - that1, ok := that.(*AdvancedOptionsType_EnableStrictSniHostHeaderCheck) - if !ok { - that2, ok := that.(AdvancedOptionsType_EnableStrictSniHostHeaderCheck) - if ok { - that1 = &that2 - } else { + for i := range this.DnsInfo { + if !this.DnsInfo[i].Equal(that1.DnsInfo[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if this.State != that1.State { return false } - if !this.EnableStrictSniHostHeaderCheck.Equal(that1.EnableStrictSniHostHeaderCheck) { + if this.AutoCertState != that1.AutoCertState { return false } - return true -} -func (this *AdvancedOptionsType_AdditionalDomains) Equal(that interface{}) bool { - if that == nil { - return this == nil + if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { + return false } - - that1, ok := that.(*AdvancedOptionsType_AdditionalDomains) - if !ok { - that2, ok := that.(AdvancedOptionsType_AdditionalDomains) - if ok { - that1 = &that2 - } else { + if len(this.InternetVipInfo) != len(that1.InternetVipInfo) { + return false + } + for i := range this.InternetVipInfo { + if !this.InternetVipInfo[i].Equal(that1.InternetVipInfo[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { return false } - if !this.AdditionalDomains.Equal(that1.AdditionalDomains) { + if len(this.GraphqlRules) != len(that1.GraphqlRules) { return false } - return true -} -func (this *EnableChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*EnableChallenge) - if !ok { - that2, ok := that.(EnableChallenge) - if ok { - that1 = &that2 - } else { + for i := range this.GraphqlRules { + if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { return false } - if that1.MaliciousUserMitigationChoice == nil { - if this.MaliciousUserMitigationChoice != nil { + for i := range this.ProtectedCookies { + if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { return false } - } else if this.MaliciousUserMitigationChoice == nil { - return false - } else if !this.MaliciousUserMitigationChoice.Equal(that1.MaliciousUserMitigationChoice) { - return false } - if that1.JsChallengeParametersChoice == nil { - if this.JsChallengeParametersChoice != nil { + if that1.SlowDdosMitigationChoice == nil { + if this.SlowDdosMitigationChoice != nil { return false } - } else if this.JsChallengeParametersChoice == nil { + } else if this.SlowDdosMitigationChoice == nil { return false - } else if !this.JsChallengeParametersChoice.Equal(that1.JsChallengeParametersChoice) { + } else if !this.SlowDdosMitigationChoice.Equal(that1.SlowDdosMitigationChoice) { + return false + } + if !this.JwtValidation.Equal(that1.JwtValidation) { return false } - if that1.CaptchaChallengeParametersChoice == nil { - if this.CaptchaChallengeParametersChoice != nil { + if that1.L7DdosAutoMitigationAction == nil { + if this.L7DdosAutoMitigationAction != nil { return false } - } else if this.CaptchaChallengeParametersChoice == nil { + } else if this.L7DdosAutoMitigationAction == nil { + return false + } else if !this.L7DdosAutoMitigationAction.Equal(that1.L7DdosAutoMitigationAction) { return false - } else if !this.CaptchaChallengeParametersChoice.Equal(that1.CaptchaChallengeParametersChoice) { + } + if this.CertState != that1.CertState { return false } return true } -func (this *EnableChallenge_DefaultMitigationSettings) Equal(that interface{}) bool { +func (this *GlobalSpecType_Http) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableChallenge_DefaultMitigationSettings) + that1, ok := that.(*GlobalSpecType_Http) if !ok { - that2, ok := that.(EnableChallenge_DefaultMitigationSettings) + that2, ok := that.(GlobalSpecType_Http) if ok { that1 = &that2 } else { @@ -21227,19 +16715,19 @@ func (this *EnableChallenge_DefaultMitigationSettings) Equal(that interface{}) b } else if this == nil { return false } - if !this.DefaultMitigationSettings.Equal(that1.DefaultMitigationSettings) { + if !this.Http.Equal(that1.Http) { return false } return true } -func (this *EnableChallenge_MaliciousUserMitigation) Equal(that interface{}) bool { +func (this *GlobalSpecType_HttpsAutoCert) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableChallenge_MaliciousUserMitigation) + that1, ok := that.(*GlobalSpecType_HttpsAutoCert) if !ok { - that2, ok := that.(EnableChallenge_MaliciousUserMitigation) + that2, ok := that.(GlobalSpecType_HttpsAutoCert) if ok { that1 = &that2 } else { @@ -21251,19 +16739,19 @@ func (this *EnableChallenge_MaliciousUserMitigation) Equal(that interface{}) boo } else if this == nil { return false } - if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { return false } return true } -func (this *EnableChallenge_DefaultJsChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_Https) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableChallenge_DefaultJsChallengeParameters) + that1, ok := that.(*GlobalSpecType_Https) if !ok { - that2, ok := that.(EnableChallenge_DefaultJsChallengeParameters) + that2, ok := that.(GlobalSpecType_Https) if ok { that1 = &that2 } else { @@ -21275,19 +16763,19 @@ func (this *EnableChallenge_DefaultJsChallengeParameters) Equal(that interface{} } else if this == nil { return false } - if !this.DefaultJsChallengeParameters.Equal(that1.DefaultJsChallengeParameters) { + if !this.Https.Equal(that1.Https) { return false } return true } -func (this *EnableChallenge_JsChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_DoNotAdvertise) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableChallenge_JsChallengeParameters) + that1, ok := that.(*GlobalSpecType_DoNotAdvertise) if !ok { - that2, ok := that.(EnableChallenge_JsChallengeParameters) + that2, ok := that.(GlobalSpecType_DoNotAdvertise) if ok { that1 = &that2 } else { @@ -21299,19 +16787,19 @@ func (this *EnableChallenge_JsChallengeParameters) Equal(that interface{}) bool } else if this == nil { return false } - if !this.JsChallengeParameters.Equal(that1.JsChallengeParameters) { + if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { return false } return true } -func (this *EnableChallenge_DefaultCaptchaChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableChallenge_DefaultCaptchaChallengeParameters) + that1, ok := that.(*GlobalSpecType_AdvertiseOnPublicDefaultVip) if !ok { - that2, ok := that.(EnableChallenge_DefaultCaptchaChallengeParameters) + that2, ok := that.(GlobalSpecType_AdvertiseOnPublicDefaultVip) if ok { that1 = &that2 } else { @@ -21323,19 +16811,19 @@ func (this *EnableChallenge_DefaultCaptchaChallengeParameters) Equal(that interf } else if this == nil { return false } - if !this.DefaultCaptchaChallengeParameters.Equal(that1.DefaultCaptchaChallengeParameters) { + if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { return false } return true } -func (this *EnableChallenge_CaptchaChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableChallenge_CaptchaChallengeParameters) + that1, ok := that.(*GlobalSpecType_AdvertiseOnPublic) if !ok { - that2, ok := that.(EnableChallenge_CaptchaChallengeParameters) + that2, ok := that.(GlobalSpecType_AdvertiseOnPublic) if ok { that1 = &that2 } else { @@ -21347,19 +16835,19 @@ func (this *EnableChallenge_CaptchaChallengeParameters) Equal(that interface{}) } else if this == nil { return false } - if !this.CaptchaChallengeParameters.Equal(that1.CaptchaChallengeParameters) { + if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { return false } return true } -func (this *PolicyBasedChallenge) Equal(that interface{}) bool { +func (this *GlobalSpecType_AdvertiseCustom) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge) + that1, ok := that.(*GlobalSpecType_AdvertiseCustom) if !ok { - that2, ok := that.(PolicyBasedChallenge) + that2, ok := that.(GlobalSpecType_AdvertiseCustom) if ok { that1 = &that2 } else { @@ -21371,64 +16859,19 @@ func (this *PolicyBasedChallenge) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.JsChallengeParametersChoice == nil { - if this.JsChallengeParametersChoice != nil { - return false - } - } else if this.JsChallengeParametersChoice == nil { - return false - } else if !this.JsChallengeParametersChoice.Equal(that1.JsChallengeParametersChoice) { - return false - } - if that1.CaptchaChallengeParametersChoice == nil { - if this.CaptchaChallengeParametersChoice != nil { - return false - } - } else if this.CaptchaChallengeParametersChoice == nil { - return false - } else if !this.CaptchaChallengeParametersChoice.Equal(that1.CaptchaChallengeParametersChoice) { - return false - } - if that1.TemporaryBlockingParametersChoice == nil { - if this.TemporaryBlockingParametersChoice != nil { - return false - } - } else if this.TemporaryBlockingParametersChoice == nil { - return false - } else if !this.TemporaryBlockingParametersChoice.Equal(that1.TemporaryBlockingParametersChoice) { - return false - } - if that1.MaliciousUserMitigationChoice == nil { - if this.MaliciousUserMitigationChoice != nil { - return false - } - } else if this.MaliciousUserMitigationChoice == nil { - return false - } else if !this.MaliciousUserMitigationChoice.Equal(that1.MaliciousUserMitigationChoice) { - return false - } - if that1.ChallengeChoice == nil { - if this.ChallengeChoice != nil { - return false - } - } else if this.ChallengeChoice == nil { - return false - } else if !this.ChallengeChoice.Equal(that1.ChallengeChoice) { - return false - } - if !this.RuleList.Equal(that1.RuleList) { + if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { return false } return true } -func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_DefaultPool) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_DefaultJsChallengeParameters) + that1, ok := that.(*GlobalSpecType_DefaultPool) if !ok { - that2, ok := that.(PolicyBasedChallenge_DefaultJsChallengeParameters) + that2, ok := that.(GlobalSpecType_DefaultPool) if ok { that1 = &that2 } else { @@ -21440,19 +16883,19 @@ func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) Equal(that interf } else if this == nil { return false } - if !this.DefaultJsChallengeParameters.Equal(that1.DefaultJsChallengeParameters) { + if !this.DefaultPool.Equal(that1.DefaultPool) { return false } return true } -func (this *PolicyBasedChallenge_JsChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_DefaultPoolList) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_JsChallengeParameters) + that1, ok := that.(*GlobalSpecType_DefaultPoolList) if !ok { - that2, ok := that.(PolicyBasedChallenge_JsChallengeParameters) + that2, ok := that.(GlobalSpecType_DefaultPoolList) if ok { that1 = &that2 } else { @@ -21464,19 +16907,19 @@ func (this *PolicyBasedChallenge_JsChallengeParameters) Equal(that interface{}) } else if this == nil { return false } - if !this.JsChallengeParameters.Equal(that1.JsChallengeParameters) { + if !this.DefaultPoolList.Equal(that1.DefaultPoolList) { return false } return true } -func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_AutoHostRewrite) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_DefaultCaptchaChallengeParameters) + that1, ok := that.(*GlobalSpecType_AutoHostRewrite) if !ok { - that2, ok := that.(PolicyBasedChallenge_DefaultCaptchaChallengeParameters) + that2, ok := that.(GlobalSpecType_AutoHostRewrite) if ok { that1 = &that2 } else { @@ -21488,19 +16931,19 @@ func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) Equal(that i } else if this == nil { return false } - if !this.DefaultCaptchaChallengeParameters.Equal(that1.DefaultCaptchaChallengeParameters) { + if !this.AutoHostRewrite.Equal(that1.AutoHostRewrite) { return false } return true } -func (this *PolicyBasedChallenge_CaptchaChallengeParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_HostRewrite) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_CaptchaChallengeParameters) + that1, ok := that.(*GlobalSpecType_HostRewrite) if !ok { - that2, ok := that.(PolicyBasedChallenge_CaptchaChallengeParameters) + that2, ok := that.(GlobalSpecType_HostRewrite) if ok { that1 = &that2 } else { @@ -21512,19 +16955,19 @@ func (this *PolicyBasedChallenge_CaptchaChallengeParameters) Equal(that interfac } else if this == nil { return false } - if !this.CaptchaChallengeParameters.Equal(that1.CaptchaChallengeParameters) { + if this.HostRewrite != that1.HostRewrite { return false } return true } -func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableHostRewrite) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_DefaultTemporaryBlockingParameters) + that1, ok := that.(*GlobalSpecType_DisableHostRewrite) if !ok { - that2, ok := that.(PolicyBasedChallenge_DefaultTemporaryBlockingParameters) + that2, ok := that.(GlobalSpecType_DisableHostRewrite) if ok { that1 = &that2 } else { @@ -21536,19 +16979,19 @@ func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) Equal(that } else if this == nil { return false } - if !this.DefaultTemporaryBlockingParameters.Equal(that1.DefaultTemporaryBlockingParameters) { + if !this.DisableHostRewrite.Equal(that1.DisableHostRewrite) { return false } return true } -func (this *PolicyBasedChallenge_TemporaryUserBlocking) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableWaf) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_TemporaryUserBlocking) + that1, ok := that.(*GlobalSpecType_DisableWaf) if !ok { - that2, ok := that.(PolicyBasedChallenge_TemporaryUserBlocking) + that2, ok := that.(GlobalSpecType_DisableWaf) if ok { that1 = &that2 } else { @@ -21560,19 +17003,19 @@ func (this *PolicyBasedChallenge_TemporaryUserBlocking) Equal(that interface{}) } else if this == nil { return false } - if !this.TemporaryUserBlocking.Equal(that1.TemporaryUserBlocking) { + if !this.DisableWaf.Equal(that1.DisableWaf) { return false } return true } -func (this *PolicyBasedChallenge_DefaultMitigationSettings) Equal(that interface{}) bool { +func (this *GlobalSpecType_AppFirewall) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_DefaultMitigationSettings) + that1, ok := that.(*GlobalSpecType_AppFirewall) if !ok { - that2, ok := that.(PolicyBasedChallenge_DefaultMitigationSettings) + that2, ok := that.(GlobalSpecType_AppFirewall) if ok { that1 = &that2 } else { @@ -21584,19 +17027,19 @@ func (this *PolicyBasedChallenge_DefaultMitigationSettings) Equal(that interface } else if this == nil { return false } - if !this.DefaultMitigationSettings.Equal(that1.DefaultMitigationSettings) { + if !this.AppFirewall.Equal(that1.AppFirewall) { return false } return true } -func (this *PolicyBasedChallenge_MaliciousUserMitigation) Equal(that interface{}) bool { +func (this *GlobalSpecType_NoChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_MaliciousUserMitigation) + that1, ok := that.(*GlobalSpecType_NoChallenge) if !ok { - that2, ok := that.(PolicyBasedChallenge_MaliciousUserMitigation) + that2, ok := that.(GlobalSpecType_NoChallenge) if ok { that1 = &that2 } else { @@ -21608,19 +17051,19 @@ func (this *PolicyBasedChallenge_MaliciousUserMitigation) Equal(that interface{} } else if this == nil { return false } - if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { + if !this.NoChallenge.Equal(that1.NoChallenge) { return false } return true } -func (this *PolicyBasedChallenge_NoChallenge) Equal(that interface{}) bool { +func (this *GlobalSpecType_EnableChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_NoChallenge) + that1, ok := that.(*GlobalSpecType_EnableChallenge) if !ok { - that2, ok := that.(PolicyBasedChallenge_NoChallenge) + that2, ok := that.(GlobalSpecType_EnableChallenge) if ok { that1 = &that2 } else { @@ -21632,19 +17075,19 @@ func (this *PolicyBasedChallenge_NoChallenge) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoChallenge.Equal(that1.NoChallenge) { + if !this.EnableChallenge.Equal(that1.EnableChallenge) { return false } return true } -func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) Equal(that interface{}) bool { +func (this *GlobalSpecType_JsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_AlwaysEnableJsChallenge) + that1, ok := that.(*GlobalSpecType_JsChallenge) if !ok { - that2, ok := that.(PolicyBasedChallenge_AlwaysEnableJsChallenge) + that2, ok := that.(GlobalSpecType_JsChallenge) if ok { that1 = &that2 } else { @@ -21656,19 +17099,19 @@ func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) Equal(that interface{} } else if this == nil { return false } - if !this.AlwaysEnableJsChallenge.Equal(that1.AlwaysEnableJsChallenge) { + if !this.JsChallenge.Equal(that1.JsChallenge) { return false } return true } -func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) Equal(that interface{}) bool { +func (this *GlobalSpecType_CaptchaChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) + that1, ok := that.(*GlobalSpecType_CaptchaChallenge) if !ok { - that2, ok := that.(PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) + that2, ok := that.(GlobalSpecType_CaptchaChallenge) if ok { that1 = &that2 } else { @@ -21680,19 +17123,19 @@ func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) Equal(that interf } else if this == nil { return false } - if !this.AlwaysEnableCaptchaChallenge.Equal(that1.AlwaysEnableCaptchaChallenge) { + if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { return false } return true } -func (this *ChallengeRule) Equal(that interface{}) bool { +func (this *GlobalSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ChallengeRule) + that1, ok := that.(*GlobalSpecType_PolicyBasedChallenge) if !ok { - that2, ok := that.(ChallengeRule) + that2, ok := that.(GlobalSpecType_PolicyBasedChallenge) if ok { that1 = &that2 } else { @@ -21704,22 +17147,19 @@ func (this *ChallengeRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.Spec.Equal(that1.Spec) { + if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { return false } return true } -func (this *ChallengeRuleList) Equal(that interface{}) bool { +func (this *GlobalSpecType_UserIdClientIp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ChallengeRuleList) + that1, ok := that.(*GlobalSpecType_UserIdClientIp) if !ok { - that2, ok := that.(ChallengeRuleList) + that2, ok := that.(GlobalSpecType_UserIdClientIp) if ok { that1 = &that2 } else { @@ -21731,24 +17171,19 @@ func (this *ChallengeRuleList) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Rules) != len(that1.Rules) { + if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { return false } - for i := range this.Rules { - if !this.Rules[i].Equal(that1.Rules[i]) { - return false - } - } return true } -func (this *HttpHeaderMatcherList) Equal(that interface{}) bool { +func (this *GlobalSpecType_UserIdentification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*HttpHeaderMatcherList) + that1, ok := that.(*GlobalSpecType_UserIdentification) if !ok { - that2, ok := that.(HttpHeaderMatcherList) + that2, ok := that.(GlobalSpecType_UserIdentification) if ok { that1 = &that2 } else { @@ -21760,24 +17195,19 @@ func (this *HttpHeaderMatcherList) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Headers) != len(that1.Headers) { + if !this.UserIdentification.Equal(that1.UserIdentification) { return false } - for i := range this.Headers { - if !this.Headers[i].Equal(that1.Headers[i]) { - return false - } - } return true } -func (this *SimpleClientSrcRule) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule) + that1, ok := that.(*GlobalSpecType_DisableRateLimit) if !ok { - that2, ok := that.(SimpleClientSrcRule) + that2, ok := that.(GlobalSpecType_DisableRateLimit) if ok { that1 = &that2 } else { @@ -21789,48 +17219,19 @@ func (this *SimpleClientSrcRule) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.ClientSourceChoice == nil { - if this.ClientSourceChoice != nil { - return false - } - } else if this.ClientSourceChoice == nil { - return false - } else if !this.ClientSourceChoice.Equal(that1.ClientSourceChoice) { - return false - } - if !this.ExpirationTimestamp.Equal(that1.ExpirationTimestamp) { - return false - } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if that1.ActionChoice == nil { - if this.ActionChoice != nil { - return false - } - } else if this.ActionChoice == nil { - return false - } else if !this.ActionChoice.Equal(that1.ActionChoice) { - return false - } - if len(this.Actions) != len(that1.Actions) { + if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { return false } - for i := range this.Actions { - if this.Actions[i] != that1.Actions[i] { - return false - } - } return true } -func (this *SimpleClientSrcRule_IpPrefix) Equal(that interface{}) bool { +func (this *GlobalSpecType_ApiRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_IpPrefix) + that1, ok := that.(*GlobalSpecType_ApiRateLimit) if !ok { - that2, ok := that.(SimpleClientSrcRule_IpPrefix) + that2, ok := that.(GlobalSpecType_ApiRateLimit) if ok { that1 = &that2 } else { @@ -21842,19 +17243,19 @@ func (this *SimpleClientSrcRule_IpPrefix) Equal(that interface{}) bool { } else if this == nil { return false } - if this.IpPrefix != that1.IpPrefix { + if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { return false } return true } -func (this *SimpleClientSrcRule_AsNumber) Equal(that interface{}) bool { +func (this *GlobalSpecType_RateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_AsNumber) + that1, ok := that.(*GlobalSpecType_RateLimit) if !ok { - that2, ok := that.(SimpleClientSrcRule_AsNumber) + that2, ok := that.(GlobalSpecType_RateLimit) if ok { that1 = &that2 } else { @@ -21866,19 +17267,19 @@ func (this *SimpleClientSrcRule_AsNumber) Equal(that interface{}) bool { } else if this == nil { return false } - if this.AsNumber != that1.AsNumber { + if !this.RateLimit.Equal(that1.RateLimit) { return false } return true } -func (this *SimpleClientSrcRule_HttpHeader) Equal(that interface{}) bool { +func (this *GlobalSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_HttpHeader) + that1, ok := that.(*GlobalSpecType_ServicePoliciesFromNamespace) if !ok { - that2, ok := that.(SimpleClientSrcRule_HttpHeader) + that2, ok := that.(GlobalSpecType_ServicePoliciesFromNamespace) if ok { that1 = &that2 } else { @@ -21890,19 +17291,19 @@ func (this *SimpleClientSrcRule_HttpHeader) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.HttpHeader.Equal(that1.HttpHeader) { + if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { return false } return true } -func (this *SimpleClientSrcRule_UserIdentifier) Equal(that interface{}) bool { +func (this *GlobalSpecType_NoServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_UserIdentifier) + that1, ok := that.(*GlobalSpecType_NoServicePolicies) if !ok { - that2, ok := that.(SimpleClientSrcRule_UserIdentifier) + that2, ok := that.(GlobalSpecType_NoServicePolicies) if ok { that1 = &that2 } else { @@ -21914,19 +17315,19 @@ func (this *SimpleClientSrcRule_UserIdentifier) Equal(that interface{}) bool { } else if this == nil { return false } - if this.UserIdentifier != that1.UserIdentifier { + if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { return false } return true } -func (this *SimpleClientSrcRule_SkipProcessing) Equal(that interface{}) bool { +func (this *GlobalSpecType_ActiveServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_SkipProcessing) + that1, ok := that.(*GlobalSpecType_ActiveServicePolicies) if !ok { - that2, ok := that.(SimpleClientSrcRule_SkipProcessing) + that2, ok := that.(GlobalSpecType_ActiveServicePolicies) if ok { that1 = &that2 } else { @@ -21938,19 +17339,19 @@ func (this *SimpleClientSrcRule_SkipProcessing) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SkipProcessing.Equal(that1.SkipProcessing) { + if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { return false } return true } -func (this *SimpleClientSrcRule_WafSkipProcessing) Equal(that interface{}) bool { +func (this *GlobalSpecType_RoundRobin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_WafSkipProcessing) + that1, ok := that.(*GlobalSpecType_RoundRobin) if !ok { - that2, ok := that.(SimpleClientSrcRule_WafSkipProcessing) + that2, ok := that.(GlobalSpecType_RoundRobin) if ok { that1 = &that2 } else { @@ -21962,19 +17363,19 @@ func (this *SimpleClientSrcRule_WafSkipProcessing) Equal(that interface{}) bool } else if this == nil { return false } - if !this.WafSkipProcessing.Equal(that1.WafSkipProcessing) { + if !this.RoundRobin.Equal(that1.RoundRobin) { return false } return true } -func (this *SimpleClientSrcRule_BotSkipProcessing) Equal(that interface{}) bool { +func (this *GlobalSpecType_LeastActive) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SimpleClientSrcRule_BotSkipProcessing) + that1, ok := that.(*GlobalSpecType_LeastActive) if !ok { - that2, ok := that.(SimpleClientSrcRule_BotSkipProcessing) + that2, ok := that.(GlobalSpecType_LeastActive) if ok { that1 = &that2 } else { @@ -21986,19 +17387,19 @@ func (this *SimpleClientSrcRule_BotSkipProcessing) Equal(that interface{}) bool } else if this == nil { return false } - if !this.BotSkipProcessing.Equal(that1.BotSkipProcessing) { + if !this.LeastActive.Equal(that1.LeastActive) { return false } return true } -func (this *DDoSClientSource) Equal(that interface{}) bool { +func (this *GlobalSpecType_Random) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DDoSClientSource) + that1, ok := that.(*GlobalSpecType_Random) if !ok { - that2, ok := that.(DDoSClientSource) + that2, ok := that.(GlobalSpecType_Random) if ok { that1 = &that2 } else { @@ -22010,30 +17411,19 @@ func (this *DDoSClientSource) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AsnList.Equal(that1.AsnList) { - return false - } - if len(this.CountryList) != len(that1.CountryList) { - return false - } - for i := range this.CountryList { - if this.CountryList[i] != that1.CountryList[i] { - return false - } - } - if !this.TlsFingerprintMatcher.Equal(that1.TlsFingerprintMatcher) { + if !this.Random.Equal(that1.Random) { return false } return true } -func (this *APIProtectionRuleAction) Equal(that interface{}) bool { +func (this *GlobalSpecType_SourceIpStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIProtectionRuleAction) + that1, ok := that.(*GlobalSpecType_SourceIpStickiness) if !ok { - that2, ok := that.(APIProtectionRuleAction) + that2, ok := that.(GlobalSpecType_SourceIpStickiness) if ok { that1 = &that2 } else { @@ -22045,25 +17435,19 @@ func (this *APIProtectionRuleAction) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.Action == nil { - if this.Action != nil { - return false - } - } else if this.Action == nil { - return false - } else if !this.Action.Equal(that1.Action) { + if !this.SourceIpStickiness.Equal(that1.SourceIpStickiness) { return false } return true } -func (this *APIProtectionRuleAction_Allow) Equal(that interface{}) bool { +func (this *GlobalSpecType_CookieStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIProtectionRuleAction_Allow) + that1, ok := that.(*GlobalSpecType_CookieStickiness) if !ok { - that2, ok := that.(APIProtectionRuleAction_Allow) + that2, ok := that.(GlobalSpecType_CookieStickiness) if ok { that1 = &that2 } else { @@ -22075,19 +17459,19 @@ func (this *APIProtectionRuleAction_Allow) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Allow.Equal(that1.Allow) { + if !this.CookieStickiness.Equal(that1.CookieStickiness) { return false } return true } -func (this *APIProtectionRuleAction_Deny) Equal(that interface{}) bool { +func (this *GlobalSpecType_RingHash) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIProtectionRuleAction_Deny) + that1, ok := that.(*GlobalSpecType_RingHash) if !ok { - that2, ok := that.(APIProtectionRuleAction_Deny) + that2, ok := that.(GlobalSpecType_RingHash) if ok { that1 = &that2 } else { @@ -22099,19 +17483,19 @@ func (this *APIProtectionRuleAction_Deny) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Deny.Equal(that1.Deny) { + if !this.RingHash.Equal(that1.RingHash) { return false } return true } -func (this *APIEndpointProtectionRule) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIEndpointProtectionRule) + that1, ok := that.(*GlobalSpecType_DisableTrustClientIpHeaders) if !ok { - that2, ok := that.(APIEndpointProtectionRule) + that2, ok := that.(GlobalSpecType_DisableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -22123,43 +17507,19 @@ func (this *APIEndpointProtectionRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.Action.Equal(that1.Action) { - return false - } - if that1.DomainChoice == nil { - if this.DomainChoice != nil { - return false - } - } else if this.DomainChoice == nil { - return false - } else if !this.DomainChoice.Equal(that1.DomainChoice) { - return false - } - if this.ApiEndpointPath != that1.ApiEndpointPath { - return false - } - if !this.ApiEndpointMethod.Equal(that1.ApiEndpointMethod) { - return false - } - if !this.RequestMatcher.Equal(that1.RequestMatcher) { - return false - } - if !this.ClientMatcher.Equal(that1.ClientMatcher) { + if !this.DisableTrustClientIpHeaders.Equal(that1.DisableTrustClientIpHeaders) { return false } return true } -func (this *APIEndpointProtectionRule_AnyDomain) Equal(that interface{}) bool { +func (this *GlobalSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIEndpointProtectionRule_AnyDomain) + that1, ok := that.(*GlobalSpecType_EnableTrustClientIpHeaders) if !ok { - that2, ok := that.(APIEndpointProtectionRule_AnyDomain) + that2, ok := that.(GlobalSpecType_EnableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -22171,19 +17531,19 @@ func (this *APIEndpointProtectionRule_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.EnableTrustClientIpHeaders.Equal(that1.EnableTrustClientIpHeaders) { return false } return true } -func (this *APIEndpointProtectionRule_SpecificDomain) Equal(that interface{}) bool { +func (this *GlobalSpecType_SingleLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIEndpointProtectionRule_SpecificDomain) + that1, ok := that.(*GlobalSpecType_SingleLbApp) if !ok { - that2, ok := that.(APIEndpointProtectionRule_SpecificDomain) + that2, ok := that.(GlobalSpecType_SingleLbApp) if ok { that1 = &that2 } else { @@ -22195,19 +17555,19 @@ func (this *APIEndpointProtectionRule_SpecificDomain) Equal(that interface{}) bo } else if this == nil { return false } - if this.SpecificDomain != that1.SpecificDomain { + if !this.SingleLbApp.Equal(that1.SingleLbApp) { return false } return true } -func (this *APIGroupProtectionRule) Equal(that interface{}) bool { +func (this *GlobalSpecType_MultiLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupProtectionRule) + that1, ok := that.(*GlobalSpecType_MultiLbApp) if !ok { - that2, ok := that.(APIGroupProtectionRule) + that2, ok := that.(GlobalSpecType_MultiLbApp) if ok { that1 = &that2 } else { @@ -22219,43 +17579,19 @@ func (this *APIGroupProtectionRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.Action.Equal(that1.Action) { - return false - } - if that1.DomainChoice == nil { - if this.DomainChoice != nil { - return false - } - } else if this.DomainChoice == nil { - return false - } else if !this.DomainChoice.Equal(that1.DomainChoice) { - return false - } - if this.BasePath != that1.BasePath { - return false - } - if this.ApiGroup != that1.ApiGroup { - return false - } - if !this.RequestMatcher.Equal(that1.RequestMatcher) { - return false - } - if !this.ClientMatcher.Equal(that1.ClientMatcher) { + if !this.MultiLbApp.Equal(that1.MultiLbApp) { return false } return true } -func (this *APIGroupProtectionRule_AnyDomain) Equal(that interface{}) bool { +func (this *GlobalSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupProtectionRule_AnyDomain) + that1, ok := that.(*GlobalSpecType_EnableMaliciousUserDetection) if !ok { - that2, ok := that.(APIGroupProtectionRule_AnyDomain) + that2, ok := that.(GlobalSpecType_EnableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -22267,19 +17603,19 @@ func (this *APIGroupProtectionRule_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { return false } return true } -func (this *APIGroupProtectionRule_SpecificDomain) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIGroupProtectionRule_SpecificDomain) + that1, ok := that.(*GlobalSpecType_DisableMaliciousUserDetection) if !ok { - that2, ok := that.(APIGroupProtectionRule_SpecificDomain) + that2, ok := that.(GlobalSpecType_DisableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -22291,19 +17627,19 @@ func (this *APIGroupProtectionRule_SpecificDomain) Equal(that interface{}) bool } else if this == nil { return false } - if this.SpecificDomain != that1.SpecificDomain { + if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { return false } return true } -func (this *APIProtectionRules) Equal(that interface{}) bool { +func (this *GlobalSpecType_EnableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APIProtectionRules) + that1, ok := that.(*GlobalSpecType_EnableApiDiscovery) if !ok { - that2, ok := that.(APIProtectionRules) + that2, ok := that.(GlobalSpecType_EnableApiDiscovery) if ok { that1 = &that2 } else { @@ -22315,32 +17651,19 @@ func (this *APIProtectionRules) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.ApiEndpointRules) != len(that1.ApiEndpointRules) { - return false - } - for i := range this.ApiEndpointRules { - if !this.ApiEndpointRules[i].Equal(that1.ApiEndpointRules[i]) { - return false - } - } - if len(this.ApiGroupsRules) != len(that1.ApiGroupsRules) { + if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { return false } - for i := range this.ApiGroupsRules { - if !this.ApiGroupsRules[i].Equal(that1.ApiGroupsRules[i]) { - return false - } - } return true } -func (this *DDoSMitigationRule) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DDoSMitigationRule) + that1, ok := that.(*GlobalSpecType_DisableApiDiscovery) if !ok { - that2, ok := that.(DDoSMitigationRule) + that2, ok := that.(GlobalSpecType_DisableApiDiscovery) if ok { that1 = &that2 } else { @@ -22352,40 +17675,19 @@ func (this *DDoSMitigationRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if that1.MitigationAction == nil { - if this.MitigationAction != nil { - return false - } - } else if this.MitigationAction == nil { - return false - } else if !this.MitigationAction.Equal(that1.MitigationAction) { - return false - } - if that1.MitigationChoice == nil { - if this.MitigationChoice != nil { - return false - } - } else if this.MitigationChoice == nil { - return false - } else if !this.MitigationChoice.Equal(that1.MitigationChoice) { - return false - } - if !this.ExpirationTimestamp.Equal(that1.ExpirationTimestamp) { + if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { return false } return true } -func (this *DDoSMitigationRule_Block) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableBotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DDoSMitigationRule_Block) + that1, ok := that.(*GlobalSpecType_DisableBotDefense) if !ok { - that2, ok := that.(DDoSMitigationRule_Block) + that2, ok := that.(GlobalSpecType_DisableBotDefense) if ok { that1 = &that2 } else { @@ -22397,19 +17699,19 @@ func (this *DDoSMitigationRule_Block) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Block.Equal(that1.Block) { + if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { return false } return true } -func (this *DDoSMitigationRule_DdosClientSource) Equal(that interface{}) bool { +func (this *GlobalSpecType_BotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DDoSMitigationRule_DdosClientSource) + that1, ok := that.(*GlobalSpecType_BotDefense) if !ok { - that2, ok := that.(DDoSMitigationRule_DdosClientSource) + that2, ok := that.(GlobalSpecType_BotDefense) if ok { that1 = &that2 } else { @@ -22421,19 +17723,19 @@ func (this *DDoSMitigationRule_DdosClientSource) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DdosClientSource.Equal(that1.DdosClientSource) { + if !this.BotDefense.Equal(that1.BotDefense) { return false } return true } -func (this *DDoSMitigationRule_IpPrefixList) Equal(that interface{}) bool { +func (this *GlobalSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*DDoSMitigationRule_IpPrefixList) + that1, ok := that.(*GlobalSpecType_BotDefenseAdvanced) if !ok { - that2, ok := that.(DDoSMitigationRule_IpPrefixList) + that2, ok := that.(GlobalSpecType_BotDefenseAdvanced) if ok { that1 = &that2 } else { @@ -22445,19 +17747,19 @@ func (this *DDoSMitigationRule_IpPrefixList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.IpPrefixList.Equal(that1.IpPrefixList) { + if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { return false } return true } -func (this *CustomIpAllowedList) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CustomIpAllowedList) + that1, ok := that.(*GlobalSpecType_DisableClientSideDefense) if !ok { - that2, ok := that.(CustomIpAllowedList) + that2, ok := that.(GlobalSpecType_DisableClientSideDefense) if ok { that1 = &that2 } else { @@ -22469,24 +17771,19 @@ func (this *CustomIpAllowedList) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.RateLimiterAllowedPrefixes) != len(that1.RateLimiterAllowedPrefixes) { + if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { return false } - for i := range this.RateLimiterAllowedPrefixes { - if !this.RateLimiterAllowedPrefixes[i].Equal(that1.RateLimiterAllowedPrefixes[i]) { - return false - } - } return true } -func (this *RateLimitConfigType) Equal(that interface{}) bool { +func (this *GlobalSpecType_ClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RateLimitConfigType) + that1, ok := that.(*GlobalSpecType_ClientSideDefense) if !ok { - that2, ok := that.(RateLimitConfigType) + that2, ok := that.(GlobalSpecType_ClientSideDefense) if ok { that1 = &that2 } else { @@ -22498,37 +17795,19 @@ func (this *RateLimitConfigType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.RateLimiter.Equal(that1.RateLimiter) { - return false - } - if that1.IpAllowedListChoice == nil { - if this.IpAllowedListChoice != nil { - return false - } - } else if this.IpAllowedListChoice == nil { - return false - } else if !this.IpAllowedListChoice.Equal(that1.IpAllowedListChoice) { - return false - } - if that1.PolicyChoice == nil { - if this.PolicyChoice != nil { - return false - } - } else if this.PolicyChoice == nil { - return false - } else if !this.PolicyChoice.Equal(that1.PolicyChoice) { + if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { return false } return true } -func (this *RateLimitConfigType_NoIpAllowedList) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RateLimitConfigType_NoIpAllowedList) + that1, ok := that.(*GlobalSpecType_DisableApiDefinition) if !ok { - that2, ok := that.(RateLimitConfigType_NoIpAllowedList) + that2, ok := that.(GlobalSpecType_DisableApiDefinition) if ok { that1 = &that2 } else { @@ -22540,19 +17819,19 @@ func (this *RateLimitConfigType_NoIpAllowedList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoIpAllowedList.Equal(that1.NoIpAllowedList) { + if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { return false } return true } -func (this *RateLimitConfigType_IpAllowedList) Equal(that interface{}) bool { +func (this *GlobalSpecType_ApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RateLimitConfigType_IpAllowedList) + that1, ok := that.(*GlobalSpecType_ApiDefinition) if !ok { - that2, ok := that.(RateLimitConfigType_IpAllowedList) + that2, ok := that.(GlobalSpecType_ApiDefinition) if ok { that1 = &that2 } else { @@ -22564,19 +17843,19 @@ func (this *RateLimitConfigType_IpAllowedList) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.IpAllowedList.Equal(that1.IpAllowedList) { + if !this.ApiDefinition.Equal(that1.ApiDefinition) { return false } return true } -func (this *RateLimitConfigType_CustomIpAllowedList) Equal(that interface{}) bool { +func (this *GlobalSpecType_ApiSpecification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RateLimitConfigType_CustomIpAllowedList) + that1, ok := that.(*GlobalSpecType_ApiSpecification) if !ok { - that2, ok := that.(RateLimitConfigType_CustomIpAllowedList) + that2, ok := that.(GlobalSpecType_ApiSpecification) if ok { that1 = &that2 } else { @@ -22588,19 +17867,19 @@ func (this *RateLimitConfigType_CustomIpAllowedList) Equal(that interface{}) boo } else if this == nil { return false } - if !this.CustomIpAllowedList.Equal(that1.CustomIpAllowedList) { + if !this.ApiSpecification.Equal(that1.ApiSpecification) { return false } return true } -func (this *RateLimitConfigType_NoPolicies) Equal(that interface{}) bool { +func (this *GlobalSpecType_ApiDefinitions) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RateLimitConfigType_NoPolicies) + that1, ok := that.(*GlobalSpecType_ApiDefinitions) if !ok { - that2, ok := that.(RateLimitConfigType_NoPolicies) + that2, ok := that.(GlobalSpecType_ApiDefinitions) if ok { that1 = &that2 } else { @@ -22612,19 +17891,19 @@ func (this *RateLimitConfigType_NoPolicies) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoPolicies.Equal(that1.NoPolicies) { + if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { return false } return true } -func (this *RateLimitConfigType_Policies) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RateLimitConfigType_Policies) + that1, ok := that.(*GlobalSpecType_DisableIpReputation) if !ok { - that2, ok := that.(RateLimitConfigType_Policies) + that2, ok := that.(GlobalSpecType_DisableIpReputation) if ok { that1 = &that2 } else { @@ -22636,19 +17915,19 @@ func (this *RateLimitConfigType_Policies) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Policies.Equal(that1.Policies) { + if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { return false } return true } -func (this *ServicePolicyList) Equal(that interface{}) bool { +func (this *GlobalSpecType_EnableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ServicePolicyList) + that1, ok := that.(*GlobalSpecType_EnableIpReputation) if !ok { - that2, ok := that.(ServicePolicyList) + that2, ok := that.(GlobalSpecType_EnableIpReputation) if ok { that1 = &that2 } else { @@ -22660,24 +17939,19 @@ func (this *ServicePolicyList) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Policies) != len(that1.Policies) { + if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { return false } - for i := range this.Policies { - if !this.Policies[i].Equal(that1.Policies[i]) { - return false - } - } return true } -func (this *ApiDefinitionList) Equal(that interface{}) bool { +func (this *GlobalSpecType_DisableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiDefinitionList) + that1, ok := that.(*GlobalSpecType_DisableThreatMesh) if !ok { - that2, ok := that.(ApiDefinitionList) + that2, ok := that.(GlobalSpecType_DisableThreatMesh) if ok { that1 = &that2 } else { @@ -22689,24 +17963,19 @@ func (this *ApiDefinitionList) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.ApiDefinitions) != len(that1.ApiDefinitions) { + if !this.DisableThreatMesh.Equal(that1.DisableThreatMesh) { return false } - for i := range this.ApiDefinitions { - if !this.ApiDefinitions[i].Equal(that1.ApiDefinitions[i]) { - return false - } - } return true } -func (this *ApiDiscoverySetting) Equal(that interface{}) bool { +func (this *GlobalSpecType_EnableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiDiscoverySetting) + that1, ok := that.(*GlobalSpecType_EnableThreatMesh) if !ok { - that2, ok := that.(ApiDiscoverySetting) + that2, ok := that.(GlobalSpecType_EnableThreatMesh) if ok { that1 = &that2 } else { @@ -22718,31 +17987,19 @@ func (this *ApiDiscoverySetting) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.LearnFromRedirectTraffic == nil { - if this.LearnFromRedirectTraffic != nil { - return false - } - } else if this.LearnFromRedirectTraffic == nil { - return false - } else if !this.LearnFromRedirectTraffic.Equal(that1.LearnFromRedirectTraffic) { - return false - } - if !this.SensitiveDataDetectionRules.Equal(that1.SensitiveDataDetectionRules) { - return false - } - if !this.DiscoveredApiSettings.Equal(that1.DiscoveredApiSettings) { + if !this.EnableThreatMesh.Equal(that1.EnableThreatMesh) { return false } return true } -func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) Equal(that interface{}) bool { +func (this *GlobalSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiDiscoverySetting_DisableLearnFromRedirectTraffic) + that1, ok := that.(*GlobalSpecType_SystemDefaultTimeouts) if !ok { - that2, ok := that.(ApiDiscoverySetting_DisableLearnFromRedirectTraffic) + that2, ok := that.(GlobalSpecType_SystemDefaultTimeouts) if ok { that1 = &that2 } else { @@ -22754,19 +18011,19 @@ func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) Equal(that inte } else if this == nil { return false } - if !this.DisableLearnFromRedirectTraffic.Equal(that1.DisableLearnFromRedirectTraffic) { + if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { return false } return true } -func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) Equal(that interface{}) bool { +func (this *GlobalSpecType_SlowDdosMitigation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiDiscoverySetting_EnableLearnFromRedirectTraffic) + that1, ok := that.(*GlobalSpecType_SlowDdosMitigation) if !ok { - that2, ok := that.(ApiDiscoverySetting_EnableLearnFromRedirectTraffic) + that2, ok := that.(GlobalSpecType_SlowDdosMitigation) if ok { that1 = &that2 } else { @@ -22778,19 +18035,19 @@ func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) Equal(that inter } else if this == nil { return false } - if !this.EnableLearnFromRedirectTraffic.Equal(that1.EnableLearnFromRedirectTraffic) { + if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { return false } return true } -func (this *EnableDDoSDetectionSetting) Equal(that interface{}) bool { +func (this *GlobalSpecType_L7DdosActionDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableDDoSDetectionSetting) + that1, ok := that.(*GlobalSpecType_L7DdosActionDefault) if !ok { - that2, ok := that.(EnableDDoSDetectionSetting) + that2, ok := that.(GlobalSpecType_L7DdosActionDefault) if ok { that1 = &that2 } else { @@ -22802,25 +18059,19 @@ func (this *EnableDDoSDetectionSetting) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.AutoMitigationChoice == nil { - if this.AutoMitigationChoice != nil { - return false - } - } else if this.AutoMitigationChoice == nil { - return false - } else if !this.AutoMitigationChoice.Equal(that1.AutoMitigationChoice) { + if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { return false } return true } -func (this *EnableDDoSDetectionSetting_EnableAutoMitigation) Equal(that interface{}) bool { +func (this *GlobalSpecType_L7DdosActionBlock) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableDDoSDetectionSetting_EnableAutoMitigation) + that1, ok := that.(*GlobalSpecType_L7DdosActionBlock) if !ok { - that2, ok := that.(EnableDDoSDetectionSetting_EnableAutoMitigation) + that2, ok := that.(GlobalSpecType_L7DdosActionBlock) if ok { that1 = &that2 } else { @@ -22832,19 +18083,19 @@ func (this *EnableDDoSDetectionSetting_EnableAutoMitigation) Equal(that interfac } else if this == nil { return false } - if !this.EnableAutoMitigation.Equal(that1.EnableAutoMitigation) { + if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { return false } return true } -func (this *EnableDDoSDetectionSetting_DisableAutoMitigation) Equal(that interface{}) bool { +func (this *GlobalSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*EnableDDoSDetectionSetting_DisableAutoMitigation) + that1, ok := that.(*GlobalSpecType_L7DdosActionJsChallenge) if !ok { - that2, ok := that.(EnableDDoSDetectionSetting_DisableAutoMitigation) + that2, ok := that.(GlobalSpecType_L7DdosActionJsChallenge) if ok { that1 = &that2 } else { @@ -22856,19 +18107,19 @@ func (this *EnableDDoSDetectionSetting_DisableAutoMitigation) Equal(that interfa } else if this == nil { return false } - if !this.DisableAutoMitigation.Equal(that1.DisableAutoMitigation) { + if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { return false } return true } -func (this *AutoMitigationAction) Equal(that interface{}) bool { +func (this *GlobalSpecType_L7DdosActionNone) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AutoMitigationAction) + that1, ok := that.(*GlobalSpecType_L7DdosActionNone) if !ok { - that2, ok := that.(AutoMitigationAction) + that2, ok := that.(GlobalSpecType_L7DdosActionNone) if ok { that1 = &that2 } else { @@ -22880,25 +18131,19 @@ func (this *AutoMitigationAction) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.Action == nil { - if this.Action != nil { - return false - } - } else if this.Action == nil { - return false - } else if !this.Action.Equal(that1.Action) { + if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { return false } return true } -func (this *AutoMitigationAction_Block) Equal(that interface{}) bool { +func (this *CreateSpecType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AutoMitigationAction_Block) + that1, ok := that.(*CreateSpecType) if !ok { - that2, ok := that.(AutoMitigationAction_Block) + that2, ok := that.(CreateSpecType) if ok { that1 = &that2 } else { @@ -22910,70 +18155,185 @@ func (this *AutoMitigationAction_Block) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Block.Equal(that1.Block) { + if len(this.Domains) != len(that1.Domains) { return false } - return true -} -func (this *AutoMitigationAction_JsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { + return false + } } - - that1, ok := that.(*AutoMitigationAction_JsChallenge) - if !ok { - that2, ok := that.(AutoMitigationAction_JsChallenge) - if ok { - that1 = &that2 - } else { + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { return false } + } else if this.LoadbalancerType == nil { + return false + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if that1.AdvertiseChoice == nil { + if this.AdvertiseChoice != nil { + return false + } + } else if this.AdvertiseChoice == nil { + return false + } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { return false } - if !this.JsChallenge.Equal(that1.JsChallenge) { + if len(this.DefaultRoutePools) != len(that1.DefaultRoutePools) { return false } - return true -} -func (this *SingleLoadBalancerAppSetting) Equal(that interface{}) bool { - if that == nil { - return this == nil + for i := range this.DefaultRoutePools { + if !this.DefaultRoutePools[i].Equal(that1.DefaultRoutePools[i]) { + return false + } } - - that1, ok := that.(*SingleLoadBalancerAppSetting) - if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting) - if ok { - that1 = &that2 - } else { + if that1.OriginPoolChoice == nil { + if this.OriginPoolChoice != nil { return false } + } else if this.OriginPoolChoice == nil { + return false + } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { return false } - if that1.ApiDiscoveryChoice == nil { - if this.ApiDiscoveryChoice != nil { + if len(this.Routes) != len(that1.Routes) { + return false + } + for i := range this.Routes { + if !this.Routes[i].Equal(that1.Routes[i]) { return false } - } else if this.ApiDiscoveryChoice == nil { + } + if !this.CorsPolicy.Equal(that1.CorsPolicy) { return false - } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { + } + if that1.WafChoice == nil { + if this.WafChoice != nil { + return false + } + } else if this.WafChoice == nil { + return false + } else if !this.WafChoice.Equal(that1.WafChoice) { + return false + } + if this.AddLocation != that1.AddLocation { + return false + } + if that1.ChallengeType == nil { + if this.ChallengeType != nil { + return false + } + } else if this.ChallengeType == nil { + return false + } else if !this.ChallengeType.Equal(that1.ChallengeType) { + return false + } + if !this.MoreOption.Equal(that1.MoreOption) { + return false + } + if that1.UserIdChoice == nil { + if this.UserIdChoice != nil { + return false + } + } else if this.UserIdChoice == nil { + return false + } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { + return false + } + if that1.RateLimitChoice == nil { + if this.RateLimitChoice != nil { + return false + } + } else if this.RateLimitChoice == nil { + return false + } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { + return false + } + if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { + return false + } + if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { + return false + } + for i := range this.WafExclusionRules { + if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { + return false + } + } + if len(this.DataGuardRules) != len(that1.DataGuardRules) { + return false + } + for i := range this.DataGuardRules { + if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { + return false + } + } + if len(this.BlockedClients) != len(that1.BlockedClients) { + return false + } + for i := range this.BlockedClients { + if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { + return false + } + } + if len(this.TrustedClients) != len(that1.TrustedClients) { + return false + } + for i := range this.TrustedClients { + if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { + return false + } + } + if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { + return false + } + if len(this.DdosMitigationRules) != len(that1.DdosMitigationRules) { + return false + } + for i := range this.DdosMitigationRules { + if !this.DdosMitigationRules[i].Equal(that1.DdosMitigationRules[i]) { + return false + } + } + if that1.ServicePolicyChoice == nil { + if this.ServicePolicyChoice != nil { + return false + } + } else if this.ServicePolicyChoice == nil { + return false + } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { + return false + } + if that1.HashPolicyChoice == nil { + if this.HashPolicyChoice != nil { + return false + } + } else if this.HashPolicyChoice == nil { + return false + } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { + return false + } + if that1.TrustClientIpHeadersChoice == nil { + if this.TrustClientIpHeadersChoice != nil { + return false + } + } else if this.TrustClientIpHeadersChoice == nil { + return false + } else if !this.TrustClientIpHeadersChoice.Equal(that1.TrustClientIpHeadersChoice) { return false } - if that1.DdosDetectionChoice == nil { - if this.DdosDetectionChoice != nil { + if that1.MlConfigChoice == nil { + if this.MlConfigChoice != nil { return false } - } else if this.DdosDetectionChoice == nil { + } else if this.MlConfigChoice == nil { return false - } else if !this.DdosDetectionChoice.Equal(that1.DdosDetectionChoice) { + } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { return false } if that1.MaliciousUserDetectionChoice == nil { @@ -22985,16 +18345,110 @@ func (this *SingleLoadBalancerAppSetting) Equal(that interface{}) bool { } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { return false } + if that1.ApiDiscoveryChoice == nil { + if this.ApiDiscoveryChoice != nil { + return false + } + } else if this.ApiDiscoveryChoice == nil { + return false + } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { + return false + } + if that1.BotDefenseChoice == nil { + if this.BotDefenseChoice != nil { + return false + } + } else if this.BotDefenseChoice == nil { + return false + } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { + return false + } + if that1.ApiDefinitionChoice == nil { + if this.ApiDefinitionChoice != nil { + return false + } + } else if this.ApiDefinitionChoice == nil { + return false + } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { + return false + } + if that1.IpReputationChoice == nil { + if this.IpReputationChoice != nil { + return false + } + } else if this.IpReputationChoice == nil { + return false + } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { + return false + } + if that1.ClientSideDefenseChoice == nil { + if this.ClientSideDefenseChoice != nil { + return false + } + } else if this.ClientSideDefenseChoice == nil { + return false + } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { + return false + } + if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { + return false + } + if len(this.GraphqlRules) != len(that1.GraphqlRules) { + return false + } + for i := range this.GraphqlRules { + if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { + return false + } + } + if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { + return false + } + for i := range this.ProtectedCookies { + if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { + return false + } + } + if that1.SlowDdosMitigationChoice == nil { + if this.SlowDdosMitigationChoice != nil { + return false + } + } else if this.SlowDdosMitigationChoice == nil { + return false + } else if !this.SlowDdosMitigationChoice.Equal(that1.SlowDdosMitigationChoice) { + return false + } + if !this.JwtValidation.Equal(that1.JwtValidation) { + return false + } + if that1.ThreatMeshChoice == nil { + if this.ThreatMeshChoice != nil { + return false + } + } else if this.ThreatMeshChoice == nil { + return false + } else if !this.ThreatMeshChoice.Equal(that1.ThreatMeshChoice) { + return false + } + if that1.L7DdosAutoMitigationAction == nil { + if this.L7DdosAutoMitigationAction != nil { + return false + } + } else if this.L7DdosAutoMitigationAction == nil { + return false + } else if !this.L7DdosAutoMitigationAction.Equal(that1.L7DdosAutoMitigationAction) { + return false + } return true } -func (this *SingleLoadBalancerAppSetting_EnableDiscovery) Equal(that interface{}) bool { +func (this *CreateSpecType_Http) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SingleLoadBalancerAppSetting_EnableDiscovery) + that1, ok := that.(*CreateSpecType_Http) if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting_EnableDiscovery) + that2, ok := that.(CreateSpecType_Http) if ok { that1 = &that2 } else { @@ -23006,19 +18460,19 @@ func (this *SingleLoadBalancerAppSetting_EnableDiscovery) Equal(that interface{} } else if this == nil { return false } - if !this.EnableDiscovery.Equal(that1.EnableDiscovery) { + if !this.Http.Equal(that1.Http) { return false } return true } -func (this *SingleLoadBalancerAppSetting_DisableDiscovery) Equal(that interface{}) bool { +func (this *CreateSpecType_HttpsAutoCert) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SingleLoadBalancerAppSetting_DisableDiscovery) + that1, ok := that.(*CreateSpecType_HttpsAutoCert) if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting_DisableDiscovery) + that2, ok := that.(CreateSpecType_HttpsAutoCert) if ok { that1 = &that2 } else { @@ -23030,19 +18484,19 @@ func (this *SingleLoadBalancerAppSetting_DisableDiscovery) Equal(that interface{ } else if this == nil { return false } - if !this.DisableDiscovery.Equal(that1.DisableDiscovery) { + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { return false } return true } -func (this *SingleLoadBalancerAppSetting_EnableDdosDetection) Equal(that interface{}) bool { +func (this *CreateSpecType_Https) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SingleLoadBalancerAppSetting_EnableDdosDetection) + that1, ok := that.(*CreateSpecType_Https) if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting_EnableDdosDetection) + that2, ok := that.(CreateSpecType_Https) if ok { that1 = &that2 } else { @@ -23054,19 +18508,19 @@ func (this *SingleLoadBalancerAppSetting_EnableDdosDetection) Equal(that interfa } else if this == nil { return false } - if !this.EnableDdosDetection.Equal(that1.EnableDdosDetection) { + if !this.Https.Equal(that1.Https) { return false } return true } -func (this *SingleLoadBalancerAppSetting_DisableDdosDetection) Equal(that interface{}) bool { +func (this *CreateSpecType_DoNotAdvertise) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SingleLoadBalancerAppSetting_DisableDdosDetection) + that1, ok := that.(*CreateSpecType_DoNotAdvertise) if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting_DisableDdosDetection) + that2, ok := that.(CreateSpecType_DoNotAdvertise) if ok { that1 = &that2 } else { @@ -23078,19 +18532,19 @@ func (this *SingleLoadBalancerAppSetting_DisableDdosDetection) Equal(that interf } else if this == nil { return false } - if !this.DisableDdosDetection.Equal(that1.DisableDdosDetection) { + if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { return false } return true } -func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) Equal(that interface{}) bool { +func (this *CreateSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) + that1, ok := that.(*CreateSpecType_AdvertiseOnPublicDefaultVip) if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) + that2, ok := that.(CreateSpecType_AdvertiseOnPublicDefaultVip) if ok { that1 = &that2 } else { @@ -23102,19 +18556,19 @@ func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) Equal(tha } else if this == nil { return false } - if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { + if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { return false } return true } -func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) Equal(that interface{}) bool { +func (this *CreateSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) + that1, ok := that.(*CreateSpecType_AdvertiseOnPublic) if !ok { - that2, ok := that.(SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) + that2, ok := that.(CreateSpecType_AdvertiseOnPublic) if ok { that1 = &that2 } else { @@ -23126,19 +18580,19 @@ func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) Equal(th } else if this == nil { return false } - if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { + if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { return false } return true } -func (this *APISpecificationSettings) Equal(that interface{}) bool { +func (this *CreateSpecType_AdvertiseCustom) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APISpecificationSettings) + that1, ok := that.(*CreateSpecType_AdvertiseCustom) if !ok { - that2, ok := that.(APISpecificationSettings) + that2, ok := that.(CreateSpecType_AdvertiseCustom) if ok { that1 = &that2 } else { @@ -23150,28 +18604,19 @@ func (this *APISpecificationSettings) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiDefinition.Equal(that1.ApiDefinition) { - return false - } - if that1.ValidationTargetChoice == nil { - if this.ValidationTargetChoice != nil { - return false - } - } else if this.ValidationTargetChoice == nil { - return false - } else if !this.ValidationTargetChoice.Equal(that1.ValidationTargetChoice) { + if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { return false } return true } -func (this *APISpecificationSettings_ValidationDisabled) Equal(that interface{}) bool { +func (this *CreateSpecType_DefaultPool) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APISpecificationSettings_ValidationDisabled) + that1, ok := that.(*CreateSpecType_DefaultPool) if !ok { - that2, ok := that.(APISpecificationSettings_ValidationDisabled) + that2, ok := that.(CreateSpecType_DefaultPool) if ok { that1 = &that2 } else { @@ -23183,19 +18628,19 @@ func (this *APISpecificationSettings_ValidationDisabled) Equal(that interface{}) } else if this == nil { return false } - if !this.ValidationDisabled.Equal(that1.ValidationDisabled) { + if !this.DefaultPool.Equal(that1.DefaultPool) { return false } return true } -func (this *APISpecificationSettings_ValidationAllSpecEndpoints) Equal(that interface{}) bool { +func (this *CreateSpecType_DefaultPoolList) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APISpecificationSettings_ValidationAllSpecEndpoints) + that1, ok := that.(*CreateSpecType_DefaultPoolList) if !ok { - that2, ok := that.(APISpecificationSettings_ValidationAllSpecEndpoints) + that2, ok := that.(CreateSpecType_DefaultPoolList) if ok { that1 = &that2 } else { @@ -23207,19 +18652,19 @@ func (this *APISpecificationSettings_ValidationAllSpecEndpoints) Equal(that inte } else if this == nil { return false } - if !this.ValidationAllSpecEndpoints.Equal(that1.ValidationAllSpecEndpoints) { + if !this.DefaultPoolList.Equal(that1.DefaultPoolList) { return false } return true } -func (this *APISpecificationSettings_ValidationCustomList) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableWaf) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*APISpecificationSettings_ValidationCustomList) + that1, ok := that.(*CreateSpecType_DisableWaf) if !ok { - that2, ok := that.(APISpecificationSettings_ValidationCustomList) + that2, ok := that.(CreateSpecType_DisableWaf) if ok { that1 = &that2 } else { @@ -23231,19 +18676,19 @@ func (this *APISpecificationSettings_ValidationCustomList) Equal(that interface{ } else if this == nil { return false } - if !this.ValidationCustomList.Equal(that1.ValidationCustomList) { + if !this.DisableWaf.Equal(that1.DisableWaf) { return false } return true } -func (this *OpenApiValidationAllSpecEndpointsSettings) Equal(that interface{}) bool { +func (this *CreateSpecType_AppFirewall) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationAllSpecEndpointsSettings) + that1, ok := that.(*CreateSpecType_AppFirewall) if !ok { - that2, ok := that.(OpenApiValidationAllSpecEndpointsSettings) + that2, ok := that.(CreateSpecType_AppFirewall) if ok { that1 = &that2 } else { @@ -23255,34 +18700,19 @@ func (this *OpenApiValidationAllSpecEndpointsSettings) Equal(that interface{}) b } else if this == nil { return false } - if !this.ValidationMode.Equal(that1.ValidationMode) { - return false - } - if !this.FallThroughMode.Equal(that1.FallThroughMode) { - return false - } - if that1.OversizedBodyChoice == nil { - if this.OversizedBodyChoice != nil { - return false - } - } else if this.OversizedBodyChoice == nil { - return false - } else if !this.OversizedBodyChoice.Equal(that1.OversizedBodyChoice) { - return false - } - if !this.Settings.Equal(that1.Settings) { + if !this.AppFirewall.Equal(that1.AppFirewall) { return false } return true } -func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_NoChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) + that1, ok := that.(*CreateSpecType_NoChallenge) if !ok { - that2, ok := that.(OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) + that2, ok := that.(CreateSpecType_NoChallenge) if ok { that1 = &that2 } else { @@ -23294,19 +18724,19 @@ func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidatio } else if this == nil { return false } - if !this.OversizedBodySkipValidation.Equal(that1.OversizedBodySkipValidation) { + if !this.NoChallenge.Equal(that1.NoChallenge) { return false } return true } -func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_EnableChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) + that1, ok := that.(*CreateSpecType_EnableChallenge) if !ok { - that2, ok := that.(OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) + that2, ok := that.(CreateSpecType_EnableChallenge) if ok { that1 = &that2 } else { @@ -23318,19 +18748,19 @@ func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidatio } else if this == nil { return false } - if !this.OversizedBodyFailValidation.Equal(that1.OversizedBodyFailValidation) { + if !this.EnableChallenge.Equal(that1.EnableChallenge) { return false } return true } -func (this *OpenApiValidationCommonSettings) Equal(that interface{}) bool { +func (this *CreateSpecType_JsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationCommonSettings) + that1, ok := that.(*CreateSpecType_JsChallenge) if !ok { - that2, ok := that.(OpenApiValidationCommonSettings) + that2, ok := that.(CreateSpecType_JsChallenge) if ok { that1 = &that2 } else { @@ -23342,34 +18772,19 @@ func (this *OpenApiValidationCommonSettings) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.OversizedBodyChoice == nil { - if this.OversizedBodyChoice != nil { - return false - } - } else if this.OversizedBodyChoice == nil { - return false - } else if !this.OversizedBodyChoice.Equal(that1.OversizedBodyChoice) { - return false - } - if that1.PropertyValidationSettingsChoice == nil { - if this.PropertyValidationSettingsChoice != nil { - return false - } - } else if this.PropertyValidationSettingsChoice == nil { - return false - } else if !this.PropertyValidationSettingsChoice.Equal(that1.PropertyValidationSettingsChoice) { + if !this.JsChallenge.Equal(that1.JsChallenge) { return false } return true } -func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_CaptchaChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationCommonSettings_OversizedBodySkipValidation) + that1, ok := that.(*CreateSpecType_CaptchaChallenge) if !ok { - that2, ok := that.(OpenApiValidationCommonSettings_OversizedBodySkipValidation) + that2, ok := that.(CreateSpecType_CaptchaChallenge) if ok { that1 = &that2 } else { @@ -23381,19 +18796,19 @@ func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) Equal(t } else if this == nil { return false } - if !this.OversizedBodySkipValidation.Equal(that1.OversizedBodySkipValidation) { + if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { return false } return true } -func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationCommonSettings_OversizedBodyFailValidation) + that1, ok := that.(*CreateSpecType_PolicyBasedChallenge) if !ok { - that2, ok := that.(OpenApiValidationCommonSettings_OversizedBodyFailValidation) + that2, ok := that.(CreateSpecType_PolicyBasedChallenge) if ok { that1 = &that2 } else { @@ -23405,19 +18820,19 @@ func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) Equal(t } else if this == nil { return false } - if !this.OversizedBodyFailValidation.Equal(that1.OversizedBodyFailValidation) { + if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { return false } return true } -func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) Equal(that interface{}) bool { +func (this *CreateSpecType_UserIdClientIp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) + that1, ok := that.(*CreateSpecType_UserIdClientIp) if !ok { - that2, ok := that.(OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) + that2, ok := that.(CreateSpecType_UserIdClientIp) if ok { that1 = &that2 } else { @@ -23429,19 +18844,19 @@ func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) E } else if this == nil { return false } - if !this.PropertyValidationSettingsDefault.Equal(that1.PropertyValidationSettingsDefault) { + if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { return false } return true } -func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) Equal(that interface{}) bool { +func (this *CreateSpecType_UserIdentification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) + that1, ok := that.(*CreateSpecType_UserIdentification) if !ok { - that2, ok := that.(OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) + that2, ok := that.(CreateSpecType_UserIdentification) if ok { that1 = &that2 } else { @@ -23453,19 +18868,19 @@ func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) Eq } else if this == nil { return false } - if !this.PropertyValidationSettingsCustom.Equal(that1.PropertyValidationSettingsCustom) { + if !this.UserIdentification.Equal(that1.UserIdentification) { return false } return true } -func (this *ValidationPropertySetting) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationPropertySetting) + that1, ok := that.(*CreateSpecType_DisableRateLimit) if !ok { - that2, ok := that.(ValidationPropertySetting) + that2, ok := that.(CreateSpecType_DisableRateLimit) if ok { that1 = &that2 } else { @@ -23477,22 +18892,19 @@ func (this *ValidationPropertySetting) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.QueryParameters.Equal(that1.QueryParameters) { - return false - } - if !this.Headers.Equal(that1.Headers) { + if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { return false } return true } -func (this *ValidationSettingForQueryParameters) Equal(that interface{}) bool { +func (this *CreateSpecType_ApiRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationSettingForQueryParameters) + that1, ok := that.(*CreateSpecType_ApiRateLimit) if !ok { - that2, ok := that.(ValidationSettingForQueryParameters) + that2, ok := that.(CreateSpecType_ApiRateLimit) if ok { that1 = &that2 } else { @@ -23504,25 +18916,19 @@ func (this *ValidationSettingForQueryParameters) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.AdditionalParametersChoice == nil { - if this.AdditionalParametersChoice != nil { - return false - } - } else if this.AdditionalParametersChoice == nil { - return false - } else if !this.AdditionalParametersChoice.Equal(that1.AdditionalParametersChoice) { + if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { return false } return true } -func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) Equal(that interface{}) bool { +func (this *CreateSpecType_RateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationSettingForQueryParameters_AllowAdditionalParameters) + that1, ok := that.(*CreateSpecType_RateLimit) if !ok { - that2, ok := that.(ValidationSettingForQueryParameters_AllowAdditionalParameters) + that2, ok := that.(CreateSpecType_RateLimit) if ok { that1 = &that2 } else { @@ -23534,19 +18940,19 @@ func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) Equal } else if this == nil { return false } - if !this.AllowAdditionalParameters.Equal(that1.AllowAdditionalParameters) { + if !this.RateLimit.Equal(that1.RateLimit) { return false } return true } -func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) Equal(that interface{}) bool { +func (this *CreateSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationSettingForQueryParameters_DisallowAdditionalParameters) + that1, ok := that.(*CreateSpecType_ServicePoliciesFromNamespace) if !ok { - that2, ok := that.(ValidationSettingForQueryParameters_DisallowAdditionalParameters) + that2, ok := that.(CreateSpecType_ServicePoliciesFromNamespace) if ok { that1 = &that2 } else { @@ -23558,19 +18964,19 @@ func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) Eq } else if this == nil { return false } - if !this.DisallowAdditionalParameters.Equal(that1.DisallowAdditionalParameters) { + if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { return false } return true } -func (this *ValidationSettingForHeaders) Equal(that interface{}) bool { +func (this *CreateSpecType_NoServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationSettingForHeaders) + that1, ok := that.(*CreateSpecType_NoServicePolicies) if !ok { - that2, ok := that.(ValidationSettingForHeaders) + that2, ok := that.(CreateSpecType_NoServicePolicies) if ok { that1 = &that2 } else { @@ -23582,25 +18988,19 @@ func (this *ValidationSettingForHeaders) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.AdditionalHeadersChoice == nil { - if this.AdditionalHeadersChoice != nil { - return false - } - } else if this.AdditionalHeadersChoice == nil { - return false - } else if !this.AdditionalHeadersChoice.Equal(that1.AdditionalHeadersChoice) { + if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { return false } return true } -func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) Equal(that interface{}) bool { +func (this *CreateSpecType_ActiveServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationSettingForHeaders_AllowAdditionalHeaders) + that1, ok := that.(*CreateSpecType_ActiveServicePolicies) if !ok { - that2, ok := that.(ValidationSettingForHeaders_AllowAdditionalHeaders) + that2, ok := that.(CreateSpecType_ActiveServicePolicies) if ok { that1 = &that2 } else { @@ -23612,19 +19012,19 @@ func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) Equal(that inter } else if this == nil { return false } - if !this.AllowAdditionalHeaders.Equal(that1.AllowAdditionalHeaders) { + if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { return false } return true } -func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) Equal(that interface{}) bool { +func (this *CreateSpecType_RoundRobin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidationSettingForHeaders_DisallowAdditionalHeaders) + that1, ok := that.(*CreateSpecType_RoundRobin) if !ok { - that2, ok := that.(ValidationSettingForHeaders_DisallowAdditionalHeaders) + that2, ok := that.(CreateSpecType_RoundRobin) if ok { that1 = &that2 } else { @@ -23636,19 +19036,19 @@ func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) Equal(that in } else if this == nil { return false } - if !this.DisallowAdditionalHeaders.Equal(that1.DisallowAdditionalHeaders) { + if !this.RoundRobin.Equal(that1.RoundRobin) { return false } return true } -func (this *OpenApiValidationMode) Equal(that interface{}) bool { +func (this *CreateSpecType_LeastActive) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationMode) + that1, ok := that.(*CreateSpecType_LeastActive) if !ok { - that2, ok := that.(OpenApiValidationMode) + that2, ok := that.(CreateSpecType_LeastActive) if ok { that1 = &that2 } else { @@ -23660,34 +19060,19 @@ func (this *OpenApiValidationMode) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.ValidationModeChoice == nil { - if this.ValidationModeChoice != nil { - return false - } - } else if this.ValidationModeChoice == nil { - return false - } else if !this.ValidationModeChoice.Equal(that1.ValidationModeChoice) { - return false - } - if that1.ResponseValidationModeChoice == nil { - if this.ResponseValidationModeChoice != nil { - return false - } - } else if this.ResponseValidationModeChoice == nil { - return false - } else if !this.ResponseValidationModeChoice.Equal(that1.ResponseValidationModeChoice) { + if !this.LeastActive.Equal(that1.LeastActive) { return false } return true } -func (this *OpenApiValidationMode_ValidationModeActive) Equal(that interface{}) bool { +func (this *CreateSpecType_Random) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationMode_ValidationModeActive) + that1, ok := that.(*CreateSpecType_Random) if !ok { - that2, ok := that.(OpenApiValidationMode_ValidationModeActive) + that2, ok := that.(CreateSpecType_Random) if ok { that1 = &that2 } else { @@ -23699,19 +19084,19 @@ func (this *OpenApiValidationMode_ValidationModeActive) Equal(that interface{}) } else if this == nil { return false } - if !this.ValidationModeActive.Equal(that1.ValidationModeActive) { + if !this.Random.Equal(that1.Random) { return false } return true } -func (this *OpenApiValidationMode_SkipValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_SourceIpStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationMode_SkipValidation) + that1, ok := that.(*CreateSpecType_SourceIpStickiness) if !ok { - that2, ok := that.(OpenApiValidationMode_SkipValidation) + that2, ok := that.(CreateSpecType_SourceIpStickiness) if ok { that1 = &that2 } else { @@ -23723,19 +19108,19 @@ func (this *OpenApiValidationMode_SkipValidation) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SkipValidation.Equal(that1.SkipValidation) { + if !this.SourceIpStickiness.Equal(that1.SourceIpStickiness) { return false } return true } -func (this *OpenApiValidationMode_SkipResponseValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_CookieStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationMode_SkipResponseValidation) + that1, ok := that.(*CreateSpecType_CookieStickiness) if !ok { - that2, ok := that.(OpenApiValidationMode_SkipResponseValidation) + that2, ok := that.(CreateSpecType_CookieStickiness) if ok { that1 = &that2 } else { @@ -23747,19 +19132,19 @@ func (this *OpenApiValidationMode_SkipResponseValidation) Equal(that interface{} } else if this == nil { return false } - if !this.SkipResponseValidation.Equal(that1.SkipResponseValidation) { + if !this.CookieStickiness.Equal(that1.CookieStickiness) { return false } return true } -func (this *OpenApiValidationMode_ResponseValidationModeActive) Equal(that interface{}) bool { +func (this *CreateSpecType_RingHash) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationMode_ResponseValidationModeActive) + that1, ok := that.(*CreateSpecType_RingHash) if !ok { - that2, ok := that.(OpenApiValidationMode_ResponseValidationModeActive) + that2, ok := that.(CreateSpecType_RingHash) if ok { that1 = &that2 } else { @@ -23771,19 +19156,19 @@ func (this *OpenApiValidationMode_ResponseValidationModeActive) Equal(that inter } else if this == nil { return false } - if !this.ResponseValidationModeActive.Equal(that1.ResponseValidationModeActive) { + if !this.RingHash.Equal(that1.RingHash) { return false } return true } -func (this *OpenApiFallThroughMode) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiFallThroughMode) + that1, ok := that.(*CreateSpecType_DisableTrustClientIpHeaders) if !ok { - that2, ok := that.(OpenApiFallThroughMode) + that2, ok := that.(CreateSpecType_DisableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -23795,25 +19180,19 @@ func (this *OpenApiFallThroughMode) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.FallThroughModeChoice == nil { - if this.FallThroughModeChoice != nil { - return false - } - } else if this.FallThroughModeChoice == nil { - return false - } else if !this.FallThroughModeChoice.Equal(that1.FallThroughModeChoice) { + if !this.DisableTrustClientIpHeaders.Equal(that1.DisableTrustClientIpHeaders) { return false } return true } -func (this *OpenApiFallThroughMode_FallThroughModeAllow) Equal(that interface{}) bool { +func (this *CreateSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiFallThroughMode_FallThroughModeAllow) + that1, ok := that.(*CreateSpecType_EnableTrustClientIpHeaders) if !ok { - that2, ok := that.(OpenApiFallThroughMode_FallThroughModeAllow) + that2, ok := that.(CreateSpecType_EnableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -23825,19 +19204,19 @@ func (this *OpenApiFallThroughMode_FallThroughModeAllow) Equal(that interface{}) } else if this == nil { return false } - if !this.FallThroughModeAllow.Equal(that1.FallThroughModeAllow) { + if !this.EnableTrustClientIpHeaders.Equal(that1.EnableTrustClientIpHeaders) { return false } return true } -func (this *OpenApiFallThroughMode_FallThroughModeCustom) Equal(that interface{}) bool { +func (this *CreateSpecType_SingleLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiFallThroughMode_FallThroughModeCustom) + that1, ok := that.(*CreateSpecType_SingleLbApp) if !ok { - that2, ok := that.(OpenApiFallThroughMode_FallThroughModeCustom) + that2, ok := that.(CreateSpecType_SingleLbApp) if ok { that1 = &that2 } else { @@ -23849,19 +19228,19 @@ func (this *OpenApiFallThroughMode_FallThroughModeCustom) Equal(that interface{} } else if this == nil { return false } - if !this.FallThroughModeCustom.Equal(that1.FallThroughModeCustom) { + if !this.SingleLbApp.Equal(that1.SingleLbApp) { return false } return true } -func (this *CustomFallThroughMode) Equal(that interface{}) bool { +func (this *CreateSpecType_MultiLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*CustomFallThroughMode) + that1, ok := that.(*CreateSpecType_MultiLbApp) if !ok { - that2, ok := that.(CustomFallThroughMode) + that2, ok := that.(CreateSpecType_MultiLbApp) if ok { that1 = &that2 } else { @@ -23873,24 +19252,19 @@ func (this *CustomFallThroughMode) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.OpenApiValidationRules) != len(that1.OpenApiValidationRules) { + if !this.MultiLbApp.Equal(that1.MultiLbApp) { return false } - for i := range this.OpenApiValidationRules { - if !this.OpenApiValidationRules[i].Equal(that1.OpenApiValidationRules[i]) { - return false - } - } return true } -func (this *FallThroughRule) Equal(that interface{}) bool { +func (this *CreateSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule) + that1, ok := that.(*CreateSpecType_EnableMaliciousUserDetection) if !ok { - that2, ok := that.(FallThroughRule) + that2, ok := that.(CreateSpecType_EnableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -23902,37 +19276,19 @@ func (this *FallThroughRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if that1.ActionChoice == nil { - if this.ActionChoice != nil { - return false - } - } else if this.ActionChoice == nil { - return false - } else if !this.ActionChoice.Equal(that1.ActionChoice) { - return false - } - if that1.ConditionTypeChoice == nil { - if this.ConditionTypeChoice != nil { - return false - } - } else if this.ConditionTypeChoice == nil { - return false - } else if !this.ConditionTypeChoice.Equal(that1.ConditionTypeChoice) { + if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { return false } return true } -func (this *FallThroughRule_ActionSkip) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule_ActionSkip) + that1, ok := that.(*CreateSpecType_DisableMaliciousUserDetection) if !ok { - that2, ok := that.(FallThroughRule_ActionSkip) + that2, ok := that.(CreateSpecType_DisableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -23944,19 +19300,19 @@ func (this *FallThroughRule_ActionSkip) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ActionSkip.Equal(that1.ActionSkip) { + if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { return false } return true } -func (this *FallThroughRule_ActionReport) Equal(that interface{}) bool { +func (this *CreateSpecType_EnableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule_ActionReport) + that1, ok := that.(*CreateSpecType_EnableApiDiscovery) if !ok { - that2, ok := that.(FallThroughRule_ActionReport) + that2, ok := that.(CreateSpecType_EnableApiDiscovery) if ok { that1 = &that2 } else { @@ -23968,19 +19324,19 @@ func (this *FallThroughRule_ActionReport) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ActionReport.Equal(that1.ActionReport) { + if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { return false } return true } -func (this *FallThroughRule_ActionBlock) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule_ActionBlock) + that1, ok := that.(*CreateSpecType_DisableApiDiscovery) if !ok { - that2, ok := that.(FallThroughRule_ActionBlock) + that2, ok := that.(CreateSpecType_DisableApiDiscovery) if ok { that1 = &that2 } else { @@ -23992,19 +19348,19 @@ func (this *FallThroughRule_ActionBlock) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ActionBlock.Equal(that1.ActionBlock) { + if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { return false } return true } -func (this *FallThroughRule_ApiEndpoint) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableBotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule_ApiEndpoint) + that1, ok := that.(*CreateSpecType_DisableBotDefense) if !ok { - that2, ok := that.(FallThroughRule_ApiEndpoint) + that2, ok := that.(CreateSpecType_DisableBotDefense) if ok { that1 = &that2 } else { @@ -24016,19 +19372,19 @@ func (this *FallThroughRule_ApiEndpoint) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiEndpoint.Equal(that1.ApiEndpoint) { + if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { return false } return true } -func (this *FallThroughRule_BasePath) Equal(that interface{}) bool { +func (this *CreateSpecType_BotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule_BasePath) + that1, ok := that.(*CreateSpecType_BotDefense) if !ok { - that2, ok := that.(FallThroughRule_BasePath) + that2, ok := that.(CreateSpecType_BotDefense) if ok { that1 = &that2 } else { @@ -24040,19 +19396,19 @@ func (this *FallThroughRule_BasePath) Equal(that interface{}) bool { } else if this == nil { return false } - if this.BasePath != that1.BasePath { + if !this.BotDefense.Equal(that1.BotDefense) { return false } return true } -func (this *FallThroughRule_ApiGroup) Equal(that interface{}) bool { +func (this *CreateSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*FallThroughRule_ApiGroup) + that1, ok := that.(*CreateSpecType_BotDefenseAdvanced) if !ok { - that2, ok := that.(FallThroughRule_ApiGroup) + that2, ok := that.(CreateSpecType_BotDefenseAdvanced) if ok { that1 = &that2 } else { @@ -24064,19 +19420,19 @@ func (this *FallThroughRule_ApiGroup) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ApiGroup != that1.ApiGroup { + if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { return false } return true } -func (this *OpenApiValidationModeActive) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationModeActive) + that1, ok := that.(*CreateSpecType_DisableApiDefinition) if !ok { - that2, ok := that.(OpenApiValidationModeActive) + that2, ok := that.(CreateSpecType_DisableApiDefinition) if ok { that1 = &that2 } else { @@ -24088,33 +19444,19 @@ func (this *OpenApiValidationModeActive) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.ValidationEnforcementType == nil { - if this.ValidationEnforcementType != nil { - return false - } - } else if this.ValidationEnforcementType == nil { - return false - } else if !this.ValidationEnforcementType.Equal(that1.ValidationEnforcementType) { - return false - } - if len(this.RequestValidationProperties) != len(that1.RequestValidationProperties) { + if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { return false } - for i := range this.RequestValidationProperties { - if this.RequestValidationProperties[i] != that1.RequestValidationProperties[i] { - return false - } - } return true } -func (this *OpenApiValidationModeActive_EnforcementReport) Equal(that interface{}) bool { +func (this *CreateSpecType_ApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationModeActive_EnforcementReport) + that1, ok := that.(*CreateSpecType_ApiDefinition) if !ok { - that2, ok := that.(OpenApiValidationModeActive_EnforcementReport) + that2, ok := that.(CreateSpecType_ApiDefinition) if ok { that1 = &that2 } else { @@ -24126,19 +19468,19 @@ func (this *OpenApiValidationModeActive_EnforcementReport) Equal(that interface{ } else if this == nil { return false } - if !this.EnforcementReport.Equal(that1.EnforcementReport) { + if !this.ApiDefinition.Equal(that1.ApiDefinition) { return false } return true } -func (this *OpenApiValidationModeActive_EnforcementBlock) Equal(that interface{}) bool { +func (this *CreateSpecType_ApiSpecification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationModeActive_EnforcementBlock) + that1, ok := that.(*CreateSpecType_ApiSpecification) if !ok { - that2, ok := that.(OpenApiValidationModeActive_EnforcementBlock) + that2, ok := that.(CreateSpecType_ApiSpecification) if ok { that1 = &that2 } else { @@ -24150,19 +19492,19 @@ func (this *OpenApiValidationModeActive_EnforcementBlock) Equal(that interface{} } else if this == nil { return false } - if !this.EnforcementBlock.Equal(that1.EnforcementBlock) { + if !this.ApiSpecification.Equal(that1.ApiSpecification) { return false } return true } -func (this *OpenApiValidationModeActiveResponse) Equal(that interface{}) bool { +func (this *CreateSpecType_ApiDefinitions) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationModeActiveResponse) + that1, ok := that.(*CreateSpecType_ApiDefinitions) if !ok { - that2, ok := that.(OpenApiValidationModeActiveResponse) + that2, ok := that.(CreateSpecType_ApiDefinitions) if ok { that1 = &that2 } else { @@ -24174,33 +19516,19 @@ func (this *OpenApiValidationModeActiveResponse) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.ValidationEnforcementType == nil { - if this.ValidationEnforcementType != nil { - return false - } - } else if this.ValidationEnforcementType == nil { - return false - } else if !this.ValidationEnforcementType.Equal(that1.ValidationEnforcementType) { - return false - } - if len(this.ResponseValidationProperties) != len(that1.ResponseValidationProperties) { + if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { return false } - for i := range this.ResponseValidationProperties { - if this.ResponseValidationProperties[i] != that1.ResponseValidationProperties[i] { - return false - } - } return true } -func (this *OpenApiValidationModeActiveResponse_EnforcementReport) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationModeActiveResponse_EnforcementReport) + that1, ok := that.(*CreateSpecType_DisableIpReputation) if !ok { - that2, ok := that.(OpenApiValidationModeActiveResponse_EnforcementReport) + that2, ok := that.(CreateSpecType_DisableIpReputation) if ok { that1 = &that2 } else { @@ -24212,19 +19540,19 @@ func (this *OpenApiValidationModeActiveResponse_EnforcementReport) Equal(that in } else if this == nil { return false } - if !this.EnforcementReport.Equal(that1.EnforcementReport) { + if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { return false } return true } -func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) Equal(that interface{}) bool { +func (this *CreateSpecType_EnableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationModeActiveResponse_EnforcementBlock) + that1, ok := that.(*CreateSpecType_EnableIpReputation) if !ok { - that2, ok := that.(OpenApiValidationModeActiveResponse_EnforcementBlock) + that2, ok := that.(CreateSpecType_EnableIpReputation) if ok { that1 = &that2 } else { @@ -24236,19 +19564,19 @@ func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) Equal(that int } else if this == nil { return false } - if !this.EnforcementBlock.Equal(that1.EnforcementBlock) { + if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { return false } return true } -func (this *ValidateApiBySpecRule) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidateApiBySpecRule) + that1, ok := that.(*CreateSpecType_DisableClientSideDefense) if !ok { - that2, ok := that.(ValidateApiBySpecRule) + that2, ok := that.(CreateSpecType_DisableClientSideDefense) if ok { that1 = &that2 } else { @@ -24260,39 +19588,19 @@ func (this *ValidateApiBySpecRule) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.OpenApiValidationRules) != len(that1.OpenApiValidationRules) { - return false - } - for i := range this.OpenApiValidationRules { - if !this.OpenApiValidationRules[i].Equal(that1.OpenApiValidationRules[i]) { - return false - } - } - if !this.FallThroughMode.Equal(that1.FallThroughMode) { - return false - } - if that1.OversizedBodyChoice == nil { - if this.OversizedBodyChoice != nil { - return false - } - } else if this.OversizedBodyChoice == nil { - return false - } else if !this.OversizedBodyChoice.Equal(that1.OversizedBodyChoice) { - return false - } - if !this.Settings.Equal(that1.Settings) { + if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { return false } return true } -func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_ClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidateApiBySpecRule_OversizedBodySkipValidation) + that1, ok := that.(*CreateSpecType_ClientSideDefense) if !ok { - that2, ok := that.(ValidateApiBySpecRule_OversizedBodySkipValidation) + that2, ok := that.(CreateSpecType_ClientSideDefense) if ok { that1 = &that2 } else { @@ -24304,19 +19612,19 @@ func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) Equal(that interf } else if this == nil { return false } - if !this.OversizedBodySkipValidation.Equal(that1.OversizedBodySkipValidation) { + if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { return false } return true } -func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) Equal(that interface{}) bool { +func (this *CreateSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ValidateApiBySpecRule_OversizedBodyFailValidation) + that1, ok := that.(*CreateSpecType_SystemDefaultTimeouts) if !ok { - that2, ok := that.(ValidateApiBySpecRule_OversizedBodyFailValidation) + that2, ok := that.(CreateSpecType_SystemDefaultTimeouts) if ok { that1 = &that2 } else { @@ -24328,19 +19636,19 @@ func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) Equal(that interf } else if this == nil { return false } - if !this.OversizedBodyFailValidation.Equal(that1.OversizedBodyFailValidation) { + if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { return false } return true } -func (this *OpenApiValidationRule) Equal(that interface{}) bool { +func (this *CreateSpecType_SlowDdosMitigation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationRule) + that1, ok := that.(*CreateSpecType_SlowDdosMitigation) if !ok { - that2, ok := that.(OpenApiValidationRule) + that2, ok := that.(CreateSpecType_SlowDdosMitigation) if ok { that1 = &that2 } else { @@ -24352,40 +19660,19 @@ func (this *OpenApiValidationRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if !this.ValidationMode.Equal(that1.ValidationMode) { - return false - } - if that1.DomainChoice == nil { - if this.DomainChoice != nil { - return false - } - } else if this.DomainChoice == nil { - return false - } else if !this.DomainChoice.Equal(that1.DomainChoice) { - return false - } - if that1.ConditionTypeChoice == nil { - if this.ConditionTypeChoice != nil { - return false - } - } else if this.ConditionTypeChoice == nil { - return false - } else if !this.ConditionTypeChoice.Equal(that1.ConditionTypeChoice) { + if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { return false } return true } -func (this *OpenApiValidationRule_AnyDomain) Equal(that interface{}) bool { +func (this *CreateSpecType_DisableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationRule_AnyDomain) + that1, ok := that.(*CreateSpecType_DisableThreatMesh) if !ok { - that2, ok := that.(OpenApiValidationRule_AnyDomain) + that2, ok := that.(CreateSpecType_DisableThreatMesh) if ok { that1 = &that2 } else { @@ -24397,19 +19684,19 @@ func (this *OpenApiValidationRule_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.DisableThreatMesh.Equal(that1.DisableThreatMesh) { return false } return true } -func (this *OpenApiValidationRule_SpecificDomain) Equal(that interface{}) bool { +func (this *CreateSpecType_EnableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationRule_SpecificDomain) + that1, ok := that.(*CreateSpecType_EnableThreatMesh) if !ok { - that2, ok := that.(OpenApiValidationRule_SpecificDomain) + that2, ok := that.(CreateSpecType_EnableThreatMesh) if ok { that1 = &that2 } else { @@ -24421,19 +19708,19 @@ func (this *OpenApiValidationRule_SpecificDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if this.SpecificDomain != that1.SpecificDomain { + if !this.EnableThreatMesh.Equal(that1.EnableThreatMesh) { return false } return true } -func (this *OpenApiValidationRule_ApiEndpoint) Equal(that interface{}) bool { +func (this *CreateSpecType_L7DdosActionDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationRule_ApiEndpoint) + that1, ok := that.(*CreateSpecType_L7DdosActionDefault) if !ok { - that2, ok := that.(OpenApiValidationRule_ApiEndpoint) + that2, ok := that.(CreateSpecType_L7DdosActionDefault) if ok { that1 = &that2 } else { @@ -24445,19 +19732,19 @@ func (this *OpenApiValidationRule_ApiEndpoint) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiEndpoint.Equal(that1.ApiEndpoint) { + if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { return false } return true } -func (this *OpenApiValidationRule_BasePath) Equal(that interface{}) bool { +func (this *CreateSpecType_L7DdosActionBlock) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationRule_BasePath) + that1, ok := that.(*CreateSpecType_L7DdosActionBlock) if !ok { - that2, ok := that.(OpenApiValidationRule_BasePath) + that2, ok := that.(CreateSpecType_L7DdosActionBlock) if ok { that1 = &that2 } else { @@ -24469,19 +19756,19 @@ func (this *OpenApiValidationRule_BasePath) Equal(that interface{}) bool { } else if this == nil { return false } - if this.BasePath != that1.BasePath { + if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { return false } return true } -func (this *OpenApiValidationRule_ApiGroup) Equal(that interface{}) bool { +func (this *CreateSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OpenApiValidationRule_ApiGroup) + that1, ok := that.(*CreateSpecType_L7DdosActionJsChallenge) if !ok { - that2, ok := that.(OpenApiValidationRule_ApiGroup) + that2, ok := that.(CreateSpecType_L7DdosActionJsChallenge) if ok { that1 = &that2 } else { @@ -24493,19 +19780,19 @@ func (this *OpenApiValidationRule_ApiGroup) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ApiGroup != that1.ApiGroup { + if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { return false } return true } -func (this *ApiEndpointDetails) Equal(that interface{}) bool { +func (this *CreateSpecType_L7DdosActionNone) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ApiEndpointDetails) + that1, ok := that.(*CreateSpecType_L7DdosActionNone) if !ok { - that2, ok := that.(ApiEndpointDetails) + that2, ok := that.(CreateSpecType_L7DdosActionNone) if ok { that1 = &that2 } else { @@ -24517,27 +19804,19 @@ func (this *ApiEndpointDetails) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Path != that1.Path { - return false - } - if len(this.Methods) != len(that1.Methods) { + if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { return false } - for i := range this.Methods { - if this.Methods[i] != that1.Methods[i] { - return false - } - } return true } -func (this *OriginServerSubsetRuleListType) Equal(that interface{}) bool { +func (this *ReplaceSpecType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OriginServerSubsetRuleListType) + that1, ok := that.(*ReplaceSpecType) if !ok { - that2, ok := that.(OriginServerSubsetRuleListType) + that2, ok := that.(ReplaceSpecType) if ok { that1 = &that2 } else { @@ -24549,365 +19828,300 @@ func (this *OriginServerSubsetRuleListType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.OriginServerSubsetRules) != len(that1.OriginServerSubsetRules) { + if len(this.Domains) != len(that1.Domains) { return false } - for i := range this.OriginServerSubsetRules { - if !this.OriginServerSubsetRules[i].Equal(that1.OriginServerSubsetRules[i]) { + for i := range this.Domains { + if this.Domains[i] != that1.Domains[i] { return false } } - return true -} -func (this *ClientSideDefenseType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*ClientSideDefenseType) - if !ok { - that2, ok := that.(ClientSideDefenseType) - if ok { - that1 = &that2 - } else { + if that1.LoadbalancerType == nil { + if this.LoadbalancerType != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.LoadbalancerType == nil { return false - } - if !this.Policy.Equal(that1.Policy) { + } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { return false } - return true -} -func (this *ClientSideDefensePolicyType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*ClientSideDefensePolicyType) - if !ok { - that2, ok := that.(ClientSideDefensePolicyType) - if ok { - that1 = &that2 - } else { + if that1.AdvertiseChoice == nil { + if this.AdvertiseChoice != nil { return false } + } else if this.AdvertiseChoice == nil { + return false + } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if len(this.DefaultRoutePools) != len(that1.DefaultRoutePools) { return false } - if that1.JavaScriptChoice == nil { - if this.JavaScriptChoice != nil { + for i := range this.DefaultRoutePools { + if !this.DefaultRoutePools[i].Equal(that1.DefaultRoutePools[i]) { return false } - } else if this.JavaScriptChoice == nil { - return false - } else if !this.JavaScriptChoice.Equal(that1.JavaScriptChoice) { - return false } - return true -} -func (this *ClientSideDefensePolicyType_DisableJsInsert) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*ClientSideDefensePolicyType_DisableJsInsert) - if !ok { - that2, ok := that.(ClientSideDefensePolicyType_DisableJsInsert) - if ok { - that1 = &that2 - } else { + if that1.OriginPoolChoice == nil { + if this.OriginPoolChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.OriginPoolChoice == nil { + return false + } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { return false } - if !this.DisableJsInsert.Equal(that1.DisableJsInsert) { + if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { return false } - return true -} -func (this *ClientSideDefensePolicyType_JsInsertAllPages) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(this.Routes) != len(that1.Routes) { + return false } - - that1, ok := that.(*ClientSideDefensePolicyType_JsInsertAllPages) - if !ok { - that2, ok := that.(ClientSideDefensePolicyType_JsInsertAllPages) - if ok { - that1 = &that2 - } else { + for i := range this.Routes { + if !this.Routes[i].Equal(that1.Routes[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.CorsPolicy.Equal(that1.CorsPolicy) { return false } - if !this.JsInsertAllPages.Equal(that1.JsInsertAllPages) { + if that1.WafChoice == nil { + if this.WafChoice != nil { + return false + } + } else if this.WafChoice == nil { + return false + } else if !this.WafChoice.Equal(that1.WafChoice) { return false } - return true -} -func (this *ClientSideDefensePolicyType_JsInsertAllPagesExcept) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.AddLocation != that1.AddLocation { + return false } - - that1, ok := that.(*ClientSideDefensePolicyType_JsInsertAllPagesExcept) - if !ok { - that2, ok := that.(ClientSideDefensePolicyType_JsInsertAllPagesExcept) - if ok { - that1 = &that2 - } else { + if that1.ChallengeType == nil { + if this.ChallengeType != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.ChallengeType == nil { return false - } - if !this.JsInsertAllPagesExcept.Equal(that1.JsInsertAllPagesExcept) { + } else if !this.ChallengeType.Equal(that1.ChallengeType) { return false } - return true -} -func (this *ClientSideDefensePolicyType_JsInsertionRules) Equal(that interface{}) bool { - if that == nil { - return this == nil + if !this.MoreOption.Equal(that1.MoreOption) { + return false } - - that1, ok := that.(*ClientSideDefensePolicyType_JsInsertionRules) - if !ok { - that2, ok := that.(ClientSideDefensePolicyType_JsInsertionRules) - if ok { - that1 = &that2 - } else { + if that1.UserIdChoice == nil { + if this.UserIdChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.UserIdChoice == nil { return false - } - if !this.JsInsertionRules.Equal(that1.JsInsertionRules) { + } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { return false } - return true -} -func (this *CSDJavaScriptInsertAllWithExceptionsType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CSDJavaScriptInsertAllWithExceptionsType) - if !ok { - that2, ok := that.(CSDJavaScriptInsertAllWithExceptionsType) - if ok { - that1 = &that2 - } else { + if that1.RateLimitChoice == nil { + if this.RateLimitChoice != nil { return false } + } else if this.RateLimitChoice == nil { + return false + } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { return false } - if len(this.ExcludeList) != len(that1.ExcludeList) { + if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { return false } - for i := range this.ExcludeList { - if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { + for i := range this.WafExclusionRules { + if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { return false } } - return true -} -func (this *CSDJavaScriptInsertType) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(this.DataGuardRules) != len(that1.DataGuardRules) { + return false } - - that1, ok := that.(*CSDJavaScriptInsertType) - if !ok { - that2, ok := that.(CSDJavaScriptInsertType) - if ok { - that1 = &that2 - } else { + for i := range this.DataGuardRules { + if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Rules) != len(that1.Rules) { + if len(this.BlockedClients) != len(that1.BlockedClients) { return false } - for i := range this.Rules { - if !this.Rules[i].Equal(that1.Rules[i]) { + for i := range this.BlockedClients { + if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { return false } } - if len(this.ExcludeList) != len(that1.ExcludeList) { + if len(this.TrustedClients) != len(that1.TrustedClients) { return false } - for i := range this.ExcludeList { - if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { + for i := range this.TrustedClients { + if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { return false } } - return true -} -func (this *CSDJavaScriptInsertionRule) Equal(that interface{}) bool { - if that == nil { - return this == nil + if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { + return false } - - that1, ok := that.(*CSDJavaScriptInsertionRule) - if !ok { - that2, ok := that.(CSDJavaScriptInsertionRule) - if ok { - that1 = &that2 - } else { + if len(this.DdosMitigationRules) != len(that1.DdosMitigationRules) { + return false + } + for i := range this.DdosMitigationRules { + if !this.DdosMitigationRules[i].Equal(that1.DdosMitigationRules[i]) { return false } } - if that1 == nil { - return this == nil - } else if this == nil { + if that1.ServicePolicyChoice == nil { + if this.ServicePolicyChoice != nil { + return false + } + } else if this.ServicePolicyChoice == nil { return false - } - if !this.Metadata.Equal(that1.Metadata) { + } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { return false } - if that1.DomainMatcherChoice == nil { - if this.DomainMatcherChoice != nil { + if that1.HashPolicyChoice == nil { + if this.HashPolicyChoice != nil { return false } - } else if this.DomainMatcherChoice == nil { + } else if this.HashPolicyChoice == nil { return false - } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { + } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { return false } - if !this.Path.Equal(that1.Path) { + if that1.TrustClientIpHeadersChoice == nil { + if this.TrustClientIpHeadersChoice != nil { + return false + } + } else if this.TrustClientIpHeadersChoice == nil { + return false + } else if !this.TrustClientIpHeadersChoice.Equal(that1.TrustClientIpHeadersChoice) { return false } - return true -} -func (this *CSDJavaScriptInsertionRule_AnyDomain) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CSDJavaScriptInsertionRule_AnyDomain) - if !ok { - that2, ok := that.(CSDJavaScriptInsertionRule_AnyDomain) - if ok { - that1 = &that2 - } else { + if that1.MlConfigChoice == nil { + if this.MlConfigChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.MlConfigChoice == nil { return false - } - if !this.AnyDomain.Equal(that1.AnyDomain) { + } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { return false } - return true -} -func (this *CSDJavaScriptInsertionRule_Domain) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CSDJavaScriptInsertionRule_Domain) - if !ok { - that2, ok := that.(CSDJavaScriptInsertionRule_Domain) - if ok { - that1 = &that2 - } else { + if that1.MaliciousUserDetectionChoice == nil { + if this.MaliciousUserDetectionChoice != nil { return false } - } - if that1 == nil { - return this == nil - } else if this == nil { + } else if this.MaliciousUserDetectionChoice == nil { return false - } - if !this.Domain.Equal(that1.Domain) { + } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { return false } - return true -} -func (this *BotDefenseAdvancedPolicyType) Equal(that interface{}) bool { - if that == nil { - return this == nil + if that1.ApiDiscoveryChoice == nil { + if this.ApiDiscoveryChoice != nil { + return false + } + } else if this.ApiDiscoveryChoice == nil { + return false + } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { + return false } - - that1, ok := that.(*BotDefenseAdvancedPolicyType) - if !ok { - that2, ok := that.(BotDefenseAdvancedPolicyType) - if ok { - that1 = &that2 - } else { + if that1.BotDefenseChoice == nil { + if this.BotDefenseChoice != nil { return false } + } else if this.BotDefenseChoice == nil { + return false + } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { + return false } - if that1 == nil { - return this == nil - } else if this == nil { + if that1.ApiDefinitionChoice == nil { + if this.ApiDefinitionChoice != nil { + return false + } + } else if this.ApiDefinitionChoice == nil { + return false + } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { return false } - if len(this.ProtectedAppEndpoints) != len(that1.ProtectedAppEndpoints) { + if that1.IpReputationChoice == nil { + if this.IpReputationChoice != nil { + return false + } + } else if this.IpReputationChoice == nil { + return false + } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { return false } - for i := range this.ProtectedAppEndpoints { - if !this.ProtectedAppEndpoints[i].Equal(that1.ProtectedAppEndpoints[i]) { + if that1.ClientSideDefenseChoice == nil { + if this.ClientSideDefenseChoice != nil { return false } + } else if this.ClientSideDefenseChoice == nil { + return false + } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { + return false } - if this.JsDownloadPath != that1.JsDownloadPath { + if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { return false } - if that1.MobileSdkChoice == nil { - if this.MobileSdkChoice != nil { + if len(this.GraphqlRules) != len(that1.GraphqlRules) { + return false + } + for i := range this.GraphqlRules { + if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { return false } - } else if this.MobileSdkChoice == nil { + } + if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { return false - } else if !this.MobileSdkChoice.Equal(that1.MobileSdkChoice) { + } + for i := range this.ProtectedCookies { + if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { + return false + } + } + if that1.SlowDdosMitigationChoice == nil { + if this.SlowDdosMitigationChoice != nil { + return false + } + } else if this.SlowDdosMitigationChoice == nil { + return false + } else if !this.SlowDdosMitigationChoice.Equal(that1.SlowDdosMitigationChoice) { + return false + } + if !this.JwtValidation.Equal(that1.JwtValidation) { + return false + } + if that1.ThreatMeshChoice == nil { + if this.ThreatMeshChoice != nil { + return false + } + } else if this.ThreatMeshChoice == nil { + return false + } else if !this.ThreatMeshChoice.Equal(that1.ThreatMeshChoice) { + return false + } + if that1.L7DdosAutoMitigationAction == nil { + if this.L7DdosAutoMitigationAction != nil { + return false + } + } else if this.L7DdosAutoMitigationAction == nil { + return false + } else if !this.L7DdosAutoMitigationAction.Equal(that1.L7DdosAutoMitigationAction) { return false } return true } -func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) Equal(that interface{}) bool { +func (this *ReplaceSpecType_Http) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BotDefenseAdvancedPolicyType_DisableMobileSdk) + that1, ok := that.(*ReplaceSpecType_Http) if !ok { - that2, ok := that.(BotDefenseAdvancedPolicyType_DisableMobileSdk) + that2, ok := that.(ReplaceSpecType_Http) if ok { that1 = &that2 } else { @@ -24919,19 +20133,19 @@ func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) Equal(that interface{ } else if this == nil { return false } - if !this.DisableMobileSdk.Equal(that1.DisableMobileSdk) { + if !this.Http.Equal(that1.Http) { return false } return true } -func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) Equal(that interface{}) bool { +func (this *ReplaceSpecType_HttpsAutoCert) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BotDefenseAdvancedPolicyType_MobileSdkConfig) + that1, ok := that.(*ReplaceSpecType_HttpsAutoCert) if !ok { - that2, ok := that.(BotDefenseAdvancedPolicyType_MobileSdkConfig) + that2, ok := that.(ReplaceSpecType_HttpsAutoCert) if ok { that1 = &that2 } else { @@ -24943,19 +20157,19 @@ func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) Equal(that interface{} } else if this == nil { return false } - if !this.MobileSdkConfig.Equal(that1.MobileSdkConfig) { + if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { return false } return true } -func (this *BotAdvancedMobileSDKConfigType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_Https) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BotAdvancedMobileSDKConfigType) + that1, ok := that.(*ReplaceSpecType_Https) if !ok { - that2, ok := that.(BotAdvancedMobileSDKConfigType) + that2, ok := that.(ReplaceSpecType_Https) if ok { that1 = &that2 } else { @@ -24967,19 +20181,19 @@ func (this *BotAdvancedMobileSDKConfigType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.MobileIdentifier.Equal(that1.MobileIdentifier) { + if !this.Https.Equal(that1.Https) { return false } return true } -func (this *ProtectedAppEndpointType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DoNotAdvertise) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType) + that1, ok := that.(*ReplaceSpecType_DoNotAdvertise) if !ok { - that2, ok := that.(ProtectedAppEndpointType) + that2, ok := that.(ReplaceSpecType_DoNotAdvertise) if ok { that1 = &that2 } else { @@ -24991,73 +20205,67 @@ func (this *ProtectedAppEndpointType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if that1.DomainMatcherChoice == nil { - if this.DomainMatcherChoice != nil { - return false - } - } else if this.DomainMatcherChoice == nil { - return false - } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { - return false - } - if !this.Path.Equal(that1.Path) { + if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { return false } - if len(this.Query) != len(that1.Query) { - return false + return true +} +func (this *ReplaceSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { + if that == nil { + return this == nil } - for i := range this.Query { - if !this.Query[i].Equal(that1.Query[i]) { + + that1, ok := that.(*ReplaceSpecType_AdvertiseOnPublicDefaultVip) + if !ok { + that2, ok := that.(ReplaceSpecType_AdvertiseOnPublicDefaultVip) + if ok { + that1 = &that2 + } else { return false } } - if len(this.RequestBody) != len(that1.RequestBody) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - for i := range this.RequestBody { - if !this.RequestBody[i].Equal(that1.RequestBody[i]) { - return false - } - } - if len(this.HttpMethods) != len(that1.HttpMethods) { + if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { return false } - for i := range this.HttpMethods { - if this.HttpMethods[i] != that1.HttpMethods[i] { - return false - } + return true +} +func (this *ReplaceSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if that1.AppTrafficTypeChoice == nil { - if this.AppTrafficTypeChoice != nil { + + that1, ok := that.(*ReplaceSpecType_AdvertiseOnPublic) + if !ok { + that2, ok := that.(ReplaceSpecType_AdvertiseOnPublic) + if ok { + that1 = &that2 + } else { return false } - } else if this.AppTrafficTypeChoice == nil { - return false - } else if !this.AppTrafficTypeChoice.Equal(that1.AppTrafficTypeChoice) { - return false } - if that1.FlowLabelChoice == nil { - if this.FlowLabelChoice != nil { - return false - } - } else if this.FlowLabelChoice == nil { + if that1 == nil { + return this == nil + } else if this == nil { return false - } else if !this.FlowLabelChoice.Equal(that1.FlowLabelChoice) { + } + if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { return false } return true } -func (this *ProtectedAppEndpointType_AnyDomain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_AdvertiseCustom) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_AnyDomain) + that1, ok := that.(*ReplaceSpecType_AdvertiseCustom) if !ok { - that2, ok := that.(ProtectedAppEndpointType_AnyDomain) + that2, ok := that.(ReplaceSpecType_AdvertiseCustom) if ok { that1 = &that2 } else { @@ -25069,19 +20277,19 @@ func (this *ProtectedAppEndpointType_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { return false } return true } -func (this *ProtectedAppEndpointType_Domain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DefaultPool) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_Domain) + that1, ok := that.(*ReplaceSpecType_DefaultPool) if !ok { - that2, ok := that.(ProtectedAppEndpointType_Domain) + that2, ok := that.(ReplaceSpecType_DefaultPool) if ok { that1 = &that2 } else { @@ -25093,19 +20301,19 @@ func (this *ProtectedAppEndpointType_Domain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Domain.Equal(that1.Domain) { + if !this.DefaultPool.Equal(that1.DefaultPool) { return false } return true } -func (this *ProtectedAppEndpointType_WebClient) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DefaultPoolList) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_WebClient) + that1, ok := that.(*ReplaceSpecType_DefaultPoolList) if !ok { - that2, ok := that.(ProtectedAppEndpointType_WebClient) + that2, ok := that.(ReplaceSpecType_DefaultPoolList) if ok { that1 = &that2 } else { @@ -25117,19 +20325,19 @@ func (this *ProtectedAppEndpointType_WebClient) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.WebClient.Equal(that1.WebClient) { + if !this.DefaultPoolList.Equal(that1.DefaultPoolList) { return false } return true } -func (this *ProtectedAppEndpointType_MobileClient) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableWaf) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_MobileClient) + that1, ok := that.(*ReplaceSpecType_DisableWaf) if !ok { - that2, ok := that.(ProtectedAppEndpointType_MobileClient) + that2, ok := that.(ReplaceSpecType_DisableWaf) if ok { that1 = &that2 } else { @@ -25141,19 +20349,19 @@ func (this *ProtectedAppEndpointType_MobileClient) Equal(that interface{}) bool } else if this == nil { return false } - if !this.MobileClient.Equal(that1.MobileClient) { + if !this.DisableWaf.Equal(that1.DisableWaf) { return false } return true } -func (this *ProtectedAppEndpointType_WebMobileClient) Equal(that interface{}) bool { +func (this *ReplaceSpecType_AppFirewall) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_WebMobileClient) + that1, ok := that.(*ReplaceSpecType_AppFirewall) if !ok { - that2, ok := that.(ProtectedAppEndpointType_WebMobileClient) + that2, ok := that.(ReplaceSpecType_AppFirewall) if ok { that1 = &that2 } else { @@ -25165,19 +20373,19 @@ func (this *ProtectedAppEndpointType_WebMobileClient) Equal(that interface{}) bo } else if this == nil { return false } - if !this.WebMobileClient.Equal(that1.WebMobileClient) { + if !this.AppFirewall.Equal(that1.AppFirewall) { return false } return true } -func (this *ProtectedAppEndpointType_UndefinedFlowLabel) Equal(that interface{}) bool { +func (this *ReplaceSpecType_NoChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_UndefinedFlowLabel) + that1, ok := that.(*ReplaceSpecType_NoChallenge) if !ok { - that2, ok := that.(ProtectedAppEndpointType_UndefinedFlowLabel) + that2, ok := that.(ReplaceSpecType_NoChallenge) if ok { that1 = &that2 } else { @@ -25189,19 +20397,19 @@ func (this *ProtectedAppEndpointType_UndefinedFlowLabel) Equal(that interface{}) } else if this == nil { return false } - if !this.UndefinedFlowLabel.Equal(that1.UndefinedFlowLabel) { + if !this.NoChallenge.Equal(that1.NoChallenge) { return false } return true } -func (this *ProtectedAppEndpointType_FlowLabel) Equal(that interface{}) bool { +func (this *ReplaceSpecType_EnableChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ProtectedAppEndpointType_FlowLabel) + that1, ok := that.(*ReplaceSpecType_EnableChallenge) if !ok { - that2, ok := that.(ProtectedAppEndpointType_FlowLabel) + that2, ok := that.(ReplaceSpecType_EnableChallenge) if ok { that1 = &that2 } else { @@ -25213,19 +20421,19 @@ func (this *ProtectedAppEndpointType_FlowLabel) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.FlowLabel.Equal(that1.FlowLabel) { + if !this.EnableChallenge.Equal(that1.EnableChallenge) { return false } return true } -func (this *RequestBody) Equal(that interface{}) bool { +func (this *ReplaceSpecType_JsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RequestBody) + that1, ok := that.(*ReplaceSpecType_JsChallenge) if !ok { - that2, ok := that.(RequestBody) + that2, ok := that.(ReplaceSpecType_JsChallenge) if ok { that1 = &that2 } else { @@ -25237,28 +20445,19 @@ func (this *RequestBody) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { - return false - } - if that1.ValueType == nil { - if this.ValueType != nil { - return false - } - } else if this.ValueType == nil { - return false - } else if !this.ValueType.Equal(that1.ValueType) { + if !this.JsChallenge.Equal(that1.JsChallenge) { return false } return true } -func (this *RequestBody_ExactValue) Equal(that interface{}) bool { +func (this *ReplaceSpecType_CaptchaChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RequestBody_ExactValue) + that1, ok := that.(*ReplaceSpecType_CaptchaChallenge) if !ok { - that2, ok := that.(RequestBody_ExactValue) + that2, ok := that.(ReplaceSpecType_CaptchaChallenge) if ok { that1 = &that2 } else { @@ -25270,19 +20469,19 @@ func (this *RequestBody_ExactValue) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ExactValue != that1.ExactValue { + if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { return false } return true } -func (this *RequestBody_RegexValue) Equal(that interface{}) bool { +func (this *ReplaceSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*RequestBody_RegexValue) + that1, ok := that.(*ReplaceSpecType_PolicyBasedChallenge) if !ok { - that2, ok := that.(RequestBody_RegexValue) + that2, ok := that.(ReplaceSpecType_PolicyBasedChallenge) if ok { that1 = &that2 } else { @@ -25294,19 +20493,19 @@ func (this *RequestBody_RegexValue) Equal(that interface{}) bool { } else if this == nil { return false } - if this.RegexValue != that1.RegexValue { + if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { return false } return true } -func (this *Query) Equal(that interface{}) bool { +func (this *ReplaceSpecType_UserIdClientIp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Query) + that1, ok := that.(*ReplaceSpecType_UserIdClientIp) if !ok { - that2, ok := that.(Query) + that2, ok := that.(ReplaceSpecType_UserIdClientIp) if ok { that1 = &that2 } else { @@ -25318,28 +20517,19 @@ func (this *Query) Equal(that interface{}) bool { } else if this == nil { return false } - if this.Name != that1.Name { - return false - } - if that1.ValueType == nil { - if this.ValueType != nil { - return false - } - } else if this.ValueType == nil { - return false - } else if !this.ValueType.Equal(that1.ValueType) { + if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { return false } return true } -func (this *Query_ExactValue) Equal(that interface{}) bool { +func (this *ReplaceSpecType_UserIdentification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Query_ExactValue) + that1, ok := that.(*ReplaceSpecType_UserIdentification) if !ok { - that2, ok := that.(Query_ExactValue) + that2, ok := that.(ReplaceSpecType_UserIdentification) if ok { that1 = &that2 } else { @@ -25351,19 +20541,19 @@ func (this *Query_ExactValue) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ExactValue != that1.ExactValue { + if !this.UserIdentification.Equal(that1.UserIdentification) { return false } return true } -func (this *Query_RegexValue) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Query_RegexValue) + that1, ok := that.(*ReplaceSpecType_DisableRateLimit) if !ok { - that2, ok := that.(Query_RegexValue) + that2, ok := that.(ReplaceSpecType_DisableRateLimit) if ok { that1 = &that2 } else { @@ -25375,19 +20565,19 @@ func (this *Query_RegexValue) Equal(that interface{}) bool { } else if this == nil { return false } - if this.RegexValue != that1.RegexValue { + if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { return false } return true } -func (this *Query_CheckPresence) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ApiRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*Query_CheckPresence) + that1, ok := that.(*ReplaceSpecType_ApiRateLimit) if !ok { - that2, ok := that.(Query_CheckPresence) + that2, ok := that.(ReplaceSpecType_ApiRateLimit) if ok { that1 = &that2 } else { @@ -25399,19 +20589,19 @@ func (this *Query_CheckPresence) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.CheckPresence.Equal(that1.CheckPresence) { + if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { return false } return true } -func (this *ShapeBotDefenseType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_RateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefenseType) + that1, ok := that.(*ReplaceSpecType_RateLimit) if !ok { - that2, ok := that.(ShapeBotDefenseType) + that2, ok := that.(ReplaceSpecType_RateLimit) if ok { that1 = &that2 } else { @@ -25423,34 +20613,19 @@ func (this *ShapeBotDefenseType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.RegionalEndpoint != that1.RegionalEndpoint { - return false - } - if !this.Policy.Equal(that1.Policy) { - return false - } - if this.Timeout != that1.Timeout { - return false - } - if that1.CorsSupportChoice == nil { - if this.CorsSupportChoice != nil { - return false - } - } else if this.CorsSupportChoice == nil { - return false - } else if !this.CorsSupportChoice.Equal(that1.CorsSupportChoice) { + if !this.RateLimit.Equal(that1.RateLimit) { return false } return true } -func (this *ShapeBotDefenseType_EnableCorsSupport) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefenseType_EnableCorsSupport) + that1, ok := that.(*ReplaceSpecType_ServicePoliciesFromNamespace) if !ok { - that2, ok := that.(ShapeBotDefenseType_EnableCorsSupport) + that2, ok := that.(ReplaceSpecType_ServicePoliciesFromNamespace) if ok { that1 = &that2 } else { @@ -25462,19 +20637,19 @@ func (this *ShapeBotDefenseType_EnableCorsSupport) Equal(that interface{}) bool } else if this == nil { return false } - if !this.EnableCorsSupport.Equal(that1.EnableCorsSupport) { + if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { return false } return true } -func (this *ShapeBotDefenseType_DisableCorsSupport) Equal(that interface{}) bool { +func (this *ReplaceSpecType_NoServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefenseType_DisableCorsSupport) + that1, ok := that.(*ReplaceSpecType_NoServicePolicies) if !ok { - that2, ok := that.(ShapeBotDefenseType_DisableCorsSupport) + that2, ok := that.(ReplaceSpecType_NoServicePolicies) if ok { that1 = &that2 } else { @@ -25486,19 +20661,19 @@ func (this *ShapeBotDefenseType_DisableCorsSupport) Equal(that interface{}) bool } else if this == nil { return false } - if !this.DisableCorsSupport.Equal(that1.DisableCorsSupport) { + if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { return false } return true } -func (this *BotDefenseAdvancedType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ActiveServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*BotDefenseAdvancedType) + that1, ok := that.(*ReplaceSpecType_ActiveServicePolicies) if !ok { - that2, ok := that.(BotDefenseAdvancedType) + that2, ok := that.(ReplaceSpecType_ActiveServicePolicies) if ok { that1 = &that2 } else { @@ -25510,25 +20685,19 @@ func (this *BotDefenseAdvancedType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Web.Equal(that1.Web) { - return false - } - if !this.Mobile.Equal(that1.Mobile) { - return false - } - if !this.Policy.Equal(that1.Policy) { + if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { return false } return true } -func (this *ShapeBotDefensePolicyType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_RoundRobin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType) + that1, ok := that.(*ReplaceSpecType_RoundRobin) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType) + that2, ok := that.(ReplaceSpecType_RoundRobin) if ok { that1 = &that2 } else { @@ -25540,48 +20709,43 @@ func (this *ShapeBotDefensePolicyType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.ProtectedAppEndpoints) != len(that1.ProtectedAppEndpoints) { + if !this.RoundRobin.Equal(that1.RoundRobin) { return false } - for i := range this.ProtectedAppEndpoints { - if !this.ProtectedAppEndpoints[i].Equal(that1.ProtectedAppEndpoints[i]) { - return false - } + return true +} +func (this *ReplaceSpecType_LeastActive) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if that1.JavaScriptChoice == nil { - if this.JavaScriptChoice != nil { + + that1, ok := that.(*ReplaceSpecType_LeastActive) + if !ok { + that2, ok := that.(ReplaceSpecType_LeastActive) + if ok { + that1 = &that2 + } else { return false } - } else if this.JavaScriptChoice == nil { - return false - } else if !this.JavaScriptChoice.Equal(that1.JavaScriptChoice) { - return false - } - if this.JsDownloadPath != that1.JsDownloadPath { - return false } - if this.JavascriptMode != that1.JavascriptMode { + if that1 == nil { + return this == nil + } else if this == nil { return false } - if that1.MobileSdkChoice == nil { - if this.MobileSdkChoice != nil { - return false - } - } else if this.MobileSdkChoice == nil { - return false - } else if !this.MobileSdkChoice.Equal(that1.MobileSdkChoice) { + if !this.LeastActive.Equal(that1.LeastActive) { return false } return true } -func (this *ShapeBotDefensePolicyType_DisableJsInsert) Equal(that interface{}) bool { +func (this *ReplaceSpecType_Random) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType_DisableJsInsert) + that1, ok := that.(*ReplaceSpecType_Random) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType_DisableJsInsert) + that2, ok := that.(ReplaceSpecType_Random) if ok { that1 = &that2 } else { @@ -25593,19 +20757,19 @@ func (this *ShapeBotDefensePolicyType_DisableJsInsert) Equal(that interface{}) b } else if this == nil { return false } - if !this.DisableJsInsert.Equal(that1.DisableJsInsert) { + if !this.Random.Equal(that1.Random) { return false } return true } -func (this *ShapeBotDefensePolicyType_JsInsertAllPages) Equal(that interface{}) bool { +func (this *ReplaceSpecType_SourceIpStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType_JsInsertAllPages) + that1, ok := that.(*ReplaceSpecType_SourceIpStickiness) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType_JsInsertAllPages) + that2, ok := that.(ReplaceSpecType_SourceIpStickiness) if ok { that1 = &that2 } else { @@ -25617,19 +20781,19 @@ func (this *ShapeBotDefensePolicyType_JsInsertAllPages) Equal(that interface{}) } else if this == nil { return false } - if !this.JsInsertAllPages.Equal(that1.JsInsertAllPages) { + if !this.SourceIpStickiness.Equal(that1.SourceIpStickiness) { return false } return true } -func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) Equal(that interface{}) bool { +func (this *ReplaceSpecType_CookieStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType_JsInsertAllPagesExcept) + that1, ok := that.(*ReplaceSpecType_CookieStickiness) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType_JsInsertAllPagesExcept) + that2, ok := that.(ReplaceSpecType_CookieStickiness) if ok { that1 = &that2 } else { @@ -25641,19 +20805,19 @@ func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) Equal(that interfa } else if this == nil { return false } - if !this.JsInsertAllPagesExcept.Equal(that1.JsInsertAllPagesExcept) { + if !this.CookieStickiness.Equal(that1.CookieStickiness) { return false } return true } -func (this *ShapeBotDefensePolicyType_JsInsertionRules) Equal(that interface{}) bool { +func (this *ReplaceSpecType_RingHash) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType_JsInsertionRules) + that1, ok := that.(*ReplaceSpecType_RingHash) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType_JsInsertionRules) + that2, ok := that.(ReplaceSpecType_RingHash) if ok { that1 = &that2 } else { @@ -25665,19 +20829,19 @@ func (this *ShapeBotDefensePolicyType_JsInsertionRules) Equal(that interface{}) } else if this == nil { return false } - if !this.JsInsertionRules.Equal(that1.JsInsertionRules) { + if !this.RingHash.Equal(that1.RingHash) { return false } return true } -func (this *ShapeBotDefensePolicyType_DisableMobileSdk) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType_DisableMobileSdk) + that1, ok := that.(*ReplaceSpecType_DisableTrustClientIpHeaders) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType_DisableMobileSdk) + that2, ok := that.(ReplaceSpecType_DisableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -25689,19 +20853,19 @@ func (this *ShapeBotDefensePolicyType_DisableMobileSdk) Equal(that interface{}) } else if this == nil { return false } - if !this.DisableMobileSdk.Equal(that1.DisableMobileSdk) { + if !this.DisableTrustClientIpHeaders.Equal(that1.DisableTrustClientIpHeaders) { return false } return true } -func (this *ShapeBotDefensePolicyType_MobileSdkConfig) Equal(that interface{}) bool { +func (this *ReplaceSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeBotDefensePolicyType_MobileSdkConfig) + that1, ok := that.(*ReplaceSpecType_EnableTrustClientIpHeaders) if !ok { - that2, ok := that.(ShapeBotDefensePolicyType_MobileSdkConfig) + that2, ok := that.(ReplaceSpecType_EnableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -25713,19 +20877,19 @@ func (this *ShapeBotDefensePolicyType_MobileSdkConfig) Equal(that interface{}) b } else if this == nil { return false } - if !this.MobileSdkConfig.Equal(that1.MobileSdkConfig) { + if !this.EnableTrustClientIpHeaders.Equal(that1.EnableTrustClientIpHeaders) { return false } return true } -func (this *MobileTrafficIdentifierType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_SingleLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*MobileTrafficIdentifierType) + that1, ok := that.(*ReplaceSpecType_SingleLbApp) if !ok { - that2, ok := that.(MobileTrafficIdentifierType) + that2, ok := that.(ReplaceSpecType_SingleLbApp) if ok { that1 = &that2 } else { @@ -25737,24 +20901,19 @@ func (this *MobileTrafficIdentifierType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Headers) != len(that1.Headers) { + if !this.SingleLbApp.Equal(that1.SingleLbApp) { return false } - for i := range this.Headers { - if !this.Headers[i].Equal(that1.Headers[i]) { - return false - } - } return true } -func (this *MobileSDKConfigType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_MultiLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*MobileSDKConfigType) + that1, ok := that.(*ReplaceSpecType_MultiLbApp) if !ok { - that2, ok := that.(MobileSDKConfigType) + that2, ok := that.(ReplaceSpecType_MultiLbApp) if ok { that1 = &that2 } else { @@ -25766,22 +20925,19 @@ func (this *MobileSDKConfigType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.ReloadHeaderName != that1.ReloadHeaderName { - return false - } - if !this.MobileIdentifier.Equal(that1.MobileIdentifier) { + if !this.MultiLbApp.Equal(that1.MultiLbApp) { return false } return true } -func (this *AppEndpointType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType) + that1, ok := that.(*ReplaceSpecType_EnableMaliciousUserDetection) if !ok { - that2, ok := that.(AppEndpointType) + that2, ok := that.(ReplaceSpecType_EnableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -25793,72 +20949,67 @@ func (this *AppEndpointType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { + if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { return false } - if len(this.HttpMethods) != len(that1.HttpMethods) { - return false + return true +} +func (this *ReplaceSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { + if that == nil { + return this == nil } - for i := range this.HttpMethods { - if this.HttpMethods[i] != that1.HttpMethods[i] { + + that1, ok := that.(*ReplaceSpecType_DisableMaliciousUserDetection) + if !ok { + that2, ok := that.(ReplaceSpecType_DisableMaliciousUserDetection) + if ok { + that1 = &that2 + } else { return false } } - if this.Protocol != that1.Protocol { + if that1 == nil { + return this == nil + } else if this == nil { return false } - if !this.Path.Equal(that1.Path) { + if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { return false } - if that1.DomainMatcherChoice == nil { - if this.DomainMatcherChoice != nil { - return false - } - } else if this.DomainMatcherChoice == nil { - return false - } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { - return false + return true +} +func (this *ReplaceSpecType_EnableApiDiscovery) Equal(that interface{}) bool { + if that == nil { + return this == nil } - if that1.AppTrafficTypeChoice == nil { - if this.AppTrafficTypeChoice != nil { + + that1, ok := that.(*ReplaceSpecType_EnableApiDiscovery) + if !ok { + that2, ok := that.(ReplaceSpecType_EnableApiDiscovery) + if ok { + that1 = &that2 + } else { return false } - } else if this.AppTrafficTypeChoice == nil { - return false - } else if !this.AppTrafficTypeChoice.Equal(that1.AppTrafficTypeChoice) { - return false - } - if !this.Mitigation.Equal(that1.Mitigation) { - return false } - if that1.FlowLabelChoice == nil { - if this.FlowLabelChoice != nil { - return false - } - } else if this.FlowLabelChoice == nil { - return false - } else if !this.FlowLabelChoice.Equal(that1.FlowLabelChoice) { + if that1 == nil { + return this == nil + } else if this == nil { return false } - if that1.GoodbotChoice == nil { - if this.GoodbotChoice != nil { - return false - } - } else if this.GoodbotChoice == nil { - return false - } else if !this.GoodbotChoice.Equal(that1.GoodbotChoice) { + if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { return false } return true } -func (this *AppEndpointType_AnyDomain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_AnyDomain) + that1, ok := that.(*ReplaceSpecType_DisableApiDiscovery) if !ok { - that2, ok := that.(AppEndpointType_AnyDomain) + that2, ok := that.(ReplaceSpecType_DisableApiDiscovery) if ok { that1 = &that2 } else { @@ -25870,19 +21021,19 @@ func (this *AppEndpointType_AnyDomain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { return false } return true } -func (this *AppEndpointType_Domain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableBotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_Domain) + that1, ok := that.(*ReplaceSpecType_DisableBotDefense) if !ok { - that2, ok := that.(AppEndpointType_Domain) + that2, ok := that.(ReplaceSpecType_DisableBotDefense) if ok { that1 = &that2 } else { @@ -25894,19 +21045,19 @@ func (this *AppEndpointType_Domain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Domain.Equal(that1.Domain) { + if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { return false } return true } -func (this *AppEndpointType_Web) Equal(that interface{}) bool { +func (this *ReplaceSpecType_BotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_Web) + that1, ok := that.(*ReplaceSpecType_BotDefense) if !ok { - that2, ok := that.(AppEndpointType_Web) + that2, ok := that.(ReplaceSpecType_BotDefense) if ok { that1 = &that2 } else { @@ -25918,19 +21069,19 @@ func (this *AppEndpointType_Web) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Web.Equal(that1.Web) { + if !this.BotDefense.Equal(that1.BotDefense) { return false } return true } -func (this *AppEndpointType_Mobile) Equal(that interface{}) bool { +func (this *ReplaceSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_Mobile) + that1, ok := that.(*ReplaceSpecType_BotDefenseAdvanced) if !ok { - that2, ok := that.(AppEndpointType_Mobile) + that2, ok := that.(ReplaceSpecType_BotDefenseAdvanced) if ok { that1 = &that2 } else { @@ -25942,19 +21093,19 @@ func (this *AppEndpointType_Mobile) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Mobile.Equal(that1.Mobile) { + if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { return false } return true } -func (this *AppEndpointType_WebMobile) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_WebMobile) + that1, ok := that.(*ReplaceSpecType_DisableApiDefinition) if !ok { - that2, ok := that.(AppEndpointType_WebMobile) + that2, ok := that.(ReplaceSpecType_DisableApiDefinition) if ok { that1 = &that2 } else { @@ -25966,19 +21117,19 @@ func (this *AppEndpointType_WebMobile) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.WebMobile.Equal(that1.WebMobile) { + if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { return false } return true } -func (this *AppEndpointType_UndefinedFlowLabel) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_UndefinedFlowLabel) + that1, ok := that.(*ReplaceSpecType_ApiDefinition) if !ok { - that2, ok := that.(AppEndpointType_UndefinedFlowLabel) + that2, ok := that.(ReplaceSpecType_ApiDefinition) if ok { that1 = &that2 } else { @@ -25990,19 +21141,19 @@ func (this *AppEndpointType_UndefinedFlowLabel) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.UndefinedFlowLabel.Equal(that1.UndefinedFlowLabel) { + if !this.ApiDefinition.Equal(that1.ApiDefinition) { return false } return true } -func (this *AppEndpointType_FlowLabel) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ApiSpecification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_FlowLabel) + that1, ok := that.(*ReplaceSpecType_ApiSpecification) if !ok { - that2, ok := that.(AppEndpointType_FlowLabel) + that2, ok := that.(ReplaceSpecType_ApiSpecification) if ok { that1 = &that2 } else { @@ -26014,19 +21165,19 @@ func (this *AppEndpointType_FlowLabel) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.FlowLabel.Equal(that1.FlowLabel) { + if !this.ApiSpecification.Equal(that1.ApiSpecification) { return false } return true } -func (this *AppEndpointType_AllowGoodBots) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ApiDefinitions) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_AllowGoodBots) + that1, ok := that.(*ReplaceSpecType_ApiDefinitions) if !ok { - that2, ok := that.(AppEndpointType_AllowGoodBots) + that2, ok := that.(ReplaceSpecType_ApiDefinitions) if ok { that1 = &that2 } else { @@ -26038,19 +21189,19 @@ func (this *AppEndpointType_AllowGoodBots) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.AllowGoodBots.Equal(that1.AllowGoodBots) { + if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { return false } return true } -func (this *AppEndpointType_MitigateGoodBots) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AppEndpointType_MitigateGoodBots) + that1, ok := that.(*ReplaceSpecType_DisableIpReputation) if !ok { - that2, ok := that.(AppEndpointType_MitigateGoodBots) + that2, ok := that.(ReplaceSpecType_DisableIpReputation) if ok { that1 = &that2 } else { @@ -26062,19 +21213,19 @@ func (this *AppEndpointType_MitigateGoodBots) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.MitigateGoodBots.Equal(that1.MitigateGoodBots) { + if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { return false } return true } -func (this *WebMobileTrafficType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_EnableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*WebMobileTrafficType) + that1, ok := that.(*ReplaceSpecType_EnableIpReputation) if !ok { - that2, ok := that.(WebMobileTrafficType) + that2, ok := that.(ReplaceSpecType_EnableIpReputation) if ok { that1 = &that2 } else { @@ -26086,30 +21237,19 @@ func (this *WebMobileTrafficType) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Header.Equal(that1.Header) { - return false - } - if len(this.Headers) != len(that1.Headers) { - return false - } - for i := range this.Headers { - if !this.Headers[i].Equal(that1.Headers[i]) { - return false - } - } - if this.MobileIdentifier != that1.MobileIdentifier { + if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { return false } return true } -func (this *ShapeJavaScriptInsertType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptInsertType) + that1, ok := that.(*ReplaceSpecType_DisableClientSideDefense) if !ok { - that2, ok := that.(ShapeJavaScriptInsertType) + that2, ok := that.(ReplaceSpecType_DisableClientSideDefense) if ok { that1 = &that2 } else { @@ -26121,32 +21261,19 @@ func (this *ShapeJavaScriptInsertType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.Rules) != len(that1.Rules) { - return false - } - for i := range this.Rules { - if !this.Rules[i].Equal(that1.Rules[i]) { - return false - } - } - if len(this.ExcludeList) != len(that1.ExcludeList) { + if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { return false } - for i := range this.ExcludeList { - if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { - return false - } - } return true } -func (this *ShapeJavaScriptInsertAllWithExceptionsType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_ClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptInsertAllWithExceptionsType) + that1, ok := that.(*ReplaceSpecType_ClientSideDefense) if !ok { - that2, ok := that.(ShapeJavaScriptInsertAllWithExceptionsType) + that2, ok := that.(ReplaceSpecType_ClientSideDefense) if ok { that1 = &that2 } else { @@ -26158,27 +21285,19 @@ func (this *ShapeJavaScriptInsertAllWithExceptionsType) Equal(that interface{}) } else if this == nil { return false } - if this.JavascriptLocation != that1.JavascriptLocation { - return false - } - if len(this.ExcludeList) != len(that1.ExcludeList) { + if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { return false } - for i := range this.ExcludeList { - if !this.ExcludeList[i].Equal(that1.ExcludeList[i]) { - return false - } - } return true } -func (this *ShapeJavaScriptInsertAllType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptInsertAllType) + that1, ok := that.(*ReplaceSpecType_SystemDefaultTimeouts) if !ok { - that2, ok := that.(ShapeJavaScriptInsertAllType) + that2, ok := that.(ReplaceSpecType_SystemDefaultTimeouts) if ok { that1 = &that2 } else { @@ -26190,19 +21309,19 @@ func (this *ShapeJavaScriptInsertAllType) Equal(that interface{}) bool { } else if this == nil { return false } - if this.JavascriptLocation != that1.JavascriptLocation { + if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { return false } return true } -func (this *ShapeJavaScriptInsertionRule) Equal(that interface{}) bool { +func (this *ReplaceSpecType_SlowDdosMitigation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptInsertionRule) + that1, ok := that.(*ReplaceSpecType_SlowDdosMitigation) if !ok { - that2, ok := that.(ShapeJavaScriptInsertionRule) + that2, ok := that.(ReplaceSpecType_SlowDdosMitigation) if ok { that1 = &that2 } else { @@ -26214,34 +21333,19 @@ func (this *ShapeJavaScriptInsertionRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if that1.DomainMatcherChoice == nil { - if this.DomainMatcherChoice != nil { - return false - } - } else if this.DomainMatcherChoice == nil { - return false - } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { - return false - } - if !this.Path.Equal(that1.Path) { - return false - } - if this.JavascriptLocation != that1.JavascriptLocation { + if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { return false } return true } -func (this *ShapeJavaScriptInsertionRule_AnyDomain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_DisableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptInsertionRule_AnyDomain) + that1, ok := that.(*ReplaceSpecType_DisableThreatMesh) if !ok { - that2, ok := that.(ShapeJavaScriptInsertionRule_AnyDomain) + that2, ok := that.(ReplaceSpecType_DisableThreatMesh) if ok { that1 = &that2 } else { @@ -26253,19 +21357,19 @@ func (this *ShapeJavaScriptInsertionRule_AnyDomain) Equal(that interface{}) bool } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.DisableThreatMesh.Equal(that1.DisableThreatMesh) { return false } return true } -func (this *ShapeJavaScriptInsertionRule_Domain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_EnableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptInsertionRule_Domain) + that1, ok := that.(*ReplaceSpecType_EnableThreatMesh) if !ok { - that2, ok := that.(ShapeJavaScriptInsertionRule_Domain) + that2, ok := that.(ReplaceSpecType_EnableThreatMesh) if ok { that1 = &that2 } else { @@ -26277,19 +21381,19 @@ func (this *ShapeJavaScriptInsertionRule_Domain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Domain.Equal(that1.Domain) { + if !this.EnableThreatMesh.Equal(that1.EnableThreatMesh) { return false } return true } -func (this *ShapeJavaScriptExclusionRule) Equal(that interface{}) bool { +func (this *ReplaceSpecType_L7DdosActionDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptExclusionRule) + that1, ok := that.(*ReplaceSpecType_L7DdosActionDefault) if !ok { - that2, ok := that.(ShapeJavaScriptExclusionRule) + that2, ok := that.(ReplaceSpecType_L7DdosActionDefault) if ok { that1 = &that2 } else { @@ -26301,31 +21405,19 @@ func (this *ShapeJavaScriptExclusionRule) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Metadata.Equal(that1.Metadata) { - return false - } - if that1.DomainMatcherChoice == nil { - if this.DomainMatcherChoice != nil { - return false - } - } else if this.DomainMatcherChoice == nil { - return false - } else if !this.DomainMatcherChoice.Equal(that1.DomainMatcherChoice) { - return false - } - if !this.Path.Equal(that1.Path) { + if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { return false } return true } -func (this *ShapeJavaScriptExclusionRule_AnyDomain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_L7DdosActionBlock) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptExclusionRule_AnyDomain) + that1, ok := that.(*ReplaceSpecType_L7DdosActionBlock) if !ok { - that2, ok := that.(ShapeJavaScriptExclusionRule_AnyDomain) + that2, ok := that.(ReplaceSpecType_L7DdosActionBlock) if ok { that1 = &that2 } else { @@ -26337,19 +21429,19 @@ func (this *ShapeJavaScriptExclusionRule_AnyDomain) Equal(that interface{}) bool } else if this == nil { return false } - if !this.AnyDomain.Equal(that1.AnyDomain) { + if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { return false } return true } -func (this *ShapeJavaScriptExclusionRule_Domain) Equal(that interface{}) bool { +func (this *ReplaceSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*ShapeJavaScriptExclusionRule_Domain) + that1, ok := that.(*ReplaceSpecType_L7DdosActionJsChallenge) if !ok { - that2, ok := that.(ShapeJavaScriptExclusionRule_Domain) + that2, ok := that.(ReplaceSpecType_L7DdosActionJsChallenge) if ok { that1 = &that2 } else { @@ -26361,19 +21453,19 @@ func (this *ShapeJavaScriptExclusionRule_Domain) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Domain.Equal(that1.Domain) { + if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { return false } return true } -func (this *IPThreatCategoryListType) Equal(that interface{}) bool { +func (this *ReplaceSpecType_L7DdosActionNone) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*IPThreatCategoryListType) + that1, ok := that.(*ReplaceSpecType_L7DdosActionNone) if !ok { - that2, ok := that.(IPThreatCategoryListType) + that2, ok := that.(ReplaceSpecType_L7DdosActionNone) if ok { that1 = &that2 } else { @@ -26385,24 +21477,19 @@ func (this *IPThreatCategoryListType) Equal(that interface{}) bool { } else if this == nil { return false } - if len(this.IpThreatCategories) != len(that1.IpThreatCategories) { + if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { return false } - for i := range this.IpThreatCategories { - if this.IpThreatCategories[i] != that1.IpThreatCategories[i] { - return false - } - } return true } -func (this *GlobalSpecType) Equal(that interface{}) bool { +func (this *GetSpecType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType) + that1, ok := that.(*GetSpecType) if !ok { - that2, ok := that.(GlobalSpecType) + that2, ok := that.(GetSpecType) if ok { that1 = &that2 } else { @@ -26465,13 +21552,7 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { return false } - if that1.HostRewriteParams == nil { - if this.HostRewriteParams != nil { - return false - } - } else if this.HostRewriteParams == nil { - return false - } else if !this.HostRewriteParams.Equal(that1.HostRewriteParams) { + if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { return false } if len(this.Routes) != len(that1.Routes) { @@ -26482,9 +21563,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { return false } } - if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { - return false - } if !this.CorsPolicy.Equal(that1.CorsPolicy) { return false } @@ -26612,15 +21690,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { return false } - if that1.DdosDetectionChoice == nil { - if this.DdosDetectionChoice != nil { - return false - } - } else if this.DdosDetectionChoice == nil { - return false - } else if !this.DdosDetectionChoice.Equal(that1.DdosDetectionChoice) { - return false - } if that1.MaliciousUserDetectionChoice == nil { if this.MaliciousUserDetectionChoice != nil { return false @@ -26648,15 +21717,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { return false } - if that1.ClientSideDefenseChoice == nil { - if this.ClientSideDefenseChoice != nil { - return false - } - } else if this.ClientSideDefenseChoice == nil { - return false - } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { - return false - } if that1.ApiDefinitionChoice == nil { if this.ApiDefinitionChoice != nil { return false @@ -26675,18 +21735,34 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { return false } - if that1.ThreatIntelligenceChoice == nil { - if this.ThreatIntelligenceChoice != nil { + if that1.ClientSideDefenseChoice == nil { + if this.ClientSideDefenseChoice != nil { return false } - } else if this.ThreatIntelligenceChoice == nil { + } else if this.ClientSideDefenseChoice == nil { return false - } else if !this.ThreatIntelligenceChoice.Equal(that1.ThreatIntelligenceChoice) { + } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { return false } - if !this.ViewInternal.Equal(that1.ViewInternal) { + if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { + return false + } + if len(this.GraphqlRules) != len(that1.GraphqlRules) { return false } + for i := range this.GraphqlRules { + if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { + return false + } + } + if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { + return false + } + for i := range this.ProtectedCookies { + if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { + return false + } + } if this.HostName != that1.HostName { return false } @@ -26701,9 +21777,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if this.State != that1.State { return false } - if this.AutoCertState != that1.AutoCertState { - return false - } if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { return false } @@ -26715,25 +21788,6 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { return false } } - if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { - return false - } - if len(this.GraphqlRules) != len(that1.GraphqlRules) { - return false - } - for i := range this.GraphqlRules { - if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { - return false - } - } - if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { - return false - } - for i := range this.ProtectedCookies { - if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { - return false - } - } if that1.SlowDdosMitigationChoice == nil { if this.SlowDdosMitigationChoice != nil { return false @@ -26746,6 +21800,15 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.JwtValidation.Equal(that1.JwtValidation) { return false } + if that1.ThreatMeshChoice == nil { + if this.ThreatMeshChoice != nil { + return false + } + } else if this.ThreatMeshChoice == nil { + return false + } else if !this.ThreatMeshChoice.Equal(that1.ThreatMeshChoice) { + return false + } if that1.L7DdosAutoMitigationAction == nil { if this.L7DdosAutoMitigationAction != nil { return false @@ -26760,14 +21823,14 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_Http) Equal(that interface{}) bool { +func (this *GetSpecType_Http) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_Http) + that1, ok := that.(*GetSpecType_Http) if !ok { - that2, ok := that.(GlobalSpecType_Http) + that2, ok := that.(GetSpecType_Http) if ok { that1 = &that2 } else { @@ -26784,14 +21847,14 @@ func (this *GlobalSpecType_Http) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_HttpsAutoCert) Equal(that interface{}) bool { +func (this *GetSpecType_HttpsAutoCert) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_HttpsAutoCert) + that1, ok := that.(*GetSpecType_HttpsAutoCert) if !ok { - that2, ok := that.(GlobalSpecType_HttpsAutoCert) + that2, ok := that.(GetSpecType_HttpsAutoCert) if ok { that1 = &that2 } else { @@ -26808,14 +21871,14 @@ func (this *GlobalSpecType_HttpsAutoCert) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_Https) Equal(that interface{}) bool { +func (this *GetSpecType_Https) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_Https) + that1, ok := that.(*GetSpecType_Https) if !ok { - that2, ok := that.(GlobalSpecType_Https) + that2, ok := that.(GetSpecType_Https) if ok { that1 = &that2 } else { @@ -26832,14 +21895,14 @@ func (this *GlobalSpecType_Https) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_DoNotAdvertise) Equal(that interface{}) bool { +func (this *GetSpecType_DoNotAdvertise) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DoNotAdvertise) + that1, ok := that.(*GetSpecType_DoNotAdvertise) if !ok { - that2, ok := that.(GlobalSpecType_DoNotAdvertise) + that2, ok := that.(GetSpecType_DoNotAdvertise) if ok { that1 = &that2 } else { @@ -26856,14 +21919,14 @@ func (this *GlobalSpecType_DoNotAdvertise) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { +func (this *GetSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_AdvertiseOnPublicDefaultVip) + that1, ok := that.(*GetSpecType_AdvertiseOnPublicDefaultVip) if !ok { - that2, ok := that.(GlobalSpecType_AdvertiseOnPublicDefaultVip) + that2, ok := that.(GetSpecType_AdvertiseOnPublicDefaultVip) if ok { that1 = &that2 } else { @@ -26880,14 +21943,14 @@ func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) } return true } -func (this *GlobalSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { +func (this *GetSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_AdvertiseOnPublic) + that1, ok := that.(*GetSpecType_AdvertiseOnPublic) if !ok { - that2, ok := that.(GlobalSpecType_AdvertiseOnPublic) + that2, ok := that.(GetSpecType_AdvertiseOnPublic) if ok { that1 = &that2 } else { @@ -26904,14 +21967,14 @@ func (this *GlobalSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_AdvertiseCustom) Equal(that interface{}) bool { +func (this *GetSpecType_AdvertiseCustom) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_AdvertiseCustom) + that1, ok := that.(*GetSpecType_AdvertiseCustom) if !ok { - that2, ok := that.(GlobalSpecType_AdvertiseCustom) + that2, ok := that.(GetSpecType_AdvertiseCustom) if ok { that1 = &that2 } else { @@ -26928,14 +21991,14 @@ func (this *GlobalSpecType_AdvertiseCustom) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_DefaultPool) Equal(that interface{}) bool { +func (this *GetSpecType_DefaultPool) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DefaultPool) + that1, ok := that.(*GetSpecType_DefaultPool) if !ok { - that2, ok := that.(GlobalSpecType_DefaultPool) + that2, ok := that.(GetSpecType_DefaultPool) if ok { that1 = &that2 } else { @@ -26952,14 +22015,14 @@ func (this *GlobalSpecType_DefaultPool) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_DefaultPoolList) Equal(that interface{}) bool { +func (this *GetSpecType_DefaultPoolList) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DefaultPoolList) + that1, ok := that.(*GetSpecType_DefaultPoolList) if !ok { - that2, ok := that.(GlobalSpecType_DefaultPoolList) + that2, ok := that.(GetSpecType_DefaultPoolList) if ok { that1 = &that2 } else { @@ -26976,86 +22039,14 @@ func (this *GlobalSpecType_DefaultPoolList) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_AutoHostRewrite) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*GlobalSpecType_AutoHostRewrite) - if !ok { - that2, ok := that.(GlobalSpecType_AutoHostRewrite) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.AutoHostRewrite.Equal(that1.AutoHostRewrite) { - return false - } - return true -} -func (this *GlobalSpecType_HostRewrite) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*GlobalSpecType_HostRewrite) - if !ok { - that2, ok := that.(GlobalSpecType_HostRewrite) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.HostRewrite != that1.HostRewrite { - return false - } - return true -} -func (this *GlobalSpecType_DisableHostRewrite) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*GlobalSpecType_DisableHostRewrite) - if !ok { - that2, ok := that.(GlobalSpecType_DisableHostRewrite) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableHostRewrite.Equal(that1.DisableHostRewrite) { - return false - } - return true -} -func (this *GlobalSpecType_DisableWaf) Equal(that interface{}) bool { +func (this *GetSpecType_DisableWaf) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableWaf) + that1, ok := that.(*GetSpecType_DisableWaf) if !ok { - that2, ok := that.(GlobalSpecType_DisableWaf) + that2, ok := that.(GetSpecType_DisableWaf) if ok { that1 = &that2 } else { @@ -27072,14 +22063,14 @@ func (this *GlobalSpecType_DisableWaf) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_AppFirewall) Equal(that interface{}) bool { +func (this *GetSpecType_AppFirewall) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_AppFirewall) + that1, ok := that.(*GetSpecType_AppFirewall) if !ok { - that2, ok := that.(GlobalSpecType_AppFirewall) + that2, ok := that.(GetSpecType_AppFirewall) if ok { that1 = &that2 } else { @@ -27096,14 +22087,14 @@ func (this *GlobalSpecType_AppFirewall) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_NoChallenge) Equal(that interface{}) bool { +func (this *GetSpecType_NoChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_NoChallenge) + that1, ok := that.(*GetSpecType_NoChallenge) if !ok { - that2, ok := that.(GlobalSpecType_NoChallenge) + that2, ok := that.(GetSpecType_NoChallenge) if ok { that1 = &that2 } else { @@ -27120,14 +22111,14 @@ func (this *GlobalSpecType_NoChallenge) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_EnableChallenge) Equal(that interface{}) bool { +func (this *GetSpecType_EnableChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableChallenge) + that1, ok := that.(*GetSpecType_EnableChallenge) if !ok { - that2, ok := that.(GlobalSpecType_EnableChallenge) + that2, ok := that.(GetSpecType_EnableChallenge) if ok { that1 = &that2 } else { @@ -27144,14 +22135,14 @@ func (this *GlobalSpecType_EnableChallenge) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_JsChallenge) Equal(that interface{}) bool { +func (this *GetSpecType_JsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_JsChallenge) + that1, ok := that.(*GetSpecType_JsChallenge) if !ok { - that2, ok := that.(GlobalSpecType_JsChallenge) + that2, ok := that.(GetSpecType_JsChallenge) if ok { that1 = &that2 } else { @@ -27168,14 +22159,14 @@ func (this *GlobalSpecType_JsChallenge) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_CaptchaChallenge) Equal(that interface{}) bool { +func (this *GetSpecType_CaptchaChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_CaptchaChallenge) + that1, ok := that.(*GetSpecType_CaptchaChallenge) if !ok { - that2, ok := that.(GlobalSpecType_CaptchaChallenge) + that2, ok := that.(GetSpecType_CaptchaChallenge) if ok { that1 = &that2 } else { @@ -27192,14 +22183,14 @@ func (this *GlobalSpecType_CaptchaChallenge) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { +func (this *GetSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_PolicyBasedChallenge) + that1, ok := that.(*GetSpecType_PolicyBasedChallenge) if !ok { - that2, ok := that.(GlobalSpecType_PolicyBasedChallenge) + that2, ok := that.(GetSpecType_PolicyBasedChallenge) if ok { that1 = &that2 } else { @@ -27216,14 +22207,14 @@ func (this *GlobalSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_UserIdClientIp) Equal(that interface{}) bool { +func (this *GetSpecType_UserIdClientIp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_UserIdClientIp) + that1, ok := that.(*GetSpecType_UserIdClientIp) if !ok { - that2, ok := that.(GlobalSpecType_UserIdClientIp) + that2, ok := that.(GetSpecType_UserIdClientIp) if ok { that1 = &that2 } else { @@ -27240,14 +22231,14 @@ func (this *GlobalSpecType_UserIdClientIp) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_UserIdentification) Equal(that interface{}) bool { +func (this *GetSpecType_UserIdentification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_UserIdentification) + that1, ok := that.(*GetSpecType_UserIdentification) if !ok { - that2, ok := that.(GlobalSpecType_UserIdentification) + that2, ok := that.(GetSpecType_UserIdentification) if ok { that1 = &that2 } else { @@ -27264,14 +22255,14 @@ func (this *GlobalSpecType_UserIdentification) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_DisableRateLimit) Equal(that interface{}) bool { +func (this *GetSpecType_DisableRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableRateLimit) + that1, ok := that.(*GetSpecType_DisableRateLimit) if !ok { - that2, ok := that.(GlobalSpecType_DisableRateLimit) + that2, ok := that.(GetSpecType_DisableRateLimit) if ok { that1 = &that2 } else { @@ -27288,14 +22279,14 @@ func (this *GlobalSpecType_DisableRateLimit) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_ApiRateLimit) Equal(that interface{}) bool { +func (this *GetSpecType_ApiRateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ApiRateLimit) + that1, ok := that.(*GetSpecType_ApiRateLimit) if !ok { - that2, ok := that.(GlobalSpecType_ApiRateLimit) + that2, ok := that.(GetSpecType_ApiRateLimit) if ok { that1 = &that2 } else { @@ -27312,14 +22303,14 @@ func (this *GlobalSpecType_ApiRateLimit) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_RateLimit) Equal(that interface{}) bool { +func (this *GetSpecType_RateLimit) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_RateLimit) + that1, ok := that.(*GetSpecType_RateLimit) if !ok { - that2, ok := that.(GlobalSpecType_RateLimit) + that2, ok := that.(GetSpecType_RateLimit) if ok { that1 = &that2 } else { @@ -27336,14 +22327,14 @@ func (this *GlobalSpecType_RateLimit) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { +func (this *GetSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ServicePoliciesFromNamespace) + that1, ok := that.(*GetSpecType_ServicePoliciesFromNamespace) if !ok { - that2, ok := that.(GlobalSpecType_ServicePoliciesFromNamespace) + that2, ok := that.(GetSpecType_ServicePoliciesFromNamespace) if ok { that1 = &that2 } else { @@ -27360,14 +22351,14 @@ func (this *GlobalSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) } return true } -func (this *GlobalSpecType_NoServicePolicies) Equal(that interface{}) bool { +func (this *GetSpecType_NoServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_NoServicePolicies) + that1, ok := that.(*GetSpecType_NoServicePolicies) if !ok { - that2, ok := that.(GlobalSpecType_NoServicePolicies) + that2, ok := that.(GetSpecType_NoServicePolicies) if ok { that1 = &that2 } else { @@ -27384,14 +22375,14 @@ func (this *GlobalSpecType_NoServicePolicies) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_ActiveServicePolicies) Equal(that interface{}) bool { +func (this *GetSpecType_ActiveServicePolicies) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ActiveServicePolicies) + that1, ok := that.(*GetSpecType_ActiveServicePolicies) if !ok { - that2, ok := that.(GlobalSpecType_ActiveServicePolicies) + that2, ok := that.(GetSpecType_ActiveServicePolicies) if ok { that1 = &that2 } else { @@ -27408,14 +22399,14 @@ func (this *GlobalSpecType_ActiveServicePolicies) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_RoundRobin) Equal(that interface{}) bool { +func (this *GetSpecType_RoundRobin) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_RoundRobin) + that1, ok := that.(*GetSpecType_RoundRobin) if !ok { - that2, ok := that.(GlobalSpecType_RoundRobin) + that2, ok := that.(GetSpecType_RoundRobin) if ok { that1 = &that2 } else { @@ -27432,14 +22423,14 @@ func (this *GlobalSpecType_RoundRobin) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_LeastActive) Equal(that interface{}) bool { +func (this *GetSpecType_LeastActive) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_LeastActive) + that1, ok := that.(*GetSpecType_LeastActive) if !ok { - that2, ok := that.(GlobalSpecType_LeastActive) + that2, ok := that.(GetSpecType_LeastActive) if ok { that1 = &that2 } else { @@ -27456,14 +22447,14 @@ func (this *GlobalSpecType_LeastActive) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_Random) Equal(that interface{}) bool { +func (this *GetSpecType_Random) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_Random) + that1, ok := that.(*GetSpecType_Random) if !ok { - that2, ok := that.(GlobalSpecType_Random) + that2, ok := that.(GetSpecType_Random) if ok { that1 = &that2 } else { @@ -27480,14 +22471,14 @@ func (this *GlobalSpecType_Random) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_SourceIpStickiness) Equal(that interface{}) bool { +func (this *GetSpecType_SourceIpStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SourceIpStickiness) + that1, ok := that.(*GetSpecType_SourceIpStickiness) if !ok { - that2, ok := that.(GlobalSpecType_SourceIpStickiness) + that2, ok := that.(GetSpecType_SourceIpStickiness) if ok { that1 = &that2 } else { @@ -27504,14 +22495,14 @@ func (this *GlobalSpecType_SourceIpStickiness) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_CookieStickiness) Equal(that interface{}) bool { +func (this *GetSpecType_CookieStickiness) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_CookieStickiness) + that1, ok := that.(*GetSpecType_CookieStickiness) if !ok { - that2, ok := that.(GlobalSpecType_CookieStickiness) + that2, ok := that.(GetSpecType_CookieStickiness) if ok { that1 = &that2 } else { @@ -27528,14 +22519,14 @@ func (this *GlobalSpecType_CookieStickiness) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_RingHash) Equal(that interface{}) bool { +func (this *GetSpecType_RingHash) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_RingHash) + that1, ok := that.(*GetSpecType_RingHash) if !ok { - that2, ok := that.(GlobalSpecType_RingHash) + that2, ok := that.(GetSpecType_RingHash) if ok { that1 = &that2 } else { @@ -27552,14 +22543,14 @@ func (this *GlobalSpecType_RingHash) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { +func (this *GetSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableTrustClientIpHeaders) + that1, ok := that.(*GetSpecType_DisableTrustClientIpHeaders) if !ok { - that2, ok := that.(GlobalSpecType_DisableTrustClientIpHeaders) + that2, ok := that.(GetSpecType_DisableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -27576,14 +22567,14 @@ func (this *GlobalSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) } return true } -func (this *GlobalSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { +func (this *GetSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableTrustClientIpHeaders) + that1, ok := that.(*GetSpecType_EnableTrustClientIpHeaders) if !ok { - that2, ok := that.(GlobalSpecType_EnableTrustClientIpHeaders) + that2, ok := that.(GetSpecType_EnableTrustClientIpHeaders) if ok { that1 = &that2 } else { @@ -27600,14 +22591,14 @@ func (this *GlobalSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) b } return true } -func (this *GlobalSpecType_SingleLbApp) Equal(that interface{}) bool { +func (this *GetSpecType_SingleLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SingleLbApp) + that1, ok := that.(*GetSpecType_SingleLbApp) if !ok { - that2, ok := that.(GlobalSpecType_SingleLbApp) + that2, ok := that.(GetSpecType_SingleLbApp) if ok { that1 = &that2 } else { @@ -27624,14 +22615,14 @@ func (this *GlobalSpecType_SingleLbApp) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_MultiLbApp) Equal(that interface{}) bool { +func (this *GetSpecType_MultiLbApp) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_MultiLbApp) + that1, ok := that.(*GetSpecType_MultiLbApp) if !ok { - that2, ok := that.(GlobalSpecType_MultiLbApp) + that2, ok := that.(GetSpecType_MultiLbApp) if ok { that1 = &that2 } else { @@ -27648,14 +22639,14 @@ func (this *GlobalSpecType_MultiLbApp) Equal(that interface{}) bool { } return true } -func (this *GlobalSpecType_EnableDdosDetection) Equal(that interface{}) bool { +func (this *GetSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableDdosDetection) + that1, ok := that.(*GetSpecType_EnableMaliciousUserDetection) if !ok { - that2, ok := that.(GlobalSpecType_EnableDdosDetection) + that2, ok := that.(GetSpecType_EnableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -27667,19 +22658,19 @@ func (this *GlobalSpecType_EnableDdosDetection) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.EnableDdosDetection.Equal(that1.EnableDdosDetection) { + if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { return false } return true } -func (this *GlobalSpecType_DisableDdosDetection) Equal(that interface{}) bool { +func (this *GetSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableDdosDetection) + that1, ok := that.(*GetSpecType_DisableMaliciousUserDetection) if !ok { - that2, ok := that.(GlobalSpecType_DisableDdosDetection) + that2, ok := that.(GetSpecType_DisableMaliciousUserDetection) if ok { that1 = &that2 } else { @@ -27691,19 +22682,19 @@ func (this *GlobalSpecType_DisableDdosDetection) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableDdosDetection.Equal(that1.DisableDdosDetection) { + if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { return false } return true } -func (this *GlobalSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { +func (this *GetSpecType_EnableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableMaliciousUserDetection) + that1, ok := that.(*GetSpecType_EnableApiDiscovery) if !ok { - that2, ok := that.(GlobalSpecType_EnableMaliciousUserDetection) + that2, ok := that.(GetSpecType_EnableApiDiscovery) if ok { that1 = &that2 } else { @@ -27715,19 +22706,19 @@ func (this *GlobalSpecType_EnableMaliciousUserDetection) Equal(that interface{}) } else if this == nil { return false } - if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { + if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { return false } return true } -func (this *GlobalSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { +func (this *GetSpecType_DisableApiDiscovery) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableMaliciousUserDetection) + that1, ok := that.(*GetSpecType_DisableApiDiscovery) if !ok { - that2, ok := that.(GlobalSpecType_DisableMaliciousUserDetection) + that2, ok := that.(GetSpecType_DisableApiDiscovery) if ok { that1 = &that2 } else { @@ -27739,19 +22730,19 @@ func (this *GlobalSpecType_DisableMaliciousUserDetection) Equal(that interface{} } else if this == nil { return false } - if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { + if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { return false } return true } -func (this *GlobalSpecType_EnableApiDiscovery) Equal(that interface{}) bool { +func (this *GetSpecType_DisableBotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableApiDiscovery) + that1, ok := that.(*GetSpecType_DisableBotDefense) if !ok { - that2, ok := that.(GlobalSpecType_EnableApiDiscovery) + that2, ok := that.(GetSpecType_DisableBotDefense) if ok { that1 = &that2 } else { @@ -27763,19 +22754,19 @@ func (this *GlobalSpecType_EnableApiDiscovery) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { + if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { return false } return true } -func (this *GlobalSpecType_DisableApiDiscovery) Equal(that interface{}) bool { +func (this *GetSpecType_BotDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableApiDiscovery) + that1, ok := that.(*GetSpecType_BotDefense) if !ok { - that2, ok := that.(GlobalSpecType_DisableApiDiscovery) + that2, ok := that.(GetSpecType_BotDefense) if ok { that1 = &that2 } else { @@ -27787,19 +22778,19 @@ func (this *GlobalSpecType_DisableApiDiscovery) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { + if !this.BotDefense.Equal(that1.BotDefense) { return false } return true } -func (this *GlobalSpecType_DisableBotDefense) Equal(that interface{}) bool { +func (this *GetSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableBotDefense) + that1, ok := that.(*GetSpecType_BotDefenseAdvanced) if !ok { - that2, ok := that.(GlobalSpecType_DisableBotDefense) + that2, ok := that.(GetSpecType_BotDefenseAdvanced) if ok { that1 = &that2 } else { @@ -27811,19 +22802,19 @@ func (this *GlobalSpecType_DisableBotDefense) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { + if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { return false } return true } -func (this *GlobalSpecType_BotDefense) Equal(that interface{}) bool { +func (this *GetSpecType_DisableApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_BotDefense) + that1, ok := that.(*GetSpecType_DisableApiDefinition) if !ok { - that2, ok := that.(GlobalSpecType_BotDefense) + that2, ok := that.(GetSpecType_DisableApiDefinition) if ok { that1 = &that2 } else { @@ -27835,19 +22826,19 @@ func (this *GlobalSpecType_BotDefense) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.BotDefense.Equal(that1.BotDefense) { + if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { return false } return true } -func (this *GlobalSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { +func (this *GetSpecType_ApiDefinition) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_BotDefenseAdvanced) + that1, ok := that.(*GetSpecType_ApiDefinition) if !ok { - that2, ok := that.(GlobalSpecType_BotDefenseAdvanced) + that2, ok := that.(GetSpecType_ApiDefinition) if ok { that1 = &that2 } else { @@ -27859,19 +22850,19 @@ func (this *GlobalSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { + if !this.ApiDefinition.Equal(that1.ApiDefinition) { return false } return true } -func (this *GlobalSpecType_DisableClientSideDefense) Equal(that interface{}) bool { +func (this *GetSpecType_ApiSpecification) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableClientSideDefense) + that1, ok := that.(*GetSpecType_ApiSpecification) if !ok { - that2, ok := that.(GlobalSpecType_DisableClientSideDefense) + that2, ok := that.(GetSpecType_ApiSpecification) if ok { that1 = &that2 } else { @@ -27883,19 +22874,19 @@ func (this *GlobalSpecType_DisableClientSideDefense) Equal(that interface{}) boo } else if this == nil { return false } - if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { + if !this.ApiSpecification.Equal(that1.ApiSpecification) { return false } return true } -func (this *GlobalSpecType_ClientSideDefense) Equal(that interface{}) bool { +func (this *GetSpecType_ApiDefinitions) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ClientSideDefense) + that1, ok := that.(*GetSpecType_ApiDefinitions) if !ok { - that2, ok := that.(GlobalSpecType_ClientSideDefense) + that2, ok := that.(GetSpecType_ApiDefinitions) if ok { that1 = &that2 } else { @@ -27907,19 +22898,19 @@ func (this *GlobalSpecType_ClientSideDefense) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { + if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { return false } return true } -func (this *GlobalSpecType_DisableApiDefinition) Equal(that interface{}) bool { +func (this *GetSpecType_DisableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableApiDefinition) + that1, ok := that.(*GetSpecType_DisableIpReputation) if !ok { - that2, ok := that.(GlobalSpecType_DisableApiDefinition) + that2, ok := that.(GetSpecType_DisableIpReputation) if ok { that1 = &that2 } else { @@ -27931,19 +22922,19 @@ func (this *GlobalSpecType_DisableApiDefinition) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { + if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { return false } return true } -func (this *GlobalSpecType_ApiDefinition) Equal(that interface{}) bool { +func (this *GetSpecType_EnableIpReputation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ApiDefinition) + that1, ok := that.(*GetSpecType_EnableIpReputation) if !ok { - that2, ok := that.(GlobalSpecType_ApiDefinition) + that2, ok := that.(GetSpecType_EnableIpReputation) if ok { that1 = &that2 } else { @@ -27955,19 +22946,19 @@ func (this *GlobalSpecType_ApiDefinition) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiDefinition.Equal(that1.ApiDefinition) { + if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { return false } return true } -func (this *GlobalSpecType_ApiSpecification) Equal(that interface{}) bool { +func (this *GetSpecType_DisableClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ApiSpecification) + that1, ok := that.(*GetSpecType_DisableClientSideDefense) if !ok { - that2, ok := that.(GlobalSpecType_ApiSpecification) + that2, ok := that.(GetSpecType_DisableClientSideDefense) if ok { that1 = &that2 } else { @@ -27979,19 +22970,19 @@ func (this *GlobalSpecType_ApiSpecification) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiSpecification.Equal(that1.ApiSpecification) { + if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { return false } return true } -func (this *GlobalSpecType_ApiDefinitions) Equal(that interface{}) bool { +func (this *GetSpecType_ClientSideDefense) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_ApiDefinitions) + that1, ok := that.(*GetSpecType_ClientSideDefense) if !ok { - that2, ok := that.(GlobalSpecType_ApiDefinitions) + that2, ok := that.(GetSpecType_ClientSideDefense) if ok { that1 = &that2 } else { @@ -28003,19 +22994,19 @@ func (this *GlobalSpecType_ApiDefinitions) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { + if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { return false } return true } -func (this *GlobalSpecType_DisableIpReputation) Equal(that interface{}) bool { +func (this *GetSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableIpReputation) + that1, ok := that.(*GetSpecType_SystemDefaultTimeouts) if !ok { - that2, ok := that.(GlobalSpecType_DisableIpReputation) + that2, ok := that.(GetSpecType_SystemDefaultTimeouts) if ok { that1 = &that2 } else { @@ -28027,19 +23018,19 @@ func (this *GlobalSpecType_DisableIpReputation) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { + if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { return false } return true } -func (this *GlobalSpecType_EnableIpReputation) Equal(that interface{}) bool { +func (this *GetSpecType_SlowDdosMitigation) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableIpReputation) + that1, ok := that.(*GetSpecType_SlowDdosMitigation) if !ok { - that2, ok := that.(GlobalSpecType_EnableIpReputation) + that2, ok := that.(GetSpecType_SlowDdosMitigation) if ok { that1 = &that2 } else { @@ -28051,19 +23042,19 @@ func (this *GlobalSpecType_EnableIpReputation) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { + if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { return false } return true } -func (this *GlobalSpecType_DisableThreatIntelligence) Equal(that interface{}) bool { +func (this *GetSpecType_DisableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_DisableThreatIntelligence) + that1, ok := that.(*GetSpecType_DisableThreatMesh) if !ok { - that2, ok := that.(GlobalSpecType_DisableThreatIntelligence) + that2, ok := that.(GetSpecType_DisableThreatMesh) if ok { that1 = &that2 } else { @@ -28075,19 +23066,19 @@ func (this *GlobalSpecType_DisableThreatIntelligence) Equal(that interface{}) bo } else if this == nil { return false } - if !this.DisableThreatIntelligence.Equal(that1.DisableThreatIntelligence) { + if !this.DisableThreatMesh.Equal(that1.DisableThreatMesh) { return false } return true } -func (this *GlobalSpecType_EnableThreatIntelligence) Equal(that interface{}) bool { +func (this *GetSpecType_EnableThreatMesh) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_EnableThreatIntelligence) + that1, ok := that.(*GetSpecType_EnableThreatMesh) if !ok { - that2, ok := that.(GlobalSpecType_EnableThreatIntelligence) + that2, ok := that.(GetSpecType_EnableThreatMesh) if ok { that1 = &that2 } else { @@ -28099,19 +23090,19 @@ func (this *GlobalSpecType_EnableThreatIntelligence) Equal(that interface{}) boo } else if this == nil { return false } - if !this.EnableThreatIntelligence.Equal(that1.EnableThreatIntelligence) { + if !this.EnableThreatMesh.Equal(that1.EnableThreatMesh) { return false } return true } -func (this *GlobalSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { +func (this *GetSpecType_L7DdosActionDefault) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SystemDefaultTimeouts) + that1, ok := that.(*GetSpecType_L7DdosActionDefault) if !ok { - that2, ok := that.(GlobalSpecType_SystemDefaultTimeouts) + that2, ok := that.(GetSpecType_L7DdosActionDefault) if ok { that1 = &that2 } else { @@ -28123,19 +23114,19 @@ func (this *GlobalSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { + if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { return false } return true } -func (this *GlobalSpecType_SlowDdosMitigation) Equal(that interface{}) bool { +func (this *GetSpecType_L7DdosActionBlock) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_SlowDdosMitigation) + that1, ok := that.(*GetSpecType_L7DdosActionBlock) if !ok { - that2, ok := that.(GlobalSpecType_SlowDdosMitigation) + that2, ok := that.(GetSpecType_L7DdosActionBlock) if ok { that1 = &that2 } else { @@ -28147,19 +23138,19 @@ func (this *GlobalSpecType_SlowDdosMitigation) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { + if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { return false } return true } -func (this *GlobalSpecType_L7DdosActionDefault) Equal(that interface{}) bool { +func (this *GetSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_L7DdosActionDefault) + that1, ok := that.(*GetSpecType_L7DdosActionJsChallenge) if !ok { - that2, ok := that.(GlobalSpecType_L7DdosActionDefault) + that2, ok := that.(GetSpecType_L7DdosActionJsChallenge) if ok { that1 = &that2 } else { @@ -28171,19 +23162,19 @@ func (this *GlobalSpecType_L7DdosActionDefault) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { + if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { return false } return true } -func (this *GlobalSpecType_L7DdosActionBlock) Equal(that interface{}) bool { +func (this *GetSpecType_L7DdosActionNone) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*GlobalSpecType_L7DdosActionBlock) + that1, ok := that.(*GetSpecType_L7DdosActionNone) if !ok { - that2, ok := that.(GlobalSpecType_L7DdosActionBlock) + that2, ok := that.(GetSpecType_L7DdosActionNone) if ok { that1 = &that2 } else { @@ -28195,11787 +23186,13377 @@ func (this *GlobalSpecType_L7DdosActionBlock) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { + if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { return false } return true } -func (this *GlobalSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttps) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*GlobalSpecType_L7DdosActionJsChallenge) - if !ok { - that2, ok := that.(GlobalSpecType_L7DdosActionJsChallenge) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 21) + s = append(s, "&http_loadbalancer.ProxyTypeHttps{") + s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") + s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") + if this.TlsCertificatesChoice != nil { + s = append(s, "TlsCertificatesChoice: "+fmt.Sprintf("%#v", this.TlsCertificatesChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.ServerHeaderChoice != nil { + s = append(s, "ServerHeaderChoice: "+fmt.Sprintf("%#v", this.ServerHeaderChoice)+",\n") } - if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { - return false + if this.PathNormalizeChoice != nil { + s = append(s, "PathNormalizeChoice: "+fmt.Sprintf("%#v", this.PathNormalizeChoice)+",\n") } - return true -} -func (this *GlobalSpecType_L7DdosActionNone) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.PortChoice != nil { + s = append(s, "PortChoice: "+fmt.Sprintf("%#v", this.PortChoice)+",\n") } - - that1, ok := that.(*GlobalSpecType_L7DdosActionNone) - if !ok { - that2, ok := that.(GlobalSpecType_L7DdosActionNone) - if ok { - that1 = &that2 - } else { - return false - } + if this.DefaultLbChoice != nil { + s = append(s, "DefaultLbChoice: "+fmt.Sprintf("%#v", this.DefaultLbChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.HeaderTransformationType != nil { + s = append(s, "HeaderTransformationType: "+fmt.Sprintf("%#v", this.HeaderTransformationType)+",\n") } - if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { - return false + s = append(s, "ConnectionIdleTimeout: "+fmt.Sprintf("%#v", this.ConnectionIdleTimeout)+",\n") + if this.HttpProtocolOptions != nil { + s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *JWTValidation) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*JWTValidation) - if !ok { - that2, ok := that.(JWTValidation) - if ok { - that1 = &that2 - } else { - return false - } +func (this *ProxyTypeHttps_TlsParameters) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_TlsParameters{` + + `TlsParameters:` + fmt.Sprintf("%#v", this.TlsParameters) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_TlsCertParams) GoString() string { + if this == nil { + return "nil" } - if !this.Target.Equal(that1.Target) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_TlsCertParams{` + + `TlsCertParams:` + fmt.Sprintf("%#v", this.TlsCertParams) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_DefaultHeader) GoString() string { + if this == nil { + return "nil" } - if !this.TokenLocation.Equal(that1.TokenLocation) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_DefaultHeader{` + + `DefaultHeader:` + fmt.Sprintf("%#v", this.DefaultHeader) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_ServerName) GoString() string { + if this == nil { + return "nil" } - if !this.Action.Equal(that1.Action) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_ServerName{` + + `ServerName:` + fmt.Sprintf("%#v", this.ServerName) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_AppendServerName) GoString() string { + if this == nil { + return "nil" } - if that1.JwksConfiguration == nil { - if this.JwksConfiguration != nil { - return false - } - } else if this.JwksConfiguration == nil { - return false - } else if !this.JwksConfiguration.Equal(that1.JwksConfiguration) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_AppendServerName{` + + `AppendServerName:` + fmt.Sprintf("%#v", this.AppendServerName) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_PassThrough) GoString() string { + if this == nil { + return "nil" } - if !this.ReservedClaims.Equal(that1.ReservedClaims) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_PassThrough{` + + `PassThrough:` + fmt.Sprintf("%#v", this.PassThrough) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_EnablePathNormalize) GoString() string { + if this == nil { + return "nil" } - if !this.MandatoryClaims.Equal(that1.MandatoryClaims) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_EnablePathNormalize{` + + `EnablePathNormalize:` + fmt.Sprintf("%#v", this.EnablePathNormalize) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_DisablePathNormalize) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_DisablePathNormalize{` + + `DisablePathNormalize:` + fmt.Sprintf("%#v", this.DisablePathNormalize) + `}`}, ", ") + return s } -func (this *JWTValidation_AuthServerUri) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttps_Port) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*JWTValidation_AuthServerUri) - if !ok { - that2, ok := that.(JWTValidation_AuthServerUri) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_Port{` + + `Port:` + fmt.Sprintf("%#v", this.Port) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_PortRanges) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_PortRanges{` + + `PortRanges:` + fmt.Sprintf("%#v", this.PortRanges) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_NonDefaultLoadbalancer) GoString() string { + if this == nil { + return "nil" } - if this.AuthServerUri != that1.AuthServerUri { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_NonDefaultLoadbalancer{` + + `NonDefaultLoadbalancer:` + fmt.Sprintf("%#v", this.NonDefaultLoadbalancer) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttps_DefaultLoadbalancer) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_DefaultLoadbalancer{` + + `DefaultLoadbalancer:` + fmt.Sprintf("%#v", this.DefaultLoadbalancer) + `}`}, ", ") + return s } -func (this *JWTValidation_Jwks) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttp) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*JWTValidation_Jwks) - if !ok { - that2, ok := that.(JWTValidation_Jwks) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 7) + s = append(s, "&http_loadbalancer.ProxyTypeHttp{") + s = append(s, "DnsVolterraManaged: "+fmt.Sprintf("%#v", this.DnsVolterraManaged)+",\n") + if this.PortChoice != nil { + s = append(s, "PortChoice: "+fmt.Sprintf("%#v", this.PortChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ProxyTypeHttp_Port) GoString() string { + if this == nil { + return "nil" } - if this.Jwks != that1.Jwks { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttp_Port{` + + `Port:` + fmt.Sprintf("%#v", this.Port) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttp_PortRanges) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttp_PortRanges{` + + `PortRanges:` + fmt.Sprintf("%#v", this.PortRanges) + `}`}, ", ") + return s } -func (this *JWTValidation_JwksConfig) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttpsAutoCerts) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*JWTValidation_JwksConfig) - if !ok { - that2, ok := that.(JWTValidation_JwksConfig) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 22) + s = append(s, "&http_loadbalancer.ProxyTypeHttpsAutoCerts{") + s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") + s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") + if this.TlsConfig != nil { + s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.MtlsChoice != nil { + s = append(s, "MtlsChoice: "+fmt.Sprintf("%#v", this.MtlsChoice)+",\n") } - if !this.JwksConfig.Equal(that1.JwksConfig) { - return false + if this.ServerHeaderChoice != nil { + s = append(s, "ServerHeaderChoice: "+fmt.Sprintf("%#v", this.ServerHeaderChoice)+",\n") } - return true -} -func (this *MandatoryClaims) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.PathNormalizeChoice != nil { + s = append(s, "PathNormalizeChoice: "+fmt.Sprintf("%#v", this.PathNormalizeChoice)+",\n") } - - that1, ok := that.(*MandatoryClaims) - if !ok { - that2, ok := that.(MandatoryClaims) - if ok { - that1 = &that2 - } else { - return false - } + if this.PortChoice != nil { + s = append(s, "PortChoice: "+fmt.Sprintf("%#v", this.PortChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.DefaultLbChoice != nil { + s = append(s, "DefaultLbChoice: "+fmt.Sprintf("%#v", this.DefaultLbChoice)+",\n") } - if len(this.ClaimNames) != len(that1.ClaimNames) { - return false + if this.HeaderTransformationType != nil { + s = append(s, "HeaderTransformationType: "+fmt.Sprintf("%#v", this.HeaderTransformationType)+",\n") } - for i := range this.ClaimNames { - if this.ClaimNames[i] != that1.ClaimNames[i] { - return false - } + s = append(s, "ConnectionIdleTimeout: "+fmt.Sprintf("%#v", this.ConnectionIdleTimeout)+",\n") + if this.HttpProtocolOptions != nil { + s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *JWKS) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*JWKS) - if !ok { - that2, ok := that.(JWKS) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (this *ProxyTypeHttpsAutoCerts_NoMtls) GoString() string { + if this == nil { + return "nil" } - if this.Cleartext != that1.Cleartext { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_NoMtls{` + + `NoMtls:` + fmt.Sprintf("%#v", this.NoMtls) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_UseMtls) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_UseMtls{` + + `UseMtls:` + fmt.Sprintf("%#v", this.UseMtls) + `}`}, ", ") + return s } -func (this *Target) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*Target) - if !ok { - that2, ok := that.(Target) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_DefaultHeader{` + + `DefaultHeader:` + fmt.Sprintf("%#v", this.DefaultHeader) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_ServerName) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_ServerName{` + + `ServerName:` + fmt.Sprintf("%#v", this.ServerName) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_AppendServerName) GoString() string { + if this == nil { + return "nil" } - if that1.Target == nil { - if this.Target != nil { - return false - } - } else if this.Target == nil { - return false - } else if !this.Target.Equal(that1.Target) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_AppendServerName{` + + `AppendServerName:` + fmt.Sprintf("%#v", this.AppendServerName) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_PassThrough) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_PassThrough{` + + `PassThrough:` + fmt.Sprintf("%#v", this.PassThrough) + `}`}, ", ") + return s } -func (this *Target_AllEndpoint) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*Target_AllEndpoint) - if !ok { - that2, ok := that.(Target_AllEndpoint) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_EnablePathNormalize{` + + `EnablePathNormalize:` + fmt.Sprintf("%#v", this.EnablePathNormalize) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_DisablePathNormalize{` + + `DisablePathNormalize:` + fmt.Sprintf("%#v", this.DisablePathNormalize) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_Port) GoString() string { + if this == nil { + return "nil" } - if !this.AllEndpoint.Equal(that1.AllEndpoint) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_Port{` + + `Port:` + fmt.Sprintf("%#v", this.Port) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_PortRanges) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_PortRanges{` + + `PortRanges:` + fmt.Sprintf("%#v", this.PortRanges) + `}`}, ", ") + return s } -func (this *Target_ApiGroups) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*Target_ApiGroups) - if !ok { - that2, ok := that.(Target_ApiGroups) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer{` + + `NonDefaultLoadbalancer:` + fmt.Sprintf("%#v", this.NonDefaultLoadbalancer) + `}`}, ", ") + return s +} +func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_DefaultLoadbalancer{` + + `DefaultLoadbalancer:` + fmt.Sprintf("%#v", this.DefaultLoadbalancer) + `}`}, ", ") + return s +} +func (this *HashPolicyListType) GoString() string { + if this == nil { + return "nil" } - if !this.ApiGroups.Equal(that1.ApiGroups) { - return false + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.HashPolicyListType{") + if this.HashPolicy != nil { + s = append(s, "HashPolicy: "+fmt.Sprintf("%#v", this.HashPolicy)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *Target_BasePaths) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*Target_BasePaths) - if !ok { - that2, ok := that.(Target_BasePaths) - if ok { - that1 = &that2 - } else { - return false - } +func (this *MirrorPolicyType) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 6) + s = append(s, "&http_loadbalancer.MirrorPolicyType{") + if this.OriginPool != nil { + s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") } - if !this.BasePaths.Equal(that1.BasePaths) { - return false + if this.Percent != nil { + s = append(s, "Percent: "+fmt.Sprintf("%#v", this.Percent)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *TokenLocation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteSimpleAdvancedOptions) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*TokenLocation) - if !ok { - that2, ok := that.(TokenLocation) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 37) + s = append(s, "&http_loadbalancer.RouteSimpleAdvancedOptions{") + if this.HashPolicyChoice != nil { + s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if that1.TokenLocation == nil { - if this.TokenLocation != nil { - return false - } - } else if this.TokenLocation == nil { - return false - } else if !this.TokenLocation.Equal(that1.TokenLocation) { - return false + s = append(s, "Priority: "+fmt.Sprintf("%#v", this.Priority)+",\n") + keysForEndpointSubsets := make([]string, 0, len(this.EndpointSubsets)) + for k, _ := range this.EndpointSubsets { + keysForEndpointSubsets = append(keysForEndpointSubsets, k) } - return true -} -func (this *TokenLocation_BearerToken) Equal(that interface{}) bool { - if that == nil { - return this == nil + github_com_gogo_protobuf_sortkeys.Strings(keysForEndpointSubsets) + mapStringForEndpointSubsets := "map[string]string{" + for _, k := range keysForEndpointSubsets { + mapStringForEndpointSubsets += fmt.Sprintf("%#v: %#v,", k, this.EndpointSubsets[k]) } - - that1, ok := that.(*TokenLocation_BearerToken) - if !ok { - that2, ok := that.(TokenLocation_BearerToken) - if ok { - that1 = &that2 - } else { - return false - } + mapStringForEndpointSubsets += "}" + if this.EndpointSubsets != nil { + s = append(s, "EndpointSubsets: "+mapStringForEndpointSubsets+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.RewriteChoice != nil { + s = append(s, "RewriteChoice: "+fmt.Sprintf("%#v", this.RewriteChoice)+",\n") } - if !this.BearerToken.Equal(that1.BearerToken) { - return false + if this.RequestHeadersToAdd != nil { + s = append(s, "RequestHeadersToAdd: "+fmt.Sprintf("%#v", this.RequestHeadersToAdd)+",\n") } - return true -} -func (this *TokenLocation_Cookie) Equal(that interface{}) bool { - if that == nil { - return this == nil + s = append(s, "RequestHeadersToRemove: "+fmt.Sprintf("%#v", this.RequestHeadersToRemove)+",\n") + if this.ResponseHeadersToAdd != nil { + s = append(s, "ResponseHeadersToAdd: "+fmt.Sprintf("%#v", this.ResponseHeadersToAdd)+",\n") } - - that1, ok := that.(*TokenLocation_Cookie) - if !ok { - that2, ok := that.(TokenLocation_Cookie) - if ok { - that1 = &that2 - } else { - return false - } + s = append(s, "ResponseHeadersToRemove: "+fmt.Sprintf("%#v", this.ResponseHeadersToRemove)+",\n") + s = append(s, "DisableLocationAdd: "+fmt.Sprintf("%#v", this.DisableLocationAdd)+",\n") + if this.WafChoice != nil { + s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.CorsPolicy != nil { + s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") } - if this.Cookie != that1.Cookie { - return false + if this.CsrfPolicy != nil { + s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") } - return true -} -func (this *TokenLocation_Header) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.SpdyChoice != nil { + s = append(s, "SpdyChoice: "+fmt.Sprintf("%#v", this.SpdyChoice)+",\n") } - - that1, ok := that.(*TokenLocation_Header) - if !ok { - that2, ok := that.(TokenLocation_Header) - if ok { - that1 = &that2 - } else { - return false - } + if this.WebsocketChoice != nil { + s = append(s, "WebsocketChoice: "+fmt.Sprintf("%#v", this.WebsocketChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.RetryPolicyChoice != nil { + s = append(s, "RetryPolicyChoice: "+fmt.Sprintf("%#v", this.RetryPolicyChoice)+",\n") } - if this.Header != that1.Header { - return false + s = append(s, "Timeout: "+fmt.Sprintf("%#v", this.Timeout)+",\n") + if this.BufferChoice != nil { + s = append(s, "BufferChoice: "+fmt.Sprintf("%#v", this.BufferChoice)+",\n") } - return true -} -func (this *TokenLocation_QueryParam) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.MirroringChoice != nil { + s = append(s, "MirroringChoice: "+fmt.Sprintf("%#v", this.MirroringChoice)+",\n") } - - that1, ok := that.(*TokenLocation_QueryParam) - if !ok { - that2, ok := that.(TokenLocation_QueryParam) - if ok { - that1 = &that2 - } else { - return false - } + if this.ClusterRetractChoice != nil { + s = append(s, "ClusterRetractChoice: "+fmt.Sprintf("%#v", this.ClusterRetractChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.BotDefenseJavascriptInjectionChoice != nil { + s = append(s, "BotDefenseJavascriptInjectionChoice: "+fmt.Sprintf("%#v", this.BotDefenseJavascriptInjectionChoice)+",\n") } - if this.QueryParam != that1.QueryParam { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_CommonHashPolicy{` + + `CommonHashPolicy:` + fmt.Sprintf("%#v", this.CommonHashPolicy) + `}`}, ", ") + return s } -func (this *ReservedClaims) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims) - if !ok { - that2, ok := that.(ReservedClaims) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_SpecificHashPolicy{` + + `SpecificHashPolicy:` + fmt.Sprintf("%#v", this.SpecificHashPolicy) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisablePrefixRewrite{` + + `DisablePrefixRewrite:` + fmt.Sprintf("%#v", this.DisablePrefixRewrite) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_PrefixRewrite) GoString() string { + if this == nil { + return "nil" } - if that1.IssuerValidation == nil { - if this.IssuerValidation != nil { - return false - } - } else if this.IssuerValidation == nil { - return false - } else if !this.IssuerValidation.Equal(that1.IssuerValidation) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_PrefixRewrite{` + + `PrefixRewrite:` + fmt.Sprintf("%#v", this.PrefixRewrite) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_RegexRewrite) GoString() string { + if this == nil { + return "nil" } - if that1.AudienceValidation == nil { - if this.AudienceValidation != nil { - return false - } - } else if this.AudienceValidation == nil { - return false - } else if !this.AudienceValidation.Equal(that1.AudienceValidation) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_RegexRewrite{` + + `RegexRewrite:` + fmt.Sprintf("%#v", this.RegexRewrite) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_InheritedWaf) GoString() string { + if this == nil { + return "nil" } - if that1.ValidatePeriod == nil { - if this.ValidatePeriod != nil { - return false - } - } else if this.ValidatePeriod == nil { - return false - } else if !this.ValidatePeriod.Equal(that1.ValidatePeriod) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_InheritedWaf{` + + `InheritedWaf:` + fmt.Sprintf("%#v", this.InheritedWaf) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_AppFirewall) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_AppFirewall{` + + `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") + return s } -func (this *ReservedClaims_IssuerDisable) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteSimpleAdvancedOptions_DisableWaf) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims_IssuerDisable) - if !ok { - that2, ok := that.(ReservedClaims_IssuerDisable) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableWaf{` + + `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_DisableSpdy) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableSpdy{` + + `DisableSpdy:` + fmt.Sprintf("%#v", this.DisableSpdy) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_EnableSpdy) GoString() string { + if this == nil { + return "nil" } - if !this.IssuerDisable.Equal(that1.IssuerDisable) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_EnableSpdy{` + + `EnableSpdy:` + fmt.Sprintf("%#v", this.EnableSpdy) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableWebSocketConfig{` + + `DisableWebSocketConfig:` + fmt.Sprintf("%#v", this.DisableWebSocketConfig) + `}`}, ", ") + return s } -func (this *ReservedClaims_Issuer) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteSimpleAdvancedOptions_WebSocketConfig) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims_Issuer) - if !ok { - that2, ok := that.(ReservedClaims_Issuer) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_WebSocketConfig{` + + `WebSocketConfig:` + fmt.Sprintf("%#v", this.WebSocketConfig) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DefaultRetryPolicy{` + + `DefaultRetryPolicy:` + fmt.Sprintf("%#v", this.DefaultRetryPolicy) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) GoString() string { + if this == nil { + return "nil" } - if this.Issuer != that1.Issuer { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_NoRetryPolicy{` + + `NoRetryPolicy:` + fmt.Sprintf("%#v", this.NoRetryPolicy) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_RetryPolicy) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_RetryPolicy{` + + `RetryPolicy:` + fmt.Sprintf("%#v", this.RetryPolicy) + `}`}, ", ") + return s } -func (this *ReservedClaims_AudienceDisable) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteSimpleAdvancedOptions_CommonBuffering) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims_AudienceDisable) - if !ok { - that2, ok := that.(ReservedClaims_AudienceDisable) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_CommonBuffering{` + + `CommonBuffering:` + fmt.Sprintf("%#v", this.CommonBuffering) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_BufferPolicy) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_BufferPolicy{` + + `BufferPolicy:` + fmt.Sprintf("%#v", this.BufferPolicy) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_DisableMirroring) GoString() string { + if this == nil { + return "nil" } - if !this.AudienceDisable.Equal(that1.AudienceDisable) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableMirroring{` + + `DisableMirroring:` + fmt.Sprintf("%#v", this.DisableMirroring) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_MirrorPolicy) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_MirrorPolicy{` + + `MirrorPolicy:` + fmt.Sprintf("%#v", this.MirrorPolicy) + `}`}, ", ") + return s } -func (this *ReservedClaims_Audience) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteSimpleAdvancedOptions_RetractCluster) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims_Audience) - if !ok { - that2, ok := that.(ReservedClaims_Audience) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_RetractCluster{` + + `RetractCluster:` + fmt.Sprintf("%#v", this.RetractCluster) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DoNotRetractCluster{` + + `DoNotRetractCluster:` + fmt.Sprintf("%#v", this.DoNotRetractCluster) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) GoString() string { + if this == nil { + return "nil" } - if !this.Audience.Equal(that1.Audience) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection{` + + `InheritedBotDefenseJavascriptInjection:` + fmt.Sprintf("%#v", this.InheritedBotDefenseJavascriptInjection) + `}`}, ", ") + return s +} +func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection{` + + `BotDefenseJavascriptInjection:` + fmt.Sprintf("%#v", this.BotDefenseJavascriptInjection) + `}`}, ", ") + return s } -func (this *ReservedClaims_ValidatePeriodDisable) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteTypeSimpleWithDefaultOriginPool) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims_ValidatePeriodDisable) - if !ok { - that2, ok := that.(ReservedClaims_ValidatePeriodDisable) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 9) + s = append(s, "&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool{") + s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.HostRewriteParams != nil { + s = append(s, "HostRewriteParams: "+fmt.Sprintf("%#v", this.HostRewriteParams)+",\n") } - if !this.ValidatePeriodDisable.Equal(that1.ValidatePeriodDisable) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite{` + + `AutoHostRewrite:` + fmt.Sprintf("%#v", this.AutoHostRewrite) + `}`}, ", ") + return s } -func (this *ReservedClaims_ValidatePeriodEnable) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReservedClaims_ValidatePeriodEnable) - if !ok { - that2, ok := that.(ReservedClaims_ValidatePeriodEnable) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool_HostRewrite{` + + `HostRewrite:` + fmt.Sprintf("%#v", this.HostRewrite) + `}`}, ", ") + return s +} +func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite{` + + `DisableHostRewrite:` + fmt.Sprintf("%#v", this.DisableHostRewrite) + `}`}, ", ") + return s +} +func (this *RouteTypeSimple) GoString() string { + if this == nil { + return "nil" } - if !this.ValidatePeriodEnable.Equal(that1.ValidatePeriodEnable) { - return false + s := make([]string, 0, 13) + s = append(s, "&http_loadbalancer.RouteTypeSimple{") + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - return true -} -func (this *APIGroups) Equal(that interface{}) bool { - if that == nil { - return this == nil + s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") + if this.OriginPools != nil { + s = append(s, "OriginPools: "+fmt.Sprintf("%#v", this.OriginPools)+",\n") } - - that1, ok := that.(*APIGroups) - if !ok { - that2, ok := that.(APIGroups) - if ok { - that1 = &that2 - } else { - return false - } + if this.HostRewriteParams != nil { + s = append(s, "HostRewriteParams: "+fmt.Sprintf("%#v", this.HostRewriteParams)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") } - if len(this.ApiGroups) != len(that1.ApiGroups) { - return false + if this.IncomingPort != nil { + s = append(s, "IncomingPort: "+fmt.Sprintf("%#v", this.IncomingPort)+",\n") } - for i := range this.ApiGroups { - if this.ApiGroups[i] != that1.ApiGroups[i] { - return false - } + if this.AdvancedOptions != nil { + s = append(s, "AdvancedOptions: "+fmt.Sprintf("%#v", this.AdvancedOptions)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *BasePathsType) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RouteTypeSimple_AutoHostRewrite) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*BasePathsType) - if !ok { - that2, ok := that.(BasePathsType) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimple_AutoHostRewrite{` + + `AutoHostRewrite:` + fmt.Sprintf("%#v", this.AutoHostRewrite) + `}`}, ", ") + return s +} +func (this *RouteTypeSimple_HostRewrite) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimple_HostRewrite{` + + `HostRewrite:` + fmt.Sprintf("%#v", this.HostRewrite) + `}`}, ", ") + return s +} +func (this *RouteTypeSimple_DisableHostRewrite) GoString() string { + if this == nil { + return "nil" } - if len(this.BasePaths) != len(that1.BasePaths) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimple_DisableHostRewrite{` + + `DisableHostRewrite:` + fmt.Sprintf("%#v", this.DisableHostRewrite) + `}`}, ", ") + return s +} +func (this *RouteTypeRedirect) GoString() string { + if this == nil { + return "nil" } - for i := range this.BasePaths { - if this.BasePaths[i] != that1.BasePaths[i] { - return false - } + s := make([]string, 0, 9) + s = append(s, "&http_loadbalancer.RouteTypeRedirect{") + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - return true -} -func (this *Audiences) Equal(that interface{}) bool { - if that == nil { - return this == nil + s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") + if this.RouteRedirect != nil { + s = append(s, "RouteRedirect: "+fmt.Sprintf("%#v", this.RouteRedirect)+",\n") } - - that1, ok := that.(*Audiences) - if !ok { - that2, ok := that.(Audiences) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Audiences) != len(that1.Audiences) { - return false + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") } - for i := range this.Audiences { - if this.Audiences[i] != that1.Audiences[i] { - return false - } + if this.IncomingPort != nil { + s = append(s, "IncomingPort: "+fmt.Sprintf("%#v", this.IncomingPort)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType) - if !ok { - that2, ok := that.(CreateSpecType) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (this *RouteTypeDirectResponse) GoString() string { + if this == nil { + return "nil" } - if len(this.Domains) != len(that1.Domains) { - return false + s := make([]string, 0, 9) + s = append(s, "&http_loadbalancer.RouteTypeDirectResponse{") + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { - return false - } + s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") + if this.RouteDirectResponse != nil { + s = append(s, "RouteDirectResponse: "+fmt.Sprintf("%#v", this.RouteDirectResponse)+",\n") } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { - return false - } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") } - if that1.AdvertiseChoice == nil { - if this.AdvertiseChoice != nil { - return false - } - } else if this.AdvertiseChoice == nil { - return false - } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { - return false + if this.IncomingPort != nil { + s = append(s, "IncomingPort: "+fmt.Sprintf("%#v", this.IncomingPort)+",\n") } - if len(this.DefaultRoutePools) != len(that1.DefaultRoutePools) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RouteTypeCustomRoute) GoString() string { + if this == nil { + return "nil" } - for i := range this.DefaultRoutePools { - if !this.DefaultRoutePools[i].Equal(that1.DefaultRoutePools[i]) { - return false - } + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.RouteTypeCustomRoute{") + if this.RouteRef != nil { + s = append(s, "RouteRef: "+fmt.Sprintf("%#v", this.RouteRef)+",\n") } - if that1.OriginPoolChoice == nil { - if this.OriginPoolChoice != nil { - return false - } - } else if this.OriginPoolChoice == nil { - return false - } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RouteType) GoString() string { + if this == nil { + return "nil" } - if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { - return false + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.RouteType{") + if this.Choice != nil { + s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") } - if len(this.Routes) != len(that1.Routes) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RouteType_SimpleRoute) GoString() string { + if this == nil { + return "nil" } - for i := range this.Routes { - if !this.Routes[i].Equal(that1.Routes[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.RouteType_SimpleRoute{` + + `SimpleRoute:` + fmt.Sprintf("%#v", this.SimpleRoute) + `}`}, ", ") + return s +} +func (this *RouteType_RedirectRoute) GoString() string { + if this == nil { + return "nil" } - if !this.CorsPolicy.Equal(that1.CorsPolicy) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteType_RedirectRoute{` + + `RedirectRoute:` + fmt.Sprintf("%#v", this.RedirectRoute) + `}`}, ", ") + return s +} +func (this *RouteType_DirectResponseRoute) GoString() string { + if this == nil { + return "nil" } - if that1.WafChoice == nil { - if this.WafChoice != nil { - return false - } - } else if this.WafChoice == nil { - return false - } else if !this.WafChoice.Equal(that1.WafChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteType_DirectResponseRoute{` + + `DirectResponseRoute:` + fmt.Sprintf("%#v", this.DirectResponseRoute) + `}`}, ", ") + return s +} +func (this *RouteType_CustomRouteObject) GoString() string { + if this == nil { + return "nil" } - if this.AddLocation != that1.AddLocation { - return false + s := strings.Join([]string{`&http_loadbalancer.RouteType_CustomRouteObject{` + + `CustomRouteObject:` + fmt.Sprintf("%#v", this.CustomRouteObject) + `}`}, ", ") + return s +} +func (this *AdvancedOptionsType) GoString() string { + if this == nil { + return "nil" } - if that1.ChallengeType == nil { - if this.ChallengeType != nil { - return false - } - } else if this.ChallengeType == nil { - return false - } else if !this.ChallengeType.Equal(that1.ChallengeType) { - return false + s := make([]string, 0, 21) + s = append(s, "&http_loadbalancer.AdvancedOptionsType{") + if this.RequestHeadersToAdd != nil { + s = append(s, "RequestHeadersToAdd: "+fmt.Sprintf("%#v", this.RequestHeadersToAdd)+",\n") } - if !this.MoreOption.Equal(that1.MoreOption) { - return false + s = append(s, "RequestHeadersToRemove: "+fmt.Sprintf("%#v", this.RequestHeadersToRemove)+",\n") + if this.ResponseHeadersToAdd != nil { + s = append(s, "ResponseHeadersToAdd: "+fmt.Sprintf("%#v", this.ResponseHeadersToAdd)+",\n") } - if that1.UserIdChoice == nil { - if this.UserIdChoice != nil { - return false - } - } else if this.UserIdChoice == nil { - return false - } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { - return false + s = append(s, "ResponseHeadersToRemove: "+fmt.Sprintf("%#v", this.ResponseHeadersToRemove)+",\n") + s = append(s, "MaxRequestHeaderSize: "+fmt.Sprintf("%#v", this.MaxRequestHeaderSize)+",\n") + if this.BufferPolicy != nil { + s = append(s, "BufferPolicy: "+fmt.Sprintf("%#v", this.BufferPolicy)+",\n") } - if that1.RateLimitChoice == nil { - if this.RateLimitChoice != nil { - return false - } - } else if this.RateLimitChoice == nil { - return false - } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { - return false + if this.CompressionParams != nil { + s = append(s, "CompressionParams: "+fmt.Sprintf("%#v", this.CompressionParams)+",\n") } - if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { - return false + keysForCustomErrors := make([]uint32, 0, len(this.CustomErrors)) + for k, _ := range this.CustomErrors { + keysForCustomErrors = append(keysForCustomErrors, k) } - if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { - return false + github_com_gogo_protobuf_sortkeys.Uint32s(keysForCustomErrors) + mapStringForCustomErrors := "map[uint32]string{" + for _, k := range keysForCustomErrors { + mapStringForCustomErrors += fmt.Sprintf("%#v: %#v,", k, this.CustomErrors[k]) } - for i := range this.WafExclusionRules { - if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { - return false - } + mapStringForCustomErrors += "}" + if this.CustomErrors != nil { + s = append(s, "CustomErrors: "+mapStringForCustomErrors+",\n") } - if len(this.DataGuardRules) != len(that1.DataGuardRules) { - return false + if this.JavascriptInfo != nil { + s = append(s, "JavascriptInfo: "+fmt.Sprintf("%#v", this.JavascriptInfo)+",\n") } - for i := range this.DataGuardRules { - if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { - return false - } + if this.Jwt != nil { + s = append(s, "Jwt: "+fmt.Sprintf("%#v", this.Jwt)+",\n") } - if len(this.BlockedClients) != len(that1.BlockedClients) { - return false + s = append(s, "IdleTimeout: "+fmt.Sprintf("%#v", this.IdleTimeout)+",\n") + s = append(s, "DisableDefaultErrorPages: "+fmt.Sprintf("%#v", this.DisableDefaultErrorPages)+",\n") + if this.PathNormalizeChoice != nil { + s = append(s, "PathNormalizeChoice: "+fmt.Sprintf("%#v", this.PathNormalizeChoice)+",\n") } - for i := range this.BlockedClients { - if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { - return false - } + if this.StrictSniHostHeaderCheckChoice != nil { + s = append(s, "StrictSniHostHeaderCheckChoice: "+fmt.Sprintf("%#v", this.StrictSniHostHeaderCheckChoice)+",\n") } - if len(this.TrustedClients) != len(that1.TrustedClients) { - return false + if this.CookiesToModify != nil { + s = append(s, "CookiesToModify: "+fmt.Sprintf("%#v", this.CookiesToModify)+",\n") } - for i := range this.TrustedClients { - if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { - return false - } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AdvancedOptionsType_EnablePathNormalize) GoString() string { + if this == nil { + return "nil" } - if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { - return false + s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_EnablePathNormalize{` + + `EnablePathNormalize:` + fmt.Sprintf("%#v", this.EnablePathNormalize) + `}`}, ", ") + return s +} +func (this *AdvancedOptionsType_DisablePathNormalize) GoString() string { + if this == nil { + return "nil" } - if len(this.DdosMitigationRules) != len(that1.DdosMitigationRules) { - return false + s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_DisablePathNormalize{` + + `DisablePathNormalize:` + fmt.Sprintf("%#v", this.DisablePathNormalize) + `}`}, ", ") + return s +} +func (this *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) GoString() string { + if this == nil { + return "nil" } - for i := range this.DdosMitigationRules { - if !this.DdosMitigationRules[i].Equal(that1.DdosMitigationRules[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_EnableStrictSniHostHeaderCheck{` + + `EnableStrictSniHostHeaderCheck:` + fmt.Sprintf("%#v", this.EnableStrictSniHostHeaderCheck) + `}`}, ", ") + return s +} +func (this *AdvancedOptionsType_AdditionalDomains) GoString() string { + if this == nil { + return "nil" } - if that1.ServicePolicyChoice == nil { - if this.ServicePolicyChoice != nil { - return false - } - } else if this.ServicePolicyChoice == nil { - return false - } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_AdditionalDomains{` + + `AdditionalDomains:` + fmt.Sprintf("%#v", this.AdditionalDomains) + `}`}, ", ") + return s +} +func (this *DDoSClientSource) GoString() string { + if this == nil { + return "nil" } - if that1.HashPolicyChoice == nil { - if this.HashPolicyChoice != nil { - return false - } - } else if this.HashPolicyChoice == nil { - return false - } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { - return false + s := make([]string, 0, 7) + s = append(s, "&http_loadbalancer.DDoSClientSource{") + if this.AsnList != nil { + s = append(s, "AsnList: "+fmt.Sprintf("%#v", this.AsnList)+",\n") } - if that1.TrustClientIpHeadersChoice == nil { - if this.TrustClientIpHeadersChoice != nil { - return false - } - } else if this.TrustClientIpHeadersChoice == nil { - return false - } else if !this.TrustClientIpHeadersChoice.Equal(that1.TrustClientIpHeadersChoice) { - return false + s = append(s, "CountryList: "+fmt.Sprintf("%#v", this.CountryList)+",\n") + if this.TlsFingerprintMatcher != nil { + s = append(s, "TlsFingerprintMatcher: "+fmt.Sprintf("%#v", this.TlsFingerprintMatcher)+",\n") } - if that1.MlConfigChoice == nil { - if this.MlConfigChoice != nil { - return false - } - } else if this.MlConfigChoice == nil { - return false - } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DDoSMitigationRule) GoString() string { + if this == nil { + return "nil" } - if that1.DdosDetectionChoice == nil { - if this.DdosDetectionChoice != nil { - return false - } - } else if this.DdosDetectionChoice == nil { - return false - } else if !this.DdosDetectionChoice.Equal(that1.DdosDetectionChoice) { - return false + s := make([]string, 0, 9) + s = append(s, "&http_loadbalancer.DDoSMitigationRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if that1.MaliciousUserDetectionChoice == nil { - if this.MaliciousUserDetectionChoice != nil { - return false - } - } else if this.MaliciousUserDetectionChoice == nil { - return false - } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { - return false + if this.MitigationAction != nil { + s = append(s, "MitigationAction: "+fmt.Sprintf("%#v", this.MitigationAction)+",\n") } - if that1.ApiDiscoveryChoice == nil { - if this.ApiDiscoveryChoice != nil { - return false - } - } else if this.ApiDiscoveryChoice == nil { - return false - } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { - return false + if this.MitigationChoice != nil { + s = append(s, "MitigationChoice: "+fmt.Sprintf("%#v", this.MitigationChoice)+",\n") } - if that1.BotDefenseChoice == nil { - if this.BotDefenseChoice != nil { - return false - } - } else if this.BotDefenseChoice == nil { - return false - } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { - return false + if this.ExpirationTimestamp != nil { + s = append(s, "ExpirationTimestamp: "+fmt.Sprintf("%#v", this.ExpirationTimestamp)+",\n") } - if that1.ApiDefinitionChoice == nil { - if this.ApiDefinitionChoice != nil { - return false - } - } else if this.ApiDefinitionChoice == nil { - return false - } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DDoSMitigationRule_Block) GoString() string { + if this == nil { + return "nil" } - if that1.IpReputationChoice == nil { - if this.IpReputationChoice != nil { - return false - } - } else if this.IpReputationChoice == nil { - return false - } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.DDoSMitigationRule_Block{` + + `Block:` + fmt.Sprintf("%#v", this.Block) + `}`}, ", ") + return s +} +func (this *DDoSMitigationRule_DdosClientSource) GoString() string { + if this == nil { + return "nil" } - if that1.ClientSideDefenseChoice == nil { - if this.ClientSideDefenseChoice != nil { - return false - } - } else if this.ClientSideDefenseChoice == nil { - return false - } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.DDoSMitigationRule_DdosClientSource{` + + `DdosClientSource:` + fmt.Sprintf("%#v", this.DdosClientSource) + `}`}, ", ") + return s +} +func (this *DDoSMitigationRule_IpPrefixList) GoString() string { + if this == nil { + return "nil" } - if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { - return false + s := strings.Join([]string{`&http_loadbalancer.DDoSMitigationRule_IpPrefixList{` + + `IpPrefixList:` + fmt.Sprintf("%#v", this.IpPrefixList) + `}`}, ", ") + return s +} +func (this *SingleLoadBalancerAppSetting) GoString() string { + if this == nil { + return "nil" } - if len(this.GraphqlRules) != len(that1.GraphqlRules) { - return false + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.SingleLoadBalancerAppSetting{") + if this.ApiDiscoveryChoice != nil { + s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") } - for i := range this.GraphqlRules { - if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { - return false - } + if this.MaliciousUserDetectionChoice != nil { + s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") } - if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SingleLoadBalancerAppSetting_EnableDiscovery) GoString() string { + if this == nil { + return "nil" } - for i := range this.ProtectedCookies { - if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_EnableDiscovery{` + + `EnableDiscovery:` + fmt.Sprintf("%#v", this.EnableDiscovery) + `}`}, ", ") + return s +} +func (this *SingleLoadBalancerAppSetting_DisableDiscovery) GoString() string { + if this == nil { + return "nil" } - if that1.SlowDdosMitigationChoice == nil { - if this.SlowDdosMitigationChoice != nil { - return false - } - } else if this.SlowDdosMitigationChoice == nil { - return false - } else if !this.SlowDdosMitigationChoice.Equal(that1.SlowDdosMitigationChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_DisableDiscovery{` + + `DisableDiscovery:` + fmt.Sprintf("%#v", this.DisableDiscovery) + `}`}, ", ") + return s +} +func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if !this.JwtValidation.Equal(that1.JwtValidation) { - return false + s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{` + + `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if that1.ThreatIntelligenceChoice == nil { - if this.ThreatIntelligenceChoice != nil { - return false - } - } else if this.ThreatIntelligenceChoice == nil { - return false - } else if !this.ThreatIntelligenceChoice.Equal(that1.ThreatIntelligenceChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_DisableMaliciousUserDetection{` + + `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *OriginServerSubsetRuleListType) GoString() string { + if this == nil { + return "nil" } - if that1.L7DdosAutoMitigationAction == nil { - if this.L7DdosAutoMitigationAction != nil { - return false - } - } else if this.L7DdosAutoMitigationAction == nil { - return false - } else if !this.L7DdosAutoMitigationAction.Equal(that1.L7DdosAutoMitigationAction) { - return false + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.OriginServerSubsetRuleListType{") + if this.OriginServerSubsetRules != nil { + s = append(s, "OriginServerSubsetRules: "+fmt.Sprintf("%#v", this.OriginServerSubsetRules)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_Http) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ClientSideDefenseType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_Http) - if !ok { - that2, ok := that.(CreateSpecType_Http) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.ClientSideDefenseType{") + if this.Policy != nil { + s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ClientSideDefensePolicyType) GoString() string { + if this == nil { + return "nil" } - if !this.Http.Equal(that1.Http) { - return false + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.ClientSideDefensePolicyType{") + if this.JavaScriptChoice != nil { + s = append(s, "JavaScriptChoice: "+fmt.Sprintf("%#v", this.JavaScriptChoice)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_HttpsAutoCert) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ClientSideDefensePolicyType_DisableJsInsert) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_HttpsAutoCert) - if !ok { - that2, ok := that.(CreateSpecType_HttpsAutoCert) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_DisableJsInsert{` + + `DisableJsInsert:` + fmt.Sprintf("%#v", this.DisableJsInsert) + `}`}, ", ") + return s +} +func (this *ClientSideDefensePolicyType_JsInsertAllPages) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_JsInsertAllPages{` + + `JsInsertAllPages:` + fmt.Sprintf("%#v", this.JsInsertAllPages) + `}`}, ", ") + return s +} +func (this *ClientSideDefensePolicyType_JsInsertAllPagesExcept) GoString() string { + if this == nil { + return "nil" } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { - return false + s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_JsInsertAllPagesExcept{` + + `JsInsertAllPagesExcept:` + fmt.Sprintf("%#v", this.JsInsertAllPagesExcept) + `}`}, ", ") + return s +} +func (this *ClientSideDefensePolicyType_JsInsertionRules) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_JsInsertionRules{` + + `JsInsertionRules:` + fmt.Sprintf("%#v", this.JsInsertionRules) + `}`}, ", ") + return s } -func (this *CreateSpecType_Https) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CSDJavaScriptInsertAllWithExceptionsType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_Https) - if !ok { - that2, ok := that.(CreateSpecType_Https) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType{") + if this.ExcludeList != nil { + s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CSDJavaScriptInsertType) GoString() string { + if this == nil { + return "nil" } - if !this.Https.Equal(that1.Https) { - return false + s := make([]string, 0, 6) + s = append(s, "&http_loadbalancer.CSDJavaScriptInsertType{") + if this.Rules != nil { + s = append(s, "Rules: "+fmt.Sprintf("%#v", this.Rules)+",\n") } - return true + if this.ExcludeList != nil { + s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_DoNotAdvertise) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CSDJavaScriptInsertionRule) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DoNotAdvertise) - if !ok { - that2, ok := that.(CreateSpecType_DoNotAdvertise) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.CSDJavaScriptInsertionRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.DomainMatcherChoice != nil { + s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") } - if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { - return false + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CSDJavaScriptInsertionRule_AnyDomain) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_AdvertiseOnPublicDefaultVip) - if !ok { - that2, ok := that.(CreateSpecType_AdvertiseOnPublicDefaultVip) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CSDJavaScriptInsertionRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *CSDJavaScriptInsertionRule_Domain) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CSDJavaScriptInsertionRule_Domain{` + + `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") + return s +} +func (this *BotDefenseAdvancedPolicyType) GoString() string { + if this == nil { + return "nil" } - if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { - return false + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.BotDefenseAdvancedPolicyType{") + if this.ProtectedAppEndpoints != nil { + s = append(s, "ProtectedAppEndpoints: "+fmt.Sprintf("%#v", this.ProtectedAppEndpoints)+",\n") } - return true + s = append(s, "JsDownloadPath: "+fmt.Sprintf("%#v", this.JsDownloadPath)+",\n") + if this.MobileSdkChoice != nil { + s = append(s, "MobileSdkChoice: "+fmt.Sprintf("%#v", this.MobileSdkChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_AdvertiseOnPublic) - if !ok { - that2, ok := that.(CreateSpecType_AdvertiseOnPublic) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.BotDefenseAdvancedPolicyType_DisableMobileSdk{` + + `DisableMobileSdk:` + fmt.Sprintf("%#v", this.DisableMobileSdk) + `}`}, ", ") + return s +} +func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.BotDefenseAdvancedPolicyType_MobileSdkConfig{` + + `MobileSdkConfig:` + fmt.Sprintf("%#v", this.MobileSdkConfig) + `}`}, ", ") + return s +} +func (this *BotAdvancedMobileSDKConfigType) GoString() string { + if this == nil { + return "nil" } - if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { - return false + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.BotAdvancedMobileSDKConfigType{") + if this.MobileIdentifier != nil { + s = append(s, "MobileIdentifier: "+fmt.Sprintf("%#v", this.MobileIdentifier)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_AdvertiseCustom) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProtectedAppEndpointType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_AdvertiseCustom) - if !ok { - that2, ok := that.(CreateSpecType_AdvertiseCustom) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 16) + s = append(s, "&http_loadbalancer.ProtectedAppEndpointType{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.DomainMatcherChoice != nil { + s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") } - if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { - return false + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - return true -} -func (this *CreateSpecType_DefaultPool) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.Query != nil { + s = append(s, "Query: "+fmt.Sprintf("%#v", this.Query)+",\n") } - - that1, ok := that.(*CreateSpecType_DefaultPool) - if !ok { - that2, ok := that.(CreateSpecType_DefaultPool) - if ok { - that1 = &that2 - } else { - return false - } + if this.RequestBody != nil { + s = append(s, "RequestBody: "+fmt.Sprintf("%#v", this.RequestBody)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "HttpMethods: "+fmt.Sprintf("%#v", this.HttpMethods)+",\n") + if this.AppTrafficTypeChoice != nil { + s = append(s, "AppTrafficTypeChoice: "+fmt.Sprintf("%#v", this.AppTrafficTypeChoice)+",\n") } - if !this.DefaultPool.Equal(that1.DefaultPool) { - return false + if this.FlowLabelChoice != nil { + s = append(s, "FlowLabelChoice: "+fmt.Sprintf("%#v", this.FlowLabelChoice)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_DefaultPoolList) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_DefaultPoolList) - if !ok { - that2, ok := that.(CreateSpecType_DefaultPoolList) - if ok { - that1 = &that2 - } else { - return false - } +func (this *ProtectedAppEndpointType_AnyDomain) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *ProtectedAppEndpointType_Domain) GoString() string { + if this == nil { + return "nil" } - if !this.DefaultPoolList.Equal(that1.DefaultPoolList) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_Domain{` + + `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") + return s +} +func (this *ProtectedAppEndpointType_WebClient) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_WebClient{` + + `WebClient:` + fmt.Sprintf("%#v", this.WebClient) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableWaf) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ProtectedAppEndpointType_MobileClient) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableWaf) - if !ok { - that2, ok := that.(CreateSpecType_DisableWaf) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_MobileClient{` + + `MobileClient:` + fmt.Sprintf("%#v", this.MobileClient) + `}`}, ", ") + return s +} +func (this *ProtectedAppEndpointType_WebMobileClient) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_WebMobileClient{` + + `WebMobileClient:` + fmt.Sprintf("%#v", this.WebMobileClient) + `}`}, ", ") + return s +} +func (this *ProtectedAppEndpointType_UndefinedFlowLabel) GoString() string { + if this == nil { + return "nil" } - if !this.DisableWaf.Equal(that1.DisableWaf) { - return false + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_UndefinedFlowLabel{` + + `UndefinedFlowLabel:` + fmt.Sprintf("%#v", this.UndefinedFlowLabel) + `}`}, ", ") + return s +} +func (this *ProtectedAppEndpointType_FlowLabel) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_FlowLabel{` + + `FlowLabel:` + fmt.Sprintf("%#v", this.FlowLabel) + `}`}, ", ") + return s } -func (this *CreateSpecType_AppFirewall) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *RequestBody) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_AppFirewall) - if !ok { - that2, ok := that.(CreateSpecType_AppFirewall) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 7) + s = append(s, "&http_loadbalancer.RequestBody{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + if this.ValueType != nil { + s = append(s, "ValueType: "+fmt.Sprintf("%#v", this.ValueType)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *RequestBody_ExactValue) GoString() string { + if this == nil { + return "nil" } - if !this.AppFirewall.Equal(that1.AppFirewall) { - return false + s := strings.Join([]string{`&http_loadbalancer.RequestBody_ExactValue{` + + `ExactValue:` + fmt.Sprintf("%#v", this.ExactValue) + `}`}, ", ") + return s +} +func (this *RequestBody_RegexValue) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.RequestBody_RegexValue{` + + `RegexValue:` + fmt.Sprintf("%#v", this.RegexValue) + `}`}, ", ") + return s } -func (this *CreateSpecType_NoChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *Query) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_NoChallenge) - if !ok { - that2, ok := that.(CreateSpecType_NoChallenge) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.Query{") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + if this.ValueType != nil { + s = append(s, "ValueType: "+fmt.Sprintf("%#v", this.ValueType)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Query_ExactValue) GoString() string { + if this == nil { + return "nil" } - if !this.NoChallenge.Equal(that1.NoChallenge) { - return false + s := strings.Join([]string{`&http_loadbalancer.Query_ExactValue{` + + `ExactValue:` + fmt.Sprintf("%#v", this.ExactValue) + `}`}, ", ") + return s +} +func (this *Query_RegexValue) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.Query_RegexValue{` + + `RegexValue:` + fmt.Sprintf("%#v", this.RegexValue) + `}`}, ", ") + return s } -func (this *CreateSpecType_EnableChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *Query_CheckPresence) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_EnableChallenge) - if !ok { - that2, ok := that.(CreateSpecType_EnableChallenge) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.Query_CheckPresence{` + + `CheckPresence:` + fmt.Sprintf("%#v", this.CheckPresence) + `}`}, ", ") + return s +} +func (this *ShapeBotDefenseType) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 9) + s = append(s, "&http_loadbalancer.ShapeBotDefenseType{") + s = append(s, "RegionalEndpoint: "+fmt.Sprintf("%#v", this.RegionalEndpoint)+",\n") + if this.Policy != nil { + s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") } - if !this.EnableChallenge.Equal(that1.EnableChallenge) { - return false + s = append(s, "Timeout: "+fmt.Sprintf("%#v", this.Timeout)+",\n") + if this.CorsSupportChoice != nil { + s = append(s, "CorsSupportChoice: "+fmt.Sprintf("%#v", this.CorsSupportChoice)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_JsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_JsChallenge) - if !ok { - that2, ok := that.(CreateSpecType_JsChallenge) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (this *ShapeBotDefenseType_EnableCorsSupport) GoString() string { + if this == nil { + return "nil" } - if !this.JsChallenge.Equal(that1.JsChallenge) { - return false + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefenseType_EnableCorsSupport{` + + `EnableCorsSupport:` + fmt.Sprintf("%#v", this.EnableCorsSupport) + `}`}, ", ") + return s +} +func (this *ShapeBotDefenseType_DisableCorsSupport) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefenseType_DisableCorsSupport{` + + `DisableCorsSupport:` + fmt.Sprintf("%#v", this.DisableCorsSupport) + `}`}, ", ") + return s } -func (this *CreateSpecType_CaptchaChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *BotDefenseAdvancedType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_CaptchaChallenge) - if !ok { - that2, ok := that.(CreateSpecType_CaptchaChallenge) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 7) + s = append(s, "&http_loadbalancer.BotDefenseAdvancedType{") + if this.Web != nil { + s = append(s, "Web: "+fmt.Sprintf("%#v", this.Web)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.Mobile != nil { + s = append(s, "Mobile: "+fmt.Sprintf("%#v", this.Mobile)+",\n") } - if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { - return false + if this.Policy != nil { + s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ShapeBotDefensePolicyType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_PolicyBasedChallenge) - if !ok { - that2, ok := that.(CreateSpecType_PolicyBasedChallenge) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 13) + s = append(s, "&http_loadbalancer.ShapeBotDefensePolicyType{") + if this.ProtectedAppEndpoints != nil { + s = append(s, "ProtectedAppEndpoints: "+fmt.Sprintf("%#v", this.ProtectedAppEndpoints)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.JavaScriptChoice != nil { + s = append(s, "JavaScriptChoice: "+fmt.Sprintf("%#v", this.JavaScriptChoice)+",\n") } - if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { - return false + s = append(s, "JsDownloadPath: "+fmt.Sprintf("%#v", this.JsDownloadPath)+",\n") + s = append(s, "JavascriptMode: "+fmt.Sprintf("%#v", this.JavascriptMode)+",\n") + if this.MobileSdkChoice != nil { + s = append(s, "MobileSdkChoice: "+fmt.Sprintf("%#v", this.MobileSdkChoice)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_UserIdClientIp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_UserIdClientIp) - if !ok { - that2, ok := that.(CreateSpecType_UserIdClientIp) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (this *ShapeBotDefensePolicyType_DisableJsInsert) GoString() string { + if this == nil { + return "nil" } - if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { - return false + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_DisableJsInsert{` + + `DisableJsInsert:` + fmt.Sprintf("%#v", this.DisableJsInsert) + `}`}, ", ") + return s +} +func (this *ShapeBotDefensePolicyType_JsInsertAllPages) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_JsInsertAllPages{` + + `JsInsertAllPages:` + fmt.Sprintf("%#v", this.JsInsertAllPages) + `}`}, ", ") + return s } -func (this *CreateSpecType_UserIdentification) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_UserIdentification) - if !ok { - that2, ok := that.(CreateSpecType_UserIdentification) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_JsInsertAllPagesExcept{` + + `JsInsertAllPagesExcept:` + fmt.Sprintf("%#v", this.JsInsertAllPagesExcept) + `}`}, ", ") + return s +} +func (this *ShapeBotDefensePolicyType_JsInsertionRules) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_JsInsertionRules{` + + `JsInsertionRules:` + fmt.Sprintf("%#v", this.JsInsertionRules) + `}`}, ", ") + return s +} +func (this *ShapeBotDefensePolicyType_DisableMobileSdk) GoString() string { + if this == nil { + return "nil" } - if !this.UserIdentification.Equal(that1.UserIdentification) { - return false + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_DisableMobileSdk{` + + `DisableMobileSdk:` + fmt.Sprintf("%#v", this.DisableMobileSdk) + `}`}, ", ") + return s +} +func (this *ShapeBotDefensePolicyType_MobileSdkConfig) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_MobileSdkConfig{` + + `MobileSdkConfig:` + fmt.Sprintf("%#v", this.MobileSdkConfig) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableRateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *MobileTrafficIdentifierType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableRateLimit) - if !ok { - that2, ok := that.(CreateSpecType_DisableRateLimit) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.MobileTrafficIdentifierType{") + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *MobileSDKConfigType) GoString() string { + if this == nil { + return "nil" } - if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { - return false + s := make([]string, 0, 6) + s = append(s, "&http_loadbalancer.MobileSDKConfigType{") + s = append(s, "ReloadHeaderName: "+fmt.Sprintf("%#v", this.ReloadHeaderName)+",\n") + if this.MobileIdentifier != nil { + s = append(s, "MobileIdentifier: "+fmt.Sprintf("%#v", this.MobileIdentifier)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_ApiRateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *AppEndpointType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ApiRateLimit) - if !ok { - that2, ok := that.(CreateSpecType_ApiRateLimit) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 18) + s = append(s, "&http_loadbalancer.AppEndpointType{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "HttpMethods: "+fmt.Sprintf("%#v", this.HttpMethods)+",\n") + s = append(s, "Protocol: "+fmt.Sprintf("%#v", this.Protocol)+",\n") + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { - return false + if this.DomainMatcherChoice != nil { + s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") } - return true -} -func (this *CreateSpecType_RateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.AppTrafficTypeChoice != nil { + s = append(s, "AppTrafficTypeChoice: "+fmt.Sprintf("%#v", this.AppTrafficTypeChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_RateLimit) - if !ok { - that2, ok := that.(CreateSpecType_RateLimit) - if ok { - that1 = &that2 - } else { - return false - } + if this.Mitigation != nil { + s = append(s, "Mitigation: "+fmt.Sprintf("%#v", this.Mitigation)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.FlowLabelChoice != nil { + s = append(s, "FlowLabelChoice: "+fmt.Sprintf("%#v", this.FlowLabelChoice)+",\n") } - if !this.RateLimit.Equal(that1.RateLimit) { - return false + if this.GoodbotChoice != nil { + s = append(s, "GoodbotChoice: "+fmt.Sprintf("%#v", this.GoodbotChoice)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *AppEndpointType_AnyDomain) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ServicePoliciesFromNamespace) - if !ok { - that2, ok := that.(CreateSpecType_ServicePoliciesFromNamespace) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *AppEndpointType_Domain) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_Domain{` + + `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") + return s +} +func (this *AppEndpointType_Web) GoString() string { + if this == nil { + return "nil" } - if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { - return false + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_Web{` + + `Web:` + fmt.Sprintf("%#v", this.Web) + `}`}, ", ") + return s +} +func (this *AppEndpointType_Mobile) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_Mobile{` + + `Mobile:` + fmt.Sprintf("%#v", this.Mobile) + `}`}, ", ") + return s } -func (this *CreateSpecType_NoServicePolicies) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *AppEndpointType_WebMobile) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_NoServicePolicies) - if !ok { - that2, ok := that.(CreateSpecType_NoServicePolicies) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_WebMobile{` + + `WebMobile:` + fmt.Sprintf("%#v", this.WebMobile) + `}`}, ", ") + return s +} +func (this *AppEndpointType_UndefinedFlowLabel) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_UndefinedFlowLabel{` + + `UndefinedFlowLabel:` + fmt.Sprintf("%#v", this.UndefinedFlowLabel) + `}`}, ", ") + return s +} +func (this *AppEndpointType_FlowLabel) GoString() string { + if this == nil { + return "nil" } - if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { - return false + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_FlowLabel{` + + `FlowLabel:` + fmt.Sprintf("%#v", this.FlowLabel) + `}`}, ", ") + return s +} +func (this *AppEndpointType_AllowGoodBots) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_AllowGoodBots{` + + `AllowGoodBots:` + fmt.Sprintf("%#v", this.AllowGoodBots) + `}`}, ", ") + return s } -func (this *CreateSpecType_ActiveServicePolicies) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *AppEndpointType_MitigateGoodBots) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ActiveServicePolicies) - if !ok { - that2, ok := that.(CreateSpecType_ActiveServicePolicies) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_MitigateGoodBots{` + + `MitigateGoodBots:` + fmt.Sprintf("%#v", this.MitigateGoodBots) + `}`}, ", ") + return s +} +func (this *WebMobileTrafficType) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 7) + s = append(s, "&http_loadbalancer.WebMobileTrafficType{") + if this.Header != nil { + s = append(s, "Header: "+fmt.Sprintf("%#v", this.Header)+",\n") } - if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { - return false + if this.Headers != nil { + s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") } - return true + s = append(s, "MobileIdentifier: "+fmt.Sprintf("%#v", this.MobileIdentifier)+",\n") + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_RoundRobin) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_RoundRobin) - if !ok { - that2, ok := that.(CreateSpecType_RoundRobin) - if ok { - that1 = &that2 - } else { - return false - } +func (this *ShapeJavaScriptInsertType) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 6) + s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertType{") + if this.Rules != nil { + s = append(s, "Rules: "+fmt.Sprintf("%#v", this.Rules)+",\n") } - if !this.RoundRobin.Equal(that1.RoundRobin) { - return false + if this.ExcludeList != nil { + s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_LeastActive) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_LeastActive) - if !ok { - that2, ok := that.(CreateSpecType_LeastActive) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (this *ShapeJavaScriptInsertAllWithExceptionsType) GoString() string { + if this == nil { + return "nil" } - if !this.LeastActive.Equal(that1.LeastActive) { - return false + s := make([]string, 0, 6) + s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType{") + s = append(s, "JavascriptLocation: "+fmt.Sprintf("%#v", this.JavascriptLocation)+",\n") + if this.ExcludeList != nil { + s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_Random) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ShapeJavaScriptInsertAllType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_Random) - if !ok { - that2, ok := that.(CreateSpecType_Random) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 5) + s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertAllType{") + s = append(s, "JavascriptLocation: "+fmt.Sprintf("%#v", this.JavascriptLocation)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ShapeJavaScriptInsertionRule) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 9) + s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertionRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if !this.Random.Equal(that1.Random) { - return false + if this.DomainMatcherChoice != nil { + s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") } - return true -} -func (this *CreateSpecType_SourceIpStickiness) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_SourceIpStickiness) - if !ok { - that2, ok := that.(CreateSpecType_SourceIpStickiness) - if ok { - that1 = &that2 - } else { - return false - } + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "JavascriptLocation: "+fmt.Sprintf("%#v", this.JavascriptLocation)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ShapeJavaScriptInsertionRule_AnyDomain) GoString() string { + if this == nil { + return "nil" } - if !this.SourceIpStickiness.Equal(that1.SourceIpStickiness) { - return false + s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptInsertionRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s +} +func (this *ShapeJavaScriptInsertionRule_Domain) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptInsertionRule_Domain{` + + `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") + return s } -func (this *CreateSpecType_CookieStickiness) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ShapeJavaScriptExclusionRule) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_CookieStickiness) - if !ok { - that2, ok := that.(CreateSpecType_CookieStickiness) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 8) + s = append(s, "&http_loadbalancer.ShapeJavaScriptExclusionRule{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.DomainMatcherChoice != nil { + s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") } - if !this.CookieStickiness.Equal(that1.CookieStickiness) { - return false + if this.Path != nil { + s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") } - return true + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_RingHash) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*CreateSpecType_RingHash) - if !ok { - that2, ok := that.(CreateSpecType_RingHash) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.RingHash.Equal(that1.RingHash) { - return false +func (this *ShapeJavaScriptExclusionRule_AnyDomain) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptExclusionRule_AnyDomain{` + + `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ShapeJavaScriptExclusionRule_Domain) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableTrustClientIpHeaders) - if !ok { - that2, ok := that.(CreateSpecType_DisableTrustClientIpHeaders) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptExclusionRule_Domain{` + + `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") + return s +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 91) + s = append(s, "&http_loadbalancer.GlobalSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") } - if !this.DisableTrustClientIpHeaders.Equal(that1.DisableTrustClientIpHeaders) { - return false + if this.DownstreamTlsCertificateExpirationTimestamps != nil { + s = append(s, "DownstreamTlsCertificateExpirationTimestamps: "+fmt.Sprintf("%#v", this.DownstreamTlsCertificateExpirationTimestamps)+",\n") } - return true -} -func (this *CreateSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.AdvertiseChoice != nil { + s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_EnableTrustClientIpHeaders) - if !ok { - that2, ok := that.(CreateSpecType_EnableTrustClientIpHeaders) - if ok { - that1 = &that2 - } else { - return false - } + if this.DefaultRoutePools != nil { + s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.OriginPoolChoice != nil { + s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") } - if !this.EnableTrustClientIpHeaders.Equal(that1.EnableTrustClientIpHeaders) { - return false + if this.HostRewriteParams != nil { + s = append(s, "HostRewriteParams: "+fmt.Sprintf("%#v", this.HostRewriteParams)+",\n") } - return true -} -func (this *CreateSpecType_SingleLbApp) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.Routes != nil { + s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") } - - that1, ok := that.(*CreateSpecType_SingleLbApp) - if !ok { - that2, ok := that.(CreateSpecType_SingleLbApp) - if ok { - that1 = &that2 - } else { - return false - } + if this.OriginServerSubsetRuleList != nil { + s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.CorsPolicy != nil { + s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") } - if !this.SingleLbApp.Equal(that1.SingleLbApp) { - return false + if this.WafChoice != nil { + s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") } - return true -} -func (this *CreateSpecType_MultiLbApp) Equal(that interface{}) bool { - if that == nil { - return this == nil + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.ChallengeType != nil { + s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") } - - that1, ok := that.(*CreateSpecType_MultiLbApp) - if !ok { - that2, ok := that.(CreateSpecType_MultiLbApp) - if ok { - that1 = &that2 - } else { - return false - } + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.UserIdChoice != nil { + s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") } - if !this.MultiLbApp.Equal(that1.MultiLbApp) { - return false + if this.RateLimitChoice != nil { + s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") } - return true -} -func (this *CreateSpecType_EnableDdosDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.MaliciousUserMitigation != nil { + s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") } - - that1, ok := that.(*CreateSpecType_EnableDdosDetection) - if !ok { - that2, ok := that.(CreateSpecType_EnableDdosDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.WafExclusionRules != nil { + s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.DataGuardRules != nil { + s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") } - if !this.EnableDdosDetection.Equal(that1.EnableDdosDetection) { - return false + if this.BlockedClients != nil { + s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") } - return true -} -func (this *CreateSpecType_DisableDdosDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.TrustedClients != nil { + s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") } - - that1, ok := that.(*CreateSpecType_DisableDdosDetection) - if !ok { - that2, ok := that.(CreateSpecType_DisableDdosDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.ApiProtectionRules != nil { + s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.DdosMitigationRules != nil { + s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") } - if !this.DisableDdosDetection.Equal(that1.DisableDdosDetection) { - return false + if this.ServicePolicyChoice != nil { + s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") } - return true -} -func (this *CreateSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.HashPolicyChoice != nil { + s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_EnableMaliciousUserDetection) - if !ok { - that2, ok := that.(CreateSpecType_EnableMaliciousUserDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.TrustClientIpHeadersChoice != nil { + s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.MlConfigChoice != nil { + s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") } - if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { - return false + if this.MaliciousUserDetectionChoice != nil { + s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") } - return true -} -func (this *CreateSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.ApiDiscoveryChoice != nil { + s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_DisableMaliciousUserDetection) - if !ok { - that2, ok := that.(CreateSpecType_DisableMaliciousUserDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.BotDefenseChoice != nil { + s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.ClientSideDefenseChoice != nil { + s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") } - if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { - return false + if this.ApiDefinitionChoice != nil { + s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") } - return true -} -func (this *CreateSpecType_EnableApiDiscovery) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.IpReputationChoice != nil { + s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_EnableApiDiscovery) - if !ok { - that2, ok := that.(CreateSpecType_EnableApiDiscovery) - if ok { - that1 = &that2 - } else { - return false - } + if this.ThreatMeshChoice != nil { + s = append(s, "ThreatMeshChoice: "+fmt.Sprintf("%#v", this.ThreatMeshChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.ViewInternal != nil { + s = append(s, "ViewInternal: "+fmt.Sprintf("%#v", this.ViewInternal)+",\n") } - if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { - return false + s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") + if this.DnsInfo != nil { + s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") } - return true -} -func (this *CreateSpecType_DisableApiDiscovery) Equal(that interface{}) bool { - if that == nil { - return this == nil + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "AutoCertState: "+fmt.Sprintf("%#v", this.AutoCertState)+",\n") + if this.AutoCertInfo != nil { + s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") } - - that1, ok := that.(*CreateSpecType_DisableApiDiscovery) - if !ok { - that2, ok := that.(CreateSpecType_DisableApiDiscovery) - if ok { - that1 = &that2 - } else { - return false - } + if this.InternetVipInfo != nil { + s = append(s, "InternetVipInfo: "+fmt.Sprintf("%#v", this.InternetVipInfo)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.CsrfPolicy != nil { + s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") } - if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { - return false + if this.GraphqlRules != nil { + s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") } - return true -} -func (this *CreateSpecType_DisableBotDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.ProtectedCookies != nil { + s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") } - - that1, ok := that.(*CreateSpecType_DisableBotDefense) - if !ok { - that2, ok := that.(CreateSpecType_DisableBotDefense) - if ok { - that1 = &that2 - } else { - return false - } + if this.SlowDdosMitigationChoice != nil { + s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.JwtValidation != nil { + s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") } - if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { - return false + if this.L7DdosAutoMitigationAction != nil { + s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") } - return true + s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") + s = append(s, "}") + return strings.Join(s, "") } -func (this *CreateSpecType_BotDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_Http) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_BotDefense) - if !ok { - that2, ok := that.(CreateSpecType_BotDefense) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_Https) GoString() string { + if this == nil { + return "nil" } - if !this.BotDefense.Equal(that1.BotDefense) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DoNotAdvertise) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DoNotAdvertise{` + + `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") + return s } -func (this *CreateSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_BotDefenseAdvanced) - if !ok { - that2, ok := that.(CreateSpecType_BotDefenseAdvanced) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AdvertiseOnPublicDefaultVip{` + + `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_AdvertiseOnPublic) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AdvertiseOnPublic{` + + `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_AdvertiseCustom) GoString() string { + if this == nil { + return "nil" } - if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AdvertiseCustom{` + + `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DefaultPool) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DefaultPool{` + + `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableApiDefinition) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_DefaultPoolList) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableApiDefinition) - if !ok { - that2, ok := that.(CreateSpecType_DisableApiDefinition) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DefaultPoolList{` + + `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_AutoHostRewrite) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AutoHostRewrite{` + + `AutoHostRewrite:` + fmt.Sprintf("%#v", this.AutoHostRewrite) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_HostRewrite) GoString() string { + if this == nil { + return "nil" } - if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_HostRewrite{` + + `HostRewrite:` + fmt.Sprintf("%#v", this.HostRewrite) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableHostRewrite) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableHostRewrite{` + + `DisableHostRewrite:` + fmt.Sprintf("%#v", this.DisableHostRewrite) + `}`}, ", ") + return s } -func (this *CreateSpecType_ApiDefinition) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_DisableWaf) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ApiDefinition) - if !ok { - that2, ok := that.(CreateSpecType_ApiDefinition) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableWaf{` + + `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_AppFirewall) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AppFirewall{` + + `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_NoChallenge) GoString() string { + if this == nil { + return "nil" } - if !this.ApiDefinition.Equal(that1.ApiDefinition) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_NoChallenge{` + + `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_EnableChallenge) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableChallenge{` + + `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") + return s } -func (this *CreateSpecType_ApiSpecification) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_JsChallenge) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ApiSpecification) - if !ok { - that2, ok := that.(CreateSpecType_ApiSpecification) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_JsChallenge{` + + `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_CaptchaChallenge) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_CaptchaChallenge{` + + `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_PolicyBasedChallenge) GoString() string { + if this == nil { + return "nil" } - if !this.ApiSpecification.Equal(that1.ApiSpecification) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_PolicyBasedChallenge{` + + `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_UserIdClientIp) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_UserIdClientIp{` + + `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") + return s } -func (this *CreateSpecType_ApiDefinitions) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_UserIdentification) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ApiDefinitions) - if !ok { - that2, ok := that.(CreateSpecType_ApiDefinitions) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_UserIdentification{` + + `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableRateLimit) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableRateLimit{` + + `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ApiRateLimit) GoString() string { + if this == nil { + return "nil" } - if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiRateLimit{` + + `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_RateLimit) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_RateLimit{` + + `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableIpReputation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_ServicePoliciesFromNamespace) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableIpReputation) - if !ok { - that2, ok := that.(CreateSpecType_DisableIpReputation) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ServicePoliciesFromNamespace{` + + `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_NoServicePolicies) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_NoServicePolicies{` + + `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ActiveServicePolicies) GoString() string { + if this == nil { + return "nil" } - if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ActiveServicePolicies{` + + `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_RoundRobin) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_RoundRobin{` + + `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") + return s } -func (this *CreateSpecType_EnableIpReputation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_LeastActive) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_EnableIpReputation) - if !ok { - that2, ok := that.(CreateSpecType_EnableIpReputation) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_LeastActive{` + + `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_Random) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_Random{` + + `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_SourceIpStickiness) GoString() string { + if this == nil { + return "nil" } - if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SourceIpStickiness{` + + `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_CookieStickiness) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_CookieStickiness{` + + `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableClientSideDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_RingHash) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableClientSideDefense) - if !ok { - that2, ok := that.(CreateSpecType_DisableClientSideDefense) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_RingHash{` + + `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableTrustClientIpHeaders{` + + `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_EnableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableTrustClientIpHeaders{` + + `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_SingleLbApp) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SingleLbApp{` + + `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") + return s } -func (this *CreateSpecType_ClientSideDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_MultiLbApp) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_ClientSideDefense) - if !ok { - that2, ok := that.(CreateSpecType_ClientSideDefense) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_MultiLbApp{` + + `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_EnableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableMaliciousUserDetection{` + + `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableMaliciousUserDetection{` + + `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_EnableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableApiDiscovery{` + + `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") + return s } -func (this *CreateSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_DisableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_SystemDefaultTimeouts) - if !ok { - that2, ok := that.(CreateSpecType_SystemDefaultTimeouts) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableApiDiscovery{` + + `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableBotDefense) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableBotDefense{` + + `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_BotDefense) GoString() string { + if this == nil { + return "nil" } - if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_BotDefense{` + + `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_BotDefenseAdvanced) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_BotDefenseAdvanced{` + + `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") + return s } -func (this *CreateSpecType_SlowDdosMitigation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_DisableClientSideDefense) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_SlowDdosMitigation) - if !ok { - that2, ok := that.(CreateSpecType_SlowDdosMitigation) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableClientSideDefense{` + + `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ClientSideDefense) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ClientSideDefense{` + + `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableApiDefinition) GoString() string { + if this == nil { + return "nil" } - if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableApiDefinition{` + + `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ApiDefinition) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiDefinition{` + + `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") + return s } -func (this *CreateSpecType_DisableThreatIntelligence) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_ApiSpecification) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_DisableThreatIntelligence) - if !ok { - that2, ok := that.(CreateSpecType_DisableThreatIntelligence) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiSpecification{` + + `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_ApiDefinitions) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiDefinitions{` + + `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_DisableIpReputation) GoString() string { + if this == nil { + return "nil" } - if !this.DisableThreatIntelligence.Equal(that1.DisableThreatIntelligence) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableIpReputation{` + + `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_EnableIpReputation) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableIpReputation{` + + `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") + return s } -func (this *CreateSpecType_EnableThreatIntelligence) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_DisableThreatMesh) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_EnableThreatIntelligence) - if !ok { - that2, ok := that.(CreateSpecType_EnableThreatIntelligence) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableThreatMesh{` + + `DisableThreatMesh:` + fmt.Sprintf("%#v", this.DisableThreatMesh) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_EnableThreatMesh) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableThreatMesh{` + + `EnableThreatMesh:` + fmt.Sprintf("%#v", this.EnableThreatMesh) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_SystemDefaultTimeouts) GoString() string { + if this == nil { + return "nil" } - if !this.EnableThreatIntelligence.Equal(that1.EnableThreatIntelligence) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SystemDefaultTimeouts{` + + `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_SlowDdosMitigation) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SlowDdosMitigation{` + + `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") + return s } -func (this *CreateSpecType_L7DdosActionDefault) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GlobalSpecType_L7DdosActionDefault) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_L7DdosActionDefault) - if !ok { - that2, ok := that.(CreateSpecType_L7DdosActionDefault) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionDefault{` + + `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_L7DdosActionBlock) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionBlock{` + + `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_L7DdosActionJsChallenge) GoString() string { + if this == nil { + return "nil" } - if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { - return false + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionJsChallenge{` + + `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") + return s +} +func (this *GlobalSpecType_L7DdosActionNone) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionNone{` + + `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") + return s } -func (this *CreateSpecType_L7DdosActionBlock) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*CreateSpecType_L7DdosActionBlock) - if !ok { - that2, ok := that.(CreateSpecType_L7DdosActionBlock) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 79) + s = append(s, "&http_loadbalancer.CreateSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.AdvertiseChoice != nil { + s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") } - if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { - return false + if this.DefaultRoutePools != nil { + s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") } - return true -} -func (this *CreateSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.OriginPoolChoice != nil { + s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_L7DdosActionJsChallenge) - if !ok { - that2, ok := that.(CreateSpecType_L7DdosActionJsChallenge) - if ok { - that1 = &that2 - } else { - return false - } + if this.OriginServerSubsetRuleList != nil { + s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.Routes != nil { + s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") } - if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { - return false + if this.CorsPolicy != nil { + s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") } - return true -} -func (this *CreateSpecType_L7DdosActionNone) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.WafChoice != nil { + s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") } - - that1, ok := that.(*CreateSpecType_L7DdosActionNone) - if !ok { - that2, ok := that.(CreateSpecType_L7DdosActionNone) - if ok { - that1 = &that2 - } else { - return false - } + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.ChallengeType != nil { + s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") } - if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { - return false + if this.UserIdChoice != nil { + s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") } - return true -} -func (this *ReplaceSpecType) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.RateLimitChoice != nil { + s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType) - if !ok { - that2, ok := that.(ReplaceSpecType) - if ok { - that1 = &that2 - } else { - return false - } + if this.MaliciousUserMitigation != nil { + s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.WafExclusionRules != nil { + s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") } - if len(this.Domains) != len(that1.Domains) { - return false + if this.DataGuardRules != nil { + s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { - return false - } + if this.BlockedClients != nil { + s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { - return false - } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false + if this.TrustedClients != nil { + s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") } - if that1.AdvertiseChoice == nil { - if this.AdvertiseChoice != nil { - return false - } - } else if this.AdvertiseChoice == nil { - return false - } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { - return false + if this.ApiProtectionRules != nil { + s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") } - if len(this.DefaultRoutePools) != len(that1.DefaultRoutePools) { - return false + if this.DdosMitigationRules != nil { + s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") } - for i := range this.DefaultRoutePools { - if !this.DefaultRoutePools[i].Equal(that1.DefaultRoutePools[i]) { - return false - } + if this.ServicePolicyChoice != nil { + s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") } - if that1.OriginPoolChoice == nil { - if this.OriginPoolChoice != nil { - return false - } - } else if this.OriginPoolChoice == nil { - return false - } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { - return false + if this.HashPolicyChoice != nil { + s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") } - if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { - return false + if this.TrustClientIpHeadersChoice != nil { + s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") } - if len(this.Routes) != len(that1.Routes) { - return false + if this.MlConfigChoice != nil { + s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") } - for i := range this.Routes { - if !this.Routes[i].Equal(that1.Routes[i]) { - return false - } + if this.MaliciousUserDetectionChoice != nil { + s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") } - if !this.CorsPolicy.Equal(that1.CorsPolicy) { - return false + if this.ApiDiscoveryChoice != nil { + s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") } - if that1.WafChoice == nil { - if this.WafChoice != nil { - return false - } - } else if this.WafChoice == nil { - return false - } else if !this.WafChoice.Equal(that1.WafChoice) { - return false + if this.BotDefenseChoice != nil { + s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") } - if this.AddLocation != that1.AddLocation { - return false + if this.ApiDefinitionChoice != nil { + s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") } - if that1.ChallengeType == nil { - if this.ChallengeType != nil { - return false - } - } else if this.ChallengeType == nil { - return false - } else if !this.ChallengeType.Equal(that1.ChallengeType) { - return false + if this.IpReputationChoice != nil { + s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") } - if !this.MoreOption.Equal(that1.MoreOption) { - return false + if this.ClientSideDefenseChoice != nil { + s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") } - if that1.UserIdChoice == nil { - if this.UserIdChoice != nil { - return false - } - } else if this.UserIdChoice == nil { - return false - } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { - return false + if this.CsrfPolicy != nil { + s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") } - if that1.RateLimitChoice == nil { - if this.RateLimitChoice != nil { - return false - } - } else if this.RateLimitChoice == nil { - return false - } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { - return false + if this.GraphqlRules != nil { + s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") } - if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { - return false + if this.ProtectedCookies != nil { + s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") } - if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { - return false + if this.SlowDdosMitigationChoice != nil { + s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") } - for i := range this.WafExclusionRules { - if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { - return false - } + if this.JwtValidation != nil { + s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") } - if len(this.DataGuardRules) != len(that1.DataGuardRules) { - return false + if this.ThreatMeshChoice != nil { + s = append(s, "ThreatMeshChoice: "+fmt.Sprintf("%#v", this.ThreatMeshChoice)+",\n") } - for i := range this.DataGuardRules { - if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { - return false - } + if this.L7DdosAutoMitigationAction != nil { + s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") } - if len(this.BlockedClients) != len(that1.BlockedClients) { - return false + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateSpecType_Http) GoString() string { + if this == nil { + return "nil" } - for i := range this.BlockedClients { - if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s +} +func (this *CreateSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" } - if len(this.TrustedClients) != len(that1.TrustedClients) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s +} +func (this *CreateSpecType_Https) GoString() string { + if this == nil { + return "nil" } - for i := range this.TrustedClients { - if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DoNotAdvertise) GoString() string { + if this == nil { + return "nil" } - if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DoNotAdvertise{` + + `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") + return s +} +func (this *CreateSpecType_AdvertiseOnPublicDefaultVip) GoString() string { + if this == nil { + return "nil" } - if len(this.DdosMitigationRules) != len(that1.DdosMitigationRules) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AdvertiseOnPublicDefaultVip{` + + `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") + return s +} +func (this *CreateSpecType_AdvertiseOnPublic) GoString() string { + if this == nil { + return "nil" } - for i := range this.DdosMitigationRules { - if !this.DdosMitigationRules[i].Equal(that1.DdosMitigationRules[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AdvertiseOnPublic{` + + `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") + return s +} +func (this *CreateSpecType_AdvertiseCustom) GoString() string { + if this == nil { + return "nil" } - if that1.ServicePolicyChoice == nil { - if this.ServicePolicyChoice != nil { - return false - } - } else if this.ServicePolicyChoice == nil { - return false - } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AdvertiseCustom{` + + `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DefaultPool) GoString() string { + if this == nil { + return "nil" } - if that1.HashPolicyChoice == nil { - if this.HashPolicyChoice != nil { - return false - } - } else if this.HashPolicyChoice == nil { - return false - } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DefaultPool{` + + `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DefaultPoolList) GoString() string { + if this == nil { + return "nil" } - if that1.TrustClientIpHeadersChoice == nil { - if this.TrustClientIpHeadersChoice != nil { - return false - } - } else if this.TrustClientIpHeadersChoice == nil { - return false - } else if !this.TrustClientIpHeadersChoice.Equal(that1.TrustClientIpHeadersChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DefaultPoolList{` + + `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableWaf) GoString() string { + if this == nil { + return "nil" } - if that1.MlConfigChoice == nil { - if this.MlConfigChoice != nil { - return false - } - } else if this.MlConfigChoice == nil { - return false - } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableWaf{` + + `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") + return s +} +func (this *CreateSpecType_AppFirewall) GoString() string { + if this == nil { + return "nil" } - if that1.DdosDetectionChoice == nil { - if this.DdosDetectionChoice != nil { - return false - } - } else if this.DdosDetectionChoice == nil { - return false - } else if !this.DdosDetectionChoice.Equal(that1.DdosDetectionChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AppFirewall{` + + `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") + return s +} +func (this *CreateSpecType_NoChallenge) GoString() string { + if this == nil { + return "nil" } - if that1.MaliciousUserDetectionChoice == nil { - if this.MaliciousUserDetectionChoice != nil { - return false - } - } else if this.MaliciousUserDetectionChoice == nil { - return false - } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_NoChallenge{` + + `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") + return s +} +func (this *CreateSpecType_EnableChallenge) GoString() string { + if this == nil { + return "nil" } - if that1.ApiDiscoveryChoice == nil { - if this.ApiDiscoveryChoice != nil { - return false - } - } else if this.ApiDiscoveryChoice == nil { - return false - } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableChallenge{` + + `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") + return s +} +func (this *CreateSpecType_JsChallenge) GoString() string { + if this == nil { + return "nil" } - if that1.BotDefenseChoice == nil { - if this.BotDefenseChoice != nil { - return false - } - } else if this.BotDefenseChoice == nil { - return false - } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_JsChallenge{` + + `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") + return s +} +func (this *CreateSpecType_CaptchaChallenge) GoString() string { + if this == nil { + return "nil" } - if that1.ApiDefinitionChoice == nil { - if this.ApiDefinitionChoice != nil { - return false - } - } else if this.ApiDefinitionChoice == nil { - return false - } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_CaptchaChallenge{` + + `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") + return s +} +func (this *CreateSpecType_PolicyBasedChallenge) GoString() string { + if this == nil { + return "nil" } - if that1.IpReputationChoice == nil { - if this.IpReputationChoice != nil { - return false - } - } else if this.IpReputationChoice == nil { - return false - } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { - return false - } - if that1.ClientSideDefenseChoice == nil { - if this.ClientSideDefenseChoice != nil { - return false - } - } else if this.ClientSideDefenseChoice == nil { - return false - } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { - return false - } - if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_PolicyBasedChallenge{` + + `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") + return s +} +func (this *CreateSpecType_UserIdClientIp) GoString() string { + if this == nil { + return "nil" } - if len(this.GraphqlRules) != len(that1.GraphqlRules) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_UserIdClientIp{` + + `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") + return s +} +func (this *CreateSpecType_UserIdentification) GoString() string { + if this == nil { + return "nil" } - for i := range this.GraphqlRules { - if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_UserIdentification{` + + `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableRateLimit) GoString() string { + if this == nil { + return "nil" } - if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableRateLimit{` + + `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ApiRateLimit) GoString() string { + if this == nil { + return "nil" } - for i := range this.ProtectedCookies { - if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiRateLimit{` + + `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") + return s +} +func (this *CreateSpecType_RateLimit) GoString() string { + if this == nil { + return "nil" } - if that1.SlowDdosMitigationChoice == nil { - if this.SlowDdosMitigationChoice != nil { - return false - } - } else if this.SlowDdosMitigationChoice == nil { - return false - } else if !this.SlowDdosMitigationChoice.Equal(that1.SlowDdosMitigationChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_RateLimit{` + + `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ServicePoliciesFromNamespace) GoString() string { + if this == nil { + return "nil" } - if !this.JwtValidation.Equal(that1.JwtValidation) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ServicePoliciesFromNamespace{` + + `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") + return s +} +func (this *CreateSpecType_NoServicePolicies) GoString() string { + if this == nil { + return "nil" } - if that1.ThreatIntelligenceChoice == nil { - if this.ThreatIntelligenceChoice != nil { - return false - } - } else if this.ThreatIntelligenceChoice == nil { - return false - } else if !this.ThreatIntelligenceChoice.Equal(that1.ThreatIntelligenceChoice) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_NoServicePolicies{` + + `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ActiveServicePolicies) GoString() string { + if this == nil { + return "nil" } - if that1.L7DdosAutoMitigationAction == nil { - if this.L7DdosAutoMitigationAction != nil { - return false - } - } else if this.L7DdosAutoMitigationAction == nil { - return false - } else if !this.L7DdosAutoMitigationAction.Equal(that1.L7DdosAutoMitigationAction) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ActiveServicePolicies{` + + `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") + return s +} +func (this *CreateSpecType_RoundRobin) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_RoundRobin{` + + `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_Http) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_LeastActive) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_Http) - if !ok { - that2, ok := that.(ReplaceSpecType_Http) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_LeastActive{` + + `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") + return s +} +func (this *CreateSpecType_Random) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_Random{` + + `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") + return s +} +func (this *CreateSpecType_SourceIpStickiness) GoString() string { + if this == nil { + return "nil" } - if !this.Http.Equal(that1.Http) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SourceIpStickiness{` + + `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") + return s +} +func (this *CreateSpecType_CookieStickiness) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_CookieStickiness{` + + `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_HttpsAutoCert) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_RingHash) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_HttpsAutoCert) - if !ok { - that2, ok := that.(ReplaceSpecType_HttpsAutoCert) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_RingHash{` + + `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableTrustClientIpHeaders{` + + `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") + return s +} +func (this *CreateSpecType_EnableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableTrustClientIpHeaders{` + + `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") + return s +} +func (this *CreateSpecType_SingleLbApp) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SingleLbApp{` + + `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_Https) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_MultiLbApp) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_Https) - if !ok { - that2, ok := that.(ReplaceSpecType_Https) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_MultiLbApp{` + + `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") + return s +} +func (this *CreateSpecType_EnableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableMaliciousUserDetection{` + + `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if !this.Https.Equal(that1.Https) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableMaliciousUserDetection{` + + `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *CreateSpecType_EnableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableApiDiscovery{` + + `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DoNotAdvertise) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_DisableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DoNotAdvertise) - if !ok { - that2, ok := that.(ReplaceSpecType_DoNotAdvertise) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableApiDiscovery{` + + `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableBotDefense) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableBotDefense{` + + `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") + return s +} +func (this *CreateSpecType_BotDefense) GoString() string { + if this == nil { + return "nil" } - if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_BotDefense{` + + `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") + return s +} +func (this *CreateSpecType_BotDefenseAdvanced) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_BotDefenseAdvanced{` + + `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_DisableApiDefinition) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_AdvertiseOnPublicDefaultVip) - if !ok { - that2, ok := that.(ReplaceSpecType_AdvertiseOnPublicDefaultVip) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableApiDefinition{` + + `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ApiDefinition) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiDefinition{` + + `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ApiSpecification) GoString() string { + if this == nil { + return "nil" } - if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiSpecification{` + + `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ApiDefinitions) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiDefinitions{` + + `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_DisableIpReputation) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_AdvertiseOnPublic) - if !ok { - that2, ok := that.(ReplaceSpecType_AdvertiseOnPublic) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableIpReputation{` + + `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") + return s +} +func (this *CreateSpecType_EnableIpReputation) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableIpReputation{` + + `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableClientSideDefense) GoString() string { + if this == nil { + return "nil" } - if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableClientSideDefense{` + + `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") + return s +} +func (this *CreateSpecType_ClientSideDefense) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ClientSideDefense{` + + `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_AdvertiseCustom) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_SystemDefaultTimeouts) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_AdvertiseCustom) - if !ok { - that2, ok := that.(ReplaceSpecType_AdvertiseCustom) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SystemDefaultTimeouts{` + + `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") + return s +} +func (this *CreateSpecType_SlowDdosMitigation) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SlowDdosMitigation{` + + `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") + return s +} +func (this *CreateSpecType_DisableThreatMesh) GoString() string { + if this == nil { + return "nil" } - if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableThreatMesh{` + + `DisableThreatMesh:` + fmt.Sprintf("%#v", this.DisableThreatMesh) + `}`}, ", ") + return s +} +func (this *CreateSpecType_EnableThreatMesh) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableThreatMesh{` + + `EnableThreatMesh:` + fmt.Sprintf("%#v", this.EnableThreatMesh) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DefaultPool) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *CreateSpecType_L7DdosActionDefault) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DefaultPool) - if !ok { - that2, ok := that.(ReplaceSpecType_DefaultPool) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionDefault{` + + `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") + return s +} +func (this *CreateSpecType_L7DdosActionBlock) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionBlock{` + + `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") + return s +} +func (this *CreateSpecType_L7DdosActionJsChallenge) GoString() string { + if this == nil { + return "nil" } - if !this.DefaultPool.Equal(that1.DefaultPool) { - return false + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionJsChallenge{` + + `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") + return s +} +func (this *CreateSpecType_L7DdosActionNone) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionNone{` + + `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DefaultPoolList) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DefaultPoolList) - if !ok { - that2, ok := that.(ReplaceSpecType_DefaultPoolList) - if ok { - that1 = &that2 - } else { - return false - } + s := make([]string, 0, 79) + s = append(s, "&http_loadbalancer.ReplaceSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.AdvertiseChoice != nil { + s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") } - if !this.DefaultPoolList.Equal(that1.DefaultPoolList) { - return false + if this.DefaultRoutePools != nil { + s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") } - return true -} -func (this *ReplaceSpecType_DisableWaf) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.OriginPoolChoice != nil { + s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_DisableWaf) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableWaf) - if ok { - that1 = &that2 - } else { - return false - } + if this.OriginServerSubsetRuleList != nil { + s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.Routes != nil { + s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") } - if !this.DisableWaf.Equal(that1.DisableWaf) { - return false + if this.CorsPolicy != nil { + s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") } - return true -} -func (this *ReplaceSpecType_AppFirewall) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.WafChoice != nil { + s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_AppFirewall) - if !ok { - that2, ok := that.(ReplaceSpecType_AppFirewall) - if ok { - that1 = &that2 - } else { - return false - } + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.ChallengeType != nil { + s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") } - if !this.AppFirewall.Equal(that1.AppFirewall) { - return false + if this.UserIdChoice != nil { + s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") } - return true -} -func (this *ReplaceSpecType_NoChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.RateLimitChoice != nil { + s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_NoChallenge) - if !ok { - that2, ok := that.(ReplaceSpecType_NoChallenge) - if ok { - that1 = &that2 - } else { - return false - } + if this.MaliciousUserMitigation != nil { + s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.WafExclusionRules != nil { + s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") } - if !this.NoChallenge.Equal(that1.NoChallenge) { - return false + if this.DataGuardRules != nil { + s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") } - return true -} -func (this *ReplaceSpecType_EnableChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.BlockedClients != nil { + s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") } - - that1, ok := that.(*ReplaceSpecType_EnableChallenge) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableChallenge) - if ok { - that1 = &that2 - } else { - return false - } + if this.TrustedClients != nil { + s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.ApiProtectionRules != nil { + s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") } - if !this.EnableChallenge.Equal(that1.EnableChallenge) { - return false + if this.DdosMitigationRules != nil { + s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") } - return true -} -func (this *ReplaceSpecType_JsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.ServicePolicyChoice != nil { + s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_JsChallenge) - if !ok { - that2, ok := that.(ReplaceSpecType_JsChallenge) - if ok { - that1 = &that2 - } else { - return false - } + if this.HashPolicyChoice != nil { + s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.TrustClientIpHeadersChoice != nil { + s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") } - if !this.JsChallenge.Equal(that1.JsChallenge) { - return false + if this.MlConfigChoice != nil { + s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") } - return true -} -func (this *ReplaceSpecType_CaptchaChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.MaliciousUserDetectionChoice != nil { + s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_CaptchaChallenge) - if !ok { - that2, ok := that.(ReplaceSpecType_CaptchaChallenge) - if ok { - that1 = &that2 - } else { - return false - } + if this.ApiDiscoveryChoice != nil { + s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.BotDefenseChoice != nil { + s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") } - if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { - return false + if this.ApiDefinitionChoice != nil { + s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") } - return true -} -func (this *ReplaceSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.IpReputationChoice != nil { + s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_PolicyBasedChallenge) - if !ok { - that2, ok := that.(ReplaceSpecType_PolicyBasedChallenge) - if ok { - that1 = &that2 - } else { - return false - } + if this.ClientSideDefenseChoice != nil { + s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.CsrfPolicy != nil { + s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") } - if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { - return false + if this.GraphqlRules != nil { + s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") } - return true -} -func (this *ReplaceSpecType_UserIdClientIp) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.ProtectedCookies != nil { + s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") } - - that1, ok := that.(*ReplaceSpecType_UserIdClientIp) - if !ok { - that2, ok := that.(ReplaceSpecType_UserIdClientIp) - if ok { - that1 = &that2 - } else { - return false - } + if this.SlowDdosMitigationChoice != nil { + s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.JwtValidation != nil { + s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") } - if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { - return false + if this.ThreatMeshChoice != nil { + s = append(s, "ThreatMeshChoice: "+fmt.Sprintf("%#v", this.ThreatMeshChoice)+",\n") } - return true + if this.L7DdosAutoMitigationAction != nil { + s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") } -func (this *ReplaceSpecType_UserIdentification) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_Http) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_UserIdentification) - if !ok { - that2, ok := that.(ReplaceSpecType_UserIdentification) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_Https) GoString() string { + if this == nil { + return "nil" } - if !this.UserIdentification.Equal(that1.UserIdentification) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DoNotAdvertise) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DoNotAdvertise{` + + `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DisableRateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_AdvertiseOnPublicDefaultVip) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DisableRateLimit) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableRateLimit) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AdvertiseOnPublicDefaultVip{` + + `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_AdvertiseOnPublic) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AdvertiseOnPublic{` + + `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_AdvertiseCustom) GoString() string { + if this == nil { + return "nil" } - if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AdvertiseCustom{` + + `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DefaultPool) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DefaultPool{` + + `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ApiRateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_DefaultPoolList) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_ApiRateLimit) - if !ok { - that2, ok := that.(ReplaceSpecType_ApiRateLimit) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DefaultPoolList{` + + `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableWaf) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableWaf{` + + `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_AppFirewall) GoString() string { + if this == nil { + return "nil" } - if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AppFirewall{` + + `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_NoChallenge) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_NoChallenge{` + + `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_RateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_EnableChallenge) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_RateLimit) - if !ok { - that2, ok := that.(ReplaceSpecType_RateLimit) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableChallenge{` + + `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_JsChallenge) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_JsChallenge{` + + `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_CaptchaChallenge) GoString() string { + if this == nil { + return "nil" } - if !this.RateLimit.Equal(that1.RateLimit) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_CaptchaChallenge{` + + `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_PolicyBasedChallenge) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_PolicyBasedChallenge{` + + `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_UserIdClientIp) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_ServicePoliciesFromNamespace) - if !ok { - that2, ok := that.(ReplaceSpecType_ServicePoliciesFromNamespace) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_UserIdClientIp{` + + `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_UserIdentification) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_UserIdentification{` + + `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableRateLimit) GoString() string { + if this == nil { + return "nil" } - if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableRateLimit{` + + `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ApiRateLimit) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiRateLimit{` + + `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_NoServicePolicies) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_RateLimit) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_NoServicePolicies) - if !ok { - that2, ok := that.(ReplaceSpecType_NoServicePolicies) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_RateLimit{` + + `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ServicePoliciesFromNamespace) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ServicePoliciesFromNamespace{` + + `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_NoServicePolicies) GoString() string { + if this == nil { + return "nil" } - if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_NoServicePolicies{` + + `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ActiveServicePolicies) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ActiveServicePolicies{` + + `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ActiveServicePolicies) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_RoundRobin) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_ActiveServicePolicies) - if !ok { - that2, ok := that.(ReplaceSpecType_ActiveServicePolicies) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_RoundRobin{` + + `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_LeastActive) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_LeastActive{` + + `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_Random) GoString() string { + if this == nil { + return "nil" } - if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_Random{` + + `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_SourceIpStickiness) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SourceIpStickiness{` + + `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_RoundRobin) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_CookieStickiness) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_RoundRobin) - if !ok { - that2, ok := that.(ReplaceSpecType_RoundRobin) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_CookieStickiness{` + + `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_RingHash) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_RingHash{` + + `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - if !this.RoundRobin.Equal(that1.RoundRobin) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableTrustClientIpHeaders{` + + `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_EnableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableTrustClientIpHeaders{` + + `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_LeastActive) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_SingleLbApp) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_LeastActive) - if !ok { - that2, ok := that.(ReplaceSpecType_LeastActive) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SingleLbApp{` + + `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_MultiLbApp) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_MultiLbApp{` + + `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_EnableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if !this.LeastActive.Equal(that1.LeastActive) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableMaliciousUserDetection{` + + `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableMaliciousUserDetection{` + + `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_Random) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_EnableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_Random) - if !ok { - that2, ok := that.(ReplaceSpecType_Random) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableApiDiscovery{` + + `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableApiDiscovery{` + + `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableBotDefense) GoString() string { + if this == nil { + return "nil" } - if !this.Random.Equal(that1.Random) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableBotDefense{` + + `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_BotDefense) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_BotDefense{` + + `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_SourceIpStickiness) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_BotDefenseAdvanced) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_SourceIpStickiness) - if !ok { - that2, ok := that.(ReplaceSpecType_SourceIpStickiness) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_BotDefenseAdvanced{` + + `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableApiDefinition) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableApiDefinition{` + + `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ApiDefinition) GoString() string { + if this == nil { + return "nil" } - if !this.SourceIpStickiness.Equal(that1.SourceIpStickiness) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiDefinition{` + + `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_ApiSpecification) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiSpecification{` + + `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_CookieStickiness) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_ApiDefinitions) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_CookieStickiness) - if !ok { - that2, ok := that.(ReplaceSpecType_CookieStickiness) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiDefinitions{` + + `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableIpReputation) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableIpReputation{` + + `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_EnableIpReputation) GoString() string { + if this == nil { + return "nil" } - if !this.CookieStickiness.Equal(that1.CookieStickiness) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableIpReputation{` + + `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableClientSideDefense) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableClientSideDefense{` + + `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_RingHash) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_ClientSideDefense) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_RingHash) - if !ok { - that2, ok := that.(ReplaceSpecType_RingHash) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ClientSideDefense{` + + `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_SystemDefaultTimeouts) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SystemDefaultTimeouts{` + + `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_SlowDdosMitigation) GoString() string { + if this == nil { + return "nil" } - if !this.RingHash.Equal(that1.RingHash) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SlowDdosMitigation{` + + `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_DisableThreatMesh) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableThreatMesh{` + + `DisableThreatMesh:` + fmt.Sprintf("%#v", this.DisableThreatMesh) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_EnableThreatMesh) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DisableTrustClientIpHeaders) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableTrustClientIpHeaders) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableThreatMesh{` + + `EnableThreatMesh:` + fmt.Sprintf("%#v", this.EnableThreatMesh) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_L7DdosActionDefault) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionDefault{` + + `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_L7DdosActionBlock) GoString() string { + if this == nil { + return "nil" } - if !this.DisableTrustClientIpHeaders.Equal(that1.DisableTrustClientIpHeaders) { - return false + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionBlock{` + + `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") + return s +} +func (this *ReplaceSpecType_L7DdosActionJsChallenge) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionJsChallenge{` + + `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *ReplaceSpecType_L7DdosActionNone) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_EnableTrustClientIpHeaders) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableTrustClientIpHeaders) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionNone{` + + `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") + return s +} +func (this *GetSpecType) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := make([]string, 0, 86) + s = append(s, "&http_loadbalancer.GetSpecType{") + s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") + if this.LoadbalancerType != nil { + s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") } - if !this.EnableTrustClientIpHeaders.Equal(that1.EnableTrustClientIpHeaders) { - return false + if this.DownstreamTlsCertificateExpirationTimestamps != nil { + s = append(s, "DownstreamTlsCertificateExpirationTimestamps: "+fmt.Sprintf("%#v", this.DownstreamTlsCertificateExpirationTimestamps)+",\n") } - return true -} -func (this *ReplaceSpecType_SingleLbApp) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.AdvertiseChoice != nil { + s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_SingleLbApp) - if !ok { - that2, ok := that.(ReplaceSpecType_SingleLbApp) - if ok { - that1 = &that2 - } else { - return false - } + if this.DefaultRoutePools != nil { + s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.OriginPoolChoice != nil { + s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") } - if !this.SingleLbApp.Equal(that1.SingleLbApp) { - return false + if this.OriginServerSubsetRuleList != nil { + s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") } - return true -} -func (this *ReplaceSpecType_MultiLbApp) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.Routes != nil { + s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") } - - that1, ok := that.(*ReplaceSpecType_MultiLbApp) - if !ok { - that2, ok := that.(ReplaceSpecType_MultiLbApp) - if ok { - that1 = &that2 - } else { - return false - } + if this.CorsPolicy != nil { + s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.WafChoice != nil { + s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") } - if !this.MultiLbApp.Equal(that1.MultiLbApp) { - return false + s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") + if this.ChallengeType != nil { + s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") } - return true -} -func (this *ReplaceSpecType_EnableDdosDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.MoreOption != nil { + s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") } - - that1, ok := that.(*ReplaceSpecType_EnableDdosDetection) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableDdosDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.UserIdChoice != nil { + s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.RateLimitChoice != nil { + s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") } - if !this.EnableDdosDetection.Equal(that1.EnableDdosDetection) { - return false + if this.MaliciousUserMitigation != nil { + s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") } - return true -} -func (this *ReplaceSpecType_DisableDdosDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.WafExclusionRules != nil { + s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") } - - that1, ok := that.(*ReplaceSpecType_DisableDdosDetection) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableDdosDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.DataGuardRules != nil { + s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.BlockedClients != nil { + s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") } - if !this.DisableDdosDetection.Equal(that1.DisableDdosDetection) { - return false + if this.TrustedClients != nil { + s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") } - return true -} -func (this *ReplaceSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.ApiProtectionRules != nil { + s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") } - - that1, ok := that.(*ReplaceSpecType_EnableMaliciousUserDetection) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableMaliciousUserDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.DdosMitigationRules != nil { + s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.ServicePolicyChoice != nil { + s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") } - if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { - return false + if this.HashPolicyChoice != nil { + s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") } - return true -} -func (this *ReplaceSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.TrustClientIpHeadersChoice != nil { + s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_DisableMaliciousUserDetection) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableMaliciousUserDetection) - if ok { - that1 = &that2 - } else { - return false - } + if this.MlConfigChoice != nil { + s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.MaliciousUserDetectionChoice != nil { + s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") } - if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { - return false + if this.ApiDiscoveryChoice != nil { + s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") } - return true -} -func (this *ReplaceSpecType_EnableApiDiscovery) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.BotDefenseChoice != nil { + s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_EnableApiDiscovery) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableApiDiscovery) - if ok { - that1 = &that2 - } else { - return false - } + if this.ApiDefinitionChoice != nil { + s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.IpReputationChoice != nil { + s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") } - if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { - return false + if this.ClientSideDefenseChoice != nil { + s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") } - return true -} -func (this *ReplaceSpecType_DisableApiDiscovery) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.CsrfPolicy != nil { + s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") } - - that1, ok := that.(*ReplaceSpecType_DisableApiDiscovery) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableApiDiscovery) - if ok { - that1 = &that2 - } else { - return false - } + if this.GraphqlRules != nil { + s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.ProtectedCookies != nil { + s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") } - if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { - return false + s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") + if this.DnsInfo != nil { + s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") } - return true -} -func (this *ReplaceSpecType_DisableBotDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + if this.AutoCertInfo != nil { + s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") } - - that1, ok := that.(*ReplaceSpecType_DisableBotDefense) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableBotDefense) - if ok { - that1 = &that2 - } else { - return false - } + if this.InternetVipInfo != nil { + s = append(s, "InternetVipInfo: "+fmt.Sprintf("%#v", this.InternetVipInfo)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if this.SlowDdosMitigationChoice != nil { + s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") } - if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { - return false + if this.JwtValidation != nil { + s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") } - return true -} -func (this *ReplaceSpecType_BotDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil + if this.ThreatMeshChoice != nil { + s = append(s, "ThreatMeshChoice: "+fmt.Sprintf("%#v", this.ThreatMeshChoice)+",\n") } - - that1, ok := that.(*ReplaceSpecType_BotDefense) - if !ok { - that2, ok := that.(ReplaceSpecType_BotDefense) - if ok { - that1 = &that2 - } else { - return false - } + if this.L7DdosAutoMitigationAction != nil { + s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetSpecType_Http) GoString() string { + if this == nil { + return "nil" } - if !this.BotDefense.Equal(that1.BotDefense) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_Http{` + + `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") + return s +} +func (this *GetSpecType_HttpsAutoCert) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_HttpsAutoCert{` + + `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_Https) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_BotDefenseAdvanced) - if !ok { - that2, ok := that.(ReplaceSpecType_BotDefenseAdvanced) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_Https{` + + `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") + return s +} +func (this *GetSpecType_DoNotAdvertise) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DoNotAdvertise{` + + `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") + return s +} +func (this *GetSpecType_AdvertiseOnPublicDefaultVip) GoString() string { + if this == nil { + return "nil" } - if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AdvertiseOnPublicDefaultVip{` + + `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") + return s +} +func (this *GetSpecType_AdvertiseOnPublic) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AdvertiseOnPublic{` + + `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DisableApiDefinition) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_AdvertiseCustom) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DisableApiDefinition) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableApiDefinition) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AdvertiseCustom{` + + `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") + return s +} +func (this *GetSpecType_DefaultPool) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DefaultPool{` + + `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") + return s +} +func (this *GetSpecType_DefaultPoolList) GoString() string { + if this == nil { + return "nil" } - if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DefaultPoolList{` + + `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableWaf) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableWaf{` + + `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ApiDefinition) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_AppFirewall) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_ApiDefinition) - if !ok { - that2, ok := that.(ReplaceSpecType_ApiDefinition) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AppFirewall{` + + `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") + return s +} +func (this *GetSpecType_NoChallenge) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_NoChallenge{` + + `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") + return s +} +func (this *GetSpecType_EnableChallenge) GoString() string { + if this == nil { + return "nil" } - if !this.ApiDefinition.Equal(that1.ApiDefinition) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableChallenge{` + + `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") + return s +} +func (this *GetSpecType_JsChallenge) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_JsChallenge{` + + `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ApiSpecification) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_CaptchaChallenge) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_ApiSpecification) - if !ok { - that2, ok := that.(ReplaceSpecType_ApiSpecification) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_CaptchaChallenge{` + + `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") + return s +} +func (this *GetSpecType_PolicyBasedChallenge) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_PolicyBasedChallenge{` + + `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") + return s +} +func (this *GetSpecType_UserIdClientIp) GoString() string { + if this == nil { + return "nil" } - if !this.ApiSpecification.Equal(that1.ApiSpecification) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_UserIdClientIp{` + + `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") + return s +} +func (this *GetSpecType_UserIdentification) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_UserIdentification{` + + `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ApiDefinitions) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_DisableRateLimit) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_ApiDefinitions) - if !ok { - that2, ok := that.(ReplaceSpecType_ApiDefinitions) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableRateLimit{` + + `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") + return s +} +func (this *GetSpecType_ApiRateLimit) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiRateLimit{` + + `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") + return s +} +func (this *GetSpecType_RateLimit) GoString() string { + if this == nil { + return "nil" } - if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_RateLimit{` + + `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") + return s +} +func (this *GetSpecType_ServicePoliciesFromNamespace) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ServicePoliciesFromNamespace{` + + `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DisableIpReputation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_NoServicePolicies) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DisableIpReputation) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableIpReputation) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_NoServicePolicies{` + + `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") + return s +} +func (this *GetSpecType_ActiveServicePolicies) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ActiveServicePolicies{` + + `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") + return s +} +func (this *GetSpecType_RoundRobin) GoString() string { + if this == nil { + return "nil" } - if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_RoundRobin{` + + `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") + return s +} +func (this *GetSpecType_LeastActive) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_LeastActive{` + + `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_EnableIpReputation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_Random) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_EnableIpReputation) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableIpReputation) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_Random{` + + `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") + return s +} +func (this *GetSpecType_SourceIpStickiness) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SourceIpStickiness{` + + `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") + return s +} +func (this *GetSpecType_CookieStickiness) GoString() string { + if this == nil { + return "nil" } - if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_CookieStickiness{` + + `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") + return s +} +func (this *GetSpecType_RingHash) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_RingHash{` + + `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DisableClientSideDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_DisableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DisableClientSideDefense) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableClientSideDefense) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableTrustClientIpHeaders{` + + `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") + return s +} +func (this *GetSpecType_EnableTrustClientIpHeaders) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { - return false - } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableTrustClientIpHeaders{` + + `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_ClientSideDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*ReplaceSpecType_ClientSideDefense) - if !ok { - that2, ok := that.(ReplaceSpecType_ClientSideDefense) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { - return false +func (this *GetSpecType_SingleLbApp) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SingleLbApp{` + + `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*ReplaceSpecType_SystemDefaultTimeouts) - if !ok { - that2, ok := that.(ReplaceSpecType_SystemDefaultTimeouts) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { - return false +func (this *GetSpecType_MultiLbApp) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_MultiLbApp{` + + `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_SlowDdosMitigation) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_EnableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_SlowDdosMitigation) - if !ok { - that2, ok := that.(ReplaceSpecType_SlowDdosMitigation) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableMaliciousUserDetection{` + + `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableMaliciousUserDetection) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableMaliciousUserDetection{` + + `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") + return s +} +func (this *GetSpecType_EnableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableApiDiscovery{` + + `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableApiDiscovery) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableApiDiscovery{` + + `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_DisableThreatIntelligence) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_DisableBotDefense) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_DisableThreatIntelligence) - if !ok { - that2, ok := that.(ReplaceSpecType_DisableThreatIntelligence) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableBotDefense{` + + `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") + return s +} +func (this *GetSpecType_BotDefense) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_BotDefense{` + + `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") + return s +} +func (this *GetSpecType_BotDefenseAdvanced) GoString() string { + if this == nil { + return "nil" } - if !this.DisableThreatIntelligence.Equal(that1.DisableThreatIntelligence) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_BotDefenseAdvanced{` + + `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableApiDefinition) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableApiDefinition{` + + `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_EnableThreatIntelligence) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_ApiDefinition) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_EnableThreatIntelligence) - if !ok { - that2, ok := that.(ReplaceSpecType_EnableThreatIntelligence) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiDefinition{` + + `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") + return s +} +func (this *GetSpecType_ApiSpecification) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiSpecification{` + + `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") + return s +} +func (this *GetSpecType_ApiDefinitions) GoString() string { + if this == nil { + return "nil" } - if !this.EnableThreatIntelligence.Equal(that1.EnableThreatIntelligence) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiDefinitions{` + + `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableIpReputation) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableIpReputation{` + + `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_L7DdosActionDefault) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_EnableIpReputation) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_L7DdosActionDefault) - if !ok { - that2, ok := that.(ReplaceSpecType_L7DdosActionDefault) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableIpReputation{` + + `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableClientSideDefense) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableClientSideDefense{` + + `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") + return s +} +func (this *GetSpecType_ClientSideDefense) GoString() string { + if this == nil { + return "nil" } - if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ClientSideDefense{` + + `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") + return s +} +func (this *GetSpecType_SystemDefaultTimeouts) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SystemDefaultTimeouts{` + + `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_L7DdosActionBlock) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_SlowDdosMitigation) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_L7DdosActionBlock) - if !ok { - that2, ok := that.(ReplaceSpecType_L7DdosActionBlock) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SlowDdosMitigation{` + + `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") + return s +} +func (this *GetSpecType_DisableThreatMesh) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableThreatMesh{` + + `DisableThreatMesh:` + fmt.Sprintf("%#v", this.DisableThreatMesh) + `}`}, ", ") + return s +} +func (this *GetSpecType_EnableThreatMesh) GoString() string { + if this == nil { + return "nil" } - if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableThreatMesh{` + + `EnableThreatMesh:` + fmt.Sprintf("%#v", this.EnableThreatMesh) + `}`}, ", ") + return s +} +func (this *GetSpecType_L7DdosActionDefault) GoString() string { + if this == nil { + return "nil" } - return true + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionDefault{` + + `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") + return s } -func (this *ReplaceSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (this *GetSpecType_L7DdosActionBlock) GoString() string { + if this == nil { + return "nil" } - - that1, ok := that.(*ReplaceSpecType_L7DdosActionJsChallenge) - if !ok { - that2, ok := that.(ReplaceSpecType_L7DdosActionJsChallenge) - if ok { - that1 = &that2 - } else { - return false - } + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionBlock{` + + `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") + return s +} +func (this *GetSpecType_L7DdosActionJsChallenge) GoString() string { + if this == nil { + return "nil" } - if that1 == nil { - return this == nil - } else if this == nil { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionJsChallenge{` + + `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") + return s +} +func (this *GetSpecType_L7DdosActionNone) GoString() string { + if this == nil { + return "nil" } - if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { - return false + s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionNone{` + + `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") + return s +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" } - return true + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) } -func (this *ReplaceSpecType_L7DdosActionNone) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *ProxyTypeHttps) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} - that1, ok := that.(*ReplaceSpecType_L7DdosActionNone) - if !ok { - that2, ok := that.(ReplaceSpecType_L7DdosActionNone) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { - return false - } - return true +func (m *ProxyTypeHttps) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType) - if !ok { - that2, ok := that.(GetSpecType) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttps) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PortChoice != nil { + { + size := m.PortChoice.Size() + i -= size + if _, err := m.PortChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Domains) != len(that1.Domains) { - return false - } - for i := range this.Domains { - if this.Domains[i] != that1.Domains[i] { - return false + if m.HttpProtocolOptions != nil { + { + size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba } - if that1.LoadbalancerType == nil { - if this.LoadbalancerType != nil { - return false + if m.TlsCertificatesChoice != nil { + { + size := m.TlsCertificatesChoice.Size() + i -= size + if _, err := m.TlsCertificatesChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.LoadbalancerType == nil { - return false - } else if !this.LoadbalancerType.Equal(that1.LoadbalancerType) { - return false } - if len(this.DownstreamTlsCertificateExpirationTimestamps) != len(that1.DownstreamTlsCertificateExpirationTimestamps) { - return false + if m.ConnectionIdleTimeout != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.ConnectionIdleTimeout)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa0 } - for i := range this.DownstreamTlsCertificateExpirationTimestamps { - if !this.DownstreamTlsCertificateExpirationTimestamps[i].Equal(that1.DownstreamTlsCertificateExpirationTimestamps[i]) { - return false + if m.HeaderTransformationType != nil { + { + size, err := m.HeaderTransformationType.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - if that1.AdvertiseChoice == nil { - if this.AdvertiseChoice != nil { - return false + if m.DefaultLbChoice != nil { + { + size := m.DefaultLbChoice.Size() + i -= size + if _, err := m.DefaultLbChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.AdvertiseChoice == nil { - return false - } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { - return false - } - if len(this.DefaultRoutePools) != len(that1.DefaultRoutePools) { - return false } - for i := range this.DefaultRoutePools { - if !this.DefaultRoutePools[i].Equal(that1.DefaultRoutePools[i]) { - return false + if m.PathNormalizeChoice != nil { + { + size := m.PathNormalizeChoice.Size() + i -= size + if _, err := m.PathNormalizeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1.OriginPoolChoice == nil { - if this.OriginPoolChoice != nil { - return false + if m.ServerHeaderChoice != nil { + { + size := m.ServerHeaderChoice.Size() + i -= size + if _, err := m.ServerHeaderChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.OriginPoolChoice == nil { - return false - } else if !this.OriginPoolChoice.Equal(that1.OriginPoolChoice) { - return false - } - if !this.OriginServerSubsetRuleList.Equal(that1.OriginServerSubsetRuleList) { - return false - } - if len(this.Routes) != len(that1.Routes) { - return false } - for i := range this.Routes { - if !this.Routes[i].Equal(that1.Routes[i]) { - return false + if m.AddHsts { + i-- + if m.AddHsts { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } + i-- + dAtA[i] = 0x10 } - if !this.CorsPolicy.Equal(that1.CorsPolicy) { - return false - } - if that1.WafChoice == nil { - if this.WafChoice != nil { - return false + if m.HttpRedirect { + i-- + if m.HttpRedirect { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - } else if this.WafChoice == nil { - return false - } else if !this.WafChoice.Equal(that1.WafChoice) { - return false - } - if this.AddLocation != that1.AddLocation { - return false + i-- + dAtA[i] = 0x8 } - if that1.ChallengeType == nil { - if this.ChallengeType != nil { - return false + return len(dAtA) - i, nil +} + +func (m *ProxyTypeHttps_TlsParameters) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_TlsParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.TlsParameters != nil { + { + size, err := m.TlsParameters.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } else if this.ChallengeType == nil { - return false - } else if !this.ChallengeType.Equal(that1.ChallengeType) { - return false - } - if !this.MoreOption.Equal(that1.MoreOption) { - return false + i-- + dAtA[i] = 0x1a } - if that1.UserIdChoice == nil { - if this.UserIdChoice != nil { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_DefaultHeader) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultHeader != nil { + { + size, err := m.DefaultHeader.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } else if this.UserIdChoice == nil { - return false - } else if !this.UserIdChoice.Equal(that1.UserIdChoice) { - return false + i-- + dAtA[i] = 0x2a } - if that1.RateLimitChoice == nil { - if this.RateLimitChoice != nil { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_ServerName) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_ServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.ServerName) + copy(dAtA[i:], m.ServerName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ServerName))) + i-- + dAtA[i] = 0x32 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_AppendServerName) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_AppendServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.AppendServerName) + copy(dAtA[i:], m.AppendServerName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AppendServerName))) + i-- + dAtA[i] = 0x3a + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_PassThrough) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PassThrough != nil { + { + size, err := m.PassThrough.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } else if this.RateLimitChoice == nil { - return false - } else if !this.RateLimitChoice.Equal(that1.RateLimitChoice) { - return false - } - if !this.MaliciousUserMitigation.Equal(that1.MaliciousUserMitigation) { - return false - } - if len(this.WafExclusionRules) != len(that1.WafExclusionRules) { - return false + i-- + dAtA[i] = 0x42 } - for i := range this.WafExclusionRules { - if !this.WafExclusionRules[i].Equal(that1.WafExclusionRules[i]) { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_EnablePathNormalize) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnablePathNormalize != nil { + { + size, err := m.EnablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x52 } - if len(this.DataGuardRules) != len(that1.DataGuardRules) { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_DisablePathNormalize) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisablePathNormalize != nil { + { + size, err := m.DisablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } - for i := range this.DataGuardRules { - if !this.DataGuardRules[i].Equal(that1.DataGuardRules[i]) { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_Port) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_Port) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintTypes(dAtA, i, uint64(m.Port)) + i-- + dAtA[i] = 0x78 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_NonDefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_NonDefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NonDefaultLoadbalancer != nil { + { + size, err := m.NonDefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x8a } - if len(this.BlockedClients) != len(that1.BlockedClients) { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_DefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_DefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultLoadbalancer != nil { + { + size, err := m.DefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - for i := range this.BlockedClients { - if !this.BlockedClients[i].Equal(that1.BlockedClients[i]) { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_TlsCertParams) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_TlsCertParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.TlsCertParams != nil { + { + size, err := m.TlsCertParams.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 } - if len(this.TrustedClients) != len(that1.TrustedClients) { - return false + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttps_PortRanges) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttps_PortRanges) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.PortRanges) + copy(dAtA[i:], m.PortRanges) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PortRanges))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xca + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - for i := range this.TrustedClients { - if !this.TrustedClients[i].Equal(that1.TrustedClients[i]) { - return false + return dAtA[:n], nil +} + +func (m *ProxyTypeHttp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PortChoice != nil { + { + size := m.PortChoice.Size() + i -= size + if _, err := m.PortChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if !this.ApiProtectionRules.Equal(that1.ApiProtectionRules) { - return false + if m.DnsVolterraManaged { + i-- + if m.DnsVolterraManaged { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 } - if len(this.DdosMitigationRules) != len(that1.DdosMitigationRules) { - return false + return len(dAtA) - i, nil +} + +func (m *ProxyTypeHttp_Port) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttp_Port) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintTypes(dAtA, i, uint64(m.Port)) + i-- + dAtA[i] = 0x10 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttp_PortRanges) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttp_PortRanges) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.PortRanges) + copy(dAtA[i:], m.PortRanges) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PortRanges))) + i-- + dAtA[i] = 0x22 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - for i := range this.DdosMitigationRules { - if !this.DdosMitigationRules[i].Equal(that1.DdosMitigationRules[i]) { - return false + return dAtA[:n], nil +} + +func (m *ProxyTypeHttpsAutoCerts) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PortChoice != nil { + { + size := m.PortChoice.Size() + i -= size + if _, err := m.PortChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1.ServicePolicyChoice == nil { - if this.ServicePolicyChoice != nil { - return false + if m.HttpProtocolOptions != nil { + { + size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } else if this.ServicePolicyChoice == nil { - return false - } else if !this.ServicePolicyChoice.Equal(that1.ServicePolicyChoice) { - return false + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 } - if that1.HashPolicyChoice == nil { - if this.HashPolicyChoice != nil { - return false - } - } else if this.HashPolicyChoice == nil { - return false - } else if !this.HashPolicyChoice.Equal(that1.HashPolicyChoice) { - return false + if m.ConnectionIdleTimeout != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.ConnectionIdleTimeout)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb8 } - if that1.TrustClientIpHeadersChoice == nil { - if this.TrustClientIpHeadersChoice != nil { - return false + if m.HeaderTransformationType != nil { + { + size, err := m.HeaderTransformationType.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } else if this.TrustClientIpHeadersChoice == nil { - return false - } else if !this.TrustClientIpHeadersChoice.Equal(that1.TrustClientIpHeadersChoice) { - return false + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 } - if that1.MlConfigChoice == nil { - if this.MlConfigChoice != nil { - return false + if m.DefaultLbChoice != nil { + { + size := m.DefaultLbChoice.Size() + i -= size + if _, err := m.DefaultLbChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.MlConfigChoice == nil { - return false - } else if !this.MlConfigChoice.Equal(that1.MlConfigChoice) { - return false } - if that1.DdosDetectionChoice == nil { - if this.DdosDetectionChoice != nil { - return false + if m.PathNormalizeChoice != nil { + { + size := m.PathNormalizeChoice.Size() + i -= size + if _, err := m.PathNormalizeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.DdosDetectionChoice == nil { - return false - } else if !this.DdosDetectionChoice.Equal(that1.DdosDetectionChoice) { - return false } - if that1.MaliciousUserDetectionChoice == nil { - if this.MaliciousUserDetectionChoice != nil { - return false + if m.ServerHeaderChoice != nil { + { + size := m.ServerHeaderChoice.Size() + i -= size + if _, err := m.ServerHeaderChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.MaliciousUserDetectionChoice == nil { - return false - } else if !this.MaliciousUserDetectionChoice.Equal(that1.MaliciousUserDetectionChoice) { - return false } - if that1.ApiDiscoveryChoice == nil { - if this.ApiDiscoveryChoice != nil { - return false + if m.MtlsChoice != nil { + { + size := m.MtlsChoice.Size() + i -= size + if _, err := m.MtlsChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } - } else if this.ApiDiscoveryChoice == nil { - return false - } else if !this.ApiDiscoveryChoice.Equal(that1.ApiDiscoveryChoice) { - return false } - if that1.BotDefenseChoice == nil { - if this.BotDefenseChoice != nil { - return false + if m.TlsConfig != nil { + { + size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } else if this.BotDefenseChoice == nil { - return false - } else if !this.BotDefenseChoice.Equal(that1.BotDefenseChoice) { - return false + i-- + dAtA[i] = 0x1a } - if that1.ApiDefinitionChoice == nil { - if this.ApiDefinitionChoice != nil { - return false + if m.AddHsts { + i-- + if m.AddHsts { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - } else if this.ApiDefinitionChoice == nil { - return false - } else if !this.ApiDefinitionChoice.Equal(that1.ApiDefinitionChoice) { - return false + i-- + dAtA[i] = 0x10 } - if that1.IpReputationChoice == nil { - if this.IpReputationChoice != nil { - return false - } - } else if this.IpReputationChoice == nil { - return false - } else if !this.IpReputationChoice.Equal(that1.IpReputationChoice) { - return false - } - if that1.ClientSideDefenseChoice == nil { - if this.ClientSideDefenseChoice != nil { - return false - } - } else if this.ClientSideDefenseChoice == nil { - return false - } else if !this.ClientSideDefenseChoice.Equal(that1.ClientSideDefenseChoice) { - return false - } - if !this.CsrfPolicy.Equal(that1.CsrfPolicy) { - return false - } - if len(this.GraphqlRules) != len(that1.GraphqlRules) { - return false - } - for i := range this.GraphqlRules { - if !this.GraphqlRules[i].Equal(that1.GraphqlRules[i]) { - return false - } - } - if len(this.ProtectedCookies) != len(that1.ProtectedCookies) { - return false - } - for i := range this.ProtectedCookies { - if !this.ProtectedCookies[i].Equal(that1.ProtectedCookies[i]) { - return false - } - } - if this.HostName != that1.HostName { - return false - } - if len(this.DnsInfo) != len(that1.DnsInfo) { - return false - } - for i := range this.DnsInfo { - if !this.DnsInfo[i].Equal(that1.DnsInfo[i]) { - return false - } - } - if this.State != that1.State { - return false - } - if !this.AutoCertInfo.Equal(that1.AutoCertInfo) { - return false - } - if len(this.InternetVipInfo) != len(that1.InternetVipInfo) { - return false - } - for i := range this.InternetVipInfo { - if !this.InternetVipInfo[i].Equal(that1.InternetVipInfo[i]) { - return false - } - } - if that1.SlowDdosMitigationChoice == nil { - if this.SlowDdosMitigationChoice != nil { - return false - } - } else if this.SlowDdosMitigationChoice == nil { - return false - } else if !this.SlowDdosMitigationChoice.Equal(that1.SlowDdosMitigationChoice) { - return false - } - if !this.JwtValidation.Equal(that1.JwtValidation) { - return false - } - if that1.ThreatIntelligenceChoice == nil { - if this.ThreatIntelligenceChoice != nil { - return false - } - } else if this.ThreatIntelligenceChoice == nil { - return false - } else if !this.ThreatIntelligenceChoice.Equal(that1.ThreatIntelligenceChoice) { - return false - } - if that1.L7DdosAutoMitigationAction == nil { - if this.L7DdosAutoMitigationAction != nil { - return false + if m.HttpRedirect { + i-- + if m.HttpRedirect { + dAtA[i] = 1 + } else { + dAtA[i] = 0 } - } else if this.L7DdosAutoMitigationAction == nil { - return false - } else if !this.L7DdosAutoMitigationAction.Equal(that1.L7DdosAutoMitigationAction) { - return false - } - if this.CertState != that1.CertState { - return false + i-- + dAtA[i] = 0x8 } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_Http) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_Http) - if !ok { - that2, ok := that.(GetSpecType_Http) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Http.Equal(that1.Http) { - return false - } - return true +func (m *ProxyTypeHttpsAutoCerts_NoMtls) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_HttpsAutoCert) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_HttpsAutoCert) - if !ok { - that2, ok := that.(GetSpecType_HttpsAutoCert) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_NoMtls) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoMtls != nil { + { + size, err := m.NoMtls.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.HttpsAutoCert.Equal(that1.HttpsAutoCert) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_UseMtls) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_Https) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_Https) - if !ok { - that2, ok := that.(GetSpecType_Https) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_UseMtls) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UseMtls != nil { + { + size, err := m.UseMtls.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x32 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Https.Equal(that1.Https) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DoNotAdvertise) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DoNotAdvertise) - if !ok { - that2, ok := that.(GetSpecType_DoNotAdvertise) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultHeader != nil { + { + size, err := m.DefaultHeader.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x42 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_AdvertiseOnPublicDefaultVip) - if !ok { - that2, ok := that.(GetSpecType_AdvertiseOnPublicDefaultVip) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { - return false - } - return true +func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.ServerName) + copy(dAtA[i:], m.ServerName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ServerName))) + i-- + dAtA[i] = 0x4a + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_AdvertiseOnPublic) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_AdvertiseOnPublic) - if !ok { - that2, ok := that.(GetSpecType_AdvertiseOnPublic) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { - return false - } - return true +func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.AppendServerName) + copy(dAtA[i:], m.AppendServerName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AppendServerName))) + i-- + dAtA[i] = 0x52 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_AdvertiseCustom) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_AdvertiseCustom) - if !ok { - that2, ok := that.(GetSpecType_AdvertiseCustom) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PassThrough != nil { + { + size, err := m.PassThrough.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x5a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DefaultPool) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DefaultPool) - if !ok { - that2, ok := that.(GetSpecType_DefaultPool) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnablePathNormalize != nil { + { + size, err := m.EnablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x6a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DefaultPool.Equal(that1.DefaultPool) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DefaultPoolList) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DefaultPoolList) - if !ok { - that2, ok := that.(GetSpecType_DefaultPoolList) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisablePathNormalize != nil { + { + size, err := m.DisablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x72 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DefaultPoolList.Equal(that1.DefaultPoolList) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_Port) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableWaf) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableWaf) - if !ok { - that2, ok := that.(GetSpecType_DisableWaf) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableWaf.Equal(that1.DisableWaf) { - return false - } - return true +func (m *ProxyTypeHttpsAutoCerts_Port) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintTypes(dAtA, i, uint64(m.Port)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x90 + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_AppFirewall) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_AppFirewall) - if !ok { - that2, ok := that.(GetSpecType_AppFirewall) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NonDefaultLoadbalancer != nil { + { + size, err := m.NonDefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.AppFirewall.Equal(that1.AppFirewall) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_NoChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_NoChallenge) - if !ok { - that2, ok := that.(GetSpecType_NoChallenge) - if ok { - that1 = &that2 - } else { - return false +func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultLoadbalancer != nil { + { + size, err := m.DefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xaa } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.NoChallenge.Equal(that1.NoChallenge) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *ProxyTypeHttpsAutoCerts_PortRanges) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_EnableChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_EnableChallenge) - if !ok { - that2, ok := that.(GetSpecType_EnableChallenge) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.EnableChallenge.Equal(that1.EnableChallenge) { - return false - } - return true +func (m *ProxyTypeHttpsAutoCerts_PortRanges) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.PortRanges) + copy(dAtA[i:], m.PortRanges) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PortRanges))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xd2 + return len(dAtA) - i, nil } -func (this *GetSpecType_JsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *HashPolicyListType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} - that1, ok := that.(*GetSpecType_JsChallenge) - if !ok { - that2, ok := that.(GetSpecType_JsChallenge) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.JsChallenge.Equal(that1.JsChallenge) { - return false - } - return true +func (m *HashPolicyListType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_CaptchaChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_CaptchaChallenge) - if !ok { - that2, ok := that.(GetSpecType_CaptchaChallenge) - if ok { - that1 = &that2 - } else { - return false +func (m *HashPolicyListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.HashPolicy) > 0 { + for iNdEx := len(m.HashPolicy) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.HashPolicy[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.CaptchaChallenge.Equal(that1.CaptchaChallenge) { - return false - } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_PolicyBasedChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_PolicyBasedChallenge) - if !ok { - that2, ok := that.(GetSpecType_PolicyBasedChallenge) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.PolicyBasedChallenge.Equal(that1.PolicyBasedChallenge) { - return false +func (m *MirrorPolicyType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return true + return dAtA[:n], nil } -func (this *GetSpecType_UserIdClientIp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_UserIdClientIp) - if !ok { - that2, ok := that.(GetSpecType_UserIdClientIp) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.UserIdClientIp.Equal(that1.UserIdClientIp) { - return false - } - return true +func (m *MirrorPolicyType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_UserIdentification) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_UserIdentification) - if !ok { - that2, ok := that.(GetSpecType_UserIdentification) - if ok { - that1 = &that2 - } else { - return false +func (m *MirrorPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Percent != nil { + { + size, err := m.Percent.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.UserIdentification.Equal(that1.UserIdentification) { - return false + if m.OriginPool != nil { + { + size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_DisableRateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableRateLimit) - if !ok { - that2, ok := that.(GetSpecType_DisableRateLimit) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableRateLimit.Equal(that1.DisableRateLimit) { - return false +func (m *RouteSimpleAdvancedOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return true + return dAtA[:n], nil } -func (this *GetSpecType_ApiRateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_ApiRateLimit) - if !ok { - that2, ok := that.(GetSpecType_ApiRateLimit) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ApiRateLimit.Equal(that1.ApiRateLimit) { - return false - } - return true +func (m *RouteSimpleAdvancedOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_RateLimit) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_RateLimit) - if !ok { - that2, ok := that.(GetSpecType_RateLimit) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.WafChoice != nil { + { + size := m.WafChoice.Size() + i -= size + if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.RateLimit.Equal(that1.RateLimit) { - return false - } - return true -} -func (this *GetSpecType_ServicePoliciesFromNamespace) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*GetSpecType_ServicePoliciesFromNamespace) - if !ok { - that2, ok := that.(GetSpecType_ServicePoliciesFromNamespace) - if ok { - that1 = &that2 - } else { - return false + if m.RewriteChoice != nil { + { + size := m.RewriteChoice.Size() + i -= size + if _, err := m.RewriteChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if m.CsrfPolicy != nil { + { + size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xda } - if !this.ServicePoliciesFromNamespace.Equal(that1.ServicePoliciesFromNamespace) { - return false + if m.RetryPolicyChoice != nil { + { + size := m.RetryPolicyChoice.Size() + i -= size + if _, err := m.RetryPolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return true -} -func (this *GetSpecType_NoServicePolicies) Equal(that interface{}) bool { - if that == nil { - return this == nil + if m.BotDefenseJavascriptInjectionChoice != nil { + { + size := m.BotDefenseJavascriptInjectionChoice.Size() + i -= size + if _, err := m.BotDefenseJavascriptInjectionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - - that1, ok := that.(*GetSpecType_NoServicePolicies) - if !ok { - that2, ok := that.(GetSpecType_NoServicePolicies) - if ok { - that1 = &that2 - } else { - return false + if m.ClusterRetractChoice != nil { + { + size := m.ClusterRetractChoice.Size() + i -= size + if _, err := m.ClusterRetractChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if m.MirroringChoice != nil { + { + size := m.MirroringChoice.Size() + i -= size + if _, err := m.MirroringChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if !this.NoServicePolicies.Equal(that1.NoServicePolicies) { - return false + if m.BufferChoice != nil { + { + size := m.BufferChoice.Size() + i -= size + if _, err := m.BufferChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return true -} -func (this *GetSpecType_ActiveServicePolicies) Equal(that interface{}) bool { - if that == nil { - return this == nil + if m.Timeout != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Timeout)) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xe0 } - - that1, ok := that.(*GetSpecType_ActiveServicePolicies) - if !ok { - that2, ok := that.(GetSpecType_ActiveServicePolicies) - if ok { - that1 = &that2 - } else { - return false + if m.WebsocketChoice != nil { + { + size := m.WebsocketChoice.Size() + i -= size + if _, err := m.WebsocketChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ActiveServicePolicies.Equal(that1.ActiveServicePolicies) { - return false + if m.SpdyChoice != nil { + { + size := m.SpdyChoice.Size() + i -= size + if _, err := m.SpdyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return true -} -func (this *GetSpecType_RoundRobin) Equal(that interface{}) bool { - if that == nil { - return this == nil + if m.CorsPolicy != nil { + { + size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - - that1, ok := that.(*GetSpecType_RoundRobin) - if !ok { - that2, ok := that.(GetSpecType_RoundRobin) - if ok { - that1 = &that2 + if m.DisableLocationAdd { + i-- + if m.DisableLocationAdd { + dAtA[i] = 1 } else { - return false + dAtA[i] = 0 } + i-- + dAtA[i] = 0x68 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.RoundRobin.Equal(that1.RoundRobin) { - return false - } - return true -} -func (this *GetSpecType_LeastActive) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(m.ResponseHeadersToRemove) > 0 { + for iNdEx := len(m.ResponseHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ResponseHeadersToRemove[iNdEx]) + copy(dAtA[i:], m.ResponseHeadersToRemove[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ResponseHeadersToRemove[iNdEx]))) + i-- + dAtA[i] = 0x62 + } } - - that1, ok := that.(*GetSpecType_LeastActive) - if !ok { - that2, ok := that.(GetSpecType_LeastActive) - if ok { - that1 = &that2 - } else { - return false + if len(m.ResponseHeadersToAdd) > 0 { + for iNdEx := len(m.ResponseHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ResponseHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.LeastActive.Equal(that1.LeastActive) { - return false + if len(m.RequestHeadersToRemove) > 0 { + for iNdEx := len(m.RequestHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.RequestHeadersToRemove[iNdEx]) + copy(dAtA[i:], m.RequestHeadersToRemove[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RequestHeadersToRemove[iNdEx]))) + i-- + dAtA[i] = 0x52 + } } - return true -} -func (this *GetSpecType_Random) Equal(that interface{}) bool { - if that == nil { - return this == nil + if len(m.RequestHeadersToAdd) > 0 { + for iNdEx := len(m.RequestHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RequestHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } } - - that1, ok := that.(*GetSpecType_Random) - if !ok { - that2, ok := that.(GetSpecType_Random) - if ok { - that1 = &that2 - } else { - return false + if len(m.EndpointSubsets) > 0 { + keysForEndpointSubsets := make([]string, 0, len(m.EndpointSubsets)) + for k := range m.EndpointSubsets { + keysForEndpointSubsets = append(keysForEndpointSubsets, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForEndpointSubsets) + for iNdEx := len(keysForEndpointSubsets) - 1; iNdEx >= 0; iNdEx-- { + v := m.EndpointSubsets[string(keysForEndpointSubsets[iNdEx])] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintTypes(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(keysForEndpointSubsets[iNdEx]) + copy(dAtA[i:], keysForEndpointSubsets[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForEndpointSubsets[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x2a } } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if m.Priority != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Priority)) + i-- + dAtA[i] = 0x20 } - if !this.Random.Equal(that1.Random) { - return false + if m.HashPolicyChoice != nil { + { + size := m.HashPolicyChoice.Size() + i -= size + if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_SourceIpStickiness) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_SourceIpStickiness) - if !ok { - that2, ok := that.(GetSpecType_SourceIpStickiness) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SourceIpStickiness.Equal(that1.SourceIpStickiness) { - return false - } - return true +func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_CookieStickiness) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_CookieStickiness) - if !ok { - that2, ok := that.(GetSpecType_CookieStickiness) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CommonHashPolicy != nil { + { + size, err := m.CommonHashPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x12 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.CookieStickiness.Equal(that1.CookieStickiness) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_RingHash) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_RingHash) - if !ok { - that2, ok := that.(GetSpecType_RingHash) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SpecificHashPolicy != nil { + { + size, err := m.SpecificHashPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.RingHash.Equal(that1.RingHash) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableTrustClientIpHeaders) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableTrustClientIpHeaders) - if !ok { - that2, ok := that.(GetSpecType_DisableTrustClientIpHeaders) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisablePrefixRewrite != nil { + { + size, err := m.DisablePrefixRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x3a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableTrustClientIpHeaders.Equal(that1.DisableTrustClientIpHeaders) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_PrefixRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_EnableTrustClientIpHeaders) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_EnableTrustClientIpHeaders) - if !ok { - that2, ok := that.(GetSpecType_EnableTrustClientIpHeaders) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.EnableTrustClientIpHeaders.Equal(that1.EnableTrustClientIpHeaders) { - return false - } - return true +func (m *RouteSimpleAdvancedOptions_PrefixRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.PrefixRewrite) + copy(dAtA[i:], m.PrefixRewrite) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PrefixRewrite))) + i-- + dAtA[i] = 0x42 + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_InheritedWaf) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_SingleLbApp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_SingleLbApp) - if !ok { - that2, ok := that.(GetSpecType_SingleLbApp) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_InheritedWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.InheritedWaf != nil { + { + size, err := m.InheritedWaf.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x7a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SingleLbApp.Equal(that1.SingleLbApp) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DisableSpdy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_MultiLbApp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_MultiLbApp) - if !ok { - that2, ok := that.(GetSpecType_MultiLbApp) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DisableSpdy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableSpdy != nil { + { + size, err := m.DisableSpdy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.MultiLbApp.Equal(that1.MultiLbApp) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_EnableSpdy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_EnableDdosDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_EnableDdosDetection) - if !ok { - that2, ok := that.(GetSpecType_EnableDdosDetection) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_EnableSpdy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableSpdy != nil { + { + size, err := m.EnableSpdy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xaa } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.EnableDdosDetection.Equal(that1.EnableDdosDetection) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableDdosDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableDdosDetection) - if !ok { - that2, ok := that.(GetSpecType_DisableDdosDetection) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableWebSocketConfig != nil { + { + size, err := m.DisableWebSocketConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableDdosDetection.Equal(that1.DisableDdosDetection) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_WebSocketConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_EnableMaliciousUserDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_EnableMaliciousUserDetection) - if !ok { - that2, ok := that.(GetSpecType_EnableMaliciousUserDetection) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_WebSocketConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.WebSocketConfig != nil { + { + size, err := m.WebSocketConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.EnableMaliciousUserDetection.Equal(that1.EnableMaliciousUserDetection) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableMaliciousUserDetection) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableMaliciousUserDetection) - if !ok { - that2, ok := that.(GetSpecType_DisableMaliciousUserDetection) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultRetryPolicy != nil { + { + size, err := m.DefaultRetryPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xd2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableMaliciousUserDetection.Equal(that1.DisableMaliciousUserDetection) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_RetryPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_EnableApiDiscovery) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_EnableApiDiscovery) - if !ok { - that2, ok := that.(GetSpecType_EnableApiDiscovery) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_RetryPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RetryPolicy != nil { + { + size, err := m.RetryPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.EnableApiDiscovery.Equal(that1.EnableApiDiscovery) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_CommonBuffering) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableApiDiscovery) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableApiDiscovery) - if !ok { - that2, ok := that.(GetSpecType_DisableApiDiscovery) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_CommonBuffering) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CommonBuffering != nil { + { + size, err := m.CommonBuffering.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xf2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableApiDiscovery.Equal(that1.DisableApiDiscovery) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_BufferPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableBotDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableBotDefense) - if !ok { - that2, ok := that.(GetSpecType_DisableBotDefense) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_BufferPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BufferPolicy != nil { + { + size, err := m.BufferPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xfa } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableBotDefense.Equal(that1.DisableBotDefense) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DisableMirroring) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_BotDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_BotDefense) - if !ok { - that2, ok := that.(GetSpecType_BotDefense) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DisableMirroring) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMirroring != nil { + { + size, err := m.DisableMirroring.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x8a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.BotDefense.Equal(that1.BotDefense) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_MirrorPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_BotDefenseAdvanced) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_BotDefenseAdvanced) - if !ok { - that2, ok := that.(GetSpecType_BotDefenseAdvanced) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_MirrorPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MirrorPolicy != nil { + { + size, err := m.MirrorPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x92 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.BotDefenseAdvanced.Equal(that1.BotDefenseAdvanced) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_RetractCluster) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableApiDefinition) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableApiDefinition) - if !ok { - that2, ok := that.(GetSpecType_DisableApiDefinition) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_RetractCluster) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RetractCluster != nil { + { + size, err := m.RetractCluster.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xa2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableApiDefinition.Equal(that1.DisableApiDefinition) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_ApiDefinition) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_ApiDefinition) - if !ok { - that2, ok := that.(GetSpecType_ApiDefinition) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DoNotRetractCluster != nil { + { + size, err := m.DoNotRetractCluster.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ApiDefinition.Equal(that1.ApiDefinition) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_ApiSpecification) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_ApiSpecification) - if !ok { - that2, ok := that.(GetSpecType_ApiSpecification) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.InheritedBotDefenseJavascriptInjection != nil { + { + size, err := m.InheritedBotDefenseJavascriptInjection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xba } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ApiSpecification.Equal(that1.ApiSpecification) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_ApiDefinitions) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_ApiDefinitions) - if !ok { - that2, ok := that.(GetSpecType_ApiDefinitions) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BotDefenseJavascriptInjection != nil { + { + size, err := m.BotDefenseJavascriptInjection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xc2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.ApiDefinitions.Equal(that1.ApiDefinitions) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_DisableWaf) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableIpReputation) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableIpReputation) - if !ok { - that2, ok := that.(GetSpecType_DisableIpReputation) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableWaf != nil { + { + size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xca } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableIpReputation.Equal(that1.DisableIpReputation) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_EnableIpReputation) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_EnableIpReputation) - if !ok { - that2, ok := that.(GetSpecType_EnableIpReputation) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoRetryPolicy != nil { + { + size, err := m.NoRetryPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.EnableIpReputation.Equal(that1.EnableIpReputation) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_RegexRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableClientSideDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableClientSideDefense) - if !ok { - that2, ok := that.(GetSpecType_DisableClientSideDefense) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteSimpleAdvancedOptions_RegexRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RegexRewrite != nil { + { + size, err := m.RegexRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xe2 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableClientSideDefense.Equal(that1.DisableClientSideDefense) { - return false + return len(dAtA) - i, nil +} +func (m *RouteSimpleAdvancedOptions_AppFirewall) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteSimpleAdvancedOptions_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AppFirewall != nil { + { + size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xa2 } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_ClientSideDefense) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *RouteTypeSimpleWithDefaultOriginPool) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} - that1, ok := that.(*GetSpecType_ClientSideDefense) - if !ok { - that2, ok := that.(GetSpecType_ClientSideDefense) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeSimpleWithDefaultOriginPool) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTypeSimpleWithDefaultOriginPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.HostRewriteParams != nil { + { + size := m.HostRewriteParams.Size() + i -= size + if _, err := m.HostRewriteParams.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } } } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - if !this.ClientSideDefense.Equal(that1.ClientSideDefense) { - return false + if m.HttpMethod != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + i-- + dAtA[i] = 0x8 } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_SystemDefaultTimeouts) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_SystemDefaultTimeouts) - if !ok { - that2, ok := that.(GetSpecType_SystemDefaultTimeouts) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SystemDefaultTimeouts.Equal(that1.SystemDefaultTimeouts) { - return false - } - return true +func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_SlowDdosMitigation) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_SlowDdosMitigation) - if !ok { - that2, ok := that.(GetSpecType_SlowDdosMitigation) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AutoHostRewrite != nil { + { + size, err := m.AutoHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x22 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SlowDdosMitigation.Equal(that1.SlowDdosMitigation) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableThreatIntelligence) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_DisableThreatIntelligence) - if !ok { - that2, ok := that.(GetSpecType_DisableThreatIntelligence) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.HostRewrite) + copy(dAtA[i:], m.HostRewrite) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostRewrite))) + i-- + dAtA[i] = 0x2a + return len(dAtA) - i, nil +} +func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableHostRewrite != nil { + { + size, err := m.DisableHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x32 } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.DisableThreatIntelligence.Equal(that1.DisableThreatIntelligence) { - return false - } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_EnableThreatIntelligence) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *RouteTypeSimple) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} - that1, ok := that.(*GetSpecType_EnableThreatIntelligence) - if !ok { - that2, ok := that.(GetSpecType_EnableThreatIntelligence) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeSimple) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTypeSimple) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncomingPort != nil { + { + size, err := m.IncomingPort.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x52 } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if len(m.Headers) > 0 { + for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } } - if !this.EnableThreatIntelligence.Equal(that1.EnableThreatIntelligence) { - return false + if m.AdvancedOptions != nil { + { + size, err := m.AdvancedOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - return true -} -func (this *GetSpecType_L7DdosActionDefault) Equal(that interface{}) bool { - if that == nil { - return this == nil + if m.HostRewriteParams != nil { + { + size := m.HostRewriteParams.Size() + i -= size + if _, err := m.HostRewriteParams.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - - that1, ok := that.(*GetSpecType_L7DdosActionDefault) - if !ok { - that2, ok := that.(GetSpecType_L7DdosActionDefault) - if ok { - that1 = &that2 - } else { - return false + if len(m.OriginPools) > 0 { + for iNdEx := len(m.OriginPools) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.OriginPools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if m.HttpMethod != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + i-- + dAtA[i] = 0x10 } - if !this.L7DdosActionDefault.Equal(that1.L7DdosActionDefault) { - return false + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_L7DdosActionBlock) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_L7DdosActionBlock) - if !ok { - that2, ok := that.(GetSpecType_L7DdosActionBlock) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeSimple_AutoHostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTypeSimple_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AutoHostRewrite != nil { + { + size, err := m.AutoHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.L7DdosActionBlock.Equal(that1.L7DdosActionBlock) { - return false - } - return true + return len(dAtA) - i, nil +} +func (m *RouteTypeSimple_HostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_L7DdosActionJsChallenge) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*GetSpecType_L7DdosActionJsChallenge) - if !ok { - that2, ok := that.(GetSpecType_L7DdosActionJsChallenge) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeSimple_HostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.HostRewrite) + copy(dAtA[i:], m.HostRewrite) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostRewrite))) + i-- + dAtA[i] = 0x32 + return len(dAtA) - i, nil +} +func (m *RouteTypeSimple_DisableHostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTypeSimple_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableHostRewrite != nil { + { + size, err := m.DisableHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x3a } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.L7DdosActionJsChallenge.Equal(that1.L7DdosActionJsChallenge) { - return false - } - return true + return len(dAtA) - i, nil } -func (this *GetSpecType_L7DdosActionNone) Equal(that interface{}) bool { - if that == nil { - return this == nil +func (m *RouteTypeRedirect) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} - that1, ok := that.(*GetSpecType_L7DdosActionNone) - if !ok { - that2, ok := that.(GetSpecType_L7DdosActionNone) - if ok { - that1 = &that2 - } else { - return false +func (m *RouteTypeRedirect) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteTypeRedirect) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncomingPort != nil { + { + size, err := m.IncomingPort.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x2a } - if that1 == nil { - return this == nil - } else if this == nil { - return false + if len(m.Headers) > 0 { + for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } } - if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { - return false + if m.RouteRedirect != nil { + { + size, err := m.RouteRedirect.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - return true -} -func (this *InlineRateLimiter) GoString() string { - if this == nil { - return "nil" + if m.HttpMethod != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + i-- + dAtA[i] = 0x10 } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.InlineRateLimiter{") - s = append(s, "Threshold: "+fmt.Sprintf("%#v", this.Threshold)+",\n") - s = append(s, "Unit: "+fmt.Sprintf("%#v", this.Unit)+",\n") - if this.CountByChoice != nil { - s = append(s, "CountByChoice: "+fmt.Sprintf("%#v", this.CountByChoice)+",\n") + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *InlineRateLimiter_UseHttpLbUserId) GoString() string { - if this == nil { - return "nil" + +func (m *RouteTypeDirectResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{` + - `UseHttpLbUserId:` + fmt.Sprintf("%#v", this.UseHttpLbUserId) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *InlineRateLimiter_RefUserId) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.InlineRateLimiter_RefUserId{` + - `RefUserId:` + fmt.Sprintf("%#v", this.RefUserId) + `}`}, ", ") - return s + +func (m *RouteTypeDirectResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ServerUrlRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 12) - s = append(s, "&http_loadbalancer.ServerUrlRule{") - if this.DomainChoice != nil { - s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") - } - s = append(s, "BasePath: "+fmt.Sprintf("%#v", this.BasePath)+",\n") - s = append(s, "ApiGroup: "+fmt.Sprintf("%#v", this.ApiGroup)+",\n") - if this.RequestMatcher != nil { - s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") + +func (m *RouteTypeDirectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncomingPort != nil { + { + size, err := m.IncomingPort.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - if this.ClientMatcher != nil { - s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + if len(m.Headers) > 0 { + for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } } - if this.RateLimiterChoice != nil { - s = append(s, "RateLimiterChoice: "+fmt.Sprintf("%#v", this.RateLimiterChoice)+",\n") + if m.RouteDirectResponse != nil { + { + size, err := m.RouteDirectResponse.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ServerUrlRule_AnyDomain) GoString() string { - if this == nil { - return "nil" + if m.HttpMethod != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + i-- + dAtA[i] = 0x10 } - s := strings.Join([]string{`&http_loadbalancer.ServerUrlRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s -} -func (this *ServerUrlRule_SpecificDomain) GoString() string { - if this == nil { - return "nil" + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.ServerUrlRule_SpecificDomain{` + - `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ServerUrlRule_InlineRateLimiter) GoString() string { - if this == nil { - return "nil" + +func (m *RouteTypeCustomRoute) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ServerUrlRule_InlineRateLimiter{` + - `InlineRateLimiter:` + fmt.Sprintf("%#v", this.InlineRateLimiter) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ServerUrlRule_RefRateLimiter) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ServerUrlRule_RefRateLimiter{` + - `RefRateLimiter:` + fmt.Sprintf("%#v", this.RefRateLimiter) + `}`}, ", ") - return s + +func (m *RouteTypeCustomRoute) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ApiEndpointRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 13) - s = append(s, "&http_loadbalancer.ApiEndpointRule{") - if this.DomainChoice != nil { - s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") - } - s = append(s, "BasePath: "+fmt.Sprintf("%#v", this.BasePath)+",\n") - s = append(s, "ApiEndpointPath: "+fmt.Sprintf("%#v", this.ApiEndpointPath)+",\n") - if this.ApiEndpointMethod != nil { - s = append(s, "ApiEndpointMethod: "+fmt.Sprintf("%#v", this.ApiEndpointMethod)+",\n") - } - if this.RequestMatcher != nil { - s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") - } - if this.ClientMatcher != nil { - s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") - } - if this.RateLimiterChoice != nil { - s = append(s, "RateLimiterChoice: "+fmt.Sprintf("%#v", this.RateLimiterChoice)+",\n") + +func (m *RouteTypeCustomRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.RouteRef != nil { + { + size, err := m.RouteRef.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ApiEndpointRule_AnyDomain) GoString() string { - if this == nil { - return "nil" + +func (m *RouteType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ApiEndpointRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ApiEndpointRule_SpecificDomain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ApiEndpointRule_SpecificDomain{` + - `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") - return s + +func (m *RouteType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ApiEndpointRule_InlineRateLimiter) GoString() string { - if this == nil { - return "nil" + +func (m *RouteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Choice != nil { + { + size := m.Choice.Size() + i -= size + if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.ApiEndpointRule_InlineRateLimiter{` + - `InlineRateLimiter:` + fmt.Sprintf("%#v", this.InlineRateLimiter) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ApiEndpointRule_RefRateLimiter) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ApiEndpointRule_RefRateLimiter{` + - `RefRateLimiter:` + fmt.Sprintf("%#v", this.RefRateLimiter) + `}`}, ", ") - return s + +func (m *RouteType_SimpleRoute) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *BypassRateLimitingRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 12) - s = append(s, "&http_loadbalancer.BypassRateLimitingRule{") - if this.DomainChoice != nil { - s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") - } - if this.DestinationType != nil { - s = append(s, "DestinationType: "+fmt.Sprintf("%#v", this.DestinationType)+",\n") - } - if this.RequestMatcher != nil { - s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") - } - if this.ClientMatcher != nil { - s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") + +func (m *RouteType_SimpleRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SimpleRoute != nil { + { + size, err := m.SimpleRoute.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *BypassRateLimitingRule_AnyDomain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.BypassRateLimitingRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s +func (m *RouteType_RedirectRoute) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *BypassRateLimitingRule_SpecificDomain) GoString() string { - if this == nil { - return "nil" + +func (m *RouteType_RedirectRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RedirectRoute != nil { + { + size, err := m.RedirectRoute.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.BypassRateLimitingRule_SpecificDomain{` + - `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *BypassRateLimitingRule_AnyUrl) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.BypassRateLimitingRule_AnyUrl{` + - `AnyUrl:` + fmt.Sprintf("%#v", this.AnyUrl) + `}`}, ", ") - return s +func (m *RouteType_DirectResponseRoute) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *BypassRateLimitingRule_BasePath) GoString() string { - if this == nil { - return "nil" + +func (m *RouteType_DirectResponseRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DirectResponseRoute != nil { + { + size, err := m.DirectResponseRoute.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.BypassRateLimitingRule_BasePath{` + - `BasePath:` + fmt.Sprintf("%#v", this.BasePath) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *BypassRateLimitingRule_ApiEndpoint) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.BypassRateLimitingRule_ApiEndpoint{` + - `ApiEndpoint:` + fmt.Sprintf("%#v", this.ApiEndpoint) + `}`}, ", ") - return s +func (m *RouteType_CustomRouteObject) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *BypassRateLimitingRule_ApiGroups) GoString() string { - if this == nil { - return "nil" + +func (m *RouteType_CustomRouteObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CustomRouteObject != nil { + { + size, err := m.CustomRouteObject.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.BypassRateLimitingRule_ApiGroups{` + - `ApiGroups:` + fmt.Sprintf("%#v", this.ApiGroups) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *BypassRateLimitingRules) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.BypassRateLimitingRules{") - if this.BypassRateLimitingRules != nil { - s = append(s, "BypassRateLimitingRules: "+fmt.Sprintf("%#v", this.BypassRateLimitingRules)+",\n") +func (m *AdvancedOptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *APIRateLimit) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&http_loadbalancer.APIRateLimit{") - if this.IpAllowedListChoice != nil { - s = append(s, "IpAllowedListChoice: "+fmt.Sprintf("%#v", this.IpAllowedListChoice)+",\n") + +func (m *AdvancedOptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AdvancedOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.CookiesToModify) > 0 { + for iNdEx := len(m.CookiesToModify) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CookiesToModify[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 + } } - if this.ServerUrlRules != nil { - s = append(s, "ServerUrlRules: "+fmt.Sprintf("%#v", this.ServerUrlRules)+",\n") + if m.StrictSniHostHeaderCheckChoice != nil { + { + size := m.StrictSniHostHeaderCheckChoice.Size() + i -= size + if _, err := m.StrictSniHostHeaderCheckChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.ApiEndpointRules != nil { - s = append(s, "ApiEndpointRules: "+fmt.Sprintf("%#v", this.ApiEndpointRules)+",\n") + if m.PathNormalizeChoice != nil { + { + size := m.PathNormalizeChoice.Size() + i -= size + if _, err := m.PathNormalizeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *APIRateLimit_NoIpAllowedList) GoString() string { - if this == nil { - return "nil" + if m.DisableDefaultErrorPages { + i-- + if m.DisableDefaultErrorPages { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x68 } - s := strings.Join([]string{`&http_loadbalancer.APIRateLimit_NoIpAllowedList{` + - `NoIpAllowedList:` + fmt.Sprintf("%#v", this.NoIpAllowedList) + `}`}, ", ") - return s -} -func (this *APIRateLimit_IpAllowedList) GoString() string { - if this == nil { - return "nil" + if m.IdleTimeout != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.IdleTimeout)) + i-- + dAtA[i] = 0x58 } - s := strings.Join([]string{`&http_loadbalancer.APIRateLimit_IpAllowedList{` + - `IpAllowedList:` + fmt.Sprintf("%#v", this.IpAllowedList) + `}`}, ", ") - return s -} -func (this *APIRateLimit_CustomIpAllowedList) GoString() string { - if this == nil { - return "nil" + if len(m.Jwt) > 0 { + for iNdEx := len(m.Jwt) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Jwt[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } } - s := strings.Join([]string{`&http_loadbalancer.APIRateLimit_CustomIpAllowedList{` + - `CustomIpAllowedList:` + fmt.Sprintf("%#v", this.CustomIpAllowedList) + `}`}, ", ") - return s -} -func (this *APIRateLimit_BypassRateLimitingRules) GoString() string { - if this == nil { - return "nil" + if m.JavascriptInfo != nil { + { + size, err := m.JavascriptInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - s := strings.Join([]string{`&http_loadbalancer.APIRateLimit_BypassRateLimitingRules{` + - `BypassRateLimitingRules:` + fmt.Sprintf("%#v", this.BypassRateLimitingRules) + `}`}, ", ") - return s -} -func (this *ProxyTypeHttps) GoString() string { - if this == nil { - return "nil" + if len(m.CustomErrors) > 0 { + keysForCustomErrors := make([]uint32, 0, len(m.CustomErrors)) + for k := range m.CustomErrors { + keysForCustomErrors = append(keysForCustomErrors, uint32(k)) + } + github_com_gogo_protobuf_sortkeys.Uint32s(keysForCustomErrors) + for iNdEx := len(keysForCustomErrors) - 1; iNdEx >= 0; iNdEx-- { + v := m.CustomErrors[uint32(keysForCustomErrors[iNdEx])] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintTypes(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i = encodeVarintTypes(dAtA, i, uint64(keysForCustomErrors[iNdEx])) + i-- + dAtA[i] = 0x8 + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x42 + } } - s := make([]string, 0, 21) - s = append(s, "&http_loadbalancer.ProxyTypeHttps{") - s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") - s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") - if this.TlsCertificatesChoice != nil { - s = append(s, "TlsCertificatesChoice: "+fmt.Sprintf("%#v", this.TlsCertificatesChoice)+",\n") + if m.CompressionParams != nil { + { + size, err := m.CompressionParams.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a } - if this.ServerHeaderChoice != nil { - s = append(s, "ServerHeaderChoice: "+fmt.Sprintf("%#v", this.ServerHeaderChoice)+",\n") + if m.BufferPolicy != nil { + { + size, err := m.BufferPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 } - if this.PathNormalizeChoice != nil { - s = append(s, "PathNormalizeChoice: "+fmt.Sprintf("%#v", this.PathNormalizeChoice)+",\n") + if m.MaxRequestHeaderSize != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.MaxRequestHeaderSize)) + i-- + dAtA[i] = 0x28 } - if this.PortChoice != nil { - s = append(s, "PortChoice: "+fmt.Sprintf("%#v", this.PortChoice)+",\n") + if len(m.ResponseHeadersToRemove) > 0 { + for iNdEx := len(m.ResponseHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ResponseHeadersToRemove[iNdEx]) + copy(dAtA[i:], m.ResponseHeadersToRemove[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ResponseHeadersToRemove[iNdEx]))) + i-- + dAtA[i] = 0x22 + } } - if this.DefaultLbChoice != nil { - s = append(s, "DefaultLbChoice: "+fmt.Sprintf("%#v", this.DefaultLbChoice)+",\n") + if len(m.ResponseHeadersToAdd) > 0 { + for iNdEx := len(m.ResponseHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ResponseHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } } - if this.HeaderTransformationType != nil { - s = append(s, "HeaderTransformationType: "+fmt.Sprintf("%#v", this.HeaderTransformationType)+",\n") + if len(m.RequestHeadersToRemove) > 0 { + for iNdEx := len(m.RequestHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.RequestHeadersToRemove[iNdEx]) + copy(dAtA[i:], m.RequestHeadersToRemove[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RequestHeadersToRemove[iNdEx]))) + i-- + dAtA[i] = 0x12 + } } - s = append(s, "ConnectionIdleTimeout: "+fmt.Sprintf("%#v", this.ConnectionIdleTimeout)+",\n") - if this.HttpProtocolOptions != nil { - s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") + if len(m.RequestHeadersToAdd) > 0 { + for iNdEx := len(m.RequestHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RequestHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ProxyTypeHttps_TlsParameters) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_TlsParameters{` + - `TlsParameters:` + fmt.Sprintf("%#v", this.TlsParameters) + `}`}, ", ") - return s + +func (m *AdvancedOptionsType_EnablePathNormalize) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttps_TlsCertParams) GoString() string { - if this == nil { - return "nil" + +func (m *AdvancedOptionsType_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnablePathNormalize != nil { + { + size, err := m.EnablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_TlsCertParams{` + - `TlsCertParams:` + fmt.Sprintf("%#v", this.TlsCertParams) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttps_DefaultHeader) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_DefaultHeader{` + - `DefaultHeader:` + fmt.Sprintf("%#v", this.DefaultHeader) + `}`}, ", ") - return s +func (m *AdvancedOptionsType_DisablePathNormalize) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttps_ServerName) GoString() string { - if this == nil { - return "nil" + +func (m *AdvancedOptionsType_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisablePathNormalize != nil { + { + size, err := m.DisablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_ServerName{` + - `ServerName:` + fmt.Sprintf("%#v", this.ServerName) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttps_AppendServerName) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_AppendServerName{` + - `AppendServerName:` + fmt.Sprintf("%#v", this.AppendServerName) + `}`}, ", ") - return s +func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttps_PassThrough) GoString() string { - if this == nil { - return "nil" + +func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableStrictSniHostHeaderCheck != nil { + { + size, err := m.EnableStrictSniHostHeaderCheck.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_PassThrough{` + - `PassThrough:` + fmt.Sprintf("%#v", this.PassThrough) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttps_EnablePathNormalize) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_EnablePathNormalize{` + - `EnablePathNormalize:` + fmt.Sprintf("%#v", this.EnablePathNormalize) + `}`}, ", ") - return s +func (m *AdvancedOptionsType_AdditionalDomains) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttps_DisablePathNormalize) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_DisablePathNormalize{` + - `DisablePathNormalize:` + fmt.Sprintf("%#v", this.DisablePathNormalize) + `}`}, ", ") - return s -} -func (this *ProxyTypeHttps_Port) GoString() string { - if this == nil { - return "nil" + +func (m *AdvancedOptionsType_AdditionalDomains) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdditionalDomains != nil { + { + size, err := m.AdditionalDomains.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_Port{` + - `Port:` + fmt.Sprintf("%#v", this.Port) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttps_PortRanges) GoString() string { - if this == nil { - return "nil" +func (m *DDoSClientSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_PortRanges{` + - `PortRanges:` + fmt.Sprintf("%#v", this.PortRanges) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ProxyTypeHttps_NonDefaultLoadbalancer) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_NonDefaultLoadbalancer{` + - `NonDefaultLoadbalancer:` + fmt.Sprintf("%#v", this.NonDefaultLoadbalancer) + `}`}, ", ") - return s + +func (m *DDoSClientSource) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttps_DefaultLoadbalancer) GoString() string { - if this == nil { - return "nil" + +func (m *DDoSClientSource) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TlsFingerprintMatcher != nil { + { + size, err := m.TlsFingerprintMatcher.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttps_DefaultLoadbalancer{` + - `DefaultLoadbalancer:` + fmt.Sprintf("%#v", this.DefaultLoadbalancer) + `}`}, ", ") - return s -} -func (this *ProxyTypeHttp) GoString() string { - if this == nil { - return "nil" + if len(m.CountryList) > 0 { + dAtA76 := make([]byte, len(m.CountryList)*10) + var j75 int + for _, num := range m.CountryList { + for num >= 1<<7 { + dAtA76[j75] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j75++ + } + dAtA76[j75] = uint8(num) + j75++ + } + i -= j75 + copy(dAtA[i:], dAtA76[:j75]) + i = encodeVarintTypes(dAtA, i, uint64(j75)) + i-- + dAtA[i] = 0x1a } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.ProxyTypeHttp{") - s = append(s, "DnsVolterraManaged: "+fmt.Sprintf("%#v", this.DnsVolterraManaged)+",\n") - if this.PortChoice != nil { - s = append(s, "PortChoice: "+fmt.Sprintf("%#v", this.PortChoice)+",\n") + if m.AsnList != nil { + { + size, err := m.AsnList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ProxyTypeHttp_Port) GoString() string { - if this == nil { - return "nil" + +func (m *DDoSMitigationRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttp_Port{` + - `Port:` + fmt.Sprintf("%#v", this.Port) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ProxyTypeHttp_PortRanges) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttp_PortRanges{` + - `PortRanges:` + fmt.Sprintf("%#v", this.PortRanges) + `}`}, ", ") - return s + +func (m *DDoSMitigationRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttpsAutoCerts) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 22) - s = append(s, "&http_loadbalancer.ProxyTypeHttpsAutoCerts{") - s = append(s, "HttpRedirect: "+fmt.Sprintf("%#v", this.HttpRedirect)+",\n") - s = append(s, "AddHsts: "+fmt.Sprintf("%#v", this.AddHsts)+",\n") - if this.TlsConfig != nil { - s = append(s, "TlsConfig: "+fmt.Sprintf("%#v", this.TlsConfig)+",\n") - } - if this.MtlsChoice != nil { - s = append(s, "MtlsChoice: "+fmt.Sprintf("%#v", this.MtlsChoice)+",\n") - } - if this.ServerHeaderChoice != nil { - s = append(s, "ServerHeaderChoice: "+fmt.Sprintf("%#v", this.ServerHeaderChoice)+",\n") - } - if this.PathNormalizeChoice != nil { - s = append(s, "PathNormalizeChoice: "+fmt.Sprintf("%#v", this.PathNormalizeChoice)+",\n") - } - if this.PortChoice != nil { - s = append(s, "PortChoice: "+fmt.Sprintf("%#v", this.PortChoice)+",\n") + +func (m *DDoSMitigationRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ExpirationTimestamp != nil { + { + size, err := m.ExpirationTimestamp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 } - if this.DefaultLbChoice != nil { - s = append(s, "DefaultLbChoice: "+fmt.Sprintf("%#v", this.DefaultLbChoice)+",\n") + if m.MitigationChoice != nil { + { + size := m.MitigationChoice.Size() + i -= size + if _, err := m.MitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.HeaderTransformationType != nil { - s = append(s, "HeaderTransformationType: "+fmt.Sprintf("%#v", this.HeaderTransformationType)+",\n") + if m.MitigationAction != nil { + { + size := m.MitigationAction.Size() + i -= size + if _, err := m.MitigationAction.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "ConnectionIdleTimeout: "+fmt.Sprintf("%#v", this.ConnectionIdleTimeout)+",\n") - if this.HttpProtocolOptions != nil { - s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ProxyTypeHttpsAutoCerts_NoMtls) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_NoMtls{` + - `NoMtls:` + fmt.Sprintf("%#v", this.NoMtls) + `}`}, ", ") - return s + +func (m *DDoSMitigationRule_Block) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttpsAutoCerts_UseMtls) GoString() string { - if this == nil { - return "nil" + +func (m *DDoSMitigationRule_Block) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Block != nil { + { + size, err := m.Block.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_UseMtls{` + - `UseMtls:` + fmt.Sprintf("%#v", this.UseMtls) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_DefaultHeader{` + - `DefaultHeader:` + fmt.Sprintf("%#v", this.DefaultHeader) + `}`}, ", ") - return s +func (m *DDoSMitigationRule_DdosClientSource) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttpsAutoCerts_ServerName) GoString() string { - if this == nil { - return "nil" + +func (m *DDoSMitigationRule_DdosClientSource) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DdosClientSource != nil { + { + size, err := m.DdosClientSource.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_ServerName{` + - `ServerName:` + fmt.Sprintf("%#v", this.ServerName) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttpsAutoCerts_AppendServerName) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_AppendServerName{` + - `AppendServerName:` + fmt.Sprintf("%#v", this.AppendServerName) + `}`}, ", ") - return s +func (m *DDoSMitigationRule_IpPrefixList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttpsAutoCerts_PassThrough) GoString() string { - if this == nil { - return "nil" + +func (m *DDoSMitigationRule_IpPrefixList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.IpPrefixList != nil { + { + size, err := m.IpPrefixList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_PassThrough{` + - `PassThrough:` + fmt.Sprintf("%#v", this.PassThrough) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) GoString() string { - if this == nil { - return "nil" +func (m *SingleLoadBalancerAppSetting) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_EnablePathNormalize{` + - `EnablePathNormalize:` + fmt.Sprintf("%#v", this.EnablePathNormalize) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_DisablePathNormalize{` + - `DisablePathNormalize:` + fmt.Sprintf("%#v", this.DisablePathNormalize) + `}`}, ", ") - return s + +func (m *SingleLoadBalancerAppSetting) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttpsAutoCerts_Port) GoString() string { - if this == nil { - return "nil" + +func (m *SingleLoadBalancerAppSetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MaliciousUserDetectionChoice != nil { + { + size := m.MaliciousUserDetectionChoice.Size() + i -= size + if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_Port{` + - `Port:` + fmt.Sprintf("%#v", this.Port) + `}`}, ", ") - return s -} -func (this *ProxyTypeHttpsAutoCerts_PortRanges) GoString() string { - if this == nil { - return "nil" + if m.ApiDiscoveryChoice != nil { + { + size := m.ApiDiscoveryChoice.Size() + i -= size + if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_PortRanges{` + - `PortRanges:` + fmt.Sprintf("%#v", this.PortRanges) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer{` + - `NonDefaultLoadbalancer:` + fmt.Sprintf("%#v", this.NonDefaultLoadbalancer) + `}`}, ", ") - return s + +func (m *SingleLoadBalancerAppSetting_EnableDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) GoString() string { - if this == nil { - return "nil" + +func (m *SingleLoadBalancerAppSetting_EnableDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableDiscovery != nil { + { + size, err := m.EnableDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.ProxyTypeHttpsAutoCerts_DefaultLoadbalancer{` + - `DefaultLoadbalancer:` + fmt.Sprintf("%#v", this.DefaultLoadbalancer) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *HashPolicyListType) GoString() string { - if this == nil { - return "nil" +func (m *SingleLoadBalancerAppSetting_DisableDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SingleLoadBalancerAppSetting_DisableDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableDiscovery != nil { + { + size, err := m.DisableDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.HashPolicyListType{") - if this.HashPolicy != nil { - s = append(s, "HashPolicy: "+fmt.Sprintf("%#v", this.HashPolicy)+",\n") + return len(dAtA) - i, nil +} +func (m *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableMaliciousUserDetection != nil { + { + size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *MirrorPolicyType) GoString() string { - if this == nil { - return "nil" +func (m *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMaliciousUserDetection != nil { + { + size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.MirrorPolicyType{") - if this.OriginPool != nil { - s = append(s, "OriginPool: "+fmt.Sprintf("%#v", this.OriginPool)+",\n") + return len(dAtA) - i, nil +} +func (m *OriginServerSubsetRuleListType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - if this.Percent != nil { - s = append(s, "Percent: "+fmt.Sprintf("%#v", this.Percent)+",\n") + return dAtA[:n], nil +} + +func (m *OriginServerSubsetRuleListType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OriginServerSubsetRuleListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.OriginServerSubsetRules) > 0 { + for iNdEx := len(m.OriginServerSubsetRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.OriginServerSubsetRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefenseType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := make([]string, 0, 37) - s = append(s, "&http_loadbalancer.RouteSimpleAdvancedOptions{") - if this.HashPolicyChoice != nil { - s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") - } - s = append(s, "Priority: "+fmt.Sprintf("%#v", this.Priority)+",\n") - keysForEndpointSubsets := make([]string, 0, len(this.EndpointSubsets)) - for k, _ := range this.EndpointSubsets { - keysForEndpointSubsets = append(keysForEndpointSubsets, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForEndpointSubsets) - mapStringForEndpointSubsets := "map[string]string{" - for _, k := range keysForEndpointSubsets { - mapStringForEndpointSubsets += fmt.Sprintf("%#v: %#v,", k, this.EndpointSubsets[k]) - } - mapStringForEndpointSubsets += "}" - if this.EndpointSubsets != nil { - s = append(s, "EndpointSubsets: "+mapStringForEndpointSubsets+",\n") - } - if this.RewriteChoice != nil { - s = append(s, "RewriteChoice: "+fmt.Sprintf("%#v", this.RewriteChoice)+",\n") - } - if this.RequestHeadersToAdd != nil { - s = append(s, "RequestHeadersToAdd: "+fmt.Sprintf("%#v", this.RequestHeadersToAdd)+",\n") - } - s = append(s, "RequestHeadersToRemove: "+fmt.Sprintf("%#v", this.RequestHeadersToRemove)+",\n") - if this.ResponseHeadersToAdd != nil { - s = append(s, "ResponseHeadersToAdd: "+fmt.Sprintf("%#v", this.ResponseHeadersToAdd)+",\n") - } - s = append(s, "ResponseHeadersToRemove: "+fmt.Sprintf("%#v", this.ResponseHeadersToRemove)+",\n") - s = append(s, "DisableLocationAdd: "+fmt.Sprintf("%#v", this.DisableLocationAdd)+",\n") - if this.WafChoice != nil { - s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") - } - if this.CorsPolicy != nil { - s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") - } - if this.CsrfPolicy != nil { - s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") - } - if this.SpdyChoice != nil { - s = append(s, "SpdyChoice: "+fmt.Sprintf("%#v", this.SpdyChoice)+",\n") - } - if this.WebsocketChoice != nil { - s = append(s, "WebsocketChoice: "+fmt.Sprintf("%#v", this.WebsocketChoice)+",\n") - } - if this.RetryPolicyChoice != nil { - s = append(s, "RetryPolicyChoice: "+fmt.Sprintf("%#v", this.RetryPolicyChoice)+",\n") - } - s = append(s, "Timeout: "+fmt.Sprintf("%#v", this.Timeout)+",\n") - if this.BufferChoice != nil { - s = append(s, "BufferChoice: "+fmt.Sprintf("%#v", this.BufferChoice)+",\n") - } - if this.MirroringChoice != nil { - s = append(s, "MirroringChoice: "+fmt.Sprintf("%#v", this.MirroringChoice)+",\n") - } - if this.ClusterRetractChoice != nil { - s = append(s, "ClusterRetractChoice: "+fmt.Sprintf("%#v", this.ClusterRetractChoice)+",\n") - } - if this.BotDefenseJavascriptInjectionChoice != nil { - s = append(s, "BotDefenseJavascriptInjectionChoice: "+fmt.Sprintf("%#v", this.BotDefenseJavascriptInjectionChoice)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_CommonHashPolicy{` + - `CommonHashPolicy:` + fmt.Sprintf("%#v", this.CommonHashPolicy) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_SpecificHashPolicy{` + - `SpecificHashPolicy:` + fmt.Sprintf("%#v", this.SpecificHashPolicy) + `}`}, ", ") - return s + +func (m *ClientSideDefenseType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefenseType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Policy != nil { + { + size, err := m.Policy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisablePrefixRewrite{` + - `DisablePrefixRewrite:` + fmt.Sprintf("%#v", this.DisablePrefixRewrite) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_PrefixRewrite) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefensePolicyType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_PrefixRewrite{` + - `PrefixRewrite:` + fmt.Sprintf("%#v", this.PrefixRewrite) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteSimpleAdvancedOptions_RegexRewrite) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_RegexRewrite{` + - `RegexRewrite:` + fmt.Sprintf("%#v", this.RegexRewrite) + `}`}, ", ") - return s + +func (m *ClientSideDefensePolicyType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_InheritedWaf) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefensePolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.JavaScriptChoice != nil { + { + size := m.JavaScriptChoice.Size() + i -= size + if _, err := m.JavaScriptChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_InheritedWaf{` + - `InheritedWaf:` + fmt.Sprintf("%#v", this.InheritedWaf) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_AppFirewall) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_AppFirewall{` + - `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") - return s + +func (m *ClientSideDefensePolicyType_DisableJsInsert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_DisableWaf) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefensePolicyType_DisableJsInsert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableJsInsert != nil { + { + size, err := m.DisableJsInsert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableWaf{` + - `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_DisableSpdy) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableSpdy{` + - `DisableSpdy:` + fmt.Sprintf("%#v", this.DisableSpdy) + `}`}, ", ") - return s +func (m *ClientSideDefensePolicyType_JsInsertAllPages) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_EnableSpdy) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefensePolicyType_JsInsertAllPages) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsInsertAllPages != nil { + { + size, err := m.JsInsertAllPages.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_EnableSpdy{` + - `EnableSpdy:` + fmt.Sprintf("%#v", this.EnableSpdy) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableWebSocketConfig{` + - `DisableWebSocketConfig:` + fmt.Sprintf("%#v", this.DisableWebSocketConfig) + `}`}, ", ") - return s +func (m *ClientSideDefensePolicyType_JsInsertAllPagesExcept) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_WebSocketConfig) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefensePolicyType_JsInsertAllPagesExcept) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsInsertAllPagesExcept != nil { + { + size, err := m.JsInsertAllPagesExcept.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_WebSocketConfig{` + - `WebSocketConfig:` + fmt.Sprintf("%#v", this.WebSocketConfig) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DefaultRetryPolicy{` + - `DefaultRetryPolicy:` + fmt.Sprintf("%#v", this.DefaultRetryPolicy) + `}`}, ", ") - return s +func (m *ClientSideDefensePolicyType_JsInsertionRules) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) GoString() string { - if this == nil { - return "nil" + +func (m *ClientSideDefensePolicyType_JsInsertionRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsInsertionRules != nil { + { + size, err := m.JsInsertionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_NoRetryPolicy{` + - `NoRetryPolicy:` + fmt.Sprintf("%#v", this.NoRetryPolicy) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_RetryPolicy) GoString() string { - if this == nil { - return "nil" +func (m *CSDJavaScriptInsertAllWithExceptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_RetryPolicy{` + - `RetryPolicy:` + fmt.Sprintf("%#v", this.RetryPolicy) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteSimpleAdvancedOptions_CommonBuffering) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_CommonBuffering{` + - `CommonBuffering:` + fmt.Sprintf("%#v", this.CommonBuffering) + `}`}, ", ") - return s + +func (m *CSDJavaScriptInsertAllWithExceptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_BufferPolicy) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertAllWithExceptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ExcludeList) > 0 { + for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_BufferPolicy{` + - `BufferPolicy:` + fmt.Sprintf("%#v", this.BufferPolicy) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_DisableMirroring) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DisableMirroring{` + - `DisableMirroring:` + fmt.Sprintf("%#v", this.DisableMirroring) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteSimpleAdvancedOptions_MirrorPolicy) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_MirrorPolicy{` + - `MirrorPolicy:` + fmt.Sprintf("%#v", this.MirrorPolicy) + `}`}, ", ") - return s + +func (m *CSDJavaScriptInsertType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteSimpleAdvancedOptions_RetractCluster) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ExcludeList) > 0 { + for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_RetractCluster{` + - `RetractCluster:` + fmt.Sprintf("%#v", this.RetractCluster) + `}`}, ", ") - return s -} -func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) GoString() string { - if this == nil { - return "nil" + if len(m.Rules) > 0 { + for iNdEx := len(m.Rules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Rules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_DoNotRetractCluster{` + - `DoNotRetractCluster:` + fmt.Sprintf("%#v", this.DoNotRetractCluster) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertionRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection{` + - `InheritedBotDefenseJavascriptInjection:` + fmt.Sprintf("%#v", this.InheritedBotDefenseJavascriptInjection) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection{` + - `BotDefenseJavascriptInjection:` + fmt.Sprintf("%#v", this.BotDefenseJavascriptInjection) + `}`}, ", ") - return s + +func (m *CSDJavaScriptInsertionRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteTypeSimpleWithDefaultOriginPool) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool{") - s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") + if m.DomainMatcherChoice != nil { + { + size := m.DomainMatcherChoice.Size() + i -= size + if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.HostRewriteParams != nil { - s = append(s, "HostRewriteParams: "+fmt.Sprintf("%#v", this.HostRewriteParams)+",\n") + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite{` + - `AutoHostRewrite:` + fmt.Sprintf("%#v", this.AutoHostRewrite) + `}`}, ", ") - return s + +func (m *CSDJavaScriptInsertionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool_HostRewrite{` + - `HostRewrite:` + fmt.Sprintf("%#v", this.HostRewrite) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite{` + - `DisableHostRewrite:` + fmt.Sprintf("%#v", this.DisableHostRewrite) + `}`}, ", ") - return s -} -func (this *RouteTypeSimple) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 13) - s = append(s, "&http_loadbalancer.RouteTypeSimple{") - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") - } - s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") - if this.OriginPools != nil { - s = append(s, "OriginPools: "+fmt.Sprintf("%#v", this.OriginPools)+",\n") - } - if this.HostRewriteParams != nil { - s = append(s, "HostRewriteParams: "+fmt.Sprintf("%#v", this.HostRewriteParams)+",\n") - } - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") - } - if this.IncomingPort != nil { - s = append(s, "IncomingPort: "+fmt.Sprintf("%#v", this.IncomingPort)+",\n") - } - if this.AdvancedOptions != nil { - s = append(s, "AdvancedOptions: "+fmt.Sprintf("%#v", this.AdvancedOptions)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *CSDJavaScriptInsertionRule_Domain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteTypeSimple_AutoHostRewrite) GoString() string { - if this == nil { - return "nil" + +func (m *CSDJavaScriptInsertionRule_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Domain != nil { + { + size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimple_AutoHostRewrite{` + - `AutoHostRewrite:` + fmt.Sprintf("%#v", this.AutoHostRewrite) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteTypeSimple_HostRewrite) GoString() string { - if this == nil { - return "nil" +func (m *BotDefenseAdvancedPolicyType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimple_HostRewrite{` + - `HostRewrite:` + fmt.Sprintf("%#v", this.HostRewrite) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteTypeSimple_DisableHostRewrite) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteTypeSimple_DisableHostRewrite{` + - `DisableHostRewrite:` + fmt.Sprintf("%#v", this.DisableHostRewrite) + `}`}, ", ") - return s + +func (m *BotDefenseAdvancedPolicyType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteTypeRedirect) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.RouteTypeRedirect{") - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") - } - s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") - if this.RouteRedirect != nil { - s = append(s, "RouteRedirect: "+fmt.Sprintf("%#v", this.RouteRedirect)+",\n") + +func (m *BotDefenseAdvancedPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MobileSdkChoice != nil { + { + size := m.MobileSdkChoice.Size() + i -= size + if _, err := m.MobileSdkChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") + if len(m.JsDownloadPath) > 0 { + i -= len(m.JsDownloadPath) + copy(dAtA[i:], m.JsDownloadPath) + i = encodeVarintTypes(dAtA, i, uint64(len(m.JsDownloadPath))) + i-- + dAtA[i] = 0x12 } - if this.IncomingPort != nil { - s = append(s, "IncomingPort: "+fmt.Sprintf("%#v", this.IncomingPort)+",\n") + if len(m.ProtectedAppEndpoints) > 0 { + for iNdEx := len(m.ProtectedAppEndpoints) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ProtectedAppEndpoints[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *RouteTypeDirectResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.RouteTypeDirectResponse{") - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") - } - s = append(s, "HttpMethod: "+fmt.Sprintf("%#v", this.HttpMethod)+",\n") - if this.RouteDirectResponse != nil { - s = append(s, "RouteDirectResponse: "+fmt.Sprintf("%#v", this.RouteDirectResponse)+",\n") - } - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") - } - if this.IncomingPort != nil { - s = append(s, "IncomingPort: "+fmt.Sprintf("%#v", this.IncomingPort)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + +func (m *BotDefenseAdvancedPolicyType_DisableMobileSdk) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteTypeCustomRoute) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.RouteTypeCustomRoute{") - if this.RouteRef != nil { - s = append(s, "RouteRef: "+fmt.Sprintf("%#v", this.RouteRef)+",\n") + +func (m *BotDefenseAdvancedPolicyType_DisableMobileSdk) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMobileSdk != nil { + { + size, err := m.DisableMobileSdk.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *RouteType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.RouteType{") - if this.Choice != nil { - s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *BotDefenseAdvancedPolicyType_MobileSdkConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteType_SimpleRoute) GoString() string { - if this == nil { - return "nil" + +func (m *BotDefenseAdvancedPolicyType_MobileSdkConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MobileSdkConfig != nil { + { + size, err := m.MobileSdkConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.RouteType_SimpleRoute{` + - `SimpleRoute:` + fmt.Sprintf("%#v", this.SimpleRoute) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RouteType_RedirectRoute) GoString() string { - if this == nil { - return "nil" +func (m *BotAdvancedMobileSDKConfigType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.RouteType_RedirectRoute{` + - `RedirectRoute:` + fmt.Sprintf("%#v", this.RedirectRoute) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *RouteType_DirectResponseRoute) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RouteType_DirectResponseRoute{` + - `DirectResponseRoute:` + fmt.Sprintf("%#v", this.DirectResponseRoute) + `}`}, ", ") - return s + +func (m *BotAdvancedMobileSDKConfigType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RouteType_CustomRouteObject) GoString() string { - if this == nil { - return "nil" + +func (m *BotAdvancedMobileSDKConfigType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MobileIdentifier != nil { + { + size, err := m.MobileIdentifier.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.RouteType_CustomRouteObject{` + - `CustomRouteObject:` + fmt.Sprintf("%#v", this.CustomRouteObject) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AdvancedOptionsType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 21) - s = append(s, "&http_loadbalancer.AdvancedOptionsType{") - if this.RequestHeadersToAdd != nil { - s = append(s, "RequestHeadersToAdd: "+fmt.Sprintf("%#v", this.RequestHeadersToAdd)+",\n") - } - s = append(s, "RequestHeadersToRemove: "+fmt.Sprintf("%#v", this.RequestHeadersToRemove)+",\n") - if this.ResponseHeadersToAdd != nil { - s = append(s, "ResponseHeadersToAdd: "+fmt.Sprintf("%#v", this.ResponseHeadersToAdd)+",\n") - } - s = append(s, "ResponseHeadersToRemove: "+fmt.Sprintf("%#v", this.ResponseHeadersToRemove)+",\n") - s = append(s, "MaxRequestHeaderSize: "+fmt.Sprintf("%#v", this.MaxRequestHeaderSize)+",\n") - if this.BufferPolicy != nil { - s = append(s, "BufferPolicy: "+fmt.Sprintf("%#v", this.BufferPolicy)+",\n") - } - if this.CompressionParams != nil { - s = append(s, "CompressionParams: "+fmt.Sprintf("%#v", this.CompressionParams)+",\n") - } - keysForCustomErrors := make([]uint32, 0, len(this.CustomErrors)) - for k, _ := range this.CustomErrors { - keysForCustomErrors = append(keysForCustomErrors, k) + +func (m *ProtectedAppEndpointType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - github_com_gogo_protobuf_sortkeys.Uint32s(keysForCustomErrors) - mapStringForCustomErrors := "map[uint32]string{" - for _, k := range keysForCustomErrors { - mapStringForCustomErrors += fmt.Sprintf("%#v: %#v,", k, this.CustomErrors[k]) + return dAtA[:n], nil +} + +func (m *ProtectedAppEndpointType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProtectedAppEndpointType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FlowLabelChoice != nil { + { + size := m.FlowLabelChoice.Size() + i -= size + if _, err := m.FlowLabelChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - mapStringForCustomErrors += "}" - if this.CustomErrors != nil { - s = append(s, "CustomErrors: "+mapStringForCustomErrors+",\n") + if m.AppTrafficTypeChoice != nil { + { + size := m.AppTrafficTypeChoice.Size() + i -= size + if _, err := m.AppTrafficTypeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.JavascriptInfo != nil { - s = append(s, "JavascriptInfo: "+fmt.Sprintf("%#v", this.JavascriptInfo)+",\n") + if len(m.HttpMethods) > 0 { + dAtA100 := make([]byte, len(m.HttpMethods)*10) + var j99 int + for _, num := range m.HttpMethods { + for num >= 1<<7 { + dAtA100[j99] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j99++ + } + dAtA100[j99] = uint8(num) + j99++ + } + i -= j99 + copy(dAtA[i:], dAtA100[:j99]) + i = encodeVarintTypes(dAtA, i, uint64(j99)) + i-- + dAtA[i] = 0x42 } - if this.Jwt != nil { - s = append(s, "Jwt: "+fmt.Sprintf("%#v", this.Jwt)+",\n") + if len(m.RequestBody) > 0 { + for iNdEx := len(m.RequestBody) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RequestBody[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } } - s = append(s, "IdleTimeout: "+fmt.Sprintf("%#v", this.IdleTimeout)+",\n") - s = append(s, "DisableDefaultErrorPages: "+fmt.Sprintf("%#v", this.DisableDefaultErrorPages)+",\n") - if this.PathNormalizeChoice != nil { - s = append(s, "PathNormalizeChoice: "+fmt.Sprintf("%#v", this.PathNormalizeChoice)+",\n") + if len(m.Query) > 0 { + for iNdEx := len(m.Query) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Query[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } } - if this.StrictSniHostHeaderCheckChoice != nil { - s = append(s, "StrictSniHostHeaderCheckChoice: "+fmt.Sprintf("%#v", this.StrictSniHostHeaderCheckChoice)+",\n") + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - if this.CookiesToModify != nil { - s = append(s, "CookiesToModify: "+fmt.Sprintf("%#v", this.CookiesToModify)+",\n") + if m.DomainMatcherChoice != nil { + { + size := m.DomainMatcherChoice.Size() + i -= size + if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AdvancedOptionsType_EnablePathNormalize) GoString() string { - if this == nil { - return "nil" + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_EnablePathNormalize{` + - `EnablePathNormalize:` + fmt.Sprintf("%#v", this.EnablePathNormalize) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AdvancedOptionsType_DisablePathNormalize) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_DisablePathNormalize{` + - `DisablePathNormalize:` + fmt.Sprintf("%#v", this.DisablePathNormalize) + `}`}, ", ") - return s + +func (m *ProtectedAppEndpointType_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) GoString() string { - if this == nil { - return "nil" + +func (m *ProtectedAppEndpointType_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_EnableStrictSniHostHeaderCheck{` + - `EnableStrictSniHostHeaderCheck:` + fmt.Sprintf("%#v", this.EnableStrictSniHostHeaderCheck) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AdvancedOptionsType_AdditionalDomains) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.AdvancedOptionsType_AdditionalDomains{` + - `AdditionalDomains:` + fmt.Sprintf("%#v", this.AdditionalDomains) + `}`}, ", ") - return s +func (m *ProtectedAppEndpointType_Domain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *EnableChallenge) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&http_loadbalancer.EnableChallenge{") - if this.MaliciousUserMitigationChoice != nil { - s = append(s, "MaliciousUserMitigationChoice: "+fmt.Sprintf("%#v", this.MaliciousUserMitigationChoice)+",\n") - } - if this.JsChallengeParametersChoice != nil { - s = append(s, "JsChallengeParametersChoice: "+fmt.Sprintf("%#v", this.JsChallengeParametersChoice)+",\n") - } - if this.CaptchaChallengeParametersChoice != nil { - s = append(s, "CaptchaChallengeParametersChoice: "+fmt.Sprintf("%#v", this.CaptchaChallengeParametersChoice)+",\n") + +func (m *ProtectedAppEndpointType_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Domain != nil { + { + size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *EnableChallenge_DefaultMitigationSettings) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.EnableChallenge_DefaultMitigationSettings{` + - `DefaultMitigationSettings:` + fmt.Sprintf("%#v", this.DefaultMitigationSettings) + `}`}, ", ") - return s +func (m *ProtectedAppEndpointType_WebClient) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *EnableChallenge_MaliciousUserMitigation) GoString() string { - if this == nil { - return "nil" + +func (m *ProtectedAppEndpointType_WebClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.WebClient != nil { + { + size, err := m.WebClient.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 } - s := strings.Join([]string{`&http_loadbalancer.EnableChallenge_MaliciousUserMitigation{` + - `MaliciousUserMitigation:` + fmt.Sprintf("%#v", this.MaliciousUserMitigation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *EnableChallenge_DefaultJsChallengeParameters) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.EnableChallenge_DefaultJsChallengeParameters{` + - `DefaultJsChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultJsChallengeParameters) + `}`}, ", ") - return s +func (m *ProtectedAppEndpointType_MobileClient) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *EnableChallenge_JsChallengeParameters) GoString() string { - if this == nil { - return "nil" + +func (m *ProtectedAppEndpointType_MobileClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MobileClient != nil { + { + size, err := m.MobileClient.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } - s := strings.Join([]string{`&http_loadbalancer.EnableChallenge_JsChallengeParameters{` + - `JsChallengeParameters:` + fmt.Sprintf("%#v", this.JsChallengeParameters) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *EnableChallenge_DefaultCaptchaChallengeParameters) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.EnableChallenge_DefaultCaptchaChallengeParameters{` + - `DefaultCaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultCaptchaChallengeParameters) + `}`}, ", ") - return s +func (m *ProtectedAppEndpointType_WebMobileClient) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *EnableChallenge_CaptchaChallengeParameters) GoString() string { - if this == nil { - return "nil" + +func (m *ProtectedAppEndpointType_WebMobileClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.WebMobileClient != nil { + { + size, err := m.WebMobileClient.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 } - s := strings.Join([]string{`&http_loadbalancer.EnableChallenge_CaptchaChallengeParameters{` + - `CaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.CaptchaChallengeParameters) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *PolicyBasedChallenge) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 16) - s = append(s, "&http_loadbalancer.PolicyBasedChallenge{") - if this.JsChallengeParametersChoice != nil { - s = append(s, "JsChallengeParametersChoice: "+fmt.Sprintf("%#v", this.JsChallengeParametersChoice)+",\n") - } - if this.CaptchaChallengeParametersChoice != nil { - s = append(s, "CaptchaChallengeParametersChoice: "+fmt.Sprintf("%#v", this.CaptchaChallengeParametersChoice)+",\n") - } - if this.TemporaryBlockingParametersChoice != nil { - s = append(s, "TemporaryBlockingParametersChoice: "+fmt.Sprintf("%#v", this.TemporaryBlockingParametersChoice)+",\n") - } - if this.MaliciousUserMitigationChoice != nil { - s = append(s, "MaliciousUserMitigationChoice: "+fmt.Sprintf("%#v", this.MaliciousUserMitigationChoice)+",\n") - } - if this.ChallengeChoice != nil { - s = append(s, "ChallengeChoice: "+fmt.Sprintf("%#v", this.ChallengeChoice)+",\n") - } - if this.RuleList != nil { - s = append(s, "RuleList: "+fmt.Sprintf("%#v", this.RuleList)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *ProtectedAppEndpointType_UndefinedFlowLabel) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) GoString() string { - if this == nil { - return "nil" + +func (m *ProtectedAppEndpointType_UndefinedFlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UndefinedFlowLabel != nil { + { + size, err := m.UndefinedFlowLabel.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_DefaultJsChallengeParameters{` + - `DefaultJsChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultJsChallengeParameters) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *PolicyBasedChallenge_JsChallengeParameters) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_JsChallengeParameters{` + - `JsChallengeParameters:` + fmt.Sprintf("%#v", this.JsChallengeParameters) + `}`}, ", ") - return s +func (m *ProtectedAppEndpointType_FlowLabel) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) GoString() string { - if this == nil { - return "nil" + +func (m *ProtectedAppEndpointType_FlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.FlowLabel != nil { + { + size, err := m.FlowLabel.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{` + - `DefaultCaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.DefaultCaptchaChallengeParameters) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *PolicyBasedChallenge_CaptchaChallengeParameters) GoString() string { - if this == nil { - return "nil" +func (m *RequestBody) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_CaptchaChallengeParameters{` + - `CaptchaChallengeParameters:` + fmt.Sprintf("%#v", this.CaptchaChallengeParameters) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{` + - `DefaultTemporaryBlockingParameters:` + fmt.Sprintf("%#v", this.DefaultTemporaryBlockingParameters) + `}`}, ", ") - return s + +func (m *RequestBody) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *PolicyBasedChallenge_TemporaryUserBlocking) GoString() string { - if this == nil { - return "nil" + +func (m *RequestBody) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ValueType != nil { + { + size := m.ValueType.Size() + i -= size + if _, err := m.ValueType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_TemporaryUserBlocking{` + - `TemporaryUserBlocking:` + fmt.Sprintf("%#v", this.TemporaryUserBlocking) + `}`}, ", ") - return s -} -func (this *PolicyBasedChallenge_DefaultMitigationSettings) GoString() string { - if this == nil { - return "nil" + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_DefaultMitigationSettings{` + - `DefaultMitigationSettings:` + fmt.Sprintf("%#v", this.DefaultMitigationSettings) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *PolicyBasedChallenge_MaliciousUserMitigation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_MaliciousUserMitigation{` + - `MaliciousUserMitigation:` + fmt.Sprintf("%#v", this.MaliciousUserMitigation) + `}`}, ", ") - return s + +func (m *RequestBody_ExactValue) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *PolicyBasedChallenge_NoChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_NoChallenge{` + - `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") - return s + +func (m *RequestBody_ExactValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.ExactValue) + copy(dAtA[i:], m.ExactValue) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ExactValue))) + i-- + dAtA[i] = 0x12 + return len(dAtA) - i, nil } -func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_AlwaysEnableJsChallenge{` + - `AlwaysEnableJsChallenge:` + fmt.Sprintf("%#v", this.AlwaysEnableJsChallenge) + `}`}, ", ") - return s +func (m *RequestBody_RegexValue) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{` + - `AlwaysEnableCaptchaChallenge:` + fmt.Sprintf("%#v", this.AlwaysEnableCaptchaChallenge) + `}`}, ", ") - return s + +func (m *RequestBody_RegexValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.RegexValue) + copy(dAtA[i:], m.RegexValue) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RegexValue))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil } -func (this *ChallengeRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ChallengeRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.Spec != nil { - s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") +func (m *Query) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *ChallengeRuleList) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.ChallengeRuleList{") - if this.Rules != nil { - s = append(s, "Rules: "+fmt.Sprintf("%#v", this.Rules)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + +func (m *Query) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *HttpHeaderMatcherList) GoString() string { - if this == nil { - return "nil" + +func (m *Query) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ValueType != nil { + { + size := m.ValueType.Size() + i -= size + if _, err := m.ValueType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.HttpHeaderMatcherList{") - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *SimpleClientSrcRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 14) - s = append(s, "&http_loadbalancer.SimpleClientSrcRule{") - if this.ClientSourceChoice != nil { - s = append(s, "ClientSourceChoice: "+fmt.Sprintf("%#v", this.ClientSourceChoice)+",\n") - } - if this.ExpirationTimestamp != nil { - s = append(s, "ExpirationTimestamp: "+fmt.Sprintf("%#v", this.ExpirationTimestamp)+",\n") - } - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.ActionChoice != nil { - s = append(s, "ActionChoice: "+fmt.Sprintf("%#v", this.ActionChoice)+",\n") - } - s = append(s, "Actions: "+fmt.Sprintf("%#v", this.Actions)+",\n") - s = append(s, "}") - return strings.Join(s, "") + +func (m *Query_ExactValue) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SimpleClientSrcRule_IpPrefix) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_IpPrefix{` + - `IpPrefix:` + fmt.Sprintf("%#v", this.IpPrefix) + `}`}, ", ") - return s + +func (m *Query_ExactValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.ExactValue) + copy(dAtA[i:], m.ExactValue) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ExactValue))) + i-- + dAtA[i] = 0x12 + return len(dAtA) - i, nil } -func (this *SimpleClientSrcRule_AsNumber) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_AsNumber{` + - `AsNumber:` + fmt.Sprintf("%#v", this.AsNumber) + `}`}, ", ") - return s +func (m *Query_RegexValue) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SimpleClientSrcRule_HttpHeader) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_HttpHeader{` + - `HttpHeader:` + fmt.Sprintf("%#v", this.HttpHeader) + `}`}, ", ") - return s + +func (m *Query_RegexValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.RegexValue) + copy(dAtA[i:], m.RegexValue) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RegexValue))) + i-- + dAtA[i] = 0x1a + return len(dAtA) - i, nil } -func (this *SimpleClientSrcRule_UserIdentifier) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_UserIdentifier{` + - `UserIdentifier:` + fmt.Sprintf("%#v", this.UserIdentifier) + `}`}, ", ") - return s +func (m *Query_CheckPresence) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SimpleClientSrcRule_SkipProcessing) GoString() string { - if this == nil { - return "nil" + +func (m *Query_CheckPresence) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CheckPresence != nil { + { + size, err := m.CheckPresence.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_SkipProcessing{` + - `SkipProcessing:` + fmt.Sprintf("%#v", this.SkipProcessing) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *SimpleClientSrcRule_WafSkipProcessing) GoString() string { - if this == nil { - return "nil" +func (m *ShapeBotDefenseType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_WafSkipProcessing{` + - `WafSkipProcessing:` + fmt.Sprintf("%#v", this.WafSkipProcessing) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *SimpleClientSrcRule_BotSkipProcessing) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SimpleClientSrcRule_BotSkipProcessing{` + - `BotSkipProcessing:` + fmt.Sprintf("%#v", this.BotSkipProcessing) + `}`}, ", ") - return s + +func (m *ShapeBotDefenseType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *DDoSClientSource) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.DDoSClientSource{") - if this.AsnList != nil { - s = append(s, "AsnList: "+fmt.Sprintf("%#v", this.AsnList)+",\n") + +func (m *ShapeBotDefenseType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.CorsSupportChoice != nil { + { + size := m.CorsSupportChoice.Size() + i -= size + if _, err := m.CorsSupportChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "CountryList: "+fmt.Sprintf("%#v", this.CountryList)+",\n") - if this.TlsFingerprintMatcher != nil { - s = append(s, "TlsFingerprintMatcher: "+fmt.Sprintf("%#v", this.TlsFingerprintMatcher)+",\n") + if m.Timeout != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Timeout)) + i-- + dAtA[i] = 0x18 } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *APIProtectionRuleAction) GoString() string { - if this == nil { - return "nil" + if m.Policy != nil { + { + size, err := m.Policy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.APIProtectionRuleAction{") - if this.Action != nil { - s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + if m.RegionalEndpoint != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.RegionalEndpoint)) + i-- + dAtA[i] = 0x8 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *APIProtectionRuleAction_Allow) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.APIProtectionRuleAction_Allow{` + - `Allow:` + fmt.Sprintf("%#v", this.Allow) + `}`}, ", ") - return s + +func (m *ShapeBotDefenseType_EnableCorsSupport) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIProtectionRuleAction_Deny) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefenseType_EnableCorsSupport) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableCorsSupport != nil { + { + size, err := m.EnableCorsSupport.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.APIProtectionRuleAction_Deny{` + - `Deny:` + fmt.Sprintf("%#v", this.Deny) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *APIEndpointProtectionRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 12) - s = append(s, "&http_loadbalancer.APIEndpointProtectionRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.Action != nil { - s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") - } - if this.DomainChoice != nil { - s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") - } - s = append(s, "ApiEndpointPath: "+fmt.Sprintf("%#v", this.ApiEndpointPath)+",\n") - if this.ApiEndpointMethod != nil { - s = append(s, "ApiEndpointMethod: "+fmt.Sprintf("%#v", this.ApiEndpointMethod)+",\n") - } - if this.RequestMatcher != nil { - s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") - } - if this.ClientMatcher != nil { - s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *ShapeBotDefenseType_DisableCorsSupport) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIEndpointProtectionRule_AnyDomain) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefenseType_DisableCorsSupport) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableCorsSupport != nil { + { + size, err := m.DisableCorsSupport.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 } - s := strings.Join([]string{`&http_loadbalancer.APIEndpointProtectionRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *APIEndpointProtectionRule_SpecificDomain) GoString() string { - if this == nil { - return "nil" +func (m *BotDefenseAdvancedType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.APIEndpointProtectionRule_SpecificDomain{` + - `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *APIGroupProtectionRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 12) - s = append(s, "&http_loadbalancer.APIGroupProtectionRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.Action != nil { - s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") - } - if this.DomainChoice != nil { - s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") - } - s = append(s, "BasePath: "+fmt.Sprintf("%#v", this.BasePath)+",\n") - s = append(s, "ApiGroup: "+fmt.Sprintf("%#v", this.ApiGroup)+",\n") - if this.RequestMatcher != nil { - s = append(s, "RequestMatcher: "+fmt.Sprintf("%#v", this.RequestMatcher)+",\n") - } - if this.ClientMatcher != nil { - s = append(s, "ClientMatcher: "+fmt.Sprintf("%#v", this.ClientMatcher)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + +func (m *BotDefenseAdvancedType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APIGroupProtectionRule_AnyDomain) GoString() string { - if this == nil { - return "nil" + +func (m *BotDefenseAdvancedType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Policy != nil { + { + size, err := m.Policy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.APIGroupProtectionRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s -} -func (this *APIGroupProtectionRule_SpecificDomain) GoString() string { - if this == nil { - return "nil" + if m.Mobile != nil { + { + size, err := m.Mobile.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.APIGroupProtectionRule_SpecificDomain{` + - `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") - return s -} -func (this *APIProtectionRules) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.APIProtectionRules{") - if this.ApiEndpointRules != nil { - s = append(s, "ApiEndpointRules: "+fmt.Sprintf("%#v", this.ApiEndpointRules)+",\n") + if m.Web != nil { + { + size, err := m.Web.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - if this.ApiGroupsRules != nil { - s = append(s, "ApiGroupsRules: "+fmt.Sprintf("%#v", this.ApiGroupsRules)+",\n") + return len(dAtA) - i, nil +} + +func (m *ShapeBotDefensePolicyType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *DDoSMitigationRule) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefensePolicyType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ShapeBotDefensePolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.JavascriptMode != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptMode)) + i-- + dAtA[i] = 0x58 } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.DDoSMitigationRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + if m.MobileSdkChoice != nil { + { + size := m.MobileSdkChoice.Size() + i -= size + if _, err := m.MobileSdkChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MitigationAction != nil { - s = append(s, "MitigationAction: "+fmt.Sprintf("%#v", this.MitigationAction)+",\n") + if m.JavaScriptChoice != nil { + { + size := m.JavaScriptChoice.Size() + i -= size + if _, err := m.JavaScriptChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MitigationChoice != nil { - s = append(s, "MitigationChoice: "+fmt.Sprintf("%#v", this.MitigationChoice)+",\n") + if len(m.JsDownloadPath) > 0 { + i -= len(m.JsDownloadPath) + copy(dAtA[i:], m.JsDownloadPath) + i = encodeVarintTypes(dAtA, i, uint64(len(m.JsDownloadPath))) + i-- + dAtA[i] = 0x12 } - if this.ExpirationTimestamp != nil { - s = append(s, "ExpirationTimestamp: "+fmt.Sprintf("%#v", this.ExpirationTimestamp)+",\n") + if len(m.ProtectedAppEndpoints) > 0 { + for iNdEx := len(m.ProtectedAppEndpoints) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ProtectedAppEndpoints[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *DDoSMitigationRule_Block) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.DDoSMitigationRule_Block{` + - `Block:` + fmt.Sprintf("%#v", this.Block) + `}`}, ", ") - return s + +func (m *ShapeBotDefensePolicyType_DisableJsInsert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *DDoSMitigationRule_DdosClientSource) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefensePolicyType_DisableJsInsert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableJsInsert != nil { + { + size, err := m.DisableJsInsert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.DDoSMitigationRule_DdosClientSource{` + - `DdosClientSource:` + fmt.Sprintf("%#v", this.DdosClientSource) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *DDoSMitigationRule_IpPrefixList) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.DDoSMitigationRule_IpPrefixList{` + - `IpPrefixList:` + fmt.Sprintf("%#v", this.IpPrefixList) + `}`}, ", ") - return s +func (m *ShapeBotDefensePolicyType_JsInsertAllPages) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CustomIpAllowedList) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.CustomIpAllowedList{") - if this.RateLimiterAllowedPrefixes != nil { - s = append(s, "RateLimiterAllowedPrefixes: "+fmt.Sprintf("%#v", this.RateLimiterAllowedPrefixes)+",\n") + +func (m *ShapeBotDefensePolicyType_JsInsertAllPages) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsInsertAllPages != nil { + { + size, err := m.JsInsertAllPages.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *RateLimitConfigType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&http_loadbalancer.RateLimitConfigType{") - if this.RateLimiter != nil { - s = append(s, "RateLimiter: "+fmt.Sprintf("%#v", this.RateLimiter)+",\n") - } - if this.IpAllowedListChoice != nil { - s = append(s, "IpAllowedListChoice: "+fmt.Sprintf("%#v", this.IpAllowedListChoice)+",\n") - } - if this.PolicyChoice != nil { - s = append(s, "PolicyChoice: "+fmt.Sprintf("%#v", this.PolicyChoice)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RateLimitConfigType_NoIpAllowedList) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsInsertAllPagesExcept != nil { + { + size, err := m.JsInsertAllPagesExcept.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 } - s := strings.Join([]string{`&http_loadbalancer.RateLimitConfigType_NoIpAllowedList{` + - `NoIpAllowedList:` + fmt.Sprintf("%#v", this.NoIpAllowedList) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RateLimitConfigType_IpAllowedList) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RateLimitConfigType_IpAllowedList{` + - `IpAllowedList:` + fmt.Sprintf("%#v", this.IpAllowedList) + `}`}, ", ") - return s +func (m *ShapeBotDefensePolicyType_JsInsertionRules) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RateLimitConfigType_CustomIpAllowedList) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefensePolicyType_JsInsertionRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsInsertionRules != nil { + { + size, err := m.JsInsertionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a } - s := strings.Join([]string{`&http_loadbalancer.RateLimitConfigType_CustomIpAllowedList{` + - `CustomIpAllowedList:` + fmt.Sprintf("%#v", this.CustomIpAllowedList) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *RateLimitConfigType_NoPolicies) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.RateLimitConfigType_NoPolicies{` + - `NoPolicies:` + fmt.Sprintf("%#v", this.NoPolicies) + `}`}, ", ") - return s +func (m *ShapeBotDefensePolicyType_DisableMobileSdk) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *RateLimitConfigType_Policies) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeBotDefensePolicyType_DisableMobileSdk) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMobileSdk != nil { + { + size, err := m.DisableMobileSdk.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - s := strings.Join([]string{`&http_loadbalancer.RateLimitConfigType_Policies{` + - `Policies:` + fmt.Sprintf("%#v", this.Policies) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ServicePolicyList) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.ServicePolicyList{") - if this.Policies != nil { - s = append(s, "Policies: "+fmt.Sprintf("%#v", this.Policies)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *ShapeBotDefensePolicyType_MobileSdkConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ApiDefinitionList) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.ApiDefinitionList{") - if this.ApiDefinitions != nil { - s = append(s, "ApiDefinitions: "+fmt.Sprintf("%#v", this.ApiDefinitions)+",\n") + +func (m *ShapeBotDefensePolicyType_MobileSdkConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MobileSdkConfig != nil { + { + size, err := m.MobileSdkConfig.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ApiDiscoverySetting) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.ApiDiscoverySetting{") - if this.LearnFromRedirectTraffic != nil { - s = append(s, "LearnFromRedirectTraffic: "+fmt.Sprintf("%#v", this.LearnFromRedirectTraffic)+",\n") - } - if this.SensitiveDataDetectionRules != nil { - s = append(s, "SensitiveDataDetectionRules: "+fmt.Sprintf("%#v", this.SensitiveDataDetectionRules)+",\n") - } - if this.DiscoveredApiSettings != nil { - s = append(s, "DiscoveredApiSettings: "+fmt.Sprintf("%#v", this.DiscoveredApiSettings)+",\n") +func (m *MobileTrafficIdentifierType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) GoString() string { - if this == nil { - return "nil" + +func (m *MobileTrafficIdentifierType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MobileTrafficIdentifierType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Headers) > 0 { + for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } } - s := strings.Join([]string{`&http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{` + - `DisableLearnFromRedirectTraffic:` + fmt.Sprintf("%#v", this.DisableLearnFromRedirectTraffic) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) GoString() string { - if this == nil { - return "nil" + +func (m *MobileSDKConfigType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{` + - `EnableLearnFromRedirectTraffic:` + fmt.Sprintf("%#v", this.EnableLearnFromRedirectTraffic) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *EnableDDoSDetectionSetting) GoString() string { - if this == nil { - return "nil" + +func (m *MobileSDKConfigType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MobileSDKConfigType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MobileIdentifier != nil { + { + size, err := m.MobileIdentifier.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.EnableDDoSDetectionSetting{") - if this.AutoMitigationChoice != nil { - s = append(s, "AutoMitigationChoice: "+fmt.Sprintf("%#v", this.AutoMitigationChoice)+",\n") + if len(m.ReloadHeaderName) > 0 { + i -= len(m.ReloadHeaderName) + copy(dAtA[i:], m.ReloadHeaderName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ReloadHeaderName))) + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *EnableDDoSDetectionSetting_EnableAutoMitigation) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.EnableDDoSDetectionSetting_EnableAutoMitigation{` + - `EnableAutoMitigation:` + fmt.Sprintf("%#v", this.EnableAutoMitigation) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *EnableDDoSDetectionSetting_DisableAutoMitigation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.EnableDDoSDetectionSetting_DisableAutoMitigation{` + - `DisableAutoMitigation:` + fmt.Sprintf("%#v", this.DisableAutoMitigation) + `}`}, ", ") - return s + +func (m *AppEndpointType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AutoMitigationAction) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GoodbotChoice != nil { + { + size := m.GoodbotChoice.Size() + i -= size + if _, err := m.GoodbotChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.AutoMitigationAction{") - if this.Action != nil { - s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + if m.FlowLabelChoice != nil { + { + size := m.FlowLabelChoice.Size() + i -= size + if _, err := m.FlowLabelChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *AutoMitigationAction_Block) GoString() string { - if this == nil { - return "nil" + if m.Mitigation != nil { + { + size, err := m.Mitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 } - s := strings.Join([]string{`&http_loadbalancer.AutoMitigationAction_Block{` + - `Block:` + fmt.Sprintf("%#v", this.Block) + `}`}, ", ") - return s -} -func (this *AutoMitigationAction_JsChallenge) GoString() string { - if this == nil { - return "nil" + if m.AppTrafficTypeChoice != nil { + { + size := m.AppTrafficTypeChoice.Size() + i -= size + if _, err := m.AppTrafficTypeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.AutoMitigationAction_JsChallenge{` + - `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") - return s -} -func (this *SingleLoadBalancerAppSetting) GoString() string { - if this == nil { - return "nil" + if m.DomainMatcherChoice != nil { + { + size := m.DomainMatcherChoice.Size() + i -= size + if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 10) - s = append(s, "&http_loadbalancer.SingleLoadBalancerAppSetting{") - if this.ApiDiscoveryChoice != nil { - s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - if this.DdosDetectionChoice != nil { - s = append(s, "DdosDetectionChoice: "+fmt.Sprintf("%#v", this.DdosDetectionChoice)+",\n") + if m.Protocol != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Protocol)) + i-- + dAtA[i] = 0x18 } - if this.MaliciousUserDetectionChoice != nil { - s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") + if len(m.HttpMethods) > 0 { + dAtA127 := make([]byte, len(m.HttpMethods)*10) + var j126 int + for _, num := range m.HttpMethods { + for num >= 1<<7 { + dAtA127[j126] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j126++ + } + dAtA127[j126] = uint8(num) + j126++ + } + i -= j126 + copy(dAtA[i:], dAtA127[:j126]) + i = encodeVarintTypes(dAtA, i, uint64(j126)) + i-- + dAtA[i] = 0x12 } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *SingleLoadBalancerAppSetting_EnableDiscovery) GoString() string { - if this == nil { - return "nil" + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_EnableDiscovery{` + - `EnableDiscovery:` + fmt.Sprintf("%#v", this.EnableDiscovery) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *SingleLoadBalancerAppSetting_DisableDiscovery) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_DisableDiscovery{` + - `DisableDiscovery:` + fmt.Sprintf("%#v", this.DisableDiscovery) + `}`}, ", ") - return s + +func (m *AppEndpointType_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SingleLoadBalancerAppSetting_EnableDdosDetection) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 } - s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_EnableDdosDetection{` + - `EnableDdosDetection:` + fmt.Sprintf("%#v", this.EnableDdosDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *SingleLoadBalancerAppSetting_DisableDdosDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_DisableDdosDetection{` + - `DisableDdosDetection:` + fmt.Sprintf("%#v", this.DisableDdosDetection) + `}`}, ", ") - return s +func (m *AppEndpointType_Domain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Domain != nil { + { + size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a } - s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{` + - `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.SingleLoadBalancerAppSetting_DisableMaliciousUserDetection{` + - `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") - return s +func (m *AppEndpointType_Web) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APISpecificationSettings) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.APISpecificationSettings{") - if this.ApiDefinition != nil { - s = append(s, "ApiDefinition: "+fmt.Sprintf("%#v", this.ApiDefinition)+",\n") - } - if this.ValidationTargetChoice != nil { - s = append(s, "ValidationTargetChoice: "+fmt.Sprintf("%#v", this.ValidationTargetChoice)+",\n") + +func (m *AppEndpointType_Web) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Web != nil { + { + size, err := m.Web.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *APISpecificationSettings_ValidationDisabled) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.APISpecificationSettings_ValidationDisabled{` + - `ValidationDisabled:` + fmt.Sprintf("%#v", this.ValidationDisabled) + `}`}, ", ") - return s +func (m *AppEndpointType_Mobile) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *APISpecificationSettings_ValidationAllSpecEndpoints) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType_Mobile) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Mobile != nil { + { + size, err := m.Mobile.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 } - s := strings.Join([]string{`&http_loadbalancer.APISpecificationSettings_ValidationAllSpecEndpoints{` + - `ValidationAllSpecEndpoints:` + fmt.Sprintf("%#v", this.ValidationAllSpecEndpoints) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *APISpecificationSettings_ValidationCustomList) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.APISpecificationSettings_ValidationCustomList{` + - `ValidationCustomList:` + fmt.Sprintf("%#v", this.ValidationCustomList) + `}`}, ", ") - return s +func (m *AppEndpointType_WebMobile) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationAllSpecEndpointsSettings) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings{") - if this.ValidationMode != nil { - s = append(s, "ValidationMode: "+fmt.Sprintf("%#v", this.ValidationMode)+",\n") - } - if this.FallThroughMode != nil { - s = append(s, "FallThroughMode: "+fmt.Sprintf("%#v", this.FallThroughMode)+",\n") - } - if this.OversizedBodyChoice != nil { - s = append(s, "OversizedBodyChoice: "+fmt.Sprintf("%#v", this.OversizedBodyChoice)+",\n") - } - if this.Settings != nil { - s = append(s, "Settings: "+fmt.Sprintf("%#v", this.Settings)+",\n") + +func (m *AppEndpointType_WebMobile) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.WebMobile != nil { + { + size, err := m.WebMobile.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{` + - `OversizedBodySkipValidation:` + fmt.Sprintf("%#v", this.OversizedBodySkipValidation) + `}`}, ", ") - return s +func (m *AppEndpointType_UndefinedFlowLabel) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType_UndefinedFlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UndefinedFlowLabel != nil { + { + size, err := m.UndefinedFlowLabel.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{` + - `OversizedBodyFailValidation:` + fmt.Sprintf("%#v", this.OversizedBodyFailValidation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationCommonSettings) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.OpenApiValidationCommonSettings{") - if this.OversizedBodyChoice != nil { - s = append(s, "OversizedBodyChoice: "+fmt.Sprintf("%#v", this.OversizedBodyChoice)+",\n") - } - if this.PropertyValidationSettingsChoice != nil { - s = append(s, "PropertyValidationSettingsChoice: "+fmt.Sprintf("%#v", this.PropertyValidationSettingsChoice)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *AppEndpointType_FlowLabel) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType_FlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.FlowLabel != nil { + { + size, err := m.FlowLabel.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodySkipValidation{` + - `OversizedBodySkipValidation:` + fmt.Sprintf("%#v", this.OversizedBodySkipValidation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodyFailValidation{` + - `OversizedBodyFailValidation:` + fmt.Sprintf("%#v", this.OversizedBodyFailValidation) + `}`}, ", ") - return s +func (m *AppEndpointType_MitigateGoodBots) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) GoString() string { - if this == nil { - return "nil" + +func (m *AppEndpointType_MitigateGoodBots) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MitigateGoodBots != nil { + { + size, err := m.MitigateGoodBots.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{` + - `PropertyValidationSettingsDefault:` + fmt.Sprintf("%#v", this.PropertyValidationSettingsDefault) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{` + - `PropertyValidationSettingsCustom:` + fmt.Sprintf("%#v", this.PropertyValidationSettingsCustom) + `}`}, ", ") - return s +func (m *AppEndpointType_AllowGoodBots) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ValidationPropertySetting) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ValidationPropertySetting{") - if this.QueryParameters != nil { - s = append(s, "QueryParameters: "+fmt.Sprintf("%#v", this.QueryParameters)+",\n") - } - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") + +func (m *AppEndpointType_AllowGoodBots) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AllowGoodBots != nil { + { + size, err := m.AllowGoodBots.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ValidationSettingForQueryParameters) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ValidationSettingForQueryParameters{") - if this.AdditionalParametersChoice != nil { - s = append(s, "AdditionalParametersChoice: "+fmt.Sprintf("%#v", this.AdditionalParametersChoice)+",\n") +func (m *WebMobileTrafficType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{` + - `AllowAdditionalParameters:` + fmt.Sprintf("%#v", this.AllowAdditionalParameters) + `}`}, ", ") - return s + +func (m *WebMobileTrafficType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) GoString() string { - if this == nil { - return "nil" + +func (m *WebMobileTrafficType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.MobileIdentifier != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.MobileIdentifier)) + i-- + dAtA[i] = 0x18 } - s := strings.Join([]string{`&http_loadbalancer.ValidationSettingForQueryParameters_DisallowAdditionalParameters{` + - `DisallowAdditionalParameters:` + fmt.Sprintf("%#v", this.DisallowAdditionalParameters) + `}`}, ", ") - return s -} -func (this *ValidationSettingForHeaders) GoString() string { - if this == nil { - return "nil" + if len(m.Headers) > 0 { + for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ValidationSettingForHeaders{") - if this.AdditionalHeadersChoice != nil { - s = append(s, "AdditionalHeadersChoice: "+fmt.Sprintf("%#v", this.AdditionalHeadersChoice)+",\n") + if m.Header != nil { + { + size, err := m.Header.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptInsertType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{` + - `AllowAdditionalHeaders:` + fmt.Sprintf("%#v", this.AllowAdditionalHeaders) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ValidationSettingForHeaders_DisallowAdditionalHeaders{` + - `DisallowAdditionalHeaders:` + fmt.Sprintf("%#v", this.DisallowAdditionalHeaders) + `}`}, ", ") - return s + +func (m *ShapeJavaScriptInsertType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationMode) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.OpenApiValidationMode{") - if this.ValidationModeChoice != nil { - s = append(s, "ValidationModeChoice: "+fmt.Sprintf("%#v", this.ValidationModeChoice)+",\n") + +func (m *ShapeJavaScriptInsertType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ExcludeList) > 0 { + for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } } - if this.ResponseValidationModeChoice != nil { - s = append(s, "ResponseValidationModeChoice: "+fmt.Sprintf("%#v", this.ResponseValidationModeChoice)+",\n") + if len(m.Rules) > 0 { + for iNdEx := len(m.Rules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Rules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *OpenApiValidationMode_ValidationModeActive) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptInsertAllWithExceptionsType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationMode_ValidationModeActive{` + - `ValidationModeActive:` + fmt.Sprintf("%#v", this.ValidationModeActive) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *OpenApiValidationMode_SkipValidation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationMode_SkipValidation{` + - `SkipValidation:` + fmt.Sprintf("%#v", this.SkipValidation) + `}`}, ", ") - return s + +func (m *ShapeJavaScriptInsertAllWithExceptionsType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationMode_SkipResponseValidation) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptInsertAllWithExceptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ExcludeList) > 0 { + for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{` + - `SkipResponseValidation:` + fmt.Sprintf("%#v", this.SkipResponseValidation) + `}`}, ", ") - return s -} -func (this *OpenApiValidationMode_ResponseValidationModeActive) GoString() string { - if this == nil { - return "nil" + if m.JavascriptLocation != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptLocation)) + i-- + dAtA[i] = 0x8 } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationMode_ResponseValidationModeActive{` + - `ResponseValidationModeActive:` + fmt.Sprintf("%#v", this.ResponseValidationModeActive) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiFallThroughMode) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.OpenApiFallThroughMode{") - if this.FallThroughModeChoice != nil { - s = append(s, "FallThroughModeChoice: "+fmt.Sprintf("%#v", this.FallThroughModeChoice)+",\n") + +func (m *ShapeJavaScriptInsertAllType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *OpenApiFallThroughMode_FallThroughModeAllow) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{` + - `FallThroughModeAllow:` + fmt.Sprintf("%#v", this.FallThroughModeAllow) + `}`}, ", ") - return s + +func (m *ShapeJavaScriptInsertAllType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiFallThroughMode_FallThroughModeCustom) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptInsertAllType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.JavascriptLocation != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptLocation)) + i-- + dAtA[i] = 0x8 } - s := strings.Join([]string{`&http_loadbalancer.OpenApiFallThroughMode_FallThroughModeCustom{` + - `FallThroughModeCustom:` + fmt.Sprintf("%#v", this.FallThroughModeCustom) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CustomFallThroughMode) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.CustomFallThroughMode{") - if this.OpenApiValidationRules != nil { - s = append(s, "OpenApiValidationRules: "+fmt.Sprintf("%#v", this.OpenApiValidationRules)+",\n") + +func (m *ShapeJavaScriptInsertionRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *FallThroughRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 11) - s = append(s, "&http_loadbalancer.FallThroughRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.ActionChoice != nil { - s = append(s, "ActionChoice: "+fmt.Sprintf("%#v", this.ActionChoice)+",\n") - } - if this.ConditionTypeChoice != nil { - s = append(s, "ConditionTypeChoice: "+fmt.Sprintf("%#v", this.ConditionTypeChoice)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + +func (m *ShapeJavaScriptInsertionRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *FallThroughRule_ActionSkip) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptInsertionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.JavascriptLocation != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptLocation)) + i-- + dAtA[i] = 0x30 } - s := strings.Join([]string{`&http_loadbalancer.FallThroughRule_ActionSkip{` + - `ActionSkip:` + fmt.Sprintf("%#v", this.ActionSkip) + `}`}, ", ") - return s -} -func (this *FallThroughRule_ActionReport) GoString() string { - if this == nil { - return "nil" + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.FallThroughRule_ActionReport{` + - `ActionReport:` + fmt.Sprintf("%#v", this.ActionReport) + `}`}, ", ") - return s -} -func (this *FallThroughRule_ActionBlock) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.FallThroughRule_ActionBlock{` + - `ActionBlock:` + fmt.Sprintf("%#v", this.ActionBlock) + `}`}, ", ") - return s -} -func (this *FallThroughRule_ApiEndpoint) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.FallThroughRule_ApiEndpoint{` + - `ApiEndpoint:` + fmt.Sprintf("%#v", this.ApiEndpoint) + `}`}, ", ") - return s -} -func (this *FallThroughRule_BasePath) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.FallThroughRule_BasePath{` + - `BasePath:` + fmt.Sprintf("%#v", this.BasePath) + `}`}, ", ") - return s -} -func (this *FallThroughRule_ApiGroup) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.FallThroughRule_ApiGroup{` + - `ApiGroup:` + fmt.Sprintf("%#v", this.ApiGroup) + `}`}, ", ") - return s -} -func (this *OpenApiValidationModeActive) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.OpenApiValidationModeActive{") - if this.ValidationEnforcementType != nil { - s = append(s, "ValidationEnforcementType: "+fmt.Sprintf("%#v", this.ValidationEnforcementType)+",\n") - } - s = append(s, "RequestValidationProperties: "+fmt.Sprintf("%#v", this.RequestValidationProperties)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *OpenApiValidationModeActive_EnforcementReport) GoString() string { - if this == nil { - return "nil" + if m.DomainMatcherChoice != nil { + { + size := m.DomainMatcherChoice.Size() + i -= size + if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{` + - `EnforcementReport:` + fmt.Sprintf("%#v", this.EnforcementReport) + `}`}, ", ") - return s -} -func (this *OpenApiValidationModeActive_EnforcementBlock) GoString() string { - if this == nil { - return "nil" + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationModeActive_EnforcementBlock{` + - `EnforcementBlock:` + fmt.Sprintf("%#v", this.EnforcementBlock) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationModeActiveResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.OpenApiValidationModeActiveResponse{") - if this.ValidationEnforcementType != nil { - s = append(s, "ValidationEnforcementType: "+fmt.Sprintf("%#v", this.ValidationEnforcementType)+",\n") - } - s = append(s, "ResponseValidationProperties: "+fmt.Sprintf("%#v", this.ResponseValidationProperties)+",\n") - s = append(s, "}") - return strings.Join(s, "") + +func (m *ShapeJavaScriptInsertionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationModeActiveResponse_EnforcementReport) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptInsertionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{` + - `EnforcementReport:` + fmt.Sprintf("%#v", this.EnforcementReport) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementBlock{` + - `EnforcementBlock:` + fmt.Sprintf("%#v", this.EnforcementBlock) + `}`}, ", ") - return s +func (m *ShapeJavaScriptInsertionRule_Domain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ValidateApiBySpecRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.ValidateApiBySpecRule{") - if this.OpenApiValidationRules != nil { - s = append(s, "OpenApiValidationRules: "+fmt.Sprintf("%#v", this.OpenApiValidationRules)+",\n") - } - if this.FallThroughMode != nil { - s = append(s, "FallThroughMode: "+fmt.Sprintf("%#v", this.FallThroughMode)+",\n") - } - if this.OversizedBodyChoice != nil { - s = append(s, "OversizedBodyChoice: "+fmt.Sprintf("%#v", this.OversizedBodyChoice)+",\n") - } - if this.Settings != nil { - s = append(s, "Settings: "+fmt.Sprintf("%#v", this.Settings)+",\n") + +func (m *ShapeJavaScriptInsertionRule_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Domain != nil { + { + size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) GoString() string { - if this == nil { - return "nil" +func (m *ShapeJavaScriptExclusionRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ValidateApiBySpecRule_OversizedBodySkipValidation{` + - `OversizedBodySkipValidation:` + fmt.Sprintf("%#v", this.OversizedBodySkipValidation) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ValidateApiBySpecRule_OversizedBodyFailValidation{` + - `OversizedBodyFailValidation:` + fmt.Sprintf("%#v", this.OversizedBodyFailValidation) + `}`}, ", ") - return s + +func (m *ShapeJavaScriptExclusionRule) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 11) - s = append(s, "&http_loadbalancer.OpenApiValidationRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.ValidationMode != nil { - s = append(s, "ValidationMode: "+fmt.Sprintf("%#v", this.ValidationMode)+",\n") + +func (m *ShapeJavaScriptExclusionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Path != nil { + { + size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - if this.DomainChoice != nil { - s = append(s, "DomainChoice: "+fmt.Sprintf("%#v", this.DomainChoice)+",\n") + if m.DomainMatcherChoice != nil { + { + size := m.DomainMatcherChoice.Size() + i -= size + if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.ConditionTypeChoice != nil { - s = append(s, "ConditionTypeChoice: "+fmt.Sprintf("%#v", this.ConditionTypeChoice)+",\n") + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *OpenApiValidationRule_AnyDomain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s + +func (m *ShapeJavaScriptExclusionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationRule_SpecificDomain) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptExclusionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AnyDomain != nil { + { + size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationRule_SpecificDomain{` + - `SpecificDomain:` + fmt.Sprintf("%#v", this.SpecificDomain) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationRule_ApiEndpoint) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationRule_ApiEndpoint{` + - `ApiEndpoint:` + fmt.Sprintf("%#v", this.ApiEndpoint) + `}`}, ", ") - return s +func (m *ShapeJavaScriptExclusionRule_Domain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OpenApiValidationRule_BasePath) GoString() string { - if this == nil { - return "nil" + +func (m *ShapeJavaScriptExclusionRule_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Domain != nil { + { + size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationRule_BasePath{` + - `BasePath:` + fmt.Sprintf("%#v", this.BasePath) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *OpenApiValidationRule_ApiGroup) GoString() string { - if this == nil { - return "nil" +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.OpenApiValidationRule_ApiGroup{` + - `ApiGroup:` + fmt.Sprintf("%#v", this.ApiGroup) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ApiEndpointDetails) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ApiEndpointDetails{") - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") - s = append(s, "Methods: "+fmt.Sprintf("%#v", this.Methods)+",\n") - s = append(s, "}") - return strings.Join(s, "") + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *OriginServerSubsetRuleListType) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.InternetVipInfo) > 0 { + for iNdEx := len(m.InternetVipInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.InternetVipInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x44 + i-- + dAtA[i] = 0xe2 + } } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.OriginServerSubsetRuleListType{") - if this.OriginServerSubsetRules != nil { - s = append(s, "OriginServerSubsetRules: "+fmt.Sprintf("%#v", this.OriginServerSubsetRules)+",\n") + if m.BotDefenseChoice != nil { + { + size := m.BotDefenseChoice.Size() + i -= size + if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ClientSideDefenseType) GoString() string { - if this == nil { - return "nil" + if m.AutoCertInfo != nil { + { + size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x92 } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.ClientSideDefenseType{") - if this.Policy != nil { - s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") + if m.AutoCertState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.AutoCertState)) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xe0 } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ClientSideDefensePolicyType) GoString() string { - if this == nil { - return "nil" + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd8 } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.ClientSideDefensePolicyType{") - if this.JavaScriptChoice != nil { - s = append(s, "JavaScriptChoice: "+fmt.Sprintf("%#v", this.JavaScriptChoice)+",\n") + if len(m.DnsInfo) > 0 { + for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd2 + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ClientSideDefensePolicyType_DisableJsInsert) GoString() string { - if this == nil { - return "nil" + if len(m.HostName) > 0 { + i -= len(m.HostName) + copy(dAtA[i:], m.HostName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_DisableJsInsert{` + - `DisableJsInsert:` + fmt.Sprintf("%#v", this.DisableJsInsert) + `}`}, ", ") - return s -} -func (this *ClientSideDefensePolicyType_JsInsertAllPages) GoString() string { - if this == nil { - return "nil" + if m.ViewInternal != nil { + { + size, err := m.ViewInternal.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_JsInsertAllPages{` + - `JsInsertAllPages:` + fmt.Sprintf("%#v", this.JsInsertAllPages) + `}`}, ", ") - return s -} -func (this *ClientSideDefensePolicyType_JsInsertAllPagesExcept) GoString() string { - if this == nil { - return "nil" + if m.RateLimitChoice != nil { + { + size := m.RateLimitChoice.Size() + i -= size + if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_JsInsertAllPagesExcept{` + - `JsInsertAllPagesExcept:` + fmt.Sprintf("%#v", this.JsInsertAllPagesExcept) + `}`}, ", ") - return s -} -func (this *ClientSideDefensePolicyType_JsInsertionRules) GoString() string { - if this == nil { - return "nil" + if m.CertState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x98 } - s := strings.Join([]string{`&http_loadbalancer.ClientSideDefensePolicyType_JsInsertionRules{` + - `JsInsertionRules:` + fmt.Sprintf("%#v", this.JsInsertionRules) + `}`}, ", ") - return s -} -func (this *CSDJavaScriptInsertAllWithExceptionsType) GoString() string { - if this == nil { - return "nil" + if m.L7DdosAutoMitigationAction != nil { + { + size := m.L7DdosAutoMitigationAction.Size() + i -= size + if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType{") - if this.ExcludeList != nil { - s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") + if m.ThreatMeshChoice != nil { + { + size := m.ThreatMeshChoice.Size() + i -= size + if _, err := m.ThreatMeshChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CSDJavaScriptInsertType) GoString() string { - if this == nil { - return "nil" + if m.OriginServerSubsetRuleList != nil { + { + size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xaa } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.CSDJavaScriptInsertType{") - if this.Rules != nil { - s = append(s, "Rules: "+fmt.Sprintf("%#v", this.Rules)+",\n") + if m.JwtValidation != nil { + { + size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0x92 } - if this.ExcludeList != nil { - s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") + if m.SlowDdosMitigationChoice != nil { + { + size := m.SlowDdosMitigationChoice.Size() + i -= size + if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CSDJavaScriptInsertionRule) GoString() string { - if this == nil { - return "nil" + if m.ChallengeType != nil { + { + size := m.ChallengeType.Size() + i -= size + if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.CSDJavaScriptInsertionRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + if len(m.ProtectedCookies) > 0 { + for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xea + } } - if this.DomainMatcherChoice != nil { - s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") - } - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") + if len(m.GraphqlRules) > 0 { + for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xe2 + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *CSDJavaScriptInsertionRule_AnyDomain) GoString() string { - if this == nil { - return "nil" + if m.CsrfPolicy != nil { + { + size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.CSDJavaScriptInsertionRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s -} -func (this *CSDJavaScriptInsertionRule_Domain) GoString() string { - if this == nil { - return "nil" + if m.OriginPoolChoice != nil { + { + size := m.OriginPoolChoice.Size() + i -= size + if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.CSDJavaScriptInsertionRule_Domain{` + - `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") - return s -} -func (this *BotDefenseAdvancedPolicyType) GoString() string { - if this == nil { - return "nil" + if m.ClientSideDefenseChoice != nil { + { + size := m.ClientSideDefenseChoice.Size() + i -= size + if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.BotDefenseAdvancedPolicyType{") - if this.ProtectedAppEndpoints != nil { - s = append(s, "ProtectedAppEndpoints: "+fmt.Sprintf("%#v", this.ProtectedAppEndpoints)+",\n") + if m.ApiDiscoveryChoice != nil { + { + size := m.ApiDiscoveryChoice.Size() + i -= size + if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "JsDownloadPath: "+fmt.Sprintf("%#v", this.JsDownloadPath)+",\n") - if this.MobileSdkChoice != nil { - s = append(s, "MobileSdkChoice: "+fmt.Sprintf("%#v", this.MobileSdkChoice)+",\n") + if m.MaliciousUserDetectionChoice != nil { + { + size := m.MaliciousUserDetectionChoice.Size() + i -= size + if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) GoString() string { - if this == nil { - return "nil" + if m.TrustClientIpHeadersChoice != nil { + { + size := m.TrustClientIpHeadersChoice.Size() + i -= size + if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.BotDefenseAdvancedPolicyType_DisableMobileSdk{` + - `DisableMobileSdk:` + fmt.Sprintf("%#v", this.DisableMobileSdk) + `}`}, ", ") - return s -} -func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) GoString() string { - if this == nil { - return "nil" + if m.ApiProtectionRules != nil { + { + size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.BotDefenseAdvancedPolicyType_MobileSdkConfig{` + - `MobileSdkConfig:` + fmt.Sprintf("%#v", this.MobileSdkConfig) + `}`}, ", ") - return s -} -func (this *BotAdvancedMobileSDKConfigType) GoString() string { - if this == nil { - return "nil" + if m.ApiDefinitionChoice != nil { + { + size := m.ApiDefinitionChoice.Size() + i -= size + if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.BotAdvancedMobileSDKConfigType{") - if this.MobileIdentifier != nil { - s = append(s, "MobileIdentifier: "+fmt.Sprintf("%#v", this.MobileIdentifier)+",\n") + if m.IpReputationChoice != nil { + { + size := m.IpReputationChoice.Size() + i -= size + if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ProtectedAppEndpointType) GoString() string { - if this == nil { - return "nil" + if len(m.DataGuardRules) > 0 { + for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xfa + } } - s := make([]string, 0, 16) - s = append(s, "&http_loadbalancer.ProtectedAppEndpointType{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { + for iNdEx := len(m.DownstreamTlsCertificateExpirationTimestamps) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DownstreamTlsCertificateExpirationTimestamps[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xf2 + } } - if this.DomainMatcherChoice != nil { - s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") + if m.UserIdChoice != nil { + { + size := m.UserIdChoice.Size() + i -= size + if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") + if m.MlConfigChoice != nil { + { + size := m.MlConfigChoice.Size() + i -= size + if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.Query != nil { - s = append(s, "Query: "+fmt.Sprintf("%#v", this.Query)+",\n") + if m.WafChoice != nil { + { + size := m.WafChoice.Size() + i -= size + if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.RequestBody != nil { - s = append(s, "RequestBody: "+fmt.Sprintf("%#v", this.RequestBody)+",\n") + if m.HashPolicyChoice != nil { + { + size := m.HashPolicyChoice.Size() + i -= size + if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "HttpMethods: "+fmt.Sprintf("%#v", this.HttpMethods)+",\n") - if this.AppTrafficTypeChoice != nil { - s = append(s, "AppTrafficTypeChoice: "+fmt.Sprintf("%#v", this.AppTrafficTypeChoice)+",\n") + if m.ServicePolicyChoice != nil { + { + size := m.ServicePolicyChoice.Size() + i -= size + if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.FlowLabelChoice != nil { - s = append(s, "FlowLabelChoice: "+fmt.Sprintf("%#v", this.FlowLabelChoice)+",\n") + if len(m.DdosMitigationRules) > 0 { + for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ProtectedAppEndpointType_AnyDomain) GoString() string { - if this == nil { - return "nil" + if len(m.TrustedClients) > 0 { + for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x9a + } } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s -} -func (this *ProtectedAppEndpointType_Domain) GoString() string { - if this == nil { - return "nil" + if len(m.BlockedClients) > 0 { + for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x92 + } } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_Domain{` + - `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") - return s -} -func (this *ProtectedAppEndpointType_WebClient) GoString() string { - if this == nil { - return "nil" + if len(m.WafExclusionRules) > 0 { + for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x8a + } } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_WebClient{` + - `WebClient:` + fmt.Sprintf("%#v", this.WebClient) + `}`}, ", ") - return s -} -func (this *ProtectedAppEndpointType_MobileClient) GoString() string { - if this == nil { - return "nil" + if m.MaliciousUserMitigation != nil { + { + size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_MobileClient{` + - `MobileClient:` + fmt.Sprintf("%#v", this.MobileClient) + `}`}, ", ") - return s -} -func (this *ProtectedAppEndpointType_WebMobileClient) GoString() string { - if this == nil { - return "nil" + if m.HostRewriteParams != nil { + { + size := m.HostRewriteParams.Size() + i -= size + if _, err := m.HostRewriteParams.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_WebMobileClient{` + - `WebMobileClient:` + fmt.Sprintf("%#v", this.WebMobileClient) + `}`}, ", ") - return s -} -func (this *ProtectedAppEndpointType_UndefinedFlowLabel) GoString() string { - if this == nil { - return "nil" + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_UndefinedFlowLabel{` + - `UndefinedFlowLabel:` + fmt.Sprintf("%#v", this.UndefinedFlowLabel) + `}`}, ", ") - return s -} -func (this *ProtectedAppEndpointType_FlowLabel) GoString() string { - if this == nil { - return "nil" + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.ProtectedAppEndpointType_FlowLabel{` + - `FlowLabel:` + fmt.Sprintf("%#v", this.FlowLabel) + `}`}, ", ") - return s -} -func (this *RequestBody) GoString() string { - if this == nil { - return "nil" + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x88 } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.RequestBody{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - if this.ValueType != nil { - s = append(s, "ValueType: "+fmt.Sprintf("%#v", this.ValueType)+",\n") + if m.AdvertiseChoice != nil { + { + size := m.AdvertiseChoice.Size() + i -= size + if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *RequestBody_ExactValue) GoString() string { - if this == nil { - return "nil" + if m.CorsPolicy != nil { + { + size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - s := strings.Join([]string{`&http_loadbalancer.RequestBody_ExactValue{` + - `ExactValue:` + fmt.Sprintf("%#v", this.ExactValue) + `}`}, ", ") - return s -} -func (this *RequestBody_RegexValue) GoString() string { - if this == nil { - return "nil" + if len(m.Routes) > 0 { + for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } } - s := strings.Join([]string{`&http_loadbalancer.RequestBody_RegexValue{` + - `RegexValue:` + fmt.Sprintf("%#v", this.RegexValue) + `}`}, ", ") - return s -} -func (this *Query) GoString() string { - if this == nil { - return "nil" + if len(m.DefaultRoutePools) > 0 { + for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.Query{") - s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") - if this.ValueType != nil { - s = append(s, "ValueType: "+fmt.Sprintf("%#v", this.ValueType)+",\n") + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *Query_ExactValue) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.Query_ExactValue{` + - `ExactValue:` + fmt.Sprintf("%#v", this.ExactValue) + `}`}, ", ") - return s + +func (m *GlobalSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Query_RegexValue) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.Query_RegexValue{` + - `RegexValue:` + fmt.Sprintf("%#v", this.RegexValue) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *Query_CheckPresence) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.Query_CheckPresence{` + - `CheckPresence:` + fmt.Sprintf("%#v", this.CheckPresence) + `}`}, ", ") - return s +func (m *GlobalSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeBotDefenseType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.ShapeBotDefenseType{") - s = append(s, "RegionalEndpoint: "+fmt.Sprintf("%#v", this.RegionalEndpoint)+",\n") - if this.Policy != nil { - s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") - } - s = append(s, "Timeout: "+fmt.Sprintf("%#v", this.Timeout)+",\n") - if this.CorsSupportChoice != nil { - s = append(s, "CorsSupportChoice: "+fmt.Sprintf("%#v", this.CorsSupportChoice)+",\n") + +func (m *GlobalSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ShapeBotDefenseType_EnableCorsSupport) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefenseType_EnableCorsSupport{` + - `EnableCorsSupport:` + fmt.Sprintf("%#v", this.EnableCorsSupport) + `}`}, ", ") - return s +func (m *GlobalSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeBotDefenseType_DisableCorsSupport) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublic != nil { + { + size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefenseType_DisableCorsSupport{` + - `DisableCorsSupport:` + fmt.Sprintf("%#v", this.DisableCorsSupport) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *BotDefenseAdvancedType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.BotDefenseAdvancedType{") - if this.Web != nil { - s = append(s, "Web: "+fmt.Sprintf("%#v", this.Web)+",\n") - } - if this.Mobile != nil { - s = append(s, "Mobile: "+fmt.Sprintf("%#v", this.Mobile)+",\n") - } - if this.Policy != nil { - s = append(s, "Policy: "+fmt.Sprintf("%#v", this.Policy)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeBotDefensePolicyType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 13) - s = append(s, "&http_loadbalancer.ShapeBotDefensePolicyType{") - if this.ProtectedAppEndpoints != nil { - s = append(s, "ProtectedAppEndpoints: "+fmt.Sprintf("%#v", this.ProtectedAppEndpoints)+",\n") - } - if this.JavaScriptChoice != nil { - s = append(s, "JavaScriptChoice: "+fmt.Sprintf("%#v", this.JavaScriptChoice)+",\n") - } - s = append(s, "JsDownloadPath: "+fmt.Sprintf("%#v", this.JsDownloadPath)+",\n") - s = append(s, "JavascriptMode: "+fmt.Sprintf("%#v", this.JavascriptMode)+",\n") - if this.MobileSdkChoice != nil { - s = append(s, "MobileSdkChoice: "+fmt.Sprintf("%#v", this.MobileSdkChoice)+",\n") + +func (m *GlobalSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseCustom != nil { + { + size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ShapeBotDefensePolicyType_DisableJsInsert) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_DisableJsInsert{` + - `DisableJsInsert:` + fmt.Sprintf("%#v", this.DisableJsInsert) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeBotDefensePolicyType_JsInsertAllPages) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableWaf != nil { + { + size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_JsInsertAllPages{` + - `JsInsertAllPages:` + fmt.Sprintf("%#v", this.JsInsertAllPages) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_JsInsertAllPagesExcept{` + - `JsInsertAllPagesExcept:` + fmt.Sprintf("%#v", this.JsInsertAllPagesExcept) + `}`}, ", ") - return s +func (m *GlobalSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeBotDefensePolicyType_JsInsertionRules) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DoNotAdvertise != nil { + { + size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_JsInsertionRules{` + - `JsInsertionRules:` + fmt.Sprintf("%#v", this.JsInsertionRules) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ShapeBotDefensePolicyType_DisableMobileSdk) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_DisableMobileSdk{` + - `DisableMobileSdk:` + fmt.Sprintf("%#v", this.DisableMobileSdk) + `}`}, ", ") - return s +func (m *GlobalSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeBotDefensePolicyType_MobileSdkConfig) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublicDefaultVip != nil { + { + size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a } - s := strings.Join([]string{`&http_loadbalancer.ShapeBotDefensePolicyType_MobileSdkConfig{` + - `MobileSdkConfig:` + fmt.Sprintf("%#v", this.MobileSdkConfig) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *MobileTrafficIdentifierType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.MobileTrafficIdentifierType{") - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *MobileSDKConfigType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.MobileSDKConfigType{") - s = append(s, "ReloadHeaderName: "+fmt.Sprintf("%#v", this.ReloadHeaderName)+",\n") - if this.MobileIdentifier != nil { - s = append(s, "MobileIdentifier: "+fmt.Sprintf("%#v", this.MobileIdentifier)+",\n") + +func (m *GlobalSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsChallenge != nil { + { + size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *AppEndpointType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 18) - s = append(s, "&http_loadbalancer.AppEndpointType{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - s = append(s, "HttpMethods: "+fmt.Sprintf("%#v", this.HttpMethods)+",\n") - s = append(s, "Protocol: "+fmt.Sprintf("%#v", this.Protocol)+",\n") - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") - } - if this.DomainMatcherChoice != nil { - s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") - } - if this.AppTrafficTypeChoice != nil { - s = append(s, "AppTrafficTypeChoice: "+fmt.Sprintf("%#v", this.AppTrafficTypeChoice)+",\n") - } - if this.Mitigation != nil { - s = append(s, "Mitigation: "+fmt.Sprintf("%#v", this.Mitigation)+",\n") - } - if this.FlowLabelChoice != nil { - s = append(s, "FlowLabelChoice: "+fmt.Sprintf("%#v", this.FlowLabelChoice)+",\n") - } - if this.GoodbotChoice != nil { - s = append(s, "GoodbotChoice: "+fmt.Sprintf("%#v", this.GoodbotChoice)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AppEndpointType_AnyDomain) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UserIdentification != nil { + { + size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AppEndpointType_Domain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_Domain{` + - `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AppEndpointType_Web) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableRateLimit != nil { + { + size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_Web{` + - `Web:` + fmt.Sprintf("%#v", this.Web) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AppEndpointType_Mobile) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_Mobile{` + - `Mobile:` + fmt.Sprintf("%#v", this.Mobile) + `}`}, ", ") - return s +func (m *GlobalSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AppEndpointType_WebMobile) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RateLimit != nil { + { + size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_WebMobile{` + - `WebMobile:` + fmt.Sprintf("%#v", this.WebMobile) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AppEndpointType_UndefinedFlowLabel) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_UndefinedFlowLabel{` + - `UndefinedFlowLabel:` + fmt.Sprintf("%#v", this.UndefinedFlowLabel) + `}`}, ", ") - return s +func (m *GlobalSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AppEndpointType_FlowLabel) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CaptchaChallenge != nil { + { + size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_FlowLabel{` + - `FlowLabel:` + fmt.Sprintf("%#v", this.FlowLabel) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *AppEndpointType_AllowGoodBots) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_AllowGoodBots{` + - `AllowGoodBots:` + fmt.Sprintf("%#v", this.AllowGoodBots) + `}`}, ", ") - return s +func (m *GlobalSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *AppEndpointType_MitigateGoodBots) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoChallenge != nil { + { + size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.AppEndpointType_MitigateGoodBots{` + - `MitigateGoodBots:` + fmt.Sprintf("%#v", this.MitigateGoodBots) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *WebMobileTrafficType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.WebMobileTrafficType{") - if this.Header != nil { - s = append(s, "Header: "+fmt.Sprintf("%#v", this.Header)+",\n") - } - if this.Headers != nil { - s = append(s, "Headers: "+fmt.Sprintf("%#v", this.Headers)+",\n") - } - s = append(s, "MobileIdentifier: "+fmt.Sprintf("%#v", this.MobileIdentifier)+",\n") - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeJavaScriptInsertType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertType{") - if this.Rules != nil { - s = append(s, "Rules: "+fmt.Sprintf("%#v", this.Rules)+",\n") + +func (m *GlobalSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda } - if this.ExcludeList != nil { - s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ShapeJavaScriptInsertAllWithExceptionsType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType{") - s = append(s, "JavascriptLocation: "+fmt.Sprintf("%#v", this.JavascriptLocation)+",\n") - if this.ExcludeList != nil { - s = append(s, "ExcludeList: "+fmt.Sprintf("%#v", this.ExcludeList)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ShapeJavaScriptInsertAllType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertAllType{") - s = append(s, "JavascriptLocation: "+fmt.Sprintf("%#v", this.JavascriptLocation)+",\n") - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_AutoHostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeJavaScriptInsertionRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&http_loadbalancer.ShapeJavaScriptInsertionRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.DomainMatcherChoice != nil { - s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") - } - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") + +func (m *GlobalSpecType_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AutoHostRewrite != nil { + { + size, err := m.AutoHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xe2 } - s = append(s, "JavascriptLocation: "+fmt.Sprintf("%#v", this.JavascriptLocation)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ShapeJavaScriptInsertionRule_AnyDomain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptInsertionRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s +func (m *GlobalSpecType_HostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeJavaScriptInsertionRule_Domain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptInsertionRule_Domain{` + - `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") - return s + +func (m *GlobalSpecType_HostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i -= len(m.HostRewrite) + copy(dAtA[i:], m.HostRewrite) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostRewrite))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xea + return len(dAtA) - i, nil } -func (this *ShapeJavaScriptExclusionRule) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.ShapeJavaScriptExclusionRule{") - if this.Metadata != nil { - s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") - } - if this.DomainMatcherChoice != nil { - s = append(s, "DomainMatcherChoice: "+fmt.Sprintf("%#v", this.DomainMatcherChoice)+",\n") - } - if this.Path != nil { - s = append(s, "Path: "+fmt.Sprintf("%#v", this.Path)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_DisableHostRewrite) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ShapeJavaScriptExclusionRule_AnyDomain) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableHostRewrite != nil { + { + size, err := m.DisableHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xf2 } - s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptExclusionRule_AnyDomain{` + - `AnyDomain:` + fmt.Sprintf("%#v", this.AnyDomain) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ShapeJavaScriptExclusionRule_Domain) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ShapeJavaScriptExclusionRule_Domain{` + - `Domain:` + fmt.Sprintf("%#v", this.Domain) + `}`}, ", ") - return s +func (m *GlobalSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *IPThreatCategoryListType) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ServicePoliciesFromNamespace != nil { + { + size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xca } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.IPThreatCategoryListType{") - s = append(s, "IpThreatCategories: "+fmt.Sprintf("%#v", this.IpThreatCategories)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *GlobalSpecType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 93) - s = append(s, "&http_loadbalancer.GlobalSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") - } - if this.DownstreamTlsCertificateExpirationTimestamps != nil { - s = append(s, "DownstreamTlsCertificateExpirationTimestamps: "+fmt.Sprintf("%#v", this.DownstreamTlsCertificateExpirationTimestamps)+",\n") - } - if this.AdvertiseChoice != nil { - s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") - } - if this.DefaultRoutePools != nil { - s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") - } - if this.OriginPoolChoice != nil { - s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") - } - if this.HostRewriteParams != nil { - s = append(s, "HostRewriteParams: "+fmt.Sprintf("%#v", this.HostRewriteParams)+",\n") - } - if this.Routes != nil { - s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") - } - if this.OriginServerSubsetRuleList != nil { - s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") - } - if this.CorsPolicy != nil { - s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") - } - if this.WafChoice != nil { - s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") - } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.ChallengeType != nil { - s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") - } - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") - } - if this.UserIdChoice != nil { - s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") - } - if this.RateLimitChoice != nil { - s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") - } - if this.MaliciousUserMitigation != nil { - s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") - } - if this.WafExclusionRules != nil { - s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") - } - if this.DataGuardRules != nil { - s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") - } - if this.BlockedClients != nil { - s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") - } - if this.TrustedClients != nil { - s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") - } - if this.ApiProtectionRules != nil { - s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") - } - if this.DdosMitigationRules != nil { - s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") - } - if this.ServicePolicyChoice != nil { - s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") - } - if this.HashPolicyChoice != nil { - s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") - } - if this.TrustClientIpHeadersChoice != nil { - s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") - } - if this.MlConfigChoice != nil { - s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") - } - if this.DdosDetectionChoice != nil { - s = append(s, "DdosDetectionChoice: "+fmt.Sprintf("%#v", this.DdosDetectionChoice)+",\n") - } - if this.MaliciousUserDetectionChoice != nil { - s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") - } - if this.ApiDiscoveryChoice != nil { - s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") - } - if this.BotDefenseChoice != nil { - s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") - } - if this.ClientSideDefenseChoice != nil { - s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") - } - if this.ApiDefinitionChoice != nil { - s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") - } - if this.IpReputationChoice != nil { - s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") - } - if this.ThreatIntelligenceChoice != nil { - s = append(s, "ThreatIntelligenceChoice: "+fmt.Sprintf("%#v", this.ThreatIntelligenceChoice)+",\n") - } - if this.ViewInternal != nil { - s = append(s, "ViewInternal: "+fmt.Sprintf("%#v", this.ViewInternal)+",\n") - } - s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") - if this.DnsInfo != nil { - s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") - } - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") - s = append(s, "AutoCertState: "+fmt.Sprintf("%#v", this.AutoCertState)+",\n") - if this.AutoCertInfo != nil { - s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") - } - if this.InternetVipInfo != nil { - s = append(s, "InternetVipInfo: "+fmt.Sprintf("%#v", this.InternetVipInfo)+",\n") - } - if this.CsrfPolicy != nil { - s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") - } - if this.GraphqlRules != nil { - s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") - } - if this.ProtectedCookies != nil { - s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") - } - if this.SlowDdosMitigationChoice != nil { - s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") - } - if this.JwtValidation != nil { - s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") - } - if this.L7DdosAutoMitigationAction != nil { - s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") - } - s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_Http) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoServicePolicies != nil { + { + size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s +func (m *GlobalSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_Https) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActiveServicePolicies != nil { + { + size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DoNotAdvertise) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DoNotAdvertise{` + - `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") - return s +func (m *GlobalSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RoundRobin != nil { + { + size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xea } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AdvertiseOnPublicDefaultVip{` + - `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_AdvertiseOnPublic) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AdvertiseOnPublic{` + - `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") - return s +func (m *GlobalSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_AdvertiseCustom) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.LeastActive != nil { + { + size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xf2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AdvertiseCustom{` + - `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DefaultPool) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DefaultPool{` + - `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") - return s +func (m *GlobalSpecType_Random) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_DefaultPoolList) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Random != nil { + { + size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xfa } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DefaultPoolList{` + - `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_AutoHostRewrite) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AutoHostRewrite{` + - `AutoHostRewrite:` + fmt.Sprintf("%#v", this.AutoHostRewrite) + `}`}, ", ") - return s +func (m *GlobalSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_HostRewrite) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SourceIpStickiness != nil { + { + size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_HostRewrite{` + - `HostRewrite:` + fmt.Sprintf("%#v", this.HostRewrite) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableHostRewrite) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableHostRewrite{` + - `DisableHostRewrite:` + fmt.Sprintf("%#v", this.DisableHostRewrite) + `}`}, ", ") - return s +func (m *GlobalSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_DisableWaf) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableWaf{` + - `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") - return s -} -func (this *GlobalSpecType_AppFirewall) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CookieStickiness != nil { + { + size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_AppFirewall{` + - `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_NoChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_NoChallenge{` + - `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") - return s +func (m *GlobalSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_EnableChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RingHash != nil { + { + size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableChallenge{` + - `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_JsChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_JsChallenge{` + - `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") - return s +func (m *GlobalSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_CaptchaChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PolicyBasedChallenge != nil { + { + size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_CaptchaChallenge{` + - `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_PolicyBasedChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_PolicyBasedChallenge{` + - `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") - return s +func (m *GlobalSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_UserIdClientIp) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AppFirewall != nil { + { + size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_UserIdClientIp{` + - `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_UserIdentification) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_UserIdentification{` + - `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") - return s +func (m *GlobalSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_DisableRateLimit) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SingleLbApp != nil { + { + size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableRateLimit{` + - `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_ApiRateLimit) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiRateLimit{` + - `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") - return s +func (m *GlobalSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_RateLimit) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MultiLbApp != nil { + { + size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_RateLimit{` + - `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_ServicePoliciesFromNamespace) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ServicePoliciesFromNamespace{` + - `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_NoServicePolicies) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableBotDefense != nil { + { + size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_NoServicePolicies{` + - `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_ActiveServicePolicies) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ActiveServicePolicies{` + - `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") - return s +func (m *GlobalSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_RoundRobin) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BotDefense != nil { + { + size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_RoundRobin{` + - `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_LeastActive) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_LeastActive{` + - `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") - return s +func (m *GlobalSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_Random) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UserIdClientIp != nil { + { + size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xe2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_Random{` + - `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_SourceIpStickiness) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SourceIpStickiness{` + - `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") - return s +func (m *GlobalSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_CookieStickiness) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiDefinitions != nil { + { + size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xea } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_CookieStickiness{` + - `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_RingHash) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_RingHash{` + - `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_DisableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableIpReputation != nil { + { + size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableTrustClientIpHeaders{` + - `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_EnableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableTrustClientIpHeaders{` + - `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") - return s +func (m *GlobalSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_SingleLbApp) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableIpReputation != nil { + { + size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SingleLbApp{` + - `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_MultiLbApp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_MultiLbApp{` + - `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") - return s +func (m *GlobalSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_EnableDdosDetection) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiSpecification != nil { + { + size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableDdosDetection{` + - `EnableDdosDetection:` + fmt.Sprintf("%#v", this.EnableDdosDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableDdosDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableDdosDetection{` + - `DisableDdosDetection:` + fmt.Sprintf("%#v", this.DisableDdosDetection) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_EnableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDefinition != nil { + { + size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableMaliciousUserDetection{` + - `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableMaliciousUserDetection{` + - `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") - return s +func (m *GlobalSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_EnableApiDiscovery) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiDefinition != nil { + { + size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableApiDiscovery{` + - `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableApiDiscovery) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableApiDiscovery{` + - `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_DisableBotDefense) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableTrustClientIpHeaders != nil { + { + size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableBotDefense{` + - `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") - return s -} -func (this *GlobalSpecType_BotDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_BotDefense{` + - `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") - return s -} -func (this *GlobalSpecType_BotDefenseAdvanced) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_BotDefenseAdvanced{` + - `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableClientSideDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableClientSideDefense{` + - `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") - return s +func (m *GlobalSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_ClientSideDefense) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableTrustClientIpHeaders != nil { + { + size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ClientSideDefense{` + - `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableApiDefinition) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableApiDefinition{` + - `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") - return s +func (m *GlobalSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_ApiDefinition) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableMaliciousUserDetection != nil { + { + size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiDefinition{` + - `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_ApiSpecification) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiSpecification{` + - `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_ApiDefinitions) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMaliciousUserDetection != nil { + { + size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_ApiDefinitions{` + - `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableIpReputation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableIpReputation{` + - `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") - return s +func (m *GlobalSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_EnableIpReputation) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableApiDiscovery != nil { + { + size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableIpReputation{` + - `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_DisableThreatIntelligence) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_DisableThreatIntelligence{` + - `DisableThreatIntelligence:` + fmt.Sprintf("%#v", this.DisableThreatIntelligence) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_EnableThreatIntelligence) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDiscovery != nil { + { + size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_EnableThreatIntelligence{` + - `EnableThreatIntelligence:` + fmt.Sprintf("%#v", this.EnableThreatIntelligence) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_SystemDefaultTimeouts) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SystemDefaultTimeouts{` + - `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_SlowDdosMitigation) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableClientSideDefense != nil { + { + size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_SlowDdosMitigation{` + - `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_L7DdosActionDefault) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionDefault{` + - `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") - return s +func (m *GlobalSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_L7DdosActionBlock) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ClientSideDefense != nil { + { + size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionBlock{` + - `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GlobalSpecType_L7DdosActionJsChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionJsChallenge{` + - `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") - return s +func (m *GlobalSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GlobalSpecType_L7DdosActionNone) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultPool != nil { + { + size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.GlobalSpecType_L7DdosActionNone{` + - `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *JWTValidation) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 12) - s = append(s, "&http_loadbalancer.JWTValidation{") - if this.Target != nil { - s = append(s, "Target: "+fmt.Sprintf("%#v", this.Target)+",\n") - } - if this.TokenLocation != nil { - s = append(s, "TokenLocation: "+fmt.Sprintf("%#v", this.TokenLocation)+",\n") - } - if this.Action != nil { - s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") - } - if this.JwksConfiguration != nil { - s = append(s, "JwksConfiguration: "+fmt.Sprintf("%#v", this.JwksConfiguration)+",\n") - } - if this.ReservedClaims != nil { - s = append(s, "ReservedClaims: "+fmt.Sprintf("%#v", this.ReservedClaims)+",\n") - } - if this.MandatoryClaims != nil { - s = append(s, "MandatoryClaims: "+fmt.Sprintf("%#v", this.MandatoryClaims)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *JWTValidation_AuthServerUri) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultPoolList != nil { + { + size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.JWTValidation_AuthServerUri{` + - `AuthServerUri:` + fmt.Sprintf("%#v", this.AuthServerUri) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *JWTValidation_Jwks) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.JWTValidation_Jwks{` + - `Jwks:` + fmt.Sprintf("%#v", this.Jwks) + `}`}, ", ") - return s +func (m *GlobalSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *JWTValidation_JwksConfig) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SlowDdosMitigation != nil { + { + size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xf2 } - s := strings.Join([]string{`&http_loadbalancer.JWTValidation_JwksConfig{` + - `JwksConfig:` + fmt.Sprintf("%#v", this.JwksConfig) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *MandatoryClaims) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.MandatoryClaims{") - s = append(s, "ClaimNames: "+fmt.Sprintf("%#v", this.ClaimNames)+",\n") - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *JWKS) goString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableChallenge != nil { + { + size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xfa } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.JWKS{") - s = append(s, "Cleartext: "+fmt.Sprintf("%#v", this.Cleartext)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *Target) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 7) - s = append(s, "&http_loadbalancer.Target{") - if this.Target != nil { - s = append(s, "Target: "+fmt.Sprintf("%#v", this.Target)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Target_AllEndpoint) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SystemDefaultTimeouts != nil { + { + size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.Target_AllEndpoint{` + - `AllEndpoint:` + fmt.Sprintf("%#v", this.AllEndpoint) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *Target_ApiGroups) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.Target_ApiGroups{` + - `ApiGroups:` + fmt.Sprintf("%#v", this.ApiGroups) + `}`}, ", ") - return s +func (m *GlobalSpecType_DisableThreatMesh) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *Target_BasePaths) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_DisableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableThreatMesh != nil { + { + size, err := m.DisableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.Target_BasePaths{` + - `BasePaths:` + fmt.Sprintf("%#v", this.BasePaths) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *TokenLocation) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&http_loadbalancer.TokenLocation{") - if this.TokenLocation != nil { - s = append(s, "TokenLocation: "+fmt.Sprintf("%#v", this.TokenLocation)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_EnableThreatMesh) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *TokenLocation_BearerToken) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_EnableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableThreatMesh != nil { + { + size, err := m.EnableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.TokenLocation_BearerToken{` + - `BearerToken:` + fmt.Sprintf("%#v", this.BearerToken) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *TokenLocation_Cookie) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.TokenLocation_Cookie{` + - `Cookie:` + fmt.Sprintf("%#v", this.Cookie) + `}`}, ", ") - return s +func (m *GlobalSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *TokenLocation_Header) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionDefault != nil { + { + size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xfa } - s := strings.Join([]string{`&http_loadbalancer.TokenLocation_Header{` + - `Header:` + fmt.Sprintf("%#v", this.Header) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *TokenLocation_QueryParam) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.TokenLocation_QueryParam{` + - `QueryParam:` + fmt.Sprintf("%#v", this.QueryParam) + `}`}, ", ") - return s +func (m *GlobalSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReservedClaims) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 10) - s = append(s, "&http_loadbalancer.ReservedClaims{") - if this.IssuerValidation != nil { - s = append(s, "IssuerValidation: "+fmt.Sprintf("%#v", this.IssuerValidation)+",\n") - } - if this.AudienceValidation != nil { - s = append(s, "AudienceValidation: "+fmt.Sprintf("%#v", this.AudienceValidation)+",\n") - } - if this.ValidatePeriod != nil { - s = append(s, "ValidatePeriod: "+fmt.Sprintf("%#v", this.ValidatePeriod)+",\n") + +func (m *GlobalSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionBlock != nil { + { + size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x82 } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *ReservedClaims_IssuerDisable) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReservedClaims_IssuerDisable{` + - `IssuerDisable:` + fmt.Sprintf("%#v", this.IssuerDisable) + `}`}, ", ") - return s +func (m *GlobalSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReservedClaims_Issuer) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionJsChallenge != nil { + { + size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.ReservedClaims_Issuer{` + - `Issuer:` + fmt.Sprintf("%#v", this.Issuer) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReservedClaims_AudienceDisable) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReservedClaims_AudienceDisable{` + - `AudienceDisable:` + fmt.Sprintf("%#v", this.AudienceDisable) + `}`}, ", ") - return s +func (m *GlobalSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReservedClaims_Audience) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionNone != nil { + { + size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.ReservedClaims_Audience{` + - `Audience:` + fmt.Sprintf("%#v", this.Audience) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReservedClaims_ValidatePeriodDisable) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReservedClaims_ValidatePeriodDisable{` + - `ValidatePeriodDisable:` + fmt.Sprintf("%#v", this.ValidatePeriodDisable) + `}`}, ", ") - return s +func (m *GlobalSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReservedClaims_ValidatePeriodEnable) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiRateLimit != nil { + { + size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.ReservedClaims_ValidatePeriodEnable{` + - `ValidatePeriodEnable:` + fmt.Sprintf("%#v", this.ValidatePeriodEnable) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *APIGroups) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.APIGroups{") - s = append(s, "ApiGroups: "+fmt.Sprintf("%#v", this.ApiGroups)+",\n") - s = append(s, "}") - return strings.Join(s, "") +func (m *GlobalSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *BasePathsType) GoString() string { - if this == nil { - return "nil" + +func (m *GlobalSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BotDefenseAdvanced != nil { + { + size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x9a } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.BasePathsType{") - s = append(s, "BasePaths: "+fmt.Sprintf("%#v", this.BasePaths)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *Audiences) GoString() string { - if this == nil { - return "nil" +func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := make([]string, 0, 5) - s = append(s, "&http_loadbalancer.Audiences{") - s = append(s, "Audiences: "+fmt.Sprintf("%#v", this.Audiences)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return dAtA[:n], nil } -func (this *CreateSpecType) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.BotDefenseChoice != nil { + { + size := m.BotDefenseChoice.Size() + i -= size + if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s := make([]string, 0, 81) - s = append(s, "&http_loadbalancer.CreateSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + if m.RateLimitChoice != nil { + { + size := m.RateLimitChoice.Size() + i -= size + if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.AdvertiseChoice != nil { - s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") + if m.L7DdosAutoMitigationAction != nil { + { + size := m.L7DdosAutoMitigationAction.Size() + i -= size + if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DefaultRoutePools != nil { - s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") + if m.ThreatMeshChoice != nil { + { + size := m.ThreatMeshChoice.Size() + i -= size + if _, err := m.ThreatMeshChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.OriginPoolChoice != nil { - s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") + if m.OriginServerSubsetRuleList != nil { + { + size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xaa } - if this.OriginServerSubsetRuleList != nil { - s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") + if m.JwtValidation != nil { + { + size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0x92 } - if this.Routes != nil { - s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") + if m.SlowDdosMitigationChoice != nil { + { + size := m.SlowDdosMitigationChoice.Size() + i -= size + if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.CorsPolicy != nil { - s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") + if m.ChallengeType != nil { + { + size := m.ChallengeType.Size() + i -= size + if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.WafChoice != nil { - s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") + if len(m.ProtectedCookies) > 0 { + for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xea + } } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.ChallengeType != nil { - s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") + if len(m.GraphqlRules) > 0 { + for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xe2 + } } - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + if m.CsrfPolicy != nil { + { + size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xda } - if this.UserIdChoice != nil { - s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") + if m.OriginPoolChoice != nil { + { + size := m.OriginPoolChoice.Size() + i -= size + if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.RateLimitChoice != nil { - s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") + if m.ClientSideDefenseChoice != nil { + { + size := m.ClientSideDefenseChoice.Size() + i -= size + if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MaliciousUserMitigation != nil { - s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") + if m.ApiDiscoveryChoice != nil { + { + size := m.ApiDiscoveryChoice.Size() + i -= size + if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.WafExclusionRules != nil { - s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") + if m.MaliciousUserDetectionChoice != nil { + { + size := m.MaliciousUserDetectionChoice.Size() + i -= size + if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DataGuardRules != nil { - s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") + if m.TrustClientIpHeadersChoice != nil { + { + size := m.TrustClientIpHeadersChoice.Size() + i -= size + if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.BlockedClients != nil { - s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") + if m.ApiProtectionRules != nil { + { + size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xc2 } - if this.TrustedClients != nil { - s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") + if m.ApiDefinitionChoice != nil { + { + size := m.ApiDefinitionChoice.Size() + i -= size + if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.ApiProtectionRules != nil { - s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") + if m.IpReputationChoice != nil { + { + size := m.IpReputationChoice.Size() + i -= size + if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DdosMitigationRules != nil { - s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") + if len(m.DataGuardRules) > 0 { + for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xfa + } } - if this.ServicePolicyChoice != nil { - s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") + if m.UserIdChoice != nil { + { + size := m.UserIdChoice.Size() + i -= size + if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.HashPolicyChoice != nil { - s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") + if m.MlConfigChoice != nil { + { + size := m.MlConfigChoice.Size() + i -= size + if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.TrustClientIpHeadersChoice != nil { - s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") + if m.WafChoice != nil { + { + size := m.WafChoice.Size() + i -= size + if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MlConfigChoice != nil { - s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") + if m.HashPolicyChoice != nil { + { + size := m.HashPolicyChoice.Size() + i -= size + if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DdosDetectionChoice != nil { - s = append(s, "DdosDetectionChoice: "+fmt.Sprintf("%#v", this.DdosDetectionChoice)+",\n") + if m.ServicePolicyChoice != nil { + { + size := m.ServicePolicyChoice.Size() + i -= size + if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MaliciousUserDetectionChoice != nil { - s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") + if len(m.DdosMitigationRules) > 0 { + for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa + } } - if this.ApiDiscoveryChoice != nil { - s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") + if len(m.TrustedClients) > 0 { + for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x9a + } } - if this.BotDefenseChoice != nil { - s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") + if len(m.BlockedClients) > 0 { + for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x92 + } } - if this.ApiDefinitionChoice != nil { - s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") + if len(m.WafExclusionRules) > 0 { + for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x8a + } } - if this.IpReputationChoice != nil { - s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") + if m.MaliciousUserMitigation != nil { + { + size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x82 } - if this.ClientSideDefenseChoice != nil { - s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.CsrfPolicy != nil { - s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - if this.GraphqlRules != nil { - s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x88 } - if this.ProtectedCookies != nil { - s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") + if m.AdvertiseChoice != nil { + { + size := m.AdvertiseChoice.Size() + i -= size + if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.SlowDdosMitigationChoice != nil { - s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") + if m.CorsPolicy != nil { + { + size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - if this.JwtValidation != nil { - s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") + if len(m.Routes) > 0 { + for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } } - if this.ThreatIntelligenceChoice != nil { - s = append(s, "ThreatIntelligenceChoice: "+fmt.Sprintf("%#v", this.ThreatIntelligenceChoice)+",\n") + if len(m.DefaultRoutePools) > 0 { + for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } } - if this.L7DdosAutoMitigationAction != nil { - s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *CreateSpecType_Http) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s + +func (m *CreateSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_Https) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s +func (m *CreateSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DoNotAdvertise) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DoNotAdvertise{` + - `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_AdvertiseOnPublicDefaultVip) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AdvertiseOnPublicDefaultVip{` + - `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") - return s +func (m *CreateSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_AdvertiseOnPublic) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublic != nil { + { + size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AdvertiseOnPublic{` + - `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_AdvertiseCustom) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AdvertiseCustom{` + - `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") - return s +func (m *CreateSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DefaultPool) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseCustom != nil { + { + size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DefaultPool{` + - `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_DefaultPoolList) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DefaultPoolList{` + - `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableWaf) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableWaf != nil { + { + size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableWaf{` + - `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_AppFirewall) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_AppFirewall{` + - `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") - return s +func (m *CreateSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_NoChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DoNotAdvertise != nil { + { + size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_NoChallenge{` + - `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_EnableChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableChallenge{` + - `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") - return s +func (m *CreateSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_JsChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublicDefaultVip != nil { + { + size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_JsChallenge{` + - `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_CaptchaChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_CaptchaChallenge{` + - `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") - return s +func (m *CreateSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_PolicyBasedChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsChallenge != nil { + { + size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_PolicyBasedChallenge{` + - `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_UserIdClientIp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_UserIdClientIp{` + - `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") - return s +func (m *CreateSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_UserIdentification) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UserIdentification != nil { + { + size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_UserIdentification{` + - `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_DisableRateLimit) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableRateLimit{` + - `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_ApiRateLimit) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableRateLimit != nil { + { + size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiRateLimit{` + - `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_RateLimit) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_RateLimit{` + - `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") - return s +func (m *CreateSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_ServicePoliciesFromNamespace) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RateLimit != nil { + { + size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ServicePoliciesFromNamespace{` + - `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_NoServicePolicies) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_NoServicePolicies{` + - `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") - return s +func (m *CreateSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_ActiveServicePolicies) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CaptchaChallenge != nil { + { + size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ActiveServicePolicies{` + - `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_RoundRobin) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_RoundRobin{` + - `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") - return s +func (m *CreateSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_LeastActive) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoChallenge != nil { + { + size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_LeastActive{` + - `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_Random) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_Random{` + - `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") - return s +func (m *CreateSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_SourceIpStickiness) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SourceIpStickiness{` + - `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_CookieStickiness) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_CookieStickiness{` + - `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") - return s +func (m *CreateSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_RingHash) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ServicePoliciesFromNamespace != nil { + { + size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_RingHash{` + - `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_DisableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableTrustClientIpHeaders{` + - `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") - return s +func (m *CreateSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_EnableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoServicePolicies != nil { + { + size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableTrustClientIpHeaders{` + - `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_SingleLbApp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SingleLbApp{` + - `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") - return s +func (m *CreateSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_MultiLbApp) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActiveServicePolicies != nil { + { + size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_MultiLbApp{` + - `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_EnableDdosDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableDdosDetection{` + - `EnableDdosDetection:` + fmt.Sprintf("%#v", this.EnableDdosDetection) + `}`}, ", ") - return s +func (m *CreateSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableDdosDetection) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RoundRobin != nil { + { + size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xea } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableDdosDetection{` + - `DisableDdosDetection:` + fmt.Sprintf("%#v", this.DisableDdosDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_EnableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableMaliciousUserDetection{` + - `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") - return s +func (m *CreateSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.LeastActive != nil { + { + size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xf2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableMaliciousUserDetection{` + - `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_EnableApiDiscovery) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableApiDiscovery{` + - `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") - return s +func (m *CreateSpecType_Random) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableApiDiscovery) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Random != nil { + { + size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xfa } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableApiDiscovery{` + - `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_DisableBotDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableBotDefense{` + - `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") - return s +func (m *CreateSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_BotDefense) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SourceIpStickiness != nil { + { + size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_BotDefense{` + - `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_BotDefenseAdvanced) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_BotDefenseAdvanced{` + - `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") - return s +func (m *CreateSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableApiDefinition) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CookieStickiness != nil { + { + size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableApiDefinition{` + - `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_ApiDefinition) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiDefinition{` + - `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") - return s +func (m *CreateSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_ApiSpecification) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RingHash != nil { + { + size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiSpecification{` + - `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_ApiDefinitions) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ApiDefinitions{` + - `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") - return s +func (m *CreateSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableIpReputation) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PolicyBasedChallenge != nil { + { + size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableIpReputation{` + - `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_EnableIpReputation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableIpReputation{` + - `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") - return s +func (m *CreateSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableClientSideDefense) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AppFirewall != nil { + { + size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableClientSideDefense{` + - `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_ClientSideDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_ClientSideDefense{` + - `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") - return s +func (m *CreateSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_SystemDefaultTimeouts) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SingleLbApp != nil { + { + size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SystemDefaultTimeouts{` + - `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_SlowDdosMitigation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_SlowDdosMitigation{` + - `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") - return s +func (m *CreateSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_DisableThreatIntelligence) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MultiLbApp != nil { + { + size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_DisableThreatIntelligence{` + - `DisableThreatIntelligence:` + fmt.Sprintf("%#v", this.DisableThreatIntelligence) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_EnableThreatIntelligence) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_EnableThreatIntelligence{` + - `EnableThreatIntelligence:` + fmt.Sprintf("%#v", this.EnableThreatIntelligence) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_L7DdosActionDefault) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableBotDefense != nil { + { + size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionDefault{` + - `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_L7DdosActionBlock) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionBlock{` + - `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") - return s +func (m *CreateSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *CreateSpecType_L7DdosActionJsChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BotDefense != nil { + { + size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionJsChallenge{` + - `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *CreateSpecType_L7DdosActionNone) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.CreateSpecType_L7DdosActionNone{` + - `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") - return s -} -func (this *ReplaceSpecType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 81) - s = append(s, "&http_loadbalancer.ReplaceSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") - } - if this.AdvertiseChoice != nil { - s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") - } - if this.DefaultRoutePools != nil { - s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") - } - if this.OriginPoolChoice != nil { - s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") - } - if this.OriginServerSubsetRuleList != nil { - s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") - } - if this.Routes != nil { - s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") - } - if this.CorsPolicy != nil { - s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") - } - if this.WafChoice != nil { - s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") - } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.ChallengeType != nil { - s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") - } - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") - } - if this.UserIdChoice != nil { - s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") - } - if this.RateLimitChoice != nil { - s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") - } - if this.MaliciousUserMitigation != nil { - s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") - } - if this.WafExclusionRules != nil { - s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") - } - if this.DataGuardRules != nil { - s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") - } - if this.BlockedClients != nil { - s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") - } - if this.TrustedClients != nil { - s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") - } - if this.ApiProtectionRules != nil { - s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") - } - if this.DdosMitigationRules != nil { - s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") - } - if this.ServicePolicyChoice != nil { - s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") - } - if this.HashPolicyChoice != nil { - s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") - } - if this.TrustClientIpHeadersChoice != nil { - s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") - } - if this.MlConfigChoice != nil { - s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") - } - if this.DdosDetectionChoice != nil { - s = append(s, "DdosDetectionChoice: "+fmt.Sprintf("%#v", this.DdosDetectionChoice)+",\n") - } - if this.MaliciousUserDetectionChoice != nil { - s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") - } - if this.ApiDiscoveryChoice != nil { - s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") - } - if this.BotDefenseChoice != nil { - s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") - } - if this.ApiDefinitionChoice != nil { - s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") - } - if this.IpReputationChoice != nil { - s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") - } - if this.ClientSideDefenseChoice != nil { - s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") - } - if this.CsrfPolicy != nil { - s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") - } - if this.GraphqlRules != nil { - s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") - } - if this.ProtectedCookies != nil { - s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") - } - if this.SlowDdosMitigationChoice != nil { - s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") - } - if this.JwtValidation != nil { - s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") - } - if this.ThreatIntelligenceChoice != nil { - s = append(s, "ThreatIntelligenceChoice: "+fmt.Sprintf("%#v", this.ThreatIntelligenceChoice)+",\n") - } - if this.L7DdosAutoMitigationAction != nil { - s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") +func (m *CreateSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_Http) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UserIdClientIp != nil { + { + size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xe2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s +func (m *CreateSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_Https) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiDefinitions != nil { + { + size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xea } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DoNotAdvertise) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DoNotAdvertise{` + - `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_AdvertiseOnPublicDefaultVip) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableIpReputation != nil { + { + size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AdvertiseOnPublicDefaultVip{` + - `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_AdvertiseOnPublic) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AdvertiseOnPublic{` + - `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") - return s +func (m *CreateSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_AdvertiseCustom) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableIpReputation != nil { + { + size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AdvertiseCustom{` + - `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DefaultPool) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DefaultPool{` + - `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") - return s +func (m *CreateSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_DefaultPoolList) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiSpecification != nil { + { + size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DefaultPoolList{` + - `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableWaf) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableWaf{` + - `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_AppFirewall) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDefinition != nil { + { + size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_AppFirewall{` + - `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_NoChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_NoChallenge{` + - `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") - return s +func (m *CreateSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_EnableChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiDefinition != nil { + { + size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableChallenge{` + - `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_JsChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_JsChallenge{` + - `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_CaptchaChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableTrustClientIpHeaders != nil { + { + size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_CaptchaChallenge{` + - `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_PolicyBasedChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_PolicyBasedChallenge{` + - `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") - return s +func (m *CreateSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_UserIdClientIp) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableTrustClientIpHeaders != nil { + { + size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_UserIdClientIp{` + - `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_UserIdentification) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_UserIdentification{` + - `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") - return s +func (m *CreateSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_DisableRateLimit) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableMaliciousUserDetection != nil { + { + size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableRateLimit{` + - `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_ApiRateLimit) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiRateLimit{` + - `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_RateLimit) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableMaliciousUserDetection != nil { + { + size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_RateLimit{` + - `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_ServicePoliciesFromNamespace) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ServicePoliciesFromNamespace{` + - `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") - return s +func (m *CreateSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_NoServicePolicies) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableApiDiscovery != nil { + { + size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_NoServicePolicies{` + - `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_ActiveServicePolicies) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ActiveServicePolicies{` + - `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_RoundRobin) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDiscovery != nil { + { + size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_RoundRobin{` + - `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_LeastActive) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_LeastActive{` + - `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_Random) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableClientSideDefense != nil { + { + size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_Random{` + - `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_SourceIpStickiness) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SourceIpStickiness{` + - `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") - return s +func (m *CreateSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_CookieStickiness) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ClientSideDefense != nil { + { + size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_CookieStickiness{` + - `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_RingHash) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_RingHash{` + - `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") - return s +func (m *CreateSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_DisableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultPool != nil { + { + size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableTrustClientIpHeaders{` + - `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_EnableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableTrustClientIpHeaders{` + - `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") - return s +func (m *CreateSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_SingleLbApp) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultPoolList != nil { + { + size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SingleLbApp{` + - `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_MultiLbApp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_MultiLbApp{` + - `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") - return s +func (m *CreateSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_EnableDdosDetection) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SlowDdosMitigation != nil { + { + size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xf2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableDdosDetection{` + - `EnableDdosDetection:` + fmt.Sprintf("%#v", this.EnableDdosDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableDdosDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableDdosDetection{` + - `DisableDdosDetection:` + fmt.Sprintf("%#v", this.DisableDdosDetection) + `}`}, ", ") - return s +func (m *CreateSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_EnableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableChallenge != nil { + { + size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xfa } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableMaliciousUserDetection{` + - `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableMaliciousUserDetection{` + - `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") - return s +func (m *CreateSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_EnableApiDiscovery) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SystemDefaultTimeouts != nil { + { + size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableApiDiscovery{` + - `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableApiDiscovery) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableApiDiscovery{` + - `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") - return s +func (m *CreateSpecType_DisableThreatMesh) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_DisableBotDefense) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_DisableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableThreatMesh != nil { + { + size, err := m.DisableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableBotDefense{` + - `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_BotDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_BotDefense{` + - `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") - return s +func (m *CreateSpecType_EnableThreatMesh) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_BotDefenseAdvanced) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_EnableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableThreatMesh != nil { + { + size, err := m.EnableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_BotDefenseAdvanced{` + - `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableApiDefinition) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableApiDefinition{` + - `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") - return s +func (m *CreateSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_ApiDefinition) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionDefault != nil { + { + size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xfa } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiDefinition{` + - `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_ApiSpecification) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiSpecification{` + - `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") - return s +func (m *CreateSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_ApiDefinitions) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionBlock != nil { + { + size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x82 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ApiDefinitions{` + - `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableIpReputation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableIpReputation{` + - `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") - return s +func (m *CreateSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_EnableIpReputation) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionJsChallenge != nil { + { + size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x8a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableIpReputation{` + - `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableClientSideDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableClientSideDefense{` + - `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") - return s +func (m *CreateSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_ClientSideDefense) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionNone != nil { + { + size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_ClientSideDefense{` + - `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_SystemDefaultTimeouts) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SystemDefaultTimeouts{` + - `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") - return s +func (m *CreateSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_SlowDdosMitigation) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiRateLimit != nil { + { + size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_SlowDdosMitigation{` + - `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_DisableThreatIntelligence) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_DisableThreatIntelligence{` + - `DisableThreatIntelligence:` + fmt.Sprintf("%#v", this.DisableThreatIntelligence) + `}`}, ", ") - return s +func (m *CreateSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *ReplaceSpecType_EnableThreatIntelligence) GoString() string { - if this == nil { - return "nil" + +func (m *CreateSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.BotDefenseAdvanced != nil { + { + size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x9a } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_EnableThreatIntelligence{` + - `EnableThreatIntelligence:` + fmt.Sprintf("%#v", this.EnableThreatIntelligence) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *ReplaceSpecType_L7DdosActionDefault) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionDefault{` + - `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") - return s -} -func (this *ReplaceSpecType_L7DdosActionBlock) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionBlock{` + - `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") - return s -} -func (this *ReplaceSpecType_L7DdosActionJsChallenge) GoString() string { - if this == nil { - return "nil" +func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionJsChallenge{` + - `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") - return s + return dAtA[:n], nil } -func (this *ReplaceSpecType_L7DdosActionNone) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.ReplaceSpecType_L7DdosActionNone{` + - `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") - return s + +func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 88) - s = append(s, "&http_loadbalancer.GetSpecType{") - s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") - if this.LoadbalancerType != nil { - s = append(s, "LoadbalancerType: "+fmt.Sprintf("%#v", this.LoadbalancerType)+",\n") + +func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.BotDefenseChoice != nil { + { + size := m.BotDefenseChoice.Size() + i -= size + if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DownstreamTlsCertificateExpirationTimestamps != nil { - s = append(s, "DownstreamTlsCertificateExpirationTimestamps: "+fmt.Sprintf("%#v", this.DownstreamTlsCertificateExpirationTimestamps)+",\n") + if m.RateLimitChoice != nil { + { + size := m.RateLimitChoice.Size() + i -= size + if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.AdvertiseChoice != nil { - s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") + if m.L7DdosAutoMitigationAction != nil { + { + size := m.L7DdosAutoMitigationAction.Size() + i -= size + if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DefaultRoutePools != nil { - s = append(s, "DefaultRoutePools: "+fmt.Sprintf("%#v", this.DefaultRoutePools)+",\n") + if m.ThreatMeshChoice != nil { + { + size := m.ThreatMeshChoice.Size() + i -= size + if _, err := m.ThreatMeshChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.OriginPoolChoice != nil { - s = append(s, "OriginPoolChoice: "+fmt.Sprintf("%#v", this.OriginPoolChoice)+",\n") + if m.OriginServerSubsetRuleList != nil { + { + size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xaa } - if this.OriginServerSubsetRuleList != nil { - s = append(s, "OriginServerSubsetRuleList: "+fmt.Sprintf("%#v", this.OriginServerSubsetRuleList)+",\n") + if m.JwtValidation != nil { + { + size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0x92 } - if this.Routes != nil { - s = append(s, "Routes: "+fmt.Sprintf("%#v", this.Routes)+",\n") + if m.SlowDdosMitigationChoice != nil { + { + size := m.SlowDdosMitigationChoice.Size() + i -= size + if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.CorsPolicy != nil { - s = append(s, "CorsPolicy: "+fmt.Sprintf("%#v", this.CorsPolicy)+",\n") + if m.ChallengeType != nil { + { + size := m.ChallengeType.Size() + i -= size + if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.WafChoice != nil { - s = append(s, "WafChoice: "+fmt.Sprintf("%#v", this.WafChoice)+",\n") + if len(m.ProtectedCookies) > 0 { + for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xea + } } - s = append(s, "AddLocation: "+fmt.Sprintf("%#v", this.AddLocation)+",\n") - if this.ChallengeType != nil { - s = append(s, "ChallengeType: "+fmt.Sprintf("%#v", this.ChallengeType)+",\n") + if len(m.GraphqlRules) > 0 { + for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xe2 + } } - if this.MoreOption != nil { - s = append(s, "MoreOption: "+fmt.Sprintf("%#v", this.MoreOption)+",\n") + if m.CsrfPolicy != nil { + { + size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xda } - if this.UserIdChoice != nil { - s = append(s, "UserIdChoice: "+fmt.Sprintf("%#v", this.UserIdChoice)+",\n") + if m.OriginPoolChoice != nil { + { + size := m.OriginPoolChoice.Size() + i -= size + if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.RateLimitChoice != nil { - s = append(s, "RateLimitChoice: "+fmt.Sprintf("%#v", this.RateLimitChoice)+",\n") + if m.ClientSideDefenseChoice != nil { + { + size := m.ClientSideDefenseChoice.Size() + i -= size + if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MaliciousUserMitigation != nil { - s = append(s, "MaliciousUserMitigation: "+fmt.Sprintf("%#v", this.MaliciousUserMitigation)+",\n") + if m.ApiDiscoveryChoice != nil { + { + size := m.ApiDiscoveryChoice.Size() + i -= size + if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.WafExclusionRules != nil { - s = append(s, "WafExclusionRules: "+fmt.Sprintf("%#v", this.WafExclusionRules)+",\n") + if m.MaliciousUserDetectionChoice != nil { + { + size := m.MaliciousUserDetectionChoice.Size() + i -= size + if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DataGuardRules != nil { - s = append(s, "DataGuardRules: "+fmt.Sprintf("%#v", this.DataGuardRules)+",\n") + if m.TrustClientIpHeadersChoice != nil { + { + size := m.TrustClientIpHeadersChoice.Size() + i -= size + if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.BlockedClients != nil { - s = append(s, "BlockedClients: "+fmt.Sprintf("%#v", this.BlockedClients)+",\n") + if m.ApiProtectionRules != nil { + { + size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xc2 } - if this.TrustedClients != nil { - s = append(s, "TrustedClients: "+fmt.Sprintf("%#v", this.TrustedClients)+",\n") + if m.ApiDefinitionChoice != nil { + { + size := m.ApiDefinitionChoice.Size() + i -= size + if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.ApiProtectionRules != nil { - s = append(s, "ApiProtectionRules: "+fmt.Sprintf("%#v", this.ApiProtectionRules)+",\n") + if m.IpReputationChoice != nil { + { + size := m.IpReputationChoice.Size() + i -= size + if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DdosMitigationRules != nil { - s = append(s, "DdosMitigationRules: "+fmt.Sprintf("%#v", this.DdosMitigationRules)+",\n") + if len(m.DataGuardRules) > 0 { + for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xfa + } } - if this.ServicePolicyChoice != nil { - s = append(s, "ServicePolicyChoice: "+fmt.Sprintf("%#v", this.ServicePolicyChoice)+",\n") + if m.UserIdChoice != nil { + { + size := m.UserIdChoice.Size() + i -= size + if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.HashPolicyChoice != nil { - s = append(s, "HashPolicyChoice: "+fmt.Sprintf("%#v", this.HashPolicyChoice)+",\n") + if m.MlConfigChoice != nil { + { + size := m.MlConfigChoice.Size() + i -= size + if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.TrustClientIpHeadersChoice != nil { - s = append(s, "TrustClientIpHeadersChoice: "+fmt.Sprintf("%#v", this.TrustClientIpHeadersChoice)+",\n") + if m.WafChoice != nil { + { + size := m.WafChoice.Size() + i -= size + if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MlConfigChoice != nil { - s = append(s, "MlConfigChoice: "+fmt.Sprintf("%#v", this.MlConfigChoice)+",\n") + if m.HashPolicyChoice != nil { + { + size := m.HashPolicyChoice.Size() + i -= size + if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.DdosDetectionChoice != nil { - s = append(s, "DdosDetectionChoice: "+fmt.Sprintf("%#v", this.DdosDetectionChoice)+",\n") + if m.ServicePolicyChoice != nil { + { + size := m.ServicePolicyChoice.Size() + i -= size + if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.MaliciousUserDetectionChoice != nil { - s = append(s, "MaliciousUserDetectionChoice: "+fmt.Sprintf("%#v", this.MaliciousUserDetectionChoice)+",\n") + if len(m.DdosMitigationRules) > 0 { + for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa + } } - if this.ApiDiscoveryChoice != nil { - s = append(s, "ApiDiscoveryChoice: "+fmt.Sprintf("%#v", this.ApiDiscoveryChoice)+",\n") + if len(m.TrustedClients) > 0 { + for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x9a + } } - if this.BotDefenseChoice != nil { - s = append(s, "BotDefenseChoice: "+fmt.Sprintf("%#v", this.BotDefenseChoice)+",\n") + if len(m.BlockedClients) > 0 { + for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x92 + } } - if this.ApiDefinitionChoice != nil { - s = append(s, "ApiDefinitionChoice: "+fmt.Sprintf("%#v", this.ApiDefinitionChoice)+",\n") + if len(m.WafExclusionRules) > 0 { + for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x8a + } } - if this.IpReputationChoice != nil { - s = append(s, "IpReputationChoice: "+fmt.Sprintf("%#v", this.IpReputationChoice)+",\n") + if m.MaliciousUserMitigation != nil { + { + size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x82 } - if this.ClientSideDefenseChoice != nil { - s = append(s, "ClientSideDefenseChoice: "+fmt.Sprintf("%#v", this.ClientSideDefenseChoice)+",\n") + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - if this.CsrfPolicy != nil { - s = append(s, "CsrfPolicy: "+fmt.Sprintf("%#v", this.CsrfPolicy)+",\n") + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - if this.GraphqlRules != nil { - s = append(s, "GraphqlRules: "+fmt.Sprintf("%#v", this.GraphqlRules)+",\n") + if m.AddLocation { + i-- + if m.AddLocation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x88 } - if this.ProtectedCookies != nil { - s = append(s, "ProtectedCookies: "+fmt.Sprintf("%#v", this.ProtectedCookies)+",\n") + if m.AdvertiseChoice != nil { + { + size := m.AdvertiseChoice.Size() + i -= size + if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } } - s = append(s, "HostName: "+fmt.Sprintf("%#v", this.HostName)+",\n") - if this.DnsInfo != nil { - s = append(s, "DnsInfo: "+fmt.Sprintf("%#v", this.DnsInfo)+",\n") + if m.CorsPolicy != nil { + { + size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 } - s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") - if this.AutoCertInfo != nil { - s = append(s, "AutoCertInfo: "+fmt.Sprintf("%#v", this.AutoCertInfo)+",\n") + if len(m.Routes) > 0 { + for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } } - if this.InternetVipInfo != nil { - s = append(s, "InternetVipInfo: "+fmt.Sprintf("%#v", this.InternetVipInfo)+",\n") + if len(m.DefaultRoutePools) > 0 { + for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } } - if this.SlowDdosMitigationChoice != nil { - s = append(s, "SlowDdosMitigationChoice: "+fmt.Sprintf("%#v", this.SlowDdosMitigationChoice)+",\n") - } - if this.JwtValidation != nil { - s = append(s, "JwtValidation: "+fmt.Sprintf("%#v", this.JwtValidation)+",\n") - } - if this.ThreatIntelligenceChoice != nil { - s = append(s, "ThreatIntelligenceChoice: "+fmt.Sprintf("%#v", this.ThreatIntelligenceChoice)+",\n") - } - if this.L7DdosAutoMitigationAction != nil { - s = append(s, "L7DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.L7DdosAutoMitigationAction)+",\n") + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } - s = append(s, "CertState: "+fmt.Sprintf("%#v", this.CertState)+",\n") - s = append(s, "}") - return strings.Join(s, "") + return len(dAtA) - i, nil } -func (this *GetSpecType_Http) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_Http{` + - `Http:` + fmt.Sprintf("%#v", this.Http) + `}`}, ", ") - return s + +func (m *ReplaceSpecType_Http) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_HttpsAutoCert) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Http != nil { + { + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_HttpsAutoCert{` + - `HttpsAutoCert:` + fmt.Sprintf("%#v", this.HttpsAutoCert) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_Https) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_Https{` + - `Https:` + fmt.Sprintf("%#v", this.Https) + `}`}, ", ") - return s +func (m *ReplaceSpecType_Https) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DoNotAdvertise) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Https != nil { + { + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DoNotAdvertise{` + - `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_AdvertiseOnPublicDefaultVip) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AdvertiseOnPublicDefaultVip{` + - `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") - return s +func (m *ReplaceSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_AdvertiseOnPublic) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublic != nil { + { + size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AdvertiseOnPublic{` + - `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_AdvertiseCustom) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AdvertiseCustom{` + - `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") - return s +func (m *ReplaceSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DefaultPool) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseCustom != nil { + { + size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DefaultPool{` + - `DefaultPool:` + fmt.Sprintf("%#v", this.DefaultPool) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_DefaultPoolList) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DefaultPoolList{` + - `DefaultPoolList:` + fmt.Sprintf("%#v", this.DefaultPoolList) + `}`}, ", ") - return s +func (m *ReplaceSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_DisableWaf) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableWaf != nil { + { + size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5a } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableWaf{` + - `DisableWaf:` + fmt.Sprintf("%#v", this.DisableWaf) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_AppFirewall) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_AppFirewall{` + - `AppFirewall:` + fmt.Sprintf("%#v", this.AppFirewall) + `}`}, ", ") - return s +func (m *ReplaceSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_NoChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DoNotAdvertise != nil { + { + size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_NoChallenge{` + - `NoChallenge:` + fmt.Sprintf("%#v", this.NoChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_EnableChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableChallenge{` + - `EnableChallenge:` + fmt.Sprintf("%#v", this.EnableChallenge) + `}`}, ", ") - return s +func (m *ReplaceSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_JsChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublicDefaultVip != nil { + { + size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_JsChallenge{` + - `JsChallenge:` + fmt.Sprintf("%#v", this.JsChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_CaptchaChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_CaptchaChallenge{` + - `CaptchaChallenge:` + fmt.Sprintf("%#v", this.CaptchaChallenge) + `}`}, ", ") - return s +func (m *ReplaceSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_PolicyBasedChallenge) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.JsChallenge != nil { + { + size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x92 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_PolicyBasedChallenge{` + - `PolicyBasedChallenge:` + fmt.Sprintf("%#v", this.PolicyBasedChallenge) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_UserIdClientIp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_UserIdClientIp{` + - `UserIdClientIp:` + fmt.Sprintf("%#v", this.UserIdClientIp) + `}`}, ", ") - return s +func (m *ReplaceSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_UserIdentification) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UserIdentification != nil { + { + size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xa2 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_UserIdentification{` + - `UserIdentification:` + fmt.Sprintf("%#v", this.UserIdentification) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_DisableRateLimit) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableRateLimit{` + - `DisableRateLimit:` + fmt.Sprintf("%#v", this.DisableRateLimit) + `}`}, ", ") - return s +func (m *ReplaceSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_ApiRateLimit) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableRateLimit != nil { + { + size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiRateLimit{` + - `ApiRateLimit:` + fmt.Sprintf("%#v", this.ApiRateLimit) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_RateLimit) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_RateLimit{` + - `RateLimit:` + fmt.Sprintf("%#v", this.RateLimit) + `}`}, ", ") - return s +func (m *ReplaceSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_ServicePoliciesFromNamespace) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RateLimit != nil { + { + size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ServicePoliciesFromNamespace{` + - `ServicePoliciesFromNamespace:` + fmt.Sprintf("%#v", this.ServicePoliciesFromNamespace) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_NoServicePolicies) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_NoServicePolicies{` + - `NoServicePolicies:` + fmt.Sprintf("%#v", this.NoServicePolicies) + `}`}, ", ") - return s +func (m *ReplaceSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_ActiveServicePolicies) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CaptchaChallenge != nil { + { + size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xc2 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ActiveServicePolicies{` + - `ActiveServicePolicies:` + fmt.Sprintf("%#v", this.ActiveServicePolicies) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_RoundRobin) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_RoundRobin{` + - `RoundRobin:` + fmt.Sprintf("%#v", this.RoundRobin) + `}`}, ", ") - return s +func (m *ReplaceSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_LeastActive) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoChallenge != nil { + { + size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xd2 } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_LeastActive{` + - `LeastActive:` + fmt.Sprintf("%#v", this.LeastActive) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_Random) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_Random{` + - `Random:` + fmt.Sprintf("%#v", this.Random) + `}`}, ", ") - return s +func (m *ReplaceSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_SourceIpStickiness) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.HttpsAutoCert != nil { + { + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SourceIpStickiness{` + - `SourceIpStickiness:` + fmt.Sprintf("%#v", this.SourceIpStickiness) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_CookieStickiness) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_CookieStickiness{` + - `CookieStickiness:` + fmt.Sprintf("%#v", this.CookieStickiness) + `}`}, ", ") - return s +func (m *ReplaceSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (this *GetSpecType_RingHash) GoString() string { - if this == nil { - return "nil" + +func (m *ReplaceSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ServicePoliciesFromNamespace != nil { + { + size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xca } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_RingHash{` + - `RingHash:` + fmt.Sprintf("%#v", this.RingHash) + `}`}, ", ") - return s + return len(dAtA) - i, nil } -func (this *GetSpecType_DisableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableTrustClientIpHeaders{` + - `DisableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.DisableTrustClientIpHeaders) + `}`}, ", ") - return s -} -func (this *GetSpecType_EnableTrustClientIpHeaders) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableTrustClientIpHeaders{` + - `EnableTrustClientIpHeaders:` + fmt.Sprintf("%#v", this.EnableTrustClientIpHeaders) + `}`}, ", ") - return s -} -func (this *GetSpecType_SingleLbApp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SingleLbApp{` + - `SingleLbApp:` + fmt.Sprintf("%#v", this.SingleLbApp) + `}`}, ", ") - return s -} -func (this *GetSpecType_MultiLbApp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_MultiLbApp{` + - `MultiLbApp:` + fmt.Sprintf("%#v", this.MultiLbApp) + `}`}, ", ") - return s -} -func (this *GetSpecType_EnableDdosDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableDdosDetection{` + - `EnableDdosDetection:` + fmt.Sprintf("%#v", this.EnableDdosDetection) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableDdosDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableDdosDetection{` + - `DisableDdosDetection:` + fmt.Sprintf("%#v", this.DisableDdosDetection) + `}`}, ", ") - return s -} -func (this *GetSpecType_EnableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableMaliciousUserDetection{` + - `EnableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.EnableMaliciousUserDetection) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableMaliciousUserDetection) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableMaliciousUserDetection{` + - `DisableMaliciousUserDetection:` + fmt.Sprintf("%#v", this.DisableMaliciousUserDetection) + `}`}, ", ") - return s -} -func (this *GetSpecType_EnableApiDiscovery) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableApiDiscovery{` + - `EnableApiDiscovery:` + fmt.Sprintf("%#v", this.EnableApiDiscovery) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableApiDiscovery) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableApiDiscovery{` + - `DisableApiDiscovery:` + fmt.Sprintf("%#v", this.DisableApiDiscovery) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableBotDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableBotDefense{` + - `DisableBotDefense:` + fmt.Sprintf("%#v", this.DisableBotDefense) + `}`}, ", ") - return s -} -func (this *GetSpecType_BotDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_BotDefense{` + - `BotDefense:` + fmt.Sprintf("%#v", this.BotDefense) + `}`}, ", ") - return s -} -func (this *GetSpecType_BotDefenseAdvanced) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_BotDefenseAdvanced{` + - `BotDefenseAdvanced:` + fmt.Sprintf("%#v", this.BotDefenseAdvanced) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableApiDefinition) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableApiDefinition{` + - `DisableApiDefinition:` + fmt.Sprintf("%#v", this.DisableApiDefinition) + `}`}, ", ") - return s -} -func (this *GetSpecType_ApiDefinition) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiDefinition{` + - `ApiDefinition:` + fmt.Sprintf("%#v", this.ApiDefinition) + `}`}, ", ") - return s -} -func (this *GetSpecType_ApiSpecification) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiSpecification{` + - `ApiSpecification:` + fmt.Sprintf("%#v", this.ApiSpecification) + `}`}, ", ") - return s -} -func (this *GetSpecType_ApiDefinitions) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ApiDefinitions{` + - `ApiDefinitions:` + fmt.Sprintf("%#v", this.ApiDefinitions) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableIpReputation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableIpReputation{` + - `DisableIpReputation:` + fmt.Sprintf("%#v", this.DisableIpReputation) + `}`}, ", ") - return s -} -func (this *GetSpecType_EnableIpReputation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableIpReputation{` + - `EnableIpReputation:` + fmt.Sprintf("%#v", this.EnableIpReputation) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableClientSideDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableClientSideDefense{` + - `DisableClientSideDefense:` + fmt.Sprintf("%#v", this.DisableClientSideDefense) + `}`}, ", ") - return s -} -func (this *GetSpecType_ClientSideDefense) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_ClientSideDefense{` + - `ClientSideDefense:` + fmt.Sprintf("%#v", this.ClientSideDefense) + `}`}, ", ") - return s -} -func (this *GetSpecType_SystemDefaultTimeouts) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SystemDefaultTimeouts{` + - `SystemDefaultTimeouts:` + fmt.Sprintf("%#v", this.SystemDefaultTimeouts) + `}`}, ", ") - return s -} -func (this *GetSpecType_SlowDdosMitigation) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_SlowDdosMitigation{` + - `SlowDdosMitigation:` + fmt.Sprintf("%#v", this.SlowDdosMitigation) + `}`}, ", ") - return s -} -func (this *GetSpecType_DisableThreatIntelligence) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_DisableThreatIntelligence{` + - `DisableThreatIntelligence:` + fmt.Sprintf("%#v", this.DisableThreatIntelligence) + `}`}, ", ") - return s -} -func (this *GetSpecType_EnableThreatIntelligence) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_EnableThreatIntelligence{` + - `EnableThreatIntelligence:` + fmt.Sprintf("%#v", this.EnableThreatIntelligence) + `}`}, ", ") - return s -} -func (this *GetSpecType_L7DdosActionDefault) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionDefault{` + - `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") - return s -} -func (this *GetSpecType_L7DdosActionBlock) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionBlock{` + - `L7DdosActionBlock:` + fmt.Sprintf("%#v", this.L7DdosActionBlock) + `}`}, ", ") - return s -} -func (this *GetSpecType_L7DdosActionJsChallenge) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionJsChallenge{` + - `L7DdosActionJsChallenge:` + fmt.Sprintf("%#v", this.L7DdosActionJsChallenge) + `}`}, ", ") - return s -} -func (this *GetSpecType_L7DdosActionNone) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&http_loadbalancer.GetSpecType_L7DdosActionNone{` + - `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") - return s -} -func valueToGoStringTypes(v interface{}, typ string) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" - } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) -} -func (m *InlineRateLimiter) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *InlineRateLimiter) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.CountByChoice != nil { + if m.NoServicePolicies != nil { { - size := m.CountByChoice.Size() - i -= size - if _, err := m.CountByChoice.MarshalTo(dAtA[i:]); err != nil { + size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { return 0, err } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } - if m.Unit != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Unit)) i-- - dAtA[i] = 0x10 - } - if m.Threshold != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Threshold)) + dAtA[i] = 0x2 i-- - dAtA[i] = 0x8 + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } - -func (m *InlineRateLimiter_UseHttpLbUserId) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *InlineRateLimiter_UseHttpLbUserId) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.UseHttpLbUserId != nil { + if m.ActiveServicePolicies != nil { { - size, err := m.UseHttpLbUserId.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -39983,20 +36564,22 @@ func (m *InlineRateLimiter_UseHttpLbUserId) MarshalToSizedBuffer(dAtA []byte) (i i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xda } return len(dAtA) - i, nil } -func (m *InlineRateLimiter_RefUserId) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *InlineRateLimiter_RefUserId) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RefUserId != nil { + if m.RoundRobin != nil { { - size, err := m.RefUserId.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40004,33 +36587,22 @@ func (m *InlineRateLimiter_RefUserId) MarshalToSizedBuffer(dAtA []byte) (int, er i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xea } return len(dAtA) - i, nil } -func (m *ServerUrlRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ServerUrlRule) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ServerUrlRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.RequestMatcher != nil { + if m.LeastActive != nil { { - size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40038,18 +36610,22 @@ func (m *ServerUrlRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x5a - } - if len(m.ApiGroup) > 0 { - i -= len(m.ApiGroup) - copy(dAtA[i:], m.ApiGroup) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiGroup))) + dAtA[i] = 0x2 i-- - dAtA[i] = 0x52 + dAtA[i] = 0xf2 } - if m.ClientMatcher != nil { + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_Random) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Random != nil { { - size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40057,46 +36633,22 @@ func (m *ServerUrlRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x4a - } - if m.RateLimiterChoice != nil { - { - size := m.RateLimiterChoice.Size() - i -= size - if _, err := m.RateLimiterChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if len(m.BasePath) > 0 { - i -= len(m.BasePath) - copy(dAtA[i:], m.BasePath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePath))) + dAtA[i] = 0x2 i-- - dAtA[i] = 0x22 - } - if m.DomainChoice != nil { - { - size := m.DomainChoice.Size() - i -= size - if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0xfa } return len(dAtA) - i, nil } - -func (m *ServerUrlRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ServerUrlRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AnyDomain != nil { + if m.SourceIpStickiness != nil { { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40104,34 +36656,22 @@ func (m *ServerUrlRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x82 } return len(dAtA) - i, nil } -func (m *ServerUrlRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ServerUrlRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.SpecificDomain) - copy(dAtA[i:], m.SpecificDomain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SpecificDomain))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil -} -func (m *ServerUrlRule_InlineRateLimiter) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ServerUrlRule_InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.InlineRateLimiter != nil { + if m.CookieStickiness != nil { { - size, err := m.InlineRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40139,20 +36679,22 @@ func (m *ServerUrlRule_InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x32 + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *ServerUrlRule_RefRateLimiter) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ServerUrlRule_RefRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RefRateLimiter != nil { + if m.RingHash != nil { { - size, err := m.RefRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40160,33 +36702,22 @@ func (m *ServerUrlRule_RefRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3a + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x92 } return len(dAtA) - i, nil } -func (m *ApiEndpointRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ApiEndpointRule) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ApiEndpointRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.ClientMatcher != nil { + if m.PolicyBasedChallenge != nil { { - size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40194,11 +36725,22 @@ func (m *ApiEndpointRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x5a + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a } - if m.RequestMatcher != nil { + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AppFirewall != nil { { - size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40206,20 +36748,22 @@ func (m *ApiEndpointRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x52 - } - if m.RateLimiterChoice != nil { - { - size := m.RateLimiterChoice.Size() - i -= size - if _, err := m.RateLimiterChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xa2 } - if m.ApiEndpointMethod != nil { + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SingleLbApp != nil { { - size, err := m.ApiEndpointMethod.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40227,44 +36771,22 @@ func (m *ApiEndpointRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x32 - } - if len(m.ApiEndpointPath) > 0 { - i -= len(m.ApiEndpointPath) - copy(dAtA[i:], m.ApiEndpointPath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiEndpointPath))) - i-- - dAtA[i] = 0x2a - } - if len(m.BasePath) > 0 { - i -= len(m.BasePath) - copy(dAtA[i:], m.BasePath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePath))) + dAtA[i] = 0x3 i-- - dAtA[i] = 0x22 - } - if m.DomainChoice != nil { - { - size := m.DomainChoice.Size() - i -= size - if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0xb2 } return len(dAtA) - i, nil } - -func (m *ApiEndpointRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ApiEndpointRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AnyDomain != nil { + if m.MultiLbApp != nil { { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40272,34 +36794,22 @@ func (m *ApiEndpointRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, erro i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xba } return len(dAtA) - i, nil } -func (m *ApiEndpointRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ApiEndpointRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.SpecificDomain) - copy(dAtA[i:], m.SpecificDomain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SpecificDomain))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil -} -func (m *ApiEndpointRule_InlineRateLimiter) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ApiEndpointRule_InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.InlineRateLimiter != nil { + if m.DisableBotDefense != nil { { - size, err := m.InlineRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40307,20 +36817,22 @@ func (m *ApiEndpointRule_InlineRateLimiter) MarshalToSizedBuffer(dAtA []byte) (i i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x42 + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xca } return len(dAtA) - i, nil } -func (m *ApiEndpointRule_RefRateLimiter) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ApiEndpointRule_RefRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RefRateLimiter != nil { + if m.BotDefense != nil { { - size, err := m.RefRateLimiter.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40328,33 +36840,22 @@ func (m *ApiEndpointRule_RefRateLimiter) MarshalToSizedBuffer(dAtA []byte) (int, i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x4a + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *BypassRateLimitingRule) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.ClientMatcher != nil { + if m.UserIdClientIp != nil { { - size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40362,11 +36863,22 @@ func (m *BypassRateLimitingRule) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x52 + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xe2 } - if m.RequestMatcher != nil { + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ApiDefinitions != nil { { - size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40374,39 +36886,22 @@ func (m *BypassRateLimitingRule) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x4a - } - if m.DestinationType != nil { - { - size := m.DestinationType.Size() - i -= size - if _, err := m.DestinationType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.DomainChoice != nil { - { - size := m.DomainChoice.Size() - i -= size - if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xea } return len(dAtA) - i, nil } - -func (m *BypassRateLimitingRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AnyDomain != nil { + if m.DisableIpReputation != nil { { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40414,34 +36909,45 @@ func (m *BypassRateLimitingRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (in i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.SpecificDomain) - copy(dAtA[i:], m.SpecificDomain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SpecificDomain))) - i-- - dAtA[i] = 0x1a + if m.EnableIpReputation != nil { + { + size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x92 + } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRule_AnyUrl) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule_AnyUrl) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AnyUrl != nil { + if m.ApiSpecification != nil { { - size, err := m.AnyUrl.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40449,34 +36955,45 @@ func (m *BypassRateLimitingRule_AnyUrl) MarshalToSizedBuffer(dAtA []byte) (int, i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x4 + i-- + dAtA[i] = 0x9a } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRule_BasePath) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule_BasePath) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.BasePath) - copy(dAtA[i:], m.BasePath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePath))) - i-- - dAtA[i] = 0x32 + if m.DisableApiDefinition != nil { + { + size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xb2 + } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRule_ApiEndpoint) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.ApiEndpoint != nil { + if m.ApiDefinition != nil { { - size, err := m.ApiEndpoint.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40484,20 +37001,22 @@ func (m *BypassRateLimitingRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) ( i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3a + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xba } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRule_ApiGroups) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRule_ApiGroups) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.ApiGroups != nil { + if m.DisableTrustClientIpHeaders != nil { { - size, err := m.ApiGroups.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40505,117 +37024,68 @@ func (m *BypassRateLimitingRule_ApiGroups) MarshalToSizedBuffer(dAtA []byte) (in i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x42 + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } -func (m *BypassRateLimitingRules) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *BypassRateLimitingRules) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *BypassRateLimitingRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if len(m.BypassRateLimitingRules) > 0 { - for iNdEx := len(m.BypassRateLimitingRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BypassRateLimitingRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.EnableTrustClientIpHeaders != nil { + { + size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0x3a + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xda } return len(dAtA) - i, nil } - -func (m *APIRateLimit) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *APIRateLimit) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.IpAllowedListChoice != nil { + if m.EnableMaliciousUserDetection != nil { { - size := m.IpAllowedListChoice.Size() - i -= size - if _, err := m.IpAllowedListChoice.MarshalTo(dAtA[i:]); err != nil { + size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { return 0, err } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } - } - if len(m.ApiEndpointRules) > 0 { - for iNdEx := len(m.ApiEndpointRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ApiEndpointRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } - } - if len(m.ServerUrlRules) > 0 { - for iNdEx := len(m.ServerUrlRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ServerUrlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 } return len(dAtA) - i, nil } - -func (m *APIRateLimit_NoIpAllowedList) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIRateLimit_NoIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.NoIpAllowedList != nil { + if m.DisableMaliciousUserDetection != nil { { - size, err := m.NoIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40623,20 +37093,22 @@ func (m *APIRateLimit_NoIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *APIRateLimit_IpAllowedList) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIRateLimit_IpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.IpAllowedList != nil { + if m.EnableApiDiscovery != nil { { - size, err := m.IpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40644,20 +37116,22 @@ func (m *APIRateLimit_IpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, err i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x9a } return len(dAtA) - i, nil } -func (m *APIRateLimit_CustomIpAllowedList) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIRateLimit_CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.CustomIpAllowedList != nil { + if m.DisableApiDiscovery != nil { { - size, err := m.CustomIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40665,20 +37139,22 @@ func (m *APIRateLimit_CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (in i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xa2 } return len(dAtA) - i, nil } -func (m *APIRateLimit_BypassRateLimitingRules) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *APIRateLimit_BypassRateLimitingRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.BypassRateLimitingRules != nil { + if m.DisableClientSideDefense != nil { { - size, err := m.BypassRateLimitingRules.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40686,42 +37162,22 @@ func (m *APIRateLimit_BypassRateLimitingRules) MarshalToSizedBuffer(dAtA []byte) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3a + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xb2 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ProxyTypeHttps) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.PortChoice != nil { - { - size := m.PortChoice.Size() - i -= size - if _, err := m.PortChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.HttpProtocolOptions != nil { + if m.ClientSideDefense != nil { { - size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40729,29 +37185,22 @@ func (m *ProxyTypeHttps) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x5 i-- dAtA[i] = 0xba } - if m.TlsCertificatesChoice != nil { - { - size := m.TlsCertificatesChoice.Size() - i -= size - if _, err := m.TlsCertificatesChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.ConnectionIdleTimeout != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.ConnectionIdleTimeout)) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa0 - } - if m.HeaderTransformationType != nil { + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultPool != nil { { - size, err := m.HeaderTransformationType.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40759,70 +37208,45 @@ func (m *ProxyTypeHttps) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x5 i-- - dAtA[i] = 0x9a - } - if m.DefaultLbChoice != nil { - { - size := m.DefaultLbChoice.Size() - i -= size - if _, err := m.DefaultLbChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0xca } - if m.PathNormalizeChoice != nil { + return len(dAtA) - i, nil +} +func (m *ReplaceSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DefaultPoolList != nil { { - size := m.PathNormalizeChoice.Size() - i -= size - if _, err := m.PathNormalizeChoice.MarshalTo(dAtA[i:]); err != nil { + size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { return 0, err } - } - } - if m.ServerHeaderChoice != nil { - { - size := m.ServerHeaderChoice.Size() i -= size - if _, err := m.ServerHeaderChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.AddHsts { - i-- - if m.AddHsts { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x10 - } - if m.HttpRedirect { - i-- - if m.HttpRedirect { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } + dAtA[i] = 0x5 i-- - dAtA[i] = 0x8 + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } - -func (m *ProxyTypeHttps_TlsParameters) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_TlsParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.TlsParameters != nil { + if m.SlowDdosMitigation != nil { { - size, err := m.TlsParameters.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40830,20 +37254,22 @@ func (m *ProxyTypeHttps_TlsParameters) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xf2 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_DefaultHeader) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DefaultHeader != nil { + if m.EnableChallenge != nil { { - size, err := m.DefaultHeader.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40851,48 +37277,45 @@ func (m *ProxyTypeHttps_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xfa } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_ServerName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttps_ServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ServerName) - copy(dAtA[i:], m.ServerName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ServerName))) - i-- - dAtA[i] = 0x32 - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttps_AppendServerName) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_AppendServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.AppendServerName) - copy(dAtA[i:], m.AppendServerName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.AppendServerName))) - i-- - dAtA[i] = 0x3a + if m.SystemDefaultTimeouts != nil { + { + size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0x8a + } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_PassThrough) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableThreatMesh) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_DisableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.PassThrough != nil { + if m.DisableThreatMesh != nil { { - size, err := m.PassThrough.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40900,20 +37323,22 @@ func (m *ProxyTypeHttps_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, err i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x42 + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xba } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_EnablePathNormalize) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableThreatMesh) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_EnableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.EnablePathNormalize != nil { + if m.EnableThreatMesh != nil { { - size, err := m.EnablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40921,20 +37346,22 @@ func (m *ProxyTypeHttps_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) ( i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x52 + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xca } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_DisablePathNormalize) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisablePathNormalize != nil { + if m.L7DdosActionDefault != nil { { - size, err := m.DisablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40942,32 +37369,45 @@ func (m *ProxyTypeHttps_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x5a + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xfa } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_Port) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_Port) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i = encodeVarintTypes(dAtA, i, uint64(m.Port)) - i-- - dAtA[i] = 0x78 + if m.L7DdosActionBlock != nil { + { + size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x82 + } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_NonDefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_NonDefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.NonDefaultLoadbalancer != nil { + if m.L7DdosActionJsChallenge != nil { { - size, err := m.NonDefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40975,22 +37415,22 @@ func (m *ProxyTypeHttps_NonDefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x7 i-- dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_DefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_DefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DefaultLoadbalancer != nil { + if m.L7DdosActionNone != nil { { - size, err := m.DefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -40998,22 +37438,22 @@ func (m *ProxyTypeHttps_DefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) ( i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x7 i-- dAtA[i] = 0x92 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_TlsCertParams) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_TlsCertParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.TlsCertParams != nil { + if m.ApiRateLimit != nil { { - size, err := m.TlsCertParams.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41021,29 +37461,36 @@ func (m *ProxyTypeHttps_TlsCertParams) MarshalToSizedBuffer(dAtA []byte) (int, e i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x7 i-- - dAtA[i] = 0xb2 + dAtA[i] = 0xc2 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttps_PortRanges) MarshalTo(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttps_PortRanges) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *ReplaceSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.PortRanges) - copy(dAtA[i:], m.PortRanges) - i = encodeVarintTypes(dAtA, i, uint64(len(m.PortRanges))) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xca + if m.BotDefenseAdvanced != nil { + { + size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x9a + } return len(dAtA) - i, nil } -func (m *ProxyTypeHttp) Marshal() (dAtA []byte, err error) { +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -41053,96 +37500,124 @@ func (m *ProxyTypeHttp) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *ProxyTypeHttp) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttp) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.PortChoice != nil { + if len(m.InternetVipInfo) > 0 { + for iNdEx := len(m.InternetVipInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.InternetVipInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x44 + i-- + dAtA[i] = 0xe2 + } + } + if m.BotDefenseChoice != nil { { - size := m.PortChoice.Size() + size := m.BotDefenseChoice.Size() i -= size - if _, err := m.PortChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.DnsVolterraManaged { - i-- - if m.DnsVolterraManaged { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if m.AutoCertInfo != nil { + { + size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x3f + i-- + dAtA[i] = 0x92 } - return len(dAtA) - i, nil -} - -func (m *ProxyTypeHttp_Port) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttp_Port) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i = encodeVarintTypes(dAtA, i, uint64(m.Port)) - i-- - dAtA[i] = 0x10 - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttp_PortRanges) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttp_PortRanges) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.PortRanges) - copy(dAtA[i:], m.PortRanges) - i = encodeVarintTypes(dAtA, i, uint64(len(m.PortRanges))) - i-- - dAtA[i] = 0x22 - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttpsAutoCerts) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd8 } - return dAtA[:n], nil -} - -func (m *ProxyTypeHttpsAutoCerts) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.PortChoice != nil { + if len(m.DnsInfo) > 0 { + for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xd2 + } + } + if len(m.HostName) > 0 { + i -= len(m.HostName) + copy(dAtA[i:], m.HostName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) + i-- + dAtA[i] = 0x3e + i-- + dAtA[i] = 0xca + } + if m.RateLimitChoice != nil { { - size := m.PortChoice.Size() + size := m.RateLimitChoice.Size() i -= size - if _, err := m.PortChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.HttpProtocolOptions != nil { + if m.CertState != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) + i-- + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x98 + } + if m.L7DdosAutoMitigationAction != nil { { - size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + size := m.L7DdosAutoMitigationAction.Size() + i -= size + if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ThreatMeshChoice != nil { + { + size := m.ThreatMeshChoice.Size() + i -= size + if _, err := m.ThreatMeshChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.OriginServerSubsetRuleList != nil { + { + size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41150,20 +37625,77 @@ func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x6 i-- - dAtA[i] = 0xc2 + dAtA[i] = 0xaa } - if m.ConnectionIdleTimeout != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.ConnectionIdleTimeout)) + if m.JwtValidation != nil { + { + size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x6 i-- - dAtA[i] = 0xb8 + dAtA[i] = 0x92 } - if m.HeaderTransformationType != nil { + if m.SlowDdosMitigationChoice != nil { { - size, err := m.HeaderTransformationType.MarshalToSizedBuffer(dAtA[:i]) + size := m.SlowDdosMitigationChoice.Size() + i -= size + if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ChallengeType != nil { + { + size := m.ChallengeType.Size() + i -= size + if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.ProtectedCookies) > 0 { + for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xea + } + } + if len(m.GraphqlRules) > 0 { + for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xe2 + } + } + if m.CsrfPolicy != nil { + { + size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41171,49 +37703,58 @@ func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x5 i-- - dAtA[i] = 0xb2 + dAtA[i] = 0xda } - if m.DefaultLbChoice != nil { + if m.OriginPoolChoice != nil { { - size := m.DefaultLbChoice.Size() + size := m.OriginPoolChoice.Size() i -= size - if _, err := m.DefaultLbChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.PathNormalizeChoice != nil { + if m.ClientSideDefenseChoice != nil { { - size := m.PathNormalizeChoice.Size() + size := m.ClientSideDefenseChoice.Size() i -= size - if _, err := m.PathNormalizeChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.ServerHeaderChoice != nil { + if m.ApiDiscoveryChoice != nil { { - size := m.ServerHeaderChoice.Size() + size := m.ApiDiscoveryChoice.Size() i -= size - if _, err := m.ServerHeaderChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.MtlsChoice != nil { + if m.MaliciousUserDetectionChoice != nil { { - size := m.MtlsChoice.Size() + size := m.MaliciousUserDetectionChoice.Size() i -= size - if _, err := m.MtlsChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - if m.TlsConfig != nil { + if m.TrustClientIpHeadersChoice != nil { { - size, err := m.TlsConfig.MarshalToSizedBuffer(dAtA[:i]) + size := m.TrustClientIpHeadersChoice.Size() + i -= size + if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ApiProtectionRules != nil { + { + size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41221,41 +37762,289 @@ func (m *ProxyTypeHttpsAutoCerts) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xc2 } - if m.AddHsts { + if m.ApiDefinitionChoice != nil { + { + size := m.ApiDefinitionChoice.Size() + i -= size + if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.IpReputationChoice != nil { + { + size := m.IpReputationChoice.Size() + i -= size + if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.DataGuardRules) > 0 { + for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xfa + } + } + if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { + for iNdEx := len(m.DownstreamTlsCertificateExpirationTimestamps) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DownstreamTlsCertificateExpirationTimestamps[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xf2 + } + } + if m.UserIdChoice != nil { + { + size := m.UserIdChoice.Size() + i -= size + if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.MlConfigChoice != nil { + { + size := m.MlConfigChoice.Size() + i -= size + if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.WafChoice != nil { + { + size := m.WafChoice.Size() + i -= size + if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.HashPolicyChoice != nil { + { + size := m.HashPolicyChoice.Size() + i -= size + if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.ServicePolicyChoice != nil { + { + size := m.ServicePolicyChoice.Size() + i -= size + if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if len(m.DdosMitigationRules) > 0 { + for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa + } + } + if len(m.TrustedClients) > 0 { + for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x9a + } + } + if len(m.BlockedClients) > 0 { + for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x92 + } + } + if len(m.WafExclusionRules) > 0 { + for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x8a + } + } + if m.MaliciousUserMitigation != nil { + { + size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } i-- - if m.AddHsts { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x82 + } + if m.LoadbalancerType != nil { + { + size := m.LoadbalancerType.Size() + i -= size + if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.MoreOption != nil { + { + size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x10 + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x9a } - if m.HttpRedirect { + if m.AddLocation { i-- - if m.HttpRedirect { + if m.AddLocation { dAtA[i] = 1 } else { dAtA[i] = 0 } i-- - dAtA[i] = 0x8 + dAtA[i] = 0x1 + i-- + dAtA[i] = 0x88 + } + if m.AdvertiseChoice != nil { + { + size := m.AdvertiseChoice.Size() + i -= size + if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.CorsPolicy != nil { + { + size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + if len(m.Routes) > 0 { + for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + } + if len(m.DefaultRoutePools) > 0 { + for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + } + if len(m.Domains) > 0 { + for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Domains[iNdEx]) + copy(dAtA[i:], m.Domains[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) + i-- + dAtA[i] = 0xa + } } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_NoMtls) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_Http) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_NoMtls) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.NoMtls != nil { + if m.Http != nil { { - size, err := m.NoMtls.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41263,20 +38052,20 @@ func (m *ProxyTypeHttpsAutoCerts_NoMtls) MarshalToSizedBuffer(dAtA []byte) (int, i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x12 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_UseMtls) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_Https) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_UseMtls) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.UseMtls != nil { + if m.Https != nil { { - size, err := m.UseMtls.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41284,20 +38073,20 @@ func (m *ProxyTypeHttpsAutoCerts_UseMtls) MarshalToSizedBuffer(dAtA []byte) (int i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x32 + dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DefaultHeader != nil { + if m.AdvertiseOnPublic != nil { { - size, err := m.DefaultHeader.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41305,48 +38094,41 @@ func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) MarshalToSizedBuffer(dAtA []byte i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x42 + dAtA[i] = 0x22 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttpsAutoCerts_ServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ServerName) - copy(dAtA[i:], m.ServerName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ServerName))) - i-- - dAtA[i] = 0x4a - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_AppendServerName) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.AppendServerName) - copy(dAtA[i:], m.AppendServerName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.AppendServerName))) - i-- - dAtA[i] = 0x52 + if m.AdvertiseCustom != nil { + { + size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.PassThrough != nil { + if m.DisableWaf != nil { { - size, err := m.PassThrough.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41358,16 +38140,16 @@ func (m *ProxyTypeHttpsAutoCerts_PassThrough) MarshalToSizedBuffer(dAtA []byte) } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.EnablePathNormalize != nil { + if m.DoNotAdvertise != nil { { - size, err := m.EnablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41375,20 +38157,20 @@ func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) MarshalToSizedBuffer(dAtA i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x6a + dAtA[i] = 0x62 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisablePathNormalize != nil { + if m.AdvertiseOnPublicDefaultVip != nil { { - size, err := m.DisablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41396,34 +38178,20 @@ func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) MarshalToSizedBuffer(dAtA i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x72 + dAtA[i] = 0x6a } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_Port) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttpsAutoCerts_Port) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i = encodeVarintTypes(dAtA, i, uint64(m.Port)) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x90 - return len(dAtA) - i, nil -} -func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.NonDefaultLoadbalancer != nil { + if m.JsChallenge != nil { { - size, err := m.NonDefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41433,20 +38201,20 @@ func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) MarshalToSizedBuffer(dA i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xa2 + dAtA[i] = 0x92 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DefaultLoadbalancer != nil { + if m.UserIdentification != nil { { - size, err := m.DefaultLoadbalancer.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41456,88 +38224,43 @@ func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) MarshalToSizedBuffer(dAtA i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xaa + dAtA[i] = 0xa2 } return len(dAtA) - i, nil } -func (m *ProxyTypeHttpsAutoCerts_PortRanges) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProxyTypeHttpsAutoCerts_PortRanges) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.PortRanges) - copy(dAtA[i:], m.PortRanges) - i = encodeVarintTypes(dAtA, i, uint64(len(m.PortRanges))) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd2 - return len(dAtA) - i, nil -} -func (m *HashPolicyListType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *HashPolicyListType) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *HashPolicyListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if len(m.HashPolicy) > 0 { - for iNdEx := len(m.HashPolicy) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.HashPolicy[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.DisableRateLimit != nil { + { + size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xb2 } return len(dAtA) - i, nil } - -func (m *MirrorPolicyType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MirrorPolicyType) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MirrorPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.Percent != nil { + if m.RateLimit != nil { { - size, err := m.Percent.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41545,64 +38268,22 @@ func (m *MirrorPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 - } - if m.OriginPool != nil { - { - size, err := m.OriginPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } + dAtA[i] = 0x1 i-- - dAtA[i] = 0xa + dAtA[i] = 0xba } return len(dAtA) - i, nil } - -func (m *RouteSimpleAdvancedOptions) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteSimpleAdvancedOptions) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.WafChoice != nil { - { - size := m.WafChoice.Size() - i -= size - if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.RewriteChoice != nil { - { - size := m.RewriteChoice.Size() - i -= size - if _, err := m.RewriteChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.CsrfPolicy != nil { + if m.CaptchaChallenge != nil { { - size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41610,83 +38291,22 @@ func (m *RouteSimpleAdvancedOptions) MarshalToSizedBuffer(dAtA []byte) (int, err i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xda - } - if m.RetryPolicyChoice != nil { - { - size := m.RetryPolicyChoice.Size() - i -= size - if _, err := m.RetryPolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.BotDefenseJavascriptInjectionChoice != nil { - { - size := m.BotDefenseJavascriptInjectionChoice.Size() - i -= size - if _, err := m.BotDefenseJavascriptInjectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.ClusterRetractChoice != nil { - { - size := m.ClusterRetractChoice.Size() - i -= size - if _, err := m.ClusterRetractChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.MirroringChoice != nil { - { - size := m.MirroringChoice.Size() - i -= size - if _, err := m.MirroringChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.BufferChoice != nil { - { - size := m.BufferChoice.Size() - i -= size - if _, err := m.BufferChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.Timeout != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Timeout)) - i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0xe0 - } - if m.WebsocketChoice != nil { - { - size := m.WebsocketChoice.Size() - i -= size - if _, err := m.WebsocketChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.SpdyChoice != nil { - { - size := m.SpdyChoice.Size() - i -= size - if _, err := m.SpdyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0xc2 } - if m.CorsPolicy != nil { + return len(dAtA) - i, nil +} +func (m *GetSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.NoChallenge != nil { { - size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41696,115 +38316,20 @@ func (m *RouteSimpleAdvancedOptions) MarshalToSizedBuffer(dAtA []byte) (int, err i-- dAtA[i] = 0x1 i-- - dAtA[i] = 0x92 - } - if m.DisableLocationAdd { - i-- - if m.DisableLocationAdd { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x68 - } - if len(m.ResponseHeadersToRemove) > 0 { - for iNdEx := len(m.ResponseHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ResponseHeadersToRemove[iNdEx]) - copy(dAtA[i:], m.ResponseHeadersToRemove[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ResponseHeadersToRemove[iNdEx]))) - i-- - dAtA[i] = 0x62 - } - } - if len(m.ResponseHeadersToAdd) > 0 { - for iNdEx := len(m.ResponseHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ResponseHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a - } - } - if len(m.RequestHeadersToRemove) > 0 { - for iNdEx := len(m.RequestHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.RequestHeadersToRemove[iNdEx]) - copy(dAtA[i:], m.RequestHeadersToRemove[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RequestHeadersToRemove[iNdEx]))) - i-- - dAtA[i] = 0x52 - } - } - if len(m.RequestHeadersToAdd) > 0 { - for iNdEx := len(m.RequestHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RequestHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a - } - } - if len(m.EndpointSubsets) > 0 { - keysForEndpointSubsets := make([]string, 0, len(m.EndpointSubsets)) - for k := range m.EndpointSubsets { - keysForEndpointSubsets = append(keysForEndpointSubsets, string(k)) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForEndpointSubsets) - for iNdEx := len(keysForEndpointSubsets) - 1; iNdEx >= 0; iNdEx-- { - v := m.EndpointSubsets[string(keysForEndpointSubsets[iNdEx])] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintTypes(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(keysForEndpointSubsets[iNdEx]) - copy(dAtA[i:], keysForEndpointSubsets[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(keysForEndpointSubsets[iNdEx]))) - i-- - dAtA[i] = 0xa - i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x2a - } - } - if m.Priority != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Priority)) - i-- - dAtA[i] = 0x20 - } - if m.HashPolicyChoice != nil { - { - size := m.HashPolicyChoice.Size() - i -= size - if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } - -func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.CommonHashPolicy != nil { + if m.HttpsAutoCert != nil { { - size, err := m.CommonHashPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41812,20 +38337,22 @@ func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) MarshalToSizedBuffer(dAtA i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.SpecificHashPolicy != nil { + if m.ServicePoliciesFromNamespace != nil { { - size, err := m.SpecificHashPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41833,20 +38360,22 @@ func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) MarshalToSizedBuffer(dAt i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xca } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisablePrefixRewrite != nil { + if m.NoServicePolicies != nil { { - size, err := m.DisablePrefixRewrite.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41854,34 +38383,22 @@ func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) MarshalToSizedBuffer(d i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3a + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_PrefixRewrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RouteSimpleAdvancedOptions_PrefixRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.PrefixRewrite) - copy(dAtA[i:], m.PrefixRewrite) - i = encodeVarintTypes(dAtA, i, uint64(len(m.PrefixRewrite))) - i-- - dAtA[i] = 0x42 - return len(dAtA) - i, nil -} -func (m *RouteSimpleAdvancedOptions_InheritedWaf) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_InheritedWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.InheritedWaf != nil { + if m.ActiveServicePolicies != nil { { - size, err := m.InheritedWaf.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41889,20 +38406,22 @@ func (m *RouteSimpleAdvancedOptions_InheritedWaf) MarshalToSizedBuffer(dAtA []by i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x7a + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xda } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DisableSpdy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DisableSpdy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableSpdy != nil { + if m.RoundRobin != nil { { - size, err := m.DisableSpdy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41910,22 +38429,22 @@ func (m *RouteSimpleAdvancedOptions_DisableSpdy) MarshalToSizedBuffer(dAtA []byt i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xa2 + dAtA[i] = 0xea } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_EnableSpdy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_EnableSpdy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.EnableSpdy != nil { + if m.LeastActive != nil { { - size, err := m.EnableSpdy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41933,22 +38452,22 @@ func (m *RouteSimpleAdvancedOptions_EnableSpdy) MarshalToSizedBuffer(dAtA []byte i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xaa + dAtA[i] = 0xf2 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_Random) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableWebSocketConfig != nil { + if m.Random != nil { { - size, err := m.DisableWebSocketConfig.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41956,22 +38475,22 @@ func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) MarshalToSizedBuffer i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x2 i-- - dAtA[i] = 0xba + dAtA[i] = 0xfa } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_WebSocketConfig) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_WebSocketConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.WebSocketConfig != nil { + if m.SourceIpStickiness != nil { { - size, err := m.WebSocketConfig.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -41979,22 +38498,22 @@ func (m *RouteSimpleAdvancedOptions_WebSocketConfig) MarshalToSizedBuffer(dAtA [ i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xc2 + dAtA[i] = 0x82 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DefaultRetryPolicy != nil { + if m.CookieStickiness != nil { { - size, err := m.DefaultRetryPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42002,22 +38521,22 @@ func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) MarshalToSizedBuffer(dAt i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xd2 + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_RetryPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_RetryPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RetryPolicy != nil { + if m.RingHash != nil { { - size, err := m.RetryPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42025,22 +38544,22 @@ func (m *RouteSimpleAdvancedOptions_RetryPolicy) MarshalToSizedBuffer(dAtA []byt i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xda + dAtA[i] = 0x92 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_CommonBuffering) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_CommonBuffering) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.CommonBuffering != nil { + if m.PolicyBasedChallenge != nil { { - size, err := m.CommonBuffering.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42048,22 +38567,22 @@ func (m *RouteSimpleAdvancedOptions_CommonBuffering) MarshalToSizedBuffer(dAtA [ i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xf2 + dAtA[i] = 0x9a } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_BufferPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_BufferPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.BufferPolicy != nil { + if m.AppFirewall != nil { { - size, err := m.BufferPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42071,22 +38590,22 @@ func (m *RouteSimpleAdvancedOptions_BufferPolicy) MarshalToSizedBuffer(dAtA []by i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xfa + dAtA[i] = 0xa2 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DisableMirroring) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DisableMirroring) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableMirroring != nil { + if m.SingleLbApp != nil { { - size, err := m.DisableMirroring.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42094,22 +38613,22 @@ func (m *RouteSimpleAdvancedOptions_DisableMirroring) MarshalToSizedBuffer(dAtA i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x3 i-- - dAtA[i] = 0x8a + dAtA[i] = 0xb2 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_MirrorPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_MirrorPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.MirrorPolicy != nil { + if m.MultiLbApp != nil { { - size, err := m.MirrorPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42117,22 +38636,22 @@ func (m *RouteSimpleAdvancedOptions_MirrorPolicy) MarshalToSizedBuffer(dAtA []by i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x3 i-- - dAtA[i] = 0x92 + dAtA[i] = 0xba } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_RetractCluster) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_RetractCluster) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RetractCluster != nil { + if m.DisableBotDefense != nil { { - size, err := m.RetractCluster.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42140,22 +38659,22 @@ func (m *RouteSimpleAdvancedOptions_RetractCluster) MarshalToSizedBuffer(dAtA [] i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xa2 + dAtA[i] = 0xca } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DoNotRetractCluster != nil { + if m.BotDefense != nil { { - size, err := m.DoNotRetractCluster.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42163,22 +38682,22 @@ func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) MarshalToSizedBuffer(dA i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xaa + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.InheritedBotDefenseJavascriptInjection != nil { + if m.UserIdClientIp != nil { { - size, err := m.InheritedBotDefenseJavascriptInjection.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42186,22 +38705,22 @@ func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) Mars i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xba + dAtA[i] = 0xe2 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.BotDefenseJavascriptInjection != nil { + if m.ApiDefinitions != nil { { - size, err := m.BotDefenseJavascriptInjection.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42209,22 +38728,22 @@ func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) MarshalToSize i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x3 i-- - dAtA[i] = 0xc2 + dAtA[i] = 0xea } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_DisableWaf) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableWaf != nil { + if m.DisableIpReputation != nil { { - size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42232,22 +38751,22 @@ func (m *RouteSimpleAdvancedOptions_DisableWaf) MarshalToSizedBuffer(dAtA []byte i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x4 i-- - dAtA[i] = 0xca + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.NoRetryPolicy != nil { + if m.EnableIpReputation != nil { { - size, err := m.NoRetryPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42255,22 +38774,22 @@ func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) MarshalToSizedBuffer(dAtA []b i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x4 i-- - dAtA[i] = 0xd2 + dAtA[i] = 0x92 } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_RegexRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_RegexRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RegexRewrite != nil { + if m.ApiSpecification != nil { { - size, err := m.RegexRewrite.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42278,22 +38797,22 @@ func (m *RouteSimpleAdvancedOptions_RegexRewrite) MarshalToSizedBuffer(dAtA []by i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2 + dAtA[i] = 0x4 i-- - dAtA[i] = 0xe2 + dAtA[i] = 0x9a } return len(dAtA) - i, nil } -func (m *RouteSimpleAdvancedOptions_AppFirewall) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteSimpleAdvancedOptions_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AppFirewall != nil { + if m.DisableApiDefinition != nil { { - size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42301,44 +38820,22 @@ func (m *RouteSimpleAdvancedOptions_AppFirewall) MarshalToSizedBuffer(dAtA []byt i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3 + dAtA[i] = 0x4 i-- - dAtA[i] = 0xa2 + dAtA[i] = 0xb2 } return len(dAtA) - i, nil } -func (m *RouteTypeSimpleWithDefaultOriginPool) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteTypeSimpleWithDefaultOriginPool) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimpleWithDefaultOriginPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.HostRewriteParams != nil { - { - size := m.HostRewriteParams.Size() - i -= size - if _, err := m.HostRewriteParams.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.Path != nil { + if m.ApiDefinition != nil { { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42346,26 +38843,22 @@ func (m *RouteTypeSimpleWithDefaultOriginPool) MarshalToSizedBuffer(dAtA []byte) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 - } - if m.HttpMethod != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + dAtA[i] = 0x4 i-- - dAtA[i] = 0x8 + dAtA[i] = 0xba } return len(dAtA) - i, nil } - -func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AutoHostRewrite != nil { + if m.DisableTrustClientIpHeaders != nil { { - size, err := m.AutoHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42373,34 +38866,45 @@ func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) MarshalToSizedBuf i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xd2 } return len(dAtA) - i, nil } -func (m *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.HostRewrite) - copy(dAtA[i:], m.HostRewrite) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostRewrite))) - i-- - dAtA[i] = 0x2a + if m.EnableTrustClientIpHeaders != nil { + { + size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xda + } return len(dAtA) - i, nil } -func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableHostRewrite != nil { + if m.EnableMaliciousUserDetection != nil { { - size, err := m.DisableHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42408,33 +38912,22 @@ func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) MarshalToSized i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x32 + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x82 } return len(dAtA) - i, nil } -func (m *RouteTypeSimple) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteTypeSimple) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimple) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.IncomingPort != nil { + if m.DisableMaliciousUserDetection != nil { { - size, err := m.IncomingPort.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42442,25 +38935,22 @@ func (m *RouteTypeSimple) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x52 - } - if len(m.Headers) > 0 { - for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a - } + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x8a } - if m.AdvancedOptions != nil { + return len(dAtA) - i, nil +} +func (m *GetSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableApiDiscovery != nil { { - size, err := m.AdvancedOptions.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42468,39 +38958,22 @@ func (m *RouteTypeSimple) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x42 - } - if m.HostRewriteParams != nil { - { - size := m.HostRewriteParams.Size() - i -= size - if _, err := m.HostRewriteParams.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if len(m.OriginPools) > 0 { - for iNdEx := len(m.OriginPools) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.OriginPools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - } - if m.HttpMethod != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + dAtA[i] = 0x5 i-- - dAtA[i] = 0x10 + dAtA[i] = 0x9a } - if m.Path != nil { + return len(dAtA) - i, nil +} +func (m *GetSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableApiDiscovery != nil { { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42508,21 +38981,22 @@ func (m *RouteTypeSimple) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xa2 } return len(dAtA) - i, nil } - -func (m *RouteTypeSimple_AutoHostRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimple_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AutoHostRewrite != nil { + if m.DisableClientSideDefense != nil { { - size, err := m.AutoHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42530,34 +39004,45 @@ func (m *RouteTypeSimple_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xb2 } return len(dAtA) - i, nil } -func (m *RouteTypeSimple_HostRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimple_HostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - i -= len(m.HostRewrite) - copy(dAtA[i:], m.HostRewrite) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostRewrite))) - i-- - dAtA[i] = 0x32 + if m.ClientSideDefense != nil { + { + size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xba + } return len(dAtA) - i, nil } -func (m *RouteTypeSimple_DisableHostRewrite) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeSimple_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisableHostRewrite != nil { + if m.DefaultPool != nil { { - size, err := m.DisableHostRewrite.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42565,33 +39050,22 @@ func (m *RouteTypeSimple_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) ( i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3a + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xca } return len(dAtA) - i, nil } -func (m *RouteTypeRedirect) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteTypeRedirect) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeRedirect) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.IncomingPort != nil { + if m.DefaultPoolList != nil { { - size, err := m.IncomingPort.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42599,25 +39073,22 @@ func (m *RouteTypeRedirect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a - } - if len(m.Headers) > 0 { - for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xd2 } - if m.RouteRedirect != nil { + return len(dAtA) - i, nil +} +func (m *GetSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SlowDdosMitigation != nil { { - size, err := m.RouteRedirect.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42625,16 +39096,22 @@ func (m *RouteTypeRedirect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1a - } - if m.HttpMethod != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) + dAtA[i] = 0x5 i-- - dAtA[i] = 0x10 + dAtA[i] = 0xf2 } - if m.Path != nil { + return len(dAtA) - i, nil +} +func (m *GetSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableChallenge != nil { { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42642,34 +39119,22 @@ func (m *RouteTypeRedirect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xfa } return len(dAtA) - i, nil } - -func (m *RouteTypeDirectResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteTypeDirectResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeDirectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.IncomingPort != nil { + if m.SystemDefaultTimeouts != nil { { - size, err := m.IncomingPort.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42677,77 +39142,22 @@ func (m *RouteTypeDirectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a - } - if len(m.Headers) > 0 { - for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } - } - if m.RouteDirectResponse != nil { - { - size, err := m.RouteDirectResponse.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.HttpMethod != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.HttpMethod)) - i-- - dAtA[i] = 0x10 - } - if m.Path != nil { - { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } + dAtA[i] = 0x6 i-- - dAtA[i] = 0xa + dAtA[i] = 0x8a } return len(dAtA) - i, nil } - -func (m *RouteTypeCustomRoute) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteTypeCustomRoute) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableThreatMesh) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteTypeCustomRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_DisableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if m.RouteRef != nil { + if m.DisableThreatMesh != nil { { - size, err := m.RouteRef.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42755,74 +39165,22 @@ func (m *RouteTypeCustomRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *RouteType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *RouteType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RouteType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Choice != nil { - { - size := m.Choice.Size() - i -= size - if _, err := m.Choice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - return len(dAtA) - i, nil -} - -func (m *RouteType_SimpleRoute) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RouteType_SimpleRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SimpleRoute != nil { - { - size, err := m.SimpleRoute.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } + dAtA[i] = 0x6 i-- - dAtA[i] = 0xa + dAtA[i] = 0xba } return len(dAtA) - i, nil } -func (m *RouteType_RedirectRoute) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableThreatMesh) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteType_RedirectRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_EnableThreatMesh) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.RedirectRoute != nil { + if m.EnableThreatMesh != nil { { - size, err := m.RedirectRoute.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableThreatMesh.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42830,41 +39188,22 @@ func (m *RouteType_RedirectRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 - } - return len(dAtA) - i, nil -} -func (m *RouteType_DirectResponseRoute) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RouteType_DirectResponseRoute) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DirectResponseRoute != nil { - { - size, err := m.DirectResponseRoute.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } + dAtA[i] = 0x6 i-- - dAtA[i] = 0x1a + dAtA[i] = 0xca } return len(dAtA) - i, nil } -func (m *RouteType_CustomRouteObject) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *RouteType_CustomRouteObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.CustomRouteObject != nil { + if m.L7DdosActionDefault != nil { { - size, err := m.CustomRouteObject.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -42872,142 +39211,22 @@ func (m *RouteType_CustomRouteObject) MarshalToSizedBuffer(dAtA []byte) (int, er i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xfa } return len(dAtA) - i, nil } -func (m *AdvancedOptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *AdvancedOptionsType) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AdvancedOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i - var l int - _ = l - if len(m.CookiesToModify) > 0 { - for iNdEx := len(m.CookiesToModify) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.CookiesToModify[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa2 - } - } - if m.StrictSniHostHeaderCheckChoice != nil { - { - size := m.StrictSniHostHeaderCheckChoice.Size() - i -= size - if _, err := m.StrictSniHostHeaderCheckChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.PathNormalizeChoice != nil { - { - size := m.PathNormalizeChoice.Size() - i -= size - if _, err := m.PathNormalizeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.DisableDefaultErrorPages { - i-- - if m.DisableDefaultErrorPages { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x68 - } - if m.IdleTimeout != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.IdleTimeout)) - i-- - dAtA[i] = 0x58 - } - if len(m.Jwt) > 0 { - for iNdEx := len(m.Jwt) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Jwt[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x52 - } - } - if m.JavascriptInfo != nil { - { - size, err := m.JavascriptInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a - } - if len(m.CustomErrors) > 0 { - keysForCustomErrors := make([]uint32, 0, len(m.CustomErrors)) - for k := range m.CustomErrors { - keysForCustomErrors = append(keysForCustomErrors, uint32(k)) - } - github_com_gogo_protobuf_sortkeys.Uint32s(keysForCustomErrors) - for iNdEx := len(keysForCustomErrors) - 1; iNdEx >= 0; iNdEx-- { - v := m.CustomErrors[uint32(keysForCustomErrors[iNdEx])] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintTypes(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i = encodeVarintTypes(dAtA, i, uint64(keysForCustomErrors[iNdEx])) - i-- - dAtA[i] = 0x8 - i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x42 - } - } - if m.CompressionParams != nil { - { - size, err := m.CompressionParams.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } - if m.BufferPolicy != nil { + if m.L7DdosActionBlock != nil { { - size, err := m.BufferPolicy.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -43015,72 +39234,22 @@ func (m *AdvancedOptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x32 - } - if m.MaxRequestHeaderSize != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.MaxRequestHeaderSize)) + dAtA[i] = 0x7 i-- - dAtA[i] = 0x28 - } - if len(m.ResponseHeadersToRemove) > 0 { - for iNdEx := len(m.ResponseHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ResponseHeadersToRemove[iNdEx]) - copy(dAtA[i:], m.ResponseHeadersToRemove[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ResponseHeadersToRemove[iNdEx]))) - i-- - dAtA[i] = 0x22 - } - } - if len(m.ResponseHeadersToAdd) > 0 { - for iNdEx := len(m.ResponseHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ResponseHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - } - if len(m.RequestHeadersToRemove) > 0 { - for iNdEx := len(m.RequestHeadersToRemove) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.RequestHeadersToRemove[iNdEx]) - copy(dAtA[i:], m.RequestHeadersToRemove[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RequestHeadersToRemove[iNdEx]))) - i-- - dAtA[i] = 0x12 - } - } - if len(m.RequestHeadersToAdd) > 0 { - for iNdEx := len(m.RequestHeadersToAdd) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RequestHeadersToAdd[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + dAtA[i] = 0x82 } return len(dAtA) - i, nil } - -func (m *AdvancedOptionsType_EnablePathNormalize) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AdvancedOptionsType_EnablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.EnablePathNormalize != nil { + if m.L7DdosActionJsChallenge != nil { { - size, err := m.EnablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -43088,20 +39257,22 @@ func (m *AdvancedOptionsType_EnablePathNormalize) MarshalToSizedBuffer(dAtA []by i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x7a + dAtA[i] = 0x7 + i-- + dAtA[i] = 0x8a } return len(dAtA) - i, nil } -func (m *AdvancedOptionsType_DisablePathNormalize) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AdvancedOptionsType_DisablePathNormalize) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.DisablePathNormalize != nil { + if m.L7DdosActionNone != nil { { - size, err := m.DisablePathNormalize.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -43109,22 +39280,22 @@ func (m *AdvancedOptionsType_DisablePathNormalize) MarshalToSizedBuffer(dAtA []b i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x7 i-- - dAtA[i] = 0x82 + dAtA[i] = 0x92 } return len(dAtA) - i, nil } -func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.EnableStrictSniHostHeaderCheck != nil { + if m.ApiRateLimit != nil { { - size, err := m.EnableStrictSniHostHeaderCheck.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -43132,22 +39303,22 @@ func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) MarshalToSizedBuffe i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x7 i-- - dAtA[i] = 0x92 + dAtA[i] = 0xc2 } return len(dAtA) - i, nil } -func (m *AdvancedOptionsType_AdditionalDomains) MarshalTo(dAtA []byte) (int, error) { +func (m *GetSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AdvancedOptionsType_AdditionalDomains) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GetSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.AdditionalDomains != nil { + if m.BotDefenseAdvanced != nil { { - size, err := m.AdditionalDomains.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -43155,37056 +39326,10276 @@ func (m *AdvancedOptionsType_AdditionalDomains) MarshalToSizedBuffer(dAtA []byte i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x1 + dAtA[i] = 0x3f i-- dAtA[i] = 0x9a } return len(dAtA) - i, nil } -func (m *EnableChallenge) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ } - return dAtA[:n], nil -} - -func (m *EnableChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + dAtA[offset] = uint8(v) + return base } - -func (m *EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ProxyTypeHttps) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.CaptchaChallengeParametersChoice != nil { - { - size := m.CaptchaChallengeParametersChoice.Size() - i -= size - if _, err := m.CaptchaChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.HttpRedirect { + n += 2 } - if m.JsChallengeParametersChoice != nil { - { - size := m.JsChallengeParametersChoice.Size() - i -= size - if _, err := m.JsChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.AddHsts { + n += 2 } - if m.MaliciousUserMitigationChoice != nil { - { - size := m.MaliciousUserMitigationChoice.Size() - i -= size - if _, err := m.MaliciousUserMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.TlsCertificatesChoice != nil { + n += m.TlsCertificatesChoice.Size() } - return len(dAtA) - i, nil -} - -func (m *EnableChallenge_DefaultMitigationSettings) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.ServerHeaderChoice != nil { + n += m.ServerHeaderChoice.Size() + } + if m.PathNormalizeChoice != nil { + n += m.PathNormalizeChoice.Size() + } + if m.PortChoice != nil { + n += m.PortChoice.Size() + } + if m.DefaultLbChoice != nil { + n += m.DefaultLbChoice.Size() + } + if m.HeaderTransformationType != nil { + l = m.HeaderTransformationType.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ConnectionIdleTimeout != 0 { + n += 2 + sovTypes(uint64(m.ConnectionIdleTimeout)) + } + if m.HttpProtocolOptions != nil { + l = m.HttpProtocolOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *EnableChallenge_DefaultMitigationSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultMitigationSettings != nil { - { - size, err := m.DefaultMitigationSettings.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *ProxyTypeHttps_TlsParameters) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *EnableChallenge_MaliciousUserMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.TlsParameters != nil { + l = m.TlsParameters.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *EnableChallenge_MaliciousUserMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MaliciousUserMitigation != nil { - { - size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *ProxyTypeHttps_DefaultHeader) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DefaultHeader != nil { + l = m.DefaultHeader.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *EnableChallenge_DefaultJsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *EnableChallenge_DefaultJsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultJsChallengeParameters != nil { - { - size, err := m.DefaultJsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *ProxyTypeHttps_ServerName) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *EnableChallenge_JsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + l = len(m.ServerName) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *EnableChallenge_JsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallengeParameters != nil { - { - size, err := m.JsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (m *ProxyTypeHttps_AppendServerName) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *EnableChallenge_DefaultCaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + l = len(m.AppendServerName) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *EnableChallenge_DefaultCaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultCaptchaChallengeParameters != nil { - { - size, err := m.DefaultCaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 +func (m *ProxyTypeHttps_PassThrough) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.PassThrough != nil { + l = m.PassThrough.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *EnableChallenge_CaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttps_EnablePathNormalize) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnablePathNormalize != nil { + l = m.EnablePathNormalize.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *EnableChallenge_CaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CaptchaChallengeParameters != nil { - { - size, err := m.CaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a +func (m *ProxyTypeHttps_DisablePathNormalize) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisablePathNormalize != nil { + l = m.DisablePathNormalize.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *ProxyTypeHttps_Port) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + n += 1 + sovTypes(uint64(m.Port)) + return n } - -func (m *PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttps_NonDefaultLoadbalancer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NonDefaultLoadbalancer != nil { + l = m.NonDefaultLoadbalancer.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ProxyTypeHttps_DefaultLoadbalancer) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.RuleList != nil { - { - size, err := m.RuleList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 + if m.DefaultLoadbalancer != nil { + l = m.DefaultLoadbalancer.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ChallengeChoice != nil { - { - size := m.ChallengeChoice.Size() - i -= size - if _, err := m.ChallengeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *ProxyTypeHttps_TlsCertParams) Size() (n int) { + if m == nil { + return 0 } - if m.MaliciousUserMitigationChoice != nil { - { - size := m.MaliciousUserMitigationChoice.Size() - i -= size - if _, err := m.MaliciousUserMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.TlsCertParams != nil { + l = m.TlsCertParams.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.TemporaryBlockingParametersChoice != nil { - { - size := m.TemporaryBlockingParametersChoice.Size() - i -= size - if _, err := m.TemporaryBlockingParametersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *ProxyTypeHttps_PortRanges) Size() (n int) { + if m == nil { + return 0 } - if m.CaptchaChallengeParametersChoice != nil { - { - size := m.CaptchaChallengeParametersChoice.Size() - i -= size - if _, err := m.CaptchaChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + l = len(m.PortRanges) + n += 2 + l + sovTypes(uint64(l)) + return n +} +func (m *ProxyTypeHttp) Size() (n int) { + if m == nil { + return 0 } - if m.JsChallengeParametersChoice != nil { - { - size := m.JsChallengeParametersChoice.Size() - i -= size - if _, err := m.JsChallengeParametersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DnsVolterraManaged { + n += 2 } - return len(dAtA) - i, nil + if m.PortChoice != nil { + n += m.PortChoice.Size() + } + return n } -func (m *PolicyBasedChallenge_DefaultJsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttp_Port) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 1 + sovTypes(uint64(m.Port)) + return n } - -func (m *PolicyBasedChallenge_DefaultJsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultJsChallengeParameters != nil { - { - size, err := m.DefaultJsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *ProxyTypeHttp_PortRanges) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + l = len(m.PortRanges) + n += 1 + l + sovTypes(uint64(l)) + return n } -func (m *PolicyBasedChallenge_JsChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HttpRedirect { + n += 2 + } + if m.AddHsts { + n += 2 + } + if m.TlsConfig != nil { + l = m.TlsConfig.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.MtlsChoice != nil { + n += m.MtlsChoice.Size() + } + if m.ServerHeaderChoice != nil { + n += m.ServerHeaderChoice.Size() + } + if m.PathNormalizeChoice != nil { + n += m.PathNormalizeChoice.Size() + } + if m.PortChoice != nil { + n += m.PortChoice.Size() + } + if m.DefaultLbChoice != nil { + n += m.DefaultLbChoice.Size() + } + if m.HeaderTransformationType != nil { + l = m.HeaderTransformationType.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ConnectionIdleTimeout != 0 { + n += 2 + sovTypes(uint64(m.ConnectionIdleTimeout)) + } + if m.HttpProtocolOptions != nil { + l = m.HttpProtocolOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge_JsChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallengeParameters != nil { - { - size, err := m.JsChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *ProxyTypeHttpsAutoCerts_NoMtls) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.NoMtls != nil { + l = m.NoMtls.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts_UseMtls) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UseMtls != nil { + l = m.UseMtls.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultCaptchaChallengeParameters != nil { - { - size, err := m.DefaultCaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DefaultHeader != nil { + l = m.DefaultHeader.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge_CaptchaChallengeParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts_ServerName) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ServerName) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *PolicyBasedChallenge_CaptchaChallengeParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CaptchaChallengeParameters != nil { - { - size, err := m.CaptchaChallengeParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (m *ProxyTypeHttpsAutoCerts_AppendServerName) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + l = len(m.AppendServerName) + n += 1 + l + sovTypes(uint64(l)) + return n } -func (m *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts_PassThrough) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.PassThrough != nil { + l = m.PassThrough.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultTemporaryBlockingParameters != nil { - { - size, err := m.DefaultTemporaryBlockingParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 +func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.EnablePathNormalize != nil { + l = m.EnablePathNormalize.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge_TemporaryUserBlocking) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisablePathNormalize != nil { + l = m.DisablePathNormalize.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *PolicyBasedChallenge_TemporaryUserBlocking) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.TemporaryUserBlocking != nil { - { - size, err := m.TemporaryUserBlocking.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a +func (m *ProxyTypeHttpsAutoCerts_Port) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + n += 2 + sovTypes(uint64(m.Port)) + return n } -func (m *PolicyBasedChallenge_DefaultMitigationSettings) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NonDefaultLoadbalancer != nil { + l = m.NonDefaultLoadbalancer.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *PolicyBasedChallenge_DefaultMitigationSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultMitigationSettings != nil { - { - size, err := m.DefaultMitigationSettings.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a +func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DefaultLoadbalancer != nil { + l = m.DefaultLoadbalancer.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge_MaliciousUserMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProxyTypeHttpsAutoCerts_PortRanges) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.PortRanges) + n += 2 + l + sovTypes(uint64(l)) + return n } - -func (m *PolicyBasedChallenge_MaliciousUserMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MaliciousUserMitigation != nil { - { - size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *HashPolicyListType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.HashPolicy) > 0 { + for _, e := range m.HashPolicy { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x62 } - return len(dAtA) - i, nil -} -func (m *PolicyBasedChallenge_NoChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *PolicyBasedChallenge_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoChallenge != nil { - { - size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x72 +func (m *MirrorPolicyType) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *PolicyBasedChallenge_AlwaysEnableJsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.OriginPool != nil { + l = m.OriginPool.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Percent != nil { + l = m.Percent.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *PolicyBasedChallenge_AlwaysEnableJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AlwaysEnableJsChallenge != nil { - { - size, err := m.AlwaysEnableJsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *RouteSimpleAdvancedOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HashPolicyChoice != nil { + n += m.HashPolicyChoice.Size() + } + if m.Priority != 0 { + n += 1 + sovTypes(uint64(m.Priority)) + } + if len(m.EndpointSubsets) > 0 { + for k, v := range m.EndpointSubsets { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + 1 + len(v) + sovTypes(uint64(len(v))) + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) } - i-- - dAtA[i] = 0x7a } - return len(dAtA) - i, nil -} -func (m *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AlwaysEnableCaptchaChallenge != nil { - { - size, err := m.AlwaysEnableCaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.RewriteChoice != nil { + n += m.RewriteChoice.Size() + } + if len(m.RequestHeadersToAdd) > 0 { + for _, e := range m.RequestHeadersToAdd { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 } - return len(dAtA) - i, nil -} -func (m *ChallengeRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if len(m.RequestHeadersToRemove) > 0 { + for _, s := range m.RequestHeadersToRemove { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } } - return dAtA[:n], nil -} - -func (m *ChallengeRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ChallengeRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Spec != nil { - { - size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.ResponseHeadersToAdd) > 0 { + for _, e := range m.ResponseHeadersToAdd { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x12 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.ResponseHeadersToRemove) > 0 { + for _, s := range m.ResponseHeadersToRemove { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0xa } - return len(dAtA) - i, nil + if m.DisableLocationAdd { + n += 2 + } + if m.WafChoice != nil { + n += m.WafChoice.Size() + } + if m.CorsPolicy != nil { + l = m.CorsPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.SpdyChoice != nil { + n += m.SpdyChoice.Size() + } + if m.WebsocketChoice != nil { + n += m.WebsocketChoice.Size() + } + if m.RetryPolicyChoice != nil { + n += m.RetryPolicyChoice.Size() + } + if m.Timeout != 0 { + n += 2 + sovTypes(uint64(m.Timeout)) + } + if m.BufferChoice != nil { + n += m.BufferChoice.Size() + } + if m.MirroringChoice != nil { + n += m.MirroringChoice.Size() + } + if m.ClusterRetractChoice != nil { + n += m.ClusterRetractChoice.Size() + } + if m.BotDefenseJavascriptInjectionChoice != nil { + n += m.BotDefenseJavascriptInjectionChoice.Size() + } + if m.CsrfPolicy != nil { + l = m.CsrfPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ChallengeRuleList) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.CommonHashPolicy != nil { + l = m.CommonHashPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ChallengeRuleList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SpecificHashPolicy != nil { + l = m.SpecificHashPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ChallengeRuleList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.Rules) > 0 { - for iNdEx := len(m.Rules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Rules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + if m.DisablePrefixRewrite != nil { + l = m.DisablePrefixRewrite.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *HttpHeaderMatcherList) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteSimpleAdvancedOptions_PrefixRewrite) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + l = len(m.PrefixRewrite) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *HttpHeaderMatcherList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_InheritedWaf) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.InheritedWaf != nil { + l = m.InheritedWaf.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *HttpHeaderMatcherList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RouteSimpleAdvancedOptions_DisableSpdy) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.Headers) > 0 { - for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.DisableSpdy != nil { + l = m.DisableSpdy.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *SimpleClientSrcRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteSimpleAdvancedOptions_EnableSpdy) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.EnableSpdy != nil { + l = m.EnableSpdy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SimpleClientSrcRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableWebSocketConfig != nil { + l = m.DisableWebSocketConfig.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SimpleClientSrcRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RouteSimpleAdvancedOptions_WebSocketConfig) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ClientSourceChoice != nil { - { - size := m.ClientSourceChoice.Size() - i -= size - if _, err := m.ClientSourceChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.WebSocketConfig != nil { + l = m.WebSocketConfig.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.Actions) > 0 { - dAtA118 := make([]byte, len(m.Actions)*10) - var j117 int - for _, num := range m.Actions { - for num >= 1<<7 { - dAtA118[j117] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j117++ - } - dAtA118[j117] = uint8(num) - j117++ - } - i -= j117 - copy(dAtA[i:], dAtA118[:j117]) - i = encodeVarintTypes(dAtA, i, uint64(j117)) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x82 + return n +} +func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) Size() (n int) { + if m == nil { + return 0 } - if m.ActionChoice != nil { - { - size := m.ActionChoice.Size() - i -= size - if _, err := m.ActionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DefaultRetryPolicy != nil { + l = m.DefaultRetryPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x52 + return n +} +func (m *RouteSimpleAdvancedOptions_RetryPolicy) Size() (n int) { + if m == nil { + return 0 } - if m.ExpirationTimestamp != nil { - { - size, err := m.ExpirationTimestamp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a + var l int + _ = l + if m.RetryPolicy != nil { + l = m.RetryPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *SimpleClientSrcRule_IpPrefix) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_CommonBuffering) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CommonBuffering != nil { + l = m.CommonBuffering.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SimpleClientSrcRule_IpPrefix) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.IpPrefix) - copy(dAtA[i:], m.IpPrefix) - i = encodeVarintTypes(dAtA, i, uint64(len(m.IpPrefix))) - i-- - dAtA[i] = 0x22 - return len(dAtA) - i, nil +func (m *RouteSimpleAdvancedOptions_BufferPolicy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BufferPolicy != nil { + l = m.BufferPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *SimpleClientSrcRule_AsNumber) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_DisableMirroring) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableMirroring != nil { + l = m.DisableMirroring.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SimpleClientSrcRule_AsNumber) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i = encodeVarintTypes(dAtA, i, uint64(m.AsNumber)) - i-- - dAtA[i] = 0x28 - return len(dAtA) - i, nil +func (m *RouteSimpleAdvancedOptions_MirrorPolicy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MirrorPolicy != nil { + l = m.MirrorPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *SimpleClientSrcRule_SkipProcessing) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_RetractCluster) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RetractCluster != nil { + l = m.RetractCluster.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SimpleClientSrcRule_SkipProcessing) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SkipProcessing != nil { - { - size, err := m.SkipProcessing.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 +func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DoNotRetractCluster != nil { + l = m.DoNotRetractCluster.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *SimpleClientSrcRule_WafSkipProcessing) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.InheritedBotDefenseJavascriptInjection != nil { + l = m.InheritedBotDefenseJavascriptInjection.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SimpleClientSrcRule_WafSkipProcessing) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.WafSkipProcessing != nil { - { - size, err := m.WafSkipProcessing.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a +func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.BotDefenseJavascriptInjection != nil { + l = m.BotDefenseJavascriptInjection.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *SimpleClientSrcRule_BotSkipProcessing) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SimpleClientSrcRule_BotSkipProcessing) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotSkipProcessing != nil { - { - size, err := m.BotSkipProcessing.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x72 +func (m *RouteSimpleAdvancedOptions_DisableWaf) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *SimpleClientSrcRule_HttpHeader) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SimpleClientSrcRule_HttpHeader) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HttpHeader != nil { - { - size, err := m.HttpHeader.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7a + var l int + _ = l + if m.DisableWaf != nil { + l = m.DisableWaf.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *SimpleClientSrcRule_UserIdentifier) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *SimpleClientSrcRule_UserIdentifier) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.UserIdentifier) - copy(dAtA[i:], m.UserIdentifier) - i = encodeVarintTypes(dAtA, i, uint64(len(m.UserIdentifier))) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x8a - return len(dAtA) - i, nil +func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoRetryPolicy != nil { + l = m.NoRetryPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *DDoSClientSource) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteSimpleAdvancedOptions_RegexRewrite) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.RegexRewrite != nil { + l = m.RegexRewrite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *DDoSClientSource) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteSimpleAdvancedOptions_AppFirewall) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AppFirewall != nil { + l = m.AppFirewall.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *DDoSClientSource) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RouteTypeSimpleWithDefaultOriginPool) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.TlsFingerprintMatcher != nil { - { - size, err := m.TlsFingerprintMatcher.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if m.HttpMethod != 0 { + n += 1 + sovTypes(uint64(m.HttpMethod)) } - if len(m.CountryList) > 0 { - dAtA127 := make([]byte, len(m.CountryList)*10) - var j126 int - for _, num := range m.CountryList { - for num >= 1<<7 { - dAtA127[j126] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j126++ - } - dAtA127[j126] = uint8(num) - j126++ - } - i -= j126 - copy(dAtA[i:], dAtA127[:j126]) - i = encodeVarintTypes(dAtA, i, uint64(j126)) - i-- - dAtA[i] = 0x1a + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.AsnList != nil { - { - size, err := m.AsnList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.HostRewriteParams != nil { + n += m.HostRewriteParams.Size() } - return len(dAtA) - i, nil + return n } -func (m *APIProtectionRuleAction) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *APIProtectionRuleAction) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APIProtectionRuleAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.Action != nil { - { - size := m.Action.Size() - i -= size - if _, err := m.Action.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.AutoHostRewrite != nil { + l = m.AutoHostRewrite.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *APIProtectionRuleAction_Allow) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *APIProtectionRuleAction_Allow) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Allow != nil { - { - size, err := m.Allow.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *APIProtectionRuleAction_Deny) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + l = len(m.HostRewrite) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *APIProtectionRuleAction_Deny) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Deny != nil { - { - size, err := m.Deny.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *APIEndpointProtectionRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.DisableHostRewrite != nil { + l = m.DisableHostRewrite.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil -} - -func (m *APIEndpointProtectionRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *APIEndpointProtectionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RouteTypeSimple) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.DomainChoice != nil { - { - size := m.DomainChoice.Size() - i -= size - if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.ClientMatcher != nil { - { - size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a + if m.HttpMethod != 0 { + n += 1 + sovTypes(uint64(m.HttpMethod)) } - if m.RequestMatcher != nil { - { - size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.OriginPools) > 0 { + for _, e := range m.OriginPools { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x32 } - if m.ApiEndpointMethod != nil { - { - size, err := m.ApiEndpointMethod.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if m.HostRewriteParams != nil { + n += m.HostRewriteParams.Size() } - if len(m.ApiEndpointPath) > 0 { - i -= len(m.ApiEndpointPath) - copy(dAtA[i:], m.ApiEndpointPath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiEndpointPath))) - i-- - dAtA[i] = 0x22 + if m.AdvancedOptions != nil { + l = m.AdvancedOptions.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.Action != nil { - { - size, err := m.Action.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Headers) > 0 { + for _, e := range m.Headers { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x12 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.IncomingPort != nil { + l = m.IncomingPort.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *APIEndpointProtectionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *APIEndpointProtectionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a +func (m *RouteTypeSimple_AutoHostRewrite) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *APIEndpointProtectionRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APIEndpointProtectionRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.SpecificDomain) - copy(dAtA[i:], m.SpecificDomain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SpecificDomain))) - i-- - dAtA[i] = 0x52 - return len(dAtA) - i, nil + var l int + _ = l + if m.AutoHostRewrite != nil { + l = m.AutoHostRewrite.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *APIGroupProtectionRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteTypeSimple_HostRewrite) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + l = len(m.HostRewrite) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *APIGroupProtectionRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteTypeSimple_DisableHostRewrite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableHostRewrite != nil { + l = m.DisableHostRewrite.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *APIGroupProtectionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RouteTypeRedirect) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.BasePath) > 0 { - i -= len(m.BasePath) - copy(dAtA[i:], m.BasePath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePath))) - i-- - dAtA[i] = 0x52 + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.DomainChoice != nil { - { - size := m.DomainChoice.Size() - i -= size - if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.HttpMethod != 0 { + n += 1 + sovTypes(uint64(m.HttpMethod)) } - if m.ClientMatcher != nil { - { - size, err := m.ClientMatcher.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 + if m.RouteRedirect != nil { + l = m.RouteRedirect.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.RequestMatcher != nil { - { - size, err := m.RequestMatcher.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Headers) > 0 { + for _, e := range m.Headers { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x2a } - if len(m.ApiGroup) > 0 { - i -= len(m.ApiGroup) - copy(dAtA[i:], m.ApiGroup) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiGroup))) - i-- - dAtA[i] = 0x22 + if m.IncomingPort != nil { + l = m.IncomingPort.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.Action != nil { - { - size, err := m.Action.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + return n +} + +func (m *RouteTypeDirectResponse) Size() (n int) { + if m == nil { + return 0 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + var l int + _ = l + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.HttpMethod != 0 { + n += 1 + sovTypes(uint64(m.HttpMethod)) + } + if m.RouteDirectResponse != nil { + l = m.RouteDirectResponse.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Headers) > 0 { + for _, e := range m.Headers { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0xa } - return len(dAtA) - i, nil + if m.IncomingPort != nil { + l = m.IncomingPort.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *APIGroupProtectionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteTypeCustomRoute) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RouteRef != nil { + l = m.RouteRef.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *APIGroupProtectionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 +func (m *RouteType) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *APIGroupProtectionRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.Choice != nil { + n += m.Choice.Size() + } + return n } -func (m *APIGroupProtectionRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.SpecificDomain) - copy(dAtA[i:], m.SpecificDomain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SpecificDomain))) - i-- - dAtA[i] = 0x4a - return len(dAtA) - i, nil -} -func (m *APIProtectionRules) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteType_SimpleRoute) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *APIProtectionRules) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APIProtectionRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.ApiGroupsRules) > 0 { - for iNdEx := len(m.ApiGroupsRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ApiGroupsRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + if m.SimpleRoute != nil { + l = m.SimpleRoute.Size() + n += 1 + l + sovTypes(uint64(l)) } - if len(m.ApiEndpointRules) > 0 { - for iNdEx := len(m.ApiEndpointRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ApiEndpointRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + return n +} +func (m *RouteType_RedirectRoute) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.RedirectRoute != nil { + l = m.RedirectRoute.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *DDoSMitigationRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *RouteType_DirectResponseRoute) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.DirectResponseRoute != nil { + l = m.DirectResponseRoute.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *DDoSMitigationRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *RouteType_CustomRouteObject) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CustomRouteObject != nil { + l = m.CustomRouteObject.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *DDoSMitigationRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *AdvancedOptionsType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ExpirationTimestamp != nil { - { - size, err := m.ExpirationTimestamp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.RequestHeadersToAdd) > 0 { + for _, e := range m.RequestHeadersToAdd { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x52 } - if m.MitigationChoice != nil { - { - size := m.MitigationChoice.Size() - i -= size - if _, err := m.MitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.RequestHeadersToRemove) > 0 { + for _, s := range m.RequestHeadersToRemove { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } } - if m.MitigationAction != nil { - { - size := m.MitigationAction.Size() - i -= size - if _, err := m.MitigationAction.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.ResponseHeadersToAdd) > 0 { + for _, e := range m.ResponseHeadersToAdd { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.ResponseHeadersToRemove) > 0 { + for _, s := range m.ResponseHeadersToRemove { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0xa } - return len(dAtA) - i, nil -} - -func (m *DDoSMitigationRule_Block) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *DDoSMitigationRule_Block) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Block != nil { - { - size, err := m.Block.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + if m.MaxRequestHeaderSize != 0 { + n += 1 + sovTypes(uint64(m.MaxRequestHeaderSize)) } - return len(dAtA) - i, nil -} -func (m *DDoSMitigationRule_DdosClientSource) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *DDoSMitigationRule_DdosClientSource) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DdosClientSource != nil { - { - size, err := m.DdosClientSource.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.BufferPolicy != nil { + l = m.BufferPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.CompressionParams != nil { + l = m.CompressionParams.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.CustomErrors) > 0 { + for k, v := range m.CustomErrors { + _ = k + _ = v + mapEntrySize := 1 + sovTypes(uint64(k)) + 1 + len(v) + sovTypes(uint64(len(v))) + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) } - i-- - dAtA[i] = 0x42 } - return len(dAtA) - i, nil -} -func (m *DDoSMitigationRule_IpPrefixList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *DDoSMitigationRule_IpPrefixList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.IpPrefixList != nil { - { - size, err := m.IpPrefixList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.JavascriptInfo != nil { + l = m.JavascriptInfo.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Jwt) > 0 { + for _, e := range m.Jwt { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x4a } - return len(dAtA) - i, nil -} -func (m *CustomIpAllowedList) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.IdleTimeout != 0 { + n += 1 + sovTypes(uint64(m.IdleTimeout)) } - return dAtA[:n], nil -} - -func (m *CustomIpAllowedList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.DisableDefaultErrorPages { + n += 2 + } + if m.PathNormalizeChoice != nil { + n += m.PathNormalizeChoice.Size() + } + if m.StrictSniHostHeaderCheckChoice != nil { + n += m.StrictSniHostHeaderCheckChoice.Size() + } + if len(m.CookiesToModify) > 0 { + for _, e := range m.CookiesToModify { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + return n } -func (m *CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *AdvancedOptionsType_EnablePathNormalize) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.RateLimiterAllowedPrefixes) > 0 { - for iNdEx := len(m.RateLimiterAllowedPrefixes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RateLimiterAllowedPrefixes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb2 - } + if m.EnablePathNormalize != nil { + l = m.EnablePathNormalize.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *RateLimitConfigType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *AdvancedOptionsType_DisablePathNormalize) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *RateLimitConfigType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RateLimitConfigType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.PolicyChoice != nil { - { - size := m.PolicyChoice.Size() - i -= size - if _, err := m.PolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.DisablePathNormalize != nil { + l = m.DisablePathNormalize.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.IpAllowedListChoice != nil { - { - size := m.IpAllowedListChoice.Size() - i -= size - if _, err := m.IpAllowedListChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) Size() (n int) { + if m == nil { + return 0 } - if m.RateLimiter != nil { - { - size, err := m.RateLimiter.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.EnableStrictSniHostHeaderCheck != nil { + l = m.EnableStrictSniHostHeaderCheck.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *RateLimitConfigType_NoIpAllowedList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *RateLimitConfigType_NoIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoIpAllowedList != nil { - { - size, err := m.NoIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *AdvancedOptionsType_AdditionalDomains) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *RateLimitConfigType_IpAllowedList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RateLimitConfigType_IpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.IpAllowedList != nil { - { - size, err := m.IpAllowedList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 + var l int + _ = l + if m.AdditionalDomains != nil { + l = m.AdditionalDomains.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *RateLimitConfigType_CustomIpAllowedList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *RateLimitConfigType_CustomIpAllowedList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CustomIpAllowedList != nil { - { - size, err := m.CustomIpAllowedList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *DDoSClientSource) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *RateLimitConfigType_NoPolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RateLimitConfigType_NoPolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoPolicies != nil { - { - size, err := m.NoPolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 + var l int + _ = l + if m.AsnList != nil { + l = m.AsnList.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *RateLimitConfigType_Policies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RateLimitConfigType_Policies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Policies != nil { - { - size, err := m.Policies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.CountryList) > 0 { + l = 0 + for _, e := range m.CountryList { + l += sovTypes(uint64(e)) } - i-- - dAtA[i] = 0x6a + n += 1 + sovTypes(uint64(l)) + l } - return len(dAtA) - i, nil -} -func (m *ServicePolicyList) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.TlsFingerprintMatcher != nil { + l = m.TlsFingerprintMatcher.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil -} - -func (m *ServicePolicyList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *ServicePolicyList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *DDoSMitigationRule) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.Policies) > 0 { - for iNdEx := len(m.Policies) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Policies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *ApiDefinitionList) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.MitigationAction != nil { + n += m.MitigationAction.Size() } - return dAtA[:n], nil -} - -func (m *ApiDefinitionList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.MitigationChoice != nil { + n += m.MitigationChoice.Size() + } + if m.ExpirationTimestamp != nil { + l = m.ExpirationTimestamp.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *ApiDefinitionList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *DDoSMitigationRule_Block) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.ApiDefinitions) > 0 { - for iNdEx := len(m.ApiDefinitions) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ApiDefinitions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.Block != nil { + l = m.Block.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ApiDiscoverySetting) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *DDoSMitigationRule_DdosClientSource) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ApiDiscoverySetting) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ApiDiscoverySetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.DiscoveredApiSettings != nil { - { - size, err := m.DiscoveredApiSettings.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 + if m.DdosClientSource != nil { + l = m.DdosClientSource.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.SensitiveDataDetectionRules != nil { - { - size, err := m.SensitiveDataDetectionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + return n +} +func (m *DDoSMitigationRule_IpPrefixList) Size() (n int) { + if m == nil { + return 0 } - if m.LearnFromRedirectTraffic != nil { - { - size := m.LearnFromRedirectTraffic.Size() - i -= size - if _, err := m.LearnFromRedirectTraffic.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.IpPrefixList != nil { + l = m.IpPrefixList.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *SingleLoadBalancerAppSetting) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiDiscoveryChoice != nil { + n += m.ApiDiscoveryChoice.Size() + } + if m.MaliciousUserDetectionChoice != nil { + n += m.MaliciousUserDetectionChoice.Size() + } + return n } -func (m *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableLearnFromRedirectTraffic != nil { - { - size, err := m.DisableLearnFromRedirectTraffic.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *SingleLoadBalancerAppSetting_EnableDiscovery) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.EnableDiscovery != nil { + l = m.EnableDiscovery.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableLearnFromRedirectTraffic != nil { - { - size, err := m.EnableLearnFromRedirectTraffic.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *SingleLoadBalancerAppSetting_DisableDiscovery) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisableDiscovery != nil { + l = m.DisableDiscovery.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *EnableDDoSDetectionSetting) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.EnableMaliciousUserDetection != nil { + l = m.EnableMaliciousUserDetection.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *EnableDDoSDetectionSetting) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableMaliciousUserDetection != nil { + l = m.DisableMaliciousUserDetection.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *EnableDDoSDetectionSetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *OriginServerSubsetRuleListType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.AutoMitigationChoice != nil { - { - size := m.AutoMitigationChoice.Size() - i -= size - if _, err := m.AutoMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.OriginServerSubsetRules) > 0 { + for _, e := range m.OriginServerSubsetRules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - return len(dAtA) - i, nil + return n } -func (m *EnableDDoSDetectionSetting_EnableAutoMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ClientSideDefenseType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Policy != nil { + l = m.Policy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *EnableDDoSDetectionSetting_EnableAutoMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableAutoMitigation != nil { - { - size, err := m.EnableAutoMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *ClientSideDefensePolicyType) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *EnableDDoSDetectionSetting_DisableAutoMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.JavaScriptChoice != nil { + n += m.JavaScriptChoice.Size() + } + return n } -func (m *EnableDDoSDetectionSetting_DisableAutoMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableAutoMitigation != nil { - { - size, err := m.DisableAutoMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *ClientSideDefensePolicyType_DisableJsInsert) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *AutoMitigationAction) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.DisableJsInsert != nil { + l = m.DisableJsInsert.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil + return n } - -func (m *AutoMitigationAction) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ClientSideDefensePolicyType_JsInsertAllPages) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JsInsertAllPages != nil { + l = m.JsInsertAllPages.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *AutoMitigationAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ClientSideDefensePolicyType_JsInsertAllPagesExcept) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.Action != nil { - { - size := m.Action.Size() - i -= size - if _, err := m.Action.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.JsInsertAllPagesExcept != nil { + l = m.JsInsertAllPagesExcept.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *AutoMitigationAction_Block) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ClientSideDefensePolicyType_JsInsertionRules) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JsInsertionRules != nil { + l = m.JsInsertionRules.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *AutoMitigationAction_Block) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Block != nil { - { - size, err := m.Block.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *CSDJavaScriptInsertAllWithExceptionsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ExcludeList) > 0 { + for _, e := range m.ExcludeList { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x12 } - return len(dAtA) - i, nil -} -func (m *AutoMitigationAction_JsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *AutoMitigationAction_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallenge != nil { - { - size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *CSDJavaScriptInsertType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1a } - return len(dAtA) - i, nil -} -func (m *SingleLoadBalancerAppSetting) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if len(m.ExcludeList) > 0 { + for _, e := range m.ExcludeList { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } } - return dAtA[:n], nil -} - -func (m *SingleLoadBalancerAppSetting) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *SingleLoadBalancerAppSetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *CSDJavaScriptInsertionRule) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.MaliciousUserDetectionChoice != nil { - { - size := m.MaliciousUserDetectionChoice.Size() - i -= size - if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.DdosDetectionChoice != nil { - { - size := m.DdosDetectionChoice.Size() - i -= size - if _, err := m.DdosDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.DomainMatcherChoice != nil { + n += m.DomainMatcherChoice.Size() } - if m.ApiDiscoveryChoice != nil { - { - size := m.ApiDiscoveryChoice.Size() - i -= size - if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *SingleLoadBalancerAppSetting_EnableDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *SingleLoadBalancerAppSetting_EnableDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableDiscovery != nil { - { - size, err := m.EnableDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *CSDJavaScriptInsertionRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *SingleLoadBalancerAppSetting_DisableDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SingleLoadBalancerAppSetting_DisableDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableDiscovery != nil { - { - size, err := m.DisableDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *SingleLoadBalancerAppSetting_EnableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CSDJavaScriptInsertionRule_Domain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Domain != nil { + l = m.Domain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SingleLoadBalancerAppSetting_EnableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableDdosDetection != nil { - { - size, err := m.EnableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *BotDefenseAdvancedPolicyType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ProtectedAppEndpoints) > 0 { + for _, e := range m.ProtectedAppEndpoints { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x2a } - return len(dAtA) - i, nil -} -func (m *SingleLoadBalancerAppSetting_DisableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + l = len(m.JsDownloadPath) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.MobileSdkChoice != nil { + n += m.MobileSdkChoice.Size() + } + return n } -func (m *SingleLoadBalancerAppSetting_DisableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableDdosDetection != nil { - { - size, err := m.DisableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (m *BotDefenseAdvancedPolicyType_DisableMobileSdk) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisableMobileSdk != nil { + l = m.DisableMobileSdk.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *BotDefenseAdvancedPolicyType_MobileSdkConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MobileSdkConfig != nil { + l = m.MobileSdkConfig.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableMaliciousUserDetection != nil { - { - size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 - } - return len(dAtA) - i, nil -} -func (m *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableMaliciousUserDetection != nil { - { - size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a +func (m *BotAdvancedMobileSDKConfigType) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *APISpecificationSettings) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.MobileIdentifier != nil { + l = m.MobileIdentifier.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil -} - -func (m *APISpecificationSettings) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *APISpecificationSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ProtectedAppEndpointType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ValidationTargetChoice != nil { - { - size := m.ValidationTargetChoice.Size() - i -= size - if _, err := m.ValidationTargetChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.ApiDefinition != nil { - { - size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.DomainMatcherChoice != nil { + n += m.DomainMatcherChoice.Size() } - return len(dAtA) - i, nil -} - -func (m *APISpecificationSettings_ValidationDisabled) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APISpecificationSettings_ValidationDisabled) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ValidationDisabled != nil { - { - size, err := m.ValidationDisabled.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Query) > 0 { + for _, e := range m.Query { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1a } - return len(dAtA) - i, nil -} -func (m *APISpecificationSettings_ValidationAllSpecEndpoints) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APISpecificationSettings_ValidationAllSpecEndpoints) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ValidationAllSpecEndpoints != nil { - { - size, err := m.ValidationAllSpecEndpoints.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.RequestBody) > 0 { + for _, e := range m.RequestBody { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x22 } - return len(dAtA) - i, nil -} -func (m *APISpecificationSettings_ValidationCustomList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *APISpecificationSettings_ValidationCustomList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ValidationCustomList != nil { - { - size, err := m.ValidationCustomList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.HttpMethods) > 0 { + l = 0 + for _, e := range m.HttpMethods { + l += sovTypes(uint64(e)) } - i-- - dAtA[i] = 0x2a + n += 1 + sovTypes(uint64(l)) + l } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationAllSpecEndpointsSettings) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.AppTrafficTypeChoice != nil { + n += m.AppTrafficTypeChoice.Size() } - return dAtA[:n], nil -} - -func (m *OpenApiValidationAllSpecEndpointsSettings) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.FlowLabelChoice != nil { + n += m.FlowLabelChoice.Size() + } + return n } -func (m *OpenApiValidationAllSpecEndpointsSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ProtectedAppEndpointType_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.Settings != nil { - { - size, err := m.Settings.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } - if m.OversizedBodyChoice != nil { - { - size := m.OversizedBodyChoice.Size() - i -= size - if _, err := m.OversizedBodyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.FallThroughMode != nil { - { - size, err := m.FallThroughMode.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + return n +} +func (m *ProtectedAppEndpointType_Domain) Size() (n int) { + if m == nil { + return 0 } - if m.ValidationMode != nil { - { - size, err := m.ValidationMode.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.Domain != nil { + l = m.Domain.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.OversizedBodySkipValidation != nil { - { - size, err := m.OversizedBodySkipValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *ProtectedAppEndpointType_WebClient) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.WebClient != nil { + l = m.WebClient.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProtectedAppEndpointType_MobileClient) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MobileClient != nil { + l = m.MobileClient.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.OversizedBodyFailValidation != nil { - { - size, err := m.OversizedBodyFailValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *ProtectedAppEndpointType_WebMobileClient) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.WebMobileClient != nil { + l = m.WebMobileClient.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *OpenApiValidationCommonSettings) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *ProtectedAppEndpointType_UndefinedFlowLabel) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.UndefinedFlowLabel != nil { + l = m.UndefinedFlowLabel.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *OpenApiValidationCommonSettings) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ProtectedAppEndpointType_FlowLabel) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.FlowLabel != nil { + l = m.FlowLabel.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *OpenApiValidationCommonSettings) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *RequestBody) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.PropertyValidationSettingsChoice != nil { - { - size := m.PropertyValidationSettingsChoice.Size() - i -= size - if _, err := m.PropertyValidationSettingsChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) } - if m.OversizedBodyChoice != nil { - { - size := m.OversizedBodyChoice.Size() - i -= size - if _, err := m.OversizedBodyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.ValueType != nil { + n += m.ValueType.Size() } - return len(dAtA) - i, nil -} - -func (m *OpenApiValidationCommonSettings_OversizedBodySkipValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *OpenApiValidationCommonSettings_OversizedBodySkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.OversizedBodySkipValidation != nil { - { - size, err := m.OversizedBodySkipValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *RequestBody_ExactValue) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationCommonSettings_OversizedBodyFailValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + l = len(m.ExactValue) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *OpenApiValidationCommonSettings_OversizedBodyFailValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.OversizedBodyFailValidation != nil { - { - size, err := m.OversizedBodyFailValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *RequestBody_RegexValue) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + l = len(m.RegexValue) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PropertyValidationSettingsDefault != nil { - { - size, err := m.PropertyValidationSettingsDefault.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *Query) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PropertyValidationSettingsCustom != nil { - { - size, err := m.PropertyValidationSettingsCustom.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *ValidationPropertySetting) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.ValueType != nil { + n += m.ValueType.Size() } - return dAtA[:n], nil + return n } -func (m *ValidationPropertySetting) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *Query_ExactValue) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ExactValue) + n += 1 + l + sovTypes(uint64(l)) + return n } - -func (m *ValidationPropertySetting) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *Query_RegexValue) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.Headers != nil { - { - size, err := m.Headers.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + l = len(m.RegexValue) + n += 1 + l + sovTypes(uint64(l)) + return n +} +func (m *Query_CheckPresence) Size() (n int) { + if m == nil { + return 0 } - if m.QueryParameters != nil { - { - size, err := m.QueryParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.CheckPresence != nil { + l = m.CheckPresence.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ValidationSettingForQueryParameters) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *ShapeBotDefenseType) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ValidationSettingForQueryParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidationSettingForQueryParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.AdditionalParametersChoice != nil { - { - size := m.AdditionalParametersChoice.Size() - i -= size - if _, err := m.AdditionalParametersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.RegionalEndpoint != 0 { + n += 1 + sovTypes(uint64(m.RegionalEndpoint)) } - return len(dAtA) - i, nil + if m.Policy != nil { + l = m.Policy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Timeout != 0 { + n += 1 + sovTypes(uint64(m.Timeout)) + } + if m.CorsSupportChoice != nil { + n += m.CorsSupportChoice.Size() + } + return n } -func (m *ValidationSettingForQueryParameters_AllowAdditionalParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidationSettingForQueryParameters_AllowAdditionalParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AllowAdditionalParameters != nil { - { - size, err := m.AllowAdditionalParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *ShapeBotDefenseType_EnableCorsSupport) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ValidationSettingForQueryParameters_DisallowAdditionalParameters) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidationSettingForQueryParameters_DisallowAdditionalParameters) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisallowAdditionalParameters != nil { - { - size, err := m.DisallowAdditionalParameters.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + var l int + _ = l + if m.EnableCorsSupport != nil { + l = m.EnableCorsSupport.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *ValidationSettingForHeaders) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *ShapeBotDefenseType_DisableCorsSupport) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ValidationSettingForHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidationSettingForHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.AdditionalHeadersChoice != nil { - { - size := m.AdditionalHeadersChoice.Size() - i -= size - if _, err := m.AdditionalHeadersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.DisableCorsSupport != nil { + l = m.DisableCorsSupport.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *ValidationSettingForHeaders_AllowAdditionalHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ValidationSettingForHeaders_AllowAdditionalHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AllowAdditionalHeaders != nil { - { - size, err := m.AllowAdditionalHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *BotDefenseAdvancedType) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ValidationSettingForHeaders_DisallowAdditionalHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidationSettingForHeaders_DisallowAdditionalHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisallowAdditionalHeaders != nil { - { - size, err := m.DisallowAdditionalHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + var l int + _ = l + if m.Web != nil { + l = m.Web.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationMode) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.Mobile != nil { + l = m.Mobile.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil -} - -func (m *OpenApiValidationMode) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.Policy != nil { + l = m.Policy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *OpenApiValidationMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ShapeBotDefensePolicyType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ResponseValidationModeChoice != nil { - { - size := m.ResponseValidationModeChoice.Size() - i -= size - if _, err := m.ResponseValidationModeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.ProtectedAppEndpoints) > 0 { + for _, e := range m.ProtectedAppEndpoints { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - if m.ValidationModeChoice != nil { - { - size := m.ValidationModeChoice.Size() - i -= size - if _, err := m.ValidationModeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + l = len(m.JsDownloadPath) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *OpenApiValidationMode_ValidationModeActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationMode_ValidationModeActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ValidationModeActive != nil { - { - size, err := m.ValidationModeActive.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + if m.JavaScriptChoice != nil { + n += m.JavaScriptChoice.Size() } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationMode_SkipValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationMode_SkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SkipValidation != nil { - { - size, err := m.SkipValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + if m.MobileSdkChoice != nil { + n += m.MobileSdkChoice.Size() } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationMode_SkipResponseValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationMode_SkipResponseValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SkipResponseValidation != nil { - { - size, err := m.SkipResponseValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if m.JavascriptMode != 0 { + n += 1 + sovTypes(uint64(m.JavascriptMode)) } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationMode_ResponseValidationModeActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *OpenApiValidationMode_ResponseValidationModeActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ResponseValidationModeActive != nil { - { - size, err := m.ResponseValidationModeActive.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (m *ShapeBotDefensePolicyType_DisableJsInsert) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *OpenApiFallThroughMode) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.DisableJsInsert != nil { + l = m.DisableJsInsert.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil -} - -func (m *OpenApiFallThroughMode) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *OpenApiFallThroughMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ShapeBotDefensePolicyType_JsInsertAllPages) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.FallThroughModeChoice != nil { - { - size := m.FallThroughModeChoice.Size() - i -= size - if _, err := m.FallThroughModeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.JsInsertAllPages != nil { + l = m.JsInsertAllPages.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *OpenApiFallThroughMode_FallThroughModeAllow) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *OpenApiFallThroughMode_FallThroughModeAllow) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.FallThroughModeAllow != nil { - { - size, err := m.FallThroughModeAllow.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *OpenApiFallThroughMode_FallThroughModeCustom) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.JsInsertAllPagesExcept != nil { + l = m.JsInsertAllPagesExcept.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *OpenApiFallThroughMode_FallThroughModeCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.FallThroughModeCustom != nil { - { - size, err := m.FallThroughModeCustom.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *ShapeBotDefensePolicyType_JsInsertionRules) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.JsInsertionRules != nil { + l = m.JsInsertionRules.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *CustomFallThroughMode) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *ShapeBotDefensePolicyType_DisableMobileSdk) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.DisableMobileSdk != nil { + l = m.DisableMobileSdk.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *CustomFallThroughMode) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ShapeBotDefensePolicyType_MobileSdkConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MobileSdkConfig != nil { + l = m.MobileSdkConfig.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *CustomFallThroughMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *MobileTrafficIdentifierType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.OpenApiValidationRules) > 0 { - for iNdEx := len(m.OpenApiValidationRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.OpenApiValidationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if len(m.Headers) > 0 { + for _, e := range m.Headers { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - return len(dAtA) - i, nil + return n } -func (m *FallThroughRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *MobileSDKConfigType) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *FallThroughRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + l = len(m.ReloadHeaderName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.MobileIdentifier != nil { + l = m.MobileIdentifier.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *FallThroughRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *AppEndpointType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ConditionTypeChoice != nil { - { - size := m.ConditionTypeChoice.Size() - i -= size - if _, err := m.ConditionTypeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.ActionChoice != nil { - { - size := m.ActionChoice.Size() - i -= size - if _, err := m.ActionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.HttpMethods) > 0 { + l = 0 + for _, e := range m.HttpMethods { + l += sovTypes(uint64(e)) } + n += 1 + sovTypes(uint64(l)) + l } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.Protocol != 0 { + n += 1 + sovTypes(uint64(m.Protocol)) } - return len(dAtA) - i, nil + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.DomainMatcherChoice != nil { + n += m.DomainMatcherChoice.Size() + } + if m.AppTrafficTypeChoice != nil { + n += m.AppTrafficTypeChoice.Size() + } + if m.Mitigation != nil { + l = m.Mitigation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.FlowLabelChoice != nil { + n += m.FlowLabelChoice.Size() + } + if m.GoodbotChoice != nil { + n += m.GoodbotChoice.Size() + } + return n } -func (m *FallThroughRule_ActionSkip) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *AppEndpointType_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *FallThroughRule_ActionSkip) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActionSkip != nil { - { - size, err := m.ActionSkip.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *AppEndpointType_Domain) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.Domain != nil { + l = m.Domain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *FallThroughRule_ActionReport) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *AppEndpointType_Web) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Web != nil { + l = m.Web.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *FallThroughRule_ActionReport) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActionReport != nil { - { - size, err := m.ActionReport.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *AppEndpointType_Mobile) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.Mobile != nil { + l = m.Mobile.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *FallThroughRule_ActionBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *FallThroughRule_ActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActionBlock != nil { - { - size, err := m.ActionBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *AppEndpointType_WebMobile) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *FallThroughRule_BasePath) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.WebMobile != nil { + l = m.WebMobile.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *FallThroughRule_BasePath) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.BasePath) - copy(dAtA[i:], m.BasePath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePath))) - i-- - dAtA[i] = 0x42 - return len(dAtA) - i, nil +func (m *AppEndpointType_UndefinedFlowLabel) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UndefinedFlowLabel != nil { + l = m.UndefinedFlowLabel.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *FallThroughRule_ApiGroup) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *AppEndpointType_FlowLabel) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.FlowLabel != nil { + l = m.FlowLabel.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *FallThroughRule_ApiGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ApiGroup) - copy(dAtA[i:], m.ApiGroup) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiGroup))) - i-- - dAtA[i] = 0x4a - return len(dAtA) - i, nil +func (m *AppEndpointType_MitigateGoodBots) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MitigateGoodBots != nil { + l = m.MitigateGoodBots.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *FallThroughRule_ApiEndpoint) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *AppEndpointType_AllowGoodBots) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AllowGoodBots != nil { + l = m.AllowGoodBots.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *FallThroughRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiEndpoint != nil { - { - size, err := m.ApiEndpoint.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *WebMobileTrafficType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Header != nil { + l = m.Header.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Headers) > 0 { + for _, e := range m.Headers { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x52 } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationModeActive) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.MobileIdentifier != 0 { + n += 1 + sovTypes(uint64(m.MobileIdentifier)) } - return dAtA[:n], nil -} - -func (m *OpenApiValidationModeActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *OpenApiValidationModeActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ShapeJavaScriptInsertType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.RequestValidationProperties) > 0 { - dAtA198 := make([]byte, len(m.RequestValidationProperties)*10) - var j197 int - for _, num := range m.RequestValidationProperties { - for num >= 1<<7 { - dAtA198[j197] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j197++ - } - dAtA198[j197] = uint8(num) - j197++ + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i -= j197 - copy(dAtA[i:], dAtA198[:j197]) - i = encodeVarintTypes(dAtA, i, uint64(j197)) - i-- - dAtA[i] = 0x22 } - if m.ValidationEnforcementType != nil { - { - size := m.ValidationEnforcementType.Size() - i -= size - if _, err := m.ValidationEnforcementType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.ExcludeList) > 0 { + for _, e := range m.ExcludeList { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - return len(dAtA) - i, nil -} - -func (m *OpenApiValidationModeActive_EnforcementReport) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *OpenApiValidationModeActive_EnforcementReport) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnforcementReport != nil { - { - size, err := m.EnforcementReport.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *ShapeJavaScriptInsertAllWithExceptionsType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.JavascriptLocation != 0 { + n += 1 + sovTypes(uint64(m.JavascriptLocation)) + } + if len(m.ExcludeList) > 0 { + for _, e := range m.ExcludeList { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x12 } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationModeActive_EnforcementBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *OpenApiValidationModeActive_EnforcementBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnforcementBlock != nil { - { - size, err := m.EnforcementBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *ShapeJavaScriptInsertAllType) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationModeActiveResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.JavascriptLocation != 0 { + n += 1 + sovTypes(uint64(m.JavascriptLocation)) } - return dAtA[:n], nil -} - -func (m *OpenApiValidationModeActiveResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } -func (m *OpenApiValidationModeActiveResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *ShapeJavaScriptInsertionRule) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.ResponseValidationProperties) > 0 { - dAtA202 := make([]byte, len(m.ResponseValidationProperties)*10) - var j201 int - for _, num := range m.ResponseValidationProperties { - for num >= 1<<7 { - dAtA202[j201] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j201++ - } - dAtA202[j201] = uint8(num) - j201++ - } - i -= j201 - copy(dAtA[i:], dAtA202[:j201]) - i = encodeVarintTypes(dAtA, i, uint64(j201)) - i-- - dAtA[i] = 0x22 + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.ValidationEnforcementType != nil { - { - size := m.ValidationEnforcementType.Size() - i -= size - if _, err := m.ValidationEnforcementType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.DomainMatcherChoice != nil { + n += m.DomainMatcherChoice.Size() } - return len(dAtA) - i, nil + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.JavascriptLocation != 0 { + n += 1 + sovTypes(uint64(m.JavascriptLocation)) + } + return n } -func (m *OpenApiValidationModeActiveResponse_EnforcementReport) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ShapeJavaScriptInsertionRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *OpenApiValidationModeActiveResponse_EnforcementReport) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnforcementReport != nil { - { - size, err := m.EnforcementReport.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *ShapeJavaScriptInsertionRule_Domain) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.Domain != nil { + l = m.Domain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *OpenApiValidationModeActiveResponse_EnforcementBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ShapeJavaScriptExclusionRule) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.DomainMatcherChoice != nil { + n += m.DomainMatcherChoice.Size() + } + if m.Path != nil { + l = m.Path.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *OpenApiValidationModeActiveResponse_EnforcementBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnforcementBlock != nil { - { - size, err := m.EnforcementBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *ShapeJavaScriptExclusionRule_AnyDomain) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ValidateApiBySpecRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.AnyDomain != nil { + l = m.AnyDomain.Size() + n += 1 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil + return n } - -func (m *ValidateApiBySpecRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ShapeJavaScriptExclusionRule_Domain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Domain != nil { + l = m.Domain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ValidateApiBySpecRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.Settings != nil { - { - size, err := m.Settings.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x32 } - if m.OversizedBodyChoice != nil { - { - size := m.OversizedBodyChoice.Size() - i -= size - if _, err := m.OversizedBodyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() } - if m.FallThroughMode != nil { - { - size, err := m.FallThroughMode.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + if m.AdvertiseChoice != nil { + n += m.AdvertiseChoice.Size() } - if len(m.OpenApiValidationRules) > 0 { - for iNdEx := len(m.OpenApiValidationRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.OpenApiValidationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if len(m.DefaultRoutePools) > 0 { + for _, e := range m.DefaultRoutePools { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - return len(dAtA) - i, nil -} - -func (m *ValidateApiBySpecRule_OversizedBodySkipValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidateApiBySpecRule_OversizedBodySkipValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.OversizedBodySkipValidation != nil { - { - size, err := m.OversizedBodySkipValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Routes) > 0 { + for _, e := range m.Routes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x22 } - return len(dAtA) - i, nil -} -func (m *ValidateApiBySpecRule_OversizedBodyFailValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ValidateApiBySpecRule_OversizedBodyFailValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.OversizedBodyFailValidation != nil { - { - size, err := m.OversizedBodyFailValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if m.CorsPolicy != nil { + l = m.CorsPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.WafChoice != nil { + n += m.WafChoice.Size() } - return dAtA[:n], nil -} - -func (m *OpenApiValidationRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.ConditionTypeChoice != nil { - { - size := m.ConditionTypeChoice.Size() - i -= size - if _, err := m.ConditionTypeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if m.AddLocation { + n += 3 + } + if m.ChallengeType != nil { + n += m.ChallengeType.Size() + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.UserIdChoice != nil { + n += m.UserIdChoice.Size() + } + if m.RateLimitChoice != nil { + n += m.RateLimitChoice.Size() + } + if m.HostRewriteParams != nil { + n += m.HostRewriteParams.Size() + } + if m.MaliciousUserMitigation != nil { + l = m.MaliciousUserMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.WafExclusionRules) > 0 { + for _, e := range m.WafExclusionRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } } - if m.DomainChoice != nil { - { - size := m.DomainChoice.Size() - i -= size - if _, err := m.DomainChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.BlockedClients) > 0 { + for _, e := range m.BlockedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } } - if m.ValidationMode != nil { - { - size, err := m.ValidationMode.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.TrustedClients) > 0 { + for _, e := range m.TrustedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x12 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.DdosMitigationRules) > 0 { + for _, e := range m.DdosMitigationRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0xa } - return len(dAtA) - i, nil -} - -func (m *OpenApiValidationRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.ServicePolicyChoice != nil { + n += m.ServicePolicyChoice.Size() + } + if m.HashPolicyChoice != nil { + n += m.HashPolicyChoice.Size() + } + if m.MlConfigChoice != nil { + n += m.MlConfigChoice.Size() + } + if m.BotDefenseChoice != nil { + n += m.BotDefenseChoice.Size() + } + if m.ApiDefinitionChoice != nil { + n += m.ApiDefinitionChoice.Size() + } + if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { + for _, e := range m.DownstreamTlsCertificateExpirationTimestamps { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x3a } - return len(dAtA) - i, nil -} -func (m *OpenApiValidationRule_SpecificDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationRule_SpecificDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.SpecificDomain) - copy(dAtA[i:], m.SpecificDomain) - i = encodeVarintTypes(dAtA, i, uint64(len(m.SpecificDomain))) - i-- - dAtA[i] = 0x42 - return len(dAtA) - i, nil -} -func (m *OpenApiValidationRule_BasePath) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationRule_BasePath) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.BasePath) - copy(dAtA[i:], m.BasePath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePath))) - i-- - dAtA[i] = 0x5a - return len(dAtA) - i, nil -} -func (m *OpenApiValidationRule_ApiGroup) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationRule_ApiGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ApiGroup) - copy(dAtA[i:], m.ApiGroup) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiGroup))) - i-- - dAtA[i] = 0x62 - return len(dAtA) - i, nil -} -func (m *OpenApiValidationRule_ApiEndpoint) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OpenApiValidationRule_ApiEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiEndpoint != nil { - { - size, err := m.ApiEndpoint.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.DataGuardRules) > 0 { + for _, e := range m.DataGuardRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x6a } - return len(dAtA) - i, nil -} -func (m *ApiEndpointDetails) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.IpReputationChoice != nil { + n += m.IpReputationChoice.Size() } - return dAtA[:n], nil -} - -func (m *ApiEndpointDetails) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ApiEndpointDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Methods) > 0 { - dAtA214 := make([]byte, len(m.Methods)*10) - var j213 int - for _, num := range m.Methods { - for num >= 1<<7 { - dAtA214[j213] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j213++ - } - dAtA214[j213] = uint8(num) - j213++ + if m.ApiProtectionRules != nil { + l = m.ApiProtectionRules.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.TrustClientIpHeadersChoice != nil { + n += m.TrustClientIpHeadersChoice.Size() + } + if m.MaliciousUserDetectionChoice != nil { + n += m.MaliciousUserDetectionChoice.Size() + } + if m.ApiDiscoveryChoice != nil { + n += m.ApiDiscoveryChoice.Size() + } + if m.ClientSideDefenseChoice != nil { + n += m.ClientSideDefenseChoice.Size() + } + if m.OriginPoolChoice != nil { + n += m.OriginPoolChoice.Size() + } + if m.CsrfPolicy != nil { + l = m.CsrfPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.GraphqlRules) > 0 { + for _, e := range m.GraphqlRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i -= j213 - copy(dAtA[i:], dAtA214[:j213]) - i = encodeVarintTypes(dAtA, i, uint64(j213)) - i-- - dAtA[i] = 0x12 } - if len(m.Path) > 0 { - i -= len(m.Path) - copy(dAtA[i:], m.Path) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Path))) - i-- - dAtA[i] = 0xa + if len(m.ProtectedCookies) > 0 { + for _, e := range m.ProtectedCookies { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } } - return len(dAtA) - i, nil -} - -func (m *OriginServerSubsetRuleListType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.SlowDdosMitigationChoice != nil { + n += m.SlowDdosMitigationChoice.Size() } - return dAtA[:n], nil -} - -func (m *OriginServerSubsetRuleListType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.JwtValidation != nil { + l = m.JwtValidation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.OriginServerSubsetRuleList != nil { + l = m.OriginServerSubsetRuleList.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ThreatMeshChoice != nil { + n += m.ThreatMeshChoice.Size() + } + if m.L7DdosAutoMitigationAction != nil { + n += m.L7DdosAutoMitigationAction.Size() + } + if m.CertState != 0 { + n += 2 + sovTypes(uint64(m.CertState)) + } + if m.ViewInternal != nil { + l = m.ViewInternal.Size() + n += 2 + l + sovTypes(uint64(l)) + } + l = len(m.HostName) + if l > 0 { + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.DnsInfo) > 0 { + for _, e := range m.DnsInfo { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.State != 0 { + n += 2 + sovTypes(uint64(m.State)) + } + if m.AutoCertState != 0 { + n += 2 + sovTypes(uint64(m.AutoCertState)) + } + if m.AutoCertInfo != nil { + l = m.AutoCertInfo.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.InternetVipInfo) > 0 { + for _, e := range m.InternetVipInfo { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + return n } -func (m *OriginServerSubsetRuleListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.OriginServerSubsetRules) > 0 { - for iNdEx := len(m.OriginServerSubsetRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.OriginServerSubsetRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ClientSideDefenseType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_Https) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ClientSideDefenseType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ClientSideDefenseType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.Policy != nil { - { - size, err := m.Policy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.Https != nil { + l = m.Https.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ClientSideDefensePolicyType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_AdvertiseOnPublic) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ClientSideDefensePolicyType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ClientSideDefensePolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.JavaScriptChoice != nil { - { - size := m.JavaScriptChoice.Size() - i -= size - if _, err := m.JavaScriptChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.AdvertiseOnPublic != nil { + l = m.AdvertiseOnPublic.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *ClientSideDefensePolicyType_DisableJsInsert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ClientSideDefensePolicyType_DisableJsInsert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableJsInsert != nil { - { - size, err := m.DisableJsInsert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *GlobalSpecType_AdvertiseCustom) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ClientSideDefensePolicyType_JsInsertAllPages) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ClientSideDefensePolicyType_JsInsertAllPages) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsInsertAllPages != nil { - { - size, err := m.JsInsertAllPages.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + var l int + _ = l + if m.AdvertiseCustom != nil { + l = m.AdvertiseCustom.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *ClientSideDefensePolicyType_JsInsertAllPagesExcept) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ClientSideDefensePolicyType_JsInsertAllPagesExcept) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsInsertAllPagesExcept != nil { - { - size, err := m.JsInsertAllPagesExcept.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *GlobalSpecType_DisableWaf) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ClientSideDefensePolicyType_JsInsertionRules) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ClientSideDefensePolicyType_JsInsertionRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsInsertionRules != nil { - { - size, err := m.JsInsertionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + var l int + _ = l + if m.DisableWaf != nil { + l = m.DisableWaf.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *CSDJavaScriptInsertAllWithExceptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_DoNotAdvertise) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.ExcludeList) > 0 { - for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.DoNotAdvertise != nil { + l = m.DoNotAdvertise.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *CSDJavaScriptInsertType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *CSDJavaScriptInsertType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CSDJavaScriptInsertType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.ExcludeList) > 0 { - for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if len(m.Rules) > 0 { - for iNdEx := len(m.Rules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Rules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.AdvertiseOnPublicDefaultVip != nil { + l = m.AdvertiseOnPublicDefaultVip.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *CSDJavaScriptInsertionRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_JsChallenge) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *CSDJavaScriptInsertionRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CSDJavaScriptInsertionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.Path != nil { - { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if m.JsChallenge != nil { + l = m.JsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.DomainMatcherChoice != nil { - { - size := m.DomainMatcherChoice.Size() - i -= size - if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GlobalSpecType_UserIdentification) Size() (n int) { + if m == nil { + return 0 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.UserIdentification != nil { + l = m.UserIdentification.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *CSDJavaScriptInsertionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *CSDJavaScriptInsertionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *GlobalSpecType_DisableRateLimit) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *CSDJavaScriptInsertionRule_Domain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CSDJavaScriptInsertionRule_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Domain != nil { - { - size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 + var l int + _ = l + if m.DisableRateLimit != nil { + l = m.DisableRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *BotDefenseAdvancedPolicyType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_RateLimit) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.RateLimit != nil { + l = m.RateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BotDefenseAdvancedPolicyType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_CaptchaChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CaptchaChallenge != nil { + l = m.CaptchaChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BotDefenseAdvancedPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType_NoChallenge) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.MobileSdkChoice != nil { - { - size := m.MobileSdkChoice.Size() - i -= size - if _, err := m.MobileSdkChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.NoChallenge != nil { + l = m.NoChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.JsDownloadPath) > 0 { - i -= len(m.JsDownloadPath) - copy(dAtA[i:], m.JsDownloadPath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.JsDownloadPath))) - i-- - dAtA[i] = 0x12 + return n +} +func (m *GlobalSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 } - if len(m.ProtectedAppEndpoints) > 0 { - for iNdEx := len(m.ProtectedAppEndpoints) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProtectedAppEndpoints[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *BotDefenseAdvancedPolicyType_DisableMobileSdk) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_AutoHostRewrite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AutoHostRewrite != nil { + l = m.AutoHostRewrite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BotDefenseAdvancedPolicyType_DisableMobileSdk) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableMobileSdk != nil { - { - size, err := m.DisableMobileSdk.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *GlobalSpecType_HostRewrite) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + l = len(m.HostRewrite) + n += 2 + l + sovTypes(uint64(l)) + return n } -func (m *BotDefenseAdvancedPolicyType_MobileSdkConfig) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_DisableHostRewrite) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableHostRewrite != nil { + l = m.DisableHostRewrite.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BotDefenseAdvancedPolicyType_MobileSdkConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MobileSdkConfig != nil { - { - size, err := m.MobileSdkConfig.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *GlobalSpecType_ServicePoliciesFromNamespace) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.ServicePoliciesFromNamespace != nil { + l = m.ServicePoliciesFromNamespace.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *BotAdvancedMobileSDKConfigType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_NoServicePolicies) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.NoServicePolicies != nil { + l = m.NoServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BotAdvancedMobileSDKConfigType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_ActiveServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveServicePolicies != nil { + l = m.ActiveServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BotAdvancedMobileSDKConfigType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType_RoundRobin) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.MobileIdentifier != nil { - { - size, err := m.MobileIdentifier.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.RoundRobin != nil { + l = m.RoundRobin.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ProtectedAppEndpointType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_LeastActive) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.LeastActive != nil { + l = m.LeastActive.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ProtectedAppEndpointType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_Random) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Random != nil { + l = m.Random.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ProtectedAppEndpointType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType_SourceIpStickiness) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.FlowLabelChoice != nil { - { - size := m.FlowLabelChoice.Size() - i -= size - if _, err := m.FlowLabelChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.SourceIpStickiness != nil { + l = m.SourceIpStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.AppTrafficTypeChoice != nil { - { - size := m.AppTrafficTypeChoice.Size() - i -= size - if _, err := m.AppTrafficTypeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GlobalSpecType_CookieStickiness) Size() (n int) { + if m == nil { + return 0 } - if len(m.HttpMethods) > 0 { - dAtA228 := make([]byte, len(m.HttpMethods)*10) - var j227 int - for _, num := range m.HttpMethods { - for num >= 1<<7 { - dAtA228[j227] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j227++ - } - dAtA228[j227] = uint8(num) - j227++ - } - i -= j227 - copy(dAtA[i:], dAtA228[:j227]) - i = encodeVarintTypes(dAtA, i, uint64(j227)) - i-- - dAtA[i] = 0x42 + var l int + _ = l + if m.CookieStickiness != nil { + l = m.CookieStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.RequestBody) > 0 { - for iNdEx := len(m.RequestBody) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.RequestBody[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } + return n +} +func (m *GlobalSpecType_RingHash) Size() (n int) { + if m == nil { + return 0 } - if len(m.Query) > 0 { - for iNdEx := len(m.Query) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Query[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } + var l int + _ = l + if m.RingHash != nil { + l = m.RingHash.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.Path != nil { - { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + return n +} +func (m *GlobalSpecType_PolicyBasedChallenge) Size() (n int) { + if m == nil { + return 0 } - if m.DomainMatcherChoice != nil { - { - size := m.DomainMatcherChoice.Size() - i -= size - if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.PolicyBasedChallenge != nil { + l = m.PolicyBasedChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + return n +} +func (m *GlobalSpecType_AppFirewall) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.AppFirewall != nil { + l = m.AppFirewall.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ProtectedAppEndpointType_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_SingleLbApp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SingleLbApp != nil { + l = m.SingleLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ProtectedAppEndpointType_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *GlobalSpecType_MultiLbApp) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.MultiLbApp != nil { + l = m.MultiLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ProtectedAppEndpointType_Domain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProtectedAppEndpointType_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Domain != nil { - { - size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *GlobalSpecType_DisableBotDefense) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ProtectedAppEndpointType_WebClient) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProtectedAppEndpointType_WebClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.WebClient != nil { - { - size, err := m.WebClient.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x52 + var l int + _ = l + if m.DisableBotDefense != nil { + l = m.DisableBotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *ProtectedAppEndpointType_MobileClient) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ProtectedAppEndpointType_MobileClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MobileClient != nil { - { - size, err := m.MobileClient.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a +func (m *GlobalSpecType_BotDefense) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ProtectedAppEndpointType_WebMobileClient) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProtectedAppEndpointType_WebMobileClient) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.WebMobileClient != nil { - { - size, err := m.WebMobileClient.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 + var l int + _ = l + if m.BotDefense != nil { + l = m.BotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *ProtectedAppEndpointType_UndefinedFlowLabel) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ProtectedAppEndpointType_UndefinedFlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UndefinedFlowLabel != nil { - { - size, err := m.UndefinedFlowLabel.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x72 +func (m *GlobalSpecType_UserIdClientIp) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ProtectedAppEndpointType_FlowLabel) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProtectedAppEndpointType_FlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.FlowLabel != nil { - { - size, err := m.FlowLabel.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7a + var l int + _ = l + if m.UserIdClientIp != nil { + l = m.UserIdClientIp.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *RequestBody) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_ApiDefinitions) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *RequestBody) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *RequestBody) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.ValueType != nil { - { - size := m.ValueType.Size() - i -= size - if _, err := m.ValueType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa + if m.ApiDefinitions != nil { + l = m.ApiDefinitions.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *RequestBody_ExactValue) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *RequestBody_ExactValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ExactValue) - copy(dAtA[i:], m.ExactValue) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ExactValue))) - i-- - dAtA[i] = 0x12 - return len(dAtA) - i, nil +func (m *GlobalSpecType_DisableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableIpReputation != nil { + l = m.DisableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *RequestBody_RegexValue) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_EnableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableIpReputation != nil { + l = m.EnableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *RequestBody_RegexValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.RegexValue) - copy(dAtA[i:], m.RegexValue) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RegexValue))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil +func (m *GlobalSpecType_ApiSpecification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiSpecification != nil { + l = m.ApiSpecification.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *Query) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_DisableApiDefinition) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.DisableApiDefinition != nil { + l = m.DisableApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Query) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_ApiDefinition) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiDefinition != nil { + l = m.ApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Query) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType_DisableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ValueType != nil { - { - size := m.ValueType.Size() - i -= size - if _, err := m.ValueType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.DisableTrustClientIpHeaders != nil { + l = m.DisableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.Name) > 0 { - i -= len(m.Name) - copy(dAtA[i:], m.Name) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Name))) - i-- - dAtA[i] = 0xa + return n +} +func (m *GlobalSpecType_EnableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.EnableTrustClientIpHeaders != nil { + l = m.EnableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Query_ExactValue) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_EnableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableMaliciousUserDetection != nil { + l = m.EnableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Query_ExactValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.ExactValue) - copy(dAtA[i:], m.ExactValue) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ExactValue))) - i-- - dAtA[i] = 0x12 - return len(dAtA) - i, nil +func (m *GlobalSpecType_DisableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableMaliciousUserDetection != nil { + l = m.DisableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *Query_RegexValue) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_EnableApiDiscovery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableApiDiscovery != nil { + l = m.EnableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Query_RegexValue) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.RegexValue) - copy(dAtA[i:], m.RegexValue) - i = encodeVarintTypes(dAtA, i, uint64(len(m.RegexValue))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil +func (m *GlobalSpecType_DisableApiDiscovery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableApiDiscovery != nil { + l = m.DisableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *Query_CheckPresence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_DisableClientSideDefense) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableClientSideDefense != nil { + l = m.DisableClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Query_CheckPresence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CheckPresence != nil { - { - size, err := m.CheckPresence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *GlobalSpecType_ClientSideDefense) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.ClientSideDefense != nil { + l = m.ClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ShapeBotDefenseType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_DefaultPool) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.DefaultPool != nil { + l = m.DefaultPool.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeBotDefenseType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GlobalSpecType_DefaultPoolList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DefaultPoolList != nil { + l = m.DefaultPoolList.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeBotDefenseType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GlobalSpecType_SlowDdosMitigation) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.CorsSupportChoice != nil { - { - size := m.CorsSupportChoice.Size() - i -= size - if _, err := m.CorsSupportChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.SlowDdosMitigation != nil { + l = m.SlowDdosMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.Timeout != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Timeout)) - i-- - dAtA[i] = 0x18 + return n +} +func (m *GlobalSpecType_EnableChallenge) Size() (n int) { + if m == nil { + return 0 } - if m.Policy != nil { - { - size, err := m.Policy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 + var l int + _ = l + if m.EnableChallenge != nil { + l = m.EnableChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.RegionalEndpoint != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.RegionalEndpoint)) - i-- - dAtA[i] = 0x8 + return n +} +func (m *GlobalSpecType_SystemDefaultTimeouts) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.SystemDefaultTimeouts != nil { + l = m.SystemDefaultTimeouts.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeBotDefenseType_EnableCorsSupport) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeBotDefenseType_EnableCorsSupport) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableCorsSupport != nil { - { - size, err := m.EnableCorsSupport.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *GlobalSpecType_DisableThreatMesh) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ShapeBotDefenseType_DisableCorsSupport) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeBotDefenseType_DisableCorsSupport) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableCorsSupport != nil { - { - size, err := m.DisableCorsSupport.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 + var l int + _ = l + if m.DisableThreatMesh != nil { + l = m.DisableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *BotDefenseAdvancedType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_EnableThreatMesh) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *BotDefenseAdvancedType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *BotDefenseAdvancedType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.Policy != nil { - { - size, err := m.Policy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.Mobile != nil { - { - size, err := m.Mobile.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if m.Web != nil { - { - size, err := m.Web.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.EnableThreatMesh != nil { + l = m.EnableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ShapeBotDefensePolicyType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_L7DdosActionDefault) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ShapeBotDefensePolicyType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeBotDefensePolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.JavascriptMode != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptMode)) - i-- - dAtA[i] = 0x58 - } - if m.MobileSdkChoice != nil { - { - size := m.MobileSdkChoice.Size() - i -= size - if _, err := m.MobileSdkChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.JavaScriptChoice != nil { - { - size := m.JavaScriptChoice.Size() - i -= size - if _, err := m.JavaScriptChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if len(m.JsDownloadPath) > 0 { - i -= len(m.JsDownloadPath) - copy(dAtA[i:], m.JsDownloadPath) - i = encodeVarintTypes(dAtA, i, uint64(len(m.JsDownloadPath))) - i-- - dAtA[i] = 0x12 - } - if len(m.ProtectedAppEndpoints) > 0 { - for iNdEx := len(m.ProtectedAppEndpoints) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProtectedAppEndpoints[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.L7DdosActionDefault != nil { + l = m.L7DdosActionDefault.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *ShapeBotDefensePolicyType_DisableJsInsert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ShapeBotDefensePolicyType_DisableJsInsert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableJsInsert != nil { - { - size, err := m.DisableJsInsert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *GlobalSpecType_L7DdosActionBlock) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ShapeBotDefensePolicyType_JsInsertAllPages) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeBotDefensePolicyType_JsInsertAllPages) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsInsertAllPages != nil { - { - size, err := m.JsInsertAllPages.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + var l int + _ = l + if m.L7DdosActionBlock != nil { + l = m.L7DdosActionBlock.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsInsertAllPagesExcept != nil { - { - size, err := m.JsInsertAllPagesExcept.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (m *GlobalSpecType_L7DdosActionJsChallenge) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ShapeBotDefensePolicyType_JsInsertionRules) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeBotDefensePolicyType_JsInsertionRules) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsInsertionRules != nil { - { - size, err := m.JsInsertionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a + var l int + _ = l + if m.L7DdosActionJsChallenge != nil { + l = m.L7DdosActionJsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *ShapeBotDefensePolicyType_DisableMobileSdk) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ShapeBotDefensePolicyType_DisableMobileSdk) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableMobileSdk != nil { - { - size, err := m.DisableMobileSdk.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a +func (m *GlobalSpecType_L7DdosActionNone) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ShapeBotDefensePolicyType_MobileSdkConfig) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeBotDefensePolicyType_MobileSdkConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MobileSdkConfig != nil { - { - size, err := m.MobileSdkConfig.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x52 + var l int + _ = l + if m.L7DdosActionNone != nil { + l = m.L7DdosActionNone.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *MobileTrafficIdentifierType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_ApiRateLimit) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *MobileTrafficIdentifierType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MobileTrafficIdentifierType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.Headers) > 0 { - for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } + if m.ApiRateLimit != nil { + l = m.ApiRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *MobileSDKConfigType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GlobalSpecType_BotDefenseAdvanced) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *MobileSDKConfigType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MobileSDKConfigType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.MobileIdentifier != nil { - { - size, err := m.MobileIdentifier.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - if len(m.ReloadHeaderName) > 0 { - i -= len(m.ReloadHeaderName) - copy(dAtA[i:], m.ReloadHeaderName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ReloadHeaderName))) - i-- - dAtA[i] = 0xa + if m.BotDefenseAdvanced != nil { + l = m.BotDefenseAdvanced.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *AppEndpointType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *AppEndpointType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.GoodbotChoice != nil { - { - size := m.GoodbotChoice.Size() - i -= size - if _, err := m.GoodbotChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } } - if m.FlowLabelChoice != nil { - { - size := m.FlowLabelChoice.Size() - i -= size - if _, err := m.FlowLabelChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() } - if m.Mitigation != nil { - { - size, err := m.Mitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 + if m.AdvertiseChoice != nil { + n += m.AdvertiseChoice.Size() } - if m.AppTrafficTypeChoice != nil { - { - size := m.AppTrafficTypeChoice.Size() - i -= size - if _, err := m.AppTrafficTypeChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.DefaultRoutePools) > 0 { + for _, e := range m.DefaultRoutePools { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - if m.DomainMatcherChoice != nil { - { - size := m.DomainMatcherChoice.Size() - i -= size - if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if len(m.Routes) > 0 { + for _, e := range m.Routes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - if m.Path != nil { - { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 + if m.CorsPolicy != nil { + l = m.CorsPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.Protocol != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.Protocol)) - i-- - dAtA[i] = 0x18 + if m.WafChoice != nil { + n += m.WafChoice.Size() } - if len(m.HttpMethods) > 0 { - dAtA255 := make([]byte, len(m.HttpMethods)*10) - var j254 int - for _, num := range m.HttpMethods { - for num >= 1<<7 { - dAtA255[j254] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j254++ - } - dAtA255[j254] = uint8(num) - j254++ - } - i -= j254 - copy(dAtA[i:], dAtA255[:j254]) - i = encodeVarintTypes(dAtA, i, uint64(j254)) - i-- - dAtA[i] = 0x12 + if m.AddLocation { + n += 3 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + if m.ChallengeType != nil { + n += m.ChallengeType.Size() } - return len(dAtA) - i, nil -} - -func (m *AppEndpointType_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_Domain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Domain != nil { - { - size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a + if m.UserIdChoice != nil { + n += m.UserIdChoice.Size() } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_Web) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_Web) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Web != nil { - { - size, err := m.Web.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.RateLimitChoice != nil { + n += m.RateLimitChoice.Size() + } + if m.MaliciousUserMitigation != nil { + l = m.MaliciousUserMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.WafExclusionRules) > 0 { + for _, e := range m.WafExclusionRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x4a } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_Mobile) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_Mobile) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Mobile != nil { - { - size, err := m.Mobile.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.BlockedClients) > 0 { + for _, e := range m.BlockedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x52 } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_WebMobile) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_WebMobile) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.WebMobile != nil { - { - size, err := m.WebMobile.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.TrustedClients) > 0 { + for _, e := range m.TrustedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x5a } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_UndefinedFlowLabel) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_UndefinedFlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UndefinedFlowLabel != nil { - { - size, err := m.UndefinedFlowLabel.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.DdosMitigationRules) > 0 { + for _, e := range m.DdosMitigationRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x72 } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_FlowLabel) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_FlowLabel) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.FlowLabel != nil { - { - size, err := m.FlowLabel.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.ServicePolicyChoice != nil { + n += m.ServicePolicyChoice.Size() + } + if m.HashPolicyChoice != nil { + n += m.HashPolicyChoice.Size() + } + if m.MlConfigChoice != nil { + n += m.MlConfigChoice.Size() + } + if m.BotDefenseChoice != nil { + n += m.BotDefenseChoice.Size() + } + if m.ApiDefinitionChoice != nil { + n += m.ApiDefinitionChoice.Size() + } + if len(m.DataGuardRules) > 0 { + for _, e := range m.DataGuardRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x7a } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_MitigateGoodBots) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_MitigateGoodBots) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MitigateGoodBots != nil { - { - size, err := m.MitigateGoodBots.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.IpReputationChoice != nil { + n += m.IpReputationChoice.Size() + } + if m.ApiProtectionRules != nil { + l = m.ApiProtectionRules.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.TrustClientIpHeadersChoice != nil { + n += m.TrustClientIpHeadersChoice.Size() + } + if m.MaliciousUserDetectionChoice != nil { + n += m.MaliciousUserDetectionChoice.Size() + } + if m.ApiDiscoveryChoice != nil { + n += m.ApiDiscoveryChoice.Size() + } + if m.ClientSideDefenseChoice != nil { + n += m.ClientSideDefenseChoice.Size() + } + if m.OriginPoolChoice != nil { + n += m.OriginPoolChoice.Size() + } + if m.CsrfPolicy != nil { + l = m.CsrfPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.GraphqlRules) > 0 { + for _, e := range m.GraphqlRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x8a } - return len(dAtA) - i, nil -} -func (m *AppEndpointType_AllowGoodBots) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *AppEndpointType_AllowGoodBots) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AllowGoodBots != nil { - { - size, err := m.AllowGoodBots.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.ProtectedCookies) > 0 { + for _, e := range m.ProtectedCookies { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a } - return len(dAtA) - i, nil -} -func (m *WebMobileTrafficType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.SlowDdosMitigationChoice != nil { + n += m.SlowDdosMitigationChoice.Size() } - return dAtA[:n], nil -} - -func (m *WebMobileTrafficType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.JwtValidation != nil { + l = m.JwtValidation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.OriginServerSubsetRuleList != nil { + l = m.OriginServerSubsetRuleList.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ThreatMeshChoice != nil { + n += m.ThreatMeshChoice.Size() + } + if m.L7DdosAutoMitigationAction != nil { + n += m.L7DdosAutoMitigationAction.Size() + } + return n } -func (m *WebMobileTrafficType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *CreateSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.MobileIdentifier != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.MobileIdentifier)) - i-- - dAtA[i] = 0x18 + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) } - if len(m.Headers) > 0 { - for iNdEx := len(m.Headers) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Headers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + return n +} +func (m *CreateSpecType_Https) Size() (n int) { + if m == nil { + return 0 } - if m.Header != nil { - { - size, err := m.Header.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.Https != nil { + l = m.Https.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ShapeJavaScriptInsertType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_AdvertiseOnPublic) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ShapeJavaScriptInsertType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeJavaScriptInsertType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.ExcludeList) > 0 { - for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - } - if len(m.Rules) > 0 { - for iNdEx := len(m.Rules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Rules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } + if m.AdvertiseOnPublic != nil { + l = m.AdvertiseOnPublic.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_AdvertiseCustom) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.ExcludeList) > 0 { - for iNdEx := len(m.ExcludeList) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ExcludeList[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if m.JavascriptLocation != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptLocation)) - i-- - dAtA[i] = 0x8 + if m.AdvertiseCustom != nil { + l = m.AdvertiseCustom.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ShapeJavaScriptInsertAllType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_DisableWaf) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ShapeJavaScriptInsertAllType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ShapeJavaScriptInsertAllType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.JavascriptLocation != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptLocation)) - i-- - dAtA[i] = 0x8 + if m.DisableWaf != nil { + l = m.DisableWaf.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ShapeJavaScriptInsertionRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_DoNotAdvertise) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *ShapeJavaScriptInsertionRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.DoNotAdvertise != nil { + l = m.DoNotAdvertise.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeJavaScriptInsertionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *CreateSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.JavascriptLocation != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.JavascriptLocation)) - i-- - dAtA[i] = 0x30 + if m.AdvertiseOnPublicDefaultVip != nil { + l = m.AdvertiseOnPublicDefaultVip.Size() + n += 1 + l + sovTypes(uint64(l)) } - if m.Path != nil { - { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } - if m.DomainMatcherChoice != nil { - { - size := m.DomainMatcherChoice.Size() - i -= size - if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_JsChallenge) Size() (n int) { + if m == nil { + return 0 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.JsChallenge != nil { + l = m.JsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *ShapeJavaScriptInsertionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ShapeJavaScriptInsertionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *CreateSpecType_UserIdentification) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *ShapeJavaScriptInsertionRule_Domain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.UserIdentification != nil { + l = m.UserIdentification.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeJavaScriptInsertionRule_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Domain != nil { - { - size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *CreateSpecType_DisableRateLimit) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisableRateLimit != nil { + l = m.DisableRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ShapeJavaScriptExclusionRule) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_RateLimit) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.RateLimit != nil { + l = m.RateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeJavaScriptExclusionRule) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_CaptchaChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CaptchaChallenge != nil { + l = m.CaptchaChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeJavaScriptExclusionRule) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *CreateSpecType_NoChallenge) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.Path != nil { - { - size, err := m.Path.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + if m.NoChallenge != nil { + l = m.NoChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.DomainMatcherChoice != nil { - { - size := m.DomainMatcherChoice.Size() - i -= size - if _, err := m.DomainMatcherChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 } - if m.Metadata != nil { - { - size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *ShapeJavaScriptExclusionRule_AnyDomain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_ServicePoliciesFromNamespace) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ServicePoliciesFromNamespace != nil { + l = m.ServicePoliciesFromNamespace.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeJavaScriptExclusionRule_AnyDomain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AnyDomain != nil { - { - size, err := m.AnyDomain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *CreateSpecType_NoServicePolicies) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.NoServicePolicies != nil { + l = m.NoServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ShapeJavaScriptExclusionRule_Domain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_ActiveServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveServicePolicies != nil { + l = m.ActiveServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ShapeJavaScriptExclusionRule_Domain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Domain != nil { - { - size, err := m.Domain.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *CreateSpecType_RoundRobin) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.RoundRobin != nil { + l = m.RoundRobin.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *IPThreatCategoryListType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_LeastActive) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.LeastActive != nil { + l = m.LeastActive.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *IPThreatCategoryListType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_Random) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Random != nil { + l = m.Random.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *IPThreatCategoryListType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *CreateSpecType_SourceIpStickiness) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.IpThreatCategories) > 0 { - dAtA276 := make([]byte, len(m.IpThreatCategories)*10) - var j275 int - for _, num := range m.IpThreatCategories { - for num >= 1<<7 { - dAtA276[j275] = uint8(uint64(num)&0x7f | 0x80) - num >>= 7 - j275++ - } - dAtA276[j275] = uint8(num) - j275++ - } - i -= j275 - copy(dAtA[i:], dAtA276[:j275]) - i = encodeVarintTypes(dAtA, i, uint64(j275)) - i-- - dAtA[i] = 0xa + if m.SourceIpStickiness != nil { + l = m.SourceIpStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *CreateSpecType_CookieStickiness) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.CookieStickiness != nil { + l = m.CookieStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_RingHash) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RingHash != nil { + l = m.RingHash.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *CreateSpecType_PolicyBasedChallenge) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.InternetVipInfo) > 0 { - for iNdEx := len(m.InternetVipInfo) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.InternetVipInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x44 - i-- - dAtA[i] = 0xe2 - } + if m.PolicyBasedChallenge != nil { + l = m.PolicyBasedChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.BotDefenseChoice != nil { - { - size := m.BotDefenseChoice.Size() - i -= size - if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_AppFirewall) Size() (n int) { + if m == nil { + return 0 } - if m.AutoCertInfo != nil { - { - size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x92 + var l int + _ = l + if m.AppFirewall != nil { + l = m.AppFirewall.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.AutoCertState != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.AutoCertState)) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xe0 + return n +} +func (m *CreateSpecType_SingleLbApp) Size() (n int) { + if m == nil { + return 0 } - if m.State != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd8 + var l int + _ = l + if m.SingleLbApp != nil { + l = m.SingleLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.DnsInfo) > 0 { - for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd2 - } + return n +} +func (m *CreateSpecType_MultiLbApp) Size() (n int) { + if m == nil { + return 0 } - if len(m.HostName) > 0 { - i -= len(m.HostName) - copy(dAtA[i:], m.HostName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xca + var l int + _ = l + if m.MultiLbApp != nil { + l = m.MultiLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ViewInternal != nil { - { - size, err := m.ViewInternal.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xc2 + return n +} +func (m *CreateSpecType_DisableBotDefense) Size() (n int) { + if m == nil { + return 0 } - if m.CertState != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x98 + var l int + _ = l + if m.DisableBotDefense != nil { + l = m.DisableBotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.L7DdosAutoMitigationAction != nil { - { - size := m.L7DdosAutoMitigationAction.Size() - i -= size - if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_BotDefense) Size() (n int) { + if m == nil { + return 0 } - if m.ThreatIntelligenceChoice != nil { - { - size := m.ThreatIntelligenceChoice.Size() - i -= size - if _, err := m.ThreatIntelligenceChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.BotDefense != nil { + l = m.BotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.OriginServerSubsetRuleList != nil { - { - size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xaa + return n +} +func (m *CreateSpecType_UserIdClientIp) Size() (n int) { + if m == nil { + return 0 } - if m.JwtValidation != nil { - { - size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x92 + var l int + _ = l + if m.UserIdClientIp != nil { + l = m.UserIdClientIp.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.SlowDdosMitigationChoice != nil { - { - size := m.SlowDdosMitigationChoice.Size() - i -= size - if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_ApiDefinitions) Size() (n int) { + if m == nil { + return 0 } - if m.ChallengeType != nil { - { - size := m.ChallengeType.Size() - i -= size - if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.ApiDefinitions != nil { + l = m.ApiDefinitions.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.ProtectedCookies) > 0 { - for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xea - } + return n +} +func (m *CreateSpecType_DisableIpReputation) Size() (n int) { + if m == nil { + return 0 } - if len(m.GraphqlRules) > 0 { - for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xe2 - } + var l int + _ = l + if m.DisableIpReputation != nil { + l = m.DisableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.CsrfPolicy != nil { - { - size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xda + return n +} +func (m *CreateSpecType_EnableIpReputation) Size() (n int) { + if m == nil { + return 0 } - if m.OriginPoolChoice != nil { - { - size := m.OriginPoolChoice.Size() - i -= size - if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.EnableIpReputation != nil { + l = m.EnableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ClientSideDefenseChoice != nil { - { - size := m.ClientSideDefenseChoice.Size() - i -= size - if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_ApiSpecification) Size() (n int) { + if m == nil { + return 0 } - if m.ApiDiscoveryChoice != nil { - { - size := m.ApiDiscoveryChoice.Size() - i -= size - if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.ApiSpecification != nil { + l = m.ApiSpecification.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.MaliciousUserDetectionChoice != nil { - { - size := m.MaliciousUserDetectionChoice.Size() - i -= size - if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_DisableApiDefinition) Size() (n int) { + if m == nil { + return 0 } - if m.DdosDetectionChoice != nil { - { - size := m.DdosDetectionChoice.Size() - i -= size - if _, err := m.DdosDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DisableApiDefinition != nil { + l = m.DisableApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.TrustClientIpHeadersChoice != nil { - { - size := m.TrustClientIpHeadersChoice.Size() - i -= size - if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_ApiDefinition) Size() (n int) { + if m == nil { + return 0 } - if m.ApiProtectionRules != nil { - { - size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xc2 + var l int + _ = l + if m.ApiDefinition != nil { + l = m.ApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ApiDefinitionChoice != nil { - { - size := m.ApiDefinitionChoice.Size() - i -= size - if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_DisableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 } - if m.RateLimitChoice != nil { - { - size := m.RateLimitChoice.Size() - i -= size - if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DisableTrustClientIpHeaders != nil { + l = m.DisableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.IpReputationChoice != nil { - { - size := m.IpReputationChoice.Size() - i -= size - if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_EnableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 } - if len(m.DataGuardRules) > 0 { - for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xfa - } + var l int + _ = l + if m.EnableTrustClientIpHeaders != nil { + l = m.EnableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { - for iNdEx := len(m.DownstreamTlsCertificateExpirationTimestamps) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DownstreamTlsCertificateExpirationTimestamps[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xf2 - } + return n +} +func (m *CreateSpecType_EnableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 } - if m.UserIdChoice != nil { - { - size := m.UserIdChoice.Size() - i -= size - if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.EnableMaliciousUserDetection != nil { + l = m.EnableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.MlConfigChoice != nil { - { - size := m.MlConfigChoice.Size() - i -= size - if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_DisableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 } - if m.WafChoice != nil { - { - size := m.WafChoice.Size() - i -= size - if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DisableMaliciousUserDetection != nil { + l = m.DisableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.HashPolicyChoice != nil { - { - size := m.HashPolicyChoice.Size() - i -= size - if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_EnableApiDiscovery) Size() (n int) { + if m == nil { + return 0 } - if m.ServicePolicyChoice != nil { - { - size := m.ServicePolicyChoice.Size() - i -= size - if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.EnableApiDiscovery != nil { + l = m.EnableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.DdosMitigationRules) > 0 { - for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xaa - } + return n +} +func (m *CreateSpecType_DisableApiDiscovery) Size() (n int) { + if m == nil { + return 0 } - if len(m.TrustedClients) > 0 { - for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x9a - } + var l int + _ = l + if m.DisableApiDiscovery != nil { + l = m.DisableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.BlockedClients) > 0 { - for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x92 - } + return n +} +func (m *CreateSpecType_DisableClientSideDefense) Size() (n int) { + if m == nil { + return 0 } - if len(m.WafExclusionRules) > 0 { - for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x8a - } + var l int + _ = l + if m.DisableClientSideDefense != nil { + l = m.DisableClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.MaliciousUserMitigation != nil { - { - size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x82 + return n +} +func (m *CreateSpecType_ClientSideDefense) Size() (n int) { + if m == nil { + return 0 } - if m.HostRewriteParams != nil { - { - size := m.HostRewriteParams.Size() - i -= size - if _, err := m.HostRewriteParams.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.ClientSideDefense != nil { + l = m.ClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *CreateSpecType_DefaultPool) Size() (n int) { + if m == nil { + return 0 } - if m.MoreOption != nil { - { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + var l int + _ = l + if m.DefaultPool != nil { + l = m.DefaultPool.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x88 + return n +} +func (m *CreateSpecType_DefaultPoolList) Size() (n int) { + if m == nil { + return 0 } - if m.AdvertiseChoice != nil { - { - size := m.AdvertiseChoice.Size() - i -= size - if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DefaultPoolList != nil { + l = m.DefaultPoolList.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.CorsPolicy != nil { - { - size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 + return n +} +func (m *CreateSpecType_SlowDdosMitigation) Size() (n int) { + if m == nil { + return 0 } - if len(m.Routes) > 0 { - for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } + var l int + _ = l + if m.SlowDdosMitigation != nil { + l = m.SlowDdosMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.DefaultRoutePools) > 0 { - for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } + return n +} +func (m *CreateSpecType_EnableChallenge) Size() (n int) { + if m == nil { + return 0 } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } + var l int + _ = l + if m.EnableChallenge != nil { + l = m.EnableChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *GlobalSpecType_Http) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Http != nil { - { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *CreateSpecType_SystemDefaultTimeouts) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_Https) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Https != nil { - { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a + var l int + _ = l + if m.SystemDefaultTimeouts != nil { + l = m.SystemDefaultTimeouts.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublic != nil { - { - size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *CreateSpecType_DisableThreatMesh) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseCustom != nil { - { - size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a + var l int + _ = l + if m.DisableThreatMesh != nil { + l = m.DisableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *GlobalSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_EnableThreatMesh) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableThreatMesh != nil { + l = m.EnableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableWaf != nil { - { - size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a +func (m *CreateSpecType_L7DdosActionDefault) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.L7DdosActionDefault != nil { + l = m.L7DdosActionDefault.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_L7DdosActionBlock) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.L7DdosActionBlock != nil { + l = m.L7DdosActionBlock.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DoNotAdvertise != nil { - { - size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 +func (m *CreateSpecType_L7DdosActionJsChallenge) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.L7DdosActionJsChallenge != nil { + l = m.L7DdosActionJsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_L7DdosActionNone) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.L7DdosActionNone != nil { + l = m.L7DdosActionNone.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublicDefaultVip != nil { - { - size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a +func (m *CreateSpecType_ApiRateLimit) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.ApiRateLimit != nil { + l = m.ApiRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *CreateSpecType_BotDefenseAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BotDefenseAdvanced != nil { + l = m.BotDefenseAdvanced.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallenge != nil { - { - size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) +func (m *ReplaceSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdentification != nil { - { - size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() + } + if m.AdvertiseChoice != nil { + n += m.AdvertiseChoice.Size() + } + if len(m.DefaultRoutePools) > 0 { + for _, e := range m.DefaultRoutePools { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa2 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableRateLimit != nil { - { - size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Routes) > 0 { + for _, e := range m.Routes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb2 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RateLimit != nil { - { - size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.CorsPolicy != nil { + l = m.CorsPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.WafChoice != nil { + n += m.WafChoice.Size() + } + if m.AddLocation { + n += 3 + } + if m.ChallengeType != nil { + n += m.ChallengeType.Size() + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.UserIdChoice != nil { + n += m.UserIdChoice.Size() + } + if m.RateLimitChoice != nil { + n += m.RateLimitChoice.Size() + } + if m.MaliciousUserMitigation != nil { + l = m.MaliciousUserMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.WafExclusionRules) > 0 { + for _, e := range m.WafExclusionRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xba } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CaptchaChallenge != nil { - { - size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.BlockedClients) > 0 { + for _, e := range m.BlockedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xc2 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoChallenge != nil { - { - size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.TrustedClients) > 0 { + for _, e := range m.TrustedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd2 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HttpsAutoCert != nil { - { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.DdosMitigationRules) > 0 { + for _, e := range m.DdosMitigationRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xda } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_AutoHostRewrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_AutoHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AutoHostRewrite != nil { - { - size, err := m.AutoHostRewrite.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.ServicePolicyChoice != nil { + n += m.ServicePolicyChoice.Size() + } + if m.HashPolicyChoice != nil { + n += m.HashPolicyChoice.Size() + } + if m.MlConfigChoice != nil { + n += m.MlConfigChoice.Size() + } + if m.BotDefenseChoice != nil { + n += m.BotDefenseChoice.Size() + } + if m.ApiDefinitionChoice != nil { + n += m.ApiDefinitionChoice.Size() + } + if len(m.DataGuardRules) > 0 { + for _, e := range m.DataGuardRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xe2 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_HostRewrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_HostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.HostRewrite) - copy(dAtA[i:], m.HostRewrite) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostRewrite))) - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xea - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableHostRewrite) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_DisableHostRewrite) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableHostRewrite != nil { - { - size, err := m.DisableHostRewrite.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.IpReputationChoice != nil { + n += m.IpReputationChoice.Size() + } + if m.ApiProtectionRules != nil { + l = m.ApiProtectionRules.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.TrustClientIpHeadersChoice != nil { + n += m.TrustClientIpHeadersChoice.Size() + } + if m.MaliciousUserDetectionChoice != nil { + n += m.MaliciousUserDetectionChoice.Size() + } + if m.ApiDiscoveryChoice != nil { + n += m.ApiDiscoveryChoice.Size() + } + if m.ClientSideDefenseChoice != nil { + n += m.ClientSideDefenseChoice.Size() + } + if m.OriginPoolChoice != nil { + n += m.OriginPoolChoice.Size() + } + if m.CsrfPolicy != nil { + l = m.CsrfPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.GraphqlRules) > 0 { + for _, e := range m.GraphqlRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xf2 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ServicePoliciesFromNamespace != nil { - { - size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.ProtectedCookies) > 0 { + for _, e := range m.ProtectedCookies { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xca } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.SlowDdosMitigationChoice != nil { + n += m.SlowDdosMitigationChoice.Size() + } + if m.JwtValidation != nil { + l = m.JwtValidation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.OriginServerSubsetRuleList != nil { + l = m.OriginServerSubsetRuleList.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ThreatMeshChoice != nil { + n += m.ThreatMeshChoice.Size() + } + if m.L7DdosAutoMitigationAction != nil { + n += m.L7DdosAutoMitigationAction.Size() + } + return n } -func (m *GlobalSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoServicePolicies != nil { - { - size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xd2 +func (m *ReplaceSpecType_Http) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActiveServicePolicies != nil { - { - size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xda +func (m *ReplaceSpecType_Https) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.Https != nil { + l = m.Https.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_AdvertiseOnPublic) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdvertiseOnPublic != nil { + l = m.AdvertiseOnPublic.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RoundRobin != nil { - { - size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xea +func (m *ReplaceSpecType_AdvertiseCustom) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.AdvertiseCustom != nil { + l = m.AdvertiseCustom.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_DisableWaf) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableWaf != nil { + l = m.DisableWaf.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.LeastActive != nil { - { - size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xf2 +func (m *ReplaceSpecType_DoNotAdvertise) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DoNotAdvertise != nil { + l = m.DoNotAdvertise.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_Random) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdvertiseOnPublicDefaultVip != nil { + l = m.AdvertiseOnPublicDefaultVip.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Random != nil { - { - size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xfa +func (m *ReplaceSpecType_JsChallenge) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.JsChallenge != nil { + l = m.JsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_UserIdentification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UserIdentification != nil { + l = m.UserIdentification.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SourceIpStickiness != nil { - { - size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x82 +func (m *ReplaceSpecType_DisableRateLimit) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisableRateLimit != nil { + l = m.DisableRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_RateLimit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RateLimit != nil { + l = m.RateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CookieStickiness != nil { - { - size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x8a +func (m *ReplaceSpecType_CaptchaChallenge) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.CaptchaChallenge != nil { + l = m.CaptchaChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_NoChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoChallenge != nil { + l = m.NoChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RingHash != nil { - { - size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x92 +func (m *ReplaceSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_ServicePoliciesFromNamespace) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ServicePoliciesFromNamespace != nil { + l = m.ServicePoliciesFromNamespace.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PolicyBasedChallenge != nil { - { - size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x9a +func (m *ReplaceSpecType_NoServicePolicies) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.NoServicePolicies != nil { + l = m.NoServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_ActiveServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveServicePolicies != nil { + l = m.ActiveServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AppFirewall != nil { - { - size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xa2 +func (m *ReplaceSpecType_RoundRobin) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.RoundRobin != nil { + l = m.RoundRobin.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_LeastActive) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.LeastActive != nil { + l = m.LeastActive.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SingleLbApp != nil { - { - size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xb2 +func (m *ReplaceSpecType_Random) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.Random != nil { + l = m.Random.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_SourceIpStickiness) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SourceIpStickiness != nil { + l = m.SourceIpStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MultiLbApp != nil { - { - size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xba +func (m *ReplaceSpecType_CookieStickiness) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.CookieStickiness != nil { + l = m.CookieStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_RingHash) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RingHash != nil { + l = m.RingHash.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableBotDefense != nil { - { - size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xca +func (m *ReplaceSpecType_PolicyBasedChallenge) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.PolicyBasedChallenge != nil { + l = m.PolicyBasedChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_AppFirewall) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AppFirewall != nil { + l = m.AppFirewall.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefense != nil { - { - size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xd2 +func (m *ReplaceSpecType_SingleLbApp) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.SingleLbApp != nil { + l = m.SingleLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_MultiLbApp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MultiLbApp != nil { + l = m.MultiLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdClientIp != nil { - { - size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xe2 +func (m *ReplaceSpecType_DisableBotDefense) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisableBotDefense != nil { + l = m.DisableBotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_BotDefense) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BotDefense != nil { + l = m.BotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinitions != nil { - { - size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xea +func (m *ReplaceSpecType_UserIdClientIp) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.UserIdClientIp != nil { + l = m.UserIdClientIp.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *GlobalSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_ApiDefinitions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiDefinitions != nil { + l = m.ApiDefinitions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DisableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DisableIpReputation != nil { - { - size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x8a + l = m.DisableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_EnableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.EnableIpReputation != nil { - { - size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x92 + l = m.EnableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_ApiSpecification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.ApiSpecification != nil { - { - size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x9a + l = m.ApiSpecification.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiRateLimit != nil { - { - size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xa2 +func (m *ReplaceSpecType_DisableApiDefinition) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) + var l int + _ = l if m.DisableApiDefinition != nil { - { - size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xb2 + l = m.DisableApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_ApiDefinition) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.ApiDefinition != nil { - { - size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xba + l = m.ApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DisableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DisableTrustClientIpHeaders != nil { - { - size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xd2 + l = m.DisableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_EnableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.EnableTrustClientIpHeaders != nil { - { - size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xda + l = m.EnableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_EnableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableDdosDetection != nil { - { - size, err := m.EnableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xea - } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_DisableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableDdosDetection != nil { - { - size, err := m.DisableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xf2 +func (m *ReplaceSpecType_EnableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) + var l int + _ = l if m.EnableMaliciousUserDetection != nil { - { - size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x82 + l = m.EnableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DisableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DisableMaliciousUserDetection != nil { - { - size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x8a + l = m.DisableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_EnableApiDiscovery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.EnableApiDiscovery != nil { - { - size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x9a + l = m.EnableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DisableApiDiscovery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DisableApiDiscovery != nil { - { - size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xa2 + l = m.DisableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DisableClientSideDefense) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DisableClientSideDefense != nil { - { - size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xb2 + l = m.DisableClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_ClientSideDefense) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.ClientSideDefense != nil { - { - size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xba + l = m.ClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DefaultPool) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DefaultPool != nil { - { - size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xca + l = m.DefaultPool.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_DefaultPoolList) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.DefaultPoolList != nil { - { - size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xd2 + l = m.DefaultPoolList.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_SlowDdosMitigation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.SlowDdosMitigation != nil { - { - size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xf2 + l = m.SlowDdosMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_EnableChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.EnableChallenge != nil { - { - size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xfa + l = m.EnableChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_SystemDefaultTimeouts) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.SystemDefaultTimeouts != nil { - { - size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x8a + l = m.SystemDefaultTimeouts.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_DisableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_DisableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableThreatIntelligence != nil { - { - size, err := m.DisableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xba +func (m *ReplaceSpecType_DisableThreatMesh) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_EnableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GlobalSpecType_EnableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableThreatIntelligence != nil { - { - size, err := m.EnableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xca + var l int + _ = l + if m.DisableThreatMesh != nil { + l = m.DisableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *GlobalSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_EnableThreatMesh) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableThreatMesh != nil { + l = m.EnableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_L7DdosActionDefault) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.L7DdosActionDefault != nil { - { - size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xfa + l = m.L7DdosActionDefault.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_L7DdosActionBlock) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.L7DdosActionBlock != nil { - { - size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x82 + l = m.L7DdosActionBlock.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_L7DdosActionJsChallenge) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.L7DdosActionJsChallenge != nil { - { - size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x8a + l = m.L7DdosActionJsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} -func (m *GlobalSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *GlobalSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_L7DdosActionNone) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.L7DdosActionNone != nil { - { - size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x92 + l = m.L7DdosActionNone.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *GlobalSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *ReplaceSpecType_ApiRateLimit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ApiRateLimit != nil { + l = m.ApiRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *GlobalSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) +func (m *ReplaceSpecType_BotDefenseAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l if m.BotDefenseAdvanced != nil { - { - size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x9a + l = m.BotDefenseAdvanced.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } -func (m *JWTValidation) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *JWTValidation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *JWTValidation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.MandatoryClaims != nil { - { - size, err := m.MandatoryClaims.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Domains) > 0 { + for _, s := range m.Domains { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x4a } - if m.JwksConfiguration != nil { - { - size := m.JwksConfiguration.Size() - i -= size - if _, err := m.JwksConfiguration.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } + if m.LoadbalancerType != nil { + n += m.LoadbalancerType.Size() + } + if m.AdvertiseChoice != nil { + n += m.AdvertiseChoice.Size() + } + if len(m.DefaultRoutePools) > 0 { + for _, e := range m.DefaultRoutePools { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } } - if m.ReservedClaims != nil { - { - size, err := m.ReservedClaims.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.Routes) > 0 { + for _, e := range m.Routes { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x3a } - if m.Action != nil { - { - size, err := m.Action.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if m.CorsPolicy != nil { + l = m.CorsPolicy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.WafChoice != nil { + n += m.WafChoice.Size() + } + if m.AddLocation { + n += 3 + } + if m.ChallengeType != nil { + n += m.ChallengeType.Size() + } + if m.MoreOption != nil { + l = m.MoreOption.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.UserIdChoice != nil { + n += m.UserIdChoice.Size() + } + if m.RateLimitChoice != nil { + n += m.RateLimitChoice.Size() + } + if m.MaliciousUserMitigation != nil { + l = m.MaliciousUserMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.WafExclusionRules) > 0 { + for _, e := range m.WafExclusionRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x1a } - if m.TokenLocation != nil { - { - size, err := m.TokenLocation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.BlockedClients) > 0 { + for _, e := range m.BlockedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x12 } - if m.Target != nil { - { - size, err := m.Target.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.TrustedClients) > 0 { + for _, e := range m.TrustedClients { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0xa } - return len(dAtA) - i, nil -} - -func (m *JWTValidation_AuthServerUri) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *JWTValidation_AuthServerUri) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.AuthServerUri) - copy(dAtA[i:], m.AuthServerUri) - i = encodeVarintTypes(dAtA, i, uint64(len(m.AuthServerUri))) - i-- - dAtA[i] = 0x2a - return len(dAtA) - i, nil -} -func (m *JWTValidation_Jwks) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *JWTValidation_Jwks) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Jwks) - copy(dAtA[i:], m.Jwks) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Jwks))) - i-- - dAtA[i] = 0x32 - return len(dAtA) - i, nil -} -func (m *JWTValidation_JwksConfig) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *JWTValidation_JwksConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JwksConfig != nil { - { - size, err := m.JwksConfig.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) + if len(m.DdosMitigationRules) > 0 { + for _, e := range m.DdosMitigationRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) } - i-- - dAtA[i] = 0x42 } - return len(dAtA) - i, nil -} -func (m *MandatoryClaims) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.ServicePolicyChoice != nil { + n += m.ServicePolicyChoice.Size() } - return dAtA[:n], nil -} - -func (m *MandatoryClaims) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + if m.HashPolicyChoice != nil { + n += m.HashPolicyChoice.Size() + } + if m.MlConfigChoice != nil { + n += m.MlConfigChoice.Size() + } + if m.BotDefenseChoice != nil { + n += m.BotDefenseChoice.Size() + } + if m.ApiDefinitionChoice != nil { + n += m.ApiDefinitionChoice.Size() + } + if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { + for _, e := range m.DownstreamTlsCertificateExpirationTimestamps { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if len(m.DataGuardRules) > 0 { + for _, e := range m.DataGuardRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.IpReputationChoice != nil { + n += m.IpReputationChoice.Size() + } + if m.ApiProtectionRules != nil { + l = m.ApiProtectionRules.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.TrustClientIpHeadersChoice != nil { + n += m.TrustClientIpHeadersChoice.Size() + } + if m.MaliciousUserDetectionChoice != nil { + n += m.MaliciousUserDetectionChoice.Size() + } + if m.ApiDiscoveryChoice != nil { + n += m.ApiDiscoveryChoice.Size() + } + if m.ClientSideDefenseChoice != nil { + n += m.ClientSideDefenseChoice.Size() + } + if m.OriginPoolChoice != nil { + n += m.OriginPoolChoice.Size() + } + if m.CsrfPolicy != nil { + l = m.CsrfPolicy.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.GraphqlRules) > 0 { + for _, e := range m.GraphqlRules { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if len(m.ProtectedCookies) > 0 { + for _, e := range m.ProtectedCookies { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.SlowDdosMitigationChoice != nil { + n += m.SlowDdosMitigationChoice.Size() + } + if m.JwtValidation != nil { + l = m.JwtValidation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.OriginServerSubsetRuleList != nil { + l = m.OriginServerSubsetRuleList.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ThreatMeshChoice != nil { + n += m.ThreatMeshChoice.Size() + } + if m.L7DdosAutoMitigationAction != nil { + n += m.L7DdosAutoMitigationAction.Size() + } + if m.CertState != 0 { + n += 2 + sovTypes(uint64(m.CertState)) + } + l = len(m.HostName) + if l > 0 { + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.DnsInfo) > 0 { + for _, e := range m.DnsInfo { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.State != 0 { + n += 2 + sovTypes(uint64(m.State)) + } + if m.AutoCertInfo != nil { + l = m.AutoCertInfo.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if len(m.InternetVipInfo) > 0 { + for _, e := range m.InternetVipInfo { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + return n } -func (m *MandatoryClaims) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_Http) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.ClaimNames) > 0 { - for iNdEx := len(m.ClaimNames) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ClaimNames[iNdEx]) - copy(dAtA[i:], m.ClaimNames[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ClaimNames[iNdEx]))) - i-- - dAtA[i] = 0xa - } + if m.Http != nil { + l = m.Http.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *JWKS) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_Https) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *JWKS) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *JWKS) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if len(m.Cleartext) > 0 { - i -= len(m.Cleartext) - copy(dAtA[i:], m.Cleartext) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Cleartext))) - i-- - dAtA[i] = 0x1a + if m.Https != nil { + l = m.Https.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *Target) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_AdvertiseOnPublic) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil -} - -func (m *Target) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *Target) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i var l int _ = l - if m.Target != nil { - { - size := m.Target.Size() - i -= size - if _, err := m.Target.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.AdvertiseOnPublic != nil { + l = m.AdvertiseOnPublic.Size() + n += 1 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *Target_AllEndpoint) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *Target_AllEndpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AllEndpoint != nil { - { - size, err := m.AllEndpoint.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *GetSpecType_AdvertiseCustom) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *Target_ApiGroups) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + var l int + _ = l + if m.AdvertiseCustom != nil { + l = m.AdvertiseCustom.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Target_ApiGroups) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiGroups != nil { - { - size, err := m.ApiGroups.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (m *GetSpecType_DisableWaf) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.DisableWaf != nil { + l = m.DisableWaf.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *Target_BasePaths) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_DoNotAdvertise) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DoNotAdvertise != nil { + l = m.DoNotAdvertise.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Target_BasePaths) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BasePaths != nil { - { - size, err := m.BasePaths.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (m *GetSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.AdvertiseOnPublicDefaultVip != nil { + l = m.AdvertiseOnPublicDefaultVip.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n } -func (m *TokenLocation) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_JsChallenge) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.JsChallenge != nil { + l = m.JsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *TokenLocation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_UserIdentification) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UserIdentification != nil { + l = m.UserIdentification.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *TokenLocation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_DisableRateLimit) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.TokenLocation != nil { - { - size := m.TokenLocation.Size() - i -= size - if _, err := m.TokenLocation.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.DisableRateLimit != nil { + l = m.DisableRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *TokenLocation_BearerToken) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *TokenLocation_BearerToken) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BearerToken != nil { - { - size, err := m.BearerToken.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *GetSpecType_RateLimit) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil -} -func (m *TokenLocation_Cookie) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *TokenLocation_Cookie) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Cookie) - copy(dAtA[i:], m.Cookie) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Cookie))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil -} -func (m *TokenLocation_Header) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *TokenLocation_Header) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Header) - copy(dAtA[i:], m.Header) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Header))) - i-- - dAtA[i] = 0x22 - return len(dAtA) - i, nil -} -func (m *TokenLocation_QueryParam) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *TokenLocation_QueryParam) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.QueryParam) - copy(dAtA[i:], m.QueryParam) - i = encodeVarintTypes(dAtA, i, uint64(len(m.QueryParam))) - i-- - dAtA[i] = 0x2a - return len(dAtA) - i, nil -} -func (m *ReservedClaims) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + var l int + _ = l + if m.RateLimit != nil { + l = m.RateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) } - return dAtA[:n], nil -} - -func (m *ReservedClaims) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ReservedClaims) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_CaptchaChallenge) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.ValidatePeriod != nil { - { - size := m.ValidatePeriod.Size() - i -= size - if _, err := m.ValidatePeriod.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.CaptchaChallenge != nil { + l = m.CaptchaChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.AudienceValidation != nil { - { - size := m.AudienceValidation.Size() - i -= size - if _, err := m.AudienceValidation.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_NoChallenge) Size() (n int) { + if m == nil { + return 0 } - if m.IssuerValidation != nil { - { - size := m.IssuerValidation.Size() - i -= size - if _, err := m.IssuerValidation.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.NoChallenge != nil { + l = m.NoChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *ReservedClaims_IssuerDisable) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *ReservedClaims_IssuerDisable) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.IssuerDisable != nil { - { - size, err := m.IssuerDisable.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *GetSpecType_HttpsAutoCert) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.HttpsAutoCert != nil { + l = m.HttpsAutoCert.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ReservedClaims_Issuer) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_ServicePoliciesFromNamespace) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ServicePoliciesFromNamespace != nil { + l = m.ServicePoliciesFromNamespace.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ReservedClaims_Issuer) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Issuer) - copy(dAtA[i:], m.Issuer) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Issuer))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil +func (m *GetSpecType_NoServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.NoServicePolicies != nil { + l = m.NoServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ReservedClaims_AudienceDisable) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_ActiveServicePolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveServicePolicies != nil { + l = m.ActiveServicePolicies.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ReservedClaims_AudienceDisable) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AudienceDisable != nil { - { - size, err := m.AudienceDisable.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (m *GetSpecType_RoundRobin) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.RoundRobin != nil { + l = m.RoundRobin.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ReservedClaims_Audience) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_LeastActive) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.LeastActive != nil { + l = m.LeastActive.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ReservedClaims_Audience) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Audience != nil { - { - size, err := m.Audience.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 +func (m *GetSpecType_Random) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.Random != nil { + l = m.Random.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ReservedClaims_ValidatePeriodDisable) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_SourceIpStickiness) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SourceIpStickiness != nil { + l = m.SourceIpStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ReservedClaims_ValidatePeriodDisable) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ValidatePeriodDisable != nil { - { - size, err := m.ValidatePeriodDisable.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 +func (m *GetSpecType_CookieStickiness) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.CookieStickiness != nil { + l = m.CookieStickiness.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *ReservedClaims_ValidatePeriodEnable) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_RingHash) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RingHash != nil { + l = m.RingHash.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *ReservedClaims_ValidatePeriodEnable) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ValidatePeriodEnable != nil { - { - size, err := m.ValidatePeriodEnable.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a +func (m *GetSpecType_PolicyBasedChallenge) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.PolicyBasedChallenge != nil { + l = m.PolicyBasedChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *APIGroups) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_AppFirewall) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.AppFirewall != nil { + l = m.AppFirewall.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *APIGroups) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_SingleLbApp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SingleLbApp != nil { + l = m.SingleLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *APIGroups) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_MultiLbApp) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.ApiGroups) > 0 { - for iNdEx := len(m.ApiGroups) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ApiGroups[iNdEx]) - copy(dAtA[i:], m.ApiGroups[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.ApiGroups[iNdEx]))) - i-- - dAtA[i] = 0x12 - } + if m.MultiLbApp != nil { + l = m.MultiLbApp.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *BasePathsType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_DisableBotDefense) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.DisableBotDefense != nil { + l = m.DisableBotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BasePathsType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_BotDefense) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BotDefense != nil { + l = m.BotDefense.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *BasePathsType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_UserIdClientIp) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.BasePaths) > 0 { - for iNdEx := len(m.BasePaths) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.BasePaths[iNdEx]) - copy(dAtA[i:], m.BasePaths[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.BasePaths[iNdEx]))) - i-- - dAtA[i] = 0xa - } + if m.UserIdClientIp != nil { + l = m.UserIdClientIp.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *Audiences) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_ApiDefinitions) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.ApiDefinitions != nil { + l = m.ApiDefinitions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Audiences) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_DisableIpReputation) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableIpReputation != nil { + l = m.DisableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *Audiences) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_EnableIpReputation) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if len(m.Audiences) > 0 { - for iNdEx := len(m.Audiences) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Audiences[iNdEx]) - copy(dAtA[i:], m.Audiences[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Audiences[iNdEx]))) - i-- - dAtA[i] = 0xa - } + if m.EnableIpReputation != nil { + l = m.EnableIpReputation.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil + return n } - -func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (m *GetSpecType_ApiSpecification) Size() (n int) { + if m == nil { + return 0 } - return dAtA[:n], nil + var l int + _ = l + if m.ApiSpecification != nil { + l = m.ApiSpecification.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_DisableApiDefinition) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableApiDefinition != nil { + l = m.DisableApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } - -func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i +func (m *GetSpecType_ApiDefinition) Size() (n int) { + if m == nil { + return 0 + } var l int _ = l - if m.BotDefenseChoice != nil { - { - size := m.BotDefenseChoice.Size() - i -= size - if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + if m.ApiDefinition != nil { + l = m.ApiDefinition.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.L7DdosAutoMitigationAction != nil { - { - size := m.L7DdosAutoMitigationAction.Size() - i -= size - if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_DisableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 } - if m.ThreatIntelligenceChoice != nil { - { - size := m.ThreatIntelligenceChoice.Size() - i -= size - if _, err := m.ThreatIntelligenceChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DisableTrustClientIpHeaders != nil { + l = m.DisableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.OriginServerSubsetRuleList != nil { - { - size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xaa + return n +} +func (m *GetSpecType_EnableTrustClientIpHeaders) Size() (n int) { + if m == nil { + return 0 } - if m.JwtValidation != nil { - { - size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x92 + var l int + _ = l + if m.EnableTrustClientIpHeaders != nil { + l = m.EnableTrustClientIpHeaders.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.SlowDdosMitigationChoice != nil { - { - size := m.SlowDdosMitigationChoice.Size() - i -= size - if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_EnableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 } - if m.ChallengeType != nil { - { - size := m.ChallengeType.Size() - i -= size - if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.EnableMaliciousUserDetection != nil { + l = m.EnableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.ProtectedCookies) > 0 { - for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xea - } + return n +} +func (m *GetSpecType_DisableMaliciousUserDetection) Size() (n int) { + if m == nil { + return 0 } - if len(m.GraphqlRules) > 0 { - for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xe2 - } + var l int + _ = l + if m.DisableMaliciousUserDetection != nil { + l = m.DisableMaliciousUserDetection.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.CsrfPolicy != nil { - { - size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xda + return n +} +func (m *GetSpecType_EnableApiDiscovery) Size() (n int) { + if m == nil { + return 0 } - if m.OriginPoolChoice != nil { - { - size := m.OriginPoolChoice.Size() - i -= size - if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.EnableApiDiscovery != nil { + l = m.EnableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ClientSideDefenseChoice != nil { - { - size := m.ClientSideDefenseChoice.Size() - i -= size - if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_DisableApiDiscovery) Size() (n int) { + if m == nil { + return 0 } - if m.ApiDiscoveryChoice != nil { - { - size := m.ApiDiscoveryChoice.Size() - i -= size - if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DisableApiDiscovery != nil { + l = m.DisableApiDiscovery.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.MaliciousUserDetectionChoice != nil { - { - size := m.MaliciousUserDetectionChoice.Size() - i -= size - if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_DisableClientSideDefense) Size() (n int) { + if m == nil { + return 0 } - if m.DdosDetectionChoice != nil { - { - size := m.DdosDetectionChoice.Size() - i -= size - if _, err := m.DdosDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DisableClientSideDefense != nil { + l = m.DisableClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.TrustClientIpHeadersChoice != nil { - { - size := m.TrustClientIpHeadersChoice.Size() - i -= size - if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_ClientSideDefense) Size() (n int) { + if m == nil { + return 0 } - if m.ApiProtectionRules != nil { - { - size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xc2 + var l int + _ = l + if m.ClientSideDefense != nil { + l = m.ClientSideDefense.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ApiDefinitionChoice != nil { - { - size := m.ApiDefinitionChoice.Size() - i -= size - if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_DefaultPool) Size() (n int) { + if m == nil { + return 0 } - if m.RateLimitChoice != nil { - { - size := m.RateLimitChoice.Size() - i -= size - if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.DefaultPool != nil { + l = m.DefaultPool.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.IpReputationChoice != nil { - { - size := m.IpReputationChoice.Size() - i -= size - if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_DefaultPoolList) Size() (n int) { + if m == nil { + return 0 } - if len(m.DataGuardRules) > 0 { - for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xfa - } + var l int + _ = l + if m.DefaultPoolList != nil { + l = m.DefaultPoolList.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.UserIdChoice != nil { - { - size := m.UserIdChoice.Size() - i -= size - if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_SlowDdosMitigation) Size() (n int) { + if m == nil { + return 0 } - if m.MlConfigChoice != nil { - { - size := m.MlConfigChoice.Size() - i -= size - if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.SlowDdosMitigation != nil { + l = m.SlowDdosMitigation.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.WafChoice != nil { - { - size := m.WafChoice.Size() - i -= size - if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_EnableChallenge) Size() (n int) { + if m == nil { + return 0 } - if m.HashPolicyChoice != nil { - { - size := m.HashPolicyChoice.Size() - i -= size - if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.EnableChallenge != nil { + l = m.EnableChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.ServicePolicyChoice != nil { - { - size := m.ServicePolicyChoice.Size() - i -= size - if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_SystemDefaultTimeouts) Size() (n int) { + if m == nil { + return 0 } - if len(m.DdosMitigationRules) > 0 { - for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xaa - } + var l int + _ = l + if m.SystemDefaultTimeouts != nil { + l = m.SystemDefaultTimeouts.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.TrustedClients) > 0 { - for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x9a - } + return n +} +func (m *GetSpecType_DisableThreatMesh) Size() (n int) { + if m == nil { + return 0 } - if len(m.BlockedClients) > 0 { - for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x92 - } + var l int + _ = l + if m.DisableThreatMesh != nil { + l = m.DisableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.WafExclusionRules) > 0 { - for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x8a - } + return n +} +func (m *GetSpecType_EnableThreatMesh) Size() (n int) { + if m == nil { + return 0 } - if m.MaliciousUserMitigation != nil { - { - size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x82 + var l int + _ = l + if m.EnableThreatMesh != nil { + l = m.EnableThreatMesh.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + return n +} +func (m *GetSpecType_L7DdosActionDefault) Size() (n int) { + if m == nil { + return 0 } - if m.MoreOption != nil { - { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + var l int + _ = l + if m.L7DdosActionDefault != nil { + l = m.L7DdosActionDefault.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x88 + return n +} +func (m *GetSpecType_L7DdosActionBlock) Size() (n int) { + if m == nil { + return 0 } - if m.AdvertiseChoice != nil { - { - size := m.AdvertiseChoice.Size() - i -= size - if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + var l int + _ = l + if m.L7DdosActionBlock != nil { + l = m.L7DdosActionBlock.Size() + n += 2 + l + sovTypes(uint64(l)) } - if m.CorsPolicy != nil { - { - size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 + return n +} +func (m *GetSpecType_L7DdosActionJsChallenge) Size() (n int) { + if m == nil { + return 0 } - if len(m.Routes) > 0 { - for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } + var l int + _ = l + if m.L7DdosActionJsChallenge != nil { + l = m.L7DdosActionJsChallenge.Size() + n += 2 + l + sovTypes(uint64(l)) } - if len(m.DefaultRoutePools) > 0 { - for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } + return n +} +func (m *GetSpecType_L7DdosActionNone) Size() (n int) { + if m == nil { + return 0 } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } + var l int + _ = l + if m.L7DdosActionNone != nil { + l = m.L7DdosActionNone.Size() + n += 2 + l + sovTypes(uint64(l)) } - return len(dAtA) - i, nil -} - -func (m *CreateSpecType_Http) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return n } - -func (m *CreateSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Http != nil { - { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (m *GetSpecType_ApiRateLimit) Size() (n int) { + if m == nil { + return 0 } - return len(dAtA) - i, nil + var l int + _ = l + if m.ApiRateLimit != nil { + l = m.ApiRateLimit.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *CreateSpecType_Https) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (m *GetSpecType_BotDefenseAdvanced) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BotDefenseAdvanced != nil { + l = m.BotDefenseAdvanced.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n } -func (m *CreateSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Https != nil { - { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - return len(dAtA) - i, nil +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 } -func (m *CreateSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) } - -func (m *CreateSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublic != nil { - { - size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (this *ProxyTypeHttps) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps{`, + `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, + `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, + `TlsCertificatesChoice:` + fmt.Sprintf("%v", this.TlsCertificatesChoice) + `,`, + `ServerHeaderChoice:` + fmt.Sprintf("%v", this.ServerHeaderChoice) + `,`, + `PathNormalizeChoice:` + fmt.Sprintf("%v", this.PathNormalizeChoice) + `,`, + `PortChoice:` + fmt.Sprintf("%v", this.PortChoice) + `,`, + `DefaultLbChoice:` + fmt.Sprintf("%v", this.DefaultLbChoice) + `,`, + `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, + `ConnectionIdleTimeout:` + fmt.Sprintf("%v", this.ConnectionIdleTimeout) + `,`, + `HttpProtocolOptions:` + strings.Replace(fmt.Sprintf("%v", this.HttpProtocolOptions), "HttpProtocolOptions", "virtual_host.HttpProtocolOptions", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttps_TlsParameters) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttps_TlsParameters{`, + `TlsParameters:` + strings.Replace(fmt.Sprintf("%v", this.TlsParameters), "DownstreamTlsParamsType", "views.DownstreamTlsParamsType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseCustom != nil { - { - size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *ProxyTypeHttps_DefaultHeader) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps_DefaultHeader{`, + `DefaultHeader:` + strings.Replace(fmt.Sprintf("%v", this.DefaultHeader), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttps_ServerName) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttps_ServerName{`, + `ServerName:` + fmt.Sprintf("%v", this.ServerName) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableWaf != nil { - { - size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a +func (this *ProxyTypeHttps_AppendServerName) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps_AppendServerName{`, + `AppendServerName:` + fmt.Sprintf("%v", this.AppendServerName) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttps_PassThrough) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttps_PassThrough{`, + `PassThrough:` + strings.Replace(fmt.Sprintf("%v", this.PassThrough), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DoNotAdvertise != nil { - { - size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 +func (this *ProxyTypeHttps_EnablePathNormalize) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps_EnablePathNormalize{`, + `EnablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.EnablePathNormalize), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttps_DisablePathNormalize) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttps_DisablePathNormalize{`, + `DisablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.DisablePathNormalize), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublicDefaultVip != nil { - { - size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a +func (this *ProxyTypeHttps_Port) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps_Port{`, + `Port:` + fmt.Sprintf("%v", this.Port) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttps_NonDefaultLoadbalancer) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttps_NonDefaultLoadbalancer{`, + `NonDefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.NonDefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallenge != nil { - { - size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 +func (this *ProxyTypeHttps_DefaultLoadbalancer) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps_DefaultLoadbalancer{`, + `DefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.DefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttps_TlsCertParams) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttps_TlsCertParams{`, + `TlsCertParams:` + strings.Replace(fmt.Sprintf("%v", this.TlsCertParams), "DownstreamTLSCertsParams", "views.DownstreamTLSCertsParams", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdentification != nil { - { - size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa2 +func (this *ProxyTypeHttps_PortRanges) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttps_PortRanges{`, + `PortRanges:` + fmt.Sprintf("%v", this.PortRanges) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttp{`, + `DnsVolterraManaged:` + fmt.Sprintf("%v", this.DnsVolterraManaged) + `,`, + `PortChoice:` + fmt.Sprintf("%v", this.PortChoice) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableRateLimit != nil { - { - size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb2 +func (this *ProxyTypeHttp_Port) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttp_Port{`, + `Port:` + fmt.Sprintf("%v", this.Port) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttp_PortRanges) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttp_PortRanges{`, + `PortRanges:` + fmt.Sprintf("%v", this.PortRanges) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RateLimit != nil { - { - size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xba +func (this *ProxyTypeHttpsAutoCerts) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts{`, + `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, + `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, + `TlsConfig:` + strings.Replace(fmt.Sprintf("%v", this.TlsConfig), "TlsConfig", "views.TlsConfig", 1) + `,`, + `MtlsChoice:` + fmt.Sprintf("%v", this.MtlsChoice) + `,`, + `ServerHeaderChoice:` + fmt.Sprintf("%v", this.ServerHeaderChoice) + `,`, + `PathNormalizeChoice:` + fmt.Sprintf("%v", this.PathNormalizeChoice) + `,`, + `PortChoice:` + fmt.Sprintf("%v", this.PortChoice) + `,`, + `DefaultLbChoice:` + fmt.Sprintf("%v", this.DefaultLbChoice) + `,`, + `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, + `ConnectionIdleTimeout:` + fmt.Sprintf("%v", this.ConnectionIdleTimeout) + `,`, + `HttpProtocolOptions:` + strings.Replace(fmt.Sprintf("%v", this.HttpProtocolOptions), "HttpProtocolOptions", "virtual_host.HttpProtocolOptions", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_NoMtls) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_NoMtls{`, + `NoMtls:` + strings.Replace(fmt.Sprintf("%v", this.NoMtls), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CaptchaChallenge != nil { - { - size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xc2 +func (this *ProxyTypeHttpsAutoCerts_UseMtls) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_UseMtls{`, + `UseMtls:` + strings.Replace(fmt.Sprintf("%v", this.UseMtls), "DownstreamTlsValidationContext", "views.DownstreamTlsValidationContext", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DefaultHeader{`, + `DefaultHeader:` + strings.Replace(fmt.Sprintf("%v", this.DefaultHeader), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoChallenge != nil { - { - size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd2 +func (this *ProxyTypeHttpsAutoCerts_ServerName) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_ServerName{`, + `ServerName:` + fmt.Sprintf("%v", this.ServerName) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *CreateSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HttpsAutoCert != nil { - { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xda +func (this *ProxyTypeHttpsAutoCerts_AppendServerName) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *CreateSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_AppendServerName{`, + `AppendServerName:` + fmt.Sprintf("%v", this.AppendServerName) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ServicePoliciesFromNamespace != nil { - { - size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xca +func (this *ProxyTypeHttpsAutoCerts_PassThrough) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *CreateSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_PassThrough{`, + `PassThrough:` + strings.Replace(fmt.Sprintf("%v", this.PassThrough), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoServicePolicies != nil { - { - size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xd2 +func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_EnablePathNormalize{`, + `EnablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.EnablePathNormalize), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DisablePathNormalize{`, + `DisablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.DisablePathNormalize), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActiveServicePolicies != nil { - { - size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xda +func (this *ProxyTypeHttpsAutoCerts_Port) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_Port{`, + `Port:` + fmt.Sprintf("%v", this.Port) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer{`, + `NonDefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.NonDefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RoundRobin != nil { - { - size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xea +func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DefaultLoadbalancer{`, + `DefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.DefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProxyTypeHttpsAutoCerts_PortRanges) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_PortRanges{`, + `PortRanges:` + fmt.Sprintf("%v", this.PortRanges) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.LeastActive != nil { - { - size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xf2 +func (this *HashPolicyListType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForHashPolicy := "[]*HashPolicyType{" + for _, f := range this.HashPolicy { + repeatedStringForHashPolicy += strings.Replace(fmt.Sprintf("%v", f), "HashPolicyType", "route.HashPolicyType", 1) + "," + } + repeatedStringForHashPolicy += "}" + s := strings.Join([]string{`&HashPolicyListType{`, + `HashPolicy:` + repeatedStringForHashPolicy + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_Random) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *MirrorPolicyType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MirrorPolicyType{`, + `OriginPool:` + strings.Replace(fmt.Sprintf("%v", this.OriginPool), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `Percent:` + strings.Replace(fmt.Sprintf("%v", this.Percent), "FractionalPercent", "schema.FractionalPercent", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Random != nil { - { - size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xfa +func (this *RouteSimpleAdvancedOptions) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForRequestHeadersToAdd := "[]*HeaderManipulationOptionType{" + for _, f := range this.RequestHeadersToAdd { + repeatedStringForRequestHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + } + repeatedStringForRequestHeadersToAdd += "}" + repeatedStringForResponseHeadersToAdd := "[]*HeaderManipulationOptionType{" + for _, f := range this.ResponseHeadersToAdd { + repeatedStringForResponseHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + } + repeatedStringForResponseHeadersToAdd += "}" + keysForEndpointSubsets := make([]string, 0, len(this.EndpointSubsets)) + for k, _ := range this.EndpointSubsets { + keysForEndpointSubsets = append(keysForEndpointSubsets, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForEndpointSubsets) + mapStringForEndpointSubsets := "map[string]string{" + for _, k := range keysForEndpointSubsets { + mapStringForEndpointSubsets += fmt.Sprintf("%v: %v,", k, this.EndpointSubsets[k]) + } + mapStringForEndpointSubsets += "}" + s := strings.Join([]string{`&RouteSimpleAdvancedOptions{`, + `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, + `Priority:` + fmt.Sprintf("%v", this.Priority) + `,`, + `EndpointSubsets:` + mapStringForEndpointSubsets + `,`, + `RewriteChoice:` + fmt.Sprintf("%v", this.RewriteChoice) + `,`, + `RequestHeadersToAdd:` + repeatedStringForRequestHeadersToAdd + `,`, + `RequestHeadersToRemove:` + fmt.Sprintf("%v", this.RequestHeadersToRemove) + `,`, + `ResponseHeadersToAdd:` + repeatedStringForResponseHeadersToAdd + `,`, + `ResponseHeadersToRemove:` + fmt.Sprintf("%v", this.ResponseHeadersToRemove) + `,`, + `DisableLocationAdd:` + fmt.Sprintf("%v", this.DisableLocationAdd) + `,`, + `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, + `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, + `SpdyChoice:` + fmt.Sprintf("%v", this.SpdyChoice) + `,`, + `WebsocketChoice:` + fmt.Sprintf("%v", this.WebsocketChoice) + `,`, + `RetryPolicyChoice:` + fmt.Sprintf("%v", this.RetryPolicyChoice) + `,`, + `Timeout:` + fmt.Sprintf("%v", this.Timeout) + `,`, + `BufferChoice:` + fmt.Sprintf("%v", this.BufferChoice) + `,`, + `MirroringChoice:` + fmt.Sprintf("%v", this.MirroringChoice) + `,`, + `ClusterRetractChoice:` + fmt.Sprintf("%v", this.ClusterRetractChoice) + `,`, + `BotDefenseJavascriptInjectionChoice:` + fmt.Sprintf("%v", this.BotDefenseJavascriptInjectionChoice) + `,`, + `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_CommonHashPolicy{`, + `CommonHashPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CommonHashPolicy), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SourceIpStickiness != nil { - { - size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x82 +func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_SpecificHashPolicy{`, + `SpecificHashPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SpecificHashPolicy), "HashPolicyListType", "HashPolicyListType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisablePrefixRewrite{`, + `DisablePrefixRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisablePrefixRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CookieStickiness != nil { - { - size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x8a +func (this *RouteSimpleAdvancedOptions_PrefixRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_PrefixRewrite{`, + `PrefixRewrite:` + fmt.Sprintf("%v", this.PrefixRewrite) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_InheritedWaf) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_InheritedWaf{`, + `InheritedWaf:` + strings.Replace(fmt.Sprintf("%v", this.InheritedWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RingHash != nil { - { - size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x92 +func (this *RouteSimpleAdvancedOptions_DisableSpdy) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableSpdy{`, + `DisableSpdy:` + strings.Replace(fmt.Sprintf("%v", this.DisableSpdy), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_EnableSpdy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_EnableSpdy{`, + `EnableSpdy:` + strings.Replace(fmt.Sprintf("%v", this.EnableSpdy), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PolicyBasedChallenge != nil { - { - size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x9a +func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableWebSocketConfig{`, + `DisableWebSocketConfig:` + strings.Replace(fmt.Sprintf("%v", this.DisableWebSocketConfig), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_WebSocketConfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_WebSocketConfig{`, + `WebSocketConfig:` + strings.Replace(fmt.Sprintf("%v", this.WebSocketConfig), "WebsocketConfigType", "route.WebsocketConfigType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AppFirewall != nil { - { - size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xa2 +func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DefaultRetryPolicy{`, + `DefaultRetryPolicy:` + strings.Replace(fmt.Sprintf("%v", this.DefaultRetryPolicy), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_RetryPolicy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_RetryPolicy{`, + `RetryPolicy:` + strings.Replace(fmt.Sprintf("%v", this.RetryPolicy), "RetryPolicyType", "schema.RetryPolicyType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SingleLbApp != nil { - { - size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xb2 +func (this *RouteSimpleAdvancedOptions_CommonBuffering) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_CommonBuffering{`, + `CommonBuffering:` + strings.Replace(fmt.Sprintf("%v", this.CommonBuffering), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_BufferPolicy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_BufferPolicy{`, + `BufferPolicy:` + strings.Replace(fmt.Sprintf("%v", this.BufferPolicy), "BufferConfigType", "schema.BufferConfigType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MultiLbApp != nil { - { - size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xba +func (this *RouteSimpleAdvancedOptions_DisableMirroring) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *CreateSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableMirroring{`, + `DisableMirroring:` + strings.Replace(fmt.Sprintf("%v", this.DisableMirroring), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableBotDefense != nil { - { - size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xca +func (this *RouteSimpleAdvancedOptions_MirrorPolicy) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_MirrorPolicy{`, + `MirrorPolicy:` + strings.Replace(fmt.Sprintf("%v", this.MirrorPolicy), "MirrorPolicyType", "MirrorPolicyType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_RetractCluster) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_RetractCluster{`, + `RetractCluster:` + strings.Replace(fmt.Sprintf("%v", this.RetractCluster), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefense != nil { - { - size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xd2 +func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DoNotRetractCluster{`, + `DoNotRetractCluster:` + strings.Replace(fmt.Sprintf("%v", this.DoNotRetractCluster), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection{`, + `InheritedBotDefenseJavascriptInjection:` + strings.Replace(fmt.Sprintf("%v", this.InheritedBotDefenseJavascriptInjection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdClientIp != nil { - { - size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xe2 +func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection{`, + `BotDefenseJavascriptInjection:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseJavascriptInjection), "BotDefenseJavascriptInjectionType", "route.BotDefenseJavascriptInjectionType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_DisableWaf) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableWaf{`, + `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinitions != nil { - { - size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xea +func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_NoRetryPolicy{`, + `NoRetryPolicy:` + strings.Replace(fmt.Sprintf("%v", this.NoRetryPolicy), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteSimpleAdvancedOptions_RegexRewrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_RegexRewrite{`, + `RegexRewrite:` + strings.Replace(fmt.Sprintf("%v", this.RegexRewrite), "RegexMatchRewrite", "schema.RegexMatchRewrite", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableIpReputation != nil { - { - size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x8a +func (this *RouteSimpleAdvancedOptions_AppFirewall) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteSimpleAdvancedOptions_AppFirewall{`, + `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTypeSimpleWithDefaultOriginPool) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool{`, + `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `HostRewriteParams:` + fmt.Sprintf("%v", this.HostRewriteParams) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableIpReputation != nil { - { - size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x92 +func (this *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite{`, + `AutoHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.AutoHostRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool_HostRewrite{`, + `HostRewrite:` + fmt.Sprintf("%v", this.HostRewrite) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiSpecification != nil { - { - size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x9a +func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite{`, + `DisableHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisableHostRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTypeSimple) String() string { + if this == nil { + return "nil" + } + repeatedStringForOriginPools := "[]*OriginPoolWithWeight{" + for _, f := range this.OriginPools { + repeatedStringForOriginPools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," + } + repeatedStringForOriginPools += "}" + repeatedStringForHeaders := "[]*HeaderMatcherType{" + for _, f := range this.Headers { + repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," + } + repeatedStringForHeaders += "}" + s := strings.Join([]string{`&RouteTypeSimple{`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, + `OriginPools:` + repeatedStringForOriginPools + `,`, + `HostRewriteParams:` + fmt.Sprintf("%v", this.HostRewriteParams) + `,`, + `AdvancedOptions:` + strings.Replace(this.AdvancedOptions.String(), "RouteSimpleAdvancedOptions", "RouteSimpleAdvancedOptions", 1) + `,`, + `Headers:` + repeatedStringForHeaders + `,`, + `IncomingPort:` + strings.Replace(fmt.Sprintf("%v", this.IncomingPort), "PortMatcherType", "schema.PortMatcherType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiRateLimit != nil { - { - size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xa2 +func (this *RouteTypeSimple_AutoHostRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteTypeSimple_AutoHostRewrite{`, + `AutoHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.AutoHostRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTypeSimple_HostRewrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTypeSimple_HostRewrite{`, + `HostRewrite:` + fmt.Sprintf("%v", this.HostRewrite) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableApiDefinition != nil { - { - size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xb2 +func (this *RouteTypeSimple_DisableHostRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteTypeSimple_DisableHostRewrite{`, + `DisableHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisableHostRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTypeRedirect) String() string { + if this == nil { + return "nil" + } + repeatedStringForHeaders := "[]*HeaderMatcherType{" + for _, f := range this.Headers { + repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," + } + repeatedStringForHeaders += "}" + s := strings.Join([]string{`&RouteTypeRedirect{`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, + `RouteRedirect:` + strings.Replace(fmt.Sprintf("%v", this.RouteRedirect), "RouteRedirect", "route.RouteRedirect", 1) + `,`, + `Headers:` + repeatedStringForHeaders + `,`, + `IncomingPort:` + strings.Replace(fmt.Sprintf("%v", this.IncomingPort), "PortMatcherType", "schema.PortMatcherType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinition != nil { - { - size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xba +func (this *RouteTypeDirectResponse) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForHeaders := "[]*HeaderMatcherType{" + for _, f := range this.Headers { + repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," + } + repeatedStringForHeaders += "}" + s := strings.Join([]string{`&RouteTypeDirectResponse{`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, + `RouteDirectResponse:` + strings.Replace(fmt.Sprintf("%v", this.RouteDirectResponse), "RouteDirectResponse", "route.RouteDirectResponse", 1) + `,`, + `Headers:` + repeatedStringForHeaders + `,`, + `IncomingPort:` + strings.Replace(fmt.Sprintf("%v", this.IncomingPort), "PortMatcherType", "schema.PortMatcherType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteTypeCustomRoute) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteTypeCustomRoute{`, + `RouteRef:` + strings.Replace(fmt.Sprintf("%v", this.RouteRef), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableTrustClientIpHeaders != nil { - { - size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xd2 +func (this *RouteType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteType{`, + `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteType_SimpleRoute) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteType_SimpleRoute{`, + `SimpleRoute:` + strings.Replace(fmt.Sprintf("%v", this.SimpleRoute), "RouteTypeSimple", "RouteTypeSimple", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableTrustClientIpHeaders != nil { - { - size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xda +func (this *RouteType_RedirectRoute) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&RouteType_RedirectRoute{`, + `RedirectRoute:` + strings.Replace(fmt.Sprintf("%v", this.RedirectRoute), "RouteTypeRedirect", "RouteTypeRedirect", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_EnableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *RouteType_DirectResponseRoute) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RouteType_DirectResponseRoute{`, + `DirectResponseRoute:` + strings.Replace(fmt.Sprintf("%v", this.DirectResponseRoute), "RouteTypeDirectResponse", "RouteTypeDirectResponse", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableDdosDetection != nil { - { - size, err := m.EnableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xea +func (this *RouteType_CustomRouteObject) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *CreateSpecType_DisableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&RouteType_CustomRouteObject{`, + `CustomRouteObject:` + strings.Replace(fmt.Sprintf("%v", this.CustomRouteObject), "RouteTypeCustomRoute", "RouteTypeCustomRoute", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableDdosDetection != nil { - { - size, err := m.DisableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xf2 +func (this *AdvancedOptionsType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *CreateSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + repeatedStringForRequestHeadersToAdd := "[]*HeaderManipulationOptionType{" + for _, f := range this.RequestHeadersToAdd { + repeatedStringForRequestHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + } + repeatedStringForRequestHeadersToAdd += "}" + repeatedStringForResponseHeadersToAdd := "[]*HeaderManipulationOptionType{" + for _, f := range this.ResponseHeadersToAdd { + repeatedStringForResponseHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," + } + repeatedStringForResponseHeadersToAdd += "}" + repeatedStringForJwt := "[]*ObjectRefType{" + for _, f := range this.Jwt { + repeatedStringForJwt += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," + } + repeatedStringForJwt += "}" + repeatedStringForCookiesToModify := "[]*CookieManipulationOptionType{" + for _, f := range this.CookiesToModify { + repeatedStringForCookiesToModify += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," + } + repeatedStringForCookiesToModify += "}" + keysForCustomErrors := make([]uint32, 0, len(this.CustomErrors)) + for k, _ := range this.CustomErrors { + keysForCustomErrors = append(keysForCustomErrors, k) + } + github_com_gogo_protobuf_sortkeys.Uint32s(keysForCustomErrors) + mapStringForCustomErrors := "map[uint32]string{" + for _, k := range keysForCustomErrors { + mapStringForCustomErrors += fmt.Sprintf("%v: %v,", k, this.CustomErrors[k]) + } + mapStringForCustomErrors += "}" + s := strings.Join([]string{`&AdvancedOptionsType{`, + `RequestHeadersToAdd:` + repeatedStringForRequestHeadersToAdd + `,`, + `RequestHeadersToRemove:` + fmt.Sprintf("%v", this.RequestHeadersToRemove) + `,`, + `ResponseHeadersToAdd:` + repeatedStringForResponseHeadersToAdd + `,`, + `ResponseHeadersToRemove:` + fmt.Sprintf("%v", this.ResponseHeadersToRemove) + `,`, + `MaxRequestHeaderSize:` + fmt.Sprintf("%v", this.MaxRequestHeaderSize) + `,`, + `BufferPolicy:` + strings.Replace(fmt.Sprintf("%v", this.BufferPolicy), "BufferConfigType", "schema.BufferConfigType", 1) + `,`, + `CompressionParams:` + strings.Replace(fmt.Sprintf("%v", this.CompressionParams), "CompressionType", "virtual_host.CompressionType", 1) + `,`, + `CustomErrors:` + mapStringForCustomErrors + `,`, + `JavascriptInfo:` + strings.Replace(fmt.Sprintf("%v", this.JavascriptInfo), "JavaScriptConfigType", "virtual_host.JavaScriptConfigType", 1) + `,`, + `Jwt:` + repeatedStringForJwt + `,`, + `IdleTimeout:` + fmt.Sprintf("%v", this.IdleTimeout) + `,`, + `DisableDefaultErrorPages:` + fmt.Sprintf("%v", this.DisableDefaultErrorPages) + `,`, + `PathNormalizeChoice:` + fmt.Sprintf("%v", this.PathNormalizeChoice) + `,`, + `StrictSniHostHeaderCheckChoice:` + fmt.Sprintf("%v", this.StrictSniHostHeaderCheckChoice) + `,`, + `CookiesToModify:` + repeatedStringForCookiesToModify + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableMaliciousUserDetection != nil { - { - size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x82 +func (this *AdvancedOptionsType_EnablePathNormalize) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&AdvancedOptionsType_EnablePathNormalize{`, + `EnablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.EnablePathNormalize), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *AdvancedOptionsType_DisablePathNormalize) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AdvancedOptionsType_DisablePathNormalize{`, + `DisablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.DisablePathNormalize), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableMaliciousUserDetection != nil { - { - size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x8a +func (this *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&AdvancedOptionsType_EnableStrictSniHostHeaderCheck{`, + `EnableStrictSniHostHeaderCheck:` + strings.Replace(fmt.Sprintf("%v", this.EnableStrictSniHostHeaderCheck), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *AdvancedOptionsType_AdditionalDomains) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AdvancedOptionsType_AdditionalDomains{`, + `AdditionalDomains:` + strings.Replace(fmt.Sprintf("%v", this.AdditionalDomains), "DomainNameList", "schema.DomainNameList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableApiDiscovery != nil { - { - size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x9a +func (this *DDoSClientSource) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&DDoSClientSource{`, + `AsnList:` + strings.Replace(fmt.Sprintf("%v", this.AsnList), "AsnMatchList", "policy.AsnMatchList", 1) + `,`, + `CountryList:` + fmt.Sprintf("%v", this.CountryList) + `,`, + `TlsFingerprintMatcher:` + strings.Replace(fmt.Sprintf("%v", this.TlsFingerprintMatcher), "TlsFingerprintMatcherType", "policy.TlsFingerprintMatcherType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *DDoSMitigationRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DDoSMitigationRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `MitigationAction:` + fmt.Sprintf("%v", this.MitigationAction) + `,`, + `MitigationChoice:` + fmt.Sprintf("%v", this.MitigationChoice) + `,`, + `ExpirationTimestamp:` + strings.Replace(fmt.Sprintf("%v", this.ExpirationTimestamp), "Timestamp", "types.Timestamp", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableApiDiscovery != nil { - { - size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xa2 +func (this *DDoSMitigationRule_Block) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&DDoSMitigationRule_Block{`, + `Block:` + strings.Replace(fmt.Sprintf("%v", this.Block), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *DDoSMitigationRule_DdosClientSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DDoSMitigationRule_DdosClientSource{`, + `DdosClientSource:` + strings.Replace(fmt.Sprintf("%v", this.DdosClientSource), "DDoSClientSource", "DDoSClientSource", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableClientSideDefense != nil { - { - size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xb2 +func (this *DDoSMitigationRule_IpPrefixList) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&DDoSMitigationRule_IpPrefixList{`, + `IpPrefixList:` + strings.Replace(fmt.Sprintf("%v", this.IpPrefixList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *SingleLoadBalancerAppSetting) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SingleLoadBalancerAppSetting{`, + `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, + `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ClientSideDefense != nil { - { - size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xba +func (this *SingleLoadBalancerAppSetting_EnableDiscovery) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&SingleLoadBalancerAppSetting_EnableDiscovery{`, + `EnableDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableDiscovery), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *SingleLoadBalancerAppSetting_DisableDiscovery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SingleLoadBalancerAppSetting_DisableDiscovery{`, + `DisableDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableDiscovery), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultPool != nil { - { - size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xca +func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{`, + `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SingleLoadBalancerAppSetting_DisableMaliciousUserDetection{`, + `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultPoolList != nil { - { - size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xd2 +func (this *OriginServerSubsetRuleListType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForOriginServerSubsetRules := "[]*OriginServerSubsetRule{" + for _, f := range this.OriginServerSubsetRules { + repeatedStringForOriginServerSubsetRules += strings.Replace(fmt.Sprintf("%v", f), "OriginServerSubsetRule", "policy.OriginServerSubsetRule", 1) + "," + } + repeatedStringForOriginServerSubsetRules += "}" + s := strings.Join([]string{`&OriginServerSubsetRuleListType{`, + `OriginServerSubsetRules:` + repeatedStringForOriginServerSubsetRules + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ClientSideDefenseType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ClientSideDefenseType{`, + `Policy:` + strings.Replace(this.Policy.String(), "ClientSideDefensePolicyType", "ClientSideDefensePolicyType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SlowDdosMitigation != nil { - { - size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xf2 +func (this *ClientSideDefensePolicyType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ClientSideDefensePolicyType{`, + `JavaScriptChoice:` + fmt.Sprintf("%v", this.JavaScriptChoice) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ClientSideDefensePolicyType_DisableJsInsert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ClientSideDefensePolicyType_DisableJsInsert{`, + `DisableJsInsert:` + strings.Replace(fmt.Sprintf("%v", this.DisableJsInsert), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableChallenge != nil { - { - size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xfa +func (this *ClientSideDefensePolicyType_JsInsertAllPages) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ClientSideDefensePolicyType_JsInsertAllPages{`, + `JsInsertAllPages:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPages), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ClientSideDefensePolicyType_JsInsertAllPagesExcept) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ClientSideDefensePolicyType_JsInsertAllPagesExcept{`, + `JsInsertAllPagesExcept:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPagesExcept), "CSDJavaScriptInsertAllWithExceptionsType", "CSDJavaScriptInsertAllWithExceptionsType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SystemDefaultTimeouts != nil { - { - size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x8a +func (this *ClientSideDefensePolicyType_JsInsertionRules) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ClientSideDefensePolicyType_JsInsertionRules{`, + `JsInsertionRules:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertionRules), "CSDJavaScriptInsertType", "CSDJavaScriptInsertType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_DisableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CSDJavaScriptInsertAllWithExceptionsType) String() string { + if this == nil { + return "nil" + } + repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" + for _, f := range this.ExcludeList { + repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," + } + repeatedStringForExcludeList += "}" + s := strings.Join([]string{`&CSDJavaScriptInsertAllWithExceptionsType{`, + `ExcludeList:` + repeatedStringForExcludeList + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_DisableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableThreatIntelligence != nil { - { - size, err := m.DisableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xba +func (this *CSDJavaScriptInsertType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForRules := "[]*CSDJavaScriptInsertionRule{" + for _, f := range this.Rules { + repeatedStringForRules += strings.Replace(f.String(), "CSDJavaScriptInsertionRule", "CSDJavaScriptInsertionRule", 1) + "," + } + repeatedStringForRules += "}" + repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" + for _, f := range this.ExcludeList { + repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," + } + repeatedStringForExcludeList += "}" + s := strings.Join([]string{`&CSDJavaScriptInsertType{`, + `Rules:` + repeatedStringForRules + `,`, + `ExcludeList:` + repeatedStringForExcludeList + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_EnableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CSDJavaScriptInsertionRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CSDJavaScriptInsertionRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_EnableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableThreatIntelligence != nil { - { - size, err := m.EnableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xca +func (this *CSDJavaScriptInsertionRule_AnyDomain) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CSDJavaScriptInsertionRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CSDJavaScriptInsertionRule_Domain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CSDJavaScriptInsertionRule_Domain{`, + `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionDefault != nil { - { - size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xfa +func (this *BotDefenseAdvancedPolicyType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForProtectedAppEndpoints := "[]*ProtectedAppEndpointType{" + for _, f := range this.ProtectedAppEndpoints { + repeatedStringForProtectedAppEndpoints += strings.Replace(f.String(), "ProtectedAppEndpointType", "ProtectedAppEndpointType", 1) + "," + } + repeatedStringForProtectedAppEndpoints += "}" + s := strings.Join([]string{`&BotDefenseAdvancedPolicyType{`, + `ProtectedAppEndpoints:` + repeatedStringForProtectedAppEndpoints + `,`, + `JsDownloadPath:` + fmt.Sprintf("%v", this.JsDownloadPath) + `,`, + `MobileSdkChoice:` + fmt.Sprintf("%v", this.MobileSdkChoice) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BotDefenseAdvancedPolicyType_DisableMobileSdk{`, + `DisableMobileSdk:` + strings.Replace(fmt.Sprintf("%v", this.DisableMobileSdk), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionBlock != nil { - { - size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x82 +func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&BotDefenseAdvancedPolicyType_MobileSdkConfig{`, + `MobileSdkConfig:` + strings.Replace(fmt.Sprintf("%v", this.MobileSdkConfig), "BotAdvancedMobileSDKConfigType", "BotAdvancedMobileSDKConfigType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *BotAdvancedMobileSDKConfigType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&BotAdvancedMobileSDKConfigType{`, + `MobileIdentifier:` + strings.Replace(this.MobileIdentifier.String(), "MobileTrafficIdentifierType", "MobileTrafficIdentifierType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionJsChallenge != nil { - { - size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x8a +func (this *ProtectedAppEndpointType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForQuery := "[]*Query{" + for _, f := range this.Query { + repeatedStringForQuery += strings.Replace(f.String(), "Query", "Query", 1) + "," + } + repeatedStringForQuery += "}" + repeatedStringForRequestBody := "[]*RequestBody{" + for _, f := range this.RequestBody { + repeatedStringForRequestBody += strings.Replace(f.String(), "RequestBody", "RequestBody", 1) + "," + } + repeatedStringForRequestBody += "}" + s := strings.Join([]string{`&ProtectedAppEndpointType{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `Query:` + repeatedStringForQuery + `,`, + `RequestBody:` + repeatedStringForRequestBody + `,`, + `HttpMethods:` + fmt.Sprintf("%v", this.HttpMethods) + `,`, + `AppTrafficTypeChoice:` + fmt.Sprintf("%v", this.AppTrafficTypeChoice) + `,`, + `FlowLabelChoice:` + fmt.Sprintf("%v", this.FlowLabelChoice) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProtectedAppEndpointType_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProtectedAppEndpointType_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionNone != nil { - { - size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x92 +func (this *ProtectedAppEndpointType_Domain) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProtectedAppEndpointType_Domain{`, + `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, + `}`, + }, "") + return s } -func (m *CreateSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProtectedAppEndpointType_WebClient) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProtectedAppEndpointType_WebClient{`, + `WebClient:` + strings.Replace(fmt.Sprintf("%v", this.WebClient), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *CreateSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefenseAdvanced != nil { - { - size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x9a +func (this *ProtectedAppEndpointType_MobileClient) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ProtectedAppEndpointType_MobileClient{`, + `MobileClient:` + strings.Replace(fmt.Sprintf("%v", this.MobileClient), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *ProtectedAppEndpointType_WebMobileClient) String() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&ProtectedAppEndpointType_WebMobileClient{`, + `WebMobileClient:` + strings.Replace(fmt.Sprintf("%v", this.WebMobileClient), "WebMobileTrafficType", "WebMobileTrafficType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ProtectedAppEndpointType_UndefinedFlowLabel) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProtectedAppEndpointType_UndefinedFlowLabel{`, + `UndefinedFlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.UndefinedFlowLabel), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.BotDefenseChoice != nil { - { - size := m.BotDefenseChoice.Size() - i -= size - if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } +func (this *ProtectedAppEndpointType_FlowLabel) String() string { + if this == nil { + return "nil" } - if m.L7DdosAutoMitigationAction != nil { - { - size := m.L7DdosAutoMitigationAction.Size() - i -= size - if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ProtectedAppEndpointType_FlowLabel{`, + `FlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.FlowLabel), "BotDefenseFlowLabelCategoriesChoiceType", "schema.BotDefenseFlowLabelCategoriesChoiceType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *RequestBody) String() string { + if this == nil { + return "nil" } - if m.ThreatIntelligenceChoice != nil { - { - size := m.ThreatIntelligenceChoice.Size() - i -= size - if _, err := m.ThreatIntelligenceChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&RequestBody{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ValueType:` + fmt.Sprintf("%v", this.ValueType) + `,`, + `}`, + }, "") + return s +} +func (this *RequestBody_ExactValue) String() string { + if this == nil { + return "nil" } - if m.OriginServerSubsetRuleList != nil { - { - size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xaa + s := strings.Join([]string{`&RequestBody_ExactValue{`, + `ExactValue:` + fmt.Sprintf("%v", this.ExactValue) + `,`, + `}`, + }, "") + return s +} +func (this *RequestBody_RegexValue) String() string { + if this == nil { + return "nil" } - if m.JwtValidation != nil { - { - size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x92 + s := strings.Join([]string{`&RequestBody_RegexValue{`, + `RegexValue:` + fmt.Sprintf("%v", this.RegexValue) + `,`, + `}`, + }, "") + return s +} +func (this *Query) String() string { + if this == nil { + return "nil" } - if m.SlowDdosMitigationChoice != nil { - { - size := m.SlowDdosMitigationChoice.Size() - i -= size - if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&Query{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ValueType:` + fmt.Sprintf("%v", this.ValueType) + `,`, + `}`, + }, "") + return s +} +func (this *Query_ExactValue) String() string { + if this == nil { + return "nil" } - if m.ChallengeType != nil { - { - size := m.ChallengeType.Size() - i -= size - if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&Query_ExactValue{`, + `ExactValue:` + fmt.Sprintf("%v", this.ExactValue) + `,`, + `}`, + }, "") + return s +} +func (this *Query_RegexValue) String() string { + if this == nil { + return "nil" } - if len(m.ProtectedCookies) > 0 { - for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xea - } + s := strings.Join([]string{`&Query_RegexValue{`, + `RegexValue:` + fmt.Sprintf("%v", this.RegexValue) + `,`, + `}`, + }, "") + return s +} +func (this *Query_CheckPresence) String() string { + if this == nil { + return "nil" } - if len(m.GraphqlRules) > 0 { - for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xe2 - } + s := strings.Join([]string{`&Query_CheckPresence{`, + `CheckPresence:` + strings.Replace(fmt.Sprintf("%v", this.CheckPresence), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefenseType) String() string { + if this == nil { + return "nil" } - if m.CsrfPolicy != nil { - { - size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xda + s := strings.Join([]string{`&ShapeBotDefenseType{`, + `RegionalEndpoint:` + fmt.Sprintf("%v", this.RegionalEndpoint) + `,`, + `Policy:` + strings.Replace(this.Policy.String(), "ShapeBotDefensePolicyType", "ShapeBotDefensePolicyType", 1) + `,`, + `Timeout:` + fmt.Sprintf("%v", this.Timeout) + `,`, + `CorsSupportChoice:` + fmt.Sprintf("%v", this.CorsSupportChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefenseType_EnableCorsSupport) String() string { + if this == nil { + return "nil" } - if m.OriginPoolChoice != nil { - { - size := m.OriginPoolChoice.Size() - i -= size - if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ShapeBotDefenseType_EnableCorsSupport{`, + `EnableCorsSupport:` + strings.Replace(fmt.Sprintf("%v", this.EnableCorsSupport), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefenseType_DisableCorsSupport) String() string { + if this == nil { + return "nil" } - if m.ClientSideDefenseChoice != nil { - { - size := m.ClientSideDefenseChoice.Size() - i -= size - if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ShapeBotDefenseType_DisableCorsSupport{`, + `DisableCorsSupport:` + strings.Replace(fmt.Sprintf("%v", this.DisableCorsSupport), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *BotDefenseAdvancedType) String() string { + if this == nil { + return "nil" } - if m.ApiDiscoveryChoice != nil { - { - size := m.ApiDiscoveryChoice.Size() - i -= size - if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&BotDefenseAdvancedType{`, + `Web:` + strings.Replace(fmt.Sprintf("%v", this.Web), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `Mobile:` + strings.Replace(fmt.Sprintf("%v", this.Mobile), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `Policy:` + strings.Replace(this.Policy.String(), "BotDefenseAdvancedPolicyType", "BotDefenseAdvancedPolicyType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType) String() string { + if this == nil { + return "nil" } - if m.MaliciousUserDetectionChoice != nil { - { - size := m.MaliciousUserDetectionChoice.Size() - i -= size - if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForProtectedAppEndpoints := "[]*AppEndpointType{" + for _, f := range this.ProtectedAppEndpoints { + repeatedStringForProtectedAppEndpoints += strings.Replace(f.String(), "AppEndpointType", "AppEndpointType", 1) + "," } - if m.DdosDetectionChoice != nil { - { - size := m.DdosDetectionChoice.Size() - i -= size - if _, err := m.DdosDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForProtectedAppEndpoints += "}" + s := strings.Join([]string{`&ShapeBotDefensePolicyType{`, + `ProtectedAppEndpoints:` + repeatedStringForProtectedAppEndpoints + `,`, + `JsDownloadPath:` + fmt.Sprintf("%v", this.JsDownloadPath) + `,`, + `JavaScriptChoice:` + fmt.Sprintf("%v", this.JavaScriptChoice) + `,`, + `MobileSdkChoice:` + fmt.Sprintf("%v", this.MobileSdkChoice) + `,`, + `JavascriptMode:` + fmt.Sprintf("%v", this.JavascriptMode) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType_DisableJsInsert) String() string { + if this == nil { + return "nil" } - if m.TrustClientIpHeadersChoice != nil { - { - size := m.TrustClientIpHeadersChoice.Size() - i -= size - if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ShapeBotDefensePolicyType_DisableJsInsert{`, + `DisableJsInsert:` + strings.Replace(fmt.Sprintf("%v", this.DisableJsInsert), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType_JsInsertAllPages) String() string { + if this == nil { + return "nil" } - if m.ApiProtectionRules != nil { - { - size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xc2 + s := strings.Join([]string{`&ShapeBotDefensePolicyType_JsInsertAllPages{`, + `JsInsertAllPages:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPages), "ShapeJavaScriptInsertAllType", "ShapeJavaScriptInsertAllType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) String() string { + if this == nil { + return "nil" } - if m.ApiDefinitionChoice != nil { - { - size := m.ApiDefinitionChoice.Size() - i -= size - if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ShapeBotDefensePolicyType_JsInsertAllPagesExcept{`, + `JsInsertAllPagesExcept:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPagesExcept), "ShapeJavaScriptInsertAllWithExceptionsType", "ShapeJavaScriptInsertAllWithExceptionsType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType_JsInsertionRules) String() string { + if this == nil { + return "nil" } - if m.RateLimitChoice != nil { - { - size := m.RateLimitChoice.Size() - i -= size - if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ShapeBotDefensePolicyType_JsInsertionRules{`, + `JsInsertionRules:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertionRules), "ShapeJavaScriptInsertType", "ShapeJavaScriptInsertType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType_DisableMobileSdk) String() string { + if this == nil { + return "nil" } - if m.IpReputationChoice != nil { - { - size := m.IpReputationChoice.Size() - i -= size - if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ShapeBotDefensePolicyType_DisableMobileSdk{`, + `DisableMobileSdk:` + strings.Replace(fmt.Sprintf("%v", this.DisableMobileSdk), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeBotDefensePolicyType_MobileSdkConfig) String() string { + if this == nil { + return "nil" } - if len(m.DataGuardRules) > 0 { - for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xfa - } + s := strings.Join([]string{`&ShapeBotDefensePolicyType_MobileSdkConfig{`, + `MobileSdkConfig:` + strings.Replace(fmt.Sprintf("%v", this.MobileSdkConfig), "MobileSDKConfigType", "MobileSDKConfigType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *MobileTrafficIdentifierType) String() string { + if this == nil { + return "nil" } - if m.UserIdChoice != nil { - { - size := m.UserIdChoice.Size() - i -= size - if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForHeaders := "[]*HeaderMatcherTypeBasic{" + for _, f := range this.Headers { + repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherTypeBasic", "policy.HeaderMatcherTypeBasic", 1) + "," } - if m.MlConfigChoice != nil { - { - size := m.MlConfigChoice.Size() - i -= size - if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForHeaders += "}" + s := strings.Join([]string{`&MobileTrafficIdentifierType{`, + `Headers:` + repeatedStringForHeaders + `,`, + `}`, + }, "") + return s +} +func (this *MobileSDKConfigType) String() string { + if this == nil { + return "nil" } - if m.WafChoice != nil { - { - size := m.WafChoice.Size() - i -= size - if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&MobileSDKConfigType{`, + `ReloadHeaderName:` + fmt.Sprintf("%v", this.ReloadHeaderName) + `,`, + `MobileIdentifier:` + strings.Replace(this.MobileIdentifier.String(), "MobileTrafficIdentifierType", "MobileTrafficIdentifierType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType) String() string { + if this == nil { + return "nil" } - if m.HashPolicyChoice != nil { - { - size := m.HashPolicyChoice.Size() - i -= size - if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&AppEndpointType{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `HttpMethods:` + fmt.Sprintf("%v", this.HttpMethods) + `,`, + `Protocol:` + fmt.Sprintf("%v", this.Protocol) + `,`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, + `AppTrafficTypeChoice:` + fmt.Sprintf("%v", this.AppTrafficTypeChoice) + `,`, + `Mitigation:` + strings.Replace(fmt.Sprintf("%v", this.Mitigation), "ShapeBotMitigationAction", "policy.ShapeBotMitigationAction", 1) + `,`, + `FlowLabelChoice:` + fmt.Sprintf("%v", this.FlowLabelChoice) + `,`, + `GoodbotChoice:` + fmt.Sprintf("%v", this.GoodbotChoice) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_AnyDomain) String() string { + if this == nil { + return "nil" } - if m.ServicePolicyChoice != nil { - { - size := m.ServicePolicyChoice.Size() - i -= size - if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&AppEndpointType_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_Domain) String() string { + if this == nil { + return "nil" } - if len(m.DdosMitigationRules) > 0 { - for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xaa - } + s := strings.Join([]string{`&AppEndpointType_Domain{`, + `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_Web) String() string { + if this == nil { + return "nil" } - if len(m.TrustedClients) > 0 { - for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x9a - } + s := strings.Join([]string{`&AppEndpointType_Web{`, + `Web:` + strings.Replace(fmt.Sprintf("%v", this.Web), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_Mobile) String() string { + if this == nil { + return "nil" } - if len(m.BlockedClients) > 0 { - for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x92 - } + s := strings.Join([]string{`&AppEndpointType_Mobile{`, + `Mobile:` + strings.Replace(fmt.Sprintf("%v", this.Mobile), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_WebMobile) String() string { + if this == nil { + return "nil" } - if len(m.WafExclusionRules) > 0 { - for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x8a - } + s := strings.Join([]string{`&AppEndpointType_WebMobile{`, + `WebMobile:` + strings.Replace(fmt.Sprintf("%v", this.WebMobile), "WebMobileTrafficType", "WebMobileTrafficType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_UndefinedFlowLabel) String() string { + if this == nil { + return "nil" } - if m.MaliciousUserMitigation != nil { - { - size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x82 + s := strings.Join([]string{`&AppEndpointType_UndefinedFlowLabel{`, + `UndefinedFlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.UndefinedFlowLabel), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_FlowLabel) String() string { + if this == nil { + return "nil" } - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&AppEndpointType_FlowLabel{`, + `FlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.FlowLabel), "BotDefenseFlowLabelCategoriesChoiceType", "schema.BotDefenseFlowLabelCategoriesChoiceType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_MitigateGoodBots) String() string { + if this == nil { + return "nil" } - if m.MoreOption != nil { - { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + s := strings.Join([]string{`&AppEndpointType_MitigateGoodBots{`, + `MitigateGoodBots:` + strings.Replace(fmt.Sprintf("%v", this.MitigateGoodBots), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AppEndpointType_AllowGoodBots) String() string { + if this == nil { + return "nil" } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x88 + s := strings.Join([]string{`&AppEndpointType_AllowGoodBots{`, + `AllowGoodBots:` + strings.Replace(fmt.Sprintf("%v", this.AllowGoodBots), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *WebMobileTrafficType) String() string { + if this == nil { + return "nil" } - if m.AdvertiseChoice != nil { - { - size := m.AdvertiseChoice.Size() - i -= size - if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForHeaders := "[]*HeaderMatcherTypeBasic{" + for _, f := range this.Headers { + repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherTypeBasic", "policy.HeaderMatcherTypeBasic", 1) + "," } - if m.CorsPolicy != nil { - { - size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 + repeatedStringForHeaders += "}" + s := strings.Join([]string{`&WebMobileTrafficType{`, + `Header:` + strings.Replace(fmt.Sprintf("%v", this.Header), "HeaderMatcherTypeBasic", "policy.HeaderMatcherTypeBasic", 1) + `,`, + `Headers:` + repeatedStringForHeaders + `,`, + `MobileIdentifier:` + fmt.Sprintf("%v", this.MobileIdentifier) + `,`, + `}`, + }, "") + return s +} +func (this *ShapeJavaScriptInsertType) String() string { + if this == nil { + return "nil" } - if len(m.Routes) > 0 { - for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } + repeatedStringForRules := "[]*ShapeJavaScriptInsertionRule{" + for _, f := range this.Rules { + repeatedStringForRules += strings.Replace(f.String(), "ShapeJavaScriptInsertionRule", "ShapeJavaScriptInsertionRule", 1) + "," } - if len(m.DefaultRoutePools) > 0 { - for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } - } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } + repeatedStringForRules += "}" + repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" + for _, f := range this.ExcludeList { + repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," } - return len(dAtA) - i, nil + repeatedStringForExcludeList += "}" + s := strings.Join([]string{`&ShapeJavaScriptInsertType{`, + `Rules:` + repeatedStringForRules + `,`, + `ExcludeList:` + repeatedStringForExcludeList + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_Http) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ShapeJavaScriptInsertAllWithExceptionsType) String() string { + if this == nil { + return "nil" + } + repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" + for _, f := range this.ExcludeList { + repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," + } + repeatedStringForExcludeList += "}" + s := strings.Join([]string{`&ShapeJavaScriptInsertAllWithExceptionsType{`, + `JavascriptLocation:` + fmt.Sprintf("%v", this.JavascriptLocation) + `,`, + `ExcludeList:` + repeatedStringForExcludeList + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Http != nil { - { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *ShapeJavaScriptInsertAllType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ShapeJavaScriptInsertAllType{`, + `JavascriptLocation:` + fmt.Sprintf("%v", this.JavascriptLocation) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_Https) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ShapeJavaScriptInsertionRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ShapeJavaScriptInsertionRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `JavascriptLocation:` + fmt.Sprintf("%v", this.JavascriptLocation) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Https != nil { - { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *ShapeJavaScriptInsertionRule_AnyDomain) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ShapeJavaScriptInsertionRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ShapeJavaScriptInsertionRule_Domain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ShapeJavaScriptInsertionRule_Domain{`, + `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublic != nil { - { - size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (this *ShapeJavaScriptExclusionRule) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ShapeJavaScriptExclusionRule{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, + `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, + `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ShapeJavaScriptExclusionRule_AnyDomain) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ShapeJavaScriptExclusionRule_AnyDomain{`, + `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseCustom != nil { - { - size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *ShapeJavaScriptExclusionRule_Domain) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ShapeJavaScriptExclusionRule_Domain{`, + `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" + for _, f := range this.DefaultRoutePools { + repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," + } + repeatedStringForDefaultRoutePools += "}" + repeatedStringForRoutes := "[]*RouteType{" + for _, f := range this.Routes { + repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," + } + repeatedStringForRoutes += "}" + repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" + for _, f := range this.WafExclusionRules { + repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," + } + repeatedStringForWafExclusionRules += "}" + repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.BlockedClients { + repeatedStringForBlockedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForBlockedClients += "}" + repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.TrustedClients { + repeatedStringForTrustedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForTrustedClients += "}" + repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" + for _, f := range this.DdosMitigationRules { + repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," + } + repeatedStringForDdosMitigationRules += "}" + repeatedStringForDownstreamTlsCertificateExpirationTimestamps := "[]*Timestamp{" + for _, f := range this.DownstreamTlsCertificateExpirationTimestamps { + repeatedStringForDownstreamTlsCertificateExpirationTimestamps += strings.Replace(fmt.Sprintf("%v", f), "Timestamp", "types.Timestamp", 1) + "," + } + repeatedStringForDownstreamTlsCertificateExpirationTimestamps += "}" + repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" + for _, f := range this.DataGuardRules { + repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," + } + repeatedStringForDataGuardRules += "}" + repeatedStringForGraphqlRules := "[]*GraphQLRule{" + for _, f := range this.GraphqlRules { + repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," + } + repeatedStringForGraphqlRules += "}" + repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" + for _, f := range this.ProtectedCookies { + repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," + } + repeatedStringForProtectedCookies += "}" + repeatedStringForDnsInfo := "[]*DnsInfo{" + for _, f := range this.DnsInfo { + repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," + } + repeatedStringForDnsInfo += "}" + repeatedStringForInternetVipInfo := "[]*InternetVIPInfo{" + for _, f := range this.InternetVipInfo { + repeatedStringForInternetVipInfo += strings.Replace(fmt.Sprintf("%v", f), "InternetVIPInfo", "views.InternetVIPInfo", 1) + "," + } + repeatedStringForInternetVipInfo += "}" + s := strings.Join([]string{`&GlobalSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, + `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, + `Routes:` + repeatedStringForRoutes + `,`, + `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, + `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, + `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, + `HostRewriteParams:` + fmt.Sprintf("%v", this.HostRewriteParams) + `,`, + `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, + `BlockedClients:` + repeatedStringForBlockedClients + `,`, + `TrustedClients:` + repeatedStringForTrustedClients + `,`, + `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, + `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, + `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, + `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, + `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, + `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, + `DownstreamTlsCertificateExpirationTimestamps:` + repeatedStringForDownstreamTlsCertificateExpirationTimestamps + `,`, + `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, + `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, + `ApiProtectionRules:` + strings.Replace(fmt.Sprintf("%v", this.ApiProtectionRules), "APIProtectionRules", "common_waf.APIProtectionRules", 1) + `,`, + `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, + `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, + `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, + `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, + `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, + `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, + `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, + `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, + `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, + `JwtValidation:` + strings.Replace(fmt.Sprintf("%v", this.JwtValidation), "JWTValidation", "common_waf.JWTValidation", 1) + `,`, + `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, + `ThreatMeshChoice:` + fmt.Sprintf("%v", this.ThreatMeshChoice) + `,`, + `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, + `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, + `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, + `DnsInfo:` + repeatedStringForDnsInfo + `,`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `AutoCertState:` + fmt.Sprintf("%v", this.AutoCertState) + `,`, + `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, + `InternetVipInfo:` + repeatedStringForInternetVipInfo + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableWaf != nil { - { - size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a +func (this *GlobalSpecType_Http) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_Https) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DoNotAdvertise != nil { - { - size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 +func (this *GlobalSpecType_AdvertiseOnPublic) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_AdvertiseOnPublic{`, + `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_AdvertiseCustom) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_AdvertiseCustom{`, + `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublicDefaultVip != nil { - { - size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a +func (this *GlobalSpecType_DisableWaf) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_DisableWaf{`, + `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_DoNotAdvertise) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_DoNotAdvertise{`, + `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallenge != nil { - { - size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 +func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_AdvertiseOnPublicDefaultVip{`, + `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_JsChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_JsChallenge{`, + `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdentification != nil { - { - size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa2 +func (this *GlobalSpecType_UserIdentification) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_UserIdentification{`, + `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_DisableRateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_DisableRateLimit{`, + `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableRateLimit != nil { - { - size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb2 +func (this *GlobalSpecType_RateLimit) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_RateLimit{`, + `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "common_waf.RateLimitConfigType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_CaptchaChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_CaptchaChallenge{`, + `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RateLimit != nil { - { - size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xba +func (this *GlobalSpecType_NoChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_NoChallenge{`, + `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CaptchaChallenge != nil { - { - size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xc2 +func (this *GlobalSpecType_AutoHostRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_AutoHostRewrite{`, + `AutoHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.AutoHostRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_HostRewrite) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_HostRewrite{`, + `HostRewrite:` + fmt.Sprintf("%v", this.HostRewrite) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoChallenge != nil { - { - size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd2 +func (this *GlobalSpecType_DisableHostRewrite) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_DisableHostRewrite{`, + `DisableHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisableHostRewrite), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_ServicePoliciesFromNamespace) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_ServicePoliciesFromNamespace{`, + `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HttpsAutoCert != nil { - { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xda +func (this *GlobalSpecType_NoServicePolicies) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_NoServicePolicies{`, + `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_ActiveServicePolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_ActiveServicePolicies{`, + `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "common_waf.ServicePolicyList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ServicePoliciesFromNamespace != nil { - { - size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xca +func (this *GlobalSpecType_RoundRobin) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_RoundRobin{`, + `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_LeastActive) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_LeastActive{`, + `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoServicePolicies != nil { - { - size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xd2 +func (this *GlobalSpecType_Random) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_Random{`, + `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_SourceIpStickiness) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_SourceIpStickiness{`, + `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActiveServicePolicies != nil { - { - size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xda +func (this *GlobalSpecType_CookieStickiness) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_CookieStickiness{`, + `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_RingHash) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_RingHash{`, + `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RoundRobin != nil { - { - size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xea +func (this *GlobalSpecType_PolicyBasedChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_PolicyBasedChallenge{`, + `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "common_waf.PolicyBasedChallenge", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_AppFirewall) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_AppFirewall{`, + `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.LeastActive != nil { - { - size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xf2 +func (this *GlobalSpecType_SingleLbApp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_SingleLbApp{`, + `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_Random) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_MultiLbApp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_MultiLbApp{`, + `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Random != nil { - { - size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xfa +func (this *GlobalSpecType_DisableBotDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_DisableBotDefense{`, + `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_BotDefense) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_BotDefense{`, + `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SourceIpStickiness != nil { - { - size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x82 +func (this *GlobalSpecType_UserIdClientIp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_UserIdClientIp{`, + `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_ApiDefinitions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_ApiDefinitions{`, + `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "common_waf.ApiDefinitionList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CookieStickiness != nil { - { - size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x8a +func (this *GlobalSpecType_DisableIpReputation) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_DisableIpReputation{`, + `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_EnableIpReputation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_EnableIpReputation{`, + `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "common_waf.IPThreatCategoryListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RingHash != nil { - { - size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x92 +func (this *GlobalSpecType_ApiSpecification) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_ApiSpecification{`, + `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "common_waf.APISpecificationSettings", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_DisableApiDefinition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_DisableApiDefinition{`, + `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PolicyBasedChallenge != nil { - { - size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x9a +func (this *GlobalSpecType_ApiDefinition) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_ApiDefinition{`, + `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_DisableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_DisableTrustClientIpHeaders{`, + `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AppFirewall != nil { - { - size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xa2 +func (this *GlobalSpecType_EnableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_EnableTrustClientIpHeaders{`, + `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SingleLbApp != nil { - { - size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xb2 +func (this *GlobalSpecType_EnableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_EnableMaliciousUserDetection{`, + `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MultiLbApp != nil { - { - size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xba +func (this *GlobalSpecType_DisableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_DisableMaliciousUserDetection{`, + `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableBotDefense != nil { - { - size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xca +func (this *GlobalSpecType_EnableApiDiscovery) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_EnableApiDiscovery{`, + `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefense != nil { - { - size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xd2 +func (this *GlobalSpecType_DisableApiDiscovery) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_DisableApiDiscovery{`, + `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdClientIp != nil { - { - size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xe2 +func (this *GlobalSpecType_DisableClientSideDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_DisableClientSideDefense{`, + `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinitions != nil { - { - size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xea +func (this *GlobalSpecType_ClientSideDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_ClientSideDefense{`, + `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableIpReputation != nil { - { - size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x8a +func (this *GlobalSpecType_DefaultPool) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_DefaultPool{`, + `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableIpReputation != nil { - { - size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x92 +func (this *GlobalSpecType_DefaultPoolList) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_DefaultPoolList{`, + `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiSpecification != nil { - { - size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x9a +func (this *GlobalSpecType_SlowDdosMitigation) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_SlowDdosMitigation{`, + `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiRateLimit != nil { - { - size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xa2 +func (this *GlobalSpecType_EnableChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_EnableChallenge{`, + `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "common_waf.EnableChallenge", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableApiDefinition != nil { - { - size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xb2 +func (this *GlobalSpecType_SystemDefaultTimeouts) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_SystemDefaultTimeouts{`, + `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinition != nil { - { - size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xba +func (this *GlobalSpecType_DisableThreatMesh) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_DisableThreatMesh{`, + `DisableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableTrustClientIpHeaders != nil { - { - size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xd2 +func (this *GlobalSpecType_EnableThreatMesh) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_EnableThreatMesh{`, + `EnableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableTrustClientIpHeaders != nil { - { - size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xda +func (this *GlobalSpecType_L7DdosActionDefault) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_EnableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_L7DdosActionDefault{`, + `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableDdosDetection != nil { - { - size, err := m.EnableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xea +func (this *GlobalSpecType_L7DdosActionBlock) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_DisableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_L7DdosActionBlock{`, + `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableDdosDetection != nil { - { - size, err := m.DisableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xf2 +func (this *GlobalSpecType_L7DdosActionJsChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *ReplaceSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GlobalSpecType_L7DdosActionJsChallenge{`, + `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableMaliciousUserDetection != nil { - { - size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x82 +func (this *GlobalSpecType_L7DdosActionNone) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_L7DdosActionNone{`, + `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GlobalSpecType_ApiRateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_ApiRateLimit{`, + `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "common_waf.APIRateLimit", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableMaliciousUserDetection != nil { - { - size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x8a +func (this *GlobalSpecType_BotDefenseAdvanced) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GlobalSpecType_BotDefenseAdvanced{`, + `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType) String() string { + if this == nil { + return "nil" + } + repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" + for _, f := range this.DefaultRoutePools { + repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," + } + repeatedStringForDefaultRoutePools += "}" + repeatedStringForRoutes := "[]*RouteType{" + for _, f := range this.Routes { + repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," + } + repeatedStringForRoutes += "}" + repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" + for _, f := range this.WafExclusionRules { + repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," + } + repeatedStringForWafExclusionRules += "}" + repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.BlockedClients { + repeatedStringForBlockedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForBlockedClients += "}" + repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.TrustedClients { + repeatedStringForTrustedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForTrustedClients += "}" + repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" + for _, f := range this.DdosMitigationRules { + repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," + } + repeatedStringForDdosMitigationRules += "}" + repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" + for _, f := range this.DataGuardRules { + repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," + } + repeatedStringForDataGuardRules += "}" + repeatedStringForGraphqlRules := "[]*GraphQLRule{" + for _, f := range this.GraphqlRules { + repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," + } + repeatedStringForGraphqlRules += "}" + repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" + for _, f := range this.ProtectedCookies { + repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," + } + repeatedStringForProtectedCookies += "}" + s := strings.Join([]string{`&CreateSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, + `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, + `Routes:` + repeatedStringForRoutes + `,`, + `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, + `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, + `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, + `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, + `BlockedClients:` + repeatedStringForBlockedClients + `,`, + `TrustedClients:` + repeatedStringForTrustedClients + `,`, + `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, + `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, + `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, + `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, + `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, + `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, + `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, + `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, + `ApiProtectionRules:` + strings.Replace(fmt.Sprintf("%v", this.ApiProtectionRules), "APIProtectionRules", "common_waf.APIProtectionRules", 1) + `,`, + `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, + `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, + `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, + `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, + `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, + `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, + `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, + `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, + `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, + `JwtValidation:` + strings.Replace(fmt.Sprintf("%v", this.JwtValidation), "JWTValidation", "common_waf.JWTValidation", 1) + `,`, + `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, + `ThreatMeshChoice:` + fmt.Sprintf("%v", this.ThreatMeshChoice) + `,`, + `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableApiDiscovery != nil { - { - size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x9a +func (this *CreateSpecType_Http) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_Https) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableApiDiscovery != nil { - { - size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xa2 +func (this *CreateSpecType_AdvertiseOnPublic) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_AdvertiseOnPublic{`, + `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_AdvertiseCustom) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_AdvertiseCustom{`, + `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableClientSideDefense != nil { - { - size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xb2 +func (this *CreateSpecType_DisableWaf) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_DisableWaf{`, + `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_DoNotAdvertise) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_DoNotAdvertise{`, + `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ClientSideDefense != nil { - { - size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xba +func (this *CreateSpecType_AdvertiseOnPublicDefaultVip) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_AdvertiseOnPublicDefaultVip{`, + `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_JsChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_JsChallenge{`, + `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultPool != nil { - { - size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xca +func (this *CreateSpecType_UserIdentification) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_UserIdentification{`, + `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_DisableRateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_DisableRateLimit{`, + `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultPoolList != nil { - { - size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xd2 +func (this *CreateSpecType_RateLimit) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_RateLimit{`, + `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "common_waf.RateLimitConfigType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_CaptchaChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_CaptchaChallenge{`, + `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SlowDdosMitigation != nil { - { - size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xf2 +func (this *CreateSpecType_NoChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_NoChallenge{`, + `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableChallenge != nil { - { - size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xfa +func (this *CreateSpecType_ServicePoliciesFromNamespace) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_ServicePoliciesFromNamespace{`, + `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_NoServicePolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_NoServicePolicies{`, + `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SystemDefaultTimeouts != nil { - { - size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x8a +func (this *CreateSpecType_ActiveServicePolicies) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_ActiveServicePolicies{`, + `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "common_waf.ServicePolicyList", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_DisableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_RoundRobin) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_RoundRobin{`, + `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_DisableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableThreatIntelligence != nil { - { - size, err := m.DisableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xba +func (this *CreateSpecType_LeastActive) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_LeastActive{`, + `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_EnableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_Random) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_Random{`, + `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_EnableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableThreatIntelligence != nil { - { - size, err := m.EnableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xca +func (this *CreateSpecType_SourceIpStickiness) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_SourceIpStickiness{`, + `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_CookieStickiness) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_CookieStickiness{`, + `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionDefault != nil { - { - size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xfa +func (this *CreateSpecType_RingHash) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_RingHash{`, + `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_PolicyBasedChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_PolicyBasedChallenge{`, + `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "common_waf.PolicyBasedChallenge", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionBlock != nil { - { - size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x82 +func (this *CreateSpecType_AppFirewall) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_AppFirewall{`, + `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_SingleLbApp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_SingleLbApp{`, + `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionJsChallenge != nil { - { - size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x8a +func (this *CreateSpecType_MultiLbApp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_MultiLbApp{`, + `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_DisableBotDefense) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_DisableBotDefense{`, + `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionNone != nil { - { - size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x92 +func (this *CreateSpecType_BotDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_BotDefense{`, + `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ReplaceSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_UserIdClientIp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_UserIdClientIp{`, + `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *ReplaceSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefenseAdvanced != nil { - { - size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x9a +func (this *CreateSpecType_ApiDefinitions) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&CreateSpecType_ApiDefinitions{`, + `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "common_waf.ApiDefinitionList", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (this *CreateSpecType_DisableIpReputation) String() string { + if this == nil { + return "nil" } - return dAtA[:n], nil + s := strings.Join([]string{`&CreateSpecType_DisableIpReputation{`, + `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *CreateSpecType_EnableIpReputation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType_EnableIpReputation{`, + `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "common_waf.IPThreatCategoryListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.InternetVipInfo) > 0 { - for iNdEx := len(m.InternetVipInfo) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.InternetVipInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x44 - i-- - dAtA[i] = 0xe2 - } +func (this *CreateSpecType_ApiSpecification) String() string { + if this == nil { + return "nil" } - if m.BotDefenseChoice != nil { - { - size := m.BotDefenseChoice.Size() - i -= size - if _, err := m.BotDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_ApiSpecification{`, + `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "common_waf.APISpecificationSettings", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DisableApiDefinition) String() string { + if this == nil { + return "nil" } - if m.AutoCertInfo != nil { - { - size, err := m.AutoCertInfo.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x92 + s := strings.Join([]string{`&CreateSpecType_DisableApiDefinition{`, + `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_ApiDefinition) String() string { + if this == nil { + return "nil" } - if m.State != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.State)) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd8 + s := strings.Join([]string{`&CreateSpecType_ApiDefinition{`, + `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DisableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" } - if len(m.DnsInfo) > 0 { - for iNdEx := len(m.DnsInfo) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DnsInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xd2 - } + s := strings.Join([]string{`&CreateSpecType_DisableTrustClientIpHeaders{`, + `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_EnableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" } - if len(m.HostName) > 0 { - i -= len(m.HostName) - copy(dAtA[i:], m.HostName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.HostName))) - i-- - dAtA[i] = 0x3e - i-- - dAtA[i] = 0xca + s := strings.Join([]string{`&CreateSpecType_EnableTrustClientIpHeaders{`, + `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_EnableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - if m.CertState != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.CertState)) - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x98 + s := strings.Join([]string{`&CreateSpecType_EnableMaliciousUserDetection{`, + `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DisableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - if m.L7DdosAutoMitigationAction != nil { - { - size := m.L7DdosAutoMitigationAction.Size() - i -= size - if _, err := m.L7DdosAutoMitigationAction.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_DisableMaliciousUserDetection{`, + `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_EnableApiDiscovery) String() string { + if this == nil { + return "nil" } - if m.ThreatIntelligenceChoice != nil { - { - size := m.ThreatIntelligenceChoice.Size() - i -= size - if _, err := m.ThreatIntelligenceChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_EnableApiDiscovery{`, + `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DisableApiDiscovery) String() string { + if this == nil { + return "nil" } - if m.OriginServerSubsetRuleList != nil { - { - size, err := m.OriginServerSubsetRuleList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xaa + s := strings.Join([]string{`&CreateSpecType_DisableApiDiscovery{`, + `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DisableClientSideDefense) String() string { + if this == nil { + return "nil" } - if m.JwtValidation != nil { - { - size, err := m.JwtValidation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x92 + s := strings.Join([]string{`&CreateSpecType_DisableClientSideDefense{`, + `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_ClientSideDefense) String() string { + if this == nil { + return "nil" } - if m.SlowDdosMitigationChoice != nil { - { - size := m.SlowDdosMitigationChoice.Size() - i -= size - if _, err := m.SlowDdosMitigationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_ClientSideDefense{`, + `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DefaultPool) String() string { + if this == nil { + return "nil" } - if m.ChallengeType != nil { - { - size := m.ChallengeType.Size() - i -= size - if _, err := m.ChallengeType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_DefaultPool{`, + `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DefaultPoolList) String() string { + if this == nil { + return "nil" } - if len(m.ProtectedCookies) > 0 { - for iNdEx := len(m.ProtectedCookies) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProtectedCookies[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xea - } + s := strings.Join([]string{`&CreateSpecType_DefaultPoolList{`, + `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_SlowDdosMitigation) String() string { + if this == nil { + return "nil" } - if len(m.GraphqlRules) > 0 { - for iNdEx := len(m.GraphqlRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.GraphqlRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xe2 - } + s := strings.Join([]string{`&CreateSpecType_SlowDdosMitigation{`, + `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_EnableChallenge) String() string { + if this == nil { + return "nil" } - if m.CsrfPolicy != nil { - { - size, err := m.CsrfPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xda + s := strings.Join([]string{`&CreateSpecType_EnableChallenge{`, + `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "common_waf.EnableChallenge", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_SystemDefaultTimeouts) String() string { + if this == nil { + return "nil" } - if m.OriginPoolChoice != nil { - { - size := m.OriginPoolChoice.Size() - i -= size - if _, err := m.OriginPoolChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - if m.ClientSideDefenseChoice != nil { - { - size := m.ClientSideDefenseChoice.Size() - i -= size - if _, err := m.ClientSideDefenseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_SystemDefaultTimeouts{`, + `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_DisableThreatMesh) String() string { + if this == nil { + return "nil" } - if m.ApiDiscoveryChoice != nil { - { - size := m.ApiDiscoveryChoice.Size() - i -= size - if _, err := m.ApiDiscoveryChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_DisableThreatMesh{`, + `DisableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_EnableThreatMesh) String() string { + if this == nil { + return "nil" } - if m.MaliciousUserDetectionChoice != nil { - { - size := m.MaliciousUserDetectionChoice.Size() - i -= size - if _, err := m.MaliciousUserDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_EnableThreatMesh{`, + `EnableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_L7DdosActionDefault) String() string { + if this == nil { + return "nil" } - if m.DdosDetectionChoice != nil { - { - size := m.DdosDetectionChoice.Size() - i -= size - if _, err := m.DdosDetectionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_L7DdosActionDefault{`, + `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_L7DdosActionBlock) String() string { + if this == nil { + return "nil" } - if m.TrustClientIpHeadersChoice != nil { - { - size := m.TrustClientIpHeadersChoice.Size() - i -= size - if _, err := m.TrustClientIpHeadersChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_L7DdosActionBlock{`, + `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_L7DdosActionJsChallenge) String() string { + if this == nil { + return "nil" } - if m.ApiProtectionRules != nil { - { - size, err := m.ApiProtectionRules.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xc2 + s := strings.Join([]string{`&CreateSpecType_L7DdosActionJsChallenge{`, + `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_L7DdosActionNone) String() string { + if this == nil { + return "nil" } - if m.ApiDefinitionChoice != nil { - { - size := m.ApiDefinitionChoice.Size() - i -= size - if _, err := m.ApiDefinitionChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_L7DdosActionNone{`, + `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_ApiRateLimit) String() string { + if this == nil { + return "nil" } - if m.RateLimitChoice != nil { - { - size := m.RateLimitChoice.Size() - i -= size - if _, err := m.RateLimitChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_ApiRateLimit{`, + `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "common_waf.APIRateLimit", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType_BotDefenseAdvanced) String() string { + if this == nil { + return "nil" } - if m.IpReputationChoice != nil { - { - size := m.IpReputationChoice.Size() - i -= size - if _, err := m.IpReputationChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&CreateSpecType_BotDefenseAdvanced{`, + `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType) String() string { + if this == nil { + return "nil" } - if len(m.DataGuardRules) > 0 { - for iNdEx := len(m.DataGuardRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DataGuardRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xfa - } + repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" + for _, f := range this.DefaultRoutePools { + repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," } - if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { - for iNdEx := len(m.DownstreamTlsCertificateExpirationTimestamps) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DownstreamTlsCertificateExpirationTimestamps[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xf2 - } + repeatedStringForDefaultRoutePools += "}" + repeatedStringForRoutes := "[]*RouteType{" + for _, f := range this.Routes { + repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," } - if m.UserIdChoice != nil { - { - size := m.UserIdChoice.Size() - i -= size - if _, err := m.UserIdChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForRoutes += "}" + repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" + for _, f := range this.WafExclusionRules { + repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," } - if m.MlConfigChoice != nil { - { - size := m.MlConfigChoice.Size() - i -= size - if _, err := m.MlConfigChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForWafExclusionRules += "}" + repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.BlockedClients { + repeatedStringForBlockedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," } - if m.WafChoice != nil { - { - size := m.WafChoice.Size() - i -= size - if _, err := m.WafChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForBlockedClients += "}" + repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.TrustedClients { + repeatedStringForTrustedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," } - if m.HashPolicyChoice != nil { - { - size := m.HashPolicyChoice.Size() - i -= size - if _, err := m.HashPolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForTrustedClients += "}" + repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" + for _, f := range this.DdosMitigationRules { + repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," } - if m.ServicePolicyChoice != nil { - { - size := m.ServicePolicyChoice.Size() - i -= size - if _, err := m.ServicePolicyChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + repeatedStringForDdosMitigationRules += "}" + repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" + for _, f := range this.DataGuardRules { + repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," } - if len(m.DdosMitigationRules) > 0 { - for iNdEx := len(m.DdosMitigationRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DdosMitigationRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xaa - } + repeatedStringForDataGuardRules += "}" + repeatedStringForGraphqlRules := "[]*GraphQLRule{" + for _, f := range this.GraphqlRules { + repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," } - if len(m.TrustedClients) > 0 { - for iNdEx := len(m.TrustedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.TrustedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x9a - } + repeatedStringForGraphqlRules += "}" + repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" + for _, f := range this.ProtectedCookies { + repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," } - if len(m.BlockedClients) > 0 { - for iNdEx := len(m.BlockedClients) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BlockedClients[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x92 - } + repeatedStringForProtectedCookies += "}" + s := strings.Join([]string{`&ReplaceSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, + `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, + `Routes:` + repeatedStringForRoutes + `,`, + `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, + `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, + `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, + `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, + `BlockedClients:` + repeatedStringForBlockedClients + `,`, + `TrustedClients:` + repeatedStringForTrustedClients + `,`, + `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, + `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, + `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, + `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, + `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, + `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, + `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, + `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, + `ApiProtectionRules:` + strings.Replace(fmt.Sprintf("%v", this.ApiProtectionRules), "APIProtectionRules", "common_waf.APIProtectionRules", 1) + `,`, + `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, + `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, + `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, + `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, + `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, + `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, + `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, + `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, + `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, + `JwtValidation:` + strings.Replace(fmt.Sprintf("%v", this.JwtValidation), "JWTValidation", "common_waf.JWTValidation", 1) + `,`, + `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, + `ThreatMeshChoice:` + fmt.Sprintf("%v", this.ThreatMeshChoice) + `,`, + `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_Http) String() string { + if this == nil { + return "nil" } - if len(m.WafExclusionRules) > 0 { - for iNdEx := len(m.WafExclusionRules) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.WafExclusionRules[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x8a - } + s := strings.Join([]string{`&ReplaceSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_Https) String() string { + if this == nil { + return "nil" } - if m.MaliciousUserMitigation != nil { - { - size, err := m.MaliciousUserMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0x82 + s := strings.Join([]string{`&ReplaceSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_AdvertiseOnPublic) String() string { + if this == nil { + return "nil" } - if m.LoadbalancerType != nil { - { - size := m.LoadbalancerType.Size() - i -= size - if _, err := m.LoadbalancerType.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ReplaceSpecType_AdvertiseOnPublic{`, + `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_AdvertiseCustom) String() string { + if this == nil { + return "nil" } - if m.MoreOption != nil { - { - size, err := m.MoreOption.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x9a + s := strings.Join([]string{`&ReplaceSpecType_AdvertiseCustom{`, + `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_DisableWaf) String() string { + if this == nil { + return "nil" } - if m.AddLocation { - i-- - if m.AddLocation { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x88 + s := strings.Join([]string{`&ReplaceSpecType_DisableWaf{`, + `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_DoNotAdvertise) String() string { + if this == nil { + return "nil" } - if m.AdvertiseChoice != nil { - { - size := m.AdvertiseChoice.Size() - i -= size - if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } + s := strings.Join([]string{`&ReplaceSpecType_DoNotAdvertise{`, + `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_AdvertiseOnPublicDefaultVip) String() string { + if this == nil { + return "nil" } - if m.CorsPolicy != nil { - { - size, err := m.CorsPolicy.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 + s := strings.Join([]string{`&ReplaceSpecType_AdvertiseOnPublicDefaultVip{`, + `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_JsChallenge) String() string { + if this == nil { + return "nil" } - if len(m.Routes) > 0 { - for iNdEx := len(m.Routes) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Routes[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - } + s := strings.Join([]string{`&ReplaceSpecType_JsChallenge{`, + `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_UserIdentification) String() string { + if this == nil { + return "nil" } - if len(m.DefaultRoutePools) > 0 { - for iNdEx := len(m.DefaultRoutePools) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.DefaultRoutePools[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } - } - if len(m.Domains) > 0 { - for iNdEx := len(m.Domains) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Domains[iNdEx]) - copy(dAtA[i:], m.Domains[iNdEx]) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Domains[iNdEx]))) - i-- - dAtA[i] = 0xa - } + s := strings.Join([]string{`&ReplaceSpecType_UserIdentification{`, + `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType_DisableRateLimit) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_DisableRateLimit{`, + `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_Http) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_RateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_RateLimit{`, + `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "common_waf.RateLimitConfigType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_Http) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Http != nil { - { - size, err := m.Http.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 +func (this *ReplaceSpecType_CaptchaChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_CaptchaChallenge{`, + `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_Https) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_NoChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_NoChallenge{`, + `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_Https) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Https != nil { - { - size, err := m.Https.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a +func (this *ReplaceSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_ServicePoliciesFromNamespace) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_ServicePoliciesFromNamespace{`, + `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublic != nil { - { - size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 +func (this *ReplaceSpecType_NoServicePolicies) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_NoServicePolicies{`, + `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_ActiveServicePolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_ActiveServicePolicies{`, + `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "common_waf.ServicePolicyList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseCustom != nil { - { - size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a +func (this *ReplaceSpecType_RoundRobin) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_RoundRobin{`, + `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableWaf) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_LeastActive) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_LeastActive{`, + `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableWaf) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableWaf != nil { - { - size, err := m.DisableWaf.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5a +func (this *ReplaceSpecType_Random) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_Random{`, + `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_SourceIpStickiness) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_SourceIpStickiness{`, + `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DoNotAdvertise != nil { - { - size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 +func (this *ReplaceSpecType_CookieStickiness) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_CookieStickiness{`, + `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_RingHash) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_RingHash{`, + `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AdvertiseOnPublicDefaultVip != nil { - { - size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6a +func (this *ReplaceSpecType_PolicyBasedChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_PolicyBasedChallenge{`, + `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "common_waf.PolicyBasedChallenge", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_JsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_AppFirewall) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_AppFirewall{`, + `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_JsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.JsChallenge != nil { - { - size, err := m.JsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 +func (this *ReplaceSpecType_SingleLbApp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_SingleLbApp{`, + `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_UserIdentification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_MultiLbApp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_MultiLbApp{`, + `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_UserIdentification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdentification != nil { - { - size, err := m.UserIdentification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xa2 +func (this *ReplaceSpecType_DisableBotDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_DisableBotDefense{`, + `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_BotDefense) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_BotDefense{`, + `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableRateLimit != nil { - { - size, err := m.DisableRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xb2 +func (this *ReplaceSpecType_UserIdClientIp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_UserIdClientIp{`, + `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_RateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_ApiDefinitions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_ApiDefinitions{`, + `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "common_waf.ApiDefinitionList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_RateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RateLimit != nil { - { - size, err := m.RateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xba +func (this *ReplaceSpecType_DisableIpReputation) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_DisableIpReputation{`, + `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_CaptchaChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_EnableIpReputation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_EnableIpReputation{`, + `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "common_waf.IPThreatCategoryListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_CaptchaChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CaptchaChallenge != nil { - { - size, err := m.CaptchaChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xc2 +func (this *ReplaceSpecType_ApiSpecification) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_ApiSpecification{`, + `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "common_waf.APISpecificationSettings", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_NoChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_DisableApiDefinition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_DisableApiDefinition{`, + `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_NoChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoChallenge != nil { - { - size, err := m.NoChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xd2 +func (this *ReplaceSpecType_ApiDefinition) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_ApiDefinition{`, + `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_HttpsAutoCert) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_DisableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_DisableTrustClientIpHeaders{`, + `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_HttpsAutoCert) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.HttpsAutoCert != nil { - { - size, err := m.HttpsAutoCert.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0xda +func (this *ReplaceSpecType_EnableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_ServicePoliciesFromNamespace) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_EnableTrustClientIpHeaders{`, + `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ServicePoliciesFromNamespace) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ServicePoliciesFromNamespace != nil { - { - size, err := m.ServicePoliciesFromNamespace.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xca +func (this *ReplaceSpecType_EnableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_NoServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_EnableMaliciousUserDetection{`, + `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_NoServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.NoServicePolicies != nil { - { - size, err := m.NoServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xd2 +func (this *ReplaceSpecType_DisableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_ActiveServicePolicies) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_DisableMaliciousUserDetection{`, + `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ActiveServicePolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ActiveServicePolicies != nil { - { - size, err := m.ActiveServicePolicies.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xda +func (this *ReplaceSpecType_EnableApiDiscovery) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_RoundRobin) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_EnableApiDiscovery{`, + `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_RoundRobin) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RoundRobin != nil { - { - size, err := m.RoundRobin.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xea +func (this *ReplaceSpecType_DisableApiDiscovery) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_LeastActive) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_DisableApiDiscovery{`, + `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_LeastActive) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.LeastActive != nil { - { - size, err := m.LeastActive.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xf2 +func (this *ReplaceSpecType_DisableClientSideDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_Random) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_DisableClientSideDefense{`, + `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_Random) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.Random != nil { - { - size, err := m.Random.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2 - i-- - dAtA[i] = 0xfa +func (this *ReplaceSpecType_ClientSideDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_SourceIpStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_ClientSideDefense{`, + `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_SourceIpStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SourceIpStickiness != nil { - { - size, err := m.SourceIpStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x82 +func (this *ReplaceSpecType_DefaultPool) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_CookieStickiness) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_DefaultPool{`, + `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_CookieStickiness) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.CookieStickiness != nil { - { - size, err := m.CookieStickiness.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x8a +func (this *ReplaceSpecType_DefaultPoolList) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_RingHash) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_DefaultPoolList{`, + `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_RingHash) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.RingHash != nil { - { - size, err := m.RingHash.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x92 +func (this *ReplaceSpecType_SlowDdosMitigation) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_PolicyBasedChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_SlowDdosMitigation{`, + `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_PolicyBasedChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.PolicyBasedChallenge != nil { - { - size, err := m.PolicyBasedChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0x9a +func (this *ReplaceSpecType_EnableChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_AppFirewall) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_EnableChallenge{`, + `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "common_waf.EnableChallenge", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_AppFirewall) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.AppFirewall != nil { - { - size, err := m.AppFirewall.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xa2 +func (this *ReplaceSpecType_SystemDefaultTimeouts) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_SingleLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_SystemDefaultTimeouts{`, + `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_SingleLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SingleLbApp != nil { - { - size, err := m.SingleLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xb2 +func (this *ReplaceSpecType_DisableThreatMesh) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_MultiLbApp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_DisableThreatMesh{`, + `DisableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_MultiLbApp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.MultiLbApp != nil { - { - size, err := m.MultiLbApp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xba +func (this *ReplaceSpecType_EnableThreatMesh) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_EnableThreatMesh{`, + `EnableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableBotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableBotDefense != nil { - { - size, err := m.DisableBotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xca +func (this *ReplaceSpecType_L7DdosActionDefault) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_BotDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionDefault{`, + `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_BotDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefense != nil { - { - size, err := m.BotDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xd2 +func (this *ReplaceSpecType_L7DdosActionBlock) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_UserIdClientIp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionBlock{`, + `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_UserIdClientIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.UserIdClientIp != nil { - { - size, err := m.UserIdClientIp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xe2 +func (this *ReplaceSpecType_L7DdosActionJsChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionJsChallenge{`, + `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_ApiDefinitions) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_L7DdosActionNone) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionNone{`, + `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ApiDefinitions) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinitions != nil { - { - size, err := m.ApiDefinitions.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3 - i-- - dAtA[i] = 0xea +func (this *ReplaceSpecType_ApiRateLimit) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&ReplaceSpecType_ApiRateLimit{`, + `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "common_waf.APIRateLimit", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *ReplaceSpecType_BotDefenseAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType_BotDefenseAdvanced{`, + `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableIpReputation != nil { - { - size, err := m.DisableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x8a +func (this *GetSpecType) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" + for _, f := range this.DefaultRoutePools { + repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," + } + repeatedStringForDefaultRoutePools += "}" + repeatedStringForRoutes := "[]*RouteType{" + for _, f := range this.Routes { + repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," + } + repeatedStringForRoutes += "}" + repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" + for _, f := range this.WafExclusionRules { + repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," + } + repeatedStringForWafExclusionRules += "}" + repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.BlockedClients { + repeatedStringForBlockedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForBlockedClients += "}" + repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" + for _, f := range this.TrustedClients { + repeatedStringForTrustedClients += strings.Replace(fmt.Sprintf("%v", f), "SimpleClientSrcRule", "common_waf.SimpleClientSrcRule", 1) + "," + } + repeatedStringForTrustedClients += "}" + repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" + for _, f := range this.DdosMitigationRules { + repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," + } + repeatedStringForDdosMitigationRules += "}" + repeatedStringForDownstreamTlsCertificateExpirationTimestamps := "[]*Timestamp{" + for _, f := range this.DownstreamTlsCertificateExpirationTimestamps { + repeatedStringForDownstreamTlsCertificateExpirationTimestamps += strings.Replace(fmt.Sprintf("%v", f), "Timestamp", "types.Timestamp", 1) + "," + } + repeatedStringForDownstreamTlsCertificateExpirationTimestamps += "}" + repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" + for _, f := range this.DataGuardRules { + repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," + } + repeatedStringForDataGuardRules += "}" + repeatedStringForGraphqlRules := "[]*GraphQLRule{" + for _, f := range this.GraphqlRules { + repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," + } + repeatedStringForGraphqlRules += "}" + repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" + for _, f := range this.ProtectedCookies { + repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," + } + repeatedStringForProtectedCookies += "}" + repeatedStringForDnsInfo := "[]*DnsInfo{" + for _, f := range this.DnsInfo { + repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," + } + repeatedStringForDnsInfo += "}" + repeatedStringForInternetVipInfo := "[]*InternetVIPInfo{" + for _, f := range this.InternetVipInfo { + repeatedStringForInternetVipInfo += strings.Replace(fmt.Sprintf("%v", f), "InternetVIPInfo", "views.InternetVIPInfo", 1) + "," + } + repeatedStringForInternetVipInfo += "}" + s := strings.Join([]string{`&GetSpecType{`, + `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, + `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, + `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, + `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, + `Routes:` + repeatedStringForRoutes + `,`, + `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, + `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, + `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, + `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, + `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, + `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, + `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, + `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, + `BlockedClients:` + repeatedStringForBlockedClients + `,`, + `TrustedClients:` + repeatedStringForTrustedClients + `,`, + `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, + `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, + `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, + `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, + `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, + `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, + `DownstreamTlsCertificateExpirationTimestamps:` + repeatedStringForDownstreamTlsCertificateExpirationTimestamps + `,`, + `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, + `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, + `ApiProtectionRules:` + strings.Replace(fmt.Sprintf("%v", this.ApiProtectionRules), "APIProtectionRules", "common_waf.APIProtectionRules", 1) + `,`, + `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, + `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, + `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, + `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, + `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, + `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, + `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, + `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, + `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, + `JwtValidation:` + strings.Replace(fmt.Sprintf("%v", this.JwtValidation), "JWTValidation", "common_waf.JWTValidation", 1) + `,`, + `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, + `ThreatMeshChoice:` + fmt.Sprintf("%v", this.ThreatMeshChoice) + `,`, + `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, + `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, + `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, + `DnsInfo:` + repeatedStringForDnsInfo + `,`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, + `InternetVipInfo:` + repeatedStringForInternetVipInfo + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_EnableIpReputation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_Http) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_Http{`, + `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableIpReputation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableIpReputation != nil { - { - size, err := m.EnableIpReputation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x92 +func (this *GetSpecType_Https) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_Https{`, + `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_ApiSpecification) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_AdvertiseOnPublic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_AdvertiseOnPublic{`, + `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ApiSpecification) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiSpecification != nil { - { - size, err := m.ApiSpecification.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0x9a +func (this *GetSpecType_AdvertiseCustom) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_AdvertiseCustom{`, + `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_ApiRateLimit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_DisableWaf) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_DisableWaf{`, + `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ApiRateLimit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiRateLimit != nil { - { - size, err := m.ApiRateLimit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xa2 +func (this *GetSpecType_DoNotAdvertise) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DoNotAdvertise{`, + `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_AdvertiseOnPublicDefaultVip) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_AdvertiseOnPublicDefaultVip{`, + `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableApiDefinition != nil { - { - size, err := m.DisableApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xb2 +func (this *GetSpecType_JsChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_JsChallenge{`, + `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_ApiDefinition) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_UserIdentification) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_UserIdentification{`, + `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ApiDefinition) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ApiDefinition != nil { - { - size, err := m.ApiDefinition.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xba +func (this *GetSpecType_DisableRateLimit) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DisableRateLimit{`, + `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_RateLimit) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_RateLimit{`, + `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "common_waf.RateLimitConfigType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableTrustClientIpHeaders != nil { - { - size, err := m.DisableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xd2 +func (this *GetSpecType_CaptchaChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_CaptchaChallenge{`, + `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_EnableTrustClientIpHeaders) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_NoChallenge) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_NoChallenge{`, + `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableTrustClientIpHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableTrustClientIpHeaders != nil { - { - size, err := m.EnableTrustClientIpHeaders.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xda +func (this *GetSpecType_HttpsAutoCert) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_HttpsAutoCert{`, + `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_EnableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_ServicePoliciesFromNamespace) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_ServicePoliciesFromNamespace{`, + `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableDdosDetection != nil { - { - size, err := m.EnableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xea +func (this *GetSpecType_NoServicePolicies) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_NoServicePolicies{`, + `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableDdosDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_ActiveServicePolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_ActiveServicePolicies{`, + `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "common_waf.ServicePolicyList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableDdosDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableDdosDetection != nil { - { - size, err := m.DisableDdosDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4 - i-- - dAtA[i] = 0xf2 +func (this *GetSpecType_RoundRobin) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_RoundRobin{`, + `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_EnableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_LeastActive) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_LeastActive{`, + `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableMaliciousUserDetection != nil { - { - size, err := m.EnableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x82 +func (this *GetSpecType_Random) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_Random{`, + `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableMaliciousUserDetection) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_SourceIpStickiness) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_SourceIpStickiness{`, + `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableMaliciousUserDetection) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableMaliciousUserDetection != nil { - { - size, err := m.DisableMaliciousUserDetection.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x8a +func (this *GetSpecType_CookieStickiness) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_EnableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GetSpecType_CookieStickiness{`, + `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableApiDiscovery != nil { - { - size, err := m.EnableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0x9a +func (this *GetSpecType_RingHash) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil -} -func (m *GetSpecType_DisableApiDiscovery) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + s := strings.Join([]string{`&GetSpecType_RingHash{`, + `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableApiDiscovery) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableApiDiscovery != nil { - { - size, err := m.DisableApiDiscovery.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xa2 +func (this *GetSpecType_PolicyBasedChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_PolicyBasedChallenge{`, + `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "common_waf.PolicyBasedChallenge", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_AppFirewall) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_AppFirewall{`, + `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableClientSideDefense != nil { - { - size, err := m.DisableClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xb2 +func (this *GetSpecType_SingleLbApp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_SingleLbApp{`, + `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_ClientSideDefense) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_MultiLbApp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_MultiLbApp{`, + `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_ClientSideDefense) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.ClientSideDefense != nil { - { - size, err := m.ClientSideDefense.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xba +func (this *GetSpecType_DisableBotDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DisableBotDefense{`, + `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DefaultPool) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_BotDefense) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_BotDefense{`, + `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DefaultPool) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultPool != nil { - { - size, err := m.DefaultPool.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xca +func (this *GetSpecType_UserIdClientIp) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_UserIdClientIp{`, + `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DefaultPoolList) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_ApiDefinitions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_ApiDefinitions{`, + `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "common_waf.ApiDefinitionList", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DefaultPoolList) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DefaultPoolList != nil { - { - size, err := m.DefaultPoolList.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xd2 +func (this *GetSpecType_DisableIpReputation) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DisableIpReputation{`, + `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_SlowDdosMitigation) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_EnableIpReputation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_EnableIpReputation{`, + `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "common_waf.IPThreatCategoryListType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_SlowDdosMitigation) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SlowDdosMitigation != nil { - { - size, err := m.SlowDdosMitigation.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xf2 +func (this *GetSpecType_ApiSpecification) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_ApiSpecification{`, + `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "common_waf.APISpecificationSettings", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_EnableChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_DisableApiDefinition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_DisableApiDefinition{`, + `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableChallenge != nil { - { - size, err := m.EnableChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x5 - i-- - dAtA[i] = 0xfa +func (this *GetSpecType_ApiDefinition) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_ApiDefinition{`, + `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_SystemDefaultTimeouts) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_DisableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_DisableTrustClientIpHeaders{`, + `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_SystemDefaultTimeouts) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SystemDefaultTimeouts != nil { - { - size, err := m.SystemDefaultTimeouts.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0x8a +func (this *GetSpecType_EnableTrustClientIpHeaders) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_EnableTrustClientIpHeaders{`, + `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_DisableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_EnableMaliciousUserDetection) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_EnableMaliciousUserDetection{`, + `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_DisableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.DisableThreatIntelligence != nil { - { - size, err := m.DisableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xba +func (this *GetSpecType_DisableMaliciousUserDetection) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DisableMaliciousUserDetection{`, + `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_EnableThreatIntelligence) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_EnableApiDiscovery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_EnableApiDiscovery{`, + `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "common_waf.ApiDiscoverySetting", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_EnableThreatIntelligence) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.EnableThreatIntelligence != nil { - { - size, err := m.EnableThreatIntelligence.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xca +func (this *GetSpecType_DisableApiDiscovery) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DisableApiDiscovery{`, + `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_L7DdosActionDefault) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_DisableClientSideDefense) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_DisableClientSideDefense{`, + `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionDefault != nil { - { - size, err := m.L7DdosActionDefault.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x6 - i-- - dAtA[i] = 0xfa +func (this *GetSpecType_ClientSideDefense) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_ClientSideDefense{`, + `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_L7DdosActionBlock) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_DefaultPool) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_DefaultPool{`, + `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_L7DdosActionBlock) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionBlock != nil { - { - size, err := m.L7DdosActionBlock.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x82 +func (this *GetSpecType_DefaultPoolList) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_DefaultPoolList{`, + `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_L7DdosActionJsChallenge) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (this *GetSpecType_SlowDdosMitigation) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_SlowDdosMitigation{`, + `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, + `}`, + }, "") + return s } - -func (m *GetSpecType_L7DdosActionJsChallenge) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionJsChallenge != nil { - { - size, err := m.L7DdosActionJsChallenge.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x8a +func (this *GetSpecType_EnableChallenge) String() string { + if this == nil { + return "nil" } - return len(dAtA) - i, nil + s := strings.Join([]string{`&GetSpecType_EnableChallenge{`, + `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "common_waf.EnableChallenge", 1) + `,`, + `}`, + }, "") + return s } -func (m *GetSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GetSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.L7DdosActionNone != nil { - { - size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7 - i-- - dAtA[i] = 0x92 - } - return len(dAtA) - i, nil -} -func (m *GetSpecType_BotDefenseAdvanced) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GetSpecType_BotDefenseAdvanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.BotDefenseAdvanced != nil { - { - size, err := m.BotDefenseAdvanced.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3f - i-- - dAtA[i] = 0x9a - } - return len(dAtA) - i, nil -} -func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { - offset -= sovTypes(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *InlineRateLimiter) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Threshold != 0 { - n += 1 + sovTypes(uint64(m.Threshold)) - } - if m.Unit != 0 { - n += 1 + sovTypes(uint64(m.Unit)) - } - if m.CountByChoice != nil { - n += m.CountByChoice.Size() - } - return n -} - -func (m *InlineRateLimiter_UseHttpLbUserId) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UseHttpLbUserId != nil { - l = m.UseHttpLbUserId.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *InlineRateLimiter_RefUserId) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RefUserId != nil { - l = m.RefUserId.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ServerUrlRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DomainChoice != nil { - n += m.DomainChoice.Size() - } - l = len(m.BasePath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.RateLimiterChoice != nil { - n += m.RateLimiterChoice.Size() - } - if m.ClientMatcher != nil { - l = m.ClientMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.ApiGroup) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.RequestMatcher != nil { - l = m.RequestMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ServerUrlRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ServerUrlRule_SpecificDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SpecificDomain) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ServerUrlRule_InlineRateLimiter) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.InlineRateLimiter != nil { - l = m.InlineRateLimiter.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ServerUrlRule_RefRateLimiter) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RefRateLimiter != nil { - l = m.RefRateLimiter.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ApiEndpointRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DomainChoice != nil { - n += m.DomainChoice.Size() - } - l = len(m.BasePath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.ApiEndpointPath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.ApiEndpointMethod != nil { - l = m.ApiEndpointMethod.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.RateLimiterChoice != nil { - n += m.RateLimiterChoice.Size() - } - if m.RequestMatcher != nil { - l = m.RequestMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ClientMatcher != nil { - l = m.ClientMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ApiEndpointRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ApiEndpointRule_SpecificDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SpecificDomain) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ApiEndpointRule_InlineRateLimiter) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.InlineRateLimiter != nil { - l = m.InlineRateLimiter.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ApiEndpointRule_RefRateLimiter) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RefRateLimiter != nil { - l = m.RefRateLimiter.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BypassRateLimitingRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DomainChoice != nil { - n += m.DomainChoice.Size() - } - if m.DestinationType != nil { - n += m.DestinationType.Size() - } - if m.RequestMatcher != nil { - l = m.RequestMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ClientMatcher != nil { - l = m.ClientMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *BypassRateLimitingRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BypassRateLimitingRule_SpecificDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SpecificDomain) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *BypassRateLimitingRule_AnyUrl) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyUrl != nil { - l = m.AnyUrl.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BypassRateLimitingRule_BasePath) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.BasePath) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *BypassRateLimitingRule_ApiEndpoint) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiEndpoint != nil { - l = m.ApiEndpoint.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BypassRateLimitingRule_ApiGroups) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiGroups != nil { - l = m.ApiGroups.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BypassRateLimitingRules) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.BypassRateLimitingRules) > 0 { - for _, e := range m.BypassRateLimitingRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *APIRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IpAllowedListChoice != nil { - n += m.IpAllowedListChoice.Size() - } - if len(m.ServerUrlRules) > 0 { - for _, e := range m.ServerUrlRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ApiEndpointRules) > 0 { - for _, e := range m.ApiEndpointRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *APIRateLimit_NoIpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoIpAllowedList != nil { - l = m.NoIpAllowedList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIRateLimit_IpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IpAllowedList != nil { - l = m.IpAllowedList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIRateLimit_CustomIpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CustomIpAllowedList != nil { - l = m.CustomIpAllowedList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIRateLimit_BypassRateLimitingRules) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BypassRateLimitingRules != nil { - l = m.BypassRateLimitingRules.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttps) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpRedirect { - n += 2 - } - if m.AddHsts { - n += 2 - } - if m.TlsCertificatesChoice != nil { - n += m.TlsCertificatesChoice.Size() - } - if m.ServerHeaderChoice != nil { - n += m.ServerHeaderChoice.Size() - } - if m.PathNormalizeChoice != nil { - n += m.PathNormalizeChoice.Size() - } - if m.PortChoice != nil { - n += m.PortChoice.Size() - } - if m.DefaultLbChoice != nil { - n += m.DefaultLbChoice.Size() - } - if m.HeaderTransformationType != nil { - l = m.HeaderTransformationType.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ConnectionIdleTimeout != 0 { - n += 2 + sovTypes(uint64(m.ConnectionIdleTimeout)) - } - if m.HttpProtocolOptions != nil { - l = m.HttpProtocolOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ProxyTypeHttps_TlsParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TlsParameters != nil { - l = m.TlsParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttps_DefaultHeader) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultHeader != nil { - l = m.DefaultHeader.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttps_ServerName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ServerName) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ProxyTypeHttps_AppendServerName) Size() (n int) { - if m == nil { - return 0 +func (this *GetSpecType_SystemDefaultTimeouts) String() string { + if this == nil { + return "nil" } - var l int - _ = l - l = len(m.AppendServerName) - n += 1 + l + sovTypes(uint64(l)) - return n + s := strings.Join([]string{`&GetSpecType_SystemDefaultTimeouts{`, + `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ProxyTypeHttps_PassThrough) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PassThrough != nil { - l = m.PassThrough.Size() - n += 1 + l + sovTypes(uint64(l)) +func (this *GetSpecType_DisableThreatMesh) String() string { + if this == nil { + return "nil" } - return n + s := strings.Join([]string{`&GetSpecType_DisableThreatMesh{`, + `DisableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ProxyTypeHttps_EnablePathNormalize) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnablePathNormalize != nil { - l = m.EnablePathNormalize.Size() - n += 1 + l + sovTypes(uint64(l)) +func (this *GetSpecType_EnableThreatMesh) String() string { + if this == nil { + return "nil" } - return n + s := strings.Join([]string{`&GetSpecType_EnableThreatMesh{`, + `EnableThreatMesh:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatMesh), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ProxyTypeHttps_DisablePathNormalize) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisablePathNormalize != nil { - l = m.DisablePathNormalize.Size() - n += 1 + l + sovTypes(uint64(l)) +func (this *GetSpecType_L7DdosActionDefault) String() string { + if this == nil { + return "nil" } - return n + s := strings.Join([]string{`&GetSpecType_L7DdosActionDefault{`, + `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ProxyTypeHttps_Port) Size() (n int) { - if m == nil { - return 0 +func (this *GetSpecType_L7DdosActionBlock) String() string { + if this == nil { + return "nil" } - var l int - _ = l - n += 1 + sovTypes(uint64(m.Port)) - return n + s := strings.Join([]string{`&GetSpecType_L7DdosActionBlock{`, + `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s } -func (m *ProxyTypeHttps_NonDefaultLoadbalancer) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NonDefaultLoadbalancer != nil { - l = m.NonDefaultLoadbalancer.Size() - n += 2 + l + sovTypes(uint64(l)) +func (this *GetSpecType_L7DdosActionJsChallenge) String() string { + if this == nil { + return "nil" } - return n + s := strings.Join([]string{`&GetSpecType_L7DdosActionJsChallenge{`, + `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, + `}`, + }, "") + return s } -func (m *ProxyTypeHttps_DefaultLoadbalancer) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultLoadbalancer != nil { - l = m.DefaultLoadbalancer.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttps_TlsCertParams) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TlsCertParams != nil { - l = m.TlsCertParams.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttps_PortRanges) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.PortRanges) - n += 2 + l + sovTypes(uint64(l)) - return n -} -func (m *ProxyTypeHttp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DnsVolterraManaged { - n += 2 - } - if m.PortChoice != nil { - n += m.PortChoice.Size() - } - return n -} - -func (m *ProxyTypeHttp_Port) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 1 + sovTypes(uint64(m.Port)) - return n -} -func (m *ProxyTypeHttp_PortRanges) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.PortRanges) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ProxyTypeHttpsAutoCerts) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpRedirect { - n += 2 - } - if m.AddHsts { - n += 2 - } - if m.TlsConfig != nil { - l = m.TlsConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.MtlsChoice != nil { - n += m.MtlsChoice.Size() - } - if m.ServerHeaderChoice != nil { - n += m.ServerHeaderChoice.Size() - } - if m.PathNormalizeChoice != nil { - n += m.PathNormalizeChoice.Size() - } - if m.PortChoice != nil { - n += m.PortChoice.Size() - } - if m.DefaultLbChoice != nil { - n += m.DefaultLbChoice.Size() - } - if m.HeaderTransformationType != nil { - l = m.HeaderTransformationType.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ConnectionIdleTimeout != 0 { - n += 2 + sovTypes(uint64(m.ConnectionIdleTimeout)) - } - if m.HttpProtocolOptions != nil { - l = m.HttpProtocolOptions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ProxyTypeHttpsAutoCerts_NoMtls) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoMtls != nil { - l = m.NoMtls.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_UseMtls) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UseMtls != nil { - l = m.UseMtls.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_DefaultHeader) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultHeader != nil { - l = m.DefaultHeader.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_ServerName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ServerName) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ProxyTypeHttpsAutoCerts_AppendServerName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AppendServerName) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ProxyTypeHttpsAutoCerts_PassThrough) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PassThrough != nil { - l = m.PassThrough.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_EnablePathNormalize) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnablePathNormalize != nil { - l = m.EnablePathNormalize.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_DisablePathNormalize) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisablePathNormalize != nil { - l = m.DisablePathNormalize.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_Port) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 2 + sovTypes(uint64(m.Port)) - return n -} -func (m *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NonDefaultLoadbalancer != nil { - l = m.NonDefaultLoadbalancer.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultLoadbalancer != nil { - l = m.DefaultLoadbalancer.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProxyTypeHttpsAutoCerts_PortRanges) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.PortRanges) - n += 2 + l + sovTypes(uint64(l)) - return n -} -func (m *HashPolicyListType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.HashPolicy) > 0 { - for _, e := range m.HashPolicy { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *MirrorPolicyType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OriginPool != nil { - l = m.OriginPool.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Percent != nil { - l = m.Percent.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *RouteSimpleAdvancedOptions) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HashPolicyChoice != nil { - n += m.HashPolicyChoice.Size() - } - if m.Priority != 0 { - n += 1 + sovTypes(uint64(m.Priority)) - } - if len(m.EndpointSubsets) > 0 { - for k, v := range m.EndpointSubsets { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + 1 + len(v) + sovTypes(uint64(len(v))) - n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) - } - } - if m.RewriteChoice != nil { - n += m.RewriteChoice.Size() - } - if len(m.RequestHeadersToAdd) > 0 { - for _, e := range m.RequestHeadersToAdd { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.RequestHeadersToRemove) > 0 { - for _, s := range m.RequestHeadersToRemove { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ResponseHeadersToAdd) > 0 { - for _, e := range m.ResponseHeadersToAdd { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ResponseHeadersToRemove) > 0 { - for _, s := range m.ResponseHeadersToRemove { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.DisableLocationAdd { - n += 2 - } - if m.WafChoice != nil { - n += m.WafChoice.Size() - } - if m.CorsPolicy != nil { - l = m.CorsPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.SpdyChoice != nil { - n += m.SpdyChoice.Size() - } - if m.WebsocketChoice != nil { - n += m.WebsocketChoice.Size() - } - if m.RetryPolicyChoice != nil { - n += m.RetryPolicyChoice.Size() - } - if m.Timeout != 0 { - n += 2 + sovTypes(uint64(m.Timeout)) - } - if m.BufferChoice != nil { - n += m.BufferChoice.Size() - } - if m.MirroringChoice != nil { - n += m.MirroringChoice.Size() - } - if m.ClusterRetractChoice != nil { - n += m.ClusterRetractChoice.Size() - } - if m.BotDefenseJavascriptInjectionChoice != nil { - n += m.BotDefenseJavascriptInjectionChoice.Size() - } - if m.CsrfPolicy != nil { - l = m.CsrfPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *RouteSimpleAdvancedOptions_CommonHashPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CommonHashPolicy != nil { - l = m.CommonHashPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_SpecificHashPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SpecificHashPolicy != nil { - l = m.SpecificHashPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DisablePrefixRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisablePrefixRewrite != nil { - l = m.DisablePrefixRewrite.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_PrefixRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.PrefixRewrite) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *RouteSimpleAdvancedOptions_InheritedWaf) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.InheritedWaf != nil { - l = m.InheritedWaf.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DisableSpdy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableSpdy != nil { - l = m.DisableSpdy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_EnableSpdy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableSpdy != nil { - l = m.EnableSpdy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DisableWebSocketConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableWebSocketConfig != nil { - l = m.DisableWebSocketConfig.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_WebSocketConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.WebSocketConfig != nil { - l = m.WebSocketConfig.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DefaultRetryPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultRetryPolicy != nil { - l = m.DefaultRetryPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_RetryPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RetryPolicy != nil { - l = m.RetryPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_CommonBuffering) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CommonBuffering != nil { - l = m.CommonBuffering.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_BufferPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BufferPolicy != nil { - l = m.BufferPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DisableMirroring) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMirroring != nil { - l = m.DisableMirroring.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_MirrorPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MirrorPolicy != nil { - l = m.MirrorPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_RetractCluster) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RetractCluster != nil { - l = m.RetractCluster.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DoNotRetractCluster) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DoNotRetractCluster != nil { - l = m.DoNotRetractCluster.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.InheritedBotDefenseJavascriptInjection != nil { - l = m.InheritedBotDefenseJavascriptInjection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefenseJavascriptInjection != nil { - l = m.BotDefenseJavascriptInjection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_DisableWaf) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableWaf != nil { - l = m.DisableWaf.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_NoRetryPolicy) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoRetryPolicy != nil { - l = m.NoRetryPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_RegexRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RegexRewrite != nil { - l = m.RegexRewrite.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteSimpleAdvancedOptions_AppFirewall) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AppFirewall != nil { - l = m.AppFirewall.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteTypeSimpleWithDefaultOriginPool) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpMethod != 0 { - n += 1 + sovTypes(uint64(m.HttpMethod)) - } - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.HostRewriteParams != nil { - n += m.HostRewriteParams.Size() - } - return n -} - -func (m *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AutoHostRewrite != nil { - l = m.AutoHostRewrite.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.HostRewrite) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableHostRewrite != nil { - l = m.DisableHostRewrite.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteTypeSimple) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.HttpMethod != 0 { - n += 1 + sovTypes(uint64(m.HttpMethod)) - } - if len(m.OriginPools) > 0 { - for _, e := range m.OriginPools { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.HostRewriteParams != nil { - n += m.HostRewriteParams.Size() - } - if m.AdvancedOptions != nil { - l = m.AdvancedOptions.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Headers) > 0 { - for _, e := range m.Headers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.IncomingPort != nil { - l = m.IncomingPort.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *RouteTypeSimple_AutoHostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AutoHostRewrite != nil { - l = m.AutoHostRewrite.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteTypeSimple_HostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.HostRewrite) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *RouteTypeSimple_DisableHostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableHostRewrite != nil { - l = m.DisableHostRewrite.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteTypeRedirect) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.HttpMethod != 0 { - n += 1 + sovTypes(uint64(m.HttpMethod)) - } - if m.RouteRedirect != nil { - l = m.RouteRedirect.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Headers) > 0 { - for _, e := range m.Headers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.IncomingPort != nil { - l = m.IncomingPort.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *RouteTypeDirectResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.HttpMethod != 0 { - n += 1 + sovTypes(uint64(m.HttpMethod)) - } - if m.RouteDirectResponse != nil { - l = m.RouteDirectResponse.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Headers) > 0 { - for _, e := range m.Headers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.IncomingPort != nil { - l = m.IncomingPort.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *RouteTypeCustomRoute) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RouteRef != nil { - l = m.RouteRef.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *RouteType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Choice != nil { - n += m.Choice.Size() - } - return n -} - -func (m *RouteType_SimpleRoute) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SimpleRoute != nil { - l = m.SimpleRoute.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteType_RedirectRoute) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RedirectRoute != nil { - l = m.RedirectRoute.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteType_DirectResponseRoute) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DirectResponseRoute != nil { - l = m.DirectResponseRoute.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RouteType_CustomRouteObject) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CustomRouteObject != nil { - l = m.CustomRouteObject.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AdvancedOptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.RequestHeadersToAdd) > 0 { - for _, e := range m.RequestHeadersToAdd { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.RequestHeadersToRemove) > 0 { - for _, s := range m.RequestHeadersToRemove { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ResponseHeadersToAdd) > 0 { - for _, e := range m.ResponseHeadersToAdd { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ResponseHeadersToRemove) > 0 { - for _, s := range m.ResponseHeadersToRemove { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.MaxRequestHeaderSize != 0 { - n += 1 + sovTypes(uint64(m.MaxRequestHeaderSize)) - } - if m.BufferPolicy != nil { - l = m.BufferPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.CompressionParams != nil { - l = m.CompressionParams.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.CustomErrors) > 0 { - for k, v := range m.CustomErrors { - _ = k - _ = v - mapEntrySize := 1 + sovTypes(uint64(k)) + 1 + len(v) + sovTypes(uint64(len(v))) - n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) - } - } - if m.JavascriptInfo != nil { - l = m.JavascriptInfo.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Jwt) > 0 { - for _, e := range m.Jwt { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.IdleTimeout != 0 { - n += 1 + sovTypes(uint64(m.IdleTimeout)) - } - if m.DisableDefaultErrorPages { - n += 2 - } - if m.PathNormalizeChoice != nil { - n += m.PathNormalizeChoice.Size() - } - if m.StrictSniHostHeaderCheckChoice != nil { - n += m.StrictSniHostHeaderCheckChoice.Size() - } - if len(m.CookiesToModify) > 0 { - for _, e := range m.CookiesToModify { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *AdvancedOptionsType_EnablePathNormalize) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnablePathNormalize != nil { - l = m.EnablePathNormalize.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AdvancedOptionsType_DisablePathNormalize) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisablePathNormalize != nil { - l = m.DisablePathNormalize.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableStrictSniHostHeaderCheck != nil { - l = m.EnableStrictSniHostHeaderCheck.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AdvancedOptionsType_AdditionalDomains) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdditionalDomains != nil { - l = m.AdditionalDomains.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MaliciousUserMitigationChoice != nil { - n += m.MaliciousUserMitigationChoice.Size() - } - if m.JsChallengeParametersChoice != nil { - n += m.JsChallengeParametersChoice.Size() - } - if m.CaptchaChallengeParametersChoice != nil { - n += m.CaptchaChallengeParametersChoice.Size() - } - return n -} - -func (m *EnableChallenge_DefaultMitigationSettings) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultMitigationSettings != nil { - l = m.DefaultMitigationSettings.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableChallenge_MaliciousUserMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MaliciousUserMitigation != nil { - l = m.MaliciousUserMitigation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableChallenge_DefaultJsChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultJsChallengeParameters != nil { - l = m.DefaultJsChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableChallenge_JsChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallengeParameters != nil { - l = m.JsChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableChallenge_DefaultCaptchaChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultCaptchaChallengeParameters != nil { - l = m.DefaultCaptchaChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableChallenge_CaptchaChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CaptchaChallengeParameters != nil { - l = m.CaptchaChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallengeParametersChoice != nil { - n += m.JsChallengeParametersChoice.Size() - } - if m.CaptchaChallengeParametersChoice != nil { - n += m.CaptchaChallengeParametersChoice.Size() - } - if m.TemporaryBlockingParametersChoice != nil { - n += m.TemporaryBlockingParametersChoice.Size() - } - if m.MaliciousUserMitigationChoice != nil { - n += m.MaliciousUserMitigationChoice.Size() - } - if m.ChallengeChoice != nil { - n += m.ChallengeChoice.Size() - } - if m.RuleList != nil { - l = m.RuleList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *PolicyBasedChallenge_DefaultJsChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultJsChallengeParameters != nil { - l = m.DefaultJsChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_JsChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallengeParameters != nil { - l = m.JsChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultCaptchaChallengeParameters != nil { - l = m.DefaultCaptchaChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_CaptchaChallengeParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CaptchaChallengeParameters != nil { - l = m.CaptchaChallengeParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultTemporaryBlockingParameters != nil { - l = m.DefaultTemporaryBlockingParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_TemporaryUserBlocking) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TemporaryUserBlocking != nil { - l = m.TemporaryUserBlocking.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_DefaultMitigationSettings) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultMitigationSettings != nil { - l = m.DefaultMitigationSettings.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_MaliciousUserMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MaliciousUserMitigation != nil { - l = m.MaliciousUserMitigation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_NoChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoChallenge != nil { - l = m.NoChallenge.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_AlwaysEnableJsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AlwaysEnableJsChallenge != nil { - l = m.AlwaysEnableJsChallenge.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AlwaysEnableCaptchaChallenge != nil { - l = m.AlwaysEnableCaptchaChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ChallengeRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ChallengeRuleList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Rules) > 0 { - for _, e := range m.Rules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *HttpHeaderMatcherList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Headers) > 0 { - for _, e := range m.Headers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *SimpleClientSrcRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ClientSourceChoice != nil { - n += m.ClientSourceChoice.Size() - } - if m.ExpirationTimestamp != nil { - l = m.ExpirationTimestamp.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ActionChoice != nil { - n += m.ActionChoice.Size() - } - if len(m.Actions) > 0 { - l = 0 - for _, e := range m.Actions { - l += sovTypes(uint64(e)) - } - n += 2 + sovTypes(uint64(l)) + l - } - return n -} - -func (m *SimpleClientSrcRule_IpPrefix) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.IpPrefix) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *SimpleClientSrcRule_AsNumber) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - n += 1 + sovTypes(uint64(m.AsNumber)) - return n -} -func (m *SimpleClientSrcRule_SkipProcessing) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SkipProcessing != nil { - l = m.SkipProcessing.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SimpleClientSrcRule_WafSkipProcessing) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.WafSkipProcessing != nil { - l = m.WafSkipProcessing.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SimpleClientSrcRule_BotSkipProcessing) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotSkipProcessing != nil { - l = m.BotSkipProcessing.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SimpleClientSrcRule_HttpHeader) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpHeader != nil { - l = m.HttpHeader.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SimpleClientSrcRule_UserIdentifier) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.UserIdentifier) - n += 2 + l + sovTypes(uint64(l)) - return n -} -func (m *DDoSClientSource) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AsnList != nil { - l = m.AsnList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.CountryList) > 0 { - l = 0 - for _, e := range m.CountryList { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - if m.TlsFingerprintMatcher != nil { - l = m.TlsFingerprintMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *APIProtectionRuleAction) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Action != nil { - n += m.Action.Size() - } - return n -} - -func (m *APIProtectionRuleAction_Allow) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Allow != nil { - l = m.Allow.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIProtectionRuleAction_Deny) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Deny != nil { - l = m.Deny.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIEndpointProtectionRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Action != nil { - l = m.Action.Size() - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.ApiEndpointPath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.ApiEndpointMethod != nil { - l = m.ApiEndpointMethod.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.RequestMatcher != nil { - l = m.RequestMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ClientMatcher != nil { - l = m.ClientMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainChoice != nil { - n += m.DomainChoice.Size() - } - return n -} - -func (m *APIEndpointProtectionRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIEndpointProtectionRule_SpecificDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SpecificDomain) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *APIGroupProtectionRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Action != nil { - l = m.Action.Size() - n += 1 + l + sovTypes(uint64(l)) - } - l = len(m.ApiGroup) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.RequestMatcher != nil { - l = m.RequestMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ClientMatcher != nil { - l = m.ClientMatcher.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainChoice != nil { - n += m.DomainChoice.Size() - } - l = len(m.BasePath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *APIGroupProtectionRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIGroupProtectionRule_SpecificDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SpecificDomain) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *APIProtectionRules) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ApiEndpointRules) > 0 { - for _, e := range m.ApiEndpointRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ApiGroupsRules) > 0 { - for _, e := range m.ApiGroupsRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *DDoSMitigationRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.MitigationAction != nil { - n += m.MitigationAction.Size() - } - if m.MitigationChoice != nil { - n += m.MitigationChoice.Size() - } - if m.ExpirationTimestamp != nil { - l = m.ExpirationTimestamp.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *DDoSMitigationRule_Block) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Block != nil { - l = m.Block.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *DDoSMitigationRule_DdosClientSource) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DdosClientSource != nil { - l = m.DdosClientSource.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *DDoSMitigationRule_IpPrefixList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IpPrefixList != nil { - l = m.IpPrefixList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CustomIpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.RateLimiterAllowedPrefixes) > 0 { - for _, e := range m.RateLimiterAllowedPrefixes { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *RateLimitConfigType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RateLimiter != nil { - l = m.RateLimiter.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.IpAllowedListChoice != nil { - n += m.IpAllowedListChoice.Size() - } - if m.PolicyChoice != nil { - n += m.PolicyChoice.Size() - } - return n -} - -func (m *RateLimitConfigType_NoIpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoIpAllowedList != nil { - l = m.NoIpAllowedList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RateLimitConfigType_IpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IpAllowedList != nil { - l = m.IpAllowedList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RateLimitConfigType_CustomIpAllowedList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CustomIpAllowedList != nil { - l = m.CustomIpAllowedList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RateLimitConfigType_NoPolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoPolicies != nil { - l = m.NoPolicies.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RateLimitConfigType_Policies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Policies != nil { - l = m.Policies.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ServicePolicyList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Policies) > 0 { - for _, e := range m.Policies { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *ApiDefinitionList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ApiDefinitions) > 0 { - for _, e := range m.ApiDefinitions { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *ApiDiscoverySetting) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.LearnFromRedirectTraffic != nil { - n += m.LearnFromRedirectTraffic.Size() - } - if m.SensitiveDataDetectionRules != nil { - l = m.SensitiveDataDetectionRules.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DiscoveredApiSettings != nil { - l = m.DiscoveredApiSettings.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableLearnFromRedirectTraffic != nil { - l = m.DisableLearnFromRedirectTraffic.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableLearnFromRedirectTraffic != nil { - l = m.EnableLearnFromRedirectTraffic.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableDDoSDetectionSetting) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AutoMitigationChoice != nil { - n += m.AutoMitigationChoice.Size() - } - return n -} - -func (m *EnableDDoSDetectionSetting_EnableAutoMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableAutoMitigation != nil { - l = m.EnableAutoMitigation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *EnableDDoSDetectionSetting_DisableAutoMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableAutoMitigation != nil { - l = m.DisableAutoMitigation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AutoMitigationAction) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Action != nil { - n += m.Action.Size() - } - return n -} - -func (m *AutoMitigationAction_Block) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Block != nil { - l = m.Block.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AutoMitigationAction_JsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallenge != nil { - l = m.JsChallenge.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SingleLoadBalancerAppSetting) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDiscoveryChoice != nil { - n += m.ApiDiscoveryChoice.Size() - } - if m.DdosDetectionChoice != nil { - n += m.DdosDetectionChoice.Size() - } - if m.MaliciousUserDetectionChoice != nil { - n += m.MaliciousUserDetectionChoice.Size() - } - return n -} - -func (m *SingleLoadBalancerAppSetting_EnableDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableDiscovery != nil { - l = m.EnableDiscovery.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SingleLoadBalancerAppSetting_DisableDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableDiscovery != nil { - l = m.DisableDiscovery.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SingleLoadBalancerAppSetting_EnableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableDdosDetection != nil { - l = m.EnableDdosDetection.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SingleLoadBalancerAppSetting_DisableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableDdosDetection != nil { - l = m.DisableDdosDetection.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableMaliciousUserDetection != nil { - l = m.EnableMaliciousUserDetection.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMaliciousUserDetection != nil { - l = m.DisableMaliciousUserDetection.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APISpecificationSettings) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinition != nil { - l = m.ApiDefinition.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ValidationTargetChoice != nil { - n += m.ValidationTargetChoice.Size() - } - return n -} - -func (m *APISpecificationSettings_ValidationDisabled) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationDisabled != nil { - l = m.ValidationDisabled.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APISpecificationSettings_ValidationAllSpecEndpoints) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationAllSpecEndpoints != nil { - l = m.ValidationAllSpecEndpoints.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APISpecificationSettings_ValidationCustomList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationCustomList != nil { - l = m.ValidationCustomList.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationAllSpecEndpointsSettings) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationMode != nil { - l = m.ValidationMode.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.FallThroughMode != nil { - l = m.FallThroughMode.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.OversizedBodyChoice != nil { - n += m.OversizedBodyChoice.Size() - } - if m.Settings != nil { - l = m.Settings.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodySkipValidation != nil { - l = m.OversizedBodySkipValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodyFailValidation != nil { - l = m.OversizedBodyFailValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationCommonSettings) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodyChoice != nil { - n += m.OversizedBodyChoice.Size() - } - if m.PropertyValidationSettingsChoice != nil { - n += m.PropertyValidationSettingsChoice.Size() - } - return n -} - -func (m *OpenApiValidationCommonSettings_OversizedBodySkipValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodySkipValidation != nil { - l = m.OversizedBodySkipValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationCommonSettings_OversizedBodyFailValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodyFailValidation != nil { - l = m.OversizedBodyFailValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PropertyValidationSettingsDefault != nil { - l = m.PropertyValidationSettingsDefault.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PropertyValidationSettingsCustom != nil { - l = m.PropertyValidationSettingsCustom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ValidationPropertySetting) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.QueryParameters != nil { - l = m.QueryParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Headers != nil { - l = m.Headers.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ValidationSettingForQueryParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdditionalParametersChoice != nil { - n += m.AdditionalParametersChoice.Size() - } - return n -} - -func (m *ValidationSettingForQueryParameters_AllowAdditionalParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AllowAdditionalParameters != nil { - l = m.AllowAdditionalParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ValidationSettingForQueryParameters_DisallowAdditionalParameters) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisallowAdditionalParameters != nil { - l = m.DisallowAdditionalParameters.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ValidationSettingForHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdditionalHeadersChoice != nil { - n += m.AdditionalHeadersChoice.Size() - } - return n -} - -func (m *ValidationSettingForHeaders_AllowAdditionalHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AllowAdditionalHeaders != nil { - l = m.AllowAdditionalHeaders.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ValidationSettingForHeaders_DisallowAdditionalHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisallowAdditionalHeaders != nil { - l = m.DisallowAdditionalHeaders.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationMode) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationModeChoice != nil { - n += m.ValidationModeChoice.Size() - } - if m.ResponseValidationModeChoice != nil { - n += m.ResponseValidationModeChoice.Size() - } - return n -} - -func (m *OpenApiValidationMode_ValidationModeActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationModeActive != nil { - l = m.ValidationModeActive.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationMode_SkipValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SkipValidation != nil { - l = m.SkipValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationMode_SkipResponseValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SkipResponseValidation != nil { - l = m.SkipResponseValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationMode_ResponseValidationModeActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ResponseValidationModeActive != nil { - l = m.ResponseValidationModeActive.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiFallThroughMode) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.FallThroughModeChoice != nil { - n += m.FallThroughModeChoice.Size() - } - return n -} - -func (m *OpenApiFallThroughMode_FallThroughModeAllow) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.FallThroughModeAllow != nil { - l = m.FallThroughModeAllow.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiFallThroughMode_FallThroughModeCustom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.FallThroughModeCustom != nil { - l = m.FallThroughModeCustom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CustomFallThroughMode) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.OpenApiValidationRules) > 0 { - for _, e := range m.OpenApiValidationRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *FallThroughRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ActionChoice != nil { - n += m.ActionChoice.Size() - } - if m.ConditionTypeChoice != nil { - n += m.ConditionTypeChoice.Size() - } - return n -} - -func (m *FallThroughRule_ActionSkip) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActionSkip != nil { - l = m.ActionSkip.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *FallThroughRule_ActionReport) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActionReport != nil { - l = m.ActionReport.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *FallThroughRule_ActionBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActionBlock != nil { - l = m.ActionBlock.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *FallThroughRule_BasePath) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.BasePath) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *FallThroughRule_ApiGroup) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ApiGroup) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *FallThroughRule_ApiEndpoint) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiEndpoint != nil { - l = m.ApiEndpoint.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationModeActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationEnforcementType != nil { - n += m.ValidationEnforcementType.Size() - } - if len(m.RequestValidationProperties) > 0 { - l = 0 - for _, e := range m.RequestValidationProperties { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - return n -} - -func (m *OpenApiValidationModeActive_EnforcementReport) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnforcementReport != nil { - l = m.EnforcementReport.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationModeActive_EnforcementBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnforcementBlock != nil { - l = m.EnforcementBlock.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationModeActiveResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidationEnforcementType != nil { - n += m.ValidationEnforcementType.Size() - } - if len(m.ResponseValidationProperties) > 0 { - l = 0 - for _, e := range m.ResponseValidationProperties { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - return n -} - -func (m *OpenApiValidationModeActiveResponse_EnforcementReport) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnforcementReport != nil { - l = m.EnforcementReport.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationModeActiveResponse_EnforcementBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnforcementBlock != nil { - l = m.EnforcementBlock.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ValidateApiBySpecRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.OpenApiValidationRules) > 0 { - for _, e := range m.OpenApiValidationRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.FallThroughMode != nil { - l = m.FallThroughMode.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.OversizedBodyChoice != nil { - n += m.OversizedBodyChoice.Size() - } - if m.Settings != nil { - l = m.Settings.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ValidateApiBySpecRule_OversizedBodySkipValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodySkipValidation != nil { - l = m.OversizedBodySkipValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ValidateApiBySpecRule_OversizedBodyFailValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OversizedBodyFailValidation != nil { - l = m.OversizedBodyFailValidation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.ValidationMode != nil { - l = m.ValidationMode.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainChoice != nil { - n += m.DomainChoice.Size() - } - if m.ConditionTypeChoice != nil { - n += m.ConditionTypeChoice.Size() - } - return n -} - -func (m *OpenApiValidationRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OpenApiValidationRule_SpecificDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SpecificDomain) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *OpenApiValidationRule_BasePath) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.BasePath) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *OpenApiValidationRule_ApiGroup) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ApiGroup) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *OpenApiValidationRule_ApiEndpoint) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiEndpoint != nil { - l = m.ApiEndpoint.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ApiEndpointDetails) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Path) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Methods) > 0 { - l = 0 - for _, e := range m.Methods { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - return n -} - -func (m *OriginServerSubsetRuleListType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.OriginServerSubsetRules) > 0 { - for _, e := range m.OriginServerSubsetRules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *ClientSideDefenseType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Policy != nil { - l = m.Policy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ClientSideDefensePolicyType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JavaScriptChoice != nil { - n += m.JavaScriptChoice.Size() - } - return n -} - -func (m *ClientSideDefensePolicyType_DisableJsInsert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableJsInsert != nil { - l = m.DisableJsInsert.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ClientSideDefensePolicyType_JsInsertAllPages) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsInsertAllPages != nil { - l = m.JsInsertAllPages.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ClientSideDefensePolicyType_JsInsertAllPagesExcept) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsInsertAllPagesExcept != nil { - l = m.JsInsertAllPagesExcept.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ClientSideDefensePolicyType_JsInsertionRules) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsInsertionRules != nil { - l = m.JsInsertionRules.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CSDJavaScriptInsertAllWithExceptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ExcludeList) > 0 { - for _, e := range m.ExcludeList { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *CSDJavaScriptInsertType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Rules) > 0 { - for _, e := range m.Rules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ExcludeList) > 0 { - for _, e := range m.ExcludeList { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *CSDJavaScriptInsertionRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainMatcherChoice != nil { - n += m.DomainMatcherChoice.Size() - } - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *CSDJavaScriptInsertionRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CSDJavaScriptInsertionRule_Domain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Domain != nil { - l = m.Domain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BotDefenseAdvancedPolicyType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ProtectedAppEndpoints) > 0 { - for _, e := range m.ProtectedAppEndpoints { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - l = len(m.JsDownloadPath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.MobileSdkChoice != nil { - n += m.MobileSdkChoice.Size() - } - return n -} - -func (m *BotDefenseAdvancedPolicyType_DisableMobileSdk) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMobileSdk != nil { - l = m.DisableMobileSdk.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BotDefenseAdvancedPolicyType_MobileSdkConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MobileSdkConfig != nil { - l = m.MobileSdkConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BotAdvancedMobileSDKConfigType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MobileIdentifier != nil { - l = m.MobileIdentifier.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ProtectedAppEndpointType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainMatcherChoice != nil { - n += m.DomainMatcherChoice.Size() - } - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Query) > 0 { - for _, e := range m.Query { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.RequestBody) > 0 { - for _, e := range m.RequestBody { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.HttpMethods) > 0 { - l = 0 - for _, e := range m.HttpMethods { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - if m.AppTrafficTypeChoice != nil { - n += m.AppTrafficTypeChoice.Size() - } - if m.FlowLabelChoice != nil { - n += m.FlowLabelChoice.Size() - } - return n -} - -func (m *ProtectedAppEndpointType_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProtectedAppEndpointType_Domain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Domain != nil { - l = m.Domain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProtectedAppEndpointType_WebClient) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.WebClient != nil { - l = m.WebClient.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProtectedAppEndpointType_MobileClient) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MobileClient != nil { - l = m.MobileClient.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProtectedAppEndpointType_WebMobileClient) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.WebMobileClient != nil { - l = m.WebMobileClient.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProtectedAppEndpointType_UndefinedFlowLabel) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UndefinedFlowLabel != nil { - l = m.UndefinedFlowLabel.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ProtectedAppEndpointType_FlowLabel) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.FlowLabel != nil { - l = m.FlowLabel.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *RequestBody) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.ValueType != nil { - n += m.ValueType.Size() - } - return n -} - -func (m *RequestBody_ExactValue) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ExactValue) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *RequestBody_RegexValue) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.RegexValue) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *Query) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.ValueType != nil { - n += m.ValueType.Size() - } - return n -} - -func (m *Query_ExactValue) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ExactValue) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *Query_RegexValue) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.RegexValue) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *Query_CheckPresence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CheckPresence != nil { - l = m.CheckPresence.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefenseType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RegionalEndpoint != 0 { - n += 1 + sovTypes(uint64(m.RegionalEndpoint)) - } - if m.Policy != nil { - l = m.Policy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Timeout != 0 { - n += 1 + sovTypes(uint64(m.Timeout)) - } - if m.CorsSupportChoice != nil { - n += m.CorsSupportChoice.Size() - } - return n -} - -func (m *ShapeBotDefenseType_EnableCorsSupport) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableCorsSupport != nil { - l = m.EnableCorsSupport.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefenseType_DisableCorsSupport) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableCorsSupport != nil { - l = m.DisableCorsSupport.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *BotDefenseAdvancedType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Web != nil { - l = m.Web.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Mobile != nil { - l = m.Mobile.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Policy != nil { - l = m.Policy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ShapeBotDefensePolicyType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ProtectedAppEndpoints) > 0 { - for _, e := range m.ProtectedAppEndpoints { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - l = len(m.JsDownloadPath) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.JavaScriptChoice != nil { - n += m.JavaScriptChoice.Size() - } - if m.MobileSdkChoice != nil { - n += m.MobileSdkChoice.Size() - } - if m.JavascriptMode != 0 { - n += 1 + sovTypes(uint64(m.JavascriptMode)) - } - return n -} - -func (m *ShapeBotDefensePolicyType_DisableJsInsert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableJsInsert != nil { - l = m.DisableJsInsert.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefensePolicyType_JsInsertAllPages) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsInsertAllPages != nil { - l = m.JsInsertAllPages.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsInsertAllPagesExcept != nil { - l = m.JsInsertAllPagesExcept.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefensePolicyType_JsInsertionRules) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsInsertionRules != nil { - l = m.JsInsertionRules.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefensePolicyType_DisableMobileSdk) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMobileSdk != nil { - l = m.DisableMobileSdk.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeBotDefensePolicyType_MobileSdkConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MobileSdkConfig != nil { - l = m.MobileSdkConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *MobileTrafficIdentifierType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Headers) > 0 { - for _, e := range m.Headers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *MobileSDKConfigType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ReloadHeaderName) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.MobileIdentifier != nil { - l = m.MobileIdentifier.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *AppEndpointType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.HttpMethods) > 0 { - l = 0 - for _, e := range m.HttpMethods { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - if m.Protocol != 0 { - n += 1 + sovTypes(uint64(m.Protocol)) - } - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainMatcherChoice != nil { - n += m.DomainMatcherChoice.Size() - } - if m.AppTrafficTypeChoice != nil { - n += m.AppTrafficTypeChoice.Size() - } - if m.Mitigation != nil { - l = m.Mitigation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.FlowLabelChoice != nil { - n += m.FlowLabelChoice.Size() - } - if m.GoodbotChoice != nil { - n += m.GoodbotChoice.Size() - } - return n -} - -func (m *AppEndpointType_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_Domain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Domain != nil { - l = m.Domain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_Web) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Web != nil { - l = m.Web.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_Mobile) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Mobile != nil { - l = m.Mobile.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_WebMobile) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.WebMobile != nil { - l = m.WebMobile.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_UndefinedFlowLabel) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UndefinedFlowLabel != nil { - l = m.UndefinedFlowLabel.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_FlowLabel) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.FlowLabel != nil { - l = m.FlowLabel.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_MitigateGoodBots) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MitigateGoodBots != nil { - l = m.MitigateGoodBots.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *AppEndpointType_AllowGoodBots) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AllowGoodBots != nil { - l = m.AllowGoodBots.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *WebMobileTrafficType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Header != nil { - l = m.Header.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Headers) > 0 { - for _, e := range m.Headers { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.MobileIdentifier != 0 { - n += 1 + sovTypes(uint64(m.MobileIdentifier)) - } - return n -} - -func (m *ShapeJavaScriptInsertType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Rules) > 0 { - for _, e := range m.Rules { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.ExcludeList) > 0 { - for _, e := range m.ExcludeList { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JavascriptLocation != 0 { - n += 1 + sovTypes(uint64(m.JavascriptLocation)) - } - if len(m.ExcludeList) > 0 { - for _, e := range m.ExcludeList { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *ShapeJavaScriptInsertAllType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JavascriptLocation != 0 { - n += 1 + sovTypes(uint64(m.JavascriptLocation)) - } - return n -} - -func (m *ShapeJavaScriptInsertionRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainMatcherChoice != nil { - n += m.DomainMatcherChoice.Size() - } - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.JavascriptLocation != 0 { - n += 1 + sovTypes(uint64(m.JavascriptLocation)) - } - return n -} - -func (m *ShapeJavaScriptInsertionRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeJavaScriptInsertionRule_Domain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Domain != nil { - l = m.Domain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeJavaScriptExclusionRule) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Metadata != nil { - l = m.Metadata.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.DomainMatcherChoice != nil { - n += m.DomainMatcherChoice.Size() - } - if m.Path != nil { - l = m.Path.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *ShapeJavaScriptExclusionRule_AnyDomain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AnyDomain != nil { - l = m.AnyDomain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ShapeJavaScriptExclusionRule_Domain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Domain != nil { - l = m.Domain.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *IPThreatCategoryListType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.IpThreatCategories) > 0 { - l = 0 - for _, e := range m.IpThreatCategories { - l += sovTypes(uint64(e)) - } - n += 1 + sovTypes(uint64(l)) + l - } - return n -} - -func (m *GlobalSpecType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AdvertiseChoice != nil { - n += m.AdvertiseChoice.Size() - } - if len(m.DefaultRoutePools) > 0 { - for _, e := range m.DefaultRoutePools { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.Routes) > 0 { - for _, e := range m.Routes { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.CorsPolicy != nil { - l = m.CorsPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.WafChoice != nil { - n += m.WafChoice.Size() - } - if m.AddLocation { - n += 3 - } - if m.ChallengeType != nil { - n += m.ChallengeType.Size() - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.UserIdChoice != nil { - n += m.UserIdChoice.Size() - } - if m.RateLimitChoice != nil { - n += m.RateLimitChoice.Size() - } - if m.HostRewriteParams != nil { - n += m.HostRewriteParams.Size() - } - if m.MaliciousUserMitigation != nil { - l = m.MaliciousUserMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.WafExclusionRules) > 0 { - for _, e := range m.WafExclusionRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.BlockedClients) > 0 { - for _, e := range m.BlockedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.TrustedClients) > 0 { - for _, e := range m.TrustedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.DdosMitigationRules) > 0 { - for _, e := range m.DdosMitigationRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.ServicePolicyChoice != nil { - n += m.ServicePolicyChoice.Size() - } - if m.HashPolicyChoice != nil { - n += m.HashPolicyChoice.Size() - } - if m.MlConfigChoice != nil { - n += m.MlConfigChoice.Size() - } - if m.BotDefenseChoice != nil { - n += m.BotDefenseChoice.Size() - } - if m.ApiDefinitionChoice != nil { - n += m.ApiDefinitionChoice.Size() - } - if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { - for _, e := range m.DownstreamTlsCertificateExpirationTimestamps { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.DataGuardRules) > 0 { - for _, e := range m.DataGuardRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.IpReputationChoice != nil { - n += m.IpReputationChoice.Size() - } - if m.ApiProtectionRules != nil { - l = m.ApiProtectionRules.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.TrustClientIpHeadersChoice != nil { - n += m.TrustClientIpHeadersChoice.Size() - } - if m.DdosDetectionChoice != nil { - n += m.DdosDetectionChoice.Size() - } - if m.MaliciousUserDetectionChoice != nil { - n += m.MaliciousUserDetectionChoice.Size() - } - if m.ApiDiscoveryChoice != nil { - n += m.ApiDiscoveryChoice.Size() - } - if m.ClientSideDefenseChoice != nil { - n += m.ClientSideDefenseChoice.Size() - } - if m.OriginPoolChoice != nil { - n += m.OriginPoolChoice.Size() - } - if m.CsrfPolicy != nil { - l = m.CsrfPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.GraphqlRules) > 0 { - for _, e := range m.GraphqlRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.ProtectedCookies) > 0 { - for _, e := range m.ProtectedCookies { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.SlowDdosMitigationChoice != nil { - n += m.SlowDdosMitigationChoice.Size() - } - if m.JwtValidation != nil { - l = m.JwtValidation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.OriginServerSubsetRuleList != nil { - l = m.OriginServerSubsetRuleList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ThreatIntelligenceChoice != nil { - n += m.ThreatIntelligenceChoice.Size() - } - if m.L7DdosAutoMitigationAction != nil { - n += m.L7DdosAutoMitigationAction.Size() - } - if m.CertState != 0 { - n += 2 + sovTypes(uint64(m.CertState)) - } - if m.ViewInternal != nil { - l = m.ViewInternal.Size() - n += 2 + l + sovTypes(uint64(l)) - } - l = len(m.HostName) - if l > 0 { - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.DnsInfo) > 0 { - for _, e := range m.DnsInfo { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.State != 0 { - n += 2 + sovTypes(uint64(m.State)) - } - if m.AutoCertState != 0 { - n += 2 + sovTypes(uint64(m.AutoCertState)) - } - if m.AutoCertInfo != nil { - l = m.AutoCertInfo.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.InternetVipInfo) > 0 { - for _, e := range m.InternetVipInfo { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *GlobalSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_AdvertiseOnPublic) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublic != nil { - l = m.AdvertiseOnPublic.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_AdvertiseCustom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseCustom != nil { - l = m.AdvertiseCustom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableWaf) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableWaf != nil { - l = m.DisableWaf.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DoNotAdvertise) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DoNotAdvertise != nil { - l = m.DoNotAdvertise.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublicDefaultVip != nil { - l = m.AdvertiseOnPublicDefaultVip.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_JsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallenge != nil { - l = m.JsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_UserIdentification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdentification != nil { - l = m.UserIdentification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableRateLimit != nil { - l = m.DisableRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_RateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RateLimit != nil { - l = m.RateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_CaptchaChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CaptchaChallenge != nil { - l = m.CaptchaChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_NoChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoChallenge != nil { - l = m.NoChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_AutoHostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AutoHostRewrite != nil { - l = m.AutoHostRewrite.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_HostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.HostRewrite) - n += 2 + l + sovTypes(uint64(l)) - return n -} -func (m *GlobalSpecType_DisableHostRewrite) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableHostRewrite != nil { - l = m.DisableHostRewrite.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ServicePoliciesFromNamespace) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ServicePoliciesFromNamespace != nil { - l = m.ServicePoliciesFromNamespace.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_NoServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoServicePolicies != nil { - l = m.NoServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ActiveServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActiveServicePolicies != nil { - l = m.ActiveServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_RoundRobin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RoundRobin != nil { - l = m.RoundRobin.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_LeastActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.LeastActive != nil { - l = m.LeastActive.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_Random) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Random != nil { - l = m.Random.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_SourceIpStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SourceIpStickiness != nil { - l = m.SourceIpStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_CookieStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CookieStickiness != nil { - l = m.CookieStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_RingHash) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RingHash != nil { - l = m.RingHash.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_PolicyBasedChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PolicyBasedChallenge != nil { - l = m.PolicyBasedChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_AppFirewall) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AppFirewall != nil { - l = m.AppFirewall.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_SingleLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SingleLbApp != nil { - l = m.SingleLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_MultiLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MultiLbApp != nil { - l = m.MultiLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableBotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableBotDefense != nil { - l = m.DisableBotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_BotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefense != nil { - l = m.BotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_UserIdClientIp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdClientIp != nil { - l = m.UserIdClientIp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ApiDefinitions) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinitions != nil { - l = m.ApiDefinitions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableIpReputation != nil { - l = m.DisableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableIpReputation != nil { - l = m.EnableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ApiSpecification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiSpecification != nil { - l = m.ApiSpecification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ApiRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiRateLimit != nil { - l = m.ApiRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDefinition != nil { - l = m.DisableApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinition != nil { - l = m.ApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableTrustClientIpHeaders != nil { - l = m.DisableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableTrustClientIpHeaders != nil { - l = m.EnableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableDdosDetection != nil { - l = m.EnableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableDdosDetection != nil { - l = m.DisableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableMaliciousUserDetection != nil { - l = m.EnableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMaliciousUserDetection != nil { - l = m.DisableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableApiDiscovery != nil { - l = m.EnableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDiscovery != nil { - l = m.DisableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableClientSideDefense != nil { - l = m.DisableClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_ClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ClientSideDefense != nil { - l = m.ClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DefaultPool) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPool != nil { - l = m.DefaultPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DefaultPoolList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPoolList != nil { - l = m.DefaultPoolList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_SlowDdosMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SlowDdosMitigation != nil { - l = m.SlowDdosMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableChallenge != nil { - l = m.EnableChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_SystemDefaultTimeouts) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SystemDefaultTimeouts != nil { - l = m.SystemDefaultTimeouts.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_DisableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableThreatIntelligence != nil { - l = m.DisableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_EnableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableThreatIntelligence != nil { - l = m.EnableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_L7DdosActionDefault) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionDefault != nil { - l = m.L7DdosActionDefault.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_L7DdosActionBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionBlock != nil { - l = m.L7DdosActionBlock.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_L7DdosActionJsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionJsChallenge != nil { - l = m.L7DdosActionJsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_L7DdosActionNone) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionNone != nil { - l = m.L7DdosActionNone.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GlobalSpecType_BotDefenseAdvanced) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefenseAdvanced != nil { - l = m.BotDefenseAdvanced.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *JWTValidation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Target != nil { - l = m.Target.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.TokenLocation != nil { - l = m.TokenLocation.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Action != nil { - l = m.Action.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.JwksConfiguration != nil { - n += m.JwksConfiguration.Size() - } - if m.ReservedClaims != nil { - l = m.ReservedClaims.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.MandatoryClaims != nil { - l = m.MandatoryClaims.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *JWTValidation_AuthServerUri) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AuthServerUri) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *JWTValidation_Jwks) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Jwks) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *JWTValidation_JwksConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JwksConfig != nil { - l = m.JwksConfig.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *MandatoryClaims) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ClaimNames) > 0 { - for _, s := range m.ClaimNames { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *JWKS) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Cleartext) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *Target) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Target != nil { - n += m.Target.Size() - } - return n -} - -func (m *Target_AllEndpoint) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AllEndpoint != nil { - l = m.AllEndpoint.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *Target_ApiGroups) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiGroups != nil { - l = m.ApiGroups.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *Target_BasePaths) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BasePaths != nil { - l = m.BasePaths.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *TokenLocation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TokenLocation != nil { - n += m.TokenLocation.Size() - } - return n -} - -func (m *TokenLocation_BearerToken) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BearerToken != nil { - l = m.BearerToken.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *TokenLocation_Cookie) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Cookie) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *TokenLocation_Header) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Header) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *TokenLocation_QueryParam) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.QueryParam) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ReservedClaims) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IssuerValidation != nil { - n += m.IssuerValidation.Size() - } - if m.AudienceValidation != nil { - n += m.AudienceValidation.Size() - } - if m.ValidatePeriod != nil { - n += m.ValidatePeriod.Size() - } - return n -} - -func (m *ReservedClaims_IssuerDisable) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IssuerDisable != nil { - l = m.IssuerDisable.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReservedClaims_Issuer) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Issuer) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *ReservedClaims_AudienceDisable) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AudienceDisable != nil { - l = m.AudienceDisable.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReservedClaims_Audience) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Audience != nil { - l = m.Audience.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReservedClaims_ValidatePeriodDisable) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidatePeriodDisable != nil { - l = m.ValidatePeriodDisable.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReservedClaims_ValidatePeriodEnable) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ValidatePeriodEnable != nil { - l = m.ValidatePeriodEnable.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *APIGroups) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ApiGroups) > 0 { - for _, s := range m.ApiGroups { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *BasePathsType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.BasePaths) > 0 { - for _, s := range m.BasePaths { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *Audiences) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Audiences) > 0 { - for _, s := range m.Audiences { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *CreateSpecType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AdvertiseChoice != nil { - n += m.AdvertiseChoice.Size() - } - if len(m.DefaultRoutePools) > 0 { - for _, e := range m.DefaultRoutePools { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.Routes) > 0 { - for _, e := range m.Routes { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.CorsPolicy != nil { - l = m.CorsPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.WafChoice != nil { - n += m.WafChoice.Size() - } - if m.AddLocation { - n += 3 - } - if m.ChallengeType != nil { - n += m.ChallengeType.Size() - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.UserIdChoice != nil { - n += m.UserIdChoice.Size() - } - if m.RateLimitChoice != nil { - n += m.RateLimitChoice.Size() - } - if m.MaliciousUserMitigation != nil { - l = m.MaliciousUserMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.WafExclusionRules) > 0 { - for _, e := range m.WafExclusionRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.BlockedClients) > 0 { - for _, e := range m.BlockedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.TrustedClients) > 0 { - for _, e := range m.TrustedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.DdosMitigationRules) > 0 { - for _, e := range m.DdosMitigationRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.ServicePolicyChoice != nil { - n += m.ServicePolicyChoice.Size() - } - if m.HashPolicyChoice != nil { - n += m.HashPolicyChoice.Size() - } - if m.MlConfigChoice != nil { - n += m.MlConfigChoice.Size() - } - if m.BotDefenseChoice != nil { - n += m.BotDefenseChoice.Size() - } - if m.ApiDefinitionChoice != nil { - n += m.ApiDefinitionChoice.Size() - } - if len(m.DataGuardRules) > 0 { - for _, e := range m.DataGuardRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.IpReputationChoice != nil { - n += m.IpReputationChoice.Size() - } - if m.ApiProtectionRules != nil { - l = m.ApiProtectionRules.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.TrustClientIpHeadersChoice != nil { - n += m.TrustClientIpHeadersChoice.Size() - } - if m.DdosDetectionChoice != nil { - n += m.DdosDetectionChoice.Size() - } - if m.MaliciousUserDetectionChoice != nil { - n += m.MaliciousUserDetectionChoice.Size() - } - if m.ApiDiscoveryChoice != nil { - n += m.ApiDiscoveryChoice.Size() - } - if m.ClientSideDefenseChoice != nil { - n += m.ClientSideDefenseChoice.Size() - } - if m.OriginPoolChoice != nil { - n += m.OriginPoolChoice.Size() - } - if m.CsrfPolicy != nil { - l = m.CsrfPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.GraphqlRules) > 0 { - for _, e := range m.GraphqlRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.ProtectedCookies) > 0 { - for _, e := range m.ProtectedCookies { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.SlowDdosMitigationChoice != nil { - n += m.SlowDdosMitigationChoice.Size() - } - if m.JwtValidation != nil { - l = m.JwtValidation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.OriginServerSubsetRuleList != nil { - l = m.OriginServerSubsetRuleList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ThreatIntelligenceChoice != nil { - n += m.ThreatIntelligenceChoice.Size() - } - if m.L7DdosAutoMitigationAction != nil { - n += m.L7DdosAutoMitigationAction.Size() - } - return n -} - -func (m *CreateSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_AdvertiseOnPublic) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublic != nil { - l = m.AdvertiseOnPublic.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_AdvertiseCustom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseCustom != nil { - l = m.AdvertiseCustom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableWaf) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableWaf != nil { - l = m.DisableWaf.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DoNotAdvertise) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DoNotAdvertise != nil { - l = m.DoNotAdvertise.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublicDefaultVip != nil { - l = m.AdvertiseOnPublicDefaultVip.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_JsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallenge != nil { - l = m.JsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_UserIdentification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdentification != nil { - l = m.UserIdentification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableRateLimit != nil { - l = m.DisableRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_RateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RateLimit != nil { - l = m.RateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_CaptchaChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CaptchaChallenge != nil { - l = m.CaptchaChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_NoChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoChallenge != nil { - l = m.NoChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ServicePoliciesFromNamespace) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ServicePoliciesFromNamespace != nil { - l = m.ServicePoliciesFromNamespace.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_NoServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoServicePolicies != nil { - l = m.NoServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ActiveServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActiveServicePolicies != nil { - l = m.ActiveServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_RoundRobin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RoundRobin != nil { - l = m.RoundRobin.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_LeastActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.LeastActive != nil { - l = m.LeastActive.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_Random) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Random != nil { - l = m.Random.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_SourceIpStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SourceIpStickiness != nil { - l = m.SourceIpStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_CookieStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CookieStickiness != nil { - l = m.CookieStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_RingHash) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RingHash != nil { - l = m.RingHash.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_PolicyBasedChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PolicyBasedChallenge != nil { - l = m.PolicyBasedChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_AppFirewall) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AppFirewall != nil { - l = m.AppFirewall.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_SingleLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SingleLbApp != nil { - l = m.SingleLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_MultiLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MultiLbApp != nil { - l = m.MultiLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableBotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableBotDefense != nil { - l = m.DisableBotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_BotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefense != nil { - l = m.BotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_UserIdClientIp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdClientIp != nil { - l = m.UserIdClientIp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ApiDefinitions) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinitions != nil { - l = m.ApiDefinitions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableIpReputation != nil { - l = m.DisableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableIpReputation != nil { - l = m.EnableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ApiSpecification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiSpecification != nil { - l = m.ApiSpecification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ApiRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiRateLimit != nil { - l = m.ApiRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDefinition != nil { - l = m.DisableApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinition != nil { - l = m.ApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableTrustClientIpHeaders != nil { - l = m.DisableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableTrustClientIpHeaders != nil { - l = m.EnableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableDdosDetection != nil { - l = m.EnableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableDdosDetection != nil { - l = m.DisableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableMaliciousUserDetection != nil { - l = m.EnableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMaliciousUserDetection != nil { - l = m.DisableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableApiDiscovery != nil { - l = m.EnableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDiscovery != nil { - l = m.DisableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableClientSideDefense != nil { - l = m.DisableClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_ClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ClientSideDefense != nil { - l = m.ClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DefaultPool) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPool != nil { - l = m.DefaultPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DefaultPoolList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPoolList != nil { - l = m.DefaultPoolList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_SlowDdosMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SlowDdosMitigation != nil { - l = m.SlowDdosMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableChallenge != nil { - l = m.EnableChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_SystemDefaultTimeouts) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SystemDefaultTimeouts != nil { - l = m.SystemDefaultTimeouts.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_DisableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableThreatIntelligence != nil { - l = m.DisableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_EnableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableThreatIntelligence != nil { - l = m.EnableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_L7DdosActionDefault) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionDefault != nil { - l = m.L7DdosActionDefault.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_L7DdosActionBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionBlock != nil { - l = m.L7DdosActionBlock.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_L7DdosActionJsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionJsChallenge != nil { - l = m.L7DdosActionJsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_L7DdosActionNone) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionNone != nil { - l = m.L7DdosActionNone.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *CreateSpecType_BotDefenseAdvanced) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefenseAdvanced != nil { - l = m.BotDefenseAdvanced.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AdvertiseChoice != nil { - n += m.AdvertiseChoice.Size() - } - if len(m.DefaultRoutePools) > 0 { - for _, e := range m.DefaultRoutePools { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.Routes) > 0 { - for _, e := range m.Routes { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.CorsPolicy != nil { - l = m.CorsPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.WafChoice != nil { - n += m.WafChoice.Size() - } - if m.AddLocation { - n += 3 - } - if m.ChallengeType != nil { - n += m.ChallengeType.Size() - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.UserIdChoice != nil { - n += m.UserIdChoice.Size() - } - if m.RateLimitChoice != nil { - n += m.RateLimitChoice.Size() - } - if m.MaliciousUserMitigation != nil { - l = m.MaliciousUserMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.WafExclusionRules) > 0 { - for _, e := range m.WafExclusionRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.BlockedClients) > 0 { - for _, e := range m.BlockedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.TrustedClients) > 0 { - for _, e := range m.TrustedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.DdosMitigationRules) > 0 { - for _, e := range m.DdosMitigationRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.ServicePolicyChoice != nil { - n += m.ServicePolicyChoice.Size() - } - if m.HashPolicyChoice != nil { - n += m.HashPolicyChoice.Size() - } - if m.MlConfigChoice != nil { - n += m.MlConfigChoice.Size() - } - if m.BotDefenseChoice != nil { - n += m.BotDefenseChoice.Size() - } - if m.ApiDefinitionChoice != nil { - n += m.ApiDefinitionChoice.Size() - } - if len(m.DataGuardRules) > 0 { - for _, e := range m.DataGuardRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.IpReputationChoice != nil { - n += m.IpReputationChoice.Size() - } - if m.ApiProtectionRules != nil { - l = m.ApiProtectionRules.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.TrustClientIpHeadersChoice != nil { - n += m.TrustClientIpHeadersChoice.Size() - } - if m.DdosDetectionChoice != nil { - n += m.DdosDetectionChoice.Size() - } - if m.MaliciousUserDetectionChoice != nil { - n += m.MaliciousUserDetectionChoice.Size() - } - if m.ApiDiscoveryChoice != nil { - n += m.ApiDiscoveryChoice.Size() - } - if m.ClientSideDefenseChoice != nil { - n += m.ClientSideDefenseChoice.Size() - } - if m.OriginPoolChoice != nil { - n += m.OriginPoolChoice.Size() - } - if m.CsrfPolicy != nil { - l = m.CsrfPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.GraphqlRules) > 0 { - for _, e := range m.GraphqlRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.ProtectedCookies) > 0 { - for _, e := range m.ProtectedCookies { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.SlowDdosMitigationChoice != nil { - n += m.SlowDdosMitigationChoice.Size() - } - if m.JwtValidation != nil { - l = m.JwtValidation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.OriginServerSubsetRuleList != nil { - l = m.OriginServerSubsetRuleList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ThreatIntelligenceChoice != nil { - n += m.ThreatIntelligenceChoice.Size() - } - if m.L7DdosAutoMitigationAction != nil { - n += m.L7DdosAutoMitigationAction.Size() - } - return n -} - -func (m *ReplaceSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_AdvertiseOnPublic) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublic != nil { - l = m.AdvertiseOnPublic.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_AdvertiseCustom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseCustom != nil { - l = m.AdvertiseCustom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableWaf) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableWaf != nil { - l = m.DisableWaf.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DoNotAdvertise) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DoNotAdvertise != nil { - l = m.DoNotAdvertise.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublicDefaultVip != nil { - l = m.AdvertiseOnPublicDefaultVip.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_JsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallenge != nil { - l = m.JsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_UserIdentification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdentification != nil { - l = m.UserIdentification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableRateLimit != nil { - l = m.DisableRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_RateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RateLimit != nil { - l = m.RateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_CaptchaChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CaptchaChallenge != nil { - l = m.CaptchaChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_NoChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoChallenge != nil { - l = m.NoChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ServicePoliciesFromNamespace) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ServicePoliciesFromNamespace != nil { - l = m.ServicePoliciesFromNamespace.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_NoServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoServicePolicies != nil { - l = m.NoServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ActiveServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActiveServicePolicies != nil { - l = m.ActiveServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_RoundRobin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RoundRobin != nil { - l = m.RoundRobin.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_LeastActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.LeastActive != nil { - l = m.LeastActive.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_Random) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Random != nil { - l = m.Random.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_SourceIpStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SourceIpStickiness != nil { - l = m.SourceIpStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_CookieStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CookieStickiness != nil { - l = m.CookieStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_RingHash) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RingHash != nil { - l = m.RingHash.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_PolicyBasedChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PolicyBasedChallenge != nil { - l = m.PolicyBasedChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_AppFirewall) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AppFirewall != nil { - l = m.AppFirewall.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_SingleLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SingleLbApp != nil { - l = m.SingleLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_MultiLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MultiLbApp != nil { - l = m.MultiLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableBotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableBotDefense != nil { - l = m.DisableBotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_BotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefense != nil { - l = m.BotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_UserIdClientIp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdClientIp != nil { - l = m.UserIdClientIp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ApiDefinitions) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinitions != nil { - l = m.ApiDefinitions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableIpReputation != nil { - l = m.DisableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableIpReputation != nil { - l = m.EnableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ApiSpecification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiSpecification != nil { - l = m.ApiSpecification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ApiRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiRateLimit != nil { - l = m.ApiRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDefinition != nil { - l = m.DisableApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinition != nil { - l = m.ApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableTrustClientIpHeaders != nil { - l = m.DisableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableTrustClientIpHeaders != nil { - l = m.EnableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableDdosDetection != nil { - l = m.EnableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableDdosDetection != nil { - l = m.DisableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableMaliciousUserDetection != nil { - l = m.EnableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMaliciousUserDetection != nil { - l = m.DisableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableApiDiscovery != nil { - l = m.EnableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDiscovery != nil { - l = m.DisableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableClientSideDefense != nil { - l = m.DisableClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_ClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ClientSideDefense != nil { - l = m.ClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DefaultPool) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPool != nil { - l = m.DefaultPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DefaultPoolList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPoolList != nil { - l = m.DefaultPoolList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_SlowDdosMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SlowDdosMitigation != nil { - l = m.SlowDdosMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableChallenge != nil { - l = m.EnableChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_SystemDefaultTimeouts) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SystemDefaultTimeouts != nil { - l = m.SystemDefaultTimeouts.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_DisableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableThreatIntelligence != nil { - l = m.DisableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_EnableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableThreatIntelligence != nil { - l = m.EnableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_L7DdosActionDefault) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionDefault != nil { - l = m.L7DdosActionDefault.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_L7DdosActionBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionBlock != nil { - l = m.L7DdosActionBlock.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_L7DdosActionJsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionJsChallenge != nil { - l = m.L7DdosActionJsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_L7DdosActionNone) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionNone != nil { - l = m.L7DdosActionNone.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *ReplaceSpecType_BotDefenseAdvanced) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefenseAdvanced != nil { - l = m.BotDefenseAdvanced.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Domains) > 0 { - for _, s := range m.Domains { - l = len(s) - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.LoadbalancerType != nil { - n += m.LoadbalancerType.Size() - } - if m.AdvertiseChoice != nil { - n += m.AdvertiseChoice.Size() - } - if len(m.DefaultRoutePools) > 0 { - for _, e := range m.DefaultRoutePools { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if len(m.Routes) > 0 { - for _, e := range m.Routes { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - if m.CorsPolicy != nil { - l = m.CorsPolicy.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.WafChoice != nil { - n += m.WafChoice.Size() - } - if m.AddLocation { - n += 3 - } - if m.ChallengeType != nil { - n += m.ChallengeType.Size() - } - if m.MoreOption != nil { - l = m.MoreOption.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.UserIdChoice != nil { - n += m.UserIdChoice.Size() - } - if m.RateLimitChoice != nil { - n += m.RateLimitChoice.Size() - } - if m.MaliciousUserMitigation != nil { - l = m.MaliciousUserMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.WafExclusionRules) > 0 { - for _, e := range m.WafExclusionRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.BlockedClients) > 0 { - for _, e := range m.BlockedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.TrustedClients) > 0 { - for _, e := range m.TrustedClients { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.DdosMitigationRules) > 0 { - for _, e := range m.DdosMitigationRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.ServicePolicyChoice != nil { - n += m.ServicePolicyChoice.Size() - } - if m.HashPolicyChoice != nil { - n += m.HashPolicyChoice.Size() - } - if m.MlConfigChoice != nil { - n += m.MlConfigChoice.Size() - } - if m.BotDefenseChoice != nil { - n += m.BotDefenseChoice.Size() - } - if m.ApiDefinitionChoice != nil { - n += m.ApiDefinitionChoice.Size() - } - if len(m.DownstreamTlsCertificateExpirationTimestamps) > 0 { - for _, e := range m.DownstreamTlsCertificateExpirationTimestamps { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.DataGuardRules) > 0 { - for _, e := range m.DataGuardRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.IpReputationChoice != nil { - n += m.IpReputationChoice.Size() - } - if m.ApiProtectionRules != nil { - l = m.ApiProtectionRules.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.TrustClientIpHeadersChoice != nil { - n += m.TrustClientIpHeadersChoice.Size() - } - if m.DdosDetectionChoice != nil { - n += m.DdosDetectionChoice.Size() - } - if m.MaliciousUserDetectionChoice != nil { - n += m.MaliciousUserDetectionChoice.Size() - } - if m.ApiDiscoveryChoice != nil { - n += m.ApiDiscoveryChoice.Size() - } - if m.ClientSideDefenseChoice != nil { - n += m.ClientSideDefenseChoice.Size() - } - if m.OriginPoolChoice != nil { - n += m.OriginPoolChoice.Size() - } - if m.CsrfPolicy != nil { - l = m.CsrfPolicy.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.GraphqlRules) > 0 { - for _, e := range m.GraphqlRules { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if len(m.ProtectedCookies) > 0 { - for _, e := range m.ProtectedCookies { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.SlowDdosMitigationChoice != nil { - n += m.SlowDdosMitigationChoice.Size() - } - if m.JwtValidation != nil { - l = m.JwtValidation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.OriginServerSubsetRuleList != nil { - l = m.OriginServerSubsetRuleList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if m.ThreatIntelligenceChoice != nil { - n += m.ThreatIntelligenceChoice.Size() - } - if m.L7DdosAutoMitigationAction != nil { - n += m.L7DdosAutoMitigationAction.Size() - } - if m.CertState != 0 { - n += 2 + sovTypes(uint64(m.CertState)) - } - l = len(m.HostName) - if l > 0 { - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.DnsInfo) > 0 { - for _, e := range m.DnsInfo { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - if m.State != 0 { - n += 2 + sovTypes(uint64(m.State)) - } - if m.AutoCertInfo != nil { - l = m.AutoCertInfo.Size() - n += 2 + l + sovTypes(uint64(l)) - } - if len(m.InternetVipInfo) > 0 { - for _, e := range m.InternetVipInfo { - l = e.Size() - n += 2 + l + sovTypes(uint64(l)) - } - } - return n -} - -func (m *GetSpecType_Http) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Http != nil { - l = m.Http.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_Https) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Https != nil { - l = m.Https.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_AdvertiseOnPublic) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublic != nil { - l = m.AdvertiseOnPublic.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_AdvertiseCustom) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseCustom != nil { - l = m.AdvertiseCustom.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableWaf) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableWaf != nil { - l = m.DisableWaf.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DoNotAdvertise) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DoNotAdvertise != nil { - l = m.DoNotAdvertise.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_AdvertiseOnPublicDefaultVip) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AdvertiseOnPublicDefaultVip != nil { - l = m.AdvertiseOnPublicDefaultVip.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_JsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.JsChallenge != nil { - l = m.JsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_UserIdentification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdentification != nil { - l = m.UserIdentification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableRateLimit != nil { - l = m.DisableRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_RateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RateLimit != nil { - l = m.RateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_CaptchaChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CaptchaChallenge != nil { - l = m.CaptchaChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_NoChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoChallenge != nil { - l = m.NoChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_HttpsAutoCert) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.HttpsAutoCert != nil { - l = m.HttpsAutoCert.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ServicePoliciesFromNamespace) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ServicePoliciesFromNamespace != nil { - l = m.ServicePoliciesFromNamespace.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_NoServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.NoServicePolicies != nil { - l = m.NoServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ActiveServicePolicies) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ActiveServicePolicies != nil { - l = m.ActiveServicePolicies.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_RoundRobin) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RoundRobin != nil { - l = m.RoundRobin.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_LeastActive) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.LeastActive != nil { - l = m.LeastActive.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_Random) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Random != nil { - l = m.Random.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_SourceIpStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SourceIpStickiness != nil { - l = m.SourceIpStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_CookieStickiness) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.CookieStickiness != nil { - l = m.CookieStickiness.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_RingHash) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.RingHash != nil { - l = m.RingHash.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_PolicyBasedChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.PolicyBasedChallenge != nil { - l = m.PolicyBasedChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_AppFirewall) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.AppFirewall != nil { - l = m.AppFirewall.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_SingleLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SingleLbApp != nil { - l = m.SingleLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_MultiLbApp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MultiLbApp != nil { - l = m.MultiLbApp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableBotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableBotDefense != nil { - l = m.DisableBotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_BotDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefense != nil { - l = m.BotDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_UserIdClientIp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.UserIdClientIp != nil { - l = m.UserIdClientIp.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ApiDefinitions) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinitions != nil { - l = m.ApiDefinitions.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableIpReputation != nil { - l = m.DisableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableIpReputation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableIpReputation != nil { - l = m.EnableIpReputation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ApiSpecification) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiSpecification != nil { - l = m.ApiSpecification.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ApiRateLimit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiRateLimit != nil { - l = m.ApiRateLimit.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDefinition != nil { - l = m.DisableApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ApiDefinition) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ApiDefinition != nil { - l = m.ApiDefinition.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableTrustClientIpHeaders != nil { - l = m.DisableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableTrustClientIpHeaders) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableTrustClientIpHeaders != nil { - l = m.EnableTrustClientIpHeaders.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableDdosDetection != nil { - l = m.EnableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableDdosDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableDdosDetection != nil { - l = m.DisableDdosDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableMaliciousUserDetection != nil { - l = m.EnableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableMaliciousUserDetection) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableMaliciousUserDetection != nil { - l = m.DisableMaliciousUserDetection.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableApiDiscovery != nil { - l = m.EnableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableApiDiscovery) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableApiDiscovery != nil { - l = m.DisableApiDiscovery.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableClientSideDefense != nil { - l = m.DisableClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_ClientSideDefense) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.ClientSideDefense != nil { - l = m.ClientSideDefense.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DefaultPool) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPool != nil { - l = m.DefaultPool.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DefaultPoolList) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DefaultPoolList != nil { - l = m.DefaultPoolList.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_SlowDdosMitigation) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SlowDdosMitigation != nil { - l = m.SlowDdosMitigation.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableChallenge != nil { - l = m.EnableChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_SystemDefaultTimeouts) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SystemDefaultTimeouts != nil { - l = m.SystemDefaultTimeouts.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_DisableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.DisableThreatIntelligence != nil { - l = m.DisableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_EnableThreatIntelligence) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.EnableThreatIntelligence != nil { - l = m.EnableThreatIntelligence.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_L7DdosActionDefault) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionDefault != nil { - l = m.L7DdosActionDefault.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_L7DdosActionBlock) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionBlock != nil { - l = m.L7DdosActionBlock.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_L7DdosActionJsChallenge) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionJsChallenge != nil { - l = m.L7DdosActionJsChallenge.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_L7DdosActionNone) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.L7DdosActionNone != nil { - l = m.L7DdosActionNone.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} -func (m *GetSpecType_BotDefenseAdvanced) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BotDefenseAdvanced != nil { - l = m.BotDefenseAdvanced.Size() - n += 2 + l + sovTypes(uint64(l)) - } - return n -} - -func sovTypes(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozTypes(x uint64) (n int) { - return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (this *InlineRateLimiter) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&InlineRateLimiter{`, - `Threshold:` + fmt.Sprintf("%v", this.Threshold) + `,`, - `Unit:` + fmt.Sprintf("%v", this.Unit) + `,`, - `CountByChoice:` + fmt.Sprintf("%v", this.CountByChoice) + `,`, - `}`, - }, "") - return s -} -func (this *InlineRateLimiter_UseHttpLbUserId) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&InlineRateLimiter_UseHttpLbUserId{`, - `UseHttpLbUserId:` + strings.Replace(fmt.Sprintf("%v", this.UseHttpLbUserId), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *InlineRateLimiter_RefUserId) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&InlineRateLimiter_RefUserId{`, - `RefUserId:` + strings.Replace(fmt.Sprintf("%v", this.RefUserId), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ServerUrlRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ServerUrlRule{`, - `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, - `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, - `RateLimiterChoice:` + fmt.Sprintf("%v", this.RateLimiterChoice) + `,`, - `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, - `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, - `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ServerUrlRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ServerUrlRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ServerUrlRule_SpecificDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ServerUrlRule_SpecificDomain{`, - `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, - `}`, - }, "") - return s -} -func (this *ServerUrlRule_InlineRateLimiter) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ServerUrlRule_InlineRateLimiter{`, - `InlineRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.InlineRateLimiter), "InlineRateLimiter", "InlineRateLimiter", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ServerUrlRule_RefRateLimiter) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ServerUrlRule_RefRateLimiter{`, - `RefRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.RefRateLimiter), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiEndpointRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiEndpointRule{`, - `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, - `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, - `ApiEndpointPath:` + fmt.Sprintf("%v", this.ApiEndpointPath) + `,`, - `ApiEndpointMethod:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpointMethod), "HttpMethodMatcherType", "policy.HttpMethodMatcherType", 1) + `,`, - `RateLimiterChoice:` + fmt.Sprintf("%v", this.RateLimiterChoice) + `,`, - `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, - `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiEndpointRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiEndpointRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiEndpointRule_SpecificDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiEndpointRule_SpecificDomain{`, - `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, - `}`, - }, "") - return s -} -func (this *ApiEndpointRule_InlineRateLimiter) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiEndpointRule_InlineRateLimiter{`, - `InlineRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.InlineRateLimiter), "InlineRateLimiter", "InlineRateLimiter", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiEndpointRule_RefRateLimiter) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiEndpointRule_RefRateLimiter{`, - `RefRateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.RefRateLimiter), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule{`, - `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, - `DestinationType:` + fmt.Sprintf("%v", this.DestinationType) + `,`, - `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, - `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule_SpecificDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule_SpecificDomain{`, - `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule_AnyUrl) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule_AnyUrl{`, - `AnyUrl:` + strings.Replace(fmt.Sprintf("%v", this.AnyUrl), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule_BasePath) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule_BasePath{`, - `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule_ApiEndpoint) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule_ApiEndpoint{`, - `ApiEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpoint), "ApiEndpointDetails", "ApiEndpointDetails", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRule_ApiGroups) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BypassRateLimitingRule_ApiGroups{`, - `ApiGroups:` + strings.Replace(fmt.Sprintf("%v", this.ApiGroups), "APIGroups", "APIGroups", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BypassRateLimitingRules) String() string { - if this == nil { - return "nil" - } - repeatedStringForBypassRateLimitingRules := "[]*BypassRateLimitingRule{" - for _, f := range this.BypassRateLimitingRules { - repeatedStringForBypassRateLimitingRules += strings.Replace(f.String(), "BypassRateLimitingRule", "BypassRateLimitingRule", 1) + "," - } - repeatedStringForBypassRateLimitingRules += "}" - s := strings.Join([]string{`&BypassRateLimitingRules{`, - `BypassRateLimitingRules:` + repeatedStringForBypassRateLimitingRules + `,`, - `}`, - }, "") - return s -} -func (this *APIRateLimit) String() string { - if this == nil { - return "nil" - } - repeatedStringForServerUrlRules := "[]*ServerUrlRule{" - for _, f := range this.ServerUrlRules { - repeatedStringForServerUrlRules += strings.Replace(f.String(), "ServerUrlRule", "ServerUrlRule", 1) + "," - } - repeatedStringForServerUrlRules += "}" - repeatedStringForApiEndpointRules := "[]*ApiEndpointRule{" - for _, f := range this.ApiEndpointRules { - repeatedStringForApiEndpointRules += strings.Replace(f.String(), "ApiEndpointRule", "ApiEndpointRule", 1) + "," - } - repeatedStringForApiEndpointRules += "}" - s := strings.Join([]string{`&APIRateLimit{`, - `IpAllowedListChoice:` + fmt.Sprintf("%v", this.IpAllowedListChoice) + `,`, - `ServerUrlRules:` + repeatedStringForServerUrlRules + `,`, - `ApiEndpointRules:` + repeatedStringForApiEndpointRules + `,`, - `}`, - }, "") - return s -} -func (this *APIRateLimit_NoIpAllowedList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIRateLimit_NoIpAllowedList{`, - `NoIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.NoIpAllowedList), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIRateLimit_IpAllowedList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIRateLimit_IpAllowedList{`, - `IpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.IpAllowedList), "PrefixStringListType", "views.PrefixStringListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIRateLimit_CustomIpAllowedList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIRateLimit_CustomIpAllowedList{`, - `CustomIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.CustomIpAllowedList), "CustomIpAllowedList", "CustomIpAllowedList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIRateLimit_BypassRateLimitingRules) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIRateLimit_BypassRateLimitingRules{`, - `BypassRateLimitingRules:` + strings.Replace(fmt.Sprintf("%v", this.BypassRateLimitingRules), "BypassRateLimitingRules", "BypassRateLimitingRules", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps{`, - `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, - `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, - `TlsCertificatesChoice:` + fmt.Sprintf("%v", this.TlsCertificatesChoice) + `,`, - `ServerHeaderChoice:` + fmt.Sprintf("%v", this.ServerHeaderChoice) + `,`, - `PathNormalizeChoice:` + fmt.Sprintf("%v", this.PathNormalizeChoice) + `,`, - `PortChoice:` + fmt.Sprintf("%v", this.PortChoice) + `,`, - `DefaultLbChoice:` + fmt.Sprintf("%v", this.DefaultLbChoice) + `,`, - `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, - `ConnectionIdleTimeout:` + fmt.Sprintf("%v", this.ConnectionIdleTimeout) + `,`, - `HttpProtocolOptions:` + strings.Replace(fmt.Sprintf("%v", this.HttpProtocolOptions), "HttpProtocolOptions", "virtual_host.HttpProtocolOptions", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_TlsParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_TlsParameters{`, - `TlsParameters:` + strings.Replace(fmt.Sprintf("%v", this.TlsParameters), "DownstreamTlsParamsType", "views.DownstreamTlsParamsType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_DefaultHeader) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_DefaultHeader{`, - `DefaultHeader:` + strings.Replace(fmt.Sprintf("%v", this.DefaultHeader), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_ServerName) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_ServerName{`, - `ServerName:` + fmt.Sprintf("%v", this.ServerName) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_AppendServerName) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_AppendServerName{`, - `AppendServerName:` + fmt.Sprintf("%v", this.AppendServerName) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_PassThrough) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_PassThrough{`, - `PassThrough:` + strings.Replace(fmt.Sprintf("%v", this.PassThrough), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_EnablePathNormalize) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_EnablePathNormalize{`, - `EnablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.EnablePathNormalize), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_DisablePathNormalize) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_DisablePathNormalize{`, - `DisablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.DisablePathNormalize), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_Port) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_Port{`, - `Port:` + fmt.Sprintf("%v", this.Port) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_NonDefaultLoadbalancer) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_NonDefaultLoadbalancer{`, - `NonDefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.NonDefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_DefaultLoadbalancer) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_DefaultLoadbalancer{`, - `DefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.DefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_TlsCertParams) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_TlsCertParams{`, - `TlsCertParams:` + strings.Replace(fmt.Sprintf("%v", this.TlsCertParams), "DownstreamTLSCertsParams", "views.DownstreamTLSCertsParams", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttps_PortRanges) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttps_PortRanges{`, - `PortRanges:` + fmt.Sprintf("%v", this.PortRanges) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttp{`, - `DnsVolterraManaged:` + fmt.Sprintf("%v", this.DnsVolterraManaged) + `,`, - `PortChoice:` + fmt.Sprintf("%v", this.PortChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttp_Port) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttp_Port{`, - `Port:` + fmt.Sprintf("%v", this.Port) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttp_PortRanges) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttp_PortRanges{`, - `PortRanges:` + fmt.Sprintf("%v", this.PortRanges) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts{`, - `HttpRedirect:` + fmt.Sprintf("%v", this.HttpRedirect) + `,`, - `AddHsts:` + fmt.Sprintf("%v", this.AddHsts) + `,`, - `TlsConfig:` + strings.Replace(fmt.Sprintf("%v", this.TlsConfig), "TlsConfig", "views.TlsConfig", 1) + `,`, - `MtlsChoice:` + fmt.Sprintf("%v", this.MtlsChoice) + `,`, - `ServerHeaderChoice:` + fmt.Sprintf("%v", this.ServerHeaderChoice) + `,`, - `PathNormalizeChoice:` + fmt.Sprintf("%v", this.PathNormalizeChoice) + `,`, - `PortChoice:` + fmt.Sprintf("%v", this.PortChoice) + `,`, - `DefaultLbChoice:` + fmt.Sprintf("%v", this.DefaultLbChoice) + `,`, - `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, - `ConnectionIdleTimeout:` + fmt.Sprintf("%v", this.ConnectionIdleTimeout) + `,`, - `HttpProtocolOptions:` + strings.Replace(fmt.Sprintf("%v", this.HttpProtocolOptions), "HttpProtocolOptions", "virtual_host.HttpProtocolOptions", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_NoMtls) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_NoMtls{`, - `NoMtls:` + strings.Replace(fmt.Sprintf("%v", this.NoMtls), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_UseMtls) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_UseMtls{`, - `UseMtls:` + strings.Replace(fmt.Sprintf("%v", this.UseMtls), "DownstreamTlsValidationContext", "views.DownstreamTlsValidationContext", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_DefaultHeader) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DefaultHeader{`, - `DefaultHeader:` + strings.Replace(fmt.Sprintf("%v", this.DefaultHeader), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_ServerName) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_ServerName{`, - `ServerName:` + fmt.Sprintf("%v", this.ServerName) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_AppendServerName) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_AppendServerName{`, - `AppendServerName:` + fmt.Sprintf("%v", this.AppendServerName) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_PassThrough) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_PassThrough{`, - `PassThrough:` + strings.Replace(fmt.Sprintf("%v", this.PassThrough), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_EnablePathNormalize) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_EnablePathNormalize{`, - `EnablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.EnablePathNormalize), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_DisablePathNormalize) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DisablePathNormalize{`, - `DisablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.DisablePathNormalize), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_Port) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_Port{`, - `Port:` + fmt.Sprintf("%v", this.Port) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer{`, - `NonDefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.NonDefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_DefaultLoadbalancer{`, - `DefaultLoadbalancer:` + strings.Replace(fmt.Sprintf("%v", this.DefaultLoadbalancer), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProxyTypeHttpsAutoCerts_PortRanges) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProxyTypeHttpsAutoCerts_PortRanges{`, - `PortRanges:` + fmt.Sprintf("%v", this.PortRanges) + `,`, - `}`, - }, "") - return s -} -func (this *HashPolicyListType) String() string { - if this == nil { - return "nil" - } - repeatedStringForHashPolicy := "[]*HashPolicyType{" - for _, f := range this.HashPolicy { - repeatedStringForHashPolicy += strings.Replace(fmt.Sprintf("%v", f), "HashPolicyType", "route.HashPolicyType", 1) + "," - } - repeatedStringForHashPolicy += "}" - s := strings.Join([]string{`&HashPolicyListType{`, - `HashPolicy:` + repeatedStringForHashPolicy + `,`, - `}`, - }, "") - return s -} -func (this *MirrorPolicyType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&MirrorPolicyType{`, - `OriginPool:` + strings.Replace(fmt.Sprintf("%v", this.OriginPool), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `Percent:` + strings.Replace(fmt.Sprintf("%v", this.Percent), "FractionalPercent", "schema.FractionalPercent", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions) String() string { - if this == nil { - return "nil" - } - repeatedStringForRequestHeadersToAdd := "[]*HeaderManipulationOptionType{" - for _, f := range this.RequestHeadersToAdd { - repeatedStringForRequestHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," - } - repeatedStringForRequestHeadersToAdd += "}" - repeatedStringForResponseHeadersToAdd := "[]*HeaderManipulationOptionType{" - for _, f := range this.ResponseHeadersToAdd { - repeatedStringForResponseHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," - } - repeatedStringForResponseHeadersToAdd += "}" - keysForEndpointSubsets := make([]string, 0, len(this.EndpointSubsets)) - for k, _ := range this.EndpointSubsets { - keysForEndpointSubsets = append(keysForEndpointSubsets, k) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForEndpointSubsets) - mapStringForEndpointSubsets := "map[string]string{" - for _, k := range keysForEndpointSubsets { - mapStringForEndpointSubsets += fmt.Sprintf("%v: %v,", k, this.EndpointSubsets[k]) - } - mapStringForEndpointSubsets += "}" - s := strings.Join([]string{`&RouteSimpleAdvancedOptions{`, - `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, - `Priority:` + fmt.Sprintf("%v", this.Priority) + `,`, - `EndpointSubsets:` + mapStringForEndpointSubsets + `,`, - `RewriteChoice:` + fmt.Sprintf("%v", this.RewriteChoice) + `,`, - `RequestHeadersToAdd:` + repeatedStringForRequestHeadersToAdd + `,`, - `RequestHeadersToRemove:` + fmt.Sprintf("%v", this.RequestHeadersToRemove) + `,`, - `ResponseHeadersToAdd:` + repeatedStringForResponseHeadersToAdd + `,`, - `ResponseHeadersToRemove:` + fmt.Sprintf("%v", this.ResponseHeadersToRemove) + `,`, - `DisableLocationAdd:` + fmt.Sprintf("%v", this.DisableLocationAdd) + `,`, - `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, - `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, - `SpdyChoice:` + fmt.Sprintf("%v", this.SpdyChoice) + `,`, - `WebsocketChoice:` + fmt.Sprintf("%v", this.WebsocketChoice) + `,`, - `RetryPolicyChoice:` + fmt.Sprintf("%v", this.RetryPolicyChoice) + `,`, - `Timeout:` + fmt.Sprintf("%v", this.Timeout) + `,`, - `BufferChoice:` + fmt.Sprintf("%v", this.BufferChoice) + `,`, - `MirroringChoice:` + fmt.Sprintf("%v", this.MirroringChoice) + `,`, - `ClusterRetractChoice:` + fmt.Sprintf("%v", this.ClusterRetractChoice) + `,`, - `BotDefenseJavascriptInjectionChoice:` + fmt.Sprintf("%v", this.BotDefenseJavascriptInjectionChoice) + `,`, - `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_CommonHashPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_CommonHashPolicy{`, - `CommonHashPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CommonHashPolicy), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_SpecificHashPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_SpecificHashPolicy{`, - `SpecificHashPolicy:` + strings.Replace(fmt.Sprintf("%v", this.SpecificHashPolicy), "HashPolicyListType", "HashPolicyListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DisablePrefixRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisablePrefixRewrite{`, - `DisablePrefixRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisablePrefixRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_PrefixRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_PrefixRewrite{`, - `PrefixRewrite:` + fmt.Sprintf("%v", this.PrefixRewrite) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_InheritedWaf) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_InheritedWaf{`, - `InheritedWaf:` + strings.Replace(fmt.Sprintf("%v", this.InheritedWaf), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DisableSpdy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableSpdy{`, - `DisableSpdy:` + strings.Replace(fmt.Sprintf("%v", this.DisableSpdy), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_EnableSpdy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_EnableSpdy{`, - `EnableSpdy:` + strings.Replace(fmt.Sprintf("%v", this.EnableSpdy), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DisableWebSocketConfig) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableWebSocketConfig{`, - `DisableWebSocketConfig:` + strings.Replace(fmt.Sprintf("%v", this.DisableWebSocketConfig), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_WebSocketConfig) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_WebSocketConfig{`, - `WebSocketConfig:` + strings.Replace(fmt.Sprintf("%v", this.WebSocketConfig), "WebsocketConfigType", "route.WebsocketConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DefaultRetryPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DefaultRetryPolicy{`, - `DefaultRetryPolicy:` + strings.Replace(fmt.Sprintf("%v", this.DefaultRetryPolicy), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_RetryPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_RetryPolicy{`, - `RetryPolicy:` + strings.Replace(fmt.Sprintf("%v", this.RetryPolicy), "RetryPolicyType", "schema.RetryPolicyType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_CommonBuffering) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_CommonBuffering{`, - `CommonBuffering:` + strings.Replace(fmt.Sprintf("%v", this.CommonBuffering), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_BufferPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_BufferPolicy{`, - `BufferPolicy:` + strings.Replace(fmt.Sprintf("%v", this.BufferPolicy), "BufferConfigType", "schema.BufferConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DisableMirroring) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableMirroring{`, - `DisableMirroring:` + strings.Replace(fmt.Sprintf("%v", this.DisableMirroring), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_MirrorPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_MirrorPolicy{`, - `MirrorPolicy:` + strings.Replace(fmt.Sprintf("%v", this.MirrorPolicy), "MirrorPolicyType", "MirrorPolicyType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_RetractCluster) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_RetractCluster{`, - `RetractCluster:` + strings.Replace(fmt.Sprintf("%v", this.RetractCluster), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DoNotRetractCluster) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DoNotRetractCluster{`, - `DoNotRetractCluster:` + strings.Replace(fmt.Sprintf("%v", this.DoNotRetractCluster), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection{`, - `InheritedBotDefenseJavascriptInjection:` + strings.Replace(fmt.Sprintf("%v", this.InheritedBotDefenseJavascriptInjection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection{`, - `BotDefenseJavascriptInjection:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseJavascriptInjection), "BotDefenseJavascriptInjectionType", "route.BotDefenseJavascriptInjectionType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_DisableWaf) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_DisableWaf{`, - `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_NoRetryPolicy) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_NoRetryPolicy{`, - `NoRetryPolicy:` + strings.Replace(fmt.Sprintf("%v", this.NoRetryPolicy), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_RegexRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_RegexRewrite{`, - `RegexRewrite:` + strings.Replace(fmt.Sprintf("%v", this.RegexRewrite), "RegexMatchRewrite", "schema.RegexMatchRewrite", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteSimpleAdvancedOptions_AppFirewall) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteSimpleAdvancedOptions_AppFirewall{`, - `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimpleWithDefaultOriginPool) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool{`, - `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `HostRewriteParams:` + fmt.Sprintf("%v", this.HostRewriteParams) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite{`, - `AutoHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.AutoHostRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimpleWithDefaultOriginPool_HostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool_HostRewrite{`, - `HostRewrite:` + fmt.Sprintf("%v", this.HostRewrite) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite{`, - `DisableHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisableHostRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimple) String() string { - if this == nil { - return "nil" - } - repeatedStringForOriginPools := "[]*OriginPoolWithWeight{" - for _, f := range this.OriginPools { - repeatedStringForOriginPools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," - } - repeatedStringForOriginPools += "}" - repeatedStringForHeaders := "[]*HeaderMatcherType{" - for _, f := range this.Headers { - repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," - } - repeatedStringForHeaders += "}" - s := strings.Join([]string{`&RouteTypeSimple{`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, - `OriginPools:` + repeatedStringForOriginPools + `,`, - `HostRewriteParams:` + fmt.Sprintf("%v", this.HostRewriteParams) + `,`, - `AdvancedOptions:` + strings.Replace(this.AdvancedOptions.String(), "RouteSimpleAdvancedOptions", "RouteSimpleAdvancedOptions", 1) + `,`, - `Headers:` + repeatedStringForHeaders + `,`, - `IncomingPort:` + strings.Replace(fmt.Sprintf("%v", this.IncomingPort), "PortMatcherType", "schema.PortMatcherType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimple_AutoHostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimple_AutoHostRewrite{`, - `AutoHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.AutoHostRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimple_HostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimple_HostRewrite{`, - `HostRewrite:` + fmt.Sprintf("%v", this.HostRewrite) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeSimple_DisableHostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeSimple_DisableHostRewrite{`, - `DisableHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisableHostRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeRedirect) String() string { - if this == nil { - return "nil" - } - repeatedStringForHeaders := "[]*HeaderMatcherType{" - for _, f := range this.Headers { - repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," - } - repeatedStringForHeaders += "}" - s := strings.Join([]string{`&RouteTypeRedirect{`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, - `RouteRedirect:` + strings.Replace(fmt.Sprintf("%v", this.RouteRedirect), "RouteRedirect", "route.RouteRedirect", 1) + `,`, - `Headers:` + repeatedStringForHeaders + `,`, - `IncomingPort:` + strings.Replace(fmt.Sprintf("%v", this.IncomingPort), "PortMatcherType", "schema.PortMatcherType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeDirectResponse) String() string { - if this == nil { - return "nil" - } - repeatedStringForHeaders := "[]*HeaderMatcherType{" - for _, f := range this.Headers { - repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," - } - repeatedStringForHeaders += "}" - s := strings.Join([]string{`&RouteTypeDirectResponse{`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `HttpMethod:` + fmt.Sprintf("%v", this.HttpMethod) + `,`, - `RouteDirectResponse:` + strings.Replace(fmt.Sprintf("%v", this.RouteDirectResponse), "RouteDirectResponse", "route.RouteDirectResponse", 1) + `,`, - `Headers:` + repeatedStringForHeaders + `,`, - `IncomingPort:` + strings.Replace(fmt.Sprintf("%v", this.IncomingPort), "PortMatcherType", "schema.PortMatcherType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteTypeCustomRoute) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteTypeCustomRoute{`, - `RouteRef:` + strings.Replace(fmt.Sprintf("%v", this.RouteRef), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteType{`, - `Choice:` + fmt.Sprintf("%v", this.Choice) + `,`, - `}`, - }, "") - return s -} -func (this *RouteType_SimpleRoute) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteType_SimpleRoute{`, - `SimpleRoute:` + strings.Replace(fmt.Sprintf("%v", this.SimpleRoute), "RouteTypeSimple", "RouteTypeSimple", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteType_RedirectRoute) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteType_RedirectRoute{`, - `RedirectRoute:` + strings.Replace(fmt.Sprintf("%v", this.RedirectRoute), "RouteTypeRedirect", "RouteTypeRedirect", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteType_DirectResponseRoute) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteType_DirectResponseRoute{`, - `DirectResponseRoute:` + strings.Replace(fmt.Sprintf("%v", this.DirectResponseRoute), "RouteTypeDirectResponse", "RouteTypeDirectResponse", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RouteType_CustomRouteObject) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RouteType_CustomRouteObject{`, - `CustomRouteObject:` + strings.Replace(fmt.Sprintf("%v", this.CustomRouteObject), "RouteTypeCustomRoute", "RouteTypeCustomRoute", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AdvancedOptionsType) String() string { - if this == nil { - return "nil" - } - repeatedStringForRequestHeadersToAdd := "[]*HeaderManipulationOptionType{" - for _, f := range this.RequestHeadersToAdd { - repeatedStringForRequestHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," - } - repeatedStringForRequestHeadersToAdd += "}" - repeatedStringForResponseHeadersToAdd := "[]*HeaderManipulationOptionType{" - for _, f := range this.ResponseHeadersToAdd { - repeatedStringForResponseHeadersToAdd += strings.Replace(fmt.Sprintf("%v", f), "HeaderManipulationOptionType", "schema.HeaderManipulationOptionType", 1) + "," - } - repeatedStringForResponseHeadersToAdd += "}" - repeatedStringForJwt := "[]*ObjectRefType{" - for _, f := range this.Jwt { - repeatedStringForJwt += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," - } - repeatedStringForJwt += "}" - repeatedStringForCookiesToModify := "[]*CookieManipulationOptionType{" - for _, f := range this.CookiesToModify { - repeatedStringForCookiesToModify += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," - } - repeatedStringForCookiesToModify += "}" - keysForCustomErrors := make([]uint32, 0, len(this.CustomErrors)) - for k, _ := range this.CustomErrors { - keysForCustomErrors = append(keysForCustomErrors, k) - } - github_com_gogo_protobuf_sortkeys.Uint32s(keysForCustomErrors) - mapStringForCustomErrors := "map[uint32]string{" - for _, k := range keysForCustomErrors { - mapStringForCustomErrors += fmt.Sprintf("%v: %v,", k, this.CustomErrors[k]) - } - mapStringForCustomErrors += "}" - s := strings.Join([]string{`&AdvancedOptionsType{`, - `RequestHeadersToAdd:` + repeatedStringForRequestHeadersToAdd + `,`, - `RequestHeadersToRemove:` + fmt.Sprintf("%v", this.RequestHeadersToRemove) + `,`, - `ResponseHeadersToAdd:` + repeatedStringForResponseHeadersToAdd + `,`, - `ResponseHeadersToRemove:` + fmt.Sprintf("%v", this.ResponseHeadersToRemove) + `,`, - `MaxRequestHeaderSize:` + fmt.Sprintf("%v", this.MaxRequestHeaderSize) + `,`, - `BufferPolicy:` + strings.Replace(fmt.Sprintf("%v", this.BufferPolicy), "BufferConfigType", "schema.BufferConfigType", 1) + `,`, - `CompressionParams:` + strings.Replace(fmt.Sprintf("%v", this.CompressionParams), "CompressionType", "virtual_host.CompressionType", 1) + `,`, - `CustomErrors:` + mapStringForCustomErrors + `,`, - `JavascriptInfo:` + strings.Replace(fmt.Sprintf("%v", this.JavascriptInfo), "JavaScriptConfigType", "virtual_host.JavaScriptConfigType", 1) + `,`, - `Jwt:` + repeatedStringForJwt + `,`, - `IdleTimeout:` + fmt.Sprintf("%v", this.IdleTimeout) + `,`, - `DisableDefaultErrorPages:` + fmt.Sprintf("%v", this.DisableDefaultErrorPages) + `,`, - `PathNormalizeChoice:` + fmt.Sprintf("%v", this.PathNormalizeChoice) + `,`, - `StrictSniHostHeaderCheckChoice:` + fmt.Sprintf("%v", this.StrictSniHostHeaderCheckChoice) + `,`, - `CookiesToModify:` + repeatedStringForCookiesToModify + `,`, - `}`, - }, "") - return s -} -func (this *AdvancedOptionsType_EnablePathNormalize) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AdvancedOptionsType_EnablePathNormalize{`, - `EnablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.EnablePathNormalize), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AdvancedOptionsType_DisablePathNormalize) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AdvancedOptionsType_DisablePathNormalize{`, - `DisablePathNormalize:` + strings.Replace(fmt.Sprintf("%v", this.DisablePathNormalize), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AdvancedOptionsType_EnableStrictSniHostHeaderCheck) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AdvancedOptionsType_EnableStrictSniHostHeaderCheck{`, - `EnableStrictSniHostHeaderCheck:` + strings.Replace(fmt.Sprintf("%v", this.EnableStrictSniHostHeaderCheck), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AdvancedOptionsType_AdditionalDomains) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AdvancedOptionsType_AdditionalDomains{`, - `AdditionalDomains:` + strings.Replace(fmt.Sprintf("%v", this.AdditionalDomains), "DomainNameList", "schema.DomainNameList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge{`, - `MaliciousUserMitigationChoice:` + fmt.Sprintf("%v", this.MaliciousUserMitigationChoice) + `,`, - `JsChallengeParametersChoice:` + fmt.Sprintf("%v", this.JsChallengeParametersChoice) + `,`, - `CaptchaChallengeParametersChoice:` + fmt.Sprintf("%v", this.CaptchaChallengeParametersChoice) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge_DefaultMitigationSettings) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge_DefaultMitigationSettings{`, - `DefaultMitigationSettings:` + strings.Replace(fmt.Sprintf("%v", this.DefaultMitigationSettings), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge_MaliciousUserMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge_MaliciousUserMitigation{`, - `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge_DefaultJsChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge_DefaultJsChallengeParameters{`, - `DefaultJsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultJsChallengeParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge_JsChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge_JsChallengeParameters{`, - `JsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.JsChallengeParameters), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge_DefaultCaptchaChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge_DefaultCaptchaChallengeParameters{`, - `DefaultCaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultCaptchaChallengeParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableChallenge_CaptchaChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableChallenge_CaptchaChallengeParameters{`, - `CaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallengeParameters), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge{`, - `JsChallengeParametersChoice:` + fmt.Sprintf("%v", this.JsChallengeParametersChoice) + `,`, - `CaptchaChallengeParametersChoice:` + fmt.Sprintf("%v", this.CaptchaChallengeParametersChoice) + `,`, - `TemporaryBlockingParametersChoice:` + fmt.Sprintf("%v", this.TemporaryBlockingParametersChoice) + `,`, - `MaliciousUserMitigationChoice:` + fmt.Sprintf("%v", this.MaliciousUserMitigationChoice) + `,`, - `ChallengeChoice:` + fmt.Sprintf("%v", this.ChallengeChoice) + `,`, - `RuleList:` + strings.Replace(this.RuleList.String(), "ChallengeRuleList", "ChallengeRuleList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_DefaultJsChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_DefaultJsChallengeParameters{`, - `DefaultJsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultJsChallengeParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_JsChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_JsChallengeParameters{`, - `JsChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.JsChallengeParameters), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_DefaultCaptchaChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_DefaultCaptchaChallengeParameters{`, - `DefaultCaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultCaptchaChallengeParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_CaptchaChallengeParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_CaptchaChallengeParameters{`, - `CaptchaChallengeParameters:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallengeParameters), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_DefaultTemporaryBlockingParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_DefaultTemporaryBlockingParameters{`, - `DefaultTemporaryBlockingParameters:` + strings.Replace(fmt.Sprintf("%v", this.DefaultTemporaryBlockingParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_TemporaryUserBlocking) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_TemporaryUserBlocking{`, - `TemporaryUserBlocking:` + strings.Replace(fmt.Sprintf("%v", this.TemporaryUserBlocking), "TemporaryUserBlockingType", "virtual_host.TemporaryUserBlockingType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_DefaultMitigationSettings) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_DefaultMitigationSettings{`, - `DefaultMitigationSettings:` + strings.Replace(fmt.Sprintf("%v", this.DefaultMitigationSettings), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_MaliciousUserMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_MaliciousUserMitigation{`, - `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_NoChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_NoChallenge{`, - `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_AlwaysEnableJsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_AlwaysEnableJsChallenge{`, - `AlwaysEnableJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.AlwaysEnableJsChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{`, - `AlwaysEnableCaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.AlwaysEnableCaptchaChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ChallengeRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ChallengeRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ChallengeRuleSpec", "service_policy_rule.ChallengeRuleSpec", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ChallengeRuleList) String() string { - if this == nil { - return "nil" - } - repeatedStringForRules := "[]*ChallengeRule{" - for _, f := range this.Rules { - repeatedStringForRules += strings.Replace(f.String(), "ChallengeRule", "ChallengeRule", 1) + "," - } - repeatedStringForRules += "}" - s := strings.Join([]string{`&ChallengeRuleList{`, - `Rules:` + repeatedStringForRules + `,`, - `}`, - }, "") - return s -} -func (this *HttpHeaderMatcherList) String() string { - if this == nil { - return "nil" - } - repeatedStringForHeaders := "[]*HeaderMatcherType{" - for _, f := range this.Headers { - repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherType", "schema.HeaderMatcherType", 1) + "," - } - repeatedStringForHeaders += "}" - s := strings.Join([]string{`&HttpHeaderMatcherList{`, - `Headers:` + repeatedStringForHeaders + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule{`, - `ClientSourceChoice:` + fmt.Sprintf("%v", this.ClientSourceChoice) + `,`, - `ExpirationTimestamp:` + strings.Replace(fmt.Sprintf("%v", this.ExpirationTimestamp), "Timestamp", "types.Timestamp", 1) + `,`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `ActionChoice:` + fmt.Sprintf("%v", this.ActionChoice) + `,`, - `Actions:` + fmt.Sprintf("%v", this.Actions) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_IpPrefix) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_IpPrefix{`, - `IpPrefix:` + fmt.Sprintf("%v", this.IpPrefix) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_AsNumber) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_AsNumber{`, - `AsNumber:` + fmt.Sprintf("%v", this.AsNumber) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_SkipProcessing) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_SkipProcessing{`, - `SkipProcessing:` + strings.Replace(fmt.Sprintf("%v", this.SkipProcessing), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_WafSkipProcessing) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_WafSkipProcessing{`, - `WafSkipProcessing:` + strings.Replace(fmt.Sprintf("%v", this.WafSkipProcessing), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_BotSkipProcessing) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_BotSkipProcessing{`, - `BotSkipProcessing:` + strings.Replace(fmt.Sprintf("%v", this.BotSkipProcessing), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_HttpHeader) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_HttpHeader{`, - `HttpHeader:` + strings.Replace(fmt.Sprintf("%v", this.HttpHeader), "HttpHeaderMatcherList", "HttpHeaderMatcherList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SimpleClientSrcRule_UserIdentifier) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SimpleClientSrcRule_UserIdentifier{`, - `UserIdentifier:` + fmt.Sprintf("%v", this.UserIdentifier) + `,`, - `}`, - }, "") - return s -} -func (this *DDoSClientSource) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DDoSClientSource{`, - `AsnList:` + strings.Replace(fmt.Sprintf("%v", this.AsnList), "AsnMatchList", "policy.AsnMatchList", 1) + `,`, - `CountryList:` + fmt.Sprintf("%v", this.CountryList) + `,`, - `TlsFingerprintMatcher:` + strings.Replace(fmt.Sprintf("%v", this.TlsFingerprintMatcher), "TlsFingerprintMatcherType", "policy.TlsFingerprintMatcherType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIProtectionRuleAction) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIProtectionRuleAction{`, - `Action:` + fmt.Sprintf("%v", this.Action) + `,`, - `}`, - }, "") - return s -} -func (this *APIProtectionRuleAction_Allow) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIProtectionRuleAction_Allow{`, - `Allow:` + strings.Replace(fmt.Sprintf("%v", this.Allow), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIProtectionRuleAction_Deny) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIProtectionRuleAction_Deny{`, - `Deny:` + strings.Replace(fmt.Sprintf("%v", this.Deny), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIEndpointProtectionRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIEndpointProtectionRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `Action:` + strings.Replace(this.Action.String(), "APIProtectionRuleAction", "APIProtectionRuleAction", 1) + `,`, - `ApiEndpointPath:` + fmt.Sprintf("%v", this.ApiEndpointPath) + `,`, - `ApiEndpointMethod:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpointMethod), "HttpMethodMatcherType", "policy.HttpMethodMatcherType", 1) + `,`, - `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, - `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, - `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, - `}`, - }, "") - return s -} -func (this *APIEndpointProtectionRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIEndpointProtectionRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIEndpointProtectionRule_SpecificDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIEndpointProtectionRule_SpecificDomain{`, - `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, - `}`, - }, "") - return s -} -func (this *APIGroupProtectionRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupProtectionRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `Action:` + strings.Replace(this.Action.String(), "APIProtectionRuleAction", "APIProtectionRuleAction", 1) + `,`, - `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, - `RequestMatcher:` + strings.Replace(fmt.Sprintf("%v", this.RequestMatcher), "RequestMatcher", "policy.RequestMatcher", 1) + `,`, - `ClientMatcher:` + strings.Replace(fmt.Sprintf("%v", this.ClientMatcher), "ClientMatcher", "policy.ClientMatcher", 1) + `,`, - `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, - `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, - `}`, - }, "") - return s -} -func (this *APIGroupProtectionRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupProtectionRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIGroupProtectionRule_SpecificDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroupProtectionRule_SpecificDomain{`, - `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, - `}`, - }, "") - return s -} -func (this *APIProtectionRules) String() string { - if this == nil { - return "nil" - } - repeatedStringForApiEndpointRules := "[]*APIEndpointProtectionRule{" - for _, f := range this.ApiEndpointRules { - repeatedStringForApiEndpointRules += strings.Replace(f.String(), "APIEndpointProtectionRule", "APIEndpointProtectionRule", 1) + "," - } - repeatedStringForApiEndpointRules += "}" - repeatedStringForApiGroupsRules := "[]*APIGroupProtectionRule{" - for _, f := range this.ApiGroupsRules { - repeatedStringForApiGroupsRules += strings.Replace(f.String(), "APIGroupProtectionRule", "APIGroupProtectionRule", 1) + "," - } - repeatedStringForApiGroupsRules += "}" - s := strings.Join([]string{`&APIProtectionRules{`, - `ApiEndpointRules:` + repeatedStringForApiEndpointRules + `,`, - `ApiGroupsRules:` + repeatedStringForApiGroupsRules + `,`, - `}`, - }, "") - return s -} -func (this *DDoSMitigationRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DDoSMitigationRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `MitigationAction:` + fmt.Sprintf("%v", this.MitigationAction) + `,`, - `MitigationChoice:` + fmt.Sprintf("%v", this.MitigationChoice) + `,`, - `ExpirationTimestamp:` + strings.Replace(fmt.Sprintf("%v", this.ExpirationTimestamp), "Timestamp", "types.Timestamp", 1) + `,`, - `}`, - }, "") - return s -} -func (this *DDoSMitigationRule_Block) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DDoSMitigationRule_Block{`, - `Block:` + strings.Replace(fmt.Sprintf("%v", this.Block), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *DDoSMitigationRule_DdosClientSource) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DDoSMitigationRule_DdosClientSource{`, - `DdosClientSource:` + strings.Replace(fmt.Sprintf("%v", this.DdosClientSource), "DDoSClientSource", "DDoSClientSource", 1) + `,`, - `}`, - }, "") - return s -} -func (this *DDoSMitigationRule_IpPrefixList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&DDoSMitigationRule_IpPrefixList{`, - `IpPrefixList:` + strings.Replace(fmt.Sprintf("%v", this.IpPrefixList), "PrefixMatchList", "policy.PrefixMatchList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CustomIpAllowedList) String() string { - if this == nil { - return "nil" - } - repeatedStringForRateLimiterAllowedPrefixes := "[]*ObjectRefType{" - for _, f := range this.RateLimiterAllowedPrefixes { - repeatedStringForRateLimiterAllowedPrefixes += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," - } - repeatedStringForRateLimiterAllowedPrefixes += "}" - s := strings.Join([]string{`&CustomIpAllowedList{`, - `RateLimiterAllowedPrefixes:` + repeatedStringForRateLimiterAllowedPrefixes + `,`, - `}`, - }, "") - return s -} -func (this *RateLimitConfigType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RateLimitConfigType{`, - `RateLimiter:` + strings.Replace(fmt.Sprintf("%v", this.RateLimiter), "RateLimitValue", "rate_limiter.RateLimitValue", 1) + `,`, - `IpAllowedListChoice:` + fmt.Sprintf("%v", this.IpAllowedListChoice) + `,`, - `PolicyChoice:` + fmt.Sprintf("%v", this.PolicyChoice) + `,`, - `}`, - }, "") - return s -} -func (this *RateLimitConfigType_NoIpAllowedList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RateLimitConfigType_NoIpAllowedList{`, - `NoIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.NoIpAllowedList), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RateLimitConfigType_IpAllowedList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RateLimitConfigType_IpAllowedList{`, - `IpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.IpAllowedList), "PrefixStringListType", "views.PrefixStringListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RateLimitConfigType_CustomIpAllowedList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RateLimitConfigType_CustomIpAllowedList{`, - `CustomIpAllowedList:` + strings.Replace(fmt.Sprintf("%v", this.CustomIpAllowedList), "CustomIpAllowedList", "CustomIpAllowedList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RateLimitConfigType_NoPolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RateLimitConfigType_NoPolicies{`, - `NoPolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoPolicies), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RateLimitConfigType_Policies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RateLimitConfigType_Policies{`, - `Policies:` + strings.Replace(fmt.Sprintf("%v", this.Policies), "PolicyList", "rate_limiter_policy.PolicyList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ServicePolicyList) String() string { - if this == nil { - return "nil" - } - repeatedStringForPolicies := "[]*ObjectRefType{" - for _, f := range this.Policies { - repeatedStringForPolicies += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," - } - repeatedStringForPolicies += "}" - s := strings.Join([]string{`&ServicePolicyList{`, - `Policies:` + repeatedStringForPolicies + `,`, - `}`, - }, "") - return s -} -func (this *ApiDefinitionList) String() string { - if this == nil { - return "nil" - } - repeatedStringForApiDefinitions := "[]*ObjectRefType{" - for _, f := range this.ApiDefinitions { - repeatedStringForApiDefinitions += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "views.ObjectRefType", 1) + "," - } - repeatedStringForApiDefinitions += "}" - s := strings.Join([]string{`&ApiDefinitionList{`, - `ApiDefinitions:` + repeatedStringForApiDefinitions + `,`, - `}`, - }, "") - return s -} -func (this *ApiDiscoverySetting) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiDiscoverySetting{`, - `LearnFromRedirectTraffic:` + fmt.Sprintf("%v", this.LearnFromRedirectTraffic) + `,`, - `SensitiveDataDetectionRules:` + strings.Replace(fmt.Sprintf("%v", this.SensitiveDataDetectionRules), "SensitiveDataDetectionRules", "app_type.SensitiveDataDetectionRules", 1) + `,`, - `DiscoveredApiSettings:` + strings.Replace(fmt.Sprintf("%v", this.DiscoveredApiSettings), "DiscoveredAPISettings", "app_type.DiscoveredAPISettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiDiscoverySetting_DisableLearnFromRedirectTraffic) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiDiscoverySetting_DisableLearnFromRedirectTraffic{`, - `DisableLearnFromRedirectTraffic:` + strings.Replace(fmt.Sprintf("%v", this.DisableLearnFromRedirectTraffic), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiDiscoverySetting_EnableLearnFromRedirectTraffic) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiDiscoverySetting_EnableLearnFromRedirectTraffic{`, - `EnableLearnFromRedirectTraffic:` + strings.Replace(fmt.Sprintf("%v", this.EnableLearnFromRedirectTraffic), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableDDoSDetectionSetting) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableDDoSDetectionSetting{`, - `AutoMitigationChoice:` + fmt.Sprintf("%v", this.AutoMitigationChoice) + `,`, - `}`, - }, "") - return s -} -func (this *EnableDDoSDetectionSetting_EnableAutoMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableDDoSDetectionSetting_EnableAutoMitigation{`, - `EnableAutoMitigation:` + strings.Replace(fmt.Sprintf("%v", this.EnableAutoMitigation), "AutoMitigationAction", "AutoMitigationAction", 1) + `,`, - `}`, - }, "") - return s -} -func (this *EnableDDoSDetectionSetting_DisableAutoMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&EnableDDoSDetectionSetting_DisableAutoMitigation{`, - `DisableAutoMitigation:` + strings.Replace(fmt.Sprintf("%v", this.DisableAutoMitigation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AutoMitigationAction) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AutoMitigationAction{`, - `Action:` + fmt.Sprintf("%v", this.Action) + `,`, - `}`, - }, "") - return s -} -func (this *AutoMitigationAction_Block) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AutoMitigationAction_Block{`, - `Block:` + strings.Replace(fmt.Sprintf("%v", this.Block), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AutoMitigationAction_JsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AutoMitigationAction_JsChallenge{`, - `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting{`, - `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, - `DdosDetectionChoice:` + fmt.Sprintf("%v", this.DdosDetectionChoice) + `,`, - `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting_EnableDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting_EnableDiscovery{`, - `EnableDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableDiscovery), "ApiDiscoverySetting", "ApiDiscoverySetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting_DisableDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting_DisableDiscovery{`, - `DisableDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableDiscovery), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting_EnableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting_EnableDdosDetection{`, - `EnableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableDdosDetection), "EnableDDoSDetectionSetting", "EnableDDoSDetectionSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting_DisableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting_DisableDdosDetection{`, - `DisableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableDdosDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{`, - `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SingleLoadBalancerAppSetting_DisableMaliciousUserDetection{`, - `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APISpecificationSettings) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APISpecificationSettings{`, - `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `ValidationTargetChoice:` + fmt.Sprintf("%v", this.ValidationTargetChoice) + `,`, - `}`, - }, "") - return s -} -func (this *APISpecificationSettings_ValidationDisabled) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APISpecificationSettings_ValidationDisabled{`, - `ValidationDisabled:` + strings.Replace(fmt.Sprintf("%v", this.ValidationDisabled), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APISpecificationSettings_ValidationAllSpecEndpoints) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APISpecificationSettings_ValidationAllSpecEndpoints{`, - `ValidationAllSpecEndpoints:` + strings.Replace(fmt.Sprintf("%v", this.ValidationAllSpecEndpoints), "OpenApiValidationAllSpecEndpointsSettings", "OpenApiValidationAllSpecEndpointsSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APISpecificationSettings_ValidationCustomList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APISpecificationSettings_ValidationCustomList{`, - `ValidationCustomList:` + strings.Replace(fmt.Sprintf("%v", this.ValidationCustomList), "ValidateApiBySpecRule", "ValidateApiBySpecRule", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationAllSpecEndpointsSettings) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationAllSpecEndpointsSettings{`, - `ValidationMode:` + strings.Replace(this.ValidationMode.String(), "OpenApiValidationMode", "OpenApiValidationMode", 1) + `,`, - `FallThroughMode:` + strings.Replace(this.FallThroughMode.String(), "OpenApiFallThroughMode", "OpenApiFallThroughMode", 1) + `,`, - `OversizedBodyChoice:` + fmt.Sprintf("%v", this.OversizedBodyChoice) + `,`, - `Settings:` + strings.Replace(this.Settings.String(), "OpenApiValidationCommonSettings", "OpenApiValidationCommonSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{`, - `OversizedBodySkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodySkipValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{`, - `OversizedBodyFailValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodyFailValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationCommonSettings) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationCommonSettings{`, - `OversizedBodyChoice:` + fmt.Sprintf("%v", this.OversizedBodyChoice) + `,`, - `PropertyValidationSettingsChoice:` + fmt.Sprintf("%v", this.PropertyValidationSettingsChoice) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationCommonSettings_OversizedBodySkipValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationCommonSettings_OversizedBodySkipValidation{`, - `OversizedBodySkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodySkipValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationCommonSettings_OversizedBodyFailValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationCommonSettings_OversizedBodyFailValidation{`, - `OversizedBodyFailValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodyFailValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{`, - `PropertyValidationSettingsDefault:` + strings.Replace(fmt.Sprintf("%v", this.PropertyValidationSettingsDefault), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{`, - `PropertyValidationSettingsCustom:` + strings.Replace(fmt.Sprintf("%v", this.PropertyValidationSettingsCustom), "ValidationPropertySetting", "ValidationPropertySetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationPropertySetting) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationPropertySetting{`, - `QueryParameters:` + strings.Replace(this.QueryParameters.String(), "ValidationSettingForQueryParameters", "ValidationSettingForQueryParameters", 1) + `,`, - `Headers:` + strings.Replace(this.Headers.String(), "ValidationSettingForHeaders", "ValidationSettingForHeaders", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationSettingForQueryParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationSettingForQueryParameters{`, - `AdditionalParametersChoice:` + fmt.Sprintf("%v", this.AdditionalParametersChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationSettingForQueryParameters_AllowAdditionalParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationSettingForQueryParameters_AllowAdditionalParameters{`, - `AllowAdditionalParameters:` + strings.Replace(fmt.Sprintf("%v", this.AllowAdditionalParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationSettingForQueryParameters_DisallowAdditionalParameters) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationSettingForQueryParameters_DisallowAdditionalParameters{`, - `DisallowAdditionalParameters:` + strings.Replace(fmt.Sprintf("%v", this.DisallowAdditionalParameters), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationSettingForHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationSettingForHeaders{`, - `AdditionalHeadersChoice:` + fmt.Sprintf("%v", this.AdditionalHeadersChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationSettingForHeaders_AllowAdditionalHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationSettingForHeaders_AllowAdditionalHeaders{`, - `AllowAdditionalHeaders:` + strings.Replace(fmt.Sprintf("%v", this.AllowAdditionalHeaders), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidationSettingForHeaders_DisallowAdditionalHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidationSettingForHeaders_DisallowAdditionalHeaders{`, - `DisallowAdditionalHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisallowAdditionalHeaders), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationMode) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationMode{`, - `ValidationModeChoice:` + fmt.Sprintf("%v", this.ValidationModeChoice) + `,`, - `ResponseValidationModeChoice:` + fmt.Sprintf("%v", this.ResponseValidationModeChoice) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationMode_ValidationModeActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationMode_ValidationModeActive{`, - `ValidationModeActive:` + strings.Replace(fmt.Sprintf("%v", this.ValidationModeActive), "OpenApiValidationModeActive", "OpenApiValidationModeActive", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationMode_SkipValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationMode_SkipValidation{`, - `SkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.SkipValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationMode_SkipResponseValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationMode_SkipResponseValidation{`, - `SkipResponseValidation:` + strings.Replace(fmt.Sprintf("%v", this.SkipResponseValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationMode_ResponseValidationModeActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationMode_ResponseValidationModeActive{`, - `ResponseValidationModeActive:` + strings.Replace(fmt.Sprintf("%v", this.ResponseValidationModeActive), "OpenApiValidationModeActiveResponse", "OpenApiValidationModeActiveResponse", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiFallThroughMode) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiFallThroughMode{`, - `FallThroughModeChoice:` + fmt.Sprintf("%v", this.FallThroughModeChoice) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiFallThroughMode_FallThroughModeAllow) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiFallThroughMode_FallThroughModeAllow{`, - `FallThroughModeAllow:` + strings.Replace(fmt.Sprintf("%v", this.FallThroughModeAllow), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiFallThroughMode_FallThroughModeCustom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiFallThroughMode_FallThroughModeCustom{`, - `FallThroughModeCustom:` + strings.Replace(fmt.Sprintf("%v", this.FallThroughModeCustom), "CustomFallThroughMode", "CustomFallThroughMode", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CustomFallThroughMode) String() string { - if this == nil { - return "nil" - } - repeatedStringForOpenApiValidationRules := "[]*FallThroughRule{" - for _, f := range this.OpenApiValidationRules { - repeatedStringForOpenApiValidationRules += strings.Replace(f.String(), "FallThroughRule", "FallThroughRule", 1) + "," - } - repeatedStringForOpenApiValidationRules += "}" - s := strings.Join([]string{`&CustomFallThroughMode{`, - `OpenApiValidationRules:` + repeatedStringForOpenApiValidationRules + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `ActionChoice:` + fmt.Sprintf("%v", this.ActionChoice) + `,`, - `ConditionTypeChoice:` + fmt.Sprintf("%v", this.ConditionTypeChoice) + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule_ActionSkip) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule_ActionSkip{`, - `ActionSkip:` + strings.Replace(fmt.Sprintf("%v", this.ActionSkip), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule_ActionReport) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule_ActionReport{`, - `ActionReport:` + strings.Replace(fmt.Sprintf("%v", this.ActionReport), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule_ActionBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule_ActionBlock{`, - `ActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.ActionBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule_BasePath) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule_BasePath{`, - `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule_ApiGroup) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule_ApiGroup{`, - `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, - `}`, - }, "") - return s -} -func (this *FallThroughRule_ApiEndpoint) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FallThroughRule_ApiEndpoint{`, - `ApiEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpoint), "ApiEndpointDetails", "ApiEndpointDetails", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationModeActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationModeActive{`, - `ValidationEnforcementType:` + fmt.Sprintf("%v", this.ValidationEnforcementType) + `,`, - `RequestValidationProperties:` + fmt.Sprintf("%v", this.RequestValidationProperties) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationModeActive_EnforcementReport) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationModeActive_EnforcementReport{`, - `EnforcementReport:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementReport), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationModeActive_EnforcementBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationModeActive_EnforcementBlock{`, - `EnforcementBlock:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationModeActiveResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationModeActiveResponse{`, - `ValidationEnforcementType:` + fmt.Sprintf("%v", this.ValidationEnforcementType) + `,`, - `ResponseValidationProperties:` + fmt.Sprintf("%v", this.ResponseValidationProperties) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationModeActiveResponse_EnforcementReport) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationModeActiveResponse_EnforcementReport{`, - `EnforcementReport:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementReport), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationModeActiveResponse_EnforcementBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationModeActiveResponse_EnforcementBlock{`, - `EnforcementBlock:` + strings.Replace(fmt.Sprintf("%v", this.EnforcementBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidateApiBySpecRule) String() string { - if this == nil { - return "nil" - } - repeatedStringForOpenApiValidationRules := "[]*OpenApiValidationRule{" - for _, f := range this.OpenApiValidationRules { - repeatedStringForOpenApiValidationRules += strings.Replace(f.String(), "OpenApiValidationRule", "OpenApiValidationRule", 1) + "," - } - repeatedStringForOpenApiValidationRules += "}" - s := strings.Join([]string{`&ValidateApiBySpecRule{`, - `OpenApiValidationRules:` + repeatedStringForOpenApiValidationRules + `,`, - `FallThroughMode:` + strings.Replace(this.FallThroughMode.String(), "OpenApiFallThroughMode", "OpenApiFallThroughMode", 1) + `,`, - `OversizedBodyChoice:` + fmt.Sprintf("%v", this.OversizedBodyChoice) + `,`, - `Settings:` + strings.Replace(this.Settings.String(), "OpenApiValidationCommonSettings", "OpenApiValidationCommonSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidateApiBySpecRule_OversizedBodySkipValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidateApiBySpecRule_OversizedBodySkipValidation{`, - `OversizedBodySkipValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodySkipValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ValidateApiBySpecRule_OversizedBodyFailValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ValidateApiBySpecRule_OversizedBodyFailValidation{`, - `OversizedBodyFailValidation:` + strings.Replace(fmt.Sprintf("%v", this.OversizedBodyFailValidation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `ValidationMode:` + strings.Replace(this.ValidationMode.String(), "OpenApiValidationMode", "OpenApiValidationMode", 1) + `,`, - `DomainChoice:` + fmt.Sprintf("%v", this.DomainChoice) + `,`, - `ConditionTypeChoice:` + fmt.Sprintf("%v", this.ConditionTypeChoice) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationRule_SpecificDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationRule_SpecificDomain{`, - `SpecificDomain:` + fmt.Sprintf("%v", this.SpecificDomain) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationRule_BasePath) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationRule_BasePath{`, - `BasePath:` + fmt.Sprintf("%v", this.BasePath) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationRule_ApiGroup) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationRule_ApiGroup{`, - `ApiGroup:` + fmt.Sprintf("%v", this.ApiGroup) + `,`, - `}`, - }, "") - return s -} -func (this *OpenApiValidationRule_ApiEndpoint) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OpenApiValidationRule_ApiEndpoint{`, - `ApiEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.ApiEndpoint), "ApiEndpointDetails", "ApiEndpointDetails", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ApiEndpointDetails) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ApiEndpointDetails{`, - `Path:` + fmt.Sprintf("%v", this.Path) + `,`, - `Methods:` + fmt.Sprintf("%v", this.Methods) + `,`, - `}`, - }, "") - return s -} -func (this *OriginServerSubsetRuleListType) String() string { - if this == nil { - return "nil" - } - repeatedStringForOriginServerSubsetRules := "[]*OriginServerSubsetRule{" - for _, f := range this.OriginServerSubsetRules { - repeatedStringForOriginServerSubsetRules += strings.Replace(fmt.Sprintf("%v", f), "OriginServerSubsetRule", "policy.OriginServerSubsetRule", 1) + "," - } - repeatedStringForOriginServerSubsetRules += "}" - s := strings.Join([]string{`&OriginServerSubsetRuleListType{`, - `OriginServerSubsetRules:` + repeatedStringForOriginServerSubsetRules + `,`, - `}`, - }, "") - return s -} -func (this *ClientSideDefenseType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ClientSideDefenseType{`, - `Policy:` + strings.Replace(this.Policy.String(), "ClientSideDefensePolicyType", "ClientSideDefensePolicyType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ClientSideDefensePolicyType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ClientSideDefensePolicyType{`, - `JavaScriptChoice:` + fmt.Sprintf("%v", this.JavaScriptChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ClientSideDefensePolicyType_DisableJsInsert) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ClientSideDefensePolicyType_DisableJsInsert{`, - `DisableJsInsert:` + strings.Replace(fmt.Sprintf("%v", this.DisableJsInsert), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ClientSideDefensePolicyType_JsInsertAllPages) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ClientSideDefensePolicyType_JsInsertAllPages{`, - `JsInsertAllPages:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPages), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ClientSideDefensePolicyType_JsInsertAllPagesExcept) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ClientSideDefensePolicyType_JsInsertAllPagesExcept{`, - `JsInsertAllPagesExcept:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPagesExcept), "CSDJavaScriptInsertAllWithExceptionsType", "CSDJavaScriptInsertAllWithExceptionsType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ClientSideDefensePolicyType_JsInsertionRules) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ClientSideDefensePolicyType_JsInsertionRules{`, - `JsInsertionRules:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertionRules), "CSDJavaScriptInsertType", "CSDJavaScriptInsertType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CSDJavaScriptInsertAllWithExceptionsType) String() string { - if this == nil { - return "nil" - } - repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" - for _, f := range this.ExcludeList { - repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," - } - repeatedStringForExcludeList += "}" - s := strings.Join([]string{`&CSDJavaScriptInsertAllWithExceptionsType{`, - `ExcludeList:` + repeatedStringForExcludeList + `,`, - `}`, - }, "") - return s -} -func (this *CSDJavaScriptInsertType) String() string { - if this == nil { - return "nil" - } - repeatedStringForRules := "[]*CSDJavaScriptInsertionRule{" - for _, f := range this.Rules { - repeatedStringForRules += strings.Replace(f.String(), "CSDJavaScriptInsertionRule", "CSDJavaScriptInsertionRule", 1) + "," - } - repeatedStringForRules += "}" - repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" - for _, f := range this.ExcludeList { - repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," - } - repeatedStringForExcludeList += "}" - s := strings.Join([]string{`&CSDJavaScriptInsertType{`, - `Rules:` + repeatedStringForRules + `,`, - `ExcludeList:` + repeatedStringForExcludeList + `,`, - `}`, - }, "") - return s -} -func (this *CSDJavaScriptInsertionRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CSDJavaScriptInsertionRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CSDJavaScriptInsertionRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CSDJavaScriptInsertionRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CSDJavaScriptInsertionRule_Domain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CSDJavaScriptInsertionRule_Domain{`, - `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BotDefenseAdvancedPolicyType) String() string { - if this == nil { - return "nil" - } - repeatedStringForProtectedAppEndpoints := "[]*ProtectedAppEndpointType{" - for _, f := range this.ProtectedAppEndpoints { - repeatedStringForProtectedAppEndpoints += strings.Replace(f.String(), "ProtectedAppEndpointType", "ProtectedAppEndpointType", 1) + "," - } - repeatedStringForProtectedAppEndpoints += "}" - s := strings.Join([]string{`&BotDefenseAdvancedPolicyType{`, - `ProtectedAppEndpoints:` + repeatedStringForProtectedAppEndpoints + `,`, - `JsDownloadPath:` + fmt.Sprintf("%v", this.JsDownloadPath) + `,`, - `MobileSdkChoice:` + fmt.Sprintf("%v", this.MobileSdkChoice) + `,`, - `}`, - }, "") - return s -} -func (this *BotDefenseAdvancedPolicyType_DisableMobileSdk) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BotDefenseAdvancedPolicyType_DisableMobileSdk{`, - `DisableMobileSdk:` + strings.Replace(fmt.Sprintf("%v", this.DisableMobileSdk), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BotDefenseAdvancedPolicyType_MobileSdkConfig) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BotDefenseAdvancedPolicyType_MobileSdkConfig{`, - `MobileSdkConfig:` + strings.Replace(fmt.Sprintf("%v", this.MobileSdkConfig), "BotAdvancedMobileSDKConfigType", "BotAdvancedMobileSDKConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BotAdvancedMobileSDKConfigType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BotAdvancedMobileSDKConfigType{`, - `MobileIdentifier:` + strings.Replace(this.MobileIdentifier.String(), "MobileTrafficIdentifierType", "MobileTrafficIdentifierType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType) String() string { - if this == nil { - return "nil" - } - repeatedStringForQuery := "[]*Query{" - for _, f := range this.Query { - repeatedStringForQuery += strings.Replace(f.String(), "Query", "Query", 1) + "," - } - repeatedStringForQuery += "}" - repeatedStringForRequestBody := "[]*RequestBody{" - for _, f := range this.RequestBody { - repeatedStringForRequestBody += strings.Replace(f.String(), "RequestBody", "RequestBody", 1) + "," - } - repeatedStringForRequestBody += "}" - s := strings.Join([]string{`&ProtectedAppEndpointType{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `Query:` + repeatedStringForQuery + `,`, - `RequestBody:` + repeatedStringForRequestBody + `,`, - `HttpMethods:` + fmt.Sprintf("%v", this.HttpMethods) + `,`, - `AppTrafficTypeChoice:` + fmt.Sprintf("%v", this.AppTrafficTypeChoice) + `,`, - `FlowLabelChoice:` + fmt.Sprintf("%v", this.FlowLabelChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_Domain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_Domain{`, - `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_WebClient) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_WebClient{`, - `WebClient:` + strings.Replace(fmt.Sprintf("%v", this.WebClient), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_MobileClient) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_MobileClient{`, - `MobileClient:` + strings.Replace(fmt.Sprintf("%v", this.MobileClient), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_WebMobileClient) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_WebMobileClient{`, - `WebMobileClient:` + strings.Replace(fmt.Sprintf("%v", this.WebMobileClient), "WebMobileTrafficType", "WebMobileTrafficType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_UndefinedFlowLabel) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_UndefinedFlowLabel{`, - `UndefinedFlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.UndefinedFlowLabel), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ProtectedAppEndpointType_FlowLabel) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ProtectedAppEndpointType_FlowLabel{`, - `FlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.FlowLabel), "BotDefenseFlowLabelCategoriesChoiceType", "schema.BotDefenseFlowLabelCategoriesChoiceType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *RequestBody) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RequestBody{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `ValueType:` + fmt.Sprintf("%v", this.ValueType) + `,`, - `}`, - }, "") - return s -} -func (this *RequestBody_ExactValue) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RequestBody_ExactValue{`, - `ExactValue:` + fmt.Sprintf("%v", this.ExactValue) + `,`, - `}`, - }, "") - return s -} -func (this *RequestBody_RegexValue) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&RequestBody_RegexValue{`, - `RegexValue:` + fmt.Sprintf("%v", this.RegexValue) + `,`, - `}`, - }, "") - return s -} -func (this *Query) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Query{`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `ValueType:` + fmt.Sprintf("%v", this.ValueType) + `,`, - `}`, - }, "") - return s -} -func (this *Query_ExactValue) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Query_ExactValue{`, - `ExactValue:` + fmt.Sprintf("%v", this.ExactValue) + `,`, - `}`, - }, "") - return s -} -func (this *Query_RegexValue) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Query_RegexValue{`, - `RegexValue:` + fmt.Sprintf("%v", this.RegexValue) + `,`, - `}`, - }, "") - return s -} -func (this *Query_CheckPresence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Query_CheckPresence{`, - `CheckPresence:` + strings.Replace(fmt.Sprintf("%v", this.CheckPresence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefenseType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefenseType{`, - `RegionalEndpoint:` + fmt.Sprintf("%v", this.RegionalEndpoint) + `,`, - `Policy:` + strings.Replace(this.Policy.String(), "ShapeBotDefensePolicyType", "ShapeBotDefensePolicyType", 1) + `,`, - `Timeout:` + fmt.Sprintf("%v", this.Timeout) + `,`, - `CorsSupportChoice:` + fmt.Sprintf("%v", this.CorsSupportChoice) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefenseType_EnableCorsSupport) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefenseType_EnableCorsSupport{`, - `EnableCorsSupport:` + strings.Replace(fmt.Sprintf("%v", this.EnableCorsSupport), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefenseType_DisableCorsSupport) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefenseType_DisableCorsSupport{`, - `DisableCorsSupport:` + strings.Replace(fmt.Sprintf("%v", this.DisableCorsSupport), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *BotDefenseAdvancedType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BotDefenseAdvancedType{`, - `Web:` + strings.Replace(fmt.Sprintf("%v", this.Web), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `Mobile:` + strings.Replace(fmt.Sprintf("%v", this.Mobile), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `Policy:` + strings.Replace(this.Policy.String(), "BotDefenseAdvancedPolicyType", "BotDefenseAdvancedPolicyType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType) String() string { - if this == nil { - return "nil" - } - repeatedStringForProtectedAppEndpoints := "[]*AppEndpointType{" - for _, f := range this.ProtectedAppEndpoints { - repeatedStringForProtectedAppEndpoints += strings.Replace(f.String(), "AppEndpointType", "AppEndpointType", 1) + "," - } - repeatedStringForProtectedAppEndpoints += "}" - s := strings.Join([]string{`&ShapeBotDefensePolicyType{`, - `ProtectedAppEndpoints:` + repeatedStringForProtectedAppEndpoints + `,`, - `JsDownloadPath:` + fmt.Sprintf("%v", this.JsDownloadPath) + `,`, - `JavaScriptChoice:` + fmt.Sprintf("%v", this.JavaScriptChoice) + `,`, - `MobileSdkChoice:` + fmt.Sprintf("%v", this.MobileSdkChoice) + `,`, - `JavascriptMode:` + fmt.Sprintf("%v", this.JavascriptMode) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType_DisableJsInsert) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefensePolicyType_DisableJsInsert{`, - `DisableJsInsert:` + strings.Replace(fmt.Sprintf("%v", this.DisableJsInsert), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType_JsInsertAllPages) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefensePolicyType_JsInsertAllPages{`, - `JsInsertAllPages:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPages), "ShapeJavaScriptInsertAllType", "ShapeJavaScriptInsertAllType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType_JsInsertAllPagesExcept) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefensePolicyType_JsInsertAllPagesExcept{`, - `JsInsertAllPagesExcept:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertAllPagesExcept), "ShapeJavaScriptInsertAllWithExceptionsType", "ShapeJavaScriptInsertAllWithExceptionsType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType_JsInsertionRules) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefensePolicyType_JsInsertionRules{`, - `JsInsertionRules:` + strings.Replace(fmt.Sprintf("%v", this.JsInsertionRules), "ShapeJavaScriptInsertType", "ShapeJavaScriptInsertType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType_DisableMobileSdk) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefensePolicyType_DisableMobileSdk{`, - `DisableMobileSdk:` + strings.Replace(fmt.Sprintf("%v", this.DisableMobileSdk), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeBotDefensePolicyType_MobileSdkConfig) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeBotDefensePolicyType_MobileSdkConfig{`, - `MobileSdkConfig:` + strings.Replace(fmt.Sprintf("%v", this.MobileSdkConfig), "MobileSDKConfigType", "MobileSDKConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *MobileTrafficIdentifierType) String() string { - if this == nil { - return "nil" - } - repeatedStringForHeaders := "[]*HeaderMatcherTypeBasic{" - for _, f := range this.Headers { - repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherTypeBasic", "policy.HeaderMatcherTypeBasic", 1) + "," - } - repeatedStringForHeaders += "}" - s := strings.Join([]string{`&MobileTrafficIdentifierType{`, - `Headers:` + repeatedStringForHeaders + `,`, - `}`, - }, "") - return s -} -func (this *MobileSDKConfigType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&MobileSDKConfigType{`, - `ReloadHeaderName:` + fmt.Sprintf("%v", this.ReloadHeaderName) + `,`, - `MobileIdentifier:` + strings.Replace(this.MobileIdentifier.String(), "MobileTrafficIdentifierType", "MobileTrafficIdentifierType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `HttpMethods:` + fmt.Sprintf("%v", this.HttpMethods) + `,`, - `Protocol:` + fmt.Sprintf("%v", this.Protocol) + `,`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, - `AppTrafficTypeChoice:` + fmt.Sprintf("%v", this.AppTrafficTypeChoice) + `,`, - `Mitigation:` + strings.Replace(fmt.Sprintf("%v", this.Mitigation), "ShapeBotMitigationAction", "policy.ShapeBotMitigationAction", 1) + `,`, - `FlowLabelChoice:` + fmt.Sprintf("%v", this.FlowLabelChoice) + `,`, - `GoodbotChoice:` + fmt.Sprintf("%v", this.GoodbotChoice) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_Domain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_Domain{`, - `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_Web) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_Web{`, - `Web:` + strings.Replace(fmt.Sprintf("%v", this.Web), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_Mobile) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_Mobile{`, - `Mobile:` + strings.Replace(fmt.Sprintf("%v", this.Mobile), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_WebMobile) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_WebMobile{`, - `WebMobile:` + strings.Replace(fmt.Sprintf("%v", this.WebMobile), "WebMobileTrafficType", "WebMobileTrafficType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_UndefinedFlowLabel) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_UndefinedFlowLabel{`, - `UndefinedFlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.UndefinedFlowLabel), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_FlowLabel) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_FlowLabel{`, - `FlowLabel:` + strings.Replace(fmt.Sprintf("%v", this.FlowLabel), "BotDefenseFlowLabelCategoriesChoiceType", "schema.BotDefenseFlowLabelCategoriesChoiceType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_MitigateGoodBots) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_MitigateGoodBots{`, - `MitigateGoodBots:` + strings.Replace(fmt.Sprintf("%v", this.MitigateGoodBots), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *AppEndpointType_AllowGoodBots) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&AppEndpointType_AllowGoodBots{`, - `AllowGoodBots:` + strings.Replace(fmt.Sprintf("%v", this.AllowGoodBots), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *WebMobileTrafficType) String() string { - if this == nil { - return "nil" - } - repeatedStringForHeaders := "[]*HeaderMatcherTypeBasic{" - for _, f := range this.Headers { - repeatedStringForHeaders += strings.Replace(fmt.Sprintf("%v", f), "HeaderMatcherTypeBasic", "policy.HeaderMatcherTypeBasic", 1) + "," - } - repeatedStringForHeaders += "}" - s := strings.Join([]string{`&WebMobileTrafficType{`, - `Header:` + strings.Replace(fmt.Sprintf("%v", this.Header), "HeaderMatcherTypeBasic", "policy.HeaderMatcherTypeBasic", 1) + `,`, - `Headers:` + repeatedStringForHeaders + `,`, - `MobileIdentifier:` + fmt.Sprintf("%v", this.MobileIdentifier) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptInsertType) String() string { - if this == nil { - return "nil" - } - repeatedStringForRules := "[]*ShapeJavaScriptInsertionRule{" - for _, f := range this.Rules { - repeatedStringForRules += strings.Replace(f.String(), "ShapeJavaScriptInsertionRule", "ShapeJavaScriptInsertionRule", 1) + "," - } - repeatedStringForRules += "}" - repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" - for _, f := range this.ExcludeList { - repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," - } - repeatedStringForExcludeList += "}" - s := strings.Join([]string{`&ShapeJavaScriptInsertType{`, - `Rules:` + repeatedStringForRules + `,`, - `ExcludeList:` + repeatedStringForExcludeList + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptInsertAllWithExceptionsType) String() string { - if this == nil { - return "nil" - } - repeatedStringForExcludeList := "[]*ShapeJavaScriptExclusionRule{" - for _, f := range this.ExcludeList { - repeatedStringForExcludeList += strings.Replace(f.String(), "ShapeJavaScriptExclusionRule", "ShapeJavaScriptExclusionRule", 1) + "," - } - repeatedStringForExcludeList += "}" - s := strings.Join([]string{`&ShapeJavaScriptInsertAllWithExceptionsType{`, - `JavascriptLocation:` + fmt.Sprintf("%v", this.JavascriptLocation) + `,`, - `ExcludeList:` + repeatedStringForExcludeList + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptInsertAllType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptInsertAllType{`, - `JavascriptLocation:` + fmt.Sprintf("%v", this.JavascriptLocation) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptInsertionRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptInsertionRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `JavascriptLocation:` + fmt.Sprintf("%v", this.JavascriptLocation) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptInsertionRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptInsertionRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptInsertionRule_Domain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptInsertionRule_Domain{`, - `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptExclusionRule) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptExclusionRule{`, - `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "MessageMetaType", "schema.MessageMetaType", 1) + `,`, - `DomainMatcherChoice:` + fmt.Sprintf("%v", this.DomainMatcherChoice) + `,`, - `Path:` + strings.Replace(fmt.Sprintf("%v", this.Path), "PathMatcherType", "schema.PathMatcherType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptExclusionRule_AnyDomain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptExclusionRule_AnyDomain{`, - `AnyDomain:` + strings.Replace(fmt.Sprintf("%v", this.AnyDomain), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ShapeJavaScriptExclusionRule_Domain) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ShapeJavaScriptExclusionRule_Domain{`, - `Domain:` + strings.Replace(fmt.Sprintf("%v", this.Domain), "DomainType", "schema.DomainType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *IPThreatCategoryListType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&IPThreatCategoryListType{`, - `IpThreatCategories:` + fmt.Sprintf("%v", this.IpThreatCategories) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType) String() string { - if this == nil { - return "nil" - } - repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" - for _, f := range this.DefaultRoutePools { - repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," - } - repeatedStringForDefaultRoutePools += "}" - repeatedStringForRoutes := "[]*RouteType{" - for _, f := range this.Routes { - repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," - } - repeatedStringForRoutes += "}" - repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" - for _, f := range this.WafExclusionRules { - repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," - } - repeatedStringForWafExclusionRules += "}" - repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.BlockedClients { - repeatedStringForBlockedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForBlockedClients += "}" - repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.TrustedClients { - repeatedStringForTrustedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForTrustedClients += "}" - repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" - for _, f := range this.DdosMitigationRules { - repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," - } - repeatedStringForDdosMitigationRules += "}" - repeatedStringForDownstreamTlsCertificateExpirationTimestamps := "[]*Timestamp{" - for _, f := range this.DownstreamTlsCertificateExpirationTimestamps { - repeatedStringForDownstreamTlsCertificateExpirationTimestamps += strings.Replace(fmt.Sprintf("%v", f), "Timestamp", "types.Timestamp", 1) + "," - } - repeatedStringForDownstreamTlsCertificateExpirationTimestamps += "}" - repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" - for _, f := range this.DataGuardRules { - repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," - } - repeatedStringForDataGuardRules += "}" - repeatedStringForGraphqlRules := "[]*GraphQLRule{" - for _, f := range this.GraphqlRules { - repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," - } - repeatedStringForGraphqlRules += "}" - repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" - for _, f := range this.ProtectedCookies { - repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," - } - repeatedStringForProtectedCookies += "}" - repeatedStringForDnsInfo := "[]*DnsInfo{" - for _, f := range this.DnsInfo { - repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," - } - repeatedStringForDnsInfo += "}" - repeatedStringForInternetVipInfo := "[]*InternetVIPInfo{" - for _, f := range this.InternetVipInfo { - repeatedStringForInternetVipInfo += strings.Replace(fmt.Sprintf("%v", f), "InternetVIPInfo", "views.InternetVIPInfo", 1) + "," - } - repeatedStringForInternetVipInfo += "}" - s := strings.Join([]string{`&GlobalSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, - `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, - `Routes:` + repeatedStringForRoutes + `,`, - `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, - `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, - `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, - `HostRewriteParams:` + fmt.Sprintf("%v", this.HostRewriteParams) + `,`, - `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, - `BlockedClients:` + repeatedStringForBlockedClients + `,`, - `TrustedClients:` + repeatedStringForTrustedClients + `,`, - `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, - `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, - `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, - `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, - `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, - `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, - `DownstreamTlsCertificateExpirationTimestamps:` + repeatedStringForDownstreamTlsCertificateExpirationTimestamps + `,`, - `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, - `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, - `ApiProtectionRules:` + strings.Replace(this.ApiProtectionRules.String(), "APIProtectionRules", "APIProtectionRules", 1) + `,`, - `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, - `DdosDetectionChoice:` + fmt.Sprintf("%v", this.DdosDetectionChoice) + `,`, - `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, - `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, - `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, - `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, - `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, - `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, - `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, - `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, - `JwtValidation:` + strings.Replace(this.JwtValidation.String(), "JWTValidation", "JWTValidation", 1) + `,`, - `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, - `ThreatIntelligenceChoice:` + fmt.Sprintf("%v", this.ThreatIntelligenceChoice) + `,`, - `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, - `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, - `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, - `DnsInfo:` + repeatedStringForDnsInfo + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, - `AutoCertState:` + fmt.Sprintf("%v", this.AutoCertState) + `,`, - `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, - `InternetVipInfo:` + repeatedStringForInternetVipInfo + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_Https) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_AdvertiseOnPublic) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_AdvertiseOnPublic{`, - `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_AdvertiseCustom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_AdvertiseCustom{`, - `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableWaf) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableWaf{`, - `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DoNotAdvertise) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DoNotAdvertise{`, - `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_AdvertiseOnPublicDefaultVip) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_AdvertiseOnPublicDefaultVip{`, - `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_JsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_JsChallenge{`, - `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_UserIdentification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_UserIdentification{`, - `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableRateLimit{`, - `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_RateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_RateLimit{`, - `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "RateLimitConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_CaptchaChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_CaptchaChallenge{`, - `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_NoChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_NoChallenge{`, - `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_AutoHostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_AutoHostRewrite{`, - `AutoHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.AutoHostRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_HostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_HostRewrite{`, - `HostRewrite:` + fmt.Sprintf("%v", this.HostRewrite) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableHostRewrite) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableHostRewrite{`, - `DisableHostRewrite:` + strings.Replace(fmt.Sprintf("%v", this.DisableHostRewrite), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ServicePoliciesFromNamespace) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ServicePoliciesFromNamespace{`, - `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_NoServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_NoServicePolicies{`, - `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ActiveServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ActiveServicePolicies{`, - `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "ServicePolicyList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_RoundRobin) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_RoundRobin{`, - `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_LeastActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_LeastActive{`, - `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_Random) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_Random{`, - `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_SourceIpStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_SourceIpStickiness{`, - `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_CookieStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_CookieStickiness{`, - `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_RingHash) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_RingHash{`, - `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_PolicyBasedChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_PolicyBasedChallenge{`, - `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "PolicyBasedChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_AppFirewall) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_AppFirewall{`, - `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_SingleLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_SingleLbApp{`, - `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_MultiLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_MultiLbApp{`, - `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableBotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableBotDefense{`, - `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_BotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_BotDefense{`, - `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_UserIdClientIp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_UserIdClientIp{`, - `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ApiDefinitions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ApiDefinitions{`, - `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "ApiDefinitionList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableIpReputation{`, - `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableIpReputation{`, - `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "IPThreatCategoryListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ApiSpecification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ApiSpecification{`, - `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "APISpecificationSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ApiRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ApiRateLimit{`, - `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "APIRateLimit", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableApiDefinition{`, - `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ApiDefinition{`, - `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableTrustClientIpHeaders{`, - `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableTrustClientIpHeaders{`, - `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableDdosDetection{`, - `EnableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableDdosDetection), "EnableDDoSDetectionSetting", "EnableDDoSDetectionSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableDdosDetection{`, - `DisableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableDdosDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableMaliciousUserDetection{`, - `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableMaliciousUserDetection{`, - `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableApiDiscovery{`, - `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "ApiDiscoverySetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableApiDiscovery{`, - `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableClientSideDefense{`, - `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_ClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_ClientSideDefense{`, - `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DefaultPool) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DefaultPool{`, - `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DefaultPoolList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DefaultPoolList{`, - `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_SlowDdosMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_SlowDdosMitigation{`, - `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableChallenge{`, - `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "EnableChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_SystemDefaultTimeouts) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_SystemDefaultTimeouts{`, - `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_DisableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_DisableThreatIntelligence{`, - `DisableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_EnableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_EnableThreatIntelligence{`, - `EnableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_L7DdosActionDefault) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_L7DdosActionDefault{`, - `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_L7DdosActionBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_L7DdosActionBlock{`, - `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_L7DdosActionJsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_L7DdosActionJsChallenge{`, - `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_L7DdosActionNone) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_L7DdosActionNone{`, - `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GlobalSpecType_BotDefenseAdvanced) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GlobalSpecType_BotDefenseAdvanced{`, - `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *JWTValidation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&JWTValidation{`, - `Target:` + strings.Replace(this.Target.String(), "Target", "Target", 1) + `,`, - `TokenLocation:` + strings.Replace(this.TokenLocation.String(), "TokenLocation", "TokenLocation", 1) + `,`, - `Action:` + strings.Replace(fmt.Sprintf("%v", this.Action), "Action", "schema.Action", 1) + `,`, - `JwksConfiguration:` + fmt.Sprintf("%v", this.JwksConfiguration) + `,`, - `ReservedClaims:` + strings.Replace(this.ReservedClaims.String(), "ReservedClaims", "ReservedClaims", 1) + `,`, - `MandatoryClaims:` + strings.Replace(this.MandatoryClaims.String(), "MandatoryClaims", "MandatoryClaims", 1) + `,`, - `}`, - }, "") - return s -} -func (this *JWTValidation_AuthServerUri) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&JWTValidation_AuthServerUri{`, - `AuthServerUri:` + fmt.Sprintf("%v", this.AuthServerUri) + `,`, - `}`, - }, "") - return s -} -func (this *JWTValidation_Jwks) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&JWTValidation_Jwks{`, - `Jwks:` + fmt.Sprintf("%v", this.Jwks) + `,`, - `}`, - }, "") - return s -} -func (this *JWTValidation_JwksConfig) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&JWTValidation_JwksConfig{`, - `JwksConfig:` + strings.Replace(fmt.Sprintf("%v", this.JwksConfig), "JWKS", "JWKS", 1) + `,`, - `}`, - }, "") - return s -} -func (this *MandatoryClaims) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&MandatoryClaims{`, - `ClaimNames:` + fmt.Sprintf("%v", this.ClaimNames) + `,`, - `}`, - }, "") - return s -} -func (this *JWKS) string() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&JWKS{`, - `Cleartext:` + fmt.Sprintf("%v", this.Cleartext) + `,`, - `}`, - }, "") - return s -} -func (this *Target) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Target{`, - `Target:` + fmt.Sprintf("%v", this.Target) + `,`, - `}`, - }, "") - return s -} -func (this *Target_AllEndpoint) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Target_AllEndpoint{`, - `AllEndpoint:` + strings.Replace(fmt.Sprintf("%v", this.AllEndpoint), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *Target_ApiGroups) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Target_ApiGroups{`, - `ApiGroups:` + strings.Replace(fmt.Sprintf("%v", this.ApiGroups), "APIGroups", "APIGroups", 1) + `,`, - `}`, - }, "") - return s -} -func (this *Target_BasePaths) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Target_BasePaths{`, - `BasePaths:` + strings.Replace(fmt.Sprintf("%v", this.BasePaths), "BasePathsType", "BasePathsType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *TokenLocation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&TokenLocation{`, - `TokenLocation:` + fmt.Sprintf("%v", this.TokenLocation) + `,`, - `}`, - }, "") - return s -} -func (this *TokenLocation_BearerToken) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&TokenLocation_BearerToken{`, - `BearerToken:` + strings.Replace(fmt.Sprintf("%v", this.BearerToken), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *TokenLocation_Cookie) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&TokenLocation_Cookie{`, - `Cookie:` + fmt.Sprintf("%v", this.Cookie) + `,`, - `}`, - }, "") - return s -} -func (this *TokenLocation_Header) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&TokenLocation_Header{`, - `Header:` + fmt.Sprintf("%v", this.Header) + `,`, - `}`, - }, "") - return s -} -func (this *TokenLocation_QueryParam) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&TokenLocation_QueryParam{`, - `QueryParam:` + fmt.Sprintf("%v", this.QueryParam) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims{`, - `IssuerValidation:` + fmt.Sprintf("%v", this.IssuerValidation) + `,`, - `AudienceValidation:` + fmt.Sprintf("%v", this.AudienceValidation) + `,`, - `ValidatePeriod:` + fmt.Sprintf("%v", this.ValidatePeriod) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims_IssuerDisable) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims_IssuerDisable{`, - `IssuerDisable:` + strings.Replace(fmt.Sprintf("%v", this.IssuerDisable), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims_Issuer) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims_Issuer{`, - `Issuer:` + fmt.Sprintf("%v", this.Issuer) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims_AudienceDisable) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims_AudienceDisable{`, - `AudienceDisable:` + strings.Replace(fmt.Sprintf("%v", this.AudienceDisable), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims_Audience) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims_Audience{`, - `Audience:` + strings.Replace(fmt.Sprintf("%v", this.Audience), "Audiences", "Audiences", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims_ValidatePeriodDisable) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims_ValidatePeriodDisable{`, - `ValidatePeriodDisable:` + strings.Replace(fmt.Sprintf("%v", this.ValidatePeriodDisable), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReservedClaims_ValidatePeriodEnable) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReservedClaims_ValidatePeriodEnable{`, - `ValidatePeriodEnable:` + strings.Replace(fmt.Sprintf("%v", this.ValidatePeriodEnable), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *APIGroups) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&APIGroups{`, - `ApiGroups:` + fmt.Sprintf("%v", this.ApiGroups) + `,`, - `}`, - }, "") - return s -} -func (this *BasePathsType) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&BasePathsType{`, - `BasePaths:` + fmt.Sprintf("%v", this.BasePaths) + `,`, - `}`, - }, "") - return s -} -func (this *Audiences) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Audiences{`, - `Audiences:` + fmt.Sprintf("%v", this.Audiences) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType) String() string { - if this == nil { - return "nil" - } - repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" - for _, f := range this.DefaultRoutePools { - repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," - } - repeatedStringForDefaultRoutePools += "}" - repeatedStringForRoutes := "[]*RouteType{" - for _, f := range this.Routes { - repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," - } - repeatedStringForRoutes += "}" - repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" - for _, f := range this.WafExclusionRules { - repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," - } - repeatedStringForWafExclusionRules += "}" - repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.BlockedClients { - repeatedStringForBlockedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForBlockedClients += "}" - repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.TrustedClients { - repeatedStringForTrustedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForTrustedClients += "}" - repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" - for _, f := range this.DdosMitigationRules { - repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," - } - repeatedStringForDdosMitigationRules += "}" - repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" - for _, f := range this.DataGuardRules { - repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," - } - repeatedStringForDataGuardRules += "}" - repeatedStringForGraphqlRules := "[]*GraphQLRule{" - for _, f := range this.GraphqlRules { - repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," - } - repeatedStringForGraphqlRules += "}" - repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" - for _, f := range this.ProtectedCookies { - repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," - } - repeatedStringForProtectedCookies += "}" - s := strings.Join([]string{`&CreateSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, - `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, - `Routes:` + repeatedStringForRoutes + `,`, - `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, - `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, - `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, - `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, - `BlockedClients:` + repeatedStringForBlockedClients + `,`, - `TrustedClients:` + repeatedStringForTrustedClients + `,`, - `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, - `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, - `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, - `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, - `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, - `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, - `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, - `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, - `ApiProtectionRules:` + strings.Replace(this.ApiProtectionRules.String(), "APIProtectionRules", "APIProtectionRules", 1) + `,`, - `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, - `DdosDetectionChoice:` + fmt.Sprintf("%v", this.DdosDetectionChoice) + `,`, - `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, - `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, - `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, - `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, - `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, - `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, - `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, - `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, - `JwtValidation:` + strings.Replace(this.JwtValidation.String(), "JWTValidation", "JWTValidation", 1) + `,`, - `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, - `ThreatIntelligenceChoice:` + fmt.Sprintf("%v", this.ThreatIntelligenceChoice) + `,`, - `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_Https) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_AdvertiseOnPublic) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_AdvertiseOnPublic{`, - `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_AdvertiseCustom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_AdvertiseCustom{`, - `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableWaf) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableWaf{`, - `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DoNotAdvertise) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DoNotAdvertise{`, - `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_AdvertiseOnPublicDefaultVip) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_AdvertiseOnPublicDefaultVip{`, - `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_JsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_JsChallenge{`, - `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_UserIdentification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_UserIdentification{`, - `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableRateLimit{`, - `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_RateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_RateLimit{`, - `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "RateLimitConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_CaptchaChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_CaptchaChallenge{`, - `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_NoChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_NoChallenge{`, - `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ServicePoliciesFromNamespace) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ServicePoliciesFromNamespace{`, - `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_NoServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_NoServicePolicies{`, - `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ActiveServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ActiveServicePolicies{`, - `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "ServicePolicyList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_RoundRobin) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_RoundRobin{`, - `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_LeastActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_LeastActive{`, - `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_Random) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_Random{`, - `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_SourceIpStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_SourceIpStickiness{`, - `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_CookieStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_CookieStickiness{`, - `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_RingHash) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_RingHash{`, - `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_PolicyBasedChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_PolicyBasedChallenge{`, - `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "PolicyBasedChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_AppFirewall) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_AppFirewall{`, - `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_SingleLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_SingleLbApp{`, - `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_MultiLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_MultiLbApp{`, - `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableBotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableBotDefense{`, - `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_BotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_BotDefense{`, - `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_UserIdClientIp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_UserIdClientIp{`, - `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ApiDefinitions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ApiDefinitions{`, - `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "ApiDefinitionList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableIpReputation{`, - `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableIpReputation{`, - `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "IPThreatCategoryListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ApiSpecification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ApiSpecification{`, - `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "APISpecificationSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ApiRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ApiRateLimit{`, - `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "APIRateLimit", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableApiDefinition{`, - `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ApiDefinition{`, - `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableTrustClientIpHeaders{`, - `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableTrustClientIpHeaders{`, - `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableDdosDetection{`, - `EnableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableDdosDetection), "EnableDDoSDetectionSetting", "EnableDDoSDetectionSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableDdosDetection{`, - `DisableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableDdosDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableMaliciousUserDetection{`, - `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableMaliciousUserDetection{`, - `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableApiDiscovery{`, - `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "ApiDiscoverySetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableApiDiscovery{`, - `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableClientSideDefense{`, - `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_ClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_ClientSideDefense{`, - `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DefaultPool) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DefaultPool{`, - `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DefaultPoolList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DefaultPoolList{`, - `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_SlowDdosMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_SlowDdosMitigation{`, - `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableChallenge{`, - `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "EnableChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_SystemDefaultTimeouts) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_SystemDefaultTimeouts{`, - `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_DisableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_DisableThreatIntelligence{`, - `DisableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_EnableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_EnableThreatIntelligence{`, - `EnableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_L7DdosActionDefault) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_L7DdosActionDefault{`, - `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_L7DdosActionBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_L7DdosActionBlock{`, - `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_L7DdosActionJsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_L7DdosActionJsChallenge{`, - `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_L7DdosActionNone) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_L7DdosActionNone{`, - `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *CreateSpecType_BotDefenseAdvanced) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CreateSpecType_BotDefenseAdvanced{`, - `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType) String() string { - if this == nil { - return "nil" - } - repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" - for _, f := range this.DefaultRoutePools { - repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," - } - repeatedStringForDefaultRoutePools += "}" - repeatedStringForRoutes := "[]*RouteType{" - for _, f := range this.Routes { - repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," - } - repeatedStringForRoutes += "}" - repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" - for _, f := range this.WafExclusionRules { - repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," - } - repeatedStringForWafExclusionRules += "}" - repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.BlockedClients { - repeatedStringForBlockedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForBlockedClients += "}" - repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.TrustedClients { - repeatedStringForTrustedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForTrustedClients += "}" - repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" - for _, f := range this.DdosMitigationRules { - repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," - } - repeatedStringForDdosMitigationRules += "}" - repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" - for _, f := range this.DataGuardRules { - repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," - } - repeatedStringForDataGuardRules += "}" - repeatedStringForGraphqlRules := "[]*GraphQLRule{" - for _, f := range this.GraphqlRules { - repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," - } - repeatedStringForGraphqlRules += "}" - repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" - for _, f := range this.ProtectedCookies { - repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," - } - repeatedStringForProtectedCookies += "}" - s := strings.Join([]string{`&ReplaceSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, - `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, - `Routes:` + repeatedStringForRoutes + `,`, - `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, - `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, - `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, - `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, - `BlockedClients:` + repeatedStringForBlockedClients + `,`, - `TrustedClients:` + repeatedStringForTrustedClients + `,`, - `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, - `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, - `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, - `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, - `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, - `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, - `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, - `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, - `ApiProtectionRules:` + strings.Replace(this.ApiProtectionRules.String(), "APIProtectionRules", "APIProtectionRules", 1) + `,`, - `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, - `DdosDetectionChoice:` + fmt.Sprintf("%v", this.DdosDetectionChoice) + `,`, - `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, - `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, - `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, - `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, - `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, - `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, - `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, - `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, - `JwtValidation:` + strings.Replace(this.JwtValidation.String(), "JWTValidation", "JWTValidation", 1) + `,`, - `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, - `ThreatIntelligenceChoice:` + fmt.Sprintf("%v", this.ThreatIntelligenceChoice) + `,`, - `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_Https) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_AdvertiseOnPublic) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_AdvertiseOnPublic{`, - `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_AdvertiseCustom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_AdvertiseCustom{`, - `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableWaf) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableWaf{`, - `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DoNotAdvertise) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DoNotAdvertise{`, - `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_AdvertiseOnPublicDefaultVip) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_AdvertiseOnPublicDefaultVip{`, - `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_JsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_JsChallenge{`, - `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_UserIdentification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_UserIdentification{`, - `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableRateLimit{`, - `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_RateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_RateLimit{`, - `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "RateLimitConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_CaptchaChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_CaptchaChallenge{`, - `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_NoChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_NoChallenge{`, - `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ServicePoliciesFromNamespace) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ServicePoliciesFromNamespace{`, - `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_NoServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_NoServicePolicies{`, - `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ActiveServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ActiveServicePolicies{`, - `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "ServicePolicyList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_RoundRobin) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_RoundRobin{`, - `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_LeastActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_LeastActive{`, - `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_Random) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_Random{`, - `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_SourceIpStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_SourceIpStickiness{`, - `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_CookieStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_CookieStickiness{`, - `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_RingHash) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_RingHash{`, - `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_PolicyBasedChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_PolicyBasedChallenge{`, - `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "PolicyBasedChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_AppFirewall) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_AppFirewall{`, - `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_SingleLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_SingleLbApp{`, - `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_MultiLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_MultiLbApp{`, - `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableBotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableBotDefense{`, - `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_BotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_BotDefense{`, - `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_UserIdClientIp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_UserIdClientIp{`, - `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ApiDefinitions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ApiDefinitions{`, - `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "ApiDefinitionList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableIpReputation{`, - `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableIpReputation{`, - `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "IPThreatCategoryListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ApiSpecification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ApiSpecification{`, - `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "APISpecificationSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ApiRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ApiRateLimit{`, - `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "APIRateLimit", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableApiDefinition{`, - `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ApiDefinition{`, - `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableTrustClientIpHeaders{`, - `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableTrustClientIpHeaders{`, - `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableDdosDetection{`, - `EnableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableDdosDetection), "EnableDDoSDetectionSetting", "EnableDDoSDetectionSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableDdosDetection{`, - `DisableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableDdosDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableMaliciousUserDetection{`, - `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableMaliciousUserDetection{`, - `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableApiDiscovery{`, - `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "ApiDiscoverySetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableApiDiscovery{`, - `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableClientSideDefense{`, - `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_ClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_ClientSideDefense{`, - `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DefaultPool) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DefaultPool{`, - `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DefaultPoolList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DefaultPoolList{`, - `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_SlowDdosMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_SlowDdosMitigation{`, - `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableChallenge{`, - `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "EnableChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_SystemDefaultTimeouts) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_SystemDefaultTimeouts{`, - `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_DisableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_DisableThreatIntelligence{`, - `DisableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_EnableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_EnableThreatIntelligence{`, - `EnableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_L7DdosActionDefault) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionDefault{`, - `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_L7DdosActionBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionBlock{`, - `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_L7DdosActionJsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionJsChallenge{`, - `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_L7DdosActionNone) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_L7DdosActionNone{`, - `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReplaceSpecType_BotDefenseAdvanced) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReplaceSpecType_BotDefenseAdvanced{`, - `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType) String() string { - if this == nil { - return "nil" - } - repeatedStringForDefaultRoutePools := "[]*OriginPoolWithWeight{" - for _, f := range this.DefaultRoutePools { - repeatedStringForDefaultRoutePools += strings.Replace(fmt.Sprintf("%v", f), "OriginPoolWithWeight", "views.OriginPoolWithWeight", 1) + "," - } - repeatedStringForDefaultRoutePools += "}" - repeatedStringForRoutes := "[]*RouteType{" - for _, f := range this.Routes { - repeatedStringForRoutes += strings.Replace(f.String(), "RouteType", "RouteType", 1) + "," - } - repeatedStringForRoutes += "}" - repeatedStringForWafExclusionRules := "[]*SimpleWafExclusionRule{" - for _, f := range this.WafExclusionRules { - repeatedStringForWafExclusionRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleWafExclusionRule", "policy.SimpleWafExclusionRule", 1) + "," - } - repeatedStringForWafExclusionRules += "}" - repeatedStringForBlockedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.BlockedClients { - repeatedStringForBlockedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForBlockedClients += "}" - repeatedStringForTrustedClients := "[]*SimpleClientSrcRule{" - for _, f := range this.TrustedClients { - repeatedStringForTrustedClients += strings.Replace(f.String(), "SimpleClientSrcRule", "SimpleClientSrcRule", 1) + "," - } - repeatedStringForTrustedClients += "}" - repeatedStringForDdosMitigationRules := "[]*DDoSMitigationRule{" - for _, f := range this.DdosMitigationRules { - repeatedStringForDdosMitigationRules += strings.Replace(f.String(), "DDoSMitigationRule", "DDoSMitigationRule", 1) + "," - } - repeatedStringForDdosMitigationRules += "}" - repeatedStringForDownstreamTlsCertificateExpirationTimestamps := "[]*Timestamp{" - for _, f := range this.DownstreamTlsCertificateExpirationTimestamps { - repeatedStringForDownstreamTlsCertificateExpirationTimestamps += strings.Replace(fmt.Sprintf("%v", f), "Timestamp", "types.Timestamp", 1) + "," - } - repeatedStringForDownstreamTlsCertificateExpirationTimestamps += "}" - repeatedStringForDataGuardRules := "[]*SimpleDataGuardRule{" - for _, f := range this.DataGuardRules { - repeatedStringForDataGuardRules += strings.Replace(fmt.Sprintf("%v", f), "SimpleDataGuardRule", "policy.SimpleDataGuardRule", 1) + "," - } - repeatedStringForDataGuardRules += "}" - repeatedStringForGraphqlRules := "[]*GraphQLRule{" - for _, f := range this.GraphqlRules { - repeatedStringForGraphqlRules += strings.Replace(fmt.Sprintf("%v", f), "GraphQLRule", "policy.GraphQLRule", 1) + "," - } - repeatedStringForGraphqlRules += "}" - repeatedStringForProtectedCookies := "[]*CookieManipulationOptionType{" - for _, f := range this.ProtectedCookies { - repeatedStringForProtectedCookies += strings.Replace(fmt.Sprintf("%v", f), "CookieManipulationOptionType", "schema.CookieManipulationOptionType", 1) + "," - } - repeatedStringForProtectedCookies += "}" - repeatedStringForDnsInfo := "[]*DnsInfo{" - for _, f := range this.DnsInfo { - repeatedStringForDnsInfo += strings.Replace(fmt.Sprintf("%v", f), "DnsInfo", "virtual_host_dns_info.DnsInfo", 1) + "," - } - repeatedStringForDnsInfo += "}" - repeatedStringForInternetVipInfo := "[]*InternetVIPInfo{" - for _, f := range this.InternetVipInfo { - repeatedStringForInternetVipInfo += strings.Replace(fmt.Sprintf("%v", f), "InternetVIPInfo", "views.InternetVIPInfo", 1) + "," - } - repeatedStringForInternetVipInfo += "}" - s := strings.Join([]string{`&GetSpecType{`, - `Domains:` + fmt.Sprintf("%v", this.Domains) + `,`, - `LoadbalancerType:` + fmt.Sprintf("%v", this.LoadbalancerType) + `,`, - `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, - `DefaultRoutePools:` + repeatedStringForDefaultRoutePools + `,`, - `Routes:` + repeatedStringForRoutes + `,`, - `CorsPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CorsPolicy), "CorsPolicy", "schema.CorsPolicy", 1) + `,`, - `WafChoice:` + fmt.Sprintf("%v", this.WafChoice) + `,`, - `AddLocation:` + fmt.Sprintf("%v", this.AddLocation) + `,`, - `ChallengeType:` + fmt.Sprintf("%v", this.ChallengeType) + `,`, - `MoreOption:` + strings.Replace(this.MoreOption.String(), "AdvancedOptionsType", "AdvancedOptionsType", 1) + `,`, - `UserIdChoice:` + fmt.Sprintf("%v", this.UserIdChoice) + `,`, - `RateLimitChoice:` + fmt.Sprintf("%v", this.RateLimitChoice) + `,`, - `MaliciousUserMitigation:` + strings.Replace(fmt.Sprintf("%v", this.MaliciousUserMitigation), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `WafExclusionRules:` + repeatedStringForWafExclusionRules + `,`, - `BlockedClients:` + repeatedStringForBlockedClients + `,`, - `TrustedClients:` + repeatedStringForTrustedClients + `,`, - `DdosMitigationRules:` + repeatedStringForDdosMitigationRules + `,`, - `ServicePolicyChoice:` + fmt.Sprintf("%v", this.ServicePolicyChoice) + `,`, - `HashPolicyChoice:` + fmt.Sprintf("%v", this.HashPolicyChoice) + `,`, - `MlConfigChoice:` + fmt.Sprintf("%v", this.MlConfigChoice) + `,`, - `BotDefenseChoice:` + fmt.Sprintf("%v", this.BotDefenseChoice) + `,`, - `ApiDefinitionChoice:` + fmt.Sprintf("%v", this.ApiDefinitionChoice) + `,`, - `DownstreamTlsCertificateExpirationTimestamps:` + repeatedStringForDownstreamTlsCertificateExpirationTimestamps + `,`, - `DataGuardRules:` + repeatedStringForDataGuardRules + `,`, - `IpReputationChoice:` + fmt.Sprintf("%v", this.IpReputationChoice) + `,`, - `ApiProtectionRules:` + strings.Replace(this.ApiProtectionRules.String(), "APIProtectionRules", "APIProtectionRules", 1) + `,`, - `TrustClientIpHeadersChoice:` + fmt.Sprintf("%v", this.TrustClientIpHeadersChoice) + `,`, - `DdosDetectionChoice:` + fmt.Sprintf("%v", this.DdosDetectionChoice) + `,`, - `MaliciousUserDetectionChoice:` + fmt.Sprintf("%v", this.MaliciousUserDetectionChoice) + `,`, - `ApiDiscoveryChoice:` + fmt.Sprintf("%v", this.ApiDiscoveryChoice) + `,`, - `ClientSideDefenseChoice:` + fmt.Sprintf("%v", this.ClientSideDefenseChoice) + `,`, - `OriginPoolChoice:` + fmt.Sprintf("%v", this.OriginPoolChoice) + `,`, - `CsrfPolicy:` + strings.Replace(fmt.Sprintf("%v", this.CsrfPolicy), "CsrfPolicy", "schema.CsrfPolicy", 1) + `,`, - `GraphqlRules:` + repeatedStringForGraphqlRules + `,`, - `ProtectedCookies:` + repeatedStringForProtectedCookies + `,`, - `SlowDdosMitigationChoice:` + fmt.Sprintf("%v", this.SlowDdosMitigationChoice) + `,`, - `JwtValidation:` + strings.Replace(this.JwtValidation.String(), "JWTValidation", "JWTValidation", 1) + `,`, - `OriginServerSubsetRuleList:` + strings.Replace(this.OriginServerSubsetRuleList.String(), "OriginServerSubsetRuleListType", "OriginServerSubsetRuleListType", 1) + `,`, - `ThreatIntelligenceChoice:` + fmt.Sprintf("%v", this.ThreatIntelligenceChoice) + `,`, - `L7DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.L7DdosAutoMitigationAction) + `,`, - `CertState:` + fmt.Sprintf("%v", this.CertState) + `,`, - `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, - `DnsInfo:` + repeatedStringForDnsInfo + `,`, - `State:` + fmt.Sprintf("%v", this.State) + `,`, - `AutoCertInfo:` + strings.Replace(fmt.Sprintf("%v", this.AutoCertInfo), "AutoCertInfoType", "virtual_host.AutoCertInfoType", 1) + `,`, - `InternetVipInfo:` + repeatedStringForInternetVipInfo + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_Http) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_Http{`, - `Http:` + strings.Replace(fmt.Sprintf("%v", this.Http), "ProxyTypeHttp", "ProxyTypeHttp", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_Https) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_Https{`, - `Https:` + strings.Replace(fmt.Sprintf("%v", this.Https), "ProxyTypeHttps", "ProxyTypeHttps", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_AdvertiseOnPublic) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_AdvertiseOnPublic{`, - `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_AdvertiseCustom) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_AdvertiseCustom{`, - `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableWaf) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableWaf{`, - `DisableWaf:` + strings.Replace(fmt.Sprintf("%v", this.DisableWaf), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DoNotAdvertise) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DoNotAdvertise{`, - `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_AdvertiseOnPublicDefaultVip) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_AdvertiseOnPublicDefaultVip{`, - `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_JsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_JsChallenge{`, - `JsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.JsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_UserIdentification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_UserIdentification{`, - `UserIdentification:` + strings.Replace(fmt.Sprintf("%v", this.UserIdentification), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableRateLimit{`, - `DisableRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.DisableRateLimit), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_RateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_RateLimit{`, - `RateLimit:` + strings.Replace(fmt.Sprintf("%v", this.RateLimit), "RateLimitConfigType", "RateLimitConfigType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_CaptchaChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_CaptchaChallenge{`, - `CaptchaChallenge:` + strings.Replace(fmt.Sprintf("%v", this.CaptchaChallenge), "CaptchaChallengeType", "virtual_host.CaptchaChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_NoChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_NoChallenge{`, - `NoChallenge:` + strings.Replace(fmt.Sprintf("%v", this.NoChallenge), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_HttpsAutoCert) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_HttpsAutoCert{`, - `HttpsAutoCert:` + strings.Replace(fmt.Sprintf("%v", this.HttpsAutoCert), "ProxyTypeHttpsAutoCerts", "ProxyTypeHttpsAutoCerts", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ServicePoliciesFromNamespace) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ServicePoliciesFromNamespace{`, - `ServicePoliciesFromNamespace:` + strings.Replace(fmt.Sprintf("%v", this.ServicePoliciesFromNamespace), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_NoServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_NoServicePolicies{`, - `NoServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.NoServicePolicies), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ActiveServicePolicies) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ActiveServicePolicies{`, - `ActiveServicePolicies:` + strings.Replace(fmt.Sprintf("%v", this.ActiveServicePolicies), "ServicePolicyList", "ServicePolicyList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_RoundRobin) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_RoundRobin{`, - `RoundRobin:` + strings.Replace(fmt.Sprintf("%v", this.RoundRobin), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_LeastActive) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_LeastActive{`, - `LeastActive:` + strings.Replace(fmt.Sprintf("%v", this.LeastActive), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_Random) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_Random{`, - `Random:` + strings.Replace(fmt.Sprintf("%v", this.Random), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_SourceIpStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_SourceIpStickiness{`, - `SourceIpStickiness:` + strings.Replace(fmt.Sprintf("%v", this.SourceIpStickiness), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_CookieStickiness) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_CookieStickiness{`, - `CookieStickiness:` + strings.Replace(fmt.Sprintf("%v", this.CookieStickiness), "CookieForHashing", "route.CookieForHashing", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_RingHash) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_RingHash{`, - `RingHash:` + strings.Replace(fmt.Sprintf("%v", this.RingHash), "HashPolicyListType", "HashPolicyListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_PolicyBasedChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_PolicyBasedChallenge{`, - `PolicyBasedChallenge:` + strings.Replace(fmt.Sprintf("%v", this.PolicyBasedChallenge), "PolicyBasedChallenge", "PolicyBasedChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_AppFirewall) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_AppFirewall{`, - `AppFirewall:` + strings.Replace(fmt.Sprintf("%v", this.AppFirewall), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_SingleLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_SingleLbApp{`, - `SingleLbApp:` + strings.Replace(fmt.Sprintf("%v", this.SingleLbApp), "SingleLoadBalancerAppSetting", "SingleLoadBalancerAppSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_MultiLbApp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_MultiLbApp{`, - `MultiLbApp:` + strings.Replace(fmt.Sprintf("%v", this.MultiLbApp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableBotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableBotDefense{`, - `DisableBotDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableBotDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_BotDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_BotDefense{`, - `BotDefense:` + strings.Replace(fmt.Sprintf("%v", this.BotDefense), "ShapeBotDefenseType", "ShapeBotDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_UserIdClientIp) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_UserIdClientIp{`, - `UserIdClientIp:` + strings.Replace(fmt.Sprintf("%v", this.UserIdClientIp), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ApiDefinitions) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ApiDefinitions{`, - `ApiDefinitions:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinitions), "ApiDefinitionList", "ApiDefinitionList", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableIpReputation{`, - `DisableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.DisableIpReputation), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableIpReputation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableIpReputation{`, - `EnableIpReputation:` + strings.Replace(fmt.Sprintf("%v", this.EnableIpReputation), "IPThreatCategoryListType", "IPThreatCategoryListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ApiSpecification) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ApiSpecification{`, - `ApiSpecification:` + strings.Replace(fmt.Sprintf("%v", this.ApiSpecification), "APISpecificationSettings", "APISpecificationSettings", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ApiRateLimit) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ApiRateLimit{`, - `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "APIRateLimit", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableApiDefinition{`, - `DisableApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDefinition), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ApiDefinition) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ApiDefinition{`, - `ApiDefinition:` + strings.Replace(fmt.Sprintf("%v", this.ApiDefinition), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableTrustClientIpHeaders{`, - `DisableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.DisableTrustClientIpHeaders), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableTrustClientIpHeaders) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableTrustClientIpHeaders{`, - `EnableTrustClientIpHeaders:` + strings.Replace(fmt.Sprintf("%v", this.EnableTrustClientIpHeaders), "ClientIPHeaders", "virtual_host.ClientIPHeaders", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableDdosDetection{`, - `EnableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableDdosDetection), "EnableDDoSDetectionSetting", "EnableDDoSDetectionSetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableDdosDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableDdosDetection{`, - `DisableDdosDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableDdosDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableMaliciousUserDetection{`, - `EnableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.EnableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableMaliciousUserDetection) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableMaliciousUserDetection{`, - `DisableMaliciousUserDetection:` + strings.Replace(fmt.Sprintf("%v", this.DisableMaliciousUserDetection), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableApiDiscovery{`, - `EnableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.EnableApiDiscovery), "ApiDiscoverySetting", "ApiDiscoverySetting", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableApiDiscovery) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableApiDiscovery{`, - `DisableApiDiscovery:` + strings.Replace(fmt.Sprintf("%v", this.DisableApiDiscovery), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableClientSideDefense{`, - `DisableClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.DisableClientSideDefense), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_ClientSideDefense) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_ClientSideDefense{`, - `ClientSideDefense:` + strings.Replace(fmt.Sprintf("%v", this.ClientSideDefense), "ClientSideDefenseType", "ClientSideDefenseType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DefaultPool) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DefaultPool{`, - `DefaultPool:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPool), "GlobalSpecType", "origin_pool.GlobalSpecType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DefaultPoolList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DefaultPoolList{`, - `DefaultPoolList:` + strings.Replace(fmt.Sprintf("%v", this.DefaultPoolList), "OriginPoolListType", "views.OriginPoolListType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_SlowDdosMitigation) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_SlowDdosMitigation{`, - `SlowDdosMitigation:` + strings.Replace(fmt.Sprintf("%v", this.SlowDdosMitigation), "SlowDDoSMitigation", "virtual_host.SlowDDoSMitigation", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableChallenge{`, - `EnableChallenge:` + strings.Replace(fmt.Sprintf("%v", this.EnableChallenge), "EnableChallenge", "EnableChallenge", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_SystemDefaultTimeouts) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_SystemDefaultTimeouts{`, - `SystemDefaultTimeouts:` + strings.Replace(fmt.Sprintf("%v", this.SystemDefaultTimeouts), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_DisableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_DisableThreatIntelligence{`, - `DisableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.DisableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_EnableThreatIntelligence) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_EnableThreatIntelligence{`, - `EnableThreatIntelligence:` + strings.Replace(fmt.Sprintf("%v", this.EnableThreatIntelligence), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_L7DdosActionDefault) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_L7DdosActionDefault{`, - `L7DdosActionDefault:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionDefault), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_L7DdosActionBlock) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_L7DdosActionBlock{`, - `L7DdosActionBlock:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionBlock), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_L7DdosActionJsChallenge) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_L7DdosActionJsChallenge{`, - `L7DdosActionJsChallenge:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionJsChallenge), "JavascriptChallengeType", "virtual_host.JavascriptChallengeType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_L7DdosActionNone) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_L7DdosActionNone{`, - `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, - `}`, - }, "") - return s -} -func (this *GetSpecType_BotDefenseAdvanced) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GetSpecType_BotDefenseAdvanced{`, - `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, - `}`, - }, "") - return s -} -func valueToStringTypes(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" - } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) -} -func (m *InlineRateLimiter) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: InlineRateLimiter: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: InlineRateLimiter: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Threshold", wireType) - } - m.Threshold = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Threshold |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Unit", wireType) - } - m.Unit = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Unit |= rate_limiter.RateLimitPeriodUnit(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UseHttpLbUserId", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CountByChoice = &InlineRateLimiter_UseHttpLbUserId{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RefUserId", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CountByChoice = &InlineRateLimiter_RefUserId{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ServerUrlRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ServerUrlRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ServerUrlRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainChoice = &ServerUrlRule_AnyDomain{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DomainChoice = &ServerUrlRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BasePath = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InlineRateLimiter", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &InlineRateLimiter{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RateLimiterChoice = &ServerUrlRule_InlineRateLimiter{v} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RefRateLimiter", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RateLimiterChoice = &ServerUrlRule_RefRateLimiter{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ClientMatcher == nil { - m.ClientMatcher = &policy.ClientMatcher{} - } - if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiGroup = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RequestMatcher == nil { - m.RequestMatcher = &policy.RequestMatcher{} - } - if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ApiEndpointRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ApiEndpointRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ApiEndpointRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainChoice = &ApiEndpointRule_AnyDomain{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DomainChoice = &ApiEndpointRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BasePath = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointPath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiEndpointPath = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointMethod", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ApiEndpointMethod == nil { - m.ApiEndpointMethod = &policy.HttpMethodMatcherType{} - } - if err := m.ApiEndpointMethod.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InlineRateLimiter", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &InlineRateLimiter{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RateLimiterChoice = &ApiEndpointRule_InlineRateLimiter{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RefRateLimiter", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RateLimiterChoice = &ApiEndpointRule_RefRateLimiter{v} - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RequestMatcher == nil { - m.RequestMatcher = &policy.RequestMatcher{} - } - if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ClientMatcher == nil { - m.ClientMatcher = &policy.ClientMatcher{} - } - if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BypassRateLimitingRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: BypassRateLimitingRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BypassRateLimitingRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainChoice = &BypassRateLimitingRule_AnyDomain{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DomainChoice = &BypassRateLimitingRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyUrl", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DestinationType = &BypassRateLimitingRule_AnyUrl{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DestinationType = &BypassRateLimitingRule_BasePath{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpoint", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &ApiEndpointDetails{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DestinationType = &BypassRateLimitingRule_ApiEndpoint{v} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroups", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &APIGroups{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DestinationType = &BypassRateLimitingRule_ApiGroups{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RequestMatcher == nil { - m.RequestMatcher = &policy.RequestMatcher{} - } - if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ClientMatcher == nil { - m.ClientMatcher = &policy.ClientMatcher{} - } - if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BypassRateLimitingRules) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: BypassRateLimitingRules: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BypassRateLimitingRules: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BypassRateLimitingRules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BypassRateLimitingRules = append(m.BypassRateLimitingRules, &BypassRateLimitingRule{}) - if err := m.BypassRateLimitingRules[len(m.BypassRateLimitingRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APIRateLimit) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIRateLimit: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIRateLimit: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoIpAllowedList", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.IpAllowedListChoice = &APIRateLimit_NoIpAllowedList{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IpAllowedList", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.PrefixStringListType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.IpAllowedListChoice = &APIRateLimit_IpAllowedList{v} - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomIpAllowedList", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &CustomIpAllowedList{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.IpAllowedListChoice = &APIRateLimit_CustomIpAllowedList{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServerUrlRules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ServerUrlRules = append(m.ServerUrlRules, &ServerUrlRule{}) - if err := m.ServerUrlRules[len(m.ServerUrlRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointRules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiEndpointRules = append(m.ApiEndpointRules, &ApiEndpointRule{}) - if err := m.ApiEndpointRules[len(m.ApiEndpointRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BypassRateLimitingRules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &BypassRateLimitingRules{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.IpAllowedListChoice = &APIRateLimit_BypassRateLimitingRules{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ProxyTypeHttps) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProxyTypeHttps: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProxyTypeHttps: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirect", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.HttpRedirect = bool(v != 0) - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AddHsts", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.AddHsts = bool(v != 0) - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TlsParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.DownstreamTlsParamsType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.TlsCertificatesChoice = &ProxyTypeHttps_TlsParameters{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultHeader", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ServerHeaderChoice = &ProxyTypeHttps_DefaultHeader{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ServerHeaderChoice = &ProxyTypeHttps_ServerName{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppendServerName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ServerHeaderChoice = &ProxyTypeHttps_AppendServerName{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PassThrough", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ServerHeaderChoice = &ProxyTypeHttps_PassThrough{v} - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnablePathNormalize", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PathNormalizeChoice = &ProxyTypeHttps_EnablePathNormalize{v} - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisablePathNormalize", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PathNormalizeChoice = &ProxyTypeHttps_DisablePathNormalize{v} - iNdEx = postIndex - case 15: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) - } - var v uint32 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.PortChoice = &ProxyTypeHttps_Port{v} - case 17: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NonDefaultLoadbalancer", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DefaultLbChoice = &ProxyTypeHttps_NonDefaultLoadbalancer{v} - iNdEx = postIndex - case 18: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultLoadbalancer", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DefaultLbChoice = &ProxyTypeHttps_DefaultLoadbalancer{v} - iNdEx = postIndex - case 19: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformationType", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HeaderTransformationType == nil { - m.HeaderTransformationType = &schema.HeaderTransformationType{} - } - if err := m.HeaderTransformationType.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 20: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionIdleTimeout", wireType) - } - m.ConnectionIdleTimeout = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.ConnectionIdleTimeout |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 22: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TlsCertParams", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.DownstreamTLSCertsParams{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.TlsCertificatesChoice = &ProxyTypeHttps_TlsCertParams{v} - iNdEx = postIndex - case 23: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HttpProtocolOptions == nil { - m.HttpProtocolOptions = &virtual_host.HttpProtocolOptions{} - } - if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 25: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PortRanges", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PortChoice = &ProxyTypeHttps_PortRanges{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ProxyTypeHttp) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProxyTypeHttp: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProxyTypeHttp: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DnsVolterraManaged", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.DnsVolterraManaged = bool(v != 0) - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) - } - var v uint32 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.PortChoice = &ProxyTypeHttp_Port{v} - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PortRanges", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PortChoice = &ProxyTypeHttp_PortRanges{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirect", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.HttpRedirect = bool(v != 0) - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AddHsts", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.AddHsts = bool(v != 0) - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TlsConfig", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.TlsConfig == nil { - m.TlsConfig = &views.TlsConfig{} - } - if err := m.TlsConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoMtls", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MtlsChoice = &ProxyTypeHttpsAutoCerts_NoMtls{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UseMtls", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.DownstreamTlsValidationContext{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MtlsChoice = &ProxyTypeHttpsAutoCerts_UseMtls{v} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultHeader", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_DefaultHeader{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_ServerName{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppendServerName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_AppendServerName{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PassThrough", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_PassThrough{v} - iNdEx = postIndex - case 13: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnablePathNormalize", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PathNormalizeChoice = &ProxyTypeHttpsAutoCerts_EnablePathNormalize{v} - iNdEx = postIndex - case 14: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisablePathNormalize", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PathNormalizeChoice = &ProxyTypeHttpsAutoCerts_DisablePathNormalize{v} - iNdEx = postIndex - case 18: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) - } - var v uint32 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.PortChoice = &ProxyTypeHttpsAutoCerts_Port{v} - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NonDefaultLoadbalancer", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DefaultLbChoice = &ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer{v} - iNdEx = postIndex - case 21: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultLoadbalancer", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DefaultLbChoice = &ProxyTypeHttpsAutoCerts_DefaultLoadbalancer{v} - iNdEx = postIndex - case 22: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformationType", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HeaderTransformationType == nil { - m.HeaderTransformationType = &schema.HeaderTransformationType{} - } - if err := m.HeaderTransformationType.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 23: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionIdleTimeout", wireType) - } - m.ConnectionIdleTimeout = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.ConnectionIdleTimeout |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 24: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HttpProtocolOptions == nil { - m.HttpProtocolOptions = &virtual_host.HttpProtocolOptions{} - } - if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 26: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PortRanges", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PortChoice = &ProxyTypeHttpsAutoCerts_PortRanges{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HashPolicyListType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HashPolicyListType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HashPolicyListType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 16: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HashPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.HashPolicy = append(m.HashPolicy, &route.HashPolicyType{}) - if err := m.HashPolicy[len(m.HashPolicy)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MirrorPolicyType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MirrorPolicyType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MirrorPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OriginPool", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.OriginPool == nil { - m.OriginPool = &views.ObjectRefType{} - } - if err := m.OriginPool.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Percent", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Percent == nil { - m.Percent = &schema.FractionalPercent{} - } - if err := m.Percent.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteSimpleAdvancedOptions) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteSimpleAdvancedOptions: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteSimpleAdvancedOptions: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CommonHashPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HashPolicyChoice = &RouteSimpleAdvancedOptions_CommonHashPolicy{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificHashPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &HashPolicyListType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HashPolicyChoice = &RouteSimpleAdvancedOptions_SpecificHashPolicy{v} - iNdEx = postIndex - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Priority", wireType) - } - m.Priority = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Priority |= schema.RoutingPriority(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EndpointSubsets", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.EndpointSubsets == nil { - m.EndpointSubsets = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.EndpointSubsets[mapkey] = mapvalue - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisablePrefixRewrite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RewriteChoice = &RouteSimpleAdvancedOptions_DisablePrefixRewrite{v} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PrefixRewrite", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RewriteChoice = &RouteSimpleAdvancedOptions_PrefixRewrite{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToAdd", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RequestHeadersToAdd = append(m.RequestHeadersToAdd, &schema.HeaderManipulationOptionType{}) - if err := m.RequestHeadersToAdd[len(m.RequestHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToRemove", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RequestHeadersToRemove = append(m.RequestHeadersToRemove, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToAdd", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ResponseHeadersToAdd = append(m.ResponseHeadersToAdd, &schema.HeaderManipulationOptionType{}) - if err := m.ResponseHeadersToAdd[len(m.ResponseHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 12: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToRemove", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ResponseHeadersToRemove = append(m.ResponseHeadersToRemove, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 13: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableLocationAdd", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.DisableLocationAdd = bool(v != 0) - case 15: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InheritedWaf", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.WafChoice = &RouteSimpleAdvancedOptions_InheritedWaf{v} - iNdEx = postIndex - case 18: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CorsPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CorsPolicy == nil { - m.CorsPolicy = &schema.CorsPolicy{} - } - if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableSpdy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.SpdyChoice = &RouteSimpleAdvancedOptions_DisableSpdy{v} - iNdEx = postIndex - case 21: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableSpdy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.SpdyChoice = &RouteSimpleAdvancedOptions_EnableSpdy{v} - iNdEx = postIndex - case 23: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableWebSocketConfig", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.WebsocketChoice = &RouteSimpleAdvancedOptions_DisableWebSocketConfig{v} - iNdEx = postIndex - case 24: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WebSocketConfig", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &route.WebsocketConfigType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.WebsocketChoice = &RouteSimpleAdvancedOptions_WebSocketConfig{v} - iNdEx = postIndex - case 26: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultRetryPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RetryPolicyChoice = &RouteSimpleAdvancedOptions_DefaultRetryPolicy{v} - iNdEx = postIndex - case 27: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RetryPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.RetryPolicyType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RetryPolicyChoice = &RouteSimpleAdvancedOptions_RetryPolicy{v} - iNdEx = postIndex - case 28: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Timeout", wireType) - } - m.Timeout = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Timeout |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 30: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CommonBuffering", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.BufferChoice = &RouteSimpleAdvancedOptions_CommonBuffering{v} - iNdEx = postIndex - case 31: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BufferPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.BufferConfigType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.BufferChoice = &RouteSimpleAdvancedOptions_BufferPolicy{v} - iNdEx = postIndex - case 33: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableMirroring", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MirroringChoice = &RouteSimpleAdvancedOptions_DisableMirroring{v} - iNdEx = postIndex - case 34: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MirrorPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &MirrorPolicyType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MirroringChoice = &RouteSimpleAdvancedOptions_MirrorPolicy{v} - iNdEx = postIndex - case 36: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RetractCluster", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ClusterRetractChoice = &RouteSimpleAdvancedOptions_RetractCluster{v} - iNdEx = postIndex - case 37: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DoNotRetractCluster", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ClusterRetractChoice = &RouteSimpleAdvancedOptions_DoNotRetractCluster{v} - iNdEx = postIndex - case 39: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InheritedBotDefenseJavascriptInjection", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.BotDefenseJavascriptInjectionChoice = &RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection{v} - iNdEx = postIndex - case 40: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotDefenseJavascriptInjection", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &route.BotDefenseJavascriptInjectionType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.BotDefenseJavascriptInjectionChoice = &RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection{v} - iNdEx = postIndex - case 41: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.WafChoice = &RouteSimpleAdvancedOptions_DisableWaf{v} - iNdEx = postIndex - case 42: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoRetryPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RetryPolicyChoice = &RouteSimpleAdvancedOptions_NoRetryPolicy{v} - iNdEx = postIndex - case 43: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CsrfPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CsrfPolicy == nil { - m.CsrfPolicy = &schema.CsrfPolicy{} - } - if err := m.CsrfPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 44: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RegexRewrite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.RegexMatchRewrite{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RewriteChoice = &RouteSimpleAdvancedOptions_RegexRewrite{v} - iNdEx = postIndex - case 52: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.WafChoice = &RouteSimpleAdvancedOptions_AppFirewall{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteTypeSimpleWithDefaultOriginPool) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteTypeSimpleWithDefaultOriginPool: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTypeSimpleWithDefaultOriginPool: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) - } - m.HttpMethod = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoHostRewrite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HostRewriteParams = &RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HostRewrite", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.HostRewriteParams = &RouteTypeSimpleWithDefaultOriginPool_HostRewrite{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableHostRewrite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HostRewriteParams = &RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteTypeSimple) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteTypeSimple: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTypeSimple: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) - } - m.HttpMethod = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OriginPools", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.OriginPools = append(m.OriginPools, &views.OriginPoolWithWeight{}) - if err := m.OriginPools[len(m.OriginPools)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoHostRewrite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HostRewriteParams = &RouteTypeSimple_AutoHostRewrite{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HostRewrite", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.HostRewriteParams = &RouteTypeSimple_HostRewrite{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableHostRewrite", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HostRewriteParams = &RouteTypeSimple_DisableHostRewrite{v} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AdvancedOptions", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.AdvancedOptions == nil { - m.AdvancedOptions = &RouteSimpleAdvancedOptions{} - } - if err := m.AdvancedOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) - if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IncomingPort", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.IncomingPort == nil { - m.IncomingPort = &schema.PortMatcherType{} - } - if err := m.IncomingPort.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteTypeRedirect) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteTypeRedirect: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTypeRedirect: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) - } - m.HttpMethod = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteRedirect", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RouteRedirect == nil { - m.RouteRedirect = &route.RouteRedirect{} - } - if err := m.RouteRedirect.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) - if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IncomingPort", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.IncomingPort == nil { - m.IncomingPort = &schema.PortMatcherType{} - } - if err := m.IncomingPort.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteTypeDirectResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteTypeDirectResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTypeDirectResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) - } - m.HttpMethod = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteDirectResponse", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RouteDirectResponse == nil { - m.RouteDirectResponse = &route.RouteDirectResponse{} - } - if err := m.RouteDirectResponse.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) - if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IncomingPort", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.IncomingPort == nil { - m.IncomingPort = &schema.PortMatcherType{} - } - if err := m.IncomingPort.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteTypeCustomRoute) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteTypeCustomRoute: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteTypeCustomRoute: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteRef", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RouteRef == nil { - m.RouteRef = &views.ObjectRefType{} - } - if err := m.RouteRef.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SimpleRoute", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &RouteTypeSimple{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Choice = &RouteType_SimpleRoute{v} - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RedirectRoute", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &RouteTypeRedirect{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Choice = &RouteType_RedirectRoute{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DirectResponseRoute", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &RouteTypeDirectResponse{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Choice = &RouteType_DirectResponseRoute{v} - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomRouteObject", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &RouteTypeCustomRoute{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Choice = &RouteType_CustomRouteObject{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AdvancedOptionsType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AdvancedOptionsType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AdvancedOptionsType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToAdd", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RequestHeadersToAdd = append(m.RequestHeadersToAdd, &schema.HeaderManipulationOptionType{}) - if err := m.RequestHeadersToAdd[len(m.RequestHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToRemove", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.RequestHeadersToRemove = append(m.RequestHeadersToRemove, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToAdd", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ResponseHeadersToAdd = append(m.ResponseHeadersToAdd, &schema.HeaderManipulationOptionType{}) - if err := m.ResponseHeadersToAdd[len(m.ResponseHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToRemove", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ResponseHeadersToRemove = append(m.ResponseHeadersToRemove, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MaxRequestHeaderSize", wireType) - } - m.MaxRequestHeaderSize = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.MaxRequestHeaderSize |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BufferPolicy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.BufferPolicy == nil { - m.BufferPolicy = &schema.BufferConfigType{} - } - if err := m.BufferPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CompressionParams", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CompressionParams == nil { - m.CompressionParams = &virtual_host.CompressionType{} - } - if err := m.CompressionParams.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomErrors", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CustomErrors == nil { - m.CustomErrors = make(map[uint32]string) - } - var mapkey uint32 - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - mapkey |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.CustomErrors[mapkey] = mapvalue - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JavascriptInfo", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.JavascriptInfo == nil { - m.JavascriptInfo = &virtual_host.JavaScriptConfigType{} - } - if err := m.JavascriptInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Jwt", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Jwt = append(m.Jwt, &views.ObjectRefType{}) - if err := m.Jwt[len(m.Jwt)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IdleTimeout", wireType) - } - m.IdleTimeout = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.IdleTimeout |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 13: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDefaultErrorPages", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.DisableDefaultErrorPages = bool(v != 0) - case 15: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnablePathNormalize", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PathNormalizeChoice = &AdvancedOptionsType_EnablePathNormalize{v} - iNdEx = postIndex - case 16: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisablePathNormalize", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PathNormalizeChoice = &AdvancedOptionsType_DisablePathNormalize{v} - iNdEx = postIndex - case 18: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableStrictSniHostHeaderCheck", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.StrictSniHostHeaderCheckChoice = &AdvancedOptionsType_EnableStrictSniHostHeaderCheck{v} - iNdEx = postIndex - case 19: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AdditionalDomains", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.DomainNameList{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.StrictSniHostHeaderCheckChoice = &AdvancedOptionsType_AdditionalDomains{v} - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CookiesToModify", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.CookiesToModify = append(m.CookiesToModify, &schema.CookieManipulationOptionType{}) - if err := m.CookiesToModify[len(m.CookiesToModify)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *EnableChallenge) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: EnableChallenge: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: EnableChallenge: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultMitigationSettings", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MaliciousUserMitigationChoice = &EnableChallenge_DefaultMitigationSettings{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MaliciousUserMitigationChoice = &EnableChallenge_MaliciousUserMitigation{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultJsChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.JsChallengeParametersChoice = &EnableChallenge_DefaultJsChallengeParameters{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &virtual_host.JavascriptChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.JsChallengeParametersChoice = &EnableChallenge_JsChallengeParameters{v} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultCaptchaChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CaptchaChallengeParametersChoice = &EnableChallenge_DefaultCaptchaChallengeParameters{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &virtual_host.CaptchaChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CaptchaChallengeParametersChoice = &EnableChallenge_CaptchaChallengeParameters{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *PolicyBasedChallenge) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PolicyBasedChallenge: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PolicyBasedChallenge: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultJsChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.JsChallengeParametersChoice = &PolicyBasedChallenge_DefaultJsChallengeParameters{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &virtual_host.JavascriptChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.JsChallengeParametersChoice = &PolicyBasedChallenge_JsChallengeParameters{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultCaptchaChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CaptchaChallengeParametersChoice = &PolicyBasedChallenge_DefaultCaptchaChallengeParameters{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallengeParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &virtual_host.CaptchaChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.CaptchaChallengeParametersChoice = &PolicyBasedChallenge_CaptchaChallengeParameters{v} - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultTemporaryBlockingParameters", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.TemporaryBlockingParametersChoice = &PolicyBasedChallenge_DefaultTemporaryBlockingParameters{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TemporaryUserBlocking", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &virtual_host.TemporaryUserBlockingType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.TemporaryBlockingParametersChoice = &PolicyBasedChallenge_TemporaryUserBlocking{v} - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultMitigationSettings", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MaliciousUserMitigationChoice = &PolicyBasedChallenge_DefaultMitigationSettings{v} - iNdEx = postIndex - case 12: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.ObjectRefType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MaliciousUserMitigationChoice = &PolicyBasedChallenge_MaliciousUserMitigation{v} - iNdEx = postIndex - case 14: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ChallengeChoice = &PolicyBasedChallenge_NoChallenge{v} - iNdEx = postIndex - case 15: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AlwaysEnableJsChallenge", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ChallengeChoice = &PolicyBasedChallenge_AlwaysEnableJsChallenge{v} - iNdEx = postIndex - case 16: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AlwaysEnableCaptchaChallenge", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ChallengeChoice = &PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{v} - iNdEx = postIndex - case 18: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RuleList", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RuleList == nil { - m.RuleList = &ChallengeRuleList{} - } - if err := m.RuleList.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ChallengeRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ChallengeRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ChallengeRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Spec == nil { - m.Spec = &service_policy_rule.ChallengeRuleSpec{} - } - if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ChallengeRuleList) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ChallengeRuleList: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ChallengeRuleList: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Rules = append(m.Rules, &ChallengeRule{}) - if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HttpHeaderMatcherList) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HttpHeaderMatcherList: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HttpHeaderMatcherList: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) - if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SimpleClientSrcRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SimpleClientSrcRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SimpleClientSrcRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IpPrefix", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ClientSourceChoice = &SimpleClientSrcRule_IpPrefix{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AsNumber", wireType) - } - var v uint32 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.ClientSourceChoice = &SimpleClientSrcRule_AsNumber{v} - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTimestamp", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ExpirationTimestamp == nil { - m.ExpirationTimestamp = &types.Timestamp{} - } - if err := m.ExpirationTimestamp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 12: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SkipProcessing", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ActionChoice = &SimpleClientSrcRule_SkipProcessing{v} - iNdEx = postIndex - case 13: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WafSkipProcessing", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ActionChoice = &SimpleClientSrcRule_WafSkipProcessing{v} - iNdEx = postIndex - case 14: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotSkipProcessing", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ActionChoice = &SimpleClientSrcRule_BotSkipProcessing{v} - iNdEx = postIndex - case 15: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpHeader", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &HttpHeaderMatcherList{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ClientSourceChoice = &SimpleClientSrcRule_HttpHeader{v} - iNdEx = postIndex - case 16: - if wireType == 0 { - var v ClientSrcRuleAction - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= ClientSrcRuleAction(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Actions = append(m.Actions, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - var elementCount int - if elementCount != 0 && len(m.Actions) == 0 { - m.Actions = make([]ClientSrcRuleAction, 0, elementCount) - } - for iNdEx < postIndex { - var v ClientSrcRuleAction - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= ClientSrcRuleAction(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Actions = append(m.Actions, v) - } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field Actions", wireType) - } - case 17: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserIdentifier", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ClientSourceChoice = &SimpleClientSrcRule_UserIdentifier{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *DDoSClientSource) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: DDoSClientSource: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: DDoSClientSource: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AsnList", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.AsnList == nil { - m.AsnList = &policy.AsnMatchList{} - } - if err := m.AsnList.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType == 0 { - var v policy.CountryCode - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= policy.CountryCode(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.CountryList = append(m.CountryList, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - var elementCount int - if elementCount != 0 && len(m.CountryList) == 0 { - m.CountryList = make([]policy.CountryCode, 0, elementCount) - } - for iNdEx < postIndex { - var v policy.CountryCode - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= policy.CountryCode(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.CountryList = append(m.CountryList, v) - } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field CountryList", wireType) - } - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TlsFingerprintMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.TlsFingerprintMatcher == nil { - m.TlsFingerprintMatcher = &policy.TlsFingerprintMatcherType{} - } - if err := m.TlsFingerprintMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APIProtectionRuleAction) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIProtectionRuleAction: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIProtectionRuleAction: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Allow", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Action = &APIProtectionRuleAction_Allow{v} - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Deny", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Action = &APIProtectionRuleAction_Deny{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APIEndpointProtectionRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIEndpointProtectionRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIEndpointProtectionRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Action == nil { - m.Action = &APIProtectionRuleAction{} - } - if err := m.Action.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointPath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiEndpointPath = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointMethod", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ApiEndpointMethod == nil { - m.ApiEndpointMethod = &policy.HttpMethodMatcherType{} - } - if err := m.ApiEndpointMethod.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RequestMatcher == nil { - m.RequestMatcher = &policy.RequestMatcher{} - } - if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ClientMatcher == nil { - m.ClientMatcher = &policy.ClientMatcher{} - } - if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainChoice = &APIEndpointProtectionRule_AnyDomain{v} - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DomainChoice = &APIEndpointProtectionRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APIGroupProtectionRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIGroupProtectionRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIGroupProtectionRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Action == nil { - m.Action = &APIProtectionRuleAction{} - } - if err := m.Action.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiGroup = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.RequestMatcher == nil { - m.RequestMatcher = &policy.RequestMatcher{} - } - if err := m.RequestMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientMatcher", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ClientMatcher == nil { - m.ClientMatcher = &policy.ClientMatcher{} - } - if err := m.ClientMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainChoice = &APIGroupProtectionRule_AnyDomain{v} - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DomainChoice = &APIGroupProtectionRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BasePath = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APIProtectionRules) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIProtectionRules: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIProtectionRules: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpointRules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiEndpointRules = append(m.ApiEndpointRules, &APIEndpointProtectionRule{}) - if err := m.ApiEndpointRules[len(m.ApiEndpointRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroupsRules", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiGroupsRules = append(m.ApiGroupsRules, &APIGroupProtectionRule{}) - if err := m.ApiGroupsRules[len(m.ApiGroupsRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } +func (this *GetSpecType_L7DdosActionNone) String() string { + if this == nil { + return "nil" } - - if iNdEx > l { - return io.ErrUnexpectedEOF + s := strings.Join([]string{`&GetSpecType_L7DdosActionNone{`, + `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType_ApiRateLimit) String() string { + if this == nil { + return "nil" } - return nil + s := strings.Join([]string{`&GetSpecType_ApiRateLimit{`, + `ApiRateLimit:` + strings.Replace(fmt.Sprintf("%v", this.ApiRateLimit), "APIRateLimit", "common_waf.APIRateLimit", 1) + `,`, + `}`, + }, "") + return s } -func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { +func (this *GetSpecType_BotDefenseAdvanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType_BotDefenseAdvanced{`, + `BotDefenseAdvanced:` + strings.Replace(fmt.Sprintf("%v", this.BotDefenseAdvanced), "BotDefenseAdvancedType", "BotDefenseAdvancedType", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ProxyTypeHttps) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -80227,17 +49618,17 @@ func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DDoSMitigationRule: wiretype end group for non-group") + return fmt.Errorf("proto: ProxyTypeHttps: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DDoSMitigationRule: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ProxyTypeHttps: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirect", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -80247,33 +49638,17 @@ func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Block", wireType) + m.HttpRedirect = bool(v != 0) + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AddHsts", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -80283,30 +49658,15 @@ func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.MitigationAction = &DDoSMitigationRule_Block{v} - iNdEx = postIndex - case 8: + m.AddHsts = bool(v != 0) + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DdosClientSource", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TlsParameters", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80333,15 +49693,15 @@ func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &DDoSClientSource{} + v := &views.DownstreamTlsParamsType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MitigationChoice = &DDoSMitigationRule_DdosClientSource{v} + m.TlsCertificatesChoice = &ProxyTypeHttps_TlsParameters{v} iNdEx = postIndex - case 9: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IpPrefixList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultHeader", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80368,106 +49728,17 @@ func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &policy.PrefixMatchList{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MitigationChoice = &DDoSMitigationRule_IpPrefixList{v} - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTimestamp", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ExpirationTimestamp == nil { - m.ExpirationTimestamp = &types.Timestamp{} - } - if err := m.ExpirationTimestamp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.ServerHeaderChoice = &ProxyTypeHttps_DefaultHeader{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *CustomIpAllowedList) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CustomIpAllowedList: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CustomIpAllowedList: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 22: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RateLimiterAllowedPrefixes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -80477,84 +49748,29 @@ func (m *CustomIpAllowedList) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.RateLimiterAllowedPrefixes = append(m.RateLimiterAllowedPrefixes, &views.ObjectRefType{}) - if err := m.RateLimiterAllowedPrefixes[len(m.RateLimiterAllowedPrefixes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.ServerHeaderChoice = &ProxyTypeHttps_ServerName{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RateLimitConfigType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RateLimitConfigType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RateLimiter", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppendServerName", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -80564,31 +49780,27 @@ func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.RateLimiter == nil { - m.RateLimiter = &rate_limiter.RateLimitValue{} - } - if err := m.RateLimiter.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.ServerHeaderChoice = &ProxyTypeHttps_AppendServerName{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 3: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoIpAllowedList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PassThrough", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80619,46 +49831,11 @@ func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpAllowedListChoice = &RateLimitConfigType_NoIpAllowedList{v} - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IpAllowedList", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &views.PrefixStringListType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.IpAllowedListChoice = &RateLimitConfigType_IpAllowedList{v} + m.ServerHeaderChoice = &ProxyTypeHttps_PassThrough{v} iNdEx = postIndex - case 5: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CustomIpAllowedList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnablePathNormalize", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80685,15 +49862,15 @@ func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &CustomIpAllowedList{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpAllowedListChoice = &RateLimitConfigType_CustomIpAllowedList{v} + m.PathNormalizeChoice = &ProxyTypeHttps_EnablePathNormalize{v} iNdEx = postIndex - case 12: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoPolicies", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisablePathNormalize", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80724,13 +49901,13 @@ func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.PolicyChoice = &RateLimitConfigType_NoPolicies{v} + m.PathNormalizeChoice = &ProxyTypeHttps_DisablePathNormalize{v} iNdEx = postIndex - case 13: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) } - var msglen int + var v uint32 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -80740,83 +49917,15 @@ func (m *RateLimitConfigType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= uint32(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &rate_limiter_policy.PolicyList{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.PolicyChoice = &RateLimitConfigType_Policies{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ServicePolicyList) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ServicePolicyList: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ServicePolicyList: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.PortChoice = &ProxyTypeHttps_Port{v} + case 17: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NonDefaultLoadbalancer", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80843,67 +49952,15 @@ func (m *ServicePolicyList) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Policies = append(m.Policies, &views.ObjectRefType{}) - if err := m.Policies[len(m.Policies)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.DefaultLbChoice = &ProxyTypeHttps_NonDefaultLoadbalancer{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ApiDefinitionList) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ApiDefinitionList: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ApiDefinitionList: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultLoadbalancer", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -80930,67 +49987,15 @@ func (m *ApiDefinitionList) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ApiDefinitions = append(m.ApiDefinitions, &views.ObjectRefType{}) - if err := m.ApiDefinitions[len(m.ApiDefinitions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ApiDiscoverySetting: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ApiDiscoverySetting: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DefaultLbChoice = &ProxyTypeHttps_DefaultLoadbalancer{v} + iNdEx = postIndex + case 19: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableLearnFromRedirectTraffic", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformationType", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81017,15 +50022,35 @@ func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.HeaderTransformationType == nil { + m.HeaderTransformationType = &schema.HeaderTransformationType{} + } + if err := m.HeaderTransformationType.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.LearnFromRedirectTraffic = &ApiDiscoverySetting_DisableLearnFromRedirectTraffic{v} iNdEx = postIndex - case 3: + case 20: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionIdleTimeout", wireType) + } + m.ConnectionIdleTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ConnectionIdleTimeout |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 22: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableLearnFromRedirectTraffic", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TlsCertParams", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81052,15 +50077,15 @@ func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &views.DownstreamTLSCertsParams{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.LearnFromRedirectTraffic = &ApiDiscoverySetting_EnableLearnFromRedirectTraffic{v} + m.TlsCertificatesChoice = &ProxyTypeHttps_TlsCertParams{v} iNdEx = postIndex - case 5: + case 23: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SensitiveDataDetectionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81087,18 +50112,18 @@ func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.SensitiveDataDetectionRules == nil { - m.SensitiveDataDetectionRules = &app_type.SensitiveDataDetectionRules{} + if m.HttpProtocolOptions == nil { + m.HttpProtocolOptions = &virtual_host.HttpProtocolOptions{} } - if err := m.SensitiveDataDetectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 6: + case 25: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DiscoveredApiSettings", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PortRanges", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -81108,27 +50133,23 @@ func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.DiscoveredApiSettings == nil { - m.DiscoveredApiSettings = &app_type.DiscoveredAPISettings{} - } - if err := m.DiscoveredApiSettings.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.PortChoice = &ProxyTypeHttps_PortRanges{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex default: iNdEx = preIndex @@ -81154,7 +50175,7 @@ func (m *ApiDiscoverySetting) Unmarshal(dAtA []byte) error { } return nil } -func (m *EnableDDoSDetectionSetting) Unmarshal(dAtA []byte) error { +func (m *ProxyTypeHttp) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -81177,17 +50198,17 @@ func (m *EnableDDoSDetectionSetting) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EnableDDoSDetectionSetting: wiretype end group for non-group") + return fmt.Errorf("proto: ProxyTypeHttp: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EnableDDoSDetectionSetting: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ProxyTypeHttp: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableAutoMitigation", wireType) + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsVolterraManaged", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -81197,32 +50218,37 @@ func (m *EnableDDoSDetectionSetting) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF + m.DnsVolterraManaged = bool(v != 0) + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) } - v := &AutoMitigationAction{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + var v uint32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - m.AutoMitigationChoice = &EnableDDoSDetectionSetting_EnableAutoMitigation{v} - iNdEx = postIndex - case 3: + m.PortChoice = &ProxyTypeHttp_Port{v} + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableAutoMitigation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PortRanges", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -81232,26 +50258,23 @@ func (m *EnableDDoSDetectionSetting) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.AutoMitigationChoice = &EnableDDoSDetectionSetting_DisableAutoMitigation{v} + m.PortChoice = &ProxyTypeHttp_PortRanges{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex default: iNdEx = preIndex @@ -81277,7 +50300,7 @@ func (m *EnableDDoSDetectionSetting) Unmarshal(dAtA []byte) error { } return nil } -func (m *AutoMitigationAction) Unmarshal(dAtA []byte) error { +func (m *ProxyTypeHttpsAutoCerts) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -81300,15 +50323,55 @@ func (m *AutoMitigationAction) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AutoMitigationAction: wiretype end group for non-group") + return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AutoMitigationAction: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ProxyTypeHttpsAutoCerts: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirect", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.HttpRedirect = bool(v != 0) case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AddHsts", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AddHsts = bool(v != 0) + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Block", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TlsConfig", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81335,15 +50398,16 @@ func (m *AutoMitigationAction) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.TlsConfig == nil { + m.TlsConfig = &views.TlsConfig{} + } + if err := m.TlsConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Action = &AutoMitigationAction_Block{v} iNdEx = postIndex - case 3: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NoMtls", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81370,68 +50434,15 @@ func (m *AutoMitigationAction) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.JavascriptChallengeType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Action = &AutoMitigationAction_JsChallenge{v} + m.MtlsChoice = &ProxyTypeHttpsAutoCerts_NoMtls{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SingleLoadBalancerAppSetting: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SingleLoadBalancerAppSetting: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableDiscovery", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UseMtls", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81458,15 +50469,15 @@ func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDiscoverySetting{} + v := &views.DownstreamTlsValidationContext{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDiscoveryChoice = &SingleLoadBalancerAppSetting_EnableDiscovery{v} + m.MtlsChoice = &ProxyTypeHttpsAutoCerts_UseMtls{v} iNdEx = postIndex - case 3: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDiscovery", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultHeader", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81497,13 +50508,13 @@ func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDiscoveryChoice = &SingleLoadBalancerAppSetting_DisableDiscovery{v} + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_DefaultHeader{v} iNdEx = postIndex - case 5: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -81513,32 +50524,29 @@ func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableDDoSDetectionSetting{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DdosDetectionChoice = &SingleLoadBalancerAppSetting_EnableDdosDetection{v} + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_ServerName{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 6: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppendServerName", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -81548,30 +50556,27 @@ func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DdosDetectionChoice = &SingleLoadBalancerAppSetting_DisableDdosDetection{v} + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_AppendServerName{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 8: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableMaliciousUserDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PassThrough", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81602,11 +50607,11 @@ func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MaliciousUserDetectionChoice = &SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{v} + m.ServerHeaderChoice = &ProxyTypeHttpsAutoCerts_PassThrough{v} iNdEx = postIndex - case 9: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableMaliciousUserDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnablePathNormalize", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81637,64 +50642,11 @@ func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MaliciousUserDetectionChoice = &SingleLoadBalancerAppSetting_DisableMaliciousUserDetection{v} + m.PathNormalizeChoice = &ProxyTypeHttpsAutoCerts_EnablePathNormalize{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APISpecificationSettings) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APISpecificationSettings: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APISpecificationSettings: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 14: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisablePathNormalize", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81721,16 +50673,35 @@ func (m *APISpecificationSettings) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ApiDefinition == nil { - m.ApiDefinition = &views.ObjectRefType{} - } - if err := m.ApiDefinition.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.PathNormalizeChoice = &ProxyTypeHttpsAutoCerts_DisablePathNormalize{v} iNdEx = postIndex - case 3: + case 18: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) + } + var v uint32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.PortChoice = &ProxyTypeHttpsAutoCerts_Port{v} + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidationDisabled", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NonDefaultLoadbalancer", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81761,11 +50732,11 @@ func (m *APISpecificationSettings) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationTargetChoice = &APISpecificationSettings_ValidationDisabled{v} + m.DefaultLbChoice = &ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer{v} iNdEx = postIndex - case 4: + case 21: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidationAllSpecEndpoints", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultLoadbalancer", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81792,15 +50763,15 @@ func (m *APISpecificationSettings) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &OpenApiValidationAllSpecEndpointsSettings{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationTargetChoice = &APISpecificationSettings_ValidationAllSpecEndpoints{v} + m.DefaultLbChoice = &ProxyTypeHttpsAutoCerts_DefaultLoadbalancer{v} iNdEx = postIndex - case 5: + case 22: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidationCustomList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformationType", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81827,68 +50798,35 @@ func (m *APISpecificationSettings) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ValidateApiBySpecRule{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + if m.HeaderTransformationType == nil { + m.HeaderTransformationType = &schema.HeaderTransformationType{} } - m.ValidationTargetChoice = &APISpecificationSettings_ValidationCustomList{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { + if err := m.HeaderTransformationType.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + iNdEx = postIndex + case 23: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionIdleTimeout", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.ConnectionIdleTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ConnectionIdleTimeout |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OpenApiValidationAllSpecEndpointsSettings: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiValidationAllSpecEndpointsSettings: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 24: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidationMode", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81915,18 +50853,18 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error if postIndex > l { return io.ErrUnexpectedEOF } - if m.ValidationMode == nil { - m.ValidationMode = &OpenApiValidationMode{} + if m.HttpProtocolOptions == nil { + m.HttpProtocolOptions = &virtual_host.HttpProtocolOptions{} } - if err := m.ValidationMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 26: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FallThroughMode", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PortRanges", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -81936,31 +50874,80 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.FallThroughMode == nil { - m.FallThroughMode = &OpenApiFallThroughMode{} - } - if err := m.FallThroughMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.PortChoice = &ProxyTypeHttpsAutoCerts_PortRanges{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { return err } - iNdEx = postIndex - case 4: + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HashPolicyListType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HashPolicyListType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HashPolicyListType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodySkipValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HashPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -81987,15 +50974,67 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.HashPolicy = append(m.HashPolicy, &route.HashPolicyType{}) + if err := m.HashPolicy[len(m.HashPolicy)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OversizedBodyChoice = &OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{v} iNdEx = postIndex - case 5: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MirrorPolicyType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MirrorPolicyType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MirrorPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodyFailValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OriginPool", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82022,15 +51061,16 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.OriginPool == nil { + m.OriginPool = &views.ObjectRefType{} + } + if err := m.OriginPool.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OversizedBodyChoice = &OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{v} iNdEx = postIndex - case 6: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Settings", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Percent", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82057,10 +51097,10 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error if postIndex > l { return io.ErrUnexpectedEOF } - if m.Settings == nil { - m.Settings = &OpenApiValidationCommonSettings{} + if m.Percent == nil { + m.Percent = &schema.FractionalPercent{} } - if err := m.Settings.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Percent.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -82088,7 +51128,7 @@ func (m *OpenApiValidationAllSpecEndpointsSettings) Unmarshal(dAtA []byte) error } return nil } -func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { +func (m *RouteSimpleAdvancedOptions) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -82111,15 +51151,15 @@ func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: OpenApiValidationCommonSettings: wiretype end group for non-group") + return fmt.Errorf("proto: RouteSimpleAdvancedOptions: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiValidationCommonSettings: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteSimpleAdvancedOptions: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodySkipValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CommonHashPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82150,11 +51190,11 @@ func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OversizedBodyChoice = &OpenApiValidationCommonSettings_OversizedBodySkipValidation{v} + m.HashPolicyChoice = &RouteSimpleAdvancedOptions_CommonHashPolicy{v} iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodyFailValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SpecificHashPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82181,15 +51221,34 @@ func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &HashPolicyListType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OversizedBodyChoice = &OpenApiValidationCommonSettings_OversizedBodyFailValidation{v} + m.HashPolicyChoice = &RouteSimpleAdvancedOptions_SpecificHashPolicy{v} iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Priority", wireType) + } + m.Priority = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Priority |= schema.RoutingPriority(b&0x7F) << shift + if b < 0x80 { + break + } + } case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PropertyValidationSettingsDefault", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EndpointSubsets", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82216,15 +51275,107 @@ func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + if m.EndpointSubsets == nil { + m.EndpointSubsets = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } - m.PropertyValidationSettingsChoice = &OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{v} + m.EndpointSubsets[mapkey] = mapvalue iNdEx = postIndex - case 6: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PropertyValidationSettingsCustom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisablePrefixRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82251,70 +51402,17 @@ func (m *OpenApiValidationCommonSettings) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ValidationPropertySetting{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.PropertyValidationSettingsChoice = &OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{v} + m.RewriteChoice = &RouteSimpleAdvancedOptions_DisablePrefixRewrite{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ValidationPropertySetting) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ValidationPropertySetting: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ValidationPropertySetting: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field QueryParameters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PrefixRewrite", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -82324,31 +51422,27 @@ func (m *ValidationPropertySetting) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.QueryParameters == nil { - m.QueryParameters = &ValidationSettingForQueryParameters{} - } - if err := m.QueryParameters.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.RewriteChoice = &RouteSimpleAdvancedOptions_PrefixRewrite{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 2: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToAdd", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82375,71 +51469,16 @@ func (m *ValidationPropertySetting) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Headers == nil { - m.Headers = &ValidationSettingForHeaders{} - } - if err := m.Headers.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RequestHeadersToAdd = append(m.RequestHeadersToAdd, &schema.HeaderManipulationOptionType{}) + if err := m.RequestHeadersToAdd[len(m.RequestHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ValidationSettingForQueryParameters) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ValidationSettingForQueryParameters: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ValidationSettingForQueryParameters: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllowAdditionalParameters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToRemove", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -82449,30 +51488,27 @@ func (m *ValidationSettingForQueryParameters) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.AdditionalParametersChoice = &ValidationSettingForQueryParameters_AllowAdditionalParameters{v} + m.RequestHeadersToRemove = append(m.RequestHeadersToRemove, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 3: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisallowAdditionalParameters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToAdd", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82499,68 +51535,66 @@ func (m *ValidationSettingForQueryParameters) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ResponseHeadersToAdd = append(m.ResponseHeadersToAdd, &schema.HeaderManipulationOptionType{}) + if err := m.ResponseHeadersToAdd[len(m.ResponseHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AdditionalParametersChoice = &ValidationSettingForQueryParameters_DisallowAdditionalParameters{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToRemove", wireType) } - if skippy < 0 { + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + intStringLen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ValidationSettingForHeaders) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + m.ResponseHeadersToRemove = append(m.ResponseHeadersToRemove, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableLocationAdd", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ValidationSettingForHeaders: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ValidationSettingForHeaders: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + m.DisableLocationAdd = bool(v != 0) + case 15: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllowAdditionalHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field InheritedWaf", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82591,11 +51625,11 @@ func (m *ValidationSettingForHeaders) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AdditionalHeadersChoice = &ValidationSettingForHeaders_AllowAdditionalHeaders{v} + m.WafChoice = &RouteSimpleAdvancedOptions_InheritedWaf{v} iNdEx = postIndex - case 3: + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisallowAdditionalHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CorsPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82622,68 +51656,16 @@ func (m *ValidationSettingForHeaders) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + if m.CorsPolicy == nil { + m.CorsPolicy = &schema.CorsPolicy{} } - m.AdditionalHeadersChoice = &ValidationSettingForHeaders_DisallowAdditionalHeaders{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { + if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OpenApiValidationMode) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OpenApiValidationMode: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiValidationMode: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + iNdEx = postIndex + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidationModeActive", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableSpdy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82710,15 +51692,15 @@ func (m *OpenApiValidationMode) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &OpenApiValidationModeActive{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationModeChoice = &OpenApiValidationMode_ValidationModeActive{v} + m.SpdyChoice = &RouteSimpleAdvancedOptions_DisableSpdy{v} iNdEx = postIndex - case 3: + case 21: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SkipValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableSpdy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82749,11 +51731,11 @@ func (m *OpenApiValidationMode) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationModeChoice = &OpenApiValidationMode_SkipValidation{v} + m.SpdyChoice = &RouteSimpleAdvancedOptions_EnableSpdy{v} iNdEx = postIndex - case 5: + case 23: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SkipResponseValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableWebSocketConfig", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82784,11 +51766,11 @@ func (m *OpenApiValidationMode) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ResponseValidationModeChoice = &OpenApiValidationMode_SkipResponseValidation{v} + m.WebsocketChoice = &RouteSimpleAdvancedOptions_DisableWebSocketConfig{v} iNdEx = postIndex - case 6: + case 24: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseValidationModeActive", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WebSocketConfig", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82815,68 +51797,15 @@ func (m *OpenApiValidationMode) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &OpenApiValidationModeActiveResponse{} + v := &route.WebsocketConfigType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ResponseValidationModeChoice = &OpenApiValidationMode_ResponseValidationModeActive{v} + m.WebsocketChoice = &RouteSimpleAdvancedOptions_WebSocketConfig{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OpenApiFallThroughMode) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OpenApiFallThroughMode: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiFallThroughMode: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 4: + case 26: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FallThroughModeAllow", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultRetryPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82907,11 +51836,11 @@ func (m *OpenApiFallThroughMode) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.FallThroughModeChoice = &OpenApiFallThroughMode_FallThroughModeAllow{v} + m.RetryPolicyChoice = &RouteSimpleAdvancedOptions_DefaultRetryPolicy{v} iNdEx = postIndex - case 5: + case 27: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FallThroughModeCustom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RetryPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82938,68 +51867,34 @@ func (m *OpenApiFallThroughMode) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &CustomFallThroughMode{} + v := &schema.RetryPolicyType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.FallThroughModeChoice = &OpenApiFallThroughMode_FallThroughModeCustom{v} + m.RetryPolicyChoice = &RouteSimpleAdvancedOptions_RetryPolicy{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *CustomFallThroughMode) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + case 28: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Timeout", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.Timeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Timeout |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CustomFallThroughMode: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CustomFallThroughMode: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 30: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OpenApiValidationRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CommonBuffering", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83026,67 +51921,15 @@ func (m *CustomFallThroughMode) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.OpenApiValidationRules = append(m.OpenApiValidationRules, &FallThroughRule{}) - if err := m.OpenApiValidationRules[len(m.OpenApiValidationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.BufferChoice = &RouteSimpleAdvancedOptions_CommonBuffering{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *FallThroughRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: FallThroughRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: FallThroughRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 31: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BufferPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83113,16 +51956,15 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.BufferConfigType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.BufferChoice = &RouteSimpleAdvancedOptions_BufferPolicy{v} iNdEx = postIndex - case 3: + case 33: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ActionSkip", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableMirroring", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83153,11 +51995,11 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ActionChoice = &FallThroughRule_ActionSkip{v} + m.MirroringChoice = &RouteSimpleAdvancedOptions_DisableMirroring{v} iNdEx = postIndex - case 4: + case 34: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ActionReport", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MirrorPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83184,15 +52026,15 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &MirrorPolicyType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ActionChoice = &FallThroughRule_ActionReport{v} + m.MirroringChoice = &RouteSimpleAdvancedOptions_MirrorPolicy{v} iNdEx = postIndex - case 5: + case 36: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ActionBlock", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RetractCluster", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83223,13 +52065,13 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ActionChoice = &FallThroughRule_ActionBlock{v} + m.ClusterRetractChoice = &RouteSimpleAdvancedOptions_RetractCluster{v} iNdEx = postIndex - case 8: + case 37: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DoNotRetractCluster", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -83239,29 +52081,32 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ConditionTypeChoice = &FallThroughRule_BasePath{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ClusterRetractChoice = &RouteSimpleAdvancedOptions_DoNotRetractCluster{v} iNdEx = postIndex - case 9: + case 39: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field InheritedBotDefenseJavascriptInjection", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -83271,27 +52116,30 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ConditionTypeChoice = &FallThroughRule_ApiGroup{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.BotDefenseJavascriptInjectionChoice = &RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection{v} iNdEx = postIndex - case 10: + case 40: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpoint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BotDefenseJavascriptInjection", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83318,68 +52166,15 @@ func (m *FallThroughRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiEndpointDetails{} + v := &route.BotDefenseJavascriptInjectionType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ConditionTypeChoice = &FallThroughRule_ApiEndpoint{v} + m.BotDefenseJavascriptInjectionChoice = &RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OpenApiValidationModeActive) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OpenApiValidationModeActive: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiValidationModeActive: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + case 41: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnforcementReport", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83410,11 +52205,11 @@ func (m *OpenApiValidationModeActive) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationEnforcementType = &OpenApiValidationModeActive_EnforcementReport{v} + m.WafChoice = &RouteSimpleAdvancedOptions_DisableWaf{v} iNdEx = postIndex - case 3: + case 42: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnforcementBlock", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NoRetryPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83445,133 +52240,47 @@ func (m *OpenApiValidationModeActive) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationEnforcementType = &OpenApiValidationModeActive_EnforcementBlock{v} + m.RetryPolicyChoice = &RouteSimpleAdvancedOptions_NoRetryPolicy{v} iNdEx = postIndex - case 4: - if wireType == 0 { - var v schema.OpenApiValidationProperties - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= schema.OpenApiValidationProperties(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.RequestValidationProperties = append(m.RequestValidationProperties, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthTypes + case 43: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CsrfPolicy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - if postIndex > l { + if iNdEx >= l { return io.ErrUnexpectedEOF } - var elementCount int - if elementCount != 0 && len(m.RequestValidationProperties) == 0 { - m.RequestValidationProperties = make([]schema.OpenApiValidationProperties, 0, elementCount) - } - for iNdEx < postIndex { - var v schema.OpenApiValidationProperties - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= schema.OpenApiValidationProperties(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.RequestValidationProperties = append(m.RequestValidationProperties, v) + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field RequestValidationProperties", wireType) - } - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err } - if skippy < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OpenApiValidationModeActiveResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + if m.CsrfPolicy == nil { + m.CsrfPolicy = &schema.CsrfPolicy{} } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.CsrfPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OpenApiValidationModeActiveResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiValidationModeActiveResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + iNdEx = postIndex + case 44: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnforcementReport", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RegexRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83598,15 +52307,15 @@ func (m *OpenApiValidationModeActiveResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &schema.RegexMatchRewrite{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationEnforcementType = &OpenApiValidationModeActiveResponse_EnforcementReport{v} + m.RewriteChoice = &RouteSimpleAdvancedOptions_RegexRewrite{v} iNdEx = postIndex - case 3: + case 52: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnforcementBlock", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83633,81 +52342,12 @@ func (m *OpenApiValidationModeActiveResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidationEnforcementType = &OpenApiValidationModeActiveResponse_EnforcementBlock{v} + m.WafChoice = &RouteSimpleAdvancedOptions_AppFirewall{v} iNdEx = postIndex - case 4: - if wireType == 0 { - var v schema.OpenApiValidationProperties - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= schema.OpenApiValidationProperties(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.ResponseValidationProperties = append(m.ResponseValidationProperties, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - var elementCount int - if elementCount != 0 && len(m.ResponseValidationProperties) == 0 { - m.ResponseValidationProperties = make([]schema.OpenApiValidationProperties, 0, elementCount) - } - for iNdEx < postIndex { - var v schema.OpenApiValidationProperties - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= schema.OpenApiValidationProperties(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.ResponseValidationProperties = append(m.ResponseValidationProperties, v) - } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field ResponseValidationProperties", wireType) - } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -83732,7 +52372,7 @@ func (m *OpenApiValidationModeActiveResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { +func (m *RouteTypeSimpleWithDefaultOriginPool) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -83755,17 +52395,17 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ValidateApiBySpecRule: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTypeSimpleWithDefaultOriginPool: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ValidateApiBySpecRule: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTypeSimpleWithDefaultOriginPool: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OpenApiValidationRules", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) } - var msglen int + m.HttpMethod = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -83775,29 +52415,14 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.OpenApiValidationRules = append(m.OpenApiValidationRules, &OpenApiValidationRule{}) - if err := m.OpenApiValidationRules[len(m.OpenApiValidationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FallThroughMode", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83824,16 +52449,16 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.FallThroughMode == nil { - m.FallThroughMode = &OpenApiFallThroughMode{} + if m.Path == nil { + m.Path = &schema.PathMatcherType{} } - if err := m.FallThroughMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodySkipValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AutoHostRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83864,13 +52489,13 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OversizedBodyChoice = &ValidateApiBySpecRule_OversizedBodySkipValidation{v} + m.HostRewriteParams = &RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite{v} iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OversizedBodyFailValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HostRewrite", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -83880,30 +52505,27 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.OversizedBodyChoice = &ValidateApiBySpecRule_OversizedBodyFailValidation{v} + m.HostRewriteParams = &RouteTypeSimpleWithDefaultOriginPool_HostRewrite{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Settings", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableHostRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83930,12 +52552,11 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Settings == nil { - m.Settings = &OpenApiValidationCommonSettings{} - } - if err := m.Settings.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.HostRewriteParams = &RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite{v} iNdEx = postIndex default: iNdEx = preIndex @@ -83961,7 +52582,7 @@ func (m *ValidateApiBySpecRule) Unmarshal(dAtA []byte) error { } return nil } -func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { +func (m *RouteTypeSimple) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -83984,15 +52605,15 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: OpenApiValidationRule: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTypeSimple: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: OpenApiValidationRule: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTypeSimple: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84019,16 +52640,35 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} + if m.Path == nil { + m.Path = &schema.PathMatcherType{} } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) + } + m.HttpMethod = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidationMode", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OriginPools", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84055,16 +52695,14 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ValidationMode == nil { - m.ValidationMode = &OpenApiValidationMode{} - } - if err := m.ValidationMode.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.OriginPools = append(m.OriginPools, &views.OriginPoolWithWeight{}) + if err := m.OriginPools[len(m.OriginPools)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 7: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AutoHostRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84095,11 +52733,11 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainChoice = &OpenApiValidationRule_AnyDomain{v} + m.HostRewriteParams = &RouteTypeSimple_AutoHostRewrite{v} iNdEx = postIndex - case 8: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SpecificDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HostRewrite", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84127,13 +52765,13 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DomainChoice = &OpenApiValidationRule_SpecificDomain{string(dAtA[iNdEx:postIndex])} + m.HostRewriteParams = &RouteTypeSimple_HostRewrite{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 11: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePath", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableHostRewrite", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -84143,29 +52781,32 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ConditionTypeChoice = &OpenApiValidationRule_BasePath{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.HostRewriteParams = &RouteTypeSimple_DisableHostRewrite{v} iNdEx = postIndex - case 12: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroup", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdvancedOptions", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -84175,27 +52816,31 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ConditionTypeChoice = &OpenApiValidationRule_ApiGroup{string(dAtA[iNdEx:postIndex])} + if m.AdvancedOptions == nil { + m.AdvancedOptions = &RouteSimpleAdvancedOptions{} + } + if err := m.AdvancedOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 13: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiEndpoint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84222,11 +52867,46 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiEndpointDetails{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) + if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IncomingPort", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.IncomingPort == nil { + m.IncomingPort = &schema.PortMatcherType{} + } + if err := m.IncomingPort.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ConditionTypeChoice = &OpenApiValidationRule_ApiEndpoint{v} iNdEx = postIndex default: iNdEx = preIndex @@ -84252,7 +52932,7 @@ func (m *OpenApiValidationRule) Unmarshal(dAtA []byte) error { } return nil } -func (m *ApiEndpointDetails) Unmarshal(dAtA []byte) error { +func (m *RouteTypeRedirect) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -84275,17 +52955,17 @@ func (m *ApiEndpointDetails) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ApiEndpointDetails: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTypeRedirect: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ApiEndpointDetails: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTypeRedirect: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -84295,149 +52975,86 @@ func (m *ApiEndpointDetails) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Path = string(dAtA[iNdEx:postIndex]) + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: - if wireType == 0 { - var v schema.HttpMethod - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= schema.HttpMethod(b&0x7F) << shift - if b < 0x80 { - break - } + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) + } + m.HttpMethod = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - m.Methods = append(m.Methods, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } + if iNdEx >= l { + return io.ErrUnexpectedEOF } - if packedLen < 0 { - return ErrInvalidLengthTypes + b := dAtA[iNdEx] + iNdEx++ + m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift + if b < 0x80 { + break } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthTypes + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RouteRedirect", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - if postIndex > l { + if iNdEx >= l { return io.ErrUnexpectedEOF } - var elementCount int - if elementCount != 0 && len(m.Methods) == 0 { - m.Methods = make([]schema.HttpMethod, 0, elementCount) - } - for iNdEx < postIndex { - var v schema.HttpMethod - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= schema.HttpMethod(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Methods = append(m.Methods, v) + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field Methods", wireType) } - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OriginServerSubsetRuleListType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + if m.RouteRedirect == nil { + m.RouteRedirect = &route.RouteRedirect{} } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.RouteRedirect.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OriginServerSubsetRuleListType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OriginServerSubsetRuleListType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84464,67 +53081,14 @@ func (m *OriginServerSubsetRuleListType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.OriginServerSubsetRules = append(m.OriginServerSubsetRules, &policy.OriginServerSubsetRule{}) - if err := m.OriginServerSubsetRules[len(m.OriginServerSubsetRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) + if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ClientSideDefenseType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ClientSideDefenseType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ClientSideDefenseType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IncomingPort", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84551,10 +53115,10 @@ func (m *ClientSideDefenseType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Policy == nil { - m.Policy = &ClientSideDefensePolicyType{} + if m.IncomingPort == nil { + m.IncomingPort = &schema.PortMatcherType{} } - if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.IncomingPort.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -84582,7 +53146,7 @@ func (m *ClientSideDefenseType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { +func (m *RouteTypeDirectResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -84605,15 +53169,15 @@ func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ClientSideDefensePolicyType: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTypeDirectResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ClientSideDefensePolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTypeDirectResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 2: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableJsInsert", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84640,15 +53204,35 @@ func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ClientSideDefensePolicyType_DisableJsInsert{v} iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpMethod", wireType) + } + m.HttpMethod = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.HttpMethod |= schema.HttpMethod(b&0x7F) << shift + if b < 0x80 { + break + } + } case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPages", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteDirectResponse", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84675,15 +53259,16 @@ func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.RouteDirectResponse == nil { + m.RouteDirectResponse = &route.RouteDirectResponse{} + } + if err := m.RouteDirectResponse.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ClientSideDefensePolicyType_JsInsertAllPages{v} iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPagesExcept", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84710,15 +53295,14 @@ func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &CSDJavaScriptInsertAllWithExceptionsType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Headers = append(m.Headers, &schema.HeaderMatcherType{}) + if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ClientSideDefensePolicyType_JsInsertAllPagesExcept{v} iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsInsertionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IncomingPort", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84745,11 +53329,12 @@ func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &CSDJavaScriptInsertType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.IncomingPort == nil { + m.IncomingPort = &schema.PortMatcherType{} + } + if err := m.IncomingPort.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ClientSideDefensePolicyType_JsInsertionRules{v} iNdEx = postIndex default: iNdEx = preIndex @@ -84775,7 +53360,7 @@ func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { } return nil } -func (m *CSDJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error { +func (m *RouteTypeCustomRoute) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -84798,15 +53383,15 @@ func (m *CSDJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CSDJavaScriptInsertAllWithExceptionsType: wiretype end group for non-group") + return fmt.Errorf("proto: RouteTypeCustomRoute: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CSDJavaScriptInsertAllWithExceptionsType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteTypeCustomRoute: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteRef", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84833,8 +53418,10 @@ func (m *CSDJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error if postIndex > l { return io.ErrUnexpectedEOF } - m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) - if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.RouteRef == nil { + m.RouteRef = &views.ObjectRefType{} + } + if err := m.RouteRef.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -84862,7 +53449,7 @@ func (m *CSDJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error } return nil } -func (m *CSDJavaScriptInsertType) Unmarshal(dAtA []byte) error { +func (m *RouteType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -84885,15 +53472,15 @@ func (m *CSDJavaScriptInsertType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CSDJavaScriptInsertType: wiretype end group for non-group") + return fmt.Errorf("proto: RouteType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CSDJavaScriptInsertType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SimpleRoute", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84920,14 +53507,15 @@ func (m *CSDJavaScriptInsertType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Rules = append(m.Rules, &CSDJavaScriptInsertionRule{}) - if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &RouteTypeSimple{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Choice = &RouteType_SimpleRoute{v} iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RedirectRoute", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -84954,10 +53542,81 @@ func (m *CSDJavaScriptInsertType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) - if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &RouteTypeRedirect{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Choice = &RouteType_RedirectRoute{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DirectResponseRoute", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &RouteTypeDirectResponse{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Choice = &RouteType_DirectResponseRoute{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CustomRouteObject", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &RouteTypeCustomRoute{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Choice = &RouteType_CustomRouteObject{v} iNdEx = postIndex default: iNdEx = preIndex @@ -84983,7 +53642,7 @@ func (m *CSDJavaScriptInsertType) Unmarshal(dAtA []byte) error { } return nil } -func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { +func (m *AdvancedOptionsType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -85006,15 +53665,15 @@ func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CSDJavaScriptInsertionRule: wiretype end group for non-group") + return fmt.Errorf("proto: AdvancedOptionsType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CSDJavaScriptInsertionRule: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AdvancedOptionsType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToAdd", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85041,18 +53700,16 @@ func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RequestHeadersToAdd = append(m.RequestHeadersToAdd, &schema.HeaderManipulationOptionType{}) + if err := m.RequestHeadersToAdd[len(m.RequestHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RequestHeadersToRemove", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -85062,30 +53719,27 @@ func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainMatcherChoice = &CSDJavaScriptInsertionRule_AnyDomain{v} + m.RequestHeadersToRemove = append(m.RequestHeadersToRemove, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 4: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToAdd", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85112,17 +53766,16 @@ func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.DomainType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ResponseHeadersToAdd = append(m.ResponseHeadersToAdd, &schema.HeaderManipulationOptionType{}) + if err := m.ResponseHeadersToAdd[len(m.ResponseHeadersToAdd)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &CSDJavaScriptInsertionRule_Domain{v} iNdEx = postIndex - case 5: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResponseHeadersToRemove", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -85132,84 +53785,82 @@ func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} + m.ResponseHeadersToRemove = append(m.ResponseHeadersToRemove, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxRequestHeaderSize", wireType) } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + m.MaxRequestHeaderSize = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.MaxRequestHeaderSize |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BufferPolicy", wireType) } - if skippy < 0 { + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BotDefenseAdvancedPolicyType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + if m.BufferPolicy == nil { + m.BufferPolicy = &schema.BufferConfigType{} } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.BufferPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: BotDefenseAdvancedPolicyType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BotDefenseAdvancedPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProtectedAppEndpoints", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CompressionParams", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85236,16 +53887,18 @@ func (m *BotDefenseAdvancedPolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProtectedAppEndpoints = append(m.ProtectedAppEndpoints, &ProtectedAppEndpointType{}) - if err := m.ProtectedAppEndpoints[len(m.ProtectedAppEndpoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.CompressionParams == nil { + m.CompressionParams = &virtual_host.CompressionType{} + } + if err := m.CompressionParams.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsDownloadPath", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CustomErrors", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -85255,27 +53908,108 @@ func (m *BotDefenseAdvancedPolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.JsDownloadPath = string(dAtA[iNdEx:postIndex]) + if m.CustomErrors == nil { + m.CustomErrors = make(map[uint32]string) + } + var mapkey uint32 + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapkey |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.CustomErrors[mapkey] = mapvalue iNdEx = postIndex - case 4: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableMobileSdk", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JavascriptInfo", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85302,15 +54036,16 @@ func (m *BotDefenseAdvancedPolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.JavascriptInfo == nil { + m.JavascriptInfo = &virtual_host.JavaScriptConfigType{} + } + if err := m.JavascriptInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MobileSdkChoice = &BotDefenseAdvancedPolicyType_DisableMobileSdk{v} iNdEx = postIndex - case 5: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MobileSdkConfig", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Jwt", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85337,70 +54072,35 @@ func (m *BotDefenseAdvancedPolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &BotAdvancedMobileSDKConfigType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Jwt = append(m.Jwt, &views.ObjectRefType{}) + if err := m.Jwt[len(m.Jwt)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MobileSdkChoice = &BotDefenseAdvancedPolicyType_MobileSdkConfig{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BotAdvancedMobileSDKConfigType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IdleTimeout", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.IdleTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.IdleTimeout |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: BotAdvancedMobileSDKConfigType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BotAdvancedMobileSDKConfigType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MobileIdentifier", wireType) + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableDefaultErrorPages", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -85410,84 +54110,15 @@ func (m *BotAdvancedMobileSDKConfigType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.MobileIdentifier == nil { - m.MobileIdentifier = &MobileTrafficIdentifierType{} - } - if err := m.MobileIdentifier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProtectedAppEndpointType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProtectedAppEndpointType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.DisableDefaultErrorPages = bool(v != 0) + case 15: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnablePathNormalize", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85514,16 +54145,15 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.PathNormalizeChoice = &AdvancedOptionsType_EnablePathNormalize{v} iNdEx = postIndex - case 3: + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisablePathNormalize", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85554,11 +54184,11 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &ProtectedAppEndpointType_AnyDomain{v} + m.PathNormalizeChoice = &AdvancedOptionsType_DisablePathNormalize{v} iNdEx = postIndex - case 4: + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableStrictSniHostHeaderCheck", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85585,15 +54215,15 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.DomainType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &ProtectedAppEndpointType_Domain{v} + m.StrictSniHostHeaderCheckChoice = &AdvancedOptionsType_EnableStrictSniHostHeaderCheck{v} iNdEx = postIndex - case 5: + case 19: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdditionalDomains", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85620,16 +54250,15 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.DomainNameList{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.StrictSniHostHeaderCheckChoice = &AdvancedOptionsType_AdditionalDomains{v} iNdEx = postIndex - case 6: + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CookiesToModify", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85656,14 +54285,67 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Query = append(m.Query, &Query{}) - if err := m.Query[len(m.Query)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.CookiesToModify = append(m.CookiesToModify, &schema.CookieManipulationOptionType{}) + if err := m.CookiesToModify[len(m.CookiesToModify)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 7: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DDoSClientSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DDoSClientSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DDoSClientSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestBody", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AsnList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85690,14 +54372,16 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RequestBody = append(m.RequestBody, &RequestBody{}) - if err := m.RequestBody[len(m.RequestBody)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.AsnList == nil { + m.AsnList = &policy.AsnMatchList{} + } + if err := m.AsnList.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 8: + case 3: if wireType == 0 { - var v schema.BotHttpMethod + var v policy.CountryCode for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -85707,12 +54391,12 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= schema.BotHttpMethod(b&0x7F) << shift + v |= policy.CountryCode(b&0x7F) << shift if b < 0x80 { break } } - m.HttpMethods = append(m.HttpMethods, v) + m.CountryList = append(m.CountryList, v) } else if wireType == 2 { var packedLen int for shift := uint(0); ; shift += 7 { @@ -85740,11 +54424,11 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } var elementCount int - if elementCount != 0 && len(m.HttpMethods) == 0 { - m.HttpMethods = make([]schema.BotHttpMethod, 0, elementCount) + if elementCount != 0 && len(m.CountryList) == 0 { + m.CountryList = make([]policy.CountryCode, 0, elementCount) } for iNdEx < postIndex { - var v schema.BotHttpMethod + var v policy.CountryCode for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -85754,19 +54438,19 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= schema.BotHttpMethod(b&0x7F) << shift + v |= policy.CountryCode(b&0x7F) << shift if b < 0x80 { break } } - m.HttpMethods = append(m.HttpMethods, v) + m.CountryList = append(m.CountryList, v) } } else { - return fmt.Errorf("proto: wrong wireType = %d for field HttpMethods", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CountryList", wireType) } - case 10: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WebClient", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TlsFingerprintMatcher", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85793,15 +54477,105 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.TlsFingerprintMatcher == nil { + m.TlsFingerprintMatcher = &policy.TlsFingerprintMatcherType{} + } + if err := m.TlsFingerprintMatcher.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AppTrafficTypeChoice = &ProtectedAppEndpointType_WebClient{v} iNdEx = postIndex - case 11: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DDoSMitigationRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DDoSMitigationRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DDoSMitigationRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MobileClient", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Block", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85832,11 +54606,11 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AppTrafficTypeChoice = &ProtectedAppEndpointType_MobileClient{v} + m.MitigationAction = &DDoSMitigationRule_Block{v} iNdEx = postIndex - case 12: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WebMobileClient", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DdosClientSource", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85863,15 +54637,15 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &WebMobileTrafficType{} + v := &DDoSClientSource{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AppTrafficTypeChoice = &ProtectedAppEndpointType_WebMobileClient{v} + m.MitigationChoice = &DDoSMitigationRule_DdosClientSource{v} iNdEx = postIndex - case 14: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UndefinedFlowLabel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IpPrefixList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85898,15 +54672,15 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &policy.PrefixMatchList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.FlowLabelChoice = &ProtectedAppEndpointType_UndefinedFlowLabel{v} + m.MitigationChoice = &DDoSMitigationRule_IpPrefixList{v} iNdEx = postIndex - case 15: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FlowLabel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTimestamp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85933,11 +54707,12 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.BotDefenseFlowLabelCategoriesChoiceType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.ExpirationTimestamp == nil { + m.ExpirationTimestamp = &types.Timestamp{} + } + if err := m.ExpirationTimestamp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.FlowLabelChoice = &ProtectedAppEndpointType_FlowLabel{v} iNdEx = postIndex default: iNdEx = preIndex @@ -85963,7 +54738,7 @@ func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { } return nil } -func (m *RequestBody) Unmarshal(dAtA []byte) error { +func (m *SingleLoadBalancerAppSetting) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -85986,17 +54761,17 @@ func (m *RequestBody) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RequestBody: wiretype end group for non-group") + return fmt.Errorf("proto: SingleLoadBalancerAppSetting: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RequestBody: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SingleLoadBalancerAppSetting: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableDiscovery", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86006,29 +54781,32 @@ func (m *RequestBody) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) + v := &common_waf.ApiDiscoverySetting{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDiscoveryChoice = &SingleLoadBalancerAppSetting_EnableDiscovery{v} iNdEx = postIndex - case 2: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExactValue", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableDiscovery", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86038,29 +54816,32 @@ func (m *RequestBody) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ValueType = &RequestBody_ExactValue{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDiscoveryChoice = &SingleLoadBalancerAppSetting_DisableDiscovery{v} iNdEx = postIndex - case 3: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RegexValue", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableMaliciousUserDetection", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86070,23 +54851,61 @@ func (m *RequestBody) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ValueType = &RequestBody_RegexValue{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserDetectionChoice = &SingleLoadBalancerAppSetting_EnableMaliciousUserDetection{v} + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableMaliciousUserDetection", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.MaliciousUserDetectionChoice = &SingleLoadBalancerAppSetting_DisableMaliciousUserDetection{v} iNdEx = postIndex default: iNdEx = preIndex @@ -86112,7 +54931,7 @@ func (m *RequestBody) Unmarshal(dAtA []byte) error { } return nil } -func (m *Query) Unmarshal(dAtA []byte) error { +func (m *OriginServerSubsetRuleListType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86135,17 +54954,17 @@ func (m *Query) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: Query: wiretype end group for non-group") + return fmt.Errorf("proto: OriginServerSubsetRuleListType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: Query: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: OriginServerSubsetRuleListType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetRules", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86155,91 +54974,82 @@ func (m *Query) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExactValue", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF + m.OriginServerSubsetRules = append(m.OriginServerSubsetRules, &policy.OriginServerSubsetRule{}) + if err := m.OriginServerSubsetRules[len(m.OriginServerSubsetRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.ValueType = &Query_ExactValue{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RegexValue", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } - intStringLen := int(stringLen) - if intStringLen < 0 { + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.ValueType = &Query_RegexValue{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 4: + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ClientSideDefenseType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ClientSideDefenseType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ClientSideDefenseType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CheckPresence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86266,11 +55076,12 @@ func (m *Query) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Policy == nil { + m.Policy = &ClientSideDefensePolicyType{} + } + if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValueType = &Query_CheckPresence{v} iNdEx = postIndex default: iNdEx = preIndex @@ -86296,7 +55107,7 @@ func (m *Query) Unmarshal(dAtA []byte) error { } return nil } -func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { +func (m *ClientSideDefensePolicyType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86319,34 +55130,15 @@ func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ShapeBotDefenseType: wiretype end group for non-group") + return fmt.Errorf("proto: ClientSideDefensePolicyType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeBotDefenseType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ClientSideDefensePolicyType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field RegionalEndpoint", wireType) - } - m.RegionalEndpoint = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.RegionalEndpoint |= ShapeBotDefenseRegion(b&0x7F) << shift - if b < 0x80 { - break - } - } case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableJsInsert", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86373,18 +55165,17 @@ func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Policy == nil { - m.Policy = &ShapeBotDefensePolicyType{} - } - if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.JavaScriptChoice = &ClientSideDefensePolicyType_DisableJsInsert{v} iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Timeout", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPages", wireType) } - m.Timeout = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86394,14 +55185,30 @@ func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Timeout |= uint32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 5: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.JavaScriptChoice = &ClientSideDefensePolicyType_JsInsertAllPages{v} + iNdEx = postIndex + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableCorsSupport", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPagesExcept", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86428,15 +55235,15 @@ func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &CSDJavaScriptInsertAllWithExceptionsType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.CorsSupportChoice = &ShapeBotDefenseType_EnableCorsSupport{v} + m.JavaScriptChoice = &ClientSideDefensePolicyType_JsInsertAllPagesExcept{v} iNdEx = postIndex - case 6: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableCorsSupport", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsInsertionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86463,11 +55270,11 @@ func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &CSDJavaScriptInsertType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.CorsSupportChoice = &ShapeBotDefenseType_DisableCorsSupport{v} + m.JavaScriptChoice = &ClientSideDefensePolicyType_JsInsertionRules{v} iNdEx = postIndex default: iNdEx = preIndex @@ -86493,7 +55300,7 @@ func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { } return nil } -func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { +func (m *CSDJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86516,15 +55323,15 @@ func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: BotDefenseAdvancedType: wiretype end group for non-group") + return fmt.Errorf("proto: CSDJavaScriptInsertAllWithExceptionsType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: BotDefenseAdvancedType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CSDJavaScriptInsertAllWithExceptionsType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Web", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86551,16 +55358,67 @@ func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Web == nil { - m.Web = &views.ObjectRefType{} - } - if err := m.Web.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) + if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CSDJavaScriptInsertType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CSDJavaScriptInsertType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CSDJavaScriptInsertType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Mobile", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86587,16 +55445,14 @@ func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Mobile == nil { - m.Mobile = &views.ObjectRefType{} - } - if err := m.Mobile.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Rules = append(m.Rules, &CSDJavaScriptInsertionRule{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86623,10 +55479,8 @@ func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Policy == nil { - m.Policy = &BotDefenseAdvancedPolicyType{} - } - if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) + if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -86654,7 +55508,7 @@ func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { +func (m *CSDJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86677,15 +55531,15 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ShapeBotDefensePolicyType: wiretype end group for non-group") + return fmt.Errorf("proto: CSDJavaScriptInsertionRule: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeBotDefensePolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CSDJavaScriptInsertionRule: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProtectedAppEndpoints", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86712,16 +55566,18 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProtectedAppEndpoints = append(m.ProtectedAppEndpoints, &AppEndpointType{}) - if err := m.ProtectedAppEndpoints[len(m.ProtectedAppEndpoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsDownloadPath", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86731,27 +55587,30 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.JsDownloadPath = string(dAtA[iNdEx:postIndex]) + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainMatcherChoice = &CSDJavaScriptInsertionRule_AnyDomain{v} iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableJsInsert", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86778,15 +55637,15 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &schema.DomainType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ShapeBotDefensePolicyType_DisableJsInsert{v} + m.DomainMatcherChoice = &CSDJavaScriptInsertionRule_Domain{v} iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPages", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86813,15 +55672,69 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ShapeJavaScriptInsertAllType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ShapeBotDefensePolicyType_JsInsertAllPages{v} iNdEx = postIndex - case 6: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *BotDefenseAdvancedPolicyType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: BotDefenseAdvancedPolicyType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: BotDefenseAdvancedPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPagesExcept", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ProtectedAppEndpoints", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -86848,17 +55761,16 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ShapeJavaScriptInsertAllWithExceptionsType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ProtectedAppEndpoints = append(m.ProtectedAppEndpoints, &ProtectedAppEndpointType{}) + if err := m.ProtectedAppEndpoints[len(m.ProtectedAppEndpoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JavaScriptChoice = &ShapeBotDefensePolicyType_JsInsertAllPagesExcept{v} iNdEx = postIndex - case 7: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsInsertionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsDownloadPath", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -86868,28 +55780,25 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &ShapeJavaScriptInsertType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.JavaScriptChoice = &ShapeBotDefensePolicyType_JsInsertionRules{v} + m.JsDownloadPath = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 9: + case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field DisableMobileSdk", wireType) } @@ -86922,9 +55831,9 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MobileSdkChoice = &ShapeBotDefensePolicyType_DisableMobileSdk{v} + m.MobileSdkChoice = &BotDefenseAdvancedPolicyType_DisableMobileSdk{v} iNdEx = postIndex - case 10: + case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MobileSdkConfig", wireType) } @@ -86953,31 +55862,12 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &MobileSDKConfigType{} + v := &BotAdvancedMobileSDKConfigType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MobileSdkChoice = &ShapeBotDefensePolicyType_MobileSdkConfig{v} + m.MobileSdkChoice = &BotDefenseAdvancedPolicyType_MobileSdkConfig{v} iNdEx = postIndex - case 11: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field JavascriptMode", wireType) - } - m.JavascriptMode = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.JavascriptMode |= schema.JavaScriptMode(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -87002,7 +55892,7 @@ func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { } return nil } -func (m *MobileTrafficIdentifierType) Unmarshal(dAtA []byte) error { +func (m *BotAdvancedMobileSDKConfigType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87025,15 +55915,15 @@ func (m *MobileTrafficIdentifierType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MobileTrafficIdentifierType: wiretype end group for non-group") + return fmt.Errorf("proto: BotAdvancedMobileSDKConfigType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MobileTrafficIdentifierType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: BotAdvancedMobileSDKConfigType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MobileIdentifier", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87060,8 +55950,10 @@ func (m *MobileTrafficIdentifierType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Headers = append(m.Headers, &policy.HeaderMatcherTypeBasic{}) - if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.MobileIdentifier == nil { + m.MobileIdentifier = &MobileTrafficIdentifierType{} + } + if err := m.MobileIdentifier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -87089,7 +55981,7 @@ func (m *MobileTrafficIdentifierType) Unmarshal(dAtA []byte) error { } return nil } -func (m *MobileSDKConfigType) Unmarshal(dAtA []byte) error { +func (m *ProtectedAppEndpointType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87112,17 +56004,17 @@ func (m *MobileSDKConfigType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MobileSDKConfigType: wiretype end group for non-group") + return fmt.Errorf("proto: ProtectedAppEndpointType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MobileSDKConfigType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ProtectedAppEndpointType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReloadHeaderName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87132,27 +56024,137 @@ func (m *MobileSDKConfigType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainMatcherChoice = &ProtectedAppEndpointType_AnyDomain{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.DomainType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DomainMatcherChoice = &ProtectedAppEndpointType_Domain{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ReloadHeaderName = string(dAtA[iNdEx:postIndex]) + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 2: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MobileIdentifier", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87179,69 +56181,14 @@ func (m *MobileSDKConfigType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MobileIdentifier == nil { - m.MobileIdentifier = &MobileTrafficIdentifierType{} - } - if err := m.MobileIdentifier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Query = append(m.Query, &Query{}) + if err := m.Query[len(m.Query)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AppEndpointType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AppEndpointType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AppEndpointType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RequestBody", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87268,14 +56215,12 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.RequestBody = append(m.RequestBody, &RequestBody{}) + if err := m.RequestBody[len(m.RequestBody)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 8: if wireType == 0 { var v schema.BotHttpMethod for shift := uint(0); ; shift += 7 { @@ -87344,11 +56289,11 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } else { return fmt.Errorf("proto: wrong wireType = %d for field HttpMethods", wireType) } - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Protocol", wireType) + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WebClient", wireType) } - m.Protocol = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87358,14 +56303,30 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Protocol |= URLScheme(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 4: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AppTrafficTypeChoice = &ProtectedAppEndpointType_WebClient{v} + iNdEx = postIndex + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MobileClient", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87392,16 +56353,15 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.AppTrafficTypeChoice = &ProtectedAppEndpointType_MobileClient{v} iNdEx = postIndex - case 6: + case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WebMobileClient", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87428,15 +56388,15 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &WebMobileTrafficType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &AppEndpointType_AnyDomain{v} + m.AppTrafficTypeChoice = &ProtectedAppEndpointType_WebMobileClient{v} iNdEx = postIndex - case 7: + case 14: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UndefinedFlowLabel", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87463,15 +56423,15 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.DomainType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &AppEndpointType_Domain{v} + m.FlowLabelChoice = &ProtectedAppEndpointType_UndefinedFlowLabel{v} iNdEx = postIndex - case 9: + case 15: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Web", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field FlowLabel", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87498,17 +56458,70 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &schema.BotDefenseFlowLabelCategoriesChoiceType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AppTrafficTypeChoice = &AppEndpointType_Web{v} + m.FlowLabelChoice = &ProtectedAppEndpointType_FlowLabel{v} iNdEx = postIndex - case 10: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RequestBody) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RequestBody: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RequestBody: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Mobile", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87518,32 +56531,29 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.AppTrafficTypeChoice = &AppEndpointType_Mobile{v} + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 11: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WebMobile", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExactValue", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87553,32 +56563,29 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &WebMobileTrafficType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.AppTrafficTypeChoice = &AppEndpointType_WebMobile{v} + m.ValueType = &RequestBody_ExactValue{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 12: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Mitigation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RegexValue", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87588,33 +56595,82 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Mitigation == nil { - m.Mitigation = &policy.ShapeBotMitigationAction{} - } - if err := m.Mitigation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ValueType = &RequestBody_RegexValue{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { return err } - iNdEx = postIndex - case 14: + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Query) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Query: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Query: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UndefinedFlowLabel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87624,32 +56680,29 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.FlowLabelChoice = &AppEndpointType_UndefinedFlowLabel{v} + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 15: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FlowLabel", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExactValue", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87659,32 +56712,29 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.BotDefenseFlowLabelCategoriesChoiceType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.FlowLabelChoice = &AppEndpointType_FlowLabel{v} + m.ValueType = &Query_ExactValue{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 17: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MitigateGoodBots", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RegexValue", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87694,30 +56744,27 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.GoodbotChoice = &AppEndpointType_MitigateGoodBots{v} + m.ValueType = &Query_RegexValue{string(dAtA[iNdEx:postIndex])} iNdEx = postIndex - case 19: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllowGoodBots", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CheckPresence", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87748,7 +56795,7 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.GoodbotChoice = &AppEndpointType_AllowGoodBots{v} + m.ValueType = &Query_CheckPresence{v} iNdEx = postIndex default: iNdEx = preIndex @@ -87774,7 +56821,7 @@ func (m *AppEndpointType) Unmarshal(dAtA []byte) error { } return nil } -func (m *WebMobileTrafficType) Unmarshal(dAtA []byte) error { +func (m *ShapeBotDefenseType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87797,17 +56844,17 @@ func (m *WebMobileTrafficType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: WebMobileTrafficType: wiretype end group for non-group") + return fmt.Errorf("proto: ShapeBotDefenseType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: WebMobileTrafficType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ShapeBotDefenseType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Header", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RegionalEndpoint", wireType) } - var msglen int + m.RegionalEndpoint = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87817,31 +56864,14 @@ func (m *WebMobileTrafficType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.RegionalEndpoint |= ShapeBotDefenseRegion(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Header == nil { - m.Header = &policy.HeaderMatcherTypeBasic{} - } - if err := m.Header.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87868,16 +56898,18 @@ func (m *WebMobileTrafficType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Headers = append(m.Headers, &policy.HeaderMatcherTypeBasic{}) - if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Policy == nil { + m.Policy = &ShapeBotDefensePolicyType{} + } + if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MobileIdentifier", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Timeout", wireType) } - m.MobileIdentifier = 0 + m.Timeout = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -87887,67 +56919,14 @@ func (m *WebMobileTrafficType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.MobileIdentifier |= MobileIdentifier(b&0x7F) << shift + m.Timeout |= uint32(b&0x7F) << shift if b < 0x80 { break } } - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ShapeJavaScriptInsertType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ShapeJavaScriptInsertType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeJavaScriptInsertType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableCorsSupport", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -87974,14 +56953,15 @@ func (m *ShapeJavaScriptInsertType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Rules = append(m.Rules, &ShapeJavaScriptInsertionRule{}) - if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.CorsSupportChoice = &ShapeBotDefenseType_EnableCorsSupport{v} iNdEx = postIndex - case 3: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableCorsSupport", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88008,10 +56988,11 @@ func (m *ShapeJavaScriptInsertType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) - if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.CorsSupportChoice = &ShapeBotDefenseType_DisableCorsSupport{v} iNdEx = postIndex default: iNdEx = preIndex @@ -88037,7 +57018,7 @@ func (m *ShapeJavaScriptInsertType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error { +func (m *BotDefenseAdvancedType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88060,17 +57041,17 @@ func (m *ShapeJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) erro fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ShapeJavaScriptInsertAllWithExceptionsType: wiretype end group for non-group") + return fmt.Errorf("proto: BotDefenseAdvancedType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeJavaScriptInsertAllWithExceptionsType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: BotDefenseAdvancedType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field JavascriptLocation", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Web", wireType) } - m.JavascriptLocation = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -88080,14 +57061,31 @@ func (m *ShapeJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) erro } b := dAtA[iNdEx] iNdEx++ - m.JavascriptLocation |= JavaScriptLocation(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Web == nil { + m.Web = &views.ObjectRefType{} + } + if err := m.Web.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Mobile", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88114,69 +57112,18 @@ func (m *ShapeJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) erro if postIndex > l { return io.ErrUnexpectedEOF } - m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) - if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + if m.Mobile == nil { + m.Mobile = &views.ObjectRefType{} } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { + if err := m.Mobile.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ShapeJavaScriptInsertAllType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ShapeJavaScriptInsertAllType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeJavaScriptInsertAllType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field JavascriptLocation", wireType) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) } - m.JavascriptLocation = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -88186,11 +57133,28 @@ func (m *ShapeJavaScriptInsertAllType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.JavascriptLocation |= JavaScriptLocation(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policy == nil { + m.Policy = &BotDefenseAdvancedPolicyType{} + } + if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -88215,7 +57179,7 @@ func (m *ShapeJavaScriptInsertAllType) Unmarshal(dAtA []byte) error { } return nil } -func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { +func (m *ShapeBotDefensePolicyType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88238,15 +57202,15 @@ func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ShapeJavaScriptInsertionRule: wiretype end group for non-group") + return fmt.Errorf("proto: ShapeBotDefensePolicyType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeJavaScriptInsertionRule: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ShapeBotDefensePolicyType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ProtectedAppEndpoints", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88273,18 +57237,16 @@ func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ProtectedAppEndpoints = append(m.ProtectedAppEndpoints, &AppEndpointType{}) + if err := m.ProtectedAppEndpoints[len(m.ProtectedAppEndpoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsDownloadPath", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -88294,30 +57256,27 @@ func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DomainMatcherChoice = &ShapeJavaScriptInsertionRule_AnyDomain{v} + m.JsDownloadPath = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableJsInsert", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88344,15 +57303,15 @@ func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.DomainType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &ShapeJavaScriptInsertionRule_Domain{v} + m.JavaScriptChoice = &ShapeBotDefensePolicyType_DisableJsInsert{v} iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPages", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88379,18 +57338,17 @@ func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ShapeJavaScriptInsertAllType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.JavaScriptChoice = &ShapeBotDefensePolicyType_JsInsertAllPages{v} iNdEx = postIndex case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field JavascriptLocation", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field JsInsertAllPagesExcept", wireType) } - m.JavascriptLocation = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -88400,67 +57358,30 @@ func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.JavascriptLocation |= JavaScriptLocation(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + v := &ShapeJavaScriptInsertAllWithExceptionsType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ShapeJavaScriptExclusionRule: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ShapeJavaScriptExclusionRule: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.JavaScriptChoice = &ShapeBotDefensePolicyType_JsInsertAllPagesExcept{v} + iNdEx = postIndex + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsInsertionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88487,16 +57408,15 @@ func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Metadata == nil { - m.Metadata = &schema.MessageMetaType{} - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ShapeJavaScriptInsertType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.JavaScriptChoice = &ShapeBotDefensePolicyType_JsInsertionRules{v} iNdEx = postIndex - case 3: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableMobileSdk", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88527,11 +57447,11 @@ func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &ShapeJavaScriptExclusionRule_AnyDomain{v} + m.MobileSdkChoice = &ShapeBotDefensePolicyType_DisableMobileSdk{v} iNdEx = postIndex - case 4: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MobileSdkConfig", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88558,17 +57478,17 @@ func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.DomainType{} + v := &MobileSDKConfigType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DomainMatcherChoice = &ShapeJavaScriptExclusionRule_Domain{v} + m.MobileSdkChoice = &ShapeBotDefensePolicyType_MobileSdkConfig{v} iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field JavascriptMode", wireType) } - var msglen int + m.JavascriptMode = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -88578,28 +57498,11 @@ func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.JavascriptMode |= schema.JavaScriptMode(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Path == nil { - m.Path = &schema.PathMatcherType{} - } - if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -88624,7 +57527,7 @@ func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { } return nil } -func (m *IPThreatCategoryListType) Unmarshal(dAtA []byte) error { +func (m *MobileTrafficIdentifierType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88647,81 +57550,46 @@ func (m *IPThreatCategoryListType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: IPThreatCategoryListType: wiretype end group for non-group") + return fmt.Errorf("proto: MobileTrafficIdentifierType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: IPThreatCategoryListType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MobileTrafficIdentifierType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType == 0 { - var v policy.IPThreatCategory - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= policy.IPThreatCategory(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IpThreatCategories = append(m.IpThreatCategories, v) - } else if wireType == 2 { - var packedLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - packedLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if packedLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + packedLen - if postIndex < 0 { - return ErrInvalidLengthTypes + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - if postIndex > l { + if iNdEx >= l { return io.ErrUnexpectedEOF } - var elementCount int - if elementCount != 0 && len(m.IpThreatCategories) == 0 { - m.IpThreatCategories = make([]policy.IPThreatCategory, 0, elementCount) - } - for iNdEx < postIndex { - var v policy.IPThreatCategory - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= policy.IPThreatCategory(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IpThreatCategories = append(m.IpThreatCategories, v) + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break } - } else { - return fmt.Errorf("proto: wrong wireType = %d for field IpThreatCategories", wireType) } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Headers = append(m.Headers, &policy.HeaderMatcherTypeBasic{}) + if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -88746,7 +57614,7 @@ func (m *IPThreatCategoryListType) Unmarshal(dAtA []byte) error { } return nil } -func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { +func (m *MobileSDKConfigType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88769,15 +57637,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + return fmt.Errorf("proto: MobileSDKConfigType: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MobileSDKConfigType: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Domains", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ReloadHeaderName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -88805,11 +57673,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Domains = append(m.Domains, string(dAtA[iNdEx:postIndex])) + m.ReloadHeaderName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Http", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MobileIdentifier", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88836,15 +57704,69 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ProxyTypeHttp{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.MobileIdentifier == nil { + m.MobileIdentifier = &MobileTrafficIdentifierType{} + } + if err := m.MobileIdentifier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.LoadbalancerType = &GlobalSpecType_Http{v} iNdEx = postIndex - case 3: + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AppEndpointType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AppEndpointType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AppEndpointType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Https", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88871,15 +57793,104 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ProxyTypeHttps{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.LoadbalancerType = &GlobalSpecType_Https{v} iNdEx = postIndex + case 2: + if wireType == 0 { + var v schema.BotHttpMethod + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.BotHttpMethod(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.HttpMethods = append(m.HttpMethods, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + packedLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + var elementCount int + if elementCount != 0 && len(m.HttpMethods) == 0 { + m.HttpMethods = make([]schema.BotHttpMethod, 0, elementCount) + } + for iNdEx < postIndex { + var v schema.BotHttpMethod + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= schema.BotHttpMethod(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.HttpMethods = append(m.HttpMethods, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field HttpMethods", wireType) + } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Protocol", wireType) + } + m.Protocol = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Protocol |= URLScheme(b&0x7F) << shift + if b < 0x80 { + break + } + } case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublic", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88906,15 +57917,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.AdvertisePublic{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AdvertiseChoice = &GlobalSpecType_AdvertiseOnPublic{v} iNdEx = postIndex - case 5: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseCustom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88941,15 +57953,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.AdvertiseCustom{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AdvertiseChoice = &GlobalSpecType_AdvertiseCustom{v} + m.DomainMatcherChoice = &AppEndpointType_AnyDomain{v} iNdEx = postIndex - case 6: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultRoutePools", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88976,14 +57988,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DefaultRoutePools = append(m.DefaultRoutePools, &views.OriginPoolWithWeight{}) - if err := m.DefaultRoutePools[len(m.DefaultRoutePools)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.DomainType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.DomainMatcherChoice = &AppEndpointType_Domain{v} iNdEx = postIndex - case 7: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Routes", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Web", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89010,14 +58023,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Routes = append(m.Routes, &RouteType{}) - if err := m.Routes[len(m.Routes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.AppTrafficTypeChoice = &AppEndpointType_Web{v} iNdEx = postIndex - case 8: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CorsPolicy", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Mobile", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89044,16 +58058,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CorsPolicy == nil { - m.CorsPolicy = &schema.CorsPolicy{} - } - if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.AppTrafficTypeChoice = &AppEndpointType_Mobile{v} iNdEx = postIndex case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WebMobile", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89080,15 +58093,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &WebMobileTrafficType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.WafChoice = &GlobalSpecType_DisableWaf{v} + m.AppTrafficTypeChoice = &AppEndpointType_WebMobile{v} iNdEx = postIndex case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DoNotAdvertise", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Mitigation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89115,15 +58128,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Mitigation == nil { + m.Mitigation = &policy.ShapeBotMitigationAction{} + } + if err := m.Mitigation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AdvertiseChoice = &GlobalSpecType_DoNotAdvertise{v} iNdEx = postIndex - case 13: + case 14: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublicDefaultVip", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UndefinedFlowLabel", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89154,31 +58168,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AdvertiseChoice = &GlobalSpecType_AdvertiseOnPublicDefaultVip{v} + m.FlowLabelChoice = &AppEndpointType_UndefinedFlowLabel{v} iNdEx = postIndex - case 17: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AddLocation", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.AddLocation = bool(v != 0) - case 18: + case 15: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field FlowLabel", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89205,15 +58199,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.JavascriptChallengeType{} + v := &schema.BotDefenseFlowLabelCategoriesChoiceType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &GlobalSpecType_JsChallenge{v} + m.FlowLabelChoice = &AppEndpointType_FlowLabel{v} iNdEx = postIndex - case 19: + case 17: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MoreOption", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MitigateGoodBots", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89240,16 +58234,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MoreOption == nil { - m.MoreOption = &AdvancedOptionsType{} - } - if err := m.MoreOption.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.GoodbotChoice = &AppEndpointType_MitigateGoodBots{v} iNdEx = postIndex - case 20: + case 19: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserIdentification", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AllowGoodBots", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89276,50 +58269,68 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.UserIdChoice = &GlobalSpecType_UserIdentification{v} + m.GoodbotChoice = &AppEndpointType_AllowGoodBots{v} iNdEx = postIndex - case 22: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableRateLimit", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } - if msglen < 0 { + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *WebMobileTrafficType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - m.RateLimitChoice = &GlobalSpecType_DisableRateLimit{v} - iNdEx = postIndex - case 23: + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: WebMobileTrafficType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: WebMobileTrafficType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RateLimit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Header", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89346,15 +58357,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &RateLimitConfigType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Header == nil { + m.Header = &policy.HeaderMatcherTypeBasic{} + } + if err := m.Header.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.RateLimitChoice = &GlobalSpecType_RateLimit{v} iNdEx = postIndex - case 24: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89381,17 +58393,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.CaptchaChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Headers = append(m.Headers, &policy.HeaderMatcherTypeBasic{}) + if err := m.Headers[len(m.Headers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &GlobalSpecType_CaptchaChallenge{v} iNdEx = postIndex - case 26: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MobileIdentifier", wireType) } - var msglen int + m.MobileIdentifier = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -89401,30 +58412,67 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.MobileIdentifier |= MobileIdentifier(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ShapeJavaScriptInsertType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - m.ChallengeType = &GlobalSpecType_NoChallenge{v} - iNdEx = postIndex - case 27: + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ShapeJavaScriptInsertType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ShapeJavaScriptInsertType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpsAutoCert", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89451,15 +58499,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ProxyTypeHttpsAutoCerts{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Rules = append(m.Rules, &ShapeJavaScriptInsertionRule{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.LoadbalancerType = &GlobalSpecType_HttpsAutoCert{v} iNdEx = postIndex - case 28: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoHostRewrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89486,17 +58533,69 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) + if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HostRewriteParams = &GlobalSpecType_AutoHostRewrite{v} iNdEx = postIndex - case 29: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HostRewrite", wireType) + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } - var stringLen uint64 + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ShapeJavaScriptInsertAllWithExceptionsType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ShapeJavaScriptInsertAllWithExceptionsType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ShapeJavaScriptInsertAllWithExceptionsType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field JavascriptLocation", wireType) + } + m.JavascriptLocation = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -89506,27 +58605,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.JavascriptLocation |= JavaScriptLocation(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.HostRewriteParams = &GlobalSpecType_HostRewrite{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - case 30: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableHostRewrite", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ExcludeList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89553,53 +58639,69 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ExcludeList = append(m.ExcludeList, &ShapeJavaScriptExclusionRule{}) + if err := m.ExcludeList[len(m.ExcludeList)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HostRewriteParams = &GlobalSpecType_DisableHostRewrite{v} iNdEx = postIndex - case 32: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } - if msglen < 0 { + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - if m.MaliciousUserMitigation == nil { - m.MaliciousUserMitigation = &views.ObjectRefType{} + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ShapeJavaScriptInsertAllType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - if err := m.MaliciousUserMitigation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + if iNdEx >= l { + return io.ErrUnexpectedEOF } - iNdEx = postIndex - case 33: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WafExclusionRules", wireType) + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } - var msglen int + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ShapeJavaScriptInsertAllType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ShapeJavaScriptInsertAllType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field JavascriptLocation", wireType) + } + m.JavascriptLocation = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -89609,29 +58711,67 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.JavascriptLocation |= JavaScriptLocation(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.WafExclusionRules = append(m.WafExclusionRules, &policy.SimpleWafExclusionRule{}) - if err := m.WafExclusionRules[len(m.WafExclusionRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ShapeJavaScriptInsertionRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - iNdEx = postIndex - case 34: + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ShapeJavaScriptInsertionRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ShapeJavaScriptInsertionRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BlockedClients", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89658,14 +58798,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BlockedClients = append(m.BlockedClients, &SimpleClientSrcRule{}) - if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 35: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TrustedClients", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89692,14 +58834,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TrustedClients = append(m.TrustedClients, &SimpleClientSrcRule{}) - if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.DomainMatcherChoice = &ShapeJavaScriptInsertionRule_AnyDomain{v} iNdEx = postIndex - case 37: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DdosMitigationRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89726,14 +58869,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DdosMitigationRules = append(m.DdosMitigationRules, &DDoSMitigationRule{}) - if err := m.DdosMitigationRules[len(m.DdosMitigationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.DomainType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.DomainMatcherChoice = &ShapeJavaScriptInsertionRule_Domain{v} iNdEx = postIndex - case 41: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServicePoliciesFromNamespace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89760,17 +58904,18 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServicePolicyChoice = &GlobalSpecType_ServicePoliciesFromNamespace{v} iNdEx = postIndex - case 42: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoServicePolicies", wireType) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field JavascriptLocation", wireType) } - var msglen int + m.JavascriptLocation = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -89780,30 +58925,67 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.JavascriptLocation |= JavaScriptLocation(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ShapeJavaScriptExclusionRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - m.ServicePolicyChoice = &GlobalSpecType_NoServicePolicies{v} - iNdEx = postIndex - case 43: + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ShapeJavaScriptExclusionRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ShapeJavaScriptExclusionRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ActiveServicePolicies", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89830,15 +59012,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ServicePolicyList{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Metadata == nil { + m.Metadata = &schema.MessageMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServicePolicyChoice = &GlobalSpecType_ActiveServicePolicies{v} iNdEx = postIndex - case 45: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RoundRobin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AnyDomain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89869,11 +59052,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &GlobalSpecType_RoundRobin{v} + m.DomainMatcherChoice = &ShapeJavaScriptExclusionRule_AnyDomain{v} iNdEx = postIndex - case 46: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LeastActive", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89900,15 +59083,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &schema.DomainType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &GlobalSpecType_LeastActive{v} + m.DomainMatcherChoice = &ShapeJavaScriptExclusionRule_Domain{v} iNdEx = postIndex - case 47: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Random", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89935,52 +59118,71 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Path == nil { + m.Path = &schema.PathMatcherType{} + } + if err := m.Path.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &GlobalSpecType_Random{v} iNdEx = postIndex - case 48: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceIpStickiness", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err } - if msglen < 0 { + if skippy < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen - if postIndex < 0 { + if (iNdEx + skippy) < 0 { return ErrInvalidLengthTypes } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes } - m.HashPolicyChoice = &GlobalSpecType_SourceIpStickiness{v} - iNdEx = postIndex - case 49: + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CookieStickiness", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Domains", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -89990,30 +59192,27 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - v := &route.CookieForHashing{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.HashPolicyChoice = &GlobalSpecType_CookieStickiness{v} + m.Domains = append(m.Domains, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 50: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RingHash", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Http", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90040,15 +59239,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &HashPolicyListType{} + v := &ProxyTypeHttp{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &GlobalSpecType_RingHash{v} + m.LoadbalancerType = &GlobalSpecType_Http{v} iNdEx = postIndex - case 51: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyBasedChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Https", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90075,15 +59274,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &PolicyBasedChallenge{} + v := &ProxyTypeHttps{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &GlobalSpecType_PolicyBasedChallenge{v} + m.LoadbalancerType = &GlobalSpecType_Https{v} iNdEx = postIndex - case 52: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublic", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90110,15 +59309,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &views.AdvertisePublic{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.WafChoice = &GlobalSpecType_AppFirewall{v} + m.AdvertiseChoice = &GlobalSpecType_AdvertiseOnPublic{v} iNdEx = postIndex - case 54: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SingleLbApp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseCustom", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90145,15 +59344,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SingleLoadBalancerAppSetting{} + v := &views.AdvertiseCustom{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MlConfigChoice = &GlobalSpecType_SingleLbApp{v} + m.AdvertiseChoice = &GlobalSpecType_AdvertiseCustom{v} iNdEx = postIndex - case 55: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MultiLbApp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultRoutePools", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90180,15 +59379,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DefaultRoutePools = append(m.DefaultRoutePools, &views.OriginPoolWithWeight{}) + if err := m.DefaultRoutePools[len(m.DefaultRoutePools)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MlConfigChoice = &GlobalSpecType_MultiLbApp{v} iNdEx = postIndex - case 57: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableBotDefense", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Routes", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90215,15 +59413,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Routes = append(m.Routes, &RouteType{}) + if err := m.Routes[len(m.Routes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BotDefenseChoice = &GlobalSpecType_DisableBotDefense{v} iNdEx = postIndex - case 58: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotDefense", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CorsPolicy", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90250,15 +59447,51 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ShapeBotDefenseType{} + if m.CorsPolicy == nil { + m.CorsPolicy = &schema.CorsPolicy{} + } + if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BotDefenseChoice = &GlobalSpecType_BotDefense{v} + m.WafChoice = &GlobalSpecType_DisableWaf{v} iNdEx = postIndex - case 60: + case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DoNotAdvertise", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90289,11 +59522,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.UserIdChoice = &GlobalSpecType_UserIdClientIp{v} + m.AdvertiseChoice = &GlobalSpecType_DoNotAdvertise{v} iNdEx = postIndex - case 61: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublicDefaultVip", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90320,15 +59553,35 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDefinitionList{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &GlobalSpecType_ApiDefinitions{v} + m.AdvertiseChoice = &GlobalSpecType_AdvertiseOnPublicDefaultVip{v} iNdEx = postIndex - case 62: + case 17: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AddLocation", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AddLocation = bool(v != 0) + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DownstreamTlsCertificateExpirationTimestamps", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90355,14 +59608,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DownstreamTlsCertificateExpirationTimestamps = append(m.DownstreamTlsCertificateExpirationTimestamps, &types.Timestamp{}) - if err := m.DownstreamTlsCertificateExpirationTimestamps[len(m.DownstreamTlsCertificateExpirationTimestamps)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &virtual_host.JavascriptChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ChallengeType = &GlobalSpecType_JsChallenge{v} iNdEx = postIndex - case 63: + case 19: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MoreOption", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90389,14 +59643,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) - if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.MoreOption == nil { + m.MoreOption = &AdvancedOptionsType{} + } + if err := m.MoreOption.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 65: + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserIdentification", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90423,15 +59679,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpReputationChoice = &GlobalSpecType_DisableIpReputation{v} + m.UserIdChoice = &GlobalSpecType_UserIdentification{v} iNdEx = postIndex - case 66: + case 22: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableRateLimit", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90458,15 +59714,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &IPThreatCategoryListType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpReputationChoice = &GlobalSpecType_EnableIpReputation{v} + m.RateLimitChoice = &GlobalSpecType_DisableRateLimit{v} iNdEx = postIndex - case 67: + case 23: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RateLimit", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90493,15 +59749,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APISpecificationSettings{} + v := &common_waf.RateLimitConfigType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &GlobalSpecType_ApiSpecification{v} + m.RateLimitChoice = &GlobalSpecType_RateLimit{v} iNdEx = postIndex - case 68: + case 24: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90528,15 +59784,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APIRateLimit{} + v := &virtual_host.CaptchaChallengeType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.RateLimitChoice = &GlobalSpecType_ApiRateLimit{v} + m.ChallengeType = &GlobalSpecType_CaptchaChallenge{v} iNdEx = postIndex - case 70: + case 26: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90567,11 +59823,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &GlobalSpecType_DisableApiDefinition{v} + m.ChallengeType = &GlobalSpecType_NoChallenge{v} iNdEx = postIndex - case 71: + case 27: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HttpsAutoCert", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90598,15 +59854,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &ProxyTypeHttpsAutoCerts{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &GlobalSpecType_ApiDefinition{v} + m.LoadbalancerType = &GlobalSpecType_HttpsAutoCert{v} iNdEx = postIndex - case 72: + case 28: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AutoHostRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90633,16 +59889,47 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ApiProtectionRules == nil { - m.ApiProtectionRules = &APIProtectionRules{} - } - if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.HostRewriteParams = &GlobalSpecType_AutoHostRewrite{v} iNdEx = postIndex - case 74: + case 29: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableTrustClientIpHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HostRewrite", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.HostRewriteParams = &GlobalSpecType_HostRewrite{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 30: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableHostRewrite", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90673,11 +59960,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TrustClientIpHeadersChoice = &GlobalSpecType_DisableTrustClientIpHeaders{v} + m.HostRewriteParams = &GlobalSpecType_DisableHostRewrite{v} iNdEx = postIndex - case 75: + case 32: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableTrustClientIpHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90704,15 +59991,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.ClientIPHeaders{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.MaliciousUserMitigation == nil { + m.MaliciousUserMitigation = &views.ObjectRefType{} + } + if err := m.MaliciousUserMitigation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TrustClientIpHeadersChoice = &GlobalSpecType_EnableTrustClientIpHeaders{v} iNdEx = postIndex - case 77: + case 33: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WafExclusionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90739,15 +60027,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableDDoSDetectionSetting{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.WafExclusionRules = append(m.WafExclusionRules, &policy.SimpleWafExclusionRule{}) + if err := m.WafExclusionRules[len(m.WafExclusionRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DdosDetectionChoice = &GlobalSpecType_EnableDdosDetection{v} iNdEx = postIndex - case 78: + case 34: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BlockedClients", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90774,15 +60061,48 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.BlockedClients = append(m.BlockedClients, &common_waf.SimpleClientSrcRule{}) + if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DdosDetectionChoice = &GlobalSpecType_DisableDdosDetection{v} iNdEx = postIndex - case 80: + case 35: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableMaliciousUserDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TrustedClients", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TrustedClients = append(m.TrustedClients, &common_waf.SimpleClientSrcRule{}) + if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 37: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DdosMitigationRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90809,15 +60129,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DdosMitigationRules = append(m.DdosMitigationRules, &DDoSMitigationRule{}) + if err := m.DdosMitigationRules[len(m.DdosMitigationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MaliciousUserDetectionChoice = &GlobalSpecType_EnableMaliciousUserDetection{v} iNdEx = postIndex - case 81: + case 41: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableMaliciousUserDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServicePoliciesFromNamespace", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90848,11 +60167,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MaliciousUserDetectionChoice = &GlobalSpecType_DisableMaliciousUserDetection{v} + m.ServicePolicyChoice = &GlobalSpecType_ServicePoliciesFromNamespace{v} iNdEx = postIndex - case 83: + case 42: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableApiDiscovery", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NoServicePolicies", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90879,15 +60198,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDiscoverySetting{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDiscoveryChoice = &GlobalSpecType_EnableApiDiscovery{v} + m.ServicePolicyChoice = &GlobalSpecType_NoServicePolicies{v} iNdEx = postIndex - case 84: + case 43: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDiscovery", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ActiveServicePolicies", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90914,15 +60233,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.ServicePolicyList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDiscoveryChoice = &GlobalSpecType_DisableApiDiscovery{v} + m.ServicePolicyChoice = &GlobalSpecType_ActiveServicePolicies{v} iNdEx = postIndex - case 86: + case 45: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableClientSideDefense", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RoundRobin", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90953,11 +60272,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ClientSideDefenseChoice = &GlobalSpecType_DisableClientSideDefense{v} + m.HashPolicyChoice = &GlobalSpecType_RoundRobin{v} iNdEx = postIndex - case 87: + case 46: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientSideDefense", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field LeastActive", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90984,15 +60303,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ClientSideDefenseType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ClientSideDefenseChoice = &GlobalSpecType_ClientSideDefense{v} + m.HashPolicyChoice = &GlobalSpecType_LeastActive{v} iNdEx = postIndex - case 89: + case 47: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultPool", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Random", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91019,15 +60338,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &origin_pool.GlobalSpecType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OriginPoolChoice = &GlobalSpecType_DefaultPool{v} + m.HashPolicyChoice = &GlobalSpecType_Random{v} iNdEx = postIndex - case 90: + case 48: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultPoolList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SourceIpStickiness", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91054,15 +60373,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.OriginPoolListType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.OriginPoolChoice = &GlobalSpecType_DefaultPoolList{v} + m.HashPolicyChoice = &GlobalSpecType_SourceIpStickiness{v} iNdEx = postIndex - case 91: + case 49: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CsrfPolicy", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CookieStickiness", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91089,16 +60408,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CsrfPolicy == nil { - m.CsrfPolicy = &schema.CsrfPolicy{} - } - if err := m.CsrfPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &route.CookieForHashing{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.HashPolicyChoice = &GlobalSpecType_CookieStickiness{v} iNdEx = postIndex - case 92: + case 50: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GraphqlRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RingHash", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91125,14 +60443,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GraphqlRules = append(m.GraphqlRules, &policy.GraphQLRule{}) - if err := m.GraphqlRules[len(m.GraphqlRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &HashPolicyListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.HashPolicyChoice = &GlobalSpecType_RingHash{v} iNdEx = postIndex - case 93: + case 51: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProtectedCookies", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PolicyBasedChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91159,14 +60478,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProtectedCookies = append(m.ProtectedCookies, &schema.CookieManipulationOptionType{}) - if err := m.ProtectedCookies[len(m.ProtectedCookies)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &common_waf.PolicyBasedChallenge{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ChallengeType = &GlobalSpecType_PolicyBasedChallenge{v} iNdEx = postIndex - case 94: + case 52: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SlowDdosMitigation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91193,15 +60513,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.SlowDDoSMitigation{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SlowDdosMitigationChoice = &GlobalSpecType_SlowDdosMitigation{v} + m.WafChoice = &GlobalSpecType_AppFirewall{v} iNdEx = postIndex - case 95: + case 54: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SingleLbApp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91228,15 +60548,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableChallenge{} + v := &SingleLoadBalancerAppSetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &GlobalSpecType_EnableChallenge{v} + m.MlConfigChoice = &GlobalSpecType_SingleLbApp{v} iNdEx = postIndex - case 97: + case 55: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SystemDefaultTimeouts", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MultiLbApp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91267,11 +60587,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.SlowDdosMitigationChoice = &GlobalSpecType_SystemDefaultTimeouts{v} + m.MlConfigChoice = &GlobalSpecType_MultiLbApp{v} iNdEx = postIndex - case 98: + case 57: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JwtValidation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableBotDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91298,16 +60618,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.JwtValidation == nil { - m.JwtValidation = &JWTValidation{} - } - if err := m.JwtValidation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.BotDefenseChoice = &GlobalSpecType_DisableBotDefense{v} iNdEx = postIndex - case 101: + case 58: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetRuleList", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BotDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91334,16 +60653,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.OriginServerSubsetRuleList == nil { - m.OriginServerSubsetRuleList = &OriginServerSubsetRuleListType{} - } - if err := m.OriginServerSubsetRuleList.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ShapeBotDefenseType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.BotDefenseChoice = &GlobalSpecType_BotDefense{v} iNdEx = postIndex - case 103: + case 60: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91374,11 +60692,11 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &GlobalSpecType_DisableThreatIntelligence{v} + m.UserIdChoice = &GlobalSpecType_UserIdClientIp{v} iNdEx = postIndex - case 105: + case 61: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91405,15 +60723,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.ApiDefinitionList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &GlobalSpecType_EnableThreatIntelligence{v} + m.ApiDefinitionChoice = &GlobalSpecType_ApiDefinitions{v} iNdEx = postIndex - case 111: + case 62: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionDefault", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DownstreamTlsCertificateExpirationTimestamps", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91440,15 +60758,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DownstreamTlsCertificateExpirationTimestamps = append(m.DownstreamTlsCertificateExpirationTimestamps, &types.Timestamp{}) + if err := m.DownstreamTlsCertificateExpirationTimestamps[len(m.DownstreamTlsCertificateExpirationTimestamps)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionDefault{v} iNdEx = postIndex - case 112: + case 63: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionBlock", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91475,15 +60792,14 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) + if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionBlock{v} iNdEx = postIndex - case 113: + case 65: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionJsChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91510,15 +60826,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.JavascriptChallengeType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionJsChallenge{v} + m.IpReputationChoice = &GlobalSpecType_DisableIpReputation{v} iNdEx = postIndex - case 114: + case 66: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionNone", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91545,34 +60861,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.IPThreatCategoryListType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionNone{v} + m.IpReputationChoice = &GlobalSpecType_EnableIpReputation{v} iNdEx = postIndex - case 115: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field CertState", wireType) - } - m.CertState = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.CertState |= virtual_host.CertificationState(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 1000: + case 67: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ViewInternal", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91599,48 +60896,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ViewInternal == nil { - m.ViewInternal = &views.ObjectRefType{} - } - if err := m.ViewInternal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &common_waf.APISpecificationSettings{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ApiDefinitionChoice = &GlobalSpecType_ApiSpecification{v} iNdEx = postIndex - case 1001: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HostName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.HostName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 1002: + case 70: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DnsInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91667,35 +60931,17 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DnsInfo = append(m.DnsInfo, &virtual_host_dns_info.DnsInfo{}) - if err := m.DnsInfo[len(m.DnsInfo)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 1003: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) - } - m.State = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.State |= virtual_host.VirtualHostState(b&0x7F) << shift - if b < 0x80 { - break - } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - case 1004: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoCertState", wireType) + m.ApiDefinitionChoice = &GlobalSpecType_DisableApiDefinition{v} + iNdEx = postIndex + case 71: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) } - m.AutoCertState = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -91705,14 +60951,30 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.AutoCertState |= virtual_host.CertificationState(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 1010: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDefinitionChoice = &GlobalSpecType_ApiDefinition{v} + iNdEx = postIndex + case 72: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoCertInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91739,16 +61001,16 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.AutoCertInfo == nil { - m.AutoCertInfo = &virtual_host.AutoCertInfoType{} + if m.ApiProtectionRules == nil { + m.ApiProtectionRules = &common_waf.APIProtectionRules{} } - if err := m.AutoCertInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 1011: + case 74: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotDefenseAdvanced", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableTrustClientIpHeaders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91775,15 +61037,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &BotDefenseAdvancedType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BotDefenseChoice = &GlobalSpecType_BotDefenseAdvanced{v} + m.TrustClientIpHeadersChoice = &GlobalSpecType_DisableTrustClientIpHeaders{v} iNdEx = postIndex - case 1100: + case 75: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InternetVipInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableTrustClientIpHeaders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91810,67 +61072,15 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.InternetVipInfo = append(m.InternetVipInfo, &views.InternetVIPInfo{}) - if err := m.InternetVipInfo[len(m.InternetVipInfo)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &virtual_host.ClientIPHeaders{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.TrustClientIpHeadersChoice = &GlobalSpecType_EnableTrustClientIpHeaders{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *JWTValidation) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: JWTValidation: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: JWTValidation: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 80: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableMaliciousUserDetection", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91897,16 +61107,15 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Target == nil { - m.Target = &Target{} - } - if err := m.Target.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.MaliciousUserDetectionChoice = &GlobalSpecType_EnableMaliciousUserDetection{v} iNdEx = postIndex - case 2: + case 81: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TokenLocation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableMaliciousUserDetection", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91933,16 +61142,15 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.TokenLocation == nil { - m.TokenLocation = &TokenLocation{} - } - if err := m.TokenLocation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.MaliciousUserDetectionChoice = &GlobalSpecType_DisableMaliciousUserDetection{v} iNdEx = postIndex - case 3: + case 83: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableApiDiscovery", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -91969,18 +61177,17 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Action == nil { - m.Action = &schema.Action{} - } - if err := m.Action.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &common_waf.ApiDiscoverySetting{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ApiDiscoveryChoice = &GlobalSpecType_EnableApiDiscovery{v} iNdEx = postIndex - case 5: + case 84: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AuthServerUri", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDiscovery", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -91990,29 +61197,32 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.JwksConfiguration = &JWTValidation_AuthServerUri{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ApiDiscoveryChoice = &GlobalSpecType_DisableApiDiscovery{v} iNdEx = postIndex - case 6: + case 86: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Jwks", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableClientSideDefense", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92022,27 +61232,30 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.JwksConfiguration = &JWTValidation_Jwks{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ClientSideDefenseChoice = &GlobalSpecType_DisableClientSideDefense{v} iNdEx = postIndex - case 7: + case 87: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReservedClaims", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClientSideDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92069,16 +61282,15 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ReservedClaims == nil { - m.ReservedClaims = &ReservedClaims{} - } - if err := m.ReservedClaims.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ClientSideDefenseType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ClientSideDefenseChoice = &GlobalSpecType_ClientSideDefense{v} iNdEx = postIndex - case 8: + case 89: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JwksConfig", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultPool", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92105,15 +61317,15 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &JWKS{} + v := &origin_pool.GlobalSpecType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.JwksConfiguration = &JWTValidation_JwksConfig{v} + m.OriginPoolChoice = &GlobalSpecType_DefaultPool{v} iNdEx = postIndex - case 9: + case 90: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MandatoryClaims", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DefaultPoolList", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92140,71 +61352,17 @@ func (m *JWTValidation) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MandatoryClaims == nil { - m.MandatoryClaims = &MandatoryClaims{} - } - if err := m.MandatoryClaims.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &views.OriginPoolListType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.OriginPoolChoice = &GlobalSpecType_DefaultPoolList{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MandatoryClaims) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MandatoryClaims: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MandatoryClaims: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 91: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClaimNames", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CsrfPolicy", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92214,82 +61372,33 @@ func (m *MandatoryClaims) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.ClaimNames = append(m.ClaimNames, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *JWKS) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + if m.CsrfPolicy == nil { + m.CsrfPolicy = &schema.CsrfPolicy{} } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.CsrfPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: JWKS: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: JWKS: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 3: + iNdEx = postIndex + case 92: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cleartext", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GraphqlRules", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92299,80 +61408,29 @@ func (m *JWKS) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Cleartext = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { + m.GraphqlRules = append(m.GraphqlRules, &policy.GraphQLRule{}) + if err := m.GraphqlRules[len(m.GraphqlRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *Target) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Target: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Target: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + iNdEx = postIndex + case 93: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllEndpoint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ProtectedCookies", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92399,15 +61457,14 @@ func (m *Target) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.ProtectedCookies = append(m.ProtectedCookies, &schema.CookieManipulationOptionType{}) + if err := m.ProtectedCookies[len(m.ProtectedCookies)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Target = &Target_AllEndpoint{v} iNdEx = postIndex - case 3: + case 94: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroups", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SlowDdosMitigation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92434,15 +61491,15 @@ func (m *Target) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APIGroups{} + v := &virtual_host.SlowDDoSMitigation{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Target = &Target_ApiGroups{v} + m.SlowDdosMitigationChoice = &GlobalSpecType_SlowDdosMitigation{v} iNdEx = postIndex - case 4: + case 95: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePaths", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92469,68 +61526,15 @@ func (m *Target) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &BasePathsType{} + v := &common_waf.EnableChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.Target = &Target_BasePaths{v} + m.ChallengeType = &GlobalSpecType_EnableChallenge{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TokenLocation) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TokenLocation: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TokenLocation: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + case 97: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BearerToken", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SystemDefaultTimeouts", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92561,13 +61565,13 @@ func (m *TokenLocation) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TokenLocation = &TokenLocation_BearerToken{v} + m.SlowDdosMitigationChoice = &GlobalSpecType_SystemDefaultTimeouts{v} iNdEx = postIndex - case 3: + case 98: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cookie", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JwtValidation", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92577,29 +61581,33 @@ func (m *TokenLocation) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.TokenLocation = &TokenLocation_Cookie{string(dAtA[iNdEx:postIndex])} + if m.JwtValidation == nil { + m.JwtValidation = &common_waf.JWTValidation{} + } + if err := m.JwtValidation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 4: + case 101: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Header", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OriginServerSubsetRuleList", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92609,29 +61617,33 @@ func (m *TokenLocation) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.TokenLocation = &TokenLocation_Header{string(dAtA[iNdEx:postIndex])} + if m.OriginServerSubsetRuleList == nil { + m.OriginServerSubsetRuleList = &OriginServerSubsetRuleListType{} + } + if err := m.OriginServerSubsetRuleList.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 5: + case 103: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field QueryParam", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatMesh", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92641,80 +61653,30 @@ func (m *TokenLocation) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.TokenLocation = &TokenLocation_QueryParam{string(dAtA[iNdEx:postIndex])} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ReservedClaims) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReservedClaims: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReservedClaims: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + m.ThreatMeshChoice = &GlobalSpecType_DisableThreatMesh{v} + iNdEx = postIndex + case 105: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IssuerDisable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92745,13 +61707,13 @@ func (m *ReservedClaims) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IssuerValidation = &ReservedClaims_IssuerDisable{v} + m.ThreatMeshChoice = &GlobalSpecType_EnableThreatMesh{v} iNdEx = postIndex - case 3: + case 111: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Issuer", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionDefault", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -92761,27 +61723,30 @@ func (m *ReservedClaims) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.IssuerValidation = &ReservedClaims_Issuer{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionDefault{v} iNdEx = postIndex - case 5: + case 112: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AudienceDisable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionBlock", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92812,11 +61777,11 @@ func (m *ReservedClaims) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AudienceValidation = &ReservedClaims_AudienceDisable{v} + m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionBlock{v} iNdEx = postIndex - case 6: + case 113: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Audience", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionJsChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92843,15 +61808,15 @@ func (m *ReservedClaims) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &Audiences{} + v := &virtual_host.JavascriptChallengeType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.AudienceValidation = &ReservedClaims_Audience{v} + m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionJsChallenge{v} iNdEx = postIndex - case 8: + case 114: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidatePeriodDisable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionNone", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92882,11 +61847,30 @@ func (m *ReservedClaims) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidatePeriod = &ReservedClaims_ValidatePeriodDisable{v} + m.L7DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionNone{v} iNdEx = postIndex - case 9: + case 115: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CertState", wireType) + } + m.CertState = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.CertState |= virtual_host.CertificationState(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 120: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ValidatePeriodEnable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -92913,68 +61897,51 @@ func (m *ReservedClaims) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.APIRateLimit{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ValidatePeriod = &ReservedClaims_ValidatePeriodEnable{v} + m.RateLimitChoice = &GlobalSpecType_ApiRateLimit{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 1000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ViewInternal", wireType) } - if skippy < 0 { + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *APIGroups) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + if m.ViewInternal == nil { + m.ViewInternal = &views.ObjectRefType{} } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.ViewInternal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: APIGroups: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: APIGroups: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: + iNdEx = postIndex + case 1001: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiGroups", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HostName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -93002,66 +61969,85 @@ func (m *APIGroups) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ApiGroups = append(m.ApiGroups, string(dAtA[iNdEx:postIndex])) + m.HostName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err + case 1002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DnsInfo", wireType) } - if skippy < 0 { + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) < 0 { + postIndex := iNdEx + msglen + if postIndex < 0 { return ErrInvalidLengthTypes } - if (iNdEx + skippy) > l { + if postIndex > l { return io.ErrUnexpectedEOF } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BasePathsType) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes + m.DnsInfo = append(m.DnsInfo, &virtual_host_dns_info.DnsInfo{}) + if err := m.DnsInfo[len(m.DnsInfo)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - if iNdEx >= l { - return io.ErrUnexpectedEOF + iNdEx = postIndex + case 1003: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.State = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.State |= virtual_host.VirtualHostState(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: BasePathsType: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BasePathsType: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 1004: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AutoCertState", wireType) + } + m.AutoCertState = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AutoCertState |= virtual_host.CertificationState(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 1010: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BasePaths", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AutoCertInfo", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -93071,82 +62057,68 @@ func (m *BasePathsType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.BasePaths = append(m.BasePaths, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { + if m.AutoCertInfo == nil { + m.AutoCertInfo = &virtual_host.AutoCertInfoType{} + } + if err := m.AutoCertInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if skippy < 0 { - return ErrInvalidLengthTypes + iNdEx = postIndex + case 1011: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BotDefenseAdvanced", wireType) } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF + if msglen < 0 { + return ErrInvalidLengthTypes } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *Audiences) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + v := &BotDefenseAdvancedType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Audiences: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Audiences: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.BotDefenseChoice = &GlobalSpecType_BotDefenseAdvanced{v} + iNdEx = postIndex + case 1100: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Audiences", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field InternetVipInfo", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -93156,23 +62128,25 @@ func (m *Audiences) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.Audiences = append(m.Audiences, string(dAtA[iNdEx:postIndex])) + m.InternetVipInfo = append(m.InternetVipInfo, &views.InternetVIPInfo{}) + if err := m.InternetVipInfo[len(m.InternetVipInfo)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -93496,176 +62470,16 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CorsPolicy == nil { - m.CorsPolicy = &schema.CorsPolicy{} - } - if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.WafChoice = &CreateSpecType_DisableWaf{v} - iNdEx = postIndex - case 12: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DoNotAdvertise", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.AdvertiseChoice = &CreateSpecType_DoNotAdvertise{v} - iNdEx = postIndex - case 13: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublicDefaultVip", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.AdvertiseChoice = &CreateSpecType_AdvertiseOnPublicDefaultVip{v} - iNdEx = postIndex - case 17: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AddLocation", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.AddLocation = bool(v != 0) - case 18: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field JsChallenge", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &virtual_host.JavascriptChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.CorsPolicy == nil { + m.CorsPolicy = &schema.CorsPolicy{} + } + if err := m.CorsPolicy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &CreateSpecType_JsChallenge{v} iNdEx = postIndex - case 19: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MoreOption", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableWaf", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93692,16 +62506,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MoreOption == nil { - m.MoreOption = &AdvancedOptionsType{} - } - if err := m.MoreOption.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.WafChoice = &CreateSpecType_DisableWaf{v} iNdEx = postIndex - case 20: + case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserIdentification", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DoNotAdvertise", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93728,15 +62541,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.UserIdChoice = &CreateSpecType_UserIdentification{v} + m.AdvertiseChoice = &CreateSpecType_DoNotAdvertise{v} iNdEx = postIndex - case 22: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableRateLimit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublicDefaultVip", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93767,11 +62580,31 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.RateLimitChoice = &CreateSpecType_DisableRateLimit{v} + m.AdvertiseChoice = &CreateSpecType_AdvertiseOnPublicDefaultVip{v} iNdEx = postIndex - case 23: + case 17: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AddLocation", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AddLocation = bool(v != 0) + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RateLimit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JsChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93798,15 +62631,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &RateLimitConfigType{} + v := &virtual_host.JavascriptChallengeType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.RateLimitChoice = &CreateSpecType_RateLimit{v} + m.ChallengeType = &CreateSpecType_JsChallenge{v} iNdEx = postIndex - case 24: + case 19: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MoreOption", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93833,15 +62666,16 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.CaptchaChallengeType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.MoreOption == nil { + m.MoreOption = &AdvancedOptionsType{} + } + if err := m.MoreOption.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &CreateSpecType_CaptchaChallenge{v} iNdEx = postIndex - case 26: + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserIdentification", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93868,15 +62702,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &CreateSpecType_NoChallenge{v} + m.UserIdChoice = &CreateSpecType_UserIdentification{v} iNdEx = postIndex - case 27: + case 22: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpsAutoCert", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableRateLimit", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93903,15 +62737,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ProxyTypeHttpsAutoCerts{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.LoadbalancerType = &CreateSpecType_HttpsAutoCert{v} + m.RateLimitChoice = &CreateSpecType_DisableRateLimit{v} iNdEx = postIndex - case 32: + case 23: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RateLimit", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93938,16 +62772,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.MaliciousUserMitigation == nil { - m.MaliciousUserMitigation = &views.ObjectRefType{} - } - if err := m.MaliciousUserMitigation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &common_waf.RateLimitConfigType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.RateLimitChoice = &CreateSpecType_RateLimit{v} iNdEx = postIndex - case 33: + case 24: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WafExclusionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CaptchaChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -93974,14 +62807,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.WafExclusionRules = append(m.WafExclusionRules, &policy.SimpleWafExclusionRule{}) - if err := m.WafExclusionRules[len(m.WafExclusionRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &virtual_host.CaptchaChallengeType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ChallengeType = &CreateSpecType_CaptchaChallenge{v} iNdEx = postIndex - case 34: + case 26: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BlockedClients", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NoChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94008,14 +62842,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BlockedClients = append(m.BlockedClients, &SimpleClientSrcRule{}) - if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ChallengeType = &CreateSpecType_NoChallenge{v} iNdEx = postIndex - case 35: + case 27: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TrustedClients", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field HttpsAutoCert", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94042,14 +62877,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TrustedClients = append(m.TrustedClients, &SimpleClientSrcRule{}) - if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ProxyTypeHttpsAutoCerts{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.LoadbalancerType = &CreateSpecType_HttpsAutoCert{v} iNdEx = postIndex - case 37: + case 32: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DdosMitigationRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MaliciousUserMitigation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94076,14 +62912,16 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DdosMitigationRules = append(m.DdosMitigationRules, &DDoSMitigationRule{}) - if err := m.DdosMitigationRules[len(m.DdosMitigationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.MaliciousUserMitigation == nil { + m.MaliciousUserMitigation = &views.ObjectRefType{} + } + if err := m.MaliciousUserMitigation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 41: + case 33: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServicePoliciesFromNamespace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field WafExclusionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94110,15 +62948,14 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.WafExclusionRules = append(m.WafExclusionRules, &policy.SimpleWafExclusionRule{}) + if err := m.WafExclusionRules[len(m.WafExclusionRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServicePolicyChoice = &CreateSpecType_ServicePoliciesFromNamespace{v} iNdEx = postIndex - case 42: + case 34: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NoServicePolicies", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BlockedClients", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94145,15 +62982,14 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.BlockedClients = append(m.BlockedClients, &common_waf.SimpleClientSrcRule{}) + if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServicePolicyChoice = &CreateSpecType_NoServicePolicies{v} iNdEx = postIndex - case 43: + case 35: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ActiveServicePolicies", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TrustedClients", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94180,15 +63016,14 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ServicePolicyList{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.TrustedClients = append(m.TrustedClients, &common_waf.SimpleClientSrcRule{}) + if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ServicePolicyChoice = &CreateSpecType_ActiveServicePolicies{v} iNdEx = postIndex - case 45: + case 37: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RoundRobin", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DdosMitigationRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94215,15 +63050,14 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DdosMitigationRules = append(m.DdosMitigationRules, &DDoSMitigationRule{}) + if err := m.DdosMitigationRules[len(m.DdosMitigationRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &CreateSpecType_RoundRobin{v} iNdEx = postIndex - case 46: + case 41: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LeastActive", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServicePoliciesFromNamespace", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94254,11 +63088,11 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &CreateSpecType_LeastActive{v} + m.ServicePolicyChoice = &CreateSpecType_ServicePoliciesFromNamespace{v} iNdEx = postIndex - case 47: + case 42: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Random", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field NoServicePolicies", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94289,11 +63123,11 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &CreateSpecType_Random{v} + m.ServicePolicyChoice = &CreateSpecType_NoServicePolicies{v} iNdEx = postIndex - case 48: + case 43: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceIpStickiness", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ActiveServicePolicies", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94320,15 +63154,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.ServicePolicyList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &CreateSpecType_SourceIpStickiness{v} + m.ServicePolicyChoice = &CreateSpecType_ActiveServicePolicies{v} iNdEx = postIndex - case 49: + case 45: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CookieStickiness", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RoundRobin", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94355,15 +63189,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &route.CookieForHashing{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &CreateSpecType_CookieStickiness{v} + m.HashPolicyChoice = &CreateSpecType_RoundRobin{v} iNdEx = postIndex - case 50: + case 46: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RingHash", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field LeastActive", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94390,15 +63224,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &HashPolicyListType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.HashPolicyChoice = &CreateSpecType_RingHash{v} + m.HashPolicyChoice = &CreateSpecType_LeastActive{v} iNdEx = postIndex - case 51: + case 47: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyBasedChallenge", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Random", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94425,15 +63259,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &PolicyBasedChallenge{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ChallengeType = &CreateSpecType_PolicyBasedChallenge{v} + m.HashPolicyChoice = &CreateSpecType_Random{v} iNdEx = postIndex - case 52: + case 48: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SourceIpStickiness", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94460,15 +63294,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.WafChoice = &CreateSpecType_AppFirewall{v} + m.HashPolicyChoice = &CreateSpecType_SourceIpStickiness{v} iNdEx = postIndex - case 54: + case 49: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SingleLbApp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CookieStickiness", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94495,15 +63329,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &SingleLoadBalancerAppSetting{} + v := &route.CookieForHashing{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MlConfigChoice = &CreateSpecType_SingleLbApp{v} + m.HashPolicyChoice = &CreateSpecType_CookieStickiness{v} iNdEx = postIndex - case 55: + case 50: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MultiLbApp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RingHash", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94530,15 +63364,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &HashPolicyListType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MlConfigChoice = &CreateSpecType_MultiLbApp{v} + m.HashPolicyChoice = &CreateSpecType_RingHash{v} iNdEx = postIndex - case 57: + case 51: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableBotDefense", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PolicyBasedChallenge", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94565,15 +63399,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.PolicyBasedChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BotDefenseChoice = &CreateSpecType_DisableBotDefense{v} + m.ChallengeType = &CreateSpecType_PolicyBasedChallenge{v} iNdEx = postIndex - case 58: + case 52: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotDefense", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppFirewall", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94600,15 +63434,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ShapeBotDefenseType{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.BotDefenseChoice = &CreateSpecType_BotDefense{v} + m.WafChoice = &CreateSpecType_AppFirewall{v} iNdEx = postIndex - case 60: + case 54: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SingleLbApp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94635,15 +63469,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &SingleLoadBalancerAppSetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.UserIdChoice = &CreateSpecType_UserIdClientIp{v} + m.MlConfigChoice = &CreateSpecType_SingleLbApp{v} iNdEx = postIndex - case 61: + case 55: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MultiLbApp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94670,15 +63504,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDefinitionList{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &CreateSpecType_ApiDefinitions{v} + m.MlConfigChoice = &CreateSpecType_MultiLbApp{v} iNdEx = postIndex - case 63: + case 57: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableBotDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94705,14 +63539,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) - if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.BotDefenseChoice = &CreateSpecType_DisableBotDefense{v} iNdEx = postIndex - case 65: + case 58: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BotDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94739,15 +63574,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &ShapeBotDefenseType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpReputationChoice = &CreateSpecType_DisableIpReputation{v} + m.BotDefenseChoice = &CreateSpecType_BotDefense{v} iNdEx = postIndex - case 66: + case 60: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94774,15 +63609,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &IPThreatCategoryListType{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpReputationChoice = &CreateSpecType_EnableIpReputation{v} + m.UserIdChoice = &CreateSpecType_UserIdClientIp{v} iNdEx = postIndex - case 67: + case 61: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94809,15 +63644,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APISpecificationSettings{} + v := &common_waf.ApiDefinitionList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &CreateSpecType_ApiSpecification{v} + m.ApiDefinitionChoice = &CreateSpecType_ApiDefinitions{v} iNdEx = postIndex - case 68: + case 63: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94844,15 +63679,14 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APIRateLimit{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) + if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.RateLimitChoice = &CreateSpecType_ApiRateLimit{v} iNdEx = postIndex - case 70: + case 65: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94883,11 +63717,11 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &CreateSpecType_DisableApiDefinition{v} + m.IpReputationChoice = &CreateSpecType_DisableIpReputation{v} iNdEx = postIndex - case 71: + case 66: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94914,15 +63748,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &common_waf.IPThreatCategoryListType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &CreateSpecType_ApiDefinition{v} + m.IpReputationChoice = &CreateSpecType_EnableIpReputation{v} iNdEx = postIndex - case 72: + case 67: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94949,16 +63783,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ApiProtectionRules == nil { - m.ApiProtectionRules = &APIProtectionRules{} - } - if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &common_waf.APISpecificationSettings{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ApiDefinitionChoice = &CreateSpecType_ApiSpecification{v} iNdEx = postIndex - case 74: + case 70: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableTrustClientIpHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -94989,11 +63822,11 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TrustClientIpHeadersChoice = &CreateSpecType_DisableTrustClientIpHeaders{v} + m.ApiDefinitionChoice = &CreateSpecType_DisableApiDefinition{v} iNdEx = postIndex - case 75: + case 71: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableTrustClientIpHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -95020,15 +63853,15 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.ClientIPHeaders{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TrustClientIpHeadersChoice = &CreateSpecType_EnableTrustClientIpHeaders{v} + m.ApiDefinitionChoice = &CreateSpecType_ApiDefinition{v} iNdEx = postIndex - case 77: + case 72: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -95055,15 +63888,16 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableDDoSDetectionSetting{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.ApiProtectionRules == nil { + m.ApiProtectionRules = &common_waf.APIProtectionRules{} + } + if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DdosDetectionChoice = &CreateSpecType_EnableDdosDetection{v} iNdEx = postIndex - case 78: + case 74: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableTrustClientIpHeaders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -95094,7 +63928,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DdosDetectionChoice = &CreateSpecType_DisableDdosDetection{v} + m.TrustClientIpHeadersChoice = &CreateSpecType_DisableTrustClientIpHeaders{v} + iNdEx = postIndex + case 75: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableTrustClientIpHeaders", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &virtual_host.ClientIPHeaders{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.TrustClientIpHeadersChoice = &CreateSpecType_EnableTrustClientIpHeaders{v} iNdEx = postIndex case 80: if wireType != 2 { @@ -95195,7 +64064,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDiscoverySetting{} + v := &common_waf.ApiDiscoverySetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -95544,7 +64413,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableChallenge{} + v := &common_waf.EnableChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -95615,7 +64484,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.JwtValidation == nil { - m.JwtValidation = &JWTValidation{} + m.JwtValidation = &common_waf.JWTValidation{} } if err := m.JwtValidation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -95659,7 +64528,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 103: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -95690,11 +64559,11 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &CreateSpecType_DisableThreatIntelligence{v} + m.ThreatMeshChoice = &CreateSpecType_DisableThreatMesh{v} iNdEx = postIndex case 105: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -95725,7 +64594,7 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &CreateSpecType_EnableThreatIntelligence{v} + m.ThreatMeshChoice = &CreateSpecType_EnableThreatMesh{v} iNdEx = postIndex case 111: if wireType != 2 { @@ -95867,6 +64736,41 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } m.L7DdosAutoMitigationAction = &CreateSpecType_L7DdosActionNone{v} iNdEx = postIndex + case 120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.APIRateLimit{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimitChoice = &CreateSpecType_ApiRateLimit{v} + iNdEx = postIndex case 1011: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field BotDefenseAdvanced", wireType) @@ -96526,7 +65430,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &RateLimitConfigType{} + v := &common_waf.RateLimitConfigType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -96736,7 +65640,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BlockedClients = append(m.BlockedClients, &SimpleClientSrcRule{}) + m.BlockedClients = append(m.BlockedClients, &common_waf.SimpleClientSrcRule{}) if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -96770,7 +65674,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TrustedClients = append(m.TrustedClients, &SimpleClientSrcRule{}) + m.TrustedClients = append(m.TrustedClients, &common_waf.SimpleClientSrcRule{}) if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -96908,7 +65812,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ServicePolicyList{} + v := &common_waf.ServicePolicyList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -97153,7 +66057,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &PolicyBasedChallenge{} + v := &common_waf.PolicyBasedChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -97262,116 +66166,11 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.MlConfigChoice = &ReplaceSpecType_MultiLbApp{v} - iNdEx = postIndex - case 57: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableBotDefense", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.BotDefenseChoice = &ReplaceSpecType_DisableBotDefense{v} - iNdEx = postIndex - case 58: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotDefense", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &ShapeBotDefenseType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.BotDefenseChoice = &ReplaceSpecType_BotDefense{v} - iNdEx = postIndex - case 60: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.UserIdChoice = &ReplaceSpecType_UserIdClientIp{v} + m.MlConfigChoice = &ReplaceSpecType_MultiLbApp{v} iNdEx = postIndex - case 61: + case 57: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableBotDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97398,15 +66197,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDefinitionList{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &ReplaceSpecType_ApiDefinitions{v} + m.BotDefenseChoice = &ReplaceSpecType_DisableBotDefense{v} iNdEx = postIndex - case 63: + case 58: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BotDefense", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97433,14 +66232,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) - if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &ShapeBotDefenseType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.BotDefenseChoice = &ReplaceSpecType_BotDefense{v} iNdEx = postIndex - case 65: + case 60: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserIdClientIp", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97471,11 +66271,11 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpReputationChoice = &ReplaceSpecType_DisableIpReputation{v} + m.UserIdChoice = &ReplaceSpecType_UserIdClientIp{v} iNdEx = postIndex - case 66: + case 61: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinitions", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97502,15 +66302,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &IPThreatCategoryListType{} + v := &common_waf.ApiDefinitionList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.IpReputationChoice = &ReplaceSpecType_EnableIpReputation{v} + m.ApiDefinitionChoice = &ReplaceSpecType_ApiDefinitions{v} iNdEx = postIndex - case 67: + case 63: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DataGuardRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97537,15 +66337,14 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APISpecificationSettings{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.DataGuardRules = append(m.DataGuardRules, &policy.SimpleDataGuardRule{}) + if err := m.DataGuardRules[len(m.DataGuardRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &ReplaceSpecType_ApiSpecification{v} iNdEx = postIndex - case 68: + case 65: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableIpReputation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97572,15 +66371,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APIRateLimit{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.RateLimitChoice = &ReplaceSpecType_ApiRateLimit{v} + m.IpReputationChoice = &ReplaceSpecType_DisableIpReputation{v} iNdEx = postIndex - case 70: + case 66: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableIpReputation", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97607,15 +66406,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &common_waf.IPThreatCategoryListType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &ReplaceSpecType_DisableApiDefinition{v} + m.IpReputationChoice = &ReplaceSpecType_EnableIpReputation{v} iNdEx = postIndex - case 71: + case 67: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiSpecification", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97642,15 +66441,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &views.ObjectRefType{} + v := &common_waf.APISpecificationSettings{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ApiDefinitionChoice = &ReplaceSpecType_ApiDefinition{v} + m.ApiDefinitionChoice = &ReplaceSpecType_ApiSpecification{v} iNdEx = postIndex - case 72: + case 70: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97677,16 +66476,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.ApiProtectionRules == nil { - m.ApiProtectionRules = &APIProtectionRules{} - } - if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ApiDefinitionChoice = &ReplaceSpecType_DisableApiDefinition{v} iNdEx = postIndex - case 74: + case 71: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableTrustClientIpHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiDefinition", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97713,15 +66511,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &views.ObjectRefType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TrustClientIpHeadersChoice = &ReplaceSpecType_DisableTrustClientIpHeaders{v} + m.ApiDefinitionChoice = &ReplaceSpecType_ApiDefinition{v} iNdEx = postIndex - case 75: + case 72: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableTrustClientIpHeaders", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ApiProtectionRules", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97748,15 +66546,16 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &virtual_host.ClientIPHeaders{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.ApiProtectionRules == nil { + m.ApiProtectionRules = &common_waf.APIProtectionRules{} + } + if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.TrustClientIpHeadersChoice = &ReplaceSpecType_EnableTrustClientIpHeaders{v} iNdEx = postIndex - case 77: + case 74: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableTrustClientIpHeaders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97783,15 +66582,15 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableDDoSDetectionSetting{} + v := &schema.Empty{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DdosDetectionChoice = &ReplaceSpecType_EnableDdosDetection{v} + m.TrustClientIpHeadersChoice = &ReplaceSpecType_DisableTrustClientIpHeaders{v} iNdEx = postIndex - case 78: + case 75: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDdosDetection", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableTrustClientIpHeaders", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97818,11 +66617,11 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &virtual_host.ClientIPHeaders{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.DdosDetectionChoice = &ReplaceSpecType_DisableDdosDetection{v} + m.TrustClientIpHeadersChoice = &ReplaceSpecType_EnableTrustClientIpHeaders{v} iNdEx = postIndex case 80: if wireType != 2 { @@ -97923,7 +66722,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDiscoverySetting{} + v := &common_waf.ApiDiscoverySetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -98272,7 +67071,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableChallenge{} + v := &common_waf.EnableChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -98343,7 +67142,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.JwtValidation == nil { - m.JwtValidation = &JWTValidation{} + m.JwtValidation = &common_waf.JWTValidation{} } if err := m.JwtValidation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -98387,7 +67186,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 103: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98418,11 +67217,11 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &ReplaceSpecType_DisableThreatIntelligence{v} + m.ThreatMeshChoice = &ReplaceSpecType_DisableThreatMesh{v} iNdEx = postIndex case 105: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98453,7 +67252,7 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &ReplaceSpecType_EnableThreatIntelligence{v} + m.ThreatMeshChoice = &ReplaceSpecType_EnableThreatMesh{v} iNdEx = postIndex case 111: if wireType != 2 { @@ -98595,6 +67394,41 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.L7DdosAutoMitigationAction = &ReplaceSpecType_L7DdosActionNone{v} iNdEx = postIndex + case 120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.APIRateLimit{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimitChoice = &ReplaceSpecType_ApiRateLimit{v} + iNdEx = postIndex case 1011: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field BotDefenseAdvanced", wireType) @@ -99254,7 +68088,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &RateLimitConfigType{} + v := &common_waf.RateLimitConfigType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -99464,7 +68298,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BlockedClients = append(m.BlockedClients, &SimpleClientSrcRule{}) + m.BlockedClients = append(m.BlockedClients, &common_waf.SimpleClientSrcRule{}) if err := m.BlockedClients[len(m.BlockedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -99498,7 +68332,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TrustedClients = append(m.TrustedClients, &SimpleClientSrcRule{}) + m.TrustedClients = append(m.TrustedClients, &common_waf.SimpleClientSrcRule{}) if err := m.TrustedClients[len(m.TrustedClients)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -99636,7 +68470,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ServicePolicyList{} + v := &common_waf.ServicePolicyList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -99881,7 +68715,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &PolicyBasedChallenge{} + v := &common_waf.PolicyBasedChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -100126,7 +68960,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDefinitionList{} + v := &common_waf.ApiDefinitionList{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -100264,7 +69098,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &IPThreatCategoryListType{} + v := &common_waf.IPThreatCategoryListType{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -100299,47 +69133,12 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &APISpecificationSettings{} + v := &common_waf.APISpecificationSettings{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } m.ApiDefinitionChoice = &GetSpecType_ApiSpecification{v} iNdEx = postIndex - case 68: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &APIRateLimit{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.RateLimitChoice = &GetSpecType_ApiRateLimit{v} - iNdEx = postIndex case 70: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field DisableApiDefinition", wireType) @@ -100440,7 +69239,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.ApiProtectionRules == nil { - m.ApiProtectionRules = &APIProtectionRules{} + m.ApiProtectionRules = &common_waf.APIProtectionRules{} } if err := m.ApiProtectionRules.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -100516,76 +69315,6 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.TrustClientIpHeadersChoice = &GetSpecType_EnableTrustClientIpHeaders{v} iNdEx = postIndex - case 77: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableDdosDetection", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &EnableDDoSDetectionSetting{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DdosDetectionChoice = &GetSpecType_EnableDdosDetection{v} - iNdEx = postIndex - case 78: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableDdosDetection", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.DdosDetectionChoice = &GetSpecType_DisableDdosDetection{v} - iNdEx = postIndex case 80: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field EnableMaliciousUserDetection", wireType) @@ -100685,7 +69414,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &ApiDiscoverySetting{} + v := &common_waf.ApiDiscoverySetting{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -101034,7 +69763,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &EnableChallenge{} + v := &common_waf.EnableChallenge{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -101105,7 +69834,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.JwtValidation == nil { - m.JwtValidation = &JWTValidation{} + m.JwtValidation = &common_waf.JWTValidation{} } if err := m.JwtValidation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err @@ -101149,7 +69878,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 103: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DisableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101180,11 +69909,11 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &GetSpecType_DisableThreatIntelligence{v} + m.ThreatMeshChoice = &GetSpecType_DisableThreatMesh{v} iNdEx = postIndex case 105: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatIntelligence", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EnableThreatMesh", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101215,7 +69944,7 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - m.ThreatIntelligenceChoice = &GetSpecType_EnableThreatIntelligence{v} + m.ThreatMeshChoice = &GetSpecType_EnableThreatMesh{v} iNdEx = postIndex case 111: if wireType != 2 { @@ -101376,6 +70105,41 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { break } } + case 120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ApiRateLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &common_waf.APIRateLimit{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.RateLimitChoice = &GetSpecType_ApiRateLimit{v} + iNdEx = postIndex case 1001: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field HostName", wireType) diff --git a/pbgo/extschema/schema/views/http_loadbalancer/types.vesmsg.go b/pbgo/extschema/schema/views/http_loadbalancer/types.vesmsg.go index 8b457828b..cfae9d755 100644 --- a/pbgo/extschema/schema/views/http_loadbalancer/types.vesmsg.go +++ b/pbgo/extschema/schema/views/http_loadbalancer/types.vesmsg.go @@ -15,14 +15,11 @@ import ( "gopkg.volterra.us/stdlib/errors" ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" - ves_io_schema_app_type "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" - ves_io_schema_rate_limiter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" ves_io_schema_route "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/route" - ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" - ves_io_schema_views_rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" ves_io_schema_virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" ves_io_schema_virtual_host_dns_info "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host_dns_info" ) @@ -36,15 +33,37 @@ var ( // augmented methods on protoc/std generated struct -func (m *APIEndpointProtectionRule) ToJSON() (string, error) { +func (m *AdvancedOptionsType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *APIEndpointProtectionRule) ToYAML() (string, error) { +func (m *AdvancedOptionsType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *APIEndpointProtectionRule) DeepCopy() *APIEndpointProtectionRule { +// Redact squashes sensitive info in m (in-place) +func (m *AdvancedOptionsType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + for idx, e := range m.GetRequestHeadersToAdd() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting AdvancedOptionsType.request_headers_to_add idx %v", idx) + } + } + + for idx, e := range m.GetResponseHeadersToAdd() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting AdvancedOptionsType.response_headers_to_add idx %v", idx) + } + } + + return nil +} + +func (m *AdvancedOptionsType) DeepCopy() *AdvancedOptionsType { if m == nil { return nil } @@ -52,7 +71,7 @@ func (m *APIEndpointProtectionRule) DeepCopy() *APIEndpointProtectionRule { if err != nil { return nil } - c := &APIEndpointProtectionRule{} + c := &AdvancedOptionsType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -60,531 +79,536 @@ func (m *APIEndpointProtectionRule) DeepCopy() *APIEndpointProtectionRule { return c } -func (m *APIEndpointProtectionRule) DeepCopyProto() proto.Message { +func (m *AdvancedOptionsType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *APIEndpointProtectionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APIEndpointProtectionRuleValidator().Validate(ctx, m, opts...) +func (m *AdvancedOptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AdvancedOptionsTypeValidator().Validate(ctx, m, opts...) } -func (m *APIEndpointProtectionRule) GetDRefInfo() ([]db.DRefInfo, error) { +func (m *AdvancedOptionsType) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { return nil, nil } - return m.GetClientMatcherDRefInfo() + return m.GetJwtDRefInfo() } -// GetDRefInfo for the field's type -func (m *APIEndpointProtectionRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { - if m.GetClientMatcher() == nil { +func (m *AdvancedOptionsType) GetJwtDRefInfo() ([]db.DRefInfo, error) { + vrefs := m.GetJwt() + if len(vrefs) == 0 { return nil, nil } + drInfos := make([]db.DRefInfo, 0, len(vrefs)) + for i, vref := range vrefs { + if vref == nil { + return nil, fmt.Errorf("AdvancedOptionsType.jwt[%d] has a nil value", i) + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("jwt.Object") + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "jwt.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "jwt", + Ref: vdRef, + }) + } + return drInfos, nil + +} - drInfos, err := m.GetClientMatcher().GetDRefInfo() +// GetJwtDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *AdvancedOptionsType) GetJwtDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "jwt.Object") if err != nil { - return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") + return nil, errors.Wrap(err, "Cannot find type for kind: jwt") } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "client_matcher." + dri.DRField + for i, vref := range m.GetJwt() { + if vref == nil { + return nil, fmt.Errorf("AdvancedOptionsType.jwt[%d] has a nil value", i) + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "jwt.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } } - return drInfos, err + return entries, nil } -type ValidateAPIEndpointProtectionRule struct { +type ValidateAdvancedOptionsType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateAPIEndpointProtectionRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") - } - return validatorFn, nil -} +func (v *ValidateAdvancedOptionsType) RequestHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateAPIEndpointProtectionRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for request_headers_to_add") } - return oValidatorFn_SpecificDomain, nil -} - -func (v *ValidateAPIEndpointProtectionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_add") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated request_headers_to_add") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items request_headers_to_add") } - return nil } return validatorFn, nil } -func (v *ValidateAPIEndpointProtectionRule) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateAdvancedOptionsType) RequestHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for action") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for request_headers_to_remove") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_remove") + } - if err := APIProtectionRuleActionValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated request_headers_to_remove") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items request_headers_to_remove") } - return nil } return validatorFn, nil } -func (v *ValidateAPIEndpointProtectionRule) ApiEndpointPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateAdvancedOptionsType) ResponseHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewStringValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_endpoint_path") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for response_headers_to_add") } - - return validatorFn, nil -} - -func (v *ValidateAPIEndpointProtectionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APIEndpointProtectionRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *APIEndpointProtectionRule got type %s", t) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - } - if m == nil { return nil } - - if fv, exists := v.FldValidators["action"]; exists { - - vOpts := append(opts, db.WithValidateField("action")) - if err := fv(ctx, m.GetAction(), vOpts...); err != nil { - return err - } - + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_add") } - if fv, exists := v.FldValidators["api_endpoint_method"]; exists { - - vOpts := append(opts, db.WithValidateField("api_endpoint_method")) - if err := fv(ctx, m.GetApiEndpointMethod(), vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) } - - } - - if fv, exists := v.FldValidators["api_endpoint_path"]; exists { - - vOpts := append(opts, db.WithValidateField("api_endpoint_path")) - if err := fv(ctx, m.GetApiEndpointPath(), vOpts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_headers_to_add") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_headers_to_add") + } + return nil } - if fv, exists := v.FldValidators["client_matcher"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("client_matcher")) - if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { - return err - } +func (v *ValidateAdvancedOptionsType) ResponseHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for response_headers_to_remove") } - - if fv, exists := v.FldValidators["domain_choice"]; exists { - val := m.GetDomainChoice() - vOpts := append(opts, - db.WithValidateField("domain_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_remove") } - switch m.GetDomainChoice().(type) { - case *APIEndpointProtectionRule_AnyDomain: - if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { - val := m.GetDomainChoice().(*APIEndpointProtectionRule_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) } - case *APIEndpointProtectionRule_SpecificDomain: - if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { - val := m.GetDomainChoice().(*APIEndpointProtectionRule_SpecificDomain).SpecificDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("specific_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_headers_to_remove") } - - } - - if fv, exists := v.FldValidators["request_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("request_matcher")) - if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { - return err + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_headers_to_remove") } - + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultAPIEndpointProtectionRuleValidator = func() *ValidateAPIEndpointProtectionRule { - v := &ValidateAPIEndpointProtectionRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateAdvancedOptionsType) MaxRequestHeaderSizeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhDomainChoice := v.DomainChoiceValidationRuleHandler - rulesDomainChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDomainChoice(rulesDomainChoice) + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.domain_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for max_request_header_size") } - v.FldValidators["domain_choice"] = vFn - vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler - rulesDomainChoiceSpecificDomain := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true", - } - vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field APIEndpointProtectionRule.domain_choice_specific_domain: %s", err) - panic(errMsg) - } + return validatorFn, nil +} - v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] +func (v *ValidateAdvancedOptionsType) CustomErrorsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) + itemKeyRules := db.GetMapUint32KeyRules(rules) + itemKeyFn, err := db.NewUint32ValidationRuleHandler(itemKeyRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.metadata: %s", err) - panic(errMsg) - } - v.FldValidators["metadata"] = vFn - - vrhAction := v.ActionValidationRuleHandler - rulesAction := map[string]string{ - "ves.io.schema.rules.message.required": "true", + return nil, errors.Wrap(err, "Item key ValidationRuleHandler for custom_errors") } - vFn, err = vrhAction(rulesAction) + itemValRules := db.GetMapStringValueRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemValRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.action: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Item value ValidationRuleHandler for custom_errors") } - v.FldValidators["action"] = vFn - - vrhApiEndpointPath := v.ApiEndpointPathValidationRuleHandler - rulesApiEndpointPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "1024", - "ves.io.schema.rules.string.templated_http_path": "true", + itemsValidatorFn := func(ctx context.Context, kv map[uint32]string, opts ...db.ValidateOpt) error { + for key, value := range kv { + if err := itemKeyFn(ctx, key, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + } + if err := itemValFn(ctx, value, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + } + } + return nil } - vFn, err = vrhApiEndpointPath(rulesApiEndpointPath) + mapValFn, err := db.NewMapValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIEndpointProtectionRule.api_endpoint_path: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Map ValidationRuleHandler for custom_errors") } - v.FldValidators["api_endpoint_path"] = vFn - - v.FldValidators["api_endpoint_method"] = ves_io_schema_policy.HttpMethodMatcherTypeValidator().Validate - v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate - - v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate - - return v -}() - -func APIEndpointProtectionRuleValidator() db.Validator { - return DefaultAPIEndpointProtectionRuleValidator -} - -// augmented methods on protoc/std generated struct + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.(map[uint32]string) + if !ok { + return fmt.Errorf("Map validation expected map[ uint32 ]string, got %T", val) + } + if err := mapValFn(ctx, len(elems), opts...); err != nil { + return errors.Wrap(err, "map custom_errors") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items custom_errors") + } + return nil + } -func (m *APIGroupProtectionRule) ToJSON() (string, error) { - return codec.ToJSON(m) + return validatorFn, nil } -func (m *APIGroupProtectionRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateAdvancedOptionsType) JwtValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *APIGroupProtectionRule) DeepCopy() *APIGroupProtectionRule { - if m == nil { - return nil - } - ser, err := m.Marshal() + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for jwt") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &APIGroupProtectionRule{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for jwt") } - return c -} -func (m *APIGroupProtectionRule) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated jwt") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items jwt") + } return nil } - return m.DeepCopy() -} - -func (m *APIGroupProtectionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APIGroupProtectionRuleValidator().Validate(ctx, m, opts...) -} - -func (m *APIGroupProtectionRule) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetClientMatcherDRefInfo() + return validatorFn, nil } -// GetDRefInfo for the field's type -func (m *APIGroupProtectionRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { - if m.GetClientMatcher() == nil { - return nil, nil - } +func (v *ValidateAdvancedOptionsType) IdleTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - drInfos, err := m.GetClientMatcher().GetDRefInfo() + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "client_matcher." + dri.DRField + return nil, errors.Wrap(err, "ValidationRuleHandler for idle_timeout") } - return drInfos, err + return validatorFn, nil } -type ValidateAPIGroupProtectionRule struct { - FldValidators map[string]db.ValidatorFunc -} +func (v *ValidateAdvancedOptionsType) CookiesToModifyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateAPIGroupProtectionRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for cookies_to_modify") } - return validatorFn, nil -} - -func (v *ValidateAPIGroupProtectionRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - return oValidatorFn_SpecificDomain, nil -} - -func (v *ValidateAPIGroupProtectionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for cookies_to_modify") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated cookies_to_modify") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items cookies_to_modify") } - return nil } return validatorFn, nil } -func (v *ValidateAPIGroupProtectionRule) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for action") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err +func (v *ValidateAdvancedOptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AdvancedOptionsType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AdvancedOptionsType got type %s", t) } + } + if m == nil { + return nil + } - if err := APIProtectionRuleActionValidator().Validate(ctx, val, opts...); err != nil { + if fv, exists := v.FldValidators["buffer_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("buffer_policy")) + if err := fv(ctx, m.GetBufferPolicy(), vOpts...); err != nil { return err } - return nil } - return validatorFn, nil -} + if fv, exists := v.FldValidators["compression_params"]; exists { -func (v *ValidateAPIGroupProtectionRule) ApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + vOpts := append(opts, db.WithValidateField("compression_params")) + if err := fv(ctx, m.GetCompressionParams(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") } - return validatorFn, nil -} - -func (v *ValidateAPIGroupProtectionRule) BasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["cookies_to_modify"]; exists { + vOpts := append(opts, db.WithValidateField("cookies_to_modify")) + if err := fv(ctx, m.GetCookiesToModify(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") } - return validatorFn, nil -} - -func (v *ValidateAPIGroupProtectionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APIGroupProtectionRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *APIGroupProtectionRule got type %s", t) + if fv, exists := v.FldValidators["custom_errors"]; exists { + vOpts := append(opts, db.WithValidateField("custom_errors")) + if err := fv(ctx, m.GetCustomErrors(), vOpts...); err != nil { + return err } - } - if m == nil { - return nil + } - if fv, exists := v.FldValidators["action"]; exists { + if fv, exists := v.FldValidators["disable_default_error_pages"]; exists { - vOpts := append(opts, db.WithValidateField("action")) - if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("disable_default_error_pages")) + if err := fv(ctx, m.GetDisableDefaultErrorPages(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["api_group"]; exists { + if fv, exists := v.FldValidators["idle_timeout"]; exists { - vOpts := append(opts, db.WithValidateField("api_group")) - if err := fv(ctx, m.GetApiGroup(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("idle_timeout")) + if err := fv(ctx, m.GetIdleTimeout(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["base_path"]; exists { + if fv, exists := v.FldValidators["javascript_info"]; exists { - vOpts := append(opts, db.WithValidateField("base_path")) - if err := fv(ctx, m.GetBasePath(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("javascript_info")) + if err := fv(ctx, m.GetJavascriptInfo(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["client_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("client_matcher")) - if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + if fv, exists := v.FldValidators["jwt"]; exists { + vOpts := append(opts, db.WithValidateField("jwt")) + if err := fv(ctx, m.GetJwt(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["domain_choice"]; exists { - val := m.GetDomainChoice() - vOpts := append(opts, - db.WithValidateField("domain_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["max_request_header_size"]; exists { + + vOpts := append(opts, db.WithValidateField("max_request_header_size")) + if err := fv(ctx, m.GetMaxRequestHeaderSize(), vOpts...); err != nil { return err } + } - switch m.GetDomainChoice().(type) { - case *APIGroupProtectionRule_AnyDomain: - if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { - val := m.GetDomainChoice().(*APIGroupProtectionRule_AnyDomain).AnyDomain + switch m.GetPathNormalizeChoice().(type) { + case *AdvancedOptionsType_EnablePathNormalize: + if fv, exists := v.FldValidators["path_normalize_choice.enable_path_normalize"]; exists { + val := m.GetPathNormalizeChoice().(*AdvancedOptionsType_EnablePathNormalize).EnablePathNormalize vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("any_domain"), + db.WithValidateField("path_normalize_choice"), + db.WithValidateField("enable_path_normalize"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIGroupProtectionRule_SpecificDomain: - if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { - val := m.GetDomainChoice().(*APIGroupProtectionRule_SpecificDomain).SpecificDomain + case *AdvancedOptionsType_DisablePathNormalize: + if fv, exists := v.FldValidators["path_normalize_choice.disable_path_normalize"]; exists { + val := m.GetPathNormalizeChoice().(*AdvancedOptionsType_DisablePathNormalize).DisablePathNormalize vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("specific_domain"), + db.WithValidateField("path_normalize_choice"), + db.WithValidateField("disable_path_normalize"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -593,30 +617,70 @@ func (v *ValidateAPIGroupProtectionRule) Validate(ctx context.Context, pm interf } - if fv, exists := v.FldValidators["metadata"]; exists { + if fv, exists := v.FldValidators["request_headers_to_add"]; exists { + vOpts := append(opts, db.WithValidateField("request_headers_to_add")) + if err := fv(ctx, m.GetRequestHeadersToAdd(), vOpts...); err != nil { + return err + } - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + } + + if fv, exists := v.FldValidators["request_headers_to_remove"]; exists { + vOpts := append(opts, db.WithValidateField("request_headers_to_remove")) + if err := fv(ctx, m.GetRequestHeadersToRemove(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["request_matcher"]; exists { + if fv, exists := v.FldValidators["response_headers_to_add"]; exists { + vOpts := append(opts, db.WithValidateField("response_headers_to_add")) + if err := fv(ctx, m.GetResponseHeadersToAdd(), vOpts...); err != nil { + return err + } + + } - vOpts := append(opts, db.WithValidateField("request_matcher")) - if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { + if fv, exists := v.FldValidators["response_headers_to_remove"]; exists { + vOpts := append(opts, db.WithValidateField("response_headers_to_remove")) + if err := fv(ctx, m.GetResponseHeadersToRemove(), vOpts...); err != nil { return err } } + switch m.GetStrictSniHostHeaderCheckChoice().(type) { + case *AdvancedOptionsType_EnableStrictSniHostHeaderCheck: + if fv, exists := v.FldValidators["strict_sni_host_header_check_choice.enable_strict_sni_host_header_check"]; exists { + val := m.GetStrictSniHostHeaderCheckChoice().(*AdvancedOptionsType_EnableStrictSniHostHeaderCheck).EnableStrictSniHostHeaderCheck + vOpts := append(opts, + db.WithValidateField("strict_sni_host_header_check_choice"), + db.WithValidateField("enable_strict_sni_host_header_check"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AdvancedOptionsType_AdditionalDomains: + if fv, exists := v.FldValidators["strict_sni_host_header_check_choice.additional_domains"]; exists { + val := m.GetStrictSniHostHeaderCheckChoice().(*AdvancedOptionsType_AdditionalDomains).AdditionalDomains + vOpts := append(opts, + db.WithValidateField("strict_sni_host_header_check_choice"), + db.WithValidateField("additional_domains"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + return nil } // Well-known symbol for default validator implementation -var DefaultAPIGroupProtectionRuleValidator = func() *ValidateAPIGroupProtectionRule { - v := &ValidateAPIGroupProtectionRule{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultAdvancedOptionsTypeValidator = func() *ValidateAdvancedOptionsType { + v := &ValidateAdvancedOptionsType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -626,98 +690,144 @@ var DefaultAPIGroupProtectionRuleValidator = func() *ValidateAPIGroupProtectionR vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhDomainChoice := v.DomainChoiceValidationRuleHandler - rulesDomainChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhRequestHeadersToAdd := v.RequestHeadersToAddValidationRuleHandler + rulesRequestHeadersToAdd := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRequestHeadersToAdd(rulesRequestHeadersToAdd) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.request_headers_to_add: %s", err) + panic(errMsg) + } + v.FldValidators["request_headers_to_add"] = vFn + + vrhRequestHeadersToRemove := v.RequestHeadersToRemoveValidationRuleHandler + rulesRequestHeadersToRemove := map[string]string{ + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhDomainChoice(rulesDomainChoice) + vFn, err = vrhRequestHeadersToRemove(rulesRequestHeadersToRemove) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.domain_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.request_headers_to_remove: %s", err) panic(errMsg) } - v.FldValidators["domain_choice"] = vFn + v.FldValidators["request_headers_to_remove"] = vFn - vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler - rulesDomainChoiceSpecificDomain := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true", + vrhResponseHeadersToAdd := v.ResponseHeadersToAddValidationRuleHandler + rulesResponseHeadersToAdd := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + vFn, err = vrhResponseHeadersToAdd(rulesResponseHeadersToAdd) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field APIGroupProtectionRule.domain_choice_specific_domain: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.response_headers_to_add: %s", err) panic(errMsg) } + v.FldValidators["response_headers_to_add"] = vFn - v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] + vrhResponseHeadersToRemove := v.ResponseHeadersToRemoveValidationRuleHandler + rulesResponseHeadersToRemove := map[string]string{ + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhResponseHeadersToRemove(rulesResponseHeadersToRemove) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.response_headers_to_remove: %s", err) + panic(errMsg) + } + v.FldValidators["response_headers_to_remove"] = vFn - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhMaxRequestHeaderSize := v.MaxRequestHeaderSizeValidationRuleHandler + rulesMaxRequestHeaderSize := map[string]string{ + "ves.io.schema.rules.uint32.lte": "96", } - vFn, err = vrhMetadata(rulesMetadata) + vFn, err = vrhMaxRequestHeaderSize(rulesMaxRequestHeaderSize) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.metadata: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.max_request_header_size: %s", err) panic(errMsg) } - v.FldValidators["metadata"] = vFn + v.FldValidators["max_request_header_size"] = vFn - vrhAction := v.ActionValidationRuleHandler - rulesAction := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhCustomErrors := v.CustomErrorsValidationRuleHandler + rulesCustomErrors := map[string]string{ + "ves.io.schema.rules.map.keys.uint32.ranges": "3,4,5,300-599", + "ves.io.schema.rules.map.max_pairs": "16", + "ves.io.schema.rules.map.values.string.max_len": "65536", + "ves.io.schema.rules.map.values.string.uri_ref": "true", } - vFn, err = vrhAction(rulesAction) + vFn, err = vrhCustomErrors(rulesCustomErrors) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.action: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.custom_errors: %s", err) panic(errMsg) } - v.FldValidators["action"] = vFn + v.FldValidators["custom_errors"] = vFn - vrhApiGroup := v.ApiGroupValidationRuleHandler - rulesApiGroup := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", + vrhJwt := v.JwtValidationRuleHandler + rulesJwt := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhApiGroup(rulesApiGroup) + vFn, err = vrhJwt(rulesJwt) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.api_group: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.jwt: %s", err) panic(errMsg) } - v.FldValidators["api_group"] = vFn + v.FldValidators["jwt"] = vFn - vrhBasePath := v.BasePathValidationRuleHandler - rulesBasePath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128", + vrhIdleTimeout := v.IdleTimeoutValidationRuleHandler + rulesIdleTimeout := map[string]string{ + "ves.io.schema.rules.uint32.lte": "3600000", + } + vFn, err = vrhIdleTimeout(rulesIdleTimeout) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.idle_timeout: %s", err) + panic(errMsg) + } + v.FldValidators["idle_timeout"] = vFn + + vrhCookiesToModify := v.CookiesToModifyValidationRuleHandler + rulesCookiesToModify := map[string]string{ + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhBasePath(rulesBasePath) + vFn, err = vrhCookiesToModify(rulesCookiesToModify) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroupProtectionRule.base_path: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.cookies_to_modify: %s", err) panic(errMsg) } - v.FldValidators["base_path"] = vFn + v.FldValidators["cookies_to_modify"] = vFn - v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate + v.FldValidators["strict_sni_host_header_check_choice.additional_domains"] = ves_io_schema.DomainNameListValidator().Validate + + v.FldValidators["buffer_policy"] = ves_io_schema.BufferConfigTypeValidator().Validate - v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate + v.FldValidators["compression_params"] = ves_io_schema_virtual_host.CompressionTypeValidator().Validate return v }() -func APIGroupProtectionRuleValidator() db.Validator { - return DefaultAPIGroupProtectionRuleValidator +func AdvancedOptionsTypeValidator() db.Validator { + return DefaultAdvancedOptionsTypeValidator } // augmented methods on protoc/std generated struct -func (m *APIGroups) ToJSON() (string, error) { +func (m *AppEndpointType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *APIGroups) ToYAML() (string, error) { +func (m *AppEndpointType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *APIGroups) DeepCopy() *APIGroups { +func (m *AppEndpointType) DeepCopy() *AppEndpointType { if m == nil { return nil } @@ -725,7 +835,7 @@ func (m *APIGroups) DeepCopy() *APIGroups { if err != nil { return nil } - c := &APIGroups{} + c := &AppEndpointType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -733,212 +843,197 @@ func (m *APIGroups) DeepCopy() *APIGroups { return c } -func (m *APIGroups) DeepCopyProto() proto.Message { +func (m *AppEndpointType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *APIGroups) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APIGroupsValidator().Validate(ctx, m, opts...) +func (m *AppEndpointType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AppEndpointTypeValidator().Validate(ctx, m, opts...) } -type ValidateAPIGroups struct { +type ValidateAppEndpointType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateAPIGroups) ApiGroupsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) +func (v *ValidateAppEndpointType) AppTrafficTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for api_groups") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for app_traffic_type_choice") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return validatorFn, nil +} + +func (v *ValidateAppEndpointType) GoodbotChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_groups") + return nil, errors.Wrap(err, "ValidationRuleHandler for goodbot_choice") } + return validatorFn, nil +} + +func (v *ValidateAppEndpointType) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated api_groups") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items api_groups") + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err } + return nil } return validatorFn, nil } -func (v *ValidateAPIGroups) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APIGroups) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *APIGroups got type %s", t) - } +func (v *ValidateAppEndpointType) HttpMethodsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.BotHttpMethod) + return int32(i) } - if m == nil { + // ves_io_schema.BotHttpMethod_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.BotHttpMethod_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for http_methods") + } + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.BotHttpMethod, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for http_methods") + } - if fv, exists := v.FldValidators["api_groups"]; exists { - vOpts := append(opts, db.WithValidateField("api_groups")) - if err := fv(ctx, m.GetApiGroups(), vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ves_io_schema.BotHttpMethod) + if !ok { + return fmt.Errorf("Repeated validation expected []ves_io_schema.BotHttpMethod, got %T", val) } - + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated http_methods") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items http_methods") + } + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultAPIGroupsValidator = func() *ValidateAPIGroups { - v := &ValidateAPIGroups{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateAppEndpointType) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhApiGroups := v.ApiGroupsValidationRuleHandler - rulesApiGroups := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.not_empty": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhApiGroups(rulesApiGroups) + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIGroups.api_groups: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") } - v.FldValidators["api_groups"] = vFn - - return v -}() + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } -func APIGroupsValidator() db.Validator { - return DefaultAPIGroupsValidator -} + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } -// augmented methods on protoc/std generated struct + return nil + } -func (m *APIProtectionRuleAction) ToJSON() (string, error) { - return codec.ToJSON(m) + return validatorFn, nil } -func (m *APIProtectionRuleAction) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateAppEndpointType) MitigationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *APIProtectionRuleAction) DeepCopy() *APIProtectionRuleAction { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &APIProtectionRuleAction{} - err = c.Unmarshal(ser) + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "MessageValidationRuleHandler for mitigation") } - return c -} + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } -func (m *APIProtectionRuleAction) DeepCopyProto() proto.Message { - if m == nil { return nil } - return m.DeepCopy() -} - -func (m *APIProtectionRuleAction) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APIProtectionRuleActionValidator().Validate(ctx, m, opts...) -} - -type ValidateAPIProtectionRuleAction struct { - FldValidators map[string]db.ValidatorFunc -} -func (v *ValidateAPIProtectionRuleAction) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for action") - } return validatorFn, nil } -func (v *ValidateAPIProtectionRuleAction) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APIProtectionRuleAction) +func (v *ValidateAppEndpointType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AppEndpointType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *APIProtectionRuleAction got type %s", t) + return fmt.Errorf("Expected type *AppEndpointType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["action"]; exists { - val := m.GetAction() + if fv, exists := v.FldValidators["app_traffic_type_choice"]; exists { + val := m.GetAppTrafficTypeChoice() vOpts := append(opts, - db.WithValidateField("action"), + db.WithValidateField("app_traffic_type_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetAction().(type) { - case *APIProtectionRuleAction_Allow: - if fv, exists := v.FldValidators["action.allow"]; exists { - val := m.GetAction().(*APIProtectionRuleAction_Allow).Allow + switch m.GetAppTrafficTypeChoice().(type) { + case *AppEndpointType_Web: + if fv, exists := v.FldValidators["app_traffic_type_choice.web"]; exists { + val := m.GetAppTrafficTypeChoice().(*AppEndpointType_Web).Web + vOpts := append(opts, + db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("web"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AppEndpointType_Mobile: + if fv, exists := v.FldValidators["app_traffic_type_choice.mobile"]; exists { + val := m.GetAppTrafficTypeChoice().(*AppEndpointType_Mobile).Mobile vOpts := append(opts, - db.WithValidateField("action"), - db.WithValidateField("allow"), + db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("mobile"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIProtectionRuleAction_Deny: - if fv, exists := v.FldValidators["action.deny"]; exists { - val := m.GetAction().(*APIProtectionRuleAction_Deny).Deny + case *AppEndpointType_WebMobile: + if fv, exists := v.FldValidators["app_traffic_type_choice.web_mobile"]; exists { + val := m.GetAppTrafficTypeChoice().(*AppEndpointType_WebMobile).WebMobile vOpts := append(opts, - db.WithValidateField("action"), - db.WithValidateField("deny"), + db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("web_mobile"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -947,267 +1042,133 @@ func (v *ValidateAPIProtectionRuleAction) Validate(ctx context.Context, pm inter } - return nil -} + switch m.GetDomainMatcherChoice().(type) { + case *AppEndpointType_AnyDomain: + if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { + val := m.GetDomainMatcherChoice().(*AppEndpointType_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AppEndpointType_Domain: + if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { + val := m.GetDomainMatcherChoice().(*AppEndpointType_Domain).Domain + vOpts := append(opts, + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// Well-known symbol for default validator implementation -var DefaultAPIProtectionRuleActionValidator = func() *ValidateAPIProtectionRuleAction { - v := &ValidateAPIProtectionRuleAction{FldValidators: map[string]db.ValidatorFunc{}} + } - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + switch m.GetFlowLabelChoice().(type) { + case *AppEndpointType_UndefinedFlowLabel: + if fv, exists := v.FldValidators["flow_label_choice.undefined_flow_label"]; exists { + val := m.GetFlowLabelChoice().(*AppEndpointType_UndefinedFlowLabel).UndefinedFlowLabel + vOpts := append(opts, + db.WithValidateField("flow_label_choice"), + db.WithValidateField("undefined_flow_label"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AppEndpointType_FlowLabel: + if fv, exists := v.FldValidators["flow_label_choice.flow_label"]; exists { + val := m.GetFlowLabelChoice().(*AppEndpointType_FlowLabel).FlowLabel + vOpts := append(opts, + db.WithValidateField("flow_label_choice"), + db.WithValidateField("flow_label"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vrhAction := v.ActionValidationRuleHandler - rulesAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhAction(rulesAction) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIProtectionRuleAction.action: %s", err) - panic(errMsg) + + if fv, exists := v.FldValidators["goodbot_choice"]; exists { + val := m.GetGoodbotChoice() + vOpts := append(opts, + db.WithValidateField("goodbot_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - v.FldValidators["action"] = vFn - return v -}() + switch m.GetGoodbotChoice().(type) { + case *AppEndpointType_MitigateGoodBots: + if fv, exists := v.FldValidators["goodbot_choice.mitigate_good_bots"]; exists { + val := m.GetGoodbotChoice().(*AppEndpointType_MitigateGoodBots).MitigateGoodBots + vOpts := append(opts, + db.WithValidateField("goodbot_choice"), + db.WithValidateField("mitigate_good_bots"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *AppEndpointType_AllowGoodBots: + if fv, exists := v.FldValidators["goodbot_choice.allow_good_bots"]; exists { + val := m.GetGoodbotChoice().(*AppEndpointType_AllowGoodBots).AllowGoodBots + vOpts := append(opts, + db.WithValidateField("goodbot_choice"), + db.WithValidateField("allow_good_bots"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func APIProtectionRuleActionValidator() db.Validator { - return DefaultAPIProtectionRuleActionValidator -} + } -// augmented methods on protoc/std generated struct + if fv, exists := v.FldValidators["http_methods"]; exists { + vOpts := append(opts, db.WithValidateField("http_methods")) + if err := fv(ctx, m.GetHttpMethods(), vOpts...); err != nil { + return err + } -func (m *APIProtectionRules) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *APIProtectionRules) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *APIProtectionRules) DeepCopy() *APIProtectionRules { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &APIProtectionRules{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *APIProtectionRules) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *APIProtectionRules) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APIProtectionRulesValidator().Validate(ctx, m, opts...) -} - -func (m *APIProtectionRules) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetApiEndpointRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiEndpointRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiGroupsRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiGroupsRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *APIProtectionRules) GetApiEndpointRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiEndpointRules() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetApiEndpointRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiEndpointRules() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("api_endpoint_rules[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *APIProtectionRules) GetApiGroupsRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiGroupsRules() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetApiGroupsRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiGroupsRules() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("api_groups_rules[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) } - return drInfos, nil - -} -type ValidateAPIProtectionRules struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateAPIProtectionRules) ApiEndpointRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["metadata"]; exists { - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_endpoint_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*APIEndpointProtectionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := APIEndpointProtectionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_endpoint_rules") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*APIEndpointProtectionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*APIEndpointProtectionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated api_endpoint_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items api_endpoint_rules") - } - return nil } - return validatorFn, nil -} - -func (v *ValidateAPIProtectionRules) ApiGroupsRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["mitigation"]; exists { - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_groups_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*APIGroupProtectionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := APIGroupProtectionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } + vOpts := append(opts, db.WithValidateField("mitigation")) + if err := fv(ctx, m.GetMitigation(), vOpts...); err != nil { + return err } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_groups_rules") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*APIGroupProtectionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*APIGroupProtectionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated api_groups_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items api_groups_rules") - } - return nil } - return validatorFn, nil -} - -func (v *ValidateAPIProtectionRules) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APIProtectionRules) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *APIProtectionRules got type %s", t) - } - } - if m == nil { - return nil - } + if fv, exists := v.FldValidators["path"]; exists { - if fv, exists := v.FldValidators["api_endpoint_rules"]; exists { - vOpts := append(opts, db.WithValidateField("api_endpoint_rules")) - if err := fv(ctx, m.GetApiEndpointRules(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["api_groups_rules"]; exists { - vOpts := append(opts, db.WithValidateField("api_groups_rules")) - if err := fv(ctx, m.GetApiGroupsRules(), vOpts...); err != nil { + if fv, exists := v.FldValidators["protocol"]; exists { + + vOpts := append(opts, db.WithValidateField("protocol")) + if err := fv(ctx, m.GetProtocol(), vOpts...); err != nil { return err } @@ -1217,8 +1178,8 @@ func (v *ValidateAPIProtectionRules) Validate(ctx context.Context, pm interface{ } // Well-known symbol for default validator implementation -var DefaultAPIProtectionRulesValidator = func() *ValidateAPIProtectionRules { - v := &ValidateAPIProtectionRules{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultAppEndpointTypeValidator = func() *ValidateAppEndpointType { + v := &ValidateAppEndpointType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -1228,46 +1189,101 @@ var DefaultAPIProtectionRulesValidator = func() *ValidateAPIProtectionRules { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhApiEndpointRules := v.ApiEndpointRulesValidationRuleHandler - rulesApiEndpointRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "20", + vrhAppTrafficTypeChoice := v.AppTrafficTypeChoiceValidationRuleHandler + rulesAppTrafficTypeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAppTrafficTypeChoice(rulesAppTrafficTypeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.app_traffic_type_choice: %s", err) + panic(errMsg) + } + v.FldValidators["app_traffic_type_choice"] = vFn + + vrhGoodbotChoice := v.GoodbotChoiceValidationRuleHandler + rulesGoodbotChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhGoodbotChoice(rulesGoodbotChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.goodbot_choice: %s", err) + panic(errMsg) + } + v.FldValidators["goodbot_choice"] = vFn + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhHttpMethods := v.HttpMethodsValidationRuleHandler + rulesHttpMethods := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.in": "[0,1,3,4,10]", + "ves.io.schema.rules.repeated.max_items": "5", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhHttpMethods(rulesHttpMethods) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.http_methods: %s", err) + panic(errMsg) + } + v.FldValidators["http_methods"] = vFn + + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhApiEndpointRules(rulesApiEndpointRules) + vFn, err = vrhPath(rulesPath) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIProtectionRules.api_endpoint_rules: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.path: %s", err) panic(errMsg) } - v.FldValidators["api_endpoint_rules"] = vFn + v.FldValidators["path"] = vFn - vrhApiGroupsRules := v.ApiGroupsRulesValidationRuleHandler - rulesApiGroupsRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "20", + vrhMitigation := v.MitigationValidationRuleHandler + rulesMitigation := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhApiGroupsRules(rulesApiGroupsRules) + vFn, err = vrhMitigation(rulesMitigation) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIProtectionRules.api_groups_rules: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.mitigation: %s", err) panic(errMsg) } - v.FldValidators["api_groups_rules"] = vFn + v.FldValidators["mitigation"] = vFn + + v.FldValidators["app_traffic_type_choice.web_mobile"] = WebMobileTrafficTypeValidator().Validate + + v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate + + v.FldValidators["flow_label_choice.flow_label"] = ves_io_schema.BotDefenseFlowLabelCategoriesChoiceTypeValidator().Validate return v }() -func APIProtectionRulesValidator() db.Validator { - return DefaultAPIProtectionRulesValidator +func AppEndpointTypeValidator() db.Validator { + return DefaultAppEndpointTypeValidator } // augmented methods on protoc/std generated struct -func (m *APIRateLimit) ToJSON() (string, error) { +func (m *BotAdvancedMobileSDKConfigType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *APIRateLimit) ToYAML() (string, error) { +func (m *BotAdvancedMobileSDKConfigType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *APIRateLimit) DeepCopy() *APIRateLimit { +func (m *BotAdvancedMobileSDKConfigType) DeepCopy() *BotAdvancedMobileSDKConfigType { if m == nil { return nil } @@ -1275,7 +1291,7 @@ func (m *APIRateLimit) DeepCopy() *APIRateLimit { if err != nil { return nil } - c := &APIRateLimit{} + c := &BotAdvancedMobileSDKConfigType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1283,158 +1299,122 @@ func (m *APIRateLimit) DeepCopy() *APIRateLimit { return c } -func (m *APIRateLimit) DeepCopyProto() proto.Message { +func (m *BotAdvancedMobileSDKConfigType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *APIRateLimit) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APIRateLimitValidator().Validate(ctx, m, opts...) +func (m *BotAdvancedMobileSDKConfigType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BotAdvancedMobileSDKConfigTypeValidator().Validate(ctx, m, opts...) } -func (m *APIRateLimit) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } +type ValidateBotAdvancedMobileSDKConfigType struct { + FldValidators map[string]db.ValidatorFunc +} - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetApiEndpointRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiEndpointRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetIpAllowedListChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetIpAllowedListChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) +func (v *ValidateBotAdvancedMobileSDKConfigType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*BotAdvancedMobileSDKConfigType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *BotAdvancedMobileSDKConfigType got type %s", t) + } } - - if fdrInfos, err := m.GetServerUrlRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetServerUrlRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + if m == nil { + return nil } - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *APIRateLimit) GetApiEndpointRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiEndpointRules() == nil { - return nil, nil - } + if fv, exists := v.FldValidators["mobile_identifier"]; exists { - var drInfos []db.DRefInfo - for idx, e := range m.GetApiEndpointRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiEndpointRules() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("api_endpoint_rules[%v].%s", idx, dri.DRField) + vOpts := append(opts, db.WithValidateField("mobile_identifier")) + if err := fv(ctx, m.GetMobileIdentifier(), vOpts...); err != nil { + return err } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} -// GetDRefInfo for the field's type -func (m *APIRateLimit) GetIpAllowedListChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetIpAllowedListChoice() == nil { - return nil, nil } - switch m.GetIpAllowedListChoice().(type) { - case *APIRateLimit_NoIpAllowedList: - - return nil, nil - case *APIRateLimit_IpAllowedList: + return nil +} - return nil, nil +// Well-known symbol for default validator implementation +var DefaultBotAdvancedMobileSDKConfigTypeValidator = func() *ValidateBotAdvancedMobileSDKConfigType { + v := &ValidateBotAdvancedMobileSDKConfigType{FldValidators: map[string]db.ValidatorFunc{}} - case *APIRateLimit_CustomIpAllowedList: + v.FldValidators["mobile_identifier"] = MobileTrafficIdentifierTypeValidator().Validate - drInfos, err := m.GetCustomIpAllowedList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetCustomIpAllowedList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "custom_ip_allowed_list." + dri.DRField - } - return drInfos, err + return v +}() - case *APIRateLimit_BypassRateLimitingRules: +func BotAdvancedMobileSDKConfigTypeValidator() db.Validator { + return DefaultBotAdvancedMobileSDKConfigTypeValidator +} - drInfos, err := m.GetBypassRateLimitingRules().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetBypassRateLimitingRules().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "bypass_rate_limiting_rules." + dri.DRField - } - return drInfos, err +// augmented methods on protoc/std generated struct - default: - return nil, nil - } +func (m *BotDefenseAdvancedPolicyType) ToJSON() (string, error) { + return codec.ToJSON(m) +} +func (m *BotDefenseAdvancedPolicyType) ToYAML() (string, error) { + return codec.ToYAML(m) } -// GetDRefInfo for the field's type -func (m *APIRateLimit) GetServerUrlRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetServerUrlRules() == nil { - return nil, nil +func (m *BotDefenseAdvancedPolicyType) DeepCopy() *BotDefenseAdvancedPolicyType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &BotDefenseAdvancedPolicyType{} + err = c.Unmarshal(ser) + if err != nil { + return nil } + return c +} - var drInfos []db.DRefInfo - for idx, e := range m.GetServerUrlRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetServerUrlRules() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("server_url_rules[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) +func (m *BotDefenseAdvancedPolicyType) DeepCopyProto() proto.Message { + if m == nil { + return nil } - return drInfos, nil + return m.DeepCopy() +} +func (m *BotDefenseAdvancedPolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BotDefenseAdvancedPolicyTypeValidator().Validate(ctx, m, opts...) } -type ValidateAPIRateLimit struct { +type ValidateBotDefenseAdvancedPolicyType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateAPIRateLimit) IpAllowedListChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateBotDefenseAdvancedPolicyType) MobileSdkChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ip_allowed_list_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for mobile_sdk_choice") } return validatorFn, nil } -func (v *ValidateAPIRateLimit) ServerUrlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateBotDefenseAdvancedPolicyType) ProtectedAppEndpointsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for server_url_rules") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_app_endpoints") } - itemsValidatorFn := func(ctx context.Context, elems []*ServerUrlRule, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ProtectedAppEndpointType, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ServerUrlRuleValidator().Validate(ctx, el, opts...); err != nil { + if err := ProtectedAppEndpointTypeValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -1442,13 +1422,13 @@ func (v *ValidateAPIRateLimit) ServerUrlRulesValidationRuleHandler(rules map[str } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for server_url_rules") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_app_endpoints") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ServerUrlRule) + elems, ok := val.([]*ProtectedAppEndpointType) if !ok { - return fmt.Errorf("Repeated validation expected []*ServerUrlRule, got %T", val) + return fmt.Errorf("Repeated validation expected []*ProtectedAppEndpointType, got %T", val) } l := []string{} for _, elem := range elems { @@ -1459,10 +1439,10 @@ func (v *ValidateAPIRateLimit) ServerUrlRulesValidationRuleHandler(rules map[str l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated server_url_rules") + return errors.Wrap(err, "repeated protected_app_endpoints") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items server_url_rules") + return errors.Wrap(err, "items protected_app_endpoints") } return nil } @@ -1470,126 +1450,67 @@ func (v *ValidateAPIRateLimit) ServerUrlRulesValidationRuleHandler(rules map[str return validatorFn, nil } -func (v *ValidateAPIRateLimit) ApiEndpointRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateBotDefenseAdvancedPolicyType) JsDownloadPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_endpoint_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ApiEndpointRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ApiEndpointRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + validatorFn, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_endpoint_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ApiEndpointRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ApiEndpointRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated api_endpoint_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items api_endpoint_rules") - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for js_download_path") } return validatorFn, nil } -func (v *ValidateAPIRateLimit) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APIRateLimit) +func (v *ValidateBotDefenseAdvancedPolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*BotDefenseAdvancedPolicyType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *APIRateLimit got type %s", t) + return fmt.Errorf("Expected type *BotDefenseAdvancedPolicyType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["api_endpoint_rules"]; exists { - vOpts := append(opts, db.WithValidateField("api_endpoint_rules")) - if err := fv(ctx, m.GetApiEndpointRules(), vOpts...); err != nil { + if fv, exists := v.FldValidators["js_download_path"]; exists { + + vOpts := append(opts, db.WithValidateField("js_download_path")) + if err := fv(ctx, m.GetJsDownloadPath(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["ip_allowed_list_choice"]; exists { - val := m.GetIpAllowedListChoice() + if fv, exists := v.FldValidators["mobile_sdk_choice"]; exists { + val := m.GetMobileSdkChoice() vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), + db.WithValidateField("mobile_sdk_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetIpAllowedListChoice().(type) { - case *APIRateLimit_NoIpAllowedList: - if fv, exists := v.FldValidators["ip_allowed_list_choice.no_ip_allowed_list"]; exists { - val := m.GetIpAllowedListChoice().(*APIRateLimit_NoIpAllowedList).NoIpAllowedList - vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("no_ip_allowed_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *APIRateLimit_IpAllowedList: - if fv, exists := v.FldValidators["ip_allowed_list_choice.ip_allowed_list"]; exists { - val := m.GetIpAllowedListChoice().(*APIRateLimit_IpAllowedList).IpAllowedList - vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("ip_allowed_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *APIRateLimit_CustomIpAllowedList: - if fv, exists := v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"]; exists { - val := m.GetIpAllowedListChoice().(*APIRateLimit_CustomIpAllowedList).CustomIpAllowedList + switch m.GetMobileSdkChoice().(type) { + case *BotDefenseAdvancedPolicyType_DisableMobileSdk: + if fv, exists := v.FldValidators["mobile_sdk_choice.disable_mobile_sdk"]; exists { + val := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_DisableMobileSdk).DisableMobileSdk vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("custom_ip_allowed_list"), + db.WithValidateField("mobile_sdk_choice"), + db.WithValidateField("disable_mobile_sdk"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *APIRateLimit_BypassRateLimitingRules: - if fv, exists := v.FldValidators["ip_allowed_list_choice.bypass_rate_limiting_rules"]; exists { - val := m.GetIpAllowedListChoice().(*APIRateLimit_BypassRateLimitingRules).BypassRateLimitingRules + case *BotDefenseAdvancedPolicyType_MobileSdkConfig: + if fv, exists := v.FldValidators["mobile_sdk_choice.mobile_sdk_config"]; exists { + val := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_MobileSdkConfig).MobileSdkConfig vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("bypass_rate_limiting_rules"), + db.WithValidateField("mobile_sdk_choice"), + db.WithValidateField("mobile_sdk_config"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -1598,9 +1519,9 @@ func (v *ValidateAPIRateLimit) Validate(ctx context.Context, pm interface{}, opt } - if fv, exists := v.FldValidators["server_url_rules"]; exists { - vOpts := append(opts, db.WithValidateField("server_url_rules")) - if err := fv(ctx, m.GetServerUrlRules(), vOpts...); err != nil { + if fv, exists := v.FldValidators["protected_app_endpoints"]; exists { + vOpts := append(opts, db.WithValidateField("protected_app_endpoints")) + if err := fv(ctx, m.GetProtectedAppEndpoints(), vOpts...); err != nil { return err } @@ -1610,8 +1531,8 @@ func (v *ValidateAPIRateLimit) Validate(ctx context.Context, pm interface{}, opt } // Well-known symbol for default validator implementation -var DefaultAPIRateLimitValidator = func() *ValidateAPIRateLimit { - v := &ValidateAPIRateLimit{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultBotDefenseAdvancedPolicyTypeValidator = func() *ValidateBotDefenseAdvancedPolicyType { + v := &ValidateBotDefenseAdvancedPolicyType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -1621,61 +1542,63 @@ var DefaultAPIRateLimitValidator = func() *ValidateAPIRateLimit { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhIpAllowedListChoice := v.IpAllowedListChoiceValidationRuleHandler - rulesIpAllowedListChoice := map[string]string{ + vrhMobileSdkChoice := v.MobileSdkChoiceValidationRuleHandler + rulesMobileSdkChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhIpAllowedListChoice(rulesIpAllowedListChoice) + vFn, err = vrhMobileSdkChoice(rulesMobileSdkChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIRateLimit.ip_allowed_list_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedPolicyType.mobile_sdk_choice: %s", err) panic(errMsg) } - v.FldValidators["ip_allowed_list_choice"] = vFn + v.FldValidators["mobile_sdk_choice"] = vFn - vrhServerUrlRules := v.ServerUrlRulesValidationRuleHandler - rulesServerUrlRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "20", + vrhProtectedAppEndpoints := v.ProtectedAppEndpointsValidationRuleHandler + rulesProtectedAppEndpoints := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhServerUrlRules(rulesServerUrlRules) + vFn, err = vrhProtectedAppEndpoints(rulesProtectedAppEndpoints) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIRateLimit.server_url_rules: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedPolicyType.protected_app_endpoints: %s", err) panic(errMsg) } - v.FldValidators["server_url_rules"] = vFn + v.FldValidators["protected_app_endpoints"] = vFn - vrhApiEndpointRules := v.ApiEndpointRulesValidationRuleHandler - rulesApiEndpointRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "20", + vrhJsDownloadPath := v.JsDownloadPathValidationRuleHandler + rulesJsDownloadPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.http_path": "true", } - vFn, err = vrhApiEndpointRules(rulesApiEndpointRules) + vFn, err = vrhJsDownloadPath(rulesJsDownloadPath) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APIRateLimit.api_endpoint_rules: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedPolicyType.js_download_path: %s", err) panic(errMsg) } - v.FldValidators["api_endpoint_rules"] = vFn + v.FldValidators["js_download_path"] = vFn - v.FldValidators["ip_allowed_list_choice.ip_allowed_list"] = ves_io_schema_views.PrefixStringListTypeValidator().Validate - v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"] = CustomIpAllowedListValidator().Validate - v.FldValidators["ip_allowed_list_choice.bypass_rate_limiting_rules"] = BypassRateLimitingRulesValidator().Validate + v.FldValidators["mobile_sdk_choice.mobile_sdk_config"] = BotAdvancedMobileSDKConfigTypeValidator().Validate return v }() -func APIRateLimitValidator() db.Validator { - return DefaultAPIRateLimitValidator +func BotDefenseAdvancedPolicyTypeValidator() db.Validator { + return DefaultBotDefenseAdvancedPolicyTypeValidator } // augmented methods on protoc/std generated struct -func (m *APISpecificationSettings) ToJSON() (string, error) { +func (m *BotDefenseAdvancedType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *APISpecificationSettings) ToYAML() (string, error) { +func (m *BotDefenseAdvancedType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *APISpecificationSettings) DeepCopy() *APISpecificationSettings { +func (m *BotDefenseAdvancedType) DeepCopy() *BotDefenseAdvancedType { if m == nil { return nil } @@ -1683,7 +1606,7 @@ func (m *APISpecificationSettings) DeepCopy() *APISpecificationSettings { if err != nil { return nil } - c := &APISpecificationSettings{} + c := &BotDefenseAdvancedType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1691,60 +1614,73 @@ func (m *APISpecificationSettings) DeepCopy() *APISpecificationSettings { return c } -func (m *APISpecificationSettings) DeepCopyProto() proto.Message { +func (m *BotDefenseAdvancedType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *APISpecificationSettings) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return APISpecificationSettingsValidator().Validate(ctx, m, opts...) +func (m *BotDefenseAdvancedType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return BotDefenseAdvancedTypeValidator().Validate(ctx, m, opts...) } -func (m *APISpecificationSettings) GetDRefInfo() ([]db.DRefInfo, error) { +func (m *BotDefenseAdvancedType) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { return nil, nil } - return m.GetApiDefinitionDRefInfo() + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMobileDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMobileDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetWebDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWebDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil } -func (m *APISpecificationSettings) GetApiDefinitionDRefInfo() ([]db.DRefInfo, error) { +func (m *BotDefenseAdvancedType) GetMobileDRefInfo() ([]db.DRefInfo, error) { - vref := m.GetApiDefinition() + vref := m.GetMobile() if vref == nil { return nil, nil } vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("api_definition.Object") + vdRef.SetKind("bot_defense_app_infrastructure.Object") dri := db.DRefInfo{ - RefdType: "api_definition.Object", + RefdType: "bot_defense_app_infrastructure.Object", RefdTenant: vref.Tenant, RefdNS: vref.Namespace, RefdName: vref.Name, - DRField: "api_definition", + DRField: "mobile", Ref: vdRef, } return []db.DRefInfo{dri}, nil } -// GetApiDefinitionDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *APISpecificationSettings) GetApiDefinitionDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { +// GetMobileDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *BotDefenseAdvancedType) GetMobileDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "api_definition.Object") + refdType, err := d.TypeForEntryKind("", "", "bot_defense_app_infrastructure.Object") if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: api_definition") + return nil, errors.Wrap(err, "Cannot find type for kind: bot_defense_app_infrastructure") } - vref := m.GetApiDefinition() + vref := m.GetMobile() if vref == nil { return nil, nil } ref := &ves_io_schema.ObjectRefType{ - Kind: "api_definition.Object", + Kind: "bot_defense_app_infrastructure.Object", Tenant: vref.Tenant, Namespace: vref.Namespace, Name: vref.Name, @@ -1760,30 +1696,71 @@ func (m *APISpecificationSettings) GetApiDefinitionDBEntries(ctx context.Context return entries, nil } -type ValidateAPISpecificationSettings struct { - FldValidators map[string]db.ValidatorFunc -} +func (m *BotDefenseAdvancedType) GetWebDRefInfo() ([]db.DRefInfo, error) { -func (v *ValidateAPISpecificationSettings) ValidationTargetChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vref := m.GetWeb() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("bot_defense_app_infrastructure.Object") + dri := db.DRefInfo{ + RefdType: "bot_defense_app_infrastructure.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "web", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetWebDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *BotDefenseAdvancedType) GetWebDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "bot_defense_app_infrastructure.Object") if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for validation_target_choice") + return nil, errors.Wrap(err, "Cannot find type for kind: bot_defense_app_infrastructure") } - return validatorFn, nil + + vref := m.GetWeb() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "bot_defense_app_infrastructure.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateBotDefenseAdvancedType struct { + FldValidators map[string]db.ValidatorFunc } -func (v *ValidateAPISpecificationSettings) ApiDefinitionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateBotDefenseAdvancedType) PolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for api_definition") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for policy") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { if err := reqdValidatorFn(ctx, val, opts...); err != nil { return err } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { + if err := BotDefenseAdvancedPolicyTypeValidator().Validate(ctx, val, opts...); err != nil { return err } @@ -1793,72 +1770,43 @@ func (v *ValidateAPISpecificationSettings) ApiDefinitionValidationRuleHandler(ru return validatorFn, nil } -func (v *ValidateAPISpecificationSettings) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*APISpecificationSettings) +func (v *ValidateBotDefenseAdvancedType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*BotDefenseAdvancedType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *APISpecificationSettings got type %s", t) + return fmt.Errorf("Expected type *BotDefenseAdvancedType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["api_definition"]; exists { + if fv, exists := v.FldValidators["mobile"]; exists { - vOpts := append(opts, db.WithValidateField("api_definition")) - if err := fv(ctx, m.GetApiDefinition(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("mobile")) + if err := fv(ctx, m.GetMobile(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["validation_target_choice"]; exists { - val := m.GetValidationTargetChoice() - vOpts := append(opts, - db.WithValidateField("validation_target_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["policy"]; exists { + + vOpts := append(opts, db.WithValidateField("policy")) + if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { return err } + } - switch m.GetValidationTargetChoice().(type) { - case *APISpecificationSettings_ValidationDisabled: - if fv, exists := v.FldValidators["validation_target_choice.validation_disabled"]; exists { - val := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationDisabled).ValidationDisabled - vOpts := append(opts, - db.WithValidateField("validation_target_choice"), - db.WithValidateField("validation_disabled"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *APISpecificationSettings_ValidationAllSpecEndpoints: - if fv, exists := v.FldValidators["validation_target_choice.validation_all_spec_endpoints"]; exists { - val := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationAllSpecEndpoints).ValidationAllSpecEndpoints - vOpts := append(opts, - db.WithValidateField("validation_target_choice"), - db.WithValidateField("validation_all_spec_endpoints"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *APISpecificationSettings_ValidationCustomList: - if fv, exists := v.FldValidators["validation_target_choice.validation_custom_list"]; exists { - val := m.GetValidationTargetChoice().(*APISpecificationSettings_ValidationCustomList).ValidationCustomList - vOpts := append(opts, - db.WithValidateField("validation_target_choice"), - db.WithValidateField("validation_custom_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["web"]; exists { + + vOpts := append(opts, db.WithValidateField("web")) + if err := fv(ctx, m.GetWeb(), vOpts...); err != nil { + return err } } @@ -1867,8 +1815,8 @@ func (v *ValidateAPISpecificationSettings) Validate(ctx context.Context, pm inte } // Well-known symbol for default validator implementation -var DefaultAPISpecificationSettingsValidator = func() *ValidateAPISpecificationSettings { - v := &ValidateAPISpecificationSettings{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultBotDefenseAdvancedTypeValidator = func() *ValidateBotDefenseAdvancedType { + v := &ValidateBotDefenseAdvancedType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -1878,71 +1826,39 @@ var DefaultAPISpecificationSettingsValidator = func() *ValidateAPISpecificationS vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhValidationTargetChoice := v.ValidationTargetChoiceValidationRuleHandler - rulesValidationTargetChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhValidationTargetChoice(rulesValidationTargetChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APISpecificationSettings.validation_target_choice: %s", err) - panic(errMsg) - } - v.FldValidators["validation_target_choice"] = vFn - - vrhApiDefinition := v.ApiDefinitionValidationRuleHandler - rulesApiDefinition := map[string]string{ + vrhPolicy := v.PolicyValidationRuleHandler + rulesPolicy := map[string]string{ "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhApiDefinition(rulesApiDefinition) + vFn, err = vrhPolicy(rulesPolicy) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for APISpecificationSettings.api_definition: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedType.policy: %s", err) panic(errMsg) } - v.FldValidators["api_definition"] = vFn + v.FldValidators["policy"] = vFn + + v.FldValidators["web"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - v.FldValidators["validation_target_choice.validation_all_spec_endpoints"] = OpenApiValidationAllSpecEndpointsSettingsValidator().Validate - v.FldValidators["validation_target_choice.validation_custom_list"] = ValidateApiBySpecRuleValidator().Validate + v.FldValidators["mobile"] = ves_io_schema_views.ObjectRefTypeValidator().Validate return v }() -func APISpecificationSettingsValidator() db.Validator { - return DefaultAPISpecificationSettingsValidator +func BotDefenseAdvancedTypeValidator() db.Validator { + return DefaultBotDefenseAdvancedTypeValidator } // augmented methods on protoc/std generated struct -func (m *AdvancedOptionsType) ToJSON() (string, error) { +func (m *CSDJavaScriptInsertAllWithExceptionsType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *AdvancedOptionsType) ToYAML() (string, error) { +func (m *CSDJavaScriptInsertAllWithExceptionsType) ToYAML() (string, error) { return codec.ToYAML(m) } -// Redact squashes sensitive info in m (in-place) -func (m *AdvancedOptionsType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - for idx, e := range m.GetRequestHeadersToAdd() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting AdvancedOptionsType.request_headers_to_add idx %v", idx) - } - } - - for idx, e := range m.GetResponseHeadersToAdd() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting AdvancedOptionsType.response_headers_to_add idx %v", idx) - } - } - - return nil -} - -func (m *AdvancedOptionsType) DeepCopy() *AdvancedOptionsType { +func (m *CSDJavaScriptInsertAllWithExceptionsType) DeepCopy() *CSDJavaScriptInsertAllWithExceptionsType { if m == nil { return nil } @@ -1950,7 +1866,7 @@ func (m *AdvancedOptionsType) DeepCopy() *AdvancedOptionsType { if err != nil { return nil } - c := &AdvancedOptionsType{} + c := &CSDJavaScriptInsertAllWithExceptionsType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -1958,98 +1874,34 @@ func (m *AdvancedOptionsType) DeepCopy() *AdvancedOptionsType { return c } -func (m *AdvancedOptionsType) DeepCopyProto() proto.Message { +func (m *CSDJavaScriptInsertAllWithExceptionsType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *AdvancedOptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AdvancedOptionsTypeValidator().Validate(ctx, m, opts...) -} - -func (m *AdvancedOptionsType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetJwtDRefInfo() - -} - -func (m *AdvancedOptionsType) GetJwtDRefInfo() ([]db.DRefInfo, error) { - vrefs := m.GetJwt() - if len(vrefs) == 0 { - return nil, nil - } - drInfos := make([]db.DRefInfo, 0, len(vrefs)) - for i, vref := range vrefs { - if vref == nil { - return nil, fmt.Errorf("AdvancedOptionsType.jwt[%d] has a nil value", i) - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("jwt.Object") - // resolve kind to type if needed at DBObject.GetDRefInfo() - drInfos = append(drInfos, db.DRefInfo{ - RefdType: "jwt.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "jwt", - Ref: vdRef, - }) - } - return drInfos, nil - -} - -// GetJwtDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *AdvancedOptionsType) GetJwtDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "jwt.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: jwt") - } - for i, vref := range m.GetJwt() { - if vref == nil { - return nil, fmt.Errorf("AdvancedOptionsType.jwt[%d] has a nil value", i) - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "jwt.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - } - - return entries, nil +func (m *CSDJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CSDJavaScriptInsertAllWithExceptionsTypeValidator().Validate(ctx, m, opts...) } -type ValidateAdvancedOptionsType struct { +type ValidateCSDJavaScriptInsertAllWithExceptionsType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateAdvancedOptionsType) RequestHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCSDJavaScriptInsertAllWithExceptionsType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for request_headers_to_add") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -2057,13 +1909,13 @@ func (v *ValidateAdvancedOptionsType) RequestHeadersToAddValidationRuleHandler(r } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_add") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + elems, ok := val.([]*ShapeJavaScriptExclusionRule) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) + return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) } l := []string{} for _, elem := range elems { @@ -2074,10 +1926,10 @@ func (v *ValidateAdvancedOptionsType) RequestHeadersToAddValidationRuleHandler(r l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_headers_to_add") + return errors.Wrap(err, "repeated exclude_list") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_headers_to_add") + return errors.Wrap(err, "items exclude_list") } return nil } @@ -2085,206 +1937,116 @@ func (v *ValidateAdvancedOptionsType) RequestHeadersToAddValidationRuleHandler(r return validatorFn, nil } -func (v *ValidateAdvancedOptionsType) RequestHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for request_headers_to_remove") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } +func (v *ValidateCSDJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CSDJavaScriptInsertAllWithExceptionsType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CSDJavaScriptInsertAllWithExceptionsType got type %s", t) } - return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_remove") + if m == nil { + return nil } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_headers_to_remove") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_headers_to_remove") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateAdvancedOptionsType) ResponseHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for response_headers_to_add") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } + if fv, exists := v.FldValidators["exclude_list"]; exists { + vOpts := append(opts, db.WithValidateField("exclude_list")) + if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { + return err } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_add") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_headers_to_add") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_headers_to_add") - } - return nil } - return validatorFn, nil + return nil } -func (v *ValidateAdvancedOptionsType) ResponseHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// Well-known symbol for default validator implementation +var DefaultCSDJavaScriptInsertAllWithExceptionsTypeValidator = func() *ValidateCSDJavaScriptInsertAllWithExceptionsType { + v := &ValidateCSDJavaScriptInsertAllWithExceptionsType{FldValidators: map[string]db.ValidatorFunc{}} - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for response_headers_to_remove") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhExcludeList := v.ExcludeListValidationRuleHandler + rulesExcludeList := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhExcludeList(rulesExcludeList) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_remove") + errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertAllWithExceptionsType.exclude_list: %s", err) + panic(errMsg) } + v.FldValidators["exclude_list"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_headers_to_remove") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_headers_to_remove") - } - return nil - } + return v +}() - return validatorFn, nil +func CSDJavaScriptInsertAllWithExceptionsTypeValidator() db.Validator { + return DefaultCSDJavaScriptInsertAllWithExceptionsTypeValidator } -func (v *ValidateAdvancedOptionsType) MaxRequestHeaderSizeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for max_request_header_size") - } +// augmented methods on protoc/std generated struct - return validatorFn, nil +func (m *CSDJavaScriptInsertType) ToJSON() (string, error) { + return codec.ToJSON(m) } -func (v *ValidateAdvancedOptionsType) CustomErrorsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (m *CSDJavaScriptInsertType) ToYAML() (string, error) { + return codec.ToYAML(m) +} - itemKeyRules := db.GetMapUint32KeyRules(rules) - itemKeyFn, err := db.NewUint32ValidationRuleHandler(itemKeyRules) - if err != nil { - return nil, errors.Wrap(err, "Item key ValidationRuleHandler for custom_errors") +func (m *CSDJavaScriptInsertType) DeepCopy() *CSDJavaScriptInsertType { + if m == nil { + return nil } - itemValRules := db.GetMapStringValueRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemValRules) + ser, err := m.Marshal() if err != nil { - return nil, errors.Wrap(err, "Item value ValidationRuleHandler for custom_errors") - } - itemsValidatorFn := func(ctx context.Context, kv map[uint32]string, opts ...db.ValidateOpt) error { - for key, value := range kv { - if err := itemKeyFn(ctx, key, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) - } - if err := itemValFn(ctx, value, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) - } - } return nil } - mapValFn, err := db.NewMapValidationRuleHandler(rules) + c := &CSDJavaScriptInsertType{} + err = c.Unmarshal(ser) if err != nil { - return nil, errors.Wrap(err, "Map ValidationRuleHandler for custom_errors") + return nil } + return c +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.(map[uint32]string) - if !ok { - return fmt.Errorf("Map validation expected map[ uint32 ]string, got %T", val) - } - if err := mapValFn(ctx, len(elems), opts...); err != nil { - return errors.Wrap(err, "map custom_errors") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items custom_errors") - } +func (m *CSDJavaScriptInsertType) DeepCopyProto() proto.Message { + if m == nil { return nil } + return m.DeepCopy() +} - return validatorFn, nil +func (m *CSDJavaScriptInsertType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CSDJavaScriptInsertTypeValidator().Validate(ctx, m, opts...) } -func (v *ValidateAdvancedOptionsType) JwtValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +type ValidateCSDJavaScriptInsertType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCSDJavaScriptInsertType) RulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for jwt") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for rules") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*CSDJavaScriptInsertionRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := CSDJavaScriptInsertionRuleValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -2292,13 +2054,13 @@ func (v *ValidateAdvancedOptionsType) JwtValidationRuleHandler(rules map[string] } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for jwt") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.ObjectRefType) + elems, ok := val.([]*CSDJavaScriptInsertionRule) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) + return fmt.Errorf("Repeated validation expected []*CSDJavaScriptInsertionRule, got %T", val) } l := []string{} for _, elem := range elems { @@ -2309,10 +2071,10 @@ func (v *ValidateAdvancedOptionsType) JwtValidationRuleHandler(rules map[string] l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated jwt") + return errors.Wrap(err, "repeated rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items jwt") + return errors.Wrap(err, "items rules") } return nil } @@ -2320,29 +2082,19 @@ func (v *ValidateAdvancedOptionsType) JwtValidationRuleHandler(rules map[string] return validatorFn, nil } -func (v *ValidateAdvancedOptionsType) IdleTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for idle_timeout") - } - - return validatorFn, nil -} - -func (v *ValidateAdvancedOptionsType) CookiesToModifyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCSDJavaScriptInsertType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for cookies_to_modify") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -2350,13 +2102,13 @@ func (v *ValidateAdvancedOptionsType) CookiesToModifyValidationRuleHandler(rules } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for cookies_to_modify") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) + elems, ok := val.([]*ShapeJavaScriptExclusionRule) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) + return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) } l := []string{} for _, elem := range elems { @@ -2367,10 +2119,10 @@ func (v *ValidateAdvancedOptionsType) CookiesToModifyValidationRuleHandler(rules l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated cookies_to_modify") + return errors.Wrap(err, "repeated exclude_list") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items cookies_to_modify") + return errors.Wrap(err, "items exclude_list") } return nil } @@ -2378,116 +2130,217 @@ func (v *ValidateAdvancedOptionsType) CookiesToModifyValidationRuleHandler(rules return validatorFn, nil } -func (v *ValidateAdvancedOptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*AdvancedOptionsType) +func (v *ValidateCSDJavaScriptInsertType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CSDJavaScriptInsertType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *AdvancedOptionsType got type %s", t) + return fmt.Errorf("Expected type *CSDJavaScriptInsertType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["buffer_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("buffer_policy")) - if err := fv(ctx, m.GetBufferPolicy(), vOpts...); err != nil { + if fv, exists := v.FldValidators["exclude_list"]; exists { + vOpts := append(opts, db.WithValidateField("exclude_list")) + if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["compression_params"]; exists { - - vOpts := append(opts, db.WithValidateField("compression_params")) - if err := fv(ctx, m.GetCompressionParams(), vOpts...); err != nil { + if fv, exists := v.FldValidators["rules"]; exists { + vOpts := append(opts, db.WithValidateField("rules")) + if err := fv(ctx, m.GetRules(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["cookies_to_modify"]; exists { - vOpts := append(opts, db.WithValidateField("cookies_to_modify")) - if err := fv(ctx, m.GetCookiesToModify(), vOpts...); err != nil { - return err - } + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCSDJavaScriptInsertTypeValidator = func() *ValidateCSDJavaScriptInsertType { + v := &ValidateCSDJavaScriptInsertType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + vrhRules := v.RulesValidationRuleHandler + rulesRules := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRules(rulesRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertType.rules: %s", err) + panic(errMsg) } + v.FldValidators["rules"] = vFn - if fv, exists := v.FldValidators["custom_errors"]; exists { - vOpts := append(opts, db.WithValidateField("custom_errors")) - if err := fv(ctx, m.GetCustomErrors(), vOpts...); err != nil { - return err - } + vrhExcludeList := v.ExcludeListValidationRuleHandler + rulesExcludeList := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhExcludeList(rulesExcludeList) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertType.exclude_list: %s", err) + panic(errMsg) + } + v.FldValidators["exclude_list"] = vFn + + return v +}() + +func CSDJavaScriptInsertTypeValidator() db.Validator { + return DefaultCSDJavaScriptInsertTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CSDJavaScriptInsertionRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CSDJavaScriptInsertionRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CSDJavaScriptInsertionRule) DeepCopy() *CSDJavaScriptInsertionRule { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CSDJavaScriptInsertionRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} +func (m *CSDJavaScriptInsertionRule) DeepCopyProto() proto.Message { + if m == nil { + return nil } + return m.DeepCopy() +} - if fv, exists := v.FldValidators["disable_default_error_pages"]; exists { +func (m *CSDJavaScriptInsertionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CSDJavaScriptInsertionRuleValidator().Validate(ctx, m, opts...) +} - vOpts := append(opts, db.WithValidateField("disable_default_error_pages")) - if err := fv(ctx, m.GetDisableDefaultErrorPages(), vOpts...); err != nil { - return err - } +type ValidateCSDJavaScriptInsertionRule struct { + FldValidators map[string]db.ValidatorFunc +} +func (v *ValidateCSDJavaScriptInsertionRule) DomainMatcherChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_matcher_choice") } + return validatorFn, nil +} - if fv, exists := v.FldValidators["idle_timeout"]; exists { +func (v *ValidateCSDJavaScriptInsertionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vOpts := append(opts, db.WithValidateField("idle_timeout")) - if err := fv(ctx, m.GetIdleTimeout(), vOpts...); err != nil { + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { return err } + return nil } - if fv, exists := v.FldValidators["javascript_info"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("javascript_info")) - if err := fv(ctx, m.GetJavascriptInfo(), vOpts...); err != nil { - return err - } +func (v *ValidateCSDJavaScriptInsertionRule) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } - if fv, exists := v.FldValidators["jwt"]; exists { - vOpts := append(opts, db.WithValidateField("jwt")) - if err := fv(ctx, m.GetJwt(), vOpts...); err != nil { + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { return err } + return nil } - if fv, exists := v.FldValidators["max_request_header_size"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("max_request_header_size")) - if err := fv(ctx, m.GetMaxRequestHeaderSize(), vOpts...); err != nil { - return err +func (v *ValidateCSDJavaScriptInsertionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CSDJavaScriptInsertionRule) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CSDJavaScriptInsertionRule got type %s", t) } + } + if m == nil { + return nil + } + if fv, exists := v.FldValidators["domain_matcher_choice"]; exists { + val := m.GetDomainMatcherChoice() + vOpts := append(opts, + db.WithValidateField("domain_matcher_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - switch m.GetPathNormalizeChoice().(type) { - case *AdvancedOptionsType_EnablePathNormalize: - if fv, exists := v.FldValidators["path_normalize_choice.enable_path_normalize"]; exists { - val := m.GetPathNormalizeChoice().(*AdvancedOptionsType_EnablePathNormalize).EnablePathNormalize + switch m.GetDomainMatcherChoice().(type) { + case *CSDJavaScriptInsertionRule_AnyDomain: + if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { + val := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_AnyDomain).AnyDomain vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - db.WithValidateField("enable_path_normalize"), + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("any_domain"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *AdvancedOptionsType_DisablePathNormalize: - if fv, exists := v.FldValidators["path_normalize_choice.disable_path_normalize"]; exists { - val := m.GetPathNormalizeChoice().(*AdvancedOptionsType_DisablePathNormalize).DisablePathNormalize + case *CSDJavaScriptInsertionRule_Domain: + if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { + val := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_Domain).Domain vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - db.WithValidateField("disable_path_normalize"), + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("domain"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -2496,70 +2349,30 @@ func (v *ValidateAdvancedOptionsType) Validate(ctx context.Context, pm interface } - if fv, exists := v.FldValidators["request_headers_to_add"]; exists { - vOpts := append(opts, db.WithValidateField("request_headers_to_add")) - if err := fv(ctx, m.GetRequestHeadersToAdd(), vOpts...); err != nil { - return err - } - - } + if fv, exists := v.FldValidators["metadata"]; exists { - if fv, exists := v.FldValidators["request_headers_to_remove"]; exists { - vOpts := append(opts, db.WithValidateField("request_headers_to_remove")) - if err := fv(ctx, m.GetRequestHeadersToRemove(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["response_headers_to_add"]; exists { - vOpts := append(opts, db.WithValidateField("response_headers_to_add")) - if err := fv(ctx, m.GetResponseHeadersToAdd(), vOpts...); err != nil { - return err - } - - } + if fv, exists := v.FldValidators["path"]; exists { - if fv, exists := v.FldValidators["response_headers_to_remove"]; exists { - vOpts := append(opts, db.WithValidateField("response_headers_to_remove")) - if err := fv(ctx, m.GetResponseHeadersToRemove(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { return err } } - switch m.GetStrictSniHostHeaderCheckChoice().(type) { - case *AdvancedOptionsType_EnableStrictSniHostHeaderCheck: - if fv, exists := v.FldValidators["strict_sni_host_header_check_choice.enable_strict_sni_host_header_check"]; exists { - val := m.GetStrictSniHostHeaderCheckChoice().(*AdvancedOptionsType_EnableStrictSniHostHeaderCheck).EnableStrictSniHostHeaderCheck - vOpts := append(opts, - db.WithValidateField("strict_sni_host_header_check_choice"), - db.WithValidateField("enable_strict_sni_host_header_check"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *AdvancedOptionsType_AdditionalDomains: - if fv, exists := v.FldValidators["strict_sni_host_header_check_choice.additional_domains"]; exists { - val := m.GetStrictSniHostHeaderCheckChoice().(*AdvancedOptionsType_AdditionalDomains).AdditionalDomains - vOpts := append(opts, - db.WithValidateField("strict_sni_host_header_check_choice"), - db.WithValidateField("additional_domains"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - return nil } // Well-known symbol for default validator implementation -var DefaultAdvancedOptionsTypeValidator = func() *ValidateAdvancedOptionsType { - v := &ValidateAdvancedOptionsType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultCSDJavaScriptInsertionRuleValidator = func() *ValidateCSDJavaScriptInsertionRule { + v := &ValidateCSDJavaScriptInsertionRule{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -2569,144 +2382,216 @@ var DefaultAdvancedOptionsTypeValidator = func() *ValidateAdvancedOptionsType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhRequestHeadersToAdd := v.RequestHeadersToAddValidationRuleHandler - rulesRequestHeadersToAdd := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", + vrhDomainMatcherChoice := v.DomainMatcherChoiceValidationRuleHandler + rulesDomainMatcherChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhRequestHeadersToAdd(rulesRequestHeadersToAdd) + vFn, err = vrhDomainMatcherChoice(rulesDomainMatcherChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.request_headers_to_add: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertionRule.domain_matcher_choice: %s", err) panic(errMsg) } - v.FldValidators["request_headers_to_add"] = vFn + v.FldValidators["domain_matcher_choice"] = vFn - vrhRequestHeadersToRemove := v.RequestHeadersToRemoveValidationRuleHandler - rulesRequestHeadersToRemove := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhRequestHeadersToRemove(rulesRequestHeadersToRemove) + vFn, err = vrhMetadata(rulesMetadata) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.request_headers_to_remove: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertionRule.metadata: %s", err) panic(errMsg) } - v.FldValidators["request_headers_to_remove"] = vFn + v.FldValidators["metadata"] = vFn - vrhResponseHeadersToAdd := v.ResponseHeadersToAddValidationRuleHandler - rulesResponseHeadersToAdd := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhResponseHeadersToAdd(rulesResponseHeadersToAdd) + vFn, err = vrhPath(rulesPath) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.response_headers_to_add: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertionRule.path: %s", err) panic(errMsg) } - v.FldValidators["response_headers_to_add"] = vFn + v.FldValidators["path"] = vFn - vrhResponseHeadersToRemove := v.ResponseHeadersToRemoveValidationRuleHandler - rulesResponseHeadersToRemove := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", + v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate + + return v +}() + +func CSDJavaScriptInsertionRuleValidator() db.Validator { + return DefaultCSDJavaScriptInsertionRuleValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ClientSideDefensePolicyType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ClientSideDefensePolicyType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ClientSideDefensePolicyType) DeepCopy() *ClientSideDefensePolicyType { + if m == nil { + return nil } - vFn, err = vrhResponseHeadersToRemove(rulesResponseHeadersToRemove) + ser, err := m.Marshal() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.response_headers_to_remove: %s", err) - panic(errMsg) - } - v.FldValidators["response_headers_to_remove"] = vFn - - vrhMaxRequestHeaderSize := v.MaxRequestHeaderSizeValidationRuleHandler - rulesMaxRequestHeaderSize := map[string]string{ - "ves.io.schema.rules.uint32.lte": "96", + return nil } - vFn, err = vrhMaxRequestHeaderSize(rulesMaxRequestHeaderSize) + c := &ClientSideDefensePolicyType{} + err = c.Unmarshal(ser) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.max_request_header_size: %s", err) - panic(errMsg) + return nil } - v.FldValidators["max_request_header_size"] = vFn + return c +} - vrhCustomErrors := v.CustomErrorsValidationRuleHandler - rulesCustomErrors := map[string]string{ - "ves.io.schema.rules.map.keys.uint32.ranges": "3,4,5,300-599", - "ves.io.schema.rules.map.max_pairs": "16", - "ves.io.schema.rules.map.values.string.max_len": "65536", - "ves.io.schema.rules.map.values.string.uri_ref": "true", +func (m *ClientSideDefensePolicyType) DeepCopyProto() proto.Message { + if m == nil { + return nil } - vFn, err = vrhCustomErrors(rulesCustomErrors) + return m.DeepCopy() +} + +func (m *ClientSideDefensePolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ClientSideDefensePolicyTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateClientSideDefensePolicyType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateClientSideDefensePolicyType) JavaScriptChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.custom_errors: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for java_script_choice") } - v.FldValidators["custom_errors"] = vFn + return validatorFn, nil +} - vrhJwt := v.JwtValidationRuleHandler - rulesJwt := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "1", - "ves.io.schema.rules.repeated.unique": "true", +func (v *ValidateClientSideDefensePolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ClientSideDefensePolicyType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ClientSideDefensePolicyType got type %s", t) + } } - vFn, err = vrhJwt(rulesJwt) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.jwt: %s", err) - panic(errMsg) + if m == nil { + return nil } - v.FldValidators["jwt"] = vFn - vrhIdleTimeout := v.IdleTimeoutValidationRuleHandler - rulesIdleTimeout := map[string]string{ - "ves.io.schema.rules.uint32.lte": "3600000", + if fv, exists := v.FldValidators["java_script_choice"]; exists { + val := m.GetJavaScriptChoice() + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - vFn, err = vrhIdleTimeout(rulesIdleTimeout) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.idle_timeout: %s", err) - panic(errMsg) + + switch m.GetJavaScriptChoice().(type) { + case *ClientSideDefensePolicyType_DisableJsInsert: + if fv, exists := v.FldValidators["java_script_choice.disable_js_insert"]; exists { + val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_DisableJsInsert).DisableJsInsert + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + db.WithValidateField("disable_js_insert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ClientSideDefensePolicyType_JsInsertAllPages: + if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages"]; exists { + val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPages).JsInsertAllPages + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + db.WithValidateField("js_insert_all_pages"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ClientSideDefensePolicyType_JsInsertAllPagesExcept: + if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages_except"]; exists { + val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPagesExcept).JsInsertAllPagesExcept + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + db.WithValidateField("js_insert_all_pages_except"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ClientSideDefensePolicyType_JsInsertionRules: + if fv, exists := v.FldValidators["java_script_choice.js_insertion_rules"]; exists { + val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertionRules).JsInsertionRules + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + db.WithValidateField("js_insertion_rules"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - v.FldValidators["idle_timeout"] = vFn - vrhCookiesToModify := v.CookiesToModifyValidationRuleHandler - rulesCookiesToModify := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", + return nil +} + +// Well-known symbol for default validator implementation +var DefaultClientSideDefensePolicyTypeValidator = func() *ValidateClientSideDefensePolicyType { + v := &ValidateClientSideDefensePolicyType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhJavaScriptChoice := v.JavaScriptChoiceValidationRuleHandler + rulesJavaScriptChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhCookiesToModify(rulesCookiesToModify) + vFn, err = vrhJavaScriptChoice(rulesJavaScriptChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AdvancedOptionsType.cookies_to_modify: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ClientSideDefensePolicyType.java_script_choice: %s", err) panic(errMsg) } - v.FldValidators["cookies_to_modify"] = vFn - - v.FldValidators["strict_sni_host_header_check_choice.additional_domains"] = ves_io_schema.DomainNameListValidator().Validate - - v.FldValidators["buffer_policy"] = ves_io_schema.BufferConfigTypeValidator().Validate + v.FldValidators["java_script_choice"] = vFn - v.FldValidators["compression_params"] = ves_io_schema_virtual_host.CompressionTypeValidator().Validate + v.FldValidators["java_script_choice.js_insert_all_pages_except"] = CSDJavaScriptInsertAllWithExceptionsTypeValidator().Validate + v.FldValidators["java_script_choice.js_insertion_rules"] = CSDJavaScriptInsertTypeValidator().Validate return v }() -func AdvancedOptionsTypeValidator() db.Validator { - return DefaultAdvancedOptionsTypeValidator +func ClientSideDefensePolicyTypeValidator() db.Validator { + return DefaultClientSideDefensePolicyTypeValidator } // augmented methods on protoc/std generated struct -func (m *ApiDefinitionList) ToJSON() (string, error) { +func (m *ClientSideDefenseType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ApiDefinitionList) ToYAML() (string, error) { +func (m *ClientSideDefenseType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ApiDefinitionList) DeepCopy() *ApiDefinitionList { +func (m *ClientSideDefenseType) DeepCopy() *ClientSideDefenseType { if m == nil { return nil } @@ -2714,7 +2599,7 @@ func (m *ApiDefinitionList) DeepCopy() *ApiDefinitionList { if err != nil { return nil } - c := &ApiDefinitionList{} + c := &ClientSideDefenseType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -2722,150 +2607,60 @@ func (m *ApiDefinitionList) DeepCopy() *ApiDefinitionList { return c } -func (m *ApiDefinitionList) DeepCopyProto() proto.Message { +func (m *ClientSideDefenseType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ApiDefinitionList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ApiDefinitionListValidator().Validate(ctx, m, opts...) +func (m *ClientSideDefenseType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ClientSideDefenseTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateClientSideDefenseType struct { + FldValidators map[string]db.ValidatorFunc } -func (m *ApiDefinitionList) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil +func (v *ValidateClientSideDefenseType) PolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for policy") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ClientSideDefensePolicyTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } - return m.GetApiDefinitionsDRefInfo() + return nil + } + return validatorFn, nil } -func (m *ApiDefinitionList) GetApiDefinitionsDRefInfo() ([]db.DRefInfo, error) { - vrefs := m.GetApiDefinitions() - if len(vrefs) == 0 { - return nil, nil - } - drInfos := make([]db.DRefInfo, 0, len(vrefs)) - for i, vref := range vrefs { - if vref == nil { - return nil, fmt.Errorf("ApiDefinitionList.api_definitions[%d] has a nil value", i) - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("api_definition.Object") - // resolve kind to type if needed at DBObject.GetDRefInfo() - drInfos = append(drInfos, db.DRefInfo{ - RefdType: "api_definition.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "api_definitions", - Ref: vdRef, - }) - } - return drInfos, nil - -} - -// GetApiDefinitionsDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *ApiDefinitionList) GetApiDefinitionsDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "api_definition.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: api_definition") - } - for i, vref := range m.GetApiDefinitions() { - if vref == nil { - return nil, fmt.Errorf("ApiDefinitionList.api_definitions[%d] has a nil value", i) - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "api_definition.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - } - - return entries, nil -} - -type ValidateApiDefinitionList struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateApiDefinitionList) ApiDefinitionsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for api_definitions") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for api_definitions") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.ObjectRefType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated api_definitions") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items api_definitions") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateApiDefinitionList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ApiDefinitionList) +func (v *ValidateClientSideDefenseType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ClientSideDefenseType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ApiDefinitionList got type %s", t) + return fmt.Errorf("Expected type *ClientSideDefenseType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["api_definitions"]; exists { - vOpts := append(opts, db.WithValidateField("api_definitions")) - if err := fv(ctx, m.GetApiDefinitions(), vOpts...); err != nil { + if fv, exists := v.FldValidators["policy"]; exists { + + vOpts := append(opts, db.WithValidateField("policy")) + if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { return err } @@ -2875,8 +2670,8 @@ func (v *ValidateApiDefinitionList) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultApiDefinitionListValidator = func() *ValidateApiDefinitionList { - v := &ValidateApiDefinitionList{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultClientSideDefenseTypeValidator = func() *ValidateClientSideDefenseType { + v := &ValidateClientSideDefenseType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -2886,190 +2681,67 @@ var DefaultApiDefinitionListValidator = func() *ValidateApiDefinitionList { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhApiDefinitions := v.ApiDefinitionsValidationRuleHandler - rulesApiDefinitions := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vrhPolicy := v.PolicyValidationRuleHandler + rulesPolicy := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhApiDefinitions(rulesApiDefinitions) + vFn, err = vrhPolicy(rulesPolicy) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiDefinitionList.api_definitions: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ClientSideDefenseType.policy: %s", err) panic(errMsg) } - v.FldValidators["api_definitions"] = vFn + v.FldValidators["policy"] = vFn return v }() -func ApiDefinitionListValidator() db.Validator { - return DefaultApiDefinitionListValidator +func ClientSideDefenseTypeValidator() db.Validator { + return DefaultClientSideDefenseTypeValidator } // augmented methods on protoc/std generated struct -func (m *ApiDiscoverySetting) ToJSON() (string, error) { +func (m *CreateSpecType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ApiDiscoverySetting) ToYAML() (string, error) { +func (m *CreateSpecType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ApiDiscoverySetting) DeepCopy() *ApiDiscoverySetting { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ApiDiscoverySetting{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ApiDiscoverySetting) DeepCopyProto() proto.Message { +// Redact squashes sensitive info in m (in-place) +func (m *CreateSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) if m == nil { return nil } - return m.DeepCopy() -} - -func (m *ApiDiscoverySetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ApiDiscoverySettingValidator().Validate(ctx, m, opts...) -} - -type ValidateApiDiscoverySetting struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateApiDiscoverySetting) LearnFromRedirectTrafficValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for learn_from_redirect_traffic") - } - return validatorFn, nil -} -func (v *ValidateApiDiscoverySetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ApiDiscoverySetting) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ApiDiscoverySetting got type %s", t) - } - } - if m == nil { - return nil + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.https") } - if fv, exists := v.FldValidators["discovered_api_settings"]; exists { - - vOpts := append(opts, db.WithValidateField("discovered_api_settings")) - if err := fv(ctx, m.GetDiscoveredApiSettings(), vOpts...); err != nil { - return err + for idx, e := range m.GetRoutes() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.routes idx %v", idx) } - } - if fv, exists := v.FldValidators["learn_from_redirect_traffic"]; exists { - val := m.GetLearnFromRedirectTraffic() - vOpts := append(opts, - db.WithValidateField("learn_from_redirect_traffic"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.more_option") } - switch m.GetLearnFromRedirectTraffic().(type) { - case *ApiDiscoverySetting_DisableLearnFromRedirectTraffic: - if fv, exists := v.FldValidators["learn_from_redirect_traffic.disable_learn_from_redirect_traffic"]; exists { - val := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_DisableLearnFromRedirectTraffic).DisableLearnFromRedirectTraffic - vOpts := append(opts, - db.WithValidateField("learn_from_redirect_traffic"), - db.WithValidateField("disable_learn_from_redirect_traffic"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ApiDiscoverySetting_EnableLearnFromRedirectTraffic: - if fv, exists := v.FldValidators["learn_from_redirect_traffic.enable_learn_from_redirect_traffic"]; exists { - val := m.GetLearnFromRedirectTraffic().(*ApiDiscoverySetting_EnableLearnFromRedirectTraffic).EnableLearnFromRedirectTraffic - vOpts := append(opts, - db.WithValidateField("learn_from_redirect_traffic"), - db.WithValidateField("enable_learn_from_redirect_traffic"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - + if err := m.GetDefaultPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.default_pool") } - if fv, exists := v.FldValidators["sensitive_data_detection_rules"]; exists { - - vOpts := append(opts, db.WithValidateField("sensitive_data_detection_rules")) - if err := fv(ctx, m.GetSensitiveDataDetectionRules(), vOpts...); err != nil { - return err - } - + if err := m.GetJwtValidation().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.jwt_validation") } return nil } -// Well-known symbol for default validator implementation -var DefaultApiDiscoverySettingValidator = func() *ValidateApiDiscoverySetting { - v := &ValidateApiDiscoverySetting{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhLearnFromRedirectTraffic := v.LearnFromRedirectTrafficValidationRuleHandler - rulesLearnFromRedirectTraffic := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhLearnFromRedirectTraffic(rulesLearnFromRedirectTraffic) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiDiscoverySetting.learn_from_redirect_traffic: %s", err) - panic(errMsg) - } - v.FldValidators["learn_from_redirect_traffic"] = vFn - - v.FldValidators["sensitive_data_detection_rules"] = ves_io_schema_app_type.SensitiveDataDetectionRulesValidator().Validate - - v.FldValidators["discovered_api_settings"] = ves_io_schema_app_type.DiscoveredAPISettingsValidator().Validate - - return v -}() - -func ApiDiscoverySettingValidator() db.Validator { - return DefaultApiDiscoverySettingValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ApiEndpointDetails) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ApiEndpointDetails) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ApiEndpointDetails) DeepCopy() *ApiEndpointDetails { +func (m *CreateSpecType) DeepCopy() *CreateSpecType { if m == nil { return nil } @@ -3077,7 +2749,7 @@ func (m *ApiEndpointDetails) DeepCopy() *ApiEndpointDetails { if err != nil { return nil } - c := &ApiEndpointDetails{} + c := &CreateSpecType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -3085,209 +2757,115 @@ func (m *ApiEndpointDetails) DeepCopy() *ApiEndpointDetails { return c } -func (m *ApiEndpointDetails) DeepCopyProto() proto.Message { +func (m *CreateSpecType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ApiEndpointDetails) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ApiEndpointDetailsValidator().Validate(ctx, m, opts...) -} - -type ValidateApiEndpointDetails struct { - FldValidators map[string]db.ValidatorFunc +func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateSpecTypeValidator().Validate(ctx, m, opts...) } -func (v *ValidateApiEndpointDetails) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for path") +func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - return validatorFn, nil -} + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func (v *ValidateApiEndpointDetails) MethodsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema.HttpMethod) - return int32(i) + if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - // ves_io_schema.HttpMethod_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.HttpMethod_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for methods") - } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.HttpMethod, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for methods") + + if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema.HttpMethod) - if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema.HttpMethod, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated methods") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items methods") - } - return nil + if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return validatorFn, nil -} - -func (v *ValidateApiEndpointDetails) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ApiEndpointDetails) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ApiEndpointDetails got type %s", t) - } - } - if m == nil { - return nil + if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["methods"]; exists { - vOpts := append(opts, db.WithValidateField("methods")) - if err := fv(ctx, m.GetMethods(), vOpts...); err != nil { - return err - } - + if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["path"]; exists { - - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err - } - + if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultApiEndpointDetailsValidator = func() *ValidateApiEndpointDetails { - v := &ValidateApiEndpointDetails{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "1024", - "ves.io.schema.rules.string.templated_http_path": "true", - } - vFn, err = vrhPath(rulesPath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointDetails.path: %s", err) - panic(errMsg) + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["path"] = vFn - vrhMethods := v.MethodsValidationRuleHandler - rulesMethods := map[string]string{ - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhMethods(rulesMethods) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointDetails.methods: %s", err) - panic(errMsg) + if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["methods"] = vFn - - return v -}() - -func ApiEndpointDetailsValidator() db.Validator { - return DefaultApiEndpointDetailsValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ApiEndpointRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} -func (m *ApiEndpointRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ApiEndpointRule) DeepCopy() *ApiEndpointRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ApiEndpointRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil + if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return c -} -func (m *ApiEndpointRule) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return m.DeepCopy() -} -func (m *ApiEndpointRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ApiEndpointRuleValidator().Validate(ctx, m, opts...) -} + if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func (m *ApiEndpointRule) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil + if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetClientMatcherDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetClientMatcherDRefInfo() FAILED") + if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") } else { drInfos = append(drInfos, fdrInfos...) } - if fdrInfos, err := m.GetRateLimiterChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRateLimiterChoiceDRefInfo() FAILED") + if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") } else { drInfos = append(drInfos, fdrInfos...) } @@ -3297,55 +2875,97 @@ func (m *ApiEndpointRule) GetDRefInfo() ([]db.DRefInfo, error) { } // GetDRefInfo for the field's type -func (m *ApiEndpointRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { - if m.GetClientMatcher() == nil { +func (m *CreateSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetAdvertiseChoice() == nil { return nil, nil } + switch m.GetAdvertiseChoice().(type) { + case *CreateSpecType_AdvertiseOnPublic: - drInfos, err := m.GetClientMatcher().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "client_matcher." + dri.DRField + drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_on_public." + dri.DRField + } + return drInfos, err + + case *CreateSpecType_AdvertiseCustom: + + drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_custom." + dri.DRField + } + return drInfos, err + + case *CreateSpecType_DoNotAdvertise: + + return nil, nil + + case *CreateSpecType_AdvertiseOnPublicDefaultVip: + + return nil, nil + + default: + return nil, nil } - return drInfos, err } // GetDRefInfo for the field's type -func (m *ApiEndpointRule) GetRateLimiterChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetRateLimiterChoice() == nil { +func (m *CreateSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiDefinitionChoice() == nil { return nil, nil } - switch m.GetRateLimiterChoice().(type) { - case *ApiEndpointRule_InlineRateLimiter: + switch m.GetApiDefinitionChoice().(type) { + case *CreateSpecType_ApiDefinitions: + + drInfos, err := m.GetApiDefinitions().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_definitions." + dri.DRField + } + return drInfos, err + + case *CreateSpecType_ApiSpecification: - drInfos, err := m.GetInlineRateLimiter().GetDRefInfo() + drInfos, err := m.GetApiSpecification().GetDRefInfo() if err != nil { - return nil, errors.Wrap(err, "GetInlineRateLimiter().GetDRefInfo() FAILED") + return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") } for i := range drInfos { dri := &drInfos[i] - dri.DRField = "inline_rate_limiter." + dri.DRField + dri.DRField = "api_specification." + dri.DRField } return drInfos, err - case *ApiEndpointRule_RefRateLimiter: + case *CreateSpecType_DisableApiDefinition: + + return nil, nil + + case *CreateSpecType_ApiDefinition: - vref := m.GetRefRateLimiter() + vref := m.GetApiDefinition() if vref == nil { return nil, nil } vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("rate_limiter.Object") + vdRef.SetKind("api_definition.Object") dri := db.DRefInfo{ - RefdType: "rate_limiter.Object", + RefdType: "api_definition.Object", RefdTenant: vref.Tenant, RefdNS: vref.Namespace, RefdName: vref.Name, - DRField: "ref_rate_limiter", + DRField: "api_definition", Ref: vdRef, } return []db.DRefInfo{dri}, nil @@ -3356,757 +2976,633 @@ func (m *ApiEndpointRule) GetRateLimiterChoiceDRefInfo() ([]db.DRefInfo, error) } -type ValidateApiEndpointRule struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateApiEndpointRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiProtectionRules() == nil { + return nil, nil } - return validatorFn, nil -} -func (v *ValidateApiEndpointRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) + drInfos, err := m.GetApiProtectionRules().GetDRefInfo() if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") + return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_protection_rules." + dri.DRField } - return oValidatorFn_SpecificDomain, nil + return drInfos, err + } -func (v *ValidateApiEndpointRule) RateLimiterChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limiter_choice") +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetBotDefenseChoice() == nil { + return nil, nil } - return validatorFn, nil -} + switch m.GetBotDefenseChoice().(type) { + case *CreateSpecType_DisableBotDefense: -func (v *ValidateApiEndpointRule) ApiEndpointPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + return nil, nil - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_endpoint_path") - } + case *CreateSpecType_BotDefense: - return validatorFn, nil -} + return nil, nil -func (v *ValidateApiEndpointRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ApiEndpointRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ApiEndpointRule got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["api_endpoint_method"]; exists { + case *CreateSpecType_BotDefenseAdvanced: - vOpts := append(opts, db.WithValidateField("api_endpoint_method")) - if err := fv(ctx, m.GetApiEndpointMethod(), vOpts...); err != nil { - return err + drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "bot_defense_advanced." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["api_endpoint_path"]; exists { - - vOpts := append(opts, db.WithValidateField("api_endpoint_path")) - if err := fv(ctx, m.GetApiEndpointPath(), vOpts...); err != nil { - return err - } +} +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetChallengeType() == nil { + return nil, nil } + switch m.GetChallengeType().(type) { + case *CreateSpecType_JsChallenge: - if fv, exists := v.FldValidators["base_path"]; exists { + return nil, nil - vOpts := append(opts, db.WithValidateField("base_path")) - if err := fv(ctx, m.GetBasePath(), vOpts...); err != nil { - return err - } + case *CreateSpecType_CaptchaChallenge: - } + return nil, nil - if fv, exists := v.FldValidators["client_matcher"]; exists { + case *CreateSpecType_NoChallenge: - vOpts := append(opts, db.WithValidateField("client_matcher")) - if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { - return err - } + return nil, nil - } + case *CreateSpecType_PolicyBasedChallenge: - if fv, exists := v.FldValidators["domain_choice"]; exists { - val := m.GetDomainChoice() - vOpts := append(opts, - db.WithValidateField("domain_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") } - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "policy_based_challenge." + dri.DRField + } + return drInfos, err - switch m.GetDomainChoice().(type) { - case *ApiEndpointRule_AnyDomain: - if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { - val := m.GetDomainChoice().(*ApiEndpointRule_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *CreateSpecType_EnableChallenge: + + drInfos, err := m.GetEnableChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") } - case *ApiEndpointRule_SpecificDomain: - if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { - val := m.GetDomainChoice().(*ApiEndpointRule_SpecificDomain).SpecificDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("specific_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "enable_challenge." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["rate_limiter_choice"]; exists { - val := m.GetRateLimiterChoice() - vOpts := append(opts, - db.WithValidateField("rate_limiter_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +} + +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { + if m.GetDefaultRoutePools() == nil { + return nil, nil } - switch m.GetRateLimiterChoice().(type) { - case *ApiEndpointRule_InlineRateLimiter: - if fv, exists := v.FldValidators["rate_limiter_choice.inline_rate_limiter"]; exists { - val := m.GetRateLimiterChoice().(*ApiEndpointRule_InlineRateLimiter).InlineRateLimiter - vOpts := append(opts, - db.WithValidateField("rate_limiter_choice"), - db.WithValidateField("inline_rate_limiter"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + var drInfos []db.DRefInfo + for idx, e := range m.GetDefaultRoutePools() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") } - case *ApiEndpointRule_RefRateLimiter: - if fv, exists := v.FldValidators["rate_limiter_choice.ref_rate_limiter"]; exists { - val := m.GetRateLimiterChoice().(*ApiEndpointRule_RefRateLimiter).RefRateLimiter - vOpts := append(opts, - db.WithValidateField("rate_limiter_choice"), - db.WithValidateField("ref_rate_limiter"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetLoadbalancerType() == nil { + return nil, nil } + switch m.GetLoadbalancerType().(type) { + case *CreateSpecType_Http: - if fv, exists := v.FldValidators["request_matcher"]; exists { + return nil, nil - vOpts := append(opts, db.WithValidateField("request_matcher")) - if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { - return err + case *CreateSpecType_Https: + + drInfos, err := m.GetHttps().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https." + dri.DRField + } + return drInfos, err + + case *CreateSpecType_HttpsAutoCert: + + drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https_auto_cert." + dri.DRField } + return drInfos, err + default: + return nil, nil } - return nil } -// Well-known symbol for default validator implementation -var DefaultApiEndpointRuleValidator = func() *ValidateApiEndpointRule { - v := &ValidateApiEndpointRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (m *CreateSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { - vrhDomainChoice := v.DomainChoiceValidationRuleHandler - rulesDomainChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil } - vFn, err = vrhDomainChoice(rulesDomainChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointRule.domain_choice: %s", err) - panic(errMsg) + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("malicious_user_mitigation.Object") + dri := db.DRefInfo{ + RefdType: "malicious_user_mitigation.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "malicious_user_mitigation", + Ref: vdRef, } - v.FldValidators["domain_choice"] = vFn + return []db.DRefInfo{dri}, nil - vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler - rulesDomainChoiceSpecificDomain := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true", - } - vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) +} + +// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CreateSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ApiEndpointRule.domain_choice_specific_domain: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") } - v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] - - vrhRateLimiterChoice := v.RateLimiterChoiceValidationRuleHandler - rulesRateLimiterChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "malicious_user_mitigation.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, } - vFn, err = vrhRateLimiterChoice(rulesRateLimiterChoice) + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointRule.rate_limiter_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } - v.FldValidators["rate_limiter_choice"] = vFn - vrhApiEndpointPath := v.ApiEndpointPathValidationRuleHandler - rulesApiEndpointPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_len": "1024", - "ves.io.schema.rules.string.templated_http_path": "true", + return entries, nil +} + +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil } - vFn, err = vrhApiEndpointPath(rulesApiEndpointPath) + + drInfos, err := m.GetMoreOption().GetDRefInfo() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ApiEndpointRule.api_endpoint_path: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") } - v.FldValidators["api_endpoint_path"] = vFn - - v.FldValidators["rate_limiter_choice.inline_rate_limiter"] = InlineRateLimiterValidator().Validate - v.FldValidators["rate_limiter_choice.ref_rate_limiter"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_endpoint_method"] = ves_io_schema_policy.HttpMethodMatcherTypeValidator().Validate + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField + } + return drInfos, err - v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate +} - v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPoolChoice() == nil { + return nil, nil + } + switch m.GetOriginPoolChoice().(type) { + case *CreateSpecType_DefaultPool: - return v -}() + drInfos, err := m.GetDefaultPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool." + dri.DRField + } + return drInfos, err -func ApiEndpointRuleValidator() db.Validator { - return DefaultApiEndpointRuleValidator -} + case *CreateSpecType_DefaultPoolList: -// augmented methods on protoc/std generated struct + drInfos, err := m.GetDefaultPoolList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool_list." + dri.DRField + } + return drInfos, err -func (m *AppEndpointType) ToJSON() (string, error) { - return codec.ToJSON(m) -} + default: + return nil, nil + } -func (m *AppEndpointType) ToYAML() (string, error) { - return codec.ToYAML(m) } -func (m *AppEndpointType) DeepCopy() *AppEndpointType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginServerSubsetRuleList() == nil { + return nil, nil } - c := &AppEndpointType{} - err = c.Unmarshal(ser) + + drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() if err != nil { - return nil + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") } - return c -} - -func (m *AppEndpointType) DeepCopyProto() proto.Message { - if m == nil { - return nil + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_server_subset_rule_list." + dri.DRField } - return m.DeepCopy() -} - -func (m *AppEndpointType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AppEndpointTypeValidator().Validate(ctx, m, opts...) -} + return drInfos, err -type ValidateAppEndpointType struct { - FldValidators map[string]db.ValidatorFunc } -func (v *ValidateAppEndpointType) AppTrafficTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for app_traffic_type_choice") +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimitChoice() == nil { + return nil, nil } - return validatorFn, nil -} + switch m.GetRateLimitChoice().(type) { + case *CreateSpecType_DisableRateLimit: -func (v *ValidateAppEndpointType) GoodbotChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for goodbot_choice") - } - return validatorFn, nil -} + return nil, nil -func (v *ValidateAppEndpointType) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + case *CreateSpecType_RateLimit: - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + drInfos, err := m.GetRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rate_limit." + dri.DRField } + return drInfos, err - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + case *CreateSpecType_ApiRateLimit: + + drInfos, err := m.GetApiRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_rate_limit." + dri.DRField } + return drInfos, err - return nil + default: + return nil, nil } - return validatorFn, nil } -func (v *ValidateAppEndpointType) HttpMethodsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema.BotHttpMethod) - return int32(i) - } - // ves_io_schema.BotHttpMethod_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.BotHttpMethod_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for http_methods") - } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.BotHttpMethod, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for http_methods") +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { + if m.GetRoutes() == nil { + return nil, nil } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema.BotHttpMethod) - if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema.BotHttpMethod, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated http_methods") + var drInfos []db.DRefInfo + for idx, e := range m.GetRoutes() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items http_methods") + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) } - return nil + drInfos = append(drInfos, driSet...) } + return drInfos, nil - return validatorFn, nil } -func (v *ValidateAppEndpointType) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetServicePolicyChoice() == nil { + return nil, nil } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } + switch m.GetServicePolicyChoice().(type) { + case *CreateSpecType_ServicePoliciesFromNamespace: - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } + return nil, nil - return nil - } + case *CreateSpecType_NoServicePolicies: - return validatorFn, nil -} + return nil, nil -func (v *ValidateAppEndpointType) MitigationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + case *CreateSpecType_ActiveServicePolicies: - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for mitigation") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "active_service_policies." + dri.DRField } + return drInfos, err - return nil + default: + return nil, nil } - return validatorFn, nil } -func (v *ValidateAppEndpointType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*AppEndpointType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *AppEndpointType got type %s", t) +func (m *CreateSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetUserIdChoice().(type) { + case *CreateSpecType_UserIdentification: + + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("user_identification.Object") + dri := db.DRefInfo{ + RefdType: "user_identification.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "user_identification", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + case *CreateSpecType_UserIdClientIp: + + return nil, nil + + default: + return nil, nil } - if m == nil { - return nil - } +} - if fv, exists := v.FldValidators["app_traffic_type_choice"]; exists { - val := m.GetAppTrafficTypeChoice() - vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err +// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CreateSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetUserIdChoice().(type) { + case *CreateSpecType_UserIdentification: + refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") } - } - switch m.GetAppTrafficTypeChoice().(type) { - case *AppEndpointType_Web: - if fv, exists := v.FldValidators["app_traffic_type_choice.web"]; exists { - val := m.GetAppTrafficTypeChoice().(*AppEndpointType_Web).Web - vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - db.WithValidateField("web"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil } - case *AppEndpointType_Mobile: - if fv, exists := v.FldValidators["app_traffic_type_choice.mobile"]; exists { - val := m.GetAppTrafficTypeChoice().(*AppEndpointType_Mobile).Mobile - vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - db.WithValidateField("mobile"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *AppEndpointType_WebMobile: - if fv, exists := v.FldValidators["app_traffic_type_choice.web_mobile"]; exists { - val := m.GetAppTrafficTypeChoice().(*AppEndpointType_WebMobile).WebMobile - vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - db.WithValidateField("web_mobile"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + ref := &ves_io_schema.ObjectRefType{ + Kind: "user_identification.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, } - - } - - switch m.GetDomainMatcherChoice().(type) { - case *AppEndpointType_AnyDomain: - if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { - val := m.GetDomainMatcherChoice().(*AppEndpointType_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") } - case *AppEndpointType_Domain: - if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { - val := m.GetDomainMatcherChoice().(*AppEndpointType_Domain).Domain - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if refdEnt != nil { + entries = append(entries, refdEnt) } + case *CreateSpecType_UserIdClientIp: + } - switch m.GetFlowLabelChoice().(type) { - case *AppEndpointType_UndefinedFlowLabel: - if fv, exists := v.FldValidators["flow_label_choice.undefined_flow_label"]; exists { - val := m.GetFlowLabelChoice().(*AppEndpointType_UndefinedFlowLabel).UndefinedFlowLabel - vOpts := append(opts, - db.WithValidateField("flow_label_choice"), - db.WithValidateField("undefined_flow_label"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *AppEndpointType_FlowLabel: - if fv, exists := v.FldValidators["flow_label_choice.flow_label"]; exists { - val := m.GetFlowLabelChoice().(*AppEndpointType_FlowLabel).FlowLabel - vOpts := append(opts, - db.WithValidateField("flow_label_choice"), - db.WithValidateField("flow_label"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return entries, nil +} - } +func (m *CreateSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetWafChoice().(type) { + case *CreateSpecType_DisableWaf: - if fv, exists := v.FldValidators["goodbot_choice"]; exists { - val := m.GetGoodbotChoice() - vOpts := append(opts, - db.WithValidateField("goodbot_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil, nil - switch m.GetGoodbotChoice().(type) { - case *AppEndpointType_MitigateGoodBots: - if fv, exists := v.FldValidators["goodbot_choice.mitigate_good_bots"]; exists { - val := m.GetGoodbotChoice().(*AppEndpointType_MitigateGoodBots).MitigateGoodBots - vOpts := append(opts, - db.WithValidateField("goodbot_choice"), - db.WithValidateField("mitigate_good_bots"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *CreateSpecType_AppFirewall: + + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil } - case *AppEndpointType_AllowGoodBots: - if fv, exists := v.FldValidators["goodbot_choice.allow_good_bots"]; exists { - val := m.GetGoodbotChoice().(*AppEndpointType_AllowGoodBots).AllowGoodBots - vOpts := append(opts, - db.WithValidateField("goodbot_choice"), - db.WithValidateField("allow_good_bots"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil + default: + return nil, nil } +} - if fv, exists := v.FldValidators["http_methods"]; exists { - vOpts := append(opts, db.WithValidateField("http_methods")) - if err := fv(ctx, m.GetHttpMethods(), vOpts...); err != nil { - return err - } - - } +// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *CreateSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - if fv, exists := v.FldValidators["metadata"]; exists { + switch m.GetWafChoice().(type) { + case *CreateSpecType_DisableWaf: - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err + case *CreateSpecType_AppFirewall: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") } - } - - if fv, exists := v.FldValidators["mitigation"]; exists { - - vOpts := append(opts, db.WithValidateField("mitigation")) - if err := fv(ctx, m.GetMitigation(), vOpts...); err != nil { - return err + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil } - - } - - if fv, exists := v.FldValidators["path"]; exists { - - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, } - - } - - if fv, exists := v.FldValidators["protocol"]; exists { - - vOpts := append(opts, db.WithValidateField("protocol")) - if err := fv(ctx, m.GetProtocol(), vOpts...); err != nil { - return err + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } } - return nil + return entries, nil } -// Well-known symbol for default validator implementation -var DefaultAppEndpointTypeValidator = func() *ValidateAppEndpointType { - v := &ValidateAppEndpointType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +type ValidateCreateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} - vrhAppTrafficTypeChoice := v.AppTrafficTypeChoiceValidationRuleHandler - rulesAppTrafficTypeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhAppTrafficTypeChoice(rulesAppTrafficTypeChoice) +func (v *ValidateCreateSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.app_traffic_type_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") } - v.FldValidators["app_traffic_type_choice"] = vFn + return validatorFn, nil +} - vrhGoodbotChoice := v.GoodbotChoiceValidationRuleHandler - rulesGoodbotChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhGoodbotChoice(rulesGoodbotChoice) +func (v *ValidateCreateSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.goodbot_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") } - v.FldValidators["goodbot_choice"] = vFn + return validatorFn, nil +} - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", +func (v *ValidateCreateSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") } - vFn, err = vrhMetadata(rulesMetadata) + return validatorFn, nil +} + +func (v *ValidateCreateSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.metadata: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") } - v.FldValidators["metadata"] = vFn + return validatorFn, nil +} - vrhHttpMethods := v.HttpMethodsValidationRuleHandler - rulesHttpMethods := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.in": "[0,1,3,4,10]", - "ves.io.schema.rules.repeated.max_items": "5", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhHttpMethods(rulesHttpMethods) +func (v *ValidateCreateSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.http_methods: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") } - v.FldValidators["http_methods"] = vFn + return validatorFn, nil +} - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPath(rulesPath) +func (v *ValidateCreateSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.path: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") } - v.FldValidators["path"] = vFn + return validatorFn, nil +} - vrhMitigation := v.MitigationValidationRuleHandler - rulesMitigation := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMitigation(rulesMitigation) +func (v *ValidateCreateSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AppEndpointType.mitigation: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") } - v.FldValidators["mitigation"] = vFn - - v.FldValidators["app_traffic_type_choice.web_mobile"] = WebMobileTrafficTypeValidator().Validate - - v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate - - v.FldValidators["flow_label_choice.flow_label"] = ves_io_schema.BotDefenseFlowLabelCategoriesChoiceTypeValidator().Validate - - return v -}() - -func AppEndpointTypeValidator() db.Validator { - return DefaultAppEndpointTypeValidator + return validatorFn, nil } -// augmented methods on protoc/std generated struct - -func (m *Audiences) ToJSON() (string, error) { - return codec.ToJSON(m) +func (v *ValidateCreateSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") + } + return validatorFn, nil } -func (m *Audiences) ToYAML() (string, error) { - return codec.ToYAML(m) +func (v *ValidateCreateSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") + } + return validatorFn, nil } -func (m *Audiences) DeepCopy() *Audiences { - if m == nil { - return nil - } - ser, err := m.Marshal() +func (v *ValidateCreateSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") } - c := &Audiences{} - err = c.Unmarshal(ser) + return validatorFn, nil +} + +func (v *ValidateCreateSpecType) ThreatMeshChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for threat_mesh_choice") } - return c + return validatorFn, nil } -func (m *Audiences) DeepCopyProto() proto.Message { - if m == nil { - return nil +func (v *ValidateCreateSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") } - return m.DeepCopy() + return validatorFn, nil } -func (m *Audiences) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AudiencesValidator().Validate(ctx, m, opts...) +func (v *ValidateCreateSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") + } + return validatorFn, nil } -type ValidateAudiences struct { - FldValidators map[string]db.ValidatorFunc +func (v *ValidateCreateSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") + } + return validatorFn, nil } -func (v *ValidateAudiences) AudiencesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCreateSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepStringItemRules(rules) itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for audiences") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") } itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { for i, el := range elems { @@ -4118,7 +3614,7 @@ func (v *ValidateAudiences) AudiencesValidationRuleHandler(rules map[string]stri } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for audiences") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { @@ -4132,10 +3628,10 @@ func (v *ValidateAudiences) AudiencesValidationRuleHandler(rules map[string]stri l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated audiences") + return errors.Wrap(err, "repeated domains") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items audiences") + return errors.Wrap(err, "items domains") } return nil } @@ -4143,274 +3639,287 @@ func (v *ValidateAudiences) AudiencesValidationRuleHandler(rules map[string]stri return validatorFn, nil } -func (v *ValidateAudiences) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*Audiences) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *Audiences got type %s", t) - } +func (v *ValidateCreateSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") } - if m == nil { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") + } - if fv, exists := v.FldValidators["audiences"]; exists { - vOpts := append(opts, db.WithValidateField("audiences")) - if err := fv(ctx, m.GetAudiences(), vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) } - + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated default_route_pools") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items default_route_pools") + } + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultAudiencesValidator = func() *ValidateAudiences { - v := &ValidateAudiences{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateCreateSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhAudiences := v.AudiencesValidationRuleHandler - rulesAudiences := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhAudiences(rulesAudiences) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for Audiences.audiences: %s", err) - panic(errMsg) - } - v.FldValidators["audiences"] = vFn - - return v -}() - -func AudiencesValidator() db.Validator { - return DefaultAudiencesValidator -} - -// augmented methods on protoc/std generated struct - -func (m *AutoMitigationAction) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *AutoMitigationAction) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *AutoMitigationAction) DeepCopy() *AutoMitigationAction { - if m == nil { - return nil + return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") } - ser, err := m.Marshal() - if err != nil { + itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &AutoMitigationAction{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") } - return c -} -func (m *AutoMitigationAction) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*RouteType) + if !ok { + return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated routes") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items routes") + } return nil } - return m.DeepCopy() -} -func (m *AutoMitigationAction) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return AutoMitigationActionValidator().Validate(ctx, m, opts...) + return validatorFn, nil } -type ValidateAutoMitigationAction struct { - FldValidators map[string]db.ValidatorFunc -} +func (v *ValidateCreateSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateAutoMitigationAction) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for action") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") } - return validatorFn, nil -} - -func (v *ValidateAutoMitigationAction) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*AutoMitigationAction) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *AutoMitigationAction got type %s", t) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - } - if m == nil { return nil } - - if fv, exists := v.FldValidators["action"]; exists { - val := m.GetAction() - vOpts := append(opts, - db.WithValidateField("action"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") } - switch m.GetAction().(type) { - case *AutoMitigationAction_Block: - if fv, exists := v.FldValidators["action.block"]; exists { - val := m.GetAction().(*AutoMitigationAction_Block).Block - vOpts := append(opts, - db.WithValidateField("action"), - db.WithValidateField("block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) } - case *AutoMitigationAction_JsChallenge: - if fv, exists := v.FldValidators["action.js_challenge"]; exists { - val := m.GetAction().(*AutoMitigationAction_JsChallenge).JsChallenge - vOpts := append(opts, - db.WithValidateField("action"), - db.WithValidateField("js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) } + l = append(l, strVal) } - + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated waf_exclusion_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items waf_exclusion_rules") + } + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultAutoMitigationActionValidator = func() *ValidateAutoMitigationAction { - v := &ValidateAutoMitigationAction{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateCreateSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhAction := v.ActionValidationRuleHandler - rulesAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - vFn, err = vrhAction(rulesAction) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for AutoMitigationAction.action: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") } - v.FldValidators["action"] = vFn - - v.FldValidators["action.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - - return v -}() - -func AutoMitigationActionValidator() db.Validator { - return DefaultAutoMitigationActionValidator -} -// augmented methods on protoc/std generated struct + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated blocked_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items blocked_clients") + } + return nil + } -func (m *BasePathsType) ToJSON() (string, error) { - return codec.ToJSON(m) + return validatorFn, nil } -func (m *BasePathsType) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateCreateSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *BasePathsType) DeepCopy() *BasePathsType { - if m == nil { - return nil - } - ser, err := m.Marshal() + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &BasePathsType{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") } - return c -} -func (m *BasePathsType) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated trusted_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items trusted_clients") + } return nil } - return m.DeepCopy() -} - -func (m *BasePathsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return BasePathsTypeValidator().Validate(ctx, m, opts...) -} -type ValidateBasePathsType struct { - FldValidators map[string]db.ValidatorFunc + return validatorFn, nil } -func (v *ValidateBasePathsType) BasePathsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCreateSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for base_paths") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for base_paths") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) + elems, ok := val.([]*DDoSMitigationRule) if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) + return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated base_paths") + return errors.Wrap(err, "repeated ddos_mitigation_rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items base_paths") + return errors.Wrap(err, "items ddos_mitigation_rules") } return nil } @@ -4418,207 +3927,115 @@ func (v *ValidateBasePathsType) BasePathsValidationRuleHandler(rules map[string] return validatorFn, nil } -func (v *ValidateBasePathsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*BasePathsType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *BasePathsType got type %s", t) - } +func (v *ValidateCreateSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") } - if m == nil { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") + } - if fv, exists := v.FldValidators["base_paths"]; exists { - vOpts := append(opts, db.WithValidateField("base_paths")) - if err := fv(ctx, m.GetBasePaths(), vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) } - + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated data_guard_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items data_guard_rules") + } + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultBasePathsTypeValidator = func() *ValidateBasePathsType { - v := &ValidateBasePathsType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateCreateSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhBasePaths := v.BasePathsValidationRuleHandler - rulesBasePaths := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.http_path": "true", - "ves.io.schema.rules.repeated.items.string.not_empty": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - vFn, err = vrhBasePaths(rulesBasePaths) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BasePathsType.base_paths: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") } - v.FldValidators["base_paths"] = vFn - - return v -}() - -func BasePathsTypeValidator() db.Validator { - return DefaultBasePathsTypeValidator -} -// augmented methods on protoc/std generated struct - -func (m *BotAdvancedMobileSDKConfigType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *BotAdvancedMobileSDKConfigType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *BotAdvancedMobileSDKConfigType) DeepCopy() *BotAdvancedMobileSDKConfigType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &BotAdvancedMobileSDKConfigType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *BotAdvancedMobileSDKConfigType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *BotAdvancedMobileSDKConfigType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return BotAdvancedMobileSDKConfigTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateBotAdvancedMobileSDKConfigType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateBotAdvancedMobileSDKConfigType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*BotAdvancedMobileSDKConfigType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *BotAdvancedMobileSDKConfigType got type %s", t) + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["mobile_identifier"]; exists { - - vOpts := append(opts, db.WithValidateField("mobile_identifier")) - if err := fv(ctx, m.GetMobileIdentifier(), vOpts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated graphql_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items graphql_rules") } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultBotAdvancedMobileSDKConfigTypeValidator = func() *ValidateBotAdvancedMobileSDKConfigType { - v := &ValidateBotAdvancedMobileSDKConfigType{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["mobile_identifier"] = MobileTrafficIdentifierTypeValidator().Validate - - return v -}() - -func BotAdvancedMobileSDKConfigTypeValidator() db.Validator { - return DefaultBotAdvancedMobileSDKConfigTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *BotDefenseAdvancedPolicyType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *BotDefenseAdvancedPolicyType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *BotDefenseAdvancedPolicyType) DeepCopy() *BotDefenseAdvancedPolicyType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &BotDefenseAdvancedPolicyType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *BotDefenseAdvancedPolicyType) DeepCopyProto() proto.Message { - if m == nil { return nil } - return m.DeepCopy() -} - -func (m *BotDefenseAdvancedPolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return BotDefenseAdvancedPolicyTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateBotDefenseAdvancedPolicyType struct { - FldValidators map[string]db.ValidatorFunc -} -func (v *ValidateBotDefenseAdvancedPolicyType) MobileSdkChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for mobile_sdk_choice") - } return validatorFn, nil } -func (v *ValidateBotDefenseAdvancedPolicyType) ProtectedAppEndpointsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateCreateSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_app_endpoints") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") } - itemsValidatorFn := func(ctx context.Context, elems []*ProtectedAppEndpointType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ProtectedAppEndpointTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -4626,13 +4043,13 @@ func (v *ValidateBotDefenseAdvancedPolicyType) ProtectedAppEndpointsValidationRu } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_app_endpoints") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ProtectedAppEndpointType) + elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) if !ok { - return fmt.Errorf("Repeated validation expected []*ProtectedAppEndpointType, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) } l := []string{} for _, elem := range elems { @@ -4643,10 +4060,10 @@ func (v *ValidateBotDefenseAdvancedPolicyType) ProtectedAppEndpointsValidationRu l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated protected_app_endpoints") + return errors.Wrap(err, "repeated protected_cookies") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items protected_app_endpoints") + return errors.Wrap(err, "items protected_cookies") } return nil } @@ -4654,67 +4071,79 @@ func (v *ValidateBotDefenseAdvancedPolicyType) ProtectedAppEndpointsValidationRu return validatorFn, nil } -func (v *ValidateBotDefenseAdvancedPolicyType) JsDownloadPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for js_download_path") - } - - return validatorFn, nil -} - -func (v *ValidateBotDefenseAdvancedPolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*BotDefenseAdvancedPolicyType) +func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateSpecType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *BotDefenseAdvancedPolicyType got type %s", t) + return fmt.Errorf("Expected type *CreateSpecType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["js_download_path"]; exists { + if fv, exists := v.FldValidators["add_location"]; exists { - vOpts := append(opts, db.WithValidateField("js_download_path")) - if err := fv(ctx, m.GetJsDownloadPath(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["mobile_sdk_choice"]; exists { - val := m.GetMobileSdkChoice() + if fv, exists := v.FldValidators["advertise_choice"]; exists { + val := m.GetAdvertiseChoice() vOpts := append(opts, - db.WithValidateField("mobile_sdk_choice"), + db.WithValidateField("advertise_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetMobileSdkChoice().(type) { - case *BotDefenseAdvancedPolicyType_DisableMobileSdk: - if fv, exists := v.FldValidators["mobile_sdk_choice.disable_mobile_sdk"]; exists { - val := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_DisableMobileSdk).DisableMobileSdk + switch m.GetAdvertiseChoice().(type) { + case *CreateSpecType_AdvertiseOnPublic: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { + val := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublic).AdvertiseOnPublic vOpts := append(opts, - db.WithValidateField("mobile_sdk_choice"), - db.WithValidateField("disable_mobile_sdk"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *BotDefenseAdvancedPolicyType_MobileSdkConfig: - if fv, exists := v.FldValidators["mobile_sdk_choice.mobile_sdk_config"]; exists { - val := m.GetMobileSdkChoice().(*BotDefenseAdvancedPolicyType_MobileSdkConfig).MobileSdkConfig + case *CreateSpecType_AdvertiseCustom: + if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { + val := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseCustom).AdvertiseCustom vOpts := append(opts, - db.WithValidateField("mobile_sdk_choice"), - db.WithValidateField("mobile_sdk_config"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_custom"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_DoNotAdvertise: + if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { + val := m.GetAdvertiseChoice().(*CreateSpecType_DoNotAdvertise).DoNotAdvertise + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("do_not_advertise"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_AdvertiseOnPublicDefaultVip: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { + val := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public_default_vip"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -4723,10382 +4152,1383 @@ func (v *ValidateBotDefenseAdvancedPolicyType) Validate(ctx context.Context, pm } - if fv, exists := v.FldValidators["protected_app_endpoints"]; exists { - vOpts := append(opts, db.WithValidateField("protected_app_endpoints")) - if err := fv(ctx, m.GetProtectedAppEndpoints(), vOpts...); err != nil { + if fv, exists := v.FldValidators["api_definition_choice"]; exists { + val := m.GetApiDefinitionChoice() + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultBotDefenseAdvancedPolicyTypeValidator = func() *ValidateBotDefenseAdvancedPolicyType { - v := &ValidateBotDefenseAdvancedPolicyType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhMobileSdkChoice := v.MobileSdkChoiceValidationRuleHandler - rulesMobileSdkChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMobileSdkChoice(rulesMobileSdkChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedPolicyType.mobile_sdk_choice: %s", err) - panic(errMsg) - } - v.FldValidators["mobile_sdk_choice"] = vFn - - vrhProtectedAppEndpoints := v.ProtectedAppEndpointsValidationRuleHandler - rulesProtectedAppEndpoints := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhProtectedAppEndpoints(rulesProtectedAppEndpoints) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedPolicyType.protected_app_endpoints: %s", err) - panic(errMsg) - } - v.FldValidators["protected_app_endpoints"] = vFn - - vrhJsDownloadPath := v.JsDownloadPathValidationRuleHandler - rulesJsDownloadPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_path": "true", - } - vFn, err = vrhJsDownloadPath(rulesJsDownloadPath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedPolicyType.js_download_path: %s", err) - panic(errMsg) - } - v.FldValidators["js_download_path"] = vFn - - v.FldValidators["mobile_sdk_choice.mobile_sdk_config"] = BotAdvancedMobileSDKConfigTypeValidator().Validate - - return v -}() - -func BotDefenseAdvancedPolicyTypeValidator() db.Validator { - return DefaultBotDefenseAdvancedPolicyTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *BotDefenseAdvancedType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *BotDefenseAdvancedType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *BotDefenseAdvancedType) DeepCopy() *BotDefenseAdvancedType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &BotDefenseAdvancedType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *BotDefenseAdvancedType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *BotDefenseAdvancedType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return BotDefenseAdvancedTypeValidator().Validate(ctx, m, opts...) -} - -func (m *BotDefenseAdvancedType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetMobileDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMobileDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetWebDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetWebDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -func (m *BotDefenseAdvancedType) GetMobileDRefInfo() ([]db.DRefInfo, error) { - - vref := m.GetMobile() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("bot_defense_app_infrastructure.Object") - dri := db.DRefInfo{ - RefdType: "bot_defense_app_infrastructure.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "mobile", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - -} - -// GetMobileDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *BotDefenseAdvancedType) GetMobileDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "bot_defense_app_infrastructure.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: bot_defense_app_infrastructure") - } - - vref := m.GetMobile() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "bot_defense_app_infrastructure.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - return entries, nil -} - -func (m *BotDefenseAdvancedType) GetWebDRefInfo() ([]db.DRefInfo, error) { - - vref := m.GetWeb() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("bot_defense_app_infrastructure.Object") - dri := db.DRefInfo{ - RefdType: "bot_defense_app_infrastructure.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "web", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - -} - -// GetWebDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *BotDefenseAdvancedType) GetWebDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "bot_defense_app_infrastructure.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: bot_defense_app_infrastructure") - } - - vref := m.GetWeb() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "bot_defense_app_infrastructure.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - return entries, nil -} - -type ValidateBotDefenseAdvancedType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateBotDefenseAdvancedType) PolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for policy") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := BotDefenseAdvancedPolicyTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateBotDefenseAdvancedType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*BotDefenseAdvancedType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *BotDefenseAdvancedType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["mobile"]; exists { - - vOpts := append(opts, db.WithValidateField("mobile")) - if err := fv(ctx, m.GetMobile(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["policy"]; exists { - - vOpts := append(opts, db.WithValidateField("policy")) - if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["web"]; exists { - - vOpts := append(opts, db.WithValidateField("web")) - if err := fv(ctx, m.GetWeb(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultBotDefenseAdvancedTypeValidator = func() *ValidateBotDefenseAdvancedType { - v := &ValidateBotDefenseAdvancedType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhPolicy := v.PolicyValidationRuleHandler - rulesPolicy := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPolicy(rulesPolicy) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BotDefenseAdvancedType.policy: %s", err) - panic(errMsg) - } - v.FldValidators["policy"] = vFn - - v.FldValidators["web"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["mobile"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - return v -}() - -func BotDefenseAdvancedTypeValidator() db.Validator { - return DefaultBotDefenseAdvancedTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *BypassRateLimitingRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *BypassRateLimitingRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *BypassRateLimitingRule) DeepCopy() *BypassRateLimitingRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &BypassRateLimitingRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *BypassRateLimitingRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *BypassRateLimitingRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return BypassRateLimitingRuleValidator().Validate(ctx, m, opts...) -} - -func (m *BypassRateLimitingRule) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetClientMatcherDRefInfo() - -} - -// GetDRefInfo for the field's type -func (m *BypassRateLimitingRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { - if m.GetClientMatcher() == nil { - return nil, nil - } - - drInfos, err := m.GetClientMatcher().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "client_matcher." + dri.DRField - } - return drInfos, err - -} - -type ValidateBypassRateLimitingRule struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateBypassRateLimitingRule) DestinationTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for destination_type") - } - return validatorFn, nil -} - -func (v *ValidateBypassRateLimitingRule) DestinationTypeApiEndpointValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - return ApiEndpointDetailsValidator().Validate, nil -} - -func (v *ValidateBypassRateLimitingRule) DestinationTypeBasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_BasePath, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") - } - return oValidatorFn_BasePath, nil -} - -func (v *ValidateBypassRateLimitingRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") - } - return validatorFn, nil -} - -func (v *ValidateBypassRateLimitingRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") - } - return oValidatorFn_SpecificDomain, nil -} - -func (v *ValidateBypassRateLimitingRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*BypassRateLimitingRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *BypassRateLimitingRule got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["client_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("client_matcher")) - if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["destination_type"]; exists { - val := m.GetDestinationType() - vOpts := append(opts, - db.WithValidateField("destination_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetDestinationType().(type) { - case *BypassRateLimitingRule_AnyUrl: - if fv, exists := v.FldValidators["destination_type.any_url"]; exists { - val := m.GetDestinationType().(*BypassRateLimitingRule_AnyUrl).AnyUrl - vOpts := append(opts, - db.WithValidateField("destination_type"), - db.WithValidateField("any_url"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *BypassRateLimitingRule_BasePath: - if fv, exists := v.FldValidators["destination_type.base_path"]; exists { - val := m.GetDestinationType().(*BypassRateLimitingRule_BasePath).BasePath - vOpts := append(opts, - db.WithValidateField("destination_type"), - db.WithValidateField("base_path"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *BypassRateLimitingRule_ApiEndpoint: - if fv, exists := v.FldValidators["destination_type.api_endpoint"]; exists { - val := m.GetDestinationType().(*BypassRateLimitingRule_ApiEndpoint).ApiEndpoint - vOpts := append(opts, - db.WithValidateField("destination_type"), - db.WithValidateField("api_endpoint"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *BypassRateLimitingRule_ApiGroups: - if fv, exists := v.FldValidators["destination_type.api_groups"]; exists { - val := m.GetDestinationType().(*BypassRateLimitingRule_ApiGroups).ApiGroups - vOpts := append(opts, - db.WithValidateField("destination_type"), - db.WithValidateField("api_groups"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["domain_choice"]; exists { - val := m.GetDomainChoice() - vOpts := append(opts, - db.WithValidateField("domain_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetDomainChoice().(type) { - case *BypassRateLimitingRule_AnyDomain: - if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { - val := m.GetDomainChoice().(*BypassRateLimitingRule_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *BypassRateLimitingRule_SpecificDomain: - if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { - val := m.GetDomainChoice().(*BypassRateLimitingRule_SpecificDomain).SpecificDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("specific_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["request_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("request_matcher")) - if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultBypassRateLimitingRuleValidator = func() *ValidateBypassRateLimitingRule { - v := &ValidateBypassRateLimitingRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhDestinationType := v.DestinationTypeValidationRuleHandler - rulesDestinationType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDestinationType(rulesDestinationType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BypassRateLimitingRule.destination_type: %s", err) - panic(errMsg) - } - v.FldValidators["destination_type"] = vFn - - vrhDestinationTypeBasePath := v.DestinationTypeBasePathValidationRuleHandler - rulesDestinationTypeBasePath := map[string]string{ - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128", - } - vFnMap["destination_type.base_path"], err = vrhDestinationTypeBasePath(rulesDestinationTypeBasePath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field BypassRateLimitingRule.destination_type_base_path: %s", err) - panic(errMsg) - } - vrhDestinationTypeApiEndpoint := v.DestinationTypeApiEndpointValidationRuleHandler - rulesDestinationTypeApiEndpoint := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFnMap["destination_type.api_endpoint"], err = vrhDestinationTypeApiEndpoint(rulesDestinationTypeApiEndpoint) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field BypassRateLimitingRule.destination_type_api_endpoint: %s", err) - panic(errMsg) - } - - v.FldValidators["destination_type.base_path"] = vFnMap["destination_type.base_path"] - v.FldValidators["destination_type.api_endpoint"] = vFnMap["destination_type.api_endpoint"] - - vrhDomainChoice := v.DomainChoiceValidationRuleHandler - rulesDomainChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDomainChoice(rulesDomainChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BypassRateLimitingRule.domain_choice: %s", err) - panic(errMsg) - } - v.FldValidators["domain_choice"] = vFn - - vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler - rulesDomainChoiceSpecificDomain := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true", - } - vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field BypassRateLimitingRule.domain_choice_specific_domain: %s", err) - panic(errMsg) - } - - v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] - - v.FldValidators["destination_type.api_groups"] = APIGroupsValidator().Validate - - v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate - - v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate - - return v -}() - -func BypassRateLimitingRuleValidator() db.Validator { - return DefaultBypassRateLimitingRuleValidator -} - -// augmented methods on protoc/std generated struct - -func (m *BypassRateLimitingRules) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *BypassRateLimitingRules) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *BypassRateLimitingRules) DeepCopy() *BypassRateLimitingRules { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &BypassRateLimitingRules{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *BypassRateLimitingRules) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *BypassRateLimitingRules) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return BypassRateLimitingRulesValidator().Validate(ctx, m, opts...) -} - -func (m *BypassRateLimitingRules) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetBypassRateLimitingRulesDRefInfo() - -} - -// GetDRefInfo for the field's type -func (m *BypassRateLimitingRules) GetBypassRateLimitingRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetBypassRateLimitingRules() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetBypassRateLimitingRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetBypassRateLimitingRules() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("bypass_rate_limiting_rules[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -type ValidateBypassRateLimitingRules struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateBypassRateLimitingRules) BypassRateLimitingRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for bypass_rate_limiting_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*BypassRateLimitingRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := BypassRateLimitingRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for bypass_rate_limiting_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*BypassRateLimitingRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*BypassRateLimitingRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated bypass_rate_limiting_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items bypass_rate_limiting_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateBypassRateLimitingRules) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*BypassRateLimitingRules) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *BypassRateLimitingRules got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["bypass_rate_limiting_rules"]; exists { - vOpts := append(opts, db.WithValidateField("bypass_rate_limiting_rules")) - if err := fv(ctx, m.GetBypassRateLimitingRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultBypassRateLimitingRulesValidator = func() *ValidateBypassRateLimitingRules { - v := &ValidateBypassRateLimitingRules{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhBypassRateLimitingRules := v.BypassRateLimitingRulesValidationRuleHandler - rulesBypassRateLimitingRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "20", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhBypassRateLimitingRules(rulesBypassRateLimitingRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for BypassRateLimitingRules.bypass_rate_limiting_rules: %s", err) - panic(errMsg) - } - v.FldValidators["bypass_rate_limiting_rules"] = vFn - - return v -}() - -func BypassRateLimitingRulesValidator() db.Validator { - return DefaultBypassRateLimitingRulesValidator -} - -// augmented methods on protoc/std generated struct - -func (m *CSDJavaScriptInsertAllWithExceptionsType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) DeepCopy() *CSDJavaScriptInsertAllWithExceptionsType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CSDJavaScriptInsertAllWithExceptionsType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CSDJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CSDJavaScriptInsertAllWithExceptionsTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateCSDJavaScriptInsertAllWithExceptionsType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCSDJavaScriptInsertAllWithExceptionsType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") - } - itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ShapeJavaScriptExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated exclude_list") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items exclude_list") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCSDJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CSDJavaScriptInsertAllWithExceptionsType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CSDJavaScriptInsertAllWithExceptionsType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["exclude_list"]; exists { - vOpts := append(opts, db.WithValidateField("exclude_list")) - if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCSDJavaScriptInsertAllWithExceptionsTypeValidator = func() *ValidateCSDJavaScriptInsertAllWithExceptionsType { - v := &ValidateCSDJavaScriptInsertAllWithExceptionsType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhExcludeList := v.ExcludeListValidationRuleHandler - rulesExcludeList := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhExcludeList(rulesExcludeList) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertAllWithExceptionsType.exclude_list: %s", err) - panic(errMsg) - } - v.FldValidators["exclude_list"] = vFn - - return v -}() - -func CSDJavaScriptInsertAllWithExceptionsTypeValidator() db.Validator { - return DefaultCSDJavaScriptInsertAllWithExceptionsTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *CSDJavaScriptInsertType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CSDJavaScriptInsertType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CSDJavaScriptInsertType) DeepCopy() *CSDJavaScriptInsertType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CSDJavaScriptInsertType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CSDJavaScriptInsertType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CSDJavaScriptInsertType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CSDJavaScriptInsertTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateCSDJavaScriptInsertType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCSDJavaScriptInsertType) RulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*CSDJavaScriptInsertionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := CSDJavaScriptInsertionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*CSDJavaScriptInsertionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*CSDJavaScriptInsertionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCSDJavaScriptInsertType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") - } - itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ShapeJavaScriptExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated exclude_list") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items exclude_list") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCSDJavaScriptInsertType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CSDJavaScriptInsertType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CSDJavaScriptInsertType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["exclude_list"]; exists { - vOpts := append(opts, db.WithValidateField("exclude_list")) - if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["rules"]; exists { - vOpts := append(opts, db.WithValidateField("rules")) - if err := fv(ctx, m.GetRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCSDJavaScriptInsertTypeValidator = func() *ValidateCSDJavaScriptInsertType { - v := &ValidateCSDJavaScriptInsertType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhRules := v.RulesValidationRuleHandler - rulesRules := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRules(rulesRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertType.rules: %s", err) - panic(errMsg) - } - v.FldValidators["rules"] = vFn - - vrhExcludeList := v.ExcludeListValidationRuleHandler - rulesExcludeList := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhExcludeList(rulesExcludeList) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertType.exclude_list: %s", err) - panic(errMsg) - } - v.FldValidators["exclude_list"] = vFn - - return v -}() - -func CSDJavaScriptInsertTypeValidator() db.Validator { - return DefaultCSDJavaScriptInsertTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *CSDJavaScriptInsertionRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CSDJavaScriptInsertionRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CSDJavaScriptInsertionRule) DeepCopy() *CSDJavaScriptInsertionRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CSDJavaScriptInsertionRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CSDJavaScriptInsertionRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CSDJavaScriptInsertionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CSDJavaScriptInsertionRuleValidator().Validate(ctx, m, opts...) -} - -type ValidateCSDJavaScriptInsertionRule struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCSDJavaScriptInsertionRule) DomainMatcherChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_matcher_choice") - } - return validatorFn, nil -} - -func (v *ValidateCSDJavaScriptInsertionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCSDJavaScriptInsertionRule) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCSDJavaScriptInsertionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CSDJavaScriptInsertionRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CSDJavaScriptInsertionRule got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["domain_matcher_choice"]; exists { - val := m.GetDomainMatcherChoice() - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetDomainMatcherChoice().(type) { - case *CSDJavaScriptInsertionRule_AnyDomain: - if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { - val := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CSDJavaScriptInsertionRule_Domain: - if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { - val := m.GetDomainMatcherChoice().(*CSDJavaScriptInsertionRule_Domain).Domain - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["path"]; exists { - - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCSDJavaScriptInsertionRuleValidator = func() *ValidateCSDJavaScriptInsertionRule { - v := &ValidateCSDJavaScriptInsertionRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhDomainMatcherChoice := v.DomainMatcherChoiceValidationRuleHandler - rulesDomainMatcherChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDomainMatcherChoice(rulesDomainMatcherChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertionRule.domain_matcher_choice: %s", err) - panic(errMsg) - } - v.FldValidators["domain_matcher_choice"] = vFn - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertionRule.metadata: %s", err) - panic(errMsg) - } - v.FldValidators["metadata"] = vFn - - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPath(rulesPath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CSDJavaScriptInsertionRule.path: %s", err) - panic(errMsg) - } - v.FldValidators["path"] = vFn - - v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate - - return v -}() - -func CSDJavaScriptInsertionRuleValidator() db.Validator { - return DefaultCSDJavaScriptInsertionRuleValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ChallengeRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ChallengeRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ChallengeRule) DeepCopy() *ChallengeRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ChallengeRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ChallengeRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ChallengeRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ChallengeRuleValidator().Validate(ctx, m, opts...) -} - -func (m *ChallengeRule) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetSpecDRefInfo() - -} - -// GetDRefInfo for the field's type -func (m *ChallengeRule) GetSpecDRefInfo() ([]db.DRefInfo, error) { - if m.GetSpec() == nil { - return nil, nil - } - - drInfos, err := m.GetSpec().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "spec." + dri.DRField - } - return drInfos, err - -} - -type ValidateChallengeRule struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateChallengeRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateChallengeRule) SpecValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for spec") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema_service_policy_rule.ChallengeRuleSpecValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateChallengeRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ChallengeRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ChallengeRule got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["spec"]; exists { - - vOpts := append(opts, db.WithValidateField("spec")) - if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultChallengeRuleValidator = func() *ValidateChallengeRule { - v := &ValidateChallengeRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ChallengeRule.metadata: %s", err) - panic(errMsg) - } - v.FldValidators["metadata"] = vFn - - vrhSpec := v.SpecValidationRuleHandler - rulesSpec := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhSpec(rulesSpec) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ChallengeRule.spec: %s", err) - panic(errMsg) - } - v.FldValidators["spec"] = vFn - - return v -}() - -func ChallengeRuleValidator() db.Validator { - return DefaultChallengeRuleValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ChallengeRuleList) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ChallengeRuleList) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ChallengeRuleList) DeepCopy() *ChallengeRuleList { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ChallengeRuleList{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ChallengeRuleList) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ChallengeRuleList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ChallengeRuleListValidator().Validate(ctx, m, opts...) -} - -func (m *ChallengeRuleList) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetRulesDRefInfo() - -} - -// GetDRefInfo for the field's type -func (m *ChallengeRuleList) GetRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetRules() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRules() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("rules[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -type ValidateChallengeRuleList struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateChallengeRuleList) RulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ChallengeRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ChallengeRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ChallengeRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ChallengeRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateChallengeRuleList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ChallengeRuleList) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ChallengeRuleList got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["rules"]; exists { - vOpts := append(opts, db.WithValidateField("rules")) - if err := fv(ctx, m.GetRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultChallengeRuleListValidator = func() *ValidateChallengeRuleList { - v := &ValidateChallengeRuleList{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhRules := v.RulesValidationRuleHandler - rulesRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhRules(rulesRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ChallengeRuleList.rules: %s", err) - panic(errMsg) - } - v.FldValidators["rules"] = vFn - - return v -}() - -func ChallengeRuleListValidator() db.Validator { - return DefaultChallengeRuleListValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ClientSideDefensePolicyType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ClientSideDefensePolicyType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ClientSideDefensePolicyType) DeepCopy() *ClientSideDefensePolicyType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ClientSideDefensePolicyType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ClientSideDefensePolicyType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ClientSideDefensePolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ClientSideDefensePolicyTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateClientSideDefensePolicyType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateClientSideDefensePolicyType) JavaScriptChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for java_script_choice") - } - return validatorFn, nil -} - -func (v *ValidateClientSideDefensePolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ClientSideDefensePolicyType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ClientSideDefensePolicyType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["java_script_choice"]; exists { - val := m.GetJavaScriptChoice() - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetJavaScriptChoice().(type) { - case *ClientSideDefensePolicyType_DisableJsInsert: - if fv, exists := v.FldValidators["java_script_choice.disable_js_insert"]; exists { - val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_DisableJsInsert).DisableJsInsert - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("disable_js_insert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ClientSideDefensePolicyType_JsInsertAllPages: - if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages"]; exists { - val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPages).JsInsertAllPages - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("js_insert_all_pages"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ClientSideDefensePolicyType_JsInsertAllPagesExcept: - if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages_except"]; exists { - val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertAllPagesExcept).JsInsertAllPagesExcept - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("js_insert_all_pages_except"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ClientSideDefensePolicyType_JsInsertionRules: - if fv, exists := v.FldValidators["java_script_choice.js_insertion_rules"]; exists { - val := m.GetJavaScriptChoice().(*ClientSideDefensePolicyType_JsInsertionRules).JsInsertionRules - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("js_insertion_rules"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultClientSideDefensePolicyTypeValidator = func() *ValidateClientSideDefensePolicyType { - v := &ValidateClientSideDefensePolicyType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhJavaScriptChoice := v.JavaScriptChoiceValidationRuleHandler - rulesJavaScriptChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhJavaScriptChoice(rulesJavaScriptChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ClientSideDefensePolicyType.java_script_choice: %s", err) - panic(errMsg) - } - v.FldValidators["java_script_choice"] = vFn - - v.FldValidators["java_script_choice.js_insert_all_pages_except"] = CSDJavaScriptInsertAllWithExceptionsTypeValidator().Validate - v.FldValidators["java_script_choice.js_insertion_rules"] = CSDJavaScriptInsertTypeValidator().Validate - - return v -}() - -func ClientSideDefensePolicyTypeValidator() db.Validator { - return DefaultClientSideDefensePolicyTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ClientSideDefenseType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ClientSideDefenseType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ClientSideDefenseType) DeepCopy() *ClientSideDefenseType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ClientSideDefenseType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ClientSideDefenseType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ClientSideDefenseType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ClientSideDefenseTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateClientSideDefenseType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateClientSideDefenseType) PolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for policy") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ClientSideDefensePolicyTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateClientSideDefenseType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ClientSideDefenseType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ClientSideDefenseType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["policy"]; exists { - - vOpts := append(opts, db.WithValidateField("policy")) - if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultClientSideDefenseTypeValidator = func() *ValidateClientSideDefenseType { - v := &ValidateClientSideDefenseType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhPolicy := v.PolicyValidationRuleHandler - rulesPolicy := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPolicy(rulesPolicy) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ClientSideDefenseType.policy: %s", err) - panic(errMsg) - } - v.FldValidators["policy"] = vFn - - return v -}() - -func ClientSideDefenseTypeValidator() db.Validator { - return DefaultClientSideDefenseTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *CreateSpecType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CreateSpecType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -// Redact squashes sensitive info in m (in-place) -func (m *CreateSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.https") - } - - for idx, e := range m.GetRoutes() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.routes idx %v", idx) - } - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.more_option") - } - - if err := m.GetDefaultPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.default_pool") - } - - if err := m.GetJwtValidation().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting CreateSpecType.jwt_validation") - } - - return nil -} - -func (m *CreateSpecType) DeepCopy() *CreateSpecType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CreateSpecType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CreateSpecType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CreateSpecTypeValidator().Validate(ctx, m, opts...) -} - -func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetAdvertiseChoice() == nil { - return nil, nil - } - switch m.GetAdvertiseChoice().(type) { - case *CreateSpecType_AdvertiseOnPublic: - - drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_on_public." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_AdvertiseCustom: - - drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_custom." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_DoNotAdvertise: - - return nil, nil - - case *CreateSpecType_AdvertiseOnPublicDefaultVip: - - return nil, nil - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiDefinitionChoice() == nil { - return nil, nil - } - switch m.GetApiDefinitionChoice().(type) { - case *CreateSpecType_ApiDefinitions: - - drInfos, err := m.GetApiDefinitions().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_definitions." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_ApiSpecification: - - drInfos, err := m.GetApiSpecification().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_specification." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_DisableApiDefinition: - - return nil, nil - - case *CreateSpecType_ApiDefinition: - - vref := m.GetApiDefinition() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("api_definition.Object") - dri := db.DRefInfo{ - RefdType: "api_definition.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "api_definition", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiProtectionRules() == nil { - return nil, nil - } - - drInfos, err := m.GetApiProtectionRules().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_protection_rules." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetBotDefenseChoice() == nil { - return nil, nil - } - switch m.GetBotDefenseChoice().(type) { - case *CreateSpecType_DisableBotDefense: - - return nil, nil - - case *CreateSpecType_BotDefense: - - return nil, nil - - case *CreateSpecType_BotDefenseAdvanced: - - drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "bot_defense_advanced." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetChallengeType() == nil { - return nil, nil - } - switch m.GetChallengeType().(type) { - case *CreateSpecType_JsChallenge: - - return nil, nil - - case *CreateSpecType_CaptchaChallenge: - - return nil, nil - - case *CreateSpecType_NoChallenge: - - return nil, nil - - case *CreateSpecType_PolicyBasedChallenge: - - drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "policy_based_challenge." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_EnableChallenge: - - drInfos, err := m.GetEnableChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "enable_challenge." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { - if m.GetDefaultRoutePools() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetDefaultRoutePools() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetLoadbalancerType() == nil { - return nil, nil - } - switch m.GetLoadbalancerType().(type) { - case *CreateSpecType_Http: - - return nil, nil - - case *CreateSpecType_Https: - - drInfos, err := m.GetHttps().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_HttpsAutoCert: - - drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https_auto_cert." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -func (m *CreateSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("malicious_user_mitigation.Object") - dri := db.DRefInfo{ - RefdType: "malicious_user_mitigation.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "malicious_user_mitigation", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - -} - -// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *CreateSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") - } - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "malicious_user_mitigation.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - return entries, nil -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { - if m.GetMoreOption() == nil { - return nil, nil - } - - drInfos, err := m.GetMoreOption().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "more_option." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPoolChoice() == nil { - return nil, nil - } - switch m.GetOriginPoolChoice().(type) { - case *CreateSpecType_DefaultPool: - - drInfos, err := m.GetDefaultPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_DefaultPoolList: - - drInfos, err := m.GetDefaultPoolList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool_list." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginServerSubsetRuleList() == nil { - return nil, nil - } - - drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_server_subset_rule_list." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetRateLimitChoice() == nil { - return nil, nil - } - switch m.GetRateLimitChoice().(type) { - case *CreateSpecType_DisableRateLimit: - - return nil, nil - - case *CreateSpecType_RateLimit: - - drInfos, err := m.GetRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "rate_limit." + dri.DRField - } - return drInfos, err - - case *CreateSpecType_ApiRateLimit: - - drInfos, err := m.GetApiRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_rate_limit." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { - if m.GetRoutes() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetRoutes() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *CreateSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetServicePolicyChoice() == nil { - return nil, nil - } - switch m.GetServicePolicyChoice().(type) { - case *CreateSpecType_ServicePoliciesFromNamespace: - - return nil, nil - - case *CreateSpecType_NoServicePolicies: - - return nil, nil - - case *CreateSpecType_ActiveServicePolicies: - - drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "active_service_policies." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -func (m *CreateSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetUserIdChoice().(type) { - case *CreateSpecType_UserIdentification: - - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("user_identification.Object") - dri := db.DRefInfo{ - RefdType: "user_identification.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "user_identification", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - case *CreateSpecType_UserIdClientIp: - - return nil, nil - - default: - return nil, nil - } -} - -// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *CreateSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetUserIdChoice().(type) { - case *CreateSpecType_UserIdentification: - refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") - } - - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "user_identification.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - case *CreateSpecType_UserIdClientIp: - - } - - return entries, nil -} - -func (m *CreateSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetWafChoice().(type) { - case *CreateSpecType_DisableWaf: - - return nil, nil - - case *CreateSpecType_AppFirewall: - - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("app_firewall.Object") - dri := db.DRefInfo{ - RefdType: "app_firewall.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "app_firewall", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil - } -} - -// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *CreateSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetWafChoice().(type) { - case *CreateSpecType_DisableWaf: - - case *CreateSpecType_AppFirewall: - refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") - } - - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "app_firewall.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - } - - return entries, nil -} - -type ValidateCreateSpecType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCreateSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) DdosDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ddos_detection_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) ThreatIntelligenceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for threat_intelligence_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") - } - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated default_route_pools") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items default_route_pools") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") - } - itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*RouteType) - if !ok { - return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated routes") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items routes") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated waf_exclusion_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items waf_exclusion_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") - } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated blocked_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items blocked_clients") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") - } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated trusted_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items trusted_clients") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*DDoSMitigationRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated ddos_mitigation_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items ddos_mitigation_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated data_guard_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items data_guard_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated graphql_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items graphql_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated protected_cookies") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items protected_cookies") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CreateSpecType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CreateSpecType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["add_location"]; exists { - - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["advertise_choice"]; exists { - val := m.GetAdvertiseChoice() - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetAdvertiseChoice().(type) { - case *CreateSpecType_AdvertiseOnPublic: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { - val := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublic).AdvertiseOnPublic - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_AdvertiseCustom: - if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { - val := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseCustom).AdvertiseCustom - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_custom"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_DoNotAdvertise: - if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { - val := m.GetAdvertiseChoice().(*CreateSpecType_DoNotAdvertise).DoNotAdvertise - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("do_not_advertise"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_AdvertiseOnPublicDefaultVip: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { - val := m.GetAdvertiseChoice().(*CreateSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public_default_vip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["api_definition_choice"]; exists { - val := m.GetApiDefinitionChoice() - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetApiDefinitionChoice().(type) { - case *CreateSpecType_ApiDefinitions: - if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { - val := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinitions).ApiDefinitions - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definitions"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_ApiSpecification: - if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { - val := m.GetApiDefinitionChoice().(*CreateSpecType_ApiSpecification).ApiSpecification - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_specification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_DisableApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*CreateSpecType_DisableApiDefinition).DisableApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("disable_api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_ApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinition).ApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["api_discovery_choice"]; exists { - val := m.GetApiDiscoveryChoice() - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetApiDiscoveryChoice().(type) { - case *CreateSpecType_EnableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*CreateSpecType_EnableApiDiscovery).EnableApiDiscovery - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("enable_api_discovery"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_DisableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*CreateSpecType_DisableApiDiscovery).DisableApiDiscovery - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("disable_api_discovery"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["api_protection_rules"]; exists { - - vOpts := append(opts, db.WithValidateField("api_protection_rules")) - if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["blocked_clients"]; exists { - vOpts := append(opts, db.WithValidateField("blocked_clients")) - if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { - return err - } - - } - - switch m.GetBotDefenseChoice().(type) { - case *CreateSpecType_DisableBotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*CreateSpecType_DisableBotDefense).DisableBotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("disable_bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_BotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*CreateSpecType_BotDefense).BotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_BotDefenseAdvanced: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { - val := m.GetBotDefenseChoice().(*CreateSpecType_BotDefenseAdvanced).BotDefenseAdvanced - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense_advanced"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["challenge_type"]; exists { - val := m.GetChallengeType() - vOpts := append(opts, - db.WithValidateField("challenge_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetChallengeType().(type) { - case *CreateSpecType_JsChallenge: - if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { - val := m.GetChallengeType().(*CreateSpecType_JsChallenge).JsChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_CaptchaChallenge: - if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { - val := m.GetChallengeType().(*CreateSpecType_CaptchaChallenge).CaptchaChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("captcha_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_NoChallenge: - if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { - val := m.GetChallengeType().(*CreateSpecType_NoChallenge).NoChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("no_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_PolicyBasedChallenge: - if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { - val := m.GetChallengeType().(*CreateSpecType_PolicyBasedChallenge).PolicyBasedChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("policy_based_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_EnableChallenge: - if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { - val := m.GetChallengeType().(*CreateSpecType_EnableChallenge).EnableChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("enable_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetClientSideDefenseChoice().(type) { - case *CreateSpecType_DisableClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*CreateSpecType_DisableClientSideDefense).DisableClientSideDefense - vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("disable_client_side_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_ClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*CreateSpecType_ClientSideDefense).ClientSideDefense - vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("client_side_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["cors_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("cors_policy")) - if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["csrf_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("csrf_policy")) - if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["data_guard_rules"]; exists { - vOpts := append(opts, db.WithValidateField("data_guard_rules")) - if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["ddos_detection_choice"]; exists { - val := m.GetDdosDetectionChoice() - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetDdosDetectionChoice().(type) { - case *CreateSpecType_EnableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.enable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*CreateSpecType_EnableDdosDetection).EnableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("enable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_DisableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.disable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*CreateSpecType_DisableDdosDetection).DisableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("disable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { - vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) - if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["default_route_pools"]; exists { - vOpts := append(opts, db.WithValidateField("default_route_pools")) - if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["graphql_rules"]; exists { - vOpts := append(opts, db.WithValidateField("graphql_rules")) - if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["hash_policy_choice"]; exists { - val := m.GetHashPolicyChoice() - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetHashPolicyChoice().(type) { - case *CreateSpecType_RoundRobin: - if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { - val := m.GetHashPolicyChoice().(*CreateSpecType_RoundRobin).RoundRobin - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("round_robin"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_LeastActive: - if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { - val := m.GetHashPolicyChoice().(*CreateSpecType_LeastActive).LeastActive - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("least_active"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_Random: - if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { - val := m.GetHashPolicyChoice().(*CreateSpecType_Random).Random - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("random"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_SourceIpStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*CreateSpecType_SourceIpStickiness).SourceIpStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("source_ip_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_CookieStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*CreateSpecType_CookieStickiness).CookieStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("cookie_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_RingHash: - if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { - val := m.GetHashPolicyChoice().(*CreateSpecType_RingHash).RingHash - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("ring_hash"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetIpReputationChoice().(type) { - case *CreateSpecType_DisableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*CreateSpecType_DisableIpReputation).DisableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("disable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_EnableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*CreateSpecType_EnableIpReputation).EnableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("enable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["jwt_validation"]; exists { - - vOpts := append(opts, db.WithValidateField("jwt_validation")) - if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { - val := m.GetL7DdosAutoMitigationAction() - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetL7DdosAutoMitigationAction().(type) { - case *CreateSpecType_L7DdosActionDefault: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionDefault).L7DdosActionDefault - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_default"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_L7DdosActionBlock: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionBlock).L7DdosActionBlock - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_L7DdosActionJsChallenge: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_L7DdosActionNone: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionNone).L7DdosActionNone - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_none"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetLoadbalancerType().(type) { - case *CreateSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*CreateSpecType_Http).Http - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*CreateSpecType_Https).Https - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert).HttpsAutoCert - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { - val := m.GetMaliciousUserDetectionChoice() - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetMaliciousUserDetectionChoice().(type) { - case *CreateSpecType_EnableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("enable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_DisableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("disable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { - - vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) - if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { - return err - } - - } - - switch m.GetMlConfigChoice().(type) { - case *CreateSpecType_SingleLbApp: - if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { - val := m.GetMlConfigChoice().(*CreateSpecType_SingleLbApp).SingleLbApp - vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("single_lb_app"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_MultiLbApp: - if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { - val := m.GetMlConfigChoice().(*CreateSpecType_MultiLbApp).MultiLbApp - vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("multi_lb_app"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["more_option"]; exists { - - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { - return err - } - - } - - switch m.GetOriginPoolChoice().(type) { - case *CreateSpecType_DefaultPool: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { - val := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPool).DefaultPool - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_DefaultPoolList: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { - val := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPoolList).DefaultPoolList - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { - - vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) - if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["protected_cookies"]; exists { - vOpts := append(opts, db.WithValidateField("protected_cookies")) - if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["rate_limit_choice"]; exists { - val := m.GetRateLimitChoice() - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetRateLimitChoice().(type) { - case *CreateSpecType_DisableRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*CreateSpecType_DisableRateLimit).DisableRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("disable_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_RateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { - val := m.GetRateLimitChoice().(*CreateSpecType_RateLimit).RateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_ApiRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*CreateSpecType_ApiRateLimit).ApiRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("api_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["routes"]; exists { - vOpts := append(opts, db.WithValidateField("routes")) - if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["service_policy_choice"]; exists { - val := m.GetServicePolicyChoice() - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetServicePolicyChoice().(type) { - case *CreateSpecType_ServicePoliciesFromNamespace: - if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { - val := m.GetServicePolicyChoice().(*CreateSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("service_policies_from_namespace"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_NoServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*CreateSpecType_NoServicePolicies).NoServicePolicies - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("no_service_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_ActiveServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*CreateSpecType_ActiveServicePolicies).ActiveServicePolicies - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("active_service_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetSlowDdosMitigationChoice().(type) { - case *CreateSpecType_SlowDdosMitigation: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { - val := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SlowDdosMitigation).SlowDdosMitigation - vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("slow_ddos_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_SystemDefaultTimeouts: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { - val := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts - vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("system_default_timeouts"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["threat_intelligence_choice"]; exists { - val := m.GetThreatIntelligenceChoice() - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetThreatIntelligenceChoice().(type) { - case *CreateSpecType_DisableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.disable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*CreateSpecType_DisableThreatIntelligence).DisableThreatIntelligence - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("disable_threat_intelligence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_EnableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.enable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*CreateSpecType_EnableThreatIntelligence).EnableThreatIntelligence - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("enable_threat_intelligence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { - val := m.GetTrustClientIpHeadersChoice() - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetTrustClientIpHeadersChoice().(type) { - case *CreateSpecType_DisableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("disable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_EnableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("enable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["trusted_clients"]; exists { - vOpts := append(opts, db.WithValidateField("trusted_clients")) - if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["user_id_choice"]; exists { - val := m.GetUserIdChoice() - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetUserIdChoice().(type) { - case *CreateSpecType_UserIdentification: - if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { - val := m.GetUserIdChoice().(*CreateSpecType_UserIdentification).UserIdentification - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_identification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_UserIdClientIp: - if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { - val := m.GetUserIdChoice().(*CreateSpecType_UserIdClientIp).UserIdClientIp - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_id_client_ip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["waf_choice"]; exists { - val := m.GetWafChoice() - vOpts := append(opts, - db.WithValidateField("waf_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetWafChoice().(type) { - case *CreateSpecType_DisableWaf: - if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { - val := m.GetWafChoice().(*CreateSpecType_DisableWaf).DisableWaf - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("disable_waf"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *CreateSpecType_AppFirewall: - if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { - val := m.GetWafChoice().(*CreateSpecType_AppFirewall).AppFirewall - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("app_firewall"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { - vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) - if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { - v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler - rulesAdvertiseChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.advertise_choice: %s", err) - panic(errMsg) - } - v.FldValidators["advertise_choice"] = vFn - - vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler - rulesApiDefinitionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.api_definition_choice: %s", err) - panic(errMsg) - } - v.FldValidators["api_definition_choice"] = vFn - - vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler - rulesApiDiscoveryChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.api_discovery_choice: %s", err) - panic(errMsg) - } - v.FldValidators["api_discovery_choice"] = vFn - - vrhChallengeType := v.ChallengeTypeValidationRuleHandler - rulesChallengeType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhChallengeType(rulesChallengeType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.challenge_type: %s", err) - panic(errMsg) - } - v.FldValidators["challenge_type"] = vFn - - vrhDdosDetectionChoice := v.DdosDetectionChoiceValidationRuleHandler - rulesDdosDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDdosDetectionChoice(rulesDdosDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.ddos_detection_choice: %s", err) - panic(errMsg) - } - v.FldValidators["ddos_detection_choice"] = vFn - - vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler - rulesHashPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.hash_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["hash_policy_choice"] = vFn - - vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler - rulesL7DdosAutoMitigationAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.l7_ddos_auto_mitigation_action: %s", err) - panic(errMsg) - } - v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn - - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.loadbalancer_type: %s", err) - panic(errMsg) - } - v.FldValidators["loadbalancer_type"] = vFn - - vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler - rulesMaliciousUserDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.malicious_user_detection_choice: %s", err) - panic(errMsg) - } - v.FldValidators["malicious_user_detection_choice"] = vFn - - vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler - rulesRateLimitChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.rate_limit_choice: %s", err) - panic(errMsg) - } - v.FldValidators["rate_limit_choice"] = vFn - - vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler - rulesServicePolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.service_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["service_policy_choice"] = vFn - - vrhThreatIntelligenceChoice := v.ThreatIntelligenceChoiceValidationRuleHandler - rulesThreatIntelligenceChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhThreatIntelligenceChoice(rulesThreatIntelligenceChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.threat_intelligence_choice: %s", err) - panic(errMsg) - } - v.FldValidators["threat_intelligence_choice"] = vFn - - vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler - rulesTrustClientIpHeadersChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.trust_client_ip_headers_choice: %s", err) - panic(errMsg) - } - v.FldValidators["trust_client_ip_headers_choice"] = vFn - - vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler - rulesUserIdChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhUserIdChoice(rulesUserIdChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.user_id_choice: %s", err) - panic(errMsg) - } - v.FldValidators["user_id_choice"] = vFn - - vrhWafChoice := v.WafChoiceValidationRuleHandler - rulesWafChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhWafChoice(rulesWafChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.waf_choice: %s", err) - panic(errMsg) - } - v.FldValidators["waf_choice"] = vFn - - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.vh_domain": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhDomains(rulesDomains) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.domains: %s", err) - panic(errMsg) - } - v.FldValidators["domains"] = vFn - - vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler - rulesDefaultRoutePools := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.default_route_pools: %s", err) - panic(errMsg) - } - v.FldValidators["default_route_pools"] = vFn - - vrhRoutes := v.RoutesValidationRuleHandler - rulesRoutes := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRoutes(rulesRoutes) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.routes: %s", err) - panic(errMsg) - } - v.FldValidators["routes"] = vFn - - vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler - rulesWafExclusionRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.waf_exclusion_rules: %s", err) - panic(errMsg) - } - v.FldValidators["waf_exclusion_rules"] = vFn - - vrhBlockedClients := v.BlockedClientsValidationRuleHandler - rulesBlockedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhBlockedClients(rulesBlockedClients) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.blocked_clients: %s", err) - panic(errMsg) - } - v.FldValidators["blocked_clients"] = vFn - - vrhTrustedClients := v.TrustedClientsValidationRuleHandler - rulesTrustedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhTrustedClients(rulesTrustedClients) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.trusted_clients: %s", err) - panic(errMsg) - } - v.FldValidators["trusted_clients"] = vFn - - vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler - rulesDdosMitigationRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.ddos_mitigation_rules: %s", err) - panic(errMsg) - } - v.FldValidators["ddos_mitigation_rules"] = vFn - - vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler - rulesDataGuardRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDataGuardRules(rulesDataGuardRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.data_guard_rules: %s", err) - panic(errMsg) - } - v.FldValidators["data_guard_rules"] = vFn - - vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler - rulesGraphqlRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhGraphqlRules(rulesGraphqlRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.graphql_rules: %s", err) - panic(errMsg) - } - v.FldValidators["graphql_rules"] = vFn - - vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler - rulesProtectedCookies := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhProtectedCookies(rulesProtectedCookies) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.protected_cookies: %s", err) - panic(errMsg) - } - v.FldValidators["protected_cookies"] = vFn - - v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate - v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate - - v.FldValidators["api_definition_choice.api_definitions"] = ApiDefinitionListValidator().Validate - v.FldValidators["api_definition_choice.api_specification"] = APISpecificationSettingsValidator().Validate - v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_discovery_choice.enable_api_discovery"] = ApiDiscoverySettingValidator().Validate - - v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate - v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate - - v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate - v.FldValidators["challenge_type.policy_based_challenge"] = PolicyBasedChallengeValidator().Validate - v.FldValidators["challenge_type.enable_challenge"] = EnableChallengeValidator().Validate - - v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate - - v.FldValidators["ddos_detection_choice.enable_ddos_detection"] = EnableDDoSDetectionSettingValidator().Validate - - v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate - v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate - - v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = IPThreatCategoryListTypeValidator().Validate - - v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - - v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate - - v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate - - v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate - v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate - - v.FldValidators["rate_limit_choice.rate_limit"] = RateLimitConfigTypeValidator().Validate - v.FldValidators["rate_limit_choice.api_rate_limit"] = APIRateLimitValidator().Validate - - v.FldValidators["service_policy_choice.active_service_policies"] = ServicePolicyListValidator().Validate - - v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate - - v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate - - v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate - - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - - v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_protection_rules"] = APIProtectionRulesValidator().Validate - - v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate - - v.FldValidators["jwt_validation"] = JWTValidationValidator().Validate - - v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate - - return v -}() - -func CreateSpecTypeValidator() db.Validator { - return DefaultCreateSpecTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *CustomFallThroughMode) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CustomFallThroughMode) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CustomFallThroughMode) DeepCopy() *CustomFallThroughMode { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CustomFallThroughMode{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CustomFallThroughMode) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CustomFallThroughMode) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CustomFallThroughModeValidator().Validate(ctx, m, opts...) -} - -type ValidateCustomFallThroughMode struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCustomFallThroughMode) OpenApiValidationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for open_api_validation_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*FallThroughRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := FallThroughRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for open_api_validation_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*FallThroughRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*FallThroughRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated open_api_validation_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items open_api_validation_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCustomFallThroughMode) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CustomFallThroughMode) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CustomFallThroughMode got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["open_api_validation_rules"]; exists { - vOpts := append(opts, db.WithValidateField("open_api_validation_rules")) - if err := fv(ctx, m.GetOpenApiValidationRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCustomFallThroughModeValidator = func() *ValidateCustomFallThroughMode { - v := &ValidateCustomFallThroughMode{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhOpenApiValidationRules := v.OpenApiValidationRulesValidationRuleHandler - rulesOpenApiValidationRules := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "15", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhOpenApiValidationRules(rulesOpenApiValidationRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CustomFallThroughMode.open_api_validation_rules: %s", err) - panic(errMsg) - } - v.FldValidators["open_api_validation_rules"] = vFn - - return v -}() - -func CustomFallThroughModeValidator() db.Validator { - return DefaultCustomFallThroughModeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *CustomIpAllowedList) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *CustomIpAllowedList) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *CustomIpAllowedList) DeepCopy() *CustomIpAllowedList { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &CustomIpAllowedList{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *CustomIpAllowedList) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *CustomIpAllowedList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return CustomIpAllowedListValidator().Validate(ctx, m, opts...) -} - -func (m *CustomIpAllowedList) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetRateLimiterAllowedPrefixesDRefInfo() - -} - -func (m *CustomIpAllowedList) GetRateLimiterAllowedPrefixesDRefInfo() ([]db.DRefInfo, error) { - vrefs := m.GetRateLimiterAllowedPrefixes() - if len(vrefs) == 0 { - return nil, nil - } - drInfos := make([]db.DRefInfo, 0, len(vrefs)) - for i, vref := range vrefs { - if vref == nil { - return nil, fmt.Errorf("CustomIpAllowedList.rate_limiter_allowed_prefixes[%d] has a nil value", i) - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("ip_prefix_set.Object") - // resolve kind to type if needed at DBObject.GetDRefInfo() - drInfos = append(drInfos, db.DRefInfo{ - RefdType: "ip_prefix_set.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "rate_limiter_allowed_prefixes", - Ref: vdRef, - }) - } - return drInfos, nil - -} - -// GetRateLimiterAllowedPrefixesDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *CustomIpAllowedList) GetRateLimiterAllowedPrefixesDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "ip_prefix_set.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: ip_prefix_set") - } - for i, vref := range m.GetRateLimiterAllowedPrefixes() { - if vref == nil { - return nil, fmt.Errorf("CustomIpAllowedList.rate_limiter_allowed_prefixes[%d] has a nil value", i) - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "ip_prefix_set.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - } - - return entries, nil -} - -type ValidateCustomIpAllowedList struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateCustomIpAllowedList) RateLimiterAllowedPrefixesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for rate_limiter_allowed_prefixes") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rate_limiter_allowed_prefixes") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.ObjectRefType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated rate_limiter_allowed_prefixes") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items rate_limiter_allowed_prefixes") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateCustomIpAllowedList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*CustomIpAllowedList) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *CustomIpAllowedList got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["rate_limiter_allowed_prefixes"]; exists { - vOpts := append(opts, db.WithValidateField("rate_limiter_allowed_prefixes")) - if err := fv(ctx, m.GetRateLimiterAllowedPrefixes(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultCustomIpAllowedListValidator = func() *ValidateCustomIpAllowedList { - v := &ValidateCustomIpAllowedList{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhRateLimiterAllowedPrefixes := v.RateLimiterAllowedPrefixesValidationRuleHandler - rulesRateLimiterAllowedPrefixes := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "4", - "ves.io.schema.rules.repeated.min_items": "1", - } - vFn, err = vrhRateLimiterAllowedPrefixes(rulesRateLimiterAllowedPrefixes) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for CustomIpAllowedList.rate_limiter_allowed_prefixes: %s", err) - panic(errMsg) - } - v.FldValidators["rate_limiter_allowed_prefixes"] = vFn - - return v -}() - -func CustomIpAllowedListValidator() db.Validator { - return DefaultCustomIpAllowedListValidator -} - -// augmented methods on protoc/std generated struct - -func (m *DDoSClientSource) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *DDoSClientSource) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *DDoSClientSource) DeepCopy() *DDoSClientSource { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &DDoSClientSource{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *DDoSClientSource) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *DDoSClientSource) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return DDoSClientSourceValidator().Validate(ctx, m, opts...) -} - -type ValidateDDoSClientSource struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateDDoSClientSource) CountryListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema_policy.CountryCode) - return int32(i) - } - // ves_io_schema_policy.CountryCode_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema_policy.CountryCode_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for country_list") - } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema_policy.CountryCode, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for country_list") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema_policy.CountryCode) - if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema_policy.CountryCode, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated country_list") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items country_list") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateDDoSClientSource) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*DDoSClientSource) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *DDoSClientSource got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["asn_list"]; exists { - - vOpts := append(opts, db.WithValidateField("asn_list")) - if err := fv(ctx, m.GetAsnList(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["country_list"]; exists { - vOpts := append(opts, db.WithValidateField("country_list")) - if err := fv(ctx, m.GetCountryList(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["tls_fingerprint_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("tls_fingerprint_matcher")) - if err := fv(ctx, m.GetTlsFingerprintMatcher(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultDDoSClientSourceValidator = func() *ValidateDDoSClientSource { - v := &ValidateDDoSClientSource{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhCountryList := v.CountryListValidationRuleHandler - rulesCountryList := map[string]string{ - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.not_in": "[0]", - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhCountryList(rulesCountryList) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSClientSource.country_list: %s", err) - panic(errMsg) - } - v.FldValidators["country_list"] = vFn - - v.FldValidators["asn_list"] = ves_io_schema_policy.AsnMatchListValidator().Validate - - v.FldValidators["tls_fingerprint_matcher"] = ves_io_schema_policy.TlsFingerprintMatcherTypeValidator().Validate - - return v -}() - -func DDoSClientSourceValidator() db.Validator { - return DefaultDDoSClientSourceValidator -} - -// augmented methods on protoc/std generated struct - -func (m *DDoSMitigationRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *DDoSMitigationRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *DDoSMitigationRule) DeepCopy() *DDoSMitigationRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &DDoSMitigationRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *DDoSMitigationRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *DDoSMitigationRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return DDoSMitigationRuleValidator().Validate(ctx, m, opts...) -} - -type ValidateDDoSMitigationRule struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateDDoSMitigationRule) MitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for mitigation_action") - } - return validatorFn, nil -} - -func (v *ValidateDDoSMitigationRule) MitigationChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for mitigation_choice") - } - return validatorFn, nil -} - -func (v *ValidateDDoSMitigationRule) MitigationChoiceDdosClientSourceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - return DDoSClientSourceValidator().Validate, nil -} - -func (v *ValidateDDoSMitigationRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateDDoSMitigationRule) ExpirationTimestampValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - var ( - reqdValidatorFn db.ValidatorFunc - err error - ) - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if reqdValidatorFn != nil { - if err = reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - } - // TODO: lookup configured third-party type validators - return nil - } - - return validatorFn, nil -} - -func (v *ValidateDDoSMitigationRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*DDoSMitigationRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *DDoSMitigationRule got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["expiration_timestamp"]; exists { - - vOpts := append(opts, db.WithValidateField("expiration_timestamp")) - if err := fv(ctx, m.GetExpirationTimestamp(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["mitigation_action"]; exists { - val := m.GetMitigationAction() - vOpts := append(opts, - db.WithValidateField("mitigation_action"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetMitigationAction().(type) { - case *DDoSMitigationRule_Block: - if fv, exists := v.FldValidators["mitigation_action.block"]; exists { - val := m.GetMitigationAction().(*DDoSMitigationRule_Block).Block - vOpts := append(opts, - db.WithValidateField("mitigation_action"), - db.WithValidateField("block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["mitigation_choice"]; exists { - val := m.GetMitigationChoice() - vOpts := append(opts, - db.WithValidateField("mitigation_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetMitigationChoice().(type) { - case *DDoSMitigationRule_DdosClientSource: - if fv, exists := v.FldValidators["mitigation_choice.ddos_client_source"]; exists { - val := m.GetMitigationChoice().(*DDoSMitigationRule_DdosClientSource).DdosClientSource - vOpts := append(opts, - db.WithValidateField("mitigation_choice"), - db.WithValidateField("ddos_client_source"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *DDoSMitigationRule_IpPrefixList: - if fv, exists := v.FldValidators["mitigation_choice.ip_prefix_list"]; exists { - val := m.GetMitigationChoice().(*DDoSMitigationRule_IpPrefixList).IpPrefixList - vOpts := append(opts, - db.WithValidateField("mitigation_choice"), - db.WithValidateField("ip_prefix_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultDDoSMitigationRuleValidator = func() *ValidateDDoSMitigationRule { - v := &ValidateDDoSMitigationRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhMitigationAction := v.MitigationActionValidationRuleHandler - rulesMitigationAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMitigationAction(rulesMitigationAction) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.mitigation_action: %s", err) - panic(errMsg) - } - v.FldValidators["mitigation_action"] = vFn - - vrhMitigationChoice := v.MitigationChoiceValidationRuleHandler - rulesMitigationChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMitigationChoice(rulesMitigationChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.mitigation_choice: %s", err) - panic(errMsg) - } - v.FldValidators["mitigation_choice"] = vFn - - vrhMitigationChoiceDdosClientSource := v.MitigationChoiceDdosClientSourceValidationRuleHandler - rulesMitigationChoiceDdosClientSource := map[string]string{ - "ves.io.schema.rules.message.required_one_nonzero_field": "true", - } - vFnMap["mitigation_choice.ddos_client_source"], err = vrhMitigationChoiceDdosClientSource(rulesMitigationChoiceDdosClientSource) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field DDoSMitigationRule.mitigation_choice_ddos_client_source: %s", err) - panic(errMsg) - } - - v.FldValidators["mitigation_choice.ddos_client_source"] = vFnMap["mitigation_choice.ddos_client_source"] - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.metadata: %s", err) - panic(errMsg) - } - v.FldValidators["metadata"] = vFn - - vrhExpirationTimestamp := v.ExpirationTimestampValidationRuleHandler - rulesExpirationTimestamp := map[string]string{ - "ves.io.schema.rules.timestamp.within.seconds": "31536000", - } - vFn, err = vrhExpirationTimestamp(rulesExpirationTimestamp) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.expiration_timestamp: %s", err) - panic(errMsg) - } - v.FldValidators["expiration_timestamp"] = vFn - - v.FldValidators["mitigation_choice.ip_prefix_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate - - return v -}() - -func DDoSMitigationRuleValidator() db.Validator { - return DefaultDDoSMitigationRuleValidator -} - -// augmented methods on protoc/std generated struct - -func (m *EnableChallenge) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *EnableChallenge) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *EnableChallenge) DeepCopy() *EnableChallenge { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &EnableChallenge{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *EnableChallenge) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *EnableChallenge) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return EnableChallengeValidator().Validate(ctx, m, opts...) -} - -func (m *EnableChallenge) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetMaliciousUserMitigationChoiceDRefInfo() - -} - -func (m *EnableChallenge) GetMaliciousUserMitigationChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetMaliciousUserMitigationChoice().(type) { - case *EnableChallenge_DefaultMitigationSettings: - - return nil, nil - - case *EnableChallenge_MaliciousUserMitigation: - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("malicious_user_mitigation.Object") - dri := db.DRefInfo{ - RefdType: "malicious_user_mitigation.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "malicious_user_mitigation", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil - } -} - -// GetMaliciousUserMitigationChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *EnableChallenge) GetMaliciousUserMitigationChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetMaliciousUserMitigationChoice().(type) { - case *EnableChallenge_DefaultMitigationSettings: - - case *EnableChallenge_MaliciousUserMitigation: - refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") - } - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "malicious_user_mitigation.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - } - - return entries, nil -} - -type ValidateEnableChallenge struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateEnableChallenge) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*EnableChallenge) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *EnableChallenge got type %s", t) - } - } - if m == nil { - return nil - } - - switch m.GetCaptchaChallengeParametersChoice().(type) { - case *EnableChallenge_DefaultCaptchaChallengeParameters: - if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.default_captcha_challenge_parameters"]; exists { - val := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_DefaultCaptchaChallengeParameters).DefaultCaptchaChallengeParameters - vOpts := append(opts, - db.WithValidateField("captcha_challenge_parameters_choice"), - db.WithValidateField("default_captcha_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *EnableChallenge_CaptchaChallengeParameters: - if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"]; exists { - val := m.GetCaptchaChallengeParametersChoice().(*EnableChallenge_CaptchaChallengeParameters).CaptchaChallengeParameters - vOpts := append(opts, - db.WithValidateField("captcha_challenge_parameters_choice"), - db.WithValidateField("captcha_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetJsChallengeParametersChoice().(type) { - case *EnableChallenge_DefaultJsChallengeParameters: - if fv, exists := v.FldValidators["js_challenge_parameters_choice.default_js_challenge_parameters"]; exists { - val := m.GetJsChallengeParametersChoice().(*EnableChallenge_DefaultJsChallengeParameters).DefaultJsChallengeParameters - vOpts := append(opts, - db.WithValidateField("js_challenge_parameters_choice"), - db.WithValidateField("default_js_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *EnableChallenge_JsChallengeParameters: - if fv, exists := v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"]; exists { - val := m.GetJsChallengeParametersChoice().(*EnableChallenge_JsChallengeParameters).JsChallengeParameters - vOpts := append(opts, - db.WithValidateField("js_challenge_parameters_choice"), - db.WithValidateField("js_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetMaliciousUserMitigationChoice().(type) { - case *EnableChallenge_DefaultMitigationSettings: - if fv, exists := v.FldValidators["malicious_user_mitigation_choice.default_mitigation_settings"]; exists { - val := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_DefaultMitigationSettings).DefaultMitigationSettings - vOpts := append(opts, - db.WithValidateField("malicious_user_mitigation_choice"), - db.WithValidateField("default_mitigation_settings"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *EnableChallenge_MaliciousUserMitigation: - if fv, exists := v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"]; exists { - val := m.GetMaliciousUserMitigationChoice().(*EnableChallenge_MaliciousUserMitigation).MaliciousUserMitigation - vOpts := append(opts, - db.WithValidateField("malicious_user_mitigation_choice"), - db.WithValidateField("malicious_user_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultEnableChallengeValidator = func() *ValidateEnableChallenge { - v := &ValidateEnableChallenge{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate - - v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - - v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - return v -}() - -func EnableChallengeValidator() db.Validator { - return DefaultEnableChallengeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *EnableDDoSDetectionSetting) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *EnableDDoSDetectionSetting) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *EnableDDoSDetectionSetting) DeepCopy() *EnableDDoSDetectionSetting { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &EnableDDoSDetectionSetting{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *EnableDDoSDetectionSetting) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *EnableDDoSDetectionSetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return EnableDDoSDetectionSettingValidator().Validate(ctx, m, opts...) -} - -type ValidateEnableDDoSDetectionSetting struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateEnableDDoSDetectionSetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*EnableDDoSDetectionSetting) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *EnableDDoSDetectionSetting got type %s", t) - } - } - if m == nil { - return nil - } - - switch m.GetAutoMitigationChoice().(type) { - case *EnableDDoSDetectionSetting_EnableAutoMitigation: - if fv, exists := v.FldValidators["auto_mitigation_choice.enable_auto_mitigation"]; exists { - val := m.GetAutoMitigationChoice().(*EnableDDoSDetectionSetting_EnableAutoMitigation).EnableAutoMitigation - vOpts := append(opts, - db.WithValidateField("auto_mitigation_choice"), - db.WithValidateField("enable_auto_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *EnableDDoSDetectionSetting_DisableAutoMitigation: - if fv, exists := v.FldValidators["auto_mitigation_choice.disable_auto_mitigation"]; exists { - val := m.GetAutoMitigationChoice().(*EnableDDoSDetectionSetting_DisableAutoMitigation).DisableAutoMitigation - vOpts := append(opts, - db.WithValidateField("auto_mitigation_choice"), - db.WithValidateField("disable_auto_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultEnableDDoSDetectionSettingValidator = func() *ValidateEnableDDoSDetectionSetting { - v := &ValidateEnableDDoSDetectionSetting{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["auto_mitigation_choice.enable_auto_mitigation"] = AutoMitigationActionValidator().Validate - - return v -}() - -func EnableDDoSDetectionSettingValidator() db.Validator { - return DefaultEnableDDoSDetectionSettingValidator -} - -// augmented methods on protoc/std generated struct - -func (m *FallThroughRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *FallThroughRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *FallThroughRule) DeepCopy() *FallThroughRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &FallThroughRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *FallThroughRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *FallThroughRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return FallThroughRuleValidator().Validate(ctx, m, opts...) -} - -type ValidateFallThroughRule struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateFallThroughRule) ActionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for action_choice") - } - return validatorFn, nil -} - -func (v *ValidateFallThroughRule) ConditionTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for condition_type_choice") - } - return validatorFn, nil -} - -func (v *ValidateFallThroughRule) ConditionTypeChoiceBasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_BasePath, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") - } - return oValidatorFn_BasePath, nil -} -func (v *ValidateFallThroughRule) ConditionTypeChoiceApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ApiGroup, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") - } - return oValidatorFn_ApiGroup, nil -} - -func (v *ValidateFallThroughRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateFallThroughRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*FallThroughRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *FallThroughRule got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["action_choice"]; exists { - val := m.GetActionChoice() - vOpts := append(opts, - db.WithValidateField("action_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetActionChoice().(type) { - case *FallThroughRule_ActionSkip: - if fv, exists := v.FldValidators["action_choice.action_skip"]; exists { - val := m.GetActionChoice().(*FallThroughRule_ActionSkip).ActionSkip - vOpts := append(opts, - db.WithValidateField("action_choice"), - db.WithValidateField("action_skip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *FallThroughRule_ActionReport: - if fv, exists := v.FldValidators["action_choice.action_report"]; exists { - val := m.GetActionChoice().(*FallThroughRule_ActionReport).ActionReport - vOpts := append(opts, - db.WithValidateField("action_choice"), - db.WithValidateField("action_report"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *FallThroughRule_ActionBlock: - if fv, exists := v.FldValidators["action_choice.action_block"]; exists { - val := m.GetActionChoice().(*FallThroughRule_ActionBlock).ActionBlock - vOpts := append(opts, - db.WithValidateField("action_choice"), - db.WithValidateField("action_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["condition_type_choice"]; exists { - val := m.GetConditionTypeChoice() - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetConditionTypeChoice().(type) { - case *FallThroughRule_BasePath: - if fv, exists := v.FldValidators["condition_type_choice.base_path"]; exists { - val := m.GetConditionTypeChoice().(*FallThroughRule_BasePath).BasePath - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - db.WithValidateField("base_path"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *FallThroughRule_ApiGroup: - if fv, exists := v.FldValidators["condition_type_choice.api_group"]; exists { - val := m.GetConditionTypeChoice().(*FallThroughRule_ApiGroup).ApiGroup - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - db.WithValidateField("api_group"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *FallThroughRule_ApiEndpoint: - if fv, exists := v.FldValidators["condition_type_choice.api_endpoint"]; exists { - val := m.GetConditionTypeChoice().(*FallThroughRule_ApiEndpoint).ApiEndpoint - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - db.WithValidateField("api_endpoint"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultFallThroughRuleValidator = func() *ValidateFallThroughRule { - v := &ValidateFallThroughRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhActionChoice := v.ActionChoiceValidationRuleHandler - rulesActionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhActionChoice(rulesActionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for FallThroughRule.action_choice: %s", err) - panic(errMsg) - } - v.FldValidators["action_choice"] = vFn - - vrhConditionTypeChoice := v.ConditionTypeChoiceValidationRuleHandler - rulesConditionTypeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhConditionTypeChoice(rulesConditionTypeChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for FallThroughRule.condition_type_choice: %s", err) - panic(errMsg) - } - v.FldValidators["condition_type_choice"] = vFn - - vrhConditionTypeChoiceBasePath := v.ConditionTypeChoiceBasePathValidationRuleHandler - rulesConditionTypeChoiceBasePath := map[string]string{ - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128", - } - vFnMap["condition_type_choice.base_path"], err = vrhConditionTypeChoiceBasePath(rulesConditionTypeChoiceBasePath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field FallThroughRule.condition_type_choice_base_path: %s", err) - panic(errMsg) - } - vrhConditionTypeChoiceApiGroup := v.ConditionTypeChoiceApiGroupValidationRuleHandler - rulesConditionTypeChoiceApiGroup := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - } - vFnMap["condition_type_choice.api_group"], err = vrhConditionTypeChoiceApiGroup(rulesConditionTypeChoiceApiGroup) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field FallThroughRule.condition_type_choice_api_group: %s", err) - panic(errMsg) - } - - v.FldValidators["condition_type_choice.base_path"] = vFnMap["condition_type_choice.base_path"] - v.FldValidators["condition_type_choice.api_group"] = vFnMap["condition_type_choice.api_group"] - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for FallThroughRule.metadata: %s", err) - panic(errMsg) - } - v.FldValidators["metadata"] = vFn - - v.FldValidators["condition_type_choice.api_endpoint"] = ApiEndpointDetailsValidator().Validate - - return v -}() - -func FallThroughRuleValidator() db.Validator { - return DefaultFallThroughRuleValidator -} - -// augmented methods on protoc/std generated struct - -func (m *GetSpecType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *GetSpecType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -// Redact squashes sensitive info in m (in-place) -func (m *GetSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.https") - } - - for idx, e := range m.GetRoutes() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.routes idx %v", idx) - } - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.more_option") - } - - if err := m.GetDefaultPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.default_pool") - } - - if err := m.GetJwtValidation().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GetSpecType.jwt_validation") - } - - return nil -} - -func (m *GetSpecType) DeepCopy() *GetSpecType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &GetSpecType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *GetSpecType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GetSpecTypeValidator().Validate(ctx, m, opts...) -} - -func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetAdvertiseChoice() == nil { - return nil, nil - } - switch m.GetAdvertiseChoice().(type) { - case *GetSpecType_AdvertiseOnPublic: - - drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_on_public." + dri.DRField - } - return drInfos, err - - case *GetSpecType_AdvertiseCustom: - - drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_custom." + dri.DRField - } - return drInfos, err - - case *GetSpecType_DoNotAdvertise: - - return nil, nil - - case *GetSpecType_AdvertiseOnPublicDefaultVip: - - return nil, nil - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiDefinitionChoice() == nil { - return nil, nil - } - switch m.GetApiDefinitionChoice().(type) { - case *GetSpecType_ApiDefinitions: - - drInfos, err := m.GetApiDefinitions().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_definitions." + dri.DRField - } - return drInfos, err - - case *GetSpecType_ApiSpecification: - - drInfos, err := m.GetApiSpecification().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_specification." + dri.DRField - } - return drInfos, err - - case *GetSpecType_DisableApiDefinition: - - return nil, nil - - case *GetSpecType_ApiDefinition: - - vref := m.GetApiDefinition() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("api_definition.Object") - dri := db.DRefInfo{ - RefdType: "api_definition.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "api_definition", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiProtectionRules() == nil { - return nil, nil - } - - drInfos, err := m.GetApiProtectionRules().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_protection_rules." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetBotDefenseChoice() == nil { - return nil, nil - } - switch m.GetBotDefenseChoice().(type) { - case *GetSpecType_DisableBotDefense: - - return nil, nil - - case *GetSpecType_BotDefense: - - return nil, nil - - case *GetSpecType_BotDefenseAdvanced: - - drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "bot_defense_advanced." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetChallengeType() == nil { - return nil, nil - } - switch m.GetChallengeType().(type) { - case *GetSpecType_JsChallenge: - - return nil, nil - - case *GetSpecType_CaptchaChallenge: - - return nil, nil - - case *GetSpecType_NoChallenge: - - return nil, nil - - case *GetSpecType_PolicyBasedChallenge: - - drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "policy_based_challenge." + dri.DRField - } - return drInfos, err - - case *GetSpecType_EnableChallenge: - - drInfos, err := m.GetEnableChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "enable_challenge." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { - if m.GetDefaultRoutePools() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetDefaultRoutePools() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetLoadbalancerType() == nil { - return nil, nil - } - switch m.GetLoadbalancerType().(type) { - case *GetSpecType_Http: - - return nil, nil - - case *GetSpecType_Https: - - drInfos, err := m.GetHttps().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https." + dri.DRField - } - return drInfos, err - - case *GetSpecType_HttpsAutoCert: - - drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https_auto_cert." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -func (m *GetSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("malicious_user_mitigation.Object") - dri := db.DRefInfo{ - RefdType: "malicious_user_mitigation.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "malicious_user_mitigation", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - -} - -// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GetSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") - } - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "malicious_user_mitigation.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - return entries, nil -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { - if m.GetMoreOption() == nil { - return nil, nil - } - - drInfos, err := m.GetMoreOption().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "more_option." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPoolChoice() == nil { - return nil, nil - } - switch m.GetOriginPoolChoice().(type) { - case *GetSpecType_DefaultPool: - - drInfos, err := m.GetDefaultPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool." + dri.DRField - } - return drInfos, err - - case *GetSpecType_DefaultPoolList: - - drInfos, err := m.GetDefaultPoolList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool_list." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginServerSubsetRuleList() == nil { - return nil, nil - } - - drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_server_subset_rule_list." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetRateLimitChoice() == nil { - return nil, nil - } - switch m.GetRateLimitChoice().(type) { - case *GetSpecType_DisableRateLimit: - - return nil, nil - - case *GetSpecType_RateLimit: - - drInfos, err := m.GetRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "rate_limit." + dri.DRField - } - return drInfos, err - - case *GetSpecType_ApiRateLimit: - - drInfos, err := m.GetApiRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_rate_limit." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { - if m.GetRoutes() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetRoutes() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *GetSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetServicePolicyChoice() == nil { - return nil, nil - } - switch m.GetServicePolicyChoice().(type) { - case *GetSpecType_ServicePoliciesFromNamespace: - - return nil, nil - - case *GetSpecType_NoServicePolicies: - - return nil, nil - - case *GetSpecType_ActiveServicePolicies: - - drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "active_service_policies." + dri.DRField - } - return drInfos, err - - default: - return nil, nil - } - -} - -func (m *GetSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetUserIdChoice().(type) { - case *GetSpecType_UserIdentification: - - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("user_identification.Object") - dri := db.DRefInfo{ - RefdType: "user_identification.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "user_identification", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - case *GetSpecType_UserIdClientIp: - - return nil, nil - - default: - return nil, nil - } -} - -// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GetSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetUserIdChoice().(type) { - case *GetSpecType_UserIdentification: - refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") - } - - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "user_identification.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - case *GetSpecType_UserIdClientIp: - - } - - return entries, nil -} - -func (m *GetSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetWafChoice().(type) { - case *GetSpecType_DisableWaf: - - return nil, nil - - case *GetSpecType_AppFirewall: - - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("app_firewall.Object") - dri := db.DRefInfo{ - RefdType: "app_firewall.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "app_firewall", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil - } -} - -// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GetSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetWafChoice().(type) { - case *GetSpecType_DisableWaf: - - case *GetSpecType_AppFirewall: - refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") - } - - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "app_firewall.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - } - - return entries, nil -} - -type ValidateGetSpecType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateGetSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) DdosDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ddos_detection_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) ThreatIntelligenceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for threat_intelligence_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") - } - return validatorFn, nil -} - -func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated default_route_pools") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items default_route_pools") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") - } - itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*RouteType) - if !ok { - return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated routes") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items routes") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated waf_exclusion_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items waf_exclusion_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") - } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated blocked_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items blocked_clients") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") - } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated trusted_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items trusted_clients") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*DDoSMitigationRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated ddos_mitigation_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items ddos_mitigation_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated data_guard_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items data_guard_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated graphql_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items graphql_rules") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated protected_cookies") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items protected_cookies") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GetSpecType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *GetSpecType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["add_location"]; exists { - - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["advertise_choice"]; exists { - val := m.GetAdvertiseChoice() - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetAdvertiseChoice().(type) { - case *GetSpecType_AdvertiseOnPublic: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { - val := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublic).AdvertiseOnPublic - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_AdvertiseCustom: - if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { - val := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseCustom).AdvertiseCustom - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_custom"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_DoNotAdvertise: - if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { - val := m.GetAdvertiseChoice().(*GetSpecType_DoNotAdvertise).DoNotAdvertise - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("do_not_advertise"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_AdvertiseOnPublicDefaultVip: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { - val := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public_default_vip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["api_definition_choice"]; exists { - val := m.GetApiDefinitionChoice() - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetApiDefinitionChoice().(type) { - case *GetSpecType_ApiDefinitions: - if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { - val := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinitions).ApiDefinitions - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definitions"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_ApiSpecification: - if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { - val := m.GetApiDefinitionChoice().(*GetSpecType_ApiSpecification).ApiSpecification - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_specification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_DisableApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*GetSpecType_DisableApiDefinition).DisableApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("disable_api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_ApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinition).ApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["api_discovery_choice"]; exists { - val := m.GetApiDiscoveryChoice() - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetApiDiscoveryChoice().(type) { - case *GetSpecType_EnableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*GetSpecType_EnableApiDiscovery).EnableApiDiscovery - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("enable_api_discovery"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_DisableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*GetSpecType_DisableApiDiscovery).DisableApiDiscovery - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("disable_api_discovery"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["api_protection_rules"]; exists { - - vOpts := append(opts, db.WithValidateField("api_protection_rules")) - if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["auto_cert_info"]; exists { - - vOpts := append(opts, db.WithValidateField("auto_cert_info")) - if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["blocked_clients"]; exists { - vOpts := append(opts, db.WithValidateField("blocked_clients")) - if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { - return err - } - - } - - switch m.GetBotDefenseChoice().(type) { - case *GetSpecType_DisableBotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*GetSpecType_DisableBotDefense).DisableBotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("disable_bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_BotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*GetSpecType_BotDefense).BotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_BotDefenseAdvanced: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { - val := m.GetBotDefenseChoice().(*GetSpecType_BotDefenseAdvanced).BotDefenseAdvanced - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense_advanced"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["cert_state"]; exists { - - vOpts := append(opts, db.WithValidateField("cert_state")) - if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["challenge_type"]; exists { - val := m.GetChallengeType() - vOpts := append(opts, - db.WithValidateField("challenge_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetChallengeType().(type) { - case *GetSpecType_JsChallenge: - if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { - val := m.GetChallengeType().(*GetSpecType_JsChallenge).JsChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_CaptchaChallenge: - if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { - val := m.GetChallengeType().(*GetSpecType_CaptchaChallenge).CaptchaChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("captcha_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_NoChallenge: - if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { - val := m.GetChallengeType().(*GetSpecType_NoChallenge).NoChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("no_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_PolicyBasedChallenge: - if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { - val := m.GetChallengeType().(*GetSpecType_PolicyBasedChallenge).PolicyBasedChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("policy_based_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_EnableChallenge: - if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { - val := m.GetChallengeType().(*GetSpecType_EnableChallenge).EnableChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("enable_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetClientSideDefenseChoice().(type) { - case *GetSpecType_DisableClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*GetSpecType_DisableClientSideDefense).DisableClientSideDefense - vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("disable_client_side_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_ClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*GetSpecType_ClientSideDefense).ClientSideDefense - vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("client_side_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["cors_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("cors_policy")) - if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["csrf_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("csrf_policy")) - if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["data_guard_rules"]; exists { - vOpts := append(opts, db.WithValidateField("data_guard_rules")) - if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["ddos_detection_choice"]; exists { - val := m.GetDdosDetectionChoice() - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetDdosDetectionChoice().(type) { - case *GetSpecType_EnableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.enable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*GetSpecType_EnableDdosDetection).EnableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("enable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_DisableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.disable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*GetSpecType_DisableDdosDetection).DisableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("disable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { - vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) - if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["default_route_pools"]; exists { - vOpts := append(opts, db.WithValidateField("default_route_pools")) - if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["dns_info"]; exists { - - vOpts := append(opts, db.WithValidateField("dns_info")) - for idx, item := range m.GetDnsInfo() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["downstream_tls_certificate_expiration_timestamps"]; exists { - - vOpts := append(opts, db.WithValidateField("downstream_tls_certificate_expiration_timestamps")) - for idx, item := range m.GetDownstreamTlsCertificateExpirationTimestamps() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["graphql_rules"]; exists { - vOpts := append(opts, db.WithValidateField("graphql_rules")) - if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["hash_policy_choice"]; exists { - val := m.GetHashPolicyChoice() - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetHashPolicyChoice().(type) { - case *GetSpecType_RoundRobin: - if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { - val := m.GetHashPolicyChoice().(*GetSpecType_RoundRobin).RoundRobin - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("round_robin"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_LeastActive: - if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { - val := m.GetHashPolicyChoice().(*GetSpecType_LeastActive).LeastActive - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("least_active"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_Random: - if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { - val := m.GetHashPolicyChoice().(*GetSpecType_Random).Random - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("random"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_SourceIpStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*GetSpecType_SourceIpStickiness).SourceIpStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("source_ip_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_CookieStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*GetSpecType_CookieStickiness).CookieStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("cookie_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_RingHash: - if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { - val := m.GetHashPolicyChoice().(*GetSpecType_RingHash).RingHash - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("ring_hash"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["host_name"]; exists { - - vOpts := append(opts, db.WithValidateField("host_name")) - if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["internet_vip_info"]; exists { - - vOpts := append(opts, db.WithValidateField("internet_vip_info")) - for idx, item := range m.GetInternetVipInfo() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetIpReputationChoice().(type) { - case *GetSpecType_DisableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*GetSpecType_DisableIpReputation).DisableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("disable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_EnableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*GetSpecType_EnableIpReputation).EnableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("enable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["jwt_validation"]; exists { - - vOpts := append(opts, db.WithValidateField("jwt_validation")) - if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { - val := m.GetL7DdosAutoMitigationAction() - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetL7DdosAutoMitigationAction().(type) { - case *GetSpecType_L7DdosActionDefault: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionDefault).L7DdosActionDefault - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_default"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_L7DdosActionBlock: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionBlock).L7DdosActionBlock - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_L7DdosActionJsChallenge: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_L7DdosActionNone: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionNone).L7DdosActionNone - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_none"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetLoadbalancerType().(type) { - case *GetSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*GetSpecType_Http).Http - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*GetSpecType_Https).Https - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert).HttpsAutoCert - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { - val := m.GetMaliciousUserDetectionChoice() - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetMaliciousUserDetectionChoice().(type) { - case *GetSpecType_EnableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*GetSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("enable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_DisableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*GetSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("disable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { - - vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) - if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { - return err - } - - } - - switch m.GetMlConfigChoice().(type) { - case *GetSpecType_SingleLbApp: - if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { - val := m.GetMlConfigChoice().(*GetSpecType_SingleLbApp).SingleLbApp - vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("single_lb_app"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_MultiLbApp: - if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { - val := m.GetMlConfigChoice().(*GetSpecType_MultiLbApp).MultiLbApp - vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("multi_lb_app"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["more_option"]; exists { - - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { - return err - } - - } - - switch m.GetOriginPoolChoice().(type) { - case *GetSpecType_DefaultPool: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { - val := m.GetOriginPoolChoice().(*GetSpecType_DefaultPool).DefaultPool - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_DefaultPoolList: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { - val := m.GetOriginPoolChoice().(*GetSpecType_DefaultPoolList).DefaultPoolList - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { - - vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) - if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["protected_cookies"]; exists { - vOpts := append(opts, db.WithValidateField("protected_cookies")) - if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["rate_limit_choice"]; exists { - val := m.GetRateLimitChoice() - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetRateLimitChoice().(type) { - case *GetSpecType_DisableRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*GetSpecType_DisableRateLimit).DisableRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("disable_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_RateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { - val := m.GetRateLimitChoice().(*GetSpecType_RateLimit).RateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_ApiRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*GetSpecType_ApiRateLimit).ApiRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("api_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["routes"]; exists { - vOpts := append(opts, db.WithValidateField("routes")) - if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["service_policy_choice"]; exists { - val := m.GetServicePolicyChoice() - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetServicePolicyChoice().(type) { - case *GetSpecType_ServicePoliciesFromNamespace: - if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { - val := m.GetServicePolicyChoice().(*GetSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("service_policies_from_namespace"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_NoServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*GetSpecType_NoServicePolicies).NoServicePolicies - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("no_service_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_ActiveServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*GetSpecType_ActiveServicePolicies).ActiveServicePolicies - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("active_service_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - switch m.GetSlowDdosMitigationChoice().(type) { - case *GetSpecType_SlowDdosMitigation: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { - val := m.GetSlowDdosMitigationChoice().(*GetSpecType_SlowDdosMitigation).SlowDdosMitigation - vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("slow_ddos_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_SystemDefaultTimeouts: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { - val := m.GetSlowDdosMitigationChoice().(*GetSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts - vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("system_default_timeouts"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["state"]; exists { - - vOpts := append(opts, db.WithValidateField("state")) - if err := fv(ctx, m.GetState(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["threat_intelligence_choice"]; exists { - val := m.GetThreatIntelligenceChoice() - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetThreatIntelligenceChoice().(type) { - case *GetSpecType_DisableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.disable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*GetSpecType_DisableThreatIntelligence).DisableThreatIntelligence - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("disable_threat_intelligence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_EnableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.enable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*GetSpecType_EnableThreatIntelligence).EnableThreatIntelligence - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("enable_threat_intelligence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { - val := m.GetTrustClientIpHeadersChoice() - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetTrustClientIpHeadersChoice().(type) { - case *GetSpecType_DisableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*GetSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("disable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_EnableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*GetSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("enable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["trusted_clients"]; exists { - vOpts := append(opts, db.WithValidateField("trusted_clients")) - if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["user_id_choice"]; exists { - val := m.GetUserIdChoice() - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetUserIdChoice().(type) { - case *GetSpecType_UserIdentification: - if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { - val := m.GetUserIdChoice().(*GetSpecType_UserIdentification).UserIdentification - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_identification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_UserIdClientIp: - if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { - val := m.GetUserIdChoice().(*GetSpecType_UserIdClientIp).UserIdClientIp - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_id_client_ip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["waf_choice"]; exists { - val := m.GetWafChoice() - vOpts := append(opts, - db.WithValidateField("waf_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetWafChoice().(type) { - case *GetSpecType_DisableWaf: - if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { - val := m.GetWafChoice().(*GetSpecType_DisableWaf).DisableWaf - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("disable_waf"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GetSpecType_AppFirewall: - if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { - val := m.GetWafChoice().(*GetSpecType_AppFirewall).AppFirewall - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("app_firewall"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { - vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) - if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { - v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler - rulesAdvertiseChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.advertise_choice: %s", err) - panic(errMsg) - } - v.FldValidators["advertise_choice"] = vFn - - vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler - rulesApiDefinitionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.api_definition_choice: %s", err) - panic(errMsg) - } - v.FldValidators["api_definition_choice"] = vFn - - vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler - rulesApiDiscoveryChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.api_discovery_choice: %s", err) - panic(errMsg) - } - v.FldValidators["api_discovery_choice"] = vFn - - vrhChallengeType := v.ChallengeTypeValidationRuleHandler - rulesChallengeType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhChallengeType(rulesChallengeType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.challenge_type: %s", err) - panic(errMsg) - } - v.FldValidators["challenge_type"] = vFn - - vrhDdosDetectionChoice := v.DdosDetectionChoiceValidationRuleHandler - rulesDdosDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDdosDetectionChoice(rulesDdosDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.ddos_detection_choice: %s", err) - panic(errMsg) - } - v.FldValidators["ddos_detection_choice"] = vFn - - vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler - rulesHashPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.hash_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["hash_policy_choice"] = vFn - - vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler - rulesL7DdosAutoMitigationAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.l7_ddos_auto_mitigation_action: %s", err) - panic(errMsg) - } - v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn - - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.loadbalancer_type: %s", err) - panic(errMsg) - } - v.FldValidators["loadbalancer_type"] = vFn - - vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler - rulesMaliciousUserDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.malicious_user_detection_choice: %s", err) - panic(errMsg) - } - v.FldValidators["malicious_user_detection_choice"] = vFn - - vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler - rulesRateLimitChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.rate_limit_choice: %s", err) - panic(errMsg) - } - v.FldValidators["rate_limit_choice"] = vFn - - vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler - rulesServicePolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.service_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["service_policy_choice"] = vFn - - vrhThreatIntelligenceChoice := v.ThreatIntelligenceChoiceValidationRuleHandler - rulesThreatIntelligenceChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhThreatIntelligenceChoice(rulesThreatIntelligenceChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.threat_intelligence_choice: %s", err) - panic(errMsg) - } - v.FldValidators["threat_intelligence_choice"] = vFn - - vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler - rulesTrustClientIpHeadersChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.trust_client_ip_headers_choice: %s", err) - panic(errMsg) - } - v.FldValidators["trust_client_ip_headers_choice"] = vFn - - vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler - rulesUserIdChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhUserIdChoice(rulesUserIdChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.user_id_choice: %s", err) - panic(errMsg) - } - v.FldValidators["user_id_choice"] = vFn - - vrhWafChoice := v.WafChoiceValidationRuleHandler - rulesWafChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhWafChoice(rulesWafChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.waf_choice: %s", err) - panic(errMsg) - } - v.FldValidators["waf_choice"] = vFn - - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.vh_domain": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhDomains(rulesDomains) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.domains: %s", err) - panic(errMsg) - } - v.FldValidators["domains"] = vFn - - vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler - rulesDefaultRoutePools := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.default_route_pools: %s", err) - panic(errMsg) - } - v.FldValidators["default_route_pools"] = vFn - - vrhRoutes := v.RoutesValidationRuleHandler - rulesRoutes := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRoutes(rulesRoutes) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.routes: %s", err) - panic(errMsg) - } - v.FldValidators["routes"] = vFn - - vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler - rulesWafExclusionRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.waf_exclusion_rules: %s", err) - panic(errMsg) - } - v.FldValidators["waf_exclusion_rules"] = vFn - - vrhBlockedClients := v.BlockedClientsValidationRuleHandler - rulesBlockedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhBlockedClients(rulesBlockedClients) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.blocked_clients: %s", err) - panic(errMsg) - } - v.FldValidators["blocked_clients"] = vFn - - vrhTrustedClients := v.TrustedClientsValidationRuleHandler - rulesTrustedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhTrustedClients(rulesTrustedClients) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.trusted_clients: %s", err) - panic(errMsg) - } - v.FldValidators["trusted_clients"] = vFn - - vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler - rulesDdosMitigationRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.ddos_mitigation_rules: %s", err) - panic(errMsg) - } - v.FldValidators["ddos_mitigation_rules"] = vFn - - vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler - rulesDataGuardRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDataGuardRules(rulesDataGuardRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.data_guard_rules: %s", err) - panic(errMsg) - } - v.FldValidators["data_guard_rules"] = vFn - - vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler - rulesGraphqlRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhGraphqlRules(rulesGraphqlRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.graphql_rules: %s", err) - panic(errMsg) - } - v.FldValidators["graphql_rules"] = vFn - - vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler - rulesProtectedCookies := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhProtectedCookies(rulesProtectedCookies) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.protected_cookies: %s", err) - panic(errMsg) - } - v.FldValidators["protected_cookies"] = vFn - - v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate - v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate - - v.FldValidators["api_definition_choice.api_definitions"] = ApiDefinitionListValidator().Validate - v.FldValidators["api_definition_choice.api_specification"] = APISpecificationSettingsValidator().Validate - v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_discovery_choice.enable_api_discovery"] = ApiDiscoverySettingValidator().Validate - - v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate - v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate - - v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate - v.FldValidators["challenge_type.policy_based_challenge"] = PolicyBasedChallengeValidator().Validate - v.FldValidators["challenge_type.enable_challenge"] = EnableChallengeValidator().Validate - - v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate - - v.FldValidators["ddos_detection_choice.enable_ddos_detection"] = EnableDDoSDetectionSettingValidator().Validate - - v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate - v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate - - v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = IPThreatCategoryListTypeValidator().Validate - - v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - - v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate - - v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate - - v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate - v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate - - v.FldValidators["rate_limit_choice.rate_limit"] = RateLimitConfigTypeValidator().Validate - v.FldValidators["rate_limit_choice.api_rate_limit"] = APIRateLimitValidator().Validate - - v.FldValidators["service_policy_choice.active_service_policies"] = ServicePolicyListValidator().Validate - - v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate - - v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate - - v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate - - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - - v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_protection_rules"] = APIProtectionRulesValidator().Validate - - v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate - - v.FldValidators["jwt_validation"] = JWTValidationValidator().Validate - - v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate - - v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate - - return v -}() - -func GetSpecTypeValidator() db.Validator { - return DefaultGetSpecTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *GlobalSpecType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *GlobalSpecType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -// Redact squashes sensitive info in m (in-place) -func (m *GlobalSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.https") - } - - for idx, e := range m.GetRoutes() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.routes idx %v", idx) - } - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.more_option") - } - - if err := m.GetDefaultPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.default_pool") - } - - if err := m.GetJwtValidation().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting GlobalSpecType.jwt_validation") - } - - return nil -} - -func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &GlobalSpecType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *GlobalSpecType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return GlobalSpecTypeValidator().Validate(ctx, m, opts...) -} - -func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetViewInternalDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetViewInternalDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetAdvertiseChoice() == nil { - return nil, nil - } - switch m.GetAdvertiseChoice().(type) { - case *GlobalSpecType_AdvertiseOnPublic: - - drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") + switch m.GetApiDefinitionChoice().(type) { + case *CreateSpecType_ApiDefinitions: + if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { + val := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinitions).ApiDefinitions + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definitions"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_on_public." + dri.DRField + case *CreateSpecType_ApiSpecification: + if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { + val := m.GetApiDefinitionChoice().(*CreateSpecType_ApiSpecification).ApiSpecification + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_specification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - - case *GlobalSpecType_AdvertiseCustom: - - drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") + case *CreateSpecType_DisableApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*CreateSpecType_DisableApiDefinition).DisableApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("disable_api_definition"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_custom." + dri.DRField + case *CreateSpecType_ApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*CreateSpecType_ApiDefinition).ApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definition"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - - case *GlobalSpecType_DoNotAdvertise: - - return nil, nil - - case *GlobalSpecType_AdvertiseOnPublicDefaultVip: - - return nil, nil - - default: - return nil, nil - } - -} -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiDefinitionChoice() == nil { - return nil, nil } - switch m.GetApiDefinitionChoice().(type) { - case *GlobalSpecType_ApiDefinitions: - drInfos, err := m.GetApiDefinitions().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_definitions." + dri.DRField + if fv, exists := v.FldValidators["api_discovery_choice"]; exists { + val := m.GetApiDiscoveryChoice() + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - return drInfos, err - - case *GlobalSpecType_ApiSpecification: + } - drInfos, err := m.GetApiSpecification().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") + switch m.GetApiDiscoveryChoice().(type) { + case *CreateSpecType_EnableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*CreateSpecType_EnableApiDiscovery).EnableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("enable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_specification." + dri.DRField + case *CreateSpecType_DisableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*CreateSpecType_DisableApiDiscovery).DisableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("disable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - case *GlobalSpecType_DisableApiDefinition: - - return nil, nil + } - case *GlobalSpecType_ApiDefinition: + if fv, exists := v.FldValidators["api_protection_rules"]; exists { - vref := m.GetApiDefinition() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("api_definition.Object") - dri := db.DRefInfo{ - RefdType: "api_definition.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "api_definition", - Ref: vdRef, + vOpts := append(opts, db.WithValidateField("api_protection_rules")) + if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { + return err } - return []db.DRefInfo{dri}, nil - default: - return nil, nil } -} - -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiProtectionRules() == nil { - return nil, nil - } + if fv, exists := v.FldValidators["blocked_clients"]; exists { + vOpts := append(opts, db.WithValidateField("blocked_clients")) + if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { + return err + } - drInfos, err := m.GetApiProtectionRules().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_protection_rules." + dri.DRField } - return drInfos, err - -} -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetBotDefenseChoice() == nil { - return nil, nil - } switch m.GetBotDefenseChoice().(type) { - case *GlobalSpecType_DisableBotDefense: - - return nil, nil - - case *GlobalSpecType_BotDefense: + case *CreateSpecType_DisableBotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*CreateSpecType_DisableBotDefense).DisableBotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("disable_bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_BotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*CreateSpecType_BotDefense).BotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_BotDefenseAdvanced: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { + val := m.GetBotDefenseChoice().(*CreateSpecType_BotDefenseAdvanced).BotDefenseAdvanced + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - return nil, nil + } - case *GlobalSpecType_BotDefenseAdvanced: + if fv, exists := v.FldValidators["challenge_type"]; exists { + val := m.GetChallengeType() + vOpts := append(opts, + db.WithValidateField("challenge_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") + switch m.GetChallengeType().(type) { + case *CreateSpecType_JsChallenge: + if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { + val := m.GetChallengeType().(*CreateSpecType_JsChallenge).JsChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "bot_defense_advanced." + dri.DRField + case *CreateSpecType_CaptchaChallenge: + if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { + val := m.GetChallengeType().(*CreateSpecType_CaptchaChallenge).CaptchaChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("captcha_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_NoChallenge: + if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { + val := m.GetChallengeType().(*CreateSpecType_NoChallenge).NoChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("no_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_PolicyBasedChallenge: + if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { + val := m.GetChallengeType().(*CreateSpecType_PolicyBasedChallenge).PolicyBasedChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("policy_based_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_EnableChallenge: + if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { + val := m.GetChallengeType().(*CreateSpecType_EnableChallenge).EnableChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("enable_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - default: - return nil, nil } -} + switch m.GetClientSideDefenseChoice().(type) { + case *CreateSpecType_DisableClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*CreateSpecType_DisableClientSideDefense).DisableClientSideDefense + vOpts := append(opts, + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("disable_client_side_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_ClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*CreateSpecType_ClientSideDefense).ClientSideDefense + vOpts := append(opts, + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("client_side_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetChallengeType() == nil { - return nil, nil } - switch m.GetChallengeType().(type) { - case *GlobalSpecType_JsChallenge: - - return nil, nil - - case *GlobalSpecType_CaptchaChallenge: - - return nil, nil - - case *GlobalSpecType_NoChallenge: - - return nil, nil - case *GlobalSpecType_PolicyBasedChallenge: + if fv, exists := v.FldValidators["cors_policy"]; exists { - drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "policy_based_challenge." + dri.DRField + vOpts := append(opts, db.WithValidateField("cors_policy")) + if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { + return err } - return drInfos, err - case *GlobalSpecType_EnableChallenge: + } - drInfos, err := m.GetEnableChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "enable_challenge." + dri.DRField + if fv, exists := v.FldValidators["csrf_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("csrf_policy")) + if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } -} + if fv, exists := v.FldValidators["data_guard_rules"]; exists { + vOpts := append(opts, db.WithValidateField("data_guard_rules")) + if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { - if m.GetDefaultRoutePools() == nil { - return nil, nil } - var drInfos []db.DRefInfo - for idx, e := range m.GetDefaultRoutePools() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) + if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { + vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) + if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { + return err } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetLoadbalancerType() == nil { - return nil, nil } - switch m.GetLoadbalancerType().(type) { - case *GlobalSpecType_Http: - - return nil, nil - - case *GlobalSpecType_Https: - drInfos, err := m.GetHttps().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https." + dri.DRField + if fv, exists := v.FldValidators["default_route_pools"]; exists { + vOpts := append(opts, db.WithValidateField("default_route_pools")) + if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { + return err } - return drInfos, err - case *GlobalSpecType_HttpsAutoCert: + } - drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https_auto_cert." + dri.DRField + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } -} - -func (m *GlobalSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { + if fv, exists := v.FldValidators["graphql_rules"]; exists { + vOpts := append(opts, db.WithValidateField("graphql_rules")) + if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { + return err + } - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("malicious_user_mitigation.Object") - dri := db.DRefInfo{ - RefdType: "malicious_user_mitigation.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "malicious_user_mitigation", - Ref: vdRef, } - return []db.DRefInfo{dri}, nil - -} -// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GlobalSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") + if fv, exists := v.FldValidators["hash_policy_choice"]; exists { + val := m.GetHashPolicyChoice() + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "malicious_user_mitigation.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) + switch m.GetHashPolicyChoice().(type) { + case *CreateSpecType_RoundRobin: + if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { + val := m.GetHashPolicyChoice().(*CreateSpecType_RoundRobin).RoundRobin + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("round_robin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_LeastActive: + if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { + val := m.GetHashPolicyChoice().(*CreateSpecType_LeastActive).LeastActive + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("least_active"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_Random: + if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { + val := m.GetHashPolicyChoice().(*CreateSpecType_Random).Random + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("random"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_SourceIpStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*CreateSpecType_SourceIpStickiness).SourceIpStickiness + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("source_ip_stickiness"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_CookieStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*CreateSpecType_CookieStickiness).CookieStickiness + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("cookie_stickiness"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_RingHash: + if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { + val := m.GetHashPolicyChoice().(*CreateSpecType_RingHash).RingHash + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("ring_hash"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - return entries, nil -} + switch m.GetIpReputationChoice().(type) { + case *CreateSpecType_DisableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*CreateSpecType_DisableIpReputation).DisableIpReputation + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("disable_ip_reputation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_EnableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*CreateSpecType_EnableIpReputation).EnableIpReputation + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("enable_ip_reputation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { - if m.GetMoreOption() == nil { - return nil, nil } - drInfos, err := m.GetMoreOption().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "more_option." + dri.DRField - } - return drInfos, err + if fv, exists := v.FldValidators["jwt_validation"]; exists { -} + vOpts := append(opts, db.WithValidateField("jwt_validation")) + if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPoolChoice() == nil { - return nil, nil } - switch m.GetOriginPoolChoice().(type) { - case *GlobalSpecType_DefaultPool: - drInfos, err := m.GetDefaultPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool." + dri.DRField + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { + val := m.GetL7DdosAutoMitigationAction() + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - return drInfos, err - - case *GlobalSpecType_DefaultPoolList: + } - drInfos, err := m.GetDefaultPoolList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") + switch m.GetL7DdosAutoMitigationAction().(type) { + case *CreateSpecType_L7DdosActionDefault: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionDefault).L7DdosActionDefault + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_default"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool_list." + dri.DRField + case *CreateSpecType_L7DdosActionBlock: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionBlock).L7DdosActionBlock + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_L7DdosActionJsChallenge: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_L7DdosActionNone: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*CreateSpecType_L7DdosActionNone).L7DdosActionNone + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_none"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - default: - return nil, nil } -} - -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginServerSubsetRuleList() == nil { - return nil, nil + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") + switch m.GetLoadbalancerType().(type) { + case *CreateSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*CreateSpecType_Http).Http + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*CreateSpecType_Https).Https + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*CreateSpecType_HttpsAutoCert).HttpsAutoCert + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_server_subset_rule_list." + dri.DRField + + if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { + val := m.GetMaliciousUserDetectionChoice() + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err -} + switch m.GetMaliciousUserDetectionChoice().(type) { + case *CreateSpecType_EnableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("enable_malicious_user_detection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_DisableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*CreateSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("disable_malicious_user_detection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetRateLimitChoice() == nil { - return nil, nil } - switch m.GetRateLimitChoice().(type) { - case *GlobalSpecType_DisableRateLimit: - - return nil, nil - case *GlobalSpecType_RateLimit: + if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { - drInfos, err := m.GetRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "rate_limit." + dri.DRField + vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) + if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { + return err } - return drInfos, err - case *GlobalSpecType_ApiRateLimit: + } - drInfos, err := m.GetApiRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") + switch m.GetMlConfigChoice().(type) { + case *CreateSpecType_SingleLbApp: + if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { + val := m.GetMlConfigChoice().(*CreateSpecType_SingleLbApp).SingleLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("single_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_rate_limit." + dri.DRField + case *CreateSpecType_MultiLbApp: + if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { + val := m.GetMlConfigChoice().(*CreateSpecType_MultiLbApp).MultiLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("multi_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - default: - return nil, nil } -} + if fv, exists := v.FldValidators["more_option"]; exists { + + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { - if m.GetRoutes() == nil { - return nil, nil } - var drInfos []db.DRefInfo - for idx, e := range m.GetRoutes() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") + switch m.GetOriginPoolChoice().(type) { + case *CreateSpecType_DefaultPool: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { + val := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPool).DefaultPool + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) + case *CreateSpecType_DefaultPoolList: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { + val := m.GetOriginPoolChoice().(*CreateSpecType_DefaultPoolList).DefaultPoolList + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil -} - -// GetDRefInfo for the field's type -func (m *GlobalSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetServicePolicyChoice() == nil { - return nil, nil } - switch m.GetServicePolicyChoice().(type) { - case *GlobalSpecType_ServicePoliciesFromNamespace: - return nil, nil - - case *GlobalSpecType_NoServicePolicies: + if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { - return nil, nil + vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) + if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { + return err + } - case *GlobalSpecType_ActiveServicePolicies: + } - drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "active_service_policies." + dri.DRField + if fv, exists := v.FldValidators["protected_cookies"]; exists { + vOpts := append(opts, db.WithValidateField("protected_cookies")) + if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } -} - -func (m *GlobalSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetUserIdChoice().(type) { - case *GlobalSpecType_UserIdentification: + if fv, exists := v.FldValidators["rate_limit_choice"]; exists { + val := m.GetRateLimitChoice() + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil + switch m.GetRateLimitChoice().(type) { + case *CreateSpecType_DisableRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*CreateSpecType_DisableRateLimit).DisableRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("disable_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("user_identification.Object") - dri := db.DRefInfo{ - RefdType: "user_identification.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "user_identification", - Ref: vdRef, + case *CreateSpecType_RateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { + val := m.GetRateLimitChoice().(*CreateSpecType_RateLimit).RateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_ApiRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*CreateSpecType_ApiRateLimit).ApiRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("api_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return []db.DRefInfo{dri}, nil - case *GlobalSpecType_UserIdClientIp: + } - return nil, nil + if fv, exists := v.FldValidators["routes"]; exists { + vOpts := append(opts, db.WithValidateField("routes")) + if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { + return err + } - default: - return nil, nil } -} - -// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GlobalSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - switch m.GetUserIdChoice().(type) { - case *GlobalSpecType_UserIdentification: - refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") + if fv, exists := v.FldValidators["service_policy_choice"]; exists { + val := m.GetServicePolicyChoice() + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } + } - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil + switch m.GetServicePolicyChoice().(type) { + case *CreateSpecType_ServicePoliciesFromNamespace: + if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { + val := m.GetServicePolicyChoice().(*CreateSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("service_policies_from_namespace"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - ref := &ves_io_schema.ObjectRefType{ - Kind: "user_identification.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + case *CreateSpecType_NoServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*CreateSpecType_NoServicePolicies).NoServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("no_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + case *CreateSpecType_ActiveServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*CreateSpecType_ActiveServicePolicies).ActiveServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("active_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - if refdEnt != nil { - entries = append(entries, refdEnt) + + } + + switch m.GetSlowDdosMitigationChoice().(type) { + case *CreateSpecType_SlowDdosMitigation: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { + val := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SlowDdosMitigation).SlowDdosMitigation + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("slow_ddos_mitigation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_SystemDefaultTimeouts: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { + val := m.GetSlowDdosMitigationChoice().(*CreateSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("system_default_timeouts"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["threat_mesh_choice"]; exists { + val := m.GetThreatMeshChoice() + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } + } - case *GlobalSpecType_UserIdClientIp: + switch m.GetThreatMeshChoice().(type) { + case *CreateSpecType_DisableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.disable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*CreateSpecType_DisableThreatMesh).DisableThreatMesh + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("disable_threat_mesh"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_EnableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.enable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*CreateSpecType_EnableThreatMesh).EnableThreatMesh + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("enable_threat_mesh"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } - return entries, nil -} + if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { + val := m.GetTrustClientIpHeadersChoice() + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *GlobalSpecType) GetViewInternalDRefInfo() ([]db.DRefInfo, error) { + switch m.GetTrustClientIpHeadersChoice().(type) { + case *CreateSpecType_DisableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("disable_trust_client_ip_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *CreateSpecType_EnableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*CreateSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("enable_trust_client_ip_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vref := m.GetViewInternal() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("view_internal.Object") - dri := db.DRefInfo{ - RefdType: "view_internal.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "view_internal", - Ref: vdRef, } - return []db.DRefInfo{dri}, nil -} + if fv, exists := v.FldValidators["trusted_clients"]; exists { + vOpts := append(opts, db.WithValidateField("trusted_clients")) + if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { + return err + } -// GetViewInternalDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GlobalSpecType) GetViewInternalDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "view_internal.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: view_internal") } - vref := m.GetViewInternal() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "view_internal.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) + if fv, exists := v.FldValidators["user_id_choice"]; exists { + val := m.GetUserIdChoice() + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return entries, nil -} - -func (m *GlobalSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetWafChoice().(type) { - case *GlobalSpecType_DisableWaf: - - return nil, nil - - case *GlobalSpecType_AppFirewall: - - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil + switch m.GetUserIdChoice().(type) { + case *CreateSpecType_UserIdentification: + if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { + val := m.GetUserIdChoice().(*CreateSpecType_UserIdentification).UserIdentification + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_identification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("app_firewall.Object") - dri := db.DRefInfo{ - RefdType: "app_firewall.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "app_firewall", - Ref: vdRef, + case *CreateSpecType_UserIdClientIp: + if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { + val := m.GetUserIdChoice().(*CreateSpecType_UserIdClientIp).UserIdClientIp + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_id_client_ip"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return []db.DRefInfo{dri}, nil - default: - return nil, nil } -} - -// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *GlobalSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - switch m.GetWafChoice().(type) { - case *GlobalSpecType_DisableWaf: - - case *GlobalSpecType_AppFirewall: - refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + if fv, exists := v.FldValidators["waf_choice"]; exists { + val := m.GetWafChoice() + vOpts := append(opts, + db.WithValidateField("waf_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } + } - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "app_firewall.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + switch m.GetWafChoice().(type) { + case *CreateSpecType_DisableWaf: + if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { + val := m.GetWafChoice().(*CreateSpecType_DisableWaf).DisableWaf + vOpts := append(opts, + db.WithValidateField("waf_choice"), + db.WithValidateField("disable_waf"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + case *CreateSpecType_AppFirewall: + if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { + val := m.GetWafChoice().(*CreateSpecType_AppFirewall).AppFirewall + vOpts := append(opts, + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - if refdEnt != nil { - entries = append(entries, refdEnt) + + } + + if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { + vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) + if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { + return err } } - return entries, nil + return nil } -type ValidateGlobalSpecType struct { - FldValidators map[string]db.ValidatorFunc -} +// Well-known symbol for default validator implementation +var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { + v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} -func (v *ValidateGlobalSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler + rulesAdvertiseChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.advertise_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["advertise_choice"] = vFn -func (v *ValidateGlobalSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler + rulesApiDefinitionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.api_definition_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["api_definition_choice"] = vFn -func (v *ValidateGlobalSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler + rulesApiDiscoveryChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.api_discovery_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["api_discovery_choice"] = vFn -func (v *ValidateGlobalSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhChallengeType := v.ChallengeTypeValidationRuleHandler + rulesChallengeType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhChallengeType(rulesChallengeType) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.challenge_type: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["challenge_type"] = vFn -func (v *ValidateGlobalSpecType) DdosDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler + rulesHashPolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ddos_detection_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.hash_policy_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["hash_policy_choice"] = vFn -func (v *ValidateGlobalSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler + rulesL7DdosAutoMitigationAction := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.l7_ddos_auto_mitigation_action: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn -func (v *ValidateGlobalSpecType) HostRewriteParamsHostRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_HostRewrite, err := db.NewStringValidationRuleHandler(rules) + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.loadbalancer_type: %s", err) + panic(errMsg) } - return oValidatorFn_HostRewrite, nil -} + v.FldValidators["loadbalancer_type"] = vFn -func (v *ValidateGlobalSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler + rulesMaliciousUserDetectionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.malicious_user_detection_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["malicious_user_detection_choice"] = vFn -func (v *ValidateGlobalSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler + rulesRateLimitChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.rate_limit_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["rate_limit_choice"] = vFn -func (v *ValidateGlobalSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler + rulesServicePolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.service_policy_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["service_policy_choice"] = vFn -func (v *ValidateGlobalSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhThreatMeshChoice := v.ThreatMeshChoiceValidationRuleHandler + rulesThreatMeshChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhThreatMeshChoice(rulesThreatMeshChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.threat_mesh_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["threat_mesh_choice"] = vFn -func (v *ValidateGlobalSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler + rulesTrustClientIpHeadersChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.trust_client_ip_headers_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["trust_client_ip_headers_choice"] = vFn -func (v *ValidateGlobalSpecType) ThreatIntelligenceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler + rulesUserIdChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhUserIdChoice(rulesUserIdChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for threat_intelligence_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.user_id_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["user_id_choice"] = vFn -func (v *ValidateGlobalSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhWafChoice := v.WafChoiceValidationRuleHandler + rulesWafChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhWafChoice(rulesWafChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.waf_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["waf_choice"] = vFn -func (v *ValidateGlobalSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.vh_domain": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDomains(rulesDomains) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.domains: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["domains"] = vFn -func (v *ValidateGlobalSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler + rulesDefaultRoutePools := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.default_route_pools: %s", err) + panic(errMsg) } - return validatorFn, nil -} - -func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + v.FldValidators["default_route_pools"] = vFn - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + vrhRoutes := v.RoutesValidationRuleHandler + rulesRoutes := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRoutes(rulesRoutes) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.routes: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["routes"] = vFn + + vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler + rulesWafExclusionRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.waf_exclusion_rules: %s", err) + panic(errMsg) } + v.FldValidators["waf_exclusion_rules"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") - } - return nil + vrhBlockedClients := v.BlockedClientsValidationRuleHandler + rulesBlockedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - - return validatorFn, nil -} - -func (v *ValidateGlobalSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + vFn, err = vrhBlockedClients(rulesBlockedClients) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.blocked_clients: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["blocked_clients"] = vFn + + vrhTrustedClients := v.TrustedClientsValidationRuleHandler + rulesTrustedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhTrustedClients(rulesTrustedClients) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.trusted_clients: %s", err) + panic(errMsg) } + v.FldValidators["trusted_clients"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated default_route_pools") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items default_route_pools") - } - return nil + vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler + rulesDdosMitigationRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - - return validatorFn, nil -} - -func (v *ValidateGlobalSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.ddos_mitigation_rules: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["ddos_mitigation_rules"] = vFn + + vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler + rulesDataGuardRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhDataGuardRules(rulesDataGuardRules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.data_guard_rules: %s", err) + panic(errMsg) } + v.FldValidators["data_guard_rules"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*RouteType) - if !ok { - return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated routes") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items routes") - } - return nil + vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler + rulesGraphqlRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - - return validatorFn, nil -} - -func (v *ValidateGlobalSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + vFn, err = vrhGraphqlRules(rulesGraphqlRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.graphql_rules: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["graphql_rules"] = vFn + + vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler + rulesProtectedCookies := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhProtectedCookies(rulesProtectedCookies) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.protected_cookies: %s", err) + panic(errMsg) } + v.FldValidators["protected_cookies"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated waf_exclusion_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items waf_exclusion_rules") - } - return nil - } + v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate + v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate - return validatorFn, nil + v.FldValidators["api_definition_choice.api_definitions"] = ves_io_schema_views_common_waf.ApiDefinitionListValidator().Validate + v.FldValidators["api_definition_choice.api_specification"] = ves_io_schema_views_common_waf.APISpecificationSettingsValidator().Validate + v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["api_discovery_choice.enable_api_discovery"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate + + v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate + v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate + + v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + v.FldValidators["challenge_type.policy_based_challenge"] = ves_io_schema_views_common_waf.PolicyBasedChallengeValidator().Validate + v.FldValidators["challenge_type.enable_challenge"] = ves_io_schema_views_common_waf.EnableChallengeValidator().Validate + + v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate + + v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate + v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate + + v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = ves_io_schema_views_common_waf.IPThreatCategoryListTypeValidator().Validate + + v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + + v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate + + v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate + + v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate + v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate + + v.FldValidators["rate_limit_choice.rate_limit"] = ves_io_schema_views_common_waf.RateLimitConfigTypeValidator().Validate + v.FldValidators["rate_limit_choice.api_rate_limit"] = ves_io_schema_views_common_waf.APIRateLimitValidator().Validate + + v.FldValidators["service_policy_choice.active_service_policies"] = ves_io_schema_views_common_waf.ServicePolicyListValidator().Validate + + v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate + + v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate + + v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate + + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + + v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["api_protection_rules"] = ves_io_schema_views_common_waf.APIProtectionRulesValidator().Validate + + v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate + + v.FldValidators["jwt_validation"] = ves_io_schema_views_common_waf.JWTValidationValidator().Validate + + v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator } -func (v *ValidateGlobalSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// augmented methods on protoc/std generated struct - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") +func (m *DDoSClientSource) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DDoSClientSource) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DDoSClientSource) DeepCopy() *DDoSClientSource { + if m == nil { + return nil } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } + ser, err := m.Marshal() + if err != nil { return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + c := &DDoSClientSource{} + err = c.Unmarshal(ser) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") + return nil } + return c +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated blocked_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items blocked_clients") - } +func (m *DDoSClientSource) DeepCopyProto() proto.Message { + if m == nil { return nil } + return m.DeepCopy() +} + +func (m *DDoSClientSource) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DDoSClientSourceValidator().Validate(ctx, m, opts...) +} - return validatorFn, nil +type ValidateDDoSClientSource struct { + FldValidators map[string]db.ValidatorFunc } -func (v *ValidateGlobalSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateDDoSClientSource) CountryListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema_policy.CountryCode) + return int32(i) + } + // ves_io_schema_policy.CountryCode_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema_policy.CountryCode_name, conv) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") + return nil, errors.Wrap(err, "ValidationRuleHandler for country_list") } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema_policy.CountryCode, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for country_list") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) + elems, ok := val.([]ves_io_schema_policy.CountryCode) if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) + return fmt.Errorf("Repeated validation expected []ves_io_schema_policy.CountryCode, got %T", val) } l := []string{} for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } + strVal := fmt.Sprintf("%v", elem) l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated trusted_clients") + return errors.Wrap(err, "repeated country_list") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items trusted_clients") + return errors.Wrap(err, "items country_list") } return nil } @@ -15106,329 +5536,237 @@ func (v *ValidateGlobalSpecType) TrustedClientsValidationRuleHandler(rules map[s return validatorFn, nil } -func (v *ValidateGlobalSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } +func (v *ValidateDDoSClientSource) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DDoSClientSource) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DDoSClientSource got type %s", t) } - return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") + if m == nil { + return nil } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*DDoSMitigationRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) + if fv, exists := v.FldValidators["asn_list"]; exists { + + vOpts := append(opts, db.WithValidateField("asn_list")) + if err := fv(ctx, m.GetAsnList(), vOpts...); err != nil { + return err } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated ddos_mitigation_rules") + + } + + if fv, exists := v.FldValidators["country_list"]; exists { + vOpts := append(opts, db.WithValidateField("country_list")) + if err := fv(ctx, m.GetCountryList(), vOpts...); err != nil { + return err } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items ddos_mitigation_rules") + + } + + if fv, exists := v.FldValidators["tls_fingerprint_matcher"]; exists { + + vOpts := append(opts, db.WithValidateField("tls_fingerprint_matcher")) + if err := fv(ctx, m.GetTlsFingerprintMatcher(), vOpts...); err != nil { + return err } - return nil + } - return validatorFn, nil + return nil } -func (v *ValidateGlobalSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// Well-known symbol for default validator implementation +var DefaultDDoSClientSourceValidator = func() *ValidateDDoSClientSource { + v := &ValidateDDoSClientSource{FldValidators: map[string]db.ValidatorFunc{}} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhCountryList := v.CountryListValidationRuleHandler + rulesCountryList := map[string]string{ + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.not_in": "[0]", + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhCountryList(rulesCountryList) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") + errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSClientSource.country_list: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } + v.FldValidators["country_list"] = vFn + + v.FldValidators["asn_list"] = ves_io_schema_policy.AsnMatchListValidator().Validate + + v.FldValidators["tls_fingerprint_matcher"] = ves_io_schema_policy.TlsFingerprintMatcherTypeValidator().Validate + + return v +}() + +func DDoSClientSourceValidator() db.Validator { + return DefaultDDoSClientSourceValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DDoSMitigationRule) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DDoSMitigationRule) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DDoSMitigationRule) DeepCopy() *DDoSMitigationRule { + if m == nil { return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + ser, err := m.Marshal() if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") + return nil + } + c := &DDoSMitigationRule{} + err = c.Unmarshal(ser) + if err != nil { + return nil } + return c +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated data_guard_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items data_guard_rules") - } +func (m *DDoSMitigationRule) DeepCopyProto() proto.Message { + if m == nil { return nil } + return m.DeepCopy() +} - return validatorFn, nil +func (m *DDoSMitigationRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DDoSMitigationRuleValidator().Validate(ctx, m, opts...) } -func (v *ValidateGlobalSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +type ValidateDDoSMitigationRule struct { + FldValidators map[string]db.ValidatorFunc +} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) +func (v *ValidateDDoSMitigationRule) MitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for mitigation_action") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return validatorFn, nil +} + +func (v *ValidateDDoSMitigationRule) MitigationChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") + return nil, errors.Wrap(err, "ValidationRuleHandler for mitigation_choice") } + return validatorFn, nil +} + +func (v *ValidateDDoSMitigationRule) MitigationChoiceDdosClientSourceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + return DDoSClientSourceValidator().Validate, nil +} + +func (v *ValidateDDoSMitigationRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated graphql_rules") + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items graphql_rules") + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err } + return nil } return validatorFn, nil } -func (v *ValidateGlobalSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateDDoSMitigationRule) ExpirationTimestampValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") - } + var ( + reqdValidatorFn db.ValidatorFunc + err error + ) validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) + if reqdValidatorFn != nil { + if err = reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated protected_cookies") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items protected_cookies") } + // TODO: lookup configured third-party type validators return nil } return validatorFn, nil } -func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*GlobalSpecType) +func (v *ValidateDDoSMitigationRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DDoSMitigationRule) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + return fmt.Errorf("Expected type *DDoSMitigationRule got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["add_location"]; exists { + if fv, exists := v.FldValidators["expiration_timestamp"]; exists { - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("expiration_timestamp")) + if err := fv(ctx, m.GetExpirationTimestamp(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["advertise_choice"]; exists { - val := m.GetAdvertiseChoice() - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + if fv, exists := v.FldValidators["metadata"]; exists { - switch m.GetAdvertiseChoice().(type) { - case *GlobalSpecType_AdvertiseOnPublic: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { - val := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublic).AdvertiseOnPublic - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_AdvertiseCustom: - if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { - val := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseCustom).AdvertiseCustom - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_custom"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_DoNotAdvertise: - if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { - val := m.GetAdvertiseChoice().(*GlobalSpecType_DoNotAdvertise).DoNotAdvertise - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("do_not_advertise"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_AdvertiseOnPublicDefaultVip: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { - val := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public_default_vip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["api_definition_choice"]; exists { - val := m.GetApiDefinitionChoice() + if fv, exists := v.FldValidators["mitigation_action"]; exists { + val := m.GetMitigationAction() vOpts := append(opts, - db.WithValidateField("api_definition_choice"), + db.WithValidateField("mitigation_action"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetApiDefinitionChoice().(type) { - case *GlobalSpecType_ApiDefinitions: - if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { - val := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinitions).ApiDefinitions - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definitions"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_ApiSpecification: - if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { - val := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiSpecification).ApiSpecification - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_specification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_DisableApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*GlobalSpecType_DisableApiDefinition).DisableApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("disable_api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_ApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinition).ApiDefinition + switch m.GetMitigationAction().(type) { + case *DDoSMitigationRule_Block: + if fv, exists := v.FldValidators["mitigation_action.block"]; exists { + val := m.GetMitigationAction().(*DDoSMitigationRule_Block).Block vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definition"), + db.WithValidateField("mitigation_action"), + db.WithValidateField("block"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -15437,34 +5775,34 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["api_discovery_choice"]; exists { - val := m.GetApiDiscoveryChoice() + if fv, exists := v.FldValidators["mitigation_choice"]; exists { + val := m.GetMitigationChoice() vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), + db.WithValidateField("mitigation_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetApiDiscoveryChoice().(type) { - case *GlobalSpecType_EnableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*GlobalSpecType_EnableApiDiscovery).EnableApiDiscovery + switch m.GetMitigationChoice().(type) { + case *DDoSMitigationRule_DdosClientSource: + if fv, exists := v.FldValidators["mitigation_choice.ddos_client_source"]; exists { + val := m.GetMitigationChoice().(*DDoSMitigationRule_DdosClientSource).DdosClientSource vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("enable_api_discovery"), + db.WithValidateField("mitigation_choice"), + db.WithValidateField("ddos_client_source"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *GlobalSpecType_DisableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*GlobalSpecType_DisableApiDiscovery).DisableApiDiscovery + case *DDoSMitigationRule_IpPrefixList: + if fv, exists := v.FldValidators["mitigation_choice.ip_prefix_list"]; exists { + val := m.GetMitigationChoice().(*DDoSMitigationRule_IpPrefixList).IpPrefixList vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("disable_api_discovery"), + db.WithValidateField("mitigation_choice"), + db.WithValidateField("ip_prefix_list"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -15473,1453 +5811,1039 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["api_protection_rules"]; exists { + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDDoSMitigationRuleValidator = func() *ValidateDDoSMitigationRule { + v := &ValidateDDoSMitigationRule{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhMitigationAction := v.MitigationActionValidationRuleHandler + rulesMitigationAction := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhMitigationAction(rulesMitigationAction) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.mitigation_action: %s", err) + panic(errMsg) + } + v.FldValidators["mitigation_action"] = vFn + + vrhMitigationChoice := v.MitigationChoiceValidationRuleHandler + rulesMitigationChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhMitigationChoice(rulesMitigationChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.mitigation_choice: %s", err) + panic(errMsg) + } + v.FldValidators["mitigation_choice"] = vFn + + vrhMitigationChoiceDdosClientSource := v.MitigationChoiceDdosClientSourceValidationRuleHandler + rulesMitigationChoiceDdosClientSource := map[string]string{ + "ves.io.schema.rules.message.required_one_nonzero_field": "true", + } + vFnMap["mitigation_choice.ddos_client_source"], err = vrhMitigationChoiceDdosClientSource(rulesMitigationChoiceDdosClientSource) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field DDoSMitigationRule.mitigation_choice_ddos_client_source: %s", err) + panic(errMsg) + } + + v.FldValidators["mitigation_choice.ddos_client_source"] = vFnMap["mitigation_choice.ddos_client_source"] + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhExpirationTimestamp := v.ExpirationTimestampValidationRuleHandler + rulesExpirationTimestamp := map[string]string{ + "ves.io.schema.rules.timestamp.within.seconds": "31536000", + } + vFn, err = vrhExpirationTimestamp(rulesExpirationTimestamp) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for DDoSMitigationRule.expiration_timestamp: %s", err) + panic(errMsg) + } + v.FldValidators["expiration_timestamp"] = vFn + + v.FldValidators["mitigation_choice.ip_prefix_list"] = ves_io_schema_policy.PrefixMatchListValidator().Validate - vOpts := append(opts, db.WithValidateField("api_protection_rules")) - if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { - return err - } + return v +}() - } +func DDoSMitigationRuleValidator() db.Validator { + return DefaultDDoSMitigationRuleValidator +} - if fv, exists := v.FldValidators["auto_cert_info"]; exists { +// augmented methods on protoc/std generated struct - vOpts := append(opts, db.WithValidateField("auto_cert_info")) - if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { - return err - } +func (m *GetSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} +// Redact squashes sensitive info in m (in-place) +func (m *GetSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil } - if fv, exists := v.FldValidators["auto_cert_state"]; exists { + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.https") + } - vOpts := append(opts, db.WithValidateField("auto_cert_state")) - if err := fv(ctx, m.GetAutoCertState(), vOpts...); err != nil { - return err + for idx, e := range m.GetRoutes() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.routes idx %v", idx) } + } + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.more_option") } - if fv, exists := v.FldValidators["blocked_clients"]; exists { - vOpts := append(opts, db.WithValidateField("blocked_clients")) - if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { - return err - } + if err := m.GetDefaultPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.default_pool") + } + if err := m.GetJwtValidation().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.jwt_validation") } - switch m.GetBotDefenseChoice().(type) { - case *GlobalSpecType_DisableBotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*GlobalSpecType_DisableBotDefense).DisableBotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("disable_bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_BotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefense).BotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_BotDefenseAdvanced: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { - val := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefenseAdvanced).BotDefenseAdvanced - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense_advanced"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil +} +func (m *GetSpecType) DeepCopy() *GetSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil } + return c +} - if fv, exists := v.FldValidators["cert_state"]; exists { +func (m *GetSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} - vOpts := append(opts, db.WithValidateField("cert_state")) - if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { - return err - } +func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetSpecTypeValidator().Validate(ctx, m, opts...) +} +func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - if fv, exists := v.FldValidators["challenge_type"]; exists { - val := m.GetChallengeType() - vOpts := append(opts, - db.WithValidateField("challenge_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - switch m.GetChallengeType().(type) { - case *GlobalSpecType_JsChallenge: - if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { - val := m.GetChallengeType().(*GlobalSpecType_JsChallenge).JsChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_CaptchaChallenge: - if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { - val := m.GetChallengeType().(*GlobalSpecType_CaptchaChallenge).CaptchaChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("captcha_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_NoChallenge: - if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { - val := m.GetChallengeType().(*GlobalSpecType_NoChallenge).NoChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("no_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_PolicyBasedChallenge: - if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { - val := m.GetChallengeType().(*GlobalSpecType_PolicyBasedChallenge).PolicyBasedChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("policy_based_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_EnableChallenge: - if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { - val := m.GetChallengeType().(*GlobalSpecType_EnableChallenge).EnableChallenge - vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("enable_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - + if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - switch m.GetClientSideDefenseChoice().(type) { - case *GlobalSpecType_DisableClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*GlobalSpecType_DisableClientSideDefense).DisableClientSideDefense - vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("disable_client_side_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_ClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*GlobalSpecType_ClientSideDefense).ClientSideDefense - vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("client_side_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - + if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["cors_policy"]; exists { + if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } - vOpts := append(opts, db.WithValidateField("cors_policy")) - if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { - return err - } + if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["csrf_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("csrf_policy")) - if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { - return err - } - + if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["data_guard_rules"]; exists { - vOpts := append(opts, db.WithValidateField("data_guard_rules")) - if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { - return err - } + if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["ddos_detection_choice"]; exists { - val := m.GetDdosDetectionChoice() - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - switch m.GetDdosDetectionChoice().(type) { - case *GlobalSpecType_EnableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.enable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*GlobalSpecType_EnableDdosDetection).EnableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("enable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_DisableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.disable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*GlobalSpecType_DisableDdosDetection).DisableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("disable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { - vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) - if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { - return err - } + if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["default_route_pools"]; exists { - vOpts := append(opts, db.WithValidateField("default_route_pools")) - if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { - return err - } + if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["dns_info"]; exists { + return drInfos, nil - vOpts := append(opts, db.WithValidateField("dns_info")) - for idx, item := range m.GetDnsInfo() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetAdvertiseChoice() == nil { + return nil, nil } + switch m.GetAdvertiseChoice().(type) { + case *GetSpecType_AdvertiseOnPublic: - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { - return err + drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_on_public." + dri.DRField + } + return drInfos, err - } - - if fv, exists := v.FldValidators["downstream_tls_certificate_expiration_timestamps"]; exists { + case *GetSpecType_AdvertiseCustom: - vOpts := append(opts, db.WithValidateField("downstream_tls_certificate_expiration_timestamps")) - for idx, item := range m.GetDownstreamTlsCertificateExpirationTimestamps() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } + drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_custom." + dri.DRField } + return drInfos, err - } + case *GetSpecType_DoNotAdvertise: - if fv, exists := v.FldValidators["graphql_rules"]; exists { - vOpts := append(opts, db.WithValidateField("graphql_rules")) - if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { - return err - } + return nil, nil + + case *GetSpecType_AdvertiseOnPublicDefaultVip: + + return nil, nil + default: + return nil, nil } - if fv, exists := v.FldValidators["hash_policy_choice"]; exists { - val := m.GetHashPolicyChoice() - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiDefinitionChoice() == nil { + return nil, nil } + switch m.GetApiDefinitionChoice().(type) { + case *GetSpecType_ApiDefinitions: - switch m.GetHashPolicyChoice().(type) { - case *GlobalSpecType_RoundRobin: - if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { - val := m.GetHashPolicyChoice().(*GlobalSpecType_RoundRobin).RoundRobin - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("round_robin"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetApiDefinitions().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") } - case *GlobalSpecType_LeastActive: - if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { - val := m.GetHashPolicyChoice().(*GlobalSpecType_LeastActive).LeastActive - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("least_active"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_definitions." + dri.DRField } - case *GlobalSpecType_Random: - if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { - val := m.GetHashPolicyChoice().(*GlobalSpecType_Random).Random - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("random"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + return drInfos, err + + case *GetSpecType_ApiSpecification: + + drInfos, err := m.GetApiSpecification().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") } - case *GlobalSpecType_SourceIpStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*GlobalSpecType_SourceIpStickiness).SourceIpStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("source_ip_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_specification." + dri.DRField } - case *GlobalSpecType_CookieStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*GlobalSpecType_CookieStickiness).CookieStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("cookie_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + return drInfos, err + + case *GetSpecType_DisableApiDefinition: + + return nil, nil + + case *GetSpecType_ApiDefinition: + + vref := m.GetApiDefinition() + if vref == nil { + return nil, nil } - case *GlobalSpecType_RingHash: - if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { - val := m.GetHashPolicyChoice().(*GlobalSpecType_RingHash).RingHash - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("ring_hash"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("api_definition.Object") + dri := db.DRefInfo{ + RefdType: "api_definition.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "api_definition", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil + default: + return nil, nil } - if fv, exists := v.FldValidators["host_name"]; exists { +} - vOpts := append(opts, db.WithValidateField("host_name")) - if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { - return err - } +// GetDRefInfo for the field's type +func (m *GetSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiProtectionRules() == nil { + return nil, nil + } + drInfos, err := m.GetApiProtectionRules().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_protection_rules." + dri.DRField } + return drInfos, err - switch m.GetHostRewriteParams().(type) { - case *GlobalSpecType_AutoHostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.auto_host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*GlobalSpecType_AutoHostRewrite).AutoHostRewrite - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("auto_host_rewrite"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_HostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*GlobalSpecType_HostRewrite).HostRewrite - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("host_rewrite"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_DisableHostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.disable_host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*GlobalSpecType_DisableHostRewrite).DisableHostRewrite - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("disable_host_rewrite"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetBotDefenseChoice() == nil { + return nil, nil } + switch m.GetBotDefenseChoice().(type) { + case *GetSpecType_DisableBotDefense: - if fv, exists := v.FldValidators["internet_vip_info"]; exists { + return nil, nil - vOpts := append(opts, db.WithValidateField("internet_vip_info")) - for idx, item := range m.GetInternetVipInfo() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } - } + case *GetSpecType_BotDefense: - } + return nil, nil - switch m.GetIpReputationChoice().(type) { - case *GlobalSpecType_DisableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*GlobalSpecType_DisableIpReputation).DisableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("disable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *GetSpecType_BotDefenseAdvanced: + + drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") } - case *GlobalSpecType_EnableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*GlobalSpecType_EnableIpReputation).EnableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("enable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "bot_defense_advanced." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["jwt_validation"]; exists { - - vOpts := append(opts, db.WithValidateField("jwt_validation")) - if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { - return err - } +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetChallengeType() == nil { + return nil, nil } + switch m.GetChallengeType().(type) { + case *GetSpecType_JsChallenge: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { - val := m.GetL7DdosAutoMitigationAction() - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil, nil - switch m.GetL7DdosAutoMitigationAction().(type) { - case *GlobalSpecType_L7DdosActionDefault: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionDefault).L7DdosActionDefault - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_default"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_L7DdosActionBlock: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionBlock).L7DdosActionBlock - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_L7DdosActionJsChallenge: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_L7DdosActionNone: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionNone).L7DdosActionNone - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_none"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + case *GetSpecType_CaptchaChallenge: - } + return nil, nil - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + case *GetSpecType_NoChallenge: - switch m.GetLoadbalancerType().(type) { - case *GlobalSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*GlobalSpecType_Http).Http - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*GlobalSpecType_Https).Https - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert).HttpsAutoCert - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil, nil - } + case *GetSpecType_PolicyBasedChallenge: - if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { - val := m.GetMaliciousUserDetectionChoice() - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") } - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "policy_based_challenge." + dri.DRField + } + return drInfos, err - switch m.GetMaliciousUserDetectionChoice().(type) { - case *GlobalSpecType_EnableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("enable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *GetSpecType_EnableChallenge: + + drInfos, err := m.GetEnableChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") } - case *GlobalSpecType_DisableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("disable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "enable_challenge." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { - - vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) - if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { - return err - } +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { + if m.GetDefaultRoutePools() == nil { + return nil, nil } - switch m.GetMlConfigChoice().(type) { - case *GlobalSpecType_SingleLbApp: - if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { - val := m.GetMlConfigChoice().(*GlobalSpecType_SingleLbApp).SingleLbApp - vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("single_lb_app"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + var drInfos []db.DRefInfo + for idx, e := range m.GetDefaultRoutePools() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") } - case *GlobalSpecType_MultiLbApp: - if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { - val := m.GetMlConfigChoice().(*GlobalSpecType_MultiLbApp).MultiLbApp - vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("multi_lb_app"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetLoadbalancerType() == nil { + return nil, nil } + switch m.GetLoadbalancerType().(type) { + case *GetSpecType_Http: - if fv, exists := v.FldValidators["more_option"]; exists { + return nil, nil - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { - return err + case *GetSpecType_Https: + + drInfos, err := m.GetHttps().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https." + dri.DRField } + return drInfos, err - } + case *GetSpecType_HttpsAutoCert: - switch m.GetOriginPoolChoice().(type) { - case *GlobalSpecType_DefaultPool: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { - val := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPool).DefaultPool - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") } - case *GlobalSpecType_DefaultPoolList: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { - val := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPoolList).DefaultPoolList - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https_auto_cert." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { +} - vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) - if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { - return err - } +func (m *GetSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("malicious_user_mitigation.Object") + dri := db.DRefInfo{ + RefdType: "malicious_user_mitigation.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "malicious_user_mitigation", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil - if fv, exists := v.FldValidators["protected_cookies"]; exists { - vOpts := append(opts, db.WithValidateField("protected_cookies")) - if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { - return err - } +} +// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GetSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") } - if fv, exists := v.FldValidators["rate_limit_choice"]; exists { - val := m.GetRateLimitChoice() - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil } - - switch m.GetRateLimitChoice().(type) { - case *GlobalSpecType_DisableRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*GlobalSpecType_DisableRateLimit).DisableRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("disable_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_RateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { - val := m.GetRateLimitChoice().(*GlobalSpecType_RateLimit).RateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_ApiRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*GlobalSpecType_ApiRateLimit).ApiRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("api_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - + ref := &ves_io_schema.ObjectRefType{ + Kind: "malicious_user_mitigation.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } - if fv, exists := v.FldValidators["routes"]; exists { - vOpts := append(opts, db.WithValidateField("routes")) - if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { - return err - } + return entries, nil +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil } - if fv, exists := v.FldValidators["service_policy_choice"]; exists { - val := m.GetServicePolicyChoice() - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetMoreOption().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField } + return drInfos, err - switch m.GetServicePolicyChoice().(type) { - case *GlobalSpecType_ServicePoliciesFromNamespace: - if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { - val := m.GetServicePolicyChoice().(*GlobalSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("service_policies_from_namespace"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_NoServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*GlobalSpecType_NoServicePolicies).NoServicePolicies - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("no_service_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPoolChoice() == nil { + return nil, nil + } + switch m.GetOriginPoolChoice().(type) { + case *GetSpecType_DefaultPool: + + drInfos, err := m.GetDefaultPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") } - case *GlobalSpecType_ActiveServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*GlobalSpecType_ActiveServicePolicies).ActiveServicePolicies - vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("active_service_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool." + dri.DRField } + return drInfos, err - } + case *GetSpecType_DefaultPoolList: - switch m.GetSlowDdosMitigationChoice().(type) { - case *GlobalSpecType_SlowDdosMitigation: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { - val := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SlowDdosMitigation).SlowDdosMitigation - vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("slow_ddos_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetDefaultPoolList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") } - case *GlobalSpecType_SystemDefaultTimeouts: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { - val := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts - vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("system_default_timeouts"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool_list." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["state"]; exists { - - vOpts := append(opts, db.WithValidateField("state")) - if err := fv(ctx, m.GetState(), vOpts...); err != nil { - return err - } +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginServerSubsetRuleList() == nil { + return nil, nil } - if fv, exists := v.FldValidators["threat_intelligence_choice"]; exists { - val := m.GetThreatIntelligenceChoice() - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_server_subset_rule_list." + dri.DRField } + return drInfos, err - switch m.GetThreatIntelligenceChoice().(type) { - case *GlobalSpecType_DisableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.disable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*GlobalSpecType_DisableThreatIntelligence).DisableThreatIntelligence - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("disable_threat_intelligence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *GlobalSpecType_EnableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.enable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*GlobalSpecType_EnableThreatIntelligence).EnableThreatIntelligence - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("enable_threat_intelligence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } +} +// GetDRefInfo for the field's type +func (m *GetSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimitChoice() == nil { + return nil, nil } + switch m.GetRateLimitChoice().(type) { + case *GetSpecType_DisableRateLimit: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { - val := m.GetTrustClientIpHeadersChoice() - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil, nil - switch m.GetTrustClientIpHeadersChoice().(type) { - case *GlobalSpecType_DisableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("disable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *GetSpecType_RateLimit: + + drInfos, err := m.GetRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") } - case *GlobalSpecType_EnableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("enable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rate_limit." + dri.DRField } + return drInfos, err - } + case *GetSpecType_ApiRateLimit: - if fv, exists := v.FldValidators["trusted_clients"]; exists { - vOpts := append(opts, db.WithValidateField("trusted_clients")) - if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { - return err + drInfos, err := m.GetApiRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_rate_limit." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["user_id_choice"]; exists { - val := m.GetUserIdChoice() - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { + if m.GetRoutes() == nil { + return nil, nil } - switch m.GetUserIdChoice().(type) { - case *GlobalSpecType_UserIdentification: - if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { - val := m.GetUserIdChoice().(*GlobalSpecType_UserIdentification).UserIdentification - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_identification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + var drInfos []db.DRefInfo + for idx, e := range m.GetRoutes() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") } - case *GlobalSpecType_UserIdClientIp: - if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { - val := m.GetUserIdChoice().(*GlobalSpecType_UserIdClientIp).UserIdClientIp - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_id_client_ip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetServicePolicyChoice() == nil { + return nil, nil } + switch m.GetServicePolicyChoice().(type) { + case *GetSpecType_ServicePoliciesFromNamespace: - if fv, exists := v.FldValidators["view_internal"]; exists { + return nil, nil - vOpts := append(opts, db.WithValidateField("view_internal")) - if err := fv(ctx, m.GetViewInternal(), vOpts...); err != nil { - return err - } + case *GetSpecType_NoServicePolicies: - } + return nil, nil - if fv, exists := v.FldValidators["waf_choice"]; exists { - val := m.GetWafChoice() - vOpts := append(opts, - db.WithValidateField("waf_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + case *GetSpecType_ActiveServicePolicies: - switch m.GetWafChoice().(type) { - case *GlobalSpecType_DisableWaf: - if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { - val := m.GetWafChoice().(*GlobalSpecType_DisableWaf).DisableWaf - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("disable_waf"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") } - case *GlobalSpecType_AppFirewall: - if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { - val := m.GetWafChoice().(*GlobalSpecType_AppFirewall).AppFirewall - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("app_firewall"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "active_service_policies." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { - vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) - if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { - return err +} + +func (m *GetSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetUserIdChoice().(type) { + case *GetSpecType_UserIdentification: + + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("user_identification.Object") + dri := db.DRefInfo{ + RefdType: "user_identification.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "user_identification", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil - } + case *GetSpecType_UserIdClientIp: - return nil + return nil, nil + + default: + return nil, nil + } } -// Well-known symbol for default validator implementation -var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { - v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} +// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GetSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + switch m.GetUserIdChoice().(type) { + case *GetSpecType_UserIdentification: + refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") + } - vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler - rulesAdvertiseChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.advertise_choice: %s", err) - panic(errMsg) - } - v.FldValidators["advertise_choice"] = vFn + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "user_identification.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } - vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler - rulesApiDefinitionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.api_definition_choice: %s", err) - panic(errMsg) - } - v.FldValidators["api_definition_choice"] = vFn + case *GetSpecType_UserIdClientIp: - vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler - rulesApiDiscoveryChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.api_discovery_choice: %s", err) - panic(errMsg) } - v.FldValidators["api_discovery_choice"] = vFn - vrhChallengeType := v.ChallengeTypeValidationRuleHandler - rulesChallengeType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhChallengeType(rulesChallengeType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.challenge_type: %s", err) - panic(errMsg) - } - v.FldValidators["challenge_type"] = vFn + return entries, nil +} - vrhDdosDetectionChoice := v.DdosDetectionChoiceValidationRuleHandler - rulesDdosDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDdosDetectionChoice(rulesDdosDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.ddos_detection_choice: %s", err) - panic(errMsg) - } - v.FldValidators["ddos_detection_choice"] = vFn +func (m *GetSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetWafChoice().(type) { + case *GetSpecType_DisableWaf: - vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler - rulesHashPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.hash_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["hash_policy_choice"] = vFn + return nil, nil - vrhHostRewriteParamsHostRewrite := v.HostRewriteParamsHostRewriteValidationRuleHandler - rulesHostRewriteParamsHostRewrite := map[string]string{ - "ves.io.schema.rules.string.hostname": "true", - } - vFnMap["host_rewrite_params.host_rewrite"], err = vrhHostRewriteParamsHostRewrite(rulesHostRewriteParamsHostRewrite) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field GlobalSpecType.host_rewrite_params_host_rewrite: %s", err) - panic(errMsg) - } + case *GetSpecType_AppFirewall: - v.FldValidators["host_rewrite_params.host_rewrite"] = vFnMap["host_rewrite_params.host_rewrite"] + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil - vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler - rulesL7DdosAutoMitigationAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.l7_ddos_auto_mitigation_action: %s", err) - panic(errMsg) + default: + return nil, nil } - v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn +} - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.loadbalancer_type: %s", err) - panic(errMsg) - } - v.FldValidators["loadbalancer_type"] = vFn +// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GetSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler - rulesMaliciousUserDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.malicious_user_detection_choice: %s", err) - panic(errMsg) - } - v.FldValidators["malicious_user_detection_choice"] = vFn + switch m.GetWafChoice().(type) { + case *GetSpecType_DisableWaf: - vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler - rulesRateLimitChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.rate_limit_choice: %s", err) - panic(errMsg) - } - v.FldValidators["rate_limit_choice"] = vFn + case *GetSpecType_AppFirewall: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + } - vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler - rulesServicePolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.service_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["service_policy_choice"] = vFn + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } - vrhThreatIntelligenceChoice := v.ThreatIntelligenceChoiceValidationRuleHandler - rulesThreatIntelligenceChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhThreatIntelligenceChoice(rulesThreatIntelligenceChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.threat_intelligence_choice: %s", err) - panic(errMsg) - } - v.FldValidators["threat_intelligence_choice"] = vFn - vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler - rulesTrustClientIpHeadersChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) + return entries, nil +} + +type ValidateGetSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.trust_client_ip_headers_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") } - v.FldValidators["trust_client_ip_headers_choice"] = vFn + return validatorFn, nil +} - vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler - rulesUserIdChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhUserIdChoice(rulesUserIdChoice) +func (v *ValidateGetSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.user_id_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") } - v.FldValidators["user_id_choice"] = vFn + return validatorFn, nil +} - vrhWafChoice := v.WafChoiceValidationRuleHandler - rulesWafChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhWafChoice(rulesWafChoice) +func (v *ValidateGetSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.waf_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") } - v.FldValidators["waf_choice"] = vFn + return validatorFn, nil +} - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.vh_domain": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhDomains(rulesDomains) +func (v *ValidateGetSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.domains: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") } - v.FldValidators["domains"] = vFn + return validatorFn, nil +} - vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler - rulesDefaultRoutePools := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) +func (v *ValidateGetSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.default_route_pools: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") } - v.FldValidators["default_route_pools"] = vFn + return validatorFn, nil +} - vrhRoutes := v.RoutesValidationRuleHandler - rulesRoutes := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRoutes(rulesRoutes) +func (v *ValidateGetSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.routes: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") } - v.FldValidators["routes"] = vFn + return validatorFn, nil +} - vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler - rulesWafExclusionRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) +func (v *ValidateGetSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.waf_exclusion_rules: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") } - v.FldValidators["waf_exclusion_rules"] = vFn + return validatorFn, nil +} - vrhBlockedClients := v.BlockedClientsValidationRuleHandler - rulesBlockedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhBlockedClients(rulesBlockedClients) +func (v *ValidateGetSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.blocked_clients: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") } - v.FldValidators["blocked_clients"] = vFn + return validatorFn, nil +} - vrhTrustedClients := v.TrustedClientsValidationRuleHandler - rulesTrustedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhTrustedClients(rulesTrustedClients) +func (v *ValidateGetSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.trusted_clients: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") } - v.FldValidators["trusted_clients"] = vFn + return validatorFn, nil +} - vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler - rulesDdosMitigationRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) +func (v *ValidateGetSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.ddos_mitigation_rules: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") } - v.FldValidators["ddos_mitigation_rules"] = vFn + return validatorFn, nil +} - vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler - rulesDataGuardRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDataGuardRules(rulesDataGuardRules) +func (v *ValidateGetSpecType) ThreatMeshChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.data_guard_rules: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for threat_mesh_choice") } - v.FldValidators["data_guard_rules"] = vFn + return validatorFn, nil +} - vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler - rulesGraphqlRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhGraphqlRules(rulesGraphqlRules) +func (v *ValidateGetSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.graphql_rules: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") } - v.FldValidators["graphql_rules"] = vFn + return validatorFn, nil +} - vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler - rulesProtectedCookies := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhProtectedCookies(rulesProtectedCookies) +func (v *ValidateGetSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.protected_cookies: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") } - v.FldValidators["protected_cookies"] = vFn - - v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate - v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate - - v.FldValidators["api_definition_choice.api_definitions"] = ApiDefinitionListValidator().Validate - v.FldValidators["api_definition_choice.api_specification"] = APISpecificationSettingsValidator().Validate - v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_discovery_choice.enable_api_discovery"] = ApiDiscoverySettingValidator().Validate - - v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate - v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate - - v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate - v.FldValidators["challenge_type.policy_based_challenge"] = PolicyBasedChallengeValidator().Validate - v.FldValidators["challenge_type.enable_challenge"] = EnableChallengeValidator().Validate - - v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate - - v.FldValidators["ddos_detection_choice.enable_ddos_detection"] = EnableDDoSDetectionSettingValidator().Validate - - v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate - v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate - - v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = IPThreatCategoryListTypeValidator().Validate - - v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - - v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate - - v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate - - v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate - v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate - - v.FldValidators["rate_limit_choice.rate_limit"] = RateLimitConfigTypeValidator().Validate - v.FldValidators["rate_limit_choice.api_rate_limit"] = APIRateLimitValidator().Validate - - v.FldValidators["service_policy_choice.active_service_policies"] = ServicePolicyListValidator().Validate - - v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate - - v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate - - v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate - - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - - v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["api_protection_rules"] = APIProtectionRulesValidator().Validate - - v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate - - v.FldValidators["jwt_validation"] = JWTValidationValidator().Validate - - v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate - - v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate - - return v -}() - -func GlobalSpecTypeValidator() db.Validator { - return DefaultGlobalSpecTypeValidator + return validatorFn, nil } -// augmented methods on protoc/std generated struct - -func (m *HashPolicyListType) ToJSON() (string, error) { - return codec.ToJSON(m) +func (v *ValidateGetSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") + } + return validatorFn, nil } -func (m *HashPolicyListType) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateGetSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *HashPolicyListType) DeepCopy() *HashPolicyListType { - if m == nil { - return nil - } - ser, err := m.Marshal() + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &HashPolicyListType{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") } - return c -} -func (m *HashPolicyListType) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated domains") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items domains") + } return nil } - return m.DeepCopy() -} - -func (m *HashPolicyListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return HashPolicyListTypeValidator().Validate(ctx, m, opts...) -} -type ValidateHashPolicyListType struct { - FldValidators map[string]db.ValidatorFunc + return validatorFn, nil } -func (v *ValidateHashPolicyListType) HashPolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGetSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for hash_policy") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_route.HashPolicyType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema_route.HashPolicyTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -16927,13 +6851,13 @@ func (v *ValidateHashPolicyListType) HashPolicyValidationRuleHandler(rules map[s } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for hash_policy") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_route.HashPolicyType) + elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_route.HashPolicyType, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) } l := []string{} for _, elem := range elems { @@ -16944,10 +6868,10 @@ func (v *ValidateHashPolicyListType) HashPolicyValidationRuleHandler(rules map[s l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated hash_policy") + return errors.Wrap(err, "repeated default_route_pools") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items hash_policy") + return errors.Wrap(err, "items default_route_pools") } return nil } @@ -16955,117 +6879,19 @@ func (v *ValidateHashPolicyListType) HashPolicyValidationRuleHandler(rules map[s return validatorFn, nil } -func (v *ValidateHashPolicyListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*HashPolicyListType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *HashPolicyListType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["hash_policy"]; exists { - vOpts := append(opts, db.WithValidateField("hash_policy")) - if err := fv(ctx, m.GetHashPolicy(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultHashPolicyListTypeValidator = func() *ValidateHashPolicyListType { - v := &ValidateHashPolicyListType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhHashPolicy := v.HashPolicyValidationRuleHandler - rulesHashPolicy := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhHashPolicy(rulesHashPolicy) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for HashPolicyListType.hash_policy: %s", err) - panic(errMsg) - } - v.FldValidators["hash_policy"] = vFn - - return v -}() - -func HashPolicyListTypeValidator() db.Validator { - return DefaultHashPolicyListTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *HttpHeaderMatcherList) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *HttpHeaderMatcherList) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *HttpHeaderMatcherList) DeepCopy() *HttpHeaderMatcherList { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &HttpHeaderMatcherList{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *HttpHeaderMatcherList) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *HttpHeaderMatcherList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return HttpHeaderMatcherListValidator().Validate(ctx, m, opts...) -} - -type ValidateHttpHeaderMatcherList struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateHttpHeaderMatcherList) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGetSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -17073,13 +6899,13 @@ func (v *ValidateHttpHeaderMatcherList) HeadersValidationRuleHandler(rules map[s } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderMatcherType) + elems, ok := val.([]*RouteType) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) + return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) } l := []string{} for _, elem := range elems { @@ -17090,10 +6916,10 @@ func (v *ValidateHttpHeaderMatcherList) HeadersValidationRuleHandler(rules map[s l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated headers") + return errors.Wrap(err, "repeated routes") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items headers") + return errors.Wrap(err, "items routes") } return nil } @@ -17101,144 +6927,47 @@ func (v *ValidateHttpHeaderMatcherList) HeadersValidationRuleHandler(rules map[s return validatorFn, nil } -func (v *ValidateHttpHeaderMatcherList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*HttpHeaderMatcherList) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *HttpHeaderMatcherList got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["headers"]; exists { - vOpts := append(opts, db.WithValidateField("headers")) - if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultHttpHeaderMatcherListValidator = func() *ValidateHttpHeaderMatcherList { - v := &ValidateHttpHeaderMatcherList{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhHeaders := v.HeadersValidationRuleHandler - rulesHeaders := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", - } - vFn, err = vrhHeaders(rulesHeaders) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for HttpHeaderMatcherList.headers: %s", err) - panic(errMsg) - } - v.FldValidators["headers"] = vFn - - return v -}() - -func HttpHeaderMatcherListValidator() db.Validator { - return DefaultHttpHeaderMatcherListValidator -} - -// augmented methods on protoc/std generated struct - -func (m *IPThreatCategoryListType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *IPThreatCategoryListType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *IPThreatCategoryListType) DeepCopy() *IPThreatCategoryListType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &IPThreatCategoryListType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *IPThreatCategoryListType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *IPThreatCategoryListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return IPThreatCategoryListTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateIPThreatCategoryListType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateIPThreatCategoryListType) IpThreatCategoriesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGetSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema_policy.IPThreatCategory) - return int32(i) - } - // ves_io_schema_policy.IPThreatCategory_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema_policy.IPThreatCategory_name, conv) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ip_threat_categories") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema_policy.IPThreatCategory, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ip_threat_categories") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema_policy.IPThreatCategory) + elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema_policy.IPThreatCategory, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated ip_threat_categories") + return errors.Wrap(err, "repeated waf_exclusion_rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items ip_threat_categories") + return errors.Wrap(err, "items waf_exclusion_rules") } return nil } @@ -17246,632 +6975,628 @@ func (v *ValidateIPThreatCategoryListType) IpThreatCategoriesValidationRuleHandl return validatorFn, nil } -func (v *ValidateIPThreatCategoryListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*IPThreatCategoryListType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *IPThreatCategoryListType got type %s", t) - } +func (v *ValidateGetSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") } - if m == nil { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") + } - if fv, exists := v.FldValidators["ip_threat_categories"]; exists { - vOpts := append(opts, db.WithValidateField("ip_threat_categories")) - if err := fv(ctx, m.GetIpThreatCategories(), vOpts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) } - + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated blocked_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items blocked_clients") + } + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultIPThreatCategoryListTypeValidator = func() *ValidateIPThreatCategoryListType { - v := &ValidateIPThreatCategoryListType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateGetSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhIpThreatCategories := v.IpThreatCategoriesValidationRuleHandler - rulesIpThreatCategories := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhIpThreatCategories(rulesIpThreatCategories) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for IPThreatCategoryListType.ip_threat_categories: %s", err) - panic(errMsg) - } - v.FldValidators["ip_threat_categories"] = vFn - - return v -}() - -func IPThreatCategoryListTypeValidator() db.Validator { - return DefaultIPThreatCategoryListTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *InlineRateLimiter) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *InlineRateLimiter) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *InlineRateLimiter) DeepCopy() *InlineRateLimiter { - if m == nil { - return nil + return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") } - ser, err := m.Marshal() - if err != nil { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &InlineRateLimiter{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") } - return c -} -func (m *InlineRateLimiter) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated trusted_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items trusted_clients") + } return nil } - return m.DeepCopy() -} - -func (m *InlineRateLimiter) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return InlineRateLimiterValidator().Validate(ctx, m, opts...) -} - -func (m *InlineRateLimiter) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetCountByChoiceDRefInfo() + return validatorFn, nil } -func (m *InlineRateLimiter) GetCountByChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetCountByChoice().(type) { - case *InlineRateLimiter_UseHttpLbUserId: - - return nil, nil - - case *InlineRateLimiter_RefUserId: - - vref := m.GetRefUserId() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("user_identification.Object") - dri := db.DRefInfo{ - RefdType: "user_identification.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "ref_user_id", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil +func (v *ValidateGetSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - default: - return nil, nil + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") } -} - -// GetCountByChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *InlineRateLimiter) GetCountByChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetCountByChoice().(type) { - case *InlineRateLimiter_UseHttpLbUserId: - - case *InlineRateLimiter_RefUserId: - refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") + itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") + } - vref := m.GetRefUserId() - if vref == nil { - return nil, nil + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*DDoSMitigationRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) } - ref := &ves_io_schema.ObjectRefType{ - Kind: "user_identification.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated ddos_mitigation_rules") } - if refdEnt != nil { - entries = append(entries, refdEnt) + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items ddos_mitigation_rules") } - - } - - return entries, nil -} - -type ValidateInlineRateLimiter struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateInlineRateLimiter) CountByChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for count_by_choice") - } - return validatorFn, nil -} - -func (v *ValidateInlineRateLimiter) ThresholdValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for threshold") + return nil } return validatorFn, nil } -func (v *ValidateInlineRateLimiter) UnitValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGetSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema_rate_limiter.RateLimitPeriodUnit) - return int32(i) - } - // ves_io_schema_rate_limiter.RateLimitPeriodUnit_name is generated in .pb.go - validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema_rate_limiter.RateLimitPeriodUnit_name, conv) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for unit") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") } - - return validatorFn, nil -} - -func (v *ValidateInlineRateLimiter) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*InlineRateLimiter) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *InlineRateLimiter got type %s", t) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - } - if m == nil { return nil } - - if fv, exists := v.FldValidators["count_by_choice"]; exists { - val := m.GetCountByChoice() - vOpts := append(opts, - db.WithValidateField("count_by_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") } - switch m.GetCountByChoice().(type) { - case *InlineRateLimiter_UseHttpLbUserId: - if fv, exists := v.FldValidators["count_by_choice.use_http_lb_user_id"]; exists { - val := m.GetCountByChoice().(*InlineRateLimiter_UseHttpLbUserId).UseHttpLbUserId - vOpts := append(opts, - db.WithValidateField("count_by_choice"), - db.WithValidateField("use_http_lb_user_id"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) } - case *InlineRateLimiter_RefUserId: - if fv, exists := v.FldValidators["count_by_choice.ref_user_id"]; exists { - val := m.GetCountByChoice().(*InlineRateLimiter_RefUserId).RefUserId - vOpts := append(opts, - db.WithValidateField("count_by_choice"), - db.WithValidateField("ref_user_id"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) } + l = append(l, strVal) } - - } - - if fv, exists := v.FldValidators["threshold"]; exists { - - vOpts := append(opts, db.WithValidateField("threshold")) - if err := fv(ctx, m.GetThreshold(), vOpts...); err != nil { - return err + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated data_guard_rules") } - - } - - if fv, exists := v.FldValidators["unit"]; exists { - - vOpts := append(opts, db.WithValidateField("unit")) - if err := fv(ctx, m.GetUnit(), vOpts...); err != nil { - return err + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items data_guard_rules") } - + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultInlineRateLimiterValidator = func() *ValidateInlineRateLimiter { - v := &ValidateInlineRateLimiter{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhCountByChoice := v.CountByChoiceValidationRuleHandler - rulesCountByChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhCountByChoice(rulesCountByChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for InlineRateLimiter.count_by_choice: %s", err) - panic(errMsg) - } - v.FldValidators["count_by_choice"] = vFn +func (v *ValidateGetSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhThreshold := v.ThresholdValidationRuleHandler - rulesThreshold := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.uint32.gt": "0", - "ves.io.schema.rules.uint32.lte": "8192", - } - vFn, err = vrhThreshold(rulesThreshold) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for InlineRateLimiter.threshold: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") } - v.FldValidators["threshold"] = vFn - - vrhUnit := v.UnitValidationRuleHandler - rulesUnit := map[string]string{ - "ves.io.schema.rules.message.required": "true", + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - vFn, err = vrhUnit(rulesUnit) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for InlineRateLimiter.unit: %s", err) - panic(errMsg) - } - v.FldValidators["unit"] = vFn - - v.FldValidators["count_by_choice.ref_user_id"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - return v -}() - -func InlineRateLimiterValidator() db.Validator { - return DefaultInlineRateLimiterValidator -} - -// augmented methods on protoc/std generated struct - -func (m *JWKS) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *JWKS) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *JWKS) String() string { - if m == nil { - return "" + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") } - copy := m.DeepCopy() - copy.Redact(context.Background()) - return copy.string() -} -func (m *JWKS) GoString() string { - copy := m.DeepCopy() - copy.Redact(context.Background()) - return copy.goString() -} - -// Redact squashes sensitive info in m (in-place) -func (m *JWKS) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated graphql_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items graphql_rules") + } return nil } - m.Cleartext = "" - - return nil + return validatorFn, nil } -func (m *JWKS) DeepCopy() *JWKS { - if m == nil { - return nil - } - ser, err := m.Marshal() +func (v *ValidateGetSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &JWKS{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") } - return c -} -func (m *JWKS) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated protected_cookies") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items protected_cookies") + } return nil } - return m.DeepCopy() -} - -func (m *JWKS) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return JWKSValidator().Validate(ctx, m, opts...) -} -type ValidateJWKS struct { - FldValidators map[string]db.ValidatorFunc + return validatorFn, nil } -func (v *ValidateJWKS) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*JWKS) +func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetSpecType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *JWKS got type %s", t) + return fmt.Errorf("Expected type *GetSpecType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["cleartext"]; exists { + if fv, exists := v.FldValidators["add_location"]; exists { - vOpts := append(opts, db.WithValidateField("cleartext")) - if err := fv(ctx, m.GetCleartext(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultJWKSValidator = func() *ValidateJWKS { - v := &ValidateJWKS{FldValidators: map[string]db.ValidatorFunc{}} - - return v -}() - -func JWKSValidator() db.Validator { - return DefaultJWKSValidator -} - -// augmented methods on protoc/std generated struct - -func (m *JWTValidation) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *JWTValidation) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -// Redact squashes sensitive info in m (in-place) -func (m *JWTValidation) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetJwksConfig().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting JWTValidation.jwks_config") + if fv, exists := v.FldValidators["advertise_choice"]; exists { + val := m.GetAdvertiseChoice() + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return nil -} + switch m.GetAdvertiseChoice().(type) { + case *GetSpecType_AdvertiseOnPublic: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { + val := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublic).AdvertiseOnPublic + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_AdvertiseCustom: + if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { + val := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseCustom).AdvertiseCustom + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_custom"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_DoNotAdvertise: + if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { + val := m.GetAdvertiseChoice().(*GetSpecType_DoNotAdvertise).DoNotAdvertise + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("do_not_advertise"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_AdvertiseOnPublicDefaultVip: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { + val := m.GetAdvertiseChoice().(*GetSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public_default_vip"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *JWTValidation) DeepCopy() *JWTValidation { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &JWTValidation{} - err = c.Unmarshal(ser) - if err != nil { - return nil } - return c -} -func (m *JWTValidation) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fv, exists := v.FldValidators["api_definition_choice"]; exists { + val := m.GetApiDefinitionChoice() + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return m.DeepCopy() -} - -func (m *JWTValidation) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return JWTValidationValidator().Validate(ctx, m, opts...) -} -type ValidateJWTValidation struct { - FldValidators map[string]db.ValidatorFunc -} + switch m.GetApiDefinitionChoice().(type) { + case *GetSpecType_ApiDefinitions: + if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { + val := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinitions).ApiDefinitions + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definitions"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_ApiSpecification: + if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { + val := m.GetApiDefinitionChoice().(*GetSpecType_ApiSpecification).ApiSpecification + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_specification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_DisableApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*GetSpecType_DisableApiDefinition).DisableApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("disable_api_definition"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_ApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*GetSpecType_ApiDefinition).ApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definition"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (v *ValidateJWTValidation) JwksConfigurationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for jwks_configuration") } - return validatorFn, nil -} -func (v *ValidateJWTValidation) TargetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for target") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { + if fv, exists := v.FldValidators["api_discovery_choice"]; exists { + val := m.GetApiDiscoveryChoice() + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } - if err := TargetValidator().Validate(ctx, val, opts...); err != nil { - return err + switch m.GetApiDiscoveryChoice().(type) { + case *GetSpecType_EnableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*GetSpecType_EnableApiDiscovery).EnableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("enable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_DisableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*GetSpecType_DisableApiDiscovery).DisableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("disable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return nil } - return validatorFn, nil -} - -func (v *ValidateJWTValidation) TokenLocationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for token_location") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } + if fv, exists := v.FldValidators["api_protection_rules"]; exists { - if err := TokenLocationValidator().Validate(ctx, val, opts...); err != nil { + vOpts := append(opts, db.WithValidateField("api_protection_rules")) + if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { return err } - return nil } - return validatorFn, nil -} - -func (v *ValidateJWTValidation) ActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["auto_cert_info"]; exists { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for action") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { + vOpts := append(opts, db.WithValidateField("auto_cert_info")) + if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { return err } - if err := ves_io_schema.ActionValidator().Validate(ctx, val, opts...); err != nil { + } + + if fv, exists := v.FldValidators["blocked_clients"]; exists { + vOpts := append(opts, db.WithValidateField("blocked_clients")) + if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { return err } - return nil } - return validatorFn, nil -} - -func (v *ValidateJWTValidation) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*JWTValidation) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *JWTValidation got type %s", t) + switch m.GetBotDefenseChoice().(type) { + case *GetSpecType_DisableBotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*GetSpecType_DisableBotDefense).DisableBotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("disable_bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - } - if m == nil { - return nil + case *GetSpecType_BotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*GetSpecType_BotDefense).BotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_BotDefenseAdvanced: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { + val := m.GetBotDefenseChoice().(*GetSpecType_BotDefenseAdvanced).BotDefenseAdvanced + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - if fv, exists := v.FldValidators["action"]; exists { + if fv, exists := v.FldValidators["cert_state"]; exists { - vOpts := append(opts, db.WithValidateField("action")) - if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("cert_state")) + if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["jwks_configuration"]; exists { - val := m.GetJwksConfiguration() + if fv, exists := v.FldValidators["challenge_type"]; exists { + val := m.GetChallengeType() vOpts := append(opts, - db.WithValidateField("jwks_configuration"), + db.WithValidateField("challenge_type"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetJwksConfiguration().(type) { - case *JWTValidation_AuthServerUri: - if fv, exists := v.FldValidators["jwks_configuration.auth_server_uri"]; exists { - val := m.GetJwksConfiguration().(*JWTValidation_AuthServerUri).AuthServerUri + switch m.GetChallengeType().(type) { + case *GetSpecType_JsChallenge: + if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { + val := m.GetChallengeType().(*GetSpecType_JsChallenge).JsChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_CaptchaChallenge: + if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { + val := m.GetChallengeType().(*GetSpecType_CaptchaChallenge).CaptchaChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("captcha_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_NoChallenge: + if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { + val := m.GetChallengeType().(*GetSpecType_NoChallenge).NoChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("no_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_PolicyBasedChallenge: + if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { + val := m.GetChallengeType().(*GetSpecType_PolicyBasedChallenge).PolicyBasedChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("policy_based_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_EnableChallenge: + if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { + val := m.GetChallengeType().(*GetSpecType_EnableChallenge).EnableChallenge vOpts := append(opts, - db.WithValidateField("jwks_configuration"), - db.WithValidateField("auth_server_uri"), + db.WithValidateField("challenge_type"), + db.WithValidateField("enable_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *JWTValidation_Jwks: - if fv, exists := v.FldValidators["jwks_configuration.jwks"]; exists { - val := m.GetJwksConfiguration().(*JWTValidation_Jwks).Jwks + + } + + switch m.GetClientSideDefenseChoice().(type) { + case *GetSpecType_DisableClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*GetSpecType_DisableClientSideDefense).DisableClientSideDefense vOpts := append(opts, - db.WithValidateField("jwks_configuration"), - db.WithValidateField("jwks"), + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("disable_client_side_defense"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *JWTValidation_JwksConfig: - if fv, exists := v.FldValidators["jwks_configuration.jwks_config"]; exists { - val := m.GetJwksConfiguration().(*JWTValidation_JwksConfig).JwksConfig + case *GetSpecType_ClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*GetSpecType_ClientSideDefense).ClientSideDefense vOpts := append(opts, - db.WithValidateField("jwks_configuration"), - db.WithValidateField("jwks_config"), + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("client_side_defense"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -17880,694 +7605,744 @@ func (v *ValidateJWTValidation) Validate(ctx context.Context, pm interface{}, op } - if fv, exists := v.FldValidators["mandatory_claims"]; exists { + if fv, exists := v.FldValidators["cors_policy"]; exists { - vOpts := append(opts, db.WithValidateField("mandatory_claims")) - if err := fv(ctx, m.GetMandatoryClaims(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("cors_policy")) + if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["reserved_claims"]; exists { + if fv, exists := v.FldValidators["csrf_policy"]; exists { - vOpts := append(opts, db.WithValidateField("reserved_claims")) - if err := fv(ctx, m.GetReservedClaims(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("csrf_policy")) + if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["target"]; exists { - - vOpts := append(opts, db.WithValidateField("target")) - if err := fv(ctx, m.GetTarget(), vOpts...); err != nil { + if fv, exists := v.FldValidators["data_guard_rules"]; exists { + vOpts := append(opts, db.WithValidateField("data_guard_rules")) + if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["token_location"]; exists { - - vOpts := append(opts, db.WithValidateField("token_location")) - if err := fv(ctx, m.GetTokenLocation(), vOpts...); err != nil { + if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { + vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) + if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultJWTValidationValidator = func() *ValidateJWTValidation { - v := &ValidateJWTValidation{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + if fv, exists := v.FldValidators["default_route_pools"]; exists { + vOpts := append(opts, db.WithValidateField("default_route_pools")) + if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { + return err + } - vrhJwksConfiguration := v.JwksConfigurationValidationRuleHandler - rulesJwksConfiguration := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhJwksConfiguration(rulesJwksConfiguration) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.jwks_configuration: %s", err) - panic(errMsg) - } - v.FldValidators["jwks_configuration"] = vFn - vrhTarget := v.TargetValidationRuleHandler - rulesTarget := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhTarget(rulesTarget) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.target: %s", err) - panic(errMsg) - } - v.FldValidators["target"] = vFn + if fv, exists := v.FldValidators["dns_info"]; exists { - vrhTokenLocation := v.TokenLocationValidationRuleHandler - rulesTokenLocation := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhTokenLocation(rulesTokenLocation) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.token_location: %s", err) - panic(errMsg) - } - v.FldValidators["token_location"] = vFn + vOpts := append(opts, db.WithValidateField("dns_info")) + for idx, item := range m.GetDnsInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } - vrhAction := v.ActionValidationRuleHandler - rulesAction := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhAction(rulesAction) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for JWTValidation.action: %s", err) - panic(errMsg) } - v.FldValidators["action"] = vFn - - v.FldValidators["reserved_claims"] = ReservedClaimsValidator().Validate - - v.FldValidators["mandatory_claims"] = MandatoryClaimsValidator().Validate - - return v -}() - -func JWTValidationValidator() db.Validator { - return DefaultJWTValidationValidator -} -// augmented methods on protoc/std generated struct - -func (m *MandatoryClaims) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *MandatoryClaims) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *MandatoryClaims) DeepCopy() *MandatoryClaims { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &MandatoryClaims{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err + } -func (m *MandatoryClaims) DeepCopyProto() proto.Message { - if m == nil { - return nil } - return m.DeepCopy() -} - -func (m *MandatoryClaims) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return MandatoryClaimsValidator().Validate(ctx, m, opts...) -} -type ValidateMandatoryClaims struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateMandatoryClaims) ClaimNamesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["downstream_tls_certificate_expiration_timestamps"]; exists { - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for claim_names") - } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) + vOpts := append(opts, db.WithValidateField("downstream_tls_certificate_expiration_timestamps")) + for idx, item := range m.GetDownstreamTlsCertificateExpirationTimestamps() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err } } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for claim_names") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated claim_names") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items claim_names") - } - return nil } - return validatorFn, nil -} - -func (v *ValidateMandatoryClaims) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*MandatoryClaims) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *MandatoryClaims got type %s", t) + if fv, exists := v.FldValidators["graphql_rules"]; exists { + vOpts := append(opts, db.WithValidateField("graphql_rules")) + if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { + return err } - } - if m == nil { - return nil + } - if fv, exists := v.FldValidators["claim_names"]; exists { - vOpts := append(opts, db.WithValidateField("claim_names")) - if err := fv(ctx, m.GetClaimNames(), vOpts...); err != nil { + if fv, exists := v.FldValidators["hash_policy_choice"]; exists { + val := m.GetHashPolicyChoice() + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultMandatoryClaimsValidator = func() *ValidateMandatoryClaims { - v := &ValidateMandatoryClaims{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhClaimNames := v.ClaimNamesValidationRuleHandler - rulesClaimNames := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhClaimNames(rulesClaimNames) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for MandatoryClaims.claim_names: %s", err) - panic(errMsg) - } - v.FldValidators["claim_names"] = vFn + switch m.GetHashPolicyChoice().(type) { + case *GetSpecType_RoundRobin: + if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { + val := m.GetHashPolicyChoice().(*GetSpecType_RoundRobin).RoundRobin + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("round_robin"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_LeastActive: + if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { + val := m.GetHashPolicyChoice().(*GetSpecType_LeastActive).LeastActive + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("least_active"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_Random: + if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { + val := m.GetHashPolicyChoice().(*GetSpecType_Random).Random + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("random"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_SourceIpStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*GetSpecType_SourceIpStickiness).SourceIpStickiness + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("source_ip_stickiness"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_CookieStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*GetSpecType_CookieStickiness).CookieStickiness + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("cookie_stickiness"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_RingHash: + if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { + val := m.GetHashPolicyChoice().(*GetSpecType_RingHash).RingHash + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("ring_hash"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - return v -}() + } -func MandatoryClaimsValidator() db.Validator { - return DefaultMandatoryClaimsValidator -} + if fv, exists := v.FldValidators["host_name"]; exists { -// augmented methods on protoc/std generated struct + vOpts := append(opts, db.WithValidateField("host_name")) + if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { + return err + } -func (m *MirrorPolicyType) ToJSON() (string, error) { - return codec.ToJSON(m) -} + } -func (m *MirrorPolicyType) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fv, exists := v.FldValidators["internet_vip_info"]; exists { -func (m *MirrorPolicyType) DeepCopy() *MirrorPolicyType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &MirrorPolicyType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} + vOpts := append(opts, db.WithValidateField("internet_vip_info")) + for idx, item := range m.GetInternetVipInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } -func (m *MirrorPolicyType) DeepCopyProto() proto.Message { - if m == nil { - return nil } - return m.DeepCopy() -} -func (m *MirrorPolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return MirrorPolicyTypeValidator().Validate(ctx, m, opts...) -} + switch m.GetIpReputationChoice().(type) { + case *GetSpecType_DisableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*GetSpecType_DisableIpReputation).DisableIpReputation + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("disable_ip_reputation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_EnableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*GetSpecType_EnableIpReputation).EnableIpReputation + vOpts := append(opts, + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("enable_ip_reputation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *MirrorPolicyType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil } - return m.GetOriginPoolDRefInfo() - -} + if fv, exists := v.FldValidators["jwt_validation"]; exists { -func (m *MirrorPolicyType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { + vOpts := append(opts, db.WithValidateField("jwt_validation")) + if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { + return err + } - vref := m.GetOriginPool() - if vref == nil { - return nil, nil } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("origin_pool.Object") - dri := db.DRefInfo{ - RefdType: "origin_pool.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "origin_pool", - Ref: vdRef, + + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { + val := m.GetL7DdosAutoMitigationAction() + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return []db.DRefInfo{dri}, nil -} + switch m.GetL7DdosAutoMitigationAction().(type) { + case *GetSpecType_L7DdosActionDefault: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionDefault).L7DdosActionDefault + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_default"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_L7DdosActionBlock: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionBlock).L7DdosActionBlock + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_L7DdosActionJsChallenge: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_L7DdosActionNone: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GetSpecType_L7DdosActionNone).L7DdosActionNone + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_none"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// GetOriginPoolDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *MirrorPolicyType) GetOriginPoolDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "origin_pool.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: origin_pool") } - vref := m.GetOriginPool() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "origin_pool.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return entries, nil -} - -type ValidateMirrorPolicyType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateMirrorPolicyType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + switch m.GetLoadbalancerType().(type) { + case *GetSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*GetSpecType_Http).Http + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*GetSpecType_Https).Https + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*GetSpecType_HttpsAutoCert).HttpsAutoCert + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { + + if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { + val := m.GetMaliciousUserDetectionChoice() + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + switch m.GetMaliciousUserDetectionChoice().(type) { + case *GetSpecType_EnableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*GetSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("enable_malicious_user_detection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_DisableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*GetSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("disable_malicious_user_detection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return nil } - return validatorFn, nil -} - -func (v *ValidateMirrorPolicyType) PercentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for percent") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { + vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) + if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { return err } - if err := ves_io_schema.FractionalPercentValidator().Validate(ctx, val, opts...); err != nil { - return err + } + + switch m.GetMlConfigChoice().(type) { + case *GetSpecType_SingleLbApp: + if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { + val := m.GetMlConfigChoice().(*GetSpecType_SingleLbApp).SingleLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("single_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_MultiLbApp: + if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { + val := m.GetMlConfigChoice().(*GetSpecType_MultiLbApp).MultiLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("multi_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return nil } - return validatorFn, nil -} + if fv, exists := v.FldValidators["more_option"]; exists { -func (v *ValidateMirrorPolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*MirrorPolicyType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *MirrorPolicyType got type %s", t) + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err } - } - if m == nil { - return nil - } - if fv, exists := v.FldValidators["origin_pool"]; exists { + } - vOpts := append(opts, db.WithValidateField("origin_pool")) - if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { - return err + switch m.GetOriginPoolChoice().(type) { + case *GetSpecType_DefaultPool: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { + val := m.GetOriginPoolChoice().(*GetSpecType_DefaultPool).DefaultPool + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_DefaultPoolList: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { + val := m.GetOriginPoolChoice().(*GetSpecType_DefaultPoolList).DefaultPoolList + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } } - if fv, exists := v.FldValidators["percent"]; exists { + if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { - vOpts := append(opts, db.WithValidateField("percent")) - if err := fv(ctx, m.GetPercent(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) + if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultMirrorPolicyTypeValidator = func() *ValidateMirrorPolicyType { - v := &ValidateMirrorPolicyType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + if fv, exists := v.FldValidators["protected_cookies"]; exists { + vOpts := append(opts, db.WithValidateField("protected_cookies")) + if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { + return err + } - vrhOriginPool := v.OriginPoolValidationRuleHandler - rulesOriginPool := map[string]string{ - "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhOriginPool(rulesOriginPool) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for MirrorPolicyType.origin_pool: %s", err) - panic(errMsg) - } - v.FldValidators["origin_pool"] = vFn - vrhPercent := v.PercentValidationRuleHandler - rulesPercent := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPercent(rulesPercent) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for MirrorPolicyType.percent: %s", err) - panic(errMsg) + if fv, exists := v.FldValidators["rate_limit_choice"]; exists { + val := m.GetRateLimitChoice() + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - v.FldValidators["percent"] = vFn - - return v -}() - -func MirrorPolicyTypeValidator() db.Validator { - return DefaultMirrorPolicyTypeValidator -} -// augmented methods on protoc/std generated struct + switch m.GetRateLimitChoice().(type) { + case *GetSpecType_DisableRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*GetSpecType_DisableRateLimit).DisableRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("disable_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_RateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { + val := m.GetRateLimitChoice().(*GetSpecType_RateLimit).RateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_ApiRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*GetSpecType_ApiRateLimit).ApiRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("api_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *MobileSDKConfigType) ToJSON() (string, error) { - return codec.ToJSON(m) -} + } -func (m *MobileSDKConfigType) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fv, exists := v.FldValidators["routes"]; exists { + vOpts := append(opts, db.WithValidateField("routes")) + if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { + return err + } -func (m *MobileSDKConfigType) DeepCopy() *MobileSDKConfigType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &MobileSDKConfigType{} - err = c.Unmarshal(ser) - if err != nil { - return nil } - return c -} -func (m *MobileSDKConfigType) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fv, exists := v.FldValidators["service_policy_choice"]; exists { + val := m.GetServicePolicyChoice() + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return m.DeepCopy() -} -func (m *MobileSDKConfigType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return MobileSDKConfigTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateMobileSDKConfigType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateMobileSDKConfigType) ReloadHeaderNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + switch m.GetServicePolicyChoice().(type) { + case *GetSpecType_ServicePoliciesFromNamespace: + if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { + val := m.GetServicePolicyChoice().(*GetSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("service_policies_from_namespace"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_NoServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*GetSpecType_NoServicePolicies).NoServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("no_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_ActiveServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*GetSpecType_ActiveServicePolicies).ActiveServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("active_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for reload_header_name") } - return validatorFn, nil -} - -func (v *ValidateMobileSDKConfigType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*MobileSDKConfigType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *MobileSDKConfigType got type %s", t) + switch m.GetSlowDdosMitigationChoice().(type) { + case *GetSpecType_SlowDdosMitigation: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { + val := m.GetSlowDdosMitigationChoice().(*GetSpecType_SlowDdosMitigation).SlowDdosMitigation + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("slow_ddos_mitigation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - } - if m == nil { - return nil + case *GetSpecType_SystemDefaultTimeouts: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { + val := m.GetSlowDdosMitigationChoice().(*GetSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("system_default_timeouts"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - if fv, exists := v.FldValidators["mobile_identifier"]; exists { + if fv, exists := v.FldValidators["state"]; exists { - vOpts := append(opts, db.WithValidateField("mobile_identifier")) - if err := fv(ctx, m.GetMobileIdentifier(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("state")) + if err := fv(ctx, m.GetState(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["reload_header_name"]; exists { - - vOpts := append(opts, db.WithValidateField("reload_header_name")) - if err := fv(ctx, m.GetReloadHeaderName(), vOpts...); err != nil { + if fv, exists := v.FldValidators["threat_mesh_choice"]; exists { + val := m.GetThreatMeshChoice() + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultMobileSDKConfigTypeValidator = func() *ValidateMobileSDKConfigType { - v := &ValidateMobileSDKConfigType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + switch m.GetThreatMeshChoice().(type) { + case *GetSpecType_DisableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.disable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*GetSpecType_DisableThreatMesh).DisableThreatMesh + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("disable_threat_mesh"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_EnableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.enable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*GetSpecType_EnableThreatMesh).EnableThreatMesh + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("enable_threat_mesh"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vrhReloadHeaderName := v.ReloadHeaderNameValidationRuleHandler - rulesReloadHeaderName := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_header_field": "true", - "ves.io.schema.rules.string.max_bytes": "256", - } - vFn, err = vrhReloadHeaderName(rulesReloadHeaderName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for MobileSDKConfigType.reload_header_name: %s", err) - panic(errMsg) } - v.FldValidators["reload_header_name"] = vFn - - v.FldValidators["mobile_identifier"] = MobileTrafficIdentifierTypeValidator().Validate - - return v -}() -func MobileSDKConfigTypeValidator() db.Validator { - return DefaultMobileSDKConfigTypeValidator -} + if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { + val := m.GetTrustClientIpHeadersChoice() + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// augmented methods on protoc/std generated struct + switch m.GetTrustClientIpHeadersChoice().(type) { + case *GetSpecType_DisableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*GetSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("disable_trust_client_ip_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GetSpecType_EnableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*GetSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("enable_trust_client_ip_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *MobileTrafficIdentifierType) ToJSON() (string, error) { - return codec.ToJSON(m) -} + } -func (m *MobileTrafficIdentifierType) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fv, exists := v.FldValidators["trusted_clients"]; exists { + vOpts := append(opts, db.WithValidateField("trusted_clients")) + if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { + return err + } -func (m *MobileTrafficIdentifierType) DeepCopy() *MobileTrafficIdentifierType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &MobileTrafficIdentifierType{} - err = c.Unmarshal(ser) - if err != nil { - return nil } - return c -} -func (m *MobileTrafficIdentifierType) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fv, exists := v.FldValidators["user_id_choice"]; exists { + val := m.GetUserIdChoice() + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return m.DeepCopy() -} - -func (m *MobileTrafficIdentifierType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return MobileTrafficIdentifierTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateMobileTrafficIdentifierType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateMobileTrafficIdentifierType) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.HeaderMatcherTypeBasic, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) + switch m.GetUserIdChoice().(type) { + case *GetSpecType_UserIdentification: + if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { + val := m.GetUserIdChoice().(*GetSpecType_UserIdentification).UserIdentification + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_identification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - if err := ves_io_schema_policy.HeaderMatcherTypeBasicValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + case *GetSpecType_UserIdClientIp: + if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { + val := m.GetUserIdChoice().(*GetSpecType_UserIdClientIp).UserIdClientIp + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_id_client_ip"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") + } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.HeaderMatcherTypeBasic) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.HeaderMatcherTypeBasic, got %T", val) + if fv, exists := v.FldValidators["waf_choice"]; exists { + val := m.GetWafChoice() + vOpts := append(opts, + db.WithValidateField("waf_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) + } + + switch m.GetWafChoice().(type) { + case *GetSpecType_DisableWaf: + if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { + val := m.GetWafChoice().(*GetSpecType_DisableWaf).DisableWaf + vOpts := append(opts, + db.WithValidateField("waf_choice"), + db.WithValidateField("disable_waf"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated headers") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items headers") + case *GetSpecType_AppFirewall: + if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { + val := m.GetWafChoice().(*GetSpecType_AppFirewall).AppFirewall + vOpts := append(opts, + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return nil - } - - return validatorFn, nil -} -func (v *ValidateMobileTrafficIdentifierType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*MobileTrafficIdentifierType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *MobileTrafficIdentifierType got type %s", t) - } - } - if m == nil { - return nil } - if fv, exists := v.FldValidators["headers"]; exists { - vOpts := append(opts, db.WithValidateField("headers")) - if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { + if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { + vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) + if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { return err } @@ -18577,8 +8352,8 @@ func (v *ValidateMobileTrafficIdentifierType) Validate(ctx context.Context, pm i } // Well-known symbol for default validator implementation -var DefaultMobileTrafficIdentifierTypeValidator = func() *ValidateMobileTrafficIdentifierType { - v := &ValidateMobileTrafficIdentifierType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { + v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -18588,366 +8363,399 @@ var DefaultMobileTrafficIdentifierTypeValidator = func() *ValidateMobileTrafficI vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhHeaders := v.HeadersValidationRuleHandler - rulesHeaders := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", + vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler + rulesAdvertiseChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhHeaders(rulesHeaders) + vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for MobileTrafficIdentifierType.headers: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.advertise_choice: %s", err) panic(errMsg) } - v.FldValidators["headers"] = vFn + v.FldValidators["advertise_choice"] = vFn - return v -}() + vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler + rulesApiDefinitionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.api_definition_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_definition_choice"] = vFn -func MobileTrafficIdentifierTypeValidator() db.Validator { - return DefaultMobileTrafficIdentifierTypeValidator -} + vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler + rulesApiDiscoveryChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.api_discovery_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_discovery_choice"] = vFn -// augmented methods on protoc/std generated struct + vrhChallengeType := v.ChallengeTypeValidationRuleHandler + rulesChallengeType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhChallengeType(rulesChallengeType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.challenge_type: %s", err) + panic(errMsg) + } + v.FldValidators["challenge_type"] = vFn -func (m *OpenApiFallThroughMode) ToJSON() (string, error) { - return codec.ToJSON(m) -} + vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler + rulesHashPolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.hash_policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["hash_policy_choice"] = vFn -func (m *OpenApiFallThroughMode) ToYAML() (string, error) { - return codec.ToYAML(m) -} + vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler + rulesL7DdosAutoMitigationAction := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.l7_ddos_auto_mitigation_action: %s", err) + panic(errMsg) + } + v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn -func (m *OpenApiFallThroughMode) DeepCopy() *OpenApiFallThroughMode { - if m == nil { - return nil + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - ser, err := m.Marshal() + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.loadbalancer_type: %s", err) + panic(errMsg) + } + v.FldValidators["loadbalancer_type"] = vFn + + vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler + rulesMaliciousUserDetectionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.malicious_user_detection_choice: %s", err) + panic(errMsg) + } + v.FldValidators["malicious_user_detection_choice"] = vFn + + vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler + rulesRateLimitChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.rate_limit_choice: %s", err) + panic(errMsg) + } + v.FldValidators["rate_limit_choice"] = vFn + + vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler + rulesServicePolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.service_policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["service_policy_choice"] = vFn + + vrhThreatMeshChoice := v.ThreatMeshChoiceValidationRuleHandler + rulesThreatMeshChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhThreatMeshChoice(rulesThreatMeshChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.threat_mesh_choice: %s", err) + panic(errMsg) + } + v.FldValidators["threat_mesh_choice"] = vFn + + vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler + rulesTrustClientIpHeadersChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.trust_client_ip_headers_choice: %s", err) + panic(errMsg) + } + v.FldValidators["trust_client_ip_headers_choice"] = vFn + + vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler + rulesUserIdChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhUserIdChoice(rulesUserIdChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.user_id_choice: %s", err) + panic(errMsg) + } + v.FldValidators["user_id_choice"] = vFn + + vrhWafChoice := v.WafChoiceValidationRuleHandler + rulesWafChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhWafChoice(rulesWafChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.waf_choice: %s", err) + panic(errMsg) + } + v.FldValidators["waf_choice"] = vFn + + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.vh_domain": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDomains(rulesDomains) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.domains: %s", err) + panic(errMsg) + } + v.FldValidators["domains"] = vFn + + vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler + rulesDefaultRoutePools := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.default_route_pools: %s", err) + panic(errMsg) + } + v.FldValidators["default_route_pools"] = vFn + + vrhRoutes := v.RoutesValidationRuleHandler + rulesRoutes := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRoutes(rulesRoutes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.routes: %s", err) + panic(errMsg) + } + v.FldValidators["routes"] = vFn + + vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler + rulesWafExclusionRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.waf_exclusion_rules: %s", err) + panic(errMsg) + } + v.FldValidators["waf_exclusion_rules"] = vFn + + vrhBlockedClients := v.BlockedClientsValidationRuleHandler + rulesBlockedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - c := &OpenApiFallThroughMode{} - err = c.Unmarshal(ser) + vFn, err = vrhBlockedClients(rulesBlockedClients) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.blocked_clients: %s", err) + panic(errMsg) } - return c -} + v.FldValidators["blocked_clients"] = vFn -func (m *OpenApiFallThroughMode) DeepCopyProto() proto.Message { - if m == nil { - return nil + vrhTrustedClients := v.TrustedClientsValidationRuleHandler + rulesTrustedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - return m.DeepCopy() -} - -func (m *OpenApiFallThroughMode) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiFallThroughModeValidator().Validate(ctx, m, opts...) -} - -type ValidateOpenApiFallThroughMode struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateOpenApiFallThroughMode) FallThroughModeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vFn, err = vrhTrustedClients(rulesTrustedClients) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for fall_through_mode_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.trusted_clients: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["trusted_clients"] = vFn -func (v *ValidateOpenApiFallThroughMode) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiFallThroughMode) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiFallThroughMode got type %s", t) - } + vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler + rulesDdosMitigationRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - if m == nil { - return nil + vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.ddos_mitigation_rules: %s", err) + panic(errMsg) } + v.FldValidators["ddos_mitigation_rules"] = vFn - if fv, exists := v.FldValidators["fall_through_mode_choice"]; exists { - val := m.GetFallThroughModeChoice() - vOpts := append(opts, - db.WithValidateField("fall_through_mode_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler + rulesDataGuardRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - - switch m.GetFallThroughModeChoice().(type) { - case *OpenApiFallThroughMode_FallThroughModeAllow: - if fv, exists := v.FldValidators["fall_through_mode_choice.fall_through_mode_allow"]; exists { - val := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeAllow).FallThroughModeAllow - vOpts := append(opts, - db.WithValidateField("fall_through_mode_choice"), - db.WithValidateField("fall_through_mode_allow"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiFallThroughMode_FallThroughModeCustom: - if fv, exists := v.FldValidators["fall_through_mode_choice.fall_through_mode_custom"]; exists { - val := m.GetFallThroughModeChoice().(*OpenApiFallThroughMode_FallThroughModeCustom).FallThroughModeCustom - vOpts := append(opts, - db.WithValidateField("fall_through_mode_choice"), - db.WithValidateField("fall_through_mode_custom"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - + vFn, err = vrhDataGuardRules(rulesDataGuardRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.data_guard_rules: %s", err) + panic(errMsg) } + v.FldValidators["data_guard_rules"] = vFn - return nil -} - -// Well-known symbol for default validator implementation -var DefaultOpenApiFallThroughModeValidator = func() *ValidateOpenApiFallThroughMode { - v := &ValidateOpenApiFallThroughMode{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhFallThroughModeChoice := v.FallThroughModeChoiceValidationRuleHandler - rulesFallThroughModeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler + rulesGraphqlRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - vFn, err = vrhFallThroughModeChoice(rulesFallThroughModeChoice) + vFn, err = vrhGraphqlRules(rulesGraphqlRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiFallThroughMode.fall_through_mode_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.graphql_rules: %s", err) panic(errMsg) } - v.FldValidators["fall_through_mode_choice"] = vFn - - v.FldValidators["fall_through_mode_choice.fall_through_mode_custom"] = CustomFallThroughModeValidator().Validate - - return v -}() - -func OpenApiFallThroughModeValidator() db.Validator { - return DefaultOpenApiFallThroughModeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *OpenApiValidationAllSpecEndpointsSettings) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *OpenApiValidationAllSpecEndpointsSettings) ToYAML() (string, error) { - return codec.ToYAML(m) -} + v.FldValidators["graphql_rules"] = vFn -func (m *OpenApiValidationAllSpecEndpointsSettings) DeepCopy() *OpenApiValidationAllSpecEndpointsSettings { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil + vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler + rulesProtectedCookies := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - c := &OpenApiValidationAllSpecEndpointsSettings{} - err = c.Unmarshal(ser) + vFn, err = vrhProtectedCookies(rulesProtectedCookies) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.protected_cookies: %s", err) + panic(errMsg) } - return c -} + v.FldValidators["protected_cookies"] = vFn -func (m *OpenApiValidationAllSpecEndpointsSettings) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} + v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate + v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate -func (m *OpenApiValidationAllSpecEndpointsSettings) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiValidationAllSpecEndpointsSettingsValidator().Validate(ctx, m, opts...) -} + v.FldValidators["api_definition_choice.api_definitions"] = ves_io_schema_views_common_waf.ApiDefinitionListValidator().Validate + v.FldValidators["api_definition_choice.api_specification"] = ves_io_schema_views_common_waf.APISpecificationSettingsValidator().Validate + v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate -type ValidateOpenApiValidationAllSpecEndpointsSettings struct { - FldValidators map[string]db.ValidatorFunc -} + v.FldValidators["api_discovery_choice.enable_api_discovery"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate -func (v *ValidateOpenApiValidationAllSpecEndpointsSettings) ValidationModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate + v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for validation_mode") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } + v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + v.FldValidators["challenge_type.policy_based_challenge"] = ves_io_schema_views_common_waf.PolicyBasedChallengeValidator().Validate + v.FldValidators["challenge_type.enable_challenge"] = ves_io_schema_views_common_waf.EnableChallengeValidator().Validate - if err := OpenApiValidationModeValidator().Validate(ctx, val, opts...); err != nil { - return err - } + v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate - return nil - } + v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate + v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate - return validatorFn, nil -} + v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = ves_io_schema_views_common_waf.IPThreatCategoryListTypeValidator().Validate -func (v *ValidateOpenApiValidationAllSpecEndpointsSettings) FallThroughModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for fall_through_mode") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } + v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate - if err := OpenApiFallThroughModeValidator().Validate(ctx, val, opts...); err != nil { - return err - } + v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate - return nil - } + v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate + v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate - return validatorFn, nil -} + v.FldValidators["rate_limit_choice.rate_limit"] = ves_io_schema_views_common_waf.RateLimitConfigTypeValidator().Validate + v.FldValidators["rate_limit_choice.api_rate_limit"] = ves_io_schema_views_common_waf.APIRateLimitValidator().Validate -func (v *ValidateOpenApiValidationAllSpecEndpointsSettings) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiValidationAllSpecEndpointsSettings) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiValidationAllSpecEndpointsSettings got type %s", t) - } - } - if m == nil { - return nil - } + v.FldValidators["service_policy_choice.active_service_policies"] = ves_io_schema_views_common_waf.ServicePolicyListValidator().Validate - if fv, exists := v.FldValidators["fall_through_mode"]; exists { + v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate - vOpts := append(opts, db.WithValidateField("fall_through_mode")) - if err := fv(ctx, m.GetFallThroughMode(), vOpts...); err != nil { - return err - } + v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate - } + v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - switch m.GetOversizedBodyChoice().(type) { - case *OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation: - if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_skip_validation"]; exists { - val := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation).OversizedBodySkipValidation - vOpts := append(opts, - db.WithValidateField("oversized_body_choice"), - db.WithValidateField("oversized_body_skip_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation: - if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_fail_validation"]; exists { - val := m.GetOversizedBodyChoice().(*OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation).OversizedBodyFailValidation - vOpts := append(opts, - db.WithValidateField("oversized_body_choice"), - db.WithValidateField("oversized_body_fail_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - } + v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate - if fv, exists := v.FldValidators["settings"]; exists { + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - vOpts := append(opts, db.WithValidateField("settings")) - if err := fv(ctx, m.GetSettings(), vOpts...); err != nil { - return err - } + v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - } + v.FldValidators["api_protection_rules"] = ves_io_schema_views_common_waf.APIProtectionRulesValidator().Validate - if fv, exists := v.FldValidators["validation_mode"]; exists { + v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate - vOpts := append(opts, db.WithValidateField("validation_mode")) - if err := fv(ctx, m.GetValidationMode(), vOpts...); err != nil { - return err - } + v.FldValidators["jwt_validation"] = ves_io_schema_views_common_waf.JWTValidationValidator().Validate - } + v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate - return nil + v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate + + return v +}() + +func GetSpecTypeValidator() db.Validator { + return DefaultGetSpecTypeValidator } -// Well-known symbol for default validator implementation -var DefaultOpenApiValidationAllSpecEndpointsSettingsValidator = func() *ValidateOpenApiValidationAllSpecEndpointsSettings { - v := &ValidateOpenApiValidationAllSpecEndpointsSettings{FldValidators: map[string]db.ValidatorFunc{}} +// augmented methods on protoc/std generated struct - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} - vrhValidationMode := v.ValidationModeValidationRuleHandler - rulesValidationMode := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhValidationMode(rulesValidationMode) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationAllSpecEndpointsSettings.validation_mode: %s", err) - panic(errMsg) - } - v.FldValidators["validation_mode"] = vFn +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} - vrhFallThroughMode := v.FallThroughModeValidationRuleHandler - rulesFallThroughMode := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhFallThroughMode(rulesFallThroughMode) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationAllSpecEndpointsSettings.fall_through_mode: %s", err) - panic(errMsg) +// Redact squashes sensitive info in m (in-place) +func (m *GlobalSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil } - v.FldValidators["fall_through_mode"] = vFn - v.FldValidators["settings"] = OpenApiValidationCommonSettingsValidator().Validate + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.https") + } - return v -}() + for idx, e := range m.GetRoutes() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.routes idx %v", idx) + } + } -func OpenApiValidationAllSpecEndpointsSettingsValidator() db.Validator { - return DefaultOpenApiValidationAllSpecEndpointsSettingsValidator -} + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.more_option") + } -// augmented methods on protoc/std generated struct + if err := m.GetDefaultPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.default_pool") + } -func (m *OpenApiValidationCommonSettings) ToJSON() (string, error) { - return codec.ToJSON(m) -} + if err := m.GetJwtValidation().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.jwt_validation") + } -func (m *OpenApiValidationCommonSettings) ToYAML() (string, error) { - return codec.ToYAML(m) + return nil } -func (m *OpenApiValidationCommonSettings) DeepCopy() *OpenApiValidationCommonSettings { +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { if m == nil { return nil } @@ -18955,7 +8763,7 @@ func (m *OpenApiValidationCommonSettings) DeepCopy() *OpenApiValidationCommonSet if err != nil { return nil } - c := &OpenApiValidationCommonSettings{} + c := &GlobalSpecType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -18963,1126 +8771,964 @@ func (m *OpenApiValidationCommonSettings) DeepCopy() *OpenApiValidationCommonSet return c } -func (m *OpenApiValidationCommonSettings) DeepCopyProto() proto.Message { +func (m *GlobalSpecType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *OpenApiValidationCommonSettings) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiValidationCommonSettingsValidator().Validate(ctx, m, opts...) -} - -type ValidateOpenApiValidationCommonSettings struct { - FldValidators map[string]db.ValidatorFunc +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) } -func (v *ValidateOpenApiValidationCommonSettings) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiValidationCommonSettings) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiValidationCommonSettings got type %s", t) - } - } +func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { - return nil + return nil, nil } - switch m.GetOversizedBodyChoice().(type) { - case *OpenApiValidationCommonSettings_OversizedBodySkipValidation: - if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_skip_validation"]; exists { - val := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodySkipValidation).OversizedBodySkipValidation - vOpts := append(opts, - db.WithValidateField("oversized_body_choice"), - db.WithValidateField("oversized_body_skip_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationCommonSettings_OversizedBodyFailValidation: - if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_fail_validation"]; exists { - val := m.GetOversizedBodyChoice().(*OpenApiValidationCommonSettings_OversizedBodyFailValidation).OversizedBodyFailValidation - vOpts := append(opts, - db.WithValidateField("oversized_body_choice"), - db.WithValidateField("oversized_body_fail_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - switch m.GetPropertyValidationSettingsChoice().(type) { - case *OpenApiValidationCommonSettings_PropertyValidationSettingsDefault: - if fv, exists := v.FldValidators["property_validation_settings_choice.property_validation_settings_default"]; exists { - val := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsDefault).PropertyValidationSettingsDefault - vOpts := append(opts, - db.WithValidateField("property_validation_settings_choice"), - db.WithValidateField("property_validation_settings_default"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationCommonSettings_PropertyValidationSettingsCustom: - if fv, exists := v.FldValidators["property_validation_settings_choice.property_validation_settings_custom"]; exists { - val := m.GetPropertyValidationSettingsChoice().(*OpenApiValidationCommonSettings_PropertyValidationSettingsCustom).PropertyValidationSettingsCustom - vOpts := append(opts, - db.WithValidateField("property_validation_settings_choice"), - db.WithValidateField("property_validation_settings_custom"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return nil -} + if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -// Well-known symbol for default validator implementation -var DefaultOpenApiValidationCommonSettingsValidator = func() *ValidateOpenApiValidationCommonSettings { - v := &ValidateOpenApiValidationCommonSettings{FldValidators: map[string]db.ValidatorFunc{}} + if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } - v.FldValidators["property_validation_settings_choice.property_validation_settings_custom"] = ValidationPropertySettingValidator().Validate + if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } - return v -}() + if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func OpenApiValidationCommonSettingsValidator() db.Validator { - return DefaultOpenApiValidationCommonSettingsValidator -} + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -// augmented methods on protoc/std generated struct + if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func (m *OpenApiValidationMode) ToJSON() (string, error) { - return codec.ToJSON(m) -} + if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func (m *OpenApiValidationMode) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -func (m *OpenApiValidationMode) DeepCopy() *OpenApiValidationMode { - if m == nil { - return nil + if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - ser, err := m.Marshal() - if err != nil { - return nil + + if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - c := &OpenApiValidationMode{} - err = c.Unmarshal(ser) - if err != nil { - return nil + + if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return c -} -func (m *OpenApiValidationMode) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fdrInfos, err := m.GetViewInternalDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetViewInternalDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - return m.DeepCopy() -} -func (m *OpenApiValidationMode) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiValidationModeValidator().Validate(ctx, m, opts...) -} + if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } -type ValidateOpenApiValidationMode struct { - FldValidators map[string]db.ValidatorFunc -} + return drInfos, nil -func (v *ValidateOpenApiValidationMode) ResponseValidationModeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for response_validation_mode_choice") - } - return validatorFn, nil } -func (v *ValidateOpenApiValidationMode) ValidationModeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for validation_mode_choice") +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetAdvertiseChoice() == nil { + return nil, nil } - return validatorFn, nil -} + switch m.GetAdvertiseChoice().(type) { + case *GlobalSpecType_AdvertiseOnPublic: -func (v *ValidateOpenApiValidationMode) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiValidationMode) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiValidationMode got type %s", t) + drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_on_public." + dri.DRField + } + return drInfos, err + + case *GlobalSpecType_AdvertiseCustom: + + drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_custom." + dri.DRField } + return drInfos, err + + case *GlobalSpecType_DoNotAdvertise: + + return nil, nil + + case *GlobalSpecType_AdvertiseOnPublicDefaultVip: + + return nil, nil + + default: + return nil, nil } - if m == nil { - return nil + +} + +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiDefinitionChoice() == nil { + return nil, nil } + switch m.GetApiDefinitionChoice().(type) { + case *GlobalSpecType_ApiDefinitions: - if fv, exists := v.FldValidators["response_validation_mode_choice"]; exists { - val := m.GetResponseValidationModeChoice() - vOpts := append(opts, - db.WithValidateField("response_validation_mode_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + drInfos, err := m.GetApiDefinitions().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") } - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_definitions." + dri.DRField + } + return drInfos, err + + case *GlobalSpecType_ApiSpecification: - switch m.GetResponseValidationModeChoice().(type) { - case *OpenApiValidationMode_SkipResponseValidation: - if fv, exists := v.FldValidators["response_validation_mode_choice.skip_response_validation"]; exists { - val := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_SkipResponseValidation).SkipResponseValidation - vOpts := append(opts, - db.WithValidateField("response_validation_mode_choice"), - db.WithValidateField("skip_response_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetApiSpecification().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") } - case *OpenApiValidationMode_ResponseValidationModeActive: - if fv, exists := v.FldValidators["response_validation_mode_choice.response_validation_mode_active"]; exists { - val := m.GetResponseValidationModeChoice().(*OpenApiValidationMode_ResponseValidationModeActive).ResponseValidationModeActive - vOpts := append(opts, - db.WithValidateField("response_validation_mode_choice"), - db.WithValidateField("response_validation_mode_active"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_specification." + dri.DRField } + return drInfos, err - } + case *GlobalSpecType_DisableApiDefinition: - if fv, exists := v.FldValidators["validation_mode_choice"]; exists { - val := m.GetValidationModeChoice() - vOpts := append(opts, - db.WithValidateField("validation_mode_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil, nil - switch m.GetValidationModeChoice().(type) { - case *OpenApiValidationMode_ValidationModeActive: - if fv, exists := v.FldValidators["validation_mode_choice.validation_mode_active"]; exists { - val := m.GetValidationModeChoice().(*OpenApiValidationMode_ValidationModeActive).ValidationModeActive - vOpts := append(opts, - db.WithValidateField("validation_mode_choice"), - db.WithValidateField("validation_mode_active"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *GlobalSpecType_ApiDefinition: + + vref := m.GetApiDefinition() + if vref == nil { + return nil, nil } - case *OpenApiValidationMode_SkipValidation: - if fv, exists := v.FldValidators["validation_mode_choice.skip_validation"]; exists { - val := m.GetValidationModeChoice().(*OpenApiValidationMode_SkipValidation).SkipValidation - vOpts := append(opts, - db.WithValidateField("validation_mode_choice"), - db.WithValidateField("skip_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("api_definition.Object") + dri := db.DRefInfo{ + RefdType: "api_definition.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "api_definition", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil + default: + return nil, nil } - return nil } -// Well-known symbol for default validator implementation -var DefaultOpenApiValidationModeValidator = func() *ValidateOpenApiValidationMode { - v := &ValidateOpenApiValidationMode{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhResponseValidationModeChoice := v.ResponseValidationModeChoiceValidationRuleHandler - rulesResponseValidationModeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhResponseValidationModeChoice(rulesResponseValidationModeChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationMode.response_validation_mode_choice: %s", err) - panic(errMsg) +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiProtectionRules() == nil { + return nil, nil } - v.FldValidators["response_validation_mode_choice"] = vFn - vrhValidationModeChoice := v.ValidationModeChoiceValidationRuleHandler - rulesValidationModeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhValidationModeChoice(rulesValidationModeChoice) + drInfos, err := m.GetApiProtectionRules().GetDRefInfo() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationMode.validation_mode_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_protection_rules." + dri.DRField } - v.FldValidators["validation_mode_choice"] = vFn + return drInfos, err - v.FldValidators["response_validation_mode_choice.response_validation_mode_active"] = OpenApiValidationModeActiveResponseValidator().Validate +} - v.FldValidators["validation_mode_choice.validation_mode_active"] = OpenApiValidationModeActiveValidator().Validate +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetBotDefenseChoice() == nil { + return nil, nil + } + switch m.GetBotDefenseChoice().(type) { + case *GlobalSpecType_DisableBotDefense: - return v -}() + return nil, nil -func OpenApiValidationModeValidator() db.Validator { - return DefaultOpenApiValidationModeValidator -} + case *GlobalSpecType_BotDefense: -// augmented methods on protoc/std generated struct + return nil, nil -func (m *OpenApiValidationModeActive) ToJSON() (string, error) { - return codec.ToJSON(m) -} + case *GlobalSpecType_BotDefenseAdvanced: -func (m *OpenApiValidationModeActive) ToYAML() (string, error) { - return codec.ToYAML(m) -} + drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "bot_defense_advanced." + dri.DRField + } + return drInfos, err -func (m *OpenApiValidationModeActive) DeepCopy() *OpenApiValidationModeActive { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &OpenApiValidationModeActive{} - err = c.Unmarshal(ser) - if err != nil { - return nil + default: + return nil, nil } - return c + } -func (m *OpenApiValidationModeActive) DeepCopyProto() proto.Message { - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetChallengeType() == nil { + return nil, nil } - return m.DeepCopy() -} + switch m.GetChallengeType().(type) { + case *GlobalSpecType_JsChallenge: -func (m *OpenApiValidationModeActive) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiValidationModeActiveValidator().Validate(ctx, m, opts...) -} + return nil, nil -type ValidateOpenApiValidationModeActive struct { - FldValidators map[string]db.ValidatorFunc -} + case *GlobalSpecType_CaptchaChallenge: -func (v *ValidateOpenApiValidationModeActive) ValidationEnforcementTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for validation_enforcement_type") - } - return validatorFn, nil -} + return nil, nil -func (v *ValidateOpenApiValidationModeActive) RequestValidationPropertiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + case *GlobalSpecType_NoChallenge: - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema.OpenApiValidationProperties) - return int32(i) - } - // ves_io_schema.OpenApiValidationProperties_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.OpenApiValidationProperties_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for request_validation_properties") - } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.OpenApiValidationProperties, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_validation_properties") - } + return nil, nil - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema.OpenApiValidationProperties) - if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema.OpenApiValidationProperties, got %T", val) + case *GlobalSpecType_PolicyBasedChallenge: + + drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "policy_based_challenge." + dri.DRField } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_validation_properties") + return drInfos, err + + case *GlobalSpecType_EnableChallenge: + + drInfos, err := m.GetEnableChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_validation_properties") + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "enable_challenge." + dri.DRField } - return nil + return drInfos, err + + default: + return nil, nil } - return validatorFn, nil } -func (v *ValidateOpenApiValidationModeActive) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiValidationModeActive) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiValidationModeActive got type %s", t) - } - } - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { + if m.GetDefaultRoutePools() == nil { + return nil, nil } - if fv, exists := v.FldValidators["request_validation_properties"]; exists { - vOpts := append(opts, db.WithValidateField("request_validation_properties")) - if err := fv(ctx, m.GetRequestValidationProperties(), vOpts...); err != nil { - return err + var drInfos []db.DRefInfo + for idx, e := range m.GetDefaultRoutePools() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetLoadbalancerType() == nil { + return nil, nil } + switch m.GetLoadbalancerType().(type) { + case *GlobalSpecType_Http: - if fv, exists := v.FldValidators["validation_enforcement_type"]; exists { - val := m.GetValidationEnforcementType() - vOpts := append(opts, - db.WithValidateField("validation_enforcement_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + return nil, nil + + case *GlobalSpecType_Https: + + drInfos, err := m.GetHttps().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") } - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https." + dri.DRField + } + return drInfos, err - switch m.GetValidationEnforcementType().(type) { - case *OpenApiValidationModeActive_EnforcementReport: - if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_report"]; exists { - val := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementReport).EnforcementReport - vOpts := append(opts, - db.WithValidateField("validation_enforcement_type"), - db.WithValidateField("enforcement_report"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *GlobalSpecType_HttpsAutoCert: + + drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") } - case *OpenApiValidationModeActive_EnforcementBlock: - if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_block"]; exists { - val := m.GetValidationEnforcementType().(*OpenApiValidationModeActive_EnforcementBlock).EnforcementBlock - vOpts := append(opts, - db.WithValidateField("validation_enforcement_type"), - db.WithValidateField("enforcement_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https_auto_cert." + dri.DRField } + return drInfos, err + default: + return nil, nil } - return nil } -// Well-known symbol for default validator implementation -var DefaultOpenApiValidationModeActiveValidator = func() *ValidateOpenApiValidationModeActive { - v := &ValidateOpenApiValidationModeActive{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhValidationEnforcementType := v.ValidationEnforcementTypeValidationRuleHandler - rulesValidationEnforcementType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhValidationEnforcementType(rulesValidationEnforcementType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActive.validation_enforcement_type: %s", err) - panic(errMsg) - } - v.FldValidators["validation_enforcement_type"] = vFn +func (m *GlobalSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { - vrhRequestValidationProperties := v.RequestValidationPropertiesValidationRuleHandler - rulesRequestValidationProperties := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.not_in": "[7]", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil } - vFn, err = vrhRequestValidationProperties(rulesRequestValidationProperties) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActive.request_validation_properties: %s", err) - panic(errMsg) + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("malicious_user_mitigation.Object") + dri := db.DRefInfo{ + RefdType: "malicious_user_mitigation.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "malicious_user_mitigation", + Ref: vdRef, } - v.FldValidators["request_validation_properties"] = vFn - - return v -}() - -func OpenApiValidationModeActiveValidator() db.Validator { - return DefaultOpenApiValidationModeActiveValidator -} - -// augmented methods on protoc/std generated struct + return []db.DRefInfo{dri}, nil -func (m *OpenApiValidationModeActiveResponse) ToJSON() (string, error) { - return codec.ToJSON(m) } -func (m *OpenApiValidationModeActiveResponse) ToYAML() (string, error) { - return codec.ToYAML(m) -} +// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") + } -func (m *OpenApiValidationModeActiveResponse) DeepCopy() *OpenApiValidationModeActiveResponse { - if m == nil { - return nil + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil } - ser, err := m.Marshal() - if err != nil { - return nil + ref := &ves_io_schema.ObjectRefType{ + Kind: "malicious_user_mitigation.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, } - c := &OpenApiValidationModeActiveResponse{} - err = c.Unmarshal(ser) + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) if err != nil { - return nil + return nil, errors.Wrap(err, "Getting referred entry") } - return c -} - -func (m *OpenApiValidationModeActiveResponse) DeepCopyProto() proto.Message { - if m == nil { - return nil + if refdEnt != nil { + entries = append(entries, refdEnt) } - return m.DeepCopy() -} -func (m *OpenApiValidationModeActiveResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiValidationModeActiveResponseValidator().Validate(ctx, m, opts...) -} - -type ValidateOpenApiValidationModeActiveResponse struct { - FldValidators map[string]db.ValidatorFunc + return entries, nil } -func (v *ValidateOpenApiValidationModeActiveResponse) ValidationEnforcementTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for validation_enforcement_type") +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil } - return validatorFn, nil -} -func (v *ValidateOpenApiValidationModeActiveResponse) ResponseValidationPropertiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema.OpenApiValidationProperties) - return int32(i) - } - // ves_io_schema.OpenApiValidationProperties_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.OpenApiValidationProperties_name, conv) + drInfos, err := m.GetMoreOption().GetDRefInfo() if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for response_validation_properties") + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.OpenApiValidationProperties, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_validation_properties") + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPoolChoice() == nil { + return nil, nil } + switch m.GetOriginPoolChoice().(type) { + case *GlobalSpecType_DefaultPool: - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema.OpenApiValidationProperties) - if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema.OpenApiValidationProperties, got %T", val) + drInfos, err := m.GetDefaultPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool." + dri.DRField } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_validation_properties") + return drInfos, err + + case *GlobalSpecType_DefaultPoolList: + + drInfos, err := m.GetDefaultPoolList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_validation_properties") + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool_list." + dri.DRField } - return nil + return drInfos, err + + default: + return nil, nil } - return validatorFn, nil } -func (v *ValidateOpenApiValidationModeActiveResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiValidationModeActiveResponse) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiValidationModeActiveResponse got type %s", t) - } - } - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginServerSubsetRuleList() == nil { + return nil, nil } - if fv, exists := v.FldValidators["response_validation_properties"]; exists { - vOpts := append(opts, db.WithValidateField("response_validation_properties")) - if err := fv(ctx, m.GetResponseValidationProperties(), vOpts...); err != nil { - return err - } - + drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") } - - if fv, exists := v.FldValidators["validation_enforcement_type"]; exists { - val := m.GetValidationEnforcementType() - vOpts := append(opts, - db.WithValidateField("validation_enforcement_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_server_subset_rule_list." + dri.DRField } + return drInfos, err - switch m.GetValidationEnforcementType().(type) { - case *OpenApiValidationModeActiveResponse_EnforcementReport: - if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_report"]; exists { - val := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementReport).EnforcementReport - vOpts := append(opts, - db.WithValidateField("validation_enforcement_type"), - db.WithValidateField("enforcement_report"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationModeActiveResponse_EnforcementBlock: - if fv, exists := v.FldValidators["validation_enforcement_type.enforcement_block"]; exists { - val := m.GetValidationEnforcementType().(*OpenApiValidationModeActiveResponse_EnforcementBlock).EnforcementBlock - vOpts := append(opts, - db.WithValidateField("validation_enforcement_type"), - db.WithValidateField("enforcement_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } +} +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimitChoice() == nil { + return nil, nil } + switch m.GetRateLimitChoice().(type) { + case *GlobalSpecType_DisableRateLimit: - return nil -} + return nil, nil -// Well-known symbol for default validator implementation -var DefaultOpenApiValidationModeActiveResponseValidator = func() *ValidateOpenApiValidationModeActiveResponse { - v := &ValidateOpenApiValidationModeActiveResponse{FldValidators: map[string]db.ValidatorFunc{}} + case *GlobalSpecType_RateLimit: - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + drInfos, err := m.GetRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rate_limit." + dri.DRField + } + return drInfos, err - vrhValidationEnforcementType := v.ValidationEnforcementTypeValidationRuleHandler - rulesValidationEnforcementType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhValidationEnforcementType(rulesValidationEnforcementType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActiveResponse.validation_enforcement_type: %s", err) - panic(errMsg) - } - v.FldValidators["validation_enforcement_type"] = vFn + case *GlobalSpecType_ApiRateLimit: - vrhResponseValidationProperties := v.ResponseValidationPropertiesValidationRuleHandler - rulesResponseValidationProperties := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.in": "[2,4,5,7]", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhResponseValidationProperties(rulesResponseValidationProperties) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationModeActiveResponse.response_validation_properties: %s", err) - panic(errMsg) + drInfos, err := m.GetApiRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_rate_limit." + dri.DRField + } + return drInfos, err + + default: + return nil, nil } - v.FldValidators["response_validation_properties"] = vFn - - return v -}() -func OpenApiValidationModeActiveResponseValidator() db.Validator { - return DefaultOpenApiValidationModeActiveResponseValidator } -// augmented methods on protoc/std generated struct +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { + if m.GetRoutes() == nil { + return nil, nil + } -func (m *OpenApiValidationRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} + var drInfos []db.DRefInfo + for idx, e := range m.GetRoutes() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil -func (m *OpenApiValidationRule) ToYAML() (string, error) { - return codec.ToYAML(m) } -func (m *OpenApiValidationRule) DeepCopy() *OpenApiValidationRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &OpenApiValidationRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetServicePolicyChoice() == nil { + return nil, nil } - return c -} + switch m.GetServicePolicyChoice().(type) { + case *GlobalSpecType_ServicePoliciesFromNamespace: -func (m *OpenApiValidationRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} + return nil, nil -func (m *OpenApiValidationRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OpenApiValidationRuleValidator().Validate(ctx, m, opts...) -} + case *GlobalSpecType_NoServicePolicies: -type ValidateOpenApiValidationRule struct { - FldValidators map[string]db.ValidatorFunc -} + return nil, nil -func (v *ValidateOpenApiValidationRule) ConditionTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for condition_type_choice") - } - return validatorFn, nil -} + case *GlobalSpecType_ActiveServicePolicies: -func (v *ValidateOpenApiValidationRule) ConditionTypeChoiceBasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_BasePath, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") - } - return oValidatorFn_BasePath, nil -} -func (v *ValidateOpenApiValidationRule) ConditionTypeChoiceApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ApiGroup, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") - } - return oValidatorFn_ApiGroup, nil -} + drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "active_service_policies." + dri.DRField + } + return drInfos, err -func (v *ValidateOpenApiValidationRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") + default: + return nil, nil } - return validatorFn, nil -} -func (v *ValidateOpenApiValidationRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") - } - return oValidatorFn_SpecificDomain, nil } -func (v *ValidateOpenApiValidationRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (m *GlobalSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetUserIdChoice().(type) { + case *GlobalSpecType_UserIdentification: - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("user_identification.Object") + dri := db.DRefInfo{ + RefdType: "user_identification.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "user_identification", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil - return nil - } + case *GlobalSpecType_UserIdClientIp: - return validatorFn, nil + return nil, nil + + default: + return nil, nil + } } -func (v *ValidateOpenApiValidationRule) ValidationModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for validation_mode") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + switch m.GetUserIdChoice().(type) { + case *GlobalSpecType_UserIdentification: + refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") } - if err := OpenApiValidationModeValidator().Validate(ctx, val, opts...); err != nil { - return err + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "user_identification.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } - return nil + case *GlobalSpecType_UserIdClientIp: + } - return validatorFn, nil + return entries, nil } -func (v *ValidateOpenApiValidationRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OpenApiValidationRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OpenApiValidationRule got type %s", t) - } - } - if m == nil { - return nil - } +func (m *GlobalSpecType) GetViewInternalDRefInfo() ([]db.DRefInfo, error) { - if fv, exists := v.FldValidators["condition_type_choice"]; exists { - val := m.GetConditionTypeChoice() - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vref := m.GetViewInternal() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("view_internal.Object") + dri := db.DRefInfo{ + RefdType: "view_internal.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "view_internal", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil - switch m.GetConditionTypeChoice().(type) { - case *OpenApiValidationRule_BasePath: - if fv, exists := v.FldValidators["condition_type_choice.base_path"]; exists { - val := m.GetConditionTypeChoice().(*OpenApiValidationRule_BasePath).BasePath - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - db.WithValidateField("base_path"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationRule_ApiGroup: - if fv, exists := v.FldValidators["condition_type_choice.api_group"]; exists { - val := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiGroup).ApiGroup - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - db.WithValidateField("api_group"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationRule_ApiEndpoint: - if fv, exists := v.FldValidators["condition_type_choice.api_endpoint"]; exists { - val := m.GetConditionTypeChoice().(*OpenApiValidationRule_ApiEndpoint).ApiEndpoint - vOpts := append(opts, - db.WithValidateField("condition_type_choice"), - db.WithValidateField("api_endpoint"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } +} +// GetViewInternalDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetViewInternalDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "view_internal.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: view_internal") } - if fv, exists := v.FldValidators["domain_choice"]; exists { - val := m.GetDomainChoice() - vOpts := append(opts, - db.WithValidateField("domain_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vref := m.GetViewInternal() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "view_internal.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } - switch m.GetDomainChoice().(type) { - case *OpenApiValidationRule_AnyDomain: - if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { - val := m.GetDomainChoice().(*OpenApiValidationRule_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OpenApiValidationRule_SpecificDomain: - if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { - val := m.GetDomainChoice().(*OpenApiValidationRule_SpecificDomain).SpecificDomain - vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("specific_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + return entries, nil +} + +func (m *GlobalSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetWafChoice().(type) { + case *GlobalSpecType_DisableWaf: + + return nil, nil + + case *GlobalSpecType_AppFirewall: + + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil + default: + return nil, nil } +} - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { - return err - } +// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - } + switch m.GetWafChoice().(type) { + case *GlobalSpecType_DisableWaf: - if fv, exists := v.FldValidators["validation_mode"]; exists { + case *GlobalSpecType_AppFirewall: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + } - vOpts := append(opts, db.WithValidateField("validation_mode")) - if err := fv(ctx, m.GetValidationMode(), vOpts...); err != nil { - return err + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } } - return nil + return entries, nil } -// Well-known symbol for default validator implementation -var DefaultOpenApiValidationRuleValidator = func() *ValidateOpenApiValidationRule { - v := &ValidateOpenApiValidationRule{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} - vrhConditionTypeChoice := v.ConditionTypeChoiceValidationRuleHandler - rulesConditionTypeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhConditionTypeChoice(rulesConditionTypeChoice) +func (v *ValidateGlobalSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.condition_type_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") } - v.FldValidators["condition_type_choice"] = vFn + return validatorFn, nil +} - vrhConditionTypeChoiceBasePath := v.ConditionTypeChoiceBasePathValidationRuleHandler - rulesConditionTypeChoiceBasePath := map[string]string{ - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128", - } - vFnMap["condition_type_choice.base_path"], err = vrhConditionTypeChoiceBasePath(rulesConditionTypeChoiceBasePath) +func (v *ValidateGlobalSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OpenApiValidationRule.condition_type_choice_base_path: %s", err) - panic(errMsg) - } - vrhConditionTypeChoiceApiGroup := v.ConditionTypeChoiceApiGroupValidationRuleHandler - rulesConditionTypeChoiceApiGroup := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", + return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") } - vFnMap["condition_type_choice.api_group"], err = vrhConditionTypeChoiceApiGroup(rulesConditionTypeChoiceApiGroup) + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OpenApiValidationRule.condition_type_choice_api_group: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") } + return validatorFn, nil +} - v.FldValidators["condition_type_choice.base_path"] = vFnMap["condition_type_choice.base_path"] - v.FldValidators["condition_type_choice.api_group"] = vFnMap["condition_type_choice.api_group"] - - vrhDomainChoice := v.DomainChoiceValidationRuleHandler - rulesDomainChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDomainChoice(rulesDomainChoice) +func (v *ValidateGlobalSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.domain_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") } - v.FldValidators["domain_choice"] = vFn + return validatorFn, nil +} - vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler - rulesDomainChoiceSpecificDomain := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true", - } - vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) +func (v *ValidateGlobalSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OpenApiValidationRule.domain_choice_specific_domain: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") } + return validatorFn, nil +} - v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) +func (v *ValidateGlobalSpecType) HostRewriteParamsHostRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_HostRewrite, err := db.NewStringValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.metadata: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite") } - v.FldValidators["metadata"] = vFn + return oValidatorFn_HostRewrite, nil +} - vrhValidationMode := v.ValidationModeValidationRuleHandler - rulesValidationMode := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhValidationMode(rulesValidationMode) +func (v *ValidateGlobalSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OpenApiValidationRule.validation_mode: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") } - v.FldValidators["validation_mode"] = vFn - - v.FldValidators["condition_type_choice.api_endpoint"] = ApiEndpointDetailsValidator().Validate - - return v -}() - -func OpenApiValidationRuleValidator() db.Validator { - return DefaultOpenApiValidationRuleValidator + return validatorFn, nil } -// augmented methods on protoc/std generated struct - -func (m *OriginServerSubsetRuleListType) ToJSON() (string, error) { - return codec.ToJSON(m) +func (v *ValidateGlobalSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") + } + return validatorFn, nil } -func (m *OriginServerSubsetRuleListType) ToYAML() (string, error) { - return codec.ToYAML(m) +func (v *ValidateGlobalSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") + } + return validatorFn, nil } -func (m *OriginServerSubsetRuleListType) DeepCopy() *OriginServerSubsetRuleListType { - if m == nil { - return nil - } - ser, err := m.Marshal() +func (v *ValidateGlobalSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") } - c := &OriginServerSubsetRuleListType{} - err = c.Unmarshal(ser) + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") } - return c + return validatorFn, nil } -func (m *OriginServerSubsetRuleListType) DeepCopyProto() proto.Message { - if m == nil { - return nil +func (v *ValidateGlobalSpecType) ThreatMeshChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for threat_mesh_choice") } - return m.DeepCopy() + return validatorFn, nil } -func (m *OriginServerSubsetRuleListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OriginServerSubsetRuleListTypeValidator().Validate(ctx, m, opts...) +func (v *ValidateGlobalSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") + } + return validatorFn, nil } -func (m *OriginServerSubsetRuleListType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil +func (v *ValidateGlobalSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") } + return validatorFn, nil +} - return m.GetOriginServerSubsetRulesDRefInfo() - +func (v *ValidateGlobalSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") + } + return validatorFn, nil } -// GetDRefInfo for the field's type -func (m *OriginServerSubsetRuleListType) GetOriginServerSubsetRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginServerSubsetRules() == nil { - return nil, nil +func (v *ValidateGlobalSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") } - var drInfos []db.DRefInfo - for idx, e := range m.GetOriginServerSubsetRules() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRules() GetDRefInfo() FAILED") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("origin_server_subset_rules[%v].%s", idx, dri.DRField) + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) } - drInfos = append(drInfos, driSet...) + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated domains") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items domains") + } + return nil } - return drInfos, nil - -} -type ValidateOriginServerSubsetRuleListType struct { - FldValidators map[string]db.ValidatorFunc + return validatorFn, nil } -func (v *ValidateOriginServerSubsetRuleListType) OriginServerSubsetRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGlobalSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for origin_server_subset_rules") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.OriginServerSubsetRule, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema_policy.OriginServerSubsetRuleValidator().Validate(ctx, el, opts...); err != nil { + if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -20090,13 +9736,13 @@ func (v *ValidateOriginServerSubsetRuleListType) OriginServerSubsetRulesValidati } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for origin_server_subset_rules") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.OriginServerSubsetRule) + elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.OriginServerSubsetRule, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) } l := []string{} for _, elem := range elems { @@ -20107,10 +9753,10 @@ func (v *ValidateOriginServerSubsetRuleListType) OriginServerSubsetRulesValidati l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated origin_server_subset_rules") + return errors.Wrap(err, "repeated default_route_pools") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items origin_server_subset_rules") + return errors.Wrap(err, "items default_route_pools") } return nil } @@ -20118,565 +9764,383 @@ func (v *ValidateOriginServerSubsetRuleListType) OriginServerSubsetRulesValidati return validatorFn, nil } -func (v *ValidateOriginServerSubsetRuleListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OriginServerSubsetRuleListType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OriginServerSubsetRuleListType got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["origin_server_subset_rules"]; exists { - vOpts := append(opts, db.WithValidateField("origin_server_subset_rules")) - if err := fv(ctx, m.GetOriginServerSubsetRules(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultOriginServerSubsetRuleListTypeValidator = func() *ValidateOriginServerSubsetRuleListType { - v := &ValidateOriginServerSubsetRuleListType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateGlobalSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhOriginServerSubsetRules := v.OriginServerSubsetRulesValidationRuleHandler - rulesOriginServerSubsetRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhOriginServerSubsetRules(rulesOriginServerSubsetRules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSubsetRuleListType.origin_server_subset_rules: %s", err) - panic(errMsg) - } - v.FldValidators["origin_server_subset_rules"] = vFn - - return v -}() - -func OriginServerSubsetRuleListTypeValidator() db.Validator { - return DefaultOriginServerSubsetRuleListTypeValidator -} - -// augmented methods on protoc/std generated struct - -func (m *PolicyBasedChallenge) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *PolicyBasedChallenge) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *PolicyBasedChallenge) DeepCopy() *PolicyBasedChallenge { - if m == nil { - return nil + return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") } - ser, err := m.Marshal() - if err != nil { + itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &PolicyBasedChallenge{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil - } - return c -} - -func (m *PolicyBasedChallenge) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *PolicyBasedChallenge) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return PolicyBasedChallengeValidator().Validate(ctx, m, opts...) -} - -func (m *PolicyBasedChallenge) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetMaliciousUserMitigationChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMaliciousUserMitigationChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetRuleListDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRuleListDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -func (m *PolicyBasedChallenge) GetMaliciousUserMitigationChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetMaliciousUserMitigationChoice().(type) { - case *PolicyBasedChallenge_DefaultMitigationSettings: - - return nil, nil - - case *PolicyBasedChallenge_MaliciousUserMitigation: - - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("malicious_user_mitigation.Object") - dri := db.DRefInfo{ - RefdType: "malicious_user_mitigation.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "malicious_user_mitigation", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") } -} - -// GetMaliciousUserMitigationChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *PolicyBasedChallenge) GetMaliciousUserMitigationChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - - switch m.GetMaliciousUserMitigationChoice().(type) { - case *PolicyBasedChallenge_DefaultMitigationSettings: - - case *PolicyBasedChallenge_MaliciousUserMitigation: - refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") - } - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*RouteType) + if !ok { + return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) } - ref := &ves_io_schema.ObjectRefType{ - Kind: "malicious_user_mitigation.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated routes") } - if refdEnt != nil { - entries = append(entries, refdEnt) + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items routes") } - - } - - return entries, nil -} - -// GetDRefInfo for the field's type -func (m *PolicyBasedChallenge) GetRuleListDRefInfo() ([]db.DRefInfo, error) { - if m.GetRuleList() == nil { - return nil, nil - } - - drInfos, err := m.GetRuleList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRuleList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "rule_list." + dri.DRField + return nil } - return drInfos, err - -} - -type ValidatePolicyBasedChallenge struct { - FldValidators map[string]db.ValidatorFunc -} -func (v *ValidatePolicyBasedChallenge) ChallengeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_choice") - } return validatorFn, nil } -func (v *ValidatePolicyBasedChallenge) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*PolicyBasedChallenge) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *PolicyBasedChallenge got type %s", t) - } - } - if m == nil { - return nil - } - - switch m.GetCaptchaChallengeParametersChoice().(type) { - case *PolicyBasedChallenge_DefaultCaptchaChallengeParameters: - if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.default_captcha_challenge_parameters"]; exists { - val := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_DefaultCaptchaChallengeParameters).DefaultCaptchaChallengeParameters - vOpts := append(opts, - db.WithValidateField("captcha_challenge_parameters_choice"), - db.WithValidateField("default_captcha_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *PolicyBasedChallenge_CaptchaChallengeParameters: - if fv, exists := v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"]; exists { - val := m.GetCaptchaChallengeParametersChoice().(*PolicyBasedChallenge_CaptchaChallengeParameters).CaptchaChallengeParameters - vOpts := append(opts, - db.WithValidateField("captcha_challenge_parameters_choice"), - db.WithValidateField("captcha_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } +func (v *ValidateGlobalSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - if fv, exists := v.FldValidators["challenge_choice"]; exists { - val := m.GetChallengeChoice() - vOpts := append(opts, - db.WithValidateField("challenge_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") } - - switch m.GetChallengeChoice().(type) { - case *PolicyBasedChallenge_NoChallenge: - if fv, exists := v.FldValidators["challenge_choice.no_challenge"]; exists { - val := m.GetChallengeChoice().(*PolicyBasedChallenge_NoChallenge).NoChallenge - vOpts := append(opts, - db.WithValidateField("challenge_choice"), - db.WithValidateField("no_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *PolicyBasedChallenge_AlwaysEnableJsChallenge: - if fv, exists := v.FldValidators["challenge_choice.always_enable_js_challenge"]; exists { - val := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableJsChallenge).AlwaysEnableJsChallenge - vOpts := append(opts, - db.WithValidateField("challenge_choice"), - db.WithValidateField("always_enable_js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *PolicyBasedChallenge_AlwaysEnableCaptchaChallenge: - if fv, exists := v.FldValidators["challenge_choice.always_enable_captcha_challenge"]; exists { - val := m.GetChallengeChoice().(*PolicyBasedChallenge_AlwaysEnableCaptchaChallenge).AlwaysEnableCaptchaChallenge - vOpts := append(opts, - db.WithValidateField("challenge_choice"), - db.WithValidateField("always_enable_captcha_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } - + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") } - switch m.GetJsChallengeParametersChoice().(type) { - case *PolicyBasedChallenge_DefaultJsChallengeParameters: - if fv, exists := v.FldValidators["js_challenge_parameters_choice.default_js_challenge_parameters"]; exists { - val := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_DefaultJsChallengeParameters).DefaultJsChallengeParameters - vOpts := append(opts, - db.WithValidateField("js_challenge_parameters_choice"), - db.WithValidateField("default_js_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) } - case *PolicyBasedChallenge_JsChallengeParameters: - if fv, exists := v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"]; exists { - val := m.GetJsChallengeParametersChoice().(*PolicyBasedChallenge_JsChallengeParameters).JsChallengeParameters - vOpts := append(opts, - db.WithValidateField("js_challenge_parameters_choice"), - db.WithValidateField("js_challenge_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) } + l = append(l, strVal) } - - } - - switch m.GetMaliciousUserMitigationChoice().(type) { - case *PolicyBasedChallenge_DefaultMitigationSettings: - if fv, exists := v.FldValidators["malicious_user_mitigation_choice.default_mitigation_settings"]; exists { - val := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_DefaultMitigationSettings).DefaultMitigationSettings - vOpts := append(opts, - db.WithValidateField("malicious_user_mitigation_choice"), - db.WithValidateField("default_mitigation_settings"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated waf_exclusion_rules") } - case *PolicyBasedChallenge_MaliciousUserMitigation: - if fv, exists := v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"]; exists { - val := m.GetMaliciousUserMitigationChoice().(*PolicyBasedChallenge_MaliciousUserMitigation).MaliciousUserMitigation - vOpts := append(opts, - db.WithValidateField("malicious_user_mitigation_choice"), - db.WithValidateField("malicious_user_mitigation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items waf_exclusion_rules") } - + return nil } - if fv, exists := v.FldValidators["rule_list"]; exists { + return validatorFn, nil +} - vOpts := append(opts, db.WithValidateField("rule_list")) - if err := fv(ctx, m.GetRuleList(), vOpts...); err != nil { - return err - } +func (v *ValidateGlobalSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") } - - switch m.GetTemporaryBlockingParametersChoice().(type) { - case *PolicyBasedChallenge_DefaultTemporaryBlockingParameters: - if fv, exists := v.FldValidators["temporary_blocking_parameters_choice.default_temporary_blocking_parameters"]; exists { - val := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_DefaultTemporaryBlockingParameters).DefaultTemporaryBlockingParameters - vOpts := append(opts, - db.WithValidateField("temporary_blocking_parameters_choice"), - db.WithValidateField("default_temporary_blocking_parameters"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - } - case *PolicyBasedChallenge_TemporaryUserBlocking: - if fv, exists := v.FldValidators["temporary_blocking_parameters_choice.temporary_user_blocking"]; exists { - val := m.GetTemporaryBlockingParametersChoice().(*PolicyBasedChallenge_TemporaryUserBlocking).TemporaryUserBlocking - vOpts := append(opts, - db.WithValidateField("temporary_blocking_parameters_choice"), - db.WithValidateField("temporary_user_blocking"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated blocked_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items blocked_clients") + } + return nil } - return nil + return validatorFn, nil } -// Well-known symbol for default validator implementation -var DefaultPolicyBasedChallengeValidator = func() *ValidatePolicyBasedChallenge { - v := &ValidatePolicyBasedChallenge{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateGlobalSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhChallengeChoice := v.ChallengeChoiceValidationRuleHandler - rulesChallengeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - vFn, err = vrhChallengeChoice(rulesChallengeChoice) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for PolicyBasedChallenge.challenge_choice: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") } - v.FldValidators["challenge_choice"] = vFn - - v.FldValidators["captcha_challenge_parameters_choice.captcha_challenge_parameters"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate - - v.FldValidators["js_challenge_parameters_choice.js_challenge_parameters"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - - v.FldValidators["malicious_user_mitigation_choice.malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["temporary_blocking_parameters_choice.temporary_user_blocking"] = ves_io_schema_virtual_host.TemporaryUserBlockingTypeValidator().Validate - - v.FldValidators["rule_list"] = ChallengeRuleListValidator().Validate - return v -}() - -func PolicyBasedChallengeValidator() db.Validator { - return DefaultPolicyBasedChallengeValidator -} - -// augmented methods on protoc/std generated struct + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated trusted_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items trusted_clients") + } + return nil + } -func (m *ProtectedAppEndpointType) ToJSON() (string, error) { - return codec.ToJSON(m) + return validatorFn, nil } -func (m *ProtectedAppEndpointType) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateGlobalSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *ProtectedAppEndpointType) DeepCopy() *ProtectedAppEndpointType { - if m == nil { - return nil - } - ser, err := m.Marshal() + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") + } + itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &ProtectedAppEndpointType{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") } - return c -} -func (m *ProtectedAppEndpointType) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*DDoSMitigationRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated ddos_mitigation_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items ddos_mitigation_rules") + } return nil } - return m.DeepCopy() -} -func (m *ProtectedAppEndpointType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ProtectedAppEndpointTypeValidator().Validate(ctx, m, opts...) + return validatorFn, nil } -type ValidateProtectedAppEndpointType struct { - FldValidators map[string]db.ValidatorFunc -} +func (v *ValidateGlobalSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateProtectedAppEndpointType) AppTrafficTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for app_traffic_type_choice") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") } - return validatorFn, nil -} - -func (v *ValidateProtectedAppEndpointType) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated data_guard_rules") } - - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items data_guard_rules") } - return nil } return validatorFn, nil } -func (v *ValidateProtectedAppEndpointType) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGlobalSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") + } - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated graphql_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items graphql_rules") } - return nil } return validatorFn, nil } -func (v *ValidateProtectedAppEndpointType) HttpMethodsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateGlobalSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema.BotHttpMethod) - return int32(i) - } - // ves_io_schema.BotHttpMethod_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.BotHttpMethod_name, conv) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for http_methods") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") } - itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.BotHttpMethod, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for http_methods") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ves_io_schema.BotHttpMethod) + elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) if !ok { - return fmt.Errorf("Repeated validation expected []ves_io_schema.BotHttpMethod, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated http_methods") + return errors.Wrap(err, "repeated protected_cookies") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items http_methods") + return errors.Wrap(err, "items protected_cookies") } return nil } @@ -20684,59 +10148,79 @@ func (v *ValidateProtectedAppEndpointType) HttpMethodsValidationRuleHandler(rule return validatorFn, nil } -func (v *ValidateProtectedAppEndpointType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ProtectedAppEndpointType) +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ProtectedAppEndpointType got type %s", t) + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["app_traffic_type_choice"]; exists { - val := m.GetAppTrafficTypeChoice() + if fv, exists := v.FldValidators["add_location"]; exists { + + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["advertise_choice"]; exists { + val := m.GetAdvertiseChoice() vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("advertise_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetAppTrafficTypeChoice().(type) { - case *ProtectedAppEndpointType_WebClient: - if fv, exists := v.FldValidators["app_traffic_type_choice.web_client"]; exists { - val := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebClient).WebClient + switch m.GetAdvertiseChoice().(type) { + case *GlobalSpecType_AdvertiseOnPublic: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { + val := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublic).AdvertiseOnPublic vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - db.WithValidateField("web_client"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProtectedAppEndpointType_MobileClient: - if fv, exists := v.FldValidators["app_traffic_type_choice.mobile_client"]; exists { - val := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_MobileClient).MobileClient + case *GlobalSpecType_AdvertiseCustom: + if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { + val := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseCustom).AdvertiseCustom vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - db.WithValidateField("mobile_client"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_custom"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProtectedAppEndpointType_WebMobileClient: - if fv, exists := v.FldValidators["app_traffic_type_choice.web_mobile_client"]; exists { - val := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebMobileClient).WebMobileClient + case *GlobalSpecType_DoNotAdvertise: + if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { + val := m.GetAdvertiseChoice().(*GlobalSpecType_DoNotAdvertise).DoNotAdvertise vOpts := append(opts, - db.WithValidateField("app_traffic_type_choice"), - db.WithValidateField("web_mobile_client"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("do_not_advertise"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_AdvertiseOnPublicDefaultVip: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { + val := m.GetAdvertiseChoice().(*GlobalSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public_default_vip"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -20745,50 +10229,56 @@ func (v *ValidateProtectedAppEndpointType) Validate(ctx context.Context, pm inte } - switch m.GetDomainMatcherChoice().(type) { - case *ProtectedAppEndpointType_AnyDomain: - if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { - val := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_AnyDomain).AnyDomain + if fv, exists := v.FldValidators["api_definition_choice"]; exists { + val := m.GetApiDefinitionChoice() + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetApiDefinitionChoice().(type) { + case *GlobalSpecType_ApiDefinitions: + if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { + val := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinitions).ApiDefinitions vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("any_domain"), + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definitions"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProtectedAppEndpointType_Domain: - if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { - val := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_Domain).Domain + case *GlobalSpecType_ApiSpecification: + if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { + val := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiSpecification).ApiSpecification vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("domain"), + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_specification"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - - } - - switch m.GetFlowLabelChoice().(type) { - case *ProtectedAppEndpointType_UndefinedFlowLabel: - if fv, exists := v.FldValidators["flow_label_choice.undefined_flow_label"]; exists { - val := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_UndefinedFlowLabel).UndefinedFlowLabel + case *GlobalSpecType_DisableApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*GlobalSpecType_DisableApiDefinition).DisableApiDefinition vOpts := append(opts, - db.WithValidateField("flow_label_choice"), - db.WithValidateField("undefined_flow_label"), + db.WithValidateField("api_definition_choice"), + db.WithValidateField("disable_api_definition"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProtectedAppEndpointType_FlowLabel: - if fv, exists := v.FldValidators["flow_label_choice.flow_label"]; exists { - val := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_FlowLabel).FlowLabel + case *GlobalSpecType_ApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*GlobalSpecType_ApiDefinition).ApiDefinition vOpts := append(opts, - db.WithValidateField("flow_label_choice"), - db.WithValidateField("flow_label"), + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definition"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -20797,252 +10287,184 @@ func (v *ValidateProtectedAppEndpointType) Validate(ctx context.Context, pm inte } - if fv, exists := v.FldValidators["http_methods"]; exists { - vOpts := append(opts, db.WithValidateField("http_methods")) - if err := fv(ctx, m.GetHttpMethods(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["metadata"]; exists { - - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + if fv, exists := v.FldValidators["api_discovery_choice"]; exists { + val := m.GetApiDiscoveryChoice() + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - if fv, exists := v.FldValidators["path"]; exists { - - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err + switch m.GetApiDiscoveryChoice().(type) { + case *GlobalSpecType_EnableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*GlobalSpecType_EnableApiDiscovery).EnableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("enable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - - } - - if fv, exists := v.FldValidators["query"]; exists { - - vOpts := append(opts, db.WithValidateField("query")) - for idx, item := range m.GetQuery() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { + case *GlobalSpecType_DisableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*GlobalSpecType_DisableApiDiscovery).DisableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("disable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } } } - if fv, exists := v.FldValidators["request_body"]; exists { + if fv, exists := v.FldValidators["api_protection_rules"]; exists { - vOpts := append(opts, db.WithValidateField("request_body")) - for idx, item := range m.GetRequestBody() { - vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) - if err := fv(ctx, item, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("api_protection_rules")) + if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { + return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultProtectedAppEndpointTypeValidator = func() *ValidateProtectedAppEndpointType { - v := &ValidateProtectedAppEndpointType{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhAppTrafficTypeChoice := v.AppTrafficTypeChoiceValidationRuleHandler - rulesAppTrafficTypeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhAppTrafficTypeChoice(rulesAppTrafficTypeChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.app_traffic_type_choice: %s", err) - panic(errMsg) - } - v.FldValidators["app_traffic_type_choice"] = vFn - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhMetadata(rulesMetadata) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.metadata: %s", err) - panic(errMsg) - } - v.FldValidators["metadata"] = vFn + if fv, exists := v.FldValidators["auto_cert_info"]; exists { - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPath(rulesPath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.path: %s", err) - panic(errMsg) - } - v.FldValidators["path"] = vFn + vOpts := append(opts, db.WithValidateField("auto_cert_info")) + if err := fv(ctx, m.GetAutoCertInfo(), vOpts...); err != nil { + return err + } - vrhHttpMethods := v.HttpMethodsValidationRuleHandler - rulesHttpMethods := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.enum.defined_only": "true", - "ves.io.schema.rules.repeated.items.enum.in": "[0,1,3,4,5,6]", - "ves.io.schema.rules.repeated.max_items": "6", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhHttpMethods(rulesHttpMethods) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.http_methods: %s", err) - panic(errMsg) } - v.FldValidators["http_methods"] = vFn - - v.FldValidators["app_traffic_type_choice.web_mobile_client"] = WebMobileTrafficTypeValidator().Validate - - v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate - - v.FldValidators["flow_label_choice.flow_label"] = ves_io_schema.BotDefenseFlowLabelCategoriesChoiceTypeValidator().Validate - - v.FldValidators["query"] = QueryValidator().Validate - - v.FldValidators["request_body"] = RequestBodyValidator().Validate - - return v -}() - -func ProtectedAppEndpointTypeValidator() db.Validator { - return DefaultProtectedAppEndpointTypeValidator -} -// augmented methods on protoc/std generated struct - -func (m *ProxyTypeHttp) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ProxyTypeHttp) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fv, exists := v.FldValidators["auto_cert_state"]; exists { -func (m *ProxyTypeHttp) DeepCopy() *ProxyTypeHttp { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ProxyTypeHttp{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} + vOpts := append(opts, db.WithValidateField("auto_cert_state")) + if err := fv(ctx, m.GetAutoCertState(), vOpts...); err != nil { + return err + } -func (m *ProxyTypeHttp) DeepCopyProto() proto.Message { - if m == nil { - return nil } - return m.DeepCopy() -} - -func (m *ProxyTypeHttp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ProxyTypeHttpValidator().Validate(ctx, m, opts...) -} - -type ValidateProxyTypeHttp struct { - FldValidators map[string]db.ValidatorFunc -} -func (v *ValidateProxyTypeHttp) PortChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port_choice") - } - return validatorFn, nil -} + if fv, exists := v.FldValidators["blocked_clients"]; exists { + vOpts := append(opts, db.WithValidateField("blocked_clients")) + if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { + return err + } -func (v *ValidateProxyTypeHttp) PortChoicePortValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Port, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port") - } - return oValidatorFn_Port, nil -} -func (v *ValidateProxyTypeHttp) PortChoicePortRangesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_PortRanges, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port_ranges") } - return oValidatorFn_PortRanges, nil -} -func (v *ValidateProxyTypeHttp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ProxyTypeHttp) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ProxyTypeHttp got type %s", t) + switch m.GetBotDefenseChoice().(type) { + case *GlobalSpecType_DisableBotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*GlobalSpecType_DisableBotDefense).DisableBotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("disable_bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - } - if m == nil { - return nil + case *GlobalSpecType_BotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefense).BotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_BotDefenseAdvanced: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { + val := m.GetBotDefenseChoice().(*GlobalSpecType_BotDefenseAdvanced).BotDefenseAdvanced + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + } - if fv, exists := v.FldValidators["dns_volterra_managed"]; exists { + if fv, exists := v.FldValidators["cert_state"]; exists { - vOpts := append(opts, db.WithValidateField("dns_volterra_managed")) - if err := fv(ctx, m.GetDnsVolterraManaged(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("cert_state")) + if err := fv(ctx, m.GetCertState(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["port_choice"]; exists { - val := m.GetPortChoice() + if fv, exists := v.FldValidators["challenge_type"]; exists { + val := m.GetChallengeType() vOpts := append(opts, - db.WithValidateField("port_choice"), + db.WithValidateField("challenge_type"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } - } - - switch m.GetPortChoice().(type) { - case *ProxyTypeHttp_Port: - if fv, exists := v.FldValidators["port_choice.port"]; exists { - val := m.GetPortChoice().(*ProxyTypeHttp_Port).Port + } + + switch m.GetChallengeType().(type) { + case *GlobalSpecType_JsChallenge: + if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { + val := m.GetChallengeType().(*GlobalSpecType_JsChallenge).JsChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_CaptchaChallenge: + if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { + val := m.GetChallengeType().(*GlobalSpecType_CaptchaChallenge).CaptchaChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("captcha_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_NoChallenge: + if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { + val := m.GetChallengeType().(*GlobalSpecType_NoChallenge).NoChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("no_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_PolicyBasedChallenge: + if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { + val := m.GetChallengeType().(*GlobalSpecType_PolicyBasedChallenge).PolicyBasedChallenge vOpts := append(opts, - db.WithValidateField("port_choice"), - db.WithValidateField("port"), + db.WithValidateField("challenge_type"), + db.WithValidateField("policy_based_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttp_PortRanges: - if fv, exists := v.FldValidators["port_choice.port_ranges"]; exists { - val := m.GetPortChoice().(*ProxyTypeHttp_PortRanges).PortRanges + case *GlobalSpecType_EnableChallenge: + if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { + val := m.GetChallengeType().(*GlobalSpecType_EnableChallenge).EnableChallenge vOpts := append(opts, - db.WithValidateField("port_choice"), - db.WithValidateField("port_ranges"), + db.WithValidateField("challenge_type"), + db.WithValidateField("enable_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21051,278 +10473,186 @@ func (v *ValidateProxyTypeHttp) Validate(ctx context.Context, pm interface{}, op } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultProxyTypeHttpValidator = func() *ValidateProxyTypeHttp { - v := &ValidateProxyTypeHttp{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhPortChoice := v.PortChoiceValidationRuleHandler - rulesPortChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhPortChoice(rulesPortChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttp.port_choice: %s", err) - panic(errMsg) - } - v.FldValidators["port_choice"] = vFn - - vrhPortChoicePort := v.PortChoicePortValidationRuleHandler - rulesPortChoicePort := map[string]string{ - "ves.io.schema.rules.uint32.lte": "65535", - } - vFnMap["port_choice.port"], err = vrhPortChoicePort(rulesPortChoicePort) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttp.port_choice_port: %s", err) - panic(errMsg) - } - vrhPortChoicePortRanges := v.PortChoicePortRangesValidationRuleHandler - rulesPortChoicePortRanges := map[string]string{ - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true", - } - vFnMap["port_choice.port_ranges"], err = vrhPortChoicePortRanges(rulesPortChoicePortRanges) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttp.port_choice_port_ranges: %s", err) - panic(errMsg) - } - - v.FldValidators["port_choice.port"] = vFnMap["port_choice.port"] - v.FldValidators["port_choice.port_ranges"] = vFnMap["port_choice.port_ranges"] - - return v -}() - -func ProxyTypeHttpValidator() db.Validator { - return DefaultProxyTypeHttpValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ProxyTypeHttps) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ProxyTypeHttps) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -// Redact squashes sensitive info in m (in-place) -func (m *ProxyTypeHttps) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetTlsParameters().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ProxyTypeHttps.tls_parameters") - } - - return nil -} + switch m.GetClientSideDefenseChoice().(type) { + case *GlobalSpecType_DisableClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*GlobalSpecType_DisableClientSideDefense).DisableClientSideDefense + vOpts := append(opts, + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("disable_client_side_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_ClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*GlobalSpecType_ClientSideDefense).ClientSideDefense + vOpts := append(opts, + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("client_side_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *ProxyTypeHttps) DeepCopy() *ProxyTypeHttps { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ProxyTypeHttps{} - err = c.Unmarshal(ser) - if err != nil { - return nil } - return c -} -func (m *ProxyTypeHttps) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} + if fv, exists := v.FldValidators["cors_policy"]; exists { -func (m *ProxyTypeHttps) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ProxyTypeHttpsValidator().Validate(ctx, m, opts...) -} + vOpts := append(opts, db.WithValidateField("cors_policy")) + if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { + return err + } -func (m *ProxyTypeHttps) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil } - return m.GetTlsCertificatesChoiceDRefInfo() + if fv, exists := v.FldValidators["csrf_policy"]; exists { -} + vOpts := append(opts, db.WithValidateField("csrf_policy")) + if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *ProxyTypeHttps) GetTlsCertificatesChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetTlsCertificatesChoice() == nil { - return nil, nil } - switch m.GetTlsCertificatesChoice().(type) { - case *ProxyTypeHttps_TlsParameters: - drInfos, err := m.GetTlsParameters().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetTlsParameters().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "tls_parameters." + dri.DRField + if fv, exists := v.FldValidators["data_guard_rules"]; exists { + vOpts := append(opts, db.WithValidateField("data_guard_rules")) + if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { + return err } - return drInfos, err - case *ProxyTypeHttps_TlsCertParams: + } - drInfos, err := m.GetTlsCertParams().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetTlsCertParams().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "tls_cert_params." + dri.DRField + if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { + vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) + if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } -} - -type ValidateProxyTypeHttps struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateProxyTypeHttps) PathNormalizeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for path_normalize_choice") - } - return validatorFn, nil -} + if fv, exists := v.FldValidators["default_route_pools"]; exists { + vOpts := append(opts, db.WithValidateField("default_route_pools")) + if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { + return err + } -func (v *ValidateProxyTypeHttps) PortChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port_choice") } - return validatorFn, nil -} -func (v *ValidateProxyTypeHttps) PortChoicePortValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Port, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port") - } - return oValidatorFn_Port, nil -} -func (v *ValidateProxyTypeHttps) PortChoicePortRangesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_PortRanges, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port_ranges") - } - return oValidatorFn_PortRanges, nil -} + if fv, exists := v.FldValidators["dns_info"]; exists { -func (v *ValidateProxyTypeHttps) ServerHeaderChoiceServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ServerName, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for server_name") - } - return oValidatorFn_ServerName, nil -} -func (v *ValidateProxyTypeHttps) ServerHeaderChoiceAppendServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_AppendServerName, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for append_server_name") - } - return oValidatorFn_AppendServerName, nil -} + vOpts := append(opts, db.WithValidateField("dns_info")) + for idx, item := range m.GetDnsInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } -func (v *ValidateProxyTypeHttps) TlsCertificatesChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for tls_certificates_choice") } - return validatorFn, nil -} -func (v *ValidateProxyTypeHttps) ConnectionIdleTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for connection_idle_timeout") } - return validatorFn, nil -} + if fv, exists := v.FldValidators["downstream_tls_certificate_expiration_timestamps"]; exists { -func (v *ValidateProxyTypeHttps) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ProxyTypeHttps) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ProxyTypeHttps got type %s", t) + vOpts := append(opts, db.WithValidateField("downstream_tls_certificate_expiration_timestamps")) + for idx, item := range m.GetDownstreamTlsCertificateExpirationTimestamps() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } } - } - if m == nil { - return nil - } - if fv, exists := v.FldValidators["add_hsts"]; exists { + } - vOpts := append(opts, db.WithValidateField("add_hsts")) - if err := fv(ctx, m.GetAddHsts(), vOpts...); err != nil { + if fv, exists := v.FldValidators["graphql_rules"]; exists { + vOpts := append(opts, db.WithValidateField("graphql_rules")) + if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["connection_idle_timeout"]; exists { - - vOpts := append(opts, db.WithValidateField("connection_idle_timeout")) - if err := fv(ctx, m.GetConnectionIdleTimeout(), vOpts...); err != nil { + if fv, exists := v.FldValidators["hash_policy_choice"]; exists { + val := m.GetHashPolicyChoice() + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - switch m.GetDefaultLbChoice().(type) { - case *ProxyTypeHttps_NonDefaultLoadbalancer: - if fv, exists := v.FldValidators["default_lb_choice.non_default_loadbalancer"]; exists { - val := m.GetDefaultLbChoice().(*ProxyTypeHttps_NonDefaultLoadbalancer).NonDefaultLoadbalancer + switch m.GetHashPolicyChoice().(type) { + case *GlobalSpecType_RoundRobin: + if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { + val := m.GetHashPolicyChoice().(*GlobalSpecType_RoundRobin).RoundRobin vOpts := append(opts, - db.WithValidateField("default_lb_choice"), - db.WithValidateField("non_default_loadbalancer"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("round_robin"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttps_DefaultLoadbalancer: - if fv, exists := v.FldValidators["default_lb_choice.default_loadbalancer"]; exists { - val := m.GetDefaultLbChoice().(*ProxyTypeHttps_DefaultLoadbalancer).DefaultLoadbalancer + case *GlobalSpecType_LeastActive: + if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { + val := m.GetHashPolicyChoice().(*GlobalSpecType_LeastActive).LeastActive vOpts := append(opts, - db.WithValidateField("default_lb_choice"), - db.WithValidateField("default_loadbalancer"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("least_active"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_Random: + if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { + val := m.GetHashPolicyChoice().(*GlobalSpecType_Random).Random + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("random"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_SourceIpStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*GlobalSpecType_SourceIpStickiness).SourceIpStickiness + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("source_ip_stickiness"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_CookieStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*GlobalSpecType_CookieStickiness).CookieStickiness + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("cookie_stickiness"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_RingHash: + if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { + val := m.GetHashPolicyChoice().(*GlobalSpecType_RingHash).RingHash + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("ring_hash"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21331,61 +10661,82 @@ func (v *ValidateProxyTypeHttps) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["header_transformation_type"]; exists { + if fv, exists := v.FldValidators["host_name"]; exists { - vOpts := append(opts, db.WithValidateField("header_transformation_type")) - if err := fv(ctx, m.GetHeaderTransformationType(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("host_name")) + if err := fv(ctx, m.GetHostName(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["http_protocol_options"]; exists { - - vOpts := append(opts, db.WithValidateField("http_protocol_options")) - if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { - return err + switch m.GetHostRewriteParams().(type) { + case *GlobalSpecType_AutoHostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.auto_host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*GlobalSpecType_AutoHostRewrite).AutoHostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("auto_host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_HostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*GlobalSpecType_HostRewrite).HostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_DisableHostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.disable_host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*GlobalSpecType_DisableHostRewrite).DisableHostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("disable_host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } } - if fv, exists := v.FldValidators["http_redirect"]; exists { + if fv, exists := v.FldValidators["internet_vip_info"]; exists { - vOpts := append(opts, db.WithValidateField("http_redirect")) - if err := fv(ctx, m.GetHttpRedirect(), vOpts...); err != nil { - return err + vOpts := append(opts, db.WithValidateField("internet_vip_info")) + for idx, item := range m.GetInternetVipInfo() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } } } - if fv, exists := v.FldValidators["path_normalize_choice"]; exists { - val := m.GetPathNormalizeChoice() - vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetPathNormalizeChoice().(type) { - case *ProxyTypeHttps_EnablePathNormalize: - if fv, exists := v.FldValidators["path_normalize_choice.enable_path_normalize"]; exists { - val := m.GetPathNormalizeChoice().(*ProxyTypeHttps_EnablePathNormalize).EnablePathNormalize + switch m.GetIpReputationChoice().(type) { + case *GlobalSpecType_DisableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*GlobalSpecType_DisableIpReputation).DisableIpReputation vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - db.WithValidateField("enable_path_normalize"), + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("disable_ip_reputation"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttps_DisablePathNormalize: - if fv, exists := v.FldValidators["path_normalize_choice.disable_path_normalize"]; exists { - val := m.GetPathNormalizeChoice().(*ProxyTypeHttps_DisablePathNormalize).DisablePathNormalize + case *GlobalSpecType_EnableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*GlobalSpecType_EnableIpReputation).EnableIpReputation vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - db.WithValidateField("disable_path_normalize"), + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("enable_ip_reputation"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21394,34 +10745,65 @@ func (v *ValidateProxyTypeHttps) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["port_choice"]; exists { - val := m.GetPortChoice() + if fv, exists := v.FldValidators["jwt_validation"]; exists { + + vOpts := append(opts, db.WithValidateField("jwt_validation")) + if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { + val := m.GetL7DdosAutoMitigationAction() vOpts := append(opts, - db.WithValidateField("port_choice"), + db.WithValidateField("l7_ddos_auto_mitigation_action"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetPortChoice().(type) { - case *ProxyTypeHttps_Port: - if fv, exists := v.FldValidators["port_choice.port"]; exists { - val := m.GetPortChoice().(*ProxyTypeHttps_Port).Port + switch m.GetL7DdosAutoMitigationAction().(type) { + case *GlobalSpecType_L7DdosActionDefault: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionDefault).L7DdosActionDefault vOpts := append(opts, - db.WithValidateField("port_choice"), - db.WithValidateField("port"), + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_default"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_L7DdosActionBlock: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionBlock).L7DdosActionBlock + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_L7DdosActionJsChallenge: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_js_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttps_PortRanges: - if fv, exists := v.FldValidators["port_choice.port_ranges"]; exists { - val := m.GetPortChoice().(*ProxyTypeHttps_PortRanges).PortRanges + case *GlobalSpecType_L7DdosActionNone: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionNone).L7DdosActionNone vOpts := append(opts, - db.WithValidateField("port_choice"), - db.WithValidateField("port_ranges"), + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_none"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21430,46 +10812,45 @@ func (v *ValidateProxyTypeHttps) Validate(ctx context.Context, pm interface{}, o } - switch m.GetServerHeaderChoice().(type) { - case *ProxyTypeHttps_DefaultHeader: - if fv, exists := v.FldValidators["server_header_choice.default_header"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttps_DefaultHeader).DefaultHeader - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("default_header"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - case *ProxyTypeHttps_ServerName: - if fv, exists := v.FldValidators["server_header_choice.server_name"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttps_ServerName).ServerName + } + + switch m.GetLoadbalancerType().(type) { + case *GlobalSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*GlobalSpecType_Http).Http vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("server_name"), + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttps_AppendServerName: - if fv, exists := v.FldValidators["server_header_choice.append_server_name"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttps_AppendServerName).AppendServerName + case *GlobalSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*GlobalSpecType_Https).Https vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("append_server_name"), + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttps_PassThrough: - if fv, exists := v.FldValidators["server_header_choice.pass_through"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttps_PassThrough).PassThrough + case *GlobalSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*GlobalSpecType_HttpsAutoCert).HttpsAutoCert vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("pass_through"), + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21478,346 +10859,249 @@ func (v *ValidateProxyTypeHttps) Validate(ctx context.Context, pm interface{}, o } - if fv, exists := v.FldValidators["tls_certificates_choice"]; exists { - val := m.GetTlsCertificatesChoice() + if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { + val := m.GetMaliciousUserDetectionChoice() vOpts := append(opts, - db.WithValidateField("tls_certificates_choice"), + db.WithValidateField("malicious_user_detection_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetTlsCertificatesChoice().(type) { - case *ProxyTypeHttps_TlsParameters: - if fv, exists := v.FldValidators["tls_certificates_choice.tls_parameters"]; exists { - val := m.GetTlsCertificatesChoice().(*ProxyTypeHttps_TlsParameters).TlsParameters + switch m.GetMaliciousUserDetectionChoice().(type) { + case *GlobalSpecType_EnableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection vOpts := append(opts, - db.WithValidateField("tls_certificates_choice"), - db.WithValidateField("tls_parameters"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("enable_malicious_user_detection"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttps_TlsCertParams: - if fv, exists := v.FldValidators["tls_certificates_choice.tls_cert_params"]; exists { - val := m.GetTlsCertificatesChoice().(*ProxyTypeHttps_TlsCertParams).TlsCertParams + case *GlobalSpecType_DisableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*GlobalSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection vOpts := append(opts, - db.WithValidateField("tls_certificates_choice"), - db.WithValidateField("tls_cert_params"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("disable_malicious_user_detection"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultProxyTypeHttpsValidator = func() *ValidateProxyTypeHttps { - v := &ValidateProxyTypeHttps{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhPathNormalizeChoice := v.PathNormalizeChoiceValidationRuleHandler - rulesPathNormalizeChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhPathNormalizeChoice(rulesPathNormalizeChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.path_normalize_choice: %s", err) - panic(errMsg) - } - v.FldValidators["path_normalize_choice"] = vFn - - vrhPortChoice := v.PortChoiceValidationRuleHandler - rulesPortChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhPortChoice(rulesPortChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.port_choice: %s", err) - panic(errMsg) - } - v.FldValidators["port_choice"] = vFn - - vrhPortChoicePort := v.PortChoicePortValidationRuleHandler - rulesPortChoicePort := map[string]string{ - "ves.io.schema.rules.uint32.lte": "65535", - } - vFnMap["port_choice.port"], err = vrhPortChoicePort(rulesPortChoicePort) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.port_choice_port: %s", err) - panic(errMsg) - } - vrhPortChoicePortRanges := v.PortChoicePortRangesValidationRuleHandler - rulesPortChoicePortRanges := map[string]string{ - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true", - } - vFnMap["port_choice.port_ranges"], err = vrhPortChoicePortRanges(rulesPortChoicePortRanges) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.port_choice_port_ranges: %s", err) - panic(errMsg) - } - - v.FldValidators["port_choice.port"] = vFnMap["port_choice.port"] - v.FldValidators["port_choice.port_ranges"] = vFnMap["port_choice.port_ranges"] - - vrhServerHeaderChoiceServerName := v.ServerHeaderChoiceServerNameValidationRuleHandler - rulesServerHeaderChoiceServerName := map[string]string{ - "ves.io.schema.rules.string.max_len": "8096", - } - vFnMap["server_header_choice.server_name"], err = vrhServerHeaderChoiceServerName(rulesServerHeaderChoiceServerName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.server_header_choice_server_name: %s", err) - panic(errMsg) - } - vrhServerHeaderChoiceAppendServerName := v.ServerHeaderChoiceAppendServerNameValidationRuleHandler - rulesServerHeaderChoiceAppendServerName := map[string]string{ - "ves.io.schema.rules.string.max_len": "8096", - } - vFnMap["server_header_choice.append_server_name"], err = vrhServerHeaderChoiceAppendServerName(rulesServerHeaderChoiceAppendServerName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.server_header_choice_append_server_name: %s", err) - panic(errMsg) - } - - v.FldValidators["server_header_choice.server_name"] = vFnMap["server_header_choice.server_name"] - v.FldValidators["server_header_choice.append_server_name"] = vFnMap["server_header_choice.append_server_name"] - - vrhTlsCertificatesChoice := v.TlsCertificatesChoiceValidationRuleHandler - rulesTlsCertificatesChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhTlsCertificatesChoice(rulesTlsCertificatesChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.tls_certificates_choice: %s", err) - panic(errMsg) - } - v.FldValidators["tls_certificates_choice"] = vFn - - vrhConnectionIdleTimeout := v.ConnectionIdleTimeoutValidationRuleHandler - rulesConnectionIdleTimeout := map[string]string{ - "ves.io.schema.rules.uint32.lte": "600000", - } - vFn, err = vrhConnectionIdleTimeout(rulesConnectionIdleTimeout) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.connection_idle_timeout: %s", err) - panic(errMsg) - } - v.FldValidators["connection_idle_timeout"] = vFn - - v.FldValidators["tls_certificates_choice.tls_parameters"] = ves_io_schema_views.DownstreamTlsParamsTypeValidator().Validate - v.FldValidators["tls_certificates_choice.tls_cert_params"] = ves_io_schema_views.DownstreamTLSCertsParamsValidator().Validate - - v.FldValidators["header_transformation_type"] = ves_io_schema.HeaderTransformationTypeValidator().Validate - - v.FldValidators["http_protocol_options"] = ves_io_schema_virtual_host.HttpProtocolOptionsValidator().Validate - - return v -}() - -func ProxyTypeHttpsValidator() db.Validator { - return DefaultProxyTypeHttpsValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ProxyTypeHttpsAutoCerts) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ProxyTypeHttpsAutoCerts) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ProxyTypeHttpsAutoCerts) DeepCopy() *ProxyTypeHttpsAutoCerts { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ProxyTypeHttpsAutoCerts{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ProxyTypeHttpsAutoCerts) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ProxyTypeHttpsAutoCerts) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ProxyTypeHttpsAutoCertsValidator().Validate(ctx, m, opts...) -} - -func (m *ProxyTypeHttpsAutoCerts) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil + } + } - return m.GetMtlsChoiceDRefInfo() + if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { -} + vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) + if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *ProxyTypeHttpsAutoCerts) GetMtlsChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetMtlsChoice() == nil { - return nil, nil } - switch m.GetMtlsChoice().(type) { - case *ProxyTypeHttpsAutoCerts_NoMtls: - - return nil, nil - - case *ProxyTypeHttpsAutoCerts_UseMtls: - drInfos, err := m.GetUseMtls().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetUseMtls().GetDRefInfo() FAILED") + switch m.GetMlConfigChoice().(type) { + case *GlobalSpecType_SingleLbApp: + if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { + val := m.GetMlConfigChoice().(*GlobalSpecType_SingleLbApp).SingleLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("single_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "use_mtls." + dri.DRField + case *GlobalSpecType_MultiLbApp: + if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { + val := m.GetMlConfigChoice().(*GlobalSpecType_MultiLbApp).MultiLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("multi_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - default: - return nil, nil } -} + if fv, exists := v.FldValidators["more_option"]; exists { -type ValidateProxyTypeHttpsAutoCerts struct { - FldValidators map[string]db.ValidatorFunc -} + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err + } -func (v *ValidateProxyTypeHttpsAutoCerts) MtlsChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for mtls_choice") } - return validatorFn, nil -} -func (v *ValidateProxyTypeHttpsAutoCerts) PathNormalizeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for path_normalize_choice") - } - return validatorFn, nil -} + switch m.GetOriginPoolChoice().(type) { + case *GlobalSpecType_DefaultPool: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { + val := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPool).DefaultPool + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_DefaultPoolList: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { + val := m.GetOriginPoolChoice().(*GlobalSpecType_DefaultPoolList).DefaultPoolList + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (v *ValidateProxyTypeHttpsAutoCerts) PortChoicePortValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Port, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port") - } - return oValidatorFn_Port, nil -} -func (v *ValidateProxyTypeHttpsAutoCerts) PortChoicePortRangesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_PortRanges, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for port_ranges") } - return oValidatorFn_PortRanges, nil -} -func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ServerName, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for server_name") - } - return oValidatorFn_ServerName, nil -} -func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceAppendServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_AppendServerName, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for append_server_name") - } - return oValidatorFn_AppendServerName, nil -} + if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { -func (v *ValidateProxyTypeHttpsAutoCerts) ConnectionIdleTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) + if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for connection_idle_timeout") } - return validatorFn, nil -} - -func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ProxyTypeHttpsAutoCerts) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ProxyTypeHttpsAutoCerts got type %s", t) + if fv, exists := v.FldValidators["protected_cookies"]; exists { + vOpts := append(opts, db.WithValidateField("protected_cookies")) + if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { + return err } + } - if m == nil { - return nil + + if fv, exists := v.FldValidators["rate_limit_choice"]; exists { + val := m.GetRateLimitChoice() + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - if fv, exists := v.FldValidators["add_hsts"]; exists { + switch m.GetRateLimitChoice().(type) { + case *GlobalSpecType_DisableRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*GlobalSpecType_DisableRateLimit).DisableRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("disable_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_RateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { + val := m.GetRateLimitChoice().(*GlobalSpecType_RateLimit).RateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_ApiRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*GlobalSpecType_ApiRateLimit).ApiRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("api_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vOpts := append(opts, db.WithValidateField("add_hsts")) - if err := fv(ctx, m.GetAddHsts(), vOpts...); err != nil { + } + + if fv, exists := v.FldValidators["routes"]; exists { + vOpts := append(opts, db.WithValidateField("routes")) + if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["connection_idle_timeout"]; exists { - - vOpts := append(opts, db.WithValidateField("connection_idle_timeout")) - if err := fv(ctx, m.GetConnectionIdleTimeout(), vOpts...); err != nil { + if fv, exists := v.FldValidators["service_policy_choice"]; exists { + val := m.GetServicePolicyChoice() + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - switch m.GetDefaultLbChoice().(type) { - case *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer: - if fv, exists := v.FldValidators["default_lb_choice.non_default_loadbalancer"]; exists { - val := m.GetDefaultLbChoice().(*ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer).NonDefaultLoadbalancer + switch m.GetServicePolicyChoice().(type) { + case *GlobalSpecType_ServicePoliciesFromNamespace: + if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { + val := m.GetServicePolicyChoice().(*GlobalSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace vOpts := append(opts, - db.WithValidateField("default_lb_choice"), - db.WithValidateField("non_default_loadbalancer"), + db.WithValidateField("service_policy_choice"), + db.WithValidateField("service_policies_from_namespace"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_NoServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*GlobalSpecType_NoServicePolicies).NoServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("no_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *GlobalSpecType_ActiveServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*GlobalSpecType_ActiveServicePolicies).ActiveServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("active_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + switch m.GetSlowDdosMitigationChoice().(type) { + case *GlobalSpecType_SlowDdosMitigation: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { + val := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SlowDdosMitigation).SlowDdosMitigation + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("slow_ddos_mitigation"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer: - if fv, exists := v.FldValidators["default_lb_choice.default_loadbalancer"]; exists { - val := m.GetDefaultLbChoice().(*ProxyTypeHttpsAutoCerts_DefaultLoadbalancer).DefaultLoadbalancer + case *GlobalSpecType_SystemDefaultTimeouts: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { + val := m.GetSlowDdosMitigationChoice().(*GlobalSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts vOpts := append(opts, - db.WithValidateField("default_lb_choice"), - db.WithValidateField("default_loadbalancer"), + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("system_default_timeouts"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21826,61 +11110,43 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } - if fv, exists := v.FldValidators["header_transformation_type"]; exists { - - vOpts := append(opts, db.WithValidateField("header_transformation_type")) - if err := fv(ctx, m.GetHeaderTransformationType(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["http_protocol_options"]; exists { - - vOpts := append(opts, db.WithValidateField("http_protocol_options")) - if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["http_redirect"]; exists { + if fv, exists := v.FldValidators["state"]; exists { - vOpts := append(opts, db.WithValidateField("http_redirect")) - if err := fv(ctx, m.GetHttpRedirect(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("state")) + if err := fv(ctx, m.GetState(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["mtls_choice"]; exists { - val := m.GetMtlsChoice() + if fv, exists := v.FldValidators["threat_mesh_choice"]; exists { + val := m.GetThreatMeshChoice() vOpts := append(opts, - db.WithValidateField("mtls_choice"), + db.WithValidateField("threat_mesh_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetMtlsChoice().(type) { - case *ProxyTypeHttpsAutoCerts_NoMtls: - if fv, exists := v.FldValidators["mtls_choice.no_mtls"]; exists { - val := m.GetMtlsChoice().(*ProxyTypeHttpsAutoCerts_NoMtls).NoMtls + switch m.GetThreatMeshChoice().(type) { + case *GlobalSpecType_DisableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.disable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*GlobalSpecType_DisableThreatMesh).DisableThreatMesh vOpts := append(opts, - db.WithValidateField("mtls_choice"), - db.WithValidateField("no_mtls"), + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("disable_threat_mesh"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttpsAutoCerts_UseMtls: - if fv, exists := v.FldValidators["mtls_choice.use_mtls"]; exists { - val := m.GetMtlsChoice().(*ProxyTypeHttpsAutoCerts_UseMtls).UseMtls + case *GlobalSpecType_EnableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.enable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*GlobalSpecType_EnableThreatMesh).EnableThreatMesh vOpts := append(opts, - db.WithValidateField("mtls_choice"), - db.WithValidateField("use_mtls"), + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("enable_threat_mesh"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21889,34 +11155,34 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } - if fv, exists := v.FldValidators["path_normalize_choice"]; exists { - val := m.GetPathNormalizeChoice() + if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { + val := m.GetTrustClientIpHeadersChoice() vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), + db.WithValidateField("trust_client_ip_headers_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetPathNormalizeChoice().(type) { - case *ProxyTypeHttpsAutoCerts_EnablePathNormalize: - if fv, exists := v.FldValidators["path_normalize_choice.enable_path_normalize"]; exists { - val := m.GetPathNormalizeChoice().(*ProxyTypeHttpsAutoCerts_EnablePathNormalize).EnablePathNormalize + switch m.GetTrustClientIpHeadersChoice().(type) { + case *GlobalSpecType_DisableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - db.WithValidateField("enable_path_normalize"), + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("disable_trust_client_ip_headers"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttpsAutoCerts_DisablePathNormalize: - if fv, exists := v.FldValidators["path_normalize_choice.disable_path_normalize"]; exists { - val := m.GetPathNormalizeChoice().(*ProxyTypeHttpsAutoCerts_DisablePathNormalize).DisablePathNormalize + case *GlobalSpecType_EnableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*GlobalSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders vOpts := append(opts, - db.WithValidateField("path_normalize_choice"), - db.WithValidateField("disable_path_normalize"), + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("enable_trust_client_ip_headers"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21925,24 +11191,42 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } - switch m.GetPortChoice().(type) { - case *ProxyTypeHttpsAutoCerts_Port: - if fv, exists := v.FldValidators["port_choice.port"]; exists { - val := m.GetPortChoice().(*ProxyTypeHttpsAutoCerts_Port).Port + if fv, exists := v.FldValidators["trusted_clients"]; exists { + vOpts := append(opts, db.WithValidateField("trusted_clients")) + if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["user_id_choice"]; exists { + val := m.GetUserIdChoice() + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetUserIdChoice().(type) { + case *GlobalSpecType_UserIdentification: + if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { + val := m.GetUserIdChoice().(*GlobalSpecType_UserIdentification).UserIdentification vOpts := append(opts, - db.WithValidateField("port_choice"), - db.WithValidateField("port"), + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_identification"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttpsAutoCerts_PortRanges: - if fv, exists := v.FldValidators["port_choice.port_ranges"]; exists { - val := m.GetPortChoice().(*ProxyTypeHttpsAutoCerts_PortRanges).PortRanges + case *GlobalSpecType_UserIdClientIp: + if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { + val := m.GetUserIdChoice().(*GlobalSpecType_UserIdClientIp).UserIdClientIp vOpts := append(opts, - db.WithValidateField("port_choice"), - db.WithValidateField("port_ranges"), + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_id_client_ip"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21951,46 +11235,43 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } - switch m.GetServerHeaderChoice().(type) { - case *ProxyTypeHttpsAutoCerts_DefaultHeader: - if fv, exists := v.FldValidators["server_header_choice.default_header"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_DefaultHeader).DefaultHeader - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("default_header"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["view_internal"]; exists { + + vOpts := append(opts, db.WithValidateField("view_internal")) + if err := fv(ctx, m.GetViewInternal(), vOpts...); err != nil { + return err } - case *ProxyTypeHttpsAutoCerts_ServerName: - if fv, exists := v.FldValidators["server_header_choice.server_name"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_ServerName).ServerName - vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("server_name"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + + } + + if fv, exists := v.FldValidators["waf_choice"]; exists { + val := m.GetWafChoice() + vOpts := append(opts, + db.WithValidateField("waf_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - case *ProxyTypeHttpsAutoCerts_AppendServerName: - if fv, exists := v.FldValidators["server_header_choice.append_server_name"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_AppendServerName).AppendServerName + } + + switch m.GetWafChoice().(type) { + case *GlobalSpecType_DisableWaf: + if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { + val := m.GetWafChoice().(*GlobalSpecType_DisableWaf).DisableWaf vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("append_server_name"), + db.WithValidateField("waf_choice"), + db.WithValidateField("disable_waf"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ProxyTypeHttpsAutoCerts_PassThrough: - if fv, exists := v.FldValidators["server_header_choice.pass_through"]; exists { - val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_PassThrough).PassThrough + case *GlobalSpecType_AppFirewall: + if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { + val := m.GetWafChoice().(*GlobalSpecType_AppFirewall).AppFirewall vOpts := append(opts, - db.WithValidateField("server_header_choice"), - db.WithValidateField("pass_through"), + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -21999,10 +11280,9 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } - if fv, exists := v.FldValidators["tls_config"]; exists { - - vOpts := append(opts, db.WithValidateField("tls_config")) - if err := fv(ctx, m.GetTlsConfig(), vOpts...); err != nil { + if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { + vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) + if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { return err } @@ -22012,8 +11292,8 @@ func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm inter } // Well-known symbol for default validator implementation -var DefaultProxyTypeHttpsAutoCertsValidator = func() *ValidateProxyTypeHttpsAutoCerts { - v := &ValidateProxyTypeHttpsAutoCerts{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -22023,304 +11303,381 @@ var DefaultProxyTypeHttpsAutoCertsValidator = func() *ValidateProxyTypeHttpsAuto vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhMtlsChoice := v.MtlsChoiceValidationRuleHandler - rulesMtlsChoice := map[string]string{ + vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler + rulesAdvertiseChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.advertise_choice: %s", err) + panic(errMsg) + } + v.FldValidators["advertise_choice"] = vFn + + vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler + rulesApiDefinitionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.api_definition_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_definition_choice"] = vFn + + vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler + rulesApiDiscoveryChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.api_discovery_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_discovery_choice"] = vFn + + vrhChallengeType := v.ChallengeTypeValidationRuleHandler + rulesChallengeType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhChallengeType(rulesChallengeType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.challenge_type: %s", err) + panic(errMsg) + } + v.FldValidators["challenge_type"] = vFn + + vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler + rulesHashPolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.hash_policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["hash_policy_choice"] = vFn + + vrhHostRewriteParamsHostRewrite := v.HostRewriteParamsHostRewriteValidationRuleHandler + rulesHostRewriteParamsHostRewrite := map[string]string{ + "ves.io.schema.rules.string.hostname": "true", + } + vFnMap["host_rewrite_params.host_rewrite"], err = vrhHostRewriteParamsHostRewrite(rulesHostRewriteParamsHostRewrite) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field GlobalSpecType.host_rewrite_params_host_rewrite: %s", err) + panic(errMsg) + } + + v.FldValidators["host_rewrite_params.host_rewrite"] = vFnMap["host_rewrite_params.host_rewrite"] + + vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler + rulesL7DdosAutoMitigationAction := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhMtlsChoice(rulesMtlsChoice) + vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.mtls_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.l7_ddos_auto_mitigation_action: %s", err) panic(errMsg) } - v.FldValidators["mtls_choice"] = vFn + v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn - vrhPathNormalizeChoice := v.PathNormalizeChoiceValidationRuleHandler - rulesPathNormalizeChoice := map[string]string{ + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhPathNormalizeChoice(rulesPathNormalizeChoice) + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.path_normalize_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.loadbalancer_type: %s", err) panic(errMsg) } - v.FldValidators["path_normalize_choice"] = vFn + v.FldValidators["loadbalancer_type"] = vFn - vrhPortChoicePort := v.PortChoicePortValidationRuleHandler - rulesPortChoicePort := map[string]string{ - "ves.io.schema.rules.uint32.lte": "65535", + vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler + rulesMaliciousUserDetectionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFnMap["port_choice.port"], err = vrhPortChoicePort(rulesPortChoicePort) + vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.port_choice_port: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.malicious_user_detection_choice: %s", err) panic(errMsg) } - vrhPortChoicePortRanges := v.PortChoicePortRangesValidationRuleHandler - rulesPortChoicePortRanges := map[string]string{ - "ves.io.schema.rules.string.max_len": "512", - "ves.io.schema.rules.string.max_ports": "64", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.unique_port_range_list": "true", + v.FldValidators["malicious_user_detection_choice"] = vFn + + vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler + rulesRateLimitChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFnMap["port_choice.port_ranges"], err = vrhPortChoicePortRanges(rulesPortChoicePortRanges) + vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.port_choice_port_ranges: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.rate_limit_choice: %s", err) panic(errMsg) } + v.FldValidators["rate_limit_choice"] = vFn - v.FldValidators["port_choice.port"] = vFnMap["port_choice.port"] - v.FldValidators["port_choice.port_ranges"] = vFnMap["port_choice.port_ranges"] - - vrhServerHeaderChoiceServerName := v.ServerHeaderChoiceServerNameValidationRuleHandler - rulesServerHeaderChoiceServerName := map[string]string{ - "ves.io.schema.rules.string.max_len": "8096", + vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler + rulesServicePolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFnMap["server_header_choice.server_name"], err = vrhServerHeaderChoiceServerName(rulesServerHeaderChoiceServerName) + vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_server_name: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.service_policy_choice: %s", err) panic(errMsg) } - vrhServerHeaderChoiceAppendServerName := v.ServerHeaderChoiceAppendServerNameValidationRuleHandler - rulesServerHeaderChoiceAppendServerName := map[string]string{ - "ves.io.schema.rules.string.max_len": "8096", + v.FldValidators["service_policy_choice"] = vFn + + vrhThreatMeshChoice := v.ThreatMeshChoiceValidationRuleHandler + rulesThreatMeshChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFnMap["server_header_choice.append_server_name"], err = vrhServerHeaderChoiceAppendServerName(rulesServerHeaderChoiceAppendServerName) + vFn, err = vrhThreatMeshChoice(rulesThreatMeshChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_append_server_name: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.threat_mesh_choice: %s", err) panic(errMsg) } + v.FldValidators["threat_mesh_choice"] = vFn - v.FldValidators["server_header_choice.server_name"] = vFnMap["server_header_choice.server_name"] - v.FldValidators["server_header_choice.append_server_name"] = vFnMap["server_header_choice.append_server_name"] - - vrhConnectionIdleTimeout := v.ConnectionIdleTimeoutValidationRuleHandler - rulesConnectionIdleTimeout := map[string]string{ - "ves.io.schema.rules.uint32.lte": "600000", + vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler + rulesTrustClientIpHeadersChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhConnectionIdleTimeout(rulesConnectionIdleTimeout) + vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.connection_idle_timeout: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.trust_client_ip_headers_choice: %s", err) panic(errMsg) } - v.FldValidators["connection_idle_timeout"] = vFn - - v.FldValidators["mtls_choice.use_mtls"] = ves_io_schema_views.DownstreamTlsValidationContextValidator().Validate - - v.FldValidators["tls_config"] = ves_io_schema_views.TlsConfigValidator().Validate - - v.FldValidators["header_transformation_type"] = ves_io_schema.HeaderTransformationTypeValidator().Validate - - v.FldValidators["http_protocol_options"] = ves_io_schema_virtual_host.HttpProtocolOptionsValidator().Validate - - return v -}() - -func ProxyTypeHttpsAutoCertsValidator() db.Validator { - return DefaultProxyTypeHttpsAutoCertsValidator -} - -// augmented methods on protoc/std generated struct - -func (m *Query) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *Query) ToYAML() (string, error) { - return codec.ToYAML(m) -} + v.FldValidators["trust_client_ip_headers_choice"] = vFn -func (m *Query) DeepCopy() *Query { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil + vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler + rulesUserIdChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - c := &Query{} - err = c.Unmarshal(ser) + vFn, err = vrhUserIdChoice(rulesUserIdChoice) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.user_id_choice: %s", err) + panic(errMsg) } - return c -} + v.FldValidators["user_id_choice"] = vFn -func (m *Query) DeepCopyProto() proto.Message { - if m == nil { - return nil + vrhWafChoice := v.WafChoiceValidationRuleHandler + rulesWafChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - return m.DeepCopy() -} - -func (m *Query) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return QueryValidator().Validate(ctx, m, opts...) -} - -type ValidateQuery struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateQuery) ValueTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vFn, err = vrhWafChoice(rulesWafChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for value_type") + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.waf_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["waf_choice"] = vFn -func (v *ValidateQuery) ValueTypeExactValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ExactValue, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for exact_value") + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.vh_domain": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - return oValidatorFn_ExactValue, nil -} -func (v *ValidateQuery) ValueTypeRegexValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_RegexValue, err := db.NewStringValidationRuleHandler(rules) + vFn, err = vrhDomains(rulesDomains) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for regex_value") + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.domains: %s", err) + panic(errMsg) } - return oValidatorFn_RegexValue, nil -} + v.FldValidators["domains"] = vFn -func (v *ValidateQuery) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*Query) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *Query got type %s", t) - } + vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler + rulesDefaultRoutePools := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true", } - if m == nil { - return nil + vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.default_route_pools: %s", err) + panic(errMsg) } + v.FldValidators["default_route_pools"] = vFn - if fv, exists := v.FldValidators["name"]; exists { - - vOpts := append(opts, db.WithValidateField("name")) - if err := fv(ctx, m.GetName(), vOpts...); err != nil { - return err - } - + vrhRoutes := v.RoutesValidationRuleHandler + rulesRoutes := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique": "true", } - - if fv, exists := v.FldValidators["value_type"]; exists { - val := m.GetValueType() - vOpts := append(opts, - db.WithValidateField("value_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vFn, err = vrhRoutes(rulesRoutes) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.routes: %s", err) + panic(errMsg) } + v.FldValidators["routes"] = vFn - switch m.GetValueType().(type) { - case *Query_ExactValue: - if fv, exists := v.FldValidators["value_type.exact_value"]; exists { - val := m.GetValueType().(*Query_ExactValue).ExactValue - vOpts := append(opts, - db.WithValidateField("value_type"), - db.WithValidateField("exact_value"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *Query_RegexValue: - if fv, exists := v.FldValidators["value_type.regex_value"]; exists { - val := m.GetValueType().(*Query_RegexValue).RegexValue - vOpts := append(opts, - db.WithValidateField("value_type"), - db.WithValidateField("regex_value"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *Query_CheckPresence: - if fv, exists := v.FldValidators["value_type.check_presence"]; exists { - val := m.GetValueType().(*Query_CheckPresence).CheckPresence - vOpts := append(opts, - db.WithValidateField("value_type"), - db.WithValidateField("check_presence"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - + vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler + rulesWafExclusionRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.waf_exclusion_rules: %s", err) + panic(errMsg) } + v.FldValidators["waf_exclusion_rules"] = vFn - return nil -} + vrhBlockedClients := v.BlockedClientsValidationRuleHandler + rulesBlockedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhBlockedClients(rulesBlockedClients) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.blocked_clients: %s", err) + panic(errMsg) + } + v.FldValidators["blocked_clients"] = vFn -// Well-known symbol for default validator implementation -var DefaultQueryValidator = func() *ValidateQuery { - v := &ValidateQuery{FldValidators: map[string]db.ValidatorFunc{}} + vrhTrustedClients := v.TrustedClientsValidationRuleHandler + rulesTrustedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhTrustedClients(rulesTrustedClients) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.trusted_clients: %s", err) + panic(errMsg) + } + v.FldValidators["trusted_clients"] = vFn - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler + rulesDdosMitigationRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.ddos_mitigation_rules: %s", err) + panic(errMsg) + } + v.FldValidators["ddos_mitigation_rules"] = vFn - vrhValueType := v.ValueTypeValidationRuleHandler - rulesValueType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler + rulesDataGuardRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - vFn, err = vrhValueType(rulesValueType) + vFn, err = vrhDataGuardRules(rulesDataGuardRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for Query.value_type: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.data_guard_rules: %s", err) panic(errMsg) } - v.FldValidators["value_type"] = vFn + v.FldValidators["data_guard_rules"] = vFn - vrhValueTypeExactValue := v.ValueTypeExactValueValidationRuleHandler - rulesValueTypeExactValue := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - "ves.io.schema.rules.string.min_len": "1", + vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler + rulesGraphqlRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - vFnMap["value_type.exact_value"], err = vrhValueTypeExactValue(rulesValueTypeExactValue) + vFn, err = vrhGraphqlRules(rulesGraphqlRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field Query.value_type_exact_value: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.graphql_rules: %s", err) panic(errMsg) } - vrhValueTypeRegexValue := v.ValueTypeRegexValueValidationRuleHandler - rulesValueTypeRegexValue := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.regex": "true", + v.FldValidators["graphql_rules"] = vFn + + vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler + rulesProtectedCookies := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - vFnMap["value_type.regex_value"], err = vrhValueTypeRegexValue(rulesValueTypeRegexValue) + vFn, err = vrhProtectedCookies(rulesProtectedCookies) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field Query.value_type_regex_value: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.protected_cookies: %s", err) panic(errMsg) } + v.FldValidators["protected_cookies"] = vFn - v.FldValidators["value_type.exact_value"] = vFnMap["value_type.exact_value"] - v.FldValidators["value_type.regex_value"] = vFnMap["value_type.regex_value"] + v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate + v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate + + v.FldValidators["api_definition_choice.api_definitions"] = ves_io_schema_views_common_waf.ApiDefinitionListValidator().Validate + v.FldValidators["api_definition_choice.api_specification"] = ves_io_schema_views_common_waf.APISpecificationSettingsValidator().Validate + v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["api_discovery_choice.enable_api_discovery"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate + + v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate + v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate + + v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + v.FldValidators["challenge_type.policy_based_challenge"] = ves_io_schema_views_common_waf.PolicyBasedChallengeValidator().Validate + v.FldValidators["challenge_type.enable_challenge"] = ves_io_schema_views_common_waf.EnableChallengeValidator().Validate + + v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate + + v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate + v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate + + v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = ves_io_schema_views_common_waf.IPThreatCategoryListTypeValidator().Validate + + v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + + v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate + + v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate + + v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate + v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate + + v.FldValidators["rate_limit_choice.rate_limit"] = ves_io_schema_views_common_waf.RateLimitConfigTypeValidator().Validate + v.FldValidators["rate_limit_choice.api_rate_limit"] = ves_io_schema_views_common_waf.APIRateLimitValidator().Validate + + v.FldValidators["service_policy_choice.active_service_policies"] = ves_io_schema_views_common_waf.ServicePolicyListValidator().Validate + + v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate + + v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate + + v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate + + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + + v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["api_protection_rules"] = ves_io_schema_views_common_waf.APIProtectionRulesValidator().Validate + + v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate + + v.FldValidators["jwt_validation"] = ves_io_schema_views_common_waf.JWTValidationValidator().Validate + + v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate + + v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate return v }() -func QueryValidator() db.Validator { - return DefaultQueryValidator +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator } // augmented methods on protoc/std generated struct -func (m *RateLimitConfigType) ToJSON() (string, error) { +func (m *HashPolicyListType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *RateLimitConfigType) ToYAML() (string, error) { +func (m *HashPolicyListType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *RateLimitConfigType) DeepCopy() *RateLimitConfigType { +func (m *HashPolicyListType) DeepCopy() *HashPolicyListType { if m == nil { return nil } @@ -22328,7 +11685,7 @@ func (m *RateLimitConfigType) DeepCopy() *RateLimitConfigType { if err != nil { return nil } - c := &RateLimitConfigType{} + c := &HashPolicyListType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -22336,220 +11693,86 @@ func (m *RateLimitConfigType) DeepCopy() *RateLimitConfigType { return c } -func (m *RateLimitConfigType) DeepCopyProto() proto.Message { +func (m *HashPolicyListType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *RateLimitConfigType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RateLimitConfigTypeValidator().Validate(ctx, m, opts...) +func (m *HashPolicyListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return HashPolicyListTypeValidator().Validate(ctx, m, opts...) } -func (m *RateLimitConfigType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetIpAllowedListChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetIpAllowedListChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetPolicyChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetPolicyChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - +type ValidateHashPolicyListType struct { + FldValidators map[string]db.ValidatorFunc } -// GetDRefInfo for the field's type -func (m *RateLimitConfigType) GetIpAllowedListChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetIpAllowedListChoice() == nil { - return nil, nil - } - switch m.GetIpAllowedListChoice().(type) { - case *RateLimitConfigType_NoIpAllowedList: - - return nil, nil - - case *RateLimitConfigType_IpAllowedList: - - return nil, nil - - case *RateLimitConfigType_CustomIpAllowedList: +func (v *ValidateHashPolicyListType) HashPolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - drInfos, err := m.GetCustomIpAllowedList().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetCustomIpAllowedList().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "custom_ip_allowed_list." + dri.DRField + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for hash_policy") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_route.HashPolicyType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_route.HashPolicyTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - return drInfos, err - - default: - return nil, nil + return nil } - -} - -// GetDRefInfo for the field's type -func (m *RateLimitConfigType) GetPolicyChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetPolicyChoice() == nil { - return nil, nil + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for hash_policy") } - switch m.GetPolicyChoice().(type) { - case *RateLimitConfigType_NoPolicies: - return nil, nil - - case *RateLimitConfigType_Policies: - - drInfos, err := m.GetPolicies().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetPolicies().GetDRefInfo() FAILED") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_route.HashPolicyType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_route.HashPolicyType, got %T", val) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "policies." + dri.DRField + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - return drInfos, err - - default: - return nil, nil - } - -} - -type ValidateRateLimitConfigType struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateRateLimitConfigType) IpAllowedListChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ip_allowed_list_choice") + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated hash_policy") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items hash_policy") + } + return nil } - return validatorFn, nil -} -func (v *ValidateRateLimitConfigType) PolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for policy_choice") - } return validatorFn, nil } -func (v *ValidateRateLimitConfigType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RateLimitConfigType) +func (v *ValidateHashPolicyListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*HashPolicyListType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *RateLimitConfigType got type %s", t) + return fmt.Errorf("Expected type *HashPolicyListType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["ip_allowed_list_choice"]; exists { - val := m.GetIpAllowedListChoice() - vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetIpAllowedListChoice().(type) { - case *RateLimitConfigType_NoIpAllowedList: - if fv, exists := v.FldValidators["ip_allowed_list_choice.no_ip_allowed_list"]; exists { - val := m.GetIpAllowedListChoice().(*RateLimitConfigType_NoIpAllowedList).NoIpAllowedList - vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("no_ip_allowed_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *RateLimitConfigType_IpAllowedList: - if fv, exists := v.FldValidators["ip_allowed_list_choice.ip_allowed_list"]; exists { - val := m.GetIpAllowedListChoice().(*RateLimitConfigType_IpAllowedList).IpAllowedList - vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("ip_allowed_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *RateLimitConfigType_CustomIpAllowedList: - if fv, exists := v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"]; exists { - val := m.GetIpAllowedListChoice().(*RateLimitConfigType_CustomIpAllowedList).CustomIpAllowedList - vOpts := append(opts, - db.WithValidateField("ip_allowed_list_choice"), - db.WithValidateField("custom_ip_allowed_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["policy_choice"]; exists { - val := m.GetPolicyChoice() - vOpts := append(opts, - db.WithValidateField("policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetPolicyChoice().(type) { - case *RateLimitConfigType_NoPolicies: - if fv, exists := v.FldValidators["policy_choice.no_policies"]; exists { - val := m.GetPolicyChoice().(*RateLimitConfigType_NoPolicies).NoPolicies - vOpts := append(opts, - db.WithValidateField("policy_choice"), - db.WithValidateField("no_policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *RateLimitConfigType_Policies: - if fv, exists := v.FldValidators["policy_choice.policies"]; exists { - val := m.GetPolicyChoice().(*RateLimitConfigType_Policies).Policies - vOpts := append(opts, - db.WithValidateField("policy_choice"), - db.WithValidateField("policies"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["rate_limiter"]; exists { - - vOpts := append(opts, db.WithValidateField("rate_limiter")) - if err := fv(ctx, m.GetRateLimiter(), vOpts...); err != nil { + if fv, exists := v.FldValidators["hash_policy"]; exists { + vOpts := append(opts, db.WithValidateField("hash_policy")) + if err := fv(ctx, m.GetHashPolicy(), vOpts...); err != nil { return err } @@ -22559,8 +11782,8 @@ func (v *ValidateRateLimitConfigType) Validate(ctx context.Context, pm interface } // Well-known symbol for default validator implementation -var DefaultRateLimitConfigTypeValidator = func() *ValidateRateLimitConfigType { - v := &ValidateRateLimitConfigType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultHashPolicyListTypeValidator = func() *ValidateHashPolicyListType { + v := &ValidateHashPolicyListType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -22570,85 +11793,37 @@ var DefaultRateLimitConfigTypeValidator = func() *ValidateRateLimitConfigType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhIpAllowedListChoice := v.IpAllowedListChoiceValidationRuleHandler - rulesIpAllowedListChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhIpAllowedListChoice(rulesIpAllowedListChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RateLimitConfigType.ip_allowed_list_choice: %s", err) - panic(errMsg) - } - v.FldValidators["ip_allowed_list_choice"] = vFn - - vrhPolicyChoice := v.PolicyChoiceValidationRuleHandler - rulesPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhHashPolicy := v.HashPolicyValidationRuleHandler + rulesHashPolicy := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhPolicyChoice(rulesPolicyChoice) + vFn, err = vrhHashPolicy(rulesHashPolicy) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RateLimitConfigType.policy_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for HashPolicyListType.hash_policy: %s", err) panic(errMsg) } - v.FldValidators["policy_choice"] = vFn - - v.FldValidators["ip_allowed_list_choice.ip_allowed_list"] = ves_io_schema_views.PrefixStringListTypeValidator().Validate - v.FldValidators["ip_allowed_list_choice.custom_ip_allowed_list"] = CustomIpAllowedListValidator().Validate - - v.FldValidators["policy_choice.policies"] = ves_io_schema_views_rate_limiter_policy.PolicyListValidator().Validate - - v.FldValidators["rate_limiter"] = ves_io_schema_rate_limiter.RateLimitValueValidator().Validate + v.FldValidators["hash_policy"] = vFn return v }() -func RateLimitConfigTypeValidator() db.Validator { - return DefaultRateLimitConfigTypeValidator +func HashPolicyListTypeValidator() db.Validator { + return DefaultHashPolicyListTypeValidator } // augmented methods on protoc/std generated struct -func (m *ReplaceSpecType) ToJSON() (string, error) { +func (m *MirrorPolicyType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ReplaceSpecType) ToYAML() (string, error) { +func (m *MirrorPolicyType) ToYAML() (string, error) { return codec.ToYAML(m) } -// Redact squashes sensitive info in m (in-place) -func (m *ReplaceSpecType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } - - if err := m.GetHttps().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.https") - } - - for idx, e := range m.GetRoutes() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.routes idx %v", idx) - } - } - - if err := m.GetMoreOption().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.more_option") - } - - if err := m.GetDefaultPool().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.default_pool") - } - - if err := m.GetJwtValidation().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting ReplaceSpecType.jwt_validation") - } - - return nil -} - -func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { +func (m *MirrorPolicyType) DeepCopy() *MirrorPolicyType { if m == nil { return nil } @@ -22656,7 +11831,7 @@ func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { if err != nil { return nil } - c := &ReplaceSpecType{} + c := &MirrorPolicyType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -22664,1401 +11839,1415 @@ func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { return c } -func (m *ReplaceSpecType) DeepCopyProto() proto.Message { +func (m *MirrorPolicyType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +func (m *MirrorPolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return MirrorPolicyTypeValidator().Validate(ctx, m, opts...) } -func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { +func (m *MirrorPolicyType) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { return nil, nil } - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } + return m.GetOriginPoolDRefInfo() - if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } +} - if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } +func (m *MirrorPolicyType) GetOriginPoolDRefInfo() ([]db.DRefInfo, error) { - if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + vref := m.GetOriginPool() + if vref == nil { + return nil, nil } - - if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("origin_pool.Object") + dri := db.DRefInfo{ + RefdType: "origin_pool.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "origin_pool", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil - if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } +} - if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) +// GetOriginPoolDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *MirrorPolicyType) GetOriginPoolDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "origin_pool.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: origin_pool") } - if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + vref := m.GetOriginPool() + if vref == nil { + return nil, nil } - - if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + ref := &ves_io_schema.ObjectRefType{ + Kind: "origin_pool.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, } - - if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") } - - if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + if refdEnt != nil { + entries = append(entries, refdEnt) } - if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } + return entries, nil +} - if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } +type ValidateMirrorPolicyType struct { + FldValidators map[string]db.ValidatorFunc +} - if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } +func (v *ValidateMirrorPolicyType) OriginPoolValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for origin_pool") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } - return drInfos, nil + if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + return nil + } + + return validatorFn, nil } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetAdvertiseChoice() == nil { - return nil, nil - } - switch m.GetAdvertiseChoice().(type) { - case *ReplaceSpecType_AdvertiseOnPublic: +func (v *ValidateMirrorPolicyType) PercentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for percent") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_on_public." + dri.DRField + + if err := ves_io_schema.FractionalPercentValidator().Validate(ctx, val, opts...); err != nil { + return err } - return drInfos, err - case *ReplaceSpecType_AdvertiseCustom: + return nil + } - drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advertise_custom." + dri.DRField + return validatorFn, nil +} + +func (v *ValidateMirrorPolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*MirrorPolicyType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *MirrorPolicyType got type %s", t) } - return drInfos, err + } + if m == nil { + return nil + } - case *ReplaceSpecType_DoNotAdvertise: + if fv, exists := v.FldValidators["origin_pool"]; exists { - return nil, nil + vOpts := append(opts, db.WithValidateField("origin_pool")) + if err := fv(ctx, m.GetOriginPool(), vOpts...); err != nil { + return err + } - case *ReplaceSpecType_AdvertiseOnPublicDefaultVip: + } - return nil, nil + if fv, exists := v.FldValidators["percent"]; exists { + + vOpts := append(opts, db.WithValidateField("percent")) + if err := fv(ctx, m.GetPercent(), vOpts...); err != nil { + return err + } - default: - return nil, nil } + return nil } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiDefinitionChoice() == nil { - return nil, nil - } - switch m.GetApiDefinitionChoice().(type) { - case *ReplaceSpecType_ApiDefinitions: - - drInfos, err := m.GetApiDefinitions().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_definitions." + dri.DRField - } - return drInfos, err +// Well-known symbol for default validator implementation +var DefaultMirrorPolicyTypeValidator = func() *ValidateMirrorPolicyType { + v := &ValidateMirrorPolicyType{FldValidators: map[string]db.ValidatorFunc{}} - case *ReplaceSpecType_ApiSpecification: + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap - drInfos, err := m.GetApiSpecification().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_specification." + dri.DRField - } - return drInfos, err + vrhOriginPool := v.OriginPoolValidationRuleHandler + rulesOriginPool := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhOriginPool(rulesOriginPool) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for MirrorPolicyType.origin_pool: %s", err) + panic(errMsg) + } + v.FldValidators["origin_pool"] = vFn - case *ReplaceSpecType_DisableApiDefinition: + vrhPercent := v.PercentValidationRuleHandler + rulesPercent := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhPercent(rulesPercent) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for MirrorPolicyType.percent: %s", err) + panic(errMsg) + } + v.FldValidators["percent"] = vFn - return nil, nil + return v +}() - case *ReplaceSpecType_ApiDefinition: +func MirrorPolicyTypeValidator() db.Validator { + return DefaultMirrorPolicyTypeValidator +} - vref := m.GetApiDefinition() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("api_definition.Object") - dri := db.DRefInfo{ - RefdType: "api_definition.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "api_definition", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil +// augmented methods on protoc/std generated struct - default: - return nil, nil - } +func (m *MobileSDKConfigType) ToJSON() (string, error) { + return codec.ToJSON(m) +} +func (m *MobileSDKConfigType) ToYAML() (string, error) { + return codec.ToYAML(m) } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { - if m.GetApiProtectionRules() == nil { - return nil, nil +func (m *MobileSDKConfigType) DeepCopy() *MobileSDKConfigType { + if m == nil { + return nil } - - drInfos, err := m.GetApiProtectionRules().GetDRefInfo() + ser, err := m.Marshal() if err != nil { - return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") + return nil } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_protection_rules." + dri.DRField + c := &MobileSDKConfigType{} + err = c.Unmarshal(ser) + if err != nil { + return nil } - return drInfos, err - + return c } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetBotDefenseChoice() == nil { - return nil, nil +func (m *MobileSDKConfigType) DeepCopyProto() proto.Message { + if m == nil { + return nil } - switch m.GetBotDefenseChoice().(type) { - case *ReplaceSpecType_DisableBotDefense: + return m.DeepCopy() +} - return nil, nil +func (m *MobileSDKConfigType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return MobileSDKConfigTypeValidator().Validate(ctx, m, opts...) +} - case *ReplaceSpecType_BotDefense: +type ValidateMobileSDKConfigType struct { + FldValidators map[string]db.ValidatorFunc +} - return nil, nil +func (v *ValidateMobileSDKConfigType) ReloadHeaderNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - case *ReplaceSpecType_BotDefenseAdvanced: + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for reload_header_name") + } - drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") + return validatorFn, nil +} + +func (v *ValidateMobileSDKConfigType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*MobileSDKConfigType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *MobileSDKConfigType got type %s", t) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "bot_defense_advanced." + dri.DRField + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["mobile_identifier"]; exists { + + vOpts := append(opts, db.WithValidateField("mobile_identifier")) + if err := fv(ctx, m.GetMobileIdentifier(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } -} + if fv, exists := v.FldValidators["reload_header_name"]; exists { + + vOpts := append(opts, db.WithValidateField("reload_header_name")) + if err := fv(ctx, m.GetReloadHeaderName(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetChallengeType() == nil { - return nil, nil } - switch m.GetChallengeType().(type) { - case *ReplaceSpecType_JsChallenge: - - return nil, nil - case *ReplaceSpecType_CaptchaChallenge: + return nil +} - return nil, nil +// Well-known symbol for default validator implementation +var DefaultMobileSDKConfigTypeValidator = func() *ValidateMobileSDKConfigType { + v := &ValidateMobileSDKConfigType{FldValidators: map[string]db.ValidatorFunc{}} - case *ReplaceSpecType_NoChallenge: + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap - return nil, nil + vrhReloadHeaderName := v.ReloadHeaderNameValidationRuleHandler + rulesReloadHeaderName := map[string]string{ + "ves.io.schema.rules.string.http_header_field": "true", + "ves.io.schema.rules.string.max_bytes": "256", + } + vFn, err = vrhReloadHeaderName(rulesReloadHeaderName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for MobileSDKConfigType.reload_header_name: %s", err) + panic(errMsg) + } + v.FldValidators["reload_header_name"] = vFn - case *ReplaceSpecType_PolicyBasedChallenge: + v.FldValidators["mobile_identifier"] = MobileTrafficIdentifierTypeValidator().Validate - drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "policy_based_challenge." + dri.DRField - } - return drInfos, err + return v +}() - case *ReplaceSpecType_EnableChallenge: +func MobileSDKConfigTypeValidator() db.Validator { + return DefaultMobileSDKConfigTypeValidator +} - drInfos, err := m.GetEnableChallenge().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "enable_challenge." + dri.DRField - } - return drInfos, err +// augmented methods on protoc/std generated struct - default: - return nil, nil - } +func (m *MobileTrafficIdentifierType) ToJSON() (string, error) { + return codec.ToJSON(m) +} +func (m *MobileTrafficIdentifierType) ToYAML() (string, error) { + return codec.ToYAML(m) } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { - if m.GetDefaultRoutePools() == nil { - return nil, nil +func (m *MobileTrafficIdentifierType) DeepCopy() *MobileTrafficIdentifierType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &MobileTrafficIdentifierType{} + err = c.Unmarshal(ser) + if err != nil { + return nil } + return c +} - var drInfos []db.DRefInfo - for idx, e := range m.GetDefaultRoutePools() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) +func (m *MobileTrafficIdentifierType) DeepCopyProto() proto.Message { + if m == nil { + return nil } - return drInfos, nil + return m.DeepCopy() +} +func (m *MobileTrafficIdentifierType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return MobileTrafficIdentifierTypeValidator().Validate(ctx, m, opts...) } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { - if m.GetLoadbalancerType() == nil { - return nil, nil - } - switch m.GetLoadbalancerType().(type) { - case *ReplaceSpecType_Http: +type ValidateMobileTrafficIdentifierType struct { + FldValidators map[string]db.ValidatorFunc +} - return nil, nil +func (v *ValidateMobileTrafficIdentifierType) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - case *ReplaceSpecType_Https: + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.HeaderMatcherTypeBasic, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.HeaderMatcherTypeBasicValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") + } - drInfos, err := m.GetHttps().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.HeaderMatcherTypeBasic) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.HeaderMatcherTypeBasic, got %T", val) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https." + dri.DRField + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - return drInfos, err + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated headers") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items headers") + } + return nil + } - case *ReplaceSpecType_HttpsAutoCert: + return validatorFn, nil +} - drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") +func (v *ValidateMobileTrafficIdentifierType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*MobileTrafficIdentifierType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *MobileTrafficIdentifierType got type %s", t) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "https_auto_cert." + dri.DRField + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["headers"]; exists { + vOpts := append(opts, db.WithValidateField("headers")) + if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } + return nil } -func (m *ReplaceSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { +// Well-known symbol for default validator implementation +var DefaultMobileTrafficIdentifierTypeValidator = func() *ValidateMobileTrafficIdentifierType { + v := &ValidateMobileTrafficIdentifierType{FldValidators: map[string]db.ValidatorFunc{}} - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhHeaders := v.HeadersValidationRuleHandler + rulesHeaders := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("malicious_user_mitigation.Object") - dri := db.DRefInfo{ - RefdType: "malicious_user_mitigation.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "malicious_user_mitigation", - Ref: vdRef, + vFn, err = vrhHeaders(rulesHeaders) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for MobileTrafficIdentifierType.headers: %s", err) + panic(errMsg) } - return []db.DRefInfo{dri}, nil + v.FldValidators["headers"] = vFn + + return v +}() +func MobileTrafficIdentifierTypeValidator() db.Validator { + return DefaultMobileTrafficIdentifierTypeValidator } -// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *ReplaceSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") - } +// augmented methods on protoc/std generated struct - vref := m.GetMaliciousUserMitigation() - if vref == nil { - return nil, nil +func (m *OriginServerSubsetRuleListType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *OriginServerSubsetRuleListType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *OriginServerSubsetRuleListType) DeepCopy() *OriginServerSubsetRuleListType { + if m == nil { + return nil } - ref := &ves_io_schema.ObjectRefType{ - Kind: "malicious_user_mitigation.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + ser, err := m.Marshal() + if err != nil { + return nil } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + c := &OriginServerSubsetRuleListType{} + err = c.Unmarshal(ser) if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + return nil } - if refdEnt != nil { - entries = append(entries, refdEnt) + return c +} + +func (m *OriginServerSubsetRuleListType) DeepCopyProto() proto.Message { + if m == nil { + return nil } + return m.DeepCopy() +} - return entries, nil +func (m *OriginServerSubsetRuleListType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OriginServerSubsetRuleListTypeValidator().Validate(ctx, m, opts...) } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { - if m.GetMoreOption() == nil { +func (m *OriginServerSubsetRuleListType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { return nil, nil } - drInfos, err := m.GetMoreOption().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "more_option." + dri.DRField - } - return drInfos, err + return m.GetOriginServerSubsetRulesDRefInfo() } // GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPoolChoice() == nil { +func (m *OriginServerSubsetRuleListType) GetOriginServerSubsetRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginServerSubsetRules() == nil { return nil, nil } - switch m.GetOriginPoolChoice().(type) { - case *ReplaceSpecType_DefaultPool: - drInfos, err := m.GetDefaultPool().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool." + dri.DRField - } - return drInfos, err - - case *ReplaceSpecType_DefaultPoolList: - - drInfos, err := m.GetDefaultPoolList().GetDRefInfo() + var drInfos []db.DRefInfo + for idx, e := range m.GetOriginServerSubsetRules() { + driSet, err := e.GetDRefInfo() if err != nil { - return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") + return nil, errors.Wrap(err, "GetOriginServerSubsetRules() GetDRefInfo() FAILED") } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "default_pool_list." + dri.DRField + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("origin_server_subset_rules[%v].%s", idx, dri.DRField) } - return drInfos, err - - default: - return nil, nil + drInfos = append(drInfos, driSet...) } + return drInfos, nil } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginServerSubsetRuleList() == nil { - return nil, nil - } +type ValidateOriginServerSubsetRuleListType struct { + FldValidators map[string]db.ValidatorFunc +} - drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() +func (v *ValidateOriginServerSubsetRuleListType) OriginServerSubsetRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for origin_server_subset_rules") } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "origin_server_subset_rule_list." + dri.DRField + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.OriginServerSubsetRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.OriginServerSubsetRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetRateLimitChoice() == nil { - return nil, nil + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for origin_server_subset_rules") } - switch m.GetRateLimitChoice().(type) { - case *ReplaceSpecType_DisableRateLimit: - - return nil, nil - - case *ReplaceSpecType_RateLimit: - drInfos, err := m.GetRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.OriginServerSubsetRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.OriginServerSubsetRule, got %T", val) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "rate_limit." + dri.DRField + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - return drInfos, err + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated origin_server_subset_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items origin_server_subset_rules") + } + return nil + } - case *ReplaceSpecType_ApiRateLimit: + return validatorFn, nil +} - drInfos, err := m.GetApiRateLimit().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") +func (v *ValidateOriginServerSubsetRuleListType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*OriginServerSubsetRuleListType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *OriginServerSubsetRuleListType got type %s", t) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "api_rate_limit." + dri.DRField + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["origin_server_subset_rules"]; exists { + vOpts := append(opts, db.WithValidateField("origin_server_subset_rules")) + if err := fv(ctx, m.GetOriginServerSubsetRules(), vOpts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil } + return nil } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { - if m.GetRoutes() == nil { - return nil, nil - } +// Well-known symbol for default validator implementation +var DefaultOriginServerSubsetRuleListTypeValidator = func() *ValidateOriginServerSubsetRuleListType { + v := &ValidateOriginServerSubsetRuleListType{FldValidators: map[string]db.ValidatorFunc{}} - var drInfos []db.DRefInfo - for idx, e := range m.GetRoutes() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhOriginServerSubsetRules := v.OriginServerSubsetRulesValidationRuleHandler + rulesOriginServerSubsetRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - return drInfos, nil + vFn, err = vrhOriginServerSubsetRules(rulesOriginServerSubsetRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSubsetRuleListType.origin_server_subset_rules: %s", err) + panic(errMsg) + } + v.FldValidators["origin_server_subset_rules"] = vFn + + return v +}() +func OriginServerSubsetRuleListTypeValidator() db.Validator { + return DefaultOriginServerSubsetRuleListTypeValidator } -// GetDRefInfo for the field's type -func (m *ReplaceSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetServicePolicyChoice() == nil { - return nil, nil +// augmented methods on protoc/std generated struct + +func (m *ProtectedAppEndpointType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ProtectedAppEndpointType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ProtectedAppEndpointType) DeepCopy() *ProtectedAppEndpointType { + if m == nil { + return nil } - switch m.GetServicePolicyChoice().(type) { - case *ReplaceSpecType_ServicePoliciesFromNamespace: + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ProtectedAppEndpointType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ProtectedAppEndpointType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} - return nil, nil +func (m *ProtectedAppEndpointType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProtectedAppEndpointTypeValidator().Validate(ctx, m, opts...) +} - case *ReplaceSpecType_NoServicePolicies: +type ValidateProtectedAppEndpointType struct { + FldValidators map[string]db.ValidatorFunc +} - return nil, nil +func (v *ValidateProtectedAppEndpointType) AppTrafficTypeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for app_traffic_type_choice") + } + return validatorFn, nil +} - case *ReplaceSpecType_ActiveServicePolicies: +func (v *ValidateProtectedAppEndpointType) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "active_service_policies." + dri.DRField + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err } - return drInfos, err - default: - return nil, nil + return nil } + return validatorFn, nil } -func (m *ReplaceSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetUserIdChoice().(type) { - case *ReplaceSpecType_UserIdentification: +func (v *ValidateProtectedAppEndpointType) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("user_identification.Object") - dri := db.DRefInfo{ - RefdType: "user_identification.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "user_identification", - Ref: vdRef, + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - return []db.DRefInfo{dri}, nil - - case *ReplaceSpecType_UserIdClientIp: - return nil, nil + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } - default: - return nil, nil + return nil } + + return validatorFn, nil } -// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *ReplaceSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry +func (v *ValidateProtectedAppEndpointType) HttpMethodsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - switch m.GetUserIdChoice().(type) { - case *ReplaceSpecType_UserIdentification: - refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") + itemRules := db.GetRepEnumItemRules(rules) + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.BotHttpMethod) + return int32(i) + } + // ves_io_schema.BotHttpMethod_name is generated in .pb.go + itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ves_io_schema.BotHttpMethod_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for http_methods") + } + itemsValidatorFn := func(ctx context.Context, elems []ves_io_schema.BotHttpMethod, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for http_methods") + } - vref := m.GetUserIdentification() - if vref == nil { - return nil, nil + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]ves_io_schema.BotHttpMethod) + if !ok { + return fmt.Errorf("Repeated validation expected []ves_io_schema.BotHttpMethod, got %T", val) } - ref := &ves_io_schema.ObjectRefType{ - Kind: "user_identification.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated http_methods") } - if refdEnt != nil { - entries = append(entries, refdEnt) + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items http_methods") } + return nil + } - case *ReplaceSpecType_UserIdClientIp: + return validatorFn, nil +} +func (v *ValidateProtectedAppEndpointType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProtectedAppEndpointType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ProtectedAppEndpointType got type %s", t) + } + } + if m == nil { + return nil } - return entries, nil -} + if fv, exists := v.FldValidators["app_traffic_type_choice"]; exists { + val := m.GetAppTrafficTypeChoice() + vOpts := append(opts, + db.WithValidateField("app_traffic_type_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *ReplaceSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetWafChoice().(type) { - case *ReplaceSpecType_DisableWaf: + switch m.GetAppTrafficTypeChoice().(type) { + case *ProtectedAppEndpointType_WebClient: + if fv, exists := v.FldValidators["app_traffic_type_choice.web_client"]; exists { + val := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebClient).WebClient + vOpts := append(opts, + db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("web_client"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProtectedAppEndpointType_MobileClient: + if fv, exists := v.FldValidators["app_traffic_type_choice.mobile_client"]; exists { + val := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_MobileClient).MobileClient + vOpts := append(opts, + db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("mobile_client"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProtectedAppEndpointType_WebMobileClient: + if fv, exists := v.FldValidators["app_traffic_type_choice.web_mobile_client"]; exists { + val := m.GetAppTrafficTypeChoice().(*ProtectedAppEndpointType_WebMobileClient).WebMobileClient + vOpts := append(opts, + db.WithValidateField("app_traffic_type_choice"), + db.WithValidateField("web_mobile_client"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - return nil, nil + } - case *ReplaceSpecType_AppFirewall: + switch m.GetDomainMatcherChoice().(type) { + case *ProtectedAppEndpointType_AnyDomain: + if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { + val := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_AnyDomain).AnyDomain + vOpts := append(opts, + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("any_domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProtectedAppEndpointType_Domain: + if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { + val := m.GetDomainMatcherChoice().(*ProtectedAppEndpointType_Domain).Domain + vOpts := append(opts, + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("domain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil + } + + switch m.GetFlowLabelChoice().(type) { + case *ProtectedAppEndpointType_UndefinedFlowLabel: + if fv, exists := v.FldValidators["flow_label_choice.undefined_flow_label"]; exists { + val := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_UndefinedFlowLabel).UndefinedFlowLabel + vOpts := append(opts, + db.WithValidateField("flow_label_choice"), + db.WithValidateField("undefined_flow_label"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("app_firewall.Object") - dri := db.DRefInfo{ - RefdType: "app_firewall.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "app_firewall", - Ref: vdRef, + case *ProtectedAppEndpointType_FlowLabel: + if fv, exists := v.FldValidators["flow_label_choice.flow_label"]; exists { + val := m.GetFlowLabelChoice().(*ProtectedAppEndpointType_FlowLabel).FlowLabel + vOpts := append(opts, + db.WithValidateField("flow_label_choice"), + db.WithValidateField("flow_label"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return []db.DRefInfo{dri}, nil - default: - return nil, nil } -} -// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *ReplaceSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry + if fv, exists := v.FldValidators["http_methods"]; exists { + vOpts := append(opts, db.WithValidateField("http_methods")) + if err := fv(ctx, m.GetHttpMethods(), vOpts...); err != nil { + return err + } - switch m.GetWafChoice().(type) { - case *ReplaceSpecType_DisableWaf: + } - case *ReplaceSpecType_AppFirewall: - refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") - } + if fv, exists := v.FldValidators["metadata"]; exists { - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "app_firewall.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err } } - return entries, nil -} + if fv, exists := v.FldValidators["path"]; exists { -type ValidateReplaceSpecType struct { - FldValidators map[string]db.ValidatorFunc -} + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { + return err + } -func (v *ValidateReplaceSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") } - return validatorFn, nil -} -func (v *ValidateReplaceSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") - } - return validatorFn, nil -} + if fv, exists := v.FldValidators["query"]; exists { -func (v *ValidateReplaceSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") - } - return validatorFn, nil -} + vOpts := append(opts, db.WithValidateField("query")) + for idx, item := range m.GetQuery() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } -func (v *ValidateReplaceSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") } - return validatorFn, nil -} -func (v *ValidateReplaceSpecType) DdosDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ddos_detection_choice") - } - return validatorFn, nil -} + if fv, exists := v.FldValidators["request_body"]; exists { -func (v *ValidateReplaceSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") - } - return validatorFn, nil -} + vOpts := append(opts, db.WithValidateField("request_body")) + for idx, item := range m.GetRequestBody() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } -func (v *ValidateReplaceSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") } - return validatorFn, nil -} -func (v *ValidateReplaceSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") - } - return validatorFn, nil + return nil } -func (v *ValidateReplaceSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") - } - return validatorFn, nil -} +// Well-known symbol for default validator implementation +var DefaultProtectedAppEndpointTypeValidator = func() *ValidateProtectedAppEndpointType { + v := &ValidateProtectedAppEndpointType{FldValidators: map[string]db.ValidatorFunc{}} -func (v *ValidateReplaceSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") - } - return validatorFn, nil -} + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap -func (v *ValidateReplaceSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") + vrhAppTrafficTypeChoice := v.AppTrafficTypeChoiceValidationRuleHandler + rulesAppTrafficTypeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - return validatorFn, nil -} - -func (v *ValidateReplaceSpecType) ThreatIntelligenceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vFn, err = vrhAppTrafficTypeChoice(rulesAppTrafficTypeChoice) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for threat_intelligence_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.app_traffic_type_choice: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["app_traffic_type_choice"] = vFn -func (v *ValidateReplaceSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - return validatorFn, nil -} - -func (v *ValidateReplaceSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + vFn, err = vrhMetadata(rulesMetadata) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") + errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.metadata: %s", err) + panic(errMsg) } - return validatorFn, nil -} + v.FldValidators["metadata"] = vFn -func (v *ValidateReplaceSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - return validatorFn, nil -} - -func (v *ValidateReplaceSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + vFn, err = vrhPath(rulesPath) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.path: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["path"] = vFn + + vrhHttpMethods := v.HttpMethodsValidationRuleHandler + rulesHttpMethods := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.enum.defined_only": "true", + "ves.io.schema.rules.repeated.items.enum.in": "[0,1,3,4,5,6]", + "ves.io.schema.rules.repeated.max_items": "6", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhHttpMethods(rulesHttpMethods) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + errMsg := fmt.Sprintf("ValidationRuleHandler for ProtectedAppEndpointType.http_methods: %s", err) + panic(errMsg) } + v.FldValidators["http_methods"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) - if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated domains") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items domains") - } - return nil - } + v.FldValidators["app_traffic_type_choice.web_mobile_client"] = WebMobileTrafficTypeValidator().Validate + + v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate + + v.FldValidators["flow_label_choice.flow_label"] = ves_io_schema.BotDefenseFlowLabelCategoriesChoiceTypeValidator().Validate + + v.FldValidators["query"] = QueryValidator().Validate + + v.FldValidators["request_body"] = RequestBodyValidator().Validate + + return v +}() + +func ProtectedAppEndpointTypeValidator() db.Validator { + return DefaultProtectedAppEndpointTypeValidator +} - return validatorFn, nil +// augmented methods on protoc/std generated struct + +func (m *ProxyTypeHttp) ToJSON() (string, error) { + return codec.ToJSON(m) } -func (v *ValidateReplaceSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (m *ProxyTypeHttp) ToYAML() (string, error) { + return codec.ToYAML(m) +} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") +func (m *ProxyTypeHttp) DeepCopy() *ProxyTypeHttp { + if m == nil { + return nil } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } + ser, err := m.Marshal() + if err != nil { return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + c := &ProxyTypeHttp{} + err = c.Unmarshal(ser) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") + return nil } + return c +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated default_route_pools") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items default_route_pools") - } +func (m *ProxyTypeHttp) DeepCopyProto() proto.Message { + if m == nil { return nil } + return m.DeepCopy() +} - return validatorFn, nil +func (m *ProxyTypeHttp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProxyTypeHttpValidator().Validate(ctx, m, opts...) } -func (v *ValidateReplaceSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +type ValidateProxyTypeHttp struct { + FldValidators map[string]db.ValidatorFunc +} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) +func (v *ValidateProxyTypeHttp) PortChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") + return nil, errors.Wrap(err, "ValidationRuleHandler for port_choice") } - itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return validatorFn, nil +} + +func (v *ValidateProxyTypeHttp) PortChoicePortValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Port, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for port") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return oValidatorFn_Port, nil +} +func (v *ValidateProxyTypeHttp) PortChoicePortRangesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_PortRanges, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") + return nil, errors.Wrap(err, "ValidationRuleHandler for port_ranges") } + return oValidatorFn_PortRanges, nil +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*RouteType) - if !ok { - return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated routes") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items routes") +func (v *ValidateProxyTypeHttp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProxyTypeHttp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ProxyTypeHttp got type %s", t) } + } + if m == nil { return nil } - return validatorFn, nil -} + if fv, exists := v.FldValidators["dns_volterra_managed"]; exists { -func (v *ValidateReplaceSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + vOpts := append(opts, db.WithValidateField("dns_volterra_managed")) + if err := fv(ctx, m.GetDnsVolterraManaged(), vOpts...); err != nil { + return err + } - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } + + if fv, exists := v.FldValidators["port_choice"]; exists { + val := m.GetPortChoice() + vOpts := append(opts, + db.WithValidateField("port_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) + switch m.GetPortChoice().(type) { + case *ProxyTypeHttp_Port: + if fv, exists := v.FldValidators["port_choice.port"]; exists { + val := m.GetPortChoice().(*ProxyTypeHttp_Port).Port + vOpts := append(opts, + db.WithValidateField("port_choice"), + db.WithValidateField("port"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated waf_exclusion_rules") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items waf_exclusion_rules") + case *ProxyTypeHttp_PortRanges: + if fv, exists := v.FldValidators["port_choice.port_ranges"]; exists { + val := m.GetPortChoice().(*ProxyTypeHttp_PortRanges).PortRanges + vOpts := append(opts, + db.WithValidateField("port_choice"), + db.WithValidateField("port_ranges"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return nil + } - return validatorFn, nil + return nil } -func (v *ValidateReplaceSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// Well-known symbol for default validator implementation +var DefaultProxyTypeHttpValidator = func() *ValidateProxyTypeHttp { + v := &ValidateProxyTypeHttp{FldValidators: map[string]db.ValidatorFunc{}} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhPortChoice := v.PortChoiceValidationRuleHandler + rulesPortChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhPortChoice(rulesPortChoice) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttp.port_choice: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["port_choice"] = vFn + + vrhPortChoicePort := v.PortChoicePortValidationRuleHandler + rulesPortChoicePort := map[string]string{ + "ves.io.schema.rules.uint32.lte": "65535", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFnMap["port_choice.port"], err = vrhPortChoicePort(rulesPortChoicePort) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttp.port_choice_port: %s", err) + panic(errMsg) } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated blocked_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items blocked_clients") - } - return nil + vrhPortChoicePortRanges := v.PortChoicePortRangesValidationRuleHandler + rulesPortChoicePortRanges := map[string]string{ + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true", + } + vFnMap["port_choice.port_ranges"], err = vrhPortChoicePortRanges(rulesPortChoicePortRanges) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttp.port_choice_port_ranges: %s", err) + panic(errMsg) } - return validatorFn, nil + v.FldValidators["port_choice.port"] = vFnMap["port_choice.port"] + v.FldValidators["port_choice.port_ranges"] = vFnMap["port_choice.port_ranges"] + + return v +}() + +func ProxyTypeHttpValidator() db.Validator { + return DefaultProxyTypeHttpValidator } -func (v *ValidateReplaceSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +// augmented methods on protoc/std generated struct - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") - } - itemsValidatorFn := func(ctx context.Context, elems []*SimpleClientSrcRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } +func (m *ProxyTypeHttps) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ProxyTypeHttps) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ProxyTypeHttps) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*SimpleClientSrcRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*SimpleClientSrcRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated trusted_clients") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items trusted_clients") - } - return nil + if err := m.GetTlsParameters().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ProxyTypeHttps.tls_parameters") } - return validatorFn, nil + return nil } -func (v *ValidateReplaceSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") +func (m *ProxyTypeHttps) DeepCopy() *ProxyTypeHttps { + if m == nil { + return nil } - itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } + ser, err := m.Marshal() + if err != nil { return nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + c := &ProxyTypeHttps{} + err = c.Unmarshal(ser) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") + return nil } + return c +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*DDoSMitigationRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated ddos_mitigation_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items ddos_mitigation_rules") - } +func (m *ProxyTypeHttps) DeepCopyProto() proto.Message { + if m == nil { return nil } - - return validatorFn, nil + return m.DeepCopy() } -func (v *ValidateReplaceSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (m *ProxyTypeHttps) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProxyTypeHttpsValidator().Validate(ctx, m, opts...) +} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil +func (m *ProxyTypeHttps) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") + + return m.GetTlsCertificatesChoiceDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ProxyTypeHttps) GetTlsCertificatesChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetTlsCertificatesChoice() == nil { + return nil, nil } + switch m.GetTlsCertificatesChoice().(type) { + case *ProxyTypeHttps_TlsParameters: - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) + drInfos, err := m.GetTlsParameters().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetTlsParameters().GetDRefInfo() FAILED") } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "tls_parameters." + dri.DRField } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated data_guard_rules") + return drInfos, err + + case *ProxyTypeHttps_TlsCertParams: + + drInfos, err := m.GetTlsCertParams().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetTlsCertParams().GetDRefInfo() FAILED") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items data_guard_rules") + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "tls_cert_params." + dri.DRField } - return nil + return drInfos, err + + default: + return nil, nil } - return validatorFn, nil } -func (v *ValidateReplaceSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +type ValidateProxyTypeHttps struct { + FldValidators map[string]db.ValidatorFunc +} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) +func (v *ValidateProxyTypeHttps) PathNormalizeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for path_normalize_choice") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return validatorFn, nil +} + +func (v *ValidateProxyTypeHttps) PortChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") + return nil, errors.Wrap(err, "ValidationRuleHandler for port_choice") } + return validatorFn, nil +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated graphql_rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items graphql_rules") - } - return nil +func (v *ValidateProxyTypeHttps) PortChoicePortValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Port, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for port") + } + return oValidatorFn_Port, nil +} +func (v *ValidateProxyTypeHttps) PortChoicePortRangesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_PortRanges, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for port_ranges") } - - return validatorFn, nil + return oValidatorFn_PortRanges, nil } -func (v *ValidateReplaceSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) +func (v *ValidateProxyTypeHttps) ServerHeaderChoiceServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ServerName, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") + return nil, errors.Wrap(err, "ValidationRuleHandler for server_name") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return oValidatorFn_ServerName, nil +} +func (v *ValidateProxyTypeHttps) ServerHeaderChoiceAppendServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_AppendServerName, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for append_server_name") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return oValidatorFn_AppendServerName, nil +} + +func (v *ValidateProxyTypeHttps) TlsCertificatesChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") + return nil, errors.Wrap(err, "ValidationRuleHandler for tls_certificates_choice") } + return validatorFn, nil +} - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated protected_cookies") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items protected_cookies") - } - return nil +func (v *ValidateProxyTypeHttps) ConnectionIdleTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for connection_idle_timeout") } return validatorFn, nil } -func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ReplaceSpecType) +func (v *ValidateProxyTypeHttps) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProxyTypeHttps) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + return fmt.Errorf("Expected type *ProxyTypeHttps got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["add_location"]; exists { + if fv, exists := v.FldValidators["add_hsts"]; exists { - vOpts := append(opts, db.WithValidateField("add_location")) - if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("add_hsts")) + if err := fv(ctx, m.GetAddHsts(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["advertise_choice"]; exists { - val := m.GetAdvertiseChoice() - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["connection_idle_timeout"]; exists { + + vOpts := append(opts, db.WithValidateField("connection_idle_timeout")) + if err := fv(ctx, m.GetConnectionIdleTimeout(), vOpts...); err != nil { return err } + } - switch m.GetAdvertiseChoice().(type) { - case *ReplaceSpecType_AdvertiseOnPublic: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { - val := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublic).AdvertiseOnPublic - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_AdvertiseCustom: - if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { - val := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseCustom).AdvertiseCustom - vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_custom"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_DoNotAdvertise: - if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { - val := m.GetAdvertiseChoice().(*ReplaceSpecType_DoNotAdvertise).DoNotAdvertise + switch m.GetDefaultLbChoice().(type) { + case *ProxyTypeHttps_NonDefaultLoadbalancer: + if fv, exists := v.FldValidators["default_lb_choice.non_default_loadbalancer"]; exists { + val := m.GetDefaultLbChoice().(*ProxyTypeHttps_NonDefaultLoadbalancer).NonDefaultLoadbalancer vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("do_not_advertise"), + db.WithValidateField("default_lb_choice"), + db.WithValidateField("non_default_loadbalancer"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_AdvertiseOnPublicDefaultVip: - if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { - val := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip + case *ProxyTypeHttps_DefaultLoadbalancer: + if fv, exists := v.FldValidators["default_lb_choice.default_loadbalancer"]; exists { + val := m.GetDefaultLbChoice().(*ProxyTypeHttps_DefaultLoadbalancer).DefaultLoadbalancer vOpts := append(opts, - db.WithValidateField("advertise_choice"), - db.WithValidateField("advertise_on_public_default_vip"), + db.WithValidateField("default_lb_choice"), + db.WithValidateField("default_loadbalancer"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24067,146 +13256,61 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["api_definition_choice"]; exists { - val := m.GetApiDefinitionChoice() - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + if fv, exists := v.FldValidators["header_transformation_type"]; exists { - switch m.GetApiDefinitionChoice().(type) { - case *ReplaceSpecType_ApiDefinitions: - if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { - val := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinitions).ApiDefinitions - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definitions"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_ApiSpecification: - if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { - val := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiSpecification).ApiSpecification - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_specification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_DisableApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*ReplaceSpecType_DisableApiDefinition).DisableApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("disable_api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_ApiDefinition: - if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { - val := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinition).ApiDefinition - vOpts := append(opts, - db.WithValidateField("api_definition_choice"), - db.WithValidateField("api_definition"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("header_transformation_type")) + if err := fv(ctx, m.GetHeaderTransformationType(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["api_discovery_choice"]; exists { - val := m.GetApiDiscoveryChoice() - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + if fv, exists := v.FldValidators["http_protocol_options"]; exists { - switch m.GetApiDiscoveryChoice().(type) { - case *ReplaceSpecType_EnableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*ReplaceSpecType_EnableApiDiscovery).EnableApiDiscovery - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("enable_api_discovery"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_DisableApiDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*ReplaceSpecType_DisableApiDiscovery).DisableApiDiscovery - vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("disable_api_discovery"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("http_protocol_options")) + if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["api_protection_rules"]; exists { + if fv, exists := v.FldValidators["http_redirect"]; exists { - vOpts := append(opts, db.WithValidateField("api_protection_rules")) - if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("http_redirect")) + if err := fv(ctx, m.GetHttpRedirect(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["blocked_clients"]; exists { - vOpts := append(opts, db.WithValidateField("blocked_clients")) - if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { + if fv, exists := v.FldValidators["path_normalize_choice"]; exists { + val := m.GetPathNormalizeChoice() + vOpts := append(opts, + db.WithValidateField("path_normalize_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - switch m.GetBotDefenseChoice().(type) { - case *ReplaceSpecType_DisableBotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*ReplaceSpecType_DisableBotDefense).DisableBotDefense - vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("disable_bot_defense"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_BotDefense: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { - val := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefense).BotDefense + switch m.GetPathNormalizeChoice().(type) { + case *ProxyTypeHttps_EnablePathNormalize: + if fv, exists := v.FldValidators["path_normalize_choice.enable_path_normalize"]; exists { + val := m.GetPathNormalizeChoice().(*ProxyTypeHttps_EnablePathNormalize).EnablePathNormalize vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense"), + db.WithValidateField("path_normalize_choice"), + db.WithValidateField("enable_path_normalize"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_BotDefenseAdvanced: - if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { - val := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefenseAdvanced).BotDefenseAdvanced + case *ProxyTypeHttps_DisablePathNormalize: + if fv, exists := v.FldValidators["path_normalize_choice.disable_path_normalize"]; exists { + val := m.GetPathNormalizeChoice().(*ProxyTypeHttps_DisablePathNormalize).DisablePathNormalize vOpts := append(opts, - db.WithValidateField("bot_defense_choice"), - db.WithValidateField("bot_defense_advanced"), + db.WithValidateField("path_normalize_choice"), + db.WithValidateField("disable_path_normalize"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24215,67 +13319,82 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["challenge_type"]; exists { - val := m.GetChallengeType() + if fv, exists := v.FldValidators["port_choice"]; exists { + val := m.GetPortChoice() vOpts := append(opts, - db.WithValidateField("challenge_type"), + db.WithValidateField("port_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetChallengeType().(type) { - case *ReplaceSpecType_JsChallenge: - if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { - val := m.GetChallengeType().(*ReplaceSpecType_JsChallenge).JsChallenge + switch m.GetPortChoice().(type) { + case *ProxyTypeHttps_Port: + if fv, exists := v.FldValidators["port_choice.port"]; exists { + val := m.GetPortChoice().(*ProxyTypeHttps_Port).Port vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("js_challenge"), + db.WithValidateField("port_choice"), + db.WithValidateField("port"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_CaptchaChallenge: - if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { - val := m.GetChallengeType().(*ReplaceSpecType_CaptchaChallenge).CaptchaChallenge + case *ProxyTypeHttps_PortRanges: + if fv, exists := v.FldValidators["port_choice.port_ranges"]; exists { + val := m.GetPortChoice().(*ProxyTypeHttps_PortRanges).PortRanges vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("captcha_challenge"), + db.WithValidateField("port_choice"), + db.WithValidateField("port_ranges"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_NoChallenge: - if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { - val := m.GetChallengeType().(*ReplaceSpecType_NoChallenge).NoChallenge + + } + + switch m.GetServerHeaderChoice().(type) { + case *ProxyTypeHttps_DefaultHeader: + if fv, exists := v.FldValidators["server_header_choice.default_header"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttps_DefaultHeader).DefaultHeader vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("no_challenge"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("default_header"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_PolicyBasedChallenge: - if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { - val := m.GetChallengeType().(*ReplaceSpecType_PolicyBasedChallenge).PolicyBasedChallenge + case *ProxyTypeHttps_ServerName: + if fv, exists := v.FldValidators["server_header_choice.server_name"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttps_ServerName).ServerName vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("policy_based_challenge"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("server_name"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_EnableChallenge: - if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { - val := m.GetChallengeType().(*ReplaceSpecType_EnableChallenge).EnableChallenge + case *ProxyTypeHttps_AppendServerName: + if fv, exists := v.FldValidators["server_header_choice.append_server_name"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttps_AppendServerName).AppendServerName vOpts := append(opts, - db.WithValidateField("challenge_type"), - db.WithValidateField("enable_challenge"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("append_server_name"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyTypeHttps_PassThrough: + if fv, exists := v.FldValidators["server_header_choice.pass_through"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttps_PassThrough).PassThrough + vOpts := append(opts, + db.WithValidateField("server_header_choice"), + db.WithValidateField("pass_through"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24284,24 +13403,34 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - switch m.GetClientSideDefenseChoice().(type) { - case *ReplaceSpecType_DisableClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*ReplaceSpecType_DisableClientSideDefense).DisableClientSideDefense + if fv, exists := v.FldValidators["tls_certificates_choice"]; exists { + val := m.GetTlsCertificatesChoice() + vOpts := append(opts, + db.WithValidateField("tls_certificates_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetTlsCertificatesChoice().(type) { + case *ProxyTypeHttps_TlsParameters: + if fv, exists := v.FldValidators["tls_certificates_choice.tls_parameters"]; exists { + val := m.GetTlsCertificatesChoice().(*ProxyTypeHttps_TlsParameters).TlsParameters vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("disable_client_side_defense"), + db.WithValidateField("tls_certificates_choice"), + db.WithValidateField("tls_parameters"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_ClientSideDefense: - if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { - val := m.GetClientSideDefenseChoice().(*ReplaceSpecType_ClientSideDefense).ClientSideDefense + case *ProxyTypeHttps_TlsCertParams: + if fv, exists := v.FldValidators["tls_certificates_choice.tls_cert_params"]; exists { + val := m.GetTlsCertificatesChoice().(*ProxyTypeHttps_TlsCertParams).TlsCertParams vOpts := append(opts, - db.WithValidateField("client_side_defense_choice"), - db.WithValidateField("client_side_defense"), + db.WithValidateField("tls_certificates_choice"), + db.WithValidateField("tls_cert_params"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24310,383 +13439,310 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["cors_policy"]; exists { + return nil +} - vOpts := append(opts, db.WithValidateField("cors_policy")) - if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { - return err - } +// Well-known symbol for default validator implementation +var DefaultProxyTypeHttpsValidator = func() *ValidateProxyTypeHttps { + v := &ValidateProxyTypeHttps{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + vrhPathNormalizeChoice := v.PathNormalizeChoiceValidationRuleHandler + rulesPathNormalizeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhPathNormalizeChoice(rulesPathNormalizeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.path_normalize_choice: %s", err) + panic(errMsg) } + v.FldValidators["path_normalize_choice"] = vFn - if fv, exists := v.FldValidators["csrf_policy"]; exists { + vrhPortChoice := v.PortChoiceValidationRuleHandler + rulesPortChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhPortChoice(rulesPortChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.port_choice: %s", err) + panic(errMsg) + } + v.FldValidators["port_choice"] = vFn - vOpts := append(opts, db.WithValidateField("csrf_policy")) - if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { - return err - } + vrhPortChoicePort := v.PortChoicePortValidationRuleHandler + rulesPortChoicePort := map[string]string{ + "ves.io.schema.rules.uint32.lte": "65535", + } + vFnMap["port_choice.port"], err = vrhPortChoicePort(rulesPortChoicePort) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.port_choice_port: %s", err) + panic(errMsg) + } + vrhPortChoicePortRanges := v.PortChoicePortRangesValidationRuleHandler + rulesPortChoicePortRanges := map[string]string{ + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true", + } + vFnMap["port_choice.port_ranges"], err = vrhPortChoicePortRanges(rulesPortChoicePortRanges) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.port_choice_port_ranges: %s", err) + panic(errMsg) + } + v.FldValidators["port_choice.port"] = vFnMap["port_choice.port"] + v.FldValidators["port_choice.port_ranges"] = vFnMap["port_choice.port_ranges"] + + vrhServerHeaderChoiceServerName := v.ServerHeaderChoiceServerNameValidationRuleHandler + rulesServerHeaderChoiceServerName := map[string]string{ + "ves.io.schema.rules.string.max_len": "8096", + } + vFnMap["server_header_choice.server_name"], err = vrhServerHeaderChoiceServerName(rulesServerHeaderChoiceServerName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.server_header_choice_server_name: %s", err) + panic(errMsg) + } + vrhServerHeaderChoiceAppendServerName := v.ServerHeaderChoiceAppendServerNameValidationRuleHandler + rulesServerHeaderChoiceAppendServerName := map[string]string{ + "ves.io.schema.rules.string.max_len": "8096", + } + vFnMap["server_header_choice.append_server_name"], err = vrhServerHeaderChoiceAppendServerName(rulesServerHeaderChoiceAppendServerName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttps.server_header_choice_append_server_name: %s", err) + panic(errMsg) } - if fv, exists := v.FldValidators["data_guard_rules"]; exists { - vOpts := append(opts, db.WithValidateField("data_guard_rules")) - if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { - return err - } + v.FldValidators["server_header_choice.server_name"] = vFnMap["server_header_choice.server_name"] + v.FldValidators["server_header_choice.append_server_name"] = vFnMap["server_header_choice.append_server_name"] + vrhTlsCertificatesChoice := v.TlsCertificatesChoiceValidationRuleHandler + rulesTlsCertificatesChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTlsCertificatesChoice(rulesTlsCertificatesChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.tls_certificates_choice: %s", err) + panic(errMsg) } + v.FldValidators["tls_certificates_choice"] = vFn - if fv, exists := v.FldValidators["ddos_detection_choice"]; exists { - val := m.GetDdosDetectionChoice() - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vrhConnectionIdleTimeout := v.ConnectionIdleTimeoutValidationRuleHandler + rulesConnectionIdleTimeout := map[string]string{ + "ves.io.schema.rules.uint32.lte": "600000", + } + vFn, err = vrhConnectionIdleTimeout(rulesConnectionIdleTimeout) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttps.connection_idle_timeout: %s", err) + panic(errMsg) } + v.FldValidators["connection_idle_timeout"] = vFn - switch m.GetDdosDetectionChoice().(type) { - case *ReplaceSpecType_EnableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.enable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*ReplaceSpecType_EnableDdosDetection).EnableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("enable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_DisableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.disable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*ReplaceSpecType_DisableDdosDetection).DisableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("disable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + v.FldValidators["tls_certificates_choice.tls_parameters"] = ves_io_schema_views.DownstreamTlsParamsTypeValidator().Validate + v.FldValidators["tls_certificates_choice.tls_cert_params"] = ves_io_schema_views.DownstreamTLSCertsParamsValidator().Validate + + v.FldValidators["header_transformation_type"] = ves_io_schema.HeaderTransformationTypeValidator().Validate + + v.FldValidators["http_protocol_options"] = ves_io_schema_virtual_host.HttpProtocolOptionsValidator().Validate + + return v +}() + +func ProxyTypeHttpsValidator() db.Validator { + return DefaultProxyTypeHttpsValidator +} - } +// augmented methods on protoc/std generated struct - if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { - vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) - if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { - return err - } +func (m *ProxyTypeHttpsAutoCerts) ToJSON() (string, error) { + return codec.ToJSON(m) +} - } +func (m *ProxyTypeHttpsAutoCerts) ToYAML() (string, error) { + return codec.ToYAML(m) +} - if fv, exists := v.FldValidators["default_route_pools"]; exists { - vOpts := append(opts, db.WithValidateField("default_route_pools")) - if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { - return err - } +func (m *ProxyTypeHttpsAutoCerts) DeepCopy() *ProxyTypeHttpsAutoCerts { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ProxyTypeHttpsAutoCerts{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} +func (m *ProxyTypeHttpsAutoCerts) DeepCopyProto() proto.Message { + if m == nil { + return nil } + return m.DeepCopy() +} - if fv, exists := v.FldValidators["domains"]; exists { - vOpts := append(opts, db.WithValidateField("domains")) - if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { - return err - } +func (m *ProxyTypeHttpsAutoCerts) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProxyTypeHttpsAutoCertsValidator().Validate(ctx, m, opts...) +} +func (m *ProxyTypeHttpsAutoCerts) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - if fv, exists := v.FldValidators["graphql_rules"]; exists { - vOpts := append(opts, db.WithValidateField("graphql_rules")) - if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { - return err - } + return m.GetMtlsChoiceDRefInfo() - } +} - if fv, exists := v.FldValidators["hash_policy_choice"]; exists { - val := m.GetHashPolicyChoice() - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +// GetDRefInfo for the field's type +func (m *ProxyTypeHttpsAutoCerts) GetMtlsChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetMtlsChoice() == nil { + return nil, nil } + switch m.GetMtlsChoice().(type) { + case *ProxyTypeHttpsAutoCerts_NoMtls: - switch m.GetHashPolicyChoice().(type) { - case *ReplaceSpecType_RoundRobin: - if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { - val := m.GetHashPolicyChoice().(*ReplaceSpecType_RoundRobin).RoundRobin - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("round_robin"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_LeastActive: - if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { - val := m.GetHashPolicyChoice().(*ReplaceSpecType_LeastActive).LeastActive - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("least_active"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_Random: - if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { - val := m.GetHashPolicyChoice().(*ReplaceSpecType_Random).Random - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("random"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_SourceIpStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*ReplaceSpecType_SourceIpStickiness).SourceIpStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("source_ip_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_CookieStickiness: - if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { - val := m.GetHashPolicyChoice().(*ReplaceSpecType_CookieStickiness).CookieStickiness - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("cookie_stickiness"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_RingHash: - if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { - val := m.GetHashPolicyChoice().(*ReplaceSpecType_RingHash).RingHash - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("ring_hash"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + return nil, nil - } + case *ProxyTypeHttpsAutoCerts_UseMtls: - switch m.GetIpReputationChoice().(type) { - case *ReplaceSpecType_DisableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*ReplaceSpecType_DisableIpReputation).DisableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("disable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetUseMtls().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetUseMtls().GetDRefInfo() FAILED") } - case *ReplaceSpecType_EnableIpReputation: - if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { - val := m.GetIpReputationChoice().(*ReplaceSpecType_EnableIpReputation).EnableIpReputation - vOpts := append(opts, - db.WithValidateField("ip_reputation_choice"), - db.WithValidateField("enable_ip_reputation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "use_mtls." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["jwt_validation"]; exists { +} - vOpts := append(opts, db.WithValidateField("jwt_validation")) - if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { - return err - } +type ValidateProxyTypeHttpsAutoCerts struct { + FldValidators map[string]db.ValidatorFunc +} +func (v *ValidateProxyTypeHttpsAutoCerts) MtlsChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for mtls_choice") } + return validatorFn, nil +} - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { - val := m.GetL7DdosAutoMitigationAction() - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +func (v *ValidateProxyTypeHttpsAutoCerts) PathNormalizeChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for path_normalize_choice") } + return validatorFn, nil +} - switch m.GetL7DdosAutoMitigationAction().(type) { - case *ReplaceSpecType_L7DdosActionDefault: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionDefault).L7DdosActionDefault - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_default"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_L7DdosActionBlock: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionBlock).L7DdosActionBlock - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_block"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_L7DdosActionJsChallenge: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_js_challenge"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_L7DdosActionNone: - if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { - val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionNone).L7DdosActionNone - vOpts := append(opts, - db.WithValidateField("l7_ddos_auto_mitigation_action"), - db.WithValidateField("l7_ddos_action_none"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - +func (v *ValidateProxyTypeHttpsAutoCerts) PortChoicePortValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_Port, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for port") + } + return oValidatorFn_Port, nil +} +func (v *ValidateProxyTypeHttpsAutoCerts) PortChoicePortRangesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_PortRanges, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for port_ranges") } + return oValidatorFn_PortRanges, nil +} - if fv, exists := v.FldValidators["loadbalancer_type"]; exists { - val := m.GetLoadbalancerType() - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ServerName, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for server_name") + } + return oValidatorFn_ServerName, nil +} +func (v *ValidateProxyTypeHttpsAutoCerts) ServerHeaderChoiceAppendServerNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_AppendServerName, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for append_server_name") } + return oValidatorFn_AppendServerName, nil +} - switch m.GetLoadbalancerType().(type) { - case *ReplaceSpecType_Http: - if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { - val := m.GetLoadbalancerType().(*ReplaceSpecType_Http).Http - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("http"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_Https: - if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { - val := m.GetLoadbalancerType().(*ReplaceSpecType_Https).Https - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_HttpsAutoCert: - if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { - val := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert).HttpsAutoCert - vOpts := append(opts, - db.WithValidateField("loadbalancer_type"), - db.WithValidateField("https_auto_cert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } +func (v *ValidateProxyTypeHttpsAutoCerts) ConnectionIdleTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for connection_idle_timeout") } - if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { - val := m.GetMaliciousUserDetectionChoice() - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + return validatorFn, nil +} + +func (v *ValidateProxyTypeHttpsAutoCerts) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProxyTypeHttpsAutoCerts) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ProxyTypeHttpsAutoCerts got type %s", t) } } + if m == nil { + return nil + } - switch m.GetMaliciousUserDetectionChoice().(type) { - case *ReplaceSpecType_EnableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("enable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_DisableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("disable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["add_hsts"]; exists { + + vOpts := append(opts, db.WithValidateField("add_hsts")) + if err := fv(ctx, m.GetAddHsts(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { + if fv, exists := v.FldValidators["connection_idle_timeout"]; exists { - vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) - if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("connection_idle_timeout")) + if err := fv(ctx, m.GetConnectionIdleTimeout(), vOpts...); err != nil { return err } } - switch m.GetMlConfigChoice().(type) { - case *ReplaceSpecType_SingleLbApp: - if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { - val := m.GetMlConfigChoice().(*ReplaceSpecType_SingleLbApp).SingleLbApp + switch m.GetDefaultLbChoice().(type) { + case *ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer: + if fv, exists := v.FldValidators["default_lb_choice.non_default_loadbalancer"]; exists { + val := m.GetDefaultLbChoice().(*ProxyTypeHttpsAutoCerts_NonDefaultLoadbalancer).NonDefaultLoadbalancer vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("single_lb_app"), + db.WithValidateField("default_lb_choice"), + db.WithValidateField("non_default_loadbalancer"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_MultiLbApp: - if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { - val := m.GetMlConfigChoice().(*ReplaceSpecType_MultiLbApp).MultiLbApp + case *ProxyTypeHttpsAutoCerts_DefaultLoadbalancer: + if fv, exists := v.FldValidators["default_lb_choice.default_loadbalancer"]; exists { + val := m.GetDefaultLbChoice().(*ProxyTypeHttpsAutoCerts_DefaultLoadbalancer).DefaultLoadbalancer vOpts := append(opts, - db.WithValidateField("ml_config_choice"), - db.WithValidateField("multi_lb_app"), + db.WithValidateField("default_lb_choice"), + db.WithValidateField("default_loadbalancer"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24695,97 +13751,61 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["more_option"]; exists { + if fv, exists := v.FldValidators["header_transformation_type"]; exists { - vOpts := append(opts, db.WithValidateField("more_option")) - if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("header_transformation_type")) + if err := fv(ctx, m.GetHeaderTransformationType(), vOpts...); err != nil { return err } } - switch m.GetOriginPoolChoice().(type) { - case *ReplaceSpecType_DefaultPool: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { - val := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPool).DefaultPool - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_DefaultPoolList: - if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { - val := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPoolList).DefaultPoolList - vOpts := append(opts, - db.WithValidateField("origin_pool_choice"), - db.WithValidateField("default_pool_list"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { + if fv, exists := v.FldValidators["http_protocol_options"]; exists { - vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) - if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("http_protocol_options")) + if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["protected_cookies"]; exists { - vOpts := append(opts, db.WithValidateField("protected_cookies")) - if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { + if fv, exists := v.FldValidators["http_redirect"]; exists { + + vOpts := append(opts, db.WithValidateField("http_redirect")) + if err := fv(ctx, m.GetHttpRedirect(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["rate_limit_choice"]; exists { - val := m.GetRateLimitChoice() + if fv, exists := v.FldValidators["mtls_choice"]; exists { + val := m.GetMtlsChoice() vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), + db.WithValidateField("mtls_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetRateLimitChoice().(type) { - case *ReplaceSpecType_DisableRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*ReplaceSpecType_DisableRateLimit).DisableRateLimit - vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("disable_rate_limit"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_RateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { - val := m.GetRateLimitChoice().(*ReplaceSpecType_RateLimit).RateLimit + switch m.GetMtlsChoice().(type) { + case *ProxyTypeHttpsAutoCerts_NoMtls: + if fv, exists := v.FldValidators["mtls_choice.no_mtls"]; exists { + val := m.GetMtlsChoice().(*ProxyTypeHttpsAutoCerts_NoMtls).NoMtls vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("rate_limit"), + db.WithValidateField("mtls_choice"), + db.WithValidateField("no_mtls"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_ApiRateLimit: - if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { - val := m.GetRateLimitChoice().(*ReplaceSpecType_ApiRateLimit).ApiRateLimit + case *ProxyTypeHttpsAutoCerts_UseMtls: + if fv, exists := v.FldValidators["mtls_choice.use_mtls"]; exists { + val := m.GetMtlsChoice().(*ProxyTypeHttpsAutoCerts_UseMtls).UseMtls vOpts := append(opts, - db.WithValidateField("rate_limit_choice"), - db.WithValidateField("api_rate_limit"), + db.WithValidateField("mtls_choice"), + db.WithValidateField("use_mtls"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24794,53 +13814,60 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["routes"]; exists { - vOpts := append(opts, db.WithValidateField("routes")) - if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["service_policy_choice"]; exists { - val := m.GetServicePolicyChoice() + if fv, exists := v.FldValidators["path_normalize_choice"]; exists { + val := m.GetPathNormalizeChoice() vOpts := append(opts, - db.WithValidateField("service_policy_choice"), + db.WithValidateField("path_normalize_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetServicePolicyChoice().(type) { - case *ReplaceSpecType_ServicePoliciesFromNamespace: - if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { - val := m.GetServicePolicyChoice().(*ReplaceSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace + switch m.GetPathNormalizeChoice().(type) { + case *ProxyTypeHttpsAutoCerts_EnablePathNormalize: + if fv, exists := v.FldValidators["path_normalize_choice.enable_path_normalize"]; exists { + val := m.GetPathNormalizeChoice().(*ProxyTypeHttpsAutoCerts_EnablePathNormalize).EnablePathNormalize + vOpts := append(opts, + db.WithValidateField("path_normalize_choice"), + db.WithValidateField("enable_path_normalize"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyTypeHttpsAutoCerts_DisablePathNormalize: + if fv, exists := v.FldValidators["path_normalize_choice.disable_path_normalize"]; exists { + val := m.GetPathNormalizeChoice().(*ProxyTypeHttpsAutoCerts_DisablePathNormalize).DisablePathNormalize vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("service_policies_from_namespace"), + db.WithValidateField("path_normalize_choice"), + db.WithValidateField("disable_path_normalize"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_NoServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*ReplaceSpecType_NoServicePolicies).NoServicePolicies + + } + + switch m.GetPortChoice().(type) { + case *ProxyTypeHttpsAutoCerts_Port: + if fv, exists := v.FldValidators["port_choice.port"]; exists { + val := m.GetPortChoice().(*ProxyTypeHttpsAutoCerts_Port).Port vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("no_service_policies"), + db.WithValidateField("port_choice"), + db.WithValidateField("port"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_ActiveServicePolicies: - if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { - val := m.GetServicePolicyChoice().(*ReplaceSpecType_ActiveServicePolicies).ActiveServicePolicies + case *ProxyTypeHttpsAutoCerts_PortRanges: + if fv, exists := v.FldValidators["port_choice.port_ranges"]; exists { + val := m.GetPortChoice().(*ProxyTypeHttpsAutoCerts_PortRanges).PortRanges vOpts := append(opts, - db.WithValidateField("service_policy_choice"), - db.WithValidateField("active_service_policies"), + db.WithValidateField("port_choice"), + db.WithValidateField("port_ranges"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24849,60 +13876,46 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - switch m.GetSlowDdosMitigationChoice().(type) { - case *ReplaceSpecType_SlowDdosMitigation: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { - val := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SlowDdosMitigation).SlowDdosMitigation + switch m.GetServerHeaderChoice().(type) { + case *ProxyTypeHttpsAutoCerts_DefaultHeader: + if fv, exists := v.FldValidators["server_header_choice.default_header"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_DefaultHeader).DefaultHeader vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("slow_ddos_mitigation"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("default_header"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_SystemDefaultTimeouts: - if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { - val := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts + case *ProxyTypeHttpsAutoCerts_ServerName: + if fv, exists := v.FldValidators["server_header_choice.server_name"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_ServerName).ServerName vOpts := append(opts, - db.WithValidateField("slow_ddos_mitigation_choice"), - db.WithValidateField("system_default_timeouts"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("server_name"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - - } - - if fv, exists := v.FldValidators["threat_intelligence_choice"]; exists { - val := m.GetThreatIntelligenceChoice() - vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetThreatIntelligenceChoice().(type) { - case *ReplaceSpecType_DisableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.disable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*ReplaceSpecType_DisableThreatIntelligence).DisableThreatIntelligence + case *ProxyTypeHttpsAutoCerts_AppendServerName: + if fv, exists := v.FldValidators["server_header_choice.append_server_name"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_AppendServerName).AppendServerName vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("disable_threat_intelligence"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("append_server_name"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_EnableThreatIntelligence: - if fv, exists := v.FldValidators["threat_intelligence_choice.enable_threat_intelligence"]; exists { - val := m.GetThreatIntelligenceChoice().(*ReplaceSpecType_EnableThreatIntelligence).EnableThreatIntelligence + case *ProxyTypeHttpsAutoCerts_PassThrough: + if fv, exists := v.FldValidators["server_header_choice.pass_through"]; exists { + val := m.GetServerHeaderChoice().(*ProxyTypeHttpsAutoCerts_PassThrough).PassThrough vOpts := append(opts, - db.WithValidateField("threat_intelligence_choice"), - db.WithValidateField("enable_threat_intelligence"), + db.WithValidateField("server_header_choice"), + db.WithValidateField("pass_through"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -24911,114 +13924,251 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { - val := m.GetTrustClientIpHeadersChoice() - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["tls_config"]; exists { + + vOpts := append(opts, db.WithValidateField("tls_config")) + if err := fv(ctx, m.GetTlsConfig(), vOpts...); err != nil { return err } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultProxyTypeHttpsAutoCertsValidator = func() *ValidateProxyTypeHttpsAutoCerts { + v := &ValidateProxyTypeHttpsAutoCerts{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhMtlsChoice := v.MtlsChoiceValidationRuleHandler + rulesMtlsChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhMtlsChoice(rulesMtlsChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.mtls_choice: %s", err) + panic(errMsg) + } + v.FldValidators["mtls_choice"] = vFn + + vrhPathNormalizeChoice := v.PathNormalizeChoiceValidationRuleHandler + rulesPathNormalizeChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhPathNormalizeChoice(rulesPathNormalizeChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.path_normalize_choice: %s", err) + panic(errMsg) + } + v.FldValidators["path_normalize_choice"] = vFn + + vrhPortChoicePort := v.PortChoicePortValidationRuleHandler + rulesPortChoicePort := map[string]string{ + "ves.io.schema.rules.uint32.lte": "65535", + } + vFnMap["port_choice.port"], err = vrhPortChoicePort(rulesPortChoicePort) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.port_choice_port: %s", err) + panic(errMsg) + } + vrhPortChoicePortRanges := v.PortChoicePortRangesValidationRuleHandler + rulesPortChoicePortRanges := map[string]string{ + "ves.io.schema.rules.string.max_len": "512", + "ves.io.schema.rules.string.max_ports": "64", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.unique_port_range_list": "true", + } + vFnMap["port_choice.port_ranges"], err = vrhPortChoicePortRanges(rulesPortChoicePortRanges) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.port_choice_port_ranges: %s", err) + panic(errMsg) + } + + v.FldValidators["port_choice.port"] = vFnMap["port_choice.port"] + v.FldValidators["port_choice.port_ranges"] = vFnMap["port_choice.port_ranges"] + + vrhServerHeaderChoiceServerName := v.ServerHeaderChoiceServerNameValidationRuleHandler + rulesServerHeaderChoiceServerName := map[string]string{ + "ves.io.schema.rules.string.max_len": "8096", + } + vFnMap["server_header_choice.server_name"], err = vrhServerHeaderChoiceServerName(rulesServerHeaderChoiceServerName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_server_name: %s", err) + panic(errMsg) + } + vrhServerHeaderChoiceAppendServerName := v.ServerHeaderChoiceAppendServerNameValidationRuleHandler + rulesServerHeaderChoiceAppendServerName := map[string]string{ + "ves.io.schema.rules.string.max_len": "8096", + } + vFnMap["server_header_choice.append_server_name"], err = vrhServerHeaderChoiceAppendServerName(rulesServerHeaderChoiceAppendServerName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ProxyTypeHttpsAutoCerts.server_header_choice_append_server_name: %s", err) + panic(errMsg) + } + + v.FldValidators["server_header_choice.server_name"] = vFnMap["server_header_choice.server_name"] + v.FldValidators["server_header_choice.append_server_name"] = vFnMap["server_header_choice.append_server_name"] + + vrhConnectionIdleTimeout := v.ConnectionIdleTimeoutValidationRuleHandler + rulesConnectionIdleTimeout := map[string]string{ + "ves.io.schema.rules.uint32.lte": "600000", + } + vFn, err = vrhConnectionIdleTimeout(rulesConnectionIdleTimeout) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyTypeHttpsAutoCerts.connection_idle_timeout: %s", err) + panic(errMsg) + } + v.FldValidators["connection_idle_timeout"] = vFn + + v.FldValidators["mtls_choice.use_mtls"] = ves_io_schema_views.DownstreamTlsValidationContextValidator().Validate + + v.FldValidators["tls_config"] = ves_io_schema_views.TlsConfigValidator().Validate + + v.FldValidators["header_transformation_type"] = ves_io_schema.HeaderTransformationTypeValidator().Validate + + v.FldValidators["http_protocol_options"] = ves_io_schema_virtual_host.HttpProtocolOptionsValidator().Validate + + return v +}() + +func ProxyTypeHttpsAutoCertsValidator() db.Validator { + return DefaultProxyTypeHttpsAutoCertsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Query) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Query) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Query) DeepCopy() *Query { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Query{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Query) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Query) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return QueryValidator().Validate(ctx, m, opts...) +} + +type ValidateQuery struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateQuery) ValueTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for value_type") + } + return validatorFn, nil +} + +func (v *ValidateQuery) ValueTypeExactValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ExactValue, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for exact_value") + } + return oValidatorFn_ExactValue, nil +} +func (v *ValidateQuery) ValueTypeRegexValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_RegexValue, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for regex_value") } + return oValidatorFn_RegexValue, nil +} - switch m.GetTrustClientIpHeadersChoice().(type) { - case *ReplaceSpecType_DisableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("disable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_EnableTrustClientIpHeaders: - if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { - val := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders - vOpts := append(opts, - db.WithValidateField("trust_client_ip_headers_choice"), - db.WithValidateField("enable_trust_client_ip_headers"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +func (v *ValidateQuery) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Query) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Query got type %s", t) } - + } + if m == nil { + return nil } - if fv, exists := v.FldValidators["trusted_clients"]; exists { - vOpts := append(opts, db.WithValidateField("trusted_clients")) - if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["user_id_choice"]; exists { - val := m.GetUserIdChoice() + if fv, exists := v.FldValidators["value_type"]; exists { + val := m.GetValueType() vOpts := append(opts, - db.WithValidateField("user_id_choice"), + db.WithValidateField("value_type"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetUserIdChoice().(type) { - case *ReplaceSpecType_UserIdentification: - if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { - val := m.GetUserIdChoice().(*ReplaceSpecType_UserIdentification).UserIdentification - vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_identification"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ReplaceSpecType_UserIdClientIp: - if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { - val := m.GetUserIdChoice().(*ReplaceSpecType_UserIdClientIp).UserIdClientIp + switch m.GetValueType().(type) { + case *Query_ExactValue: + if fv, exists := v.FldValidators["value_type.exact_value"]; exists { + val := m.GetValueType().(*Query_ExactValue).ExactValue vOpts := append(opts, - db.WithValidateField("user_id_choice"), - db.WithValidateField("user_id_client_ip"), + db.WithValidateField("value_type"), + db.WithValidateField("exact_value"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - - } - - if fv, exists := v.FldValidators["waf_choice"]; exists { - val := m.GetWafChoice() - vOpts := append(opts, - db.WithValidateField("waf_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetWafChoice().(type) { - case *ReplaceSpecType_DisableWaf: - if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { - val := m.GetWafChoice().(*ReplaceSpecType_DisableWaf).DisableWaf + case *Query_RegexValue: + if fv, exists := v.FldValidators["value_type.regex_value"]; exists { + val := m.GetValueType().(*Query_RegexValue).RegexValue vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("disable_waf"), + db.WithValidateField("value_type"), + db.WithValidateField("regex_value"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ReplaceSpecType_AppFirewall: - if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { - val := m.GetWafChoice().(*ReplaceSpecType_AppFirewall).AppFirewall + case *Query_CheckPresence: + if fv, exists := v.FldValidators["value_type.check_presence"]; exists { + val := m.GetValueType().(*Query_CheckPresence).CheckPresence vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("app_firewall"), + db.WithValidateField("value_type"), + db.WithValidateField("check_presence"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -25027,20 +14177,12 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } - if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { - vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) - if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { - return err - } - - } - return nil } // Well-known symbol for default validator implementation -var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { - v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultQueryValidator = func() *ValidateQuery { + v := &ValidateQuery{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -25050,1086 +14192,1222 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler - rulesAdvertiseChoice := map[string]string{ + vrhValueType := v.ValueTypeValidationRuleHandler + rulesValueType := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) + vFn, err = vrhValueType(rulesValueType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.advertise_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for Query.value_type: %s", err) panic(errMsg) } - v.FldValidators["advertise_choice"] = vFn + v.FldValidators["value_type"] = vFn - vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler - rulesApiDefinitionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhValueTypeExactValue := v.ValueTypeExactValueValidationRuleHandler + rulesValueTypeExactValue := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", } - vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) + vFnMap["value_type.exact_value"], err = vrhValueTypeExactValue(rulesValueTypeExactValue) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.api_definition_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field Query.value_type_exact_value: %s", err) panic(errMsg) } - v.FldValidators["api_definition_choice"] = vFn - - vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler - rulesApiDiscoveryChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhValueTypeRegexValue := v.ValueTypeRegexValueValidationRuleHandler + rulesValueTypeRegexValue := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true", } - vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + vFnMap["value_type.regex_value"], err = vrhValueTypeRegexValue(rulesValueTypeRegexValue) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.api_discovery_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field Query.value_type_regex_value: %s", err) panic(errMsg) } - v.FldValidators["api_discovery_choice"] = vFn - vrhChallengeType := v.ChallengeTypeValidationRuleHandler - rulesChallengeType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + v.FldValidators["value_type.exact_value"] = vFnMap["value_type.exact_value"] + v.FldValidators["value_type.regex_value"] = vFnMap["value_type.regex_value"] + + return v +}() + +func QueryValidator() db.Validator { + return DefaultQueryValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ReplaceSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil } - vFn, err = vrhChallengeType(rulesChallengeType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.challenge_type: %s", err) - panic(errMsg) + + if err := m.GetHttps().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.https") } - v.FldValidators["challenge_type"] = vFn - vrhDdosDetectionChoice := v.DdosDetectionChoiceValidationRuleHandler - rulesDdosDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + for idx, e := range m.GetRoutes() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.routes idx %v", idx) + } } - vFn, err = vrhDdosDetectionChoice(rulesDdosDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.ddos_detection_choice: %s", err) - panic(errMsg) + + if err := m.GetMoreOption().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.more_option") } - v.FldValidators["ddos_detection_choice"] = vFn - vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler - rulesHashPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + if err := m.GetDefaultPool().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.default_pool") } - vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.hash_policy_choice: %s", err) - panic(errMsg) + + if err := m.GetJwtValidation().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.jwt_validation") } - v.FldValidators["hash_policy_choice"] = vFn - vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler - rulesL7DdosAutoMitigationAction := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + return nil +} + +func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { + if m == nil { + return nil } - vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) + ser, err := m.Marshal() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.l7_ddos_auto_mitigation_action: %s", err) - panic(errMsg) - } - v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn - - vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler - rulesLoadbalancerType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + return nil } - vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) + c := &ReplaceSpecType{} + err = c.Unmarshal(ser) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.loadbalancer_type: %s", err) - panic(errMsg) + return nil } - v.FldValidators["loadbalancer_type"] = vFn + return c +} - vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler - rulesMaliciousUserDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.malicious_user_detection_choice: %s", err) - panic(errMsg) +func (m *ReplaceSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil } - v.FldValidators["malicious_user_detection_choice"] = vFn + return m.DeepCopy() +} - vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler - rulesRateLimitChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", +func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.rate_limit_choice: %s", err) - panic(errMsg) + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetAdvertiseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetAdvertiseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["rate_limit_choice"] = vFn - vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler - rulesServicePolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + if fdrInfos, err := m.GetApiDefinitionChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiDefinitionChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.service_policy_choice: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetApiProtectionRulesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetApiProtectionRulesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["service_policy_choice"] = vFn - vrhThreatIntelligenceChoice := v.ThreatIntelligenceChoiceValidationRuleHandler - rulesThreatIntelligenceChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + if fdrInfos, err := m.GetBotDefenseChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetBotDefenseChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhThreatIntelligenceChoice(rulesThreatIntelligenceChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.threat_intelligence_choice: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetChallengeTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetChallengeTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["threat_intelligence_choice"] = vFn - vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler - rulesTrustClientIpHeadersChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + if fdrInfos, err := m.GetDefaultRoutePoolsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePoolsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.trust_client_ip_headers_choice: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetLoadbalancerTypeDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetLoadbalancerTypeDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["trust_client_ip_headers_choice"] = vFn - vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler - rulesUserIdChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + if fdrInfos, err := m.GetMaliciousUserMitigationDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMaliciousUserMitigationDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhUserIdChoice(rulesUserIdChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.user_id_choice: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetMoreOptionDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMoreOptionDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["user_id_choice"] = vFn - vrhWafChoice := v.WafChoiceValidationRuleHandler - rulesWafChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + if fdrInfos, err := m.GetOriginPoolChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhWafChoice(rulesWafChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.waf_choice: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetOriginServerSubsetRuleListDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleListDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["waf_choice"] = vFn - vrhDomains := v.DomainsValidationRuleHandler - rulesDomains := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.items.string.max_len": "256", - "ves.io.schema.rules.repeated.items.string.min_len": "1", - "ves.io.schema.rules.repeated.items.string.vh_domain": "true", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + if fdrInfos, err := m.GetRateLimitChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRateLimitChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhDomains(rulesDomains) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.domains: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetRoutesDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetRoutesDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["domains"] = vFn - vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler - rulesDefaultRoutePools := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "8", - "ves.io.schema.rules.repeated.unique": "true", + if fdrInfos, err := m.GetServicePolicyChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetServicePolicyChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.default_route_pools: %s", err) - panic(errMsg) + + if fdrInfos, err := m.GetUserIdChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetUserIdChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - v.FldValidators["default_route_pools"] = vFn - vrhRoutes := v.RoutesValidationRuleHandler - rulesRoutes := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique": "true", + if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - vFn, err = vrhRoutes(rulesRoutes) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.routes: %s", err) - panic(errMsg) + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetAdvertiseChoice() == nil { + return nil, nil } - v.FldValidators["routes"] = vFn + switch m.GetAdvertiseChoice().(type) { + case *ReplaceSpecType_AdvertiseOnPublic: - vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler - rulesWafExclusionRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", + drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_on_public." + dri.DRField + } + return drInfos, err + + case *ReplaceSpecType_AdvertiseCustom: + + drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_custom." + dri.DRField + } + return drInfos, err + + case *ReplaceSpecType_DoNotAdvertise: + + return nil, nil + + case *ReplaceSpecType_AdvertiseOnPublicDefaultVip: + + return nil, nil + + default: + return nil, nil } - vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.waf_exclusion_rules: %s", err) - panic(errMsg) + +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetApiDefinitionChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiDefinitionChoice() == nil { + return nil, nil } - v.FldValidators["waf_exclusion_rules"] = vFn + switch m.GetApiDefinitionChoice().(type) { + case *ReplaceSpecType_ApiDefinitions: + + drInfos, err := m.GetApiDefinitions().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiDefinitions().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_definitions." + dri.DRField + } + return drInfos, err + + case *ReplaceSpecType_ApiSpecification: + + drInfos, err := m.GetApiSpecification().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiSpecification().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_specification." + dri.DRField + } + return drInfos, err + + case *ReplaceSpecType_DisableApiDefinition: + + return nil, nil + + case *ReplaceSpecType_ApiDefinition: + + vref := m.GetApiDefinition() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("api_definition.Object") + dri := db.DRefInfo{ + RefdType: "api_definition.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "api_definition", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil - vrhBlockedClients := v.BlockedClientsValidationRuleHandler - rulesBlockedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhBlockedClients(rulesBlockedClients) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.blocked_clients: %s", err) - panic(errMsg) + default: + return nil, nil } - v.FldValidators["blocked_clients"] = vFn - vrhTrustedClients := v.TrustedClientsValidationRuleHandler - rulesTrustedClients := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhTrustedClients(rulesTrustedClients) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.trusted_clients: %s", err) - panic(errMsg) - } - v.FldValidators["trusted_clients"] = vFn +} - vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler - rulesDdosMitigationRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "256", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.ddos_mitigation_rules: %s", err) - panic(errMsg) +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetApiProtectionRulesDRefInfo() ([]db.DRefInfo, error) { + if m.GetApiProtectionRules() == nil { + return nil, nil } - v.FldValidators["ddos_mitigation_rules"] = vFn - vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler - rulesDataGuardRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", - } - vFn, err = vrhDataGuardRules(rulesDataGuardRules) + drInfos, err := m.GetApiProtectionRules().GetDRefInfo() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.data_guard_rules: %s", err) - panic(errMsg) - } - v.FldValidators["data_guard_rules"] = vFn - - vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler - rulesGraphqlRules := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "64", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", + return nil, errors.Wrap(err, "GetApiProtectionRules().GetDRefInfo() FAILED") } - vFn, err = vrhGraphqlRules(rulesGraphqlRules) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.graphql_rules: %s", err) - panic(errMsg) + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_protection_rules." + dri.DRField } - v.FldValidators["graphql_rules"] = vFn + return drInfos, err - vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler - rulesProtectedCookies := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhProtectedCookies(rulesProtectedCookies) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.protected_cookies: %s", err) - panic(errMsg) +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetBotDefenseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetBotDefenseChoice() == nil { + return nil, nil } - v.FldValidators["protected_cookies"] = vFn + switch m.GetBotDefenseChoice().(type) { + case *ReplaceSpecType_DisableBotDefense: - v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate - v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate + return nil, nil - v.FldValidators["api_definition_choice.api_definitions"] = ApiDefinitionListValidator().Validate - v.FldValidators["api_definition_choice.api_specification"] = APISpecificationSettingsValidator().Validate - v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + case *ReplaceSpecType_BotDefense: - v.FldValidators["api_discovery_choice.enable_api_discovery"] = ApiDiscoverySettingValidator().Validate + return nil, nil - v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate - v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate + case *ReplaceSpecType_BotDefenseAdvanced: - v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate - v.FldValidators["challenge_type.policy_based_challenge"] = PolicyBasedChallengeValidator().Validate - v.FldValidators["challenge_type.enable_challenge"] = EnableChallengeValidator().Validate + drInfos, err := m.GetBotDefenseAdvanced().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetBotDefenseAdvanced().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "bot_defense_advanced." + dri.DRField + } + return drInfos, err - v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate + default: + return nil, nil + } - v.FldValidators["ddos_detection_choice.enable_ddos_detection"] = EnableDDoSDetectionSettingValidator().Validate +} - v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate - v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetChallengeTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetChallengeType() == nil { + return nil, nil + } + switch m.GetChallengeType().(type) { + case *ReplaceSpecType_JsChallenge: - v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = IPThreatCategoryListTypeValidator().Validate + return nil, nil - v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + case *ReplaceSpecType_CaptchaChallenge: - v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate - v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate - v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate + return nil, nil - v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate + case *ReplaceSpecType_NoChallenge: - v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate - v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate + return nil, nil - v.FldValidators["rate_limit_choice.rate_limit"] = RateLimitConfigTypeValidator().Validate - v.FldValidators["rate_limit_choice.api_rate_limit"] = APIRateLimitValidator().Validate + case *ReplaceSpecType_PolicyBasedChallenge: - v.FldValidators["service_policy_choice.active_service_policies"] = ServicePolicyListValidator().Validate + drInfos, err := m.GetPolicyBasedChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetPolicyBasedChallenge().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "policy_based_challenge." + dri.DRField + } + return drInfos, err - v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate + case *ReplaceSpecType_EnableChallenge: - v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate + drInfos, err := m.GetEnableChallenge().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetEnableChallenge().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "enable_challenge." + dri.DRField + } + return drInfos, err - v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + default: + return nil, nil + } - v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate +} - v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetDefaultRoutePoolsDRefInfo() ([]db.DRefInfo, error) { + if m.GetDefaultRoutePools() == nil { + return nil, nil + } - v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate + var drInfos []db.DRefInfo + for idx, e := range m.GetDefaultRoutePools() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultRoutePools() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("default_route_pools[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil - v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate +} - v.FldValidators["api_protection_rules"] = APIProtectionRulesValidator().Validate +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetLoadbalancerTypeDRefInfo() ([]db.DRefInfo, error) { + if m.GetLoadbalancerType() == nil { + return nil, nil + } + switch m.GetLoadbalancerType().(type) { + case *ReplaceSpecType_Http: - v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate + return nil, nil - v.FldValidators["jwt_validation"] = JWTValidationValidator().Validate + case *ReplaceSpecType_Https: - v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate + drInfos, err := m.GetHttps().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttps().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https." + dri.DRField + } + return drInfos, err - return v -}() + case *ReplaceSpecType_HttpsAutoCert: -func ReplaceSpecTypeValidator() db.Validator { - return DefaultReplaceSpecTypeValidator -} + drInfos, err := m.GetHttpsAutoCert().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetHttpsAutoCert().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "https_auto_cert." + dri.DRField + } + return drInfos, err -// augmented methods on protoc/std generated struct + default: + return nil, nil + } -func (m *RequestBody) ToJSON() (string, error) { - return codec.ToJSON(m) } -func (m *RequestBody) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (m *ReplaceSpecType) GetMaliciousUserMitigationDRefInfo() ([]db.DRefInfo, error) { -func (m *RequestBody) DeepCopy() *RequestBody { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &RequestBody{} - err = c.Unmarshal(ser) - if err != nil { - return nil + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil } - return c -} - -func (m *RequestBody) DeepCopyProto() proto.Message { - if m == nil { - return nil + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("malicious_user_mitigation.Object") + dri := db.DRefInfo{ + RefdType: "malicious_user_mitigation.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "malicious_user_mitigation", + Ref: vdRef, } - return m.DeepCopy() -} - -func (m *RequestBody) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RequestBodyValidator().Validate(ctx, m, opts...) -} + return []db.DRefInfo{dri}, nil -type ValidateRequestBody struct { - FldValidators map[string]db.ValidatorFunc } -func (v *ValidateRequestBody) ValueTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) +// GetMaliciousUserMitigationDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ReplaceSpecType) GetMaliciousUserMitigationDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "malicious_user_mitigation.Object") if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for value_type") + return nil, errors.Wrap(err, "Cannot find type for kind: malicious_user_mitigation") } - return validatorFn, nil -} -func (v *ValidateRequestBody) ValueTypeExactValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_ExactValue, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for exact_value") + vref := m.GetMaliciousUserMitigation() + if vref == nil { + return nil, nil } - return oValidatorFn_ExactValue, nil -} -func (v *ValidateRequestBody) ValueTypeRegexValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_RegexValue, err := db.NewStringValidationRuleHandler(rules) + ref := &ves_io_schema.ObjectRefType{ + Kind: "malicious_user_mitigation.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for regex_value") + return nil, errors.Wrap(err, "Getting referred entry") } - return oValidatorFn_RegexValue, nil + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil } -func (v *ValidateRequestBody) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RequestBody) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *RequestBody got type %s", t) - } - } - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetMoreOptionDRefInfo() ([]db.DRefInfo, error) { + if m.GetMoreOption() == nil { + return nil, nil } - if fv, exists := v.FldValidators["name"]; exists { + drInfos, err := m.GetMoreOption().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMoreOption().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "more_option." + dri.DRField + } + return drInfos, err - vOpts := append(opts, db.WithValidateField("name")) - if err := fv(ctx, m.GetName(), vOpts...); err != nil { - return err - } +} +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetOriginPoolChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPoolChoice() == nil { + return nil, nil } + switch m.GetOriginPoolChoice().(type) { + case *ReplaceSpecType_DefaultPool: - if fv, exists := v.FldValidators["value_type"]; exists { - val := m.GetValueType() - vOpts := append(opts, - db.WithValidateField("value_type"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + drInfos, err := m.GetDefaultPool().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPool().GetDRefInfo() FAILED") } - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool." + dri.DRField + } + return drInfos, err - switch m.GetValueType().(type) { - case *RequestBody_ExactValue: - if fv, exists := v.FldValidators["value_type.exact_value"]; exists { - val := m.GetValueType().(*RequestBody_ExactValue).ExactValue - vOpts := append(opts, - db.WithValidateField("value_type"), - db.WithValidateField("exact_value"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + case *ReplaceSpecType_DefaultPoolList: + + drInfos, err := m.GetDefaultPoolList().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetDefaultPoolList().GetDRefInfo() FAILED") } - case *RequestBody_RegexValue: - if fv, exists := v.FldValidators["value_type.regex_value"]; exists { - val := m.GetValueType().(*RequestBody_RegexValue).RegexValue - vOpts := append(opts, - db.WithValidateField("value_type"), - db.WithValidateField("regex_value"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "default_pool_list." + dri.DRField } + return drInfos, err + default: + return nil, nil } - return nil } -// Well-known symbol for default validator implementation -var DefaultRequestBodyValidator = func() *ValidateRequestBody { - v := &ValidateRequestBody{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhValueType := v.ValueTypeValidationRuleHandler - rulesValueType := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhValueType(rulesValueType) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RequestBody.value_type: %s", err) - panic(errMsg) +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetOriginServerSubsetRuleListDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginServerSubsetRuleList() == nil { + return nil, nil } - v.FldValidators["value_type"] = vFn - vrhValueTypeExactValue := v.ValueTypeExactValueValidationRuleHandler - rulesValueTypeExactValue := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - "ves.io.schema.rules.string.min_len": "1", - } - vFnMap["value_type.exact_value"], err = vrhValueTypeExactValue(rulesValueTypeExactValue) + drInfos, err := m.GetOriginServerSubsetRuleList().GetDRefInfo() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RequestBody.value_type_exact_value: %s", err) - panic(errMsg) - } - vrhValueTypeRegexValue := v.ValueTypeRegexValueValidationRuleHandler - rulesValueTypeRegexValue := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - "ves.io.schema.rules.string.min_len": "1", - "ves.io.schema.rules.string.regex": "true", + return nil, errors.Wrap(err, "GetOriginServerSubsetRuleList().GetDRefInfo() FAILED") } - vFnMap["value_type.regex_value"], err = vrhValueTypeRegexValue(rulesValueTypeRegexValue) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RequestBody.value_type_regex_value: %s", err) - panic(errMsg) + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "origin_server_subset_rule_list." + dri.DRField } + return drInfos, err - v.FldValidators["value_type.exact_value"] = vFnMap["value_type.exact_value"] - v.FldValidators["value_type.regex_value"] = vFnMap["value_type.regex_value"] +} - return v -}() +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetRateLimitChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetRateLimitChoice() == nil { + return nil, nil + } + switch m.GetRateLimitChoice().(type) { + case *ReplaceSpecType_DisableRateLimit: -func RequestBodyValidator() db.Validator { - return DefaultRequestBodyValidator -} + return nil, nil -// augmented methods on protoc/std generated struct + case *ReplaceSpecType_RateLimit: -func (m *ReservedClaims) ToJSON() (string, error) { - return codec.ToJSON(m) -} + drInfos, err := m.GetRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "rate_limit." + dri.DRField + } + return drInfos, err -func (m *ReservedClaims) ToYAML() (string, error) { - return codec.ToYAML(m) -} + case *ReplaceSpecType_ApiRateLimit: -func (m *ReservedClaims) DeepCopy() *ReservedClaims { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ReservedClaims{} - err = c.Unmarshal(ser) - if err != nil { - return nil + drInfos, err := m.GetApiRateLimit().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetApiRateLimit().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "api_rate_limit." + dri.DRField + } + return drInfos, err + + default: + return nil, nil } - return c + } -func (m *ReservedClaims) DeepCopyProto() proto.Message { - if m == nil { - return nil +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetRoutesDRefInfo() ([]db.DRefInfo, error) { + if m.GetRoutes() == nil { + return nil, nil } - return m.DeepCopy() -} -func (m *ReservedClaims) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ReservedClaimsValidator().Validate(ctx, m, opts...) -} + var drInfos []db.DRefInfo + for idx, e := range m.GetRoutes() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetRoutes() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("routes[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil -type ValidateReservedClaims struct { - FldValidators map[string]db.ValidatorFunc } -func (v *ValidateReservedClaims) AudienceValidationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for audience_validation") +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetServicePolicyChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetServicePolicyChoice() == nil { + return nil, nil } - return validatorFn, nil -} + switch m.GetServicePolicyChoice().(type) { + case *ReplaceSpecType_ServicePoliciesFromNamespace: -func (v *ValidateReservedClaims) IssuerValidationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for issuer_validation") - } - return validatorFn, nil -} + return nil, nil -func (v *ValidateReservedClaims) ValidatePeriodValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for validate_period") - } - return validatorFn, nil -} + case *ReplaceSpecType_NoServicePolicies: -func (v *ValidateReservedClaims) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ReservedClaims) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ReservedClaims got type %s", t) - } - } - if m == nil { - return nil - } + return nil, nil - if fv, exists := v.FldValidators["audience_validation"]; exists { - val := m.GetAudienceValidation() - vOpts := append(opts, - db.WithValidateField("audience_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + case *ReplaceSpecType_ActiveServicePolicies: - switch m.GetAudienceValidation().(type) { - case *ReservedClaims_AudienceDisable: - if fv, exists := v.FldValidators["audience_validation.audience_disable"]; exists { - val := m.GetAudienceValidation().(*ReservedClaims_AudienceDisable).AudienceDisable - vOpts := append(opts, - db.WithValidateField("audience_validation"), - db.WithValidateField("audience_disable"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetActiveServicePolicies().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetActiveServicePolicies().GetDRefInfo() FAILED") } - case *ReservedClaims_Audience: - if fv, exists := v.FldValidators["audience_validation.audience"]; exists { - val := m.GetAudienceValidation().(*ReservedClaims_Audience).Audience - vOpts := append(opts, - db.WithValidateField("audience_validation"), - db.WithValidateField("audience"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "active_service_policies." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["issuer_validation"]; exists { - val := m.GetIssuerValidation() - vOpts := append(opts, - db.WithValidateField("issuer_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } +} - switch m.GetIssuerValidation().(type) { - case *ReservedClaims_IssuerDisable: - if fv, exists := v.FldValidators["issuer_validation.issuer_disable"]; exists { - val := m.GetIssuerValidation().(*ReservedClaims_IssuerDisable).IssuerDisable - vOpts := append(opts, - db.WithValidateField("issuer_validation"), - db.WithValidateField("issuer_disable"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +func (m *ReplaceSpecType) GetUserIdChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetUserIdChoice().(type) { + case *ReplaceSpecType_UserIdentification: + + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil } - case *ReservedClaims_Issuer: - if fv, exists := v.FldValidators["issuer_validation.issuer"]; exists { - val := m.GetIssuerValidation().(*ReservedClaims_Issuer).Issuer - vOpts := append(opts, - db.WithValidateField("issuer_validation"), - db.WithValidateField("issuer"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("user_identification.Object") + dri := db.DRefInfo{ + RefdType: "user_identification.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "user_identification", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil + + case *ReplaceSpecType_UserIdClientIp: + + return nil, nil + default: + return nil, nil } +} - if fv, exists := v.FldValidators["validate_period"]; exists { - val := m.GetValidatePeriod() - vOpts := append(opts, - db.WithValidateField("validate_period"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err +// GetUserIdChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ReplaceSpecType) GetUserIdChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetUserIdChoice().(type) { + case *ReplaceSpecType_UserIdentification: + refdType, err := d.TypeForEntryKind("", "", "user_identification.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: user_identification") } - } - switch m.GetValidatePeriod().(type) { - case *ReservedClaims_ValidatePeriodDisable: - if fv, exists := v.FldValidators["validate_period.validate_period_disable"]; exists { - val := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodDisable).ValidatePeriodDisable - vOpts := append(opts, - db.WithValidateField("validate_period"), - db.WithValidateField("validate_period_disable"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vref := m.GetUserIdentification() + if vref == nil { + return nil, nil } - case *ReservedClaims_ValidatePeriodEnable: - if fv, exists := v.FldValidators["validate_period.validate_period_enable"]; exists { - val := m.GetValidatePeriod().(*ReservedClaims_ValidatePeriodEnable).ValidatePeriodEnable - vOpts := append(opts, - db.WithValidateField("validate_period"), - db.WithValidateField("validate_period_enable"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + ref := &ves_io_schema.ObjectRefType{ + Kind: "user_identification.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + case *ReplaceSpecType_UserIdClientIp: } - return nil + return entries, nil } -// Well-known symbol for default validator implementation -var DefaultReservedClaimsValidator = func() *ValidateReservedClaims { - v := &ValidateReservedClaims{FldValidators: map[string]db.ValidatorFunc{}} +func (m *ReplaceSpecType) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetWafChoice().(type) { + case *ReplaceSpecType_DisableWaf: - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + return nil, nil - vrhAudienceValidation := v.AudienceValidationValidationRuleHandler - rulesAudienceValidation := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhAudienceValidation(rulesAudienceValidation) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReservedClaims.audience_validation: %s", err) - panic(errMsg) - } - v.FldValidators["audience_validation"] = vFn + case *ReplaceSpecType_AppFirewall: - vrhIssuerValidation := v.IssuerValidationValidationRuleHandler - rulesIssuerValidation := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhIssuerValidation(rulesIssuerValidation) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReservedClaims.issuer_validation: %s", err) - panic(errMsg) - } - v.FldValidators["issuer_validation"] = vFn + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil - vrhValidatePeriod := v.ValidatePeriodValidationRuleHandler - rulesValidatePeriod := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhValidatePeriod(rulesValidatePeriod) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ReservedClaims.validate_period: %s", err) - panic(errMsg) + default: + return nil, nil } - v.FldValidators["validate_period"] = vFn +} - v.FldValidators["audience_validation.audience"] = AudiencesValidator().Validate +// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ReplaceSpecType) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - return v -}() + switch m.GetWafChoice().(type) { + case *ReplaceSpecType_DisableWaf: -func ReservedClaimsValidator() db.Validator { - return DefaultReservedClaimsValidator -} + case *ReplaceSpecType_AppFirewall: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + } -// augmented methods on protoc/std generated struct + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } -func (m *RouteSimpleAdvancedOptions) ToJSON() (string, error) { - return codec.ToJSON(m) -} + } -func (m *RouteSimpleAdvancedOptions) ToYAML() (string, error) { - return codec.ToYAML(m) + return entries, nil } -// Redact squashes sensitive info in m (in-place) -func (m *RouteSimpleAdvancedOptions) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } +type ValidateReplaceSpecType struct { + FldValidators map[string]db.ValidatorFunc +} - for idx, e := range m.GetRequestHeadersToAdd() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting RouteSimpleAdvancedOptions.request_headers_to_add idx %v", idx) - } +func (v *ValidateReplaceSpecType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") } + return validatorFn, nil +} - for idx, e := range m.GetResponseHeadersToAdd() { - if err := e.Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting RouteSimpleAdvancedOptions.response_headers_to_add idx %v", idx) - } +func (v *ValidateReplaceSpecType) ApiDefinitionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_definition_choice") } + return validatorFn, nil +} - return nil +func (v *ValidateReplaceSpecType) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") + } + return validatorFn, nil } -func (m *RouteSimpleAdvancedOptions) DeepCopy() *RouteSimpleAdvancedOptions { - if m == nil { - return nil +func (v *ValidateReplaceSpecType) ChallengeTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for challenge_type") } - ser, err := m.Marshal() + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") } - c := &RouteSimpleAdvancedOptions{} - err = c.Unmarshal(ser) + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) L7DdosAutoMitigationActionValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for l7_ddos_auto_mitigation_action") } - return c + return validatorFn, nil } -func (m *RouteSimpleAdvancedOptions) DeepCopyProto() proto.Message { - if m == nil { - return nil +func (v *ValidateReplaceSpecType) LoadbalancerTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for loadbalancer_type") } - return m.DeepCopy() + return validatorFn, nil } -func (m *RouteSimpleAdvancedOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteSimpleAdvancedOptionsValidator().Validate(ctx, m, opts...) +func (v *ValidateReplaceSpecType) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") + } + return validatorFn, nil } -func (m *RouteSimpleAdvancedOptions) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil +func (v *ValidateReplaceSpecType) RateLimitChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limit_choice") } + return validatorFn, nil +} - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetMirroringChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetMirroringChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) +func (v *ValidateReplaceSpecType) ServicePolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for service_policy_choice") } + return validatorFn, nil +} - if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) +func (v *ValidateReplaceSpecType) ThreatMeshChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for threat_mesh_choice") } + return validatorFn, nil +} - return drInfos, nil +func (v *ValidateReplaceSpecType) TrustClientIpHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for trust_client_ip_headers_choice") + } + return validatorFn, nil +} +func (v *ValidateReplaceSpecType) UserIdChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for user_id_choice") + } + return validatorFn, nil } -// GetDRefInfo for the field's type -func (m *RouteSimpleAdvancedOptions) GetMirroringChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetMirroringChoice() == nil { - return nil, nil +func (v *ValidateReplaceSpecType) WafChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for waf_choice") } - switch m.GetMirroringChoice().(type) { - case *RouteSimpleAdvancedOptions_DisableMirroring: + return validatorFn, nil +} - return nil, nil +func (v *ValidateReplaceSpecType) DomainsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - case *RouteSimpleAdvancedOptions_MirrorPolicy: + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for domains") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for domains") + } - drInfos, err := m.GetMirrorPolicy().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetMirrorPolicy().GetDRefInfo() FAILED") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "mirror_policy." + dri.DRField + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) } - return drInfos, err - - default: - return nil, nil + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated domains") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items domains") + } + return nil } + return validatorFn, nil } -func (m *RouteSimpleAdvancedOptions) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { - switch m.GetWafChoice().(type) { - case *RouteSimpleAdvancedOptions_InheritedWaf: - - return nil, nil - - case *RouteSimpleAdvancedOptions_DisableWaf: - - return nil, nil +func (v *ValidateReplaceSpecType) DefaultRoutePoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - case *RouteSimpleAdvancedOptions_AppFirewall: + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for default_route_pools") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for default_route_pools") + } - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("app_firewall.Object") - dri := db.DRefInfo{ - RefdType: "app_firewall.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "app_firewall", - Ref: vdRef, + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - return []db.DRefInfo{dri}, nil - - default: - return nil, nil + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated default_route_pools") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items default_route_pools") + } + return nil } -} - -// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *RouteSimpleAdvancedOptions) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - switch m.GetWafChoice().(type) { - case *RouteSimpleAdvancedOptions_InheritedWaf: + return validatorFn, nil +} - case *RouteSimpleAdvancedOptions_DisableWaf: +func (v *ValidateReplaceSpecType) RoutesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - case *RouteSimpleAdvancedOptions_AppFirewall: - refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for routes") + } + itemsValidatorFn := func(ctx context.Context, elems []*RouteType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := RouteTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } - - vref := m.GetAppFirewall() - if vref == nil { - return nil, nil + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for routes") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*RouteType) + if !ok { + return fmt.Errorf("Repeated validation expected []*RouteType, got %T", val) } - ref := &ves_io_schema.ObjectRefType{ - Kind: "app_firewall.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated routes") } - if refdEnt != nil { - entries = append(entries, refdEnt) + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items routes") } - + return nil } - return entries, nil + return validatorFn, nil } -type ValidateRouteSimpleAdvancedOptions struct { - FldValidators map[string]db.ValidatorFunc -} +func (v *ValidateReplaceSpecType) WafExclusionRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateRouteSimpleAdvancedOptions) BufferChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for buffer_choice") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for waf_exclusion_rules") } - return validatorFn, nil -} - -func (v *ValidateRouteSimpleAdvancedOptions) ClusterRetractChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for cluster_retract_choice") + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleWafExclusionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_policy.SimpleWafExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - return validatorFn, nil -} - -func (v *ValidateRouteSimpleAdvancedOptions) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for waf_exclusion_rules") } - return validatorFn, nil -} -func (v *ValidateRouteSimpleAdvancedOptions) MirroringChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for mirroring_choice") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_policy.SimpleWafExclusionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleWafExclusionRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated waf_exclusion_rules") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items waf_exclusion_rules") + } + return nil } - return validatorFn, nil -} -func (v *ValidateRouteSimpleAdvancedOptions) RetryPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for retry_policy_choice") - } return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) RewriteChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rewrite_choice") - } - return validatorFn, nil -} +func (v *ValidateReplaceSpecType) BlockedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateRouteSimpleAdvancedOptions) RewriteChoicePrefixRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_PrefixRewrite, err := db.NewStringValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for prefix_rewrite") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for blocked_clients") } - return oValidatorFn_PrefixRewrite, nil -} - -func (v *ValidateRouteSimpleAdvancedOptions) SpdyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for spdy_choice") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for blocked_clients") } - return validatorFn, nil -} -func (v *ValidateRouteSimpleAdvancedOptions) WebsocketChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for websocket_choice") + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated blocked_clients") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items blocked_clients") + } + return nil } + return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) EndpointSubsetsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) TrustedClientsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemKeyRules := db.GetMapStringKeyRules(rules) - itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) - if err != nil { - return nil, errors.Wrap(err, "Item key ValidationRuleHandler for endpoint_subsets") - } - itemValRules := db.GetMapStringValueRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemValRules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item value ValidationRuleHandler for endpoint_subsets") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for trusted_clients") } - itemsValidatorFn := func(ctx context.Context, kv map[string]string, opts ...db.ValidateOpt) error { - for key, value := range kv { - if err := itemKeyFn(ctx, key, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views_common_waf.SimpleClientSrcRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := itemValFn(ctx, value, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + if err := ves_io_schema_views_common_waf.SimpleClientSrcRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } return nil } - mapValFn, err := db.NewMapValidationRuleHandler(rules) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Map ValidationRuleHandler for endpoint_subsets") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for trusted_clients") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.(map[string]string) + elems, ok := val.([]*ves_io_schema_views_common_waf.SimpleClientSrcRule) if !ok { - return fmt.Errorf("Map validation expected map[ string ]string, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views_common_waf.SimpleClientSrcRule, got %T", val) } - if err := mapValFn(ctx, len(elems), opts...); err != nil { - return errors.Wrap(err, "map endpoint_subsets") + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated trusted_clients") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items endpoint_subsets") + return errors.Wrap(err, "items trusted_clients") } return nil } @@ -26137,19 +15415,19 @@ func (v *ValidateRouteSimpleAdvancedOptions) EndpointSubsetsValidationRuleHandle return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) DdosMitigationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for request_headers_to_add") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for ddos_mitigation_rules") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*DDoSMitigationRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := DDoSMitigationRuleValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -26157,13 +15435,13 @@ func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToAddValidationRuleHa } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_add") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ddos_mitigation_rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + elems, ok := val.([]*DDoSMitigationRule) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) + return fmt.Errorf("Repeated validation expected []*DDoSMitigationRule, got %T", val) } l := []string{} for _, elem := range elems { @@ -26174,10 +15452,10 @@ func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToAddValidationRuleHa l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_headers_to_add") + return errors.Wrap(err, "repeated ddos_mitigation_rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_headers_to_add") + return errors.Wrap(err, "items ddos_mitigation_rules") } return nil } @@ -26185,41 +15463,47 @@ func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToAddValidationRuleHa return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) DataGuardRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for request_headers_to_remove") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for data_guard_rules") } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.SimpleDataGuardRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := ves_io_schema_policy.SimpleDataGuardRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_remove") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for data_guard_rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) + elems, ok := val.([]*ves_io_schema_policy.SimpleDataGuardRule) if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.SimpleDataGuardRule, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated request_headers_to_remove") + return errors.Wrap(err, "repeated data_guard_rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items request_headers_to_remove") + return errors.Wrap(err, "items data_guard_rules") } return nil } @@ -26227,19 +15511,19 @@ func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToRemoveValidationRul return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) GraphqlRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for response_headers_to_add") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for graphql_rules") } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_policy.GraphQLRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + if err := ves_io_schema_policy.GraphQLRuleValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -26247,13 +15531,13 @@ func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToAddValidationRuleH } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_add") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for graphql_rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + elems, ok := val.([]*ves_io_schema_policy.GraphQLRule) if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema_policy.GraphQLRule, got %T", val) } l := []string{} for _, elem := range elems { @@ -26264,10 +15548,10 @@ func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToAddValidationRuleH l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_headers_to_add") + return errors.Wrap(err, "repeated graphql_rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_headers_to_add") + return errors.Wrap(err, "items graphql_rules") } return nil } @@ -26275,41 +15559,47 @@ func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToAddValidationRuleH return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateReplaceSpecType) ProtectedCookiesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepStringItemRules(rules) - itemValFn, err := db.NewStringValidationRuleHandler(itemRules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Item ValidationRuleHandler for response_headers_to_remove") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_cookies") } - itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.CookieManipulationOptionType, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } + if err := ves_io_schema.CookieManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } return nil } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_remove") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_cookies") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]string) + elems, ok := val.([]*ves_io_schema.CookieManipulationOptionType) if !ok { - return fmt.Errorf("Repeated validation expected []string, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema.CookieManipulationOptionType, got %T", val) } l := []string{} for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated response_headers_to_remove") + return errors.Wrap(err, "repeated protected_cookies") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items response_headers_to_remove") + return errors.Wrap(err, "items protected_cookies") } return nil } @@ -26317,48 +15607,79 @@ func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToRemoveValidationRu return validatorFn, nil } -func (v *ValidateRouteSimpleAdvancedOptions) TimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for timeout") - } - - return validatorFn, nil -} - -func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteSimpleAdvancedOptions) +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *RouteSimpleAdvancedOptions got type %s", t) + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) } } if m == nil { return nil } - switch m.GetBotDefenseJavascriptInjectionChoice().(type) { - case *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection: - if fv, exists := v.FldValidators["bot_defense_javascript_injection_choice.inherited_bot_defense_javascript_injection"]; exists { - val := m.GetBotDefenseJavascriptInjectionChoice().(*RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection).InheritedBotDefenseJavascriptInjection + if fv, exists := v.FldValidators["add_location"]; exists { + + vOpts := append(opts, db.WithValidateField("add_location")) + if err := fv(ctx, m.GetAddLocation(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["advertise_choice"]; exists { + val := m.GetAdvertiseChoice() + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAdvertiseChoice().(type) { + case *ReplaceSpecType_AdvertiseOnPublic: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { + val := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublic).AdvertiseOnPublic vOpts := append(opts, - db.WithValidateField("bot_defense_javascript_injection_choice"), - db.WithValidateField("inherited_bot_defense_javascript_injection"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection: - if fv, exists := v.FldValidators["bot_defense_javascript_injection_choice.bot_defense_javascript_injection"]; exists { - val := m.GetBotDefenseJavascriptInjectionChoice().(*RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection).BotDefenseJavascriptInjection + case *ReplaceSpecType_AdvertiseCustom: + if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { + val := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseCustom).AdvertiseCustom vOpts := append(opts, - db.WithValidateField("bot_defense_javascript_injection_choice"), - db.WithValidateField("bot_defense_javascript_injection"), + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_custom"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_DoNotAdvertise: + if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { + val := m.GetAdvertiseChoice().(*ReplaceSpecType_DoNotAdvertise).DoNotAdvertise + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("do_not_advertise"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_AdvertiseOnPublicDefaultVip: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { + val := m.GetAdvertiseChoice().(*ReplaceSpecType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public_default_vip"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -26367,34 +15688,56 @@ func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm in } - if fv, exists := v.FldValidators["buffer_choice"]; exists { - val := m.GetBufferChoice() + if fv, exists := v.FldValidators["api_definition_choice"]; exists { + val := m.GetApiDefinitionChoice() vOpts := append(opts, - db.WithValidateField("buffer_choice"), + db.WithValidateField("api_definition_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetBufferChoice().(type) { - case *RouteSimpleAdvancedOptions_CommonBuffering: - if fv, exists := v.FldValidators["buffer_choice.common_buffering"]; exists { - val := m.GetBufferChoice().(*RouteSimpleAdvancedOptions_CommonBuffering).CommonBuffering + switch m.GetApiDefinitionChoice().(type) { + case *ReplaceSpecType_ApiDefinitions: + if fv, exists := v.FldValidators["api_definition_choice.api_definitions"]; exists { + val := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinitions).ApiDefinitions vOpts := append(opts, - db.WithValidateField("buffer_choice"), - db.WithValidateField("common_buffering"), + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definitions"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_BufferPolicy: - if fv, exists := v.FldValidators["buffer_choice.buffer_policy"]; exists { - val := m.GetBufferChoice().(*RouteSimpleAdvancedOptions_BufferPolicy).BufferPolicy + case *ReplaceSpecType_ApiSpecification: + if fv, exists := v.FldValidators["api_definition_choice.api_specification"]; exists { + val := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiSpecification).ApiSpecification vOpts := append(opts, - db.WithValidateField("buffer_choice"), - db.WithValidateField("buffer_policy"), + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_specification"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_DisableApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.disable_api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*ReplaceSpecType_DisableApiDefinition).DisableApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("disable_api_definition"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_ApiDefinition: + if fv, exists := v.FldValidators["api_definition_choice.api_definition"]; exists { + val := m.GetApiDefinitionChoice().(*ReplaceSpecType_ApiDefinition).ApiDefinition + vOpts := append(opts, + db.WithValidateField("api_definition_choice"), + db.WithValidateField("api_definition"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -26403,105 +15746,157 @@ func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm in } - if fv, exists := v.FldValidators["cluster_retract_choice"]; exists { - val := m.GetClusterRetractChoice() + if fv, exists := v.FldValidators["api_discovery_choice"]; exists { + val := m.GetApiDiscoveryChoice() + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetApiDiscoveryChoice().(type) { + case *ReplaceSpecType_EnableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.enable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*ReplaceSpecType_EnableApiDiscovery).EnableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("enable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_DisableApiDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.disable_api_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*ReplaceSpecType_DisableApiDiscovery).DisableApiDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("disable_api_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["api_protection_rules"]; exists { + + vOpts := append(opts, db.WithValidateField("api_protection_rules")) + if err := fv(ctx, m.GetApiProtectionRules(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["blocked_clients"]; exists { + vOpts := append(opts, db.WithValidateField("blocked_clients")) + if err := fv(ctx, m.GetBlockedClients(), vOpts...); err != nil { + return err + } + + } + + switch m.GetBotDefenseChoice().(type) { + case *ReplaceSpecType_DisableBotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.disable_bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*ReplaceSpecType_DisableBotDefense).DisableBotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("disable_bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_BotDefense: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense"]; exists { + val := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefense).BotDefense + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_BotDefenseAdvanced: + if fv, exists := v.FldValidators["bot_defense_choice.bot_defense_advanced"]; exists { + val := m.GetBotDefenseChoice().(*ReplaceSpecType_BotDefenseAdvanced).BotDefenseAdvanced + vOpts := append(opts, + db.WithValidateField("bot_defense_choice"), + db.WithValidateField("bot_defense_advanced"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["challenge_type"]; exists { + val := m.GetChallengeType() vOpts := append(opts, - db.WithValidateField("cluster_retract_choice"), + db.WithValidateField("challenge_type"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetClusterRetractChoice().(type) { - case *RouteSimpleAdvancedOptions_RetractCluster: - if fv, exists := v.FldValidators["cluster_retract_choice.retract_cluster"]; exists { - val := m.GetClusterRetractChoice().(*RouteSimpleAdvancedOptions_RetractCluster).RetractCluster + switch m.GetChallengeType().(type) { + case *ReplaceSpecType_JsChallenge: + if fv, exists := v.FldValidators["challenge_type.js_challenge"]; exists { + val := m.GetChallengeType().(*ReplaceSpecType_JsChallenge).JsChallenge vOpts := append(opts, - db.WithValidateField("cluster_retract_choice"), - db.WithValidateField("retract_cluster"), + db.WithValidateField("challenge_type"), + db.WithValidateField("js_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_DoNotRetractCluster: - if fv, exists := v.FldValidators["cluster_retract_choice.do_not_retract_cluster"]; exists { - val := m.GetClusterRetractChoice().(*RouteSimpleAdvancedOptions_DoNotRetractCluster).DoNotRetractCluster + case *ReplaceSpecType_CaptchaChallenge: + if fv, exists := v.FldValidators["challenge_type.captcha_challenge"]; exists { + val := m.GetChallengeType().(*ReplaceSpecType_CaptchaChallenge).CaptchaChallenge vOpts := append(opts, - db.WithValidateField("cluster_retract_choice"), - db.WithValidateField("do_not_retract_cluster"), + db.WithValidateField("challenge_type"), + db.WithValidateField("captcha_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - - } - - if fv, exists := v.FldValidators["cors_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("cors_policy")) - if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["csrf_policy"]; exists { - - vOpts := append(opts, db.WithValidateField("csrf_policy")) - if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["disable_location_add"]; exists { - - vOpts := append(opts, db.WithValidateField("disable_location_add")) - if err := fv(ctx, m.GetDisableLocationAdd(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["endpoint_subsets"]; exists { - vOpts := append(opts, db.WithValidateField("endpoint_subsets")) - if err := fv(ctx, m.GetEndpointSubsets(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["hash_policy_choice"]; exists { - val := m.GetHashPolicyChoice() - vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err + case *ReplaceSpecType_NoChallenge: + if fv, exists := v.FldValidators["challenge_type.no_challenge"]; exists { + val := m.GetChallengeType().(*ReplaceSpecType_NoChallenge).NoChallenge + vOpts := append(opts, + db.WithValidateField("challenge_type"), + db.WithValidateField("no_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - } - - switch m.GetHashPolicyChoice().(type) { - case *RouteSimpleAdvancedOptions_CommonHashPolicy: - if fv, exists := v.FldValidators["hash_policy_choice.common_hash_policy"]; exists { - val := m.GetHashPolicyChoice().(*RouteSimpleAdvancedOptions_CommonHashPolicy).CommonHashPolicy + case *ReplaceSpecType_PolicyBasedChallenge: + if fv, exists := v.FldValidators["challenge_type.policy_based_challenge"]; exists { + val := m.GetChallengeType().(*ReplaceSpecType_PolicyBasedChallenge).PolicyBasedChallenge vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("common_hash_policy"), + db.WithValidateField("challenge_type"), + db.WithValidateField("policy_based_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_SpecificHashPolicy: - if fv, exists := v.FldValidators["hash_policy_choice.specific_hash_policy"]; exists { - val := m.GetHashPolicyChoice().(*RouteSimpleAdvancedOptions_SpecificHashPolicy).SpecificHashPolicy + case *ReplaceSpecType_EnableChallenge: + if fv, exists := v.FldValidators["challenge_type.enable_challenge"]; exists { + val := m.GetChallengeType().(*ReplaceSpecType_EnableChallenge).EnableChallenge vOpts := append(opts, - db.WithValidateField("hash_policy_choice"), - db.WithValidateField("specific_hash_policy"), + db.WithValidateField("challenge_type"), + db.WithValidateField("enable_challenge"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -26510,34 +15905,24 @@ func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm in } - if fv, exists := v.FldValidators["mirroring_choice"]; exists { - val := m.GetMirroringChoice() - vOpts := append(opts, - db.WithValidateField("mirroring_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetMirroringChoice().(type) { - case *RouteSimpleAdvancedOptions_DisableMirroring: - if fv, exists := v.FldValidators["mirroring_choice.disable_mirroring"]; exists { - val := m.GetMirroringChoice().(*RouteSimpleAdvancedOptions_DisableMirroring).DisableMirroring + switch m.GetClientSideDefenseChoice().(type) { + case *ReplaceSpecType_DisableClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.disable_client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*ReplaceSpecType_DisableClientSideDefense).DisableClientSideDefense vOpts := append(opts, - db.WithValidateField("mirroring_choice"), - db.WithValidateField("disable_mirroring"), + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("disable_client_side_defense"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_MirrorPolicy: - if fv, exists := v.FldValidators["mirroring_choice.mirror_policy"]; exists { - val := m.GetMirroringChoice().(*RouteSimpleAdvancedOptions_MirrorPolicy).MirrorPolicy + case *ReplaceSpecType_ClientSideDefense: + if fv, exists := v.FldValidators["client_side_defense_choice.client_side_defense"]; exists { + val := m.GetClientSideDefenseChoice().(*ReplaceSpecType_ClientSideDefense).ClientSideDefense vOpts := append(opts, - db.WithValidateField("mirroring_choice"), - db.WithValidateField("mirror_policy"), + db.WithValidateField("client_side_defense_choice"), + db.WithValidateField("client_side_defense"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -26546,169 +15931,136 @@ func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm in } - if fv, exists := v.FldValidators["priority"]; exists { + if fv, exists := v.FldValidators["cors_policy"]; exists { - vOpts := append(opts, db.WithValidateField("priority")) - if err := fv(ctx, m.GetPriority(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("cors_policy")) + if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["request_headers_to_add"]; exists { - vOpts := append(opts, db.WithValidateField("request_headers_to_add")) - if err := fv(ctx, m.GetRequestHeadersToAdd(), vOpts...); err != nil { + if fv, exists := v.FldValidators["csrf_policy"]; exists { + + vOpts := append(opts, db.WithValidateField("csrf_policy")) + if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["request_headers_to_remove"]; exists { - vOpts := append(opts, db.WithValidateField("request_headers_to_remove")) - if err := fv(ctx, m.GetRequestHeadersToRemove(), vOpts...); err != nil { + if fv, exists := v.FldValidators["data_guard_rules"]; exists { + vOpts := append(opts, db.WithValidateField("data_guard_rules")) + if err := fv(ctx, m.GetDataGuardRules(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["response_headers_to_add"]; exists { - vOpts := append(opts, db.WithValidateField("response_headers_to_add")) - if err := fv(ctx, m.GetResponseHeadersToAdd(), vOpts...); err != nil { + if fv, exists := v.FldValidators["ddos_mitigation_rules"]; exists { + vOpts := append(opts, db.WithValidateField("ddos_mitigation_rules")) + if err := fv(ctx, m.GetDdosMitigationRules(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["response_headers_to_remove"]; exists { - vOpts := append(opts, db.WithValidateField("response_headers_to_remove")) - if err := fv(ctx, m.GetResponseHeadersToRemove(), vOpts...); err != nil { + if fv, exists := v.FldValidators["default_route_pools"]; exists { + vOpts := append(opts, db.WithValidateField("default_route_pools")) + if err := fv(ctx, m.GetDefaultRoutePools(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["retry_policy_choice"]; exists { - val := m.GetRetryPolicyChoice() - vOpts := append(opts, - db.WithValidateField("retry_policy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["domains"]; exists { + vOpts := append(opts, db.WithValidateField("domains")) + if err := fv(ctx, m.GetDomains(), vOpts...); err != nil { return err } + } - switch m.GetRetryPolicyChoice().(type) { - case *RouteSimpleAdvancedOptions_DefaultRetryPolicy: - if fv, exists := v.FldValidators["retry_policy_choice.default_retry_policy"]; exists { - val := m.GetRetryPolicyChoice().(*RouteSimpleAdvancedOptions_DefaultRetryPolicy).DefaultRetryPolicy - vOpts := append(opts, - db.WithValidateField("retry_policy_choice"), - db.WithValidateField("default_retry_policy"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *RouteSimpleAdvancedOptions_RetryPolicy: - if fv, exists := v.FldValidators["retry_policy_choice.retry_policy"]; exists { - val := m.GetRetryPolicyChoice().(*RouteSimpleAdvancedOptions_RetryPolicy).RetryPolicy - vOpts := append(opts, - db.WithValidateField("retry_policy_choice"), - db.WithValidateField("retry_policy"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *RouteSimpleAdvancedOptions_NoRetryPolicy: - if fv, exists := v.FldValidators["retry_policy_choice.no_retry_policy"]; exists { - val := m.GetRetryPolicyChoice().(*RouteSimpleAdvancedOptions_NoRetryPolicy).NoRetryPolicy - vOpts := append(opts, - db.WithValidateField("retry_policy_choice"), - db.WithValidateField("no_retry_policy"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["graphql_rules"]; exists { + vOpts := append(opts, db.WithValidateField("graphql_rules")) + if err := fv(ctx, m.GetGraphqlRules(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["rewrite_choice"]; exists { - val := m.GetRewriteChoice() + if fv, exists := v.FldValidators["hash_policy_choice"]; exists { + val := m.GetHashPolicyChoice() vOpts := append(opts, - db.WithValidateField("rewrite_choice"), + db.WithValidateField("hash_policy_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetRewriteChoice().(type) { - case *RouteSimpleAdvancedOptions_DisablePrefixRewrite: - if fv, exists := v.FldValidators["rewrite_choice.disable_prefix_rewrite"]; exists { - val := m.GetRewriteChoice().(*RouteSimpleAdvancedOptions_DisablePrefixRewrite).DisablePrefixRewrite + switch m.GetHashPolicyChoice().(type) { + case *ReplaceSpecType_RoundRobin: + if fv, exists := v.FldValidators["hash_policy_choice.round_robin"]; exists { + val := m.GetHashPolicyChoice().(*ReplaceSpecType_RoundRobin).RoundRobin vOpts := append(opts, - db.WithValidateField("rewrite_choice"), - db.WithValidateField("disable_prefix_rewrite"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("round_robin"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_PrefixRewrite: - if fv, exists := v.FldValidators["rewrite_choice.prefix_rewrite"]; exists { - val := m.GetRewriteChoice().(*RouteSimpleAdvancedOptions_PrefixRewrite).PrefixRewrite + case *ReplaceSpecType_LeastActive: + if fv, exists := v.FldValidators["hash_policy_choice.least_active"]; exists { + val := m.GetHashPolicyChoice().(*ReplaceSpecType_LeastActive).LeastActive vOpts := append(opts, - db.WithValidateField("rewrite_choice"), - db.WithValidateField("prefix_rewrite"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("least_active"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_RegexRewrite: - if fv, exists := v.FldValidators["rewrite_choice.regex_rewrite"]; exists { - val := m.GetRewriteChoice().(*RouteSimpleAdvancedOptions_RegexRewrite).RegexRewrite + case *ReplaceSpecType_Random: + if fv, exists := v.FldValidators["hash_policy_choice.random"]; exists { + val := m.GetHashPolicyChoice().(*ReplaceSpecType_Random).Random + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("random"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_SourceIpStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.source_ip_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*ReplaceSpecType_SourceIpStickiness).SourceIpStickiness vOpts := append(opts, - db.WithValidateField("rewrite_choice"), - db.WithValidateField("regex_rewrite"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("source_ip_stickiness"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - - } - - if fv, exists := v.FldValidators["spdy_choice"]; exists { - val := m.GetSpdyChoice() - vOpts := append(opts, - db.WithValidateField("spdy_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetSpdyChoice().(type) { - case *RouteSimpleAdvancedOptions_DisableSpdy: - if fv, exists := v.FldValidators["spdy_choice.disable_spdy"]; exists { - val := m.GetSpdyChoice().(*RouteSimpleAdvancedOptions_DisableSpdy).DisableSpdy + case *ReplaceSpecType_CookieStickiness: + if fv, exists := v.FldValidators["hash_policy_choice.cookie_stickiness"]; exists { + val := m.GetHashPolicyChoice().(*ReplaceSpecType_CookieStickiness).CookieStickiness vOpts := append(opts, - db.WithValidateField("spdy_choice"), - db.WithValidateField("disable_spdy"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("cookie_stickiness"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_EnableSpdy: - if fv, exists := v.FldValidators["spdy_choice.enable_spdy"]; exists { - val := m.GetSpdyChoice().(*RouteSimpleAdvancedOptions_EnableSpdy).EnableSpdy + case *ReplaceSpecType_RingHash: + if fv, exists := v.FldValidators["hash_policy_choice.ring_hash"]; exists { + val := m.GetHashPolicyChoice().(*ReplaceSpecType_RingHash).RingHash vOpts := append(opts, - db.WithValidateField("spdy_choice"), - db.WithValidateField("enable_spdy"), + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("ring_hash"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -26717,80 +16069,91 @@ func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm in } - if fv, exists := v.FldValidators["timeout"]; exists { - - vOpts := append(opts, db.WithValidateField("timeout")) - if err := fv(ctx, m.GetTimeout(), vOpts...); err != nil { - return err - } - - } - - switch m.GetWafChoice().(type) { - case *RouteSimpleAdvancedOptions_InheritedWaf: - if fv, exists := v.FldValidators["waf_choice.inherited_waf"]; exists { - val := m.GetWafChoice().(*RouteSimpleAdvancedOptions_InheritedWaf).InheritedWaf + switch m.GetIpReputationChoice().(type) { + case *ReplaceSpecType_DisableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.disable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*ReplaceSpecType_DisableIpReputation).DisableIpReputation vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("inherited_waf"), + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("disable_ip_reputation"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_DisableWaf: - if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { - val := m.GetWafChoice().(*RouteSimpleAdvancedOptions_DisableWaf).DisableWaf + case *ReplaceSpecType_EnableIpReputation: + if fv, exists := v.FldValidators["ip_reputation_choice.enable_ip_reputation"]; exists { + val := m.GetIpReputationChoice().(*ReplaceSpecType_EnableIpReputation).EnableIpReputation vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("disable_waf"), + db.WithValidateField("ip_reputation_choice"), + db.WithValidateField("enable_ip_reputation"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_AppFirewall: - if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { - val := m.GetWafChoice().(*RouteSimpleAdvancedOptions_AppFirewall).AppFirewall - vOpts := append(opts, - db.WithValidateField("waf_choice"), - db.WithValidateField("app_firewall"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + + } + + if fv, exists := v.FldValidators["jwt_validation"]; exists { + + vOpts := append(opts, db.WithValidateField("jwt_validation")) + if err := fv(ctx, m.GetJwtValidation(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["websocket_choice"]; exists { - val := m.GetWebsocketChoice() + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action"]; exists { + val := m.GetL7DdosAutoMitigationAction() vOpts := append(opts, - db.WithValidateField("websocket_choice"), + db.WithValidateField("l7_ddos_auto_mitigation_action"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetWebsocketChoice().(type) { - case *RouteSimpleAdvancedOptions_DisableWebSocketConfig: - if fv, exists := v.FldValidators["websocket_choice.disable_web_socket_config"]; exists { - val := m.GetWebsocketChoice().(*RouteSimpleAdvancedOptions_DisableWebSocketConfig).DisableWebSocketConfig + switch m.GetL7DdosAutoMitigationAction().(type) { + case *ReplaceSpecType_L7DdosActionDefault: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_default"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionDefault).L7DdosActionDefault vOpts := append(opts, - db.WithValidateField("websocket_choice"), - db.WithValidateField("disable_web_socket_config"), + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_default"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteSimpleAdvancedOptions_WebSocketConfig: - if fv, exists := v.FldValidators["websocket_choice.web_socket_config"]; exists { - val := m.GetWebsocketChoice().(*RouteSimpleAdvancedOptions_WebSocketConfig).WebSocketConfig + case *ReplaceSpecType_L7DdosActionBlock: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_block"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionBlock).L7DdosActionBlock vOpts := append(opts, - db.WithValidateField("websocket_choice"), - db.WithValidateField("web_socket_config"), + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_block"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_L7DdosActionJsChallenge: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionJsChallenge).L7DdosActionJsChallenge + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_js_challenge"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_L7DdosActionNone: + if fv, exists := v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { + val := m.GetL7DdosAutoMitigationAction().(*ReplaceSpecType_L7DdosActionNone).L7DdosActionNone + vOpts := append(opts, + db.WithValidateField("l7_ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_none"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -26799,401 +16162,448 @@ func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm in } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultRouteSimpleAdvancedOptionsValidator = func() *ValidateRouteSimpleAdvancedOptions { - v := &ValidateRouteSimpleAdvancedOptions{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhBufferChoice := v.BufferChoiceValidationRuleHandler - rulesBufferChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhBufferChoice(rulesBufferChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.buffer_choice: %s", err) - panic(errMsg) - } - v.FldValidators["buffer_choice"] = vFn - - vrhClusterRetractChoice := v.ClusterRetractChoiceValidationRuleHandler - rulesClusterRetractChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhClusterRetractChoice(rulesClusterRetractChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.cluster_retract_choice: %s", err) - panic(errMsg) - } - v.FldValidators["cluster_retract_choice"] = vFn - - vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler - rulesHashPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.hash_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["hash_policy_choice"] = vFn - - vrhMirroringChoice := v.MirroringChoiceValidationRuleHandler - rulesMirroringChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhMirroringChoice(rulesMirroringChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.mirroring_choice: %s", err) - panic(errMsg) - } - v.FldValidators["mirroring_choice"] = vFn - - vrhRetryPolicyChoice := v.RetryPolicyChoiceValidationRuleHandler - rulesRetryPolicyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhRetryPolicyChoice(rulesRetryPolicyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.retry_policy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["retry_policy_choice"] = vFn - - vrhRewriteChoice := v.RewriteChoiceValidationRuleHandler - rulesRewriteChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhRewriteChoice(rulesRewriteChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.rewrite_choice: %s", err) - panic(errMsg) - } - v.FldValidators["rewrite_choice"] = vFn - - vrhRewriteChoicePrefixRewrite := v.RewriteChoicePrefixRewriteValidationRuleHandler - rulesRewriteChoicePrefixRewrite := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFnMap["rewrite_choice.prefix_rewrite"], err = vrhRewriteChoicePrefixRewrite(rulesRewriteChoicePrefixRewrite) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RouteSimpleAdvancedOptions.rewrite_choice_prefix_rewrite: %s", err) - panic(errMsg) - } - - v.FldValidators["rewrite_choice.prefix_rewrite"] = vFnMap["rewrite_choice.prefix_rewrite"] - - vrhSpdyChoice := v.SpdyChoiceValidationRuleHandler - rulesSpdyChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhSpdyChoice(rulesSpdyChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.spdy_choice: %s", err) - panic(errMsg) - } - v.FldValidators["spdy_choice"] = vFn - - vrhWebsocketChoice := v.WebsocketChoiceValidationRuleHandler - rulesWebsocketChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhWebsocketChoice(rulesWebsocketChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.websocket_choice: %s", err) - panic(errMsg) - } - v.FldValidators["websocket_choice"] = vFn - - vrhEndpointSubsets := v.EndpointSubsetsValidationRuleHandler - rulesEndpointSubsets := map[string]string{ - "ves.io.schema.rules.map.max_pairs": "16", - } - vFn, err = vrhEndpointSubsets(rulesEndpointSubsets) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.endpoint_subsets: %s", err) - panic(errMsg) - } - v.FldValidators["endpoint_subsets"] = vFn - - vrhRequestHeadersToAdd := v.RequestHeadersToAddValidationRuleHandler - rulesRequestHeadersToAdd := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRequestHeadersToAdd(rulesRequestHeadersToAdd) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.request_headers_to_add: %s", err) - panic(errMsg) - } - v.FldValidators["request_headers_to_add"] = vFn - - vrhRequestHeadersToRemove := v.RequestHeadersToRemoveValidationRuleHandler - rulesRequestHeadersToRemove := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhRequestHeadersToRemove(rulesRequestHeadersToRemove) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.request_headers_to_remove: %s", err) - panic(errMsg) + if fv, exists := v.FldValidators["loadbalancer_type"]; exists { + val := m.GetLoadbalancerType() + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - v.FldValidators["request_headers_to_remove"] = vFn - vrhResponseHeadersToAdd := v.ResponseHeadersToAddValidationRuleHandler - rulesResponseHeadersToAdd := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhResponseHeadersToAdd(rulesResponseHeadersToAdd) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.response_headers_to_add: %s", err) - panic(errMsg) - } - v.FldValidators["response_headers_to_add"] = vFn + switch m.GetLoadbalancerType().(type) { + case *ReplaceSpecType_Http: + if fv, exists := v.FldValidators["loadbalancer_type.http"]; exists { + val := m.GetLoadbalancerType().(*ReplaceSpecType_Http).Http + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("http"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_Https: + if fv, exists := v.FldValidators["loadbalancer_type.https"]; exists { + val := m.GetLoadbalancerType().(*ReplaceSpecType_Https).Https + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_HttpsAutoCert: + if fv, exists := v.FldValidators["loadbalancer_type.https_auto_cert"]; exists { + val := m.GetLoadbalancerType().(*ReplaceSpecType_HttpsAutoCert).HttpsAutoCert + vOpts := append(opts, + db.WithValidateField("loadbalancer_type"), + db.WithValidateField("https_auto_cert"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vrhResponseHeadersToRemove := v.ResponseHeadersToRemoveValidationRuleHandler - rulesResponseHeadersToRemove := map[string]string{ - "ves.io.schema.rules.repeated.items.string.max_bytes": "256", - "ves.io.schema.rules.repeated.items.string.min_bytes": "1", - "ves.io.schema.rules.repeated.max_items": "32", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhResponseHeadersToRemove(rulesResponseHeadersToRemove) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.response_headers_to_remove: %s", err) - panic(errMsg) } - v.FldValidators["response_headers_to_remove"] = vFn - vrhTimeout := v.TimeoutValidationRuleHandler - rulesTimeout := map[string]string{ - "ves.io.schema.rules.uint32.gte": "0", - "ves.io.schema.rules.uint32.lte": "600000", - } - vFn, err = vrhTimeout(rulesTimeout) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.timeout: %s", err) - panic(errMsg) + if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { + val := m.GetMaliciousUserDetectionChoice() + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - v.FldValidators["timeout"] = vFn - - v.FldValidators["bot_defense_javascript_injection_choice.bot_defense_javascript_injection"] = ves_io_schema_route.BotDefenseJavascriptInjectionTypeValidator().Validate - v.FldValidators["buffer_choice.buffer_policy"] = ves_io_schema.BufferConfigTypeValidator().Validate + switch m.GetMaliciousUserDetectionChoice().(type) { + case *ReplaceSpecType_EnableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_EnableMaliciousUserDetection).EnableMaliciousUserDetection + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("enable_malicious_user_detection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_DisableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*ReplaceSpecType_DisableMaliciousUserDetection).DisableMaliciousUserDetection + vOpts := append(opts, + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("disable_malicious_user_detection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - v.FldValidators["hash_policy_choice.specific_hash_policy"] = HashPolicyListTypeValidator().Validate + } - v.FldValidators["mirroring_choice.mirror_policy"] = MirrorPolicyTypeValidator().Validate + if fv, exists := v.FldValidators["malicious_user_mitigation"]; exists { - v.FldValidators["retry_policy_choice.retry_policy"] = ves_io_schema.RetryPolicyTypeValidator().Validate + vOpts := append(opts, db.WithValidateField("malicious_user_mitigation")) + if err := fv(ctx, m.GetMaliciousUserMitigation(), vOpts...); err != nil { + return err + } - v.FldValidators["rewrite_choice.regex_rewrite"] = ves_io_schema.RegexMatchRewriteValidator().Validate + } - v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + switch m.GetMlConfigChoice().(type) { + case *ReplaceSpecType_SingleLbApp: + if fv, exists := v.FldValidators["ml_config_choice.single_lb_app"]; exists { + val := m.GetMlConfigChoice().(*ReplaceSpecType_SingleLbApp).SingleLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("single_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_MultiLbApp: + if fv, exists := v.FldValidators["ml_config_choice.multi_lb_app"]; exists { + val := m.GetMlConfigChoice().(*ReplaceSpecType_MultiLbApp).MultiLbApp + vOpts := append(opts, + db.WithValidateField("ml_config_choice"), + db.WithValidateField("multi_lb_app"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate + } - v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate + if fv, exists := v.FldValidators["more_option"]; exists { - return v -}() + vOpts := append(opts, db.WithValidateField("more_option")) + if err := fv(ctx, m.GetMoreOption(), vOpts...); err != nil { + return err + } -func RouteSimpleAdvancedOptionsValidator() db.Validator { - return DefaultRouteSimpleAdvancedOptionsValidator -} + } -// augmented methods on protoc/std generated struct + switch m.GetOriginPoolChoice().(type) { + case *ReplaceSpecType_DefaultPool: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool"]; exists { + val := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPool).DefaultPool + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_DefaultPoolList: + if fv, exists := v.FldValidators["origin_pool_choice.default_pool_list"]; exists { + val := m.GetOriginPoolChoice().(*ReplaceSpecType_DefaultPoolList).DefaultPoolList + vOpts := append(opts, + db.WithValidateField("origin_pool_choice"), + db.WithValidateField("default_pool_list"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *RouteType) ToJSON() (string, error) { - return codec.ToJSON(m) -} + } -func (m *RouteType) ToYAML() (string, error) { - return codec.ToYAML(m) -} + if fv, exists := v.FldValidators["origin_server_subset_rule_list"]; exists { -// Redact squashes sensitive info in m (in-place) -func (m *RouteType) Redact(ctx context.Context) error { - // clear fields with confidential option set (at message or field level) - if m == nil { - return nil - } + vOpts := append(opts, db.WithValidateField("origin_server_subset_rule_list")) + if err := fv(ctx, m.GetOriginServerSubsetRuleList(), vOpts...); err != nil { + return err + } - if err := m.GetSimpleRoute().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting RouteType.simple_route") } - return nil -} + if fv, exists := v.FldValidators["protected_cookies"]; exists { + vOpts := append(opts, db.WithValidateField("protected_cookies")) + if err := fv(ctx, m.GetProtectedCookies(), vOpts...); err != nil { + return err + } -func (m *RouteType) DeepCopy() *RouteType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &RouteType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} + } -func (m *RouteType) DeepCopyProto() proto.Message { - if m == nil { - return nil + if fv, exists := v.FldValidators["rate_limit_choice"]; exists { + val := m.GetRateLimitChoice() + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return m.DeepCopy() -} -func (m *RouteType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteTypeValidator().Validate(ctx, m, opts...) -} + switch m.GetRateLimitChoice().(type) { + case *ReplaceSpecType_DisableRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.disable_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*ReplaceSpecType_DisableRateLimit).DisableRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("disable_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_RateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.rate_limit"]; exists { + val := m.GetRateLimitChoice().(*ReplaceSpecType_RateLimit).RateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_ApiRateLimit: + if fv, exists := v.FldValidators["rate_limit_choice.api_rate_limit"]; exists { + val := m.GetRateLimitChoice().(*ReplaceSpecType_ApiRateLimit).ApiRateLimit + vOpts := append(opts, + db.WithValidateField("rate_limit_choice"), + db.WithValidateField("api_rate_limit"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (m *RouteType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil } - return m.GetChoiceDRefInfo() + if fv, exists := v.FldValidators["routes"]; exists { + vOpts := append(opts, db.WithValidateField("routes")) + if err := fv(ctx, m.GetRoutes(), vOpts...); err != nil { + return err + } -} + } -// GetDRefInfo for the field's type -func (m *RouteType) GetChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetChoice() == nil { - return nil, nil + if fv, exists := v.FldValidators["service_policy_choice"]; exists { + val := m.GetServicePolicyChoice() + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - switch m.GetChoice().(type) { - case *RouteType_SimpleRoute: - drInfos, err := m.GetSimpleRoute().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSimpleRoute().GetDRefInfo() FAILED") + switch m.GetServicePolicyChoice().(type) { + case *ReplaceSpecType_ServicePoliciesFromNamespace: + if fv, exists := v.FldValidators["service_policy_choice.service_policies_from_namespace"]; exists { + val := m.GetServicePolicyChoice().(*ReplaceSpecType_ServicePoliciesFromNamespace).ServicePoliciesFromNamespace + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("service_policies_from_namespace"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "simple_route." + dri.DRField + case *ReplaceSpecType_NoServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.no_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*ReplaceSpecType_NoServicePolicies).NoServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("no_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_ActiveServicePolicies: + if fv, exists := v.FldValidators["service_policy_choice.active_service_policies"]; exists { + val := m.GetServicePolicyChoice().(*ReplaceSpecType_ActiveServicePolicies).ActiveServicePolicies + vOpts := append(opts, + db.WithValidateField("service_policy_choice"), + db.WithValidateField("active_service_policies"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - - case *RouteType_RedirectRoute: - return nil, nil + } - case *RouteType_DirectResponseRoute: + switch m.GetSlowDdosMitigationChoice().(type) { + case *ReplaceSpecType_SlowDdosMitigation: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"]; exists { + val := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SlowDdosMitigation).SlowDdosMitigation + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("slow_ddos_mitigation"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_SystemDefaultTimeouts: + if fv, exists := v.FldValidators["slow_ddos_mitigation_choice.system_default_timeouts"]; exists { + val := m.GetSlowDdosMitigationChoice().(*ReplaceSpecType_SystemDefaultTimeouts).SystemDefaultTimeouts + vOpts := append(opts, + db.WithValidateField("slow_ddos_mitigation_choice"), + db.WithValidateField("system_default_timeouts"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - return nil, nil + } - case *RouteType_CustomRouteObject: + if fv, exists := v.FldValidators["threat_mesh_choice"]; exists { + val := m.GetThreatMeshChoice() + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - drInfos, err := m.GetCustomRouteObject().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetCustomRouteObject().GetDRefInfo() FAILED") + switch m.GetThreatMeshChoice().(type) { + case *ReplaceSpecType_DisableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.disable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*ReplaceSpecType_DisableThreatMesh).DisableThreatMesh + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("disable_threat_mesh"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "custom_route_object." + dri.DRField + case *ReplaceSpecType_EnableThreatMesh: + if fv, exists := v.FldValidators["threat_mesh_choice.enable_threat_mesh"]; exists { + val := m.GetThreatMeshChoice().(*ReplaceSpecType_EnableThreatMesh).EnableThreatMesh + vOpts := append(opts, + db.WithValidateField("threat_mesh_choice"), + db.WithValidateField("enable_threat_mesh"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err - default: - return nil, nil } -} + if fv, exists := v.FldValidators["trust_client_ip_headers_choice"]; exists { + val := m.GetTrustClientIpHeadersChoice() + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -type ValidateRouteType struct { - FldValidators map[string]db.ValidatorFunc -} + switch m.GetTrustClientIpHeadersChoice().(type) { + case *ReplaceSpecType_DisableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.disable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_DisableTrustClientIpHeaders).DisableTrustClientIpHeaders + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("disable_trust_client_ip_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ReplaceSpecType_EnableTrustClientIpHeaders: + if fv, exists := v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"]; exists { + val := m.GetTrustClientIpHeadersChoice().(*ReplaceSpecType_EnableTrustClientIpHeaders).EnableTrustClientIpHeaders + vOpts := append(opts, + db.WithValidateField("trust_client_ip_headers_choice"), + db.WithValidateField("enable_trust_client_ip_headers"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -func (v *ValidateRouteType) ChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for choice") } - return validatorFn, nil -} -func (v *ValidateRouteType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *RouteType got type %s", t) + if fv, exists := v.FldValidators["trusted_clients"]; exists { + vOpts := append(opts, db.WithValidateField("trusted_clients")) + if err := fv(ctx, m.GetTrustedClients(), vOpts...); err != nil { + return err } - } - if m == nil { - return nil + } - if fv, exists := v.FldValidators["choice"]; exists { - val := m.GetChoice() + if fv, exists := v.FldValidators["user_id_choice"]; exists { + val := m.GetUserIdChoice() vOpts := append(opts, - db.WithValidateField("choice"), + db.WithValidateField("user_id_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetChoice().(type) { - case *RouteType_SimpleRoute: - if fv, exists := v.FldValidators["choice.simple_route"]; exists { - val := m.GetChoice().(*RouteType_SimpleRoute).SimpleRoute + switch m.GetUserIdChoice().(type) { + case *ReplaceSpecType_UserIdentification: + if fv, exists := v.FldValidators["user_id_choice.user_identification"]; exists { + val := m.GetUserIdChoice().(*ReplaceSpecType_UserIdentification).UserIdentification vOpts := append(opts, - db.WithValidateField("choice"), - db.WithValidateField("simple_route"), + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_identification"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteType_RedirectRoute: - if fv, exists := v.FldValidators["choice.redirect_route"]; exists { - val := m.GetChoice().(*RouteType_RedirectRoute).RedirectRoute - vOpts := append(opts, - db.WithValidateField("choice"), - db.WithValidateField("redirect_route"), + case *ReplaceSpecType_UserIdClientIp: + if fv, exists := v.FldValidators["user_id_choice.user_id_client_ip"]; exists { + val := m.GetUserIdChoice().(*ReplaceSpecType_UserIdClientIp).UserIdClientIp + vOpts := append(opts, + db.WithValidateField("user_id_choice"), + db.WithValidateField("user_id_client_ip"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteType_DirectResponseRoute: - if fv, exists := v.FldValidators["choice.direct_response_route"]; exists { - val := m.GetChoice().(*RouteType_DirectResponseRoute).DirectResponseRoute + + } + + if fv, exists := v.FldValidators["waf_choice"]; exists { + val := m.GetWafChoice() + vOpts := append(opts, + db.WithValidateField("waf_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetWafChoice().(type) { + case *ReplaceSpecType_DisableWaf: + if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { + val := m.GetWafChoice().(*ReplaceSpecType_DisableWaf).DisableWaf vOpts := append(opts, - db.WithValidateField("choice"), - db.WithValidateField("direct_response_route"), + db.WithValidateField("waf_choice"), + db.WithValidateField("disable_waf"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteType_CustomRouteObject: - if fv, exists := v.FldValidators["choice.custom_route_object"]; exists { - val := m.GetChoice().(*RouteType_CustomRouteObject).CustomRouteObject + case *ReplaceSpecType_AppFirewall: + if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { + val := m.GetWafChoice().(*ReplaceSpecType_AppFirewall).AppFirewall vOpts := append(opts, - db.WithValidateField("choice"), - db.WithValidateField("custom_route_object"), + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -27202,12 +16612,20 @@ func (v *ValidateRouteType) Validate(ctx context.Context, pm interface{}, opts . } + if fv, exists := v.FldValidators["waf_exclusion_rules"]; exists { + vOpts := append(opts, db.WithValidateField("waf_exclusion_rules")) + if err := fv(ctx, m.GetWafExclusionRules(), vOpts...); err != nil { + return err + } + + } + return nil } // Well-known symbol for default validator implementation -var DefaultRouteTypeValidator = func() *ValidateRouteType { - v := &ValidateRouteType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { + v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -27217,395 +16635,365 @@ var DefaultRouteTypeValidator = func() *ValidateRouteType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhChoice := v.ChoiceValidationRuleHandler - rulesChoice := map[string]string{ + vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler + rulesAdvertiseChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhChoice(rulesChoice) + vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteType.choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.advertise_choice: %s", err) panic(errMsg) } - v.FldValidators["choice"] = vFn - - v.FldValidators["choice.simple_route"] = RouteTypeSimpleValidator().Validate - v.FldValidators["choice.redirect_route"] = RouteTypeRedirectValidator().Validate - v.FldValidators["choice.direct_response_route"] = RouteTypeDirectResponseValidator().Validate - v.FldValidators["choice.custom_route_object"] = RouteTypeCustomRouteValidator().Validate - - return v -}() + v.FldValidators["advertise_choice"] = vFn -func RouteTypeValidator() db.Validator { - return DefaultRouteTypeValidator -} + vrhApiDefinitionChoice := v.ApiDefinitionChoiceValidationRuleHandler + rulesApiDefinitionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDefinitionChoice(rulesApiDefinitionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.api_definition_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_definition_choice"] = vFn -// augmented methods on protoc/std generated struct + vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler + rulesApiDiscoveryChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.api_discovery_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_discovery_choice"] = vFn -func (m *RouteTypeCustomRoute) ToJSON() (string, error) { - return codec.ToJSON(m) -} + vrhChallengeType := v.ChallengeTypeValidationRuleHandler + rulesChallengeType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhChallengeType(rulesChallengeType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.challenge_type: %s", err) + panic(errMsg) + } + v.FldValidators["challenge_type"] = vFn -func (m *RouteTypeCustomRoute) ToYAML() (string, error) { - return codec.ToYAML(m) -} + vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler + rulesHashPolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.hash_policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["hash_policy_choice"] = vFn -func (m *RouteTypeCustomRoute) DeepCopy() *RouteTypeCustomRoute { - if m == nil { - return nil + vrhL7DdosAutoMitigationAction := v.L7DdosAutoMitigationActionValidationRuleHandler + rulesL7DdosAutoMitigationAction := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - ser, err := m.Marshal() + vFn, err = vrhL7DdosAutoMitigationAction(rulesL7DdosAutoMitigationAction) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.l7_ddos_auto_mitigation_action: %s", err) + panic(errMsg) } - c := &RouteTypeCustomRoute{} - err = c.Unmarshal(ser) + v.FldValidators["l7_ddos_auto_mitigation_action"] = vFn + + vrhLoadbalancerType := v.LoadbalancerTypeValidationRuleHandler + rulesLoadbalancerType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhLoadbalancerType(rulesLoadbalancerType) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.loadbalancer_type: %s", err) + panic(errMsg) } - return c -} + v.FldValidators["loadbalancer_type"] = vFn -func (m *RouteTypeCustomRoute) DeepCopyProto() proto.Message { - if m == nil { - return nil + vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler + rulesMaliciousUserDetectionChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - return m.DeepCopy() -} + vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.malicious_user_detection_choice: %s", err) + panic(errMsg) + } + v.FldValidators["malicious_user_detection_choice"] = vFn -func (m *RouteTypeCustomRoute) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteTypeCustomRouteValidator().Validate(ctx, m, opts...) -} + vrhRateLimitChoice := v.RateLimitChoiceValidationRuleHandler + rulesRateLimitChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhRateLimitChoice(rulesRateLimitChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.rate_limit_choice: %s", err) + panic(errMsg) + } + v.FldValidators["rate_limit_choice"] = vFn -func (m *RouteTypeCustomRoute) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil + vrhServicePolicyChoice := v.ServicePolicyChoiceValidationRuleHandler + rulesServicePolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } + vFn, err = vrhServicePolicyChoice(rulesServicePolicyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.service_policy_choice: %s", err) + panic(errMsg) + } + v.FldValidators["service_policy_choice"] = vFn - return m.GetRouteRefDRefInfo() + vrhThreatMeshChoice := v.ThreatMeshChoiceValidationRuleHandler + rulesThreatMeshChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhThreatMeshChoice(rulesThreatMeshChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.threat_mesh_choice: %s", err) + panic(errMsg) + } + v.FldValidators["threat_mesh_choice"] = vFn -} + vrhTrustClientIpHeadersChoice := v.TrustClientIpHeadersChoiceValidationRuleHandler + rulesTrustClientIpHeadersChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhTrustClientIpHeadersChoice(rulesTrustClientIpHeadersChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.trust_client_ip_headers_choice: %s", err) + panic(errMsg) + } + v.FldValidators["trust_client_ip_headers_choice"] = vFn -func (m *RouteTypeCustomRoute) GetRouteRefDRefInfo() ([]db.DRefInfo, error) { + vrhUserIdChoice := v.UserIdChoiceValidationRuleHandler + rulesUserIdChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhUserIdChoice(rulesUserIdChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.user_id_choice: %s", err) + panic(errMsg) + } + v.FldValidators["user_id_choice"] = vFn - vref := m.GetRouteRef() - if vref == nil { - return nil, nil + vrhWafChoice := v.WafChoiceValidationRuleHandler + rulesWafChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("route.Object") - dri := db.DRefInfo{ - RefdType: "route.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "route_ref", - Ref: vdRef, + vFn, err = vrhWafChoice(rulesWafChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.waf_choice: %s", err) + panic(errMsg) } - return []db.DRefInfo{dri}, nil + v.FldValidators["waf_choice"] = vFn -} + vrhDomains := v.DomainsValidationRuleHandler + rulesDomains := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.items.string.max_len": "256", + "ves.io.schema.rules.repeated.items.string.min_len": "1", + "ves.io.schema.rules.repeated.items.string.vh_domain": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDomains(rulesDomains) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.domains: %s", err) + panic(errMsg) + } + v.FldValidators["domains"] = vFn -// GetRouteRefDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *RouteTypeCustomRoute) GetRouteRefDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "route.Object") + vrhDefaultRoutePools := v.DefaultRoutePoolsValidationRuleHandler + rulesDefaultRoutePools := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "8", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhDefaultRoutePools(rulesDefaultRoutePools) if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: route") + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.default_route_pools: %s", err) + panic(errMsg) } + v.FldValidators["default_route_pools"] = vFn - vref := m.GetRouteRef() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "route.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, + vrhRoutes := v.RoutesValidationRuleHandler + rulesRoutes := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique": "true", } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + vFn, err = vrhRoutes(rulesRoutes) if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.routes: %s", err) + panic(errMsg) } + v.FldValidators["routes"] = vFn - return entries, nil -} - -type ValidateRouteTypeCustomRoute struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateRouteTypeCustomRoute) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteTypeCustomRoute) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *RouteTypeCustomRoute got type %s", t) - } + vrhWafExclusionRules := v.WafExclusionRulesValidationRuleHandler + rulesWafExclusionRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - if m == nil { - return nil + vFn, err = vrhWafExclusionRules(rulesWafExclusionRules) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.waf_exclusion_rules: %s", err) + panic(errMsg) } + v.FldValidators["waf_exclusion_rules"] = vFn - if fv, exists := v.FldValidators["route_ref"]; exists { - - vOpts := append(opts, db.WithValidateField("route_ref")) - if err := fv(ctx, m.GetRouteRef(), vOpts...); err != nil { - return err - } - + vrhBlockedClients := v.BlockedClientsValidationRuleHandler + rulesBlockedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } + vFn, err = vrhBlockedClients(rulesBlockedClients) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.blocked_clients: %s", err) + panic(errMsg) + } + v.FldValidators["blocked_clients"] = vFn - return nil -} - -// Well-known symbol for default validator implementation -var DefaultRouteTypeCustomRouteValidator = func() *ValidateRouteTypeCustomRoute { - v := &ValidateRouteTypeCustomRoute{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["route_ref"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - return v -}() - -func RouteTypeCustomRouteValidator() db.Validator { - return DefaultRouteTypeCustomRouteValidator -} - -// augmented methods on protoc/std generated struct - -func (m *RouteTypeDirectResponse) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *RouteTypeDirectResponse) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *RouteTypeDirectResponse) DeepCopy() *RouteTypeDirectResponse { - if m == nil { - return nil + vrhTrustedClients := v.TrustedClientsValidationRuleHandler + rulesTrustedClients := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - ser, err := m.Marshal() + vFn, err = vrhTrustedClients(rulesTrustedClients) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.trusted_clients: %s", err) + panic(errMsg) } - c := &RouteTypeDirectResponse{} - err = c.Unmarshal(ser) + v.FldValidators["trusted_clients"] = vFn + + vrhDdosMitigationRules := v.DdosMitigationRulesValidationRuleHandler + rulesDdosMitigationRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "256", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", + } + vFn, err = vrhDdosMitigationRules(rulesDdosMitigationRules) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.ddos_mitigation_rules: %s", err) + panic(errMsg) } - return c -} + v.FldValidators["ddos_mitigation_rules"] = vFn -func (m *RouteTypeDirectResponse) DeepCopyProto() proto.Message { - if m == nil { - return nil + vrhDataGuardRules := v.DataGuardRulesValidationRuleHandler + rulesDataGuardRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - return m.DeepCopy() -} - -func (m *RouteTypeDirectResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteTypeDirectResponseValidator().Validate(ctx, m, opts...) -} - -type ValidateRouteTypeDirectResponse struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateRouteTypeDirectResponse) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + vFn, err = vrhDataGuardRules(rulesDataGuardRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.data_guard_rules: %s", err) + panic(errMsg) } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } + v.FldValidators["data_guard_rules"] = vFn - return nil + vrhGraphqlRules := v.GraphqlRulesValidationRuleHandler + rulesGraphqlRules := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "64", + "ves.io.schema.rules.repeated.unique_metadata_name": "true", } - - return validatorFn, nil -} - -func (v *ValidateRouteTypeDirectResponse) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + vFn, err = vrhGraphqlRules(rulesGraphqlRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.graphql_rules: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["graphql_rules"] = vFn + + vrhProtectedCookies := v.ProtectedCookiesValidationRuleHandler + rulesProtectedCookies := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhProtectedCookies(rulesProtectedCookies) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.protected_cookies: %s", err) + panic(errMsg) } + v.FldValidators["protected_cookies"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderMatcherType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated headers") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items headers") - } - return nil - } + v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate + v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate - return validatorFn, nil -} + v.FldValidators["api_definition_choice.api_definitions"] = ves_io_schema_views_common_waf.ApiDefinitionListValidator().Validate + v.FldValidators["api_definition_choice.api_specification"] = ves_io_schema_views_common_waf.APISpecificationSettingsValidator().Validate + v.FldValidators["api_definition_choice.api_definition"] = ves_io_schema_views.ObjectRefTypeValidator().Validate -func (v *ValidateRouteTypeDirectResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteTypeDirectResponse) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *RouteTypeDirectResponse got type %s", t) - } - } - if m == nil { - return nil - } + v.FldValidators["api_discovery_choice.enable_api_discovery"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate - if fv, exists := v.FldValidators["headers"]; exists { - vOpts := append(opts, db.WithValidateField("headers")) - if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { - return err - } + v.FldValidators["bot_defense_choice.bot_defense"] = ShapeBotDefenseTypeValidator().Validate + v.FldValidators["bot_defense_choice.bot_defense_advanced"] = BotDefenseAdvancedTypeValidator().Validate - } + v.FldValidators["challenge_type.js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate + v.FldValidators["challenge_type.captcha_challenge"] = ves_io_schema_virtual_host.CaptchaChallengeTypeValidator().Validate + v.FldValidators["challenge_type.policy_based_challenge"] = ves_io_schema_views_common_waf.PolicyBasedChallengeValidator().Validate + v.FldValidators["challenge_type.enable_challenge"] = ves_io_schema_views_common_waf.EnableChallengeValidator().Validate - if fv, exists := v.FldValidators["http_method"]; exists { + v.FldValidators["client_side_defense_choice.client_side_defense"] = ClientSideDefenseTypeValidator().Validate - vOpts := append(opts, db.WithValidateField("http_method")) - if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { - return err - } + v.FldValidators["hash_policy_choice.cookie_stickiness"] = ves_io_schema_route.CookieForHashingValidator().Validate + v.FldValidators["hash_policy_choice.ring_hash"] = HashPolicyListTypeValidator().Validate - } + v.FldValidators["ip_reputation_choice.enable_ip_reputation"] = ves_io_schema_views_common_waf.IPThreatCategoryListTypeValidator().Validate - if fv, exists := v.FldValidators["incoming_port"]; exists { + v.FldValidators["l7_ddos_auto_mitigation_action.l7_ddos_action_js_challenge"] = ves_io_schema_virtual_host.JavascriptChallengeTypeValidator().Validate - vOpts := append(opts, db.WithValidateField("incoming_port")) - if err := fv(ctx, m.GetIncomingPort(), vOpts...); err != nil { - return err - } + v.FldValidators["loadbalancer_type.http"] = ProxyTypeHttpValidator().Validate + v.FldValidators["loadbalancer_type.https"] = ProxyTypeHttpsValidator().Validate + v.FldValidators["loadbalancer_type.https_auto_cert"] = ProxyTypeHttpsAutoCertsValidator().Validate - } + v.FldValidators["ml_config_choice.single_lb_app"] = SingleLoadBalancerAppSettingValidator().Validate - if fv, exists := v.FldValidators["path"]; exists { + v.FldValidators["origin_pool_choice.default_pool"] = ves_io_schema_views_origin_pool.GlobalSpecTypeValidator().Validate + v.FldValidators["origin_pool_choice.default_pool_list"] = ves_io_schema_views.OriginPoolListTypeValidator().Validate - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err - } + v.FldValidators["rate_limit_choice.rate_limit"] = ves_io_schema_views_common_waf.RateLimitConfigTypeValidator().Validate + v.FldValidators["rate_limit_choice.api_rate_limit"] = ves_io_schema_views_common_waf.APIRateLimitValidator().Validate - } + v.FldValidators["service_policy_choice.active_service_policies"] = ves_io_schema_views_common_waf.ServicePolicyListValidator().Validate - if fv, exists := v.FldValidators["route_direct_response"]; exists { + v.FldValidators["slow_ddos_mitigation_choice.slow_ddos_mitigation"] = ves_io_schema_virtual_host.SlowDDoSMitigationValidator().Validate - vOpts := append(opts, db.WithValidateField("route_direct_response")) - if err := fv(ctx, m.GetRouteDirectResponse(), vOpts...); err != nil { - return err - } + v.FldValidators["trust_client_ip_headers_choice.enable_trust_client_ip_headers"] = ves_io_schema_virtual_host.ClientIPHeadersValidator().Validate - } + v.FldValidators["user_id_choice.user_identification"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - return nil -} + v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate -// Well-known symbol for default validator implementation -var DefaultRouteTypeDirectResponseValidator = func() *ValidateRouteTypeDirectResponse { - v := &ValidateRouteTypeDirectResponse{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + v.FldValidators["more_option"] = AdvancedOptionsTypeValidator().Validate - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPath(rulesPath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeDirectResponse.path: %s", err) - panic(errMsg) - } - v.FldValidators["path"] = vFn + v.FldValidators["malicious_user_mitigation"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - vrhHeaders := v.HeadersValidationRuleHandler - rulesHeaders := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhHeaders(rulesHeaders) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeDirectResponse.headers: %s", err) - panic(errMsg) - } - v.FldValidators["headers"] = vFn + v.FldValidators["api_protection_rules"] = ves_io_schema_views_common_waf.APIProtectionRulesValidator().Validate - v.FldValidators["route_direct_response"] = ves_io_schema_route.RouteDirectResponseValidator().Validate + v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate - v.FldValidators["incoming_port"] = ves_io_schema.PortMatcherTypeValidator().Validate + v.FldValidators["jwt_validation"] = ves_io_schema_views_common_waf.JWTValidationValidator().Validate + + v.FldValidators["origin_server_subset_rule_list"] = OriginServerSubsetRuleListTypeValidator().Validate return v }() -func RouteTypeDirectResponseValidator() db.Validator { - return DefaultRouteTypeDirectResponseValidator +func ReplaceSpecTypeValidator() db.Validator { + return DefaultReplaceSpecTypeValidator } // augmented methods on protoc/std generated struct -func (m *RouteTypeRedirect) ToJSON() (string, error) { +func (m *RequestBody) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *RouteTypeRedirect) ToYAML() (string, error) { +func (m *RequestBody) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *RouteTypeRedirect) DeepCopy() *RouteTypeRedirect { +func (m *RequestBody) DeepCopy() *RequestBody { if m == nil { return nil } @@ -27613,7 +17001,7 @@ func (m *RouteTypeRedirect) DeepCopy() *RouteTypeRedirect { if err != nil { return nil } - c := &RouteTypeRedirect{} + c := &RequestBody{} err = c.Unmarshal(ser) if err != nil { return nil @@ -27621,144 +17009,99 @@ func (m *RouteTypeRedirect) DeepCopy() *RouteTypeRedirect { return c } -func (m *RouteTypeRedirect) DeepCopyProto() proto.Message { +func (m *RequestBody) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *RouteTypeRedirect) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteTypeRedirectValidator().Validate(ctx, m, opts...) +func (m *RequestBody) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RequestBodyValidator().Validate(ctx, m, opts...) } -type ValidateRouteTypeRedirect struct { +type ValidateRequestBody struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateRouteTypeRedirect) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) +func (v *ValidateRequestBody) ValueTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for value_type") } - return validatorFn, nil } -func (v *ValidateRouteTypeRedirect) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) +func (v *ValidateRequestBody) ValueTypeExactValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_ExactValue, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for exact_value") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return oValidatorFn_ExactValue, nil +} +func (v *ValidateRequestBody) ValueTypeRegexValueValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_RegexValue, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderMatcherType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated headers") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items headers") - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for regex_value") } - - return validatorFn, nil + return oValidatorFn_RegexValue, nil } -func (v *ValidateRouteTypeRedirect) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteTypeRedirect) +func (v *ValidateRequestBody) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RequestBody) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *RouteTypeRedirect got type %s", t) + return fmt.Errorf("Expected type *RequestBody got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["headers"]; exists { - vOpts := append(opts, db.WithValidateField("headers")) - if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["http_method"]; exists { + if fv, exists := v.FldValidators["name"]; exists { - vOpts := append(opts, db.WithValidateField("http_method")) - if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["incoming_port"]; exists { - - vOpts := append(opts, db.WithValidateField("incoming_port")) - if err := fv(ctx, m.GetIncomingPort(), vOpts...); err != nil { + if fv, exists := v.FldValidators["value_type"]; exists { + val := m.GetValueType() + vOpts := append(opts, + db.WithValidateField("value_type"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - if fv, exists := v.FldValidators["path"]; exists { - - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err + switch m.GetValueType().(type) { + case *RequestBody_ExactValue: + if fv, exists := v.FldValidators["value_type.exact_value"]; exists { + val := m.GetValueType().(*RequestBody_ExactValue).ExactValue + vOpts := append(opts, + db.WithValidateField("value_type"), + db.WithValidateField("exact_value"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - - } - - if fv, exists := v.FldValidators["route_redirect"]; exists { - - vOpts := append(opts, db.WithValidateField("route_redirect")) - if err := fv(ctx, m.GetRouteRedirect(), vOpts...); err != nil { - return err + case *RequestBody_RegexValue: + if fv, exists := v.FldValidators["value_type.regex_value"]; exists { + val := m.GetValueType().(*RequestBody_RegexValue).RegexValue + vOpts := append(opts, + db.WithValidateField("value_type"), + db.WithValidateField("regex_value"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } } @@ -27767,8 +17110,8 @@ func (v *ValidateRouteTypeRedirect) Validate(ctx context.Context, pm interface{} } // Well-known symbol for default validator implementation -var DefaultRouteTypeRedirectValidator = func() *ValidateRouteTypeRedirect { - v := &ValidateRouteTypeRedirect{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRequestBodyValidator = func() *ValidateRequestBody { + v := &ValidateRequestBody{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -27778,65 +17121,82 @@ var DefaultRouteTypeRedirectValidator = func() *ValidateRouteTypeRedirect { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhValueType := v.ValueTypeValidationRuleHandler + rulesValueType := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhPath(rulesPath) + vFn, err = vrhValueType(rulesValueType) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeRedirect.path: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RequestBody.value_type: %s", err) panic(errMsg) } - v.FldValidators["path"] = vFn + v.FldValidators["value_type"] = vFn - vrhHeaders := v.HeadersValidationRuleHandler - rulesHeaders := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", + vrhValueTypeExactValue := v.ValueTypeExactValueValidationRuleHandler + rulesValueTypeExactValue := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + } + vFnMap["value_type.exact_value"], err = vrhValueTypeExactValue(rulesValueTypeExactValue) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RequestBody.value_type_exact_value: %s", err) + panic(errMsg) + } + vrhValueTypeRegexValue := v.ValueTypeRegexValueValidationRuleHandler + rulesValueTypeRegexValue := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + "ves.io.schema.rules.string.min_len": "1", + "ves.io.schema.rules.string.regex": "true", } - vFn, err = vrhHeaders(rulesHeaders) + vFnMap["value_type.regex_value"], err = vrhValueTypeRegexValue(rulesValueTypeRegexValue) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeRedirect.headers: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RequestBody.value_type_regex_value: %s", err) panic(errMsg) } - v.FldValidators["headers"] = vFn - - v.FldValidators["route_redirect"] = ves_io_schema_route.RouteRedirectValidator().Validate - v.FldValidators["incoming_port"] = ves_io_schema.PortMatcherTypeValidator().Validate + v.FldValidators["value_type.exact_value"] = vFnMap["value_type.exact_value"] + v.FldValidators["value_type.regex_value"] = vFnMap["value_type.regex_value"] return v }() -func RouteTypeRedirectValidator() db.Validator { - return DefaultRouteTypeRedirectValidator +func RequestBodyValidator() db.Validator { + return DefaultRequestBodyValidator } // augmented methods on protoc/std generated struct -func (m *RouteTypeSimple) ToJSON() (string, error) { +func (m *RouteSimpleAdvancedOptions) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *RouteTypeSimple) ToYAML() (string, error) { +func (m *RouteSimpleAdvancedOptions) ToYAML() (string, error) { return codec.ToYAML(m) } // Redact squashes sensitive info in m (in-place) -func (m *RouteTypeSimple) Redact(ctx context.Context) error { +func (m *RouteSimpleAdvancedOptions) Redact(ctx context.Context) error { // clear fields with confidential option set (at message or field level) if m == nil { return nil } - if err := m.GetAdvancedOptions().Redact(ctx); err != nil { - return errors.Wrapf(err, "Redacting RouteTypeSimple.advanced_options") + for idx, e := range m.GetRequestHeadersToAdd() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting RouteSimpleAdvancedOptions.request_headers_to_add idx %v", idx) + } + } + + for idx, e := range m.GetResponseHeadersToAdd() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting RouteSimpleAdvancedOptions.response_headers_to_add idx %v", idx) + } } return nil } -func (m *RouteTypeSimple) DeepCopy() *RouteTypeSimple { +func (m *RouteSimpleAdvancedOptions) DeepCopy() *RouteSimpleAdvancedOptions { if m == nil { return nil } @@ -27844,7 +17204,7 @@ func (m *RouteTypeSimple) DeepCopy() *RouteTypeSimple { if err != nil { return nil } - c := &RouteTypeSimple{} + c := &RouteSimpleAdvancedOptions{} err = c.Unmarshal(ser) if err != nil { return nil @@ -27852,546 +17212,553 @@ func (m *RouteTypeSimple) DeepCopy() *RouteTypeSimple { return c } -func (m *RouteTypeSimple) DeepCopyProto() proto.Message { +func (m *RouteSimpleAdvancedOptions) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *RouteTypeSimple) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteTypeSimpleValidator().Validate(ctx, m, opts...) -} - -func (m *RouteTypeSimple) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetAdvancedOptionsDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetAdvancedOptionsDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetOriginPoolsDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetOriginPoolsDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -// GetDRefInfo for the field's type -func (m *RouteTypeSimple) GetAdvancedOptionsDRefInfo() ([]db.DRefInfo, error) { - if m.GetAdvancedOptions() == nil { - return nil, nil - } - - drInfos, err := m.GetAdvancedOptions().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetAdvancedOptions().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "advanced_options." + dri.DRField - } - return drInfos, err - -} - -// GetDRefInfo for the field's type -func (m *RouteTypeSimple) GetOriginPoolsDRefInfo() ([]db.DRefInfo, error) { - if m.GetOriginPools() == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - for idx, e := range m.GetOriginPools() { - driSet, err := e.GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetOriginPools() GetDRefInfo() FAILED") - } - for i := range driSet { - dri := &driSet[i] - dri.DRField = fmt.Sprintf("origin_pools[%v].%s", idx, dri.DRField) - } - drInfos = append(drInfos, driSet...) - } - return drInfos, nil - -} - -type ValidateRouteTypeSimple struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateRouteTypeSimple) HostRewriteParamsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite_params") - } - return validatorFn, nil -} - -func (v *ValidateRouteTypeSimple) HostRewriteParamsHostRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_HostRewrite, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite") - } - return oValidatorFn_HostRewrite, nil -} - -func (v *ValidateRouteTypeSimple) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateRouteTypeSimple) OriginPoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for origin_pools") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for origin_pools") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated origin_pools") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items origin_pools") - } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateRouteTypeSimple) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") - } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema.HeaderMatcherType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated headers") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items headers") - } - return nil - } - - return validatorFn, nil +func (m *RouteSimpleAdvancedOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteSimpleAdvancedOptionsValidator().Validate(ctx, m, opts...) } -func (v *ValidateRouteTypeSimple) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteTypeSimple) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *RouteTypeSimple got type %s", t) - } - } +func (m *RouteSimpleAdvancedOptions) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { - return nil + return nil, nil } - if fv, exists := v.FldValidators["advanced_options"]; exists { - - vOpts := append(opts, db.WithValidateField("advanced_options")) - if err := fv(ctx, m.GetAdvancedOptions(), vOpts...); err != nil { - return err - } + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetMirroringChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetMirroringChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := m.GetWafChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetWafChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) } - if fv, exists := v.FldValidators["headers"]; exists { - vOpts := append(opts, db.WithValidateField("headers")) - if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { - return err - } + return drInfos, nil - } +} - if fv, exists := v.FldValidators["host_rewrite_params"]; exists { - val := m.GetHostRewriteParams() - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } +// GetDRefInfo for the field's type +func (m *RouteSimpleAdvancedOptions) GetMirroringChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetMirroringChoice() == nil { + return nil, nil } + switch m.GetMirroringChoice().(type) { + case *RouteSimpleAdvancedOptions_DisableMirroring: - switch m.GetHostRewriteParams().(type) { - case *RouteTypeSimple_AutoHostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.auto_host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*RouteTypeSimple_AutoHostRewrite).AutoHostRewrite - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("auto_host_rewrite"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *RouteTypeSimple_HostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*RouteTypeSimple_HostRewrite).HostRewrite - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("host_rewrite"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + return nil, nil + + case *RouteSimpleAdvancedOptions_MirrorPolicy: + + drInfos, err := m.GetMirrorPolicy().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetMirrorPolicy().GetDRefInfo() FAILED") } - case *RouteTypeSimple_DisableHostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.disable_host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*RouteTypeSimple_DisableHostRewrite).DisableHostRewrite - vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("disable_host_rewrite"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "mirror_policy." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["http_method"]; exists { +} - vOpts := append(opts, db.WithValidateField("http_method")) - if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { - return err - } +func (m *RouteSimpleAdvancedOptions) GetWafChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetWafChoice().(type) { + case *RouteSimpleAdvancedOptions_InheritedWaf: - } + return nil, nil - if fv, exists := v.FldValidators["incoming_port"]; exists { + case *RouteSimpleAdvancedOptions_DisableWaf: - vOpts := append(opts, db.WithValidateField("incoming_port")) - if err := fv(ctx, m.GetIncomingPort(), vOpts...); err != nil { - return err - } + return nil, nil - } + case *RouteSimpleAdvancedOptions_AppFirewall: - if fv, exists := v.FldValidators["origin_pools"]; exists { - vOpts := append(opts, db.WithValidateField("origin_pools")) - if err := fv(ctx, m.GetOriginPools(), vOpts...); err != nil { - return err + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("app_firewall.Object") + dri := db.DRefInfo{ + RefdType: "app_firewall.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "app_firewall", + Ref: vdRef, } + return []db.DRefInfo{dri}, nil + default: + return nil, nil } +} - if fv, exists := v.FldValidators["path"]; exists { +// GetWafChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *RouteSimpleAdvancedOptions) GetWafChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { - return err + switch m.GetWafChoice().(type) { + case *RouteSimpleAdvancedOptions_InheritedWaf: + + case *RouteSimpleAdvancedOptions_DisableWaf: + + case *RouteSimpleAdvancedOptions_AppFirewall: + refdType, err := d.TypeForEntryKind("", "", "app_firewall.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: app_firewall") + } + + vref := m.GetAppFirewall() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "app_firewall.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } } - return nil + return entries, nil } -// Well-known symbol for default validator implementation -var DefaultRouteTypeSimpleValidator = func() *ValidateRouteTypeSimple { - v := &ValidateRouteTypeSimple{FldValidators: map[string]db.ValidatorFunc{}} +type ValidateRouteSimpleAdvancedOptions struct { + FldValidators map[string]db.ValidatorFunc +} - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap +func (v *ValidateRouteSimpleAdvancedOptions) BufferChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for buffer_choice") + } + return validatorFn, nil +} - vrhHostRewriteParams := v.HostRewriteParamsValidationRuleHandler - rulesHostRewriteParams := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", +func (v *ValidateRouteSimpleAdvancedOptions) ClusterRetractChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for cluster_retract_choice") } - vFn, err = vrhHostRewriteParams(rulesHostRewriteParams) + return validatorFn, nil +} + +func (v *ValidateRouteSimpleAdvancedOptions) HashPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.host_rewrite_params: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for hash_policy_choice") } - v.FldValidators["host_rewrite_params"] = vFn + return validatorFn, nil +} - vrhHostRewriteParamsHostRewrite := v.HostRewriteParamsHostRewriteValidationRuleHandler - rulesHostRewriteParamsHostRewrite := map[string]string{ - "ves.io.schema.rules.string.hostname": "true", +func (v *ValidateRouteSimpleAdvancedOptions) MirroringChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for mirroring_choice") } - vFnMap["host_rewrite_params.host_rewrite"], err = vrhHostRewriteParamsHostRewrite(rulesHostRewriteParamsHostRewrite) + return validatorFn, nil +} + +func (v *ValidateRouteSimpleAdvancedOptions) RetryPolicyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RouteTypeSimple.host_rewrite_params_host_rewrite: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for retry_policy_choice") } + return validatorFn, nil +} - v.FldValidators["host_rewrite_params.host_rewrite"] = vFnMap["host_rewrite_params.host_rewrite"] +func (v *ValidateRouteSimpleAdvancedOptions) RewriteChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for rewrite_choice") + } + return validatorFn, nil +} - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", +func (v *ValidateRouteSimpleAdvancedOptions) RewriteChoicePrefixRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_PrefixRewrite, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for prefix_rewrite") } - vFn, err = vrhPath(rulesPath) + return oValidatorFn_PrefixRewrite, nil +} + +func (v *ValidateRouteSimpleAdvancedOptions) SpdyChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.path: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "ValidationRuleHandler for spdy_choice") } - v.FldValidators["path"] = vFn + return validatorFn, nil +} + +func (v *ValidateRouteSimpleAdvancedOptions) WebsocketChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for websocket_choice") + } + return validatorFn, nil +} + +func (v *ValidateRouteSimpleAdvancedOptions) EndpointSubsetsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - vrhOriginPools := v.OriginPoolsValidationRuleHandler - rulesOriginPools := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + itemKeyRules := db.GetMapStringKeyRules(rules) + itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) + if err != nil { + return nil, errors.Wrap(err, "Item key ValidationRuleHandler for endpoint_subsets") } - vFn, err = vrhOriginPools(rulesOriginPools) + itemValRules := db.GetMapStringValueRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemValRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.origin_pools: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Item value ValidationRuleHandler for endpoint_subsets") } - v.FldValidators["origin_pools"] = vFn - - vrhHeaders := v.HeadersValidationRuleHandler - rulesHeaders := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.unique": "true", + itemsValidatorFn := func(ctx context.Context, kv map[string]string, opts ...db.ValidateOpt) error { + for key, value := range kv { + if err := itemKeyFn(ctx, key, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + } + if err := itemValFn(ctx, value, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + } + } + return nil } - vFn, err = vrhHeaders(rulesHeaders) + mapValFn, err := db.NewMapValidationRuleHandler(rules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.headers: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Map ValidationRuleHandler for endpoint_subsets") } - v.FldValidators["headers"] = vFn - v.FldValidators["advanced_options"] = RouteSimpleAdvancedOptionsValidator().Validate + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.(map[string]string) + if !ok { + return fmt.Errorf("Map validation expected map[ string ]string, got %T", val) + } + if err := mapValFn(ctx, len(elems), opts...); err != nil { + return errors.Wrap(err, "map endpoint_subsets") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items endpoint_subsets") + } + return nil + } - v.FldValidators["incoming_port"] = ves_io_schema.PortMatcherTypeValidator().Validate + return validatorFn, nil +} - return v -}() +func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func RouteTypeSimpleValidator() db.Validator { - return DefaultRouteTypeSimpleValidator -} + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for request_headers_to_add") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_add") + } -// augmented methods on protoc/std generated struct + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated request_headers_to_add") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items request_headers_to_add") + } + return nil + } -func (m *RouteTypeSimpleWithDefaultOriginPool) ToJSON() (string, error) { - return codec.ToJSON(m) + return validatorFn, nil } -func (m *RouteTypeSimpleWithDefaultOriginPool) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateRouteSimpleAdvancedOptions) RequestHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *RouteTypeSimpleWithDefaultOriginPool) DeepCopy() *RouteTypeSimpleWithDefaultOriginPool { - if m == nil { - return nil - } - ser, err := m.Marshal() + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Item ValidationRuleHandler for request_headers_to_remove") + } + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &RouteTypeSimpleWithDefaultOriginPool{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for request_headers_to_remove") } - return c -} -func (m *RouteTypeSimpleWithDefaultOriginPool) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated request_headers_to_remove") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items request_headers_to_remove") + } return nil } - return m.DeepCopy() -} -func (m *RouteTypeSimpleWithDefaultOriginPool) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return RouteTypeSimpleWithDefaultOriginPoolValidator().Validate(ctx, m, opts...) + return validatorFn, nil } -type ValidateRouteTypeSimpleWithDefaultOriginPool struct { - FldValidators map[string]db.ValidatorFunc -} +func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToAddValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) HostRewriteParamsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite_params") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for response_headers_to_add") } - return validatorFn, nil -} - -func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) HostRewriteParamsHostRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_HostRewrite, err := db.NewStringValidationRuleHandler(rules) + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderManipulationOptionType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderManipulationOptionTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_add") } - return oValidatorFn_HostRewrite, nil + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderManipulationOptionType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderManipulationOptionType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_headers_to_add") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_headers_to_add") + } + return nil + } + + return validatorFn, nil } -func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateRouteSimpleAdvancedOptions) ResponseHeadersToRemoveValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepStringItemRules(rules) + itemValFn, err := db.NewStringValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + return nil, errors.Wrap(err, "Item ValidationRuleHandler for response_headers_to_remove") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []string, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for response_headers_to_remove") + } - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]string) + if !ok { + return fmt.Errorf("Repeated validation expected []string, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal := fmt.Sprintf("%v", elem) + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated response_headers_to_remove") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items response_headers_to_remove") } - return nil } return validatorFn, nil } -func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*RouteTypeSimpleWithDefaultOriginPool) +func (v *ValidateRouteSimpleAdvancedOptions) TimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for timeout") + } + + return validatorFn, nil +} + +func (v *ValidateRouteSimpleAdvancedOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteSimpleAdvancedOptions) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *RouteTypeSimpleWithDefaultOriginPool got type %s", t) + return fmt.Errorf("Expected type *RouteSimpleAdvancedOptions got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["host_rewrite_params"]; exists { - val := m.GetHostRewriteParams() + switch m.GetBotDefenseJavascriptInjectionChoice().(type) { + case *RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection: + if fv, exists := v.FldValidators["bot_defense_javascript_injection_choice.inherited_bot_defense_javascript_injection"]; exists { + val := m.GetBotDefenseJavascriptInjectionChoice().(*RouteSimpleAdvancedOptions_InheritedBotDefenseJavascriptInjection).InheritedBotDefenseJavascriptInjection + vOpts := append(opts, + db.WithValidateField("bot_defense_javascript_injection_choice"), + db.WithValidateField("inherited_bot_defense_javascript_injection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection: + if fv, exists := v.FldValidators["bot_defense_javascript_injection_choice.bot_defense_javascript_injection"]; exists { + val := m.GetBotDefenseJavascriptInjectionChoice().(*RouteSimpleAdvancedOptions_BotDefenseJavascriptInjection).BotDefenseJavascriptInjection + vOpts := append(opts, + db.WithValidateField("bot_defense_javascript_injection_choice"), + db.WithValidateField("bot_defense_javascript_injection"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["buffer_choice"]; exists { + val := m.GetBufferChoice() vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), + db.WithValidateField("buffer_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetHostRewriteParams().(type) { - case *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.auto_host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite).AutoHostRewrite + switch m.GetBufferChoice().(type) { + case *RouteSimpleAdvancedOptions_CommonBuffering: + if fv, exists := v.FldValidators["buffer_choice.common_buffering"]; exists { + val := m.GetBufferChoice().(*RouteSimpleAdvancedOptions_CommonBuffering).CommonBuffering vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("auto_host_rewrite"), + db.WithValidateField("buffer_choice"), + db.WithValidateField("common_buffering"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteTypeSimpleWithDefaultOriginPool_HostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*RouteTypeSimpleWithDefaultOriginPool_HostRewrite).HostRewrite + case *RouteSimpleAdvancedOptions_BufferPolicy: + if fv, exists := v.FldValidators["buffer_choice.buffer_policy"]; exists { + val := m.GetBufferChoice().(*RouteSimpleAdvancedOptions_BufferPolicy).BufferPolicy vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("host_rewrite"), + db.WithValidateField("buffer_choice"), + db.WithValidateField("buffer_policy"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite: - if fv, exists := v.FldValidators["host_rewrite_params.disable_host_rewrite"]; exists { - val := m.GetHostRewriteParams().(*RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite).DisableHostRewrite + + } + + if fv, exists := v.FldValidators["cluster_retract_choice"]; exists { + val := m.GetClusterRetractChoice() + vOpts := append(opts, + db.WithValidateField("cluster_retract_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetClusterRetractChoice().(type) { + case *RouteSimpleAdvancedOptions_RetractCluster: + if fv, exists := v.FldValidators["cluster_retract_choice.retract_cluster"]; exists { + val := m.GetClusterRetractChoice().(*RouteSimpleAdvancedOptions_RetractCluster).RetractCluster vOpts := append(opts, - db.WithValidateField("host_rewrite_params"), - db.WithValidateField("disable_host_rewrite"), + db.WithValidateField("cluster_retract_choice"), + db.WithValidateField("retract_cluster"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_DoNotRetractCluster: + if fv, exists := v.FldValidators["cluster_retract_choice.do_not_retract_cluster"]; exists { + val := m.GetClusterRetractChoice().(*RouteSimpleAdvancedOptions_DoNotRetractCluster).DoNotRetractCluster + vOpts := append(opts, + db.WithValidateField("cluster_retract_choice"), + db.WithValidateField("do_not_retract_cluster"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -28400,316 +17767,322 @@ func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) Validate(ctx context.Cont } - if fv, exists := v.FldValidators["http_method"]; exists { + if fv, exists := v.FldValidators["cors_policy"]; exists { - vOpts := append(opts, db.WithValidateField("http_method")) - if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("cors_policy")) + if err := fv(ctx, m.GetCorsPolicy(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["path"]; exists { + if fv, exists := v.FldValidators["csrf_policy"]; exists { - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("csrf_policy")) + if err := fv(ctx, m.GetCsrfPolicy(), vOpts...); err != nil { return err } } - return nil -} - -// Well-known symbol for default validator implementation -var DefaultRouteTypeSimpleWithDefaultOriginPoolValidator = func() *ValidateRouteTypeSimpleWithDefaultOriginPool { - v := &ValidateRouteTypeSimpleWithDefaultOriginPool{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhHostRewriteParams := v.HostRewriteParamsValidationRuleHandler - rulesHostRewriteParams := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhHostRewriteParams(rulesHostRewriteParams) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimpleWithDefaultOriginPool.host_rewrite_params: %s", err) - panic(errMsg) - } - v.FldValidators["host_rewrite_params"] = vFn - - vrhHostRewriteParamsHostRewrite := v.HostRewriteParamsHostRewriteValidationRuleHandler - rulesHostRewriteParamsHostRewrite := map[string]string{ - "ves.io.schema.rules.string.hostname": "true", - } - vFnMap["host_rewrite_params.host_rewrite"], err = vrhHostRewriteParamsHostRewrite(rulesHostRewriteParamsHostRewrite) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RouteTypeSimpleWithDefaultOriginPool.host_rewrite_params_host_rewrite: %s", err) - panic(errMsg) - } - - v.FldValidators["host_rewrite_params.host_rewrite"] = vFnMap["host_rewrite_params.host_rewrite"] - - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPath(rulesPath) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimpleWithDefaultOriginPool.path: %s", err) - panic(errMsg) - } - v.FldValidators["path"] = vFn - - return v -}() - -func RouteTypeSimpleWithDefaultOriginPoolValidator() db.Validator { - return DefaultRouteTypeSimpleWithDefaultOriginPoolValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ServerUrlRule) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ServerUrlRule) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ServerUrlRule) DeepCopy() *ServerUrlRule { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ServerUrlRule{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *ServerUrlRule) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *ServerUrlRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ServerUrlRuleValidator().Validate(ctx, m, opts...) -} - -func (m *ServerUrlRule) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } + if fv, exists := v.FldValidators["disable_location_add"]; exists { - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetClientMatcherDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetClientMatcherDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } + vOpts := append(opts, db.WithValidateField("disable_location_add")) + if err := fv(ctx, m.GetDisableLocationAdd(), vOpts...); err != nil { + return err + } - if fdrInfos, err := m.GetRateLimiterChoiceDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetRateLimiterChoiceDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) } - return drInfos, nil - -} + if fv, exists := v.FldValidators["endpoint_subsets"]; exists { + vOpts := append(opts, db.WithValidateField("endpoint_subsets")) + if err := fv(ctx, m.GetEndpointSubsets(), vOpts...); err != nil { + return err + } -// GetDRefInfo for the field's type -func (m *ServerUrlRule) GetClientMatcherDRefInfo() ([]db.DRefInfo, error) { - if m.GetClientMatcher() == nil { - return nil, nil } - drInfos, err := m.GetClientMatcher().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetClientMatcher().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "client_matcher." + dri.DRField + if fv, exists := v.FldValidators["hash_policy_choice"]; exists { + val := m.GetHashPolicyChoice() + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return drInfos, err -} + switch m.GetHashPolicyChoice().(type) { + case *RouteSimpleAdvancedOptions_CommonHashPolicy: + if fv, exists := v.FldValidators["hash_policy_choice.common_hash_policy"]; exists { + val := m.GetHashPolicyChoice().(*RouteSimpleAdvancedOptions_CommonHashPolicy).CommonHashPolicy + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("common_hash_policy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_SpecificHashPolicy: + if fv, exists := v.FldValidators["hash_policy_choice.specific_hash_policy"]; exists { + val := m.GetHashPolicyChoice().(*RouteSimpleAdvancedOptions_SpecificHashPolicy).SpecificHashPolicy + vOpts := append(opts, + db.WithValidateField("hash_policy_choice"), + db.WithValidateField("specific_hash_policy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } -// GetDRefInfo for the field's type -func (m *ServerUrlRule) GetRateLimiterChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetRateLimiterChoice() == nil { - return nil, nil } - switch m.GetRateLimiterChoice().(type) { - case *ServerUrlRule_InlineRateLimiter: - drInfos, err := m.GetInlineRateLimiter().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetInlineRateLimiter().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "inline_rate_limiter." + dri.DRField + if fv, exists := v.FldValidators["mirroring_choice"]; exists { + val := m.GetMirroringChoice() + vOpts := append(opts, + db.WithValidateField("mirroring_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err } - return drInfos, err - - case *ServerUrlRule_RefRateLimiter: + } - vref := m.GetRefRateLimiter() - if vref == nil { - return nil, nil + switch m.GetMirroringChoice().(type) { + case *RouteSimpleAdvancedOptions_DisableMirroring: + if fv, exists := v.FldValidators["mirroring_choice.disable_mirroring"]; exists { + val := m.GetMirroringChoice().(*RouteSimpleAdvancedOptions_DisableMirroring).DisableMirroring + vOpts := append(opts, + db.WithValidateField("mirroring_choice"), + db.WithValidateField("disable_mirroring"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("rate_limiter.Object") - dri := db.DRefInfo{ - RefdType: "rate_limiter.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "ref_rate_limiter", - Ref: vdRef, + case *RouteSimpleAdvancedOptions_MirrorPolicy: + if fv, exists := v.FldValidators["mirroring_choice.mirror_policy"]; exists { + val := m.GetMirroringChoice().(*RouteSimpleAdvancedOptions_MirrorPolicy).MirrorPolicy + vOpts := append(opts, + db.WithValidateField("mirroring_choice"), + db.WithValidateField("mirror_policy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } - return []db.DRefInfo{dri}, nil - default: - return nil, nil } -} + if fv, exists := v.FldValidators["priority"]; exists { -type ValidateServerUrlRule struct { - FldValidators map[string]db.ValidatorFunc -} + vOpts := append(opts, db.WithValidateField("priority")) + if err := fv(ctx, m.GetPriority(), vOpts...); err != nil { + return err + } -func (v *ValidateServerUrlRule) DomainChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_choice") } - return validatorFn, nil -} -func (v *ValidateServerUrlRule) DomainChoiceSpecificDomainValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_SpecificDomain, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for specific_domain") - } - return oValidatorFn_SpecificDomain, nil -} + if fv, exists := v.FldValidators["request_headers_to_add"]; exists { + vOpts := append(opts, db.WithValidateField("request_headers_to_add")) + if err := fv(ctx, m.GetRequestHeadersToAdd(), vOpts...); err != nil { + return err + } -func (v *ValidateServerUrlRule) RateLimiterChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for rate_limiter_choice") } - return validatorFn, nil -} -func (v *ValidateServerUrlRule) BasePathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["request_headers_to_remove"]; exists { + vOpts := append(opts, db.WithValidateField("request_headers_to_remove")) + if err := fv(ctx, m.GetRequestHeadersToRemove(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for base_path") } - return validatorFn, nil -} - -func (v *ValidateServerUrlRule) ApiGroupValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + if fv, exists := v.FldValidators["response_headers_to_add"]; exists { + vOpts := append(opts, db.WithValidateField("response_headers_to_add")) + if err := fv(ctx, m.GetResponseHeadersToAdd(), vOpts...); err != nil { + return err + } - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_group") } - return validatorFn, nil -} - -func (v *ValidateServerUrlRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ServerUrlRule) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ServerUrlRule got type %s", t) + if fv, exists := v.FldValidators["response_headers_to_remove"]; exists { + vOpts := append(opts, db.WithValidateField("response_headers_to_remove")) + if err := fv(ctx, m.GetResponseHeadersToRemove(), vOpts...); err != nil { + return err } - } - if m == nil { - return nil - } - if fv, exists := v.FldValidators["api_group"]; exists { + } - vOpts := append(opts, db.WithValidateField("api_group")) - if err := fv(ctx, m.GetApiGroup(), vOpts...); err != nil { + if fv, exists := v.FldValidators["retry_policy_choice"]; exists { + val := m.GetRetryPolicyChoice() + vOpts := append(opts, + db.WithValidateField("retry_policy_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } - } - if fv, exists := v.FldValidators["base_path"]; exists { - - vOpts := append(opts, db.WithValidateField("base_path")) - if err := fv(ctx, m.GetBasePath(), vOpts...); err != nil { - return err + switch m.GetRetryPolicyChoice().(type) { + case *RouteSimpleAdvancedOptions_DefaultRetryPolicy: + if fv, exists := v.FldValidators["retry_policy_choice.default_retry_policy"]; exists { + val := m.GetRetryPolicyChoice().(*RouteSimpleAdvancedOptions_DefaultRetryPolicy).DefaultRetryPolicy + vOpts := append(opts, + db.WithValidateField("retry_policy_choice"), + db.WithValidateField("default_retry_policy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_RetryPolicy: + if fv, exists := v.FldValidators["retry_policy_choice.retry_policy"]; exists { + val := m.GetRetryPolicyChoice().(*RouteSimpleAdvancedOptions_RetryPolicy).RetryPolicy + vOpts := append(opts, + db.WithValidateField("retry_policy_choice"), + db.WithValidateField("retry_policy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_NoRetryPolicy: + if fv, exists := v.FldValidators["retry_policy_choice.no_retry_policy"]; exists { + val := m.GetRetryPolicyChoice().(*RouteSimpleAdvancedOptions_NoRetryPolicy).NoRetryPolicy + vOpts := append(opts, + db.WithValidateField("retry_policy_choice"), + db.WithValidateField("no_retry_policy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } } - if fv, exists := v.FldValidators["client_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("client_matcher")) - if err := fv(ctx, m.GetClientMatcher(), vOpts...); err != nil { + if fv, exists := v.FldValidators["rewrite_choice"]; exists { + val := m.GetRewriteChoice() + vOpts := append(opts, + db.WithValidateField("rewrite_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { return err } + } + + switch m.GetRewriteChoice().(type) { + case *RouteSimpleAdvancedOptions_DisablePrefixRewrite: + if fv, exists := v.FldValidators["rewrite_choice.disable_prefix_rewrite"]; exists { + val := m.GetRewriteChoice().(*RouteSimpleAdvancedOptions_DisablePrefixRewrite).DisablePrefixRewrite + vOpts := append(opts, + db.WithValidateField("rewrite_choice"), + db.WithValidateField("disable_prefix_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_PrefixRewrite: + if fv, exists := v.FldValidators["rewrite_choice.prefix_rewrite"]; exists { + val := m.GetRewriteChoice().(*RouteSimpleAdvancedOptions_PrefixRewrite).PrefixRewrite + vOpts := append(opts, + db.WithValidateField("rewrite_choice"), + db.WithValidateField("prefix_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_RegexRewrite: + if fv, exists := v.FldValidators["rewrite_choice.regex_rewrite"]; exists { + val := m.GetRewriteChoice().(*RouteSimpleAdvancedOptions_RegexRewrite).RegexRewrite + vOpts := append(opts, + db.WithValidateField("rewrite_choice"), + db.WithValidateField("regex_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } - if fv, exists := v.FldValidators["domain_choice"]; exists { - val := m.GetDomainChoice() + if fv, exists := v.FldValidators["spdy_choice"]; exists { + val := m.GetSpdyChoice() vOpts := append(opts, - db.WithValidateField("domain_choice"), + db.WithValidateField("spdy_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetDomainChoice().(type) { - case *ServerUrlRule_AnyDomain: - if fv, exists := v.FldValidators["domain_choice.any_domain"]; exists { - val := m.GetDomainChoice().(*ServerUrlRule_AnyDomain).AnyDomain + switch m.GetSpdyChoice().(type) { + case *RouteSimpleAdvancedOptions_DisableSpdy: + if fv, exists := v.FldValidators["spdy_choice.disable_spdy"]; exists { + val := m.GetSpdyChoice().(*RouteSimpleAdvancedOptions_DisableSpdy).DisableSpdy vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("any_domain"), + db.WithValidateField("spdy_choice"), + db.WithValidateField("disable_spdy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_EnableSpdy: + if fv, exists := v.FldValidators["spdy_choice.enable_spdy"]; exists { + val := m.GetSpdyChoice().(*RouteSimpleAdvancedOptions_EnableSpdy).EnableSpdy + vOpts := append(opts, + db.WithValidateField("spdy_choice"), + db.WithValidateField("enable_spdy"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["timeout"]; exists { + + vOpts := append(opts, db.WithValidateField("timeout")) + if err := fv(ctx, m.GetTimeout(), vOpts...); err != nil { + return err + } + + } + + switch m.GetWafChoice().(type) { + case *RouteSimpleAdvancedOptions_InheritedWaf: + if fv, exists := v.FldValidators["waf_choice.inherited_waf"]; exists { + val := m.GetWafChoice().(*RouteSimpleAdvancedOptions_InheritedWaf).InheritedWaf + vOpts := append(opts, + db.WithValidateField("waf_choice"), + db.WithValidateField("inherited_waf"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteSimpleAdvancedOptions_DisableWaf: + if fv, exists := v.FldValidators["waf_choice.disable_waf"]; exists { + val := m.GetWafChoice().(*RouteSimpleAdvancedOptions_DisableWaf).DisableWaf + vOpts := append(opts, + db.WithValidateField("waf_choice"), + db.WithValidateField("disable_waf"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ServerUrlRule_SpecificDomain: - if fv, exists := v.FldValidators["domain_choice.specific_domain"]; exists { - val := m.GetDomainChoice().(*ServerUrlRule_SpecificDomain).SpecificDomain + case *RouteSimpleAdvancedOptions_AppFirewall: + if fv, exists := v.FldValidators["waf_choice.app_firewall"]; exists { + val := m.GetWafChoice().(*RouteSimpleAdvancedOptions_AppFirewall).AppFirewall vOpts := append(opts, - db.WithValidateField("domain_choice"), - db.WithValidateField("specific_domain"), + db.WithValidateField("waf_choice"), + db.WithValidateField("app_firewall"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -28718,34 +18091,34 @@ func (v *ValidateServerUrlRule) Validate(ctx context.Context, pm interface{}, op } - if fv, exists := v.FldValidators["rate_limiter_choice"]; exists { - val := m.GetRateLimiterChoice() + if fv, exists := v.FldValidators["websocket_choice"]; exists { + val := m.GetWebsocketChoice() vOpts := append(opts, - db.WithValidateField("rate_limiter_choice"), + db.WithValidateField("websocket_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetRateLimiterChoice().(type) { - case *ServerUrlRule_InlineRateLimiter: - if fv, exists := v.FldValidators["rate_limiter_choice.inline_rate_limiter"]; exists { - val := m.GetRateLimiterChoice().(*ServerUrlRule_InlineRateLimiter).InlineRateLimiter + switch m.GetWebsocketChoice().(type) { + case *RouteSimpleAdvancedOptions_DisableWebSocketConfig: + if fv, exists := v.FldValidators["websocket_choice.disable_web_socket_config"]; exists { + val := m.GetWebsocketChoice().(*RouteSimpleAdvancedOptions_DisableWebSocketConfig).DisableWebSocketConfig vOpts := append(opts, - db.WithValidateField("rate_limiter_choice"), - db.WithValidateField("inline_rate_limiter"), + db.WithValidateField("websocket_choice"), + db.WithValidateField("disable_web_socket_config"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ServerUrlRule_RefRateLimiter: - if fv, exists := v.FldValidators["rate_limiter_choice.ref_rate_limiter"]; exists { - val := m.GetRateLimiterChoice().(*ServerUrlRule_RefRateLimiter).RefRateLimiter + case *RouteSimpleAdvancedOptions_WebSocketConfig: + if fv, exists := v.FldValidators["websocket_choice.web_socket_config"]; exists { + val := m.GetWebsocketChoice().(*RouteSimpleAdvancedOptions_WebSocketConfig).WebSocketConfig vOpts := append(opts, - db.WithValidateField("rate_limiter_choice"), - db.WithValidateField("ref_rate_limiter"), + db.WithValidateField("websocket_choice"), + db.WithValidateField("web_socket_config"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -28754,21 +18127,12 @@ func (v *ValidateServerUrlRule) Validate(ctx context.Context, pm interface{}, op } - if fv, exists := v.FldValidators["request_matcher"]; exists { - - vOpts := append(opts, db.WithValidateField("request_matcher")) - if err := fv(ctx, m.GetRequestMatcher(), vOpts...); err != nil { - return err - } - - } - return nil } // Well-known symbol for default validator implementation -var DefaultServerUrlRuleValidator = func() *ValidateServerUrlRule { - v := &ValidateServerUrlRule{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRouteSimpleAdvancedOptionsValidator = func() *ValidateRouteSimpleAdvancedOptions { + v := &ValidateRouteSimpleAdvancedOptions{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -28778,301 +18142,231 @@ var DefaultServerUrlRuleValidator = func() *ValidateServerUrlRule { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhDomainChoice := v.DomainChoiceValidationRuleHandler - rulesDomainChoice := map[string]string{ + vrhBufferChoice := v.BufferChoiceValidationRuleHandler + rulesBufferChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhDomainChoice(rulesDomainChoice) + vFn, err = vrhBufferChoice(rulesBufferChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.domain_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.buffer_choice: %s", err) panic(errMsg) } - v.FldValidators["domain_choice"] = vFn + v.FldValidators["buffer_choice"] = vFn - vrhDomainChoiceSpecificDomain := v.DomainChoiceSpecificDomainValidationRuleHandler - rulesDomainChoiceSpecificDomain := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", - "ves.io.schema.rules.string.vh_domain": "true", + vrhClusterRetractChoice := v.ClusterRetractChoiceValidationRuleHandler + rulesClusterRetractChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFnMap["domain_choice.specific_domain"], err = vrhDomainChoiceSpecificDomain(rulesDomainChoiceSpecificDomain) + vFn, err = vrhClusterRetractChoice(rulesClusterRetractChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field ServerUrlRule.domain_choice_specific_domain: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.cluster_retract_choice: %s", err) panic(errMsg) } + v.FldValidators["cluster_retract_choice"] = vFn - v.FldValidators["domain_choice.specific_domain"] = vFnMap["domain_choice.specific_domain"] - - vrhRateLimiterChoice := v.RateLimiterChoiceValidationRuleHandler - rulesRateLimiterChoice := map[string]string{ + vrhHashPolicyChoice := v.HashPolicyChoiceValidationRuleHandler + rulesHashPolicyChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhRateLimiterChoice(rulesRateLimiterChoice) + vFn, err = vrhHashPolicyChoice(rulesHashPolicyChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.rate_limiter_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.hash_policy_choice: %s", err) panic(errMsg) } - v.FldValidators["rate_limiter_choice"] = vFn + v.FldValidators["hash_policy_choice"] = vFn - vrhBasePath := v.BasePathValidationRuleHandler - rulesBasePath := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.http_path": "true", - "ves.io.schema.rules.string.max_len": "128", + vrhMirroringChoice := v.MirroringChoiceValidationRuleHandler + rulesMirroringChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhBasePath(rulesBasePath) + vFn, err = vrhMirroringChoice(rulesMirroringChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.base_path: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.mirroring_choice: %s", err) panic(errMsg) } - v.FldValidators["base_path"] = vFn + v.FldValidators["mirroring_choice"] = vFn - vrhApiGroup := v.ApiGroupValidationRuleHandler - rulesApiGroup := map[string]string{ - "ves.io.schema.rules.string.max_len": "128", + vrhRetryPolicyChoice := v.RetryPolicyChoiceValidationRuleHandler + rulesRetryPolicyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhApiGroup(rulesApiGroup) + vFn, err = vrhRetryPolicyChoice(rulesRetryPolicyChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ServerUrlRule.api_group: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.retry_policy_choice: %s", err) panic(errMsg) } - v.FldValidators["api_group"] = vFn - - v.FldValidators["rate_limiter_choice.inline_rate_limiter"] = InlineRateLimiterValidator().Validate - v.FldValidators["rate_limiter_choice.ref_rate_limiter"] = ves_io_schema_views.ObjectRefTypeValidator().Validate - - v.FldValidators["client_matcher"] = ves_io_schema_policy.ClientMatcherValidator().Validate - - v.FldValidators["request_matcher"] = ves_io_schema_policy.RequestMatcherValidator().Validate - - return v -}() - -func ServerUrlRuleValidator() db.Validator { - return DefaultServerUrlRuleValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ServicePolicyList) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ServicePolicyList) ToYAML() (string, error) { - return codec.ToYAML(m) -} + v.FldValidators["retry_policy_choice"] = vFn -func (m *ServicePolicyList) DeepCopy() *ServicePolicyList { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil + vrhRewriteChoice := v.RewriteChoiceValidationRuleHandler + rulesRewriteChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - c := &ServicePolicyList{} - err = c.Unmarshal(ser) + vFn, err = vrhRewriteChoice(rulesRewriteChoice) if err != nil { - return nil + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.rewrite_choice: %s", err) + panic(errMsg) } - return c -} + v.FldValidators["rewrite_choice"] = vFn -func (m *ServicePolicyList) DeepCopyProto() proto.Message { - if m == nil { - return nil + vrhRewriteChoicePrefixRewrite := v.RewriteChoicePrefixRewriteValidationRuleHandler + rulesRewriteChoicePrefixRewrite := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", } - return m.DeepCopy() -} - -func (m *ServicePolicyList) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ServicePolicyListValidator().Validate(ctx, m, opts...) -} - -func (m *ServicePolicyList) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil + vFnMap["rewrite_choice.prefix_rewrite"], err = vrhRewriteChoicePrefixRewrite(rulesRewriteChoicePrefixRewrite) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RouteSimpleAdvancedOptions.rewrite_choice_prefix_rewrite: %s", err) + panic(errMsg) } - return m.GetPoliciesDRefInfo() - -} + v.FldValidators["rewrite_choice.prefix_rewrite"] = vFnMap["rewrite_choice.prefix_rewrite"] -func (m *ServicePolicyList) GetPoliciesDRefInfo() ([]db.DRefInfo, error) { - vrefs := m.GetPolicies() - if len(vrefs) == 0 { - return nil, nil + vrhSpdyChoice := v.SpdyChoiceValidationRuleHandler + rulesSpdyChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - drInfos := make([]db.DRefInfo, 0, len(vrefs)) - for i, vref := range vrefs { - if vref == nil { - return nil, fmt.Errorf("ServicePolicyList.policies[%d] has a nil value", i) - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("service_policy.Object") - // resolve kind to type if needed at DBObject.GetDRefInfo() - drInfos = append(drInfos, db.DRefInfo{ - RefdType: "service_policy.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "policies", - Ref: vdRef, - }) + vFn, err = vrhSpdyChoice(rulesSpdyChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.spdy_choice: %s", err) + panic(errMsg) } - return drInfos, nil - -} + v.FldValidators["spdy_choice"] = vFn -// GetPoliciesDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *ServicePolicyList) GetPoliciesDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "service_policy.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: service_policy") + vrhWebsocketChoice := v.WebsocketChoiceValidationRuleHandler + rulesWebsocketChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - for i, vref := range m.GetPolicies() { - if vref == nil { - return nil, fmt.Errorf("ServicePolicyList.policies[%d] has a nil value", i) - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "service_policy.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } + vFn, err = vrhWebsocketChoice(rulesWebsocketChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.websocket_choice: %s", err) + panic(errMsg) } + v.FldValidators["websocket_choice"] = vFn - return entries, nil -} - -type ValidateServicePolicyList struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateServicePolicyList) PoliciesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + vrhEndpointSubsets := v.EndpointSubsetsValidationRuleHandler + rulesEndpointSubsets := map[string]string{ + "ves.io.schema.rules.map.max_pairs": "16", + } + vFn, err = vrhEndpointSubsets(rulesEndpointSubsets) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.endpoint_subsets: %s", err) + panic(errMsg) + } + v.FldValidators["endpoint_subsets"] = vFn - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + vrhRequestHeadersToAdd := v.RequestHeadersToAddValidationRuleHandler + rulesRequestHeadersToAdd := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhRequestHeadersToAdd(rulesRequestHeadersToAdd) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for policies") + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.request_headers_to_add: %s", err) + panic(errMsg) } - itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.ObjectRefType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + v.FldValidators["request_headers_to_add"] = vFn + + vrhRequestHeadersToRemove := v.RequestHeadersToRemoveValidationRuleHandler + rulesRequestHeadersToRemove := map[string]string{ + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + vFn, err = vrhRequestHeadersToRemove(rulesRequestHeadersToRemove) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for policies") + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.request_headers_to_remove: %s", err) + panic(errMsg) } + v.FldValidators["request_headers_to_remove"] = vFn - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ves_io_schema_views.ObjectRefType) - if !ok { - return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.ObjectRefType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated policies") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items policies") - } - return nil + vrhResponseHeadersToAdd := v.ResponseHeadersToAddValidationRuleHandler + rulesResponseHeadersToAdd := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhResponseHeadersToAdd(rulesResponseHeadersToAdd) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.response_headers_to_add: %s", err) + panic(errMsg) } + v.FldValidators["response_headers_to_add"] = vFn - return validatorFn, nil -} + vrhResponseHeadersToRemove := v.ResponseHeadersToRemoveValidationRuleHandler + rulesResponseHeadersToRemove := map[string]string{ + "ves.io.schema.rules.repeated.items.string.max_bytes": "256", + "ves.io.schema.rules.repeated.items.string.min_bytes": "1", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhResponseHeadersToRemove(rulesResponseHeadersToRemove) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.response_headers_to_remove: %s", err) + panic(errMsg) + } + v.FldValidators["response_headers_to_remove"] = vFn -func (v *ValidateServicePolicyList) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ServicePolicyList) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ServicePolicyList got type %s", t) - } + vrhTimeout := v.TimeoutValidationRuleHandler + rulesTimeout := map[string]string{ + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "600000", } - if m == nil { - return nil + vFn, err = vrhTimeout(rulesTimeout) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteSimpleAdvancedOptions.timeout: %s", err) + panic(errMsg) } + v.FldValidators["timeout"] = vFn - if fv, exists := v.FldValidators["policies"]; exists { - vOpts := append(opts, db.WithValidateField("policies")) - if err := fv(ctx, m.GetPolicies(), vOpts...); err != nil { - return err - } + v.FldValidators["bot_defense_javascript_injection_choice.bot_defense_javascript_injection"] = ves_io_schema_route.BotDefenseJavascriptInjectionTypeValidator().Validate - } + v.FldValidators["buffer_choice.buffer_policy"] = ves_io_schema.BufferConfigTypeValidator().Validate - return nil -} + v.FldValidators["hash_policy_choice.specific_hash_policy"] = HashPolicyListTypeValidator().Validate -// Well-known symbol for default validator implementation -var DefaultServicePolicyListValidator = func() *ValidateServicePolicyList { - v := &ValidateServicePolicyList{FldValidators: map[string]db.ValidatorFunc{}} + v.FldValidators["mirroring_choice.mirror_policy"] = MirrorPolicyTypeValidator().Validate - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap + v.FldValidators["retry_policy_choice.retry_policy"] = ves_io_schema.RetryPolicyTypeValidator().Validate - vrhPolicies := v.PoliciesValidationRuleHandler - rulesPolicies := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "16", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", - } - vFn, err = vrhPolicies(rulesPolicies) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ServicePolicyList.policies: %s", err) - panic(errMsg) - } - v.FldValidators["policies"] = vFn + v.FldValidators["rewrite_choice.regex_rewrite"] = ves_io_schema.RegexMatchRewriteValidator().Validate + + v.FldValidators["waf_choice.app_firewall"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + v.FldValidators["cors_policy"] = ves_io_schema.CorsPolicyValidator().Validate + + v.FldValidators["csrf_policy"] = ves_io_schema.CsrfPolicyValidator().Validate return v }() -func ServicePolicyListValidator() db.Validator { - return DefaultServicePolicyListValidator +func RouteSimpleAdvancedOptionsValidator() db.Validator { + return DefaultRouteSimpleAdvancedOptionsValidator } // augmented methods on protoc/std generated struct -func (m *ShapeBotDefensePolicyType) ToJSON() (string, error) { +func (m *RouteType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ShapeBotDefensePolicyType) ToYAML() (string, error) { +func (m *RouteType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ShapeBotDefensePolicyType) DeepCopy() *ShapeBotDefensePolicyType { +// Redact squashes sensitive info in m (in-place) +func (m *RouteType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetSimpleRoute().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting RouteType.simple_route") + } + + return nil +} + +func (m *RouteType) DeepCopy() *RouteType { if m == nil { return nil } @@ -29080,7 +18374,7 @@ func (m *ShapeBotDefensePolicyType) DeepCopy() *ShapeBotDefensePolicyType { if err != nil { return nil } - c := &ShapeBotDefensePolicyType{} + c := &RouteType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -29088,241 +18382,150 @@ func (m *ShapeBotDefensePolicyType) DeepCopy() *ShapeBotDefensePolicyType { return c } -func (m *ShapeBotDefensePolicyType) DeepCopyProto() proto.Message { +func (m *RouteType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ShapeBotDefensePolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeBotDefensePolicyTypeValidator().Validate(ctx, m, opts...) -} - -type ValidateShapeBotDefensePolicyType struct { - FldValidators map[string]db.ValidatorFunc +func (m *RouteType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTypeValidator().Validate(ctx, m, opts...) } -func (v *ValidateShapeBotDefensePolicyType) JavaScriptChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for java_script_choice") +func (m *RouteType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - return validatorFn, nil -} -func (v *ValidateShapeBotDefensePolicyType) MobileSdkChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for mobile_sdk_choice") - } - return validatorFn, nil -} + return m.GetChoiceDRefInfo() -func (v *ValidateShapeBotDefensePolicyType) ProtectedAppEndpointsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +} - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_app_endpoints") - } - itemsValidatorFn := func(ctx context.Context, elems []*AppEndpointType, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := AppEndpointTypeValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_app_endpoints") +// GetDRefInfo for the field's type +func (m *RouteType) GetChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetChoice() == nil { + return nil, nil } + switch m.GetChoice().(type) { + case *RouteType_SimpleRoute: - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*AppEndpointType) - if !ok { - return fmt.Errorf("Repeated validation expected []*AppEndpointType, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated protected_app_endpoints") + drInfos, err := m.GetSimpleRoute().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSimpleRoute().GetDRefInfo() FAILED") } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items protected_app_endpoints") + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "simple_route." + dri.DRField } - return nil - } - - return validatorFn, nil -} - -func (v *ValidateShapeBotDefensePolicyType) JsDownloadPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for js_download_path") - } - - return validatorFn, nil -} + return drInfos, err -func (v *ValidateShapeBotDefensePolicyType) JavascriptModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + case *RouteType_RedirectRoute: - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ves_io_schema.JavaScriptMode) - return int32(i) - } - // ves_io_schema.JavaScriptMode_name is generated in .pb.go - validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema.JavaScriptMode_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for javascript_mode") - } + return nil, nil - return validatorFn, nil -} + case *RouteType_DirectResponseRoute: -func (v *ValidateShapeBotDefensePolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeBotDefensePolicyType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ShapeBotDefensePolicyType got type %s", t) - } - } - if m == nil { - return nil - } + return nil, nil - if fv, exists := v.FldValidators["java_script_choice"]; exists { - val := m.GetJavaScriptChoice() - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + case *RouteType_CustomRouteObject: - switch m.GetJavaScriptChoice().(type) { - case *ShapeBotDefensePolicyType_DisableJsInsert: - if fv, exists := v.FldValidators["java_script_choice.disable_js_insert"]; exists { - val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_DisableJsInsert).DisableJsInsert - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("disable_js_insert"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ShapeBotDefensePolicyType_JsInsertAllPages: - if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages"]; exists { - val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPages).JsInsertAllPages - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("js_insert_all_pages"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ShapeBotDefensePolicyType_JsInsertAllPagesExcept: - if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages_except"]; exists { - val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPagesExcept).JsInsertAllPagesExcept - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("js_insert_all_pages_except"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + drInfos, err := m.GetCustomRouteObject().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetCustomRouteObject().GetDRefInfo() FAILED") } - case *ShapeBotDefensePolicyType_JsInsertionRules: - if fv, exists := v.FldValidators["java_script_choice.js_insertion_rules"]; exists { - val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertionRules).JsInsertionRules - vOpts := append(opts, - db.WithValidateField("java_script_choice"), - db.WithValidateField("js_insertion_rules"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "custom_route_object." + dri.DRField } + return drInfos, err + default: + return nil, nil } - if fv, exists := v.FldValidators["javascript_mode"]; exists { +} - vOpts := append(opts, db.WithValidateField("javascript_mode")) - if err := fv(ctx, m.GetJavascriptMode(), vOpts...); err != nil { - return err - } +type ValidateRouteType struct { + FldValidators map[string]db.ValidatorFunc +} +func (v *ValidateRouteType) ChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for choice") } + return validatorFn, nil +} - if fv, exists := v.FldValidators["js_download_path"]; exists { - - vOpts := append(opts, db.WithValidateField("js_download_path")) - if err := fv(ctx, m.GetJsDownloadPath(), vOpts...); err != nil { - return err +func (v *ValidateRouteType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *RouteType got type %s", t) } - + } + if m == nil { + return nil } - if fv, exists := v.FldValidators["mobile_sdk_choice"]; exists { - val := m.GetMobileSdkChoice() + if fv, exists := v.FldValidators["choice"]; exists { + val := m.GetChoice() vOpts := append(opts, - db.WithValidateField("mobile_sdk_choice"), + db.WithValidateField("choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetMobileSdkChoice().(type) { - case *ShapeBotDefensePolicyType_DisableMobileSdk: - if fv, exists := v.FldValidators["mobile_sdk_choice.disable_mobile_sdk"]; exists { - val := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_DisableMobileSdk).DisableMobileSdk + switch m.GetChoice().(type) { + case *RouteType_SimpleRoute: + if fv, exists := v.FldValidators["choice.simple_route"]; exists { + val := m.GetChoice().(*RouteType_SimpleRoute).SimpleRoute vOpts := append(opts, - db.WithValidateField("mobile_sdk_choice"), - db.WithValidateField("disable_mobile_sdk"), + db.WithValidateField("choice"), + db.WithValidateField("simple_route"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ShapeBotDefensePolicyType_MobileSdkConfig: - if fv, exists := v.FldValidators["mobile_sdk_choice.mobile_sdk_config"]; exists { - val := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_MobileSdkConfig).MobileSdkConfig + case *RouteType_RedirectRoute: + if fv, exists := v.FldValidators["choice.redirect_route"]; exists { + val := m.GetChoice().(*RouteType_RedirectRoute).RedirectRoute vOpts := append(opts, - db.WithValidateField("mobile_sdk_choice"), - db.WithValidateField("mobile_sdk_config"), + db.WithValidateField("choice"), + db.WithValidateField("redirect_route"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - - } - - if fv, exists := v.FldValidators["protected_app_endpoints"]; exists { - vOpts := append(opts, db.WithValidateField("protected_app_endpoints")) - if err := fv(ctx, m.GetProtectedAppEndpoints(), vOpts...); err != nil { - return err + case *RouteType_DirectResponseRoute: + if fv, exists := v.FldValidators["choice.direct_response_route"]; exists { + val := m.GetChoice().(*RouteType_DirectResponseRoute).DirectResponseRoute + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("direct_response_route"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteType_CustomRouteObject: + if fv, exists := v.FldValidators["choice.custom_route_object"]; exists { + val := m.GetChoice().(*RouteType_CustomRouteObject).CustomRouteObject + vOpts := append(opts, + db.WithValidateField("choice"), + db.WithValidateField("custom_route_object"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } } } @@ -29331,8 +18534,8 @@ func (v *ValidateShapeBotDefensePolicyType) Validate(ctx context.Context, pm int } // Well-known symbol for default validator implementation -var DefaultShapeBotDefensePolicyTypeValidator = func() *ValidateShapeBotDefensePolicyType { - v := &ValidateShapeBotDefensePolicyType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRouteTypeValidator = func() *ValidateRouteType { + v := &ValidateRouteType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -29342,87 +18545,178 @@ var DefaultShapeBotDefensePolicyTypeValidator = func() *ValidateShapeBotDefenseP vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhJavaScriptChoice := v.JavaScriptChoiceValidationRuleHandler - rulesJavaScriptChoice := map[string]string{ + vrhChoice := v.ChoiceValidationRuleHandler + rulesChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhJavaScriptChoice(rulesJavaScriptChoice) + vFn, err = vrhChoice(rulesChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.java_script_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteType.choice: %s", err) panic(errMsg) } - v.FldValidators["java_script_choice"] = vFn + v.FldValidators["choice"] = vFn - vrhMobileSdkChoice := v.MobileSdkChoiceValidationRuleHandler - rulesMobileSdkChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + v.FldValidators["choice.simple_route"] = RouteTypeSimpleValidator().Validate + v.FldValidators["choice.redirect_route"] = RouteTypeRedirectValidator().Validate + v.FldValidators["choice.direct_response_route"] = RouteTypeDirectResponseValidator().Validate + v.FldValidators["choice.custom_route_object"] = RouteTypeCustomRouteValidator().Validate + + return v +}() + +func RouteTypeValidator() db.Validator { + return DefaultRouteTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *RouteTypeCustomRoute) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *RouteTypeCustomRoute) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *RouteTypeCustomRoute) DeepCopy() *RouteTypeCustomRoute { + if m == nil { + return nil } - vFn, err = vrhMobileSdkChoice(rulesMobileSdkChoice) + ser, err := m.Marshal() if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.mobile_sdk_choice: %s", err) - panic(errMsg) + return nil } - v.FldValidators["mobile_sdk_choice"] = vFn + c := &RouteTypeCustomRoute{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} - vrhProtectedAppEndpoints := v.ProtectedAppEndpointsValidationRuleHandler - rulesProtectedAppEndpoints := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", +func (m *RouteTypeCustomRoute) DeepCopyProto() proto.Message { + if m == nil { + return nil } - vFn, err = vrhProtectedAppEndpoints(rulesProtectedAppEndpoints) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.protected_app_endpoints: %s", err) - panic(errMsg) + return m.DeepCopy() +} + +func (m *RouteTypeCustomRoute) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTypeCustomRouteValidator().Validate(ctx, m, opts...) +} + +func (m *RouteTypeCustomRoute) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil } - v.FldValidators["protected_app_endpoints"] = vFn - vrhJsDownloadPath := v.JsDownloadPathValidationRuleHandler - rulesJsDownloadPath := map[string]string{ - "ves.io.schema.rules.string.http_path": "true", + return m.GetRouteRefDRefInfo() + +} + +func (m *RouteTypeCustomRoute) GetRouteRefDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetRouteRef() + if vref == nil { + return nil, nil } - vFn, err = vrhJsDownloadPath(rulesJsDownloadPath) + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("route.Object") + dri := db.DRefInfo{ + RefdType: "route.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "route_ref", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetRouteRefDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *RouteTypeCustomRoute) GetRouteRefDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "route.Object") if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.js_download_path: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Cannot find type for kind: route") } - v.FldValidators["js_download_path"] = vFn - vrhJavascriptMode := v.JavascriptModeValidationRuleHandler - rulesJavascriptMode := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vref := m.GetRouteRef() + if vref == nil { + return nil, nil } - vFn, err = vrhJavascriptMode(rulesJavascriptMode) + ref := &ves_io_schema.ObjectRefType{ + Kind: "route.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.javascript_mode: %s", err) - panic(errMsg) + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) } - v.FldValidators["javascript_mode"] = vFn - v.FldValidators["java_script_choice.js_insert_all_pages_except"] = ShapeJavaScriptInsertAllWithExceptionsTypeValidator().Validate - v.FldValidators["java_script_choice.js_insertion_rules"] = ShapeJavaScriptInsertTypeValidator().Validate + return entries, nil +} - v.FldValidators["mobile_sdk_choice.mobile_sdk_config"] = MobileSDKConfigTypeValidator().Validate +type ValidateRouteTypeCustomRoute struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateRouteTypeCustomRoute) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteTypeCustomRoute) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *RouteTypeCustomRoute got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["route_ref"]; exists { + + vOpts := append(opts, db.WithValidateField("route_ref")) + if err := fv(ctx, m.GetRouteRef(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultRouteTypeCustomRouteValidator = func() *ValidateRouteTypeCustomRoute { + v := &ValidateRouteTypeCustomRoute{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["route_ref"] = ves_io_schema_views.ObjectRefTypeValidator().Validate return v }() -func ShapeBotDefensePolicyTypeValidator() db.Validator { - return DefaultShapeBotDefensePolicyTypeValidator +func RouteTypeCustomRouteValidator() db.Validator { + return DefaultRouteTypeCustomRouteValidator } // augmented methods on protoc/std generated struct -func (m *ShapeBotDefenseType) ToJSON() (string, error) { +func (m *RouteTypeDirectResponse) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ShapeBotDefenseType) ToYAML() (string, error) { +func (m *RouteTypeDirectResponse) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ShapeBotDefenseType) DeepCopy() *ShapeBotDefenseType { +func (m *RouteTypeDirectResponse) DeepCopy() *RouteTypeDirectResponse { if m == nil { return nil } @@ -29430,7 +18724,7 @@ func (m *ShapeBotDefenseType) DeepCopy() *ShapeBotDefenseType { if err != nil { return nil } - c := &ShapeBotDefenseType{} + c := &RouteTypeDirectResponse{} err = c.Unmarshal(ser) if err != nil { return nil @@ -29438,57 +18732,33 @@ func (m *ShapeBotDefenseType) DeepCopy() *ShapeBotDefenseType { return c } -func (m *ShapeBotDefenseType) DeepCopyProto() proto.Message { +func (m *RouteTypeDirectResponse) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ShapeBotDefenseType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeBotDefenseTypeValidator().Validate(ctx, m, opts...) +func (m *RouteTypeDirectResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTypeDirectResponseValidator().Validate(ctx, m, opts...) } -type ValidateShapeBotDefenseType struct { +type ValidateRouteTypeDirectResponse struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateShapeBotDefenseType) CorsSupportChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for cors_support_choice") - } - return validatorFn, nil -} - -func (v *ValidateShapeBotDefenseType) RegionalEndpointValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ShapeBotDefenseRegion) - return int32(i) - } - // ShapeBotDefenseRegion_name is generated in .pb.go - validatorFn, err := db.NewEnumValidationRuleHandler(rules, ShapeBotDefenseRegion_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for regional_endpoint") - } - - return validatorFn, nil -} - -func (v *ValidateShapeBotDefenseType) PolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateRouteTypeDirectResponse) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for policy") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { if err := reqdValidatorFn(ctx, val, opts...); err != nil { return err } - if err := ShapeBotDefensePolicyTypeValidator().Validate(ctx, val, opts...); err != nil { + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { return err } @@ -29498,88 +18768,107 @@ func (v *ValidateShapeBotDefenseType) PolicyValidationRuleHandler(rules map[stri return validatorFn, nil } -func (v *ValidateShapeBotDefenseType) TimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateRouteTypeDirectResponse) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for timeout") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.HeaderMatcherType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated headers") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items headers") + } + return nil } return validatorFn, nil } -func (v *ValidateShapeBotDefenseType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeBotDefenseType) +func (v *ValidateRouteTypeDirectResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteTypeDirectResponse) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ShapeBotDefenseType got type %s", t) + return fmt.Errorf("Expected type *RouteTypeDirectResponse got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["cors_support_choice"]; exists { - val := m.GetCorsSupportChoice() - vOpts := append(opts, - db.WithValidateField("cors_support_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["headers"]; exists { + vOpts := append(opts, db.WithValidateField("headers")) + if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { return err } + } - switch m.GetCorsSupportChoice().(type) { - case *ShapeBotDefenseType_EnableCorsSupport: - if fv, exists := v.FldValidators["cors_support_choice.enable_cors_support"]; exists { - val := m.GetCorsSupportChoice().(*ShapeBotDefenseType_EnableCorsSupport).EnableCorsSupport - vOpts := append(opts, - db.WithValidateField("cors_support_choice"), - db.WithValidateField("enable_cors_support"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ShapeBotDefenseType_DisableCorsSupport: - if fv, exists := v.FldValidators["cors_support_choice.disable_cors_support"]; exists { - val := m.GetCorsSupportChoice().(*ShapeBotDefenseType_DisableCorsSupport).DisableCorsSupport - vOpts := append(opts, - db.WithValidateField("cors_support_choice"), - db.WithValidateField("disable_cors_support"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["http_method"]; exists { + + vOpts := append(opts, db.WithValidateField("http_method")) + if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["policy"]; exists { + if fv, exists := v.FldValidators["incoming_port"]; exists { - vOpts := append(opts, db.WithValidateField("policy")) - if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("incoming_port")) + if err := fv(ctx, m.GetIncomingPort(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["regional_endpoint"]; exists { + if fv, exists := v.FldValidators["path"]; exists { - vOpts := append(opts, db.WithValidateField("regional_endpoint")) - if err := fv(ctx, m.GetRegionalEndpoint(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["timeout"]; exists { + if fv, exists := v.FldValidators["route_direct_response"]; exists { - vOpts := append(opts, db.WithValidateField("timeout")) - if err := fv(ctx, m.GetTimeout(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("route_direct_response")) + if err := fv(ctx, m.GetRouteDirectResponse(), vOpts...); err != nil { return err } @@ -29589,8 +18878,8 @@ func (v *ValidateShapeBotDefenseType) Validate(ctx context.Context, pm interface } // Well-known symbol for default validator implementation -var DefaultShapeBotDefenseTypeValidator = func() *ValidateShapeBotDefenseType { - v := &ValidateShapeBotDefenseType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRouteTypeDirectResponseValidator = func() *ValidateRouteTypeDirectResponse { + v := &ValidateRouteTypeDirectResponse{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -29600,70 +18889,51 @@ var DefaultShapeBotDefenseTypeValidator = func() *ValidateShapeBotDefenseType { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhCorsSupportChoice := v.CorsSupportChoiceValidationRuleHandler - rulesCorsSupportChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhCorsSupportChoice(rulesCorsSupportChoice) + vFn, err = vrhPath(rulesPath) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.cors_support_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeDirectResponse.path: %s", err) panic(errMsg) } - v.FldValidators["cors_support_choice"] = vFn + v.FldValidators["path"] = vFn - vrhRegionalEndpoint := v.RegionalEndpointValidationRuleHandler - rulesRegionalEndpoint := map[string]string{ - "ves.io.schema.rules.enum.defined_only": "true", - "ves.io.schema.rules.message.required": "true", + vrhHeaders := v.HeadersValidationRuleHandler + rulesHeaders := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhRegionalEndpoint(rulesRegionalEndpoint) + vFn, err = vrhHeaders(rulesHeaders) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.regional_endpoint: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeDirectResponse.headers: %s", err) panic(errMsg) } - v.FldValidators["regional_endpoint"] = vFn + v.FldValidators["headers"] = vFn - vrhPolicy := v.PolicyValidationRuleHandler - rulesPolicy := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhPolicy(rulesPolicy) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.policy: %s", err) - panic(errMsg) - } - v.FldValidators["policy"] = vFn + v.FldValidators["route_direct_response"] = ves_io_schema_route.RouteDirectResponseValidator().Validate - vrhTimeout := v.TimeoutValidationRuleHandler - rulesTimeout := map[string]string{ - "ves.io.schema.rules.uint32.gte": "0", - "ves.io.schema.rules.uint32.lte": "60000", - } - vFn, err = vrhTimeout(rulesTimeout) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.timeout: %s", err) - panic(errMsg) - } - v.FldValidators["timeout"] = vFn + v.FldValidators["incoming_port"] = ves_io_schema.PortMatcherTypeValidator().Validate return v }() -func ShapeBotDefenseTypeValidator() db.Validator { - return DefaultShapeBotDefenseTypeValidator +func RouteTypeDirectResponseValidator() db.Validator { + return DefaultRouteTypeDirectResponseValidator } // augmented methods on protoc/std generated struct -func (m *ShapeJavaScriptExclusionRule) ToJSON() (string, error) { +func (m *RouteTypeRedirect) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ShapeJavaScriptExclusionRule) ToYAML() (string, error) { +func (m *RouteTypeRedirect) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ShapeJavaScriptExclusionRule) DeepCopy() *ShapeJavaScriptExclusionRule { +func (m *RouteTypeRedirect) DeepCopy() *RouteTypeRedirect { if m == nil { return nil } @@ -29671,7 +18941,7 @@ func (m *ShapeJavaScriptExclusionRule) DeepCopy() *ShapeJavaScriptExclusionRule if err != nil { return nil } - c := &ShapeJavaScriptExclusionRule{} + c := &RouteTypeRedirect{} err = c.Unmarshal(ser) if err != nil { return nil @@ -29679,41 +18949,33 @@ func (m *ShapeJavaScriptExclusionRule) DeepCopy() *ShapeJavaScriptExclusionRule return c } -func (m *ShapeJavaScriptExclusionRule) DeepCopyProto() proto.Message { +func (m *RouteTypeRedirect) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ShapeJavaScriptExclusionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeJavaScriptExclusionRuleValidator().Validate(ctx, m, opts...) +func (m *RouteTypeRedirect) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTypeRedirectValidator().Validate(ctx, m, opts...) } -type ValidateShapeJavaScriptExclusionRule struct { +type ValidateRouteTypeRedirect struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateShapeJavaScriptExclusionRule) DomainMatcherChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_matcher_choice") - } - return validatorFn, nil -} - -func (v *ValidateShapeJavaScriptExclusionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateRouteTypeRedirect) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { if err := reqdValidatorFn(ctx, val, opts...); err != nil { return err } - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { return err } @@ -29723,81 +18985,89 @@ func (v *ValidateShapeJavaScriptExclusionRule) MetadataValidationRuleHandler(rul return validatorFn, nil } -func (v *ValidateShapeJavaScriptExclusionRule) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateRouteTypeRedirect) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + elems, ok := val.([]*ves_io_schema.HeaderMatcherType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) } - - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated headers") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items headers") } - return nil } return validatorFn, nil } -func (v *ValidateShapeJavaScriptExclusionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeJavaScriptExclusionRule) +func (v *ValidateRouteTypeRedirect) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteTypeRedirect) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ShapeJavaScriptExclusionRule got type %s", t) + return fmt.Errorf("Expected type *RouteTypeRedirect got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["domain_matcher_choice"]; exists { - val := m.GetDomainMatcherChoice() - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["headers"]; exists { + vOpts := append(opts, db.WithValidateField("headers")) + if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { return err } + } - switch m.GetDomainMatcherChoice().(type) { - case *ShapeJavaScriptExclusionRule_AnyDomain: - if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { - val := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_AnyDomain).AnyDomain - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("any_domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ShapeJavaScriptExclusionRule_Domain: - if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { - val := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_Domain).Domain - vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("domain"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["http_method"]; exists { + + vOpts := append(opts, db.WithValidateField("http_method")) + if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["metadata"]; exists { + if fv, exists := v.FldValidators["incoming_port"]; exists { - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("incoming_port")) + if err := fv(ctx, m.GetIncomingPort(), vOpts...); err != nil { return err } @@ -29812,12 +19082,21 @@ func (v *ValidateShapeJavaScriptExclusionRule) Validate(ctx context.Context, pm } + if fv, exists := v.FldValidators["route_redirect"]; exists { + + vOpts := append(opts, db.WithValidateField("route_redirect")) + if err := fv(ctx, m.GetRouteRedirect(), vOpts...); err != nil { + return err + } + + } + return nil } // Well-known symbol for default validator implementation -var DefaultShapeJavaScriptExclusionRuleValidator = func() *ValidateShapeJavaScriptExclusionRule { - v := &ValidateShapeJavaScriptExclusionRule{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRouteTypeRedirectValidator = func() *ValidateRouteTypeRedirect { + v := &ValidateRouteTypeRedirect{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -29827,59 +19106,65 @@ var DefaultShapeJavaScriptExclusionRuleValidator = func() *ValidateShapeJavaScri vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhDomainMatcherChoice := v.DomainMatcherChoiceValidationRuleHandler - rulesDomainMatcherChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhDomainMatcherChoice(rulesDomainMatcherChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptExclusionRule.domain_matcher_choice: %s", err) - panic(errMsg) - } - v.FldValidators["domain_matcher_choice"] = vFn - - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhMetadata(rulesMetadata) + vFn, err = vrhPath(rulesPath) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptExclusionRule.metadata: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeRedirect.path: %s", err) panic(errMsg) } - v.FldValidators["metadata"] = vFn + v.FldValidators["path"] = vFn - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhHeaders := v.HeadersValidationRuleHandler + rulesHeaders := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhPath(rulesPath) + vFn, err = vrhHeaders(rulesHeaders) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptExclusionRule.path: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeRedirect.headers: %s", err) panic(errMsg) } - v.FldValidators["path"] = vFn + v.FldValidators["headers"] = vFn - v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate + v.FldValidators["route_redirect"] = ves_io_schema_route.RouteRedirectValidator().Validate + + v.FldValidators["incoming_port"] = ves_io_schema.PortMatcherTypeValidator().Validate return v }() -func ShapeJavaScriptExclusionRuleValidator() db.Validator { - return DefaultShapeJavaScriptExclusionRuleValidator +func RouteTypeRedirectValidator() db.Validator { + return DefaultRouteTypeRedirectValidator } // augmented methods on protoc/std generated struct -func (m *ShapeJavaScriptInsertAllType) ToJSON() (string, error) { +func (m *RouteTypeSimple) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ShapeJavaScriptInsertAllType) ToYAML() (string, error) { +func (m *RouteTypeSimple) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ShapeJavaScriptInsertAllType) DeepCopy() *ShapeJavaScriptInsertAllType { +// Redact squashes sensitive info in m (in-place) +func (m *RouteTypeSimple) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetAdvancedOptions().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting RouteTypeSimple.advanced_options") + } + + return nil +} + +func (m *RouteTypeSimple) DeepCopy() *RouteTypeSimple { if m == nil { return nil } @@ -29887,7 +19172,7 @@ func (m *ShapeJavaScriptInsertAllType) DeepCopy() *ShapeJavaScriptInsertAllType if err != nil { return nil } - c := &ShapeJavaScriptInsertAllType{} + c := &RouteTypeSimple{} err = c.Unmarshal(ser) if err != nil { return nil @@ -29895,112 +19180,181 @@ func (m *ShapeJavaScriptInsertAllType) DeepCopy() *ShapeJavaScriptInsertAllType return c } -func (m *ShapeJavaScriptInsertAllType) DeepCopyProto() proto.Message { +func (m *RouteTypeSimple) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ShapeJavaScriptInsertAllType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeJavaScriptInsertAllTypeValidator().Validate(ctx, m, opts...) +func (m *RouteTypeSimple) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTypeSimpleValidator().Validate(ctx, m, opts...) } -type ValidateShapeJavaScriptInsertAllType struct { - FldValidators map[string]db.ValidatorFunc +func (m *RouteTypeSimple) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetAdvancedOptionsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetAdvancedOptionsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetOriginPoolsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetOriginPoolsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + } -func (v *ValidateShapeJavaScriptInsertAllType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeJavaScriptInsertAllType) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ShapeJavaScriptInsertAllType got type %s", t) - } +// GetDRefInfo for the field's type +func (m *RouteTypeSimple) GetAdvancedOptionsDRefInfo() ([]db.DRefInfo, error) { + if m.GetAdvancedOptions() == nil { + return nil, nil } - if m == nil { - return nil + + drInfos, err := m.GetAdvancedOptions().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvancedOptions().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advanced_options." + dri.DRField } + return drInfos, err - if fv, exists := v.FldValidators["javascript_location"]; exists { +} - vOpts := append(opts, db.WithValidateField("javascript_location")) - if err := fv(ctx, m.GetJavascriptLocation(), vOpts...); err != nil { - return err +// GetDRefInfo for the field's type +func (m *RouteTypeSimple) GetOriginPoolsDRefInfo() ([]db.DRefInfo, error) { + if m.GetOriginPools() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetOriginPools() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetOriginPools() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("origin_pools[%v].%s", idx, dri.DRField) } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateRouteTypeSimple struct { + FldValidators map[string]db.ValidatorFunc +} +func (v *ValidateRouteTypeSimple) HostRewriteParamsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite_params") } + return validatorFn, nil +} - return nil +func (v *ValidateRouteTypeSimple) HostRewriteParamsHostRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_HostRewrite, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite") + } + return oValidatorFn_HostRewrite, nil } -// Well-known symbol for default validator implementation -var DefaultShapeJavaScriptInsertAllTypeValidator = func() *ValidateShapeJavaScriptInsertAllType { - v := &ValidateShapeJavaScriptInsertAllType{FldValidators: map[string]db.ValidatorFunc{}} +func (v *ValidateRouteTypeSimple) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - return v -}() + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } -func ShapeJavaScriptInsertAllTypeValidator() db.Validator { - return DefaultShapeJavaScriptInsertAllTypeValidator -} + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } -// augmented methods on protoc/std generated struct + return nil + } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) ToJSON() (string, error) { - return codec.ToJSON(m) + return validatorFn, nil } -func (m *ShapeJavaScriptInsertAllWithExceptionsType) ToYAML() (string, error) { - return codec.ToYAML(m) -} +func (v *ValidateRouteTypeSimple) OriginPoolsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (m *ShapeJavaScriptInsertAllWithExceptionsType) DeepCopy() *ShapeJavaScriptInsertAllWithExceptionsType { - if m == nil { - return nil - } - ser, err := m.Marshal() + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for origin_pools") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema_views.OriginPoolWithWeight, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema_views.OriginPoolWithWeightValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } return nil } - c := &ShapeJavaScriptInsertAllWithExceptionsType{} - err = c.Unmarshal(ser) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for origin_pools") } - return c -} -func (m *ShapeJavaScriptInsertAllWithExceptionsType) DeepCopyProto() proto.Message { - if m == nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema_views.OriginPoolWithWeight) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema_views.OriginPoolWithWeight, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated origin_pools") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items origin_pools") + } return nil } - return m.DeepCopy() -} - -func (m *ShapeJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeJavaScriptInsertAllWithExceptionsTypeValidator().Validate(ctx, m, opts...) -} -type ValidateShapeJavaScriptInsertAllWithExceptionsType struct { - FldValidators map[string]db.ValidatorFunc + return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateRouteTypeSimple) HeadersValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for headers") } - itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.HeaderMatcherType, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + if err := ves_io_schema.HeaderMatcherTypeValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -30008,13 +19362,13 @@ func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) ExcludeListValidati } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for headers") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ShapeJavaScriptExclusionRule) + elems, ok := val.([]*ves_io_schema.HeaderMatcherType) if !ok { - return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) + return fmt.Errorf("Repeated validation expected []*ves_io_schema.HeaderMatcherType, got %T", val) } l := []string{} for _, elem := range elems { @@ -30025,10 +19379,10 @@ func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) ExcludeListValidati l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated exclude_list") + return errors.Wrap(err, "repeated headers") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items exclude_list") + return errors.Wrap(err, "items headers") } return nil } @@ -30036,32 +19390,114 @@ func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) ExcludeListValidati return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeJavaScriptInsertAllWithExceptionsType) +func (v *ValidateRouteTypeSimple) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteTypeSimple) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ShapeJavaScriptInsertAllWithExceptionsType got type %s", t) + return fmt.Errorf("Expected type *RouteTypeSimple got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["exclude_list"]; exists { - vOpts := append(opts, db.WithValidateField("exclude_list")) - if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { + if fv, exists := v.FldValidators["advanced_options"]; exists { + + vOpts := append(opts, db.WithValidateField("advanced_options")) + if err := fv(ctx, m.GetAdvancedOptions(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["javascript_location"]; exists { + if fv, exists := v.FldValidators["headers"]; exists { + vOpts := append(opts, db.WithValidateField("headers")) + if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { + return err + } - vOpts := append(opts, db.WithValidateField("javascript_location")) - if err := fv(ctx, m.GetJavascriptLocation(), vOpts...); err != nil { + } + + if fv, exists := v.FldValidators["host_rewrite_params"]; exists { + val := m.GetHostRewriteParams() + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetHostRewriteParams().(type) { + case *RouteTypeSimple_AutoHostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.auto_host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*RouteTypeSimple_AutoHostRewrite).AutoHostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("auto_host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteTypeSimple_HostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*RouteTypeSimple_HostRewrite).HostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteTypeSimple_DisableHostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.disable_host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*RouteTypeSimple_DisableHostRewrite).DisableHostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("disable_host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["http_method"]; exists { + + vOpts := append(opts, db.WithValidateField("http_method")) + if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["incoming_port"]; exists { + + vOpts := append(opts, db.WithValidateField("incoming_port")) + if err := fv(ctx, m.GetIncomingPort(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["origin_pools"]; exists { + vOpts := append(opts, db.WithValidateField("origin_pools")) + if err := fv(ctx, m.GetOriginPools(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["path"]; exists { + + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { return err } @@ -30071,8 +19507,8 @@ func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) Validate(ctx contex } // Well-known symbol for default validator implementation -var DefaultShapeJavaScriptInsertAllWithExceptionsTypeValidator = func() *ValidateShapeJavaScriptInsertAllWithExceptionsType { - v := &ValidateShapeJavaScriptInsertAllWithExceptionsType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRouteTypeSimpleValidator = func() *ValidateRouteTypeSimple { + v := &ValidateRouteTypeSimple{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -30082,36 +19518,88 @@ var DefaultShapeJavaScriptInsertAllWithExceptionsTypeValidator = func() *Validat vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhExcludeList := v.ExcludeListValidationRuleHandler - rulesExcludeList := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "128", + vrhHostRewriteParams := v.HostRewriteParamsValidationRuleHandler + rulesHostRewriteParams := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhHostRewriteParams(rulesHostRewriteParams) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.host_rewrite_params: %s", err) + panic(errMsg) + } + v.FldValidators["host_rewrite_params"] = vFn + + vrhHostRewriteParamsHostRewrite := v.HostRewriteParamsHostRewriteValidationRuleHandler + rulesHostRewriteParamsHostRewrite := map[string]string{ + "ves.io.schema.rules.string.hostname": "true", + } + vFnMap["host_rewrite_params.host_rewrite"], err = vrhHostRewriteParamsHostRewrite(rulesHostRewriteParamsHostRewrite) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RouteTypeSimple.host_rewrite_params_host_rewrite: %s", err) + panic(errMsg) + } + + v.FldValidators["host_rewrite_params.host_rewrite"] = vFnMap["host_rewrite_params.host_rewrite"] + + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhPath(rulesPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.path: %s", err) + panic(errMsg) + } + v.FldValidators["path"] = vFn + + vrhOriginPools := v.OriginPoolsValidationRuleHandler + rulesOriginPools := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhExcludeList(rulesExcludeList) + vFn, err = vrhOriginPools(rulesOriginPools) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertAllWithExceptionsType.exclude_list: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.origin_pools: %s", err) + panic(errMsg) + } + v.FldValidators["origin_pools"] = vFn + + vrhHeaders := v.HeadersValidationRuleHandler + rulesHeaders := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "16", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhHeaders(rulesHeaders) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimple.headers: %s", err) panic(errMsg) } - v.FldValidators["exclude_list"] = vFn + v.FldValidators["headers"] = vFn + + v.FldValidators["advanced_options"] = RouteSimpleAdvancedOptionsValidator().Validate + + v.FldValidators["incoming_port"] = ves_io_schema.PortMatcherTypeValidator().Validate return v }() -func ShapeJavaScriptInsertAllWithExceptionsTypeValidator() db.Validator { - return DefaultShapeJavaScriptInsertAllWithExceptionsTypeValidator +func RouteTypeSimpleValidator() db.Validator { + return DefaultRouteTypeSimpleValidator } // augmented methods on protoc/std generated struct -func (m *ShapeJavaScriptInsertType) ToJSON() (string, error) { +func (m *RouteTypeSimpleWithDefaultOriginPool) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ShapeJavaScriptInsertType) ToYAML() (string, error) { +func (m *RouteTypeSimpleWithDefaultOriginPool) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ShapeJavaScriptInsertType) DeepCopy() *ShapeJavaScriptInsertType { +func (m *RouteTypeSimpleWithDefaultOriginPool) DeepCopy() *RouteTypeSimpleWithDefaultOriginPool { if m == nil { return nil } @@ -30119,7 +19607,7 @@ func (m *ShapeJavaScriptInsertType) DeepCopy() *ShapeJavaScriptInsertType { if err != nil { return nil } - c := &ShapeJavaScriptInsertType{} + c := &RouteTypeSimpleWithDefaultOriginPool{} err = c.Unmarshal(ser) if err != nil { return nil @@ -30127,142 +19615,132 @@ func (m *ShapeJavaScriptInsertType) DeepCopy() *ShapeJavaScriptInsertType { return c } -func (m *ShapeJavaScriptInsertType) DeepCopyProto() proto.Message { +func (m *RouteTypeSimpleWithDefaultOriginPool) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ShapeJavaScriptInsertType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeJavaScriptInsertTypeValidator().Validate(ctx, m, opts...) +func (m *RouteTypeSimpleWithDefaultOriginPool) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RouteTypeSimpleWithDefaultOriginPoolValidator().Validate(ctx, m, opts...) } -type ValidateShapeJavaScriptInsertType struct { +type ValidateRouteTypeSimpleWithDefaultOriginPool struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateShapeJavaScriptInsertType) RulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) - if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for rules") - } - itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptInsertionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ShapeJavaScriptInsertionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) +func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) HostRewriteParamsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rules") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ShapeJavaScriptInsertionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptInsertionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated rules") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items rules") - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite_params") } - return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - itemRules := db.GetRepMessageItemRules(rules) - itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) +func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) HostRewriteParamsHostRewriteValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_HostRewrite, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") - } - itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for host_rewrite") } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + return oValidatorFn_HostRewrite, nil +} + +func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*ShapeJavaScriptExclusionRule) - if !ok { - return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) - if err != nil { - return errors.Wrapf(err, "Converting %v to JSON", elem) - } - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated exclude_list") + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items exclude_list") + + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { + return err } + return nil } return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeJavaScriptInsertType) +func (v *ValidateRouteTypeSimpleWithDefaultOriginPool) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*RouteTypeSimpleWithDefaultOriginPool) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ShapeJavaScriptInsertType got type %s", t) + return fmt.Errorf("Expected type *RouteTypeSimpleWithDefaultOriginPool got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["exclude_list"]; exists { - vOpts := append(opts, db.WithValidateField("exclude_list")) - if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { + if fv, exists := v.FldValidators["host_rewrite_params"]; exists { + val := m.GetHostRewriteParams() + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetHostRewriteParams().(type) { + case *RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.auto_host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*RouteTypeSimpleWithDefaultOriginPool_AutoHostRewrite).AutoHostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("auto_host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteTypeSimpleWithDefaultOriginPool_HostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*RouteTypeSimpleWithDefaultOriginPool_HostRewrite).HostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite: + if fv, exists := v.FldValidators["host_rewrite_params.disable_host_rewrite"]; exists { + val := m.GetHostRewriteParams().(*RouteTypeSimpleWithDefaultOriginPool_DisableHostRewrite).DisableHostRewrite + vOpts := append(opts, + db.WithValidateField("host_rewrite_params"), + db.WithValidateField("disable_host_rewrite"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["http_method"]; exists { + + vOpts := append(opts, db.WithValidateField("http_method")) + if err := fv(ctx, m.GetHttpMethod(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["rules"]; exists { - vOpts := append(opts, db.WithValidateField("rules")) - if err := fv(ctx, m.GetRules(), vOpts...); err != nil { + if fv, exists := v.FldValidators["path"]; exists { + + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { return err } @@ -30272,8 +19750,8 @@ func (v *ValidateShapeJavaScriptInsertType) Validate(ctx context.Context, pm int } // Well-known symbol for default validator implementation -var DefaultShapeJavaScriptInsertTypeValidator = func() *ValidateShapeJavaScriptInsertType { - v := &ValidateShapeJavaScriptInsertType{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultRouteTypeSimpleWithDefaultOriginPoolValidator = func() *ValidateRouteTypeSimpleWithDefaultOriginPool { + v := &ValidateRouteTypeSimpleWithDefaultOriginPool{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -30283,50 +19761,58 @@ var DefaultShapeJavaScriptInsertTypeValidator = func() *ValidateShapeJavaScriptI vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhRules := v.RulesValidationRuleHandler - rulesRules := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.min_items": "1", - "ves.io.schema.rules.repeated.unique": "true", + vrhHostRewriteParams := v.HostRewriteParamsValidationRuleHandler + rulesHostRewriteParams := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhRules(rulesRules) + vFn, err = vrhHostRewriteParams(rulesHostRewriteParams) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertType.rules: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimpleWithDefaultOriginPool.host_rewrite_params: %s", err) panic(errMsg) } - v.FldValidators["rules"] = vFn + v.FldValidators["host_rewrite_params"] = vFn - vrhExcludeList := v.ExcludeListValidationRuleHandler - rulesExcludeList := map[string]string{ - "ves.io.schema.rules.repeated.max_items": "128", - "ves.io.schema.rules.repeated.unique": "true", + vrhHostRewriteParamsHostRewrite := v.HostRewriteParamsHostRewriteValidationRuleHandler + rulesHostRewriteParamsHostRewrite := map[string]string{ + "ves.io.schema.rules.string.hostname": "true", } - vFn, err = vrhExcludeList(rulesExcludeList) + vFnMap["host_rewrite_params.host_rewrite"], err = vrhHostRewriteParamsHostRewrite(rulesHostRewriteParamsHostRewrite) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertType.exclude_list: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field RouteTypeSimpleWithDefaultOriginPool.host_rewrite_params_host_rewrite: %s", err) panic(errMsg) } - v.FldValidators["exclude_list"] = vFn + + v.FldValidators["host_rewrite_params.host_rewrite"] = vFnMap["host_rewrite_params.host_rewrite"] + + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhPath(rulesPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for RouteTypeSimpleWithDefaultOriginPool.path: %s", err) + panic(errMsg) + } + v.FldValidators["path"] = vFn return v }() -func ShapeJavaScriptInsertTypeValidator() db.Validator { - return DefaultShapeJavaScriptInsertTypeValidator +func RouteTypeSimpleWithDefaultOriginPoolValidator() db.Validator { + return DefaultRouteTypeSimpleWithDefaultOriginPoolValidator } // augmented methods on protoc/std generated struct -func (m *ShapeJavaScriptInsertionRule) ToJSON() (string, error) { +func (m *ShapeBotDefensePolicyType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ShapeJavaScriptInsertionRule) ToYAML() (string, error) { +func (m *ShapeBotDefensePolicyType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ShapeJavaScriptInsertionRule) DeepCopy() *ShapeJavaScriptInsertionRule { +func (m *ShapeBotDefensePolicyType) DeepCopy() *ShapeBotDefensePolicyType { if m == nil { return nil } @@ -30334,7 +19820,7 @@ func (m *ShapeJavaScriptInsertionRule) DeepCopy() *ShapeJavaScriptInsertionRule if err != nil { return nil } - c := &ShapeJavaScriptInsertionRule{} + c := &ShapeBotDefensePolicyType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -30342,113 +19828,175 @@ func (m *ShapeJavaScriptInsertionRule) DeepCopy() *ShapeJavaScriptInsertionRule return c } -func (m *ShapeJavaScriptInsertionRule) DeepCopyProto() proto.Message { +func (m *ShapeBotDefensePolicyType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ShapeJavaScriptInsertionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ShapeJavaScriptInsertionRuleValidator().Validate(ctx, m, opts...) +func (m *ShapeBotDefensePolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeBotDefensePolicyTypeValidator().Validate(ctx, m, opts...) } -type ValidateShapeJavaScriptInsertionRule struct { +type ValidateShapeBotDefensePolicyType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateShapeJavaScriptInsertionRule) DomainMatcherChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeBotDefensePolicyType) JavaScriptChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for java_script_choice") + } + return validatorFn, nil +} + +func (v *ValidateShapeBotDefensePolicyType) MobileSdkChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for domain_matcher_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for mobile_sdk_choice") } return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeBotDefensePolicyType) ProtectedAppEndpointsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for protected_app_endpoints") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*AppEndpointType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := AppEndpointTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for protected_app_endpoints") + } - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*AppEndpointType) + if !ok { + return fmt.Errorf("Repeated validation expected []*AppEndpointType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated protected_app_endpoints") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items protected_app_endpoints") } - return nil } return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertionRule) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeBotDefensePolicyType) JsDownloadPathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + validatorFn, err := db.NewStringValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + return nil, errors.Wrap(err, "ValidationRuleHandler for js_download_path") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } + return validatorFn, nil +} - return nil +func (v *ValidateShapeBotDefensePolicyType) JavascriptModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ves_io_schema.JavaScriptMode) + return int32(i) + } + // ves_io_schema.JavaScriptMode_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ves_io_schema.JavaScriptMode_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for javascript_mode") } return validatorFn, nil } -func (v *ValidateShapeJavaScriptInsertionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ShapeJavaScriptInsertionRule) +func (v *ValidateShapeBotDefensePolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeBotDefensePolicyType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ShapeJavaScriptInsertionRule got type %s", t) + return fmt.Errorf("Expected type *ShapeBotDefensePolicyType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["domain_matcher_choice"]; exists { - val := m.GetDomainMatcherChoice() + if fv, exists := v.FldValidators["java_script_choice"]; exists { + val := m.GetJavaScriptChoice() vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("java_script_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetDomainMatcherChoice().(type) { - case *ShapeJavaScriptInsertionRule_AnyDomain: - if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { - val := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_AnyDomain).AnyDomain + switch m.GetJavaScriptChoice().(type) { + case *ShapeBotDefensePolicyType_DisableJsInsert: + if fv, exists := v.FldValidators["java_script_choice.disable_js_insert"]; exists { + val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_DisableJsInsert).DisableJsInsert vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("any_domain"), + db.WithValidateField("java_script_choice"), + db.WithValidateField("disable_js_insert"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ShapeJavaScriptInsertionRule_Domain: - if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { - val := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_Domain).Domain + case *ShapeBotDefensePolicyType_JsInsertAllPages: + if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages"]; exists { + val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPages).JsInsertAllPages vOpts := append(opts, - db.WithValidateField("domain_matcher_choice"), - db.WithValidateField("domain"), + db.WithValidateField("java_script_choice"), + db.WithValidateField("js_insert_all_pages"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ShapeBotDefensePolicyType_JsInsertAllPagesExcept: + if fv, exists := v.FldValidators["java_script_choice.js_insert_all_pages_except"]; exists { + val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertAllPagesExcept).JsInsertAllPagesExcept + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + db.WithValidateField("js_insert_all_pages_except"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ShapeBotDefensePolicyType_JsInsertionRules: + if fv, exists := v.FldValidators["java_script_choice.js_insertion_rules"]; exists { + val := m.GetJavaScriptChoice().(*ShapeBotDefensePolicyType_JsInsertionRules).JsInsertionRules + vOpts := append(opts, + db.WithValidateField("java_script_choice"), + db.WithValidateField("js_insertion_rules"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -30457,28 +20005,63 @@ func (v *ValidateShapeJavaScriptInsertionRule) Validate(ctx context.Context, pm } - if fv, exists := v.FldValidators["javascript_location"]; exists { + if fv, exists := v.FldValidators["javascript_mode"]; exists { - vOpts := append(opts, db.WithValidateField("javascript_location")) - if err := fv(ctx, m.GetJavascriptLocation(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("javascript_mode")) + if err := fv(ctx, m.GetJavascriptMode(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["metadata"]; exists { + if fv, exists := v.FldValidators["js_download_path"]; exists { - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("js_download_path")) + if err := fv(ctx, m.GetJsDownloadPath(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["path"]; exists { + if fv, exists := v.FldValidators["mobile_sdk_choice"]; exists { + val := m.GetMobileSdkChoice() + vOpts := append(opts, + db.WithValidateField("mobile_sdk_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } - vOpts := append(opts, db.WithValidateField("path")) - if err := fv(ctx, m.GetPath(), vOpts...); err != nil { + switch m.GetMobileSdkChoice().(type) { + case *ShapeBotDefensePolicyType_DisableMobileSdk: + if fv, exists := v.FldValidators["mobile_sdk_choice.disable_mobile_sdk"]; exists { + val := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_DisableMobileSdk).DisableMobileSdk + vOpts := append(opts, + db.WithValidateField("mobile_sdk_choice"), + db.WithValidateField("disable_mobile_sdk"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ShapeBotDefensePolicyType_MobileSdkConfig: + if fv, exists := v.FldValidators["mobile_sdk_choice.mobile_sdk_config"]; exists { + val := m.GetMobileSdkChoice().(*ShapeBotDefensePolicyType_MobileSdkConfig).MobileSdkConfig + vOpts := append(opts, + db.WithValidateField("mobile_sdk_choice"), + db.WithValidateField("mobile_sdk_config"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["protected_app_endpoints"]; exists { + vOpts := append(opts, db.WithValidateField("protected_app_endpoints")) + if err := fv(ctx, m.GetProtectedAppEndpoints(), vOpts...); err != nil { return err } @@ -30488,8 +20071,8 @@ func (v *ValidateShapeJavaScriptInsertionRule) Validate(ctx context.Context, pm } // Well-known symbol for default validator implementation -var DefaultShapeJavaScriptInsertionRuleValidator = func() *ValidateShapeJavaScriptInsertionRule { - v := &ValidateShapeJavaScriptInsertionRule{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultShapeBotDefensePolicyTypeValidator = func() *ValidateShapeBotDefensePolicyType { + v := &ValidateShapeBotDefensePolicyType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -30499,59 +20082,87 @@ var DefaultShapeJavaScriptInsertionRuleValidator = func() *ValidateShapeJavaScri vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhDomainMatcherChoice := v.DomainMatcherChoiceValidationRuleHandler - rulesDomainMatcherChoice := map[string]string{ + vrhJavaScriptChoice := v.JavaScriptChoiceValidationRuleHandler + rulesJavaScriptChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhDomainMatcherChoice(rulesDomainMatcherChoice) + vFn, err = vrhJavaScriptChoice(rulesJavaScriptChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertionRule.domain_matcher_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.java_script_choice: %s", err) panic(errMsg) } - v.FldValidators["domain_matcher_choice"] = vFn + v.FldValidators["java_script_choice"] = vFn - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhMobileSdkChoice := v.MobileSdkChoiceValidationRuleHandler + rulesMobileSdkChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhMetadata(rulesMetadata) + vFn, err = vrhMobileSdkChoice(rulesMobileSdkChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertionRule.metadata: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.mobile_sdk_choice: %s", err) panic(errMsg) } - v.FldValidators["metadata"] = vFn + v.FldValidators["mobile_sdk_choice"] = vFn - vrhPath := v.PathValidationRuleHandler - rulesPath := map[string]string{ + vrhProtectedAppEndpoints := v.ProtectedAppEndpointsValidationRuleHandler + rulesProtectedAppEndpoints := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", + } + vFn, err = vrhProtectedAppEndpoints(rulesProtectedAppEndpoints) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.protected_app_endpoints: %s", err) + panic(errMsg) + } + v.FldValidators["protected_app_endpoints"] = vFn + + vrhJsDownloadPath := v.JsDownloadPathValidationRuleHandler + rulesJsDownloadPath := map[string]string{ + "ves.io.schema.rules.string.http_path": "true", + } + vFn, err = vrhJsDownloadPath(rulesJsDownloadPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.js_download_path: %s", err) + panic(errMsg) + } + v.FldValidators["js_download_path"] = vFn + + vrhJavascriptMode := v.JavascriptModeValidationRuleHandler + rulesJavascriptMode := map[string]string{ "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhPath(rulesPath) + vFn, err = vrhJavascriptMode(rulesJavascriptMode) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertionRule.path: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefensePolicyType.javascript_mode: %s", err) panic(errMsg) } - v.FldValidators["path"] = vFn + v.FldValidators["javascript_mode"] = vFn + + v.FldValidators["java_script_choice.js_insert_all_pages_except"] = ShapeJavaScriptInsertAllWithExceptionsTypeValidator().Validate + v.FldValidators["java_script_choice.js_insertion_rules"] = ShapeJavaScriptInsertTypeValidator().Validate - v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate + v.FldValidators["mobile_sdk_choice.mobile_sdk_config"] = MobileSDKConfigTypeValidator().Validate return v }() -func ShapeJavaScriptInsertionRuleValidator() db.Validator { - return DefaultShapeJavaScriptInsertionRuleValidator +func ShapeBotDefensePolicyTypeValidator() db.Validator { + return DefaultShapeBotDefensePolicyTypeValidator } // augmented methods on protoc/std generated struct -func (m *SimpleClientSrcRule) ToJSON() (string, error) { +func (m *ShapeBotDefenseType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SimpleClientSrcRule) ToYAML() (string, error) { +func (m *ShapeBotDefenseType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SimpleClientSrcRule) DeepCopy() *SimpleClientSrcRule { +func (m *ShapeBotDefenseType) DeepCopy() *ShapeBotDefenseType { if m == nil { return nil } @@ -30559,7 +20170,7 @@ func (m *SimpleClientSrcRule) DeepCopy() *SimpleClientSrcRule { if err != nil { return nil } - c := &SimpleClientSrcRule{} + c := &ShapeBotDefenseType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -30567,83 +20178,57 @@ func (m *SimpleClientSrcRule) DeepCopy() *SimpleClientSrcRule { return c } -func (m *SimpleClientSrcRule) DeepCopyProto() proto.Message { +func (m *ShapeBotDefenseType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SimpleClientSrcRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SimpleClientSrcRuleValidator().Validate(ctx, m, opts...) +func (m *ShapeBotDefenseType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeBotDefenseTypeValidator().Validate(ctx, m, opts...) } -type ValidateSimpleClientSrcRule struct { +type ValidateShapeBotDefenseType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeBotDefenseType) CorsSupportChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for client_source_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for cors_support_choice") } return validatorFn, nil } -func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceIpPrefixValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_IpPrefix, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ip_prefix") - } - return oValidatorFn_IpPrefix, nil -} -func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceAsNumberValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_AsNumber, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for as_number") +func (v *ValidateShapeBotDefenseType) RegionalEndpointValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(ShapeBotDefenseRegion) + return int32(i) } - return oValidatorFn_AsNumber, nil -} -func (v *ValidateSimpleClientSrcRule) ClientSourceChoiceUserIdentifierValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_UserIdentifier, err := db.NewStringValidationRuleHandler(rules) + // ShapeBotDefenseRegion_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, ShapeBotDefenseRegion_name, conv) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for user_identifier") - } - return oValidatorFn_UserIdentifier, nil -} - -func (v *ValidateSimpleClientSrcRule) ExpirationTimestampValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - var ( - reqdValidatorFn db.ValidatorFunc - err error - ) - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if reqdValidatorFn != nil { - if err = reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - } - // TODO: lookup configured third-party type validators - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for regional_endpoint") } return validatorFn, nil } -func (v *ValidateSimpleClientSrcRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeBotDefenseType) PolicyValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for policy") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { if err := reqdValidatorFn(ctx, val, opts...); err != nil { return err } - if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + if err := ShapeBotDefensePolicyTypeValidator().Validate(ctx, val, opts...); err != nil { return err } @@ -30653,184 +20238,88 @@ func (v *ValidateSimpleClientSrcRule) MetadataValidationRuleHandler(rules map[st return validatorFn, nil } -func (v *ValidateSimpleClientSrcRule) ActionsValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeBotDefenseType) TimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - itemRules := db.GetRepEnumItemRules(rules) - var conv db.EnumConvFn - conv = func(v interface{}) int32 { - i := v.(ClientSrcRuleAction) - return int32(i) - } - // ClientSrcRuleAction_name is generated in .pb.go - itemValFn, err := db.NewEnumValidationRuleHandler(itemRules, ClientSrcRuleAction_name, conv) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for actions") - } - itemsValidatorFn := func(ctx context.Context, elems []ClientSrcRuleAction, opts ...db.ValidateOpt) error { - for i, el := range elems { - if err := itemValFn(ctx, el, opts...); err != nil { - return errors.Wrap(err, fmt.Sprintf("element %d", i)) - } - } - return nil - } - repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for actions") - } - - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]ClientSrcRuleAction) - if !ok { - return fmt.Errorf("Repeated validation expected []ClientSrcRuleAction, got %T", val) - } - l := []string{} - for _, elem := range elems { - strVal := fmt.Sprintf("%v", elem) - l = append(l, strVal) - } - if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated actions") - } - if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items actions") - } - return nil + return nil, errors.Wrap(err, "ValidationRuleHandler for timeout") } return validatorFn, nil } -func (v *ValidateSimpleClientSrcRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SimpleClientSrcRule) +func (v *ValidateShapeBotDefenseType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeBotDefenseType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SimpleClientSrcRule got type %s", t) + return fmt.Errorf("Expected type *ShapeBotDefenseType got type %s", t) } } if m == nil { return nil } - switch m.GetActionChoice().(type) { - case *SimpleClientSrcRule_SkipProcessing: - if fv, exists := v.FldValidators["action_choice.skip_processing"]; exists { - val := m.GetActionChoice().(*SimpleClientSrcRule_SkipProcessing).SkipProcessing - vOpts := append(opts, - db.WithValidateField("action_choice"), - db.WithValidateField("skip_processing"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *SimpleClientSrcRule_WafSkipProcessing: - if fv, exists := v.FldValidators["action_choice.waf_skip_processing"]; exists { - val := m.GetActionChoice().(*SimpleClientSrcRule_WafSkipProcessing).WafSkipProcessing - vOpts := append(opts, - db.WithValidateField("action_choice"), - db.WithValidateField("waf_skip_processing"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *SimpleClientSrcRule_BotSkipProcessing: - if fv, exists := v.FldValidators["action_choice.bot_skip_processing"]; exists { - val := m.GetActionChoice().(*SimpleClientSrcRule_BotSkipProcessing).BotSkipProcessing - vOpts := append(opts, - db.WithValidateField("action_choice"), - db.WithValidateField("bot_skip_processing"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["actions"]; exists { - vOpts := append(opts, db.WithValidateField("actions")) - if err := fv(ctx, m.GetActions(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["client_source_choice"]; exists { - val := m.GetClientSourceChoice() + if fv, exists := v.FldValidators["cors_support_choice"]; exists { + val := m.GetCorsSupportChoice() vOpts := append(opts, - db.WithValidateField("client_source_choice"), + db.WithValidateField("cors_support_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetClientSourceChoice().(type) { - case *SimpleClientSrcRule_IpPrefix: - if fv, exists := v.FldValidators["client_source_choice.ip_prefix"]; exists { - val := m.GetClientSourceChoice().(*SimpleClientSrcRule_IpPrefix).IpPrefix - vOpts := append(opts, - db.WithValidateField("client_source_choice"), - db.WithValidateField("ip_prefix"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *SimpleClientSrcRule_AsNumber: - if fv, exists := v.FldValidators["client_source_choice.as_number"]; exists { - val := m.GetClientSourceChoice().(*SimpleClientSrcRule_AsNumber).AsNumber + switch m.GetCorsSupportChoice().(type) { + case *ShapeBotDefenseType_EnableCorsSupport: + if fv, exists := v.FldValidators["cors_support_choice.enable_cors_support"]; exists { + val := m.GetCorsSupportChoice().(*ShapeBotDefenseType_EnableCorsSupport).EnableCorsSupport vOpts := append(opts, - db.WithValidateField("client_source_choice"), - db.WithValidateField("as_number"), + db.WithValidateField("cors_support_choice"), + db.WithValidateField("enable_cors_support"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *SimpleClientSrcRule_HttpHeader: - if fv, exists := v.FldValidators["client_source_choice.http_header"]; exists { - val := m.GetClientSourceChoice().(*SimpleClientSrcRule_HttpHeader).HttpHeader + case *ShapeBotDefenseType_DisableCorsSupport: + if fv, exists := v.FldValidators["cors_support_choice.disable_cors_support"]; exists { + val := m.GetCorsSupportChoice().(*ShapeBotDefenseType_DisableCorsSupport).DisableCorsSupport vOpts := append(opts, - db.WithValidateField("client_source_choice"), - db.WithValidateField("http_header"), + db.WithValidateField("cors_support_choice"), + db.WithValidateField("disable_cors_support"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *SimpleClientSrcRule_UserIdentifier: - if fv, exists := v.FldValidators["client_source_choice.user_identifier"]; exists { - val := m.GetClientSourceChoice().(*SimpleClientSrcRule_UserIdentifier).UserIdentifier - vOpts := append(opts, - db.WithValidateField("client_source_choice"), - db.WithValidateField("user_identifier"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + + } + + if fv, exists := v.FldValidators["policy"]; exists { + + vOpts := append(opts, db.WithValidateField("policy")) + if err := fv(ctx, m.GetPolicy(), vOpts...); err != nil { + return err } } - if fv, exists := v.FldValidators["expiration_timestamp"]; exists { + if fv, exists := v.FldValidators["regional_endpoint"]; exists { - vOpts := append(opts, db.WithValidateField("expiration_timestamp")) - if err := fv(ctx, m.GetExpirationTimestamp(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("regional_endpoint")) + if err := fv(ctx, m.GetRegionalEndpoint(), vOpts...); err != nil { return err } } - if fv, exists := v.FldValidators["metadata"]; exists { + if fv, exists := v.FldValidators["timeout"]; exists { - vOpts := append(opts, db.WithValidateField("metadata")) - if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("timeout")) + if err := fv(ctx, m.GetTimeout(), vOpts...); err != nil { return err } @@ -30840,8 +20329,8 @@ func (v *ValidateSimpleClientSrcRule) Validate(ctx context.Context, pm interface } // Well-known symbol for default validator implementation -var DefaultSimpleClientSrcRuleValidator = func() *ValidateSimpleClientSrcRule { - v := &ValidateSimpleClientSrcRule{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultShapeBotDefenseTypeValidator = func() *ValidateShapeBotDefenseType { + v := &ValidateShapeBotDefenseType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -30851,105 +20340,70 @@ var DefaultSimpleClientSrcRuleValidator = func() *ValidateSimpleClientSrcRule { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhClientSourceChoice := v.ClientSourceChoiceValidationRuleHandler - rulesClientSourceChoice := map[string]string{ + vrhCorsSupportChoice := v.CorsSupportChoiceValidationRuleHandler + rulesCorsSupportChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhClientSourceChoice(rulesClientSourceChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.client_source_choice: %s", err) - panic(errMsg) - } - v.FldValidators["client_source_choice"] = vFn - - vrhClientSourceChoiceIpPrefix := v.ClientSourceChoiceIpPrefixValidationRuleHandler - rulesClientSourceChoiceIpPrefix := map[string]string{ - "ves.io.schema.rules.string.ipv4_prefix": "true", - } - vFnMap["client_source_choice.ip_prefix"], err = vrhClientSourceChoiceIpPrefix(rulesClientSourceChoiceIpPrefix) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field SimpleClientSrcRule.client_source_choice_ip_prefix: %s", err) - panic(errMsg) - } - vrhClientSourceChoiceAsNumber := v.ClientSourceChoiceAsNumberValidationRuleHandler - rulesClientSourceChoiceAsNumber := map[string]string{ - "ves.io.schema.rules.uint32.gte": "1", - "ves.io.schema.rules.uint32.lte": "401308", - } - vFnMap["client_source_choice.as_number"], err = vrhClientSourceChoiceAsNumber(rulesClientSourceChoiceAsNumber) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field SimpleClientSrcRule.client_source_choice_as_number: %s", err) - panic(errMsg) - } - vrhClientSourceChoiceUserIdentifier := v.ClientSourceChoiceUserIdentifierValidationRuleHandler - rulesClientSourceChoiceUserIdentifier := map[string]string{ - "ves.io.schema.rules.string.max_len": "256", - } - vFnMap["client_source_choice.user_identifier"], err = vrhClientSourceChoiceUserIdentifier(rulesClientSourceChoiceUserIdentifier) + vFn, err = vrhCorsSupportChoice(rulesCorsSupportChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field SimpleClientSrcRule.client_source_choice_user_identifier: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.cors_support_choice: %s", err) panic(errMsg) } + v.FldValidators["cors_support_choice"] = vFn - v.FldValidators["client_source_choice.ip_prefix"] = vFnMap["client_source_choice.ip_prefix"] - v.FldValidators["client_source_choice.as_number"] = vFnMap["client_source_choice.as_number"] - v.FldValidators["client_source_choice.user_identifier"] = vFnMap["client_source_choice.user_identifier"] - - vrhExpirationTimestamp := v.ExpirationTimestampValidationRuleHandler - rulesExpirationTimestamp := map[string]string{ - "ves.io.schema.rules.timestamp.within.seconds": "31536000", + vrhRegionalEndpoint := v.RegionalEndpointValidationRuleHandler + rulesRegionalEndpoint := map[string]string{ + "ves.io.schema.rules.enum.defined_only": "true", + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhExpirationTimestamp(rulesExpirationTimestamp) + vFn, err = vrhRegionalEndpoint(rulesRegionalEndpoint) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.expiration_timestamp: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.regional_endpoint: %s", err) panic(errMsg) } - v.FldValidators["expiration_timestamp"] = vFn + v.FldValidators["regional_endpoint"] = vFn - vrhMetadata := v.MetadataValidationRuleHandler - rulesMetadata := map[string]string{ + vrhPolicy := v.PolicyValidationRuleHandler + rulesPolicy := map[string]string{ "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhMetadata(rulesMetadata) + vFn, err = vrhPolicy(rulesPolicy) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.metadata: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.policy: %s", err) panic(errMsg) } - v.FldValidators["metadata"] = vFn + v.FldValidators["policy"] = vFn - vrhActions := v.ActionsValidationRuleHandler - rulesActions := map[string]string{ - "ves.io.schema.rules.enum.defined_only": "true", - "ves.io.schema.rules.repeated.max_items": "10", - "ves.io.schema.rules.repeated.unique": "true", + vrhTimeout := v.TimeoutValidationRuleHandler + rulesTimeout := map[string]string{ + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "60000", } - vFn, err = vrhActions(rulesActions) + vFn, err = vrhTimeout(rulesTimeout) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SimpleClientSrcRule.actions: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeBotDefenseType.timeout: %s", err) panic(errMsg) } - v.FldValidators["actions"] = vFn - - v.FldValidators["client_source_choice.http_header"] = HttpHeaderMatcherListValidator().Validate + v.FldValidators["timeout"] = vFn return v }() -func SimpleClientSrcRuleValidator() db.Validator { - return DefaultSimpleClientSrcRuleValidator +func ShapeBotDefenseTypeValidator() db.Validator { + return DefaultShapeBotDefenseTypeValidator } // augmented methods on protoc/std generated struct -func (m *SingleLoadBalancerAppSetting) ToJSON() (string, error) { +func (m *ShapeJavaScriptExclusionRule) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *SingleLoadBalancerAppSetting) ToYAML() (string, error) { +func (m *ShapeJavaScriptExclusionRule) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *SingleLoadBalancerAppSetting) DeepCopy() *SingleLoadBalancerAppSetting { +func (m *ShapeJavaScriptExclusionRule) DeepCopy() *ShapeJavaScriptExclusionRule { if m == nil { return nil } @@ -30957,7 +20411,7 @@ func (m *SingleLoadBalancerAppSetting) DeepCopy() *SingleLoadBalancerAppSetting if err != nil { return nil } - c := &SingleLoadBalancerAppSetting{} + c := &ShapeJavaScriptExclusionRule{} err = c.Unmarshal(ser) if err != nil { return nil @@ -30965,79 +20419,113 @@ func (m *SingleLoadBalancerAppSetting) DeepCopy() *SingleLoadBalancerAppSetting return c } -func (m *SingleLoadBalancerAppSetting) DeepCopyProto() proto.Message { +func (m *ShapeJavaScriptExclusionRule) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *SingleLoadBalancerAppSetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return SingleLoadBalancerAppSettingValidator().Validate(ctx, m, opts...) +func (m *ShapeJavaScriptExclusionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeJavaScriptExclusionRuleValidator().Validate(ctx, m, opts...) } -type ValidateSingleLoadBalancerAppSetting struct { +type ValidateShapeJavaScriptExclusionRule struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateSingleLoadBalancerAppSetting) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeJavaScriptExclusionRule) DomainMatcherChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_matcher_choice") + } + return validatorFn, nil +} + +func (v *ValidateShapeJavaScriptExclusionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil } + return validatorFn, nil } -func (v *ValidateSingleLoadBalancerAppSetting) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) +func (v *ValidateShapeJavaScriptExclusionRule) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil } + return validatorFn, nil } -func (v *ValidateSingleLoadBalancerAppSetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*SingleLoadBalancerAppSetting) +func (v *ValidateShapeJavaScriptExclusionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeJavaScriptExclusionRule) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *SingleLoadBalancerAppSetting got type %s", t) + return fmt.Errorf("Expected type *ShapeJavaScriptExclusionRule got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["api_discovery_choice"]; exists { - val := m.GetApiDiscoveryChoice() + if fv, exists := v.FldValidators["domain_matcher_choice"]; exists { + val := m.GetDomainMatcherChoice() vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), + db.WithValidateField("domain_matcher_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetApiDiscoveryChoice().(type) { - case *SingleLoadBalancerAppSetting_EnableDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.enable_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_EnableDiscovery).EnableDiscovery + switch m.GetDomainMatcherChoice().(type) { + case *ShapeJavaScriptExclusionRule_AnyDomain: + if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { + val := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_AnyDomain).AnyDomain vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("enable_discovery"), + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("any_domain"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *SingleLoadBalancerAppSetting_DisableDiscovery: - if fv, exists := v.FldValidators["api_discovery_choice.disable_discovery"]; exists { - val := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_DisableDiscovery).DisableDiscovery + case *ShapeJavaScriptExclusionRule_Domain: + if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { + val := m.GetDomainMatcherChoice().(*ShapeJavaScriptExclusionRule_Domain).Domain vOpts := append(opts, - db.WithValidateField("api_discovery_choice"), - db.WithValidateField("disable_discovery"), + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("domain"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -31046,64 +20534,20 @@ func (v *ValidateSingleLoadBalancerAppSetting) Validate(ctx context.Context, pm } - switch m.GetDdosDetectionChoice().(type) { - case *SingleLoadBalancerAppSetting_EnableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.enable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*SingleLoadBalancerAppSetting_EnableDdosDetection).EnableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("enable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *SingleLoadBalancerAppSetting_DisableDdosDetection: - if fv, exists := v.FldValidators["ddos_detection_choice.disable_ddos_detection"]; exists { - val := m.GetDdosDetectionChoice().(*SingleLoadBalancerAppSetting_DisableDdosDetection).DisableDdosDetection - vOpts := append(opts, - db.WithValidateField("ddos_detection_choice"), - db.WithValidateField("disable_ddos_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } + if fv, exists := v.FldValidators["metadata"]; exists { - if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { - val := m.GetMaliciousUserDetectionChoice() - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { return err } + } - switch m.GetMaliciousUserDetectionChoice().(type) { - case *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection).EnableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("enable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection: - if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { - val := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection).DisableMaliciousUserDetection - vOpts := append(opts, - db.WithValidateField("malicious_user_detection_choice"), - db.WithValidateField("disable_malicious_user_detection"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["path"]; exists { + + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { + return err } } @@ -31112,8 +20556,8 @@ func (v *ValidateSingleLoadBalancerAppSetting) Validate(ctx context.Context, pm } // Well-known symbol for default validator implementation -var DefaultSingleLoadBalancerAppSettingValidator = func() *ValidateSingleLoadBalancerAppSetting { - v := &ValidateSingleLoadBalancerAppSetting{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultShapeJavaScriptExclusionRuleValidator = func() *ValidateShapeJavaScriptExclusionRule { + v := &ValidateShapeJavaScriptExclusionRule{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -31123,50 +20567,59 @@ var DefaultSingleLoadBalancerAppSettingValidator = func() *ValidateSingleLoadBal vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler - rulesApiDiscoveryChoice := map[string]string{ + vrhDomainMatcherChoice := v.DomainMatcherChoiceValidationRuleHandler + rulesDomainMatcherChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + vFn, err = vrhDomainMatcherChoice(rulesDomainMatcherChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SingleLoadBalancerAppSetting.api_discovery_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptExclusionRule.domain_matcher_choice: %s", err) panic(errMsg) } - v.FldValidators["api_discovery_choice"] = vFn + v.FldValidators["domain_matcher_choice"] = vFn - vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler - rulesMaliciousUserDetectionChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", } - vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) + vFn, err = vrhMetadata(rulesMetadata) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for SingleLoadBalancerAppSetting.malicious_user_detection_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptExclusionRule.metadata: %s", err) panic(errMsg) } - v.FldValidators["malicious_user_detection_choice"] = vFn + v.FldValidators["metadata"] = vFn - v.FldValidators["api_discovery_choice.enable_discovery"] = ApiDiscoverySettingValidator().Validate + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhPath(rulesPath) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptExclusionRule.path: %s", err) + panic(errMsg) + } + v.FldValidators["path"] = vFn - v.FldValidators["ddos_detection_choice.enable_ddos_detection"] = EnableDDoSDetectionSettingValidator().Validate + v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate return v }() -func SingleLoadBalancerAppSettingValidator() db.Validator { - return DefaultSingleLoadBalancerAppSettingValidator +func ShapeJavaScriptExclusionRuleValidator() db.Validator { + return DefaultShapeJavaScriptExclusionRuleValidator } // augmented methods on protoc/std generated struct -func (m *Target) ToJSON() (string, error) { +func (m *ShapeJavaScriptInsertAllType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *Target) ToYAML() (string, error) { +func (m *ShapeJavaScriptInsertAllType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *Target) DeepCopy() *Target { +func (m *ShapeJavaScriptInsertAllType) DeepCopy() *ShapeJavaScriptInsertAllType { if m == nil { return nil } @@ -31174,7 +20627,7 @@ func (m *Target) DeepCopy() *Target { if err != nil { return nil } - c := &Target{} + c := &ShapeJavaScriptInsertAllType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -31182,86 +20635,40 @@ func (m *Target) DeepCopy() *Target { return c } -func (m *Target) DeepCopyProto() proto.Message { +func (m *ShapeJavaScriptInsertAllType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *Target) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return TargetValidator().Validate(ctx, m, opts...) +func (m *ShapeJavaScriptInsertAllType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeJavaScriptInsertAllTypeValidator().Validate(ctx, m, opts...) } -type ValidateTarget struct { +type ValidateShapeJavaScriptInsertAllType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateTarget) TargetValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for target") - } - return validatorFn, nil -} - -func (v *ValidateTarget) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*Target) +func (v *ValidateShapeJavaScriptInsertAllType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeJavaScriptInsertAllType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *Target got type %s", t) + return fmt.Errorf("Expected type *ShapeJavaScriptInsertAllType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["target"]; exists { - val := m.GetTarget() - vOpts := append(opts, - db.WithValidateField("target"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } + if fv, exists := v.FldValidators["javascript_location"]; exists { - switch m.GetTarget().(type) { - case *Target_AllEndpoint: - if fv, exists := v.FldValidators["target.all_endpoint"]; exists { - val := m.GetTarget().(*Target_AllEndpoint).AllEndpoint - vOpts := append(opts, - db.WithValidateField("target"), - db.WithValidateField("all_endpoint"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *Target_ApiGroups: - if fv, exists := v.FldValidators["target.api_groups"]; exists { - val := m.GetTarget().(*Target_ApiGroups).ApiGroups - vOpts := append(opts, - db.WithValidateField("target"), - db.WithValidateField("api_groups"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *Target_BasePaths: - if fv, exists := v.FldValidators["target.base_paths"]; exists { - val := m.GetTarget().(*Target_BasePaths).BasePaths - vOpts := append(opts, - db.WithValidateField("target"), - db.WithValidateField("base_paths"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + vOpts := append(opts, db.WithValidateField("javascript_location")) + if err := fv(ctx, m.GetJavascriptLocation(), vOpts...); err != nil { + return err } } @@ -31270,49 +20677,27 @@ func (v *ValidateTarget) Validate(ctx context.Context, pm interface{}, opts ...d } // Well-known symbol for default validator implementation -var DefaultTargetValidator = func() *ValidateTarget { - v := &ValidateTarget{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhTarget := v.TargetValidationRuleHandler - rulesTarget := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhTarget(rulesTarget) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for Target.target: %s", err) - panic(errMsg) - } - v.FldValidators["target"] = vFn - - v.FldValidators["target.api_groups"] = APIGroupsValidator().Validate - v.FldValidators["target.base_paths"] = BasePathsTypeValidator().Validate +var DefaultShapeJavaScriptInsertAllTypeValidator = func() *ValidateShapeJavaScriptInsertAllType { + v := &ValidateShapeJavaScriptInsertAllType{FldValidators: map[string]db.ValidatorFunc{}} return v }() -func TargetValidator() db.Validator { - return DefaultTargetValidator +func ShapeJavaScriptInsertAllTypeValidator() db.Validator { + return DefaultShapeJavaScriptInsertAllTypeValidator } // augmented methods on protoc/std generated struct -func (m *TokenLocation) ToJSON() (string, error) { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *TokenLocation) ToYAML() (string, error) { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *TokenLocation) DeepCopy() *TokenLocation { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) DeepCopy() *ShapeJavaScriptInsertAllWithExceptionsType { if m == nil { return nil } @@ -31320,7 +20705,7 @@ func (m *TokenLocation) DeepCopy() *TokenLocation { if err != nil { return nil } - c := &TokenLocation{} + c := &ShapeJavaScriptInsertAllWithExceptionsType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -31328,119 +20713,96 @@ func (m *TokenLocation) DeepCopy() *TokenLocation { return c } -func (m *TokenLocation) DeepCopyProto() proto.Message { +func (m *ShapeJavaScriptInsertAllWithExceptionsType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *TokenLocation) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return TokenLocationValidator().Validate(ctx, m, opts...) +func (m *ShapeJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeJavaScriptInsertAllWithExceptionsTypeValidator().Validate(ctx, m, opts...) } -type ValidateTokenLocation struct { +type ValidateShapeJavaScriptInsertAllWithExceptionsType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateTokenLocation) TokenLocationValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for token_location") - } - return validatorFn, nil -} +func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateTokenLocation) TokenLocationCookieValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Cookie, err := db.NewStringValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for cookie") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") } - return oValidatorFn_Cookie, nil -} -func (v *ValidateTokenLocation) TokenLocationHeaderValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Header, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for header") + itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil } - return oValidatorFn_Header, nil -} -func (v *ValidateTokenLocation) TokenLocationQueryParamValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_QueryParam, err := db.NewStringValidationRuleHandler(rules) + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for query_param") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ShapeJavaScriptExclusionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated exclude_list") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items exclude_list") + } + return nil } - return oValidatorFn_QueryParam, nil + + return validatorFn, nil } -func (v *ValidateTokenLocation) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*TokenLocation) +func (v *ValidateShapeJavaScriptInsertAllWithExceptionsType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeJavaScriptInsertAllWithExceptionsType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *TokenLocation got type %s", t) + return fmt.Errorf("Expected type *ShapeJavaScriptInsertAllWithExceptionsType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["token_location"]; exists { - val := m.GetTokenLocation() - vOpts := append(opts, - db.WithValidateField("token_location"), - ) - if err := fv(ctx, val, vOpts...); err != nil { + if fv, exists := v.FldValidators["exclude_list"]; exists { + vOpts := append(opts, db.WithValidateField("exclude_list")) + if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { return err } + } - switch m.GetTokenLocation().(type) { - case *TokenLocation_BearerToken: - if fv, exists := v.FldValidators["token_location.bearer_token"]; exists { - val := m.GetTokenLocation().(*TokenLocation_BearerToken).BearerToken - vOpts := append(opts, - db.WithValidateField("token_location"), - db.WithValidateField("bearer_token"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *TokenLocation_Cookie: - if fv, exists := v.FldValidators["token_location.cookie"]; exists { - val := m.GetTokenLocation().(*TokenLocation_Cookie).Cookie - vOpts := append(opts, - db.WithValidateField("token_location"), - db.WithValidateField("cookie"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *TokenLocation_Header: - if fv, exists := v.FldValidators["token_location.header"]; exists { - val := m.GetTokenLocation().(*TokenLocation_Header).Header - vOpts := append(opts, - db.WithValidateField("token_location"), - db.WithValidateField("header"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *TokenLocation_QueryParam: - if fv, exists := v.FldValidators["token_location.query_param"]; exists { - val := m.GetTokenLocation().(*TokenLocation_QueryParam).QueryParam - vOpts := append(opts, - db.WithValidateField("token_location"), - db.WithValidateField("query_param"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } + if fv, exists := v.FldValidators["javascript_location"]; exists { + + vOpts := append(opts, db.WithValidateField("javascript_location")) + if err := fv(ctx, m.GetJavascriptLocation(), vOpts...); err != nil { + return err } } @@ -31449,8 +20811,8 @@ func (v *ValidateTokenLocation) Validate(ctx context.Context, pm interface{}, op } // Well-known symbol for default validator implementation -var DefaultTokenLocationValidator = func() *ValidateTokenLocation { - v := &ValidateTokenLocation{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultShapeJavaScriptInsertAllWithExceptionsTypeValidator = func() *ValidateShapeJavaScriptInsertAllWithExceptionsType { + v := &ValidateShapeJavaScriptInsertAllWithExceptionsType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -31460,70 +20822,36 @@ var DefaultTokenLocationValidator = func() *ValidateTokenLocation { vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhTokenLocation := v.TokenLocationValidationRuleHandler - rulesTokenLocation := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhTokenLocation(rulesTokenLocation) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for TokenLocation.token_location: %s", err) - panic(errMsg) - } - v.FldValidators["token_location"] = vFn - - vrhTokenLocationCookie := v.TokenLocationCookieValidationRuleHandler - rulesTokenLocationCookie := map[string]string{ - "ves.io.schema.rules.string.max_bytes": "256", - "ves.io.schema.rules.string.min_bytes": "1", - } - vFnMap["token_location.cookie"], err = vrhTokenLocationCookie(rulesTokenLocationCookie) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field TokenLocation.token_location_cookie: %s", err) - panic(errMsg) - } - vrhTokenLocationHeader := v.TokenLocationHeaderValidationRuleHandler - rulesTokenLocationHeader := map[string]string{ - "ves.io.schema.rules.string.max_bytes": "256", - "ves.io.schema.rules.string.min_bytes": "1", - } - vFnMap["token_location.header"], err = vrhTokenLocationHeader(rulesTokenLocationHeader) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field TokenLocation.token_location_header: %s", err) - panic(errMsg) - } - vrhTokenLocationQueryParam := v.TokenLocationQueryParamValidationRuleHandler - rulesTokenLocationQueryParam := map[string]string{ - "ves.io.schema.rules.string.max_bytes": "256", - "ves.io.schema.rules.string.min_bytes": "1", + vrhExcludeList := v.ExcludeListValidationRuleHandler + rulesExcludeList := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true", } - vFnMap["token_location.query_param"], err = vrhTokenLocationQueryParam(rulesTokenLocationQueryParam) + vFn, err = vrhExcludeList(rulesExcludeList) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field TokenLocation.token_location_query_param: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertAllWithExceptionsType.exclude_list: %s", err) panic(errMsg) } - - v.FldValidators["token_location.cookie"] = vFnMap["token_location.cookie"] - v.FldValidators["token_location.header"] = vFnMap["token_location.header"] - v.FldValidators["token_location.query_param"] = vFnMap["token_location.query_param"] + v.FldValidators["exclude_list"] = vFn return v }() -func TokenLocationValidator() db.Validator { - return DefaultTokenLocationValidator +func ShapeJavaScriptInsertAllWithExceptionsTypeValidator() db.Validator { + return DefaultShapeJavaScriptInsertAllWithExceptionsTypeValidator } // augmented methods on protoc/std generated struct -func (m *ValidateApiBySpecRule) ToJSON() (string, error) { +func (m *ShapeJavaScriptInsertType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ValidateApiBySpecRule) ToYAML() (string, error) { +func (m *ShapeJavaScriptInsertType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ValidateApiBySpecRule) DeepCopy() *ValidateApiBySpecRule { +func (m *ShapeJavaScriptInsertType) DeepCopy() *ShapeJavaScriptInsertType { if m == nil { return nil } @@ -31531,7 +20859,7 @@ func (m *ValidateApiBySpecRule) DeepCopy() *ValidateApiBySpecRule { if err != nil { return nil } - c := &ValidateApiBySpecRule{} + c := &ShapeJavaScriptInsertType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -31539,34 +20867,34 @@ func (m *ValidateApiBySpecRule) DeepCopy() *ValidateApiBySpecRule { return c } -func (m *ValidateApiBySpecRule) DeepCopyProto() proto.Message { +func (m *ShapeJavaScriptInsertType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ValidateApiBySpecRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ValidateApiBySpecRuleValidator().Validate(ctx, m, opts...) +func (m *ShapeJavaScriptInsertType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeJavaScriptInsertTypeValidator().Validate(ctx, m, opts...) } -type ValidateValidateApiBySpecRule struct { +type ValidateShapeJavaScriptInsertType struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateValidateApiBySpecRule) OpenApiValidationRulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeJavaScriptInsertType) RulesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { itemRules := db.GetRepMessageItemRules(rules) itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "Message ValidationRuleHandler for open_api_validation_rules") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for rules") } - itemsValidatorFn := func(ctx context.Context, elems []*OpenApiValidationRule, opts ...db.ValidateOpt) error { + itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptInsertionRule, opts ...db.ValidateOpt) error { for i, el := range elems { if err := itemValFn(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } - if err := OpenApiValidationRuleValidator().Validate(ctx, el, opts...); err != nil { + if err := ShapeJavaScriptInsertionRuleValidator().Validate(ctx, el, opts...); err != nil { return errors.Wrap(err, fmt.Sprintf("element %d", i)) } } @@ -31574,13 +20902,13 @@ func (v *ValidateValidateApiBySpecRule) OpenApiValidationRulesValidationRuleHand } repValFn, err := db.NewRepeatedValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for open_api_validation_rules") + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for rules") } validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - elems, ok := val.([]*OpenApiValidationRule) + elems, ok := val.([]*ShapeJavaScriptInsertionRule) if !ok { - return fmt.Errorf("Repeated validation expected []*OpenApiValidationRule, got %T", val) + return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptInsertionRule, got %T", val) } l := []string{} for _, elem := range elems { @@ -31591,10 +20919,10 @@ func (v *ValidateValidateApiBySpecRule) OpenApiValidationRulesValidationRuleHand l = append(l, strVal) } if err := repValFn(ctx, l, opts...); err != nil { - return errors.Wrap(err, "repeated open_api_validation_rules") + return errors.Wrap(err, "repeated rules") } if err := itemsValidatorFn(ctx, elems, opts...); err != nil { - return errors.Wrap(err, "items open_api_validation_rules") + return errors.Wrap(err, "items rules") } return nil } @@ -31602,88 +20930,79 @@ func (v *ValidateValidateApiBySpecRule) OpenApiValidationRulesValidationRuleHand return validatorFn, nil } -func (v *ValidateValidateApiBySpecRule) FallThroughModeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateShapeJavaScriptInsertType) ExcludeListValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for fall_through_mode") + return nil, errors.Wrap(err, "Message ValidationRuleHandler for exclude_list") } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err + itemsValidatorFn := func(ctx context.Context, elems []*ShapeJavaScriptExclusionRule, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ShapeJavaScriptExclusionRuleValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for exclude_list") + } - if err := OpenApiFallThroughModeValidator().Validate(ctx, val, opts...); err != nil { - return err + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ShapeJavaScriptExclusionRule) + if !ok { + return fmt.Errorf("Repeated validation expected []*ShapeJavaScriptExclusionRule, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated exclude_list") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items exclude_list") } - return nil } return validatorFn, nil } -func (v *ValidateValidateApiBySpecRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ValidateApiBySpecRule) +func (v *ValidateShapeJavaScriptInsertType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeJavaScriptInsertType) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ValidateApiBySpecRule got type %s", t) + return fmt.Errorf("Expected type *ShapeJavaScriptInsertType got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["fall_through_mode"]; exists { - - vOpts := append(opts, db.WithValidateField("fall_through_mode")) - if err := fv(ctx, m.GetFallThroughMode(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["open_api_validation_rules"]; exists { - vOpts := append(opts, db.WithValidateField("open_api_validation_rules")) - if err := fv(ctx, m.GetOpenApiValidationRules(), vOpts...); err != nil { + if fv, exists := v.FldValidators["exclude_list"]; exists { + vOpts := append(opts, db.WithValidateField("exclude_list")) + if err := fv(ctx, m.GetExcludeList(), vOpts...); err != nil { return err } } - switch m.GetOversizedBodyChoice().(type) { - case *ValidateApiBySpecRule_OversizedBodySkipValidation: - if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_skip_validation"]; exists { - val := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodySkipValidation).OversizedBodySkipValidation - vOpts := append(opts, - db.WithValidateField("oversized_body_choice"), - db.WithValidateField("oversized_body_skip_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *ValidateApiBySpecRule_OversizedBodyFailValidation: - if fv, exists := v.FldValidators["oversized_body_choice.oversized_body_fail_validation"]; exists { - val := m.GetOversizedBodyChoice().(*ValidateApiBySpecRule_OversizedBodyFailValidation).OversizedBodyFailValidation - vOpts := append(opts, - db.WithValidateField("oversized_body_choice"), - db.WithValidateField("oversized_body_fail_validation"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["settings"]; exists { - - vOpts := append(opts, db.WithValidateField("settings")) - if err := fv(ctx, m.GetSettings(), vOpts...); err != nil { + if fv, exists := v.FldValidators["rules"]; exists { + vOpts := append(opts, db.WithValidateField("rules")) + if err := fv(ctx, m.GetRules(), vOpts...); err != nil { return err } @@ -31693,8 +21012,8 @@ func (v *ValidateValidateApiBySpecRule) Validate(ctx context.Context, pm interfa } // Well-known symbol for default validator implementation -var DefaultValidateApiBySpecRuleValidator = func() *ValidateValidateApiBySpecRule { - v := &ValidateValidateApiBySpecRule{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultShapeJavaScriptInsertTypeValidator = func() *ValidateShapeJavaScriptInsertType { + v := &ValidateShapeJavaScriptInsertType{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -31704,50 +21023,50 @@ var DefaultValidateApiBySpecRuleValidator = func() *ValidateValidateApiBySpecRul vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhOpenApiValidationRules := v.OpenApiValidationRulesValidationRuleHandler - rulesOpenApiValidationRules := map[string]string{ - "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.repeated.max_items": "15", - "ves.io.schema.rules.repeated.unique_metadata_name": "true", + vrhRules := v.RulesValidationRuleHandler + rulesRules := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhOpenApiValidationRules(rulesOpenApiValidationRules) + vFn, err = vrhRules(rulesRules) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ValidateApiBySpecRule.open_api_validation_rules: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertType.rules: %s", err) panic(errMsg) } - v.FldValidators["open_api_validation_rules"] = vFn + v.FldValidators["rules"] = vFn - vrhFallThroughMode := v.FallThroughModeValidationRuleHandler - rulesFallThroughMode := map[string]string{ - "ves.io.schema.rules.message.required": "true", + vrhExcludeList := v.ExcludeListValidationRuleHandler + rulesExcludeList := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "128", + "ves.io.schema.rules.repeated.unique": "true", } - vFn, err = vrhFallThroughMode(rulesFallThroughMode) + vFn, err = vrhExcludeList(rulesExcludeList) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ValidateApiBySpecRule.fall_through_mode: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertType.exclude_list: %s", err) panic(errMsg) } - v.FldValidators["fall_through_mode"] = vFn - - v.FldValidators["settings"] = OpenApiValidationCommonSettingsValidator().Validate + v.FldValidators["exclude_list"] = vFn return v }() -func ValidateApiBySpecRuleValidator() db.Validator { - return DefaultValidateApiBySpecRuleValidator +func ShapeJavaScriptInsertTypeValidator() db.Validator { + return DefaultShapeJavaScriptInsertTypeValidator } // augmented methods on protoc/std generated struct -func (m *ValidationPropertySetting) ToJSON() (string, error) { +func (m *ShapeJavaScriptInsertionRule) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ValidationPropertySetting) ToYAML() (string, error) { +func (m *ShapeJavaScriptInsertionRule) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ValidationPropertySetting) DeepCopy() *ValidationPropertySetting { +func (m *ShapeJavaScriptInsertionRule) DeepCopy() *ShapeJavaScriptInsertionRule { if m == nil { return nil } @@ -31755,7 +21074,7 @@ func (m *ValidationPropertySetting) DeepCopy() *ValidationPropertySetting { if err != nil { return nil } - c := &ValidationPropertySetting{} + c := &ShapeJavaScriptInsertionRule{} err = c.Unmarshal(ser) if err != nil { return nil @@ -31763,162 +21082,113 @@ func (m *ValidationPropertySetting) DeepCopy() *ValidationPropertySetting { return c } -func (m *ValidationPropertySetting) DeepCopyProto() proto.Message { +func (m *ShapeJavaScriptInsertionRule) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ValidationPropertySetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ValidationPropertySettingValidator().Validate(ctx, m, opts...) +func (m *ShapeJavaScriptInsertionRule) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ShapeJavaScriptInsertionRuleValidator().Validate(ctx, m, opts...) } -type ValidateValidationPropertySetting struct { +type ValidateShapeJavaScriptInsertionRule struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateValidationPropertySetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ValidationPropertySetting) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *ValidationPropertySetting got type %s", t) - } - } - if m == nil { - return nil +func (v *ValidateShapeJavaScriptInsertionRule) DomainMatcherChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for domain_matcher_choice") } + return validatorFn, nil +} - if fv, exists := v.FldValidators["headers"]; exists { - - vOpts := append(opts, db.WithValidateField("headers")) - if err := fv(ctx, m.GetHeaders(), vOpts...); err != nil { - return err - } +func (v *ValidateShapeJavaScriptInsertionRule) MetadataValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "MessageValidationRuleHandler for metadata") } - - if fv, exists := v.FldValidators["queryParameters"]; exists { - - vOpts := append(opts, db.WithValidateField("queryParameters")) - if err := fv(ctx, m.GetQueryParameters(), vOpts...); err != nil { + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { return err } - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultValidationPropertySettingValidator = func() *ValidateValidationPropertySetting { - v := &ValidateValidationPropertySetting{FldValidators: map[string]db.ValidatorFunc{}} - - v.FldValidators["queryParameters"] = ValidationSettingForQueryParametersValidator().Validate - - v.FldValidators["headers"] = ValidationSettingForHeadersValidator().Validate - - return v -}() - -func ValidationPropertySettingValidator() db.Validator { - return DefaultValidationPropertySettingValidator -} - -// augmented methods on protoc/std generated struct - -func (m *ValidationSettingForHeaders) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *ValidationSettingForHeaders) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *ValidationSettingForHeaders) DeepCopy() *ValidationSettingForHeaders { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &ValidationSettingForHeaders{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} + if err := ves_io_schema.MessageMetaTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } -func (m *ValidationSettingForHeaders) DeepCopyProto() proto.Message { - if m == nil { return nil } - return m.DeepCopy() -} -func (m *ValidationSettingForHeaders) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ValidationSettingForHeadersValidator().Validate(ctx, m, opts...) + return validatorFn, nil } -type ValidateValidationSettingForHeaders struct { - FldValidators map[string]db.ValidatorFunc -} +func (v *ValidateShapeJavaScriptInsertionRule) PathValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { -func (v *ValidateValidationSettingForHeaders) AdditionalHeadersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) + reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for additional_headers_choice") + return nil, errors.Wrap(err, "MessageValidationRuleHandler for path") + } + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + if err := reqdValidatorFn(ctx, val, opts...); err != nil { + return err + } + + if err := ves_io_schema.PathMatcherTypeValidator().Validate(ctx, val, opts...); err != nil { + return err + } + + return nil } + return validatorFn, nil } -func (v *ValidateValidationSettingForHeaders) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ValidationSettingForHeaders) +func (v *ValidateShapeJavaScriptInsertionRule) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ShapeJavaScriptInsertionRule) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ValidationSettingForHeaders got type %s", t) + return fmt.Errorf("Expected type *ShapeJavaScriptInsertionRule got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["additional_headers_choice"]; exists { - val := m.GetAdditionalHeadersChoice() + if fv, exists := v.FldValidators["domain_matcher_choice"]; exists { + val := m.GetDomainMatcherChoice() vOpts := append(opts, - db.WithValidateField("additional_headers_choice"), + db.WithValidateField("domain_matcher_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetAdditionalHeadersChoice().(type) { - case *ValidationSettingForHeaders_AllowAdditionalHeaders: - if fv, exists := v.FldValidators["additional_headers_choice.allow_additional_headers"]; exists { - val := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_AllowAdditionalHeaders).AllowAdditionalHeaders + switch m.GetDomainMatcherChoice().(type) { + case *ShapeJavaScriptInsertionRule_AnyDomain: + if fv, exists := v.FldValidators["domain_matcher_choice.any_domain"]; exists { + val := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_AnyDomain).AnyDomain vOpts := append(opts, - db.WithValidateField("additional_headers_choice"), - db.WithValidateField("allow_additional_headers"), + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("any_domain"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ValidationSettingForHeaders_DisallowAdditionalHeaders: - if fv, exists := v.FldValidators["additional_headers_choice.disallow_additional_headers"]; exists { - val := m.GetAdditionalHeadersChoice().(*ValidationSettingForHeaders_DisallowAdditionalHeaders).DisallowAdditionalHeaders + case *ShapeJavaScriptInsertionRule_Domain: + if fv, exists := v.FldValidators["domain_matcher_choice.domain"]; exists { + val := m.GetDomainMatcherChoice().(*ShapeJavaScriptInsertionRule_Domain).Domain vOpts := append(opts, - db.WithValidateField("additional_headers_choice"), - db.WithValidateField("disallow_additional_headers"), + db.WithValidateField("domain_matcher_choice"), + db.WithValidateField("domain"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -31927,12 +21197,39 @@ func (v *ValidateValidationSettingForHeaders) Validate(ctx context.Context, pm i } + if fv, exists := v.FldValidators["javascript_location"]; exists { + + vOpts := append(opts, db.WithValidateField("javascript_location")) + if err := fv(ctx, m.GetJavascriptLocation(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["path"]; exists { + + vOpts := append(opts, db.WithValidateField("path")) + if err := fv(ctx, m.GetPath(), vOpts...); err != nil { + return err + } + + } + return nil } // Well-known symbol for default validator implementation -var DefaultValidationSettingForHeadersValidator = func() *ValidateValidationSettingForHeaders { - v := &ValidateValidationSettingForHeaders{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultShapeJavaScriptInsertionRuleValidator = func() *ValidateShapeJavaScriptInsertionRule { + v := &ValidateShapeJavaScriptInsertionRule{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -31942,35 +21239,59 @@ var DefaultValidationSettingForHeadersValidator = func() *ValidateValidationSett vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhAdditionalHeadersChoice := v.AdditionalHeadersChoiceValidationRuleHandler - rulesAdditionalHeadersChoice := map[string]string{ + vrhDomainMatcherChoice := v.DomainMatcherChoiceValidationRuleHandler + rulesDomainMatcherChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhAdditionalHeadersChoice(rulesAdditionalHeadersChoice) + vFn, err = vrhDomainMatcherChoice(rulesDomainMatcherChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertionRule.domain_matcher_choice: %s", err) + panic(errMsg) + } + v.FldValidators["domain_matcher_choice"] = vFn + + vrhMetadata := v.MetadataValidationRuleHandler + rulesMetadata := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhMetadata(rulesMetadata) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertionRule.metadata: %s", err) + panic(errMsg) + } + v.FldValidators["metadata"] = vFn + + vrhPath := v.PathValidationRuleHandler + rulesPath := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhPath(rulesPath) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ValidationSettingForHeaders.additional_headers_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for ShapeJavaScriptInsertionRule.path: %s", err) panic(errMsg) } - v.FldValidators["additional_headers_choice"] = vFn + v.FldValidators["path"] = vFn + + v.FldValidators["domain_matcher_choice.domain"] = ves_io_schema.DomainTypeValidator().Validate return v }() -func ValidationSettingForHeadersValidator() db.Validator { - return DefaultValidationSettingForHeadersValidator +func ShapeJavaScriptInsertionRuleValidator() db.Validator { + return DefaultShapeJavaScriptInsertionRuleValidator } // augmented methods on protoc/std generated struct -func (m *ValidationSettingForQueryParameters) ToJSON() (string, error) { +func (m *SingleLoadBalancerAppSetting) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *ValidationSettingForQueryParameters) ToYAML() (string, error) { +func (m *SingleLoadBalancerAppSetting) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *ValidationSettingForQueryParameters) DeepCopy() *ValidationSettingForQueryParameters { +func (m *SingleLoadBalancerAppSetting) DeepCopy() *SingleLoadBalancerAppSetting { if m == nil { return nil } @@ -31978,7 +21299,7 @@ func (m *ValidationSettingForQueryParameters) DeepCopy() *ValidationSettingForQu if err != nil { return nil } - c := &ValidationSettingForQueryParameters{} + c := &SingleLoadBalancerAppSetting{} err = c.Unmarshal(ser) if err != nil { return nil @@ -31986,71 +21307,115 @@ func (m *ValidationSettingForQueryParameters) DeepCopy() *ValidationSettingForQu return c } -func (m *ValidationSettingForQueryParameters) DeepCopyProto() proto.Message { +func (m *SingleLoadBalancerAppSetting) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *ValidationSettingForQueryParameters) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return ValidationSettingForQueryParametersValidator().Validate(ctx, m, opts...) +func (m *SingleLoadBalancerAppSetting) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SingleLoadBalancerAppSettingValidator().Validate(ctx, m, opts...) } -type ValidateValidationSettingForQueryParameters struct { +type ValidateSingleLoadBalancerAppSetting struct { FldValidators map[string]db.ValidatorFunc } -func (v *ValidateValidationSettingForQueryParameters) AdditionalParametersChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { +func (v *ValidateSingleLoadBalancerAppSetting) ApiDiscoveryChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for api_discovery_choice") + } + return validatorFn, nil +} + +func (v *ValidateSingleLoadBalancerAppSetting) MaliciousUserDetectionChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for additional_parameters_choice") + return nil, errors.Wrap(err, "ValidationRuleHandler for malicious_user_detection_choice") } return validatorFn, nil } -func (v *ValidateValidationSettingForQueryParameters) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*ValidationSettingForQueryParameters) +func (v *ValidateSingleLoadBalancerAppSetting) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SingleLoadBalancerAppSetting) if !ok { switch t := pm.(type) { case nil: return nil default: - return fmt.Errorf("Expected type *ValidationSettingForQueryParameters got type %s", t) + return fmt.Errorf("Expected type *SingleLoadBalancerAppSetting got type %s", t) } } if m == nil { return nil } - if fv, exists := v.FldValidators["additional_parameters_choice"]; exists { - val := m.GetAdditionalParametersChoice() + if fv, exists := v.FldValidators["api_discovery_choice"]; exists { + val := m.GetApiDiscoveryChoice() + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetApiDiscoveryChoice().(type) { + case *SingleLoadBalancerAppSetting_EnableDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.enable_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_EnableDiscovery).EnableDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("enable_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *SingleLoadBalancerAppSetting_DisableDiscovery: + if fv, exists := v.FldValidators["api_discovery_choice.disable_discovery"]; exists { + val := m.GetApiDiscoveryChoice().(*SingleLoadBalancerAppSetting_DisableDiscovery).DisableDiscovery + vOpts := append(opts, + db.WithValidateField("api_discovery_choice"), + db.WithValidateField("disable_discovery"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["malicious_user_detection_choice"]; exists { + val := m.GetMaliciousUserDetectionChoice() vOpts := append(opts, - db.WithValidateField("additional_parameters_choice"), + db.WithValidateField("malicious_user_detection_choice"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - switch m.GetAdditionalParametersChoice().(type) { - case *ValidationSettingForQueryParameters_AllowAdditionalParameters: - if fv, exists := v.FldValidators["additional_parameters_choice.allow_additional_parameters"]; exists { - val := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_AllowAdditionalParameters).AllowAdditionalParameters + switch m.GetMaliciousUserDetectionChoice().(type) { + case *SingleLoadBalancerAppSetting_EnableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.enable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_EnableMaliciousUserDetection).EnableMaliciousUserDetection vOpts := append(opts, - db.WithValidateField("additional_parameters_choice"), - db.WithValidateField("allow_additional_parameters"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("enable_malicious_user_detection"), ) if err := fv(ctx, val, vOpts...); err != nil { return err } } - case *ValidationSettingForQueryParameters_DisallowAdditionalParameters: - if fv, exists := v.FldValidators["additional_parameters_choice.disallow_additional_parameters"]; exists { - val := m.GetAdditionalParametersChoice().(*ValidationSettingForQueryParameters_DisallowAdditionalParameters).DisallowAdditionalParameters + case *SingleLoadBalancerAppSetting_DisableMaliciousUserDetection: + if fv, exists := v.FldValidators["malicious_user_detection_choice.disable_malicious_user_detection"]; exists { + val := m.GetMaliciousUserDetectionChoice().(*SingleLoadBalancerAppSetting_DisableMaliciousUserDetection).DisableMaliciousUserDetection vOpts := append(opts, - db.WithValidateField("additional_parameters_choice"), - db.WithValidateField("disallow_additional_parameters"), + db.WithValidateField("malicious_user_detection_choice"), + db.WithValidateField("disable_malicious_user_detection"), ) if err := fv(ctx, val, vOpts...); err != nil { return err @@ -32063,8 +21428,8 @@ func (v *ValidateValidationSettingForQueryParameters) Validate(ctx context.Conte } // Well-known symbol for default validator implementation -var DefaultValidationSettingForQueryParametersValidator = func() *ValidateValidationSettingForQueryParameters { - v := &ValidateValidationSettingForQueryParameters{FldValidators: map[string]db.ValidatorFunc{}} +var DefaultSingleLoadBalancerAppSettingValidator = func() *ValidateSingleLoadBalancerAppSetting { + v := &ValidateSingleLoadBalancerAppSetting{FldValidators: map[string]db.ValidatorFunc{}} var ( err error @@ -32074,22 +21439,35 @@ var DefaultValidationSettingForQueryParametersValidator = func() *ValidateValida vFnMap := map[string]db.ValidatorFunc{} _ = vFnMap - vrhAdditionalParametersChoice := v.AdditionalParametersChoiceValidationRuleHandler - rulesAdditionalParametersChoice := map[string]string{ + vrhApiDiscoveryChoice := v.ApiDiscoveryChoiceValidationRuleHandler + rulesApiDiscoveryChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhApiDiscoveryChoice(rulesApiDiscoveryChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for SingleLoadBalancerAppSetting.api_discovery_choice: %s", err) + panic(errMsg) + } + v.FldValidators["api_discovery_choice"] = vFn + + vrhMaliciousUserDetectionChoice := v.MaliciousUserDetectionChoiceValidationRuleHandler + rulesMaliciousUserDetectionChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", } - vFn, err = vrhAdditionalParametersChoice(rulesAdditionalParametersChoice) + vFn, err = vrhMaliciousUserDetectionChoice(rulesMaliciousUserDetectionChoice) if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for ValidationSettingForQueryParameters.additional_parameters_choice: %s", err) + errMsg := fmt.Sprintf("ValidationRuleHandler for SingleLoadBalancerAppSetting.malicious_user_detection_choice: %s", err) panic(errMsg) } - v.FldValidators["additional_parameters_choice"] = vFn + v.FldValidators["malicious_user_detection_choice"] = vFn + + v.FldValidators["api_discovery_choice.enable_discovery"] = ves_io_schema_views_common_waf.ApiDiscoverySettingValidator().Validate return v }() -func ValidationSettingForQueryParametersValidator() db.Validator { - return DefaultValidationSettingForQueryParametersValidator +func SingleLoadBalancerAppSettingValidator() db.Validator { + return DefaultSingleLoadBalancerAppSettingValidator } // augmented methods on protoc/std generated struct @@ -32453,41 +21831,6 @@ func (r *CreateSpecType) GetClientSideDefenseChoiceFromGlobalSpecType(o *GlobalS return nil } -// create setters in CreateSpecType from GlobalSpecType for oneof fields -func (r *CreateSpecType) SetDdosDetectionChoiceToGlobalSpecType(o *GlobalSpecType) error { - switch of := r.DdosDetectionChoice.(type) { - case nil: - o.DdosDetectionChoice = nil - - case *CreateSpecType_DisableDdosDetection: - o.DdosDetectionChoice = &GlobalSpecType_DisableDdosDetection{DisableDdosDetection: of.DisableDdosDetection} - - case *CreateSpecType_EnableDdosDetection: - o.DdosDetectionChoice = &GlobalSpecType_EnableDdosDetection{EnableDdosDetection: of.EnableDdosDetection} - - default: - return fmt.Errorf("Unknown oneof field %T", of) - } - return nil -} - -func (r *CreateSpecType) GetDdosDetectionChoiceFromGlobalSpecType(o *GlobalSpecType) error { - switch of := o.DdosDetectionChoice.(type) { - case nil: - r.DdosDetectionChoice = nil - - case *GlobalSpecType_DisableDdosDetection: - r.DdosDetectionChoice = &CreateSpecType_DisableDdosDetection{DisableDdosDetection: of.DisableDdosDetection} - - case *GlobalSpecType_EnableDdosDetection: - r.DdosDetectionChoice = &CreateSpecType_EnableDdosDetection{EnableDdosDetection: of.EnableDdosDetection} - - default: - return fmt.Errorf("Unknown oneof field %T", of) - } - return nil -} - // create setters in CreateSpecType from GlobalSpecType for oneof fields func (r *CreateSpecType) SetHashPolicyChoiceToGlobalSpecType(o *GlobalSpecType) error { switch of := r.HashPolicyChoice.(type) { @@ -32893,16 +22236,16 @@ func (r *CreateSpecType) GetSlowDdosMitigationChoiceFromGlobalSpecType(o *Global } // create setters in CreateSpecType from GlobalSpecType for oneof fields -func (r *CreateSpecType) SetThreatIntelligenceChoiceToGlobalSpecType(o *GlobalSpecType) error { - switch of := r.ThreatIntelligenceChoice.(type) { +func (r *CreateSpecType) SetThreatMeshChoiceToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.ThreatMeshChoice.(type) { case nil: - o.ThreatIntelligenceChoice = nil + o.ThreatMeshChoice = nil - case *CreateSpecType_DisableThreatIntelligence: - o.ThreatIntelligenceChoice = &GlobalSpecType_DisableThreatIntelligence{DisableThreatIntelligence: of.DisableThreatIntelligence} + case *CreateSpecType_DisableThreatMesh: + o.ThreatMeshChoice = &GlobalSpecType_DisableThreatMesh{DisableThreatMesh: of.DisableThreatMesh} - case *CreateSpecType_EnableThreatIntelligence: - o.ThreatIntelligenceChoice = &GlobalSpecType_EnableThreatIntelligence{EnableThreatIntelligence: of.EnableThreatIntelligence} + case *CreateSpecType_EnableThreatMesh: + o.ThreatMeshChoice = &GlobalSpecType_EnableThreatMesh{EnableThreatMesh: of.EnableThreatMesh} default: return fmt.Errorf("Unknown oneof field %T", of) @@ -32910,16 +22253,16 @@ func (r *CreateSpecType) SetThreatIntelligenceChoiceToGlobalSpecType(o *GlobalSp return nil } -func (r *CreateSpecType) GetThreatIntelligenceChoiceFromGlobalSpecType(o *GlobalSpecType) error { - switch of := o.ThreatIntelligenceChoice.(type) { +func (r *CreateSpecType) GetThreatMeshChoiceFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.ThreatMeshChoice.(type) { case nil: - r.ThreatIntelligenceChoice = nil + r.ThreatMeshChoice = nil - case *GlobalSpecType_DisableThreatIntelligence: - r.ThreatIntelligenceChoice = &CreateSpecType_DisableThreatIntelligence{DisableThreatIntelligence: of.DisableThreatIntelligence} + case *GlobalSpecType_DisableThreatMesh: + r.ThreatMeshChoice = &CreateSpecType_DisableThreatMesh{DisableThreatMesh: of.DisableThreatMesh} - case *GlobalSpecType_EnableThreatIntelligence: - r.ThreatIntelligenceChoice = &CreateSpecType_EnableThreatIntelligence{EnableThreatIntelligence: of.EnableThreatIntelligence} + case *GlobalSpecType_EnableThreatMesh: + r.ThreatMeshChoice = &CreateSpecType_EnableThreatMesh{EnableThreatMesh: of.EnableThreatMesh} default: return fmt.Errorf("Unknown oneof field %T", of) @@ -33048,7 +22391,6 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.CorsPolicy = f.GetCorsPolicy() m.CsrfPolicy = f.GetCsrfPolicy() m.DataGuardRules = f.GetDataGuardRules() - m.GetDdosDetectionChoiceFromGlobalSpecType(f) m.DdosMitigationRules = f.GetDdosMitigationRules() m.DefaultRoutePools = f.GetDefaultRoutePools() m.Domains = f.GetDomains() @@ -33069,7 +22411,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.Routes = f.GetRoutes() m.GetServicePolicyChoiceFromGlobalSpecType(f) m.GetSlowDdosMitigationChoiceFromGlobalSpecType(f) - m.GetThreatIntelligenceChoiceFromGlobalSpecType(f) + m.GetThreatMeshChoiceFromGlobalSpecType(f) m.GetTrustClientIpHeadersChoiceFromGlobalSpecType(f) m.TrustedClients = f.GetTrustedClients() m.GetUserIdChoiceFromGlobalSpecType(f) @@ -33104,7 +22446,6 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.CorsPolicy = m1.CorsPolicy f.CsrfPolicy = m1.CsrfPolicy f.DataGuardRules = m1.DataGuardRules - m1.SetDdosDetectionChoiceToGlobalSpecType(f) f.DdosMitigationRules = m1.DdosMitigationRules f.DefaultRoutePools = m1.DefaultRoutePools f.Domains = m1.Domains @@ -33125,7 +22466,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Routes = m1.Routes m1.SetServicePolicyChoiceToGlobalSpecType(f) m1.SetSlowDdosMitigationChoiceToGlobalSpecType(f) - m1.SetThreatIntelligenceChoiceToGlobalSpecType(f) + m1.SetThreatMeshChoiceToGlobalSpecType(f) m1.SetTrustClientIpHeadersChoiceToGlobalSpecType(f) f.TrustedClients = m1.TrustedClients m1.SetUserIdChoiceToGlobalSpecType(f) @@ -33399,41 +22740,6 @@ func (r *GetSpecType) GetClientSideDefenseChoiceFromGlobalSpecType(o *GlobalSpec return nil } -// create setters in GetSpecType from GlobalSpecType for oneof fields -func (r *GetSpecType) SetDdosDetectionChoiceToGlobalSpecType(o *GlobalSpecType) error { - switch of := r.DdosDetectionChoice.(type) { - case nil: - o.DdosDetectionChoice = nil - - case *GetSpecType_DisableDdosDetection: - o.DdosDetectionChoice = &GlobalSpecType_DisableDdosDetection{DisableDdosDetection: of.DisableDdosDetection} - - case *GetSpecType_EnableDdosDetection: - o.DdosDetectionChoice = &GlobalSpecType_EnableDdosDetection{EnableDdosDetection: of.EnableDdosDetection} - - default: - return fmt.Errorf("Unknown oneof field %T", of) - } - return nil -} - -func (r *GetSpecType) GetDdosDetectionChoiceFromGlobalSpecType(o *GlobalSpecType) error { - switch of := o.DdosDetectionChoice.(type) { - case nil: - r.DdosDetectionChoice = nil - - case *GlobalSpecType_DisableDdosDetection: - r.DdosDetectionChoice = &GetSpecType_DisableDdosDetection{DisableDdosDetection: of.DisableDdosDetection} - - case *GlobalSpecType_EnableDdosDetection: - r.DdosDetectionChoice = &GetSpecType_EnableDdosDetection{EnableDdosDetection: of.EnableDdosDetection} - - default: - return fmt.Errorf("Unknown oneof field %T", of) - } - return nil -} - // create setters in GetSpecType from GlobalSpecType for oneof fields func (r *GetSpecType) SetHashPolicyChoiceToGlobalSpecType(o *GlobalSpecType) error { switch of := r.HashPolicyChoice.(type) { @@ -33839,16 +23145,16 @@ func (r *GetSpecType) GetSlowDdosMitigationChoiceFromGlobalSpecType(o *GlobalSpe } // create setters in GetSpecType from GlobalSpecType for oneof fields -func (r *GetSpecType) SetThreatIntelligenceChoiceToGlobalSpecType(o *GlobalSpecType) error { - switch of := r.ThreatIntelligenceChoice.(type) { +func (r *GetSpecType) SetThreatMeshChoiceToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.ThreatMeshChoice.(type) { case nil: - o.ThreatIntelligenceChoice = nil + o.ThreatMeshChoice = nil - case *GetSpecType_DisableThreatIntelligence: - o.ThreatIntelligenceChoice = &GlobalSpecType_DisableThreatIntelligence{DisableThreatIntelligence: of.DisableThreatIntelligence} + case *GetSpecType_DisableThreatMesh: + o.ThreatMeshChoice = &GlobalSpecType_DisableThreatMesh{DisableThreatMesh: of.DisableThreatMesh} - case *GetSpecType_EnableThreatIntelligence: - o.ThreatIntelligenceChoice = &GlobalSpecType_EnableThreatIntelligence{EnableThreatIntelligence: of.EnableThreatIntelligence} + case *GetSpecType_EnableThreatMesh: + o.ThreatMeshChoice = &GlobalSpecType_EnableThreatMesh{EnableThreatMesh: of.EnableThreatMesh} default: return fmt.Errorf("Unknown oneof field %T", of) @@ -33856,16 +23162,16 @@ func (r *GetSpecType) SetThreatIntelligenceChoiceToGlobalSpecType(o *GlobalSpecT return nil } -func (r *GetSpecType) GetThreatIntelligenceChoiceFromGlobalSpecType(o *GlobalSpecType) error { - switch of := o.ThreatIntelligenceChoice.(type) { +func (r *GetSpecType) GetThreatMeshChoiceFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.ThreatMeshChoice.(type) { case nil: - r.ThreatIntelligenceChoice = nil + r.ThreatMeshChoice = nil - case *GlobalSpecType_DisableThreatIntelligence: - r.ThreatIntelligenceChoice = &GetSpecType_DisableThreatIntelligence{DisableThreatIntelligence: of.DisableThreatIntelligence} + case *GlobalSpecType_DisableThreatMesh: + r.ThreatMeshChoice = &GetSpecType_DisableThreatMesh{DisableThreatMesh: of.DisableThreatMesh} - case *GlobalSpecType_EnableThreatIntelligence: - r.ThreatIntelligenceChoice = &GetSpecType_EnableThreatIntelligence{EnableThreatIntelligence: of.EnableThreatIntelligence} + case *GlobalSpecType_EnableThreatMesh: + r.ThreatMeshChoice = &GetSpecType_EnableThreatMesh{EnableThreatMesh: of.EnableThreatMesh} default: return fmt.Errorf("Unknown oneof field %T", of) @@ -33996,7 +23302,6 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.CorsPolicy = f.GetCorsPolicy() m.CsrfPolicy = f.GetCsrfPolicy() m.DataGuardRules = f.GetDataGuardRules() - m.GetDdosDetectionChoiceFromGlobalSpecType(f) m.DdosMitigationRules = f.GetDdosMitigationRules() m.DefaultRoutePools = f.GetDefaultRoutePools() m.DnsInfo = f.GetDnsInfo() @@ -34022,7 +23327,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GetServicePolicyChoiceFromGlobalSpecType(f) m.GetSlowDdosMitigationChoiceFromGlobalSpecType(f) m.State = f.GetState() - m.GetThreatIntelligenceChoiceFromGlobalSpecType(f) + m.GetThreatMeshChoiceFromGlobalSpecType(f) m.GetTrustClientIpHeadersChoiceFromGlobalSpecType(f) m.TrustedClients = f.GetTrustedClients() m.GetUserIdChoiceFromGlobalSpecType(f) @@ -34059,7 +23364,6 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.CorsPolicy = m1.CorsPolicy f.CsrfPolicy = m1.CsrfPolicy f.DataGuardRules = m1.DataGuardRules - m1.SetDdosDetectionChoiceToGlobalSpecType(f) f.DdosMitigationRules = m1.DdosMitigationRules f.DefaultRoutePools = m1.DefaultRoutePools f.DnsInfo = m1.DnsInfo @@ -34085,7 +23389,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m1.SetServicePolicyChoiceToGlobalSpecType(f) m1.SetSlowDdosMitigationChoiceToGlobalSpecType(f) f.State = m1.State - m1.SetThreatIntelligenceChoiceToGlobalSpecType(f) + m1.SetThreatMeshChoiceToGlobalSpecType(f) m1.SetTrustClientIpHeadersChoiceToGlobalSpecType(f) f.TrustedClients = m1.TrustedClients m1.SetUserIdChoiceToGlobalSpecType(f) @@ -34359,41 +23663,6 @@ func (r *ReplaceSpecType) GetClientSideDefenseChoiceFromGlobalSpecType(o *Global return nil } -// create setters in ReplaceSpecType from GlobalSpecType for oneof fields -func (r *ReplaceSpecType) SetDdosDetectionChoiceToGlobalSpecType(o *GlobalSpecType) error { - switch of := r.DdosDetectionChoice.(type) { - case nil: - o.DdosDetectionChoice = nil - - case *ReplaceSpecType_DisableDdosDetection: - o.DdosDetectionChoice = &GlobalSpecType_DisableDdosDetection{DisableDdosDetection: of.DisableDdosDetection} - - case *ReplaceSpecType_EnableDdosDetection: - o.DdosDetectionChoice = &GlobalSpecType_EnableDdosDetection{EnableDdosDetection: of.EnableDdosDetection} - - default: - return fmt.Errorf("Unknown oneof field %T", of) - } - return nil -} - -func (r *ReplaceSpecType) GetDdosDetectionChoiceFromGlobalSpecType(o *GlobalSpecType) error { - switch of := o.DdosDetectionChoice.(type) { - case nil: - r.DdosDetectionChoice = nil - - case *GlobalSpecType_DisableDdosDetection: - r.DdosDetectionChoice = &ReplaceSpecType_DisableDdosDetection{DisableDdosDetection: of.DisableDdosDetection} - - case *GlobalSpecType_EnableDdosDetection: - r.DdosDetectionChoice = &ReplaceSpecType_EnableDdosDetection{EnableDdosDetection: of.EnableDdosDetection} - - default: - return fmt.Errorf("Unknown oneof field %T", of) - } - return nil -} - // create setters in ReplaceSpecType from GlobalSpecType for oneof fields func (r *ReplaceSpecType) SetHashPolicyChoiceToGlobalSpecType(o *GlobalSpecType) error { switch of := r.HashPolicyChoice.(type) { @@ -34799,16 +24068,16 @@ func (r *ReplaceSpecType) GetSlowDdosMitigationChoiceFromGlobalSpecType(o *Globa } // create setters in ReplaceSpecType from GlobalSpecType for oneof fields -func (r *ReplaceSpecType) SetThreatIntelligenceChoiceToGlobalSpecType(o *GlobalSpecType) error { - switch of := r.ThreatIntelligenceChoice.(type) { +func (r *ReplaceSpecType) SetThreatMeshChoiceToGlobalSpecType(o *GlobalSpecType) error { + switch of := r.ThreatMeshChoice.(type) { case nil: - o.ThreatIntelligenceChoice = nil + o.ThreatMeshChoice = nil - case *ReplaceSpecType_DisableThreatIntelligence: - o.ThreatIntelligenceChoice = &GlobalSpecType_DisableThreatIntelligence{DisableThreatIntelligence: of.DisableThreatIntelligence} + case *ReplaceSpecType_DisableThreatMesh: + o.ThreatMeshChoice = &GlobalSpecType_DisableThreatMesh{DisableThreatMesh: of.DisableThreatMesh} - case *ReplaceSpecType_EnableThreatIntelligence: - o.ThreatIntelligenceChoice = &GlobalSpecType_EnableThreatIntelligence{EnableThreatIntelligence: of.EnableThreatIntelligence} + case *ReplaceSpecType_EnableThreatMesh: + o.ThreatMeshChoice = &GlobalSpecType_EnableThreatMesh{EnableThreatMesh: of.EnableThreatMesh} default: return fmt.Errorf("Unknown oneof field %T", of) @@ -34816,16 +24085,16 @@ func (r *ReplaceSpecType) SetThreatIntelligenceChoiceToGlobalSpecType(o *GlobalS return nil } -func (r *ReplaceSpecType) GetThreatIntelligenceChoiceFromGlobalSpecType(o *GlobalSpecType) error { - switch of := o.ThreatIntelligenceChoice.(type) { +func (r *ReplaceSpecType) GetThreatMeshChoiceFromGlobalSpecType(o *GlobalSpecType) error { + switch of := o.ThreatMeshChoice.(type) { case nil: - r.ThreatIntelligenceChoice = nil + r.ThreatMeshChoice = nil - case *GlobalSpecType_DisableThreatIntelligence: - r.ThreatIntelligenceChoice = &ReplaceSpecType_DisableThreatIntelligence{DisableThreatIntelligence: of.DisableThreatIntelligence} + case *GlobalSpecType_DisableThreatMesh: + r.ThreatMeshChoice = &ReplaceSpecType_DisableThreatMesh{DisableThreatMesh: of.DisableThreatMesh} - case *GlobalSpecType_EnableThreatIntelligence: - r.ThreatIntelligenceChoice = &ReplaceSpecType_EnableThreatIntelligence{EnableThreatIntelligence: of.EnableThreatIntelligence} + case *GlobalSpecType_EnableThreatMesh: + r.ThreatMeshChoice = &ReplaceSpecType_EnableThreatMesh{EnableThreatMesh: of.EnableThreatMesh} default: return fmt.Errorf("Unknown oneof field %T", of) @@ -34954,7 +24223,6 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.CorsPolicy = f.GetCorsPolicy() m.CsrfPolicy = f.GetCsrfPolicy() m.DataGuardRules = f.GetDataGuardRules() - m.GetDdosDetectionChoiceFromGlobalSpecType(f) m.DdosMitigationRules = f.GetDdosMitigationRules() m.DefaultRoutePools = f.GetDefaultRoutePools() m.Domains = f.GetDomains() @@ -34975,7 +24243,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.Routes = f.GetRoutes() m.GetServicePolicyChoiceFromGlobalSpecType(f) m.GetSlowDdosMitigationChoiceFromGlobalSpecType(f) - m.GetThreatIntelligenceChoiceFromGlobalSpecType(f) + m.GetThreatMeshChoiceFromGlobalSpecType(f) m.GetTrustClientIpHeadersChoiceFromGlobalSpecType(f) m.TrustedClients = f.GetTrustedClients() m.GetUserIdChoiceFromGlobalSpecType(f) @@ -35010,7 +24278,6 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.CorsPolicy = m1.CorsPolicy f.CsrfPolicy = m1.CsrfPolicy f.DataGuardRules = m1.DataGuardRules - m1.SetDdosDetectionChoiceToGlobalSpecType(f) f.DdosMitigationRules = m1.DdosMitigationRules f.DefaultRoutePools = m1.DefaultRoutePools f.Domains = m1.Domains @@ -35031,7 +24298,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Routes = m1.Routes m1.SetServicePolicyChoiceToGlobalSpecType(f) m1.SetSlowDdosMitigationChoiceToGlobalSpecType(f) - m1.SetThreatIntelligenceChoiceToGlobalSpecType(f) + m1.SetThreatMeshChoiceToGlobalSpecType(f) m1.SetTrustClientIpHeadersChoiceToGlobalSpecType(f) f.TrustedClients = m1.TrustedClients m1.SetUserIdChoiceToGlobalSpecType(f) diff --git a/pbgo/extschema/schema/views/k8s_manifest_params/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/k8s_manifest_params/crudapi/api.vesapi.go index f0f38081f..45f89f1bf 100644 --- a/pbgo/extschema/schema/views/k8s_manifest_params/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/k8s_manifest_params/crudapi/api.vesapi.go @@ -3329,10 +3329,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/network_policy_view/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/network_policy_view/crudapi/api.vesapi.go index ee4011df9..fa63212ba 100644 --- a/pbgo/extschema/schema/views/network_policy_view/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/network_policy_view/crudapi/api.vesapi.go @@ -3477,10 +3477,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/network_policy_view/object.pb.go b/pbgo/extschema/schema/views/network_policy_view/object.pb.go index a01666cfa..d856d7de7 100644 --- a/pbgo/extschema/schema/views/network_policy_view/object.pb.go +++ b/pbgo/extschema/schema/views/network_policy_view/object.pb.go @@ -231,46 +231,47 @@ func init() { } var fileDescriptor_bfac3a9574c8f66d = []byte{ - // 621 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0xc1, 0x4f, 0x13, 0x4f, - 0x14, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0xfc, 0xc8, 0x92, 0xfc, 0x52, 0x51, 0x47, 0x52, 0x0f, - 0x72, 0x70, 0x77, 0x15, 0x34, 0x06, 0x34, 0x92, 0x80, 0x86, 0x0b, 0x44, 0x53, 0xf4, 0x62, 0x34, - 0xcd, 0xec, 0xf4, 0x75, 0x19, 0xd9, 0xed, 0x6c, 0x66, 0x66, 0x0b, 0x3d, 0x98, 0x18, 0x4f, 0x1e, - 0xbd, 0x9b, 0x78, 0x36, 0xc6, 0x3f, 0x42, 0xf4, 0xe2, 0x91, 0x70, 0xe2, 0x28, 0xdb, 0x8b, 0x47, - 0x12, 0xff, 0x01, 0xd3, 0x59, 0x96, 0xd0, 0xb2, 0x89, 0x0d, 0xb7, 0xd9, 0xbe, 0xef, 0xe7, 0x3b, - 0x6f, 0xde, 0x7b, 0x7d, 0xf8, 0x4e, 0x1b, 0x94, 0xc3, 0x85, 0xab, 0xd8, 0x16, 0x84, 0xd4, 0x6d, - 0x73, 0xd8, 0x51, 0x6e, 0x0b, 0xf4, 0x8e, 0x90, 0xdb, 0xf5, 0x48, 0x04, 0x9c, 0x75, 0xea, 0xbd, - 0x1f, 0x5d, 0xe1, 0xbd, 0x06, 0xa6, 0x9d, 0x48, 0x0a, 0x2d, 0xac, 0x1b, 0x29, 0xe5, 0xa4, 0x94, - 0x63, 0x28, 0x27, 0x87, 0x9a, 0xb1, 0x7d, 0xae, 0xb7, 0x62, 0xcf, 0x61, 0x22, 0x74, 0x7d, 0xe1, - 0x0b, 0xd7, 0xf0, 0x5e, 0xdc, 0x34, 0x5f, 0xe6, 0xc3, 0x9c, 0x52, 0xdf, 0x99, 0xcb, 0xfd, 0xd9, - 0x88, 0x48, 0x73, 0xd1, 0x52, 0x27, 0xc1, 0x4b, 0xfd, 0x41, 0xdd, 0x89, 0x20, 0x0b, 0x55, 0x07, - 0x5e, 0x01, 0x0a, 0x5a, 0xed, 0x01, 0x7c, 0xf6, 0xfc, 0x4b, 0xeb, 0xfd, 0x8a, 0x85, 0x61, 0x6b, - 0x71, 0xf6, 0xea, 0x6b, 0x79, 0xd0, 0x19, 0x41, 0xf5, 0xd3, 0x08, 0x2e, 0x3f, 0x31, 0xc5, 0xb3, - 0x16, 0xf1, 0x58, 0x08, 0x9a, 0x36, 0xa8, 0xa6, 0x15, 0x34, 0x8b, 0xe6, 0xc6, 0xe7, 0xaf, 0x3a, - 0xfd, 0x95, 0x4c, 0x85, 0x1b, 0xa0, 0xe9, 0xb3, 0x4e, 0x04, 0xb5, 0x53, 0xb9, 0xb5, 0x8e, 0xff, - 0x53, 0x1d, 0xa5, 0x21, 0xac, 0x9f, 0x3a, 0x14, 0x8d, 0xc3, 0xf5, 0x01, 0x87, 0x4d, 0xa3, 0x1a, - 0xf0, 0x99, 0x4c, 0xd9, 0x8d, 0xcc, 0xed, 0x31, 0x1e, 0x51, 0x11, 0xb0, 0x4a, 0xc9, 0x58, 0xdc, - 0x76, 0x86, 0x6c, 0xa7, 0xb3, 0x19, 0x01, 0x33, 0x86, 0x06, 0x5f, 0xfa, 0x51, 0x7c, 0xb7, 0x5c, - 0x4e, 0xad, 0xdf, 0x2f, 0xa3, 0xef, 0x7b, 0x95, 0xe2, 0x14, 0x3a, 0xd8, 0xab, 0x7c, 0x2d, 0xe2, - 0x45, 0x5c, 0x5a, 0x03, 0x6d, 0xcd, 0x37, 0xef, 0xee, 0x32, 0x5b, 0x01, 0x8b, 0x25, 0x84, 0xa0, - 0xb6, 0x6c, 0x8f, 0x2a, 0xce, 0xec, 0x50, 0xb4, 0xb8, 0x16, 0xf2, 0x66, 0xaf, 0x25, 0x36, 0x17, - 0xf6, 0xc9, 0x55, 0xb6, 0x04, 0xda, 0xc0, 0xf7, 0xf1, 0x68, 0x0d, 0xa2, 0x80, 0x32, 0xb0, 0x6e, - 0xe5, 0xe3, 0xb1, 0x82, 0xf3, 0xec, 0x8e, 0xe4, 0x1a, 0xf0, 0x12, 0x2e, 0xaf, 0x4a, 0xa0, 0xfa, - 0x82, 0xec, 0x23, 0x08, 0xe0, 0x82, 0xec, 0xc8, 0x3a, 0x57, 0x17, 0x7a, 0x70, 0xf5, 0x25, 0x1e, - 0xcb, 0xea, 0x6a, 0x3d, 0xc5, 0xa3, 0x3e, 0xab, 0x9b, 0xde, 0xa4, 0x03, 0x72, 0x6f, 0xe8, 0xde, - 0xac, 0x05, 0xc2, 0xa3, 0xc1, 0x69, 0x87, 0xca, 0x3e, 0xeb, 0x9d, 0xab, 0x7f, 0x10, 0x9e, 0xd8, - 0xd4, 0x54, 0xc7, 0x6a, 0xe8, 0x21, 0x4c, 0xe5, 0x39, 0x43, 0xf8, 0x1c, 0x8f, 0xa7, 0x6b, 0xa0, - 0x2e, 0xa1, 0xa9, 0x2a, 0xc5, 0xd9, 0xd2, 0xdc, 0xf8, 0xfc, 0x95, 0xdc, 0x11, 0xae, 0x41, 0xb3, - 0x07, 0xaf, 0xfc, 0xff, 0xe5, 0xcd, 0x74, 0x4e, 0xb6, 0x35, 0x2c, 0x32, 0x99, 0xb2, 0x1e, 0x60, - 0xcc, 0x44, 0xab, 0xc1, 0xcd, 0x7f, 0xb1, 0x52, 0xca, 0x75, 0x5d, 0xcd, 0x04, 0x26, 0xa5, 0x33, - 0xfa, 0xa5, 0xe9, 0x83, 0x87, 0x53, 0x78, 0x12, 0x4f, 0x64, 0x59, 0x3a, 0x31, 0x6f, 0xac, 0x7c, - 0x44, 0xfb, 0x47, 0xa4, 0x70, 0x78, 0x44, 0x0a, 0xc7, 0x47, 0x04, 0xbd, 0x4d, 0x08, 0xfa, 0x9c, - 0x10, 0xf4, 0x33, 0x21, 0x68, 0x3f, 0x21, 0xe8, 0x30, 0x21, 0xe8, 0x57, 0x42, 0xd0, 0xef, 0x84, - 0x14, 0x8e, 0x13, 0x82, 0x3e, 0x74, 0x49, 0xe1, 0x5b, 0x97, 0xa0, 0xfd, 0x2e, 0x29, 0x1c, 0x76, - 0x49, 0xe1, 0xc5, 0x2b, 0x5f, 0x44, 0xdb, 0xbe, 0xd3, 0x16, 0x81, 0x06, 0x29, 0xa9, 0x13, 0x2b, - 0xd7, 0x1c, 0x9a, 0x42, 0x86, 0x76, 0x24, 0x45, 0x9b, 0x37, 0x40, 0xda, 0x59, 0xd8, 0x8d, 0x3c, - 0x5f, 0xb8, 0xb0, 0xab, 0x4f, 0x76, 0xc0, 0xbf, 0xf6, 0x87, 0x57, 0x36, 0x9b, 0x61, 0xe1, 0x6f, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x95, 0x94, 0x65, 0x81, 0x7d, 0x05, 0x00, 0x00, + // 638 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0x13, 0x41, + 0x14, 0xc7, 0x3b, 0x14, 0x0b, 0x19, 0x08, 0x92, 0x92, 0x98, 0x8a, 0x3a, 0x36, 0xf5, 0x20, 0x07, + 0x77, 0x37, 0x82, 0xc6, 0x48, 0x8c, 0x24, 0xa0, 0xe1, 0x02, 0xc1, 0x14, 0x3c, 0x88, 0x98, 0x66, + 0x76, 0xf6, 0x75, 0x19, 0xe9, 0x76, 0x36, 0x33, 0xb3, 0x85, 0x1e, 0x4c, 0x8c, 0x27, 0x8f, 0xde, + 0xfd, 0x02, 0xc6, 0x2f, 0xa1, 0x78, 0xf2, 0x62, 0x42, 0x38, 0x71, 0x94, 0xad, 0x07, 0x8f, 0x24, + 0x7e, 0x01, 0xc3, 0x2c, 0x8b, 0xb4, 0x6e, 0xb4, 0x17, 0x6e, 0xb3, 0xfb, 0xfe, 0xff, 0xdf, 0xbc, + 0x79, 0xf3, 0xe6, 0xe1, 0x3b, 0x2d, 0x50, 0x36, 0x17, 0x8e, 0x62, 0x9b, 0x10, 0x50, 0xa7, 0xc5, + 0x61, 0x5b, 0x39, 0x4d, 0xd0, 0xdb, 0x42, 0x6e, 0xd5, 0x42, 0xd1, 0xe0, 0xac, 0x5d, 0x3b, 0xfe, + 0xe9, 0x08, 0xf7, 0x25, 0x30, 0x6d, 0x87, 0x52, 0x68, 0x51, 0xbc, 0x99, 0xb8, 0xec, 0xc4, 0x65, + 0x1b, 0x97, 0x9d, 0xe1, 0x9a, 0xb4, 0x7c, 0xae, 0x37, 0x23, 0xd7, 0x66, 0x22, 0x70, 0x7c, 0xe1, + 0x0b, 0xc7, 0xf8, 0xdd, 0xa8, 0x6e, 0xbe, 0xcc, 0x87, 0x59, 0x25, 0xdc, 0xc9, 0x2b, 0xdd, 0xd9, + 0x88, 0x50, 0x73, 0xd1, 0x54, 0x27, 0xc1, 0xcb, 0xdd, 0x41, 0xdd, 0x0e, 0x21, 0x0d, 0x55, 0x7a, + 0x4e, 0x01, 0x0a, 0x9a, 0xad, 0x1e, 0x7b, 0xf9, 0xef, 0x93, 0xd6, 0xba, 0x15, 0x33, 0xfd, 0xd6, + 0xe2, 0xec, 0xd6, 0xd7, 0xb3, 0x4c, 0x67, 0x04, 0x95, 0x4f, 0x17, 0x70, 0x61, 0xc5, 0x14, 0xaf, + 0x78, 0x1f, 0x0f, 0x07, 0xa0, 0xa9, 0x47, 0x35, 0x2d, 0xa1, 0x32, 0x9a, 0x1a, 0x99, 0xbe, 0x66, + 0x77, 0x57, 0x32, 0x11, 0x2e, 0x83, 0xa6, 0x6b, 0xed, 0x10, 0xaa, 0xa7, 0xf2, 0xe2, 0x12, 0xbe, + 0xa8, 0xda, 0x4a, 0x43, 0x50, 0x3b, 0x25, 0x0c, 0x18, 0xc2, 0x8d, 0x1e, 0xc2, 0xaa, 0x51, 0xf5, + 0x70, 0xc6, 0x12, 0xef, 0x72, 0x4a, 0x7b, 0x8c, 0x07, 0x55, 0x08, 0xac, 0x94, 0x37, 0x88, 0xdb, + 0x76, 0x9f, 0xd7, 0x69, 0xaf, 0x86, 0xc0, 0x0c, 0xd0, 0xd8, 0x67, 0x7f, 0xe4, 0xdf, 0xcc, 0x15, + 0x12, 0xf4, 0xdb, 0x39, 0xf4, 0x65, 0xb7, 0x34, 0x30, 0x8e, 0xf6, 0x77, 0x4b, 0xdf, 0xf2, 0xf8, + 0x39, 0xce, 0x2f, 0x82, 0x2e, 0xae, 0xd5, 0xef, 0xee, 0x30, 0x4b, 0x01, 0x8b, 0x24, 0x04, 0xa0, + 0x36, 0x2d, 0x97, 0x2a, 0xce, 0xac, 0x40, 0x34, 0xb9, 0x16, 0xf2, 0x56, 0xb9, 0x37, 0xac, 0x34, + 0x6d, 0x7a, 0x54, 0x7a, 0x7f, 0x14, 0x2d, 0x50, 0x16, 0x17, 0xd6, 0x49, 0x32, 0x96, 0x04, 0xea, + 0xe1, 0x75, 0x3c, 0x54, 0x85, 0xb0, 0x41, 0x19, 0x14, 0x57, 0xb2, 0x37, 0x88, 0x14, 0xfc, 0x8b, + 0x9e, 0x84, 0x7b, 0xd0, 0xdb, 0x92, 0x6b, 0xc0, 0xcf, 0x70, 0x61, 0x41, 0x02, 0xd5, 0xe7, 0x83, + 0x7e, 0x04, 0x0d, 0x38, 0x0f, 0xf4, 0x06, 0x1e, 0x5c, 0xe2, 0xea, 0x9c, 0xea, 0x5d, 0xd9, 0xc0, + 0xc3, 0xe9, 0xc5, 0x17, 0x9f, 0xe0, 0x21, 0x9f, 0xd5, 0x4c, 0xf3, 0x24, 0x1d, 0x7c, 0xaf, 0xef, + 0xe6, 0x59, 0x6c, 0x08, 0x97, 0x36, 0x4e, 0x5b, 0xa8, 0xe0, 0xb3, 0xe3, 0x75, 0xe5, 0x17, 0xc2, + 0xa3, 0xab, 0x9a, 0xea, 0x48, 0xf5, 0xfd, 0x4a, 0x12, 0x79, 0xc6, 0x2b, 0x79, 0x8a, 0x47, 0x92, + 0x39, 0x55, 0x93, 0x50, 0x57, 0xa5, 0x81, 0x72, 0x7e, 0x6a, 0x64, 0xfa, 0x6a, 0xe6, 0x1b, 0xab, + 0x42, 0xfd, 0xd8, 0x3c, 0x7f, 0xe9, 0xe3, 0xab, 0x89, 0x8c, 0x6c, 0xab, 0x58, 0xa4, 0x32, 0x55, + 0x7c, 0x80, 0x31, 0x13, 0x4d, 0x8f, 0x9b, 0x61, 0x51, 0xca, 0x67, 0x52, 0x17, 0x52, 0x81, 0x49, + 0xe9, 0x8c, 0x7e, 0x76, 0x62, 0xff, 0xe1, 0x38, 0x1e, 0xc3, 0xa3, 0x69, 0x96, 0x76, 0xc4, 0xbd, + 0xf9, 0xf7, 0x68, 0xef, 0x90, 0xe4, 0x0e, 0x0e, 0x49, 0xee, 0xe8, 0x90, 0xa0, 0xd7, 0x31, 0x41, + 0x1f, 0x62, 0x82, 0xbe, 0xc6, 0x04, 0xed, 0xc5, 0x04, 0x1d, 0xc4, 0x04, 0x7d, 0x8f, 0x09, 0xfa, + 0x19, 0x93, 0xdc, 0x51, 0x4c, 0xd0, 0xbb, 0x0e, 0xc9, 0x7d, 0xee, 0x10, 0xb4, 0xd7, 0x21, 0xb9, + 0x83, 0x0e, 0xc9, 0xad, 0xbf, 0xf0, 0x45, 0xb8, 0xe5, 0xdb, 0x2d, 0xd1, 0xd0, 0x20, 0x25, 0xb5, + 0x23, 0xe5, 0x98, 0x45, 0x5d, 0xc8, 0xc0, 0x0a, 0xa5, 0x68, 0x71, 0x0f, 0xa4, 0x95, 0x86, 0x9d, + 0xd0, 0xf5, 0x85, 0x03, 0x3b, 0xfa, 0x64, 0x48, 0xfd, 0x6f, 0xc0, 0xb9, 0x05, 0x33, 0xba, 0x66, + 0x7e, 0x07, 0x00, 0x00, 0xff, 0xff, 0xf4, 0xe4, 0x06, 0xa9, 0x1e, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/network_policy_view/pkg.vespkg.go b/pbgo/extschema/schema/views/network_policy_view/pkg.vespkg.go index f6317682b..5d69ee114 100644 --- a/pbgo/extschema/schema/views/network_policy_view/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/network_policy_view/pkg.vespkg.go @@ -70,84 +70,84 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.network_policy_view.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.network_policy_view.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.network_policy_view.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.network_policy_view.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -165,15 +165,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.network_policy_view.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.egress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.endpoint.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.ingress_rules.#.prefix_list.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/network_policy_view/public_crudapi.pb.go b/pbgo/extschema/schema/views/network_policy_view/public_crudapi.pb.go index b1cb6e7c7..47a3848a9 100644 --- a/pbgo/extschema/schema/views/network_policy_view/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/network_policy_view/public_crudapi.pb.go @@ -1063,109 +1063,110 @@ func init() { } var fileDescriptor_09d5f5e2d1b21f01 = []byte{ - // 1630 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1b, 0xc7, + // 1648 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x1b, 0xc7, 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb1, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x2c, 0x4b, 0x1b, - 0xad, 0x20, 0x94, 0x4b, 0x57, 0x1f, 0xb5, 0x2d, 0x08, 0x72, 0x29, 0x69, 0x25, 0x48, 0x95, 0x4d, + 0xad, 0x20, 0x94, 0x4b, 0x43, 0x1f, 0xb5, 0x2d, 0x08, 0x72, 0x29, 0x69, 0x25, 0x48, 0x95, 0x4c, 0x77, 0x49, 0xbb, 0xb5, 0x51, 0x63, 0xb1, 0x5c, 0x0e, 0xe9, 0xad, 0x48, 0xee, 0x76, 0x67, 0x48, - 0x89, 0x31, 0x04, 0x04, 0x06, 0x72, 0x48, 0x4e, 0x09, 0x72, 0x0b, 0x02, 0x24, 0x97, 0x20, 0xf9, - 0x03, 0x72, 0x48, 0xa0, 0x8b, 0x73, 0xb2, 0xe1, 0x43, 0x60, 0x38, 0x17, 0x1f, 0x63, 0x2a, 0x07, - 0xe7, 0x60, 0xc0, 0x08, 0x90, 0x7b, 0xb0, 0x33, 0xbb, 0x34, 0x49, 0x31, 0x31, 0x49, 0xe9, 0xc4, - 0x9d, 0x79, 0xef, 0xf7, 0x9b, 0xf7, 0xde, 0xbc, 0xf7, 0xf8, 0x76, 0xe1, 0x62, 0x0d, 0x13, 0x51, - 0x37, 0x92, 0x44, 0xbb, 0x8b, 0xcb, 0x6a, 0xb2, 0xa6, 0xe3, 0x1d, 0x92, 0xac, 0x60, 0xba, 0x63, - 0x58, 0xdb, 0x8a, 0x69, 0x94, 0x74, 0xad, 0xae, 0xd8, 0x9b, 0x49, 0xb3, 0x9a, 0x2b, 0xe9, 0x9a, - 0xa2, 0x59, 0xd5, 0xbc, 0x6a, 0xea, 0xa2, 0x69, 0x19, 0xd4, 0x40, 0x7f, 0xe1, 0x68, 0x91, 0xa3, - 0x45, 0x86, 0x16, 0xbb, 0xa0, 0x23, 0x89, 0xa2, 0x4e, 0xef, 0x56, 0x73, 0xa2, 0x66, 0x94, 0x93, - 0x45, 0xa3, 0x68, 0x24, 0x19, 0x3e, 0x57, 0x2d, 0xb0, 0x15, 0x5b, 0xb0, 0x27, 0xce, 0x1b, 0x39, - 0x5b, 0x34, 0x8c, 0x62, 0x09, 0x27, 0x55, 0x53, 0x4f, 0xaa, 0x95, 0x8a, 0x41, 0x55, 0xaa, 0x1b, - 0x15, 0xe2, 0x48, 0x7f, 0xef, 0x48, 0x9b, 0x1c, 0xb8, 0x6c, 0xd2, 0xba, 0x23, 0x8c, 0xb4, 0x3b, - 0x84, 0x2d, 0xcb, 0xb0, 0x9a, 0xc0, 0x76, 0x99, 0x61, 0xb6, 0xb2, 0x4e, 0xb6, 0x0b, 0x69, 0xdd, - 0xc4, 0xae, 0x28, 0xde, 0x11, 0x24, 0x4c, 0x70, 0xa5, 0xd6, 0x01, 0x8f, 0x1d, 0x0e, 0xa4, 0xd2, - 0xae, 0x31, 0xd7, 0x6b, 0xa8, 0x8d, 0xdc, 0xff, 0xb0, 0x46, 0x1d, 0xd4, 0x6c, 0xaf, 0xa8, 0x56, - 0x83, 0xff, 0xd8, 0x0d, 0xd4, 0xa2, 0x10, 0xff, 0x1a, 0xc0, 0xd1, 0x15, 0x0b, 0xab, 0x14, 0xcb, - 0xf8, 0xff, 0x55, 0x4c, 0x28, 0xba, 0x02, 0x03, 0x65, 0x4c, 0xd5, 0xbc, 0x4a, 0xd5, 0x30, 0x88, - 0x81, 0xa9, 0xd0, 0xcc, 0x39, 0xb1, 0xfd, 0x76, 0xd3, 0xcc, 0x2c, 0x8e, 0xba, 0x8a, 0xa9, 0x9a, - 0xad, 0x9b, 0x58, 0x6e, 0x82, 0xd0, 0x7f, 0xa1, 0x8f, 0x98, 0x58, 0x0b, 0x7b, 0x18, 0xf8, 0xa2, - 0xd8, 0x63, 0x6a, 0x88, 0x9c, 0x30, 0x63, 0x62, 0xcd, 0x26, 0x5c, 0x1e, 0xff, 0x68, 0x6f, 0xc4, - 0xe6, 0x11, 0x8b, 0x9a, 0x62, 0xff, 0xca, 0x8c, 0x75, 0x21, 0xf8, 0x78, 0xc9, 0xcf, 0x0d, 0x88, - 0xbf, 0xe3, 0x81, 0x63, 0xae, 0xed, 0xc4, 0x34, 0x2a, 0x04, 0xa3, 0xc5, 0x43, 0xc6, 0xc7, 0xba, - 0x1a, 0xbf, 0x8e, 0x69, 0x17, 0xcb, 0xd3, 0x70, 0x9c, 0xd4, 0x09, 0xc5, 0x65, 0xa5, 0x49, 0xe2, - 0x65, 0x24, 0x7f, 0xee, 0x20, 0xc9, 0x30, 0xad, 0xc3, 0x54, 0x63, 0x1c, 0x7e, 0xd5, 0x25, 0xbc, - 0xd5, 0x16, 0x8a, 0xb9, 0x9e, 0x43, 0xb1, 0x8e, 0x69, 0x1f, 0x71, 0x78, 0x09, 0xe0, 0x98, 0x8c, - 0xcd, 0x92, 0xaa, 0x35, 0x2f, 0xf1, 0x1f, 0x87, 0xe2, 0x70, 0xbe, 0x6b, 0x1c, 0x1c, 0x58, 0x97, - 0x58, 0xdc, 0x69, 0x33, 0xfd, 0x52, 0xcf, 0xa6, 0x3b, 0x8c, 0x6f, 0x30, 0x1f, 0x25, 0xa1, 0x60, - 0x61, 0x62, 0x54, 0x2d, 0x0d, 0x2b, 0x35, 0x6c, 0x11, 0xdd, 0xa8, 0xb0, 0x58, 0x07, 0x97, 0x7d, - 0x2f, 0xf6, 0x01, 0x90, 0xc7, 0x5d, 0xe9, 0x4d, 0x2e, 0x6c, 0xf5, 0xf7, 0x24, 0x1c, 0x6f, 0xba, - 0xcb, 0xef, 0x3d, 0xfe, 0x39, 0x80, 0x70, 0x1d, 0x53, 0xd7, 0xfd, 0xb3, 0x30, 0x58, 0x51, 0xcb, - 0x98, 0x98, 0xaa, 0x86, 0x99, 0xff, 0x41, 0xf9, 0xf5, 0x06, 0x42, 0xd0, 0x67, 0x2f, 0x98, 0x6b, - 0x41, 0x99, 0x3d, 0xa3, 0x22, 0xb4, 0x4f, 0x64, 0x64, 0x4a, 0xc1, 0xb0, 0xca, 0x2a, 0x65, 0xe6, - 0x8c, 0xcd, 0x2c, 0xf5, 0x73, 0x69, 0xae, 0x3d, 0x6b, 0x8c, 0x61, 0xc5, 0xc8, 0x63, 0x79, 0xcc, - 0x6a, 0xdb, 0x8b, 0x7f, 0xe3, 0x87, 0xa1, 0x16, 0x4d, 0xf4, 0x6f, 0x18, 0xd2, 0x58, 0x0e, 0xb3, - 0x63, 0x9d, 0x70, 0xff, 0xbd, 0xcf, 0xa2, 0x71, 0xfc, 0x96, 0x21, 0xa7, 0xb2, 0x8f, 0x42, 0xb7, - 0xe1, 0x88, 0xc5, 0xa3, 0xc4, 0x99, 0xbd, 0x7d, 0x96, 0x63, 0x7b, 0x46, 0xc9, 0x21, 0x87, 0x8c, - 0x71, 0x77, 0xbb, 0x3d, 0xdf, 0x6f, 0xdc, 0x5e, 0x5b, 0x5d, 0x0e, 0x1f, 0x47, 0x5d, 0x9e, 0x38, - 0x96, 0xba, 0xf4, 0x1f, 0x7b, 0x5d, 0xa2, 0x2c, 0xf4, 0x13, 0xaa, 0xd2, 0x2a, 0x09, 0x7f, 0xfa, - 0x31, 0x88, 0x79, 0xa7, 0x42, 0x33, 0xf3, 0x3d, 0xd3, 0x67, 0x18, 0x90, 0x9b, 0xbf, 0xec, 0x7d, - 0xb0, 0x07, 0x64, 0x87, 0x0b, 0x6d, 0xc0, 0x93, 0x16, 0x2e, 0x60, 0xcb, 0xd2, 0x2b, 0x45, 0x85, - 0xff, 0x2d, 0x90, 0x70, 0x80, 0xd1, 0x9f, 0xfd, 0x95, 0xc2, 0x2e, 0x30, 0xcf, 0x85, 0x26, 0x8c, - 0xef, 0x13, 0x74, 0x13, 0x86, 0xf3, 0xb8, 0x84, 0x29, 0xce, 0x2b, 0x5c, 0x86, 0xf3, 0x4d, 0xc6, - 0x60, 0x0f, 0x8c, 0x13, 0x0e, 0x5a, 0x76, 0xc0, 0x2e, 0xef, 0x7f, 0xe0, 0x64, 0x5e, 0x27, 0x6a, - 0xae, 0xd4, 0x8d, 0x18, 0xf6, 0x40, 0x7c, 0xc6, 0x85, 0x77, 0x30, 0xb7, 0x94, 0xfe, 0xa6, 0x2f, - 0x00, 0x04, 0x4f, 0xfc, 0x33, 0x00, 0x43, 0x5b, 0x3a, 0xe9, 0xb1, 0xdc, 0xff, 0x04, 0x47, 0x4a, - 0x6a, 0x0e, 0x97, 0x94, 0x82, 0x5e, 0xa2, 0xd8, 0x72, 0xca, 0x3e, 0xc4, 0xf6, 0xd6, 0xd8, 0x16, - 0x3a, 0x07, 0x47, 0x2d, 0x6c, 0x1a, 0x16, 0x55, 0x0a, 0x3a, 0x2e, 0xe5, 0x49, 0xd8, 0x1b, 0xf3, - 0x4e, 0x05, 0xe5, 0x11, 0xbe, 0xb9, 0xc6, 0xf6, 0xd0, 0x05, 0x78, 0xca, 0x51, 0xe2, 0x97, 0xe2, - 0xea, 0xfa, 0x98, 0x2e, 0xe2, 0x32, 0x7e, 0x85, 0x1c, 0x11, 0x7f, 0xe5, 0x87, 0x02, 0xb7, 0x93, - 0x17, 0xfb, 0x06, 0xc5, 0x65, 0x34, 0x01, 0xfd, 0x14, 0x57, 0xd4, 0x0a, 0x65, 0xd9, 0x17, 0x94, - 0x9d, 0xd5, 0x00, 0x3d, 0x4b, 0x80, 0xde, 0xaa, 0x9e, 0xe7, 0x6d, 0x53, 0xb6, 0x1f, 0x51, 0x0c, - 0x86, 0xf2, 0x98, 0x68, 0x96, 0xce, 0xe6, 0x8d, 0x70, 0x88, 0x7b, 0xda, 0xb2, 0x85, 0x22, 0x30, - 0xe0, 0x86, 0x39, 0x3c, 0x12, 0x03, 0x53, 0x01, 0xb9, 0xb9, 0x46, 0x77, 0xa0, 0x9f, 0x05, 0x85, - 0xbb, 0x14, 0x9a, 0x91, 0x7a, 0x4e, 0xdc, 0x4e, 0x27, 0xc5, 0x2d, 0xc6, 0x23, 0x55, 0xa8, 0x55, - 0x97, 0x1d, 0x52, 0x54, 0x82, 0xa1, 0x96, 0x11, 0xce, 0x49, 0x89, 0xcd, 0xc1, 0xcf, 0x48, 0xbd, - 0x26, 0xe3, 0x07, 0xb5, 0xd2, 0xa3, 0xcb, 0x10, 0x1a, 0x3b, 0x15, 0x6c, 0x31, 0x70, 0x38, 0xc8, - 0x0a, 0x3d, 0xd2, 0x71, 0xd8, 0x4d, 0x1d, 0xef, 0xb8, 0xd9, 0x17, 0x64, 0xda, 0xf6, 0x4e, 0x5b, - 0xb3, 0x1a, 0x3d, 0x8e, 0x66, 0x35, 0x76, 0xa4, 0x66, 0x95, 0x86, 0x81, 0x22, 0xa6, 0xac, 0xc7, - 0x38, 0x6d, 0x6f, 0xa0, 0x86, 0x25, 0x9f, 0x28, 0xf2, 0x05, 0xba, 0x05, 0xa1, 0x93, 0xc1, 0x04, - 0x53, 0xa7, 0x8b, 0x1c, 0xa5, 0x49, 0x05, 0x39, 0x5b, 0x06, 0xd3, 0xc8, 0x65, 0x18, 0x6a, 0xb9, - 0x7a, 0x3b, 0x43, 0xb7, 0x71, 0xdd, 0xc9, 0x66, 0xfb, 0x11, 0x9d, 0x82, 0xc3, 0x35, 0xb5, 0x54, - 0x75, 0x13, 0x99, 0x2f, 0x16, 0x3c, 0x97, 0x40, 0x64, 0x09, 0x0a, 0x9d, 0x37, 0xda, 0x0f, 0x7e, - 0xd3, 0x17, 0x18, 0x16, 0xfc, 0xf1, 0x0f, 0x00, 0x1c, 0x69, 0xcd, 0x14, 0x94, 0x86, 0xc3, 0x3a, - 0xc5, 0x65, 0x12, 0xe6, 0xcd, 0xf8, 0xf2, 0xc0, 0xf9, 0x26, 0x73, 0x1e, 0x74, 0x01, 0xfa, 0xf9, - 0xbb, 0x44, 0xd8, 0xc3, 0x18, 0xc3, 0x1d, 0x8c, 0x92, 0x2d, 0x64, 0x01, 0x77, 0xf4, 0xe2, 0xdb, - 0x70, 0x74, 0x95, 0xf5, 0xcc, 0xc1, 0xc7, 0x93, 0x29, 0x28, 0x14, 0x54, 0xbd, 0xa4, 0xe8, 0x85, - 0x66, 0x6f, 0x65, 0x75, 0x1f, 0x90, 0xc7, 0xec, 0xfd, 0x8d, 0x82, 0xdb, 0x33, 0xa7, 0x7f, 0x02, - 0xf0, 0x74, 0xd7, 0x49, 0x04, 0x45, 0xe0, 0xc4, 0xba, 0x94, 0x55, 0xe4, 0xcc, 0x75, 0x65, 0x2d, - 0x2d, 0x5f, 0x4d, 0x65, 0x95, 0x55, 0x69, 0x2d, 0x75, 0x63, 0x2b, 0x2b, 0x0c, 0xa1, 0x3f, 0xc0, - 0xc9, 0x0e, 0xd9, 0x5a, 0x5a, 0x56, 0x56, 0x64, 0x29, 0x95, 0x95, 0x04, 0x80, 0xa2, 0x30, 0xd2, - 0x45, 0x2c, 0x4b, 0xd7, 0xb7, 0x52, 0x2b, 0x92, 0xe0, 0x41, 0x93, 0xf0, 0x74, 0x87, 0x3c, 0x93, - 0x4d, 0x65, 0x6f, 0x64, 0x04, 0x2f, 0x3a, 0x03, 0x7f, 0xd7, 0x21, 0x92, 0xa5, 0xd4, 0xaa, 0xe0, - 0x43, 0xe7, 0x61, 0xec, 0x90, 0x60, 0x4d, 0x92, 0xe5, 0x8d, 0x6b, 0xeb, 0x4a, 0x7a, 0x79, 0x53, - 0x5a, 0xc9, 0x66, 0x84, 0xe1, 0x2e, 0x5a, 0xcb, 0x72, 0xfa, 0x9f, 0xd2, 0x35, 0xae, 0x2c, 0x5d, - 0x5b, 0x91, 0x32, 0x82, 0x7f, 0xe6, 0x4b, 0x08, 0xbd, 0xa9, 0xeb, 0x1b, 0xe8, 0x67, 0x00, 0xfd, - 0x7c, 0x22, 0x42, 0x03, 0x8e, 0x50, 0x91, 0x8b, 0x7d, 0xe3, 0x9c, 0x11, 0xf4, 0xad, 0xc6, 0xc3, - 0x70, 0xb2, 0x30, 0xbf, 0xab, 0x25, 0x08, 0xd6, 0xaa, 0x16, 0x2e, 0x63, 0x72, 0x37, 0x91, 0x53, - 0x89, 0xae, 0x25, 0xaa, 0x04, 0x5b, 0x7f, 0xad, 0x61, 0x92, 0xd0, 0x8d, 0x84, 0xc3, 0x94, 0xd8, - 0xb1, 0x74, 0x8a, 0xef, 0x7f, 0xf7, 0xc3, 0x87, 0x9e, 0x54, 0x7c, 0xd1, 0x79, 0xa9, 0x4e, 0x36, - 0x93, 0x80, 0x24, 0xef, 0xb9, 0xdd, 0x43, 0x6c, 0x6e, 0xee, 0x75, 0x7b, 0xdd, 0x23, 0x0b, 0x60, - 0x1a, 0xbd, 0x04, 0xd0, 0xbb, 0x8e, 0x29, 0x9a, 0xed, 0x6f, 0x58, 0xe5, 0x1e, 0xcf, 0x0d, 0x32, - 0xe1, 0xc6, 0xef, 0x3d, 0xfa, 0xca, 0x03, 0x1a, 0x0f, 0xc3, 0x7f, 0xeb, 0xee, 0x72, 0xd9, 0xa8, - 0xe8, 0xd4, 0x38, 0xe4, 0xb5, 0x85, 0xd5, 0x3c, 0x73, 0x7a, 0x11, 0x2d, 0x74, 0x73, 0xfa, 0x0d, - 0xbe, 0x72, 0x85, 0x3d, 0xf4, 0x23, 0x80, 0x3e, 0xbb, 0x3e, 0xd1, 0x5c, 0x9f, 0xe5, 0xcc, 0x3d, - 0x9e, 0x1f, 0xa8, 0x09, 0xc4, 0xe9, 0xd1, 0x5c, 0x9e, 0x47, 0xb3, 0x03, 0xb8, 0x8c, 0xde, 0xf5, - 0xc0, 0x13, 0xce, 0x2c, 0x8e, 0x06, 0x9d, 0xde, 0x23, 0x97, 0xfa, 0x07, 0x3a, 0x4e, 0xbf, 0x07, - 0x06, 0xcd, 0xeb, 0x7f, 0x45, 0xb6, 0x8e, 0x92, 0xd7, 0x1d, 0x9a, 0x7b, 0x76, 0x9e, 0x3f, 0x05, - 0xd0, 0xcf, 0x5b, 0x69, 0x1f, 0xf5, 0xdd, 0xd6, 0x7b, 0x23, 0x13, 0x22, 0xff, 0x68, 0x24, 0xba, - 0x1f, 0x8d, 0x44, 0xa9, 0x6c, 0xd2, 0x7a, 0x7c, 0x77, 0x50, 0x37, 0xaf, 0x4c, 0x1f, 0x21, 0x93, - 0x17, 0xc0, 0x74, 0x64, 0xf7, 0xc1, 0x3e, 0xf0, 0x3c, 0xdd, 0x07, 0x3d, 0x3b, 0xc4, 0xff, 0x7b, - 0x9f, 0xed, 0x03, 0xd0, 0xd8, 0x07, 0x73, 0x83, 0xfc, 0x6f, 0xdf, 0xff, 0x36, 0xec, 0x11, 0xc0, - 0xf2, 0x27, 0xe0, 0xf1, 0xd2, 0xf0, 0x8a, 0x7c, 0x63, 0x75, 0xeb, 0xc9, 0xf3, 0xe8, 0xd0, 0xb3, - 0xe7, 0xd1, 0xa1, 0x57, 0xcf, 0xa3, 0xe0, 0xed, 0x46, 0x14, 0x7c, 0xd1, 0x88, 0x82, 0x47, 0x8d, - 0x28, 0x78, 0xd2, 0x88, 0x82, 0xef, 0x1b, 0x51, 0xf0, 0xa2, 0x11, 0x1d, 0x7a, 0xd5, 0x88, 0x82, - 0xf7, 0x0f, 0xa2, 0x43, 0x0f, 0x0e, 0xa2, 0xe0, 0xc9, 0x41, 0x74, 0xe8, 0xd9, 0x41, 0x74, 0xe8, - 0xf6, 0x9d, 0xa2, 0x61, 0x6e, 0x17, 0xc5, 0x9a, 0x61, 0xcf, 0xd1, 0x96, 0x2a, 0x56, 0x49, 0x92, - 0x3d, 0xd8, 0xaf, 0x9c, 0x09, 0xd3, 0x32, 0x6a, 0x7a, 0x1e, 0x5b, 0x09, 0x57, 0x9c, 0x34, 0x73, - 0x45, 0x23, 0x89, 0x77, 0xa9, 0xf3, 0x3d, 0xea, 0x4d, 0xdf, 0xb2, 0x72, 0x7e, 0x76, 0x4b, 0xb3, - 0xbf, 0x04, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x33, 0x6b, 0x24, 0x9e, 0x14, 0x00, 0x00, + 0x99, 0x28, 0x04, 0x14, 0x06, 0x7a, 0xea, 0xa1, 0x2d, 0xf2, 0x81, 0x20, 0x30, 0x90, 0x5c, 0x02, + 0xfb, 0x4f, 0x48, 0xa0, 0x8b, 0x73, 0x8a, 0xe1, 0x43, 0x60, 0x24, 0x39, 0xf8, 0x18, 0x53, 0x39, + 0xf8, 0x12, 0xc0, 0xc9, 0x5f, 0x10, 0xec, 0xcc, 0x2e, 0x4d, 0x52, 0x8c, 0x4d, 0x52, 0xf2, 0x49, + 0xbb, 0xf3, 0xde, 0xef, 0x37, 0x6f, 0x7e, 0xf3, 0xde, 0xd3, 0x5b, 0xc2, 0xc5, 0x1a, 0x26, 0xa2, + 0x6e, 0x24, 0x89, 0x76, 0x07, 0x97, 0xd5, 0x64, 0x4d, 0xc7, 0xbb, 0x24, 0x59, 0xc1, 0x74, 0xd7, + 0xb0, 0x76, 0x14, 0xd3, 0x28, 0xe9, 0x5a, 0x5d, 0xb1, 0x17, 0x93, 0x66, 0x35, 0x57, 0xd2, 0x35, + 0x45, 0xb3, 0xaa, 0x79, 0xd5, 0xd4, 0x45, 0xd3, 0x32, 0xa8, 0x81, 0x7e, 0xc7, 0xd1, 0x22, 0x47, + 0x8b, 0x0c, 0x2d, 0x76, 0x41, 0x47, 0x12, 0x45, 0x9d, 0xde, 0xa9, 0xe6, 0x44, 0xcd, 0x28, 0x27, + 0x8b, 0x46, 0xd1, 0x48, 0x32, 0x7c, 0xae, 0x5a, 0x60, 0x6f, 0xec, 0x85, 0x3d, 0x71, 0xde, 0xc8, + 0xd9, 0xa2, 0x61, 0x14, 0x4b, 0x38, 0xa9, 0x9a, 0x7a, 0x52, 0xad, 0x54, 0x0c, 0xaa, 0x52, 0xdd, + 0xa8, 0x10, 0xc7, 0xfa, 0x4b, 0xc7, 0xda, 0xe4, 0xc0, 0x65, 0x93, 0xd6, 0x1d, 0x63, 0xa4, 0xfd, + 0x40, 0xd8, 0xb2, 0x0c, 0xab, 0x09, 0x6c, 0xb7, 0x19, 0x66, 0x2b, 0xeb, 0x64, 0xbb, 0x91, 0xd6, + 0x4d, 0xec, 0x9a, 0xe2, 0x1d, 0x22, 0x61, 0x82, 0x2b, 0xb5, 0x0e, 0x78, 0xec, 0xb0, 0x90, 0x4a, + 0xbb, 0xc7, 0x5c, 0xaf, 0x52, 0x1b, 0xb9, 0xbf, 0x63, 0x8d, 0x3a, 0xa8, 0xd9, 0x5e, 0x51, 0xad, + 0x01, 0xff, 0xba, 0x1b, 0xa8, 0xc5, 0x21, 0xfe, 0x19, 0x80, 0xa3, 0x2b, 0x16, 0x56, 0x29, 0x96, + 0xf1, 0x3f, 0xaa, 0x98, 0x50, 0x74, 0x05, 0x06, 0xca, 0x98, 0xaa, 0x79, 0x95, 0xaa, 0x61, 0x10, + 0x03, 0x53, 0xa1, 0x99, 0x73, 0x62, 0xfb, 0xed, 0xa6, 0x59, 0x58, 0x1c, 0xb5, 0x8d, 0xa9, 0x9a, + 0xad, 0x9b, 0x58, 0x6e, 0x82, 0xd0, 0xdf, 0xa0, 0x8f, 0x98, 0x58, 0x0b, 0x7b, 0x18, 0xf8, 0xa2, + 0xd8, 0x63, 0x6a, 0x88, 0x9c, 0x30, 0x63, 0x62, 0xcd, 0x26, 0x5c, 0x1e, 0xff, 0x70, 0x6f, 0xc4, + 0xe6, 0x11, 0x8b, 0x9a, 0x62, 0xff, 0x95, 0x19, 0xeb, 0x42, 0xf0, 0xc9, 0x92, 0x9f, 0x07, 0x10, + 0xff, 0xb7, 0x07, 0x8e, 0xb9, 0xb1, 0x13, 0xd3, 0xa8, 0x10, 0x8c, 0x16, 0x0f, 0x05, 0x1f, 0xeb, + 0x1a, 0xfc, 0x3a, 0xa6, 0x5d, 0x22, 0x4f, 0xc3, 0x71, 0x52, 0x27, 0x14, 0x97, 0x95, 0x26, 0x89, + 0x97, 0x91, 0xfc, 0xb6, 0x83, 0x24, 0xc3, 0xbc, 0x0e, 0x53, 0x8d, 0x71, 0xf8, 0xb6, 0x4b, 0x78, + 0xb3, 0x4d, 0x8a, 0xb9, 0x9e, 0xa5, 0x58, 0xc7, 0xb4, 0x0f, 0x1d, 0xbe, 0x07, 0x70, 0x4c, 0xc6, + 0x66, 0x49, 0xd5, 0x9a, 0x97, 0xf8, 0xc7, 0x43, 0x3a, 0x9c, 0xef, 0xaa, 0x83, 0x03, 0xeb, 0xa2, + 0xc5, 0xed, 0xb6, 0xd0, 0x2f, 0xf5, 0x1c, 0xba, 0xc3, 0xf8, 0x86, 0xf0, 0x51, 0x12, 0x0a, 0x16, + 0x26, 0x46, 0xd5, 0xd2, 0xb0, 0x52, 0xc3, 0x16, 0xd1, 0x8d, 0x0a, 0xd3, 0x3a, 0xb8, 0xec, 0x7b, + 0xb1, 0x0f, 0x80, 0x3c, 0xee, 0x5a, 0x6f, 0x70, 0x63, 0xeb, 0x79, 0x4f, 0xc2, 0xf1, 0xe6, 0x71, + 0xf9, 0xbd, 0xc7, 0x1f, 0x00, 0x08, 0xd7, 0x31, 0x75, 0x8f, 0x7f, 0x16, 0x06, 0x2b, 0x6a, 0x19, + 0x13, 0x53, 0xd5, 0x30, 0x3b, 0x7f, 0x50, 0x7e, 0xb5, 0x80, 0x10, 0xf4, 0xd9, 0x2f, 0xec, 0x68, + 0x41, 0x99, 0x3d, 0xa3, 0x22, 0xb4, 0x77, 0x64, 0x64, 0x4a, 0xc1, 0xb0, 0xca, 0x2a, 0x65, 0xe1, + 0x8c, 0xcd, 0x2c, 0xf5, 0x73, 0x69, 0x6e, 0x3c, 0x6b, 0x8c, 0x61, 0xc5, 0xc8, 0x63, 0x79, 0xcc, + 0x6a, 0x5b, 0x8b, 0x7f, 0xee, 0x87, 0xa1, 0x16, 0x4f, 0xf4, 0x17, 0x18, 0xd2, 0x58, 0x0e, 0xb3, + 0x6d, 0x1d, 0xb9, 0xff, 0xd0, 0x67, 0xd1, 0x38, 0xe7, 0x96, 0x21, 0xa7, 0xb2, 0xb7, 0x42, 0xb7, + 0xe0, 0x88, 0xc5, 0x55, 0xe2, 0xcc, 0xde, 0x3e, 0xcb, 0xb1, 0x3d, 0xa3, 0xe4, 0x90, 0x43, 0xc6, + 0xb8, 0xbb, 0xdd, 0x9e, 0xef, 0x35, 0xb7, 0xd7, 0x56, 0x97, 0xc3, 0xc7, 0x51, 0x97, 0x27, 0x8e, + 0xa5, 0x2e, 0xfd, 0xc7, 0x5e, 0x97, 0x28, 0x0b, 0xfd, 0x84, 0xaa, 0xb4, 0x4a, 0xc2, 0x1f, 0xdf, + 0x07, 0x31, 0xef, 0x54, 0x68, 0x66, 0xbe, 0x67, 0xfa, 0x0c, 0x03, 0xf2, 0xf0, 0x97, 0xbd, 0x8f, + 0xf6, 0x80, 0xec, 0x70, 0xa1, 0x0d, 0x78, 0xd2, 0xc2, 0x05, 0x6c, 0x59, 0x7a, 0xa5, 0xa8, 0xf0, + 0x7f, 0x0b, 0x24, 0x1c, 0x60, 0xf4, 0x67, 0x7f, 0xa6, 0xb0, 0x0b, 0xec, 0xe4, 0x42, 0x13, 0xc6, + 0xd7, 0x09, 0xba, 0x01, 0xc3, 0x79, 0x5c, 0xc2, 0x14, 0xe7, 0x15, 0x6e, 0xc3, 0xf9, 0x26, 0x63, + 0xb0, 0x07, 0xc6, 0x09, 0x07, 0x2d, 0x3b, 0x60, 0x97, 0xf7, 0xaf, 0x70, 0x32, 0xaf, 0x13, 0x35, + 0x57, 0xea, 0x46, 0x0c, 0x7b, 0x20, 0x3e, 0xe3, 0xc2, 0x3b, 0x98, 0x5b, 0x4a, 0x7f, 0xd3, 0x17, + 0x00, 0x82, 0x27, 0xfe, 0x09, 0x80, 0xa1, 0x2d, 0x9d, 0xf4, 0x58, 0xee, 0xbf, 0x81, 0x23, 0x25, + 0x35, 0x87, 0x4b, 0x4a, 0x41, 0x2f, 0x51, 0x6c, 0x39, 0x65, 0x1f, 0x62, 0x6b, 0x6b, 0x6c, 0x09, + 0x9d, 0x83, 0xa3, 0x16, 0x36, 0x0d, 0x8b, 0x2a, 0x05, 0x1d, 0x97, 0xf2, 0x24, 0xec, 0x8d, 0x79, + 0xa7, 0x82, 0xf2, 0x08, 0x5f, 0x5c, 0x63, 0x6b, 0xe8, 0x02, 0x3c, 0xe5, 0x38, 0xf1, 0x4b, 0x71, + 0x7d, 0x7d, 0xcc, 0x17, 0x71, 0x1b, 0xbf, 0x42, 0x8e, 0x88, 0xbf, 0xf4, 0x43, 0x81, 0xc7, 0xc9, + 0x8b, 0x7d, 0x83, 0xe2, 0x32, 0x9a, 0x80, 0x7e, 0x8a, 0x2b, 0x6a, 0x85, 0xb2, 0xec, 0x0b, 0xca, + 0xce, 0xdb, 0x00, 0x3d, 0x4b, 0x80, 0xde, 0xaa, 0x9e, 0xe7, 0x6d, 0x53, 0xb6, 0x1f, 0x51, 0x0c, + 0x86, 0xf2, 0x98, 0x68, 0x96, 0xce, 0xe6, 0x8d, 0x70, 0x88, 0x9f, 0xb4, 0x65, 0x09, 0x45, 0x60, + 0xc0, 0x95, 0x39, 0x3c, 0x12, 0x03, 0x53, 0x01, 0xb9, 0xf9, 0x8e, 0x6e, 0x43, 0x3f, 0x13, 0x85, + 0x1f, 0x29, 0x34, 0x23, 0xf5, 0x9c, 0xb8, 0x9d, 0x87, 0x14, 0xb7, 0x18, 0x8f, 0x54, 0xa1, 0x56, + 0x5d, 0x76, 0x48, 0x51, 0x09, 0x86, 0x5a, 0x46, 0x38, 0x27, 0x25, 0x36, 0x07, 0xdf, 0x23, 0xf5, + 0x8a, 0x8c, 0x6f, 0xd4, 0x4a, 0x8f, 0x2e, 0x43, 0x68, 0xec, 0x56, 0xb0, 0xc5, 0xc0, 0xe1, 0x20, + 0x2b, 0xf4, 0x48, 0xc7, 0x66, 0x37, 0x74, 0xbc, 0xeb, 0x66, 0x5f, 0x90, 0x79, 0xdb, 0x2b, 0x6d, + 0xcd, 0x6a, 0xf4, 0x38, 0x9a, 0xd5, 0xd8, 0x91, 0x9a, 0x55, 0x1a, 0x06, 0x8a, 0x98, 0xb2, 0x1e, + 0xe3, 0xb4, 0xbd, 0x81, 0x1a, 0x96, 0x7c, 0xa2, 0xc8, 0x5f, 0xd0, 0x4d, 0x08, 0x9d, 0x0c, 0x26, + 0x98, 0x3a, 0x5d, 0xe4, 0x28, 0x4d, 0x2a, 0xc8, 0xd9, 0x32, 0x98, 0x46, 0x2e, 0xc3, 0x50, 0xcb, + 0xd5, 0xdb, 0x19, 0xba, 0x83, 0xeb, 0x4e, 0x36, 0xdb, 0x8f, 0xe8, 0x14, 0x1c, 0xae, 0xa9, 0xa5, + 0xaa, 0x9b, 0xc8, 0xfc, 0x65, 0xc1, 0x73, 0x09, 0x44, 0x96, 0xa0, 0xd0, 0x79, 0xa3, 0xfd, 0xe0, + 0x37, 0x7d, 0x81, 0x61, 0xc1, 0x1f, 0xff, 0x3f, 0x80, 0x23, 0xad, 0x99, 0x82, 0xd2, 0x70, 0x58, + 0xa7, 0xb8, 0x4c, 0xc2, 0xbc, 0x19, 0x5f, 0x1e, 0x38, 0xdf, 0x64, 0xce, 0x83, 0x2e, 0x40, 0x3f, + 0xff, 0x96, 0x08, 0x7b, 0x18, 0x63, 0xb8, 0x83, 0x51, 0xb2, 0x8d, 0x4c, 0x70, 0xc7, 0x2f, 0xbe, + 0x03, 0x47, 0x57, 0x59, 0xcf, 0x1c, 0x7c, 0x3c, 0x99, 0x82, 0x42, 0x41, 0xd5, 0x4b, 0x8a, 0x5e, + 0x68, 0xf6, 0x56, 0x56, 0xf7, 0x01, 0x79, 0xcc, 0x5e, 0xdf, 0x28, 0xb8, 0x3d, 0x73, 0xfa, 0x47, + 0x00, 0x4f, 0x77, 0x9d, 0x44, 0x50, 0x04, 0x4e, 0xac, 0x4b, 0x59, 0x45, 0xce, 0x5c, 0x53, 0xd6, + 0xd2, 0xf2, 0x76, 0x2a, 0xab, 0xac, 0x4a, 0x6b, 0xa9, 0xeb, 0x5b, 0x59, 0x61, 0x08, 0xfd, 0x0a, + 0x4e, 0x76, 0xd8, 0xd6, 0xd2, 0xb2, 0xb2, 0x22, 0x4b, 0xa9, 0xac, 0x24, 0x00, 0x14, 0x85, 0x91, + 0x2e, 0x66, 0x59, 0xba, 0xb6, 0x95, 0x5a, 0x91, 0x04, 0x0f, 0x9a, 0x84, 0xa7, 0x3b, 0xec, 0x99, + 0x6c, 0x2a, 0x7b, 0x3d, 0x23, 0x78, 0xd1, 0x19, 0xf8, 0x8b, 0x0e, 0x93, 0x2c, 0xa5, 0x56, 0x05, + 0x1f, 0x3a, 0x0f, 0x63, 0x87, 0x0c, 0x6b, 0x92, 0x2c, 0x6f, 0x5c, 0x5d, 0x57, 0xd2, 0xcb, 0x9b, + 0xd2, 0x4a, 0x36, 0x23, 0x0c, 0x77, 0xf1, 0x5a, 0x96, 0xd3, 0x7f, 0x92, 0xae, 0x72, 0x67, 0xe9, + 0xea, 0x8a, 0x94, 0x11, 0xfc, 0x33, 0xdf, 0x84, 0xa0, 0x37, 0x75, 0x6d, 0x03, 0xbd, 0xeb, 0x81, + 0x7e, 0x3e, 0x11, 0xa1, 0x01, 0x47, 0xa8, 0xc8, 0xc5, 0xbe, 0x71, 0xce, 0x08, 0xfa, 0x01, 0x68, + 0x7c, 0x11, 0xde, 0x2e, 0xcc, 0xdf, 0xd5, 0x12, 0x04, 0x6b, 0x55, 0x0b, 0x97, 0x31, 0xb9, 0x93, + 0xc8, 0xa9, 0x44, 0xd7, 0x12, 0x55, 0x82, 0xad, 0xdf, 0x77, 0x9a, 0x08, 0x55, 0x2b, 0x79, 0xd5, + 0xca, 0x73, 0x6b, 0x0d, 0x93, 0x84, 0x6e, 0x24, 0x9c, 0x8d, 0x12, 0xbb, 0x96, 0x4e, 0xf1, 0xbd, + 0xaf, 0xbf, 0x7b, 0xc7, 0x93, 0x8a, 0x2f, 0x3a, 0xdf, 0xdc, 0xc9, 0x66, 0x8e, 0x90, 0xe4, 0x3f, + 0xdd, 0xe6, 0x22, 0x36, 0x17, 0xf7, 0xba, 0x7d, 0x0d, 0x92, 0x05, 0x30, 0x8d, 0xfe, 0xeb, 0x81, + 0xde, 0x75, 0x4c, 0xd1, 0x6c, 0x7f, 0xb3, 0x2c, 0x17, 0x64, 0x6e, 0x90, 0x01, 0x38, 0x7e, 0x1f, + 0x3c, 0xfe, 0xd4, 0x63, 0x2b, 0x22, 0x77, 0x57, 0xa4, 0x6c, 0x54, 0x74, 0x6a, 0xbc, 0x46, 0x14, + 0xd7, 0xa1, 0x43, 0x17, 0x0b, 0xab, 0x79, 0x26, 0xcb, 0x22, 0x5a, 0xe8, 0x26, 0xcb, 0x1b, 0xd4, + 0xe0, 0x0e, 0x7b, 0xe8, 0x3f, 0x1e, 0xe8, 0xb3, 0x0b, 0x1c, 0xcd, 0xf5, 0xd9, 0x0f, 0xb8, 0x26, + 0xf3, 0x03, 0x75, 0x91, 0xf8, 0x7b, 0x6f, 0x5b, 0x94, 0x79, 0x34, 0x3b, 0x80, 0x28, 0xe8, 0x81, + 0x07, 0x9e, 0x70, 0xc6, 0x7d, 0x34, 0xe8, 0x07, 0x42, 0xe4, 0x52, 0xff, 0x40, 0x47, 0x96, 0x87, + 0x6f, 0xa9, 0x72, 0xfe, 0x1c, 0xd9, 0x3a, 0x4a, 0xe5, 0x74, 0x78, 0xee, 0xd9, 0x95, 0xf4, 0x03, + 0x80, 0x7e, 0xde, 0xcb, 0xfb, 0x68, 0x30, 0x6d, 0xcd, 0x3f, 0x32, 0x21, 0xf2, 0x5f, 0xad, 0x44, + 0xf7, 0x57, 0x2b, 0x51, 0x2a, 0x9b, 0xb4, 0x1e, 0x7f, 0xff, 0x2d, 0xa9, 0x70, 0x65, 0xfa, 0x08, + 0x85, 0xb2, 0x00, 0xa6, 0x23, 0x77, 0x1f, 0xed, 0x03, 0xcf, 0x57, 0xfb, 0xa0, 0xe7, 0xf3, 0xf2, + 0xd9, 0xe0, 0xd9, 0x3e, 0x00, 0x8d, 0x7d, 0x30, 0x37, 0xc8, 0x5c, 0x71, 0xef, 0xcb, 0xb0, 0x47, + 0x00, 0xcb, 0x1f, 0x81, 0x27, 0x4b, 0xc3, 0x2b, 0xf2, 0xf5, 0xd5, 0xad, 0xa7, 0xcf, 0xa3, 0x43, + 0xcf, 0x9e, 0x47, 0x87, 0x5e, 0x3e, 0x8f, 0x82, 0x7f, 0x35, 0xa2, 0xe0, 0x61, 0x23, 0x0a, 0x1e, + 0x37, 0xa2, 0xe0, 0x69, 0x23, 0x0a, 0xbe, 0x6d, 0x44, 0xc1, 0x8b, 0x46, 0x74, 0xe8, 0x65, 0x23, + 0x0a, 0xfe, 0x77, 0x10, 0x1d, 0x7a, 0x74, 0x10, 0x05, 0x4f, 0x0f, 0xa2, 0x43, 0xcf, 0x0e, 0xa2, + 0x43, 0xb7, 0x6e, 0x17, 0x0d, 0x73, 0xa7, 0x28, 0xd6, 0x0c, 0x7b, 0xce, 0xb7, 0x54, 0xb1, 0x4a, + 0x92, 0xec, 0xc1, 0xfe, 0x24, 0x4e, 0x98, 0x96, 0x51, 0xd3, 0xf3, 0xd8, 0x4a, 0xb8, 0xe6, 0xa4, + 0x99, 0x2b, 0x1a, 0x49, 0x7c, 0x97, 0x3a, 0xbf, 0x97, 0xbd, 0xe9, 0xb7, 0xb6, 0x9c, 0x9f, 0x5d, + 0xe2, 0xec, 0x4f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1e, 0x26, 0xea, 0x72, 0x3e, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/network_policy_view/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/network_policy_view/public_crudapi.vesapi.go index c026ffb66..54ed623ea 100644 --- a/pbgo/extschema/schema/views/network_policy_view/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/network_policy_view/public_crudapi.vesapi.go @@ -3118,10 +3118,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3178,10 +3182,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3240,10 +3248,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/network_policy_view/public_custom_data_api.pb.go b/pbgo/extschema/schema/views/network_policy_view/public_custom_data_api.pb.go index 85520c9a7..6640bf04d 100644 --- a/pbgo/extschema/schema/views/network_policy_view/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/views/network_policy_view/public_custom_data_api.pb.go @@ -546,62 +546,63 @@ func init() { } var fileDescriptor_8c7bf185f5ba0ef9 = []byte{ - // 879 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x41, 0x6f, 0xdc, 0x44, - 0x14, 0xde, 0xf1, 0x6e, 0xb6, 0xd9, 0x59, 0x0a, 0xcb, 0x80, 0x90, 0xbb, 0x44, 0x43, 0xb4, 0x12, - 0x22, 0x54, 0xb5, 0x2d, 0x2d, 0x42, 0x48, 0x55, 0x2e, 0x9b, 0x34, 0xc0, 0x4a, 0x69, 0x12, 0xb9, - 0x01, 0x04, 0x2a, 0xb2, 0xc6, 0xf6, 0xc4, 0x99, 0xd6, 0xf6, 0x0c, 0x9e, 0xf1, 0xb6, 0x11, 0x20, - 0xa1, 0x5e, 0xb9, 0x20, 0x21, 0x44, 0x8e, 0x1c, 0xf9, 0x09, 0x88, 0x0a, 0x29, 0x37, 0x7a, 0x42, - 0x11, 0x5c, 0x7a, 0x24, 0x1b, 0x0e, 0xe5, 0x96, 0x03, 0x3f, 0x00, 0xed, 0xd8, 0x49, 0xb3, 0x9b, - 0x15, 0xad, 0x1a, 0x6e, 0xef, 0xcd, 0xf7, 0xfc, 0xcd, 0xfb, 0xde, 0x7b, 0x9e, 0x07, 0xaf, 0x0d, - 0xa8, 0xb4, 0x19, 0x77, 0x64, 0xb0, 0x4d, 0x13, 0xe2, 0x0c, 0x18, 0xbd, 0x23, 0x9d, 0x94, 0xaa, - 0x3b, 0x3c, 0xbb, 0xed, 0x09, 0x1e, 0xb3, 0x60, 0xc7, 0x1b, 0x1d, 0x3a, 0x22, 0xf7, 0x63, 0x16, - 0x78, 0x41, 0x2e, 0x15, 0x4f, 0xbc, 0x90, 0x28, 0xe2, 0x11, 0xc1, 0x6c, 0x91, 0x71, 0xc5, 0xd1, - 0x1b, 0x05, 0x8b, 0x5d, 0xb0, 0xd8, 0x9a, 0xc5, 0x9e, 0xc2, 0xd2, 0xb6, 0x22, 0xa6, 0xb6, 0x73, - 0xdf, 0x0e, 0x78, 0xe2, 0x44, 0x3c, 0xe2, 0x8e, 0xfe, 0xde, 0xcf, 0xb7, 0xb4, 0xa7, 0x1d, 0x6d, - 0x15, 0xbc, 0xed, 0xb9, 0x88, 0xf3, 0x28, 0xa6, 0x0e, 0x11, 0xcc, 0x21, 0x69, 0xca, 0x15, 0x51, - 0x8c, 0xa7, 0xb2, 0x44, 0x5f, 0x1d, 0xcf, 0x9d, 0x8b, 0xd3, 0xe0, 0xa5, 0x71, 0x50, 0xed, 0x08, - 0x7a, 0x0c, 0xcd, 0x4d, 0x68, 0x26, 0x31, 0x0b, 0x89, 0xa2, 0x25, 0xda, 0x99, 0x40, 0xa9, 0xa4, - 0xe9, 0x60, 0x9c, 0xbc, 0xf3, 0x8f, 0x01, 0xcd, 0xb5, 0x42, 0xde, 0x86, 0x56, 0xf7, 0x3e, 0x53, - 0xd2, 0xa5, 0x9f, 0xe5, 0x54, 0x2a, 0x34, 0x07, 0x1b, 0x29, 0x49, 0xa8, 0x14, 0x24, 0xa0, 0x26, - 0x98, 0x07, 0x0b, 0x0d, 0xf7, 0xf1, 0x01, 0xba, 0x05, 0x9f, 0x8b, 0x89, 0x4f, 0x63, 0x6f, 0x8b, - 0xc5, 0x8a, 0x66, 0xa6, 0x31, 0x5f, 0x5d, 0x68, 0x76, 0xdf, 0xb3, 0x9f, 0xb2, 0x82, 0xf6, 0xd8, - 0xb5, 0xd7, 0xa9, 0xca, 0x58, 0xb0, 0x3a, 0xe2, 0x7b, 0x57, 0xd3, 0xb9, 0xcd, 0xf8, 0xb1, 0x83, - 0x6e, 0xc2, 0xd9, 0x28, 0xe3, 0xb9, 0xf0, 0xfc, 0x1d, 0xb3, 0x3a, 0x5f, 0x5d, 0x78, 0xbe, 0xdb, - 0x3b, 0xf7, 0x3d, 0xee, 0x05, 0x4d, 0xb9, 0xb4, 0x83, 0xde, 0x84, 0x50, 0x2a, 0x92, 0x29, 0x4f, - 0xb1, 0x84, 0x9a, 0xb5, 0x91, 0xd0, 0x25, 0xf8, 0xf3, 0xdf, 0x7b, 0xd5, 0x99, 0xac, 0xba, 0x5b, - 0x03, 0x6e, 0x43, 0xa3, 0x9b, 0x2c, 0xa1, 0xe8, 0x75, 0x38, 0x4b, 0xd3, 0xb0, 0x08, 0x9c, 0x39, - 0x13, 0x78, 0x81, 0xa6, 0xa1, 0x0e, 0xc3, 0xb0, 0x26, 0x15, 0x15, 0x66, 0x7d, 0x2c, 0xe4, 0x87, - 0x1a, 0x70, 0xf5, 0x79, 0xe7, 0x17, 0x00, 0xf1, 0x7f, 0xeb, 0x47, 0x1f, 0xc1, 0x19, 0x5d, 0x01, - 0x5d, 0xf8, 0xff, 0x45, 0x6f, 0xc1, 0x87, 0xae, 0x40, 0x83, 0x0b, 0xd3, 0xd0, 0xac, 0x73, 0x13, - 0xac, 0xa7, 0xc2, 0xd7, 0x85, 0x6b, 0x70, 0x81, 0x5e, 0x86, 0x33, 0x03, 0x12, 0xe7, 0xd4, 0xac, - 0xea, 0xfe, 0x17, 0x4e, 0x67, 0x17, 0xc0, 0x97, 0xce, 0x8c, 0x4d, 0x3f, 0x7c, 0xc2, 0xc4, 0xbc, - 0x02, 0xeb, 0x45, 0xa2, 0xfa, 0xf6, 0x86, 0x5b, 0x7a, 0xe8, 0x35, 0xd8, 0x2c, 0x05, 0x64, 0x79, - 0x7c, 0x7c, 0x13, 0x2c, 0x8e, 0xdc, 0x3c, 0xd6, 0x1f, 0x92, 0x60, 0x34, 0xb6, 0x45, 0x73, 0xdc, - 0xd2, 0x43, 0x08, 0xd6, 0x24, 0x53, 0x65, 0x27, 0x5c, 0x6d, 0x77, 0xbe, 0x03, 0xf0, 0xc5, 0x33, - 0xa9, 0xa1, 0x55, 0x68, 0xb0, 0x50, 0x67, 0xd4, 0xec, 0x2e, 0x3e, 0x5b, 0x29, 0x0b, 0x89, 0xae, - 0xc1, 0x42, 0xd4, 0x85, 0xf5, 0x44, 0x57, 0xaa, 0x1c, 0xfa, 0xf6, 0xd4, 0x32, 0x7e, 0x38, 0x2a, - 0x95, 0x5b, 0x46, 0x76, 0xbe, 0x06, 0xf0, 0xd2, 0x94, 0x3f, 0x4d, 0x0a, 0x9e, 0x4a, 0x8a, 0xd6, - 0x60, 0x6d, 0xf4, 0x12, 0x99, 0x40, 0xf3, 0x5d, 0x7d, 0xf6, 0x0c, 0x5d, 0xcd, 0x73, 0x32, 0x80, - 0xc6, 0xd8, 0x00, 0x1e, 0x19, 0xe5, 0x00, 0x5e, 0xbe, 0x39, 0xf1, 0xdb, 0x9f, 0x6a, 0x3c, 0xba, - 0x08, 0x1b, 0x6b, 0xbd, 0xeb, 0x2b, 0x37, 0x36, 0x7a, 0xcb, 0x2b, 0xad, 0x0a, 0x82, 0xb0, 0xbe, - 0xb1, 0xbe, 0xda, 0x5f, 0xfe, 0xb8, 0x05, 0xd0, 0x0b, 0xb0, 0x59, 0xd8, 0x9e, 0xfb, 0xc1, 0xea, - 0x4a, 0xcb, 0x18, 0x81, 0xbd, 0xe5, 0xcd, 0xfe, 0xfa, 0x5a, 0xab, 0x8a, 0x66, 0x61, 0xed, 0x46, - 0x7f, 0x73, 0xa5, 0x55, 0xeb, 0x3e, 0x32, 0xe0, 0xc5, 0x65, 0xfd, 0xbe, 0x5e, 0x23, 0x8a, 0xf4, - 0x36, 0xfa, 0x68, 0xd7, 0x98, 0xd6, 0x95, 0xde, 0x39, 0x74, 0x16, 0x6f, 0x54, 0x7b, 0xe9, 0x3c, - 0x14, 0x45, 0xf1, 0x3b, 0x5f, 0x3c, 0xf8, 0xc9, 0x00, 0xc3, 0x5f, 0xcd, 0xee, 0xd6, 0xdb, 0x77, - 0x03, 0x4b, 0xd2, 0x20, 0xcf, 0x68, 0x42, 0xe5, 0xb6, 0xe5, 0x13, 0xc9, 0x02, 0x2b, 0xe1, 0x29, - 0x53, 0x3c, 0xbb, 0x32, 0x3f, 0xa0, 0xd2, 0x62, 0xdc, 0x2a, 0xc9, 0xad, 0x8c, 0x92, 0xf0, 0xde, - 0x1f, 0x7f, 0x7d, 0x6b, 0x2c, 0x76, 0xde, 0x29, 0xb7, 0x8a, 0x73, 0x32, 0xec, 0xd2, 0xf9, 0xfc, - 0xc4, 0xfe, 0x72, 0xea, 0x1e, 0xda, 0x66, 0x4a, 0x5e, 0x05, 0x97, 0xdb, 0x8b, 0x7b, 0xf7, 0x41, - 0xf5, 0xf7, 0xfb, 0xe0, 0xa9, 0x85, 0xac, 0xfb, 0xb7, 0x68, 0xa0, 0xee, 0xfd, 0x66, 0x1a, 0x26, - 0x58, 0xfa, 0x1e, 0xec, 0x1f, 0xe0, 0xca, 0xc3, 0x03, 0x5c, 0x39, 0x3a, 0xc0, 0xe0, 0xab, 0x21, - 0x06, 0x3f, 0x0e, 0x31, 0x78, 0x30, 0xc4, 0x60, 0x7f, 0x88, 0xc1, 0x9f, 0x43, 0x0c, 0x1e, 0x0d, - 0x71, 0xe5, 0x68, 0x88, 0xc1, 0x37, 0x87, 0xb8, 0xb2, 0x77, 0x88, 0xc1, 0xfe, 0x21, 0xae, 0x3c, - 0x3c, 0xc4, 0x95, 0x4f, 0x3e, 0x8d, 0xb8, 0xb8, 0x1d, 0xd9, 0x03, 0x3e, 0x7a, 0x6f, 0x32, 0x62, - 0xe7, 0xd2, 0xd1, 0xc6, 0x16, 0xcf, 0x12, 0x4b, 0x64, 0x7c, 0xc0, 0x42, 0x9a, 0x59, 0xc7, 0xb0, - 0x23, 0xfc, 0x88, 0x3b, 0xf4, 0xae, 0x2a, 0xd7, 0xc9, 0x93, 0xf6, 0xac, 0x5f, 0xd7, 0x1b, 0xe6, - 0xad, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xda, 0xd9, 0xec, 0x09, 0x99, 0x07, 0x00, 0x00, + // 890 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xcf, 0x6f, 0xdc, 0x44, + 0x14, 0xde, 0xb1, 0x37, 0xdb, 0xec, 0x2c, 0x85, 0x65, 0x40, 0xc8, 0x5d, 0x22, 0x13, 0xad, 0x84, + 0x08, 0x55, 0x6d, 0x4b, 0x8b, 0x10, 0x52, 0x95, 0xcb, 0x26, 0x0d, 0xb0, 0x52, 0x9a, 0x44, 0x6e, + 0x00, 0x81, 0x8a, 0xac, 0xb1, 0x3d, 0x71, 0xa6, 0xb5, 0x3d, 0x83, 0x67, 0xbc, 0x6d, 0x84, 0x90, + 0x50, 0xaf, 0xbd, 0x20, 0x21, 0x44, 0x4f, 0x88, 0x23, 0x7f, 0x02, 0x22, 0x42, 0xca, 0x8d, 0x9e, + 0x50, 0x04, 0x97, 0x1e, 0xc9, 0x2e, 0x07, 0xb8, 0xe5, 0xc0, 0x1f, 0x80, 0x76, 0xec, 0xfc, 0xd8, + 0xcd, 0x8a, 0x56, 0x09, 0xb7, 0x79, 0xf3, 0x3d, 0x7f, 0xef, 0x7d, 0xef, 0x3d, 0xcf, 0x83, 0x37, + 0xfa, 0x44, 0xd8, 0x94, 0x39, 0x22, 0xd8, 0x26, 0x09, 0x76, 0xfa, 0x94, 0xdc, 0x13, 0x4e, 0x4a, + 0xe4, 0x3d, 0x96, 0xdd, 0xf5, 0x38, 0x8b, 0x69, 0xb0, 0xe3, 0x8d, 0x2e, 0x1d, 0x9e, 0xfb, 0x31, + 0x0d, 0xbc, 0x20, 0x17, 0x92, 0x25, 0x5e, 0x88, 0x25, 0xf6, 0x30, 0xa7, 0x36, 0xcf, 0x98, 0x64, + 0xe8, 0x8d, 0x82, 0xc5, 0x2e, 0x58, 0x6c, 0xc5, 0x62, 0x4f, 0x61, 0x69, 0x59, 0x11, 0x95, 0xdb, + 0xb9, 0x6f, 0x07, 0x2c, 0x71, 0x22, 0x16, 0x31, 0x47, 0x7d, 0xef, 0xe7, 0x5b, 0xca, 0x52, 0x86, + 0x3a, 0x15, 0xbc, 0xad, 0xb9, 0x88, 0xb1, 0x28, 0x26, 0x0e, 0xe6, 0xd4, 0xc1, 0x69, 0xca, 0x24, + 0x96, 0x94, 0xa5, 0xa2, 0x44, 0x5f, 0x1d, 0xcf, 0x9d, 0xf1, 0xd3, 0xe0, 0x95, 0x71, 0x50, 0xee, + 0x70, 0x72, 0x04, 0xcd, 0x4d, 0x68, 0xc6, 0x31, 0x0d, 0xb1, 0x24, 0x25, 0xda, 0x9e, 0x40, 0x89, + 0x20, 0x69, 0x7f, 0x9c, 0xbc, 0xfd, 0x8f, 0x06, 0x8d, 0xb5, 0x42, 0xde, 0x86, 0x52, 0xf7, 0x3e, + 0x95, 0xc2, 0x25, 0x9f, 0xe5, 0x44, 0x48, 0x34, 0x07, 0xeb, 0x29, 0x4e, 0x88, 0xe0, 0x38, 0x20, + 0x06, 0x98, 0x07, 0x0b, 0x75, 0xf7, 0xe4, 0x02, 0xdd, 0x81, 0xcf, 0xc5, 0xd8, 0x27, 0xb1, 0xb7, + 0x45, 0x63, 0x49, 0x32, 0x43, 0x9b, 0xd7, 0x17, 0x1a, 0x9d, 0xf7, 0xec, 0x67, 0xac, 0xa0, 0x3d, + 0x16, 0xf6, 0x26, 0x91, 0x19, 0x0d, 0x56, 0x47, 0x7c, 0xef, 0x2a, 0x3a, 0xb7, 0x11, 0x9f, 0x18, + 0xe8, 0x36, 0x9c, 0x8d, 0x32, 0x96, 0x73, 0xcf, 0xdf, 0x31, 0xf4, 0x79, 0x7d, 0xe1, 0xf9, 0x4e, + 0xf7, 0xc2, 0x71, 0xdc, 0x4b, 0x8a, 0x72, 0x69, 0x07, 0xbd, 0x09, 0xa1, 0x90, 0x38, 0x93, 0x9e, + 0xa4, 0x09, 0x31, 0xaa, 0x23, 0xa1, 0x4b, 0xf0, 0xa7, 0xbf, 0xf7, 0xf4, 0x99, 0x4c, 0x7f, 0x54, + 0x05, 0x6e, 0x5d, 0xa1, 0x9b, 0x34, 0x21, 0xe8, 0x75, 0x38, 0x4b, 0xd2, 0xb0, 0x70, 0x9c, 0x39, + 0xe3, 0x78, 0x89, 0xa4, 0xa1, 0x72, 0x33, 0x61, 0x55, 0x48, 0xc2, 0x8d, 0xda, 0x98, 0xcb, 0xf7, + 0x55, 0xe0, 0xaa, 0xfb, 0xf6, 0xcf, 0x00, 0x9a, 0xff, 0xad, 0x1f, 0x7d, 0x04, 0x67, 0x54, 0x05, + 0x54, 0xe1, 0xff, 0x17, 0xbd, 0x05, 0x1f, 0xba, 0x06, 0x35, 0xc6, 0x0d, 0x4d, 0xb1, 0xce, 0x4d, + 0xb0, 0x9e, 0x72, 0x5f, 0xe7, 0xae, 0xc6, 0x38, 0x7a, 0x19, 0xce, 0xf4, 0x71, 0x9c, 0x13, 0x43, + 0x57, 0xfd, 0x2f, 0x8c, 0xf6, 0x23, 0x00, 0x5f, 0x3a, 0x33, 0x36, 0xbd, 0xf0, 0x29, 0x13, 0xf3, + 0x0a, 0xac, 0x15, 0x89, 0xaa, 0xe8, 0x75, 0xb7, 0xb4, 0xd0, 0x6b, 0xb0, 0x51, 0x0a, 0xc8, 0xf2, + 0xf8, 0x28, 0x12, 0x2c, 0xae, 0xdc, 0x3c, 0x56, 0x1f, 0xe2, 0x60, 0x34, 0xb6, 0x45, 0x73, 0xdc, + 0xd2, 0x42, 0x08, 0x56, 0x05, 0x95, 0x65, 0x27, 0x5c, 0x75, 0x6e, 0x7f, 0x03, 0xe0, 0x8b, 0x67, + 0x52, 0x43, 0xab, 0x50, 0xa3, 0xa1, 0xca, 0xa8, 0xd1, 0x59, 0x3c, 0x5f, 0x29, 0x0b, 0x89, 0xae, + 0x46, 0x43, 0xd4, 0x81, 0xb5, 0x44, 0x55, 0xaa, 0x1c, 0xfa, 0xd6, 0xd4, 0x32, 0x7e, 0x38, 0x2a, + 0x95, 0x5b, 0x7a, 0xb6, 0x1f, 0x02, 0x78, 0x65, 0xca, 0x9f, 0x26, 0x38, 0x4b, 0x05, 0x41, 0x6b, + 0xb0, 0x3a, 0x7a, 0x89, 0x0c, 0xa0, 0xf8, 0xae, 0x9f, 0x3f, 0x43, 0x57, 0xf1, 0x1c, 0x0f, 0xa0, + 0x36, 0x36, 0x80, 0x87, 0x5a, 0x39, 0x80, 0x57, 0x6f, 0x4f, 0xfc, 0xf6, 0xa7, 0x1a, 0x8f, 0x2e, + 0xc3, 0xfa, 0x5a, 0xf7, 0xe6, 0xca, 0xad, 0x8d, 0xee, 0xf2, 0x4a, 0xb3, 0x82, 0x20, 0xac, 0x6d, + 0xac, 0xaf, 0xf6, 0x96, 0x3f, 0x6e, 0x02, 0xf4, 0x02, 0x6c, 0x14, 0x67, 0xcf, 0xfd, 0x60, 0x75, + 0xa5, 0xa9, 0x8d, 0xc0, 0xee, 0xf2, 0x66, 0x6f, 0x7d, 0xad, 0xa9, 0xa3, 0x59, 0x58, 0xbd, 0xd5, + 0xdb, 0x5c, 0x69, 0x56, 0x3b, 0x0f, 0x75, 0x78, 0x79, 0x59, 0xbd, 0xaf, 0x37, 0xb0, 0xc4, 0xdd, + 0x8d, 0x1e, 0xda, 0xd5, 0xa6, 0x75, 0xa5, 0x7b, 0x01, 0x9d, 0xc5, 0x1b, 0xd5, 0x5a, 0xba, 0x08, + 0x45, 0x51, 0xfc, 0xf6, 0x77, 0xe0, 0xf1, 0x8f, 0x1a, 0x18, 0xfc, 0x62, 0x6c, 0x6e, 0xbd, 0x7d, + 0x3f, 0xb0, 0x04, 0x09, 0xf2, 0x8c, 0x24, 0x44, 0x6c, 0x5b, 0x3e, 0x16, 0x34, 0xb0, 0x12, 0x96, + 0x52, 0xc9, 0xb2, 0x6b, 0xf3, 0x93, 0xb0, 0x90, 0x38, 0x0d, 0x71, 0x16, 0x9e, 0x78, 0xf4, 0x89, + 0xb0, 0x28, 0xb3, 0xca, 0xf8, 0x56, 0x46, 0x70, 0xf8, 0xe0, 0xf7, 0x3f, 0xbf, 0xd6, 0x16, 0xdb, + 0xef, 0x94, 0x8b, 0xc7, 0x39, 0xfe, 0x1f, 0x84, 0xf3, 0xf9, 0xf1, 0xf9, 0x8b, 0xa9, 0xab, 0x6a, + 0x9b, 0x4a, 0x71, 0x1d, 0x5c, 0x6d, 0x2d, 0xee, 0xed, 0x02, 0xfd, 0xb7, 0x5d, 0xf0, 0xcc, 0x5a, + 0xd7, 0xfd, 0x3b, 0x24, 0x90, 0x0f, 0x7e, 0x35, 0x34, 0x03, 0x2c, 0x7d, 0x0b, 0xf6, 0x0f, 0xcc, + 0xca, 0x93, 0x03, 0xb3, 0x72, 0x78, 0x60, 0x82, 0x2f, 0x07, 0x26, 0xf8, 0x61, 0x60, 0x82, 0xc7, + 0x03, 0x13, 0xec, 0x0f, 0x4c, 0xf0, 0xc7, 0xc0, 0x04, 0x7f, 0x0d, 0xcc, 0xca, 0xe1, 0xc0, 0x04, + 0x5f, 0x0d, 0xcd, 0xca, 0xde, 0xd0, 0x04, 0xfb, 0x43, 0xb3, 0xf2, 0x64, 0x68, 0x56, 0x3e, 0xf9, + 0x34, 0x62, 0xfc, 0x6e, 0x64, 0xf7, 0xd9, 0xe8, 0x49, 0xca, 0xb0, 0x9d, 0x0b, 0x47, 0x1d, 0xb6, + 0x58, 0x96, 0x58, 0x3c, 0x63, 0x7d, 0x1a, 0x92, 0xcc, 0x3a, 0x82, 0x1d, 0xee, 0x47, 0xcc, 0x21, + 0xf7, 0x65, 0xb9, 0x71, 0x9e, 0xb6, 0x8a, 0xfd, 0x9a, 0x5a, 0x42, 0x6f, 0xfd, 0x1b, 0x00, 0x00, + 0xff, 0xff, 0xf4, 0x99, 0xe6, 0x40, 0xbc, 0x07, 0x00, 0x00, } func (x NetworkPolicyMetricLabel) String() string { diff --git a/pbgo/extschema/schema/views/origin_pool/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/origin_pool/crudapi/api.vesapi.go index 7c6202929..7e6323882 100644 --- a/pbgo/extschema/schema/views/origin_pool/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/origin_pool/crudapi/api.vesapi.go @@ -2746,6 +2746,21 @@ var APISwaggerJSON string = `{ } } }, + "clusterHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for upstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.cluster.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to the upstream request headers and when a\n Stateful formatter is selected, it applies to response headers sent to the client.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on http load balancer. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "clusterHttp2ProtocolOptions": { "type": "object", "description": "Http2 Protocol options for upstream connections", @@ -3060,9 +3075,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Origin Pool Advanced Options", "x-ves-oneof-field-circuit_breaker_choice": "[\"circuit_breaker\",\"default_circuit_breaker\",\"disable_circuit_breaker\"]", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", - "x-ves-oneof-field-lb_source_ip_persistance_choice": "[]", + "x-ves-oneof-field-lb_source_ip_persistance_choice": "[\"disable_lb_source_ip_persistance\",\"enable_lb_source_ip_persistance\"]", "x-ves-oneof-field-outlier_detection_choice": "[\"disable_outlier_detection\",\"outlier_detection\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_choice": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-oneof-field-subset_choice": "[\"disable_subsets\",\"enable_subsets\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginPoolAdvancedOptions", "properties": { @@ -3101,34 +3117,46 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable Circuit Breaker" }, + "disable_lb_source_ip_persistance": { + "description": "Exclusive with [enable_lb_source_ip_persistance]\n Disable LB source IP persistence", + "title": "disable_lb_source_ip_persistence", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable LB Source IP persistence" + }, "disable_outlier_detection": { "description": "Exclusive with [outlier_detection]\n Outlier detection is disabled", "title": "Disable Outlier Detection", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable Outlier Detection" }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "title": "Disable Proxy Protocol", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "disable_subsets": { "description": "Exclusive with [enable_subsets]\n Subset load balancing is disabled. All eligible origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Disabled", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Disable Subset Load Balancing" }, + "enable_lb_source_ip_persistance": { + "description": "Exclusive with [disable_lb_source_ip_persistance]\n Enable LB source IP persistence", + "title": "enable_lb_source_ip_persistence", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable LB Source IP persistence" + }, "enable_subsets": { "description": "Exclusive with [disable_subsets]\n Subset load balancing is enabled. Based on route, subset of origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Enable", "$ref": "#/definitions/origin_poolOriginPoolSubsets", "x-displayname": "Enable Subset Load Balancing" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "title": "Header transformation", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", "title": "http1_config", - "$ref": "#/definitions/schemaEmpty", + "$ref": "#/definitions/clusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -3169,6 +3197,18 @@ var APISwaggerJSON string = `{ "x-ves-validation-rules": { "ves.io.schema.rules.uint32.lte": "100" } + }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol Version 1 for upstream connections", + "title": "Proxy Protocol V1", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol Version 2 for upstream connections", + "title": "Proxy Protocol V2", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proxy Protocol V2" } } }, @@ -3354,12 +3394,12 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateIP", "x-displayname": "IP address on given Sites", "x-ves-displayorder": "10,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-oneof-field-private_ip_choice": "[\"ip\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateIP", "properties": { "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Inside Network" @@ -3385,11 +3425,21 @@ var APISwaggerJSON string = `{ } }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Outside Network" }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -3408,7 +3458,7 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateName", "x-displayname": "DNS Name on given Sites", "x-ves-displayorder": "1,6,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateName", "properties": { "dns_name": { @@ -3423,13 +3473,13 @@ var APISwaggerJSON string = `{ } }, "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Inside Network" }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Outside Network" @@ -3445,6 +3495,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "604800" } }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -3525,131 +3585,28 @@ var APISwaggerJSON string = `{ } } }, - "origin_poolOriginServerSegmentIP": { - "type": "object", - "description": "Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site", - "x-ves-displayorder": "1,4,5", - "x-ves-oneof-field-ip_choice": "[\"ip\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentIP", - "properties": { - "ip": { - "type": "string", - "description": "Exclusive with []\n Private IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", - "title": "IP", - "x-displayname": "IP", - "x-ves-example": "8.8.8.8", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4": "true" - } - }, - "ipv6": { - "type": "string", - "description": " Private IPV6 address\n\nExample: - \"2001::10\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", - "title": "IP6", - "x-displayname": "IP6", - "x-ves-example": "2001::10", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv6": "true" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud Edge or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "origin_poolOriginServerSegmentName": { - "type": "object", - "description": "Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites", - "x-ves-displayorder": "1,2,3,4", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentName", - "properties": { - "dns_name": { - "type": "string", - "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "DNS name", - "x-displayname": "DNS Name", - "x-ves-example": "value", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "refresh_interval": { - "type": "integer", - "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", - "title": "refresh_interval", - "format": "int64", - "x-displayname": "DNS Refresh interval", - "x-ves-example": "20", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "604800" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud RE Region or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, "origin_poolOriginServerType": { "type": "object", "description": "Various options to specify origin server", "title": "OriginServerType", "x-displayname": "Origin Server", - "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"segment_ip\",\"segment_name\",\"vn_private_ip\",\"vn_private_name\"]", + "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"vn_private_ip\",\"vn_private_name\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerType", "properties": { "consul_service": { - "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", + "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", "title": "OriginServerConsulService", "$ref": "#/definitions/origin_poolOriginServerConsulService", "x-displayname": "Consul Service Name of Origin Server on given Sites" }, "custom_endpoint_object": { - "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", + "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", "title": "OriginServerCustomEndpoint", "$ref": "#/definitions/origin_poolOriginServerCustomEndpoint", "x-displayname": "Custom Endpoint Object for Origin Server" }, "k8s_service": { - "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", "title": "OriginServerK8SService", "$ref": "#/definitions/origin_poolOriginServerK8SService", "x-displayname": "K8s Service Name of Origin Server on given Sites" @@ -3662,49 +3619,37 @@ var APISwaggerJSON string = `{ "x-ves-example": "value" }, "private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", "title": "OriginServerPrivateIP", "$ref": "#/definitions/origin_poolOriginServerPrivateIP", "x-displayname": "IP address of Origin Server on given Sites" }, "private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", "title": "OriginServerPrivateName", "$ref": "#/definitions/origin_poolOriginServerPrivateName", "x-displayname": "DNS Name of Origin Server on given Sites" }, "public_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public IP", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name vn_private_ip vn_private_name]\n Specify origin server with public IP", "title": "OriginServerPublicIP", "$ref": "#/definitions/origin_poolOriginServerPublicIP", "x-displayname": "Public IP of Origin Server" }, "public_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public DNS name", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip vn_private_ip vn_private_name]\n Specify origin server with public DNS name", "title": "OriginServerPublicName", "$ref": "#/definitions/origin_poolOriginServerPublicName", "x-displayname": "Public DNS Name of Origin Server" }, - "segment_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_name vn_private_ip vn_private_name]\n Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "$ref": "#/definitions/origin_poolOriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site" - }, - "segment_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip vn_private_ip vn_private_name]\n Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "$ref": "#/definitions/origin_poolOriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites" - }, "vn_private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkIP", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkIP", "x-displayname": "IP address on Virtual Network" }, "vn_private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkName", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkName", "x-displayname": "Name on Virtual Network" @@ -4104,23 +4049,29 @@ var APISwaggerJSON string = `{ "title": "HeaderTransformationType", "x-displayname": "Header Transformation", "x-ves-displayorder": "1", - "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "Exclusive with [preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Default" }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Legacy" + }, "preserve_case_header_transformation": { - "description": "Exclusive with [default_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "Exclusive with [default_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", "$ref": "#/definitions/schemaEmpty", "x-displayname": "Proper Case" @@ -4210,10 +4161,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4739,34 +4694,6 @@ var APISwaggerJSON string = `{ } } }, - "viewsSiteRegionLocator": { - "type": "object", - "description": "This message defines reference to site or virtual site or a cloud-re-region object", - "title": "SiteRegionLocator", - "x-displayname": "Select Site or Virtual Site or Cloud Edge", - "x-ves-oneof-field-choice": "[\"cloud_re_region\",\"site\",\"virtual_site\"]", - "x-ves-proto-message": "ves.io.schema.views.SiteRegionLocator", - "properties": { - "cloud_re_region": { - "description": "Exclusive with [site virtual_site]\n Reference to a Cloud Edge", - "title": "Cloud Edge", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Cloud Edge" - }, - "site": { - "description": "Exclusive with [cloud_re_region virtual_site]\n Reference to site object", - "title": "site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Site" - }, - "virtual_site": { - "description": "Exclusive with [cloud_re_region site]\n Reference to virtual site object", - "title": "Virtual Site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Site" - } - } - }, "viewsTlsConfig": { "type": "object", "description": "This defines various options to configure TLS configuration parameters", diff --git a/pbgo/extschema/schema/views/origin_pool/object.pb.go b/pbgo/extschema/schema/views/origin_pool/object.pb.go index e3afc2d6f..0c8c78ce2 100644 --- a/pbgo/extschema/schema/views/origin_pool/object.pb.go +++ b/pbgo/extschema/schema/views/origin_pool/object.pb.go @@ -158,40 +158,41 @@ func init() { } var fileDescriptor_dc7e47b54efa4ece = []byte{ - // 522 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0x31, 0x6f, 0x13, 0x3d, - 0x1c, 0xc6, 0xcf, 0x69, 0x94, 0x56, 0x7e, 0xa5, 0x17, 0x74, 0x53, 0x28, 0xe0, 0x56, 0x61, 0x01, - 0xd1, 0xf3, 0x21, 0x10, 0x82, 0x22, 0xb1, 0x00, 0x52, 0x19, 0x5a, 0x21, 0xb5, 0x65, 0x61, 0x89, - 0x7c, 0xce, 0x3f, 0x17, 0xc3, 0x5d, 0x6c, 0xd9, 0x4e, 0x9a, 0x6c, 0xfd, 0x08, 0x48, 0x7c, 0x03, - 0x26, 0x16, 0xbe, 0x03, 0x65, 0x62, 0x8c, 0x98, 0x32, 0x92, 0xcb, 0xc2, 0xd8, 0x8f, 0x80, 0xe2, - 0x4b, 0xa2, 0xe4, 0x28, 0x8a, 0x94, 0xcd, 0xd6, 0xf3, 0x7b, 0x9e, 0xb3, 0x1f, 0xff, 0x0f, 0xef, - 0x75, 0xc1, 0x50, 0x21, 0x43, 0xc3, 0x5b, 0x90, 0xb2, 0xb0, 0x2b, 0xe0, 0xcc, 0x84, 0x52, 0x8b, - 0x58, 0xb4, 0xeb, 0x4a, 0xca, 0x24, 0x94, 0xd1, 0x7b, 0xe0, 0x96, 0x2a, 0x2d, 0xad, 0xf4, 0x77, - 0x72, 0x9a, 0xe6, 0x34, 0x75, 0x34, 0x5d, 0xa0, 0xb7, 0x83, 0x58, 0xd8, 0x56, 0x27, 0xa2, 0x5c, - 0xa6, 0x61, 0x2c, 0x63, 0x19, 0x3a, 0x5f, 0xd4, 0x69, 0xba, 0x9d, 0xdb, 0xb8, 0x55, 0x9e, 0xb7, - 0x7d, 0x73, 0xf9, 0xeb, 0x52, 0x59, 0x21, 0xdb, 0x66, 0x2a, 0xde, 0x58, 0x16, 0x6d, 0x5f, 0xc1, - 0x4c, 0xba, 0x55, 0x38, 0x35, 0x4b, 0x44, 0x83, 0x59, 0x98, 0xaa, 0xb5, 0x82, 0x0a, 0x06, 0xda, - 0xdd, 0x42, 0xf8, 0xee, 0xdf, 0xf7, 0xae, 0x2f, 0x13, 0xf7, 0x57, 0x35, 0xb3, 0x78, 0xa0, 0x9d, - 0xab, 0xe0, 0x05, 0xa0, 0x76, 0x5e, 0xc6, 0x95, 0x37, 0xae, 0x4a, 0x7f, 0x1f, 0x6f, 0xa5, 0x60, - 0x59, 0x83, 0x59, 0x56, 0x45, 0xbb, 0xe8, 0xee, 0x7f, 0x0f, 0x6f, 0xd3, 0xe5, 0x5e, 0x73, 0xf0, - 0x08, 0x2c, 0x3b, 0xed, 0x2b, 0x38, 0x9e, 0xe3, 0xfe, 0x21, 0xbe, 0x66, 0xfa, 0xc6, 0x42, 0x5a, - 0x9f, 0x27, 0x94, 0x5c, 0xc2, 0x9d, 0x42, 0xc2, 0x89, 0xa3, 0x0a, 0x39, 0xff, 0xe7, 0xde, 0xa3, - 0x59, 0xda, 0x73, 0x5c, 0x36, 0x0a, 0x78, 0x75, 0xc3, 0x45, 0xdc, 0xa3, 0x2b, 0x1e, 0x97, 0x9e, - 0x28, 0xe0, 0x2e, 0xc8, 0xd9, 0x9e, 0x7d, 0x2d, 0x7d, 0xbf, 0xa8, 0x96, 0xae, 0xa3, 0x9f, 0x17, - 0xd5, 0xcf, 0x25, 0xfc, 0x04, 0x6f, 0x1c, 0x80, 0xf5, 0x1f, 0x34, 0x1f, 0xf7, 0x78, 0x60, 0x80, - 0x77, 0x34, 0xa4, 0x60, 0x5a, 0x41, 0xc4, 0x8c, 0xe0, 0x41, 0x2a, 0xdb, 0xc2, 0x4a, 0xbd, 0x37, - 0xa9, 0x3d, 0x10, 0x32, 0x50, 0x5a, 0xf6, 0xfa, 0x81, 0x06, 0xd6, 0xc0, 0xfb, 0x78, 0xf3, 0x18, - 0x54, 0xc2, 0x38, 0xf8, 0xf4, 0x6a, 0x73, 0xc7, 0x40, 0xd1, 0x79, 0xa6, 0x85, 0x05, 0xfc, 0x14, - 0x57, 0x5e, 0x6a, 0x60, 0x76, 0x2d, 0xe7, 0x2b, 0x48, 0x60, 0x2d, 0x67, 0xf9, 0x50, 0x98, 0x35, - 0x2e, 0x5a, 0x3b, 0xc5, 0x5b, 0xb3, 0x06, 0xfd, 0xd7, 0x78, 0x33, 0xe6, 0x75, 0xd7, 0x7e, 0x3e, - 0x02, 0xe1, 0xca, 0xf6, 0x0f, 0x12, 0x19, 0xb1, 0x64, 0xfe, 0x06, 0x95, 0x98, 0x4f, 0xd6, 0x2f, - 0x3e, 0xa1, 0xc1, 0x88, 0x78, 0xc3, 0x11, 0xf1, 0x2e, 0x47, 0x04, 0x9d, 0x67, 0x04, 0x7d, 0xc9, - 0x08, 0xfa, 0x91, 0x11, 0x34, 0xc8, 0x08, 0x1a, 0x66, 0x04, 0xfd, 0xca, 0x08, 0xfa, 0x9d, 0x11, - 0xef, 0x32, 0x23, 0xe8, 0xe3, 0x98, 0x78, 0xdf, 0xc6, 0x04, 0x0d, 0xc6, 0xc4, 0x1b, 0x8e, 0x89, - 0xf7, 0xee, 0x6d, 0x2c, 0xd5, 0x87, 0x98, 0x76, 0x65, 0x62, 0x41, 0x6b, 0x46, 0x3b, 0x26, 0x74, - 0x8b, 0xa6, 0xd4, 0xe9, 0xe4, 0xf0, 0x5d, 0xd1, 0x00, 0x1d, 0xcc, 0xe4, 0x50, 0x45, 0xb1, 0x0c, - 0xa1, 0x67, 0xa7, 0x73, 0xfe, 0xaf, 0x7f, 0x23, 0xaa, 0xb8, 0xa9, 0x7f, 0xf4, 0x27, 0x00, 0x00, - 0xff, 0xff, 0xf0, 0x39, 0x3c, 0x72, 0x5f, 0x04, 0x00, 0x00, + // 541 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x93, 0x31, 0x6f, 0x13, 0x3d, + 0x18, 0xc7, 0xcf, 0x4d, 0xdf, 0xb4, 0xf2, 0x2b, 0x01, 0xba, 0x29, 0x14, 0x70, 0xab, 0xb2, 0x80, + 0xe8, 0xdd, 0x49, 0x20, 0x06, 0x90, 0x58, 0x00, 0xa9, 0x0c, 0x8d, 0x90, 0xd2, 0x22, 0xa0, 0x4b, + 0xe4, 0xf3, 0x3d, 0xb9, 0x18, 0xee, 0x62, 0xcb, 0x76, 0xae, 0xc9, 0xc6, 0x47, 0x40, 0xe2, 0x13, + 0xb0, 0xf1, 0x31, 0x28, 0x2c, 0x4c, 0x28, 0x62, 0xca, 0x48, 0x2e, 0x0b, 0x63, 0x3f, 0x02, 0xaa, + 0x2f, 0x09, 0xc9, 0x51, 0xc8, 0x42, 0x37, 0x5b, 0xff, 0x9f, 0x7f, 0xe7, 0x7b, 0xfc, 0x3c, 0x78, + 0x27, 0x03, 0xed, 0x73, 0x11, 0x68, 0xd6, 0x86, 0x94, 0x06, 0x19, 0x87, 0x23, 0x1d, 0x08, 0xc5, + 0x63, 0xde, 0x69, 0x4a, 0x21, 0x92, 0x40, 0x84, 0xaf, 0x80, 0x19, 0x5f, 0x2a, 0x61, 0x84, 0xbb, + 0x59, 0xd0, 0x7e, 0x41, 0xfb, 0x96, 0xf6, 0xe7, 0xe8, 0x0d, 0x2f, 0xe6, 0xa6, 0xdd, 0x0d, 0x7d, + 0x26, 0xd2, 0x20, 0x16, 0xb1, 0x08, 0xec, 0xb9, 0xb0, 0xdb, 0xb2, 0x3b, 0xbb, 0xb1, 0xab, 0xc2, + 0xb7, 0x71, 0x65, 0xf1, 0xeb, 0x42, 0x1a, 0x2e, 0x3a, 0x7a, 0x12, 0x5e, 0x5e, 0x0c, 0x4d, 0x5f, + 0xc2, 0x34, 0xba, 0x5a, 0xba, 0x35, 0x4d, 0x78, 0x44, 0x0d, 0x4c, 0xd2, 0xed, 0x52, 0x0a, 0x1a, + 0x3a, 0x59, 0x49, 0xbe, 0xf5, 0xfb, 0x7f, 0x37, 0x17, 0x89, 0x5b, 0xcb, 0x2a, 0x33, 0x7f, 0xa1, + 0xcd, 0xb3, 0xe0, 0x39, 0x60, 0xfb, 0xfd, 0x7f, 0xb8, 0xfa, 0xd4, 0x96, 0xd2, 0xbd, 0x87, 0xd7, + 0x53, 0x30, 0x34, 0xa2, 0x86, 0xd6, 0xd0, 0x16, 0xba, 0xf1, 0xff, 0xed, 0x6b, 0xfe, 0x62, 0x5d, + 0x0b, 0xb0, 0x0e, 0x86, 0x1e, 0xf4, 0x25, 0x34, 0x66, 0xb8, 0xbb, 0x87, 0x2f, 0xea, 0xbe, 0x36, + 0x90, 0x36, 0x67, 0x86, 0x15, 0x6b, 0xb8, 0x5e, 0x32, 0xec, 0x5b, 0xaa, 0xe4, 0xb9, 0x50, 0x9c, + 0xad, 0x4f, 0x6d, 0x0f, 0xf0, 0xaa, 0x96, 0xc0, 0x6a, 0x15, 0xab, 0xb8, 0xe9, 0x2f, 0x79, 0x5c, + 0x7f, 0x5f, 0x02, 0xb3, 0x22, 0x7b, 0xec, 0xfe, 0xd7, 0xca, 0xa7, 0xe3, 0xda, 0xca, 0x25, 0xf4, + 0xed, 0xb8, 0xf6, 0xb9, 0x82, 0x5f, 0xe2, 0xca, 0x2e, 0x18, 0xb7, 0xd1, 0xba, 0xdb, 0x63, 0x9e, + 0x06, 0xd6, 0x55, 0x90, 0x82, 0x6e, 0x7b, 0x21, 0xd5, 0x9c, 0x79, 0xa9, 0xe8, 0x70, 0x23, 0xd4, + 0xce, 0x56, 0x39, 0xd6, 0x86, 0x76, 0x22, 0xaa, 0xa2, 0x5f, 0x44, 0x06, 0xda, 0xe3, 0xc2, 0x93, + 0x4a, 0xf4, 0xfa, 0x9e, 0x02, 0x1a, 0xe1, 0x17, 0x78, 0xad, 0x01, 0x32, 0xa1, 0x0c, 0xdc, 0xfa, + 0xd9, 0xfa, 0xae, 0x86, 0xbf, 0xb9, 0x8b, 0x78, 0x41, 0x7c, 0xa4, 0xb8, 0x01, 0xfc, 0x1c, 0x57, + 0x1f, 0x29, 0xa0, 0xe6, 0x3c, 0xc4, 0x8f, 0x21, 0x81, 0x7f, 0x2f, 0x3e, 0xc4, 0xab, 0x7b, 0x5c, + 0x9f, 0x4b, 0x9d, 0xb7, 0x0f, 0xf0, 0xfa, 0xf4, 0x89, 0xdd, 0x27, 0x78, 0x2d, 0x66, 0x4d, 0xdb, + 0x1e, 0x45, 0x8f, 0x06, 0x4b, 0xdb, 0x63, 0x37, 0x11, 0x21, 0x4d, 0x66, 0x4d, 0x52, 0x8d, 0xd9, + 0xe9, 0xfa, 0xe1, 0x3b, 0x34, 0x18, 0x11, 0x67, 0x38, 0x22, 0xce, 0xc9, 0x88, 0xa0, 0x37, 0x39, + 0x41, 0x1f, 0x72, 0x82, 0xbe, 0xe4, 0x04, 0x0d, 0x72, 0x82, 0x86, 0x39, 0x41, 0xdf, 0x73, 0x82, + 0x7e, 0xe4, 0xc4, 0x39, 0xc9, 0x09, 0x7a, 0x3b, 0x26, 0xce, 0xc7, 0x31, 0x41, 0x83, 0x31, 0x71, + 0x86, 0x63, 0xe2, 0x1c, 0x3e, 0x8b, 0x85, 0x7c, 0x1d, 0xfb, 0x99, 0x48, 0x0c, 0x28, 0x45, 0xfd, + 0xae, 0x0e, 0xec, 0xa2, 0x25, 0x54, 0x7a, 0x7a, 0xf9, 0x8c, 0x47, 0xa0, 0xbc, 0x69, 0x1c, 0xc8, + 0x30, 0x16, 0x01, 0xf4, 0xcc, 0x64, 0x10, 0xff, 0x34, 0xbc, 0x61, 0xd5, 0x8e, 0xe5, 0x9d, 0x9f, + 0x01, 0x00, 0x00, 0xff, 0xff, 0xa7, 0x22, 0x46, 0x8f, 0x00, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/origin_pool/pkg.vespkg.go b/pbgo/extschema/schema/views/origin_pool/pkg.vespkg.go index d7bd27f47..251252eda 100644 --- a/pbgo/extschema/schema/views/origin_pool/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/origin_pool/pkg.vespkg.go @@ -40,8 +40,6 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.origin_pool.OriginServerPrivateName"] = OriginServerPrivateNameValidator() vr["ves.io.schema.views.origin_pool.OriginServerPublicIP"] = OriginServerPublicIPValidator() vr["ves.io.schema.views.origin_pool.OriginServerPublicName"] = OriginServerPublicNameValidator() - vr["ves.io.schema.views.origin_pool.OriginServerSegmentIP"] = OriginServerSegmentIPValidator() - vr["ves.io.schema.views.origin_pool.OriginServerSegmentName"] = OriginServerSegmentNameValidator() vr["ves.io.schema.views.origin_pool.OriginServerType"] = OriginServerTypeValidator() vr["ves.io.schema.views.origin_pool.OriginServerVirtualNetworkIP"] = OriginServerVirtualNetworkIPValidator() vr["ves.io.schema.views.origin_pool.OriginServerVirtualNetworkName"] = OriginServerVirtualNetworkNameValidator() @@ -63,8 +61,7 @@ func initializeEntryRegistry(mdr *svcfw.MDRegistry) { func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.views.origin_pool.API.Create"] = []string{ - "spec.advanced_options.disable_lb_source_ip_persistance", - "spec.advanced_options.enable_lb_source_ip_persistance", + "spec.advanced_options.header_transformation_type", "spec.origin_servers.#.k8s_service.service_selector", "spec.use_tls.use_mtls.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.use_tls.use_mtls.tls_certificates.#.private_key.secret_encoding_type", @@ -75,38 +72,30 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.origin_pool.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.origin_pool.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -115,76 +104,59 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.origin_pool.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "create_form.spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "replace_form.spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.origin_pool.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "items.#.get_spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.views.origin_pool.API.Replace"] = []string{ - "spec.advanced_options.disable_lb_source_ip_persistance", - "spec.advanced_options.enable_lb_source_ip_persistance", + "spec.advanced_options.header_transformation_type", "spec.origin_servers.#.k8s_service.service_selector", "spec.use_tls.use_mtls.tls_certificates.#.private_key.blindfold_secret_info_internal", "spec.use_tls.use_mtls.tls_certificates.#.private_key.secret_encoding_type", @@ -195,19 +167,15 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.origin_pool.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.origin_servers.#.private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.public_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, - }, - { - FieldPath: "spec.origin_servers.#.segment_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.origin_servers.#.vn_private_ip.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/origin_pool/public_crudapi.pb.go b/pbgo/extschema/schema/views/origin_pool/public_crudapi.pb.go index 63fdbaaa5..580ac825e 100644 --- a/pbgo/extschema/schema/views/origin_pool/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/origin_pool/public_crudapi.pb.go @@ -1035,105 +1035,106 @@ func init() { } var fileDescriptor_7331f75723396b93 = []byte{ - // 1556 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0x45, - 0x14, 0xce, 0xf8, 0xaf, 0xf6, 0x38, 0x3f, 0xee, 0x50, 0x52, 0xd7, 0x04, 0xd7, 0xb8, 0x55, 0x15, - 0xa5, 0xf1, 0x6e, 0x08, 0xe1, 0xa7, 0x11, 0x14, 0xf2, 0xe3, 0x58, 0x29, 0x69, 0x53, 0x26, 0x49, - 0x85, 0xb8, 0xac, 0xd6, 0xeb, 0xb1, 0xbb, 0xad, 0xed, 0xd9, 0xee, 0x8c, 0x93, 0x5a, 0x28, 0x52, - 0xd5, 0x1b, 0x37, 0x24, 0x0e, 0x48, 0x5c, 0x38, 0x21, 0x71, 0xe5, 0x86, 0xd4, 0x4b, 0x6f, 0xad, - 0x7a, 0x80, 0x8a, 0x1e, 0xa8, 0xc4, 0x85, 0x3a, 0x20, 0xf5, 0x46, 0x4f, 0xdc, 0x2a, 0xa1, 0x9d, - 0xd9, 0x75, 0x6d, 0xc7, 0xc5, 0x76, 0x9a, 0x93, 0x77, 0xde, 0xcf, 0x37, 0xef, 0x7b, 0xf3, 0xde, - 0xf3, 0xec, 0xc2, 0xb9, 0x6d, 0xc2, 0x14, 0x93, 0xaa, 0xcc, 0xb8, 0x4a, 0x2a, 0xba, 0xba, 0x6d, - 0x92, 0x1d, 0xa6, 0x52, 0xdb, 0x2c, 0x99, 0x55, 0xcd, 0xa2, 0xb4, 0xac, 0x5a, 0xb5, 0x7c, 0xd9, - 0x34, 0x34, 0xc3, 0xae, 0x15, 0x74, 0xcb, 0x54, 0x2c, 0x9b, 0x72, 0x8a, 0x4e, 0x4a, 0x2f, 0x45, - 0x7a, 0x29, 0xc2, 0x4b, 0x69, 0xf1, 0x4a, 0x64, 0x4a, 0x26, 0xbf, 0x5a, 0xcb, 0x2b, 0x06, 0xad, - 0xa8, 0x25, 0x5a, 0xa2, 0xaa, 0xf0, 0xcb, 0xd7, 0x8a, 0x62, 0x25, 0x16, 0xe2, 0x49, 0xe2, 0x25, - 0x26, 0x4a, 0x94, 0x96, 0xca, 0x44, 0xd5, 0x2d, 0x53, 0xd5, 0xab, 0x55, 0xca, 0x75, 0x6e, 0xd2, - 0x2a, 0x73, 0xb5, 0x6f, 0xb8, 0xda, 0x26, 0x06, 0xa9, 0x58, 0xbc, 0xee, 0x2a, 0x13, 0xed, 0x04, - 0x88, 0x6d, 0x53, 0xbb, 0xe9, 0xd8, 0xae, 0xa3, 0x56, 0x2b, 0xea, 0x89, 0x76, 0x25, 0xaf, 0x5b, - 0xc4, 0x53, 0x4d, 0x74, 0x24, 0x45, 0x2f, 0x9b, 0x05, 0x9d, 0x13, 0x57, 0x9b, 0xee, 0xd0, 0x12, - 0x46, 0xaa, 0xdb, 0x1d, 0xe0, 0xa9, 0xfd, 0x69, 0xd5, 0xda, 0x2d, 0xa6, 0x7b, 0x25, 0x9e, 0xe6, - 0xaf, 0x11, 0x83, 0xbb, 0xd6, 0x67, 0x7b, 0x59, 0xb7, 0x86, 0x7f, 0xb2, 0x9b, 0x71, 0x8b, 0x41, - 0xfa, 0x27, 0x00, 0x47, 0x96, 0x6c, 0xa2, 0x73, 0x82, 0xc9, 0x8d, 0x1a, 0x61, 0x1c, 0x7d, 0x0c, - 0xc3, 0x15, 0xc2, 0xf5, 0x82, 0xce, 0xf5, 0x38, 0x48, 0x81, 0xc9, 0xe8, 0xec, 0x29, 0xa5, 0xfd, - 0x8c, 0xd7, 0x45, 0x38, 0xd2, 0xeb, 0x22, 0xe1, 0xfa, 0x66, 0xdd, 0x22, 0xb8, 0xe9, 0x84, 0x36, - 0x61, 0x80, 0x59, 0xc4, 0x88, 0xfb, 0x84, 0xb3, 0xaa, 0xf4, 0x28, 0x10, 0x45, 0x02, 0x6d, 0x58, - 0xc4, 0x70, 0x80, 0x16, 0xc7, 0xbe, 0xdb, 0x1d, 0x76, 0xfc, 0x95, 0x92, 0xa1, 0x39, 0xbf, 0x58, - 0xa0, 0xcd, 0x47, 0x1e, 0x9c, 0x0f, 0xc9, 0x8d, 0xd3, 0xcf, 0x01, 0x1c, 0xf5, 0x62, 0x66, 0x16, - 0xad, 0x32, 0x82, 0x3e, 0xdc, 0x17, 0x74, 0xaa, 0x6b, 0xd0, 0x39, 0xc2, 0xbb, 0x44, 0xbc, 0x0e, - 0xc7, 0x58, 0x9d, 0x71, 0x52, 0xd1, 0x9a, 0x20, 0x7e, 0x01, 0x72, 0xa6, 0x03, 0x64, 0x43, 0x58, - 0xed, 0x87, 0x1a, 0x95, 0xee, 0x17, 0x3d, 0xc0, 0xcf, 0xda, 0x52, 0x30, 0xdd, 0x33, 0x05, 0x39, - 0xc2, 0x07, 0xe0, 0xff, 0x37, 0x80, 0xa3, 0x98, 0x58, 0x65, 0xdd, 0x68, 0x1e, 0xda, 0x27, 0xfb, - 0xf8, 0x9f, 0xee, 0xca, 0xdf, 0x75, 0xeb, 0x92, 0x83, 0xad, 0xb6, 0x90, 0x67, 0x7a, 0x86, 0xec, - 0x22, 0xf5, 0x08, 0x1b, 0xa9, 0x30, 0x66, 0x13, 0x46, 0x6b, 0xb6, 0x41, 0xb4, 0x6d, 0x62, 0x33, - 0x93, 0x56, 0x45, 0x6e, 0x23, 0x8b, 0x81, 0xa7, 0x77, 0x00, 0xc0, 0x63, 0x9e, 0xf6, 0x8a, 0x54, - 0xb6, 0xf2, 0x3c, 0x0a, 0xc7, 0x9a, 0x34, 0xe5, 0x39, 0xa7, 0xbf, 0x07, 0x10, 0xe6, 0x08, 0xf7, - 0x68, 0x4f, 0xc0, 0x48, 0x55, 0xaf, 0x10, 0x66, 0xe9, 0x06, 0x11, 0xbc, 0x23, 0xf8, 0x85, 0x00, - 0x21, 0x18, 0x70, 0x16, 0x82, 0x52, 0x04, 0x8b, 0x67, 0xa4, 0x41, 0x67, 0x47, 0x01, 0xa6, 0x15, - 0xa9, 0x5d, 0xd1, 0xb9, 0x08, 0x67, 0x74, 0xf6, 0xbd, 0x7e, 0x0e, 0xc9, 0x8b, 0x63, 0x45, 0x78, - 0x2e, 0xd1, 0x02, 0xc1, 0xa3, 0x76, 0x9b, 0x2c, 0xfd, 0x28, 0x08, 0xa3, 0x2d, 0x96, 0x68, 0x1d, - 0x46, 0x0d, 0x51, 0xab, 0x62, 0x3b, 0x37, 0xbd, 0x4a, 0x9f, 0x4d, 0xe1, 0xf2, 0xc4, 0x50, 0x42, - 0x38, 0x5b, 0x20, 0x0c, 0x87, 0x6d, 0x99, 0x15, 0x89, 0xe8, 0xef, 0xb3, 0xcd, 0xda, 0x2b, 0x06, - 0x47, 0x5d, 0x10, 0x81, 0xd9, 0xed, 0x94, 0x02, 0xff, 0x73, 0x4a, 0x6d, 0xfd, 0x16, 0x3c, 0x8c, - 0x7e, 0x3b, 0x72, 0x28, 0xfd, 0x16, 0x3a, 0xb4, 0x7e, 0x43, 0xab, 0xf0, 0xa8, 0x4d, 0x8a, 0xc4, - 0xb6, 0xcd, 0x6a, 0x49, 0x93, 0x03, 0x98, 0xc5, 0xc3, 0x29, 0xff, 0x64, 0x74, 0x76, 0xe2, 0x25, - 0xad, 0x55, 0x14, 0xb1, 0xc5, 0x9a, 0x6e, 0x52, 0xce, 0xd0, 0x15, 0x18, 0x2f, 0x90, 0x32, 0xe1, - 0xa4, 0xa0, 0x49, 0x1d, 0x29, 0x34, 0x11, 0x23, 0x7d, 0x20, 0x8e, 0xbb, 0xde, 0xd8, 0x75, 0xf6, - 0x70, 0x3f, 0x87, 0x27, 0x0a, 0x26, 0xd3, 0xf3, 0xe5, 0x6e, 0xc0, 0xb0, 0x0f, 0xe0, 0xe3, 0x9e, - 0x7b, 0x07, 0x72, 0x4b, 0x13, 0x5e, 0x08, 0x84, 0x41, 0xcc, 0x97, 0xfe, 0x01, 0xc0, 0xe8, 0x9a, - 0xc9, 0xfa, 0x6c, 0xbc, 0xb7, 0xe0, 0x70, 0x59, 0xcf, 0x93, 0xb2, 0x56, 0x34, 0xcb, 0x9c, 0xd8, - 0x6e, 0x03, 0x46, 0x85, 0x6c, 0x45, 0x88, 0xd0, 0x29, 0x38, 0x62, 0x13, 0x8b, 0xda, 0x5c, 0x2b, - 0x9a, 0xa4, 0x5c, 0x60, 0x71, 0x7f, 0xca, 0x3f, 0x19, 0xc1, 0xc3, 0x52, 0xb8, 0x22, 0x64, 0x68, - 0x06, 0x1e, 0x73, 0x8d, 0x18, 0xd7, 0x79, 0x8d, 0x79, 0xb6, 0x01, 0x61, 0x8b, 0xa4, 0x6e, 0x43, - 0xa8, 0xa4, 0x47, 0xfa, 0x79, 0x10, 0xc6, 0x64, 0x9c, 0xb2, 0xfd, 0x56, 0x39, 0xa9, 0xa0, 0x71, - 0x18, 0xe2, 0xa4, 0xaa, 0x57, 0xb9, 0xa8, 0x8f, 0x08, 0x76, 0x57, 0x07, 0x98, 0x1e, 0x31, 0xe8, - 0xaf, 0x99, 0x05, 0x39, 0xc0, 0xb0, 0xf3, 0x88, 0x52, 0x30, 0x5a, 0x20, 0xcc, 0xb0, 0x4d, 0xf1, - 0x8f, 0x1e, 0x8f, 0x4a, 0xa6, 0x2d, 0x22, 0x94, 0x80, 0x61, 0x2f, 0xcd, 0xf1, 0xe1, 0x14, 0x98, - 0x0c, 0xe3, 0xe6, 0x1a, 0x6d, 0xc1, 0x90, 0x48, 0x8a, 0xa4, 0x14, 0x9d, 0xfd, 0xa8, 0x67, 0xe5, - 0x76, 0x92, 0x53, 0xd6, 0x84, 0x7f, 0xb6, 0xca, 0xed, 0x3a, 0x76, 0xc1, 0x50, 0x01, 0x46, 0x5b, - 0xae, 0x4e, 0x6e, 0x29, 0x2c, 0x0e, 0x8e, 0xbd, 0xf0, 0x02, 0x44, 0x6e, 0xd0, 0x0a, 0x8b, 0xce, - 0x41, 0x48, 0x77, 0xaa, 0xc4, 0xd6, 0x1c, 0xa4, 0x78, 0x44, 0xb4, 0x5e, 0xa2, 0x63, 0x93, 0x2b, - 0x26, 0xd9, 0xf1, 0xaa, 0x2d, 0x22, 0xac, 0x1d, 0x49, 0xdb, 0xf8, 0x18, 0x39, 0x8c, 0xf1, 0x31, - 0xfa, 0x4a, 0xe3, 0x23, 0x07, 0xc3, 0x25, 0xc2, 0x45, 0xf7, 0xbb, 0x83, 0x68, 0xa0, 0x11, 0x82, - 0x8f, 0x94, 0xe4, 0x22, 0x71, 0x0e, 0x46, 0x5b, 0xce, 0xc3, 0x29, 0x97, 0xeb, 0xa4, 0xee, 0x96, - 0x96, 0xf3, 0x88, 0x8e, 0xc1, 0xe0, 0xb6, 0x5e, 0xae, 0x79, 0x55, 0x25, 0x17, 0xf3, 0xbe, 0x0f, - 0x40, 0xe2, 0x3c, 0x8c, 0x75, 0xa6, 0x7b, 0x10, 0xff, 0x0b, 0x81, 0x70, 0x30, 0x16, 0x4a, 0x7f, - 0x05, 0xe0, 0x70, 0xeb, 0x31, 0xa2, 0x1c, 0x0c, 0x9a, 0x9c, 0x54, 0x58, 0x1c, 0x88, 0x22, 0x78, - 0x7b, 0xe0, 0x22, 0xc0, 0xd2, 0x1f, 0xcd, 0xc0, 0x90, 0xbc, 0x50, 0xc7, 0x7d, 0x02, 0x29, 0xde, - 0x81, 0x94, 0x75, 0x94, 0x22, 0x1b, 0xae, 0x5d, 0xfa, 0x3a, 0x1c, 0x59, 0x16, 0x83, 0xeb, 0xe0, - 0xff, 0xd6, 0x93, 0x30, 0x56, 0xd4, 0xcd, 0xb2, 0x66, 0x16, 0x9b, 0x03, 0x4e, 0x34, 0x5f, 0x18, - 0x8f, 0x3a, 0xf2, 0xd5, 0xa2, 0x37, 0xb8, 0xa6, 0x7e, 0x07, 0xf0, 0xf5, 0xae, 0x7f, 0xd0, 0x28, - 0x01, 0xc7, 0x73, 0xd9, 0x4d, 0x0d, 0x6f, 0x5c, 0xd6, 0x56, 0xd6, 0xf1, 0xc5, 0x85, 0x4d, 0x6d, - 0x39, 0xbb, 0xb2, 0xb0, 0xb5, 0xb6, 0x19, 0x1b, 0x42, 0x6f, 0xc2, 0x13, 0x1d, 0xba, 0x95, 0x75, - 0xac, 0x2d, 0xe1, 0xec, 0xc2, 0x66, 0x36, 0x06, 0x50, 0x12, 0x26, 0xba, 0xa8, 0x71, 0xf6, 0xf2, - 0xda, 0xc2, 0x52, 0x36, 0xe6, 0x43, 0xc7, 0xe1, 0x6b, 0x1d, 0x7a, 0x9c, 0x5d, 0x58, 0x8e, 0x05, - 0xd0, 0x69, 0x98, 0xda, 0xa7, 0x58, 0xc9, 0x62, 0xbc, 0x7a, 0x29, 0xa7, 0xad, 0x2f, 0x5e, 0xc8, - 0x2e, 0x6d, 0x6e, 0xc4, 0x82, 0x5d, 0xac, 0x16, 0xf1, 0xfa, 0xa7, 0xd9, 0x4b, 0xd2, 0x38, 0x7b, - 0x69, 0x29, 0xbb, 0x11, 0x0b, 0xcd, 0xfe, 0x1b, 0x86, 0xfe, 0x85, 0xcb, 0xab, 0xe8, 0x0f, 0x00, - 0x43, 0xf2, 0x56, 0x80, 0x06, 0xbc, 0x3e, 0x24, 0xd4, 0xbe, 0xed, 0xdd, 0x6b, 0x96, 0xd5, 0xb8, - 0x17, 0xcf, 0x14, 0xdf, 0xbd, 0x69, 0x64, 0x18, 0x31, 0x6a, 0x36, 0xa9, 0x10, 0x76, 0x35, 0x93, - 0xd7, 0x99, 0x69, 0x64, 0x6a, 0x8c, 0xd8, 0xce, 0x0b, 0x4b, 0xc6, 0xa4, 0x19, 0xcb, 0xa6, 0x37, - 0xeb, 0x99, 0x1d, 0xdb, 0xe4, 0xe4, 0xf6, 0xa3, 0xbf, 0xbe, 0xf1, 0x9d, 0x4b, 0xcf, 0xb9, 0x2f, - 0x89, 0x6a, 0xf3, 0x5c, 0x99, 0xfa, 0xa5, 0xd7, 0xa5, 0x4a, 0x53, 0xb8, 0xdb, 0xfa, 0xc2, 0xc2, - 0xe6, 0xc1, 0x14, 0x7a, 0x04, 0xa0, 0x3f, 0x47, 0x38, 0x3a, 0xdb, 0xdf, 0x35, 0x4c, 0xf2, 0x9a, - 0x1e, 0xe4, 0xce, 0x96, 0xbe, 0x71, 0xff, 0x67, 0x1f, 0x68, 0xdc, 0x8b, 0xab, 0xdd, 0x89, 0x55, - 0x68, 0xd5, 0xe4, 0xb4, 0x83, 0x9b, 0x4d, 0xf4, 0x82, 0xa0, 0x36, 0x87, 0x66, 0xbb, 0x51, 0x7b, - 0x09, 0x23, 0xa9, 0xd8, 0x45, 0xbf, 0x02, 0x18, 0x70, 0x1a, 0x0a, 0x4d, 0xf7, 0xd9, 0x77, 0x92, - 0x57, 0x66, 0xa0, 0x2e, 0x4d, 0x5f, 0x7b, 0x15, 0x62, 0x19, 0x74, 0x76, 0x00, 0x62, 0xe8, 0x1f, - 0x00, 0x8f, 0xb8, 0x37, 0x49, 0x34, 0xe8, 0x9d, 0x33, 0x31, 0xd3, 0xbf, 0x83, 0x4b, 0xed, 0x16, - 0x38, 0x58, 0x25, 0xae, 0x26, 0x96, 0x0f, 0x52, 0x89, 0x1d, 0x16, 0xbb, 0x4e, 0x65, 0xde, 0x05, - 0x30, 0x24, 0xe7, 0x58, 0x1f, 0x7d, 0xd7, 0x36, 0xf0, 0x12, 0xe3, 0x8a, 0xfc, 0x5c, 0xa1, 0x78, - 0x9f, 0x2b, 0x94, 0x6c, 0xc5, 0xe2, 0xf5, 0x74, 0xf5, 0x60, 0xa4, 0xde, 0x9f, 0x3a, 0x40, 0x0d, - 0xce, 0x83, 0xa9, 0xc4, 0xdc, 0xdd, 0x3b, 0xc0, 0xf7, 0xdb, 0x1d, 0x70, 0xa6, 0x57, 0xf8, 0xf2, - 0xaf, 0xf2, 0xf6, 0x2f, 0x71, 0x5f, 0x0c, 0x2c, 0x7e, 0x0b, 0x1e, 0x9c, 0x0f, 0x2e, 0xe1, 0xad, - 0xe5, 0xb5, 0x87, 0x4f, 0x92, 0x43, 0x8f, 0x9f, 0x24, 0x87, 0x9e, 0x3d, 0x49, 0x82, 0x5b, 0x8d, - 0x24, 0xf8, 0xb1, 0x91, 0x04, 0xf7, 0x1b, 0x49, 0xf0, 0xb0, 0x91, 0x04, 0x7f, 0x36, 0x92, 0xe0, - 0x69, 0x23, 0x39, 0xf4, 0xac, 0x91, 0x04, 0x5f, 0xef, 0x25, 0x87, 0xee, 0xee, 0x25, 0xc1, 0xc3, - 0xbd, 0xe4, 0xd0, 0xe3, 0xbd, 0xe4, 0xd0, 0x17, 0x5b, 0x25, 0x6a, 0x5d, 0x2f, 0x29, 0xdb, 0xd4, - 0xb9, 0xf3, 0xd9, 0xba, 0x52, 0x63, 0xaa, 0x78, 0x70, 0x5e, 0x5c, 0x1c, 0x7a, 0xdb, 0x66, 0x81, - 0xd8, 0x19, 0x4f, 0xad, 0x5a, 0xf9, 0x12, 0x55, 0xc9, 0x4d, 0xee, 0x7e, 0xad, 0x78, 0xd9, 0x17, - 0x8e, 0x7c, 0x48, 0xe4, 0xf3, 0x9d, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x9e, 0xdf, 0xe2, 0x6b, - 0xb2, 0x12, 0x00, 0x00, + // 1580 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6c, 0x1b, 0xc5, + 0x1a, 0xcf, 0xf8, 0x5f, 0xed, 0x71, 0xfe, 0xb8, 0xf3, 0xfa, 0x52, 0xd7, 0x2f, 0xcf, 0xf5, 0x73, + 0xab, 0x2a, 0x4a, 0xe3, 0xdd, 0xbc, 0xbc, 0x3c, 0xa0, 0x11, 0x14, 0xf2, 0xc7, 0xb1, 0xd2, 0xa6, + 0x4d, 0xd8, 0x24, 0x15, 0xe2, 0xb2, 0x5a, 0xef, 0x8e, 0xdd, 0xa5, 0xb6, 0x77, 0x99, 0x19, 0x3b, + 0xb5, 0x50, 0x24, 0xd4, 0x1b, 0xe2, 0x8f, 0x10, 0x48, 0x20, 0x71, 0x80, 0x13, 0x12, 0x57, 0x6e, + 0x48, 0xbd, 0xf4, 0x46, 0xd5, 0x03, 0xaa, 0xe8, 0x81, 0xde, 0xa0, 0x0e, 0x48, 0x3d, 0x96, 0x03, + 0x17, 0xa4, 0x4a, 0x68, 0x67, 0x76, 0x5d, 0xdb, 0x71, 0x6b, 0x3b, 0xa4, 0x27, 0xef, 0x7c, 0x7f, + 0x7e, 0xf3, 0xfd, 0xbe, 0xf9, 0xbe, 0x6f, 0xc7, 0x0b, 0xe7, 0x6a, 0x98, 0x4a, 0xa6, 0x25, 0x53, + 0xfd, 0x2a, 0x2e, 0x6b, 0x72, 0xcd, 0xc4, 0x3b, 0x54, 0xb6, 0x88, 0x59, 0x34, 0x2b, 0xaa, 0x6d, + 0x59, 0x25, 0xd9, 0xae, 0xe6, 0x4b, 0xa6, 0xae, 0xea, 0xa4, 0x6a, 0x68, 0xb6, 0x29, 0xd9, 0xc4, + 0x62, 0x16, 0x3a, 0x29, 0xbc, 0x24, 0xe1, 0x25, 0x71, 0x2f, 0xa9, 0xc5, 0x2b, 0x91, 0x29, 0x9a, + 0xec, 0x6a, 0x35, 0x2f, 0xe9, 0x56, 0x59, 0x2e, 0x5a, 0x45, 0x4b, 0xe6, 0x7e, 0xf9, 0x6a, 0x81, + 0xaf, 0xf8, 0x82, 0x3f, 0x09, 0xbc, 0xc4, 0x44, 0xd1, 0xb2, 0x8a, 0x25, 0x2c, 0x6b, 0xb6, 0x29, + 0x6b, 0x95, 0x8a, 0xc5, 0x34, 0x66, 0x5a, 0x15, 0xea, 0x6a, 0xff, 0xe5, 0x6a, 0x9b, 0x18, 0xb8, + 0x6c, 0xb3, 0xba, 0xab, 0x4c, 0xb4, 0x13, 0xc0, 0x84, 0x58, 0xa4, 0xe9, 0xd8, 0xae, 0xb3, 0xec, + 0x56, 0xd4, 0x13, 0xed, 0x4a, 0x56, 0xb7, 0xb1, 0xa7, 0x9a, 0xe8, 0x48, 0x8a, 0x56, 0x32, 0x0d, + 0x8d, 0x61, 0x57, 0x9b, 0xee, 0xd0, 0x62, 0x8a, 0x2b, 0xb5, 0x0e, 0xf0, 0xd4, 0xfe, 0xb4, 0xaa, + 0xed, 0x16, 0xd3, 0xbd, 0x12, 0x6f, 0xe5, 0xdf, 0xc2, 0x3a, 0x73, 0xad, 0xcf, 0xf6, 0xb2, 0x6e, + 0x0d, 0xff, 0x64, 0x37, 0xe3, 0x16, 0x83, 0xf4, 0xb7, 0x00, 0x8e, 0x2c, 0x11, 0xac, 0x31, 0xac, + 0xe0, 0xb7, 0xab, 0x98, 0x32, 0xf4, 0x2a, 0x0c, 0x97, 0x31, 0xd3, 0x0c, 0x8d, 0x69, 0x71, 0x90, + 0x02, 0x93, 0xd1, 0xd9, 0x53, 0x52, 0xfb, 0x19, 0xaf, 0xf3, 0x70, 0x84, 0xd7, 0x25, 0xcc, 0xb4, + 0xad, 0xba, 0x8d, 0x95, 0xa6, 0x13, 0xda, 0x82, 0x01, 0x6a, 0x63, 0x3d, 0xee, 0xe3, 0xce, 0xb2, + 0xd4, 0xa3, 0x40, 0x24, 0x01, 0xb4, 0x69, 0x63, 0xdd, 0x01, 0x5a, 0x1c, 0xfb, 0x62, 0x77, 0xd8, + 0xf1, 0x97, 0x8a, 0xba, 0xea, 0xfc, 0x2a, 0x1c, 0x6d, 0x3e, 0x72, 0xe7, 0x7c, 0x48, 0x6c, 0x9c, + 0x7e, 0x0c, 0xe0, 0xa8, 0x17, 0x33, 0xb5, 0xad, 0x0a, 0xc5, 0xe8, 0xe5, 0x7d, 0x41, 0xa7, 0xba, + 0x06, 0x9d, 0xc3, 0xac, 0x4b, 0xc4, 0xeb, 0x70, 0x8c, 0xd6, 0x29, 0xc3, 0x65, 0xb5, 0x09, 0xe2, + 0xe7, 0x20, 0x67, 0x3a, 0x40, 0x36, 0xb9, 0xd5, 0x7e, 0xa8, 0x51, 0xe1, 0x7e, 0xc9, 0x03, 0x7c, + 0xbd, 0x2d, 0x05, 0xd3, 0x3d, 0x53, 0x90, 0xc3, 0x6c, 0x00, 0xfe, 0xbf, 0x01, 0x38, 0xaa, 0x60, + 0xbb, 0xa4, 0xe9, 0xcd, 0x43, 0x7b, 0x6d, 0x1f, 0xff, 0xd3, 0x5d, 0xf9, 0xbb, 0x6e, 0x5d, 0x72, + 0xb0, 0xdd, 0x16, 0xf2, 0x4c, 0xcf, 0x90, 0x5d, 0xa4, 0x1e, 0x61, 0x23, 0x19, 0xc6, 0x08, 0xa6, + 0x56, 0x95, 0xe8, 0x58, 0xad, 0x61, 0x42, 0x4d, 0xab, 0xc2, 0x73, 0x1b, 0x59, 0x0c, 0x3c, 0xbc, + 0x09, 0x80, 0x32, 0xe6, 0x69, 0xaf, 0x08, 0x65, 0x2b, 0xcf, 0xa3, 0x70, 0xac, 0x49, 0x53, 0x9c, + 0x73, 0xfa, 0x2b, 0x00, 0x61, 0x0e, 0x33, 0x8f, 0xf6, 0x04, 0x8c, 0x54, 0xb4, 0x32, 0xa6, 0xb6, + 0xa6, 0x63, 0xce, 0x3b, 0xa2, 0x3c, 0x11, 0x20, 0x04, 0x03, 0xce, 0x82, 0x53, 0x8a, 0x28, 0xfc, + 0x19, 0xa9, 0xd0, 0xd9, 0x91, 0x83, 0xa9, 0x05, 0x8b, 0x94, 0x35, 0xc6, 0xc3, 0x19, 0x9d, 0x7d, + 0xa1, 0x9f, 0x43, 0xf2, 0xe2, 0x58, 0xe1, 0x9e, 0x4b, 0x96, 0x81, 0x95, 0x51, 0xd2, 0x26, 0x4b, + 0xdf, 0x0b, 0xc2, 0x68, 0x8b, 0x25, 0x5a, 0x87, 0x51, 0x9d, 0xd7, 0x2a, 0xdf, 0xce, 0x4d, 0xaf, + 0xd4, 0x67, 0x53, 0xb8, 0x3c, 0x15, 0x28, 0x20, 0x9c, 0x2d, 0x90, 0x02, 0x87, 0x89, 0xc8, 0x8a, + 0x40, 0xf4, 0xf7, 0xd9, 0x66, 0xed, 0x15, 0xa3, 0x44, 0x5d, 0x10, 0x8e, 0xd9, 0xed, 0x94, 0x02, + 0xcf, 0x38, 0xa5, 0xb6, 0x7e, 0x0b, 0x1e, 0x46, 0xbf, 0x1d, 0x39, 0x94, 0x7e, 0x0b, 0x1d, 0x5a, + 0xbf, 0xa1, 0x55, 0x78, 0x94, 0xe0, 0x02, 0x26, 0xc4, 0xac, 0x14, 0x55, 0x31, 0x80, 0x69, 0x3c, + 0x9c, 0xf2, 0x4f, 0x46, 0x67, 0x27, 0x9e, 0xd2, 0x5a, 0x05, 0x1e, 0x5b, 0xac, 0xe9, 0x26, 0xe4, + 0x14, 0x5d, 0x81, 0x71, 0x03, 0x97, 0x30, 0xc3, 0x86, 0x2a, 0x74, 0xd8, 0x68, 0x22, 0x46, 0xfa, + 0x40, 0x1c, 0x77, 0xbd, 0x15, 0xd7, 0xd9, 0xc3, 0x7d, 0x03, 0x9e, 0x30, 0x4c, 0xaa, 0xe5, 0x4b, + 0xdd, 0x80, 0x61, 0x1f, 0xc0, 0xc7, 0x3d, 0xf7, 0x0e, 0xe4, 0x96, 0x26, 0xbc, 0x10, 0x08, 0x83, + 0x98, 0x2f, 0xfd, 0x35, 0x80, 0xd1, 0x35, 0x93, 0xf6, 0xd9, 0x78, 0xff, 0x81, 0xc3, 0x25, 0x2d, + 0x8f, 0x4b, 0x6a, 0xc1, 0x2c, 0x31, 0x4c, 0xdc, 0x06, 0x8c, 0x72, 0xd9, 0x0a, 0x17, 0xa1, 0x53, + 0x70, 0x84, 0x60, 0xdb, 0x22, 0x4c, 0x2d, 0x98, 0xb8, 0x64, 0xd0, 0xb8, 0x3f, 0xe5, 0x9f, 0x8c, + 0x28, 0xc3, 0x42, 0xb8, 0xc2, 0x65, 0x68, 0x06, 0x1e, 0x73, 0x8d, 0x28, 0xd3, 0x58, 0x95, 0x7a, + 0xb6, 0x01, 0x6e, 0x8b, 0x84, 0x6e, 0x93, 0xab, 0x84, 0x47, 0xfa, 0x71, 0x10, 0xc6, 0x44, 0x9c, + 0xa2, 0xfd, 0x56, 0x19, 0x2e, 0xa3, 0x71, 0x18, 0x62, 0xb8, 0xa2, 0x55, 0x18, 0xaf, 0x8f, 0x88, + 0xe2, 0xae, 0x0e, 0x30, 0x3d, 0x62, 0xd0, 0x5f, 0x35, 0x0d, 0x31, 0xc0, 0x14, 0xe7, 0x11, 0xa5, + 0x60, 0xd4, 0xc0, 0x54, 0x27, 0x26, 0x7f, 0xa3, 0xc7, 0xa3, 0x82, 0x69, 0x8b, 0x08, 0x25, 0x60, + 0xd8, 0x4b, 0x73, 0x7c, 0x38, 0x05, 0x26, 0xc3, 0x4a, 0x73, 0x8d, 0xb6, 0x61, 0x88, 0x27, 0x45, + 0x50, 0x8a, 0xce, 0xbe, 0xd2, 0xb3, 0x72, 0x3b, 0xc9, 0x49, 0x6b, 0xdc, 0x3f, 0x5b, 0x61, 0xa4, + 0xae, 0xb8, 0x60, 0xc8, 0x80, 0xd1, 0x96, 0xab, 0x93, 0x5b, 0x0a, 0x8b, 0x83, 0x63, 0x2f, 0x3c, + 0x01, 0x11, 0x1b, 0xb4, 0xc2, 0xa2, 0x73, 0x10, 0x5a, 0x3b, 0x15, 0x4c, 0x54, 0x07, 0x29, 0x1e, + 0xe1, 0xad, 0x97, 0xe8, 0xd8, 0xe4, 0x8a, 0x89, 0x77, 0xbc, 0x6a, 0x8b, 0x70, 0x6b, 0x47, 0xd2, + 0x36, 0x3e, 0x46, 0x0e, 0x63, 0x7c, 0x8c, 0xfe, 0xad, 0xf1, 0x91, 0x83, 0xe1, 0x22, 0x66, 0xbc, + 0xfb, 0xdd, 0x41, 0x34, 0xd0, 0x08, 0x51, 0x8e, 0x14, 0xc5, 0x22, 0x71, 0x0e, 0x46, 0x5b, 0xce, + 0xc3, 0x29, 0x97, 0x6b, 0xb8, 0xee, 0x96, 0x96, 0xf3, 0x88, 0x8e, 0xc1, 0x60, 0x4d, 0x2b, 0x55, + 0xbd, 0xaa, 0x12, 0x8b, 0x79, 0xdf, 0x4b, 0x20, 0x71, 0x1e, 0xc6, 0x3a, 0xd3, 0x3d, 0x88, 0xff, + 0x85, 0x40, 0x38, 0x18, 0x0b, 0xa5, 0xdf, 0x03, 0x70, 0xb8, 0xf5, 0x18, 0x51, 0x0e, 0x06, 0x4d, + 0x86, 0xcb, 0x34, 0x0e, 0x78, 0x11, 0xfc, 0x77, 0xe0, 0x22, 0x50, 0x84, 0x3f, 0x9a, 0x81, 0x21, + 0x71, 0xa1, 0x8e, 0xfb, 0x38, 0x52, 0xbc, 0x03, 0x29, 0xeb, 0x28, 0x79, 0x36, 0x5c, 0xbb, 0xf4, + 0x35, 0x38, 0xb2, 0xcc, 0x07, 0xd7, 0xc1, 0xdf, 0xd6, 0x93, 0x30, 0x56, 0xd0, 0xcc, 0x92, 0x6a, + 0x16, 0x9a, 0x03, 0x8e, 0x37, 0x5f, 0x58, 0x19, 0x75, 0xe4, 0xab, 0x05, 0x6f, 0x70, 0x4d, 0xfd, + 0x04, 0xe0, 0x3f, 0xbb, 0xbe, 0xa0, 0x51, 0x02, 0x8e, 0xe7, 0xb2, 0x5b, 0xaa, 0xb2, 0xb9, 0xa1, + 0xae, 0xac, 0x2b, 0x97, 0x16, 0xb6, 0xd4, 0xe5, 0xec, 0xca, 0xc2, 0xf6, 0xda, 0x56, 0x6c, 0x08, + 0xfd, 0x1b, 0x9e, 0xe8, 0xd0, 0xad, 0xac, 0x2b, 0xea, 0x92, 0x92, 0x5d, 0xd8, 0xca, 0xc6, 0x00, + 0x4a, 0xc2, 0x44, 0x17, 0xb5, 0x92, 0xdd, 0x58, 0x5b, 0x58, 0xca, 0xc6, 0x7c, 0xe8, 0x38, 0xfc, + 0x47, 0x87, 0x5e, 0xc9, 0x2e, 0x2c, 0xc7, 0x02, 0xe8, 0x34, 0x4c, 0xed, 0x53, 0xac, 0x64, 0x15, + 0x65, 0xf5, 0x72, 0x4e, 0x5d, 0x5f, 0xbc, 0x90, 0x5d, 0xda, 0xda, 0x8c, 0x05, 0xbb, 0x58, 0x2d, + 0x2a, 0xeb, 0x17, 0xb3, 0x97, 0x85, 0x71, 0xf6, 0xf2, 0x52, 0x76, 0x33, 0x16, 0x9a, 0xfd, 0x0c, + 0x42, 0xff, 0xc2, 0xc6, 0x2a, 0xfa, 0x13, 0xc0, 0x90, 0xb8, 0x15, 0xa0, 0x01, 0xaf, 0x0f, 0x09, + 0xb9, 0x6f, 0x7b, 0xf7, 0x9a, 0xf5, 0x11, 0x68, 0x7c, 0x1f, 0xbf, 0x58, 0xf8, 0xff, 0x75, 0x3d, + 0x43, 0xb1, 0x5e, 0x25, 0xb8, 0x8c, 0xe9, 0xd5, 0x4c, 0x5e, 0xa3, 0xa6, 0x9e, 0xa9, 0x52, 0x4c, + 0xa6, 0x3b, 0x55, 0x94, 0x69, 0x15, 0x43, 0x23, 0x86, 0xd0, 0xd6, 0x30, 0xcd, 0x98, 0x56, 0xc6, + 0x26, 0xd6, 0xf5, 0x7a, 0x66, 0x87, 0x98, 0x0c, 0xdf, 0xb8, 0xf7, 0xeb, 0xa7, 0xbe, 0x73, 0xe9, + 0x39, 0xf7, 0x3f, 0xa4, 0xdc, 0x3c, 0x76, 0x2a, 0xbf, 0xe3, 0x35, 0xb1, 0xd4, 0x14, 0xee, 0xb6, + 0xfe, 0x9f, 0xa1, 0xf3, 0x60, 0x0a, 0xfd, 0x01, 0xa0, 0x3f, 0x87, 0x19, 0x3a, 0xdb, 0xdf, 0x2d, + 0x4d, 0xd0, 0x9e, 0x1e, 0xe4, 0x4a, 0x97, 0xfe, 0x04, 0xdc, 0xfe, 0xce, 0xe7, 0xf0, 0xde, 0xe8, + 0xce, 0xbb, 0x6c, 0x55, 0x4c, 0x66, 0x3d, 0x83, 0xba, 0x67, 0xd0, 0xc6, 0x9e, 0x60, 0xcd, 0xe0, + 0xe4, 0xe7, 0xd0, 0x6c, 0x37, 0xf2, 0x4f, 0xe1, 0x2c, 0x14, 0xbb, 0xe8, 0x77, 0x00, 0x03, 0x4e, + 0x47, 0xa2, 0xe9, 0x3e, 0x1b, 0x57, 0x30, 0xcf, 0x0c, 0xd4, 0xe6, 0xe9, 0xf7, 0x9f, 0x2f, 0xf5, + 0x0c, 0x3a, 0x3b, 0x00, 0x75, 0xf4, 0xa1, 0x0f, 0x1e, 0x71, 0x2f, 0xab, 0x68, 0xd0, 0x6b, 0x6d, + 0x62, 0xa6, 0x7f, 0x07, 0x97, 0xfc, 0x97, 0xcf, 0xa5, 0xd6, 0x57, 0x13, 0xcb, 0x07, 0xa9, 0xf5, + 0x0e, 0x8b, 0x5d, 0xa7, 0xf6, 0x7f, 0x06, 0x30, 0x24, 0x06, 0x69, 0x1f, 0x8d, 0xdf, 0x36, 0x71, + 0x13, 0xe3, 0x92, 0xf8, 0x5e, 0x22, 0x79, 0xdf, 0x4b, 0xa4, 0x6c, 0xd9, 0x66, 0xf5, 0xf4, 0x07, + 0xcf, 0x85, 0xf3, 0x8b, 0x53, 0x07, 0x28, 0xf1, 0x79, 0x30, 0x95, 0x98, 0xbb, 0x75, 0x13, 0xf8, + 0x7e, 0xbc, 0x09, 0xce, 0xf4, 0x62, 0x27, 0x5e, 0xe5, 0x37, 0x7e, 0x88, 0xfb, 0x62, 0x60, 0xf1, + 0x73, 0x70, 0xe7, 0x7c, 0x70, 0x49, 0xd9, 0x5e, 0x5e, 0xbb, 0xfb, 0x20, 0x39, 0x74, 0xff, 0x41, + 0x72, 0xe8, 0xd1, 0x83, 0x24, 0x78, 0xb7, 0x91, 0x04, 0xdf, 0x34, 0x92, 0xe0, 0x76, 0x23, 0x09, + 0xee, 0x36, 0x92, 0xe0, 0x97, 0x46, 0x12, 0x3c, 0x6c, 0x24, 0x87, 0x1e, 0x35, 0x92, 0xe0, 0xe3, + 0xbd, 0xe4, 0xd0, 0xad, 0xbd, 0x24, 0xb8, 0xbb, 0x97, 0x1c, 0xba, 0xbf, 0x97, 0x1c, 0x7a, 0x73, + 0xbb, 0x68, 0xd9, 0xd7, 0x8a, 0x52, 0xcd, 0x72, 0xee, 0xa4, 0x44, 0x93, 0xaa, 0x54, 0xe6, 0x0f, + 0xce, 0x1f, 0x2b, 0x87, 0x5e, 0xcd, 0x34, 0x30, 0xc9, 0x78, 0x6a, 0xd9, 0xce, 0x17, 0x2d, 0x19, + 0x5f, 0x67, 0xee, 0xd7, 0x94, 0xa7, 0x7d, 0x81, 0xc9, 0x87, 0x78, 0xba, 0xff, 0xf7, 0x57, 0x00, + 0x00, 0x00, 0xff, 0xff, 0xc3, 0x77, 0xe3, 0x9e, 0x52, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/origin_pool/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/origin_pool/public_crudapi.vesapi.go index 7cb40d22e..61dc7b943 100644 --- a/pbgo/extschema/schema/views/origin_pool/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/origin_pool/public_crudapi.vesapi.go @@ -2251,6 +2251,21 @@ var APISwaggerJSON string = `{ } } }, + "clusterHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for upstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.cluster.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to the upstream request headers and when a\n Stateful formatter is selected, it applies to response headers sent to the client.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on http load balancer. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "clusterHttp2ProtocolOptions": { "type": "object", "description": "Http2 Protocol options for upstream connections", @@ -2673,9 +2688,10 @@ var APISwaggerJSON string = `{ "x-displayname": "Origin Pool Advanced Options", "x-ves-oneof-field-circuit_breaker_choice": "[\"circuit_breaker\",\"default_circuit_breaker\",\"disable_circuit_breaker\"]", "x-ves-oneof-field-http_protocol_type": "[\"auto_http_config\",\"http1_config\",\"http2_options\"]", - "x-ves-oneof-field-lb_source_ip_persistance_choice": "[]", + "x-ves-oneof-field-lb_source_ip_persistance_choice": "[\"disable_lb_source_ip_persistance\",\"enable_lb_source_ip_persistance\"]", "x-ves-oneof-field-outlier_detection_choice": "[\"disable_outlier_detection\",\"outlier_detection\"]", "x-ves-oneof-field-panic_threshold_type": "[\"no_panic_threshold\",\"panic_threshold\"]", + "x-ves-oneof-field-proxy_protocol_choice": "[\"disable_proxy_protocol\",\"proxy_protocol_v1\",\"proxy_protocol_v2\"]", "x-ves-oneof-field-subset_choice": "[\"disable_subsets\",\"enable_subsets\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginPoolAdvancedOptions", "properties": { @@ -2714,34 +2730,46 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Circuit Breaker" }, + "disable_lb_source_ip_persistance": { + "description": "Exclusive with [enable_lb_source_ip_persistance]\n Disable LB source IP persistence", + "title": "disable_lb_source_ip_persistence", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable LB Source IP persistence" + }, "disable_outlier_detection": { "description": "Exclusive with [outlier_detection]\n Outlier detection is disabled", "title": "Disable Outlier Detection", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Outlier Detection" }, + "disable_proxy_protocol": { + "description": "Exclusive with [proxy_protocol_v1 proxy_protocol_v2]\n Disable Proxy Protocol for upstream connections", + "title": "Disable Proxy Protocol", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Proxy Protocol" + }, "disable_subsets": { "description": "Exclusive with [enable_subsets]\n Subset load balancing is disabled. All eligible origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Disabled", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Disable Subset Load Balancing" }, + "enable_lb_source_ip_persistance": { + "description": "Exclusive with [disable_lb_source_ip_persistance]\n Enable LB source IP persistence", + "title": "enable_lb_source_ip_persistence", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable LB Source IP persistence" + }, "enable_subsets": { "description": "Exclusive with [disable_subsets]\n Subset load balancing is enabled. Based on route, subset of origin servers will be considered for load balancing.", "title": "Subset Load Balancing is Enable", "$ref": "#/definitions/origin_poolOriginPoolSubsets", "x-displayname": "Enable Subset Load Balancing" }, - "header_transformation_type": { - "description": " Settings to normalize the headers of upstream requests.", - "title": "Header transformation", - "$ref": "#/definitions/schemaHeaderTransformationType", - "x-displayname": "Header Transformation Configuration" - }, "http1_config": { "description": "Exclusive with [auto_http_config http2_options]\n Enable HTTP/1.1 for upstream connections", "title": "http1_config", - "$ref": "#/definitions/ioschemaEmpty", + "$ref": "#/definitions/clusterHttp1ProtocolOptions", "x-displayname": "HTTP/1.1" }, "http2_options": { @@ -2782,6 +2810,18 @@ var APISwaggerJSON string = `{ "x-ves-validation-rules": { "ves.io.schema.rules.uint32.lte": "100" } + }, + "proxy_protocol_v1": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v2]\n Enable Proxy Protocol Version 1 for upstream connections", + "title": "Proxy Protocol V1", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V1" + }, + "proxy_protocol_v2": { + "description": "Exclusive with [disable_proxy_protocol proxy_protocol_v1]\n Enable Proxy Protocol Version 2 for upstream connections", + "title": "Proxy Protocol V2", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proxy Protocol V2" } } }, @@ -2967,12 +3007,12 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateIP", "x-displayname": "IP address on given Sites", "x-ves-displayorder": "10,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-oneof-field-private_ip_choice": "[\"ip\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateIP", "properties": { "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Inside Network" @@ -2998,11 +3038,21 @@ var APISwaggerJSON string = `{ } }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Outside Network" }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -3021,7 +3071,7 @@ var APISwaggerJSON string = `{ "title": "OriginServerPrivateName", "x-displayname": "DNS Name on given Sites", "x-ves-displayorder": "1,6,2,3", - "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\"]", + "x-ves-oneof-field-network_choice": "[\"inside_network\",\"outside_network\",\"segment\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerPrivateName", "properties": { "dns_name": { @@ -3036,13 +3086,13 @@ var APISwaggerJSON string = `{ } }, "inside_network": { - "description": "Exclusive with [outside_network]\n Inside network on the site", + "description": "Exclusive with [outside_network segment]\n Inside network on the site", "title": "Inside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Inside Network" }, "outside_network": { - "description": "Exclusive with [inside_network]\n Outside network on the site", + "description": "Exclusive with [inside_network segment]\n Outside network on the site", "title": "Outside Network", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Outside Network" @@ -3058,6 +3108,16 @@ var APISwaggerJSON string = `{ "ves.io.schema.rules.uint32.lte": "604800" } }, + "segment": { + "description": "Exclusive with [inside_network outside_network]\n Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, "site_locator": { "description": " Site or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", "title": "Site Locator", @@ -3138,131 +3198,28 @@ var APISwaggerJSON string = `{ } } }, - "origin_poolOriginServerSegmentIP": { - "type": "object", - "description": "Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site", - "x-ves-displayorder": "1,4,5", - "x-ves-oneof-field-ip_choice": "[\"ip\"]", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentIP", - "properties": { - "ip": { - "type": "string", - "description": "Exclusive with []\n Private IPV4 address\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", - "title": "IP", - "x-displayname": "IP", - "x-ves-example": "8.8.8.8", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv4": "true" - } - }, - "ipv6": { - "type": "string", - "description": " Private IPV6 address\n\nExample: - \"2001::10\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", - "title": "IP6", - "x-displayname": "IP6", - "x-ves-example": "2001::10", - "x-ves-validation-rules": { - "ves.io.schema.rules.string.ipv6": "true" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud Edge or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, - "origin_poolOriginServerSegmentName": { - "type": "object", - "description": "Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites", - "x-ves-displayorder": "1,2,3,4", - "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerSegmentName", - "properties": { - "dns_name": { - "type": "string", - "description": " DNS Name\n\nExample: - \"value\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "DNS name", - "x-displayname": "DNS Name", - "x-ves-example": "value", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "refresh_interval": { - "type": "integer", - "description": " Interval for DNS refresh in seconds.\n Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767\n\nExample: - \"20\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.lte: 604800\n", - "title": "refresh_interval", - "format": "int64", - "x-displayname": "DNS Refresh interval", - "x-ves-example": "20", - "x-ves-validation-rules": { - "ves.io.schema.rules.uint32.lte": "604800" - } - }, - "segment": { - "description": " Segment where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Segment", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Segment", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - }, - "site_locator": { - "description": " Site or Cloud RE Region or Virtual site where this origin server is located\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Site Locator", - "$ref": "#/definitions/viewsSiteRegionLocator", - "x-displayname": "Site or Cloud RE Region or Virtual Site", - "x-ves-required": "true", - "x-ves-validation-rules": { - "ves.io.schema.rules.message.required": "true" - } - } - } - }, "origin_poolOriginServerType": { "type": "object", "description": "Various options to specify origin server", "title": "OriginServerType", "x-displayname": "Origin Server", - "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"segment_ip\",\"segment_name\",\"vn_private_ip\",\"vn_private_name\"]", + "x-ves-oneof-field-choice": "[\"consul_service\",\"custom_endpoint_object\",\"k8s_service\",\"private_ip\",\"private_name\",\"public_ip\",\"public_name\",\"vn_private_ip\",\"vn_private_name\"]", "x-ves-proto-message": "ves.io.schema.views.origin_pool.OriginServerType", "properties": { "consul_service": { - "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", + "description": "Exclusive with [custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with Hashi Corp Consul service name and site information", "title": "OriginServerConsulService", "$ref": "#/definitions/origin_poolOriginServerConsulService", "x-displayname": "Consul Service Name of Origin Server on given Sites" }, "custom_endpoint_object": { - "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", + "description": "Exclusive with [consul_service k8s_service private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with a reference to endpoint object", "title": "OriginServerCustomEndpoint", "$ref": "#/definitions/origin_poolOriginServerCustomEndpoint", "x-displayname": "Custom Endpoint Object for Origin Server" }, "k8s_service": { - "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object private_ip private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with K8s service name and site information", "title": "OriginServerK8SService", "$ref": "#/definitions/origin_poolOriginServerK8SService", "x-displayname": "K8s Service Name of Origin Server on given Sites" @@ -3275,49 +3232,37 @@ var APISwaggerJSON string = `{ "x-ves-example": "value" }, "private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_name public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public IP address and site information", "title": "OriginServerPrivateIP", "$ref": "#/definitions/origin_poolOriginServerPrivateIP", "x-displayname": "IP address of Origin Server on given Sites" }, "private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip public_ip public_name vn_private_ip vn_private_name]\n Specify origin server with private or public DNS name and site information", "title": "OriginServerPrivateName", "$ref": "#/definitions/origin_poolOriginServerPrivateName", "x-displayname": "DNS Name of Origin Server on given Sites" }, "public_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public IP", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_name vn_private_ip vn_private_name]\n Specify origin server with public IP", "title": "OriginServerPublicIP", "$ref": "#/definitions/origin_poolOriginServerPublicIP", "x-displayname": "Public IP of Origin Server" }, "public_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip segment_ip segment_name vn_private_ip vn_private_name]\n Specify origin server with public DNS name", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip vn_private_ip vn_private_name]\n Specify origin server with public DNS name", "title": "OriginServerPublicName", "$ref": "#/definitions/origin_poolOriginServerPublicName", "x-displayname": "Public DNS Name of Origin Server" }, - "segment_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_name vn_private_ip vn_private_name]\n Specify origin server with IP address in a Segment on given Site", - "title": "OriginServerSegmentIP", - "$ref": "#/definitions/origin_poolOriginServerSegmentIP", - "x-displayname": "IP address of Origin server in Segment on given Site" - }, - "segment_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip vn_private_ip vn_private_name]\n Specify origin server with DNS name in Segment on given Site", - "title": "OriginServerSegmentName", - "$ref": "#/definitions/origin_poolOriginServerSegmentName", - "x-displayname": "DNS Name of Origin Server in Segment on given Sites" - }, "vn_private_ip": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_name]\n Specify origin server IP address on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkIP", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkIP", "x-displayname": "IP address on Virtual Network" }, "vn_private_name": { - "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name segment_ip segment_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", + "description": "Exclusive with [consul_service custom_endpoint_object k8s_service private_ip private_name public_ip public_name vn_private_ip]\n Specify origin server name on virtual network other than inside or outside network", "title": "OriginServerVirtualNetworkName", "$ref": "#/definitions/origin_poolOriginServerVirtualNetworkName", "x-displayname": "Name on Virtual Network" @@ -3734,23 +3679,29 @@ var APISwaggerJSON string = `{ "title": "HeaderTransformationType", "x-displayname": "Header Transformation", "x-ves-displayorder": "1", - "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "Exclusive with [preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Default" }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Legacy" + }, "preserve_case_header_transformation": { - "description": "Exclusive with [default_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "Exclusive with [default_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Proper Case" @@ -3832,10 +3783,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3892,10 +3847,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3954,10 +3913,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4426,34 +4389,6 @@ var APISwaggerJSON string = `{ } } }, - "viewsSiteRegionLocator": { - "type": "object", - "description": "This message defines reference to site or virtual site or a cloud-re-region object", - "title": "SiteRegionLocator", - "x-displayname": "Select Site or Virtual Site or Cloud Edge", - "x-ves-oneof-field-choice": "[\"cloud_re_region\",\"site\",\"virtual_site\"]", - "x-ves-proto-message": "ves.io.schema.views.SiteRegionLocator", - "properties": { - "cloud_re_region": { - "description": "Exclusive with [site virtual_site]\n Reference to a Cloud Edge", - "title": "Cloud Edge", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Cloud Edge" - }, - "site": { - "description": "Exclusive with [cloud_re_region virtual_site]\n Reference to site object", - "title": "site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Site" - }, - "virtual_site": { - "description": "Exclusive with [cloud_re_region site]\n Reference to virtual site object", - "title": "Virtual Site", - "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Site" - } - } - }, "viewsTlsConfig": { "type": "object", "description": "This defines various options to configure TLS configuration parameters", diff --git a/pbgo/extschema/schema/views/origin_pool/types.pb.go b/pbgo/extschema/schema/views/origin_pool/types.pb.go index ea6ab97d6..5a79f2dd1 100644 --- a/pbgo/extschema/schema/views/origin_pool/types.pb.go +++ b/pbgo/extschema/schema/views/origin_pool/types.pb.go @@ -215,6 +215,7 @@ type OriginServerPrivateIP struct { // Types that are valid to be assigned to NetworkChoice: // *OriginServerPrivateIP_InsideNetwork // *OriginServerPrivateIP_OutsideNetwork + // *OriginServerPrivateIP_Segment NetworkChoice isOriginServerPrivateIP_NetworkChoice `protobuf_oneof:"network_choice"` } @@ -271,11 +272,15 @@ type OriginServerPrivateIP_InsideNetwork struct { type OriginServerPrivateIP_OutsideNetwork struct { OutsideNetwork *schema.Empty `protobuf:"bytes,5,opt,name=outside_network,json=outsideNetwork,proto3,oneof" json:"outside_network,omitempty"` } +type OriginServerPrivateIP_Segment struct { + Segment *views.ObjectRefType `protobuf:"bytes,6,opt,name=segment,proto3,oneof" json:"segment,omitempty"` +} func (*OriginServerPrivateIP_Ip) isOriginServerPrivateIP_PrivateIpChoice() {} func (*OriginServerPrivateIP_Ipv6) isOriginServerPrivateIP_PrivateIpChoice() {} func (*OriginServerPrivateIP_InsideNetwork) isOriginServerPrivateIP_NetworkChoice() {} func (*OriginServerPrivateIP_OutsideNetwork) isOriginServerPrivateIP_NetworkChoice() {} +func (*OriginServerPrivateIP_Segment) isOriginServerPrivateIP_NetworkChoice() {} func (m *OriginServerPrivateIP) GetPrivateIpChoice() isOriginServerPrivateIP_PrivateIpChoice { if m != nil { @@ -325,6 +330,13 @@ func (m *OriginServerPrivateIP) GetOutsideNetwork() *schema.Empty { return nil } +func (m *OriginServerPrivateIP) GetSegment() *views.ObjectRefType { + if x, ok := m.GetNetworkChoice().(*OriginServerPrivateIP_Segment); ok { + return x.Segment + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OriginServerPrivateIP) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -332,6 +344,7 @@ func (*OriginServerPrivateIP) XXX_OneofWrappers() []interface{} { (*OriginServerPrivateIP_Ipv6)(nil), (*OriginServerPrivateIP_InsideNetwork)(nil), (*OriginServerPrivateIP_OutsideNetwork)(nil), + (*OriginServerPrivateIP_Segment)(nil), } } @@ -369,6 +382,7 @@ type OriginServerPrivateName struct { // Types that are valid to be assigned to NetworkChoice: // *OriginServerPrivateName_InsideNetwork // *OriginServerPrivateName_OutsideNetwork + // *OriginServerPrivateName_Segment NetworkChoice isOriginServerPrivateName_NetworkChoice `protobuf_oneof:"network_choice"` } @@ -413,9 +427,13 @@ type OriginServerPrivateName_InsideNetwork struct { type OriginServerPrivateName_OutsideNetwork struct { OutsideNetwork *schema.Empty `protobuf:"bytes,5,opt,name=outside_network,json=outsideNetwork,proto3,oneof" json:"outside_network,omitempty"` } +type OriginServerPrivateName_Segment struct { + Segment *views.ObjectRefType `protobuf:"bytes,7,opt,name=segment,proto3,oneof" json:"segment,omitempty"` +} func (*OriginServerPrivateName_InsideNetwork) isOriginServerPrivateName_NetworkChoice() {} func (*OriginServerPrivateName_OutsideNetwork) isOriginServerPrivateName_NetworkChoice() {} +func (*OriginServerPrivateName_Segment) isOriginServerPrivateName_NetworkChoice() {} func (m *OriginServerPrivateName) GetNetworkChoice() isOriginServerPrivateName_NetworkChoice { if m != nil { @@ -459,11 +477,19 @@ func (m *OriginServerPrivateName) GetOutsideNetwork() *schema.Empty { return nil } +func (m *OriginServerPrivateName) GetSegment() *views.ObjectRefType { + if x, ok := m.GetNetworkChoice().(*OriginServerPrivateName_Segment); ok { + return x.Segment + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OriginServerPrivateName) XXX_OneofWrappers() []interface{} { return []interface{}{ (*OriginServerPrivateName_InsideNetwork)(nil), (*OriginServerPrivateName_OutsideNetwork)(nil), + (*OriginServerPrivateName_Segment)(nil), } } @@ -917,212 +943,6 @@ func (*OriginServerConsulService) XXX_OneofWrappers() []interface{} { } } -// OriginServerSegmentIP -// -// x-displayName: "IP address of Origin server in Segment on given Site" -// Specify origin server with IP address in a Segment on given Site -type OriginServerSegmentIP struct { - // IP Choice - // - // x-displayName: "Select IP" - // x-required - // Origin server IP - either V4 or V6 - // - // Types that are valid to be assigned to IpChoice: - // *OriginServerSegmentIP_Ip - // *OriginServerSegmentIP_Ipv6 - IpChoice isOriginServerSegmentIP_IpChoice `protobuf_oneof:"ip_choice"` - // Site Locator - // - // x-displayName: "Site or Cloud Edge or Virtual Site" - // x-required - // Site or Cloud RE Region or Virtual site where this origin server is located - SiteLocator *views.SiteRegionLocator `protobuf:"bytes,4,opt,name=site_locator,json=siteLocator,proto3" json:"site_locator,omitempty"` - // Segment - // - // x-displayName: "Segment" - // x-required - // Segment where this origin server is located - Segment *views.ObjectRefType `protobuf:"bytes,5,opt,name=segment,proto3" json:"segment,omitempty"` -} - -func (m *OriginServerSegmentIP) Reset() { *m = OriginServerSegmentIP{} } -func (*OriginServerSegmentIP) ProtoMessage() {} -func (*OriginServerSegmentIP) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{8} -} -func (m *OriginServerSegmentIP) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *OriginServerSegmentIP) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *OriginServerSegmentIP) XXX_Merge(src proto.Message) { - xxx_messageInfo_OriginServerSegmentIP.Merge(m, src) -} -func (m *OriginServerSegmentIP) XXX_Size() int { - return m.Size() -} -func (m *OriginServerSegmentIP) XXX_DiscardUnknown() { - xxx_messageInfo_OriginServerSegmentIP.DiscardUnknown(m) -} - -var xxx_messageInfo_OriginServerSegmentIP proto.InternalMessageInfo - -type isOriginServerSegmentIP_IpChoice interface { - isOriginServerSegmentIP_IpChoice() - Equal(interface{}) bool - MarshalTo([]byte) (int, error) - Size() int -} - -type OriginServerSegmentIP_Ip struct { - Ip string `protobuf:"bytes,2,opt,name=ip,proto3,oneof" json:"ip,omitempty"` -} -type OriginServerSegmentIP_Ipv6 struct { - Ipv6 string `protobuf:"bytes,3,opt,name=ipv6,proto3,oneof" json:"ipv6,omitempty"` -} - -func (*OriginServerSegmentIP_Ip) isOriginServerSegmentIP_IpChoice() {} -func (*OriginServerSegmentIP_Ipv6) isOriginServerSegmentIP_IpChoice() {} - -func (m *OriginServerSegmentIP) GetIpChoice() isOriginServerSegmentIP_IpChoice { - if m != nil { - return m.IpChoice - } - return nil -} - -func (m *OriginServerSegmentIP) GetIp() string { - if x, ok := m.GetIpChoice().(*OriginServerSegmentIP_Ip); ok { - return x.Ip - } - return "" -} - -func (m *OriginServerSegmentIP) GetIpv6() string { - if x, ok := m.GetIpChoice().(*OriginServerSegmentIP_Ipv6); ok { - return x.Ipv6 - } - return "" -} - -func (m *OriginServerSegmentIP) GetSiteLocator() *views.SiteRegionLocator { - if m != nil { - return m.SiteLocator - } - return nil -} - -func (m *OriginServerSegmentIP) GetSegment() *views.ObjectRefType { - if m != nil { - return m.Segment - } - return nil -} - -// XXX_OneofWrappers is for the internal use of the proto package. -func (*OriginServerSegmentIP) XXX_OneofWrappers() []interface{} { - return []interface{}{ - (*OriginServerSegmentIP_Ip)(nil), - (*OriginServerSegmentIP_Ipv6)(nil), - } -} - -// OriginServerSegmentName -// -// x-displayName: "DNS Name of Origin Server in Segment on given Sites" -// Specify origin server with DNS name in Segment on given Site -type OriginServerSegmentName struct { - // DNS name - // - // x-displayName: "DNS Name" - // x-example: "value" - // x-required - // DNS Name - DnsName string `protobuf:"bytes,1,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"` - // refresh_interval - // - // x-displayName: "DNS Refresh interval" - // x-example: "20" - // Interval for DNS refresh in seconds. - // Max value is 7 days as per https://datatracker.ietf.org/doc/html/rfc8767 - RefreshInterval uint32 `protobuf:"varint,2,opt,name=refresh_interval,json=refreshInterval,proto3" json:"refresh_interval,omitempty"` - // Site Locator - // - // x-displayName: "Site or Cloud RE Region or Virtual Site" - // x-required - // Site or Cloud RE Region or Virtual site where this origin server is located - SiteLocator *views.SiteRegionLocator `protobuf:"bytes,3,opt,name=site_locator,json=siteLocator,proto3" json:"site_locator,omitempty"` - // Segment - // - // x-displayName: "Segment" - // x-required - // Segment where this origin server is located - Segment *views.ObjectRefType `protobuf:"bytes,4,opt,name=segment,proto3" json:"segment,omitempty"` -} - -func (m *OriginServerSegmentName) Reset() { *m = OriginServerSegmentName{} } -func (*OriginServerSegmentName) ProtoMessage() {} -func (*OriginServerSegmentName) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{9} -} -func (m *OriginServerSegmentName) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *OriginServerSegmentName) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *OriginServerSegmentName) XXX_Merge(src proto.Message) { - xxx_messageInfo_OriginServerSegmentName.Merge(m, src) -} -func (m *OriginServerSegmentName) XXX_Size() int { - return m.Size() -} -func (m *OriginServerSegmentName) XXX_DiscardUnknown() { - xxx_messageInfo_OriginServerSegmentName.DiscardUnknown(m) -} - -var xxx_messageInfo_OriginServerSegmentName proto.InternalMessageInfo - -func (m *OriginServerSegmentName) GetDnsName() string { - if m != nil { - return m.DnsName - } - return "" -} - -func (m *OriginServerSegmentName) GetRefreshInterval() uint32 { - if m != nil { - return m.RefreshInterval - } - return 0 -} - -func (m *OriginServerSegmentName) GetSiteLocator() *views.SiteRegionLocator { - if m != nil { - return m.SiteLocator - } - return nil -} - -func (m *OriginServerSegmentName) GetSegment() *views.ObjectRefType { - if m != nil { - return m.Segment - } - return nil -} - // OriginServerCustomEndpoint // // x-displayName: "Custom Endpoint Object for Origin Server" @@ -1139,7 +959,7 @@ type OriginServerCustomEndpoint struct { func (m *OriginServerCustomEndpoint) Reset() { *m = OriginServerCustomEndpoint{} } func (*OriginServerCustomEndpoint) ProtoMessage() {} func (*OriginServerCustomEndpoint) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{10} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{8} } func (m *OriginServerCustomEndpoint) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1192,8 +1012,6 @@ type OriginServerType struct { // *OriginServerType_CustomEndpointObject // *OriginServerType_VnPrivateIp // *OriginServerType_VnPrivateName - // *OriginServerType_SegmentIp - // *OriginServerType_SegmentName Choice isOriginServerType_Choice `protobuf_oneof:"choice"` // Origin Server Labels // @@ -1206,7 +1024,7 @@ type OriginServerType struct { func (m *OriginServerType) Reset() { *m = OriginServerType{} } func (*OriginServerType) ProtoMessage() {} func (*OriginServerType) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{11} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{9} } func (m *OriginServerType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1265,12 +1083,6 @@ type OriginServerType_VnPrivateIp struct { type OriginServerType_VnPrivateName struct { VnPrivateName *OriginServerVirtualNetworkName `protobuf:"bytes,13,opt,name=vn_private_name,json=vnPrivateName,proto3,oneof" json:"vn_private_name,omitempty"` } -type OriginServerType_SegmentIp struct { - SegmentIp *OriginServerSegmentIP `protobuf:"bytes,14,opt,name=segment_ip,json=segmentIp,proto3,oneof" json:"segment_ip,omitempty"` -} -type OriginServerType_SegmentName struct { - SegmentName *OriginServerSegmentName `protobuf:"bytes,15,opt,name=segment_name,json=segmentName,proto3,oneof" json:"segment_name,omitempty"` -} func (*OriginServerType_PublicIp) isOriginServerType_Choice() {} func (*OriginServerType_PublicName) isOriginServerType_Choice() {} @@ -1281,8 +1093,6 @@ func (*OriginServerType_ConsulService) isOriginServerType_Choice() {} func (*OriginServerType_CustomEndpointObject) isOriginServerType_Choice() {} func (*OriginServerType_VnPrivateIp) isOriginServerType_Choice() {} func (*OriginServerType_VnPrivateName) isOriginServerType_Choice() {} -func (*OriginServerType_SegmentIp) isOriginServerType_Choice() {} -func (*OriginServerType_SegmentName) isOriginServerType_Choice() {} func (m *OriginServerType) GetChoice() isOriginServerType_Choice { if m != nil { @@ -1354,20 +1164,6 @@ func (m *OriginServerType) GetVnPrivateName() *OriginServerVirtualNetworkName { return nil } -func (m *OriginServerType) GetSegmentIp() *OriginServerSegmentIP { - if x, ok := m.GetChoice().(*OriginServerType_SegmentIp); ok { - return x.SegmentIp - } - return nil -} - -func (m *OriginServerType) GetSegmentName() *OriginServerSegmentName { - if x, ok := m.GetChoice().(*OriginServerType_SegmentName); ok { - return x.SegmentName - } - return nil -} - func (m *OriginServerType) GetLabels() map[string]string { if m != nil { return m.Labels @@ -1387,8 +1183,6 @@ func (*OriginServerType) XXX_OneofWrappers() []interface{} { (*OriginServerType_CustomEndpointObject)(nil), (*OriginServerType_VnPrivateIp)(nil), (*OriginServerType_VnPrivateName)(nil), - (*OriginServerType_SegmentIp)(nil), - (*OriginServerType_SegmentName)(nil), } } @@ -1412,7 +1206,7 @@ type UpstreamTlsValidationContext struct { func (m *UpstreamTlsValidationContext) Reset() { *m = UpstreamTlsValidationContext{} } func (*UpstreamTlsValidationContext) ProtoMessage() {} func (*UpstreamTlsValidationContext) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{12} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{10} } func (m *UpstreamTlsValidationContext) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1499,7 +1293,7 @@ type TlsCertificatesType struct { func (m *TlsCertificatesType) Reset() { *m = TlsCertificatesType{} } func (*TlsCertificatesType) ProtoMessage() {} func (*TlsCertificatesType) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{13} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{11} } func (m *TlsCertificatesType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1580,7 +1374,7 @@ type UpstreamTlsParameters struct { func (m *UpstreamTlsParameters) Reset() { *m = UpstreamTlsParameters{} } func (*UpstreamTlsParameters) ProtoMessage() {} func (*UpstreamTlsParameters) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{14} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{12} } func (m *UpstreamTlsParameters) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1785,7 +1579,7 @@ type OriginPoolDefaultSubset struct { func (m *OriginPoolDefaultSubset) Reset() { *m = OriginPoolDefaultSubset{} } func (*OriginPoolDefaultSubset) ProtoMessage() {} func (*OriginPoolDefaultSubset) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{15} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{13} } func (m *OriginPoolDefaultSubset) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1844,7 +1638,7 @@ type OriginPoolSubsets struct { func (m *OriginPoolSubsets) Reset() { *m = OriginPoolSubsets{} } func (*OriginPoolSubsets) ProtoMessage() {} func (*OriginPoolSubsets) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{16} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{14} } func (m *OriginPoolSubsets) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2013,22 +1807,32 @@ type OriginPoolAdvancedOptions struct { // // x-displayName: "Header Transformation Configuration" // Settings to normalize the headers of upstream requests. - HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,17,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` - // Loadbalancer source IP persistance + HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,17,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` // Deprecated: Do not use. + // Loadbalancer source IP persistence // - // x-displayName: "LB source IP persistance" + // x-displayName: "LB source IP persistence" // Enable/Disable stickiness of source IP used by LB while connecting to origin server // // Types that are valid to be assigned to LbSourceIpPersistanceChoice: // *OriginPoolAdvancedOptions_EnableLbSourceIpPersistance // *OriginPoolAdvancedOptions_DisableLbSourceIpPersistance LbSourceIpPersistanceChoice isOriginPoolAdvancedOptions_LbSourceIpPersistanceChoice `protobuf_oneof:"lb_source_ip_persistance_choice"` + // Proxy Protocol Configuration + // + // x-displayName: "Proxy Protocol Configuration" + // Choose Proxy Protocol configuration options for upstream connections + // + // Types that are valid to be assigned to ProxyProtocolChoice: + // *OriginPoolAdvancedOptions_DisableProxyProtocol + // *OriginPoolAdvancedOptions_ProxyProtocolV1 + // *OriginPoolAdvancedOptions_ProxyProtocolV2 + ProxyProtocolChoice isOriginPoolAdvancedOptions_ProxyProtocolChoice `protobuf_oneof:"proxy_protocol_choice"` } func (m *OriginPoolAdvancedOptions) Reset() { *m = OriginPoolAdvancedOptions{} } func (*OriginPoolAdvancedOptions) ProtoMessage() {} func (*OriginPoolAdvancedOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{17} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{15} } func (m *OriginPoolAdvancedOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2089,6 +1893,12 @@ type isOriginPoolAdvancedOptions_LbSourceIpPersistanceChoice interface { MarshalTo([]byte) (int, error) Size() int } +type isOriginPoolAdvancedOptions_ProxyProtocolChoice interface { + isOriginPoolAdvancedOptions_ProxyProtocolChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} type OriginPoolAdvancedOptions_DefaultCircuitBreaker struct { DefaultCircuitBreaker *schema.Empty `protobuf:"bytes,16,opt,name=default_circuit_breaker,json=defaultCircuitBreaker,proto3,oneof" json:"default_circuit_breaker,omitempty"` @@ -2118,7 +1928,7 @@ type OriginPoolAdvancedOptions_EnableSubsets struct { EnableSubsets *OriginPoolSubsets `protobuf:"bytes,14,opt,name=enable_subsets,json=enableSubsets,proto3,oneof" json:"enable_subsets,omitempty"` } type OriginPoolAdvancedOptions_Http1Config struct { - Http1Config *schema.Empty `protobuf:"bytes,19,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` + Http1Config *cluster.Http1ProtocolOptions `protobuf:"bytes,19,opt,name=http1_config,json=http1Config,proto3,oneof" json:"http1_config,omitempty"` } type OriginPoolAdvancedOptions_Http2Options struct { Http2Options *cluster.Http2ProtocolOptions `protobuf:"bytes,15,opt,name=http2_options,json=http2Options,proto3,oneof" json:"http2_options,omitempty"` @@ -2132,6 +1942,15 @@ type OriginPoolAdvancedOptions_EnableLbSourceIpPersistance struct { type OriginPoolAdvancedOptions_DisableLbSourceIpPersistance struct { DisableLbSourceIpPersistance *schema.Empty `protobuf:"bytes,23,opt,name=disable_lb_source_ip_persistance,json=disableLbSourceIpPersistance,proto3,oneof" json:"disable_lb_source_ip_persistance,omitempty"` } +type OriginPoolAdvancedOptions_DisableProxyProtocol struct { + DisableProxyProtocol *schema.Empty `protobuf:"bytes,25,opt,name=disable_proxy_protocol,json=disableProxyProtocol,proto3,oneof" json:"disable_proxy_protocol,omitempty"` +} +type OriginPoolAdvancedOptions_ProxyProtocolV1 struct { + ProxyProtocolV1 *schema.Empty `protobuf:"bytes,26,opt,name=proxy_protocol_v1,json=proxyProtocolV1,proto3,oneof" json:"proxy_protocol_v1,omitempty"` +} +type OriginPoolAdvancedOptions_ProxyProtocolV2 struct { + ProxyProtocolV2 *schema.Empty `protobuf:"bytes,27,opt,name=proxy_protocol_v2,json=proxyProtocolV2,proto3,oneof" json:"proxy_protocol_v2,omitempty"` +} func (*OriginPoolAdvancedOptions_DefaultCircuitBreaker) isOriginPoolAdvancedOptions_CircuitBreakerChoice() { } @@ -2153,6 +1972,10 @@ func (*OriginPoolAdvancedOptions_EnableLbSourceIpPersistance) isOriginPoolAdvanc } func (*OriginPoolAdvancedOptions_DisableLbSourceIpPersistance) isOriginPoolAdvancedOptions_LbSourceIpPersistanceChoice() { } +func (*OriginPoolAdvancedOptions_DisableProxyProtocol) isOriginPoolAdvancedOptions_ProxyProtocolChoice() { +} +func (*OriginPoolAdvancedOptions_ProxyProtocolV1) isOriginPoolAdvancedOptions_ProxyProtocolChoice() {} +func (*OriginPoolAdvancedOptions_ProxyProtocolV2) isOriginPoolAdvancedOptions_ProxyProtocolChoice() {} func (m *OriginPoolAdvancedOptions) GetCircuitBreakerChoice() isOriginPoolAdvancedOptions_CircuitBreakerChoice { if m != nil { @@ -2190,6 +2013,12 @@ func (m *OriginPoolAdvancedOptions) GetLbSourceIpPersistanceChoice() isOriginPoo } return nil } +func (m *OriginPoolAdvancedOptions) GetProxyProtocolChoice() isOriginPoolAdvancedOptions_ProxyProtocolChoice { + if m != nil { + return m.ProxyProtocolChoice + } + return nil +} func (m *OriginPoolAdvancedOptions) GetConnectionTimeout() uint32 { if m != nil { @@ -2268,7 +2097,7 @@ func (m *OriginPoolAdvancedOptions) GetEnableSubsets() *OriginPoolSubsets { return nil } -func (m *OriginPoolAdvancedOptions) GetHttp1Config() *schema.Empty { +func (m *OriginPoolAdvancedOptions) GetHttp1Config() *cluster.Http1ProtocolOptions { if x, ok := m.GetHttpProtocolType().(*OriginPoolAdvancedOptions_Http1Config); ok { return x.Http1Config } @@ -2289,6 +2118,7 @@ func (m *OriginPoolAdvancedOptions) GetAutoHttpConfig() *schema.Empty { return nil } +// Deprecated: Do not use. func (m *OriginPoolAdvancedOptions) GetHeaderTransformationType() *schema.HeaderTransformationType { if m != nil { return m.HeaderTransformationType @@ -2310,6 +2140,27 @@ func (m *OriginPoolAdvancedOptions) GetDisableLbSourceIpPersistance() *schema.Em return nil } +func (m *OriginPoolAdvancedOptions) GetDisableProxyProtocol() *schema.Empty { + if x, ok := m.GetProxyProtocolChoice().(*OriginPoolAdvancedOptions_DisableProxyProtocol); ok { + return x.DisableProxyProtocol + } + return nil +} + +func (m *OriginPoolAdvancedOptions) GetProxyProtocolV1() *schema.Empty { + if x, ok := m.GetProxyProtocolChoice().(*OriginPoolAdvancedOptions_ProxyProtocolV1); ok { + return x.ProxyProtocolV1 + } + return nil +} + +func (m *OriginPoolAdvancedOptions) GetProxyProtocolV2() *schema.Empty { + if x, ok := m.GetProxyProtocolChoice().(*OriginPoolAdvancedOptions_ProxyProtocolV2); ok { + return x.ProxyProtocolV2 + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OriginPoolAdvancedOptions) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -2327,6 +2178,9 @@ func (*OriginPoolAdvancedOptions) XXX_OneofWrappers() []interface{} { (*OriginPoolAdvancedOptions_AutoHttpConfig)(nil), (*OriginPoolAdvancedOptions_EnableLbSourceIpPersistance)(nil), (*OriginPoolAdvancedOptions_DisableLbSourceIpPersistance)(nil), + (*OriginPoolAdvancedOptions_DisableProxyProtocol)(nil), + (*OriginPoolAdvancedOptions_ProxyProtocolV1)(nil), + (*OriginPoolAdvancedOptions_ProxyProtocolV2)(nil), } } @@ -2405,7 +2259,7 @@ type GlobalSpecType struct { func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } func (*GlobalSpecType) ProtoMessage() {} func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{18} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{16} } func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2630,7 +2484,7 @@ type CreateSpecType struct { func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } func (*CreateSpecType) ProtoMessage() {} func (*CreateSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{19} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{17} } func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2848,7 +2702,7 @@ type ReplaceSpecType struct { func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } func (*ReplaceSpecType) ProtoMessage() {} func (*ReplaceSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{20} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{18} } func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3066,7 +2920,7 @@ type GetSpecType struct { func (m *GetSpecType) Reset() { *m = GetSpecType{} } func (*GetSpecType) ProtoMessage() {} func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_6ebf2c0bbcdcb0e6, []int{21} + return fileDescriptor_6ebf2c0bbcdcb0e6, []int{19} } func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3273,10 +3127,6 @@ func init() { golang_proto.RegisterType((*OriginServerK8SService)(nil), "ves.io.schema.views.origin_pool.OriginServerK8SService") proto.RegisterType((*OriginServerConsulService)(nil), "ves.io.schema.views.origin_pool.OriginServerConsulService") golang_proto.RegisterType((*OriginServerConsulService)(nil), "ves.io.schema.views.origin_pool.OriginServerConsulService") - proto.RegisterType((*OriginServerSegmentIP)(nil), "ves.io.schema.views.origin_pool.OriginServerSegmentIP") - golang_proto.RegisterType((*OriginServerSegmentIP)(nil), "ves.io.schema.views.origin_pool.OriginServerSegmentIP") - proto.RegisterType((*OriginServerSegmentName)(nil), "ves.io.schema.views.origin_pool.OriginServerSegmentName") - golang_proto.RegisterType((*OriginServerSegmentName)(nil), "ves.io.schema.views.origin_pool.OriginServerSegmentName") proto.RegisterType((*OriginServerCustomEndpoint)(nil), "ves.io.schema.views.origin_pool.OriginServerCustomEndpoint") golang_proto.RegisterType((*OriginServerCustomEndpoint)(nil), "ves.io.schema.views.origin_pool.OriginServerCustomEndpoint") proto.RegisterType((*OriginServerType)(nil), "ves.io.schema.views.origin_pool.OriginServerType") @@ -3315,267 +3165,265 @@ func init() { } var fileDescriptor_6ebf2c0bbcdcb0e6 = []byte{ - // 4145 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x5d, 0x6c, 0xdb, 0x58, - 0x76, 0xf6, 0x95, 0x68, 0x49, 0x3e, 0xb2, 0x7e, 0xcc, 0xf8, 0x47, 0xb1, 0x13, 0x45, 0xf1, 0xfc, - 0x65, 0x1c, 0xc6, 0xb6, 0xe4, 0xdf, 0x78, 0x31, 0x99, 0x8d, 0x12, 0x67, 0x65, 0x27, 0x3b, 0x76, - 0x69, 0x4f, 0xb6, 0x0d, 0xba, 0x43, 0x50, 0xd4, 0xb5, 0xcd, 0x35, 0x45, 0xaa, 0x24, 0xe5, 0x49, - 0x1e, 0x82, 0x06, 0x83, 0xa2, 0x98, 0x0e, 0x8a, 0xa2, 0xdd, 0x3e, 0xed, 0x16, 0x28, 0x8a, 0x02, - 0x6d, 0x07, 0x01, 0x0a, 0x14, 0x68, 0x1f, 0x8a, 0xd2, 0x0f, 0x46, 0x80, 0x01, 0xda, 0x7d, 0x68, - 0xfd, 0x18, 0xe4, 0x69, 0xc7, 0xf3, 0x32, 0xed, 0x43, 0x1b, 0x04, 0x28, 0x30, 0x98, 0x7d, 0xd8, - 0xe2, 0x5e, 0x5e, 0xca, 0xa4, 0x2c, 0x29, 0x76, 0x26, 0xdb, 0x16, 0xb3, 0x79, 0x11, 0x44, 0xf2, - 0x9c, 0xef, 0xde, 0x7b, 0xce, 0xb9, 0xdf, 0x39, 0xe7, 0x52, 0x82, 0x8b, 0x3b, 0xd8, 0x1a, 0x57, - 0x8d, 0x09, 0x4b, 0xd9, 0xc2, 0x55, 0x79, 0x62, 0x47, 0xc5, 0x1f, 0x5a, 0x13, 0x86, 0xa9, 0x6e, - 0xaa, 0xba, 0x54, 0x33, 0x0c, 0x6d, 0xc2, 0xbe, 0x57, 0xc3, 0xd6, 0x78, 0xcd, 0x34, 0x6c, 0x83, - 0x3f, 0xe7, 0x0a, 0x8f, 0xbb, 0xc2, 0xe3, 0x54, 0x78, 0xdc, 0x27, 0x3c, 0x7c, 0x69, 0x53, 0xb5, - 0xb7, 0xea, 0xe5, 0x71, 0xc5, 0xa8, 0x4e, 0x6c, 0x1a, 0x9b, 0xc6, 0x04, 0xd5, 0x2b, 0xd7, 0x37, - 0xe8, 0x15, 0xbd, 0xa0, 0xdf, 0x5c, 0xbc, 0xe1, 0xf3, 0xc1, 0xc1, 0x15, 0xad, 0x6e, 0xd9, 0xd8, - 0xf4, 0x0f, 0x39, 0x3c, 0x12, 0x14, 0x31, 0x6a, 0xb6, 0x6a, 0xe8, 0xde, 0xc3, 0xd3, 0xc1, 0x87, - 0x7e, 0xbd, 0x33, 0x4d, 0xeb, 0x92, 0x35, 0xb5, 0x22, 0xdb, 0x98, 0x3d, 0xcd, 0x1d, 0x5d, 0xb5, - 0x14, 0x84, 0x3e, 0xd7, 0xca, 0x2e, 0xbe, 0x01, 0x46, 0x1f, 0x21, 0xe8, 0x5f, 0xa1, 0x4b, 0x5f, - 0xc3, 0xe6, 0x0e, 0x36, 0x57, 0xeb, 0x65, 0x4d, 0x55, 0x96, 0x56, 0xf9, 0x11, 0x08, 0xa9, 0xb5, - 0x0c, 0xca, 0xa1, 0x0b, 0x3d, 0xc5, 0x9e, 0x7f, 0xfa, 0xf7, 0xbd, 0x30, 0x67, 0x86, 0xee, 0xa2, - 0x52, 0x97, 0x18, 0x52, 0x6b, 0xfc, 0x6f, 0x03, 0xa7, 0xd6, 0x76, 0x66, 0x33, 0x61, 0xfa, 0xf8, - 0xc6, 0x7f, 0xdc, 0x7f, 0xad, 0x82, 0xab, 0x46, 0x5e, 0xb0, 0xb1, 0x65, 0x0b, 0x8a, 0x69, 0x0b, - 0x96, 0x2d, 0x6f, 0xaa, 0xfa, 0xa6, 0x60, 0x19, 0x1b, 0x76, 0x59, 0xd6, 0xb7, 0xa5, 0x2a, 0x56, - 0x1e, 0xee, 0x22, 0x1e, 0xd2, 0x4a, 0x45, 0x97, 0x34, 0x43, 0xae, 0x94, 0x65, 0x4d, 0xd6, 0x15, - 0x6c, 0x12, 0xe8, 0x6e, 0x33, 0xfc, 0x00, 0x11, 0x6c, 0x8a, 0xba, 0xc0, 0x3d, 0xbb, 0x82, 0x0a, - 0xc5, 0xd7, 0x20, 0x5d, 0xa3, 0x93, 0x91, 0xd4, 0x9a, 0xa4, 0x6c, 0x19, 0xaa, 0x82, 0xf9, 0xd4, - 0x9e, 0x83, 0xd0, 0xbe, 0x83, 0x42, 0x07, 0x0e, 0x0a, 0xe7, 0x85, 0xa9, 0x65, 0x2e, 0x16, 0x4a, - 0x87, 0x47, 0x7f, 0x82, 0x60, 0xf0, 0xe8, 0x22, 0xde, 0x93, 0xab, 0x98, 0x9f, 0x84, 0x58, 0x45, - 0xb7, 0x24, 0x5d, 0xae, 0x62, 0xb6, 0x98, 0x01, 0x32, 0x62, 0xd4, 0xec, 0x4e, 0xa3, 0xcc, 0x83, - 0x10, 0x5b, 0xd8, 0x16, 0x12, 0xa3, 0x15, 0xdd, 0xa2, 0x1a, 0x8b, 0x90, 0x36, 0xf1, 0x86, 0x89, - 0xad, 0x2d, 0x49, 0xd5, 0x6d, 0x6c, 0xee, 0xc8, 0x5a, 0x26, 0x94, 0x43, 0x17, 0x12, 0xc5, 0x61, - 0x32, 0xfa, 0x13, 0x07, 0x85, 0xa7, 0x26, 0x27, 0xbf, 0x72, 0x50, 0x17, 0x51, 0x8e, 0x8c, 0x71, - 0x99, 0x07, 0xff, 0xfd, 0xba, 0x98, 0x62, 0x3a, 0x4b, 0x4c, 0x65, 0x21, 0xf2, 0xec, 0x4a, 0x38, - 0x2f, 0x14, 0x46, 0x3f, 0x0d, 0xc3, 0x40, 0x60, 0x6e, 0xa6, 0xba, 0x23, 0xdb, 0xf8, 0x79, 0x16, - 0xbe, 0xc1, 0x2c, 0x1c, 0xa7, 0x8f, 0x27, 0x8f, 0x67, 0xe1, 0xa3, 0xb6, 0xe4, 0x97, 0xa0, 0xd7, - 0x52, 0x6d, 0x2c, 0x69, 0x86, 0x22, 0xdb, 0x86, 0x49, 0x57, 0x12, 0x2f, 0xe4, 0xc6, 0x5b, 0x6d, - 0x81, 0x35, 0xd5, 0xc6, 0xb7, 0x5c, 0xb9, 0x22, 0xf7, 0x77, 0xbb, 0x08, 0x89, 0x71, 0xeb, 0xf0, - 0x16, 0xff, 0x0e, 0x24, 0x55, 0xdd, 0x52, 0x2b, 0x58, 0xd2, 0xb1, 0xfd, 0xa1, 0x61, 0x6e, 0x67, - 0x38, 0x0a, 0xd6, 0xdf, 0x04, 0xb6, 0x58, 0xad, 0xd9, 0xf7, 0x4a, 0x48, 0x4c, 0xb8, 0xd2, 0xef, - 0xb9, 0xc2, 0xfc, 0xbb, 0x90, 0x32, 0xea, 0x76, 0x40, 0xbf, 0xbb, 0xa3, 0x7e, 0x92, 0x89, 0x33, - 0x80, 0x85, 0x9e, 0x67, 0x57, 0x22, 0xf9, 0x49, 0xa1, 0x20, 0x4c, 0x15, 0xdf, 0x80, 0xbe, 0x9a, - 0x6b, 0x47, 0x5f, 0x70, 0xa4, 0x59, 0x70, 0xc0, 0x81, 0x83, 0xb8, 0xbc, 0x90, 0xcf, 0x17, 0xcf, - 0x43, 0x92, 0x0d, 0xe5, 0x0f, 0x20, 0x6e, 0xdf, 0x41, 0x61, 0x12, 0x40, 0xd3, 0xc2, 0xcc, 0x32, - 0x17, 0x83, 0x74, 0x7c, 0x99, 0x8b, 0x85, 0xd3, 0xdc, 0xe8, 0x2f, 0x42, 0x30, 0xd4, 0xc2, 0x55, - 0x34, 0x2a, 0x4e, 0x37, 0xc7, 0x51, 0xe7, 0x80, 0x89, 0x9c, 0x38, 0x60, 0xfe, 0xef, 0x3c, 0xd5, - 0xf5, 0x0d, 0x3d, 0xd5, 0x75, 0xc4, 0x53, 0xf0, 0xec, 0x4a, 0x34, 0x2f, 0xcc, 0x52, 0x57, 0x1d, - 0xcb, 0x07, 0xc4, 0xfa, 0x7f, 0x1d, 0x82, 0x33, 0x7e, 0xeb, 0xdf, 0x56, 0x4d, 0xbb, 0x2e, 0x6b, - 0x0c, 0xf3, 0x7f, 0x6b, 0xbf, 0x28, 0x90, 0xda, 0x71, 0x07, 0x6e, 0xac, 0xdd, 0x75, 0xc4, 0x68, - 0x4b, 0x47, 0xac, 0x94, 0x7f, 0x84, 0x15, 0x5b, 0xc4, 0x1b, 0xeb, 0xf7, 0x6a, 0xb8, 0x38, 0xf8, - 0xf0, 0x7e, 0xb3, 0xf6, 0x03, 0xe2, 0x9c, 0xe4, 0x4e, 0x60, 0x2d, 0x0b, 0xd1, 0x67, 0x57, 0x38, - 0x12, 0xc9, 0xc5, 0x4b, 0x70, 0xba, 0x49, 0xbe, 0x53, 0x3c, 0xbb, 0xc1, 0x3a, 0xfa, 0x29, 0x82, - 0x6c, 0x7b, 0x43, 0x3d, 0x2f, 0x5a, 0x15, 0x48, 0x79, 0x5b, 0xe7, 0x25, 0x2e, 0x90, 0x41, 0x7a, - 0x0b, 0xf4, 0xc8, 0xef, 0xc7, 0x5c, 0x90, 0x98, 0x6f, 0xce, 0xaf, 0x91, 0x2f, 0x64, 0x75, 0x13, - 0xd0, 0x6b, 0xb9, 0x5f, 0xfd, 0xe4, 0x0c, 0xcc, 0x25, 0x1f, 0x73, 0xc4, 0x25, 0x71, 0x26, 0x41, - 0x27, 0x5e, 0x86, 0xb4, 0xa7, 0x60, 0x61, 0x0d, 0x2b, 0x64, 0x8f, 0xc4, 0x5b, 0xee, 0x91, 0x5b, - 0x72, 0x19, 0x6b, 0x6b, 0x4c, 0x86, 0xce, 0xfb, 0xd4, 0xe3, 0xfb, 0xe8, 0x4b, 0x07, 0x21, 0xb2, - 0x09, 0x7f, 0xba, 0x8b, 0x38, 0x08, 0x75, 0x11, 0xfc, 0x14, 0x03, 0xf4, 0x64, 0xbf, 0x45, 0x6c, - 0xc9, 0x7f, 0x07, 0x12, 0x3b, 0xdb, 0xf3, 0x96, 0xa7, 0x6d, 0x51, 0x4a, 0x6a, 0xaf, 0xde, 0x4b, - 0x84, 0x99, 0xae, 0xe5, 0xa7, 0xda, 0xf3, 0x87, 0x7e, 0x52, 0xf5, 0x0d, 0x83, 0xef, 0xf3, 0x45, - 0x65, 0x77, 0x5e, 0xc8, 0x9d, 0x9c, 0x66, 0x77, 0x43, 0x70, 0xda, 0x1f, 0x14, 0xd7, 0x0c, 0xdd, - 0xaa, 0x6b, 0x5e, 0x5c, 0x9c, 0x6f, 0x15, 0x17, 0xc1, 0x48, 0xf8, 0x16, 0x31, 0x65, 0xec, 0xd9, - 0x95, 0xee, 0xfc, 0xc9, 0x78, 0xf2, 0x5f, 0x42, 0xc1, 0x82, 0x62, 0x0d, 0x6f, 0x56, 0xb1, 0x6e, - 0x37, 0x08, 0x32, 0xd4, 0x99, 0x20, 0xc3, 0xdf, 0x90, 0x20, 0x57, 0x9a, 0x8c, 0xef, 0xda, 0xeb, - 0xcd, 0xb6, 0xc6, 0x17, 0xf1, 0xa6, 0x6a, 0xe8, 0x1d, 0x5c, 0x70, 0x0b, 0xa2, 0x96, 0xbb, 0x04, - 0x66, 0xbb, 0xe3, 0x10, 0x51, 0xf2, 0xe1, 0x7d, 0x4f, 0x8b, 0x12, 0x90, 0x77, 0xc1, 0x0c, 0x3a, - 0x2d, 0xcc, 0x14, 0xcf, 0x40, 0x4f, 0xb0, 0x70, 0x0c, 0xed, 0x3b, 0x08, 0x11, 0x5b, 0x16, 0x68, - 0xe1, 0x88, 0xd2, 0x21, 0x92, 0x73, 0x86, 0x5a, 0xd8, 0xf2, 0x45, 0x32, 0xfe, 0xc9, 0x4b, 0xc4, - 0x23, 0xa6, 0x0c, 0xbf, 0x44, 0x53, 0x72, 0xdf, 0xdc, 0x94, 0x6e, 0x16, 0x2f, 0x08, 0x53, 0xc2, - 0xf4, 0xa8, 0x05, 0xc3, 0x81, 0x2d, 0x5b, 0xb7, 0x6c, 0xa3, 0xba, 0xa8, 0x57, 0x6a, 0x86, 0xaa, - 0xdb, 0xfc, 0x0a, 0xc4, 0x30, 0xfb, 0x4e, 0x4d, 0x75, 0xbc, 0x81, 0x53, 0x0f, 0xef, 0x37, 0xd4, - 0xe8, 0xc8, 0x8d, 0x2b, 0xda, 0x01, 0xe4, 0x47, 0x3f, 0x1b, 0x80, 0xb4, 0x7f, 0x54, 0xa2, 0xc5, - 0xaf, 0x43, 0x4f, 0xa3, 0x2d, 0x60, 0x83, 0xcd, 0x8c, 0x3f, 0xa7, 0xa1, 0x1b, 0x6f, 0xd5, 0xe1, - 0x94, 0xba, 0xc4, 0x98, 0x8b, 0xb4, 0x54, 0xe3, 0xef, 0x40, 0x9c, 0xa1, 0x52, 0x7f, 0xbb, 0x9e, - 0x98, 0x7b, 0x01, 0x5c, 0x12, 0x1f, 0xa5, 0x2e, 0x11, 0x6a, 0x87, 0x2d, 0xc8, 0x0f, 0x00, 0x0e, - 0x8b, 0x55, 0x46, 0x56, 0xb3, 0x27, 0x83, 0xf6, 0x7a, 0x86, 0x52, 0x97, 0xd8, 0xc3, 0xb0, 0x96, - 0x6a, 0xfc, 0x0f, 0xa1, 0xb7, 0x91, 0xca, 0xc9, 0xac, 0x5d, 0x9f, 0xcf, 0xbf, 0x08, 0x34, 0x9b, - 0x76, 0xbc, 0xe6, 0x2b, 0x79, 0xef, 0x40, 0x9c, 0x24, 0x10, 0xc6, 0xbc, 0x6c, 0x73, 0x9e, 0xcc, - 0x26, 0x87, 0xf9, 0x9e, 0xd8, 0x64, 0x7b, 0xde, 0xf2, 0x58, 0x5e, 0x81, 0xa4, 0x42, 0x69, 0xbf, - 0x01, 0xef, 0xa6, 0xa7, 0x85, 0x13, 0xc1, 0x07, 0x32, 0x07, 0x61, 0x67, 0x25, 0x90, 0x4a, 0x2c, - 0x18, 0x54, 0x68, 0xa0, 0x4a, 0x5e, 0x60, 0x49, 0x06, 0x8d, 0xc0, 0x4c, 0x94, 0x0e, 0xf6, 0x9d, - 0x93, 0x0d, 0x16, 0x88, 0xf9, 0x52, 0x97, 0xd8, 0xaf, 0x04, 0xee, 0xb8, 0xc1, 0xcd, 0x2b, 0x90, - 0xd8, 0xd1, 0x25, 0x9f, 0xc3, 0x7b, 0xe9, 0x58, 0xef, 0x9c, 0x68, 0xac, 0xe6, 0xda, 0x97, 0xb8, - 0x66, 0x47, 0x5f, 0x6d, 0x78, 0x5e, 0x85, 0x94, 0x6f, 0x10, 0xea, 0xfc, 0x04, 0x1d, 0xe6, 0xdd, - 0x6f, 0x30, 0x0c, 0x8b, 0x81, 0x44, 0x63, 0x20, 0x1a, 0x05, 0x1f, 0x23, 0x00, 0xc6, 0x08, 0x64, - 0x35, 0xc9, 0x17, 0x08, 0xdf, 0x46, 0x86, 0x2a, 0x4e, 0x3c, 0xdc, 0x45, 0x17, 0xc7, 0xc2, 0x8a, - 0x69, 0x8f, 0x45, 0x59, 0xbe, 0x19, 0xe3, 0x6a, 0xa6, 0x51, 0x19, 0xeb, 0xf5, 0xa7, 0x9d, 0xb1, - 0xe8, 0x06, 0xae, 0x98, 0x72, 0xb5, 0x46, 0xe2, 0x9d, 0x0d, 0xbe, 0x54, 0xe3, 0xff, 0x08, 0x91, - 0xda, 0xc0, 0x9d, 0x0a, 0x5d, 0x73, 0xea, 0x05, 0x02, 0xde, 0x47, 0xf1, 0x2f, 0x32, 0x9d, 0xb8, - 0xe5, 0x4b, 0x11, 0x3a, 0x44, 0x34, 0x52, 0x6b, 0x5a, 0x99, 0x9e, 0x5c, 0xf8, 0xc4, 0x4e, 0x26, - 0x74, 0xe6, 0xd6, 0xaa, 0xd6, 0xa2, 0x6e, 0x9b, 0xf7, 0x8a, 0x43, 0x24, 0x79, 0x78, 0xe5, 0xe9, - 0xc1, 0xcf, 0x3f, 0x0b, 0x47, 0x3e, 0xd9, 0x45, 0xa1, 0x58, 0x97, 0xc8, 0x46, 0x19, 0xbe, 0x0c, - 0x71, 0x9f, 0x3c, 0x9f, 0x86, 0xf0, 0x36, 0xbe, 0xc7, 0x92, 0x13, 0xf9, 0xca, 0xf7, 0x43, 0xf7, - 0x8e, 0xac, 0xd5, 0xb1, 0x5b, 0x04, 0x88, 0xee, 0xc5, 0x42, 0x68, 0x1e, 0x2d, 0xfc, 0x23, 0x3c, - 0x72, 0xd0, 0x20, 0xf4, 0x43, 0xc2, 0x9d, 0x42, 0xce, 0x9d, 0x03, 0x1f, 0x9e, 0x17, 0x2e, 0xff, - 0xcc, 0x41, 0x3f, 0x01, 0xd8, 0x0d, 0x01, 0x47, 0xa6, 0x34, 0xf6, 0xf7, 0x21, 0xf8, 0x9b, 0x10, - 0x0c, 0xfa, 0x78, 0xb6, 0xd0, 0xe3, 0x92, 0x5b, 0x6e, 0x69, 0x15, 0x4e, 0x07, 0x98, 0xb2, 0x00, - 0xec, 0xc9, 0xf5, 0xf7, 0xd6, 0x20, 0xe3, 0x27, 0xba, 0x02, 0xb0, 0x28, 0x22, 0x4a, 0x23, 0x41, - 0xa6, 0x2a, 0xc4, 0xbd, 0x67, 0x44, 0x6d, 0x38, 0xc0, 0x33, 0x85, 0xf8, 0xcd, 0x79, 0x2b, 0xc7, - 0xb6, 0x30, 0xe4, 0x9a, 0x79, 0xa2, 0x90, 0x74, 0x37, 0x7d, 0x43, 0xe2, 0xed, 0x76, 0x9b, 0xbc, - 0x90, 0x72, 0x77, 0x6c, 0xce, 0xdb, 0xa0, 0xf0, 0x66, 0xd3, 0xd6, 0x2c, 0x0c, 0x2c, 0xad, 0xe6, - 0x0c, 0x3d, 0xc7, 0xb6, 0x41, 0x8e, 0xed, 0x03, 0x18, 0x3b, 0xb2, 0xbb, 0x0a, 0x43, 0xc4, 0xdf, - 0x2d, 0x64, 0xf9, 0xe8, 0xfb, 0xfa, 0xb6, 0x6e, 0x7c, 0xa8, 0xc3, 0x13, 0x04, 0x51, 0x22, 0x34, - 0xb1, 0xb4, 0x5a, 0xf8, 0x57, 0x04, 0xbd, 0x0d, 0xe3, 0x8d, 0xab, 0x35, 0xe8, 0xf7, 0x99, 0x6c, - 0xdc, 0xab, 0x2a, 0x20, 0x71, 0x38, 0x15, 0x22, 0x34, 0xe0, 0x1f, 0xf1, 0x50, 0x2a, 0xe3, 0x33, - 0xce, 0xb8, 0xbf, 0x34, 0x86, 0x91, 0xa0, 0x69, 0x82, 0x0f, 0xcf, 0xb5, 0xb6, 0xca, 0xb8, 0x77, - 0x0d, 0xe9, 0x80, 0x2d, 0xc8, 0x04, 0x32, 0x4d, 0xab, 0x3e, 0x9c, 0xc3, 0xdf, 0x86, 0x00, 0x48, - 0x05, 0x32, 0x71, 0x9b, 0x7c, 0x16, 0xfe, 0x3c, 0x04, 0x67, 0x7c, 0xaa, 0xfe, 0x22, 0x86, 0x5e, - 0xc0, 0xeb, 0xed, 0x9e, 0x7a, 0xcd, 0x23, 0x95, 0xca, 0x06, 0x06, 0x3b, 0x8a, 0xf2, 0x66, 0xfb, - 0xe7, 0x01, 0x9c, 0xb3, 0x01, 0x0b, 0x1d, 0x81, 0x79, 0xa3, 0xed, 0xe3, 0x00, 0x4a, 0xae, 0xd9, - 0x9a, 0x47, 0x80, 0x2e, 0x74, 0x92, 0x08, 0x60, 0xfd, 0x43, 0x18, 0xa2, 0x2c, 0x42, 0xc6, 0x3e, - 0x0d, 0xc3, 0x5f, 0x85, 0xe1, 0x35, 0x38, 0xed, 0x37, 0x76, 0xa0, 0xe7, 0x28, 0x44, 0x96, 0xe8, - 0x35, 0xbc, 0x01, 0xc3, 0x3e, 0xa1, 0xa6, 0xce, 0xa2, 0x10, 0x5d, 0x71, 0x6f, 0xc0, 0x1b, 0x30, - 0x12, 0xb0, 0x4c, 0x1b, 0xb4, 0xb7, 0x0e, 0x9d, 0x44, 0xc5, 0xda, 0xe2, 0xbd, 0x0e, 0xc3, 0x7e, - 0x13, 0xb5, 0x81, 0x7b, 0x13, 0x46, 0xfc, 0x52, 0x6d, 0xd1, 0xce, 0xc3, 0x69, 0xbf, 0x5c, 0xa0, - 0x09, 0x2d, 0x70, 0x3b, 0x37, 0xe7, 0x2d, 0x78, 0x0b, 0xce, 0x36, 0x99, 0xb2, 0xcd, 0x98, 0x6f, - 0x43, 0xb6, 0x49, 0xb0, 0xed, 0xb0, 0xe7, 0xe0, 0x6c, 0x30, 0xa0, 0x9b, 0xce, 0x29, 0xe0, 0x3c, - 0x9c, 0x6b, 0x8e, 0xef, 0xa6, 0x83, 0x10, 0xe8, 0x87, 0x88, 0xcb, 0xaf, 0xcb, 0xe0, 0x31, 0x7b, - 0x3a, 0x54, 0xbc, 0x04, 0x11, 0xd6, 0x45, 0xbc, 0xb6, 0xe7, 0xa0, 0xf0, 0xbe, 0x83, 0x62, 0x07, - 0x0e, 0x3a, 0xc5, 0x4a, 0x63, 0x61, 0x46, 0x98, 0x15, 0xf2, 0x05, 0x21, 0x3f, 0x25, 0xcc, 0x7d, - 0xe5, 0x20, 0xb4, 0xcc, 0xc5, 0x62, 0xe9, 0x9e, 0x46, 0xc3, 0x1b, 0x4f, 0xf7, 0x8e, 0xfe, 0x02, - 0xc1, 0x99, 0xf7, 0x6b, 0x96, 0x6d, 0x62, 0xb9, 0xba, 0xae, 0x59, 0xb7, 0xdd, 0x43, 0x7c, 0xd5, - 0xd0, 0xaf, 0x19, 0xba, 0x8d, 0xef, 0xda, 0xbc, 0x08, 0x49, 0xdb, 0xac, 0x5b, 0x36, 0xae, 0x48, - 0x8a, 0x2c, 0xd5, 0x4d, 0x8d, 0x9d, 0x86, 0x8c, 0x7d, 0xe5, 0x20, 0xee, 0x2f, 0x77, 0x51, 0xbc, - 0x86, 0xab, 0x42, 0xae, 0x2c, 0x5b, 0x78, 0x76, 0x9a, 0x74, 0x14, 0x31, 0x93, 0x54, 0x4b, 0x0f, - 0x1e, 0xc4, 0xbc, 0xd3, 0x92, 0x30, 0xe9, 0xcf, 0x7a, 0x19, 0xc6, 0x35, 0xf9, 0x7d, 0x53, 0x23, - 0x55, 0xe7, 0x21, 0x26, 0x2b, 0x68, 0x8f, 0x53, 0x95, 0xf3, 0x0f, 0xef, 0xa7, 0x7c, 0x93, 0xd1, - 0x54, 0x8b, 0xd4, 0x3a, 0x3d, 0x0d, 0xec, 0xe2, 0x05, 0xe8, 0xf3, 0x3d, 0x67, 0x96, 0x39, 0xc5, - 0x2c, 0x43, 0x0f, 0xe6, 0xa7, 0x84, 0xfc, 0x5f, 0xec, 0x52, 0x4b, 0x84, 0xd2, 0xe1, 0xd1, 0xdf, - 0x85, 0x53, 0xeb, 0x9a, 0x75, 0x0d, 0x9b, 0xb6, 0xba, 0xa1, 0x2a, 0xb2, 0x8d, 0x2d, 0x5a, 0xc7, - 0x97, 0x21, 0x6d, 0x6b, 0x96, 0xa4, 0xf8, 0xee, 0x67, 0x10, 0xcd, 0xa2, 0xe7, 0x9b, 0x66, 0x19, - 0xd4, 0xa6, 0x93, 0xec, 0xa7, 0x0b, 0xff, 0x31, 0x0a, 0xa5, 0x91, 0xf7, 0x2d, 0x86, 0xc4, 0x94, - 0x1d, 0x1c, 0x87, 0xb5, 0x11, 0x4f, 0xa3, 0x30, 0xe0, 0x33, 0xff, 0xaa, 0x6c, 0xca, 0x55, 0x6c, - 0x63, 0xd3, 0xe2, 0x2f, 0x42, 0xd8, 0xd2, 0x55, 0x66, 0xec, 0x21, 0xaf, 0x5f, 0xa3, 0xef, 0x03, - 0x98, 0x65, 0x33, 0x0f, 0x42, 0xa5, 0x2e, 0x91, 0x48, 0xf1, 0xcb, 0x30, 0x58, 0xb7, 0xb0, 0xb4, - 0x65, 0x58, 0xb6, 0xb4, 0x85, 0xe5, 0x0a, 0x36, 0x25, 0xd9, 0x92, 0x88, 0x7e, 0xbc, 0x63, 0xcb, - 0xcf, 0xd7, 0x2d, 0x5c, 0x32, 0x2c, 0xbb, 0x44, 0x75, 0xae, 0x5a, 0x6b, 0xba, 0xca, 0xcf, 0x41, - 0xbc, 0xa2, 0x5a, 0x72, 0x59, 0xc3, 0x14, 0xa0, 0xb7, 0x23, 0x00, 0x30, 0x51, 0xa2, 0xf8, 0x5b, - 0x00, 0xd4, 0x6a, 0x86, 0xbe, 0xa1, 0x6e, 0xb2, 0x5e, 0x22, 0xdb, 0xd2, 0xab, 0xc4, 0x6a, 0x54, - 0xaa, 0x38, 0xfc, 0xd4, 0x41, 0xa8, 0xf5, 0xcb, 0x17, 0xb1, 0xc7, 0xf6, 0xc4, 0xf8, 0x0f, 0x61, - 0x88, 0xac, 0xcf, 0xa2, 0x75, 0x81, 0xb4, 0x83, 0x4d, 0xd7, 0x8c, 0xaa, 0xa1, 0xb3, 0xc6, 0xe2, - 0xf9, 0xd5, 0x4d, 0xa7, 0x20, 0x2f, 0x21, 0x71, 0xa0, 0x6e, 0x61, 0x56, 0x78, 0xfa, 0xd0, 0xf9, - 0x55, 0xc8, 0x58, 0xdb, 0x6a, 0xad, 0xe5, 0xc8, 0x9d, 0xcf, 0xbc, 0x06, 0x89, 0x5e, 0x0b, 0xc4, - 0x1b, 0x70, 0x6a, 0xc7, 0xd0, 0x6c, 0x6c, 0x9a, 0xb2, 0xe4, 0xdb, 0x04, 0x89, 0x8e, 0x60, 0x7d, - 0x9e, 0xca, 0xba, 0x17, 0xea, 0xfc, 0x04, 0x44, 0x75, 0x43, 0xaa, 0xda, 0x5a, 0xe7, 0xd3, 0xb3, - 0x90, 0x18, 0xd1, 0x8d, 0xef, 0xdb, 0x9a, 0xc5, 0xff, 0x00, 0x62, 0xc4, 0x86, 0x54, 0xc3, 0xed, - 0x31, 0xa6, 0x9f, 0x6b, 0xb4, 0x16, 0x9b, 0xa3, 0xc8, 0xed, 0x3b, 0x08, 0x95, 0x42, 0x62, 0xb4, - 0x6e, 0x61, 0x0a, 0x7c, 0x1b, 0x7a, 0x3d, 0x60, 0x92, 0xc8, 0x59, 0x19, 0x7e, 0xcc, 0xf6, 0x3e, - 0xee, 0xdb, 0x64, 0xa5, 0x90, 0x08, 0x0c, 0x74, 0xa5, 0xfc, 0xa3, 0x85, 0xf8, 0xb3, 0x2b, 0x31, - 0x7a, 0xd0, 0x37, 0x2f, 0x5c, 0x2e, 0xce, 0x01, 0x58, 0xba, 0xea, 0x6d, 0xe9, 0xb7, 0xf7, 0x1c, - 0x14, 0x67, 0x07, 0x7d, 0xd1, 0x7c, 0x5e, 0xc8, 0x0b, 0xf9, 0xc2, 0x27, 0x2d, 0xa3, 0xa8, 0x78, - 0x1d, 0x32, 0x9e, 0xf3, 0x1a, 0x6e, 0xf7, 0x60, 0x2e, 0xec, 0x39, 0x28, 0xc1, 0x38, 0x33, 0x92, - 0xa7, 0x84, 0xd9, 0x06, 0x65, 0x0e, 0xe2, 0x74, 0x7d, 0x3e, 0xc5, 0xc8, 0xbe, 0x83, 0x7a, 0x88, - 0xe2, 0xac, 0x90, 0x9f, 0x16, 0xe6, 0x5a, 0x2b, 0x36, 0xb8, 0xd6, 0xe5, 0xdd, 0x9e, 0x34, 0x8c, - 0xfe, 0x17, 0xf2, 0xce, 0x75, 0x56, 0x0d, 0x43, 0xbb, 0x8e, 0x37, 0xe4, 0xba, 0x66, 0xaf, 0xd5, - 0xcb, 0x16, 0xb6, 0xf9, 0x3f, 0x41, 0x90, 0xac, 0xb8, 0x77, 0x24, 0x8b, 0xde, 0xca, 0x44, 0x28, - 0xef, 0xdc, 0x3c, 0x66, 0xf5, 0x7e, 0x04, 0x72, 0x3c, 0x70, 0xe5, 0xd6, 0xf2, 0x67, 0xbd, 0x3a, - 0x9e, 0x12, 0xc9, 0x4f, 0x51, 0x28, 0x9d, 0xf3, 0x57, 0xf4, 0x89, 0x8a, 0x5f, 0x65, 0xf8, 0xbb, - 0xc0, 0x1f, 0xc5, 0x38, 0x49, 0x7d, 0x3f, 0xfa, 0x59, 0x18, 0xfa, 0x0e, 0xa7, 0xe7, 0xa2, 0x58, - 0xbc, 0x06, 0xe9, 0x46, 0xfd, 0xe7, 0xae, 0xd5, 0x23, 0xd9, 0x7c, 0xd3, 0x62, 0xd9, 0x4b, 0xeb, - 0x71, 0xaf, 0x58, 0x76, 0x11, 0x02, 0x87, 0xe8, 0x49, 0x8f, 0x20, 0x29, 0xf1, 0xe6, 0xc4, 0x14, - 0x0e, 0xc8, 0x5a, 0xfc, 0x65, 0xe8, 0x95, 0xf5, 0x7b, 0x8d, 0x8a, 0x93, 0x25, 0x9d, 0x76, 0xb4, - 0x16, 0x97, 0xf5, 0x7b, 0x8d, 0x13, 0x24, 0xf9, 0x88, 0x4f, 0x4e, 0x76, 0x98, 0x71, 0xc4, 0x27, - 0xa5, 0x66, 0x1b, 0x93, 0xd9, 0x6d, 0xc8, 0xaa, 0x26, 0x99, 0xf8, 0x77, 0xea, 0xd8, 0xb2, 0x9f, - 0x73, 0x50, 0x1b, 0x27, 0xb2, 0xa2, 0x2b, 0xba, 0x30, 0xfb, 0xc8, 0x41, 0x05, 0x38, 0x05, 0x49, - 0x17, 0x2a, 0x77, 0x4d, 0x93, 0x2d, 0x0b, 0x5b, 0x3c, 0xca, 0xc3, 0x08, 0x0c, 0xb2, 0x9b, 0x37, - 0x64, 0x4d, 0x2b, 0xcb, 0xca, 0x76, 0x6e, 0xd5, 0xd0, 0x54, 0xe5, 0x1e, 0x8f, 0x0a, 0xc5, 0x8b, - 0x30, 0xb8, 0xc1, 0xee, 0x4a, 0x35, 0x7a, 0xd7, 0x0b, 0xee, 0x3e, 0x5f, 0xbe, 0xec, 0xa6, 0x9b, - 0x82, 0x65, 0xcb, 0x3f, 0x4b, 0x7a, 0x87, 0xe3, 0x64, 0x49, 0x57, 0x2b, 0x3b, 0x24, 0xc4, 0x2b, - 0x2b, 0xee, 0x4b, 0x7d, 0x7e, 0x19, 0x78, 0xc5, 0xd0, 0x75, 0xac, 0xd0, 0x1d, 0x66, 0xab, 0x55, - 0x6c, 0xd4, 0xdd, 0x23, 0xb7, 0x44, 0x71, 0xe4, 0x89, 0x83, 0xb8, 0xc2, 0xa4, 0x7b, 0xee, 0xf8, - 0xf1, 0xee, 0xe1, 0xd9, 0xe3, 0xde, 0x7f, 0x56, 0xc5, 0xbe, 0x43, 0xb5, 0x75, 0x57, 0x8b, 0x5f, - 0x82, 0xbe, 0x2d, 0xdb, 0xae, 0x49, 0x6a, 0x45, 0xc3, 0x0d, 0x28, 0xf7, 0x14, 0xf3, 0xec, 0x13, - 0x07, 0x45, 0xa6, 0x26, 0x27, 0x5b, 0x81, 0xfd, 0xdb, 0xeb, 0x62, 0x8a, 0xe8, 0x2d, 0x55, 0x34, - 0xec, 0x41, 0xbd, 0x07, 0x43, 0x9e, 0xf7, 0x14, 0xd5, 0x54, 0xea, 0xaa, 0x2d, 0x95, 0x4d, 0x2c, - 0x6f, 0x63, 0x33, 0x93, 0xee, 0x68, 0xe5, 0x01, 0xa6, 0x76, 0xcd, 0xd5, 0x2a, 0xba, 0x4a, 0x14, - 0x8f, 0xa5, 0xc7, 0x66, 0x3c, 0xee, 0x39, 0x78, 0xae, 0x5a, 0x13, 0xde, 0x2a, 0xa4, 0x9a, 0x71, - 0x5c, 0xef, 0xbf, 0xd1, 0x66, 0x17, 0x04, 0xf5, 0x4b, 0x5d, 0x62, 0x52, 0x09, 0x22, 0x8a, 0x70, - 0xda, 0x9b, 0xa1, 0x51, 0xb7, 0x35, 0x15, 0x9b, 0x52, 0x05, 0xdb, 0xae, 0x81, 0x19, 0xf3, 0xb7, - 0xcb, 0x33, 0xde, 0xd2, 0x56, 0x5c, 0xbd, 0xeb, 0x9e, 0x1a, 0x7f, 0x07, 0xfa, 0x8e, 0x62, 0xc5, - 0x28, 0xd6, 0xc5, 0x36, 0xf3, 0x6c, 0xc6, 0x20, 0xfb, 0xb4, 0x84, 0xc4, 0xb4, 0xd1, 0x8c, 0x7d, - 0x1d, 0x78, 0xdd, 0x90, 0x6a, 0xb2, 0xae, 0x2a, 0x92, 0xbd, 0x65, 0x62, 0x6b, 0xcb, 0xd0, 0x2a, - 0x19, 0xe8, 0x98, 0xd4, 0xd2, 0xba, 0xb1, 0x4a, 0x14, 0xd6, 0x3d, 0x79, 0x7e, 0x01, 0x52, 0xcd, - 0x10, 0x71, 0x1a, 0x30, 0xa9, 0x27, 0x0e, 0x0a, 0x15, 0x66, 0x68, 0xf5, 0x34, 0x16, 0xca, 0x54, - 0x4a, 0x21, 0x31, 0x59, 0x0b, 0xea, 0xbe, 0x0b, 0xa9, 0x46, 0xc9, 0xc3, 0x98, 0xa8, 0x53, 0x3e, - 0x0e, 0x8b, 0x49, 0xaf, 0xec, 0x61, 0xec, 0x22, 0x43, 0x12, 0xeb, 0x01, 0x7d, 0x37, 0x09, 0x16, - 0x4e, 0x40, 0x11, 0x0c, 0x8b, 0xe5, 0xd7, 0xb0, 0x98, 0x70, 0x11, 0x7d, 0x04, 0x46, 0x42, 0x3b, - 0xef, 0xd5, 0x57, 0xa7, 0x3a, 0x4c, 0x90, 0x13, 0xe3, 0x54, 0x96, 0x55, 0x4f, 0x22, 0x24, 0xc8, - 0x65, 0xc1, 0xfb, 0xfd, 0x0d, 0x3b, 0x9b, 0x6a, 0xe7, 0xb8, 0x12, 0x91, 0x5d, 0x35, 0x0d, 0xdb, - 0x50, 0x0c, 0x8d, 0xed, 0xee, 0x12, 0x27, 0xd2, 0xe1, 0x0b, 0xde, 0x6e, 0xff, 0x2e, 0xa4, 0xe5, - 0xba, 0x6d, 0x48, 0x74, 0x9b, 0xb2, 0x29, 0xf5, 0x77, 0x9c, 0x52, 0x92, 0xc8, 0x13, 0x6c, 0x36, - 0x2b, 0x0c, 0xc3, 0xac, 0x54, 0xb5, 0x4d, 0x59, 0xb7, 0x36, 0x0c, 0xb3, 0xea, 0x26, 0x67, 0xfb, - 0x5e, 0x0d, 0x67, 0xfa, 0x28, 0xd6, 0x5b, 0x4d, 0x58, 0x6e, 0x9d, 0xba, 0x1e, 0x90, 0x27, 0x71, - 0x25, 0x66, 0xb6, 0xda, 0x3c, 0xe1, 0x31, 0x9c, 0x63, 0xae, 0xd1, 0xca, 0x92, 0x65, 0xd4, 0x4d, - 0x85, 0xfe, 0x2e, 0xa3, 0x86, 0x4d, 0x4b, 0xb5, 0x6c, 0xc2, 0x60, 0x99, 0xc1, 0xf6, 0xf3, 0x2e, - 0x46, 0xd9, 0xdb, 0xd9, 0x52, 0xb7, 0x38, 0xe2, 0xe2, 0xdc, 0x2a, 0xaf, 0x51, 0x94, 0xa5, 0xda, - 0xea, 0x21, 0x06, 0xbf, 0x09, 0x39, 0x2f, 0x84, 0xda, 0x8e, 0x33, 0x74, 0xbc, 0x71, 0xce, 0x30, - 0xa0, 0x96, 0x03, 0x2d, 0x94, 0x1f, 0x39, 0xe8, 0x03, 0x38, 0x07, 0xfc, 0xe2, 0x5d, 0x05, 0x53, - 0x67, 0xe4, 0x4a, 0xb2, 0x5e, 0xd1, 0x54, 0x7d, 0x93, 0xef, 0x71, 0xfb, 0xbe, 0x59, 0xe1, 0x32, - 0x8c, 0x78, 0x2f, 0xe2, 0xd8, 0x61, 0x5a, 0xce, 0x8b, 0xa3, 0x50, 0xbe, 0x00, 0x59, 0x18, 0xf8, - 0xbe, 0x6a, 0x29, 0x58, 0xd3, 0x64, 0x1d, 0x1b, 0x75, 0x2b, 0xe7, 0x79, 0xb5, 0x3b, 0x3f, 0x2f, - 0xe4, 0xe7, 0x8a, 0x02, 0x0c, 0x36, 0x71, 0x92, 0x97, 0x1b, 0xf8, 0x3d, 0x07, 0xa5, 0xd9, 0x7b, - 0xbf, 0x48, 0x7e, 0x96, 0xbe, 0xcc, 0xba, 0x08, 0x99, 0x23, 0xdc, 0xe0, 0x7f, 0xb7, 0x15, 0xdd, - 0x77, 0x50, 0x84, 0xf4, 0x5e, 0x73, 0xc2, 0x7c, 0xf1, 0x6d, 0xe8, 0x6f, 0xda, 0xa6, 0xd4, 0xdf, - 0x34, 0xe9, 0x00, 0xab, 0xa8, 0xba, 0xf3, 0x93, 0x42, 0x3e, 0x5f, 0x1c, 0x85, 0x84, 0xbb, 0x9b, - 0xfc, 0x89, 0x89, 0x94, 0x6b, 0xbd, 0x54, 0x66, 0x4a, 0xc8, 0x4f, 0x17, 0xc7, 0x80, 0xa7, 0x11, - 0x58, 0x63, 0xe1, 0xea, 0x82, 0xf5, 0xef, 0x39, 0xa8, 0x7f, 0xdf, 0x41, 0xfc, 0x81, 0x83, 0x62, - 0x85, 0x49, 0x21, 0x3f, 0x23, 0xe4, 0x2f, 0x17, 0x2f, 0xc3, 0xb9, 0x76, 0xae, 0xf1, 0x46, 0x18, - 0xdc, 0x73, 0xd0, 0xd0, 0xbe, 0x83, 0x06, 0xc8, 0xf2, 0x0a, 0x05, 0x21, 0x57, 0x98, 0x7a, 0xea, - 0xf6, 0xcd, 0xe1, 0x34, 0xb7, 0xcc, 0xc5, 0x22, 0xe9, 0xa8, 0x5b, 0xc5, 0x2d, 0x73, 0xb1, 0xde, - 0x74, 0x62, 0x99, 0x8b, 0xf1, 0xe9, 0x53, 0xcb, 0x5c, 0x6c, 0x20, 0x3d, 0x38, 0xfa, 0x38, 0x0e, - 0xc9, 0xef, 0x69, 0x46, 0x59, 0xd6, 0xd6, 0x6a, 0x58, 0xa1, 0xb1, 0x77, 0x17, 0x92, 0x6c, 0xaf, - 0xbb, 0x25, 0x68, 0xbb, 0x02, 0xe7, 0xf9, 0x67, 0xb1, 0xc5, 0xec, 0x61, 0x71, 0x73, 0xd8, 0x55, - 0x7a, 0xdf, 0x32, 0x48, 0x4c, 0x18, 0x3e, 0x0d, 0x8b, 0xbf, 0x04, 0x11, 0xdd, 0x90, 0x48, 0xa9, - 0x1f, 0xea, 0x98, 0x94, 0xba, 0x75, 0x63, 0x5d, 0xb3, 0xf8, 0xdf, 0x00, 0x52, 0xcd, 0x53, 0xf9, - 0xf0, 0x31, 0x0f, 0xd1, 0x5b, 0x76, 0xad, 0xa5, 0x2e, 0x31, 0x52, 0xb7, 0x30, 0x81, 0xfc, 0x3d, - 0x04, 0x5c, 0xcd, 0x30, 0xdd, 0x5a, 0x26, 0x51, 0xd4, 0x9f, 0x38, 0x28, 0x3c, 0x3d, 0x3d, 0x75, - 0xe0, 0xa0, 0x9b, 0x10, 0x9a, 0x9f, 0x04, 0x6e, 0x7e, 0x92, 0x7e, 0xce, 0x93, 0xcf, 0xc2, 0xe4, - 0x4c, 0x81, 0x7c, 0xce, 0xbb, 0x9f, 0xb3, 0xe4, 0xf3, 0xf2, 0x0c, 0x10, 0x05, 0xfa, 0x90, 0x7e, - 0xce, 0xbb, 0x9f, 0x73, 0xf4, 0xe1, 0x2c, 0x70, 0xf3, 0xd3, 0xd3, 0x53, 0x8d, 0xbe, 0x78, 0x2c, - 0x74, 0x01, 0x79, 0x75, 0xc0, 0x2f, 0x7f, 0x19, 0x2e, 0x21, 0x91, 0x8e, 0xce, 0xbf, 0x03, 0x94, - 0x77, 0x08, 0x21, 0x28, 0x12, 0x9d, 0x4f, 0xb2, 0xf3, 0x4f, 0x1d, 0x1a, 0xd2, 0xab, 0x44, 0x7d, - 0x02, 0xa2, 0x5a, 0xd9, 0xd5, 0x4b, 0x75, 0xd4, 0x8b, 0x68, 0x65, 0xaa, 0xb0, 0x04, 0x03, 0x96, - 0x5c, 0xc5, 0xa4, 0xfd, 0x6e, 0x54, 0xb7, 0x54, 0xbd, 0x73, 0x3e, 0xe3, 0x89, 0xd2, 0x55, 0xcb, - 0xab, 0x39, 0x29, 0xd4, 0x1f, 0x22, 0xe8, 0xdb, 0xc2, 0xb2, 0x66, 0x6f, 0x49, 0xca, 0x16, 0xa6, - 0x65, 0x9a, 0x69, 0xb3, 0xa4, 0xf6, 0xc1, 0xaf, 0xc8, 0x8e, 0x9e, 0xf9, 0x42, 0x62, 0xca, 0x1d, - 0xfa, 0x1a, 0x19, 0x99, 0x4e, 0xe7, 0x03, 0x88, 0xbb, 0xb7, 0xe8, 0x64, 0x58, 0x5f, 0x72, 0x9c, - 0x2e, 0x2f, 0xf3, 0xf0, 0xbe, 0x5f, 0xb3, 0x11, 0xc8, 0x24, 0x4b, 0x1d, 0xde, 0xe6, 0xef, 0xc2, - 0xa0, 0xbf, 0x73, 0x92, 0x64, 0x6d, 0xd3, 0x30, 0x55, 0x7b, 0xab, 0x4a, 0x6b, 0x96, 0x64, 0x41, - 0x68, 0x93, 0xae, 0x6e, 0xf9, 0x94, 0xae, 0x7a, 0x3a, 0xc5, 0x53, 0x4f, 0x1c, 0x14, 0xbf, 0x55, - 0x94, 0x56, 0x6e, 0x2f, 0x8a, 0xe2, 0xd2, 0xf5, 0x45, 0xb2, 0x40, 0x71, 0x40, 0x6b, 0x25, 0xcb, - 0xef, 0x00, 0x7f, 0xd8, 0x89, 0xd0, 0xae, 0xc2, 0xab, 0x6e, 0x92, 0x85, 0xf1, 0xe7, 0xf5, 0x22, - 0x9e, 0xbc, 0x5b, 0x59, 0x17, 0x87, 0x9e, 0x38, 0x28, 0x75, 0x6b, 0xe5, 0xda, 0xd5, 0x5b, 0xd2, - 0xaa, 0xb8, 0x78, 0x63, 0x51, 0x14, 0x17, 0xaf, 0xd3, 0xb1, 0xfb, 0x70, 0xb3, 0x06, 0xbf, 0x0d, - 0x69, 0x99, 0x15, 0xd1, 0x8d, 0xd4, 0xdc, 0x7b, 0xa2, 0x57, 0x8d, 0x2d, 0xea, 0x70, 0xb7, 0x7e, - 0x10, 0x53, 0x72, 0x53, 0x79, 0x7e, 0x07, 0x12, 0xf4, 0x37, 0xb8, 0xf4, 0x47, 0x01, 0xba, 0xac, - 0x65, 0xbe, 0x8c, 0x1e, 0xbb, 0x4f, 0x4f, 0x3f, 0xbc, 0x1f, 0x54, 0x16, 0x7b, 0xc9, 0xe5, 0x12, - 0xbb, 0x5a, 0xb8, 0xf3, 0xc8, 0x41, 0xb7, 0xe1, 0x0c, 0x24, 0x03, 0x29, 0xc7, 0xe2, 0x21, 0x2f, - 0xe4, 0xa7, 0x84, 0xcb, 0xc2, 0x9c, 0x30, 0x0f, 0x3c, 0x24, 0x4a, 0xd4, 0xdb, 0x39, 0x1a, 0x52, - 0x16, 0x8f, 0x66, 0x01, 0x20, 0xbc, 0x7e, 0x6b, 0x8d, 0x47, 0xd3, 0x17, 0x10, 0x0c, 0x42, 0x72, - 0xc5, 0xde, 0x22, 0x89, 0x0a, 0xdb, 0xb6, 0xaa, 0x6f, 0xd2, 0x4c, 0x75, 0x01, 0x15, 0xcf, 0xb2, - 0x53, 0xa5, 0xe0, 0x6f, 0x25, 0x38, 0xf6, 0x5b, 0x89, 0xe2, 0x28, 0xc4, 0xc9, 0xb6, 0xf0, 0x9f, - 0xf5, 0x75, 0xef, 0x3b, 0x28, 0x71, 0xe0, 0xa0, 0xe8, 0x0c, 0x69, 0xcc, 0xf3, 0x33, 0xc5, 0x4b, - 0x90, 0x39, 0xb2, 0x8f, 0xfc, 0x39, 0x25, 0x98, 0x77, 0x96, 0xb9, 0x18, 0x97, 0xee, 0x5e, 0xe6, - 0x62, 0x89, 0x74, 0x92, 0xb5, 0xec, 0x7f, 0x10, 0x83, 0xe4, 0x35, 0x13, 0xcb, 0x36, 0x6e, 0x50, - 0xfb, 0x6f, 0xbe, 0x34, 0x6a, 0xff, 0xff, 0x47, 0xdd, 0xfd, 0x7e, 0xe6, 0xfe, 0x36, 0x30, 0xa9, - 0xd0, 0x96, 0x48, 0x5b, 0x11, 0xdd, 0xfa, 0x8b, 0x12, 0x5d, 0x32, 0x48, 0x74, 0x41, 0x7a, 0x53, - 0x5e, 0x26, 0xbd, 0xb5, 0x63, 0xb2, 0x1f, 0xbe, 0x3c, 0x26, 0x6b, 0x45, 0x58, 0xf8, 0x57, 0x41, - 0x58, 0x47, 0xa8, 0x6a, 0xa1, 0xef, 0x67, 0x57, 0x9a, 0x2a, 0xa9, 0xe2, 0x99, 0x00, 0x0b, 0x24, - 0x3f, 0xfa, 0x1a, 0xf9, 0xae, 0x8b, 0xd9, 0x20, 0x09, 0xa4, 0x3e, 0xfa, 0x1a, 0xf9, 0x6f, 0x14, - 0xe7, 0x3b, 0x10, 0xc0, 0x99, 0x8f, 0xbe, 0x46, 0x6d, 0x9f, 0xb6, 0xe0, 0x82, 0x4f, 0x62, 0x90, - 0x12, 0x71, 0x4d, 0x93, 0x95, 0x57, 0x64, 0xf0, 0x8a, 0x0c, 0x5e, 0x91, 0xc1, 0xaf, 0x35, 0x19, - 0xfc, 0x7e, 0x0c, 0xe2, 0xdf, 0xc3, 0xf6, 0x2b, 0x22, 0x78, 0x45, 0x04, 0xaf, 0x88, 0xe0, 0xd7, - 0x98, 0x08, 0x8a, 0x7f, 0x8a, 0xf6, 0x3f, 0xcf, 0x76, 0x3d, 0xfe, 0x3c, 0xdb, 0xf5, 0xf4, 0xf3, - 0x2c, 0x7a, 0x70, 0x90, 0x45, 0x9f, 0x1e, 0x64, 0xd1, 0x3f, 0x1f, 0x64, 0xd1, 0xfe, 0x41, 0x16, - 0x3d, 0x3e, 0xc8, 0xa2, 0x9f, 0x1f, 0x64, 0xd1, 0x97, 0x07, 0xd9, 0xae, 0xa7, 0x07, 0x59, 0xf4, - 0xc7, 0x5f, 0x64, 0xbb, 0xf6, 0xbe, 0xc8, 0xa2, 0xfd, 0x2f, 0xb2, 0x5d, 0x8f, 0xbf, 0xc8, 0x76, - 0xdd, 0x79, 0x7f, 0xd3, 0xa8, 0x6d, 0x6f, 0x8e, 0x7b, 0x6f, 0x79, 0xc7, 0xeb, 0xd6, 0x04, 0xfd, - 0xb2, 0x61, 0x98, 0xd5, 0x4b, 0x35, 0xd3, 0xd8, 0x51, 0x2b, 0xd8, 0xbc, 0xe4, 0x3d, 0x9e, 0xa8, - 0x95, 0x37, 0x8d, 0x09, 0x7c, 0xd7, 0x66, 0xff, 0x9c, 0x6c, 0xf7, 0xc7, 0xd2, 0x72, 0x84, 0x1e, - 0x8b, 0x4d, 0xfd, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xaa, 0x4c, 0x3f, 0x49, 0x82, 0x3a, 0x00, - 0x00, + // 4122 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7b, 0x5d, 0x6c, 0xdb, 0x58, + 0x76, 0xbf, 0xae, 0x24, 0xcb, 0xf2, 0x91, 0xf5, 0x61, 0xc6, 0x76, 0x64, 0x3b, 0x51, 0x14, 0xcf, + 0x97, 0x27, 0xc3, 0xd8, 0x16, 0xfd, 0x19, 0x2f, 0x26, 0xb3, 0xa3, 0xc4, 0xb3, 0xb2, 0x93, 0x1d, + 0xfb, 0x4f, 0x7b, 0xb2, 0xff, 0x06, 0xdd, 0x61, 0x29, 0xea, 0xda, 0xe6, 0x9a, 0x26, 0x59, 0x92, + 0xf2, 0xc4, 0x0f, 0x41, 0x83, 0x41, 0x51, 0x6c, 0x07, 0x05, 0xda, 0x6e, 0x9f, 0x76, 0x1f, 0x8a, + 0xa2, 0x40, 0xd1, 0x41, 0x8a, 0x02, 0x05, 0xda, 0x05, 0x8a, 0xa5, 0x1f, 0x82, 0x01, 0x16, 0x2d, + 0xf6, 0xa1, 0xf5, 0xe3, 0x20, 0x2f, 0xdd, 0xf1, 0xbc, 0x4c, 0xfb, 0xd0, 0x0e, 0x02, 0x14, 0x18, + 0x4c, 0x1f, 0xb6, 0xb8, 0x97, 0x97, 0x12, 0x29, 0x4b, 0x72, 0x3c, 0x9b, 0x6d, 0x8b, 0xd9, 0xbc, + 0x10, 0x24, 0xef, 0x39, 0xbf, 0x7b, 0xef, 0xb9, 0xe7, 0xfc, 0xce, 0xb9, 0x97, 0x12, 0xbc, 0xb6, + 0x8f, 0xed, 0x49, 0xd5, 0x98, 0xb2, 0x95, 0x1d, 0xbc, 0x27, 0x4f, 0xed, 0xab, 0xf8, 0x3d, 0x7b, + 0xca, 0xb0, 0xd4, 0x6d, 0x55, 0x97, 0x4c, 0xc3, 0xd0, 0xa6, 0x9c, 0x03, 0x13, 0xdb, 0x93, 0xa6, + 0x65, 0x38, 0x06, 0x77, 0xc9, 0x13, 0x9e, 0xf4, 0x84, 0x27, 0xa9, 0xf0, 0x64, 0x40, 0x78, 0xf4, + 0xea, 0xb6, 0xea, 0xec, 0xd4, 0xab, 0x93, 0x8a, 0xb1, 0x37, 0xb5, 0x6d, 0x6c, 0x1b, 0x53, 0x54, + 0xaf, 0x5a, 0xdf, 0xa2, 0x4f, 0xf4, 0x81, 0xde, 0x79, 0x78, 0xa3, 0x97, 0xc3, 0x9d, 0x2b, 0x5a, + 0xdd, 0x76, 0xb0, 0x15, 0xec, 0x72, 0x74, 0x2c, 0x2c, 0x62, 0x98, 0x8e, 0x6a, 0xe8, 0x7e, 0xe3, + 0x48, 0xb8, 0x31, 0xa8, 0x77, 0xa1, 0x65, 0x5e, 0xb2, 0xa6, 0xd6, 0x64, 0x07, 0xb3, 0xd6, 0xe2, + 0xc9, 0x59, 0x4b, 0x61, 0xe8, 0x4b, 0xed, 0xec, 0x12, 0xe8, 0x60, 0xfc, 0x1f, 0x10, 0x0c, 0xae, + 0xd1, 0xa9, 0x6f, 0x60, 0x6b, 0x1f, 0x5b, 0xeb, 0xf5, 0xaa, 0xa6, 0x2a, 0x2b, 0xeb, 0xdc, 0x18, + 0x44, 0x55, 0x33, 0x8f, 0x8a, 0x68, 0xa2, 0xaf, 0xdc, 0xf7, 0x93, 0x7f, 0x7d, 0x14, 0x8b, 0x5b, + 0xd1, 0x7b, 0xa8, 0x12, 0x11, 0xa3, 0xaa, 0xc9, 0xc9, 0x10, 0x57, 0xcd, 0xfd, 0xf9, 0x7c, 0x8c, + 0x36, 0xdf, 0xfa, 0xb7, 0xfb, 0x13, 0x35, 0xbc, 0x67, 0x94, 0x78, 0x07, 0xdb, 0x0e, 0xaf, 0x58, + 0x0e, 0x6f, 0x3b, 0xf2, 0xb6, 0xaa, 0x6f, 0xf3, 0xb6, 0xb1, 0xe5, 0x54, 0x65, 0x7d, 0x57, 0xda, + 0xc3, 0x0a, 0x6f, 0x5a, 0x46, 0xed, 0xe1, 0x21, 0xe2, 0x20, 0xa7, 0xd4, 0x74, 0x49, 0x33, 0xe4, + 0x5a, 0x55, 0xd6, 0x64, 0x5d, 0xc1, 0x16, 0xc1, 0xef, 0xb1, 0x62, 0x0f, 0x10, 0xe9, 0x80, 0x42, + 0x2f, 0xc5, 0x9f, 0x5c, 0x47, 0x42, 0xf9, 0x05, 0xc8, 0x99, 0x74, 0x44, 0x92, 0x6a, 0x4a, 0xca, + 0x8e, 0xa1, 0x2a, 0x98, 0xcb, 0x3e, 0x72, 0x11, 0x3a, 0x72, 0x51, 0xf4, 0xd8, 0x45, 0xb1, 0x12, + 0x3f, 0xb3, 0x1a, 0x4f, 0x46, 0x73, 0xb1, 0xf1, 0x1f, 0x22, 0x18, 0x3e, 0x39, 0x93, 0xb7, 0xe5, + 0x3d, 0xcc, 0x4d, 0x43, 0xb2, 0xa6, 0xdb, 0x92, 0x2e, 0xef, 0x61, 0x36, 0xa3, 0x21, 0xd2, 0x63, + 0xaf, 0xd5, 0x93, 0x43, 0xf9, 0x07, 0x51, 0x36, 0xbb, 0x1d, 0x24, 0xf6, 0xd6, 0x74, 0x9b, 0x6a, + 0x2c, 0x43, 0xce, 0xc2, 0x5b, 0x16, 0xb6, 0x77, 0x24, 0x55, 0x77, 0xb0, 0xb5, 0x2f, 0x6b, 0xf9, + 0x68, 0x11, 0x4d, 0xa4, 0xcb, 0xa3, 0xa4, 0xf7, 0xc7, 0x2e, 0x8a, 0xcd, 0x4c, 0x4f, 0x7f, 0xe1, + 0xa2, 0x08, 0x51, 0x4e, 0x5c, 0x89, 0xe7, 0x1f, 0xfc, 0xe7, 0x8b, 0x62, 0x96, 0xe9, 0xac, 0x30, + 0x95, 0xa5, 0xc4, 0x93, 0xeb, 0xb1, 0x12, 0x2f, 0x8c, 0xff, 0x61, 0x1c, 0x86, 0x42, 0x63, 0xb3, + 0xd4, 0x7d, 0xd9, 0xc1, 0xa7, 0x99, 0xf9, 0x16, 0x33, 0x73, 0x8a, 0x36, 0xcf, 0x9d, 0xc1, 0xcc, + 0x27, 0x0d, 0xca, 0xad, 0x40, 0xbf, 0xad, 0x3a, 0x58, 0xd2, 0x0c, 0x45, 0x76, 0x0c, 0x8b, 0x4e, + 0x27, 0x25, 0x14, 0x27, 0xdb, 0x05, 0xc3, 0x86, 0xea, 0xe0, 0xdb, 0x9e, 0x5c, 0x39, 0xfe, 0x37, + 0x87, 0x08, 0x89, 0x29, 0xbb, 0xf9, 0x8a, 0x7b, 0x1d, 0x32, 0xaa, 0x6e, 0xab, 0x35, 0x2c, 0xe9, + 0xd8, 0x79, 0xcf, 0xb0, 0x76, 0xf3, 0x71, 0x0a, 0x36, 0xd8, 0x02, 0xb6, 0xbc, 0x67, 0x3a, 0x07, + 0x15, 0x24, 0xa6, 0x3d, 0xe9, 0xb7, 0x3d, 0x61, 0xee, 0x0d, 0xc8, 0x1a, 0x75, 0x27, 0xa4, 0xdf, + 0xd3, 0x55, 0x3f, 0xc3, 0xc4, 0x7d, 0x80, 0xdf, 0x82, 0x5e, 0x1b, 0x6f, 0xef, 0x61, 0xdd, 0xc9, + 0x27, 0xa8, 0xe2, 0x78, 0xdb, 0x59, 0xac, 0x55, 0xbf, 0x87, 0x15, 0x47, 0xc4, 0x5b, 0x9b, 0x07, + 0x26, 0x2e, 0x17, 0x1f, 0xde, 0xf7, 0xb5, 0x1e, 0x1c, 0x22, 0xf4, 0x93, 0x43, 0x94, 0x49, 0xa2, + 0x09, 0x34, 0x8d, 0x96, 0x12, 0x8a, 0xa1, 0x6f, 0xa9, 0xdb, 0x15, 0x24, 0xfa, 0x02, 0x4b, 0x7d, + 0x4f, 0xae, 0x27, 0x4a, 0xd3, 0xbc, 0xc0, 0xcf, 0x94, 0x5f, 0x82, 0x01, 0xd3, 0x5b, 0xae, 0x80, + 0x0f, 0xe6, 0x98, 0x0f, 0xc2, 0xb1, 0x8b, 0xe2, 0x25, 0xbe, 0x54, 0x2a, 0x5f, 0x86, 0x0c, 0x9b, + 0x4c, 0xd0, 0x4f, 0xe3, 0x47, 0x2e, 0x8a, 0x11, 0x3f, 0x9d, 0xe5, 0xe7, 0x56, 0xe3, 0x49, 0xc8, + 0xa5, 0x56, 0xe3, 0xc9, 0x58, 0x2e, 0x3e, 0xfe, 0x2f, 0x31, 0x38, 0xdf, 0xc6, 0x23, 0xa8, 0xf3, + 0x8d, 0xb4, 0xba, 0x6b, 0x77, 0xbf, 0x4c, 0x9c, 0xd9, 0x2f, 0xff, 0xf7, 0x7c, 0x21, 0xf2, 0x4b, + 0xfa, 0x42, 0xa4, 0x9b, 0x2f, 0xf4, 0x3e, 0x43, 0x5f, 0x88, 0x34, 0x7d, 0x01, 0x9e, 0x5c, 0xef, + 0x2d, 0xf1, 0xf3, 0xd4, 0x19, 0x5e, 0x38, 0xb1, 0xca, 0x03, 0x81, 0x55, 0xee, 0x99, 0xe5, 0xe7, + 0xf8, 0x05, 0xb6, 0xc2, 0x7f, 0x15, 0x85, 0x0b, 0xc1, 0x15, 0xbe, 0xa3, 0x5a, 0x4e, 0x5d, 0xd6, + 0xd8, 0xb8, 0xff, 0x47, 0x43, 0x5f, 0x81, 0xec, 0xbe, 0xd7, 0x7b, 0xc3, 0xc8, 0xd1, 0xa7, 0xb6, + 0xd5, 0xf0, 0xc3, 0xfb, 0xad, 0xda, 0xc4, 0x66, 0x62, 0x66, 0x3f, 0x34, 0xa1, 0xa5, 0xde, 0x27, + 0xd7, 0xe3, 0x24, 0x64, 0xca, 0x57, 0x61, 0xa4, 0x45, 0xbe, 0x5b, 0xe0, 0x78, 0x51, 0x31, 0xfe, + 0x21, 0x82, 0x42, 0x67, 0x6b, 0x9d, 0x16, 0x16, 0x0a, 0x64, 0xfd, 0x18, 0x7d, 0x86, 0x13, 0x64, + 0x90, 0xfe, 0x04, 0x7d, 0x32, 0xff, 0x41, 0x3c, 0x9c, 0x68, 0x6e, 0x2d, 0x6e, 0x90, 0x1b, 0x32, + 0xbb, 0x29, 0xe8, 0xb7, 0xbd, 0xdb, 0x60, 0xb2, 0x01, 0xb6, 0x24, 0xdf, 0x8f, 0x93, 0x25, 0x49, + 0x31, 0x09, 0x3a, 0xf0, 0x2a, 0xe4, 0x7c, 0x05, 0x1b, 0x6b, 0x58, 0x21, 0xc1, 0x98, 0x6a, 0x1b, + 0x8c, 0xb7, 0xe5, 0x2a, 0xd6, 0x36, 0x98, 0x0c, 0x1d, 0xf7, 0xb9, 0x8f, 0xef, 0xa3, 0xcf, 0x5c, + 0x84, 0x48, 0xb4, 0xff, 0xe8, 0x10, 0xc5, 0x21, 0x1a, 0x21, 0xf8, 0x59, 0x06, 0xe8, 0xcb, 0x7e, + 0x9d, 0x88, 0xff, 0x1b, 0x90, 0xde, 0xdf, 0x5d, 0xb4, 0x7d, 0x6d, 0x9b, 0xd1, 0x7f, 0x27, 0xf5, + 0x7e, 0x22, 0xcc, 0x74, 0xed, 0x20, 0xa7, 0x5f, 0x6e, 0xae, 0x93, 0xaa, 0x6f, 0x19, 0x34, 0x88, + 0x7d, 0xaf, 0xec, 0x29, 0xf1, 0xc5, 0xb3, 0xf3, 0xf9, 0x61, 0x14, 0x46, 0x82, 0x4e, 0x71, 0xc3, + 0xd0, 0xed, 0xba, 0xe6, 0xfb, 0xc5, 0xe5, 0x76, 0x7e, 0x11, 0xf6, 0x84, 0xaf, 0x0f, 0x25, 0x2f, + 0x25, 0x9f, 0x5c, 0xef, 0x29, 0x31, 0x3b, 0x3f, 0x85, 0x11, 0x89, 0xf9, 0x6c, 0x18, 0x0d, 0x59, + 0xaf, 0x6e, 0x3b, 0xc6, 0xde, 0xb2, 0x5e, 0x33, 0x0d, 0x55, 0x77, 0xb8, 0x35, 0x48, 0x62, 0x76, + 0x4f, 0x4d, 0xf7, 0x74, 0x71, 0x9d, 0x7d, 0x78, 0xbf, 0xa1, 0x46, 0x03, 0xba, 0xf1, 0x44, 0x8b, + 0xcb, 0xd2, 0xf8, 0x8f, 0xcf, 0x41, 0x2e, 0xd8, 0x2b, 0xd1, 0xe2, 0x36, 0xa1, 0xaf, 0x51, 0x71, + 0xb2, 0xce, 0xe6, 0x26, 0x4f, 0xd9, 0x30, 0x4c, 0xb6, 0xab, 0xa0, 0x2b, 0x11, 0x31, 0xe9, 0x21, + 0xad, 0x98, 0xdc, 0x5d, 0x48, 0x31, 0x54, 0xba, 0xfe, 0x31, 0x8a, 0xbb, 0xf0, 0x15, 0x70, 0x89, + 0xaf, 0x54, 0x22, 0x22, 0x98, 0xcd, 0xea, 0xf6, 0x3b, 0x00, 0xcd, 0x02, 0x85, 0xf9, 0xcd, 0xfc, + 0xd9, 0xa0, 0xfd, 0x72, 0xb4, 0x12, 0x11, 0xfb, 0x18, 0xd6, 0x8a, 0xc9, 0x7d, 0x17, 0xfa, 0x1b, + 0xac, 0x4a, 0x46, 0xed, 0x79, 0xd1, 0xe2, 0x57, 0x81, 0x66, 0xc3, 0x4e, 0x99, 0x81, 0x32, 0xe7, + 0x2e, 0xa4, 0x48, 0x2c, 0xb3, 0x20, 0x60, 0x3e, 0x76, 0x36, 0x9b, 0x34, 0xa9, 0x97, 0xd8, 0x64, + 0x77, 0xd1, 0xf6, 0x03, 0x4e, 0x81, 0x8c, 0x42, 0x23, 0xb0, 0x01, 0xef, 0x31, 0xc5, 0xd2, 0x99, + 0xe0, 0x43, 0x41, 0x4c, 0x02, 0x45, 0x09, 0x45, 0xb5, 0x0d, 0xc3, 0x0a, 0x75, 0x54, 0xc9, 0x77, + 0x2c, 0xc9, 0xa0, 0x1e, 0xc8, 0x2a, 0x91, 0x6f, 0x9c, 0xad, 0xb3, 0x90, 0xcf, 0x57, 0x22, 0xe2, + 0xa0, 0x12, 0x7a, 0xe3, 0x39, 0x37, 0xa7, 0x40, 0x7a, 0x5f, 0x97, 0x02, 0x0b, 0xde, 0x4f, 0xfb, + 0x7a, 0xfd, 0x4c, 0x7d, 0xb5, 0xd6, 0x22, 0x64, 0x69, 0xf6, 0xf5, 0xf5, 0xc6, 0xca, 0xab, 0x90, + 0x0d, 0x74, 0x42, 0x17, 0x3f, 0x4d, 0xbb, 0x79, 0xe3, 0x97, 0xe8, 0x86, 0xf9, 0x40, 0xba, 0xd1, + 0x11, 0xf5, 0x02, 0x1d, 0x12, 0x1a, 0x49, 0x6d, 0x76, 0xbe, 0xaf, 0x18, 0x3b, 0xf3, 0x44, 0x48, + 0xc8, 0x7a, 0xa9, 0xd1, 0x5e, 0xd6, 0x1d, 0xeb, 0xa0, 0x7c, 0x9e, 0x30, 0xb9, 0x9f, 0x0d, 0x8f, + 0x7f, 0xfe, 0xd3, 0x58, 0xe2, 0x83, 0x43, 0x14, 0x4d, 0x46, 0x44, 0xd6, 0xcb, 0xe8, 0x35, 0x48, + 0x05, 0xe4, 0xb9, 0x1c, 0xc4, 0x76, 0xf1, 0x01, 0x23, 0x64, 0x72, 0xcb, 0x0d, 0x42, 0xcf, 0xbe, + 0xac, 0xd5, 0x31, 0x8d, 0xa4, 0x3e, 0xd1, 0x7b, 0x58, 0x8a, 0x2e, 0xa2, 0xa5, 0xbf, 0x87, 0x8f, + 0x5c, 0x34, 0x0c, 0x83, 0x90, 0xf6, 0x86, 0x50, 0xf4, 0xc6, 0xc0, 0xc5, 0x16, 0xf9, 0x6b, 0x3f, + 0x73, 0xd1, 0x0f, 0x01, 0x0e, 0xa3, 0x10, 0x27, 0x43, 0xba, 0xf2, 0xb7, 0x51, 0xf8, 0xcb, 0x28, + 0x0c, 0x07, 0xb8, 0x44, 0xe8, 0xf3, 0x02, 0xb8, 0xb8, 0xb2, 0x0e, 0x23, 0x21, 0x36, 0x10, 0x80, + 0xb5, 0xdc, 0x7c, 0x7b, 0x03, 0xf2, 0xc1, 0x60, 0x16, 0x80, 0x59, 0x8a, 0x28, 0x8d, 0x85, 0xa3, + 0x51, 0x48, 0xf9, 0x6d, 0x44, 0x6d, 0x34, 0x14, 0x4b, 0x42, 0xea, 0xd6, 0xa2, 0x5d, 0x64, 0x6e, + 0x0a, 0xc5, 0xd6, 0x58, 0x10, 0x32, 0x9e, 0x63, 0x37, 0x24, 0x5e, 0xed, 0xe4, 0xc8, 0x42, 0xd6, + 0xf3, 0xca, 0xa2, 0xef, 0x84, 0xf0, 0x72, 0x8b, 0xfb, 0x09, 0x43, 0x2b, 0xeb, 0x45, 0x43, 0x2f, + 0xb2, 0xa5, 0x2e, 0xb2, 0xb5, 0x86, 0x2b, 0x27, 0x3c, 0x48, 0x38, 0x4f, 0xd6, 0xbb, 0x8d, 0x2c, + 0xd7, 0xfb, 0x8e, 0xbe, 0xab, 0x1b, 0xef, 0xe9, 0xf0, 0x18, 0x41, 0x2f, 0x11, 0x9a, 0x5a, 0x59, + 0x17, 0xfe, 0x09, 0x41, 0x7f, 0xc3, 0x78, 0x93, 0xaa, 0x09, 0x83, 0x01, 0x93, 0x4d, 0xfa, 0x85, + 0x20, 0xa4, 0x9b, 0x43, 0x21, 0x42, 0x43, 0xc1, 0x1e, 0x9b, 0x52, 0xf9, 0x80, 0x71, 0x26, 0x83, + 0x99, 0x18, 0xc6, 0xc2, 0xa6, 0x09, 0x37, 0x5e, 0x6a, 0x6f, 0x95, 0x49, 0xff, 0x19, 0x72, 0x21, + 0x5b, 0x90, 0x01, 0xe4, 0x5b, 0x66, 0xdd, 0x1c, 0xc3, 0x5f, 0x47, 0x01, 0x48, 0xe2, 0x9e, 0xba, + 0x43, 0xae, 0xc2, 0x9f, 0x46, 0xe1, 0x42, 0x40, 0x35, 0x98, 0xfb, 0xe9, 0x03, 0xbc, 0xd8, 0xa9, + 0xd5, 0xaf, 0x55, 0xa9, 0x54, 0x21, 0xd4, 0xd9, 0x49, 0x94, 0x97, 0x3b, 0xb7, 0x87, 0x70, 0x2e, + 0x86, 0x2c, 0x74, 0x02, 0xe6, 0xa5, 0x8e, 0xcd, 0x21, 0x94, 0x62, 0xab, 0x35, 0x4f, 0x00, 0x4d, + 0x74, 0x93, 0x08, 0x61, 0xfd, 0x5d, 0x0c, 0x7a, 0x99, 0x87, 0x5c, 0xf9, 0x30, 0x06, 0x7f, 0x11, + 0x83, 0x17, 0x60, 0x24, 0x68, 0xec, 0x50, 0x89, 0x23, 0x24, 0x56, 0xe8, 0x33, 0xbc, 0x04, 0xa3, + 0x01, 0xa1, 0x96, 0x42, 0x46, 0xe8, 0x5d, 0xf3, 0x5e, 0xc0, 0x4b, 0x30, 0x16, 0xb2, 0x4c, 0x07, + 0xb4, 0x57, 0x9a, 0x8b, 0x44, 0xc5, 0x3a, 0xe2, 0xbd, 0x08, 0xa3, 0x41, 0x13, 0x75, 0x80, 0x7b, + 0x19, 0xc6, 0x82, 0x52, 0x1d, 0xd1, 0x2e, 0xc3, 0x48, 0x50, 0x2e, 0x54, 0xf3, 0x0a, 0xf1, 0xfd, + 0x5b, 0x8b, 0x36, 0xbc, 0x02, 0x17, 0x5b, 0x4c, 0xd9, 0xa1, 0xcf, 0x57, 0xa1, 0xd0, 0x22, 0xd8, + 0xb1, 0xdb, 0x4b, 0x70, 0x31, 0xec, 0xd0, 0x2d, 0xdb, 0x22, 0xb8, 0x0c, 0x97, 0x5a, 0xfd, 0xbb, + 0x65, 0xdf, 0x05, 0x83, 0x90, 0xf0, 0xf8, 0x75, 0x15, 0x7c, 0x66, 0xcf, 0x45, 0xcb, 0x57, 0x21, + 0xc1, 0x0a, 0xc0, 0x17, 0x1e, 0xb9, 0x28, 0x76, 0xe4, 0xa2, 0xe4, 0xb1, 0x8b, 0xce, 0xd1, 0x2a, + 0x91, 0x27, 0xbb, 0xe6, 0x79, 0xbe, 0x24, 0xf0, 0xa5, 0x19, 0x7e, 0xe1, 0x0b, 0x17, 0xa1, 0xd5, + 0x78, 0x32, 0x99, 0xeb, 0x6b, 0xd4, 0xd7, 0xa9, 0x5c, 0xff, 0x6a, 0x3c, 0x99, 0xc9, 0x65, 0x57, + 0xe3, 0xc9, 0x6c, 0x2e, 0x37, 0xfe, 0x5f, 0x08, 0x2e, 0xbc, 0x63, 0xda, 0x8e, 0x85, 0xe5, 0xbd, + 0x4d, 0xcd, 0xbe, 0xe3, 0x1d, 0x8a, 0xaa, 0x86, 0x7e, 0xc3, 0xd0, 0x1d, 0x7c, 0xcf, 0xe1, 0x44, + 0xc8, 0x38, 0x56, 0xdd, 0x76, 0x70, 0x4d, 0x52, 0x64, 0xa9, 0x6e, 0x69, 0x6c, 0x23, 0x76, 0xe5, + 0x0b, 0x17, 0xc5, 0xff, 0xfc, 0x10, 0xa5, 0x4c, 0xbc, 0xc7, 0x17, 0xab, 0xb2, 0x8d, 0xe7, 0x67, + 0xc9, 0xde, 0x2c, 0x69, 0x91, 0xea, 0xe0, 0xc1, 0x83, 0xa4, 0xbf, 0x51, 0x8b, 0x91, 0x8d, 0x54, + 0x3f, 0xc3, 0xb8, 0x21, 0xbf, 0x63, 0x69, 0xa4, 0xca, 0x6a, 0x62, 0xb2, 0x02, 0xee, 0x69, 0xaa, + 0x50, 0xee, 0xe1, 0xfd, 0x6c, 0x60, 0x30, 0x9a, 0x6a, 0x93, 0xdc, 0xde, 0xd7, 0xc0, 0x2e, 0x4f, + 0xc0, 0x40, 0xa0, 0x9d, 0x59, 0xe9, 0x1c, 0xb3, 0x12, 0x3d, 0xe3, 0x9c, 0xe1, 0x4b, 0x7f, 0x76, + 0x48, 0xad, 0x12, 0xcd, 0xc5, 0xc6, 0x7f, 0x07, 0xce, 0x6d, 0x6a, 0xf6, 0x0d, 0x6c, 0x39, 0xea, + 0x96, 0xaa, 0xc8, 0x0e, 0xb6, 0x69, 0xdd, 0x5a, 0x85, 0x9c, 0xa3, 0xd9, 0x92, 0x12, 0x78, 0x9f, + 0x47, 0x34, 0xa3, 0x5e, 0x6e, 0x19, 0x65, 0x58, 0x9b, 0x0e, 0x72, 0x90, 0x4e, 0xfc, 0x07, 0x28, + 0x9a, 0x43, 0xfe, 0x5d, 0x12, 0x89, 0x59, 0x27, 0xdc, 0x0f, 0x2b, 0x9b, 0x3f, 0xef, 0x85, 0xa1, + 0x80, 0xf9, 0xd7, 0x65, 0x4b, 0xde, 0xc3, 0x0e, 0xb6, 0x6c, 0xee, 0x35, 0x88, 0xd9, 0xba, 0xca, + 0x8c, 0x7d, 0xde, 0x3f, 0x85, 0xa2, 0x47, 0xab, 0xcc, 0xb2, 0xf9, 0x07, 0xd1, 0x4a, 0x44, 0x24, + 0x52, 0xdc, 0x2a, 0x0c, 0xd7, 0x6d, 0x2c, 0xed, 0x18, 0xb6, 0x23, 0xed, 0x60, 0xb9, 0x86, 0x2d, + 0x49, 0xb6, 0x25, 0xa2, 0x9f, 0xea, 0xba, 0xdb, 0xe0, 0xea, 0x36, 0xae, 0x18, 0xb6, 0x53, 0xa1, + 0x3a, 0x6f, 0xda, 0x1b, 0xba, 0xca, 0x2d, 0x40, 0xaa, 0xa6, 0xda, 0x72, 0x55, 0xc3, 0x14, 0xa0, + 0xbf, 0x2b, 0x00, 0x30, 0x51, 0xa2, 0xf8, 0x1b, 0x00, 0xd4, 0x6a, 0xf4, 0xd0, 0x87, 0xd5, 0xce, + 0x85, 0xb6, 0xab, 0x4a, 0xac, 0x46, 0xa5, 0xca, 0xa3, 0x9f, 0xbb, 0x08, 0xb5, 0x3f, 0xc7, 0x16, + 0xfb, 0x1c, 0x5f, 0x8c, 0x7b, 0x0f, 0xce, 0x93, 0xf9, 0xd9, 0xb4, 0x46, 0x90, 0xf6, 0xb1, 0xe5, + 0x99, 0x51, 0x35, 0x74, 0x56, 0x48, 0x9f, 0x5e, 0xe9, 0x74, 0x73, 0xf2, 0x0a, 0x12, 0x87, 0xea, + 0x36, 0x66, 0x85, 0x56, 0x00, 0x9d, 0x5b, 0x87, 0xbc, 0xbd, 0xab, 0x9a, 0x6d, 0x7b, 0xee, 0xbe, + 0xdd, 0x1e, 0x26, 0x7a, 0x6d, 0x10, 0xdf, 0x82, 0x73, 0xfb, 0x86, 0xe6, 0x60, 0xcb, 0x92, 0xa5, + 0x40, 0x10, 0xa4, 0xbb, 0x82, 0x0d, 0xf8, 0x2a, 0x9b, 0xbe, 0xab, 0x73, 0x53, 0xd0, 0xab, 0x1b, + 0xd2, 0x9e, 0xa3, 0x75, 0xdf, 0xb8, 0x47, 0xc5, 0x84, 0x6e, 0x7c, 0xdb, 0xd1, 0x6c, 0xee, 0x3b, + 0x90, 0x24, 0x36, 0xa4, 0x1a, 0x5e, 0x4d, 0x3d, 0x7b, 0xaa, 0xd1, 0xda, 0x04, 0x47, 0x99, 0xec, + 0x38, 0x51, 0x25, 0x2a, 0xf6, 0xd6, 0x6d, 0x4c, 0x81, 0xef, 0x40, 0xbf, 0x0f, 0x4c, 0x92, 0x7a, + 0x3e, 0xf3, 0xd4, 0xf1, 0x9c, 0x79, 0x78, 0x3f, 0x15, 0x08, 0xb2, 0x4a, 0x54, 0x04, 0x06, 0xba, + 0x56, 0xfd, 0xde, 0x52, 0xea, 0xc9, 0xf5, 0x24, 0x3d, 0x63, 0x58, 0xe4, 0xaf, 0x95, 0x17, 0x00, + 0x6c, 0x5d, 0xf5, 0x43, 0xfa, 0xd5, 0x47, 0x2e, 0x4a, 0xb1, 0x33, 0x86, 0xde, 0x52, 0x89, 0x2f, + 0xf1, 0x25, 0xe1, 0x83, 0xb6, 0x5e, 0x54, 0xbe, 0x09, 0x79, 0x7f, 0xf1, 0x1a, 0xcb, 0xee, 0xc3, + 0x4c, 0x3c, 0x72, 0x51, 0x9a, 0xf1, 0x67, 0xa2, 0x44, 0xc9, 0xb3, 0x03, 0xca, 0x02, 0xa4, 0xe8, + 0xfc, 0x02, 0x8a, 0x89, 0x23, 0x17, 0xf5, 0x11, 0xc5, 0x79, 0xbe, 0x34, 0xcb, 0x2f, 0xb4, 0x57, + 0x6c, 0xf0, 0xae, 0xc7, 0xc1, 0x7d, 0x39, 0x18, 0xff, 0x0f, 0xe4, 0x9f, 0x56, 0xaf, 0x1b, 0x86, + 0x76, 0x13, 0x6f, 0xc9, 0x75, 0xcd, 0xd9, 0xa8, 0x57, 0x6d, 0xec, 0x70, 0x7f, 0x8c, 0x20, 0x53, + 0xf3, 0xde, 0x48, 0x36, 0x7d, 0x95, 0x4f, 0x50, 0xde, 0xb9, 0xf5, 0x94, 0x95, 0xfc, 0x09, 0xc8, + 0xc9, 0xd0, 0x93, 0x57, 0xd7, 0x5f, 0xf4, 0x6b, 0x7a, 0x4a, 0x24, 0x3f, 0x42, 0xd1, 0x5c, 0x31, + 0x58, 0xdd, 0xa7, 0x6b, 0x41, 0x95, 0xd1, 0x6f, 0x02, 0x77, 0x12, 0xe3, 0x2c, 0xb5, 0xfe, 0xf8, + 0x4f, 0x63, 0x30, 0xd0, 0x1c, 0x9e, 0x87, 0x62, 0x73, 0x1a, 0xe4, 0x1a, 0xb5, 0xa0, 0x37, 0x57, + 0x9f, 0x64, 0x4b, 0x2d, 0x93, 0x65, 0x1f, 0x01, 0x27, 0xfd, 0xc2, 0xd9, 0x43, 0x08, 0x9d, 0xdf, + 0x65, 0x7c, 0x82, 0xa4, 0xc4, 0x5b, 0x14, 0xb3, 0x38, 0x24, 0x6b, 0x73, 0xd7, 0xa0, 0x5f, 0xd6, + 0x0f, 0x1a, 0xd5, 0x27, 0x4b, 0x3a, 0x9d, 0x68, 0x2d, 0x25, 0xeb, 0x07, 0x8d, 0x13, 0x13, 0xf9, + 0xc4, 0x9a, 0x9c, 0x6d, 0xf3, 0x7e, 0x62, 0x4d, 0x2a, 0xad, 0x36, 0x26, 0xa3, 0xdb, 0x92, 0x55, + 0x4d, 0xb2, 0xf0, 0x6f, 0xd7, 0xb1, 0xed, 0x9c, 0x72, 0x46, 0x94, 0x22, 0xb2, 0xa2, 0x27, 0xba, + 0x34, 0xff, 0x91, 0x8b, 0x04, 0x38, 0x07, 0x19, 0x0f, 0xaa, 0x78, 0x43, 0x93, 0x6d, 0x1b, 0xdb, + 0x1c, 0x2a, 0xc1, 0x18, 0x0c, 0xb3, 0x97, 0x6f, 0xc9, 0x9a, 0x56, 0x95, 0x95, 0xdd, 0xe2, 0xba, + 0xa1, 0xa9, 0xca, 0x01, 0x87, 0x84, 0xf2, 0x6b, 0x30, 0xbc, 0xc5, 0xde, 0x4a, 0x26, 0x7d, 0x1b, + 0x3c, 0x85, 0xf7, 0xf3, 0x65, 0x0f, 0x0d, 0x0a, 0x96, 0x2d, 0x7f, 0x9c, 0xf3, 0xcf, 0xe5, 0xc8, + 0x94, 0xde, 0xac, 0xed, 0x13, 0x17, 0xaf, 0xad, 0x79, 0x1f, 0x49, 0xb9, 0x55, 0xe0, 0x14, 0x43, + 0xd7, 0xb1, 0x42, 0x23, 0xcc, 0x51, 0xf7, 0xb0, 0x51, 0xf7, 0x8e, 0x98, 0xd2, 0xe5, 0xb1, 0xc7, + 0x2e, 0x8a, 0x0b, 0xd3, 0xde, 0xd7, 0x94, 0xef, 0x1f, 0x36, 0xbf, 0xa8, 0x3c, 0xfa, 0xf7, 0x3d, + 0x71, 0xa0, 0xa9, 0xb6, 0xe9, 0x69, 0x71, 0x2b, 0x30, 0xb0, 0xe3, 0x38, 0xa6, 0xa4, 0xd6, 0x34, + 0xdc, 0x80, 0xf2, 0xbe, 0x19, 0x5e, 0x7c, 0xec, 0xa2, 0xc4, 0xcc, 0xf4, 0x74, 0x3b, 0xb0, 0x7f, + 0x7e, 0x51, 0xcc, 0x12, 0xbd, 0x95, 0x9a, 0x86, 0x7d, 0xa8, 0xb7, 0xe1, 0xbc, 0xbf, 0x7a, 0x8a, + 0x6a, 0x29, 0x75, 0xd5, 0x91, 0xaa, 0x16, 0x96, 0x77, 0xb1, 0x95, 0xcf, 0x75, 0xb5, 0xf2, 0x10, + 0x53, 0xbb, 0xe1, 0x69, 0x95, 0x3d, 0x25, 0x8a, 0xc7, 0xd2, 0x63, 0x2b, 0x5e, 0xfc, 0x14, 0x3c, + 0x4f, 0xad, 0x05, 0x6f, 0x1d, 0xb2, 0xad, 0x38, 0xde, 0xea, 0xbf, 0xd4, 0x21, 0x0a, 0xc2, 0xfa, + 0x95, 0x88, 0x98, 0x51, 0xc2, 0x88, 0x22, 0x8c, 0xf8, 0x23, 0x34, 0xea, 0x8e, 0xa6, 0x62, 0x4b, + 0xaa, 0x61, 0xc7, 0x33, 0x30, 0x63, 0xfe, 0x4e, 0x79, 0xc6, 0x9f, 0xda, 0x9a, 0xa7, 0x77, 0xd3, + 0x57, 0xe3, 0xee, 0xc2, 0xc0, 0x49, 0xac, 0x24, 0xc5, 0x7a, 0xad, 0xc3, 0x38, 0x5b, 0x31, 0x48, + 0x9c, 0x56, 0x90, 0x98, 0x33, 0x5a, 0xb1, 0x6f, 0x02, 0xa7, 0x1b, 0x92, 0x29, 0xeb, 0xaa, 0x22, + 0x39, 0x3b, 0x16, 0xb6, 0x77, 0x0c, 0xad, 0x96, 0x87, 0xae, 0x49, 0x2d, 0xa7, 0x1b, 0xeb, 0x44, + 0x61, 0xd3, 0x97, 0xe7, 0x96, 0x20, 0xdb, 0x0a, 0x91, 0xa2, 0x0e, 0x93, 0x7d, 0xec, 0xa2, 0xa8, + 0x30, 0x47, 0xab, 0xa7, 0x2b, 0xd1, 0x7c, 0xad, 0x12, 0x15, 0x33, 0x66, 0x58, 0xf7, 0x0d, 0xc8, + 0x36, 0x4a, 0x1e, 0xc6, 0x44, 0xdd, 0xf2, 0x71, 0x4c, 0xcc, 0xf8, 0x65, 0x0f, 0x63, 0x17, 0x19, + 0x32, 0x58, 0x0f, 0xe9, 0x7b, 0x49, 0x50, 0x38, 0x03, 0x45, 0x30, 0x2c, 0x96, 0x5f, 0x63, 0x62, + 0xda, 0x43, 0xf4, 0xbb, 0x58, 0x87, 0x7e, 0xe2, 0xda, 0x25, 0xbf, 0xbe, 0x3a, 0xd7, 0xd5, 0xf8, + 0x15, 0x22, 0xba, 0x6e, 0x19, 0x8e, 0xa1, 0x18, 0x1a, 0x8b, 0xd0, 0x4a, 0x5c, 0x4c, 0x51, 0x08, + 0x56, 0x54, 0x89, 0x90, 0x26, 0x8f, 0x82, 0xff, 0x33, 0x87, 0x7c, 0xf6, 0x54, 0x48, 0xe1, 0x24, + 0x24, 0x1d, 0x95, 0xe0, 0x93, 0xc0, 0x37, 0x21, 0x27, 0xd7, 0x1d, 0x43, 0xa2, 0xd1, 0xcb, 0x46, + 0x3a, 0xd8, 0xc5, 0x94, 0x71, 0x31, 0x43, 0xe4, 0x09, 0x36, 0x1b, 0x95, 0x09, 0xa3, 0xac, 0x82, + 0x75, 0x2c, 0x59, 0xb7, 0xb7, 0x0c, 0x6b, 0xcf, 0xcb, 0xd9, 0xce, 0x81, 0x89, 0xf3, 0x03, 0x14, + 0xeb, 0x95, 0x16, 0x2c, 0xaf, 0x7c, 0xdd, 0x0c, 0xc9, 0xd3, 0xb4, 0xd0, 0xc7, 0x3e, 0xeb, 0xe4, + 0x91, 0x98, 0xdf, 0xe9, 0x20, 0xc4, 0xfd, 0x26, 0x5c, 0x62, 0x8b, 0xa7, 0x55, 0x25, 0xdb, 0xa8, + 0x5b, 0x0a, 0xfd, 0x3a, 0x6d, 0x62, 0xcb, 0x56, 0x6d, 0x87, 0x70, 0x5c, 0x7e, 0xb8, 0xcb, 0x14, + 0x7a, 0xc4, 0x31, 0x4f, 0xfd, 0x76, 0x75, 0x83, 0x2a, 0xaf, 0x98, 0xeb, 0x4d, 0x55, 0xee, 0x5d, + 0x28, 0xfa, 0xbe, 0xd5, 0x11, 0xfe, 0x7c, 0x57, 0xf8, 0x0b, 0x4c, 0xbf, 0x3d, 0xfe, 0x6d, 0x18, + 0xf6, 0xf1, 0x4d, 0xcb, 0xb8, 0x77, 0x20, 0x99, 0x6c, 0x89, 0xf2, 0x23, 0x5d, 0x50, 0x13, 0xe2, + 0x20, 0xd3, 0x5a, 0x27, 0x4a, 0xfe, 0xb2, 0x72, 0x65, 0x18, 0x08, 0xa3, 0x48, 0xfb, 0xa5, 0xfc, + 0x68, 0x57, 0xa0, 0xac, 0x19, 0x44, 0xb8, 0x53, 0x6a, 0x87, 0x21, 0xe4, 0xc7, 0xce, 0x82, 0x21, + 0x2c, 0xe1, 0x8f, 0x5c, 0x24, 0xc3, 0x25, 0xe0, 0x96, 0xef, 0x29, 0x98, 0xfa, 0x56, 0xb1, 0x22, + 0xeb, 0x35, 0x4d, 0xd5, 0xb7, 0xb9, 0x3e, 0x6f, 0xa7, 0x3b, 0xcf, 0x5f, 0x83, 0x31, 0xff, 0xa7, + 0x20, 0xec, 0xf8, 0xb0, 0xe8, 0x47, 0x4b, 0xb4, 0x24, 0xc0, 0x65, 0x18, 0xfa, 0xb6, 0x6a, 0x2b, + 0x58, 0xd3, 0x64, 0x1d, 0x1b, 0x75, 0xbb, 0xe8, 0x3b, 0x69, 0xb2, 0xb4, 0xc8, 0x97, 0x16, 0x78, + 0x61, 0xb6, 0xcc, 0xc3, 0x70, 0x0b, 0xf9, 0xfa, 0x49, 0x90, 0x7b, 0xe4, 0xa2, 0x1c, 0xfb, 0xb6, + 0x92, 0x28, 0xcd, 0x93, 0x2c, 0x58, 0x7e, 0x0d, 0xf2, 0x27, 0x48, 0x30, 0xf8, 0x2d, 0xa6, 0xf7, + 0xc8, 0x45, 0x09, 0xb2, 0xc9, 0x5c, 0xe0, 0x17, 0xcb, 0xaf, 0xc2, 0x60, 0x0b, 0x1f, 0x51, 0x0f, + 0xa6, 0xd9, 0x15, 0x58, 0xe9, 0xd8, 0x53, 0x9a, 0xe6, 0x4b, 0xa5, 0xf2, 0x38, 0xa4, 0x3d, 0xda, + 0x08, 0x66, 0x60, 0x52, 0x97, 0xf6, 0x53, 0x99, 0x19, 0xbe, 0x34, 0x5b, 0xbe, 0x02, 0x1c, 0x8d, + 0xa9, 0x86, 0x4d, 0x29, 0xd8, 0xe0, 0x23, 0x17, 0x0d, 0x1e, 0xb9, 0x88, 0x3b, 0x76, 0x51, 0x52, + 0x98, 0xe6, 0x4b, 0x73, 0x7c, 0xe9, 0x5a, 0x79, 0x0e, 0x2e, 0x75, 0x72, 0xb5, 0xe0, 0xf4, 0xce, + 0x1f, 0xb9, 0x68, 0x88, 0x4c, 0x4f, 0x10, 0xf8, 0xa2, 0x30, 0x53, 0xbe, 0x0a, 0x43, 0x2d, 0xeb, + 0xc6, 0x84, 0x49, 0x2f, 0x23, 0x47, 0x2e, 0xca, 0xd3, 0x5e, 0xe6, 0x78, 0x61, 0x9e, 0x17, 0xd8, + 0x97, 0xf9, 0xd5, 0x78, 0x32, 0x91, 0xeb, 0xf5, 0x2a, 0xdb, 0xd5, 0x78, 0xb2, 0x3f, 0x97, 0x5e, + 0x8d, 0x27, 0xb9, 0xdc, 0xb9, 0xd5, 0x78, 0x72, 0x28, 0x37, 0xbc, 0x1a, 0x4f, 0xe6, 0x73, 0x23, + 0xe3, 0x1f, 0xa7, 0x20, 0xf3, 0x2d, 0xcd, 0xa8, 0xca, 0xda, 0x86, 0x89, 0x15, 0x1a, 0x73, 0xf7, + 0x20, 0xc3, 0x58, 0xd0, 0x2b, 0xce, 0x3b, 0x95, 0x7e, 0xa7, 0x9f, 0x58, 0x97, 0x0b, 0xcd, 0xb2, + 0xaf, 0xb9, 0xdf, 0xf6, 0xef, 0xf2, 0x48, 0x4c, 0x1b, 0x01, 0x0d, 0x9b, 0xbb, 0x0a, 0x09, 0xdd, + 0x90, 0xc8, 0x26, 0x28, 0xda, 0x35, 0x5d, 0xf7, 0xe8, 0xc6, 0xa6, 0x66, 0x73, 0xff, 0x0f, 0xc8, + 0x3e, 0x87, 0xca, 0xc7, 0x9e, 0xf2, 0x6b, 0x50, 0xdb, 0xfd, 0x7c, 0x25, 0x22, 0x26, 0xea, 0x36, + 0x26, 0x90, 0xbf, 0x8b, 0x20, 0x6e, 0x1a, 0x96, 0x57, 0xe5, 0xa5, 0xcb, 0xfa, 0x63, 0x17, 0xc5, + 0x66, 0x67, 0x67, 0x8e, 0x5d, 0x74, 0x0b, 0xa2, 0x8b, 0xd3, 0x10, 0x5f, 0x9c, 0xa6, 0xd7, 0x45, + 0x72, 0x15, 0xa6, 0xe7, 0x04, 0x72, 0x5d, 0xf4, 0xae, 0xf3, 0xe4, 0x7a, 0x6d, 0x0e, 0x88, 0x02, + 0x6d, 0xa4, 0xd7, 0x45, 0xef, 0xba, 0x40, 0x1b, 0xe7, 0x21, 0xbe, 0x38, 0x3b, 0x3b, 0xd3, 0x38, + 0x31, 0xb8, 0x12, 0x9d, 0x40, 0x7e, 0x85, 0xf4, 0x8b, 0x5f, 0xc4, 0x2a, 0x48, 0xa4, 0xbd, 0x73, + 0xaf, 0x03, 0xa5, 0x5e, 0x42, 0x84, 0x8a, 0x44, 0xc7, 0x93, 0xe9, 0xfe, 0xfd, 0xb9, 0x21, 0xbd, + 0x4e, 0xd4, 0xa7, 0xa0, 0x57, 0xab, 0x7a, 0x7a, 0xd9, 0xae, 0x7a, 0x09, 0xad, 0x4a, 0x15, 0x56, + 0x60, 0xc8, 0x96, 0xf7, 0xb0, 0x24, 0xdb, 0xcd, 0x33, 0x60, 0xaa, 0xde, 0x3d, 0xd3, 0x73, 0x44, + 0xe9, 0x4d, 0xdb, 0xaf, 0xc6, 0x29, 0xd4, 0x1f, 0x20, 0x18, 0xd8, 0xc1, 0xb2, 0xe6, 0xec, 0x48, + 0xca, 0x0e, 0xa6, 0x05, 0xac, 0xe5, 0xb0, 0x74, 0xff, 0xee, 0xaf, 0xc8, 0x8e, 0xbe, 0xf9, 0xa2, + 0x62, 0xd6, 0xeb, 0xfa, 0x06, 0xe9, 0x99, 0x0e, 0xe7, 0x5d, 0x48, 0x79, 0xaf, 0xe8, 0x60, 0xd8, + 0x8e, 0xed, 0x69, 0xf6, 0xbf, 0xf9, 0x87, 0xf7, 0x83, 0x9a, 0x0d, 0x47, 0x26, 0x89, 0xba, 0xf9, + 0x9a, 0xbb, 0x07, 0xc3, 0xc1, 0x3d, 0xa5, 0x24, 0x6b, 0xdb, 0x86, 0xa5, 0x3a, 0x3b, 0x7b, 0xb4, + 0x9a, 0xcb, 0x08, 0x7c, 0x87, 0x8c, 0x7d, 0x3b, 0xa0, 0xf4, 0xa6, 0xaf, 0x53, 0x3e, 0xf7, 0xd8, + 0x45, 0xa9, 0xdb, 0x65, 0x69, 0xed, 0xce, 0xb2, 0x28, 0xae, 0xdc, 0x5c, 0x26, 0x13, 0x14, 0x87, + 0xb4, 0x76, 0xb2, 0xdc, 0x3e, 0x70, 0xcd, 0x3d, 0x1a, 0xdd, 0x6f, 0xf9, 0x75, 0x5f, 0x46, 0x98, + 0x3c, 0x6d, 0x97, 0xe6, 0xcb, 0x7b, 0x7b, 0x8e, 0xf2, 0xf9, 0xc7, 0x2e, 0xca, 0xde, 0x5e, 0xbb, + 0xf1, 0xe6, 0x6d, 0x69, 0x5d, 0x5c, 0x7e, 0x6b, 0x59, 0x14, 0x97, 0x6f, 0xd2, 0xbe, 0x07, 0x70, + 0xab, 0x06, 0xb7, 0x0b, 0x39, 0x99, 0x6d, 0x2f, 0x1a, 0xd5, 0x49, 0xff, 0x99, 0x3e, 0x3a, 0xb6, + 0xd9, 0xa1, 0x78, 0x95, 0x95, 0x98, 0x95, 0x5b, 0x36, 0x2e, 0x77, 0x21, 0x4d, 0x7f, 0xed, 0x49, + 0x7f, 0x04, 0xa6, 0xcb, 0x5a, 0xfe, 0xb3, 0xa7, 0xff, 0xf1, 0x53, 0xee, 0xe1, 0xfd, 0xb0, 0xb2, + 0xd8, 0x4f, 0x1e, 0x57, 0xd8, 0xd3, 0xd2, 0xdd, 0x8f, 0x5c, 0x74, 0x07, 0x2e, 0x40, 0x26, 0x94, + 0xa6, 0x6c, 0x0e, 0x4a, 0x7c, 0x69, 0x86, 0xbf, 0xc6, 0x2f, 0xf0, 0x8b, 0xc0, 0x41, 0xba, 0x42, + 0x57, 0xbb, 0x48, 0x5d, 0xca, 0xe6, 0xd0, 0x3c, 0x00, 0xc4, 0x36, 0x6f, 0x6f, 0x70, 0x68, 0x76, + 0x02, 0xc1, 0x30, 0x64, 0xd6, 0x9c, 0x1d, 0x92, 0xdc, 0xb0, 0xe3, 0xa8, 0xfa, 0x36, 0xcd, 0x6e, + 0x13, 0xa8, 0x7c, 0x91, 0x9d, 0xb7, 0x35, 0x13, 0x50, 0xf4, 0xc8, 0x45, 0x71, 0x92, 0x80, 0x04, + 0x7e, 0xa6, 0x3c, 0x0e, 0x29, 0x12, 0x16, 0xc1, 0x53, 0xd0, 0x9e, 0x23, 0x17, 0xa5, 0x8f, 0x5d, + 0xd4, 0x3b, 0xc7, 0x97, 0x66, 0xf9, 0xd2, 0x5c, 0xf9, 0x2a, 0xe4, 0x4f, 0xc4, 0x51, 0x30, 0x09, + 0x85, 0x13, 0xd5, 0x6a, 0x3c, 0x19, 0xcf, 0xf5, 0xac, 0xc6, 0x93, 0xe9, 0x5c, 0x86, 0x1d, 0x66, + 0xfc, 0x7e, 0x12, 0x32, 0x37, 0x2c, 0x2c, 0x3b, 0xb8, 0x41, 0xed, 0xff, 0xff, 0x99, 0x51, 0xfb, + 0xff, 0x3d, 0xea, 0x1e, 0x0c, 0x32, 0xf7, 0xd7, 0x81, 0x49, 0xf9, 0x8e, 0x44, 0xda, 0x8e, 0xe8, + 0x36, 0xbf, 0x2a, 0xd1, 0x65, 0xc2, 0x44, 0x17, 0xa6, 0x37, 0xe5, 0x59, 0xd2, 0x5b, 0x27, 0x26, + 0xfb, 0xee, 0xb3, 0x63, 0xb2, 0x76, 0x84, 0x85, 0x7f, 0x15, 0x84, 0x75, 0x82, 0xaa, 0x96, 0x06, + 0x7e, 0x76, 0xbd, 0xa5, 0x92, 0x2a, 0x5f, 0x08, 0xb1, 0x40, 0xe6, 0xfd, 0x2f, 0x51, 0xe0, 0xb9, + 0x5c, 0x08, 0x93, 0x40, 0xf6, 0xfd, 0x2f, 0x51, 0xf0, 0x45, 0x79, 0xb1, 0x0b, 0x01, 0x5c, 0x78, + 0xff, 0x4b, 0xd4, 0xb1, 0xb5, 0x0d, 0x17, 0x7c, 0x90, 0x84, 0xac, 0x88, 0x4d, 0x4d, 0x56, 0x9e, + 0x93, 0xc1, 0x73, 0x32, 0x78, 0x4e, 0x06, 0xbf, 0xd6, 0x64, 0xf0, 0x7b, 0x49, 0x48, 0x7d, 0x0b, + 0x3b, 0xcf, 0x89, 0xe0, 0x39, 0x11, 0x3c, 0x27, 0x82, 0x5f, 0x63, 0x22, 0x28, 0xff, 0x09, 0x3a, + 0xfa, 0xa4, 0x10, 0xf9, 0xf8, 0x93, 0x42, 0xe4, 0xf3, 0x4f, 0x0a, 0xe8, 0xc1, 0x71, 0x01, 0x7d, + 0x78, 0x5c, 0x40, 0xff, 0x78, 0x5c, 0x40, 0x47, 0xc7, 0x05, 0xf4, 0xf1, 0x71, 0x01, 0xfd, 0xfc, + 0xb8, 0x80, 0x3e, 0x3b, 0x2e, 0x44, 0x3e, 0x3f, 0x2e, 0xa0, 0x3f, 0xfa, 0xb4, 0x10, 0x79, 0xf4, + 0x69, 0x01, 0x1d, 0x7d, 0x5a, 0x88, 0x7c, 0xfc, 0x69, 0x21, 0x72, 0xf7, 0x9d, 0x6d, 0xc3, 0xdc, + 0xdd, 0x9e, 0xf4, 0xbf, 0x7f, 0x4f, 0xd6, 0xed, 0x29, 0x7a, 0xb3, 0x65, 0x58, 0x7b, 0x57, 0x4d, + 0xcb, 0xd8, 0x57, 0x6b, 0xd8, 0xba, 0xea, 0x37, 0x4f, 0x99, 0xd5, 0x6d, 0x63, 0x0a, 0xdf, 0x73, + 0xd8, 0x7f, 0xf4, 0x3a, 0xfd, 0x85, 0xb1, 0x9a, 0xa0, 0x67, 0x5c, 0x33, 0xff, 0x1d, 0x00, 0x00, + 0xff, 0xff, 0x81, 0xac, 0xcc, 0x60, 0xec, 0x38, 0x00, 0x00, } func (this *OriginServerPublicIP) Equal(that interface{}) bool { @@ -3821,6 +3669,30 @@ func (this *OriginServerPrivateIP_OutsideNetwork) Equal(that interface{}) bool { } return true } +func (this *OriginServerPrivateIP_Segment) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OriginServerPrivateIP_Segment) + if !ok { + that2, ok := that.(OriginServerPrivateIP_Segment) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Segment.Equal(that1.Segment) { + return false + } + return true +} func (this *OriginServerPrivateName) Equal(that interface{}) bool { if that == nil { return this == nil @@ -3908,6 +3780,30 @@ func (this *OriginServerPrivateName_OutsideNetwork) Equal(that interface{}) bool } return true } +func (this *OriginServerPrivateName_Segment) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OriginServerPrivateName_Segment) + if !ok { + that2, ok := that.(OriginServerPrivateName_Segment) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Segment.Equal(that1.Segment) { + return false + } + return true +} func (this *OriginServerVirtualNetworkIP) Equal(that interface{}) bool { if that == nil { return this == nil @@ -4262,14 +4158,14 @@ func (this *OriginServerConsulService_OutsideNetwork) Equal(that interface{}) bo } return true } -func (this *OriginServerSegmentIP) Equal(that interface{}) bool { +func (this *OriginServerCustomEndpoint) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OriginServerSegmentIP) + that1, ok := that.(*OriginServerCustomEndpoint) if !ok { - that2, ok := that.(OriginServerSegmentIP) + that2, ok := that.(OriginServerCustomEndpoint) if ok { that1 = &that2 } else { @@ -4281,134 +4177,17 @@ func (this *OriginServerSegmentIP) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.IpChoice == nil { - if this.IpChoice != nil { - return false - } - } else if this.IpChoice == nil { - return false - } else if !this.IpChoice.Equal(that1.IpChoice) { - return false - } - if !this.SiteLocator.Equal(that1.SiteLocator) { - return false - } - if !this.Segment.Equal(that1.Segment) { + if !this.Endpoint.Equal(that1.Endpoint) { return false } return true } -func (this *OriginServerSegmentIP_Ip) Equal(that interface{}) bool { +func (this *OriginServerType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*OriginServerSegmentIP_Ip) - if !ok { - that2, ok := that.(OriginServerSegmentIP_Ip) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Ip != that1.Ip { - return false - } - return true -} -func (this *OriginServerSegmentIP_Ipv6) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*OriginServerSegmentIP_Ipv6) - if !ok { - that2, ok := that.(OriginServerSegmentIP_Ipv6) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Ipv6 != that1.Ipv6 { - return false - } - return true -} -func (this *OriginServerSegmentName) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*OriginServerSegmentName) - if !ok { - that2, ok := that.(OriginServerSegmentName) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.DnsName != that1.DnsName { - return false - } - if this.RefreshInterval != that1.RefreshInterval { - return false - } - if !this.SiteLocator.Equal(that1.SiteLocator) { - return false - } - if !this.Segment.Equal(that1.Segment) { - return false - } - return true -} -func (this *OriginServerCustomEndpoint) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*OriginServerCustomEndpoint) - if !ok { - that2, ok := that.(OriginServerCustomEndpoint) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Endpoint.Equal(that1.Endpoint) { - return false - } - return true -} -func (this *OriginServerType) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*OriginServerType) + that1, ok := that.(*OriginServerType) if !ok { that2, ok := that.(OriginServerType) if ok { @@ -4657,54 +4436,6 @@ func (this *OriginServerType_VnPrivateName) Equal(that interface{}) bool { } return true } -func (this *OriginServerType_SegmentIp) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*OriginServerType_SegmentIp) - if !ok { - that2, ok := that.(OriginServerType_SegmentIp) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SegmentIp.Equal(that1.SegmentIp) { - return false - } - return true -} -func (this *OriginServerType_SegmentName) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*OriginServerType_SegmentName) - if !ok { - that2, ok := that.(OriginServerType_SegmentName) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.SegmentName.Equal(that1.SegmentName) { - return false - } - return true -} func (this *UpstreamTlsValidationContext) Equal(that interface{}) bool { if that == nil { return this == nil @@ -5300,6 +5031,15 @@ func (this *OriginPoolAdvancedOptions) Equal(that interface{}) bool { } else if !this.LbSourceIpPersistanceChoice.Equal(that1.LbSourceIpPersistanceChoice) { return false } + if that1.ProxyProtocolChoice == nil { + if this.ProxyProtocolChoice != nil { + return false + } + } else if this.ProxyProtocolChoice == nil { + return false + } else if !this.ProxyProtocolChoice.Equal(that1.ProxyProtocolChoice) { + return false + } return true } func (this *OriginPoolAdvancedOptions_DefaultCircuitBreaker) Equal(that interface{}) bool { @@ -5638,6 +5378,78 @@ func (this *OriginPoolAdvancedOptions_DisableLbSourceIpPersistance) Equal(that i } return true } +func (this *OriginPoolAdvancedOptions_DisableProxyProtocol) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OriginPoolAdvancedOptions_DisableProxyProtocol) + if !ok { + that2, ok := that.(OriginPoolAdvancedOptions_DisableProxyProtocol) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DisableProxyProtocol.Equal(that1.DisableProxyProtocol) { + return false + } + return true +} +func (this *OriginPoolAdvancedOptions_ProxyProtocolV1) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OriginPoolAdvancedOptions_ProxyProtocolV1) + if !ok { + that2, ok := that.(OriginPoolAdvancedOptions_ProxyProtocolV1) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV1.Equal(that1.ProxyProtocolV1) { + return false + } + return true +} +func (this *OriginPoolAdvancedOptions_ProxyProtocolV2) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*OriginPoolAdvancedOptions_ProxyProtocolV2) + if !ok { + that2, ok := that.(OriginPoolAdvancedOptions_ProxyProtocolV2) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ProxyProtocolV2.Equal(that1.ProxyProtocolV2) { + return false + } + return true +} func (this *GlobalSpecType) Equal(that interface{}) bool { if that == nil { return this == nil @@ -6648,7 +6460,7 @@ func (this *OriginServerPrivateIP) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 9) + s := make([]string, 0, 10) s = append(s, "&origin_pool.OriginServerPrivateIP{") if this.PrivateIpChoice != nil { s = append(s, "PrivateIpChoice: "+fmt.Sprintf("%#v", this.PrivateIpChoice)+",\n") @@ -6694,11 +6506,19 @@ func (this *OriginServerPrivateIP_OutsideNetwork) GoString() string { `OutsideNetwork:` + fmt.Sprintf("%#v", this.OutsideNetwork) + `}`}, ", ") return s } +func (this *OriginServerPrivateIP_Segment) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&origin_pool.OriginServerPrivateIP_Segment{` + + `Segment:` + fmt.Sprintf("%#v", this.Segment) + `}`}, ", ") + return s +} func (this *OriginServerPrivateName) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 9) + s := make([]string, 0, 10) s = append(s, "&origin_pool.OriginServerPrivateName{") s = append(s, "DnsName: "+fmt.Sprintf("%#v", this.DnsName)+",\n") s = append(s, "RefreshInterval: "+fmt.Sprintf("%#v", this.RefreshInterval)+",\n") @@ -6727,6 +6547,14 @@ func (this *OriginServerPrivateName_OutsideNetwork) GoString() string { `OutsideNetwork:` + fmt.Sprintf("%#v", this.OutsideNetwork) + `}`}, ", ") return s } +func (this *OriginServerPrivateName_Segment) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&origin_pool.OriginServerPrivateName_Segment{` + + `Segment:` + fmt.Sprintf("%#v", this.Segment) + `}`}, ", ") + return s +} func (this *OriginServerVirtualNetworkIP) GoString() string { if this == nil { return "nil" @@ -6861,57 +6689,6 @@ func (this *OriginServerConsulService_OutsideNetwork) GoString() string { `OutsideNetwork:` + fmt.Sprintf("%#v", this.OutsideNetwork) + `}`}, ", ") return s } -func (this *OriginServerSegmentIP) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&origin_pool.OriginServerSegmentIP{") - if this.IpChoice != nil { - s = append(s, "IpChoice: "+fmt.Sprintf("%#v", this.IpChoice)+",\n") - } - if this.SiteLocator != nil { - s = append(s, "SiteLocator: "+fmt.Sprintf("%#v", this.SiteLocator)+",\n") - } - if this.Segment != nil { - s = append(s, "Segment: "+fmt.Sprintf("%#v", this.Segment)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *OriginServerSegmentIP_Ip) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&origin_pool.OriginServerSegmentIP_Ip{` + - `Ip:` + fmt.Sprintf("%#v", this.Ip) + `}`}, ", ") - return s -} -func (this *OriginServerSegmentIP_Ipv6) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&origin_pool.OriginServerSegmentIP_Ipv6{` + - `Ipv6:` + fmt.Sprintf("%#v", this.Ipv6) + `}`}, ", ") - return s -} -func (this *OriginServerSegmentName) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 8) - s = append(s, "&origin_pool.OriginServerSegmentName{") - s = append(s, "DnsName: "+fmt.Sprintf("%#v", this.DnsName)+",\n") - s = append(s, "RefreshInterval: "+fmt.Sprintf("%#v", this.RefreshInterval)+",\n") - if this.SiteLocator != nil { - s = append(s, "SiteLocator: "+fmt.Sprintf("%#v", this.SiteLocator)+",\n") - } - if this.Segment != nil { - s = append(s, "Segment: "+fmt.Sprintf("%#v", this.Segment)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} func (this *OriginServerCustomEndpoint) GoString() string { if this == nil { return "nil" @@ -6928,7 +6705,7 @@ func (this *OriginServerType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 16) + s := make([]string, 0, 14) s = append(s, "&origin_pool.OriginServerType{") if this.Choice != nil { s = append(s, "Choice: "+fmt.Sprintf("%#v", this.Choice)+",\n") @@ -7021,23 +6798,7 @@ func (this *OriginServerType_VnPrivateName) GoString() string { `VnPrivateName:` + fmt.Sprintf("%#v", this.VnPrivateName) + `}`}, ", ") return s } -func (this *OriginServerType_SegmentIp) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&origin_pool.OriginServerType_SegmentIp{` + - `SegmentIp:` + fmt.Sprintf("%#v", this.SegmentIp) + `}`}, ", ") - return s -} -func (this *OriginServerType_SegmentName) GoString() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&origin_pool.OriginServerType_SegmentName{` + - `SegmentName:` + fmt.Sprintf("%#v", this.SegmentName) + `}`}, ", ") - return s -} -func (this *UpstreamTlsValidationContext) GoString() string { +func (this *UpstreamTlsValidationContext) GoString() string { if this == nil { return "nil" } @@ -7235,7 +6996,7 @@ func (this *OriginPoolAdvancedOptions) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 21) + s := make([]string, 0, 24) s = append(s, "&origin_pool.OriginPoolAdvancedOptions{") s = append(s, "ConnectionTimeout: "+fmt.Sprintf("%#v", this.ConnectionTimeout)+",\n") s = append(s, "HttpIdleTimeout: "+fmt.Sprintf("%#v", this.HttpIdleTimeout)+",\n") @@ -7260,6 +7021,9 @@ func (this *OriginPoolAdvancedOptions) GoString() string { if this.LbSourceIpPersistanceChoice != nil { s = append(s, "LbSourceIpPersistanceChoice: "+fmt.Sprintf("%#v", this.LbSourceIpPersistanceChoice)+",\n") } + if this.ProxyProtocolChoice != nil { + s = append(s, "ProxyProtocolChoice: "+fmt.Sprintf("%#v", this.ProxyProtocolChoice)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -7375,6 +7139,30 @@ func (this *OriginPoolAdvancedOptions_DisableLbSourceIpPersistance) GoString() s `DisableLbSourceIpPersistance:` + fmt.Sprintf("%#v", this.DisableLbSourceIpPersistance) + `}`}, ", ") return s } +func (this *OriginPoolAdvancedOptions_DisableProxyProtocol) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&origin_pool.OriginPoolAdvancedOptions_DisableProxyProtocol{` + + `DisableProxyProtocol:` + fmt.Sprintf("%#v", this.DisableProxyProtocol) + `}`}, ", ") + return s +} +func (this *OriginPoolAdvancedOptions_ProxyProtocolV1) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV1{` + + `ProxyProtocolV1:` + fmt.Sprintf("%#v", this.ProxyProtocolV1) + `}`}, ", ") + return s +} +func (this *OriginPoolAdvancedOptions_ProxyProtocolV2) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV2{` + + `ProxyProtocolV2:` + fmt.Sprintf("%#v", this.ProxyProtocolV2) + `}`}, ", ") + return s +} func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" @@ -7930,6 +7718,27 @@ func (m *OriginServerPrivateIP_OutsideNetwork) MarshalToSizedBuffer(dAtA []byte) } return len(dAtA) - i, nil } +func (m *OriginServerPrivateIP_Segment) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OriginServerPrivateIP_Segment) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Segment != nil { + { + size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} func (m *OriginServerPrivateIP_Ipv6) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -7964,11 +7773,6 @@ func (m *OriginServerPrivateName) MarshalToSizedBuffer(dAtA []byte) (int, error) _ = i var l int _ = l - if m.RefreshInterval != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.RefreshInterval)) - i-- - dAtA[i] = 0x30 - } if m.NetworkChoice != nil { { size := m.NetworkChoice.Size() @@ -7978,6 +7782,11 @@ func (m *OriginServerPrivateName) MarshalToSizedBuffer(dAtA []byte) (int, error) } } } + if m.RefreshInterval != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.RefreshInterval)) + i-- + dAtA[i] = 0x30 + } if m.SiteLocator != nil { { size, err := m.SiteLocator.MarshalToSizedBuffer(dAtA[:i]) @@ -8042,6 +7851,27 @@ func (m *OriginServerPrivateName_OutsideNetwork) MarshalToSizedBuffer(dAtA []byt } return len(dAtA) - i, nil } +func (m *OriginServerPrivateName_Segment) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OriginServerPrivateName_Segment) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Segment != nil { + { + size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} func (m *OriginServerVirtualNetworkIP) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -8400,149 +8230,6 @@ func (m *OriginServerConsulService_OutsideNetwork) MarshalToSizedBuffer(dAtA []b } return len(dAtA) - i, nil } -func (m *OriginServerSegmentIP) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *OriginServerSegmentIP) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OriginServerSegmentIP) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Segment != nil { - { - size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } - if m.SiteLocator != nil { - { - size, err := m.SiteLocator.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } - if m.IpChoice != nil { - { - size := m.IpChoice.Size() - i -= size - if _, err := m.IpChoice.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } - return len(dAtA) - i, nil -} - -func (m *OriginServerSegmentIP_Ip) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OriginServerSegmentIP_Ip) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Ip) - copy(dAtA[i:], m.Ip) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Ip))) - i-- - dAtA[i] = 0x12 - return len(dAtA) - i, nil -} -func (m *OriginServerSegmentIP_Ipv6) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OriginServerSegmentIP_Ipv6) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - i -= len(m.Ipv6) - copy(dAtA[i:], m.Ipv6) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Ipv6))) - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil -} -func (m *OriginServerSegmentName) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *OriginServerSegmentName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OriginServerSegmentName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Segment != nil { - { - size, err := m.Segment.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } - if m.SiteLocator != nil { - { - size, err := m.SiteLocator.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if m.RefreshInterval != 0 { - i = encodeVarintTypes(dAtA, i, uint64(m.RefreshInterval)) - i-- - dAtA[i] = 0x10 - } - if len(m.DnsName) > 0 { - i -= len(m.DnsName) - copy(dAtA[i:], m.DnsName) - i = encodeVarintTypes(dAtA, i, uint64(len(m.DnsName))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func (m *OriginServerCustomEndpoint) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -8823,48 +8510,6 @@ func (m *OriginServerType_VnPrivateName) MarshalToSizedBuffer(dAtA []byte) (int, } return len(dAtA) - i, nil } -func (m *OriginServerType_SegmentIp) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OriginServerType_SegmentIp) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SegmentIp != nil { - { - size, err := m.SegmentIp.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x72 - } - return len(dAtA) - i, nil -} -func (m *OriginServerType_SegmentName) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *OriginServerType_SegmentName) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - if m.SegmentName != nil { - { - size, err := m.SegmentName.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x7a - } - return len(dAtA) - i, nil -} func (m *UpstreamTlsValidationContext) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -9389,6 +9034,15 @@ func (m *OriginPoolAdvancedOptions) MarshalToSizedBuffer(dAtA []byte) (int, erro _ = i var l int _ = l + if m.ProxyProtocolChoice != nil { + { + size := m.ProxyProtocolChoice.Size() + i -= size + if _, err := m.ProxyProtocolChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.LbSourceIpPersistanceChoice != nil { { size := m.LbSourceIpPersistanceChoice.Size() @@ -9765,24 +9419,93 @@ func (m *OriginPoolAdvancedOptions_DisableLbSourceIpPersistance) MarshalToSizedB } return len(dAtA) - i, nil } -func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { +func (m *OriginPoolAdvancedOptions_DisableProxyProtocol) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *OriginPoolAdvancedOptions_DisableProxyProtocol) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - _ = i + if m.DisableProxyProtocol != nil { + { + size, err := m.DisableProxyProtocol.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xca + } + return len(dAtA) - i, nil +} +func (m *OriginPoolAdvancedOptions_ProxyProtocolV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OriginPoolAdvancedOptions_ProxyProtocolV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV1 != nil { + { + size, err := m.ProxyProtocolV1.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xd2 + } + return len(dAtA) - i, nil +} +func (m *OriginPoolAdvancedOptions_ProxyProtocolV2) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OriginPoolAdvancedOptions_ProxyProtocolV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ProxyProtocolV2 != nil { + { + size, err := m.ProxyProtocolV2.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l if m.ViewInternal != nil { @@ -10807,6 +10530,18 @@ func (m *OriginServerPrivateIP_OutsideNetwork) Size() (n int) { } return n } +func (m *OriginServerPrivateIP_Segment) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Segment != nil { + l = m.Segment.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *OriginServerPrivateIP_Ipv6) Size() (n int) { if m == nil { return 0 @@ -10864,6 +10599,18 @@ func (m *OriginServerPrivateName_OutsideNetwork) Size() (n int) { } return n } +func (m *OriginServerPrivateName_Segment) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Segment != nil { + l = m.Segment.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *OriginServerVirtualNetworkIP) Size() (n int) { if m == nil { return 0 @@ -11038,70 +10785,6 @@ func (m *OriginServerConsulService_OutsideNetwork) Size() (n int) { } return n } -func (m *OriginServerSegmentIP) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.IpChoice != nil { - n += m.IpChoice.Size() - } - if m.SiteLocator != nil { - l = m.SiteLocator.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Segment != nil { - l = m.Segment.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - -func (m *OriginServerSegmentIP_Ip) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Ip) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *OriginServerSegmentIP_Ipv6) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Ipv6) - n += 1 + l + sovTypes(uint64(l)) - return n -} -func (m *OriginServerSegmentName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.DnsName) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if m.RefreshInterval != 0 { - n += 1 + sovTypes(uint64(m.RefreshInterval)) - } - if m.SiteLocator != nil { - l = m.SiteLocator.Size() - n += 1 + l + sovTypes(uint64(l)) - } - if m.Segment != nil { - l = m.Segment.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} - func (m *OriginServerCustomEndpoint) Size() (n int) { if m == nil { return 0 @@ -11243,30 +10926,6 @@ func (m *OriginServerType_VnPrivateName) Size() (n int) { } return n } -func (m *OriginServerType_SegmentIp) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SegmentIp != nil { - l = m.SegmentIp.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} -func (m *OriginServerType_SegmentName) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.SegmentName != nil { - l = m.SegmentName.Size() - n += 1 + l + sovTypes(uint64(l)) - } - return n -} func (m *UpstreamTlsValidationContext) Size() (n int) { if m == nil { return 0 @@ -11549,6 +11208,9 @@ func (m *OriginPoolAdvancedOptions) Size() (n int) { if m.LbSourceIpPersistanceChoice != nil { n += m.LbSourceIpPersistanceChoice.Size() } + if m.ProxyProtocolChoice != nil { + n += m.ProxyProtocolChoice.Size() + } return n } @@ -11717,6 +11379,42 @@ func (m *OriginPoolAdvancedOptions_DisableLbSourceIpPersistance) Size() (n int) } return n } +func (m *OriginPoolAdvancedOptions_DisableProxyProtocol) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableProxyProtocol != nil { + l = m.DisableProxyProtocol.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *OriginPoolAdvancedOptions_ProxyProtocolV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV1 != nil { + l = m.ProxyProtocolV1.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} +func (m *OriginPoolAdvancedOptions_ProxyProtocolV2) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ProxyProtocolV2 != nil { + l = m.ProxyProtocolV2.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *GlobalSpecType) Size() (n int) { if m == nil { return 0 @@ -12283,6 +11981,16 @@ func (this *OriginServerPrivateIP_OutsideNetwork) String() string { }, "") return s } +func (this *OriginServerPrivateIP_Segment) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OriginServerPrivateIP_Segment{`, + `Segment:` + strings.Replace(fmt.Sprintf("%v", this.Segment), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} func (this *OriginServerPrivateIP_Ipv6) String() string { if this == nil { return "nil" @@ -12326,6 +12034,16 @@ func (this *OriginServerPrivateName_OutsideNetwork) String() string { }, "") return s } +func (this *OriginServerPrivateName_Segment) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OriginServerPrivateName_Segment{`, + `Segment:` + strings.Replace(fmt.Sprintf("%v", this.Segment), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} func (this *OriginServerVirtualNetworkIP) String() string { if this == nil { return "nil" @@ -12462,51 +12180,6 @@ func (this *OriginServerConsulService_OutsideNetwork) String() string { }, "") return s } -func (this *OriginServerSegmentIP) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OriginServerSegmentIP{`, - `IpChoice:` + fmt.Sprintf("%v", this.IpChoice) + `,`, - `SiteLocator:` + strings.Replace(fmt.Sprintf("%v", this.SiteLocator), "SiteRegionLocator", "views.SiteRegionLocator", 1) + `,`, - `Segment:` + strings.Replace(fmt.Sprintf("%v", this.Segment), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} -func (this *OriginServerSegmentIP_Ip) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OriginServerSegmentIP_Ip{`, - `Ip:` + fmt.Sprintf("%v", this.Ip) + `,`, - `}`, - }, "") - return s -} -func (this *OriginServerSegmentIP_Ipv6) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OriginServerSegmentIP_Ipv6{`, - `Ipv6:` + fmt.Sprintf("%v", this.Ipv6) + `,`, - `}`, - }, "") - return s -} -func (this *OriginServerSegmentName) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&OriginServerSegmentName{`, - `DnsName:` + fmt.Sprintf("%v", this.DnsName) + `,`, - `RefreshInterval:` + fmt.Sprintf("%v", this.RefreshInterval) + `,`, - `SiteLocator:` + strings.Replace(fmt.Sprintf("%v", this.SiteLocator), "SiteRegionLocator", "views.SiteRegionLocator", 1) + `,`, - `Segment:` + strings.Replace(fmt.Sprintf("%v", this.Segment), "ObjectRefType", "views.ObjectRefType", 1) + `,`, - `}`, - }, "") - return s -} func (this *OriginServerCustomEndpoint) String() string { if this == nil { return "nil" @@ -12628,52 +12301,32 @@ func (this *OriginServerType_VnPrivateName) String() string { }, "") return s } -func (this *OriginServerType_SegmentIp) String() string { +func (this *UpstreamTlsValidationContext) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&OriginServerType_SegmentIp{`, - `SegmentIp:` + strings.Replace(fmt.Sprintf("%v", this.SegmentIp), "OriginServerSegmentIP", "OriginServerSegmentIP", 1) + `,`, + s := strings.Join([]string{`&UpstreamTlsValidationContext{`, + `TrustedCaChoice:` + fmt.Sprintf("%v", this.TrustedCaChoice) + `,`, `}`, }, "") return s } -func (this *OriginServerType_SegmentName) String() string { +func (this *UpstreamTlsValidationContext_TrustedCaUrl) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&OriginServerType_SegmentName{`, - `SegmentName:` + strings.Replace(fmt.Sprintf("%v", this.SegmentName), "OriginServerSegmentName", "OriginServerSegmentName", 1) + `,`, + s := strings.Join([]string{`&UpstreamTlsValidationContext_TrustedCaUrl{`, + `TrustedCaUrl:` + fmt.Sprintf("%v", this.TrustedCaUrl) + `,`, `}`, }, "") return s } -func (this *UpstreamTlsValidationContext) String() string { +func (this *UpstreamTlsValidationContext_TrustedCa) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&UpstreamTlsValidationContext{`, - `TrustedCaChoice:` + fmt.Sprintf("%v", this.TrustedCaChoice) + `,`, - `}`, - }, "") - return s -} -func (this *UpstreamTlsValidationContext_TrustedCaUrl) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&UpstreamTlsValidationContext_TrustedCaUrl{`, - `TrustedCaUrl:` + fmt.Sprintf("%v", this.TrustedCaUrl) + `,`, - `}`, - }, "") - return s -} -func (this *UpstreamTlsValidationContext_TrustedCa) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&UpstreamTlsValidationContext_TrustedCa{`, - `TrustedCa:` + strings.Replace(fmt.Sprintf("%v", this.TrustedCa), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + s := strings.Join([]string{`&UpstreamTlsValidationContext_TrustedCa{`, + `TrustedCa:` + strings.Replace(fmt.Sprintf("%v", this.TrustedCa), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `}`, }, "") return s @@ -12876,6 +12529,7 @@ func (this *OriginPoolAdvancedOptions) String() string { `HttpProtocolType:` + fmt.Sprintf("%v", this.HttpProtocolType) + `,`, `HeaderTransformationType:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformationType), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, `LbSourceIpPersistanceChoice:` + fmt.Sprintf("%v", this.LbSourceIpPersistanceChoice) + `,`, + `ProxyProtocolChoice:` + fmt.Sprintf("%v", this.ProxyProtocolChoice) + `,`, `}`, }, "") return s @@ -12985,7 +12639,7 @@ func (this *OriginPoolAdvancedOptions_Http1Config) String() string { return "nil" } s := strings.Join([]string{`&OriginPoolAdvancedOptions_Http1Config{`, - `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Empty", "schema.Empty", 1) + `,`, + `Http1Config:` + strings.Replace(fmt.Sprintf("%v", this.Http1Config), "Http1ProtocolOptions", "cluster.Http1ProtocolOptions", 1) + `,`, `}`, }, "") return s @@ -13020,6 +12674,36 @@ func (this *OriginPoolAdvancedOptions_DisableLbSourceIpPersistance) String() str }, "") return s } +func (this *OriginPoolAdvancedOptions_DisableProxyProtocol) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OriginPoolAdvancedOptions_DisableProxyProtocol{`, + `DisableProxyProtocol:` + strings.Replace(fmt.Sprintf("%v", this.DisableProxyProtocol), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OriginPoolAdvancedOptions_ProxyProtocolV1) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OriginPoolAdvancedOptions_ProxyProtocolV1{`, + `ProxyProtocolV1:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV1), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *OriginPoolAdvancedOptions_ProxyProtocolV2) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&OriginPoolAdvancedOptions_ProxyProtocolV2{`, + `ProxyProtocolV2:` + strings.Replace(fmt.Sprintf("%v", this.ProxyProtocolV2), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} func (this *GlobalSpecType) String() string { if this == nil { return "nil" @@ -13805,6 +13489,41 @@ func (m *OriginServerPrivateIP) Unmarshal(dAtA []byte) error { } m.NetworkChoice = &OriginServerPrivateIP_OutsideNetwork{v} iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.NetworkChoice = &OriginServerPrivateIP_Segment{v} + iNdEx = postIndex case 11: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Ipv6", wireType) @@ -14047,6 +13766,41 @@ func (m *OriginServerPrivateName) Unmarshal(dAtA []byte) error { break } } + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.ObjectRefType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.NetworkChoice = &OriginServerPrivateName_Segment{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -14460,409 +14214,28 @@ func (m *OriginServerK8SService) Unmarshal(dAtA []byte) error { if b < 0x80 { break } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.NetworkChoice = &OriginServerK8SService_InsideNetwork{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OutsideNetwork", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.NetworkChoice = &OriginServerK8SService_OutsideNetwork{v} - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Vk8SNetworks", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.NetworkChoice = &OriginServerK8SService_Vk8SNetworks{v} - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServiceSelector", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.LabelSelectorType{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.ServiceInfo = &OriginServerK8SService_ServiceSelector{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OriginServerConsulService) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OriginServerConsulService: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OriginServerConsulService: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServiceName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ServiceName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SiteLocator", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SiteLocator == nil { - m.SiteLocator = &views.SiteLocator{} - } - if err := m.SiteLocator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InsideNetwork", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.NetworkChoice = &OriginServerConsulService_InsideNetwork{v} - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OutsideNetwork", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &schema.Empty{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.NetworkChoice = &OriginServerConsulService_OutsideNetwork{v} - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *OriginServerSegmentIP) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: OriginServerSegmentIP: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: OriginServerSegmentIP: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Ip", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { + } + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.IpChoice = &OriginServerSegmentIP_Ip{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.NetworkChoice = &OriginServerK8SService_InsideNetwork{v} iNdEx = postIndex - case 3: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Ipv6", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OutsideNetwork", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -14872,27 +14245,30 @@ func (m *OriginServerSegmentIP) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTypes } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTypes } if postIndex > l { return io.ErrUnexpectedEOF } - m.IpChoice = &OriginServerSegmentIP_Ipv6{string(dAtA[iNdEx:postIndex])} + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.NetworkChoice = &OriginServerK8SService_OutsideNetwork{v} iNdEx = postIndex - case 4: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SiteLocator", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Vk8SNetworks", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14919,16 +14295,15 @@ func (m *OriginServerSegmentIP) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.SiteLocator == nil { - m.SiteLocator = &views.SiteRegionLocator{} - } - if err := m.SiteLocator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.NetworkChoice = &OriginServerK8SService_Vk8SNetworks{v} iNdEx = postIndex - case 5: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServiceSelector", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14955,12 +14330,11 @@ func (m *OriginServerSegmentIP) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Segment == nil { - m.Segment = &views.ObjectRefType{} - } - if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.LabelSelectorType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.ServiceInfo = &OriginServerK8SService_ServiceSelector{v} iNdEx = postIndex default: iNdEx = preIndex @@ -14986,7 +14360,7 @@ func (m *OriginServerSegmentIP) Unmarshal(dAtA []byte) error { } return nil } -func (m *OriginServerSegmentName) Unmarshal(dAtA []byte) error { +func (m *OriginServerConsulService) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15009,15 +14383,15 @@ func (m *OriginServerSegmentName) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: OriginServerSegmentName: wiretype end group for non-group") + return fmt.Errorf("proto: OriginServerConsulService: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: OriginServerSegmentName: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: OriginServerConsulService: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DnsName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServiceName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -15045,13 +14419,13 @@ func (m *OriginServerSegmentName) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DnsName = string(dAtA[iNdEx:postIndex]) + m.ServiceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field RefreshInterval", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SiteLocator", wireType) } - m.RefreshInterval = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -15061,14 +14435,31 @@ func (m *OriginServerSegmentName) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.RefreshInterval |= uint32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 3: + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SiteLocator == nil { + m.SiteLocator = &views.SiteLocator{} + } + if err := m.SiteLocator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SiteLocator", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field InsideNetwork", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15095,16 +14486,15 @@ func (m *OriginServerSegmentName) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.SiteLocator == nil { - m.SiteLocator = &views.SiteRegionLocator{} - } - if err := m.SiteLocator.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.NetworkChoice = &OriginServerConsulService_InsideNetwork{v} iNdEx = postIndex - case 4: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Segment", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OutsideNetwork", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15131,12 +14521,11 @@ func (m *OriginServerSegmentName) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Segment == nil { - m.Segment = &views.ObjectRefType{} - } - if err := m.Segment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.NetworkChoice = &OriginServerConsulService_OutsideNetwork{v} iNdEx = postIndex default: iNdEx = preIndex @@ -15722,76 +15111,6 @@ func (m *OriginServerType) Unmarshal(dAtA []byte) error { } m.Choice = &OriginServerType_VnPrivateName{v} iNdEx = postIndex - case 14: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SegmentIp", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &OriginServerSegmentIP{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Choice = &OriginServerType_SegmentIp{v} - iNdEx = postIndex - case 15: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SegmentName", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - v := &OriginServerSegmentName{} - if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - m.Choice = &OriginServerType_SegmentName{v} - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -17263,7 +16582,7 @@ func (m *OriginPoolAdvancedOptions) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &cluster.Http1ProtocolOptions{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -17374,6 +16693,111 @@ func (m *OriginPoolAdvancedOptions) Unmarshal(dAtA []byte) error { } m.LbSourceIpPersistanceChoice = &OriginPoolAdvancedOptions_DisableLbSourceIpPersistance{v} iNdEx = postIndex + case 25: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableProxyProtocol", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolChoice = &OriginPoolAdvancedOptions_DisableProxyProtocol{v} + iNdEx = postIndex + case 26: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV1", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolChoice = &OriginPoolAdvancedOptions_ProxyProtocolV1{v} + iNdEx = postIndex + case 27: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyProtocolV2", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ProxyProtocolChoice = &OriginPoolAdvancedOptions_ProxyProtocolV2{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/views/origin_pool/types.vesmsg.go b/pbgo/extschema/schema/views/origin_pool/types.vesmsg.go index 8a52433d1..08eea18dc 100644 --- a/pbgo/extschema/schema/views/origin_pool/types.vesmsg.go +++ b/pbgo/extschema/schema/views/origin_pool/types.vesmsg.go @@ -2336,6 +2336,43 @@ func (v *ValidateOriginPoolAdvancedOptions) Validate(ctx context.Context, pm int } + switch m.GetProxyProtocolChoice().(type) { + case *OriginPoolAdvancedOptions_DisableProxyProtocol: + if fv, exists := v.FldValidators["proxy_protocol_choice.disable_proxy_protocol"]; exists { + val := m.GetProxyProtocolChoice().(*OriginPoolAdvancedOptions_DisableProxyProtocol).DisableProxyProtocol + vOpts := append(opts, + db.WithValidateField("proxy_protocol_choice"), + db.WithValidateField("disable_proxy_protocol"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OriginPoolAdvancedOptions_ProxyProtocolV1: + if fv, exists := v.FldValidators["proxy_protocol_choice.proxy_protocol_v1"]; exists { + val := m.GetProxyProtocolChoice().(*OriginPoolAdvancedOptions_ProxyProtocolV1).ProxyProtocolV1 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_choice"), + db.WithValidateField("proxy_protocol_v1"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *OriginPoolAdvancedOptions_ProxyProtocolV2: + if fv, exists := v.FldValidators["proxy_protocol_choice.proxy_protocol_v2"]; exists { + val := m.GetProxyProtocolChoice().(*OriginPoolAdvancedOptions_ProxyProtocolV2).ProxyProtocolV2 + vOpts := append(opts, + db.WithValidateField("proxy_protocol_choice"), + db.WithValidateField("proxy_protocol_v2"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + if fv, exists := v.FldValidators["subset_choice"]; exists { val := m.GetSubsetChoice() vOpts := append(opts, @@ -2478,6 +2515,8 @@ var DefaultOriginPoolAdvancedOptionsValidator = func() *ValidateOriginPoolAdvanc v.FldValidators["circuit_breaker_choice.circuit_breaker"] = ves_io_schema_cluster.CircuitBreakerValidator().Validate + v.FldValidators["http_protocol_type.http1_config"] = ves_io_schema_cluster.Http1ProtocolOptionsValidator().Validate + v.FldValidators["outlier_detection_choice.outlier_detection"] = ves_io_schema_cluster.OutlierDetectionTypeValidator().Validate v.FldValidators["subset_choice.enable_subsets"] = OriginPoolSubsetsValidator().Validate @@ -3581,8 +3620,92 @@ func (m *OriginServerPrivateIP) GetDRefInfo() ([]db.DRefInfo, error) { return nil, nil } - return m.GetSiteLocatorDRefInfo() + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetNetworkChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetNetworkChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSiteLocatorDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSiteLocatorDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +func (m *OriginServerPrivateIP) GetNetworkChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetNetworkChoice().(type) { + case *OriginServerPrivateIP_InsideNetwork: + + return nil, nil + + case *OriginServerPrivateIP_OutsideNetwork: + + return nil, nil + + case *OriginServerPrivateIP_Segment: + + vref := m.GetSegment() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("segment.Object") + dri := db.DRefInfo{ + RefdType: "segment.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "segment", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } +} +// GetNetworkChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *OriginServerPrivateIP) GetNetworkChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetNetworkChoice().(type) { + case *OriginServerPrivateIP_InsideNetwork: + + case *OriginServerPrivateIP_OutsideNetwork: + + case *OriginServerPrivateIP_Segment: + refdType, err := d.TypeForEntryKind("", "", "segment.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: segment") + } + + vref := m.GetSegment() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "segment.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + } + + return entries, nil } // GetDRefInfo for the field's type @@ -3615,6 +3738,10 @@ func (v *ValidateOriginServerPrivateIP) NetworkChoiceValidationRuleHandler(rules return validatorFn, nil } +func (v *ValidateOriginServerPrivateIP) NetworkChoiceSegmentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + return ves_io_schema_views.ObjectRefTypeValidator().Validate, nil +} + func (v *ValidateOriginServerPrivateIP) PrivateIpChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewMessageValidationRuleHandler(rules) if err != nil { @@ -3706,6 +3833,17 @@ func (v *ValidateOriginServerPrivateIP) Validate(ctx context.Context, pm interfa return err } } + case *OriginServerPrivateIP_Segment: + if fv, exists := v.FldValidators["network_choice.segment"]; exists { + val := m.GetNetworkChoice().(*OriginServerPrivateIP_Segment).Segment + vOpts := append(opts, + db.WithValidateField("network_choice"), + db.WithValidateField("segment"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -3780,6 +3918,18 @@ var DefaultOriginServerPrivateIPValidator = func() *ValidateOriginServerPrivateI } v.FldValidators["network_choice"] = vFn + vrhNetworkChoiceSegment := v.NetworkChoiceSegmentValidationRuleHandler + rulesNetworkChoiceSegment := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFnMap["network_choice.segment"], err = vrhNetworkChoiceSegment(rulesNetworkChoiceSegment) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OriginServerPrivateIP.network_choice_segment: %s", err) + panic(errMsg) + } + + v.FldValidators["network_choice.segment"] = vFnMap["network_choice.segment"] + vrhPrivateIpChoice := v.PrivateIpChoiceValidationRuleHandler rulesPrivateIpChoice := map[string]string{ "ves.io.schema.rules.message.required_oneof": "true", @@ -3873,8 +4023,92 @@ func (m *OriginServerPrivateName) GetDRefInfo() ([]db.DRefInfo, error) { return nil, nil } - return m.GetSiteLocatorDRefInfo() + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetNetworkChoiceDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetNetworkChoiceDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSiteLocatorDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSiteLocatorDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +func (m *OriginServerPrivateName) GetNetworkChoiceDRefInfo() ([]db.DRefInfo, error) { + switch m.GetNetworkChoice().(type) { + case *OriginServerPrivateName_InsideNetwork: + + return nil, nil + + case *OriginServerPrivateName_OutsideNetwork: + + return nil, nil + + case *OriginServerPrivateName_Segment: + + vref := m.GetSegment() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("segment.Object") + dri := db.DRefInfo{ + RefdType: "segment.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "segment", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + + default: + return nil, nil + } +} + +// GetNetworkChoiceDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *OriginServerPrivateName) GetNetworkChoiceDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + + switch m.GetNetworkChoice().(type) { + case *OriginServerPrivateName_InsideNetwork: + + case *OriginServerPrivateName_OutsideNetwork: + + case *OriginServerPrivateName_Segment: + refdType, err := d.TypeForEntryKind("", "", "segment.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: segment") + } + + vref := m.GetSegment() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "segment.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + } + return entries, nil } // GetDRefInfo for the field's type @@ -3907,6 +4141,10 @@ func (v *ValidateOriginServerPrivateName) NetworkChoiceValidationRuleHandler(rul return validatorFn, nil } +func (v *ValidateOriginServerPrivateName) NetworkChoiceSegmentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + return ves_io_schema_views.ObjectRefTypeValidator().Validate, nil +} + func (v *ValidateOriginServerPrivateName) DnsNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { validatorFn, err := db.NewStringValidationRuleHandler(rules) @@ -4004,6 +4242,17 @@ func (v *ValidateOriginServerPrivateName) Validate(ctx context.Context, pm inter return err } } + case *OriginServerPrivateName_Segment: + if fv, exists := v.FldValidators["network_choice.segment"]; exists { + val := m.GetNetworkChoice().(*OriginServerPrivateName_Segment).Segment + vOpts := append(opts, + db.WithValidateField("network_choice"), + db.WithValidateField("segment"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -4051,6 +4300,18 @@ var DefaultOriginServerPrivateNameValidator = func() *ValidateOriginServerPrivat } v.FldValidators["network_choice"] = vFn + vrhNetworkChoiceSegment := v.NetworkChoiceSegmentValidationRuleHandler + rulesNetworkChoiceSegment := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFnMap["network_choice.segment"], err = vrhNetworkChoiceSegment(rulesNetworkChoiceSegment) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OriginServerPrivateName.network_choice_segment: %s", err) + panic(errMsg) + } + + v.FldValidators["network_choice.segment"] = vFnMap["network_choice.segment"] + vrhDnsName := v.DnsNameValidationRuleHandler rulesDnsName := map[string]string{ "ves.io.schema.rules.message.required": "true", @@ -4402,15 +4663,15 @@ func OriginServerPublicNameValidator() db.Validator { // augmented methods on protoc/std generated struct -func (m *OriginServerSegmentIP) ToJSON() (string, error) { +func (m *OriginServerType) ToJSON() (string, error) { return codec.ToJSON(m) } -func (m *OriginServerSegmentIP) ToYAML() (string, error) { +func (m *OriginServerType) ToYAML() (string, error) { return codec.ToYAML(m) } -func (m *OriginServerSegmentIP) DeepCopy() *OriginServerSegmentIP { +func (m *OriginServerType) DeepCopy() *OriginServerType { if m == nil { return nil } @@ -4418,7 +4679,7 @@ func (m *OriginServerSegmentIP) DeepCopy() *OriginServerSegmentIP { if err != nil { return nil } - c := &OriginServerSegmentIP{} + c := &OriginServerType{} err = c.Unmarshal(ser) if err != nil { return nil @@ -4426,685 +4687,37 @@ func (m *OriginServerSegmentIP) DeepCopy() *OriginServerSegmentIP { return c } -func (m *OriginServerSegmentIP) DeepCopyProto() proto.Message { +func (m *OriginServerType) DeepCopyProto() proto.Message { if m == nil { return nil } return m.DeepCopy() } -func (m *OriginServerSegmentIP) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OriginServerSegmentIPValidator().Validate(ctx, m, opts...) +func (m *OriginServerType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return OriginServerTypeValidator().Validate(ctx, m, opts...) } -func (m *OriginServerSegmentIP) GetDRefInfo() ([]db.DRefInfo, error) { +func (m *OriginServerType) GetDRefInfo() ([]db.DRefInfo, error) { if m == nil { return nil, nil } - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetSegmentDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSegmentDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetSiteLocatorDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSiteLocatorDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil + return m.GetChoiceDRefInfo() } -func (m *OriginServerSegmentIP) GetSegmentDRefInfo() ([]db.DRefInfo, error) { - - vref := m.GetSegment() - if vref == nil { +// GetDRefInfo for the field's type +func (m *OriginServerType) GetChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetChoice() == nil { return nil, nil } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("segment.Object") - dri := db.DRefInfo{ - RefdType: "segment.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "segment", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - -} - -// GetSegmentDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *OriginServerSegmentIP) GetSegmentDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "segment.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: segment") - } + switch m.GetChoice().(type) { + case *OriginServerType_PublicIp: - vref := m.GetSegment() - if vref == nil { return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "segment.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - return entries, nil -} - -// GetDRefInfo for the field's type -func (m *OriginServerSegmentIP) GetSiteLocatorDRefInfo() ([]db.DRefInfo, error) { - if m.GetSiteLocator() == nil { - return nil, nil - } - - drInfos, err := m.GetSiteLocator().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSiteLocator().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "site_locator." + dri.DRField - } - return drInfos, err - -} - -type ValidateOriginServerSegmentIP struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateOriginServerSegmentIP) IpChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - validatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ip_choice") - } - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentIP) IpChoiceIpValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Ip, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ip") - } - return oValidatorFn_Ip, nil -} -func (v *ValidateOriginServerSegmentIP) IpChoiceIpv6ValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - oValidatorFn_Ipv6, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for ipv6") - } - return oValidatorFn_Ipv6, nil -} - -func (v *ValidateOriginServerSegmentIP) SiteLocatorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for site_locator") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema_views.SiteRegionLocatorValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentIP) SegmentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for segment") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentIP) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OriginServerSegmentIP) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OriginServerSegmentIP got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["ip_choice"]; exists { - val := m.GetIpChoice() - vOpts := append(opts, - db.WithValidateField("ip_choice"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - switch m.GetIpChoice().(type) { - case *OriginServerSegmentIP_Ip: - if fv, exists := v.FldValidators["ip_choice.ip"]; exists { - val := m.GetIpChoice().(*OriginServerSegmentIP_Ip).Ip - vOpts := append(opts, - db.WithValidateField("ip_choice"), - db.WithValidateField("ip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OriginServerSegmentIP_Ipv6: - if fv, exists := v.FldValidators["ip_choice.ipv6"]; exists { - val := m.GetIpChoice().(*OriginServerSegmentIP_Ipv6).Ipv6 - vOpts := append(opts, - db.WithValidateField("ip_choice"), - db.WithValidateField("ipv6"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - - } - - if fv, exists := v.FldValidators["segment"]; exists { - - vOpts := append(opts, db.WithValidateField("segment")) - if err := fv(ctx, m.GetSegment(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["site_locator"]; exists { - - vOpts := append(opts, db.WithValidateField("site_locator")) - if err := fv(ctx, m.GetSiteLocator(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultOriginServerSegmentIPValidator = func() *ValidateOriginServerSegmentIP { - v := &ValidateOriginServerSegmentIP{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhIpChoice := v.IpChoiceValidationRuleHandler - rulesIpChoice := map[string]string{ - "ves.io.schema.rules.message.required_oneof": "true", - } - vFn, err = vrhIpChoice(rulesIpChoice) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentIP.ip_choice: %s", err) - panic(errMsg) - } - v.FldValidators["ip_choice"] = vFn - - vrhIpChoiceIp := v.IpChoiceIpValidationRuleHandler - rulesIpChoiceIp := map[string]string{ - "ves.io.schema.rules.string.ipv4": "true", - } - vFnMap["ip_choice.ip"], err = vrhIpChoiceIp(rulesIpChoiceIp) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OriginServerSegmentIP.ip_choice_ip: %s", err) - panic(errMsg) - } - vrhIpChoiceIpv6 := v.IpChoiceIpv6ValidationRuleHandler - rulesIpChoiceIpv6 := map[string]string{ - "ves.io.schema.rules.string.ipv6": "true", - } - vFnMap["ip_choice.ipv6"], err = vrhIpChoiceIpv6(rulesIpChoiceIpv6) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field OriginServerSegmentIP.ip_choice_ipv6: %s", err) - panic(errMsg) - } - - v.FldValidators["ip_choice.ip"] = vFnMap["ip_choice.ip"] - v.FldValidators["ip_choice.ipv6"] = vFnMap["ip_choice.ipv6"] - - vrhSiteLocator := v.SiteLocatorValidationRuleHandler - rulesSiteLocator := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhSiteLocator(rulesSiteLocator) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentIP.site_locator: %s", err) - panic(errMsg) - } - v.FldValidators["site_locator"] = vFn - - vrhSegment := v.SegmentValidationRuleHandler - rulesSegment := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhSegment(rulesSegment) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentIP.segment: %s", err) - panic(errMsg) - } - v.FldValidators["segment"] = vFn - - return v -}() - -func OriginServerSegmentIPValidator() db.Validator { - return DefaultOriginServerSegmentIPValidator -} - -// augmented methods on protoc/std generated struct - -func (m *OriginServerSegmentName) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *OriginServerSegmentName) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *OriginServerSegmentName) DeepCopy() *OriginServerSegmentName { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &OriginServerSegmentName{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *OriginServerSegmentName) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *OriginServerSegmentName) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OriginServerSegmentNameValidator().Validate(ctx, m, opts...) -} - -func (m *OriginServerSegmentName) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - var drInfos []db.DRefInfo - if fdrInfos, err := m.GetSegmentDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSegmentDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - if fdrInfos, err := m.GetSiteLocatorDRefInfo(); err != nil { - return nil, errors.Wrap(err, "GetSiteLocatorDRefInfo() FAILED") - } else { - drInfos = append(drInfos, fdrInfos...) - } - - return drInfos, nil - -} - -func (m *OriginServerSegmentName) GetSegmentDRefInfo() ([]db.DRefInfo, error) { - - vref := m.GetSegment() - if vref == nil { - return nil, nil - } - vdRef := db.NewDirectRefForView(vref) - vdRef.SetKind("segment.Object") - dri := db.DRefInfo{ - RefdType: "segment.Object", - RefdTenant: vref.Tenant, - RefdNS: vref.Namespace, - RefdName: vref.Name, - DRField: "segment", - Ref: vdRef, - } - return []db.DRefInfo{dri}, nil - -} - -// GetSegmentDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table -func (m *OriginServerSegmentName) GetSegmentDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { - var entries []db.Entry - refdType, err := d.TypeForEntryKind("", "", "segment.Object") - if err != nil { - return nil, errors.Wrap(err, "Cannot find type for kind: segment") - } - - vref := m.GetSegment() - if vref == nil { - return nil, nil - } - ref := &ves_io_schema.ObjectRefType{ - Kind: "segment.Object", - Tenant: vref.Tenant, - Namespace: vref.Namespace, - Name: vref.Name, - } - refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) - if err != nil { - return nil, errors.Wrap(err, "Getting referred entry") - } - if refdEnt != nil { - entries = append(entries, refdEnt) - } - - return entries, nil -} - -// GetDRefInfo for the field's type -func (m *OriginServerSegmentName) GetSiteLocatorDRefInfo() ([]db.DRefInfo, error) { - if m.GetSiteLocator() == nil { - return nil, nil - } - - drInfos, err := m.GetSiteLocator().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSiteLocator().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "site_locator." + dri.DRField - } - return drInfos, err - -} - -type ValidateOriginServerSegmentName struct { - FldValidators map[string]db.ValidatorFunc -} - -func (v *ValidateOriginServerSegmentName) DnsNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewStringValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for dns_name") - } - - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentName) RefreshIntervalValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - validatorFn, err := db.NewUint32ValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "ValidationRuleHandler for refresh_interval") - } - - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentName) SiteLocatorValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for site_locator") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema_views.SiteRegionLocatorValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentName) SegmentValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { - - reqdValidatorFn, err := db.NewMessageValidationRuleHandler(rules) - if err != nil { - return nil, errors.Wrap(err, "MessageValidationRuleHandler for segment") - } - validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { - if err := reqdValidatorFn(ctx, val, opts...); err != nil { - return err - } - - if err := ves_io_schema_views.ObjectRefTypeValidator().Validate(ctx, val, opts...); err != nil { - return err - } - - return nil - } - - return validatorFn, nil -} - -func (v *ValidateOriginServerSegmentName) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { - m, ok := pm.(*OriginServerSegmentName) - if !ok { - switch t := pm.(type) { - case nil: - return nil - default: - return fmt.Errorf("Expected type *OriginServerSegmentName got type %s", t) - } - } - if m == nil { - return nil - } - - if fv, exists := v.FldValidators["dns_name"]; exists { - - vOpts := append(opts, db.WithValidateField("dns_name")) - if err := fv(ctx, m.GetDnsName(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["refresh_interval"]; exists { - - vOpts := append(opts, db.WithValidateField("refresh_interval")) - if err := fv(ctx, m.GetRefreshInterval(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["segment"]; exists { - - vOpts := append(opts, db.WithValidateField("segment")) - if err := fv(ctx, m.GetSegment(), vOpts...); err != nil { - return err - } - - } - - if fv, exists := v.FldValidators["site_locator"]; exists { - - vOpts := append(opts, db.WithValidateField("site_locator")) - if err := fv(ctx, m.GetSiteLocator(), vOpts...); err != nil { - return err - } - - } - - return nil -} - -// Well-known symbol for default validator implementation -var DefaultOriginServerSegmentNameValidator = func() *ValidateOriginServerSegmentName { - v := &ValidateOriginServerSegmentName{FldValidators: map[string]db.ValidatorFunc{}} - - var ( - err error - vFn db.ValidatorFunc - ) - _, _ = err, vFn - vFnMap := map[string]db.ValidatorFunc{} - _ = vFnMap - - vrhDnsName := v.DnsNameValidationRuleHandler - rulesDnsName := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhDnsName(rulesDnsName) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentName.dns_name: %s", err) - panic(errMsg) - } - v.FldValidators["dns_name"] = vFn - - vrhRefreshInterval := v.RefreshIntervalValidationRuleHandler - rulesRefreshInterval := map[string]string{ - "ves.io.schema.rules.uint32.lte": "604800", - } - vFn, err = vrhRefreshInterval(rulesRefreshInterval) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentName.refresh_interval: %s", err) - panic(errMsg) - } - v.FldValidators["refresh_interval"] = vFn - - vrhSiteLocator := v.SiteLocatorValidationRuleHandler - rulesSiteLocator := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhSiteLocator(rulesSiteLocator) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentName.site_locator: %s", err) - panic(errMsg) - } - v.FldValidators["site_locator"] = vFn - - vrhSegment := v.SegmentValidationRuleHandler - rulesSegment := map[string]string{ - "ves.io.schema.rules.message.required": "true", - } - vFn, err = vrhSegment(rulesSegment) - if err != nil { - errMsg := fmt.Sprintf("ValidationRuleHandler for OriginServerSegmentName.segment: %s", err) - panic(errMsg) - } - v.FldValidators["segment"] = vFn - - return v -}() - -func OriginServerSegmentNameValidator() db.Validator { - return DefaultOriginServerSegmentNameValidator -} - -// augmented methods on protoc/std generated struct - -func (m *OriginServerType) ToJSON() (string, error) { - return codec.ToJSON(m) -} - -func (m *OriginServerType) ToYAML() (string, error) { - return codec.ToYAML(m) -} - -func (m *OriginServerType) DeepCopy() *OriginServerType { - if m == nil { - return nil - } - ser, err := m.Marshal() - if err != nil { - return nil - } - c := &OriginServerType{} - err = c.Unmarshal(ser) - if err != nil { - return nil - } - return c -} - -func (m *OriginServerType) DeepCopyProto() proto.Message { - if m == nil { - return nil - } - return m.DeepCopy() -} - -func (m *OriginServerType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { - return OriginServerTypeValidator().Validate(ctx, m, opts...) -} - -func (m *OriginServerType) GetDRefInfo() ([]db.DRefInfo, error) { - if m == nil { - return nil, nil - } - - return m.GetChoiceDRefInfo() - -} - -// GetDRefInfo for the field's type -func (m *OriginServerType) GetChoiceDRefInfo() ([]db.DRefInfo, error) { - if m.GetChoice() == nil { - return nil, nil - } - switch m.GetChoice().(type) { - case *OriginServerType_PublicIp: - - return nil, nil - - case *OriginServerType_PrivateIp: + case *OriginServerType_PrivateIp: drInfos, err := m.GetPrivateIp().GetDRefInfo() if err != nil { @@ -5192,30 +4805,6 @@ func (m *OriginServerType) GetChoiceDRefInfo() ([]db.DRefInfo, error) { } return drInfos, err - case *OriginServerType_SegmentIp: - - drInfos, err := m.GetSegmentIp().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSegmentIp().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "segment_ip." + dri.DRField - } - return drInfos, err - - case *OriginServerType_SegmentName: - - drInfos, err := m.GetSegmentName().GetDRefInfo() - if err != nil { - return nil, errors.Wrap(err, "GetSegmentName().GetDRefInfo() FAILED") - } - for i := range drInfos { - dri := &drInfos[i] - dri.DRField = "segment_name." + dri.DRField - } - return drInfos, err - default: return nil, nil } @@ -5358,28 +4947,6 @@ func (v *ValidateOriginServerType) Validate(ctx context.Context, pm interface{}, return err } } - case *OriginServerType_SegmentIp: - if fv, exists := v.FldValidators["choice.segment_ip"]; exists { - val := m.GetChoice().(*OriginServerType_SegmentIp).SegmentIp - vOpts := append(opts, - db.WithValidateField("choice"), - db.WithValidateField("segment_ip"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } - case *OriginServerType_SegmentName: - if fv, exists := v.FldValidators["choice.segment_name"]; exists { - val := m.GetChoice().(*OriginServerType_SegmentName).SegmentName - vOpts := append(opts, - db.WithValidateField("choice"), - db.WithValidateField("segment_name"), - ) - if err := fv(ctx, val, vOpts...); err != nil { - return err - } - } } @@ -5430,8 +4997,6 @@ var DefaultOriginServerTypeValidator = func() *ValidateOriginServerType { v.FldValidators["choice.custom_endpoint_object"] = OriginServerCustomEndpointValidator().Validate v.FldValidators["choice.vn_private_ip"] = OriginServerVirtualNetworkIPValidator().Validate v.FldValidators["choice.vn_private_name"] = OriginServerVirtualNetworkNameValidator().Validate - v.FldValidators["choice.segment_ip"] = OriginServerSegmentIPValidator().Validate - v.FldValidators["choice.segment_name"] = OriginServerSegmentNameValidator().Validate return v }() diff --git a/pbgo/extschema/schema/views/pkg.vespkg.go b/pbgo/extschema/schema/views/pkg.vespkg.go index f083361ba..04826b91d 100644 --- a/pbgo/extschema/schema/views/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/pkg.vespkg.go @@ -80,6 +80,8 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.views.InternetVIPListenerStatusType"] = InternetVIPListenerStatusTypeValidator() vr["ves.io.schema.views.InternetVIPStatus"] = InternetVIPStatusValidator() vr["ves.io.schema.views.InternetVIPTargetGroupStatusType"] = InternetVIPTargetGroupStatusTypeValidator() + vr["ves.io.schema.views.KubernetesUpgradeDrain"] = KubernetesUpgradeDrainValidator() + vr["ves.io.schema.views.KubernetesUpgradeDrainConfig"] = KubernetesUpgradeDrainConfigValidator() vr["ves.io.schema.views.L3PerformanceEnhancementType"] = L3PerformanceEnhancementTypeValidator() vr["ves.io.schema.views.LinkRefType"] = LinkRefTypeValidator() vr["ves.io.schema.views.MasterNode"] = MasterNodeValidator() diff --git a/pbgo/extschema/schema/views/rate_limiter_policy/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/rate_limiter_policy/crudapi/api.vesapi.go index 909a3c35a..63ed07ee9 100644 --- a/pbgo/extschema/schema/views/rate_limiter_policy/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/rate_limiter_policy/crudapi/api.vesapi.go @@ -2881,14 +2881,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -3809,10 +3809,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/rate_limiter_policy/object.pb.go b/pbgo/extschema/schema/views/rate_limiter_policy/object.pb.go index aeff797ff..c0e3f26cf 100644 --- a/pbgo/extschema/schema/views/rate_limiter_policy/object.pb.go +++ b/pbgo/extschema/schema/views/rate_limiter_policy/object.pb.go @@ -232,42 +232,48 @@ func init() { } var fileDescriptor_6fd82bc50c1cfb1a = []byte{ - // 550 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0xc1, 0x8b, 0xd3, 0x4e, - 0x14, 0xce, 0x74, 0x7f, 0xf4, 0xb7, 0x4c, 0xcb, 0xba, 0x74, 0x51, 0xe2, 0xaa, 0x63, 0xa9, 0x07, - 0xf7, 0x60, 0x27, 0xb8, 0x2b, 0x88, 0x8b, 0x28, 0xac, 0x88, 0x17, 0x17, 0xa5, 0xd5, 0x8b, 0x28, - 0x21, 0x49, 0x5f, 0xd3, 0xd1, 0xa6, 0x13, 0x66, 0x26, 0x71, 0x73, 0x10, 0xc4, 0x93, 0x47, 0xef, - 0xfe, 0x03, 0xe2, 0x5f, 0xe1, 0x7a, 0x12, 0x4f, 0xc5, 0x53, 0x8f, 0x36, 0xbd, 0x78, 0x5c, 0xf0, - 0x1f, 0x90, 0x4e, 0x36, 0xa5, 0xad, 0x01, 0x7b, 0x7b, 0xc3, 0xfb, 0xbe, 0x6f, 0xbe, 0xf9, 0xde, - 0x1b, 0x7c, 0x23, 0x06, 0x49, 0x19, 0xb7, 0xa4, 0xd7, 0x83, 0xc0, 0xb1, 0x62, 0x06, 0xaf, 0xa5, - 0x25, 0x1c, 0x05, 0x76, 0x9f, 0x05, 0x4c, 0x81, 0xb0, 0x43, 0xde, 0x67, 0x5e, 0x62, 0x71, 0xf7, - 0x25, 0x78, 0x8a, 0x86, 0x82, 0x2b, 0x5e, 0xbb, 0x9a, 0xb1, 0x68, 0xc6, 0xa2, 0x9a, 0x45, 0x0b, - 0x58, 0xdb, 0x4d, 0x9f, 0xa9, 0x5e, 0xe4, 0x52, 0x8f, 0x07, 0x96, 0xcf, 0x7d, 0x6e, 0x69, 0xbe, - 0x1b, 0x75, 0xf5, 0x49, 0x1f, 0x74, 0x95, 0xe9, 0x6e, 0x5f, 0x58, 0x74, 0xc3, 0x43, 0xc5, 0xf8, - 0x40, 0x9e, 0x36, 0xcf, 0x2f, 0x36, 0x55, 0x12, 0x42, 0xde, 0x6a, 0x2c, 0xbd, 0x02, 0x24, 0x0c, - 0xe2, 0x25, 0x7a, 0xfd, 0xef, 0x97, 0xda, 0x8b, 0x88, 0xbd, 0x55, 0xb3, 0x98, 0xbf, 0xfa, 0x72, - 0x11, 0x69, 0x0e, 0xd0, 0x78, 0x5f, 0xc2, 0xe5, 0x47, 0x3a, 0xbc, 0xda, 0x2d, 0xbc, 0x1e, 0x80, - 0x72, 0x3a, 0x8e, 0x72, 0x4c, 0x54, 0x47, 0x3b, 0x95, 0xdd, 0x4b, 0x74, 0x31, 0xc9, 0x0c, 0x78, - 0x08, 0xca, 0x79, 0x92, 0x84, 0xd0, 0x9a, 0xc1, 0x6b, 0x0f, 0xf1, 0x19, 0x99, 0x48, 0x05, 0x81, - 0x3d, 0x53, 0x28, 0x69, 0x85, 0x2b, 0x4b, 0x0a, 0x6d, 0x8d, 0x5a, 0xd2, 0xd9, 0xc8, 0xb8, 0x87, - 0xb9, 0xda, 0x7d, 0xfc, 0x9f, 0x0c, 0xc1, 0x33, 0xd7, 0xb4, 0xc4, 0x75, 0xba, 0xe2, 0x38, 0x69, - 0x3b, 0x04, 0x4f, 0x0b, 0x6a, 0xfa, 0x3e, 0x7d, 0x77, 0xb7, 0x2a, 0x7b, 0x8e, 0x80, 0xce, 0xb5, - 0x7a, 0x24, 0x41, 0x7c, 0x3d, 0x36, 0x4b, 0x9b, 0xe8, 0xfb, 0xb1, 0x79, 0x36, 0x06, 0xd9, 0x64, - 0xbc, 0x19, 0x0a, 0x7e, 0x94, 0x34, 0x25, 0x78, 0x91, 0x60, 0x2a, 0x69, 0x3c, 0xc7, 0xeb, 0xb9, - 0x42, 0xed, 0x31, 0xfe, 0xdf, 0xf7, 0x6c, 0xed, 0x22, 0x8b, 0xe2, 0xe6, 0xca, 0x2e, 0x1e, 0xf4, - 0xb9, 0xeb, 0xf4, 0x67, 0x5e, 0xca, 0xbe, 0x37, 0xad, 0x1b, 0xbf, 0x11, 0xae, 0xb6, 0x95, 0xa3, - 0x22, 0xb9, 0x72, 0xdc, 0x19, 0xbc, 0x20, 0xee, 0xa7, 0xb8, 0x92, 0x2d, 0xbc, 0x2d, 0xa0, 0x2b, - 0xcd, 0x52, 0x7d, 0x6d, 0xa7, 0xb2, 0x7b, 0xb1, 0x70, 0x58, 0x2d, 0xe8, 0x4e, 0xc9, 0x07, 0xe7, - 0x3e, 0xbf, 0xd9, 0x2a, 0x70, 0xdb, 0xc2, 0x3c, 0x87, 0xc9, 0xda, 0x6d, 0x8c, 0x3d, 0x3e, 0xe8, - 0x30, 0xbd, 0x75, 0xe6, 0x5a, 0xa1, 0xea, 0xbd, 0x1c, 0xa0, 0x2d, 0xcd, 0xe1, 0xf7, 0xb7, 0x7e, - 0xdc, 0xd9, 0xc4, 0x1b, 0xb8, 0x9a, 0xbb, 0xa4, 0x11, 0xeb, 0x1c, 0x7c, 0x44, 0xc3, 0x31, 0x31, - 0x46, 0x63, 0x62, 0x9c, 0x8c, 0x09, 0x7a, 0x9b, 0x12, 0xf4, 0x29, 0x25, 0xe8, 0x5b, 0x4a, 0xd0, - 0x30, 0x25, 0x68, 0x94, 0x12, 0xf4, 0x33, 0x25, 0xe8, 0x57, 0x4a, 0x8c, 0x93, 0x94, 0xa0, 0x0f, - 0x13, 0x62, 0x7c, 0x99, 0x10, 0x34, 0x9c, 0x10, 0x63, 0x34, 0x21, 0xc6, 0xb3, 0x17, 0x3e, 0x0f, - 0x5f, 0xf9, 0x34, 0xe6, 0x7d, 0x05, 0x42, 0x38, 0x34, 0x92, 0x96, 0x2e, 0xba, 0x5c, 0x04, 0xd3, - 0xf1, 0xc5, 0xac, 0x03, 0xa2, 0x99, 0xb7, 0xad, 0xd0, 0xf5, 0xb9, 0x05, 0x47, 0xea, 0x74, 0xdb, - 0xff, 0xf5, 0x53, 0xdc, 0xb2, 0xfe, 0x03, 0x7b, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xc9, 0x2a, - 0xbe, 0x33, 0x67, 0x04, 0x00, 0x00, + // 646 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0x4f, 0x4f, 0x13, 0x4d, + 0x18, 0xef, 0x50, 0xde, 0x42, 0x06, 0xc2, 0x4b, 0x4a, 0xf2, 0xa6, 0x2f, 0xea, 0xd8, 0xd4, 0x83, + 0x1c, 0xd8, 0xdd, 0x08, 0x1a, 0x23, 0x31, 0x9a, 0x80, 0x86, 0x0b, 0x44, 0x53, 0xd4, 0x83, 0x7f, + 0x52, 0x67, 0x67, 0x9f, 0x6e, 0x47, 0x77, 0x3b, 0x9b, 0x99, 0xd9, 0x42, 0x0f, 0x26, 0xc6, 0xa3, + 0x27, 0xef, 0x7e, 0x01, 0xe3, 0xa7, 0x10, 0x4f, 0x1e, 0x09, 0x27, 0x8e, 0xb2, 0x8d, 0x89, 0x47, + 0x12, 0xbf, 0x80, 0xe9, 0x2c, 0x8b, 0xb4, 0x6e, 0xb4, 0x17, 0x6e, 0x33, 0xf9, 0xfd, 0x7b, 0x66, + 0xe6, 0x99, 0x07, 0x5f, 0xed, 0x80, 0xb2, 0xb9, 0x70, 0x14, 0x6b, 0x41, 0x48, 0x9d, 0x0e, 0x87, + 0x6d, 0xe5, 0x48, 0xaa, 0xa1, 0x11, 0xf0, 0x90, 0x6b, 0x90, 0x8d, 0x48, 0x04, 0x9c, 0x75, 0x1d, + 0xe1, 0xbe, 0x00, 0xa6, 0xed, 0x48, 0x0a, 0x2d, 0xca, 0x97, 0x53, 0x95, 0x9d, 0xaa, 0x6c, 0xa3, + 0xb2, 0x73, 0x54, 0xf3, 0x96, 0xcf, 0x75, 0x2b, 0x76, 0x6d, 0x26, 0x42, 0xc7, 0x17, 0xbe, 0x70, + 0x8c, 0xde, 0x8d, 0x9b, 0x66, 0x67, 0x36, 0x66, 0x95, 0xfa, 0xce, 0x9f, 0x1b, 0xac, 0x46, 0x44, + 0x9a, 0x8b, 0xb6, 0x3a, 0x06, 0xff, 0x1f, 0x04, 0x75, 0x37, 0x82, 0x0c, 0xaa, 0x0d, 0x9d, 0x02, + 0x14, 0xb4, 0x3b, 0x43, 0xf2, 0xea, 0xef, 0x27, 0x6d, 0x0c, 0x32, 0x96, 0x47, 0xbd, 0x8b, 0xd3, + 0xd1, 0x17, 0xf3, 0x44, 0xa7, 0x08, 0xb5, 0x6f, 0xff, 0xe0, 0xd2, 0x3d, 0x73, 0x79, 0xe5, 0x1b, + 0x78, 0x32, 0x04, 0x4d, 0x3d, 0xaa, 0x69, 0x05, 0x55, 0xd1, 0xc2, 0xd4, 0xd2, 0x05, 0x7b, 0xf0, + 0x26, 0x53, 0xe2, 0x26, 0x68, 0xfa, 0xa0, 0x1b, 0x41, 0xfd, 0x84, 0x5e, 0xde, 0xc0, 0xff, 0xaa, + 0xae, 0xd2, 0x10, 0x36, 0x4e, 0x1c, 0xc6, 0x8c, 0xc3, 0xa5, 0x21, 0x87, 0x2d, 0xc3, 0x1a, 0xf2, + 0x99, 0x49, 0xb5, 0x9b, 0x99, 0xdb, 0x5d, 0x3c, 0xae, 0x22, 0x60, 0x95, 0xa2, 0xb1, 0xb8, 0x62, + 0x8f, 0xf8, 0x9c, 0xf6, 0x56, 0x04, 0xcc, 0x18, 0x1a, 0xf9, 0xca, 0xdb, 0xf1, 0x37, 0xb7, 0xa7, + 0x55, 0x8b, 0x4a, 0xf0, 0x16, 0xab, 0xb1, 0x02, 0xf9, 0x79, 0xb7, 0x32, 0x36, 0x8b, 0xf6, 0x77, + 0x2b, 0x47, 0x45, 0xec, 0xe2, 0xe2, 0x3a, 0xe8, 0xf2, 0x93, 0xe6, 0xb5, 0x1d, 0x66, 0x29, 0x60, + 0xb1, 0x84, 0x10, 0x54, 0xcb, 0x72, 0xa9, 0xe2, 0xcc, 0x0a, 0x45, 0x9b, 0x6b, 0x21, 0x17, 0xab, + 0xc3, 0xb0, 0xd2, 0xb4, 0xed, 0x51, 0xe9, 0xfd, 0x62, 0x74, 0x40, 0x59, 0x5c, 0x58, 0x91, 0x14, + 0x3b, 0xdd, 0x94, 0xc9, 0x75, 0xd7, 0x92, 0x40, 0x3d, 0x4c, 0xf1, 0x44, 0x1d, 0xa2, 0x80, 0x32, + 0x28, 0x3f, 0xca, 0xcf, 0xe9, 0x57, 0xf5, 0x87, 0x90, 0x14, 0xce, 0x4f, 0xd8, 0x96, 0x5c, 0x03, + 0x7e, 0x8e, 0x4b, 0x6b, 0x12, 0xa8, 0x3e, 0xd3, 0x84, 0x3b, 0x10, 0xc0, 0x19, 0x26, 0x30, 0x3c, + 0xbe, 0xc1, 0xd5, 0xd9, 0xbe, 0x45, 0xed, 0x29, 0x9e, 0xcc, 0xda, 0xa3, 0x7c, 0x1f, 0x4f, 0xf8, + 0xac, 0x61, 0x5a, 0x2c, 0xed, 0xf3, 0xeb, 0x23, 0xb7, 0xd8, 0x7a, 0x20, 0x5c, 0x1a, 0x9c, 0x34, + 0x5a, 0xc9, 0x67, 0xfd, 0x75, 0xed, 0x07, 0xc2, 0xd3, 0x5b, 0x9a, 0xea, 0x58, 0x8d, 0xfc, 0x97, + 0x52, 0x7a, 0xce, 0x5f, 0x7a, 0x88, 0xa7, 0xd2, 0x69, 0xd6, 0x90, 0xd0, 0x54, 0x95, 0xb1, 0x6a, + 0x71, 0x61, 0x6a, 0xe9, 0x7c, 0xee, 0x4f, 0xac, 0x43, 0xb3, 0x2f, 0x5e, 0xfd, 0xef, 0xe3, 0xab, + 0xb9, 0x9c, 0x6a, 0xeb, 0x58, 0x64, 0x34, 0x55, 0xbe, 0x89, 0x31, 0x13, 0x6d, 0x8f, 0x9b, 0x91, + 0x52, 0x29, 0xe6, 0xba, 0xae, 0x65, 0x04, 0x53, 0xd2, 0x29, 0xfe, 0xca, 0xdc, 0xfe, 0xad, 0x59, + 0x3c, 0x83, 0xa7, 0xb3, 0x2a, 0xed, 0x98, 0x7b, 0xab, 0xef, 0xd1, 0xde, 0x21, 0x29, 0x1c, 0x1c, + 0x92, 0xc2, 0xd1, 0x21, 0x41, 0xaf, 0x13, 0x82, 0x3e, 0x24, 0x04, 0x7d, 0x49, 0x08, 0xda, 0x4b, + 0x08, 0x3a, 0x48, 0x08, 0xfa, 0x9a, 0x10, 0xf4, 0x3d, 0x21, 0x85, 0xa3, 0x84, 0xa0, 0x77, 0x3d, + 0x52, 0xf8, 0xd4, 0x23, 0x68, 0xaf, 0x47, 0x0a, 0x07, 0x3d, 0x52, 0x78, 0xfc, 0xcc, 0x17, 0xd1, + 0x4b, 0xdf, 0xee, 0x88, 0x40, 0x83, 0x94, 0xd4, 0x8e, 0x95, 0x63, 0x16, 0x4d, 0x21, 0xc3, 0xfe, + 0x1b, 0x76, 0xb8, 0x07, 0xd2, 0xca, 0x60, 0x27, 0x72, 0x7d, 0xe1, 0xc0, 0x8e, 0x3e, 0x1e, 0x65, + 0x7f, 0x1b, 0x83, 0x6e, 0xc9, 0x0c, 0xb8, 0xe5, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xb4, 0xb6, + 0x04, 0x0c, 0x44, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.pb.go b/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.pb.go index 3d5601e21..eeb37cf03 100644 --- a/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.pb.go @@ -1063,108 +1063,111 @@ func init() { } var fileDescriptor_ba8c903410701e85 = []byte{ - // 1604 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x5f, 0x6f, 0x1a, 0x57, - 0x16, 0xf7, 0x05, 0x4c, 0xe0, 0xe0, 0x3f, 0x93, 0xbb, 0x89, 0x83, 0xd9, 0x2c, 0xcb, 0x92, 0x68, - 0xd7, 0xb2, 0xe4, 0x21, 0xb2, 0x9d, 0x4d, 0x62, 0x59, 0xce, 0x62, 0x7b, 0x6c, 0xd9, 0xeb, 0x84, - 0x74, 0x20, 0x69, 0x13, 0xd5, 0x1a, 0x0d, 0x70, 0x21, 0xd3, 0x00, 0x33, 0x9d, 0xb9, 0xe0, 0xa0, - 0xca, 0x52, 0x15, 0xa9, 0xef, 0xad, 0xfa, 0x56, 0x55, 0x6a, 0x5f, 0xaa, 0xf6, 0x23, 0xb4, 0xb2, - 0x54, 0xa5, 0x4f, 0x49, 0xf3, 0x50, 0x45, 0xa9, 0x54, 0xe5, 0xb1, 0xc6, 0x7d, 0xc8, 0x4b, 0xa5, - 0xa8, 0xea, 0x07, 0xa8, 0xe6, 0xde, 0x19, 0x02, 0x98, 0x36, 0x80, 0xfd, 0xc4, 0xdc, 0x7b, 0xce, - 0xef, 0x77, 0xcf, 0x39, 0xf7, 0x9c, 0xc3, 0x99, 0x81, 0xc5, 0x1a, 0xb1, 0x44, 0x4d, 0x4f, 0x58, - 0xb9, 0xbb, 0xa4, 0xac, 0x26, 0x6a, 0x1a, 0xd9, 0xb1, 0x12, 0xa6, 0x4a, 0x89, 0x52, 0xd2, 0xca, - 0x1a, 0x25, 0xa6, 0x62, 0xe8, 0x25, 0x2d, 0x57, 0x4f, 0x18, 0xd5, 0x6c, 0x49, 0xcb, 0x29, 0x39, - 0xb3, 0x9a, 0x57, 0x0d, 0x4d, 0x34, 0x4c, 0x9d, 0xea, 0xf8, 0x3f, 0x1c, 0x2d, 0x72, 0xb4, 0xc8, - 0xd0, 0x62, 0x17, 0x74, 0x64, 0xa6, 0xa8, 0xd1, 0xbb, 0xd5, 0xac, 0x98, 0xd3, 0xcb, 0x89, 0xa2, - 0x5e, 0xd4, 0x13, 0x0c, 0x9f, 0xad, 0x16, 0xd8, 0x8a, 0x2d, 0xd8, 0x13, 0xe7, 0x8d, 0x9c, 0x2d, - 0xea, 0x7a, 0xb1, 0x44, 0x12, 0xaa, 0xa1, 0x25, 0xd4, 0x4a, 0x45, 0xa7, 0x2a, 0xd5, 0xf4, 0x8a, - 0xe5, 0x48, 0xff, 0xee, 0x48, 0x9b, 0x1c, 0xa4, 0x6c, 0xd0, 0xba, 0x23, 0x8c, 0xb4, 0x3b, 0x44, - 0x4c, 0x53, 0x37, 0x9b, 0xc0, 0x76, 0x99, 0x6e, 0xb4, 0xb2, 0x4e, 0xb6, 0x0b, 0x69, 0xdd, 0x20, - 0xae, 0x28, 0xde, 0x11, 0x24, 0x62, 0x91, 0x4a, 0xad, 0x03, 0x1e, 0x3b, 0x1c, 0x48, 0xa5, 0x5d, - 0x63, 0xbe, 0xd7, 0x50, 0xeb, 0xd9, 0x77, 0x48, 0x8e, 0x3a, 0xa8, 0xb9, 0x5e, 0x51, 0xad, 0x06, - 0xff, 0xb3, 0x1b, 0xa8, 0x45, 0x21, 0xfe, 0x0d, 0x82, 0xd1, 0x15, 0x93, 0xa8, 0x94, 0xc8, 0xe4, - 0xdd, 0x2a, 0xb1, 0x28, 0xbe, 0x0a, 0x81, 0x32, 0xa1, 0x6a, 0x5e, 0xa5, 0x6a, 0x18, 0xc5, 0xd0, - 0x54, 0x68, 0xf6, 0x9c, 0xd8, 0x7e, 0xbb, 0x29, 0x66, 0x16, 0x47, 0x5d, 0x23, 0x54, 0xcd, 0xd4, - 0x0d, 0x22, 0x37, 0x41, 0xf8, 0x6d, 0xf0, 0x59, 0x06, 0xc9, 0x85, 0x3d, 0x0c, 0x7c, 0x49, 0xec, - 0x31, 0x35, 0x44, 0x4e, 0x98, 0x36, 0x48, 0xce, 0x26, 0x5c, 0x1e, 0xff, 0x64, 0x77, 0xc4, 0xe6, - 0x11, 0x8b, 0x39, 0xc5, 0xfe, 0x95, 0x19, 0xeb, 0x42, 0xf0, 0xc9, 0x92, 0x9f, 0x1b, 0x10, 0xff, - 0xc0, 0x03, 0x63, 0xae, 0xed, 0x96, 0xa1, 0x57, 0x2c, 0x82, 0x17, 0x0f, 0x19, 0x1f, 0xeb, 0x6a, - 0xfc, 0x3a, 0xa1, 0x5d, 0x2c, 0x4f, 0xc1, 0xb8, 0x55, 0xb7, 0x28, 0x29, 0x2b, 0x4d, 0x12, 0x2f, - 0x23, 0xf9, 0x77, 0x07, 0x49, 0x9a, 0x69, 0x1d, 0xa6, 0x1a, 0xe3, 0xf0, 0x6b, 0x2e, 0xe1, 0xed, - 0xb6, 0x50, 0xcc, 0xf7, 0x1c, 0x8a, 0x75, 0x42, 0xfb, 0x88, 0xc3, 0xaf, 0x08, 0xc6, 0x64, 0x62, - 0x94, 0xd4, 0x5c, 0xf3, 0x12, 0xff, 0x77, 0x28, 0x0e, 0xe7, 0xbb, 0xc6, 0xc1, 0x81, 0x75, 0x89, - 0xc5, 0x76, 0x9b, 0xe9, 0x97, 0x7b, 0x36, 0xdd, 0x61, 0x7c, 0x8d, 0xf9, 0x38, 0x01, 0x82, 0x49, - 0x2c, 0xbd, 0x6a, 0xe6, 0x88, 0x52, 0x23, 0xa6, 0xa5, 0xe9, 0x15, 0x16, 0xeb, 0xe0, 0xb2, 0xef, - 0xc5, 0x1e, 0x42, 0xf2, 0xb8, 0x2b, 0xbd, 0xc5, 0x85, 0xad, 0xfe, 0x9e, 0x84, 0xf1, 0xa6, 0xbb, - 0xfc, 0xde, 0xe3, 0x5f, 0x22, 0x80, 0x75, 0x42, 0x5d, 0xf7, 0xcf, 0x42, 0xb0, 0xa2, 0x96, 0x89, - 0x65, 0xa8, 0x39, 0xc2, 0xfc, 0x0f, 0xca, 0xaf, 0x36, 0x30, 0x06, 0x9f, 0xbd, 0x60, 0xae, 0x05, - 0x65, 0xf6, 0x8c, 0x8b, 0x60, 0x9f, 0xc8, 0xc8, 0x94, 0x82, 0x6e, 0x96, 0x55, 0xca, 0xcc, 0x19, - 0x9b, 0x5d, 0xea, 0xe7, 0xd2, 0x5c, 0x7b, 0xd6, 0x18, 0xc3, 0x8a, 0x9e, 0x27, 0xf2, 0x98, 0xd9, - 0xb6, 0x17, 0xff, 0xce, 0x0f, 0xa1, 0x16, 0x4d, 0xfc, 0x26, 0x84, 0x72, 0x2c, 0x87, 0xd9, 0xb1, - 0x4e, 0xb8, 0xff, 0xdb, 0x67, 0xd1, 0x38, 0x7e, 0xcb, 0xc0, 0xa9, 0xec, 0xa3, 0xf0, 0x1d, 0x18, - 0x31, 0x79, 0x94, 0x38, 0xb3, 0xb7, 0xcf, 0x72, 0x6c, 0xcf, 0x28, 0x39, 0xe4, 0x90, 0x31, 0xee, - 0x6e, 0xb7, 0xe7, 0xfb, 0x8b, 0xdb, 0x6b, 0xab, 0xcb, 0xe1, 0xe3, 0xa8, 0xcb, 0x13, 0xc7, 0x52, - 0x97, 0xfe, 0x63, 0xaf, 0x4b, 0x9c, 0x01, 0xbf, 0x45, 0x55, 0x5a, 0xb5, 0xc2, 0x9f, 0x7f, 0x8a, - 0x62, 0xde, 0xa9, 0xd0, 0xec, 0xc5, 0x9e, 0xe9, 0xd3, 0x0c, 0xc8, 0xcd, 0x5f, 0xf6, 0x3e, 0xdc, - 0x45, 0xb2, 0xc3, 0x85, 0x37, 0xe0, 0xa4, 0x49, 0x0a, 0xc4, 0x34, 0xb5, 0x4a, 0x51, 0xe1, 0x7f, - 0x0b, 0x56, 0x38, 0xc0, 0xe8, 0xcf, 0xfe, 0x49, 0x61, 0x17, 0x98, 0xe7, 0x42, 0x13, 0xc6, 0xf7, - 0x2d, 0x7c, 0x0b, 0xc2, 0x79, 0x52, 0x22, 0x94, 0xe4, 0x15, 0x2e, 0x23, 0xf9, 0x26, 0x63, 0xb0, - 0x07, 0xc6, 0x09, 0x07, 0x2d, 0x3b, 0x60, 0x97, 0xf7, 0x2d, 0x98, 0xcc, 0x6b, 0x96, 0x9a, 0x2d, - 0x75, 0x23, 0x86, 0x1e, 0x88, 0xcf, 0xb8, 0xf0, 0x0e, 0xe6, 0x96, 0xd2, 0xdf, 0xf4, 0x05, 0x90, - 0xe0, 0x89, 0x7f, 0x81, 0x20, 0xb4, 0xa5, 0x59, 0x3d, 0x96, 0xfb, 0xbf, 0x60, 0xa4, 0xa4, 0x66, - 0x49, 0x49, 0x29, 0x68, 0x25, 0x4a, 0x4c, 0xa7, 0xec, 0x43, 0x6c, 0x6f, 0x8d, 0x6d, 0xe1, 0x73, - 0x30, 0x6a, 0x12, 0x43, 0x37, 0xa9, 0x52, 0xd0, 0x48, 0x29, 0x6f, 0x85, 0xbd, 0x31, 0xef, 0x54, - 0x50, 0x1e, 0xe1, 0x9b, 0x6b, 0x6c, 0x0f, 0x5f, 0x80, 0x53, 0x8e, 0x12, 0xbf, 0x14, 0x57, 0xd7, - 0xc7, 0x74, 0x31, 0x97, 0xf1, 0x2b, 0xe4, 0x88, 0xf8, 0x4b, 0x3f, 0x08, 0xdc, 0x4e, 0x5e, 0xec, - 0x1b, 0x94, 0x94, 0xf1, 0x04, 0xf8, 0x29, 0xa9, 0xa8, 0x15, 0xca, 0xb2, 0x2f, 0x28, 0x3b, 0xab, - 0x01, 0x7a, 0x96, 0x00, 0xde, 0xaa, 0x96, 0xe7, 0x6d, 0x53, 0xb6, 0x1f, 0x71, 0x0c, 0x42, 0x79, - 0x62, 0xe5, 0x4c, 0x8d, 0xcd, 0x1b, 0xe1, 0x10, 0xf7, 0xb4, 0x65, 0x0b, 0x47, 0x20, 0xe0, 0x86, - 0x39, 0x3c, 0x12, 0x43, 0x53, 0x01, 0xb9, 0xb9, 0xc6, 0xdb, 0xe0, 0x67, 0x41, 0xe1, 0x2e, 0x85, - 0x66, 0xa5, 0x9e, 0x13, 0xb7, 0xd3, 0x49, 0x71, 0x8b, 0xf1, 0x48, 0x15, 0x6a, 0xd6, 0x65, 0x87, - 0x14, 0x97, 0x20, 0xd4, 0x32, 0xc2, 0x39, 0x29, 0xb1, 0x39, 0xf8, 0x19, 0xc9, 0x57, 0x64, 0xfc, - 0xa0, 0x56, 0x7a, 0x7c, 0x05, 0x40, 0xdf, 0xa9, 0x10, 0x53, 0xb1, 0x19, 0xc3, 0x41, 0x56, 0xe8, - 0x91, 0x8e, 0xc3, 0x6e, 0x69, 0x64, 0xc7, 0xcd, 0xbe, 0x20, 0xd3, 0xb6, 0x77, 0xda, 0x9a, 0xd5, - 0xe8, 0x71, 0x34, 0xab, 0xb1, 0x23, 0x35, 0xab, 0x14, 0x04, 0x8a, 0x84, 0xb2, 0x1e, 0xe3, 0xb4, - 0xbd, 0x81, 0x1a, 0x96, 0x7c, 0xa2, 0xc8, 0x17, 0xf8, 0x36, 0x80, 0x93, 0xc1, 0x16, 0xa1, 0x4e, - 0x17, 0x39, 0x4a, 0x93, 0x0a, 0x72, 0xb6, 0x34, 0xa1, 0x91, 0x2b, 0x10, 0x6a, 0xb9, 0x7a, 0x3b, - 0x43, 0xef, 0x91, 0xba, 0x93, 0xcd, 0xf6, 0x23, 0x3e, 0x05, 0xc3, 0x35, 0xb5, 0x54, 0x75, 0x13, - 0x99, 0x2f, 0x16, 0x3c, 0x97, 0x51, 0x64, 0x09, 0x84, 0xce, 0x1b, 0xed, 0x07, 0xbf, 0xe9, 0x0b, - 0x0c, 0x0b, 0xfe, 0xf8, 0x47, 0x08, 0x46, 0x5a, 0x33, 0x05, 0xa7, 0x60, 0x58, 0xa3, 0xa4, 0x6c, - 0x85, 0x79, 0x33, 0xbe, 0x32, 0x70, 0xbe, 0xc9, 0x9c, 0x07, 0x5f, 0x00, 0x3f, 0x7f, 0x97, 0x08, - 0x7b, 0x18, 0x63, 0xb8, 0x83, 0x51, 0xb2, 0x85, 0x2c, 0xe0, 0x8e, 0x5e, 0xfc, 0x1e, 0x8c, 0xae, - 0xb2, 0x9e, 0x39, 0xf8, 0x78, 0x32, 0x05, 0x42, 0x41, 0xd5, 0x4a, 0x8a, 0x56, 0x68, 0xf6, 0x56, - 0x56, 0xf7, 0x01, 0x79, 0xcc, 0xde, 0xdf, 0x28, 0xb8, 0x3d, 0x73, 0xfa, 0x37, 0x04, 0xa7, 0xbb, - 0x4e, 0x22, 0x38, 0x02, 0x13, 0xeb, 0x52, 0x46, 0x91, 0xd3, 0x37, 0x94, 0xb5, 0x94, 0x7c, 0x2d, - 0x99, 0x51, 0x56, 0xa5, 0xb5, 0xe4, 0xcd, 0xad, 0x8c, 0x30, 0x84, 0xff, 0x01, 0x93, 0x1d, 0xb2, - 0xb5, 0x94, 0xac, 0xac, 0xc8, 0x52, 0x32, 0x23, 0x09, 0x08, 0x47, 0x21, 0xd2, 0x45, 0x2c, 0x4b, - 0x37, 0xb6, 0x92, 0x2b, 0x92, 0xe0, 0xc1, 0x93, 0x70, 0xba, 0x43, 0x9e, 0xce, 0x24, 0x33, 0x37, - 0xd3, 0x82, 0x17, 0x9f, 0x81, 0xbf, 0x75, 0x88, 0x64, 0x29, 0xb9, 0x2a, 0xf8, 0xf0, 0x79, 0x88, - 0x1d, 0x12, 0xac, 0x49, 0xb2, 0xbc, 0x71, 0x7d, 0x5d, 0x49, 0x2d, 0x6f, 0x4a, 0x2b, 0x99, 0xb4, - 0x30, 0xdc, 0x45, 0x6b, 0x59, 0x4e, 0xfd, 0x5f, 0xba, 0xce, 0x95, 0xa5, 0xeb, 0x2b, 0x52, 0x5a, - 0xf0, 0xcf, 0x7e, 0x1f, 0x04, 0x6f, 0xf2, 0xc6, 0x06, 0xde, 0x47, 0xe0, 0xe7, 0x13, 0x11, 0x1e, - 0x70, 0x84, 0x8a, 0x5c, 0xea, 0x1b, 0xe7, 0x8c, 0xa0, 0x85, 0xc6, 0xa3, 0xb0, 0xfd, 0x5e, 0x39, - 0xa3, 0xe9, 0x33, 0x86, 0xa9, 0xdf, 0xaf, 0xcf, 0x58, 0x24, 0x57, 0x35, 0x35, 0x5a, 0x9f, 0xd9, - 0x31, 0x35, 0x4a, 0x1e, 0xfc, 0xf8, 0xcb, 0xc7, 0x9e, 0x64, 0x7c, 0xd1, 0x79, 0x81, 0x4e, 0x34, - 0x2f, 0xdc, 0x4a, 0xbc, 0xe7, 0x76, 0x0a, 0xb1, 0xb9, 0xb9, 0xdb, 0xed, 0xd5, 0xce, 0x5a, 0x40, - 0xd3, 0xf8, 0x27, 0x04, 0xde, 0x75, 0x42, 0xf1, 0x5c, 0x7f, 0x83, 0x29, 0xf7, 0x6e, 0x7e, 0x90, - 0x69, 0x36, 0x9e, 0x7f, 0xfc, 0xb5, 0x07, 0x35, 0x1e, 0x85, 0x23, 0xdd, 0xdd, 0x33, 0x89, 0x9a, - 0x67, 0xde, 0x2d, 0xe2, 0x85, 0x6e, 0xde, 0xbd, 0xc6, 0x29, 0xae, 0xb0, 0x8b, 0x9f, 0x21, 0xf0, - 0xd9, 0x45, 0x87, 0xe7, 0xfb, 0xac, 0x51, 0xee, 0xda, 0xc5, 0x81, 0x2a, 0x3b, 0xbe, 0xdd, 0xa3, - 0x6f, 0x17, 0xf1, 0xdc, 0x00, 0xbe, 0xe1, 0xdf, 0x11, 0x9c, 0x70, 0x26, 0x69, 0x3c, 0xe8, 0xec, - 0x1d, 0xb9, 0xdc, 0x3f, 0xd0, 0xf1, 0xae, 0xd6, 0x4b, 0x52, 0xbe, 0x11, 0xd9, 0x3a, 0x4a, 0x52, - 0x76, 0x68, 0xee, 0xda, 0x49, 0xfa, 0x2d, 0x02, 0x3f, 0xef, 0x79, 0x7d, 0x14, 0x62, 0x5b, 0x93, - 0x8c, 0x4c, 0x88, 0xfc, 0xeb, 0x8e, 0xe8, 0x7e, 0xdd, 0x11, 0xa5, 0xb2, 0x41, 0xeb, 0xf1, 0x7c, - 0x2f, 0x2e, 0x5d, 0x9d, 0x3e, 0x42, 0x26, 0x2e, 0xa0, 0xe9, 0xc8, 0xfd, 0x87, 0x7b, 0xc8, 0xf3, - 0x6c, 0x0f, 0xf5, 0x6c, 0x3c, 0xff, 0x43, 0x7c, 0xbe, 0x87, 0x50, 0x63, 0x0f, 0xcd, 0x0f, 0xf2, - 0x67, 0xfa, 0xe0, 0x87, 0xb0, 0x47, 0x40, 0xcb, 0x9f, 0xa1, 0x27, 0x4b, 0xc3, 0x2b, 0xf2, 0xcd, - 0xd5, 0xad, 0xa7, 0xfb, 0xd1, 0xa1, 0xe7, 0xfb, 0xd1, 0xa1, 0x97, 0xfb, 0x51, 0xf4, 0x7e, 0x23, - 0x8a, 0xbe, 0x6a, 0x44, 0xd1, 0xe3, 0x46, 0x14, 0x3d, 0x6d, 0x44, 0xd1, 0xcf, 0x8d, 0x28, 0x7a, - 0xd1, 0x88, 0x0e, 0xbd, 0x6c, 0x44, 0xd1, 0x87, 0x07, 0xd1, 0xa1, 0x87, 0x07, 0x51, 0xf4, 0xf4, - 0x20, 0x3a, 0xf4, 0xfc, 0x20, 0x3a, 0x74, 0x67, 0xbb, 0xa8, 0x1b, 0xf7, 0x8a, 0x62, 0x4d, 0xb7, - 0x87, 0x5b, 0x53, 0x15, 0xab, 0x56, 0x82, 0x3d, 0xd8, 0xef, 0x81, 0x76, 0xcc, 0x6a, 0x5a, 0x9e, - 0x98, 0x33, 0xae, 0x38, 0x61, 0x64, 0x8b, 0x7a, 0x82, 0xdc, 0xa7, 0xce, 0x47, 0xa2, 0xd7, 0x7d, - 0x60, 0xca, 0xfa, 0xd9, 0x8d, 0xcc, 0xfd, 0x11, 0x00, 0x00, 0xff, 0xff, 0xe6, 0x73, 0x78, 0x19, - 0x33, 0x14, 0x00, 0x00, + // 1656 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x2c, 0x4b, 0x1b, + 0xad, 0x20, 0x94, 0x4b, 0x43, 0x3f, 0xb5, 0x2d, 0x08, 0x72, 0x29, 0x69, 0x25, 0x48, 0x95, 0x4d, + 0x77, 0x49, 0xbb, 0xb5, 0x51, 0x63, 0xb1, 0x5c, 0x0e, 0xe9, 0xad, 0x49, 0xee, 0x76, 0x67, 0x48, + 0x89, 0x28, 0x04, 0x14, 0x06, 0x7a, 0x6f, 0x13, 0x20, 0x87, 0xc4, 0x81, 0x03, 0x04, 0x41, 0x72, + 0x4a, 0xae, 0x09, 0x74, 0x71, 0x4e, 0x31, 0x7c, 0x08, 0x8c, 0xe4, 0xe2, 0x63, 0x4c, 0xe5, 0xe0, + 0x4b, 0x00, 0x23, 0x97, 0xe4, 0x18, 0xec, 0xcc, 0x2e, 0x4d, 0x52, 0x8c, 0x4d, 0x52, 0x72, 0x4e, + 0xdc, 0x99, 0xf7, 0xbe, 0x6f, 0xdf, 0x7c, 0xf3, 0xde, 0xe3, 0xcc, 0xc2, 0xc5, 0x1a, 0x26, 0xa2, + 0x6e, 0x24, 0x89, 0x76, 0x1b, 0x97, 0xd5, 0x64, 0x4d, 0xc7, 0xdb, 0x24, 0x69, 0xa9, 0x14, 0x2b, + 0x25, 0xbd, 0xac, 0x53, 0x6c, 0x29, 0xa6, 0x51, 0xd2, 0xb5, 0x7a, 0xd2, 0xac, 0xe6, 0x4a, 0xba, + 0xa6, 0x68, 0x56, 0x35, 0xaf, 0x9a, 0xba, 0x68, 0x5a, 0x06, 0x35, 0xd0, 0x1f, 0x38, 0x5a, 0xe4, + 0x68, 0x91, 0xa1, 0xc5, 0x2e, 0xe8, 0x48, 0xa2, 0xa8, 0xd3, 0xdb, 0xd5, 0x9c, 0xa8, 0x19, 0xe5, + 0x64, 0xd1, 0x28, 0x1a, 0x49, 0x86, 0xcf, 0x55, 0x0b, 0x6c, 0xc4, 0x06, 0xec, 0x89, 0xf3, 0x46, + 0x4e, 0x17, 0x0d, 0xa3, 0x58, 0xc2, 0x49, 0xd5, 0xd4, 0x93, 0x6a, 0xa5, 0x62, 0x50, 0x95, 0xea, + 0x46, 0x85, 0x38, 0xd6, 0x5f, 0x3b, 0xd6, 0x26, 0x07, 0x2e, 0x9b, 0xb4, 0xee, 0x18, 0x23, 0xed, + 0x0b, 0xc2, 0x96, 0x65, 0x58, 0x4d, 0x60, 0xbb, 0xcd, 0x30, 0x5b, 0x59, 0x27, 0xdb, 0x8d, 0xb4, + 0x6e, 0x62, 0xd7, 0x14, 0xef, 0x10, 0x09, 0x13, 0x5c, 0xa9, 0x75, 0xc0, 0x63, 0x07, 0x85, 0x54, + 0xda, 0x3d, 0xe6, 0x7a, 0x95, 0xda, 0xc8, 0xfd, 0x13, 0x6b, 0xd4, 0x41, 0xcd, 0xf6, 0x8a, 0x6a, + 0x0d, 0xf8, 0xb7, 0xdd, 0x40, 0x2d, 0x0e, 0xf1, 0xcf, 0x00, 0x1c, 0x5d, 0xb1, 0xb0, 0x4a, 0xb1, + 0x8c, 0xff, 0x55, 0xc5, 0x84, 0xa2, 0x4b, 0x30, 0x50, 0xc6, 0x54, 0xcd, 0xab, 0x54, 0x0d, 0x83, + 0x18, 0x98, 0x0a, 0xcd, 0x9c, 0x11, 0xdb, 0x77, 0x37, 0xcd, 0xc2, 0xe2, 0xa8, 0xcb, 0x98, 0xaa, + 0xd9, 0xba, 0x89, 0xe5, 0x26, 0x08, 0xfd, 0x03, 0xfa, 0x88, 0x89, 0xb5, 0xb0, 0x87, 0x81, 0xcf, + 0x8b, 0x3d, 0xa6, 0x86, 0xc8, 0x09, 0x33, 0x26, 0xd6, 0x6c, 0xc2, 0xe5, 0xf1, 0xb7, 0x77, 0x47, + 0x6c, 0x1e, 0xb1, 0xa8, 0x29, 0xf6, 0xaf, 0xcc, 0x58, 0x17, 0x82, 0x8f, 0x96, 0xfc, 0x3c, 0x80, + 0xf8, 0x7f, 0x3d, 0x70, 0xcc, 0x8d, 0x9d, 0x98, 0x46, 0x85, 0x60, 0xb4, 0x78, 0x20, 0xf8, 0x58, + 0xd7, 0xe0, 0xd7, 0x31, 0xed, 0x12, 0x79, 0x1a, 0x8e, 0x93, 0x3a, 0xa1, 0xb8, 0xac, 0x34, 0x49, + 0xbc, 0x8c, 0xe4, 0xf7, 0x1d, 0x24, 0x19, 0xe6, 0x75, 0x90, 0x6a, 0x8c, 0xc3, 0x2f, 0xbb, 0x84, + 0x37, 0xda, 0xa4, 0x98, 0xeb, 0x59, 0x8a, 0x75, 0x4c, 0xfb, 0xd0, 0xe1, 0x3b, 0x00, 0xc7, 0x64, + 0x6c, 0x96, 0x54, 0xad, 0xb9, 0x89, 0x7f, 0x3e, 0xa0, 0xc3, 0xd9, 0xae, 0x3a, 0x38, 0xb0, 0x2e, + 0x5a, 0xdc, 0x6a, 0x0b, 0xfd, 0x42, 0xcf, 0xa1, 0x3b, 0x8c, 0xaf, 0x08, 0x1f, 0x25, 0xa1, 0x60, + 0x61, 0x62, 0x54, 0x2d, 0x0d, 0x2b, 0x35, 0x6c, 0x11, 0xdd, 0xa8, 0x30, 0xad, 0x83, 0xcb, 0xbe, + 0x67, 0x7b, 0x00, 0xc8, 0xe3, 0xae, 0xf5, 0x3a, 0x37, 0xb6, 0xae, 0xf7, 0x38, 0x1c, 0x6f, 0x2e, + 0x97, 0xef, 0x7b, 0xfc, 0x43, 0x00, 0xe1, 0x3a, 0xa6, 0xee, 0xf2, 0x4f, 0xc3, 0x60, 0x45, 0x2d, + 0x63, 0x62, 0xaa, 0x1a, 0x66, 0xeb, 0x0f, 0xca, 0x2f, 0x26, 0x10, 0x82, 0x3e, 0x7b, 0xc0, 0x96, + 0x16, 0x94, 0xd9, 0x33, 0x2a, 0x42, 0xfb, 0x8d, 0x8c, 0x4c, 0x29, 0x18, 0x56, 0x59, 0xa5, 0x2c, + 0x9c, 0xb1, 0x99, 0xa5, 0x7e, 0x36, 0xcd, 0x8d, 0x67, 0x8d, 0x31, 0xac, 0x18, 0x79, 0x2c, 0x8f, + 0x59, 0x6d, 0x73, 0xf1, 0xcf, 0xfd, 0x30, 0xd4, 0xe2, 0x89, 0xfe, 0x06, 0x43, 0x1a, 0xcb, 0x61, + 0xf6, 0x5a, 0x47, 0xee, 0x3f, 0xf5, 0x59, 0x34, 0xce, 0xba, 0x65, 0xc8, 0xa9, 0xec, 0x57, 0xa1, + 0x9b, 0x70, 0xc4, 0xe2, 0x2a, 0x71, 0x66, 0x6f, 0x9f, 0xe5, 0xd8, 0x9e, 0x51, 0x72, 0xc8, 0x21, + 0x63, 0xdc, 0xdd, 0x76, 0xcf, 0xf7, 0x92, 0xdd, 0x6b, 0xab, 0xcb, 0xe1, 0xa3, 0xa8, 0xcb, 0x63, + 0x47, 0x52, 0x97, 0xfe, 0x23, 0xaf, 0x4b, 0x94, 0x85, 0x7e, 0x42, 0x55, 0x5a, 0x25, 0xe1, 0xf7, + 0xee, 0x81, 0x98, 0x77, 0x2a, 0x34, 0x33, 0xdf, 0x33, 0x7d, 0x86, 0x01, 0x79, 0xf8, 0xcb, 0xde, + 0x07, 0xbb, 0x40, 0x76, 0xb8, 0xd0, 0x06, 0x3c, 0x6e, 0xe1, 0x02, 0xb6, 0x2c, 0xbd, 0x52, 0x54, + 0xf8, 0xdf, 0x02, 0x09, 0x07, 0x18, 0xfd, 0xe9, 0x9f, 0x29, 0xec, 0x02, 0x5b, 0xb9, 0xd0, 0x84, + 0xf1, 0x79, 0x82, 0xae, 0xc3, 0x70, 0x1e, 0x97, 0x30, 0xc5, 0x79, 0x85, 0xdb, 0x70, 0xbe, 0xc9, + 0x18, 0xec, 0x81, 0x71, 0xc2, 0x41, 0xcb, 0x0e, 0xd8, 0xe5, 0xfd, 0x3b, 0x9c, 0xcc, 0xeb, 0x44, + 0xcd, 0x95, 0xba, 0x11, 0xc3, 0x1e, 0x88, 0x4f, 0xb9, 0xf0, 0x0e, 0xe6, 0x96, 0xd2, 0xdf, 0xf4, + 0x05, 0x80, 0xe0, 0x89, 0x7f, 0x00, 0x60, 0x68, 0x4b, 0x27, 0x3d, 0x96, 0xfb, 0xef, 0xe0, 0x48, + 0x49, 0xcd, 0xe1, 0x92, 0x52, 0xd0, 0x4b, 0x14, 0x5b, 0x4e, 0xd9, 0x87, 0xd8, 0xdc, 0x1a, 0x9b, + 0x42, 0x67, 0xe0, 0xa8, 0x85, 0x4d, 0xc3, 0xa2, 0x4a, 0x41, 0xc7, 0xa5, 0x3c, 0x09, 0x7b, 0x63, + 0xde, 0xa9, 0xa0, 0x3c, 0xc2, 0x27, 0xd7, 0xd8, 0x1c, 0x3a, 0x07, 0x4f, 0x38, 0x4e, 0x7c, 0x53, + 0x5c, 0x5f, 0x1f, 0xf3, 0x45, 0xdc, 0xc6, 0xb7, 0x90, 0x23, 0xe2, 0xcf, 0xfd, 0x50, 0xe0, 0x71, + 0xf2, 0x62, 0xdf, 0xa0, 0xb8, 0x8c, 0x26, 0xa0, 0x9f, 0xe2, 0x8a, 0x5a, 0xa1, 0x2c, 0xfb, 0x82, + 0xb2, 0x33, 0x1a, 0xa0, 0x67, 0x09, 0xd0, 0x5b, 0xd5, 0xf3, 0xbc, 0x6d, 0xca, 0xf6, 0x23, 0x8a, + 0xc1, 0x50, 0x1e, 0x13, 0xcd, 0xd2, 0xd9, 0x79, 0x23, 0x1c, 0xe2, 0x2b, 0x6d, 0x99, 0x42, 0x11, + 0x18, 0x70, 0x65, 0x0e, 0x8f, 0xc4, 0xc0, 0x54, 0x40, 0x6e, 0x8e, 0xd1, 0x2d, 0xe8, 0x67, 0xa2, + 0xf0, 0x25, 0x85, 0x66, 0xa4, 0x9e, 0x13, 0xb7, 0x73, 0x91, 0xe2, 0x16, 0xe3, 0x91, 0x2a, 0xd4, + 0xaa, 0xcb, 0x0e, 0x29, 0x2a, 0xc1, 0x50, 0xcb, 0x11, 0xce, 0x49, 0x89, 0xcd, 0xc1, 0xdf, 0x91, + 0x7a, 0x41, 0xc6, 0x5f, 0xd4, 0x4a, 0x8f, 0x2e, 0x42, 0x68, 0x6c, 0x57, 0xb0, 0xa5, 0xd8, 0x8c, + 0xe1, 0x20, 0x2b, 0xf4, 0x48, 0xc7, 0xcb, 0xae, 0xeb, 0x78, 0xdb, 0xcd, 0xbe, 0x20, 0xf3, 0xb6, + 0x67, 0xda, 0x9a, 0xd5, 0xe8, 0x51, 0x34, 0xab, 0xb1, 0x43, 0x35, 0xab, 0x34, 0x0c, 0x14, 0x31, + 0x65, 0x3d, 0xc6, 0x69, 0x7b, 0x03, 0x35, 0x2c, 0xf9, 0x58, 0x91, 0x0f, 0xd0, 0x0d, 0x08, 0x9d, + 0x0c, 0x26, 0x98, 0x3a, 0x5d, 0xe4, 0x30, 0x4d, 0x2a, 0xc8, 0xd9, 0x32, 0x98, 0x46, 0x2e, 0xc2, + 0x50, 0xcb, 0xd6, 0xdb, 0x19, 0x7a, 0x07, 0xd7, 0x9d, 0x6c, 0xb6, 0x1f, 0xd1, 0x09, 0x38, 0x5c, + 0x53, 0x4b, 0x55, 0x37, 0x91, 0xf9, 0x60, 0xc1, 0x73, 0x01, 0x44, 0x96, 0xa0, 0xd0, 0xb9, 0xa3, + 0xfd, 0xe0, 0x37, 0x7d, 0x81, 0x61, 0xc1, 0x1f, 0xff, 0x3f, 0x80, 0x23, 0xad, 0x99, 0x82, 0xd2, + 0x70, 0x58, 0xa7, 0xb8, 0x4c, 0xc2, 0xbc, 0x19, 0x5f, 0x1c, 0x38, 0xdf, 0x64, 0xce, 0x83, 0xce, + 0x41, 0x3f, 0xbf, 0x4b, 0x84, 0x3d, 0x8c, 0x31, 0xdc, 0xc1, 0x28, 0xd9, 0x46, 0x26, 0xb8, 0xe3, + 0x17, 0xbf, 0x03, 0x47, 0x57, 0x59, 0xcf, 0x1c, 0xfc, 0x78, 0x32, 0x05, 0x85, 0x82, 0xaa, 0x97, + 0x14, 0xbd, 0xd0, 0xec, 0xad, 0xac, 0xee, 0x03, 0xf2, 0x98, 0x3d, 0xbf, 0x51, 0x70, 0x7b, 0xe6, + 0xf4, 0xf7, 0x00, 0x9e, 0xec, 0x7a, 0x12, 0x41, 0x11, 0x38, 0xb1, 0x2e, 0x65, 0x15, 0x39, 0x73, + 0x55, 0x59, 0x4b, 0xcb, 0x97, 0x53, 0x59, 0x65, 0x55, 0x5a, 0x4b, 0x5d, 0xdb, 0xca, 0x0a, 0x43, + 0xe8, 0x37, 0x70, 0xb2, 0xc3, 0xb6, 0x96, 0x96, 0x95, 0x15, 0x59, 0x4a, 0x65, 0x25, 0x01, 0xa0, + 0x28, 0x8c, 0x74, 0x31, 0xcb, 0xd2, 0xd5, 0xad, 0xd4, 0x8a, 0x24, 0x78, 0xd0, 0x24, 0x3c, 0xd9, + 0x61, 0xcf, 0x64, 0x53, 0xd9, 0x6b, 0x19, 0xc1, 0x8b, 0x4e, 0xc1, 0x5f, 0x75, 0x98, 0x64, 0x29, + 0xb5, 0x2a, 0xf8, 0xd0, 0x59, 0x18, 0x3b, 0x60, 0x58, 0x93, 0x64, 0x79, 0xe3, 0xca, 0xba, 0x92, + 0x5e, 0xde, 0x94, 0x56, 0xb2, 0x19, 0x61, 0xb8, 0x8b, 0xd7, 0xb2, 0x9c, 0xfe, 0x8b, 0x74, 0x85, + 0x3b, 0x4b, 0x57, 0x56, 0xa4, 0x8c, 0xe0, 0x9f, 0xf9, 0x21, 0x04, 0xbd, 0xa9, 0xab, 0x1b, 0xe8, + 0x1d, 0x0f, 0xf4, 0xf3, 0x13, 0x11, 0x1a, 0xf0, 0x08, 0x15, 0x39, 0xdf, 0x37, 0xce, 0x39, 0x82, + 0xde, 0x07, 0x8d, 0x2f, 0xc2, 0xd9, 0xc2, 0xfc, 0x8e, 0x96, 0x20, 0x58, 0xab, 0x5a, 0xb8, 0x8c, + 0xc9, 0xed, 0x44, 0x4e, 0x25, 0xba, 0x96, 0xa8, 0x12, 0x6c, 0xfd, 0xb1, 0xd3, 0x44, 0xa8, 0x5a, + 0xc9, 0xab, 0x56, 0x9e, 0x5b, 0x6b, 0x98, 0x24, 0x74, 0x23, 0x61, 0x5a, 0xc6, 0x4e, 0x9d, 0x7b, + 0xe9, 0xb4, 0x9e, 0xd8, 0xb6, 0x74, 0x8a, 0xef, 0x7e, 0xfd, 0xed, 0x9b, 0x9e, 0x54, 0x7c, 0xd1, + 0xb9, 0x7a, 0x27, 0x9b, 0xa9, 0x42, 0x92, 0xff, 0x76, 0x7b, 0x8c, 0xd8, 0x9c, 0xdc, 0xed, 0x76, + 0x29, 0x24, 0x0b, 0x60, 0x1a, 0xbd, 0xe5, 0x81, 0xde, 0x75, 0x4c, 0xd1, 0x6c, 0x7f, 0x47, 0x5a, + 0xae, 0xcb, 0xdc, 0x20, 0xe7, 0xe0, 0xf8, 0xfb, 0xe0, 0xe1, 0xa7, 0x1e, 0x5b, 0x98, 0x1b, 0xdd, + 0x85, 0x29, 0x1b, 0x15, 0x9d, 0x1a, 0x2f, 0xd1, 0xc6, 0x75, 0xe8, 0x2e, 0x8f, 0x85, 0xd5, 0x3c, + 0x53, 0x67, 0x11, 0x2d, 0x74, 0x53, 0xe7, 0x15, 0xa2, 0x70, 0x87, 0x5d, 0xf4, 0x86, 0x07, 0xfa, + 0xec, 0x72, 0x47, 0x73, 0x7d, 0x76, 0x07, 0x2e, 0xcd, 0xfc, 0x40, 0x3d, 0x25, 0x7e, 0xef, 0x17, + 0xd2, 0x66, 0x1e, 0xcd, 0x0e, 0xa0, 0x0d, 0xfa, 0xd8, 0x03, 0x8f, 0x39, 0x77, 0x00, 0x34, 0xe8, + 0xad, 0x21, 0x72, 0xa1, 0x7f, 0xa0, 0xa3, 0xce, 0x27, 0xaf, 0xb7, 0x9c, 0xfe, 0x1a, 0xd9, 0x3a, + 0x4c, 0x39, 0x75, 0x78, 0xee, 0xda, 0xe5, 0xf5, 0x23, 0x80, 0x7e, 0xde, 0xe7, 0xfb, 0x68, 0x3e, + 0x6d, 0x7f, 0x0c, 0x91, 0x09, 0x91, 0x7f, 0xd1, 0x12, 0xdd, 0x2f, 0x5a, 0xa2, 0x54, 0x36, 0x69, + 0x3d, 0xfe, 0xee, 0xeb, 0x15, 0xe3, 0xd2, 0xf4, 0x21, 0xaa, 0x67, 0x01, 0x4c, 0x47, 0x76, 0x1e, + 0xec, 0x01, 0xcf, 0x57, 0x7b, 0xa0, 0xe7, 0x65, 0xf3, 0xe3, 0xc3, 0x93, 0x3d, 0x00, 0x1a, 0x7b, + 0x60, 0x6e, 0x90, 0xa3, 0xc7, 0xdd, 0x2f, 0xc3, 0x1e, 0x01, 0x2c, 0xdf, 0x07, 0x8f, 0x96, 0x86, + 0x57, 0xe4, 0x6b, 0xab, 0x5b, 0x8f, 0x9f, 0x46, 0x87, 0x9e, 0x3c, 0x8d, 0x0e, 0x3d, 0x7f, 0x1a, + 0x05, 0xff, 0x69, 0x44, 0xc1, 0x47, 0x8d, 0x28, 0x78, 0xd8, 0x88, 0x82, 0xc7, 0x8d, 0x28, 0xf8, + 0xa6, 0x11, 0x05, 0xcf, 0x1a, 0xd1, 0xa1, 0xe7, 0x8d, 0x28, 0xf8, 0xdf, 0x7e, 0x74, 0xe8, 0xc1, + 0x7e, 0x14, 0x3c, 0xde, 0x8f, 0x0e, 0x3d, 0xd9, 0x8f, 0x0e, 0xdd, 0xbc, 0x55, 0x34, 0xcc, 0x3b, + 0x45, 0xb1, 0x66, 0xd8, 0x57, 0x01, 0x4b, 0x15, 0xab, 0x24, 0xc9, 0x1e, 0xec, 0x5b, 0xb3, 0xad, + 0x59, 0x4d, 0xcf, 0x63, 0x2b, 0xe1, 0x9a, 0x93, 0x66, 0xae, 0x68, 0x24, 0xf1, 0x0e, 0x75, 0x3e, + 0xa9, 0xbd, 0xea, 0x73, 0x5c, 0xce, 0xcf, 0xf6, 0x72, 0xf6, 0xa7, 0x00, 0x00, 0x00, 0xff, 0xff, + 0xd5, 0x79, 0x16, 0x7d, 0x61, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.vesapi.go index 9b4516b95..455e80f41 100644 --- a/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/rate_limiter_policy/public_crudapi.vesapi.go @@ -2246,14 +2246,14 @@ var APISwaggerJSON string = `{ }, "policyAsnMatchList": { "type": "object", - "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.", + "description": "An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.", "title": "Asn Match List", "x-displayname": "ASN Match List", "x-ves-proto-message": "ves.io.schema.policy.AsnMatchList", "properties": { "as_numbers": { "type": "array", - "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "description": " An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer.\n\nExample: - \"[713, 7932, 847325, 4683, 15269, 1000001]\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 16\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "as numbers", "minItems": 1, "maxItems": 16, @@ -3469,10 +3469,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3529,10 +3533,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3591,10 +3599,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/securemesh_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/securemesh_site/crudapi/api.vesapi.go index 689786106..7157461a4 100644 --- a/pbgo/extschema/schema/views/securemesh_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/securemesh_site/crudapi/api.vesapi.go @@ -4420,10 +4420,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5560,6 +5564,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -5773,6 +5848,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaEmpty", "x-displayname": "Default Network Configuration" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "title": "Disable Logs Streaming", diff --git a/pbgo/extschema/schema/views/securemesh_site/object.pb.go b/pbgo/extschema/schema/views/securemesh_site/object.pb.go index 2afafd54c..a2b71bf9b 100644 --- a/pbgo/extschema/schema/views/securemesh_site/object.pb.go +++ b/pbgo/extschema/schema/views/securemesh_site/object.pb.go @@ -231,46 +231,47 @@ func init() { } var fileDescriptor_5d69fed9b717effc = []byte{ - // 621 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xc1, 0x4f, 0x13, 0x4f, - 0x14, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0x40, 0xf6, 0x77, 0xe9, 0x0f, 0x75, 0x24, 0xe5, 0xc2, - 0xc1, 0x9d, 0x35, 0x10, 0x0f, 0x12, 0x82, 0x11, 0x54, 0x2e, 0x10, 0x63, 0xf1, 0xa0, 0x5e, 0x9a, - 0xd9, 0xe9, 0xeb, 0x32, 0xda, 0xdd, 0xd9, 0xcc, 0xcc, 0x16, 0x38, 0x98, 0x18, 0xff, 0x02, 0x6f, - 0xfe, 0x0b, 0xc6, 0xbf, 0x42, 0x3c, 0x79, 0x24, 0x78, 0xe1, 0x28, 0xdb, 0x0b, 0x37, 0xf9, 0x03, - 0x3c, 0x98, 0xce, 0xb2, 0xa4, 0xad, 0x95, 0x34, 0x91, 0xdb, 0x9b, 0xbc, 0xef, 0xf7, 0xd3, 0xd7, - 0xf7, 0xde, 0x3e, 0x7c, 0xb7, 0x0d, 0x9a, 0x0a, 0xe9, 0x69, 0xbe, 0x0b, 0x21, 0xf3, 0xda, 0x02, - 0xf6, 0xb4, 0xa7, 0x81, 0x27, 0x0a, 0x42, 0xd0, 0xbb, 0x75, 0x2d, 0x0c, 0x78, 0xd2, 0x7f, 0x0d, - 0xdc, 0xd0, 0x58, 0x49, 0x23, 0x9d, 0x85, 0xcc, 0x41, 0x33, 0x07, 0xb5, 0x0e, 0x3a, 0xe0, 0x98, - 0x73, 0x03, 0x61, 0x76, 0x13, 0x9f, 0x72, 0x19, 0x7a, 0x81, 0x0c, 0xa4, 0x67, 0xbd, 0x7e, 0xd2, - 0xb4, 0x2f, 0xfb, 0xb0, 0x51, 0xc6, 0x9c, 0xbb, 0xd1, 0x5f, 0x85, 0x8c, 0x8d, 0x90, 0x91, 0xbe, - 0x48, 0xfe, 0xdf, 0x9f, 0x34, 0x07, 0x31, 0xe4, 0xa9, 0xea, 0x40, 0xf5, 0xa0, 0x21, 0x6a, 0x0f, - 0xd8, 0xe7, 0xff, 0xfc, 0x87, 0xf5, 0x7e, 0x85, 0x37, 0x4a, 0x0f, 0x7a, 0x7f, 0xf6, 0xf6, 0x30, - 0x43, 0x8f, 0xa0, 0xfa, 0x7d, 0x0c, 0x97, 0x9f, 0xda, 0xa6, 0x39, 0xf7, 0xf1, 0x44, 0x08, 0x86, - 0x35, 0x98, 0x61, 0x15, 0x34, 0x8f, 0x16, 0x27, 0x97, 0x6e, 0xd1, 0xfe, 0x0e, 0x66, 0xc2, 0x6d, - 0x30, 0xec, 0xf9, 0x41, 0x0c, 0xb5, 0x4b, 0xb9, 0xb3, 0x85, 0x67, 0xf4, 0x81, 0x36, 0x10, 0xd6, - 0x2f, 0x09, 0x45, 0x4b, 0x58, 0x18, 0x20, 0xec, 0x58, 0xd5, 0x00, 0x67, 0x3a, 0xf3, 0x6e, 0xe7, - 0xb4, 0x87, 0x78, 0x4c, 0xc7, 0xc0, 0x2b, 0x25, 0x8b, 0x70, 0xe9, 0x08, 0x63, 0xa4, 0x3b, 0x31, - 0x70, 0x0b, 0xb3, 0xd6, 0x95, 0x5f, 0xc5, 0xf7, 0x0f, 0xca, 0x19, 0xf6, 0xeb, 0x61, 0xa5, 0x38, - 0x8b, 0x8e, 0x0f, 0x2b, 0x67, 0x45, 0xfc, 0x18, 0x97, 0x36, 0xc1, 0x38, 0x6b, 0xcd, 0x7b, 0xfb, - 0xdc, 0xed, 0xfa, 0xdc, 0x90, 0x45, 0x2c, 0x80, 0x10, 0x22, 0xe3, 0xfa, 0x4c, 0x0b, 0xee, 0x86, - 0x32, 0x12, 0x46, 0xaa, 0x3b, 0xdd, 0x61, 0xb8, 0x42, 0xba, 0x22, 0x6a, 0x2a, 0xa6, 0x8d, 0x4a, - 0xb8, 0x49, 0x14, 0xb8, 0x0a, 0x58, 0x03, 0x6f, 0xe2, 0xf1, 0x1a, 0xc4, 0x2d, 0xc6, 0xc1, 0x59, - 0xbd, 0x02, 0x95, 0x68, 0xf8, 0x2b, 0x67, 0x4f, 0x09, 0x03, 0xf8, 0x09, 0x2e, 0x6f, 0x28, 0x60, - 0xe6, 0x1a, 0x38, 0x8f, 0xa0, 0x05, 0xd7, 0xc0, 0x19, 0xdb, 0x12, 0xfa, 0x9f, 0x1b, 0x54, 0x7d, - 0x81, 0x27, 0xf2, 0x81, 0x38, 0x5b, 0x78, 0x3c, 0xe0, 0x75, 0x3b, 0xd0, 0x6c, 0xab, 0x96, 0x47, - 0x1a, 0xe8, 0x66, 0x4b, 0xfa, 0xac, 0x75, 0x39, 0xd6, 0x72, 0xc0, 0xbb, 0x71, 0xf5, 0x27, 0xc2, - 0x53, 0x3b, 0x86, 0x99, 0x44, 0x8f, 0xbc, 0xb5, 0x99, 0x7c, 0xc8, 0xd6, 0x3e, 0xc3, 0x93, 0xd9, - 0xbd, 0xa8, 0x2b, 0x68, 0xea, 0x4a, 0x71, 0xbe, 0xb4, 0x38, 0xb9, 0x74, 0x73, 0xe8, 0xce, 0xd7, - 0xa0, 0xd9, 0x35, 0xaf, 0x3b, 0x9f, 0xdf, 0xce, 0x0c, 0x54, 0x5a, 0xc3, 0x32, 0x97, 0x68, 0x67, - 0x15, 0x63, 0x2e, 0xa3, 0x86, 0xb0, 0x1f, 0x6d, 0xa5, 0x34, 0x94, 0xb8, 0x91, 0x0b, 0x6c, 0x39, - 0x3d, 0xfa, 0x95, 0xff, 0x8e, 0xd7, 0x66, 0xf1, 0x34, 0x9e, 0xca, 0x2b, 0xa4, 0x89, 0x68, 0xac, - 0x7f, 0x44, 0x47, 0xa7, 0xa4, 0x70, 0x72, 0x4a, 0x0a, 0xe7, 0xa7, 0x04, 0xbd, 0x4b, 0x09, 0xfa, - 0x94, 0x12, 0xf4, 0x2d, 0x25, 0xe8, 0x28, 0x25, 0xe8, 0x24, 0x25, 0xe8, 0x47, 0x4a, 0xd0, 0x59, - 0x4a, 0x0a, 0xe7, 0x29, 0x41, 0x1f, 0x3a, 0xa4, 0xf0, 0xa5, 0x43, 0xd0, 0x51, 0x87, 0x14, 0x4e, - 0x3a, 0xa4, 0xf0, 0xea, 0x65, 0x20, 0xe3, 0x37, 0x01, 0x6d, 0xcb, 0x96, 0x01, 0xa5, 0x18, 0x4d, - 0xb4, 0x67, 0x83, 0xa6, 0x54, 0xa1, 0x1b, 0x2b, 0xd9, 0x16, 0x0d, 0x50, 0x6e, 0x9e, 0xf6, 0x62, - 0x3f, 0x90, 0x1e, 0xec, 0x9b, 0x8b, 0x83, 0x71, 0xd5, 0xa1, 0xf1, 0xcb, 0xf6, 0x84, 0x2c, 0xff, - 0x0e, 0x00, 0x00, 0xff, 0xff, 0xa4, 0x7d, 0x10, 0x97, 0x9a, 0x05, 0x00, 0x00, + // 636 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x31, 0x4f, 0x14, 0x41, + 0x14, 0xc7, 0x6f, 0xb8, 0xcb, 0x41, 0x06, 0x02, 0x64, 0x6d, 0x4e, 0xd4, 0xf1, 0x72, 0x34, 0x14, + 0xee, 0xae, 0x81, 0x58, 0x48, 0x8c, 0x46, 0x30, 0xa1, 0x81, 0x18, 0x0f, 0x0b, 0xb5, 0x39, 0x67, + 0x67, 0xdf, 0x2d, 0x03, 0xb7, 0x3b, 0x9b, 0x99, 0xd9, 0x03, 0x0a, 0x13, 0x63, 0x6f, 0x62, 0x67, + 0x6f, 0x65, 0xfc, 0x00, 0xd6, 0x62, 0x65, 0x49, 0xa8, 0x28, 0x65, 0xaf, 0xb1, 0x93, 0x8f, 0x60, + 0x98, 0x65, 0x91, 0x3b, 0x37, 0x78, 0xd5, 0x75, 0xb3, 0x79, 0xbf, 0xff, 0xff, 0xbd, 0x9d, 0x79, + 0xef, 0xe1, 0xbb, 0x5d, 0x50, 0x0e, 0x17, 0xae, 0x62, 0x5b, 0x10, 0x52, 0xb7, 0xcb, 0x61, 0x57, + 0xb9, 0x0a, 0x58, 0x22, 0x21, 0x04, 0xb5, 0xd5, 0x52, 0x5c, 0x83, 0x2b, 0xbc, 0x6d, 0x60, 0xda, + 0x89, 0xa5, 0xd0, 0xc2, 0x9a, 0xcf, 0x14, 0x4e, 0xa6, 0x70, 0x8c, 0xc2, 0x19, 0x50, 0xcc, 0xd9, + 0x01, 0xd7, 0x5b, 0x89, 0xe7, 0x30, 0x11, 0xba, 0x81, 0x08, 0x84, 0x6b, 0xb4, 0x5e, 0xd2, 0x36, + 0x5f, 0xe6, 0xc3, 0x9c, 0x32, 0xcf, 0xb9, 0x1b, 0xfd, 0x55, 0x88, 0x58, 0x73, 0x11, 0xa9, 0xf3, + 0xe0, 0xf5, 0xfe, 0xa0, 0xde, 0x8f, 0x21, 0x0f, 0x35, 0x06, 0xaa, 0x07, 0x05, 0x51, 0x77, 0x40, + 0x5e, 0xff, 0xf7, 0x0f, 0x5b, 0xfd, 0x84, 0x3b, 0xcc, 0x1d, 0x5c, 0x4e, 0x7b, 0xbb, 0x48, 0x70, + 0x09, 0x68, 0xbc, 0xaf, 0xe2, 0xea, 0x53, 0x73, 0x69, 0xd6, 0x7d, 0x3c, 0x11, 0x82, 0xa6, 0x3e, + 0xd5, 0xb4, 0x86, 0xea, 0x68, 0x61, 0x72, 0xf1, 0x96, 0xd3, 0x7f, 0x83, 0x19, 0xb8, 0x01, 0x9a, + 0x3e, 0xdf, 0x8f, 0xa1, 0x79, 0x81, 0x5b, 0xeb, 0x78, 0x46, 0xed, 0x2b, 0x0d, 0x61, 0xeb, 0xc2, + 0x61, 0xcc, 0x38, 0xcc, 0x0f, 0x38, 0x6c, 0x1a, 0x6a, 0xc0, 0x67, 0x3a, 0xd3, 0x6e, 0xe4, 0x6e, + 0x8f, 0x71, 0x45, 0xc5, 0xc0, 0x6a, 0x65, 0x63, 0x61, 0x3b, 0x43, 0x3c, 0xa3, 0xb3, 0x19, 0x03, + 0x33, 0x66, 0x46, 0xba, 0xfc, 0xb5, 0xf2, 0xee, 0x51, 0x35, 0xb3, 0xfd, 0x7e, 0x50, 0x1b, 0x9b, + 0x45, 0x47, 0x07, 0xb5, 0x4f, 0x15, 0xdc, 0xc1, 0xe5, 0x35, 0xd0, 0x16, 0xb4, 0xef, 0xed, 0x31, + 0xfb, 0x4c, 0x67, 0x87, 0x34, 0xa2, 0x01, 0x84, 0x10, 0x69, 0xdb, 0xa3, 0x8a, 0x33, 0x3b, 0x14, + 0x11, 0xd7, 0x42, 0xde, 0xa9, 0x17, 0x32, 0x4a, 0xd3, 0xc8, 0xa7, 0xd2, 0xff, 0x8b, 0x75, 0x41, + 0xd9, 0x5c, 0xd8, 0x3c, 0x6a, 0x4b, 0xaa, 0xb4, 0x4c, 0x98, 0x4e, 0x24, 0xd8, 0x12, 0xa8, 0x8f, + 0x77, 0xf0, 0x78, 0x13, 0xe2, 0x0e, 0x65, 0x60, 0xbd, 0xbe, 0x22, 0x63, 0xa2, 0xe0, 0xbf, 0xe9, + 0x32, 0xa6, 0x38, 0xd7, 0xae, 0xe4, 0x1a, 0xf0, 0x36, 0xae, 0xae, 0x4a, 0xa0, 0x7a, 0x44, 0xb9, + 0x9e, 0x40, 0x07, 0x46, 0x92, 0x2b, 0xc4, 0x95, 0x75, 0xae, 0x46, 0xf5, 0x66, 0x8d, 0x17, 0x78, + 0x22, 0x6f, 0x25, 0x6b, 0x1d, 0x8f, 0x07, 0xac, 0x65, 0x5a, 0x31, 0x9b, 0x87, 0xa5, 0xa1, 0x5a, + 0x71, 0xad, 0x23, 0x3c, 0xda, 0xb9, 0x68, 0xc8, 0x6a, 0xc0, 0xce, 0xce, 0x8d, 0xdf, 0x08, 0x4f, + 0x6d, 0x6a, 0xaa, 0x13, 0x35, 0xf4, 0xbc, 0x65, 0x78, 0xc1, 0xbc, 0x3d, 0xc3, 0x93, 0xd9, 0xa6, + 0x6b, 0x49, 0x68, 0xab, 0xda, 0x58, 0xbd, 0xbc, 0x30, 0xb9, 0x78, 0xb3, 0x70, 0x5a, 0x9b, 0xd0, + 0x3e, 0x13, 0xaf, 0x58, 0x5f, 0xde, 0xcc, 0x0c, 0x54, 0xda, 0xc4, 0x22, 0x47, 0x94, 0xf5, 0x00, + 0x63, 0x26, 0x22, 0x9f, 0x9b, 0x75, 0x53, 0x2b, 0x17, 0x3a, 0xae, 0xe6, 0x80, 0x29, 0xe7, 0x12, + 0xbf, 0x7c, 0xed, 0xe8, 0xe1, 0x2c, 0x9e, 0xc6, 0x53, 0x79, 0x85, 0x4e, 0xc2, 0xfd, 0x95, 0x8f, + 0xe8, 0xf0, 0x84, 0x94, 0x8e, 0x4f, 0x48, 0xe9, 0xf4, 0x84, 0xa0, 0xb7, 0x29, 0x41, 0x9f, 0x53, + 0x82, 0x7e, 0xa4, 0x04, 0x1d, 0xa6, 0x04, 0x1d, 0xa7, 0x04, 0xfd, 0x4c, 0x09, 0xfa, 0x95, 0x92, + 0xd2, 0x69, 0x4a, 0xd0, 0x87, 0x1e, 0x29, 0x7d, 0xeb, 0x11, 0x74, 0xd8, 0x23, 0xa5, 0xe3, 0x1e, + 0x29, 0xbd, 0x7a, 0x19, 0x88, 0x78, 0x27, 0x70, 0xba, 0xa2, 0xa3, 0x41, 0x4a, 0xea, 0x24, 0xca, + 0x35, 0x87, 0xb6, 0x90, 0xa1, 0x1d, 0x4b, 0xd1, 0xe5, 0x3e, 0x48, 0x3b, 0x0f, 0xbb, 0xb1, 0x17, + 0x08, 0x17, 0xf6, 0xf4, 0xf9, 0xaa, 0xbb, 0x6a, 0x45, 0x7a, 0x55, 0xb3, 0xfc, 0x96, 0xfe, 0x04, + 0x00, 0x00, 0xff, 0xff, 0x7b, 0x56, 0x42, 0x6a, 0x54, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/securemesh_site/pkg.vespkg.go b/pbgo/extschema/schema/views/securemesh_site/pkg.vespkg.go index cf75a547c..1bee29d8f 100644 --- a/pbgo/extschema/schema/views/securemesh_site/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/securemesh_site/pkg.vespkg.go @@ -75,46 +75,46 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.securemesh_site.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.securemesh_site.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -123,86 +123,86 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.securemesh_site.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.securemesh_site.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -227,23 +227,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.securemesh_site.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/securemesh_site/public_crudapi.pb.go b/pbgo/extschema/schema/views/securemesh_site/public_crudapi.pb.go index bd4dac568..a45687608 100644 --- a/pbgo/extschema/schema/views/securemesh_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/securemesh_site/public_crudapi.pb.go @@ -1059,110 +1059,111 @@ func init() { } var fileDescriptor_85bdc998c796f7d1 = []byte{ - // 1637 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x23, 0x49, - 0x15, 0x4e, 0xd9, 0x8e, 0xc7, 0x2e, 0xe7, 0xa7, 0xb7, 0xd8, 0xcd, 0x3a, 0x66, 0x30, 0xc6, 0xb3, - 0x42, 0x51, 0x84, 0xbb, 0x33, 0x99, 0x5d, 0x94, 0xcd, 0xb2, 0x03, 0x4e, 0x62, 0x87, 0xcc, 0x24, - 0x93, 0xa8, 0xed, 0x44, 0x3b, 0x5c, 0x5a, 0xed, 0xf6, 0xb3, 0xd3, 0x8c, 0xdd, 0xdd, 0x74, 0x95, - 0x9d, 0x8d, 0x20, 0xd2, 0x32, 0x9c, 0x38, 0x20, 0x21, 0xb8, 0x01, 0x07, 0x24, 0x84, 0xc4, 0x15, - 0x21, 0x24, 0xa4, 0x5c, 0xe6, 0xc6, 0x6a, 0x0f, 0x68, 0x04, 0x07, 0xe6, 0xb8, 0xe3, 0x70, 0xd8, - 0xbd, 0xa0, 0x11, 0x07, 0xce, 0xa8, 0xab, 0xba, 0x3d, 0xb6, 0xe3, 0x09, 0xb6, 0x37, 0x27, 0x77, - 0xd5, 0xab, 0xef, 0xab, 0xf7, 0xbd, 0x7a, 0xef, 0xb9, 0xba, 0xf1, 0x5a, 0x1b, 0xa8, 0x6c, 0xda, - 0x0a, 0x35, 0x8e, 0xa1, 0xa9, 0x2b, 0x6d, 0x13, 0x4e, 0xa8, 0x42, 0xc1, 0x68, 0xb9, 0xd0, 0x04, - 0x7a, 0xac, 0x51, 0x93, 0x81, 0xe2, 0xb4, 0x2a, 0x0d, 0xd3, 0xd0, 0x0c, 0xb7, 0x55, 0xd5, 0x1d, - 0x53, 0x76, 0x5c, 0x9b, 0xd9, 0xe4, 0x96, 0x40, 0xca, 0x02, 0x29, 0x73, 0xa4, 0x3c, 0x80, 0x4c, - 0xe5, 0xea, 0x26, 0x3b, 0x6e, 0x55, 0x64, 0xc3, 0x6e, 0x2a, 0x75, 0xbb, 0x6e, 0x2b, 0x1c, 0x5b, - 0x69, 0xd5, 0xf8, 0x88, 0x0f, 0xf8, 0x93, 0xe0, 0x4c, 0xdd, 0xac, 0xdb, 0x76, 0xbd, 0x01, 0x8a, - 0xee, 0x98, 0x8a, 0x6e, 0x59, 0x36, 0xd3, 0x99, 0x69, 0x5b, 0xd4, 0xb7, 0x7e, 0xd9, 0xb7, 0x76, - 0x39, 0xa0, 0xe9, 0xb0, 0x53, 0xdf, 0x98, 0xea, 0x17, 0x02, 0xae, 0x6b, 0xbb, 0x5d, 0x60, 0xbf, - 0xcd, 0x76, 0x7a, 0x59, 0x17, 0xfb, 0x8d, 0xec, 0xd4, 0x81, 0xc0, 0x94, 0x1d, 0x08, 0x0e, 0x50, - 0xb0, 0xda, 0x03, 0xf0, 0xcc, 0xe5, 0x00, 0x6a, 0xfd, 0x2b, 0x56, 0x46, 0x09, 0xb1, 0x5d, 0xf9, - 0x3e, 0x18, 0xcc, 0x47, 0x28, 0xa3, 0x20, 0x7a, 0x1d, 0xfd, 0xea, 0x30, 0x40, 0xcf, 0x82, 0xec, - 0x9f, 0x11, 0x9e, 0xdd, 0x74, 0x41, 0x67, 0xa0, 0xc2, 0x0f, 0x5a, 0x40, 0x19, 0xf9, 0x36, 0x8e, - 0x35, 0x81, 0xe9, 0x55, 0x9d, 0xe9, 0x49, 0x94, 0x41, 0x4b, 0x89, 0xd5, 0x5b, 0x72, 0xff, 0x89, - 0xee, 0x73, 0x97, 0x04, 0x6a, 0x0f, 0x98, 0x5e, 0x3e, 0x75, 0x40, 0xed, 0x82, 0xc8, 0x07, 0x38, - 0x42, 0x1d, 0x30, 0x92, 0x21, 0x0e, 0xbe, 0x23, 0x8f, 0x90, 0x0e, 0xb2, 0x20, 0x2b, 0x39, 0x60, - 0x78, 0x64, 0x1b, 0xf3, 0xbf, 0x3a, 0x9b, 0xf1, 0x38, 0xe4, 0xba, 0xa1, 0x79, 0xbf, 0x2a, 0x67, - 0x5c, 0x8f, 0x7f, 0x72, 0x37, 0x2a, 0x36, 0xcf, 0xfe, 0x38, 0x84, 0xe7, 0x02, 0xbf, 0xa9, 0x63, - 0x5b, 0x14, 0xc8, 0xb7, 0x2e, 0x39, 0x9e, 0x19, 0xea, 0xf8, 0x36, 0xb0, 0x21, 0x5e, 0xef, 0xe3, - 0x79, 0x7a, 0x4a, 0x19, 0x34, 0xb5, 0x2e, 0x49, 0x98, 0x93, 0x7c, 0x7d, 0x80, 0xa4, 0xc4, 0x57, - 0x5d, 0xa6, 0x9a, 0x13, 0xf0, 0xbd, 0x80, 0xf0, 0xb0, 0x2f, 0x0c, 0x2b, 0x23, 0x85, 0x61, 0x1b, - 0xd8, 0x18, 0x31, 0xf8, 0x1c, 0xe1, 0x39, 0x15, 0x9c, 0x86, 0x6e, 0x74, 0x0f, 0xef, 0x3b, 0x97, - 0x62, 0xf0, 0xd6, 0xd0, 0x18, 0xf8, 0xb0, 0x21, 0x71, 0x78, 0xd8, 0xe7, 0xf6, 0xdb, 0x23, 0xb9, - 0xed, 0xb3, 0xfd, 0x1f, 0xd7, 0x89, 0x82, 0x25, 0x17, 0xa8, 0xdd, 0x72, 0x0d, 0xd0, 0xda, 0xe0, - 0x52, 0xd3, 0xb6, 0x78, 0x8c, 0xe3, 0x1b, 0x91, 0xcf, 0xce, 0x11, 0x52, 0xe7, 0x03, 0xeb, 0x91, - 0x30, 0xf6, 0x6a, 0x7d, 0x0d, 0xcf, 0x77, 0xa5, 0x8a, 0xf3, 0xce, 0xfe, 0x0e, 0x61, 0xbc, 0x0d, - 0x2c, 0x90, 0x7e, 0x13, 0xc7, 0x2d, 0xbd, 0x09, 0xd4, 0xd1, 0x0d, 0xe0, 0xda, 0xe3, 0xea, 0xcb, - 0x09, 0x42, 0x70, 0xc4, 0x1b, 0x70, 0x59, 0x71, 0x95, 0x3f, 0x13, 0x03, 0x7b, 0x3b, 0x72, 0x32, - 0xad, 0x66, 0xbb, 0x4d, 0x9d, 0x71, 0x77, 0xe6, 0x56, 0xd7, 0x47, 0x3d, 0xac, 0xc0, 0x97, 0x22, - 0x47, 0x6f, 0xda, 0x55, 0x50, 0xe7, 0xdc, 0xbe, 0xb9, 0xec, 0x1f, 0xa3, 0x38, 0xd1, 0xb3, 0x92, - 0x94, 0x70, 0xc2, 0xe0, 0x79, 0xcb, 0xb7, 0xf4, 0xc3, 0xbc, 0x3a, 0x46, 0x91, 0xf8, 0x7a, 0x55, - 0x2c, 0x68, 0xbc, 0x6d, 0xc8, 0x11, 0x9e, 0x71, 0x45, 0x74, 0x04, 0x6b, 0x78, 0x8c, 0xd2, 0xeb, - 0xcf, 0x20, 0x35, 0xe1, 0x13, 0x71, 0xde, 0x61, 0x27, 0x16, 0xb9, 0xe2, 0xc4, 0xfa, 0x6a, 0x70, - 0xfa, 0x3a, 0x6a, 0xf0, 0xc6, 0xb5, 0xd4, 0x60, 0xf4, 0x5a, 0x6b, 0x90, 0x1c, 0xe0, 0x28, 0x65, - 0x3a, 0x6b, 0xd1, 0xe4, 0x6f, 0x7f, 0x83, 0x32, 0xe1, 0xa5, 0xc4, 0xea, 0xed, 0x91, 0xa8, 0x4b, - 0x1c, 0x24, 0xdc, 0xde, 0x08, 0x3f, 0x39, 0x43, 0xaa, 0xcf, 0x43, 0x76, 0xf0, 0x6b, 0x2e, 0xd4, - 0xc0, 0x75, 0x4d, 0xab, 0xae, 0x89, 0x96, 0x4f, 0x93, 0x31, 0x4e, 0x7d, 0xf3, 0x15, 0x05, 0x5c, - 0xe3, 0x8a, 0xa5, 0x2e, 0x4c, 0xcc, 0x53, 0x72, 0x84, 0x93, 0x55, 0x68, 0x00, 0x83, 0xaa, 0x26, - 0x6c, 0x50, 0xed, 0x32, 0xc6, 0x47, 0x60, 0x5c, 0xf0, 0xd1, 0xaa, 0x0f, 0x0e, 0x78, 0x3f, 0xc0, - 0x8b, 0x55, 0x93, 0xea, 0x95, 0xc6, 0x30, 0x62, 0x3c, 0x02, 0xf1, 0x9b, 0x01, 0x7c, 0x80, 0xb9, - 0xa7, 0xcc, 0xef, 0x45, 0x62, 0x48, 0x0a, 0x65, 0x7f, 0x8f, 0x70, 0x62, 0xd7, 0xa4, 0x23, 0x96, - 0xf6, 0xd7, 0xf0, 0x4c, 0x43, 0xaf, 0x40, 0x43, 0xab, 0x99, 0x0d, 0x06, 0xae, 0x5f, 0xe2, 0x09, - 0x3e, 0x57, 0xe4, 0x53, 0xe4, 0x16, 0x9e, 0x75, 0xc1, 0xb1, 0x5d, 0xa6, 0xd5, 0x4c, 0x68, 0x54, - 0x69, 0x32, 0x9c, 0x09, 0x2f, 0xc5, 0xd5, 0x19, 0x31, 0x59, 0xe4, 0x73, 0x64, 0x05, 0xbf, 0xee, - 0x2f, 0x12, 0x87, 0x12, 0xac, 0x8d, 0xf0, 0xb5, 0x44, 0xd8, 0xc4, 0x11, 0x0a, 0x44, 0xf6, 0xd3, - 0x28, 0x96, 0x84, 0x9f, 0xa2, 0xb8, 0x77, 0x18, 0x34, 0xc9, 0x02, 0x8e, 0x32, 0xb0, 0x74, 0x8b, - 0xf1, 0xac, 0x8b, 0xab, 0xfe, 0x68, 0x82, 0xfe, 0x24, 0xe1, 0x70, 0xcb, 0xac, 0x8a, 0x16, 0xa9, - 0x7a, 0x8f, 0x24, 0x83, 0x13, 0x55, 0xa0, 0x86, 0x6b, 0xf2, 0x7b, 0x44, 0x32, 0x21, 0x94, 0xf6, - 0x4c, 0x91, 0x14, 0x8e, 0x05, 0x61, 0x4e, 0xce, 0x64, 0xd0, 0x52, 0x4c, 0xed, 0x8e, 0xc9, 0x43, - 0x1c, 0xe5, 0x41, 0x11, 0x92, 0x12, 0xab, 0xf9, 0x91, 0x92, 0x76, 0x50, 0xa0, 0xbc, 0xcb, 0x39, - 0x0a, 0x16, 0x73, 0x4f, 0x55, 0x9f, 0x90, 0x1c, 0xe3, 0x44, 0xcf, 0xb5, 0xcc, 0x4f, 0x87, 0xe2, - 0x64, 0xfc, 0xf9, 0x97, 0x44, 0x62, 0x93, 0x5e, 0x6a, 0xf2, 0x2e, 0xc6, 0xf6, 0x89, 0x05, 0xae, - 0xe6, 0xb1, 0x25, 0xe3, 0xbc, 0xb0, 0x53, 0x03, 0x1b, 0x1d, 0x99, 0x70, 0x12, 0x64, 0x5d, 0x9c, - 0xaf, 0xf6, 0x66, 0xfa, 0x9a, 0xd3, 0xec, 0x75, 0x34, 0xa7, 0xb9, 0x2f, 0xd4, 0x9c, 0xee, 0xe3, - 0x58, 0x1d, 0x18, 0xef, 0x2b, 0x7e, 0x9b, 0x1b, 0xbb, 0x41, 0xa9, 0x37, 0xea, 0x62, 0x40, 0x0e, - 0x31, 0xf6, 0xb3, 0x96, 0x02, 0xf3, 0x3b, 0xc7, 0xa4, 0x4d, 0x29, 0x2e, 0x98, 0x4a, 0xc0, 0x52, - 0xef, 0xe2, 0x44, 0xcf, 0x71, 0x7b, 0x19, 0xf9, 0x08, 0x4e, 0xfd, 0xec, 0xf5, 0x1e, 0xc9, 0xeb, - 0x78, 0xba, 0xad, 0x37, 0x5a, 0x41, 0xe2, 0x8a, 0xc1, 0x7a, 0x68, 0x0d, 0xa5, 0xee, 0x62, 0x69, - 0xf0, 0x24, 0xc7, 0xc1, 0xdf, 0x8b, 0xc4, 0xa6, 0xa5, 0x68, 0xf6, 0x67, 0x08, 0xcf, 0xf4, 0x66, - 0x08, 0xb9, 0x8f, 0xa7, 0x4d, 0x06, 0x4d, 0x9a, 0x14, 0x8d, 0xf7, 0x9d, 0x89, 0x72, 0x4c, 0x15, - 0x1c, 0x64, 0x05, 0x47, 0xc5, 0xfb, 0x40, 0x32, 0xc4, 0xd9, 0x92, 0x03, 0x6c, 0x05, 0xcf, 0xc8, - 0x03, 0xed, 0xaf, 0xcb, 0x3e, 0xc2, 0xb3, 0x5b, 0xbc, 0x3f, 0x4e, 0x7e, 0xed, 0x58, 0xc2, 0x52, - 0x4d, 0x37, 0x1b, 0x9a, 0x59, 0xeb, 0xf6, 0x51, 0x5e, 0xe3, 0x31, 0x75, 0xce, 0x9b, 0xdf, 0xa9, - 0x05, 0xfd, 0x71, 0xf9, 0x3f, 0x08, 0xbf, 0x31, 0xf4, 0x96, 0x41, 0x52, 0x78, 0x61, 0xbb, 0x50, - 0xd6, 0xd4, 0xd2, 0x81, 0x56, 0xdc, 0x57, 0xf7, 0xf2, 0x65, 0x6d, 0xab, 0x50, 0xcc, 0x1f, 0xee, - 0x96, 0xa5, 0x29, 0xf2, 0x15, 0xbc, 0x38, 0x60, 0x2b, 0xee, 0xab, 0xda, 0xa6, 0x5a, 0xc8, 0x97, - 0x0b, 0x12, 0x22, 0x69, 0x9c, 0x1a, 0x62, 0x56, 0x0b, 0x07, 0xbb, 0xf9, 0xcd, 0x82, 0x14, 0x22, - 0x8b, 0xf8, 0x8d, 0x01, 0x7b, 0xa9, 0x9c, 0x2f, 0x1f, 0x96, 0xa4, 0x30, 0x79, 0x13, 0x7f, 0x69, - 0xc0, 0xa4, 0x16, 0xf2, 0x5b, 0x52, 0x84, 0xbc, 0x85, 0x33, 0x97, 0x0c, 0xc5, 0x82, 0xaa, 0xee, - 0x3c, 0xd8, 0xd6, 0xf6, 0x37, 0xee, 0x15, 0x36, 0xcb, 0x25, 0x69, 0x7a, 0xc8, 0xaa, 0x0d, 0x75, - 0xff, 0x7e, 0xe1, 0x81, 0x58, 0x5c, 0x78, 0xb0, 0x59, 0x28, 0x49, 0xd1, 0xd5, 0x3f, 0x61, 0x1c, - 0xce, 0x1f, 0xec, 0x90, 0xff, 0x22, 0x1c, 0x15, 0x37, 0x1e, 0x32, 0xc1, 0xf5, 0x28, 0x75, 0x67, - 0x2c, 0x8c, 0x7f, 0xa5, 0x7c, 0x8c, 0x3a, 0x7f, 0x4d, 0xbe, 0x57, 0x7b, 0xe7, 0x43, 0x23, 0xe7, - 0x99, 0x73, 0x4d, 0xdd, 0xd2, 0xeb, 0xd0, 0x04, 0x8b, 0xe5, 0x2a, 0x3a, 0x35, 0x8d, 0x5c, 0x8b, - 0x82, 0xfb, 0x8d, 0x36, 0xd0, 0x9c, 0x69, 0xe7, 0x4c, 0xab, 0xe6, 0xea, 0x94, 0xb9, 0x2d, 0x83, - 0xb5, 0x5c, 0xc8, 0x9d, 0xb8, 0x26, 0x83, 0xc7, 0xff, 0xf8, 0xd7, 0x2f, 0x43, 0xef, 0x67, 0xd7, - 0xfc, 0x37, 0x63, 0xa5, 0x9b, 0x09, 0x54, 0xf9, 0x61, 0xd0, 0x36, 0xe4, 0xee, 0xe4, 0xd9, 0xe0, - 0xbb, 0x1b, 0x5d, 0x47, 0xcb, 0xe4, 0xdf, 0x08, 0x87, 0xb7, 0x81, 0x11, 0x65, 0xf4, 0x5b, 0xa8, - 0x90, 0xbc, 0x32, 0xee, 0xb5, 0x35, 0xfb, 0x13, 0xf4, 0xf1, 0x5f, 0x42, 0x9e, 0xe6, 0xf7, 0xaf, - 0xd0, 0xdc, 0xb4, 0x2d, 0x93, 0xd9, 0xaf, 0x92, 0xed, 0x82, 0x5e, 0xe5, 0xaa, 0xd7, 0xc8, 0x37, - 0x87, 0xa9, 0xbe, 0x42, 0xac, 0x30, 0x9e, 0x91, 0xcf, 0x11, 0x8e, 0x78, 0x15, 0x4a, 0x56, 0xc6, - 0x28, 0x66, 0x21, 0xf9, 0xf6, 0xd8, 0xe5, 0x9f, 0xfd, 0xd1, 0xf5, 0x49, 0xbe, 0x4d, 0x94, 0x31, - 0x25, 0x93, 0x9f, 0x86, 0xf0, 0x0d, 0xff, 0xc6, 0x4d, 0x26, 0xb9, 0x9f, 0xa7, 0xde, 0x1e, 0x0f, - 0xe4, 0x8b, 0xfe, 0xc5, 0xb5, 0x24, 0xf6, 0x5e, 0xea, 0xbb, 0x93, 0x26, 0xf6, 0xc0, 0xaa, 0x33, - 0x2f, 0xd1, 0xff, 0x89, 0x70, 0x54, 0x34, 0xd3, 0x11, 0x2b, 0xbc, 0xaf, 0xf3, 0xa6, 0x16, 0x64, - 0xf1, 0xd9, 0x47, 0x0e, 0x3e, 0xfb, 0xc8, 0x85, 0xa6, 0xc3, 0x4e, 0xb3, 0x1f, 0x5d, 0x8b, 0xd6, - 0xf7, 0x96, 0x27, 0x4c, 0xe7, 0x75, 0xb4, 0x9c, 0x72, 0x9e, 0x9c, 0xa3, 0xd0, 0xdf, 0xcf, 0xd1, - 0xf2, 0x28, 0xaa, 0xc4, 0x5f, 0xef, 0xb3, 0x73, 0x84, 0x3a, 0xe7, 0x68, 0x65, 0xdc, 0xbf, 0xec, - 0xc7, 0x7f, 0x4b, 0x86, 0x24, 0xb4, 0xf1, 0x6b, 0xf4, 0xc9, 0xdd, 0xe9, 0x4d, 0xf5, 0x70, 0x6b, - 0xf7, 0xe9, 0xf3, 0xf4, 0xd4, 0xb3, 0xe7, 0xe9, 0xa9, 0x17, 0xcf, 0xd3, 0xe8, 0xa3, 0x4e, 0x1a, - 0xfd, 0xa1, 0x93, 0x46, 0x1f, 0x77, 0xd2, 0xe8, 0x69, 0x27, 0x8d, 0x3e, 0xed, 0xa4, 0xd1, 0x67, - 0x9d, 0xf4, 0xd4, 0x8b, 0x4e, 0x1a, 0xfd, 0xfc, 0x22, 0x3d, 0xf5, 0xe4, 0x22, 0x8d, 0x9e, 0x5e, - 0xa4, 0xa7, 0x9e, 0x5d, 0xa4, 0xa7, 0xbe, 0xf7, 0xb0, 0x6e, 0x3b, 0x8f, 0xea, 0x72, 0xdb, 0xf6, - 0xae, 0xcc, 0xae, 0x2e, 0xb7, 0xa8, 0xc2, 0x1f, 0xbc, 0x37, 0xca, 0x9c, 0xe3, 0xda, 0x6d, 0xb3, - 0x0a, 0x6e, 0x2e, 0x30, 0x2b, 0x4e, 0xa5, 0x6e, 0x2b, 0xf0, 0x21, 0xf3, 0x3f, 0x2d, 0x5d, 0xf5, - 0x49, 0xaa, 0x12, 0xe5, 0x47, 0x74, 0xe7, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xb2, 0xba, 0x3f, - 0x73, 0x55, 0x14, 0x00, 0x00, + // 1655 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0x65, 0x79, 0x33, 0x4d, 0x1c, 0x9a, 0x75, 0x59, 0x96, 0x0e, + 0x0a, 0x41, 0x28, 0x77, 0x65, 0x39, 0x29, 0x1c, 0xb5, 0x75, 0x4b, 0xc9, 0xa4, 0x2a, 0x5b, 0xb6, + 0x84, 0x25, 0x25, 0xc4, 0x3d, 0x74, 0xb1, 0x5c, 0x3e, 0x52, 0x5b, 0x93, 0xbb, 0xdb, 0x99, 0x21, + 0x15, 0xa1, 0x10, 0xd0, 0xe6, 0x5e, 0x20, 0x40, 0x7b, 0xe9, 0xcf, 0xa1, 0x68, 0x10, 0xa0, 0x05, + 0x7a, 0xe9, 0x21, 0x40, 0x01, 0x5d, 0x7c, 0x6b, 0x90, 0x43, 0x61, 0xb4, 0x17, 0x1f, 0x63, 0xaa, + 0x87, 0xe4, 0x16, 0xf4, 0xd8, 0x53, 0xb1, 0x33, 0xbb, 0x0c, 0x49, 0xb1, 0x0a, 0xc9, 0x08, 0x3e, + 0x69, 0x67, 0xde, 0xfb, 0xbe, 0x7d, 0xf3, 0xcd, 0x7b, 0x4f, 0x6f, 0x89, 0x6f, 0x77, 0x81, 0xa9, + 0xb6, 0xab, 0x31, 0xeb, 0x00, 0xda, 0xa6, 0xd6, 0xb5, 0xe1, 0x90, 0x69, 0x0c, 0xac, 0x0e, 0x85, + 0x36, 0xb0, 0x03, 0x83, 0xd9, 0x1c, 0x34, 0xaf, 0x53, 0x6b, 0xd9, 0x96, 0x61, 0xd1, 0x4e, 0xdd, + 0xf4, 0x6c, 0xd5, 0xa3, 0x2e, 0x77, 0xc9, 0x0d, 0x89, 0x54, 0x25, 0x52, 0x15, 0x48, 0x75, 0x04, + 0x99, 0x29, 0x34, 0x6d, 0x7e, 0xd0, 0xa9, 0xa9, 0x96, 0xdb, 0xd6, 0x9a, 0x6e, 0xd3, 0xd5, 0x04, + 0xb6, 0xd6, 0x69, 0x88, 0x95, 0x58, 0x88, 0x27, 0xc9, 0x99, 0xb9, 0xde, 0x74, 0xdd, 0x66, 0x0b, + 0x34, 0xd3, 0xb3, 0x35, 0xd3, 0x71, 0x5c, 0x6e, 0x72, 0xdb, 0x75, 0x58, 0x60, 0xfd, 0x6a, 0x60, + 0xed, 0x73, 0x40, 0xdb, 0xe3, 0x47, 0x81, 0x31, 0x33, 0x7c, 0x10, 0xa0, 0xd4, 0xa5, 0x7d, 0xe0, + 0xb0, 0xcd, 0xf5, 0x06, 0x59, 0xaf, 0x0d, 0x1b, 0xf9, 0x91, 0x07, 0xa1, 0x29, 0x3f, 0x22, 0x0e, + 0x30, 0x70, 0xba, 0x23, 0xf0, 0xdc, 0x59, 0x01, 0x8d, 0x61, 0x8f, 0x95, 0x49, 0x24, 0x76, 0x6b, + 0x3f, 0x01, 0x8b, 0x07, 0x08, 0x6d, 0x12, 0xc4, 0x60, 0xa0, 0x5f, 0x1f, 0x07, 0x18, 0x70, 0xc8, + 0x7f, 0x80, 0xf0, 0xe5, 0x0d, 0x0a, 0x26, 0x07, 0x1d, 0x7e, 0xda, 0x01, 0xc6, 0xc9, 0xf7, 0x71, + 0xa2, 0x0d, 0xdc, 0xac, 0x9b, 0xdc, 0x4c, 0xa3, 0x1c, 0x5a, 0x4a, 0xad, 0xde, 0x50, 0x87, 0x6f, + 0x74, 0x47, 0x84, 0x24, 0x51, 0x0f, 0x80, 0x9b, 0xd5, 0x23, 0x0f, 0xf4, 0x3e, 0x88, 0xbc, 0x85, + 0x63, 0xcc, 0x03, 0x2b, 0x1d, 0x11, 0xe0, 0x5b, 0xea, 0x04, 0xe9, 0xa0, 0x4a, 0xb2, 0x8a, 0x07, + 0x96, 0x4f, 0xb6, 0x7e, 0xe5, 0xb7, 0xc7, 0x0b, 0x3e, 0x87, 0xda, 0xb4, 0x0c, 0xff, 0xaf, 0x2e, + 0x18, 0xd7, 0x92, 0x1f, 0xdd, 0x89, 0xcb, 0x97, 0xe7, 0x7f, 0x11, 0xc1, 0x8b, 0x61, 0xdc, 0xcc, + 0x73, 0x1d, 0x06, 0xe4, 0xbb, 0x67, 0x02, 0xcf, 0x8d, 0x0d, 0x7c, 0x13, 0xf8, 0x98, 0xa8, 0x77, + 0xf0, 0x15, 0x76, 0xc4, 0x38, 0xb4, 0x8d, 0x3e, 0x49, 0x54, 0x90, 0x7c, 0x73, 0x84, 0xa4, 0x22, + 0xbc, 0xce, 0x52, 0x2d, 0x4a, 0xf8, 0x83, 0x90, 0x70, 0x6f, 0x48, 0x86, 0x95, 0x89, 0x64, 0xd8, + 0x04, 0x3e, 0x85, 0x06, 0x9f, 0x22, 0xbc, 0xa8, 0x83, 0xd7, 0x32, 0xad, 0xfe, 0xe5, 0xfd, 0xe0, + 0x8c, 0x06, 0xaf, 0x8d, 0xd5, 0x20, 0x80, 0x8d, 0xd1, 0xe1, 0xd1, 0x50, 0xd8, 0xaf, 0x4f, 0x14, + 0x76, 0xc0, 0xf6, 0x05, 0xa1, 0x13, 0x0d, 0x2b, 0x14, 0x98, 0xdb, 0xa1, 0x16, 0x18, 0x5d, 0xa0, + 0xcc, 0x76, 0x1d, 0xa1, 0x71, 0x72, 0x3d, 0xf6, 0xc9, 0x09, 0x42, 0xfa, 0x95, 0xd0, 0xba, 0x2f, + 0x8d, 0x83, 0x67, 0x7d, 0x09, 0x5f, 0xe9, 0x1f, 0x55, 0xde, 0x77, 0xfe, 0x3d, 0x84, 0xf1, 0x26, + 0xf0, 0xf0, 0xe8, 0xd7, 0x71, 0xd2, 0x31, 0xdb, 0xc0, 0x3c, 0xd3, 0x02, 0x71, 0xf6, 0xa4, 0xfe, + 0xf9, 0x06, 0x21, 0x38, 0xe6, 0x2f, 0xc4, 0xb1, 0x92, 0xba, 0x78, 0x26, 0x16, 0xf6, 0xdf, 0x28, + 0xc8, 0x8c, 0x86, 0x4b, 0xdb, 0x26, 0x17, 0xe1, 0x2c, 0xae, 0xae, 0x4d, 0x7a, 0x59, 0x61, 0x2c, + 0x65, 0x81, 0xde, 0x70, 0xeb, 0xa0, 0x2f, 0xd2, 0xa1, 0xbd, 0xfc, 0x5f, 0xe3, 0x38, 0x35, 0xe0, + 0x49, 0x2a, 0x38, 0x65, 0x89, 0xbc, 0x15, 0xaf, 0x0c, 0x64, 0x5e, 0x9d, 0xa2, 0x48, 0x82, 0xf3, + 0xea, 0x58, 0xd2, 0xf8, 0xaf, 0x21, 0xfb, 0x78, 0x81, 0x4a, 0x75, 0x24, 0x6b, 0x74, 0x8a, 0xd2, + 0x1b, 0xce, 0x20, 0x3d, 0x15, 0x10, 0x09, 0xde, 0x71, 0x37, 0x16, 0x3b, 0xe7, 0xc6, 0x86, 0x6a, + 0x70, 0xfe, 0x22, 0x6a, 0xf0, 0xd2, 0x85, 0xd4, 0x60, 0xfc, 0x42, 0x6b, 0x90, 0xec, 0xe2, 0x38, + 0xe3, 0x26, 0xef, 0xb0, 0xf4, 0x1f, 0x7e, 0x8f, 0x72, 0xd1, 0xa5, 0xd4, 0xea, 0xcd, 0x89, 0xa8, + 0x2b, 0x02, 0x24, 0xc3, 0x5e, 0x8f, 0x3e, 0x39, 0x46, 0x7a, 0xc0, 0x43, 0xb6, 0xf0, 0x4b, 0x14, + 0x1a, 0x40, 0xa9, 0xed, 0x34, 0x0d, 0xd9, 0xf2, 0x59, 0x3a, 0x21, 0xa8, 0xaf, 0xff, 0x9f, 0x02, + 0x6e, 0x88, 0x13, 0x2b, 0x7d, 0x98, 0xdc, 0x67, 0x64, 0x1f, 0xa7, 0xeb, 0xd0, 0x02, 0x0e, 0x75, + 0x43, 0xda, 0xa0, 0xde, 0x67, 0x4c, 0x4e, 0xc0, 0x78, 0x35, 0x40, 0xeb, 0x01, 0x38, 0xe4, 0x7d, + 0x0b, 0x5f, 0xab, 0xdb, 0xcc, 0xac, 0xb5, 0xc6, 0x11, 0xe3, 0x09, 0x88, 0x5f, 0x0d, 0xe1, 0x23, + 0xcc, 0x03, 0x65, 0x7e, 0x2f, 0x96, 0x40, 0x4a, 0x24, 0xff, 0x3e, 0xc2, 0xa9, 0x6d, 0x9b, 0x4d, + 0x58, 0xda, 0xdf, 0xc0, 0x0b, 0x2d, 0xb3, 0x06, 0x2d, 0xa3, 0x61, 0xb7, 0x38, 0xd0, 0xa0, 0xc4, + 0x53, 0x62, 0xaf, 0x2c, 0xb6, 0xc8, 0x0d, 0x7c, 0x99, 0x82, 0xe7, 0x52, 0x6e, 0x34, 0x6c, 0x68, + 0xd5, 0x59, 0x3a, 0x9a, 0x8b, 0x2e, 0x25, 0xf5, 0x05, 0xb9, 0x59, 0x16, 0x7b, 0x64, 0x05, 0xbf, + 0x1c, 0x38, 0xc9, 0x4b, 0x09, 0x7d, 0x63, 0xc2, 0x97, 0x48, 0x9b, 0xbc, 0x42, 0x89, 0xc8, 0x7f, + 0x1c, 0xc7, 0x8a, 0x8c, 0x53, 0x16, 0xf7, 0x16, 0x87, 0x36, 0xb9, 0x8a, 0xe3, 0x1c, 0x1c, 0xd3, + 0xe1, 0x22, 0xeb, 0x92, 0x7a, 0xb0, 0x9a, 0xa1, 0x3f, 0x29, 0x38, 0xda, 0xb1, 0xeb, 0xb2, 0x45, + 0xea, 0xfe, 0x23, 0xc9, 0xe1, 0x54, 0x1d, 0x98, 0x45, 0x6d, 0x31, 0x47, 0xa4, 0x53, 0xf2, 0xa4, + 0x03, 0x5b, 0x24, 0x83, 0x13, 0xa1, 0xcc, 0xe9, 0x85, 0x1c, 0x5a, 0x4a, 0xe8, 0xfd, 0x35, 0x79, + 0x84, 0xe3, 0x42, 0x14, 0x79, 0xa4, 0xd4, 0x6a, 0x71, 0xa2, 0xa4, 0x1d, 0x3d, 0xa0, 0xba, 0x2d, + 0x38, 0x4a, 0x0e, 0xa7, 0x47, 0x7a, 0x40, 0x48, 0x0e, 0x70, 0x6a, 0x60, 0x2c, 0x0b, 0xd2, 0xa1, + 0x3c, 0x1b, 0x7f, 0xf1, 0x73, 0x22, 0xf9, 0x92, 0x41, 0x6a, 0xf2, 0x26, 0xc6, 0xee, 0xa1, 0x03, + 0xd4, 0xf0, 0xd9, 0xd2, 0x49, 0x51, 0xd8, 0x99, 0x91, 0x17, 0xed, 0xdb, 0x70, 0x18, 0x66, 0x5d, + 0x52, 0x78, 0xfb, 0x3b, 0x43, 0xcd, 0xe9, 0xf2, 0x45, 0x34, 0xa7, 0xc5, 0x2f, 0xd5, 0x9c, 0xee, + 0xe3, 0x44, 0x13, 0xb8, 0xe8, 0x2b, 0x41, 0x9b, 0x9b, 0xba, 0x41, 0xe9, 0x97, 0x9a, 0x72, 0x41, + 0xf6, 0x30, 0x0e, 0xb2, 0x96, 0x01, 0x0f, 0x3a, 0xc7, 0xac, 0x4d, 0x29, 0x29, 0x99, 0x2a, 0xc0, + 0x33, 0x6f, 0xe2, 0xd4, 0xc0, 0x75, 0xfb, 0x19, 0xf9, 0x18, 0x8e, 0x82, 0xec, 0xf5, 0x1f, 0xc9, + 0xcb, 0x78, 0xbe, 0x6b, 0xb6, 0x3a, 0x61, 0xe2, 0xca, 0xc5, 0x5a, 0xe4, 0x36, 0xca, 0xdc, 0xc1, + 0xca, 0xe8, 0x4d, 0x4e, 0x83, 0xbf, 0x17, 0x4b, 0xcc, 0x2b, 0xf1, 0xfc, 0x2f, 0x11, 0x5e, 0x18, + 0xcc, 0x10, 0x72, 0x1f, 0xcf, 0xdb, 0x1c, 0xda, 0x2c, 0x2d, 0x1b, 0xef, 0x1b, 0x33, 0xe5, 0x98, + 0x2e, 0x39, 0xc8, 0x0a, 0x8e, 0xcb, 0xef, 0x81, 0x74, 0x44, 0xb0, 0xa5, 0x47, 0xd8, 0x4a, 0xbe, + 0x51, 0x08, 0x1d, 0xf8, 0xe5, 0x1f, 0xe3, 0xcb, 0x77, 0x45, 0x7f, 0x9c, 0x7d, 0xec, 0x58, 0xc2, + 0x4a, 0xc3, 0xb4, 0x5b, 0x86, 0xdd, 0xe8, 0xf7, 0x51, 0x51, 0xe3, 0x09, 0x7d, 0xd1, 0xdf, 0xdf, + 0x6a, 0x84, 0xfd, 0x71, 0xf9, 0x3f, 0x08, 0xbf, 0x32, 0x76, 0xca, 0x20, 0x19, 0x7c, 0x75, 0xb3, + 0x54, 0x35, 0xf4, 0xca, 0xae, 0x51, 0xde, 0xd1, 0x1f, 0x14, 0xab, 0xc6, 0xdd, 0x52, 0xb9, 0xb8, + 0xb7, 0x5d, 0x55, 0xe6, 0xc8, 0xd7, 0xf0, 0xb5, 0x11, 0x5b, 0x79, 0x47, 0x37, 0x36, 0xf4, 0x52, + 0xb1, 0x5a, 0x52, 0x10, 0xc9, 0xe2, 0xcc, 0x18, 0xb3, 0x5e, 0xda, 0xdd, 0x2e, 0x6e, 0x94, 0x94, + 0x08, 0xb9, 0x86, 0x5f, 0x19, 0xb1, 0x57, 0xaa, 0xc5, 0xea, 0x5e, 0x45, 0x89, 0x92, 0x57, 0xf1, + 0x57, 0x46, 0x4c, 0x7a, 0xa9, 0x78, 0x57, 0x89, 0x91, 0xd7, 0x70, 0xee, 0x8c, 0xa1, 0x5c, 0xd2, + 0xf5, 0xad, 0x87, 0x9b, 0xc6, 0xce, 0xfa, 0xbd, 0xd2, 0x46, 0xb5, 0xa2, 0xcc, 0x8f, 0xf1, 0x5a, + 0xd7, 0x77, 0xee, 0x97, 0x1e, 0x4a, 0xe7, 0xd2, 0xc3, 0x8d, 0x52, 0x45, 0x89, 0xaf, 0x7e, 0x9a, + 0xc2, 0xd1, 0xe2, 0xee, 0x16, 0xf9, 0x4d, 0x04, 0xc7, 0xe5, 0xc4, 0x43, 0x66, 0x18, 0x8f, 0x32, + 0xb7, 0xa6, 0xc2, 0x04, 0x23, 0xe5, 0xfb, 0xa8, 0xf7, 0xf7, 0xf4, 0x8f, 0x1b, 0x6f, 0xbc, 0x6d, + 0x15, 0x7c, 0x73, 0xa1, 0x6d, 0x3a, 0x66, 0x13, 0xda, 0xe0, 0xf0, 0x42, 0xcd, 0x64, 0xb6, 0x55, + 0xe8, 0x30, 0xa0, 0xdf, 0x1a, 0x6b, 0x67, 0xdc, 0x74, 0xea, 0x26, 0xad, 0x4b, 0x97, 0x2e, 0xb0, + 0x82, 0xed, 0x16, 0x6c, 0xa7, 0x41, 0x4d, 0xc6, 0x69, 0xc7, 0xe2, 0x1d, 0x0a, 0x85, 0x43, 0x6a, + 0x73, 0x78, 0xe7, 0x5f, 0xff, 0xfe, 0x55, 0xe4, 0x7b, 0xf9, 0xdb, 0xc1, 0xc7, 0xb3, 0xd6, 0x4f, + 0x16, 0xa6, 0xfd, 0x2c, 0xec, 0x2c, 0x6a, 0x7f, 0xf3, 0x78, 0xf4, 0xf3, 0x8e, 0xad, 0xa1, 0x65, + 0xf2, 0xeb, 0x08, 0x8e, 0x6e, 0x02, 0x27, 0xda, 0xe4, 0x83, 0xaa, 0x54, 0x65, 0x65, 0xda, 0xc9, + 0x36, 0xff, 0x67, 0xf4, 0xe1, 0xdf, 0x22, 0xbe, 0x2c, 0xd6, 0x39, 0xb2, 0xb4, 0x5d, 0xc7, 0xe6, + 0xee, 0x17, 0x29, 0x13, 0x7a, 0x8d, 0x17, 0x87, 0x82, 0x59, 0x17, 0xda, 0xdc, 0x26, 0xdf, 0x1e, + 0xa7, 0xcd, 0x39, 0x92, 0x48, 0xe3, 0x31, 0x79, 0x37, 0x82, 0x63, 0x7e, 0xa9, 0x93, 0x95, 0x29, + 0xba, 0x82, 0x14, 0xe6, 0xe6, 0xd4, 0x7d, 0x24, 0xff, 0xc7, 0x17, 0xae, 0xcc, 0x4d, 0xa2, 0x4d, + 0xa9, 0x0c, 0xf9, 0x4b, 0x04, 0x5f, 0x0a, 0x26, 0x7c, 0x32, 0xcb, 0xf7, 0x40, 0xe6, 0xf5, 0xe9, + 0x40, 0x81, 0x36, 0x1f, 0xbc, 0xa8, 0x42, 0x7a, 0x90, 0xf9, 0xe1, 0xac, 0x85, 0x34, 0xe2, 0x75, + 0xec, 0x17, 0xd6, 0x7f, 0x11, 0x8e, 0xcb, 0xfe, 0x3e, 0x61, 0xd3, 0x19, 0xfa, 0x67, 0x90, 0xb9, + 0xaa, 0xca, 0x5f, 0xa2, 0xd4, 0xf0, 0x97, 0x28, 0xb5, 0xd4, 0xf6, 0xf8, 0x51, 0xfe, 0xbd, 0x17, + 0x25, 0xc7, 0x77, 0x96, 0x67, 0xac, 0x9d, 0x35, 0xb4, 0x9c, 0xf1, 0x9e, 0x9c, 0xa0, 0xc8, 0x3f, + 0x4f, 0xd0, 0xf2, 0x24, 0x07, 0x97, 0x03, 0xc3, 0xb3, 0x13, 0x84, 0x7a, 0x27, 0x68, 0x65, 0xda, + 0x41, 0xe3, 0x9d, 0x7f, 0xa4, 0x23, 0x0a, 0x5a, 0xff, 0x1d, 0xfa, 0xe8, 0xce, 0xfc, 0x86, 0xbe, + 0x77, 0x77, 0xfb, 0xe9, 0xf3, 0xec, 0xdc, 0xb3, 0xe7, 0xd9, 0xb9, 0xcf, 0x9e, 0x67, 0xd1, 0xcf, + 0x7b, 0x59, 0xf4, 0xa7, 0x5e, 0x16, 0x7d, 0xd8, 0xcb, 0xa2, 0xa7, 0xbd, 0x2c, 0xfa, 0xb8, 0x97, + 0x45, 0x9f, 0xf4, 0xb2, 0x73, 0x9f, 0xf5, 0xb2, 0xe8, 0xdd, 0xd3, 0xec, 0xdc, 0x93, 0xd3, 0x2c, + 0x7a, 0x7a, 0x9a, 0x9d, 0x7b, 0x76, 0x9a, 0x9d, 0xfb, 0xd1, 0xa3, 0xa6, 0xeb, 0x3d, 0x6e, 0xaa, + 0x5d, 0xd7, 0x1f, 0xf4, 0xa9, 0xa9, 0x76, 0x98, 0x26, 0x1e, 0xfc, 0xef, 0xe0, 0x82, 0x47, 0xdd, + 0xae, 0x5d, 0x07, 0x5a, 0x08, 0xcd, 0x9a, 0x57, 0x6b, 0xba, 0x1a, 0xbc, 0xcd, 0x83, 0x1f, 0xc4, + 0xce, 0xfb, 0x21, 0xad, 0x16, 0x17, 0xb7, 0x78, 0xeb, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x07, + 0xac, 0x41, 0xee, 0x0b, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/securemesh_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/securemesh_site/public_crudapi.vesapi.go index e6f243375..4d13a14b1 100644 --- a/pbgo/extschema/schema/views/securemesh_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/securemesh_site/public_crudapi.vesapi.go @@ -3792,10 +3792,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3852,10 +3856,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3914,10 +3922,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -5305,6 +5317,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsL3PerformanceEnhancementType": { "type": "object", "description": "x-required\nL3 enhanced performance mode options", @@ -5511,6 +5594,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Default Network Configuration" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -5641,6 +5729,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Default Network Configuration" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", @@ -5787,6 +5880,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Default Network Configuration" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "log_receiver": { "description": "Exclusive with [logs_streaming_disabled]\n Select log receiver for logs streaming", "$ref": "#/definitions/schemaviewsObjectRefType", diff --git a/pbgo/extschema/schema/views/securemesh_site/types.pb.go b/pbgo/extschema/schema/views/securemesh_site/types.pb.go index b7db44c4b..808df6f63 100644 --- a/pbgo/extschema/schema/views/securemesh_site/types.pb.go +++ b/pbgo/extschema/schema/views/securemesh_site/types.pb.go @@ -147,6 +147,11 @@ type GlobalSpecType struct { // x-displayName: "Performance Enhancement Mode" // Performance Enhancement Mode to optimize for L3 or L7 networking PerformanceEnhancementMode *views.PerformanceEnhancementModeType `protobuf:"bytes,50,opt,name=performance_enhancement_mode,json=performanceEnhancementMode,proto3" json:"performance_enhancement_mode,omitempty"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,51,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } @@ -401,6 +406,13 @@ func (m *GlobalSpecType) GetPerformanceEnhancementMode() *views.PerformanceEnhan return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -445,6 +457,7 @@ type CreateSpecType struct { Os *views.OperatingSystemType `protobuf:"bytes,35,opt,name=os,proto3" json:"os,omitempty"` OfflineSurvivabilityMode *views.OfflineSurvivabilityModeType `protobuf:"bytes,47,opt,name=offline_survivability_mode,json=offlineSurvivabilityMode,proto3" json:"offline_survivability_mode,omitempty"` PerformanceEnhancementMode *views.PerformanceEnhancementModeType `protobuf:"bytes,50,opt,name=performance_enhancement_mode,json=performanceEnhancementMode,proto3" json:"performance_enhancement_mode,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,51,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -678,6 +691,13 @@ func (m *CreateSpecType) GetPerformanceEnhancementMode() *views.PerformanceEnhan return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -722,6 +742,7 @@ type ReplaceSpecType struct { Os *views.OperatingSystemType `protobuf:"bytes,35,opt,name=os,proto3" json:"os,omitempty"` OfflineSurvivabilityMode *views.OfflineSurvivabilityModeType `protobuf:"bytes,47,opt,name=offline_survivability_mode,json=offlineSurvivabilityMode,proto3" json:"offline_survivability_mode,omitempty"` PerformanceEnhancementMode *views.PerformanceEnhancementModeType `protobuf:"bytes,50,opt,name=performance_enhancement_mode,json=performanceEnhancementMode,proto3" json:"performance_enhancement_mode,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,51,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -955,6 +976,13 @@ func (m *ReplaceSpecType) GetPerformanceEnhancementMode() *views.PerformanceEnha return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -1004,6 +1032,7 @@ type GetSpecType struct { BlockedServicesChoice isGetSpecType_BlockedServicesChoice `protobuf_oneof:"blocked_services_choice"` OfflineSurvivabilityMode *views.OfflineSurvivabilityModeType `protobuf:"bytes,47,opt,name=offline_survivability_mode,json=offlineSurvivabilityMode,proto3" json:"offline_survivability_mode,omitempty"` PerformanceEnhancementMode *views.PerformanceEnhancementModeType `protobuf:"bytes,50,opt,name=performance_enhancement_mode,json=performanceEnhancementMode,proto3" json:"performance_enhancement_mode,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,51,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -1244,6 +1273,13 @@ func (m *GetSpecType) GetPerformanceEnhancementMode() *views.PerformanceEnhancem return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -2309,231 +2345,235 @@ func init() { } var fileDescriptor_6228ec914a1c46a1 = []byte{ - // 3583 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x5d, 0x6c, 0xdb, 0x58, - 0x76, 0xf6, 0x95, 0x64, 0x5b, 0x3e, 0xf2, 0x0f, 0x4d, 0xff, 0xd1, 0x76, 0xa2, 0x68, 0x9c, 0x99, - 0x1d, 0xc7, 0xa1, 0x65, 0x4b, 0xb6, 0x15, 0x27, 0xbb, 0x9b, 0x8e, 0xe5, 0x64, 0x26, 0x11, 0x92, - 0x34, 0xa0, 0xa7, 0x46, 0xa7, 0x0b, 0x94, 0xa5, 0xc8, 0x2b, 0x85, 0x1b, 0x8a, 0x14, 0x48, 0x4a, - 0x8e, 0xb1, 0x08, 0x3a, 0x9d, 0xee, 0x43, 0xb1, 0xc0, 0x62, 0xdb, 0xf4, 0x61, 0xd1, 0x01, 0x0a, - 0xec, 0x53, 0xb1, 0xc8, 0x53, 0x1f, 0x0a, 0x14, 0x5d, 0x0e, 0x0a, 0x77, 0x8a, 0xa2, 0x8b, 0x41, - 0x1f, 0xfc, 0x38, 0xe8, 0x4b, 0x77, 0x34, 0x2f, 0x29, 0xd0, 0x87, 0x79, 0x29, 0x50, 0xa4, 0x40, - 0x51, 0xf0, 0xf2, 0x47, 0x24, 0x4d, 0xc9, 0xde, 0xa6, 0x41, 0x31, 0x1d, 0xbf, 0x24, 0xa4, 0xce, - 0x39, 0xdf, 0x39, 0xf7, 0xe7, 0x9c, 0xef, 0x5e, 0xde, 0x6b, 0x58, 0x6b, 0x63, 0x23, 0x2f, 0x6b, - 0x6b, 0x86, 0xf8, 0x08, 0x37, 0x84, 0xb5, 0xb6, 0x8c, 0x0f, 0x8c, 0x35, 0x03, 0x8b, 0x2d, 0x1d, - 0x37, 0xb0, 0xf1, 0x88, 0x37, 0x64, 0x13, 0xaf, 0x99, 0x87, 0x4d, 0x6c, 0xe4, 0x9b, 0xba, 0x66, - 0x6a, 0xf4, 0x65, 0xc7, 0x20, 0xef, 0x18, 0xe4, 0x89, 0x41, 0x3e, 0x62, 0xb0, 0xb0, 0x5a, 0x97, - 0xcd, 0x47, 0xad, 0x6a, 0x5e, 0xd4, 0x1a, 0x6b, 0x75, 0xad, 0xae, 0xad, 0x11, 0xdb, 0x6a, 0xab, - 0x46, 0xde, 0xc8, 0x0b, 0x79, 0x72, 0x30, 0x17, 0x2e, 0x85, 0x83, 0xa8, 0x29, 0x18, 0x9b, 0x41, - 0xa7, 0x0b, 0x2b, 0x61, 0x05, 0x15, 0x9b, 0x07, 0x9a, 0xfe, 0x98, 0xaf, 0xc9, 0x3a, 0x3e, 0x10, - 0x14, 0x25, 0xa4, 0x7b, 0x35, 0x5e, 0x57, 0x56, 0x4d, 0xac, 0xd7, 0x04, 0x31, 0xd4, 0x9a, 0x85, - 0xc5, 0xb0, 0xb2, 0xd6, 0x34, 0x65, 0x4d, 0xf5, 0x84, 0xd9, 0xb0, 0x30, 0xda, 0x15, 0x0b, 0xf3, - 0x61, 0x79, 0x50, 0x74, 0x21, 0xd2, 0xad, 0x82, 0x22, 0x4b, 0x82, 0x89, 0x5d, 0x69, 0xee, 0x64, - 0xa7, 0xf3, 0x61, 0xd7, 0x6f, 0xc6, 0x0e, 0x8b, 0x6c, 0x62, 0x3e, 0xe8, 0xe5, 0x52, 0x9c, 0x56, - 0x50, 0xe1, 0x4a, 0x54, 0x41, 0x37, 0x5b, 0x82, 0xc2, 0xbb, 0x7d, 0x12, 0x54, 0x5d, 0xfa, 0xf7, - 0x49, 0x18, 0x7f, 0x4f, 0xd1, 0xaa, 0x82, 0xb2, 0xd7, 0xc4, 0xe2, 0xfb, 0x87, 0x4d, 0x4c, 0xff, - 0x65, 0x02, 0x66, 0xda, 0x9a, 0x62, 0x62, 0x5d, 0x17, 0x78, 0x11, 0xeb, 0xa6, 0x5c, 0x93, 0xb1, - 0xc4, 0x3f, 0x3a, 0x60, 0x0a, 0x39, 0xb4, 0x3c, 0x52, 0xfe, 0x4f, 0xf4, 0xcf, 0x16, 0x62, 0x64, - 0xa3, 0xbd, 0xba, 0xbd, 0xbe, 0xbe, 0xbe, 0x6a, 0x60, 0x5d, 0xc6, 0xc6, 0xaa, 0x6d, 0x61, 0xcf, - 0x84, 0x8e, 0x85, 0xfe, 0x1e, 0x01, 0x23, 0xd7, 0x0f, 0x56, 0xb7, 0x62, 0xc4, 0xd0, 0xd3, 0x10, - 0x16, 0xeb, 0x58, 0xc5, 0xba, 0x2c, 0xae, 0x1a, 0xb2, 0x5a, 0x57, 0xf0, 0xaa, 0x2a, 0x8b, 0x5d, - 0xe1, 0x05, 0x4f, 0xa8, 0xe3, 0x7a, 0x4b, 0x11, 0xf4, 0xb0, 0x74, 0xa2, 0xdd, 0x38, 0x10, 0x74, - 0x1c, 0xc0, 0x72, 0x7f, 0x88, 0xd5, 0x1e, 0x7d, 0xdc, 0x6e, 0x74, 0xdf, 0x66, 0xed, 0xb7, 0x46, - 0x4b, 0x31, 0xe5, 0x90, 0xd6, 0x7f, 0x58, 0x68, 0xe0, 0x17, 0xff, 0x7a, 0x94, 0x4c, 0xe9, 0x09, - 0x0a, 0xd9, 0x0f, 0x83, 0x7a, 0xf2, 0x67, 0x09, 0xc4, 0x4d, 0x79, 0x5d, 0xb3, 0xeb, 0xf5, 0xcc, - 0x9d, 0x03, 0xfa, 0xf7, 0x61, 0xbe, 0x21, 0x18, 0x26, 0xd6, 0x79, 0x55, 0x93, 0x30, 0x2f, 0x6a, - 0x6a, 0x4d, 0xae, 0xb7, 0x74, 0xc1, 0x1e, 0x5b, 0x66, 0x2b, 0x97, 0x5c, 0xce, 0x14, 0x2f, 0xe5, - 0xe3, 0x32, 0xe8, 0x3e, 0xb1, 0x7a, 0xa0, 0x49, 0xb8, 0xbc, 0x44, 0x9c, 0x3c, 0x43, 0x09, 0x2a, - 0x69, 0x3f, 0xa5, 0x9f, 0xa1, 0xc1, 0x95, 0x64, 0x81, 0xdd, 0xe8, 0xfc, 0xea, 0x1f, 0x92, 0x43, - 0xcf, 0x3e, 0x41, 0x89, 0xf4, 0x00, 0x37, 0xd7, 0xf0, 0xf5, 0x77, 0x83, 0x3e, 0xe8, 0x6d, 0x18, - 0xb5, 0x87, 0xd6, 0x0d, 0xc0, 0x60, 0x92, 0xb9, 0xe4, 0xf2, 0x48, 0x79, 0xc6, 0x06, 0x1a, 0x7a, - 0x86, 0x92, 0xd4, 0x87, 0xc8, 0x43, 0x67, 0x10, 0x97, 0x71, 0x54, 0x6d, 0x14, 0x83, 0xae, 0xc0, - 0xbc, 0x3f, 0xd8, 0x86, 0x56, 0x33, 0xed, 0x6e, 0xe3, 0xdb, 0x58, 0x37, 0xec, 0xd0, 0x53, 0x64, - 0xc0, 0xc7, 0xbd, 0xbe, 0x18, 0xd4, 0x93, 0xcc, 0x87, 0x09, 0x6e, 0xce, 0x33, 0xd8, 0x73, 0xf5, - 0xf7, 0x1d, 0x75, 0xfa, 0x0e, 0x30, 0x5a, 0x13, 0xdb, 0x21, 0xa9, 0x75, 0xde, 0x38, 0x34, 0x4c, - 0xdc, 0xf0, 0xa1, 0x06, 0x63, 0xa1, 0x66, 0x7d, 0xfd, 0x3d, 0xa2, 0xee, 0x21, 0xdd, 0x84, 0x09, - 0x55, 0xe3, 0xab, 0x9a, 0x2a, 0xf1, 0x12, 0x6e, 0xcb, 0x22, 0x36, 0x98, 0xe1, 0x1c, 0x5a, 0xce, - 0x14, 0xa7, 0x23, 0xdd, 0x78, 0xbb, 0xd1, 0x34, 0x0f, 0xef, 0x0c, 0x70, 0x63, 0xaa, 0x56, 0xd6, - 0x54, 0xe9, 0x96, 0xa3, 0x4c, 0xf3, 0x40, 0x05, 0x8c, 0x79, 0x45, 0x36, 0x4c, 0x26, 0x4d, 0x00, - 0x56, 0x23, 0x00, 0xa4, 0xea, 0xe4, 0xdf, 0xb5, 0xff, 0x0d, 0x00, 0xdc, 0x93, 0x0d, 0xd3, 0x4e, - 0x86, 0x72, 0xea, 0xd8, 0x42, 0xe8, 0xce, 0x00, 0x37, 0x5e, 0xf5, 0x85, 0xb6, 0x8c, 0xbe, 0x07, - 0xb3, 0x12, 0xae, 0x09, 0x2d, 0xc5, 0xf4, 0xd2, 0xca, 0x1d, 0x75, 0x06, 0xfa, 0xc4, 0x89, 0xb8, - 0x69, 0xd7, 0xea, 0x81, 0x63, 0xe4, 0x8c, 0x22, 0xfd, 0x04, 0x66, 0xc4, 0x96, 0x61, 0x6a, 0x8d, - 0x28, 0x58, 0x86, 0x80, 0x7d, 0x27, 0x7f, 0x86, 0xea, 0x9b, 0xdf, 0x6b, 0x18, 0x21, 0x54, 0x77, - 0x6e, 0xb8, 0x4d, 0x40, 0xdc, 0x94, 0xe3, 0x22, 0xec, 0xf9, 0x4d, 0x18, 0x16, 0x24, 0x49, 0xc7, - 0x86, 0xc1, 0xd0, 0x64, 0x84, 0x20, 0x30, 0x3a, 0x9e, 0x88, 0xde, 0x81, 0x8c, 0xa8, 0x69, 0xba, - 0x24, 0xab, 0x82, 0x89, 0x0d, 0x66, 0x8a, 0x44, 0x15, 0x9d, 0xd1, 0x24, 0x88, 0xdd, 0xae, 0x1a, - 0x17, 0xb4, 0xa1, 0x1f, 0xc0, 0x9c, 0xa2, 0xd5, 0x0d, 0xde, 0x30, 0x75, 0x2c, 0x34, 0xec, 0x09, - 0x22, 0xc9, 0x86, 0x50, 0x55, 0xb0, 0xc4, 0x30, 0x7d, 0x7a, 0x2c, 0xc1, 0xcd, 0xd8, 0x66, 0x7b, - 0x9e, 0xd5, 0x2d, 0xd7, 0x88, 0xfe, 0x6d, 0x18, 0x55, 0xb4, 0x3a, 0xaf, 0x63, 0x11, 0xcb, 0x6d, - 0xac, 0x33, 0xf3, 0x04, 0x64, 0x29, 0xb6, 0xa7, 0x7e, 0xb3, 0xfa, 0x7d, 0x2c, 0x9a, 0x1c, 0xae, - 0x91, 0x21, 0x9d, 0x78, 0xfe, 0x34, 0x64, 0x7a, 0x27, 0xc1, 0x65, 0x14, 0xad, 0xce, 0xb9, 0xaf, - 0xf4, 0x6f, 0x40, 0xc2, 0x38, 0x60, 0x96, 0x08, 0xde, 0x95, 0x58, 0xbc, 0xfd, 0xc8, 0xfc, 0x77, - 0x66, 0xca, 0x57, 0x16, 0x42, 0x5c, 0xc2, 0x38, 0xa0, 0x6f, 0x42, 0x42, 0x33, 0x98, 0xcb, 0x04, - 0x60, 0x39, 0x3e, 0xa0, 0xf0, 0xac, 0x0f, 0xda, 0x6b, 0x06, 0xfd, 0xbb, 0x30, 0x46, 0xb8, 0x81, - 0x70, 0x97, 0x2a, 0x28, 0xcc, 0x8b, 0xe1, 0x33, 0x37, 0x6e, 0xfa, 0xf9, 0xd3, 0xb0, 0xf1, 0x0b, - 0x1b, 0x75, 0xd4, 0xfe, 0xe9, 0xae, 0xfb, 0x0b, 0xfd, 0x10, 0x18, 0x6f, 0xee, 0x56, 0x15, 0x4d, - 0x7c, 0x8c, 0x25, 0xde, 0xc0, 0xba, 0x93, 0x65, 0x57, 0xfa, 0x8c, 0x45, 0x92, 0xf3, 0xe6, 0x7c, - 0xd9, 0x31, 0xdb, 0x73, 0xad, 0xe8, 0x0f, 0x80, 0x3a, 0x81, 0xc4, 0x12, 0x24, 0x36, 0x36, 0xdd, - 0x22, 0xf6, 0x5e, 0xb6, 0xdd, 0x49, 0x72, 0x13, 0xd5, 0x08, 0x74, 0x0b, 0x16, 0xb4, 0x5a, 0x4d, - 0x91, 0x55, 0xcc, 0x1b, 0x2d, 0xbd, 0x2d, 0xb7, 0x85, 0xaa, 0xac, 0xc8, 0xe6, 0x21, 0xdf, 0xd0, - 0x24, 0xcc, 0xac, 0x11, 0x27, 0x85, 0xf8, 0x8e, 0x71, 0xcc, 0xf6, 0x82, 0x56, 0xf7, 0x35, 0x29, - 0x38, 0x5a, 0x8c, 0xd6, 0x43, 0x87, 0xfe, 0x01, 0x5c, 0x68, 0x62, 0xbd, 0xa6, 0xe9, 0x0d, 0x41, - 0x15, 0x31, 0x8f, 0xd5, 0x47, 0xf6, 0xff, 0x0d, 0xac, 0x9a, 0x8e, 0xe3, 0x22, 0x71, 0xbc, 0x11, - 0xeb, 0xf8, 0x61, 0xd7, 0xf0, 0x76, 0xd7, 0x2e, 0xe2, 0x7a, 0xa1, 0xd9, 0x53, 0xeb, 0xc6, 0x8f, - 0xd1, 0xa7, 0x16, 0xfa, 0x23, 0x04, 0x6f, 0xc2, 0x54, 0x59, 0x30, 0x64, 0x31, 0x17, 0x2e, 0xf6, - 0x63, 0x9b, 0xd7, 0xd9, 0xad, 0x0d, 0x76, 0x83, 0x2d, 0x6c, 0xb3, 0x85, 0xeb, 0x30, 0x07, 0xb4, - 0x5d, 0xb9, 0x22, 0x4a, 0xa8, 0x04, 0x0b, 0x30, 0xe3, 0x26, 0x7b, 0x54, 0x76, 0x1d, 0xae, 0xc2, - 0xec, 0x8e, 0xd4, 0xb6, 0xbd, 0x46, 0x0d, 0x27, 0x8b, 0x1b, 0xec, 0xc6, 0x26, 0xbb, 0xb1, 0xc5, - 0x6e, 0xae, 0xb3, 0x9b, 0xd7, 0xd8, 0xad, 0xf5, 0x72, 0x16, 0x32, 0xa4, 0x9a, 0x8a, 0x8f, 0x34, - 0x59, 0xc4, 0xf4, 0xc4, 0x91, 0x85, 0x86, 0x8f, 0x2d, 0x34, 0xd4, 0xb1, 0x50, 0xf2, 0x1a, 0xbb, - 0x5d, 0x7e, 0x1b, 0x68, 0xbf, 0x6e, 0xd5, 0xea, 0x9e, 0xda, 0xe4, 0x91, 0x85, 0xe0, 0xd8, 0x42, - 0x23, 0x1d, 0x0b, 0x0d, 0x16, 0xd6, 0xd9, 0x42, 0xa1, 0x7c, 0x05, 0xa6, 0x49, 0x11, 0xf0, 0x52, - 0x2f, 0xa8, 0xca, 0x1c, 0x5b, 0x68, 0xce, 0x56, 0x2d, 0x6e, 0xb2, 0xc5, 0xad, 0xf2, 0x2a, 0xcc, - 0x45, 0xa7, 0x94, 0xa7, 0x4d, 0x1f, 0x59, 0xe8, 0xca, 0xb1, 0x85, 0x96, 0x3b, 0x16, 0x1a, 0xda, - 0x2c, 0xb0, 0xb9, 0xcd, 0xcd, 0x4a, 0x2a, 0x8d, 0xa8, 0x44, 0x25, 0x95, 0x4e, 0x50, 0xc9, 0x4a, - 0x2a, 0x3d, 0x44, 0x0d, 0x57, 0x52, 0xe9, 0x11, 0x0a, 0x2a, 0xa9, 0xf4, 0x1c, 0xc5, 0x54, 0x52, - 0xe9, 0x65, 0xea, 0x4a, 0x25, 0x95, 0x5e, 0xa1, 0xae, 0x56, 0x52, 0xe9, 0x75, 0xaa, 0xb0, 0xf4, - 0x37, 0xa3, 0x30, 0xbe, 0xab, 0x63, 0xc1, 0xc4, 0xfe, 0xba, 0xa7, 0xd8, 0x77, 0xd9, 0x13, 0x4f, - 0xfc, 0xdf, 0x7b, 0x75, 0xe2, 0xef, 0x4d, 0xea, 0x6f, 0xc4, 0x91, 0x7a, 0x98, 0xbd, 0x5f, 0x95, - 0x27, 0x3f, 0xf8, 0x5f, 0xe2, 0xc9, 0xd7, 0xce, 0x90, 0xfa, 0x6b, 0x64, 0xc8, 0x5e, 0xdc, 0xc8, - 0x44, 0xb8, 0xf1, 0x1b, 0xca, 0x87, 0x5f, 0x2b, 0xba, 0xf8, 0x3f, 0x27, 0x6f, 0xed, 0xb5, 0xf0, - 0x55, 0x1f, 0xa6, 0x6a, 0xbd, 0x36, 0xa6, 0xea, 0xcb, 0x51, 0x93, 0x9f, 0xdd, 0x8c, 0x6c, 0x1c, - 0x4f, 0xd0, 0xc4, 0x47, 0x2f, 0x51, 0xf0, 0x87, 0x32, 0x1b, 0x4b, 0x13, 0xb3, 0x1f, 0xbd, 0x44, - 0x31, 0xbf, 0x97, 0xd7, 0x7b, 0x70, 0x05, 0xf3, 0xd1, 0x4b, 0x14, 0x2b, 0x29, 0x97, 0x7a, 0x53, - 0xc6, 0xe2, 0x47, 0x2f, 0x51, 0x2f, 0xe1, 0xa9, 0xdc, 0x91, 0xa5, 0x2e, 0xf9, 0x0c, 0x62, 0x73, - 0xc7, 0x2f, 0x46, 0x61, 0x82, 0xc3, 0x4d, 0x45, 0x10, 0xcf, 0xc9, 0xe3, 0x9c, 0x3c, 0xce, 0xc9, - 0xe3, 0x9c, 0x3c, 0xce, 0xc9, 0xe3, 0x9c, 0x3c, 0xce, 0x48, 0x1e, 0xff, 0x36, 0x0a, 0x99, 0xf7, - 0xb0, 0xf9, 0xb5, 0x26, 0x8e, 0x1b, 0xa7, 0x7e, 0x33, 0xec, 0xfd, 0x8d, 0x70, 0xfb, 0xb4, 0x6f, - 0x84, 0xaf, 0xed, 0x9b, 0xe0, 0x39, 0x5d, 0x9d, 0xd3, 0xd5, 0x69, 0x74, 0xf5, 0x1d, 0x00, 0x72, - 0xdc, 0x62, 0x98, 0x82, 0x89, 0x99, 0x6c, 0x0e, 0x2d, 0x8f, 0x17, 0x2f, 0xc6, 0xb5, 0x75, 0x4f, - 0x36, 0xf1, 0x9e, 0xad, 0xc4, 0x8d, 0x18, 0xde, 0xe3, 0xd7, 0x8b, 0xec, 0xbe, 0x29, 0x5c, 0x33, - 0x7d, 0x82, 0x6b, 0x5e, 0xdc, 0x44, 0xff, 0x6f, 0xe9, 0x26, 0xfa, 0x9d, 0xeb, 0xcf, 0x68, 0x98, - 0xeb, 0x51, 0x0a, 0xe8, 0xef, 0xc2, 0xb8, 0x37, 0x5d, 0xdd, 0x02, 0x93, 0xe8, 0x5f, 0x4f, 0x5d, - 0x6d, 0xb7, 0x64, 0x7c, 0x0f, 0xc0, 0x50, 0x34, 0xcf, 0x34, 0x49, 0x4c, 0x37, 0xcf, 0x54, 0x9b, - 0xf6, 0xd5, 0xb8, 0x13, 0x8a, 0x01, 0x6e, 0xc4, 0x50, 0x34, 0x17, 0xfc, 0x16, 0xd0, 0x5e, 0x6c, - 0x86, 0x22, 0x7b, 0x4e, 0xe6, 0xfb, 0x56, 0x53, 0xca, 0xb5, 0xd8, 0x53, 0xe4, 0x60, 0x88, 0xbe, - 0xf5, 0xc2, 0x2b, 0x87, 0x88, 0xec, 0x10, 0x3d, 0xf0, 0x40, 0xb6, 0xfb, 0xa7, 0xcc, 0x9e, 0xab, - 0xc1, 0xbe, 0x65, 0xcd, 0xcb, 0xf6, 0xbb, 0x9e, 0x99, 0x8b, 0x88, 0x61, 0xbc, 0x8b, 0x44, 0xf8, - 0x69, 0x88, 0xe0, 0x94, 0xce, 0x14, 0xb2, 0x8f, 0x16, 0x39, 0xbc, 0x4a, 0x70, 0x63, 0x72, 0x50, - 0x44, 0x97, 0x61, 0x52, 0xd5, 0x7c, 0x6e, 0x69, 0x6a, 0x8a, 0x2c, 0x1e, 0xba, 0x4c, 0xd8, 0xab, - 0x3e, 0x4d, 0xa8, 0x9a, 0x3b, 0x85, 0x1e, 0x12, 0x75, 0xda, 0x80, 0x39, 0x41, 0x34, 0xe5, 0x36, - 0x0e, 0xe3, 0xc8, 0xd8, 0x60, 0x46, 0x08, 0xd2, 0xf5, 0x08, 0x52, 0xf4, 0xf0, 0x3e, 0xbf, 0x43, - 0xcc, 0x83, 0xa8, 0x32, 0x36, 0xdc, 0x62, 0x35, 0x23, 0xc4, 0x09, 0xe9, 0x9f, 0x20, 0x78, 0xc3, - 0xf5, 0xea, 0x56, 0x0f, 0xc9, 0xc7, 0xeb, 0xfa, 0x5f, 0x24, 0xfe, 0xcb, 0x67, 0xf3, 0xef, 0x56, - 0x0b, 0xe9, 0x5d, 0xf7, 0xe7, 0x48, 0x20, 0x59, 0xa1, 0xaf, 0x16, 0xfd, 0x0e, 0x50, 0xaa, 0xc6, - 0xd7, 0x34, 0xfd, 0x40, 0xd0, 0x25, 0xbe, 0xa9, 0x6b, 0x4f, 0x0e, 0x5d, 0x96, 0x8e, 0xef, 0xc9, - 0x14, 0x37, 0xae, 0x6a, 0xef, 0x3a, 0xea, 0x0f, 0x6d, 0x6d, 0xfa, 0x0f, 0x11, 0x5c, 0x74, 0xdb, - 0x14, 0x82, 0xe9, 0xb6, 0x67, 0x94, 0xe0, 0xdd, 0x3c, 0x5b, 0x7b, 0x82, 0xd8, 0xa1, 0xb6, 0xa4, - 0xb8, 0x05, 0xa1, 0xa7, 0x06, 0x7d, 0x1f, 0xe6, 0xc2, 0xde, 0x05, 0x45, 0xd1, 0x0e, 0xec, 0x7f, - 0x99, 0xb1, 0xbe, 0xcd, 0x99, 0xae, 0x05, 0xe0, 0x76, 0x6c, 0xa3, 0x1d, 0x45, 0x71, 0x67, 0x58, - 0x9d, 0x54, 0x5d, 0x6f, 0x82, 0x30, 0x13, 0x7d, 0x80, 0x06, 0xed, 0x19, 0xe6, 0x54, 0x69, 0x77, - 0xd0, 0xe9, 0x1a, 0x4c, 0x85, 0x01, 0x9c, 0x8c, 0xa0, 0xfa, 0x24, 0x71, 0x08, 0x60, 0x57, 0x53, - 0x55, 0x2c, 0xda, 0xc9, 0xeb, 0xb3, 0xe0, 0x20, 0x37, 0x59, 0x0f, 0xaa, 0x90, 0x6c, 0xd8, 0x82, - 0xb1, 0x6a, 0xbd, 0xc9, 0xeb, 0x5a, 0xcb, 0x5e, 0x50, 0xcb, 0x92, 0x7b, 0x0e, 0x3a, 0x79, 0x64, - 0x21, 0xf4, 0xc2, 0x42, 0xc8, 0xbd, 0x04, 0xd0, 0x44, 0x5c, 0xa6, 0x5a, 0x6f, 0x72, 0x44, 0xed, - 0xae, 0x44, 0x7f, 0x1b, 0x28, 0xdb, 0xac, 0x89, 0xb1, 0xce, 0x7b, 0x2b, 0xa7, 0xa9, 0x5e, 0x96, - 0xe3, 0xd5, 0x7a, 0xf3, 0x21, 0xc6, 0xfa, 0x8e, 0xbb, 0xa6, 0xba, 0x09, 0x63, 0x6d, 0xb9, 0xc9, - 0xb7, 0x75, 0xbd, 0xe9, 0x70, 0xdf, 0x34, 0x59, 0x69, 0x2c, 0x44, 0x5a, 0xb5, 0x2f, 0x37, 0xf7, - 0x75, 0xbd, 0x49, 0x28, 0x2e, 0xd3, 0x76, 0x5e, 0x08, 0x95, 0x7e, 0x1b, 0xa6, 0xcc, 0x96, 0xaa, - 0x62, 0x85, 0x97, 0xb0, 0x20, 0xf1, 0xa6, 0xdc, 0xc0, 0x5a, 0xcb, 0x64, 0x72, 0x39, 0xb4, 0x3c, - 0x56, 0xce, 0x90, 0x53, 0xff, 0x95, 0x14, 0xf3, 0xb3, 0xff, 0x02, 0x6e, 0xd2, 0xd1, 0xbb, 0x85, - 0x05, 0xe9, 0x7d, 0x47, 0xcb, 0x1e, 0x6b, 0xa3, 0x61, 0x17, 0x2a, 0xb7, 0x7b, 0xf8, 0x66, 0xab, - 0xaa, 0xc8, 0x22, 0x2f, 0x37, 0x99, 0x8d, 0x3e, 0x43, 0x34, 0xc4, 0x4d, 0x1b, 0x8d, 0x6e, 0xa7, - 0x3e, 0x24, 0x46, 0x77, 0x9b, 0xf4, 0x7b, 0x30, 0x1d, 0x81, 0x6b, 0x9b, 0x36, 0xd6, 0x66, 0x5f, - 0xac, 0xc9, 0x10, 0x56, 0xdb, 0xbc, 0xdb, 0xa4, 0x77, 0x60, 0x2a, 0xda, 0xa3, 0x7c, 0xbb, 0xc4, - 0x94, 0x48, 0xa7, 0xd2, 0xc1, 0x4e, 0x1d, 0xd4, 0x93, 0x1f, 0x22, 0xc4, 0x51, 0xe1, 0x5e, 0xdd, - 0x2f, 0xdd, 0xf8, 0x27, 0xf4, 0xa9, 0x85, 0xfe, 0x11, 0xc1, 0xc5, 0x5e, 0x27, 0x5f, 0xa9, 0x02, - 0x5b, 0xdc, 0x84, 0x2c, 0xcc, 0xf9, 0xc5, 0x32, 0x7a, 0x34, 0xb6, 0xb9, 0x8c, 0x20, 0x0b, 0xb3, - 0x7b, 0x76, 0x71, 0x95, 0xcd, 0xc3, 0xa8, 0xfd, 0x35, 0xb6, 0xb0, 0x0e, 0x0c, 0xd0, 0xce, 0x54, - 0xcb, 0x75, 0xdb, 0x60, 0xd0, 0x89, 0xc2, 0x26, 0xbc, 0x05, 0x17, 0xed, 0x95, 0x61, 0xee, 0x3e, - 0x36, 0x1e, 0xe5, 0xde, 0xd3, 0xb5, 0x56, 0x33, 0x02, 0x90, 0xd8, 0x5a, 0x5f, 0x46, 0xf0, 0x56, - 0xcf, 0xd3, 0xb7, 0x0c, 0x39, 0xd3, 0x63, 0x8b, 0xeb, 0xec, 0x46, 0xb1, 0x7c, 0xd1, 0x65, 0xd8, - 0xee, 0xb1, 0x5b, 0xc2, 0xae, 0xe8, 0x1d, 0x0b, 0x25, 0x8b, 0xec, 0x46, 0xf9, 0x92, 0xcb, 0x6e, - 0xdd, 0x33, 0xb4, 0xf9, 0x63, 0x0b, 0x31, 0xe4, 0x0c, 0x6d, 0x8b, 0x2d, 0x96, 0xca, 0x97, 0x81, - 0x0a, 0x30, 0x53, 0x17, 0x65, 0xf0, 0xd8, 0x42, 0x29, 0x1b, 0x65, 0x8b, 0x2d, 0x95, 0xaf, 0xc2, - 0x4c, 0x98, 0x0a, 0x82, 0xc7, 0x6c, 0xe9, 0x63, 0x0b, 0x0d, 0x77, 0x2c, 0x34, 0xb4, 0xcd, 0x16, - 0xaf, 0xb1, 0xd7, 0xcb, 0x2c, 0x4c, 0x87, 0xeb, 0x84, 0xab, 0x3b, 0x7d, 0x64, 0xa1, 0xcc, 0xb1, - 0x85, 0xa0, 0x63, 0xa1, 0x74, 0xa1, 0xc0, 0x16, 0x8a, 0x6c, 0x61, 0xa3, 0x9c, 0x87, 0x99, 0x48, - 0x0a, 0xbb, 0xea, 0x33, 0x47, 0x16, 0x9a, 0xf8, 0xa5, 0x85, 0xd0, 0xb1, 0x85, 0xc6, 0xc9, 0xf1, - 0xe0, 0x16, 0x5b, 0xb0, 0x43, 0x99, 0x25, 0xab, 0x6f, 0xc2, 0x69, 0x75, 0xbb, 0xf7, 0x82, 0x8d, - 0xdb, 0x3c, 0xb6, 0x50, 0xd1, 0x56, 0xde, 0x2a, 0xb2, 0x5b, 0x05, 0x7f, 0x25, 0xc4, 0x50, 0xf3, - 0x95, 0x54, 0x3a, 0x45, 0x0d, 0x56, 0x52, 0xe9, 0x61, 0x2a, 0x5d, 0x49, 0xa5, 0x81, 0xca, 0x54, - 0x52, 0xe9, 0x71, 0x6a, 0xa2, 0x92, 0x4a, 0x5f, 0xa0, 0x2e, 0x56, 0x52, 0xe9, 0x8b, 0x54, 0xd6, - 0xdf, 0x8a, 0x5f, 0xa2, 0x72, 0x95, 0x54, 0xba, 0x48, 0x6d, 0x2c, 0x3d, 0x07, 0x98, 0x88, 0xf0, - 0x3c, 0xfd, 0x53, 0x04, 0x43, 0x8a, 0x50, 0xc5, 0x8a, 0xc1, 0x20, 0xb2, 0x91, 0x7e, 0xe7, 0x7f, - 0xb2, 0x5c, 0xc8, 0xdf, 0x23, 0x10, 0xb7, 0x55, 0x53, 0x3f, 0x2c, 0x7f, 0xf7, 0xe3, 0x4f, 0x50, - 0x0a, 0x12, 0xce, 0xbd, 0x97, 0xcc, 0xc7, 0x28, 0xbd, 0x34, 0xa4, 0xa7, 0x28, 0xc4, 0xbc, 0x43, - 0xa6, 0xf2, 0xc7, 0x28, 0x41, 0x51, 0x9e, 0x64, 0xc5, 0x95, 0x90, 0x3b, 0x3f, 0x3f, 0x72, 0xee, - 0xfc, 0xb8, 0xe1, 0xd0, 0x8b, 0x90, 0x6c, 0xcb, 0x4d, 0xf7, 0x1e, 0xcd, 0x88, 0x5b, 0x5b, 0x9e, - 0x20, 0xce, 0xfe, 0x95, 0x7e, 0x03, 0x86, 0x48, 0x41, 0x29, 0x31, 0x93, 0xa1, 0x5b, 0x1c, 0x76, - 0x9a, 0x0c, 0xda, 0x95, 0xa3, 0x44, 0x5f, 0x01, 0x50, 0x85, 0x06, 0xb6, 0x17, 0x94, 0x58, 0x27, - 0x0b, 0x8b, 0x10, 0x4c, 0x40, 0x48, 0xaf, 0xc1, 0x58, 0xf7, 0xcd, 0x06, 0xa5, 0x4f, 0x80, 0x8e, - 0x76, 0x15, 0xf6, 0x4b, 0x2e, 0x0d, 0xda, 0x9b, 0x26, 0x59, 0x74, 0x2a, 0xa9, 0xd1, 0x77, 0x41, - 0x31, 0x60, 0xd3, 0xe0, 0x1e, 0x51, 0x27, 0x05, 0xd5, 0xa0, 0x7f, 0x0f, 0xc6, 0xc2, 0xe6, 0xf1, - 0xab, 0x88, 0x1e, 0x7b, 0xdd, 0x00, 0x52, 0x60, 0x97, 0x3e, 0x6a, 0x04, 0x3d, 0xdc, 0x86, 0x29, - 0x55, 0xe3, 0xdb, 0xa5, 0x48, 0x98, 0x13, 0xfd, 0x97, 0x94, 0xaa, 0xb6, 0x5f, 0x0a, 0x05, 0x2a, - 0x00, 0xe5, 0x02, 0xb4, 0x4b, 0x1e, 0x86, 0xc3, 0x49, 0x5b, 0x27, 0x62, 0x0d, 0x5d, 0xbb, 0x73, - 0xa3, 0xdc, 0x2f, 0x45, 0xe2, 0x44, 0xdc, 0xb8, 0x11, 0x92, 0xb8, 0x91, 0x4a, 0x22, 0x2f, 0x2a, - 0x2d, 0xf2, 0x95, 0x87, 0xa4, 0x42, 0xdf, 0x75, 0x45, 0xc2, 0x8e, 0xf4, 0x96, 0xb8, 0xeb, 0x18, - 0x90, 0xc2, 0x43, 0x8b, 0x40, 0x9d, 0xc0, 0x18, 0x3d, 0xf3, 0x4e, 0x79, 0xea, 0xf9, 0xd3, 0x13, - 0xe6, 0x77, 0x12, 0xdc, 0xb8, 0x14, 0x76, 0xf2, 0x27, 0x08, 0x16, 0xa2, 0x6a, 0xdd, 0xe5, 0x30, - 0x33, 0x46, 0x72, 0xe8, 0x2c, 0xfe, 0xd6, 0x9f, 0x3f, 0x9d, 0x3c, 0x71, 0x69, 0x33, 0x54, 0xf4, - 0x9f, 0x21, 0xef, 0x26, 0x9e, 0x73, 0x8d, 0x6d, 0x2e, 0x1c, 0x8a, 0x5f, 0xd1, 0x17, 0xae, 0x43, - 0x26, 0x90, 0x7f, 0x34, 0x05, 0xc9, 0xc7, 0xf8, 0x90, 0x41, 0xe4, 0xb3, 0x86, 0xfd, 0x48, 0x4f, - 0xc3, 0x60, 0x5b, 0x50, 0x5a, 0x98, 0xec, 0x77, 0x46, 0x38, 0xe7, 0xe5, 0x46, 0x62, 0x1b, 0xdd, - 0xa8, 0x7c, 0x6a, 0xa1, 0x77, 0x61, 0x06, 0x28, 0x8f, 0x3e, 0xee, 0x63, 0x53, 0x90, 0x04, 0x53, - 0xa0, 0x51, 0x01, 0x66, 0x60, 0xcc, 0x19, 0xc3, 0x9c, 0x3b, 0x50, 0x36, 0x1b, 0x6c, 0xc2, 0x2c, - 0x50, 0xb7, 0x76, 0x73, 0x6e, 0x28, 0x4e, 0xd1, 0xa7, 0x13, 0x85, 0xf5, 0xf2, 0xb7, 0x60, 0x2a, - 0x38, 0xd5, 0x82, 0x05, 0xd8, 0x2b, 0xab, 0xc9, 0x6d, 0xf6, 0x7a, 0x99, 0x83, 0xd9, 0xc8, 0x8c, - 0xf2, 0x54, 0xb7, 0xed, 0x32, 0x19, 0x2a, 0x91, 0x3f, 0x7a, 0x89, 0x2e, 0x4b, 0xb8, 0xa1, 0x15, - 0x58, 0x13, 0x1b, 0x26, 0x2b, 0xea, 0x26, 0x6b, 0x98, 0x42, 0x5d, 0x56, 0xeb, 0xac, 0xa1, 0xd5, - 0xcc, 0xaa, 0xa0, 0x3e, 0xe6, 0x1b, 0x58, 0x2c, 0xb3, 0x30, 0x77, 0x62, 0x54, 0x02, 0xa5, 0xd4, - 0x2b, 0xd5, 0x83, 0xa4, 0x54, 0xfb, 0xdb, 0xc9, 0x24, 0x95, 0x8a, 0x94, 0x52, 0xa7, 0x88, 0x02, - 0x95, 0x59, 0xfa, 0x09, 0x82, 0xe9, 0xb8, 0x3c, 0xa3, 0x0f, 0xa2, 0x99, 0xeb, 0xd4, 0xcd, 0xe2, - 0x99, 0xb2, 0x81, 0x60, 0xed, 0xcb, 0xf8, 0xc0, 0xf9, 0x06, 0xec, 0x8f, 0x33, 0xe5, 0x3d, 0xa5, - 0x83, 0x23, 0x1e, 0x4a, 0xe8, 0xa5, 0x1f, 0x22, 0x98, 0x3c, 0xb1, 0xe7, 0xa1, 0x35, 0x00, 0x7f, - 0xfa, 0x78, 0xb1, 0xe4, 0x7f, 0xbd, 0xfd, 0x53, 0xf9, 0x52, 0xcc, 0xbd, 0xc9, 0x50, 0x20, 0x01, - 0x17, 0x4b, 0x3f, 0xa7, 0x60, 0xc4, 0x37, 0xa5, 0x59, 0xc8, 0x48, 0xd8, 0x10, 0x75, 0x99, 0xdc, - 0xeb, 0x75, 0x26, 0x5d, 0xe8, 0x4e, 0x5d, 0x50, 0x6c, 0x67, 0x8f, 0xc7, 0x36, 0x09, 0x12, 0xe9, - 0x8d, 0x5f, 0x2f, 0xd2, 0xd7, 0xc1, 0x33, 0x0d, 0xa0, 0xb1, 0xf9, 0x08, 0xeb, 0x2a, 0x0e, 0xec, - 0x6b, 0xdd, 0x0d, 0x6d, 0xa9, 0xc7, 0x26, 0xc4, 0xd7, 0xcb, 0xdf, 0x76, 0x4d, 0xfd, 0x10, 0x43, - 0xb7, 0x28, 0x27, 0x71, 0x54, 0x4c, 0x7f, 0x1f, 0xa6, 0x24, 0x2c, 0xc9, 0xa2, 0x60, 0x62, 0x29, - 0xe0, 0xcf, 0xd9, 0xf8, 0x5e, 0x3b, 0xd5, 0xdf, 0x2d, 0xcf, 0x36, 0xe4, 0xf0, 0xce, 0x00, 0x47, - 0x4b, 0x27, 0x24, 0xf4, 0x9f, 0x22, 0xc8, 0x76, 0x9d, 0x35, 0x04, 0x55, 0xa8, 0x3b, 0xdf, 0x9f, - 0xba, 0x7e, 0x9d, 0x2f, 0xca, 0x3b, 0x67, 0xf7, 0x7b, 0xdf, 0x47, 0x09, 0x37, 0x39, 0x7d, 0xe4, - 0x2c, 0x6f, 0xec, 0x66, 0x5f, 0x90, 0xfa, 0x68, 0xd3, 0x4f, 0x80, 0x56, 0x34, 0xad, 0x59, 0x15, - 0xc4, 0x80, 0x03, 0x97, 0x3e, 0x4f, 0xef, 0xf0, 0x7b, 0xae, 0x69, 0xd8, 0xfb, 0xc4, 0xe7, 0x4f, - 0x91, 0x17, 0xc0, 0x0b, 0xb7, 0xef, 0x95, 0xa8, 0x26, 0xfd, 0x14, 0xd6, 0x4f, 0x56, 0x09, 0x77, - 0x45, 0xdb, 0x96, 0xcd, 0xc3, 0xc0, 0x77, 0x0d, 0xff, 0x83, 0x6d, 0xff, 0x0f, 0xda, 0x57, 0xc3, - 0x35, 0x79, 0x37, 0x00, 0xe6, 0xbb, 0xf5, 0x3f, 0xe3, 0xfe, 0x00, 0xd6, 0xce, 0xea, 0x1e, 0xab, - 0x8e, 0xf7, 0x4c, 0x5f, 0xef, 0x2b, 0x67, 0xf0, 0x7e, 0xdb, 0x41, 0x7a, 0x15, 0x92, 0xf8, 0x64, - 0xf8, 0x53, 0x0b, 0xbd, 0x0f, 0xf3, 0x40, 0x77, 0x77, 0x11, 0x3e, 0x4f, 0x24, 0x0b, 0x6c, 0x11, - 0xa6, 0x60, 0xbc, 0x2b, 0x22, 0x65, 0x09, 0x6d, 0xc0, 0x12, 0x5c, 0x8c, 0xf2, 0x44, 0x2e, 0x18, - 0x22, 0x8d, 0xae, 0x7f, 0x66, 0xa1, 0x7f, 0x19, 0x82, 0xbf, 0x40, 0x90, 0xb2, 0x8d, 0x56, 0xfe, - 0x1c, 0xc1, 0xc7, 0xf6, 0x6e, 0x24, 0x26, 0x21, 0x8b, 0x69, 0x2f, 0xd3, 0x20, 0x17, 0x9b, 0x41, - 0xc5, 0x11, 0x7f, 0x8a, 0x42, 0xe9, 0xb4, 0x69, 0x5f, 0x9c, 0xf6, 0x95, 0x73, 0xdd, 0x29, 0x6a, - 0x7b, 0x3e, 0x39, 0x33, 0x8b, 0x69, 0x6f, 0xca, 0xc1, 0x8f, 0x11, 0xa4, 0x1e, 0x08, 0x0d, 0xbc, - 0xf2, 0x43, 0x04, 0x7f, 0x80, 0x60, 0x11, 0xe6, 0x4f, 0x06, 0x9a, 0x77, 0x8e, 0x5b, 0xe0, 0x02, - 0x2c, 0xc4, 0x44, 0xe9, 0x49, 0xdf, 0x86, 0xb7, 0xfa, 0x47, 0xe8, 0x29, 0x2e, 0xc2, 0xfc, 0xc9, - 0x90, 0x3c, 0xe1, 0x11, 0x82, 0xd4, 0xfe, 0xbd, 0x9d, 0x07, 0x2b, 0x7f, 0x8d, 0xe0, 0xaf, 0x10, - 0xbc, 0x0d, 0x8b, 0x31, 0xf1, 0xb4, 0x54, 0x53, 0xa8, 0xd7, 0xb1, 0x54, 0x4c, 0xff, 0x96, 0xfb, - 0x64, 0xc7, 0x16, 0xa3, 0xd8, 0x56, 0x04, 0x95, 0x97, 0x25, 0xb8, 0x14, 0xdf, 0xbf, 0x5d, 0xf3, - 0x95, 0x53, 0xbb, 0xb7, 0xab, 0xdb, 0xa3, 0x4b, 0x7d, 0xf9, 0x67, 0x09, 0x48, 0x3d, 0xd0, 0x24, - 0xbc, 0xf2, 0x77, 0x09, 0xf8, 0xdb, 0x04, 0xb0, 0xb1, 0x91, 0xb9, 0x29, 0x53, 0x1c, 0xdf, 0x51, - 0x94, 0x1c, 0xd9, 0x6f, 0x92, 0x73, 0x39, 0x98, 0x87, 0xb9, 0x18, 0x6d, 0x55, 0x93, 0x30, 0xac, - 0xc2, 0x62, 0x5c, 0xf7, 0xf7, 0x42, 0x5a, 0x00, 0x26, 0x4e, 0x9d, 0x40, 0x6d, 0xc3, 0xb7, 0x4e, - 0x19, 0xab, 0x5e, 0xa8, 0x6f, 0xc1, 0xe5, 0x53, 0x2c, 0x89, 0x03, 0x16, 0x16, 0x62, 0xc6, 0xb8, - 0x4f, 0xa3, 0x63, 0xb4, 0x09, 0xd0, 0x34, 0x0c, 0x39, 0x39, 0x5e, 0x01, 0x8f, 0x67, 0xa9, 0xc1, - 0xf2, 0xdb, 0x31, 0xbb, 0xe2, 0x29, 0x77, 0x57, 0x9c, 0xec, 0x58, 0x68, 0x78, 0x8b, 0x2d, 0xb1, - 0xd7, 0xd8, 0xed, 0xf2, 0x2e, 0xe4, 0xcf, 0x5a, 0x9f, 0x7a, 0x5e, 0x79, 0xf5, 0x57, 0x55, 0x23, - 0x14, 0x94, 0x7f, 0x8a, 0x8e, 0xbf, 0xc8, 0x0e, 0x7c, 0xfe, 0x45, 0x76, 0xe0, 0xab, 0x2f, 0xb2, - 0xe8, 0xc3, 0x4e, 0x16, 0xfd, 0xbc, 0x93, 0x45, 0xbf, 0xec, 0x64, 0xd1, 0x71, 0x27, 0x8b, 0x3e, - 0xef, 0x64, 0xd1, 0xaf, 0x3a, 0x59, 0xf4, 0xa2, 0x93, 0x1d, 0xf8, 0xaa, 0x93, 0x45, 0x7f, 0xfc, - 0x65, 0x76, 0xe0, 0xe8, 0xcb, 0x2c, 0x3a, 0xfe, 0x32, 0x3b, 0xf0, 0xf9, 0x97, 0xd9, 0x81, 0xdf, - 0xf9, 0xa0, 0xae, 0x35, 0x1f, 0xd7, 0xf3, 0xde, 0xc9, 0x6a, 0xbe, 0x65, 0xac, 0x91, 0x87, 0x9a, - 0xa6, 0x37, 0x56, 0x9b, 0xba, 0xd6, 0x96, 0x25, 0xac, 0xaf, 0x7a, 0xe2, 0xb5, 0x66, 0xb5, 0xae, - 0xad, 0xe1, 0x27, 0xa6, 0xf7, 0x77, 0x4c, 0x7d, 0xfe, 0xd4, 0xab, 0x3a, 0x44, 0xfe, 0x1a, 0x68, - 0xe3, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x51, 0x9f, 0x58, 0xe5, 0x18, 0x36, 0x00, 0x00, + // 3641 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x4f, 0x6c, 0xdb, 0x68, + 0x76, 0xf7, 0x27, 0xc9, 0x8e, 0xfc, 0x14, 0xdb, 0x34, 0xfd, 0x8f, 0xb6, 0x13, 0x45, 0xe3, 0x99, + 0xd9, 0x71, 0x1c, 0x5a, 0xb6, 0x64, 0x5b, 0x71, 0xb2, 0x3b, 0xe9, 0x58, 0x4e, 0x66, 0x12, 0x35, + 0x49, 0x03, 0x79, 0xd6, 0xed, 0x74, 0x81, 0xb2, 0x14, 0xf9, 0x49, 0xe1, 0x9a, 0x22, 0x09, 0x92, + 0x92, 0x63, 0x2c, 0x82, 0x4e, 0xa7, 0x7b, 0xda, 0xa2, 0xd8, 0x6d, 0x8a, 0x62, 0xd1, 0x01, 0x0a, + 0xec, 0x69, 0xbb, 0x98, 0x4b, 0x2f, 0x05, 0x0a, 0x94, 0x83, 0xc2, 0x1d, 0xa0, 0xe8, 0x62, 0xd0, + 0x83, 0x8f, 0xd3, 0x02, 0x45, 0x77, 0x34, 0x97, 0xf4, 0x36, 0xc7, 0x22, 0x87, 0xb6, 0xe0, 0xc7, + 0x3f, 0x22, 0x29, 0x4a, 0xf6, 0x76, 0x1a, 0x74, 0xa7, 0xf5, 0xc5, 0x26, 0xf9, 0xde, 0xfb, 0xbd, + 0xf7, 0xfd, 0x7b, 0xbf, 0xef, 0x9f, 0x60, 0xad, 0x8d, 0x8d, 0xbc, 0xa4, 0xae, 0x19, 0xc2, 0x63, + 0xdc, 0xe4, 0xd7, 0xda, 0x12, 0x3e, 0x34, 0xd6, 0x0c, 0x2c, 0xb4, 0x74, 0xdc, 0xc4, 0xc6, 0x63, + 0xce, 0x90, 0x4c, 0xbc, 0x66, 0x1e, 0x69, 0xd8, 0xc8, 0x6b, 0xba, 0x6a, 0xaa, 0xf4, 0xab, 0x8e, + 0x41, 0xde, 0x31, 0xc8, 0x13, 0x83, 0x7c, 0xc4, 0x60, 0x61, 0xb5, 0x21, 0x99, 0x8f, 0x5b, 0xb5, + 0xbc, 0xa0, 0x36, 0xd7, 0x1a, 0x6a, 0x43, 0x5d, 0x23, 0xb6, 0xb5, 0x56, 0x9d, 0xbc, 0x91, 0x17, + 0xf2, 0xe4, 0x60, 0x2e, 0x5c, 0x09, 0x07, 0x51, 0x97, 0x31, 0x36, 0x83, 0x4e, 0x17, 0x56, 0xc2, + 0x0a, 0x0a, 0x36, 0x0f, 0x55, 0xfd, 0x80, 0xab, 0x4b, 0x3a, 0x3e, 0xe4, 0x65, 0x39, 0xa4, 0x7b, + 0x2d, 0x5e, 0x57, 0x52, 0x4c, 0xac, 0xd7, 0x79, 0x21, 0x54, 0x9a, 0x85, 0xc5, 0xb0, 0xb2, 0xaa, + 0x99, 0x92, 0xaa, 0x78, 0xc2, 0x6c, 0x58, 0x18, 0xad, 0x8a, 0x85, 0xf9, 0xb0, 0x3c, 0x28, 0xba, + 0x14, 0xa9, 0x56, 0x5e, 0x96, 0x44, 0xde, 0xc4, 0xae, 0x34, 0xd7, 0x5b, 0xe9, 0x5c, 0xd8, 0xf5, + 0x6b, 0xb1, 0xcd, 0x22, 0x99, 0x98, 0x0b, 0x7a, 0xb9, 0x12, 0xa7, 0x15, 0x54, 0xb8, 0x1a, 0x55, + 0xd0, 0xcd, 0x16, 0x2f, 0x73, 0x6e, 0x9d, 0x04, 0x55, 0x97, 0xfe, 0x93, 0x86, 0xf1, 0x77, 0x64, + 0xb5, 0xc6, 0xcb, 0x7b, 0x1a, 0x16, 0xde, 0x3d, 0xd2, 0x30, 0xfd, 0x69, 0x02, 0x66, 0xda, 0xaa, + 0x6c, 0x62, 0x5d, 0xe7, 0x39, 0x01, 0xeb, 0xa6, 0x54, 0x97, 0xb0, 0xc8, 0x3d, 0x3e, 0x64, 0x0a, + 0x39, 0xb4, 0x3c, 0x5a, 0xfe, 0xd3, 0xc4, 0x3f, 0x5b, 0x88, 0x91, 0x8c, 0xf6, 0xea, 0xf6, 0xfa, + 0xfa, 0xfa, 0xaa, 0x81, 0x75, 0x09, 0x1b, 0xab, 0xb6, 0x85, 0xdd, 0x13, 0x3a, 0x16, 0xfa, 0x17, + 0x04, 0x8c, 0xd4, 0x38, 0x5c, 0xdd, 0x8a, 0x11, 0x43, 0x5f, 0x43, 0x58, 0x6c, 0x60, 0x05, 0xeb, + 0x92, 0xb0, 0x6a, 0x48, 0x4a, 0x43, 0xc6, 0xab, 0x8a, 0x24, 0x74, 0x85, 0x97, 0x3c, 0xa1, 0x8e, + 0x1b, 0x2d, 0x99, 0xd7, 0xc3, 0xd2, 0x89, 0x76, 0xf3, 0x90, 0xd7, 0x71, 0x00, 0xcb, 0xfd, 0x10, + 0xab, 0x7d, 0xf1, 0xa0, 0xdd, 0xec, 0xbe, 0xcd, 0xda, 0x6f, 0xcd, 0x96, 0x6c, 0x4a, 0x61, 0x2d, + 0xc6, 0xfe, 0x1e, 0x67, 0xff, 0xef, 0x16, 0x1a, 0xfa, 0x9b, 0x7f, 0x3b, 0x4e, 0xa6, 0xf4, 0x04, + 0x85, 0xec, 0x87, 0x61, 0x3d, 0xf9, 0x93, 0x04, 0xaa, 0x4e, 0x79, 0x95, 0xb6, 0xeb, 0xd5, 0xd9, + 0xdd, 0x43, 0xfa, 0xf7, 0x60, 0xbe, 0xc9, 0x1b, 0x26, 0xd6, 0x39, 0x45, 0x15, 0x31, 0x27, 0xa8, + 0x4a, 0x5d, 0x6a, 0xb4, 0x74, 0xde, 0x6e, 0x75, 0x66, 0x2b, 0x97, 0x5c, 0xce, 0x14, 0xaf, 0xe4, + 0xe3, 0xc6, 0xd6, 0x03, 0x62, 0xf5, 0x50, 0x15, 0x71, 0x79, 0x89, 0x38, 0x79, 0x86, 0x12, 0x54, + 0xd2, 0x7e, 0x4a, 0x3f, 0x43, 0xc3, 0x2b, 0xc9, 0x02, 0xbb, 0xd1, 0xf9, 0xc5, 0xdf, 0x27, 0x47, + 0x9e, 0x7d, 0x8c, 0x12, 0xe9, 0xa1, 0xea, 0x5c, 0xd3, 0xd7, 0xdf, 0x0d, 0xfa, 0xa0, 0xb7, 0xe1, + 0xa2, 0xdd, 0xe8, 0x6e, 0x00, 0x06, 0x93, 0xcc, 0x25, 0x97, 0x47, 0xcb, 0x33, 0x36, 0xd0, 0xc8, + 0x33, 0x94, 0xa4, 0xde, 0x47, 0x1e, 0x3a, 0x83, 0xaa, 0x19, 0x47, 0xd5, 0x46, 0x31, 0xe8, 0x0a, + 0xcc, 0xfb, 0xdd, 0xc0, 0x50, 0xeb, 0xa6, 0x5d, 0xa1, 0x5c, 0x1b, 0xeb, 0x86, 0x1d, 0x7a, 0x8a, + 0x74, 0x85, 0x71, 0xaf, 0x2e, 0x86, 0xf5, 0x24, 0xf3, 0x7e, 0xa2, 0x3a, 0xe7, 0x19, 0xec, 0xb9, + 0xfa, 0xfb, 0x8e, 0x3a, 0x7d, 0x17, 0x18, 0x55, 0xc3, 0x76, 0x48, 0x4a, 0x83, 0x33, 0x8e, 0x0c, + 0x13, 0x37, 0x7d, 0xa8, 0xe1, 0x58, 0xa8, 0x59, 0x5f, 0x7f, 0x8f, 0xa8, 0x7b, 0x48, 0xb7, 0x60, + 0x42, 0x51, 0xb9, 0x9a, 0xaa, 0x88, 0x9c, 0x88, 0xdb, 0x92, 0x80, 0x0d, 0xe6, 0x42, 0x0e, 0x2d, + 0x67, 0x8a, 0xd3, 0x91, 0x6a, 0xbc, 0xd3, 0xd4, 0xcc, 0xa3, 0xbb, 0x43, 0xd5, 0x31, 0x45, 0x2d, + 0xab, 0x8a, 0x78, 0xdb, 0x51, 0xa6, 0x39, 0xa0, 0x02, 0xc6, 0x9c, 0x2c, 0x19, 0x26, 0x93, 0x26, + 0x00, 0xab, 0x11, 0x00, 0x92, 0x8f, 0xf2, 0x6f, 0xdb, 0x7f, 0x03, 0x00, 0xf7, 0x25, 0xc3, 0xb4, + 0x87, 0x49, 0x39, 0x75, 0x62, 0x21, 0x74, 0x77, 0xa8, 0x3a, 0x5e, 0xf3, 0x85, 0xb6, 0x8c, 0xbe, + 0x0f, 0xb3, 0x22, 0xae, 0xf3, 0x2d, 0xd9, 0xf4, 0x06, 0x9c, 0xdb, 0xea, 0x0c, 0x0c, 0x88, 0x13, + 0x55, 0xa7, 0x5d, 0xab, 0x87, 0x8e, 0x91, 0xd3, 0x8a, 0xf4, 0x13, 0x98, 0x11, 0x5a, 0x86, 0xa9, + 0x36, 0xa3, 0x60, 0x19, 0x02, 0xf6, 0xad, 0xfc, 0x19, 0xf2, 0x72, 0x7e, 0xaf, 0x69, 0x84, 0x50, + 0xdd, 0xbe, 0xe1, 0x16, 0x01, 0x55, 0xa7, 0x1c, 0x17, 0x61, 0xcf, 0xaf, 0xc1, 0x05, 0x5e, 0x14, + 0x75, 0x6c, 0x18, 0x0c, 0x4d, 0x5a, 0x08, 0x02, 0xad, 0xe3, 0x89, 0xe8, 0x1d, 0xc8, 0x08, 0xaa, + 0xaa, 0x8b, 0x92, 0xc2, 0x9b, 0xd8, 0x60, 0xa6, 0x48, 0x54, 0xd1, 0x1e, 0x4d, 0x82, 0xd8, 0xed, + 0xaa, 0x55, 0x83, 0x36, 0xf4, 0x43, 0x98, 0x93, 0xd5, 0x86, 0xc1, 0x19, 0xa6, 0x8e, 0xf9, 0xa6, + 0xdd, 0x41, 0x44, 0xc9, 0xe0, 0x6b, 0x32, 0x16, 0x19, 0x66, 0x40, 0x8d, 0x25, 0xaa, 0x33, 0xb6, + 0xd9, 0x9e, 0x67, 0x75, 0xdb, 0x35, 0xa2, 0x7f, 0x0b, 0x2e, 0xca, 0x6a, 0x83, 0xd3, 0xb1, 0x80, + 0xa5, 0x36, 0xd6, 0x99, 0x79, 0x02, 0xb2, 0x14, 0x5b, 0x53, 0xbf, 0x51, 0xfb, 0x2e, 0x16, 0xcc, + 0x2a, 0xae, 0x93, 0x26, 0x9d, 0xf8, 0xe8, 0x69, 0xc8, 0xf4, 0x6e, 0xa2, 0x9a, 0x91, 0xd5, 0x46, + 0xd5, 0x7d, 0xa5, 0x7f, 0x0d, 0x12, 0xc6, 0x21, 0xb3, 0x44, 0xf0, 0xae, 0xc6, 0xe2, 0xed, 0x47, + 0xfa, 0xbf, 0xd3, 0x53, 0xbe, 0xb4, 0x10, 0xaa, 0x26, 0x8c, 0x43, 0xfa, 0x16, 0x24, 0x54, 0x83, + 0x79, 0x95, 0x00, 0x2c, 0xc7, 0x07, 0x14, 0xee, 0xf5, 0x41, 0x7b, 0xd5, 0xa0, 0x7f, 0x07, 0xc6, + 0x08, 0x6b, 0x10, 0x56, 0x53, 0x78, 0x99, 0x79, 0x7e, 0xe1, 0xcc, 0x85, 0x9b, 0xfe, 0xe8, 0x69, + 0xd8, 0xf8, 0xb9, 0x8d, 0x7a, 0xd1, 0xfe, 0x74, 0xcf, 0xfd, 0x42, 0x3f, 0x02, 0xc6, 0xeb, 0xbb, + 0x35, 0x59, 0x15, 0x0e, 0xb0, 0xc8, 0x19, 0x58, 0x77, 0x46, 0xd9, 0xd5, 0x01, 0x6d, 0x91, 0xac, + 0x7a, 0x7d, 0xbe, 0xec, 0x98, 0xed, 0xb9, 0x56, 0xf4, 0x7b, 0x40, 0xf5, 0x20, 0xb1, 0x04, 0x89, + 0x8d, 0x1d, 0x6e, 0x11, 0x7b, 0x6f, 0xb4, 0xdd, 0x4d, 0x56, 0x27, 0x6a, 0x11, 0xe8, 0x16, 0x2c, + 0xa8, 0xf5, 0xba, 0x2c, 0x29, 0x98, 0x33, 0x5a, 0x7a, 0x5b, 0x6a, 0xf3, 0x35, 0x49, 0x96, 0xcc, + 0x23, 0xae, 0xa9, 0x8a, 0x98, 0x59, 0x23, 0x4e, 0x0a, 0xf1, 0x15, 0xe3, 0x98, 0xed, 0x05, 0xad, + 0x1e, 0xa8, 0x62, 0xb0, 0xb5, 0x18, 0xb5, 0x8f, 0x0e, 0xfd, 0x3d, 0xb8, 0xa4, 0x61, 0xbd, 0xae, + 0xea, 0x4d, 0x5e, 0x11, 0x30, 0x87, 0x95, 0xc7, 0xf6, 0xff, 0x26, 0x56, 0x4c, 0xc7, 0x71, 0x91, + 0x38, 0xde, 0x88, 0x75, 0xfc, 0xa8, 0x6b, 0x78, 0xa7, 0x6b, 0x17, 0x71, 0xbd, 0xa0, 0xf5, 0xd5, + 0xa2, 0x0f, 0x80, 0x39, 0x68, 0xd5, 0xb0, 0xae, 0x60, 0x13, 0x1b, 0x5c, 0x4b, 0x6b, 0xe8, 0xbc, + 0x88, 0x39, 0x51, 0xe7, 0x25, 0x85, 0xd9, 0x20, 0x8e, 0xaf, 0xc5, 0x3a, 0xfe, 0x75, 0xdf, 0xe8, + 0xdb, 0x8e, 0xcd, 0x6d, 0xdb, 0xc4, 0x75, 0x38, 0x7b, 0x10, 0x2b, 0xbd, 0xf9, 0x23, 0xf4, 0x89, + 0x85, 0xfe, 0x10, 0xc1, 0x6b, 0x30, 0x55, 0xe6, 0x0d, 0x49, 0xc8, 0x85, 0x99, 0x65, 0x6c, 0xf3, + 0x06, 0xbb, 0xb5, 0xc1, 0x6e, 0xb0, 0x85, 0x6d, 0xb6, 0x70, 0x03, 0xe6, 0x80, 0xb6, 0xd3, 0x64, + 0x44, 0x09, 0x95, 0x60, 0x01, 0x66, 0xdc, 0xcc, 0x12, 0x95, 0xdd, 0x80, 0x3c, 0xcc, 0xee, 0x88, + 0x6d, 0xbb, 0x88, 0x51, 0xc3, 0xe9, 0xe2, 0x06, 0xbb, 0xb1, 0xc9, 0x6e, 0x6c, 0xb1, 0x5b, 0x05, + 0x76, 0x73, 0x9d, 0xdd, 0xbc, 0xce, 0x6e, 0xad, 0x97, 0xb3, 0x90, 0x21, 0xd9, 0x5b, 0x78, 0xac, + 0x4a, 0x02, 0xa6, 0x27, 0x8e, 0x2d, 0x74, 0xe1, 0xc4, 0x42, 0x23, 0x1d, 0x0b, 0x25, 0xaf, 0xb3, + 0xdb, 0xe5, 0x37, 0x80, 0xf6, 0xf3, 0x64, 0xbd, 0xe1, 0xa9, 0x4d, 0x1e, 0x5b, 0x08, 0x4e, 0x2c, + 0x34, 0xda, 0xb1, 0xd0, 0x70, 0x61, 0x9d, 0x2d, 0x14, 0xca, 0x57, 0x61, 0x9a, 0x24, 0x1d, 0x6f, + 0xa8, 0x07, 0x55, 0x99, 0x13, 0x0b, 0xcd, 0xd9, 0xaa, 0xc5, 0x4d, 0xb6, 0xb8, 0x55, 0x5e, 0x85, + 0xb9, 0x68, 0x17, 0xf6, 0xb4, 0xe9, 0x63, 0x0b, 0x5d, 0x3d, 0xb1, 0xd0, 0x72, 0xc7, 0x42, 0x23, + 0x9b, 0x05, 0x36, 0xb7, 0xb9, 0x59, 0x49, 0xa5, 0x11, 0x95, 0xa8, 0xa4, 0xd2, 0x09, 0x2a, 0x59, + 0x49, 0xa5, 0x47, 0xa8, 0x0b, 0x95, 0x54, 0x7a, 0x94, 0x82, 0x4a, 0x2a, 0x3d, 0x47, 0x31, 0x95, + 0x54, 0x7a, 0x99, 0xba, 0x5a, 0x49, 0xa5, 0x57, 0xa8, 0x6b, 0x95, 0x54, 0x7a, 0x9d, 0x2a, 0x2c, + 0xfd, 0x74, 0x0c, 0xc6, 0x77, 0x75, 0xcc, 0x9b, 0xd8, 0x9f, 0x81, 0x15, 0x07, 0x4e, 0xc0, 0xe2, + 0x27, 0x1a, 0xdf, 0xf9, 0xea, 0x13, 0x8d, 0xfe, 0x93, 0x88, 0x57, 0xe2, 0x26, 0x11, 0xe1, 0xd9, + 0xc2, 0x57, 0xe5, 0xe5, 0xf7, 0xfe, 0x87, 0x78, 0xf9, 0xa5, 0x33, 0xb2, 0xfe, 0x12, 0x19, 0xb9, + 0x1f, 0x17, 0x33, 0x11, 0x2e, 0xfe, 0x7f, 0xca, 0xbf, 0x5f, 0x2b, 0x7a, 0xfa, 0x5f, 0x9f, 0x2c, + 0xa8, 0x2f, 0x85, 0x1f, 0x07, 0x30, 0x63, 0xeb, 0xa5, 0x31, 0xe3, 0xaf, 0x0e, 0x27, 0x4e, 0x7e, + 0x7a, 0x2b, 0xb2, 0x5e, 0xee, 0xe1, 0xa4, 0x0f, 0x5e, 0xa0, 0xe0, 0x87, 0x32, 0x1b, 0xcb, 0x49, + 0xb3, 0x1f, 0xbc, 0x40, 0x31, 0xdf, 0xcb, 0xeb, 0x7d, 0x88, 0x89, 0xf9, 0xe0, 0x05, 0x8a, 0x95, + 0x94, 0x4b, 0xfd, 0xf9, 0x69, 0xf1, 0x83, 0x17, 0xa8, 0x9f, 0xf0, 0x54, 0xa2, 0xca, 0x52, 0x57, + 0x7c, 0xba, 0xb2, 0x89, 0xea, 0x2f, 0xc6, 0x60, 0xa2, 0x8a, 0x35, 0x99, 0x17, 0xce, 0x99, 0xea, + 0x9c, 0xa9, 0xce, 0x99, 0xea, 0x9c, 0xa9, 0xce, 0x99, 0xea, 0x9c, 0xa9, 0x7e, 0x15, 0x99, 0xea, + 0x9f, 0xc6, 0x20, 0xf3, 0x0e, 0x36, 0xbf, 0xd6, 0x2c, 0x75, 0xf3, 0xd4, 0xdd, 0xd7, 0xfe, 0xbb, + 0xad, 0xdb, 0xa7, 0xed, 0xb6, 0xbe, 0xb4, 0xdd, 0xd5, 0x73, 0x6e, 0x3c, 0xe7, 0xc6, 0xd3, 0xb8, + 0xf1, 0x5b, 0x00, 0xe4, 0x48, 0xcb, 0x30, 0x79, 0x13, 0x33, 0xd9, 0x1c, 0x5a, 0x1e, 0x2f, 0x5e, + 0x8e, 0x2b, 0xeb, 0x9e, 0x64, 0xe2, 0x3d, 0x5b, 0xa9, 0x3a, 0x6a, 0x78, 0x8f, 0x5f, 0x2f, 0x66, + 0x3d, 0x27, 0xb6, 0x97, 0x40, 0x6c, 0xd3, 0x3d, 0xc4, 0xf6, 0xfc, 0x16, 0xfa, 0x3f, 0xcb, 0x6d, + 0xd1, 0xed, 0xc2, 0x3f, 0xa3, 0x61, 0xae, 0x4f, 0xde, 0xa1, 0xdf, 0x84, 0x71, 0x6f, 0x6c, 0xb8, + 0xd9, 0x2c, 0x31, 0x38, 0x79, 0xbb, 0xda, 0x6e, 0x7e, 0xfa, 0x0e, 0x80, 0x21, 0xab, 0x9e, 0x69, + 0x92, 0x98, 0x6e, 0x9e, 0x29, 0x11, 0xee, 0x2b, 0x71, 0x07, 0x4b, 0x43, 0xd5, 0x51, 0x43, 0x56, + 0x5d, 0xf0, 0xdb, 0x40, 0x7b, 0xb1, 0x19, 0xb2, 0xe4, 0x39, 0x99, 0x1f, 0x98, 0xba, 0x29, 0xd7, + 0x62, 0x4f, 0x96, 0x82, 0x21, 0xfa, 0xd6, 0x0b, 0x5f, 0x39, 0x44, 0x64, 0x87, 0xe8, 0x81, 0x07, + 0x52, 0x8b, 0x7f, 0x6d, 0xc0, 0x73, 0x35, 0x3c, 0x30, 0x87, 0x7a, 0xa9, 0xe5, 0x9e, 0x67, 0xe6, + 0x22, 0x62, 0x18, 0xef, 0x22, 0x11, 0x32, 0x1c, 0x21, 0x38, 0xa5, 0x33, 0x85, 0xec, 0xa3, 0x45, + 0xce, 0x1c, 0x13, 0xd5, 0x31, 0x29, 0x28, 0xa2, 0xcb, 0x30, 0xa9, 0xa8, 0x3e, 0x91, 0x69, 0xaa, + 0x2c, 0x09, 0x47, 0x2e, 0xed, 0xf6, 0x4b, 0x86, 0x13, 0x8a, 0xea, 0x76, 0xa1, 0x47, 0x44, 0x9d, + 0x36, 0x60, 0x8e, 0x17, 0x4c, 0xa9, 0x8d, 0xc3, 0x38, 0x12, 0x36, 0x98, 0x51, 0x82, 0x74, 0x23, + 0x82, 0x14, 0xbd, 0x8d, 0x91, 0xdf, 0x21, 0xe6, 0x41, 0x54, 0x09, 0x1b, 0x6e, 0x66, 0x9c, 0xe1, + 0xe3, 0x84, 0xf4, 0x0f, 0x11, 0xbc, 0xe2, 0x7a, 0x75, 0x53, 0x95, 0xe8, 0xe3, 0x75, 0xfd, 0x2f, + 0x12, 0xff, 0xe5, 0xb3, 0xf9, 0x77, 0x53, 0x93, 0xf8, 0xb6, 0xfb, 0x39, 0x12, 0x48, 0x96, 0x1f, + 0xa8, 0x45, 0xbf, 0x05, 0x94, 0xa2, 0x72, 0x75, 0x55, 0x3f, 0xe4, 0x75, 0x91, 0xd3, 0x74, 0xf5, + 0xc9, 0x91, 0x3b, 0x25, 0x88, 0xaf, 0xc9, 0x54, 0x75, 0x5c, 0x51, 0xdf, 0x76, 0xd4, 0x1f, 0xd9, + 0xda, 0xf4, 0x1f, 0x20, 0xb8, 0xec, 0x96, 0x29, 0x04, 0xd3, 0x2d, 0xcf, 0x45, 0x82, 0x77, 0xeb, + 0x6c, 0xe5, 0x09, 0x62, 0x87, 0xca, 0x92, 0xaa, 0x2e, 0xf0, 0x7d, 0x35, 0xe8, 0x07, 0x30, 0x17, + 0xf6, 0xce, 0xcb, 0xb2, 0x7a, 0x68, 0xff, 0x65, 0xc6, 0x06, 0x16, 0x67, 0xba, 0x1e, 0x80, 0xdb, + 0xb1, 0x8d, 0x76, 0x64, 0xd9, 0xed, 0x61, 0x0d, 0x92, 0x75, 0xbd, 0x0e, 0xc2, 0x4c, 0x0c, 0x00, + 0x1a, 0xb6, 0x7b, 0x98, 0x93, 0xa5, 0xdd, 0x46, 0xa7, 0xeb, 0x30, 0x15, 0x06, 0x70, 0x46, 0x04, + 0x35, 0x60, 0x10, 0x87, 0x00, 0x76, 0x55, 0x45, 0xc1, 0x82, 0x3d, 0x78, 0x7d, 0xca, 0x1d, 0xae, + 0x4e, 0x36, 0x82, 0x2a, 0x64, 0x34, 0x6c, 0xc1, 0x58, 0xad, 0xa1, 0x71, 0xba, 0xda, 0xb2, 0x67, + 0xef, 0x92, 0xe8, 0x1e, 0x5f, 0x4f, 0x1e, 0x5b, 0x08, 0x3d, 0xb7, 0x10, 0x72, 0xef, 0x6e, 0x68, + 0xa8, 0x9a, 0xa9, 0x35, 0xb4, 0x2a, 0x51, 0xbb, 0x27, 0xd2, 0xdf, 0x04, 0xca, 0x36, 0xd3, 0x30, + 0xd6, 0x39, 0x6f, 0x9a, 0x36, 0xd5, 0xcf, 0x72, 0xbc, 0xd6, 0xd0, 0x1e, 0x61, 0xac, 0xef, 0xb8, + 0x13, 0xb8, 0x5b, 0x30, 0xd6, 0x96, 0x34, 0xae, 0xad, 0xeb, 0x9a, 0x43, 0xb4, 0xd3, 0x64, 0x5a, + 0xb3, 0x10, 0x29, 0xd5, 0xbe, 0xa4, 0xed, 0xeb, 0xba, 0x46, 0xf8, 0x34, 0xd3, 0x76, 0x5e, 0x08, + 0x81, 0x7e, 0x13, 0xa6, 0xcc, 0x96, 0xa2, 0x60, 0x99, 0x13, 0x31, 0x2f, 0x72, 0xa6, 0xd4, 0xc4, + 0x6a, 0xcb, 0x64, 0x72, 0x39, 0xb4, 0x3c, 0x56, 0xce, 0x90, 0xcb, 0x1a, 0x2b, 0x29, 0xe6, 0x27, + 0xff, 0x01, 0xd5, 0x49, 0x47, 0xef, 0x36, 0xe6, 0xc5, 0x77, 0x1d, 0x2d, 0xbb, 0xad, 0x8d, 0xa6, + 0x9d, 0xa8, 0xdc, 0xea, 0xe1, 0xb4, 0x56, 0x4d, 0x96, 0x04, 0x4e, 0xd2, 0x5c, 0xf2, 0x8d, 0x6f, + 0xa2, 0x91, 0xea, 0xb4, 0xd1, 0xec, 0x56, 0xea, 0x23, 0x62, 0x74, 0x4f, 0xa3, 0xdf, 0x81, 0xe9, + 0x08, 0x5c, 0xdb, 0xb4, 0xb1, 0x36, 0x07, 0x62, 0x4d, 0x86, 0xb0, 0xda, 0xe6, 0x3d, 0x8d, 0xde, + 0x81, 0xa9, 0x68, 0x8d, 0x72, 0xed, 0x12, 0x53, 0x22, 0x95, 0x4a, 0x07, 0x2b, 0x75, 0x58, 0x4f, + 0xbe, 0x8f, 0x50, 0x95, 0x0a, 0xd7, 0xea, 0x7e, 0xe9, 0xe6, 0x3f, 0xa2, 0x4f, 0x2c, 0xf4, 0x0f, + 0x08, 0x2e, 0xf7, 0x3b, 0x43, 0x4c, 0x15, 0xd8, 0xe2, 0x26, 0x64, 0x61, 0xce, 0x4f, 0x96, 0xd1, + 0x43, 0xc6, 0xcd, 0x65, 0x04, 0x59, 0x98, 0xdd, 0xb3, 0x93, 0xab, 0x64, 0x1e, 0x45, 0xed, 0xaf, + 0xb3, 0x85, 0x75, 0x60, 0x80, 0x76, 0xba, 0x5a, 0xae, 0x5b, 0x06, 0x83, 0x4e, 0x14, 0x36, 0xe1, + 0x75, 0xb8, 0x6c, 0x4f, 0x43, 0x73, 0x0f, 0xb0, 0xf1, 0x38, 0xf7, 0x8e, 0xae, 0xb6, 0xb4, 0x08, + 0x40, 0x62, 0x6b, 0x7d, 0x19, 0xc1, 0xeb, 0x7d, 0xcf, 0x31, 0x33, 0xe4, 0x74, 0x94, 0x2d, 0xae, + 0xb3, 0x1b, 0xc5, 0xf2, 0x65, 0x97, 0x61, 0xbb, 0xa7, 0x97, 0x09, 0x3b, 0xa3, 0x77, 0x2c, 0x94, + 0x2c, 0xb2, 0x1b, 0xe5, 0x2b, 0x2e, 0xbb, 0x75, 0x8f, 0x22, 0xe7, 0x4f, 0x2c, 0xc4, 0x90, 0xa3, + 0xc8, 0x2d, 0xb6, 0x58, 0x2a, 0xbf, 0x0a, 0x54, 0x80, 0x99, 0xba, 0x28, 0xc3, 0x27, 0x16, 0x4a, + 0xd9, 0x28, 0x5b, 0x6c, 0xa9, 0x7c, 0x0d, 0x66, 0xc2, 0x54, 0x10, 0x3c, 0xad, 0x4c, 0x9f, 0x58, + 0xe8, 0x42, 0xc7, 0x42, 0x23, 0xdb, 0x6c, 0xf1, 0x3a, 0x7b, 0xa3, 0xcc, 0xc2, 0x74, 0x38, 0x4f, + 0xb8, 0xba, 0xd3, 0xc7, 0x16, 0xca, 0x9c, 0x58, 0x08, 0x3a, 0x16, 0x4a, 0x17, 0x0a, 0x6c, 0xa1, + 0xc8, 0x16, 0x36, 0xca, 0x79, 0x98, 0x89, 0x0c, 0x61, 0x57, 0x7d, 0xe6, 0xd8, 0x42, 0x13, 0x3f, + 0xb7, 0x10, 0x3a, 0xb1, 0xd0, 0x38, 0x39, 0x65, 0xdd, 0x62, 0x0b, 0x76, 0x28, 0xb3, 0x64, 0xaa, + 0x4f, 0x38, 0xad, 0x61, 0xd7, 0x5e, 0xb0, 0x70, 0x9b, 0x27, 0x16, 0x2a, 0xda, 0xca, 0x5b, 0x45, + 0x76, 0xab, 0xe0, 0xcf, 0x84, 0x18, 0x6a, 0xbe, 0x92, 0x4a, 0xa7, 0xa8, 0xe1, 0x4a, 0x2a, 0x7d, + 0x81, 0x4a, 0x57, 0x52, 0x69, 0xa0, 0x32, 0x95, 0x54, 0x7a, 0x9c, 0x9a, 0xa8, 0xa4, 0xd2, 0x97, + 0xa8, 0xcb, 0x95, 0x54, 0xfa, 0x32, 0x95, 0xf5, 0xd7, 0xfd, 0x57, 0xa8, 0x5c, 0x25, 0x95, 0x2e, + 0x52, 0x1b, 0x4b, 0x7f, 0x09, 0x30, 0x11, 0xe1, 0x79, 0xfa, 0xc7, 0x08, 0x46, 0x64, 0xbe, 0x86, + 0x65, 0x83, 0x41, 0x64, 0xd5, 0xfe, 0xd6, 0x7f, 0x67, 0xba, 0x90, 0xbf, 0x4f, 0x20, 0xee, 0x28, + 0xa6, 0x7e, 0x54, 0x7e, 0xf3, 0xc3, 0x8f, 0x51, 0x0a, 0x12, 0xce, 0x75, 0xa5, 0xcc, 0x87, 0x28, + 0xbd, 0x34, 0xa2, 0xa7, 0x28, 0xc4, 0xbc, 0x45, 0xba, 0xf2, 0x87, 0x28, 0x41, 0x51, 0x9e, 0x64, + 0xc5, 0x95, 0x90, 0xab, 0x5a, 0x3f, 0x70, 0xae, 0x6a, 0xb9, 0xe1, 0xd0, 0x8b, 0x90, 0x6c, 0x4b, + 0x9a, 0x7b, 0xfd, 0x69, 0xd4, 0xcd, 0x2d, 0x4f, 0x50, 0xd5, 0xfe, 0x4a, 0xbf, 0x02, 0x23, 0x24, + 0xa1, 0x94, 0x98, 0xc9, 0xd0, 0xe5, 0x1b, 0x7b, 0x98, 0x0c, 0xdb, 0x99, 0xa3, 0x44, 0x5f, 0x05, + 0x50, 0xf8, 0x26, 0xb6, 0x27, 0x94, 0x58, 0x27, 0x13, 0x8b, 0x10, 0x4c, 0x40, 0x48, 0xaf, 0xc1, + 0x58, 0xf7, 0xcd, 0x06, 0xa5, 0x7b, 0x40, 0x2f, 0x76, 0x15, 0xf6, 0x4b, 0x2e, 0x0d, 0xda, 0x2b, + 0x34, 0x49, 0x70, 0x32, 0xa9, 0x31, 0x70, 0x42, 0x31, 0x64, 0xd3, 0xe0, 0x1e, 0x51, 0x27, 0x09, + 0xd5, 0xa0, 0x7f, 0x17, 0xc6, 0xc2, 0xe6, 0xf1, 0xb3, 0x88, 0x3e, 0x0b, 0xeb, 0x00, 0x52, 0x60, + 0x4b, 0xe0, 0xa2, 0x11, 0xf4, 0x70, 0x07, 0xa6, 0x14, 0x95, 0x6b, 0x97, 0x22, 0x61, 0x4e, 0x0c, + 0x9e, 0x52, 0x2a, 0xea, 0x7e, 0x29, 0x14, 0x28, 0x0f, 0x94, 0x0b, 0xd0, 0x2e, 0x79, 0x18, 0x0e, + 0x27, 0x6d, 0xf5, 0xc4, 0x1a, 0xba, 0x47, 0xe9, 0x46, 0xb9, 0x5f, 0x8a, 0xc4, 0x89, 0xaa, 0xe3, + 0x46, 0x48, 0xe2, 0x46, 0x2a, 0x0a, 0x9c, 0x20, 0xb7, 0xc8, 0x96, 0x12, 0x19, 0x0a, 0x03, 0xe7, + 0x15, 0x09, 0x3b, 0xd2, 0xdb, 0xc2, 0xae, 0x63, 0x40, 0x12, 0x0f, 0x2d, 0x00, 0xd5, 0x83, 0x71, + 0xf1, 0xcc, 0xcb, 0xf2, 0xa9, 0x8f, 0x9e, 0xf6, 0x98, 0xdf, 0x4d, 0x54, 0xc7, 0xc5, 0xb0, 0x93, + 0x3f, 0x46, 0xb0, 0x10, 0x55, 0xeb, 0x4e, 0x87, 0x99, 0x31, 0x32, 0x86, 0xce, 0xe2, 0x6f, 0xfd, + 0xa3, 0xa7, 0x93, 0x3d, 0xb7, 0x70, 0x43, 0x49, 0xff, 0x19, 0xf2, 0x2e, 0x50, 0x3a, 0xb7, 0x0f, + 0xe7, 0xc2, 0xa1, 0xf8, 0x19, 0x7d, 0xe1, 0x06, 0x64, 0x02, 0xe3, 0x8f, 0xa6, 0x20, 0x79, 0x80, + 0x8f, 0x18, 0x44, 0xf6, 0x50, 0xec, 0x47, 0x7a, 0x1a, 0x86, 0xdb, 0xbc, 0xdc, 0xc2, 0x64, 0xbd, + 0x33, 0x5a, 0x75, 0x5e, 0x6e, 0x26, 0xb6, 0xd1, 0xcd, 0xca, 0x27, 0x16, 0x7a, 0x1b, 0x66, 0x80, + 0xf2, 0xe8, 0xe3, 0x01, 0x36, 0x79, 0x91, 0x37, 0x79, 0x1a, 0x15, 0x60, 0x06, 0xc6, 0x9c, 0x36, + 0xcc, 0xb9, 0x0d, 0x65, 0xb3, 0xc1, 0x26, 0xcc, 0x02, 0x75, 0x7b, 0x37, 0xe7, 0x86, 0xe2, 0x24, + 0x7d, 0x3a, 0x51, 0x58, 0x2f, 0x7f, 0x03, 0xa6, 0x82, 0x5d, 0x2d, 0x98, 0x80, 0xbd, 0xb4, 0x9a, + 0xdc, 0x66, 0x6f, 0x94, 0x7f, 0x13, 0x66, 0x23, 0x3d, 0xca, 0x53, 0x7d, 0xd3, 0x4e, 0x93, 0xa1, + 0x14, 0xf9, 0x83, 0x17, 0x68, 0x59, 0xc4, 0x4d, 0xb5, 0xc0, 0x9a, 0xd8, 0x30, 0x59, 0x41, 0x37, + 0x59, 0xc3, 0xe4, 0x1b, 0x92, 0xd2, 0x60, 0x0d, 0xb5, 0x6e, 0xd6, 0x78, 0xe5, 0x80, 0x6b, 0x62, + 0x81, 0xd5, 0x74, 0x55, 0x2c, 0xb3, 0x30, 0xd7, 0xd3, 0x34, 0x81, 0x7c, 0xea, 0xe5, 0xeb, 0x61, + 0x92, 0xaf, 0xfd, 0x35, 0x65, 0x92, 0x4a, 0x45, 0xf2, 0xa9, 0x93, 0x49, 0x81, 0xca, 0x2c, 0xfd, + 0x10, 0xc1, 0x74, 0xdc, 0x60, 0xa3, 0x0f, 0xa3, 0xc3, 0xd7, 0x49, 0x9e, 0xc5, 0x33, 0x0d, 0x09, + 0x82, 0xb5, 0x2f, 0xe1, 0x43, 0x67, 0xd7, 0xd9, 0x6f, 0x6c, 0xca, 0x7b, 0x4a, 0x07, 0x9b, 0x3d, + 0x34, 0xaa, 0x97, 0xbe, 0x8f, 0x60, 0xb2, 0x67, 0xe1, 0x43, 0xab, 0x00, 0x7e, 0x1f, 0xf2, 0x62, + 0xc9, 0xff, 0x72, 0x8b, 0xa8, 0xf2, 0x95, 0x98, 0x3b, 0xaf, 0xa1, 0x40, 0x02, 0x2e, 0x96, 0x7e, + 0x46, 0xc1, 0xa8, 0x6f, 0x4a, 0xb3, 0x90, 0x11, 0xb1, 0x21, 0xe8, 0x12, 0xb9, 0xad, 0xed, 0xf4, + 0xbc, 0xd0, 0x7d, 0xc8, 0xa0, 0xd8, 0x1e, 0x42, 0x1e, 0xe5, 0x24, 0x48, 0xa4, 0x37, 0x7f, 0xb9, + 0x48, 0x5f, 0x06, 0xd9, 0x34, 0x81, 0xc6, 0xe6, 0x63, 0xb2, 0x9d, 0x12, 0x18, 0xcd, 0xc3, 0xb1, + 0xab, 0xd1, 0x9e, 0x51, 0x9b, 0xbf, 0xe3, 0x9a, 0xfa, 0x21, 0x86, 0x6e, 0xc0, 0x4e, 0xe2, 0xa8, + 0x98, 0xfe, 0x2e, 0x4c, 0x89, 0x58, 0x94, 0x04, 0xde, 0xc4, 0x62, 0xc0, 0x9f, 0xb3, 0xfa, 0xbd, + 0x7e, 0xaa, 0xbf, 0xdb, 0x9e, 0x6d, 0xc8, 0xe1, 0xdd, 0xa1, 0x2a, 0x2d, 0xf6, 0x48, 0xe8, 0x3f, + 0x41, 0x90, 0xed, 0x3a, 0x6b, 0xf2, 0x0a, 0xdf, 0x70, 0x76, 0xbc, 0xba, 0x7e, 0x9d, 0x3d, 0xec, + 0x9d, 0xb3, 0xfb, 0x7d, 0xe0, 0xa3, 0x84, 0x8b, 0x9c, 0x3e, 0x76, 0xe6, 0x38, 0x76, 0xb1, 0x2f, + 0x89, 0x03, 0xb4, 0xe9, 0x27, 0x40, 0xcb, 0xaa, 0xaa, 0xd5, 0x78, 0x21, 0xe0, 0xc0, 0xe5, 0xd0, + 0xd3, 0x2b, 0xfc, 0xbe, 0x6b, 0x1a, 0xf6, 0x3e, 0xf1, 0xd9, 0x53, 0xe4, 0x05, 0xf0, 0xdc, 0xad, + 0x7b, 0x39, 0xaa, 0x49, 0x3f, 0x85, 0xf5, 0xde, 0x2c, 0xe1, 0x4e, 0x6b, 0xdb, 0x92, 0x79, 0x14, + 0xd8, 0xdc, 0xf0, 0xb7, 0x88, 0x07, 0x6f, 0xa1, 0x5f, 0x0b, 0x27, 0xe6, 0xdd, 0x00, 0x98, 0xef, + 0xd6, 0xdf, 0x38, 0xfe, 0x1e, 0xac, 0x9d, 0xd5, 0x3d, 0x56, 0x1c, 0xef, 0x99, 0x81, 0xde, 0x57, + 0xce, 0xe0, 0xfd, 0x8e, 0x83, 0xf4, 0x55, 0x98, 0xe2, 0xe3, 0x0b, 0x9f, 0x58, 0xe8, 0x5d, 0x98, + 0x07, 0xba, 0xbb, 0x94, 0xf0, 0xc9, 0x22, 0x59, 0x60, 0x8b, 0x30, 0x05, 0xe3, 0x5d, 0x11, 0x49, + 0x4b, 0x68, 0x03, 0x96, 0xe0, 0x72, 0x94, 0x2c, 0x72, 0xc1, 0x10, 0x69, 0x74, 0xe3, 0x53, 0x0b, + 0xfd, 0xeb, 0x08, 0xfc, 0x14, 0x41, 0xca, 0x36, 0x5a, 0xf9, 0x73, 0x04, 0x1f, 0xda, 0x4b, 0x92, + 0x98, 0x01, 0x59, 0x4c, 0x7b, 0x23, 0x0d, 0x72, 0xb1, 0x23, 0xa8, 0x38, 0xea, 0x77, 0x51, 0x28, + 0x9d, 0xd6, 0xed, 0x8b, 0xd3, 0xbe, 0x72, 0xae, 0xdb, 0x45, 0x6d, 0xcf, 0xbd, 0x3d, 0xb3, 0x98, + 0xf6, 0xba, 0x1c, 0xfc, 0x11, 0x82, 0xd4, 0x43, 0xbe, 0x89, 0x57, 0xbe, 0x8f, 0xe0, 0xf7, 0x11, + 0x2c, 0xc2, 0x7c, 0x6f, 0xa0, 0x79, 0xe7, 0x80, 0x07, 0x2e, 0xc1, 0x42, 0x4c, 0x94, 0x9e, 0xf4, + 0x0d, 0x78, 0x7d, 0x70, 0x84, 0x9e, 0xe2, 0x22, 0xcc, 0xf7, 0x86, 0xe4, 0x09, 0x8f, 0x11, 0xa4, + 0xf6, 0xef, 0xef, 0x3c, 0x5c, 0xf9, 0x6b, 0x04, 0x7f, 0x85, 0xe0, 0x0d, 0x58, 0x8c, 0x89, 0xa7, + 0xa5, 0x98, 0x7c, 0xa3, 0x81, 0xc5, 0x62, 0xfa, 0xdb, 0xee, 0x93, 0x1d, 0x5b, 0x8c, 0x62, 0x5b, + 0xe6, 0x15, 0x4e, 0x12, 0xe1, 0x4a, 0x7c, 0xfd, 0x76, 0xcd, 0x57, 0x4e, 0xad, 0xde, 0xae, 0x6e, + 0x9f, 0x2a, 0xf5, 0xe5, 0x9f, 0x26, 0x20, 0xf5, 0x50, 0x15, 0xf1, 0xca, 0xdf, 0x25, 0xe0, 0x6f, + 0x13, 0xc0, 0xc6, 0x46, 0xe6, 0x0e, 0x99, 0xe2, 0xf8, 0x8e, 0x2c, 0xe7, 0xc8, 0xa2, 0x93, 0x9c, + 0x04, 0xc2, 0x3c, 0xcc, 0xc5, 0x68, 0x2b, 0xaa, 0x88, 0x61, 0x15, 0x16, 0xe3, 0xaa, 0xbf, 0x1f, + 0xd2, 0x02, 0x30, 0x71, 0xea, 0x04, 0x6a, 0x1b, 0xbe, 0x71, 0x4a, 0x5b, 0xf5, 0x43, 0x7d, 0x1d, + 0x5e, 0x3d, 0xc5, 0x92, 0x38, 0x60, 0x61, 0x21, 0xa6, 0x8d, 0x07, 0x14, 0x3a, 0x46, 0x9b, 0x00, + 0x4d, 0xc3, 0x88, 0x33, 0xc6, 0x2b, 0xe0, 0xf1, 0x2c, 0x35, 0x5c, 0x7e, 0x23, 0x66, 0x69, 0x3c, + 0xe5, 0x2e, 0x8d, 0x93, 0x1d, 0x0b, 0x5d, 0xd8, 0x62, 0x4b, 0xec, 0x75, 0x76, 0xbb, 0xbc, 0x0b, + 0xf9, 0xb3, 0xe6, 0xa7, 0xbe, 0xd7, 0x87, 0xfd, 0x59, 0xd5, 0x28, 0x05, 0xe5, 0x1f, 0xa3, 0x93, + 0xcf, 0xb3, 0x43, 0x9f, 0x7d, 0x9e, 0x1d, 0xfa, 0xf2, 0xf3, 0x2c, 0x7a, 0xbf, 0x93, 0x45, 0x3f, + 0xeb, 0x64, 0xd1, 0xcf, 0x3b, 0x59, 0x74, 0xd2, 0xc9, 0xa2, 0xcf, 0x3a, 0x59, 0xf4, 0x8b, 0x4e, + 0x16, 0x3d, 0xef, 0x64, 0x87, 0xbe, 0xec, 0x64, 0xd1, 0x8f, 0xbe, 0xc8, 0x0e, 0x1d, 0x7f, 0x91, + 0x45, 0x27, 0x5f, 0x64, 0x87, 0x3e, 0xfb, 0x22, 0x3b, 0xf4, 0xdb, 0xef, 0x35, 0x54, 0xed, 0xa0, + 0x91, 0xf7, 0xce, 0x72, 0xf3, 0x2d, 0x63, 0x8d, 0x3c, 0xd4, 0x55, 0xbd, 0xb9, 0xaa, 0xe9, 0x6a, + 0x5b, 0x12, 0xb1, 0xbe, 0xea, 0x89, 0xd7, 0xb4, 0x5a, 0x43, 0x5d, 0xc3, 0x4f, 0x4c, 0xef, 0xd7, + 0x69, 0x03, 0x7e, 0xc0, 0x57, 0x1b, 0x21, 0xbf, 0xf1, 0xda, 0xf8, 0xaf, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xb1, 0x3a, 0x57, 0xc4, 0xee, 0x37, 0x00, 0x00, } func (this *GlobalSpecType) Equal(that interface{}) bool { @@ -2637,6 +2677,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.PerformanceEnhancementMode.Equal(that1.PerformanceEnhancementMode) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GlobalSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -2923,6 +2966,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.PerformanceEnhancementMode.Equal(that1.PerformanceEnhancementMode) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -3209,6 +3255,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.PerformanceEnhancementMode.Equal(that1.PerformanceEnhancementMode) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *ReplaceSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -3498,6 +3547,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.PerformanceEnhancementMode.Equal(that1.PerformanceEnhancementMode) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GetSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -4651,7 +4703,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 24) + s := make([]string, 0, 25) s = append(s, "&securemesh_site.GlobalSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") if this.MasterNodeConfiguration != nil { @@ -4691,6 +4743,9 @@ func (this *GlobalSpecType) GoString() string { if this.PerformanceEnhancementMode != nil { s = append(s, "PerformanceEnhancementMode: "+fmt.Sprintf("%#v", this.PerformanceEnhancementMode)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -4762,7 +4817,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 21) + s := make([]string, 0, 22) s = append(s, "&securemesh_site.CreateSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") if this.MasterNodeConfiguration != nil { @@ -4797,6 +4852,9 @@ func (this *CreateSpecType) GoString() string { if this.PerformanceEnhancementMode != nil { s = append(s, "PerformanceEnhancementMode: "+fmt.Sprintf("%#v", this.PerformanceEnhancementMode)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -4868,7 +4926,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 21) + s := make([]string, 0, 22) s = append(s, "&securemesh_site.ReplaceSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") if this.MasterNodeConfiguration != nil { @@ -4903,6 +4961,9 @@ func (this *ReplaceSpecType) GoString() string { if this.PerformanceEnhancementMode != nil { s = append(s, "PerformanceEnhancementMode: "+fmt.Sprintf("%#v", this.PerformanceEnhancementMode)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -4974,7 +5035,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 22) + s := make([]string, 0, 23) s = append(s, "&securemesh_site.GetSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") if this.MasterNodeConfiguration != nil { @@ -5006,6 +5067,9 @@ func (this *GetSpecType) GoString() string { if this.PerformanceEnhancementMode != nil { s = append(s, "PerformanceEnhancementMode: "+fmt.Sprintf("%#v", this.PerformanceEnhancementMode)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -5481,6 +5545,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xaa } } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a + } if m.PerformanceEnhancementMode != nil { { size, err := m.PerformanceEnhancementMode.MarshalToSizedBuffer(dAtA[:i]) @@ -5843,6 +5921,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xaa } } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a + } if m.PerformanceEnhancementMode != nil { { size, err := m.PerformanceEnhancementMode.MarshalToSizedBuffer(dAtA[:i]) @@ -6191,6 +6283,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xaa } } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a + } if m.PerformanceEnhancementMode != nil { { size, err := m.PerformanceEnhancementMode.MarshalToSizedBuffer(dAtA[:i]) @@ -6539,6 +6645,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xaa } } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0x9a + } if m.PerformanceEnhancementMode != nil { { size, err := m.PerformanceEnhancementMode.MarshalToSizedBuffer(dAtA[:i]) @@ -7910,6 +8030,10 @@ func (m *GlobalSpecType) Size() (n int) { l = m.PerformanceEnhancementMode.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.MasterNodeConfiguration) > 0 { for _, e := range m.MasterNodeConfiguration { l = e.Size() @@ -8071,6 +8195,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.PerformanceEnhancementMode.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.MasterNodeConfiguration) > 0 { for _, e := range m.MasterNodeConfiguration { l = e.Size() @@ -8228,6 +8356,10 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.PerformanceEnhancementMode.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.MasterNodeConfiguration) > 0 { for _, e := range m.MasterNodeConfiguration { l = e.Size() @@ -8388,6 +8520,10 @@ func (m *GetSpecType) Size() (n int) { l = m.PerformanceEnhancementMode.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if len(m.MasterNodeConfiguration) > 0 { for _, e := range m.MasterNodeConfiguration { l = e.Size() @@ -9013,6 +9149,7 @@ func (this *GlobalSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `VolterraCertifiedHw:` + fmt.Sprintf("%v", this.VolterraCertifiedHw) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `}`, @@ -9121,6 +9258,7 @@ func (this *CreateSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `VolterraCertifiedHw:` + fmt.Sprintf("%v", this.VolterraCertifiedHw) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `}`, }, "") @@ -9228,6 +9366,7 @@ func (this *ReplaceSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `VolterraCertifiedHw:` + fmt.Sprintf("%v", this.VolterraCertifiedHw) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `}`, }, "") @@ -9336,6 +9475,7 @@ func (this *GetSpecType) String() string { `OfflineSurvivabilityMode:` + strings.Replace(fmt.Sprintf("%v", this.OfflineSurvivabilityMode), "OfflineSurvivabilityModeType", "views.OfflineSurvivabilityModeType", 1) + `,`, `VolterraCertifiedHw:` + fmt.Sprintf("%v", this.VolterraCertifiedHw) + `,`, `PerformanceEnhancementMode:` + strings.Replace(fmt.Sprintf("%v", this.PerformanceEnhancementMode), "PerformanceEnhancementModeType", "views.PerformanceEnhancementModeType", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `}`, }, "") @@ -10465,6 +10605,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 51: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 53: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MasterNodeConfiguration", wireType) @@ -11144,6 +11320,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 51: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 53: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MasterNodeConfiguration", wireType) @@ -11787,6 +11999,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 51: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 53: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MasterNodeConfiguration", wireType) @@ -12441,6 +12689,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 51: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 53: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MasterNodeConfiguration", wireType) diff --git a/pbgo/extschema/schema/views/securemesh_site/types.vesmsg.go b/pbgo/extschema/schema/views/securemesh_site/types.vesmsg.go index 6353a270f..98c9199e0 100644 --- a/pbgo/extschema/schema/views/securemesh_site/types.vesmsg.go +++ b/pbgo/extschema/schema/views/securemesh_site/types.vesmsg.go @@ -446,6 +446,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -705,6 +714,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -1148,6 +1159,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -1434,6 +1454,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -1932,6 +1954,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -2240,6 +2271,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate return v @@ -3208,6 +3241,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["logs_receiver_choice"]; exists { val := m.GetLogsReceiverChoice() vOpts := append(opts, @@ -3467,6 +3509,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["performance_enhancement_mode"] = ves_io_schema_views.PerformanceEnhancementModeTypeValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -5356,6 +5400,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.GetBlockedServicesChoiceFromGlobalSpecType(f) m.GetBondChoiceFromGlobalSpecType(f) m.Coordinates = f.GetCoordinates() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MasterNodeConfiguration = f.GetMasterNodeConfiguration() m.GetNetworkCfgChoiceFromGlobalSpecType(f) @@ -5386,6 +5431,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetBlockedServicesChoiceToGlobalSpecType(f) m1.SetBondChoiceToGlobalSpecType(f) f.Coordinates = m1.Coordinates + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MasterNodeConfiguration = m1.MasterNodeConfiguration m1.SetNetworkCfgChoiceToGlobalSpecType(f) @@ -5553,6 +5599,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.GetBlockedServicesChoiceFromGlobalSpecType(f) m.GetBondChoiceFromGlobalSpecType(f) m.Coordinates = f.GetCoordinates() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MasterNodeConfiguration = f.GetMasterNodeConfiguration() m.GetNetworkCfgChoiceFromGlobalSpecType(f) @@ -5584,6 +5631,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m1.SetBlockedServicesChoiceToGlobalSpecType(f) m1.SetBondChoiceToGlobalSpecType(f) f.Coordinates = m1.Coordinates + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MasterNodeConfiguration = m1.MasterNodeConfiguration m1.SetNetworkCfgChoiceToGlobalSpecType(f) @@ -5752,6 +5800,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.GetBlockedServicesChoiceFromGlobalSpecType(f) m.GetBondChoiceFromGlobalSpecType(f) m.Coordinates = f.GetCoordinates() + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MasterNodeConfiguration = f.GetMasterNodeConfiguration() m.GetNetworkCfgChoiceFromGlobalSpecType(f) @@ -5782,6 +5831,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetBlockedServicesChoiceToGlobalSpecType(f) m1.SetBondChoiceToGlobalSpecType(f) f.Coordinates = m1.Coordinates + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MasterNodeConfiguration = m1.MasterNodeConfiguration m1.SetNetworkCfgChoiceToGlobalSpecType(f) diff --git a/pbgo/extschema/schema/views/site_types.pb.go b/pbgo/extschema/schema/views/site_types.pb.go index f165c757d..88adc0c4d 100644 --- a/pbgo/extschema/schema/views/site_types.pb.go +++ b/pbgo/extschema/schema/views/site_types.pb.go @@ -4353,321 +4353,321 @@ func init() { } var fileDescriptor_5debf32965df805e = []byte{ - // 5020 bytes of a gzipped FileDescriptorProto + // 5024 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5b, 0x5d, 0x6c, 0x1b, 0x57, - 0x76, 0xd6, 0x1d, 0x52, 0x12, 0x79, 0xf4, 0x47, 0x8d, 0x7e, 0x4c, 0xcb, 0x8e, 0x44, 0xd3, 0x76, - 0x22, 0xcb, 0x14, 0x6d, 0x51, 0xb2, 0xe3, 0x28, 0x0b, 0xc7, 0xa4, 0x24, 0x5b, 0x54, 0x6c, 0x49, - 0x19, 0xd9, 0x72, 0xd7, 0xdb, 0x64, 0x3a, 0xe2, 0x5c, 0xd1, 0xb3, 0xa6, 0x66, 0xd8, 0x99, 0x21, - 0x65, 0x7b, 0xd7, 0x58, 0x17, 0x58, 0x20, 0x6d, 0xb6, 0x68, 0x17, 0xe9, 0x5f, 0xba, 0x45, 0xd1, - 0x02, 0x7d, 0x59, 0xa4, 0x7d, 0x58, 0x14, 0xdd, 0x97, 0xc8, 0x28, 0x8c, 0x3e, 0x14, 0xa9, 0x1f, - 0xb6, 0xde, 0xf6, 0x25, 0x08, 0xb0, 0x45, 0xe2, 0xbc, 0xa4, 0x05, 0x16, 0x0d, 0xfc, 0xd2, 0x7d, - 0x28, 0xea, 0xe2, 0xfe, 0xcc, 0x70, 0x86, 0x1c, 0x52, 0x52, 0x9c, 0x3c, 0xec, 0x13, 0x87, 0x73, - 0xcf, 0xf9, 0xee, 0x39, 0xe7, 0x9e, 0x73, 0xee, 0x39, 0x73, 0x67, 0xe0, 0x58, 0x15, 0x5b, 0x69, - 0xcd, 0x38, 0x65, 0x15, 0x6e, 0xe2, 0x2d, 0xe5, 0x54, 0x55, 0xc3, 0xdb, 0xd6, 0x29, 0x4b, 0xb3, - 0xb1, 0x6c, 0xdf, 0x29, 0x63, 0x2b, 0x5d, 0x36, 0x0d, 0xdb, 0x10, 0x07, 0x18, 0x55, 0x9a, 0x51, - 0xa5, 0x29, 0xd5, 0xc8, 0x64, 0x51, 0xb3, 0x6f, 0x56, 0x36, 0xd2, 0x05, 0x63, 0xeb, 0x54, 0xd1, - 0x28, 0x1a, 0xa7, 0x28, 0xed, 0x46, 0x65, 0x93, 0xfe, 0xa3, 0x7f, 0xe8, 0x15, 0xc3, 0x18, 0x39, - 0xe0, 0x9f, 0x49, 0xc7, 0x36, 0x1f, 0x38, 0xe4, 0x1f, 0x30, 0xca, 0xb6, 0x66, 0xe8, 0x7c, 0xe6, - 0x91, 0x83, 0xfe, 0x41, 0x8f, 0x50, 0x23, 0x87, 0xeb, 0x44, 0x57, 0x4a, 0x9a, 0xaa, 0xd8, 0x98, - 0x8f, 0x26, 0x1a, 0x15, 0x93, 0xfd, 0xd0, 0x63, 0x41, 0xaa, 0x7b, 0x26, 0x48, 0xfe, 0xbd, 0x00, - 0xb1, 0xec, 0xf5, 0xb5, 0xf5, 0xd5, 0xb9, 0x55, 0xc5, 0x54, 0xb6, 0xac, 0xab, 0x77, 0xca, 0x58, - 0x9c, 0x80, 0x88, 0xae, 0x6c, 0x61, 0xd9, 0x56, 0x8a, 0x71, 0x21, 0x81, 0xc6, 0xa3, 0xb9, 0x9e, - 0x5f, 0xed, 0xa0, 0xb6, 0x0f, 0xfe, 0xf3, 0x61, 0x28, 0x6c, 0x0a, 0xf1, 0x0b, 0x8b, 0x6d, 0x52, - 0x27, 0x21, 0xb8, 0xaa, 0x14, 0xc5, 0x59, 0xe8, 0x56, 0x2a, 0xb6, 0x51, 0xc4, 0x3a, 0x36, 0x15, - 0x1b, 0xc7, 0x23, 0x09, 0x34, 0xde, 0x95, 0x19, 0x4c, 0xfb, 0xad, 0xb9, 0xb0, 0x55, 0xb6, 0xef, - 0x2c, 0xb6, 0x49, 0x3e, 0x5a, 0x71, 0x01, 0xba, 0xcb, 0xa6, 0xb6, 0xa5, 0x98, 0x77, 0x64, 0xad, - 0x5c, 0x9d, 0x89, 0x87, 0xe8, 0x5c, 0x49, 0x67, 0xae, 0x76, 0x33, 0xf4, 0x2b, 0x84, 0xf8, 0xd5, - 0x7b, 0xc2, 0x61, 0x7e, 0xf5, 0x43, 0x21, 0x26, 0x75, 0x71, 0xbe, 0x7c, 0xb9, 0x3a, 0x23, 0x4e, - 0x42, 0x8f, 0x52, 0x2a, 0x19, 0x05, 0xc5, 0xc6, 0x04, 0xe7, 0x6c, 0xbc, 0x23, 0x81, 0xc6, 0x23, - 0xb9, 0xc8, 0xe7, 0x3b, 0x08, 0x11, 0x2c, 0xa9, 0xdb, 0x19, 0xce, 0x97, 0xab, 0x67, 0x67, 0x23, - 0x4f, 0xcf, 0xb7, 0xbf, 0x9c, 0x9a, 0x4e, 0x9d, 0xcd, 0x8d, 0x42, 0x17, 0xd5, 0xb3, 0x70, 0xd3, - 0xd0, 0x0a, 0x58, 0xec, 0x7b, 0xb8, 0x83, 0x22, 0x8f, 0x77, 0x50, 0xe7, 0x93, 0x1d, 0x14, 0x3a, - 0x97, 0xca, 0x2c, 0x85, 0x23, 0x28, 0x26, 0x2c, 0x85, 0x23, 0xe1, 0x58, 0xfb, 0x52, 0x38, 0xd2, - 0x1e, 0xeb, 0x58, 0x0a, 0x47, 0x3a, 0x63, 0x91, 0xe4, 0xc7, 0xc8, 0x31, 0x1a, 0xe3, 0xa4, 0x46, - 0xbb, 0x00, 0x9d, 0x3a, 0xde, 0x96, 0xab, 0xe5, 0x42, 0x1c, 0x51, 0x1b, 0x1c, 0x4f, 0x07, 0x78, - 0x54, 0xba, 0xde, 0xd8, 0x8b, 0x6d, 0x52, 0x87, 0x8e, 0xb7, 0xd7, 0xcb, 0x05, 0xb1, 0x00, 0x1d, - 0xd5, 0x72, 0x41, 0xd6, 0x54, 0x6e, 0xf4, 0x25, 0x6a, 0x88, 0x07, 0xa8, 0xf7, 0x34, 0x9a, 0x85, - 0x42, 0xc9, 0xa8, 0xa8, 0x93, 0xaa, 0x62, 0x2b, 0xee, 0x32, 0x90, 0x8b, 0x17, 0xcd, 0x63, 0x99, - 0xe4, 0x5b, 0xe3, 0xd5, 0x72, 0x61, 0xf2, 0xc4, 0xf8, 0xb7, 0x94, 0xc9, 0xbb, 0xa7, 0x27, 0x5f, - 0x79, 0xf3, 0x3b, 0xe7, 0xee, 0x7d, 0xd7, 0xbd, 0x9e, 0x7a, 0xf9, 0xde, 0x89, 0x63, 0x8b, 0x6d, - 0x52, 0x7b, 0xb5, 0x5c, 0xc8, 0xab, 0xb9, 0x83, 0xd0, 0xe1, 0x51, 0x17, 0x3d, 0xde, 0x41, 0x21, - 0xa2, 0xee, 0x14, 0x55, 0x37, 0x14, 0x0b, 0x27, 0xff, 0x14, 0xc1, 0xe0, 0x1c, 0x99, 0x6c, 0xad, - 0xb2, 0xa1, 0x63, 0x9b, 0x4a, 0x4a, 0x15, 0x4c, 0x41, 0x98, 0xae, 0x12, 0xa2, 0xc2, 0xc5, 0x9b, - 0xad, 0x92, 0x44, 0xa9, 0xc4, 0x45, 0x4a, 0x7d, 0x96, 0xab, 0x32, 0xf3, 0x5f, 0xf7, 0x8e, 0xaa, - 0x78, 0xcb, 0x98, 0x4a, 0xd9, 0xd8, 0xb2, 0x53, 0x05, 0xd3, 0x4e, 0x59, 0xb6, 0x52, 0xd4, 0xf4, - 0x62, 0xca, 0x32, 0x36, 0xed, 0x0d, 0x45, 0xbf, 0x25, 0x6f, 0xe1, 0x82, 0x07, 0xf3, 0xbe, 0x80, - 0x28, 0xd2, 0xd9, 0xd9, 0x8e, 0xa7, 0xe7, 0x89, 0x78, 0xc9, 0xff, 0x46, 0xd0, 0xe7, 0x11, 0x8c, - 0xca, 0xb4, 0x0c, 0xdd, 0x16, 0xfd, 0x27, 0x97, 0x89, 0x9c, 0xdc, 0xf2, 0x27, 0x02, 0x2d, 0x1f, - 0xa4, 0xd4, 0x62, 0x9b, 0xd4, 0x65, 0xd5, 0x6e, 0x89, 0xb7, 0x40, 0xc4, 0xb7, 0x35, 0xcb, 0xd6, - 0xf4, 0xa2, 0xcc, 0x81, 0xdd, 0xe5, 0x78, 0xd5, 0x17, 0x03, 0xe4, 0xe2, 0x84, 0xf9, 0x52, 0xe6, - 0xf8, 0x5b, 0xe3, 0x8c, 0x70, 0x37, 0xfb, 0xc7, 0x1c, 0x60, 0x26, 0xc2, 0x5e, 0x96, 0xe2, 0x67, - 0x61, 0xea, 0x67, 0x0e, 0x03, 0x0b, 0xce, 0x43, 0xd0, 0xa9, 0xdc, 0x95, 0x89, 0xdf, 0xf2, 0x95, - 0x10, 0xe2, 0x48, 0xea, 0x50, 0xee, 0x2e, 0x2b, 0x5b, 0x58, 0x4c, 0x43, 0xbf, 0x51, 0xb1, 0x2d, - 0x4d, 0xc5, 0x0d, 0xe2, 0x13, 0xb2, 0x3e, 0x3e, 0xe8, 0x20, 0x8a, 0x29, 0x88, 0x69, 0x7a, 0x1d, - 0x79, 0xc8, 0x25, 0xef, 0x65, 0x63, 0x2e, 0xf5, 0x69, 0x10, 0xb7, 0x0d, 0xf3, 0x56, 0xc9, 0x50, - 0x54, 0x0f, 0x7d, 0xd8, 0xa5, 0x8f, 0x39, 0xa3, 0x2e, 0xc7, 0x15, 0xe8, 0xf5, 0xcb, 0x13, 0x6f, - 0xa7, 0x2b, 0xf4, 0x62, 0xb3, 0xd8, 0xe0, 0x9c, 0xfa, 0xa6, 0x41, 0x94, 0x95, 0x7a, 0x7c, 0x02, - 0x8b, 0xaf, 0x43, 0x8f, 0x4f, 0x5c, 0x1a, 0xe9, 0x7b, 0x47, 0xeb, 0xf6, 0xea, 0x23, 0xae, 0x40, - 0x5f, 0x9d, 0x36, 0xf1, 0xce, 0x7d, 0xc1, 0xf5, 0xfa, 0xd5, 0x9d, 0xfd, 0x2b, 0xf4, 0x68, 0x07, - 0xfd, 0x08, 0xc1, 0x51, 0xe8, 0xcc, 0xde, 0x48, 0x90, 0xf5, 0x18, 0x89, 0xc3, 0xb0, 0x5f, 0xff, - 0x34, 0x5f, 0x3b, 0x38, 0x0a, 0x3d, 0x79, 0x2a, 0x4d, 0x82, 0x71, 0x8f, 0x88, 0x75, 0x4b, 0x91, - 0xd6, 0x54, 0x38, 0x0e, 0xbd, 0x2b, 0x8c, 0xdd, 0xa1, 0x1a, 0xa8, 0x5f, 0x60, 0x42, 0xf6, 0x12, - 0xf4, 0x5d, 0xe7, 0xa2, 0x38, 0x74, 0x83, 0x0d, 0x4b, 0x95, 0xd6, 0xd4, 0xe4, 0xff, 0x22, 0xe8, - 0x6f, 0xd0, 0x43, 0xbc, 0x56, 0xef, 0x51, 0xdf, 0x20, 0xce, 0xfd, 0xb2, 0x79, 0x26, 0x33, 0xfd, - 0x16, 0xf5, 0xe9, 0x37, 0xbf, 0x93, 0xb9, 0x77, 0x62, 0xf2, 0xb5, 0xf1, 0xa2, 0x51, 0x9d, 0x3c, - 0xf1, 0x5a, 0xcd, 0xcd, 0x67, 0x52, 0x99, 0xd3, 0xf7, 0x4e, 0x4c, 0xd6, 0x6e, 0x64, 0xee, 0x9d, - 0x38, 0xe6, 0xfa, 0xe2, 0xeb, 0x20, 0x7c, 0x25, 0xb1, 0x23, 0x09, 0x9a, 0x2a, 0xce, 0x41, 0x17, - 0x49, 0x2b, 0x72, 0xd9, 0xc4, 0x9b, 0xda, 0xed, 0x3d, 0xef, 0x14, 0x11, 0x09, 0x08, 0xdb, 0x2a, - 0xe5, 0x4a, 0xfe, 0x6b, 0x08, 0x46, 0x58, 0xfe, 0x5d, 0xd1, 0x71, 0x5e, 0xb7, 0xb1, 0xb9, 0xa9, - 0x14, 0xf0, 0xb2, 0xa1, 0xb2, 0x0c, 0x7e, 0x0e, 0xba, 0x94, 0x6d, 0x4b, 0xf6, 0xdb, 0x22, 0xce, - 0x93, 0x70, 0x2c, 0x82, 0xfc, 0x69, 0x58, 0x8a, 0x2a, 0xdb, 0x56, 0x96, 0xa9, 0x7a, 0x05, 0xba, - 0xc9, 0x06, 0x53, 0x72, 0xfc, 0x48, 0xa0, 0x7e, 0x74, 0x6c, 0xb7, 0x34, 0x44, 0x66, 0xcd, 0x85, - 0x7f, 0xf2, 0x00, 0x21, 0xa9, 0x8b, 0xf2, 0x73, 0xcf, 0xcc, 0x40, 0x54, 0xd5, 0xac, 0x5b, 0xb2, - 0xa5, 0xdd, 0xc5, 0x34, 0xbc, 0x7a, 0x72, 0x43, 0x1f, 0xdd, 0x43, 0x64, 0x3f, 0xfb, 0xdd, 0x07, - 0xa8, 0x9f, 0x6a, 0x37, 0x11, 0x8a, 0xdf, 0x8f, 0x49, 0x11, 0x42, 0xb7, 0xa6, 0xdd, 0xc5, 0xb3, - 0xbf, 0x44, 0x4f, 0xcf, 0xb7, 0x4f, 0xa5, 0xa6, 0x53, 0x99, 0x47, 0x3b, 0xe8, 0x13, 0x04, 0x49, - 0xe8, 0xcf, 0x56, 0x15, 0xad, 0xa4, 0x6c, 0x68, 0x25, 0xcd, 0xbe, 0x93, 0xb8, 0x61, 0xe8, 0x78, - 0xa4, 0xc7, 0xa7, 0x21, 0x14, 0xa1, 0x8b, 0xcd, 0x98, 0x20, 0x92, 0x4c, 0xfc, 0x06, 0xac, 0xc3, - 0x4b, 0x70, 0xd0, 0xab, 0x49, 0xda, 0x9b, 0x5d, 0x33, 0x30, 0x67, 0xe8, 0x9b, 0x5a, 0xb1, 0x62, - 0x62, 0x15, 0x4e, 0xc2, 0x98, 0x8f, 0xb0, 0x31, 0x6d, 0x66, 0x22, 0x0b, 0xfc, 0x1e, 0xbc, 0x01, - 0xdd, 0x7c, 0xa2, 0x75, 0xa5, 0x54, 0xc1, 0x99, 0x2c, 0x8c, 0x36, 0x9d, 0x25, 0x4d, 0x16, 0x6c, - 0x57, 0x70, 0x9e, 0x21, 0x3f, 0x8e, 0x38, 0x2b, 0x7a, 0x75, 0xdb, 0xf8, 0x2a, 0x57, 0xf4, 0x32, - 0x0c, 0x9b, 0xd8, 0xc2, 0x66, 0x15, 0xab, 0x72, 0x50, 0xca, 0x69, 0x56, 0xe0, 0x0c, 0x3a, 0x5c, - 0x79, 0x6f, 0xaa, 0x79, 0xa3, 0x3e, 0x6f, 0xed, 0xdb, 0x41, 0x48, 0xed, 0xa4, 0xf9, 0x21, 0xeb, - 0x33, 0x6b, 0x68, 0xdf, 0x4e, 0x57, 0x97, 0x5d, 0xd7, 0x9a, 0x25, 0xc4, 0xfd, 0x60, 0xd6, 0x25, - 0x45, 0xbf, 0x2f, 0x47, 0xf6, 0xe6, 0xcb, 0xbf, 0x08, 0x3f, 0x3d, 0xdf, 0x39, 0x95, 0x22, 0x45, - 0xda, 0x99, 0x47, 0x3b, 0xe8, 0x67, 0xe1, 0x3d, 0x79, 0xf3, 0x5f, 0x20, 0x10, 0x7d, 0x29, 0x95, - 0x79, 0xf5, 0xf7, 0x11, 0xfc, 0x0e, 0x82, 0x97, 0x9a, 0xad, 0x67, 0xa6, 0x27, 0xeb, 0x29, 0x49, - 0x55, 0x18, 0x87, 0x11, 0x7f, 0x1a, 0x6e, 0x1a, 0x01, 0x29, 0x48, 0xf8, 0x29, 0x5b, 0x86, 0xc0, - 0x0d, 0x18, 0xf0, 0x0b, 0xc7, 0x22, 0x61, 0x0e, 0xc6, 0x9a, 0x4f, 0xc7, 0x42, 0x61, 0xd7, 0x59, - 0xc0, 0x82, 0x01, 0xff, 0x36, 0xc1, 0x34, 0xff, 0x4d, 0xb8, 0x01, 0x27, 0xe0, 0x50, 0xdd, 0x7e, - 0xd1, 0x54, 0x9f, 0x49, 0x38, 0x52, 0x47, 0xda, 0x52, 0xa1, 0x37, 0x61, 0xb0, 0x6e, 0x52, 0xa6, - 0xd1, 0x02, 0x24, 0x5a, 0xcc, 0xc8, 0x54, 0xda, 0x7d, 0x22, 0xb8, 0xd1, 0xb0, 0xa7, 0x65, 0x2e, - 0xc1, 0x91, 0xfa, 0x3d, 0xad, 0x11, 0x3a, 0x59, 0x4f, 0xd2, 0x88, 0x5d, 0x57, 0x78, 0x75, 0x3c, - 0xde, 0x41, 0xed, 0xa4, 0xf0, 0x3a, 0x4b, 0x0b, 0x2f, 0x56, 0xe6, 0x87, 0x63, 0xed, 0xc9, 0x5f, - 0x22, 0x18, 0xc8, 0xde, 0xad, 0x98, 0x78, 0xdd, 0xa9, 0x0f, 0x59, 0x05, 0x76, 0x1c, 0xc2, 0x9e, - 0x74, 0xd2, 0xe7, 0x6c, 0x42, 0x1d, 0x66, 0x38, 0x86, 0x68, 0x73, 0x44, 0x87, 0x1b, 0x3a, 0xa3, - 0xf0, 0x73, 0x74, 0x46, 0xc2, 0x9e, 0xf7, 0x3b, 0x6f, 0x67, 0x44, 0x4b, 0xe7, 0xe9, 0x54, 0x26, - 0xa8, 0xd1, 0x09, 0x3b, 0xe5, 0xe6, 0x4c, 0x6a, 0x8a, 0x27, 0xd3, 0x3f, 0x47, 0xd0, 0xe3, 0xea, - 0x4b, 0x35, 0x5d, 0x84, 0x5e, 0x13, 0x5b, 0x46, 0xc5, 0x2c, 0x60, 0xb9, 0x68, 0x1a, 0x95, 0x32, - 0xd7, 0xf9, 0x48, 0xf3, 0xce, 0x84, 0x5b, 0x41, 0xea, 0x71, 0x18, 0x2f, 0x11, 0x3e, 0xf1, 0x3c, - 0x44, 0xab, 0xc4, 0xfa, 0xd4, 0x70, 0xc2, 0x5e, 0x41, 0x22, 0x84, 0x87, 0xe4, 0xe3, 0xe4, 0x87, - 0xde, 0xb5, 0x98, 0xab, 0x75, 0x5d, 0x0b, 0x10, 0xa1, 0x5d, 0x57, 0x2d, 0xa9, 0x8e, 0x07, 0x57, - 0x6f, 0x8d, 0xeb, 0x48, 0xbb, 0x58, 0xbc, 0x4d, 0x6e, 0x8a, 0x79, 0xe8, 0x71, 0xfd, 0xa4, 0x5a, - 0x4b, 0xa6, 0xc9, 0xd6, 0x58, 0x1c, 0xa5, 0xdb, 0x61, 0x25, 0xf7, 0xea, 0x9c, 0x4b, 0x78, 0xbc, - 0x83, 0x10, 0x31, 0x73, 0x26, 0x35, 0xcd, 0xfa, 0xc9, 0xe4, 0x1f, 0x0b, 0xd0, 0x47, 0x21, 0x3c, - 0x7d, 0x4c, 0x1a, 0x78, 0x1b, 0xe2, 0xdd, 0xa8, 0xfc, 0x4d, 0xb7, 0x04, 0x8c, 0x82, 0x6e, 0x4f, - 0x6f, 0xc0, 0x00, 0xa7, 0xf7, 0xac, 0x4f, 0x99, 0x1b, 0x76, 0x6c, 0x97, 0xbe, 0x71, 0xb1, 0x4d, - 0xea, 0x67, 0xdc, 0x92, 0xbb, 0x46, 0x65, 0xf1, 0x22, 0x0c, 0x54, 0xeb, 0x00, 0xc9, 0x82, 0xb7, - 0xf6, 0xda, 0xfe, 0xaa, 0x0f, 0xc5, 0xa8, 0x94, 0xb9, 0xcf, 0x4d, 0xe5, 0xc6, 0x61, 0xc8, 0x0f, - 0xd5, 0xc4, 0xfb, 0x9c, 0x66, 0xe7, 0xe7, 0x08, 0x86, 0x99, 0x59, 0xca, 0xb8, 0xa0, 0x39, 0xb5, - 0x10, 0xb5, 0xce, 0x6b, 0xad, 0xb4, 0x6d, 0x78, 0x34, 0xb1, 0x77, 0xdd, 0x42, 0xfb, 0xd4, 0xad, - 0xb5, 0x4e, 0x01, 0x4b, 0xfd, 0x09, 0x82, 0x21, 0xcf, 0x52, 0x7b, 0xfc, 0xf6, 0x46, 0x5d, 0xe3, - 0x2a, 0xec, 0xb3, 0x71, 0xcd, 0x01, 0x8d, 0xf9, 0x77, 0x90, 0x10, 0x43, 0xf5, 0x4d, 0xec, 0x12, - 0x74, 0xec, 0xa1, 0x24, 0xa8, 0x73, 0xc1, 0x3a, 0x40, 0x8e, 0xb0, 0xbb, 0x37, 0xff, 0x9e, 0x00, - 0x2f, 0x34, 0xa8, 0x78, 0x5d, 0xb3, 0x6f, 0x92, 0x6d, 0x95, 0x3f, 0x4d, 0x0a, 0x93, 0xdc, 0xc6, - 0x55, 0x6c, 0x66, 0x6d, 0x4a, 0xd3, 0xd0, 0xcf, 0x87, 0x9e, 0xb3, 0x9f, 0x5f, 0x70, 0x4d, 0xc1, - 0xfc, 0xf8, 0x64, 0x0b, 0x53, 0xd4, 0xbb, 0x9d, 0xc7, 0x0a, 0x63, 0xae, 0x15, 0x86, 0x3c, 0x56, - 0x68, 0xcf, 0xa4, 0xa6, 0x53, 0x33, 0xa4, 0x92, 0xe1, 0xb6, 0x78, 0x18, 0xe2, 0xb6, 0x20, 0x89, - 0x20, 0xb0, 0xc5, 0x38, 0x05, 0x11, 0x85, 0x10, 0xc8, 0xca, 0x5d, 0x1e, 0xe4, 0x83, 0x8e, 0xfb, - 0x76, 0x99, 0x51, 0x09, 0x4d, 0x49, 0x28, 0x23, 0xa1, 0x69, 0xa9, 0x93, 0x52, 0x65, 0xef, 0x8a, - 0x6b, 0x81, 0x9d, 0xc5, 0xc4, 0x6e, 0x2b, 0x5a, 0xf3, 0xb4, 0xe7, 0xe8, 0x2f, 0x9e, 0x8d, 0x79, - 0x6a, 0xb2, 0xff, 0x60, 0xfd, 0xc5, 0x0c, 0xed, 0x2f, 0x7e, 0x8e, 0x60, 0x2c, 0xa8, 0x22, 0x83, - 0x9a, 0x7a, 0xf0, 0x2d, 0x7f, 0x73, 0x71, 0x19, 0x96, 0xf6, 0xde, 0x5c, 0x8c, 0xc1, 0x40, 0x00, - 0xe1, 0x57, 0xd8, 0x50, 0xf8, 0xc9, 0x48, 0xce, 0xe5, 0x59, 0xe8, 0x03, 0x01, 0xc6, 0x9a, 0x2e, - 0x61, 0x56, 0xe2, 0x0f, 0xc2, 0xba, 0x74, 0x43, 0xc5, 0xb2, 0x5e, 0xd9, 0xda, 0xc0, 0x26, 0x5d, - 0xc7, 0x9e, 0x5c, 0x17, 0xdd, 0xb7, 0x26, 0xc2, 0x19, 0x01, 0x85, 0x24, 0x20, 0xe3, 0xcb, 0x74, - 0xf8, 0xeb, 0x59, 0xc1, 0x1c, 0x74, 0x6f, 0x2a, 0x95, 0x92, 0x2d, 0xab, 0xc6, 0x96, 0xa2, 0xe9, - 0x34, 0x4e, 0x7a, 0x72, 0x63, 0x0f, 0x77, 0x10, 0xfa, 0x78, 0x07, 0xa1, 0x69, 0x37, 0x27, 0x4e, - 0x08, 0xe3, 0x88, 0x5f, 0xc4, 0x43, 0x52, 0x17, 0x65, 0x9a, 0xa7, 0x3c, 0xe2, 0x3c, 0xf4, 0x54, - 0xca, 0xaa, 0x62, 0x63, 0x07, 0x24, 0xec, 0x07, 0x39, 0x13, 0x08, 0x32, 0x28, 0x75, 0x33, 0x2e, - 0x86, 0x32, 0x0b, 0xb4, 0x54, 0xa7, 0x91, 0x90, 0xfc, 0x9f, 0x76, 0x8f, 0xff, 0x07, 0x36, 0x64, - 0xfb, 0xf6, 0xff, 0x6b, 0xc1, 0x9d, 0xd3, 0xfe, 0xcd, 0xe7, 0xef, 0x9e, 0xae, 0x37, 0xe9, 0x9e, - 0xf6, 0x8f, 0x5b, 0xd7, 0x43, 0xf9, 0x42, 0xab, 0x7d, 0x6f, 0xa1, 0xf5, 0x41, 0x88, 0xdb, 0xf0, - 0x4c, 0x6a, 0xfa, 0xd1, 0x0e, 0xfa, 0xdb, 0xd0, 0xee, 0xc1, 0xa5, 0x06, 0xb6, 0x3a, 0xcb, 0x70, - 0x79, 0x1f, 0xfd, 0x4b, 0x02, 0x06, 0x83, 0x28, 0xbf, 0x8e, 0x9e, 0xa5, 0x31, 0xdc, 0xa0, 0x18, - 0xdc, 0xb3, 0xac, 0xc2, 0xf2, 0x7e, 0x7a, 0x96, 0x23, 0x30, 0x14, 0x48, 0xfa, 0x35, 0xf5, 0x29, - 0x81, 0x69, 0x83, 0xb4, 0x0a, 0x7f, 0x16, 0xf2, 0xa4, 0x8d, 0x7a, 0xcf, 0xff, 0x52, 0x69, 0xe3, - 0xd7, 0xcd, 0xf1, 0xeb, 0x33, 0x52, 0xf8, 0xab, 0xc8, 0x48, 0xed, 0x5f, 0x26, 0x23, 0x75, 0x3f, - 0x3d, 0x1f, 0xe5, 0x19, 0x29, 0x75, 0x26, 0x39, 0x0f, 0x07, 0x2e, 0xcd, 0xad, 0xae, 0xaf, 0xce, - 0x2d, 0x63, 0x9b, 0xb4, 0x86, 0x9e, 0x3e, 0xee, 0x68, 0xcb, 0x3e, 0x8e, 0x75, 0x71, 0xb3, 0xe1, - 0xa7, 0xe7, 0xd1, 0x54, 0xf2, 0x1a, 0x1c, 0xf5, 0xa1, 0x78, 0x9f, 0x19, 0x78, 0x10, 0xc7, 0xeb, - 0x5a, 0x3e, 0x44, 0x0f, 0xa2, 0xc2, 0x24, 0xfa, 0xfd, 0x0d, 0x1e, 0x87, 0x3d, 0x07, 0xfd, 0x3e, - 0xd8, 0x3d, 0x8b, 0x95, 0xcc, 0x42, 0xcf, 0xa5, 0xb9, 0x55, 0x4f, 0x8d, 0x7c, 0x3a, 0xa8, 0x83, - 0x68, 0x60, 0xf6, 0xf4, 0x10, 0xc9, 0xdf, 0x47, 0x30, 0xe0, 0x62, 0x78, 0x94, 0xd8, 0x6f, 0x2f, - 0xf2, 0xd5, 0xf4, 0xaa, 0xc9, 0x8f, 0x84, 0xba, 0x95, 0xf2, 0x54, 0xcb, 0x36, 0xc4, 0x49, 0x97, - 0xa7, 0xb3, 0x01, 0x39, 0xa0, 0xad, 0x3e, 0x17, 0xe8, 0xbf, 0x7b, 0x58, 0xb3, 0xc5, 0x36, 0x69, - 0x58, 0xc7, 0xdb, 0x01, 0x34, 0xe2, 0x0a, 0x74, 0x79, 0x66, 0xe5, 0x01, 0x98, 0xda, 0x7d, 0x22, - 0x1f, 0x38, 0xd4, 0xc0, 0xc5, 0x35, 0x70, 0x0f, 0x81, 0x5c, 0xd4, 0x50, 0x8b, 0x23, 0x87, 0x06, - 0xdf, 0x58, 0x6c, 0x93, 0xfa, 0x1c, 0x04, 0x7e, 0x3b, 0x77, 0xc8, 0xad, 0x4d, 0xfb, 0x79, 0x63, - 0x45, 0x6b, 0xd3, 0x99, 0x54, 0xad, 0x46, 0xff, 0x77, 0x04, 0xc3, 0x0c, 0xab, 0xa1, 0x0f, 0xc9, - 0x03, 0x11, 0xd0, 0x9f, 0x63, 0xc6, 0x9b, 0x09, 0x53, 0xef, 0x2a, 0x8b, 0x6d, 0x52, 0x54, 0xc7, - 0xdb, 0x3c, 0x03, 0x5c, 0x81, 0xbe, 0xba, 0x67, 0x2d, 0x2d, 0xbb, 0x68, 0x9f, 0xfb, 0x2e, 0xb6, - 0x49, 0xbd, 0xfe, 0xf3, 0xb1, 0xdd, 0x3b, 0x8f, 0x77, 0x3b, 0x60, 0x70, 0x4d, 0xb3, 0xf1, 0x9a, - 0xad, 0xd8, 0x5a, 0x41, 0x32, 0x2a, 0x36, 0x66, 0x0e, 0xfc, 0x87, 0x08, 0x06, 0x2c, 0x6d, 0xab, - 0x5c, 0xc2, 0xb2, 0x45, 0xc7, 0x64, 0x93, 0x0c, 0x72, 0xc7, 0x7c, 0xf3, 0xfd, 0x07, 0x68, 0x65, - 0xe4, 0x0a, 0xdb, 0x4a, 0x69, 0x57, 0x68, 0x69, 0x36, 0x4e, 0x5b, 0x65, 0x5c, 0x48, 0x6b, 0x7a, - 0xd1, 0xc4, 0x96, 0x25, 0x63, 0xf6, 0x53, 0xdc, 0x4e, 0x3b, 0x39, 0xd8, 0x83, 0x63, 0xa5, 0xbd, - 0xff, 0xe4, 0x92, 0x66, 0xd9, 0x35, 0x3f, 0xa7, 0xfd, 0x27, 0x9d, 0xdb, 0x23, 0x96, 0xb8, 0x0e, - 0x03, 0x85, 0x8a, 0x65, 0x1b, 0x5b, 0x7e, 0x81, 0x98, 0x79, 0x46, 0xeb, 0xcc, 0xe3, 0x61, 0x64, - 0xe9, 0x96, 0xa8, 0x4e, 0x70, 0x19, 0x84, 0x67, 0x78, 0xf6, 0x49, 0xe8, 0xd1, 0x0e, 0xfa, 0x45, - 0x08, 0x96, 0x01, 0xe8, 0x0d, 0xb6, 0x87, 0x5e, 0x80, 0xf3, 0xf0, 0x42, 0xa0, 0x09, 0x32, 0x1d, - 0x6b, 0xf4, 0x26, 0x19, 0x0e, 0x10, 0x28, 0xd3, 0x31, 0x47, 0x6f, 0x42, 0x1e, 0xa2, 0xf9, 0xd5, - 0x04, 0x3b, 0x35, 0x99, 0xf8, 0x06, 0xcc, 0xc2, 0x50, 0x20, 0x1c, 0x1c, 0x81, 0x43, 0x01, 0x30, - 0x7c, 0x7f, 0xb4, 0x92, 0x42, 0x2c, 0x0c, 0xef, 0x23, 0x88, 0x2c, 0xe3, 0xdb, 0x76, 0x62, 0xd1, - 0x28, 0x4f, 0xfc, 0x25, 0x82, 0x1f, 0x21, 0x78, 0x19, 0xce, 0x04, 0x71, 0xe9, 0xf8, 0xb6, 0x7d, - 0xd3, 0x28, 0x3b, 0xbf, 0xb2, 0xa2, 0xaa, 0x64, 0x15, 0xe8, 0x4e, 0x9c, 0x26, 0x7f, 0xbe, 0x04, - 0xe3, 0x59, 0xc6, 0xf8, 0x22, 0x24, 0x5a, 0x31, 0xda, 0xc4, 0x6b, 0x84, 0x04, 0x82, 0xb3, 0x10, - 0x75, 0x77, 0xee, 0xdc, 0x09, 0x38, 0xde, 0x8a, 0x49, 0x73, 0x08, 0x63, 0x08, 0x4e, 0x01, 0x64, - 0x6d, 0xdb, 0xd4, 0x36, 0x88, 0x7b, 0xc4, 0x50, 0x6e, 0x0c, 0x0e, 0x06, 0xb1, 0x2a, 0xb6, 0x6d, - 0x5a, 0xb1, 0xf0, 0x69, 0x04, 0x13, 0xd0, 0x71, 0x59, 0xd9, 0xc0, 0x25, 0x2b, 0x86, 0x96, 0x46, - 0x61, 0x24, 0x88, 0xb8, 0xc4, 0xc6, 0xc3, 0xb9, 0xe3, 0x20, 0x16, 0x68, 0xc5, 0x23, 0x6f, 0x91, - 0xf2, 0xa1, 0x75, 0x50, 0xbc, 0x8d, 0x20, 0x5e, 0x1f, 0x14, 0x97, 0x35, 0x8b, 0xed, 0x11, 0xb7, - 0xa0, 0xbf, 0xc1, 0x75, 0xe3, 0x28, 0x11, 0x6a, 0xda, 0x62, 0x07, 0x85, 0x57, 0x6e, 0x90, 0x7a, - 0xfb, 0xbb, 0x48, 0x88, 0x5d, 0x70, 0xae, 0x22, 0x48, 0xea, 0xb3, 0x6a, 0x74, 0x64, 0xc2, 0xe4, - 0xbf, 0x00, 0x1c, 0xba, 0x54, 0x32, 0x36, 0x94, 0x92, 0x93, 0xcf, 0x0d, 0x5d, 0xc7, 0x05, 0x5b, - 0x33, 0x74, 0x2a, 0xcc, 0x0f, 0xda, 0x21, 0x66, 0x95, 0x34, 0xd9, 0x36, 0xe4, 0x22, 0x25, 0x93, - 0x55, 0xb3, 0x75, 0x02, 0xa2, 0x54, 0x1c, 0xc5, 0x30, 0xa9, 0x2c, 0x3f, 0x0d, 0xbf, 0xff, 0x00, - 0xfd, 0x24, 0x0c, 0xbd, 0x55, 0xa3, 0x64, 0x5b, 0xb6, 0x52, 0xb8, 0x45, 0xa3, 0x59, 0x7c, 0x35, - 0x08, 0x40, 0xd9, 0xb6, 0xe4, 0x6a, 0xb9, 0xc0, 0xe2, 0x9d, 0x9d, 0x1a, 0xad, 0x3b, 0x6c, 0x73, - 0xa5, 0x8a, 0x65, 0x63, 0x0a, 0x2a, 0xe6, 0xbe, 0x24, 0xb3, 0x84, 0xcb, 0x25, 0x85, 0xe7, 0xd5, - 0x6c, 0x20, 0x46, 0x5d, 0xce, 0x71, 0x2b, 0xc6, 0x40, 0x31, 0xe6, 0x9e, 0x0b, 0x82, 0x17, 0x9d, - 0x8b, 0xcf, 0x05, 0xe2, 0xd5, 0x68, 0xe9, 0x39, 0xc5, 0xf1, 0x62, 0x05, 0x2e, 0x4f, 0xb1, 0x50, - 0xae, 0x59, 0x98, 0x6d, 0x57, 0x7b, 0x5f, 0x9e, 0x3d, 0x30, 0x7b, 0x04, 0x58, 0x6c, 0x93, 0x7a, - 0xac, 0x92, 0x76, 0xd5, 0x60, 0x3e, 0x35, 0x4f, 0xba, 0xf4, 0x98, 0x55, 0x32, 0xfc, 0xce, 0x18, - 0xda, 0x9f, 0x33, 0x32, 0x50, 0xc3, 0x03, 0xba, 0x0a, 0x43, 0xaa, 0x66, 0x29, 0x1b, 0x25, 0x2c, - 0x6f, 0x1a, 0xe6, 0xb6, 0x62, 0xaa, 0x72, 0xd9, 0x34, 0x6e, 0xdf, 0xe1, 0x2f, 0x41, 0x04, 0x3e, - 0x0a, 0x63, 0xd5, 0xe2, 0x22, 0x92, 0x06, 0x38, 0xeb, 0x45, 0xc6, 0xb9, 0x4a, 0x18, 0xc5, 0x02, - 0x0c, 0x62, 0x3d, 0x00, 0xb0, 0x23, 0xf0, 0x8d, 0x23, 0x2f, 0x2b, 0x6b, 0x9a, 0x68, 0xd0, 0x44, - 0x48, 0xda, 0xe0, 0xb3, 0x88, 0x0c, 0xce, 0x4b, 0x39, 0xfb, 0x77, 0xc2, 0x3f, 0xed, 0xa0, 0xa3, - 0x70, 0x04, 0x46, 0x98, 0x26, 0x09, 0x1e, 0xc0, 0x89, 0x5a, 0x04, 0x5b, 0x62, 0x68, 0x2a, 0x35, - 0xf3, 0x68, 0x07, 0xdd, 0x17, 0xe0, 0x3a, 0x84, 0xe9, 0xb6, 0xb3, 0x02, 0x57, 0xe0, 0x58, 0x63, - 0x4c, 0x67, 0x62, 0xbc, 0x87, 0xb4, 0x8d, 0x04, 0xc3, 0x83, 0xe3, 0x8d, 0xc6, 0xce, 0xf4, 0x3b, - 0x4d, 0x5a, 0x8d, 0x6c, 0x09, 0x7a, 0xfd, 0x02, 0x64, 0xce, 0xc1, 0x48, 0x3d, 0x7c, 0x9a, 0x5f, - 0x55, 0x75, 0x32, 0x66, 0x34, 0x1b, 0xfb, 0x26, 0xf4, 0x70, 0x1d, 0x13, 0x54, 0xc9, 0x18, 0x9a, - 0xb8, 0x08, 0xf3, 0xa4, 0x7f, 0x0c, 0x5c, 0xa1, 0x4c, 0x64, 0x9e, 0xdd, 0x56, 0x61, 0x2c, 0xd8, - 0xe4, 0x99, 0xce, 0x05, 0x7a, 0x57, 0xcd, 0x1d, 0x83, 0xfe, 0x82, 0x6b, 0x98, 0x66, 0xe9, 0x39, - 0x77, 0x0a, 0x06, 0x7d, 0xfc, 0x0e, 0xe1, 0x81, 0x87, 0x3b, 0xa8, 0xfd, 0x43, 0xf6, 0xfa, 0x4f, - 0x98, 0x10, 0x9f, 0x49, 0x9d, 0xfd, 0xc2, 0x7d, 0xa4, 0xc8, 0xdb, 0xcb, 0x1f, 0x23, 0x18, 0x6b, - 0x92, 0x4b, 0xdd, 0xe4, 0xfe, 0x7d, 0x04, 0x23, 0x5c, 0x5f, 0xa7, 0x4e, 0xae, 0x89, 0x65, 0xf1, - 0x34, 0x7f, 0xba, 0x85, 0x33, 0x07, 0xa6, 0x69, 0x4f, 0xb6, 0x8f, 0x78, 0xb2, 0x7d, 0xbc, 0x18, - 0xcc, 0x62, 0x25, 0xff, 0x21, 0x04, 0x7d, 0xd9, 0x52, 0xc9, 0xd8, 0xc6, 0xea, 0x7a, 0x7e, 0x75, - 0xd5, 0x30, 0x6d, 0x4b, 0xbc, 0x06, 0x71, 0xc7, 0xca, 0x0a, 0x1b, 0x92, 0xab, 0x5a, 0x59, 0x2e, - 0x1b, 0x66, 0xcb, 0xe3, 0xf4, 0x5c, 0x98, 0xf4, 0x10, 0x8b, 0x6d, 0x92, 0xb3, 0x46, 0x0e, 0xae, - 0x56, 0x26, 0xb8, 0xe2, 0x05, 0xe8, 0xa9, 0x58, 0x58, 0xbe, 0x69, 0xdb, 0x1c, 0x4b, 0xd8, 0x03, - 0x56, 0x57, 0xc5, 0xc2, 0x8b, 0xb6, 0xcd, 0x10, 0x72, 0xd0, 0xeb, 0x20, 0x58, 0x0c, 0x22, 0xb4, - 0x07, 0x88, 0x6e, 0x0e, 0x61, 0x51, 0x8c, 0xd7, 0x61, 0xc0, 0x95, 0xc2, 0x03, 0x14, 0xde, 0x03, - 0x50, 0x8c, 0x03, 0x79, 0xc1, 0xba, 0x79, 0x2d, 0x40, 0x40, 0x2c, 0x9e, 0x28, 0x12, 0xc1, 0xcf, - 0xbf, 0x29, 0x21, 0xb5, 0x70, 0x2e, 0xfc, 0x05, 0xab, 0x11, 0xbb, 0x0a, 0x9e, 0x9b, 0xc7, 0xa0, - 0x8b, 0xa0, 0xc8, 0x9e, 0x47, 0xd7, 0x1d, 0xdc, 0x25, 0xa3, 0x67, 0x9d, 0x06, 0x99, 0xd7, 0x0d, - 0x6b, 0xd0, 0xe5, 0xc1, 0x13, 0xcf, 0x73, 0x56, 0x53, 0xd1, 0x8b, 0xd8, 0xe2, 0x95, 0xf3, 0x0b, - 0xbc, 0xcc, 0x8d, 0xdf, 0x0f, 0xf3, 0x4e, 0x30, 0xe6, 0xf4, 0x75, 0x1f, 0x0a, 0x48, 0x02, 0xc2, - 0x21, 0x51, 0x06, 0x0e, 0xfa, 0x9e, 0x00, 0x87, 0x57, 0x36, 0x37, 0x4b, 0x9a, 0x8e, 0xd7, 0x2a, - 0x66, 0x55, 0xab, 0xf2, 0xe7, 0x59, 0x57, 0x9c, 0xc7, 0x81, 0xdf, 0x84, 0x17, 0x74, 0x43, 0x36, - 0x18, 0x89, 0x6c, 0x79, 0x69, 0x68, 0xb1, 0xb3, 0xcb, 0x99, 0xc1, 0x88, 0x6e, 0x34, 0x83, 0x17, - 0x15, 0x38, 0xc2, 0xc3, 0xb6, 0x05, 0x7c, 0xeb, 0x03, 0xa0, 0x51, 0x06, 0xd0, 0x6c, 0x8a, 0xdc, - 0x0c, 0x1c, 0x69, 0x8e, 0xbd, 0x4b, 0x9d, 0xf6, 0x6f, 0x08, 0xfa, 0xe6, 0xe7, 0x2e, 0x5d, 0xcf, - 0x5d, 0x5a, 0x5d, 0xc5, 0x7c, 0x63, 0x3b, 0x0d, 0xbd, 0xca, 0x96, 0x72, 0xd7, 0xd0, 0x9d, 0x0a, - 0x96, 0xf7, 0xde, 0x51, 0x6e, 0xed, 0x32, 0x92, 0x7a, 0x18, 0x41, 0x96, 0x8d, 0x8b, 0x33, 0x10, - 0x63, 0x0b, 0x8e, 0x4d, 0x97, 0x47, 0xa8, 0xe7, 0xe9, 0x73, 0x48, 0x1c, 0xae, 0x23, 0x10, 0x52, - 0x2c, 0xe7, 0x99, 0x71, 0x1f, 0x21, 0x84, 0x89, 0x48, 0xfc, 0xd9, 0xb3, 0x67, 0xcf, 0x3a, 0xc7, - 0x91, 0x44, 0xc6, 0xc4, 0x19, 0x88, 0x28, 0x15, 0xfb, 0xa6, 0x7c, 0x0b, 0xdf, 0xe1, 0x9e, 0x7c, - 0xb0, 0xbe, 0x4b, 0xc1, 0x05, 0x93, 0xf5, 0x6e, 0x52, 0x27, 0x21, 0x7d, 0x1d, 0xdf, 0x49, 0xde, - 0x6f, 0x87, 0xbe, 0x75, 0x6d, 0x53, 0xc2, 0x45, 0xcd, 0xd0, 0xd9, 0x86, 0x23, 0x2e, 0xc0, 0x80, - 0xa5, 0x6c, 0x61, 0x59, 0xb1, 0xe8, 0xde, 0x2c, 0x9b, 0x74, 0x70, 0x17, 0xcb, 0xc7, 0x08, 0x4b, - 0xd6, 0x22, 0xe5, 0x27, 0x03, 0x13, 0xff, 0x51, 0x80, 0x6e, 0xc3, 0xbe, 0x89, 0x4d, 0x07, 0x80, - 0xbd, 0x75, 0xf8, 0x9e, 0xe0, 0x3c, 0x66, 0xf8, 0x03, 0xc1, 0xfc, 0x81, 0x20, 0x81, 0xb2, 0x39, - 0x69, 0x19, 0x15, 0xfb, 0xe6, 0xe4, 0x94, 0x14, 0x55, 0xca, 0x93, 0x58, 0xb1, 0xec, 0xc9, 0x29, - 0xa9, 0x57, 0x29, 0x4f, 0xea, 0x86, 0x69, 0xdf, 0x0c, 0xfc, 0x9f, 0x91, 0x40, 0x29, 0xbb, 0x6c, - 0xbd, 0xce, 0xb5, 0x87, 0xb6, 0xf6, 0x3f, 0x53, 0xf7, 0x7f, 0x5a, 0xea, 0x2e, 0x28, 0x93, 0x05, - 0xac, 0xdb, 0xa6, 0x52, 0x9a, 0x9c, 0x92, 0xba, 0x71, 0xc5, 0xf3, 0x0f, 0x70, 0x85, 0xcd, 0xc3, - 0xaf, 0x5d, 0xd1, 0x70, 0x65, 0x72, 0x1b, 0x53, 0x78, 0xf7, 0x32, 0x53, 0xbb, 0x9c, 0x96, 0x60, - 0x0b, 0xd7, 0x88, 0x2d, 0xc5, 0xd1, 0x23, 0x5a, 0xb1, 0x1a, 0x2e, 0x33, 0xf4, 0xd2, 0x41, 0x73, - 0x2e, 0x33, 0x24, 0x19, 0x50, 0x83, 0x71, 0x03, 0xce, 0x43, 0x47, 0x55, 0xdb, 0x94, 0x35, 0x95, - 0xe6, 0x94, 0x68, 0x6e, 0x92, 0x18, 0x6d, 0xdc, 0x7c, 0x31, 0x73, 0xec, 0xad, 0x71, 0xf5, 0x76, - 0x55, 0xdb, 0x6c, 0xfd, 0x0e, 0x5e, 0x7b, 0x55, 0xdb, 0xcc, 0xab, 0xb3, 0xda, 0xd3, 0xf3, 0xa1, - 0x33, 0xf4, 0x08, 0x48, 0x86, 0x3c, 0xf4, 0x30, 0xec, 0x84, 0xb1, 0x99, 0x58, 0xcf, 0x5f, 0x4c, - 0x9e, 0x0b, 0x5c, 0x6a, 0x71, 0x60, 0x4d, 0xd9, 0xc2, 0x09, 0x4e, 0x9a, 0xb5, 0x12, 0x64, 0x55, - 0x47, 0xba, 0x57, 0x88, 0x6c, 0xfc, 0x2e, 0x88, 0xd0, 0xb1, 0x9e, 0xbf, 0x98, 0xc8, 0xcf, 0x8f, - 0x44, 0x1c, 0x31, 0x73, 0xe3, 0xd0, 0x4f, 0xae, 0x18, 0x88, 0x13, 0x4d, 0x03, 0x0f, 0x77, 0x50, - 0xe8, 0xf1, 0x0e, 0x12, 0x48, 0x34, 0xf9, 0x0e, 0xdf, 0x96, 0xc2, 0x11, 0x21, 0x16, 0x4a, 0x7e, - 0x1a, 0x82, 0x81, 0x45, 0xc3, 0xb2, 0xc9, 0xee, 0x73, 0xb1, 0x56, 0xf3, 0x88, 0xbf, 0x05, 0xe1, - 0xaa, 0xb6, 0xc9, 0xb6, 0xc1, 0x68, 0xee, 0x32, 0xe1, 0x23, 0x06, 0x98, 0x7c, 0x17, 0x4d, 0x24, - 0xf7, 0x6c, 0x05, 0x77, 0x2b, 0x1c, 0x75, 0xae, 0xe2, 0x28, 0x8e, 0x24, 0x8a, 0x2c, 0x5e, 0x83, - 0x08, 0x91, 0x97, 0xf6, 0x54, 0x02, 0xdd, 0x6c, 0x83, 0xcf, 0x5d, 0xeb, 0x02, 0xc4, 0xb3, 0xc1, - 0x7a, 0x50, 0xa5, 0xce, 0xaa, 0xb6, 0x49, 0xb6, 0x76, 0xf1, 0x4d, 0x18, 0x73, 0x8d, 0x69, 0xd9, - 0xa6, 0x42, 0x8b, 0x0c, 0xa3, 0x8a, 0x4d, 0x99, 0x36, 0xa0, 0xb5, 0xa3, 0xcd, 0x66, 0xb1, 0x74, - 0xd8, 0xe2, 0x51, 0xe4, 0x70, 0xaf, 0x54, 0xb1, 0x99, 0xe7, 0xbc, 0xe2, 0xf7, 0xe0, 0x78, 0x13, - 0x78, 0x55, 0x33, 0x71, 0xc1, 0x76, 0x6a, 0x08, 0xbe, 0x13, 0x1d, 0x6f, 0x7e, 0x12, 0x7b, 0x59, - 0xd3, 0x6f, 0x65, 0xe7, 0x97, 0x7d, 0xaf, 0xac, 0x1d, 0x09, 0x9a, 0x7b, 0x9e, 0x02, 0xf3, 0x9a, - 0x21, 0x77, 0x12, 0x06, 0x9d, 0x32, 0xa5, 0x4a, 0x72, 0x27, 0xff, 0x7e, 0x81, 0xae, 0xb4, 0xe7, - 0x2d, 0x81, 0x33, 0x7c, 0xa5, 0x43, 0xb1, 0x70, 0xf2, 0x1d, 0x01, 0xe2, 0xab, 0xa6, 0x56, 0x55, - 0x6c, 0xcc, 0x51, 0x3c, 0x0b, 0xbd, 0x01, 0xec, 0x95, 0x07, 0xb9, 0xa4, 0xe9, 0xb7, 0x5a, 0x3e, - 0x80, 0x5a, 0xd9, 0xf8, 0x36, 0x2e, 0xd8, 0x12, 0xde, 0xa4, 0x22, 0x8f, 0xbd, 0x7f, 0xcf, 0xc3, - 0xf8, 0xc1, 0x03, 0xd4, 0x1b, 0x41, 0xe3, 0xe8, 0x34, 0x9a, 0xed, 0x60, 0xcd, 0xb7, 0x14, 0x2d, - 0x38, 0x5a, 0x8a, 0xa7, 0xa1, 0x93, 0x3f, 0xfc, 0x6e, 0x55, 0xc9, 0x2f, 0xb6, 0x49, 0x0e, 0x99, - 0x98, 0x86, 0x0e, 0xf6, 0x24, 0x69, 0x97, 0xd7, 0x07, 0x39, 0x55, 0x2e, 0x09, 0x7d, 0x4e, 0x11, - 0xe7, 0x18, 0x84, 0x6c, 0x24, 0xed, 0x9e, 0x22, 0x91, 0x97, 0x86, 0xff, 0xdc, 0x0e, 0x07, 0x7c, - 0x16, 0xf5, 0xd8, 0xe2, 0x1d, 0x04, 0x07, 0x98, 0x4e, 0x4a, 0xb1, 0x68, 0xe2, 0xa2, 0x62, 0x63, - 0xd5, 0x79, 0x83, 0x96, 0x05, 0x82, 0xf4, 0xfe, 0x03, 0x74, 0x72, 0x22, 0x54, 0x30, 0xed, 0x89, - 0x4e, 0xfe, 0x42, 0xfe, 0x44, 0xb8, 0x6c, 0x1a, 0xea, 0x44, 0xb7, 0xf7, 0xbd, 0xfc, 0x89, 0xce, - 0x4d, 0xac, 0x9a, 0xca, 0x56, 0x99, 0x6e, 0x16, 0xef, 0xa2, 0xce, 0xa4, 0xe7, 0xa9, 0x2e, 0x71, - 0xdd, 0x98, 0xc7, 0x75, 0x87, 0xe8, 0x94, 0x59, 0x77, 0x46, 0xf6, 0x18, 0x49, 0xfc, 0x23, 0x04, - 0x87, 0xd5, 0x82, 0xe3, 0x4f, 0x01, 0x12, 0x09, 0x5f, 0x9b, 0x44, 0x07, 0xd5, 0x02, 0x37, 0x4e, - 0x83, 0x54, 0xaf, 0x43, 0xd7, 0x4d, 0x9a, 0x2e, 0x64, 0x9a, 0x1e, 0xc2, 0x2d, 0x5a, 0xbe, 0x80, - 0xb4, 0xb2, 0xd8, 0x26, 0x01, 0x63, 0x5f, 0x27, 0x29, 0xe0, 0x55, 0xe8, 0xb1, 0x6c, 0x45, 0x57, - 0x49, 0x91, 0x4f, 0xe1, 0x5a, 0x7b, 0x47, 0xb7, 0x43, 0x4c, 0x99, 0x5f, 0x81, 0xe8, 0x96, 0xa2, - 0x57, 0x94, 0x92, 0x5c, 0xdc, 0x6e, 0x5d, 0x15, 0x7f, 0xce, 0x6a, 0xbd, 0x08, 0x23, 0xbf, 0xb4, - 0x2d, 0x4e, 0xd1, 0xdd, 0xda, 0x90, 0xc9, 0xae, 0xde, 0xea, 0xfb, 0x1b, 0x44, 0xb7, 0x6a, 0x23, - 0x6b, 0xe9, 0xe2, 0x04, 0x00, 0x2f, 0x34, 0x09, 0x53, 0x94, 0x96, 0x02, 0x51, 0xf7, 0x68, 0x65, - 0x11, 0x49, 0x51, 0x36, 0x9c, 0xb5, 0xf4, 0xdc, 0x51, 0x00, 0x92, 0xd9, 0x3c, 0x65, 0xa4, 0x13, - 0x98, 0xed, 0x33, 0xa9, 0x33, 0xa9, 0xb3, 0x44, 0x9e, 0xdc, 0x11, 0x00, 0xc5, 0xf2, 0xe5, 0x69, - 0xcf, 0xa7, 0x34, 0xaf, 0xd4, 0xa2, 0x97, 0x7d, 0x42, 0xb3, 0x14, 0x8e, 0x40, 0xac, 0x6b, 0x29, - 0x1c, 0xe9, 0x8a, 0x75, 0x2f, 0x85, 0x23, 0xdd, 0xb1, 0x9e, 0x24, 0x86, 0x58, 0x7d, 0x1e, 0x11, - 0xdf, 0x80, 0x61, 0xea, 0x4c, 0x24, 0x24, 0xdd, 0xae, 0xc6, 0x73, 0x2a, 0x71, 0x88, 0xc6, 0xa9, - 0xe0, 0x8d, 0x53, 0x5e, 0xf7, 0x8c, 0x5f, 0x90, 0x06, 0x5d, 0x56, 0xde, 0xa6, 0xd0, 0x53, 0x8f, - 0x9f, 0x22, 0xe8, 0xf7, 0xc5, 0x4b, 0x5e, 0xdf, 0x34, 0xc4, 0x57, 0xe0, 0xa0, 0x3f, 0xdf, 0xc9, - 0xc4, 0x49, 0xb6, 0x95, 0x3b, 0x64, 0xc3, 0xa4, 0x73, 0x49, 0xc3, 0xaa, 0x97, 0xeb, 0x12, 0x1b, - 0xce, 0xab, 0x62, 0x0e, 0x3a, 0xaa, 0xc5, 0xed, 0xda, 0x77, 0x16, 0x27, 0xbd, 0x9f, 0xe5, 0x14, - 0xb7, 0x77, 0xdb, 0x56, 0x8b, 0xdb, 0x79, 0xb5, 0x49, 0x45, 0xf6, 0x7f, 0xcf, 0x9e, 0x3d, 0xeb, - 0xe3, 0x15, 0x59, 0xf2, 0x6f, 0x10, 0x1c, 0xc8, 0x5e, 0x5f, 0x5b, 0xce, 0x5e, 0xe5, 0x53, 0x7b, - 0x3e, 0x3d, 0xfa, 0x36, 0x44, 0x75, 0xc5, 0x96, 0x99, 0x14, 0xcc, 0x32, 0x97, 0x9b, 0xbd, 0xe4, - 0xec, 0x9c, 0xe1, 0x0c, 0x79, 0xc4, 0xd4, 0x95, 0x5d, 0xbf, 0x5e, 0xe9, 0xd4, 0x15, 0xfb, 0xd2, - 0x76, 0x5e, 0xcd, 0x0d, 0xbb, 0x8f, 0xe5, 0xbb, 0x9d, 0x8f, 0x56, 0xfe, 0xfa, 0x81, 0x9b, 0x9a, - 0xff, 0x04, 0x41, 0x32, 0x7b, 0x7d, 0x6d, 0x5d, 0x33, 0xed, 0x8a, 0x52, 0xe2, 0x49, 0xba, 0x51, - 0xe0, 0x37, 0x5c, 0x9b, 0x31, 0x69, 0xcf, 0x79, 0x4f, 0x97, 0x86, 0xf6, 0x61, 0x40, 0xfa, 0x5d, - 0x53, 0x71, 0x77, 0xb9, 0xde, 0x16, 0xa0, 0x7f, 0x0d, 0x17, 0x2a, 0xa6, 0x66, 0xdf, 0xa1, 0xaf, - 0x72, 0x51, 0x31, 0x2a, 0x70, 0xd0, 0x3d, 0x0c, 0xe5, 0x83, 0xfc, 0xb5, 0x2e, 0x57, 0xb2, 0x59, - 0xaf, 0x64, 0x83, 0x9e, 0x9a, 0xc9, 0x2a, 0xb6, 0x14, 0xec, 0xbb, 0x6f, 0x1d, 0x93, 0x9c, 0x4f, - 0x3f, 0x7c, 0x13, 0xe7, 0x55, 0xd1, 0x82, 0xb8, 0x73, 0xac, 0xd0, 0x30, 0xab, 0xf0, 0xdc, 0xb3, - 0x0e, 0xf1, 0xf3, 0x5e, 0xff, 0xa4, 0xee, 0x57, 0x54, 0xef, 0x22, 0x38, 0xe0, 0xdf, 0x3c, 0xe9, - 0xbe, 0xcb, 0x1b, 0x90, 0xc1, 0x32, 0x1b, 0x0a, 0x08, 0x36, 0x49, 0xe4, 0x63, 0x9e, 0x68, 0x12, - 0x17, 0x7c, 0xbb, 0xad, 0xd0, 0xe2, 0x2c, 0x8b, 0x54, 0x7d, 0x6e, 0x7c, 0xd3, 0xb6, 0xa1, 0xb6, - 0xa1, 0x26, 0x55, 0xe8, 0x6f, 0x18, 0x17, 0x45, 0xef, 0x39, 0x28, 0x7f, 0xa7, 0x76, 0x1a, 0xda, - 0x2d, 0x5b, 0xe1, 0x67, 0x39, 0xbd, 0x99, 0x17, 0xea, 0xa6, 0x72, 0x01, 0xd6, 0x08, 0x91, 0xc4, - 0x68, 0x5d, 0xd5, 0x0b, 0x10, 0x25, 0xb3, 0x2c, 0x98, 0xa6, 0x61, 0x8a, 0x27, 0xa1, 0x1f, 0x93, - 0x0b, 0x59, 0xc5, 0x56, 0xc1, 0xd4, 0xe8, 0x26, 0xcb, 0xa7, 0x8a, 0xd1, 0x81, 0xf9, 0xda, 0x7d, - 0xf1, 0x04, 0xc4, 0xac, 0x4a, 0xb1, 0x88, 0xe9, 0x46, 0xa1, 0xd0, 0x27, 0x1d, 0x6c, 0xa5, 0xa4, - 0x3e, 0xf7, 0x7e, 0x96, 0xde, 0x26, 0x71, 0x3a, 0x7c, 0x8d, 0x1e, 0x47, 0xbb, 0x73, 0x49, 0xf8, - 0xb7, 0x2b, 0xd8, 0xb2, 0xc5, 0xc3, 0x24, 0x4c, 0xb7, 0xb0, 0x55, 0x56, 0x0a, 0x8e, 0x56, 0xb5, - 0x1b, 0xae, 0xba, 0x82, 0x47, 0xdd, 0x61, 0xe8, 0xb0, 0xb1, 0xae, 0xe8, 0xec, 0xb9, 0x44, 0x54, - 0xe2, 0xff, 0xc4, 0xd7, 0xa0, 0x8b, 0x56, 0x6d, 0x54, 0x50, 0xb2, 0x6b, 0x85, 0x02, 0xce, 0x91, - 0x6a, 0x76, 0x67, 0x52, 0x80, 0xe5, 0x5c, 0x5a, 0xc9, 0x83, 0x70, 0xa0, 0x41, 0x48, 0xab, 0x6c, - 0xe8, 0x16, 0x4e, 0xe6, 0x61, 0x68, 0x9d, 0x7f, 0x66, 0xca, 0x36, 0xba, 0x2f, 0x2d, 0x7e, 0x32, - 0x0e, 0xc3, 0xf5, 0x50, 0x6c, 0x92, 0x89, 0xef, 0xc1, 0x10, 0xbb, 0xc3, 0xc7, 0x35, 0x43, 0xa7, - 0x4b, 0x26, 0x1e, 0x84, 0xa1, 0xf5, 0xec, 0xe5, 0xfc, 0x7c, 0xf6, 0x6a, 0x7e, 0x65, 0x59, 0x5e, - 0xbb, 0x9a, 0xbd, 0xba, 0x20, 0x2f, 0xaf, 0x2c, 0x2f, 0xc4, 0xda, 0xc4, 0x11, 0x18, 0xf6, 0x0c, - 0xe5, 0x97, 0xe5, 0x55, 0x69, 0xe5, 0x92, 0xb4, 0xb0, 0xb6, 0x16, 0x43, 0xe2, 0x10, 0xf4, 0x7b, - 0xc6, 0x2e, 0x66, 0xf3, 0x97, 0x17, 0xe6, 0x63, 0x82, 0x18, 0x87, 0x41, 0x2f, 0xda, 0xb5, 0xb9, - 0xb9, 0x85, 0x85, 0xf9, 0x85, 0xf9, 0x58, 0x28, 0xf7, 0x36, 0x7a, 0xfc, 0xe9, 0x68, 0xdb, 0x47, - 0x9f, 0x8e, 0xb6, 0x7d, 0xf1, 0xe9, 0x28, 0xba, 0xff, 0x64, 0x14, 0xfd, 0xf8, 0xc9, 0x28, 0xfa, - 0xf0, 0xc9, 0x28, 0x7a, 0xfc, 0x64, 0x14, 0x7d, 0xf4, 0x64, 0x14, 0x7d, 0xf2, 0x64, 0x14, 0x7d, - 0xfe, 0x64, 0xb4, 0xed, 0x8b, 0x27, 0xa3, 0xe8, 0x87, 0x9f, 0x8d, 0xb6, 0x3d, 0xfc, 0x6c, 0x14, - 0x3d, 0xfe, 0x6c, 0xb4, 0xed, 0xa3, 0xcf, 0x46, 0xdb, 0x6e, 0xe4, 0x8b, 0x46, 0xf9, 0x56, 0x31, - 0x5d, 0x35, 0x4a, 0x36, 0x36, 0x4d, 0x25, 0x5d, 0xb1, 0x4e, 0xd1, 0x8b, 0x4d, 0xc3, 0xdc, 0x9a, - 0x2c, 0x9b, 0x46, 0x55, 0x53, 0xb1, 0x39, 0xe9, 0x0c, 0x9f, 0x2a, 0x6f, 0x14, 0x8d, 0x53, 0xf8, - 0xb6, 0xcd, 0x3f, 0xc3, 0xf5, 0x7e, 0x8d, 0xbb, 0xd1, 0x41, 0x3f, 0xc4, 0x9d, 0xfe, 0xff, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x6b, 0x7f, 0x57, 0x75, 0xa6, 0x3c, 0x00, 0x00, + 0x76, 0xd6, 0x25, 0x29, 0x89, 0x3c, 0xfa, 0xa3, 0x46, 0x3f, 0xa6, 0x65, 0x47, 0xa2, 0x69, 0x3b, + 0x91, 0x65, 0x8a, 0xb6, 0x28, 0xd9, 0x71, 0x94, 0x85, 0x63, 0x52, 0x92, 0x2d, 0x2a, 0xb6, 0xa4, + 0x8c, 0x6c, 0xb9, 0xeb, 0x6d, 0x32, 0x1d, 0x71, 0xae, 0xe8, 0x59, 0x53, 0x33, 0xd3, 0x99, 0x21, + 0x65, 0x7b, 0xd7, 0x58, 0x17, 0x58, 0x20, 0x6d, 0xb6, 0x68, 0x17, 0x69, 0x8b, 0xa6, 0xbb, 0x28, + 0x5a, 0xa0, 0x2f, 0x8b, 0xb4, 0x0f, 0x8b, 0xa2, 0xfb, 0x12, 0x19, 0x85, 0xd1, 0x87, 0x22, 0xf5, + 0xc3, 0xd6, 0xdb, 0xbe, 0x04, 0x01, 0xb6, 0x48, 0x9c, 0x97, 0xb4, 0xc0, 0xa2, 0x81, 0x5f, 0xba, + 0x0f, 0x45, 0x5d, 0xdc, 0x9f, 0x19, 0xce, 0x90, 0x43, 0x4a, 0x8a, 0x93, 0x87, 0x7d, 0xe2, 0x70, + 0xee, 0x39, 0xdf, 0x3d, 0xe7, 0xdc, 0x73, 0xce, 0x3d, 0x67, 0xee, 0x0c, 0x1c, 0xab, 0x62, 0x2b, + 0xa3, 0xea, 0xa7, 0xac, 0xe2, 0x4d, 0xbc, 0x25, 0x9f, 0xaa, 0xaa, 0x78, 0xdb, 0x3a, 0x65, 0xa9, + 0x36, 0x96, 0xec, 0x3b, 0x06, 0xb6, 0x32, 0x86, 0xa9, 0xdb, 0xba, 0x30, 0xc0, 0xa8, 0x32, 0x8c, + 0x2a, 0x43, 0xa9, 0x46, 0x26, 0x4b, 0xaa, 0x7d, 0xb3, 0xb2, 0x91, 0x29, 0xea, 0x5b, 0xa7, 0x4a, + 0x7a, 0x49, 0x3f, 0x45, 0x69, 0x37, 0x2a, 0x9b, 0xf4, 0x1f, 0xfd, 0x43, 0xaf, 0x18, 0xc6, 0xc8, + 0x01, 0xff, 0x4c, 0x1a, 0xb6, 0xf9, 0xc0, 0x21, 0xff, 0x80, 0x6e, 0xd8, 0xaa, 0xae, 0xf1, 0x99, + 0x47, 0x0e, 0xfa, 0x07, 0x3d, 0x42, 0x8d, 0x1c, 0xae, 0x13, 0x5d, 0x2e, 0xab, 0x8a, 0x6c, 0x63, + 0x3e, 0x9a, 0x6c, 0x54, 0x4c, 0xf2, 0x43, 0x8f, 0x05, 0xa9, 0xee, 0x99, 0x20, 0xf5, 0xf7, 0x21, + 0x88, 0xe7, 0xae, 0xaf, 0xad, 0xaf, 0xce, 0xad, 0xca, 0xa6, 0xbc, 0x65, 0x5d, 0xbd, 0x63, 0x60, + 0x61, 0x02, 0xa2, 0x9a, 0xbc, 0x85, 0x25, 0x5b, 0x2e, 0x25, 0x42, 0x49, 0x34, 0x1e, 0xcb, 0xf7, + 0xfc, 0x7a, 0x07, 0xb5, 0x7d, 0xf0, 0x9f, 0x0f, 0xc3, 0x11, 0x33, 0x94, 0xb8, 0xb0, 0xd8, 0x26, + 0x76, 0x12, 0x82, 0xab, 0x72, 0x49, 0x98, 0x85, 0x6e, 0xb9, 0x62, 0xeb, 0x25, 0xac, 0x61, 0x53, + 0xb6, 0x71, 0x22, 0x9a, 0x44, 0xe3, 0x5d, 0xd9, 0xc1, 0x8c, 0xdf, 0x9a, 0x0b, 0x5b, 0x86, 0x7d, + 0x67, 0xb1, 0x4d, 0xf4, 0xd1, 0x0a, 0x0b, 0xd0, 0x6d, 0x98, 0xea, 0x96, 0x6c, 0xde, 0x91, 0x54, + 0xa3, 0x3a, 0x93, 0x08, 0xd3, 0xb9, 0x52, 0xce, 0x5c, 0xed, 0x66, 0xf8, 0xd7, 0x08, 0xf1, 0xab, + 0xf7, 0x42, 0x87, 0xf9, 0xd5, 0x0f, 0x43, 0x71, 0xb1, 0x8b, 0xf3, 0x15, 0x8c, 0xea, 0x8c, 0x30, + 0x09, 0x3d, 0x72, 0xb9, 0xac, 0x17, 0x65, 0x1b, 0x13, 0x9c, 0xb3, 0x89, 0x8e, 0x24, 0x1a, 0x8f, + 0xe6, 0xa3, 0x9f, 0xef, 0x20, 0x44, 0xb0, 0xc4, 0x6e, 0x67, 0xb8, 0x60, 0x54, 0xcf, 0xce, 0x46, + 0x9f, 0x9e, 0x6f, 0x7f, 0x39, 0x3d, 0x9d, 0x3e, 0x9b, 0x1f, 0x85, 0x2e, 0xaa, 0x67, 0xf1, 0xa6, + 0xae, 0x16, 0xb1, 0xd0, 0xf7, 0x70, 0x07, 0x45, 0x1f, 0xef, 0xa0, 0xce, 0x27, 0x3b, 0x28, 0x7c, + 0x2e, 0x9d, 0x5d, 0x8a, 0x44, 0x51, 0x3c, 0xb4, 0x14, 0x89, 0x46, 0xe2, 0xed, 0x4b, 0x91, 0x68, + 0x7b, 0xbc, 0x63, 0x29, 0x12, 0xed, 0x8c, 0x47, 0x53, 0x1f, 0x23, 0xc7, 0x68, 0x8c, 0x93, 0x1a, + 0xed, 0x02, 0x74, 0x6a, 0x78, 0x5b, 0xaa, 0x1a, 0xc5, 0x04, 0xa2, 0x36, 0x38, 0x9e, 0x09, 0xf0, + 0xa8, 0x4c, 0xbd, 0xb1, 0x17, 0xdb, 0xc4, 0x0e, 0x0d, 0x6f, 0xaf, 0x1b, 0x45, 0xa1, 0x08, 0x1d, + 0x55, 0xa3, 0x28, 0xa9, 0x0a, 0x37, 0xfa, 0x12, 0x35, 0xc4, 0x03, 0xd4, 0x7b, 0x1a, 0xcd, 0x42, + 0xb1, 0xac, 0x57, 0x94, 0x49, 0x45, 0xb6, 0x65, 0x77, 0x19, 0xc8, 0xc5, 0x8b, 0xe6, 0xb1, 0x6c, + 0xea, 0xad, 0xf1, 0xaa, 0x51, 0x9c, 0x3c, 0x31, 0xfe, 0x2d, 0x79, 0xf2, 0xee, 0xe9, 0xc9, 0x57, + 0xde, 0xfc, 0xce, 0xb9, 0x7b, 0xdf, 0x75, 0xaf, 0xa7, 0x5e, 0xbe, 0x77, 0xe2, 0xd8, 0x62, 0x9b, + 0xd8, 0x5e, 0x35, 0x8a, 0x05, 0x25, 0x7f, 0x10, 0x3a, 0x3c, 0xea, 0xa2, 0xc7, 0x3b, 0x28, 0x4c, + 0xd4, 0x9d, 0xa2, 0xea, 0x86, 0xe3, 0x91, 0xd4, 0x8f, 0x11, 0x0c, 0xce, 0x91, 0xc9, 0xd6, 0x2a, + 0x1b, 0x1a, 0xb6, 0xa9, 0xa4, 0x54, 0xc1, 0x34, 0x44, 0xe8, 0x2a, 0x21, 0x2a, 0x5c, 0xa2, 0xd9, + 0x2a, 0x89, 0x94, 0x4a, 0xb8, 0x42, 0xa9, 0xcf, 0x72, 0x55, 0x5e, 0xf9, 0xaf, 0x7b, 0xe3, 0x0a, + 0xde, 0xd2, 0xa7, 0xd2, 0x36, 0xb6, 0xec, 0x74, 0xd1, 0xb4, 0xd3, 0x96, 0x2d, 0x97, 0x54, 0xad, + 0x94, 0xb6, 0xf4, 0x4d, 0x7b, 0x43, 0xd6, 0x6e, 0x49, 0x5b, 0xb8, 0x98, 0x36, 0x4c, 0x5d, 0xf1, + 0x00, 0xdf, 0x0f, 0x21, 0x0a, 0x77, 0x76, 0xb6, 0xe3, 0xe9, 0x79, 0x22, 0x63, 0xea, 0xbf, 0x11, + 0xf4, 0x79, 0xa4, 0xa3, 0x82, 0x2d, 0x43, 0xb7, 0x45, 0xff, 0x49, 0x06, 0x11, 0x96, 0x9b, 0xff, + 0x44, 0xa0, 0xf9, 0x83, 0x34, 0x5b, 0x6c, 0x13, 0xbb, 0xac, 0xda, 0x2d, 0xe1, 0x16, 0x08, 0xf8, + 0xb6, 0x6a, 0xd9, 0xaa, 0x56, 0x92, 0x38, 0xb0, 0xbb, 0x26, 0xaf, 0xfa, 0x02, 0x81, 0x5c, 0x9c, + 0x30, 0x5f, 0xca, 0x1e, 0x7f, 0x6b, 0x9c, 0x11, 0xee, 0xb6, 0x08, 0x71, 0x07, 0x98, 0x89, 0xb0, + 0x97, 0xf5, 0xf8, 0x79, 0x84, 0x3a, 0x9b, 0xc3, 0xc0, 0x22, 0xf4, 0x10, 0x74, 0xca, 0x77, 0x25, + 0xe2, 0xbc, 0x7c, 0x39, 0x42, 0x09, 0x24, 0x76, 0xc8, 0x77, 0x97, 0xe5, 0x2d, 0x2c, 0x64, 0xa0, + 0x5f, 0xaf, 0xd8, 0x96, 0xaa, 0xe0, 0x06, 0xf1, 0x09, 0x59, 0x1f, 0x1f, 0x74, 0x10, 0x85, 0x34, + 0xc4, 0x55, 0xad, 0x8e, 0x3c, 0xec, 0x92, 0xf7, 0xb2, 0x31, 0x97, 0xfa, 0x34, 0x08, 0xdb, 0xba, + 0x79, 0xab, 0xac, 0xcb, 0x8a, 0x87, 0x3e, 0xe2, 0xd2, 0xc7, 0x9d, 0x51, 0x97, 0xe3, 0x0a, 0xf4, + 0xfa, 0xe5, 0x49, 0xb4, 0xd3, 0x15, 0x7a, 0xb1, 0x59, 0x80, 0x70, 0x4e, 0x6d, 0x53, 0x27, 0xca, + 0x8a, 0x3d, 0x3e, 0x81, 0x85, 0xd7, 0xa1, 0xc7, 0x27, 0x2e, 0x0d, 0xf7, 0xbd, 0xa3, 0x75, 0x7b, + 0xf5, 0x11, 0x56, 0xa0, 0xaf, 0x4e, 0x9b, 0x44, 0xe7, 0xbe, 0xe0, 0x7a, 0xfd, 0xea, 0xce, 0xfe, + 0x15, 0x7a, 0xb4, 0x83, 0x7e, 0x84, 0xe0, 0x28, 0x74, 0xe6, 0x6e, 0x24, 0xc9, 0x7a, 0x8c, 0x24, + 0x60, 0xd8, 0xaf, 0x7f, 0x86, 0xaf, 0x1d, 0x1c, 0x85, 0x9e, 0x02, 0x95, 0x26, 0xc9, 0xb8, 0x47, + 0x84, 0xba, 0xa5, 0xc8, 0xa8, 0x0a, 0x1c, 0x87, 0xde, 0x15, 0xc6, 0xee, 0x50, 0x0d, 0xd4, 0x2f, + 0x30, 0x21, 0x7b, 0x09, 0xfa, 0xae, 0x73, 0x51, 0x1c, 0xba, 0xc1, 0x86, 0xa5, 0xca, 0xa8, 0x4a, + 0xea, 0x7f, 0x11, 0xf4, 0x37, 0xe8, 0x21, 0x5c, 0xab, 0xf7, 0xa8, 0x6f, 0x10, 0xe7, 0x7e, 0xd9, + 0x3c, 0x93, 0x9d, 0x7e, 0x8b, 0xfa, 0xf4, 0x9b, 0xdf, 0xc9, 0xde, 0x3b, 0x31, 0xf9, 0xda, 0x78, + 0x49, 0xaf, 0x4e, 0x9e, 0x78, 0xad, 0xe6, 0xe6, 0x33, 0xe9, 0xec, 0xe9, 0x7b, 0x27, 0x26, 0x6b, + 0x37, 0xb2, 0xf7, 0x4e, 0x1c, 0x73, 0x7d, 0xf1, 0x75, 0x08, 0x7d, 0x25, 0xb1, 0x23, 0x86, 0x54, + 0x45, 0x98, 0x83, 0x2e, 0x92, 0x5b, 0x24, 0xc3, 0xc4, 0x9b, 0xea, 0xed, 0x3d, 0x6f, 0x17, 0x51, + 0x11, 0x08, 0xdb, 0x2a, 0xe5, 0x4a, 0xfd, 0x6b, 0x18, 0x46, 0x58, 0x12, 0x5e, 0xd1, 0x70, 0x41, + 0xb3, 0xb1, 0xb9, 0x29, 0x17, 0xf1, 0xb2, 0xae, 0xb0, 0x34, 0x7e, 0x0e, 0xba, 0xe4, 0x6d, 0x4b, + 0xf2, 0xdb, 0x22, 0xc1, 0x33, 0x71, 0x3c, 0x8a, 0xfc, 0xb9, 0x58, 0x8c, 0xc9, 0xdb, 0x56, 0x8e, + 0xa9, 0x7a, 0x05, 0xba, 0xc9, 0x2e, 0x53, 0x76, 0xfc, 0x28, 0x44, 0xfd, 0xe8, 0xd8, 0x6e, 0x69, + 0x88, 0xcc, 0x9a, 0x8f, 0xfc, 0xf4, 0x01, 0x42, 0x62, 0x17, 0xe5, 0xe7, 0x9e, 0x99, 0x85, 0x98, + 0xa2, 0x5a, 0xb7, 0x24, 0x4b, 0xbd, 0x8b, 0x69, 0x78, 0xf5, 0xe4, 0x87, 0x3e, 0xba, 0x87, 0xc8, + 0xa6, 0xf6, 0xfb, 0x0f, 0x50, 0x3f, 0xd5, 0x6e, 0x22, 0x9c, 0xb8, 0x1f, 0x17, 0xa3, 0x84, 0x6e, + 0x4d, 0xbd, 0x8b, 0x67, 0x7f, 0x85, 0x9e, 0x9e, 0x6f, 0x9f, 0x4a, 0x4f, 0xa7, 0xb3, 0x8f, 0x76, + 0xd0, 0x27, 0x08, 0x52, 0xd0, 0x9f, 0xab, 0xca, 0x6a, 0x59, 0xde, 0x50, 0xcb, 0xaa, 0x7d, 0x27, + 0x79, 0x43, 0xd7, 0xf0, 0x48, 0x8f, 0x4f, 0x43, 0x28, 0x41, 0x17, 0x9b, 0x31, 0x49, 0x24, 0x99, + 0xf8, 0x2d, 0x58, 0x87, 0x97, 0xe0, 0xa0, 0x57, 0x93, 0x8c, 0x37, 0xbb, 0x66, 0x61, 0x4e, 0xd7, + 0x36, 0xd5, 0x52, 0xc5, 0xc4, 0x0a, 0x9c, 0x84, 0x31, 0x1f, 0x61, 0x63, 0xda, 0xcc, 0x46, 0x17, + 0xf8, 0x3d, 0x78, 0x03, 0xba, 0xf9, 0x44, 0xeb, 0x72, 0xb9, 0x82, 0xb3, 0x39, 0x18, 0x6d, 0x3a, + 0x4b, 0x86, 0x2c, 0xd8, 0xae, 0xe0, 0x3c, 0x43, 0x7e, 0x1c, 0x75, 0x56, 0xf4, 0xea, 0xb6, 0xfe, + 0x55, 0xae, 0xe8, 0x65, 0x18, 0x36, 0xb1, 0x85, 0xcd, 0x2a, 0x56, 0xa4, 0xa0, 0x94, 0xd3, 0xac, + 0xca, 0x19, 0x74, 0xb8, 0x0a, 0xde, 0x54, 0xf3, 0x46, 0x7d, 0xde, 0xda, 0xb7, 0x83, 0x90, 0x02, + 0x4a, 0xf5, 0x43, 0xd6, 0x67, 0xd6, 0xf0, 0xbe, 0x9d, 0xae, 0x2e, 0xbb, 0xae, 0x35, 0x4b, 0x88, + 0xfb, 0xc1, 0xac, 0x4b, 0x8a, 0x7e, 0x5f, 0x8e, 0xee, 0xcd, 0x97, 0x7f, 0x19, 0x79, 0x7a, 0xbe, + 0x73, 0x2a, 0x4d, 0x2a, 0xb5, 0x33, 0x8f, 0x76, 0xd0, 0xcf, 0x23, 0x7b, 0xf2, 0xe6, 0x1f, 0x23, + 0x10, 0x7c, 0x29, 0x95, 0x79, 0xf5, 0xf7, 0x11, 0xfc, 0x1e, 0x82, 0x97, 0x9a, 0xad, 0x67, 0xb6, + 0x27, 0xe7, 0xa9, 0x4b, 0x15, 0x18, 0x87, 0x11, 0x7f, 0x1a, 0x6e, 0x1a, 0x01, 0x69, 0x48, 0xfa, + 0x29, 0x5b, 0x86, 0xc0, 0x0d, 0x18, 0xf0, 0x0b, 0xc7, 0x22, 0x61, 0x0e, 0xc6, 0x9a, 0x4f, 0xc7, + 0x42, 0x61, 0xd7, 0x59, 0xc0, 0x82, 0x01, 0xff, 0x36, 0xc1, 0x34, 0xff, 0x6d, 0xb8, 0x01, 0x27, + 0xe0, 0x50, 0xdd, 0x7e, 0xd1, 0x54, 0x9f, 0x49, 0x38, 0x52, 0x47, 0xda, 0x52, 0xa1, 0x37, 0x61, + 0xb0, 0x6e, 0x52, 0xa6, 0xd1, 0x02, 0x24, 0x5b, 0xcc, 0xc8, 0x54, 0xda, 0x7d, 0x22, 0xb8, 0xd1, + 0xb0, 0xa7, 0x65, 0x2f, 0xc1, 0x91, 0xfa, 0x3d, 0xad, 0x11, 0x3a, 0x55, 0x4f, 0xd2, 0x88, 0x5d, + 0x57, 0x78, 0x75, 0x3c, 0xde, 0x41, 0xed, 0xa4, 0xf0, 0x3a, 0x4b, 0x0b, 0x2f, 0x56, 0xeb, 0x47, + 0xe2, 0xed, 0xa9, 0x5f, 0x21, 0x18, 0xc8, 0xdd, 0xad, 0x98, 0x78, 0xdd, 0xa9, 0x0f, 0x59, 0x05, + 0x76, 0x1c, 0x22, 0x9e, 0x74, 0xd2, 0xe7, 0x6c, 0x42, 0x1d, 0x66, 0x24, 0x8e, 0x68, 0x87, 0x44, + 0x87, 0x1b, 0xda, 0xa3, 0xc8, 0x73, 0xb4, 0x47, 0xa1, 0x3d, 0xef, 0x77, 0xde, 0xf6, 0x88, 0x96, + 0xce, 0xd3, 0xe9, 0x6c, 0x50, 0xb7, 0x13, 0x71, 0xca, 0xcd, 0x99, 0xf4, 0x14, 0x4f, 0xa6, 0x7f, + 0x81, 0xa0, 0xc7, 0xd5, 0x97, 0x6a, 0xba, 0x08, 0xbd, 0x26, 0xb6, 0xf4, 0x8a, 0x59, 0xc4, 0x52, + 0xc9, 0xd4, 0x2b, 0x06, 0xd7, 0xf9, 0x48, 0xf3, 0xf6, 0x84, 0x5b, 0x41, 0xec, 0x71, 0x18, 0x2f, + 0x11, 0x3e, 0xe1, 0x3c, 0xc4, 0xaa, 0xc4, 0xfa, 0xd4, 0x70, 0xa1, 0xbd, 0x82, 0x44, 0x09, 0x0f, + 0xc9, 0xc7, 0xa9, 0x0f, 0xbd, 0x6b, 0x31, 0x57, 0x6b, 0xbd, 0x16, 0x20, 0x4a, 0x5b, 0xaf, 0x5a, + 0x52, 0x1d, 0x0f, 0xae, 0xde, 0x1a, 0xd7, 0x91, 0xb6, 0xb2, 0x78, 0x9b, 0xdc, 0x14, 0x0a, 0xd0, + 0xe3, 0xfa, 0x49, 0xb5, 0x96, 0x4c, 0x53, 0xad, 0xb1, 0x38, 0x4a, 0xb7, 0xc3, 0x4a, 0xee, 0xd5, + 0x39, 0x57, 0xe8, 0xf1, 0x0e, 0x42, 0xc4, 0xcc, 0xd9, 0xf4, 0x34, 0x6b, 0x2a, 0x53, 0x7f, 0x1a, + 0x82, 0x3e, 0x0a, 0xe1, 0xe9, 0x63, 0x32, 0xc0, 0xdb, 0x10, 0xef, 0x46, 0xe5, 0xef, 0xbc, 0x45, + 0x60, 0x14, 0x74, 0x7b, 0x7a, 0x03, 0x06, 0x38, 0xbd, 0x67, 0x7d, 0x0c, 0x6e, 0xd8, 0xb1, 0x5d, + 0x9a, 0xc7, 0xc5, 0x36, 0xb1, 0x9f, 0x71, 0x8b, 0xee, 0x1a, 0x19, 0xc2, 0x45, 0x18, 0xa8, 0xd6, + 0x01, 0x92, 0x05, 0x6f, 0xed, 0xb5, 0xfd, 0x55, 0x1f, 0x8a, 0x5e, 0x31, 0xb8, 0xcf, 0x4d, 0xe5, + 0xc7, 0x61, 0xc8, 0x0f, 0xd5, 0xc4, 0xfb, 0x9c, 0x66, 0xe7, 0x17, 0x08, 0x86, 0x99, 0x59, 0x0c, + 0x5c, 0x54, 0x9d, 0x5a, 0x88, 0x5a, 0xe7, 0xb5, 0x56, 0xda, 0x36, 0x3c, 0x9f, 0xd8, 0xbb, 0x6e, + 0xe1, 0x7d, 0xea, 0xd6, 0x5a, 0xa7, 0x80, 0xa5, 0xfe, 0x04, 0xc1, 0x90, 0x67, 0xa9, 0x3d, 0x7e, + 0x7b, 0xa3, 0xae, 0x71, 0x0d, 0xed, 0xb3, 0x71, 0xcd, 0x03, 0x8d, 0xf9, 0x77, 0x50, 0x28, 0x8e, + 0xea, 0x9b, 0xd8, 0x25, 0xe8, 0xd8, 0x43, 0x49, 0x50, 0xe7, 0x82, 0x75, 0x80, 0x1c, 0x61, 0x77, + 0x6f, 0xfe, 0x83, 0x10, 0xbc, 0xd0, 0xa0, 0xe2, 0x75, 0xd5, 0xbe, 0x49, 0xb6, 0x55, 0xfe, 0x48, + 0x29, 0x42, 0x72, 0x1b, 0x57, 0xb1, 0x99, 0xb5, 0x29, 0x4d, 0x43, 0x3f, 0x1f, 0x7e, 0xce, 0x7e, + 0x7e, 0xc1, 0x35, 0x05, 0xf3, 0xe3, 0x93, 0x2d, 0x4c, 0x51, 0xef, 0x76, 0x1e, 0x2b, 0x8c, 0xb9, + 0x56, 0x18, 0xf2, 0x58, 0xa1, 0x3d, 0x9b, 0x9e, 0x4e, 0xcf, 0x90, 0x4a, 0x86, 0xdb, 0xe2, 0x61, + 0x98, 0xdb, 0x82, 0x24, 0x82, 0xc0, 0x16, 0xe3, 0x14, 0x44, 0x65, 0x42, 0x20, 0xc9, 0x77, 0x79, + 0x90, 0x0f, 0x3a, 0xee, 0xdb, 0x65, 0xc6, 0x44, 0x34, 0x25, 0xa2, 0xac, 0x88, 0xa6, 0xc5, 0x4e, + 0x4a, 0x95, 0xbb, 0x2b, 0xac, 0x05, 0x76, 0x16, 0x13, 0xbb, 0xad, 0x68, 0xcd, 0xd3, 0x9e, 0xa3, + 0xbf, 0x78, 0x36, 0xe6, 0xa9, 0xc9, 0xfe, 0x83, 0xf5, 0x17, 0x33, 0xb4, 0xbf, 0xf8, 0x05, 0x82, + 0xb1, 0xa0, 0x8a, 0x0c, 0x6a, 0xea, 0xc1, 0xb7, 0xfc, 0xcd, 0xc5, 0x65, 0x58, 0xda, 0x7b, 0x73, + 0x31, 0x06, 0x03, 0x01, 0x84, 0x5f, 0x61, 0x43, 0xe1, 0x27, 0x23, 0x39, 0x97, 0x67, 0xa1, 0x0f, + 0x42, 0x30, 0xd6, 0x74, 0x09, 0x73, 0x22, 0x7f, 0x1a, 0xd6, 0xa5, 0xe9, 0x0a, 0x96, 0xb4, 0xca, + 0xd6, 0x06, 0x36, 0xe9, 0x3a, 0xf6, 0xe4, 0xbb, 0xe8, 0xbe, 0x35, 0x11, 0xc9, 0x86, 0x50, 0x58, + 0x04, 0x32, 0xbe, 0x4c, 0x87, 0xbf, 0x9e, 0x15, 0xcc, 0x43, 0xf7, 0xa6, 0x5c, 0x29, 0xdb, 0x92, + 0xa2, 0x6f, 0xc9, 0xaa, 0x46, 0xe3, 0xa4, 0x27, 0x3f, 0xf6, 0x70, 0x07, 0xa1, 0x8f, 0x77, 0x10, + 0x9a, 0x76, 0x73, 0xe2, 0x44, 0x68, 0x1c, 0xf1, 0x8b, 0x44, 0x58, 0xec, 0xa2, 0x4c, 0xf3, 0x94, + 0x47, 0x98, 0x87, 0x9e, 0x8a, 0xa1, 0xc8, 0x36, 0x76, 0x40, 0x22, 0x7e, 0x90, 0x33, 0x81, 0x20, + 0x83, 0x62, 0x37, 0xe3, 0x62, 0x28, 0xb3, 0x40, 0x4b, 0x75, 0x1a, 0x09, 0xa9, 0xff, 0x69, 0xf7, + 0xf8, 0x7f, 0x60, 0x43, 0xb6, 0x6f, 0xff, 0xbf, 0x16, 0xdc, 0x39, 0xed, 0xdf, 0x7c, 0xfe, 0xee, + 0xe9, 0x7a, 0x93, 0xee, 0x69, 0xff, 0xb8, 0x75, 0x3d, 0x94, 0x2f, 0xb4, 0xda, 0xf7, 0x16, 0x5a, + 0x1f, 0x84, 0xb9, 0x0d, 0xcf, 0xa4, 0xa7, 0x1f, 0xed, 0xa0, 0xbf, 0x0d, 0xef, 0x1e, 0x5c, 0x4a, + 0x60, 0xab, 0xb3, 0x0c, 0x97, 0xf7, 0xd1, 0xbf, 0x24, 0x61, 0x30, 0x88, 0xf2, 0xeb, 0xe8, 0x59, + 0x1a, 0xc3, 0x0d, 0x4a, 0xc1, 0x3d, 0xcb, 0x2a, 0x2c, 0xef, 0xa7, 0x67, 0x39, 0x02, 0x43, 0x81, + 0xa4, 0x5f, 0x53, 0x9f, 0x12, 0x98, 0x36, 0x48, 0xab, 0xf0, 0xe7, 0x61, 0x4f, 0xda, 0xa8, 0xf7, + 0xfc, 0x2f, 0x95, 0x36, 0x7e, 0xd3, 0x1c, 0xbf, 0x3e, 0x23, 0x45, 0xbe, 0x8a, 0x8c, 0xd4, 0xfe, + 0x65, 0x32, 0x52, 0xf7, 0xd3, 0xf3, 0x31, 0x9e, 0x91, 0xd2, 0x67, 0x52, 0xf3, 0x70, 0xe0, 0xd2, + 0xdc, 0xea, 0xfa, 0xea, 0xdc, 0x32, 0xb6, 0x49, 0x6b, 0xe8, 0xe9, 0xe3, 0x8e, 0xb6, 0xec, 0xe3, + 0x58, 0x17, 0x37, 0x1b, 0x79, 0x7a, 0x1e, 0x4d, 0xa5, 0xae, 0xc1, 0x51, 0x1f, 0x8a, 0xf7, 0x99, + 0x81, 0x07, 0x71, 0xbc, 0xae, 0xe5, 0x43, 0xf4, 0x34, 0x2a, 0x42, 0xa2, 0xdf, 0xdf, 0xe0, 0x71, + 0xd8, 0x73, 0xd0, 0xef, 0x83, 0xdd, 0xb3, 0x58, 0xa9, 0x1c, 0xf4, 0x5c, 0x9a, 0x5b, 0xf5, 0xd4, + 0xc8, 0xa7, 0x83, 0x3a, 0x88, 0x06, 0x66, 0x4f, 0x0f, 0x91, 0xfa, 0x43, 0x04, 0x03, 0x2e, 0x86, + 0x47, 0x89, 0xfd, 0xf6, 0x22, 0x5f, 0x4d, 0xaf, 0x9a, 0xfa, 0x28, 0x54, 0xb7, 0x52, 0x9e, 0x6a, + 0xd9, 0x86, 0x04, 0xe9, 0xf2, 0x34, 0x36, 0x20, 0x05, 0xb4, 0xd5, 0xe7, 0x02, 0xfd, 0x77, 0x0f, + 0x6b, 0xb6, 0xd8, 0x26, 0x0e, 0x6b, 0x78, 0x3b, 0x80, 0x46, 0x58, 0x81, 0x2e, 0xcf, 0xac, 0x3c, + 0x00, 0xd3, 0xbb, 0x4f, 0xe4, 0x03, 0x87, 0x1a, 0xb8, 0xb0, 0x06, 0xee, 0x21, 0x90, 0x8b, 0x1a, + 0x6e, 0x71, 0xe4, 0xd0, 0xe0, 0x1b, 0x8b, 0x6d, 0x62, 0x9f, 0x83, 0xc0, 0x6f, 0xe7, 0x0f, 0xb9, + 0xb5, 0x69, 0x3f, 0x6f, 0xac, 0x68, 0x6d, 0x3a, 0x93, 0xae, 0xd5, 0xe8, 0xff, 0x8e, 0x60, 0x98, + 0x61, 0x35, 0xf4, 0x21, 0x05, 0x20, 0x02, 0xfa, 0x73, 0xcc, 0x78, 0x33, 0x61, 0xea, 0x5d, 0x65, + 0xb1, 0x4d, 0x8c, 0x69, 0x78, 0x9b, 0x67, 0x80, 0x2b, 0xd0, 0x57, 0xf7, 0xac, 0xa5, 0x65, 0x17, + 0xed, 0x73, 0xdf, 0xc5, 0x36, 0xb1, 0xd7, 0x7f, 0x3e, 0xb6, 0x7b, 0xe7, 0xf1, 0x6e, 0x07, 0x0c, + 0xae, 0xa9, 0x36, 0x5e, 0xb3, 0x65, 0x5b, 0x2d, 0x8a, 0x7a, 0xc5, 0xc6, 0xcc, 0x81, 0xff, 0x18, + 0xc1, 0x80, 0xa5, 0x6e, 0x19, 0x65, 0x2c, 0x59, 0x74, 0x4c, 0x32, 0xc9, 0x20, 0x77, 0xcc, 0x37, + 0xdf, 0x7f, 0x80, 0x56, 0x46, 0xae, 0xb0, 0xad, 0x94, 0x76, 0x85, 0x96, 0x6a, 0xe3, 0x8c, 0x65, + 0xe0, 0x62, 0x46, 0xd5, 0x4a, 0x26, 0xb6, 0x2c, 0x09, 0xb3, 0x9f, 0xd2, 0x76, 0xc6, 0xc9, 0xc1, + 0x1e, 0x1c, 0x2b, 0xe3, 0xfd, 0x27, 0x95, 0x55, 0xcb, 0xae, 0xf9, 0x39, 0xed, 0x3f, 0xe9, 0xdc, + 0x1e, 0xb1, 0x84, 0x75, 0x18, 0x28, 0x56, 0x2c, 0x5b, 0xdf, 0xf2, 0x0b, 0xc4, 0xcc, 0x33, 0x5a, + 0x67, 0x1e, 0x0f, 0x23, 0x4b, 0xb7, 0x44, 0x75, 0x82, 0xcb, 0x20, 0x3c, 0xc3, 0xb3, 0x4f, 0xc2, + 0x8f, 0x76, 0xd0, 0x2f, 0xc3, 0xb0, 0x0c, 0x40, 0x6f, 0xb0, 0x3d, 0xf4, 0x02, 0x9c, 0x87, 0x17, + 0x02, 0x4d, 0x90, 0xed, 0x58, 0xa3, 0x37, 0xc9, 0x70, 0x80, 0x40, 0xd9, 0x8e, 0x39, 0x7a, 0x13, + 0x0a, 0x10, 0x2b, 0xac, 0x26, 0xd9, 0xa9, 0xc9, 0xc4, 0x37, 0x60, 0x16, 0x86, 0x02, 0xe1, 0xe0, + 0x08, 0x1c, 0x0a, 0x80, 0xe1, 0xfb, 0xa3, 0x95, 0x0a, 0xc5, 0x23, 0xf0, 0x3e, 0x82, 0xe8, 0x32, + 0xbe, 0x6d, 0x27, 0x17, 0x75, 0x63, 0xe2, 0x2f, 0x11, 0xfc, 0x08, 0xc1, 0xcb, 0x70, 0x26, 0x88, + 0x4b, 0xc3, 0xb7, 0xed, 0x9b, 0xba, 0xe1, 0xfc, 0x4a, 0xb2, 0xa2, 0x90, 0x55, 0xa0, 0x3b, 0x71, + 0x86, 0xfc, 0xf9, 0x12, 0x8c, 0x67, 0x19, 0xe3, 0x8b, 0x90, 0x6c, 0xc5, 0x68, 0x13, 0xaf, 0x09, + 0x25, 0x11, 0x9c, 0x85, 0x98, 0xbb, 0x73, 0xe7, 0x4f, 0xc0, 0xf1, 0x56, 0x4c, 0xaa, 0x43, 0x18, + 0x47, 0x70, 0x0a, 0x20, 0x67, 0xdb, 0xa6, 0xba, 0x41, 0xdc, 0x23, 0x8e, 0xf2, 0x63, 0x70, 0x30, + 0x88, 0x55, 0xb6, 0x6d, 0xd3, 0x8a, 0x47, 0x4e, 0x23, 0x98, 0x80, 0x8e, 0xcb, 0xf2, 0x06, 0x2e, + 0x5b, 0x71, 0xb4, 0x34, 0x0a, 0x23, 0x41, 0xc4, 0x65, 0x36, 0x1e, 0xc9, 0x1f, 0x07, 0xa1, 0x48, + 0x2b, 0x1e, 0x69, 0x8b, 0x94, 0x0f, 0xad, 0x83, 0xe2, 0x6d, 0x04, 0x89, 0xfa, 0xa0, 0xb8, 0xac, + 0x5a, 0x6c, 0x8f, 0xb8, 0x05, 0xfd, 0x0d, 0xae, 0x9b, 0x40, 0xc9, 0x70, 0xd3, 0x16, 0x3b, 0x28, + 0xbc, 0xf2, 0x83, 0xd4, 0xdb, 0xdf, 0x45, 0xa1, 0xf8, 0x05, 0xe7, 0x2a, 0x8a, 0xc4, 0x3e, 0xab, + 0x46, 0x47, 0x26, 0x4c, 0xfd, 0x0b, 0xc0, 0xa1, 0x4b, 0x65, 0x7d, 0x43, 0x2e, 0x3b, 0xf9, 0x5c, + 0xd7, 0x34, 0x5c, 0xb4, 0x55, 0x5d, 0xa3, 0xc2, 0xfc, 0xa0, 0x1d, 0xe2, 0x56, 0x59, 0x95, 0x6c, + 0x5d, 0x2a, 0x51, 0x32, 0x49, 0x31, 0x5b, 0x27, 0x20, 0x4a, 0xc5, 0x51, 0x74, 0x93, 0xca, 0xf2, + 0xb3, 0xc8, 0xfb, 0x0f, 0xd0, 0x4f, 0x23, 0xd0, 0x5b, 0xd5, 0xcb, 0xb6, 0x65, 0xcb, 0xc5, 0x5b, + 0x34, 0x9a, 0x85, 0x57, 0x83, 0x00, 0xe4, 0x6d, 0x4b, 0xaa, 0x1a, 0x45, 0x16, 0xef, 0xec, 0xd4, + 0x68, 0xdd, 0x61, 0x9b, 0x2b, 0x57, 0x2c, 0x1b, 0x53, 0x50, 0x21, 0xff, 0x25, 0x99, 0x45, 0x6c, + 0x94, 0x65, 0x9e, 0x57, 0x73, 0x81, 0x18, 0x75, 0x39, 0xc7, 0xad, 0x18, 0x03, 0xc5, 0x98, 0x7b, + 0x2e, 0x08, 0x5e, 0x74, 0x2e, 0x3e, 0x17, 0x88, 0x57, 0xa3, 0xa5, 0xe7, 0x14, 0xc7, 0x8b, 0x15, + 0xb8, 0x3c, 0xa5, 0xa2, 0x51, 0xb3, 0x30, 0xdb, 0xae, 0xf6, 0xbe, 0x3c, 0x7b, 0x60, 0xf6, 0x08, + 0xb0, 0xd8, 0x26, 0xf6, 0x58, 0x65, 0xf5, 0xaa, 0xce, 0x7c, 0x6a, 0x9e, 0x74, 0xe9, 0x71, 0xab, + 0xac, 0xfb, 0x9d, 0x31, 0xbc, 0x3f, 0x67, 0x64, 0xa0, 0xba, 0x07, 0x74, 0x15, 0x86, 0x14, 0xd5, + 0x92, 0x37, 0xca, 0x58, 0xda, 0xd4, 0xcd, 0x6d, 0xd9, 0x54, 0x24, 0xc3, 0xd4, 0x6f, 0xdf, 0xe1, + 0x2f, 0x41, 0x04, 0x3e, 0x0a, 0x63, 0xd5, 0xe2, 0x22, 0x12, 0x07, 0x38, 0xeb, 0x45, 0xc6, 0xb9, + 0x4a, 0x18, 0x85, 0x22, 0x0c, 0x62, 0x2d, 0x00, 0xb0, 0x23, 0xf0, 0xb5, 0x23, 0x2f, 0x2b, 0x6b, + 0x9a, 0x68, 0xd0, 0x44, 0x49, 0xda, 0xe0, 0xb3, 0x08, 0x0c, 0xce, 0x4b, 0x39, 0xfb, 0x77, 0xa1, + 0x7f, 0xda, 0x41, 0x47, 0xe1, 0x08, 0x8c, 0x30, 0x4d, 0x92, 0x3c, 0x80, 0x93, 0xb5, 0x08, 0xb6, + 0x84, 0xf0, 0x54, 0x7a, 0xe6, 0xd1, 0x0e, 0xba, 0x1f, 0x82, 0xeb, 0x10, 0xa1, 0xdb, 0xce, 0x0a, + 0x5c, 0x81, 0x63, 0x8d, 0x31, 0x9d, 0x8d, 0xf3, 0x1e, 0xd2, 0xd6, 0x93, 0x0c, 0x0f, 0x8e, 0x37, + 0x1a, 0x3b, 0xdb, 0xef, 0x34, 0x69, 0x35, 0xb2, 0x25, 0xe8, 0xf5, 0x0b, 0x90, 0x3d, 0x07, 0x23, + 0xf5, 0xf0, 0x19, 0x7e, 0x55, 0xd5, 0xc8, 0x98, 0xde, 0x6c, 0xec, 0x9b, 0xd0, 0xc3, 0x75, 0x4c, + 0x52, 0x25, 0xe3, 0x68, 0xe2, 0x22, 0xcc, 0x93, 0xfe, 0x31, 0x70, 0x85, 0xb2, 0xd1, 0x79, 0x76, + 0x5b, 0x81, 0xb1, 0x60, 0x93, 0x67, 0x3b, 0x17, 0xe8, 0x5d, 0x25, 0x7f, 0x0c, 0xfa, 0x8b, 0xae, + 0x61, 0x9a, 0xa5, 0xe7, 0xfc, 0x29, 0x18, 0xf4, 0xf1, 0x3b, 0x84, 0x07, 0x1e, 0xee, 0xa0, 0xf6, + 0x0f, 0xd9, 0xeb, 0x3f, 0x11, 0x42, 0x7c, 0x26, 0x7d, 0xf6, 0x0b, 0xf7, 0x91, 0x22, 0x6f, 0x2f, + 0x7f, 0x82, 0x60, 0xac, 0x49, 0x2e, 0x75, 0x93, 0xfb, 0xf7, 0x11, 0x8c, 0x70, 0x7d, 0x9d, 0x3a, + 0xb9, 0x26, 0x96, 0xc5, 0xd3, 0xfc, 0xe9, 0x16, 0xce, 0x1c, 0x98, 0xa6, 0x3d, 0xd9, 0x3e, 0xea, + 0xc9, 0xf6, 0x89, 0x52, 0x30, 0x8b, 0x95, 0xfa, 0x87, 0x30, 0xf4, 0xe5, 0xca, 0x65, 0x7d, 0x1b, + 0x2b, 0xeb, 0x85, 0xd5, 0x55, 0xdd, 0xb4, 0x2d, 0xe1, 0x1a, 0x24, 0x1c, 0x2b, 0xcb, 0x6c, 0x48, + 0xaa, 0xaa, 0x86, 0x64, 0xe8, 0x66, 0xcb, 0xe3, 0xf4, 0x7c, 0x84, 0xf4, 0x10, 0x8b, 0x6d, 0xa2, + 0xb3, 0x46, 0x0e, 0xae, 0x6a, 0x10, 0x5c, 0xe1, 0x02, 0xf4, 0x54, 0x2c, 0x2c, 0xdd, 0xb4, 0x6d, + 0x8e, 0x15, 0xda, 0x03, 0x56, 0x57, 0xc5, 0xc2, 0x8b, 0xb6, 0xcd, 0x10, 0xf2, 0xd0, 0xeb, 0x20, + 0x58, 0x0c, 0x22, 0xbc, 0x07, 0x88, 0x6e, 0x0e, 0x61, 0x51, 0x8c, 0xd7, 0x61, 0xc0, 0x95, 0xc2, + 0x03, 0x14, 0xd9, 0x03, 0x50, 0x9c, 0x03, 0x79, 0xc1, 0xba, 0x79, 0x2d, 0x40, 0x40, 0x2c, 0x9e, + 0x28, 0x92, 0xc1, 0xcf, 0xbf, 0x29, 0x21, 0xb5, 0x70, 0x3e, 0xf2, 0x05, 0xab, 0x11, 0xbb, 0x8a, + 0x9e, 0x9b, 0xc7, 0xa0, 0x8b, 0xa0, 0x48, 0x9e, 0x47, 0xd7, 0x1d, 0xdc, 0x25, 0x63, 0x67, 0x9d, + 0x06, 0x99, 0xd7, 0x0d, 0x6b, 0xd0, 0xe5, 0xc1, 0x13, 0xce, 0x73, 0x56, 0x53, 0xd6, 0x4a, 0xd8, + 0xe2, 0x95, 0xf3, 0x0b, 0xbc, 0xcc, 0x4d, 0xdc, 0x8f, 0xf0, 0x4e, 0x30, 0xee, 0xf4, 0x75, 0x1f, + 0x86, 0x90, 0x08, 0x84, 0x43, 0xa4, 0x0c, 0x1c, 0xf4, 0xbd, 0x10, 0x1c, 0x5e, 0xd9, 0xdc, 0x2c, + 0xab, 0x1a, 0x5e, 0xab, 0x98, 0x55, 0xb5, 0xca, 0x9f, 0x67, 0x5d, 0x71, 0x1e, 0x07, 0x7e, 0x13, + 0x5e, 0xd0, 0x74, 0x49, 0x67, 0x24, 0x92, 0xe5, 0xa5, 0xa1, 0xc5, 0xce, 0x2e, 0x67, 0x06, 0x23, + 0x9a, 0xde, 0x0c, 0x5e, 0x90, 0xe1, 0x08, 0x0f, 0xdb, 0x16, 0xf0, 0xad, 0x0f, 0x80, 0x46, 0x19, + 0x40, 0xb3, 0x29, 0xf2, 0x33, 0x70, 0xa4, 0x39, 0xf6, 0x2e, 0x75, 0xda, 0xbf, 0x21, 0xe8, 0x9b, + 0x9f, 0xbb, 0x74, 0x3d, 0x7f, 0x69, 0x75, 0x15, 0xf3, 0x8d, 0xed, 0x34, 0xf4, 0xca, 0x5b, 0xf2, + 0x5d, 0x5d, 0x73, 0x2a, 0x58, 0xde, 0x7b, 0xc7, 0xb8, 0xb5, 0x0d, 0x24, 0xf6, 0x30, 0x82, 0x1c, + 0x1b, 0x17, 0x66, 0x20, 0xce, 0x16, 0x1c, 0x9b, 0x2e, 0x4f, 0xa8, 0x9e, 0xa7, 0xcf, 0x21, 0x71, + 0xb8, 0x8e, 0x40, 0x58, 0xb6, 0x9c, 0x67, 0xc6, 0x7d, 0x84, 0x10, 0x26, 0xa2, 0x89, 0x67, 0xcf, + 0x9e, 0x3d, 0xeb, 0x1c, 0x47, 0x22, 0x19, 0x13, 0x66, 0x20, 0x2a, 0x57, 0xec, 0x9b, 0xd2, 0x2d, + 0x7c, 0x87, 0x7b, 0xf2, 0xc1, 0xfa, 0x2e, 0x05, 0x17, 0x4d, 0xd6, 0xbb, 0x89, 0x9d, 0x84, 0xf4, + 0x75, 0x7c, 0x27, 0x75, 0xbf, 0x1d, 0xfa, 0xd6, 0xd5, 0x4d, 0x11, 0x97, 0x54, 0x5d, 0x63, 0x1b, + 0x8e, 0xb0, 0x00, 0x03, 0x96, 0xbc, 0x85, 0x25, 0xd9, 0xa2, 0x7b, 0xb3, 0x64, 0xd2, 0xc1, 0x5d, + 0x2c, 0x1f, 0x27, 0x2c, 0x39, 0x8b, 0x94, 0x9f, 0x0c, 0x4c, 0xf8, 0xc7, 0x10, 0x74, 0xeb, 0xf6, + 0x4d, 0x6c, 0x3a, 0x00, 0xec, 0xad, 0xc3, 0xf7, 0x42, 0xce, 0x63, 0x86, 0x3f, 0x0a, 0x99, 0x3f, + 0x08, 0x89, 0x20, 0x6f, 0x4e, 0x5a, 0x7a, 0xc5, 0xbe, 0x39, 0x39, 0x25, 0xc6, 0x64, 0x63, 0x12, + 0xcb, 0x96, 0x3d, 0x39, 0x25, 0xf6, 0xca, 0xc6, 0xa4, 0xa6, 0x9b, 0xf6, 0xcd, 0xc0, 0xff, 0x59, + 0x11, 0x64, 0xc3, 0x65, 0xeb, 0x75, 0xae, 0x3d, 0xb4, 0xb5, 0xff, 0xd9, 0xba, 0xff, 0xd3, 0x62, + 0x77, 0x51, 0x9e, 0x2c, 0x62, 0xcd, 0x36, 0xe5, 0xf2, 0xe4, 0x94, 0xd8, 0x8d, 0x2b, 0x9e, 0x7f, + 0x80, 0x2b, 0x6c, 0x1e, 0x7e, 0xed, 0x8a, 0x86, 0x2b, 0x93, 0xdb, 0x98, 0xc2, 0xbb, 0x97, 0xd9, + 0xda, 0xe5, 0xb4, 0x08, 0x5b, 0xb8, 0x46, 0x6c, 0xc9, 0x8e, 0x1e, 0xb1, 0x8a, 0xd5, 0x70, 0x99, + 0xa5, 0x97, 0x0e, 0x9a, 0x73, 0x99, 0x25, 0xc9, 0x80, 0x1a, 0x8c, 0x1b, 0x70, 0x1e, 0x3a, 0xaa, + 0xea, 0xa6, 0xa4, 0x2a, 0x34, 0xa7, 0xc4, 0xf2, 0x93, 0xc4, 0x68, 0xe3, 0xe6, 0x8b, 0xd9, 0x63, + 0x6f, 0x8d, 0x2b, 0xb7, 0xab, 0xea, 0x66, 0xeb, 0x77, 0xf0, 0xda, 0xab, 0xea, 0x66, 0x41, 0x99, + 0x55, 0x9f, 0x9e, 0x0f, 0x9f, 0xa1, 0x47, 0x40, 0x12, 0x14, 0xa0, 0x87, 0x61, 0x27, 0xf5, 0xcd, + 0xe4, 0x7a, 0xe1, 0x62, 0xea, 0x5c, 0xe0, 0x52, 0x0b, 0x03, 0x6b, 0xf2, 0x16, 0x4e, 0x72, 0xd2, + 0x9c, 0x95, 0x24, 0xab, 0x3a, 0xd2, 0xbd, 0x42, 0x64, 0xe3, 0x77, 0x41, 0x80, 0x8e, 0xf5, 0xc2, + 0xc5, 0x64, 0x61, 0x7e, 0x24, 0xea, 0x88, 0x99, 0x1f, 0x87, 0x7e, 0x72, 0xc5, 0x40, 0x9c, 0x68, + 0x1a, 0x78, 0xb8, 0x83, 0xc2, 0x8f, 0x77, 0x50, 0x88, 0x44, 0x93, 0xef, 0xf0, 0x6d, 0x29, 0x12, + 0x0d, 0xc5, 0xc3, 0xa9, 0x4f, 0xc3, 0x30, 0xb0, 0xa8, 0x5b, 0x36, 0xd9, 0x7d, 0x2e, 0xd6, 0x6a, + 0x1e, 0xe1, 0x77, 0x20, 0x52, 0x55, 0x37, 0xd9, 0x36, 0x18, 0xcb, 0x5f, 0x26, 0x7c, 0xc4, 0x00, + 0x93, 0xef, 0xa2, 0x89, 0xd4, 0x9e, 0xad, 0xe0, 0x6e, 0x85, 0xa3, 0xce, 0x55, 0x02, 0x25, 0x90, + 0x48, 0x91, 0x85, 0x6b, 0x10, 0x25, 0xf2, 0xd2, 0x9e, 0x2a, 0x44, 0x37, 0xdb, 0xe0, 0x73, 0xd7, + 0xba, 0x00, 0xf1, 0x6c, 0xb0, 0x1e, 0x54, 0xb1, 0xb3, 0xaa, 0x6e, 0x92, 0xad, 0x5d, 0x78, 0x13, + 0xc6, 0x5c, 0x63, 0x5a, 0xb6, 0x29, 0xd3, 0x22, 0x43, 0xaf, 0x62, 0x53, 0xa2, 0x0d, 0x68, 0xed, + 0x68, 0xb3, 0x59, 0x2c, 0x1d, 0xb6, 0x78, 0x14, 0x39, 0xdc, 0x2b, 0x55, 0x6c, 0x16, 0x38, 0xaf, + 0xf0, 0x3d, 0x38, 0xde, 0x04, 0x5e, 0x51, 0x4d, 0x5c, 0xb4, 0x9d, 0x1a, 0x82, 0xef, 0x44, 0xc7, + 0x9b, 0x9f, 0xc4, 0x5e, 0x56, 0xb5, 0x5b, 0xb9, 0xf9, 0x65, 0xdf, 0x2b, 0x6b, 0x47, 0x82, 0xe6, + 0x9e, 0xa7, 0xc0, 0xbc, 0x66, 0xc8, 0x9f, 0x84, 0x41, 0xa7, 0x4c, 0xa9, 0x92, 0xdc, 0xc9, 0x3f, + 0x62, 0xa0, 0x2b, 0xed, 0x79, 0x4b, 0xe0, 0x0c, 0x5f, 0xe9, 0x70, 0x3c, 0x92, 0x7a, 0x27, 0x04, + 0x89, 0x55, 0x53, 0xad, 0xca, 0x36, 0xe6, 0x28, 0x9e, 0x85, 0xde, 0x00, 0xf6, 0xca, 0x83, 0x54, + 0x56, 0xb5, 0x5b, 0x2d, 0x1f, 0x40, 0xad, 0x6c, 0x7c, 0x1b, 0x17, 0x6d, 0x11, 0x6f, 0x52, 0x91, + 0xc7, 0xde, 0xbf, 0xe7, 0x61, 0xfc, 0xe0, 0x01, 0xea, 0x8d, 0xa2, 0x71, 0x74, 0x1a, 0xcd, 0x76, + 0xb0, 0xe6, 0x5b, 0x8c, 0x15, 0x1d, 0x2d, 0x85, 0xd3, 0xd0, 0xc9, 0x1f, 0x7e, 0xb7, 0xaa, 0xe4, + 0x17, 0xdb, 0x44, 0x87, 0x4c, 0xc8, 0x40, 0x07, 0x7b, 0x92, 0xb4, 0xcb, 0xeb, 0x83, 0x9c, 0x2a, + 0x9f, 0x82, 0x3e, 0xa7, 0x88, 0x73, 0x0c, 0x42, 0x36, 0x92, 0x76, 0x4f, 0x91, 0xc8, 0x4b, 0xc3, + 0x7f, 0x6e, 0x87, 0x03, 0x3e, 0x8b, 0x7a, 0x6c, 0xf1, 0x0e, 0x82, 0x03, 0x4c, 0x27, 0xb9, 0x54, + 0x32, 0x71, 0x49, 0xb6, 0xb1, 0xe2, 0xbc, 0x41, 0xcb, 0x02, 0x41, 0x7c, 0xff, 0x01, 0x3a, 0x39, + 0x11, 0x2e, 0x9a, 0xf6, 0x44, 0x27, 0x7f, 0x2b, 0x7f, 0x22, 0x62, 0x98, 0xba, 0x32, 0xd1, 0xed, + 0x7d, 0x39, 0x7f, 0xa2, 0x73, 0x13, 0x2b, 0xa6, 0xbc, 0x65, 0xd0, 0xcd, 0xe2, 0x5d, 0xd4, 0x99, + 0xf2, 0x3c, 0xd5, 0x25, 0xae, 0x1b, 0xf7, 0xb8, 0xee, 0x10, 0x9d, 0x32, 0xe7, 0xce, 0xc8, 0x1e, + 0x23, 0x09, 0x7f, 0x82, 0xe0, 0xb0, 0x52, 0x74, 0xfc, 0x29, 0x40, 0xa2, 0xd0, 0xd7, 0x26, 0xd1, + 0x41, 0xa5, 0xc8, 0x8d, 0xd3, 0x20, 0xd5, 0xeb, 0xd0, 0x75, 0x93, 0xa6, 0x0b, 0x89, 0xa6, 0x87, + 0x48, 0x8b, 0x96, 0x2f, 0x20, 0xad, 0x2c, 0xb6, 0x89, 0xc0, 0xd8, 0xd7, 0x49, 0x0a, 0x78, 0x15, + 0x7a, 0x2c, 0x5b, 0xd6, 0x14, 0x52, 0xe4, 0x53, 0xb8, 0xd6, 0xde, 0xd1, 0xed, 0x10, 0x53, 0xe6, + 0x57, 0x20, 0xb6, 0x25, 0x6b, 0x15, 0xb9, 0x2c, 0x95, 0xb6, 0x5b, 0x57, 0xc5, 0x9f, 0xb3, 0x5a, + 0x2f, 0xca, 0xc8, 0x2f, 0x6d, 0x0b, 0x53, 0x74, 0xb7, 0xd6, 0x25, 0xb2, 0xab, 0xb7, 0xfa, 0x08, + 0x07, 0xd1, 0xad, 0x5a, 0xcf, 0x59, 0x9a, 0x30, 0x01, 0xc0, 0x0b, 0x4d, 0xc2, 0x14, 0xa3, 0xa5, + 0x40, 0xcc, 0x3d, 0x5a, 0x59, 0x44, 0x62, 0x8c, 0x0d, 0xe7, 0x2c, 0x2d, 0x7f, 0x14, 0x80, 0x64, + 0x36, 0x4f, 0x19, 0xe9, 0x04, 0x66, 0xfb, 0x4c, 0xfa, 0x4c, 0xfa, 0x2c, 0x91, 0x27, 0x7f, 0x04, + 0x40, 0xb6, 0x7c, 0x79, 0xda, 0xf3, 0x3d, 0xcd, 0x2b, 0xb5, 0xe8, 0x65, 0xdf, 0xd1, 0x2c, 0x45, + 0xa2, 0x10, 0xef, 0x5a, 0x8a, 0x44, 0xbb, 0xe2, 0xdd, 0x4b, 0x91, 0x68, 0x77, 0xbc, 0x27, 0x85, + 0x21, 0x5e, 0x9f, 0x47, 0x84, 0x37, 0x60, 0x98, 0x3a, 0x13, 0x09, 0x49, 0xb7, 0xab, 0xf1, 0x9c, + 0x4a, 0x1c, 0xa2, 0x71, 0x1a, 0xf2, 0xc6, 0x29, 0xaf, 0x7b, 0xc6, 0x2f, 0x88, 0x83, 0x2e, 0x2b, + 0x6f, 0x53, 0xe8, 0xa9, 0xc7, 0xcf, 0x10, 0xf4, 0xfb, 0xe2, 0xa5, 0xa0, 0x6d, 0xea, 0xc2, 0x2b, + 0x70, 0xd0, 0x9f, 0xef, 0x24, 0xe2, 0x24, 0xdb, 0xf2, 0x1d, 0xb2, 0x61, 0xd2, 0xb9, 0xc4, 0x61, + 0xc5, 0xcb, 0x75, 0x89, 0x0d, 0x17, 0x14, 0x21, 0x0f, 0x1d, 0xd5, 0xd2, 0x76, 0xed, 0x3b, 0x8b, + 0x93, 0xde, 0x6f, 0x73, 0x4a, 0xdb, 0xbb, 0x6d, 0xab, 0xa5, 0xed, 0x82, 0xd2, 0xa4, 0x22, 0xfb, + 0xbf, 0x67, 0xcf, 0x9e, 0xf5, 0xf1, 0x8a, 0x2c, 0xf5, 0x37, 0x08, 0x0e, 0xe4, 0xae, 0xaf, 0x2d, + 0xe7, 0xae, 0xf2, 0xa9, 0x3d, 0xdf, 0x1f, 0x7d, 0x1b, 0x62, 0x9a, 0x6c, 0x4b, 0x4c, 0x0a, 0x66, + 0x99, 0xcb, 0xcd, 0x5e, 0x72, 0x76, 0xce, 0x70, 0x86, 0x3c, 0x62, 0x6a, 0xf2, 0xae, 0x5f, 0xaf, + 0x74, 0x6a, 0xb2, 0x7d, 0x69, 0xbb, 0xa0, 0xe4, 0x87, 0xdd, 0xc7, 0xf2, 0xdd, 0xce, 0x47, 0x2b, + 0x7f, 0xfd, 0xc0, 0x4d, 0xcd, 0x7f, 0x86, 0x20, 0x95, 0xbb, 0xbe, 0xb6, 0xae, 0x9a, 0x76, 0x45, + 0x2e, 0xf3, 0x24, 0xdd, 0x28, 0xf0, 0x1b, 0xae, 0xcd, 0x98, 0xb4, 0xe7, 0xbc, 0xa7, 0x4b, 0x43, + 0xfb, 0x30, 0x20, 0xfd, 0xb8, 0xa9, 0xb4, 0xbb, 0x5c, 0x6f, 0x87, 0xa0, 0x7f, 0x0d, 0x17, 0x2b, + 0xa6, 0x6a, 0xdf, 0xa1, 0xaf, 0x72, 0x51, 0x31, 0x2a, 0x70, 0xd0, 0x3d, 0x0c, 0xe5, 0x83, 0xfc, + 0xb5, 0x2e, 0x57, 0xb2, 0x59, 0xaf, 0x64, 0x83, 0x9e, 0x9a, 0xc9, 0x2a, 0xb5, 0x14, 0xec, 0xbb, + 0x6f, 0x1d, 0x13, 0x9d, 0x4f, 0x3f, 0x7c, 0x13, 0x17, 0x14, 0xc1, 0x82, 0x84, 0x73, 0xac, 0xd0, + 0x30, 0x6b, 0xe8, 0xb9, 0x67, 0x1d, 0xe2, 0xe7, 0xbd, 0xfe, 0x49, 0xdd, 0xaf, 0xa8, 0xde, 0x45, + 0x70, 0xc0, 0xbf, 0x79, 0xd2, 0x7d, 0x97, 0x37, 0x20, 0x83, 0x06, 0x1b, 0x0a, 0x08, 0x36, 0x51, + 0xe0, 0x63, 0x9e, 0x68, 0x12, 0x16, 0x7c, 0xbb, 0x6d, 0xa8, 0xc5, 0x59, 0x16, 0xa9, 0xfa, 0xdc, + 0xf8, 0xa6, 0x6d, 0x43, 0x6d, 0x43, 0x4d, 0x29, 0xd0, 0xdf, 0x30, 0x2e, 0x08, 0xde, 0x73, 0x50, + 0xfe, 0x4e, 0xed, 0x34, 0xb4, 0x5b, 0xb6, 0xcc, 0xcf, 0x72, 0x7a, 0xb3, 0x2f, 0xd4, 0x4d, 0xe5, + 0x02, 0xac, 0x11, 0x22, 0x91, 0xd1, 0xba, 0xaa, 0x17, 0x21, 0x46, 0x66, 0x59, 0x30, 0x4d, 0xdd, + 0x14, 0x4e, 0x42, 0x3f, 0x26, 0x17, 0x92, 0x82, 0xad, 0xa2, 0xa9, 0xd2, 0x4d, 0x96, 0x4f, 0x15, + 0xa7, 0x03, 0xf3, 0xb5, 0xfb, 0xc2, 0x09, 0x88, 0x5b, 0x95, 0x52, 0x09, 0xd3, 0x8d, 0x42, 0xa6, + 0x4f, 0x3a, 0xd8, 0x4a, 0x89, 0x7d, 0xee, 0xfd, 0x1c, 0xbd, 0x4d, 0xe2, 0x74, 0xf8, 0x1a, 0x3d, + 0x8e, 0x76, 0xe7, 0x12, 0xf1, 0xef, 0x56, 0xb0, 0x65, 0x0b, 0x87, 0x49, 0x98, 0x6e, 0x61, 0xcb, + 0x90, 0x8b, 0x8e, 0x56, 0xb5, 0x1b, 0xae, 0xba, 0x21, 0x8f, 0xba, 0xc3, 0xd0, 0x61, 0x63, 0x4d, + 0xd6, 0xd8, 0x73, 0x89, 0x98, 0xc8, 0xff, 0x09, 0xaf, 0x41, 0x17, 0xad, 0xda, 0xa8, 0xa0, 0x64, + 0xd7, 0x0a, 0x07, 0x9c, 0x23, 0xd5, 0xec, 0xce, 0xa4, 0x00, 0xcb, 0xb9, 0xb4, 0x52, 0x07, 0xe1, + 0x40, 0x83, 0x90, 0x96, 0xa1, 0x6b, 0x16, 0x4e, 0x15, 0x60, 0x68, 0x9d, 0x7f, 0x6b, 0xca, 0x36, + 0xba, 0x2f, 0x2d, 0x7e, 0x2a, 0x01, 0xc3, 0xf5, 0x50, 0x6c, 0x92, 0x89, 0xef, 0xc1, 0x10, 0xbb, + 0xc3, 0xc7, 0x55, 0x5d, 0xa3, 0x4b, 0x26, 0x1c, 0x84, 0xa1, 0xf5, 0xdc, 0xe5, 0xc2, 0x7c, 0xee, + 0x6a, 0x61, 0x65, 0x59, 0x5a, 0xbb, 0x9a, 0xbb, 0xba, 0x20, 0x2d, 0xaf, 0x2c, 0x2f, 0xc4, 0xdb, + 0x84, 0x11, 0x18, 0xf6, 0x0c, 0x15, 0x96, 0xa5, 0x55, 0x71, 0xe5, 0x92, 0xb8, 0xb0, 0xb6, 0x16, + 0x47, 0xc2, 0x10, 0xf4, 0x7b, 0xc6, 0x2e, 0xe6, 0x0a, 0x97, 0x17, 0xe6, 0xe3, 0x21, 0x21, 0x01, + 0x83, 0x5e, 0xb4, 0x6b, 0x73, 0x73, 0x0b, 0x0b, 0xf3, 0x0b, 0xf3, 0xf1, 0x70, 0xfe, 0x6d, 0xf4, + 0xf8, 0xd3, 0xd1, 0xb6, 0x8f, 0x3e, 0x1d, 0x6d, 0xfb, 0xe2, 0xd3, 0x51, 0x74, 0xff, 0xc9, 0x28, + 0xfa, 0xc9, 0x93, 0x51, 0xf4, 0xe1, 0x93, 0x51, 0xf4, 0xf8, 0xc9, 0x28, 0xfa, 0xe8, 0xc9, 0x28, + 0xfa, 0xe4, 0xc9, 0x28, 0xfa, 0xfc, 0xc9, 0x68, 0xdb, 0x17, 0x4f, 0x46, 0xd1, 0x0f, 0x3f, 0x1b, + 0x6d, 0x7b, 0xf8, 0xd9, 0x28, 0x7a, 0xfc, 0xd9, 0x68, 0xdb, 0x47, 0x9f, 0x8d, 0xb6, 0xdd, 0x28, + 0x94, 0x74, 0xe3, 0x56, 0x29, 0x53, 0xd5, 0xcb, 0x36, 0x36, 0x4d, 0x39, 0x53, 0xb1, 0x4e, 0xd1, + 0x8b, 0x4d, 0xdd, 0xdc, 0x9a, 0x34, 0x4c, 0xbd, 0xaa, 0x2a, 0xd8, 0x9c, 0x74, 0x86, 0x4f, 0x19, + 0x1b, 0x25, 0xfd, 0x14, 0xbe, 0x6d, 0xf3, 0x6f, 0x71, 0xbd, 0x9f, 0xe4, 0x6e, 0x74, 0xd0, 0xaf, + 0x71, 0xa7, 0xff, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x78, 0xb9, 0x1a, 0xab, 0x3c, 0x00, 0x00, } func (x ConfigValidationState) String() string { diff --git a/pbgo/extschema/schema/views/tcp_loadbalancer/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/tcp_loadbalancer/crudapi/api.vesapi.go index 15d13070a..b55bab1f1 100644 --- a/pbgo/extschema/schema/views/tcp_loadbalancer/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/tcp_loadbalancer/crudapi/api.vesapi.go @@ -3156,10 +3156,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4442,9 +4446,9 @@ var APISwaggerJSON string = `{ }, "network": { "description": " Select network types to be used on site\n By default VIP chosen as ip address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -4655,10 +4659,10 @@ var APISwaggerJSON string = `{ } }, "virtual_network": { - "description": " Select virtual network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Virtual Network", + "description": " Select network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -4676,9 +4680,9 @@ var APISwaggerJSON string = `{ "properties": { "network": { "description": " Select network types to be used on site.\n IP address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" diff --git a/pbgo/extschema/schema/views/tcp_loadbalancer/object.pb.go b/pbgo/extschema/schema/views/tcp_loadbalancer/object.pb.go index 86f08c9ff..548bbbc4d 100644 --- a/pbgo/extschema/schema/views/tcp_loadbalancer/object.pb.go +++ b/pbgo/extschema/schema/views/tcp_loadbalancer/object.pb.go @@ -244,48 +244,49 @@ func init() { } var fileDescriptor_e9f032ee8aa08603 = []byte{ - // 655 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x31, 0x6f, 0x13, 0x4b, - 0x10, 0xc7, 0x7d, 0xb6, 0xe5, 0x44, 0x9b, 0x28, 0x2f, 0xef, 0xd2, 0xf8, 0xe5, 0xc1, 0x12, 0x19, - 0x84, 0x52, 0x70, 0x7b, 0x21, 0x80, 0x20, 0x11, 0xa2, 0x48, 0x22, 0x85, 0x22, 0x01, 0xc9, 0x46, - 0x48, 0xa4, 0xc0, 0xda, 0x5b, 0x8f, 0xcf, 0x07, 0x77, 0xde, 0xd3, 0xee, 0x9e, 0x13, 0x17, 0x48, - 0x34, 0xf4, 0x94, 0xd4, 0x54, 0x08, 0x89, 0xef, 0x40, 0xa8, 0x28, 0xad, 0x54, 0x29, 0xc9, 0xb9, - 0xa1, 0xcc, 0x47, 0x40, 0xde, 0xcb, 0x25, 0xf6, 0x61, 0x90, 0x95, 0x6e, 0xcf, 0xf3, 0xff, 0xfd, - 0x3d, 0x3b, 0x33, 0x3b, 0xe8, 0x76, 0x07, 0x24, 0xf1, 0xb8, 0x2d, 0x59, 0x0b, 0x02, 0x6a, 0x77, - 0x3c, 0xd8, 0x97, 0xb6, 0x62, 0x61, 0xdd, 0xe7, 0xb4, 0xe1, 0x50, 0x9f, 0xb6, 0x19, 0x08, 0x9b, - 0x3b, 0xaf, 0x80, 0x29, 0x12, 0x0a, 0xae, 0xb8, 0x79, 0x23, 0x41, 0x48, 0x82, 0x10, 0x8d, 0x90, - 0x2c, 0xb2, 0x68, 0xb9, 0x9e, 0x6a, 0x45, 0x0e, 0x61, 0x3c, 0xb0, 0x5d, 0xee, 0x72, 0x5b, 0xc3, - 0x4e, 0xd4, 0xd4, 0x5f, 0xfa, 0x43, 0x9f, 0x12, 0xd3, 0xc5, 0xff, 0x47, 0xf3, 0xe0, 0xa1, 0xf2, - 0x78, 0x5b, 0x9e, 0x05, 0xff, 0x1b, 0x0d, 0xaa, 0x6e, 0x08, 0x69, 0xa8, 0x92, 0xc9, 0x1f, 0x24, - 0xb4, 0x3b, 0x19, 0x7c, 0xe9, 0xf7, 0x3b, 0xd6, 0x47, 0x15, 0x2b, 0x13, 0x55, 0x61, 0xf8, 0x7f, - 0xaf, 0x8d, 0x25, 0x86, 0x04, 0x37, 0xb3, 0x02, 0xa1, 0x22, 0xea, 0xd7, 0x5b, 0x5c, 0xaa, 0x61, - 0x5d, 0xe5, 0x5d, 0x11, 0x95, 0x9e, 0xea, 0xf2, 0x9a, 0x6b, 0x68, 0x3a, 0x00, 0x45, 0x1b, 0x54, - 0xd1, 0xb2, 0xb1, 0x64, 0x2c, 0xcf, 0xac, 0x5e, 0x25, 0xa3, 0xb5, 0x4e, 0x84, 0xbb, 0xa0, 0xe8, - 0xb3, 0x6e, 0x08, 0xd5, 0x73, 0xb9, 0xb9, 0x83, 0xfe, 0x91, 0x5d, 0xa9, 0x20, 0xa8, 0x9f, 0x3b, - 0xe4, 0xb5, 0xc3, 0xf5, 0x8c, 0x43, 0x4d, 0xab, 0x32, 0x3e, 0x73, 0x09, 0xbb, 0x9b, 0xba, 0x6d, - 0xa0, 0xa2, 0x0c, 0x81, 0x95, 0x0b, 0xda, 0x82, 0x90, 0x49, 0x1a, 0x4e, 0x6a, 0x21, 0x30, 0xed, - 0xa6, 0xd9, 0xf5, 0x2f, 0xf9, 0x6f, 0x87, 0xe5, 0xfc, 0xbc, 0x71, 0x74, 0x58, 0xfe, 0x98, 0x47, - 0xf7, 0x51, 0x61, 0x1b, 0x94, 0xb9, 0xd2, 0xbc, 0x77, 0xc0, 0x2c, 0x09, 0x2c, 0x12, 0x10, 0x80, - 0x6c, 0x59, 0x0e, 0x95, 0x1e, 0xb3, 0x02, 0xde, 0xf6, 0x14, 0x17, 0xb7, 0x06, 0x8d, 0xb2, 0x3c, - 0x6e, 0x85, 0x82, 0x1f, 0x74, 0x2d, 0x01, 0xb4, 0x81, 0xd6, 0xd0, 0x54, 0x15, 0x42, 0x9f, 0x32, - 0x30, 0xc9, 0x78, 0x38, 0x92, 0x90, 0x25, 0xf7, 0x85, 0xa7, 0x00, 0x3d, 0x40, 0xa5, 0x4d, 0x01, - 0x54, 0x5d, 0x8a, 0xdc, 0x02, 0x1f, 0x2e, 0x45, 0x16, 0x77, 0x3c, 0x79, 0x89, 0x8b, 0x56, 0x5e, - 0xa0, 0xe9, 0xb4, 0x82, 0xe6, 0x2e, 0x9a, 0x72, 0x59, 0x5d, 0xb7, 0x20, 0x99, 0x83, 0xbb, 0x93, - 0xb5, 0x60, 0xdb, 0xe7, 0x0e, 0xf5, 0xcf, 0x1b, 0x51, 0x72, 0xd9, 0xe0, 0x5c, 0xe9, 0xe5, 0xd1, - 0x6c, 0x4d, 0x51, 0x15, 0xc9, 0x89, 0x07, 0x2d, 0x91, 0x8f, 0x19, 0xb4, 0x2a, 0x9a, 0x49, 0x96, - 0x41, 0x5d, 0x40, 0x53, 0x96, 0xf3, 0x4b, 0x85, 0xe5, 0x99, 0xd5, 0x2b, 0x63, 0xc7, 0xb4, 0x0a, - 0xcd, 0x01, 0xbc, 0xb1, 0xf0, 0xf9, 0xcd, 0x7c, 0x36, 0xd5, 0x2a, 0xe2, 0xa9, 0x46, 0x9a, 0x0f, - 0x11, 0x62, 0xbc, 0xdd, 0xf0, 0xf4, 0x8b, 0x2c, 0x17, 0xc6, 0x5a, 0x6e, 0xa6, 0x02, 0x9d, 0xcf, - 0x90, 0xde, 0x7c, 0x89, 0x16, 0x86, 0x1f, 0x57, 0x5d, 0xea, 0xd4, 0xcb, 0xc5, 0x3f, 0xcc, 0xee, - 0x85, 0x92, 0x6c, 0x3d, 0xa9, 0x3d, 0x7f, 0xcc, 0xa5, 0x4a, 0x2e, 0xab, 0x8d, 0xff, 0x3d, 0x13, - 0x5c, 0xfc, 0xbc, 0xbe, 0x70, 0xf4, 0x68, 0x1e, 0xcd, 0xa1, 0xd9, 0xb4, 0x04, 0x24, 0xf2, 0x1a, - 0x1b, 0x1f, 0x8c, 0xde, 0x09, 0xce, 0x1d, 0x9f, 0xe0, 0xdc, 0xe9, 0x09, 0x36, 0xde, 0xc6, 0xd8, - 0xf8, 0x14, 0x63, 0xe3, 0x7b, 0x8c, 0x8d, 0x5e, 0x8c, 0x8d, 0xe3, 0x18, 0x1b, 0x3f, 0x62, 0x6c, - 0xfc, 0x8c, 0x71, 0xee, 0x34, 0xc6, 0xc6, 0xfb, 0x3e, 0xce, 0x7d, 0xed, 0x63, 0xa3, 0xd7, 0xc7, - 0xb9, 0xe3, 0x3e, 0xce, 0xed, 0xed, 0xb9, 0x3c, 0x7c, 0xed, 0x92, 0x0e, 0xf7, 0x15, 0x08, 0x41, - 0x49, 0x24, 0x6d, 0x7d, 0x68, 0x72, 0x11, 0x0c, 0x86, 0xa2, 0xe3, 0x35, 0x40, 0x58, 0x69, 0xd8, - 0x0e, 0x1d, 0x97, 0xdb, 0x70, 0xa0, 0xce, 0x76, 0xc9, 0x5f, 0xb7, 0x94, 0x53, 0xd2, 0x7b, 0xe5, - 0xce, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x07, 0x46, 0x11, 0x49, 0xda, 0x05, 0x00, 0x00, + // 670 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x4f, 0x13, 0x41, + 0x14, 0xc7, 0xbb, 0x2d, 0x16, 0x32, 0x10, 0xc4, 0xe5, 0x52, 0x51, 0xc7, 0xa6, 0x1a, 0xc3, 0xc1, + 0x9d, 0x55, 0xd4, 0x83, 0xc4, 0x78, 0x00, 0x12, 0x3c, 0x50, 0x4d, 0x5a, 0xa3, 0xc2, 0xc1, 0x66, + 0x76, 0xf6, 0x75, 0xbb, 0xba, 0xed, 0x6c, 0x66, 0x66, 0x0b, 0x3d, 0x98, 0xf8, 0x11, 0x3c, 0xfa, + 0x09, 0x8c, 0xf1, 0x53, 0x88, 0x5e, 0x3c, 0x99, 0x86, 0x13, 0x47, 0xd9, 0x5e, 0x3c, 0xf2, 0x11, + 0x0c, 0xb3, 0x14, 0xda, 0xb5, 0x92, 0x1e, 0xe4, 0x36, 0xdb, 0xf7, 0xff, 0xff, 0xfa, 0xe6, 0xcd, + 0x7b, 0x0f, 0xdd, 0x6d, 0x83, 0x24, 0x3e, 0xb7, 0x25, 0x6b, 0x40, 0x93, 0xda, 0x6d, 0x1f, 0xb6, + 0xa5, 0xad, 0x58, 0x58, 0x0b, 0x38, 0x75, 0x1d, 0x1a, 0xd0, 0x16, 0x03, 0x61, 0x73, 0xe7, 0x0d, + 0x30, 0x45, 0x42, 0xc1, 0x15, 0x37, 0x6f, 0x26, 0x16, 0x92, 0x58, 0x88, 0xb6, 0x90, 0xb4, 0x65, + 0xc1, 0xf2, 0x7c, 0xd5, 0x88, 0x1c, 0xc2, 0x78, 0xd3, 0xf6, 0xb8, 0xc7, 0x6d, 0x6d, 0x76, 0xa2, + 0xba, 0xfe, 0xd2, 0x1f, 0xfa, 0x94, 0x40, 0x17, 0xae, 0x0c, 0xe7, 0xc1, 0x43, 0xe5, 0xf3, 0x96, + 0x3c, 0x0e, 0x5e, 0x1e, 0x0e, 0xaa, 0x4e, 0x08, 0xfd, 0x50, 0x29, 0x95, 0x3f, 0x48, 0x68, 0xb5, + 0x53, 0xf6, 0xe2, 0xdf, 0x77, 0xac, 0x0d, 0x2b, 0xee, 0x8c, 0x55, 0x85, 0xc1, 0xff, 0xbd, 0x3e, + 0xd2, 0x31, 0x20, 0xb8, 0x95, 0x16, 0x08, 0x15, 0xd1, 0xa0, 0xd6, 0xe0, 0x52, 0x0d, 0xea, 0x4a, + 0x9f, 0x2e, 0xa0, 0xfc, 0x33, 0x5d, 0x5e, 0xf3, 0x21, 0x9a, 0x6a, 0x82, 0xa2, 0x2e, 0x55, 0xb4, + 0x60, 0x14, 0x8d, 0xc5, 0xe9, 0xa5, 0x6b, 0x64, 0xb8, 0xd6, 0x89, 0xb0, 0x0c, 0x8a, 0x3e, 0xef, + 0x84, 0x50, 0x39, 0x91, 0x9b, 0x1b, 0xe8, 0xa2, 0xec, 0x48, 0x05, 0xcd, 0xda, 0x09, 0x21, 0xab, + 0x09, 0x37, 0x52, 0x84, 0xaa, 0x56, 0xa5, 0x38, 0xb3, 0x89, 0xb7, 0xdc, 0xa7, 0xad, 0xa0, 0x09, + 0x19, 0x02, 0x2b, 0xe4, 0x34, 0x82, 0x90, 0x71, 0x1e, 0x9c, 0x54, 0x43, 0x60, 0x9a, 0xa6, 0xbd, + 0xcb, 0x3f, 0x73, 0xdf, 0x76, 0x0b, 0xd9, 0x39, 0x63, 0x6f, 0xb7, 0xf0, 0x3d, 0x87, 0x36, 0x51, + 0x6e, 0x1d, 0x94, 0x59, 0xa9, 0x3f, 0xd8, 0x61, 0x96, 0x04, 0x16, 0x09, 0x68, 0x82, 0x6c, 0x58, + 0x0e, 0x95, 0x3e, 0xb3, 0x9a, 0xbc, 0xe5, 0x2b, 0x2e, 0x6e, 0x17, 0xd3, 0x61, 0xa9, 0x68, 0xcb, + 0xa5, 0xc2, 0x3d, 0x55, 0xb4, 0x41, 0x5a, 0x3e, 0xb7, 0x42, 0xc1, 0x77, 0x3a, 0x96, 0x00, 0xea, + 0xa2, 0x57, 0x68, 0xb2, 0x02, 0x61, 0x40, 0x19, 0x98, 0xe5, 0xd1, 0xf8, 0x48, 0xc2, 0x59, 0xec, + 0x24, 0x3c, 0x04, 0xde, 0x16, 0xbe, 0x02, 0xf4, 0x12, 0xe5, 0x57, 0x05, 0x50, 0x75, 0x1e, 0xe0, + 0x35, 0x08, 0xe0, 0xff, 0x83, 0xb7, 0xd0, 0xc4, 0x86, 0x2f, 0xcf, 0xa5, 0xce, 0xa5, 0x4d, 0x34, + 0xd5, 0x7f, 0x62, 0xb3, 0x8c, 0x26, 0x3d, 0x56, 0xd3, 0x3d, 0x92, 0x34, 0xea, 0xfd, 0xf1, 0x7a, + 0x64, 0x3d, 0xe0, 0x0e, 0x0d, 0x4e, 0x3a, 0x25, 0xef, 0xb1, 0xa3, 0x73, 0xa9, 0x9b, 0x45, 0x33, + 0x55, 0x45, 0x55, 0x24, 0xc7, 0x9e, 0x84, 0x44, 0x3e, 0x62, 0x12, 0x2a, 0x68, 0x3a, 0xd9, 0x56, + 0x35, 0x01, 0x75, 0x59, 0xc8, 0x16, 0x73, 0x8b, 0xd3, 0x4b, 0x57, 0x47, 0xce, 0x51, 0x05, 0xea, + 0x47, 0xe6, 0x95, 0xf9, 0x2f, 0xef, 0xe6, 0xd2, 0xa9, 0x56, 0x10, 0xef, 0x6b, 0xa4, 0xf9, 0x08, + 0x21, 0xc6, 0x5b, 0xae, 0xaf, 0x57, 0x46, 0x21, 0x37, 0x12, 0xb9, 0xda, 0x17, 0xe8, 0x7c, 0x06, + 0xf4, 0xe6, 0x6b, 0x34, 0x3f, 0x38, 0xfd, 0x35, 0xa9, 0x53, 0x2f, 0x4c, 0xfc, 0x63, 0xb8, 0x4e, + 0x95, 0x64, 0xed, 0x69, 0xf5, 0xc5, 0x13, 0x2e, 0x55, 0x72, 0x59, 0x0d, 0xbe, 0x74, 0x2c, 0x38, + 0xfd, 0x79, 0x79, 0x7e, 0xef, 0xf1, 0x1c, 0x9a, 0x45, 0x33, 0xfd, 0x12, 0x90, 0xc8, 0x77, 0x57, + 0x3e, 0x1a, 0xdd, 0x03, 0x9c, 0xd9, 0x3f, 0xc0, 0x99, 0xc3, 0x03, 0x6c, 0xbc, 0x8f, 0xb1, 0xf1, + 0x39, 0xc6, 0xc6, 0x8f, 0x18, 0x1b, 0xdd, 0x18, 0x1b, 0xfb, 0x31, 0x36, 0x7e, 0xc5, 0xd8, 0xf8, + 0x1d, 0xe3, 0xcc, 0x61, 0x8c, 0x8d, 0x0f, 0x3d, 0x9c, 0xf9, 0xda, 0xc3, 0x46, 0xb7, 0x87, 0x33, + 0xfb, 0x3d, 0x9c, 0xd9, 0xda, 0xf2, 0x78, 0xf8, 0xd6, 0x23, 0x6d, 0x1e, 0x28, 0x10, 0x82, 0x92, + 0x48, 0xda, 0xfa, 0x50, 0xe7, 0xa2, 0x79, 0xd4, 0x14, 0x6d, 0xdf, 0x05, 0x61, 0xf5, 0xc3, 0x76, + 0xe8, 0x78, 0xdc, 0x86, 0x1d, 0x75, 0xbc, 0xec, 0xce, 0x5c, 0xa3, 0x4e, 0x5e, 0x2f, 0xbe, 0x7b, + 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xf6, 0x4b, 0xc3, 0x3a, 0x7b, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/tcp_loadbalancer/pkg.vespkg.go b/pbgo/extschema/schema/views/tcp_loadbalancer/pkg.vespkg.go index 830934b0a..d9e3de85f 100644 --- a/pbgo/extschema/schema/views/tcp_loadbalancer/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/tcp_loadbalancer/pkg.vespkg.go @@ -66,46 +66,46 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.tcp_loadbalancer.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.tcp_loadbalancer.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -114,86 +114,86 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.tcp_loadbalancer.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.views.tcp_loadbalancer.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -208,23 +208,23 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.views.tcp_loadbalancer.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.pb.go b/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.pb.go index 8d10e790b..9ea411ede 100644 --- a/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.pb.go @@ -1068,110 +1068,111 @@ func init() { } var fileDescriptor_fca3fed73194153a = []byte{ - // 1638 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xbf, 0x6f, 0x1b, 0x47, - 0x16, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0x63, 0x3d, 0x67, 0xcb, 0x14, 0xcf, 0xc7, 0xe3, 0xd1, - 0x86, 0x21, 0xe8, 0x8e, 0x4b, 0x89, 0xb6, 0xef, 0x4e, 0x3a, 0x43, 0x77, 0x94, 0x44, 0x09, 0xf2, - 0xc9, 0x92, 0xb3, 0xa4, 0x95, 0x44, 0xcd, 0x62, 0xb9, 0x1c, 0x52, 0x1b, 0x93, 0xdc, 0xcd, 0xcc, - 0x90, 0x32, 0x11, 0x08, 0x08, 0x0c, 0xa4, 0x0d, 0x02, 0xa4, 0x0b, 0x5c, 0xa4, 0x48, 0x80, 0xfc, - 0x03, 0x09, 0x02, 0xa8, 0x71, 0x67, 0xc3, 0x45, 0x60, 0x24, 0x8d, 0xab, 0x20, 0xa6, 0x5c, 0x18, - 0xae, 0x8c, 0x94, 0x29, 0x82, 0x60, 0x67, 0x76, 0x69, 0x92, 0x62, 0x1c, 0x92, 0x56, 0xc5, 0x9d, - 0x79, 0xef, 0xfb, 0xe6, 0xbd, 0x37, 0xef, 0x3d, 0xbe, 0x5d, 0xb8, 0x50, 0xc7, 0x54, 0x36, 0xcc, - 0x24, 0xd5, 0xf7, 0x70, 0x45, 0x4b, 0xd6, 0x0d, 0xbc, 0x4f, 0x93, 0x4c, 0xb7, 0xd4, 0xb2, 0xa9, - 0x15, 0xf2, 0x5a, 0x59, 0xab, 0xea, 0x98, 0x24, 0xad, 0x5a, 0xbe, 0x6c, 0xe8, 0xaa, 0x4e, 0x6a, - 0x05, 0xcd, 0x32, 0x64, 0x8b, 0x98, 0xcc, 0x44, 0x17, 0x05, 0x54, 0x16, 0x50, 0x99, 0x43, 0xe5, - 0x6e, 0x68, 0x24, 0x51, 0x32, 0xd8, 0x5e, 0x2d, 0x2f, 0xeb, 0x66, 0x25, 0x59, 0x32, 0x4b, 0x66, - 0x92, 0x83, 0xf3, 0xb5, 0x22, 0x5f, 0xf1, 0x05, 0x7f, 0x12, 0xa4, 0x91, 0xf3, 0x25, 0xd3, 0x2c, - 0x95, 0x71, 0x52, 0xb3, 0x8c, 0xa4, 0x56, 0xad, 0x9a, 0x4c, 0x63, 0x86, 0x59, 0xa5, 0x8e, 0xf4, - 0xcf, 0x8e, 0xb4, 0xc5, 0x81, 0x2b, 0x16, 0x6b, 0x38, 0xc2, 0x48, 0xa7, 0x2b, 0x98, 0x10, 0x93, - 0xb4, 0x80, 0x9d, 0x32, 0xd3, 0x6a, 0x67, 0x9d, 0xee, 0x14, 0xb2, 0x86, 0x85, 0x5d, 0x51, 0xbc, - 0x2b, 0x3c, 0x98, 0xe2, 0x6a, 0xbd, 0x0b, 0x1e, 0x3b, 0x1e, 0x42, 0xb5, 0x53, 0x63, 0xbe, 0xaf, - 0x20, 0x9b, 0xf9, 0xf7, 0xb0, 0xce, 0x1c, 0xc8, 0x5c, 0x5f, 0x90, 0x76, 0x53, 0xff, 0xda, 0x13, - 0xd1, 0xa6, 0x70, 0xa9, 0x5b, 0x81, 0xb0, 0x9a, 0x56, 0x56, 0xf7, 0x4c, 0xca, 0xda, 0xf5, 0xe2, - 0xdf, 0x00, 0x38, 0xbe, 0x42, 0xb0, 0xc6, 0xb0, 0x82, 0xdf, 0xaf, 0x61, 0xca, 0xd0, 0x7f, 0x61, - 0xa0, 0x82, 0x99, 0x56, 0xd0, 0x98, 0x16, 0x06, 0x31, 0x30, 0x13, 0x4a, 0x5d, 0x90, 0x3b, 0x2f, - 0x7f, 0x9b, 0xdb, 0x2e, 0x50, 0x37, 0x30, 0xd3, 0x72, 0x0d, 0x0b, 0x2b, 0x2d, 0x10, 0x7a, 0x17, - 0xfa, 0xa8, 0x85, 0xf5, 0xb0, 0x87, 0x83, 0xaf, 0xc8, 0xfd, 0x64, 0x8e, 0x2c, 0xd8, 0xb2, 0x16, - 0xd6, 0x6d, 0xb6, 0xe5, 0xc9, 0xcf, 0x0e, 0xc6, 0x6c, 0x12, 0xb9, 0xa4, 0xab, 0xf6, 0xaf, 0xc2, - 0x29, 0x17, 0x83, 0x8f, 0x96, 0xfc, 0xe2, 0xf4, 0xf8, 0x5d, 0x0f, 0x9c, 0x70, 0x0d, 0xa7, 0x96, - 0x59, 0xa5, 0x18, 0x5d, 0x3b, 0x66, 0x79, 0xac, 0xa7, 0xe5, 0xeb, 0x98, 0xf5, 0x30, 0x7b, 0x1b, - 0x4e, 0xd2, 0x06, 0x65, 0xb8, 0xa2, 0xb6, 0x48, 0xbc, 0x9c, 0xe4, 0x52, 0x17, 0x49, 0x96, 0x6b, - 0x1d, 0xa7, 0x9a, 0x10, 0xf0, 0x1b, 0x2e, 0xe1, 0x4e, 0x47, 0x1c, 0xe6, 0xfb, 0x8b, 0xc3, 0x3a, - 0x66, 0x03, 0x04, 0xe1, 0x05, 0x80, 0x13, 0x0a, 0xb6, 0xca, 0x9a, 0xde, 0xba, 0xbe, 0xff, 0x1d, - 0x0b, 0xc2, 0xc5, 0x9e, 0x41, 0x70, 0x60, 0x3d, 0x02, 0xb1, 0xdb, 0x61, 0xf7, 0xd5, 0xfe, 0xec, - 0x76, 0xe8, 0xfe, 0xc0, 0x76, 0x94, 0x84, 0x12, 0xc1, 0xd4, 0xac, 0x11, 0x1d, 0xab, 0x75, 0x4c, - 0xa8, 0x61, 0x56, 0x79, 0x94, 0x83, 0xcb, 0xbe, 0xe7, 0x87, 0x00, 0x28, 0x93, 0xae, 0x74, 0x47, - 0x08, 0xdb, 0x9d, 0x3d, 0x0d, 0x27, 0x5b, 0xbe, 0x8a, 0x1b, 0x8f, 0x7f, 0x01, 0x20, 0x5c, 0xc7, - 0xcc, 0xf5, 0xfd, 0x3c, 0x0c, 0x56, 0xb5, 0x0a, 0xa6, 0x96, 0xa6, 0x63, 0xee, 0x7c, 0x50, 0x79, - 0xb5, 0x81, 0x10, 0xf4, 0xd9, 0x0b, 0xee, 0x57, 0x50, 0xe1, 0xcf, 0xa8, 0x00, 0xed, 0x13, 0x39, - 0x99, 0x5a, 0x34, 0x49, 0x45, 0x63, 0xdc, 0x9c, 0x89, 0xd4, 0x7f, 0xfa, 0xbe, 0x2e, 0xd7, 0x98, - 0x35, 0x0e, 0x5f, 0x31, 0x0b, 0x58, 0x99, 0x20, 0x1d, 0x7b, 0xf1, 0xaf, 0xfd, 0x30, 0xd4, 0xa6, - 0x89, 0x72, 0x30, 0xa4, 0xf3, 0xd4, 0xe5, 0x67, 0x3a, 0x81, 0xbe, 0x3c, 0x48, 0xa1, 0x38, 0x1e, - 0x2b, 0x50, 0xf0, 0xd8, 0xe7, 0xa0, 0xb7, 0xe1, 0x18, 0x11, 0xf1, 0x11, 0xb4, 0xde, 0x41, 0xea, - 0xaf, 0x33, 0x8b, 0x94, 0x90, 0xc3, 0xc4, 0x89, 0x7b, 0x5d, 0x9a, 0xef, 0x35, 0x97, 0xd6, 0x51, - 0x88, 0xa3, 0x27, 0x51, 0x88, 0xa7, 0x4e, 0xa4, 0x10, 0xfd, 0x27, 0x5b, 0x88, 0xe8, 0x2d, 0xe8, - 0xa7, 0x4c, 0x63, 0x35, 0x1a, 0xfe, 0xfc, 0x1e, 0x88, 0x79, 0x67, 0x42, 0xa9, 0x54, 0x7f, 0xdc, - 0x59, 0x8e, 0x12, 0x86, 0x2f, 0x7b, 0xef, 0x1f, 0x00, 0xc5, 0x21, 0x42, 0x1b, 0xf0, 0x34, 0xc1, - 0x45, 0x4c, 0x88, 0x51, 0x2d, 0xa9, 0xe2, 0x3f, 0x82, 0x86, 0x03, 0x9c, 0xfb, 0xfc, 0xef, 0x94, - 0x71, 0x91, 0xfb, 0x2c, 0xb5, 0x60, 0x62, 0x9f, 0xa2, 0x1d, 0x18, 0x2e, 0xe0, 0x32, 0x66, 0xb8, - 0xa0, 0x0a, 0x19, 0x2e, 0xb4, 0x18, 0x83, 0x7d, 0x30, 0x4e, 0x39, 0x68, 0xc5, 0x01, 0xbb, 0xbc, - 0xef, 0xc0, 0xe9, 0x82, 0x41, 0xb5, 0x7c, 0xb9, 0x17, 0x31, 0xec, 0x83, 0xf8, 0x9c, 0x0b, 0xef, - 0x62, 0x6e, 0xab, 0xf5, 0xeb, 0xbe, 0x00, 0x90, 0x3c, 0xf1, 0x2f, 0x01, 0x0c, 0x6d, 0x1a, 0xb4, - 0xcf, 0xfa, 0xfe, 0x1b, 0x1c, 0x2b, 0x6b, 0x79, 0x5c, 0x56, 0x8b, 0x46, 0x99, 0x61, 0xe2, 0xd4, - 0x79, 0x88, 0xef, 0xad, 0xf1, 0x2d, 0x74, 0x01, 0x8e, 0x13, 0x6c, 0x99, 0x84, 0xa9, 0x45, 0x03, - 0x97, 0x0b, 0x34, 0xec, 0x8d, 0x79, 0x67, 0x82, 0xca, 0x98, 0xd8, 0x5c, 0xe3, 0x7b, 0x68, 0x0e, - 0x9e, 0x71, 0x94, 0xc4, 0xa5, 0xb8, 0xba, 0x3e, 0xae, 0x8b, 0x84, 0x4c, 0x5c, 0xa1, 0x40, 0xc4, - 0x9f, 0xf9, 0xa1, 0x24, 0xec, 0x14, 0x05, 0xbe, 0xc1, 0x70, 0x05, 0x4d, 0x41, 0x3f, 0xc3, 0x55, - 0xad, 0xca, 0x78, 0xde, 0x05, 0x15, 0x67, 0x35, 0x44, 0x93, 0x92, 0xa0, 0xb7, 0x66, 0x14, 0x44, - 0x9f, 0x54, 0xec, 0x47, 0x14, 0x83, 0xa1, 0x02, 0xa6, 0x3a, 0x31, 0xf8, 0xe4, 0x11, 0x0e, 0x09, - 0x4f, 0xdb, 0xb6, 0x50, 0x04, 0x06, 0xdc, 0x30, 0x87, 0xc7, 0x62, 0x60, 0x26, 0xa0, 0xb4, 0xd6, - 0x68, 0x17, 0xfa, 0x79, 0x50, 0x84, 0x4b, 0xa1, 0xd4, 0x72, 0x7f, 0x59, 0xdb, 0xed, 0xa1, 0xbc, - 0xc9, 0x49, 0x32, 0x55, 0x46, 0x1a, 0x8a, 0xc3, 0x88, 0x0c, 0x18, 0x6a, 0x9b, 0xe4, 0x9c, 0x7c, - 0x58, 0x1f, 0xf2, 0x80, 0xf4, 0x2b, 0x26, 0x71, 0x4a, 0x3b, 0x37, 0x5a, 0x80, 0xd0, 0xdc, 0xaf, - 0x62, 0xa2, 0xda, 0x74, 0xe1, 0x20, 0x2f, 0xee, 0x48, 0xd7, 0x49, 0x3b, 0x06, 0xde, 0x77, 0xf3, - 0x2e, 0xc8, 0xb5, 0xed, 0x9d, 0x8e, 0x06, 0x35, 0x7e, 0x12, 0x0d, 0x6a, 0xe2, 0x8d, 0x1a, 0xd4, - 0x26, 0x0c, 0x94, 0x30, 0xe3, 0xad, 0xc5, 0x69, 0x75, 0x83, 0x37, 0x29, 0xe5, 0x54, 0x49, 0x2c, - 0xd0, 0x0e, 0x84, 0x4e, 0xe2, 0x52, 0xcc, 0x9c, 0xe6, 0x31, 0x74, 0x63, 0x0a, 0x0a, 0xaa, 0x2c, - 0x66, 0x91, 0x05, 0x18, 0x6a, 0xbb, 0x71, 0x3b, 0x2b, 0x6f, 0xe3, 0x86, 0x93, 0xc1, 0xf6, 0x23, - 0x3a, 0x03, 0x47, 0xeb, 0x5a, 0xb9, 0xe6, 0x26, 0xaf, 0x58, 0x2c, 0x7a, 0xfe, 0x0d, 0x22, 0x4b, - 0x50, 0xea, 0xbe, 0xcb, 0x41, 0xf0, 0xd7, 0x7d, 0x81, 0x51, 0xc9, 0x1f, 0xff, 0x18, 0xc0, 0xb1, - 0xf6, 0x1c, 0x41, 0x9b, 0x70, 0xd4, 0x60, 0xb8, 0x42, 0xc3, 0xa2, 0xfb, 0xfe, 0x73, 0xb8, 0x34, - 0x53, 0x04, 0x09, 0x9a, 0x83, 0x7e, 0xf1, 0x1a, 0x11, 0xf6, 0x70, 0xba, 0x70, 0x17, 0x5d, 0xc6, - 0x16, 0xf2, 0x50, 0x3b, 0x7a, 0xf1, 0xdb, 0x70, 0x7c, 0x95, 0x37, 0xc9, 0xe1, 0x07, 0x90, 0x19, - 0x28, 0x15, 0x35, 0xa3, 0xac, 0x1a, 0xc5, 0x56, 0x33, 0xe5, 0x85, 0x1e, 0x50, 0x26, 0xec, 0xfd, - 0x8d, 0xa2, 0xdb, 0x24, 0x67, 0x7f, 0x06, 0xf0, 0x6c, 0xcf, 0x71, 0x03, 0x45, 0xe0, 0xd4, 0x7a, - 0x26, 0xa7, 0x2a, 0xd9, 0x9b, 0xea, 0xda, 0xb6, 0x72, 0x23, 0x9d, 0x53, 0x57, 0x33, 0x6b, 0xe9, - 0x5b, 0x9b, 0x39, 0x69, 0x04, 0xfd, 0x05, 0x4e, 0x77, 0xc9, 0xd6, 0xb6, 0x15, 0x75, 0x45, 0xc9, - 0xa4, 0x73, 0x19, 0x09, 0xa0, 0x28, 0x8c, 0xf4, 0x10, 0x2b, 0x99, 0x9b, 0x9b, 0xe9, 0x95, 0x8c, - 0xe4, 0x41, 0xd3, 0xf0, 0x6c, 0x97, 0x3c, 0x9b, 0x4b, 0xe7, 0x6e, 0x65, 0x25, 0x2f, 0x3a, 0x07, - 0xff, 0xd4, 0x25, 0x52, 0x32, 0xe9, 0x55, 0xc9, 0x87, 0x2e, 0xc2, 0xd8, 0x31, 0xc1, 0x5a, 0x46, - 0x51, 0x36, 0xb6, 0xd6, 0xd5, 0xed, 0xe5, 0xeb, 0x99, 0x95, 0x5c, 0x56, 0x1a, 0xed, 0xa1, 0xb5, - 0xac, 0x6c, 0xff, 0x3f, 0xb3, 0x25, 0x94, 0x33, 0x5b, 0x2b, 0x99, 0xac, 0xe4, 0x4f, 0xfd, 0x12, - 0x84, 0xde, 0xf4, 0xcd, 0x0d, 0xf4, 0x02, 0x40, 0xbf, 0x98, 0x7c, 0xd0, 0x30, 0x73, 0x52, 0xe4, - 0xca, 0x60, 0x20, 0x67, 0xbc, 0xac, 0x35, 0x1f, 0x84, 0x13, 0xc5, 0xab, 0x77, 0xf4, 0x04, 0xc5, - 0x7a, 0x8d, 0xe0, 0x0a, 0xa6, 0x7b, 0x89, 0xbc, 0x46, 0x0d, 0x3d, 0x51, 0xa3, 0x98, 0xfc, 0xa3, - 0x8e, 0x69, 0xc2, 0x30, 0x13, 0x16, 0x31, 0xef, 0x34, 0x12, 0xfb, 0xc4, 0x60, 0xf8, 0xee, 0x0f, - 0xcf, 0x3e, 0xf5, 0x2c, 0xc5, 0x17, 0x9c, 0x97, 0xe8, 0x64, 0xeb, 0xf2, 0x69, 0xf2, 0x03, 0xb7, - 0x59, 0xc8, 0xad, 0xcd, 0x83, 0x63, 0x2f, 0x79, 0x74, 0x11, 0xcc, 0xa2, 0x26, 0x80, 0xde, 0x75, - 0xcc, 0xd0, 0xdc, 0x00, 0x33, 0xa8, 0x70, 0x73, 0x7e, 0xe0, 0xa9, 0x35, 0x5e, 0x7f, 0xf8, 0xad, - 0x07, 0x34, 0x1f, 0x84, 0x93, 0xbd, 0xfd, 0xac, 0x98, 0x55, 0x83, 0x99, 0x5d, 0xae, 0x12, 0xac, - 0x15, 0xb8, 0xa7, 0x0b, 0xe8, 0x5f, 0xbd, 0x3c, 0x7d, 0x9d, 0x83, 0x42, 0x7a, 0x80, 0x7e, 0x04, - 0xd0, 0x67, 0x57, 0x22, 0x9a, 0x1f, 0xa4, 0x6a, 0x85, 0x9b, 0xa9, 0xc1, 0x0b, 0x3d, 0x6e, 0xbe, - 0x89, 0x9f, 0x29, 0x34, 0x37, 0xa8, 0x9f, 0xe8, 0x57, 0x00, 0x4f, 0x39, 0x53, 0x35, 0x1a, 0x6a, - 0x08, 0x8f, 0x5c, 0x1d, 0x10, 0xe5, 0x78, 0xfa, 0x11, 0x18, 0x2e, 0x6d, 0xb7, 0x22, 0x1b, 0x43, - 0xa7, 0x6d, 0x97, 0xda, 0x81, 0x9d, 0xc6, 0x8f, 0x00, 0xf4, 0x8b, 0xf6, 0xd8, 0x6f, 0xcd, 0x76, - 0x34, 0xd3, 0xc8, 0x94, 0x2c, 0x3e, 0x00, 0xc9, 0xee, 0x07, 0x20, 0x39, 0x53, 0xb1, 0x58, 0x23, - 0x4e, 0x87, 0x73, 0xef, 0xda, 0xec, 0xb0, 0xb9, 0xba, 0x08, 0x66, 0x23, 0xe4, 0xfe, 0x21, 0xf0, - 0x7c, 0x7f, 0x08, 0xfe, 0xde, 0x97, 0x23, 0xe2, 0x1f, 0xf4, 0xc9, 0x21, 0x00, 0xcd, 0x43, 0x30, - 0x3f, 0xf0, 0x5f, 0xef, 0xdd, 0xef, 0xc2, 0x1e, 0x09, 0x2c, 0xdf, 0x03, 0x8f, 0x96, 0x46, 0x57, - 0x94, 0x5b, 0xab, 0x9b, 0x8f, 0x9f, 0x46, 0x47, 0x9e, 0x3c, 0x8d, 0x8e, 0xbc, 0x7c, 0x1a, 0x05, - 0x1f, 0x36, 0xa3, 0xe0, 0xab, 0x66, 0x14, 0x3c, 0x6c, 0x46, 0xc1, 0xe3, 0x66, 0x14, 0xfc, 0xd4, - 0x8c, 0x82, 0xe7, 0xcd, 0xe8, 0xc8, 0xcb, 0x66, 0x14, 0x7c, 0x72, 0x14, 0x1d, 0xb9, 0x7f, 0x14, - 0x05, 0x8f, 0x8f, 0xa2, 0x23, 0x4f, 0x8e, 0xa2, 0x23, 0xbb, 0xbb, 0x25, 0xd3, 0xba, 0x5d, 0x92, - 0xeb, 0xa6, 0x3d, 0xfe, 0x12, 0x4d, 0xae, 0xd1, 0x24, 0x7f, 0xb0, 0x5f, 0x10, 0xed, 0x08, 0xd5, - 0x8d, 0x02, 0x26, 0x09, 0x57, 0x9c, 0xb4, 0xf2, 0x25, 0x33, 0x89, 0xef, 0x30, 0xe7, 0xab, 0xd1, - 0x6b, 0xbf, 0x47, 0xe5, 0xfd, 0xfc, 0x5e, 0x2e, 0xff, 0x16, 0x00, 0x00, 0xff, 0xff, 0x5a, 0x1b, - 0xb5, 0x18, 0x56, 0x14, 0x00, 0x00, + // 1656 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x1b, 0x4f, + 0x15, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x63, 0xbf, 0xc3, 0xf7, 0x9b, 0x3a, 0xa6, 0x18, 0xe3, + 0x56, 0x55, 0x14, 0xf0, 0x3a, 0x71, 0x5b, 0x20, 0xa1, 0x0a, 0x38, 0x89, 0x13, 0xa5, 0x4d, 0x93, + 0xb0, 0x76, 0x03, 0xe4, 0xb2, 0x5a, 0xef, 0x8e, 0x9d, 0xa5, 0xb6, 0x77, 0x99, 0x19, 0x3b, 0xb5, + 0x50, 0xa4, 0xaa, 0xe2, 0xc2, 0x05, 0x15, 0xf5, 0x80, 0x54, 0xf5, 0x80, 0x04, 0x48, 0xfc, 0x03, + 0x20, 0xa4, 0x5c, 0x7a, 0xa3, 0xea, 0x01, 0x55, 0x70, 0xe9, 0x91, 0x3a, 0x3d, 0x14, 0x4e, 0x15, + 0x7f, 0x01, 0xda, 0x99, 0x5d, 0xd7, 0x76, 0x4c, 0xb0, 0xfd, 0x4d, 0x4f, 0xde, 0x99, 0xf7, 0xde, + 0x67, 0xde, 0xfb, 0xcc, 0x7b, 0xcf, 0x6f, 0x17, 0x2e, 0x35, 0x30, 0x95, 0x4d, 0x2b, 0x4d, 0xf5, + 0x43, 0x5c, 0xd5, 0xd2, 0x0d, 0x13, 0x1f, 0xd1, 0x34, 0xd3, 0x6d, 0xb5, 0x62, 0x69, 0x46, 0x51, + 0xab, 0x68, 0x35, 0x1d, 0x93, 0xb4, 0x5d, 0x2f, 0x56, 0x4c, 0x5d, 0xd5, 0x49, 0xdd, 0xd0, 0x6c, + 0x53, 0xb6, 0x89, 0xc5, 0x2c, 0x74, 0x4d, 0x98, 0xca, 0xc2, 0x54, 0xe6, 0xa6, 0x72, 0xaf, 0x69, + 0x2c, 0x55, 0x36, 0xd9, 0x61, 0xbd, 0x28, 0xeb, 0x56, 0x35, 0x5d, 0xb6, 0xca, 0x56, 0x9a, 0x1b, + 0x17, 0xeb, 0x25, 0xbe, 0xe2, 0x0b, 0xfe, 0x24, 0x40, 0x63, 0x57, 0xca, 0x96, 0x55, 0xae, 0xe0, + 0xb4, 0x66, 0x9b, 0x69, 0xad, 0x56, 0xb3, 0x98, 0xc6, 0x4c, 0xab, 0x46, 0x5d, 0xe9, 0x57, 0x5d, + 0x69, 0x1b, 0x03, 0x57, 0x6d, 0xd6, 0x74, 0x85, 0xb1, 0xee, 0x50, 0x30, 0x21, 0x16, 0x69, 0x1b, + 0x76, 0xcb, 0x2c, 0xbb, 0x13, 0x75, 0xb6, 0x5b, 0xc8, 0x9a, 0x36, 0xf6, 0x44, 0xc9, 0x1e, 0x7a, + 0x30, 0xc5, 0xb5, 0x46, 0x8f, 0x79, 0xe2, 0x2c, 0x85, 0x6a, 0xb7, 0xc6, 0xe2, 0x40, 0x24, 0x5b, + 0xc5, 0x9f, 0x62, 0x9d, 0xb9, 0x26, 0x0b, 0x03, 0x99, 0x74, 0xba, 0xfa, 0xf5, 0xbe, 0x16, 0x1d, + 0x0a, 0xd7, 0x7b, 0x15, 0x08, 0xab, 0x6b, 0x15, 0xf5, 0xd0, 0xa2, 0xac, 0x53, 0x2f, 0xf9, 0x67, + 0x00, 0x27, 0xd7, 0x08, 0xd6, 0x18, 0x56, 0xf0, 0xcf, 0xea, 0x98, 0x32, 0xf4, 0x7d, 0x18, 0xaa, + 0x62, 0xa6, 0x19, 0x1a, 0xd3, 0xa2, 0x20, 0x01, 0xe6, 0x22, 0x99, 0xab, 0x72, 0xf7, 0xe5, 0xef, + 0x72, 0xdf, 0x85, 0xd5, 0x3d, 0xcc, 0xb4, 0x42, 0xd3, 0xc6, 0x4a, 0xdb, 0x08, 0xfd, 0x04, 0x06, + 0xa8, 0x8d, 0xf5, 0xa8, 0x8f, 0x1b, 0xdf, 0x94, 0x07, 0xc9, 0x1c, 0x59, 0xa0, 0xe5, 0x6d, 0xac, + 0x3b, 0x68, 0xab, 0xd3, 0xcf, 0x8e, 0x27, 0x1c, 0x10, 0xb9, 0xac, 0xab, 0xce, 0xaf, 0xc2, 0x21, + 0x97, 0xc3, 0xaf, 0x56, 0x82, 0xe2, 0xf4, 0xe4, 0x63, 0x1f, 0x9c, 0xf2, 0x1c, 0xa7, 0xb6, 0x55, + 0xa3, 0x18, 0xdd, 0x3e, 0xe3, 0x79, 0xa2, 0xaf, 0xe7, 0x9b, 0x98, 0xf5, 0x71, 0x7b, 0x17, 0x4e, + 0xd3, 0x26, 0x65, 0xb8, 0xaa, 0xb6, 0x41, 0xfc, 0x1c, 0xe4, 0x7a, 0x0f, 0x48, 0x9e, 0x6b, 0x9d, + 0x85, 0x9a, 0x12, 0xe6, 0xf7, 0x3c, 0xc0, 0xfd, 0x2e, 0x1e, 0x16, 0x07, 0xe3, 0x61, 0x13, 0xb3, + 0x21, 0x48, 0xf8, 0x37, 0x80, 0x53, 0x0a, 0xb6, 0x2b, 0x9a, 0xde, 0xbe, 0xbe, 0x1f, 0x9c, 0x21, + 0xe1, 0x5a, 0x5f, 0x12, 0x5c, 0xb3, 0x3e, 0x44, 0x1c, 0x74, 0xf9, 0x7d, 0x6b, 0x30, 0xbf, 0x5d, + 0xb8, 0xff, 0xe3, 0x3b, 0x4a, 0x43, 0x89, 0x60, 0x6a, 0xd5, 0x89, 0x8e, 0xd5, 0x06, 0x26, 0xd4, + 0xb4, 0x6a, 0x9c, 0xe5, 0xf0, 0x6a, 0xe0, 0xfd, 0x09, 0x00, 0xca, 0xb4, 0x27, 0xdd, 0x17, 0xc2, + 0xce, 0x60, 0x3f, 0x83, 0xd3, 0xed, 0x58, 0xc5, 0x8d, 0x27, 0x7f, 0x0f, 0x20, 0xdc, 0xc4, 0xcc, + 0x8b, 0xfd, 0x0a, 0x0c, 0xd7, 0xb4, 0x2a, 0xa6, 0xb6, 0xa6, 0x63, 0x1e, 0x7c, 0x58, 0xf9, 0xb8, + 0x81, 0x10, 0x0c, 0x38, 0x0b, 0x1e, 0x57, 0x58, 0xe1, 0xcf, 0xc8, 0x80, 0xce, 0x89, 0x1c, 0x4c, + 0x2d, 0x59, 0xa4, 0xaa, 0x31, 0xee, 0xce, 0x54, 0xe6, 0x7b, 0x03, 0x5f, 0x97, 0xe7, 0xcc, 0x06, + 0x37, 0x5f, 0xb3, 0x0c, 0xac, 0x4c, 0x91, 0xae, 0xbd, 0xe4, 0x9f, 0x82, 0x30, 0xd2, 0xa1, 0x89, + 0x0a, 0x30, 0xa2, 0xf3, 0xd4, 0xe5, 0x67, 0xba, 0x44, 0xdf, 0x18, 0xa6, 0x50, 0xdc, 0x88, 0x15, + 0x28, 0x70, 0x9c, 0x73, 0xd0, 0x8f, 0xe0, 0x04, 0x11, 0xfc, 0x08, 0x58, 0xff, 0x30, 0xf5, 0xd7, + 0x9d, 0x45, 0x4a, 0xc4, 0x45, 0xe2, 0xc0, 0xfd, 0x2e, 0x2d, 0x70, 0xce, 0xa5, 0x75, 0x15, 0xe2, + 0xf8, 0x45, 0x14, 0xe2, 0xa5, 0x0b, 0x29, 0xc4, 0xe0, 0xc5, 0x16, 0x22, 0xfa, 0x21, 0x0c, 0x52, + 0xa6, 0xb1, 0x3a, 0x8d, 0xfe, 0xf6, 0x39, 0x48, 0xf8, 0xe7, 0x22, 0x99, 0xcc, 0x60, 0xd8, 0x79, + 0x6e, 0x25, 0x1c, 0x5f, 0xf5, 0xbf, 0x38, 0x06, 0x8a, 0x0b, 0x84, 0xb6, 0xe0, 0x67, 0x04, 0x97, + 0x30, 0x21, 0x66, 0xad, 0xac, 0x8a, 0xff, 0x08, 0x1a, 0x0d, 0x71, 0xec, 0x2b, 0xff, 0xa3, 0x8c, + 0x4b, 0x3c, 0x66, 0xa9, 0x6d, 0x26, 0xf6, 0x29, 0xda, 0x87, 0x51, 0x03, 0x57, 0x30, 0xc3, 0x86, + 0x2a, 0x64, 0xd8, 0x68, 0x23, 0x86, 0x07, 0x40, 0x9c, 0x71, 0xad, 0x15, 0xd7, 0xd8, 0xc3, 0xfd, + 0x31, 0x9c, 0x35, 0x4c, 0xaa, 0x15, 0x2b, 0xfd, 0x80, 0xe1, 0x00, 0xc0, 0x97, 0x3d, 0xf3, 0x1e, + 0xe4, 0x8e, 0x5a, 0xbf, 0x13, 0x08, 0x01, 0xc9, 0x97, 0xfc, 0x03, 0x80, 0x91, 0x6d, 0x93, 0x0e, + 0x58, 0xdf, 0xdf, 0x80, 0x13, 0x15, 0xad, 0x88, 0x2b, 0x6a, 0xc9, 0xac, 0x30, 0x4c, 0xdc, 0x3a, + 0x8f, 0xf0, 0xbd, 0x0d, 0xbe, 0x85, 0xae, 0xc2, 0x49, 0x82, 0x6d, 0x8b, 0x30, 0xb5, 0x64, 0xe2, + 0x8a, 0x41, 0xa3, 0xfe, 0x84, 0x7f, 0x2e, 0xac, 0x4c, 0x88, 0xcd, 0x0d, 0xbe, 0x87, 0x16, 0xe0, + 0xe7, 0xae, 0x92, 0xb8, 0x14, 0x4f, 0x37, 0xc0, 0x75, 0x91, 0x90, 0x89, 0x2b, 0x14, 0x16, 0xc9, + 0x77, 0x41, 0x28, 0x09, 0x3f, 0x45, 0x81, 0x6f, 0x31, 0x5c, 0x45, 0x33, 0x30, 0xc8, 0x70, 0x4d, + 0xab, 0x31, 0x9e, 0x77, 0x61, 0xc5, 0x5d, 0x8d, 0xd0, 0xa4, 0x24, 0xe8, 0xaf, 0x9b, 0x86, 0xe8, + 0x93, 0x8a, 0xf3, 0x88, 0x12, 0x30, 0x62, 0x60, 0xaa, 0x13, 0x93, 0x4f, 0x1e, 0xd1, 0x88, 0x88, + 0xb4, 0x63, 0x0b, 0xc5, 0x60, 0xc8, 0xa3, 0x39, 0x3a, 0x91, 0x00, 0x73, 0x21, 0xa5, 0xbd, 0x46, + 0x07, 0x30, 0xc8, 0x49, 0x11, 0x21, 0x45, 0x32, 0xab, 0x83, 0x65, 0x6d, 0x6f, 0x84, 0xf2, 0x36, + 0x07, 0xc9, 0xd5, 0x18, 0x69, 0x2a, 0x2e, 0x22, 0x32, 0x61, 0xa4, 0x63, 0x92, 0x73, 0xf3, 0x61, + 0x73, 0xc4, 0x03, 0xb2, 0x1f, 0x91, 0xc4, 0x29, 0x9d, 0xd8, 0x68, 0x09, 0x42, 0xeb, 0xa8, 0x86, + 0x89, 0xea, 0xc0, 0x45, 0xc3, 0xbc, 0xb8, 0x63, 0x3d, 0x27, 0xed, 0x9b, 0xf8, 0xc8, 0xcb, 0xbb, + 0x30, 0xd7, 0x76, 0x76, 0xba, 0x1a, 0xd4, 0xe4, 0x45, 0x34, 0xa8, 0xa9, 0x2f, 0xd5, 0xa0, 0xb6, + 0x61, 0xa8, 0x8c, 0x19, 0x6f, 0x2d, 0x6e, 0xab, 0x1b, 0xbe, 0x49, 0x29, 0x97, 0xca, 0x62, 0x81, + 0xf6, 0x21, 0x74, 0x13, 0x97, 0x62, 0xe6, 0x36, 0x8f, 0x91, 0x1b, 0x53, 0x58, 0x40, 0xe5, 0x31, + 0x8b, 0x2d, 0xc1, 0x48, 0xc7, 0x8d, 0x3b, 0x59, 0xf9, 0x00, 0x37, 0xdd, 0x0c, 0x76, 0x1e, 0xd1, + 0xe7, 0x70, 0xbc, 0xa1, 0x55, 0xea, 0x5e, 0xf2, 0x8a, 0xc5, 0xb2, 0xef, 0xbb, 0x20, 0xb6, 0x02, + 0xa5, 0xde, 0xbb, 0x1c, 0xc6, 0xfe, 0x4e, 0x20, 0x34, 0x2e, 0x05, 0x93, 0xbf, 0x02, 0x70, 0xa2, + 0x33, 0x47, 0xd0, 0x36, 0x1c, 0x37, 0x19, 0xae, 0xd2, 0xa8, 0xe8, 0xbe, 0xdf, 0x1e, 0x2d, 0xcd, + 0x14, 0x01, 0x82, 0x16, 0x60, 0x50, 0xbc, 0x46, 0x44, 0x7d, 0x1c, 0x2e, 0xda, 0x03, 0x97, 0x73, + 0x84, 0x9c, 0x6a, 0x57, 0x2f, 0xf9, 0x00, 0x4e, 0xae, 0xf3, 0x26, 0x39, 0xfa, 0x00, 0x32, 0x07, + 0xa5, 0x92, 0x66, 0x56, 0x54, 0xb3, 0xd4, 0x6e, 0xa6, 0xbc, 0xd0, 0x43, 0xca, 0x94, 0xb3, 0xbf, + 0x55, 0xf2, 0x9a, 0xe4, 0xfc, 0x7f, 0x00, 0xfc, 0xa2, 0xef, 0xb8, 0x81, 0x62, 0x70, 0x66, 0x33, + 0x57, 0x50, 0x95, 0xfc, 0x9e, 0xba, 0xb1, 0xab, 0xdc, 0xcb, 0x16, 0xd4, 0xf5, 0xdc, 0x46, 0xf6, + 0xfe, 0x76, 0x41, 0x1a, 0x43, 0x5f, 0x83, 0xb3, 0x3d, 0xb2, 0x8d, 0x5d, 0x45, 0x5d, 0x53, 0x72, + 0xd9, 0x42, 0x4e, 0x02, 0x28, 0x0e, 0x63, 0x7d, 0xc4, 0x4a, 0x6e, 0x6f, 0x3b, 0xbb, 0x96, 0x93, + 0x7c, 0x68, 0x16, 0x7e, 0xd1, 0x23, 0xcf, 0x17, 0xb2, 0x85, 0xfb, 0x79, 0xc9, 0x8f, 0x2e, 0xc3, + 0xaf, 0xf4, 0x88, 0x94, 0x5c, 0x76, 0x5d, 0x0a, 0xa0, 0x6b, 0x30, 0x71, 0x46, 0xb0, 0x91, 0x53, + 0x94, 0xad, 0x9d, 0x4d, 0x75, 0x77, 0xf5, 0x4e, 0x6e, 0xad, 0x90, 0x97, 0xc6, 0xfb, 0x68, 0xad, + 0x2a, 0xbb, 0x77, 0x73, 0x3b, 0x42, 0x39, 0xb7, 0xb3, 0x96, 0xcb, 0x4b, 0xc1, 0xcc, 0xb3, 0x08, + 0xf4, 0x67, 0xf7, 0xb6, 0xd0, 0x2f, 0x7d, 0x30, 0x28, 0x26, 0x1f, 0x34, 0xca, 0x9c, 0x14, 0xbb, + 0x39, 0x9c, 0x91, 0x3b, 0x5e, 0x3e, 0x05, 0xad, 0xbf, 0x46, 0xef, 0x96, 0x6e, 0x3d, 0xd4, 0x53, + 0x14, 0xeb, 0x75, 0x82, 0xab, 0x98, 0x1e, 0xa6, 0x8a, 0x1a, 0x35, 0xf5, 0x54, 0x9d, 0x62, 0xf2, + 0xad, 0x5e, 0x11, 0x65, 0x5a, 0xcd, 0xd0, 0x88, 0x21, 0xa4, 0x0d, 0x4c, 0x53, 0xa6, 0x95, 0xb2, + 0x89, 0xf5, 0xb0, 0x99, 0x3a, 0x22, 0x26, 0xc3, 0x8f, 0xff, 0xf1, 0xee, 0xa9, 0x6f, 0x25, 0xb9, + 0xe4, 0xbe, 0x63, 0xa7, 0xdb, 0xb9, 0x41, 0xd3, 0x3f, 0xf7, 0x7a, 0x89, 0xdc, 0xde, 0x3c, 0x3e, + 0xf3, 0x0e, 0x48, 0x97, 0xc1, 0x3c, 0xfa, 0x85, 0x0f, 0xfa, 0x37, 0x31, 0x43, 0x0b, 0x43, 0x8c, + 0xa8, 0x82, 0x85, 0xc5, 0xa1, 0x87, 0xda, 0xe4, 0x6f, 0xc0, 0xcb, 0xbf, 0xf8, 0x1c, 0x1a, 0xf6, + 0xfa, 0xd3, 0x50, 0xb5, 0x6a, 0x26, 0xb3, 0xce, 0x61, 0xc2, 0x53, 0xe8, 0x22, 0x83, 0x60, 0xcd, + 0xe0, 0x5c, 0x2c, 0xa1, 0xef, 0xf4, 0xe3, 0xe2, 0x3c, 0x0a, 0x84, 0xf4, 0x18, 0x3d, 0xf2, 0xc1, + 0x80, 0x53, 0xca, 0x68, 0x71, 0x98, 0xb2, 0x17, 0x44, 0x64, 0x86, 0xef, 0x14, 0xc9, 0x27, 0x9f, + 0x96, 0x89, 0x0c, 0x5a, 0x18, 0x96, 0x09, 0xf4, 0xdc, 0x07, 0x2f, 0xb9, 0x83, 0x3b, 0x1a, 0x69, + 0xce, 0x8f, 0xdd, 0x1a, 0xd2, 0xca, 0xe5, 0xe2, 0x77, 0x9f, 0xa4, 0x30, 0x76, 0x62, 0x5b, 0x23, + 0x17, 0x46, 0x8f, 0xda, 0xb1, 0x53, 0x28, 0xff, 0x02, 0x30, 0x28, 0xfa, 0xf3, 0xa0, 0x4d, 0xa3, + 0xab, 0x9b, 0xc7, 0x66, 0x64, 0xf1, 0x05, 0x4a, 0xf6, 0xbe, 0x40, 0xc9, 0xb9, 0xaa, 0xcd, 0x9a, + 0xc9, 0x5f, 0x7f, 0x92, 0xe8, 0x6f, 0xcf, 0x8f, 0x5a, 0x0a, 0xcb, 0x60, 0x3e, 0x46, 0x5e, 0x9c, + 0x00, 0xdf, 0xdf, 0x4f, 0xc0, 0x37, 0x07, 0x8a, 0x53, 0xfc, 0xc3, 0xbf, 0x39, 0x01, 0xa0, 0x75, + 0x02, 0x16, 0x87, 0x1e, 0x0d, 0x1e, 0xff, 0x2d, 0xea, 0x93, 0xc0, 0xea, 0x73, 0xf0, 0x6a, 0x65, + 0x7c, 0x4d, 0xb9, 0xbf, 0xbe, 0xfd, 0xfa, 0x6d, 0x7c, 0xec, 0xcd, 0xdb, 0xf8, 0xd8, 0x87, 0xb7, + 0x71, 0xf0, 0xa8, 0x15, 0x07, 0x7f, 0x6c, 0xc5, 0xc1, 0xcb, 0x56, 0x1c, 0xbc, 0x6e, 0xc5, 0xc1, + 0x3f, 0x5b, 0x71, 0xf0, 0xbe, 0x15, 0x1f, 0xfb, 0xd0, 0x8a, 0x83, 0x27, 0xa7, 0xf1, 0xb1, 0x17, + 0xa7, 0x71, 0xf0, 0xfa, 0x34, 0x3e, 0xf6, 0xe6, 0x34, 0x3e, 0x76, 0x70, 0x50, 0xb6, 0xec, 0x07, + 0x65, 0xb9, 0x61, 0x39, 0xe3, 0x39, 0xd1, 0xe4, 0x3a, 0x4d, 0xf3, 0x07, 0xe7, 0x05, 0xd6, 0x61, + 0xa8, 0x61, 0x1a, 0x98, 0xa4, 0x3c, 0x71, 0xda, 0x2e, 0x96, 0xad, 0x34, 0x7e, 0xc8, 0xdc, 0xaf, + 0x5a, 0xe7, 0x7e, 0x2f, 0x2b, 0x06, 0xf9, 0xb5, 0xdd, 0xf8, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x0f, 0xbe, 0x97, 0xfd, 0xf6, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.vesapi.go index 4835bc809..482fda5ea 100644 --- a/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/tcp_loadbalancer/public_crudapi.vesapi.go @@ -2528,10 +2528,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2588,10 +2592,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2650,10 +2658,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4179,9 +4191,9 @@ var APISwaggerJSON string = `{ }, "network": { "description": " Select network types to be used on site\n By default VIP chosen as ip address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -4392,10 +4404,10 @@ var APISwaggerJSON string = `{ } }, "virtual_network": { - "description": " Select virtual network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "Virtual Network", + "description": " Select network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", "$ref": "#/definitions/schemaviewsObjectRefType", - "x-displayname": "Virtual Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" @@ -4413,9 +4425,9 @@ var APISwaggerJSON string = `{ "properties": { "network": { "description": " Select network types to be used on site.\n IP address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", - "title": "SiteNetwork", + "title": "Network", "$ref": "#/definitions/viewsSiteNetwork", - "x-displayname": "Site Network", + "x-displayname": "Network", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" diff --git a/pbgo/extschema/schema/views/tcp_loadbalancer/public_customapi.pb.go b/pbgo/extschema/schema/views/tcp_loadbalancer/public_customapi.pb.go index cc54281c8..53e29001f 100644 --- a/pbgo/extschema/schema/views/tcp_loadbalancer/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/tcp_loadbalancer/public_customapi.pb.go @@ -181,42 +181,43 @@ func init() { } var fileDescriptor_d38103af7fac2e92 = []byte{ - // 550 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x53, 0xbf, 0x6b, 0x14, 0x41, - 0x14, 0xbe, 0x39, 0x45, 0xcd, 0xda, 0xe8, 0x56, 0xc7, 0x19, 0x86, 0x70, 0x58, 0x08, 0xba, 0x33, - 0x21, 0x41, 0x54, 0xac, 0xd4, 0x68, 0x48, 0xa3, 0x12, 0xad, 0xd2, 0x1c, 0xb3, 0xb3, 0xef, 0xf6, - 0x46, 0x77, 0xe7, 0x8d, 0x3b, 0xb3, 0x67, 0x82, 0x04, 0x24, 0x88, 0xb5, 0xa0, 0x7f, 0x84, 0x7f, - 0x82, 0x90, 0x26, 0x9d, 0xa9, 0x34, 0x68, 0x93, 0xd2, 0xec, 0x59, 0x58, 0xe6, 0x4f, 0x90, 0xcc, - 0x5d, 0x7e, 0xb8, 0x11, 0x89, 0xdd, 0x7b, 0xfb, 0xf1, 0x7d, 0xf3, 0xbe, 0xf7, 0xbe, 0x0d, 0x6e, - 0x0f, 0xc0, 0x32, 0x85, 0xdc, 0xca, 0x3e, 0xe4, 0x82, 0x0f, 0x14, 0xbc, 0xb4, 0xdc, 0x49, 0xd3, - 0xcd, 0x50, 0x24, 0xb1, 0xc8, 0x84, 0x96, 0x50, 0x70, 0x53, 0xc6, 0x99, 0x92, 0x5d, 0x59, 0x5a, - 0x87, 0xb9, 0x30, 0x8a, 0x99, 0x02, 0x1d, 0x86, 0x97, 0x47, 0x64, 0x36, 0x22, 0x33, 0x4f, 0x66, - 0x75, 0x72, 0x3b, 0x4a, 0x95, 0xeb, 0x97, 0x31, 0x93, 0x98, 0xf3, 0x14, 0x53, 0xe4, 0x9e, 0x1c, - 0x97, 0x3d, 0xdf, 0xf9, 0xc6, 0x57, 0x23, 0xd1, 0xf6, 0x64, 0x8a, 0x98, 0x66, 0xc0, 0x85, 0x51, - 0x5c, 0x68, 0x8d, 0x4e, 0x38, 0x85, 0xda, 0x8e, 0xd1, 0x4b, 0x7f, 0xce, 0x8b, 0xe6, 0x28, 0x38, - 0x59, 0x33, 0x23, 0x32, 0x95, 0x08, 0x07, 0x63, 0xb4, 0x53, 0x43, 0xc1, 0x82, 0x1e, 0xd4, 0x14, - 0xa6, 0xeb, 0xeb, 0x28, 0x5c, 0x29, 0xb2, 0x6e, 0x1f, 0xad, 0xeb, 0x26, 0xda, 0x76, 0x95, 0xee, - 0x21, 0xc7, 0xf8, 0x19, 0x48, 0x37, 0x62, 0x74, 0xee, 0x07, 0x17, 0xe7, 0xc1, 0xcd, 0x69, 0xbb, - 0xa0, 0x7b, 0xb8, 0x08, 0x2f, 0x4a, 0xb0, 0x2e, 0x9c, 0x0c, 0x26, 0xb4, 0xc8, 0xc1, 0x1a, 0x21, - 0xa1, 0x45, 0xa6, 0xc8, 0x95, 0x89, 0xc5, 0xc3, 0x0f, 0x61, 0x18, 0x9c, 0xde, 0x6b, 0x5a, 0x4d, - 0x0f, 0xf8, 0xba, 0x93, 0x04, 0xe1, 0x51, 0x19, 0x6b, 0x50, 0x5b, 0x08, 0x1f, 0x06, 0xe7, 0xf6, - 0x5f, 0xf5, 0x32, 0xe7, 0x67, 0x66, 0x59, 0x7d, 0xe7, 0x7f, 0x99, 0x90, 0xcd, 0x67, 0x18, 0x8b, - 0xec, 0x89, 0x01, 0xf9, 0x74, 0xc5, 0xc0, 0xe2, 0xd9, 0x64, 0xa4, 0x3b, 0xf3, 0xb5, 0x19, 0x4c, - 0xdc, 0xf3, 0x47, 0xbc, 0xf3, 0x78, 0x21, 0x7c, 0xdb, 0x0c, 0x82, 0xc3, 0x47, 0xc3, 0x1b, 0xec, - 0x24, 0xe7, 0x64, 0xc7, 0xdc, 0xb6, 0x6f, 0xfe, 0x3f, 0x71, 0xe4, 0xaf, 0xf3, 0x86, 0x6c, 0x7e, - 0x6a, 0x92, 0xea, 0x73, 0x6b, 0xba, 0x77, 0x7d, 0x59, 0x46, 0x16, 0x64, 0x59, 0x40, 0x0e, 0xb6, - 0x1f, 0xc5, 0xc2, 0x2a, 0x19, 0xe5, 0xa8, 0x95, 0xc3, 0xe2, 0xda, 0xd4, 0x00, 0x6c, 0xa4, 0x30, - 0x32, 0x05, 0x2e, 0xaf, 0x44, 0x05, 0x88, 0x64, 0xed, 0xfb, 0xcf, 0xf7, 0xcd, 0x07, 0xe1, 0xdc, - 0x38, 0x9a, 0xfc, 0x60, 0xbb, 0x96, 0xbf, 0x3a, 0xa8, 0x57, 0x8f, 0x25, 0x79, 0x8c, 0xae, 0xf2, - 0x14, 0x5c, 0x94, 0x68, 0x1b, 0xed, 0xad, 0xab, 0x7d, 0x6b, 0x63, 0x9d, 0x9c, 0xfa, 0xb6, 0x4e, - 0xae, 0x9e, 0xc8, 0xc7, 0x23, 0x7f, 0xfe, 0xb5, 0x2f, 0xad, 0xe6, 0x05, 0x72, 0xf7, 0x03, 0xd9, - 0xda, 0xa1, 0x8d, 0xed, 0x1d, 0xda, 0xd8, 0xdd, 0xa1, 0xe4, 0x75, 0x45, 0xc9, 0xc7, 0x8a, 0x92, - 0xcd, 0x8a, 0x92, 0xad, 0x8a, 0x92, 0x1f, 0x15, 0x25, 0xbf, 0x2a, 0xda, 0xd8, 0xad, 0x28, 0x79, - 0x37, 0xa4, 0x8d, 0x8d, 0x21, 0x25, 0x5b, 0x43, 0xda, 0xd8, 0x1e, 0xd2, 0xc6, 0xd2, 0x52, 0x8a, - 0xe6, 0x79, 0xca, 0x06, 0x98, 0x39, 0x28, 0x0a, 0xc1, 0x4a, 0xcb, 0x7d, 0xd1, 0xc3, 0x22, 0xdf, - 0x73, 0x3a, 0x50, 0x09, 0x14, 0xd1, 0x3e, 0xcc, 0x4d, 0x9c, 0x22, 0x87, 0x65, 0x37, 0x8e, 0xe6, - 0x3f, 0x7f, 0xd8, 0xf8, 0x8c, 0x0f, 0xe7, 0xec, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x45, 0xfc, - 0x0a, 0x8f, 0xdf, 0x03, 0x00, 0x00, + // 561 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x53, 0xcd, 0x6a, 0x14, 0x4d, + 0x14, 0x9d, 0x9a, 0xef, 0x43, 0x4d, 0xbb, 0xd1, 0x5e, 0x0d, 0x63, 0x28, 0xc2, 0xe0, 0x42, 0xd0, + 0xee, 0x92, 0x04, 0x51, 0x71, 0xa5, 0x46, 0x43, 0x36, 0x2a, 0xa3, 0xab, 0x6c, 0x86, 0xea, 0xea, + 0x3b, 0x3d, 0xa5, 0xdd, 0x75, 0xcb, 0xaa, 0xea, 0x31, 0x41, 0x02, 0x92, 0x27, 0x10, 0xf4, 0x19, + 0x24, 0x8f, 0x20, 0x64, 0x93, 0x9d, 0x59, 0x49, 0xd0, 0x4d, 0x96, 0xa6, 0xc7, 0x85, 0xcb, 0xf8, + 0x06, 0x92, 0x9a, 0xc9, 0x8f, 0x1d, 0x91, 0xb8, 0xbb, 0xb7, 0x4f, 0x9f, 0x53, 0x75, 0xee, 0x3d, + 0x15, 0xdc, 0x19, 0x82, 0x8d, 0x25, 0x32, 0x2b, 0x06, 0x50, 0x70, 0x36, 0x94, 0xf0, 0xca, 0x32, + 0x27, 0x74, 0x2f, 0x47, 0x9e, 0x26, 0x3c, 0xe7, 0x4a, 0x80, 0x61, 0xba, 0x4c, 0x72, 0x29, 0x7a, + 0xa2, 0xb4, 0x0e, 0x0b, 0xae, 0x65, 0xac, 0x0d, 0x3a, 0x0c, 0x2f, 0x8f, 0xc9, 0xf1, 0x98, 0x1c, + 0x7b, 0x72, 0x5c, 0x27, 0xb7, 0xa3, 0x4c, 0xba, 0x41, 0x99, 0xc4, 0x02, 0x0b, 0x96, 0x61, 0x86, + 0xcc, 0x93, 0x93, 0xb2, 0xef, 0x3b, 0xdf, 0xf8, 0x6a, 0x2c, 0xda, 0x9e, 0xce, 0x10, 0xb3, 0x1c, + 0x18, 0xd7, 0x92, 0x71, 0xa5, 0xd0, 0x71, 0x27, 0x51, 0xd9, 0x09, 0x7a, 0xe9, 0xf7, 0xfb, 0xa2, + 0x3e, 0x0e, 0x4e, 0xd7, 0xcc, 0xf0, 0x5c, 0xa6, 0xdc, 0xc1, 0x04, 0xed, 0xd4, 0x50, 0xb0, 0xa0, + 0x86, 0x35, 0x85, 0xeb, 0xf5, 0x71, 0x18, 0x57, 0xf2, 0xbc, 0x37, 0x40, 0xeb, 0x7a, 0xa9, 0xb2, + 0x3d, 0xa9, 0xfa, 0xc8, 0x30, 0x79, 0x0e, 0xc2, 0x8d, 0x19, 0x9d, 0x07, 0xc1, 0xc5, 0x05, 0x70, + 0xf3, 0xca, 0x2e, 0xaa, 0x3e, 0x76, 0xe1, 0x65, 0x09, 0xd6, 0x85, 0xd3, 0xc1, 0x94, 0xe2, 0x05, + 0x58, 0xcd, 0x05, 0xb4, 0xc8, 0x0c, 0xb9, 0x32, 0xd5, 0x3d, 0xfa, 0x10, 0x86, 0xc1, 0xff, 0xfb, + 0x4d, 0xab, 0xe9, 0x01, 0x5f, 0x77, 0xd2, 0x20, 0x3c, 0x2e, 0x63, 0x35, 0x2a, 0x0b, 0xe1, 0xa3, + 0xe0, 0xdc, 0xc1, 0xa9, 0x5e, 0xe6, 0xfc, 0xec, 0x5c, 0x5c, 0x9f, 0xf9, 0x1f, 0x6e, 0x18, 0x2f, + 0xe4, 0x98, 0xf0, 0xfc, 0xa9, 0x06, 0xf1, 0x6c, 0x45, 0x43, 0xf7, 0x6c, 0x3a, 0xd6, 0x9d, 0xfd, + 0xd9, 0x0c, 0xa6, 0xee, 0xfb, 0x25, 0xde, 0x7d, 0xb2, 0x18, 0xae, 0x37, 0x83, 0xe0, 0xe8, 0xd0, + 0xf0, 0x66, 0x7c, 0x9a, 0x75, 0xc6, 0x27, 0xdc, 0xb6, 0x6f, 0xfd, 0x3b, 0x71, 0xec, 0xaf, 0xf3, + 0x81, 0x6c, 0x7d, 0x6c, 0x92, 0xea, 0x53, 0xab, 0xdb, 0xbf, 0xb1, 0x2c, 0x22, 0x0b, 0xa2, 0x34, + 0x50, 0x80, 0x1d, 0x44, 0x09, 0xb7, 0x52, 0x44, 0x05, 0x2a, 0xe9, 0xd0, 0x5c, 0x9b, 0xa9, 0xc3, + 0xd6, 0x71, 0x95, 0x72, 0x93, 0x1e, 0xfd, 0x31, 0x04, 0x1b, 0x49, 0x8c, 0xb4, 0xc1, 0xe5, 0x95, + 0xc8, 0x00, 0x4f, 0xd7, 0xbe, 0x7e, 0x7f, 0xd7, 0x7c, 0x18, 0xce, 0x4f, 0xc2, 0xcb, 0x0e, 0xe7, + 0x6f, 0xd9, 0xeb, 0xc3, 0x7a, 0xf5, 0x44, 0xd6, 0x27, 0xe8, 0x2a, 0xcb, 0xc0, 0x45, 0xa9, 0xb2, + 0xd1, 0xfe, 0x40, 0xdb, 0xb7, 0x37, 0x37, 0xc8, 0x7f, 0x5f, 0x36, 0xc8, 0xd5, 0x53, 0x39, 0x7d, + 0xec, 0x03, 0xb2, 0xf6, 0xb9, 0xd5, 0xbc, 0x40, 0xee, 0xbd, 0x27, 0xdb, 0xbb, 0xb4, 0xb1, 0xb3, + 0x4b, 0x1b, 0x7b, 0xbb, 0x94, 0xbc, 0xa9, 0x28, 0x59, 0xaf, 0x28, 0xd9, 0xaa, 0x28, 0xd9, 0xae, + 0x28, 0xf9, 0x56, 0x51, 0xf2, 0xa3, 0xa2, 0x8d, 0xbd, 0x8a, 0x92, 0xb7, 0x23, 0xda, 0xd8, 0x1c, + 0x51, 0xb2, 0x3d, 0xa2, 0x8d, 0x9d, 0x11, 0x6d, 0x2c, 0x2d, 0x65, 0xa8, 0x5f, 0x64, 0xf1, 0x10, + 0x73, 0x07, 0xc6, 0xf0, 0xb8, 0xb4, 0xcc, 0x17, 0x7d, 0x34, 0xc5, 0xbe, 0xd3, 0xa1, 0x4c, 0xc1, + 0x44, 0x07, 0x30, 0xd3, 0x49, 0x86, 0x0c, 0x96, 0xdd, 0x24, 0xbc, 0x7f, 0x7d, 0xd2, 0xc9, 0x19, + 0x1f, 0xdf, 0xb9, 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xd0, 0x69, 0x93, 0xab, 0x01, 0x04, 0x00, + 0x00, } func (this *GetDnsInfoRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/tenant_configuration/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/tenant_configuration/crudapi/api.vesapi.go index 162f63b01..6b29767f0 100644 --- a/pbgo/extschema/schema/views/tenant_configuration/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/tenant_configuration/crudapi/api.vesapi.go @@ -3042,10 +3042,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/tenant_configuration/object.pb.go b/pbgo/extschema/schema/views/tenant_configuration/object.pb.go index a843246e5..868174bfa 100644 --- a/pbgo/extschema/schema/views/tenant_configuration/object.pb.go +++ b/pbgo/extschema/schema/views/tenant_configuration/object.pb.go @@ -231,47 +231,47 @@ func init() { } var fileDescriptor_46ee86ca2a975bc7 = []byte{ - // 630 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0x41, 0x4f, 0x13, 0x4d, - 0x18, 0xee, 0xb4, 0x4d, 0x21, 0x03, 0xe1, 0x23, 0xfb, 0x99, 0x58, 0x51, 0xc7, 0xa6, 0x5e, 0x48, - 0x64, 0x77, 0x13, 0xa0, 0x46, 0x89, 0xd1, 0x04, 0x8c, 0x5c, 0x24, 0xc6, 0x62, 0x3c, 0x98, 0x68, - 0x33, 0x3b, 0x7d, 0xbb, 0x8c, 0x76, 0x77, 0x36, 0x33, 0xd3, 0x85, 0x1e, 0x4c, 0x3c, 0xf8, 0x03, - 0xf4, 0xce, 0x0f, 0x30, 0xfe, 0x05, 0x2f, 0xe2, 0xc9, 0x23, 0xe1, 0xc4, 0x51, 0xb6, 0x17, 0x8e, - 0x1c, 0xfc, 0x01, 0xa6, 0xb3, 0x2c, 0x52, 0xdc, 0x04, 0xb8, 0xed, 0xe4, 0x7d, 0x9e, 0x67, 0xdf, - 0xf7, 0x99, 0xe7, 0x1d, 0xdc, 0x88, 0x41, 0x39, 0x5c, 0xb8, 0x8a, 0x6d, 0x40, 0x40, 0xdd, 0x98, - 0xc3, 0xa6, 0x72, 0x35, 0x84, 0x34, 0xd4, 0x2d, 0x26, 0xc2, 0x0e, 0xf7, 0x7b, 0x92, 0x6a, 0x2e, - 0x42, 0x57, 0x78, 0x6f, 0x81, 0x69, 0x27, 0x92, 0x42, 0x0b, 0x6b, 0x36, 0xa5, 0x39, 0x29, 0xcd, - 0x31, 0x34, 0x27, 0x8f, 0x36, 0x63, 0xfb, 0x5c, 0x6f, 0xf4, 0x3c, 0x87, 0x89, 0xc0, 0xf5, 0x85, - 0x2f, 0x5c, 0x23, 0xe0, 0xf5, 0x3a, 0xe6, 0x64, 0x0e, 0xe6, 0x2b, 0x15, 0x9e, 0xb9, 0x3e, 0xda, - 0x8f, 0x88, 0x86, 0x22, 0xea, 0xb8, 0x78, 0x6d, 0xb4, 0xa8, 0xfb, 0x11, 0x64, 0xa5, 0xfa, 0x99, - 0x39, 0x40, 0x41, 0x18, 0x9f, 0xa1, 0xd7, 0xfe, 0x9d, 0xb5, 0x35, 0x8a, 0x58, 0xbc, 0xb0, 0x1b, - 0xa7, 0xff, 0x7d, 0x2b, 0x97, 0xf5, 0x17, 0x50, 0xff, 0x58, 0xc6, 0x95, 0x67, 0xc6, 0x3e, 0xeb, - 0x11, 0x1e, 0x0f, 0x40, 0xd3, 0x36, 0xd5, 0xb4, 0x8a, 0x6a, 0x68, 0x76, 0x62, 0xfe, 0xa6, 0x33, - 0xea, 0x65, 0x0a, 0x5c, 0x03, 0x4d, 0x5f, 0xf4, 0x23, 0x58, 0x2e, 0x1f, 0x7e, 0x43, 0xa8, 0x79, - 0x42, 0xb2, 0x9a, 0xf8, 0x3f, 0xd5, 0x57, 0x1a, 0x82, 0xd6, 0x89, 0x4e, 0xd1, 0xe8, 0xdc, 0x3e, - 0xa3, 0xb3, 0x6e, 0x50, 0xb9, 0x6a, 0x53, 0xa9, 0xc2, 0x5a, 0xa6, 0xf9, 0x04, 0x97, 0x55, 0x04, - 0xac, 0x5a, 0x32, 0x42, 0xf3, 0xce, 0x45, 0x2f, 0xd7, 0x59, 0x8f, 0x80, 0x0d, 0x75, 0x9b, 0x86, - 0xbf, 0xb4, 0x5d, 0xfc, 0xb1, 0x53, 0x2d, 0x4e, 0xa3, 0xbd, 0x9d, 0xea, 0xe7, 0x22, 0x6e, 0xe0, - 0xca, 0x8a, 0x04, 0xaa, 0xc1, 0xba, 0x13, 0x83, 0xb2, 0xb9, 0xb0, 0x23, 0x29, 0xb6, 0xfa, 0xf6, - 0xa6, 0xe4, 0x1a, 0xe6, 0x6a, 0x9d, 0xc6, 0x16, 0xb3, 0x99, 0x08, 0x95, 0xe8, 0x82, 0xed, 0x51, - 0x05, 0x36, 0x6d, 0x07, 0x3c, 0xc4, 0x0b, 0xb8, 0xb4, 0x0a, 0xda, 0x9a, 0x1b, 0xe1, 0x48, 0xa0, - 0xed, 0x3c, 0x4a, 0x20, 0x42, 0xae, 0x85, 0xc4, 0x8b, 0xb8, 0xfc, 0x94, 0xab, 0xcb, 0xb2, 0xee, - 0xe2, 0xb1, 0x26, 0x44, 0x5d, 0xca, 0x2e, 0xd9, 0x62, 0x03, 0x57, 0x1e, 0x43, 0x17, 0x2e, 0x39, - 0x59, 0xfd, 0x35, 0x1e, 0xcf, 0x0c, 0xb3, 0x9e, 0xe3, 0x31, 0x9f, 0xb5, 0x8c, 0xeb, 0x69, 0x0c, - 0xee, 0x5d, 0xdc, 0xf5, 0xd5, 0xae, 0xf0, 0x68, 0xf7, 0xc4, 0xfb, 0x8a, 0xcf, 0x86, 0xdf, 0xf5, - 0xdf, 0x08, 0x4f, 0xae, 0x6b, 0xaa, 0x7b, 0xea, 0x38, 0x6b, 0xf7, 0xcf, 0xcd, 0x5a, 0x0a, 0xcf, - 0xd2, 0x71, 0x2a, 0x65, 0x2f, 0xf1, 0x44, 0xba, 0xef, 0x2d, 0x09, 0x1d, 0x55, 0x2d, 0xd6, 0x4a, - 0xb3, 0x13, 0xf3, 0x37, 0x72, 0x93, 0xda, 0x84, 0x8e, 0x89, 0xd6, 0xd5, 0xaf, 0xef, 0xaf, 0xe4, - 0xb5, 0xdb, 0xc4, 0x22, 0xc3, 0x29, 0xeb, 0x01, 0xc6, 0x4c, 0x84, 0x6d, 0x6e, 0x96, 0xae, 0x5a, - 0xca, 0x95, 0x5d, 0xc9, 0x00, 0xa6, 0xa7, 0x53, 0xf8, 0xa5, 0xff, 0xf7, 0x1e, 0x4e, 0xe3, 0x29, - 0x3c, 0x99, 0xb5, 0xe9, 0xf4, 0x78, 0x7b, 0x79, 0x1b, 0xed, 0x1e, 0x90, 0xc2, 0xfe, 0x01, 0x29, - 0x1c, 0x1d, 0x10, 0xf4, 0x21, 0x21, 0xe8, 0x4b, 0x42, 0xd0, 0xcf, 0x84, 0xa0, 0xdd, 0x84, 0xa0, - 0xfd, 0x84, 0xa0, 0x5f, 0x09, 0x41, 0x87, 0x09, 0x29, 0x1c, 0x25, 0x04, 0x7d, 0x1a, 0x90, 0xc2, - 0xf7, 0x01, 0x41, 0xbb, 0x03, 0x52, 0xd8, 0x1f, 0x90, 0xc2, 0xab, 0x37, 0xbe, 0x88, 0xde, 0xf9, - 0x4e, 0x2c, 0xba, 0x1a, 0xa4, 0xa4, 0x4e, 0x6f, 0xb8, 0xf0, 0x52, 0xd2, 0x8e, 0x90, 0xc1, 0xf0, - 0x5a, 0x63, 0xde, 0x06, 0x69, 0x67, 0x65, 0x37, 0xf2, 0x7c, 0xe1, 0xc2, 0x96, 0x3e, 0xde, 0xf5, - 0x73, 0x1f, 0x0a, 0xaf, 0x62, 0x9e, 0x80, 0x85, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x8b, 0x5e, - 0x6b, 0x2e, 0x69, 0x05, 0x00, 0x00, + // 637 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0x31, 0x4f, 0x14, 0x41, + 0x14, 0xc7, 0x6f, 0x38, 0x3c, 0xc8, 0x40, 0x90, 0xac, 0x26, 0x9e, 0xa8, 0xe3, 0xe5, 0x6c, 0x28, + 0xdc, 0xdd, 0x04, 0x25, 0x51, 0x62, 0x34, 0x01, 0x15, 0x0b, 0x09, 0x7a, 0x18, 0x0b, 0x13, 0xbd, + 0xcc, 0xce, 0xbd, 0x5b, 0x46, 0x6f, 0x77, 0x36, 0x33, 0x73, 0x0b, 0x57, 0x98, 0x58, 0x5b, 0xd9, + 0xd9, 0x58, 0x59, 0x19, 0xbf, 0x82, 0x8d, 0x58, 0x59, 0x12, 0x2a, 0x4a, 0xd9, 0x6b, 0x28, 0x29, + 0xfc, 0x00, 0xe6, 0x66, 0x6f, 0x91, 0x83, 0x4d, 0xa0, 0xb8, 0x6e, 0x27, 0xef, 0xff, 0xff, 0xed, + 0x9b, 0xf7, 0xde, 0x3c, 0x3c, 0x1f, 0x83, 0x72, 0xb8, 0x70, 0x15, 0x5b, 0x87, 0x80, 0xba, 0x31, + 0x87, 0x0d, 0xe5, 0x6a, 0x08, 0x69, 0xa8, 0xeb, 0x4c, 0x84, 0x4d, 0xee, 0xb7, 0x25, 0xd5, 0x5c, + 0x84, 0xae, 0xf0, 0xde, 0x02, 0xd3, 0x4e, 0x24, 0x85, 0x16, 0xd6, 0x6c, 0x6a, 0x73, 0x52, 0x9b, + 0x63, 0x6c, 0x4e, 0x9e, 0x6d, 0xc6, 0xf6, 0xb9, 0x5e, 0x6f, 0x7b, 0x0e, 0x13, 0x81, 0xeb, 0x0b, + 0x5f, 0xb8, 0x06, 0xe0, 0xb5, 0x9b, 0xe6, 0x64, 0x0e, 0xe6, 0x2b, 0x05, 0xcf, 0x5c, 0x19, 0xcc, + 0x47, 0x44, 0x3d, 0x88, 0xea, 0x07, 0x2f, 0x0f, 0x06, 0x75, 0x27, 0x82, 0x2c, 0x54, 0x3d, 0x76, + 0x0f, 0x50, 0x10, 0xc6, 0xc7, 0xec, 0x95, 0x93, 0x77, 0xad, 0x0f, 0x2a, 0x6e, 0x9f, 0xb9, 0x1a, + 0x47, 0xff, 0x7d, 0x3d, 0xd7, 0xf5, 0x5f, 0x50, 0xfd, 0x78, 0x0e, 0x97, 0x56, 0x4d, 0xf9, 0xac, + 0x07, 0x78, 0x3c, 0x00, 0x4d, 0x1b, 0x54, 0xd3, 0x32, 0xaa, 0xa0, 0xd9, 0x89, 0xb9, 0x6b, 0xce, + 0x60, 0x2d, 0x53, 0xe1, 0x0a, 0x68, 0xfa, 0xa2, 0x13, 0xc1, 0xe2, 0xe8, 0xfe, 0x0f, 0x84, 0x6a, + 0x87, 0x26, 0xab, 0x86, 0xcf, 0xab, 0x8e, 0xd2, 0x10, 0xd4, 0x0f, 0x39, 0x23, 0x86, 0x73, 0xe3, + 0x18, 0x67, 0xcd, 0xa8, 0x72, 0x69, 0x53, 0x29, 0x61, 0x25, 0x63, 0x3e, 0xc6, 0xa3, 0x2a, 0x02, + 0x56, 0x2e, 0x1a, 0xd0, 0x9c, 0x73, 0xd6, 0xe6, 0x3a, 0x6b, 0x11, 0xb0, 0x1e, 0xb7, 0x66, 0xfc, + 0x0b, 0x5f, 0x8b, 0xbf, 0xb6, 0xca, 0x23, 0xd3, 0x68, 0x67, 0xab, 0xfc, 0xb9, 0x88, 0x57, 0x71, + 0x69, 0x49, 0x02, 0xd5, 0x60, 0x3d, 0x8a, 0x41, 0xd9, 0x5c, 0xd8, 0x91, 0x14, 0x9b, 0x1d, 0x7b, + 0x43, 0x72, 0x0d, 0x37, 0x2b, 0xcd, 0xf9, 0x4d, 0x66, 0x33, 0x11, 0x2a, 0xd1, 0x02, 0xdb, 0xa3, + 0x0a, 0x6c, 0xda, 0x08, 0x78, 0x78, 0x32, 0xc0, 0x59, 0x1a, 0xc1, 0xab, 0xb8, 0xb8, 0x0c, 0xda, + 0x7a, 0x32, 0x40, 0x93, 0x40, 0x1b, 0x79, 0xb0, 0x40, 0x84, 0x5c, 0x0b, 0x99, 0x8b, 0xeb, 0xc7, + 0xf0, 0x33, 0x3c, 0xfa, 0x94, 0xab, 0xe1, 0x12, 0xc7, 0x6a, 0x10, 0xb5, 0x28, 0x1b, 0xe2, 0xa5, + 0x4b, 0x0f, 0xa1, 0x05, 0x43, 0xab, 0x62, 0xf5, 0x35, 0x1e, 0xcf, 0xda, 0x66, 0x3d, 0xc7, 0x63, + 0x3e, 0xab, 0x9b, 0xde, 0xa7, 0xc3, 0x78, 0xe7, 0xec, 0xbd, 0x5f, 0x6e, 0x09, 0x8f, 0xb6, 0x0e, + 0x27, 0xa0, 0xe4, 0xb3, 0xde, 0x77, 0xf5, 0x2f, 0xc2, 0x93, 0x6b, 0x9a, 0xea, 0xb6, 0xea, 0x4f, + 0xfc, 0xdd, 0x53, 0x27, 0x3e, 0x95, 0x67, 0x33, 0x7a, 0x64, 0xd6, 0x5f, 0xe2, 0x89, 0x74, 0xeb, + 0xd4, 0x25, 0x34, 0x55, 0x79, 0xa4, 0x52, 0x9c, 0x9d, 0x98, 0xbb, 0x9a, 0xfb, 0x5e, 0x6a, 0xd0, + 0x34, 0x03, 0x7e, 0xe9, 0xfb, 0xfb, 0x8b, 0x79, 0xe9, 0xd6, 0xb0, 0xc8, 0x74, 0xca, 0xba, 0x87, + 0x31, 0x13, 0x61, 0x83, 0x9b, 0xa7, 0x5f, 0x2e, 0xe6, 0x62, 0x97, 0x32, 0x81, 0xc9, 0xe9, 0x88, + 0x7e, 0xe1, 0xc2, 0xce, 0xfd, 0x69, 0x3c, 0x85, 0x27, 0xb3, 0x34, 0x9d, 0x36, 0x6f, 0x2c, 0x7e, + 0x41, 0xdb, 0x7b, 0xa4, 0xb0, 0xbb, 0x47, 0x0a, 0x07, 0x7b, 0x04, 0x7d, 0x48, 0x08, 0xfa, 0x96, + 0x10, 0xf4, 0x3b, 0x21, 0x68, 0x3b, 0x21, 0x68, 0x37, 0x21, 0xe8, 0x4f, 0x42, 0xd0, 0x7e, 0x42, + 0x0a, 0x07, 0x09, 0x41, 0x9f, 0xba, 0xa4, 0xf0, 0xb3, 0x4b, 0xd0, 0x76, 0x97, 0x14, 0x76, 0xbb, + 0xa4, 0xf0, 0xea, 0x8d, 0x2f, 0xa2, 0x77, 0xbe, 0x13, 0x8b, 0x96, 0x06, 0x29, 0xa9, 0xd3, 0xee, + 0xad, 0x1d, 0x29, 0x69, 0x53, 0xc8, 0xa0, 0xd7, 0xf0, 0x98, 0x37, 0x40, 0xda, 0x59, 0xd8, 0x8d, + 0x3c, 0x5f, 0xb8, 0xb0, 0xa9, 0xfb, 0x1b, 0xe7, 0xd4, 0x75, 0xe5, 0x95, 0xcc, 0x22, 0xba, 0xf5, + 0x2f, 0x00, 0x00, 0xff, 0xff, 0xf2, 0x72, 0x34, 0x3e, 0xef, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.pb.go b/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.pb.go index 61854b78c..f1d7ea840 100644 --- a/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.pb.go @@ -1064,109 +1064,110 @@ func init() { } var fileDescriptor_170da6301ee76e85 = []byte{ - // 1626 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x6f, 0x1b, 0xc7, - 0x15, 0xd7, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0x67, 0x3d, 0xb5, 0x65, 0x8a, 0x75, 0x59, 0x96, 0x36, - 0x0a, 0x41, 0x2d, 0x97, 0x86, 0x6a, 0xb9, 0x96, 0x5a, 0xbb, 0xa5, 0xa4, 0xa5, 0x20, 0x5b, 0xb2, - 0x84, 0x25, 0x65, 0x18, 0x2e, 0xea, 0xc5, 0x72, 0x39, 0xa4, 0xb7, 0x26, 0x77, 0xb6, 0xbb, 0x43, - 0xca, 0x6c, 0x21, 0xa0, 0xf0, 0xc1, 0xbd, 0x06, 0xc9, 0x2d, 0xc8, 0xc1, 0x97, 0x00, 0xce, 0x37, - 0x08, 0xa0, 0x8b, 0x2e, 0x81, 0x0d, 0x1f, 0x12, 0x23, 0xb9, 0xf8, 0x18, 0x53, 0x41, 0x60, 0xe4, - 0x64, 0x24, 0xfe, 0x00, 0xc1, 0xce, 0xec, 0xd2, 0x24, 0x45, 0xc7, 0x24, 0xa5, 0x13, 0x77, 0xe6, - 0xbd, 0xf7, 0x9b, 0xf9, 0xbd, 0x7f, 0x7c, 0xbb, 0xf0, 0x4a, 0x1d, 0xdb, 0xa2, 0x4e, 0xd2, 0xb6, - 0x76, 0x17, 0x57, 0xd5, 0x74, 0x5d, 0xc7, 0x3b, 0x76, 0x9a, 0x62, 0x43, 0x35, 0xa8, 0xa2, 0x11, - 0xa3, 0xa4, 0x97, 0x6b, 0x96, 0x4a, 0x75, 0x62, 0xa4, 0xcd, 0x5a, 0xa1, 0xa2, 0x6b, 0x8a, 0x66, - 0xd5, 0x8a, 0xaa, 0xa9, 0x8b, 0xa6, 0x45, 0x28, 0x41, 0x33, 0xdc, 0x5c, 0xe4, 0xe6, 0x22, 0x33, - 0x17, 0x7b, 0x99, 0xc7, 0x52, 0x65, 0x9d, 0xde, 0xad, 0x15, 0x44, 0x8d, 0x54, 0xd3, 0x65, 0x52, - 0x26, 0x69, 0x06, 0x50, 0xa8, 0x95, 0xd8, 0x8a, 0x2d, 0xd8, 0x13, 0x07, 0x8e, 0x9d, 0x2d, 0x13, - 0x52, 0xae, 0xe0, 0xb4, 0x6a, 0xea, 0x69, 0xd5, 0x30, 0x08, 0x65, 0x28, 0xb6, 0x2b, 0xfd, 0xb5, - 0x2b, 0x6d, 0x61, 0xe0, 0xaa, 0x49, 0x1b, 0xae, 0x30, 0xd6, 0x49, 0x09, 0x5b, 0x16, 0xb1, 0x5a, - 0x86, 0x9d, 0x32, 0x62, 0xb6, 0xa3, 0x4e, 0x77, 0x0a, 0x69, 0xc3, 0xc4, 0x9e, 0x28, 0xd9, 0xe5, - 0x26, 0x6c, 0x63, 0xa3, 0xde, 0x65, 0x9e, 0x38, 0xec, 0x4a, 0xa5, 0x53, 0x63, 0xbe, 0x6f, 0x67, - 0x93, 0xc2, 0xbf, 0xb0, 0x46, 0x5d, 0xb3, 0x8b, 0x7d, 0x9b, 0xb5, 0x5f, 0xf9, 0xb7, 0x3d, 0xad, - 0xde, 0x2a, 0x24, 0xf7, 0x01, 0x1c, 0x5f, 0xb6, 0xb0, 0x4a, 0xb1, 0x8c, 0xff, 0x5d, 0xc3, 0x36, - 0x45, 0x12, 0x0c, 0x55, 0x31, 0x55, 0x8b, 0x2a, 0x55, 0xa3, 0x20, 0x01, 0x66, 0x22, 0x73, 0xe7, - 0xc4, 0xce, 0x00, 0x6f, 0xb2, 0x7b, 0x71, 0xab, 0x0d, 0x4c, 0xd5, 0x7c, 0xc3, 0xc4, 0x4b, 0x81, - 0x57, 0x7b, 0x00, 0xc8, 0x2d, 0x53, 0xf4, 0x4f, 0x18, 0xb0, 0x4d, 0xac, 0x45, 0x7d, 0x0c, 0xe2, - 0xb2, 0xd8, 0x6f, 0x8e, 0x88, 0x1c, 0x37, 0x67, 0x62, 0x8d, 0xe1, 0x4e, 0x7e, 0xbc, 0x3b, 0xe6, - 0x00, 0x89, 0x65, 0x4d, 0x71, 0x7e, 0x65, 0x06, 0xbb, 0x18, 0x7e, 0x76, 0x35, 0xc8, 0xef, 0x91, - 0x7c, 0xe8, 0x83, 0x13, 0x1e, 0x05, 0xdb, 0x24, 0x86, 0x8d, 0xd1, 0x5f, 0x0f, 0x71, 0x48, 0xf4, - 0xe4, 0xb0, 0x8a, 0xa9, 0x47, 0xa0, 0xed, 0xea, 0x9b, 0x70, 0xd2, 0x6e, 0xd8, 0x14, 0x57, 0x95, - 0x16, 0x88, 0x9f, 0x81, 0xfc, 0xbe, 0x0b, 0x24, 0xc7, 0xb4, 0x0e, 0x43, 0x4d, 0x70, 0xf3, 0x0d, - 0x0f, 0xf0, 0x76, 0x87, 0x2f, 0xe6, 0xfb, 0xf7, 0xc5, 0x2a, 0xa6, 0x03, 0x38, 0xe2, 0x0d, 0x80, - 0x13, 0x32, 0x36, 0x2b, 0xaa, 0xd6, 0x0a, 0x66, 0xf6, 0x90, 0x23, 0xce, 0xf7, 0x74, 0x84, 0x6b, - 0xf6, 0xce, 0x68, 0xde, 0xe9, 0x60, 0xb0, 0xd0, 0x3f, 0x03, 0x17, 0xf8, 0x3d, 0x2c, 0x50, 0x1a, - 0x0a, 0x16, 0xb6, 0x49, 0xcd, 0xd2, 0xb0, 0x52, 0xc7, 0x96, 0xad, 0x13, 0x83, 0xf9, 0x3c, 0xec, - 0xde, 0x64, 0xd2, 0x93, 0xde, 0xe4, 0xc2, 0x76, 0xda, 0x27, 0xe1, 0x64, 0x8b, 0x35, 0x8f, 0x7f, - 0xf2, 0x31, 0x80, 0x70, 0x15, 0x53, 0xcf, 0x0b, 0x67, 0x61, 0xd8, 0x50, 0xab, 0xd8, 0x36, 0x55, - 0x0d, 0x33, 0x37, 0x84, 0xe5, 0xb7, 0x1b, 0x08, 0xc1, 0x80, 0xb3, 0x60, 0xdc, 0xc2, 0x32, 0x7b, - 0x46, 0x77, 0xa1, 0x73, 0x22, 0x03, 0x53, 0x4a, 0xc4, 0xaa, 0xaa, 0x94, 0x5d, 0x67, 0x62, 0xee, - 0x6f, 0x03, 0x05, 0xcf, 0xbb, 0x50, 0x96, 0x41, 0x2c, 0x93, 0x22, 0x96, 0x27, 0xac, 0x8e, 0xbd, - 0xe4, 0x17, 0x41, 0x18, 0x69, 0xd3, 0x44, 0xb7, 0x60, 0x44, 0x63, 0xc9, 0xcc, 0xce, 0x75, 0x1d, - 0xfe, 0xe7, 0x41, 0xcb, 0xc7, 0x65, 0x2e, 0x43, 0x8e, 0xe5, 0x9c, 0x85, 0xfe, 0x01, 0xc7, 0x2c, - 0xee, 0x27, 0x0e, 0xed, 0x1f, 0xb4, 0x32, 0x3b, 0x73, 0x4b, 0x8e, 0xb8, 0x68, 0x0c, 0xbc, 0x57, - 0x00, 0x03, 0xbf, 0x10, 0xc0, 0x8e, 0x12, 0x1d, 0x3d, 0x8e, 0x12, 0x3d, 0x71, 0x2c, 0x25, 0x1a, - 0x3c, 0xfe, 0x12, 0x45, 0xdb, 0x30, 0x68, 0x53, 0x95, 0xd6, 0xec, 0xe8, 0xa3, 0x4f, 0x40, 0xc2, - 0x3f, 0x13, 0x99, 0xbb, 0xd4, 0x3f, 0x7e, 0x8e, 0x59, 0x72, 0x02, 0x4b, 0xfe, 0xfd, 0x5d, 0x20, - 0xbb, 0x60, 0x68, 0x0d, 0x9e, 0xb4, 0x70, 0x09, 0x5b, 0x96, 0x6e, 0x94, 0x15, 0xfe, 0x5f, 0x61, - 0x47, 0x43, 0x0c, 0xff, 0xec, 0x3b, 0x8a, 0xbc, 0xc4, 0xb8, 0x0b, 0x2d, 0x33, 0xbe, 0x6f, 0xa3, - 0x9b, 0x30, 0x5a, 0xc4, 0x15, 0x4c, 0x71, 0x51, 0xe1, 0x32, 0x5c, 0x6c, 0x21, 0x86, 0xfb, 0x40, - 0x9c, 0x72, 0xad, 0x65, 0xd7, 0xd8, 0xc3, 0xbd, 0x05, 0xa7, 0x8b, 0xba, 0xad, 0x16, 0x2a, 0xbd, - 0x80, 0x61, 0x1f, 0xc0, 0x67, 0x3c, 0xf3, 0x2e, 0xe4, 0xb6, 0xfa, 0xbf, 0x16, 0x08, 0x01, 0xc1, - 0x97, 0xfc, 0x14, 0xc0, 0xc8, 0xba, 0x6e, 0xf7, 0x59, 0xf3, 0xbf, 0x83, 0x63, 0x15, 0xb5, 0x80, - 0x2b, 0x4a, 0x49, 0xaf, 0x50, 0x6c, 0xb9, 0xb5, 0x1f, 0x61, 0x7b, 0x59, 0xb6, 0x85, 0xce, 0xc1, - 0x71, 0x0b, 0x9b, 0xc4, 0xa2, 0x4a, 0x49, 0xc7, 0x95, 0xa2, 0x1d, 0xf5, 0x27, 0xfc, 0x33, 0x61, - 0x79, 0x8c, 0x6f, 0x66, 0xd9, 0x1e, 0xba, 0x00, 0x4f, 0xb9, 0x4a, 0x3c, 0x28, 0x9e, 0x6e, 0x80, - 0xe9, 0x22, 0x2e, 0xe3, 0x21, 0xe4, 0x16, 0xc9, 0x37, 0x41, 0x28, 0xf0, 0x7b, 0xf2, 0x82, 0x5f, - 0xa3, 0xb8, 0x8a, 0xa6, 0x60, 0x90, 0x07, 0x9f, 0xe5, 0x5f, 0x58, 0x76, 0x57, 0x43, 0x34, 0x2e, - 0x01, 0xfa, 0x6b, 0x7a, 0x91, 0xf7, 0x4e, 0xd9, 0x79, 0x44, 0x09, 0x18, 0x29, 0x62, 0x5b, 0xb3, - 0x74, 0x36, 0x85, 0x44, 0x23, 0x9c, 0x69, 0xdb, 0x16, 0x8a, 0xc1, 0x90, 0xe7, 0xe6, 0xe8, 0x58, - 0x02, 0xcc, 0x84, 0xe4, 0xd6, 0x1a, 0xdd, 0x81, 0x41, 0xe6, 0x14, 0x4e, 0x29, 0x32, 0x97, 0xed, - 0x3f, 0x73, 0xbb, 0x59, 0x8a, 0xeb, 0x0c, 0x48, 0x32, 0xa8, 0xd5, 0x90, 0x5d, 0x54, 0x54, 0x85, - 0x91, 0xb6, 0xc9, 0xce, 0xcd, 0x89, 0xeb, 0x47, 0x38, 0x24, 0xf3, 0x16, 0x8d, 0x9f, 0xd4, 0x8e, - 0x8f, 0x16, 0x20, 0x24, 0x3b, 0x06, 0xb6, 0x14, 0x07, 0x32, 0x1a, 0x66, 0xc5, 0x1e, 0xeb, 0x3a, - 0xed, 0xa6, 0x8e, 0x77, 0xbc, 0xfc, 0x0b, 0x33, 0x6d, 0x67, 0xa7, 0xa3, 0x61, 0x8d, 0x1f, 0x47, - 0xc3, 0x9a, 0x38, 0x52, 0xc3, 0xda, 0x82, 0xa1, 0x32, 0xa6, 0xac, 0xcd, 0xb8, 0xad, 0x6f, 0xb8, - 0xa6, 0x25, 0x9f, 0x28, 0xf3, 0x05, 0xba, 0x0d, 0xa1, 0x9b, 0xc4, 0x36, 0xa6, 0x6e, 0x23, 0x39, - 0x52, 0xa3, 0x0a, 0x73, 0xb8, 0x1c, 0xa6, 0xb1, 0x05, 0x18, 0x69, 0x8b, 0xbe, 0x93, 0xa5, 0xf7, - 0x70, 0xc3, 0xcd, 0x68, 0xe7, 0x11, 0x9d, 0x82, 0xa3, 0x75, 0xb5, 0x52, 0xf3, 0x92, 0x99, 0x2f, - 0x16, 0x7d, 0x97, 0x41, 0xec, 0x2a, 0x14, 0xba, 0x63, 0x3a, 0x88, 0xfd, 0xb5, 0x40, 0x68, 0x54, - 0x08, 0x26, 0x3f, 0x04, 0x70, 0xac, 0x3d, 0x57, 0xd0, 0x16, 0x1c, 0xd5, 0x29, 0xae, 0xda, 0x51, - 0xde, 0x91, 0x17, 0x87, 0x4f, 0x39, 0x99, 0x03, 0xa1, 0x0b, 0x30, 0xc8, 0x5f, 0x33, 0xa2, 0x3e, - 0x06, 0x19, 0xed, 0x82, 0x94, 0x1c, 0x21, 0x73, 0xb9, 0xab, 0x97, 0xbc, 0x07, 0xc7, 0x57, 0x58, - 0xe3, 0x1c, 0x7e, 0x50, 0x99, 0x81, 0x42, 0x49, 0xd5, 0x2b, 0x8a, 0x5e, 0x6a, 0x35, 0x58, 0x56, - 0xfc, 0x21, 0x79, 0xc2, 0xd9, 0x5f, 0x2b, 0x79, 0x8d, 0x73, 0xf6, 0x47, 0x00, 0x4f, 0xf7, 0x1c, - 0x49, 0x50, 0x0c, 0x4e, 0xad, 0x4a, 0x79, 0x45, 0xce, 0x6d, 0x29, 0xd9, 0x4d, 0x79, 0x23, 0x93, - 0x57, 0x56, 0xa4, 0x6c, 0x66, 0x7b, 0x3d, 0x2f, 0x8c, 0xa0, 0xdf, 0xc0, 0xe9, 0x2e, 0x59, 0x76, - 0x53, 0x56, 0x96, 0x65, 0x29, 0x93, 0x97, 0x04, 0x80, 0xe2, 0x30, 0xd6, 0x43, 0x2c, 0x4b, 0x5b, - 0xeb, 0x99, 0x65, 0x49, 0xf0, 0xa1, 0x69, 0x78, 0xba, 0x4b, 0x9e, 0xcb, 0x67, 0xf2, 0xdb, 0x39, - 0xc1, 0x8f, 0xce, 0xc0, 0x5f, 0x75, 0x89, 0x64, 0x29, 0xb3, 0x22, 0x04, 0xd0, 0x79, 0x98, 0x38, - 0x24, 0xc8, 0x4a, 0xb2, 0xbc, 0x76, 0x63, 0x55, 0xd9, 0x5c, 0xba, 0x26, 0x2d, 0xe7, 0x73, 0xc2, - 0x68, 0x0f, 0xad, 0x25, 0x79, 0xf3, 0xba, 0x74, 0x83, 0x2b, 0x4b, 0x37, 0x96, 0xa5, 0x9c, 0x10, - 0x9c, 0xfb, 0x0c, 0x42, 0x7f, 0x66, 0x6b, 0x0d, 0xfd, 0x04, 0x60, 0x90, 0x4f, 0x46, 0x68, 0xd8, - 0x59, 0x2a, 0x76, 0x79, 0x70, 0x43, 0x77, 0x1c, 0xad, 0x37, 0x9f, 0x44, 0x67, 0xeb, 0xd8, 0x4e, - 0xe9, 0x24, 0x65, 0x5a, 0xe4, 0x7e, 0x23, 0xb5, 0x63, 0xe9, 0x14, 0xff, 0xb1, 0x34, 0x7f, 0x5f, - 0x4b, 0x69, 0xc4, 0xb0, 0x49, 0x05, 0xa7, 0x0a, 0xaa, 0x8d, 0x53, 0x6a, 0xb1, 0xaa, 0x1b, 0x0f, - 0xbe, 0xf9, 0xee, 0x23, 0xdf, 0x52, 0xf2, 0x8a, 0xfb, 0xb6, 0x9d, 0x6e, 0x65, 0x80, 0x9d, 0xfe, - 0xaf, 0xd7, 0x3d, 0xc4, 0xd6, 0xe6, 0x6e, 0xcf, 0xb7, 0x40, 0x7b, 0x11, 0xcc, 0xa2, 0x1f, 0x00, - 0xf4, 0xaf, 0x62, 0x8a, 0x2e, 0x0e, 0x38, 0xb4, 0x72, 0xbe, 0xf3, 0x43, 0x8d, 0xba, 0xc9, 0xfa, - 0xd3, 0xcf, 0x7d, 0xa0, 0xf9, 0x24, 0xfa, 0x87, 0x0e, 0xc2, 0x16, 0x56, 0x8b, 0x3d, 0xf8, 0x56, - 0x89, 0xa1, 0x53, 0x62, 0x31, 0xc6, 0x57, 0xd0, 0x5f, 0x7a, 0x31, 0x7e, 0x1f, 0x51, 0xae, 0xb1, - 0x8b, 0xbe, 0x07, 0x30, 0xe0, 0x94, 0x26, 0x9a, 0x1f, 0xb4, 0x94, 0x39, 0xdd, 0x4b, 0xc3, 0x75, - 0x80, 0x24, 0x19, 0x96, 0xef, 0x25, 0x74, 0x71, 0x18, 0xbe, 0xe8, 0xff, 0x3e, 0x78, 0xc2, 0x1d, - 0xc5, 0xd1, 0xd0, 0xd3, 0x7b, 0x6c, 0x61, 0x08, 0x4b, 0x97, 0xf1, 0x43, 0x30, 0x44, 0x3e, 0xcb, - 0xb1, 0x8d, 0x23, 0xe5, 0x73, 0x97, 0xea, 0xae, 0x93, 0xdf, 0x5f, 0x01, 0x18, 0xe4, 0x0d, 0x74, - 0x90, 0xaa, 0xee, 0x68, 0xb9, 0xb1, 0x29, 0x91, 0x7f, 0x46, 0x12, 0xbd, 0xcf, 0x48, 0xa2, 0x54, - 0x35, 0x69, 0x23, 0x49, 0x87, 0xe0, 0xf8, 0xf7, 0xd9, 0xa3, 0x64, 0xf0, 0x22, 0x98, 0x8d, 0xfd, - 0x67, 0x7f, 0x0f, 0xf8, 0xbe, 0xde, 0x03, 0xe9, 0xbe, 0xd9, 0xf0, 0x3f, 0xdc, 0x17, 0x7b, 0x00, - 0x34, 0xf7, 0xc0, 0xfc, 0x50, 0xff, 0xd6, 0x0f, 0xbe, 0x8c, 0xfa, 0x04, 0xb0, 0xf4, 0x08, 0x3c, - 0xbb, 0x3a, 0xba, 0x2c, 0x6f, 0xaf, 0xac, 0x3f, 0x7f, 0x19, 0x1f, 0x79, 0xf1, 0x32, 0x3e, 0xf2, - 0xfa, 0x65, 0x1c, 0xfc, 0xaf, 0x19, 0x07, 0x8f, 0x9b, 0x71, 0xf0, 0xb4, 0x19, 0x07, 0xcf, 0x9b, - 0x71, 0xf0, 0x6d, 0x33, 0x0e, 0x5e, 0x35, 0xe3, 0x23, 0xaf, 0x9b, 0x71, 0xf0, 0xc1, 0x41, 0x7c, - 0x64, 0xff, 0x20, 0x0e, 0x9e, 0x1f, 0xc4, 0x47, 0x5e, 0x1c, 0xc4, 0x47, 0x6e, 0xdf, 0x29, 0x13, - 0xf3, 0x5e, 0x59, 0xac, 0x13, 0x67, 0x82, 0xb6, 0x54, 0xb1, 0x66, 0xa7, 0xd9, 0x83, 0xf3, 0xbe, - 0xe9, 0x78, 0xb1, 0xae, 0x17, 0xb1, 0x95, 0xf2, 0xc4, 0x69, 0xb3, 0x50, 0x26, 0x69, 0x7c, 0x9f, - 0xba, 0x5f, 0xa7, 0xde, 0xfb, 0x69, 0xab, 0x10, 0x64, 0x41, 0xfa, 0xd3, 0xcf, 0x01, 0x00, 0x00, - 0xff, 0xff, 0xea, 0x07, 0x46, 0x48, 0xb1, 0x14, 0x00, 0x00, + // 1636 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0x1b, 0x45, + 0x14, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0xb1, 0x1d, 0xda, 0xd4, 0x31, 0xc5, 0x18, 0xb7, 0x42, + 0x51, 0x84, 0xd7, 0x55, 0x68, 0x4a, 0x13, 0x68, 0xc1, 0x71, 0xd6, 0x51, 0xda, 0xa4, 0x89, 0xd6, + 0x4e, 0x55, 0x15, 0xd1, 0xd5, 0x7a, 0x3d, 0x76, 0x97, 0xda, 0xbb, 0xcb, 0xee, 0xd8, 0xa9, 0x41, + 0x91, 0x50, 0x0f, 0x3d, 0x20, 0x55, 0x7c, 0xdd, 0x10, 0x12, 0xbd, 0x20, 0xf5, 0xc4, 0x19, 0x29, + 0x97, 0x5c, 0x10, 0x55, 0x0f, 0xa8, 0x82, 0x4b, 0x8f, 0xd4, 0xe1, 0x50, 0x6e, 0x15, 0xea, 0x1f, + 0x80, 0x76, 0x66, 0xd7, 0xb5, 0x1d, 0x97, 0xda, 0x4e, 0x38, 0x79, 0x67, 0xde, 0x7b, 0xbf, 0x99, + 0xf7, 0x7b, 0x1f, 0x7e, 0xbb, 0xf0, 0x5c, 0x0d, 0x5b, 0xbc, 0xaa, 0x27, 0x2d, 0xe5, 0x3a, 0xae, + 0xc8, 0xc9, 0x9a, 0x8a, 0x37, 0xad, 0x24, 0xc1, 0x9a, 0xac, 0x11, 0x49, 0xd1, 0xb5, 0xa2, 0x5a, + 0xaa, 0x9a, 0x32, 0x51, 0x75, 0x2d, 0x69, 0x54, 0xf3, 0x65, 0x55, 0x91, 0x14, 0xb3, 0x5a, 0x90, + 0x0d, 0x95, 0x37, 0x4c, 0x9d, 0xe8, 0x68, 0x8a, 0x99, 0xf3, 0xcc, 0x9c, 0xa7, 0xe6, 0x7c, 0x37, + 0xf3, 0x48, 0xa2, 0xa4, 0x92, 0xeb, 0xd5, 0x3c, 0xaf, 0xe8, 0x95, 0x64, 0x49, 0x2f, 0xe9, 0x49, + 0x0a, 0x90, 0xaf, 0x16, 0xe9, 0x8a, 0x2e, 0xe8, 0x13, 0x03, 0x8e, 0x1c, 0x2f, 0xe9, 0x7a, 0xa9, + 0x8c, 0x93, 0xb2, 0xa1, 0x26, 0x65, 0x4d, 0xd3, 0x09, 0x45, 0xb1, 0x1c, 0xe9, 0xab, 0x8e, 0xb4, + 0x89, 0x81, 0x2b, 0x06, 0xa9, 0x3b, 0xc2, 0x48, 0xbb, 0x4b, 0xd8, 0x34, 0x75, 0xb3, 0x69, 0xd8, + 0x2e, 0xd3, 0x8d, 0x56, 0xd4, 0xc9, 0x76, 0x21, 0xa9, 0x1b, 0xd8, 0x15, 0xc5, 0x3b, 0x68, 0xc2, + 0x16, 0xd6, 0x6a, 0x1d, 0xe6, 0xb1, 0xbd, 0x54, 0x4a, 0xed, 0x1a, 0xb3, 0x3d, 0x93, 0xad, 0xe7, + 0x3f, 0xc6, 0x0a, 0x71, 0xcc, 0x4e, 0xf7, 0x6c, 0xd6, 0x7a, 0xe5, 0xd7, 0xbb, 0x5a, 0x3d, 0x57, + 0x88, 0xef, 0x00, 0x38, 0x9a, 0x36, 0xb1, 0x4c, 0xb0, 0x88, 0x3f, 0xa9, 0x62, 0x8b, 0x20, 0x01, + 0x06, 0x2a, 0x98, 0xc8, 0x05, 0x99, 0xc8, 0x61, 0x10, 0x03, 0x53, 0xa1, 0x99, 0x13, 0x7c, 0x7b, + 0x80, 0xd7, 0xe8, 0xbd, 0x98, 0xd5, 0x2a, 0x26, 0x72, 0xae, 0x6e, 0xe0, 0x05, 0xdf, 0x93, 0x6d, + 0x00, 0xc4, 0xa6, 0x29, 0xfa, 0x08, 0xfa, 0x2c, 0x03, 0x2b, 0x61, 0x0f, 0x85, 0x38, 0xcb, 0xf7, + 0x9a, 0x23, 0x3c, 0xc3, 0xcd, 0x1a, 0x58, 0xa1, 0xb8, 0xe3, 0xdf, 0x6d, 0x8d, 0xd8, 0x40, 0x7c, + 0x49, 0x91, 0xec, 0x5f, 0x91, 0xc2, 0xce, 0x07, 0x1f, 0x9c, 0xf7, 0xb3, 0x7b, 0xc4, 0x6f, 0x7b, + 0xe0, 0x98, 0xeb, 0x82, 0x65, 0xe8, 0x9a, 0x85, 0xd1, 0x7b, 0x7b, 0x7c, 0x88, 0x75, 0xf5, 0x61, + 0x09, 0x13, 0xd7, 0x81, 0x96, 0xab, 0xaf, 0xc1, 0x71, 0xab, 0x6e, 0x11, 0x5c, 0x91, 0x9a, 0x20, + 0x5e, 0x0a, 0xf2, 0x66, 0x07, 0x48, 0x96, 0x6a, 0xed, 0x85, 0x1a, 0x63, 0xe6, 0xab, 0x2e, 0xe0, + 0xd5, 0x36, 0x2e, 0x66, 0x7b, 0xe7, 0x62, 0x09, 0x93, 0x3e, 0x88, 0x78, 0x06, 0xe0, 0x98, 0x88, + 0x8d, 0xb2, 0xac, 0x34, 0x83, 0x99, 0xd9, 0x43, 0xc4, 0xc9, 0xae, 0x44, 0x38, 0x66, 0x2f, 0x8c, + 0xe6, 0xb5, 0x36, 0x0f, 0xe6, 0x7a, 0xf7, 0xc0, 0x01, 0x7e, 0x89, 0x17, 0x28, 0x09, 0x39, 0x13, + 0x5b, 0x7a, 0xd5, 0x54, 0xb0, 0x54, 0xc3, 0xa6, 0xa5, 0xea, 0x1a, 0xe5, 0x3c, 0xe8, 0xdc, 0x64, + 0xdc, 0x95, 0x5e, 0x66, 0xc2, 0x56, 0xb7, 0x0f, 0xc3, 0xf1, 0xa6, 0xd7, 0x2c, 0xfe, 0xf1, 0x7b, + 0x00, 0xc2, 0x25, 0x4c, 0x5c, 0x16, 0x8e, 0xc3, 0xa0, 0x26, 0x57, 0xb0, 0x65, 0xc8, 0x0a, 0xa6, + 0x34, 0x04, 0xc5, 0xe7, 0x1b, 0x08, 0x41, 0x9f, 0xbd, 0xa0, 0xbe, 0x05, 0x45, 0xfa, 0x8c, 0xae, + 0x43, 0xfb, 0x44, 0x0a, 0x26, 0x15, 0x75, 0xb3, 0x22, 0x13, 0x7a, 0x9d, 0xb1, 0x99, 0xf7, 0xfb, + 0x0a, 0x9e, 0x7b, 0xa1, 0x0c, 0x85, 0x48, 0xeb, 0x05, 0x2c, 0x8e, 0x99, 0x6d, 0x7b, 0xf1, 0x5f, + 0xfc, 0x30, 0xd4, 0xa2, 0x89, 0xae, 0xc0, 0x90, 0x42, 0x93, 0x99, 0x9e, 0xeb, 0x10, 0xfe, 0x4e, + 0xbf, 0xe5, 0xe3, 0x78, 0x2e, 0x42, 0x86, 0x65, 0x9f, 0x85, 0x3e, 0x84, 0x23, 0x26, 0xe3, 0x89, + 0x41, 0x7b, 0xfb, 0xad, 0xcc, 0xf6, 0xdc, 0x12, 0x43, 0x0e, 0x1a, 0x05, 0xef, 0x16, 0x40, 0xdf, + 0x7f, 0x04, 0xb0, 0xad, 0x44, 0x87, 0x0f, 0xa2, 0x44, 0x0f, 0x1d, 0x48, 0x89, 0xfa, 0x0f, 0xbe, + 0x44, 0xd1, 0x06, 0xf4, 0x5b, 0x44, 0x26, 0x55, 0x2b, 0x7c, 0xf7, 0x7b, 0x10, 0xf3, 0x4e, 0x85, + 0x66, 0xce, 0xf4, 0x8e, 0x9f, 0xa5, 0x96, 0xcc, 0x81, 0x05, 0xef, 0xce, 0x16, 0x10, 0x1d, 0x30, + 0xb4, 0x0c, 0x0f, 0x9b, 0xb8, 0x88, 0x4d, 0x53, 0xd5, 0x4a, 0x12, 0xfb, 0xaf, 0xb0, 0xc2, 0x01, + 0x8a, 0x7f, 0xfc, 0x05, 0x45, 0x5e, 0xa4, 0xbe, 0x73, 0x4d, 0x33, 0xb6, 0x6f, 0xa1, 0xcb, 0x30, + 0x5c, 0xc0, 0x65, 0x4c, 0x70, 0x41, 0x62, 0x32, 0x5c, 0x68, 0x22, 0x06, 0x7b, 0x40, 0x9c, 0x70, + 0xac, 0x45, 0xc7, 0xd8, 0xc5, 0xbd, 0x02, 0x27, 0x0b, 0xaa, 0x25, 0xe7, 0xcb, 0xdd, 0x80, 0x61, + 0x0f, 0xc0, 0xc7, 0x5c, 0xf3, 0x0e, 0xe4, 0x96, 0xfa, 0xbf, 0xe0, 0x0b, 0x00, 0xce, 0x13, 0xff, + 0x11, 0xc0, 0xd0, 0x8a, 0x6a, 0xf5, 0x58, 0xf3, 0x6f, 0xc0, 0x91, 0xb2, 0x9c, 0xc7, 0x65, 0xa9, + 0xa8, 0x96, 0x09, 0x36, 0x9d, 0xda, 0x0f, 0xd1, 0xbd, 0x0c, 0xdd, 0x42, 0x27, 0xe0, 0xa8, 0x89, + 0x0d, 0xdd, 0x24, 0x52, 0x51, 0xc5, 0xe5, 0x82, 0x15, 0xf6, 0xc6, 0xbc, 0x53, 0x41, 0x71, 0x84, + 0x6d, 0x66, 0xe8, 0x1e, 0x3a, 0x05, 0x8f, 0x38, 0x4a, 0x2c, 0x28, 0xae, 0xae, 0x8f, 0xea, 0x22, + 0x26, 0x63, 0x21, 0x64, 0x16, 0xf1, 0x67, 0x7e, 0xc8, 0xb1, 0x7b, 0xb2, 0x82, 0x5f, 0x26, 0xb8, + 0x82, 0x26, 0xa0, 0x9f, 0x05, 0x9f, 0xe6, 0x5f, 0x50, 0x74, 0x56, 0x03, 0x34, 0x2e, 0x0e, 0x7a, + 0xab, 0x6a, 0x81, 0xf5, 0x4e, 0xd1, 0x7e, 0x44, 0x31, 0x18, 0x2a, 0x60, 0x4b, 0x31, 0x55, 0x3a, + 0x85, 0x84, 0x43, 0xcc, 0xd3, 0x96, 0x2d, 0x14, 0x81, 0x01, 0x97, 0xe6, 0xf0, 0x48, 0x0c, 0x4c, + 0x05, 0xc4, 0xe6, 0x1a, 0x5d, 0x83, 0x7e, 0x4a, 0x0a, 0x73, 0x29, 0x34, 0x93, 0xe9, 0x3d, 0x73, + 0x3b, 0xbd, 0xe4, 0x57, 0x28, 0x90, 0xa0, 0x11, 0xb3, 0x2e, 0x3a, 0xa8, 0xa8, 0x02, 0x43, 0x2d, + 0x93, 0x9d, 0x93, 0x13, 0x17, 0xf7, 0x71, 0x48, 0xea, 0x39, 0x1a, 0x3b, 0xa9, 0x15, 0x1f, 0xcd, + 0x41, 0xa8, 0x6f, 0x6a, 0xd8, 0x94, 0x6c, 0xc8, 0x70, 0x90, 0x16, 0x7b, 0xa4, 0xe3, 0xb4, 0xcb, + 0x2a, 0xde, 0x74, 0xf3, 0x2f, 0x48, 0xb5, 0xed, 0x9d, 0xb6, 0x86, 0x35, 0x7a, 0x10, 0x0d, 0x6b, + 0x6c, 0x5f, 0x0d, 0x6b, 0x1d, 0x06, 0x4a, 0x98, 0xd0, 0x36, 0xe3, 0xb4, 0xbe, 0xc1, 0x9a, 0x96, + 0x78, 0xa8, 0xc4, 0x16, 0xe8, 0x2a, 0x84, 0x4e, 0x12, 0x5b, 0x98, 0x38, 0x8d, 0x64, 0x5f, 0x8d, + 0x2a, 0xc8, 0xe0, 0xb2, 0x98, 0x44, 0xe6, 0x60, 0xa8, 0x25, 0xfa, 0x76, 0x96, 0xde, 0xc0, 0x75, + 0x27, 0xa3, 0xed, 0x47, 0x74, 0x04, 0x0e, 0xd7, 0xe4, 0x72, 0xd5, 0x4d, 0x66, 0xb6, 0x98, 0xf7, + 0x9c, 0x05, 0x91, 0xf3, 0x90, 0xeb, 0x8c, 0x69, 0x3f, 0xf6, 0x17, 0x7c, 0x81, 0x61, 0xce, 0x1f, + 0xff, 0x06, 0xc0, 0x91, 0xd6, 0x5c, 0x41, 0xeb, 0x70, 0x58, 0x25, 0xb8, 0x62, 0x85, 0x59, 0x47, + 0x9e, 0x1f, 0x3c, 0xe5, 0x44, 0x06, 0x84, 0x4e, 0x41, 0x3f, 0x7b, 0xcd, 0x08, 0x7b, 0x28, 0x64, + 0xb8, 0x03, 0x52, 0xb0, 0x85, 0x94, 0x72, 0x47, 0x2f, 0x7e, 0x03, 0x8e, 0x2e, 0xd2, 0xc6, 0x39, + 0xf8, 0xa0, 0x32, 0x05, 0xb9, 0xa2, 0xac, 0x96, 0x25, 0xb5, 0xd8, 0x6c, 0xb0, 0xb4, 0xf8, 0x03, + 0xe2, 0x98, 0xbd, 0xbf, 0x5c, 0x74, 0x1b, 0xe7, 0xf4, 0x3f, 0x00, 0x1e, 0xed, 0x3a, 0x92, 0xa0, + 0x08, 0x9c, 0x58, 0x12, 0x72, 0x92, 0x98, 0x5d, 0x97, 0x32, 0x6b, 0xe2, 0x6a, 0x2a, 0x27, 0x2d, + 0x0a, 0x99, 0xd4, 0xc6, 0x4a, 0x8e, 0x1b, 0x42, 0xaf, 0xc1, 0xc9, 0x0e, 0x59, 0x66, 0x4d, 0x94, + 0xd2, 0xa2, 0x90, 0xca, 0x09, 0x1c, 0x40, 0x51, 0x18, 0xe9, 0x22, 0x16, 0x85, 0xf5, 0x95, 0x54, + 0x5a, 0xe0, 0x3c, 0x68, 0x12, 0x1e, 0xed, 0x90, 0x67, 0x73, 0xa9, 0xdc, 0x46, 0x96, 0xf3, 0xa2, + 0x63, 0xf0, 0x95, 0x0e, 0x91, 0x28, 0xa4, 0x16, 0x39, 0x1f, 0x3a, 0x09, 0x63, 0x7b, 0x04, 0x19, + 0x41, 0x14, 0x97, 0x2f, 0x2d, 0x49, 0x6b, 0x0b, 0x17, 0x84, 0x74, 0x2e, 0xcb, 0x0d, 0x77, 0xd1, + 0x5a, 0x10, 0xd7, 0x2e, 0x0a, 0x97, 0x98, 0xb2, 0x70, 0x29, 0x2d, 0x64, 0x39, 0xff, 0xcc, 0x4f, + 0x21, 0xe8, 0x4d, 0xad, 0x2f, 0xa3, 0x3b, 0x1e, 0xe8, 0x67, 0x93, 0x11, 0x1a, 0x74, 0x96, 0x8a, + 0x9c, 0xed, 0xdf, 0xd0, 0x19, 0x47, 0xbf, 0x04, 0x8d, 0x5f, 0xc3, 0xe9, 0x1a, 0xb6, 0x12, 0xaa, + 0x9e, 0x30, 0x4c, 0xfd, 0x66, 0x3d, 0xb1, 0x69, 0xaa, 0x04, 0xbf, 0x55, 0x9c, 0xbd, 0xa9, 0x24, + 0x14, 0x5d, 0xb3, 0xf4, 0x32, 0x4e, 0xe4, 0x65, 0x0b, 0x27, 0xe4, 0x42, 0x45, 0xd5, 0xf6, 0xec, + 0xab, 0x0a, 0x13, 0xdc, 0xfa, 0xe3, 0xaf, 0x6f, 0x3d, 0x0b, 0xf1, 0x73, 0xce, 0x7b, 0x78, 0xb2, + 0x99, 0x1b, 0x56, 0xf2, 0x33, 0xb7, 0xaf, 0xf0, 0xcd, 0xcd, 0xad, 0xae, 0xef, 0x87, 0xd6, 0x3c, + 0x98, 0x46, 0xb7, 0x3d, 0xd0, 0xbb, 0x84, 0x09, 0x3a, 0xdd, 0xe7, 0x38, 0xcb, 0x98, 0x98, 0x1d, + 0x68, 0x08, 0x8e, 0x7f, 0x0d, 0xee, 0xff, 0xec, 0xb1, 0xa9, 0xc8, 0xb4, 0x51, 0x61, 0x62, 0xb9, + 0xd0, 0x85, 0x89, 0x8a, 0xae, 0xa9, 0x44, 0x37, 0xbb, 0x71, 0xe1, 0x88, 0x28, 0x1b, 0xe7, 0xd0, + 0xbb, 0xdd, 0xd8, 0x78, 0x19, 0x09, 0x4c, 0x63, 0x0b, 0xdd, 0xf2, 0x40, 0x9f, 0x5d, 0xd0, 0x68, + 0xb6, 0xdf, 0x06, 0xc0, 0xa8, 0x38, 0x33, 0x58, 0xdf, 0x88, 0x7f, 0xf1, 0x7f, 0x70, 0x71, 0x06, + 0x9d, 0x1e, 0x84, 0x0b, 0x74, 0xd7, 0x03, 0x0f, 0x39, 0xc3, 0x3d, 0x1a, 0xf8, 0x7d, 0x20, 0x32, + 0x37, 0x80, 0xa5, 0xc3, 0xc6, 0x0f, 0x07, 0x5a, 0x20, 0x62, 0x64, 0x75, 0x5f, 0x05, 0xd2, 0xa1, + 0xba, 0x65, 0x17, 0xcc, 0xdf, 0x00, 0xfa, 0x59, 0xaf, 0xee, 0xa7, 0x81, 0xb4, 0x75, 0xf7, 0xc8, + 0x04, 0xcf, 0xbe, 0x58, 0xf1, 0xee, 0x17, 0x2b, 0x5e, 0xa8, 0x18, 0xa4, 0x1e, 0xbf, 0x73, 0xa0, + 0xde, 0x7f, 0x30, 0xbd, 0x9f, 0x82, 0x98, 0x07, 0xd3, 0x91, 0x4f, 0x77, 0xb6, 0x81, 0xe7, 0xf7, + 0x6d, 0x90, 0xec, 0xd9, 0x4f, 0xf6, 0xaf, 0xff, 0x68, 0x1b, 0x80, 0xc6, 0x36, 0x98, 0x1d, 0x68, + 0x64, 0xb8, 0xf5, 0x5b, 0xd8, 0xc3, 0x81, 0x85, 0xbb, 0xe0, 0xc1, 0xf9, 0xe1, 0xb4, 0xb8, 0xb1, + 0xb8, 0xf2, 0xf0, 0x71, 0x74, 0xe8, 0xd1, 0xe3, 0xe8, 0xd0, 0xd3, 0xc7, 0x51, 0xf0, 0x79, 0x23, + 0x0a, 0xee, 0x35, 0xa2, 0xe0, 0x7e, 0x23, 0x0a, 0x1e, 0x36, 0xa2, 0xe0, 0xcf, 0x46, 0x14, 0x3c, + 0x69, 0x44, 0x87, 0x9e, 0x36, 0xa2, 0xe0, 0xab, 0xdd, 0xe8, 0xd0, 0xce, 0x6e, 0x14, 0x3c, 0xdc, + 0x8d, 0x0e, 0x3d, 0xda, 0x8d, 0x0e, 0x5d, 0xbd, 0x56, 0xd2, 0x8d, 0x1b, 0x25, 0xbe, 0xa6, 0xdb, + 0x63, 0xbc, 0x29, 0xf3, 0x55, 0x2b, 0x49, 0x1f, 0xec, 0x97, 0x5e, 0x9b, 0xde, 0x9a, 0x5a, 0xc0, + 0x66, 0xc2, 0x15, 0x27, 0x8d, 0x7c, 0x49, 0x4f, 0xe2, 0x9b, 0xc4, 0xf9, 0x44, 0xf6, 0xd2, 0xef, + 0x6b, 0x79, 0x3f, 0x0d, 0xdf, 0xdb, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x6c, 0x5f, 0x49, 0x0c, + 0x36, 0x15, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.vesapi.go index d1d1cbb84..318f4be7d 100644 --- a/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/tenant_configuration/public_crudapi.vesapi.go @@ -2453,10 +2453,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/terraform_parameters/aws_types.pb.go b/pbgo/extschema/schema/views/terraform_parameters/aws_types.pb.go index bb08c2644..eb0803a30 100644 --- a/pbgo/extschema/schema/views/terraform_parameters/aws_types.pb.go +++ b/pbgo/extschema/schema/views/terraform_parameters/aws_types.pb.go @@ -959,7 +959,7 @@ type AWSTGWType struct { // VPC Attachments // // x-displayName: "VPC Attachments" - // VPC Attachemnts + // VPC Attachments VpcIds []string `protobuf:"bytes,12,rep,name=vpc_ids,json=vpcIds,proto3" json:"vpc_ids,omitempty"` // Hub Tunnel information // x-displayName: "Hub Tunnel Information" diff --git a/pbgo/extschema/schema/views/terraform_parameters/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/terraform_parameters/crudapi/api.vesapi.go index d79c022e7..dd72fd226 100644 --- a/pbgo/extschema/schema/views/terraform_parameters/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/terraform_parameters/crudapi/api.vesapi.go @@ -3536,10 +3536,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6868,10 +6872,14 @@ var StatusAPISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/views/terraform_parameters/object.pb.go b/pbgo/extschema/schema/views/terraform_parameters/object.pb.go index 184c3fee0..6788a4eae 100644 --- a/pbgo/extschema/schema/views/terraform_parameters/object.pb.go +++ b/pbgo/extschema/schema/views/terraform_parameters/object.pb.go @@ -251,52 +251,53 @@ func init() { } var fileDescriptor_d57ed42d7186147e = []byte{ - // 709 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xcf, 0x6e, 0xd3, 0x4a, - 0x14, 0xc6, 0xe3, 0xc4, 0x4d, 0xdc, 0x49, 0x6f, 0xaf, 0x65, 0x5d, 0xa9, 0xb9, 0x05, 0xac, 0x2a, - 0x6c, 0xba, 0xc0, 0xb6, 0x54, 0x5a, 0x09, 0xaa, 0x2a, 0x88, 0x16, 0x5a, 0x29, 0x6a, 0x05, 0xa4, - 0x80, 0x10, 0x12, 0x44, 0x13, 0xe7, 0xc4, 0x35, 0xd8, 0x1e, 0x6b, 0x66, 0x9c, 0x36, 0x0b, 0x24, - 0xc4, 0x13, 0xf0, 0x06, 0x6c, 0x11, 0x4f, 0x51, 0x76, 0x2c, 0xab, 0xb2, 0xe9, 0x92, 0x3a, 0x9b, - 0x2e, 0xbb, 0x62, 0xc1, 0x0a, 0x65, 0x5c, 0x87, 0x26, 0x04, 0x88, 0x44, 0x77, 0x33, 0x9a, 0xef, - 0xfb, 0xf9, 0xfc, 0xf3, 0x41, 0x4b, 0x6d, 0x60, 0xa6, 0x4b, 0x2c, 0x66, 0xef, 0x80, 0x8f, 0xad, - 0xb6, 0x0b, 0xbb, 0xcc, 0xe2, 0x40, 0x29, 0x6e, 0x11, 0xea, 0xd7, 0x43, 0x4c, 0xb1, 0x0f, 0x1c, - 0x28, 0xb3, 0x48, 0xe3, 0x05, 0xd8, 0xdc, 0x0c, 0x29, 0xe1, 0x44, 0x9b, 0x4f, 0x6c, 0x66, 0x62, - 0x33, 0x85, 0xcd, 0x1c, 0x65, 0x9b, 0x35, 0x1c, 0x97, 0xef, 0x44, 0x0d, 0xd3, 0x26, 0xbe, 0xe5, - 0x10, 0x87, 0x58, 0x02, 0xd0, 0x88, 0x5a, 0xe2, 0x26, 0x2e, 0xe2, 0x94, 0x80, 0x67, 0x2f, 0x0d, - 0xc6, 0x43, 0x42, 0xee, 0x92, 0x80, 0x9d, 0x3d, 0xfe, 0x3f, 0xf8, 0xc8, 0x3b, 0x21, 0xa4, 0x4f, - 0xe5, 0xa1, 0x3c, 0x80, 0x41, 0xd0, 0x1e, 0xb2, 0xcf, 0xfd, 0x9c, 0x6b, 0x7d, 0x50, 0xb1, 0x38, - 0x76, 0x35, 0xce, 0x7d, 0xbb, 0x7c, 0x28, 0xa3, 0xfc, 0x3d, 0x51, 0x1d, 0xed, 0x26, 0x52, 0x7c, - 0xe0, 0xb8, 0x89, 0x39, 0x2e, 0x49, 0x73, 0xd2, 0x7c, 0x71, 0xe1, 0x8a, 0x39, 0x58, 0xaa, 0x44, - 0xb8, 0x05, 0x1c, 0x3f, 0xec, 0x84, 0x50, 0xeb, 0xcb, 0xb5, 0x4d, 0xf4, 0x2f, 0xeb, 0x30, 0x0e, - 0x7e, 0xbd, 0x4f, 0xc8, 0x0a, 0xc2, 0xd5, 0x21, 0xc2, 0xb6, 0x50, 0x0d, 0x71, 0xa6, 0x13, 0xef, - 0x56, 0x4a, 0x5b, 0x47, 0x32, 0x0b, 0xc1, 0x2e, 0xe5, 0x04, 0x62, 0xc1, 0x1c, 0xb7, 0x5f, 0xe6, - 0x76, 0x08, 0xb6, 0x20, 0x0a, 0xff, 0xf2, 0xd7, 0xec, 0x9b, 0x5b, 0xf9, 0x84, 0x7d, 0xf8, 0xb1, - 0x74, 0x92, 0x45, 0x77, 0x51, 0x6e, 0x03, 0xb8, 0x56, 0x69, 0x2d, 0xed, 0xd9, 0x06, 0x73, 0x39, - 0x18, 0x3e, 0x0e, 0xb0, 0x03, 0x3e, 0x04, 0xdc, 0x68, 0x60, 0xe6, 0xda, 0x86, 0x4f, 0x02, 0x97, - 0x13, 0x7a, 0xad, 0x57, 0x6f, 0xc3, 0x25, 0x86, 0x1b, 0xb4, 0x28, 0x66, 0x9c, 0x46, 0x36, 0x8f, - 0x28, 0x18, 0x14, 0x70, 0x13, 0x6d, 0xa0, 0x42, 0x0d, 0x42, 0x0f, 0xdb, 0xa0, 0xad, 0xfc, 0x06, - 0x15, 0x31, 0xf8, 0x25, 0x67, 0x97, 0xba, 0x1c, 0xd0, 0x3a, 0xca, 0xaf, 0x51, 0xc0, 0xfc, 0x02, - 0x38, 0x77, 0xc0, 0x83, 0x0b, 0xe0, 0xc8, 0x9b, 0x2e, 0xfb, 0xeb, 0x02, 0x95, 0x9f, 0x21, 0x25, - 0x6d, 0x85, 0xf6, 0x00, 0x15, 0x1c, 0xbb, 0x2e, 0xfa, 0x99, 0x0c, 0xd5, 0x8d, 0xf1, 0xfb, 0xb9, - 0xe1, 0x91, 0x06, 0xf6, 0xfa, 0x5d, 0xcd, 0x3b, 0x76, 0xef, 0x5c, 0xfe, 0x9c, 0x43, 0x53, 0xdb, - 0x1c, 0xf3, 0x88, 0x8d, 0x3d, 0xb9, 0x89, 0x7c, 0xc4, 0xe4, 0x3e, 0x46, 0xc5, 0x64, 0x39, 0xd4, - 0x29, 0xb4, 0x58, 0x29, 0x3b, 0x97, 0x9b, 0x2f, 0x2e, 0x5c, 0x1e, 0x39, 0xf7, 0x35, 0x68, 0xf5, - 0xcc, 0xab, 0x33, 0x1f, 0x5e, 0xfd, 0x37, 0x2a, 0xdc, 0x1a, 0x22, 0xa9, 0x8e, 0x69, 0x2b, 0x08, - 0xd9, 0x24, 0x68, 0xba, 0xe2, 0x0f, 0x2d, 0xfd, 0x33, 0x12, 0xbb, 0x96, 0x0a, 0x44, 0x4c, 0xe7, - 0xf4, 0xda, 0x23, 0x54, 0x0c, 0x3d, 0x1c, 0xd4, 0x99, 0x08, 0xbb, 0x84, 0x44, 0x4e, 0x8b, 0xe3, - 0x17, 0xee, 0xbe, 0x87, 0x83, 0x24, 0xe5, 0x1a, 0x0a, 0xfb, 0x67, 0xed, 0x09, 0x9a, 0xc2, 0x61, - 0xe8, 0x75, 0x52, 0x6e, 0x51, 0x70, 0x97, 0xc6, 0xe7, 0xde, 0xee, 0xb9, 0xcf, 0xc0, 0x45, 0xfc, - 0xe3, 0xb2, 0x3c, 0x73, 0x58, 0x51, 0xd1, 0x34, 0x9a, 0x4a, 0xeb, 0x6a, 0x46, 0x6e, 0xf3, 0x5b, - 0x45, 0xda, 0xac, 0xca, 0x4a, 0x4e, 0x95, 0xab, 0xb2, 0x22, 0xab, 0x13, 0x55, 0x59, 0x99, 0x50, - 0xf3, 0x55, 0x59, 0xc9, 0xab, 0x85, 0xaa, 0xac, 0x14, 0x54, 0xa5, 0x2a, 0x2b, 0x8a, 0x3a, 0x59, - 0x95, 0x95, 0x49, 0x15, 0xad, 0xbe, 0x93, 0xf6, 0x2b, 0x99, 0x83, 0x63, 0x3d, 0x73, 0x74, 0xac, - 0x67, 0x4e, 0x8f, 0x75, 0xe9, 0x75, 0xac, 0x4b, 0xef, 0x63, 0x5d, 0xfa, 0x14, 0xeb, 0xd2, 0x41, - 0xac, 0x4b, 0x47, 0xb1, 0x2e, 0x7d, 0x89, 0x75, 0xe9, 0x24, 0xd6, 0x33, 0xa7, 0xb1, 0x2e, 0xbd, - 0xed, 0xea, 0x99, 0xfd, 0xae, 0x2e, 0x1d, 0x74, 0xf5, 0xcc, 0x51, 0x57, 0xcf, 0x3c, 0x7d, 0xee, - 0x90, 0xf0, 0xa5, 0x63, 0xb6, 0x89, 0x27, 0x82, 0x37, 0xa3, 0x73, 0xfb, 0xcf, 0x08, 0x29, 0x69, - 0xbb, 0x4d, 0xa0, 0x46, 0xfa, 0x6c, 0x85, 0x0d, 0x87, 0x58, 0xb0, 0xc7, 0xcf, 0x16, 0xe6, 0x1f, - 0xf7, 0x66, 0x23, 0x2f, 0x56, 0xe6, 0xf5, 0xef, 0x01, 0x00, 0x00, 0xff, 0xff, 0xde, 0x46, 0xf6, - 0x42, 0x78, 0x06, 0x00, 0x00, + // 729 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x41, 0x6f, 0xd3, 0x48, + 0x14, 0xc7, 0xe3, 0xc6, 0x75, 0xdc, 0x49, 0xb7, 0x6b, 0x59, 0x2b, 0x35, 0xdb, 0x5d, 0xac, 0x28, + 0x5c, 0x7a, 0xc0, 0xb6, 0x54, 0x5a, 0x09, 0x2a, 0x54, 0x44, 0x8b, 0xa8, 0x14, 0xb5, 0x02, 0x52, + 0x40, 0x08, 0x09, 0xc2, 0xc4, 0x79, 0x71, 0xdd, 0xda, 0x1e, 0x6b, 0x66, 0x9c, 0x36, 0x07, 0x24, + 0xc4, 0x99, 0x03, 0xdf, 0x00, 0x89, 0x13, 0xe2, 0xc4, 0x47, 0x28, 0x37, 0x8e, 0x55, 0xb9, 0xf4, + 0x48, 0x9d, 0x0b, 0xc7, 0x9e, 0x39, 0xa1, 0x8e, 0xeb, 0xb4, 0x09, 0x11, 0xcd, 0xa9, 0xb7, 0x19, + 0xcd, 0xff, 0xff, 0x7b, 0x6f, 0xde, 0xcc, 0x7b, 0x68, 0xa1, 0x0d, 0xcc, 0xf2, 0x88, 0xcd, 0x9c, + 0x4d, 0x08, 0xb0, 0xdd, 0xf6, 0x60, 0x87, 0xd9, 0x1c, 0x28, 0xc5, 0x2d, 0x42, 0x83, 0x7a, 0x84, + 0x29, 0x0e, 0x80, 0x03, 0x65, 0x36, 0x69, 0x6c, 0x81, 0xc3, 0xad, 0x88, 0x12, 0x4e, 0xf4, 0xd9, + 0xd4, 0x66, 0xa5, 0x36, 0x4b, 0xd8, 0xac, 0x61, 0xb6, 0x19, 0xd3, 0xf5, 0xf8, 0x66, 0xdc, 0xb0, + 0x1c, 0x12, 0xd8, 0x2e, 0x71, 0x89, 0x2d, 0x00, 0x8d, 0xb8, 0x25, 0x76, 0x62, 0x23, 0x56, 0x29, + 0x78, 0xe6, 0xbf, 0xfe, 0x7c, 0x48, 0xc4, 0x3d, 0x12, 0xb2, 0xd3, 0xc3, 0x7f, 0xfb, 0x0f, 0x79, + 0x27, 0x82, 0xec, 0xa8, 0x32, 0x70, 0x0f, 0x60, 0x10, 0xb6, 0x07, 0xec, 0xe5, 0xdf, 0xef, 0x5a, + 0xef, 0x57, 0xcc, 0x8f, 0x5c, 0x8d, 0x73, 0xb1, 0x2b, 0x6f, 0x15, 0xa4, 0xdc, 0x17, 0xd5, 0xd1, + 0x6f, 0x22, 0x35, 0x00, 0x8e, 0x9b, 0x98, 0xe3, 0x92, 0x54, 0x96, 0x66, 0x8b, 0x73, 0x57, 0xac, + 0xfe, 0x52, 0xa5, 0xc2, 0x75, 0xe0, 0xf8, 0x51, 0x27, 0x82, 0x5a, 0x4f, 0xae, 0xaf, 0xa1, 0xbf, + 0x59, 0x87, 0x71, 0x08, 0xea, 0x3d, 0xc2, 0x98, 0x20, 0x5c, 0x1d, 0x20, 0x6c, 0x08, 0xd5, 0x00, + 0x67, 0x2a, 0xf5, 0xae, 0x67, 0xb4, 0x7b, 0x48, 0x66, 0x11, 0x38, 0xa5, 0xbc, 0x40, 0xcc, 0x59, + 0xa3, 0xbe, 0x97, 0xb5, 0x11, 0x81, 0x23, 0x88, 0xc2, 0xbf, 0xf8, 0x59, 0x7e, 0x73, 0x5b, 0x49, + 0xd9, 0x07, 0x5f, 0x4a, 0x1f, 0x64, 0xe4, 0xa3, 0xfc, 0x2a, 0x70, 0x1d, 0x5a, 0x0b, 0xbb, 0x8e, + 0xc9, 0x3c, 0x0e, 0x66, 0x80, 0x43, 0xec, 0x42, 0x00, 0x21, 0x37, 0x1b, 0x98, 0x79, 0x8e, 0x19, + 0x90, 0xd0, 0xe3, 0x84, 0x5e, 0x2b, 0x0f, 0xd5, 0x30, 0x8e, 0xc3, 0x26, 0xa6, 0xcd, 0x33, 0x59, + 0x1b, 0x98, 0xe9, 0x11, 0xd3, 0x0b, 0x5b, 0x14, 0x33, 0x4e, 0x63, 0x87, 0xc7, 0x14, 0x4c, 0x0a, + 0xb8, 0x89, 0xb6, 0x51, 0xa1, 0x06, 0x91, 0x8f, 0x1d, 0xd0, 0x5f, 0xfe, 0x21, 0x62, 0xcc, 0xe0, + 0xc2, 0x70, 0xa9, 0x66, 0x78, 0xac, 0x1d, 0xea, 0x71, 0x40, 0x5b, 0x48, 0x59, 0xa1, 0x80, 0xf9, + 0x25, 0xc5, 0xba, 0x0b, 0x3e, 0x5c, 0x4a, 0xac, 0x00, 0xc9, 0x6b, 0x1e, 0xbb, 0xac, 0x37, 0xab, + 0x3c, 0x47, 0x6a, 0xf6, 0x89, 0xf4, 0x87, 0xa8, 0xe0, 0x3a, 0x75, 0xf1, 0x13, 0xd3, 0x76, 0xb8, + 0x31, 0xfa, 0x4f, 0x5c, 0xf5, 0x49, 0x03, 0xfb, 0xbd, 0xff, 0xa8, 0xb8, 0xce, 0xc9, 0xba, 0xf2, + 0x2d, 0x8f, 0x26, 0x37, 0x38, 0xe6, 0x31, 0x1b, 0xb9, 0xe7, 0x52, 0xf9, 0x90, 0x9e, 0x7b, 0x82, + 0x8a, 0xe9, 0x58, 0xab, 0x53, 0x68, 0xb1, 0xd2, 0x58, 0x39, 0x3f, 0x5b, 0x9c, 0xfb, 0x7f, 0x68, + 0xc7, 0xd6, 0xa0, 0x75, 0x62, 0x5e, 0x9e, 0xfe, 0xf4, 0xea, 0x9f, 0x61, 0xe9, 0xd6, 0x10, 0xc9, + 0x74, 0x4c, 0xbf, 0x85, 0x90, 0x43, 0xc2, 0xa6, 0x27, 0x66, 0x4b, 0xe9, 0xaf, 0xa1, 0xd8, 0x95, + 0x4c, 0x20, 0x72, 0x3a, 0xa7, 0xd7, 0x1f, 0xa3, 0x62, 0xe4, 0xe3, 0xb0, 0xce, 0x44, 0xda, 0x25, + 0x24, 0xee, 0x34, 0x3f, 0x7a, 0xe1, 0x1e, 0xf8, 0x38, 0x4c, 0xaf, 0x5c, 0x43, 0x51, 0x6f, 0xad, + 0x3f, 0x45, 0x93, 0x38, 0x8a, 0xfc, 0x4e, 0xc6, 0x2d, 0x0a, 0xee, 0xc2, 0xe8, 0xdc, 0x3b, 0x27, + 0xee, 0x53, 0x70, 0x11, 0x9f, 0x6d, 0x16, 0xa7, 0x0f, 0x96, 0x34, 0x34, 0x85, 0x26, 0xb3, 0xba, + 0x5a, 0xb1, 0xd7, 0xfc, 0xb9, 0x24, 0xad, 0x55, 0x65, 0x35, 0xaf, 0xc9, 0x55, 0x59, 0x95, 0xb5, + 0xf1, 0xaa, 0xac, 0x8e, 0x6b, 0x4a, 0x55, 0x56, 0x15, 0xad, 0x50, 0x95, 0xd5, 0x82, 0xa6, 0x56, + 0x65, 0x55, 0xd5, 0x26, 0xaa, 0xb2, 0x3a, 0xa1, 0xa1, 0xe5, 0xf7, 0xd2, 0xde, 0x52, 0x6e, 0xff, + 0xc8, 0xc8, 0x1d, 0x1e, 0x19, 0xb9, 0xe3, 0x23, 0x43, 0x7a, 0x9d, 0x18, 0xd2, 0xc7, 0xc4, 0x90, + 0xbe, 0x26, 0x86, 0xb4, 0x9f, 0x18, 0xd2, 0x61, 0x62, 0x48, 0xdf, 0x13, 0x43, 0xfa, 0x91, 0x18, + 0xb9, 0xe3, 0xc4, 0x90, 0xde, 0x75, 0x8d, 0xdc, 0x5e, 0xd7, 0x90, 0xf6, 0xbb, 0x46, 0xee, 0xb0, + 0x6b, 0xe4, 0x9e, 0xbd, 0x70, 0x49, 0xb4, 0xed, 0x5a, 0x6d, 0xe2, 0x8b, 0xe4, 0xad, 0xf8, 0xdc, + 0xe4, 0x36, 0x23, 0x4a, 0xda, 0x5e, 0x13, 0xa8, 0x99, 0x1d, 0xdb, 0x51, 0xc3, 0x25, 0x36, 0xec, + 0xf2, 0xd3, 0x51, 0x7f, 0xe1, 0xc4, 0x6f, 0x28, 0x62, 0xd8, 0x5f, 0xff, 0x15, 0x00, 0x00, 0xff, + 0xff, 0x57, 0x7a, 0x56, 0xf0, 0x32, 0x07, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/terraform_parameters/public_custom_actionapi.pb.go b/pbgo/extschema/schema/views/terraform_parameters/public_custom_actionapi.pb.go index cffd795a0..3c4c8fc24 100644 --- a/pbgo/extschema/schema/views/terraform_parameters/public_custom_actionapi.pb.go +++ b/pbgo/extschema/schema/views/terraform_parameters/public_custom_actionapi.pb.go @@ -306,48 +306,49 @@ func init() { } var fileDescriptor_bf0d8cb8accb727b = []byte{ - // 650 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0xbf, 0x4f, 0x14, 0x4d, - 0x18, 0xbe, 0x39, 0x08, 0xf9, 0x58, 0xf2, 0x7d, 0x5f, 0xb2, 0xc6, 0xe4, 0x3c, 0xc8, 0x48, 0xb6, - 0x22, 0xc4, 0xdd, 0x49, 0xf8, 0xd1, 0xa0, 0x14, 0x28, 0x21, 0x21, 0x44, 0x25, 0x5b, 0x5a, 0x78, - 0x99, 0xdd, 0x7b, 0x6f, 0x19, 0xb9, 0x9d, 0x59, 0x67, 0x66, 0x0f, 0x0c, 0x21, 0x31, 0xd8, 0x1b, - 0x13, 0x0b, 0xfd, 0x03, 0x2c, 0x6c, 0xad, 0x69, 0xe8, 0xb4, 0x32, 0x44, 0x1b, 0x4a, 0xd9, 0xb3, - 0xb0, 0xe4, 0x1f, 0x30, 0x31, 0x37, 0xb7, 0xdc, 0x0f, 0x20, 0xf1, 0xf0, 0x47, 0x37, 0x3b, 0xcf, - 0xfb, 0x3e, 0xf3, 0x3c, 0xcf, 0xce, 0xbc, 0xd6, 0x4a, 0x03, 0x94, 0xc7, 0x04, 0x51, 0xe1, 0x06, - 0xc4, 0x94, 0x34, 0x18, 0x6c, 0x29, 0xa2, 0x41, 0x4a, 0x5a, 0x13, 0x32, 0xae, 0x24, 0x54, 0xd2, - 0x18, 0x34, 0x48, 0x45, 0x92, 0x34, 0xa8, 0xb3, 0xb0, 0x12, 0xa6, 0x4a, 0x8b, 0xb8, 0x42, 0x43, - 0xcd, 0x04, 0xa7, 0x09, 0xf3, 0x12, 0x29, 0xb4, 0xb0, 0xa7, 0xda, 0x3c, 0x5e, 0x9b, 0xc7, 0x33, - 0x3c, 0xde, 0x45, 0x3c, 0x65, 0x37, 0x62, 0x7a, 0x23, 0x0d, 0xbc, 0x50, 0xc4, 0x24, 0x12, 0x91, - 0x20, 0x86, 0x20, 0x48, 0x6b, 0xe6, 0xcb, 0x7c, 0x98, 0x55, 0x9b, 0xb8, 0x3c, 0x11, 0x09, 0x11, - 0xd5, 0x81, 0xd0, 0x84, 0x11, 0xca, 0xb9, 0xd0, 0xb4, 0x75, 0xb0, 0xca, 0xd1, 0xf1, 0x7e, 0xf9, - 0x22, 0xe9, 0x05, 0xaf, 0xf5, 0x83, 0xfa, 0x49, 0x02, 0xa7, 0xd0, 0xc4, 0x19, 0xdb, 0xb4, 0xce, - 0xaa, 0x54, 0x43, 0x8e, 0x3a, 0x67, 0x50, 0x50, 0xc0, 0x1b, 0x67, 0xc8, 0x27, 0xcf, 0x07, 0x57, - 0xe9, 0xaf, 0x98, 0x1f, 0x38, 0x5a, 0x11, 0x3c, 0x82, 0x50, 0xe7, 0x6d, 0x73, 0x03, 0xb7, 0xf5, - 0x1a, 0xba, 0x7e, 0x61, 0x57, 0xb7, 0xc0, 0x79, 0x87, 0x2c, 0xcb, 0x4f, 0xb9, 0x0f, 0x8f, 0x53, - 0x50, 0xda, 0x9e, 0xb0, 0x46, 0x39, 0x8d, 0x41, 0x25, 0x34, 0x84, 0x12, 0x9a, 0x44, 0x53, 0xa3, - 0x7e, 0x77, 0xc3, 0x1e, 0xb7, 0x46, 0x8d, 0xa1, 0x4d, 0xc6, 0xab, 0xa5, 0xa2, 0x41, 0xff, 0x69, - 0x6d, 0xac, 0x31, 0x5e, 0xed, 0x80, 0xad, 0xf2, 0xd2, 0x50, 0x17, 0xbc, 0x47, 0x63, 0xb0, 0xd7, - 0xac, 0x91, 0xf6, 0xd5, 0x28, 0x0d, 0x4f, 0xa2, 0xa9, 0xff, 0x66, 0x66, 0xbd, 0x41, 0x2f, 0x86, - 0xe7, 0xa7, 0x7c, 0xc9, 0xb4, 0xfa, 0x39, 0x85, 0xf3, 0xaf, 0x35, 0x66, 0x24, 0xab, 0x44, 0x70, - 0x05, 0x4e, 0xdd, 0xb2, 0x57, 0x84, 0x0c, 0x61, 0x19, 0xea, 0xa0, 0xe1, 0x2f, 0x3b, 0x71, 0xae, - 0x5a, 0x57, 0xfa, 0x4e, 0x6b, 0x8b, 0x98, 0xf9, 0x3e, 0x6c, 0xfd, 0x7f, 0xc7, 0xbc, 0x81, 0xb6, - 0xd8, 0xa5, 0xf5, 0x55, 0xfb, 0x59, 0xd1, 0x1a, 0xf2, 0x53, 0x6e, 0xcf, 0x5d, 0xca, 0x6c, 0x6e, - 0xa0, 0x3c, 0x7f, 0xc9, 0xae, 0x3c, 0x8d, 0xe7, 0x28, 0x7b, 0x5f, 0xba, 0x59, 0x9b, 0xdf, 0x0e, - 0x5d, 0xc5, 0x34, 0xb8, 0x31, 0xe5, 0x34, 0x82, 0x18, 0xb8, 0x76, 0x03, 0xaa, 0x58, 0xe8, 0xa6, - 0x0a, 0xe4, 0x8d, 0x06, 0x28, 0x97, 0x09, 0x97, 0xf1, 0x9a, 0xa4, 0x4a, 0xcb, 0x34, 0xd4, 0xa9, - 0x04, 0x77, 0x4b, 0x32, 0x0d, 0x7b, 0x9f, 0xbf, 0xbe, 0x2c, 0xae, 0x3a, 0xcb, 0xf9, 0xcb, 0x26, - 0x9d, 0xd0, 0x14, 0xd9, 0xe9, 0xac, 0x77, 0xbb, 0x57, 0x8f, 0xec, 0x74, 0x92, 0xdc, 0xcd, 0xd7, - 0xad, 0xb2, 0x5d, 0x22, 0x53, 0xbe, 0x80, 0xa6, 0xed, 0x37, 0x45, 0x6b, 0xac, 0x27, 0x31, 0xfb, - 0xd6, 0xe0, 0xbe, 0xce, 0xff, 0xd6, 0xf2, 0xe2, 0x2f, 0x76, 0xe7, 0xe9, 0xbc, 0xfa, 0x23, 0xe9, - 0xf8, 0xce, 0xdd, 0xdf, 0x4e, 0xa7, 0xd6, 0x52, 0xe7, 0x56, 0x8d, 0xbc, 0x05, 0x34, 0x5d, 0x5e, - 0x3c, 0xd8, 0x47, 0x43, 0x9f, 0xf6, 0x11, 0x19, 0xd8, 0xdf, 0x7d, 0x33, 0x1e, 0xf6, 0x3e, 0x96, - 0x8a, 0xeb, 0xe8, 0xf6, 0x6b, 0x74, 0x78, 0x8c, 0x0b, 0x47, 0xc7, 0xb8, 0x70, 0x72, 0x8c, 0xd1, - 0xd3, 0x0c, 0xa3, 0xb7, 0x19, 0x46, 0x1f, 0x32, 0x8c, 0x0e, 0x33, 0x8c, 0xbe, 0x64, 0x18, 0x7d, - 0xcb, 0x70, 0xe1, 0x24, 0xc3, 0xe8, 0x45, 0x13, 0x17, 0x0e, 0x9a, 0x18, 0x1d, 0x36, 0x71, 0xe1, - 0xa8, 0x89, 0x0b, 0x0f, 0x1e, 0x46, 0x22, 0xd9, 0x8c, 0xbc, 0x86, 0xa8, 0x9b, 0x63, 0xbc, 0xb4, - 0x67, 0xae, 0xb8, 0x89, 0x14, 0x0d, 0x56, 0x05, 0xe9, 0x9e, 0xc2, 0x24, 0x09, 0x22, 0x41, 0x60, - 0x5b, 0xe7, 0x23, 0xe5, 0xa7, 0xf3, 0x28, 0x18, 0x31, 0x93, 0x66, 0xf6, 0x47, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x1f, 0x07, 0xc2, 0x4c, 0x54, 0x06, 0x00, 0x00, + // 658 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0x4d, 0x4f, 0x14, 0x4b, + 0x14, 0x9d, 0x1a, 0xde, 0x23, 0x8f, 0x26, 0x4f, 0x93, 0x36, 0x26, 0xe3, 0x40, 0xca, 0xc9, 0xac, + 0x08, 0xb1, 0xbb, 0x12, 0x3e, 0x36, 0x44, 0x16, 0x28, 0x21, 0x21, 0x44, 0x25, 0xb3, 0x74, 0xe1, + 0xa4, 0xba, 0xfb, 0x4e, 0x53, 0x32, 0x5d, 0xd5, 0x56, 0x55, 0x0f, 0x18, 0x42, 0x62, 0xf8, 0x05, + 0x26, 0x6e, 0xfc, 0x07, 0xba, 0xd5, 0x2d, 0x1b, 0x36, 0x46, 0x56, 0x86, 0xe8, 0x86, 0xa5, 0xf4, + 0xb8, 0x70, 0xc9, 0x4f, 0x30, 0x53, 0xdd, 0xcc, 0x07, 0x90, 0x38, 0x68, 0x74, 0x57, 0x5d, 0xe7, + 0x9e, 0x53, 0xf7, 0x9c, 0xae, 0xba, 0xd6, 0x4a, 0x0b, 0x94, 0xcb, 0x04, 0x51, 0xfe, 0x06, 0x44, + 0x94, 0xb4, 0x18, 0x6c, 0x29, 0xa2, 0x41, 0x4a, 0xda, 0x10, 0x32, 0xaa, 0xc7, 0x54, 0xd2, 0x08, + 0x34, 0x48, 0x45, 0xe2, 0xc4, 0x6b, 0x32, 0xbf, 0xee, 0x27, 0x4a, 0x8b, 0xa8, 0x4e, 0x7d, 0xcd, + 0x04, 0xa7, 0x31, 0x73, 0x63, 0x29, 0xb4, 0xb0, 0xa7, 0x32, 0x1d, 0x37, 0xd3, 0x71, 0x8d, 0x8e, + 0x7b, 0x99, 0x4e, 0xd9, 0x09, 0x99, 0xde, 0x48, 0x3c, 0xd7, 0x17, 0x11, 0x09, 0x45, 0x28, 0x88, + 0x11, 0xf0, 0x92, 0x86, 0xf9, 0x32, 0x1f, 0x66, 0x95, 0x09, 0x97, 0x27, 0x43, 0x21, 0xc2, 0x26, + 0x10, 0x1a, 0x33, 0x42, 0x39, 0x17, 0x9a, 0x76, 0x0e, 0x56, 0x39, 0x3a, 0x31, 0xd8, 0xbe, 0x88, + 0xfb, 0xc1, 0x5b, 0x83, 0xa0, 0x7e, 0x1e, 0xc3, 0x19, 0x34, 0x79, 0xce, 0x36, 0x6d, 0xb2, 0x80, + 0x6a, 0xc8, 0xd1, 0xea, 0x39, 0x14, 0x14, 0xf0, 0xd6, 0x39, 0xf1, 0xca, 0xc5, 0xe0, 0xea, 0x83, + 0x15, 0xf3, 0x43, 0x47, 0x2b, 0xbc, 0xa7, 0xe0, 0xeb, 0x9c, 0x36, 0x37, 0x34, 0xad, 0xdf, 0xd0, + 0xed, 0x4b, 0x59, 0xbd, 0x82, 0xea, 0x3b, 0x64, 0x59, 0xb5, 0x84, 0xd7, 0xe0, 0x59, 0x02, 0x4a, + 0xdb, 0x93, 0xd6, 0x18, 0xa7, 0x11, 0xa8, 0x98, 0xfa, 0x50, 0x42, 0x15, 0x34, 0x35, 0x56, 0xeb, + 0x6d, 0xd8, 0x13, 0xd6, 0x98, 0x31, 0xb4, 0xc9, 0x78, 0x50, 0x2a, 0x1a, 0xf4, 0xbf, 0xce, 0xc6, + 0x1a, 0xe3, 0x41, 0x17, 0xec, 0x94, 0x97, 0x46, 0x7a, 0xe0, 0x43, 0x1a, 0x81, 0xbd, 0x66, 0x8d, + 0x66, 0x57, 0xa3, 0xf4, 0x4f, 0x05, 0x4d, 0x5d, 0x9b, 0x99, 0x75, 0x87, 0xbd, 0x18, 0x6e, 0x2d, + 0xe1, 0x4b, 0x86, 0x5a, 0xcb, 0x25, 0xaa, 0xff, 0x5b, 0xe3, 0xa6, 0x65, 0x15, 0x0b, 0xae, 0xa0, + 0xda, 0xb4, 0xec, 0x15, 0x21, 0x7d, 0x58, 0x86, 0x26, 0x68, 0xf8, 0xc3, 0x4e, 0xaa, 0x37, 0xad, + 0x1b, 0x03, 0xa7, 0x65, 0x4d, 0xcc, 0x7c, 0xf8, 0xd7, 0xba, 0x7e, 0xdf, 0xbc, 0x81, 0xac, 0xd9, + 0xa5, 0xf5, 0x55, 0xfb, 0x4d, 0xd1, 0x1a, 0xa9, 0x25, 0xdc, 0x9e, 0xbb, 0x92, 0xd9, 0xdc, 0x40, + 0x79, 0xfe, 0x8a, 0xac, 0x3c, 0x8d, 0xf7, 0x28, 0xfd, 0x58, 0xaa, 0x37, 0xe6, 0xb7, 0x7d, 0x47, + 0x31, 0x0d, 0x4e, 0x44, 0x39, 0x0d, 0x21, 0x02, 0xae, 0x1d, 0x8f, 0x2a, 0xe6, 0x3b, 0x89, 0x02, + 0x79, 0xa7, 0x72, 0x69, 0x81, 0xd2, 0x94, 0x07, 0x54, 0x06, 0x59, 0x4d, 0x0b, 0x94, 0xc3, 0x84, + 0xc3, 0x78, 0x43, 0x52, 0xa5, 0x65, 0xe2, 0xeb, 0x44, 0x82, 0xb3, 0x25, 0x99, 0x86, 0xbd, 0x2f, + 0xdf, 0x5e, 0x15, 0x57, 0xab, 0xcb, 0xf9, 0xeb, 0x27, 0xdd, 0x60, 0x15, 0xd9, 0xe9, 0xae, 0x77, + 0x7b, 0xd7, 0x93, 0xec, 0x74, 0xd3, 0xde, 0xcd, 0xd7, 0x9d, 0xb2, 0x5d, 0x22, 0x13, 0xbe, 0x80, + 0xa6, 0xed, 0xc3, 0xa2, 0x35, 0xde, 0x97, 0xaa, 0x7d, 0x77, 0x78, 0xef, 0x17, 0x7f, 0x7d, 0x79, + 0xf1, 0x17, 0xd9, 0x79, 0x82, 0xfb, 0x7f, 0x2d, 0xc1, 0x5a, 0xf5, 0xc1, 0x6f, 0x27, 0xd8, 0xe8, + 0x38, 0x70, 0x02, 0x63, 0x61, 0x01, 0x4d, 0x97, 0x17, 0x0f, 0xf6, 0xd1, 0xc8, 0xe7, 0x7d, 0x44, + 0x86, 0xce, 0xe0, 0x91, 0x19, 0x33, 0x7b, 0x9f, 0x4a, 0xc5, 0x75, 0x74, 0xef, 0x35, 0x3a, 0x3a, + 0xc1, 0x85, 0xe3, 0x13, 0x5c, 0x38, 0x3d, 0xc1, 0xe8, 0x45, 0x8a, 0xd1, 0xdb, 0x14, 0xa3, 0xc3, + 0x14, 0xa3, 0xa3, 0x14, 0xa3, 0xaf, 0x29, 0x46, 0xdf, 0x53, 0x5c, 0x38, 0x4d, 0x31, 0x7a, 0xd9, + 0xc6, 0x85, 0x83, 0x36, 0x46, 0x47, 0x6d, 0x5c, 0x38, 0x6e, 0xe3, 0xc2, 0xe3, 0x27, 0xa1, 0x88, + 0x37, 0x43, 0xb7, 0x25, 0x9a, 0xe6, 0x18, 0x37, 0xe9, 0x9b, 0x4f, 0x4e, 0x2c, 0x45, 0x8b, 0x05, + 0x20, 0x9d, 0x33, 0x98, 0xc4, 0x5e, 0x28, 0x08, 0x6c, 0xeb, 0x7c, 0x34, 0xfd, 0x74, 0xae, 0x79, + 0xa3, 0x66, 0x62, 0xcd, 0xfe, 0x08, 0x00, 0x00, 0xff, 0xff, 0xc6, 0xe2, 0xfe, 0xae, 0x9c, 0x06, + 0x00, 0x00, } func (this *RunRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/terraform_parameters/public_customapi.pb.go b/pbgo/extschema/schema/views/terraform_parameters/public_customapi.pb.go index e156e07df..69e8eefc2 100644 --- a/pbgo/extschema/schema/views/terraform_parameters/public_customapi.pb.go +++ b/pbgo/extschema/schema/views/terraform_parameters/public_customapi.pb.go @@ -238,48 +238,49 @@ func init() { } var fileDescriptor_7c13d7ef60096627 = []byte{ - // 647 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xbf, 0x4f, 0x14, 0x41, - 0x14, 0xbe, 0xb9, 0x33, 0xc4, 0x5b, 0x1a, 0x5d, 0x2d, 0xce, 0x83, 0x8c, 0xe4, 0x2a, 0x0a, 0x77, - 0x27, 0x41, 0x30, 0x26, 0x86, 0x18, 0xb1, 0xb8, 0x18, 0xa2, 0x92, 0x83, 0xca, 0x42, 0x32, 0xbb, - 0xf7, 0x6e, 0x19, 0xb9, 0xdd, 0x19, 0x67, 0x66, 0x4f, 0x90, 0x5c, 0x62, 0xe8, 0x4d, 0x4c, 0x6c, - 0xe8, 0xb4, 0xf4, 0x4f, 0x30, 0xa1, 0xa1, 0x93, 0xca, 0x10, 0x6d, 0x28, 0x65, 0xcf, 0xc2, 0x92, - 0x7f, 0xc0, 0xc4, 0x30, 0xbb, 0x2c, 0x1c, 0x5e, 0xe2, 0x61, 0xe8, 0x66, 0xe6, 0x7b, 0xef, 0x7b, - 0xbf, 0xbe, 0x79, 0xd6, 0xfd, 0x0e, 0x28, 0x97, 0x71, 0xa2, 0xfc, 0x15, 0x08, 0x29, 0xe9, 0x30, - 0x78, 0xa5, 0x88, 0x06, 0x29, 0x69, 0x8b, 0xcb, 0x70, 0x59, 0x50, 0x49, 0x43, 0xd0, 0x20, 0x15, - 0x11, 0xb1, 0xd7, 0x66, 0xfe, 0xb2, 0x1f, 0x2b, 0xcd, 0x43, 0x2a, 0x98, 0x2b, 0x24, 0xd7, 0xdc, - 0x9e, 0x4c, 0x09, 0xdc, 0x94, 0xc0, 0x35, 0x04, 0xee, 0x20, 0x82, 0xaa, 0x13, 0x30, 0xbd, 0x12, - 0x7b, 0xae, 0xcf, 0x43, 0x12, 0xf0, 0x80, 0x13, 0x43, 0xe0, 0xc5, 0x2d, 0x73, 0x33, 0x17, 0x73, - 0x4a, 0x89, 0xab, 0xe3, 0x01, 0xe7, 0x41, 0x1b, 0x08, 0x15, 0x8c, 0xd0, 0x28, 0xe2, 0x9a, 0x6a, - 0xc6, 0x23, 0x95, 0xa1, 0x63, 0xfd, 0x79, 0x73, 0x71, 0x1a, 0xbc, 0xd1, 0x0f, 0xea, 0x75, 0x01, - 0xc7, 0xd0, 0xf8, 0x99, 0x7a, 0x69, 0x9b, 0x35, 0xa9, 0x86, 0x0c, 0xad, 0x9d, 0x41, 0x41, 0x41, - 0xd4, 0x39, 0x43, 0x3e, 0xf1, 0x77, 0xc7, 0x96, 0xfb, 0x2d, 0x66, 0x86, 0xee, 0x29, 0xf7, 0x5e, - 0x80, 0xaf, 0x33, 0xb7, 0xe9, 0xa1, 0xdd, 0x4e, 0x17, 0x74, 0x73, 0xa0, 0xd7, 0x89, 0x41, 0xad, - 0x69, 0x59, 0x75, 0xd0, 0x0d, 0x78, 0x19, 0x83, 0xd2, 0xf6, 0xb8, 0x55, 0x8e, 0x68, 0x08, 0x4a, - 0x50, 0x1f, 0x2a, 0x68, 0x02, 0x4d, 0x96, 0x1b, 0x27, 0x0f, 0xf6, 0x98, 0x55, 0x36, 0xf5, 0xac, - 0xb2, 0xa8, 0x59, 0x29, 0x1a, 0xf4, 0xf2, 0xd1, 0xc3, 0x3c, 0x8b, 0x9a, 0x39, 0x78, 0x64, 0x5e, - 0x29, 0x9d, 0x80, 0x4f, 0x68, 0x08, 0xb5, 0xd7, 0xd6, 0xa8, 0x89, 0xa2, 0x04, 0x8f, 0x14, 0xd8, - 0xab, 0xd6, 0xf5, 0x41, 0x99, 0x9b, 0x88, 0xa3, 0x53, 0x77, 0xdd, 0x61, 0x45, 0xe3, 0xd6, 0xdb, - 0xdc, 0xa3, 0xed, 0x45, 0x01, 0xfe, 0xd2, 0xba, 0x80, 0xc6, 0xb5, 0xdc, 0x68, 0x21, 0xb7, 0xa9, - 0xad, 0x58, 0x57, 0xeb, 0xa0, 0x17, 0x35, 0xd5, 0xb1, 0xca, 0x33, 0x58, 0xb4, 0x46, 0x94, 0x79, - 0xc9, 0x62, 0xde, 0x19, 0x3e, 0x66, 0xca, 0xf4, 0xd4, 0xcc, 0x66, 0xae, 0xb4, 0xd3, 0x45, 0x8d, - 0x8c, 0x6a, 0xea, 0xf7, 0x25, 0xab, 0xfc, 0xd0, 0x7c, 0x80, 0x07, 0x0b, 0x8f, 0xec, 0xb7, 0x45, - 0xab, 0x54, 0x07, 0x6d, 0x4f, 0x9f, 0xa3, 0x9c, 0x7c, 0x12, 0xd5, 0x99, 0x73, 0x7a, 0xa5, 0x75, - 0xd5, 0xb6, 0xd0, 0xee, 0xe7, 0x22, 0x4a, 0xbe, 0x54, 0x66, 0x5b, 0x33, 0x6b, 0xbe, 0xa3, 0x98, - 0x06, 0x27, 0xa4, 0x11, 0x0d, 0x20, 0x84, 0x48, 0x3b, 0x1e, 0x55, 0xcc, 0x77, 0x42, 0x1e, 0x31, - 0xcd, 0xe5, 0xad, 0x0e, 0x28, 0x87, 0x71, 0x87, 0x45, 0x2d, 0x49, 0x95, 0x96, 0xb1, 0xaf, 0x63, - 0x09, 0x8e, 0x04, 0xda, 0xdc, 0xfc, 0xfe, 0xf3, 0x7d, 0xf1, 0xb1, 0x3d, 0x9f, 0x7d, 0x6b, 0x92, - 0x6b, 0x40, 0x91, 0x8d, 0xfc, 0xdc, 0x1d, 0x2c, 0xbf, 0x8d, 0x5c, 0x23, 0xdd, 0xec, 0x7c, 0xe4, - 0xd1, 0xb5, 0x3f, 0x16, 0xad, 0x72, 0x3e, 0x88, 0xff, 0xec, 0xca, 0xbd, 0x73, 0x79, 0xf5, 0xcf, - 0xbc, 0xf6, 0xe1, 0x02, 0x7b, 0xb3, 0x64, 0x37, 0x2e, 0xb0, 0x37, 0x24, 0x15, 0x50, 0x75, 0x76, - 0x67, 0x1b, 0x95, 0xbe, 0x6d, 0x23, 0x32, 0x74, 0x95, 0xa9, 0x0c, 0x37, 0xbf, 0x56, 0x8a, 0x57, - 0xd0, 0xdc, 0x16, 0xda, 0x3b, 0xc0, 0x85, 0xfd, 0x03, 0x5c, 0x38, 0x3c, 0xc0, 0xe8, 0x4d, 0x82, - 0xd1, 0xa7, 0x04, 0xa3, 0xdd, 0x04, 0xa3, 0xbd, 0x04, 0xa3, 0x1f, 0x09, 0x46, 0xbf, 0x12, 0x5c, - 0x38, 0x4c, 0x30, 0x7a, 0xd7, 0xc3, 0x85, 0x9d, 0x1e, 0x46, 0x7b, 0x3d, 0x5c, 0xd8, 0xef, 0xe1, - 0xc2, 0xb3, 0xe7, 0x01, 0x17, 0xab, 0x81, 0xdb, 0xe1, 0x6d, 0x13, 0xc6, 0x8d, 0x4f, 0xed, 0x16, - 0x47, 0x48, 0xde, 0x61, 0x4d, 0x90, 0xce, 0x31, 0x4c, 0x84, 0x17, 0x70, 0x02, 0x6b, 0x3a, 0x5b, - 0x2b, 0xff, 0xdc, 0x49, 0xde, 0x88, 0xd9, 0x36, 0xb7, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0x07, - 0xc7, 0xd1, 0x6f, 0x51, 0x06, 0x00, 0x00, + // 663 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0xc1, 0x6a, 0x14, 0x4b, + 0x14, 0x9d, 0x9a, 0xe1, 0x85, 0x37, 0x9d, 0xcd, 0x7b, 0xfd, 0xde, 0x62, 0x9c, 0x84, 0x32, 0xcc, + 0x2a, 0x0b, 0xbb, 0x0b, 0x62, 0x22, 0x82, 0x88, 0x18, 0x17, 0x83, 0x04, 0x35, 0x4c, 0xb2, 0x72, + 0x61, 0xa8, 0xee, 0xbe, 0xd3, 0x29, 0x33, 0xdd, 0x55, 0x56, 0x55, 0x8f, 0x89, 0x61, 0x40, 0xf2, + 0x05, 0x82, 0x1b, 0x3f, 0xc1, 0x0f, 0x70, 0x21, 0x64, 0x61, 0x56, 0x26, 0x20, 0x48, 0xd0, 0x4d, + 0x96, 0xa6, 0xc7, 0x85, 0xcb, 0x7c, 0x82, 0xa4, 0xba, 0xd3, 0xc9, 0xc4, 0x01, 0x27, 0x22, 0xee, + 0xaa, 0xea, 0x9c, 0x7b, 0x6e, 0xdd, 0x5b, 0xa7, 0xae, 0x75, 0xab, 0x0b, 0xca, 0x65, 0x9c, 0x28, + 0x7f, 0x15, 0x22, 0x4a, 0xba, 0x0c, 0x9e, 0x2a, 0xa2, 0x41, 0x4a, 0xda, 0xe6, 0x32, 0x5a, 0x11, + 0x54, 0xd2, 0x08, 0x34, 0x48, 0x45, 0x44, 0xe2, 0x75, 0x98, 0xbf, 0xe2, 0x27, 0x4a, 0xf3, 0x88, + 0x0a, 0xe6, 0x0a, 0xc9, 0x35, 0xb7, 0xa7, 0x33, 0x01, 0x37, 0x13, 0x70, 0x8d, 0x80, 0x3b, 0x4c, + 0xa0, 0xee, 0x84, 0x4c, 0xaf, 0x26, 0x9e, 0xeb, 0xf3, 0x88, 0x84, 0x3c, 0xe4, 0xc4, 0x08, 0x78, + 0x49, 0xdb, 0xec, 0xcc, 0xc6, 0xac, 0x32, 0xe1, 0xfa, 0x64, 0xc8, 0x79, 0xd8, 0x01, 0x42, 0x05, + 0x23, 0x34, 0x8e, 0xb9, 0xa6, 0x9a, 0xf1, 0x58, 0xe5, 0xe8, 0xc4, 0xe0, 0xbd, 0xb9, 0x38, 0x0b, + 0x5e, 0x1a, 0x04, 0xf5, 0x86, 0x80, 0x13, 0x68, 0xf2, 0x5c, 0xbd, 0xb4, 0xc3, 0x02, 0xaa, 0x21, + 0x47, 0x1b, 0xe7, 0x50, 0x50, 0x10, 0x77, 0xcf, 0x89, 0x4f, 0xfd, 0xd8, 0xb1, 0x95, 0x41, 0xc6, + 0xdc, 0xc8, 0x3d, 0xe5, 0xde, 0x63, 0xf0, 0x75, 0x1e, 0x36, 0x3b, 0x72, 0xd8, 0xd9, 0x82, 0x2e, + 0x0f, 0x8d, 0x3a, 0x25, 0x34, 0x02, 0xcb, 0x6a, 0x82, 0x6e, 0xc1, 0x93, 0x04, 0x94, 0xb6, 0x27, + 0xad, 0x6a, 0x4c, 0x23, 0x50, 0x82, 0xfa, 0x50, 0x43, 0x53, 0x68, 0xba, 0xda, 0x3a, 0x3d, 0xb0, + 0x27, 0xac, 0xaa, 0xa9, 0x67, 0x8d, 0xc5, 0x41, 0xad, 0x6c, 0xd0, 0xbf, 0x8f, 0x0f, 0x16, 0x58, + 0x1c, 0x14, 0xe0, 0x31, 0xbd, 0x56, 0x39, 0x05, 0xef, 0xd3, 0x08, 0x1a, 0xcf, 0xac, 0x71, 0x93, + 0x45, 0x09, 0x1e, 0x2b, 0xb0, 0xd7, 0xac, 0xff, 0x87, 0xdd, 0xdc, 0x64, 0x1c, 0x9f, 0xb9, 0xee, + 0x8e, 0x6a, 0x1a, 0xb7, 0xd9, 0xe1, 0x1e, 0xed, 0x2c, 0x09, 0xf0, 0x97, 0x37, 0x04, 0xb4, 0xfe, + 0x2b, 0x48, 0x8b, 0x05, 0xa7, 0xb1, 0x6a, 0xfd, 0xdb, 0x04, 0xbd, 0xa4, 0xa9, 0x4e, 0x54, 0x71, + 0x83, 0x25, 0x6b, 0x4c, 0x99, 0x93, 0x3c, 0xe7, 0xb5, 0xd1, 0x73, 0x66, 0x4a, 0x0f, 0xcc, 0xdb, + 0xcc, 0x57, 0x76, 0x7a, 0xa8, 0x95, 0x4b, 0xcd, 0x7c, 0xf8, 0xcb, 0xaa, 0xde, 0x31, 0x1f, 0xe0, + 0xf6, 0xe2, 0x5d, 0xfb, 0x4d, 0xd9, 0xaa, 0x34, 0x41, 0xdb, 0xb3, 0x17, 0x28, 0xa7, 0x78, 0x89, + 0xfa, 0xdc, 0x05, 0xa3, 0xb2, 0xba, 0x1a, 0xef, 0xd0, 0xde, 0xdb, 0x32, 0x4a, 0x77, 0x6b, 0x41, + 0x7b, 0x6e, 0xdd, 0x77, 0x14, 0xd3, 0xe0, 0x44, 0x34, 0xa6, 0x21, 0x44, 0x10, 0x6b, 0xc7, 0xa3, + 0x8a, 0xf9, 0x4e, 0xc4, 0x63, 0xa6, 0xb9, 0xbc, 0x32, 0x35, 0x94, 0xa3, 0x34, 0x8d, 0x03, 0x2a, + 0x83, 0x82, 0xd6, 0x05, 0xe5, 0x30, 0xee, 0xb0, 0xb8, 0x2d, 0xa9, 0xd2, 0x32, 0xf1, 0x75, 0x22, + 0xc1, 0x91, 0x40, 0x83, 0xad, 0xcf, 0x5f, 0x5f, 0x96, 0xef, 0xd9, 0x0b, 0xf9, 0xef, 0x27, 0x85, + 0x55, 0x14, 0xd9, 0x2c, 0xd6, 0xbd, 0xe1, 0x2e, 0xdd, 0x2c, 0xac, 0xd4, 0xcb, 0xd7, 0xc7, 0x11, + 0x3d, 0x7b, 0xb7, 0x6c, 0x55, 0x8b, 0xf7, 0xfa, 0xc5, 0xe6, 0xdd, 0xb8, 0x50, 0xd4, 0xa0, 0x35, + 0x1a, 0xef, 0xff, 0x7c, 0x0b, 0x97, 0xed, 0xd6, 0x6f, 0x6c, 0x21, 0xc9, 0xec, 0x58, 0xbf, 0xb9, + 0xb3, 0x8d, 0x2a, 0x9f, 0xb6, 0x11, 0x19, 0xb9, 0x19, 0x99, 0xa9, 0xb7, 0x3e, 0xd6, 0xca, 0xff, + 0xa0, 0xf9, 0x57, 0x68, 0xff, 0x10, 0x97, 0x0e, 0x0e, 0x71, 0xe9, 0xe8, 0x10, 0xa3, 0xe7, 0x29, + 0x46, 0xaf, 0x53, 0x8c, 0xf6, 0x52, 0x8c, 0xf6, 0x53, 0x8c, 0xbe, 0xa4, 0x18, 0x7d, 0x4b, 0x71, + 0xe9, 0x28, 0xc5, 0xe8, 0x45, 0x1f, 0x97, 0x76, 0xfa, 0x18, 0xed, 0xf7, 0x71, 0xe9, 0xa0, 0x8f, + 0x4b, 0x0f, 0x1f, 0x85, 0x5c, 0xac, 0x85, 0x6e, 0x97, 0x77, 0x4c, 0x1a, 0x37, 0x39, 0x33, 0xa9, + 0x1c, 0x21, 0x79, 0x97, 0x05, 0x20, 0x9d, 0x13, 0x98, 0x08, 0x2f, 0xe4, 0x04, 0xd6, 0x75, 0x3e, + 0xa4, 0x7e, 0x3a, 0xe1, 0xbc, 0x31, 0x33, 0xbb, 0xae, 0x7e, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x91, + 0xfb, 0x00, 0xfc, 0x9f, 0x06, 0x00, 0x00, } func (this *GetRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/types.pb.go b/pbgo/extschema/schema/views/types.pb.go index ebd52bc33..505a9ff60 100644 --- a/pbgo/extschema/schema/views/types.pb.go +++ b/pbgo/extschema/schema/views/types.pb.go @@ -470,11 +470,11 @@ func (*SiteRegionLocator) XXX_OneofWrappers() []interface{} { // x-displayName: "Virtual Network" // Parameters to advertise on a given virtual network type WhereVirtualNetwork struct { - // Virtual Network + // Network // - // x-displayName: "Virtual Network" + // x-displayName: "Network" // x-required - // Select virtual network reference + // Select network reference VirtualNetwork *ObjectRefType `protobuf:"bytes,1,opt,name=virtual_network,json=virtualNetwork,proto3" json:"virtual_network,omitempty"` // Select VIP // @@ -690,9 +690,9 @@ func (m *WhereSegment) GetIpv6Vip() string { // x-displayName: "Site" // This defines a reference to a CE site along with network type and an optional ip address where a load balancer could be advertised type WhereSite struct { - // SiteNetwork + // Network // - // x-displayName: "Site Network" + // x-displayName: "Network" // x-required // Select network types to be used on site // By default VIP chosen as ip address of primary network interface in the network @@ -950,9 +950,9 @@ func (m *WhereCloudEdgeSegment) GetIpv6() string { // x-displayName: "Virtual Site" // This defines a reference to a customer site virtual site along with network type where a load balancer could be advertised type WhereVirtualSite struct { - // SiteNetwork + // Network // - // x-displayName: "Site Network" + // x-displayName: "Network" // x-required // Select network types to be used on site. // IP address of primary network interface in the network @@ -2869,6 +2869,253 @@ func (*OperatingSystemType) XXX_OneofWrappers() []interface{} { } } +// Node by Node Upgrade +// +// x-displayName: "Node by Node Upgrade [BETA]" +// Node by Node Upgrade during Software or OS version upgrade +type KubernetesUpgradeDrain struct { + // F5XC Enable/Disable Node by Node Upgrade + // + // x-displayName: "Node by Node Upgrade [BETA]" + // x-required + // Enable/Disable node by node upgrade during software or OS version upgrade, and configure number of worker nodes to upgrade in parallel + // + // Types that are valid to be assigned to KubernetesUpgradeDrainEnableChoice: + // *KubernetesUpgradeDrain_EnableUpgradeDrain + // *KubernetesUpgradeDrain_DisableUpgradeDrain + KubernetesUpgradeDrainEnableChoice isKubernetesUpgradeDrain_KubernetesUpgradeDrainEnableChoice `protobuf_oneof:"kubernetes_upgrade_drain_enable_choice"` +} + +func (m *KubernetesUpgradeDrain) Reset() { *m = KubernetesUpgradeDrain{} } +func (*KubernetesUpgradeDrain) ProtoMessage() {} +func (*KubernetesUpgradeDrain) Descriptor() ([]byte, []int) { + return fileDescriptor_e96f5c708a09275e, []int{31} +} +func (m *KubernetesUpgradeDrain) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *KubernetesUpgradeDrain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *KubernetesUpgradeDrain) XXX_Merge(src proto.Message) { + xxx_messageInfo_KubernetesUpgradeDrain.Merge(m, src) +} +func (m *KubernetesUpgradeDrain) XXX_Size() int { + return m.Size() +} +func (m *KubernetesUpgradeDrain) XXX_DiscardUnknown() { + xxx_messageInfo_KubernetesUpgradeDrain.DiscardUnknown(m) +} + +var xxx_messageInfo_KubernetesUpgradeDrain proto.InternalMessageInfo + +type isKubernetesUpgradeDrain_KubernetesUpgradeDrainEnableChoice interface { + isKubernetesUpgradeDrain_KubernetesUpgradeDrainEnableChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type KubernetesUpgradeDrain_EnableUpgradeDrain struct { + EnableUpgradeDrain *KubernetesUpgradeDrainConfig `protobuf:"bytes,2,opt,name=enable_upgrade_drain,json=enableUpgradeDrain,proto3,oneof" json:"enable_upgrade_drain,omitempty"` +} +type KubernetesUpgradeDrain_DisableUpgradeDrain struct { + DisableUpgradeDrain *schema.Empty `protobuf:"bytes,3,opt,name=disable_upgrade_drain,json=disableUpgradeDrain,proto3,oneof" json:"disable_upgrade_drain,omitempty"` +} + +func (*KubernetesUpgradeDrain_EnableUpgradeDrain) isKubernetesUpgradeDrain_KubernetesUpgradeDrainEnableChoice() { +} +func (*KubernetesUpgradeDrain_DisableUpgradeDrain) isKubernetesUpgradeDrain_KubernetesUpgradeDrainEnableChoice() { +} + +func (m *KubernetesUpgradeDrain) GetKubernetesUpgradeDrainEnableChoice() isKubernetesUpgradeDrain_KubernetesUpgradeDrainEnableChoice { + if m != nil { + return m.KubernetesUpgradeDrainEnableChoice + } + return nil +} + +func (m *KubernetesUpgradeDrain) GetEnableUpgradeDrain() *KubernetesUpgradeDrainConfig { + if x, ok := m.GetKubernetesUpgradeDrainEnableChoice().(*KubernetesUpgradeDrain_EnableUpgradeDrain); ok { + return x.EnableUpgradeDrain + } + return nil +} + +func (m *KubernetesUpgradeDrain) GetDisableUpgradeDrain() *schema.Empty { + if x, ok := m.GetKubernetesUpgradeDrainEnableChoice().(*KubernetesUpgradeDrain_DisableUpgradeDrain); ok { + return x.DisableUpgradeDrain + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*KubernetesUpgradeDrain) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*KubernetesUpgradeDrain_EnableUpgradeDrain)(nil), + (*KubernetesUpgradeDrain_DisableUpgradeDrain)(nil), + } +} + +// Node by Node Upgrade +// +// x-displayName: "Node by Node Upgrade Config" +// Node by Node upgrade config during Software or OS version upgrade +type KubernetesUpgradeDrainConfig struct { + // Pod Eviction Timeout + // + // x-displayName: "Pod Eviction Timeout" + // x-required + // Second to wait before skipping a pod eviction, equivalent to `skip-wait-for-delete-timeout` option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict). + DrainNodeTimeout uint32 `protobuf:"varint,1,opt,name=drain_node_timeout,json=drainNodeTimeout,proto3" json:"drain_node_timeout,omitempty"` + // Max Unavailable Worker Nodes + // + // x-displayName: "Max Unavailable Worker Nodes" + // x-required + // Max number of worker nodes to be upgraded in parallel + // + // Types that are valid to be assigned to DrainMaxUnavailableChoice: + // *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount + // *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage + DrainMaxUnavailableChoice isKubernetesUpgradeDrainConfig_DrainMaxUnavailableChoice `protobuf_oneof:"drain_max_unavailable_choice"` + // Vega Upgrade Mode Toggle + // + // x-displayName: "Vega Upgrade Mode Toggle" + // x-required + // When enabled, vega will inform RE to stop traffic to the specific node. + // + // Types that are valid to be assigned to VegaUpgradeModeToggleChoice: + // *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode + // *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode + VegaUpgradeModeToggleChoice isKubernetesUpgradeDrainConfig_VegaUpgradeModeToggleChoice `protobuf_oneof:"vega_upgrade_mode_toggle_choice"` +} + +func (m *KubernetesUpgradeDrainConfig) Reset() { *m = KubernetesUpgradeDrainConfig{} } +func (*KubernetesUpgradeDrainConfig) ProtoMessage() {} +func (*KubernetesUpgradeDrainConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_e96f5c708a09275e, []int{32} +} +func (m *KubernetesUpgradeDrainConfig) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *KubernetesUpgradeDrainConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *KubernetesUpgradeDrainConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_KubernetesUpgradeDrainConfig.Merge(m, src) +} +func (m *KubernetesUpgradeDrainConfig) XXX_Size() int { + return m.Size() +} +func (m *KubernetesUpgradeDrainConfig) XXX_DiscardUnknown() { + xxx_messageInfo_KubernetesUpgradeDrainConfig.DiscardUnknown(m) +} + +var xxx_messageInfo_KubernetesUpgradeDrainConfig proto.InternalMessageInfo + +type isKubernetesUpgradeDrainConfig_DrainMaxUnavailableChoice interface { + isKubernetesUpgradeDrainConfig_DrainMaxUnavailableChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} +type isKubernetesUpgradeDrainConfig_VegaUpgradeModeToggleChoice interface { + isKubernetesUpgradeDrainConfig_VegaUpgradeModeToggleChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount struct { + DrainMaxUnavailableNodeCount uint32 `protobuf:"varint,3,opt,name=drain_max_unavailable_node_count,json=drainMaxUnavailableNodeCount,proto3,oneof" json:"drain_max_unavailable_node_count,omitempty"` +} +type KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage struct { + DrainMaxUnavailableNodePercentage uint32 `protobuf:"varint,4,opt,name=drain_max_unavailable_node_percentage,json=drainMaxUnavailableNodePercentage,proto3,oneof" json:"drain_max_unavailable_node_percentage,omitempty"` +} +type KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode struct { + DisableVegaUpgradeMode *schema.Empty `protobuf:"bytes,6,opt,name=disable_vega_upgrade_mode,json=disableVegaUpgradeMode,proto3,oneof" json:"disable_vega_upgrade_mode,omitempty"` +} +type KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode struct { + EnableVegaUpgradeMode *schema.Empty `protobuf:"bytes,7,opt,name=enable_vega_upgrade_mode,json=enableVegaUpgradeMode,proto3,oneof" json:"enable_vega_upgrade_mode,omitempty"` +} + +func (*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) isKubernetesUpgradeDrainConfig_DrainMaxUnavailableChoice() { +} +func (*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) isKubernetesUpgradeDrainConfig_DrainMaxUnavailableChoice() { +} +func (*KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) isKubernetesUpgradeDrainConfig_VegaUpgradeModeToggleChoice() { +} +func (*KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) isKubernetesUpgradeDrainConfig_VegaUpgradeModeToggleChoice() { +} + +func (m *KubernetesUpgradeDrainConfig) GetDrainMaxUnavailableChoice() isKubernetesUpgradeDrainConfig_DrainMaxUnavailableChoice { + if m != nil { + return m.DrainMaxUnavailableChoice + } + return nil +} +func (m *KubernetesUpgradeDrainConfig) GetVegaUpgradeModeToggleChoice() isKubernetesUpgradeDrainConfig_VegaUpgradeModeToggleChoice { + if m != nil { + return m.VegaUpgradeModeToggleChoice + } + return nil +} + +func (m *KubernetesUpgradeDrainConfig) GetDrainNodeTimeout() uint32 { + if m != nil { + return m.DrainNodeTimeout + } + return 0 +} + +func (m *KubernetesUpgradeDrainConfig) GetDrainMaxUnavailableNodeCount() uint32 { + if x, ok := m.GetDrainMaxUnavailableChoice().(*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount); ok { + return x.DrainMaxUnavailableNodeCount + } + return 0 +} + +func (m *KubernetesUpgradeDrainConfig) GetDrainMaxUnavailableNodePercentage() uint32 { + if x, ok := m.GetDrainMaxUnavailableChoice().(*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage); ok { + return x.DrainMaxUnavailableNodePercentage + } + return 0 +} + +func (m *KubernetesUpgradeDrainConfig) GetDisableVegaUpgradeMode() *schema.Empty { + if x, ok := m.GetVegaUpgradeModeToggleChoice().(*KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode); ok { + return x.DisableVegaUpgradeMode + } + return nil +} + +func (m *KubernetesUpgradeDrainConfig) GetEnableVegaUpgradeMode() *schema.Empty { + if x, ok := m.GetVegaUpgradeModeToggleChoice().(*KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode); ok { + return x.EnableVegaUpgradeMode + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*KubernetesUpgradeDrainConfig) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount)(nil), + (*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage)(nil), + (*KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode)(nil), + (*KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode)(nil), + } +} + // Performance Enhancement Choice // // x-displayName: "Performance Enhancement Mode" @@ -2891,7 +3138,7 @@ type PerformanceEnhancementModeType struct { func (m *PerformanceEnhancementModeType) Reset() { *m = PerformanceEnhancementModeType{} } func (*PerformanceEnhancementModeType) ProtoMessage() {} func (*PerformanceEnhancementModeType) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{31} + return fileDescriptor_e96f5c708a09275e, []int{33} } func (m *PerformanceEnhancementModeType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2987,7 +3234,7 @@ type AcceleratedNetworkingType struct { func (m *AcceleratedNetworkingType) Reset() { *m = AcceleratedNetworkingType{} } func (*AcceleratedNetworkingType) ProtoMessage() {} func (*AcceleratedNetworkingType) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{32} + return fileDescriptor_e96f5c708a09275e, []int{34} } func (m *AcceleratedNetworkingType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3079,7 +3326,7 @@ type L3PerformanceEnhancementType struct { func (m *L3PerformanceEnhancementType) Reset() { *m = L3PerformanceEnhancementType{} } func (*L3PerformanceEnhancementType) ProtoMessage() {} func (*L3PerformanceEnhancementType) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{33} + return fileDescriptor_e96f5c708a09275e, []int{35} } func (m *L3PerformanceEnhancementType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3175,7 +3422,7 @@ type InternetVIPInfo struct { func (m *InternetVIPInfo) Reset() { *m = InternetVIPInfo{} } func (*InternetVIPInfo) ProtoMessage() {} func (*InternetVIPInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{34} + return fileDescriptor_e96f5c708a09275e, []int{36} } func (m *InternetVIPInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3261,7 +3508,7 @@ type InternetVIPStatus struct { func (m *InternetVIPStatus) Reset() { *m = InternetVIPStatus{} } func (*InternetVIPStatus) ProtoMessage() {} func (*InternetVIPStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{35} + return fileDescriptor_e96f5c708a09275e, []int{37} } func (m *InternetVIPStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3364,7 +3611,7 @@ type InternetVIPTargetGroupStatusType struct { func (m *InternetVIPTargetGroupStatusType) Reset() { *m = InternetVIPTargetGroupStatusType{} } func (*InternetVIPTargetGroupStatusType) ProtoMessage() {} func (*InternetVIPTargetGroupStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{36} + return fileDescriptor_e96f5c708a09275e, []int{38} } func (m *InternetVIPTargetGroupStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3462,7 +3709,7 @@ type InternetVIPListenerStatusType struct { func (m *InternetVIPListenerStatusType) Reset() { *m = InternetVIPListenerStatusType{} } func (*InternetVIPListenerStatusType) ProtoMessage() {} func (*InternetVIPListenerStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{37} + return fileDescriptor_e96f5c708a09275e, []int{39} } func (m *InternetVIPListenerStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3546,7 +3793,7 @@ type MasterNode struct { func (m *MasterNode) Reset() { *m = MasterNode{} } func (*MasterNode) ProtoMessage() {} func (*MasterNode) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{38} + return fileDescriptor_e96f5c708a09275e, []int{40} } func (m *MasterNode) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3610,7 +3857,7 @@ type ApiOperation struct { func (m *ApiOperation) Reset() { *m = ApiOperation{} } func (*ApiOperation) ProtoMessage() {} func (*ApiOperation) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{39} + return fileDescriptor_e96f5c708a09275e, []int{41} } func (m *ApiOperation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3672,7 +3919,7 @@ type ApiEndpointWithSchema struct { func (m *ApiEndpointWithSchema) Reset() { *m = ApiEndpointWithSchema{} } func (*ApiEndpointWithSchema) ProtoMessage() {} func (*ApiEndpointWithSchema) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{40} + return fileDescriptor_e96f5c708a09275e, []int{42} } func (m *ApiEndpointWithSchema) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3745,7 +3992,7 @@ type CustomDNS struct { func (m *CustomDNS) Reset() { *m = CustomDNS{} } func (*CustomDNS) ProtoMessage() {} func (*CustomDNS) Descriptor() ([]byte, []int) { - return fileDescriptor_e96f5c708a09275e, []int{41} + return fileDescriptor_e96f5c708a09275e, []int{43} } func (m *CustomDNS) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3865,6 +4112,10 @@ func init() { golang_proto.RegisterType((*VolterraSoftwareType)(nil), "ves.io.schema.views.VolterraSoftwareType") proto.RegisterType((*OperatingSystemType)(nil), "ves.io.schema.views.OperatingSystemType") golang_proto.RegisterType((*OperatingSystemType)(nil), "ves.io.schema.views.OperatingSystemType") + proto.RegisterType((*KubernetesUpgradeDrain)(nil), "ves.io.schema.views.KubernetesUpgradeDrain") + golang_proto.RegisterType((*KubernetesUpgradeDrain)(nil), "ves.io.schema.views.KubernetesUpgradeDrain") + proto.RegisterType((*KubernetesUpgradeDrainConfig)(nil), "ves.io.schema.views.KubernetesUpgradeDrainConfig") + golang_proto.RegisterType((*KubernetesUpgradeDrainConfig)(nil), "ves.io.schema.views.KubernetesUpgradeDrainConfig") proto.RegisterType((*PerformanceEnhancementModeType)(nil), "ves.io.schema.views.PerformanceEnhancementModeType") golang_proto.RegisterType((*PerformanceEnhancementModeType)(nil), "ves.io.schema.views.PerformanceEnhancementModeType") proto.RegisterType((*AcceleratedNetworkingType)(nil), "ves.io.schema.views.AcceleratedNetworkingType") @@ -3895,285 +4146,309 @@ func init() { } var fileDescriptor_e96f5c708a09275e = []byte{ - // 4447 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x7b, 0x5d, 0x6c, 0x1c, 0xe7, - 0x5a, 0xbf, 0xdf, 0xd9, 0xd9, 0xaf, 0x67, 0xd7, 0xde, 0xf5, 0xd8, 0x49, 0x1c, 0x9f, 0x64, 0xb3, - 0xd9, 0xf6, 0xb4, 0x8e, 0xbb, 0xb1, 0xe3, 0xf5, 0x47, 0x7d, 0xdc, 0xfe, 0xf3, 0x8f, 0xd7, 0x71, - 0x6a, 0xbb, 0x8e, 0x63, 0x66, 0x5d, 0xe7, 0x00, 0x47, 0x4c, 0xc7, 0xbb, 0xef, 0xae, 0xa7, 0xd9, - 0x9d, 0x59, 0xcd, 0xcc, 0xda, 0x09, 0x60, 0xc9, 0xe2, 0x02, 0x50, 0xe0, 0xa2, 0x8d, 0x10, 0x88, - 0x23, 0x10, 0x08, 0x24, 0x3e, 0x2c, 0x81, 0x10, 0x82, 0x9b, 0xae, 0x85, 0x42, 0x55, 0x44, 0x15, - 0x84, 0x14, 0x71, 0xb8, 0xa8, 0x10, 0x12, 0xad, 0x2b, 0xc1, 0xa1, 0x17, 0xa8, 0xca, 0x05, 0xaa, - 0xb8, 0x39, 0xe8, 0xfd, 0x98, 0xd9, 0xd9, 0xf5, 0x7a, 0x6d, 0xb7, 0x0d, 0xbd, 0x49, 0x76, 0x66, - 0x9e, 0xcf, 0xdf, 0xf3, 0xbc, 0xcf, 0xfb, 0xbc, 0x1f, 0x86, 0x4b, 0x5b, 0xd8, 0x1a, 0xd1, 0x8c, - 0x51, 0x2b, 0xbf, 0x89, 0x2b, 0xea, 0xe8, 0x96, 0x86, 0xb7, 0xad, 0x51, 0xfb, 0x41, 0x15, 0x5b, - 0x23, 0x55, 0xd3, 0xb0, 0x0d, 0xa9, 0x8f, 0x11, 0x8c, 0x30, 0x82, 0x11, 0x4a, 0x30, 0x78, 0xb5, - 0xa4, 0xd9, 0x9b, 0xb5, 0x8d, 0x91, 0xbc, 0x51, 0x19, 0x2d, 0x19, 0x25, 0x63, 0x94, 0xd2, 0x6e, - 0xd4, 0x8a, 0xf4, 0x89, 0x3e, 0xd0, 0x5f, 0x4c, 0xc6, 0xe0, 0x77, 0x9a, 0x95, 0x18, 0x55, 0x5b, - 0x33, 0x74, 0xae, 0x60, 0xf0, 0x7c, 0xf3, 0x47, 0x8f, 0xee, 0xc1, 0x0b, 0x2d, 0xc6, 0xa9, 0x65, - 0xad, 0xa0, 0xda, 0x98, 0x7f, 0x4d, 0x1e, 0x36, 0x5d, 0x69, 0x12, 0x9d, 0x7a, 0x84, 0xa0, 0xfb, - 0xce, 0xc6, 0x3b, 0x38, 0x6f, 0xcb, 0xb8, 0xb8, 0xf6, 0xa0, 0x8a, 0xa5, 0x21, 0x08, 0xd8, 0x58, - 0x57, 0x75, 0x7b, 0x00, 0x25, 0xd1, 0x50, 0x38, 0x1b, 0x7f, 0xba, 0x83, 0xbe, 0xac, 0xa3, 0xae, - 0xf7, 0xff, 0xf3, 0xb1, 0x4f, 0x34, 0x85, 0xa1, 0x1b, 0x32, 0xff, 0x2e, 0x8d, 0x40, 0x58, 0x57, - 0x2b, 0xd8, 0xaa, 0xaa, 0x79, 0x3c, 0x20, 0x1c, 0x41, 0xdc, 0x20, 0x91, 0x5e, 0x06, 0x91, 0x3c, - 0x0c, 0xf8, 0x28, 0x69, 0x9f, 0x87, 0x34, 0x68, 0xfa, 0x93, 0x68, 0x68, 0x17, 0xc9, 0x94, 0x20, - 0xa5, 0x40, 0x64, 0x59, 0xd3, 0xef, 0x39, 0x16, 0xbd, 0x0c, 0xe2, 0xa6, 0x89, 0x8b, 0xdc, 0x9e, - 0x3e, 0xc2, 0xe0, 0x37, 0x7d, 0x03, 0xbb, 0x22, 0xd7, 0x12, 0x47, 0x32, 0x25, 0x70, 0x15, 0x08, - 0x2d, 0x84, 0x82, 0x87, 0x90, 0x2a, 0xf8, 0x11, 0x82, 0x48, 0x4e, 0xb3, 0xf1, 0xb2, 0x91, 0x57, - 0x6d, 0xc3, 0x94, 0x16, 0x41, 0xb4, 0x34, 0x1b, 0x53, 0x0d, 0x91, 0x4c, 0x6a, 0xa4, 0x4d, 0x40, - 0x47, 0x9a, 0x50, 0xca, 0xc6, 0xf6, 0x76, 0x28, 0xcb, 0xee, 0x3e, 0x42, 0x1f, 0xed, 0x23, 0xb4, - 0xd0, 0x25, 0xd3, 0x67, 0xe9, 0xfb, 0x10, 0xdd, 0xd2, 0x4c, 0xbb, 0xa6, 0x96, 0x15, 0x2a, 0x52, - 0x38, 0x8d, 0xc8, 0x26, 0xd6, 0x85, 0x2e, 0x39, 0xc2, 0x9f, 0x89, 0xad, 0xd9, 0xf3, 0x10, 0xc8, - 0x6f, 0x1a, 0x5a, 0x1e, 0x4b, 0xb1, 0xc7, 0x75, 0x84, 0x9e, 0xd6, 0x91, 0xef, 0xa0, 0x8e, 0x7c, - 0x63, 0xe9, 0xcc, 0x92, 0x18, 0xf2, 0xc5, 0xc5, 0x54, 0x11, 0xce, 0x10, 0x42, 0x19, 0x17, 0xb1, - 0x89, 0xf5, 0x3c, 0x5e, 0xd6, 0x2c, 0x9b, 0x02, 0x78, 0x1b, 0x44, 0x13, 0x17, 0xad, 0x01, 0x94, - 0xf4, 0x9d, 0xd0, 0x96, 0x33, 0x1e, 0xf7, 0x28, 0x8c, 0x8f, 0x90, 0x10, 0xbf, 0x21, 0x53, 0x31, - 0xa9, 0xbf, 0x11, 0xa0, 0x97, 0x29, 0x2a, 0x69, 0x86, 0xde, 0x8a, 0xa1, 0xf0, 0xf5, 0x31, 0x54, - 0x21, 0x96, 0x2f, 0x1b, 0xb5, 0x82, 0x62, 0x62, 0xc5, 0xa4, 0x4a, 0x68, 0xce, 0x9c, 0x4c, 0x6a, - 0xdf, 0xde, 0x4e, 0xd4, 0xe1, 0x26, 0xac, 0xbb, 0x4c, 0x72, 0x37, 0x7d, 0x27, 0x73, 0xa3, 0x0f, - 0x85, 0x49, 0xfc, 0xc6, 0xc2, 0xf4, 0x1d, 0x37, 0x4c, 0xbd, 0x8f, 0xeb, 0x48, 0x78, 0x5a, 0x47, - 0xe8, 0xa0, 0x8e, 0xfc, 0x99, 0xf4, 0x78, 0x7a, 0x62, 0x49, 0x0c, 0xa1, 0xb8, 0x90, 0xfa, 0xb1, - 0x0f, 0xfa, 0xee, 0x6e, 0x62, 0x13, 0xaf, 0x33, 0xbe, 0x15, 0x6c, 0x6f, 0x1b, 0xe6, 0x3d, 0x29, - 0x0f, 0x31, 0x47, 0xb2, 0xce, 0x5e, 0x9d, 0x22, 0x23, 0xcf, 0xee, 0xed, 0xb4, 0x72, 0x13, 0xd7, - 0xe5, 0x9e, 0xad, 0x66, 0x25, 0xaf, 0x42, 0xa4, 0x80, 0x8b, 0x6a, 0xad, 0x6c, 0x2b, 0x5b, 0x5a, - 0x95, 0x03, 0xdb, 0xdf, 0xa2, 0x60, 0xbe, 0x52, 0xb5, 0x1f, 0x2c, 0x74, 0xc9, 0xc0, 0x49, 0xd7, - 0xb5, 0xaa, 0x34, 0x05, 0x51, 0xab, 0x8a, 0xf3, 0x5a, 0x51, 0xcb, 0x53, 0x4e, 0x91, 0x8e, 0x32, - 0xe2, 0xa4, 0x77, 0xc8, 0xdf, 0x27, 0x60, 0x47, 0x1c, 0x42, 0xc2, 0xf7, 0x3a, 0xf4, 0xb8, 0x0a, - 0xa7, 0x28, 0x67, 0xa4, 0x83, 0x4e, 0x24, 0x47, 0x1d, 0x9d, 0x53, 0x8c, 0x3b, 0xd6, 0xd0, 0xca, - 0xd8, 0xa3, 0x54, 0xb1, 0xe4, 0x55, 0xec, 0x37, 0x7d, 0xbb, 0x08, 0x2d, 0x20, 0xb9, 0xdb, 0xd5, - 0x4c, 0xb8, 0x67, 0xc2, 0xcf, 0xae, 0x07, 0xc6, 0xd2, 0x99, 0xf4, 0xd8, 0xb5, 0xec, 0x45, 0x80, - 0x2d, 0xad, 0xaa, 0x78, 0x86, 0x90, 0xef, 0x69, 0x1d, 0x09, 0x64, 0x08, 0x8d, 0xa7, 0x27, 0xb2, - 0x8b, 0xd0, 0xcd, 0xc4, 0x3b, 0x14, 0xd3, 0x8f, 0xeb, 0x28, 0xf2, 0xb4, 0x8e, 0x80, 0x44, 0x6f, - 0x6c, 0x2c, 0x3d, 0x96, 0x79, 0xf8, 0x3f, 0xe8, 0x85, 0x02, 0xae, 0x18, 0x63, 0x69, 0x1b, 0x5b, - 0x76, 0x3a, 0x6f, 0xda, 0x69, 0xcb, 0x56, 0x4b, 0x9a, 0x5e, 0x4a, 0x5b, 0x46, 0xd1, 0xde, 0x50, - 0xf5, 0x7b, 0x4a, 0x05, 0xe7, 0x97, 0xc4, 0x90, 0x10, 0xf7, 0x2d, 0x89, 0x21, 0x88, 0x47, 0x52, - 0x1f, 0x22, 0x88, 0xd2, 0x50, 0xe7, 0x70, 0xa9, 0x82, 0x75, 0x5b, 0x5a, 0x85, 0xa0, 0xc5, 0x7e, - 0x9e, 0x22, 0xb6, 0xd2, 0xde, 0x8e, 0xc3, 0xe5, 0x0c, 0x16, 0xd9, 0x79, 0x21, 0x0d, 0x41, 0x48, - 0xab, 0x6e, 0x4d, 0x78, 0x62, 0xd2, 0xdd, 0x14, 0x0f, 0x39, 0x48, 0x3e, 0x13, 0x2c, 0xaf, 0x52, - 0x4a, 0x06, 0xa2, 0xff, 0x28, 0x10, 0x29, 0x79, 0x0b, 0x78, 0xa9, 0xdf, 0x12, 0x20, 0xcc, 0xdc, - 0x20, 0xe3, 0xf3, 0x06, 0x04, 0xbd, 0xf9, 0xd9, 0x93, 0x49, 0xb6, 0xf5, 0x81, 0xd0, 0xf2, 0xac, - 0xcb, 0x8a, 0x44, 0x89, 0xec, 0xb0, 0x91, 0x8a, 0x74, 0xca, 0x62, 0xe1, 0x54, 0xa4, 0x27, 0x75, - 0x24, 0xe4, 0xdd, 0x92, 0xc1, 0x0b, 0xc6, 0x65, 0x10, 0x78, 0x2a, 0xb7, 0x4b, 0x48, 0x59, 0xd0, - 0xaa, 0xd2, 0x32, 0x88, 0xc4, 0x2f, 0x8e, 0xd0, 0xf4, 0xe7, 0x3b, 0x27, 0x09, 0x65, 0x1b, 0x74, - 0xa8, 0x94, 0x99, 0xd0, 0xb3, 0xeb, 0x7e, 0x02, 0xcd, 0x78, 0xea, 0x8f, 0x04, 0x88, 0xbb, 0xc8, - 0x3c, 0xbf, 0x20, 0xbf, 0xf1, 0xb5, 0xab, 0x2b, 0x87, 0xea, 0xa2, 0x07, 0xaa, 0xee, 0xe7, 0x0d, - 0x13, 0x3c, 0xbb, 0x1e, 0xa4, 0x30, 0xa5, 0x27, 0x52, 0xef, 0x0b, 0x70, 0x86, 0x02, 0x35, 0x47, - 0x0a, 0xf1, 0x7c, 0xa1, 0xf4, 0x1c, 0xd1, 0x5a, 0x07, 0x60, 0x53, 0x00, 0x2e, 0x94, 0x4e, 0x83, - 0x59, 0xbb, 0xb9, 0x43, 0x0e, 0xe7, 0x1d, 0x83, 0xbf, 0x3d, 0xf0, 0xfe, 0x0a, 0xf1, 0x2c, 0x5b, - 0x6f, 0xcc, 0x34, 0xd2, 0xcc, 0xa9, 0x87, 0x61, 0x63, 0x00, 0xfe, 0xe0, 0x2b, 0xb7, 0x29, 0x67, - 0x5a, 0xe6, 0x3f, 0x36, 0x20, 0x9b, 0xe6, 0xc0, 0x99, 0xc0, 0xb3, 0xeb, 0xa4, 0x2f, 0x49, 0x7d, - 0x20, 0xc0, 0xb9, 0x56, 0xb3, 0x9f, 0x5f, 0xd4, 0x9f, 0xab, 0x4f, 0xdf, 0x5e, 0xec, 0x3f, 0x77, - 0x63, 0xff, 0xe6, 0x74, 0x2e, 0x87, 0xcd, 0x2d, 0x32, 0x3b, 0xdd, 0x39, 0x75, 0xc7, 0xea, 0x2d, - 0xa0, 0xe6, 0xe1, 0x9e, 0xeb, 0xe7, 0xbe, 0x51, 0xf0, 0xcc, 0xd6, 0xb6, 0x68, 0x46, 0x7c, 0x76, - 0x1d, 0x8d, 0x1f, 0xdf, 0xc3, 0xfe, 0x5e, 0x94, 0x4f, 0x34, 0xb4, 0x71, 0x9d, 0x68, 0xf2, 0x32, - 0xd1, 0xd6, 0x18, 0xb7, 0xf8, 0xba, 0xae, 0x2c, 0xb5, 0x75, 0xe5, 0xbb, 0x47, 0x73, 0x7b, 0xb2, - 0xb3, 0xc5, 0x6c, 0x2a, 0xeb, 0xde, 0xb4, 0xa5, 0x58, 0x0c, 0x77, 0xde, 0x2e, 0x75, 0x92, 0xd5, - 0x08, 0x12, 0x95, 0x75, 0x6f, 0xda, 0x72, 0x62, 0x96, 0x3b, 0xdc, 0xde, 0x85, 0xa9, 0xb8, 0xa1, - 0x63, 0x4d, 0xe3, 0xe3, 0x77, 0xa1, 0xeb, 0x50, 0x3b, 0xf7, 0x0b, 0x10, 0x25, 0x4e, 0x2a, 0xce, - 0x58, 0x8a, 0x1c, 0x67, 0xa0, 0x67, 0x0c, 0x66, 0x47, 0xf7, 0xf6, 0xd1, 0x2b, 0xc3, 0xbe, 0xbc, - 0x69, 0x0f, 0x07, 0x79, 0x7e, 0x0e, 0x8b, 0x55, 0xd3, 0x28, 0x0c, 0x47, 0xbd, 0x69, 0x3a, 0x1c, - 0x2c, 0xe2, 0x82, 0xa9, 0x56, 0xaa, 0xb4, 0xb5, 0xf3, 0x8c, 0xe1, 0xf7, 0x10, 0xf4, 0x7b, 0xa1, - 0x76, 0xad, 0x88, 0x52, 0x2b, 0xd2, 0x27, 0x82, 0xfc, 0x6b, 0x18, 0x23, 0x6d, 0x1d, 0xae, 0x2b, - 0xbf, 0x86, 0x40, 0x6a, 0x14, 0x7f, 0xd7, 0xa2, 0x1e, 0x6a, 0xd1, 0xf0, 0xd1, 0x16, 0xb5, 0x4e, - 0x4b, 0x5f, 0xc5, 0x9e, 0x78, 0xbe, 0x75, 0x6e, 0xd3, 0x1b, 0x55, 0xae, 0x9b, 0x5a, 0x70, 0xb9, - 0x43, 0x64, 0xbe, 0xba, 0x62, 0xb7, 0x06, 0xde, 0x80, 0x78, 0xcd, 0xc2, 0x8a, 0xd3, 0x70, 0x57, - 0x0d, 0xd3, 0x1e, 0x08, 0x74, 0x6c, 0xb7, 0x7b, 0x6a, 0x16, 0xbe, 0xc9, 0xc8, 0x57, 0x0d, 0xd3, - 0x26, 0x8b, 0x68, 0xca, 0x15, 0x4c, 0xa2, 0xa1, 0xee, 0x6c, 0xaf, 0x53, 0x9e, 0x42, 0xc3, 0x81, - 0x81, 0x9f, 0xfc, 0xc4, 0x37, 0x44, 0x9a, 0x6c, 0x4a, 0x30, 0xf3, 0x9e, 0xf8, 0xec, 0xba, 0x6f, - 0x22, 0x3d, 0xf9, 0xa4, 0x8e, 0x7e, 0x59, 0x84, 0xdf, 0x15, 0x40, 0x24, 0x63, 0x76, 0xf8, 0x37, - 0x04, 0x78, 0x4f, 0x80, 0x28, 0x1b, 0xb9, 0x19, 0x91, 0x84, 0x06, 0x2e, 0x34, 0x8f, 0xc8, 0x4c, - 0x94, 0x87, 0x3f, 0x49, 0xbf, 0x5e, 0x81, 0x5e, 0xef, 0x18, 0x1b, 0xa1, 0x24, 0xfd, 0x5b, 0x6f, - 0x4e, 0x5b, 0x49, 0x9e, 0xe5, 0x49, 0x43, 0x67, 0xa4, 0x19, 0x38, 0xdf, 0x44, 0xda, 0x24, 0xf5, - 0x4c, 0x2b, 0xcb, 0x3a, 0xe5, 0x49, 0x1d, 0x1a, 0x76, 0x99, 0x98, 0xa3, 0x9f, 0x13, 0xc3, 0xa5, - 0xe6, 0x51, 0x94, 0x89, 0xf1, 0x58, 0xb8, 0x8a, 0x5f, 0x69, 0x97, 0x54, 0x99, 0x33, 0x1e, 0x32, - 0x9a, 0x3f, 0x49, 0x12, 0x7b, 0x90, 0xdc, 0xa0, 0x67, 0x82, 0x9c, 0x02, 0x36, 0x00, 0x88, 0xa0, - 0x51, 0x6a, 0x53, 0x66, 0x0d, 0xc2, 0x44, 0x1f, 0x75, 0x15, 0xce, 0x7b, 0xbd, 0x68, 0x72, 0xa9, - 0x0d, 0x30, 0x1d, 0x00, 0x80, 0xb7, 0x21, 0xc8, 0x1d, 0x1a, 0x7e, 0x0b, 0x72, 0x20, 0x31, 0xa7, - 0x46, 0x9c, 0x39, 0x5f, 0x48, 0x22, 0x18, 0x6c, 0x1e, 0xb0, 0x4d, 0xdf, 0x2e, 0xc3, 0xa5, 0x16, - 0xa0, 0x46, 0x5a, 0x9e, 0x21, 0x01, 0x91, 0x65, 0xcd, 0xb2, 0xb1, 0x9e, 0x24, 0xb9, 0x32, 0x18, - 0x63, 0xb9, 0x22, 0x05, 0x79, 0xbe, 0x65, 0xaf, 0xb8, 0xf5, 0xfd, 0x12, 0xaf, 0xef, 0xe2, 0x41, - 0x1d, 0xf5, 0xb1, 0xa9, 0xec, 0x7b, 0x69, 0xba, 0x8c, 0x4a, 0x8f, 0x4d, 0xa4, 0xc7, 0xc6, 0xb3, - 0x09, 0x88, 0x10, 0x5e, 0xef, 0x82, 0x2c, 0xf0, 0xb4, 0x8e, 0xfc, 0x64, 0x3e, 0x98, 0x4a, 0xbf, - 0xba, 0x24, 0x86, 0xc4, 0xb8, 0x7f, 0x49, 0x0c, 0x85, 0xe2, 0xe1, 0x25, 0x31, 0xe4, 0x8f, 0x07, - 0xf8, 0x8a, 0xea, 0x0f, 0x45, 0x90, 0xdc, 0x19, 0x82, 0x80, 0xb9, 0x4e, 0x8b, 0xfe, 0xb7, 0x3f, - 0x55, 0xdc, 0x6a, 0x33, 0xf4, 0xfc, 0x47, 0x0f, 0x3d, 0xb6, 0x24, 0xea, 0x30, 0x00, 0x03, 0xc7, - 0x0d, 0xc0, 0x7f, 0x42, 0xcf, 0xae, 0x93, 0xb5, 0xeb, 0x93, 0x3a, 0xfa, 0x7b, 0x04, 0x53, 0x7c, - 0xfc, 0x8d, 0x40, 0xfa, 0x54, 0xa3, 0x6f, 0x04, 0xc4, 0x15, 0xb5, 0x82, 0x33, 0x2f, 0x9d, 0x30, - 0x25, 0xff, 0x5f, 0x23, 0xc9, 0x32, 0x70, 0xed, 0xd4, 0x49, 0x76, 0x5c, 0x06, 0x1d, 0xdd, 0x21, - 0xb4, 0xcb, 0x18, 0x3f, 0xcf, 0x30, 0xdf, 0x64, 0x7a, 0x8a, 0x75, 0x10, 0x2c, 0x6f, 0x52, 0x05, - 0x88, 0xcd, 0x16, 0xb6, 0xb0, 0x69, 0x6b, 0x16, 0x5e, 0xad, 0x6d, 0x94, 0xb5, 0xbc, 0xf4, 0x53, - 0x10, 0xae, 0xd2, 0x5f, 0x8a, 0x56, 0x3d, 0x45, 0xdf, 0x14, 0xdf, 0xdb, 0x69, 0xf0, 0xd1, 0x05, - 0x41, 0x88, 0x3d, 0x2e, 0x56, 0x53, 0x7f, 0x8a, 0x3c, 0x6a, 0xe6, 0x6a, 0x96, 0x6d, 0x54, 0xa4, - 0x12, 0xc4, 0x54, 0xe7, 0x95, 0xb2, 0x4d, 0x72, 0x86, 0xef, 0xbb, 0x75, 0xc8, 0x49, 0xaa, 0x28, - 0xe1, 0x6e, 0xb4, 0x25, 0x9d, 0x5f, 0x21, 0x77, 0xf3, 0x6d, 0x00, 0xc9, 0x3d, 0xae, 0x58, 0xca, - 0x33, 0x73, 0xf5, 0x83, 0x3a, 0xba, 0x02, 0x2f, 0x43, 0x8a, 0x29, 0x4e, 0xba, 0x86, 0x24, 0xd7, - 0x17, 0x57, 0x93, 0x73, 0x86, 0x5e, 0xd4, 0x4a, 0x35, 0x53, 0xb5, 0x35, 0x43, 0x97, 0xd0, 0x58, - 0xea, 0xaf, 0x11, 0x48, 0x2e, 0x49, 0x63, 0xdc, 0x54, 0x8f, 0x32, 0xf7, 0xe5, 0xce, 0xe6, 0xba, - 0x12, 0x9e, 0xb7, 0xdd, 0x7f, 0x19, 0x80, 0x6e, 0x46, 0x39, 0xa7, 0x55, 0x37, 0xb1, 0x69, 0x49, - 0xaf, 0x41, 0xa4, 0xa2, 0xe9, 0xca, 0x16, 0x36, 0x2d, 0xcd, 0xd0, 0xf9, 0xda, 0x67, 0xb0, 0xc5, - 0xdc, 0xb5, 0xb2, 0xb5, 0x6a, 0x1a, 0xb6, 0x91, 0x37, 0xca, 0x32, 0x54, 0x34, 0x7d, 0x9d, 0x51, - 0x53, 0x66, 0xf5, 0xbe, 0xcb, 0x2c, 0x9c, 0x80, 0x59, 0xbd, 0xef, 0x30, 0xff, 0x8e, 0x1f, 0xba, - 0xf3, 0xd4, 0x0a, 0xc5, 0xaa, 0x69, 0x36, 0xb6, 0x06, 0x7c, 0x49, 0xdf, 0x50, 0x38, 0xfb, 0xdf, - 0x74, 0x2b, 0xfa, 0xdf, 0xc5, 0x47, 0xe8, 0x40, 0x4c, 0xfd, 0x9b, 0x68, 0xfe, 0xab, 0x28, 0x9f, - 0x5d, 0x5b, 0xce, 0x29, 0xb3, 0xf3, 0x39, 0x65, 0x2c, 0x33, 0xad, 0xbc, 0x31, 0x77, 0x5b, 0xc9, - 0x2d, 0xcc, 0x66, 0x26, 0xa7, 0x1a, 0xef, 0x33, 0x93, 0x53, 0xce, 0xfb, 0xf1, 0xe9, 0x09, 0xf9, - 0x02, 0x79, 0x3f, 0xb7, 0x30, 0x3b, 0xb7, 0x30, 0x9b, 0xb9, 0xa6, 0xac, 0xde, 0x59, 0xfe, 0xe9, - 0xb1, 0xf1, 0x6b, 0x93, 0x0e, 0xd7, 0xcb, 0xe4, 0xeb, 0xfc, 0xdc, 0xcd, 0x85, 0x79, 0xf2, 0x6f, - 0x6e, 0x56, 0xb9, 0xbb, 0xb8, 0xb6, 0xd0, 0x4e, 0xfc, 0xd1, 0x84, 0x2d, 0xfa, 0xae, 0xb6, 0x25, - 0x3c, 0xd2, 0x80, 0xef, 0x36, 0xc8, 0xe5, 0x0e, 0xea, 0x8f, 0x22, 0x6b, 0x51, 0xfe, 0x4a, 0x1b, - 0xb2, 0x23, 0x55, 0xbf, 0xd8, 0xd1, 0xf7, 0xb9, 0xec, 0x1c, 0x21, 0xec, 0x40, 0x45, 0x74, 0x3b, - 0x54, 0xa9, 0x0e, 0x6e, 0x1c, 0x47, 0xe3, 0x95, 0x43, 0xa3, 0x75, 0xa4, 0x84, 0x4b, 0x6d, 0xbf, - 0x7a, 0x60, 0x3a, 0xcc, 0xee, 0x15, 0x7e, 0xa9, 0xed, 0xd7, 0x06, 0x7c, 0x9e, 0xb1, 0x15, 0x65, - 0xd9, 0x98, 0xa3, 0xc9, 0xe8, 0xd9, 0x95, 0xfa, 0x50, 0x80, 0xf0, 0x5a, 0xd9, 0x62, 0x83, 0x49, - 0x9a, 0x85, 0xb8, 0x33, 0x2b, 0x59, 0x38, 0x5f, 0x33, 0x35, 0xfb, 0x01, 0x2f, 0x80, 0x47, 0xed, - 0xfb, 0xc6, 0x38, 0x7d, 0x8e, 0x93, 0x4b, 0xff, 0x1f, 0x62, 0x15, 0x5c, 0xd0, 0x6a, 0x95, 0x86, - 0x04, 0xa1, 0xa3, 0x84, 0x1e, 0x46, 0xee, 0x0a, 0xf8, 0x1e, 0x44, 0xcb, 0xc6, 0x76, 0x83, 0xbb, - 0xf3, 0xbe, 0x73, 0xa4, 0x6c, 0x6c, 0xbb, 0xac, 0xb7, 0x21, 0x96, 0xa7, 0x05, 0xa0, 0xc1, 0xdd, - 0x69, 0xbb, 0xbe, 0xa9, 0x58, 0x10, 0x4b, 0x18, 0xb3, 0x23, 0x8e, 0xae, 0x44, 0x27, 0xb3, 0x17, - 0xdd, 0x79, 0xa6, 0x8f, 0xcf, 0x33, 0xa4, 0xf3, 0x70, 0x16, 0xdd, 0xac, 0xe3, 0x48, 0xfd, 0x85, - 0x0f, 0xce, 0xdd, 0x34, 0xb6, 0x75, 0xcb, 0x36, 0xb1, 0x5a, 0x21, 0x55, 0x41, 0x35, 0xd5, 0x8a, - 0x45, 0xd7, 0xa6, 0x73, 0x00, 0x76, 0xd9, 0x52, 0xf2, 0x14, 0xe2, 0x8e, 0x6d, 0x87, 0x1b, 0x88, - 0xac, 0xf8, 0x45, 0x1d, 0x21, 0x39, 0x6c, 0xbb, 0x91, 0xd9, 0x80, 0x38, 0x15, 0x42, 0x0a, 0x60, - 0x51, 0xcb, 0xab, 0xa4, 0xa4, 0x08, 0xb4, 0xfc, 0x5e, 0x3e, 0x5c, 0x92, 0xe6, 0x1a, 0x54, 0x74, - 0xc2, 0xe8, 0x77, 0x0b, 0x6f, 0xbc, 0x51, 0x78, 0xe5, 0x98, 0xdd, 0x44, 0x69, 0x49, 0x93, 0x10, - 0xd4, 0x0d, 0xa5, 0x62, 0x97, 0xad, 0x4e, 0xa0, 0x67, 0x45, 0x02, 0xc3, 0x42, 0x97, 0x1c, 0xd0, - 0x8d, 0xdb, 0x76, 0xd9, 0x92, 0xd6, 0x21, 0x44, 0xda, 0x19, 0xca, 0xc7, 0xe0, 0x1e, 0x6f, 0xeb, - 0x5d, 0x13, 0x3e, 0xeb, 0xec, 0xfc, 0x51, 0x33, 0xf4, 0x39, 0x43, 0xb7, 0xf1, 0x7d, 0xdb, 0x15, - 0x1b, 0xac, 0x59, 0x98, 0xc8, 0x9d, 0xb9, 0xf8, 0x41, 0x1d, 0x9d, 0x87, 0x73, 0xd0, 0xb3, 0xb6, - 0x9c, 0x4b, 0x52, 0x3c, 0xb1, 0x4d, 0xaa, 0x3a, 0xcd, 0xdc, 0xc9, 0xec, 0x34, 0x44, 0x2a, 0x14, - 0x12, 0x16, 0x9c, 0x2b, 0x8f, 0xeb, 0xc8, 0xf7, 0x51, 0x23, 0x40, 0xa4, 0xdf, 0x79, 0xb8, 0x8f, - 0x24, 0x88, 0xe7, 0x0b, 0xba, 0x52, 0x36, 0xd4, 0xc2, 0x86, 0x5a, 0x56, 0xf5, 0x3c, 0x36, 0x79, - 0xc8, 0xfe, 0xdc, 0x07, 0x03, 0x1e, 0x93, 0x96, 0x73, 0x04, 0x0b, 0x1e, 0xb7, 0x6f, 0x26, 0x66, - 0x35, 0x88, 0xb6, 0x89, 0xd7, 0x49, 0x5a, 0x89, 0xab, 0x7b, 0x3b, 0x11, 0x0f, 0xeb, 0xe1, 0x79, - 0x73, 0x00, 0x1d, 0x7c, 0xf2, 0x77, 0xbe, 0xc0, 0xa3, 0x7d, 0x24, 0xc4, 0xbb, 0xe4, 0x26, 0x35, - 0xde, 0x30, 0x8a, 0x5f, 0x31, 0x8c, 0xfe, 0xff, 0xab, 0x30, 0x8e, 0x67, 0x53, 0xcd, 0x61, 0x24, - 0x63, 0x4c, 0xfc, 0xc8, 0xd3, 0xcf, 0x4d, 0xa4, 0x27, 0xf9, 0x8e, 0x8f, 0x09, 0x3d, 0xdf, 0x2f, - 0xe6, 0xf3, 0x0b, 0x58, 0x2d, 0x60, 0xf3, 0x4d, 0xfc, 0xc0, 0x92, 0xde, 0x86, 0xfe, 0xfb, 0xc5, - 0x7c, 0x5e, 0xd9, 0xa4, 0xaf, 0x14, 0x5c, 0xc6, 0x64, 0x05, 0xc5, 0x8e, 0x2f, 0x0f, 0xcf, 0xd5, - 0x84, 0x79, 0x9e, 0x91, 0x64, 0x25, 0x02, 0x64, 0xf7, 0x23, 0x04, 0xa9, 0xd0, 0x2f, 0x21, 0x7f, - 0x1c, 0xa5, 0x50, 0x97, 0x2c, 0xdd, 0x77, 0xa5, 0x73, 0x32, 0x2b, 0xf5, 0x5f, 0x22, 0x24, 0x3a, - 0x3b, 0x2c, 0xc9, 0xd0, 0x63, 0x9b, 0x35, 0xcb, 0xc6, 0x05, 0x25, 0xaf, 0x2a, 0x35, 0xb3, 0xcc, - 0x4f, 0x95, 0x87, 0xbf, 0xac, 0x23, 0xf1, 0x0f, 0xf6, 0x51, 0xa4, 0x8a, 0x2b, 0xe9, 0xe4, 0x86, - 0x6a, 0xe1, 0x29, 0x5a, 0x90, 0x43, 0x26, 0xe9, 0xd7, 0x77, 0x77, 0x43, 0x7c, 0x2f, 0xef, 0x57, - 0x7d, 0x04, 0xae, 0x28, 0x97, 0x31, 0xa7, 0xbe, 0x65, 0x96, 0xa5, 0xbb, 0x00, 0x0d, 0x99, 0x03, - 0x70, 0x9a, 0x5d, 0xcf, 0x98, 0xc7, 0x98, 0xb2, 0x66, 0xd9, 0x0b, 0x5d, 0x72, 0xd8, 0x95, 0x2d, - 0x8d, 0x43, 0x40, 0x37, 0x94, 0xbc, 0x59, 0x3e, 0x41, 0x6a, 0x20, 0xd9, 0xaf, 0x1b, 0x73, 0x66, - 0x59, 0xba, 0x05, 0x3e, 0xc2, 0xe1, 0x3f, 0xb1, 0x19, 0x3d, 0x7b, 0x3b, 0x84, 0xc3, 0xd9, 0xb4, - 0x5c, 0x40, 0x32, 0x79, 0x94, 0x5e, 0x83, 0x6e, 0x1a, 0xae, 0x82, 0x66, 0xa9, 0x1b, 0x65, 0x5c, - 0xa0, 0x3b, 0x07, 0x47, 0x95, 0x76, 0x41, 0x8e, 0x12, 0xe2, 0x9b, 0x9c, 0x56, 0x5a, 0x00, 0xfa, - 0xec, 0xdc, 0x4a, 0x18, 0x08, 0x51, 0xde, 0x17, 0xda, 0x5a, 0xd3, 0x9c, 0x26, 0x0b, 0x82, 0x1c, - 0x21, 0xac, 0x77, 0x18, 0x67, 0xf6, 0x0a, 0xf4, 0x7a, 0x30, 0xe2, 0x79, 0xd7, 0xff, 0xb8, 0x8e, - 0xe0, 0x69, 0x1d, 0x85, 0x0f, 0xea, 0x48, 0x1c, 0xbb, 0x96, 0xce, 0xfc, 0xfe, 0x3e, 0x42, 0xd9, - 0xcb, 0x00, 0x79, 0xb3, 0xdc, 0x29, 0x37, 0xb3, 0xaf, 0x41, 0xc4, 0x93, 0x83, 0x52, 0xfa, 0x71, - 0x1d, 0x05, 0x39, 0x4d, 0x80, 0xd0, 0xbc, 0x9a, 0x9e, 0x7e, 0xb8, 0x8f, 0xce, 0x40, 0xef, 0xa6, - 0x6d, 0x57, 0x9b, 0xea, 0x50, 0x12, 0x2d, 0x89, 0xa1, 0x70, 0x1c, 0xdc, 0xe5, 0x48, 0x20, 0x1e, - 0x4c, 0x1d, 0xf8, 0xa1, 0xff, 0x8e, 0xa9, 0x95, 0x34, 0x7d, 0xd5, 0x30, 0xca, 0x77, 0x35, 0x7b, - 0xf3, 0x2e, 0xd6, 0x4a, 0x9b, 0xb6, 0xb4, 0x40, 0xd6, 0x3f, 0x46, 0xf9, 0x14, 0xeb, 0x91, 0x9e, - 0xbd, 0x9d, 0x88, 0x41, 0x45, 0x29, 0x84, 0x93, 0x2c, 0x65, 0xc9, 0xff, 0x92, 0x0c, 0xc1, 0x7c, - 0x99, 0xf8, 0x6f, 0x9e, 0xe2, 0x30, 0x5b, 0xda, 0xdb, 0x71, 0xb8, 0x48, 0x58, 0xf9, 0x59, 0xb9, - 0xf3, 0x4a, 0xba, 0x08, 0x81, 0x6d, 0x6a, 0x27, 0x4d, 0xfe, 0xee, 0xac, 0xff, 0x5f, 0xea, 0x08, - 0x8d, 0xc9, 0xfc, 0xa5, 0x34, 0x0c, 0xa1, 0xaa, 0xa9, 0x19, 0x74, 0x46, 0x66, 0xab, 0xd5, 0x1e, - 0x4a, 0x40, 0x77, 0xc6, 0x87, 0x85, 0x81, 0xa4, 0xec, 0x7e, 0x97, 0x7e, 0x1d, 0x41, 0x1c, 0xeb, - 0x85, 0xaa, 0xa1, 0xe9, 0xb6, 0x62, 0xd5, 0x36, 0x2c, 0x6c, 0x93, 0x82, 0x44, 0x4a, 0xe7, 0xf5, - 0xf6, 0x86, 0xb6, 0x81, 0x6b, 0x64, 0x9e, 0x4b, 0xc8, 0x31, 0x01, 0xf3, 0xba, 0x6d, 0x3e, 0xc8, - 0x5e, 0x26, 0xa6, 0xff, 0x70, 0x1f, 0x89, 0x20, 0x74, 0xb1, 0x85, 0xc7, 0x0f, 0xc9, 0x9c, 0x48, - 0x4b, 0xe9, 0xc3, 0x7d, 0x24, 0x84, 0xba, 0xe4, 0x18, 0x6e, 0x66, 0x1c, 0xcc, 0x42, 0x7f, 0x3b, - 0x59, 0x52, 0x1c, 0x7c, 0xf7, 0x30, 0xeb, 0x8e, 0xc2, 0x32, 0xf9, 0x29, 0xf5, 0x83, 0x7f, 0x4b, - 0x2d, 0xd7, 0xf8, 0xad, 0x12, 0x99, 0x3d, 0xcc, 0x08, 0xd3, 0x68, 0xe6, 0x3f, 0xd0, 0x07, 0x75, - 0x34, 0x06, 0xa3, 0xf0, 0x22, 0xb3, 0x35, 0x49, 0x8c, 0x4d, 0x6e, 0x6b, 0xf6, 0x66, 0x92, 0x99, - 0x9b, 0x54, 0xf5, 0x42, 0x72, 0xd5, 0x41, 0x20, 0x38, 0x9e, 0xce, 0xa4, 0xa7, 0xe8, 0x7e, 0xd9, - 0x9f, 0x21, 0x78, 0x9d, 0x2f, 0xd7, 0x27, 0xe0, 0x0a, 0xf4, 0xb1, 0x24, 0xc8, 0x44, 0x3c, 0x72, - 0x40, 0x72, 0xe3, 0x99, 0x09, 0xce, 0xf1, 0x78, 0x04, 0xdf, 0xd2, 0xef, 0xe9, 0xc6, 0xb6, 0x0e, - 0xe7, 0xf8, 0xa2, 0x3d, 0xc6, 0x38, 0x5d, 0x52, 0x90, 0x20, 0xc0, 0x74, 0x0f, 0x86, 0x9c, 0xd8, - 0xc1, 0x59, 0x08, 0x39, 0x46, 0x0c, 0x42, 0x23, 0x64, 0x30, 0x04, 0x71, 0x07, 0x83, 0x24, 0x07, - 0x61, 0xa9, 0xff, 0x70, 0x94, 0xe2, 0x3e, 0xb6, 0xf2, 0x36, 0xca, 0x4a, 0xfb, 0x95, 0xf9, 0x04, - 0xaf, 0xe4, 0xf7, 0x40, 0x6a, 0x04, 0xcd, 0xbd, 0x7c, 0xf2, 0x16, 0xf8, 0x09, 0xaf, 0x73, 0xfb, - 0xe4, 0xca, 0x89, 0x83, 0xed, 0xe9, 0x6f, 0x42, 0x9e, 0x96, 0x97, 0x49, 0x4b, 0xfd, 0x23, 0x82, - 0xfe, 0x55, 0x13, 0x17, 0xb5, 0xfb, 0x39, 0xdb, 0xd4, 0xf4, 0x92, 0xab, 0xef, 0x06, 0xf1, 0x90, - 0xbc, 0xc7, 0x4c, 0x65, 0x38, 0xfb, 0x22, 0xe1, 0x86, 0x47, 0x28, 0x98, 0xf2, 0x9b, 0xbe, 0x2f, - 0xd9, 0x85, 0x96, 0xc0, 0x23, 0xe4, 0x8b, 0xef, 0x7a, 0x97, 0xa9, 0x2e, 0x97, 0x64, 0x41, 0x37, - 0x3d, 0x26, 0x77, 0xc5, 0x08, 0x54, 0xcc, 0xca, 0xc9, 0xce, 0x74, 0x9c, 0xfd, 0x1a, 0x47, 0xe1, - 0xae, 0x70, 0x84, 0xc2, 0x28, 0x51, 0xb2, 0xca, 0x75, 0xa4, 0x7e, 0x11, 0xfa, 0xde, 0x28, 0x1b, - 0x1b, 0x6a, 0x79, 0xce, 0xd0, 0x75, 0x9c, 0xb7, 0x0d, 0x93, 0x7a, 0x83, 0x21, 0x5c, 0xa2, 0xaf, - 0x95, 0x2d, 0xfd, 0x14, 0x45, 0xe2, 0xc5, 0xc3, 0x97, 0x41, 0xde, 0xdf, 0x47, 0x3d, 0x21, 0x34, - 0x84, 0xae, 0xa1, 0x99, 0x00, 0x6b, 0x80, 0xe4, 0x10, 0x13, 0xbd, 0xae, 0xa7, 0x74, 0xe8, 0xe1, - 0x1b, 0x95, 0x32, 0x2e, 0x12, 0x28, 0xa5, 0x1f, 0x40, 0x88, 0xef, 0x61, 0x9e, 0xe6, 0xde, 0xd0, - 0x85, 0xc6, 0xf9, 0x5c, 0x3b, 0x7d, 0x8e, 0xc4, 0xd4, 0x27, 0x08, 0xfa, 0xd7, 0x8d, 0xb2, 0x8d, - 0x4d, 0x53, 0xcd, 0x19, 0x45, 0x7b, 0x5b, 0xe5, 0x27, 0x3e, 0x37, 0x41, 0x72, 0x97, 0x2a, 0xdb, - 0x4d, 0xab, 0xf4, 0xa3, 0x17, 0x0b, 0xce, 0xe2, 0x26, 0xb7, 0xed, 0xac, 0xd3, 0xdf, 0x80, 0xf3, - 0x5b, 0x5c, 0xba, 0x62, 0x71, 0xf1, 0xae, 0x30, 0x76, 0x84, 0x17, 0xe6, 0xc7, 0x77, 0x03, 0xfd, - 0x0b, 0x5d, 0xf2, 0xb9, 0xad, 0x16, 0x5b, 0xb8, 0x20, 0xba, 0x56, 0x18, 0xcb, 0x5e, 0x85, 0xc1, - 0x86, 0x38, 0xd7, 0x2a, 0xef, 0x68, 0x70, 0xae, 0xf9, 0xf8, 0x32, 0xe9, 0x71, 0x7e, 0xc9, 0xe7, - 0x00, 0x41, 0xdf, 0x9d, 0x2a, 0x36, 0x55, 0x5b, 0xd3, 0x4b, 0xb9, 0x07, 0x96, 0x8d, 0x2b, 0xad, - 0x1e, 0x1a, 0xd6, 0x29, 0x3d, 0xbc, 0x63, 0x39, 0x1e, 0xce, 0xc3, 0x80, 0xe1, 0x08, 0x57, 0x2c, - 0x2a, 0xbd, 0x93, 0x83, 0x67, 0x8d, 0x66, 0x4b, 0x9a, 0xfd, 0xcb, 0xc0, 0xa5, 0xa3, 0x84, 0x1d, - 0xe3, 0xe4, 0x43, 0x01, 0x12, 0xab, 0xd8, 0x2c, 0x1a, 0x66, 0x85, 0x4c, 0x7e, 0xf3, 0xfa, 0x26, - 0xf9, 0x8f, 0xc4, 0xf8, 0xb6, 0x51, 0x60, 0x11, 0x5d, 0x84, 0x33, 0x55, 0x6c, 0x16, 0x95, 0x8a, - 0x51, 0xc0, 0x4a, 0xf9, 0x55, 0x05, 0x33, 0x9a, 0xc2, 0x31, 0x2e, 0x4b, 0x84, 0x89, 0x08, 0x59, - 0x7e, 0x95, 0x4b, 0x2d, 0x48, 0xc5, 0x26, 0x51, 0xe3, 0x0d, 0x51, 0x6c, 0xc2, 0x1b, 0x6b, 0x9b, - 0xa0, 0xcb, 0xe3, 0xed, 0x0d, 0x24, 0xc6, 0x35, 0xe9, 0x19, 0x77, 0xf4, 0x70, 0x54, 0x5e, 0x80, - 0x78, 0x43, 0x5b, 0x7b, 0x18, 0xf8, 0x85, 0x2e, 0x5e, 0xff, 0xfe, 0x18, 0xc1, 0xf9, 0xd9, 0x7c, - 0x1e, 0x97, 0x09, 0x94, 0xb8, 0xc0, 0x77, 0x49, 0x35, 0xbd, 0x44, 0x71, 0xb8, 0x06, 0x41, 0xde, - 0x21, 0x1d, 0xe3, 0xb9, 0x43, 0x26, 0x8d, 0x40, 0x00, 0xeb, 0x94, 0xa1, 0xf3, 0x62, 0x99, 0x53, - 0x65, 0x53, 0x70, 0x56, 0x6d, 0xa8, 0x77, 0xc6, 0xbd, 0xa6, 0x97, 0xa4, 0x10, 0xbf, 0xed, 0x84, - 0x78, 0xd8, 0x7e, 0x84, 0xe0, 0x42, 0x27, 0x5c, 0xa4, 0x31, 0x08, 0xe9, 0x86, 0xf2, 0x4e, 0xad, - 0xb2, 0x61, 0x1c, 0x67, 0xad, 0x6e, 0x2c, 0x11, 0x32, 0x29, 0x0d, 0x7e, 0x46, 0xdf, 0xd9, 0x58, - 0x46, 0xc4, 0x21, 0xbe, 0xd5, 0x06, 0xe2, 0x4c, 0x4b, 0xa6, 0x3d, 0xdc, 0x47, 0x97, 0x20, 0xa6, - 0xfe, 0x7c, 0x8d, 0x0c, 0x61, 0x1d, 0xdb, 0x6c, 0x17, 0x3a, 0xaa, 0x6e, 0x5b, 0x8a, 0x5d, 0xda, - 0xa6, 0x4f, 0xdc, 0xab, 0x0f, 0x11, 0xc4, 0x16, 0x75, 0x1b, 0x9b, 0x3a, 0xb6, 0xd7, 0x17, 0x57, - 0x17, 0xf5, 0xa2, 0x21, 0x7d, 0x87, 0xed, 0x6a, 0x2b, 0xf4, 0x5e, 0x28, 0x9b, 0xd5, 0x43, 0xe4, - 0x05, 0x99, 0x3d, 0xa5, 0x65, 0xe8, 0x65, 0x1f, 0x19, 0x52, 0x8a, 0xfd, 0xa0, 0xca, 0xb0, 0x3e, - 0xc9, 0x55, 0x8a, 0x98, 0xd5, 0x78, 0xa0, 0x98, 0x5d, 0x87, 0x80, 0x65, 0xab, 0x76, 0xcd, 0xe2, - 0x88, 0xbd, 0xd4, 0x56, 0x84, 0xc7, 0xc0, 0x1c, 0xa5, 0x96, 0x39, 0xd7, 0x4c, 0xe0, 0x49, 0x1d, - 0x09, 0x71, 0x94, 0xda, 0x13, 0xa0, 0xf7, 0x10, 0x15, 0x71, 0x44, 0x2f, 0x6f, 0x28, 0x79, 0xaf, - 0x23, 0x7a, 0x79, 0x63, 0x8e, 0x3c, 0x4b, 0x17, 0x01, 0xc8, 0x47, 0x8f, 0xfa, 0xb0, 0x4c, 0xc8, - 0x39, 0xaf, 0xc4, 0xef, 0xc5, 0xd2, 0x3b, 0x5f, 0xec, 0x0a, 0x2c, 0x69, 0x74, 0x54, 0x53, 0xa7, - 0x6d, 0x5b, 0x58, 0x26, 0x3f, 0x25, 0x0c, 0x7d, 0xb6, 0x6a, 0x96, 0xb0, 0xad, 0x94, 0x4c, 0xa3, - 0x56, 0x75, 0xa4, 0x05, 0x69, 0xf1, 0x9f, 0x3c, 0xce, 0x99, 0x35, 0xca, 0xfa, 0x06, 0xe1, 0x64, - 0x5a, 0x09, 0x26, 0x72, 0xaf, 0xdd, 0xfa, 0x5a, 0x3a, 0x0b, 0x01, 0x13, 0xab, 0x96, 0xa1, 0xd3, - 0x5e, 0x3f, 0x2c, 0xf3, 0xa7, 0x99, 0xa1, 0x0f, 0xea, 0xe8, 0x45, 0x48, 0x41, 0x9f, 0x23, 0x94, - 0x6e, 0x07, 0x73, 0xa6, 0x08, 0xdd, 0x1c, 0x48, 0x4f, 0xa5, 0xa7, 0xe9, 0xc9, 0x50, 0x63, 0x9f, - 0xff, 0x6f, 0x05, 0x48, 0x1e, 0x67, 0x85, 0xeb, 0x3f, 0x3a, 0xec, 0xbf, 0xd0, 0xf0, 0xff, 0xac, - 0x1b, 0x3f, 0x1f, 0x33, 0x8c, 0x3d, 0x49, 0x83, 0xa4, 0xa1, 0x60, 0x9b, 0xc1, 0xec, 0x76, 0x87, - 0xec, 0x3e, 0x4b, 0x3f, 0x0b, 0xb1, 0x32, 0x3d, 0xcd, 0xc0, 0xa6, 0x83, 0x17, 0xeb, 0x69, 0x33, - 0xc7, 0xe1, 0xb5, 0xcc, 0xd9, 0x3c, 0x60, 0xf5, 0x94, 0x9b, 0xde, 0x79, 0x90, 0x0a, 0x34, 0x21, - 0xb5, 0xf2, 0xa4, 0x8e, 0x96, 0xa0, 0x87, 0xb5, 0x80, 0x83, 0x01, 0xe6, 0x1c, 0x44, 0xc1, 0x37, - 0x2b, 0xaf, 0x0c, 0xfa, 0xa9, 0x5f, 0xa4, 0x0f, 0x64, 0x52, 0x48, 0x1f, 0xc8, 0x2c, 0x63, 0x7d, - 0x20, 0x33, 0x9c, 0xf5, 0x81, 0xec, 0x77, 0xea, 0xb7, 0x11, 0x5c, 0xec, 0x68, 0x99, 0x03, 0x16, - 0x6a, 0x07, 0x96, 0xd0, 0x04, 0x96, 0xc4, 0x0f, 0xaf, 0x08, 0x84, 0xdd, 0xec, 0x9c, 0xaa, 0x23, - 0x80, 0x0d, 0x1f, 0xfd, 0x4d, 0x3e, 0x3a, 0x83, 0x61, 0x15, 0xe0, 0xb6, 0x4a, 0x3a, 0xdb, 0x15, - 0xa3, 0xd0, 0x3e, 0x90, 0x2f, 0x79, 0x8f, 0x75, 0x84, 0xa6, 0xa9, 0xef, 0xbe, 0xe7, 0xac, 0xc6, - 0xbd, 0x93, 0x54, 0x83, 0xe8, 0x6c, 0x55, 0xe3, 0x33, 0xb3, 0xa1, 0x4b, 0x37, 0x20, 0x50, 0xc1, - 0xf6, 0xa6, 0x51, 0xe0, 0x07, 0x09, 0xe7, 0x5b, 0x22, 0xb7, 0x60, 0xdb, 0xd5, 0xdb, 0x94, 0x20, - 0xdb, 0x4d, 0x17, 0xfa, 0xee, 0xce, 0x02, 0xe7, 0x93, 0x5e, 0x00, 0xb1, 0xaa, 0xda, 0x9b, 0x5c, - 0x79, 0x8c, 0x36, 0x7f, 0x26, 0x49, 0xee, 0xdd, 0xd0, 0xbb, 0x3e, 0x24, 0xd3, 0x8f, 0xa9, 0x7f, - 0x46, 0x70, 0x66, 0xb6, 0xaa, 0x39, 0x0d, 0x37, 0x69, 0x73, 0x73, 0x54, 0x81, 0x74, 0x0b, 0xba, - 0xd5, 0xaa, 0xa6, 0x18, 0x8e, 0x45, 0xbc, 0xcd, 0x6b, 0x7f, 0x51, 0xc0, 0x6b, 0xba, 0x1c, 0x55, - 0xbd, 0x8e, 0xbc, 0x02, 0x11, 0x46, 0xaa, 0xbc, 0x63, 0xf1, 0x8e, 0x22, 0x9c, 0x05, 0xbe, 0x1d, - 0x31, 0xf4, 0xee, 0x8a, 0x0c, 0xec, 0xf3, 0x12, 0xc1, 0xf7, 0xd6, 0x93, 0x3a, 0xca, 0x42, 0x0a, - 0x02, 0xcc, 0xb5, 0xc1, 0x01, 0xe8, 0x6f, 0x32, 0x62, 0x84, 0xf9, 0x96, 0x44, 0x70, 0x01, 0xc4, - 0x55, 0xd5, 0xde, 0x1c, 0xec, 0x07, 0xa9, 0x99, 0x82, 0xba, 0xf5, 0x0f, 0x02, 0x84, 0xd9, 0x86, - 0xeb, 0xcd, 0x95, 0x9c, 0x34, 0x03, 0xbd, 0x9a, 0x6e, 0x69, 0x05, 0x56, 0x6f, 0x2d, 0x6c, 0x6e, - 0x61, 0x93, 0x5f, 0xdb, 0xef, 0x26, 0x6b, 0x86, 0x46, 0x5c, 0xe2, 0x8c, 0x6e, 0xc5, 0x25, 0x93, - 0x5e, 0x07, 0xc9, 0xa8, 0xd9, 0xad, 0xcc, 0x42, 0x3b, 0xe6, 0x5e, 0x4e, 0xe8, 0xe1, 0x7e, 0x1b, - 0xfa, 0x0f, 0x69, 0x56, 0xb6, 0xa6, 0x78, 0x2f, 0x34, 0xf2, 0xf9, 0xce, 0xc5, 0x63, 0x2f, 0x62, - 0x79, 0x2e, 0x61, 0x49, 0xad, 0xd6, 0xad, 0x4f, 0x49, 0x1b, 0x70, 0xe6, 0xb0, 0x7d, 0x8a, 0x7b, - 0xe3, 0xeb, 0xb4, 0x2a, 0xfa, 0x0e, 0xf9, 0xb0, 0x3e, 0x35, 0xfc, 0x9b, 0x02, 0xfb, 0xbb, 0x04, - 0xe7, 0x72, 0xcf, 0x0b, 0x70, 0x29, 0xb7, 0xb8, 0x36, 0xaf, 0xac, 0xcc, 0xaf, 0xdd, 0xbd, 0x23, - 0xbf, 0xa9, 0x2c, 0xae, 0xe4, 0x16, 0x6f, 0xce, 0x2b, 0xb3, 0x2b, 0x37, 0x95, 0x3b, 0x6f, 0xad, - 0x91, 0xdf, 0xf1, 0x2e, 0x69, 0x12, 0xc6, 0x8e, 0x21, 0x62, 0x07, 0x09, 0x8b, 0x2b, 0x6b, 0xf3, - 0xf2, 0xca, 0xfc, 0x9a, 0xb2, 0xbe, 0xb8, 0x1a, 0xf7, 0x4b, 0xe7, 0xa0, 0xaf, 0x0d, 0x5b, 0x1c, - 0x49, 0x03, 0xd0, 0xdf, 0xf4, 0xc1, 0xd1, 0x24, 0x48, 0xc3, 0xf0, 0x52, 0xbb, 0x2f, 0x6d, 0xc4, - 0x8b, 0xd2, 0x77, 0x5b, 0xa4, 0xe4, 0xe6, 0xe5, 0xf5, 0xc5, 0xb9, 0xf9, 0xb8, 0x6f, 0x30, 0xf2, - 0xa4, 0x8e, 0x82, 0xe0, 0xaf, 0x9a, 0xc6, 0xfd, 0x07, 0xd2, 0x25, 0x38, 0xdb, 0x6c, 0xc5, 0xaa, - 0x72, 0x6b, 0x36, 0x2b, 0x2f, 0xce, 0xc5, 0x03, 0x83, 0xbe, 0xdd, 0x1d, 0x34, 0x28, 0x3e, 0xae, - 0xa3, 0xae, 0xec, 0xaf, 0xa0, 0xa7, 0x9f, 0x26, 0xba, 0x3e, 0xfe, 0x34, 0xd1, 0xf5, 0xc5, 0xa7, - 0x09, 0xb4, 0x7b, 0x90, 0x40, 0x7f, 0x72, 0x90, 0x40, 0x1f, 0x1d, 0x24, 0xd0, 0xd3, 0x83, 0x04, - 0xfa, 0xf8, 0x20, 0x81, 0x3e, 0x39, 0x48, 0xa0, 0x1f, 0x1f, 0x24, 0xba, 0xbe, 0x38, 0x48, 0xa0, - 0x77, 0x3f, 0x4b, 0x74, 0x3d, 0xfe, 0x2c, 0x81, 0x9e, 0x7e, 0x96, 0xe8, 0xfa, 0xf8, 0xb3, 0x44, - 0xd7, 0xcf, 0x2c, 0x96, 0x8c, 0xea, 0xbd, 0xd2, 0x88, 0xd3, 0xc4, 0x8f, 0xd4, 0xac, 0x51, 0xfa, - 0x83, 0xb4, 0x3f, 0x57, 0xab, 0xa6, 0xb1, 0xa5, 0x15, 0xb0, 0x79, 0xd5, 0xf9, 0x3c, 0x5a, 0xdd, - 0x28, 0x19, 0xa3, 0xf8, 0xbe, 0xcd, 0xff, 0x6c, 0xc6, 0xfb, 0x87, 0x3f, 0x1b, 0x01, 0x5a, 0xba, - 0xc6, 0xff, 0x37, 0x00, 0x00, 0xff, 0xff, 0xd0, 0xc1, 0x82, 0x5f, 0x16, 0x34, 0x00, 0x00, + // 4818 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x7b, 0x5d, 0x6c, 0x1b, 0x57, + 0x76, 0xbf, 0xee, 0xf0, 0xfb, 0x50, 0x12, 0xa9, 0x2b, 0xc9, 0x96, 0x15, 0x5b, 0xa6, 0x99, 0xc4, + 0x96, 0xb5, 0xb4, 0x64, 0x51, 0xb6, 0xe2, 0x28, 0x89, 0xd7, 0xa2, 0x2c, 0x47, 0x52, 0x64, 0x59, + 0x19, 0xca, 0xf2, 0xfe, 0xff, 0xbb, 0xe8, 0xec, 0x88, 0xbc, 0xa2, 0x26, 0x26, 0x67, 0x88, 0x99, + 0xa1, 0x24, 0x17, 0x15, 0x20, 0x14, 0x05, 0xba, 0x70, 0xf7, 0x61, 0xe1, 0x87, 0x02, 0xbb, 0xc8, + 0xc3, 0xa2, 0x7d, 0x68, 0x2b, 0xa0, 0x45, 0x51, 0xb4, 0x2f, 0xa5, 0xda, 0x75, 0x83, 0x5d, 0x34, + 0x70, 0x81, 0xc2, 0xdd, 0xa0, 0x45, 0xba, 0x28, 0xd0, 0x44, 0x06, 0xda, 0x6d, 0x80, 0x2e, 0x02, + 0x3f, 0x14, 0x41, 0x5f, 0xb6, 0xb8, 0x1f, 0x33, 0x1c, 0x52, 0x14, 0x25, 0x65, 0xb3, 0xc9, 0x8b, + 0xcd, 0x99, 0x39, 0xe7, 0x77, 0xbe, 0xee, 0x3d, 0xf7, 0x9c, 0x7b, 0xaf, 0xe0, 0xec, 0x3a, 0xb1, + 0x86, 0x35, 0x63, 0xc4, 0xca, 0xad, 0x91, 0x92, 0x3a, 0xb2, 0xae, 0x91, 0x0d, 0x6b, 0xc4, 0x7e, + 0x50, 0x26, 0xd6, 0x70, 0xd9, 0x34, 0x6c, 0x03, 0x77, 0x73, 0x82, 0x61, 0x4e, 0x30, 0xcc, 0x08, + 0xfa, 0x2f, 0x15, 0x34, 0x7b, 0xad, 0xb2, 0x32, 0x9c, 0x33, 0x4a, 0x23, 0x05, 0xa3, 0x60, 0x8c, + 0x30, 0xda, 0x95, 0xca, 0x2a, 0x7b, 0x62, 0x0f, 0xec, 0x17, 0xc7, 0xe8, 0x7f, 0xa1, 0x5e, 0x88, + 0x51, 0xb6, 0x35, 0x43, 0x17, 0x02, 0xfa, 0x4f, 0xd5, 0x7f, 0xf4, 0xc8, 0xee, 0x3f, 0xdd, 0xa0, + 0x9c, 0x5a, 0xd4, 0xf2, 0xaa, 0x4d, 0xc4, 0xd7, 0xc4, 0x7e, 0xd5, 0x95, 0x3a, 0xe8, 0xe4, 0x23, + 0x04, 0x1d, 0x77, 0x56, 0xde, 0x21, 0x39, 0x5b, 0x26, 0xab, 0x4b, 0x0f, 0xca, 0x04, 0x0f, 0x42, + 0xd0, 0x26, 0xba, 0xaa, 0xdb, 0x7d, 0x28, 0x81, 0x06, 0x23, 0x99, 0xf8, 0xd3, 0x2d, 0xf4, 0x59, + 0x15, 0xb5, 0xfd, 0xf5, 0x7f, 0x3d, 0xf6, 0xf9, 0x4d, 0x69, 0xf0, 0x86, 0x2c, 0xbe, 0xe3, 0x61, + 0x88, 0xe8, 0x6a, 0x89, 0x58, 0x65, 0x35, 0x47, 0xfa, 0xa4, 0x03, 0x88, 0x6b, 0x24, 0xf8, 0x02, + 0xf8, 0xe9, 0x43, 0x9f, 0x8f, 0x91, 0x76, 0x7b, 0x48, 0x43, 0x66, 0x20, 0x81, 0x06, 0xb7, 0x91, + 0xcc, 0x08, 0x92, 0x0a, 0x44, 0xe7, 0x35, 0xfd, 0xbe, 0xa3, 0xd1, 0x05, 0xf0, 0xaf, 0x99, 0x64, + 0x55, 0xe8, 0xd3, 0x4d, 0x19, 0x02, 0xa6, 0xaf, 0x6f, 0xdb, 0x2f, 0xa4, 0xc4, 0x91, 0xcc, 0x08, + 0x5c, 0x01, 0x52, 0x03, 0xa1, 0xe4, 0x21, 0x64, 0x02, 0x3e, 0x40, 0x10, 0xcd, 0x6a, 0x36, 0x99, + 0x37, 0x72, 0xaa, 0x6d, 0x98, 0x78, 0x16, 0xfc, 0x96, 0x66, 0x13, 0x26, 0x21, 0x9a, 0x4e, 0x0e, + 0x37, 0x09, 0xe8, 0x70, 0x9d, 0x97, 0x32, 0xb1, 0x9d, 0x2d, 0xc6, 0xb2, 0xbd, 0x8b, 0xd0, 0xfb, + 0xbb, 0x08, 0xcd, 0xb4, 0xc9, 0xec, 0x19, 0x7f, 0x03, 0xda, 0xd7, 0x35, 0xd3, 0xae, 0xa8, 0x45, + 0x85, 0x41, 0x4a, 0xc7, 0x81, 0xac, 0x63, 0x9d, 0x69, 0x93, 0xa3, 0xe2, 0x99, 0xea, 0x9a, 0x39, + 0x05, 0xc1, 0xdc, 0x9a, 0xa1, 0xe5, 0x08, 0x8e, 0x3d, 0xae, 0x22, 0xf4, 0xb4, 0x8a, 0x7c, 0x7b, + 0x55, 0xe4, 0x1b, 0x4d, 0xa5, 0xe7, 0xfc, 0x61, 0x5f, 0xdc, 0x9f, 0x5c, 0x85, 0x5e, 0x4a, 0x28, + 0x93, 0x55, 0x62, 0x12, 0x3d, 0x47, 0xe6, 0x35, 0xcb, 0x66, 0x0e, 0xbc, 0x0d, 0x7e, 0x93, 0xac, + 0x5a, 0x7d, 0x28, 0xe1, 0x3b, 0xa2, 0x2e, 0xbd, 0x1e, 0xf3, 0x98, 0x1b, 0x1f, 0x21, 0x29, 0x7e, + 0x43, 0x66, 0x30, 0xc9, 0xbf, 0x95, 0xa0, 0x8b, 0x0b, 0x2a, 0x68, 0x86, 0xde, 0xe8, 0x43, 0xe9, + 0x57, 0xf7, 0xa1, 0x0a, 0xb1, 0x5c, 0xd1, 0xa8, 0xe4, 0x15, 0x93, 0x28, 0x26, 0x13, 0xc2, 0xc6, + 0xcc, 0xd1, 0x50, 0xbb, 0x77, 0xb6, 0xda, 0x1d, 0x6e, 0xca, 0xba, 0xcd, 0x91, 0x3b, 0xd8, 0x3b, + 0x59, 0x28, 0xbd, 0x2f, 0x4c, 0xfe, 0x2f, 0x2c, 0x4c, 0x2f, 0xb8, 0x61, 0xea, 0x7a, 0x5c, 0x45, + 0xd2, 0xd3, 0x2a, 0x42, 0x7b, 0x55, 0x14, 0x48, 0xa7, 0xc6, 0x52, 0x57, 0xe6, 0xfc, 0x61, 0x14, + 0x97, 0x92, 0xff, 0xed, 0x83, 0xee, 0x7b, 0x6b, 0xc4, 0x24, 0xcb, 0x9c, 0x6f, 0x81, 0xd8, 0x1b, + 0x86, 0x79, 0x1f, 0xe7, 0x20, 0xe6, 0x20, 0xeb, 0xfc, 0xd5, 0x31, 0x46, 0xe4, 0x89, 0x9d, 0xad, + 0x46, 0x6e, 0x6a, 0xba, 0xdc, 0xb9, 0x5e, 0x2f, 0xe4, 0x15, 0x88, 0xe6, 0xc9, 0xaa, 0x5a, 0x29, + 0xda, 0xca, 0xba, 0x56, 0x16, 0x8e, 0xed, 0x69, 0x10, 0x30, 0x5d, 0x2a, 0xdb, 0x0f, 0x66, 0xda, + 0x64, 0x10, 0xa4, 0xcb, 0x5a, 0x19, 0x8f, 0x43, 0xbb, 0x55, 0x26, 0x39, 0x6d, 0x55, 0xcb, 0x31, + 0x4e, 0x3f, 0x9b, 0x65, 0xd4, 0x48, 0xef, 0x94, 0xdf, 0xa4, 0xce, 0x8e, 0x3a, 0x84, 0x94, 0xef, + 0x75, 0xe8, 0x74, 0x05, 0x8e, 0x33, 0xce, 0x68, 0x0b, 0x99, 0x48, 0x6e, 0x77, 0x64, 0x8e, 0x73, + 0xee, 0x58, 0x4d, 0x2a, 0x67, 0x6f, 0x67, 0x82, 0xb1, 0x57, 0x70, 0xc0, 0xf4, 0x6d, 0x23, 0x34, + 0x83, 0xe4, 0x0e, 0x57, 0x32, 0xe5, 0x9e, 0x88, 0x3c, 0xbf, 0x1e, 0x1c, 0x4d, 0xa5, 0x53, 0xa3, + 0x97, 0x33, 0x67, 0x00, 0xd6, 0xb5, 0xb2, 0xe2, 0x99, 0x42, 0xbe, 0xa7, 0x55, 0x24, 0xd1, 0x29, + 0x34, 0x96, 0xba, 0x92, 0x59, 0x80, 0x0e, 0x0e, 0xef, 0x50, 0xbc, 0xf1, 0xb8, 0x8a, 0xa2, 0x4f, + 0xab, 0x08, 0x68, 0xf4, 0x46, 0x47, 0x53, 0xa3, 0xe9, 0x87, 0xff, 0x8b, 0x06, 0xf3, 0xa4, 0x64, + 0x8c, 0xa6, 0x6c, 0x62, 0xd9, 0xa9, 0x9c, 0x69, 0xa7, 0x2c, 0x5b, 0x2d, 0x68, 0x7a, 0x21, 0x65, + 0x19, 0xab, 0xf6, 0x8a, 0xaa, 0xdf, 0x57, 0x4a, 0x24, 0x97, 0x2a, 0x9b, 0x46, 0x7e, 0xce, 0x1f, + 0x96, 0xe2, 0xbe, 0x39, 0x7f, 0x18, 0xe2, 0xd1, 0xe4, 0xbf, 0x20, 0x68, 0x67, 0xf1, 0xce, 0x92, + 0x42, 0x89, 0xe8, 0x36, 0x5e, 0x81, 0x90, 0xc5, 0x7f, 0x1e, 0x23, 0xc0, 0x2f, 0xed, 0x6c, 0x39, + 0x5c, 0x6c, 0x5a, 0xee, 0xa2, 0xce, 0x30, 0x1a, 0x44, 0x97, 0xd1, 0x44, 0x30, 0x67, 0xe8, 0xab, + 0x5a, 0x81, 0xce, 0x21, 0xd9, 0x21, 0xc1, 0x83, 0x10, 0xd6, 0xca, 0xeb, 0x57, 0x3c, 0xa1, 0xea, + 0xa8, 0x0b, 0x93, 0x1c, 0xa2, 0x9f, 0xa9, 0x8b, 0x2f, 0x31, 0x4a, 0xee, 0xdb, 0xc0, 0x41, 0xbe, + 0x65, 0xe4, 0x0d, 0x3e, 0x4d, 0xbe, 0x2b, 0x41, 0x84, 0x1b, 0x46, 0xa7, 0xed, 0x0d, 0x08, 0x79, + 0x87, 0x6d, 0x67, 0x3a, 0xd1, 0xd4, 0x2a, 0x4a, 0x2b, 0x06, 0x63, 0xc6, 0x4f, 0x85, 0xc8, 0x0e, + 0x1b, 0x4d, 0x54, 0xc7, 0xcc, 0x21, 0x4e, 0xa2, 0x7a, 0x52, 0x45, 0x52, 0xce, 0xcd, 0x24, 0x22, + 0x8f, 0x9c, 0x03, 0x49, 0x8c, 0xf0, 0x66, 0xe3, 0x54, 0x96, 0xb4, 0x32, 0x7e, 0x1b, 0xfc, 0xd4, + 0x2e, 0xe1, 0xa1, 0x37, 0x3e, 0xd9, 0x3a, 0x72, 0x84, 0x9b, 0xb8, 0x88, 0x41, 0x4d, 0x84, 0x9f, + 0x5f, 0x0f, 0x50, 0xff, 0x8c, 0x25, 0xff, 0x46, 0x82, 0xb8, 0xeb, 0x9e, 0x2f, 0x33, 0xf6, 0x6f, + 0xfe, 0xca, 0xb9, 0x58, 0x78, 0xf0, 0x8c, 0xc7, 0x83, 0x1d, 0x5f, 0x8a, 0xf7, 0xe0, 0xf9, 0xf5, + 0x10, 0xf3, 0x5e, 0xea, 0x4a, 0xf2, 0x9f, 0x24, 0xe8, 0x65, 0xfe, 0x9b, 0xa2, 0xb9, 0x7b, 0x3a, + 0x5f, 0xf8, 0x52, 0x9d, 0xb8, 0x0c, 0xc0, 0xd7, 0x11, 0x92, 0x2f, 0x1c, 0xc7, 0x95, 0xcd, 0x16, + 0x20, 0x39, 0x92, 0x73, 0x4c, 0xf8, 0x8a, 0x7d, 0xfa, 0x97, 0x48, 0x8c, 0xc9, 0xe5, 0xda, 0x9a, + 0x85, 0x27, 0x8e, 0x3d, 0x73, 0x6b, 0x73, 0xf6, 0x5b, 0x9f, 0xbb, 0xe0, 0xe9, 0x6d, 0x58, 0x49, + 0xf9, 0x1c, 0xae, 0x5b, 0x4d, 0x27, 0x82, 0xcf, 0xaf, 0xd3, 0x0a, 0x27, 0xf9, 0xaf, 0x12, 0x9c, + 0x6c, 0x54, 0xfb, 0xcb, 0x1c, 0x0c, 0xbf, 0x56, 0x2b, 0xbf, 0xe2, 0x21, 0xf1, 0x89, 0x3b, 0x24, + 0xde, 0xba, 0x96, 0xcd, 0x12, 0x73, 0x9d, 0x2e, 0x7f, 0x77, 0x8e, 0x5d, 0x12, 0x7b, 0x53, 0xb1, + 0xb9, 0xbf, 0xa8, 0xfb, 0x8d, 0x2f, 0xd4, 0x83, 0x66, 0x63, 0xdd, 0x35, 0xe1, 0x7f, 0x7e, 0x1d, + 0x8d, 0x1d, 0x5e, 0x24, 0x3f, 0xeb, 0x10, 0x4b, 0x16, 0xab, 0x8c, 0xaf, 0xd4, 0x59, 0x39, 0xd0, + 0x54, 0x19, 0x37, 0x83, 0xbb, 0xa6, 0xcc, 0x35, 0x35, 0xe5, 0xe5, 0x83, 0xb9, 0x3d, 0x83, 0xb6, + 0x41, 0x6d, 0x86, 0x75, 0xff, 0x9a, 0xa5, 0x58, 0xdc, 0xef, 0xa2, 0x1e, 0x6b, 0x85, 0x55, 0x0b, + 0x12, 0xc3, 0xba, 0x7f, 0xcd, 0x72, 0x62, 0x96, 0xdd, 0x5f, 0x3f, 0x46, 0x18, 0xdc, 0xe0, 0xa1, + 0xaa, 0x89, 0x69, 0x3d, 0xd3, 0xb6, 0xaf, 0x5e, 0x2c, 0x40, 0x3b, 0x35, 0x52, 0x71, 0xa6, 0x58, + 0xf4, 0x30, 0x05, 0x3d, 0x53, 0x33, 0xf3, 0xc2, 0xce, 0x2e, 0x3a, 0x39, 0xd4, 0xee, 0x1d, 0x97, + 0x43, 0xa1, 0x55, 0x92, 0x37, 0xd5, 0x52, 0x99, 0xd5, 0x89, 0x9e, 0x69, 0xfc, 0x5d, 0x04, 0x3d, + 0x5e, 0xb7, 0xba, 0x12, 0xdb, 0x99, 0xc4, 0xd4, 0x91, 0xdc, 0xeb, 0x08, 0x1e, 0xda, 0xd9, 0x45, + 0xe7, 0x87, 0x42, 0x62, 0x62, 0x0c, 0xf9, 0xe9, 0x64, 0x38, 0x58, 0x0f, 0xbc, 0xbe, 0x3f, 0xab, + 0xfc, 0x1e, 0x02, 0x5c, 0xcb, 0xff, 0xae, 0x32, 0x9d, 0x4c, 0x99, 0xa1, 0x83, 0x95, 0x69, 0x5c, + 0xab, 0x32, 0x23, 0x3b, 0xbb, 0xe8, 0x6b, 0x43, 0xbe, 0x9c, 0x69, 0x1f, 0x59, 0x9f, 0x78, 0xae, + 0x71, 0xc1, 0xd3, 0x6b, 0x39, 0xae, 0x83, 0x69, 0x70, 0xae, 0x45, 0x00, 0x3e, 0xbf, 0x60, 0x37, + 0xdf, 0xdd, 0x80, 0x78, 0xc5, 0x22, 0x8a, 0x53, 0xb8, 0x97, 0x0d, 0xd3, 0xee, 0x0b, 0xb6, 0x2c, + 0xdb, 0x3b, 0x2b, 0x16, 0xb9, 0xc9, 0xc9, 0x17, 0x0d, 0xd3, 0xa6, 0xcd, 0x38, 0xe3, 0x0a, 0x25, + 0xd0, 0x60, 0x47, 0xa6, 0xcb, 0xc9, 0x42, 0xe1, 0xa1, 0x60, 0xdf, 0x2f, 0x7f, 0xe9, 0x1b, 0xa4, + 0xc5, 0x3a, 0x23, 0x98, 0xf8, 0x45, 0xe0, 0xf9, 0x75, 0xdf, 0x95, 0xd4, 0xd5, 0x27, 0x55, 0xf4, + 0x2c, 0x00, 0xff, 0x28, 0x81, 0x9f, 0x4e, 0xcd, 0xa1, 0x9f, 0x48, 0xf0, 0x9e, 0x04, 0xed, 0x7c, + 0x82, 0xa6, 0xfd, 0x34, 0x34, 0x70, 0xba, 0x7e, 0xe2, 0xa5, 0xdb, 0x45, 0xe4, 0x13, 0xec, 0xeb, + 0x45, 0xe8, 0xf2, 0x4e, 0xa5, 0x61, 0x46, 0xd2, 0xb3, 0xfe, 0xd6, 0x35, 0x2b, 0x21, 0x06, 0x73, + 0xc2, 0xd0, 0x39, 0x69, 0x1a, 0x4e, 0xd5, 0x91, 0xd6, 0xa1, 0xf6, 0x36, 0xb2, 0x2c, 0x33, 0x9e, + 0xe4, 0xbe, 0xd9, 0x95, 0x8e, 0x39, 0xf2, 0x05, 0x31, 0x9c, 0xad, 0x9f, 0x2c, 0xe9, 0x98, 0x88, + 0x85, 0x2b, 0xf8, 0x6b, 0xcd, 0x06, 0x55, 0xba, 0xd7, 0x43, 0xc6, 0xc6, 0x4f, 0x82, 0xc6, 0x1e, + 0xb0, 0x1b, 0xf4, 0x74, 0x48, 0x50, 0xc0, 0x48, 0xf3, 0x49, 0x92, 0x3e, 0xe9, 0x81, 0xa8, 0xf3, + 0xca, 0xf7, 0x11, 0x00, 0xfd, 0x31, 0xc2, 0xac, 0x48, 0x3f, 0x44, 0x10, 0xa1, 0x8c, 0xcc, 0x3b, + 0x70, 0xca, 0x8b, 0x55, 0xe7, 0x85, 0x26, 0xbe, 0x6c, 0xe1, 0x33, 0xe8, 0xf2, 0x2a, 0xc3, 0xa9, + 0xcf, 0x35, 0xd3, 0xb3, 0x9e, 0xeb, 0x03, 0x04, 0x31, 0xe1, 0xba, 0x11, 0xa1, 0xff, 0xd0, 0x8f, + 0x10, 0xec, 0x22, 0xc0, 0xdc, 0x91, 0xc3, 0x4e, 0x95, 0x21, 0x25, 0x10, 0xf4, 0xd7, 0x9b, 0x5e, + 0xf7, 0xed, 0x1c, 0x9c, 0x6d, 0x08, 0xce, 0x70, 0xc3, 0x33, 0x0c, 0xc0, 0xe9, 0xa6, 0x1a, 0x89, + 0xff, 0xa1, 0x0b, 0x62, 0x8d, 0xaf, 0x4e, 0x40, 0x4f, 0x53, 0xd2, 0xd3, 0xd0, 0xbf, 0x3f, 0x8a, + 0xee, 0xd7, 0x01, 0x88, 0xce, 0x6b, 0x96, 0x4d, 0xf4, 0x04, 0x9d, 0x08, 0xfd, 0x31, 0x3e, 0x11, + 0x70, 0x48, 0x4c, 0xa6, 0xcc, 0x45, 0x77, 0x8d, 0x3a, 0x2b, 0xd6, 0x28, 0xff, 0x5e, 0x15, 0x75, + 0xf3, 0xe5, 0xf8, 0xd5, 0x14, 0xeb, 0x35, 0x53, 0xa3, 0x57, 0x52, 0xa3, 0x63, 0x99, 0x01, 0x88, + 0x52, 0x5e, 0x6f, 0xd7, 0x1a, 0x7c, 0x5a, 0x45, 0x01, 0xba, 0xa6, 0x8d, 0xa7, 0x5e, 0x99, 0xf3, + 0x87, 0xfd, 0xf1, 0xc0, 0x9c, 0x3f, 0x1c, 0x8e, 0x47, 0xe6, 0xfc, 0xe1, 0x40, 0x3c, 0x28, 0x3a, + 0xce, 0x3f, 0xf4, 0x03, 0x76, 0x57, 0x39, 0x1a, 0xf7, 0x65, 0xb6, 0x70, 0x7d, 0xf5, 0xcb, 0xdd, + 0xad, 0x26, 0x79, 0x25, 0x70, 0x70, 0x5e, 0xe1, 0x0d, 0x62, 0x8b, 0xec, 0x12, 0x3c, 0x2c, 0xbb, + 0xfc, 0x14, 0x3d, 0xbf, 0x4e, 0x1b, 0xfc, 0x27, 0x55, 0xf4, 0xf7, 0x08, 0xc6, 0x45, 0x72, 0x19, + 0x86, 0xd4, 0xb1, 0x52, 0xcb, 0x30, 0xf8, 0x17, 0xd4, 0x12, 0x49, 0x9f, 0x3f, 0xe2, 0xe4, 0x79, + 0x03, 0x42, 0x62, 0x5c, 0x0f, 0xa5, 0xe1, 0xf2, 0xb1, 0x47, 0xf3, 0x61, 0x23, 0xe8, 0xe0, 0x2a, + 0xa7, 0xd9, 0x88, 0x09, 0x88, 0x11, 0xe6, 0xbb, 0x9a, 0x1a, 0xe7, 0x55, 0x10, 0x1f, 0x37, 0xc9, + 0x3c, 0xc4, 0x26, 0xf3, 0xeb, 0xc4, 0xb4, 0x35, 0x8b, 0x2c, 0x56, 0x56, 0x8a, 0x5a, 0x0e, 0xbf, + 0x0d, 0x91, 0x32, 0xfb, 0xa5, 0x68, 0xe5, 0x63, 0xd4, 0x7e, 0xf1, 0x9d, 0xad, 0x1a, 0x1f, 0x6b, + 0x78, 0xc2, 0xfc, 0x71, 0xb6, 0x9c, 0xfc, 0x13, 0xe4, 0x11, 0x33, 0x55, 0xb1, 0x6c, 0xa3, 0x84, + 0x0b, 0x10, 0x53, 0x9d, 0x57, 0xca, 0x06, 0x1d, 0x33, 0x62, 0x73, 0xb2, 0xc5, 0x98, 0x64, 0x82, + 0x06, 0xdc, 0xdd, 0xc8, 0x84, 0xf3, 0x2b, 0xec, 0xee, 0x50, 0xf6, 0x21, 0xb9, 0xd3, 0x85, 0x65, + 0x3c, 0x13, 0x97, 0xde, 0xab, 0xa2, 0x8b, 0x70, 0x01, 0x92, 0x5c, 0x70, 0xc2, 0x55, 0x24, 0xb1, + 0x3c, 0xbb, 0x98, 0x98, 0x62, 0x95, 0x7e, 0xc5, 0x54, 0x6d, 0xcd, 0xd0, 0x31, 0x1a, 0x4d, 0xfe, + 0x15, 0x02, 0xec, 0x92, 0xd4, 0xe6, 0x4d, 0xf9, 0x20, 0x75, 0x2f, 0xb4, 0x56, 0xd7, 0x45, 0xf8, + 0x75, 0xeb, 0xfd, 0x17, 0x41, 0xe8, 0xe0, 0x94, 0x53, 0x5a, 0x79, 0x8d, 0x98, 0x16, 0x7e, 0x0d, + 0xa2, 0x25, 0x4d, 0x57, 0xd6, 0x89, 0x69, 0x69, 0x86, 0x2e, 0xda, 0xba, 0xfe, 0x06, 0x75, 0x97, + 0x8a, 0xd6, 0xa2, 0x69, 0xd8, 0x46, 0xce, 0x28, 0xca, 0x50, 0xd2, 0xf4, 0x65, 0x4e, 0xcd, 0x98, + 0xd5, 0x4d, 0x97, 0x59, 0x3a, 0x02, 0xb3, 0xba, 0xe9, 0x30, 0xbf, 0x1b, 0x80, 0x8e, 0x1c, 0xd3, + 0x42, 0xb1, 0x2a, 0x9a, 0x4d, 0xac, 0x3e, 0x5f, 0xc2, 0x37, 0x18, 0xc9, 0xfc, 0x0f, 0xdb, 0xaf, + 0xff, 0x0f, 0xff, 0x23, 0xb4, 0xe7, 0x4f, 0xfe, 0xbb, 0xdf, 0xfc, 0x37, 0xbf, 0x7c, 0x62, 0x69, + 0x3e, 0xab, 0x4c, 0x4e, 0x67, 0x95, 0xd1, 0xf4, 0x35, 0xe5, 0xcd, 0xa9, 0xdb, 0x4a, 0x76, 0x66, + 0x32, 0x7d, 0x75, 0xbc, 0xf6, 0x3e, 0x7d, 0x75, 0xdc, 0x79, 0x3f, 0x76, 0xed, 0x8a, 0x7c, 0x9a, + 0xbe, 0x9f, 0x9a, 0x99, 0x9c, 0x9a, 0x99, 0x4c, 0x5f, 0x56, 0x16, 0xef, 0xcc, 0xff, 0xbf, 0xd1, + 0xb1, 0xcb, 0x57, 0x1d, 0xae, 0x0b, 0xf4, 0xeb, 0xf4, 0xd4, 0xcd, 0x99, 0x69, 0xfa, 0x6f, 0x76, + 0x52, 0xb9, 0x37, 0xbb, 0x34, 0xd3, 0x0c, 0xfe, 0x60, 0xc2, 0x06, 0x79, 0x97, 0x9a, 0x12, 0x1e, + 0xa8, 0xc0, 0xcb, 0x35, 0x72, 0xb9, 0x85, 0xf8, 0x83, 0xc8, 0x1a, 0x84, 0x7f, 0xad, 0x09, 0xd9, + 0x81, 0xa2, 0x5f, 0x6a, 0x69, 0xfb, 0x54, 0x66, 0x8a, 0x12, 0xb6, 0xa0, 0xa2, 0xb2, 0x1d, 0xaa, + 0x64, 0x0b, 0x33, 0x0e, 0xa3, 0xf1, 0xe2, 0xb0, 0x68, 0x1d, 0x88, 0x70, 0xb6, 0xe9, 0x57, 0x8f, + 0x9b, 0xf6, 0xb3, 0x7b, 0xc1, 0xcf, 0x36, 0xfd, 0x5a, 0x73, 0x9f, 0x67, 0x6e, 0xb5, 0xf3, 0xd1, + 0x98, 0x65, 0x83, 0xd1, 0xb3, 0x3d, 0xf7, 0x63, 0x09, 0x22, 0x4b, 0x45, 0x8b, 0x4f, 0x26, 0x3c, + 0x09, 0x71, 0x67, 0x55, 0xb2, 0x48, 0xae, 0x62, 0x6a, 0xf6, 0x03, 0x91, 0x00, 0x0f, 0xda, 0x1c, + 0x8f, 0x09, 0xfa, 0xac, 0x20, 0xc7, 0x5f, 0x87, 0x58, 0x89, 0xe4, 0xb5, 0x4a, 0xa9, 0x86, 0x20, + 0xb5, 0x44, 0xe8, 0xe4, 0xe4, 0x2e, 0xc0, 0xab, 0xd0, 0x5e, 0x34, 0x36, 0x6a, 0xdc, 0xad, 0x37, + 0xe7, 0xa3, 0x45, 0x63, 0xc3, 0x65, 0xbd, 0x0d, 0xb1, 0x1c, 0x4b, 0x00, 0x35, 0xee, 0x56, 0x67, + 0x1a, 0x75, 0xc9, 0x82, 0x6a, 0xc2, 0x99, 0x1d, 0x38, 0xd6, 0x4d, 0x5f, 0xcd, 0x9c, 0x71, 0xd7, + 0x99, 0x6e, 0xb1, 0xce, 0xd0, 0xca, 0xc3, 0xd9, 0x38, 0xe0, 0x15, 0x47, 0xf2, 0xcf, 0x7d, 0x70, + 0xf2, 0xa6, 0xb1, 0xa1, 0x5b, 0xb6, 0x49, 0xd4, 0x12, 0xcd, 0x0a, 0xaa, 0xa9, 0x96, 0x2c, 0xd6, + 0x5f, 0x4f, 0x01, 0xd8, 0x45, 0x4b, 0xe1, 0x3b, 0x2a, 0x2d, 0xcb, 0x0e, 0x37, 0x10, 0x19, 0xff, + 0xa7, 0x55, 0x84, 0xe4, 0x88, 0xed, 0x46, 0x66, 0x05, 0xe2, 0x0c, 0x84, 0x26, 0xc0, 0x55, 0x2d, + 0xa7, 0xd2, 0x94, 0x22, 0xb1, 0xf4, 0x7b, 0x6e, 0x7f, 0x4a, 0x9a, 0xaa, 0x51, 0xb1, 0x05, 0xa3, + 0xc7, 0x4d, 0xbc, 0xf1, 0x5a, 0xe2, 0x95, 0x63, 0x76, 0x1d, 0xa5, 0x85, 0xaf, 0x42, 0x48, 0x37, + 0x94, 0x92, 0x5d, 0xb4, 0x5a, 0x39, 0x3d, 0xe3, 0xa7, 0x6e, 0x98, 0x69, 0x93, 0x83, 0xba, 0x71, + 0xdb, 0x2e, 0x5a, 0x78, 0x19, 0xc2, 0xb4, 0x9c, 0x61, 0x7c, 0xdc, 0xdd, 0x63, 0x4d, 0xad, 0xab, + 0xf3, 0xcf, 0x32, 0x3f, 0xa4, 0xd5, 0x0c, 0x7d, 0xca, 0xd0, 0x6d, 0xb2, 0x69, 0xbb, 0xb0, 0xa1, + 0x8a, 0x45, 0x28, 0xee, 0xc4, 0x99, 0xf7, 0xaa, 0xe8, 0x14, 0x9c, 0x84, 0xce, 0xa5, 0xf9, 0x6c, + 0x82, 0xf9, 0x93, 0xd8, 0x34, 0xab, 0xb3, 0x91, 0x7b, 0x35, 0x73, 0x0d, 0xa2, 0x25, 0xe6, 0x12, + 0x1e, 0x9c, 0x8b, 0x8f, 0xab, 0xc8, 0xf7, 0x7e, 0x2d, 0x40, 0xb4, 0xde, 0x79, 0xb8, 0x8b, 0x30, + 0xc4, 0x73, 0x79, 0x5d, 0x29, 0x1a, 0x6a, 0x7e, 0x45, 0x2d, 0xaa, 0x7a, 0x8e, 0x98, 0x22, 0x64, + 0x7f, 0xe6, 0x83, 0x3e, 0x8f, 0x4a, 0xf3, 0x59, 0xea, 0x0b, 0x11, 0xb7, 0x2f, 0x26, 0x66, 0x15, + 0x68, 0x6f, 0x12, 0xaf, 0xa3, 0x94, 0x12, 0x97, 0x76, 0xb6, 0xa2, 0x1e, 0xd6, 0xfd, 0xeb, 0x66, + 0x1f, 0xda, 0xfb, 0xe8, 0x27, 0xbe, 0xe0, 0xa3, 0x5d, 0x24, 0xc5, 0xdb, 0xe4, 0x3a, 0x31, 0xde, + 0x30, 0xfa, 0x3f, 0x67, 0x18, 0x03, 0x5f, 0x56, 0x18, 0xc7, 0x32, 0xc9, 0xfa, 0x30, 0xd2, 0x39, + 0xe6, 0x7f, 0xdf, 0x53, 0xcf, 0x5d, 0x49, 0x5d, 0x15, 0xbb, 0x56, 0x26, 0x74, 0x7e, 0x63, 0x35, + 0x97, 0x9b, 0x21, 0x6a, 0x9e, 0x98, 0x6f, 0x91, 0x07, 0x16, 0xfe, 0x36, 0xf4, 0x6c, 0xae, 0xe6, + 0x72, 0xca, 0x1a, 0x7b, 0xa5, 0x90, 0x22, 0xa1, 0xbd, 0x07, 0x3f, 0xe3, 0xdd, 0xbf, 0x56, 0x53, + 0xe6, 0x69, 0x4e, 0x92, 0xc1, 0xd4, 0x91, 0x1d, 0x8f, 0x10, 0x24, 0xc3, 0xbf, 0x8d, 0x02, 0x71, + 0x94, 0x44, 0x6d, 0x32, 0xde, 0x74, 0xd1, 0x05, 0x99, 0x95, 0xfc, 0x85, 0x1f, 0x06, 0x5a, 0x1b, + 0x8c, 0x65, 0xe8, 0xb4, 0xcd, 0x8a, 0x65, 0x93, 0xbc, 0x92, 0x53, 0x95, 0x8a, 0x59, 0x14, 0x47, + 0xef, 0x43, 0x9f, 0x55, 0x91, 0xff, 0x0f, 0x76, 0x51, 0xb4, 0x4c, 0x4a, 0xa9, 0xc4, 0x8a, 0x6a, + 0x91, 0x71, 0x96, 0x90, 0xc3, 0x26, 0xad, 0xd7, 0xb7, 0xb7, 0xc3, 0x62, 0x3f, 0xf2, 0x3b, 0x3e, + 0xea, 0xae, 0x76, 0x81, 0x31, 0xa5, 0xde, 0x35, 0x8b, 0xf8, 0x1e, 0x40, 0x0d, 0xb3, 0x0f, 0x8e, + 0x5c, 0x82, 0xe2, 0x9d, 0xad, 0x98, 0x47, 0x99, 0xa2, 0x66, 0xd9, 0x33, 0x6d, 0x72, 0xc4, 0xc5, + 0xc6, 0x63, 0x10, 0xd4, 0x0d, 0x25, 0x67, 0x16, 0x8f, 0x30, 0x34, 0x90, 0x1c, 0xd0, 0x8d, 0x29, + 0xb3, 0x88, 0x6f, 0x81, 0x8f, 0x72, 0x04, 0x8e, 0xac, 0x46, 0xe7, 0xce, 0x16, 0xe5, 0x70, 0x36, + 0x5e, 0x67, 0x90, 0x4c, 0x1f, 0xf1, 0x6b, 0xd0, 0xc1, 0xc2, 0x95, 0xd7, 0x2c, 0x75, 0xa5, 0x48, + 0xf2, 0x6c, 0x5b, 0xe4, 0xa0, 0xd4, 0x2e, 0xc9, 0xed, 0x94, 0xf8, 0xa6, 0xa0, 0xc5, 0x33, 0xc0, + 0x9e, 0x9d, 0xab, 0x1b, 0x7d, 0x61, 0xc6, 0xfb, 0x62, 0x53, 0x6d, 0xea, 0x87, 0xc9, 0x8c, 0x24, + 0x47, 0x29, 0xeb, 0x1d, 0xce, 0x99, 0xb9, 0x08, 0x5d, 0x1e, 0x1f, 0x89, 0x71, 0xd7, 0xf3, 0xb8, + 0x8a, 0xe0, 0x69, 0x15, 0x45, 0xf6, 0xaa, 0xc8, 0x3f, 0x7a, 0x39, 0x95, 0xfe, 0xe1, 0x2e, 0x42, + 0x99, 0x73, 0x00, 0x39, 0xb3, 0xd8, 0x6a, 0x6c, 0x66, 0x5e, 0x83, 0xa8, 0x67, 0x0c, 0xe2, 0xd4, + 0xe3, 0x2a, 0x0a, 0x09, 0x9a, 0x20, 0xa5, 0x79, 0x25, 0x75, 0xed, 0xe1, 0x2e, 0xea, 0x85, 0xae, + 0x35, 0xdb, 0x2e, 0xd7, 0xe5, 0xa1, 0x04, 0x9a, 0xf3, 0x87, 0x23, 0x71, 0x70, 0xdb, 0x91, 0x60, + 0x3c, 0x94, 0xdc, 0x0b, 0x40, 0xcf, 0x1d, 0x53, 0x2b, 0x68, 0xfa, 0xa2, 0x61, 0x14, 0xef, 0x69, + 0xf6, 0xda, 0x3d, 0xa2, 0x15, 0xd6, 0x6c, 0x3c, 0x43, 0xfb, 0x1f, 0xa3, 0x78, 0x8c, 0x7e, 0xa4, + 0x73, 0x67, 0x2b, 0x6a, 0x30, 0x28, 0x85, 0x72, 0xd2, 0x56, 0x96, 0xfe, 0x8f, 0x65, 0x08, 0xe5, + 0x8a, 0xd4, 0x7e, 0xf3, 0x18, 0x27, 0xfe, 0x78, 0x67, 0xcb, 0xe1, 0xa2, 0x61, 0x15, 0x17, 0x0a, + 0x9c, 0x57, 0xf8, 0x0c, 0x04, 0x37, 0x98, 0x9e, 0x6c, 0xf0, 0x77, 0x64, 0x02, 0x3f, 0xab, 0x22, + 0x34, 0x2a, 0x8b, 0x97, 0x78, 0x08, 0xc2, 0x65, 0x53, 0x33, 0xd8, 0x8a, 0xcc, 0xbb, 0xd5, 0x4e, + 0x46, 0xc0, 0xb6, 0xf8, 0x87, 0xa4, 0xbe, 0x84, 0xec, 0x7e, 0xc7, 0xdf, 0x45, 0x10, 0x27, 0x7a, + 0xbe, 0x6c, 0x68, 0xba, 0xad, 0x58, 0x95, 0x15, 0x8b, 0xd8, 0x34, 0x21, 0xd1, 0xd4, 0x79, 0xbd, + 0xb9, 0xa2, 0x4d, 0xdc, 0x35, 0x3c, 0x2d, 0x10, 0xb2, 0x1c, 0x60, 0x5a, 0xb7, 0xcd, 0x07, 0x99, + 0x73, 0x54, 0xf5, 0x1f, 0xec, 0x22, 0x3f, 0x48, 0x6d, 0xbc, 0xf1, 0xf8, 0x01, 0x5d, 0x13, 0x59, + 0x2a, 0x7d, 0xb8, 0x8b, 0xa4, 0x70, 0x9b, 0x1c, 0x23, 0xf5, 0x8c, 0xfd, 0x19, 0xe8, 0x69, 0x86, + 0x85, 0xe3, 0xe0, 0xbb, 0x4f, 0x78, 0x75, 0x14, 0x91, 0xe9, 0x4f, 0xdc, 0x03, 0x81, 0x75, 0xb5, + 0x58, 0x11, 0x57, 0x6f, 0x64, 0xfe, 0x30, 0x21, 0x5d, 0x43, 0x13, 0xff, 0x89, 0xde, 0xab, 0xa2, + 0x51, 0x18, 0x81, 0x97, 0xb8, 0xae, 0x09, 0xaa, 0x6c, 0x62, 0x43, 0xb3, 0xd7, 0x12, 0x5c, 0xdd, + 0x84, 0xaa, 0xe7, 0x13, 0x8b, 0x8e, 0x07, 0x42, 0x63, 0xa9, 0x74, 0x6a, 0x9c, 0x6d, 0x06, 0xfe, + 0x29, 0x82, 0xd7, 0x45, 0xbb, 0x7e, 0x05, 0x2e, 0x42, 0x37, 0x1f, 0x04, 0xe9, 0xa8, 0x07, 0x07, + 0xb0, 0x1b, 0xcf, 0x74, 0x68, 0x4a, 0xc4, 0x23, 0x74, 0x57, 0xbf, 0xaf, 0x1b, 0x1b, 0x3a, 0x9c, + 0x14, 0x4d, 0x7b, 0x8c, 0x73, 0xba, 0xa4, 0x80, 0x21, 0xc8, 0x65, 0xf7, 0x87, 0x9d, 0xd8, 0xc1, + 0x09, 0x08, 0x3b, 0x4a, 0xf4, 0x43, 0x2d, 0x64, 0x30, 0x08, 0x71, 0xc7, 0x07, 0x09, 0xe1, 0x84, + 0xb9, 0x9e, 0xfd, 0x51, 0x8a, 0xfb, 0x78, 0xe7, 0x6d, 0x14, 0x95, 0xe6, 0x9d, 0xf9, 0x15, 0x91, + 0xc9, 0xef, 0x03, 0xae, 0x05, 0xcd, 0xbd, 0xa1, 0x73, 0x17, 0x02, 0x94, 0xd7, 0xb9, 0xa2, 0x73, + 0xf1, 0xc8, 0xc1, 0xf6, 0xd4, 0x37, 0x61, 0x4f, 0xc9, 0xcb, 0xd1, 0x92, 0x3f, 0x45, 0xd0, 0xb3, + 0x68, 0x92, 0x55, 0x6d, 0x33, 0x6b, 0x9b, 0x9a, 0x5e, 0x70, 0xe5, 0xdd, 0xa0, 0x16, 0xd2, 0xf7, + 0x84, 0x8b, 0x8c, 0x64, 0x5e, 0xa2, 0xdc, 0xf0, 0x08, 0x85, 0x92, 0x01, 0xd3, 0xf7, 0x19, 0xbf, + 0xf5, 0x13, 0x7c, 0x84, 0x7c, 0xf1, 0x6d, 0x6f, 0x9b, 0xea, 0x72, 0xe1, 0x4d, 0xe8, 0x60, 0x97, + 0x06, 0x5c, 0x18, 0x89, 0xc1, 0x64, 0x8f, 0x71, 0x38, 0xe5, 0x6c, 0xda, 0x38, 0x52, 0xb7, 0xa5, + 0x03, 0xa4, 0xb6, 0x53, 0x49, 0x8b, 0x42, 0x50, 0xf2, 0xb7, 0xa0, 0xfb, 0xcd, 0xa2, 0xb1, 0xa2, + 0x16, 0xa7, 0x0c, 0x5d, 0x27, 0x39, 0xdb, 0x30, 0x99, 0x49, 0x04, 0x22, 0x05, 0xf6, 0x5a, 0x59, + 0xd7, 0x8f, 0x77, 0x0e, 0xd8, 0xb8, 0xad, 0xbb, 0xff, 0x2c, 0x50, 0x0e, 0x73, 0xe8, 0x65, 0x3d, + 0xa9, 0x43, 0xa7, 0xd8, 0xa9, 0x94, 0xc9, 0x2a, 0xf5, 0x27, 0xfe, 0x16, 0x84, 0xc5, 0xce, 0xdf, + 0x71, 0x6e, 0x58, 0x9d, 0xae, 0x9d, 0x3f, 0x36, 0x93, 0xe7, 0x20, 0x26, 0x3f, 0x42, 0xd0, 0xb3, + 0x6c, 0x14, 0x6d, 0x62, 0x9a, 0x6a, 0xd6, 0x58, 0xb5, 0x37, 0x54, 0x71, 0x74, 0x75, 0x13, 0xb0, + 0xdb, 0xaf, 0x6c, 0xd4, 0xb5, 0xea, 0x07, 0x77, 0x0c, 0x4e, 0x87, 0x93, 0xdd, 0x70, 0x9a, 0xf5, + 0x37, 0xe1, 0xd4, 0xba, 0x40, 0x57, 0x2c, 0x01, 0xef, 0x82, 0xf1, 0x03, 0xc9, 0x88, 0x38, 0x8c, + 0xec, 0xeb, 0x99, 0x69, 0x93, 0x4f, 0xae, 0x37, 0xe8, 0x22, 0x80, 0x58, 0xc3, 0x30, 0x9a, 0xb9, + 0x04, 0xfd, 0x35, 0x38, 0x57, 0x2b, 0xef, 0x94, 0x70, 0x2e, 0x44, 0xf9, 0xd2, 0xa9, 0x31, 0x71, + 0x1d, 0x6a, 0x0f, 0x41, 0xf7, 0x9d, 0x32, 0x31, 0x55, 0x5b, 0xd3, 0x0b, 0xd9, 0x07, 0x96, 0x4d, + 0x4a, 0x8d, 0x16, 0x1a, 0xd6, 0x31, 0x2d, 0xbc, 0x63, 0x39, 0x16, 0x4e, 0x43, 0x9f, 0xe1, 0x80, + 0x2b, 0x16, 0x43, 0x6f, 0x65, 0xe0, 0x09, 0xa3, 0x5e, 0x93, 0x7a, 0xfb, 0xd2, 0x70, 0xf6, 0x20, + 0xb0, 0x43, 0x8c, 0x7c, 0x24, 0xc1, 0x89, 0xb7, 0x2a, 0x2b, 0xc4, 0xd4, 0x89, 0x4d, 0xac, 0xbb, + 0xe5, 0x82, 0xa9, 0xe6, 0xc9, 0x4d, 0x53, 0xd5, 0x74, 0x4c, 0xa0, 0x87, 0xe8, 0x74, 0xa5, 0x57, + 0x2a, 0xfc, 0xb5, 0x92, 0xa7, 0xef, 0x85, 0xa5, 0xa3, 0x4d, 0x07, 0x53, 0x73, 0x28, 0x5e, 0x7c, + 0xcf, 0xb4, 0xc9, 0x98, 0x03, 0xd6, 0x89, 0x99, 0x83, 0x5e, 0x51, 0x7d, 0x34, 0xc8, 0x69, 0xdd, + 0x65, 0x76, 0x0b, 0x26, 0x2f, 0x96, 0xf0, 0xc6, 0xab, 0x70, 0xfe, 0xbe, 0xab, 0x47, 0x3d, 0xa8, + 0x22, 0x2c, 0x6a, 0xb8, 0x6e, 0xd5, 0xe0, 0x94, 0x1f, 0xf9, 0xe1, 0x74, 0x2b, 0x4b, 0xf0, 0xd7, + 0x01, 0x73, 0x38, 0xdd, 0xc8, 0x13, 0xc5, 0xd6, 0x4a, 0xc4, 0xa8, 0xf0, 0x53, 0xfe, 0x8e, 0x4c, + 0xd7, 0xcf, 0x68, 0xa7, 0x73, 0xf9, 0x32, 0x4b, 0x14, 0x43, 0xbe, 0xbe, 0xdf, 0x09, 0xc9, 0x71, + 0x46, 0xbc, 0x60, 0xe4, 0xc9, 0x12, 0x27, 0xc5, 0xdf, 0x84, 0x04, 0x07, 0x28, 0xa9, 0x9b, 0x4a, + 0x45, 0x57, 0xd7, 0x55, 0xad, 0xc8, 0x14, 0x63, 0x80, 0x39, 0xa3, 0xa2, 0xdb, 0xcc, 0x7e, 0x0e, + 0xc7, 0x57, 0xe5, 0xd0, 0x50, 0xa0, 0xef, 0x3b, 0x17, 0x06, 0xe9, 0x22, 0x7f, 0x9a, 0x31, 0xdf, + 0x56, 0x37, 0xef, 0xd6, 0x58, 0x29, 0xfc, 0x14, 0x65, 0xc4, 0x6b, 0xf0, 0x72, 0x0b, 0xf0, 0x32, + 0x31, 0x73, 0x44, 0xb7, 0xd5, 0x02, 0xbf, 0x5d, 0xd8, 0x91, 0xe9, 0x61, 0x12, 0x7e, 0x5e, 0x15, + 0xc9, 0x75, 0xc8, 0xdf, 0x97, 0x67, 0x42, 0xce, 0x1d, 0x20, 0x64, 0xd1, 0x05, 0xc0, 0x6f, 0xc3, + 0x29, 0x27, 0x76, 0xeb, 0xa4, 0xa0, 0xba, 0xbe, 0x2e, 0x19, 0x79, 0x72, 0xc8, 0xb9, 0xdc, 0x09, + 0xc1, 0xb8, 0x4c, 0x0a, 0xaa, 0xf0, 0xf0, 0x6d, 0x23, 0x4f, 0xf0, 0x1d, 0xe8, 0x13, 0x31, 0xda, + 0x8f, 0x18, 0x6a, 0x89, 0xd8, 0xcb, 0xf9, 0x1a, 0x00, 0x33, 0x23, 0x70, 0xba, 0xb9, 0x37, 0x0e, + 0xba, 0x72, 0x37, 0x0e, 0x67, 0xf7, 0x89, 0x56, 0x6c, 0xa3, 0x50, 0xa8, 0xf1, 0x74, 0x37, 0x1c, + 0x78, 0xd0, 0x36, 0xd3, 0xbd, 0x5a, 0x47, 0x3b, 0xd9, 0x87, 0x12, 0x0c, 0x2c, 0x12, 0x73, 0xd5, + 0x30, 0x4b, 0xb4, 0xb0, 0x9c, 0xd6, 0xd7, 0xe8, 0x7f, 0x34, 0x75, 0x52, 0x9d, 0x58, 0x1a, 0x99, + 0x85, 0xde, 0x32, 0x31, 0x57, 0x39, 0x7c, 0xf1, 0x15, 0x85, 0x70, 0x9a, 0xfc, 0x21, 0x99, 0x04, + 0x53, 0x26, 0x0a, 0x32, 0xff, 0x8a, 0x40, 0xcd, 0xe3, 0xd5, 0x3a, 0xa8, 0xb1, 0x1a, 0x94, 0xbf, + 0xc5, 0x54, 0x9d, 0x1f, 0x6b, 0xae, 0x20, 0x55, 0xae, 0x4e, 0xce, 0x98, 0x23, 0x47, 0x4c, 0xaf, + 0x17, 0x21, 0x5e, 0x93, 0xd6, 0x3c, 0xbb, 0x88, 0x1b, 0xa5, 0xa2, 0xb6, 0xf8, 0x23, 0x04, 0xa7, + 0x26, 0x73, 0x39, 0x52, 0xa4, 0x19, 0x8a, 0xe4, 0xc5, 0x09, 0x84, 0xa6, 0x17, 0x98, 0x1f, 0x2e, + 0x43, 0x48, 0x0c, 0x85, 0x43, 0x2c, 0x77, 0xc8, 0xf0, 0x30, 0x04, 0x79, 0xa8, 0x0f, 0x49, 0x11, + 0x82, 0x2a, 0x93, 0x84, 0x13, 0x6a, 0x4d, 0xbc, 0xb3, 0x9c, 0x6a, 0x7a, 0x01, 0x87, 0x9d, 0xf9, + 0x2f, 0x26, 0xfe, 0x07, 0x08, 0x4e, 0xb7, 0xf2, 0x0b, 0x1e, 0x85, 0xb0, 0x6e, 0x28, 0xef, 0x54, + 0x4a, 0x2b, 0xc6, 0x61, 0xda, 0xea, 0xc6, 0x1c, 0x25, 0xc3, 0x29, 0x08, 0x70, 0xfa, 0xd6, 0xca, + 0x72, 0x22, 0xe1, 0xe2, 0x5b, 0x4d, 0x5c, 0x9c, 0x6e, 0x48, 0xe0, 0x0f, 0x77, 0xd1, 0x59, 0x88, + 0xa9, 0xbf, 0x59, 0xa1, 0x2b, 0xa3, 0x4e, 0x6c, 0x7e, 0xc2, 0xd3, 0xae, 0x6e, 0x58, 0x8a, 0x5d, + 0xd8, 0x60, 0x4f, 0xc2, 0xaa, 0x1f, 0x23, 0x88, 0xcd, 0xea, 0x36, 0x4b, 0x67, 0xcb, 0xb3, 0x8b, + 0xb3, 0xfa, 0xaa, 0x81, 0x5f, 0xe0, 0x27, 0x46, 0x0a, 0xbb, 0x98, 0xce, 0x2b, 0xe6, 0x30, 0x7d, + 0x41, 0x2b, 0x53, 0x3c, 0x2f, 0xce, 0x4d, 0x85, 0xa7, 0x14, 0xfb, 0x41, 0x99, 0xfb, 0xfa, 0x28, + 0x37, 0xb0, 0x62, 0x56, 0xed, 0x81, 0xf9, 0xec, 0x3a, 0x04, 0x2d, 0x5b, 0xb5, 0x2b, 0x96, 0xf0, + 0xd8, 0xf9, 0xa6, 0x10, 0x1e, 0x05, 0xb3, 0x8c, 0x5a, 0x16, 0x5c, 0x13, 0xc1, 0x27, 0x55, 0x24, + 0xc5, 0x51, 0x72, 0x47, 0x82, 0xae, 0x7d, 0x54, 0xd4, 0x10, 0xbd, 0xb8, 0xa2, 0xe4, 0xbc, 0x86, + 0xe8, 0xc5, 0x95, 0x29, 0xfa, 0x8c, 0xcf, 0x00, 0xd0, 0x8f, 0x1e, 0xf1, 0x11, 0x99, 0x92, 0x0b, + 0x5e, 0x2c, 0x2e, 0xe6, 0xb3, 0xdb, 0xa5, 0xfc, 0x0e, 0x3e, 0x6d, 0x22, 0x54, 0x53, 0x67, 0xc9, + 0x2b, 0x22, 0xd3, 0x9f, 0x98, 0x40, 0xb7, 0xad, 0x9a, 0x05, 0x62, 0x2b, 0x05, 0xd3, 0xa8, 0x94, + 0x1d, 0xb4, 0x10, 0xab, 0xa9, 0xae, 0x1e, 0x66, 0xcc, 0x12, 0x63, 0x7d, 0x93, 0x72, 0x72, 0xa9, + 0xd4, 0x27, 0x72, 0x97, 0xdd, 0xf8, 0x1a, 0x9f, 0x80, 0xa0, 0x49, 0x54, 0xcb, 0xd0, 0x59, 0x1f, + 0x1d, 0x91, 0xc5, 0xd3, 0xc4, 0xe0, 0x7b, 0x55, 0xf4, 0x12, 0x24, 0xa1, 0xdb, 0x01, 0x65, 0x47, + 0x2d, 0x82, 0x29, 0xca, 0x36, 0xde, 0x52, 0xe3, 0xa9, 0x6b, 0xec, 0xd4, 0xb5, 0x76, 0x86, 0xf6, + 0x77, 0x12, 0x24, 0x0e, 0xd3, 0xc2, 0xb5, 0x1f, 0xed, 0xb7, 0x5f, 0xaa, 0xd9, 0x7f, 0xc2, 0x8d, + 0x9f, 0x8f, 0x2b, 0xc6, 0x9f, 0x70, 0x3f, 0x2d, 0xd6, 0xf9, 0x41, 0x0b, 0xbf, 0x02, 0x26, 0xbb, + 0xcf, 0xf8, 0x9b, 0x10, 0x2b, 0xb2, 0x93, 0x42, 0x62, 0x3a, 0xfe, 0xe2, 0xfd, 0x62, 0xfa, 0x30, + 0x7f, 0xcd, 0x0b, 0x36, 0x8f, 0xb3, 0x3a, 0x8b, 0x75, 0xef, 0x3c, 0x9e, 0x0a, 0xd6, 0x79, 0x6a, + 0xe1, 0x49, 0x15, 0xcd, 0x41, 0x27, 0x6f, 0xaf, 0xfa, 0x83, 0xdc, 0x38, 0x68, 0x07, 0xdf, 0xa4, + 0xbc, 0xd0, 0x1f, 0x60, 0x76, 0xd1, 0x1e, 0x8b, 0xa3, 0xd0, 0x1e, 0x8b, 0x6b, 0xc6, 0x7b, 0x2c, + 0xae, 0x38, 0xef, 0xb1, 0xf8, 0xef, 0xe4, 0xf7, 0x11, 0x9c, 0x69, 0xa9, 0x99, 0xe3, 0x2c, 0xd4, + 0xcc, 0x59, 0x52, 0x9d, 0xb3, 0xb0, 0x38, 0x18, 0x66, 0x8b, 0x3a, 0x3f, 0x03, 0x6e, 0xe9, 0xc0, + 0x9a, 0x8d, 0x81, 0x3a, 0x1b, 0x9d, 0xc9, 0xb0, 0x08, 0x70, 0x5b, 0xa5, 0x5d, 0x23, 0x5d, 0x91, + 0x9b, 0x06, 0xf2, 0xbc, 0xf7, 0xc8, 0x54, 0xaa, 0xab, 0x28, 0x37, 0x3d, 0xe7, 0xa0, 0xee, 0x55, + 0xc6, 0x0a, 0xb4, 0x4f, 0x96, 0x35, 0x51, 0xf0, 0x1a, 0x3a, 0xbe, 0x01, 0xc1, 0x12, 0xb1, 0xd7, + 0x8c, 0xbc, 0x38, 0xa4, 0x3b, 0xd5, 0x10, 0xb9, 0x19, 0xdb, 0x2e, 0xdf, 0x66, 0x04, 0x99, 0x0e, + 0xb6, 0x89, 0xe6, 0xee, 0xda, 0x09, 0x3e, 0xfc, 0x22, 0xf8, 0xcb, 0xaa, 0xbd, 0x26, 0x84, 0xc7, + 0x58, 0x4f, 0x65, 0xd2, 0xc1, 0xbd, 0x1d, 0xfe, 0x9e, 0x0f, 0xc9, 0xec, 0x63, 0xf2, 0x9f, 0x11, + 0xf4, 0x4e, 0x96, 0x35, 0xa7, 0x99, 0xa5, 0x2d, 0x64, 0x96, 0x09, 0xc0, 0xb7, 0xa0, 0x43, 0x2d, + 0x6b, 0x8a, 0xe1, 0x68, 0x24, 0xba, 0xa7, 0xe6, 0x37, 0x8c, 0xbc, 0xaa, 0xcb, 0xed, 0xaa, 0xd7, + 0x90, 0x14, 0x44, 0x39, 0xa9, 0xf2, 0x8e, 0x25, 0x0a, 0xf5, 0x48, 0x26, 0xca, 0x6a, 0x1d, 0xd3, + 0x3f, 0xf8, 0xc3, 0x77, 0x91, 0x0c, 0xfc, 0xfb, 0x1c, 0x75, 0xf0, 0xad, 0x27, 0x55, 0x94, 0x81, + 0x24, 0x04, 0xb9, 0x6d, 0xfd, 0x7d, 0xd0, 0x53, 0xa7, 0xc5, 0x30, 0x37, 0x2e, 0x81, 0xe0, 0x34, + 0xf8, 0x17, 0x55, 0x7b, 0xad, 0xbf, 0x07, 0x70, 0x3d, 0x05, 0xb3, 0xeb, 0x1f, 0x24, 0x88, 0xf0, + 0xd3, 0x8c, 0x9b, 0x0b, 0x59, 0x3c, 0x01, 0x5d, 0x9a, 0x6e, 0x69, 0x79, 0x9e, 0x70, 0x2d, 0x62, + 0xae, 0x13, 0x53, 0xfc, 0xe1, 0x50, 0xc7, 0x63, 0x51, 0x79, 0xf1, 0xc0, 0xc4, 0x39, 0xdd, 0x82, + 0x4b, 0x86, 0x5f, 0x07, 0x6c, 0x54, 0xec, 0x46, 0x66, 0xa9, 0x19, 0x73, 0x97, 0x20, 0xf4, 0x70, + 0x7f, 0x1b, 0x7a, 0xf6, 0x49, 0x56, 0xd6, 0xc7, 0x45, 0x8f, 0x31, 0xfc, 0xc9, 0xd6, 0x99, 0x96, + 0x1d, 0xb1, 0x83, 0x2f, 0x6e, 0x69, 0xe2, 0x46, 0xed, 0x96, 0xc7, 0xf1, 0x0a, 0xf4, 0xee, 0xd7, + 0x4f, 0x71, 0xef, 0x85, 0x1e, 0x57, 0x44, 0xf7, 0x3e, 0x1b, 0x96, 0xc7, 0x87, 0x7e, 0x5f, 0xe2, + 0x7f, 0x19, 0xe5, 0xdc, 0xfe, 0x7b, 0x11, 0xce, 0x66, 0x67, 0x97, 0xa6, 0x95, 0x85, 0xe9, 0xa5, + 0x7b, 0x77, 0xe4, 0xb7, 0x94, 0xd9, 0x85, 0xec, 0xec, 0xcd, 0x69, 0x65, 0x72, 0xe1, 0xa6, 0x72, + 0xe7, 0xee, 0x12, 0xfd, 0x1d, 0x6f, 0xc3, 0x57, 0x61, 0xf4, 0x10, 0x22, 0x7e, 0x4a, 0x37, 0xbb, + 0xb0, 0x34, 0x2d, 0x2f, 0x4c, 0x2f, 0x29, 0xcb, 0xb3, 0x8b, 0xf1, 0x00, 0x3e, 0x09, 0xdd, 0x4d, + 0xd8, 0xe2, 0x08, 0xf7, 0x41, 0x4f, 0xdd, 0x07, 0x47, 0x92, 0x84, 0x87, 0xe0, 0x7c, 0xb3, 0x2f, + 0x4d, 0xe0, 0xfd, 0xf8, 0xe5, 0x06, 0x94, 0xec, 0xb4, 0xbc, 0x3c, 0x3b, 0x35, 0x1d, 0xf7, 0xf5, + 0x47, 0x9f, 0x54, 0x51, 0x08, 0x02, 0x65, 0xd3, 0xd8, 0x7c, 0x80, 0xcf, 0xc2, 0x89, 0x7a, 0x2d, + 0x16, 0x95, 0x5b, 0x93, 0x19, 0x79, 0x76, 0x2a, 0x1e, 0xec, 0xf7, 0x6d, 0x6f, 0xa1, 0x7e, 0xff, + 0xe3, 0x2a, 0x6a, 0xcb, 0xfc, 0x2e, 0x7a, 0xfa, 0xf1, 0x40, 0xdb, 0x87, 0x1f, 0x0f, 0xb4, 0x7d, + 0xfa, 0xf1, 0x00, 0xda, 0xde, 0x1b, 0x40, 0x7f, 0xbc, 0x37, 0x80, 0xde, 0xdf, 0x1b, 0x40, 0x4f, + 0xf7, 0x06, 0xd0, 0x87, 0x7b, 0x03, 0xe8, 0xa3, 0xbd, 0x01, 0xf4, 0xf3, 0xbd, 0x81, 0xb6, 0x4f, + 0xf7, 0x06, 0xd0, 0xf7, 0x9e, 0x0d, 0xb4, 0x3d, 0x7e, 0x36, 0x80, 0x9e, 0x3e, 0x1b, 0x68, 0xfb, + 0xf0, 0xd9, 0x40, 0xdb, 0xff, 0x9f, 0x2d, 0x18, 0xe5, 0xfb, 0x85, 0x61, 0xa7, 0x39, 0x1e, 0xae, + 0x58, 0x23, 0xec, 0x07, 0xad, 0x7f, 0x2e, 0x95, 0x4d, 0x63, 0x5d, 0xcb, 0x13, 0xf3, 0x92, 0xf3, + 0x79, 0xa4, 0xbc, 0x52, 0x30, 0x46, 0xc8, 0xa6, 0x2d, 0xfe, 0x70, 0xcf, 0xfb, 0xa7, 0x87, 0x2b, + 0x41, 0x96, 0xbb, 0xc6, 0xfe, 0x2f, 0x00, 0x00, 0xff, 0xff, 0xb2, 0xc9, 0xff, 0x4a, 0x98, 0x38, + 0x00, 0x00, } func (x SiteNetwork) String() string { @@ -6277,14 +6552,14 @@ func (this *OperatingSystemType_OperatingSystemVersion) Equal(that interface{}) } return true } -func (this *PerformanceEnhancementModeType) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PerformanceEnhancementModeType) + that1, ok := that.(*KubernetesUpgradeDrain) if !ok { - that2, ok := that.(PerformanceEnhancementModeType) + that2, ok := that.(KubernetesUpgradeDrain) if ok { that1 = &that2 } else { @@ -6296,25 +6571,25 @@ func (this *PerformanceEnhancementModeType) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.PerfModeChoice == nil { - if this.PerfModeChoice != nil { + if that1.KubernetesUpgradeDrainEnableChoice == nil { + if this.KubernetesUpgradeDrainEnableChoice != nil { return false } - } else if this.PerfModeChoice == nil { + } else if this.KubernetesUpgradeDrainEnableChoice == nil { return false - } else if !this.PerfModeChoice.Equal(that1.PerfModeChoice) { + } else if !this.KubernetesUpgradeDrainEnableChoice.Equal(that1.KubernetesUpgradeDrainEnableChoice) { return false } return true } -func (this *PerformanceEnhancementModeType_PerfModeL7Enhanced) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrain_EnableUpgradeDrain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PerformanceEnhancementModeType_PerfModeL7Enhanced) + that1, ok := that.(*KubernetesUpgradeDrain_EnableUpgradeDrain) if !ok { - that2, ok := that.(PerformanceEnhancementModeType_PerfModeL7Enhanced) + that2, ok := that.(KubernetesUpgradeDrain_EnableUpgradeDrain) if ok { that1 = &that2 } else { @@ -6326,19 +6601,19 @@ func (this *PerformanceEnhancementModeType_PerfModeL7Enhanced) Equal(that interf } else if this == nil { return false } - if !this.PerfModeL7Enhanced.Equal(that1.PerfModeL7Enhanced) { + if !this.EnableUpgradeDrain.Equal(that1.EnableUpgradeDrain) { return false } return true } -func (this *PerformanceEnhancementModeType_PerfModeL3Enhanced) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrain_DisableUpgradeDrain) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*PerformanceEnhancementModeType_PerfModeL3Enhanced) + that1, ok := that.(*KubernetesUpgradeDrain_DisableUpgradeDrain) if !ok { - that2, ok := that.(PerformanceEnhancementModeType_PerfModeL3Enhanced) + that2, ok := that.(KubernetesUpgradeDrain_DisableUpgradeDrain) if ok { that1 = &that2 } else { @@ -6350,19 +6625,19 @@ func (this *PerformanceEnhancementModeType_PerfModeL3Enhanced) Equal(that interf } else if this == nil { return false } - if !this.PerfModeL3Enhanced.Equal(that1.PerfModeL3Enhanced) { + if !this.DisableUpgradeDrain.Equal(that1.DisableUpgradeDrain) { return false } return true } -func (this *AcceleratedNetworkingType) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrainConfig) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AcceleratedNetworkingType) + that1, ok := that.(*KubernetesUpgradeDrainConfig) if !ok { - that2, ok := that.(AcceleratedNetworkingType) + that2, ok := that.(KubernetesUpgradeDrainConfig) if ok { that1 = &that2 } else { @@ -6374,25 +6649,37 @@ func (this *AcceleratedNetworkingType) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.AcceleratedNetworking == nil { - if this.AcceleratedNetworking != nil { + if this.DrainNodeTimeout != that1.DrainNodeTimeout { + return false + } + if that1.DrainMaxUnavailableChoice == nil { + if this.DrainMaxUnavailableChoice != nil { return false } - } else if this.AcceleratedNetworking == nil { + } else if this.DrainMaxUnavailableChoice == nil { return false - } else if !this.AcceleratedNetworking.Equal(that1.AcceleratedNetworking) { + } else if !this.DrainMaxUnavailableChoice.Equal(that1.DrainMaxUnavailableChoice) { + return false + } + if that1.VegaUpgradeModeToggleChoice == nil { + if this.VegaUpgradeModeToggleChoice != nil { + return false + } + } else if this.VegaUpgradeModeToggleChoice == nil { + return false + } else if !this.VegaUpgradeModeToggleChoice.Equal(that1.VegaUpgradeModeToggleChoice) { return false } return true } -func (this *AcceleratedNetworkingType_Disable) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AcceleratedNetworkingType_Disable) + that1, ok := that.(*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) if !ok { - that2, ok := that.(AcceleratedNetworkingType_Disable) + that2, ok := that.(KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) if ok { that1 = &that2 } else { @@ -6404,19 +6691,19 @@ func (this *AcceleratedNetworkingType_Disable) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Disable.Equal(that1.Disable) { + if this.DrainMaxUnavailableNodeCount != that1.DrainMaxUnavailableNodeCount { return false } return true } -func (this *AcceleratedNetworkingType_Enable) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*AcceleratedNetworkingType_Enable) + that1, ok := that.(*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) if !ok { - that2, ok := that.(AcceleratedNetworkingType_Enable) + that2, ok := that.(KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) if ok { that1 = &that2 } else { @@ -6428,19 +6715,19 @@ func (this *AcceleratedNetworkingType_Enable) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Enable.Equal(that1.Enable) { + if this.DrainMaxUnavailableNodePercentage != that1.DrainMaxUnavailableNodePercentage { return false } return true } -func (this *L3PerformanceEnhancementType) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*L3PerformanceEnhancementType) + that1, ok := that.(*KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) if !ok { - that2, ok := that.(L3PerformanceEnhancementType) + that2, ok := that.(KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) if ok { that1 = &that2 } else { @@ -6452,25 +6739,19 @@ func (this *L3PerformanceEnhancementType) Equal(that interface{}) bool { } else if this == nil { return false } - if that1.PerfModeChoice == nil { - if this.PerfModeChoice != nil { - return false - } - } else if this.PerfModeChoice == nil { - return false - } else if !this.PerfModeChoice.Equal(that1.PerfModeChoice) { + if !this.DisableVegaUpgradeMode.Equal(that1.DisableVegaUpgradeMode) { return false } return true } -func (this *L3PerformanceEnhancementType_NoJumbo) Equal(that interface{}) bool { +func (this *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*L3PerformanceEnhancementType_NoJumbo) + that1, ok := that.(*KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) if !ok { - that2, ok := that.(L3PerformanceEnhancementType_NoJumbo) + that2, ok := that.(KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) if ok { that1 = &that2 } else { @@ -6482,19 +6763,19 @@ func (this *L3PerformanceEnhancementType_NoJumbo) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.NoJumbo.Equal(that1.NoJumbo) { + if !this.EnableVegaUpgradeMode.Equal(that1.EnableVegaUpgradeMode) { return false } return true } -func (this *L3PerformanceEnhancementType_Jumbo) Equal(that interface{}) bool { +func (this *PerformanceEnhancementModeType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*L3PerformanceEnhancementType_Jumbo) + that1, ok := that.(*PerformanceEnhancementModeType) if !ok { - that2, ok := that.(L3PerformanceEnhancementType_Jumbo) + that2, ok := that.(PerformanceEnhancementModeType) if ok { that1 = &that2 } else { @@ -6506,19 +6787,25 @@ func (this *L3PerformanceEnhancementType_Jumbo) Equal(that interface{}) bool { } else if this == nil { return false } - if !this.Jumbo.Equal(that1.Jumbo) { + if that1.PerfModeChoice == nil { + if this.PerfModeChoice != nil { + return false + } + } else if this.PerfModeChoice == nil { + return false + } else if !this.PerfModeChoice.Equal(that1.PerfModeChoice) { return false } return true } -func (this *InternetVIPInfo) Equal(that interface{}) bool { +func (this *PerformanceEnhancementModeType_PerfModeL7Enhanced) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*InternetVIPInfo) + that1, ok := that.(*PerformanceEnhancementModeType_PerfModeL7Enhanced) if !ok { - that2, ok := that.(InternetVIPInfo) + that2, ok := that.(PerformanceEnhancementModeType_PerfModeL7Enhanced) if ok { that1 = &that2 } else { @@ -6530,25 +6817,229 @@ func (this *InternetVIPInfo) Equal(that interface{}) bool { } else if this == nil { return false } - if this.SiteName != that1.SiteName { + if !this.PerfModeL7Enhanced.Equal(that1.PerfModeL7Enhanced) { return false } - if this.SiteNetworkType != that1.SiteNetworkType { + return true +} +func (this *PerformanceEnhancementModeType_PerfModeL3Enhanced) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PerformanceEnhancementModeType_PerfModeL3Enhanced) + if !ok { + that2, ok := that.(PerformanceEnhancementModeType_PerfModeL3Enhanced) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { return false } - if !this.Status.Equal(that1.Status) { + if !this.PerfModeL3Enhanced.Equal(that1.PerfModeL3Enhanced) { return false } return true } -func (this *InternetVIPStatus) Equal(that interface{}) bool { +func (this *AcceleratedNetworkingType) Equal(that interface{}) bool { if that == nil { return this == nil } - that1, ok := that.(*InternetVIPStatus) + that1, ok := that.(*AcceleratedNetworkingType) if !ok { - that2, ok := that.(InternetVIPStatus) + that2, ok := that.(AcceleratedNetworkingType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.AcceleratedNetworking == nil { + if this.AcceleratedNetworking != nil { + return false + } + } else if this.AcceleratedNetworking == nil { + return false + } else if !this.AcceleratedNetworking.Equal(that1.AcceleratedNetworking) { + return false + } + return true +} +func (this *AcceleratedNetworkingType_Disable) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AcceleratedNetworkingType_Disable) + if !ok { + that2, ok := that.(AcceleratedNetworkingType_Disable) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Disable.Equal(that1.Disable) { + return false + } + return true +} +func (this *AcceleratedNetworkingType_Enable) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AcceleratedNetworkingType_Enable) + if !ok { + that2, ok := that.(AcceleratedNetworkingType_Enable) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Enable.Equal(that1.Enable) { + return false + } + return true +} +func (this *L3PerformanceEnhancementType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*L3PerformanceEnhancementType) + if !ok { + that2, ok := that.(L3PerformanceEnhancementType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.PerfModeChoice == nil { + if this.PerfModeChoice != nil { + return false + } + } else if this.PerfModeChoice == nil { + return false + } else if !this.PerfModeChoice.Equal(that1.PerfModeChoice) { + return false + } + return true +} +func (this *L3PerformanceEnhancementType_NoJumbo) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*L3PerformanceEnhancementType_NoJumbo) + if !ok { + that2, ok := that.(L3PerformanceEnhancementType_NoJumbo) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.NoJumbo.Equal(that1.NoJumbo) { + return false + } + return true +} +func (this *L3PerformanceEnhancementType_Jumbo) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*L3PerformanceEnhancementType_Jumbo) + if !ok { + that2, ok := that.(L3PerformanceEnhancementType_Jumbo) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Jumbo.Equal(that1.Jumbo) { + return false + } + return true +} +func (this *InternetVIPInfo) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*InternetVIPInfo) + if !ok { + that2, ok := that.(InternetVIPInfo) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.SiteName != that1.SiteName { + return false + } + if this.SiteNetworkType != that1.SiteNetworkType { + return false + } + if !this.Status.Equal(that1.Status) { + return false + } + return true +} +func (this *InternetVIPStatus) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*InternetVIPStatus) + if !ok { + that2, ok := that.(InternetVIPStatus) if ok { that1 = &that2 } else { @@ -7573,6 +8064,82 @@ func (this *OperatingSystemType_OperatingSystemVersion) GoString() string { `OperatingSystemVersion:` + fmt.Sprintf("%#v", this.OperatingSystemVersion) + `}`}, ", ") return s } +func (this *KubernetesUpgradeDrain) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&views.KubernetesUpgradeDrain{") + if this.KubernetesUpgradeDrainEnableChoice != nil { + s = append(s, "KubernetesUpgradeDrainEnableChoice: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrainEnableChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *KubernetesUpgradeDrain_EnableUpgradeDrain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&views.KubernetesUpgradeDrain_EnableUpgradeDrain{` + + `EnableUpgradeDrain:` + fmt.Sprintf("%#v", this.EnableUpgradeDrain) + `}`}, ", ") + return s +} +func (this *KubernetesUpgradeDrain_DisableUpgradeDrain) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&views.KubernetesUpgradeDrain_DisableUpgradeDrain{` + + `DisableUpgradeDrain:` + fmt.Sprintf("%#v", this.DisableUpgradeDrain) + `}`}, ", ") + return s +} +func (this *KubernetesUpgradeDrainConfig) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&views.KubernetesUpgradeDrainConfig{") + s = append(s, "DrainNodeTimeout: "+fmt.Sprintf("%#v", this.DrainNodeTimeout)+",\n") + if this.DrainMaxUnavailableChoice != nil { + s = append(s, "DrainMaxUnavailableChoice: "+fmt.Sprintf("%#v", this.DrainMaxUnavailableChoice)+",\n") + } + if this.VegaUpgradeModeToggleChoice != nil { + s = append(s, "VegaUpgradeModeToggleChoice: "+fmt.Sprintf("%#v", this.VegaUpgradeModeToggleChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{` + + `DrainMaxUnavailableNodeCount:` + fmt.Sprintf("%#v", this.DrainMaxUnavailableNodeCount) + `}`}, ", ") + return s +} +func (this *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{` + + `DrainMaxUnavailableNodePercentage:` + fmt.Sprintf("%#v", this.DrainMaxUnavailableNodePercentage) + `}`}, ", ") + return s +} +func (this *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{` + + `DisableVegaUpgradeMode:` + fmt.Sprintf("%#v", this.DisableVegaUpgradeMode) + `}`}, ", ") + return s +} +func (this *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{` + + `EnableVegaUpgradeMode:` + fmt.Sprintf("%#v", this.EnableVegaUpgradeMode) + `}`}, ", ") + return s +} func (this *PerformanceEnhancementModeType) GoString() string { if this == nil { return "nil" @@ -10012,7 +10579,7 @@ func (m *OperatingSystemType_OperatingSystemVersion) MarshalToSizedBuffer(dAtA [ dAtA[i] = 0x1a return len(dAtA) - i, nil } -func (m *PerformanceEnhancementModeType) Marshal() (dAtA []byte, err error) { +func (m *KubernetesUpgradeDrain) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10022,21 +10589,21 @@ func (m *PerformanceEnhancementModeType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *PerformanceEnhancementModeType) MarshalTo(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrain) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *PerformanceEnhancementModeType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrain) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.PerfModeChoice != nil { + if m.KubernetesUpgradeDrainEnableChoice != nil { { - size := m.PerfModeChoice.Size() + size := m.KubernetesUpgradeDrainEnableChoice.Size() i -= size - if _, err := m.PerfModeChoice.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.KubernetesUpgradeDrainEnableChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } @@ -10044,16 +10611,16 @@ func (m *PerformanceEnhancementModeType) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *PerformanceEnhancementModeType_PerfModeL7Enhanced) MarshalTo(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrain_EnableUpgradeDrain) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *PerformanceEnhancementModeType_PerfModeL7Enhanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrain_EnableUpgradeDrain) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.PerfModeL7Enhanced != nil { + if m.EnableUpgradeDrain != nil { { - size, err := m.PerfModeL7Enhanced.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.EnableUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10065,16 +10632,16 @@ func (m *PerformanceEnhancementModeType_PerfModeL7Enhanced) MarshalToSizedBuffer } return len(dAtA) - i, nil } -func (m *PerformanceEnhancementModeType_PerfModeL3Enhanced) MarshalTo(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrain_DisableUpgradeDrain) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *PerformanceEnhancementModeType_PerfModeL3Enhanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrain_DisableUpgradeDrain) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) - if m.PerfModeL3Enhanced != nil { + if m.DisableUpgradeDrain != nil { { - size, err := m.PerfModeL3Enhanced.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.DisableUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -10082,11 +10649,11 @@ func (m *PerformanceEnhancementModeType_PerfModeL3Enhanced) MarshalToSizedBuffer i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x22 + dAtA[i] = 0x1a } return len(dAtA) - i, nil } -func (m *AcceleratedNetworkingType) Marshal() (dAtA []byte, err error) { +func (m *KubernetesUpgradeDrainConfig) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -10096,26 +10663,212 @@ func (m *AcceleratedNetworkingType) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *AcceleratedNetworkingType) MarshalTo(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrainConfig) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *AcceleratedNetworkingType) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *KubernetesUpgradeDrainConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.AcceleratedNetworking != nil { + if m.VegaUpgradeModeToggleChoice != nil { { - size := m.AcceleratedNetworking.Size() + size := m.VegaUpgradeModeToggleChoice.Size() i -= size - if _, err := m.AcceleratedNetworking.MarshalTo(dAtA[i:]); err != nil { + if _, err := m.VegaUpgradeModeToggleChoice.MarshalTo(dAtA[i:]); err != nil { return 0, err } } } - return len(dAtA) - i, nil + if m.DrainMaxUnavailableChoice != nil { + { + size := m.DrainMaxUnavailableChoice.Size() + i -= size + if _, err := m.DrainMaxUnavailableChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + if m.DrainNodeTimeout != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DrainNodeTimeout)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintTypes(dAtA, i, uint64(m.DrainMaxUnavailableNodeCount)) + i-- + dAtA[i] = 0x18 + return len(dAtA) - i, nil +} +func (m *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + i = encodeVarintTypes(dAtA, i, uint64(m.DrainMaxUnavailableNodePercentage)) + i-- + dAtA[i] = 0x20 + return len(dAtA) - i, nil +} +func (m *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DisableVegaUpgradeMode != nil { + { + size, err := m.DisableVegaUpgradeMode.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + return len(dAtA) - i, nil +} +func (m *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.EnableVegaUpgradeMode != nil { + { + size, err := m.EnableVegaUpgradeMode.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} +func (m *PerformanceEnhancementModeType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PerformanceEnhancementModeType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PerformanceEnhancementModeType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PerfModeChoice != nil { + { + size := m.PerfModeChoice.Size() + i -= size + if _, err := m.PerfModeChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *PerformanceEnhancementModeType_PerfModeL7Enhanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PerformanceEnhancementModeType_PerfModeL7Enhanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PerfModeL7Enhanced != nil { + { + size, err := m.PerfModeL7Enhanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *PerformanceEnhancementModeType_PerfModeL3Enhanced) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PerformanceEnhancementModeType_PerfModeL3Enhanced) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.PerfModeL3Enhanced != nil { + { + size, err := m.PerfModeL3Enhanced.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *AcceleratedNetworkingType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AcceleratedNetworkingType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AcceleratedNetworkingType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AcceleratedNetworking != nil { + { + size := m.AcceleratedNetworking.Size() + i -= size + if _, err := m.AcceleratedNetworking.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil } func (m *AcceleratedNetworkingType_Disable) MarshalTo(dAtA []byte) (int, error) { @@ -11723,6 +12476,102 @@ func (m *OperatingSystemType_OperatingSystemVersion) Size() (n int) { n += 1 + l + sovTypes(uint64(l)) return n } +func (m *KubernetesUpgradeDrain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.KubernetesUpgradeDrainEnableChoice != nil { + n += m.KubernetesUpgradeDrainEnableChoice.Size() + } + return n +} + +func (m *KubernetesUpgradeDrain_EnableUpgradeDrain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableUpgradeDrain != nil { + l = m.EnableUpgradeDrain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *KubernetesUpgradeDrain_DisableUpgradeDrain) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableUpgradeDrain != nil { + l = m.DisableUpgradeDrain.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *KubernetesUpgradeDrainConfig) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DrainNodeTimeout != 0 { + n += 1 + sovTypes(uint64(m.DrainNodeTimeout)) + } + if m.DrainMaxUnavailableChoice != nil { + n += m.DrainMaxUnavailableChoice.Size() + } + if m.VegaUpgradeModeToggleChoice != nil { + n += m.VegaUpgradeModeToggleChoice.Size() + } + return n +} + +func (m *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 1 + sovTypes(uint64(m.DrainMaxUnavailableNodeCount)) + return n +} +func (m *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += 1 + sovTypes(uint64(m.DrainMaxUnavailableNodePercentage)) + return n +} +func (m *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DisableVegaUpgradeMode != nil { + l = m.DisableVegaUpgradeMode.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.EnableVegaUpgradeMode != nil { + l = m.EnableVegaUpgradeMode.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *PerformanceEnhancementModeType) Size() (n int) { if m == nil { return 0 @@ -12869,71 +13718,153 @@ func (this *OperatingSystemType_OperatingSystemVersion) String() string { }, "") return s } -func (this *PerformanceEnhancementModeType) String() string { +func (this *KubernetesUpgradeDrain) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&PerformanceEnhancementModeType{`, - `PerfModeChoice:` + fmt.Sprintf("%v", this.PerfModeChoice) + `,`, + s := strings.Join([]string{`&KubernetesUpgradeDrain{`, + `KubernetesUpgradeDrainEnableChoice:` + fmt.Sprintf("%v", this.KubernetesUpgradeDrainEnableChoice) + `,`, `}`, }, "") return s } -func (this *PerformanceEnhancementModeType_PerfModeL7Enhanced) String() string { +func (this *KubernetesUpgradeDrain_EnableUpgradeDrain) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&PerformanceEnhancementModeType_PerfModeL7Enhanced{`, - `PerfModeL7Enhanced:` + strings.Replace(fmt.Sprintf("%v", this.PerfModeL7Enhanced), "Empty", "schema.Empty", 1) + `,`, + s := strings.Join([]string{`&KubernetesUpgradeDrain_EnableUpgradeDrain{`, + `EnableUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.EnableUpgradeDrain), "KubernetesUpgradeDrainConfig", "KubernetesUpgradeDrainConfig", 1) + `,`, `}`, }, "") return s } -func (this *PerformanceEnhancementModeType_PerfModeL3Enhanced) String() string { +func (this *KubernetesUpgradeDrain_DisableUpgradeDrain) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&PerformanceEnhancementModeType_PerfModeL3Enhanced{`, - `PerfModeL3Enhanced:` + strings.Replace(fmt.Sprintf("%v", this.PerfModeL3Enhanced), "L3PerformanceEnhancementType", "L3PerformanceEnhancementType", 1) + `,`, + s := strings.Join([]string{`&KubernetesUpgradeDrain_DisableUpgradeDrain{`, + `DisableUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.DisableUpgradeDrain), "Empty", "schema.Empty", 1) + `,`, `}`, }, "") return s } -func (this *AcceleratedNetworkingType) String() string { +func (this *KubernetesUpgradeDrainConfig) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AcceleratedNetworkingType{`, - `AcceleratedNetworking:` + fmt.Sprintf("%v", this.AcceleratedNetworking) + `,`, + s := strings.Join([]string{`&KubernetesUpgradeDrainConfig{`, + `DrainNodeTimeout:` + fmt.Sprintf("%v", this.DrainNodeTimeout) + `,`, + `DrainMaxUnavailableChoice:` + fmt.Sprintf("%v", this.DrainMaxUnavailableChoice) + `,`, + `VegaUpgradeModeToggleChoice:` + fmt.Sprintf("%v", this.VegaUpgradeModeToggleChoice) + `,`, `}`, }, "") return s } -func (this *AcceleratedNetworkingType_Disable) String() string { +func (this *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AcceleratedNetworkingType_Disable{`, - `Disable:` + strings.Replace(fmt.Sprintf("%v", this.Disable), "Empty", "schema.Empty", 1) + `,`, + s := strings.Join([]string{`&KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{`, + `DrainMaxUnavailableNodeCount:` + fmt.Sprintf("%v", this.DrainMaxUnavailableNodeCount) + `,`, `}`, }, "") return s } -func (this *AcceleratedNetworkingType_Enable) String() string { +func (this *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&AcceleratedNetworkingType_Enable{`, - `Enable:` + strings.Replace(fmt.Sprintf("%v", this.Enable), "Empty", "schema.Empty", 1) + `,`, + s := strings.Join([]string{`&KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{`, + `DrainMaxUnavailableNodePercentage:` + fmt.Sprintf("%v", this.DrainMaxUnavailableNodePercentage) + `,`, `}`, }, "") return s } -func (this *L3PerformanceEnhancementType) String() string { +func (this *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&L3PerformanceEnhancementType{`, + s := strings.Join([]string{`&KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{`, + `DisableVegaUpgradeMode:` + strings.Replace(fmt.Sprintf("%v", this.DisableVegaUpgradeMode), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{`, + `EnableVegaUpgradeMode:` + strings.Replace(fmt.Sprintf("%v", this.EnableVegaUpgradeMode), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PerformanceEnhancementModeType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PerformanceEnhancementModeType{`, + `PerfModeChoice:` + fmt.Sprintf("%v", this.PerfModeChoice) + `,`, + `}`, + }, "") + return s +} +func (this *PerformanceEnhancementModeType_PerfModeL7Enhanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PerformanceEnhancementModeType_PerfModeL7Enhanced{`, + `PerfModeL7Enhanced:` + strings.Replace(fmt.Sprintf("%v", this.PerfModeL7Enhanced), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PerformanceEnhancementModeType_PerfModeL3Enhanced) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PerformanceEnhancementModeType_PerfModeL3Enhanced{`, + `PerfModeL3Enhanced:` + strings.Replace(fmt.Sprintf("%v", this.PerfModeL3Enhanced), "L3PerformanceEnhancementType", "L3PerformanceEnhancementType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AcceleratedNetworkingType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AcceleratedNetworkingType{`, + `AcceleratedNetworking:` + fmt.Sprintf("%v", this.AcceleratedNetworking) + `,`, + `}`, + }, "") + return s +} +func (this *AcceleratedNetworkingType_Disable) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AcceleratedNetworkingType_Disable{`, + `Disable:` + strings.Replace(fmt.Sprintf("%v", this.Disable), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *AcceleratedNetworkingType_Enable) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AcceleratedNetworkingType_Enable{`, + `Enable:` + strings.Replace(fmt.Sprintf("%v", this.Enable), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *L3PerformanceEnhancementType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&L3PerformanceEnhancementType{`, `PerfModeChoice:` + fmt.Sprintf("%v", this.PerfModeChoice) + `,`, `}`, }, "") @@ -17880,6 +18811,311 @@ func (m *OperatingSystemType) Unmarshal(dAtA []byte) error { } return nil } +func (m *KubernetesUpgradeDrain) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: KubernetesUpgradeDrain: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: KubernetesUpgradeDrain: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &KubernetesUpgradeDrainConfig{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.KubernetesUpgradeDrainEnableChoice = &KubernetesUpgradeDrain_EnableUpgradeDrain{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.KubernetesUpgradeDrainEnableChoice = &KubernetesUpgradeDrain_DisableUpgradeDrain{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *KubernetesUpgradeDrainConfig) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: KubernetesUpgradeDrainConfig: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: KubernetesUpgradeDrainConfig: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DrainNodeTimeout", wireType) + } + m.DrainNodeTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DrainNodeTimeout |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DrainMaxUnavailableNodeCount", wireType) + } + var v uint32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.DrainMaxUnavailableChoice = &KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{v} + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DrainMaxUnavailableNodePercentage", wireType) + } + var v uint32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.DrainMaxUnavailableChoice = &KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{v} + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisableVegaUpgradeMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.VegaUpgradeModeToggleChoice = &KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{v} + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableVegaUpgradeMode", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.VegaUpgradeModeToggleChoice = &KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *PerformanceEnhancementModeType) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/pbgo/extschema/schema/views/types.vesmsg.go b/pbgo/extschema/schema/views/types.vesmsg.go index c910347e9..74c4128c6 100644 --- a/pbgo/extschema/schema/views/types.vesmsg.go +++ b/pbgo/extschema/schema/views/types.vesmsg.go @@ -821,7 +821,7 @@ var DefaultApiEndpointWithSchemaValidator = func() *ValidateApiEndpointWithSchem vrhSchemaJson := v.SchemaJsonValidationRuleHandler rulesSchemaJson := map[string]string{ "ves.io.schema.rules.message.required": "true", - "ves.io.schema.rules.string.max_bytes": "10000", + "ves.io.schema.rules.string.max_bytes": "20000", } vFn, err = vrhSchemaJson(rulesSchemaJson) if err != nil { @@ -2924,6 +2924,398 @@ func InternetVIPTargetGroupStatusTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *KubernetesUpgradeDrain) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *KubernetesUpgradeDrain) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *KubernetesUpgradeDrain) DeepCopy() *KubernetesUpgradeDrain { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &KubernetesUpgradeDrain{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *KubernetesUpgradeDrain) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *KubernetesUpgradeDrain) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return KubernetesUpgradeDrainValidator().Validate(ctx, m, opts...) +} + +type ValidateKubernetesUpgradeDrain struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateKubernetesUpgradeDrain) KubernetesUpgradeDrainEnableChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for kubernetes_upgrade_drain_enable_choice") + } + return validatorFn, nil +} + +func (v *ValidateKubernetesUpgradeDrain) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*KubernetesUpgradeDrain) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *KubernetesUpgradeDrain got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["kubernetes_upgrade_drain_enable_choice"]; exists { + val := m.GetKubernetesUpgradeDrainEnableChoice() + vOpts := append(opts, + db.WithValidateField("kubernetes_upgrade_drain_enable_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetKubernetesUpgradeDrainEnableChoice().(type) { + case *KubernetesUpgradeDrain_EnableUpgradeDrain: + if fv, exists := v.FldValidators["kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain"]; exists { + val := m.GetKubernetesUpgradeDrainEnableChoice().(*KubernetesUpgradeDrain_EnableUpgradeDrain).EnableUpgradeDrain + vOpts := append(opts, + db.WithValidateField("kubernetes_upgrade_drain_enable_choice"), + db.WithValidateField("enable_upgrade_drain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *KubernetesUpgradeDrain_DisableUpgradeDrain: + if fv, exists := v.FldValidators["kubernetes_upgrade_drain_enable_choice.disable_upgrade_drain"]; exists { + val := m.GetKubernetesUpgradeDrainEnableChoice().(*KubernetesUpgradeDrain_DisableUpgradeDrain).DisableUpgradeDrain + vOpts := append(opts, + db.WithValidateField("kubernetes_upgrade_drain_enable_choice"), + db.WithValidateField("disable_upgrade_drain"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultKubernetesUpgradeDrainValidator = func() *ValidateKubernetesUpgradeDrain { + v := &ValidateKubernetesUpgradeDrain{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhKubernetesUpgradeDrainEnableChoice := v.KubernetesUpgradeDrainEnableChoiceValidationRuleHandler + rulesKubernetesUpgradeDrainEnableChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhKubernetesUpgradeDrainEnableChoice(rulesKubernetesUpgradeDrainEnableChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for KubernetesUpgradeDrain.kubernetes_upgrade_drain_enable_choice: %s", err) + panic(errMsg) + } + v.FldValidators["kubernetes_upgrade_drain_enable_choice"] = vFn + + v.FldValidators["kubernetes_upgrade_drain_enable_choice.enable_upgrade_drain"] = KubernetesUpgradeDrainConfigValidator().Validate + + return v +}() + +func KubernetesUpgradeDrainValidator() db.Validator { + return DefaultKubernetesUpgradeDrainValidator +} + +// augmented methods on protoc/std generated struct + +func (m *KubernetesUpgradeDrainConfig) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *KubernetesUpgradeDrainConfig) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *KubernetesUpgradeDrainConfig) DeepCopy() *KubernetesUpgradeDrainConfig { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &KubernetesUpgradeDrainConfig{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *KubernetesUpgradeDrainConfig) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *KubernetesUpgradeDrainConfig) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return KubernetesUpgradeDrainConfigValidator().Validate(ctx, m, opts...) +} + +type ValidateKubernetesUpgradeDrainConfig struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateKubernetesUpgradeDrainConfig) DrainMaxUnavailableChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for drain_max_unavailable_choice") + } + return validatorFn, nil +} + +func (v *ValidateKubernetesUpgradeDrainConfig) DrainMaxUnavailableChoiceDrainMaxUnavailableNodeCountValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_DrainMaxUnavailableNodeCount, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for drain_max_unavailable_node_count") + } + return oValidatorFn_DrainMaxUnavailableNodeCount, nil +} +func (v *ValidateKubernetesUpgradeDrainConfig) DrainMaxUnavailableChoiceDrainMaxUnavailableNodePercentageValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + oValidatorFn_DrainMaxUnavailableNodePercentage, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for drain_max_unavailable_node_percentage") + } + return oValidatorFn_DrainMaxUnavailableNodePercentage, nil +} + +func (v *ValidateKubernetesUpgradeDrainConfig) VegaUpgradeModeToggleChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for vega_upgrade_mode_toggle_choice") + } + return validatorFn, nil +} + +func (v *ValidateKubernetesUpgradeDrainConfig) DrainNodeTimeoutValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewUint32ValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for drain_node_timeout") + } + + return validatorFn, nil +} + +func (v *ValidateKubernetesUpgradeDrainConfig) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*KubernetesUpgradeDrainConfig) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *KubernetesUpgradeDrainConfig got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["drain_max_unavailable_choice"]; exists { + val := m.GetDrainMaxUnavailableChoice() + vOpts := append(opts, + db.WithValidateField("drain_max_unavailable_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetDrainMaxUnavailableChoice().(type) { + case *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount: + if fv, exists := v.FldValidators["drain_max_unavailable_choice.drain_max_unavailable_node_count"]; exists { + val := m.GetDrainMaxUnavailableChoice().(*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount).DrainMaxUnavailableNodeCount + vOpts := append(opts, + db.WithValidateField("drain_max_unavailable_choice"), + db.WithValidateField("drain_max_unavailable_node_count"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage: + if fv, exists := v.FldValidators["drain_max_unavailable_choice.drain_max_unavailable_node_percentage"]; exists { + val := m.GetDrainMaxUnavailableChoice().(*KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage).DrainMaxUnavailableNodePercentage + vOpts := append(opts, + db.WithValidateField("drain_max_unavailable_choice"), + db.WithValidateField("drain_max_unavailable_node_percentage"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["drain_node_timeout"]; exists { + + vOpts := append(opts, db.WithValidateField("drain_node_timeout")) + if err := fv(ctx, m.GetDrainNodeTimeout(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["vega_upgrade_mode_toggle_choice"]; exists { + val := m.GetVegaUpgradeModeToggleChoice() + vOpts := append(opts, + db.WithValidateField("vega_upgrade_mode_toggle_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetVegaUpgradeModeToggleChoice().(type) { + case *KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode: + if fv, exists := v.FldValidators["vega_upgrade_mode_toggle_choice.disable_vega_upgrade_mode"]; exists { + val := m.GetVegaUpgradeModeToggleChoice().(*KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode).DisableVegaUpgradeMode + vOpts := append(opts, + db.WithValidateField("vega_upgrade_mode_toggle_choice"), + db.WithValidateField("disable_vega_upgrade_mode"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode: + if fv, exists := v.FldValidators["vega_upgrade_mode_toggle_choice.enable_vega_upgrade_mode"]; exists { + val := m.GetVegaUpgradeModeToggleChoice().(*KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode).EnableVegaUpgradeMode + vOpts := append(opts, + db.WithValidateField("vega_upgrade_mode_toggle_choice"), + db.WithValidateField("enable_vega_upgrade_mode"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultKubernetesUpgradeDrainConfigValidator = func() *ValidateKubernetesUpgradeDrainConfig { + v := &ValidateKubernetesUpgradeDrainConfig{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDrainMaxUnavailableChoice := v.DrainMaxUnavailableChoiceValidationRuleHandler + rulesDrainMaxUnavailableChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhDrainMaxUnavailableChoice(rulesDrainMaxUnavailableChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for KubernetesUpgradeDrainConfig.drain_max_unavailable_choice: %s", err) + panic(errMsg) + } + v.FldValidators["drain_max_unavailable_choice"] = vFn + + vrhDrainMaxUnavailableChoiceDrainMaxUnavailableNodeCount := v.DrainMaxUnavailableChoiceDrainMaxUnavailableNodeCountValidationRuleHandler + rulesDrainMaxUnavailableChoiceDrainMaxUnavailableNodeCount := map[string]string{ + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000", + } + vFnMap["drain_max_unavailable_choice.drain_max_unavailable_node_count"], err = vrhDrainMaxUnavailableChoiceDrainMaxUnavailableNodeCount(rulesDrainMaxUnavailableChoiceDrainMaxUnavailableNodeCount) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field KubernetesUpgradeDrainConfig.drain_max_unavailable_choice_drain_max_unavailable_node_count: %s", err) + panic(errMsg) + } + vrhDrainMaxUnavailableChoiceDrainMaxUnavailableNodePercentage := v.DrainMaxUnavailableChoiceDrainMaxUnavailableNodePercentageValidationRuleHandler + rulesDrainMaxUnavailableChoiceDrainMaxUnavailableNodePercentage := map[string]string{ + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "100", + } + vFnMap["drain_max_unavailable_choice.drain_max_unavailable_node_percentage"], err = vrhDrainMaxUnavailableChoiceDrainMaxUnavailableNodePercentage(rulesDrainMaxUnavailableChoiceDrainMaxUnavailableNodePercentage) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for oneof field KubernetesUpgradeDrainConfig.drain_max_unavailable_choice_drain_max_unavailable_node_percentage: %s", err) + panic(errMsg) + } + + v.FldValidators["drain_max_unavailable_choice.drain_max_unavailable_node_count"] = vFnMap["drain_max_unavailable_choice.drain_max_unavailable_node_count"] + v.FldValidators["drain_max_unavailable_choice.drain_max_unavailable_node_percentage"] = vFnMap["drain_max_unavailable_choice.drain_max_unavailable_node_percentage"] + + vrhVegaUpgradeModeToggleChoice := v.VegaUpgradeModeToggleChoiceValidationRuleHandler + rulesVegaUpgradeModeToggleChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhVegaUpgradeModeToggleChoice(rulesVegaUpgradeModeToggleChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for KubernetesUpgradeDrainConfig.vega_upgrade_mode_toggle_choice: %s", err) + panic(errMsg) + } + v.FldValidators["vega_upgrade_mode_toggle_choice"] = vFn + + vrhDrainNodeTimeout := v.DrainNodeTimeoutValidationRuleHandler + rulesDrainNodeTimeout := map[string]string{ + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900", + } + vFn, err = vrhDrainNodeTimeout(rulesDrainNodeTimeout) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for KubernetesUpgradeDrainConfig.drain_node_timeout: %s", err) + panic(errMsg) + } + v.FldValidators["drain_node_timeout"] = vFn + + return v +}() + +func KubernetesUpgradeDrainConfigValidator() db.Validator { + return DefaultKubernetesUpgradeDrainConfigValidator +} + +// augmented methods on protoc/std generated struct + func (m *L3PerformanceEnhancementType) ToJSON() (string, error) { return codec.ToJSON(m) } diff --git a/pbgo/extschema/schema/views/voltstack_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/views/voltstack_site/crudapi/api.vesapi.go index 0ca5860d9..28d6a2bc6 100644 --- a/pbgo/extschema/schema/views/voltstack_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/views/voltstack_site/crudapi/api.vesapi.go @@ -6743,10 +6743,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -7527,6 +7531,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsMasterNode": { "type": "object", "description": "Master Node is the configuration of the master node", @@ -7814,6 +7889,12 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Enable Site Local K8s API access" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "title": "Enable Drain", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "launch_ike_in_namespace": { "type": "boolean", "description": " Identify that the CE needs to run IKE in namespace", diff --git a/pbgo/extschema/schema/views/voltstack_site/object.pb.go b/pbgo/extschema/schema/views/voltstack_site/object.pb.go index 9178ba51c..32db760f1 100644 --- a/pbgo/extschema/schema/views/voltstack_site/object.pb.go +++ b/pbgo/extschema/schema/views/voltstack_site/object.pb.go @@ -231,46 +231,47 @@ func init() { } var fileDescriptor_f0389c773806d54e = []byte{ - // 621 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xc1, 0x4f, 0x13, 0x4f, - 0x14, 0xc7, 0x3b, 0x2d, 0x29, 0x64, 0x20, 0xfc, 0xf8, 0xad, 0x97, 0x8a, 0x3a, 0x92, 0x7a, 0xe1, - 0xc0, 0xce, 0x26, 0x18, 0x0f, 0x12, 0x82, 0x06, 0x54, 0x0e, 0x42, 0x34, 0xc5, 0x44, 0xe3, 0xa5, - 0x99, 0x9d, 0xbe, 0x2e, 0x23, 0xdd, 0x9d, 0xcd, 0xcc, 0x6c, 0x81, 0x83, 0x89, 0xf1, 0x2f, 0xf0, - 0xe4, 0xdf, 0x60, 0xfc, 0x2b, 0xc4, 0x93, 0x47, 0xc2, 0x89, 0xa3, 0x6c, 0x2f, 0x9c, 0x0c, 0x7f, - 0x80, 0x07, 0xd3, 0x59, 0x96, 0xb0, 0xb5, 0x22, 0x89, 0xdc, 0xde, 0xe4, 0x7d, 0xbf, 0x9f, 0xbe, - 0xbe, 0xf7, 0xf6, 0x61, 0xaf, 0x0b, 0x9a, 0x0a, 0xe9, 0x69, 0xbe, 0x09, 0x21, 0xf3, 0xba, 0x02, - 0xb6, 0xb5, 0xd7, 0x95, 0x1d, 0xa3, 0x0d, 0xe3, 0x5b, 0x4d, 0x2d, 0x0c, 0x78, 0xd2, 0x7f, 0x03, - 0xdc, 0xd0, 0x58, 0x49, 0x23, 0x9d, 0x7a, 0x66, 0xa0, 0x99, 0x81, 0x5a, 0x03, 0x2d, 0x1a, 0xa6, - 0xdd, 0x40, 0x98, 0xcd, 0xc4, 0xa7, 0x5c, 0x86, 0x5e, 0x20, 0x03, 0xe9, 0x59, 0xab, 0x9f, 0xb4, - 0xed, 0xcb, 0x3e, 0x6c, 0x94, 0x21, 0xa7, 0x6f, 0x14, 0x6b, 0x90, 0xb1, 0x11, 0x32, 0xd2, 0xa7, - 0xc9, 0xeb, 0xc5, 0xa4, 0xd9, 0x8d, 0x21, 0x4f, 0xd5, 0x07, 0x6a, 0x07, 0x0d, 0x51, 0x77, 0xc0, - 0x3e, 0xf3, 0xfb, 0xff, 0x6b, 0x16, 0x15, 0xb7, 0x87, 0x75, 0xe0, 0xfc, 0xcf, 0xd0, 0x4b, 0xb4, - 0xe8, 0x9c, 0xbe, 0x7e, 0x30, 0x82, 0xab, 0xcf, 0x6c, 0xcb, 0x9c, 0xfb, 0x78, 0x2c, 0x04, 0xc3, - 0x5a, 0xcc, 0xb0, 0x1a, 0x9a, 0x41, 0xb3, 0xe3, 0xf3, 0xb7, 0x68, 0xb1, 0x7f, 0x99, 0x70, 0x1d, - 0x0c, 0x7b, 0xb1, 0x1b, 0x43, 0xe3, 0x4c, 0xee, 0xac, 0xe1, 0xff, 0xf4, 0xae, 0x36, 0x10, 0x36, - 0xcf, 0x08, 0x65, 0x4b, 0xb8, 0x33, 0x40, 0xd8, 0xb0, 0xaa, 0x01, 0xce, 0x64, 0xe6, 0x5d, 0xcf, - 0x69, 0x0f, 0xf1, 0x88, 0x8e, 0x81, 0xd7, 0x2a, 0x16, 0x31, 0x47, 0xff, 0x3e, 0x44, 0xba, 0x11, - 0x03, 0xb7, 0x2c, 0xeb, 0x5c, 0xf8, 0x59, 0x7e, 0xff, 0xa0, 0x9a, 0x51, 0xbf, 0xee, 0xd5, 0xca, - 0x53, 0xe8, 0x60, 0xaf, 0x76, 0x5c, 0xc6, 0x8f, 0x71, 0x65, 0x15, 0x8c, 0xb3, 0xd4, 0xbe, 0xb7, - 0xc3, 0xdd, 0xbe, 0xcf, 0x0d, 0x59, 0xc4, 0x02, 0x08, 0x21, 0x32, 0xae, 0xcf, 0xb4, 0xe0, 0x6e, - 0x28, 0x23, 0x61, 0xa4, 0x9a, 0xeb, 0x8f, 0xc2, 0x15, 0xd2, 0x15, 0x51, 0x5b, 0x31, 0x6d, 0x54, - 0xc2, 0x4d, 0xa2, 0xc0, 0x55, 0xc0, 0x5a, 0x78, 0x15, 0x8f, 0x36, 0x20, 0xee, 0x30, 0x0e, 0xce, - 0xe2, 0x05, 0xa8, 0x44, 0xc3, 0x1f, 0x39, 0xdb, 0x4a, 0x18, 0xc0, 0x4f, 0x70, 0x75, 0x45, 0x01, - 0x33, 0x57, 0xc0, 0x79, 0x04, 0x1d, 0xb8, 0x02, 0xce, 0xc8, 0x9a, 0xd0, 0xff, 0xdc, 0xa0, 0xfa, - 0x4b, 0x3c, 0x96, 0x0f, 0xc4, 0x79, 0x8a, 0x47, 0x03, 0xde, 0xb4, 0xf3, 0xcc, 0x96, 0x6a, 0xfe, - 0x32, 0xf3, 0x5c, 0xed, 0x48, 0x9f, 0x75, 0xce, 0xa6, 0x5a, 0x0d, 0x78, 0x3f, 0xae, 0xff, 0x40, - 0x78, 0x62, 0xc3, 0x30, 0x93, 0xe8, 0x4b, 0xef, 0x6c, 0x26, 0x1f, 0xb2, 0xb3, 0xcf, 0xf1, 0x78, - 0x76, 0x2b, 0x9a, 0x0a, 0xda, 0xba, 0x56, 0x9e, 0xa9, 0xcc, 0x8e, 0xcf, 0xdf, 0x1c, 0xba, 0xf1, - 0x0d, 0x68, 0xf7, 0xcd, 0xcb, 0xff, 0x7f, 0x7e, 0x3b, 0x59, 0x2c, 0xb4, 0x81, 0x65, 0xae, 0xd0, - 0xce, 0x22, 0xc6, 0x5c, 0x46, 0x2d, 0x61, 0x3f, 0xd8, 0x5a, 0x65, 0x28, 0x70, 0x25, 0x17, 0xd8, - 0x6a, 0xce, 0xe9, 0x17, 0xae, 0x1d, 0x2c, 0x4d, 0xe1, 0x49, 0x3c, 0x91, 0x17, 0x48, 0x13, 0xd1, - 0x5a, 0xfe, 0x88, 0xf6, 0x8f, 0x48, 0xe9, 0xf0, 0x88, 0x94, 0x4e, 0x8e, 0x08, 0x7a, 0x97, 0x12, - 0xf4, 0x29, 0x25, 0xe8, 0x5b, 0x4a, 0xd0, 0x7e, 0x4a, 0xd0, 0x61, 0x4a, 0xd0, 0xf7, 0x94, 0xa0, - 0xe3, 0x94, 0x94, 0x4e, 0x52, 0x82, 0x3e, 0xf4, 0x48, 0xe9, 0x4b, 0x8f, 0xa0, 0xfd, 0x1e, 0x29, - 0x1d, 0xf6, 0x48, 0xe9, 0xf5, 0xab, 0x40, 0xc6, 0x5b, 0x81, 0x6d, 0x2e, 0x28, 0xc5, 0x68, 0xa2, - 0x3d, 0x1b, 0xb4, 0xa5, 0x0a, 0xdd, 0x58, 0xc9, 0xae, 0x68, 0x81, 0x72, 0xf3, 0xb4, 0x17, 0xfb, - 0x81, 0xf4, 0x60, 0xc7, 0x9c, 0x1e, 0x8f, 0x0b, 0x6e, 0x88, 0x5f, 0xb5, 0xe7, 0xe3, 0xee, 0xaf, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x93, 0xb5, 0xda, 0x30, 0x93, 0x05, 0x00, 0x00, + // 635 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0x3f, 0x4f, 0x14, 0x41, + 0x14, 0xbf, 0xe1, 0x2e, 0x07, 0x19, 0x08, 0xe2, 0xda, 0x9c, 0xa8, 0xe3, 0xe5, 0x6c, 0x28, 0xd8, + 0xd9, 0x04, 0x63, 0x21, 0x31, 0x6a, 0xc0, 0x84, 0x42, 0x88, 0xe6, 0x30, 0xd1, 0xd8, 0x9c, 0xb3, + 0xb3, 0xef, 0x96, 0x81, 0xdb, 0x9d, 0xcd, 0xcc, 0xec, 0x01, 0x85, 0x89, 0xb1, 0xb6, 0xb0, 0xf2, + 0x03, 0x58, 0x19, 0x3f, 0x80, 0xb5, 0x58, 0x59, 0x12, 0x2a, 0x4a, 0xd9, 0x6b, 0xac, 0x0c, 0x1f, + 0xc1, 0x30, 0xcb, 0x22, 0x77, 0x5e, 0x80, 0x8a, 0xee, 0x6d, 0xde, 0xef, 0xcf, 0xdb, 0x37, 0xef, + 0x3d, 0xec, 0x75, 0x41, 0x53, 0x21, 0x3d, 0xcd, 0xd7, 0x20, 0x62, 0x5e, 0x57, 0xc0, 0xa6, 0xf6, + 0xba, 0xb2, 0x63, 0xb4, 0x61, 0x7c, 0xa3, 0xa5, 0x85, 0x01, 0x4f, 0xfa, 0xeb, 0xc0, 0x0d, 0x4d, + 0x94, 0x34, 0xd2, 0x69, 0xe4, 0x04, 0x9a, 0x13, 0xa8, 0x25, 0xd0, 0x7e, 0xc2, 0xb4, 0x1b, 0x0a, + 0xb3, 0x96, 0xfa, 0x94, 0xcb, 0xc8, 0x0b, 0x65, 0x28, 0x3d, 0x4b, 0xf5, 0xd3, 0xb6, 0xfd, 0xb2, + 0x1f, 0x36, 0xca, 0x25, 0xa7, 0x6f, 0xf4, 0xd7, 0x20, 0x13, 0x23, 0x64, 0xac, 0x8f, 0x93, 0xd7, + 0xfb, 0x93, 0x66, 0x3b, 0x81, 0x22, 0xd5, 0x18, 0xa8, 0x1d, 0x34, 0xc4, 0xdd, 0x01, 0x7a, 0xfd, + 0xff, 0xff, 0x6b, 0xf5, 0x23, 0x6e, 0x0f, 0xeb, 0xc0, 0x69, 0x1b, 0x7a, 0x81, 0x16, 0x9d, 0xc2, + 0x37, 0x3e, 0x54, 0x71, 0xf5, 0x99, 0x6d, 0x99, 0x73, 0x1f, 0x8f, 0x45, 0x60, 0x58, 0xc0, 0x0c, + 0xab, 0xa1, 0x3a, 0x9a, 0x19, 0x9f, 0xbb, 0x45, 0xfb, 0xfb, 0x97, 0x03, 0x57, 0xc0, 0xb0, 0x17, + 0xdb, 0x09, 0x34, 0x4f, 0xe0, 0xce, 0x32, 0xbe, 0xa2, 0xb7, 0xb5, 0x81, 0xa8, 0x75, 0xa2, 0x30, + 0x62, 0x15, 0xee, 0x0c, 0x28, 0xac, 0x5a, 0xd4, 0x80, 0xce, 0x64, 0xce, 0x5d, 0x29, 0xd4, 0x1e, + 0xe3, 0x8a, 0x4e, 0x80, 0xd7, 0xca, 0x56, 0x62, 0x96, 0x9e, 0xff, 0x88, 0x74, 0x35, 0x01, 0x6e, + 0xb5, 0x2c, 0x73, 0xfe, 0x5b, 0xe5, 0xfd, 0xa3, 0x6a, 0xae, 0xfa, 0x63, 0xa7, 0x36, 0x32, 0x85, + 0xf6, 0x76, 0x6a, 0x9f, 0x2b, 0xb8, 0x83, 0xcb, 0x4b, 0x60, 0x1c, 0x68, 0xdf, 0xdb, 0xe2, 0xee, + 0x11, 0xcf, 0x8d, 0x58, 0xcc, 0x42, 0x88, 0x20, 0x36, 0xae, 0xcf, 0xb4, 0xe0, 0x6e, 0x24, 0x63, + 0x61, 0xa4, 0x9a, 0xad, 0x0f, 0xc5, 0x68, 0xc3, 0xe2, 0x80, 0xa9, 0xe0, 0x1f, 0xac, 0x0b, 0xda, + 0x15, 0xd2, 0x15, 0x71, 0x5b, 0x31, 0x6d, 0x54, 0xca, 0x4d, 0xaa, 0xc0, 0x55, 0xc0, 0x02, 0xbc, + 0x81, 0x47, 0x9b, 0x90, 0x74, 0x18, 0x07, 0xe7, 0xcd, 0x19, 0x8e, 0xa9, 0x86, 0x73, 0xed, 0x72, + 0xcc, 0x70, 0xaf, 0x4d, 0x25, 0x0c, 0xe0, 0x75, 0x5c, 0x5d, 0x54, 0xc0, 0xcc, 0x25, 0x79, 0x3d, + 0x81, 0x0e, 0x5c, 0x8a, 0x57, 0x84, 0x2b, 0xcb, 0x42, 0x5f, 0xd6, 0x9b, 0x35, 0x5e, 0xe2, 0xb1, + 0x62, 0x94, 0x9c, 0xa7, 0x78, 0x34, 0xe4, 0x2d, 0x3b, 0x89, 0xf9, 0x3a, 0xcc, 0x5d, 0x64, 0x12, + 0x97, 0x3a, 0xd2, 0x67, 0x9d, 0x93, 0x79, 0xac, 0x86, 0xfc, 0x28, 0x6e, 0xfc, 0x41, 0x78, 0x62, + 0xd5, 0x30, 0x93, 0xea, 0x0b, 0x6f, 0x5b, 0x0e, 0x1f, 0xb2, 0x6d, 0xcf, 0xf1, 0x78, 0x7e, 0xe5, + 0x5a, 0x0a, 0xda, 0xba, 0x36, 0x52, 0x2f, 0xcf, 0x8c, 0xcf, 0xdd, 0x1c, 0xba, 0xab, 0x4d, 0x68, + 0x1f, 0x91, 0x17, 0xae, 0x7e, 0x7d, 0x3b, 0xd9, 0x5f, 0x68, 0x13, 0xcb, 0x02, 0xa1, 0x9d, 0x07, + 0x18, 0x73, 0x19, 0x07, 0xc2, 0x9e, 0x9a, 0x5a, 0x79, 0xa8, 0xe0, 0x62, 0x01, 0xb0, 0xd5, 0x9c, + 0xc2, 0xcf, 0x5f, 0xdb, 0x7b, 0x38, 0x85, 0x27, 0xf1, 0x44, 0x51, 0x20, 0x4d, 0x45, 0xb0, 0xf0, + 0x09, 0xed, 0x1e, 0x90, 0xd2, 0xfe, 0x01, 0x29, 0x1d, 0x1e, 0x10, 0xf4, 0x2e, 0x23, 0xe8, 0x4b, + 0x46, 0xd0, 0xcf, 0x8c, 0xa0, 0xdd, 0x8c, 0xa0, 0xfd, 0x8c, 0xa0, 0x5f, 0x19, 0x41, 0xbf, 0x33, + 0x52, 0x3a, 0xcc, 0x08, 0xfa, 0xd8, 0x23, 0xa5, 0xef, 0x3d, 0x82, 0x76, 0x7b, 0xa4, 0xb4, 0xdf, + 0x23, 0xa5, 0xd7, 0xaf, 0x42, 0x99, 0x6c, 0x84, 0xb6, 0xb9, 0xa0, 0x14, 0xa3, 0xa9, 0xf6, 0x6c, + 0xd0, 0x96, 0x2a, 0x72, 0x13, 0x25, 0xbb, 0x22, 0x00, 0xe5, 0x16, 0x69, 0x2f, 0xf1, 0x43, 0xe9, + 0xc1, 0x96, 0x39, 0x3e, 0x7b, 0x67, 0x5c, 0x3f, 0xbf, 0x6a, 0x0f, 0xdf, 0xdd, 0xbf, 0x01, 0x00, + 0x00, 0xff, 0xff, 0x43, 0xb1, 0x2e, 0x75, 0x4d, 0x06, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/views/voltstack_site/pkg.vespkg.go b/pbgo/extschema/schema/views/voltstack_site/pkg.vespkg.go index f8c696b1f..921354002 100644 --- a/pbgo/extschema/schema/views/voltstack_site/pkg.vespkg.go +++ b/pbgo/extschema/schema/views/voltstack_site/pkg.vespkg.go @@ -156,39 +156,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", @@ -207,39 +207,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", @@ -269,39 +269,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "create_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", @@ -317,39 +317,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "replace_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", @@ -365,39 +365,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", @@ -421,39 +421,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "items.#.get_spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "items.#.get_spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", @@ -552,39 +552,39 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.ethernet_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.interface_list.interfaces.#.loopback_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.sli_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_network_config.slo_config.static_v6_route_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_device_list.storage_devices.#.netapp_trident.netapp_backend_ontap_nas.auto_export_cidrs.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_address_choice", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.custom_storage_config.storage_interface_list.storage_interfaces.#.storage_interface.ipv6_auto_config", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.address_ipv6", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.local_control_plane.bgp_config.peers.#.external.family_inet_v6", diff --git a/pbgo/extschema/schema/views/voltstack_site/public_crudapi.pb.go b/pbgo/extschema/schema/views/voltstack_site/public_crudapi.pb.go index ac1ac4894..921e771a9 100644 --- a/pbgo/extschema/schema/views/voltstack_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/views/voltstack_site/public_crudapi.pb.go @@ -1059,109 +1059,110 @@ func init() { } var fileDescriptor_49adab15724d2a06 = []byte{ - // 1632 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x1b, 0xc7, - 0x1d, 0xd5, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb1, 0x9e, 0xda, 0x32, 0xc5, 0xba, 0x2c, 0x4b, 0x1b, - 0x85, 0x2a, 0x94, 0xbb, 0xaa, 0x5c, 0xc3, 0xb5, 0xea, 0xba, 0xa6, 0xa4, 0x95, 0x20, 0x55, 0xb6, - 0x8c, 0x25, 0xe5, 0x0a, 0xbd, 0x2c, 0x96, 0xcb, 0x21, 0xbd, 0x15, 0xb9, 0xbb, 0xdd, 0x19, 0x52, - 0x16, 0x0c, 0xa1, 0xae, 0x0f, 0x3d, 0xe5, 0x90, 0x20, 0x37, 0x23, 0x87, 0xc0, 0x40, 0x80, 0x5c, - 0x72, 0xcb, 0x21, 0x80, 0x2e, 0xbe, 0xc5, 0xf0, 0x21, 0x30, 0x92, 0x1c, 0x7c, 0xc8, 0x21, 0xa6, - 0x82, 0xc0, 0x40, 0x2e, 0x46, 0xf2, 0x0f, 0x04, 0x3b, 0xb3, 0x4b, 0x93, 0x14, 0x6d, 0x2f, 0x19, - 0x9d, 0xb8, 0x33, 0xbf, 0x79, 0x6f, 0xe6, 0xfd, 0xbe, 0x38, 0xbb, 0xf0, 0x52, 0x13, 0x13, 0xd1, - 0xb0, 0x24, 0xa2, 0xdf, 0xc6, 0x75, 0x4d, 0x6a, 0x1a, 0x78, 0x97, 0x48, 0x4d, 0xab, 0x46, 0x09, - 0xd5, 0xf4, 0x1d, 0x95, 0x18, 0x14, 0x4b, 0x76, 0xa3, 0x54, 0x33, 0x74, 0x55, 0x77, 0x1a, 0x65, - 0xcd, 0x36, 0x44, 0xdb, 0xb1, 0xa8, 0x85, 0xb2, 0x1c, 0x28, 0x72, 0xa0, 0xc8, 0x80, 0x62, 0x37, - 0x30, 0x95, 0xab, 0x1a, 0xf4, 0x76, 0xa3, 0x24, 0xea, 0x56, 0x5d, 0xaa, 0x5a, 0x55, 0x4b, 0x62, - 0xd0, 0x52, 0xa3, 0xc2, 0x46, 0x6c, 0xc0, 0x9e, 0x38, 0x65, 0xea, 0x6c, 0xd5, 0xb2, 0xaa, 0x35, - 0x2c, 0x69, 0xb6, 0x21, 0x69, 0xa6, 0x69, 0x51, 0x8d, 0x1a, 0x96, 0x49, 0x3c, 0xeb, 0xaf, 0x3d, - 0x6b, 0x9b, 0x03, 0xd7, 0x6d, 0xba, 0xe7, 0x19, 0x53, 0xdd, 0x32, 0xb0, 0xe3, 0x58, 0x4e, 0x1b, - 0xd8, 0x6d, 0xb3, 0xec, 0x4e, 0xd6, 0xe9, 0x6e, 0x23, 0xdd, 0xb3, 0xb1, 0x6f, 0xca, 0xf6, 0xb8, - 0x06, 0x13, 0x6c, 0x36, 0x7b, 0xe0, 0x99, 0xa3, 0xee, 0x53, 0xbb, 0x57, 0xfc, 0xb6, 0x9f, 0x83, - 0x3b, 0xb7, 0x91, 0x02, 0x44, 0xc0, 0x2a, 0xfd, 0x1b, 0xeb, 0xd4, 0x03, 0x88, 0x01, 0x00, 0x1d, - 0x1b, 0x64, 0x3f, 0x05, 0x70, 0x7c, 0xc9, 0xc1, 0x1a, 0xc5, 0x0a, 0xfe, 0x4f, 0x03, 0x13, 0x8a, - 0xfe, 0x0e, 0x63, 0x75, 0x4c, 0xb5, 0xb2, 0x46, 0xb5, 0x24, 0xc8, 0x80, 0x99, 0xc4, 0xfc, 0x39, - 0xb1, 0x3b, 0x9c, 0x9b, 0x6c, 0x43, 0x8e, 0xba, 0x8e, 0xa9, 0x56, 0xdc, 0xb3, 0xb1, 0xd2, 0x06, - 0xa1, 0x7f, 0xc2, 0x08, 0xb1, 0xb1, 0x9e, 0x0c, 0x31, 0xf0, 0xbc, 0xf8, 0xf6, 0x5c, 0x10, 0x39, - 0x57, 0xc1, 0xc6, 0xba, 0xcb, 0xb5, 0x38, 0xf9, 0x60, 0x7f, 0xcc, 0xa5, 0x10, 0xab, 0xba, 0xea, - 0xfe, 0x2a, 0x8c, 0x70, 0x21, 0xfe, 0xe4, 0x6a, 0x94, 0xef, 0x9d, 0xbd, 0x17, 0x82, 0x13, 0xfe, - 0xb1, 0x89, 0x6d, 0x99, 0x04, 0xa3, 0x2b, 0x47, 0xce, 0x9d, 0xe9, 0x7b, 0xee, 0x55, 0x4c, 0xfb, - 0x1c, 0x7a, 0x13, 0x4e, 0x92, 0x3d, 0x42, 0x71, 0x5d, 0x6d, 0x93, 0x84, 0x19, 0xc9, 0xef, 0x7b, - 0x48, 0x0a, 0x6c, 0xd5, 0x51, 0xaa, 0x09, 0x0e, 0xbf, 0xee, 0x13, 0x16, 0xbb, 0xbc, 0x20, 0x05, - 0xf1, 0xc2, 0x2a, 0xa6, 0x03, 0xb8, 0xe0, 0x05, 0x80, 0x13, 0x0a, 0xb6, 0x6b, 0x9a, 0xde, 0x0e, - 0xdd, 0xb5, 0x23, 0x2e, 0x38, 0xdf, 0xd7, 0x05, 0x1e, 0xac, 0x8f, 0x1b, 0xb6, 0xbb, 0x4e, 0x7d, - 0x21, 0xc8, 0xa9, 0x3d, 0xb2, 0xb7, 0x9c, 0x1c, 0x49, 0x50, 0x70, 0x30, 0xb1, 0x1a, 0x8e, 0x8e, - 0xd5, 0x26, 0x76, 0x88, 0x61, 0x99, 0xcc, 0xc3, 0xf1, 0xc5, 0xc8, 0x8b, 0x03, 0x00, 0x94, 0x49, - 0xdf, 0x7a, 0x8b, 0x1b, 0x3b, 0xa5, 0x9e, 0x84, 0x93, 0x6d, 0xa5, 0x3c, 0xda, 0xd9, 0x87, 0x00, - 0xc2, 0x55, 0x4c, 0x7d, 0xe5, 0x67, 0x61, 0xdc, 0xd4, 0xea, 0x98, 0xd8, 0x9a, 0x8e, 0x99, 0xf4, - 0xb8, 0xf2, 0x6a, 0x02, 0x21, 0x18, 0x71, 0x07, 0x4c, 0x55, 0x5c, 0x61, 0xcf, 0xa8, 0x04, 0xdd, - 0x1d, 0x19, 0x99, 0x5a, 0xb1, 0x9c, 0xba, 0x46, 0xd9, 0x71, 0x26, 0xe6, 0x2f, 0x07, 0x0c, 0x95, - 0x7f, 0x94, 0x15, 0x06, 0x5e, 0xb2, 0xca, 0x58, 0x99, 0x70, 0xba, 0xe6, 0xb2, 0x9f, 0x44, 0x61, - 0xa2, 0x63, 0x25, 0x52, 0x60, 0x42, 0x67, 0x49, 0xcb, 0x76, 0xf4, 0x9c, 0xfc, 0xa7, 0xe0, 0x05, - 0xe2, 0xa9, 0x55, 0x20, 0x67, 0x71, 0x77, 0x41, 0x5b, 0x70, 0xcc, 0xe1, 0xbe, 0xe1, 0xa4, 0xe1, - 0xe0, 0x55, 0xd7, 0x9d, 0x3d, 0x4a, 0xc2, 0xe3, 0x61, 0xb4, 0xfd, 0xc2, 0x15, 0x79, 0x43, 0xb8, - 0xba, 0xca, 0x6f, 0xf4, 0x38, 0xca, 0xef, 0xc4, 0xb1, 0x94, 0x5f, 0xf4, 0x38, 0xcb, 0x0f, 0x6d, - 0xc2, 0x28, 0xa1, 0x1a, 0x6d, 0x90, 0xe4, 0x87, 0x1f, 0x80, 0x4c, 0x78, 0x26, 0x31, 0x3f, 0x17, - 0x84, 0xb9, 0xc0, 0x30, 0xfc, 0xd0, 0x8b, 0xe1, 0x47, 0xfb, 0x40, 0xf1, 0x68, 0xd0, 0x1a, 0x3c, - 0xe9, 0xe0, 0x0a, 0x76, 0x1c, 0xc3, 0xac, 0xaa, 0xbc, 0x91, 0x93, 0x64, 0x8c, 0x31, 0x9f, 0x7d, - 0x4d, 0xe9, 0x56, 0x98, 0x5e, 0xa1, 0x0d, 0xe3, 0xf3, 0x04, 0xdd, 0x82, 0xc9, 0x32, 0xae, 0x61, - 0x8a, 0xcb, 0x2a, 0xb7, 0xe1, 0x72, 0x9b, 0x31, 0x1e, 0x80, 0x71, 0xca, 0x43, 0x2b, 0x1e, 0xd8, - 0xe7, 0xdd, 0x86, 0xd3, 0x65, 0x83, 0x68, 0xa5, 0x5a, 0x3f, 0x62, 0x18, 0x80, 0xf8, 0x8c, 0x0f, - 0xef, 0x61, 0xee, 0xa8, 0xf0, 0xf5, 0x48, 0x0c, 0x08, 0xa1, 0xec, 0x47, 0x00, 0x26, 0x36, 0x0c, - 0x12, 0xb0, 0xaa, 0x7f, 0x07, 0xc7, 0x6a, 0x5a, 0x09, 0xd7, 0xd4, 0x8a, 0x51, 0xa3, 0xd8, 0xf1, - 0xaa, 0x3b, 0xc1, 0xe6, 0x56, 0xd8, 0x14, 0x3a, 0x07, 0xc7, 0x1d, 0x6c, 0x5b, 0x0e, 0x55, 0x2b, - 0x06, 0xae, 0x95, 0x49, 0x32, 0x9c, 0x09, 0xcf, 0xc4, 0x95, 0x31, 0x3e, 0xb9, 0xc2, 0xe6, 0xd0, - 0x1c, 0x3c, 0xe5, 0x2d, 0xe2, 0x41, 0xf1, 0xd7, 0x46, 0xd8, 0x5a, 0xc4, 0x6d, 0x3c, 0x84, 0x1c, - 0x91, 0xfd, 0x26, 0x0a, 0x05, 0x7e, 0x4e, 0x5e, 0xd8, 0x6b, 0x14, 0xd7, 0xd1, 0x14, 0x8c, 0x52, - 0x6c, 0x6a, 0x26, 0x65, 0x39, 0x17, 0x57, 0xbc, 0xd1, 0x10, 0xad, 0x49, 0x80, 0xe1, 0x86, 0x51, - 0xe6, 0xdd, 0x51, 0x71, 0x1f, 0x51, 0x06, 0x26, 0xca, 0x98, 0xe8, 0x8e, 0xc1, 0x6e, 0x0f, 0xc9, - 0x04, 0x57, 0xda, 0x31, 0x85, 0x52, 0x30, 0xe6, 0xbb, 0x39, 0x39, 0x96, 0x01, 0x33, 0x31, 0xa5, - 0x3d, 0x46, 0xdb, 0x30, 0xca, 0x9c, 0xc2, 0x25, 0x25, 0xe6, 0xaf, 0x05, 0xc9, 0xd9, 0x5e, 0x7d, - 0xe2, 0x06, 0xa3, 0x90, 0x4d, 0xea, 0xec, 0x29, 0x1e, 0x1f, 0xaa, 0xc2, 0x44, 0xc7, 0x5d, 0xcc, - 0xcb, 0x06, 0x79, 0x28, 0xfa, 0xfc, 0x2b, 0x1e, 0xbe, 0x47, 0x27, 0x33, 0xba, 0x0c, 0xa1, 0xb5, - 0x6b, 0x62, 0x47, 0x75, 0xc9, 0x92, 0x71, 0x56, 0xd4, 0xa9, 0x9e, 0x7d, 0x6e, 0x19, 0x78, 0xd7, - 0xcf, 0xb9, 0x38, 0x5b, 0xed, 0xce, 0x74, 0x35, 0xa6, 0xf1, 0xe3, 0x68, 0x4c, 0x13, 0xbf, 0xa8, - 0x31, 0xad, 0xc3, 0x58, 0x15, 0x53, 0xd6, 0x54, 0xbc, 0x16, 0x37, 0x68, 0x73, 0x52, 0x4e, 0x54, - 0xf9, 0x00, 0x15, 0x21, 0xf4, 0x52, 0x96, 0x60, 0xea, 0xb5, 0x8d, 0x21, 0x1b, 0x52, 0x9c, 0x13, - 0x15, 0x30, 0x4d, 0x5d, 0x86, 0x89, 0x8e, 0x58, 0xbb, 0xd9, 0xb8, 0x83, 0xf7, 0xbc, 0xcc, 0x75, - 0x1f, 0xd1, 0x29, 0x38, 0xda, 0xd4, 0x6a, 0x0d, 0x3f, 0x69, 0xf9, 0x60, 0x21, 0xf4, 0x17, 0x90, - 0xba, 0x0a, 0x85, 0xde, 0x38, 0x0e, 0x82, 0x5f, 0x8f, 0xc4, 0x46, 0x85, 0x68, 0xf6, 0x1d, 0x00, - 0xc7, 0x3a, 0xf3, 0x03, 0xad, 0xc3, 0x51, 0x83, 0xe2, 0x3a, 0x49, 0xf2, 0x9e, 0xfb, 0xe7, 0x61, - 0x12, 0x4c, 0xe1, 0x14, 0x68, 0x0e, 0x46, 0xf9, 0x0b, 0x40, 0x32, 0xc4, 0xc8, 0x92, 0x3d, 0x64, - 0xb2, 0x6b, 0x64, 0x6e, 0xf6, 0xd6, 0x65, 0x77, 0xe0, 0xf8, 0x32, 0x6b, 0x8d, 0xc3, 0x5f, 0x36, - 0x66, 0xa0, 0x50, 0xd1, 0x8c, 0x9a, 0x6a, 0x54, 0xda, 0x2d, 0x94, 0x95, 0x77, 0x4c, 0x99, 0x70, - 0xe7, 0xd7, 0x2a, 0x7e, 0x6b, 0x9c, 0xfd, 0x11, 0xc0, 0xd3, 0x7d, 0x2f, 0x17, 0x28, 0x05, 0xa7, - 0x56, 0xe5, 0xa2, 0xaa, 0x14, 0x6e, 0xaa, 0x2b, 0x9b, 0xca, 0xf5, 0x7c, 0x51, 0x5d, 0x96, 0x57, - 0xf2, 0x5b, 0x1b, 0x45, 0x61, 0x04, 0xfd, 0x06, 0x4e, 0xf7, 0xd8, 0x56, 0x36, 0x15, 0x75, 0x49, - 0x91, 0xf3, 0x45, 0x59, 0x00, 0x28, 0x0d, 0x53, 0x7d, 0xcc, 0x8a, 0x7c, 0x73, 0x23, 0xbf, 0x24, - 0x0b, 0x21, 0x34, 0x0d, 0x4f, 0xf7, 0xd8, 0x0b, 0xc5, 0x7c, 0x71, 0xab, 0x20, 0x84, 0xd1, 0x19, - 0xf8, 0xab, 0x1e, 0x93, 0x22, 0xe7, 0x97, 0x85, 0x08, 0x3a, 0x0f, 0x33, 0x47, 0x0c, 0x2b, 0xb2, - 0xa2, 0xac, 0xdd, 0x58, 0x55, 0x37, 0x17, 0xd7, 0xe5, 0xa5, 0x62, 0x41, 0x18, 0xed, 0xb3, 0x6a, - 0x51, 0xd9, 0xfc, 0x87, 0x7c, 0x83, 0x2f, 0x96, 0x6f, 0x2c, 0xc9, 0x05, 0x21, 0x3a, 0xff, 0x10, - 0xc2, 0x70, 0xfe, 0xe6, 0x1a, 0xfa, 0x09, 0xc0, 0x28, 0xbf, 0xe9, 0xa0, 0xc1, 0x6f, 0x45, 0xa9, - 0xf9, 0x41, 0x20, 0xde, 0x35, 0xf2, 0x7f, 0xa0, 0xf5, 0x79, 0xf2, 0xaf, 0x95, 0x8b, 0x77, 0xf4, - 0x9c, 0x6b, 0xce, 0xd5, 0x35, 0x53, 0xab, 0xe2, 0x3a, 0x36, 0x69, 0xae, 0xa4, 0x11, 0x43, 0xcf, - 0x35, 0x08, 0x76, 0xfe, 0xd8, 0xc4, 0x24, 0x67, 0x58, 0x39, 0xc3, 0xac, 0x38, 0x1a, 0xa1, 0x4e, - 0x43, 0xa7, 0x0d, 0x07, 0xe7, 0x76, 0x1d, 0x83, 0xe2, 0xfb, 0x5f, 0x7d, 0xf7, 0x7e, 0xe8, 0x4a, - 0xf6, 0x92, 0xf7, 0x1e, 0x2c, 0xb5, 0xf3, 0x80, 0x48, 0x77, 0xfd, 0x8e, 0x21, 0xb6, 0x27, 0xf7, - 0x7b, 0x5e, 0xc5, 0xc8, 0x02, 0x98, 0x45, 0x3f, 0x00, 0x18, 0x5e, 0xc5, 0x14, 0x89, 0x81, 0x2f, - 0x9e, 0x5c, 0xaf, 0x34, 0xe0, 0x45, 0x35, 0x7b, 0x1f, 0x3c, 0xfe, 0x2c, 0xe4, 0x0a, 0xfe, 0xdb, - 0x1b, 0x04, 0xd7, 0x2d, 0xd3, 0xa0, 0xd6, 0xeb, 0x34, 0x3b, 0x58, 0x2b, 0x33, 0xc9, 0x97, 0xd0, - 0xc5, 0x7e, 0x92, 0x5f, 0xaf, 0x94, 0xdb, 0xf6, 0xd1, 0xf7, 0x00, 0x46, 0xdc, 0xda, 0x44, 0x52, - 0xf0, 0x2a, 0xe6, 0x7a, 0xe7, 0x06, 0x2d, 0xfb, 0xec, 0xdd, 0xe3, 0xd3, 0x3b, 0x87, 0xc4, 0xc1, - 0xf4, 0xa2, 0xff, 0x87, 0xe0, 0x09, 0xef, 0x86, 0x8d, 0x86, 0xb8, 0x8e, 0xa7, 0x2e, 0x0c, 0x84, - 0xf1, 0x14, 0xbf, 0x77, 0x2c, 0xf9, 0xbc, 0x91, 0x5a, 0x1d, 0x32, 0x9f, 0x7b, 0x16, 0xed, 0xbb, - 0xf9, 0xfd, 0x35, 0x80, 0x51, 0xde, 0x40, 0x83, 0x55, 0x75, 0x57, 0xb3, 0x4d, 0x4d, 0x89, 0xfc, - 0xd3, 0x8e, 0xe8, 0x7f, 0xda, 0x11, 0xe5, 0xba, 0x4d, 0xf7, 0xb2, 0xff, 0x3d, 0x0e, 0xa1, 0x0b, - 0xb3, 0xc3, 0x65, 0xf1, 0x02, 0x98, 0x4d, 0x99, 0x8f, 0x0e, 0x40, 0xe8, 0xcb, 0x03, 0xf0, 0x87, - 0x00, 0x92, 0xf8, 0x3f, 0xed, 0xb3, 0x03, 0x00, 0x5a, 0x07, 0x40, 0x1a, 0xf0, 0x0f, 0xfa, 0xfe, - 0x17, 0xc9, 0x90, 0x00, 0x16, 0x1f, 0x80, 0x27, 0x57, 0x47, 0x97, 0x94, 0xad, 0xe5, 0x8d, 0xa7, - 0xcf, 0xd3, 0x23, 0xcf, 0x9e, 0xa7, 0x47, 0x5e, 0x3e, 0x4f, 0x83, 0x7b, 0xad, 0x34, 0xf8, 0xb8, - 0x95, 0x06, 0x8f, 0x5b, 0x69, 0xf0, 0xb4, 0x95, 0x06, 0xdf, 0xb6, 0xd2, 0xe0, 0x45, 0x2b, 0x3d, - 0xf2, 0xb2, 0x95, 0x06, 0xef, 0x1e, 0xa6, 0x47, 0x1e, 0x1d, 0xa6, 0xc1, 0xd3, 0xc3, 0xf4, 0xc8, - 0xb3, 0xc3, 0xf4, 0xc8, 0xbf, 0xb6, 0xab, 0x96, 0xbd, 0x53, 0x65, 0x7b, 0x61, 0xc7, 0xd1, 0xc4, - 0x06, 0x91, 0xd8, 0x83, 0xfb, 0xe2, 0x98, 0xb3, 0x1d, 0xab, 0x69, 0x94, 0xb1, 0x93, 0xf3, 0xcd, - 0x92, 0x5d, 0xaa, 0x5a, 0x12, 0xbe, 0x43, 0xbd, 0x6f, 0x49, 0x6f, 0xf8, 0xa4, 0x54, 0x8a, 0xb2, - 0xe8, 0x5c, 0xf8, 0x39, 0x00, 0x00, 0xff, 0xff, 0xa4, 0xd2, 0xe5, 0x32, 0x32, 0x14, 0x00, 0x00, + // 1647 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4f, 0x6c, 0x1b, 0x4b, + 0x19, 0xcf, 0xd8, 0x8e, 0x6b, 0x8f, 0xf3, 0x67, 0xdf, 0xf0, 0x5e, 0x9e, 0x63, 0x8a, 0x31, 0x7e, + 0x4f, 0x28, 0x44, 0x78, 0x37, 0xa4, 0x3c, 0x95, 0x46, 0x55, 0xa9, 0x93, 0x6c, 0xa2, 0x84, 0xb4, + 0xa9, 0xd6, 0x4e, 0x89, 0x38, 0xb0, 0x5a, 0xaf, 0xc7, 0xee, 0x12, 0x7b, 0x77, 0x99, 0x19, 0x3b, + 0x8d, 0x50, 0xa4, 0xaa, 0x67, 0x90, 0x40, 0x48, 0x1c, 0x2a, 0x0e, 0x50, 0x81, 0x54, 0x0e, 0xdc, + 0x7a, 0x40, 0xca, 0xa5, 0x37, 0xaa, 0x1e, 0x50, 0x05, 0x97, 0x22, 0x71, 0xa0, 0x0e, 0x87, 0x1e, + 0x2b, 0x4e, 0x1c, 0xd1, 0xce, 0xec, 0xba, 0xb6, 0xe3, 0xb6, 0x6b, 0xbf, 0xa8, 0x27, 0xef, 0xce, + 0xf7, 0xfd, 0x7e, 0x33, 0xf3, 0xfb, 0xfe, 0xe8, 0xf3, 0xc2, 0xcb, 0x6d, 0x4c, 0x65, 0xcb, 0x51, + 0xa8, 0x79, 0x07, 0x37, 0x0d, 0xa5, 0x6d, 0xe1, 0x43, 0xaa, 0xb4, 0x9d, 0x06, 0xa3, 0xcc, 0x30, + 0x0f, 0x74, 0x6a, 0x31, 0xac, 0xb8, 0xad, 0x4a, 0xc3, 0x32, 0x75, 0x93, 0xb4, 0xaa, 0x86, 0x6b, + 0xc9, 0x2e, 0x71, 0x98, 0x83, 0xf2, 0x02, 0x28, 0x0b, 0xa0, 0xcc, 0x81, 0x72, 0x3f, 0x30, 0x53, + 0xa8, 0x5b, 0xec, 0x4e, 0xab, 0x22, 0x9b, 0x4e, 0x53, 0xa9, 0x3b, 0x75, 0x47, 0xe1, 0xd0, 0x4a, + 0xab, 0xc6, 0xdf, 0xf8, 0x0b, 0x7f, 0x12, 0x94, 0x99, 0x8b, 0x75, 0xc7, 0xa9, 0x37, 0xb0, 0x62, + 0xb8, 0x96, 0x62, 0xd8, 0xb6, 0xc3, 0x0c, 0x66, 0x39, 0x36, 0xf5, 0xad, 0x5f, 0xf5, 0xad, 0x5d, + 0x0e, 0xdc, 0x74, 0xd9, 0x91, 0x6f, 0xcc, 0xf4, 0x5f, 0x03, 0x13, 0xe2, 0x90, 0x2e, 0xb0, 0xdf, + 0xe6, 0xb8, 0xbd, 0xac, 0xf3, 0xfd, 0x46, 0x76, 0xe4, 0xe2, 0xc0, 0x94, 0x1f, 0x90, 0x06, 0x53, + 0x6c, 0xb7, 0x07, 0xe0, 0xb9, 0xb3, 0xf2, 0xe9, 0xfd, 0x1e, 0x5f, 0x1f, 0x26, 0x70, 0xef, 0x36, + 0x4a, 0x88, 0x08, 0x38, 0x95, 0x9f, 0x60, 0x93, 0xf9, 0x00, 0x39, 0x04, 0xa0, 0x67, 0x83, 0xfc, + 0x63, 0x00, 0xa7, 0xd7, 0x08, 0x36, 0x18, 0xd6, 0xf0, 0x4f, 0x5b, 0x98, 0x32, 0xf4, 0x7d, 0x98, + 0x68, 0x62, 0x66, 0x54, 0x0d, 0x66, 0xa4, 0x41, 0x0e, 0x2c, 0xa4, 0x96, 0x3f, 0x93, 0xfb, 0xc3, + 0xb9, 0xcb, 0x37, 0x14, 0xa8, 0x1b, 0x98, 0x19, 0xe5, 0x23, 0x17, 0x6b, 0x5d, 0x10, 0xfa, 0x21, + 0x8c, 0x51, 0x17, 0x9b, 0xe9, 0x08, 0x07, 0x2f, 0xcb, 0xef, 0xcf, 0x05, 0x59, 0x70, 0x95, 0x5c, + 0x6c, 0x7a, 0x5c, 0xab, 0xb3, 0x0f, 0x8e, 0xa7, 0x3c, 0x0a, 0xb9, 0x6e, 0xea, 0xde, 0xaf, 0xc6, + 0x09, 0x57, 0x92, 0xcf, 0xae, 0xc5, 0xc5, 0xde, 0xf9, 0x7b, 0x11, 0x38, 0x13, 0x1c, 0x9b, 0xba, + 0x8e, 0x4d, 0x31, 0xba, 0x7a, 0xe6, 0xdc, 0xb9, 0xa1, 0xe7, 0xde, 0xc4, 0x6c, 0xc8, 0xa1, 0x77, + 0xe1, 0x2c, 0x3d, 0xa2, 0x0c, 0x37, 0xf5, 0x2e, 0x49, 0x94, 0x93, 0x7c, 0x73, 0x80, 0xa4, 0xc4, + 0xbd, 0xce, 0x52, 0xcd, 0x08, 0xf8, 0x8d, 0x80, 0xb0, 0xdc, 0xa7, 0x82, 0x12, 0x46, 0x85, 0x4d, + 0xcc, 0x46, 0x90, 0xe0, 0x15, 0x80, 0x33, 0x1a, 0x76, 0x1b, 0x86, 0xd9, 0x0d, 0xdd, 0xf5, 0x33, + 0x12, 0x7c, 0x3e, 0x54, 0x02, 0x1f, 0x36, 0x44, 0x86, 0xfd, 0xbe, 0x53, 0x5f, 0x0a, 0x73, 0x6a, + 0x9f, 0xec, 0x3d, 0x27, 0x47, 0x0a, 0x94, 0x08, 0xa6, 0x4e, 0x8b, 0x98, 0x58, 0x6f, 0x63, 0x42, + 0x2d, 0xc7, 0xe6, 0x0a, 0x27, 0x57, 0x63, 0xaf, 0x4e, 0x00, 0xd0, 0x66, 0x03, 0xeb, 0x6d, 0x61, + 0xec, 0xbd, 0xea, 0x47, 0x70, 0xb6, 0x7b, 0x53, 0x11, 0xed, 0xfc, 0x43, 0x00, 0xe1, 0x26, 0x66, + 0xc1, 0xcd, 0x2f, 0xc2, 0xa4, 0x6d, 0x34, 0x31, 0x75, 0x0d, 0x13, 0xf3, 0xab, 0x27, 0xb5, 0x37, + 0x0b, 0x08, 0xc1, 0x98, 0xf7, 0xc2, 0x6f, 0x95, 0xd4, 0xf8, 0x33, 0xaa, 0x40, 0x6f, 0x47, 0x4e, + 0xa6, 0xd7, 0x1c, 0xd2, 0x34, 0x18, 0x3f, 0xce, 0xcc, 0xf2, 0x95, 0x90, 0xa1, 0x0a, 0x8e, 0xb2, + 0xc1, 0xc1, 0x6b, 0x4e, 0x15, 0x6b, 0x33, 0xa4, 0x6f, 0x2d, 0xff, 0xe7, 0x38, 0x4c, 0xf5, 0x78, + 0x22, 0x0d, 0xa6, 0x4c, 0x9e, 0xb4, 0x7c, 0x47, 0x5f, 0xe4, 0xef, 0x84, 0x2f, 0x10, 0xff, 0xb6, + 0x1a, 0x14, 0x2c, 0xde, 0x2e, 0x68, 0x0f, 0x4e, 0x11, 0xa1, 0x8d, 0x20, 0x8d, 0x86, 0xaf, 0xba, + 0xfe, 0xec, 0xd1, 0x52, 0x3e, 0x0f, 0xa7, 0x1d, 0x16, 0xae, 0xd8, 0x3b, 0xc2, 0xd5, 0x57, 0x7e, + 0x93, 0xe7, 0x51, 0x7e, 0x17, 0xce, 0xa5, 0xfc, 0xe2, 0xe7, 0x59, 0x7e, 0x68, 0x17, 0xc6, 0x29, + 0x33, 0x58, 0x8b, 0xa6, 0x7f, 0xf7, 0x5b, 0x90, 0x8b, 0x2e, 0xa4, 0x96, 0x97, 0xc2, 0x30, 0x97, + 0x38, 0x46, 0x1c, 0x7a, 0x35, 0xfa, 0xe4, 0x18, 0x68, 0x3e, 0x0d, 0xda, 0x82, 0x1f, 0x11, 0x5c, + 0xc3, 0x84, 0x58, 0x76, 0x5d, 0x17, 0x8d, 0x9c, 0xa6, 0x13, 0x9c, 0xf9, 0xe2, 0x5b, 0x4a, 0xb7, + 0xc6, 0xef, 0x2b, 0x75, 0x61, 0x62, 0x9d, 0xa2, 0xdb, 0x30, 0x5d, 0xc5, 0x0d, 0xcc, 0x70, 0x55, + 0x17, 0x36, 0x5c, 0xed, 0x32, 0x26, 0x43, 0x30, 0xce, 0xf9, 0x68, 0xcd, 0x07, 0x07, 0xbc, 0xfb, + 0x70, 0xbe, 0x6a, 0x51, 0xa3, 0xd2, 0x18, 0x46, 0x0c, 0x43, 0x10, 0x7f, 0x1a, 0xc0, 0x07, 0x98, + 0x7b, 0x2a, 0x7c, 0x3b, 0x96, 0x00, 0x52, 0x24, 0xff, 0x47, 0x00, 0x53, 0x3b, 0x16, 0x0d, 0x59, + 0xd5, 0xdf, 0x80, 0x53, 0x0d, 0xa3, 0x82, 0x1b, 0x7a, 0xcd, 0x6a, 0x30, 0x4c, 0xfc, 0xea, 0x4e, + 0xf1, 0xb5, 0x0d, 0xbe, 0x84, 0x3e, 0x83, 0xd3, 0x04, 0xbb, 0x0e, 0x61, 0x7a, 0xcd, 0xc2, 0x8d, + 0x2a, 0x4d, 0x47, 0x73, 0xd1, 0x85, 0xa4, 0x36, 0x25, 0x16, 0x37, 0xf8, 0x1a, 0x5a, 0x82, 0x1f, + 0xfb, 0x4e, 0x22, 0x28, 0x81, 0x6f, 0x8c, 0xfb, 0x22, 0x61, 0x13, 0x21, 0x14, 0x88, 0xfc, 0xbf, + 0xe2, 0x50, 0x12, 0xe7, 0x14, 0x85, 0xbd, 0xc5, 0x70, 0x13, 0xcd, 0xc1, 0x38, 0xc3, 0xb6, 0x61, + 0x33, 0x9e, 0x73, 0x49, 0xcd, 0x7f, 0x1b, 0xa3, 0x35, 0x49, 0x30, 0xda, 0xb2, 0xaa, 0xa2, 0x3b, + 0x6a, 0xde, 0x23, 0xca, 0xc1, 0x54, 0x15, 0x53, 0x93, 0x58, 0x7c, 0x7a, 0x48, 0xa7, 0xc4, 0x4d, + 0x7b, 0x96, 0x50, 0x06, 0x26, 0x02, 0x99, 0xd3, 0x53, 0x39, 0xb0, 0x90, 0xd0, 0xba, 0xef, 0x68, + 0x1f, 0xc6, 0xb9, 0x28, 0xe2, 0x4a, 0xa9, 0xe5, 0xeb, 0x61, 0x72, 0x76, 0xf0, 0x7e, 0xf2, 0x0e, + 0xa7, 0x50, 0x6d, 0x46, 0x8e, 0x34, 0x9f, 0x0f, 0xd5, 0x61, 0xaa, 0x67, 0x16, 0xf3, 0xb3, 0x41, + 0x1d, 0x8b, 0xbe, 0xf8, 0x86, 0x47, 0xec, 0xd1, 0xcb, 0x8c, 0xae, 0x40, 0xe8, 0x1c, 0xda, 0x98, + 0xe8, 0x1e, 0x59, 0x3a, 0xc9, 0x8b, 0x3a, 0x33, 0xb0, 0xcf, 0x6d, 0x0b, 0x1f, 0x06, 0x39, 0x97, + 0xe4, 0xde, 0xde, 0x4a, 0x5f, 0x63, 0x9a, 0x3e, 0x8f, 0xc6, 0x34, 0xf3, 0xa5, 0x1a, 0xd3, 0x36, + 0x4c, 0xd4, 0x31, 0xe3, 0x4d, 0xc5, 0x6f, 0x71, 0xa3, 0x36, 0x27, 0xed, 0x42, 0x5d, 0xbc, 0xa0, + 0x32, 0x84, 0x7e, 0xca, 0x52, 0xcc, 0xfc, 0xb6, 0x31, 0x66, 0x43, 0x4a, 0x0a, 0xa2, 0x12, 0x66, + 0x99, 0x2b, 0x30, 0xd5, 0x13, 0x6b, 0x2f, 0x1b, 0x0f, 0xf0, 0x91, 0x9f, 0xb9, 0xde, 0x23, 0xfa, + 0x18, 0x4e, 0xb6, 0x8d, 0x46, 0x2b, 0x48, 0x5a, 0xf1, 0xb2, 0x12, 0xf9, 0x1e, 0xc8, 0x5c, 0x83, + 0xd2, 0x60, 0x1c, 0x47, 0xc1, 0x6f, 0xc7, 0x12, 0x93, 0x52, 0x3c, 0xff, 0x73, 0x00, 0xa7, 0x7a, + 0xf3, 0x03, 0x6d, 0xc3, 0x49, 0x8b, 0xe1, 0x26, 0x4d, 0x8b, 0x9e, 0xfb, 0xdd, 0x71, 0x12, 0x4c, + 0x13, 0x14, 0x68, 0x09, 0xc6, 0xc5, 0x1f, 0x80, 0x74, 0x84, 0x93, 0xa5, 0x07, 0xc8, 0x54, 0xcf, + 0xc8, 0x65, 0xf6, 0xfd, 0xf2, 0x07, 0x70, 0x7a, 0x9d, 0xb7, 0xc6, 0xf1, 0x87, 0x8d, 0x05, 0x28, + 0xd5, 0x0c, 0xab, 0xa1, 0x5b, 0xb5, 0x6e, 0x0b, 0xe5, 0xe5, 0x9d, 0xd0, 0x66, 0xbc, 0xf5, 0xad, + 0x5a, 0xd0, 0x1a, 0x17, 0xff, 0x0b, 0xe0, 0x27, 0x43, 0x87, 0x0b, 0x94, 0x81, 0x73, 0x9b, 0x6a, + 0x59, 0xd7, 0x4a, 0xb7, 0xf4, 0x8d, 0x5d, 0xed, 0x46, 0xb1, 0xac, 0xaf, 0xab, 0x1b, 0xc5, 0xbd, + 0x9d, 0xb2, 0x34, 0x81, 0xbe, 0x06, 0xe7, 0x07, 0x6c, 0x1b, 0xbb, 0x9a, 0xbe, 0xa6, 0xa9, 0xc5, + 0xb2, 0x2a, 0x01, 0x94, 0x85, 0x99, 0x21, 0x66, 0x4d, 0xbd, 0xb5, 0x53, 0x5c, 0x53, 0xa5, 0x08, + 0x9a, 0x87, 0x9f, 0x0c, 0xd8, 0x4b, 0xe5, 0x62, 0x79, 0xaf, 0x24, 0x45, 0xd1, 0xa7, 0xf0, 0x2b, + 0x03, 0x26, 0x4d, 0x2d, 0xae, 0x4b, 0x31, 0xf4, 0x39, 0xcc, 0x9d, 0x31, 0x6c, 0xa8, 0x9a, 0xb6, + 0x75, 0x73, 0x53, 0xdf, 0x5d, 0xdd, 0x56, 0xd7, 0xca, 0x25, 0x69, 0x72, 0x88, 0xd7, 0xaa, 0xb6, + 0xfb, 0x03, 0xf5, 0xa6, 0x70, 0x56, 0x6f, 0xae, 0xa9, 0x25, 0x29, 0xbe, 0xfc, 0xcf, 0x14, 0x8c, + 0x16, 0x6f, 0x6d, 0xa1, 0xdf, 0x44, 0x60, 0x5c, 0x4c, 0x3a, 0x68, 0xf4, 0xa9, 0x28, 0xb3, 0x3c, + 0x0a, 0xc4, 0x1f, 0x23, 0xff, 0x00, 0x3a, 0x7f, 0x4d, 0xff, 0xb8, 0xf6, 0xc5, 0x5d, 0xb3, 0xe0, + 0x99, 0x0b, 0x4d, 0xc3, 0x36, 0xea, 0xb8, 0x89, 0x6d, 0x56, 0xa8, 0x18, 0xd4, 0x32, 0x0b, 0x2d, + 0x8a, 0xc9, 0xb7, 0x87, 0xda, 0x29, 0x33, 0xec, 0xaa, 0x41, 0xaa, 0xc2, 0xa5, 0x8d, 0x69, 0xc1, + 0x72, 0x0a, 0x96, 0x5d, 0x23, 0x06, 0x65, 0xa4, 0x65, 0xb2, 0x16, 0xc1, 0x85, 0x43, 0x62, 0x31, + 0x7c, 0xff, 0x1f, 0xff, 0xf9, 0x75, 0xe4, 0x6a, 0xfe, 0xb2, 0xff, 0x57, 0x59, 0xe9, 0xa6, 0x0a, + 0x55, 0x7e, 0x16, 0x34, 0x15, 0xb9, 0xbb, 0x78, 0x3c, 0xf0, 0x6f, 0x8d, 0xae, 0x80, 0x45, 0xf4, + 0xab, 0x08, 0x8c, 0x6e, 0x62, 0x86, 0xe4, 0xd0, 0xb3, 0xa9, 0x90, 0x44, 0x19, 0x71, 0x96, 0xcd, + 0x3f, 0x02, 0x4f, 0xff, 0x12, 0xf1, 0x34, 0x31, 0xdf, 0xa1, 0x49, 0xd3, 0xb1, 0x2d, 0xe6, 0xbc, + 0x4f, 0x96, 0xc0, 0x6b, 0xb8, 0x32, 0x04, 0x1b, 0x55, 0x2e, 0xcc, 0x65, 0xf4, 0xc5, 0x30, 0x61, + 0xde, 0xae, 0x87, 0xb0, 0x1d, 0xa3, 0x5f, 0x44, 0x60, 0xcc, 0x2b, 0x72, 0xa4, 0x84, 0x6f, 0x07, + 0x42, 0x95, 0xa5, 0x51, 0xfb, 0x47, 0xfe, 0xf7, 0x1f, 0x5c, 0x96, 0x25, 0x24, 0x8f, 0x26, 0x0b, + 0xfa, 0x53, 0x04, 0x5e, 0xf0, 0x27, 0x7a, 0x34, 0xc6, 0xf8, 0x9f, 0xb9, 0x34, 0x12, 0xc6, 0x17, + 0xe6, 0xf1, 0x87, 0xaa, 0x9f, 0x9d, 0xcc, 0xe6, 0x98, 0xf5, 0x33, 0xe0, 0x74, 0xec, 0xd5, 0xd3, + 0xff, 0x00, 0x8c, 0x8b, 0x9e, 0x1e, 0xae, 0xd1, 0xf4, 0xf5, 0xff, 0xcc, 0x9c, 0x2c, 0xbe, 0x36, + 0xc9, 0xc1, 0xd7, 0x26, 0x59, 0x6d, 0xba, 0xec, 0x28, 0xff, 0xf0, 0x43, 0x89, 0xb1, 0xb2, 0x38, + 0x5e, 0xcd, 0xac, 0x80, 0xc5, 0x8c, 0xfd, 0xe4, 0x04, 0x44, 0xfe, 0x7e, 0x02, 0xbe, 0x15, 0xe2, + 0xda, 0x62, 0x40, 0x78, 0x71, 0x02, 0x40, 0xe7, 0x04, 0x28, 0x23, 0xce, 0x15, 0xf7, 0xff, 0x96, + 0x8e, 0x48, 0x60, 0xf5, 0x01, 0x78, 0x76, 0x6d, 0x72, 0x4d, 0xdb, 0x5b, 0xdf, 0x79, 0xfe, 0x32, + 0x3b, 0xf1, 0xe2, 0x65, 0x76, 0xe2, 0xf5, 0xcb, 0x2c, 0xb8, 0xd7, 0xc9, 0x82, 0x47, 0x9d, 0x2c, + 0x78, 0xda, 0xc9, 0x82, 0xe7, 0x9d, 0x2c, 0xf8, 0x77, 0x27, 0x0b, 0x5e, 0x75, 0xb2, 0x13, 0xaf, + 0x3b, 0x59, 0xf0, 0xcb, 0xd3, 0xec, 0xc4, 0x93, 0xd3, 0x2c, 0x78, 0x7e, 0x9a, 0x9d, 0x78, 0x71, + 0x9a, 0x9d, 0xf8, 0xd1, 0x7e, 0xdd, 0x71, 0x0f, 0xea, 0x7c, 0x2f, 0x4c, 0x88, 0x21, 0xb7, 0xa8, + 0xc2, 0x1f, 0xbc, 0xff, 0xbb, 0x05, 0x97, 0x38, 0x6d, 0xab, 0x8a, 0x49, 0x21, 0x30, 0x2b, 0x6e, + 0xa5, 0xee, 0x28, 0xf8, 0x2e, 0xf3, 0x3f, 0x81, 0xbd, 0xe3, 0x4b, 0x58, 0x25, 0xce, 0x23, 0x78, + 0xe9, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x39, 0x0c, 0x5e, 0x28, 0xe9, 0x14, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/views/voltstack_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/views/voltstack_site/public_crudapi.vesapi.go index ed60dc8a7..ff6d90351 100644 --- a/pbgo/extschema/schema/views/voltstack_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/views/voltstack_site/public_crudapi.vesapi.go @@ -6115,10 +6115,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6175,10 +6179,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6237,10 +6245,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -6966,6 +6978,77 @@ var APISwaggerJSON string = `{ } } }, + "viewsKubernetesUpgradeDrain": { + "type": "object", + "description": "Node by Node Upgrade during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade [BETA]", + "x-ves-displayorder": "1", + "x-ves-oneof-field-kubernetes_upgrade_drain_enable_choice": "[\"disable_upgrade_drain\",\"enable_upgrade_drain\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrain", + "properties": { + "disable_upgrade_drain": { + "description": "Exclusive with [enable_upgrade_drain]\n Disable Node by Node Upgrade during Software or OS version upgrade", + "title": "Disable upgrade drain", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Node by Node Upgrade" + }, + "enable_upgrade_drain": { + "description": "Exclusive with [disable_upgrade_drain]\n Enable Node by Node Upgrade during Software or OS version upgrade", + "title": "Enable Node by Node Upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrainConfig", + "x-displayname": "Enable Node by Node Upgrade" + } + } + }, + "viewsKubernetesUpgradeDrainConfig": { + "type": "object", + "description": "Node by Node upgrade config during Software or OS version upgrade", + "title": "Node by Node Upgrade", + "x-displayname": "Node by Node Upgrade Config", + "x-ves-oneof-field-drain_max_unavailable_choice": "[\"drain_max_unavailable_node_count\"]", + "x-ves-oneof-field-vega_upgrade_mode_toggle_choice": "[\"disable_vega_upgrade_mode\",\"enable_vega_upgrade_mode\"]", + "x-ves-proto-message": "ves.io.schema.views.KubernetesUpgradeDrainConfig", + "properties": { + "disable_vega_upgrade_mode": { + "description": "Exclusive with [enable_vega_upgrade_mode]\n Disable Vega Upgrade Mode", + "title": "Disable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Disable Vega Upgrade Mode" + }, + "drain_max_unavailable_node_count": { + "type": "integer", + "description": "Exclusive with []\n Max unavailable worker node count during Software or OS version upgrade\n\nExample: - \"1\"-\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 5000\n", + "title": "Max Unavailable Node Count", + "format": "int64", + "x-displayname": "Max Unavailable Worker Node Count", + "x-ves-example": "1", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "5000" + } + }, + "drain_node_timeout": { + "type": "integer", + "description": " Second to wait before skipping a pod eviction, equivalent to -skip-wait-for-delete-timeout- option in node drain. 0 to not skipping any pods eviction (Warning: It may block the upgrade if set to 0 and a pod fails to evict).\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.uint32.gte: 0\n ves.io.schema.rules.uint32.lte: 900\n", + "title": "Pod Eviction Timeout", + "format": "int64", + "x-displayname": "Pod Eviction Timeout", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.uint32.gte": "0", + "ves.io.schema.rules.uint32.lte": "900" + } + }, + "enable_vega_upgrade_mode": { + "description": "Exclusive with [disable_vega_upgrade_mode]\n Enable Vega Upgrade Mode\n When enabled, vega will inform RE to stop traffic to the specific node.", + "title": "Enable Vega Upgrade Mode", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Enable Vega Upgrade Mode" + } + } + }, "viewsMasterNode": { "type": "object", "description": "Master Node is the configuration of the master node", @@ -7235,6 +7318,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Enable Site Local K8s API access" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "local_control_plane": { "description": "Exclusive with [no_local_control_plane]\n Site Local control plane is enabled", "$ref": "#/definitions/fleetLocalControlPlaneType", @@ -7454,6 +7542,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Enable Site Local K8s API access" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "local_control_plane": { "description": "Exclusive with [no_local_control_plane]\n Site Local control plane is enabled", "$ref": "#/definitions/fleetLocalControlPlaneType", @@ -7687,6 +7780,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/schemaviewsObjectRefType", "x-displayname": "Enable Site Local K8s API access" }, + "kubernetes_upgrade_drain": { + "description": " Enable Kubernetes Drain during OS or SW upgrade", + "$ref": "#/definitions/viewsKubernetesUpgradeDrain", + "x-displayname": "Kubernetes Upgrade Drain" + }, "local_control_plane": { "description": "Exclusive with [no_local_control_plane]\n Site Local control plane is enabled", "$ref": "#/definitions/fleetLocalControlPlaneType", diff --git a/pbgo/extschema/schema/views/voltstack_site/types.pb.go b/pbgo/extschema/schema/views/voltstack_site/types.pb.go index ac905705e..1704bb7ca 100644 --- a/pbgo/extschema/schema/views/voltstack_site/types.pb.go +++ b/pbgo/extschema/schema/views/voltstack_site/types.pb.go @@ -1940,6 +1940,11 @@ type GlobalSpecType struct { // x-displayName: "Custom DNS" // custom dns configure to the CE site CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + // Enable Drain + // + // x-displayName: "Kubernetes Upgrade Drain" + // Enable Kubernetes Drain during OS or SW upgrade + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } @@ -2475,6 +2480,13 @@ func (m *GlobalSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GlobalSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -2577,7 +2589,8 @@ type CreateSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } @@ -3078,6 +3091,13 @@ func (m *CreateSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *CreateSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3172,7 +3192,8 @@ type ReplaceSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } @@ -3673,6 +3694,13 @@ func (m *ReplaceSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *ReplaceSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -3772,7 +3800,8 @@ type GetSpecType struct { // // x-displayName: "Custom DNS" // custom dns configure to the CE site - CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + CustomDns *views.CustomDNS `protobuf:"bytes,57,opt,name=custom_dns,json=customDns,proto3" json:"custom_dns,omitempty"` + KubernetesUpgradeDrain *views.KubernetesUpgradeDrain `protobuf:"bytes,58,opt,name=kubernetes_upgrade_drain,json=kubernetesUpgradeDrain,proto3" json:"kubernetes_upgrade_drain,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } @@ -4280,6 +4309,13 @@ func (m *GetSpecType) GetCustomDns() *views.CustomDNS { return nil } +func (m *GetSpecType) GetKubernetesUpgradeDrain() *views.KubernetesUpgradeDrain { + if m != nil { + return m.KubernetesUpgradeDrain + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -4357,330 +4393,334 @@ func init() { } var fileDescriptor_d141cd889edd2b08 = []byte{ - // 5167 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7c, 0x5b, 0x6c, 0xe3, 0xd8, - 0x79, 0xbf, 0x8f, 0x24, 0xdb, 0xf2, 0x27, 0x5f, 0x68, 0xfa, 0x46, 0xcb, 0x33, 0x1a, 0xad, 0x67, - 0xe7, 0xe6, 0xa1, 0x65, 0x4b, 0xb6, 0x64, 0x7b, 0xb2, 0xff, 0xc9, 0x7f, 0x64, 0x4f, 0xc6, 0xa3, - 0xec, 0x4c, 0x26, 0xf4, 0xae, 0x91, 0xa4, 0x17, 0x81, 0x92, 0x8e, 0x35, 0x8c, 0x29, 0x52, 0x21, - 0x29, 0x79, 0xdd, 0x62, 0x80, 0xc5, 0x2c, 0x10, 0x14, 0x41, 0x81, 0x14, 0x5b, 0xb4, 0x05, 0x8a, - 0x02, 0xc9, 0x4b, 0x81, 0x74, 0xfb, 0x18, 0x20, 0x68, 0xab, 0x3c, 0x0c, 0x06, 0x28, 0x90, 0xee, - 0x4b, 0x8d, 0xa2, 0x45, 0x17, 0x7d, 0x28, 0x12, 0xef, 0xcb, 0xa6, 0x7d, 0xc9, 0x4b, 0x81, 0x76, - 0x1e, 0x8a, 0x82, 0x87, 0x87, 0x14, 0x49, 0x51, 0xb2, 0x66, 0x2f, 0x4d, 0x93, 0xf5, 0xcb, 0xae, - 0xc8, 0xf3, 0xdd, 0xce, 0xed, 0x3b, 0xdf, 0xef, 0x77, 0x38, 0x86, 0x54, 0x13, 0xeb, 0x29, 0x49, - 0x5d, 0xd1, 0xcb, 0x8f, 0x71, 0x4d, 0x5c, 0x69, 0x4a, 0xf8, 0x48, 0x5f, 0x69, 0xaa, 0xb2, 0xa1, - 0x1b, 0x62, 0xf9, 0xb0, 0xa8, 0x4b, 0x06, 0x5e, 0x31, 0x8e, 0xeb, 0x58, 0x4f, 0xd5, 0x35, 0xd5, - 0x50, 0xd9, 0x45, 0x4b, 0x3e, 0x65, 0xc9, 0xa7, 0x88, 0x7c, 0xca, 0x2b, 0x1f, 0x5f, 0xae, 0x4a, - 0xc6, 0xe3, 0x46, 0x29, 0x55, 0x56, 0x6b, 0x2b, 0x55, 0xb5, 0xaa, 0xae, 0x10, 0xd5, 0x52, 0xe3, - 0x80, 0x3c, 0x91, 0x07, 0xf2, 0xcb, 0x32, 0x19, 0xbf, 0xe4, 0x0d, 0xe1, 0x40, 0xc6, 0xd8, 0x70, - 0xfb, 0x8c, 0x2f, 0x79, 0x05, 0x14, 0x6c, 0x1c, 0xa9, 0xda, 0x61, 0xf1, 0x40, 0xd2, 0xf0, 0x91, - 0x28, 0xcb, 0x1e, 0xd9, 0x9b, 0xc1, 0xb2, 0x92, 0x62, 0x60, 0xed, 0x40, 0x2c, 0x7b, 0x3a, 0x13, - 0x5f, 0xf0, 0x0a, 0xab, 0x75, 0x43, 0x52, 0x15, 0xbb, 0x31, 0xe1, 0x6d, 0xf4, 0x8f, 0x44, 0x7c, - 0xde, 0xdb, 0xee, 0x6e, 0xba, 0xe0, 0x1b, 0x54, 0x51, 0x96, 0x2a, 0xa2, 0x81, 0x69, 0x6b, 0xb2, - 0x73, 0xc8, 0x8b, 0x5e, 0xd7, 0xaf, 0x06, 0x4d, 0x8a, 0x19, 0x40, 0xd1, 0xed, 0xe5, 0x52, 0x90, - 0x94, 0x5b, 0xe0, 0x86, 0x5f, 0x40, 0x33, 0x1a, 0xa2, 0x5c, 0xa4, 0x63, 0xe2, 0x16, 0x5d, 0xfc, - 0x7d, 0x16, 0x46, 0xee, 0xdb, 0x63, 0xc4, 0xf2, 0x10, 0xab, 0x60, 0xbd, 0xac, 0x49, 0x24, 0x2a, - 0x0e, 0x25, 0xd1, 0xf5, 0x91, 0x3c, 0xfc, 0xcd, 0xcf, 0x9f, 0x85, 0x07, 0xb5, 0x30, 0xf7, 0x76, - 0x48, 0x70, 0x37, 0xb3, 0x07, 0x30, 0x24, 0x8b, 0x25, 0x2c, 0xeb, 0x5c, 0x28, 0x19, 0xbe, 0x1e, - 0xcb, 0x6c, 0xa5, 0xce, 0x5e, 0x23, 0x29, 0xc7, 0x59, 0xea, 0x75, 0xa2, 0x7b, 0x57, 0x31, 0xb4, - 0xe3, 0xfc, 0xd4, 0x9f, 0xfe, 0x18, 0x45, 0x20, 0x84, 0x06, 0x4e, 0x7f, 0xfa, 0xb7, 0xe1, 0xa1, - 0xef, 0xfc, 0x18, 0x85, 0xa2, 0x03, 0x02, 0xb5, 0xce, 0xd6, 0x80, 0xc5, 0xc6, 0x63, 0xac, 0x29, - 0xd8, 0x68, 0xcf, 0x27, 0x37, 0x98, 0x44, 0xd7, 0x63, 0x99, 0x9c, 0xcf, 0x67, 0xc7, 0xbc, 0xa7, - 0xee, 0x52, 0x55, 0xc7, 0xf1, 0x1b, 0xc7, 0x75, 0x9c, 0x8f, 0x9c, 0xb4, 0x10, 0xda, 0x1d, 0x10, - 0x26, 0xb1, 0xbf, 0x99, 0xfd, 0x26, 0x4c, 0x55, 0x70, 0x45, 0x2a, 0x8b, 0x06, 0xae, 0xb8, 0xfc, - 0x0d, 0x11, 0x7f, 0x1b, 0x67, 0xfa, 0xdb, 0xb1, 0x75, 0x3d, 0x0e, 0x77, 0x07, 0x04, 0xb6, 0xd2, - 0xd1, 0xc2, 0xfe, 0x21, 0x82, 0x44, 0xdb, 0x59, 0x4d, 0x54, 0xc4, 0x2a, 0xae, 0x61, 0xc5, 0xdd, - 0xcf, 0x61, 0xe2, 0xf7, 0x4e, 0xff, 0x7e, 0x1f, 0x38, 0x56, 0xbc, 0x5d, 0x8e, 0x3e, 0x6b, 0x21, - 0x44, 0xbb, 0x7d, 0xa1, 0xd2, 0x43, 0x9a, 0x3d, 0x04, 0xc6, 0x68, 0x28, 0x0a, 0x96, 0x5d, 0x61, - 0x44, 0x49, 0x18, 0xeb, 0x67, 0x86, 0xf1, 0x06, 0x51, 0xec, 0xee, 0x79, 0xc2, 0xf0, 0x0a, 0xb0, - 0x6f, 0x01, 0x2b, 0xab, 0x6a, 0xbd, 0x64, 0xae, 0x90, 0xb6, 0xbb, 0x91, 0x3e, 0x67, 0xf7, 0x75, - 0xaa, 0xea, 0x75, 0x38, 0xf1, 0xc1, 0x13, 0x64, 0xfb, 0xfc, 0x88, 0x4e, 0xb4, 0xec, 0x97, 0x64, - 0x9f, 0xc0, 0x6a, 0xa5, 0x5c, 0x2c, 0xcb, 0x0d, 0xdd, 0xc0, 0x5a, 0xb1, 0xaa, 0xa9, 0x8d, 0x7a, - 0xb1, 0xac, 0x2a, 0x0a, 0x2e, 0x1b, 0x52, 0x53, 0x32, 0x8e, 0xdb, 0x6e, 0x8a, 0x15, 0x49, 0x17, - 0x4b, 0x32, 0xae, 0x70, 0x31, 0x12, 0xd7, 0xb4, 0x2f, 0xae, 0xbb, 0xb5, 0xba, 0x71, 0xbc, 0x8b, - 0x84, 0x9b, 0x95, 0xf2, 0xb6, 0x65, 0xee, 0x9e, 0x69, 0x6d, 0xdb, 0x65, 0xcc, 0x71, 0xbb, 0x43, - 0x4d, 0xb1, 0xbf, 0x0b, 0x2b, 0xfd, 0xba, 0xc7, 0x8a, 0xe5, 0x7d, 0xb4, 0xa7, 0xf7, 0xa5, 0x3e, - 0xbc, 0xdf, 0xb5, 0x2c, 0xc5, 0xb7, 0x20, 0xe6, 0xda, 0x7f, 0x2c, 0x03, 0xe1, 0x43, 0x7c, 0x6c, - 0x6d, 0x78, 0xc1, 0xfc, 0xc9, 0x4e, 0xc3, 0x60, 0x53, 0x94, 0x1b, 0x98, 0x0b, 0x91, 0x77, 0xd6, - 0xc3, 0xad, 0xd0, 0x26, 0xba, 0xf5, 0xcf, 0xd1, 0xe7, 0x2d, 0xf4, 0x26, 0xcc, 0x03, 0xeb, 0x58, - 0x4d, 0x3e, 0xc0, 0x86, 0x58, 0x11, 0x0d, 0x91, 0x0d, 0xa7, 0xf9, 0x0c, 0x4c, 0xc1, 0x78, 0xbb, - 0xc9, 0x9c, 0x10, 0x16, 0xad, 0xc1, 0x65, 0xb8, 0xb8, 0xb3, 0x9d, 0xa4, 0x01, 0x26, 0x49, 0x84, - 0x49, 0x77, 0x88, 0x6c, 0x28, 0xbd, 0xfa, 0x7e, 0x0b, 0xfd, 0xd7, 0x30, 0x3c, 0x47, 0x10, 0x31, - 0xb5, 0x96, 0xfe, 0x1a, 0xc1, 0x8f, 0x10, 0x24, 0x82, 0xb6, 0x7f, 0x26, 0x6a, 0xef, 0x6b, 0x48, - 0x06, 0xee, 0xd7, 0xcc, 0x88, 0xb3, 0x21, 0x20, 0x77, 0xd6, 0x26, 0xcb, 0x4c, 0x3b, 0xc2, 0xc9, - 0xf6, 0x86, 0x80, 0x78, 0xe7, 0x3e, 0xc8, 0x0c, 0x59, 0x0b, 0xdc, 0x8c, 0xaa, 0x73, 0xd9, 0x66, - 0xa2, 0xf6, 0x7a, 0x84, 0x1f, 0x20, 0x88, 0x3c, 0x14, 0x6b, 0x78, 0xe9, 0x7b, 0x08, 0xfe, 0x0c, - 0xc1, 0x02, 0xcc, 0x77, 0x76, 0x22, 0x55, 0xc1, 0x4d, 0xa9, 0x8c, 0xe1, 0x02, 0xc4, 0x03, 0x7a, - 0x60, 0xb7, 0x5e, 0x83, 0x2b, 0xbd, 0xa3, 0xb7, 0x05, 0xe7, 0x61, 0xce, 0x1f, 0x6e, 0xca, 0x7a, - 0x61, 0xba, 0xef, 0x8c, 0xd6, 0xd6, 0xfb, 0x57, 0x04, 0x91, 0xfd, 0xd7, 0xef, 0x3c, 0x5c, 0xfa, - 0x27, 0x04, 0xff, 0x80, 0xe0, 0x1a, 0x2c, 0x04, 0x84, 0xda, 0x50, 0x0c, 0xb1, 0x5a, 0xc5, 0x95, - 0x4c, 0xf4, 0x4d, 0xfa, 0xcb, 0x0c, 0x3b, 0x40, 0xb0, 0x29, 0x8b, 0x4a, 0x51, 0xaa, 0xc0, 0xa5, - 0xe0, 0x69, 0x69, 0xab, 0x2f, 0x9d, 0x39, 0x2b, 0x6e, 0x57, 0x9d, 0x33, 0xd1, 0x6e, 0xed, 0x32, - 0x17, 0x4e, 0xfb, 0x77, 0xc3, 0x10, 0x79, 0xa8, 0x56, 0xf0, 0xd2, 0xb7, 0xc3, 0xf0, 0x4e, 0x18, - 0xf8, 0xc0, 0xb8, 0xe9, 0x46, 0xcc, 0x8c, 0xdf, 0x91, 0xe5, 0xe4, 0x9e, 0x64, 0xe0, 0xa4, 0xa9, - 0xa2, 0x9b, 0xa3, 0x1a, 0x20, 0xad, 0xa8, 0x15, 0x0c, 0xcb, 0xb0, 0x10, 0x34, 0x6f, 0xdd, 0x2c, - 0xc5, 0x81, 0x0b, 0x12, 0x27, 0xa6, 0x36, 0xe1, 0xea, 0x19, 0x93, 0xdc, 0xcd, 0xea, 0x15, 0xb8, - 0x7c, 0x86, 0x26, 0x71, 0xb0, 0x04, 0x5c, 0xc7, 0xe2, 0xe8, 0x66, 0x72, 0x0e, 0x66, 0x3a, 0x64, - 0x89, 0x11, 0x1e, 0xe2, 0x01, 0xcb, 0xa8, 0xc7, 0xc8, 0x05, 0x48, 0x13, 0x43, 0xd3, 0x30, 0x64, - 0xa5, 0x9f, 0x02, 0xd8, 0x45, 0x04, 0x33, 0x98, 0xbf, 0x01, 0x4c, 0x3b, 0xe7, 0x95, 0x1f, 0xab, - 0x52, 0x19, 0xb3, 0x33, 0xcf, 0x5a, 0x68, 0xf0, 0xa4, 0x85, 0xc2, 0xa7, 0x2d, 0x34, 0x92, 0xe5, - 0x73, 0xfc, 0x06, 0xbf, 0xc9, 0x6f, 0xe5, 0xb7, 0x21, 0xd5, 0x6f, 0xf2, 0xa4, 0x86, 0x26, 0x9f, - 0xb5, 0x50, 0xec, 0xa4, 0x85, 0xe0, 0xb4, 0x85, 0x06, 0xd3, 0x69, 0x3e, 0x9d, 0x29, 0x44, 0xa2, - 0x61, 0x26, 0x52, 0x88, 0x44, 0x23, 0xcc, 0x60, 0x21, 0x12, 0x05, 0x26, 0xb6, 0xf8, 0x0e, 0x82, - 0x49, 0x27, 0x75, 0xbd, 0x2e, 0xe9, 0x06, 0xc9, 0x5e, 0x0a, 0x80, 0x63, 0x4e, 0xe7, 0x10, 0x29, - 0x76, 0x96, 0x5f, 0xaa, 0xd8, 0xc9, 0x5f, 0x32, 0x8b, 0xa8, 0xa1, 0x77, 0x51, 0x98, 0x79, 0x1b, - 0x91, 0x7a, 0xea, 0x5d, 0x14, 0x8a, 0x3a, 0xbf, 0x38, 0x24, 0xb8, 0x3c, 0x2c, 0xbe, 0x33, 0x04, - 0xd3, 0x7b, 0x86, 0xaa, 0x89, 0x55, 0xec, 0x39, 0xd7, 0x5e, 0xb2, 0x3e, 0xfb, 0x96, 0xaf, 0x3e, - 0xdb, 0xe9, 0x27, 0xe4, 0x20, 0xbf, 0xfd, 0x97, 0x6a, 0x65, 0x98, 0xd4, 0x2d, 0x03, 0xae, 0xb3, - 0x3c, 0xfc, 0x49, 0x2a, 0x35, 0x81, 0xd1, 0x7d, 0x11, 0x7d, 0x92, 0xb3, 0xeb, 0x2f, 0xc2, 0xcf, - 0x5b, 0xe8, 0x66, 0xaf, 0xb3, 0x6b, 0xdc, 0x5d, 0x0f, 0xa3, 0xb5, 0xf7, 0x5b, 0xe8, 0x3f, 0x42, - 0xf0, 0x2a, 0x0c, 0xed, 0x90, 0x5c, 0x19, 0x8f, 0x03, 0xd7, 0xd1, 0x41, 0x3b, 0x8f, 0x7e, 0x85, - 0xa6, 0xd1, 0x7b, 0x70, 0x17, 0xae, 0x42, 0xbc, 0x53, 0x2e, 0x20, 0x87, 0x2e, 0xc0, 0x7c, 0xa7, - 0x9c, 0x9d, 0x42, 0xbf, 0x4a, 0xd3, 0xd6, 0x7d, 0xb8, 0x07, 0x37, 0x83, 0x04, 0xbb, 0xed, 0x3c, - 0x0e, 0x66, 0x3b, 0x85, 0xc9, 0xc6, 0x7b, 0x17, 0xc1, 0xf0, 0x9d, 0x4a, 0x45, 0xc3, 0xba, 0xbe, - 0xf4, 0x6d, 0x04, 0xef, 0x20, 0xe0, 0xe1, 0x62, 0x40, 0x8f, 0x1e, 0x97, 0xeb, 0xc5, 0xb2, 0x2c, - 0x61, 0xc5, 0xc8, 0xc4, 0x76, 0x76, 0xb7, 0x1f, 0x25, 0xb7, 0xc9, 0x43, 0x0f, 0x69, 0x1d, 0x6b, - 0x4d, 0xac, 0x51, 0xe9, 0x3d, 0xf2, 0x00, 0x57, 0x60, 0xa1, 0x53, 0x5a, 0x37, 0x44, 0x43, 0x2a, - 0x17, 0xa5, 0x7a, 0x66, 0x68, 0x8f, 0xfc, 0x0c, 0xce, 0x06, 0x8b, 0x7f, 0x8e, 0x80, 0xf3, 0xaf, - 0x46, 0x67, 0x4b, 0xfe, 0x1e, 0x02, 0xb6, 0xc3, 0xb4, 0xbd, 0x37, 0x37, 0x3f, 0xee, 0x42, 0x77, - 0x6f, 0xd3, 0x50, 0xe0, 0x36, 0x9d, 0xf4, 0xaf, 0x46, 0x7d, 0xf1, 0xbb, 0xc8, 0xdc, 0xad, 0x66, - 0x47, 0x04, 0xb5, 0x61, 0x60, 0xdd, 0x89, 0xf1, 0x08, 0xc6, 0x68, 0x5f, 0x35, 0xd2, 0x40, 0xa3, - 0xcb, 0x74, 0x44, 0xe7, 0x81, 0x67, 0x29, 0x97, 0xad, 0x7d, 0x09, 0x1f, 0x91, 0xb8, 0x12, 0x76, - 0x08, 0x0c, 0x13, 0x18, 0xd6, 0xa8, 0xee, 0x0a, 0x60, 0xf1, 0xe9, 0x08, 0x4c, 0xec, 0x2b, 0xdb, - 0xaa, 0x72, 0x20, 0x55, 0x1b, 0x9a, 0x48, 0x92, 0x81, 0xec, 0x24, 0x03, 0x2b, 0x8a, 0x2f, 0xf6, - 0x33, 0x46, 0x3e, 0x23, 0xfd, 0xe7, 0x81, 0xff, 0x0f, 0x8c, 0xa2, 0x16, 0xbd, 0xbd, 0x0f, 0xf7, - 0x28, 0x5e, 0x07, 0x84, 0x71, 0x45, 0x75, 0x0f, 0x22, 0x5b, 0xf4, 0x0f, 0x5e, 0x84, 0xa8, 0xf7, - 0x39, 0xb5, 0x9d, 0xb3, 0xb1, 0x3b, 0xe0, 0x1d, 0x24, 0xf6, 0x2e, 0x4c, 0xb5, 0x43, 0x6c, 0xe6, - 0x6c, 0x37, 0xbd, 0x0b, 0x7c, 0xc6, 0x8e, 0x72, 0x3f, 0x47, 0xcd, 0x88, 0xc0, 0x74, 0xd8, 0xb0, - 0xca, 0xf4, 0x6c, 0x5f, 0xf3, 0x6c, 0x1b, 0x72, 0xe2, 0x44, 0xc2, 0xb8, 0xee, 0x75, 0xf1, 0x65, - 0x12, 0xa9, 0xff, 0xb8, 0xa3, 0x80, 0x34, 0x30, 0xd2, 0x7c, 0xc4, 0x44, 0x3f, 0xbb, 0x21, 0x33, - 0xde, 0x1d, 0x0f, 0x28, 0x60, 0xab, 0xc0, 0x74, 0x58, 0xb2, 0x20, 0xe6, 0x62, 0xe0, 0xd0, 0x7e, - 0xa5, 0xf4, 0x4d, 0x5c, 0x36, 0x04, 0x7c, 0x40, 0xd6, 0xe1, 0xdc, 0x7b, 0x4f, 0x3a, 0xd4, 0xa9, - 0xab, 0x71, 0x2f, 0xfa, 0x60, 0x7f, 0x84, 0x20, 0xde, 0x71, 0x44, 0xbb, 0xf1, 0x64, 0xb8, 0x4f, - 0x9f, 0x6f, 0xbe, 0xf7, 0x64, 0xb2, 0xe3, 0xb0, 0x38, 0x7d, 0x72, 0x4b, 0xc0, 0x75, 0x59, 0x2c, - 0xe3, 0x4a, 0xb2, 0x74, 0x9c, 0x7c, 0xb9, 0x5a, 0xc0, 0x84, 0x84, 0xc2, 0x9c, 0x37, 0xde, 0x4f, - 0xe5, 0x78, 0xd9, 0x7d, 0xde, 0x42, 0x3b, 0x30, 0x03, 0xcc, 0x43, 0x2b, 0xde, 0xf6, 0xd9, 0x82, - 0xd2, 0x30, 0x0d, 0x63, 0xd6, 0x94, 0x27, 0xe9, 0xbc, 0x86, 0x33, 0xfc, 0x96, 0x29, 0xec, 0x87, - 0x45, 0x2c, 0xca, 0xe6, 0x97, 0x60, 0xca, 0xbd, 0xfc, 0xed, 0x22, 0x66, 0xea, 0x59, 0x0b, 0x85, - 0x7f, 0x62, 0x21, 0xdb, 0xd0, 0x69, 0x0b, 0x85, 0xd7, 0xf8, 0xf5, 0xbc, 0x60, 0x66, 0x7b, 0xcf, - 0x12, 0xb4, 0xc5, 0x37, 0x69, 0xcd, 0x33, 0xe2, 0xd4, 0x3c, 0xdf, 0x79, 0x81, 0x2e, 0x57, 0x70, - 0x4d, 0x4d, 0xf3, 0x06, 0xd6, 0x0d, 0xbe, 0xac, 0x19, 0xbc, 0x6e, 0x88, 0x55, 0x49, 0xa9, 0xf2, - 0xba, 0x7a, 0x60, 0x94, 0x44, 0xe5, 0xb0, 0x58, 0xc3, 0xe5, 0x7c, 0x0a, 0xe6, 0x3a, 0xc7, 0xb4, - 0x1d, 0xc3, 0x10, 0x8d, 0x61, 0xd0, 0x8c, 0x21, 0xc7, 0x6f, 0x14, 0x22, 0xd1, 0x10, 0x13, 0x2e, - 0x44, 0xa2, 0x23, 0x0c, 0x14, 0x22, 0xd1, 0x41, 0x66, 0x68, 0xf1, 0xdf, 0xc3, 0xc0, 0xee, 0xc9, - 0x92, 0x3f, 0x0f, 0xfd, 0xca, 0x64, 0x86, 0x66, 0xce, 0x17, 0xe5, 0xf0, 0x59, 0x99, 0x61, 0x3f, - 0xe7, 0x89, 0x33, 0x28, 0x33, 0x44, 0x3f, 0xd5, 0xcc, 0xf0, 0x52, 0xab, 0xe4, 0x51, 0xd7, 0x55, - 0x92, 0x7b, 0xd6, 0x42, 0xc3, 0xf6, 0x64, 0x6e, 0xf0, 0x9b, 0x7d, 0xae, 0x11, 0x67, 0xce, 0xcd, - 0xd9, 0xfe, 0x61, 0x18, 0x16, 0xee, 0xc9, 0x6a, 0x49, 0x94, 0xe9, 0xd2, 0xb7, 0xa1, 0xbd, 0xaa, - 0x90, 0xb3, 0x70, 0x0f, 0x18, 0x5d, 0x56, 0x8b, 0x86, 0x5a, 0xac, 0x12, 0xa9, 0x62, 0x45, 0xa3, - 0xd3, 0x7e, 0x3d, 0x70, 0xde, 0x2c, 0x5b, 0xd4, 0x88, 0xaa, 0xd1, 0x79, 0x1a, 0xd3, 0x65, 0xf5, - 0x0d, 0xd5, 0x6a, 0xdb, 0xd1, 0xd8, 0x47, 0x30, 0x43, 0x89, 0x99, 0xe2, 0x81, 0xaa, 0x1d, 0x89, - 0x5a, 0xa5, 0x58, 0xd7, 0xd4, 0xb7, 0x8e, 0x29, 0x37, 0xd8, 0x25, 0x35, 0x12, 0x42, 0x08, 0x09, - 0x53, 0x54, 0xf5, 0x4b, 0x96, 0xe6, 0x23, 0x53, 0x91, 0x2d, 0xc3, 0xb4, 0xc5, 0xb5, 0xf8, 0x0c, - 0x5a, 0xb9, 0xf6, 0x8a, 0xcf, 0xa0, 0x5b, 0xd5, 0x5a, 0xe5, 0x16, 0xdd, 0xe5, 0xd0, 0x4e, 0x48, - 0x60, 0x2d, 0x73, 0x6e, 0xc9, 0x5b, 0xd7, 0x9e, 0xb7, 0xd0, 0x65, 0x78, 0x05, 0xe2, 0x56, 0x47, - 0x92, 0x76, 0xb2, 0x68, 0x0f, 0x99, 0x6e, 0xd6, 0xa2, 0xeb, 0xf9, 0x45, 0x98, 0x2c, 0x3b, 0xef, - 0xec, 0xd9, 0x1a, 0x7b, 0xd6, 0x42, 0x21, 0xd3, 0xc3, 0x69, 0x0b, 0xa1, 0xb5, 0xfc, 0x0a, 0x4c, - 0x7b, 0x42, 0xb5, 0xc5, 0xe6, 0x4c, 0xdc, 0x44, 0xd7, 0x40, 0xc4, 0x9c, 0xd8, 0x2c, 0x9f, 0xfb, - 0x45, 0x0b, 0xa1, 0x42, 0x24, 0x8a, 0x98, 0x90, 0x05, 0x7a, 0x16, 0x5b, 0x08, 0x2e, 0x75, 0x99, - 0x35, 0xa7, 0x8a, 0xf9, 0x13, 0x04, 0x71, 0x3a, 0x67, 0x76, 0x16, 0x6e, 0x07, 0xf5, 0x52, 0xd5, - 0x44, 0x8f, 0xf5, 0x91, 0xe7, 0xcc, 0x1e, 0x39, 0x45, 0x4e, 0xb4, 0x5d, 0xe4, 0x08, 0x5c, 0x35, - 0x58, 0x4d, 0x5f, 0xfc, 0xa3, 0x69, 0x98, 0xdb, 0xd7, 0xf5, 0x76, 0x8b, 0x2b, 0xcd, 0xfc, 0x3f, - 0x18, 0xaf, 0xe0, 0x03, 0xb1, 0x21, 0x1b, 0x66, 0xb4, 0x07, 0x52, 0x95, 0x24, 0xeb, 0xee, 0x49, - 0x66, 0x8c, 0x4a, 0x5b, 0x56, 0xd8, 0x6f, 0x00, 0x98, 0xcb, 0x95, 0xaa, 0x5a, 0x0b, 0x75, 0xed, - 0x63, 0x54, 0x4c, 0x0e, 0xcf, 0x3c, 0xa2, 0xcb, 0x2a, 0xb5, 0xbd, 0x03, 0xac, 0x1d, 0x9a, 0x2e, - 0x4b, 0xb6, 0x8f, 0xf9, 0xde, 0xd9, 0x85, 0x6a, 0xec, 0xc9, 0x12, 0xb5, 0xf2, 0x5b, 0x66, 0x84, - 0x8e, 0x76, 0x3c, 0x10, 0x62, 0x05, 0xa7, 0xc0, 0x8e, 0x9c, 0x4c, 0x83, 0x44, 0x66, 0x90, 0xb6, - 0xf9, 0x07, 0x30, 0xa7, 0xd7, 0x5c, 0x13, 0x5d, 0xac, 0x37, 0x4a, 0x32, 0xa9, 0xda, 0xb9, 0xb5, - 0x1e, 0x91, 0x86, 0x84, 0x69, 0xbd, 0xd6, 0x9e, 0xa3, 0x47, 0x44, 0xe9, 0x7e, 0x9d, 0xbd, 0x07, - 0xd3, 0x3e, 0x73, 0x4d, 0xc3, 0xb4, 0xb5, 0xde, 0xd3, 0xd6, 0xa4, 0xc7, 0x56, 0xd3, 0xb8, 0x5f, - 0x67, 0xb7, 0x61, 0xd6, 0xba, 0x0f, 0x51, 0x8b, 0xd6, 0xff, 0x29, 0x4f, 0x51, 0xe7, 0x66, 0x08, - 0x18, 0x36, 0x77, 0x07, 0x59, 0x47, 0x11, 0x2d, 0x54, 0x37, 0xcb, 0x12, 0xd6, 0x14, 0x7b, 0x43, - 0x35, 0xc1, 0x11, 0xa5, 0xa6, 0xeb, 0xec, 0x23, 0xe0, 0xec, 0x19, 0x70, 0x95, 0x06, 0xd6, 0x48, - 0xf6, 0x48, 0x1d, 0xbb, 0x61, 0x61, 0x96, 0xea, 0x39, 0xd5, 0x02, 0x1d, 0xae, 0x0a, 0x8c, 0xb7, - 0x2d, 0xc9, 0x92, 0x6e, 0xd0, 0x8c, 0x91, 0x7d, 0x29, 0x96, 0xc0, 0xde, 0x73, 0x74, 0x42, 0xc2, - 0xc2, 0x98, 0xe4, 0x6e, 0x62, 0xf3, 0x30, 0xa9, 0xa8, 0xce, 0x2e, 0xac, 0xab, 0xb2, 0x54, 0x3e, - 0xa6, 0x47, 0x4a, 0x70, 0xc0, 0x11, 0x61, 0x42, 0x51, 0xe9, 0xfe, 0x78, 0x44, 0xc4, 0x59, 0x1d, - 0xe6, 0x44, 0xb3, 0x2e, 0xc2, 0x5e, 0x3b, 0x12, 0xd6, 0x29, 0xe7, 0xbe, 0xd5, 0x05, 0xa7, 0xdb, - 0xb7, 0x6e, 0xa9, 0x3b, 0x44, 0xdd, 0x6d, 0x55, 0xc2, 0x3a, 0x49, 0xd0, 0x11, 0x61, 0x46, 0x0c, - 0x6a, 0x64, 0xbf, 0x8b, 0xe0, 0x15, 0xea, 0x15, 0x2b, 0x8f, 0x45, 0xa5, 0x8c, 0x2b, 0x8e, 0xbd, - 0xb6, 0xff, 0x05, 0xe2, 0x3f, 0xdf, 0x9f, 0xff, 0xbb, 0xd4, 0xce, 0x97, 0xe8, 0x6b, 0x5f, 0x20, - 0x09, 0xb1, 0xa7, 0x14, 0x2d, 0x43, 0xbc, 0x49, 0xbe, 0x57, 0xe9, 0x3f, 0x68, 0x96, 0x21, 0x9e, - 0xa3, 0xe2, 0x1d, 0x04, 0x17, 0x69, 0x9f, 0xbc, 0x09, 0xd8, 0xe9, 0x8f, 0x05, 0x03, 0x6e, 0xf7, - 0xd7, 0x1f, 0xb7, 0x6d, 0x4f, 0x5f, 0x06, 0x85, 0xb8, 0xd8, 0x55, 0xc2, 0xdc, 0xa7, 0x5e, 0xef, - 0xa2, 0x2c, 0xab, 0x47, 0xe6, 0x7f, 0xb9, 0xb9, 0x9e, 0xdd, 0xb1, 0x4f, 0x0d, 0x62, 0xee, 0x8e, - 0xa9, 0x74, 0x47, 0x96, 0xe9, 0x0a, 0xf3, 0xa6, 0x7b, 0x6e, 0xbc, 0x87, 0xa1, 0x21, 0x73, 0x85, - 0x79, 0x12, 0x3b, 0x7b, 0x00, 0x53, 0xbe, 0xf3, 0x82, 0x6c, 0x88, 0x89, 0xc0, 0x0b, 0x24, 0xf7, - 0x69, 0xdf, 0xf5, 0x0c, 0xda, 0x1d, 0x12, 0x26, 0x3d, 0xa7, 0x00, 0xd9, 0x0d, 0x4b, 0x10, 0x53, - 0x1b, 0x86, 0x2e, 0x55, 0x70, 0xb1, 0x29, 0xd5, 0x39, 0x86, 0xec, 0xff, 0x11, 0xba, 0xf7, 0xdf, - 0x42, 0x02, 0xd0, 0xd6, 0x7d, 0xa9, 0xce, 0xae, 0xc2, 0xb8, 0x4b, 0xb6, 0xd8, 0xcc, 0x71, 0x5b, - 0x1e, 0xee, 0xec, 0x6d, 0x84, 0x84, 0xd1, 0xb6, 0xfc, 0x7e, 0x8e, 0xdd, 0x04, 0xd6, 0xd6, 0x50, - 0xc4, 0x1a, 0xb6, 0xd8, 0x0d, 0x6e, 0xd2, 0xef, 0x64, 0x92, 0x0a, 0x3d, 0x74, 0x64, 0xd8, 0xdb, - 0x30, 0xd3, 0xa9, 0x69, 0xba, 0xbc, 0xd5, 0xe1, 0x72, 0xaa, 0x43, 0x7b, 0x3f, 0xc7, 0x2e, 0xc3, - 0x58, 0xa9, 0x5a, 0xb7, 0x4a, 0x34, 0xad, 0x28, 0x55, 0x38, 0xd6, 0xe3, 0xb4, 0x8e, 0x84, 0x58, - 0xa9, 0x5a, 0x27, 0x15, 0xa0, 0x76, 0xbf, 0xc2, 0xae, 0x01, 0x63, 0x8a, 0xd7, 0x31, 0xd6, 0x8a, - 0xa2, 0xc5, 0xec, 0x70, 0x53, 0x7e, 0x8d, 0xf1, 0x52, 0xb5, 0xfe, 0x08, 0x63, 0x8d, 0x52, 0x3f, - 0xec, 0x6d, 0x18, 0x23, 0xe3, 0xa0, 0x69, 0xf5, 0x62, 0x4d, 0xad, 0x60, 0x6e, 0x3a, 0x89, 0xae, - 0x8f, 0x67, 0xe2, 0xbe, 0xd9, 0x31, 0x87, 0x42, 0xd3, 0xea, 0x84, 0x87, 0x8b, 0x35, 0xad, 0x87, - 0x07, 0x6a, 0x05, 0xb3, 0x5f, 0x80, 0x29, 0x9a, 0x79, 0x2b, 0x58, 0xac, 0x14, 0x0d, 0xa9, 0x86, - 0xd5, 0x86, 0xc1, 0xcd, 0x26, 0xd1, 0xf5, 0xb1, 0x7c, 0x8c, 0x90, 0x28, 0x4b, 0x11, 0xee, 0xfb, - 0xff, 0x0d, 0xc2, 0xa4, 0x25, 0xb7, 0x83, 0xc5, 0xca, 0x1b, 0x96, 0x14, 0xbb, 0x05, 0x53, 0xfe, - 0x88, 0xcd, 0xe1, 0xf9, 0x42, 0xc7, 0xf0, 0x30, 0xde, 0xa8, 0xf7, 0x73, 0xb7, 0xfe, 0x11, 0x3d, - 0x6f, 0xa1, 0xbf, 0x47, 0x70, 0x15, 0x66, 0x5c, 0x55, 0x93, 0xeb, 0xdc, 0x1f, 0x4b, 0xf3, 0xe9, - 0x1c, 0x9f, 0xdd, 0xe0, 0xd3, 0x1b, 0x7c, 0x76, 0x13, 0x2e, 0xc0, 0x5c, 0x9b, 0xe8, 0xf3, 0x4a, - 0xa2, 0x75, 0x48, 0xc0, 0xec, 0x1e, 0x2e, 0x37, 0x34, 0xc9, 0x38, 0xf6, 0x35, 0x46, 0x36, 0xf8, - 0xf4, 0x2a, 0x70, 0xc0, 0xd2, 0x12, 0xcd, 0x5d, 0x9a, 0x85, 0xd2, 0xe4, 0x32, 0x8b, 0xd0, 0x6d, - 0x0f, 0xb0, 0xfe, 0xb8, 0x7d, 0x97, 0xe5, 0x32, 0x10, 0xca, 0xae, 0xc2, 0x75, 0x98, 0xbd, 0x53, - 0x69, 0x92, 0xfc, 0xe3, 0x6b, 0x1d, 0x4f, 0x6f, 0xf2, 0xe9, 0x2d, 0x3e, 0xbb, 0xc5, 0x67, 0x56, - 0xf9, 0x4c, 0x26, 0x7f, 0x91, 0x96, 0x1b, 0x56, 0xe9, 0x36, 0xe1, 0xaa, 0xf0, 0xc2, 0x19, 0x7e, - 0x2d, 0x7f, 0x99, 0x9e, 0xf5, 0x6d, 0x46, 0x7c, 0xfe, 0xa4, 0x85, 0x38, 0x13, 0xd4, 0x65, 0xb2, - 0x7c, 0x86, 0xd4, 0x75, 0xf9, 0x14, 0x3d, 0x19, 0x6b, 0x58, 0x7f, 0xec, 0x05, 0x6c, 0xd3, 0xcf, - 0x5a, 0x68, 0xfd, 0xa4, 0x85, 0x32, 0xa7, 0x2d, 0x14, 0xcd, 0x66, 0xf8, 0x6c, 0x9a, 0xcf, 0xa4, - 0xf3, 0x97, 0x03, 0xc8, 0xf6, 0x09, 0x4a, 0xb6, 0xdb, 0x05, 0x63, 0xfe, 0x26, 0xcc, 0x78, 0x8f, - 0x1b, 0x5b, 0x92, 0x7d, 0xd6, 0x42, 0x66, 0x9d, 0x3b, 0x7c, 0xda, 0x42, 0x43, 0x9b, 0x7c, 0x66, - 0x83, 0xdf, 0xca, 0xf3, 0x5d, 0x4a, 0xd1, 0x69, 0x17, 0xf3, 0x1e, 0x4d, 0xa7, 0xf9, 0xcc, 0x1a, - 0x9f, 0xce, 0xe4, 0x53, 0x30, 0xe3, 0x2f, 0x2b, 0xdb, 0xfd, 0x1b, 0xa7, 0x95, 0xeb, 0x18, 0x01, - 0xae, 0xeb, 0x7c, 0x3a, 0xeb, 0xd4, 0xad, 0x1c, 0x33, 0x5f, 0x88, 0x44, 0x33, 0xcc, 0x9a, 0x43, - 0xdc, 0x0f, 0x33, 0x51, 0x8b, 0xbe, 0x2f, 0x44, 0xa2, 0x63, 0xcc, 0xf8, 0xe2, 0x47, 0xc3, 0xa4, - 0x2e, 0xa4, 0x04, 0x9f, 0x77, 0xe4, 0x0b, 0x30, 0x43, 0xe0, 0x67, 0x07, 0x73, 0xd8, 0xbb, 0x3c, - 0x9c, 0x32, 0x31, 0xa8, 0x8f, 0xf8, 0x63, 0x7f, 0x27, 0x80, 0x65, 0xb5, 0x72, 0x9d, 0x55, 0x30, - 0xbe, 0xf6, 0x71, 0x68, 0x48, 0x5f, 0x0d, 0x30, 0x20, 0x4c, 0xeb, 0x01, 0x12, 0x34, 0x51, 0xdb, - 0xee, 0x2d, 0x02, 0xba, 0x67, 0xed, 0x82, 0xcc, 0x44, 0x4d, 0x9d, 0x59, 0x5c, 0x36, 0x2b, 0x9a, - 0xe8, 0xd1, 0x6d, 0xc0, 0x5d, 0xb9, 0xac, 0xf8, 0xac, 0x90, 0xaf, 0x73, 0x52, 0x5f, 0x32, 0xff, - 0xeb, 0xb1, 0xe2, 0x42, 0xa7, 0x36, 0x37, 0xda, 0x6e, 0x30, 0x87, 0xdb, 0xa9, 0x75, 0xa9, 0xab, - 0xb2, 0x2c, 0xea, 0x7a, 0xcf, 0xaa, 0x25, 0x24, 0x4c, 0xd9, 0xe5, 0x2e, 0x9d, 0x42, 0x53, 0x85, - 0xfd, 0xed, 0x36, 0xe3, 0x4b, 0x6c, 0x58, 0xd1, 0x5a, 0x45, 0x4b, 0xea, 0xcc, 0x68, 0x89, 0x0d, - 0x27, 0xd8, 0x90, 0x73, 0xad, 0xe0, 0xbc, 0x0f, 0x64, 0x26, 0x62, 0x3d, 0xab, 0xc1, 0x33, 0x99, - 0x89, 0xd1, 0x4f, 0xc8, 0x4c, 0x84, 0xbd, 0xcc, 0xc4, 0xad, 0xfb, 0xcf, 0x5b, 0xe8, 0x2e, 0x5c, - 0x81, 0x8b, 0xb4, 0x53, 0xc9, 0xe0, 0x24, 0x18, 0x49, 0x9b, 0xd9, 0xeb, 0x02, 0xcc, 0xd8, 0x62, - 0xde, 0xe6, 0xf0, 0x3a, 0xbf, 0x91, 0xbf, 0x19, 0x70, 0x91, 0xd1, 0x35, 0x01, 0x5d, 0x87, 0x19, - 0xdf, 0x4a, 0xe9, 0x96, 0x30, 0xae, 0xc1, 0xb4, 0x77, 0x92, 0x5c, 0x82, 0x76, 0xbe, 0x08, 0x6f, - 0x92, 0x64, 0x11, 0x48, 0x5d, 0x98, 0x9b, 0x3f, 0x46, 0x37, 0xbf, 0xe7, 0xa6, 0xce, 0x01, 0xad, - 0xee, 0x0d, 0xbf, 0xf8, 0x7e, 0x12, 0xc6, 0xad, 0x14, 0xbd, 0x57, 0xc7, 0x65, 0x82, 0x57, 0xbf, - 0x17, 0x86, 0x19, 0x73, 0x6c, 0xb1, 0xa6, 0x89, 0xc5, 0x32, 0xd6, 0x0c, 0xe9, 0x40, 0xc2, 0x95, - 0xe2, 0xe3, 0x23, 0x7a, 0x5d, 0xf6, 0x6f, 0xa1, 0x7f, 0x69, 0xa1, 0x4b, 0x92, 0xde, 0x5c, 0xde, - 0x5c, 0x5d, 0x5d, 0x5d, 0xd6, 0xb1, 0x26, 0x61, 0x7d, 0xd9, 0x99, 0x8d, 0xe5, 0xb2, 0x5a, 0x2b, - 0xa9, 0xa7, 0x2d, 0xf4, 0x97, 0x21, 0x78, 0xb5, 0x82, 0x65, 0x79, 0x19, 0x57, 0xaa, 0xf8, 0x2d, - 0x2d, 0x9d, 0xee, 0x22, 0xea, 0x92, 0xd2, 0x72, 0xeb, 0xab, 0xfd, 0x48, 0x65, 0xfb, 0x92, 0xca, - 0x75, 0x95, 0xba, 0x24, 0x55, 0x8f, 0x96, 0xb3, 0xdd, 0xa3, 0x87, 0xb3, 0xba, 0x07, 0xb3, 0xcd, - 0xda, 0x91, 0xa8, 0xe1, 0x8e, 0xf7, 0x53, 0x87, 0xcd, 0x5a, 0xc7, 0xcb, 0xc5, 0x2a, 0x56, 0xb0, - 0x26, 0x95, 0x97, 0x75, 0x49, 0xa9, 0xca, 0x78, 0x59, 0x91, 0xca, 0x7e, 0x99, 0xff, 0x6c, 0xa1, - 0x01, 0x5a, 0x6d, 0x30, 0x88, 0x9e, 0xe0, 0xdf, 0x0f, 0x21, 0x61, 0xca, 0x9e, 0x89, 0x6d, 0x7b, - 0x22, 0x76, 0x8f, 0xd8, 0x47, 0x30, 0x5a, 0x13, 0x09, 0xaf, 0xa8, 0xa8, 0x15, 0x6c, 0xdd, 0x4e, - 0x8e, 0xe4, 0x97, 0x4f, 0x9f, 0x5c, 0x75, 0x53, 0xba, 0xd7, 0x5c, 0x32, 0x14, 0x9c, 0xd1, 0x05, - 0x4c, 0xe8, 0xdb, 0x98, 0xd5, 0x4c, 0xee, 0xbb, 0x58, 0x0d, 0xe6, 0xbb, 0x4a, 0x73, 0x59, 0xc2, - 0x50, 0x5c, 0x0a, 0xdc, 0x84, 0x0f, 0x1c, 0x23, 0xf9, 0x19, 0x87, 0x7d, 0x08, 0x93, 0x1b, 0x8d, - 0x77, 0xad, 0x1b, 0x8d, 0xb9, 0xb6, 0x1f, 0xef, 0x2e, 0xda, 0x84, 0x51, 0x73, 0xeb, 0x39, 0xbd, - 0x08, 0x93, 0x5e, 0xcc, 0x04, 0xdc, 0xf3, 0x72, 0x48, 0x88, 0x59, 0xa2, 0x56, 0xb4, 0x05, 0x98, - 0x77, 0x16, 0xa8, 0xae, 0x1e, 0x18, 0xe6, 0x4c, 0x14, 0x9b, 0x58, 0xd3, 0xcd, 0x68, 0x23, 0x64, - 0x91, 0x8e, 0xdb, 0x03, 0x4a, 0xef, 0x75, 0xe7, 0x6c, 0x85, 0x3d, 0x2a, 0xbf, 0x6f, 0x89, 0xb3, - 0xbb, 0xc0, 0xa9, 0x75, 0x6c, 0x86, 0xa4, 0x54, 0x8b, 0xfa, 0xb1, 0x6e, 0xe0, 0x9a, 0x63, 0x6a, - 0x30, 0xd0, 0xd4, 0xac, 0x23, 0xbf, 0x47, 0xc4, 0x6d, 0x4b, 0xb7, 0x61, 0x42, 0x51, 0x8b, 0x25, - 0x55, 0xa9, 0xd0, 0x3d, 0xde, 0x9b, 0xf1, 0x1c, 0x10, 0xc6, 0x14, 0x35, 0xaf, 0x2a, 0x15, 0x2b, - 0xdb, 0x9b, 0xc9, 0x8f, 0x71, 0x29, 0x5b, 0xc9, 0xd9, 0xca, 0xf2, 0xcb, 0xdd, 0x93, 0xb3, 0xcb, - 0x40, 0xc7, 0xc1, 0x37, 0x5e, 0x72, 0x1a, 0x49, 0x7e, 0x7e, 0x1d, 0x6c, 0xf4, 0xed, 0x26, 0xa2, - 0x4c, 0xcc, 0x0e, 0x3d, 0xcf, 0xbd, 0x69, 0xaa, 0xe5, 0xe1, 0x89, 0xd8, 0x23, 0x98, 0x29, 0x37, - 0x74, 0x43, 0xad, 0xf9, 0x8d, 0x59, 0x29, 0xff, 0x0b, 0x7d, 0x91, 0x3d, 0xc1, 0xe4, 0x93, 0xc3, - 0xa7, 0x4c, 0x59, 0x1e, 0xbc, 0x8e, 0x5d, 0xdd, 0x70, 0x32, 0xa5, 0xe5, 0x79, 0xac, 0x37, 0xb1, - 0xe2, 0x3b, 0x13, 0xfd, 0xdd, 0xf0, 0x19, 0x1b, 0x7f, 0xa9, 0x6e, 0x04, 0xd5, 0x4a, 0xb4, 0x1b, - 0x21, 0xbb, 0x1b, 0x5e, 0xc7, 0x1b, 0x10, 0xb3, 0xb9, 0xd7, 0x6a, 0xbd, 0x41, 0xd0, 0x57, 0xf7, - 0x83, 0x12, 0xa8, 0xe8, 0xbd, 0x7a, 0x83, 0xcd, 0x02, 0x50, 0x8a, 0xd5, 0xd4, 0x9b, 0xec, 0xa9, - 0x37, 0x62, 0x49, 0x9a, 0x6a, 0xf7, 0x21, 0x46, 0xd5, 0x9a, 0xa6, 0xde, 0xab, 0x44, 0xef, 0x6a, - 0xe0, 0xca, 0xda, 0xbf, 0xf7, 0xe8, 0x4d, 0x4f, 0x4f, 0xcc, 0x08, 0x2c, 0xe5, 0xfd, 0xaa, 0x15, - 0x81, 0x1d, 0x7a, 0xb3, 0xc6, 0x5d, 0xed, 0xc9, 0x9f, 0x8c, 0x50, 0xc9, 0xfd, 0x1a, 0xbb, 0x0d, - 0x23, 0x76, 0x04, 0x35, 0xee, 0x1a, 0xd1, 0x7a, 0x35, 0xd8, 0xff, 0x03, 0xaf, 0xf7, 0x88, 0x10, - 0xa5, 0xde, 0x6b, 0xec, 0xab, 0x30, 0x6c, 0x83, 0x34, 0xb6, 0xe3, 0xeb, 0x0d, 0xbb, 0x89, 0xbd, - 0x03, 0xb1, 0xb2, 0xaa, 0x6a, 0x15, 0x49, 0x11, 0xcd, 0x32, 0x62, 0x8a, 0x38, 0xf3, 0x67, 0x30, - 0x32, 0x77, 0xdb, 0x6d, 0x31, 0xc1, 0xad, 0xc3, 0xbe, 0x06, 0xe3, 0x8a, 0x5a, 0x3c, 0xdc, 0xd4, - 0xed, 0x4b, 0x1c, 0x42, 0x90, 0x75, 0xe7, 0x03, 0x46, 0x15, 0xf5, 0xcb, 0x9b, 0x3a, 0xbd, 0x87, - 0x62, 0xdf, 0x84, 0x98, 0x5b, 0x75, 0xb6, 0xef, 0x0b, 0xc2, 0xf1, 0xf7, 0x9e, 0xb8, 0x35, 0x77, - 0x07, 0x05, 0x38, 0x6c, 0x9b, 0x7d, 0x08, 0x73, 0xb2, 0x5a, 0xd5, 0x8b, 0xba, 0xa1, 0x61, 0xb1, - 0x66, 0xa6, 0x2c, 0xe7, 0xc3, 0x4a, 0xae, 0x27, 0xc9, 0x30, 0x63, 0xaa, 0xed, 0xd9, 0x5a, 0xce, - 0x27, 0x94, 0x5f, 0x83, 0x51, 0x59, 0xad, 0x16, 0x35, 0x5c, 0xc6, 0x92, 0x09, 0xcf, 0xe7, 0xfb, - 0x8e, 0x73, 0xe2, 0xbd, 0x27, 0x1e, 0xd5, 0xdd, 0x21, 0x21, 0x26, 0xab, 0x55, 0x81, 0x3e, 0x9a, - 0xd9, 0xbd, 0x82, 0x15, 0x42, 0xa7, 0x14, 0x1b, 0x7a, 0x89, 0x72, 0x53, 0xc1, 0xe1, 0x0d, 0x0b, - 0x60, 0xca, 0xde, 0x91, 0xe5, 0x37, 0xf5, 0x12, 0x7b, 0x0b, 0xc6, 0x1c, 0x0e, 0x86, 0xa8, 0x5e, - 0xe8, 0xa9, 0x1a, 0x13, 0x29, 0xf7, 0x62, 0xea, 0x0a, 0x00, 0x0d, 0xbd, 0x64, 0x33, 0x7b, 0x17, - 0xfb, 0xee, 0xcd, 0xd8, 0x7b, 0x4f, 0x5c, 0x8a, 0xbb, 0xc3, 0xc2, 0x48, 0x43, 0x2f, 0x51, 0xc2, - 0xef, 0xab, 0x30, 0xab, 0xa8, 0x45, 0x59, 0x2d, 0x8b, 0xb2, 0x99, 0x1b, 0x0c, 0x4d, 0x95, 0x8b, - 0x75, 0x59, 0x54, 0x30, 0x97, 0x3c, 0xf3, 0x02, 0x39, 0x6a, 0x02, 0x9f, 0xd7, 0x4d, 0xd5, 0x6d, - 0x4b, 0xf3, 0x91, 0xa9, 0xc8, 0x96, 0x60, 0x2a, 0xc8, 0xde, 0x2b, 0xc4, 0xde, 0x52, 0xe0, 0x9e, - 0xe8, 0x30, 0x62, 0xa5, 0x7a, 0xea, 0x65, 0x52, 0xee, 0xf0, 0xf1, 0x45, 0x08, 0xe9, 0x47, 0xdc, - 0x22, 0x31, 0x79, 0x23, 0x70, 0x08, 0xf6, 0x7d, 0x47, 0xa2, 0x65, 0xd1, 0xc4, 0xc2, 0x42, 0x48, - 0x3f, 0x62, 0x6f, 0x43, 0x48, 0xd5, 0xb9, 0xcb, 0x3d, 0xee, 0x98, 0xbe, 0xe2, 0x3d, 0x08, 0xdd, - 0xfa, 0xaa, 0x09, 0x37, 0xc6, 0xc8, 0x17, 0xfa, 0xa4, 0x3a, 0x56, 0x44, 0x99, 0xfb, 0xa8, 0xff, - 0x6b, 0xf2, 0xe9, 0xf7, 0x9e, 0x78, 0x95, 0x49, 0xc9, 0x32, 0x6a, 0xbe, 0xba, 0x4f, 0xdf, 0xb8, - 0x49, 0xe8, 0x92, 0xac, 0x96, 0x0f, 0x71, 0x85, 0x7c, 0x42, 0x43, 0x0e, 0xde, 0x1b, 0x3d, 0x96, - 0xcc, 0x88, 0x43, 0x42, 0xe7, 0x2d, 0xb5, 0x3d, 0xaa, 0xc5, 0x7e, 0x1d, 0x98, 0x0e, 0x4b, 0x3c, - 0xb1, 0xc4, 0x07, 0xce, 0x89, 0x4f, 0xdf, 0x41, 0x1d, 0x23, 0xc2, 0x44, 0xc9, 0x67, 0x3a, 0x0b, - 0x73, 0xb2, 0xd8, 0x50, 0xca, 0x8f, 0x8b, 0xd2, 0xa1, 0x09, 0x18, 0x2c, 0x66, 0xab, 0x2e, 0x96, - 0x31, 0xb7, 0x9c, 0x44, 0xd7, 0xa3, 0xc2, 0xb4, 0xd5, 0x7c, 0xff, 0x10, 0xdf, 0x57, 0x1e, 0xda, - 0x6d, 0xec, 0x31, 0xc4, 0xd5, 0x83, 0x03, 0x59, 0x52, 0x70, 0x51, 0x6f, 0x68, 0x4d, 0xa9, 0x29, - 0x96, 0x24, 0x59, 0x32, 0x8e, 0x2d, 0xce, 0x69, 0x85, 0xc4, 0x96, 0x0e, 0x1e, 0x4f, 0x4b, 0x6d, - 0xcf, 0xad, 0xf5, 0x40, 0xad, 0xb8, 0xbe, 0x27, 0x27, 0x13, 0xc5, 0xa9, 0x5d, 0xe4, 0xcc, 0x35, - 0x2a, 0xd5, 0x0f, 0xc4, 0x92, 0x26, 0x95, 0x5d, 0x94, 0x08, 0xb7, 0x1a, 0x58, 0x0c, 0x92, 0x54, - 0x2a, 0xe0, 0x07, 0x58, 0x7f, 0x4c, 0xc8, 0x9c, 0xfc, 0xe4, 0x07, 0x4f, 0xc8, 0x0d, 0x9e, 0x53, - 0x13, 0x22, 0x61, 0xd2, 0x36, 0xe7, 0x48, 0x99, 0xe9, 0xcc, 0x39, 0xca, 0x35, 0x49, 0x6d, 0xba, - 0x3e, 0x6f, 0xd8, 0xe8, 0x31, 0x83, 0x20, 0xd8, 0xa0, 0x78, 0xcf, 0xd4, 0x6a, 0x7f, 0x6e, 0xf6, - 0x75, 0x60, 0x7c, 0x76, 0x74, 0x6e, 0xb3, 0xc7, 0x04, 0x7a, 0xd5, 0xdb, 0x13, 0x08, 0xc2, 0x84, - 0xee, 0x6d, 0x62, 0xb7, 0x01, 0x68, 0x9d, 0x50, 0x51, 0x74, 0x42, 0x7e, 0xc6, 0x32, 0x89, 0xc0, - 0x91, 0xdf, 0x26, 0x62, 0x3b, 0x0f, 0xf7, 0xac, 0xdd, 0x29, 0x8c, 0x58, 0x7a, 0x3b, 0x8a, 0x7e, - 0xeb, 0xaf, 0xd0, 0xf3, 0x16, 0xfa, 0x21, 0x82, 0xcb, 0x30, 0x95, 0x17, 0x75, 0xa9, 0xec, 0xc3, - 0x95, 0xa3, 0x69, 0x3e, 0xbb, 0xc6, 0xaf, 0xf1, 0x84, 0xdc, 0x82, 0x39, 0x60, 0xcd, 0xea, 0xce, - 0xcf, 0xba, 0xe5, 0x20, 0xde, 0x8d, 0xbb, 0x43, 0x5b, 0xb0, 0xd0, 0x0d, 0xb3, 0x86, 0xd2, 0x19, - 0xb8, 0xd5, 0x95, 0x4f, 0x4b, 0xa6, 0xb3, 0x84, 0x49, 0x5b, 0xe3, 0x33, 0x39, 0x7e, 0x6d, 0x9d, - 0x5f, 0xcb, 0xf2, 0x6b, 0x1b, 0xfc, 0xfa, 0x2a, 0xbf, 0xbe, 0xc1, 0x67, 0xd7, 0xf9, 0xec, 0x46, - 0x3e, 0x01, 0x31, 0x52, 0x9d, 0xba, 0xe0, 0xe8, 0xf0, 0x49, 0x0b, 0x0d, 0xd1, 0x2b, 0xef, 0xfc, - 0x35, 0x60, 0x9d, 0x3a, 0xf0, 0xa0, 0xea, 0xfe, 0x66, 0x14, 0x9c, 0xef, 0x27, 0x56, 0xf9, 0x74, - 0xda, 0x14, 0x74, 0x2a, 0x2d, 0xaf, 0xe0, 0xd8, 0x49, 0x0b, 0x8d, 0x12, 0xc1, 0x35, 0x3e, 0xbd, - 0x9e, 0x5f, 0x04, 0xa8, 0xd6, 0x1b, 0x6e, 0x0e, 0x8c, 0x39, 0x69, 0xa1, 0x09, 0xc2, 0x81, 0xe5, - 0xf8, 0xf4, 0x06, 0xbf, 0x96, 0xcb, 0x27, 0x60, 0xa4, 0x59, 0x73, 0xdb, 0xb8, 0x7a, 0xd2, 0x42, - 0x57, 0x4c, 0x1b, 0x6b, 0x9b, 0xfc, 0xda, 0x96, 0xe9, 0xcc, 0x75, 0x98, 0xba, 0x05, 0x67, 0x4e, - 0x5a, 0x68, 0x9a, 0x10, 0x80, 0x69, 0x3e, 0x93, 0xc9, 0xdf, 0x80, 0x69, 0x72, 0xb0, 0xda, 0xc7, - 0x99, 0x5b, 0x94, 0x3b, 0x69, 0xa1, 0x39, 0x22, 0xba, 0xce, 0x67, 0xb2, 0xf9, 0x1b, 0x30, 0xd9, - 0x3e, 0x2a, 0xdc, 0xe1, 0x2d, 0x9c, 0xb4, 0x50, 0xdc, 0x0c, 0x2f, 0xb3, 0xc1, 0x67, 0x36, 0xf9, - 0xcc, 0x56, 0x7e, 0x03, 0xe2, 0x01, 0x79, 0xde, 0xd6, 0x99, 0x7f, 0xd6, 0x42, 0x49, 0x0a, 0xd5, - 0x2f, 0x91, 0x98, 0x33, 0xfc, 0xda, 0x1a, 0xe1, 0x22, 0x97, 0x61, 0xce, 0x9f, 0x89, 0xdc, 0xc4, - 0xe1, 0x8d, 0x93, 0x16, 0xba, 0x7e, 0xda, 0x42, 0x43, 0xeb, 0x69, 0x3e, 0xb9, 0xbe, 0x9e, 0xbf, - 0x09, 0xb3, 0xbe, 0x75, 0xef, 0x8e, 0x7f, 0xe3, 0xa4, 0x85, 0x72, 0xa6, 0xfd, 0x6c, 0x96, 0xcf, - 0xe6, 0x0a, 0x91, 0xe8, 0x10, 0x33, 0xec, 0x7c, 0x69, 0x32, 0xca, 0x8c, 0x15, 0x22, 0xd1, 0x09, - 0x86, 0x29, 0x44, 0xa2, 0x57, 0x98, 0xab, 0x85, 0x48, 0x74, 0x9a, 0x99, 0x29, 0x44, 0xa2, 0x73, - 0x0c, 0x57, 0x88, 0x44, 0xe3, 0xcc, 0x42, 0x21, 0x12, 0x4d, 0x30, 0x97, 0x0a, 0x91, 0xe8, 0x25, - 0x26, 0x59, 0x88, 0x44, 0xaf, 0x33, 0x37, 0x0a, 0x91, 0xe8, 0x12, 0x73, 0xb3, 0x10, 0x89, 0xde, - 0x64, 0xf8, 0x42, 0x24, 0x9a, 0x62, 0x56, 0x0a, 0x91, 0x68, 0x8e, 0xd9, 0x58, 0xfc, 0x09, 0x07, - 0xe3, 0xdb, 0x1a, 0x16, 0x0d, 0xec, 0x90, 0x09, 0x99, 0x9e, 0x5c, 0x42, 0x30, 0xbc, 0x7d, 0x25, - 0x08, 0xde, 0x7a, 0xf1, 0xea, 0x6f, 0x7c, 0x72, 0xbc, 0xda, 0x1d, 0x98, 0xbe, 0x12, 0x04, 0x4c, - 0xbd, 0x08, 0xf4, 0x93, 0x62, 0xbd, 0xaf, 0x7f, 0x4a, 0x58, 0xef, 0x33, 0x47, 0x79, 0xdf, 0xfa, - 0xec, 0x50, 0xde, 0x39, 0xbe, 0xfb, 0xbf, 0x8a, 0xef, 0x38, 0x1f, 0xc6, 0xfa, 0x25, 0xe2, 0xaa, - 0xc8, 0x67, 0x85, 0xab, 0x22, 0x9f, 0x06, 0xae, 0x1a, 0xfc, 0x5f, 0xc0, 0x55, 0x83, 0x1f, 0x1f, - 0x57, 0x0d, 0x7d, 0x7c, 0x5c, 0x35, 0xf4, 0x99, 0xe0, 0xaa, 0x21, 0x37, 0xae, 0xfa, 0xf2, 0xc7, - 0xc1, 0x55, 0xbb, 0xc3, 0xc1, 0x88, 0xea, 0x37, 0x3f, 0x25, 0x44, 0xb5, 0x3b, 0x1c, 0x84, 0xa5, - 0xfa, 0x27, 0x3c, 0xa2, 0x9f, 0x0a, 0xe1, 0x11, 0x75, 0x11, 0x1e, 0xbf, 0x52, 0x30, 0xe7, 0x97, - 0x0e, 0x3a, 0xd5, 0xcf, 0x04, 0x30, 0xf5, 0x80, 0x49, 0x9f, 0x37, 0x08, 0x33, 0xf9, 0xfe, 0x6d, - 0xdf, 0x85, 0x51, 0x07, 0x34, 0x78, 0xfa, 0x02, 0xb9, 0x5f, 0xe4, 0xf9, 0x40, 0x68, 0x30, 0xfb, - 0xf4, 0x05, 0x0a, 0x78, 0x6f, 0x4a, 0x07, 0xe0, 0x03, 0x22, 0xdd, 0xf9, 0x3e, 0x7f, 0xc1, 0x03, - 0x12, 0xc6, 0x9f, 0xbe, 0x40, 0xae, 0x67, 0xd3, 0x56, 0x40, 0xf9, 0x4f, 0x6c, 0x75, 0xbe, 0xcf, - 0xaf, 0x76, 0xc1, 0x00, 0xdc, 0xd3, 0x17, 0x28, 0xb0, 0x25, 0xbf, 0x14, 0x04, 0x05, 0x66, 0x9e, - 0xbe, 0x40, 0x9d, 0xaf, 0xf3, 0xaf, 0xf5, 0xc4, 0x02, 0x89, 0xa7, 0x2f, 0x50, 0x8f, 0xf6, 0x7c, - 0xdc, 0x0d, 0x74, 0xc6, 0x9e, 0xbe, 0x40, 0xed, 0xc7, 0x7c, 0xae, 0x3b, 0x58, 0x58, 0x78, 0xfa, - 0x02, 0x75, 0x6b, 0xcc, 0xaf, 0x77, 0x45, 0x0d, 0xf1, 0xa7, 0x2f, 0x50, 0x97, 0x36, 0xe7, 0x0e, - 0x71, 0x90, 0x19, 0xea, 0x01, 0x25, 0x7a, 0x83, 0x08, 0x0b, 0x68, 0xf4, 0x82, 0x12, 0x7f, 0xc7, - 0xc1, 0x04, 0xbd, 0xcc, 0x3a, 0xc7, 0x12, 0xe7, 0x58, 0xe2, 0x1c, 0x4b, 0x9c, 0x63, 0x89, 0x73, - 0x2c, 0x71, 0x8e, 0x25, 0x7e, 0x0d, 0xb0, 0xc4, 0x2f, 0xbd, 0x44, 0x3e, 0x07, 0x33, 0x7d, 0x82, - 0x99, 0x73, 0x2c, 0x71, 0x8e, 0x25, 0xce, 0xb1, 0xc4, 0xaf, 0x3e, 0x96, 0xf8, 0x39, 0x07, 0xb1, - 0x7b, 0xd8, 0xf8, 0x75, 0xc7, 0x11, 0xb7, 0xce, 0xfc, 0x2a, 0xae, 0xfb, 0x57, 0x70, 0x9b, 0x67, - 0x7d, 0x05, 0xf7, 0x99, 0x7d, 0xf5, 0x76, 0x8e, 0x5e, 0xce, 0xd1, 0xcb, 0x39, 0x7a, 0x39, 0x47, - 0x2f, 0x9f, 0x67, 0xf4, 0xf2, 0x1a, 0x00, 0xf9, 0x97, 0x47, 0xba, 0x21, 0x1a, 0x98, 0x4b, 0x90, - 0x7f, 0x49, 0x76, 0x31, 0x68, 0x29, 0xed, 0x49, 0x06, 0xde, 0x33, 0x85, 0x84, 0x11, 0xdd, 0xfe, - 0x79, 0x7e, 0x8f, 0x72, 0x0e, 0x3d, 0xce, 0xa1, 0xc7, 0xcb, 0x42, 0x8f, 0xe9, 0x0e, 0xe8, 0xf1, - 0xd1, 0x6d, 0x74, 0x8e, 0x3e, 0x3e, 0x67, 0xe8, 0xa3, 0x7f, 0xc4, 0xd1, 0x27, 0xd6, 0xc8, 0xff, - 0x31, 0x3a, 0xf9, 0x59, 0x62, 0xe0, 0x83, 0x9f, 0x25, 0x06, 0x7e, 0xf1, 0xb3, 0x04, 0x7a, 0xfb, - 0x34, 0x81, 0x7e, 0x70, 0x9a, 0x40, 0x3f, 0x39, 0x4d, 0xa0, 0x93, 0xd3, 0x04, 0xfa, 0xe0, 0x34, - 0x81, 0x7e, 0x7a, 0x9a, 0x40, 0x1f, 0x9d, 0x26, 0x06, 0x7e, 0x71, 0x9a, 0x40, 0x7f, 0xf0, 0x61, - 0x62, 0xe0, 0xd9, 0x87, 0x09, 0x74, 0xf2, 0x61, 0x62, 0xe0, 0x83, 0x0f, 0x13, 0x03, 0xdf, 0xf8, - 0x5a, 0x55, 0xad, 0x1f, 0x56, 0x53, 0x76, 0x99, 0x9e, 0x6a, 0xe8, 0x2b, 0xe4, 0xc7, 0x81, 0xaa, - 0xd5, 0x96, 0xeb, 0x9a, 0xda, 0x94, 0x2a, 0x58, 0x5b, 0xb6, 0x9b, 0x57, 0xea, 0xa5, 0xaa, 0xba, - 0x82, 0xdf, 0x32, 0xec, 0xbf, 0xb4, 0xdd, 0xfd, 0x4f, 0x91, 0x97, 0x86, 0xc8, 0x9f, 0xab, 0x5e, - 0xfb, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5c, 0x25, 0x3d, 0xeb, 0xb7, 0x5c, 0x00, 0x00, + // 5224 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7c, 0x5b, 0x6c, 0xdb, 0x58, + 0x7a, 0xbf, 0x8f, 0x24, 0xdb, 0xf2, 0xa7, 0xd8, 0xa6, 0xe9, 0x1b, 0xad, 0x24, 0x8a, 0xc6, 0x99, + 0xdc, 0x1c, 0xfa, 0x22, 0xd9, 0xf2, 0x25, 0x33, 0x9b, 0xfd, 0x47, 0x76, 0x36, 0x8e, 0x66, 0x92, + 0xcd, 0xd2, 0x13, 0xff, 0x77, 0xb7, 0x17, 0x81, 0x12, 0x8f, 0x15, 0xae, 0x29, 0x52, 0x4b, 0x52, + 0xf2, 0xb8, 0x45, 0x80, 0x41, 0x06, 0xd8, 0x16, 0x8b, 0x02, 0x5b, 0x4c, 0xd1, 0x16, 0x28, 0x0a, + 0xec, 0xbe, 0x14, 0xd8, 0x4e, 0x1f, 0x8b, 0x0e, 0xd0, 0xd5, 0x3e, 0x04, 0x01, 0x0a, 0x2c, 0xf6, + 0xa5, 0x46, 0xd1, 0xcb, 0xa0, 0x0f, 0xc5, 0xae, 0xe7, 0x65, 0xda, 0xa7, 0x79, 0x29, 0xd0, 0xe6, + 0xa1, 0x28, 0x78, 0x78, 0x48, 0x91, 0x14, 0x25, 0x2b, 0x33, 0x93, 0xce, 0x5e, 0xfc, 0x32, 0x23, + 0xf2, 0x7c, 0xb7, 0x73, 0xfb, 0xce, 0xf7, 0xfb, 0x1d, 0xc6, 0xb0, 0xd0, 0xc0, 0xc6, 0x82, 0xac, + 0x2d, 0x1a, 0xe5, 0x47, 0xb8, 0x2a, 0x2e, 0x36, 0x64, 0x7c, 0x60, 0x2c, 0x36, 0x34, 0xc5, 0x34, + 0x4c, 0xb1, 0xbc, 0x5f, 0x34, 0x64, 0x13, 0x2f, 0x9a, 0x87, 0x35, 0x6c, 0x2c, 0xd4, 0x74, 0xcd, + 0xd4, 0xd8, 0x59, 0x5b, 0x7e, 0xc1, 0x96, 0x5f, 0x20, 0xf2, 0x0b, 0x7e, 0xf9, 0xe4, 0x7c, 0x45, + 0x36, 0x1f, 0xd5, 0x4b, 0x0b, 0x65, 0xad, 0xba, 0x58, 0xd1, 0x2a, 0xda, 0x22, 0x51, 0x2d, 0xd5, + 0xf7, 0xc8, 0x13, 0x79, 0x20, 0xbf, 0x6c, 0x93, 0xc9, 0x0b, 0xfe, 0x10, 0xf6, 0x14, 0x8c, 0x4d, + 0xaf, 0xcf, 0xe4, 0x9c, 0x5f, 0x40, 0xc5, 0xe6, 0x81, 0xa6, 0xef, 0x17, 0xf7, 0x64, 0x1d, 0x1f, + 0x88, 0x8a, 0xe2, 0x93, 0xbd, 0x1e, 0x2e, 0x2b, 0xab, 0x26, 0xd6, 0xf7, 0xc4, 0xb2, 0xaf, 0x33, + 0xc9, 0xb3, 0x7e, 0x61, 0xad, 0x66, 0xca, 0x9a, 0xea, 0x34, 0xa6, 0xfc, 0x8d, 0xc1, 0x91, 0x48, + 0xce, 0xf8, 0xdb, 0xbd, 0x4d, 0xe7, 0x02, 0x83, 0x2a, 0x2a, 0xb2, 0x24, 0x9a, 0x98, 0xb6, 0xa6, + 0xdb, 0x87, 0xbc, 0xe8, 0x77, 0xfd, 0x6a, 0xd8, 0xa4, 0x58, 0x01, 0x14, 0xbd, 0x5e, 0x2e, 0x84, + 0x49, 0x79, 0x05, 0xae, 0x05, 0x05, 0x74, 0xb3, 0x2e, 0x2a, 0x45, 0x3a, 0x26, 0x5e, 0xd1, 0xd9, + 0x3f, 0x60, 0x61, 0xe8, 0xae, 0x33, 0x46, 0x2c, 0x0f, 0x09, 0x09, 0x1b, 0x65, 0x5d, 0x26, 0x51, + 0x71, 0x28, 0x8d, 0xae, 0x0e, 0xe5, 0xe1, 0x47, 0xff, 0xfe, 0x34, 0xda, 0xaf, 0x47, 0xb9, 0x77, + 0x22, 0x82, 0xb7, 0x99, 0xdd, 0x83, 0x01, 0x45, 0x2c, 0x61, 0xc5, 0xe0, 0x22, 0xe9, 0xe8, 0xd5, + 0x44, 0x76, 0x63, 0xe1, 0xe4, 0x35, 0xb2, 0xe0, 0x3a, 0x5b, 0x78, 0x93, 0xe8, 0xde, 0x56, 0x4d, + 0xfd, 0x30, 0x3f, 0xfe, 0x67, 0x3f, 0x46, 0x31, 0x88, 0xa0, 0xbe, 0xe3, 0x9f, 0xfd, 0x5d, 0x74, + 0xe0, 0xbb, 0x3f, 0x46, 0x91, 0x78, 0x9f, 0x40, 0xad, 0xb3, 0x55, 0x60, 0xb1, 0xf9, 0x08, 0xeb, + 0x2a, 0x36, 0x5b, 0xf3, 0xc9, 0xf5, 0xa7, 0xd1, 0xd5, 0x44, 0x76, 0x35, 0xe0, 0xb3, 0x6d, 0xde, + 0x17, 0x6e, 0x53, 0x55, 0xd7, 0xf1, 0x5b, 0x87, 0x35, 0x9c, 0x8f, 0x1d, 0x35, 0x11, 0xda, 0xee, + 0x13, 0xc6, 0x70, 0xb0, 0x99, 0xfd, 0x16, 0x8c, 0x4b, 0x58, 0x92, 0xcb, 0xa2, 0x89, 0x25, 0x8f, + 0xbf, 0x01, 0xe2, 0x6f, 0xed, 0x44, 0x7f, 0x5b, 0x8e, 0xae, 0xcf, 0xe1, 0x76, 0x9f, 0xc0, 0x4a, + 0x6d, 0x2d, 0xec, 0x1f, 0x21, 0x48, 0xb5, 0x9c, 0x55, 0x45, 0x55, 0xac, 0xe0, 0x2a, 0x56, 0xbd, + 0xfd, 0x1c, 0x24, 0x7e, 0x6f, 0xf5, 0xee, 0xf7, 0x9e, 0x6b, 0xc5, 0xdf, 0xe5, 0xf8, 0xd3, 0x26, + 0x42, 0xb4, 0xdb, 0xe7, 0xa4, 0x2e, 0xd2, 0xec, 0x3e, 0x30, 0x66, 0x5d, 0x55, 0xb1, 0xe2, 0x09, + 0x23, 0x4e, 0xc2, 0x58, 0x39, 0x31, 0x8c, 0xb7, 0x88, 0x62, 0x67, 0xcf, 0xa3, 0xa6, 0x5f, 0x80, + 0x7d, 0x1b, 0x58, 0x45, 0xd3, 0x6a, 0x25, 0x6b, 0x85, 0xb4, 0xdc, 0x0d, 0xf5, 0x38, 0xbb, 0x6f, + 0x52, 0x55, 0xbf, 0xc3, 0xd1, 0x0f, 0x1f, 0x23, 0xc7, 0xe7, 0xc7, 0x74, 0xa2, 0x95, 0xa0, 0x24, + 0xfb, 0x18, 0x96, 0xa4, 0x72, 0xb1, 0xac, 0xd4, 0x0d, 0x13, 0xeb, 0xc5, 0x8a, 0xae, 0xd5, 0x6b, + 0xc5, 0xb2, 0xa6, 0xaa, 0xb8, 0x6c, 0xca, 0x0d, 0xd9, 0x3c, 0x6c, 0xb9, 0x29, 0x4a, 0xb2, 0x21, + 0x96, 0x14, 0x2c, 0x71, 0x09, 0x12, 0xd7, 0x44, 0x20, 0xae, 0xdb, 0xd5, 0x9a, 0x79, 0xb8, 0x8d, + 0x84, 0xeb, 0x52, 0x79, 0xd3, 0x36, 0x77, 0xc7, 0xb2, 0xb6, 0xe9, 0x31, 0xe6, 0xba, 0xdd, 0xa2, + 0xa6, 0xd8, 0xdf, 0x85, 0xc5, 0x5e, 0xdd, 0x63, 0xd5, 0xf6, 0x7e, 0xa6, 0xab, 0xf7, 0xb9, 0x1e, + 0xbc, 0xdf, 0xb6, 0x2d, 0x25, 0x37, 0x20, 0xe1, 0xd9, 0x7f, 0x2c, 0x03, 0xd1, 0x7d, 0x7c, 0x68, + 0x6f, 0x78, 0xc1, 0xfa, 0xc9, 0x4e, 0x40, 0x7f, 0x43, 0x54, 0xea, 0x98, 0x8b, 0x90, 0x77, 0xf6, + 0xc3, 0x8d, 0xc8, 0x3a, 0xba, 0xf1, 0x2f, 0xf1, 0x67, 0x4d, 0xf4, 0x10, 0x66, 0x80, 0x75, 0xad, + 0xa6, 0xef, 0x61, 0x53, 0x94, 0x44, 0x53, 0x64, 0xa3, 0x19, 0x3e, 0x0b, 0xe3, 0x30, 0xd2, 0x6a, + 0xb2, 0x26, 0x84, 0x45, 0xcb, 0x70, 0x11, 0xce, 0x6f, 0x6d, 0xa6, 0x69, 0x80, 0x69, 0x12, 0x61, + 0xda, 0x1b, 0x22, 0x1b, 0xc9, 0x2c, 0xfd, 0xb4, 0x89, 0xfe, 0x7b, 0x10, 0x9e, 0x21, 0x88, 0x59, + 0x5a, 0x73, 0x7f, 0x8b, 0xe0, 0x03, 0x04, 0xa9, 0xb0, 0xed, 0x9f, 0x8d, 0x3b, 0xfb, 0x1a, 0xd2, + 0xa1, 0xfb, 0x35, 0x3b, 0xe4, 0x6e, 0x08, 0x58, 0x3d, 0x69, 0x93, 0x65, 0x27, 0x5c, 0xe1, 0x74, + 0x6b, 0x43, 0x40, 0xb2, 0x7d, 0x1f, 0x64, 0x07, 0xec, 0x05, 0x6e, 0x45, 0xd5, 0xbe, 0x6c, 0xb3, + 0x71, 0x67, 0x3d, 0xc2, 0x0f, 0x11, 0xc4, 0xee, 0x8b, 0x55, 0x3c, 0xf7, 0x7d, 0x04, 0x7f, 0x8e, + 0xe0, 0x2c, 0xcc, 0xb4, 0x77, 0x62, 0x41, 0xc2, 0x0d, 0xb9, 0x8c, 0xe1, 0x1c, 0x24, 0x43, 0x7a, + 0xe0, 0xb4, 0x5e, 0x81, 0x4b, 0xdd, 0xa3, 0x77, 0x04, 0x67, 0x60, 0x3a, 0x18, 0xee, 0x82, 0xfd, + 0xc2, 0x72, 0xdf, 0x1e, 0xad, 0xa3, 0xf7, 0x6f, 0x08, 0x62, 0xbb, 0x6f, 0xde, 0xba, 0x3f, 0xf7, + 0x4f, 0x08, 0xfe, 0x01, 0xc1, 0x15, 0x38, 0x1b, 0x12, 0x6a, 0x5d, 0x35, 0xc5, 0x4a, 0x05, 0x4b, + 0xd9, 0xf8, 0x43, 0xfa, 0xcb, 0x0a, 0x3b, 0x44, 0xb0, 0xa1, 0x88, 0x6a, 0x51, 0x96, 0xe0, 0x42, + 0xf8, 0xb4, 0xb4, 0xd4, 0xe7, 0x4e, 0x9c, 0x15, 0xaf, 0xab, 0xf6, 0x99, 0x68, 0xb5, 0x76, 0x98, + 0x0b, 0xb7, 0xfd, 0x7b, 0x51, 0x88, 0xdd, 0xd7, 0x24, 0x3c, 0xf7, 0x9d, 0x28, 0xbc, 0x1b, 0x05, + 0x3e, 0x34, 0x6e, 0xba, 0x11, 0xb3, 0x23, 0xb7, 0x14, 0x25, 0xbd, 0x23, 0x9b, 0x38, 0x6d, 0xa9, + 0x18, 0xd6, 0xa8, 0x86, 0x48, 0xab, 0x9a, 0x84, 0x61, 0x1e, 0xce, 0x86, 0xcd, 0x5b, 0x27, 0x4b, + 0x49, 0xe0, 0xc2, 0xc4, 0x89, 0xa9, 0x75, 0xb8, 0x7c, 0xc2, 0x24, 0x77, 0xb2, 0x7a, 0x09, 0x2e, + 0x9e, 0xa0, 0x49, 0x1c, 0xcc, 0x01, 0xd7, 0xb6, 0x38, 0x3a, 0x99, 0x9c, 0x86, 0xc9, 0x36, 0x59, + 0x62, 0x84, 0x87, 0x64, 0xc8, 0x32, 0xea, 0x32, 0x72, 0x21, 0xd2, 0xc4, 0xd0, 0x04, 0x0c, 0xd8, + 0xe9, 0xa7, 0x00, 0x4e, 0x11, 0xc1, 0xf4, 0xe7, 0xaf, 0x01, 0xd3, 0xca, 0x79, 0xe5, 0x47, 0x9a, + 0x5c, 0xc6, 0xec, 0xe4, 0xd3, 0x26, 0xea, 0x3f, 0x6a, 0xa2, 0xe8, 0x71, 0x13, 0x0d, 0xe5, 0xf8, + 0x55, 0x7e, 0x8d, 0x5f, 0xe7, 0x37, 0xf2, 0x9b, 0xb0, 0xd0, 0x6b, 0xf2, 0xa4, 0x86, 0xc6, 0x9e, + 0x36, 0x51, 0xe2, 0xa8, 0x89, 0xe0, 0xb8, 0x89, 0xfa, 0x33, 0x19, 0x3e, 0x93, 0x2d, 0xc4, 0xe2, + 0x51, 0x26, 0x56, 0x88, 0xc5, 0x63, 0x4c, 0x7f, 0x21, 0x16, 0x07, 0x26, 0x31, 0xfb, 0x2e, 0x82, + 0x31, 0x37, 0x75, 0xbd, 0x29, 0x1b, 0x26, 0xc9, 0x5e, 0x2a, 0x80, 0x6b, 0xce, 0xe0, 0x10, 0x29, + 0x76, 0xe6, 0x5f, 0xa8, 0xd8, 0xc9, 0x5f, 0xb0, 0x8a, 0xa8, 0x81, 0xf7, 0x50, 0x94, 0x79, 0x07, + 0x91, 0x7a, 0xea, 0x3d, 0x14, 0x89, 0xbb, 0xbf, 0x38, 0x24, 0x78, 0x3c, 0xcc, 0xbe, 0x3b, 0x00, + 0x13, 0x3b, 0xa6, 0xa6, 0x8b, 0x15, 0xec, 0x3b, 0xd7, 0x5e, 0xb0, 0x3e, 0xfb, 0x76, 0xa0, 0x3e, + 0xdb, 0xea, 0x25, 0xe4, 0x30, 0xbf, 0xbd, 0x97, 0x6a, 0x65, 0x18, 0x33, 0x6c, 0x03, 0x9e, 0xb3, + 0x3c, 0xfa, 0x59, 0x2a, 0x35, 0x81, 0x31, 0x02, 0x11, 0x7d, 0x96, 0xb3, 0xeb, 0x2f, 0xa3, 0xcf, + 0x9a, 0xe8, 0x7a, 0xb7, 0xb3, 0x6b, 0xc4, 0x5b, 0x0f, 0xa3, 0xe5, 0x9f, 0x36, 0xd1, 0x7f, 0x46, + 0xe0, 0x55, 0x18, 0xd8, 0x22, 0xb9, 0x32, 0x99, 0x04, 0xae, 0xad, 0x83, 0x4e, 0x1e, 0xfd, 0x2a, + 0x4d, 0xa3, 0x77, 0xe0, 0x36, 0x5c, 0x86, 0x64, 0xbb, 0x5c, 0x48, 0x0e, 0x3d, 0x0b, 0x33, 0xed, + 0x72, 0x4e, 0x0a, 0xfd, 0x1a, 0x4d, 0x5b, 0x77, 0xe1, 0x0e, 0x5c, 0x0f, 0x13, 0xec, 0xb4, 0xf3, + 0x38, 0x98, 0x6a, 0x17, 0x26, 0x1b, 0xef, 0x3d, 0x04, 0x83, 0xb7, 0x24, 0x49, 0xc7, 0x86, 0x31, + 0xf7, 0x1d, 0x04, 0xef, 0x22, 0xe0, 0xe1, 0x7c, 0x48, 0x8f, 0x1e, 0x95, 0x6b, 0xc5, 0xb2, 0x22, + 0x63, 0xd5, 0xcc, 0x26, 0xb6, 0xb6, 0x37, 0x1f, 0xa4, 0x37, 0xc9, 0x43, 0x17, 0x69, 0x03, 0xeb, + 0x0d, 0xac, 0x53, 0xe9, 0x1d, 0xf2, 0x00, 0x97, 0xe0, 0x6c, 0xbb, 0xb4, 0x61, 0x8a, 0xa6, 0x5c, + 0x2e, 0xca, 0xb5, 0xec, 0xc0, 0x0e, 0xf9, 0x19, 0x9e, 0x0d, 0x66, 0xff, 0x02, 0x01, 0x17, 0x5c, + 0x8d, 0xee, 0x96, 0xfc, 0x7d, 0x04, 0x6c, 0x9b, 0x69, 0x67, 0x6f, 0xae, 0x7f, 0xda, 0x85, 0xee, + 0xdd, 0xa6, 0x91, 0xd0, 0x6d, 0x3a, 0x16, 0x5c, 0x8d, 0xc6, 0xec, 0xf7, 0x90, 0xb5, 0x5b, 0xad, + 0x8e, 0x08, 0x5a, 0xdd, 0xc4, 0x86, 0x1b, 0xe3, 0x01, 0x0c, 0xd3, 0xbe, 0xea, 0xa4, 0x81, 0x46, + 0x97, 0x6d, 0x8b, 0xce, 0x07, 0xcf, 0x16, 0x3c, 0xb6, 0x76, 0x65, 0x7c, 0x40, 0xe2, 0x4a, 0x39, + 0x21, 0x30, 0x4c, 0x68, 0x58, 0x67, 0x0c, 0x4f, 0x00, 0xb3, 0xbf, 0x37, 0x04, 0xa3, 0xbb, 0xea, + 0xa6, 0xa6, 0xee, 0xc9, 0x95, 0xba, 0x2e, 0x92, 0x64, 0xa0, 0xb8, 0xc9, 0xc0, 0x8e, 0xe2, 0xcb, + 0xbd, 0x8c, 0x51, 0xc0, 0x48, 0xef, 0x79, 0xe0, 0xff, 0x01, 0xa3, 0x6a, 0x45, 0x7f, 0xef, 0xa3, + 0x5d, 0x8a, 0xd7, 0x3e, 0x61, 0x44, 0xd5, 0xbc, 0x83, 0xc8, 0x16, 0x83, 0x83, 0x17, 0x23, 0xea, + 0x3d, 0x4e, 0x6d, 0xfb, 0x6c, 0x6c, 0xf7, 0xf9, 0x07, 0x89, 0xbd, 0x0d, 0xe3, 0xad, 0x10, 0x1b, + 0xab, 0x8e, 0x9b, 0xee, 0x05, 0x3e, 0xe3, 0x44, 0xb9, 0xbb, 0x4a, 0xcd, 0x88, 0xc0, 0xb4, 0xd9, + 0xb0, 0xcb, 0xf4, 0x5c, 0x4f, 0xf3, 0xec, 0x18, 0x72, 0xe3, 0x44, 0xc2, 0x88, 0xe1, 0x77, 0xf1, + 0x06, 0x89, 0x34, 0x78, 0xdc, 0x51, 0x40, 0x1a, 0x1a, 0x69, 0x3e, 0x66, 0xa1, 0x9f, 0xed, 0x88, + 0x15, 0xef, 0x96, 0x0f, 0x14, 0xb0, 0x15, 0x60, 0xda, 0x2c, 0xd9, 0x10, 0x73, 0x36, 0x74, 0x68, + 0xbf, 0x5a, 0xfa, 0x16, 0x2e, 0x9b, 0x02, 0xde, 0x23, 0xeb, 0x70, 0xfa, 0xfd, 0xc7, 0x6d, 0xea, + 0xd4, 0xd5, 0x88, 0x1f, 0x7d, 0xb0, 0x1f, 0x20, 0x48, 0xb6, 0x1d, 0xd1, 0x5e, 0x3c, 0x19, 0xed, + 0xd1, 0xe7, 0xc3, 0xf7, 0x1f, 0x8f, 0xb5, 0x1d, 0x16, 0xc7, 0x8f, 0x6f, 0x08, 0xb8, 0xa6, 0x88, + 0x65, 0x2c, 0xa5, 0x4b, 0x87, 0xe9, 0x17, 0xab, 0x05, 0x2c, 0x48, 0x28, 0x4c, 0xfb, 0xe3, 0xfd, + 0x5c, 0x8e, 0x97, 0xed, 0x67, 0x4d, 0xb4, 0x05, 0x93, 0xc0, 0xdc, 0xb7, 0xe3, 0x6d, 0x9d, 0x2d, + 0x28, 0x03, 0x13, 0x30, 0x6c, 0x4f, 0x79, 0x9a, 0xce, 0x6b, 0x34, 0xcb, 0x6f, 0x58, 0xc2, 0x41, + 0x58, 0xc4, 0xa2, 0x5c, 0x7e, 0x0e, 0xc6, 0xbd, 0xcb, 0xdf, 0x29, 0x62, 0xc6, 0x9f, 0x36, 0x51, + 0xf4, 0x27, 0x36, 0xb2, 0x8d, 0x1c, 0x37, 0x51, 0x74, 0x99, 0x5f, 0xc9, 0xff, 0x7f, 0x2b, 0xdb, + 0xfb, 0x96, 0xa0, 0x23, 0xfe, 0x25, 0x5a, 0xf3, 0x0c, 0xb9, 0x35, 0xcf, 0x77, 0x9f, 0xa3, 0xab, + 0x12, 0xae, 0x6a, 0x19, 0xde, 0xc4, 0x86, 0xc9, 0x97, 0x75, 0x93, 0x37, 0x4c, 0xb1, 0x22, 0xab, + 0x15, 0xde, 0xd0, 0xf6, 0xcc, 0x92, 0xa8, 0xee, 0x17, 0xab, 0xb8, 0xcc, 0xd7, 0x74, 0x4d, 0xca, + 0x2f, 0xc0, 0x74, 0xfb, 0xc0, 0xb6, 0x02, 0x19, 0xa0, 0x81, 0xf4, 0x5b, 0x81, 0xac, 0xf2, 0x6b, + 0x85, 0x58, 0x3c, 0xc2, 0x44, 0x0b, 0xb1, 0xf8, 0x10, 0x03, 0x85, 0x58, 0xbc, 0x9f, 0x19, 0x98, + 0xfd, 0x24, 0x0a, 0xec, 0x8e, 0x22, 0x07, 0x93, 0xd1, 0x2f, 0x4d, 0x7a, 0x68, 0xac, 0x06, 0xa2, + 0x1c, 0x3c, 0x29, 0x3d, 0xec, 0xae, 0xfa, 0xe2, 0x0c, 0x4b, 0x0f, 0xf1, 0xcf, 0x35, 0x3d, 0xbc, + 0xd0, 0x52, 0x79, 0xd8, 0x71, 0xa9, 0xbc, 0xf6, 0xb4, 0x89, 0x06, 0x9d, 0xc9, 0x5c, 0xe3, 0xd7, + 0x5f, 0x64, 0xa1, 0xb8, 0x13, 0x6f, 0x4d, 0xf9, 0x5f, 0x47, 0xe1, 0xec, 0x1d, 0x45, 0x2b, 0x89, + 0x0a, 0xdd, 0x04, 0x0e, 0xc8, 0xd7, 0x54, 0x72, 0x2a, 0xee, 0x00, 0x63, 0x28, 0x5a, 0xd1, 0xd4, + 0x8a, 0x15, 0x22, 0x55, 0x94, 0x74, 0x3a, 0xf7, 0x57, 0x43, 0x27, 0xcf, 0xb6, 0x45, 0x8d, 0x68, + 0x3a, 0x9d, 0xac, 0x61, 0x43, 0xd1, 0xde, 0xd2, 0xec, 0xb6, 0x2d, 0x9d, 0x7d, 0x00, 0x93, 0x94, + 0xa2, 0x29, 0xee, 0x69, 0xfa, 0x81, 0xa8, 0x4b, 0xc5, 0x9a, 0xae, 0xbd, 0x7d, 0x48, 0x59, 0xc2, + 0x0e, 0x49, 0x92, 0x50, 0x43, 0x48, 0x18, 0xa7, 0xaa, 0x5f, 0xb1, 0x35, 0x1f, 0x58, 0x8a, 0x6c, + 0x19, 0x26, 0x6c, 0xd6, 0x25, 0x60, 0xd0, 0xce, 0xba, 0x97, 0x02, 0x06, 0xbd, 0xaa, 0xf6, 0x52, + 0xb7, 0x89, 0x2f, 0x97, 0x80, 0x42, 0x02, 0x6b, 0x9b, 0xf3, 0x4a, 0xde, 0xb8, 0xf2, 0xac, 0x89, + 0x2e, 0xc2, 0x2b, 0x90, 0xb4, 0x3b, 0x92, 0x76, 0xd2, 0x46, 0x6b, 0xc8, 0x0c, 0xab, 0x2a, 0x5d, + 0xc9, 0xcf, 0xc2, 0x58, 0xd9, 0x7d, 0xe7, 0x4c, 0xd9, 0xf0, 0xd3, 0x26, 0x8a, 0x58, 0x1e, 0x8e, + 0x9b, 0x08, 0x2d, 0xe7, 0x17, 0x61, 0xc2, 0x17, 0xaa, 0x23, 0x36, 0x6d, 0x21, 0x28, 0xba, 0x10, + 0x62, 0xd6, 0xec, 0xe6, 0xf8, 0xd5, 0x4f, 0x9a, 0x08, 0x15, 0x62, 0x71, 0xc4, 0x44, 0x6c, 0xf8, + 0x33, 0xdb, 0x44, 0x70, 0xa1, 0xc3, 0xac, 0xb9, 0xf5, 0xcc, 0x9f, 0x22, 0x48, 0xd2, 0x39, 0x73, + 0xf2, 0x71, 0x2b, 0xa8, 0x17, 0xaa, 0x2b, 0xba, 0xac, 0x8f, 0x3c, 0x67, 0xf5, 0xc8, 0x2d, 0x77, + 0xe2, 0xad, 0x72, 0x47, 0xe0, 0x2a, 0xe1, 0x6a, 0xc6, 0xec, 0x1f, 0x4f, 0xc0, 0xf4, 0xae, 0x61, + 0xb4, 0x5a, 0x3c, 0xb9, 0xe6, 0x4b, 0x30, 0x22, 0xe1, 0x3d, 0xb1, 0xae, 0x98, 0x56, 0xb4, 0x7b, + 0x72, 0x85, 0xa4, 0xed, 0xce, 0x99, 0x66, 0x98, 0x4a, 0xdb, 0x56, 0xd8, 0x6f, 0x02, 0x58, 0xcb, + 0x95, 0xaa, 0xda, 0x0b, 0x75, 0xf9, 0x53, 0xd4, 0x4e, 0x2e, 0xe3, 0x3c, 0x64, 0x28, 0x1a, 0xb5, + 0xbd, 0x05, 0xac, 0x13, 0x9a, 0xa1, 0xc8, 0x8e, 0x8f, 0x99, 0xee, 0x29, 0x86, 0x6a, 0xec, 0x28, + 0x32, 0xb5, 0xf2, 0x5b, 0x56, 0x84, 0xae, 0x76, 0x32, 0x14, 0x6c, 0x85, 0xe7, 0xc1, 0xb6, 0xc4, + 0x4c, 0x83, 0x44, 0x56, 0x90, 0x8e, 0xf9, 0x7b, 0x30, 0x6d, 0x54, 0x3d, 0x13, 0x5d, 0xac, 0xd5, + 0x4b, 0x0a, 0xa9, 0xdf, 0xb9, 0xe5, 0x2e, 0x91, 0x46, 0x84, 0x09, 0xa3, 0xda, 0x9a, 0xa3, 0x07, + 0x44, 0xe9, 0x6e, 0x8d, 0xbd, 0x03, 0x13, 0x01, 0x73, 0x0d, 0xd3, 0xb2, 0xb5, 0xd2, 0xd5, 0xd6, + 0x98, 0xcf, 0x56, 0xc3, 0xbc, 0x5b, 0x63, 0x37, 0x61, 0xca, 0xbe, 0x19, 0xd1, 0x8a, 0xf6, 0xff, + 0x29, 0x63, 0x51, 0xe3, 0x26, 0x09, 0x2c, 0xb6, 0x76, 0x07, 0x59, 0x47, 0x31, 0x3d, 0x52, 0xb3, + 0x0a, 0x14, 0xd6, 0x12, 0x7b, 0x4b, 0xb3, 0x60, 0x12, 0x25, 0xa9, 0x6b, 0xec, 0x03, 0xe0, 0x9c, + 0x19, 0xf0, 0x14, 0x09, 0xf6, 0x48, 0x76, 0x49, 0x1d, 0xdb, 0x51, 0x61, 0x8a, 0xea, 0xb9, 0x75, + 0x03, 0x1d, 0x2e, 0x09, 0x46, 0x5a, 0x96, 0x14, 0xd9, 0x30, 0x69, 0xc6, 0xc8, 0xbd, 0x10, 0x5f, + 0xe0, 0xec, 0x39, 0x3a, 0x21, 0x51, 0x61, 0x58, 0xf6, 0x36, 0xb1, 0x79, 0x18, 0x53, 0x35, 0x77, + 0x17, 0xd6, 0x34, 0x45, 0x2e, 0x1f, 0xd2, 0x73, 0x25, 0x3c, 0xe0, 0x98, 0x30, 0xaa, 0x6a, 0x74, + 0x7f, 0x3c, 0x20, 0xe2, 0xac, 0x01, 0xd3, 0xa2, 0x55, 0x21, 0x61, 0xbf, 0x1d, 0x19, 0x1b, 0x94, + 0x7d, 0xdf, 0xe8, 0x80, 0xd8, 0x9d, 0xfb, 0xb7, 0x85, 0x5b, 0x44, 0xdd, 0x6b, 0x55, 0xc6, 0x06, + 0x49, 0xd0, 0x31, 0x61, 0x52, 0x0c, 0x6b, 0x64, 0xbf, 0x87, 0xe0, 0x15, 0xea, 0x15, 0xab, 0x8f, + 0x44, 0xb5, 0x8c, 0x25, 0xd7, 0x5e, 0xcb, 0xff, 0x59, 0xe2, 0x3f, 0xdf, 0x9b, 0xff, 0xdb, 0xd4, + 0xce, 0x57, 0xe8, 0xeb, 0x40, 0x20, 0x29, 0xb1, 0xab, 0x14, 0xad, 0x45, 0xfc, 0x49, 0xbe, 0x1b, + 0x08, 0xe8, 0xb7, 0x6a, 0x11, 0xdf, 0x51, 0xf1, 0x2e, 0x82, 0xf3, 0xb4, 0x4f, 0xfe, 0x04, 0xec, + 0xf6, 0xc7, 0x06, 0x04, 0x37, 0x7b, 0xeb, 0x8f, 0xd7, 0xb6, 0xaf, 0x2f, 0xfd, 0x42, 0x52, 0xec, + 0x28, 0x61, 0xed, 0x53, 0xbf, 0x77, 0x51, 0x51, 0xb4, 0x03, 0xeb, 0xbf, 0xdc, 0x74, 0xd7, 0xee, + 0x38, 0xa7, 0x06, 0x31, 0x77, 0xcb, 0x52, 0xba, 0xa5, 0x28, 0x74, 0x85, 0xf9, 0xd3, 0x3d, 0x37, + 0xd2, 0xc5, 0xd0, 0x80, 0xb5, 0xc2, 0x7c, 0x89, 0x9d, 0xdd, 0x83, 0xf1, 0xc0, 0x79, 0x41, 0x36, + 0xc4, 0x68, 0xe8, 0x55, 0x92, 0xf7, 0xb4, 0xef, 0x78, 0x06, 0x6d, 0x0f, 0x08, 0x63, 0xbe, 0x53, + 0x80, 0xec, 0x86, 0x39, 0x48, 0x68, 0x75, 0xd3, 0x90, 0x25, 0x5c, 0x6c, 0xc8, 0x35, 0x8e, 0x21, + 0xfb, 0x7f, 0x88, 0xee, 0xfd, 0xb7, 0x91, 0x00, 0xb4, 0x75, 0x57, 0xae, 0xb1, 0x4b, 0x30, 0xe2, + 0x91, 0x2d, 0x36, 0x56, 0xb9, 0x0d, 0x1f, 0x8b, 0xf6, 0x0e, 0x42, 0xc2, 0x99, 0x96, 0xfc, 0xee, + 0x2a, 0xbb, 0x0e, 0xac, 0xa3, 0xa1, 0x8a, 0x55, 0x6c, 0xf3, 0x1c, 0xdc, 0x58, 0xd0, 0xc9, 0x18, + 0x15, 0xba, 0xef, 0xca, 0xb0, 0x37, 0x61, 0xb2, 0x5d, 0xd3, 0x72, 0x79, 0xa3, 0xcd, 0xe5, 0x78, + 0x9b, 0xf6, 0xee, 0x2a, 0x3b, 0x0f, 0xc3, 0xa5, 0x4a, 0xcd, 0xae, 0xd3, 0xf4, 0xa2, 0x2c, 0x71, + 0xac, 0xcf, 0x69, 0x0d, 0x09, 0x89, 0x52, 0xa5, 0x46, 0xca, 0x40, 0xfd, 0xae, 0xc4, 0x2e, 0x03, + 0x63, 0x89, 0xd7, 0x30, 0xd6, 0x8b, 0xa2, 0xcd, 0xf1, 0x70, 0xe3, 0x41, 0x8d, 0x91, 0x52, 0xa5, + 0xf6, 0x00, 0x63, 0x9d, 0x92, 0x40, 0xec, 0x4d, 0x18, 0x26, 0xe3, 0xa0, 0xeb, 0xb5, 0x62, 0x55, + 0x93, 0x30, 0x37, 0x91, 0x46, 0x57, 0x47, 0xb2, 0xc9, 0xc0, 0xec, 0x58, 0x43, 0xa1, 0xeb, 0x35, + 0xc2, 0xc8, 0x25, 0x1a, 0xf6, 0xc3, 0x3d, 0x4d, 0xc2, 0xec, 0x6b, 0x30, 0x4e, 0x33, 0xaf, 0x84, + 0x45, 0xa9, 0x68, 0xca, 0x55, 0xac, 0xd5, 0x4d, 0x6e, 0x2a, 0x8d, 0xae, 0x0e, 0xe7, 0x13, 0x84, + 0x4e, 0x99, 0x8b, 0x71, 0x3f, 0xf8, 0x1f, 0x10, 0xc6, 0x6c, 0xb9, 0x2d, 0x2c, 0x4a, 0x6f, 0xd9, + 0x52, 0xec, 0x06, 0x8c, 0x07, 0x23, 0xb6, 0x86, 0xe7, 0xb5, 0xb6, 0xe1, 0x61, 0xfc, 0x51, 0xef, + 0xae, 0xde, 0xf8, 0x47, 0xf4, 0xac, 0x89, 0xfe, 0x1e, 0xc1, 0x65, 0x98, 0xf4, 0x54, 0x4d, 0x9e, + 0x73, 0x7f, 0x38, 0xc3, 0x67, 0x56, 0xf9, 0xdc, 0x1a, 0x9f, 0x59, 0xe3, 0x73, 0xeb, 0x70, 0x0e, + 0xa6, 0x5b, 0x94, 0x9f, 0x5f, 0x12, 0xad, 0x40, 0x0a, 0xa6, 0x76, 0x70, 0xb9, 0xae, 0xcb, 0xe6, + 0x61, 0xa0, 0x31, 0xb6, 0xc6, 0x67, 0x96, 0x80, 0x03, 0x96, 0x96, 0x68, 0xde, 0xd2, 0x2c, 0x92, + 0x21, 0xd7, 0x5a, 0x84, 0x78, 0xbb, 0x87, 0x8d, 0x47, 0xad, 0x5b, 0x2d, 0x8f, 0x81, 0x48, 0x6e, + 0x09, 0xae, 0xc2, 0xd4, 0x2d, 0xa9, 0x41, 0xf2, 0x4f, 0xa0, 0x75, 0x24, 0xb3, 0xce, 0x67, 0x36, + 0xf8, 0xdc, 0x06, 0x9f, 0x5d, 0xe2, 0xb3, 0xd9, 0xfc, 0x79, 0x5a, 0x6e, 0xd8, 0xa5, 0xdb, 0xa8, + 0xa7, 0xc2, 0x8b, 0x66, 0xf9, 0xe5, 0xfc, 0x45, 0x7a, 0xd6, 0xb7, 0xb8, 0xf1, 0x99, 0xa3, 0x26, + 0xe2, 0x2c, 0x78, 0x97, 0xcd, 0xf1, 0x59, 0x52, 0xd7, 0xe5, 0x17, 0xe8, 0xc9, 0x58, 0xc5, 0xc6, + 0x23, 0x3f, 0x6a, 0x9b, 0x78, 0xda, 0x44, 0x2b, 0x47, 0x4d, 0x94, 0x3d, 0x6e, 0xa2, 0x78, 0x2e, + 0xcb, 0xe7, 0x32, 0x7c, 0x36, 0x93, 0xbf, 0x18, 0x42, 0xbb, 0x8f, 0x52, 0xda, 0xdd, 0x29, 0x18, + 0xf3, 0xd7, 0x61, 0xd2, 0x7f, 0xdc, 0x38, 0x92, 0xec, 0xd3, 0x26, 0xb2, 0xea, 0xdc, 0xc1, 0xe3, + 0x26, 0x1a, 0x58, 0xe7, 0xb3, 0x6b, 0xfc, 0x46, 0x9e, 0xef, 0x50, 0x8a, 0x4e, 0x78, 0x38, 0xf8, + 0x78, 0x26, 0xc3, 0x67, 0x97, 0xf9, 0x4c, 0x36, 0xbf, 0x00, 0x93, 0xc1, 0xb2, 0xb2, 0xd5, 0xbf, + 0x11, 0x5a, 0xb9, 0x0e, 0x13, 0x08, 0xbb, 0xc2, 0x67, 0x72, 0x6e, 0xdd, 0xca, 0x31, 0x33, 0x85, + 0x58, 0x3c, 0xcb, 0x2c, 0xbb, 0x14, 0xfe, 0x20, 0x13, 0xb7, 0x89, 0xfc, 0x42, 0x2c, 0x3e, 0xcc, + 0x8c, 0xcc, 0x7e, 0x3c, 0x48, 0xea, 0x42, 0x4a, 0xf5, 0xf9, 0x47, 0xbe, 0x00, 0x93, 0x04, 0x83, + 0xb6, 0x71, 0x88, 0xdd, 0xcb, 0xc3, 0x71, 0x0b, 0x88, 0x06, 0x28, 0x40, 0xf6, 0x77, 0x42, 0xf8, + 0x56, 0x3b, 0xd7, 0xd9, 0x05, 0xe3, 0xeb, 0x9f, 0x86, 0x90, 0x0c, 0xd4, 0x00, 0x7d, 0xc2, 0x84, + 0x11, 0x22, 0x41, 0x13, 0xb5, 0xe3, 0xde, 0xa6, 0xa2, 0xbb, 0xd6, 0x2e, 0xc8, 0x4a, 0xd4, 0xd4, + 0x99, 0xcd, 0x6a, 0xb3, 0xa2, 0x05, 0x21, 0xbd, 0x06, 0xbc, 0x95, 0xcb, 0x62, 0xc0, 0x0a, 0xf9, + 0x4e, 0x67, 0xe1, 0x2b, 0xd6, 0x7f, 0x7d, 0x56, 0x3c, 0x10, 0xd5, 0x61, 0x49, 0x5b, 0x0d, 0xd6, + 0x70, 0xbb, 0xb5, 0x2e, 0x75, 0x55, 0x56, 0x44, 0xc3, 0xe8, 0x5a, 0xb5, 0x44, 0x84, 0x71, 0xa7, + 0xdc, 0xa5, 0x53, 0x68, 0xa9, 0xb0, 0xbf, 0xdd, 0xe2, 0x7e, 0x89, 0x0d, 0x3b, 0x5a, 0xbb, 0x68, + 0x59, 0x38, 0x31, 0x5a, 0x62, 0xc3, 0x0d, 0x36, 0xe2, 0x5e, 0x30, 0xb8, 0xef, 0x43, 0xe9, 0x89, + 0x44, 0xd7, 0x6a, 0xf0, 0x44, 0x7a, 0xe2, 0xcc, 0x67, 0xa4, 0x27, 0xa2, 0x7e, 0x7a, 0xe2, 0xc6, + 0xdd, 0x67, 0x4d, 0x74, 0x1b, 0x2e, 0xc1, 0x79, 0xda, 0xa9, 0x74, 0x78, 0x12, 0x8c, 0x65, 0xac, + 0xec, 0x75, 0x0e, 0x26, 0x1d, 0x31, 0x7f, 0x73, 0x74, 0x85, 0x5f, 0xcb, 0x5f, 0x0f, 0xb9, 0xd2, + 0xe8, 0x98, 0x80, 0xae, 0xc2, 0x64, 0x60, 0xa5, 0x74, 0x4a, 0x18, 0x57, 0x60, 0xc2, 0x3f, 0x49, + 0x1e, 0x41, 0x27, 0x5f, 0x44, 0xd7, 0x49, 0xb2, 0x08, 0xe5, 0x2f, 0xac, 0xcd, 0x9f, 0xa0, 0x9b, + 0xdf, 0x77, 0x67, 0xe7, 0x82, 0x56, 0xef, 0x86, 0x9f, 0xfd, 0xd1, 0x2b, 0x30, 0x62, 0xa7, 0xe8, + 0x9d, 0x1a, 0x2e, 0x13, 0xbc, 0xfa, 0xfd, 0x28, 0x4c, 0x5a, 0x63, 0x8b, 0x75, 0x5d, 0x2c, 0x96, + 0xb1, 0x6e, 0xca, 0x7b, 0x32, 0x96, 0x8a, 0x8f, 0x0e, 0xe8, 0xc5, 0xd9, 0x7f, 0x44, 0xfe, 0xb5, + 0x89, 0x2e, 0xc8, 0x46, 0x63, 0x7e, 0x7d, 0x69, 0x69, 0x69, 0xde, 0xc0, 0xba, 0x8c, 0x8d, 0x79, + 0x77, 0x36, 0xe6, 0xcb, 0x5a, 0xb5, 0xa4, 0x1d, 0x37, 0xd1, 0x5f, 0x45, 0xe0, 0x55, 0x09, 0x2b, + 0xca, 0x3c, 0x96, 0x2a, 0xf8, 0x6d, 0x3d, 0x93, 0xe9, 0x20, 0xea, 0x91, 0xd2, 0x57, 0x57, 0x96, + 0x7a, 0x91, 0xca, 0xf5, 0x24, 0xb5, 0xda, 0x51, 0xea, 0x82, 0x5c, 0x39, 0x98, 0xcf, 0x75, 0x8e, + 0x1e, 0x4e, 0xea, 0x1e, 0x4c, 0x35, 0xaa, 0x07, 0xa2, 0x8e, 0xdb, 0xde, 0x8f, 0xef, 0x37, 0xaa, + 0x6d, 0x2f, 0x67, 0x2b, 0x58, 0xc5, 0xba, 0x5c, 0x9e, 0x37, 0x64, 0xb5, 0xa2, 0xe0, 0x79, 0x55, + 0x2e, 0x07, 0x65, 0xfe, 0xab, 0x89, 0xfa, 0x68, 0xb5, 0xc1, 0x20, 0x7a, 0x82, 0xff, 0x20, 0x82, + 0x84, 0x71, 0x67, 0x26, 0x36, 0x9d, 0x89, 0xd8, 0x3e, 0x60, 0x1f, 0xc0, 0x99, 0xaa, 0x48, 0xc8, + 0x45, 0x55, 0x93, 0xb0, 0x7d, 0x4f, 0x39, 0x94, 0x9f, 0x3f, 0x7e, 0x7c, 0xd9, 0x4b, 0xee, 0x5e, + 0xf1, 0xc8, 0x50, 0x70, 0x46, 0x17, 0x30, 0x21, 0x72, 0x13, 0x76, 0x33, 0xb9, 0xf9, 0x62, 0x75, + 0x98, 0xe9, 0x28, 0xcd, 0xe5, 0x08, 0x43, 0x71, 0x21, 0x74, 0x13, 0xde, 0x73, 0x8d, 0xe4, 0x27, + 0x5d, 0xf6, 0x21, 0x4a, 0xee, 0x36, 0xde, 0xb3, 0xef, 0x36, 0xa6, 0x5b, 0x7e, 0xfc, 0xbb, 0x68, + 0x1d, 0xce, 0x58, 0x5b, 0xcf, 0xed, 0x45, 0x94, 0xf4, 0x62, 0x32, 0xe4, 0xc6, 0x97, 0x43, 0x42, + 0xc2, 0x16, 0xb5, 0xa3, 0x2d, 0xc0, 0x8c, 0xbb, 0x40, 0x0d, 0x6d, 0xcf, 0xb4, 0x66, 0xa2, 0xd8, + 0xc0, 0xba, 0x61, 0x45, 0x1b, 0x23, 0x8b, 0x74, 0xc4, 0x19, 0x50, 0x7a, 0xc3, 0x3b, 0xed, 0x28, + 0xec, 0x50, 0xf9, 0x5d, 0x5b, 0x9c, 0xdd, 0x06, 0x4e, 0xab, 0x61, 0x2b, 0x24, 0xb5, 0x52, 0x34, + 0x0e, 0x0d, 0x13, 0x57, 0x5d, 0x53, 0xfd, 0xa1, 0xa6, 0xa6, 0x5c, 0xf9, 0x1d, 0x22, 0xee, 0x58, + 0xba, 0x09, 0xa3, 0xaa, 0x56, 0x2c, 0x69, 0xaa, 0x44, 0xf7, 0x78, 0x77, 0xda, 0xb3, 0x4f, 0x18, + 0x56, 0xb5, 0xbc, 0xa6, 0x4a, 0x76, 0xb6, 0xb7, 0x92, 0x1f, 0xe3, 0x51, 0xb6, 0x93, 0xb3, 0x9d, + 0xe5, 0xe7, 0x3b, 0x27, 0x67, 0x8f, 0x81, 0xb6, 0x83, 0x6f, 0xa4, 0xe4, 0x36, 0x92, 0xfc, 0xfc, + 0x26, 0x38, 0xe8, 0xdb, 0x4b, 0x44, 0x59, 0x98, 0x1d, 0xba, 0x9e, 0x7b, 0x13, 0x54, 0xcb, 0xc7, + 0x13, 0xb1, 0x07, 0x30, 0x59, 0xae, 0x1b, 0xa6, 0x56, 0x0d, 0x1a, 0xb3, 0x53, 0xfe, 0x6b, 0x3d, + 0x91, 0x3d, 0xe1, 0xe4, 0x93, 0xcb, 0xa7, 0x8c, 0xdb, 0x1e, 0xfc, 0x8e, 0x3d, 0xdd, 0x70, 0x33, + 0xa5, 0xed, 0x79, 0xb8, 0x3b, 0xb1, 0x12, 0x38, 0x13, 0x83, 0xdd, 0x08, 0x18, 0x1b, 0x79, 0xa1, + 0x6e, 0x84, 0xd5, 0x4a, 0xb4, 0x1b, 0x11, 0xa7, 0x1b, 0x7e, 0xc7, 0x6b, 0x90, 0x70, 0xb8, 0xd7, + 0x4a, 0xad, 0x4e, 0xd0, 0x57, 0xe7, 0x83, 0x12, 0xa8, 0xe8, 0x9d, 0x5a, 0x9d, 0xcd, 0x01, 0x50, + 0x8a, 0xd5, 0xd2, 0x1b, 0xeb, 0xaa, 0x37, 0x64, 0x4b, 0x5a, 0x6a, 0x77, 0x21, 0x41, 0xd5, 0x1a, + 0x96, 0xde, 0xab, 0x44, 0xef, 0x72, 0xe8, 0xca, 0xda, 0xbd, 0xf3, 0xe0, 0xa1, 0xaf, 0x27, 0x56, + 0x04, 0xb6, 0xf2, 0x6e, 0xc5, 0x8e, 0xc0, 0x09, 0xbd, 0x51, 0xe5, 0x2e, 0x77, 0xe5, 0x4f, 0x86, + 0xa8, 0xe4, 0x6e, 0x95, 0xdd, 0x84, 0x21, 0x27, 0x82, 0x2a, 0x77, 0x85, 0x68, 0xbd, 0x1a, 0xee, + 0xff, 0x9e, 0xdf, 0x7b, 0x4c, 0x88, 0x53, 0xef, 0x55, 0xf6, 0x55, 0x18, 0x74, 0x40, 0x1a, 0xdb, + 0xf6, 0x1d, 0x87, 0xd3, 0xc4, 0xde, 0x82, 0x44, 0x59, 0xd3, 0x74, 0x49, 0x56, 0x45, 0xab, 0x8c, + 0x18, 0x27, 0xce, 0x82, 0x19, 0x8c, 0xcc, 0xdd, 0x66, 0x4b, 0x4c, 0xf0, 0xea, 0xb0, 0xaf, 0xc3, + 0x88, 0xaa, 0x15, 0xf7, 0xd7, 0x0d, 0xe7, 0x26, 0x87, 0x10, 0x64, 0x9d, 0xf9, 0x80, 0x33, 0xaa, + 0xf6, 0xc6, 0xba, 0x41, 0x6f, 0xa4, 0xd8, 0x87, 0x90, 0xf0, 0xaa, 0x4e, 0xf5, 0x7c, 0x55, 0x38, + 0xf2, 0xfe, 0x63, 0xaf, 0xe6, 0x76, 0xbf, 0x00, 0xfb, 0x2d, 0xb3, 0xf7, 0x61, 0x5a, 0xd1, 0x2a, + 0x46, 0xd1, 0x30, 0x75, 0x2c, 0x56, 0xad, 0x94, 0xe5, 0x7e, 0x62, 0xc9, 0x75, 0x25, 0x19, 0x26, + 0x2d, 0xb5, 0x1d, 0x47, 0xcb, 0xfd, 0x98, 0xf2, 0xeb, 0x70, 0x46, 0xd1, 0x2a, 0x45, 0x1d, 0x97, + 0xb1, 0x6c, 0xc1, 0xf3, 0x99, 0x9e, 0xe3, 0x1c, 0x7d, 0xff, 0xb1, 0x4f, 0x75, 0x7b, 0x40, 0x48, + 0x28, 0x5a, 0x45, 0xa0, 0x8f, 0x56, 0x76, 0x97, 0xb0, 0x4a, 0xe8, 0x94, 0x62, 0xdd, 0x28, 0x51, + 0x6e, 0x2a, 0x3c, 0xbc, 0x41, 0x01, 0x2c, 0xd9, 0x5b, 0x8a, 0xf2, 0xd0, 0x28, 0xb1, 0x37, 0x60, + 0xd8, 0xe5, 0x60, 0x88, 0xea, 0xb9, 0xae, 0xaa, 0x09, 0x91, 0x72, 0x2f, 0x96, 0xae, 0x00, 0x50, + 0x37, 0x4a, 0x0e, 0xb3, 0x77, 0xbe, 0xe7, 0xde, 0x0c, 0xbf, 0xff, 0xd8, 0xa3, 0xb8, 0x3d, 0x28, + 0x0c, 0xd5, 0x8d, 0x12, 0x25, 0xfc, 0xbe, 0x06, 0x53, 0xaa, 0x56, 0x54, 0xb4, 0xb2, 0xa8, 0x58, + 0xb9, 0xc1, 0xd4, 0x35, 0xa5, 0x58, 0x53, 0x44, 0x15, 0x73, 0xe9, 0x13, 0xaf, 0x92, 0xe3, 0x16, + 0xf0, 0x79, 0xd3, 0x52, 0xdd, 0xb4, 0x35, 0x1f, 0x58, 0x8a, 0x6c, 0x09, 0xc6, 0xc3, 0xec, 0xbd, + 0x42, 0xec, 0xcd, 0x85, 0xee, 0x89, 0x36, 0x23, 0x76, 0xaa, 0xa7, 0x5e, 0xc6, 0x94, 0x36, 0x1f, + 0x5f, 0x86, 0x88, 0x71, 0xc0, 0xcd, 0x12, 0x93, 0xd7, 0x42, 0x87, 0x60, 0x37, 0x70, 0x24, 0xda, + 0x16, 0x2d, 0x2c, 0x2c, 0x44, 0x8c, 0x03, 0xf6, 0x26, 0x44, 0x34, 0x83, 0xbb, 0xd8, 0xe5, 0x8e, + 0xe9, 0xab, 0xfe, 0x83, 0xd0, 0xab, 0xaf, 0x59, 0x70, 0x63, 0x98, 0x7c, 0xab, 0x4f, 0xaa, 0x63, + 0x55, 0x54, 0xb8, 0x8f, 0x7b, 0xbf, 0x30, 0x9f, 0x78, 0xff, 0xb1, 0x5f, 0x99, 0x94, 0x2c, 0x67, + 0xac, 0x57, 0x77, 0xe9, 0x1b, 0x2f, 0x09, 0x5d, 0x52, 0xb4, 0xf2, 0x3e, 0x96, 0xc8, 0xc7, 0x34, + 0xe4, 0xe0, 0xbd, 0xd6, 0x65, 0xc9, 0x0c, 0xb9, 0x24, 0x74, 0xde, 0x56, 0xdb, 0xa1, 0x5a, 0xec, + 0x37, 0x80, 0x69, 0xb3, 0xc4, 0x13, 0x4b, 0x7c, 0xe8, 0x9c, 0x04, 0xf4, 0x5d, 0xd4, 0x31, 0x24, + 0x8c, 0x96, 0x02, 0xa6, 0x73, 0x30, 0xad, 0x88, 0x75, 0xb5, 0xfc, 0xa8, 0x28, 0xef, 0x5b, 0x80, + 0xc1, 0x66, 0xb6, 0x6a, 0x62, 0x19, 0x73, 0xf3, 0x69, 0x74, 0x35, 0x2e, 0x4c, 0xd8, 0xcd, 0x77, + 0xf7, 0xf1, 0x5d, 0xf5, 0xbe, 0xd3, 0xc6, 0x1e, 0x42, 0x52, 0xdb, 0xdb, 0x53, 0x64, 0x15, 0x17, + 0x8d, 0xba, 0xde, 0x90, 0x1b, 0x62, 0x49, 0x56, 0x64, 0xf3, 0xd0, 0xe6, 0x9c, 0x16, 0x49, 0x6c, + 0x99, 0xf0, 0xf1, 0xb4, 0xd5, 0x76, 0xbc, 0x5a, 0xf7, 0x34, 0xc9, 0xf3, 0x65, 0x39, 0x99, 0x28, + 0x4e, 0xeb, 0x20, 0x67, 0xad, 0x51, 0xb9, 0xb6, 0x27, 0x96, 0x74, 0xb9, 0xec, 0xa1, 0x44, 0xb8, + 0xa5, 0xd0, 0x62, 0x90, 0xa4, 0x52, 0x01, 0xdf, 0xc3, 0xc6, 0x23, 0x42, 0xe6, 0xe4, 0xc7, 0x3e, + 0x7c, 0x4c, 0x6e, 0xf0, 0xdc, 0x9a, 0x10, 0x09, 0x63, 0x8e, 0x39, 0x57, 0xca, 0x4a, 0x67, 0xee, + 0x51, 0xae, 0xcb, 0x5a, 0xc3, 0xf3, 0xa1, 0xc3, 0x5a, 0x97, 0x19, 0x04, 0xc1, 0x01, 0xc5, 0x3b, + 0x96, 0x56, 0xeb, 0xc3, 0xb3, 0x6f, 0x00, 0x13, 0xb0, 0x63, 0x70, 0xeb, 0x5d, 0x26, 0xd0, 0xaf, + 0xde, 0x9a, 0x40, 0x10, 0x46, 0x0d, 0x7f, 0x13, 0xbb, 0x09, 0x40, 0xeb, 0x04, 0x49, 0x35, 0x08, + 0xf9, 0x99, 0xc8, 0xa6, 0x42, 0x47, 0x7e, 0x93, 0x88, 0x6d, 0xdd, 0xdf, 0xb1, 0x77, 0xa7, 0x30, + 0x64, 0xeb, 0x6d, 0xa9, 0x06, 0xbb, 0x0f, 0xdc, 0x7e, 0xbd, 0x44, 0xbe, 0xd6, 0xc3, 0x46, 0xb1, + 0x5e, 0xab, 0xe8, 0xa2, 0x84, 0x8b, 0x92, 0x2e, 0xca, 0x2a, 0x21, 0x37, 0x13, 0xd9, 0xeb, 0xa1, + 0x26, 0xdf, 0x70, 0x95, 0x1e, 0xda, 0x3a, 0x5b, 0x96, 0x0a, 0xdd, 0x6b, 0x53, 0xfb, 0xa1, 0xad, + 0x37, 0x9a, 0xe8, 0x59, 0x13, 0x7d, 0x80, 0xe0, 0x22, 0x8c, 0xe7, 0x45, 0x43, 0x2e, 0x07, 0x40, + 0xec, 0x99, 0x0c, 0x9f, 0x5b, 0xe6, 0x97, 0x79, 0xc2, 0xa4, 0xc1, 0x34, 0xb0, 0x56, 0x29, 0x19, + 0xa4, 0xf8, 0x56, 0x21, 0xd9, 0x89, 0x28, 0x44, 0x1b, 0x70, 0xb6, 0x13, 0x40, 0x8e, 0x64, 0xb2, + 0xf0, 0xa5, 0x8e, 0xe4, 0xdd, 0xc5, 0x4c, 0x8e, 0xd0, 0x76, 0xcb, 0x7c, 0x76, 0x95, 0x5f, 0x5e, + 0xe1, 0x97, 0x73, 0x7c, 0x6e, 0x9d, 0x5f, 0x5e, 0xe3, 0x57, 0x96, 0xf8, 0x95, 0x35, 0x3e, 0xb7, + 0xc2, 0xe7, 0xd6, 0xf2, 0x29, 0x48, 0x90, 0x6a, 0xd8, 0x03, 0x7f, 0x07, 0x8f, 0x9a, 0x68, 0x80, + 0xde, 0xb3, 0xe7, 0xaf, 0x00, 0xeb, 0xd6, 0x9d, 0x7b, 0x15, 0xef, 0xd7, 0xaa, 0xe0, 0x7e, 0xb9, + 0xb1, 0xc4, 0x67, 0x32, 0x96, 0xa0, 0x5b, 0xd9, 0xf9, 0x05, 0x87, 0x8f, 0x9a, 0xe8, 0x0c, 0x11, + 0x5c, 0xe6, 0x33, 0x2b, 0xf9, 0x59, 0x80, 0x4a, 0xad, 0xee, 0xe5, 0xdc, 0x98, 0xa3, 0x26, 0x1a, + 0x25, 0x9c, 0xdb, 0x2a, 0x9f, 0x59, 0xe3, 0x97, 0x57, 0xf3, 0x29, 0x18, 0x6a, 0x54, 0xbd, 0x36, + 0x2e, 0x1f, 0x35, 0xd1, 0x25, 0xcb, 0xc6, 0xf2, 0x3a, 0xbf, 0xbc, 0x61, 0x39, 0xf3, 0x1c, 0xde, + 0x5e, 0xc1, 0xc9, 0xa3, 0x26, 0x9a, 0x20, 0x84, 0x63, 0x86, 0xcf, 0x66, 0xf3, 0xd7, 0x60, 0x82, + 0x1c, 0xe4, 0xce, 0xf1, 0xe9, 0x15, 0xe5, 0x8e, 0x9a, 0x68, 0x9a, 0x88, 0xae, 0xf0, 0xd9, 0x5c, + 0xfe, 0x1a, 0x8c, 0xb5, 0x8e, 0x26, 0x6f, 0x78, 0x67, 0x8f, 0x9a, 0x28, 0x69, 0x85, 0x97, 0x5d, + 0xe3, 0xb3, 0xeb, 0x7c, 0x76, 0x23, 0xbf, 0x06, 0xc9, 0x90, 0x73, 0xc5, 0xd1, 0x99, 0x79, 0xda, + 0x44, 0x69, 0x4a, 0x0d, 0x5c, 0x20, 0x31, 0x67, 0xf9, 0xe5, 0x65, 0xc2, 0x7d, 0xce, 0xc3, 0x74, + 0x30, 0xf3, 0x79, 0x89, 0xca, 0x6b, 0x47, 0x4d, 0x74, 0xf5, 0xb8, 0x89, 0x06, 0x56, 0x32, 0x7c, + 0x7a, 0x65, 0x25, 0x7f, 0x1d, 0xa6, 0x02, 0xfb, 0xcc, 0x1b, 0xff, 0xda, 0x51, 0x13, 0xad, 0x5a, + 0xf6, 0x73, 0x39, 0x3e, 0xb7, 0x5a, 0x88, 0xc5, 0x07, 0x98, 0x41, 0xf7, 0xf3, 0x96, 0x33, 0xcc, + 0x70, 0x21, 0x16, 0x1f, 0x65, 0x98, 0x42, 0x2c, 0x7e, 0x89, 0xb9, 0x5c, 0x88, 0xc5, 0x27, 0x98, + 0xc9, 0x42, 0x2c, 0x3e, 0xcd, 0x70, 0x85, 0x58, 0x3c, 0xc9, 0x9c, 0x2d, 0xc4, 0xe2, 0x29, 0xe6, + 0x42, 0x21, 0x16, 0xbf, 0xc0, 0xa4, 0x0b, 0xb1, 0xf8, 0x55, 0xe6, 0x5a, 0x21, 0x16, 0x9f, 0x63, + 0xae, 0x17, 0x62, 0xf1, 0xeb, 0x0c, 0x5f, 0x88, 0xc5, 0x17, 0x98, 0xc5, 0x42, 0x2c, 0xbe, 0xca, + 0xac, 0xcd, 0xfe, 0xcd, 0x0c, 0x8c, 0x6c, 0xea, 0x58, 0x34, 0xb1, 0x4b, 0x5e, 0x64, 0xbb, 0x72, + 0x17, 0xe1, 0x70, 0xfa, 0x95, 0x30, 0x38, 0xed, 0xc7, 0xc7, 0xbf, 0xf1, 0xd9, 0xf1, 0x71, 0x67, + 0x20, 0xfc, 0x4a, 0x18, 0x10, 0xf6, 0x23, 0xde, 0xcf, 0x8a, 0x2d, 0xbf, 0xf1, 0x39, 0x61, 0xcb, + 0x97, 0x8e, 0x2a, 0xbf, 0xfd, 0xf2, 0x50, 0xe5, 0x29, 0x9e, 0xfc, 0x45, 0xc5, 0x93, 0x5c, 0x00, + 0xd3, 0x7d, 0x81, 0x38, 0x2e, 0xf6, 0xb2, 0x70, 0x5c, 0xec, 0xf3, 0xc0, 0x71, 0xfd, 0xff, 0x07, + 0x38, 0xae, 0xff, 0xd3, 0xe3, 0xb8, 0x81, 0x4f, 0x8f, 0xe3, 0x06, 0x5e, 0x0a, 0x8e, 0x1b, 0xf0, + 0xe2, 0xb8, 0x37, 0x3e, 0x0d, 0x8e, 0xdb, 0x1e, 0x0c, 0x47, 0x70, 0xbf, 0xf9, 0x39, 0x21, 0xb8, + 0xed, 0xc1, 0x30, 0xec, 0xd6, 0x3b, 0xc1, 0x12, 0xff, 0x5c, 0x08, 0x96, 0xb8, 0x87, 0x60, 0xf9, + 0xa5, 0x82, 0x55, 0x5f, 0x38, 0xc8, 0xd5, 0x5e, 0x0a, 0x40, 0xeb, 0x02, 0xcb, 0x4e, 0x21, 0xd3, + 0x4b, 0x84, 0x4c, 0x63, 0x3f, 0xbd, 0x19, 0xb8, 0x0d, 0x6b, 0xc3, 0x21, 0x4f, 0x9e, 0x23, 0xef, + 0x8b, 0x3c, 0x1f, 0x8a, 0x43, 0xa6, 0x9e, 0x3c, 0x47, 0x21, 0xef, 0x2d, 0xe9, 0x10, 0x30, 0x42, + 0xa4, 0xdb, 0xdf, 0xe7, 0xcf, 0xf9, 0x10, 0xc9, 0xc8, 0x93, 0xe7, 0xc8, 0xf3, 0x6c, 0xd9, 0x0a, + 0xc1, 0x1a, 0xc4, 0x56, 0xfb, 0xfb, 0xfc, 0x52, 0x07, 0xc0, 0xc1, 0x3d, 0x79, 0x8e, 0x42, 0x5b, + 0xf2, 0x73, 0x61, 0xb8, 0x63, 0xf2, 0xc9, 0x73, 0xd4, 0xfe, 0x3a, 0xff, 0x7a, 0x57, 0xe0, 0x91, + 0x7a, 0xf2, 0x1c, 0x75, 0x69, 0xcf, 0x27, 0xbd, 0xa8, 0x6a, 0xf8, 0xc9, 0x73, 0xd4, 0x7a, 0xcc, + 0xaf, 0x76, 0x46, 0x26, 0x67, 0x9f, 0x3c, 0x47, 0x9d, 0x1a, 0xf3, 0x2b, 0x1d, 0x21, 0x4a, 0xf2, + 0xc9, 0x73, 0xd4, 0xa1, 0xcd, 0xbd, 0x20, 0xed, 0x67, 0x06, 0xba, 0xe0, 0x96, 0xee, 0x88, 0xc5, + 0x46, 0x35, 0xdd, 0x70, 0xcb, 0x07, 0x33, 0x30, 0x4a, 0x6f, 0xea, 0x4e, 0x81, 0xcb, 0x29, 0x70, + 0x39, 0x05, 0x2e, 0xa7, 0xc0, 0xe5, 0x14, 0xb8, 0x9c, 0x02, 0x97, 0x5f, 0x01, 0xe0, 0xf2, 0x85, + 0xd7, 0xe3, 0xa7, 0xc8, 0xa9, 0x47, 0xe4, 0x74, 0x0a, 0x5c, 0x4e, 0x81, 0xcb, 0x29, 0x70, 0x39, + 0x05, 0x2e, 0x2f, 0x04, 0x5c, 0xfe, 0x79, 0x06, 0x12, 0x77, 0xb0, 0xf9, 0xab, 0x0e, 0x5a, 0x6e, + 0x9c, 0xf8, 0x7d, 0x61, 0xe7, 0xef, 0x09, 0xd7, 0x4f, 0xfa, 0x9e, 0xf0, 0xa5, 0x7d, 0x3f, 0x78, + 0x0a, 0x95, 0x4e, 0xa1, 0xd2, 0x29, 0x54, 0x3a, 0x85, 0x4a, 0xbf, 0xce, 0x50, 0xe9, 0x75, 0x00, + 0xf2, 0x6f, 0xb8, 0x0c, 0x53, 0x34, 0x31, 0x97, 0x22, 0xff, 0x26, 0xef, 0x7c, 0xd8, 0x52, 0xda, + 0x91, 0x4d, 0xbc, 0x63, 0x09, 0x09, 0x43, 0x86, 0xf3, 0xf3, 0xf4, 0x86, 0xe8, 0x14, 0xe7, 0x9c, + 0xe2, 0x9c, 0x5f, 0x68, 0x9c, 0x33, 0xd1, 0x86, 0x73, 0x3e, 0xbe, 0x89, 0x4e, 0xa1, 0xce, 0xaf, + 0x19, 0xd4, 0xe9, 0x1d, 0xde, 0xf4, 0x08, 0x6c, 0xf2, 0x7f, 0x82, 0x8e, 0x7e, 0x9e, 0xea, 0xfb, + 0xf0, 0xe7, 0xa9, 0xbe, 0x4f, 0x7e, 0x9e, 0x42, 0xef, 0x1c, 0xa7, 0xd0, 0x0f, 0x8f, 0x53, 0xe8, + 0x27, 0xc7, 0x29, 0x74, 0x74, 0x9c, 0x42, 0x1f, 0x1e, 0xa7, 0xd0, 0xcf, 0x8e, 0x53, 0xe8, 0xe3, + 0xe3, 0x54, 0xdf, 0x27, 0xc7, 0x29, 0xf4, 0x87, 0x1f, 0xa5, 0xfa, 0x9e, 0x7e, 0x94, 0x42, 0x47, + 0x1f, 0xa5, 0xfa, 0x3e, 0xfc, 0x28, 0xd5, 0xf7, 0xcd, 0xaf, 0x57, 0xb4, 0xda, 0x7e, 0x65, 0xc1, + 0xc1, 0x04, 0x0b, 0x75, 0x63, 0x91, 0xfc, 0xd8, 0xd3, 0xf4, 0xea, 0x7c, 0x4d, 0xd7, 0x1a, 0xb2, + 0x84, 0xf5, 0x79, 0xa7, 0x79, 0xb1, 0x56, 0xaa, 0x68, 0x8b, 0xf8, 0x6d, 0xd3, 0xf9, 0x53, 0xe9, + 0x9d, 0xff, 0x96, 0x7c, 0x69, 0x80, 0xfc, 0xbd, 0xf1, 0xe5, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, + 0xdf, 0xc5, 0x59, 0xaf, 0x78, 0x5e, 0x00, 0x00, } func (this *Interface) Equal(that interface{}) bool { @@ -6457,6 +6497,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GlobalSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -7198,6 +7241,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *CreateSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -7939,6 +7985,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *ReplaceSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -8683,6 +8732,9 @@ func (this *GetSpecType) Equal(that interface{}) bool { if !this.CustomDns.Equal(that1.CustomDns) { return false } + if !this.KubernetesUpgradeDrain.Equal(that1.KubernetesUpgradeDrain) { + return false + } return true } func (this *GetSpecType_NoBondDevices) Equal(that interface{}) bool { @@ -9852,7 +9904,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 43) + s := make([]string, 0, 44) s = append(s, "&voltstack_site.GlobalSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") s = append(s, "MasterNodes: "+fmt.Sprintf("%#v", this.MasterNodes)+",\n") @@ -9918,6 +9970,9 @@ func (this *GlobalSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -10117,7 +10172,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 38) + s := make([]string, 0, 39) s = append(s, "&voltstack_site.CreateSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") s = append(s, "MasterNodes: "+fmt.Sprintf("%#v", this.MasterNodes)+",\n") @@ -10174,6 +10229,9 @@ func (this *CreateSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -10373,7 +10431,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 38) + s := make([]string, 0, 39) s = append(s, "&voltstack_site.ReplaceSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") s = append(s, "MasterNodes: "+fmt.Sprintf("%#v", this.MasterNodes)+",\n") @@ -10430,6 +10488,9 @@ func (this *ReplaceSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -10629,7 +10690,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 39) + s := make([]string, 0, 40) s = append(s, "&voltstack_site.GetSpecType{") s = append(s, "VolterraCertifiedHw: "+fmt.Sprintf("%#v", this.VolterraCertifiedHw)+",\n") s = append(s, "MasterNodes: "+fmt.Sprintf("%#v", this.MasterNodes)+",\n") @@ -10683,6 +10744,9 @@ func (this *GetSpecType) GoString() string { if this.CustomDns != nil { s = append(s, "CustomDns: "+fmt.Sprintf("%#v", this.CustomDns)+",\n") } + if this.KubernetesUpgradeDrain != nil { + s = append(s, "KubernetesUpgradeDrain: "+fmt.Sprintf("%#v", this.KubernetesUpgradeDrain)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -12550,6 +12614,20 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xc2 } + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -13374,6 +13452,20 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -14156,6 +14248,20 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -14938,6 +15044,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.KubernetesUpgradeDrain != nil { + { + size, err := m.KubernetesUpgradeDrain.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3 + i-- + dAtA[i] = 0xd2 + } if m.CustomDns != nil { { size, err := m.CustomDns.MarshalToSizedBuffer(dAtA[:i]) @@ -16603,6 +16723,10 @@ func (m *GlobalSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.ViewInternal != nil { l = m.ViewInternal.Size() n += 2 + l + sovTypes(uint64(l)) @@ -16983,6 +17107,10 @@ func (m *CreateSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -17359,6 +17487,10 @@ func (m *ReplaceSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -17738,6 +17870,10 @@ func (m *GetSpecType) Size() (n int) { l = m.CustomDns.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.KubernetesUpgradeDrain != nil { + l = m.KubernetesUpgradeDrain.Size() + n += 2 + l + sovTypes(uint64(l)) + } return n } @@ -18720,6 +18856,7 @@ func (this *GlobalSpecType) String() string { `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, `}`, }, "") @@ -18996,6 +19133,7 @@ func (this *CreateSpecType) String() string { `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -19271,6 +19409,7 @@ func (this *ReplaceSpecType) String() string { `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -19547,6 +19686,7 @@ func (this *GetSpecType) String() string { `MasterNodeConfiguration:` + repeatedStringForMasterNodeConfiguration + `,`, `SriovInterfaceChoice:` + fmt.Sprintf("%v", this.SriovInterfaceChoice) + `,`, `CustomDns:` + strings.Replace(fmt.Sprintf("%v", this.CustomDns), "CustomDNS", "views.CustomDNS", 1) + `,`, + `KubernetesUpgradeDrain:` + strings.Replace(fmt.Sprintf("%v", this.KubernetesUpgradeDrain), "KubernetesUpgradeDrain", "views.KubernetesUpgradeDrain", 1) + `,`, `}`, }, "") return s @@ -24196,6 +24336,42 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1000: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ViewInternal", wireType) @@ -25467,6 +25643,42 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -26702,6 +26914,42 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -27948,6 +28196,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 58: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUpgradeDrain", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubernetesUpgradeDrain == nil { + m.KubernetesUpgradeDrain = &views.KubernetesUpgradeDrain{} + } + if err := m.KubernetesUpgradeDrain.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/pbgo/extschema/schema/views/voltstack_site/types.vesmsg.go b/pbgo/extschema/schema/views/voltstack_site/types.vesmsg.go index dadc116b7..5198520e9 100644 --- a/pbgo/extschema/schema/views/voltstack_site/types.vesmsg.go +++ b/pbgo/extschema/schema/views/voltstack_site/types.vesmsg.go @@ -802,6 +802,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + switch m.GetLocalControlPlaneChoice().(type) { case *CreateSpecType_NoLocalControlPlane: if fv, exists := v.FldValidators["local_control_plane_choice.no_local_control_plane"]; exists { @@ -1301,6 +1310,8 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -2100,6 +2111,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + switch m.GetLocalControlPlaneChoice().(type) { case *GetSpecType_NoLocalControlPlane: if fv, exists := v.FldValidators["local_control_plane_choice.no_local_control_plane"]; exists { @@ -2626,6 +2646,8 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -3956,6 +3978,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["launch_ike_in_namespace"]; exists { vOpts := append(opts, db.WithValidateField("launch_ike_in_namespace")) @@ -4524,6 +4555,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate return v @@ -5816,6 +5849,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["kubernetes_upgrade_drain"]; exists { + + vOpts := append(opts, db.WithValidateField("kubernetes_upgrade_drain")) + if err := fv(ctx, m.GetKubernetesUpgradeDrain(), vOpts...); err != nil { + return err + } + + } + switch m.GetLocalControlPlaneChoice().(type) { case *ReplaceSpecType_NoLocalControlPlane: if fv, exists := v.FldValidators["local_control_plane_choice.no_local_control_plane"]; exists { @@ -6315,6 +6357,8 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["custom_dns"] = ves_io_schema_views.CustomDNSValidator().Validate + v.FldValidators["kubernetes_upgrade_drain"] = ves_io_schema_views.KubernetesUpgradeDrainValidator().Validate + return v }() @@ -9416,6 +9460,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.CustomDns = f.GetCustomDns() m.GetGpuChoiceFromGlobalSpecType(f) m.GetK8SClusterChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLocalControlPlaneChoiceFromGlobalSpecType(f) m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MasterNodeConfiguration = f.GetMasterNodeConfiguration() @@ -9454,6 +9499,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.CustomDns = m1.CustomDns m1.SetGpuChoiceToGlobalSpecType(f) m1.SetK8SClusterChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLocalControlPlaneChoiceToGlobalSpecType(f) m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MasterNodeConfiguration = m1.MasterNodeConfiguration @@ -9886,6 +9932,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.CustomDns = f.GetCustomDns() m.GetGpuChoiceFromGlobalSpecType(f) m.GetK8SClusterChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLocalControlPlaneChoiceFromGlobalSpecType(f) m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MasterNodeConfiguration = f.GetMasterNodeConfiguration() @@ -9925,6 +9972,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.CustomDns = m1.CustomDns m1.SetGpuChoiceToGlobalSpecType(f) m1.SetK8SClusterChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLocalControlPlaneChoiceToGlobalSpecType(f) m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MasterNodeConfiguration = m1.MasterNodeConfiguration @@ -10358,6 +10406,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.CustomDns = f.GetCustomDns() m.GetGpuChoiceFromGlobalSpecType(f) m.GetK8SClusterChoiceFromGlobalSpecType(f) + m.KubernetesUpgradeDrain = f.GetKubernetesUpgradeDrain() m.GetLocalControlPlaneChoiceFromGlobalSpecType(f) m.GetLogsReceiverChoiceFromGlobalSpecType(f) m.MasterNodeConfiguration = f.GetMasterNodeConfiguration() @@ -10396,6 +10445,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.CustomDns = m1.CustomDns m1.SetGpuChoiceToGlobalSpecType(f) m1.SetK8SClusterChoiceToGlobalSpecType(f) + f.KubernetesUpgradeDrain = m1.KubernetesUpgradeDrain m1.SetLocalControlPlaneChoiceToGlobalSpecType(f) m1.SetLogsReceiverChoiceToGlobalSpecType(f) f.MasterNodeConfiguration = m1.MasterNodeConfiguration diff --git a/pbgo/extschema/schema/virtual_host/crudapi/api.vesapi.go b/pbgo/extschema/schema/virtual_host/crudapi/api.vesapi.go index 4ff70d400..71feb11d6 100644 --- a/pbgo/extschema/schema/virtual_host/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/virtual_host/crudapi/api.vesapi.go @@ -3723,23 +3723,36 @@ var APISwaggerJSON string = `{ }, "schemaHeaderTransformationType": { "type": "object", - "description": "x-displayName: \"Header Transformation\"\nHeader Transformation options for HTTP/1.1 request/response headers", + "description": "Header Transformation options for HTTP/1.1 request/response headers", "title": "HeaderTransformationType", + "x-displayname": "Header Transformation", + "x-ves-displayorder": "1", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "x-displayName: \"Default\"\nNormalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default" + }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Legacy" }, "preserve_case_header_transformation": { - "description": "x-displayName: \"Preserve Case\"\nPreserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "x-displayName: \"Proper Case\"\nNormalize the headers to proper case words. The fist character and any character\nfollowing a special character will be capitalized if it’s an alpha character.\nFor example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Proper Case" } } }, @@ -3811,10 +3824,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -4529,7 +4546,22 @@ var APISwaggerJSON string = `{ "description": "Reference to Root CA Certificate", "title": "Root CA Certificate", "x-displayname": "Root CA Certificate Reference", - "x-ves-proto-message": "ves.io.schema.TrustedCAList" + "x-ves-proto-message": "ves.io.schema.TrustedCAList", + "properties": { + "trusted_ca_list": { + "type": "array", + "description": " Reference to Root CA Certificate\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Root CA Certificate", + "maxItems": 1, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Root CA Certificate Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } }, "schemaVaultSecretInfoType": { "type": "object", @@ -4998,6 +5030,12 @@ var APISwaggerJSON string = `{ "x-displayname": "Host Name", "x-ves-example": "ves-io-cf8684b9-a18f-4843-a24f-1f9ee8ea2776.ac.vh.ves.io" }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "title": "http_protocol_options", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, "idle_timeout": { "type": "integer", "description": " Idle timeout is the amount of time that the loadbalancer will allow a stream to exist with\n no upstream or downstream activity.\n\n Idle timeout and Proxy Type:\n\n HTTP_PROXY, HTTPS_PROXY:\n Idle timer is started when the first byte is received on the connection.\n Each time an encode/decode event for headers or data is processed for the stream,\n the timer will be reset.\n If the timeout fires, the stream is terminated with a 504 (Gateway Timeout) error code if\n no upstream response header has been received, otherwise a stream reset occurs.\n The default idle timeout is 30 seconds\n\n TCP PROXY, TCP_PROXY_WITH_SNI, SMA_PROXY:\n The idle timeout is defined as the period in which there are no bytes sent or received on\n either the upstream or downstream connection.\n The default idle timeout is 1 hour.\n\n UDP PROXY:\n The idle timeout for sessions. Idle timeout is defined as the period in which there are no\n datagrams sent or received on the session.\n The default if not specified is 1 minute.\n\nExample: - \"2000\"-", @@ -5233,6 +5271,13 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/virtual_hostVirtualHostType", "x-displayname": "Virtual Host Type" }, + "use_threat_mesh": { + "type": "boolean", + "description": " Threat Mesh provides F5 Distributed Cloud customers with an additional layer of protection against web application attacks.\n Threat mesh leverages cross-customer correlation i.e correlation of client attacks across different customers\n to identify malicious intent of the client. Whenever a client is flagged due to malicious intent by our WAAP decision engines,\n that client will be added to the ThreatDB and all customers get this intelligence and are protected in real-time.", + "title": "Use Threat Mesh", + "format": "boolean", + "x-displayname": "Use Threat Mesh" + }, "user_domains": { "type": "array", "description": " User Provided domains. Used internally.\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.unique: true\n", @@ -5277,6 +5322,21 @@ var APISwaggerJSON string = `{ } } }, + "schemavirtual_hostHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for downstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.virtual_host.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to response headers sent to the client and when a\n Stateful formatter is selected, it applies to the upstream request headers.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on origin pool. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "schemavirtual_hostSpecType": { "type": "object", "description": "Shape of the virtual host specification", @@ -5529,8 +5589,9 @@ var APISwaggerJSON string = `{ "properties": { "client_ip_headers": { "type": "array", - "description": " Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning\n if the first header is not present in the request, the system will proceed to check for the second header,\n and so on, until one of the listed headers is found. If none of the defined headers exist, or the value\n is not an IP address, then the system will use the source IP of the packet. If multiple defined headers with\n different names are present in the request, the value of the first header name in the configuration will be used.\n If multiple defined headers with the same name are present in the request, values of all those headers will be combined.\n The system will read the right-most IP address from header, if there are multiple ip addresses in the header value.\n For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip\n\nExample: - \"Client-IP-Header\"-\n\nValidation Rules:\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 5\n ves.io.schema.rules.repeated.unique: true\n", + "description": " Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning\n if the first header is not present in the request, the system will proceed to check for the second header,\n and so on, until one of the listed headers is found. If none of the defined headers exist, or the value\n is not an IP address, then the system will use the source IP of the packet. If multiple defined headers with\n different names are present in the request, the value of the first header name in the configuration will be used.\n If multiple defined headers with the same name are present in the request, values of all those headers will be combined.\n The system will read the right-most IP address from header, if there are multiple ip addresses in the header value.\n For X-Forwarded-For header, the system will read the IP address(rightmost - 1), as the client ip\n\nExample: - \"Client-IP-Header\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.items.string.max_bytes: 256\n ves.io.schema.rules.repeated.items.string.min_bytes: 1\n ves.io.schema.rules.repeated.max_items: 5\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", "title": "Client IP Headers", + "minItems": 1, "maxItems": 5, "items": { "type": "string", @@ -5539,10 +5600,13 @@ var APISwaggerJSON string = `{ }, "x-displayname": "Client IP Headers", "x-ves-example": "Client-IP-Header", + "x-ves-required": "true", "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.items.string.max_bytes": "256", "ves.io.schema.rules.repeated.items.string.min_bytes": "1", "ves.io.schema.rules.repeated.max_items": "5", + "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true" } } @@ -5763,23 +5827,30 @@ var APISwaggerJSON string = `{ }, "virtual_hostHttpProtocolOptions": { "type": "object", - "description": "x-displayName: \"HTTP Protocol Configuration Options\"\nHTTP protocol configuration options for downstream connections", + "description": "HTTP protocol configuration options for downstream connections", "title": "HttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration Options", + "x-ves-displayorder": "1", + "x-ves-oneof-field-http_protocol_choice": "[\"http_protocol_enable_v1_only\",\"http_protocol_enable_v1_v2\",\"http_protocol_enable_v2_only\"]", + "x-ves-proto-message": "ves.io.schema.virtual_host.HttpProtocolOptions", "properties": { "http_protocol_enable_v1_only": { - "description": "x-displayName: \"HTTP/1.1\"\nEnable HTTP/1.1 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_v2 http_protocol_enable_v2_only]\n Enable HTTP/1.1 for downstream connections", "title": "http_protocol_enable_v1_only", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemavirtual_hostHttp1ProtocolOptions", + "x-displayname": "HTTP/1.1" }, "http_protocol_enable_v1_v2": { - "description": "x-displayName: \"HTTP/1.1 and HTTP/2\"\nEnable both HTTP/1.1 and HTTP/2 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v2_only]\n Enable both HTTP/1.1 and HTTP/2 for downstream connections", "title": "http_protocol_enable_v1_v2", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "HTTP/1.1 and HTTP/2" }, "http_protocol_enable_v2_only": { - "description": "x-displayName: \"HTTP/2\"\nEnable HTTP/2 for downstream connections", + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v1_v2]\n Enable HTTP/2 for downstream connections", "title": "http_protocol_enable_v2_only", - "$ref": "#/definitions/schemaEmpty" + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "HTTP/2" } } }, @@ -5934,11 +6005,12 @@ var APISwaggerJSON string = `{ }, "virtual_hostProxyType": { "type": "string", - "description": "ProxyType tells the type of proxy to install for the virtual host.\n\nOnly the following combination of VirtualHosts within same AdvertisePolicy is permitted\n(None of them should have \"*\" in domains when used with other VirtualHosts in same AdvertisePolicy)\n1. Multiple TCP_PROXY_WITH_SNI and multiple HTTPS_PROXY\n2. Multiple HTTP_PROXY\n3. Multiple HTTPS_PROXY\n4. Multiple TCP_PROXY_WITH_SNI\n\nHTTPS_PROXY without TLS parameters is not permitted\nHTTP_PROXY/HTTPS_PROXY/TCP_PROXY_WITH_SNI/SMA_PROXY with empty domains is not permitted\nTCP_PROXY_WITH_SNI/SMA_PROXY should not have \"*\" in domains\n\n - HTTP_PROXY: HTTP_PROXY\n\nInstall HTTP proxy. HTTP Proxy is the default proxy installed.\n - TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - TLS_TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TLS_TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - HTTPS_PROXY: HTTPS_PROXY\n\nInstall HTTPS proxy\n - UDP_PROXY: UDP_PROXY\n\nInstall UDP proxy\n - SMA_PROXY: SMA_PROXY\n\nInstall Secret Management Access proxy\n - DNS_PROXY: DNS_PROXY\n\nInstall DNS proxy", + "description": "ProxyType tells the type of proxy to install for the virtual host.\n\nOnly the following combination of VirtualHosts within same AdvertisePolicy is permitted\n(None of them should have \"*\" in domains when used with other VirtualHosts in same AdvertisePolicy)\n1. Multiple TCP_PROXY_WITH_SNI and multiple HTTPS_PROXY\n2. Multiple HTTP_PROXY\n3. Multiple HTTPS_PROXY\n4. Multiple TCP_PROXY_WITH_SNI\n\nHTTPS_PROXY without TLS parameters is not permitted\nHTTP_PROXY/HTTPS_PROXY/TCP_PROXY_WITH_SNI/SMA_PROXY with empty domains is not permitted\nTCP_PROXY_WITH_SNI/SMA_PROXY should not have \"*\" in domains\n\n - HTTP_PROXY: HTTP_PROXY\n\nInstall HTTP proxy. HTTP Proxy is the default proxy installed.\n - TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - TLS_TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TLS_TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - HTTPS_PROXY: HTTPS_PROXY\n\nInstall HTTPS proxy\n - UDP_PROXY: UDP_PROXY\n\nInstall UDP proxy\n - SMA_PROXY: SMA_PROXY\n\nInstall Secret Management Access proxy\n - DNS_PROXY: DNS_PROXY\n\nInstall DNS proxy\n - ZTNA_PROXY: ZTNA_PROXY\n\nInstall ZTNA proxy", "enum": [ "UDP_PROXY", "SMA_PROXY", - "DNS_PROXY" + "DNS_PROXY", + "ZTNA_PROXY" ], "default": "HTTP_PROXY", "x-displayname": "Type of Proxy", @@ -6198,6 +6270,29 @@ var APISwaggerJSON string = `{ "x-displayname": "Virtual Host Type", "x-ves-proto-enum": "ves.io.schema.virtual_host.VirtualHostType" }, + "virtual_hostZtnaProxyConfiguration": { + "type": "object", + "description": "x-displayName: \"Ztna Proxy Configuration\"\nZtna Proxy Configuration contains Policy and Application Configuration", + "title": "Ztna Proxy Configuration", + "properties": { + "ztna_application_config": { + "type": "array", + "description": "x-displayName: \"Ztna Application Configuration\"\nAdvance configuration of Ztna Application Configuration(Connectivity/Session/Message)", + "title": "Ztna Application Configuration", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + } + }, + "ztna_policy_config": { + "type": "array", + "description": "x-displayName: \"Ztna Policy Configuration\"\nAdvance configuration of Ztna Policy Configuration(Connectivity/Session/Message)", + "title": "Ztna Policy Configuration", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + } + } + } + }, "virtual_host_dns_infoDnsInfo": { "type": "object", "description": "A message that contains DNS information for a given IP address", diff --git a/pbgo/extschema/schema/virtual_host/object.pb.go b/pbgo/extschema/schema/virtual_host/object.pb.go index ab5f0b0e0..9258e178f 100644 --- a/pbgo/extschema/schema/virtual_host/object.pb.go +++ b/pbgo/extschema/schema/virtual_host/object.pb.go @@ -246,46 +246,47 @@ func init() { } var fileDescriptor_c76168ba7b52b0a0 = []byte{ - // 615 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xc1, 0x6b, 0x13, 0x4f, - 0x14, 0xce, 0x24, 0x69, 0x5a, 0xa6, 0xa5, 0x2d, 0xfb, 0xbb, 0xec, 0xaf, 0xea, 0x50, 0xa2, 0x68, - 0x15, 0x77, 0x56, 0x2a, 0x62, 0x5b, 0x44, 0xb0, 0x15, 0x0a, 0xd2, 0x5a, 0x49, 0xc5, 0x83, 0x97, - 0x30, 0x3b, 0x79, 0xd9, 0x8c, 0x66, 0x33, 0xcb, 0xcc, 0x6c, 0x6c, 0x0e, 0x82, 0x7f, 0x81, 0xf8, - 0x37, 0x78, 0x12, 0xc1, 0xa3, 0x77, 0xeb, 0xc9, 0x63, 0xe9, 0xa9, 0x47, 0xbb, 0xb9, 0x78, 0xec, - 0xdd, 0x8b, 0x74, 0xb6, 0x5b, 0xd2, 0x10, 0x8b, 0xf4, 0x36, 0xcb, 0xfb, 0xbe, 0x6f, 0xdf, 0xf7, - 0xcd, 0x9b, 0x87, 0x6f, 0x74, 0x41, 0x53, 0x21, 0x7d, 0xcd, 0x5b, 0x10, 0x31, 0xbf, 0x2b, 0x94, - 0x49, 0x58, 0xbb, 0xde, 0x92, 0xda, 0xf8, 0x32, 0x78, 0x05, 0xdc, 0xd0, 0x58, 0x49, 0x23, 0x9d, - 0xb9, 0x0c, 0x48, 0x33, 0x20, 0x1d, 0x04, 0xce, 0x79, 0xa1, 0x30, 0xad, 0x24, 0xa0, 0x5c, 0x46, - 0x7e, 0x28, 0x43, 0xe9, 0x5b, 0x4a, 0x90, 0x34, 0xed, 0x97, 0xfd, 0xb0, 0xa7, 0x4c, 0x6a, 0xee, - 0xd2, 0xd9, 0x7f, 0xca, 0xd8, 0x08, 0xd9, 0xd1, 0x27, 0xc5, 0xff, 0xcf, 0x16, 0x4d, 0x2f, 0x86, - 0xbc, 0x54, 0x1d, 0xea, 0x15, 0x34, 0x74, 0xba, 0x43, 0xf4, 0xeb, 0xe7, 0xf8, 0x19, 0xd0, 0xaa, - 0xfe, 0x2e, 0xe1, 0xca, 0x96, 0xf5, 0xe7, 0x2c, 0xe3, 0x89, 0x08, 0x0c, 0x6b, 0x30, 0xc3, 0x5c, - 0x34, 0x8f, 0x16, 0x26, 0x17, 0xaf, 0xd0, 0xb3, 0x66, 0x33, 0xe0, 0x26, 0x18, 0xf6, 0xbc, 0x17, - 0x43, 0xed, 0x14, 0xee, 0x6c, 0xe0, 0x19, 0xdd, 0xd3, 0x06, 0xa2, 0xfa, 0xa9, 0x42, 0xd1, 0x2a, - 0x5c, 0x1d, 0x52, 0xd8, 0xb6, 0xa8, 0x21, 0x9d, 0xe9, 0x8c, 0xbb, 0x99, 0xab, 0x2d, 0xe1, 0xb2, - 0x8e, 0x81, 0xbb, 0x25, 0x2b, 0x71, 0x8d, 0xfe, 0x3d, 0x71, 0xba, 0x1d, 0x03, 0xb7, 0x1a, 0x96, - 0xb1, 0xf2, 0xa5, 0xf8, 0x7d, 0xd7, 0x2d, 0xce, 0xa2, 0xfd, 0x5d, 0xf7, 0x63, 0x11, 0xdf, 0xc7, - 0xa5, 0x75, 0x30, 0xce, 0x9d, 0xe6, 0xbd, 0x1d, 0xee, 0x69, 0xe0, 0x89, 0x82, 0x08, 0x74, 0xcb, - 0x0b, 0x98, 0x16, 0xdc, 0x8b, 0x64, 0x47, 0x18, 0xa9, 0x6e, 0xcf, 0x77, 0x41, 0x7b, 0x42, 0x7a, - 0xb1, 0x92, 0x3b, 0x3d, 0x4f, 0x01, 0x6b, 0xe0, 0x65, 0x3c, 0x5e, 0x83, 0xb8, 0xcd, 0x38, 0x38, - 0x74, 0x34, 0x39, 0xd1, 0x30, 0xcc, 0x7c, 0xa3, 0x84, 0x01, 0xbc, 0x84, 0x2b, 0x6b, 0x0a, 0x98, - 0xb9, 0x10, 0xf3, 0x31, 0xb4, 0xe1, 0x42, 0xcc, 0xf2, 0x86, 0xd0, 0x17, 0x30, 0x5a, 0xdd, 0xc2, - 0x13, 0x79, 0x82, 0xce, 0x1a, 0x1e, 0x0f, 0x79, 0xdd, 0x06, 0x9f, 0xdd, 0xdd, 0xad, 0xf3, 0x82, - 0x5f, 0x6f, 0xcb, 0x80, 0xb5, 0x4f, 0xe3, 0xaf, 0x84, 0xfc, 0xf8, 0x5c, 0xfd, 0x5a, 0xc4, 0x53, - 0xdb, 0x86, 0x99, 0x44, 0xff, 0xf3, 0x50, 0x65, 0xf0, 0x11, 0x43, 0xf5, 0x14, 0x4f, 0x66, 0x2f, - 0xaf, 0xae, 0xa0, 0xa9, 0xdd, 0xe2, 0x7c, 0x69, 0x61, 0x72, 0xf1, 0xf2, 0xc8, 0x91, 0xac, 0x41, - 0xf3, 0x98, 0xbc, 0x3a, 0xf3, 0xf9, 0xed, 0xd4, 0x60, 0x9b, 0x35, 0x2c, 0xf3, 0xba, 0x76, 0x1e, - 0x60, 0xcc, 0x65, 0xa7, 0x21, 0xec, 0x33, 0x71, 0x4b, 0x23, 0xe5, 0xd6, 0x72, 0x80, 0xed, 0x65, - 0x00, 0xef, 0x3c, 0xc2, 0x15, 0x6d, 0x3b, 0x75, 0xc7, 0x2c, 0xf3, 0xe6, 0x79, 0xe9, 0xbc, 0x00, - 0x95, 0xd9, 0xca, 0xc2, 0xc9, 0x88, 0x2b, 0xff, 0xed, 0x3f, 0x9c, 0xc5, 0xd3, 0x78, 0x2a, 0x77, - 0x48, 0x13, 0xd1, 0x78, 0x52, 0x9e, 0x28, 0xcf, 0x8e, 0xad, 0xbe, 0x47, 0x7b, 0x87, 0xa4, 0x70, - 0x70, 0x48, 0x0a, 0x47, 0x87, 0x04, 0xbd, 0x4b, 0x09, 0xfa, 0x94, 0x12, 0xf4, 0x23, 0x25, 0x68, - 0x2f, 0x25, 0xe8, 0x20, 0x25, 0xe8, 0x67, 0x4a, 0xd0, 0xaf, 0x94, 0x14, 0x8e, 0x52, 0x82, 0x3e, - 0xf4, 0x49, 0xe1, 0x5b, 0x9f, 0xa0, 0xbd, 0x3e, 0x29, 0x1c, 0xf4, 0x49, 0xe1, 0xe5, 0xb3, 0x50, - 0xc6, 0xaf, 0x43, 0xda, 0x95, 0x6d, 0x03, 0x4a, 0x31, 0x9a, 0x68, 0xdf, 0x1e, 0x9a, 0x52, 0x45, - 0xc7, 0xf7, 0xdd, 0x15, 0x0d, 0x50, 0x5e, 0x5e, 0xf6, 0xe3, 0x20, 0x94, 0x3e, 0xec, 0x98, 0x93, - 0xe5, 0x30, 0x62, 0x47, 0x04, 0x15, 0xbb, 0x1e, 0xee, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0x23, - 0x2e, 0x57, 0x93, 0x18, 0x05, 0x00, 0x00, + // 635 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xcf, 0x6e, 0xd3, 0x4e, + 0x10, 0xc7, 0xb3, 0x49, 0x9a, 0x56, 0xdb, 0xaa, 0xad, 0xfc, 0xbb, 0xf8, 0x57, 0x60, 0x55, 0x05, + 0x04, 0x05, 0x61, 0x5b, 0x2a, 0x42, 0x82, 0x0a, 0x21, 0xd1, 0x22, 0x55, 0x42, 0x2d, 0x45, 0x29, + 0xe2, 0x4f, 0x2f, 0xd1, 0xda, 0x9e, 0x38, 0x86, 0x38, 0x6b, 0xed, 0xae, 0x4d, 0x73, 0x40, 0xe2, + 0x09, 0x10, 0x0f, 0xc0, 0x03, 0x20, 0xee, 0xdc, 0x29, 0x5c, 0x38, 0xa1, 0xaa, 0xa7, 0x1e, 0xa9, + 0x73, 0xe1, 0xd8, 0x47, 0x40, 0xdd, 0xad, 0x43, 0x12, 0x85, 0x88, 0x03, 0xbd, 0xad, 0x35, 0xdf, + 0xef, 0xc7, 0x33, 0xb3, 0xb3, 0x83, 0xaf, 0xa4, 0x20, 0xec, 0x90, 0x39, 0xc2, 0x6b, 0x42, 0x44, + 0x9d, 0x34, 0xe4, 0x32, 0xa1, 0xad, 0x7a, 0x93, 0x09, 0xe9, 0x30, 0xf7, 0x05, 0x78, 0xd2, 0x8e, + 0x39, 0x93, 0xcc, 0x58, 0xd0, 0x42, 0x5b, 0x0b, 0xed, 0x7e, 0xe1, 0x82, 0x15, 0x84, 0xb2, 0x99, + 0xb8, 0xb6, 0xc7, 0x22, 0x27, 0x60, 0x01, 0x73, 0x94, 0xc5, 0x4d, 0x1a, 0xea, 0x4b, 0x7d, 0xa8, + 0x93, 0x46, 0x2d, 0x9c, 0x1b, 0xfc, 0x27, 0x8b, 0x65, 0xc8, 0xda, 0xe2, 0x34, 0xf8, 0xff, 0x60, + 0x50, 0x76, 0x62, 0xc8, 0x43, 0xd5, 0xa1, 0x5c, 0x41, 0x40, 0x3b, 0x1d, 0xb2, 0x5f, 0x1e, 0x53, + 0x4f, 0x1f, 0xab, 0xfa, 0x7e, 0x02, 0x57, 0xb6, 0x54, 0x7d, 0xc6, 0x6d, 0x3c, 0x15, 0x81, 0xa4, + 0x3e, 0x95, 0xd4, 0x44, 0x8b, 0x68, 0x69, 0x7a, 0xf9, 0x82, 0x3d, 0x58, 0xac, 0x16, 0x6e, 0x82, + 0xa4, 0x8f, 0x3b, 0x31, 0xd4, 0x7a, 0x72, 0x63, 0x03, 0xcf, 0x89, 0x8e, 0x90, 0x10, 0xd5, 0x7b, + 0x84, 0xa2, 0x22, 0x5c, 0x1c, 0x22, 0x6c, 0x2b, 0xd5, 0x10, 0x67, 0x56, 0x7b, 0x37, 0x73, 0xda, + 0x2d, 0x5c, 0x16, 0x31, 0x78, 0x66, 0x49, 0x21, 0x2e, 0xd9, 0x7f, 0xee, 0xb8, 0xbd, 0x1d, 0x83, + 0xa7, 0x18, 0xca, 0xb1, 0xf2, 0xbd, 0xf4, 0x65, 0xcf, 0x2c, 0xce, 0xa3, 0x83, 0x3d, 0xf3, 0x6b, + 0x09, 0x3f, 0xc7, 0xa5, 0x75, 0x90, 0x46, 0xad, 0x71, 0x73, 0xd7, 0xb3, 0x04, 0x78, 0x09, 0x87, + 0x08, 0x44, 0xd3, 0x72, 0xa9, 0x08, 0x3d, 0x2b, 0x62, 0xed, 0x50, 0x32, 0x7e, 0x7d, 0x71, 0x38, + 0x2c, 0x24, 0x6d, 0xfb, 0x94, 0xfb, 0xbf, 0x15, 0x29, 0x08, 0x2b, 0x64, 0x56, 0xcc, 0xd9, 0x6e, + 0xc7, 0xe2, 0x40, 0x7d, 0xfc, 0x0c, 0x4f, 0xd6, 0x20, 0x6e, 0x51, 0x0f, 0x8c, 0xcd, 0xd1, 0xf8, + 0x44, 0xc0, 0x38, 0xb6, 0x0e, 0x0f, 0x80, 0x5f, 0xf1, 0x50, 0x02, 0x7e, 0x8a, 0x2b, 0x6b, 0x1c, + 0xa8, 0x3c, 0x0b, 0xf0, 0x7d, 0x68, 0xc1, 0xbf, 0x07, 0xef, 0xe0, 0xf2, 0x46, 0x28, 0xce, 0xa4, + 0xcf, 0xd5, 0x2d, 0x3c, 0x95, 0x5f, 0xb1, 0xb1, 0x86, 0x27, 0x03, 0xaf, 0xae, 0x26, 0x43, 0x0f, + 0xd7, 0xb5, 0x71, 0x93, 0xb1, 0xde, 0x62, 0x2e, 0x6d, 0xf5, 0xe6, 0xa3, 0x12, 0x78, 0x27, 0xe7, + 0xea, 0xa7, 0x22, 0x9e, 0xd9, 0x96, 0x54, 0x26, 0xe2, 0xaf, 0xa7, 0x5e, 0xcb, 0x47, 0x4c, 0xfd, + 0x43, 0x3c, 0xad, 0x57, 0x43, 0x9d, 0x43, 0x43, 0x98, 0xc5, 0xc5, 0xd2, 0xd2, 0xf4, 0xf2, 0xf9, + 0x91, 0x6f, 0xa6, 0x06, 0x8d, 0x13, 0xf3, 0xea, 0xdc, 0xc7, 0xd7, 0x33, 0xfd, 0x69, 0xd6, 0x30, + 0xcb, 0xe3, 0xc2, 0xb8, 0x83, 0xb1, 0xc7, 0xda, 0x7e, 0xa8, 0xde, 0xb1, 0x59, 0x1a, 0x89, 0x5b, + 0xcb, 0x05, 0x2a, 0x97, 0x3e, 0xbd, 0x71, 0x0f, 0x57, 0x84, 0xca, 0xd4, 0x9c, 0x50, 0xce, 0xab, + 0xe3, 0xba, 0xf3, 0x04, 0xb8, 0x2e, 0x4b, 0x37, 0x47, 0x1b, 0x57, 0xfe, 0x3b, 0xb8, 0x3b, 0x8f, + 0x67, 0xf1, 0x4c, 0x5e, 0xa1, 0x9d, 0x84, 0xfe, 0x83, 0xf2, 0x54, 0x79, 0x7e, 0x62, 0xf5, 0x2d, + 0xda, 0x3f, 0x22, 0x85, 0xc3, 0x23, 0x52, 0x38, 0x3e, 0x22, 0xe8, 0x4d, 0x46, 0xd0, 0x87, 0x8c, + 0xa0, 0x6f, 0x19, 0x41, 0xfb, 0x19, 0x41, 0x87, 0x19, 0x41, 0x3f, 0x32, 0x82, 0x7e, 0x66, 0xa4, + 0x70, 0x9c, 0x11, 0xf4, 0xae, 0x4b, 0x0a, 0x9f, 0xbb, 0x04, 0xed, 0x77, 0x49, 0xe1, 0xb0, 0x4b, + 0x0a, 0x3b, 0x8f, 0x02, 0x16, 0xbf, 0x0c, 0xec, 0x94, 0xb5, 0x24, 0x70, 0x4e, 0xed, 0x44, 0x38, + 0xea, 0xd0, 0x60, 0x3c, 0x3a, 0xb9, 0xef, 0x34, 0xf4, 0x81, 0x5b, 0x79, 0xd8, 0x89, 0xdd, 0x80, + 0x39, 0xb0, 0x2b, 0x4f, 0xb7, 0xd7, 0x88, 0x25, 0xe6, 0x56, 0xd4, 0xfe, 0xba, 0xf1, 0x2b, 0x00, + 0x00, 0xff, 0xff, 0xe4, 0x4a, 0x63, 0x4a, 0xb9, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/virtual_host/pkg.vespkg.go b/pbgo/extschema/schema/virtual_host/pkg.vespkg.go index 046614c49..e84db59c6 100644 --- a/pbgo/extschema/schema/virtual_host/pkg.vespkg.go +++ b/pbgo/extschema/schema/virtual_host/pkg.vespkg.go @@ -81,6 +81,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.virtual_host.DynamicReverseProxyType"] = DynamicReverseProxyTypeValidator() vr["ves.io.schema.virtual_host.GetSpecType"] = GetSpecTypeValidator() vr["ves.io.schema.virtual_host.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.virtual_host.Http1ProtocolOptions"] = Http1ProtocolOptionsValidator() vr["ves.io.schema.virtual_host.HttpProtocolOptions"] = HttpProtocolOptionsValidator() vr["ves.io.schema.virtual_host.HttpRedirectOptions"] = HttpRedirectOptionsValidator() vr["ves.io.schema.virtual_host.JavaScriptConfigType"] = JavaScriptConfigTypeValidator() @@ -94,6 +95,7 @@ func initializeValidatorRegistry(vr map[string]db.Validator) { vr["ves.io.schema.virtual_host.TemporaryUserBlockingType"] = TemporaryUserBlockingTypeValidator() vr["ves.io.schema.virtual_host.VerStatusType"] = VerStatusTypeValidator() vr["ves.io.schema.virtual_host.VirtualHostID"] = VirtualHostIDValidator() + vr["ves.io.schema.virtual_host.ZtnaProxyConfiguration"] = ZtnaProxyConfigurationValidator() } @@ -115,6 +117,13 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "discovered_openapi_spec", } + mdr.RPCSubscriptionFieldsRegistry["ves.io.schema.virtual_host.API.Create"] = []svcfw.SubscriptionField{ + { + FieldPath: "ves.io.schema.virtual_host.CreateRequest.spec.api_spec.open_api_validation_choice.enable_open_api_validation", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + } + mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.virtual_host.API.Create"] = []string{ "spec.api_spec", "spec.authentication.cookie_params.auth_hmac.prim_key.blindfold_secret_info_internal", @@ -149,10 +158,18 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.tls_parameters.common_params.trusted_ca_url", "spec.tls_parameters.common_params.validation_params.use_volterra_trusted_ca_url", "spec.tls_parameters.crl.#", + "spec.ztna_proxy_configurations", } mdr.RPCConfidentialRequestRegistry["ves.io.schema.virtual_host.API.Create"] = "ves.io.schema.virtual_host.CreateRequest" + mdr.RPCSubscriptionFieldsRegistry["ves.io.schema.virtual_host.API.Replace"] = []svcfw.SubscriptionField{ + { + FieldPath: "ves.io.schema.virtual_host.ReplaceRequest.spec.api_spec.open_api_validation_choice.enable_open_api_validation", + AddonServices: []string{"f5xc-waap-advanced"}, + }, + } + mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.virtual_host.API.Replace"] = []string{ "spec.api_spec", "spec.authentication.cookie_params.auth_hmac.prim_key.blindfold_secret_info_internal", @@ -187,6 +204,7 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { "spec.tls_parameters.common_params.trusted_ca_url", "spec.tls_parameters.common_params.validation_params.use_volterra_trusted_ca_url", "spec.tls_parameters.crl.#", + "spec.ztna_proxy_configurations", } mdr.RPCConfidentialRequestRegistry["ves.io.schema.virtual_host.API.Replace"] = "ves.io.schema.virtual_host.ReplaceRequest" diff --git a/pbgo/extschema/schema/virtual_host/public_crudapi.pb.go b/pbgo/extschema/schema/virtual_host/public_crudapi.pb.go index cda704c18..6b13ec205 100644 --- a/pbgo/extschema/schema/virtual_host/public_crudapi.pb.go +++ b/pbgo/extschema/schema/virtual_host/public_crudapi.pb.go @@ -1072,108 +1072,109 @@ func init() { } var fileDescriptor_1863e06376b45f71 = []byte{ - // 1605 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0x49, - 0x16, 0x4e, 0xd9, 0x8e, 0xb1, 0xcb, 0xf9, 0xd1, 0xd4, 0x42, 0x70, 0xbc, 0xac, 0x65, 0x0c, 0x22, - 0xd9, 0x80, 0xbb, 0xd9, 0x20, 0x24, 0x88, 0x76, 0xd9, 0xb5, 0x93, 0x4e, 0x94, 0x6c, 0x42, 0xa2, - 0xb6, 0x41, 0x2b, 0x0e, 0xdb, 0x6a, 0xb7, 0xcb, 0x4e, 0x4f, 0x6c, 0x77, 0xd3, 0x55, 0x76, 0xb0, - 0x46, 0x91, 0x66, 0xd0, 0x5c, 0x47, 0x1a, 0xcd, 0xdc, 0xd0, 0x1c, 0xe6, 0x32, 0xd2, 0x1c, 0xe6, - 0x0f, 0x18, 0x29, 0x1c, 0x38, 0x0d, 0x88, 0xc3, 0x08, 0x31, 0x17, 0x8e, 0xe0, 0x8c, 0x46, 0x1c, - 0xd1, 0x9c, 0x38, 0x8e, 0xba, 0xaa, 0xdb, 0xd8, 0x8e, 0x71, 0x9c, 0x90, 0x53, 0xba, 0xea, 0xbd, - 0xef, 0xeb, 0xf7, 0x55, 0xbd, 0xf7, 0xf2, 0xdc, 0x50, 0xaa, 0x63, 0x22, 0x1a, 0xa6, 0x44, 0xf4, - 0x4d, 0x5c, 0xd1, 0xa4, 0xba, 0x61, 0xd3, 0x9a, 0x56, 0x56, 0x37, 0x4d, 0x42, 0x25, 0xab, 0x96, - 0x2f, 0x1b, 0xba, 0xaa, 0xdb, 0xb5, 0x82, 0x66, 0x19, 0xa2, 0x65, 0x9b, 0xd4, 0x44, 0x31, 0x0e, - 0x10, 0x39, 0x40, 0x6c, 0x07, 0xc4, 0x52, 0x25, 0x83, 0x6e, 0xd6, 0xf2, 0xa2, 0x6e, 0x56, 0xa4, - 0x92, 0x59, 0x32, 0x25, 0x06, 0xc9, 0xd7, 0x8a, 0x6c, 0xc5, 0x16, 0xec, 0x89, 0x53, 0xc5, 0xce, - 0x96, 0x4c, 0xb3, 0x54, 0xc6, 0x92, 0x66, 0x19, 0x92, 0x56, 0xad, 0x9a, 0x54, 0xa3, 0x86, 0x59, - 0x25, 0xae, 0xf5, 0xaf, 0xae, 0xb5, 0xc5, 0x81, 0x2b, 0x16, 0x6d, 0xb8, 0xc6, 0x58, 0x67, 0xd8, - 0xd8, 0xb6, 0x4d, 0xbb, 0x05, 0xec, 0xb4, 0x99, 0x56, 0x3b, 0xeb, 0x64, 0xa7, 0x91, 0x36, 0x2c, - 0xec, 0x99, 0x92, 0x5d, 0x47, 0x81, 0x09, 0xae, 0xd6, 0xbb, 0xe0, 0x89, 0xee, 0xe3, 0xc2, 0xdb, - 0x6a, 0xa7, 0xc7, 0x54, 0x9f, 0x03, 0x35, 0xf3, 0x9f, 0x60, 0x9d, 0xba, 0x8e, 0x17, 0xfb, 0x38, - 0xb6, 0x85, 0x95, 0xfc, 0x11, 0xc0, 0xd1, 0x79, 0x1b, 0x6b, 0x14, 0x2b, 0xf8, 0x5e, 0x0d, 0x13, - 0x8a, 0xfe, 0x0d, 0x43, 0x15, 0x4c, 0xb5, 0x82, 0x46, 0xb5, 0x28, 0x48, 0x80, 0xe9, 0xc8, 0xec, - 0x79, 0xb1, 0xf3, 0x56, 0xd6, 0xd9, 0x8b, 0x38, 0x6a, 0x0d, 0x53, 0x2d, 0xd7, 0xb0, 0xb0, 0xd2, - 0x02, 0xa1, 0x75, 0x18, 0x20, 0x16, 0xd6, 0xa3, 0x3e, 0x06, 0x9e, 0x11, 0x3f, 0x7c, 0xa5, 0x22, - 0xe7, 0xc8, 0x5a, 0x58, 0x77, 0x38, 0x32, 0xe3, 0x0f, 0x77, 0x46, 0x1c, 0xa8, 0x58, 0xd2, 0x55, - 0xe7, 0xaf, 0xc2, 0x88, 0xe6, 0xc2, 0xcf, 0x6e, 0x06, 0xf9, 0x3b, 0x93, 0xef, 0x00, 0x1c, 0xf3, - 0xc2, 0x25, 0x96, 0x59, 0x25, 0x18, 0xfd, 0x73, 0x5f, 0xbc, 0x89, 0x9e, 0xf1, 0x2e, 0x61, 0xda, - 0x33, 0xd8, 0x71, 0xd2, 0x20, 0x14, 0x57, 0xd4, 0x16, 0x89, 0x9f, 0x91, 0x5c, 0xec, 0x22, 0xc9, - 0x32, 0xaf, 0xfd, 0x54, 0x63, 0x1c, 0xbe, 0xe6, 0x11, 0xae, 0x76, 0xa8, 0x9f, 0xea, 0xa7, 0x7e, - 0x09, 0xd3, 0x43, 0x48, 0x7f, 0x05, 0xe0, 0x98, 0x82, 0xad, 0xb2, 0xa6, 0xb7, 0xae, 0xea, 0x3f, - 0xfb, 0xa4, 0x5f, 0xe8, 0x29, 0xdd, 0x85, 0xf5, 0x90, 0xbf, 0xd1, 0x11, 0xed, 0xa5, 0x7e, 0xd1, - 0xba, 0x24, 0x07, 0x44, 0x8c, 0x24, 0x28, 0xd8, 0x98, 0x98, 0x35, 0x5b, 0xc7, 0x6a, 0x1d, 0xdb, - 0xc4, 0x30, 0xab, 0xec, 0x44, 0xc3, 0x99, 0xc0, 0x9b, 0x5d, 0x00, 0x94, 0x71, 0xcf, 0x7a, 0x87, - 0x1b, 0xdb, 0x25, 0x9e, 0x84, 0xe3, 0x2d, 0x85, 0xfc, 0x76, 0x93, 0x0f, 0x01, 0x84, 0x4b, 0x98, - 0x7a, 0x8a, 0xcf, 0xc2, 0x70, 0x55, 0xab, 0x60, 0x62, 0x69, 0x3a, 0x66, 0x92, 0xc3, 0xca, 0xfb, - 0x0d, 0x84, 0x60, 0xc0, 0x59, 0x30, 0x35, 0x61, 0x85, 0x3d, 0xa3, 0xbb, 0xd0, 0x79, 0x23, 0x23, - 0x53, 0x8b, 0xa6, 0x5d, 0xd1, 0x28, 0x0b, 0x67, 0x6c, 0xf6, 0x1f, 0x07, 0x5c, 0x8d, 0x17, 0xc2, - 0x22, 0x03, 0xcd, 0x9b, 0x05, 0xac, 0x8c, 0xd9, 0x1d, 0x7b, 0xc9, 0x2f, 0x83, 0x30, 0xd2, 0xe6, - 0x89, 0x56, 0x60, 0x44, 0x67, 0xc9, 0xc9, 0xde, 0xe4, 0x1e, 0xea, 0xdf, 0x0f, 0x2e, 0x00, 0x57, - 0x9d, 0x02, 0x39, 0xda, 0x61, 0x47, 0x6b, 0x70, 0xc4, 0xe6, 0x67, 0xc1, 0xc9, 0xfc, 0x07, 0x57, - 0x53, 0x67, 0x76, 0x28, 0x11, 0x17, 0xcf, 0xe8, 0x7a, 0x5d, 0x4b, 0xa0, 0xcf, 0xb5, 0x74, 0x94, - 0xd5, 0xf0, 0x71, 0x94, 0xd5, 0x89, 0x63, 0x29, 0xab, 0xe0, 0x71, 0x94, 0x15, 0x5a, 0x82, 0x41, - 0x42, 0x35, 0x5a, 0x23, 0xd1, 0xef, 0xbe, 0x05, 0x09, 0xff, 0x74, 0x64, 0x76, 0xba, 0x1f, 0x63, - 0x96, 0xf9, 0xf2, 0x20, 0x33, 0xfe, 0xc7, 0x3b, 0x40, 0x71, 0xe1, 0x68, 0x19, 0x9e, 0xb4, 0x71, - 0x11, 0xdb, 0xb6, 0x51, 0x2d, 0xa9, 0xbc, 0x01, 0x93, 0x68, 0x88, 0x31, 0x9e, 0xfd, 0x40, 0x29, - 0x16, 0x99, 0x3e, 0xa1, 0x05, 0xe3, 0xfb, 0x04, 0xdd, 0x81, 0xd1, 0x02, 0x2e, 0x63, 0x8a, 0x0b, - 0x2a, 0xb7, 0xe1, 0x42, 0x8b, 0x31, 0x3c, 0x00, 0xe3, 0x84, 0x8b, 0x56, 0x5c, 0xb0, 0xc7, 0xfb, - 0x3f, 0x38, 0x59, 0x30, 0x88, 0x96, 0x2f, 0xf7, 0x22, 0x86, 0x03, 0x10, 0x9f, 0xf1, 0xe0, 0x5d, - 0xcc, 0x6d, 0x95, 0xbb, 0x12, 0x08, 0x01, 0xc1, 0x97, 0xfc, 0x1e, 0xc0, 0xc8, 0xaa, 0x41, 0x06, - 0xac, 0xd6, 0x73, 0x70, 0xa4, 0xac, 0xe5, 0x71, 0x59, 0x2d, 0x1a, 0x65, 0x8a, 0x6d, 0xb7, 0x6a, - 0x23, 0x6c, 0x6f, 0x91, 0x6d, 0xa1, 0xf3, 0x70, 0xd4, 0xc6, 0x96, 0x69, 0x53, 0xb5, 0x68, 0xe0, - 0x72, 0x81, 0x44, 0xfd, 0x09, 0xff, 0x74, 0x58, 0x19, 0xe1, 0x9b, 0x8b, 0x6c, 0x0f, 0x5d, 0x81, - 0xa7, 0x5c, 0x27, 0x7e, 0x29, 0x9e, 0x6f, 0x80, 0xf9, 0x22, 0x6e, 0xe3, 0x57, 0xc8, 0x11, 0xc9, - 0x47, 0x41, 0x28, 0xf0, 0x38, 0x79, 0xe1, 0x2e, 0x53, 0x5c, 0x41, 0x13, 0x30, 0x48, 0x71, 0x55, - 0xab, 0x52, 0x96, 0x63, 0x61, 0xc5, 0x5d, 0x1d, 0xa1, 0xe5, 0x08, 0xd0, 0x5f, 0x33, 0x0a, 0xbc, - 0xeb, 0x29, 0xce, 0x23, 0x4a, 0xc0, 0x48, 0x01, 0x13, 0xdd, 0x36, 0xd8, 0x3f, 0xf3, 0x68, 0x84, - 0x2b, 0x6d, 0xdb, 0x42, 0x31, 0x18, 0xf2, 0x8e, 0x39, 0x3a, 0x92, 0x00, 0xd3, 0x21, 0xa5, 0xb5, - 0x46, 0x1b, 0x30, 0xc8, 0x0e, 0x85, 0x4b, 0x8a, 0xcc, 0x5e, 0xef, 0x97, 0xab, 0xdd, 0xba, 0xc4, - 0x55, 0x06, 0x95, 0xab, 0xd4, 0x6e, 0x28, 0x2e, 0x0f, 0x52, 0x61, 0xa4, 0x6d, 0x24, 0x72, 0xb3, - 0xe0, 0x5f, 0x87, 0xa2, 0x4d, 0xbf, 0xc7, 0x73, 0xee, 0x76, 0x46, 0x74, 0x03, 0x42, 0x73, 0xbb, - 0x8a, 0x6d, 0xd5, 0x99, 0x61, 0xa2, 0x61, 0x56, 0xb4, 0xb1, 0x2e, 0xfe, 0x3b, 0x06, 0xde, 0xf6, - 0x72, 0x2c, 0xcc, 0xbc, 0x9d, 0x9d, 0x8e, 0xc6, 0x33, 0x7a, 0x1c, 0x8d, 0x67, 0xec, 0xa3, 0x1a, - 0x4f, 0x06, 0x86, 0x4a, 0x98, 0xb2, 0xe6, 0xe1, 0xb6, 0xb0, 0x41, 0x9b, 0x8f, 0x72, 0xa2, 0xc4, - 0x17, 0x68, 0x15, 0x42, 0x37, 0x35, 0x09, 0xa6, 0x6e, 0x7b, 0x38, 0x64, 0xc3, 0x09, 0x73, 0x82, - 0x2c, 0xa6, 0xb1, 0x1b, 0x30, 0xd2, 0x76, 0xa7, 0x4e, 0xb6, 0x6d, 0xe1, 0x86, 0x9b, 0x99, 0xce, - 0x23, 0x3a, 0x05, 0x87, 0xeb, 0x5a, 0xb9, 0xe6, 0x25, 0x25, 0x5f, 0xcc, 0xf9, 0xae, 0x83, 0xd8, - 0x4d, 0x28, 0x74, 0xdf, 0xdb, 0x61, 0xf0, 0x2b, 0x81, 0xd0, 0xb0, 0x10, 0x4c, 0x7e, 0x01, 0xe0, - 0x48, 0x7b, 0x3e, 0xa0, 0x0c, 0x1c, 0x36, 0x28, 0xae, 0x90, 0x28, 0xef, 0xa5, 0x97, 0x0f, 0x93, - 0x48, 0x0a, 0x87, 0xa2, 0x2b, 0x30, 0xc8, 0xe7, 0xec, 0xa8, 0x8f, 0x91, 0x44, 0xbb, 0x48, 0x64, - 0xc7, 0xc8, 0x8e, 0xd5, 0xf5, 0x4b, 0x6e, 0xc1, 0xd1, 0x05, 0xd6, 0xf2, 0x8e, 0x3e, 0x1c, 0x4c, - 0x43, 0xa1, 0xa8, 0x19, 0x65, 0xd5, 0x28, 0xb6, 0x5a, 0x23, 0x2b, 0xdb, 0x90, 0x32, 0xe6, 0xec, - 0x2f, 0x17, 0xbd, 0x96, 0x37, 0xf3, 0x07, 0x80, 0xa7, 0x7b, 0x0e, 0x05, 0x28, 0x06, 0x27, 0x96, - 0xe4, 0x9c, 0xaa, 0x64, 0x37, 0xd4, 0xc5, 0x75, 0x65, 0x2d, 0x9d, 0x53, 0x17, 0xe4, 0xc5, 0xf4, - 0xed, 0xd5, 0x9c, 0x30, 0x84, 0xfe, 0x06, 0x27, 0xbb, 0x6c, 0x8b, 0xeb, 0x8a, 0x3a, 0xaf, 0xc8, - 0xe9, 0x9c, 0x2c, 0x00, 0x14, 0x87, 0xb1, 0x1e, 0x66, 0x45, 0xde, 0x58, 0x4d, 0xcf, 0xcb, 0x82, - 0x0f, 0x4d, 0xc2, 0xd3, 0x5d, 0xf6, 0x6c, 0x2e, 0x9d, 0xbb, 0x9d, 0x15, 0xfc, 0xe8, 0x0c, 0xfc, - 0x4b, 0x97, 0x49, 0x91, 0xd3, 0x0b, 0x42, 0x00, 0x5d, 0x80, 0x89, 0x7d, 0x86, 0x45, 0x59, 0x51, - 0x96, 0x6f, 0x2d, 0xa9, 0xeb, 0x99, 0x15, 0x79, 0x3e, 0x97, 0x15, 0x86, 0x7b, 0x78, 0x65, 0x94, - 0xf5, 0xff, 0xca, 0xb7, 0xb8, 0xb3, 0x7c, 0x6b, 0x5e, 0xce, 0x0a, 0xc1, 0xd9, 0x77, 0x21, 0xe8, - 0x4f, 0x6f, 0x2c, 0xa3, 0x17, 0x00, 0x06, 0xf9, 0xa4, 0x82, 0x06, 0x9f, 0x66, 0x62, 0x33, 0x83, - 0xb8, 0xba, 0x63, 0xde, 0xbd, 0xe6, 0x93, 0x68, 0xaa, 0x78, 0xed, 0xbe, 0x9e, 0x22, 0x58, 0xaf, - 0xd9, 0xb8, 0x82, 0xc9, 0x66, 0x2a, 0xaf, 0x11, 0x43, 0x4f, 0xd5, 0x08, 0xb6, 0x2f, 0xd7, 0x31, - 0x49, 0x19, 0x66, 0xca, 0xb2, 0xcd, 0xfb, 0x8d, 0xd4, 0xb6, 0x6d, 0x50, 0xfc, 0xe0, 0xd7, 0xdf, - 0xbe, 0xf1, 0xcd, 0x25, 0xaf, 0xb9, 0xbf, 0x23, 0xa5, 0xd6, 0x45, 0x13, 0xe9, 0x53, 0xaf, 0xf4, - 0xc5, 0xd6, 0xe6, 0x4e, 0xc7, 0x2f, 0x20, 0x32, 0x07, 0x66, 0xd0, 0x33, 0x00, 0xfd, 0x4b, 0x98, - 0xa2, 0x8b, 0x07, 0xce, 0x81, 0x5c, 0xce, 0xd4, 0x80, 0xf3, 0x62, 0xd2, 0x7e, 0xfa, 0x93, 0x0f, - 0x34, 0x9f, 0x44, 0xa5, 0xde, 0x7a, 0x2a, 0x66, 0xd5, 0xa0, 0x66, 0x97, 0x24, 0x1b, 0x6b, 0x05, - 0xa6, 0xe8, 0x1a, 0xba, 0xda, 0x4b, 0xd1, 0x87, 0x84, 0x70, 0xcb, 0x0e, 0xfa, 0x19, 0xc0, 0x80, - 0x53, 0x59, 0x68, 0xea, 0xe0, 0xda, 0xe3, 0x72, 0xa6, 0x07, 0x2d, 0xd2, 0xe4, 0xd6, 0xc7, 0xe8, - 0x11, 0xd1, 0xe5, 0xc3, 0xe8, 0x41, 0xbf, 0x03, 0x78, 0xc2, 0x9d, 0x63, 0xd1, 0x21, 0x86, 0xdd, - 0xd8, 0xa5, 0x81, 0x7c, 0x5d, 0x45, 0x9f, 0x83, 0xa3, 0xa5, 0xdb, 0x4a, 0x4c, 0x3e, 0x52, 0xba, - 0x75, 0xb9, 0xec, 0x38, 0xe9, 0xf7, 0x08, 0xc0, 0x20, 0x6f, 0x5f, 0xfd, 0x6b, 0xaa, 0xa3, 0xc5, - 0xc5, 0x26, 0x44, 0xfe, 0xdd, 0x42, 0xf4, 0xbe, 0x5b, 0x88, 0x72, 0xc5, 0xa2, 0x8d, 0xa4, 0x79, - 0x34, 0x41, 0xd7, 0x67, 0x8e, 0x92, 0x6d, 0x73, 0x60, 0x26, 0xf6, 0xff, 0xc7, 0xbb, 0xc0, 0xf7, - 0x62, 0x17, 0x9c, 0xeb, 0x13, 0x3a, 0xff, 0xff, 0xf5, 0x72, 0x17, 0x80, 0xe6, 0x2e, 0x98, 0x1a, - 0xf0, 0xdf, 0xdd, 0x83, 0x5f, 0xa2, 0x3e, 0x01, 0x64, 0xbe, 0x06, 0xcf, 0x6e, 0x0e, 0xcf, 0x2b, - 0xb7, 0x17, 0x56, 0x9f, 0xbf, 0x8e, 0x0f, 0xbd, 0x7c, 0x1d, 0x1f, 0x7a, 0xfb, 0x3a, 0x0e, 0x3e, - 0x6b, 0xc6, 0xc1, 0x0f, 0xcd, 0x38, 0x78, 0xda, 0x8c, 0x83, 0xe7, 0xcd, 0x38, 0x78, 0xd5, 0x8c, - 0x83, 0x37, 0xcd, 0xf8, 0xd0, 0xdb, 0x66, 0x1c, 0x7c, 0xb5, 0x17, 0x1f, 0x7a, 0xbc, 0x17, 0x07, - 0xcf, 0xf7, 0xe2, 0x43, 0x2f, 0xf7, 0xe2, 0x43, 0x77, 0x37, 0x4a, 0xa6, 0xb5, 0x55, 0x12, 0xeb, - 0xa6, 0x33, 0x4a, 0xda, 0x9a, 0x58, 0x23, 0x12, 0x7b, 0x70, 0x7e, 0x4e, 0x39, 0x27, 0x51, 0x37, - 0x0a, 0xd8, 0x4e, 0x79, 0x66, 0xc9, 0xca, 0x97, 0x4c, 0x09, 0xdf, 0xa7, 0xee, 0x17, 0x93, 0x1e, - 0x1f, 0x4e, 0xf2, 0x41, 0x76, 0xea, 0x57, 0xff, 0x0c, 0x00, 0x00, 0xff, 0xff, 0x0d, 0xde, 0xaa, - 0x8b, 0xd7, 0x12, 0x00, 0x00, + // 1620 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcf, 0x6f, 0x13, 0x47, + 0x14, 0xce, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb1, 0x4c, 0x21, 0x38, 0x2e, 0xb5, 0x8c, 0x41, 0x24, + 0x0d, 0x78, 0x4d, 0x83, 0x90, 0x20, 0x6a, 0x69, 0xed, 0x64, 0x13, 0x25, 0x24, 0x24, 0x5a, 0x1b, + 0x54, 0x71, 0xe8, 0x6a, 0xbd, 0x1e, 0x3b, 0x5b, 0x6c, 0xef, 0x76, 0x67, 0xec, 0x60, 0x55, 0x91, + 0x2a, 0xc4, 0xb1, 0xa8, 0x55, 0xb9, 0x54, 0xa8, 0x52, 0x7b, 0xa9, 0xd4, 0x43, 0xff, 0x80, 0x4a, + 0xe9, 0x81, 0x5b, 0x11, 0x87, 0x0a, 0xb5, 0x17, 0xa4, 0x5e, 0xc0, 0xe9, 0x81, 0x43, 0x0f, 0xb4, + 0xa7, 0x1e, 0xab, 0x9d, 0xd9, 0x35, 0xb6, 0x63, 0x1c, 0x27, 0x0d, 0xa7, 0xec, 0xcc, 0x7b, 0xdf, + 0xb7, 0xef, 0x9b, 0x79, 0xef, 0xe5, 0x79, 0x61, 0xb2, 0x86, 0x89, 0xa8, 0x1b, 0x49, 0xa2, 0xad, + 0xe3, 0xb2, 0x9a, 0xac, 0xe9, 0x16, 0xad, 0xaa, 0x25, 0x65, 0xdd, 0x20, 0x34, 0x69, 0x56, 0x73, + 0x25, 0x5d, 0x53, 0x34, 0xab, 0x9a, 0x57, 0x4d, 0x5d, 0x34, 0x2d, 0x83, 0x1a, 0x28, 0xc2, 0x01, + 0x22, 0x07, 0x88, 0xad, 0x80, 0x48, 0xa2, 0xa8, 0xd3, 0xf5, 0x6a, 0x4e, 0xd4, 0x8c, 0x72, 0xb2, + 0x68, 0x14, 0x8d, 0x24, 0x83, 0xe4, 0xaa, 0x05, 0xb6, 0x62, 0x0b, 0xf6, 0xc4, 0xa9, 0x22, 0xc7, + 0x8b, 0x86, 0x51, 0x2c, 0xe1, 0xa4, 0x6a, 0xea, 0x49, 0xb5, 0x52, 0x31, 0xa8, 0x4a, 0x75, 0xa3, + 0x42, 0x1c, 0xeb, 0x9b, 0x8e, 0xb5, 0xc9, 0x81, 0xcb, 0x26, 0xad, 0x3b, 0xc6, 0x48, 0x7b, 0xd8, + 0xd8, 0xb2, 0x0c, 0xab, 0x09, 0x6c, 0xb7, 0x19, 0x66, 0x2b, 0xeb, 0x78, 0xbb, 0x91, 0xd6, 0x4d, + 0xec, 0x9a, 0xe2, 0x1d, 0x47, 0x81, 0x09, 0xae, 0xd4, 0x3a, 0xe0, 0xb1, 0xce, 0xe3, 0xc2, 0x1b, + 0x4a, 0xbb, 0xc7, 0x44, 0x8f, 0x03, 0x35, 0x72, 0x1f, 0x63, 0x8d, 0x3a, 0x8e, 0xa7, 0x7b, 0x38, + 0xb6, 0x84, 0x15, 0xff, 0x11, 0xc0, 0xe1, 0x59, 0x0b, 0xab, 0x14, 0xcb, 0xf8, 0x93, 0x2a, 0x26, + 0x14, 0xbd, 0x0f, 0x03, 0x65, 0x4c, 0xd5, 0xbc, 0x4a, 0xd5, 0x30, 0x88, 0x81, 0xc9, 0xd0, 0xf4, + 0x49, 0xb1, 0xfd, 0x56, 0x56, 0xd9, 0x8b, 0x38, 0x6a, 0x05, 0x53, 0x35, 0x5b, 0x37, 0xb1, 0xdc, + 0x04, 0xa1, 0x55, 0xe8, 0x23, 0x26, 0xd6, 0xc2, 0x1e, 0x06, 0x9e, 0x12, 0x5f, 0x7d, 0xa5, 0x22, + 0xe7, 0xc8, 0x98, 0x58, 0xb3, 0x39, 0xd2, 0xa3, 0xf7, 0x37, 0x87, 0x6c, 0xa8, 0x58, 0xd4, 0x14, + 0xfb, 0xaf, 0xcc, 0x88, 0x66, 0x82, 0x8f, 0x2e, 0xfb, 0xf9, 0x3b, 0xe3, 0xff, 0x02, 0x38, 0xe2, + 0x86, 0x4b, 0x4c, 0xa3, 0x42, 0x30, 0x7a, 0x77, 0x47, 0xbc, 0xb1, 0xae, 0xf1, 0x2e, 0x60, 0xda, + 0x35, 0xd8, 0x51, 0x52, 0x27, 0x14, 0x97, 0x95, 0x26, 0x89, 0x97, 0x91, 0x9c, 0xee, 0x20, 0xc9, + 0x30, 0xaf, 0x9d, 0x54, 0x23, 0x1c, 0xbe, 0xe2, 0x12, 0x2e, 0xb7, 0xa9, 0x9f, 0xe8, 0xa5, 0x7e, + 0x01, 0xd3, 0x3d, 0x48, 0x7f, 0x0a, 0xe0, 0x88, 0x8c, 0xcd, 0x92, 0xaa, 0x35, 0xaf, 0xea, 0x83, + 0x1d, 0xd2, 0x4f, 0x75, 0x95, 0xee, 0xc0, 0xba, 0xc8, 0x5f, 0x6b, 0x8b, 0xf6, 0x4c, 0xaf, 0x68, + 0x1d, 0x92, 0x5d, 0x22, 0x46, 0x49, 0x28, 0x58, 0x98, 0x18, 0x55, 0x4b, 0xc3, 0x4a, 0x0d, 0x5b, + 0x44, 0x37, 0x2a, 0xec, 0x44, 0x83, 0x69, 0xdf, 0xf3, 0x2d, 0x00, 0xe4, 0x51, 0xd7, 0x7a, 0x9d, + 0x1b, 0x5b, 0x25, 0x1e, 0x86, 0xa3, 0x4d, 0x85, 0xfc, 0x76, 0xe3, 0xf7, 0x01, 0x84, 0x0b, 0x98, + 0xba, 0x8a, 0x8f, 0xc3, 0x60, 0x45, 0x2d, 0x63, 0x62, 0xaa, 0x1a, 0x66, 0x92, 0x83, 0xf2, 0xcb, + 0x0d, 0x84, 0xa0, 0xcf, 0x5e, 0x30, 0x35, 0x41, 0x99, 0x3d, 0xa3, 0x1b, 0xd0, 0x7e, 0x23, 0x23, + 0x53, 0x0a, 0x86, 0x55, 0x56, 0x29, 0x0b, 0x67, 0x64, 0xfa, 0x9d, 0x5d, 0xae, 0xc6, 0x0d, 0x61, + 0x9e, 0x81, 0x66, 0x8d, 0x3c, 0x96, 0x47, 0xac, 0xb6, 0xbd, 0xf8, 0x5d, 0x3f, 0x0c, 0xb5, 0x78, + 0xa2, 0x25, 0x18, 0xd2, 0x58, 0x72, 0xb2, 0x37, 0x39, 0x87, 0xfa, 0xf6, 0xee, 0x05, 0xe0, 0xa8, + 0x93, 0x21, 0x47, 0xdb, 0xec, 0x68, 0x05, 0x0e, 0x59, 0xfc, 0x2c, 0x38, 0x99, 0x77, 0xf7, 0x6a, + 0x6a, 0xcf, 0x0e, 0x39, 0xe4, 0xe0, 0x19, 0x5d, 0xb7, 0x6b, 0xf1, 0xf5, 0xb8, 0x96, 0xb6, 0xb2, + 0x1a, 0x3c, 0x88, 0xb2, 0x3a, 0x74, 0x20, 0x65, 0xe5, 0x3f, 0x88, 0xb2, 0x42, 0x0b, 0xd0, 0x4f, + 0xa8, 0x4a, 0xab, 0x24, 0xfc, 0xdd, 0x37, 0x20, 0xe6, 0x9d, 0x0c, 0x4d, 0x4f, 0xf6, 0x62, 0xcc, + 0x30, 0x5f, 0x1e, 0x64, 0xda, 0xfb, 0x60, 0x13, 0xc8, 0x0e, 0x1c, 0x2d, 0xc2, 0xc3, 0x16, 0x2e, + 0x60, 0xcb, 0xd2, 0x2b, 0x45, 0x85, 0x37, 0x60, 0x12, 0x0e, 0x30, 0xc6, 0xe3, 0xaf, 0x28, 0xc5, + 0x02, 0xd3, 0x27, 0x34, 0x61, 0x7c, 0x9f, 0xa0, 0xeb, 0x30, 0x9c, 0xc7, 0x25, 0x4c, 0x71, 0x5e, + 0xe1, 0x36, 0x9c, 0x6f, 0x32, 0x06, 0xfb, 0x60, 0x1c, 0x73, 0xd0, 0xb2, 0x03, 0x76, 0x79, 0x3f, + 0x84, 0xe3, 0x79, 0x9d, 0xa8, 0xb9, 0x52, 0x37, 0x62, 0xd8, 0x07, 0xf1, 0x31, 0x17, 0xde, 0xc1, + 0xdc, 0x52, 0xb9, 0x4b, 0xbe, 0x00, 0x10, 0x3c, 0xf1, 0xef, 0x01, 0x0c, 0x2d, 0xeb, 0xa4, 0xcf, + 0x6a, 0x3d, 0x01, 0x87, 0x4a, 0x6a, 0x0e, 0x97, 0x94, 0x82, 0x5e, 0xa2, 0xd8, 0x72, 0xaa, 0x36, + 0xc4, 0xf6, 0xe6, 0xd9, 0x16, 0x3a, 0x09, 0x87, 0x2d, 0x6c, 0x1a, 0x16, 0x55, 0x0a, 0x3a, 0x2e, + 0xe5, 0x49, 0xd8, 0x1b, 0xf3, 0x4e, 0x06, 0xe5, 0x21, 0xbe, 0x39, 0xcf, 0xf6, 0xd0, 0x39, 0x78, + 0xc4, 0x71, 0xe2, 0x97, 0xe2, 0xfa, 0xfa, 0x98, 0x2f, 0xe2, 0x36, 0x7e, 0x85, 0x1c, 0x11, 0xff, + 0xd9, 0x0f, 0x05, 0x1e, 0x27, 0x2f, 0xdc, 0x45, 0x8a, 0xcb, 0x68, 0x0c, 0xfa, 0x29, 0xae, 0xa8, + 0x15, 0xca, 0x72, 0x2c, 0x28, 0x3b, 0xab, 0x7d, 0xb4, 0x1c, 0x01, 0x7a, 0xab, 0x7a, 0x9e, 0x77, + 0x3d, 0xd9, 0x7e, 0x44, 0x31, 0x18, 0xca, 0x63, 0xa2, 0x59, 0x3a, 0xfb, 0x67, 0x1e, 0x0e, 0x71, + 0xa5, 0x2d, 0x5b, 0x28, 0x02, 0x03, 0xee, 0x31, 0x87, 0x87, 0x62, 0x60, 0x32, 0x20, 0x37, 0xd7, + 0x68, 0x0d, 0xfa, 0xd9, 0xa1, 0x70, 0x49, 0xa1, 0xe9, 0x8b, 0xbd, 0x72, 0xb5, 0x53, 0x97, 0xb8, + 0xcc, 0xa0, 0x52, 0x85, 0x5a, 0x75, 0xd9, 0xe1, 0x41, 0x0a, 0x0c, 0xb5, 0x8c, 0x44, 0x4e, 0x16, + 0xbc, 0xb7, 0x27, 0xda, 0xd4, 0x4b, 0x3c, 0xe7, 0x6e, 0x65, 0x44, 0x97, 0x20, 0x34, 0x36, 0x2a, + 0xd8, 0x52, 0xec, 0x19, 0x26, 0x1c, 0x64, 0x45, 0x1b, 0xe9, 0xe0, 0xbf, 0xae, 0xe3, 0x0d, 0x37, + 0xc7, 0x82, 0xcc, 0xdb, 0xde, 0x69, 0x6b, 0x3c, 0xc3, 0x07, 0xd1, 0x78, 0x46, 0xfe, 0x57, 0xe3, + 0x49, 0xc3, 0x40, 0x11, 0x53, 0xd6, 0x3c, 0x9c, 0x16, 0xd6, 0x6f, 0xf3, 0x91, 0x0f, 0x15, 0xf9, + 0x02, 0x2d, 0x43, 0xe8, 0xa4, 0x26, 0xc1, 0xd4, 0x69, 0x0f, 0x7b, 0x6c, 0x38, 0x41, 0x4e, 0x90, + 0xc1, 0x34, 0x72, 0x09, 0x86, 0x5a, 0xee, 0xd4, 0xce, 0xb6, 0x9b, 0xb8, 0xee, 0x64, 0xa6, 0xfd, + 0x88, 0x8e, 0xc0, 0xc1, 0x9a, 0x5a, 0xaa, 0xba, 0x49, 0xc9, 0x17, 0x33, 0x9e, 0x8b, 0x20, 0x72, + 0x19, 0x0a, 0x9d, 0xf7, 0xb6, 0x17, 0xfc, 0x92, 0x2f, 0x30, 0x28, 0xf8, 0xe3, 0x77, 0x00, 0x1c, + 0x6a, 0xcd, 0x07, 0x94, 0x86, 0x83, 0x3a, 0xc5, 0x65, 0x12, 0xe6, 0xbd, 0xf4, 0xec, 0x5e, 0x12, + 0x49, 0xe6, 0x50, 0x74, 0x0e, 0xfa, 0xf9, 0x9c, 0x1d, 0xf6, 0x30, 0x92, 0x70, 0x07, 0x89, 0x64, + 0x1b, 0xd9, 0xb1, 0x3a, 0x7e, 0xf1, 0x9b, 0x70, 0x78, 0x8e, 0xb5, 0xbc, 0xfd, 0x0f, 0x07, 0x93, + 0x50, 0x28, 0xa8, 0x7a, 0x49, 0xd1, 0x0b, 0xcd, 0xd6, 0xc8, 0xca, 0x36, 0x20, 0x8f, 0xd8, 0xfb, + 0x8b, 0x05, 0xb7, 0xe5, 0x4d, 0xfd, 0x03, 0xe0, 0xd1, 0xae, 0x43, 0x01, 0x8a, 0xc0, 0xb1, 0x05, + 0x29, 0xab, 0xc8, 0x99, 0x35, 0x65, 0x7e, 0x55, 0x5e, 0x49, 0x65, 0x95, 0x39, 0x69, 0x3e, 0x75, + 0x6d, 0x39, 0x2b, 0x0c, 0xa0, 0xb7, 0xe0, 0x78, 0x87, 0x6d, 0x7e, 0x55, 0x56, 0x66, 0x65, 0x29, + 0x95, 0x95, 0x04, 0x80, 0xa2, 0x30, 0xd2, 0xc5, 0x2c, 0x4b, 0x6b, 0xcb, 0xa9, 0x59, 0x49, 0xf0, + 0xa0, 0x71, 0x78, 0xb4, 0xc3, 0x9e, 0xc9, 0xa6, 0xb2, 0xd7, 0x32, 0x82, 0x17, 0x1d, 0x83, 0x6f, + 0x74, 0x98, 0x64, 0x29, 0x35, 0x27, 0xf8, 0xd0, 0x29, 0x18, 0xdb, 0x61, 0x98, 0x97, 0x64, 0x79, + 0xf1, 0xea, 0x82, 0xb2, 0x9a, 0x5e, 0x92, 0x66, 0xb3, 0x19, 0x61, 0xb0, 0x8b, 0x57, 0x5a, 0x5e, + 0xbd, 0x22, 0x5d, 0xe5, 0xce, 0xd2, 0xd5, 0x59, 0x29, 0x23, 0xf8, 0xa7, 0xbf, 0x86, 0xd0, 0x9b, + 0x5a, 0x5b, 0x44, 0x7f, 0x03, 0xe8, 0xe7, 0x93, 0x0a, 0xea, 0x7f, 0x9a, 0x89, 0x4c, 0xf5, 0xe3, + 0xea, 0x8c, 0x79, 0x5f, 0x80, 0xc6, 0x2f, 0xe1, 0x2b, 0x85, 0x0b, 0xb7, 0xb4, 0x04, 0xc1, 0x5a, + 0xd5, 0xc2, 0x65, 0x4c, 0xd6, 0x13, 0x39, 0x95, 0xe8, 0x5a, 0xa2, 0x4a, 0xb0, 0x75, 0xb6, 0xd3, + 0x44, 0xa8, 0x5a, 0xc9, 0xab, 0x56, 0x9e, 0x5b, 0x6b, 0x98, 0x24, 0x74, 0x23, 0x61, 0x5a, 0xc6, + 0xad, 0x7a, 0x62, 0xc3, 0xd2, 0x29, 0xbe, 0xfd, 0xfb, 0x9f, 0xf7, 0x3c, 0x33, 0xf1, 0x0b, 0xce, + 0xcf, 0xcc, 0x64, 0x33, 0x0f, 0x48, 0xf2, 0x53, 0xb7, 0x33, 0x88, 0xcd, 0xcd, 0xcd, 0xb6, 0x1f, + 0x48, 0x64, 0x06, 0x4c, 0xa1, 0xbf, 0x00, 0xf4, 0x2e, 0x60, 0x8a, 0x4e, 0xef, 0x3a, 0x26, 0x72, + 0xb5, 0x13, 0x7d, 0x8e, 0x93, 0xf1, 0x7b, 0xe0, 0xe1, 0x4f, 0x1e, 0x5b, 0xee, 0x5a, 0x77, 0xb9, + 0x65, 0xa3, 0xa2, 0x53, 0xa3, 0x87, 0x62, 0xd7, 0xa1, 0x4d, 0xb4, 0x85, 0xd5, 0x3c, 0xd3, 0x7c, + 0x01, 0x9d, 0xef, 0xa6, 0xf9, 0x55, 0x52, 0xb9, 0x65, 0x13, 0x3d, 0x07, 0xd0, 0x67, 0x97, 0x26, + 0x9a, 0xd8, 0xbd, 0x78, 0xb9, 0xe0, 0xc9, 0x7e, 0xab, 0x3c, 0xfe, 0xf9, 0xeb, 0x55, 0x2c, 0xa2, + 0xb3, 0x7b, 0x51, 0x8c, 0xee, 0x78, 0xe0, 0x21, 0x67, 0x54, 0x46, 0x7b, 0x98, 0xa7, 0x23, 0x67, + 0xfa, 0xf2, 0x75, 0x34, 0x7f, 0xfb, 0x5a, 0x12, 0x7a, 0x29, 0x22, 0xed, 0x2b, 0xa1, 0x3b, 0x5c, + 0x36, 0xed, 0x04, 0xff, 0x03, 0x40, 0x3f, 0xef, 0x9f, 0xbd, 0x8b, 0xba, 0xad, 0xc7, 0x46, 0xc6, + 0x44, 0xfe, 0xe1, 0x44, 0x74, 0x3f, 0x9c, 0x88, 0x52, 0xd9, 0xa4, 0xf5, 0xf8, 0xdd, 0xd7, 0xa2, + 0xf7, 0xe2, 0xd4, 0x7e, 0x92, 0x79, 0x06, 0x4c, 0x45, 0x3e, 0x7a, 0xb0, 0x05, 0x3c, 0xbf, 0x6d, + 0x81, 0x13, 0x3d, 0x94, 0xf1, 0xff, 0xaf, 0x4f, 0xb6, 0x00, 0x68, 0x6c, 0x81, 0x89, 0x3e, 0xff, + 0x1d, 0xdf, 0xfe, 0x35, 0xec, 0x11, 0x40, 0xfa, 0x2b, 0xf0, 0xe8, 0xf2, 0xe0, 0xac, 0x7c, 0x6d, + 0x6e, 0xf9, 0xf1, 0xb3, 0xe8, 0xc0, 0x93, 0x67, 0xd1, 0x81, 0x17, 0xcf, 0xa2, 0xe0, 0xb3, 0x46, + 0x14, 0xfc, 0xd0, 0x88, 0x82, 0x87, 0x8d, 0x28, 0x78, 0xdc, 0x88, 0x82, 0xa7, 0x8d, 0x28, 0x78, + 0xde, 0x88, 0x0e, 0xbc, 0x68, 0x44, 0xc1, 0x97, 0xdb, 0xd1, 0x81, 0x07, 0xdb, 0x51, 0xf0, 0x78, + 0x3b, 0x3a, 0xf0, 0x64, 0x3b, 0x3a, 0x70, 0x63, 0xad, 0x68, 0x98, 0x37, 0x8b, 0x62, 0xcd, 0xb0, + 0x47, 0x5d, 0x4b, 0x15, 0xab, 0x24, 0xc9, 0x1e, 0xec, 0x9f, 0x7b, 0xf6, 0x49, 0xd4, 0xf4, 0x3c, + 0xb6, 0x12, 0xae, 0x39, 0x69, 0xe6, 0x8a, 0x46, 0x12, 0xdf, 0xa2, 0xce, 0x17, 0x9d, 0x2e, 0x1f, + 0x76, 0x72, 0x7e, 0x76, 0x29, 0xe7, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x7a, 0x4e, 0xb4, 0xea, + 0x77, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/virtual_host/public_crudapi.vesapi.go b/pbgo/extschema/schema/virtual_host/public_crudapi.vesapi.go index cde735bc2..b222063ed 100644 --- a/pbgo/extschema/schema/virtual_host/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/virtual_host/public_crudapi.vesapi.go @@ -3030,23 +3030,36 @@ var APISwaggerJSON string = `{ }, "schemaHeaderTransformationType": { "type": "object", - "description": "x-displayName: \"Header Transformation\"\nHeader Transformation options for HTTP/1.1 request/response headers", + "description": "Header Transformation options for HTTP/1.1 request/response headers", "title": "HeaderTransformationType", + "x-displayname": "Header Transformation", + "x-ves-displayorder": "1", + "x-ves-oneof-field-header_transformation_choice": "[\"default_header_transformation\",\"legacy_header_transformation\",\"preserve_case_header_transformation\",\"proper_case_header_transformation\"]", + "x-ves-proto-message": "ves.io.schema.HeaderTransformationType", "properties": { "default_header_transformation": { - "description": "x-displayName: \"Default\"\nNormalize the headers to lower case", + "description": "Exclusive with [legacy_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Normalize the headers to lower case", "title": "Default header transformation", - "$ref": "#/definitions/ioschemaEmpty" + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default" + }, + "legacy_header_transformation": { + "description": "Exclusive with [default_header_transformation preserve_case_header_transformation proper_case_header_transformation]\n Use old header transformation if configured earlier", + "title": "Legacy header transformations", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Legacy" }, "preserve_case_header_transformation": { - "description": "x-displayName: \"Preserve Case\"\nPreserves the original case of headers without any modifications.", + "description": "Exclusive with [default_header_transformation legacy_header_transformation proper_case_header_transformation]\n Preserves the original case of headers without any modifications.", "title": "Preserve case header transformation", - "$ref": "#/definitions/ioschemaEmpty" + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Preserve Case" }, "proper_case_header_transformation": { - "description": "x-displayName: \"Proper Case\"\nNormalize the headers to proper case words. The fist character and any character\nfollowing a special character will be capitalized if it’s an alpha character.\nFor example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", + "description": "Exclusive with [default_header_transformation legacy_header_transformation preserve_case_header_transformation]\n Normalize the headers to proper case words. The fist character and any character\n following a special character will be capitalized if it’s an alpha character.\n For example, “content-type” becomes “Content-Type”, and “foo$b#$are” becomes “Foo$B#$Are”", "title": "Proper case header transformation", - "$ref": "#/definitions/ioschemaEmpty" + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Proper Case" } } }, @@ -3110,10 +3123,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3170,10 +3187,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3232,10 +3253,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -3781,7 +3806,22 @@ var APISwaggerJSON string = `{ "description": "Reference to Root CA Certificate", "title": "Root CA Certificate", "x-displayname": "Root CA Certificate Reference", - "x-ves-proto-message": "ves.io.schema.TrustedCAList" + "x-ves-proto-message": "ves.io.schema.TrustedCAList", + "properties": { + "trusted_ca_list": { + "type": "array", + "description": " Reference to Root CA Certificate\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "Root CA Certificate", + "maxItems": 1, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Root CA Certificate Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + } + } }, "schemaVaultSecretInfoType": { "type": "object", @@ -4124,6 +4164,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable path normalization" }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, "idle_timeout": { "type": "integer", "description": " Idle timeout is the amount of time that the loadbalancer will allow a stream to exist with\n no upstream or downstream activity.\n\n Idle timeout and Proxy Type:\n\n HTTP_PROXY, HTTPS_PROXY:\n Idle timer is started when the first byte is received on the connection.\n Each time an encode/decode event for headers or data is processed for the stream,\n the timer will be reset.\n If the timeout fires, the stream is terminated with a 504 (Gateway Timeout) error code if\n no upstream response header has been received, otherwise a stream reset occurs.\n The default idle timeout is 30 seconds\n\n TCP PROXY, TCP_PROXY_WITH_SNI, SMA_PROXY:\n The idle timeout is defined as the period in which there are no bytes sent or received on\n either the upstream or downstream connection.\n The default idle timeout is 1 hour.\n\n UDP PROXY:\n The idle timeout for sessions. Idle timeout is defined as the period in which there are no\n datagrams sent or received on the session.\n The default if not specified is 1 minute.\n\nExample: - \"2000\"-", @@ -4485,6 +4530,11 @@ var APISwaggerJSON string = `{ "x-displayname": "Host Name", "x-ves-example": "ves-io-cf8684b9-a18f-4843-a24f-1f9ee8ea2776.ac.vh.ves.io" }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, "idle_timeout": { "type": "integer", "description": " Idle timeout is the amount of time that the loadbalancer will allow a stream to exist with\n no upstream or downstream activity.\n\n Idle timeout and Proxy Type:\n\n HTTP_PROXY, HTTPS_PROXY:\n Idle timer is started when the first byte is received on the connection.\n Each time an encode/decode event for headers or data is processed for the stream,\n the timer will be reset.\n If the timeout fires, the stream is terminated with a 504 (Gateway Timeout) error code if\n no upstream response header has been received, otherwise a stream reset occurs.\n The default idle timeout is 30 seconds\n\n TCP PROXY, TCP_PROXY_WITH_SNI, SMA_PROXY:\n The idle timeout is defined as the period in which there are no bytes sent or received on\n either the upstream or downstream connection.\n The default idle timeout is 1 hour.\n\n UDP PROXY:\n The idle timeout for sessions. Idle timeout is defined as the period in which there are no\n datagrams sent or received on the session.\n The default if not specified is 1 minute.\n\nExample: - \"2000\"-", @@ -4690,6 +4740,21 @@ var APISwaggerJSON string = `{ } } }, + "schemavirtual_hostHttp1ProtocolOptions": { + "type": "object", + "description": "HTTP/1.1 Protocol options for downstream connections", + "title": "Http1ProtocolOptions", + "x-displayname": "HTTP/1.1 Protocol Options", + "x-ves-proto-message": "ves.io.schema.virtual_host.Http1ProtocolOptions", + "properties": { + "header_transformation": { + "description": " Two mutually exclusive types of header key formatters are supported: Stateless\n (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless\n formatter is selected, it applies to response headers sent to the client and when a\n Stateful formatter is selected, it applies to the upstream request headers.\n It's essential to ensure that the same formatter type (either stateless or stateful)\n is applied on origin pool. If different formatter types are applied, only\n the stateful formatter will take effect, and the stateless formatter will be disregarded.", + "title": "Header transformation", + "$ref": "#/definitions/schemaHeaderTransformationType", + "x-displayname": "Header Transformation Configuration" + } + } + }, "schemavirtual_hostReplaceSpecType": { "type": "object", "description": "Replace a given virtual host in a given namespace.", @@ -4836,6 +4901,11 @@ var APISwaggerJSON string = `{ "$ref": "#/definitions/ioschemaEmpty", "x-displayname": "Enable path normalization" }, + "http_protocol_options": { + "description": " HTTP protocol configuration options for downstream connections.", + "$ref": "#/definitions/virtual_hostHttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration" + }, "idle_timeout": { "type": "integer", "description": " Idle timeout is the amount of time that the loadbalancer will allow a stream to exist with\n no upstream or downstream activity.\n\n Idle timeout and Proxy Type:\n\n HTTP_PROXY, HTTPS_PROXY:\n Idle timer is started when the first byte is received on the connection.\n Each time an encode/decode event for headers or data is processed for the stream,\n the timer will be reset.\n If the timeout fires, the stream is terminated with a 504 (Gateway Timeout) error code if\n no upstream response header has been received, otherwise a stream reset occurs.\n The default idle timeout is 30 seconds\n\n TCP PROXY, TCP_PROXY_WITH_SNI, SMA_PROXY:\n The idle timeout is defined as the period in which there are no bytes sent or received on\n either the upstream or downstream connection.\n The default idle timeout is 1 hour.\n\n UDP PROXY:\n The idle timeout for sessions. Idle timeout is defined as the period in which there are no\n datagrams sent or received on the session.\n The default if not specified is 1 minute.\n\nExample: - \"2000\"-", @@ -5618,6 +5688,35 @@ var APISwaggerJSON string = `{ ], "default": "GET_RSP_FORMAT_DEFAULT" }, + "virtual_hostHttpProtocolOptions": { + "type": "object", + "description": "HTTP protocol configuration options for downstream connections", + "title": "HttpProtocolOptions", + "x-displayname": "HTTP Protocol Configuration Options", + "x-ves-displayorder": "1", + "x-ves-oneof-field-http_protocol_choice": "[\"http_protocol_enable_v1_only\",\"http_protocol_enable_v1_v2\",\"http_protocol_enable_v2_only\"]", + "x-ves-proto-message": "ves.io.schema.virtual_host.HttpProtocolOptions", + "properties": { + "http_protocol_enable_v1_only": { + "description": "Exclusive with [http_protocol_enable_v1_v2 http_protocol_enable_v2_only]\n Enable HTTP/1.1 for downstream connections", + "title": "http_protocol_enable_v1_only", + "$ref": "#/definitions/schemavirtual_hostHttp1ProtocolOptions", + "x-displayname": "HTTP/1.1" + }, + "http_protocol_enable_v1_v2": { + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v2_only]\n Enable both HTTP/1.1 and HTTP/2 for downstream connections", + "title": "http_protocol_enable_v1_v2", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "HTTP/1.1 and HTTP/2" + }, + "http_protocol_enable_v2_only": { + "description": "Exclusive with [http_protocol_enable_v1_only http_protocol_enable_v1_v2]\n Enable HTTP/2 for downstream connections", + "title": "http_protocol_enable_v2_only", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "HTTP/2" + } + } + }, "virtual_hostJavascriptChallengeType": { "type": "object", "description": "\nEnables loadbalancer to perform client browser compatibility test by redirecting to a page\nwith Javascript.\n\nWith this feature enabled, only clients that are capable of executing Javascript(mostly browsers)\nwill be allowed to complete the HTTP request.\n\nWhen loadbalancer is configured to do Javascript Challenge, it will redirect the browser to an\nHTML page on every new HTTP request. This HTML page will have Javascript embedded in it.\nLoadbalancer chooses a set of random numbers for every new client and sends these numbers along with an\nencrypted answer with the request such that it embed these numbers as input in the Javascript.\nJavascript will run on the requestor browser and perform a complex Math operation.\nScript will submit the answer to loadbalancer. Loadbalancer will validate the answer by comparing the calculated\nanswer with the decrypted answer (which was encrypted when it was sent back as reply) and allow\nthe request to the upstream server only if the answer is correct.\nLoadbalancer will tag response header with a cookie to avoid Javascript challenge for subsequent requests.\n\nJavascript challenge serves following purposes\n * Validate that the request is coming via a browser that is capable for running Javascript\n * Force the browser to run a complex operation, f(X), that requires it to spend a large number\n of CPU cycles. This is to slow down a potential DoS attacker by making it difficult to launch\n a large request flood without having to spend even larger CPU cost at their end.\n\nYou can enable either Javascript challenge or Captcha challenge on a virtual host", @@ -5812,11 +5911,12 @@ var APISwaggerJSON string = `{ }, "virtual_hostProxyType": { "type": "string", - "description": "ProxyType tells the type of proxy to install for the virtual host.\n\nOnly the following combination of VirtualHosts within same AdvertisePolicy is permitted\n(None of them should have \"*\" in domains when used with other VirtualHosts in same AdvertisePolicy)\n1. Multiple TCP_PROXY_WITH_SNI and multiple HTTPS_PROXY\n2. Multiple HTTP_PROXY\n3. Multiple HTTPS_PROXY\n4. Multiple TCP_PROXY_WITH_SNI\n\nHTTPS_PROXY without TLS parameters is not permitted\nHTTP_PROXY/HTTPS_PROXY/TCP_PROXY_WITH_SNI/SMA_PROXY with empty domains is not permitted\nTCP_PROXY_WITH_SNI/SMA_PROXY should not have \"*\" in domains\n\n - HTTP_PROXY: HTTP_PROXY\n\nInstall HTTP proxy. HTTP Proxy is the default proxy installed.\n - TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - TLS_TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TLS_TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - HTTPS_PROXY: HTTPS_PROXY\n\nInstall HTTPS proxy\n - UDP_PROXY: UDP_PROXY\n\nInstall UDP proxy\n - SMA_PROXY: SMA_PROXY\n\nInstall Secret Management Access proxy\n - DNS_PROXY: DNS_PROXY\n\nInstall DNS proxy", + "description": "ProxyType tells the type of proxy to install for the virtual host.\n\nOnly the following combination of VirtualHosts within same AdvertisePolicy is permitted\n(None of them should have \"*\" in domains when used with other VirtualHosts in same AdvertisePolicy)\n1. Multiple TCP_PROXY_WITH_SNI and multiple HTTPS_PROXY\n2. Multiple HTTP_PROXY\n3. Multiple HTTPS_PROXY\n4. Multiple TCP_PROXY_WITH_SNI\n\nHTTPS_PROXY without TLS parameters is not permitted\nHTTP_PROXY/HTTPS_PROXY/TCP_PROXY_WITH_SNI/SMA_PROXY with empty domains is not permitted\nTCP_PROXY_WITH_SNI/SMA_PROXY should not have \"*\" in domains\n\n - HTTP_PROXY: HTTP_PROXY\n\nInstall HTTP proxy. HTTP Proxy is the default proxy installed.\n - TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - TLS_TCP_PROXY: TCP_PROXY\n\nInstall TCP proxy\n - TLS_TCP_PROXY_WITH_SNI: TCP_PROXY_WITH_SNI\n\nInstall TCP proxy with SNI Routing\n - HTTPS_PROXY: HTTPS_PROXY\n\nInstall HTTPS proxy\n - UDP_PROXY: UDP_PROXY\n\nInstall UDP proxy\n - SMA_PROXY: SMA_PROXY\n\nInstall Secret Management Access proxy\n - DNS_PROXY: DNS_PROXY\n\nInstall DNS proxy\n - ZTNA_PROXY: ZTNA_PROXY\n\nInstall ZTNA proxy", "enum": [ "UDP_PROXY", "SMA_PROXY", - "DNS_PROXY" + "DNS_PROXY", + "ZTNA_PROXY" ], "default": "HTTP_PROXY", "x-displayname": "Type of Proxy", @@ -6050,6 +6150,29 @@ var APISwaggerJSON string = `{ "x-displayname": "Virtual Host Type", "x-ves-proto-enum": "ves.io.schema.virtual_host.VirtualHostType" }, + "virtual_hostZtnaProxyConfiguration": { + "type": "object", + "description": "x-displayName: \"Ztna Proxy Configuration\"\nZtna Proxy Configuration contains Policy and Application Configuration", + "title": "Ztna Proxy Configuration", + "properties": { + "ztna_application_config": { + "type": "array", + "description": "x-displayName: \"Ztna Application Configuration\"\nAdvance configuration of Ztna Application Configuration(Connectivity/Session/Message)", + "title": "Ztna Application Configuration", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + } + }, + "ztna_policy_config": { + "type": "array", + "description": "x-displayName: \"Ztna Policy Configuration\"\nAdvance configuration of Ztna Policy Configuration(Connectivity/Session/Message)", + "title": "Ztna Policy Configuration", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + } + } + } + }, "virtual_host_dns_infoDnsInfo": { "type": "object", "description": "A message that contains DNS information for a given IP address", diff --git a/pbgo/extschema/schema/virtual_host/public_customapi.pb.go b/pbgo/extschema/schema/virtual_host/public_customapi.pb.go index 73ac36d70..bcd2622b0 100644 --- a/pbgo/extschema/schema/virtual_host/public_customapi.pb.go +++ b/pbgo/extschema/schema/virtual_host/public_customapi.pb.go @@ -178,40 +178,41 @@ func init() { } var fileDescriptor_bad4dc18a44defc2 = []byte{ - // 527 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x52, 0x31, 0x6f, 0xd3, 0x40, - 0x14, 0xf6, 0x05, 0x04, 0xd4, 0x2c, 0xe0, 0x29, 0x0a, 0xd5, 0xa9, 0x64, 0x62, 0xe0, 0x7c, 0x90, - 0x8a, 0x1d, 0x0a, 0xa8, 0xea, 0x02, 0x55, 0x60, 0x62, 0x89, 0xce, 0xf6, 0x8b, 0x73, 0x60, 0xdf, - 0x3b, 0x7c, 0x67, 0xab, 0x08, 0x55, 0x42, 0x19, 0x99, 0x90, 0xf8, 0x13, 0x6c, 0xac, 0x48, 0x5d, - 0xba, 0xd1, 0x09, 0x45, 0xb0, 0x74, 0x24, 0x0e, 0x03, 0x63, 0x7e, 0x02, 0xaa, 0x9d, 0xa6, 0x69, - 0xa0, 0x15, 0xdb, 0x7b, 0xfe, 0xfc, 0x7d, 0xf7, 0xbd, 0xf7, 0x3e, 0xf7, 0x6e, 0x01, 0xc6, 0x97, - 0xc8, 0x4d, 0x38, 0x80, 0x54, 0xf0, 0x42, 0x66, 0x36, 0x17, 0x49, 0x6f, 0x80, 0xc6, 0x72, 0x9d, - 0x07, 0x89, 0x0c, 0x7b, 0x61, 0x6e, 0x2c, 0xa6, 0x42, 0x4b, 0x5f, 0x67, 0x68, 0xd1, 0x6b, 0xd5, - 0x14, 0xbf, 0xa6, 0xf8, 0x8b, 0x94, 0x16, 0x8b, 0xa5, 0x1d, 0xe4, 0x81, 0x1f, 0x62, 0xca, 0x63, - 0x8c, 0x91, 0x57, 0x94, 0x20, 0xef, 0x57, 0x5d, 0xd5, 0x54, 0x55, 0x2d, 0xd5, 0x5a, 0x8d, 0x11, - 0xe3, 0x04, 0xb8, 0xd0, 0x92, 0x0b, 0xa5, 0xd0, 0x0a, 0x2b, 0x51, 0x99, 0x19, 0x7a, 0xe3, 0xb4, - 0x37, 0xd4, 0x8b, 0xe0, 0xea, 0x92, 0x71, 0x91, 0xc8, 0x48, 0x58, 0x98, 0xa1, 0xed, 0x25, 0x14, - 0x0c, 0xa8, 0x62, 0x49, 0xe1, 0xce, 0xd9, 0xa3, 0xf7, 0x22, 0x65, 0x7a, 0x52, 0xf5, 0x91, 0x63, - 0xf0, 0x12, 0x42, 0x5b, 0x33, 0xda, 0x8f, 0xdd, 0xeb, 0x9b, 0x60, 0x1f, 0x29, 0xb3, 0xa5, 0xfa, - 0xd8, 0x85, 0xd7, 0x39, 0x18, 0xeb, 0xad, 0xba, 0x2b, 0x4a, 0xa4, 0x60, 0xb4, 0x08, 0xa1, 0x49, - 0xd6, 0xc8, 0xad, 0x95, 0xee, 0xc9, 0x07, 0xcf, 0x73, 0x2f, 0x1e, 0x35, 0xcd, 0x46, 0x05, 0x54, - 0x75, 0x3b, 0x72, 0xbd, 0x45, 0x19, 0xa3, 0x51, 0x19, 0xf0, 0x9e, 0xb8, 0x57, 0x8e, 0x5f, 0xad, - 0x64, 0xae, 0x76, 0xd6, 0xfd, 0xb3, 0x37, 0x3d, 0x77, 0xe8, 0x6f, 0x26, 0x18, 0x88, 0xe4, 0x99, - 0x86, 0xf0, 0xf9, 0x1b, 0x0d, 0xdd, 0xcb, 0x51, 0xad, 0xdb, 0xf9, 0xdc, 0x70, 0x57, 0x1e, 0x56, - 0xa7, 0x7b, 0xb0, 0xbd, 0xe5, 0x4d, 0x89, 0xeb, 0x9e, 0x3c, 0xea, 0xb1, 0x73, 0xa4, 0xfd, 0xbf, - 0x66, 0x6c, 0xf9, 0xff, 0xfb, 0x7b, 0x3d, 0x4b, 0x7b, 0x48, 0x0e, 0xbe, 0x34, 0x48, 0xf9, 0xb5, - 0xd9, 0xe9, 0xdf, 0xdb, 0x09, 0x99, 0x81, 0x30, 0xcf, 0x20, 0x05, 0x33, 0x60, 0x81, 0x30, 0x32, - 0x64, 0x29, 0x2a, 0x69, 0x31, 0xbb, 0xbd, 0x56, 0x80, 0x61, 0x12, 0x59, 0x0c, 0x0a, 0x32, 0x91, - 0xb0, 0x0c, 0x44, 0x34, 0xfc, 0xf1, 0xeb, 0x63, 0x63, 0xc3, 0xbb, 0x3f, 0x8b, 0x1f, 0x9f, 0xef, - 0xd2, 0xf0, 0xb7, 0xf3, 0x7a, 0xf7, 0xd4, 0xb9, 0x66, 0xc8, 0x2e, 0x8f, 0xc1, 0xb2, 0x48, 0x19, - 0x76, 0xb4, 0x98, 0x16, 0xdf, 0xdf, 0x23, 0x17, 0xbe, 0xef, 0x91, 0x9b, 0xe7, 0x78, 0x7f, 0x5a, - 0x9d, 0x77, 0xf8, 0xad, 0xd9, 0xb8, 0x46, 0x36, 0xde, 0x93, 0xd1, 0x98, 0x3a, 0x87, 0x63, 0xea, - 0x4c, 0xc7, 0x94, 0xbc, 0x2b, 0x29, 0xf9, 0x54, 0x52, 0x72, 0x50, 0x52, 0x32, 0x2a, 0x29, 0xf9, - 0x59, 0x52, 0xf2, 0xbb, 0xa4, 0xce, 0xb4, 0xa4, 0xe4, 0xc3, 0x84, 0x3a, 0xfb, 0x13, 0x4a, 0x46, - 0x13, 0xea, 0x1c, 0x4e, 0xa8, 0xf3, 0x62, 0x3b, 0x46, 0xfd, 0x2a, 0xf6, 0x0b, 0x4c, 0x2c, 0x64, - 0x99, 0xf0, 0x73, 0xc3, 0xab, 0xa2, 0x8f, 0x59, 0xca, 0x74, 0x86, 0x85, 0x8c, 0x20, 0x63, 0xc7, - 0x30, 0xd7, 0x41, 0x8c, 0x1c, 0x76, 0xec, 0x2c, 0x7a, 0xff, 0x48, 0x60, 0x70, 0xa9, 0x8a, 0xdc, - 0xfa, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd1, 0xd8, 0x70, 0x9f, 0xa1, 0x03, 0x00, 0x00, + // 539 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x52, 0x31, 0x6f, 0xd4, 0x4c, + 0x10, 0xf5, 0xfa, 0xfb, 0x04, 0xc4, 0x34, 0xe0, 0xea, 0x74, 0x44, 0xab, 0x70, 0x15, 0x05, 0xeb, + 0x85, 0x44, 0xf4, 0x10, 0x40, 0x51, 0x1a, 0x88, 0x42, 0x2a, 0x9a, 0xd3, 0xda, 0x9e, 0xf3, 0x2d, + 0xd8, 0x3b, 0xcb, 0xee, 0xda, 0x0a, 0x42, 0x91, 0x50, 0x4a, 0x2a, 0x04, 0x7f, 0x81, 0x82, 0x9f, + 0x80, 0x94, 0x26, 0x1d, 0xa9, 0x50, 0x80, 0x26, 0x25, 0xf1, 0x51, 0x50, 0xe6, 0x27, 0xa0, 0xd8, + 0x97, 0xe4, 0x72, 0x90, 0x88, 0x6e, 0x66, 0xdf, 0xbe, 0xb7, 0xf3, 0x66, 0x5f, 0x70, 0xbb, 0x02, + 0x1b, 0x49, 0xe4, 0x36, 0x19, 0x42, 0x21, 0x78, 0x25, 0x8d, 0x2b, 0x45, 0xde, 0x1f, 0xa2, 0x75, + 0x5c, 0x97, 0x71, 0x2e, 0x93, 0x7e, 0x52, 0x5a, 0x87, 0x85, 0xd0, 0x32, 0xd2, 0x06, 0x1d, 0x86, + 0xdd, 0x96, 0x12, 0xb5, 0x94, 0x68, 0x92, 0xd2, 0x65, 0x99, 0x74, 0xc3, 0x32, 0x8e, 0x12, 0x2c, + 0x78, 0x86, 0x19, 0xf2, 0x86, 0x12, 0x97, 0x83, 0xa6, 0x6b, 0x9a, 0xa6, 0x6a, 0xa5, 0xba, 0xb3, + 0x19, 0x62, 0x96, 0x03, 0x17, 0x5a, 0x72, 0xa1, 0x14, 0x3a, 0xe1, 0x24, 0x2a, 0x3b, 0x46, 0xaf, + 0x9d, 0x9e, 0x0d, 0xf5, 0x24, 0x38, 0x3b, 0x35, 0xb8, 0xc8, 0x65, 0x2a, 0x1c, 0x8c, 0xd1, 0xde, + 0x14, 0x0a, 0x16, 0x54, 0x35, 0xa5, 0x70, 0xeb, 0x6c, 0xeb, 0xfd, 0x54, 0xd9, 0xbe, 0x54, 0x03, + 0xe4, 0x18, 0x3f, 0x83, 0xc4, 0xb5, 0x8c, 0xde, 0xc3, 0xe0, 0xea, 0x12, 0xb8, 0x07, 0xca, 0x2e, + 0xab, 0x01, 0xae, 0xc2, 0x8b, 0x12, 0xac, 0x0b, 0x67, 0x83, 0x19, 0x25, 0x0a, 0xb0, 0x5a, 0x24, + 0xd0, 0x21, 0x73, 0xe4, 0xc6, 0xcc, 0xea, 0xc9, 0x41, 0x18, 0x06, 0xff, 0x1f, 0x36, 0x1d, 0xbf, + 0x01, 0x9a, 0xba, 0x97, 0x06, 0xe1, 0xa4, 0x8c, 0xd5, 0xa8, 0x2c, 0x84, 0x8f, 0x82, 0x4b, 0x47, + 0xaf, 0x36, 0x32, 0x97, 0xe7, 0x17, 0xa2, 0xb3, 0x37, 0x7d, 0x3c, 0x61, 0xb4, 0x94, 0x63, 0x2c, + 0xf2, 0x27, 0x1a, 0x92, 0xb5, 0x97, 0x1a, 0x56, 0x2f, 0xa6, 0xad, 0xee, 0xfc, 0x57, 0x3f, 0x98, + 0xb9, 0xdf, 0x7c, 0xdd, 0xbd, 0x95, 0xe5, 0xf0, 0x9d, 0x1f, 0x04, 0x27, 0x8f, 0x86, 0xec, 0x1c, + 0xe9, 0xe8, 0x0f, 0x8f, 0xdd, 0xe8, 0x5f, 0xaf, 0xb7, 0x5e, 0x7a, 0x1f, 0xc8, 0xce, 0x27, 0x9f, + 0xd4, 0x9f, 0x3b, 0x6b, 0x83, 0x3b, 0xeb, 0x09, 0xb3, 0x90, 0x94, 0x06, 0x0a, 0xb0, 0x43, 0x16, + 0x0b, 0x2b, 0x13, 0x56, 0xa0, 0x92, 0x0e, 0xcd, 0xcd, 0xb9, 0x69, 0xd8, 0x3a, 0xa1, 0x52, 0x61, + 0xd2, 0x93, 0x1b, 0x15, 0x58, 0x26, 0x91, 0x65, 0xa0, 0xc0, 0x88, 0x9c, 0x19, 0x10, 0xe9, 0xe6, + 0xf7, 0x9f, 0xef, 0xfd, 0xc5, 0xf0, 0xee, 0x38, 0xa0, 0xfc, 0x78, 0xdb, 0x96, 0xbf, 0x3a, 0xae, + 0x37, 0x4e, 0x7d, 0xe8, 0x18, 0xd9, 0xe0, 0x19, 0x38, 0x96, 0x2a, 0xcb, 0x0e, 0x57, 0xd7, 0xe5, + 0xdb, 0x5b, 0xe4, 0xbf, 0x6f, 0x5b, 0xe4, 0xfa, 0x39, 0xee, 0x1e, 0x37, 0x01, 0xd8, 0xfc, 0xd2, + 0xf1, 0xaf, 0x90, 0xc5, 0x37, 0x64, 0x77, 0x9f, 0x7a, 0x7b, 0xfb, 0xd4, 0x3b, 0xd8, 0xa7, 0xe4, + 0x75, 0x4d, 0xc9, 0xc7, 0x9a, 0x92, 0x9d, 0x9a, 0x92, 0xdd, 0x9a, 0x92, 0x1f, 0x35, 0x25, 0xbf, + 0x6a, 0xea, 0x1d, 0xd4, 0x94, 0xbc, 0x1d, 0x51, 0x6f, 0x7b, 0x44, 0xc9, 0xee, 0x88, 0x7a, 0x7b, + 0x23, 0xea, 0x3d, 0x5d, 0xc9, 0x50, 0x3f, 0xcf, 0xa2, 0x0a, 0x73, 0x07, 0xc6, 0x88, 0xa8, 0xb4, + 0xbc, 0x29, 0x06, 0x68, 0x0a, 0xa6, 0x0d, 0x56, 0x32, 0x05, 0xc3, 0x8e, 0x60, 0xae, 0xe3, 0x0c, + 0x39, 0xac, 0xbb, 0x71, 0x38, 0xff, 0x92, 0xd1, 0xf8, 0x42, 0x13, 0xca, 0x85, 0xdf, 0x01, 0x00, + 0x00, 0xff, 0xff, 0xe8, 0xdf, 0x3f, 0xc9, 0xc3, 0x03, 0x00, 0x00, } func (this *GetDnsInfoRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/virtual_host/types.pb.go b/pbgo/extschema/schema/virtual_host/types.pb.go index b9442f06d..30341b637 100644 --- a/pbgo/extschema/schema/virtual_host/types.pb.go +++ b/pbgo/extschema/schema/virtual_host/types.pb.go @@ -166,6 +166,11 @@ const ( // x-displayName: "DNS Proxy" // Install DNS proxy DNS_PROXY ProxyType = 8 + // ZTNA_PROXY + // + // x-displayName: "ZTNA Proxy" + // Install ZTNA proxy + ZTNA_PROXY ProxyType = 9 ) var ProxyType_name = map[int32]string{ @@ -178,6 +183,7 @@ var ProxyType_name = map[int32]string{ 4: "UDP_PROXY", 5: "SMA_PROXY", 8: "DNS_PROXY", + 9: "ZTNA_PROXY", } var ProxyType_value = map[string]int32{ @@ -190,6 +196,7 @@ var ProxyType_value = map[string]int32{ "UDP_PROXY": 4, "SMA_PROXY": 5, "DNS_PROXY": 8, + "ZTNA_PROXY": 9, } func (ProxyType) EnumDescriptor() ([]byte, []int) { @@ -1980,6 +1987,7 @@ type ClientIPHeaders struct { // // x-displayName: "Client IP Headers" // x-example: "Client-IP-Header" + // x-required // Define the list of one or more Client IP Headers. Headers will be used in order from top to bottom, meaning // if the first header is not present in the request, the system will proceed to check for the second header, // and so on, until one of the listed headers is found. If none of the defined headers exist, or the value @@ -2026,6 +2034,65 @@ func (m *ClientIPHeaders) GetClientIpHeaders() []string { return nil } +// Ztna Proxy Configuration +// +// x-displayName: "Ztna Proxy Configuration" +// Ztna Proxy Configuration contains Policy and Application Configuration +type ZtnaProxyConfiguration struct { + // Ztna Policy Configuration + // + // x-displayName: "Ztna Policy Configuration" + // Advance configuration of Ztna Policy Configuration(Connectivity/Session/Message) + ZtnaPolicyConfig []*schema.ObjectRefType `protobuf:"bytes,1,rep,name=ztna_policy_config,json=ztnaPolicyConfig,proto3" json:"ztna_policy_config,omitempty"` + // Ztna Application Configuration + // + // x-displayName: "Ztna Application Configuration" + // Advance configuration of Ztna Application Configuration(Connectivity/Session/Message) + ZtnaApplicationConfig []*schema.ObjectRefType `protobuf:"bytes,100,rep,name=ztna_application_config,json=ztnaApplicationConfig,proto3" json:"ztna_application_config,omitempty"` +} + +func (m *ZtnaProxyConfiguration) Reset() { *m = ZtnaProxyConfiguration{} } +func (*ZtnaProxyConfiguration) ProtoMessage() {} +func (*ZtnaProxyConfiguration) Descriptor() ([]byte, []int) { + return fileDescriptor_df61af5ea37a6592, []int{16} +} +func (m *ZtnaProxyConfiguration) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ZtnaProxyConfiguration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ZtnaProxyConfiguration) XXX_Merge(src proto.Message) { + xxx_messageInfo_ZtnaProxyConfiguration.Merge(m, src) +} +func (m *ZtnaProxyConfiguration) XXX_Size() int { + return m.Size() +} +func (m *ZtnaProxyConfiguration) XXX_DiscardUnknown() { + xxx_messageInfo_ZtnaProxyConfiguration.DiscardUnknown(m) +} + +var xxx_messageInfo_ZtnaProxyConfiguration proto.InternalMessageInfo + +func (m *ZtnaProxyConfiguration) GetZtnaPolicyConfig() []*schema.ObjectRefType { + if m != nil { + return m.ZtnaPolicyConfig + } + return nil +} + +func (m *ZtnaProxyConfiguration) GetZtnaApplicationConfig() []*schema.ObjectRefType { + if m != nil { + return m.ZtnaApplicationConfig + } + return nil +} + // DNS Proxy Configuration // // x-displayName: "DNS Proxy Configuration" @@ -2061,7 +2128,7 @@ type DNSProxyConfiguration struct { func (m *DNSProxyConfiguration) Reset() { *m = DNSProxyConfiguration{} } func (*DNSProxyConfiguration) ProtoMessage() {} func (*DNSProxyConfiguration) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{16} + return fileDescriptor_df61af5ea37a6592, []int{17} } func (m *DNSProxyConfiguration) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2135,7 +2202,7 @@ type DNSDDoSProfile struct { func (m *DNSDDoSProfile) Reset() { *m = DNSDDoSProfile{} } func (*DNSDDoSProfile) ProtoMessage() {} func (*DNSDDoSProfile) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{17} + return fileDescriptor_df61af5ea37a6592, []int{18} } func (m *DNSDDoSProfile) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2228,7 +2295,7 @@ type DNSCacheProfile struct { func (m *DNSCacheProfile) Reset() { *m = DNSCacheProfile{} } func (*DNSCacheProfile) ProtoMessage() {} func (*DNSCacheProfile) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{18} + return fileDescriptor_df61af5ea37a6592, []int{19} } func (m *DNSCacheProfile) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2330,7 +2397,7 @@ type SlowDDoSMitigation struct { func (m *SlowDDoSMitigation) Reset() { *m = SlowDDoSMitigation{} } func (*SlowDDoSMitigation) ProtoMessage() {} func (*SlowDDoSMitigation) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{19} + return fileDescriptor_df61af5ea37a6592, []int{20} } func (m *SlowDDoSMitigation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2428,7 +2495,7 @@ type DomainCertificates struct { func (m *DomainCertificates) Reset() { *m = DomainCertificates{} } func (*DomainCertificates) ProtoMessage() {} func (*DomainCertificates) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{20} + return fileDescriptor_df61af5ea37a6592, []int{21} } func (m *DomainCertificates) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2493,7 +2560,7 @@ type ApiSpec struct { func (m *ApiSpec) Reset() { *m = ApiSpec{} } func (*ApiSpec) ProtoMessage() {} func (*ApiSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{21} + return fileDescriptor_df61af5ea37a6592, []int{22} } func (m *ApiSpec) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2597,7 +2664,7 @@ type OpenApiValidationSettings struct { func (m *OpenApiValidationSettings) Reset() { *m = OpenApiValidationSettings{} } func (*OpenApiValidationSettings) ProtoMessage() {} func (*OpenApiValidationSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{22} + return fileDescriptor_df61af5ea37a6592, []int{23} } func (m *OpenApiValidationSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2643,6 +2710,59 @@ func (m *OpenApiValidationSettings) GetAllowOnlySpecifiedHeaders() bool { return false } +// Http1ProtocolOptions +// +// x-displayName: "HTTP/1.1 Protocol Options" +// HTTP/1.1 Protocol options for downstream connections +type Http1ProtocolOptions struct { + // Header transformation + // + // x-displayName: "Header Transformation Configuration" + // Two mutually exclusive types of header key formatters are supported: Stateless + // (Default and Proper Case) and Stateful (Preserve Case) formatters. When a Stateless + // formatter is selected, it applies to response headers sent to the client and when a + // Stateful formatter is selected, it applies to the upstream request headers. + // It's essential to ensure that the same formatter type (either stateless or stateful) + // is applied on origin pool. If different formatter types are applied, only + // the stateful formatter will take effect, and the stateless formatter will be disregarded. + HeaderTransformation *schema.HeaderTransformationType `protobuf:"bytes,1,opt,name=header_transformation,json=headerTransformation,proto3" json:"header_transformation,omitempty"` +} + +func (m *Http1ProtocolOptions) Reset() { *m = Http1ProtocolOptions{} } +func (*Http1ProtocolOptions) ProtoMessage() {} +func (*Http1ProtocolOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_df61af5ea37a6592, []int{24} +} +func (m *Http1ProtocolOptions) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Http1ProtocolOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Http1ProtocolOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_Http1ProtocolOptions.Merge(m, src) +} +func (m *Http1ProtocolOptions) XXX_Size() int { + return m.Size() +} +func (m *Http1ProtocolOptions) XXX_DiscardUnknown() { + xxx_messageInfo_Http1ProtocolOptions.DiscardUnknown(m) +} + +var xxx_messageInfo_Http1ProtocolOptions proto.InternalMessageInfo + +func (m *Http1ProtocolOptions) GetHeaderTransformation() *schema.HeaderTransformationType { + if m != nil { + return m.HeaderTransformation + } + return nil +} + // HttpProtocolOptions // // x-displayName: "HTTP Protocol Configuration Options" @@ -2664,7 +2784,7 @@ type HttpProtocolOptions struct { func (m *HttpProtocolOptions) Reset() { *m = HttpProtocolOptions{} } func (*HttpProtocolOptions) ProtoMessage() {} func (*HttpProtocolOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{23} + return fileDescriptor_df61af5ea37a6592, []int{25} } func (m *HttpProtocolOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2697,7 +2817,7 @@ type isHttpProtocolOptions_HttpProtocolChoice interface { } type HttpProtocolOptions_HttpProtocolEnableV1Only struct { - HttpProtocolEnableV1Only *schema.Empty `protobuf:"bytes,2,opt,name=http_protocol_enable_v1_only,json=httpProtocolEnableV1Only,proto3,oneof" json:"http_protocol_enable_v1_only,omitempty"` + HttpProtocolEnableV1Only *Http1ProtocolOptions `protobuf:"bytes,2,opt,name=http_protocol_enable_v1_only,json=httpProtocolEnableV1Only,proto3,oneof" json:"http_protocol_enable_v1_only,omitempty"` } type HttpProtocolOptions_HttpProtocolEnableV2Only struct { HttpProtocolEnableV2Only *schema.Empty `protobuf:"bytes,3,opt,name=http_protocol_enable_v2_only,json=httpProtocolEnableV2Only,proto3,oneof" json:"http_protocol_enable_v2_only,omitempty"` @@ -2717,7 +2837,7 @@ func (m *HttpProtocolOptions) GetHttpProtocolChoice() isHttpProtocolOptions_Http return nil } -func (m *HttpProtocolOptions) GetHttpProtocolEnableV1Only() *schema.Empty { +func (m *HttpProtocolOptions) GetHttpProtocolEnableV1Only() *Http1ProtocolOptions { if x, ok := m.GetHttpProtocolChoice().(*HttpProtocolOptions_HttpProtocolEnableV1Only); ok { return x.HttpProtocolEnableV1Only } @@ -2757,7 +2877,7 @@ type HttpRedirectOptions struct { func (m *HttpRedirectOptions) Reset() { *m = HttpRedirectOptions{} } func (*HttpRedirectOptions) ProtoMessage() {} func (*HttpRedirectOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{24} + return fileDescriptor_df61af5ea37a6592, []int{26} } func (m *HttpRedirectOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3163,7 +3283,7 @@ type GlobalSpecType struct { // // x-displayName: "Header Transformation Configuration" // Header transformation options for response headers to the client - HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,79,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` + HeaderTransformationType *schema.HeaderTransformationType `protobuf:"bytes,79,opt,name=header_transformation_type,json=headerTransformationType,proto3" json:"header_transformation_type,omitempty"` // Deprecated: Do not use. // Cookie to modify from response // // x-displayName: "Modify Set-Cookie Response Header" @@ -3192,7 +3312,16 @@ type GlobalSpecType struct { // *GlobalSpecType_Block // *GlobalSpecType_DdosJsChallenge // *GlobalSpecType_L7DdosActionDefault + // *GlobalSpecType_L7DdosActionNone DdosAutoMitigationAction isGlobalSpecType_DdosAutoMitigationAction `protobuf_oneof:"ddos_auto_mitigation_action"` + // Use Threat Mesh + // + // x-displayName: "Use Threat Mesh" + // Threat Mesh provides F5 Distributed Cloud customers with an additional layer of protection against web application attacks. + // Threat mesh leverages cross-customer correlation i.e correlation of client attacks across different customers + // to identify malicious intent of the client. Whenever a client is flagged due to malicious intent by our WAAP decision engines, + // that client will be added to the ThreatDB and all customers get this intelligence and are protected in real-time. + UseThreatMesh bool `protobuf:"varint,95,opt,name=use_threat_mesh,json=useThreatMesh,proto3" json:"use_threat_mesh,omitempty"` // DNS F5XC Managed // // x-displayName: "DNS F5XC Managed" @@ -3342,12 +3471,22 @@ type GlobalSpecType struct { // x-displayName: "HttpRedirectOptions" // HTTP traffic redirection options to HTTPS HttpRedirectOptions *HttpRedirectOptions `protobuf:"bytes,1027,opt,name=http_redirect_options,json=httpRedirectOptions,proto3" json:"http_redirect_options,omitempty"` + // Advanced Ztna Proxy Configuration + // + // x-displayName: "Advanced Ztna Proxy Configuration" + // Advanced Ztna Proxy configuration containing policy and application configuration + ZtnaProxyConfigurations *ZtnaProxyConfiguration `protobuf:"bytes,1120,opt,name=ztna_proxy_configurations,json=ztnaProxyConfigurations,proto3" json:"ztna_proxy_configurations,omitempty"` + // Advertised in public + // + // x-displayName: "Advertised in public" + // Advertised in public + AdvertiseOnPublic bool `protobuf:"varint,1121,opt,name=advertise_on_public,json=advertiseOnPublic,proto3" json:"advertise_on_public,omitempty"` } func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } func (*GlobalSpecType) ProtoMessage() {} func (*GlobalSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{25} + return fileDescriptor_df61af5ea37a6592, []int{27} } func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3508,6 +3647,9 @@ type GlobalSpecType_DdosJsChallenge struct { type GlobalSpecType_L7DdosActionDefault struct { L7DdosActionDefault *schema.Empty `protobuf:"bytes,93,opt,name=l7_ddos_action_default,json=l7DdosActionDefault,proto3,oneof" json:"l7_ddos_action_default,omitempty"` } +type GlobalSpecType_L7DdosActionNone struct { + L7DdosActionNone *schema.Empty `protobuf:"bytes,94,opt,name=l7_ddos_action_none,json=l7DdosActionNone,proto3,oneof" json:"l7_ddos_action_none,omitempty"` +} type GlobalSpecType_DisableBotDefense struct { DisableBotDefense *schema.Empty `protobuf:"bytes,1016,opt,name=disable_bot_defense,json=disableBotDefense,proto3,oneof" json:"disable_bot_defense,omitempty"` } @@ -3545,6 +3687,7 @@ func (*GlobalSpecType_DefaultLoadbalancer) isGlobalSpecType_DefaultLbChoice() func (*GlobalSpecType_Block) isGlobalSpecType_DdosAutoMitigationAction() {} func (*GlobalSpecType_DdosJsChallenge) isGlobalSpecType_DdosAutoMitigationAction() {} func (*GlobalSpecType_L7DdosActionDefault) isGlobalSpecType_DdosAutoMitigationAction() {} +func (*GlobalSpecType_L7DdosActionNone) isGlobalSpecType_DdosAutoMitigationAction() {} func (*GlobalSpecType_DisableBotDefense) isGlobalSpecType_BotDefenseChoice() {} func (*GlobalSpecType_BotDefense) isGlobalSpecType_BotDefenseChoice() {} func (*GlobalSpecType_NotReady) isGlobalSpecType_DnsZoneStateChoice() {} @@ -3969,6 +4112,7 @@ func (m *GlobalSpecType) GetDefaultLoadbalancer() *schema.Empty { return nil } +// Deprecated: Do not use. func (m *GlobalSpecType) GetHeaderTransformationType() *schema.HeaderTransformationType { if m != nil { return m.HeaderTransformationType @@ -4018,6 +4162,20 @@ func (m *GlobalSpecType) GetL7DdosActionDefault() *schema.Empty { return nil } +func (m *GlobalSpecType) GetL7DdosActionNone() *schema.Empty { + if x, ok := m.GetDdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionNone); ok { + return x.L7DdosActionNone + } + return nil +} + +func (m *GlobalSpecType) GetUseThreatMesh() bool { + if m != nil { + return m.UseThreatMesh + } + return false +} + func (m *GlobalSpecType) GetDnsVolterraManaged() bool { if m != nil { return m.DnsVolterraManaged @@ -4215,6 +4373,20 @@ func (m *GlobalSpecType) GetHttpRedirectOptions() *HttpRedirectOptions { return nil } +func (m *GlobalSpecType) GetZtnaProxyConfigurations() *ZtnaProxyConfiguration { + if m != nil { + return m.ZtnaProxyConfigurations + } + return nil +} + +func (m *GlobalSpecType) GetAdvertiseOnPublic() bool { + if m != nil { + return m.AdvertiseOnPublic + } + return false +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -4241,6 +4413,7 @@ func (*GlobalSpecType) XXX_OneofWrappers() []interface{} { (*GlobalSpecType_Block)(nil), (*GlobalSpecType_DdosJsChallenge)(nil), (*GlobalSpecType_L7DdosActionDefault)(nil), + (*GlobalSpecType_L7DdosActionNone)(nil), (*GlobalSpecType_DisableBotDefense)(nil), (*GlobalSpecType_BotDefense)(nil), (*GlobalSpecType_NotReady)(nil), @@ -4286,7 +4459,7 @@ type DNSVHostStatusType struct { func (m *DNSVHostStatusType) Reset() { *m = DNSVHostStatusType{} } func (*DNSVHostStatusType) ProtoMessage() {} func (*DNSVHostStatusType) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{26} + return fileDescriptor_df61af5ea37a6592, []int{28} } func (m *DNSVHostStatusType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4410,16 +4583,18 @@ type CreateSpecType struct { CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,80,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` CookiesToModify []*schema.CookieManipulationOptionType `protobuf:"bytes,81,rep,name=cookies_to_modify,json=cookiesToModify,proto3" json:"cookies_to_modify,omitempty"` ConnectionIdleTimeout uint32 `protobuf:"varint,82,opt,name=connection_idle_timeout,json=connectionIdleTimeout,proto3" json:"connection_idle_timeout,omitempty"` + HttpProtocolOptions *HttpProtocolOptions `protobuf:"bytes,89,opt,name=http_protocol_options,json=httpProtocolOptions,proto3" json:"http_protocol_options,omitempty"` DnsProxyConfiguration *DNSProxyConfiguration `protobuf:"bytes,1200,opt,name=dns_proxy_configuration,json=dnsProxyConfiguration,proto3" json:"dns_proxy_configuration,omitempty"` SlowDdosMitigation *SlowDDoSMitigation `protobuf:"bytes,83,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3" json:"slow_ddos_mitigation,omitempty"` ApiSpec *ApiSpec `protobuf:"bytes,84,opt,name=api_spec,json=apiSpec,proto3" json:"api_spec,omitempty"` DomainCertMap map[string]*DomainCertificates `protobuf:"bytes,88,rep,name=domain_cert_map,json=domainCertMap,proto3" json:"domain_cert_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ZtnaProxyConfigurations *ZtnaProxyConfiguration `protobuf:"bytes,1120,opt,name=ztna_proxy_configurations,json=ztnaProxyConfigurations,proto3" json:"ztna_proxy_configurations,omitempty"` } func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } func (*CreateSpecType) ProtoMessage() {} func (*CreateSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{27} + return fileDescriptor_df61af5ea37a6592, []int{29} } func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4916,6 +5091,13 @@ func (m *CreateSpecType) GetConnectionIdleTimeout() uint32 { return 0 } +func (m *CreateSpecType) GetHttpProtocolOptions() *HttpProtocolOptions { + if m != nil { + return m.HttpProtocolOptions + } + return nil +} + func (m *CreateSpecType) GetDnsProxyConfiguration() *DNSProxyConfiguration { if m != nil { return m.DnsProxyConfiguration @@ -4944,6 +5126,13 @@ func (m *CreateSpecType) GetDomainCertMap() map[string]*DomainCertificates { return nil } +func (m *CreateSpecType) GetZtnaProxyConfigurations() *ZtnaProxyConfiguration { + if m != nil { + return m.ZtnaProxyConfigurations + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*CreateSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -5038,16 +5227,18 @@ type ReplaceSpecType struct { CsrfPolicy *schema.CsrfPolicy `protobuf:"bytes,80,opt,name=csrf_policy,json=csrfPolicy,proto3" json:"csrf_policy,omitempty"` CookiesToModify []*schema.CookieManipulationOptionType `protobuf:"bytes,81,rep,name=cookies_to_modify,json=cookiesToModify,proto3" json:"cookies_to_modify,omitempty"` ConnectionIdleTimeout uint32 `protobuf:"varint,82,opt,name=connection_idle_timeout,json=connectionIdleTimeout,proto3" json:"connection_idle_timeout,omitempty"` + HttpProtocolOptions *HttpProtocolOptions `protobuf:"bytes,89,opt,name=http_protocol_options,json=httpProtocolOptions,proto3" json:"http_protocol_options,omitempty"` DnsProxyConfiguration *DNSProxyConfiguration `protobuf:"bytes,1200,opt,name=dns_proxy_configuration,json=dnsProxyConfiguration,proto3" json:"dns_proxy_configuration,omitempty"` SlowDdosMitigation *SlowDDoSMitigation `protobuf:"bytes,83,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3" json:"slow_ddos_mitigation,omitempty"` ApiSpec *ApiSpec `protobuf:"bytes,84,opt,name=api_spec,json=apiSpec,proto3" json:"api_spec,omitempty"` DomainCertMap map[string]*DomainCertificates `protobuf:"bytes,88,rep,name=domain_cert_map,json=domainCertMap,proto3" json:"domain_cert_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ZtnaProxyConfigurations *ZtnaProxyConfiguration `protobuf:"bytes,1120,opt,name=ztna_proxy_configurations,json=ztnaProxyConfigurations,proto3" json:"ztna_proxy_configurations,omitempty"` } func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } func (*ReplaceSpecType) ProtoMessage() {} func (*ReplaceSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{28} + return fileDescriptor_df61af5ea37a6592, []int{30} } func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5544,6 +5735,13 @@ func (m *ReplaceSpecType) GetConnectionIdleTimeout() uint32 { return 0 } +func (m *ReplaceSpecType) GetHttpProtocolOptions() *HttpProtocolOptions { + if m != nil { + return m.HttpProtocolOptions + } + return nil +} + func (m *ReplaceSpecType) GetDnsProxyConfiguration() *DNSProxyConfiguration { if m != nil { return m.DnsProxyConfiguration @@ -5572,6 +5770,13 @@ func (m *ReplaceSpecType) GetDomainCertMap() map[string]*DomainCertificates { return nil } +func (m *ReplaceSpecType) GetZtnaProxyConfigurations() *ZtnaProxyConfiguration { + if m != nil { + return m.ZtnaProxyConfigurations + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*ReplaceSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -5678,16 +5883,18 @@ type GetSpecType struct { // // *GetSpecType_NotReady // *GetSpecType_Ready - DnsZoneStateChoice isGetSpecType_DnsZoneStateChoice `protobuf_oneof:"dns_zone_state_choice"` - SlowDdosMitigation *SlowDDoSMitigation `protobuf:"bytes,83,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3" json:"slow_ddos_mitigation,omitempty"` - ApiSpec *ApiSpec `protobuf:"bytes,84,opt,name=api_spec,json=apiSpec,proto3" json:"api_spec,omitempty"` - DomainCertMap map[string]*DomainCertificates `protobuf:"bytes,88,rep,name=domain_cert_map,json=domainCertMap,proto3" json:"domain_cert_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + DnsZoneStateChoice isGetSpecType_DnsZoneStateChoice `protobuf_oneof:"dns_zone_state_choice"` + SlowDdosMitigation *SlowDDoSMitigation `protobuf:"bytes,83,opt,name=slow_ddos_mitigation,json=slowDdosMitigation,proto3" json:"slow_ddos_mitigation,omitempty"` + ApiSpec *ApiSpec `protobuf:"bytes,84,opt,name=api_spec,json=apiSpec,proto3" json:"api_spec,omitempty"` + DomainCertMap map[string]*DomainCertificates `protobuf:"bytes,88,rep,name=domain_cert_map,json=domainCertMap,proto3" json:"domain_cert_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + HttpProtocolOptions *HttpProtocolOptions `protobuf:"bytes,89,opt,name=http_protocol_options,json=httpProtocolOptions,proto3" json:"http_protocol_options,omitempty"` + ZtnaProxyConfigurations *ZtnaProxyConfiguration `protobuf:"bytes,1120,opt,name=ztna_proxy_configurations,json=ztnaProxyConfigurations,proto3" json:"ztna_proxy_configurations,omitempty"` } func (m *GetSpecType) Reset() { *m = GetSpecType{} } func (*GetSpecType) ProtoMessage() {} func (*GetSpecType) Descriptor() ([]byte, []int) { - return fileDescriptor_df61af5ea37a6592, []int{29} + return fileDescriptor_df61af5ea37a6592, []int{31} } func (m *GetSpecType) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6294,6 +6501,20 @@ func (m *GetSpecType) GetDomainCertMap() map[string]*DomainCertificates { return nil } +func (m *GetSpecType) GetHttpProtocolOptions() *HttpProtocolOptions { + if m != nil { + return m.HttpProtocolOptions + } + return nil +} + +func (m *GetSpecType) GetZtnaProxyConfigurations() *ZtnaProxyConfiguration { + if m != nil { + return m.ZtnaProxyConfigurations + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*GetSpecType) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -6364,6 +6585,8 @@ func init() { golang_proto.RegisterType((*CdnServiceType)(nil), "ves.io.schema.virtual_host.CdnServiceType") proto.RegisterType((*ClientIPHeaders)(nil), "ves.io.schema.virtual_host.ClientIPHeaders") golang_proto.RegisterType((*ClientIPHeaders)(nil), "ves.io.schema.virtual_host.ClientIPHeaders") + proto.RegisterType((*ZtnaProxyConfiguration)(nil), "ves.io.schema.virtual_host.ZtnaProxyConfiguration") + golang_proto.RegisterType((*ZtnaProxyConfiguration)(nil), "ves.io.schema.virtual_host.ZtnaProxyConfiguration") proto.RegisterType((*DNSProxyConfiguration)(nil), "ves.io.schema.virtual_host.DNSProxyConfiguration") golang_proto.RegisterType((*DNSProxyConfiguration)(nil), "ves.io.schema.virtual_host.DNSProxyConfiguration") proto.RegisterType((*DNSDDoSProfile)(nil), "ves.io.schema.virtual_host.DNSDDoSProfile") @@ -6378,6 +6601,8 @@ func init() { golang_proto.RegisterType((*ApiSpec)(nil), "ves.io.schema.virtual_host.ApiSpec") proto.RegisterType((*OpenApiValidationSettings)(nil), "ves.io.schema.virtual_host.OpenApiValidationSettings") golang_proto.RegisterType((*OpenApiValidationSettings)(nil), "ves.io.schema.virtual_host.OpenApiValidationSettings") + proto.RegisterType((*Http1ProtocolOptions)(nil), "ves.io.schema.virtual_host.Http1ProtocolOptions") + golang_proto.RegisterType((*Http1ProtocolOptions)(nil), "ves.io.schema.virtual_host.Http1ProtocolOptions") proto.RegisterType((*HttpProtocolOptions)(nil), "ves.io.schema.virtual_host.HttpProtocolOptions") golang_proto.RegisterType((*HttpProtocolOptions)(nil), "ves.io.schema.virtual_host.HttpProtocolOptions") proto.RegisterType((*HttpRedirectOptions)(nil), "ves.io.schema.virtual_host.HttpRedirectOptions") @@ -6418,474 +6643,490 @@ func init() { } var fileDescriptor_df61af5ea37a6592 = []byte{ - // 7472 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x6c, 0x1c, 0x57, - 0x9a, 0x1e, 0x0f, 0xd9, 0xcd, 0x6e, 0x1e, 0xde, 0x8a, 0x87, 0xb7, 0x12, 0x25, 0x53, 0x2d, 0xca, - 0x96, 0x68, 0xba, 0xc5, 0x4b, 0x93, 0x14, 0x45, 0xcd, 0xd8, 0xe3, 0x6e, 0x36, 0x2d, 0x92, 0xa6, - 0x28, 0xba, 0x48, 0xd3, 0x97, 0x99, 0x9d, 0x72, 0xb1, 0xeb, 0x90, 0x2c, 0xa9, 0x58, 0xd5, 0xae, - 0xaa, 0xa6, 0xc4, 0x49, 0x08, 0x78, 0x1d, 0x24, 0xd9, 0xf8, 0x61, 0x77, 0xe2, 0x04, 0x08, 0xe0, - 0xa7, 0x64, 0xf7, 0x21, 0x89, 0x16, 0x08, 0xf6, 0x25, 0x40, 0xb2, 0xed, 0x00, 0xc2, 0x00, 0x83, - 0x1d, 0xec, 0xc3, 0x86, 0x41, 0x16, 0x88, 0x31, 0xc8, 0x83, 0x87, 0x83, 0x05, 0xbc, 0x93, 0x64, - 0x63, 0x4c, 0x36, 0x59, 0xc7, 0xc9, 0xee, 0x04, 0xe7, 0x52, 0xd5, 0x55, 0xd5, 0xd5, 0x4d, 0x8a, - 0x92, 0x27, 0x73, 0xe1, 0x0b, 0xd1, 0x7d, 0xce, 0xff, 0x7f, 0xe7, 0x52, 0xe7, 0xfc, 0xe7, 0x3f, - 0xdf, 0xff, 0x57, 0x13, 0x5e, 0xd9, 0xc3, 0xf6, 0xa8, 0x66, 0x8e, 0xd9, 0x85, 0x1d, 0xbc, 0xab, - 0x8c, 0xed, 0x69, 0x96, 0x53, 0x52, 0x74, 0x79, 0xc7, 0xb4, 0x9d, 0x31, 0x67, 0xbf, 0x88, 0xed, - 0xd1, 0xa2, 0x65, 0x3a, 0x26, 0x1a, 0x60, 0x72, 0xa3, 0x4c, 0x6e, 0xd4, 0x2f, 0x37, 0x70, 0x6d, - 0x5b, 0x73, 0x76, 0x4a, 0x9b, 0xa3, 0x05, 0x73, 0x77, 0x6c, 0xdb, 0xdc, 0x36, 0xc7, 0xa8, 0xca, - 0x66, 0x69, 0x8b, 0x7e, 0xa3, 0x5f, 0xe8, 0x27, 0x06, 0x35, 0x70, 0x61, 0xdb, 0x34, 0xb7, 0x75, - 0x5c, 0x91, 0xb2, 0x1d, 0xab, 0x54, 0x70, 0x78, 0xed, 0xc5, 0x70, 0xad, 0xa3, 0xed, 0x62, 0xdb, - 0x51, 0x76, 0x8b, 0x5c, 0x60, 0x38, 0xd8, 0x63, 0xa5, 0xe4, 0xec, 0x60, 0xc3, 0xd1, 0x0a, 0x8a, - 0xa3, 0x99, 0x86, 0xbf, 0xcf, 0x03, 0x83, 0x41, 0xc9, 0x02, 0xb6, 0x1c, 0xd9, 0x5f, 0x7f, 0x29, - 0x54, 0xaf, 0x97, 0x6c, 0x07, 0x5b, 0x01, 0x88, 0xfe, 0xa0, 0x88, 0x81, 0xdd, 0x6e, 0x9e, 0x0f, - 0x56, 0x98, 0x45, 0xd2, 0xba, 0x1d, 0xdd, 0x45, 0x1b, 0x5b, 0x7b, 0x5a, 0x01, 0xcb, 0x45, 0x53, - 0xd7, 0x0a, 0xfb, 0x01, 0xfc, 0x73, 0x41, 0x49, 0x7f, 0xd5, 0x85, 0xd0, 0x93, 0x51, 0x74, 0x4d, - 0x55, 0x1c, 0xcc, 0x6b, 0x53, 0xe1, 0xe7, 0x86, 0xef, 0xcb, 0xc1, 0x4e, 0x5c, 0xac, 0x96, 0xb0, - 0x03, 0x0d, 0x8c, 0xd7, 0x7e, 0xf4, 0xb2, 0x6a, 0xd8, 0xb2, 0x66, 0x6c, 0x99, 0x63, 0xe6, 0xe6, - 0x5d, 0xec, 0x3e, 0x9b, 0xa1, 0x2c, 0x6c, 0xdf, 0x60, 0x52, 0x0b, 0xa6, 0xed, 0x2c, 0xe6, 0xd1, - 0x05, 0xd8, 0x62, 0x28, 0xbb, 0xd8, 0x2e, 0x2a, 0x05, 0x2c, 0x82, 0x14, 0x18, 0x6e, 0x91, 0x2a, - 0x05, 0x08, 0xc1, 0x18, 0xf9, 0x22, 0x36, 0xd2, 0x0a, 0xfa, 0x79, 0xe8, 0xb3, 0x38, 0x6c, 0xdf, - 0xc0, 0xd6, 0x9a, 0xa3, 0x38, 0x25, 0x7b, 0x7d, 0xbf, 0x88, 0xd1, 0x3f, 0x02, 0xb0, 0xbf, 0x60, - 0x2a, 0x3a, 0xb6, 0x0b, 0x58, 0x95, 0xfd, 0xbd, 0xb0, 0x45, 0x90, 0x6a, 0x1a, 0x6e, 0xcd, 0x3c, - 0x3f, 0x5a, 0x7b, 0xf1, 0x8d, 0x06, 0x3a, 0x94, 0x1b, 0xff, 0xe4, 0x00, 0x7c, 0x56, 0x06, 0xe0, - 0x0f, 0xff, 0xfc, 0x51, 0x13, 0xfc, 0x10, 0x24, 0x86, 0xe2, 0x56, 0xd3, 0xf0, 0x7b, 0x8d, 0xe4, - 0x6b, 0xcb, 0x87, 0xa0, 0x79, 0x28, 0x66, 0x35, 0xa6, 0x68, 0x65, 0xfc, 0x43, 0xd0, 0x28, 0x02, - 0x11, 0x48, 0xbd, 0x5e, 0xdb, 0x3e, 0x24, 0x1b, 0x7d, 0x04, 0xe0, 0x79, 0xc3, 0x34, 0xe4, 0x5a, - 0x3d, 0x6b, 0xfc, 0xea, 0x7b, 0x26, 0x1a, 0xa6, 0x31, 0x17, 0xd9, 0xb9, 0xdb, 0x50, 0x50, 0xd4, - 0x3d, 0x6c, 0x39, 0x9a, 0xed, 0xae, 0x2a, 0xb1, 0x29, 0x05, 0x86, 0x5b, 0x33, 0x43, 0x55, 0x1d, - 0xc2, 0xf7, 0xed, 0xd1, 0x3b, 0xf4, 0x21, 0x4a, 0x78, 0x8b, 0x4c, 0xb8, 0xd4, 0xe9, 0xe9, 0xae, - 0x52, 0x55, 0xf4, 0x16, 0x14, 0x7c, 0xc3, 0x64, 0xe3, 0x8b, 0xd1, 0xf1, 0x9d, 0x00, 0x2e, 0x07, - 0x2b, 0x9d, 0x96, 0x3a, 0x2b, 0x93, 0x49, 0x61, 0xd0, 0x3b, 0xb0, 0x27, 0x34, 0x8b, 0x0c, 0x3e, - 0x7e, 0x2a, 0x78, 0x14, 0x98, 0x11, 0x8a, 0x74, 0xf3, 0x9f, 0x80, 0x3f, 0x2e, 0x83, 0x0f, 0x01, - 0xbc, 0x02, 0x85, 0xac, 0x3b, 0xae, 0x14, 0x1b, 0xd8, 0x00, 0xaa, 0x9e, 0x27, 0x38, 0x06, 0xfb, - 0x3d, 0x88, 0x14, 0x9f, 0xd5, 0x14, 0x9d, 0xd6, 0x5c, 0x4f, 0xf5, 0x3c, 0x08, 0x71, 0x38, 0x03, - 0xcf, 0xaf, 0x98, 0xc6, 0xb5, 0x42, 0x0d, 0x25, 0x31, 0x7a, 0x84, 0x42, 0x7c, 0xe8, 0xf7, 0x00, - 0xec, 0x59, 0x52, 0xf6, 0x94, 0xb5, 0x82, 0xa5, 0x15, 0x9d, 0x39, 0xd3, 0xd8, 0xd2, 0xb6, 0xe9, - 0x8a, 0xbf, 0x04, 0xdb, 0x0a, 0x4a, 0x61, 0x07, 0xcb, 0x45, 0x0b, 0x6f, 0x69, 0x0f, 0xf8, 0xc6, - 0x69, 0xa5, 0x65, 0xab, 0xb4, 0x08, 0x7d, 0x1d, 0xb6, 0xdb, 0x54, 0x4d, 0x2e, 0x50, 0x3d, 0xba, - 0x87, 0x5a, 0x33, 0xfd, 0xa3, 0xcc, 0x3a, 0x8e, 0xba, 0xd6, 0x71, 0x74, 0x8d, 0xda, 0x4e, 0xa9, - 0xcd, 0xf6, 0x35, 0x82, 0x46, 0x60, 0x57, 0xa1, 0x64, 0x3b, 0xe6, 0xae, 0xcc, 0x41, 0x4a, 0x96, - 0x4e, 0x17, 0x48, 0x8b, 0xd4, 0xc9, 0x2a, 0x58, 0x9f, 0x5e, 0xb7, 0xf4, 0xa1, 0x3f, 0x6b, 0x84, - 0xfd, 0xf9, 0x7d, 0x43, 0xd9, 0xd5, 0x0a, 0x12, 0xde, 0xc3, 0x96, 0x8d, 0x57, 0x2d, 0xf3, 0xc1, - 0x3e, 0xed, 0xe8, 0xcb, 0xf0, 0x82, 0x85, 0x6d, 0x53, 0xdf, 0xc3, 0x32, 0x36, 0xd4, 0xa2, 0xa9, - 0x19, 0x8e, 0xac, 0x32, 0x59, 0x45, 0xd7, 0xf7, 0x69, 0xc7, 0x93, 0xd2, 0x00, 0x97, 0x99, 0xe7, - 0x22, 0xf9, 0x8a, 0x04, 0x7a, 0x0b, 0xf6, 0xd3, 0xda, 0x12, 0xb1, 0x4c, 0xb2, 0x81, 0x9d, 0xfb, - 0xa6, 0x75, 0x8f, 0x1a, 0x61, 0x3a, 0xa2, 0x8e, 0xcc, 0xa5, 0xd0, 0x12, 0xe0, 0x93, 0xbb, 0xc2, - 0x24, 0xe9, 0x7a, 0xed, 0xad, 0x20, 0xf8, 0x8a, 0x91, 0x0c, 0x51, 0x35, 0xb4, 0xd8, 0x44, 0x17, - 0xd6, 0x85, 0x10, 0x6a, 0x70, 0x49, 0xa1, 0x87, 0x07, 0x9d, 0xee, 0x4e, 0xe5, 0x7a, 0x52, 0x57, - 0x55, 0x23, 0xe8, 0x15, 0x88, 0x0a, 0xa6, 0x61, 0xe0, 0x02, 0x6d, 0x80, 0x1c, 0x43, 0x66, 0xc9, - 0x11, 0xe3, 0x29, 0x30, 0xdc, 0x9e, 0xeb, 0xff, 0x61, 0x19, 0xc4, 0x32, 0xe3, 0xe3, 0xe3, 0xbf, - 0xf5, 0x31, 0x68, 0x20, 0x2b, 0xb4, 0x79, 0x24, 0x26, 0x3e, 0xfa, 0xf7, 0xcf, 0x4a, 0x5d, 0x15, - 0x95, 0x75, 0xa6, 0xb1, 0x14, 0x4b, 0xc6, 0x84, 0xf8, 0xd0, 0x3f, 0x6c, 0x84, 0x9d, 0x73, 0xe6, - 0x6e, 0xd1, 0xc2, 0xb6, 0x4d, 0x2a, 0xc9, 0x10, 0xc6, 0x61, 0x47, 0xc1, 0x34, 0x1c, 0x6c, 0x38, - 0xb2, 0x8e, 0x8d, 0x6d, 0x67, 0x87, 0xce, 0x68, 0x7b, 0xae, 0x85, 0x20, 0xc6, 0x46, 0x1a, 0x87, - 0x07, 0xa5, 0x76, 0x2e, 0xb0, 0x4c, 0xeb, 0xd1, 0x3a, 0x6c, 0x73, 0x35, 0xf8, 0x24, 0x36, 0x0d, - 0xb7, 0xe4, 0x26, 0x4e, 0x64, 0x54, 0x84, 0x8c, 0x6f, 0x2b, 0xb5, 0x72, 0x18, 0xda, 0x8f, 0x49, - 0xd8, 0xa7, 0x6a, 0xb6, 0xb2, 0xa9, 0x63, 0xd9, 0x34, 0x64, 0xec, 0x28, 0xdb, 0xf2, 0x0e, 0x56, - 0x54, 0x6c, 0xd1, 0x45, 0x93, 0x94, 0xba, 0x79, 0xed, 0x1d, 0x63, 0xde, 0x51, 0xb6, 0x17, 0x68, - 0x15, 0xca, 0xc2, 0x67, 0x2c, 0xbc, 0x6b, 0xee, 0x61, 0x59, 0x29, 0x14, 0x70, 0xd1, 0x91, 0xb1, - 0x51, 0x30, 0x55, 0xcd, 0xf0, 0x74, 0x63, 0xee, 0xea, 0x20, 0x42, 0x59, 0x2a, 0x33, 0xcf, 0x45, - 0x18, 0xc4, 0xd0, 0x3f, 0x6b, 0x84, 0xfd, 0x64, 0x87, 0xf0, 0xc5, 0xbb, 0xa3, 0xe8, 0x64, 0x1a, - 0x30, 0xed, 0xd3, 0x2b, 0xb0, 0xf3, 0xae, 0xed, 0xae, 0x5f, 0x15, 0xeb, 0xca, 0x3e, 0x5d, 0x31, - 0xed, 0xb9, 0x41, 0x32, 0xf5, 0xd3, 0xe3, 0xe3, 0xe3, 0x5f, 0x94, 0x41, 0x83, 0x3b, 0xfd, 0x2d, - 0x23, 0x09, 0xf1, 0xd3, 0x3f, 0x6d, 0x1a, 0xfe, 0x2c, 0x21, 0xb5, 0xdf, 0xb5, 0xd9, 0xea, 0xce, - 0x13, 0x25, 0x94, 0x83, 0xed, 0x05, 0xd3, 0xbc, 0xa7, 0x61, 0x19, 0x3f, 0x28, 0x6a, 0x16, 0x33, - 0x94, 0xed, 0xb9, 0x67, 0x08, 0xca, 0xe4, 0x75, 0x0f, 0x85, 0xce, 0x52, 0x72, 0xa4, 0x59, 0x7c, - 0xef, 0xf7, 0xe2, 0xc3, 0x40, 0x6a, 0x63, 0x3a, 0xf3, 0x54, 0x05, 0xe5, 0x61, 0x2b, 0xdf, 0x4f, - 0x45, 0x65, 0x1b, 0xd3, 0x81, 0xb5, 0xe4, 0x2e, 0x7f, 0x51, 0x06, 0xb1, 0xdf, 0xfd, 0x18, 0xb4, - 0x2b, 0x76, 0x41, 0xd3, 0xd2, 0xa9, 0x4d, 0xc5, 0xc6, 0xd7, 0xa7, 0x68, 0x67, 0xac, 0x84, 0xf8, - 0xde, 0x7b, 0xb1, 0xef, 0x02, 0x20, 0x41, 0xa6, 0xb7, 0xaa, 0x6c, 0xe3, 0x9b, 0xa3, 0xdf, 0x2b, - 0x83, 0x11, 0x38, 0x0c, 0x2f, 0x56, 0x86, 0x9c, 0xf2, 0xc6, 0x9c, 0x5a, 0x55, 0x2c, 0x65, 0x17, - 0x3b, 0xd8, 0xb2, 0x51, 0x3c, 0x93, 0x9e, 0x4c, 0x4f, 0x2d, 0xc5, 0x92, 0x40, 0x68, 0x1c, 0xfa, - 0x0f, 0x00, 0xf6, 0xcc, 0x29, 0x45, 0xa7, 0xb0, 0xa3, 0x04, 0x27, 0xa8, 0x6a, 0x60, 0x8d, 0x4f, - 0x3c, 0xb0, 0xa6, 0xd3, 0x0d, 0xec, 0xf9, 0xef, 0x95, 0xc1, 0x73, 0xf0, 0x32, 0xbc, 0xc0, 0xfb, - 0x19, 0x3d, 0xaa, 0xa6, 0x4c, 0x7a, 0x92, 0x8f, 0xe9, 0xbb, 0x00, 0x9e, 0x5b, 0xc7, 0xbb, 0x45, - 0xd3, 0x52, 0xac, 0xfd, 0xd7, 0x6d, 0x6c, 0xe5, 0x74, 0xb3, 0x70, 0x4f, 0x33, 0x98, 0x79, 0x0c, - 0x75, 0x0a, 0x9c, 0xae, 0x53, 0xd7, 0xbe, 0x57, 0x06, 0xcf, 0xc3, 0xab, 0x70, 0xc8, 0x6b, 0x28, - 0x45, 0x5a, 0x4a, 0xb9, 0x4d, 0xf9, 0xbb, 0x06, 0x26, 0x86, 0x16, 0x61, 0x4b, 0x7e, 0x65, 0x4d, - 0xc2, 0x05, 0xd3, 0x52, 0x3d, 0xc7, 0x05, 0x54, 0x1c, 0x17, 0x52, 0xe6, 0x99, 0xad, 0x16, 0x89, - 0x7e, 0x46, 0x3d, 0x30, 0xbe, 0xa7, 0xe8, 0x25, 0x3e, 0x71, 0x12, 0xfb, 0x32, 0xf4, 0xaf, 0x9b, - 0xa0, 0x90, 0x2d, 0x39, 0xe6, 0x1c, 0xb6, 0x9c, 0x45, 0x63, 0xcb, 0xa4, 0x83, 0x32, 0x60, 0xa7, - 0x52, 0x72, 0x4c, 0x99, 0x3a, 0xa1, 0xb6, 0xa3, 0x38, 0x0c, 0xbd, 0x23, 0x33, 0x5a, 0xcf, 0x85, - 0x20, 0x10, 0xda, 0x16, 0xf7, 0x6d, 0x89, 0xcf, 0x84, 0x73, 0x7d, 0x3f, 0x2c, 0x03, 0x54, 0x81, - 0xd7, 0x1c, 0x4d, 0xd1, 0xb5, 0xef, 0x60, 0xa9, 0x5d, 0xe1, 0x65, 0x54, 0x0c, 0xe5, 0xa1, 0x50, - 0x69, 0xcf, 0xb7, 0x40, 0x5a, 0x33, 0x03, 0x55, 0x67, 0xc8, 0xba, 0xeb, 0x61, 0x4b, 0x1d, 0x2e, - 0x08, 0x5f, 0x1f, 0x23, 0xb0, 0xcb, 0xd7, 0xeb, 0x12, 0xb5, 0xa2, 0xee, 0x41, 0xe2, 0xb5, 0xc7, - 0x8a, 0xd1, 0xb0, 0xbf, 0x45, 0xcd, 0xb6, 0x4b, 0xdc, 0x04, 0xb4, 0x54, 0x50, 0x17, 0x69, 0x29, - 0x7a, 0x05, 0xb6, 0x12, 0xff, 0xd2, 0xa2, 0x93, 0xed, 0xfa, 0x02, 0xcf, 0xd5, 0x9b, 0x07, 0xef, - 0xd1, 0x48, 0x50, 0x35, 0x6c, 0xf6, 0x91, 0xba, 0x41, 0x74, 0x26, 0xc9, 0x7c, 0x12, 0xd7, 0x5e, - 0xdb, 0xc5, 0x62, 0xf3, 0x71, 0x63, 0xcc, 0x25, 0xb8, 0x23, 0x26, 0x75, 0x50, 0xe5, 0x35, 0xa2, - 0x4b, 0x6a, 0x87, 0x7e, 0x3f, 0x06, 0x7b, 0xb3, 0x81, 0xdb, 0x44, 0x1e, 0x3b, 0x8a, 0xa6, 0xdb, - 0xe8, 0x6d, 0xd8, 0x4a, 0xae, 0x19, 0xee, 0x59, 0x0c, 0x4e, 0x70, 0xc6, 0x9c, 0x7f, 0x78, 0xd0, - 0x11, 0xbc, 0x9a, 0x78, 0x66, 0x18, 0x48, 0x90, 0xd4, 0xf0, 0xb3, 0xfa, 0x55, 0xd8, 0x57, 0xb2, - 0xb1, 0x4c, 0xf1, 0x99, 0xb3, 0xed, 0x36, 0xc3, 0x3c, 0xba, 0x9e, 0x50, 0x33, 0xf3, 0xbb, 0x45, - 0x67, 0x7f, 0xa1, 0x41, 0xea, 0x2e, 0xd9, 0x98, 0xf4, 0x96, 0x35, 0xcb, 0xc1, 0x5e, 0xf3, 0x6c, - 0x42, 0x91, 0xac, 0x6e, 0x9b, 0x3e, 0x80, 0xd6, 0xcc, 0x48, 0x08, 0x23, 0xd8, 0xb1, 0xd1, 0x39, - 0xaa, 0x42, 0xf7, 0x83, 0xbd, 0xd0, 0xe0, 0x9a, 0x08, 0xf6, 0x1d, 0xbd, 0x02, 0xdb, 0x2c, 0xac, - 0x6a, 0x16, 0xe9, 0x18, 0x71, 0x23, 0x9a, 0xe9, 0x76, 0xbc, 0xf4, 0x45, 0x19, 0xd0, 0x63, 0x26, - 0x6e, 0x35, 0x89, 0xef, 0x51, 0x1b, 0x13, 0xb3, 0x1a, 0x05, 0xc0, 0x8b, 0xbe, 0x0b, 0xc0, 0x02, - 0x90, 0x5a, 0x5d, 0xc5, 0xd7, 0x2d, 0x1d, 0x65, 0xa1, 0xe0, 0xe1, 0x70, 0x1f, 0x42, 0x4c, 0xd4, - 0x19, 0x21, 0x90, 0x3a, 0x5d, 0x79, 0xee, 0x50, 0x70, 0x03, 0xda, 0x0b, 0x3b, 0x82, 0x4f, 0x09, - 0x35, 0x4d, 0xa4, 0x33, 0xb0, 0x0b, 0xb6, 0x49, 0x5c, 0x3e, 0xf5, 0xba, 0xb4, 0x8c, 0xc0, 0x74, - 0xee, 0x2a, 0xec, 0x09, 0xcc, 0x86, 0x5c, 0xd8, 0x31, 0xb5, 0x02, 0x46, 0x9d, 0x8f, 0xca, 0xa0, - 0xe9, 0xb0, 0x0c, 0x1a, 0x8f, 0xca, 0xa0, 0x69, 0x32, 0x3d, 0x95, 0xbb, 0x02, 0xbb, 0xfd, 0x63, - 0xf4, 0xcb, 0x35, 0x1f, 0x96, 0x41, 0x9c, 0xc8, 0x5d, 0x4f, 0xcf, 0x2c, 0xc5, 0x92, 0x8d, 0x42, - 0xd3, 0x52, 0x2c, 0x19, 0x17, 0x9a, 0x87, 0xfe, 0x32, 0x0e, 0x7b, 0x98, 0x9b, 0x99, 0x53, 0x6c, - 0xac, 0x7a, 0x26, 0x0f, 0x7d, 0x0b, 0xb6, 0xdd, 0x25, 0x4d, 0xf1, 0xef, 0x74, 0x9b, 0xb7, 0x66, - 0x26, 0xeb, 0x2d, 0xef, 0x1a, 0x67, 0x60, 0x2e, 0x76, 0x48, 0xd6, 0x69, 0xeb, 0x5d, 0xbb, 0x82, - 0x5e, 0x80, 0x5d, 0x05, 0x66, 0x65, 0x7d, 0x4d, 0xb0, 0x8d, 0x3d, 0x5e, 0xd7, 0x92, 0x44, 0x1c, - 0x21, 0x1c, 0x5f, 0x28, 0x84, 0xea, 0x90, 0x0d, 0xfb, 0x1d, 0xd7, 0x6a, 0xca, 0x25, 0x1b, 0x5b, - 0xf2, 0x26, 0xb7, 0x9a, 0x7c, 0x51, 0x4e, 0xd7, 0x6b, 0xaa, 0xa6, 0x65, 0xe7, 0xed, 0xf5, 0x3a, - 0x51, 0x02, 0x68, 0x16, 0xb6, 0x19, 0xa6, 0x6f, 0x50, 0xf1, 0xba, 0xcb, 0xbf, 0xd5, 0x30, 0x2b, - 0xfd, 0x5d, 0x83, 0x03, 0x8a, 0x7e, 0x5f, 0xd9, 0xb7, 0x65, 0x6c, 0x50, 0x2f, 0x26, 0xf0, 0x00, - 0x9a, 0xeb, 0x02, 0xf5, 0x33, 0xcd, 0x79, 0xaa, 0xb8, 0xe4, 0x9b, 0xe9, 0xdf, 0x80, 0x17, 0x83, - 0xa0, 0xd5, 0xf3, 0x9e, 0xa8, 0x8b, 0x7c, 0xc1, 0x8f, 0x1c, 0x9e, 0x7f, 0xf4, 0xf7, 0x01, 0x3c, - 0xb7, 0xab, 0xe8, 0x5a, 0x41, 0x33, 0x4b, 0x36, 0x9b, 0xe4, 0x5d, 0xcd, 0xd1, 0xb6, 0xe9, 0x92, - 0x16, 0x93, 0x27, 0x30, 0x31, 0xd7, 0x1e, 0x1e, 0xd4, 0x46, 0xf0, 0xdd, 0x36, 0xb9, 0xd1, 0xe9, - 0xf7, 0x64, 0xc9, 0xb4, 0xdf, 0xf6, 0x24, 0x73, 0xcf, 0x41, 0xc1, 0x1b, 0x92, 0xbb, 0xf4, 0xbb, - 0x1e, 0x95, 0x41, 0xfc, 0xb0, 0x0c, 0x62, 0x47, 0x65, 0x10, 0x9f, 0x4e, 0xb3, 0xc5, 0x4f, 0xdc, - 0xd8, 0xdf, 0x8e, 0xc3, 0x73, 0x6b, 0x3b, 0x4a, 0x11, 0xe7, 0x4c, 0x27, 0x8f, 0xb7, 0xb0, 0x61, - 0x63, 0xdf, 0xcd, 0x66, 0x1c, 0x76, 0x28, 0xc5, 0xa2, 0xce, 0x37, 0xa6, 0xac, 0xa9, 0xfc, 0xf4, - 0x6e, 0xe1, 0x06, 0x42, 0x4c, 0x49, 0xed, 0x3e, 0x81, 0x45, 0x15, 0x7d, 0x0d, 0xb6, 0x29, 0x45, - 0x8d, 0x99, 0xbf, 0x7b, 0xd8, 0x3d, 0xa3, 0xce, 0x85, 0x06, 0xbe, 0x86, 0x0b, 0x16, 0xa6, 0xbe, - 0xaa, 0x04, 0x95, 0xa2, 0x46, 0xf6, 0xff, 0xab, 0x78, 0x1f, 0xbd, 0x0d, 0x93, 0x9a, 0x61, 0x3b, - 0x8a, 0x51, 0xc0, 0x27, 0x72, 0xfc, 0x53, 0x0f, 0x0f, 0x06, 0x6c, 0xd2, 0x79, 0x79, 0xd3, 0x24, - 0x4e, 0x25, 0xed, 0xbe, 0xec, 0x42, 0x7c, 0x72, 0x00, 0x24, 0x0f, 0x0f, 0xdd, 0x80, 0x09, 0xd7, - 0xe5, 0x8f, 0x31, 0xbf, 0xf3, 0x51, 0x19, 0x80, 0x1f, 0x12, 0x8b, 0x11, 0x74, 0x3d, 0x89, 0xe7, - 0xff, 0xe9, 0x9f, 0x36, 0x49, 0xae, 0x38, 0xfa, 0x5d, 0x00, 0x3b, 0xdc, 0xfd, 0x42, 0x5d, 0x18, - 0xf7, 0x88, 0x5b, 0xa8, 0xb7, 0x6b, 0x6a, 0x4e, 0xea, 0xa8, 0xbb, 0x43, 0x88, 0x5b, 0x63, 0xcf, - 0x1b, 0x8e, 0xb5, 0x9f, 0x9b, 0xf0, 0x3d, 0xde, 0xd6, 0x8f, 0x40, 0x72, 0xa8, 0xd9, 0x8a, 0x09, - 0x29, 0x31, 0x45, 0xfb, 0xf3, 0x11, 0x68, 0x12, 0x98, 0x49, 0x86, 0x1f, 0x81, 0xc4, 0x08, 0xb5, - 0xd0, 0x29, 0xa9, 0x7d, 0xd3, 0x0f, 0x83, 0xd2, 0xe4, 0xf6, 0xa4, 0x9b, 0x8a, 0xca, 0xbd, 0x75, - 0x99, 0x3a, 0x3c, 0xd4, 0xb8, 0x4b, 0x02, 0xab, 0x61, 0x4e, 0xfa, 0x0a, 0x71, 0x7e, 0xfa, 0x61, - 0xe2, 0xae, 0x2d, 0x17, 0x15, 0x67, 0x87, 0xae, 0xf9, 0x16, 0xa9, 0xf9, 0xae, 0xbd, 0xaa, 0x38, - 0x3b, 0xe8, 0x25, 0x18, 0xdb, 0x35, 0x55, 0x2c, 0x26, 0xa9, 0x2f, 0x33, 0x52, 0x6f, 0x80, 0x95, - 0xb1, 0xdd, 0x36, 0x55, 0x2c, 0x51, 0xbd, 0x81, 0x97, 0x21, 0xaa, 0x1e, 0x1e, 0x12, 0x60, 0x13, - 0x59, 0x0b, 0xcc, 0xfd, 0x22, 0x1f, 0x2b, 0x9e, 0x56, 0xa3, 0xcf, 0xd3, 0xba, 0xd9, 0x78, 0x03, - 0x0c, 0xfd, 0x0e, 0x80, 0xed, 0x6b, 0x8c, 0x60, 0xcb, 0x9b, 0xbb, 0x8a, 0x66, 0xa0, 0x3e, 0xd8, - 0xac, 0xd2, 0x4f, 0x1c, 0x80, 0x7f, 0x43, 0xcf, 0xc1, 0x0e, 0x97, 0x89, 0xe3, 0xf5, 0x0c, 0xac, - 0xdd, 0x0e, 0xa8, 0x7f, 0x03, 0xf6, 0x6b, 0x86, 0x83, 0x2d, 0x43, 0xd1, 0xe5, 0x90, 0x3c, 0xf3, - 0x8f, 0x3d, 0x07, 0xa2, 0xd7, 0x95, 0x0b, 0xb4, 0x3f, 0xf4, 0xaf, 0x1a, 0x61, 0xc7, 0x9c, 0x6a, - 0xf0, 0x42, 0xba, 0x2f, 0xe6, 0x60, 0x97, 0x6a, 0xde, 0x37, 0xe8, 0x7c, 0xab, 0x58, 0xd7, 0xf6, - 0xb0, 0xe7, 0x8e, 0xd5, 0xb2, 0x1e, 0x82, 0xab, 0x90, 0xe7, 0xf2, 0xe8, 0x45, 0xd8, 0x41, 0x3e, - 0xc9, 0xb6, 0x63, 0x61, 0x65, 0xb7, 0x62, 0x8c, 0x6b, 0x21, 0xb4, 0x13, 0xe9, 0x35, 0x57, 0x18, - 0x9d, 0x87, 0x2d, 0x8c, 0x75, 0x70, 0x1c, 0x9d, 0x2d, 0x69, 0x29, 0x49, 0x0b, 0xd6, 0x1d, 0x1d, - 0x49, 0xb0, 0x33, 0x38, 0x56, 0x77, 0xcd, 0xd6, 0x65, 0xb8, 0x02, 0xe3, 0x96, 0x3a, 0x02, 0xf3, - 0x68, 0xe7, 0x2e, 0x55, 0x6e, 0xb7, 0xbe, 0x03, 0xb5, 0x91, 0x9c, 0x01, 0xe4, 0x40, 0xad, 0x5c, - 0x07, 0x54, 0xd8, 0x39, 0xa7, 0x6b, 0xd8, 0x70, 0x16, 0x57, 0xd9, 0x9a, 0xb3, 0xd1, 0x6b, 0xb0, - 0xab, 0x40, 0x8b, 0x64, 0xad, 0xc8, 0x57, 0x28, 0x63, 0x03, 0x5b, 0x72, 0xcf, 0x91, 0x95, 0xdd, - 0xf6, 0x21, 0x68, 0x19, 0x4a, 0x58, 0xe4, 0x8c, 0x60, 0xd7, 0x5d, 0x6a, 0xe4, 0xe2, 0x01, 0x2a, - 0x8a, 0x41, 0x16, 0x39, 0xe4, 0xd0, 0xef, 0x34, 0xc1, 0xde, 0xfc, 0xca, 0x1a, 0x65, 0x37, 0xd8, - 0xee, 0x2a, 0x59, 0xcc, 0x7f, 0x58, 0x83, 0x6d, 0xaa, 0x6a, 0xda, 0x72, 0xd1, 0x32, 0xb7, 0x34, - 0xdd, 0x35, 0xeb, 0x23, 0xc7, 0x38, 0xa4, 0xf9, 0xbc, 0x49, 0xc0, 0x88, 0x86, 0x7b, 0x50, 0x13, - 0x14, 0x5e, 0x84, 0x36, 0x60, 0xbb, 0x4b, 0xf2, 0x30, 0xd4, 0x24, 0x45, 0x7d, 0xe1, 0x18, 0xd4, - 0x39, 0x46, 0x02, 0xf9, 0x61, 0xdb, 0x0a, 0xbe, 0x32, 0x74, 0x0f, 0x76, 0x53, 0xa7, 0xb6, 0x60, - 0xea, 0xc4, 0x72, 0x15, 0x19, 0xd7, 0x20, 0xb6, 0x9c, 0x94, 0xfe, 0xcb, 0xf5, 0x3d, 0x3c, 0x88, - 0x42, 0x90, 0x90, 0x5b, 0xb8, 0xe8, 0x95, 0xa1, 0x6f, 0xc1, 0x66, 0xcd, 0x2a, 0xe9, 0xd8, 0x16, - 0xe1, 0x89, 0x09, 0xbb, 0xd4, 0xc3, 0x83, 0x38, 0x55, 0x3a, 0xf4, 0x9f, 0x3f, 0x82, 0xef, 0xd1, - 0x70, 0xcc, 0xa1, 0x4f, 0x00, 0xec, 0x08, 0x4e, 0x24, 0x5a, 0x86, 0x7d, 0xfc, 0xb4, 0xa5, 0x4f, - 0xc4, 0x77, 0x22, 0xd6, 0xdf, 0x2d, 0x3d, 0x4c, 0x2b, 0xaf, 0x9a, 0x76, 0xe5, 0x64, 0x43, 0x2b, - 0xb0, 0xdf, 0xe5, 0x35, 0xc2, 0x70, 0xf5, 0xb7, 0x4e, 0x2f, 0x57, 0x0b, 0xe2, 0xe5, 0x86, 0x60, - 0x5f, 0x08, 0xc7, 0x5d, 0xd9, 0x49, 0xee, 0x52, 0x02, 0xbe, 0xa4, 0xff, 0x04, 0xc0, 0xce, 0xd0, - 0xd3, 0x44, 0x59, 0x08, 0xd9, 0x8a, 0xb0, 0xb5, 0xef, 0x60, 0x7e, 0xa8, 0xa4, 0xc8, 0x6d, 0x7d, - 0x62, 0x3c, 0x33, 0xf5, 0x79, 0x19, 0x00, 0x7e, 0xaa, 0xb4, 0x92, 0xa9, 0x4a, 0x8c, 0xc4, 0xc5, - 0xf7, 0x56, 0x87, 0xc1, 0x42, 0x83, 0xc4, 0xb6, 0xed, 0x9a, 0xf6, 0x1d, 0x8c, 0x96, 0xa0, 0xdb, - 0x33, 0x39, 0xb8, 0xb8, 0x8e, 0xb9, 0x2b, 0x70, 0xa5, 0xc0, 0xe2, 0x4a, 0xc1, 0x9e, 0x00, 0x46, - 0x8d, 0xa1, 0x30, 0xa7, 0x77, 0xe8, 0x0f, 0x1b, 0x21, 0x5a, 0xd3, 0xcd, 0xfb, 0xe4, 0x61, 0xf9, - 0x66, 0xf8, 0x0d, 0xd8, 0x6f, 0xe1, 0x77, 0x4b, 0xd8, 0x76, 0xdc, 0x5d, 0xea, 0x11, 0x65, 0x8c, - 0x8e, 0xb8, 0xf8, 0xc3, 0x32, 0x88, 0x4f, 0x8c, 0x47, 0xd0, 0x35, 0x7f, 0xf0, 0x13, 0x30, 0x7c, - 0xd8, 0x29, 0xf5, 0x72, 0x7d, 0xbe, 0x4d, 0x39, 0x69, 0x86, 0x96, 0x60, 0xa7, 0x0b, 0xec, 0x02, - 0x82, 0x0a, 0xe0, 0xf5, 0x28, 0xc0, 0x4f, 0xff, 0x39, 0x1a, 0x3e, 0xec, 0x5c, 0x68, 0x90, 0x3a, - 0xb8, 0xa6, 0x8b, 0xe5, 0x5b, 0x06, 0x61, 0xcc, 0x93, 0x2d, 0x03, 0x29, 0x80, 0x97, 0x7b, 0x1e, - 0xf6, 0x85, 0x70, 0xfc, 0x06, 0x0e, 0x70, 0xb7, 0xa9, 0x69, 0x82, 0x1a, 0x38, 0xe2, 0x34, 0x1d, - 0x02, 0x88, 0x98, 0x55, 0xac, 0x5c, 0xe8, 0x31, 0xb9, 0x56, 0x0a, 0x96, 0xad, 0xd0, 0x0b, 0xb3, - 0x5b, 0x76, 0xa2, 0xbb, 0x65, 0x57, 0xb5, 0x73, 0xd7, 0x69, 0xd9, 0x4a, 0x00, 0xfb, 0xdb, 0x10, - 0xe1, 0x82, 0x1a, 0x46, 0x6f, 0x3c, 0x1d, 0x7a, 0x17, 0x85, 0xf2, 0xe3, 0x0f, 0xfd, 0xbd, 0x26, - 0x98, 0xc8, 0x16, 0xb5, 0xb5, 0x22, 0x2e, 0xa0, 0x02, 0xf1, 0xfa, 0x34, 0xe2, 0x4f, 0x69, 0x86, - 0x46, 0x77, 0x17, 0x38, 0xb1, 0x35, 0x12, 0xc9, 0x3d, 0x39, 0xa0, 0xec, 0x9e, 0xae, 0xed, 0x4a, - 0x51, 0xcb, 0x7b, 0xa5, 0xe8, 0xdb, 0xf0, 0xbc, 0xc7, 0x51, 0x16, 0xb1, 0x21, 0x13, 0x25, 0x1e, - 0x13, 0x3b, 0x66, 0x3f, 0x7b, 0x07, 0xf6, 0x42, 0x83, 0x24, 0xba, 0x4c, 0x66, 0x11, 0x1b, 0xd9, - 0xa2, 0xb6, 0xe1, 0x01, 0xa0, 0x03, 0x38, 0xc0, 0x2d, 0x4f, 0x14, 0x7c, 0xec, 0xf8, 0x6b, 0x4f, - 0x15, 0xe4, 0x1a, 0x76, 0x1c, 0xcd, 0xd8, 0xb6, 0xfd, 0xed, 0xf7, 0xb3, 0x36, 0xaa, 0x64, 0x73, - 0x13, 0x70, 0x20, 0xa2, 0x5d, 0x77, 0x5d, 0x75, 0x87, 0x6e, 0xac, 0x9f, 0xb3, 0xed, 0x49, 0x36, - 0xe6, 0x5f, 0x03, 0x78, 0xae, 0x66, 0xd3, 0x68, 0x0e, 0x0e, 0x6e, 0x29, 0x9a, 0x2e, 0x9b, 0x7b, - 0xd8, 0x22, 0x66, 0x47, 0x95, 0x37, 0x4d, 0x75, 0x3f, 0x3c, 0xb2, 0xa4, 0x74, 0x9e, 0x48, 0xdd, - 0x71, 0x85, 0x72, 0xa6, 0xba, 0xef, 0x9b, 0x9a, 0x05, 0x78, 0x49, 0xd1, 0x75, 0xf3, 0xbe, 0x6c, - 0x1a, 0xfa, 0xbe, 0x4c, 0x0e, 0x07, 0x6d, 0x4b, 0xc3, 0xaa, 0xfc, 0x6e, 0x09, 0x5b, 0xfb, 0x2e, - 0xd3, 0x10, 0xa7, 0x38, 0xcf, 0x50, 0xc1, 0x3b, 0x86, 0xbe, 0xbf, 0xe6, 0x8a, 0xbd, 0x46, 0xa4, - 0x38, 0x99, 0xf0, 0x0d, 0x78, 0x21, 0x12, 0xc9, 0x3d, 0xe1, 0x9b, 0x29, 0xc8, 0xb9, 0x6a, 0x10, - 0x6e, 0x1d, 0xfc, 0x26, 0x69, 0x29, 0x96, 0x6c, 0x12, 0x62, 0x43, 0x87, 0x8d, 0xb0, 0x7b, 0xc1, - 0x71, 0x8a, 0xab, 0xfc, 0xf4, 0xba, 0xc3, 0x82, 0xa0, 0x68, 0x03, 0x5e, 0xd8, 0x71, 0x9c, 0xa2, - 0xec, 0x1d, 0x75, 0xfc, 0xe9, 0xee, 0x4d, 0xd0, 0xc6, 0x8f, 0x39, 0x4f, 0xc4, 0x1d, 0x1f, 0x24, - 0xbb, 0xc1, 0x6d, 0x4c, 0x90, 0x1e, 0xd5, 0xc6, 0xcd, 0x30, 0xdc, 0xa6, 0xc7, 0xc6, 0xcd, 0x50, - 0x5c, 0x09, 0x0e, 0xd4, 0xea, 0xef, 0x5e, 0x86, 0xaf, 0xbf, 0x5a, 0xa8, 0x7d, 0x51, 0xbd, 0xdd, - 0xc8, 0xdc, 0x8c, 0xfd, 0xf4, 0x25, 0x30, 0x91, 0x7b, 0x1e, 0xf6, 0x04, 0x91, 0x7d, 0x77, 0xbc, - 0x18, 0xf7, 0xc6, 0x02, 0x94, 0x73, 0x2f, 0x9b, 0x51, 0x97, 0x4e, 0xe1, 0x33, 0x3a, 0xf4, 0x6f, - 0x5f, 0x86, 0x1d, 0xb7, 0x74, 0x73, 0x53, 0xd1, 0xc9, 0x63, 0xa1, 0x7e, 0xed, 0x8b, 0x30, 0xe1, - 0xba, 0x8b, 0x2c, 0x12, 0x71, 0xd9, 0x1f, 0x89, 0xf8, 0xad, 0xc6, 0x8a, 0x11, 0xb9, 0xe4, 0x3b, - 0xff, 0x5d, 0x1d, 0xb4, 0x08, 0x9b, 0x2d, 0xb3, 0x44, 0x0c, 0xd3, 0x49, 0x6e, 0x6f, 0xdd, 0x0f, - 0x0f, 0xe2, 0x54, 0x9c, 0xde, 0x72, 0x3e, 0x24, 0xb7, 0x9c, 0x46, 0x89, 0x03, 0xa0, 0xb7, 0x60, - 0xe7, 0x5d, 0x8f, 0x45, 0xa1, 0xa1, 0x6b, 0x3e, 0x67, 0xe3, 0xc7, 0x11, 0x2f, 0xe1, 0xf0, 0x9c, - 0xd4, 0x51, 0x01, 0x5a, 0x34, 0xb6, 0x4c, 0xf4, 0x0e, 0x44, 0xa1, 0x28, 0xa2, 0xe6, 0x5d, 0xe9, - 0x8e, 0xed, 0x71, 0x55, 0x00, 0x52, 0xea, 0x0a, 0x86, 0x5f, 0x35, 0x6c, 0xa3, 0xbd, 0xca, 0x81, - 0xe2, 0x9d, 0xa2, 0xa6, 0xac, 0xa8, 0xaa, 0xd8, 0x4c, 0x5b, 0x09, 0x3b, 0x8d, 0x6c, 0x37, 0xdc, - 0x56, 0x0c, 0xad, 0x58, 0xd2, 0xe9, 0x1e, 0x65, 0xcf, 0x88, 0x36, 0xda, 0xe3, 0xcd, 0x79, 0xca, - 0x37, 0xe7, 0xdd, 0xa1, 0x63, 0xd6, 0xcc, 0xaa, 0x2a, 0x7a, 0x40, 0xa3, 0x73, 0x45, 0x93, 0xdc, - 0x82, 0x43, 0x0d, 0x27, 0x9e, 0x56, 0xc3, 0x3d, 0x6e, 0x0b, 0x81, 0x96, 0xef, 0xc0, 0x73, 0x11, - 0x23, 0x66, 0xa1, 0x22, 0xb1, 0x8b, 0x2e, 0xa5, 0x68, 0xb8, 0xbe, 0xf0, 0x38, 0x24, 0xaa, 0x83, - 0x5e, 0x83, 0x03, 0x51, 0x43, 0xe1, 0x88, 0xc9, 0x3a, 0x88, 0xfd, 0x55, 0x1d, 0xe4, 0x90, 0x77, - 0x60, 0x87, 0xa3, 0xdb, 0xcc, 0xbe, 0xd1, 0x38, 0x01, 0x77, 0xb2, 0xaf, 0x84, 0x26, 0x25, 0x6f, - 0xde, 0x37, 0xd8, 0x9d, 0x6c, 0x5d, 0xb7, 0x99, 0xa1, 0x23, 0xf3, 0x41, 0x6e, 0x60, 0x0e, 0x2f, - 0x60, 0x61, 0x86, 0x15, 0xd8, 0x49, 0x00, 0x29, 0x41, 0xce, 0xad, 0xe6, 0x06, 0x45, 0x7c, 0x36, - 0x84, 0xe8, 0x3b, 0x69, 0xab, 0xf0, 0x48, 0x9d, 0x67, 0x4d, 0x59, 0x48, 0x02, 0xd2, 0xcb, 0xf7, - 0x0b, 0x27, 0xcc, 0x45, 0xa0, 0x6b, 0x9c, 0xc5, 0x2f, 0x96, 0x60, 0xfb, 0x66, 0x69, 0x6b, 0x0b, - 0x5b, 0x6e, 0x12, 0x41, 0x1b, 0xed, 0xce, 0xc5, 0x10, 0x52, 0x8e, 0xca, 0x54, 0x76, 0x88, 0x7b, - 0x2f, 0x61, 0xba, 0x3c, 0x89, 0xe0, 0x65, 0xd8, 0x5a, 0x30, 0x2d, 0xdb, 0x45, 0x6a, 0x8f, 0xe4, - 0x71, 0xe6, 0x4c, 0xcb, 0xe6, 0xa4, 0x29, 0xc3, 0x80, 0x05, 0xaf, 0x04, 0x7d, 0x0d, 0xc6, 0x8b, - 0xe4, 0x72, 0x26, 0x76, 0xd2, 0xf1, 0xd4, 0x0d, 0x08, 0x78, 0x31, 0x6a, 0x89, 0xe9, 0xa0, 0xeb, - 0xb0, 0xe9, 0xee, 0x7d, 0x47, 0x14, 0x4e, 0xb0, 0x2b, 0x9b, 0x1f, 0x1e, 0x10, 0x59, 0x89, 0xfc, - 0x41, 0x13, 0x30, 0x79, 0x5f, 0xd9, 0x62, 0xc1, 0x54, 0x44, 0xfb, 0xdc, 0x17, 0x52, 0x7e, 0x43, - 0x61, 0x69, 0x13, 0x89, 0xfb, 0xec, 0x03, 0xda, 0x85, 0xbd, 0x9c, 0xc0, 0x96, 0x2d, 0x16, 0x31, - 0x97, 0x59, 0xbf, 0xbb, 0x8f, 0x67, 0x7a, 0x6b, 0x44, 0xda, 0xf9, 0x6c, 0x74, 0xab, 0xd5, 0xd5, - 0xe8, 0x12, 0x6c, 0x53, 0x54, 0x55, 0xd6, 0x4d, 0xc6, 0x99, 0x89, 0x3d, 0xf4, 0x8c, 0x6c, 0x55, - 0x54, 0x75, 0x99, 0x17, 0x11, 0x0b, 0x55, 0xa8, 0x84, 0x96, 0xdd, 0xb5, 0xd5, 0x7b, 0xfc, 0x85, - 0x33, 0x14, 0x90, 0xe6, 0xdd, 0xe8, 0xf2, 0x81, 0xf1, 0xa5, 0xf6, 0xfb, 0x31, 0xd8, 0xce, 0x83, - 0x72, 0xd8, 0xb2, 0x4c, 0xcb, 0x16, 0xfb, 0xe8, 0x4c, 0x7f, 0xbd, 0x1e, 0x7a, 0xf0, 0xb0, 0x18, - 0x9d, 0xa3, 0xfa, 0xf3, 0x54, 0x9d, 0xd1, 0x58, 0x7f, 0x44, 0xef, 0x19, 0x91, 0x51, 0xbd, 0xb6, - 0x8f, 0xc8, 0x05, 0x7f, 0x24, 0x2e, 0xfe, 0xa7, 0xd8, 0x70, 0x13, 0xdd, 0xad, 0x1f, 0xb9, 0xb7, - 0xc8, 0x8e, 0x8f, 0x40, 0xeb, 0x48, 0x25, 0xea, 0x77, 0xf4, 0xe9, 0xf7, 0x9b, 0xbe, 0x0f, 0x3e, - 0xf8, 0x18, 0x3c, 0x02, 0xe8, 0xdf, 0x81, 0x9f, 0x94, 0xc1, 0xbf, 0x01, 0x0b, 0xeb, 0xeb, 0xab, - 0x29, 0xda, 0x50, 0xaa, 0x60, 0xaa, 0x38, 0x45, 0xd9, 0xa2, 0xd4, 0x64, 0x7a, 0x2a, 0x3d, 0x9d, - 0x32, 0xad, 0xd4, 0x26, 0x76, 0xee, 0x63, 0x6c, 0xa4, 0x26, 0xc7, 0xc7, 0x53, 0x8a, 0xa1, 0xa6, - 0xa6, 0x67, 0x67, 0x47, 0x53, 0xf3, 0xdb, 0xa3, 0xa9, 0x0d, 0x2a, 0x37, 0x95, 0x7a, 0x31, 0x35, - 0xf5, 0xe0, 0x01, 0x91, 0x54, 0x74, 0x3d, 0x35, 0x35, 0x3e, 0x7e, 0x6d, 0x6a, 0x76, 0x36, 0x85, - 0x3d, 0x3c, 0x3b, 0x9d, 0x9a, 0x4e, 0xbd, 0x98, 0x9a, 0xae, 0xc8, 0x4c, 0x8f, 0x8f, 0x5f, 0x9b, - 0x0e, 0xca, 0x8c, 0xa6, 0xde, 0x32, 0x4b, 0xa9, 0x82, 0x62, 0xa4, 0x14, 0xdd, 0x36, 0x53, 0xcc, - 0xd7, 0xd9, 0x4f, 0x29, 0x46, 0x0a, 0x3f, 0x50, 0x0a, 0x8e, 0x4f, 0x34, 0xa5, 0x6b, 0xf7, 0x70, - 0x6a, 0x6a, 0x7c, 0x6a, 0x94, 0x0c, 0xa5, 0xe7, 0x83, 0x8f, 0x81, 0x80, 0x3a, 0x8e, 0xca, 0x00, - 0xb2, 0x11, 0xcc, 0x99, 0x2a, 0x26, 0x15, 0xf0, 0x83, 0x8f, 0x41, 0x33, 0x8a, 0xfd, 0xa0, 0x0c, - 0x1a, 0xc8, 0xd7, 0xe6, 0x0f, 0x3e, 0x06, 0x8d, 0x49, 0x3a, 0xfa, 0xec, 0x07, 0x1f, 0x83, 0x17, - 0x07, 0xbe, 0xf6, 0x93, 0x32, 0x98, 0x59, 0x73, 0x2c, 0xcd, 0xd8, 0x4e, 0x59, 0x98, 0x3c, 0x3f, - 0x6c, 0x10, 0x27, 0x90, 0xb7, 0xe4, 0x5a, 0xb9, 0x74, 0xaa, 0x64, 0x97, 0x14, 0x5d, 0xdf, 0x4f, - 0x29, 0xa9, 0x1d, 0x67, 0x57, 0xa7, 0x5d, 0x20, 0x28, 0xcf, 0x7c, 0xf0, 0x31, 0x38, 0x37, 0xd0, - 0x7f, 0x54, 0x06, 0xdd, 0xac, 0x61, 0x89, 0x6b, 0xa4, 0x88, 0x3b, 0xe8, 0xf5, 0x60, 0x80, 0xf4, - 0x20, 0xe6, 0xfb, 0xfa, 0x88, 0x71, 0x14, 0xbe, 0x87, 0x8b, 0x5e, 0xac, 0xf8, 0xea, 0x2a, 0xde, - 0x52, 0x4a, 0xba, 0xc3, 0x56, 0x0d, 0x67, 0x43, 0x2f, 0xd1, 0x15, 0xec, 0xba, 0xe2, 0x79, 0x26, - 0x41, 0x55, 0x19, 0x37, 0xf9, 0x32, 0xec, 0xdf, 0x55, 0x1e, 0xc8, 0xc1, 0x03, 0x82, 0xdd, 0x9a, - 0xfb, 0x03, 0xf9, 0x11, 0xe2, 0x3b, 0x52, 0xcf, 0xae, 0xf2, 0x40, 0xf2, 0x1f, 0x09, 0xf4, 0x9e, - 0x1c, 0x8e, 0x25, 0x5c, 0xac, 0x1b, 0x68, 0x0a, 0xc4, 0x12, 0xbe, 0x1d, 0x0a, 0xdf, 0x88, 0x4f, - 0x18, 0xbe, 0x59, 0x08, 0x05, 0x70, 0x70, 0x54, 0x00, 0xe7, 0x99, 0x27, 0x09, 0xe0, 0x2c, 0x44, - 0x85, 0x70, 0xde, 0x85, 0x7d, 0xcc, 0x12, 0xcb, 0x64, 0x4f, 0xa9, 0xbe, 0xb6, 0x9e, 0x3f, 0xbe, - 0xad, 0xa8, 0xb8, 0x56, 0xe5, 0x16, 0x03, 0xa4, 0x9e, 0x62, 0x54, 0xe0, 0xcb, 0x84, 0xdd, 0x34, - 0x08, 0xa1, 0xa9, 0x64, 0xe1, 0xb9, 0x51, 0x6b, 0xf1, 0xdc, 0xc9, 0x88, 0xf9, 0x28, 0x5d, 0xdf, - 0x15, 0x14, 0x91, 0xea, 0xc5, 0x40, 0x2d, 0x7a, 0x1b, 0xb6, 0x59, 0x8a, 0x83, 0x65, 0x5d, 0xdb, - 0xd5, 0x1c, 0x6c, 0x89, 0x03, 0x27, 0x68, 0xe9, 0xdc, 0xc3, 0x83, 0x80, 0x92, 0xaf, 0x89, 0x56, - 0x52, 0xbe, 0xcc, 0x8a, 0xd1, 0xdf, 0x82, 0xcf, 0xf8, 0xc5, 0x64, 0x7a, 0x25, 0xc1, 0x2a, 0x4f, - 0xd9, 0xc2, 0xb6, 0x78, 0xfe, 0x04, 0x8d, 0x0d, 0x3c, 0x3c, 0x68, 0xd7, 0x8a, 0x5c, 0x47, 0xb6, - 0xb1, 0xe3, 0xb5, 0x16, 0x93, 0x06, 0x7c, 0xad, 0x65, 0x19, 0xf8, 0x2a, 0xc7, 0x46, 0xb7, 0x60, - 0x9b, 0x85, 0x1d, 0x72, 0xb7, 0x62, 0x87, 0xe9, 0x05, 0xfa, 0xc8, 0x06, 0x43, 0x6d, 0x49, 0x44, - 0x84, 0x3d, 0x2a, 0x7f, 0xb4, 0xd0, 0xaa, 0x14, 0xa3, 0xbf, 0x5d, 0x3b, 0x90, 0x77, 0xf9, 0x49, - 0x02, 0x79, 0xed, 0x9f, 0x1c, 0x00, 0xd2, 0x1a, 0x59, 0x0f, 0x62, 0xcd, 0x88, 0xde, 0x3f, 0xa8, - 0x1b, 0xe2, 0x7a, 0xf6, 0x04, 0x13, 0x38, 0xf6, 0x58, 0x21, 0x2e, 0xb1, 0x76, 0x90, 0x0b, 0xdd, - 0x82, 0xc4, 0x79, 0x92, 0x29, 0x63, 0x5f, 0xc0, 0x45, 0x47, 0x7c, 0x2e, 0x92, 0xa2, 0x58, 0xd7, - 0xed, 0x45, 0x57, 0x84, 0x1f, 0x8a, 0x52, 0x9b, 0xe3, 0x2b, 0x44, 0x73, 0xb0, 0xcb, 0x30, 0xe5, - 0x60, 0x04, 0x5d, 0xbc, 0x5a, 0xc7, 0xbe, 0x34, 0x4a, 0x82, 0x61, 0x86, 0x22, 0xd6, 0x0a, 0x0c, - 0x25, 0x07, 0x88, 0xc3, 0x14, 0x61, 0xa2, 0xde, 0xe3, 0x88, 0xcc, 0x4d, 0xe0, 0x26, 0xa0, 0x51, - 0x0a, 0x01, 0xa2, 0xab, 0xb0, 0x4d, 0x53, 0x75, 0xec, 0x31, 0x5d, 0x29, 0x6a, 0x39, 0x63, 0x5f, - 0x94, 0x41, 0x83, 0xd4, 0x4a, 0x6a, 0x5c, 0x76, 0x6c, 0x14, 0x76, 0x7b, 0xc6, 0x9a, 0x66, 0x65, - 0xd0, 0x64, 0x3e, 0x71, 0x88, 0x1a, 0xe9, 0x2e, 0xd7, 0x48, 0x1b, 0xb6, 0xc4, 0x2a, 0xd0, 0x8b, - 0xb0, 0xc3, 0x35, 0xea, 0x3c, 0xd1, 0xeb, 0x85, 0x3a, 0xa3, 0x6f, 0x92, 0xda, 0xb9, 0x34, 0x4f, - 0x1b, 0xbb, 0x06, 0x5b, 0x6d, 0x6c, 0xed, 0xb9, 0x11, 0xa7, 0x34, 0x0d, 0xa9, 0x40, 0x37, 0x95, - 0xe0, 0x9f, 0x7e, 0x63, 0xa1, 0x49, 0x82, 0x4c, 0x80, 0x46, 0x9e, 0x6e, 0x42, 0xa4, 0x14, 0x8b, - 0xd8, 0x50, 0x65, 0xbf, 0xd6, 0xb5, 0x08, 0x2d, 0x81, 0xc9, 0xad, 0x55, 0x74, 0x67, 0x61, 0x5b, - 0x51, 0xb1, 0x6d, 0xd9, 0xd9, 0xb1, 0xcc, 0xd2, 0xf6, 0x8e, 0x38, 0x5a, 0xb7, 0x9f, 0xad, 0x44, - 0x76, 0x9d, 0x89, 0xa2, 0x25, 0xd8, 0xcb, 0xef, 0xdf, 0x45, 0xc5, 0xd9, 0x91, 0x0d, 0xd3, 0xda, - 0xa5, 0x69, 0x36, 0xe2, 0x78, 0x1d, 0x8c, 0x98, 0xd4, 0xcd, 0x94, 0x56, 0x15, 0x67, 0x67, 0xc5, - 0x55, 0x41, 0xcb, 0x95, 0xec, 0xba, 0x10, 0xd8, 0x44, 0x5d, 0xb0, 0x1e, 0xae, 0x15, 0x44, 0xd3, - 0xe0, 0x65, 0xde, 0x33, 0xdb, 0xb1, 0xb4, 0x82, 0x23, 0xdb, 0x86, 0xc6, 0x72, 0xb6, 0xf9, 0x39, - 0x59, 0xd8, 0xc1, 0x85, 0x7b, 0xe2, 0x64, 0x1d, 0x3e, 0x2c, 0x46, 0xcd, 0x78, 0x5c, 0x1a, 0x64, - 0x40, 0x6b, 0x14, 0x67, 0xcd, 0xd0, 0xc8, 0xed, 0x80, 0x3d, 0xa5, 0x39, 0x82, 0x81, 0xd6, 0xc9, - 0xc5, 0x57, 0xa5, 0xf4, 0x9b, 0xa2, 0x7b, 0x71, 0xa1, 0x69, 0x8a, 0xfc, 0x4c, 0xd5, 0x25, 0x88, - 0xd4, 0x92, 0x69, 0x5f, 0xd6, 0x6c, 0xc7, 0x6b, 0xa2, 0xab, 0x02, 0xc0, 0xc3, 0x42, 0xe8, 0x55, - 0xd8, 0x5a, 0x50, 0x0d, 0x37, 0xb4, 0x26, 0x5e, 0x3f, 0x3e, 0xd8, 0x12, 0x0c, 0xa6, 0x49, 0xb0, - 0xe0, 0x7d, 0x47, 0xdf, 0x82, 0x17, 0xdd, 0xb9, 0x75, 0xac, 0x92, 0xed, 0xc8, 0xd5, 0x51, 0xa3, - 0xa5, 0x3a, 0x93, 0xdc, 0x2c, 0xb9, 0x8e, 0xca, 0x3a, 0xd1, 0x9e, 0x0b, 0x86, 0x8c, 0xd0, 0xbb, - 0x90, 0x4f, 0x51, 0x4d, 0xf0, 0x57, 0x4f, 0xe0, 0x63, 0x07, 0x43, 0x5b, 0x0b, 0xcd, 0x12, 0x27, - 0x1a, 0x23, 0x9b, 0x5c, 0x85, 0xa2, 0x61, 0x1a, 0x9e, 0xdb, 0xa4, 0x9b, 0x8a, 0xba, 0xa9, 0xe8, - 0x8a, 0x51, 0xc0, 0x96, 0x78, 0xbb, 0xce, 0x48, 0x12, 0x52, 0x9f, 0x41, 0x8c, 0x02, 0x55, 0x5b, - 0xf6, 0x69, 0xa1, 0x45, 0xd8, 0x13, 0x89, 0xb6, 0x52, 0x17, 0xad, 0x5b, 0x8d, 0x80, 0xba, 0x07, - 0x07, 0xf8, 0x22, 0x73, 0x2c, 0xc5, 0xb0, 0xb7, 0xc8, 0xa2, 0x64, 0xc9, 0xb1, 0xe4, 0xfa, 0x74, - 0x87, 0x02, 0x5e, 0x8d, 0xa4, 0x0c, 0xd6, 0x03, 0xf2, 0xec, 0xb8, 0xa2, 0x2c, 0xaf, 0xb8, 0x53, - 0xa3, 0x1e, 0xfd, 0x5d, 0x00, 0xbb, 0x58, 0xfa, 0x0e, 0xbd, 0xc9, 0xef, 0x9a, 0xaa, 0xb6, 0xb5, - 0x2f, 0xbe, 0x16, 0xc9, 0x4b, 0xb0, 0x0c, 0xa6, 0x1a, 0xbc, 0x44, 0xda, 0x77, 0x50, 0x44, 0xc7, - 0x0d, 0x53, 0xc1, 0x14, 0x76, 0xda, 0xe6, 0xba, 0x79, 0x9b, 0xb6, 0x88, 0x6e, 0xc1, 0x7e, 0x5f, - 0x1a, 0x70, 0xc0, 0xa6, 0x4a, 0xd4, 0xa6, 0x76, 0x12, 0x9b, 0xea, 0xcf, 0x01, 0xee, 0xad, 0xc8, - 0x2f, 0xfa, 0x0c, 0xad, 0x0e, 0x7b, 0x83, 0x3c, 0x1c, 0x7f, 0x5f, 0x43, 0x7c, 0x8b, 0x4e, 0xdc, - 0x58, 0xbd, 0x45, 0x14, 0xc1, 0x70, 0x56, 0xe2, 0xd0, 0xdd, 0x3b, 0x11, 0xfc, 0x67, 0x1a, 0xc6, - 0xe9, 0x59, 0x2f, 0x7e, 0xb3, 0xce, 0x73, 0x4e, 0x4a, 0x4c, 0x08, 0x6d, 0xc3, 0x2e, 0x1a, 0xd9, - 0x0a, 0xb8, 0xbe, 0xdf, 0x7a, 0x52, 0xd7, 0x37, 0x29, 0x75, 0x12, 0x54, 0x7f, 0x56, 0xcd, 0xab, - 0xb0, 0x4f, 0x9f, 0x61, 0xd1, 0x38, 0x85, 0xcd, 0x28, 0x5f, 0x68, 0xe2, 0x6f, 0xd4, 0xed, 0x67, - 0xb7, 0x3e, 0x93, 0x57, 0x4d, 0x3b, 0x5b, 0x60, 0x67, 0x1f, 0x55, 0x41, 0x13, 0xb0, 0x87, 0x1c, - 0x59, 0x7b, 0xa6, 0xee, 0x60, 0xcb, 0x52, 0xe4, 0x5d, 0xc5, 0x50, 0xb6, 0xb1, 0x2a, 0x7e, 0x96, - 0xa0, 0x87, 0x17, 0x52, 0x0d, 0x7b, 0x83, 0xd7, 0xdd, 0x66, 0x55, 0xe8, 0x4d, 0x96, 0x7b, 0xe8, - 0x1a, 0xb3, 0x3f, 0x4f, 0x9c, 0xc0, 0x0b, 0x11, 0x1f, 0x1e, 0xc0, 0x8a, 0x92, 0x9f, 0x7d, 0x24, - 0xc5, 0xae, 0x5d, 0xbb, 0x00, 0x5b, 0xbc, 0xfc, 0x47, 0xf1, 0x27, 0xac, 0x07, 0x49, 0x37, 0xf3, - 0x11, 0xcd, 0xc1, 0x38, 0xcb, 0xfa, 0xfc, 0x2f, 0x09, 0xca, 0x6e, 0xa4, 0x4f, 0xc8, 0xd6, 0xd0, - 0x6c, 0x4e, 0x89, 0xe9, 0x92, 0x26, 0xa8, 0xa5, 0xa7, 0x67, 0xe0, 0x7f, 0x65, 0x99, 0x18, 0x49, - 0x52, 0x42, 0x8f, 0xbb, 0x05, 0x98, 0x74, 0x5f, 0xdb, 0x11, 0xff, 0x1b, 0x1b, 0x57, 0xbd, 0x56, - 0xbc, 0x77, 0x7c, 0x46, 0xf3, 0x86, 0xbd, 0x68, 0x6c, 0x99, 0x52, 0x42, 0x65, 0x1f, 0xd0, 0xbb, - 0xd5, 0xc9, 0xaa, 0x7f, 0x91, 0x38, 0x55, 0xb6, 0xaa, 0x18, 0x9d, 0xad, 0x2a, 0x82, 0x70, 0xbe, - 0xea, 0x1a, 0xf5, 0x88, 0xdc, 0xec, 0x51, 0x32, 0x84, 0x9f, 0xb2, 0x30, 0x7c, 0xfa, 0x18, 0x97, - 0x28, 0x90, 0x66, 0x2b, 0xb5, 0x29, 0xbe, 0x12, 0xe2, 0xda, 0xf8, 0x92, 0x60, 0xe9, 0x0d, 0x74, - 0xd7, 0xde, 0x16, 0xdf, 0x4f, 0xb2, 0x34, 0x17, 0x2f, 0xd9, 0x95, 0xd4, 0xdc, 0xb6, 0xb7, 0xd1, - 0x2b, 0xb0, 0x8d, 0xfa, 0x98, 0xee, 0xea, 0xf8, 0x1f, 0x09, 0xca, 0x1b, 0x0e, 0xd5, 0xc8, 0xa7, - 0xf7, 0x9b, 0x8d, 0x56, 0xa2, 0xe8, 0x2e, 0x85, 0x12, 0xec, 0x0e, 0xbe, 0xf3, 0x45, 0x7c, 0x7f, - 0x5b, 0xfc, 0xcb, 0x93, 0x2c, 0xb6, 0x2b, 0x0f, 0x0f, 0x50, 0xb5, 0x72, 0xd8, 0xd7, 0x8d, 0x4b, - 0x5d, 0x5c, 0x88, 0x79, 0xfa, 0x6b, 0xd8, 0xb1, 0xd1, 0x2e, 0xec, 0xf3, 0x5b, 0x78, 0x59, 0xd1, - 0xb7, 0x4d, 0x4b, 0x73, 0x76, 0x76, 0xc5, 0xff, 0x19, 0xbd, 0xe8, 0xf8, 0x1b, 0x6f, 0xa3, 0x7e, - 0x23, 0x9f, 0x75, 0x95, 0x7c, 0x79, 0x2e, 0x7a, 0x54, 0x3d, 0x7a, 0x16, 0xb6, 0x7b, 0x3b, 0x8f, - 0x2e, 0xfa, 0xff, 0xc5, 0x16, 0x7d, 0x9b, 0x5b, 0x4a, 0x17, 0xfe, 0x6a, 0xc5, 0xbd, 0xf4, 0x25, - 0x5d, 0x89, 0x5f, 0x24, 0x4e, 0x12, 0xb0, 0x6b, 0xf1, 0x1c, 0xd0, 0x4a, 0xf6, 0x10, 0xda, 0x84, - 0xad, 0x7e, 0xa4, 0xff, 0x9d, 0x38, 0xfe, 0x26, 0x53, 0x33, 0xb9, 0xca, 0xdf, 0x14, 0xdc, 0xac, - 0xb4, 0x71, 0x03, 0x76, 0x53, 0x3f, 0x8a, 0x9c, 0xf5, 0x16, 0x2e, 0x96, 0x1c, 0xe6, 0xa5, 0x7f, - 0x49, 0x47, 0x58, 0x99, 0x99, 0x2e, 0x2a, 0xb4, 0x58, 0x94, 0x3c, 0x11, 0xb4, 0x01, 0x93, 0x5b, - 0x8a, 0xed, 0xc8, 0x4a, 0x41, 0x17, 0xff, 0xcf, 0x49, 0x1e, 0xf8, 0x85, 0x87, 0x07, 0x9e, 0x46, - 0x75, 0xe8, 0x35, 0x41, 0xaa, 0xb2, 0x05, 0x1d, 0xad, 0xc2, 0x66, 0x7d, 0x86, 0xa2, 0xfe, 0xdf, - 0xc4, 0xc9, 0xae, 0x9e, 0x5c, 0xbe, 0x1a, 0x33, 0xae, 0xcf, 0x10, 0x44, 0x09, 0xb6, 0x10, 0x13, - 0xf0, 0x1d, 0xd3, 0xc0, 0xb6, 0xf8, 0xd7, 0x27, 0x01, 0xed, 0x7b, 0x78, 0x90, 0x74, 0x55, 0xfc, - 0x66, 0x90, 0x14, 0xbe, 0x4d, 0x60, 0x28, 0x0b, 0x6c, 0x5b, 0x5b, 0xee, 0xc5, 0x75, 0x35, 0x9a, - 0x05, 0xb6, 0xad, 0xad, 0x10, 0x0b, 0xec, 0x95, 0x20, 0x1b, 0xf6, 0x93, 0x26, 0x28, 0xa3, 0xca, - 0x33, 0xa1, 0x79, 0x9e, 0x8e, 0xf8, 0x07, 0x2d, 0xc7, 0x5f, 0x92, 0x22, 0x33, 0x7c, 0x7c, 0x4b, - 0x59, 0x35, 0xec, 0x88, 0x0c, 0xa0, 0x29, 0xd8, 0x62, 0x98, 0x8e, 0x6c, 0x61, 0x45, 0xdd, 0x17, - 0x7f, 0x56, 0x2f, 0xad, 0x13, 0x4a, 0x49, 0xc3, 0x74, 0x24, 0x22, 0x88, 0xae, 0xc1, 0x38, 0xd3, - 0x78, 0x2f, 0x59, 0x57, 0x83, 0x49, 0x21, 0x09, 0x22, 0x4e, 0xa1, 0xfa, 0x93, 0xf2, 0x7f, 0x33, - 0x79, 0xf2, 0x8c, 0x75, 0x81, 0xe9, 0xfb, 0x12, 0xf4, 0xdf, 0x81, 0x3d, 0xb6, 0x6e, 0xde, 0xaf, - 0x4a, 0x6f, 0x59, 0xa3, 0xa0, 0x75, 0xad, 0x75, 0x75, 0x36, 0x87, 0x84, 0x08, 0x56, 0x28, 0x87, - 0xe6, 0x16, 0x4c, 0x2a, 0x45, 0x8d, 0xc6, 0x6a, 0xc5, 0x75, 0x8a, 0x7a, 0xb9, 0xae, 0x45, 0x66, - 0x39, 0x01, 0x95, 0x3e, 0x27, 0x14, 0x9e, 0x25, 0x60, 0xc0, 0x4e, 0x66, 0x57, 0xd9, 0xf0, 0x77, - 0x95, 0xa2, 0xf8, 0x26, 0x5d, 0x73, 0x2f, 0x3e, 0x06, 0x87, 0x5c, 0xc9, 0xa2, 0xb8, 0xad, 0x14, - 0x19, 0x89, 0xec, 0xb5, 0xd4, 0xae, 0xfa, 0x2b, 0xd1, 0x2e, 0x77, 0xb7, 0xbc, 0xcc, 0x6e, 0xd7, - 0xdd, 0xfa, 0x3b, 0xc9, 0x93, 0xf9, 0x5b, 0xa1, 0xf8, 0x67, 0xc8, 0xdf, 0x0a, 0xd5, 0x0e, 0x7c, - 0x03, 0x76, 0x55, 0x11, 0xdc, 0xfe, 0x44, 0xc6, 0xf6, 0x63, 0x12, 0x19, 0x07, 0x8a, 0xfe, 0x1c, - 0x11, 0x77, 0x74, 0x11, 0xa9, 0x90, 0x79, 0x3f, 0xc2, 0x31, 0xcf, 0xb8, 0x3a, 0xe9, 0xc4, 0xd7, - 0x62, 0x6e, 0x0c, 0xf6, 0xbb, 0xf1, 0x28, 0xb7, 0xda, 0x8d, 0x0d, 0xf7, 0xfc, 0x80, 0x25, 0xb2, - 0xbc, 0x7e, 0x54, 0x06, 0xb1, 0xd9, 0xf4, 0x8d, 0xeb, 0x9f, 0x97, 0x01, 0xc8, 0x5d, 0x81, 0x1d, - 0x95, 0x4c, 0x61, 0xf6, 0x06, 0xcc, 0xa3, 0x32, 0xb8, 0x78, 0x58, 0x06, 0x83, 0x47, 0x65, 0x90, - 0x9c, 0x9c, 0x48, 0x67, 0xa6, 0xd2, 0x99, 0xd9, 0xdc, 0x08, 0xec, 0x0d, 0xb2, 0x11, 0xfe, 0x90, - 0xf3, 0xd5, 0xc3, 0x32, 0xb8, 0x72, 0x54, 0x06, 0xf1, 0xc9, 0xd9, 0xf4, 0xd4, 0x78, 0x6e, 0x0c, - 0xf6, 0xf0, 0x9b, 0xbd, 0x77, 0x7f, 0xa5, 0xa2, 0xfd, 0x8f, 0xca, 0xe0, 0x85, 0xc3, 0x32, 0x18, - 0x39, 0x2a, 0x83, 0xd6, 0xa9, 0xc9, 0xf4, 0xd4, 0x54, 0x7a, 0x6a, 0x3a, 0x3d, 0x75, 0x9d, 0x80, - 0x07, 0xaf, 0xd1, 0x7e, 0xf0, 0xf1, 0xc3, 0x32, 0x18, 0x23, 0xe0, 0x53, 0x37, 0xd2, 0x53, 0xb3, - 0xb9, 0xaf, 0xc3, 0xcb, 0xf5, 0x6e, 0xc9, 0xae, 0x66, 0xef, 0xa3, 0x32, 0x98, 0x3c, 0x2c, 0x83, - 0x0c, 0xcd, 0x76, 0x9e, 0x48, 0x4f, 0x4f, 0xd2, 0xe1, 0x4e, 0xc2, 0xc1, 0x1a, 0xf7, 0x3e, 0x7f, - 0x93, 0x4b, 0x87, 0x65, 0xb0, 0x48, 0x14, 0x67, 0xa6, 0xd2, 0x33, 0xd3, 0xb9, 0x2b, 0xb0, 0xcb, - 0xbb, 0x6e, 0x6d, 0xfa, 0xe5, 0x6e, 0x1f, 0x96, 0xc1, 0x32, 0x95, 0x9b, 0x49, 0xcf, 0xdc, 0xc8, - 0x8d, 0xc1, 0xf3, 0xcc, 0x0b, 0x26, 0x0e, 0x8a, 0x2f, 0xa1, 0x8c, 0x79, 0xc5, 0x48, 0x38, 0x2c, - 0x83, 0xb7, 0xc9, 0xa4, 0xce, 0x4e, 0xa6, 0x67, 0x27, 0xd2, 0xb3, 0x99, 0xdc, 0x04, 0x44, 0xfe, - 0xac, 0x65, 0x8e, 0x7c, 0xfe, 0x51, 0x19, 0x7c, 0x91, 0x38, 0x2c, 0x83, 0xbf, 0x4a, 0x1c, 0x95, - 0x41, 0xcb, 0xc4, 0xf8, 0xc4, 0xf5, 0xf4, 0xc4, 0xf8, 0xc4, 0x0c, 0x1d, 0xc0, 0x38, 0xec, 0x75, - 0xcd, 0x35, 0x73, 0xe3, 0xfc, 0x93, 0xfb, 0x33, 0xa2, 0xf5, 0x37, 0x5c, 0x2b, 0x33, 0x99, 0x9e, - 0x18, 0xcf, 0x4c, 0x79, 0xf9, 0x15, 0xaf, 0x0b, 0x1b, 0x4b, 0xb1, 0xe4, 0xa0, 0x70, 0x71, 0x29, - 0x96, 0xbc, 0x22, 0x5c, 0x5d, 0x8a, 0x25, 0x47, 0x84, 0x17, 0x96, 0x62, 0xc9, 0x31, 0x61, 0x7c, - 0x29, 0x96, 0xcc, 0x08, 0x93, 0x4b, 0xb1, 0xe4, 0x94, 0x30, 0xbd, 0x14, 0x4b, 0x2e, 0x0a, 0x4b, - 0x4b, 0xb1, 0xe4, 0xb2, 0x70, 0x7b, 0x29, 0x96, 0x7c, 0x5b, 0xf8, 0xe6, 0x52, 0x73, 0xf2, 0xaf, - 0x12, 0xc2, 0x17, 0x89, 0xa5, 0xe6, 0xe4, 0xdf, 0x24, 0x84, 0x9f, 0x25, 0x96, 0x62, 0xc9, 0x37, - 0x84, 0x37, 0x87, 0xfe, 0x73, 0x23, 0x44, 0xf9, 0x95, 0xb5, 0x0d, 0xd7, 0xa5, 0xe5, 0xef, 0x7e, - 0xe7, 0x5c, 0xaf, 0x18, 0x9c, 0xde, 0x29, 0xfe, 0x3a, 0x1c, 0xc0, 0x0f, 0x34, 0xdb, 0xd1, 0x8c, - 0x6d, 0xff, 0x52, 0xe6, 0x7e, 0x6b, 0x9c, 0x6e, 0x1c, 0xd1, 0x95, 0xf0, 0x6d, 0x05, 0xe6, 0x77, - 0x6e, 0xc1, 0x7e, 0x0b, 0x1b, 0xf8, 0x7e, 0x84, 0x6a, 0xf3, 0x69, 0x3c, 0x5e, 0xa9, 0x97, 0xc2, - 0x55, 0xb5, 0xf3, 0x02, 0xec, 0x62, 0x0e, 0xa8, 0x8a, 0xd9, 0x7d, 0xc9, 0x4d, 0x5a, 0x6a, 0x91, - 0x04, 0x5a, 0x91, 0xaf, 0x94, 0xa3, 0xe7, 0xa1, 0x60, 0x97, 0xb6, 0xb7, 0xb1, 0xed, 0x60, 0x95, - 0x2f, 0x08, 0xfe, 0x2a, 0x55, 0xa7, 0x57, 0xce, 0x6e, 0x42, 0x3c, 0x09, 0xe8, 0xfb, 0x43, 0xb0, - 0x63, 0xce, 0xc2, 0xa4, 0x35, 0x37, 0x35, 0x43, 0x0c, 0xa5, 0x66, 0x54, 0xb2, 0x2e, 0x5e, 0x7a, - 0xac, 0xac, 0x8b, 0xa4, 0x9b, 0x75, 0xe1, 0xa5, 0x5a, 0x7c, 0xf5, 0xf9, 0x10, 0xef, 0x3c, 0xc5, - 0x7c, 0x88, 0xe8, 0xcc, 0x87, 0xcd, 0xa7, 0x99, 0xf9, 0x50, 0x23, 0xc7, 0x61, 0xf6, 0xd8, 0x1c, - 0x87, 0x9a, 0xd9, 0x0c, 0x5f, 0x3b, 0x3e, 0x9b, 0xe1, 0x97, 0x38, 0x6f, 0x21, 0x7f, 0xba, 0xb4, - 0x83, 0x50, 0xc2, 0xc1, 0xcd, 0xc7, 0x4b, 0x38, 0x08, 0xa4, 0x1a, 0x2c, 0x9e, 0x26, 0xd5, 0x20, - 0xd7, 0x46, 0x13, 0x73, 0xdf, 0x07, 0xb1, 0x81, 0xc6, 0x58, 0xdc, 0x4d, 0x3c, 0x38, 0x45, 0x02, - 0xc1, 0xf6, 0xd3, 0x4f, 0x20, 0x38, 0x75, 0xea, 0xc0, 0xdb, 0x4f, 0x29, 0x75, 0x20, 0x2a, 0x69, - 0x40, 0x39, 0x45, 0xce, 0x40, 0xd0, 0x8a, 0x55, 0xe7, 0x0c, 0x3c, 0xdd, 0x48, 0xf3, 0xf4, 0x31, - 0x91, 0xe6, 0xa7, 0x1f, 0x5e, 0x7e, 0xf3, 0xa9, 0x85, 0x97, 0xc3, 0x81, 0x65, 0xf9, 0x29, 0x06, - 0x96, 0x23, 0x43, 0xca, 0xf8, 0xf4, 0xf1, 0xdd, 0xbe, 0xe8, 0xf8, 0x6e, 0x64, 0x54, 0x77, 0xf5, - 0x14, 0x51, 0xdd, 0xce, 0x50, 0x54, 0x37, 0x18, 0xcb, 0x7d, 0xf7, 0x69, 0xc4, 0x72, 0x85, 0x70, - 0x2c, 0xf7, 0xe7, 0x13, 0xc1, 0xbd, 0x14, 0x15, 0xc6, 0x7b, 0xb2, 0x00, 0xde, 0xee, 0x57, 0x13, - 0x14, 0xae, 0x15, 0x05, 0x7e, 0x2a, 0x01, 0xd3, 0x6f, 0x3e, 0xb5, 0x80, 0x69, 0x44, 0xa8, 0xf4, - 0x09, 0x23, 0x9a, 0x97, 0x22, 0x22, 0x9a, 0xa1, 0x28, 0xe6, 0x68, 0xed, 0x28, 0xe6, 0xaf, 0x4f, - 0xe4, 0xb2, 0xf0, 0xc4, 0x91, 0xcb, 0x13, 0xc4, 0x2c, 0x57, 0x4e, 0x1d, 0xb3, 0x8c, 0x8e, 0x56, - 0x9e, 0x36, 0x1e, 0xd7, 0xfc, 0x54, 0xe3, 0x71, 0xcd, 0xd1, 0xf1, 0x38, 0xfc, 0x14, 0xe3, 0x71, - 0x75, 0x22, 0x71, 0x37, 0x1f, 0x8f, 0xd4, 0x0b, 0xd0, 0x79, 0x6f, 0x3c, 0x9d, 0x20, 0x5e, 0x75, - 0x58, 0xee, 0xfa, 0x31, 0x61, 0xb9, 0x5a, 0x51, 0xb8, 0xbb, 0x5f, 0x01, 0xbf, 0x58, 0x8b, 0x56, - 0xfc, 0xea, 0xd9, 0xb9, 0x97, 0x4e, 0xc5, 0xce, 0x55, 0x48, 0x39, 0x7c, 0x2a, 0x52, 0x2e, 0xe4, - 0xa4, 0x55, 0xd3, 0x56, 0x21, 0x2e, 0xee, 0x97, 0x90, 0x1c, 0xbb, 0xb9, 0xfd, 0xc7, 0x2f, 0x85, - 0xde, 0x76, 0xf8, 0xe9, 0x4b, 0x6b, 0x13, 0xd3, 0xe9, 0x4c, 0x7a, 0x32, 0x3d, 0x9d, 0xbe, 0x31, - 0x9d, 0x9e, 0xb8, 0x91, 0x9e, 0x98, 0x4d, 0x4f, 0xde, 0x48, 0x5f, 0x4f, 0x4f, 0xcc, 0xa4, 0x67, - 0xd2, 0x37, 0xd2, 0x13, 0x99, 0xf4, 0xc4, 0x64, 0x3a, 0x33, 0x9e, 0xce, 0xdc, 0x48, 0x67, 0x26, - 0xd2, 0x99, 0x4c, 0x7a, 0x72, 0x32, 0x9d, 0x99, 0x4c, 0x4f, 0x8e, 0xa7, 0x27, 0xa7, 0xd3, 0x99, - 0xeb, 0xe9, 0xcc, 0x4c, 0x3a, 0x33, 0x9d, 0x9e, 0xcc, 0xa4, 0x27, 0xa7, 0xd2, 0x33, 0xd7, 0xd3, - 0x33, 0xb3, 0xe9, 0x1b, 0x99, 0xdc, 0xf5, 0xda, 0x2c, 0xdc, 0xf9, 0xf7, 0xbf, 0x04, 0xb5, 0x2a, - 0x73, 0xcf, 0x56, 0x91, 0x71, 0xe8, 0xfd, 0x2f, 0x41, 0xa8, 0x2c, 0x97, 0xa9, 0x45, 0xc5, 0x9d, - 0x7b, 0xff, 0x4b, 0x10, 0x5d, 0x95, 0x1b, 0xaf, 0x41, 0xc9, 0x89, 0xef, 0x7f, 0x09, 0x22, 0x6b, - 0x48, 0x2b, 0xd1, 0x9c, 0x1c, 0x6d, 0x25, 0xb2, 0x2a, 0xb7, 0x72, 0x32, 0x6e, 0xee, 0xea, 0xfb, - 0x5f, 0x82, 0x93, 0x08, 0xe6, 0x46, 0xa2, 0x88, 0xb7, 0xde, 0xf7, 0xbf, 0x04, 0xd5, 0xc5, 0x21, - 0x0a, 0x8b, 0x91, 0x57, 0x6f, 0x08, 0x6f, 0x0e, 0xfd, 0xc9, 0x10, 0xec, 0x94, 0x70, 0x51, 0x57, - 0x0a, 0x67, 0x44, 0xca, 0x19, 0x91, 0x72, 0x46, 0xa4, 0x9c, 0x11, 0x29, 0xbf, 0x10, 0x44, 0xca, - 0x66, 0x34, 0x91, 0x52, 0xf7, 0x8c, 0x0e, 0x99, 0xb1, 0x33, 0x26, 0xe5, 0x8c, 0x49, 0xf9, 0xf5, - 0x66, 0x52, 0xbe, 0xb2, 0x84, 0xe8, 0x33, 0x3e, 0xe5, 0x8c, 0x4f, 0x39, 0xe3, 0x53, 0xce, 0xf8, - 0x94, 0x33, 0x3e, 0xe5, 0x8c, 0x4f, 0xd9, 0xaa, 0xc5, 0xa7, 0xbc, 0xf4, 0x38, 0xbe, 0xda, 0x19, - 0xa1, 0x72, 0x46, 0xa8, 0xfc, 0x6a, 0x10, 0x2a, 0xff, 0xf8, 0x2a, 0x6c, 0xbd, 0x85, 0x9d, 0x33, - 0x32, 0xe5, 0x8c, 0x4c, 0xf9, 0x95, 0xff, 0x35, 0x8d, 0xff, 0xff, 0x6c, 0xcc, 0x13, 0xfd, 0x82, - 0xc6, 0x19, 0xff, 0x52, 0x93, 0x7f, 0xf9, 0x76, 0x34, 0xff, 0x32, 0x5b, 0x37, 0x71, 0xb9, 0x62, - 0xf5, 0xce, 0xb8, 0x97, 0x33, 0xee, 0xe5, 0x97, 0x92, 0x7b, 0xc9, 0x9e, 0x86, 0x7b, 0x79, 0xec, - 0xfc, 0x95, 0x33, 0xfe, 0xe4, 0x8c, 0x3f, 0x39, 0xe3, 0x4f, 0xce, 0xf8, 0x93, 0x13, 0xf3, 0x27, - 0xbf, 0x70, 0x1c, 0xc8, 0x2f, 0xd5, 0xcb, 0xbd, 0x3f, 0xcf, 0x37, 0x6d, 0x7f, 0xb3, 0xd6, 0x9b, - 0xb6, 0x8f, 0xcb, 0xb1, 0x3f, 0xd5, 0x1f, 0x8d, 0x78, 0x12, 0xfe, 0xed, 0xe7, 0x49, 0x77, 0x9d, - 0xfc, 0xad, 0xc4, 0xc4, 0x63, 0xbf, 0x95, 0x98, 0x70, 0xdf, 0x4a, 0xfc, 0xc5, 0xe7, 0xd4, 0x36, - 0x6b, 0x71, 0x6a, 0x37, 0x4f, 0xea, 0x7f, 0xff, 0x4a, 0xf2, 0x69, 0x77, 0x23, 0xf8, 0xb4, 0x8d, - 0x89, 0xf1, 0xf4, 0x19, 0xa5, 0xf6, 0x2b, 0x41, 0xa9, 0x91, 0xfe, 0x46, 0xbf, 0xbc, 0x47, 0xfb, - 0x1b, 0x59, 0x15, 0x41, 0xc3, 0x35, 0x27, 0xff, 0x22, 0x21, 0xfc, 0xf7, 0xd0, 0xeb, 0x78, 0x23, - 0xff, 0x12, 0xc0, 0xce, 0x10, 0x89, 0x81, 0xba, 0x61, 0xe7, 0xc6, 0xa2, 0xb4, 0xfe, 0x7a, 0x76, - 0x59, 0x5e, 0x9b, 0x97, 0x36, 0x16, 0xe7, 0xe6, 0x85, 0x06, 0xd4, 0x07, 0xd1, 0xc2, 0xfa, 0xfa, - 0xaa, 0xbc, 0x7c, 0x27, 0x9b, 0x97, 0x73, 0xd9, 0xe5, 0xec, 0xca, 0xdc, 0xbc, 0x24, 0x00, 0xd4, - 0x09, 0x5b, 0xb3, 0xab, 0x8b, 0xf2, 0xad, 0xec, 0xfa, 0xfc, 0x1b, 0xd9, 0xb7, 0x84, 0x46, 0xd4, - 0x0b, 0xbb, 0xd6, 0xe7, 0xc2, 0x72, 0x4d, 0xa8, 0x05, 0xc6, 0x57, 0xa5, 0x3b, 0x6f, 0xbe, 0x25, - 0xc4, 0xd0, 0x45, 0xd8, 0xbb, 0x7c, 0x67, 0x2e, 0xbb, 0x2c, 0xbf, 0x7a, 0x63, 0x4d, 0xf6, 0x2b, - 0xc7, 0xd9, 0x6f, 0x08, 0x12, 0x88, 0xb9, 0xfc, 0x4a, 0x08, 0xa2, 0x79, 0xe4, 0x3f, 0x02, 0xd8, - 0x52, 0xf9, 0x97, 0x94, 0x3d, 0x10, 0xd2, 0x0e, 0x31, 0xd4, 0x06, 0xae, 0xda, 0x0d, 0x5b, 0x48, - 0xeb, 0xac, 0x10, 0xf0, 0xc2, 0x0b, 0x10, 0x79, 0x85, 0xf2, 0x1b, 0x8b, 0xeb, 0x0b, 0xf2, 0xda, - 0xca, 0xa2, 0xd0, 0xc8, 0x6b, 0xfb, 0x61, 0xfb, 0xfa, 0xf2, 0x9a, 0x5c, 0x51, 0xe3, 0x3f, 0x65, - 0x88, 0x52, 0xb0, 0x2f, 0x50, 0x51, 0x51, 0x4d, 0x78, 0x1d, 0x6d, 0x25, 0x7d, 0x58, 0xe3, 0x8a, - 0x4d, 0xbc, 0xb8, 0x1d, 0xb6, 0xbc, 0x9e, 0x77, 0xd1, 0x62, 0xe4, 0xeb, 0xda, 0xed, 0x2c, 0xff, - 0x1a, 0x27, 0x5f, 0xf3, 0x2b, 0xae, 0x4a, 0x72, 0xe4, 0x8f, 0x1a, 0xa1, 0x10, 0xf6, 0x04, 0xc8, - 0x6c, 0xbb, 0x8f, 0x60, 0xe1, 0xce, 0xda, 0xba, 0x2c, 0xcd, 0x67, 0xf3, 0x6f, 0x09, 0x0d, 0xe8, - 0x39, 0x78, 0x29, 0x50, 0xbe, 0x3a, 0xbf, 0x92, 0x5f, 0x5c, 0xb9, 0x25, 0x6f, 0xcc, 0x4b, 0x8b, - 0xaf, 0x2c, 0xce, 0x65, 0xd7, 0x17, 0xef, 0xac, 0x08, 0x00, 0x3d, 0x0b, 0x53, 0x01, 0x31, 0x7f, - 0xb5, 0xfc, 0x4a, 0x76, 0x71, 0x79, 0x3e, 0x2f, 0x34, 0xa2, 0xab, 0xf0, 0x72, 0x24, 0x18, 0xe9, - 0x5d, 0x7e, 0x7e, 0x79, 0xfe, 0x16, 0x83, 0x6b, 0x42, 0x97, 0xe0, 0x33, 0x91, 0x82, 0x59, 0x59, - 0x9a, 0x9f, 0xbb, 0x23, 0xe5, 0x85, 0x18, 0xba, 0x0c, 0x2f, 0x06, 0x44, 0x08, 0x86, 0x5b, 0x2d, - 0x67, 0xf3, 0xf9, 0xf9, 0xbc, 0x10, 0x47, 0xa3, 0x70, 0x24, 0x20, 0xb4, 0xb8, 0xb2, 0x3e, 0x2f, - 0xad, 0xcc, 0xaf, 0xcb, 0x2b, 0xcb, 0x39, 0x0f, 0x74, 0x4e, 0x9a, 0x67, 0xed, 0x36, 0xa3, 0x6b, - 0xf0, 0xf9, 0xda, 0xf2, 0xae, 0x9c, 0x3b, 0x9e, 0xc4, 0xc8, 0x9f, 0x35, 0x41, 0x54, 0xfd, 0x1e, - 0x26, 0xea, 0xa9, 0xfc, 0x13, 0xbe, 0x3c, 0x73, 0x27, 0x54, 0xa1, 0x01, 0x9d, 0x83, 0xbd, 0x79, - 0xf7, 0x27, 0x5b, 0x36, 0xb0, 0xe5, 0xe9, 0x08, 0x64, 0x0d, 0x75, 0x66, 0x2b, 0x3f, 0x49, 0x62, - 0x39, 0x58, 0x15, 0x1a, 0xd1, 0x33, 0xf0, 0xdc, 0xaa, 0xc5, 0xff, 0xa3, 0x89, 0xc7, 0x21, 0xac, - 0x62, 0x43, 0xd5, 0x8c, 0x6d, 0xa1, 0x0d, 0x0d, 0xc0, 0xbe, 0x50, 0x9d, 0xab, 0xda, 0x1e, 0x51, - 0xe7, 0xea, 0x35, 0xa1, 0xf3, 0xb0, 0x3f, 0x54, 0xc7, 0x3a, 0x83, 0x55, 0x21, 0xe6, 0xef, 0xf9, - 0x2b, 0x9a, 0x41, 0xed, 0x91, 0x10, 0x27, 0x6b, 0xc3, 0x77, 0x12, 0x2c, 0x1a, 0xf4, 0x27, 0xdc, - 0x85, 0x66, 0x22, 0xed, 0x2b, 0xa7, 0xbf, 0xda, 0x2e, 0x24, 0xc8, 0x38, 0x5d, 0x8c, 0x15, 0xd3, - 0xc9, 0xb2, 0x7f, 0xb9, 0xb4, 0xa9, 0x63, 0x21, 0x89, 0xfa, 0x61, 0xb7, 0x5b, 0x25, 0x79, 0x57, - 0x7f, 0x55, 0x68, 0x21, 0x9d, 0x72, 0x2b, 0x6e, 0x61, 0x03, 0x73, 0xdf, 0x84, 0xdc, 0xe5, 0x05, - 0x88, 0xba, 0x60, 0x7b, 0xd6, 0xef, 0xc4, 0x09, 0xad, 0xa4, 0x47, 0xd5, 0xbf, 0xec, 0x22, 0x74, - 0xa0, 0x41, 0x38, 0xe0, 0x96, 0x67, 0x0b, 0x05, 0xb3, 0x64, 0x04, 0xda, 0xe9, 0x24, 0x73, 0xea, - 0x3d, 0x19, 0xf6, 0x9f, 0x63, 0x7c, 0xd5, 0x42, 0x68, 0xa0, 0xf4, 0x77, 0x0e, 0xb0, 0x2a, 0x74, - 0x8d, 0x8c, 0xc1, 0x8e, 0xe0, 0xbf, 0x10, 0x42, 0x6d, 0x30, 0x49, 0xec, 0xc8, 0xed, 0x3b, 0x79, - 0x62, 0xaa, 0x3a, 0x61, 0xeb, 0xe2, 0xca, 0xf2, 0xe2, 0xca, 0x3c, 0x2b, 0x00, 0xb9, 0xdf, 0x06, - 0x87, 0x3f, 0x1a, 0x6c, 0xf8, 0xe4, 0x47, 0x83, 0x0d, 0x9f, 0xff, 0x68, 0x10, 0xbc, 0x77, 0x34, - 0x08, 0xfe, 0xc5, 0xd1, 0x20, 0xf8, 0xc1, 0xd1, 0x20, 0x38, 0x3c, 0x1a, 0x04, 0x9f, 0x1c, 0x0d, - 0x82, 0x4f, 0x8f, 0x06, 0xc1, 0x67, 0x47, 0x83, 0x0d, 0x9f, 0x1f, 0x0d, 0x82, 0xef, 0xfe, 0x78, - 0xb0, 0xe1, 0xd1, 0x8f, 0x07, 0xc1, 0xe1, 0x8f, 0x07, 0x1b, 0x3e, 0xf9, 0xf1, 0x60, 0xc3, 0xdb, - 0xab, 0xdb, 0x66, 0xf1, 0xde, 0xf6, 0xa8, 0xfb, 0x63, 0x26, 0xa3, 0x25, 0x7b, 0x8c, 0x7e, 0x20, - 0x77, 0x91, 0x6b, 0x45, 0xcb, 0xdc, 0xd3, 0x54, 0x6c, 0x5d, 0x73, 0xab, 0xc7, 0x8a, 0x9b, 0xdb, - 0xe6, 0x18, 0x7e, 0xe0, 0xb8, 0xff, 0xf3, 0xbb, 0xfa, 0x9f, 0x6a, 0x6f, 0x36, 0xd3, 0xdf, 0x76, - 0x98, 0xfc, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xb5, 0xce, 0x19, 0xd7, 0x74, 0x7d, 0x00, 0x00, + // 7728 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x6d, 0x6c, 0x1c, 0x47, + 0x9a, 0x1e, 0x8b, 0x9c, 0xe1, 0x0c, 0x8b, 0x5f, 0xcd, 0xe2, 0x57, 0x8b, 0x92, 0xa8, 0x11, 0x6d, + 0x4b, 0x14, 0x3d, 0xe2, 0xc7, 0x90, 0xd4, 0xd7, 0xae, 0xbd, 0x3b, 0xc3, 0xa1, 0x45, 0xd2, 0x14, + 0xc5, 0x6d, 0xd2, 0xb4, 0xad, 0xf5, 0xba, 0xdd, 0x9c, 0x2e, 0x92, 0x2d, 0xf7, 0x74, 0x8f, 0xbb, + 0x7b, 0x28, 0xd1, 0x09, 0x01, 0x9f, 0x83, 0x20, 0x17, 0xff, 0xb8, 0xdb, 0x38, 0x3f, 0x02, 0x38, + 0xf9, 0x91, 0xdc, 0x05, 0x48, 0xa2, 0x03, 0x82, 0xfb, 0x13, 0x20, 0xb8, 0x51, 0x00, 0x61, 0x81, + 0xc3, 0x2d, 0xee, 0x47, 0xc2, 0x00, 0x07, 0xc4, 0x30, 0x82, 0xc0, 0x4b, 0xe3, 0x00, 0x9f, 0xb3, + 0xb9, 0x2c, 0x36, 0x97, 0x9c, 0xe3, 0xe4, 0x6e, 0x0f, 0xf5, 0xd1, 0x33, 0xdd, 0x3d, 0x3d, 0xc3, + 0x11, 0x25, 0xfb, 0x76, 0xef, 0xf8, 0x47, 0x9a, 0xa9, 0x7a, 0xdf, 0xa7, 0x3e, 0xba, 0xea, 0xad, + 0xb7, 0x9e, 0xf7, 0xed, 0x21, 0xbc, 0xb0, 0x8b, 0xed, 0x71, 0xcd, 0x9c, 0xb0, 0x73, 0x3b, 0x38, + 0xaf, 0x4c, 0xec, 0x6a, 0x96, 0x53, 0x54, 0x74, 0x79, 0xc7, 0xb4, 0x9d, 0x09, 0x67, 0xaf, 0x80, + 0xed, 0xf1, 0x82, 0x65, 0x3a, 0x26, 0x1a, 0x62, 0x72, 0xe3, 0x4c, 0x6e, 0xdc, 0x2b, 0x37, 0x74, + 0x79, 0x5b, 0x73, 0x76, 0x8a, 0x9b, 0xe3, 0x39, 0x33, 0x3f, 0xb1, 0x6d, 0x6e, 0x9b, 0x13, 0x54, + 0x65, 0xb3, 0xb8, 0x45, 0xbf, 0xd1, 0x2f, 0xf4, 0x13, 0x83, 0x1a, 0x3a, 0xb3, 0x6d, 0x9a, 0xdb, + 0x3a, 0xae, 0x48, 0xd9, 0x8e, 0x55, 0xcc, 0x39, 0xbc, 0xf6, 0x5c, 0xb0, 0xd6, 0xd1, 0xf2, 0xd8, + 0x76, 0x94, 0x7c, 0x81, 0x0b, 0x8c, 0xfa, 0x7b, 0xac, 0x14, 0x9d, 0x1d, 0x6c, 0x38, 0x5a, 0x4e, + 0x71, 0x34, 0xd3, 0xf0, 0xf6, 0x79, 0x68, 0xd8, 0x2f, 0x99, 0xc3, 0x96, 0x23, 0x7b, 0xeb, 0xcf, + 0x07, 0xea, 0xf5, 0xa2, 0xed, 0x60, 0xcb, 0x07, 0x31, 0xe8, 0x17, 0x31, 0xb0, 0xdb, 0xcd, 0xd3, + 0xfe, 0x0a, 0xb3, 0x40, 0x5a, 0xb7, 0xc3, 0xbb, 0x68, 0x63, 0x6b, 0x57, 0xcb, 0x61, 0xb9, 0x60, + 0xea, 0x5a, 0x6e, 0xcf, 0x87, 0x7f, 0xca, 0x2f, 0xe9, 0xad, 0x3a, 0x13, 0x78, 0x32, 0x8a, 0xae, + 0xa9, 0x8a, 0x83, 0x79, 0x6d, 0x22, 0xf8, 0xdc, 0xf0, 0x3d, 0xd9, 0xdf, 0x89, 0x73, 0xd5, 0x12, + 0xb6, 0xaf, 0x81, 0xc9, 0xda, 0x8f, 0x5e, 0x56, 0x0d, 0x5b, 0xd6, 0x8c, 0x2d, 0x73, 0xc2, 0xdc, + 0xbc, 0x8b, 0xdd, 0x67, 0x33, 0x92, 0x86, 0x9d, 0x1b, 0x4c, 0x6a, 0xc1, 0xb4, 0x9d, 0xc5, 0x2c, + 0x3a, 0x03, 0xdb, 0x0c, 0x25, 0x8f, 0xed, 0x82, 0x92, 0xc3, 0x22, 0x48, 0x80, 0xd1, 0x36, 0xa9, + 0x52, 0x80, 0x10, 0x8c, 0x90, 0x2f, 0x62, 0x33, 0xad, 0xa0, 0x9f, 0x47, 0x3e, 0x8f, 0xc2, 0xce, + 0x0d, 0x6c, 0xad, 0x39, 0x8a, 0x53, 0xb4, 0xd7, 0xf7, 0x0a, 0x18, 0xfd, 0x63, 0x00, 0x07, 0x73, + 0xa6, 0xa2, 0x63, 0x3b, 0x87, 0x55, 0xd9, 0xdb, 0x0b, 0x5b, 0x04, 0x89, 0x96, 0xd1, 0xf6, 0xd4, + 0xa5, 0xf1, 0xda, 0x8b, 0x6f, 0xdc, 0xd7, 0xa1, 0xcc, 0xe4, 0xc7, 0xfb, 0xe0, 0xf3, 0x12, 0x00, + 0xbf, 0xf7, 0x27, 0x8f, 0x5a, 0xe0, 0x87, 0x20, 0x36, 0x12, 0xb5, 0x5a, 0x46, 0xdf, 0x6b, 0x26, + 0x5f, 0xdb, 0x3e, 0x04, 0xad, 0x23, 0x11, 0xab, 0x39, 0x41, 0x2b, 0xa3, 0x1f, 0x82, 0x66, 0x11, + 0x88, 0x40, 0xea, 0x2f, 0xb7, 0xed, 0x41, 0xb2, 0xd1, 0x47, 0x00, 0x9e, 0x36, 0x4c, 0x43, 0xae, + 0xd5, 0xb3, 0xe6, 0xaf, 0xbf, 0x67, 0xa2, 0x61, 0x1a, 0x73, 0xa1, 0x9d, 0xbb, 0x05, 0x05, 0x45, + 0xdd, 0xc5, 0x96, 0xa3, 0xd9, 0xee, 0xaa, 0x12, 0x5b, 0x12, 0x60, 0xb4, 0x3d, 0x35, 0x52, 0xd5, + 0x21, 0x7c, 0xcf, 0x1e, 0xbf, 0x4d, 0x1f, 0xa2, 0x84, 0xb7, 0xc8, 0x84, 0x4b, 0xdd, 0x65, 0xdd, + 0x55, 0xaa, 0x8a, 0x5e, 0x87, 0x82, 0x67, 0x98, 0x6c, 0x7c, 0x11, 0x3a, 0xbe, 0x06, 0xe0, 0x32, + 0xb0, 0xd2, 0x69, 0xa9, 0xbb, 0x32, 0x99, 0x14, 0x06, 0xbd, 0x05, 0xfb, 0x02, 0xb3, 0xc8, 0xe0, + 0xa3, 0xc7, 0x82, 0x47, 0xbe, 0x19, 0xa1, 0x48, 0x37, 0xfe, 0x09, 0xf8, 0xc3, 0x12, 0xf8, 0x10, + 0xc0, 0x0b, 0x50, 0x48, 0xbb, 0xe3, 0x4a, 0xb0, 0x81, 0x0d, 0xa1, 0xea, 0x79, 0x82, 0x13, 0x70, + 0xb0, 0x0c, 0x91, 0xe0, 0xb3, 0x9a, 0xa0, 0xd3, 0x9a, 0xe9, 0xab, 0x9e, 0x07, 0x21, 0x0a, 0xaf, + 0xc2, 0xd3, 0x2b, 0xa6, 0x71, 0x39, 0x57, 0x43, 0x49, 0x0c, 0x1f, 0xa1, 0x10, 0x1d, 0xf9, 0x6d, + 0x00, 0xfb, 0x96, 0x94, 0x5d, 0x65, 0x2d, 0x67, 0x69, 0x05, 0x67, 0xce, 0x34, 0xb6, 0xb4, 0x6d, + 0xba, 0xe2, 0xcf, 0xc3, 0x8e, 0x9c, 0x92, 0xdb, 0xc1, 0x72, 0xc1, 0xc2, 0x5b, 0xda, 0x7d, 0xbe, + 0x71, 0xda, 0x69, 0xd9, 0x2a, 0x2d, 0x42, 0xdf, 0x86, 0x9d, 0x36, 0x55, 0x93, 0x73, 0x54, 0x8f, + 0xee, 0xa1, 0xf6, 0xd4, 0xe0, 0x38, 0xb3, 0x8e, 0xe3, 0xae, 0x75, 0x1c, 0x5f, 0xa3, 0xb6, 0x53, + 0xea, 0xb0, 0x3d, 0x8d, 0xa0, 0x31, 0xd8, 0x93, 0x2b, 0xda, 0x8e, 0x99, 0x97, 0x39, 0x48, 0xd1, + 0xd2, 0xe9, 0x02, 0x69, 0x93, 0xba, 0x59, 0x05, 0xeb, 0xd3, 0x2b, 0x96, 0x3e, 0xf2, 0xc7, 0xcd, + 0x70, 0x30, 0xbb, 0x67, 0x28, 0x79, 0x2d, 0x27, 0xe1, 0x5d, 0x6c, 0xd9, 0x78, 0xd5, 0x32, 0xef, + 0xef, 0xd1, 0x8e, 0x7e, 0x17, 0x9e, 0xb1, 0xb0, 0x6d, 0xea, 0xbb, 0x58, 0xc6, 0x86, 0x5a, 0x30, + 0x35, 0xc3, 0x91, 0x55, 0x26, 0xab, 0xe8, 0xfa, 0x1e, 0xed, 0x78, 0x5c, 0x1a, 0xe2, 0x32, 0xf3, + 0x5c, 0x24, 0x5b, 0x91, 0x40, 0xaf, 0xc3, 0x41, 0x5a, 0x5b, 0x24, 0x96, 0x49, 0x36, 0xb0, 0x73, + 0xcf, 0xb4, 0xde, 0xa6, 0x46, 0x98, 0x8e, 0xa8, 0x2b, 0x75, 0x3e, 0xb0, 0x04, 0xf8, 0xe4, 0xae, + 0x30, 0x49, 0xba, 0x5e, 0xfb, 0x2b, 0x08, 0x9e, 0x62, 0x24, 0x43, 0x54, 0x0d, 0x2d, 0xb6, 0xd0, + 0x85, 0x75, 0x26, 0x80, 0xea, 0x5f, 0x52, 0xe8, 0xc1, 0x7e, 0xb7, 0xbb, 0x53, 0xb9, 0x9e, 0xd4, + 0x53, 0xd5, 0x08, 0x7a, 0x09, 0xa2, 0x9c, 0x69, 0x18, 0x38, 0x47, 0x1b, 0x20, 0xc7, 0x90, 0x59, + 0x74, 0xc4, 0x68, 0x02, 0x8c, 0x76, 0x66, 0x06, 0x3f, 0x29, 0x81, 0x48, 0x6a, 0x72, 0x72, 0xf2, + 0xd7, 0x1f, 0x82, 0x26, 0xb2, 0x42, 0x5b, 0xc7, 0x22, 0xe2, 0xa3, 0xff, 0xf4, 0xac, 0xd4, 0x53, + 0x51, 0x59, 0x67, 0x1a, 0x4b, 0x91, 0x78, 0x44, 0x88, 0x8e, 0xfc, 0xa3, 0x66, 0xd8, 0x3d, 0x67, + 0xe6, 0x0b, 0x16, 0xb6, 0x6d, 0x52, 0x49, 0x86, 0x30, 0x09, 0xbb, 0x72, 0xa6, 0xe1, 0x60, 0xc3, + 0x91, 0x75, 0x6c, 0x6c, 0x3b, 0x3b, 0x74, 0x46, 0x3b, 0x33, 0x6d, 0x04, 0x31, 0x32, 0xd6, 0x3c, + 0x3a, 0x2c, 0x75, 0x72, 0x81, 0x65, 0x5a, 0x8f, 0xd6, 0x61, 0x87, 0xab, 0xc1, 0x27, 0xb1, 0x65, + 0xb4, 0x2d, 0x33, 0xd5, 0x90, 0x51, 0x11, 0x52, 0x9e, 0xad, 0xd4, 0xce, 0x61, 0x68, 0x3f, 0xa6, + 0xe1, 0x80, 0xaa, 0xd9, 0xca, 0xa6, 0x8e, 0x65, 0xd3, 0x90, 0xb1, 0xa3, 0x6c, 0xcb, 0x3b, 0x58, + 0x51, 0xb1, 0x45, 0x17, 0x4d, 0x5c, 0xea, 0xe5, 0xb5, 0xb7, 0x8d, 0x79, 0x47, 0xd9, 0x5e, 0xa0, + 0x55, 0x28, 0x0d, 0xcf, 0x5a, 0x38, 0x6f, 0xee, 0x62, 0x59, 0xc9, 0xe5, 0x70, 0xc1, 0x91, 0xb1, + 0x91, 0x33, 0x55, 0xcd, 0x28, 0xeb, 0x46, 0xdc, 0xd5, 0x41, 0x84, 0xd2, 0x54, 0x66, 0x9e, 0x8b, + 0x30, 0x88, 0x91, 0x7f, 0xd1, 0x0c, 0x07, 0xc9, 0x0e, 0xe1, 0x8b, 0x77, 0x47, 0xd1, 0xc9, 0x34, + 0x60, 0xda, 0xa7, 0x97, 0x60, 0xf7, 0x5d, 0xdb, 0x5d, 0xbf, 0x2a, 0xd6, 0x95, 0x3d, 0xba, 0x62, + 0x3a, 0x33, 0xc3, 0x64, 0xea, 0x67, 0x27, 0x27, 0x27, 0xbf, 0x2c, 0x81, 0x26, 0x77, 0xfa, 0xdb, + 0xc6, 0x62, 0xe2, 0xa7, 0x7f, 0xd4, 0x32, 0xfa, 0x79, 0x4c, 0xea, 0xbc, 0x6b, 0xb3, 0xd5, 0x9d, + 0x25, 0x4a, 0x28, 0x03, 0x3b, 0x73, 0xa6, 0xf9, 0xb6, 0x86, 0x65, 0x7c, 0xbf, 0xa0, 0x59, 0xcc, + 0x50, 0x76, 0x66, 0xce, 0x12, 0x94, 0xe9, 0x2b, 0x65, 0x14, 0x3a, 0x4b, 0xf1, 0xb1, 0x56, 0xf1, + 0xbd, 0xdf, 0x8e, 0x8e, 0x02, 0xa9, 0x83, 0xe9, 0xcc, 0x53, 0x15, 0x94, 0x85, 0xed, 0x7c, 0x3f, + 0x15, 0x94, 0x6d, 0x4c, 0x07, 0xd6, 0x96, 0x79, 0xe6, 0xcb, 0x12, 0x88, 0xfc, 0xd6, 0x43, 0xd0, + 0xa9, 0xd8, 0x39, 0x4d, 0x4b, 0x26, 0x36, 0x15, 0x1b, 0x5f, 0x99, 0xa1, 0x9d, 0xb1, 0x62, 0xe2, + 0x7b, 0xef, 0x45, 0x7e, 0x08, 0x80, 0x04, 0x99, 0xde, 0xaa, 0xb2, 0x8d, 0x6f, 0x8c, 0xff, 0xa8, + 0x04, 0xc6, 0xe0, 0x28, 0x3c, 0x57, 0x19, 0x72, 0xa2, 0x3c, 0xe6, 0xc4, 0xaa, 0x62, 0x29, 0x79, + 0xec, 0x60, 0xcb, 0x46, 0xd1, 0x54, 0x72, 0x3a, 0x39, 0xb3, 0x14, 0x89, 0x03, 0xa1, 0x79, 0xe4, + 0x3f, 0x03, 0xd8, 0x37, 0xa7, 0x14, 0x9c, 0xdc, 0x8e, 0xe2, 0x9f, 0xa0, 0xaa, 0x81, 0x35, 0x3f, + 0xf1, 0xc0, 0x5a, 0x8e, 0x37, 0xb0, 0x4b, 0x3f, 0x2a, 0x81, 0xe7, 0xe0, 0x33, 0xf0, 0x0c, 0xef, + 0x67, 0xf8, 0xa8, 0x5a, 0x52, 0xc9, 0x69, 0x3e, 0xa6, 0x1f, 0x02, 0x78, 0x6a, 0x1d, 0xe7, 0x0b, + 0xa6, 0xa5, 0x58, 0x7b, 0xaf, 0xd8, 0xd8, 0xca, 0xe8, 0x66, 0xee, 0x6d, 0xcd, 0x60, 0xe6, 0x31, + 0xd0, 0x29, 0x70, 0xbc, 0x4e, 0x5d, 0xfe, 0x51, 0x09, 0x5c, 0x82, 0x17, 0xe1, 0x48, 0xb9, 0xa1, + 0x04, 0x69, 0x29, 0xe1, 0x36, 0xe5, 0xed, 0x1a, 0x98, 0x1a, 0x59, 0x84, 0x6d, 0xd9, 0x95, 0x35, + 0x09, 0xe7, 0x4c, 0x4b, 0x2d, 0x3b, 0x2e, 0xa0, 0xe2, 0xb8, 0x90, 0xb2, 0xb2, 0xd9, 0x6a, 0x93, + 0xe8, 0x67, 0xd4, 0x07, 0xa3, 0xbb, 0x8a, 0x5e, 0xe4, 0x13, 0x27, 0xb1, 0x2f, 0x23, 0xff, 0xae, + 0x05, 0x0a, 0xe9, 0xa2, 0x63, 0xce, 0x61, 0xcb, 0x59, 0x34, 0xb6, 0x4c, 0x3a, 0x28, 0x03, 0x76, + 0x2b, 0x45, 0xc7, 0x94, 0xa9, 0x13, 0x6a, 0x3b, 0x8a, 0xc3, 0xd0, 0xbb, 0x52, 0xe3, 0xf5, 0x5c, + 0x08, 0x02, 0xa1, 0x6d, 0x71, 0xdf, 0x96, 0xf8, 0x4c, 0x38, 0x33, 0xf0, 0x49, 0x09, 0xa0, 0x0a, + 0xbc, 0xe6, 0x68, 0x8a, 0xae, 0xbd, 0x8b, 0xa5, 0x4e, 0x85, 0x97, 0x51, 0x31, 0x94, 0x85, 0x42, + 0xa5, 0x3d, 0xcf, 0x02, 0x69, 0x4f, 0x0d, 0x55, 0x9d, 0x21, 0xeb, 0xae, 0x87, 0x2d, 0x75, 0xb9, + 0x20, 0x7c, 0x7d, 0x8c, 0xc1, 0x1e, 0x4f, 0xaf, 0x8b, 0xd4, 0x8a, 0xba, 0x07, 0x49, 0xb9, 0x3d, + 0x56, 0x8c, 0x46, 0xbd, 0x2d, 0x6a, 0xb6, 0x5d, 0xe4, 0x26, 0xa0, 0xad, 0x82, 0xba, 0x48, 0x4b, + 0xd1, 0x4b, 0xb0, 0x9d, 0xf8, 0x97, 0x16, 0x9d, 0x6c, 0xd7, 0x17, 0x78, 0xae, 0xde, 0x3c, 0x94, + 0x1f, 0x8d, 0x04, 0x55, 0xc3, 0x66, 0x1f, 0xa9, 0x1b, 0x44, 0x67, 0x92, 0xcc, 0x27, 0x71, 0xed, + 0xb5, 0x3c, 0x16, 0x5b, 0x8f, 0x1a, 0x63, 0x26, 0xc6, 0x1d, 0x31, 0xa9, 0x8b, 0x2a, 0xaf, 0x11, + 0x5d, 0x52, 0x3b, 0xf2, 0x3b, 0x11, 0xd8, 0x9f, 0xf6, 0xdd, 0x26, 0xb2, 0xd8, 0x51, 0x34, 0xdd, + 0x46, 0x77, 0x60, 0x3b, 0xb9, 0x66, 0xb8, 0x67, 0x31, 0x68, 0xe0, 0x8c, 0x39, 0xfd, 0x60, 0xbf, + 0xcb, 0x7f, 0x35, 0x29, 0x9b, 0x61, 0x20, 0x41, 0x52, 0xc3, 0xcf, 0xea, 0x97, 0xe1, 0x40, 0xd1, + 0xc6, 0x32, 0xc5, 0x67, 0xce, 0xb6, 0xdb, 0x0c, 0xf3, 0xe8, 0xfa, 0x02, 0xcd, 0xcc, 0xe7, 0x0b, + 0xce, 0xde, 0x42, 0x93, 0xd4, 0x5b, 0xb4, 0x31, 0xe9, 0x2d, 0x6b, 0x96, 0x83, 0x7d, 0xaf, 0x6c, + 0x13, 0x0a, 0x64, 0x75, 0xdb, 0xf4, 0x01, 0xb4, 0xa7, 0xc6, 0x02, 0x18, 0xfe, 0x8e, 0x8d, 0xcf, + 0x51, 0x15, 0xba, 0x1f, 0xec, 0x85, 0x26, 0xd7, 0x44, 0xb0, 0xef, 0xe8, 0x25, 0xd8, 0x61, 0x61, + 0x55, 0xb3, 0x48, 0xc7, 0x88, 0x1b, 0xd1, 0x4a, 0xb7, 0xe3, 0xf9, 0x2f, 0x4b, 0x80, 0x1e, 0x33, + 0x51, 0xab, 0x45, 0x7c, 0x8f, 0xda, 0x98, 0x88, 0xd5, 0x2c, 0x00, 0x5e, 0xf4, 0x43, 0x00, 0x16, + 0x80, 0xd4, 0xee, 0x2a, 0xbe, 0x62, 0xe9, 0x28, 0x0d, 0x85, 0x32, 0x0e, 0xf7, 0x21, 0xc4, 0x58, + 0x9d, 0x11, 0x02, 0xa9, 0xdb, 0x95, 0xe7, 0x0e, 0x05, 0x37, 0xa0, 0xfd, 0xb0, 0xcb, 0xff, 0x94, + 0x50, 0xcb, 0x54, 0x32, 0x05, 0x7b, 0x60, 0x87, 0xc4, 0xe5, 0x13, 0xaf, 0x48, 0xcb, 0x08, 0xcc, + 0x66, 0x2e, 0xc2, 0x3e, 0xdf, 0x6c, 0xc8, 0xb9, 0x1d, 0x53, 0xcb, 0x61, 0xd4, 0xfd, 0xa8, 0x04, + 0x5a, 0x0e, 0x4a, 0xa0, 0xf9, 0xb0, 0x04, 0x5a, 0xa6, 0x93, 0x33, 0x99, 0x0b, 0xb0, 0xd7, 0x3b, + 0x46, 0xaf, 0x5c, 0xeb, 0x41, 0x09, 0x44, 0x89, 0xdc, 0x95, 0xe4, 0xd5, 0xa5, 0x48, 0xbc, 0x59, + 0x68, 0x59, 0x8a, 0xc4, 0xa3, 0x42, 0xeb, 0xc8, 0x9f, 0x45, 0x61, 0x1f, 0x73, 0x33, 0x33, 0x8a, + 0x8d, 0xd5, 0xb2, 0xc9, 0x43, 0x6f, 0xc0, 0x8e, 0xbb, 0xa4, 0x29, 0xfe, 0x9d, 0x6e, 0xf3, 0xf6, + 0xd4, 0x74, 0xbd, 0xe5, 0x5d, 0xe3, 0x0c, 0xcc, 0x44, 0x0e, 0xc8, 0x3a, 0x6d, 0xbf, 0x6b, 0x57, + 0xd0, 0x73, 0xb0, 0x27, 0xc7, 0xac, 0xac, 0xa7, 0x09, 0xb6, 0xb1, 0x27, 0xeb, 0x5a, 0x92, 0x90, + 0x23, 0x84, 0xe3, 0x0b, 0xb9, 0x40, 0x1d, 0xb2, 0xe1, 0xa0, 0xe3, 0x5a, 0x4d, 0xb9, 0x68, 0x63, + 0x4b, 0xde, 0xe4, 0x56, 0x93, 0x2f, 0xca, 0xd9, 0x7a, 0x4d, 0xd5, 0xb4, 0xec, 0xbc, 0xbd, 0x7e, + 0x27, 0x4c, 0x00, 0x5d, 0x87, 0x1d, 0x86, 0xe9, 0x19, 0x54, 0xb4, 0xee, 0xf2, 0x6f, 0x37, 0xcc, + 0x4a, 0x7f, 0xd7, 0xe0, 0x90, 0xa2, 0xdf, 0x53, 0xf6, 0x6c, 0x19, 0x1b, 0xd4, 0x8b, 0xf1, 0x3d, + 0x80, 0xd6, 0xba, 0x40, 0x83, 0x4c, 0x73, 0x9e, 0x2a, 0x2e, 0x79, 0x66, 0xfa, 0x07, 0xf0, 0x9c, + 0x1f, 0xb4, 0x7a, 0xde, 0x63, 0x75, 0x91, 0xcf, 0x78, 0x91, 0x83, 0xf3, 0x8f, 0xfe, 0x01, 0x80, + 0xa7, 0xf2, 0x8a, 0xae, 0xe5, 0x34, 0xb3, 0x68, 0xb3, 0x49, 0xce, 0x6b, 0x8e, 0xb6, 0x4d, 0x97, + 0xb4, 0x18, 0x6f, 0xc0, 0xc4, 0x5c, 0x7e, 0xb0, 0x5f, 0x1b, 0xc1, 0x73, 0xdb, 0xe4, 0x46, 0x67, + 0xb0, 0x2c, 0x4b, 0xa6, 0xfd, 0x56, 0x59, 0x32, 0xf3, 0x1c, 0x14, 0xca, 0x43, 0x72, 0x97, 0x7e, + 0xcf, 0xa3, 0x12, 0x88, 0x1e, 0x94, 0x40, 0xe4, 0xb0, 0x04, 0xa2, 0xb3, 0x49, 0xb6, 0xf8, 0x89, + 0x1b, 0xfb, 0x1b, 0x51, 0x78, 0x6a, 0x6d, 0x47, 0x29, 0xe0, 0x8c, 0xe9, 0x64, 0xf1, 0x16, 0x36, + 0x6c, 0xec, 0xb9, 0xd9, 0x4c, 0xc2, 0x2e, 0xa5, 0x50, 0xd0, 0xf9, 0xc6, 0x94, 0x35, 0x95, 0x9f, + 0xde, 0x6d, 0xdc, 0x40, 0x88, 0x09, 0xa9, 0xd3, 0x23, 0xb0, 0xa8, 0xa2, 0x6f, 0xc1, 0x0e, 0xa5, + 0xa0, 0x31, 0xf3, 0xf7, 0x36, 0x76, 0xcf, 0xa8, 0x53, 0x81, 0x81, 0xaf, 0xe1, 0x9c, 0x85, 0xa9, + 0xaf, 0x2a, 0x41, 0xa5, 0xa0, 0x91, 0xfd, 0xff, 0x32, 0xde, 0x43, 0x77, 0x60, 0x5c, 0x33, 0x6c, + 0x47, 0x31, 0x72, 0xb8, 0x21, 0xc7, 0x3f, 0xf1, 0x60, 0x7f, 0xc8, 0x26, 0x9d, 0x97, 0x37, 0x4d, + 0xe2, 0x54, 0xd2, 0xee, 0xcb, 0x2e, 0xc4, 0xc7, 0xfb, 0x40, 0x2a, 0xe3, 0xa1, 0x6b, 0x30, 0xe6, + 0xba, 0xfc, 0x11, 0xe6, 0x77, 0x3e, 0x2a, 0x01, 0xf0, 0x09, 0xb1, 0x18, 0x7e, 0xd7, 0x93, 0x78, + 0xfe, 0x9f, 0xfe, 0x51, 0x8b, 0xe4, 0x8a, 0xa3, 0xdf, 0x02, 0xb0, 0xcb, 0xdd, 0x2f, 0xd4, 0x85, + 0x71, 0x8f, 0xb8, 0x85, 0x7a, 0xbb, 0xa6, 0xe6, 0xa4, 0x8e, 0xbb, 0x3b, 0x84, 0xb8, 0x35, 0xf6, + 0xbc, 0xe1, 0x58, 0x7b, 0x99, 0x29, 0xcf, 0xe3, 0x6d, 0xff, 0x08, 0xc4, 0x47, 0x5a, 0xad, 0x88, + 0x90, 0x10, 0x13, 0xb4, 0x3f, 0x1f, 0x81, 0x16, 0x81, 0x99, 0x64, 0xf8, 0x11, 0x88, 0x8d, 0x51, + 0x0b, 0x9d, 0x90, 0x3a, 0x37, 0xbd, 0x30, 0x28, 0x49, 0x6e, 0x4f, 0xba, 0xa9, 0xa8, 0xdc, 0x5b, + 0x97, 0xa9, 0xc3, 0x43, 0x8d, 0xbb, 0x24, 0xb0, 0x1a, 0xe6, 0xa4, 0xaf, 0x10, 0xe7, 0x67, 0x10, + 0xc6, 0xee, 0xda, 0x72, 0x41, 0x71, 0x76, 0xe8, 0x9a, 0x6f, 0x93, 0x5a, 0xef, 0xda, 0xab, 0x8a, + 0xb3, 0x83, 0x5e, 0x84, 0x91, 0xbc, 0xa9, 0x62, 0x31, 0x4e, 0x7d, 0x99, 0xb1, 0x7a, 0x03, 0xac, + 0x8c, 0xed, 0x96, 0xa9, 0x62, 0x89, 0xea, 0x0d, 0x7d, 0x17, 0xa2, 0xea, 0xe1, 0x21, 0x01, 0xb6, + 0x90, 0xb5, 0xc0, 0xdc, 0x2f, 0xf2, 0xb1, 0xe2, 0x69, 0x35, 0x7b, 0x3c, 0xad, 0x1b, 0xcd, 0xd7, + 0xc0, 0xc8, 0x6f, 0x02, 0xd8, 0xb9, 0xc6, 0x08, 0xb6, 0xac, 0x99, 0x57, 0x34, 0x03, 0x0d, 0xc0, + 0x56, 0x95, 0x7e, 0xe2, 0x00, 0xfc, 0x1b, 0x7a, 0x0e, 0x76, 0xb9, 0x4c, 0x1c, 0xaf, 0x67, 0x60, + 0x9d, 0xb6, 0x4f, 0xfd, 0x3b, 0x70, 0x50, 0x33, 0x1c, 0x6c, 0x19, 0x8a, 0x2e, 0x07, 0xe4, 0x99, + 0x7f, 0x5c, 0x76, 0x20, 0xfa, 0x5d, 0x39, 0x5f, 0xfb, 0x23, 0xff, 0xb6, 0x19, 0x76, 0xcd, 0xa9, + 0x06, 0x2f, 0xa4, 0xfb, 0x62, 0x0e, 0xf6, 0xa8, 0xe6, 0x3d, 0x83, 0xce, 0xb7, 0x8a, 0x75, 0x6d, + 0x17, 0x97, 0xdd, 0xb1, 0x5a, 0xd6, 0x43, 0x70, 0x15, 0xb2, 0x5c, 0x1e, 0xbd, 0x00, 0xbb, 0xc8, + 0x27, 0xd9, 0x76, 0x2c, 0xac, 0xe4, 0x2b, 0xc6, 0xb8, 0x16, 0x42, 0x27, 0x91, 0x5e, 0x73, 0x85, + 0xd1, 0x69, 0xd8, 0xc6, 0x58, 0x07, 0xc7, 0xd1, 0xd9, 0x92, 0x96, 0xe2, 0xb4, 0x60, 0xdd, 0xd1, + 0x91, 0x04, 0xbb, 0xfd, 0x63, 0x75, 0xd7, 0x6c, 0x5d, 0x86, 0xcb, 0x37, 0x6e, 0xa9, 0xcb, 0x37, + 0x8f, 0x76, 0xe6, 0x7c, 0xe5, 0x76, 0xeb, 0x39, 0x50, 0x9b, 0xc9, 0x19, 0x40, 0x0e, 0xd4, 0xca, + 0x75, 0xc0, 0x80, 0xdd, 0x73, 0xba, 0x86, 0x0d, 0x67, 0x71, 0x95, 0xad, 0x39, 0x1b, 0x7d, 0x1f, + 0xf6, 0xe4, 0x68, 0x91, 0xac, 0x15, 0xf8, 0x0a, 0x65, 0x6c, 0x60, 0x5b, 0x66, 0x82, 0xac, 0xec, + 0x8e, 0x0f, 0x41, 0xdb, 0x48, 0xcc, 0x22, 0x67, 0x04, 0xbb, 0xee, 0x52, 0x23, 0x17, 0x75, 0x3f, + 0xc5, 0x81, 0x8f, 0x94, 0x62, 0xe0, 0x05, 0x0e, 0x3e, 0xf2, 0x53, 0x00, 0x07, 0xee, 0x38, 0x86, + 0x42, 0x89, 0x0e, 0xb6, 0xd1, 0x8a, 0x16, 0x73, 0x25, 0x7e, 0x00, 0xd1, 0xbb, 0x8e, 0xa1, 0x70, + 0xb2, 0xe8, 0x71, 0x1c, 0xbe, 0x9e, 0x07, 0xfb, 0x11, 0xa2, 0x5a, 0xb9, 0x6d, 0x4b, 0x02, 0xf9, + 0xce, 0x7c, 0x04, 0xee, 0x9f, 0xd9, 0x70, 0x90, 0xc2, 0x7b, 0x8d, 0x24, 0x6f, 0x43, 0x6d, 0xa0, + 0x8d, 0xb3, 0x0f, 0xf6, 0x85, 0xa0, 0xbe, 0xc7, 0xc2, 0xf7, 0x93, 0xba, 0x74, 0xa5, 0x8a, 0x35, + 0x3a, 0xf2, 0x9b, 0x2d, 0xb0, 0x3f, 0xbb, 0xb2, 0x16, 0x32, 0xda, 0x35, 0xd8, 0xa1, 0xaa, 0xa6, + 0x2d, 0x17, 0x2c, 0x73, 0x4b, 0xd3, 0xdd, 0xf3, 0x6c, 0xec, 0x08, 0x4f, 0x3c, 0x9b, 0x35, 0x09, + 0x18, 0xd1, 0x70, 0x3d, 0x14, 0x82, 0xc2, 0x8b, 0xd0, 0x06, 0xec, 0x74, 0xd9, 0x2d, 0x86, 0x1a, + 0xa7, 0xa8, 0xcf, 0x1f, 0x81, 0x3a, 0xc7, 0xd8, 0x2f, 0x2f, 0x6c, 0x47, 0xce, 0x53, 0x86, 0xde, + 0x86, 0xbd, 0xd4, 0x9b, 0xcf, 0x99, 0x3a, 0x31, 0xd9, 0x05, 0x46, 0xb2, 0x88, 0x6d, 0x8d, 0xf2, + 0x9e, 0x99, 0x81, 0x07, 0xfb, 0x61, 0x08, 0x12, 0x72, 0x0b, 0x17, 0xcb, 0x65, 0xe8, 0x0d, 0xd8, + 0xaa, 0x59, 0x45, 0x1d, 0xdb, 0x22, 0x6c, 0x98, 0xa9, 0x4c, 0x3c, 0xd8, 0x8f, 0x52, 0xa5, 0x03, + 0xef, 0xc1, 0x2b, 0x78, 0x56, 0x22, 0xc7, 0x1c, 0xf9, 0x18, 0xc0, 0x2e, 0xff, 0x44, 0xa2, 0x65, + 0x38, 0xc0, 0xdd, 0x0c, 0xfa, 0x44, 0x3c, 0xae, 0x40, 0x7d, 0x33, 0xd1, 0xc7, 0xb4, 0xb2, 0xaa, + 0x69, 0x57, 0x8e, 0x74, 0xb4, 0x02, 0x07, 0x5d, 0x42, 0x27, 0x08, 0x57, 0xdf, 0x66, 0xf4, 0x73, + 0x35, 0x3f, 0x5e, 0x66, 0x04, 0x0e, 0x04, 0x70, 0xdc, 0x2d, 0x1d, 0xe7, 0xbe, 0x34, 0xe0, 0x7b, + 0xf9, 0x3f, 0x02, 0xd8, 0x1d, 0x78, 0x9a, 0x28, 0x0d, 0x21, 0x5b, 0x11, 0xb6, 0xf6, 0x2e, 0xe6, + 0xa7, 0x69, 0xe2, 0x93, 0x12, 0x88, 0x4c, 0x4d, 0xa6, 0x66, 0x7e, 0x56, 0x02, 0x80, 0x1f, 0xa7, + 0xed, 0x64, 0xaa, 0x62, 0x63, 0x51, 0xf1, 0xbd, 0xd5, 0x51, 0xb0, 0xd0, 0x24, 0x31, 0x7b, 0xb5, + 0xa6, 0xbd, 0x8b, 0xd1, 0x12, 0x74, 0x7b, 0x26, 0xfb, 0x17, 0xd7, 0x11, 0x97, 0x24, 0xae, 0xe4, + 0x5b, 0x5c, 0x09, 0xd8, 0xe7, 0xc3, 0xa8, 0x31, 0x14, 0xe6, 0xed, 0x8f, 0xfc, 0x5e, 0x33, 0x44, + 0x6b, 0xba, 0x79, 0x8f, 0x3c, 0x2c, 0xcf, 0x0c, 0xbf, 0x0a, 0x07, 0x2d, 0xfc, 0x4e, 0x11, 0xdb, + 0x8e, 0x6b, 0x9e, 0xca, 0x0c, 0x21, 0xe3, 0x61, 0xce, 0x7d, 0x52, 0x02, 0xd1, 0xa9, 0xc9, 0x10, + 0x9e, 0xea, 0x77, 0xbf, 0x00, 0xa3, 0x07, 0xdd, 0x52, 0x3f, 0xd7, 0xe7, 0x56, 0x89, 0xb3, 0x85, + 0x68, 0x09, 0x76, 0xbb, 0xc0, 0x2e, 0x20, 0xa8, 0x00, 0x5e, 0x09, 0x03, 0xfc, 0xf4, 0x5f, 0xa1, + 0xd1, 0x83, 0xee, 0x85, 0x26, 0xa9, 0x8b, 0x6b, 0xba, 0x58, 0x9e, 0x65, 0x10, 0xc4, 0x6c, 0x6c, + 0x19, 0x48, 0x3e, 0xbc, 0xcc, 0x25, 0x38, 0x10, 0xc0, 0xf1, 0x5a, 0x76, 0xc0, 0xfd, 0xc5, 0x96, + 0x29, 0x6a, 0xd9, 0x89, 0xb7, 0x78, 0x00, 0x20, 0x62, 0xc7, 0x41, 0x85, 0xc9, 0xc0, 0xe4, 0x3e, + 0x2d, 0x58, 0xb6, 0x42, 0x99, 0x02, 0xb7, 0xac, 0x31, 0x1b, 0x5b, 0xed, 0xd5, 0x76, 0x5b, 0xb6, + 0xe2, 0xc3, 0x7e, 0x13, 0x22, 0x9c, 0x53, 0x83, 0xe8, 0xcd, 0xc7, 0x43, 0xef, 0xa1, 0x50, 0x5e, + 0xfc, 0x91, 0x7f, 0xd6, 0x02, 0x63, 0xe9, 0x82, 0xb6, 0x56, 0xc0, 0x39, 0x94, 0x23, 0xee, 0xae, + 0x46, 0x1c, 0x49, 0xcd, 0xd0, 0xe8, 0xee, 0x02, 0x0d, 0x5b, 0x23, 0xf1, 0xc1, 0x7e, 0x40, 0xd9, + 0x75, 0x2b, 0x3a, 0x95, 0x82, 0x96, 0x2d, 0x97, 0xa2, 0x37, 0xe1, 0xe9, 0x32, 0x39, 0x5b, 0xc0, + 0x86, 0x4c, 0x94, 0x78, 0x30, 0xf0, 0x88, 0xfd, 0x5c, 0xf6, 0x54, 0x16, 0x9a, 0x24, 0xd1, 0xa5, + 0x70, 0x0b, 0xd8, 0x48, 0x17, 0xb4, 0x8d, 0x32, 0x00, 0xda, 0x87, 0x43, 0xdc, 0xf2, 0x84, 0xc1, + 0x47, 0x8e, 0xbe, 0xef, 0x55, 0x41, 0xae, 0x61, 0xc7, 0xd1, 0x8c, 0x6d, 0xdb, 0xdb, 0xfe, 0x20, + 0x6b, 0xa3, 0x4a, 0x36, 0x73, 0x13, 0x0e, 0x85, 0xb4, 0xeb, 0xae, 0xab, 0x4b, 0x81, 0xab, 0x3a, + 0xb1, 0x16, 0x1f, 0x3e, 0x04, 0x68, 0x6b, 0xf6, 0x7e, 0xee, 0xf2, 0x3d, 0x45, 0x29, 0x5c, 0x56, + 0xd4, 0x5d, 0xe2, 0xaf, 0xab, 0x7c, 0xbb, 0xfe, 0x05, 0x80, 0xa7, 0x6a, 0x76, 0x08, 0xcd, 0xc1, + 0xe1, 0x2d, 0x45, 0xd3, 0x65, 0x73, 0x17, 0x5b, 0xc4, 0x18, 0xa9, 0xf2, 0xa6, 0xa9, 0xee, 0x05, + 0xc7, 0x1b, 0x97, 0x4e, 0x13, 0xa9, 0xdb, 0xae, 0x50, 0xc6, 0x54, 0xf7, 0x3c, 0x13, 0xb6, 0x00, + 0xcf, 0x2b, 0xba, 0x6e, 0xde, 0x93, 0x4d, 0x43, 0xdf, 0x93, 0xc9, 0x91, 0xa1, 0x6d, 0x69, 0x58, + 0x95, 0xdf, 0x29, 0x62, 0x6b, 0xcf, 0x25, 0x5e, 0xa2, 0x14, 0xe7, 0x2c, 0x15, 0xbc, 0x6d, 0xe8, + 0x7b, 0x6b, 0xae, 0xd8, 0xf7, 0x88, 0x14, 0xe7, 0x56, 0xbe, 0x03, 0xcf, 0x84, 0x22, 0xb9, 0x0e, + 0x4f, 0x2b, 0x05, 0x39, 0x55, 0x0d, 0xc2, 0x6d, 0x86, 0xd7, 0x50, 0x2d, 0x45, 0xe2, 0x2d, 0x42, + 0x64, 0xc4, 0x81, 0x7d, 0x0b, 0x8e, 0x53, 0x98, 0x5a, 0xe5, 0x67, 0xda, 0x6d, 0x16, 0x13, 0x46, + 0x6f, 0xc0, 0x7e, 0xee, 0xe8, 0x3b, 0x96, 0x62, 0xd8, 0x5b, 0xa6, 0x95, 0x57, 0x3c, 0x2b, 0xf6, + 0x62, 0xe0, 0x01, 0xb3, 0x06, 0xd6, 0x7d, 0xa2, 0xf4, 0xfa, 0xd5, 0xb7, 0x13, 0x52, 0x33, 0xf2, + 0xd3, 0x66, 0xd8, 0x4b, 0x9a, 0x0d, 0xb6, 0x6a, 0xc1, 0x33, 0x3b, 0x8e, 0x53, 0x90, 0xcb, 0xc7, + 0x2e, 0x5f, 0x69, 0xbb, 0x53, 0x74, 0xc8, 0x8d, 0x10, 0x17, 0x61, 0xa3, 0x21, 0xeb, 0x79, 0xc7, + 0xd3, 0x1c, 0xbb, 0x62, 0x6f, 0x4c, 0x91, 0x39, 0x42, 0x1b, 0xb5, 0xda, 0x4c, 0xb1, 0x36, 0xeb, + 0x5b, 0xbe, 0x30, 0xdc, 0x14, 0xc5, 0x95, 0xe0, 0x50, 0xad, 0xb1, 0xec, 0xa6, 0xf8, 0x3e, 0xa9, + 0x85, 0x3a, 0x10, 0xd6, 0xdb, 0x8d, 0xd4, 0x8d, 0xc8, 0xcf, 0x5f, 0x04, 0x53, 0x99, 0x4b, 0xb0, + 0xcf, 0x8f, 0xec, 0xb9, 0x84, 0x47, 0xb8, 0xbb, 0x1c, 0x9d, 0x49, 0x4e, 0x27, 0x53, 0xfc, 0x90, + 0xed, 0x67, 0xb3, 0xed, 0xf2, 0x5d, 0x7c, 0x56, 0x46, 0xfe, 0x5b, 0x06, 0x76, 0xdd, 0xd4, 0xcd, + 0x4d, 0x45, 0x27, 0x0b, 0x85, 0x5e, 0x3c, 0x5e, 0x80, 0x31, 0xd7, 0x9f, 0x67, 0xa1, 0xa2, 0x67, + 0xbc, 0xa1, 0xa2, 0x5f, 0x6f, 0xae, 0x18, 0xbb, 0xf3, 0x1e, 0x3f, 0xc5, 0xd5, 0x41, 0x8b, 0xb0, + 0xd5, 0x32, 0x8b, 0xc4, 0x80, 0x36, 0x72, 0xbd, 0xee, 0x7d, 0xb0, 0x1f, 0xa5, 0xe2, 0xf4, 0x1a, + 0xfa, 0x21, 0xb9, 0x86, 0x36, 0x4b, 0x1c, 0x00, 0xbd, 0x0e, 0xbb, 0xef, 0x96, 0x69, 0x2e, 0x9a, + 0x5b, 0xc0, 0xe7, 0x6c, 0xf2, 0x28, 0x66, 0x2c, 0x18, 0x3f, 0x95, 0xba, 0x2a, 0x40, 0x8b, 0xc6, + 0x96, 0x89, 0xde, 0x82, 0x28, 0x10, 0xe6, 0xd5, 0xca, 0x77, 0xee, 0x23, 0x7b, 0x5c, 0x15, 0x21, + 0x96, 0x7a, 0xfc, 0xf1, 0x71, 0x0d, 0xdb, 0x68, 0xb7, 0x72, 0xf0, 0x95, 0x4f, 0x7b, 0x53, 0x56, + 0x54, 0x55, 0x6c, 0xa5, 0xad, 0x3c, 0x1f, 0xba, 0x7d, 0x6e, 0x29, 0x86, 0x56, 0x28, 0xea, 0x74, + 0x8b, 0xb0, 0x67, 0x44, 0x1b, 0xed, 0x2b, 0xcf, 0x79, 0xc2, 0x33, 0xe7, 0xbd, 0x01, 0x77, 0xc0, + 0x4c, 0xab, 0x2a, 0xba, 0x4f, 0xc3, 0xa7, 0x05, 0xd3, 0xb0, 0x71, 0xb0, 0xe1, 0xd8, 0xd3, 0x6a, + 0xb8, 0xcf, 0x6d, 0xc1, 0xd7, 0xf2, 0x6d, 0x78, 0x2a, 0x64, 0xc4, 0x2c, 0x96, 0x27, 0xf6, 0xd0, + 0xa5, 0x14, 0x0e, 0x37, 0x10, 0x1c, 0x87, 0x44, 0x75, 0xd0, 0xf7, 0xe0, 0x50, 0xd8, 0x50, 0x38, + 0x62, 0xbc, 0x0e, 0xe2, 0x60, 0x55, 0x07, 0x39, 0xe4, 0x6d, 0xd8, 0xe5, 0xe8, 0x36, 0xb3, 0xb8, + 0x34, 0x90, 0xc3, 0x2f, 0x03, 0x17, 0x02, 0x93, 0x92, 0x35, 0xef, 0x19, 0xec, 0xd2, 0xbc, 0xae, + 0xdb, 0xcc, 0xf4, 0x92, 0xf9, 0x20, 0x57, 0x64, 0x87, 0x17, 0xb0, 0x38, 0xd0, 0x0a, 0xec, 0x26, + 0x80, 0x34, 0x82, 0xc1, 0xed, 0xf8, 0x06, 0x45, 0x7c, 0x36, 0x80, 0xe8, 0xf1, 0x08, 0xaa, 0xf0, + 0x48, 0x5d, 0xd9, 0xbe, 0xb3, 0x98, 0x11, 0xa4, 0xec, 0xc8, 0xf3, 0x0d, 0x26, 0x8b, 0xd0, 0x35, + 0xce, 0x02, 0x4c, 0x4b, 0xb0, 0x73, 0xb3, 0xb8, 0xb5, 0x85, 0x2d, 0x37, 0xcb, 0xa3, 0x83, 0x76, + 0xe7, 0x5c, 0x00, 0x29, 0x43, 0x65, 0x2a, 0x3b, 0xc4, 0xbd, 0x3f, 0x31, 0x5d, 0x9e, 0xe5, 0xf1, + 0x5d, 0xd8, 0x9e, 0x33, 0x2d, 0xdb, 0x45, 0xea, 0x0c, 0x25, 0xda, 0xe6, 0x4c, 0xcb, 0xe6, 0xac, + 0x36, 0xc3, 0x80, 0xb9, 0x72, 0x09, 0xfa, 0x16, 0x8c, 0x16, 0xc8, 0x25, 0x52, 0xec, 0xa6, 0xe3, + 0xa9, 0x1b, 0xb1, 0x29, 0x27, 0x11, 0x48, 0x4c, 0x07, 0x5d, 0x81, 0x2d, 0x77, 0xef, 0x39, 0xa2, + 0xd0, 0xc0, 0xae, 0x6c, 0x7d, 0xb0, 0x4f, 0x64, 0x25, 0xf2, 0x0f, 0x9a, 0x82, 0xf1, 0x7b, 0xca, + 0x16, 0x8b, 0x76, 0x23, 0xda, 0xe7, 0x81, 0x80, 0xf2, 0xab, 0x0a, 0xcb, 0x6b, 0x89, 0xdd, 0x63, + 0x1f, 0x50, 0x1e, 0xf6, 0xf3, 0x08, 0x83, 0x6c, 0xb1, 0x94, 0x06, 0x99, 0xf5, 0xbb, 0xf7, 0x68, + 0x2a, 0xbe, 0x46, 0x2a, 0x04, 0x9f, 0x8d, 0x5e, 0xb5, 0xba, 0x1a, 0x9d, 0x87, 0x1d, 0x8a, 0xaa, + 0xca, 0xba, 0xc9, 0x6e, 0xdd, 0x62, 0x1f, 0x3d, 0xb5, 0xdb, 0x15, 0x55, 0x5d, 0xe6, 0x45, 0xc4, + 0x42, 0xe5, 0x2a, 0xb1, 0x7f, 0x77, 0x6d, 0xf5, 0x1f, 0x7d, 0x31, 0x0e, 0x64, 0x0c, 0xf0, 0x6e, + 0xf4, 0x78, 0xc0, 0xf8, 0x52, 0xfb, 0x9d, 0x08, 0xec, 0xe4, 0x51, 0x53, 0x6c, 0x59, 0xa6, 0x65, + 0x8b, 0x03, 0x74, 0xa6, 0xbf, 0x5d, 0x0f, 0xdd, 0x7f, 0x58, 0x8c, 0xcf, 0x51, 0xfd, 0x79, 0xaa, + 0xce, 0x78, 0xc6, 0x3f, 0xa0, 0xf7, 0xa1, 0xd0, 0xb0, 0x6b, 0xc7, 0x47, 0xa0, 0x6d, 0x84, 0x5c, + 0xd6, 0xfe, 0x4b, 0x64, 0xb4, 0x85, 0xee, 0xd6, 0x8f, 0xdc, 0xdb, 0x6e, 0xd7, 0x47, 0xa0, 0x7d, + 0xac, 0x12, 0x96, 0x3d, 0xfc, 0xf4, 0xf7, 0x5b, 0x7e, 0x1f, 0x7c, 0xf0, 0x10, 0x3c, 0x02, 0xe8, + 0x3f, 0x80, 0x2f, 0x4a, 0xe0, 0xdf, 0x83, 0x85, 0xf5, 0xf5, 0xd5, 0x04, 0x6d, 0x28, 0x91, 0x33, + 0x55, 0x9c, 0xa0, 0x74, 0x5e, 0x62, 0x3a, 0x39, 0x93, 0x9c, 0x4d, 0x98, 0x56, 0x62, 0x13, 0x3b, + 0xf7, 0x30, 0x36, 0x12, 0xd3, 0x93, 0x93, 0x09, 0xc5, 0x50, 0x13, 0xb3, 0xd7, 0xaf, 0x8f, 0x27, + 0xe6, 0xb7, 0xc7, 0x13, 0x1b, 0x54, 0x6e, 0x26, 0xf1, 0x42, 0x62, 0xe6, 0xfe, 0x7d, 0x22, 0xa9, + 0xe8, 0x7a, 0x62, 0x66, 0x72, 0xf2, 0xf2, 0xcc, 0xf5, 0xeb, 0x09, 0x5c, 0xc6, 0xb3, 0x93, 0x89, + 0xd9, 0xc4, 0x0b, 0x89, 0xd9, 0x8a, 0xcc, 0xec, 0xe4, 0xe4, 0xe5, 0x59, 0xbf, 0xcc, 0x78, 0xe2, + 0x75, 0xb3, 0x98, 0xc8, 0x29, 0x46, 0x42, 0xd1, 0x6d, 0x33, 0xc1, 0xbc, 0xaf, 0xbd, 0x84, 0x62, + 0x24, 0xf0, 0x7d, 0x25, 0xe7, 0x78, 0x44, 0x13, 0xba, 0xf6, 0x36, 0x4e, 0xcc, 0x4c, 0xce, 0x8c, + 0x93, 0xa1, 0xf4, 0x7d, 0xf0, 0x10, 0x08, 0xa8, 0xeb, 0xb0, 0x04, 0x20, 0x1b, 0xc1, 0x9c, 0xa9, + 0x62, 0x52, 0x01, 0x3f, 0x78, 0x08, 0x5a, 0x51, 0xe4, 0xc7, 0x25, 0xd0, 0x44, 0xbe, 0xb6, 0x7e, + 0xf0, 0x10, 0x34, 0xc7, 0xe9, 0xe8, 0xd3, 0x1f, 0x3c, 0x04, 0x2f, 0x0c, 0x7d, 0xeb, 0x8b, 0x12, + 0xb8, 0xba, 0xe6, 0x58, 0x9a, 0xb1, 0x9d, 0xb0, 0x30, 0x79, 0x7e, 0xd8, 0x20, 0x6e, 0x29, 0x6f, + 0xc9, 0xb5, 0x72, 0xc9, 0x44, 0xd1, 0x2e, 0x2a, 0xba, 0xbe, 0x97, 0x50, 0x12, 0x3b, 0x4e, 0x5e, + 0xa7, 0x5d, 0x20, 0x28, 0x67, 0x3f, 0x78, 0x08, 0x4e, 0x0d, 0x0d, 0x1e, 0x96, 0x40, 0x2f, 0x6b, + 0x58, 0xe2, 0x1a, 0x09, 0xe2, 0xa0, 0x96, 0x7b, 0x30, 0x44, 0x7a, 0x10, 0xf1, 0x7c, 0x7d, 0xc4, + 0xb8, 0x14, 0xcf, 0xc3, 0x45, 0x2f, 0x54, 0xee, 0x14, 0x2a, 0xde, 0x52, 0x8a, 0xba, 0xc3, 0x56, + 0x0d, 0xa7, 0xab, 0xcf, 0xd3, 0x15, 0xec, 0x5e, 0x19, 0xb2, 0x4c, 0x82, 0xaa, 0x32, 0xf2, 0xf8, + 0xbb, 0x70, 0x30, 0xaf, 0xdc, 0x97, 0xfd, 0x07, 0x04, 0xbb, 0xdd, 0x0f, 0xfa, 0x12, 0x58, 0xc4, + 0xb7, 0xa4, 0xbe, 0xbc, 0x72, 0x5f, 0xf2, 0x1e, 0x09, 0xf4, 0x3e, 0x1f, 0x0c, 0xf6, 0x9c, 0xab, + 0x1b, 0x09, 0xf4, 0x05, 0x7b, 0xde, 0x0c, 0xc4, 0xd7, 0xc4, 0x27, 0x8c, 0xaf, 0x2d, 0x04, 0x22, + 0x6c, 0x38, 0x2c, 0xc2, 0x76, 0xf6, 0x49, 0x22, 0x6c, 0x0b, 0x61, 0x31, 0xb6, 0x77, 0xe0, 0x00, + 0x27, 0x19, 0xc9, 0x9e, 0x52, 0x3d, 0x6d, 0x5d, 0x3a, 0xba, 0xad, 0xb0, 0xc0, 0x63, 0xe5, 0xb6, + 0x05, 0xa4, 0xbe, 0x42, 0x58, 0x64, 0xd2, 0x84, 0xbd, 0x34, 0x4a, 0xa4, 0xa9, 0x64, 0xe1, 0xb9, + 0x69, 0x05, 0xe2, 0xa9, 0xc6, 0x22, 0x27, 0x61, 0xba, 0x9e, 0xab, 0x32, 0x22, 0xd5, 0x8b, 0xbe, + 0x5a, 0x74, 0x07, 0x76, 0x58, 0x8a, 0x83, 0x65, 0x5d, 0xcb, 0x6b, 0x0e, 0xb6, 0xc4, 0xa1, 0x06, + 0x5a, 0x3a, 0xf5, 0x60, 0xdf, 0xa7, 0xe4, 0x69, 0xa2, 0x9d, 0x94, 0x2f, 0xb3, 0x62, 0xf4, 0x77, + 0xe0, 0x59, 0xaf, 0x98, 0x4c, 0x2f, 0x49, 0x58, 0xe5, 0x39, 0x75, 0xd8, 0x16, 0x4f, 0x37, 0xd0, + 0xd8, 0xd0, 0x83, 0xfd, 0x4e, 0xad, 0xc0, 0x75, 0x64, 0x1b, 0x3b, 0xe5, 0xd6, 0x22, 0xd2, 0x90, + 0xa7, 0xb5, 0x34, 0x03, 0x5f, 0xe5, 0xd8, 0xe8, 0x26, 0xec, 0xb0, 0xb0, 0x43, 0x6e, 0x7b, 0xec, + 0x30, 0x3d, 0x43, 0x1f, 0xd9, 0x70, 0xa0, 0x2d, 0x89, 0x88, 0xb0, 0x47, 0xe5, 0x0d, 0xe7, 0x5a, + 0x95, 0x62, 0xf4, 0x77, 0x6b, 0x47, 0x5a, 0x9f, 0x79, 0x92, 0x48, 0x6b, 0xe7, 0xc7, 0xfb, 0x80, + 0xb4, 0x46, 0xd6, 0x83, 0x58, 0x33, 0xe4, 0xfa, 0x0f, 0xeb, 0xc6, 0x20, 0x9f, 0x6d, 0x60, 0x02, + 0x27, 0x1e, 0x2b, 0x06, 0x29, 0xd6, 0x8e, 0x42, 0xa2, 0x9b, 0x90, 0x38, 0x4f, 0x32, 0x0d, 0xa9, + 0xe4, 0x70, 0xc1, 0x11, 0x9f, 0x0b, 0xa5, 0x52, 0xd6, 0x75, 0x7b, 0xd1, 0x15, 0x71, 0xef, 0xa4, + 0x1d, 0x8e, 0xa7, 0x10, 0xcd, 0xc1, 0x1e, 0xc3, 0x94, 0xfd, 0x29, 0x0e, 0xe2, 0xc5, 0x3a, 0xf6, + 0xa5, 0x59, 0x12, 0x0c, 0x33, 0x90, 0x52, 0xa0, 0xc0, 0x40, 0xf6, 0x86, 0x38, 0x4a, 0x11, 0xa6, + 0xea, 0x3d, 0x8e, 0xd0, 0xe4, 0x11, 0x6e, 0x02, 0x9a, 0xa5, 0x00, 0x20, 0xba, 0x08, 0x3b, 0x34, + 0x55, 0xc7, 0x65, 0x46, 0x2e, 0x41, 0x2d, 0x67, 0xe4, 0xcb, 0x12, 0x68, 0x92, 0xda, 0x49, 0x8d, + 0xcb, 0xe2, 0x8d, 0xc3, 0xde, 0xb2, 0xb1, 0xa6, 0x69, 0x33, 0x34, 0xdb, 0x52, 0x1c, 0xa1, 0x46, + 0xba, 0xc7, 0x35, 0xd2, 0x86, 0x2d, 0xb1, 0x0a, 0xf4, 0x02, 0xec, 0x72, 0x8d, 0x3a, 0xcf, 0xc4, + 0x7b, 0xbe, 0xce, 0xe8, 0x5b, 0xa4, 0x4e, 0x2e, 0xcd, 0xf3, 0xfa, 0x2e, 0xc3, 0x76, 0x1b, 0x5b, + 0xbb, 0x6e, 0x48, 0x30, 0x49, 0x63, 0x5e, 0xd0, 0xcd, 0xf5, 0xf8, 0xe7, 0xdf, 0x59, 0x68, 0x91, + 0x20, 0x13, 0xa0, 0xa1, 0xc1, 0x1b, 0x10, 0x29, 0x85, 0x02, 0x36, 0x54, 0xd9, 0xab, 0x75, 0x39, + 0x44, 0x4b, 0x60, 0x72, 0x6b, 0x15, 0xdd, 0xeb, 0xb0, 0xa3, 0xa0, 0xd8, 0xb6, 0xec, 0xec, 0x58, + 0x66, 0x71, 0x7b, 0x47, 0x1c, 0xaf, 0xdb, 0xcf, 0x76, 0x22, 0xbb, 0xce, 0x44, 0xd1, 0x12, 0xec, + 0xe7, 0xf7, 0xef, 0x82, 0xe2, 0xec, 0xc8, 0x86, 0x69, 0xe5, 0x69, 0x1e, 0x94, 0x38, 0x59, 0x07, + 0x23, 0x22, 0xf5, 0x32, 0xa5, 0x55, 0xc5, 0xd9, 0x59, 0x71, 0x55, 0xd0, 0x72, 0x25, 0xfd, 0x31, + 0x00, 0x36, 0x55, 0x17, 0xac, 0x8f, 0x6b, 0xf9, 0xd1, 0x34, 0xf8, 0x0c, 0xef, 0x99, 0xed, 0x58, + 0x5a, 0xce, 0x91, 0x6d, 0x43, 0x63, 0x49, 0xf5, 0xfc, 0x9c, 0xcc, 0xed, 0xe0, 0xdc, 0xdb, 0xe2, + 0x74, 0x1d, 0xde, 0x2e, 0x42, 0xcd, 0x78, 0x54, 0x1a, 0x66, 0x40, 0x6b, 0x14, 0x67, 0xcd, 0xd0, + 0xc8, 0xed, 0x80, 0x3d, 0xa5, 0x39, 0x82, 0x81, 0xd6, 0xc9, 0xc5, 0x57, 0xa5, 0x34, 0xa1, 0xa2, + 0x97, 0x03, 0x77, 0xb3, 0x14, 0xf9, 0x6c, 0xd5, 0x25, 0x88, 0xd4, 0x92, 0x69, 0x5f, 0xd6, 0x6c, + 0xa7, 0xdc, 0x44, 0x4f, 0x05, 0x80, 0xc7, 0xed, 0xd0, 0xcb, 0xb0, 0x3d, 0xa7, 0x1a, 0x6e, 0xec, + 0x53, 0xbc, 0x72, 0x74, 0x50, 0xc8, 0x1f, 0xed, 0x94, 0x60, 0xae, 0xfc, 0x1d, 0xbd, 0x01, 0xcf, + 0xb9, 0x73, 0xeb, 0x58, 0x45, 0xdb, 0x91, 0xab, 0xc3, 0x7a, 0x4b, 0x75, 0x26, 0xb9, 0x55, 0x72, + 0x1d, 0x95, 0x75, 0xa2, 0x3d, 0xe7, 0x8f, 0xe4, 0xa1, 0x77, 0x20, 0x9f, 0xa2, 0x9a, 0xe0, 0x2f, + 0x37, 0xe0, 0x63, 0xfb, 0x63, 0x8f, 0x0b, 0xad, 0x12, 0x27, 0x44, 0x43, 0x9b, 0x5c, 0x85, 0xa2, + 0x61, 0x1a, 0x65, 0xb7, 0x49, 0x37, 0x15, 0x75, 0x53, 0xd1, 0x15, 0x23, 0x87, 0x2d, 0xf1, 0x56, + 0x9d, 0x91, 0xc4, 0xa4, 0x01, 0x83, 0x18, 0x05, 0xaa, 0xb6, 0xec, 0xd1, 0x42, 0x8b, 0xb0, 0x2f, + 0x14, 0x6d, 0xa5, 0x2e, 0x5a, 0xaf, 0x1a, 0x02, 0x95, 0x87, 0x43, 0xa1, 0x2c, 0x1f, 0xbb, 0x3e, + 0xdd, 0x7e, 0x2c, 0xaa, 0x2f, 0xd3, 0xca, 0x0f, 0x0f, 0x71, 0xa7, 0x86, 0x04, 0xfa, 0xfb, 0x00, + 0xf6, 0xb0, 0x0c, 0x2b, 0x7a, 0x97, 0xcf, 0x9b, 0xaa, 0xb6, 0xb5, 0x27, 0x7e, 0x2f, 0x94, 0x99, + 0x60, 0x49, 0x66, 0x35, 0x98, 0x89, 0xa4, 0xe7, 0xa8, 0x08, 0x0f, 0xed, 0x26, 0xfc, 0x6f, 0x19, + 0xd0, 0x36, 0xd7, 0xcd, 0x5b, 0xb4, 0x45, 0x74, 0x13, 0x0e, 0x7a, 0x32, 0xb5, 0x7d, 0x56, 0x55, + 0xa2, 0x56, 0xb5, 0x9b, 0x58, 0x55, 0x6f, 0x9a, 0x76, 0x7f, 0x45, 0x7e, 0xd1, 0x63, 0x6a, 0x73, + 0xb0, 0xdf, 0xcf, 0xc4, 0xf1, 0x57, 0x6a, 0xc4, 0xd7, 0xe9, 0xd4, 0x4d, 0x1c, 0x45, 0x54, 0x06, + 0x78, 0x4a, 0xa9, 0x77, 0x27, 0x84, 0x14, 0x4d, 0xc2, 0x28, 0x3d, 0xe4, 0xc5, 0xef, 0xd7, 0x79, + 0xc0, 0x71, 0x89, 0x09, 0xa1, 0x6d, 0xd8, 0x43, 0x43, 0x6f, 0x3e, 0x9f, 0xf7, 0x8d, 0x27, 0xf5, + 0x79, 0xe3, 0x52, 0x37, 0x41, 0xf5, 0xe6, 0x3b, 0xbd, 0x0c, 0x07, 0xf4, 0xab, 0x2c, 0x5c, 0xa8, + 0xb0, 0x89, 0xe4, 0x2b, 0x4c, 0xfc, 0x41, 0xdd, 0x7e, 0xf6, 0xea, 0x57, 0xb3, 0xaa, 0x69, 0xa7, + 0x73, 0xec, 0xd0, 0xa3, 0x2a, 0x68, 0x05, 0xf6, 0x06, 0xc0, 0x0c, 0xd3, 0xc0, 0xe2, 0x9b, 0x8d, + 0x04, 0x2b, 0xe2, 0x92, 0xe0, 0x85, 0x5c, 0x31, 0x0d, 0x8c, 0x2e, 0xc0, 0xee, 0xa2, 0x8d, 0xc9, + 0x41, 0x81, 0x15, 0x47, 0xce, 0x63, 0x7b, 0x47, 0x94, 0xe9, 0xf9, 0xd7, 0x59, 0xb4, 0xf1, 0x3a, + 0x2d, 0xbd, 0x85, 0xed, 0x1d, 0x34, 0x05, 0xfb, 0xc8, 0x19, 0xb9, 0x6b, 0xea, 0x0e, 0xb6, 0x2c, + 0x45, 0xce, 0x2b, 0x86, 0xb2, 0x8d, 0x55, 0xf1, 0xf3, 0x18, 0x95, 0x46, 0xaa, 0x61, 0x6f, 0xf0, + 0xba, 0x5b, 0xac, 0x0a, 0xbd, 0xc6, 0xb2, 0x51, 0x5d, 0xeb, 0xf9, 0x27, 0xb1, 0x06, 0xdc, 0x1e, + 0xf1, 0xc1, 0x3e, 0xac, 0x28, 0x79, 0xe9, 0x4e, 0x52, 0xec, 0x1a, 0xd2, 0x33, 0xb0, 0xad, 0x9c, + 0x11, 0x2b, 0x7e, 0xc1, 0x7a, 0x10, 0x77, 0x73, 0x61, 0xd1, 0x1c, 0x8c, 0xb2, 0x3c, 0xe0, 0xff, + 0x1e, 0xa3, 0x74, 0x4a, 0xb2, 0x41, 0x7a, 0x88, 0xe6, 0xf7, 0x4a, 0x4c, 0x97, 0x34, 0x41, 0x8f, + 0x16, 0x7a, 0xe8, 0xfe, 0x94, 0xe5, 0xe6, 0xc4, 0x49, 0x09, 0x3d, 0x5f, 0x17, 0x60, 0xdc, 0x7d, + 0x91, 0x4b, 0xfc, 0x1f, 0x6c, 0x5c, 0xf5, 0x5a, 0x29, 0xbf, 0xf5, 0x35, 0x9e, 0x35, 0xec, 0x45, + 0x63, 0xcb, 0x94, 0x62, 0x2a, 0xfb, 0x80, 0xde, 0xa9, 0x4e, 0x5f, 0xfe, 0xd3, 0xd8, 0xb1, 0xf2, + 0x97, 0xc5, 0xf0, 0xfc, 0x65, 0x11, 0x04, 0x33, 0x98, 0xd7, 0xa8, 0x0b, 0xe6, 0xe6, 0x13, 0x93, + 0x21, 0xfc, 0x9c, 0xe5, 0x27, 0x24, 0x8f, 0xf0, 0xc1, 0x7c, 0x89, 0xd7, 0x52, 0x87, 0xe2, 0x29, + 0x21, 0xbe, 0x94, 0x27, 0x2d, 0x9a, 0x5e, 0x79, 0xf3, 0xf6, 0xb6, 0xf8, 0x7e, 0x9c, 0x25, 0x3e, + 0x95, 0xd3, 0x9f, 0x49, 0xcd, 0x2d, 0x7b, 0x1b, 0xbd, 0x04, 0x3b, 0xa8, 0x53, 0xeb, 0xae, 0x8e, + 0xff, 0x15, 0xa3, 0x44, 0xe5, 0x48, 0x8d, 0x37, 0x2c, 0xbc, 0x56, 0xaa, 0x9d, 0x28, 0xba, 0x4b, + 0xa1, 0x08, 0x7b, 0xfd, 0x6f, 0x01, 0x92, 0xcb, 0x86, 0x2d, 0xfe, 0x59, 0x23, 0x8b, 0xed, 0xc2, + 0x83, 0x7d, 0x54, 0xad, 0x1c, 0x74, 0xae, 0xa3, 0x52, 0x0f, 0x17, 0x62, 0x57, 0x8b, 0x35, 0xec, + 0xd8, 0x28, 0x0f, 0x07, 0xbc, 0x47, 0x8a, 0xac, 0xe8, 0xdb, 0xa6, 0xa5, 0x39, 0x3b, 0x79, 0xf1, + 0x7f, 0x87, 0x2f, 0x3a, 0xfe, 0x0e, 0xe4, 0xb8, 0xf7, 0x54, 0x49, 0xbb, 0x4a, 0x9e, 0xcc, 0x27, + 0x3d, 0xac, 0x1e, 0x3d, 0x0b, 0x3b, 0xcb, 0x3b, 0x8f, 0x2e, 0xfa, 0xff, 0xc3, 0x16, 0x7d, 0x87, + 0x5b, 0x4a, 0x17, 0xfe, 0x6a, 0xc5, 0x9f, 0xf5, 0xa4, 0xe1, 0x89, 0x5f, 0xc6, 0x1a, 0x31, 0x0e, + 0x6d, 0x65, 0x8f, 0xb7, 0x92, 0x4f, 0x86, 0x36, 0x61, 0xbb, 0x17, 0xe9, 0xff, 0xc6, 0x8e, 0xbe, + 0x3a, 0xd5, 0x4c, 0xb7, 0xf3, 0x36, 0x05, 0x37, 0x2b, 0x6d, 0x5c, 0x83, 0xbd, 0xd4, 0x71, 0x23, + 0xce, 0x85, 0x85, 0x0b, 0x45, 0x87, 0x5d, 0x0b, 0xbe, 0xa2, 0x23, 0xac, 0xcc, 0x4c, 0x0f, 0x15, + 0x5a, 0x2c, 0x48, 0x65, 0x11, 0xb4, 0x01, 0xe3, 0x5b, 0x8a, 0xed, 0xc8, 0x4a, 0x4e, 0x17, 0xff, + 0x5f, 0x23, 0x0f, 0xfc, 0xcc, 0x83, 0xfd, 0xb2, 0x46, 0x75, 0x4c, 0x3a, 0x46, 0xaa, 0xd2, 0x39, + 0x1d, 0xad, 0xc2, 0x56, 0xfd, 0x2a, 0x45, 0xfd, 0xff, 0xb1, 0xc6, 0xee, 0xba, 0x5c, 0xbe, 0x1a, + 0x33, 0xaa, 0x5f, 0x25, 0x88, 0x12, 0x6c, 0x23, 0x26, 0xe0, 0x5d, 0xd3, 0xc0, 0xb6, 0xf8, 0x17, + 0x8d, 0x80, 0x0e, 0x3c, 0xd8, 0x8f, 0xbb, 0x2a, 0x5e, 0x33, 0x48, 0x0a, 0xef, 0x10, 0x18, 0x4a, + 0x3b, 0xdb, 0xd6, 0x96, 0x7b, 0x53, 0x5e, 0x0d, 0xa7, 0x9d, 0x6d, 0x6b, 0x2b, 0x40, 0x3b, 0x97, + 0x4b, 0x90, 0x0d, 0x07, 0x49, 0x13, 0x94, 0xc2, 0xe5, 0xd9, 0x52, 0x3c, 0x81, 0x49, 0xfc, 0xdd, + 0xb6, 0xa3, 0x6f, 0x65, 0xa1, 0xa9, 0x4f, 0x9e, 0xa5, 0xac, 0x1a, 0x76, 0x48, 0x6a, 0xd4, 0x0c, + 0x6c, 0x33, 0x4c, 0x47, 0xb6, 0xb0, 0xa2, 0xee, 0x89, 0xbf, 0xa8, 0x97, 0xe8, 0x0b, 0xa5, 0xb8, + 0x61, 0x3a, 0x12, 0x11, 0x44, 0x97, 0x61, 0x94, 0x69, 0xbc, 0x17, 0xaf, 0xab, 0xc1, 0xa4, 0x90, + 0x04, 0x11, 0xe7, 0x6c, 0xbd, 0xaf, 0x69, 0xfc, 0x5a, 0xbc, 0xf1, 0x77, 0x18, 0x04, 0xa6, 0xef, + 0x79, 0x65, 0xe3, 0x2d, 0xd8, 0x67, 0xeb, 0xe6, 0xbd, 0xaa, 0xbc, 0x9f, 0x35, 0x0a, 0x5a, 0xd7, + 0x5a, 0x57, 0xa7, 0xb9, 0x48, 0x88, 0x60, 0x05, 0x92, 0x8b, 0x6e, 0xc2, 0xb8, 0x52, 0xd0, 0x68, + 0xb8, 0x5a, 0x5c, 0xa7, 0xa8, 0xcf, 0xd4, 0xb5, 0xc8, 0x2c, 0x59, 0xa2, 0xd2, 0xe7, 0x98, 0xc2, + 0xd3, 0x27, 0x0c, 0xd8, 0xcd, 0xec, 0x2a, 0x1b, 0x7e, 0x5e, 0x29, 0x88, 0xaf, 0xd1, 0x35, 0xf7, + 0xc2, 0x63, 0x90, 0xd6, 0x95, 0xf4, 0x92, 0x5b, 0x4a, 0x81, 0xb1, 0xd6, 0xe5, 0x96, 0x3a, 0x55, + 0x6f, 0x25, 0xca, 0x73, 0xef, 0xae, 0x9c, 0xeb, 0xef, 0x7a, 0x77, 0x7f, 0x2f, 0xde, 0x98, 0x7b, + 0x17, 0x08, 0xb8, 0x56, 0x1a, 0xa2, 0x7e, 0x5e, 0xa0, 0x16, 0xdd, 0x87, 0xa7, 0x58, 0x2e, 0x61, + 0xf5, 0xc2, 0xb5, 0xc5, 0x4f, 0x59, 0x93, 0xa9, 0x7a, 0x4d, 0x86, 0xe7, 0x28, 0x56, 0x5a, 0xa5, + 0xb9, 0x84, 0xd5, 0x02, 0x36, 0xb1, 0x55, 0x95, 0xa8, 0xa6, 0x69, 0xc8, 0x85, 0xe2, 0xa6, 0xae, + 0xe5, 0xc4, 0x9f, 0xc4, 0x03, 0xb6, 0xaa, 0x2c, 0x74, 0xdb, 0x58, 0xa5, 0x22, 0x43, 0xdf, 0x81, + 0x3d, 0x55, 0x51, 0x00, 0x6f, 0x3a, 0x6e, 0xe7, 0x11, 0xe9, 0xb8, 0x43, 0x05, 0x6f, 0xc2, 0x8f, + 0xfb, 0x44, 0x42, 0x12, 0x7a, 0xb3, 0x5e, 0x84, 0x23, 0xd6, 0x65, 0x75, 0x06, 0x91, 0xa7, 0xc5, + 0xcc, 0x04, 0x1c, 0x74, 0x83, 0x76, 0x6e, 0xb5, 0x1b, 0x40, 0xef, 0xfb, 0x31, 0xcb, 0x4a, 0x7a, + 0xe5, 0xb0, 0x04, 0x22, 0xd7, 0x93, 0xd7, 0xae, 0xfc, 0xac, 0x04, 0x40, 0xe6, 0x02, 0xec, 0xaa, + 0xe4, 0xbb, 0xb3, 0xf7, 0xb8, 0x1e, 0x95, 0xc0, 0xb9, 0x83, 0x12, 0x18, 0x3e, 0x2c, 0x81, 0xf8, + 0xf4, 0x54, 0x32, 0x35, 0x93, 0x4c, 0x5d, 0xcf, 0x8c, 0xc1, 0x7e, 0x3f, 0x65, 0xe3, 0x8d, 0xcb, + 0x5f, 0x3c, 0x28, 0x81, 0x0b, 0x87, 0x25, 0x10, 0x9d, 0xbe, 0x9e, 0x9c, 0x99, 0xcc, 0x4c, 0xc0, + 0x3e, 0x4e, 0x7f, 0x94, 0x2f, 0xf9, 0x54, 0x74, 0xf0, 0x51, 0x09, 0x3c, 0x7f, 0x50, 0x02, 0x63, + 0x87, 0x25, 0xd0, 0x3e, 0x33, 0x9d, 0x9c, 0x99, 0x49, 0xce, 0xcc, 0x26, 0x67, 0xae, 0x10, 0x70, + 0x3f, 0xd7, 0xe0, 0x05, 0x9f, 0x3c, 0x28, 0x81, 0x09, 0x1a, 0xf4, 0xbf, 0x96, 0x9c, 0xb9, 0x9e, + 0xf9, 0x36, 0x7c, 0xa6, 0x1e, 0x95, 0xe0, 0x6a, 0xf6, 0x3f, 0x2a, 0x81, 0xe9, 0x83, 0x12, 0x48, + 0xd1, 0x9c, 0xfd, 0xa9, 0xe4, 0xec, 0x34, 0x1d, 0xee, 0x34, 0x1c, 0xae, 0x71, 0x39, 0xf6, 0x36, + 0xb9, 0x74, 0x50, 0x02, 0x8b, 0x44, 0xf1, 0xea, 0x4c, 0xf2, 0xea, 0x6c, 0xe6, 0x02, 0xec, 0x29, + 0xdf, 0x49, 0x37, 0xbd, 0x72, 0xb7, 0x0e, 0x4a, 0x60, 0x99, 0xca, 0x5d, 0x4d, 0x5e, 0xbd, 0x96, + 0x99, 0x80, 0xa7, 0x99, 0x93, 0x4f, 0x9c, 0x2a, 0x4f, 0x76, 0x20, 0x73, 0xfa, 0x91, 0x70, 0x50, + 0x02, 0x77, 0xc8, 0xa4, 0x5e, 0x9f, 0x4e, 0x5e, 0x9f, 0x4a, 0x5e, 0x4f, 0x65, 0xa6, 0x20, 0xf2, + 0xe6, 0xde, 0x73, 0xe4, 0xd3, 0x8f, 0x4a, 0xe0, 0xcb, 0xd8, 0x41, 0x09, 0xfc, 0x79, 0xec, 0xb0, + 0x04, 0xda, 0xa6, 0x26, 0xa7, 0xae, 0x24, 0xa7, 0x26, 0xa7, 0xae, 0xd2, 0x01, 0x4c, 0xc2, 0x7e, + 0xf7, 0x88, 0x61, 0xae, 0xa7, 0x77, 0x72, 0x7f, 0x41, 0xb4, 0xfe, 0x92, 0x6b, 0xa5, 0xa6, 0x93, + 0x53, 0x93, 0xa9, 0x99, 0x72, 0x5a, 0xcc, 0x2b, 0xc2, 0xc6, 0x52, 0x24, 0x3e, 0x2c, 0x9c, 0x5b, + 0x8a, 0xc4, 0x2f, 0x08, 0x17, 0x97, 0x22, 0xf1, 0x31, 0xe1, 0xf9, 0xa5, 0x48, 0x7c, 0x42, 0x98, + 0x5c, 0x8a, 0xc4, 0x53, 0xc2, 0xf4, 0x52, 0x24, 0x3e, 0x23, 0xcc, 0x2e, 0x45, 0xe2, 0x8b, 0xc2, + 0xd2, 0x52, 0x24, 0xbe, 0x2c, 0xdc, 0x5a, 0x8a, 0xc4, 0xef, 0x08, 0xdf, 0x5f, 0x6a, 0x8d, 0xff, + 0x79, 0x4c, 0xf8, 0x32, 0xb6, 0xd4, 0x1a, 0xff, 0xcb, 0x98, 0xf0, 0x8b, 0xd8, 0x52, 0x24, 0xfe, + 0xaa, 0xf0, 0xda, 0xc8, 0x7f, 0x6d, 0x86, 0x28, 0xbb, 0xb2, 0xb6, 0xe1, 0xba, 0xe1, 0xfc, 0x17, + 0x0c, 0x32, 0xae, 0x27, 0x0f, 0x8e, 0xef, 0xc8, 0x7f, 0x1b, 0x0e, 0xe1, 0xfb, 0x9a, 0xed, 0x68, + 0xc6, 0xb6, 0x77, 0x29, 0x73, 0x5f, 0x3b, 0x4a, 0x37, 0x8e, 0xe8, 0x4a, 0x78, 0xb6, 0x02, 0xf3, + 0x95, 0xb7, 0xe0, 0xa0, 0x85, 0x0d, 0x7c, 0x2f, 0x44, 0xb5, 0xf5, 0x38, 0x5e, 0xba, 0xd4, 0x4f, + 0xe1, 0xaa, 0xda, 0x79, 0x1e, 0xf6, 0x30, 0xa7, 0x59, 0xc5, 0xec, 0x6e, 0xe9, 0x66, 0xa0, 0xb5, + 0x49, 0x02, 0xad, 0xc8, 0x56, 0xca, 0xd1, 0x25, 0x28, 0xd8, 0xc5, 0xed, 0x6d, 0x6c, 0x3b, 0x58, + 0xe5, 0x0b, 0x82, 0xbf, 0x10, 0xd8, 0x5d, 0x2e, 0x67, 0x57, 0x3c, 0x9e, 0xbb, 0xf5, 0x4f, 0x9f, + 0x85, 0x5d, 0x73, 0xe4, 0x2a, 0x87, 0xcb, 0xf9, 0x2b, 0x62, 0x20, 0x7f, 0xa5, 0x92, 0x9a, 0xf2, + 0xe2, 0x63, 0xa5, 0xa6, 0xc4, 0xdd, 0xd4, 0x94, 0x72, 0x3e, 0xca, 0xd7, 0x9f, 0x34, 0xf2, 0xd6, + 0x53, 0x4c, 0x1a, 0x09, 0x4f, 0x0f, 0xd9, 0x7c, 0x9a, 0xe9, 0x21, 0x35, 0x12, 0x41, 0xae, 0x1f, + 0x99, 0x08, 0x52, 0x33, 0xe5, 0xe3, 0x5b, 0x47, 0xa7, 0x7c, 0xfc, 0x0a, 0x27, 0x77, 0x64, 0x8f, + 0x97, 0x9b, 0x11, 0xc8, 0xca, 0xb8, 0xf1, 0x78, 0x59, 0x19, 0xbe, 0x7c, 0x8c, 0xc5, 0xe3, 0xe4, + 0x63, 0x64, 0x3a, 0x68, 0x96, 0xf5, 0xfb, 0x20, 0x32, 0xd4, 0x1c, 0x89, 0xba, 0xd9, 0x19, 0xc7, + 0xc8, 0xb2, 0xd8, 0x7e, 0xfa, 0x59, 0x16, 0xc7, 0xce, 0xaf, 0xb8, 0xf3, 0x94, 0xf2, 0x2b, 0xc2, + 0x32, 0x2b, 0x94, 0x63, 0x24, 0x56, 0xf8, 0xad, 0x58, 0x75, 0x62, 0xc5, 0xd3, 0x0d, 0xc7, 0xcf, + 0x1e, 0x11, 0x8e, 0x7f, 0xfa, 0x31, 0xf8, 0xd7, 0x9e, 0x5a, 0x0c, 0x3e, 0x18, 0x7d, 0x97, 0x9f, + 0x62, 0xf4, 0x3d, 0x34, 0xee, 0x8e, 0x8f, 0x1f, 0x04, 0x1f, 0x08, 0x0f, 0x82, 0x87, 0x86, 0xbe, + 0x57, 0x8f, 0x11, 0xfa, 0xee, 0x0e, 0x84, 0xbe, 0xfd, 0x01, 0xef, 0x77, 0x9e, 0x46, 0xc0, 0x5b, + 0x08, 0x06, 0xbc, 0xbf, 0x99, 0x30, 0xf7, 0xf9, 0xb0, 0x58, 0xe7, 0x93, 0x45, 0x39, 0xf3, 0x5f, + 0x4f, 0xe4, 0xbc, 0x56, 0xa8, 0xfc, 0xa9, 0x44, 0x95, 0xbf, 0xff, 0xd4, 0xa2, 0xca, 0x21, 0xf1, + 0xe4, 0x27, 0x0c, 0xfb, 0x9e, 0x0f, 0x09, 0xfb, 0x06, 0x42, 0xbd, 0xe3, 0xb5, 0x43, 0xbd, 0x7f, + 0x7b, 0xc2, 0xbb, 0xb9, 0x27, 0x0e, 0xef, 0x36, 0x10, 0xd8, 0x5d, 0x39, 0x76, 0x60, 0x37, 0x3c, + 0xa4, 0x7b, 0xdc, 0xa0, 0x65, 0xeb, 0x53, 0x0d, 0x5a, 0xb6, 0x86, 0x07, 0x2d, 0xf1, 0x53, 0x0c, + 0x5a, 0xd6, 0x09, 0x56, 0xde, 0x78, 0x3c, 0x22, 0xd2, 0x47, 0x41, 0xbe, 0xfa, 0x74, 0xe2, 0x9c, + 0xd5, 0x91, 0xcb, 0x2b, 0x47, 0x44, 0x2e, 0xff, 0x5a, 0x03, 0x95, 0x77, 0xbf, 0x06, 0xe2, 0xb5, + 0x16, 0xdf, 0xfa, 0xf5, 0xd3, 0x96, 0x2f, 0x1e, 0x8b, 0xb6, 0xac, 0xb0, 0x95, 0xf8, 0x58, 0x6c, + 0x65, 0xc0, 0x13, 0xac, 0xe6, 0xc6, 0x82, 0x24, 0xa5, 0xf9, 0xf5, 0xb0, 0x86, 0x35, 0xc9, 0xc2, + 0x5f, 0x41, 0xca, 0xef, 0xc6, 0xf6, 0x1f, 0xbe, 0x18, 0x78, 0xd1, 0xe5, 0xe7, 0x2f, 0xae, 0x4d, + 0xcd, 0x26, 0x53, 0xc9, 0xe9, 0xe4, 0x6c, 0xf2, 0xda, 0x6c, 0x72, 0xea, 0x5a, 0x72, 0xea, 0x7a, + 0x72, 0xfa, 0x5a, 0xf2, 0x4a, 0x72, 0xea, 0x6a, 0xf2, 0x6a, 0xf2, 0x5a, 0x72, 0x2a, 0x95, 0x9c, + 0x9a, 0x4e, 0xa6, 0x26, 0x93, 0xa9, 0x6b, 0xc9, 0xd4, 0x54, 0x32, 0x95, 0x4a, 0x4e, 0x4f, 0x27, + 0x53, 0xd3, 0xc9, 0xe9, 0xc9, 0xe4, 0xf4, 0x6c, 0x32, 0x75, 0x25, 0x99, 0xba, 0x9a, 0x4c, 0xcd, + 0x26, 0xa7, 0x53, 0xc9, 0xe9, 0x99, 0xe4, 0xd5, 0x2b, 0xc9, 0xab, 0xd7, 0x93, 0xd7, 0x52, 0x99, + 0x2b, 0xb5, 0xb9, 0xc5, 0xd3, 0xef, 0x7f, 0x05, 0x6a, 0x55, 0x66, 0x9e, 0xad, 0xa2, 0x18, 0xd1, + 0xfb, 0x5f, 0x81, 0x40, 0x59, 0x26, 0x55, 0x8b, 0x60, 0x3c, 0xf5, 0xfe, 0x57, 0x20, 0xbc, 0x2a, + 0x33, 0x59, 0x83, 0x68, 0x14, 0xdf, 0xff, 0x0a, 0x84, 0xd6, 0x90, 0x56, 0xc2, 0x99, 0x46, 0xda, + 0x4a, 0x68, 0x55, 0x66, 0xa5, 0x31, 0xc6, 0xf1, 0xe2, 0xfb, 0x5f, 0x81, 0x46, 0x04, 0x33, 0x63, + 0x61, 0x74, 0x62, 0xff, 0xfb, 0x5f, 0x81, 0xea, 0xe2, 0x00, 0x31, 0xc7, 0x28, 0xb9, 0x57, 0x85, + 0xd7, 0x46, 0xfe, 0xe5, 0xb3, 0xb0, 0x5b, 0xc2, 0x05, 0x5d, 0xc9, 0x9d, 0xd0, 0x43, 0x27, 0xf4, + 0xd0, 0x09, 0x3d, 0x74, 0x42, 0x0f, 0xfd, 0x52, 0xd0, 0x43, 0x9b, 0xe1, 0xf4, 0x50, 0x5d, 0xa7, + 0x20, 0x60, 0xc6, 0x4e, 0xf8, 0xa1, 0x13, 0x7e, 0xe8, 0x6f, 0x37, 0x3f, 0xf4, 0xb5, 0xe5, 0xc2, + 0x9f, 0xb0, 0x44, 0x27, 0x2c, 0xd1, 0x09, 0x4b, 0x74, 0xc2, 0x12, 0x9d, 0xb0, 0x44, 0x27, 0x2c, + 0xd1, 0x37, 0xc2, 0x12, 0x6d, 0xd5, 0x62, 0x89, 0x5e, 0x7c, 0x1c, 0x87, 0xf0, 0x84, 0x26, 0x3a, + 0xa1, 0x89, 0x4e, 0x68, 0xa2, 0x63, 0xd1, 0x44, 0x5f, 0x8c, 0xc2, 0xf6, 0x9b, 0xd8, 0x39, 0xa1, + 0x88, 0x4e, 0x28, 0xa2, 0xbf, 0xf1, 0x3f, 0x0f, 0xf3, 0xd7, 0xcf, 0x31, 0x3d, 0xd1, 0x4f, 0xc2, + 0x9c, 0xb0, 0x4a, 0x35, 0x59, 0xa5, 0x37, 0xc3, 0x59, 0xa5, 0xeb, 0x75, 0x13, 0xe3, 0x2b, 0x56, + 0xef, 0x84, 0x51, 0x3a, 0x61, 0x94, 0x7e, 0x25, 0x19, 0xa5, 0xf4, 0x71, 0x18, 0xa5, 0xc7, 0xce, + 0x35, 0x3a, 0x61, 0x85, 0x4e, 0x58, 0xa1, 0x13, 0x56, 0xe8, 0x84, 0x15, 0x6a, 0x98, 0x15, 0xfa, + 0xa5, 0x63, 0x76, 0x7e, 0xa5, 0x5e, 0x1e, 0xff, 0x26, 0xdf, 0xe4, 0xfe, 0xb5, 0x5a, 0x6f, 0x72, + 0x3f, 0x6e, 0xe4, 0xe0, 0xa9, 0xfe, 0x0a, 0xca, 0x93, 0xb0, 0x8a, 0xdf, 0x24, 0xbf, 0xd6, 0xf8, + 0x5b, 0xaf, 0xb1, 0xc7, 0x7e, 0xeb, 0x35, 0xe6, 0xbe, 0xf5, 0xfa, 0xcb, 0x4f, 0xe2, 0x6d, 0xd6, + 0x22, 0xf1, 0x6e, 0x34, 0xea, 0x7f, 0x1f, 0x4d, 0xe0, 0x7d, 0x23, 0xdc, 0xec, 0x09, 0x4b, 0x78, + 0x34, 0x4b, 0x78, 0x37, 0x84, 0x25, 0xdc, 0x98, 0x9a, 0x4c, 0x9e, 0x10, 0x85, 0x7f, 0x23, 0x88, + 0x42, 0xd2, 0xdf, 0xf0, 0xd7, 0x47, 0x69, 0x7f, 0x43, 0xab, 0x42, 0xc8, 0xc5, 0xd6, 0xf8, 0x9f, + 0xc6, 0x84, 0xff, 0x19, 0x78, 0x21, 0x74, 0xec, 0xdf, 0x00, 0xd8, 0x1d, 0xa0, 0x66, 0x50, 0x2f, + 0xec, 0xde, 0x58, 0x94, 0xd6, 0x5f, 0x49, 0x2f, 0xcb, 0x6b, 0xf3, 0xd2, 0xc6, 0xe2, 0xdc, 0xbc, + 0xd0, 0x84, 0x06, 0x20, 0x5a, 0x58, 0x5f, 0x5f, 0x95, 0x97, 0x6f, 0xa7, 0xb3, 0x72, 0x26, 0xbd, + 0x9c, 0x5e, 0x99, 0x9b, 0x97, 0x04, 0x80, 0xba, 0x61, 0x7b, 0x7a, 0x75, 0x51, 0xbe, 0x99, 0x5e, + 0x9f, 0x7f, 0x35, 0xfd, 0xba, 0xd0, 0x8c, 0xfa, 0x61, 0xcf, 0xfa, 0x5c, 0x50, 0xae, 0x05, 0xb5, + 0xc1, 0xe8, 0xaa, 0x74, 0xfb, 0xb5, 0xd7, 0x85, 0x08, 0x3a, 0x07, 0xfb, 0x97, 0x6f, 0xcf, 0xa5, + 0x97, 0xe5, 0x97, 0xaf, 0xad, 0xc9, 0x5e, 0xe5, 0x28, 0xfb, 0xa9, 0x4f, 0x02, 0x31, 0x97, 0x5d, + 0x09, 0x40, 0xb4, 0x8e, 0x7d, 0x06, 0x60, 0x5b, 0xe5, 0x4f, 0xfb, 0xf6, 0x41, 0x48, 0x3b, 0xc4, + 0x50, 0x9b, 0xb8, 0x6a, 0x2f, 0x6c, 0x23, 0xad, 0xb3, 0x42, 0xc0, 0x0b, 0xcf, 0x40, 0x54, 0x2e, + 0x94, 0x5f, 0x5d, 0x5c, 0x5f, 0x90, 0xd7, 0x56, 0x16, 0x85, 0x66, 0x5e, 0x3b, 0x08, 0x3b, 0xd7, + 0x97, 0xd7, 0xe4, 0x8a, 0x1a, 0xff, 0xc5, 0x51, 0x94, 0x80, 0x03, 0xbe, 0x8a, 0x8a, 0x6a, 0xac, + 0xdc, 0xd1, 0x76, 0xd2, 0x87, 0x35, 0xae, 0xd8, 0xc2, 0x8b, 0x3b, 0x61, 0xdb, 0x2b, 0x59, 0x17, + 0x2d, 0x42, 0xbe, 0xae, 0xdd, 0x4a, 0xf3, 0xaf, 0x51, 0xf2, 0x35, 0xbb, 0xe2, 0xaa, 0xc4, 0x51, + 0x17, 0x84, 0x77, 0xd6, 0x57, 0xdc, 0xea, 0xb6, 0xb1, 0x3f, 0x68, 0x86, 0x42, 0xd0, 0xdf, 0x21, + 0xb3, 0xef, 0x3e, 0x92, 0x85, 0xdb, 0x6b, 0xeb, 0xb2, 0x34, 0x9f, 0xce, 0xbe, 0x2e, 0x34, 0xa1, + 0xe7, 0xe0, 0x79, 0x5f, 0xf9, 0xea, 0xfc, 0x4a, 0x76, 0x71, 0xe5, 0xa6, 0xbc, 0x31, 0x2f, 0x2d, + 0xbe, 0xb4, 0x38, 0x97, 0x5e, 0x5f, 0xbc, 0xbd, 0x22, 0x00, 0xf4, 0x2c, 0x4c, 0xf8, 0xc4, 0xbc, + 0xd5, 0xf2, 0x4b, 0xe9, 0xc5, 0xe5, 0xf9, 0xac, 0xd0, 0x8c, 0x2e, 0xc2, 0x67, 0x42, 0xc1, 0x48, + 0x6f, 0xb3, 0xf3, 0xcb, 0xf3, 0x37, 0x19, 0x5c, 0x0b, 0x3a, 0x0f, 0xcf, 0x86, 0x0a, 0xa6, 0x65, + 0x69, 0x7e, 0xee, 0xb6, 0x94, 0x15, 0x22, 0xe8, 0x19, 0x78, 0xce, 0x27, 0x42, 0x30, 0xdc, 0x6a, + 0x39, 0x9d, 0xcd, 0xce, 0x67, 0x85, 0x28, 0x1a, 0x87, 0x63, 0x3e, 0xa1, 0xc5, 0x95, 0xf5, 0x79, + 0x69, 0x65, 0x7e, 0x5d, 0x5e, 0x59, 0xce, 0x94, 0x41, 0xe7, 0xa4, 0x79, 0xd6, 0x6e, 0x2b, 0xba, + 0x0c, 0x2f, 0xd5, 0x96, 0x77, 0xe5, 0xdc, 0xf1, 0xc4, 0xc6, 0xfe, 0xb8, 0x05, 0xa2, 0xea, 0x37, + 0x83, 0x51, 0x5f, 0xe5, 0x8f, 0x9b, 0x66, 0x99, 0xd3, 0xa4, 0x0a, 0x4d, 0xe8, 0x14, 0xec, 0xcf, + 0xba, 0x3f, 0x7c, 0xb4, 0x81, 0xad, 0xb2, 0x8e, 0x40, 0xd6, 0x54, 0x77, 0xba, 0xf2, 0xc3, 0x3e, + 0x96, 0x83, 0x55, 0xa1, 0x19, 0x9d, 0x85, 0xa7, 0x56, 0x2d, 0xfe, 0x97, 0xa2, 0xca, 0x4c, 0xc9, + 0x2a, 0x36, 0x54, 0xcd, 0xd8, 0x16, 0x3a, 0xd0, 0x10, 0x1c, 0x08, 0xd4, 0xb9, 0xaa, 0x9d, 0x21, + 0x75, 0xae, 0x5e, 0x0b, 0x3a, 0x0d, 0x07, 0x03, 0x75, 0xac, 0x33, 0x58, 0x15, 0x22, 0xde, 0x9e, + 0xbf, 0xa4, 0x19, 0xd4, 0x3e, 0x09, 0x51, 0xb2, 0x36, 0x3c, 0x27, 0xc3, 0xa2, 0x41, 0xff, 0x16, + 0x84, 0xd0, 0x4a, 0xa4, 0x3d, 0xe5, 0xf4, 0xcf, 0x3f, 0x08, 0x31, 0x32, 0x4e, 0x17, 0x63, 0xc5, + 0x74, 0xf8, 0xdf, 0x5a, 0xda, 0xd4, 0xb1, 0x10, 0x47, 0x83, 0xb0, 0xd7, 0xad, 0x92, 0xca, 0x04, + 0x87, 0x2a, 0xb4, 0x91, 0x4e, 0xb9, 0x15, 0x37, 0xb1, 0x81, 0xf9, 0x11, 0x8a, 0x1d, 0x6b, 0x4f, + 0x80, 0xa8, 0x07, 0x76, 0xa6, 0xbd, 0xae, 0xaa, 0xd0, 0x4e, 0x7a, 0x54, 0xfd, 0xfb, 0x48, 0x42, + 0x17, 0x1a, 0x86, 0x43, 0x6e, 0x79, 0x3a, 0x97, 0x33, 0x8b, 0x86, 0xaf, 0x9d, 0x6e, 0x32, 0xa7, + 0xe5, 0x27, 0xc3, 0xfe, 0x22, 0x97, 0xa7, 0x5a, 0x08, 0x0c, 0x94, 0xfe, 0x5a, 0x08, 0x56, 0x85, + 0x9e, 0xb1, 0x09, 0xd8, 0xe5, 0xff, 0xd3, 0x6c, 0xa8, 0x03, 0xc6, 0x89, 0x5d, 0xb9, 0x75, 0x3b, + 0x4b, 0x4c, 0x57, 0x37, 0x6c, 0x5f, 0x5c, 0x59, 0x5e, 0x5c, 0x99, 0x67, 0x05, 0x20, 0xf3, 0x1b, + 0xe0, 0xe0, 0x27, 0xc3, 0x4d, 0x1f, 0xff, 0x64, 0xb8, 0xe9, 0x67, 0x3f, 0x19, 0x06, 0xef, 0x1d, + 0x0e, 0x83, 0x7f, 0x7d, 0x38, 0x0c, 0x7e, 0x7c, 0x38, 0x0c, 0x0e, 0x0e, 0x87, 0xc1, 0xc7, 0x87, + 0xc3, 0xe0, 0xd3, 0xc3, 0x61, 0xf0, 0xf9, 0xe1, 0x70, 0xd3, 0xcf, 0x0e, 0x87, 0xc1, 0x0f, 0x3f, + 0x1b, 0x6e, 0x7a, 0xf4, 0xd9, 0x30, 0x38, 0xf8, 0x6c, 0xb8, 0xe9, 0xe3, 0xcf, 0x86, 0x9b, 0xee, + 0xac, 0x6e, 0x9b, 0x85, 0xb7, 0xb7, 0xc7, 0xdd, 0x9f, 0x04, 0x1a, 0x2f, 0xda, 0x13, 0xf4, 0x03, + 0xb9, 0x71, 0x5d, 0x2e, 0x58, 0xe6, 0xae, 0xa6, 0x62, 0xeb, 0xb2, 0x5b, 0x3d, 0x51, 0xd8, 0xdc, + 0x36, 0x27, 0xf0, 0x7d, 0x87, 0x1d, 0xec, 0x13, 0xfc, 0x3f, 0xef, 0xf9, 0xbe, 0xd9, 0x4a, 0x7d, + 0xa8, 0xe9, 0xbf, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x03, 0x26, 0x10, 0xc6, 0xcc, 0x82, 0x00, 0x00, } func (x VirtualHostType) String() string { @@ -7732,6 +7973,43 @@ func (this *ClientIPHeaders) Equal(that interface{}) bool { } return true } +func (this *ZtnaProxyConfiguration) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ZtnaProxyConfiguration) + if !ok { + that2, ok := that.(ZtnaProxyConfiguration) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.ZtnaPolicyConfig) != len(that1.ZtnaPolicyConfig) { + return false + } + for i := range this.ZtnaPolicyConfig { + if !this.ZtnaPolicyConfig[i].Equal(that1.ZtnaPolicyConfig[i]) { + return false + } + } + if len(this.ZtnaApplicationConfig) != len(that1.ZtnaApplicationConfig) { + return false + } + for i := range this.ZtnaApplicationConfig { + if !this.ZtnaApplicationConfig[i].Equal(that1.ZtnaApplicationConfig[i]) { + return false + } + } + return true +} func (this *DNSProxyConfiguration) Equal(that interface{}) bool { if that == nil { return this == nil @@ -8155,6 +8433,30 @@ func (this *OpenApiValidationSettings) Equal(that interface{}) bool { } return true } +func (this *Http1ProtocolOptions) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Http1ProtocolOptions) + if !ok { + that2, ok := that.(Http1ProtocolOptions) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.HeaderTransformation.Equal(that1.HeaderTransformation) { + return false + } + return true +} func (this *HttpProtocolOptions) Equal(that interface{}) bool { if that == nil { return this == nil @@ -8550,6 +8852,9 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { } else if !this.DdosAutoMitigationAction.Equal(that1.DdosAutoMitigationAction) { return false } + if this.UseThreatMesh != that1.UseThreatMesh { + return false + } if this.DnsVolterraManaged != that1.DnsVolterraManaged { return false } @@ -8680,6 +8985,12 @@ func (this *GlobalSpecType) Equal(that interface{}) bool { if !this.HttpRedirectOptions.Equal(that1.HttpRedirectOptions) { return false } + if !this.ZtnaProxyConfigurations.Equal(that1.ZtnaProxyConfigurations) { + return false + } + if this.AdvertiseOnPublic != that1.AdvertiseOnPublic { + return false + } return true } func (this *GlobalSpecType_TlsParameters) Equal(that interface{}) bool { @@ -9234,6 +9545,30 @@ func (this *GlobalSpecType_L7DdosActionDefault) Equal(that interface{}) bool { } return true } +func (this *GlobalSpecType_L7DdosActionNone) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType_L7DdosActionNone) + if !ok { + that2, ok := that.(GlobalSpecType_L7DdosActionNone) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.L7DdosActionNone.Equal(that1.L7DdosActionNone) { + return false + } + return true +} func (this *GlobalSpecType_DisableBotDefense) Equal(that interface{}) bool { if that == nil { return this == nil @@ -9592,6 +9927,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { if this.ConnectionIdleTimeout != that1.ConnectionIdleTimeout { return false } + if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { + return false + } if !this.DnsProxyConfiguration.Equal(that1.DnsProxyConfiguration) { return false } @@ -9609,6 +9947,9 @@ func (this *CreateSpecType) Equal(that interface{}) bool { return false } } + if !this.ZtnaProxyConfigurations.Equal(that1.ZtnaProxyConfigurations) { + return false + } return true } func (this *CreateSpecType_TlsParameters) Equal(that interface{}) bool { @@ -10245,6 +10586,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { if this.ConnectionIdleTimeout != that1.ConnectionIdleTimeout { return false } + if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { + return false + } if !this.DnsProxyConfiguration.Equal(that1.DnsProxyConfiguration) { return false } @@ -10262,6 +10606,9 @@ func (this *ReplaceSpecType) Equal(that interface{}) bool { return false } } + if !this.ZtnaProxyConfigurations.Equal(that1.ZtnaProxyConfigurations) { + return false + } return true } func (this *ReplaceSpecType_TlsParameters) Equal(that interface{}) bool { @@ -10950,6 +11297,12 @@ func (this *GetSpecType) Equal(that interface{}) bool { return false } } + if !this.HttpProtocolOptions.Equal(that1.HttpProtocolOptions) { + return false + } + if !this.ZtnaProxyConfigurations.Equal(that1.ZtnaProxyConfigurations) { + return false + } return true } func (this *GetSpecType_TlsParameters) Equal(that interface{}) bool { @@ -11736,6 +12089,21 @@ func (this *ClientIPHeaders) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *ZtnaProxyConfiguration) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&virtual_host.ZtnaProxyConfiguration{") + if this.ZtnaPolicyConfig != nil { + s = append(s, "ZtnaPolicyConfig: "+fmt.Sprintf("%#v", this.ZtnaPolicyConfig)+",\n") + } + if this.ZtnaApplicationConfig != nil { + s = append(s, "ZtnaApplicationConfig: "+fmt.Sprintf("%#v", this.ZtnaApplicationConfig)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} func (this *DNSProxyConfiguration) GoString() string { if this == nil { return "nil" @@ -11900,6 +12268,18 @@ func (this *OpenApiValidationSettings) GoString() string { s = append(s, "}") return strings.Join(s, "") } +func (this *Http1ProtocolOptions) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&virtual_host.Http1ProtocolOptions{") + if this.HeaderTransformation != nil { + s = append(s, "HeaderTransformation: "+fmt.Sprintf("%#v", this.HeaderTransformation)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} func (this *HttpProtocolOptions) GoString() string { if this == nil { return "nil" @@ -11949,7 +12329,7 @@ func (this *GlobalSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 89) + s := make([]string, 0, 93) s = append(s, "&virtual_host.GlobalSpecType{") s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") if this.Routes != nil { @@ -12068,6 +12448,7 @@ func (this *GlobalSpecType) GoString() string { if this.DdosAutoMitigationAction != nil { s = append(s, "DdosAutoMitigationAction: "+fmt.Sprintf("%#v", this.DdosAutoMitigationAction)+",\n") } + s = append(s, "UseThreatMesh: "+fmt.Sprintf("%#v", this.UseThreatMesh)+",\n") s = append(s, "DnsVolterraManaged: "+fmt.Sprintf("%#v", this.DnsVolterraManaged)+",\n") if this.DnsDomains != nil { s = append(s, "DnsDomains: "+fmt.Sprintf("%#v", this.DnsDomains)+",\n") @@ -12136,6 +12517,10 @@ func (this *GlobalSpecType) GoString() string { if this.HttpRedirectOptions != nil { s = append(s, "HttpRedirectOptions: "+fmt.Sprintf("%#v", this.HttpRedirectOptions)+",\n") } + if this.ZtnaProxyConfigurations != nil { + s = append(s, "ZtnaProxyConfigurations: "+fmt.Sprintf("%#v", this.ZtnaProxyConfigurations)+",\n") + } + s = append(s, "AdvertiseOnPublic: "+fmt.Sprintf("%#v", this.AdvertiseOnPublic)+",\n") s = append(s, "}") return strings.Join(s, "") } @@ -12323,6 +12708,14 @@ func (this *GlobalSpecType_L7DdosActionDefault) GoString() string { `L7DdosActionDefault:` + fmt.Sprintf("%#v", this.L7DdosActionDefault) + `}`}, ", ") return s } +func (this *GlobalSpecType_L7DdosActionNone) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&virtual_host.GlobalSpecType_L7DdosActionNone{` + + `L7DdosActionNone:` + fmt.Sprintf("%#v", this.L7DdosActionNone) + `}`}, ", ") + return s +} func (this *GlobalSpecType_DisableBotDefense) GoString() string { if this == nil { return "nil" @@ -12373,7 +12766,7 @@ func (this *CreateSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 53) + s := make([]string, 0, 55) s = append(s, "&virtual_host.CreateSpecType{") s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") if this.Routes != nil { @@ -12470,6 +12863,9 @@ func (this *CreateSpecType) GoString() string { s = append(s, "CookiesToModify: "+fmt.Sprintf("%#v", this.CookiesToModify)+",\n") } s = append(s, "ConnectionIdleTimeout: "+fmt.Sprintf("%#v", this.ConnectionIdleTimeout)+",\n") + if this.HttpProtocolOptions != nil { + s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") + } if this.DnsProxyConfiguration != nil { s = append(s, "DnsProxyConfiguration: "+fmt.Sprintf("%#v", this.DnsProxyConfiguration)+",\n") } @@ -12492,6 +12888,9 @@ func (this *CreateSpecType) GoString() string { if this.DomainCertMap != nil { s = append(s, "DomainCertMap: "+mapStringForDomainCertMap+",\n") } + if this.ZtnaProxyConfigurations != nil { + s = append(s, "ZtnaProxyConfigurations: "+fmt.Sprintf("%#v", this.ZtnaProxyConfigurations)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -12635,7 +13034,7 @@ func (this *ReplaceSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 53) + s := make([]string, 0, 55) s = append(s, "&virtual_host.ReplaceSpecType{") s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") if this.Routes != nil { @@ -12732,6 +13131,9 @@ func (this *ReplaceSpecType) GoString() string { s = append(s, "CookiesToModify: "+fmt.Sprintf("%#v", this.CookiesToModify)+",\n") } s = append(s, "ConnectionIdleTimeout: "+fmt.Sprintf("%#v", this.ConnectionIdleTimeout)+",\n") + if this.HttpProtocolOptions != nil { + s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") + } if this.DnsProxyConfiguration != nil { s = append(s, "DnsProxyConfiguration: "+fmt.Sprintf("%#v", this.DnsProxyConfiguration)+",\n") } @@ -12754,6 +13156,9 @@ func (this *ReplaceSpecType) GoString() string { if this.DomainCertMap != nil { s = append(s, "DomainCertMap: "+mapStringForDomainCertMap+",\n") } + if this.ZtnaProxyConfigurations != nil { + s = append(s, "ZtnaProxyConfigurations: "+fmt.Sprintf("%#v", this.ZtnaProxyConfigurations)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -12897,7 +13302,7 @@ func (this *GetSpecType) GoString() string { if this == nil { return "nil" } - s := make([]string, 0, 62) + s := make([]string, 0, 64) s = append(s, "&virtual_host.GetSpecType{") s = append(s, "Domains: "+fmt.Sprintf("%#v", this.Domains)+",\n") if this.Routes != nil { @@ -13032,6 +13437,12 @@ func (this *GetSpecType) GoString() string { if this.DomainCertMap != nil { s = append(s, "DomainCertMap: "+mapStringForDomainCertMap+",\n") } + if this.HttpProtocolOptions != nil { + s = append(s, "HttpProtocolOptions: "+fmt.Sprintf("%#v", this.HttpProtocolOptions)+",\n") + } + if this.ZtnaProxyConfigurations != nil { + s = append(s, "ZtnaProxyConfigurations: "+fmt.Sprintf("%#v", this.ZtnaProxyConfigurations)+",\n") + } s = append(s, "}") return strings.Join(s, "") } @@ -14265,6 +14676,59 @@ func (m *ClientIPHeaders) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *ZtnaProxyConfiguration) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ZtnaProxyConfiguration) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ZtnaProxyConfiguration) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ZtnaApplicationConfig) > 0 { + for iNdEx := len(m.ZtnaApplicationConfig) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ZtnaApplicationConfig[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6 + i-- + dAtA[i] = 0xa2 + } + } + if len(m.ZtnaPolicyConfig) > 0 { + for iNdEx := len(m.ZtnaPolicyConfig) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ZtnaPolicyConfig[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + func (m *DNSProxyConfiguration) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -14737,6 +15201,41 @@ func (m *OpenApiValidationSettings) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } +func (m *Http1ProtocolOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Http1ProtocolOptions) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Http1ProtocolOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.HeaderTransformation != nil { + { + size, err := m.HeaderTransformation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *HttpProtocolOptions) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -14889,6 +15388,32 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x82 } + if m.AdvertiseOnPublic { + i-- + if m.AdvertiseOnPublic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x46 + i-- + dAtA[i] = 0x88 + } + if m.ZtnaProxyConfigurations != nil { + { + size, err := m.ZtnaProxyConfigurations.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x46 + i-- + dAtA[i] = 0x82 + } if m.HttpRedirectOptions != nil { { size, err := m.HttpRedirectOptions.MarshalToSizedBuffer(dAtA[:i]) @@ -15143,6 +15668,18 @@ func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xc0 } + if m.UseThreatMesh { + i-- + if m.UseThreatMesh { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xf8 + } if m.DdosAutoMitigationAction != nil { { size := m.DdosAutoMitigationAction.Size() @@ -16249,6 +16786,29 @@ func (m *GlobalSpecType_L7DdosActionDefault) MarshalToSizedBuffer(dAtA []byte) ( } return len(dAtA) - i, nil } +func (m *GlobalSpecType_L7DdosActionNone) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType_L7DdosActionNone) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.L7DdosActionNone != nil { + { + size, err := m.L7DdosActionNone.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xf2 + } + return len(dAtA) - i, nil +} func (m *GlobalSpecType_DisableBotDefense) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) @@ -16429,6 +16989,34 @@ func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x82 } + if m.ZtnaProxyConfigurations != nil { + { + size, err := m.ZtnaProxyConfigurations.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x46 + i-- + dAtA[i] = 0x82 + } + if m.HttpProtocolOptions != nil { + { + size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xca + } if len(m.DomainCertMap) > 0 { keysForDomainCertMap := make([]string, 0, len(m.DomainCertMap)) for k := range m.DomainCertMap { @@ -17322,6 +17910,34 @@ func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x82 } + if m.ZtnaProxyConfigurations != nil { + { + size, err := m.ZtnaProxyConfigurations.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x46 + i-- + dAtA[i] = 0x82 + } + if m.HttpProtocolOptions != nil { + { + size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xca + } if len(m.DomainCertMap) > 0 { keysForDomainCertMap := make([]string, 0, len(m.DomainCertMap)) for k := range m.DomainCertMap { @@ -18215,6 +18831,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x82 } + if m.ZtnaProxyConfigurations != nil { + { + size, err := m.ZtnaProxyConfigurations.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x46 + i-- + dAtA[i] = 0x82 + } if len(m.AutoCertErrorMsg) > 0 { i -= len(m.AutoCertErrorMsg) copy(dAtA[i:], m.AutoCertErrorMsg) @@ -18279,6 +18909,20 @@ func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xd8 } + if m.HttpProtocolOptions != nil { + { + size, err := m.HttpProtocolOptions.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xca + } if len(m.DomainCertMap) > 0 { keysForDomainCertMap := make([]string, 0, len(m.DomainCertMap)) for k := range m.DomainCertMap { @@ -19699,6 +20343,27 @@ func (m *ClientIPHeaders) Size() (n int) { return n } +func (m *ZtnaProxyConfiguration) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ZtnaPolicyConfig) > 0 { + for _, e := range m.ZtnaPolicyConfig { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.ZtnaApplicationConfig) > 0 { + for _, e := range m.ZtnaApplicationConfig { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + return n +} + func (m *DNSProxyConfiguration) Size() (n int) { if m == nil { return 0 @@ -19910,6 +20575,19 @@ func (m *OpenApiValidationSettings) Size() (n int) { return n } +func (m *Http1ProtocolOptions) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.HeaderTransformation != nil { + l = m.HeaderTransformation.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + func (m *HttpProtocolOptions) Size() (n int) { if m == nil { return 0 @@ -20183,6 +20861,9 @@ func (m *GlobalSpecType) Size() (n int) { if m.DdosAutoMitigationAction != nil { n += m.DdosAutoMitigationAction.Size() } + if m.UseThreatMesh { + n += 3 + } if m.DnsVolterraManaged { n += 3 } @@ -20272,6 +20953,13 @@ func (m *GlobalSpecType) Size() (n int) { l = m.HttpRedirectOptions.Size() n += 2 + l + sovTypes(uint64(l)) } + if m.ZtnaProxyConfigurations != nil { + l = m.ZtnaProxyConfigurations.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.AdvertiseOnPublic { + n += 3 + } if m.DnsProxyConfiguration != nil { l = m.DnsProxyConfiguration.Size() n += 2 + l + sovTypes(uint64(l)) @@ -20551,6 +21239,18 @@ func (m *GlobalSpecType_L7DdosActionDefault) Size() (n int) { } return n } +func (m *GlobalSpecType_L7DdosActionNone) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.L7DdosActionNone != nil { + l = m.L7DdosActionNone.Size() + n += 2 + l + sovTypes(uint64(l)) + } + return n +} func (m *GlobalSpecType_DisableBotDefense) Size() (n int) { if m == nil { return 0 @@ -20805,6 +21505,14 @@ func (m *CreateSpecType) Size() (n int) { n += mapEntrySize + 2 + sovTypes(uint64(mapEntrySize)) } } + if m.HttpProtocolOptions != nil { + l = m.HttpProtocolOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ZtnaProxyConfigurations != nil { + l = m.ZtnaProxyConfigurations.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.DnsProxyConfiguration != nil { l = m.DnsProxyConfiguration.Size() n += 2 + l + sovTypes(uint64(l)) @@ -21191,6 +21899,14 @@ func (m *ReplaceSpecType) Size() (n int) { n += mapEntrySize + 2 + sovTypes(uint64(mapEntrySize)) } } + if m.HttpProtocolOptions != nil { + l = m.HttpProtocolOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } + if m.ZtnaProxyConfigurations != nil { + l = m.ZtnaProxyConfigurations.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.DnsProxyConfiguration != nil { l = m.DnsProxyConfiguration.Size() n += 2 + l + sovTypes(uint64(l)) @@ -21584,6 +22300,10 @@ func (m *GetSpecType) Size() (n int) { n += mapEntrySize + 2 + sovTypes(uint64(mapEntrySize)) } } + if m.HttpProtocolOptions != nil { + l = m.HttpProtocolOptions.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.State != 0 { n += 2 + sovTypes(uint64(m.State)) } @@ -21608,6 +22328,10 @@ func (m *GetSpecType) Size() (n int) { if l > 0 { n += 2 + l + sovTypes(uint64(l)) } + if m.ZtnaProxyConfigurations != nil { + l = m.ZtnaProxyConfigurations.Size() + n += 2 + l + sovTypes(uint64(l)) + } if m.DnsProxyConfiguration != nil { l = m.DnsProxyConfiguration.Size() n += 2 + l + sovTypes(uint64(l)) @@ -22196,6 +22920,27 @@ func (this *ClientIPHeaders) String() string { }, "") return s } +func (this *ZtnaProxyConfiguration) String() string { + if this == nil { + return "nil" + } + repeatedStringForZtnaPolicyConfig := "[]*ObjectRefType{" + for _, f := range this.ZtnaPolicyConfig { + repeatedStringForZtnaPolicyConfig += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForZtnaPolicyConfig += "}" + repeatedStringForZtnaApplicationConfig := "[]*ObjectRefType{" + for _, f := range this.ZtnaApplicationConfig { + repeatedStringForZtnaApplicationConfig += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForZtnaApplicationConfig += "}" + s := strings.Join([]string{`&ZtnaProxyConfiguration{`, + `ZtnaPolicyConfig:` + repeatedStringForZtnaPolicyConfig + `,`, + `ZtnaApplicationConfig:` + repeatedStringForZtnaApplicationConfig + `,`, + `}`, + }, "") + return s +} func (this *DNSProxyConfiguration) String() string { if this == nil { return "nil" @@ -22369,6 +23114,16 @@ func (this *OpenApiValidationSettings) String() string { }, "") return s } +func (this *Http1ProtocolOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Http1ProtocolOptions{`, + `HeaderTransformation:` + strings.Replace(fmt.Sprintf("%v", this.HeaderTransformation), "HeaderTransformationType", "schema.HeaderTransformationType", 1) + `,`, + `}`, + }, "") + return s +} func (this *HttpProtocolOptions) String() string { if this == nil { return "nil" @@ -22384,7 +23139,7 @@ func (this *HttpProtocolOptions_HttpProtocolEnableV1Only) String() string { return "nil" } s := strings.Join([]string{`&HttpProtocolOptions_HttpProtocolEnableV1Only{`, - `HttpProtocolEnableV1Only:` + strings.Replace(fmt.Sprintf("%v", this.HttpProtocolEnableV1Only), "Empty", "schema.Empty", 1) + `,`, + `HttpProtocolEnableV1Only:` + strings.Replace(fmt.Sprintf("%v", this.HttpProtocolEnableV1Only), "Http1ProtocolOptions", "Http1ProtocolOptions", 1) + `,`, `}`, }, "") return s @@ -22570,6 +23325,7 @@ func (this *GlobalSpecType) String() string { `DomainCertMap:` + mapStringForDomainCertMap + `,`, `HttpProtocolOptions:` + strings.Replace(this.HttpProtocolOptions.String(), "HttpProtocolOptions", "HttpProtocolOptions", 1) + `,`, `DdosAutoMitigationAction:` + fmt.Sprintf("%v", this.DdosAutoMitigationAction) + `,`, + `UseThreatMesh:` + fmt.Sprintf("%v", this.UseThreatMesh) + `,`, `DnsVolterraManaged:` + fmt.Sprintf("%v", this.DnsVolterraManaged) + `,`, `DnsDomains:` + repeatedStringForDnsDomains + `,`, `AutoCert:` + fmt.Sprintf("%v", this.AutoCert) + `,`, @@ -22591,6 +23347,8 @@ func (this *GlobalSpecType) String() string { `CustomCertExpiry:` + strings.Replace(fmt.Sprintf("%v", this.CustomCertExpiry), "Timestamp", "types.Timestamp", 1) + `,`, `AutoCertErrorMsg:` + fmt.Sprintf("%v", this.AutoCertErrorMsg) + `,`, `HttpRedirectOptions:` + strings.Replace(this.HttpRedirectOptions.String(), "HttpRedirectOptions", "HttpRedirectOptions", 1) + `,`, + `ZtnaProxyConfigurations:` + strings.Replace(this.ZtnaProxyConfigurations.String(), "ZtnaProxyConfiguration", "ZtnaProxyConfiguration", 1) + `,`, + `AdvertiseOnPublic:` + fmt.Sprintf("%v", this.AdvertiseOnPublic) + `,`, `DnsProxyConfiguration:` + strings.Replace(this.DnsProxyConfiguration.String(), "DNSProxyConfiguration", "DNSProxyConfiguration", 1) + `,`, `}`, }, "") @@ -22826,6 +23584,16 @@ func (this *GlobalSpecType_L7DdosActionDefault) String() string { }, "") return s } +func (this *GlobalSpecType_L7DdosActionNone) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType_L7DdosActionNone{`, + `L7DdosActionNone:` + strings.Replace(fmt.Sprintf("%v", this.L7DdosActionNone), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} func (this *GlobalSpecType_DisableBotDefense) String() string { if this == nil { return "nil" @@ -22983,6 +23751,8 @@ func (this *CreateSpecType) String() string { `SlowDdosMitigation:` + strings.Replace(this.SlowDdosMitigation.String(), "SlowDDoSMitigation", "SlowDDoSMitigation", 1) + `,`, `ApiSpec:` + strings.Replace(this.ApiSpec.String(), "ApiSpec", "ApiSpec", 1) + `,`, `DomainCertMap:` + mapStringForDomainCertMap + `,`, + `HttpProtocolOptions:` + strings.Replace(this.HttpProtocolOptions.String(), "HttpProtocolOptions", "HttpProtocolOptions", 1) + `,`, + `ZtnaProxyConfigurations:` + strings.Replace(this.ZtnaProxyConfigurations.String(), "ZtnaProxyConfiguration", "ZtnaProxyConfiguration", 1) + `,`, `DnsProxyConfiguration:` + strings.Replace(this.DnsProxyConfiguration.String(), "DNSProxyConfiguration", "DNSProxyConfiguration", 1) + `,`, `}`, }, "") @@ -23261,6 +24031,8 @@ func (this *ReplaceSpecType) String() string { `SlowDdosMitigation:` + strings.Replace(this.SlowDdosMitigation.String(), "SlowDDoSMitigation", "SlowDDoSMitigation", 1) + `,`, `ApiSpec:` + strings.Replace(this.ApiSpec.String(), "ApiSpec", "ApiSpec", 1) + `,`, `DomainCertMap:` + mapStringForDomainCertMap + `,`, + `HttpProtocolOptions:` + strings.Replace(this.HttpProtocolOptions.String(), "HttpProtocolOptions", "HttpProtocolOptions", 1) + `,`, + `ZtnaProxyConfigurations:` + strings.Replace(this.ZtnaProxyConfigurations.String(), "ZtnaProxyConfiguration", "ZtnaProxyConfiguration", 1) + `,`, `DnsProxyConfiguration:` + strings.Replace(this.DnsProxyConfiguration.String(), "DNSProxyConfiguration", "DNSProxyConfiguration", 1) + `,`, `}`, }, "") @@ -23546,12 +24318,14 @@ func (this *GetSpecType) String() string { `SlowDdosMitigation:` + strings.Replace(this.SlowDdosMitigation.String(), "SlowDDoSMitigation", "SlowDDoSMitigation", 1) + `,`, `ApiSpec:` + strings.Replace(this.ApiSpec.String(), "ApiSpec", "ApiSpec", 1) + `,`, `DomainCertMap:` + mapStringForDomainCertMap + `,`, + `HttpProtocolOptions:` + strings.Replace(this.HttpProtocolOptions.String(), "HttpProtocolOptions", "HttpProtocolOptions", 1) + `,`, `State:` + fmt.Sprintf("%v", this.State) + `,`, `HostName:` + fmt.Sprintf("%v", this.HostName) + `,`, `DnsInfo:` + repeatedStringForDnsInfo + `,`, `AutoCertInfo:` + strings.Replace(this.AutoCertInfo.String(), "AutoCertInfoType", "AutoCertInfoType", 1) + `,`, `DnsZoneStateChoice:` + fmt.Sprintf("%v", this.DnsZoneStateChoice) + `,`, `AutoCertErrorMsg:` + fmt.Sprintf("%v", this.AutoCertErrorMsg) + `,`, + `ZtnaProxyConfigurations:` + strings.Replace(this.ZtnaProxyConfigurations.String(), "ZtnaProxyConfiguration", "ZtnaProxyConfiguration", 1) + `,`, `DnsProxyConfiguration:` + strings.Replace(this.DnsProxyConfiguration.String(), "DNSProxyConfiguration", "DNSProxyConfiguration", 1) + `,`, `}`, }, "") @@ -26560,6 +27334,127 @@ func (m *ClientIPHeaders) Unmarshal(dAtA []byte) error { } return nil } +func (m *ZtnaProxyConfiguration) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ZtnaProxyConfiguration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ZtnaProxyConfiguration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ZtnaPolicyConfig", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ZtnaPolicyConfig = append(m.ZtnaPolicyConfig, &schema.ObjectRefType{}) + if err := m.ZtnaPolicyConfig[len(m.ZtnaPolicyConfig)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 100: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ZtnaApplicationConfig", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ZtnaApplicationConfig = append(m.ZtnaApplicationConfig, &schema.ObjectRefType{}) + if err := m.ZtnaApplicationConfig[len(m.ZtnaApplicationConfig)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *DNSProxyConfiguration) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -27506,6 +28401,95 @@ func (m *OpenApiValidationSettings) Unmarshal(dAtA []byte) error { } return nil } +func (m *Http1ProtocolOptions) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Http1ProtocolOptions: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Http1ProtocolOptions: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HeaderTransformation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.HeaderTransformation == nil { + m.HeaderTransformation = &schema.HeaderTransformationType{} + } + if err := m.HeaderTransformation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *HttpProtocolOptions) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -27564,7 +28548,7 @@ func (m *HttpProtocolOptions) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - v := &schema.Empty{} + v := &Http1ProtocolOptions{} if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -29918,6 +30902,61 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } m.DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionDefault{v} iNdEx = postIndex + case 94: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field L7DdosActionNone", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.DdosAutoMitigationAction = &GlobalSpecType_L7DdosActionNone{v} + iNdEx = postIndex + case 95: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field UseThreatMesh", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.UseThreatMesh = bool(v != 0) case 1000: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field DnsVolterraManaged", wireType) @@ -30528,50 +31567,122 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.CustomCertExpiry == nil { - m.CustomCertExpiry = &types.Timestamp{} + if m.CustomCertExpiry == nil { + m.CustomCertExpiry = &types.Timestamp{} + } + if err := m.CustomCertExpiry.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 1026: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AutoCertErrorMsg", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AutoCertErrorMsg = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 1027: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirectOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.HttpRedirectOptions == nil { + m.HttpRedirectOptions = &HttpRedirectOptions{} + } + if err := m.HttpRedirectOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 1120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ZtnaProxyConfigurations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ZtnaProxyConfigurations == nil { + m.ZtnaProxyConfigurations = &ZtnaProxyConfiguration{} } - if err := m.CustomCertExpiry.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ZtnaProxyConfigurations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 1026: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoCertErrorMsg", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AutoCertErrorMsg = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 1027: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpRedirectOptions", wireType) + case 1121: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublic", wireType) } - var msglen int + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -30581,28 +31692,12 @@ func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HttpRedirectOptions == nil { - m.HttpRedirectOptions = &HttpRedirectOptions{} - } - if err := m.HttpRedirectOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex + m.AdvertiseOnPublic = bool(v != 0) case 1200: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field DnsProxyConfiguration", wireType) @@ -32610,6 +33705,78 @@ func (m *CreateSpecType) Unmarshal(dAtA []byte) error { } m.DomainCertMap[mapkey] = mapvalue iNdEx = postIndex + case 89: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.HttpProtocolOptions == nil { + m.HttpProtocolOptions = &HttpProtocolOptions{} + } + if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 1120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ZtnaProxyConfigurations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ZtnaProxyConfigurations == nil { + m.ZtnaProxyConfigurations = &ZtnaProxyConfiguration{} + } + if err := m.ZtnaProxyConfigurations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1200: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field DnsProxyConfiguration", wireType) @@ -34430,6 +35597,78 @@ func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { } m.DomainCertMap[mapkey] = mapvalue iNdEx = postIndex + case 89: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.HttpProtocolOptions == nil { + m.HttpProtocolOptions = &HttpProtocolOptions{} + } + if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 1120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ZtnaProxyConfigurations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ZtnaProxyConfigurations == nil { + m.ZtnaProxyConfigurations = &ZtnaProxyConfiguration{} + } + if err := m.ZtnaProxyConfigurations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1200: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field DnsProxyConfiguration", wireType) @@ -36305,6 +37544,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.DomainCertMap[mapkey] = mapvalue iNdEx = postIndex + case 89: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field HttpProtocolOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.HttpProtocolOptions == nil { + m.HttpProtocolOptions = &HttpProtocolOptions{} + } + if err := m.HttpProtocolOptions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1003: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) @@ -36528,6 +37803,42 @@ func (m *GetSpecType) Unmarshal(dAtA []byte) error { } m.AutoCertErrorMsg = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 1120: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ZtnaProxyConfigurations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ZtnaProxyConfigurations == nil { + m.ZtnaProxyConfigurations = &ZtnaProxyConfiguration{} + } + if err := m.ZtnaProxyConfigurations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 1200: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field DnsProxyConfiguration", wireType) diff --git a/pbgo/extschema/schema/virtual_host/types.vesmsg.go b/pbgo/extschema/schema/virtual_host/types.vesmsg.go index 61a7e3618..68a3d461b 100644 --- a/pbgo/extschema/schema/virtual_host/types.vesmsg.go +++ b/pbgo/extschema/schema/virtual_host/types.vesmsg.go @@ -1157,9 +1157,11 @@ var DefaultClientIPHeadersValidator = func() *ValidateClientIPHeaders { vrhClientIpHeaders := v.ClientIpHeadersValidationRuleHandler rulesClientIpHeaders := map[string]string{ + "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.items.string.max_bytes": "256", "ves.io.schema.rules.repeated.items.string.min_bytes": "1", "ves.io.schema.rules.repeated.max_items": "5", + "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true", } vFn, err = vrhClientIpHeaders(rulesClientIpHeaders) @@ -1504,6 +1506,12 @@ func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetZtnaProxyConfigurationsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurationsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -1869,6 +1877,24 @@ func (m *CreateSpecType) GetWafTypeDRefInfo() ([]db.DRefInfo, error) { } +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetZtnaProxyConfigurationsDRefInfo() ([]db.DRefInfo, error) { + if m.GetZtnaProxyConfigurations() == nil { + return nil, nil + } + + drInfos, err := m.GetZtnaProxyConfigurations().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurations().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "ztna_proxy_configurations." + dri.DRField + } + return drInfos, err + +} + type ValidateCreateSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -2708,6 +2734,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["http_protocol_options"]; exists { + + vOpts := append(opts, db.WithValidateField("http_protocol_options")) + if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["idle_timeout"]; exists { vOpts := append(opts, db.WithValidateField("idle_timeout")) @@ -2961,6 +2996,15 @@ func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["ztna_proxy_configurations"]; exists { + + vOpts := append(opts, db.WithValidateField("ztna_proxy_configurations")) + if err := fv(ctx, m.GetZtnaProxyConfigurations(), vOpts...); err != nil { + return err + } + + } + return nil } @@ -3210,6 +3254,10 @@ var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { v.FldValidators["domain_cert_map"] = DomainCertificatesValidator().Validate + v.FldValidators["http_protocol_options"] = HttpProtocolOptionsValidator().Validate + + v.FldValidators["ztna_proxy_configurations"] = ZtnaProxyConfigurationValidator().Validate + v.FldValidators["dns_proxy_configuration"] = DNSProxyConfigurationValidator().Validate return v @@ -4548,6 +4596,12 @@ func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetZtnaProxyConfigurationsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurationsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -4913,6 +4967,24 @@ func (m *GetSpecType) GetWafTypeDRefInfo() ([]db.DRefInfo, error) { } +// GetDRefInfo for the field's type +func (m *GetSpecType) GetZtnaProxyConfigurationsDRefInfo() ([]db.DRefInfo, error) { + if m.GetZtnaProxyConfigurations() == nil { + return nil, nil + } + + drInfos, err := m.GetZtnaProxyConfigurations().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurations().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "ztna_proxy_configurations." + dri.DRField + } + return drInfos, err + +} + type ValidateGetSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -5810,6 +5882,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["http_protocol_options"]; exists { + + vOpts := append(opts, db.WithValidateField("http_protocol_options")) + if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["idle_timeout"]; exists { vOpts := append(opts, db.WithValidateField("idle_timeout")) @@ -6081,6 +6162,15 @@ func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts } + if fv, exists := v.FldValidators["ztna_proxy_configurations"]; exists { + + vOpts := append(opts, db.WithValidateField("ztna_proxy_configurations")) + if err := fv(ctx, m.GetZtnaProxyConfigurations(), vOpts...); err != nil { + return err + } + + } + return nil } @@ -6321,8 +6411,12 @@ var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { v.FldValidators["domain_cert_map"] = DomainCertificatesValidator().Validate + v.FldValidators["http_protocol_options"] = HttpProtocolOptionsValidator().Validate + v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate + v.FldValidators["ztna_proxy_configurations"] = ZtnaProxyConfigurationValidator().Validate + v.FldValidators["dns_proxy_configuration"] = DNSProxyConfigurationValidator().Validate return v @@ -6533,6 +6627,12 @@ func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetZtnaProxyConfigurationsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurationsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -7277,6 +7377,24 @@ func (m *GlobalSpecType) GetWafTypeDRefInfo() ([]db.DRefInfo, error) { } +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetZtnaProxyConfigurationsDRefInfo() ([]db.DRefInfo, error) { + if m.GetZtnaProxyConfigurations() == nil { + return nil, nil + } + + drInfos, err := m.GetZtnaProxyConfigurations().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurations().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "ztna_proxy_configurations." + dri.DRField + } + return drInfos, err + +} + type ValidateGlobalSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -8192,6 +8310,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["advertise_on_public"]; exists { + + vOpts := append(opts, db.WithValidateField("advertise_on_public")) + if err := fv(ctx, m.GetAdvertiseOnPublic(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["advertise_policies"]; exists { vOpts := append(opts, db.WithValidateField("advertise_policies")) @@ -8481,6 +8608,17 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o return err } } + case *GlobalSpecType_L7DdosActionNone: + if fv, exists := v.FldValidators["ddos_auto_mitigation_action.l7_ddos_action_none"]; exists { + val := m.GetDdosAutoMitigationAction().(*GlobalSpecType_L7DdosActionNone).L7DdosActionNone + vOpts := append(opts, + db.WithValidateField("ddos_auto_mitigation_action"), + db.WithValidateField("l7_ddos_action_none"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } } @@ -9026,6 +9164,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["use_threat_mesh"]; exists { + + vOpts := append(opts, db.WithValidateField("use_threat_mesh")) + if err := fv(ctx, m.GetUseThreatMesh(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["user_domains"]; exists { vOpts := append(opts, db.WithValidateField("user_domains")) if err := fv(ctx, m.GetUserDomains(), vOpts...); err != nil { @@ -9060,6 +9207,15 @@ func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, o } + if fv, exists := v.FldValidators["ztna_proxy_configurations"]; exists { + + vOpts := append(opts, db.WithValidateField("ztna_proxy_configurations")) + if err := fv(ctx, m.GetZtnaProxyConfigurations(), vOpts...); err != nil { + return err + } + + } + return nil } @@ -9403,6 +9559,8 @@ var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { v.FldValidators["dns_info"] = ves_io_schema_virtual_host_dns_info.DnsInfoValidator().Validate + v.FldValidators["ztna_proxy_configurations"] = ZtnaProxyConfigurationValidator().Validate + v.FldValidators["dns_proxy_configuration"] = DNSProxyConfigurationValidator().Validate return v @@ -9414,6 +9572,86 @@ func GlobalSpecTypeValidator() db.Validator { // augmented methods on protoc/std generated struct +func (m *Http1ProtocolOptions) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Http1ProtocolOptions) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Http1ProtocolOptions) DeepCopy() *Http1ProtocolOptions { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Http1ProtocolOptions{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Http1ProtocolOptions) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Http1ProtocolOptions) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return Http1ProtocolOptionsValidator().Validate(ctx, m, opts...) +} + +type ValidateHttp1ProtocolOptions struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateHttp1ProtocolOptions) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Http1ProtocolOptions) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Http1ProtocolOptions got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["header_transformation"]; exists { + + vOpts := append(opts, db.WithValidateField("header_transformation")) + if err := fv(ctx, m.GetHeaderTransformation(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultHttp1ProtocolOptionsValidator = func() *ValidateHttp1ProtocolOptions { + v := &ValidateHttp1ProtocolOptions{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["header_transformation"] = ves_io_schema.HeaderTransformationTypeValidator().Validate + + return v +}() + +func Http1ProtocolOptionsValidator() db.Validator { + return DefaultHttp1ProtocolOptionsValidator +} + +// augmented methods on protoc/std generated struct + func (m *HttpProtocolOptions) ToJSON() (string, error) { return codec.ToJSON(m) } @@ -9548,6 +9786,8 @@ var DefaultHttpProtocolOptionsValidator = func() *ValidateHttpProtocolOptions { } v.FldValidators["http_protocol_choice"] = vFn + v.FldValidators["http_protocol_choice.http_protocol_enable_v1_only"] = Http1ProtocolOptionsValidator().Validate + return v }() @@ -10422,6 +10662,12 @@ func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { drInfos = append(drInfos, fdrInfos...) } + if fdrInfos, err := m.GetZtnaProxyConfigurationsDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurationsDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + return drInfos, nil } @@ -10787,6 +11033,24 @@ func (m *ReplaceSpecType) GetWafTypeDRefInfo() ([]db.DRefInfo, error) { } +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetZtnaProxyConfigurationsDRefInfo() ([]db.DRefInfo, error) { + if m.GetZtnaProxyConfigurations() == nil { + return nil, nil + } + + drInfos, err := m.GetZtnaProxyConfigurations().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetZtnaProxyConfigurations().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "ztna_proxy_configurations." + dri.DRField + } + return drInfos, err + +} + type ValidateReplaceSpecType struct { FldValidators map[string]db.ValidatorFunc } @@ -11626,6 +11890,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["http_protocol_options"]; exists { + + vOpts := append(opts, db.WithValidateField("http_protocol_options")) + if err := fv(ctx, m.GetHttpProtocolOptions(), vOpts...); err != nil { + return err + } + + } + if fv, exists := v.FldValidators["idle_timeout"]; exists { vOpts := append(opts, db.WithValidateField("idle_timeout")) @@ -11879,6 +12152,15 @@ func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, } + if fv, exists := v.FldValidators["ztna_proxy_configurations"]; exists { + + vOpts := append(opts, db.WithValidateField("ztna_proxy_configurations")) + if err := fv(ctx, m.GetZtnaProxyConfigurations(), vOpts...); err != nil { + return err + } + + } + return nil } @@ -12128,6 +12410,10 @@ var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { v.FldValidators["domain_cert_map"] = DomainCertificatesValidator().Validate + v.FldValidators["http_protocol_options"] = HttpProtocolOptionsValidator().Validate + + v.FldValidators["ztna_proxy_configurations"] = ZtnaProxyConfigurationValidator().Validate + v.FldValidators["dns_proxy_configuration"] = DNSProxyConfigurationValidator().Validate return v @@ -13295,6 +13581,329 @@ func VirtualHostIDValidator() db.Validator { return DefaultVirtualHostIDValidator } +// augmented methods on protoc/std generated struct + +func (m *ZtnaProxyConfiguration) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ZtnaProxyConfiguration) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ZtnaProxyConfiguration) DeepCopy() *ZtnaProxyConfiguration { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ZtnaProxyConfiguration{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ZtnaProxyConfiguration) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ZtnaProxyConfiguration) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ZtnaProxyConfigurationValidator().Validate(ctx, m, opts...) +} + +func (m *ZtnaProxyConfiguration) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetZtnaApplicationConfigDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetZtnaApplicationConfigDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetZtnaPolicyConfigDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetZtnaPolicyConfigDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +func (m *ZtnaProxyConfiguration) GetZtnaApplicationConfigDRefInfo() ([]db.DRefInfo, error) { + refs := m.GetZtnaApplicationConfig() + if len(refs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(refs)) + for i, ref := range refs { + if ref == nil { + return nil, fmt.Errorf("ZtnaProxyConfiguration.ztna_application_config[%d] has a nil value", i) + } + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "ztna_application.Object", + RefdUID: ref.Uid, + RefdTenant: ref.Tenant, + RefdNS: ref.Namespace, + RefdName: ref.Name, + DRField: "ztna_application_config", + Ref: ref, + }) + } + return drInfos, nil + +} + +// GetZtnaApplicationConfigDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ZtnaProxyConfiguration) GetZtnaApplicationConfigDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "ztna_application.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: ztna_application") + } + for _, ref := range m.GetZtnaApplicationConfig() { + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +func (m *ZtnaProxyConfiguration) GetZtnaPolicyConfigDRefInfo() ([]db.DRefInfo, error) { + refs := m.GetZtnaPolicyConfig() + if len(refs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(refs)) + for i, ref := range refs { + if ref == nil { + return nil, fmt.Errorf("ZtnaProxyConfiguration.ztna_policy_config[%d] has a nil value", i) + } + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "ztna.Object", + RefdUID: ref.Uid, + RefdTenant: ref.Tenant, + RefdNS: ref.Namespace, + RefdName: ref.Name, + DRField: "ztna_policy_config", + Ref: ref, + }) + } + return drInfos, nil + +} + +// GetZtnaPolicyConfigDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *ZtnaProxyConfiguration) GetZtnaPolicyConfigDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "ztna.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: ztna") + } + for _, ref := range m.GetZtnaPolicyConfig() { + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + } + + return entries, nil +} + +type ValidateZtnaProxyConfiguration struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateZtnaProxyConfiguration) ZtnaPolicyConfigValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for ztna_policy_config") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ztna_policy_config") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated ztna_policy_config") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items ztna_policy_config") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateZtnaProxyConfiguration) ZtnaApplicationConfigValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemRules := db.GetRepMessageItemRules(rules) + itemValFn, err := db.NewMessageValidationRuleHandler(itemRules) + if err != nil { + return nil, errors.Wrap(err, "Message ValidationRuleHandler for ztna_application_config") + } + itemsValidatorFn := func(ctx context.Context, elems []*ves_io_schema.ObjectRefType, opts ...db.ValidateOpt) error { + for i, el := range elems { + if err := itemValFn(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + if err := ves_io_schema.ObjectRefTypeValidator().Validate(ctx, el, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element %d", i)) + } + } + return nil + } + repValFn, err := db.NewRepeatedValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Repeated ValidationRuleHandler for ztna_application_config") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.([]*ves_io_schema.ObjectRefType) + if !ok { + return fmt.Errorf("Repeated validation expected []*ves_io_schema.ObjectRefType, got %T", val) + } + l := []string{} + for _, elem := range elems { + strVal, err := codec.ToJSON(elem, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrapf(err, "Converting %v to JSON", elem) + } + l = append(l, strVal) + } + if err := repValFn(ctx, l, opts...); err != nil { + return errors.Wrap(err, "repeated ztna_application_config") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items ztna_application_config") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidateZtnaProxyConfiguration) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ZtnaProxyConfiguration) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ZtnaProxyConfiguration got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ztna_application_config"]; exists { + vOpts := append(opts, db.WithValidateField("ztna_application_config")) + if err := fv(ctx, m.GetZtnaApplicationConfig(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["ztna_policy_config"]; exists { + vOpts := append(opts, db.WithValidateField("ztna_policy_config")) + if err := fv(ctx, m.GetZtnaPolicyConfig(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultZtnaProxyConfigurationValidator = func() *ValidateZtnaProxyConfiguration { + v := &ValidateZtnaProxyConfiguration{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhZtnaPolicyConfig := v.ZtnaPolicyConfigValidationRuleHandler + rulesZtnaPolicyConfig := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "50", + } + vFn, err = vrhZtnaPolicyConfig(rulesZtnaPolicyConfig) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ZtnaProxyConfiguration.ztna_policy_config: %s", err) + panic(errMsg) + } + v.FldValidators["ztna_policy_config"] = vFn + + vrhZtnaApplicationConfig := v.ZtnaApplicationConfigValidationRuleHandler + rulesZtnaApplicationConfig := map[string]string{ + "ves.io.schema.rules.repeated.max_items": "1", + } + vFn, err = vrhZtnaApplicationConfig(rulesZtnaApplicationConfig) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ZtnaProxyConfiguration.ztna_application_config: %s", err) + panic(errMsg) + } + v.FldValidators["ztna_application_config"] = vFn + + return v +}() + +func ZtnaProxyConfigurationValidator() db.Validator { + return DefaultZtnaProxyConfigurationValidator +} + // create setters in CreateSpecType from GlobalSpecType for oneof fields func (r *CreateSpecType) SetAuthenticationChoiceToGlobalSpecType(o *GlobalSpecType) error { switch of := r.AuthenticationChoice.(type) { @@ -13582,6 +14191,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.Domains = f.GetDomains() m.DynamicReverseProxy = f.GetDynamicReverseProxy() m.HeaderTransformationType = f.GetHeaderTransformationType() + m.HttpProtocolOptions = f.GetHttpProtocolOptions() m.IdleTimeout = f.GetIdleTimeout() m.MaxRequestHeaderSize = f.GetMaxRequestHeaderSize() m.GetPathNormalizeChoiceFromGlobalSpecType(f) @@ -13601,6 +14211,7 @@ func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool m.GetTlsCertificatesChoiceFromGlobalSpecType(f) m.UserIdentification = f.GetUserIdentification() m.WafType = f.GetWafType() + m.ZtnaProxyConfigurations = f.GetZtnaProxyConfigurations() } func (m *CreateSpecType) FromGlobalSpecType(f *GlobalSpecType) { @@ -13638,6 +14249,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Domains = m1.Domains f.DynamicReverseProxy = m1.DynamicReverseProxy f.HeaderTransformationType = m1.HeaderTransformationType + f.HttpProtocolOptions = m1.HttpProtocolOptions f.IdleTimeout = m1.IdleTimeout f.MaxRequestHeaderSize = m1.MaxRequestHeaderSize m1.SetPathNormalizeChoiceToGlobalSpecType(f) @@ -13657,6 +14269,7 @@ func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetTlsCertificatesChoiceToGlobalSpecType(f) f.UserIdentification = m1.UserIdentification f.WafType = m1.WafType + f.ZtnaProxyConfigurations = m1.ZtnaProxyConfigurations } func (m *CreateSpecType) ToGlobalSpecType(f *GlobalSpecType) { @@ -13995,6 +14608,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.DynamicReverseProxy = f.GetDynamicReverseProxy() m.HeaderTransformationType = f.GetHeaderTransformationType() m.HostName = f.GetHostName() + m.HttpProtocolOptions = f.GetHttpProtocolOptions() m.IdleTimeout = f.GetIdleTimeout() m.MaxRequestHeaderSize = f.GetMaxRequestHeaderSize() m.GetPathNormalizeChoiceFromGlobalSpecType(f) @@ -14016,6 +14630,7 @@ func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { m.Type = f.GetType() m.UserIdentification = f.GetUserIdentification() m.WafType = f.GetWafType() + m.ZtnaProxyConfigurations = f.GetZtnaProxyConfigurations() } func (m *GetSpecType) FromGlobalSpecType(f *GlobalSpecType) { @@ -14059,6 +14674,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.DynamicReverseProxy = m1.DynamicReverseProxy f.HeaderTransformationType = m1.HeaderTransformationType f.HostName = m1.HostName + f.HttpProtocolOptions = m1.HttpProtocolOptions f.IdleTimeout = m1.IdleTimeout f.MaxRequestHeaderSize = m1.MaxRequestHeaderSize m1.SetPathNormalizeChoiceToGlobalSpecType(f) @@ -14080,6 +14696,7 @@ func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { f.Type = m1.Type f.UserIdentification = m1.UserIdentification f.WafType = m1.WafType + f.ZtnaProxyConfigurations = m1.ZtnaProxyConfigurations } func (m *GetSpecType) ToGlobalSpecType(f *GlobalSpecType) { @@ -14377,6 +14994,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.Domains = f.GetDomains() m.DynamicReverseProxy = f.GetDynamicReverseProxy() m.HeaderTransformationType = f.GetHeaderTransformationType() + m.HttpProtocolOptions = f.GetHttpProtocolOptions() m.IdleTimeout = f.GetIdleTimeout() m.MaxRequestHeaderSize = f.GetMaxRequestHeaderSize() m.GetPathNormalizeChoiceFromGlobalSpecType(f) @@ -14396,6 +15014,7 @@ func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy boo m.GetTlsCertificatesChoiceFromGlobalSpecType(f) m.UserIdentification = f.GetUserIdentification() m.WafType = f.GetWafType() + m.ZtnaProxyConfigurations = f.GetZtnaProxyConfigurations() } func (m *ReplaceSpecType) FromGlobalSpecType(f *GlobalSpecType) { @@ -14433,6 +15052,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) f.Domains = m1.Domains f.DynamicReverseProxy = m1.DynamicReverseProxy f.HeaderTransformationType = m1.HeaderTransformationType + f.HttpProtocolOptions = m1.HttpProtocolOptions f.IdleTimeout = m1.IdleTimeout f.MaxRequestHeaderSize = m1.MaxRequestHeaderSize m1.SetPathNormalizeChoiceToGlobalSpecType(f) @@ -14452,6 +15072,7 @@ func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) m1.SetTlsCertificatesChoiceToGlobalSpecType(f) f.UserIdentification = m1.UserIdentification f.WafType = m1.WafType + f.ZtnaProxyConfigurations = m1.ZtnaProxyConfigurations } func (m *ReplaceSpecType) ToGlobalSpecType(f *GlobalSpecType) { diff --git a/pbgo/extschema/schema/virtual_host_dns_info/crudapi/api.vesapi.go b/pbgo/extschema/schema/virtual_host_dns_info/crudapi/api.vesapi.go index 514fe381c..2d357622a 100644 --- a/pbgo/extschema/schema/virtual_host_dns_info/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/virtual_host_dns_info/crudapi/api.vesapi.go @@ -2922,10 +2922,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_k8s/crudapi/api.vesapi.go b/pbgo/extschema/schema/virtual_k8s/crudapi/api.vesapi.go index 5dd397a72..8bd80675d 100644 --- a/pbgo/extschema/schema/virtual_k8s/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/virtual_k8s/crudapi/api.vesapi.go @@ -3049,10 +3049,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_k8s/object.pb.go b/pbgo/extschema/schema/virtual_k8s/object.pb.go index 1caea03b1..27f2337a5 100644 --- a/pbgo/extschema/schema/virtual_k8s/object.pb.go +++ b/pbgo/extschema/schema/virtual_k8s/object.pb.go @@ -234,44 +234,45 @@ func init() { } var fileDescriptor_41b8dca4ce14c18e = []byte{ - // 584 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0x41, 0x6b, 0x13, 0x41, - 0x14, 0xc7, 0x33, 0x49, 0x49, 0xcb, 0xa4, 0xd4, 0xb2, 0x5e, 0xd2, 0xaa, 0x43, 0x89, 0x28, 0x15, - 0xdc, 0x5d, 0xa9, 0x88, 0xb6, 0x8a, 0x87, 0x56, 0xe8, 0xa5, 0xb5, 0x90, 0x7a, 0xf2, 0x12, 0x66, - 0x27, 0x2f, 0xdb, 0xb1, 0xbb, 0x99, 0x61, 0x66, 0x76, 0x6d, 0x0f, 0x82, 0x07, 0xaf, 0x82, 0x1f, - 0x43, 0xc4, 0xbb, 0x57, 0xeb, 0xc9, 0x63, 0xe9, 0xa9, 0x47, 0xbb, 0xb9, 0x08, 0x5e, 0xfa, 0x11, - 0xa4, 0xb3, 0xdd, 0x92, 0xc6, 0x55, 0x24, 0x97, 0xf0, 0x86, 0xf7, 0xff, 0xff, 0xf2, 0xde, 0xbe, - 0xf7, 0xf0, 0xed, 0x14, 0xb4, 0xc7, 0x85, 0xaf, 0xd9, 0x0e, 0xc4, 0xd4, 0x4f, 0xb9, 0x32, 0x09, - 0x8d, 0x3a, 0xbb, 0x8f, 0xb4, 0x2f, 0x82, 0x57, 0xc0, 0x8c, 0x27, 0x95, 0x30, 0xc2, 0x99, 0xcb, - 0x75, 0x5e, 0xae, 0xf3, 0x86, 0x74, 0xf3, 0x6e, 0xc8, 0xcd, 0x4e, 0x12, 0x78, 0x4c, 0xc4, 0x7e, - 0x28, 0x42, 0xe1, 0x5b, 0x47, 0x90, 0xf4, 0xec, 0xcb, 0x3e, 0x6c, 0x94, 0x93, 0xe6, 0xaf, 0x5d, - 0xfe, 0x47, 0x21, 0x0d, 0x17, 0x7d, 0x7d, 0x9e, 0x9c, 0xbb, 0x9c, 0x34, 0xfb, 0x12, 0x8a, 0x54, - 0x6b, 0xa4, 0x52, 0xd0, 0xd0, 0x4f, 0x47, 0xec, 0xb7, 0xfe, 0xde, 0xcd, 0x10, 0xaa, 0xf5, 0x6e, - 0x02, 0xd7, 0xb7, 0x6c, 0x77, 0xce, 0x32, 0x9e, 0x8a, 0xc1, 0xd0, 0x2e, 0x35, 0xb4, 0x89, 0x16, - 0xd0, 0x62, 0x63, 0xe9, 0x86, 0x77, 0xb9, 0xd5, 0x5c, 0xb8, 0x09, 0x86, 0xbe, 0xd8, 0x97, 0xd0, - 0xbe, 0x90, 0x3b, 0x1b, 0xf8, 0x8a, 0xde, 0xd7, 0x06, 0xe2, 0xce, 0x05, 0xa1, 0x6a, 0x09, 0x37, - 0x47, 0x08, 0xdb, 0x56, 0x35, 0xc2, 0x99, 0xc9, 0xbd, 0x9b, 0x05, 0xed, 0x21, 0x9e, 0xd0, 0x12, - 0x58, 0xb3, 0x56, 0x8a, 0x18, 0xea, 0xc4, 0xdb, 0x96, 0xc0, 0x2c, 0xc2, 0x1a, 0x56, 0xbe, 0x54, - 0xbf, 0x1d, 0x34, 0xab, 0xb3, 0xe8, 0xe8, 0xa0, 0xf9, 0xb9, 0x8a, 0x97, 0x71, 0x6d, 0x1d, 0x8c, - 0xb3, 0xd4, 0x7b, 0xb0, 0xc7, 0x5c, 0x2a, 0xa5, 0x36, 0x94, 0xed, 0xba, 0x01, 0xd5, 0x9c, 0xb9, - 0xb1, 0xe8, 0x73, 0x23, 0xd4, 0xdd, 0x85, 0x14, 0xb4, 0xcb, 0x85, 0xcb, 0x29, 0xd5, 0x2e, 0x3b, - 0xfb, 0x51, 0x40, 0xbb, 0xf8, 0x31, 0x9e, 0x6c, 0x83, 0x8c, 0x28, 0x03, 0xe7, 0x5e, 0x99, 0x3d, - 0xd1, 0x50, 0xe6, 0x7d, 0xad, 0xb8, 0x01, 0xbc, 0x82, 0xeb, 0x6b, 0x0a, 0xa8, 0x19, 0xd3, 0xfb, - 0x0c, 0x22, 0x18, 0xd3, 0x3b, 0xb1, 0xc1, 0xf5, 0x58, 0x0d, 0xb7, 0x9e, 0xe3, 0xa9, 0xe2, 0x5b, - 0x3a, 0xab, 0x78, 0x32, 0x64, 0x1d, 0x3b, 0x81, 0x7c, 0x88, 0x77, 0xfe, 0x31, 0x81, 0xf5, 0x48, - 0x04, 0x34, 0xba, 0x98, 0x43, 0x3d, 0x64, 0x67, 0x71, 0xeb, 0x17, 0xc2, 0xd3, 0xdb, 0x86, 0x9a, - 0x44, 0xff, 0xf7, 0x72, 0xe5, 0xf2, 0x92, 0xe5, 0xda, 0xc4, 0x8d, 0xfc, 0xfe, 0x3a, 0x0a, 0x7a, - 0xba, 0x59, 0x5d, 0xa8, 0x2d, 0x36, 0x96, 0xae, 0x97, 0xae, 0x66, 0x1b, 0x7a, 0x67, 0xe6, 0xd5, - 0x99, 0x4f, 0x6f, 0x1a, 0x43, 0x55, 0xb6, 0xb1, 0x28, 0xd2, 0xda, 0x79, 0x82, 0x31, 0x13, 0xfd, - 0x2e, 0xb7, 0xc7, 0xd2, 0xac, 0x95, 0xd2, 0xd6, 0x0a, 0x81, 0x2d, 0x65, 0x48, 0xbf, 0x72, 0xf5, - 0xe8, 0xe9, 0x2c, 0x9e, 0xc1, 0xd3, 0x45, 0x75, 0x5e, 0xc2, 0xbb, 0xab, 0xef, 0xd1, 0xe1, 0x09, - 0xa9, 0x1c, 0x9f, 0x90, 0xca, 0xe9, 0x09, 0x41, 0x6f, 0x33, 0x82, 0x3e, 0x66, 0x04, 0x7d, 0xcf, - 0x08, 0x3a, 0xcc, 0x08, 0x3a, 0xce, 0x08, 0xfa, 0x91, 0x11, 0xf4, 0x33, 0x23, 0x95, 0xd3, 0x8c, - 0xa0, 0x0f, 0x03, 0x52, 0xf9, 0x3a, 0x20, 0xe8, 0x70, 0x40, 0x2a, 0xc7, 0x03, 0x52, 0x79, 0xb9, - 0x15, 0x0a, 0xb9, 0x1b, 0x7a, 0xa9, 0x88, 0x0c, 0x28, 0x45, 0xbd, 0x44, 0xfb, 0x36, 0xe8, 0x09, - 0x15, 0xbb, 0x52, 0x89, 0x94, 0x77, 0x41, 0xb9, 0x45, 0xda, 0x97, 0x41, 0x28, 0x7c, 0xd8, 0x33, - 0xe7, 0x97, 0xfd, 0xe7, 0x81, 0x07, 0x75, 0x7b, 0xdb, 0xf7, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, - 0x63, 0x30, 0x48, 0xcb, 0xd2, 0x04, 0x00, 0x00, + // 604 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0x41, 0x6b, 0x13, 0x41, + 0x14, 0xc7, 0x33, 0x4d, 0x4d, 0xcb, 0xa4, 0xd4, 0xb2, 0x5e, 0xd2, 0xaa, 0x43, 0x89, 0x28, 0x15, + 0xdc, 0x5d, 0xa8, 0x88, 0x5a, 0xc4, 0x43, 0x2b, 0xf4, 0xd2, 0x58, 0x48, 0x05, 0xb5, 0x97, 0x30, + 0x3b, 0xfb, 0xb2, 0x1d, 0x9b, 0x64, 0x86, 0x99, 0xd9, 0xb5, 0x3d, 0x08, 0x7e, 0x01, 0xc1, 0xbb, + 0x5f, 0x40, 0xfc, 0x14, 0x56, 0x2f, 0x9e, 0xa4, 0xf4, 0xd4, 0xa3, 0xdd, 0x5c, 0x04, 0x2f, 0xfd, + 0x08, 0xd2, 0xd9, 0x6e, 0x4c, 0xd2, 0x54, 0x3c, 0xd8, 0xcb, 0xf2, 0x86, 0xff, 0xff, 0xfd, 0xf6, + 0xbd, 0xdd, 0x37, 0x0f, 0xdf, 0x4a, 0x40, 0x7b, 0x5c, 0xf8, 0x9a, 0x6d, 0x41, 0x9b, 0xfa, 0x09, + 0x57, 0x26, 0xa6, 0xad, 0xc6, 0xf6, 0x03, 0xed, 0x8b, 0xe0, 0x15, 0x30, 0xe3, 0x49, 0x25, 0x8c, + 0x70, 0x66, 0x33, 0x9f, 0x97, 0xf9, 0xbc, 0x3e, 0xdf, 0x9c, 0x1b, 0x71, 0xb3, 0x15, 0x07, 0x1e, + 0x13, 0x6d, 0x3f, 0x12, 0x91, 0xf0, 0x6d, 0x46, 0x10, 0x37, 0xed, 0xc9, 0x1e, 0x6c, 0x94, 0x91, + 0xe6, 0xae, 0x0e, 0xbe, 0x51, 0x48, 0xc3, 0x45, 0x47, 0x9f, 0x8a, 0xb3, 0x83, 0xa2, 0xd9, 0x95, + 0x90, 0x4b, 0xd5, 0xa1, 0x4a, 0x41, 0x43, 0x27, 0x19, 0x4a, 0xbf, 0x79, 0x7e, 0x37, 0x7d, 0xa8, + 0xea, 0x87, 0x4b, 0xb8, 0xb4, 0x6e, 0xbb, 0x73, 0x1e, 0xe2, 0xc9, 0x36, 0x18, 0x1a, 0x52, 0x43, + 0x2b, 0x68, 0x1e, 0x2d, 0x94, 0x17, 0xaf, 0x7b, 0x83, 0xad, 0x66, 0xc6, 0x1a, 0x18, 0xfa, 0x6c, + 0x57, 0x42, 0xbd, 0x67, 0x77, 0xd6, 0xf0, 0x65, 0xbd, 0xab, 0x0d, 0xb4, 0x1b, 0x3d, 0xc2, 0x98, + 0x25, 0xdc, 0x18, 0x22, 0x6c, 0x58, 0xd7, 0x10, 0x67, 0x3a, 0xcb, 0xad, 0xe5, 0xb4, 0xfb, 0x78, + 0x5c, 0x4b, 0x60, 0x95, 0xe2, 0x48, 0x44, 0x5f, 0x27, 0xde, 0x86, 0x04, 0x66, 0x11, 0x36, 0x61, + 0xe9, 0x7b, 0xf1, 0xcb, 0x5e, 0x65, 0x6c, 0x06, 0x1d, 0xec, 0x55, 0xbe, 0x16, 0xf1, 0x4b, 0x5c, + 0x5c, 0x05, 0xe3, 0xd4, 0x9b, 0xf7, 0x76, 0x98, 0x4b, 0xa5, 0xd4, 0x86, 0xb2, 0x6d, 0x37, 0xa0, + 0x9a, 0x33, 0xb7, 0x2d, 0x3a, 0xdc, 0x08, 0x75, 0x67, 0x7e, 0x50, 0xd4, 0x86, 0x76, 0x42, 0xaa, + 0xc2, 0x3f, 0x7a, 0x02, 0xda, 0xe5, 0xc2, 0xe5, 0x94, 0x6a, 0x97, 0x9d, 0x3c, 0x14, 0xd0, 0x10, + 0xbf, 0xc0, 0x13, 0x75, 0x90, 0x2d, 0xca, 0xc0, 0xa9, 0x8d, 0xc2, 0xc7, 0x1a, 0xce, 0x67, 0x67, + 0xe2, 0x19, 0xf0, 0x6b, 0xc5, 0x0d, 0xe0, 0xe7, 0xb8, 0xb4, 0xa2, 0x80, 0x9a, 0x8b, 0x00, 0x3f, + 0x81, 0x16, 0xfc, 0x7f, 0xf0, 0x26, 0x1e, 0x5f, 0xe3, 0xfa, 0x42, 0xbe, 0x73, 0xf5, 0x29, 0x9e, + 0xcc, 0x7f, 0xb1, 0xb3, 0x8c, 0x27, 0x22, 0xd6, 0xb0, 0x83, 0x91, 0xcd, 0xd6, 0xed, 0xbf, 0x0c, + 0xc6, 0x6a, 0x4b, 0x04, 0xb4, 0xd5, 0x1b, 0x8f, 0x52, 0xc4, 0x4e, 0xe2, 0xea, 0x2f, 0x84, 0xa7, + 0x36, 0x0c, 0x35, 0xb1, 0xfe, 0xe7, 0x99, 0xcf, 0xec, 0x23, 0x66, 0xbe, 0x86, 0xcb, 0xd9, 0x5a, + 0x68, 0x28, 0x68, 0xea, 0xca, 0xd8, 0x7c, 0x71, 0xa1, 0xbc, 0x78, 0x6d, 0xe4, 0x8d, 0xa9, 0x43, + 0xf3, 0x24, 0x79, 0x79, 0xfa, 0xd3, 0x9b, 0x72, 0x5f, 0x95, 0x75, 0x2c, 0x72, 0x59, 0x3b, 0x8f, + 0x30, 0x66, 0xa2, 0x13, 0x72, 0x7b, 0x87, 0x2b, 0xc5, 0x91, 0xb4, 0x95, 0xdc, 0x60, 0x4b, 0xe9, + 0xf3, 0x2f, 0x5d, 0x39, 0x78, 0x3c, 0x83, 0xa7, 0xf1, 0x54, 0x5e, 0x9d, 0x17, 0xf3, 0x70, 0xf9, + 0x1d, 0xda, 0x3f, 0x22, 0x85, 0xc3, 0x23, 0x52, 0x38, 0x3e, 0x22, 0xe8, 0x6d, 0x4a, 0xd0, 0xc7, + 0x94, 0xa0, 0x6f, 0x29, 0x41, 0xfb, 0x29, 0x41, 0x87, 0x29, 0x41, 0x3f, 0x52, 0x82, 0x7e, 0xa6, + 0xa4, 0x70, 0x9c, 0x12, 0xf4, 0xbe, 0x4b, 0x0a, 0x9f, 0xbb, 0x04, 0xed, 0x77, 0x49, 0xe1, 0xb0, + 0x4b, 0x0a, 0x9b, 0xeb, 0x91, 0x90, 0xdb, 0x91, 0x97, 0x88, 0x96, 0x01, 0xa5, 0xa8, 0x17, 0x6b, + 0xdf, 0x06, 0x4d, 0xa1, 0xda, 0xae, 0x54, 0x22, 0xe1, 0x21, 0x28, 0x37, 0x97, 0x7d, 0x19, 0x44, + 0xc2, 0x87, 0x1d, 0x73, 0xba, 0x70, 0xce, 0xee, 0x9d, 0xa0, 0x64, 0x57, 0xce, 0xdd, 0xdf, 0x01, + 0x00, 0x00, 0xff, 0xff, 0x5d, 0xc4, 0xa6, 0x0f, 0x69, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/virtual_k8s/public_crudapi.pb.go b/pbgo/extschema/schema/virtual_k8s/public_crudapi.pb.go index ac9c30dca..bfebc1322 100644 --- a/pbgo/extschema/schema/virtual_k8s/public_crudapi.pb.go +++ b/pbgo/extschema/schema/virtual_k8s/public_crudapi.pb.go @@ -1096,108 +1096,109 @@ func init() { } var fileDescriptor_b862a90d75fe056d = []byte{ - // 1610 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x6f, 0x13, 0xd7, - 0x16, 0xcf, 0xb5, 0x1d, 0x63, 0x5f, 0xe7, 0x63, 0xb8, 0x0f, 0x82, 0xe3, 0xc7, 0xb3, 0xfc, 0x0c, - 0x84, 0x10, 0x9e, 0xc7, 0xbc, 0x3c, 0x9e, 0x80, 0x08, 0xf1, 0x9e, 0x93, 0xd8, 0x51, 0x20, 0xc4, - 0xe8, 0xda, 0xa0, 0xf7, 0xaa, 0xaa, 0xa3, 0xf1, 0xf8, 0xda, 0x4c, 0x63, 0x7b, 0xa6, 0x73, 0xaf, - 0x1d, 0xa2, 0x2a, 0x52, 0x45, 0x57, 0xdd, 0xb5, 0xea, 0xaa, 0x55, 0x17, 0xdd, 0x54, 0xaa, 0xd4, - 0x7f, 0x00, 0x29, 0x5d, 0xb0, 0xa9, 0xa0, 0x2c, 0x2a, 0xda, 0x6e, 0xd8, 0xb5, 0x38, 0xad, 0xc4, - 0x12, 0xb1, 0xe9, 0xb6, 0x9a, 0x7b, 0x67, 0x8c, 0xed, 0xd8, 0x89, 0x13, 0xb2, 0x49, 0xee, 0xbd, - 0xe7, 0x9c, 0xdf, 0x9c, 0xdf, 0x3d, 0x1f, 0x3e, 0x33, 0x50, 0x6e, 0x10, 0x2a, 0xeb, 0x46, 0x92, - 0x6a, 0x77, 0x49, 0x55, 0x4d, 0x36, 0x74, 0x8b, 0xd5, 0xd5, 0x8a, 0xb2, 0x76, 0x99, 0x26, 0xcd, - 0x7a, 0xa1, 0xa2, 0x6b, 0x8a, 0x66, 0xd5, 0x8b, 0xaa, 0xa9, 0xcb, 0xa6, 0x65, 0x30, 0x03, 0x4d, - 0x0a, 0x7d, 0x59, 0xe8, 0xcb, 0x6d, 0xfa, 0x91, 0x44, 0x59, 0x67, 0x77, 0xeb, 0x05, 0x59, 0x33, - 0xaa, 0xc9, 0xb2, 0x51, 0x36, 0x92, 0xdc, 0xa2, 0x50, 0x2f, 0xf1, 0x1d, 0xdf, 0xf0, 0x95, 0x40, - 0x8a, 0x9c, 0x2c, 0x1b, 0x46, 0xb9, 0x42, 0x92, 0xaa, 0xa9, 0x27, 0xd5, 0x5a, 0xcd, 0x60, 0x2a, - 0xd3, 0x8d, 0x1a, 0x75, 0xa4, 0x7f, 0x75, 0xa4, 0x2d, 0x0c, 0x52, 0x35, 0xd9, 0x86, 0x23, 0x8c, - 0x74, 0x3a, 0x4d, 0x2c, 0xcb, 0xb0, 0x5a, 0x86, 0x9d, 0x32, 0xc3, 0x6c, 0x47, 0x9d, 0xec, 0x14, - 0xb2, 0x0d, 0x93, 0xb8, 0xa2, 0x78, 0xd7, 0x45, 0x10, 0x4a, 0x6a, 0x8d, 0x2e, 0xf3, 0x58, 0xf7, - 0x65, 0x91, 0x75, 0xa5, 0x53, 0x63, 0xaa, 0xff, 0x75, 0x1a, 0x85, 0x77, 0x89, 0xc6, 0x1c, 0xbd, - 0x33, 0xfd, 0xf5, 0xda, 0x9c, 0x8a, 0x7f, 0x03, 0xe0, 0xe8, 0x82, 0x45, 0x54, 0x46, 0x30, 0x79, - 0xaf, 0x4e, 0x28, 0x43, 0xff, 0x81, 0x81, 0x2a, 0x61, 0x6a, 0x51, 0x65, 0x6a, 0x18, 0xc4, 0xc0, - 0x74, 0x68, 0xf6, 0x94, 0xdc, 0x19, 0x92, 0x2c, 0x7f, 0x8e, 0xb0, 0xba, 0x49, 0x98, 0x9a, 0xdf, - 0x30, 0x09, 0x6e, 0x19, 0xa1, 0x55, 0xe8, 0xa3, 0x26, 0xd1, 0xc2, 0x1e, 0x6e, 0x7c, 0x4e, 0xee, - 0x1b, 0x4f, 0x59, 0x40, 0xe4, 0x4c, 0xa2, 0xd9, 0x10, 0xf3, 0xe3, 0x9f, 0x6f, 0x8e, 0xd8, 0x96, - 0x72, 0x59, 0x53, 0xec, 0xff, 0x98, 0xe3, 0xcc, 0x05, 0x9f, 0x5c, 0xf3, 0x8b, 0x47, 0xc6, 0xff, - 0x00, 0x70, 0xcc, 0xf5, 0x96, 0x9a, 0x46, 0x8d, 0x12, 0x74, 0x75, 0x87, 0xbb, 0xb1, 0x9e, 0xee, - 0x2e, 0x11, 0xd6, 0xc3, 0xd7, 0x2c, 0x1c, 0xa7, 0x1b, 0x94, 0x91, 0xaa, 0xd2, 0x02, 0xf1, 0x72, - 0x90, 0xa9, 0x2e, 0x90, 0x1c, 0xd7, 0xda, 0x09, 0x35, 0x26, 0xcc, 0x6f, 0xba, 0x80, 0x37, 0x3a, - 0xc8, 0x4f, 0xed, 0x42, 0x7e, 0x89, 0xb0, 0x7d, 0x30, 0xff, 0x05, 0xc0, 0x31, 0x4c, 0xcc, 0x8a, - 0xaa, 0xb5, 0x02, 0xf5, 0xdf, 0x1d, 0xcc, 0x4f, 0xf7, 0x64, 0xee, 0x98, 0xf5, 0x64, 0xdf, 0xee, - 0xec, 0xcc, 0x2e, 0xce, 0x3a, 0x18, 0x7b, 0x38, 0x8c, 0x92, 0x50, 0xb2, 0x08, 0x35, 0xea, 0x96, - 0x46, 0x94, 0x06, 0xb1, 0xa8, 0x6e, 0xd4, 0xf8, 0x7d, 0x06, 0xe7, 0x7d, 0x2f, 0xb6, 0x00, 0xc0, - 0xe3, 0xae, 0xf4, 0x8e, 0x10, 0xb6, 0x33, 0x3c, 0x0a, 0xc7, 0x5b, 0x04, 0x45, 0x6c, 0xe3, 0x9f, - 0x01, 0x08, 0x97, 0x08, 0x73, 0x09, 0x9f, 0x84, 0xc1, 0x9a, 0x5a, 0x25, 0xd4, 0x54, 0x35, 0xc2, - 0x19, 0x07, 0xf1, 0xeb, 0x03, 0x84, 0xa0, 0xcf, 0xde, 0x70, 0x32, 0x41, 0xcc, 0xd7, 0xe8, 0xff, - 0xd0, 0x7e, 0x22, 0x07, 0x53, 0x4a, 0x86, 0x55, 0x55, 0x19, 0x77, 0x67, 0x6c, 0xf6, 0xc2, 0xee, - 0x81, 0x71, 0x3d, 0xc8, 0x70, 0x9b, 0x05, 0xa3, 0x48, 0xf0, 0x98, 0xd5, 0x71, 0x16, 0xff, 0xc8, - 0x0f, 0x43, 0x6d, 0x9a, 0x68, 0x19, 0x86, 0x34, 0x9e, 0x99, 0xfc, 0x41, 0xce, 0x95, 0x4e, 0xef, - 0x99, 0xfc, 0x0e, 0x37, 0x0c, 0x85, 0xb1, 0x0d, 0x8e, 0x56, 0xe0, 0x88, 0x25, 0x6e, 0x42, 0x60, - 0x79, 0xf7, 0x2c, 0xa4, 0xce, 0xcc, 0xc0, 0x21, 0xc7, 0x9c, 0xa3, 0xf5, 0x8a, 0x89, 0x6f, 0x97, - 0x98, 0x74, 0x54, 0xd4, 0xf0, 0x61, 0x54, 0xd4, 0x91, 0x43, 0xa9, 0x28, 0xff, 0x21, 0x54, 0x14, - 0xca, 0x40, 0x3f, 0x65, 0x2a, 0xab, 0xd3, 0xf0, 0x97, 0x5f, 0x80, 0x98, 0x77, 0x3a, 0x34, 0x7b, - 0x76, 0x17, 0xc0, 0x1c, 0x57, 0x15, 0x2e, 0xce, 0x7b, 0x1f, 0x6e, 0x02, 0xec, 0x58, 0xa3, 0x65, - 0x78, 0xd4, 0x22, 0x25, 0x62, 0x59, 0x7a, 0xad, 0xac, 0x88, 0xbe, 0x4b, 0xc3, 0x01, 0x0e, 0x78, - 0xb2, 0x4f, 0x11, 0x96, 0x38, 0x3b, 0xa9, 0x65, 0x26, 0xce, 0x29, 0xba, 0x03, 0xc3, 0x45, 0x52, - 0x21, 0x8c, 0x14, 0x15, 0x21, 0x23, 0xc5, 0x16, 0x62, 0x70, 0x00, 0xc4, 0x09, 0xc7, 0x1a, 0x3b, - 0xc6, 0x2e, 0xee, 0xff, 0xe0, 0x64, 0x51, 0xa7, 0x6a, 0xa1, 0xd2, 0x0b, 0x18, 0x0e, 0x00, 0x7c, - 0xc2, 0x35, 0xef, 0x42, 0x6e, 0x2b, 0xda, 0xeb, 0xbe, 0x00, 0x90, 0x3c, 0xf1, 0xaf, 0x00, 0x0c, - 0xad, 0xe8, 0x74, 0xc0, 0x42, 0xfd, 0x3b, 0x1c, 0xa9, 0xa8, 0x05, 0x52, 0x51, 0x4a, 0x7a, 0x85, - 0x11, 0xcb, 0x29, 0xd8, 0x10, 0x3f, 0xcb, 0xf0, 0x23, 0x74, 0x0a, 0x8e, 0x5a, 0xc4, 0x34, 0x2c, - 0xa6, 0x94, 0x74, 0x52, 0x29, 0xd2, 0xb0, 0x37, 0xe6, 0x9d, 0x0e, 0xe2, 0x11, 0x71, 0x98, 0xe1, - 0x67, 0xe8, 0x02, 0x3c, 0xe6, 0x28, 0x89, 0xa0, 0xb8, 0xba, 0x3e, 0xae, 0x8b, 0x84, 0x4c, 0x84, - 0x50, 0x58, 0xc4, 0x1f, 0xf8, 0xa1, 0x24, 0xfc, 0x14, 0x45, 0xbb, 0xcc, 0x48, 0x15, 0x4d, 0x40, - 0x3f, 0x23, 0x35, 0xb5, 0xc6, 0x78, 0x86, 0x05, 0xb1, 0xb3, 0x3b, 0x40, 0xb7, 0x91, 0xa0, 0xb7, - 0xae, 0x17, 0x45, 0xc3, 0xc3, 0xf6, 0x12, 0xc5, 0x60, 0xa8, 0x48, 0xa8, 0x66, 0xe9, 0xfc, 0x27, - 0x3c, 0x1c, 0x12, 0x4c, 0xdb, 0x8e, 0x50, 0x04, 0x06, 0xdc, 0x6b, 0x0e, 0x8f, 0xc4, 0xc0, 0x74, - 0x00, 0xb7, 0xf6, 0x28, 0x0b, 0xfd, 0xfc, 0x52, 0x04, 0xa5, 0xd0, 0xec, 0xa5, 0x5d, 0x52, 0xb5, - 0x9b, 0x96, 0xbc, 0xc2, 0x2d, 0xd3, 0x35, 0x66, 0x6d, 0x60, 0x07, 0x06, 0xbd, 0x03, 0x43, 0x6d, - 0x73, 0x90, 0x93, 0x04, 0x57, 0xf7, 0x83, 0x9a, 0x7a, 0x6d, 0x2e, 0xa0, 0xdb, 0x01, 0xd1, 0x15, - 0x08, 0x8d, 0xf5, 0x1a, 0xb1, 0x14, 0x7b, 0x6e, 0x09, 0x07, 0x79, 0xc1, 0x46, 0xba, 0xe0, 0xef, - 0xe8, 0x64, 0xdd, 0xcd, 0xb0, 0x20, 0xd7, 0xb6, 0x4f, 0x3a, 0x9a, 0xce, 0xe8, 0x61, 0x34, 0x9d, - 0xb1, 0x37, 0x6a, 0x3a, 0x29, 0x18, 0x28, 0x13, 0xc6, 0x3b, 0x47, 0x9f, 0xf6, 0xd5, 0xa7, 0xf1, - 0xe0, 0x23, 0x65, 0xb1, 0x41, 0x37, 0x20, 0x74, 0xf2, 0x92, 0x12, 0xe6, 0xf4, 0x86, 0xfd, 0x35, - 0x9b, 0xa0, 0xb0, 0xcf, 0x11, 0x16, 0xb9, 0x02, 0x43, 0x6d, 0x01, 0xb5, 0x33, 0x6d, 0x8d, 0x6c, - 0x38, 0x59, 0x69, 0x2f, 0xd1, 0x31, 0x38, 0xdc, 0x50, 0x2b, 0x75, 0x37, 0x21, 0xc5, 0x66, 0xce, - 0x73, 0x19, 0x44, 0xae, 0x41, 0xa9, 0x3b, 0x6a, 0xfb, 0xb1, 0xbf, 0xee, 0x0b, 0x0c, 0x4b, 0xfe, - 0xf8, 0x87, 0x00, 0x8e, 0xb4, 0x67, 0x03, 0x4a, 0xc1, 0x61, 0x9d, 0x91, 0x2a, 0x0d, 0x8b, 0x36, - 0x7a, 0x7e, 0x1f, 0x59, 0x84, 0x85, 0x25, 0xba, 0x00, 0xfd, 0x62, 0xb0, 0x0e, 0x7b, 0x38, 0x46, - 0xb8, 0x0b, 0x23, 0x6d, 0x0b, 0xf9, 0xa5, 0x3a, 0x7a, 0xf1, 0x35, 0x38, 0xba, 0xc8, 0xbb, 0xdd, - 0xc1, 0x47, 0x82, 0x69, 0x28, 0x95, 0x54, 0xbd, 0xa2, 0xe8, 0xa5, 0x56, 0x57, 0xe4, 0x15, 0x1b, - 0xc0, 0x63, 0xf6, 0xf9, 0x72, 0xc9, 0xed, 0x76, 0x33, 0xaf, 0x00, 0x3c, 0xde, 0x73, 0x16, 0x40, - 0x11, 0x38, 0xb1, 0x94, 0xce, 0x2b, 0x38, 0x77, 0x4b, 0xc9, 0x64, 0xf1, 0xcd, 0x54, 0x5e, 0x59, - 0x4c, 0x67, 0x52, 0xb7, 0x57, 0xf2, 0xd2, 0x10, 0xfa, 0x1b, 0x9c, 0xec, 0x92, 0x65, 0xb2, 0x58, - 0x59, 0xc0, 0xe9, 0x54, 0x3e, 0x2d, 0x01, 0x14, 0x85, 0x91, 0x1e, 0x62, 0x9c, 0xbe, 0xb5, 0x92, - 0x5a, 0x48, 0x4b, 0x1e, 0x34, 0x09, 0x8f, 0x77, 0xc9, 0x73, 0xf9, 0x54, 0xfe, 0x76, 0x4e, 0xf2, - 0xa2, 0x13, 0xf0, 0x2f, 0x5d, 0x22, 0x9c, 0x4e, 0x2d, 0x4a, 0x3e, 0x74, 0x1a, 0xc6, 0x76, 0x08, - 0x32, 0x69, 0x8c, 0x97, 0x57, 0x97, 0x94, 0xec, 0xfc, 0xf5, 0xf4, 0x42, 0x3e, 0x27, 0x0d, 0xf7, - 0xd0, 0x9a, 0xc7, 0xd9, 0x1b, 0xe9, 0x55, 0xa1, 0x9c, 0x5e, 0x5d, 0x48, 0xe7, 0x24, 0xff, 0xec, - 0xab, 0x00, 0xf4, 0xa6, 0x6e, 0x2d, 0xa3, 0x1f, 0x01, 0xf4, 0x8b, 0x09, 0x05, 0x0d, 0x3c, 0xc4, - 0x44, 0xce, 0x0d, 0xa0, 0xe9, 0x8c, 0x76, 0x56, 0xf3, 0x51, 0x38, 0x59, 0xfa, 0xf7, 0x3d, 0x2d, - 0xa1, 0x9a, 0x26, 0x65, 0xaa, 0xb6, 0x96, 0x28, 0xa8, 0x54, 0xd7, 0x12, 0x75, 0x4a, 0xac, 0x7f, - 0x34, 0x08, 0x4d, 0xe8, 0x46, 0x42, 0x57, 0x55, 0x9a, 0xd0, 0xec, 0x3f, 0xeb, 0x96, 0xce, 0xc8, - 0xfd, 0x9f, 0x7f, 0xfb, 0xd4, 0x73, 0x25, 0x7e, 0xd1, 0x79, 0x6f, 0x4c, 0xb6, 0x02, 0x4d, 0x93, - 0xef, 0xbb, 0x75, 0x2f, 0xb7, 0x0e, 0x37, 0xdb, 0xdf, 0x79, 0xe8, 0x1c, 0x98, 0x41, 0xdf, 0x03, - 0xe8, 0x5d, 0x22, 0x0c, 0x9d, 0xd9, 0x6b, 0xf8, 0x13, 0x6c, 0xa6, 0x06, 0x9b, 0x11, 0xe3, 0xf4, - 0xf1, 0x03, 0x0f, 0x68, 0x3e, 0x0a, 0xff, 0xb3, 0x17, 0x9d, 0xaa, 0x51, 0xd3, 0x99, 0xd1, 0x83, - 0x91, 0x45, 0xd4, 0x22, 0x27, 0x74, 0x11, 0xcd, 0xf6, 0x22, 0xd4, 0x87, 0x87, 0x10, 0x6c, 0xa2, - 0xef, 0x00, 0xf4, 0xd9, 0x75, 0x85, 0xa6, 0xf6, 0x2c, 0x3c, 0xc1, 0xe6, 0xec, 0x80, 0x05, 0x1a, - 0xaf, 0xbc, 0x19, 0x9d, 0x04, 0x3a, 0xbf, 0x0f, 0x3a, 0xe8, 0x77, 0x00, 0x8f, 0x38, 0xd3, 0x2b, - 0x1a, 0x7c, 0xc2, 0x8d, 0xcc, 0x0c, 0xa2, 0xea, 0x10, 0xba, 0x0f, 0x0e, 0x9a, 0x6b, 0xcb, 0x91, - 0xc5, 0x83, 0xe4, 0x5a, 0x97, 0xc6, 0xa6, 0x9d, 0x7b, 0xdf, 0x02, 0xe8, 0x17, 0xad, 0x6b, 0xd7, - 0x7a, 0xea, 0xe8, 0x6e, 0x91, 0x09, 0x59, 0x7c, 0xa3, 0x90, 0xdd, 0x6f, 0x14, 0x72, 0xba, 0x6a, - 0xb2, 0x8d, 0xb8, 0x79, 0x50, 0x42, 0x97, 0x66, 0x0e, 0x90, 0x6b, 0x73, 0x60, 0x26, 0xf2, 0xf6, - 0xc3, 0x2d, 0xe0, 0xf9, 0x69, 0x0b, 0xc4, 0xfa, 0xbb, 0x2e, 0x7e, 0xb9, 0x9e, 0x6d, 0x01, 0xd0, - 0xdc, 0x02, 0x53, 0x83, 0xfd, 0xce, 0xdd, 0xff, 0x21, 0xec, 0x91, 0xc0, 0xfc, 0x27, 0xe0, 0xc9, - 0xb5, 0xe1, 0x05, 0x7c, 0x7b, 0x71, 0xe5, 0xe9, 0xf3, 0xe8, 0xd0, 0xb3, 0xe7, 0xd1, 0xa1, 0x97, - 0xcf, 0xa3, 0xe0, 0x83, 0x66, 0x14, 0x7c, 0xdd, 0x8c, 0x82, 0xc7, 0xcd, 0x28, 0x78, 0xda, 0x8c, - 0x82, 0x5f, 0x9b, 0x51, 0xf0, 0xa2, 0x19, 0x1d, 0x7a, 0xd9, 0x8c, 0x82, 0x8f, 0xb7, 0xa3, 0x43, - 0x0f, 0xb7, 0xa3, 0xe0, 0xe9, 0x76, 0x74, 0xe8, 0xd9, 0x76, 0x74, 0xe8, 0xad, 0x6c, 0xd9, 0x30, - 0xd7, 0xca, 0x72, 0xc3, 0xb0, 0xe7, 0x47, 0x4b, 0x95, 0xeb, 0x34, 0xc9, 0x17, 0xf6, 0x0b, 0x54, - 0xc2, 0xb4, 0x8c, 0x86, 0x5e, 0x24, 0x56, 0xc2, 0x15, 0x27, 0xcd, 0x42, 0xd9, 0x48, 0x92, 0x7b, - 0xcc, 0xf9, 0x3a, 0xb2, 0xf3, 0x23, 0x49, 0xc1, 0xcf, 0xef, 0xfc, 0x5f, 0x7f, 0x06, 0x00, 0x00, - 0xff, 0xff, 0x32, 0xd2, 0x8c, 0xae, 0xbf, 0x12, 0x00, 0x00, + // 1629 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x6f, 0xdb, 0x46, + 0x16, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xc1, 0xcc, 0x26, 0x8e, 0xac, 0xcd, 0x0a, 0x5a, 0x25, + 0x71, 0x1c, 0x67, 0x45, 0x05, 0xde, 0x2c, 0x92, 0x18, 0x41, 0x76, 0x65, 0x9b, 0x32, 0x1c, 0x3b, + 0x96, 0x41, 0x29, 0xc1, 0xee, 0xa2, 0x28, 0x41, 0x51, 0x23, 0x85, 0xb5, 0x24, 0xb2, 0x9c, 0x91, + 0x1c, 0xa3, 0x30, 0xd0, 0xa6, 0x97, 0x16, 0x2d, 0x8a, 0x7e, 0x9c, 0x5a, 0x14, 0x45, 0x2f, 0x05, + 0x0a, 0xf4, 0x1f, 0x08, 0xe0, 0x4b, 0x6e, 0x0d, 0x72, 0x28, 0x82, 0xf6, 0x92, 0x9e, 0xda, 0xc8, + 0x2d, 0x90, 0x5e, 0x8a, 0xa0, 0x97, 0x5e, 0x0b, 0xce, 0x90, 0x8a, 0x24, 0x4b, 0xb6, 0xec, 0x3a, + 0x17, 0x7b, 0x66, 0xde, 0x7b, 0x3f, 0xbe, 0xdf, 0xbc, 0x0f, 0x3d, 0x12, 0x8a, 0x75, 0x4c, 0x44, + 0xdd, 0x48, 0x12, 0xed, 0x36, 0xae, 0xa8, 0xc9, 0xba, 0x6e, 0xd1, 0x9a, 0x5a, 0x56, 0xd6, 0x2e, + 0x93, 0xa4, 0x59, 0xcb, 0x97, 0x75, 0x4d, 0xd1, 0xac, 0x5a, 0x41, 0x35, 0x75, 0xd1, 0xb4, 0x0c, + 0x6a, 0xa0, 0x71, 0xae, 0x2f, 0x72, 0x7d, 0xb1, 0x45, 0x3f, 0x92, 0x28, 0xe9, 0xf4, 0x76, 0x2d, + 0x2f, 0x6a, 0x46, 0x25, 0x59, 0x32, 0x4a, 0x46, 0x92, 0x59, 0xe4, 0x6b, 0x45, 0xb6, 0x63, 0x1b, + 0xb6, 0xe2, 0x48, 0x91, 0x93, 0x25, 0xc3, 0x28, 0x95, 0x71, 0x52, 0x35, 0xf5, 0xa4, 0x5a, 0xad, + 0x1a, 0x54, 0xa5, 0xba, 0x51, 0x25, 0x8e, 0xf4, 0xaf, 0x8e, 0xb4, 0x89, 0x81, 0x2b, 0x26, 0xdd, + 0x70, 0x84, 0x91, 0x76, 0xa7, 0xb1, 0x65, 0x19, 0x56, 0xd3, 0xb0, 0x5d, 0x66, 0x98, 0xad, 0xa8, + 0xe3, 0xed, 0x42, 0xba, 0x61, 0x62, 0x57, 0x14, 0xef, 0xb8, 0x08, 0x4c, 0x70, 0xb5, 0xde, 0x61, + 0x1e, 0xeb, 0xbc, 0x2c, 0xbc, 0xae, 0xb4, 0x6b, 0x4c, 0xf4, 0xbe, 0x4e, 0x23, 0xff, 0x0a, 0xd6, + 0xa8, 0xa3, 0x77, 0xa6, 0xb7, 0x5e, 0x8b, 0x53, 0xf1, 0xaf, 0x00, 0x1c, 0x9e, 0xb3, 0xb0, 0x4a, + 0xb1, 0x8c, 0x5f, 0xad, 0x61, 0x42, 0xd1, 0xbf, 0x61, 0xa0, 0x82, 0xa9, 0x5a, 0x50, 0xa9, 0x1a, + 0x06, 0x31, 0x30, 0x19, 0x9a, 0x3e, 0x25, 0xb6, 0x87, 0x24, 0xc3, 0x9e, 0xc3, 0xad, 0x6e, 0x60, + 0xaa, 0xe6, 0x36, 0x4c, 0x2c, 0x37, 0x8d, 0xd0, 0x0a, 0xf4, 0x11, 0x13, 0x6b, 0x61, 0x0f, 0x33, + 0x3e, 0x27, 0xf6, 0x8c, 0xa7, 0xc8, 0x21, 0xb2, 0x26, 0xd6, 0x6c, 0x88, 0xd9, 0xd1, 0x4f, 0x36, + 0x87, 0x6c, 0x4b, 0xb1, 0xa4, 0x29, 0xf6, 0x7f, 0x99, 0xe1, 0xcc, 0x04, 0x1f, 0x5e, 0xf3, 0xf3, + 0x47, 0xc6, 0x7f, 0x07, 0x70, 0xc4, 0xf5, 0x96, 0x98, 0x46, 0x95, 0x60, 0x74, 0x75, 0x87, 0xbb, + 0xb1, 0xae, 0xee, 0x2e, 0x60, 0xda, 0xc5, 0xd7, 0x0c, 0x1c, 0x25, 0x1b, 0x84, 0xe2, 0x8a, 0xd2, + 0x04, 0xf1, 0x32, 0x90, 0x89, 0x0e, 0x90, 0x2c, 0xd3, 0xda, 0x09, 0x35, 0xc2, 0xcd, 0x6f, 0xb8, + 0x80, 0x4b, 0x6d, 0xe4, 0x27, 0x76, 0x21, 0xbf, 0x80, 0xe9, 0x3e, 0x98, 0xff, 0x00, 0xe0, 0x88, + 0x8c, 0xcd, 0xb2, 0xaa, 0x35, 0x03, 0xf5, 0x9f, 0x1d, 0xcc, 0x4f, 0x77, 0x65, 0xee, 0x98, 0x75, + 0x65, 0xdf, 0xea, 0xec, 0xd4, 0x2e, 0xce, 0x3a, 0x18, 0x7b, 0x38, 0x8c, 0x92, 0x50, 0xb0, 0x30, + 0x31, 0x6a, 0x96, 0x86, 0x95, 0x3a, 0xb6, 0x88, 0x6e, 0x54, 0xd9, 0x7d, 0x06, 0x67, 0x7d, 0x4f, + 0xb7, 0x00, 0x90, 0x47, 0x5d, 0xe9, 0x2d, 0x2e, 0x6c, 0x65, 0x78, 0x14, 0x8e, 0x36, 0x09, 0xf2, + 0xd8, 0xc6, 0x3f, 0x06, 0x10, 0x2e, 0x60, 0xea, 0x12, 0x3e, 0x09, 0x83, 0x55, 0xb5, 0x82, 0x89, + 0xa9, 0x6a, 0x98, 0x31, 0x0e, 0xca, 0xcf, 0x0f, 0x10, 0x82, 0x3e, 0x7b, 0xc3, 0xc8, 0x04, 0x65, + 0xb6, 0x46, 0xff, 0x83, 0xf6, 0x13, 0x19, 0x98, 0x52, 0x34, 0xac, 0x8a, 0x4a, 0x99, 0x3b, 0x23, + 0xd3, 0x17, 0x76, 0x0f, 0x8c, 0xeb, 0x41, 0x9a, 0xd9, 0xcc, 0x19, 0x05, 0x2c, 0x8f, 0x58, 0x6d, + 0x67, 0xf1, 0xb7, 0xfd, 0x30, 0xd4, 0xa2, 0x89, 0x16, 0x61, 0x48, 0x63, 0x99, 0xc9, 0x1e, 0xe4, + 0x5c, 0xe9, 0xe4, 0x9e, 0xc9, 0xef, 0x70, 0x93, 0x21, 0x37, 0xb6, 0xc1, 0xd1, 0x32, 0x1c, 0xb2, + 0xf8, 0x4d, 0x70, 0x2c, 0xef, 0x9e, 0x85, 0xd4, 0x9e, 0x19, 0x72, 0xc8, 0x31, 0x67, 0x68, 0xdd, + 0x62, 0xe2, 0xdb, 0x25, 0x26, 0x6d, 0x15, 0x35, 0x78, 0x18, 0x15, 0x75, 0xe4, 0x50, 0x2a, 0xca, + 0x7f, 0x08, 0x15, 0x85, 0xd2, 0xd0, 0x4f, 0xa8, 0x4a, 0x6b, 0x24, 0xfc, 0xf9, 0xa7, 0x20, 0xe6, + 0x9d, 0x0c, 0x4d, 0x9f, 0xdd, 0x05, 0x30, 0xcb, 0x54, 0xb9, 0x8b, 0xb3, 0xde, 0xfb, 0x9b, 0x40, + 0x76, 0xac, 0xd1, 0x22, 0x3c, 0x6a, 0xe1, 0x22, 0xb6, 0x2c, 0xbd, 0x5a, 0x52, 0x78, 0xdf, 0x25, + 0xe1, 0x00, 0x03, 0x3c, 0xd9, 0xa3, 0x08, 0x8b, 0x8c, 0x9d, 0xd0, 0x34, 0xe3, 0xe7, 0x04, 0xdd, + 0x82, 0xe1, 0x02, 0x2e, 0x63, 0x8a, 0x0b, 0x0a, 0x97, 0xe1, 0x42, 0x13, 0x31, 0xd8, 0x07, 0xe2, + 0x98, 0x63, 0x2d, 0x3b, 0xc6, 0x2e, 0xee, 0x7f, 0xe1, 0x78, 0x41, 0x27, 0x6a, 0xbe, 0xdc, 0x0d, + 0x18, 0xf6, 0x01, 0x7c, 0xc2, 0x35, 0xef, 0x40, 0x6e, 0x29, 0xda, 0xeb, 0xbe, 0x00, 0x10, 0x3c, + 0xf1, 0x2f, 0x00, 0x0c, 0x2d, 0xeb, 0xa4, 0xcf, 0x42, 0xfd, 0x3b, 0x1c, 0x2a, 0xab, 0x79, 0x5c, + 0x56, 0x8a, 0x7a, 0x99, 0x62, 0xcb, 0x29, 0xd8, 0x10, 0x3b, 0x4b, 0xb3, 0x23, 0x74, 0x0a, 0x0e, + 0x5b, 0xd8, 0x34, 0x2c, 0xaa, 0x14, 0x75, 0x5c, 0x2e, 0x90, 0xb0, 0x37, 0xe6, 0x9d, 0x0c, 0xca, + 0x43, 0xfc, 0x30, 0xcd, 0xce, 0xd0, 0x05, 0x78, 0xcc, 0x51, 0xe2, 0x41, 0x71, 0x75, 0x7d, 0x4c, + 0x17, 0x71, 0x19, 0x0f, 0x21, 0xb7, 0x88, 0xdf, 0xf3, 0x43, 0x81, 0xfb, 0xc9, 0x8b, 0x76, 0x91, + 0xe2, 0x0a, 0x1a, 0x83, 0x7e, 0x8a, 0xab, 0x6a, 0x95, 0xb2, 0x0c, 0x0b, 0xca, 0xce, 0xee, 0x00, + 0xdd, 0x46, 0x80, 0xde, 0x9a, 0x5e, 0xe0, 0x0d, 0x4f, 0xb6, 0x97, 0x28, 0x06, 0x43, 0x05, 0x4c, + 0x34, 0x4b, 0x67, 0x3f, 0xe1, 0xe1, 0x10, 0x67, 0xda, 0x72, 0x84, 0x22, 0x30, 0xe0, 0x5e, 0x73, + 0x78, 0x28, 0x06, 0x26, 0x03, 0x72, 0x73, 0x8f, 0x32, 0xd0, 0xcf, 0x2e, 0x85, 0x53, 0x0a, 0x4d, + 0x5f, 0xda, 0x25, 0x55, 0x3b, 0x69, 0x89, 0xcb, 0xcc, 0x52, 0xaa, 0x52, 0x6b, 0x43, 0x76, 0x60, + 0xd0, 0xcb, 0x30, 0xd4, 0x32, 0x07, 0x39, 0x49, 0x70, 0x75, 0x3f, 0xa8, 0xa9, 0xe7, 0xe6, 0x1c, + 0xba, 0x15, 0x10, 0x5d, 0x81, 0xd0, 0x58, 0xaf, 0x62, 0x4b, 0xb1, 0xe7, 0x96, 0x70, 0x90, 0x15, + 0x6c, 0xa4, 0x03, 0xfe, 0x96, 0x8e, 0xd7, 0xdd, 0x0c, 0x0b, 0x32, 0x6d, 0xfb, 0xa4, 0xad, 0xe9, + 0x0c, 0x1f, 0x46, 0xd3, 0x19, 0xf9, 0x53, 0x4d, 0x27, 0x05, 0x03, 0x25, 0x4c, 0x59, 0xe7, 0xe8, + 0xd1, 0xbe, 0x7a, 0x34, 0x1e, 0xf9, 0x48, 0x89, 0x6f, 0xd0, 0x12, 0x84, 0x4e, 0x5e, 0x12, 0x4c, + 0x9d, 0xde, 0xb0, 0xbf, 0x66, 0x13, 0xe4, 0xf6, 0x59, 0x4c, 0x23, 0x57, 0x60, 0xa8, 0x25, 0xa0, + 0x76, 0xa6, 0xad, 0xe1, 0x0d, 0x27, 0x2b, 0xed, 0x25, 0x3a, 0x06, 0x07, 0xeb, 0x6a, 0xb9, 0xe6, + 0x26, 0x24, 0xdf, 0xcc, 0x78, 0x2e, 0x83, 0xc8, 0x35, 0x28, 0x74, 0x46, 0x6d, 0x3f, 0xf6, 0xd7, + 0x7d, 0x81, 0x41, 0xc1, 0x1f, 0x7f, 0x13, 0xc0, 0xa1, 0xd6, 0x6c, 0x40, 0x29, 0x38, 0xa8, 0x53, + 0x5c, 0x21, 0x61, 0xde, 0x46, 0xcf, 0xef, 0x23, 0x8b, 0x64, 0x6e, 0x89, 0x2e, 0x40, 0x3f, 0x1f, + 0xac, 0xc3, 0x1e, 0x86, 0x11, 0xee, 0xc0, 0x90, 0x6c, 0x21, 0xbb, 0x54, 0x47, 0x2f, 0xbe, 0x06, + 0x87, 0xe7, 0x59, 0xb7, 0x3b, 0xf8, 0x48, 0x30, 0x09, 0x85, 0xa2, 0xaa, 0x97, 0x15, 0xbd, 0xd8, + 0xec, 0x8a, 0xac, 0x62, 0x03, 0xf2, 0x88, 0x7d, 0xbe, 0x58, 0x74, 0xbb, 0xdd, 0xd4, 0x6f, 0x00, + 0x1e, 0xef, 0x3a, 0x0b, 0xa0, 0x08, 0x1c, 0x5b, 0x90, 0x72, 0x8a, 0x9c, 0x5d, 0x55, 0xd2, 0x19, + 0xf9, 0x46, 0x2a, 0xa7, 0xcc, 0x4b, 0xe9, 0xd4, 0xcd, 0xe5, 0x9c, 0x30, 0x80, 0xfe, 0x06, 0xc7, + 0x3b, 0x64, 0xe9, 0x8c, 0xac, 0xcc, 0xc9, 0x52, 0x2a, 0x27, 0x09, 0x00, 0x45, 0x61, 0xa4, 0x8b, + 0x58, 0x96, 0x56, 0x97, 0x53, 0x73, 0x92, 0xe0, 0x41, 0xe3, 0xf0, 0x78, 0x87, 0x3c, 0x9b, 0x4b, + 0xe5, 0x6e, 0x66, 0x05, 0x2f, 0x3a, 0x01, 0xff, 0xd2, 0x21, 0x92, 0xa5, 0xd4, 0xbc, 0xe0, 0x43, + 0xa7, 0x61, 0x6c, 0x87, 0x20, 0x2d, 0xc9, 0xf2, 0xe2, 0xca, 0x82, 0x92, 0x99, 0xbd, 0x2e, 0xcd, + 0xe5, 0xb2, 0xc2, 0x60, 0x17, 0xad, 0x59, 0x39, 0xb3, 0x24, 0xad, 0x70, 0x65, 0x69, 0x65, 0x4e, + 0xca, 0x0a, 0xfe, 0xe9, 0xb7, 0x20, 0xf4, 0xa6, 0x56, 0x17, 0xd1, 0xaf, 0x00, 0xfa, 0xf9, 0x84, + 0x82, 0xfa, 0x1e, 0x62, 0x22, 0xe7, 0xfa, 0xd0, 0x74, 0x46, 0xbb, 0xf7, 0x40, 0xe3, 0xeb, 0xf0, + 0x52, 0xf1, 0x5f, 0x77, 0xb4, 0x84, 0x6a, 0x9a, 0x84, 0xaa, 0xda, 0x5a, 0x22, 0xaf, 0x12, 0x5d, + 0x4b, 0xd4, 0x08, 0xb6, 0xfe, 0xd1, 0x2e, 0x20, 0x54, 0xad, 0x16, 0x54, 0xab, 0xc0, 0x65, 0x75, + 0x4c, 0x12, 0xba, 0x91, 0xd0, 0x55, 0x95, 0x24, 0x34, 0xfb, 0xcf, 0xba, 0xa5, 0x53, 0x7c, 0xf7, + 0xbb, 0x9f, 0x3e, 0xf2, 0x5c, 0x89, 0x5f, 0x74, 0x5e, 0x2a, 0x93, 0xcd, 0x2c, 0x20, 0xc9, 0xd7, + 0xdc, 0xa6, 0x20, 0x36, 0x0f, 0x37, 0x5b, 0x5f, 0x88, 0xc8, 0x0c, 0x98, 0x42, 0xbf, 0x00, 0xe8, + 0x5d, 0xc0, 0x14, 0x9d, 0xd9, 0x6b, 0x32, 0xe4, 0x54, 0x27, 0xfa, 0x1b, 0x20, 0xe3, 0x1f, 0x82, + 0x07, 0xf7, 0x3c, 0x36, 0xd7, 0xd5, 0x6e, 0x5c, 0x2b, 0x46, 0x55, 0xa7, 0x46, 0x4f, 0xba, 0xae, + 0x78, 0x07, 0x63, 0x0b, 0xab, 0x05, 0x46, 0xf8, 0x22, 0x9a, 0xee, 0x46, 0xb8, 0x07, 0x4f, 0x2e, + 0xd8, 0x44, 0x3f, 0x03, 0xe8, 0xb3, 0x8b, 0x12, 0x4d, 0xec, 0x59, 0xb5, 0x9c, 0xed, 0xd9, 0x3e, + 0xab, 0x3b, 0xfe, 0xce, 0x8b, 0xa5, 0x9b, 0x40, 0xe7, 0xf7, 0x41, 0x17, 0xbd, 0xe1, 0x81, 0x47, + 0x9c, 0xd1, 0x18, 0xf5, 0x3f, 0x3e, 0x47, 0xa6, 0xfa, 0x51, 0x75, 0x08, 0x7f, 0xf6, 0x42, 0xf2, + 0x78, 0x31, 0x32, 0x7f, 0x90, 0x3c, 0xee, 0xd0, 0xd8, 0xb4, 0xf3, 0xfa, 0x7b, 0x00, 0xfd, 0xbc, + 0x67, 0xee, 0x5a, 0xc8, 0x6d, 0x6d, 0x35, 0x32, 0x26, 0xf2, 0x8f, 0x23, 0xa2, 0xfb, 0x71, 0x44, + 0x94, 0x2a, 0x26, 0xdd, 0x88, 0xbf, 0xfb, 0x42, 0xd8, 0x5e, 0x9a, 0x3a, 0x40, 0x12, 0xcf, 0x80, + 0xa9, 0xc8, 0x4b, 0xf7, 0xb7, 0x80, 0xe7, 0xdb, 0x2d, 0x10, 0xeb, 0xcd, 0x8b, 0xff, 0x9e, 0x3e, + 0xde, 0x02, 0xa0, 0xb1, 0x05, 0x26, 0xfa, 0xfb, 0xf5, 0xbd, 0xfb, 0x4d, 0xd8, 0x23, 0x80, 0xd9, + 0x0f, 0xc0, 0xc3, 0x6b, 0x83, 0x73, 0xf2, 0xcd, 0xf9, 0xe5, 0x47, 0x4f, 0xa2, 0x03, 0x8f, 0x9f, + 0x44, 0x07, 0x9e, 0x3d, 0x89, 0x82, 0xd7, 0x1b, 0x51, 0xf0, 0x65, 0x23, 0x0a, 0x1e, 0x34, 0xa2, + 0xe0, 0x51, 0x23, 0x0a, 0x7e, 0x6c, 0x44, 0xc1, 0xd3, 0x46, 0x74, 0xe0, 0x59, 0x23, 0x0a, 0xde, + 0xdf, 0x8e, 0x0e, 0xdc, 0xdf, 0x8e, 0x82, 0x47, 0xdb, 0xd1, 0x81, 0xc7, 0xdb, 0xd1, 0x81, 0xff, + 0x67, 0x4a, 0x86, 0xb9, 0x56, 0x12, 0xeb, 0x86, 0x3d, 0xd5, 0x5a, 0xaa, 0x58, 0x23, 0x49, 0xb6, + 0xb0, 0x5f, 0xeb, 0x12, 0xa6, 0x65, 0xd4, 0xf5, 0x02, 0xb6, 0x12, 0xae, 0x38, 0x69, 0xe6, 0x4b, + 0x46, 0x12, 0xdf, 0xa1, 0xce, 0x37, 0x9b, 0x9d, 0x9f, 0x6e, 0xf2, 0x7e, 0x16, 0x90, 0x7f, 0xfe, + 0x11, 0x00, 0x00, 0xff, 0xff, 0x0f, 0xe5, 0x27, 0xc5, 0x55, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/virtual_k8s/public_crudapi.vesapi.go b/pbgo/extschema/schema/virtual_k8s/public_crudapi.vesapi.go index 687583114..b9cf78f6f 100644 --- a/pbgo/extschema/schema/virtual_k8s/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/virtual_k8s/public_crudapi.vesapi.go @@ -2421,10 +2421,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2481,10 +2485,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2543,10 +2551,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_k8s/public_custom_data_api.pb.go b/pbgo/extschema/schema/virtual_k8s/public_custom_data_api.pb.go index aba47f394..4461bf6d3 100644 --- a/pbgo/extschema/schema/virtual_k8s/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/virtual_k8s/public_custom_data_api.pb.go @@ -493,62 +493,63 @@ func init() { } var fileDescriptor_5e86f3de1c74d38f = []byte{ - // 876 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdf, 0x6f, 0xdb, 0x44, - 0x1c, 0xcf, 0xd9, 0x69, 0x9b, 0x1e, 0x6b, 0x15, 0x4e, 0x08, 0x79, 0xa1, 0xb2, 0xaa, 0x48, 0x48, - 0x5d, 0x35, 0xdb, 0xa3, 0x68, 0xd5, 0x34, 0x78, 0x20, 0xcd, 0xaa, 0xa9, 0x82, 0xb1, 0xc8, 0x2d, - 0x95, 0xe0, 0x25, 0x3a, 0x3b, 0x17, 0xef, 0xa8, 0xed, 0x33, 0x77, 0xe7, 0x68, 0x01, 0x21, 0xa1, - 0xbd, 0xf1, 0x04, 0x02, 0x09, 0xf1, 0xc8, 0x1b, 0xfc, 0x09, 0x88, 0xbd, 0xf4, 0x09, 0xf6, 0x84, - 0x2a, 0x78, 0xd9, 0x23, 0x4d, 0x41, 0x82, 0xb7, 0xfe, 0x09, 0xe8, 0xce, 0x4e, 0x9a, 0x74, 0x9a, - 0x94, 0xbd, 0x44, 0x77, 0xf7, 0xf9, 0x71, 0x1f, 0x7f, 0xfd, 0xf5, 0x37, 0x70, 0x7b, 0x40, 0x84, - 0x4b, 0x99, 0x27, 0xc2, 0x07, 0x24, 0xc1, 0xde, 0x80, 0x72, 0x99, 0xe3, 0xb8, 0x7b, 0x74, 0x4b, - 0x78, 0x59, 0x1e, 0xc4, 0x34, 0xec, 0x86, 0xb9, 0x90, 0x2c, 0xe9, 0xf6, 0xb0, 0xc4, 0x5d, 0x9c, - 0x51, 0x37, 0xe3, 0x4c, 0x32, 0x74, 0xb5, 0xd0, 0xb9, 0x85, 0xce, 0x9d, 0xd2, 0x35, 0x9c, 0x88, - 0xca, 0x07, 0x79, 0xe0, 0x86, 0x2c, 0xf1, 0x22, 0x16, 0x31, 0x4f, 0x2b, 0x82, 0xbc, 0xaf, 0x77, - 0x7a, 0xa3, 0x57, 0x85, 0x53, 0x63, 0x2d, 0x62, 0x2c, 0x8a, 0x89, 0x87, 0x33, 0xea, 0xe1, 0x34, - 0x65, 0x12, 0x4b, 0xca, 0x52, 0x51, 0xa2, 0xaf, 0xcd, 0xe6, 0x63, 0xd9, 0x34, 0x78, 0x75, 0x16, - 0x94, 0xc3, 0x8c, 0x8c, 0xa1, 0xb5, 0x4b, 0xcf, 0x85, 0x63, 0xda, 0xc3, 0x92, 0x94, 0x68, 0xf3, - 0x12, 0x4a, 0x04, 0x49, 0x07, 0xb3, 0xe6, 0xcd, 0xef, 0x4c, 0xf8, 0x72, 0xe7, 0xb0, 0x7d, 0x8f, - 0x48, 0x4e, 0x43, 0xe1, 0x93, 0x4f, 0x72, 0x22, 0x24, 0x5a, 0x83, 0xcb, 0x29, 0x4e, 0x88, 0xc8, - 0x70, 0x48, 0x2c, 0xb0, 0x0e, 0x36, 0x96, 0xfd, 0x8b, 0x03, 0xf4, 0x2a, 0x5c, 0xec, 0xd3, 0x58, - 0x12, 0x6e, 0x19, 0x1a, 0x2a, 0x77, 0xe8, 0x0e, 0xac, 0x45, 0x9c, 0xe5, 0x59, 0x37, 0x18, 0x5a, - 0xe6, 0xba, 0xb9, 0xb1, 0xba, 0x75, 0xcd, 0x7d, 0x6e, 0x01, 0xdd, 0xc9, 0xad, 0xef, 0xe1, 0x80, - 0xc4, 0xfe, 0x92, 0x96, 0xee, 0x0c, 0x11, 0x83, 0xab, 0x7d, 0x4a, 0xe2, 0x5e, 0x57, 0x90, 0x98, - 0x84, 0x92, 0x71, 0xab, 0xaa, 0xbd, 0x36, 0xe6, 0xf1, 0x3a, 0x18, 0x66, 0x64, 0xc7, 0xfe, 0xe5, - 0xbf, 0x63, 0x73, 0xe1, 0x1b, 0x60, 0xd4, 0x6b, 0xe3, 0x55, 0x0d, 0x8c, 0x57, 0x16, 0xf0, 0x57, - 0xb4, 0xff, 0x7e, 0x69, 0x8f, 0xae, 0x41, 0x28, 0x24, 0xe6, 0xb2, 0x2b, 0x69, 0x42, 0xac, 0x05, - 0xf5, 0x48, 0x3b, 0x50, 0xd3, 0xb9, 0xf9, 0x7d, 0x15, 0xf8, 0xcb, 0x1a, 0x3d, 0xa0, 0x09, 0x41, - 0xaf, 0xc3, 0x1a, 0x49, 0x7b, 0x05, 0x71, 0xf1, 0x19, 0xe2, 0x12, 0x49, 0x7b, 0x9a, 0x66, 0xc3, - 0xaa, 0x90, 0x24, 0xb3, 0x96, 0x66, 0x28, 0x3f, 0x54, 0x81, 0xaf, 0xcf, 0x51, 0x13, 0x2e, 0x70, - 0x9c, 0x46, 0xc4, 0xaa, 0x69, 0xc2, 0x95, 0x92, 0x70, 0x6e, 0x00, 0x0b, 0xf8, 0x05, 0xd4, 0xe4, - 0x10, 0x4d, 0xbf, 0x17, 0x91, 0xb1, 0x54, 0x10, 0xf4, 0x36, 0xac, 0xaa, 0x16, 0xb5, 0xc0, 0xba, - 0xb9, 0xf1, 0xd2, 0x7c, 0x25, 0xb9, 0x83, 0x25, 0xf6, 0xb5, 0x6a, 0x92, 0xcb, 0x98, 0xc9, 0x75, - 0x6e, 0x94, 0xb9, 0x9a, 0xbf, 0x82, 0xa9, 0x66, 0x50, 0xa5, 0x54, 0x5a, 0x74, 0x17, 0x9a, 0x47, - 0x64, 0x58, 0x5e, 0x79, 0x73, 0xde, 0xb7, 0xa0, 0xa4, 0xee, 0xbb, 0x64, 0xb8, 0x9b, 0x4a, 0x3e, - 0xf4, 0x95, 0x03, 0xba, 0x01, 0x17, 0x06, 0x38, 0xce, 0x89, 0x65, 0x68, 0xab, 0xc6, 0x25, 0xab, - 0x42, 0x7b, 0xa8, 0x18, 0x7e, 0x41, 0x6c, 0x6c, 0xc3, 0xda, 0xd8, 0x02, 0xd5, 0xc7, 0x31, 0x54, - 0xcb, 0x69, 0xbf, 0x57, 0x2e, 0xfc, 0xd4, 0x59, 0xb1, 0xb9, 0x6d, 0xdc, 0x02, 0xcd, 0xaf, 0x00, - 0x5c, 0x99, 0x29, 0x80, 0x2a, 0x9c, 0xfa, 0x70, 0xb4, 0xfc, 0x05, 0x7a, 0xc9, 0xd7, 0x2a, 0xf4, - 0x4e, 0x59, 0xf6, 0x22, 0xf8, 0xf5, 0x17, 0xa9, 0x41, 0x51, 0xfa, 0xcd, 0x1b, 0x53, 0x81, 0x14, - 0x84, 0x56, 0xe0, 0x72, 0xe7, 0xb0, 0xdd, 0xfd, 0x60, 0xbf, 0x75, 0x77, 0xb7, 0x5e, 0x41, 0x75, - 0x78, 0x45, 0x6d, 0xdb, 0xad, 0x4e, 0xab, 0xbd, 0x77, 0xf0, 0x61, 0x1d, 0x6c, 0x6e, 0xc1, 0xd5, - 0xd9, 0x4f, 0x44, 0x49, 0xde, 0x6f, 0xdd, 0xdb, 0xdd, 0xef, 0xb4, 0xda, 0x4a, 0xb2, 0x04, 0xcd, - 0xce, 0x61, 0xbb, 0x0e, 0x50, 0x0d, 0x56, 0xf7, 0xf7, 0x0e, 0x76, 0xeb, 0xc6, 0xd6, 0x8f, 0x06, - 0x5c, 0x69, 0xeb, 0x49, 0xa6, 0xae, 0x6e, 0x75, 0xf6, 0xd0, 0x3f, 0x00, 0xc2, 0x8b, 0x3e, 0x42, - 0x73, 0x45, 0x1f, 0x8f, 0x81, 0x86, 0x33, 0x27, 0xbb, 0x68, 0xce, 0xe6, 0xa7, 0x4f, 0x7e, 0x36, - 0xc0, 0xe8, 0x37, 0xeb, 0x8d, 0xfe, 0xcd, 0x87, 0xa1, 0x83, 0xb3, 0x4c, 0x48, 0x1c, 0x1e, 0x39, - 0x01, 0x16, 0x34, 0x74, 0x12, 0x96, 0x52, 0xc9, 0xf8, 0xf5, 0x01, 0x11, 0x0e, 0x65, 0x0e, 0xc5, - 0x58, 0x38, 0xa1, 0xfa, 0xe1, 0x04, 0xf7, 0x1e, 0xfd, 0xf9, 0xf7, 0xb7, 0xc6, 0x5b, 0xcd, 0xed, - 0x72, 0x1a, 0x7b, 0x93, 0x59, 0x23, 0xbc, 0xcf, 0x26, 0xeb, 0xcf, 0x67, 0xe7, 0xf6, 0x20, 0xf4, - 0x92, 0x22, 0xc0, 0x6d, 0xb0, 0xd9, 0x70, 0x8f, 0x1f, 0x03, 0xf3, 0x8f, 0xc7, 0x60, 0xfd, 0xf9, - 0x89, 0xef, 0x07, 0x1f, 0x93, 0x50, 0x3e, 0xfa, 0xdd, 0x32, 0x2c, 0xb0, 0xf3, 0x25, 0x38, 0x39, - 0xb5, 0x2b, 0x4f, 0x4f, 0xed, 0xca, 0xf9, 0xa9, 0x0d, 0xbe, 0x18, 0xd9, 0xe0, 0xa7, 0x91, 0x0d, - 0x9e, 0x8c, 0x6c, 0x70, 0x32, 0xb2, 0xc1, 0x5f, 0x23, 0x1b, 0xfc, 0x3b, 0xb2, 0x2b, 0xe7, 0x23, - 0x1b, 0x7c, 0x7d, 0x66, 0x57, 0x8e, 0xcf, 0x6c, 0x70, 0x72, 0x66, 0x57, 0x9e, 0x9e, 0xd9, 0x95, - 0x8f, 0xee, 0x47, 0x2c, 0x3b, 0x8a, 0xdc, 0x01, 0x53, 0x43, 0x8f, 0x63, 0x37, 0x17, 0x9e, 0x5e, - 0xf4, 0x19, 0x4f, 0x9c, 0x8c, 0xb3, 0x01, 0xed, 0x11, 0xee, 0x8c, 0x61, 0x2f, 0x0b, 0x22, 0xe6, - 0x91, 0x87, 0xb2, 0x9c, 0xc2, 0xcf, 0xfe, 0x05, 0x05, 0x8b, 0x7a, 0x14, 0xbf, 0xf9, 0x7f, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x20, 0x5d, 0xb7, 0x49, 0xa6, 0x06, 0x00, 0x00, + // 888 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0x4f, 0x6b, 0x24, 0x45, + 0x14, 0x9f, 0xea, 0x99, 0x24, 0x93, 0x72, 0x13, 0xc6, 0x42, 0xa4, 0x77, 0x0c, 0xcd, 0x30, 0x20, + 0x64, 0xc3, 0x76, 0xf7, 0x12, 0xd9, 0xb0, 0xac, 0x1e, 0x9c, 0xcc, 0x86, 0x25, 0xe8, 0xba, 0x43, + 0x27, 0x06, 0xf4, 0x32, 0xd4, 0x74, 0xd7, 0xf4, 0x96, 0xe9, 0xee, 0x6a, 0xab, 0xaa, 0x87, 0x1d, + 0x44, 0x90, 0xbd, 0x88, 0x27, 0x45, 0x41, 0x04, 0x2f, 0x1e, 0xfd, 0x08, 0xe2, 0x5e, 0x72, 0xd2, + 0xf5, 0x22, 0x41, 0x2f, 0x7b, 0x34, 0x13, 0x0f, 0x7a, 0xcb, 0x47, 0x58, 0xaa, 0xba, 0x27, 0x99, + 0xce, 0xb2, 0x30, 0x7b, 0x19, 0xde, 0xeb, 0xdf, 0x9f, 0x7a, 0xf5, 0xfa, 0xf5, 0x1b, 0xb8, 0x35, + 0x22, 0xc2, 0xa1, 0xcc, 0x15, 0xfe, 0x03, 0x12, 0x63, 0x77, 0x44, 0xb9, 0xcc, 0x70, 0xd4, 0x3f, + 0xbc, 0x25, 0xdc, 0x34, 0x1b, 0x44, 0xd4, 0xef, 0xfb, 0x99, 0x90, 0x2c, 0xee, 0x07, 0x58, 0xe2, + 0x3e, 0x4e, 0xa9, 0x93, 0x72, 0x26, 0x19, 0xba, 0x9a, 0xeb, 0x9c, 0x5c, 0xe7, 0xcc, 0xe8, 0x9a, + 0x76, 0x48, 0xe5, 0x83, 0x6c, 0xe0, 0xf8, 0x2c, 0x76, 0x43, 0x16, 0x32, 0x57, 0x2b, 0x06, 0xd9, + 0x50, 0x67, 0x3a, 0xd1, 0x51, 0xee, 0xd4, 0x5c, 0x0b, 0x19, 0x0b, 0x23, 0xe2, 0xe2, 0x94, 0xba, + 0x38, 0x49, 0x98, 0xc4, 0x92, 0xb2, 0x44, 0x14, 0xe8, 0x1b, 0xe5, 0xfa, 0x58, 0x3a, 0x0b, 0x5e, + 0x2d, 0x83, 0x72, 0x9c, 0x92, 0x29, 0xb4, 0x76, 0xe9, 0x5e, 0x38, 0xa2, 0x01, 0x96, 0xa4, 0x40, + 0xdb, 0x97, 0x50, 0x22, 0x48, 0x32, 0x2a, 0x9b, 0xb7, 0xbf, 0xaf, 0xc2, 0x57, 0x7b, 0x07, 0xdd, + 0x7b, 0x44, 0x72, 0xea, 0x0b, 0x8f, 0x7c, 0x9a, 0x11, 0x21, 0xd1, 0x1a, 0x5c, 0x4e, 0x70, 0x4c, + 0x44, 0x8a, 0x7d, 0x62, 0x82, 0x16, 0x58, 0x5f, 0xf6, 0x2e, 0x1e, 0xa0, 0xd7, 0xe1, 0xe2, 0x90, + 0x46, 0x92, 0x70, 0xd3, 0xd0, 0x50, 0x91, 0xa1, 0x3b, 0xb0, 0x1e, 0x72, 0x96, 0xa5, 0xfd, 0xc1, + 0xd8, 0xac, 0xb6, 0xaa, 0xeb, 0xab, 0x9b, 0xd7, 0x9c, 0x17, 0x36, 0xd0, 0x39, 0x3f, 0xf5, 0x7d, + 0x3c, 0x20, 0x91, 0xb7, 0xa4, 0xa5, 0xdb, 0x63, 0xc4, 0xe0, 0xea, 0x90, 0x92, 0x28, 0xe8, 0x0b, + 0x12, 0x11, 0x5f, 0x32, 0x6e, 0xd6, 0xb4, 0xd7, 0xfa, 0x3c, 0x5e, 0xfb, 0xe3, 0x94, 0x6c, 0x5b, + 0xbf, 0xfe, 0x7f, 0x54, 0x5d, 0xf8, 0x16, 0x18, 0x8d, 0xfa, 0x34, 0xaa, 0x83, 0x69, 0x64, 0x02, + 0x6f, 0x45, 0xfb, 0xef, 0x15, 0xf6, 0xe8, 0x1a, 0x84, 0x42, 0x62, 0x2e, 0xfb, 0x92, 0xc6, 0xc4, + 0x5c, 0x50, 0x57, 0xda, 0x86, 0x9a, 0xce, 0xab, 0x3f, 0xd4, 0x80, 0xb7, 0xac, 0xd1, 0x7d, 0x1a, + 0x13, 0xf4, 0x26, 0xac, 0x93, 0x24, 0xc8, 0x89, 0x8b, 0xcf, 0x11, 0x97, 0x48, 0x12, 0x68, 0x9a, + 0x05, 0x6b, 0x42, 0x92, 0xd4, 0x5c, 0x2a, 0x51, 0x7e, 0xaa, 0x01, 0x4f, 0x3f, 0x47, 0x6d, 0xb8, + 0xc0, 0x71, 0x12, 0x12, 0xb3, 0xae, 0x09, 0x57, 0x0a, 0xc2, 0x99, 0x01, 0x4c, 0xe0, 0xe5, 0x50, + 0x9b, 0x43, 0x34, 0xfb, 0x5e, 0x44, 0xca, 0x12, 0x41, 0xd0, 0x3b, 0xb0, 0xa6, 0x46, 0xd4, 0x04, + 0xad, 0xea, 0xfa, 0x2b, 0xf3, 0xb5, 0xe4, 0x0e, 0x96, 0xd8, 0xd3, 0xaa, 0xf3, 0xba, 0x8c, 0x52, + 0x5d, 0x67, 0x46, 0x51, 0x57, 0xfb, 0x37, 0x30, 0x33, 0x0c, 0xaa, 0x95, 0x4a, 0x8b, 0xee, 0xc2, + 0xea, 0x21, 0x19, 0x17, 0x47, 0xde, 0x9c, 0xf7, 0x2d, 0x28, 0xa9, 0xf3, 0x1e, 0x19, 0xef, 0x24, + 0x92, 0x8f, 0x3d, 0xe5, 0x80, 0x6e, 0xc0, 0x85, 0x11, 0x8e, 0x32, 0x62, 0x1a, 0xda, 0xaa, 0x79, + 0xc9, 0x2a, 0xd7, 0x1e, 0x28, 0x86, 0x97, 0x13, 0x9b, 0x5b, 0xb0, 0x3e, 0xb5, 0x40, 0x8d, 0x69, + 0x19, 0x6a, 0xe4, 0xb4, 0xdf, 0x6b, 0x17, 0x7e, 0xea, 0x59, 0x9e, 0xdc, 0x36, 0x6e, 0x81, 0xf6, + 0xd7, 0x00, 0xae, 0x94, 0x1a, 0xa0, 0x1a, 0xa7, 0x3e, 0x1c, 0x2d, 0x7f, 0x89, 0x59, 0xf2, 0xb4, + 0x0a, 0xbd, 0x5b, 0xb4, 0x3d, 0x2f, 0xfc, 0xfa, 0xcb, 0xf4, 0x20, 0x6f, 0xfd, 0xc6, 0x8d, 0x99, + 0x82, 0x14, 0x84, 0x56, 0xe0, 0x72, 0xef, 0xa0, 0xdb, 0xff, 0x70, 0xaf, 0x73, 0x77, 0xa7, 0x51, + 0x41, 0x0d, 0x78, 0x45, 0xa5, 0xdd, 0x4e, 0xaf, 0xd3, 0xdd, 0xdd, 0xff, 0xa8, 0x01, 0x36, 0x36, + 0xe1, 0x6a, 0xf9, 0x13, 0x51, 0x92, 0x0f, 0x3a, 0xf7, 0x76, 0xf6, 0x7a, 0x9d, 0xae, 0x92, 0x2c, + 0xc1, 0x6a, 0xef, 0xa0, 0xdb, 0x00, 0xa8, 0x0e, 0x6b, 0x7b, 0xbb, 0xfb, 0x3b, 0x0d, 0x63, 0xf3, + 0x0f, 0x03, 0xae, 0x74, 0xf5, 0x26, 0x53, 0x47, 0x77, 0x7a, 0xbb, 0xe8, 0x4b, 0x03, 0xc2, 0x8b, + 0x39, 0x42, 0x73, 0x95, 0x3e, 0x5d, 0x03, 0x4d, 0x7b, 0x4e, 0x76, 0x3e, 0x9c, 0xed, 0x1f, 0xc1, + 0x93, 0x5f, 0x0c, 0x30, 0xf9, 0xdd, 0xf4, 0x86, 0x37, 0x1f, 0xfa, 0x36, 0x4e, 0x53, 0x21, 0xb1, + 0x7f, 0x68, 0x0f, 0xb0, 0xa0, 0xbe, 0x1d, 0xb3, 0x84, 0x4a, 0xc6, 0xaf, 0xb7, 0xca, 0xa0, 0x90, + 0x38, 0x09, 0x30, 0x0f, 0x2e, 0xf0, 0x11, 0x11, 0x36, 0x65, 0x36, 0xc5, 0x58, 0xd8, 0xbe, 0xfa, + 0xe1, 0x04, 0x07, 0x8f, 0xfe, 0xfe, 0xf7, 0x3b, 0xe3, 0xed, 0xf6, 0x56, 0xb1, 0xaf, 0xdd, 0xf3, + 0x6d, 0x24, 0xdc, 0xcf, 0xce, 0xe3, 0xcf, 0xcb, 0x9b, 0x7d, 0xe4, 0xbb, 0x71, 0x5e, 0xe2, 0x6d, + 0xb0, 0xd1, 0x74, 0x8e, 0x1e, 0x83, 0xea, 0x5f, 0x8f, 0x41, 0xeb, 0xc5, 0x77, 0xba, 0x3f, 0xf8, + 0x84, 0xf8, 0xf2, 0xd1, 0x9f, 0xa6, 0x61, 0x82, 0xed, 0xaf, 0xc0, 0xf1, 0x89, 0x55, 0x79, 0x7a, + 0x62, 0x55, 0xce, 0x4e, 0x2c, 0xf0, 0xc5, 0xc4, 0x02, 0x3f, 0x4f, 0x2c, 0xf0, 0x64, 0x62, 0x81, + 0xe3, 0x89, 0x05, 0xfe, 0x99, 0x58, 0xe0, 0xbf, 0x89, 0x55, 0x39, 0x9b, 0x58, 0xe0, 0x9b, 0x53, + 0xab, 0x72, 0x74, 0x6a, 0x81, 0xe3, 0x53, 0xab, 0xf2, 0xf4, 0xd4, 0xaa, 0x7c, 0x7c, 0x3f, 0x64, + 0xe9, 0x61, 0xe8, 0x8c, 0x98, 0x5a, 0x8b, 0x1c, 0x3b, 0x99, 0x70, 0x75, 0x30, 0x64, 0x3c, 0xb6, + 0x53, 0xce, 0x46, 0x34, 0x20, 0xdc, 0x9e, 0xc2, 0x6e, 0x3a, 0x08, 0x99, 0x4b, 0x1e, 0xca, 0x62, + 0x4f, 0x3f, 0xff, 0x27, 0x35, 0x58, 0xd4, 0xcb, 0xfa, 0xad, 0x67, 0x01, 0x00, 0x00, 0xff, 0xff, + 0xe3, 0x32, 0x4b, 0xed, 0xc8, 0x06, 0x00, 0x00, } func (x PVCMetricType) String() string { diff --git a/pbgo/extschema/schema/virtual_network/crudapi/api.vesapi.go b/pbgo/extschema/schema/virtual_network/crudapi/api.vesapi.go index 0b171d344..a0e9d88d1 100644 --- a/pbgo/extschema/schema/virtual_network/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/virtual_network/crudapi/api.vesapi.go @@ -3255,10 +3255,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_network/object.pb.go b/pbgo/extschema/schema/virtual_network/object.pb.go index 2fad2594a..be7d69c2b 100644 --- a/pbgo/extschema/schema/virtual_network/object.pb.go +++ b/pbgo/extschema/schema/virtual_network/object.pb.go @@ -234,44 +234,46 @@ func init() { } var fileDescriptor_1e6c279eb70aa39f = []byte{ - // 591 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0x41, 0x4f, 0xd4, 0x40, - 0x14, 0xc7, 0x77, 0x76, 0xc9, 0x42, 0x06, 0x02, 0xa4, 0x5e, 0x2a, 0xca, 0x84, 0xac, 0x07, 0xd1, - 0xd8, 0xd6, 0x60, 0x3c, 0xb0, 0x18, 0x4d, 0xc0, 0xc8, 0x05, 0x62, 0xdc, 0xf5, 0xe4, 0x65, 0x33, - 0x9d, 0x7d, 0x5b, 0x46, 0xda, 0x9d, 0x66, 0x66, 0x5a, 0xe0, 0x60, 0x62, 0xfc, 0x04, 0xf2, 0x2d, - 0x8c, 0xf1, 0x43, 0x80, 0x27, 0x8f, 0x84, 0x13, 0x47, 0xe9, 0x5e, 0xbc, 0xc9, 0x47, 0x30, 0x4c, - 0x29, 0x81, 0xba, 0x41, 0xb3, 0xb7, 0xd7, 0xbc, 0xff, 0xff, 0xd7, 0xf7, 0xe6, 0xbd, 0x87, 0x1f, - 0xa6, 0xa0, 0x5c, 0x2e, 0x3c, 0xc5, 0xb6, 0x20, 0xa2, 0x5e, 0xca, 0xa5, 0x4e, 0x68, 0xd8, 0xe9, - 0x83, 0xde, 0x11, 0x72, 0xdb, 0x13, 0xfe, 0x7b, 0x60, 0xda, 0x8d, 0xa5, 0xd0, 0xc2, 0x9a, 0xcf, - 0xb5, 0x6e, 0xae, 0x75, 0x4b, 0xda, 0x39, 0x27, 0xe0, 0x7a, 0x2b, 0xf1, 0x5d, 0x26, 0x22, 0x2f, - 0x10, 0x81, 0xf0, 0x8c, 0xcb, 0x4f, 0x7a, 0xe6, 0xcb, 0x7c, 0x98, 0x28, 0xa7, 0xcd, 0xdd, 0xb9, - 0xfe, 0x67, 0x11, 0x6b, 0x2e, 0xfa, 0xea, 0x22, 0x79, 0xfb, 0x7a, 0x52, 0xef, 0xc5, 0x50, 0xa4, - 0x1a, 0xa5, 0x8a, 0x41, 0x41, 0x3f, 0x2d, 0xd9, 0x1f, 0xdc, 0xdc, 0xd5, 0x15, 0x5c, 0x63, 0x7f, - 0x0c, 0xd7, 0x5f, 0x9b, 0x2e, 0xad, 0x65, 0x3c, 0x11, 0x81, 0xa6, 0x5d, 0xaa, 0xa9, 0x8d, 0x16, - 0xd0, 0xe2, 0xe4, 0xd2, 0xbc, 0x7b, 0xbd, 0xe5, 0x5c, 0xb8, 0x09, 0x9a, 0xbe, 0xdd, 0x8b, 0xa1, - 0x75, 0x29, 0xb7, 0x36, 0xf0, 0x8c, 0xda, 0x53, 0x1a, 0xa2, 0xce, 0x25, 0xa1, 0x6a, 0x08, 0xf7, - 0x4a, 0x84, 0xb6, 0x51, 0x95, 0x38, 0xd3, 0xb9, 0x77, 0xb3, 0xa0, 0xad, 0xe0, 0x31, 0x15, 0x03, - 0xb3, 0x6b, 0x06, 0x71, 0xdf, 0xbd, 0xf1, 0xdd, 0xdd, 0x76, 0x0c, 0xcc, 0x60, 0x8c, 0xa9, 0x79, - 0x50, 0xfd, 0xf4, 0xa2, 0x9e, 0x03, 0xbf, 0x1f, 0xda, 0xd5, 0x59, 0x74, 0x7c, 0x68, 0x7f, 0xab, - 0xe2, 0x26, 0xae, 0xaf, 0x49, 0xa0, 0x1a, 0xac, 0xc7, 0xbd, 0xa7, 0xbb, 0xcc, 0x51, 0xc0, 0x12, - 0x09, 0x11, 0xa8, 0x2d, 0xc7, 0xa7, 0x8a, 0x33, 0x27, 0x51, 0x20, 0x1f, 0x2d, 0xa4, 0xa0, 0x1c, - 0x2e, 0x9c, 0x0b, 0xb6, 0xb3, 0x23, 0xb9, 0x06, 0xbc, 0x8c, 0x6b, 0xeb, 0xa0, 0xad, 0xa5, 0xe1, - 0xc6, 0x48, 0xf4, 0xb9, 0x16, 0x7f, 0x7b, 0x25, 0xd0, 0x2e, 0x6e, 0xe2, 0xb1, 0x0d, 0xae, 0x46, - 0xf3, 0xae, 0xe0, 0xf1, 0x16, 0xc4, 0x21, 0x65, 0xa3, 0xd4, 0xdc, 0xc4, 0xf5, 0x97, 0x10, 0xc2, - 0x28, 0xfd, 0x36, 0x5a, 0x78, 0xa2, 0x78, 0x54, 0xeb, 0x15, 0x1e, 0x0f, 0x58, 0xc7, 0x8c, 0x23, - 0x9f, 0xa8, 0xf3, 0x8f, 0x71, 0xac, 0x87, 0xc2, 0xa7, 0xe1, 0xe5, 0x50, 0xea, 0x01, 0x3b, 0x8f, - 0x1b, 0xbf, 0x11, 0x9e, 0x6a, 0x6b, 0xaa, 0x13, 0xf5, 0xdf, 0xdb, 0x96, 0xcb, 0x87, 0x6c, 0xdb, - 0x1b, 0x3c, 0x99, 0x1f, 0x66, 0x47, 0x42, 0x4f, 0xd9, 0xd5, 0x85, 0xda, 0xe2, 0xe4, 0xd2, 0xdd, - 0xa1, 0xbb, 0xda, 0x82, 0xde, 0xb9, 0x79, 0xd5, 0xfa, 0xfa, 0x61, 0xa6, 0x54, 0x69, 0x0b, 0x8b, - 0x42, 0xa2, 0xac, 0x67, 0x18, 0x33, 0xd1, 0xef, 0x72, 0x73, 0x45, 0x76, 0x6d, 0x28, 0x71, 0xad, - 0x10, 0x98, 0x72, 0xae, 0xe8, 0x9b, 0xb7, 0x8e, 0x9f, 0xcf, 0xe2, 0x69, 0x3c, 0x55, 0x54, 0xe8, - 0x26, 0xbc, 0xbb, 0xba, 0x8f, 0x8e, 0x4e, 0x49, 0xe5, 0xe4, 0x94, 0x54, 0xce, 0x4e, 0x09, 0xfa, - 0x98, 0x11, 0xf4, 0x25, 0x23, 0xe8, 0x47, 0x46, 0xd0, 0x51, 0x46, 0xd0, 0x49, 0x46, 0xd0, 0xcf, - 0x8c, 0xa0, 0x5f, 0x19, 0xa9, 0x9c, 0x65, 0x04, 0x7d, 0x1e, 0x90, 0xca, 0xc1, 0x80, 0xa0, 0xa3, - 0x01, 0xa9, 0x9c, 0x0c, 0x48, 0xe5, 0x5d, 0x3b, 0x10, 0xf1, 0x76, 0xe0, 0xa6, 0x22, 0xd4, 0x20, - 0x25, 0x75, 0x13, 0xe5, 0x99, 0xa0, 0x27, 0x64, 0xe4, 0xc4, 0x52, 0xa4, 0xbc, 0x0b, 0xd2, 0x29, - 0xd2, 0x5e, 0xec, 0x07, 0xc2, 0x83, 0x5d, 0x7d, 0x71, 0xf2, 0xc3, 0x2f, 0xdf, 0xaf, 0x9b, 0xa3, - 0x7f, 0xf2, 0x27, 0x00, 0x00, 0xff, 0xff, 0xd7, 0xd7, 0x58, 0x32, 0xf7, 0x04, 0x00, 0x00, + // 613 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xc1, 0x4f, 0x13, 0x4f, + 0x14, 0xc7, 0x3b, 0x94, 0x5f, 0x21, 0x03, 0x01, 0xb2, 0xbf, 0x4b, 0x45, 0x99, 0x90, 0x7a, 0x10, + 0x8d, 0xbb, 0x9b, 0x60, 0x3c, 0x88, 0x46, 0x13, 0x30, 0x72, 0x81, 0x10, 0x5b, 0x2e, 0xa0, 0x49, + 0x33, 0x3b, 0xfb, 0xba, 0x8c, 0x74, 0x3b, 0x9b, 0x99, 0xd9, 0x05, 0x0e, 0x26, 0xc6, 0xbf, 0x40, + 0xff, 0x0b, 0xe3, 0xd1, 0xbf, 0x40, 0x3c, 0x79, 0x31, 0x21, 0x9c, 0x38, 0xda, 0xed, 0xc5, 0x9b, + 0xfc, 0x09, 0x86, 0xd9, 0x6e, 0x03, 0x9b, 0x06, 0xbd, 0xf4, 0x36, 0x9b, 0xef, 0xf7, 0x7d, 0xe6, + 0xcd, 0xdb, 0xf7, 0x1e, 0xbe, 0x97, 0x80, 0x72, 0xb8, 0x70, 0x15, 0xdb, 0x83, 0x90, 0xba, 0x09, + 0x97, 0x3a, 0xa6, 0xed, 0x66, 0x07, 0xf4, 0x81, 0x90, 0xfb, 0xae, 0xf0, 0xde, 0x00, 0xd3, 0x4e, + 0x24, 0x85, 0x16, 0xd6, 0x42, 0xe6, 0x75, 0x32, 0xaf, 0x53, 0xf0, 0xce, 0xdb, 0x01, 0xd7, 0x7b, + 0xb1, 0xe7, 0x30, 0x11, 0xba, 0x81, 0x08, 0x84, 0x6b, 0xa2, 0xbc, 0xb8, 0x65, 0xbe, 0xcc, 0x87, + 0x39, 0x65, 0xb4, 0xf9, 0x9b, 0x57, 0x6f, 0x16, 0x91, 0xe6, 0xa2, 0xa3, 0xfa, 0xe2, 0x8d, 0xab, + 0xa2, 0x3e, 0x8a, 0x20, 0x97, 0x6a, 0x85, 0x8c, 0x41, 0x41, 0x27, 0x29, 0x84, 0xdf, 0xbd, 0xfe, + 0x55, 0x97, 0x70, 0xb5, 0x2f, 0xff, 0xe1, 0xca, 0x96, 0x79, 0xa5, 0xf5, 0x08, 0x4f, 0x86, 0xa0, + 0xa9, 0x4f, 0x35, 0xad, 0xa2, 0x45, 0xb4, 0x34, 0xb5, 0xbc, 0xe0, 0x5c, 0x7d, 0x72, 0x66, 0xdc, + 0x04, 0x4d, 0xb7, 0x8f, 0x22, 0xa8, 0x0f, 0xec, 0xd6, 0x06, 0x9e, 0x55, 0x47, 0x4a, 0x43, 0xd8, + 0x1c, 0x10, 0xc6, 0x0c, 0xe1, 0x76, 0x81, 0xd0, 0x30, 0xae, 0x02, 0x67, 0x26, 0x8b, 0xdd, 0xcc, + 0x69, 0x8f, 0xf1, 0xb8, 0x8a, 0x80, 0x55, 0xcb, 0x06, 0x71, 0xc7, 0xb9, 0xb6, 0xee, 0x4e, 0x23, + 0x02, 0x66, 0x30, 0x26, 0x68, 0xa5, 0x5b, 0x7e, 0xff, 0xac, 0x92, 0x01, 0xbf, 0x1d, 0x57, 0xc7, + 0xe6, 0xd0, 0xe9, 0x71, 0xf5, 0x47, 0x19, 0xef, 0xe0, 0xca, 0x9a, 0x04, 0xaa, 0xc1, 0xda, 0x6a, + 0x3d, 0x3c, 0x64, 0xb6, 0x02, 0x16, 0x4b, 0x08, 0x41, 0xed, 0xd9, 0x1e, 0x55, 0x9c, 0xd9, 0xb1, + 0x02, 0x79, 0x7f, 0xb1, 0xa8, 0x29, 0x4d, 0x3b, 0x3e, 0x95, 0x7e, 0x5f, 0x4e, 0x40, 0xd9, 0x5c, + 0xd8, 0xfd, 0xab, 0xed, 0x03, 0xc9, 0x35, 0xe0, 0x57, 0xb8, 0xbc, 0x0e, 0xda, 0xda, 0x1e, 0xce, + 0x0d, 0x45, 0x87, 0x6b, 0x71, 0x1d, 0x7a, 0xe0, 0x28, 0xd0, 0x25, 0x50, 0x1f, 0xbf, 0xc6, 0xe3, + 0x1b, 0x5c, 0x8d, 0x8a, 0xbe, 0x8b, 0x27, 0xea, 0x10, 0xb5, 0x29, 0x1b, 0x41, 0x59, 0x76, 0x70, + 0xe5, 0x39, 0xb4, 0x61, 0x04, 0x15, 0xaf, 0xd5, 0xf1, 0x64, 0xfe, 0xd7, 0xad, 0x17, 0x78, 0x22, + 0x60, 0x4d, 0xd3, 0x2f, 0x59, 0xcb, 0xd9, 0x7f, 0xe9, 0x97, 0xf5, 0xb6, 0xf0, 0x68, 0x7b, 0xd0, + 0x35, 0x95, 0x80, 0x5d, 0x9c, 0x6b, 0xbf, 0x11, 0x9e, 0x6e, 0x68, 0xaa, 0x63, 0xf5, 0xcf, 0xe3, + 0x90, 0xd9, 0x87, 0x8c, 0xc3, 0x4b, 0x3c, 0x95, 0x6d, 0x8e, 0xa6, 0x84, 0x96, 0xaa, 0x8e, 0x2d, + 0x96, 0x97, 0xa6, 0x96, 0x6f, 0x0d, 0x1d, 0xa6, 0x3a, 0xb4, 0x2e, 0x82, 0x57, 0xad, 0xcf, 0x6f, + 0x67, 0x0b, 0x99, 0xd6, 0xb1, 0xc8, 0x2d, 0xca, 0x7a, 0x82, 0x31, 0x13, 0x1d, 0x9f, 0x9b, 0x31, + 0xaf, 0x96, 0x87, 0x12, 0xd7, 0x72, 0x83, 0x49, 0xe7, 0x92, 0x7f, 0xe5, 0xff, 0xd3, 0xa7, 0x73, + 0x78, 0x06, 0x4f, 0xe7, 0x19, 0x3a, 0x31, 0xf7, 0x57, 0x3f, 0xa2, 0x93, 0x2e, 0x29, 0x9d, 0x75, + 0x49, 0xe9, 0xbc, 0x4b, 0xd0, 0xbb, 0x94, 0xa0, 0x4f, 0x29, 0x41, 0xdf, 0x53, 0x82, 0x4e, 0x52, + 0x82, 0xce, 0x52, 0x82, 0x7e, 0xa6, 0x04, 0xfd, 0x4a, 0x49, 0xe9, 0x3c, 0x25, 0xe8, 0x43, 0x8f, + 0x94, 0xbe, 0xf6, 0x08, 0x3a, 0xe9, 0x91, 0xd2, 0x59, 0x8f, 0x94, 0x76, 0x1b, 0x81, 0x88, 0xf6, + 0x03, 0x27, 0x11, 0x6d, 0x0d, 0x52, 0x52, 0x27, 0x56, 0xae, 0x39, 0xb4, 0x84, 0x0c, 0xed, 0x48, + 0x8a, 0x84, 0xfb, 0x20, 0xed, 0x5c, 0x76, 0x23, 0x2f, 0x10, 0x2e, 0x1c, 0xea, 0xfe, 0x4e, 0x1a, + 0xbe, 0x9a, 0xbc, 0x8a, 0xd9, 0x4a, 0x0f, 0xfe, 0x04, 0x00, 0x00, 0xff, 0xff, 0xb3, 0x59, 0x63, + 0x5a, 0x98, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/virtual_network/pkg.vespkg.go b/pbgo/extschema/schema/virtual_network/pkg.vespkg.go index 79f91c2a1..95dcc84e2 100644 --- a/pbgo/extschema/schema/virtual_network/pkg.vespkg.go +++ b/pbgo/extschema/schema/virtual_network/pkg.vespkg.go @@ -79,48 +79,48 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.virtual_network.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.static_v6_routes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.virtual_network.API.Create"] = []svcfw.EnvironmentField{ { FieldPath: "spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.virtual_network.API.Get"] = []svcfw.EnvironmentField{ { FieldPath: "create_form.spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "create_form.spec.static_v6_routes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "replace_form.spec.static_v6_routes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } mdr.RPCAvailableInResFieldRegistry["ves.io.schema.virtual_network.API.List"] = []svcfw.EnvironmentField{ { FieldPath: "items.#.get_spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } @@ -132,11 +132,11 @@ func initializeRPCRegistry(mdr *svcfw.MDRegistry) { mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.virtual_network.API.Replace"] = []svcfw.EnvironmentField{ { FieldPath: "spec.srv6_network.site_snat_pool.node_snat_pool.ipv6_prefixes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, { FieldPath: "spec.static_v6_routes.#", - AllowedEnvironments: []string{"crt", "demo1", "softbank_mec", "staging", "test"}, + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, }, } diff --git a/pbgo/extschema/schema/virtual_network/public_crudapi.pb.go b/pbgo/extschema/schema/virtual_network/public_crudapi.pb.go index 7661581e8..03d7f4085 100644 --- a/pbgo/extschema/schema/virtual_network/public_crudapi.pb.go +++ b/pbgo/extschema/schema/virtual_network/public_crudapi.pb.go @@ -1064,108 +1064,109 @@ func init() { } var fileDescriptor_771868d338a0e7cd = []byte{ - // 1610 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0x1b, 0xd5, - 0x16, 0xce, 0xb5, 0x1d, 0xd7, 0xbe, 0xce, 0xcf, 0xf4, 0xbe, 0x36, 0x75, 0xfc, 0x5a, 0xcb, 0xcf, - 0xad, 0x9e, 0x52, 0xb7, 0x9e, 0x69, 0xf3, 0x7e, 0xd4, 0xa6, 0xef, 0x95, 0x3a, 0xc9, 0x24, 0x24, - 0x24, 0x4d, 0x34, 0x76, 0x2b, 0x84, 0x84, 0x46, 0xe3, 0xf1, 0xb1, 0x3b, 0xc4, 0xf6, 0x0c, 0x33, - 0xd7, 0x4e, 0x23, 0x14, 0x09, 0x75, 0x01, 0x5b, 0x24, 0xc4, 0x02, 0x04, 0x12, 0x1b, 0x24, 0x76, - 0x48, 0xac, 0x90, 0xb2, 0xe9, 0x02, 0xa9, 0x55, 0x17, 0xa8, 0x80, 0x90, 0xba, 0x41, 0xa2, 0x0e, - 0x8b, 0x2e, 0x0b, 0x5b, 0x36, 0x68, 0xee, 0x1d, 0xbb, 0xb6, 0x63, 0x12, 0x3b, 0xcd, 0xca, 0x73, - 0xef, 0x39, 0xe7, 0xbb, 0xe7, 0xbb, 0xe7, 0xc7, 0x67, 0x06, 0x4f, 0xd7, 0xc1, 0x11, 0x0d, 0x53, - 0x72, 0xf4, 0x3b, 0x50, 0xd1, 0xa4, 0xba, 0x61, 0xd3, 0x9a, 0x56, 0x56, 0xab, 0x40, 0x37, 0x4d, - 0x7b, 0x43, 0xb2, 0x6a, 0xf9, 0xb2, 0xa1, 0xab, 0xba, 0x5d, 0x2b, 0x68, 0x96, 0x21, 0x5a, 0xb6, - 0x49, 0x4d, 0x72, 0x86, 0xdb, 0x88, 0xdc, 0x46, 0xec, 0xb2, 0x89, 0xa5, 0x4b, 0x06, 0xbd, 0x53, - 0xcb, 0x8b, 0xba, 0x59, 0x91, 0x4a, 0x66, 0xc9, 0x94, 0x98, 0x55, 0xbe, 0x56, 0x64, 0x2b, 0xb6, - 0x60, 0x4f, 0x1c, 0x2d, 0x76, 0xba, 0x64, 0x9a, 0xa5, 0x32, 0x48, 0x9a, 0x65, 0x48, 0x5a, 0xb5, - 0x6a, 0x52, 0x8d, 0x1a, 0x66, 0xd5, 0xf1, 0xa4, 0x7f, 0xf7, 0xa4, 0x2d, 0x0c, 0xa8, 0x58, 0x74, - 0xcb, 0x13, 0xc6, 0x3a, 0x9d, 0x07, 0xdb, 0x36, 0xed, 0x96, 0x61, 0xa7, 0xcc, 0xb4, 0xda, 0x51, - 0x27, 0x3b, 0x85, 0x74, 0xcb, 0x82, 0xa6, 0x28, 0xd9, 0x75, 0x21, 0xe0, 0x40, 0xb5, 0xde, 0x65, - 0x9e, 0xe8, 0xbe, 0x34, 0xd8, 0x54, 0x3b, 0x35, 0x52, 0xfb, 0x5f, 0xab, 0x99, 0x7f, 0x0b, 0x74, - 0xea, 0xe9, 0x9e, 0xdf, 0x5f, 0xb7, 0xcd, 0xb9, 0xe4, 0x57, 0x08, 0x8f, 0xce, 0xd9, 0xa0, 0x51, - 0x50, 0xe0, 0xed, 0x1a, 0x38, 0x94, 0xbc, 0x82, 0x43, 0x15, 0xa0, 0x5a, 0x41, 0xa3, 0x5a, 0x14, - 0x25, 0xd0, 0x54, 0x64, 0xfa, 0xac, 0xd8, 0x19, 0x9e, 0x35, 0x76, 0x16, 0xb7, 0x5a, 0x05, 0xaa, - 0xe5, 0xb6, 0x2c, 0x50, 0x5a, 0x46, 0x44, 0xc1, 0x01, 0xc7, 0x02, 0x3d, 0xea, 0x63, 0xc6, 0x69, - 0x71, 0xdf, 0xd8, 0x8a, 0x1c, 0x26, 0x6b, 0x81, 0xee, 0xc2, 0xcc, 0x8e, 0x7f, 0xb2, 0x3d, 0xe2, - 0x5a, 0x8b, 0x25, 0x5d, 0x75, 0x7f, 0x15, 0x86, 0x35, 0x13, 0x7e, 0x74, 0x3d, 0xc8, 0x8f, 0x4d, - 0xfe, 0x81, 0xf0, 0x58, 0xd3, 0x63, 0xc7, 0x32, 0xab, 0x0e, 0x90, 0xff, 0xed, 0x71, 0x39, 0xd1, - 0xd3, 0xe5, 0x45, 0xa0, 0x3d, 0xfc, 0x5d, 0xc3, 0xe3, 0xce, 0x96, 0x43, 0xa1, 0xa2, 0xb6, 0x40, - 0xfc, 0x0c, 0xe4, 0x9f, 0x5d, 0x20, 0x59, 0xa6, 0xb5, 0x17, 0x6a, 0x8c, 0x9b, 0xaf, 0xbe, 0x00, - 0x6c, 0xbf, 0x80, 0xd4, 0x01, 0x17, 0xb0, 0x08, 0x74, 0x00, 0xf6, 0xbb, 0x08, 0x8f, 0x29, 0x60, - 0x95, 0x35, 0xbd, 0x15, 0xb0, 0x1b, 0x7b, 0xd8, 0x9f, 0xeb, 0xc9, 0xde, 0x33, 0xeb, 0x71, 0x03, - 0xd9, 0x0e, 0x87, 0xc5, 0x03, 0x1c, 0xf6, 0x70, 0x0e, 0x70, 0x9a, 0x48, 0x58, 0xb0, 0xc1, 0x31, - 0x6b, 0xb6, 0x0e, 0x6a, 0x1d, 0x6c, 0xc7, 0x30, 0xab, 0xec, 0x5e, 0xc3, 0xb3, 0x81, 0x67, 0x3b, - 0x08, 0x29, 0xe3, 0x4d, 0xe9, 0x6d, 0x2e, 0x6c, 0x67, 0x79, 0x1c, 0x8f, 0xb7, 0x48, 0xf2, 0x18, - 0x27, 0x3f, 0x43, 0x18, 0x2f, 0x02, 0x6d, 0x92, 0x3e, 0x8d, 0xc3, 0x55, 0xad, 0x02, 0x8e, 0xa5, - 0xe9, 0xc0, 0x58, 0x87, 0x95, 0x17, 0x1b, 0x84, 0xe0, 0x80, 0xbb, 0x60, 0x84, 0xc2, 0x0a, 0x7b, - 0x26, 0x6f, 0x62, 0xf7, 0x44, 0x06, 0xa6, 0x16, 0x4d, 0xbb, 0xa2, 0x51, 0xe6, 0xce, 0xd8, 0xf4, - 0xbf, 0x0f, 0x0e, 0x50, 0xd3, 0x8b, 0x05, 0x66, 0x37, 0x67, 0x16, 0x40, 0x19, 0xb3, 0x3b, 0xf6, - 0x92, 0x1f, 0x07, 0x71, 0xa4, 0x4d, 0x93, 0xac, 0xe2, 0x88, 0xce, 0xb2, 0x94, 0x1d, 0xe6, 0x5d, - 0xed, 0xc5, 0xbe, 0x8a, 0xc1, 0xe3, 0xa8, 0x60, 0x0e, 0xe0, 0x1e, 0x40, 0xd6, 0xf1, 0x88, 0xcd, - 0x6f, 0x84, 0xe3, 0xf9, 0xfb, 0x2a, 0xae, 0xce, 0x4c, 0x51, 0x22, 0x1e, 0x04, 0x43, 0xec, 0x15, - 0x9f, 0xc0, 0x3e, 0xf1, 0xe9, 0xa8, 0xb2, 0xe1, 0xa3, 0xa8, 0xb2, 0x63, 0x47, 0x52, 0x65, 0xc1, - 0x23, 0xaa, 0x32, 0xb2, 0x8c, 0x83, 0x0e, 0xd5, 0x68, 0xcd, 0x89, 0x7e, 0xfe, 0x29, 0x4a, 0xf8, - 0xa7, 0x22, 0xd3, 0x17, 0x0e, 0x00, 0xcd, 0x32, 0x75, 0xee, 0xea, 0xac, 0xff, 0xfe, 0x36, 0x52, - 0x3c, 0x04, 0xb2, 0x84, 0x8f, 0xdb, 0x50, 0x04, 0xdb, 0x36, 0xaa, 0x25, 0x95, 0xf7, 0x66, 0x27, - 0x1a, 0x62, 0xa0, 0xa7, 0xff, 0xa2, 0x38, 0x8b, 0x8c, 0xa5, 0xd0, 0x32, 0xe3, 0xfb, 0x0e, 0xb9, - 0x8d, 0xa3, 0x05, 0x28, 0x03, 0x85, 0x82, 0xca, 0x65, 0x50, 0x68, 0x21, 0x86, 0xfb, 0x40, 0x9c, - 0xf0, 0xac, 0x15, 0xcf, 0xb8, 0x89, 0xfb, 0x3a, 0x9e, 0x2c, 0x18, 0x8e, 0x96, 0x2f, 0xf7, 0x02, - 0xc6, 0x7d, 0x00, 0x9f, 0x6a, 0x9a, 0x77, 0x21, 0xb7, 0x15, 0xf2, 0x72, 0x20, 0x84, 0x04, 0x5f, - 0xf2, 0x0b, 0x84, 0x23, 0x2b, 0x86, 0xd3, 0x67, 0xf1, 0xfe, 0x03, 0x8f, 0x94, 0xb5, 0x3c, 0x94, - 0xd5, 0xa2, 0x51, 0xa6, 0x60, 0x7b, 0x45, 0x1c, 0x61, 0x7b, 0x0b, 0x6c, 0x8b, 0x9c, 0xc5, 0xa3, - 0x36, 0x58, 0xa6, 0x4d, 0xd5, 0xa2, 0x01, 0xe5, 0x82, 0x13, 0xf5, 0x27, 0xfc, 0x53, 0x61, 0x65, - 0x84, 0x6f, 0x2e, 0xb0, 0x3d, 0x72, 0x09, 0x9f, 0xf0, 0x94, 0x78, 0x50, 0x9a, 0xba, 0x01, 0xa6, - 0x4b, 0xb8, 0x8c, 0x87, 0x90, 0x5b, 0x24, 0x1f, 0x06, 0xb1, 0xc0, 0xfd, 0xe4, 0x45, 0xbc, 0x44, - 0xa1, 0x42, 0x26, 0x70, 0x90, 0x42, 0x55, 0xab, 0x52, 0x96, 0x69, 0x61, 0xc5, 0x5b, 0x1d, 0xa2, - 0x03, 0x09, 0xd8, 0x5f, 0x33, 0x0a, 0xbc, 0x09, 0x2a, 0xee, 0x23, 0x49, 0xe0, 0x48, 0x01, 0x1c, - 0xdd, 0x36, 0xd8, 0x5f, 0x7d, 0x34, 0xc2, 0x99, 0xb6, 0x6d, 0x91, 0x18, 0x0e, 0x35, 0xaf, 0x39, - 0x3a, 0x92, 0x40, 0x53, 0x21, 0xa5, 0xb5, 0x26, 0x59, 0x1c, 0x64, 0x97, 0xc2, 0x29, 0x45, 0xa6, - 0xaf, 0x1d, 0x90, 0xae, 0xdd, 0xd4, 0xc4, 0x15, 0x66, 0x2d, 0x57, 0xa9, 0xbd, 0xa5, 0x78, 0x50, - 0x24, 0x8f, 0x23, 0x6d, 0x33, 0x93, 0x97, 0x08, 0x37, 0x06, 0x45, 0xce, 0xbc, 0x80, 0xe0, 0xf0, - 0xed, 0xa0, 0xe4, 0x2a, 0xc6, 0xe6, 0x66, 0x15, 0x6c, 0xd5, 0x9d, 0x73, 0xa2, 0x61, 0x56, 0xc0, - 0xb1, 0xae, 0x23, 0x6e, 0x1b, 0xb0, 0xd9, 0xcc, 0xb4, 0x30, 0xd3, 0x76, 0x77, 0x3a, 0x9a, 0xd0, - 0xe8, 0x51, 0x34, 0xa1, 0xb1, 0x97, 0x6a, 0x42, 0x32, 0x0e, 0x95, 0x80, 0xb2, 0x2e, 0xe2, 0xb5, - 0xb3, 0x01, 0x1a, 0x91, 0x72, 0xac, 0xc4, 0x17, 0x64, 0x0d, 0x63, 0x2f, 0x47, 0x1d, 0xa0, 0x5e, - 0x9f, 0x18, 0xbc, 0xf9, 0x84, 0x39, 0x46, 0x16, 0x68, 0xec, 0x2a, 0x8e, 0xb4, 0x05, 0xd7, 0xcd, - 0xbc, 0x0d, 0xd8, 0xf2, 0xb2, 0xd4, 0x7d, 0x24, 0x27, 0xf0, 0x70, 0x5d, 0x2b, 0xd7, 0x9a, 0x09, - 0xca, 0x17, 0x33, 0xbe, 0x2b, 0x28, 0x76, 0x1d, 0x0b, 0xdd, 0xd1, 0x1b, 0xc4, 0x7e, 0x39, 0x10, - 0x1a, 0x16, 0x82, 0xc9, 0xf7, 0x11, 0x1e, 0x69, 0xcf, 0x0a, 0x22, 0xe3, 0x61, 0x83, 0x42, 0xc5, - 0x89, 0xf2, 0xd6, 0x2a, 0x0d, 0x98, 0x51, 0x0a, 0xb7, 0x26, 0x97, 0x70, 0x90, 0x0f, 0xe5, 0x51, - 0x1f, 0xc3, 0x89, 0x76, 0xe1, 0xc8, 0xae, 0x90, 0x5d, 0xae, 0xa7, 0x97, 0xdc, 0xc0, 0xa3, 0xf3, - 0xac, 0x03, 0x1e, 0x7e, 0x74, 0x98, 0xc2, 0x42, 0x51, 0x33, 0xca, 0xaa, 0x51, 0x6c, 0x75, 0x4a, - 0x56, 0xc5, 0x21, 0x65, 0xcc, 0xdd, 0x5f, 0x2a, 0x36, 0x3b, 0x60, 0xea, 0x77, 0x84, 0x4f, 0xf6, - 0x9c, 0x17, 0x48, 0x0c, 0x4f, 0x2c, 0xca, 0x39, 0x55, 0xc9, 0xae, 0xab, 0x0b, 0x6b, 0xca, 0x6a, - 0x26, 0xa7, 0xce, 0xcb, 0x0b, 0x99, 0x5b, 0x2b, 0x39, 0x61, 0x88, 0x9c, 0xc1, 0x93, 0x5d, 0xb2, - 0x85, 0x35, 0x45, 0x9d, 0x53, 0xe4, 0x4c, 0x4e, 0x16, 0x10, 0x89, 0xe3, 0x58, 0x0f, 0xb1, 0x22, - 0xaf, 0xaf, 0x64, 0xe6, 0x64, 0xc1, 0x47, 0x26, 0xf1, 0xc9, 0x2e, 0x79, 0x36, 0x97, 0xc9, 0xdd, - 0xca, 0x0a, 0x7e, 0x72, 0x0a, 0xff, 0xad, 0x4b, 0xa4, 0xc8, 0x99, 0x79, 0x21, 0x40, 0xce, 0xe1, - 0xc4, 0x1e, 0xc1, 0x82, 0xac, 0x28, 0x4b, 0x37, 0x17, 0xd5, 0xb5, 0xd9, 0x65, 0x79, 0x2e, 0x97, - 0x15, 0x86, 0x7b, 0x68, 0xcd, 0x2a, 0x6b, 0xaf, 0xc9, 0x37, 0xb9, 0xb2, 0x7c, 0x73, 0x4e, 0xce, - 0x0a, 0xc1, 0xe9, 0xaf, 0xc3, 0xd8, 0x9f, 0x59, 0x5f, 0x22, 0x3f, 0x23, 0x1c, 0xe4, 0x13, 0x0c, - 0x19, 0x68, 0xd0, 0x89, 0xa5, 0xfb, 0xd4, 0xf6, 0x46, 0xc1, 0x7a, 0xe3, 0x41, 0x54, 0x2a, 0xfe, - 0xe7, 0xae, 0x9e, 0x76, 0x40, 0xaf, 0xd9, 0x50, 0x01, 0xe7, 0x4e, 0x3a, 0xaf, 0x39, 0x86, 0x9e, - 0xae, 0x39, 0x60, 0x5f, 0xac, 0x83, 0x93, 0x36, 0xcc, 0xb4, 0x67, 0x9d, 0xde, 0xb4, 0x0d, 0x0a, - 0xf7, 0x7e, 0xfc, 0xf5, 0x43, 0xdf, 0xff, 0x93, 0x57, 0xbc, 0xf7, 0x4f, 0xa9, 0x15, 0x70, 0x47, - 0x7a, 0xa7, 0xd9, 0x0b, 0xc4, 0xd6, 0xe6, 0x76, 0xf7, 0x3b, 0x93, 0x33, 0x83, 0x52, 0xe4, 0x27, - 0x84, 0xfd, 0x8b, 0x40, 0xc9, 0xf9, 0x7e, 0x06, 0x46, 0xce, 0x2c, 0xd5, 0xff, 0x6c, 0x99, 0xdc, - 0x7c, 0xf8, 0x8d, 0x0f, 0x35, 0x1e, 0x44, 0x2f, 0xf7, 0xa6, 0x56, 0x31, 0xab, 0x06, 0x35, 0xf7, - 0xb0, 0xb3, 0x41, 0x2b, 0x30, 0x72, 0x57, 0xc8, 0x7f, 0x7b, 0x91, 0xdb, 0x87, 0x13, 0x17, 0x6e, - 0x93, 0xef, 0x11, 0x0e, 0xb8, 0xf5, 0x46, 0x52, 0x7d, 0x15, 0x25, 0x67, 0x76, 0x61, 0x80, 0x02, - 0x4e, 0x5a, 0x2f, 0x47, 0xed, 0x32, 0x91, 0x06, 0xa4, 0x46, 0x7e, 0x43, 0xf8, 0x98, 0x37, 0xfd, - 0x92, 0xc1, 0xa6, 0xe4, 0x98, 0xd8, 0xaf, 0xba, 0x47, 0xee, 0x3d, 0x74, 0xd8, 0x7c, 0x5c, 0x8d, - 0xbd, 0x7a, 0xd8, 0x7c, 0xec, 0xd2, 0xda, 0x76, 0xf3, 0xf3, 0x5b, 0x84, 0x83, 0xbc, 0xd5, 0x1d, - 0x58, 0x7f, 0x1d, 0x1d, 0x31, 0x36, 0x21, 0xf2, 0x6f, 0x22, 0x62, 0xf3, 0x9b, 0x88, 0x28, 0x57, - 0x2c, 0xba, 0x95, 0xa4, 0x87, 0x25, 0x76, 0x2d, 0x75, 0xc8, 0x5c, 0x9c, 0x41, 0xa9, 0x58, 0xe1, - 0xfe, 0x0e, 0xf2, 0xfd, 0xb0, 0x83, 0xce, 0xed, 0x4f, 0x81, 0xff, 0xf3, 0x3d, 0xd9, 0x41, 0xa8, - 0xb1, 0x83, 0x52, 0xfd, 0xff, 0x57, 0xde, 0xfb, 0x2e, 0xea, 0x13, 0xd0, 0xec, 0x47, 0xe8, 0xd1, - 0xf5, 0xe1, 0x39, 0xe5, 0xd6, 0xfc, 0xca, 0xe3, 0xa7, 0xf1, 0xa1, 0x27, 0x4f, 0xe3, 0x43, 0xcf, - 0x9f, 0xc6, 0xd1, 0xbb, 0x8d, 0x38, 0xfa, 0xb2, 0x11, 0x47, 0x0f, 0x1b, 0x71, 0xf4, 0xb8, 0x11, - 0x47, 0xbf, 0x34, 0xe2, 0xe8, 0x59, 0x23, 0x3e, 0xf4, 0xbc, 0x11, 0x47, 0x1f, 0xec, 0xc6, 0x87, - 0xee, 0xef, 0xc6, 0xd1, 0xe3, 0xdd, 0xf8, 0xd0, 0x93, 0xdd, 0xf8, 0xd0, 0x1b, 0xd9, 0x92, 0x69, - 0x6d, 0x94, 0xc4, 0xba, 0xe9, 0xce, 0xa4, 0xb6, 0x26, 0xd6, 0x1c, 0x89, 0x3d, 0xb8, 0x2f, 0x68, - 0x69, 0xcb, 0x36, 0xeb, 0x46, 0x01, 0xec, 0x74, 0x53, 0x2c, 0x59, 0xf9, 0x92, 0x29, 0xc1, 0x5d, - 0xea, 0x7d, 0x95, 0xe9, 0xfd, 0x71, 0x26, 0x1f, 0x64, 0x31, 0xf8, 0xd7, 0x9f, 0x01, 0x00, 0x00, - 0xff, 0xff, 0xbb, 0x7a, 0x09, 0x75, 0x47, 0x13, 0x00, 0x00, + // 1625 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0xd6, 0x90, 0x14, 0x4d, 0x0e, 0xf5, 0xb3, 0x9e, 0xda, 0x32, 0xc5, 0xda, 0x04, 0x4b, 0x1b, + 0x85, 0x4c, 0x9b, 0x4b, 0x57, 0xfd, 0x81, 0x2d, 0xb7, 0xae, 0x29, 0x69, 0xa5, 0x4a, 0x95, 0x2c, + 0x61, 0x48, 0x1b, 0x45, 0x81, 0x62, 0xb1, 0x5c, 0x0e, 0xe9, 0xad, 0x48, 0xee, 0x76, 0x67, 0x48, + 0x59, 0x28, 0x04, 0x14, 0xbe, 0xf4, 0xd8, 0x7f, 0xa0, 0x09, 0x12, 0x20, 0x87, 0x04, 0xc8, 0x2d, + 0xd7, 0x00, 0xba, 0xf8, 0x16, 0xc3, 0x87, 0xc0, 0x70, 0x2e, 0x3e, 0xc6, 0x54, 0x0e, 0x3e, 0x1a, + 0xc9, 0x21, 0x87, 0xe4, 0x10, 0xec, 0xcc, 0x2e, 0x4d, 0xae, 0x18, 0x89, 0x54, 0xe4, 0x13, 0x77, + 0xe6, 0xbd, 0xf7, 0xcd, 0xfb, 0xe6, 0xfd, 0xf0, 0xed, 0xc2, 0xd9, 0x16, 0xa1, 0xb2, 0x61, 0xe6, + 0xa8, 0x7e, 0x9f, 0xd4, 0xb5, 0x5c, 0xcb, 0xb0, 0x59, 0x53, 0xab, 0xa9, 0x0d, 0xc2, 0xb6, 0x4d, + 0x7b, 0x2b, 0x67, 0x35, 0x4b, 0x35, 0x43, 0x57, 0x75, 0xbb, 0x59, 0xd6, 0x2c, 0x43, 0xb6, 0x6c, + 0x93, 0x99, 0xe8, 0x82, 0xb0, 0x91, 0x85, 0x8d, 0xec, 0xb3, 0x49, 0x64, 0xab, 0x06, 0xbb, 0xdf, + 0x2c, 0xc9, 0xba, 0x59, 0xcf, 0x55, 0xcd, 0xaa, 0x99, 0xe3, 0x56, 0xa5, 0x66, 0x85, 0xaf, 0xf8, + 0x82, 0x3f, 0x09, 0xb4, 0xc4, 0xf9, 0xaa, 0x69, 0x56, 0x6b, 0x24, 0xa7, 0x59, 0x46, 0x4e, 0x6b, + 0x34, 0x4c, 0xa6, 0x31, 0xc3, 0x6c, 0x50, 0x57, 0xfa, 0x63, 0x57, 0xda, 0xc1, 0x20, 0x75, 0x8b, + 0xed, 0xb8, 0xc2, 0x44, 0xaf, 0xf3, 0xc4, 0xb6, 0x4d, 0xbb, 0x63, 0xd8, 0x2b, 0x33, 0xad, 0x6e, + 0xd4, 0xe9, 0x5e, 0x21, 0xdb, 0xb1, 0x88, 0x27, 0x4a, 0xfb, 0x2e, 0x84, 0x50, 0xd2, 0x68, 0xf9, + 0xcc, 0x53, 0xfe, 0x4b, 0x23, 0xdb, 0x6a, 0xaf, 0x46, 0xe6, 0xf0, 0x6b, 0x35, 0x4b, 0x7f, 0x26, + 0x3a, 0x73, 0x75, 0x2f, 0x1f, 0xae, 0xdb, 0xe5, 0x5c, 0xfa, 0x23, 0x00, 0xc7, 0x17, 0x6c, 0xa2, + 0x31, 0x82, 0xc9, 0x5f, 0x9a, 0x84, 0x32, 0xf4, 0x5b, 0x18, 0xa9, 0x13, 0xa6, 0x95, 0x35, 0xa6, + 0xc5, 0x41, 0x0a, 0xcc, 0xc4, 0x66, 0x2f, 0xca, 0xbd, 0xe1, 0xd9, 0xe0, 0x67, 0x09, 0xab, 0x75, + 0xc2, 0xb4, 0xe2, 0x8e, 0x45, 0x70, 0xc7, 0x08, 0x61, 0x18, 0xa2, 0x16, 0xd1, 0xe3, 0x01, 0x6e, + 0x9c, 0x95, 0x0f, 0x8d, 0xad, 0x2c, 0x60, 0x0a, 0x16, 0xd1, 0x1d, 0x98, 0xf9, 0xc9, 0xb7, 0x77, + 0xc7, 0x1c, 0x6b, 0xb9, 0xaa, 0xab, 0xce, 0x2f, 0xe6, 0x58, 0x73, 0xd1, 0x27, 0xb7, 0xc2, 0xe2, + 0xd8, 0xf4, 0x37, 0x00, 0x4e, 0x78, 0x1e, 0x53, 0xcb, 0x6c, 0x50, 0x82, 0x7e, 0x7d, 0xc0, 0xe5, + 0x54, 0x5f, 0x97, 0x97, 0x09, 0xeb, 0xe3, 0xef, 0x06, 0x9c, 0xa4, 0x3b, 0x94, 0x91, 0xba, 0xda, + 0x01, 0x09, 0x72, 0x90, 0x9f, 0xfa, 0x40, 0x0a, 0x5c, 0xeb, 0x20, 0xd4, 0x84, 0x30, 0x5f, 0x7f, + 0x0d, 0xd8, 0x7d, 0x01, 0x99, 0x23, 0x2e, 0x60, 0x99, 0xb0, 0x21, 0xd8, 0xef, 0x03, 0x38, 0x81, + 0x89, 0x55, 0xd3, 0xf4, 0x4e, 0xc0, 0x6e, 0x1f, 0x60, 0x7f, 0xa9, 0x2f, 0x7b, 0xd7, 0xac, 0xcf, + 0x0d, 0x14, 0x7a, 0x1c, 0x96, 0x8f, 0x70, 0xd8, 0xc5, 0x39, 0xc2, 0x69, 0x94, 0x83, 0x92, 0x4d, + 0xa8, 0xd9, 0xb4, 0x75, 0xa2, 0xb6, 0x88, 0x4d, 0x0d, 0xb3, 0xc1, 0xef, 0x35, 0x3a, 0x1f, 0x7a, + 0xb9, 0x07, 0x00, 0x9e, 0xf4, 0xa4, 0xf7, 0x84, 0xb0, 0x9b, 0xe5, 0x69, 0x38, 0xd9, 0x21, 0x29, + 0x62, 0x9c, 0x7e, 0x17, 0x40, 0xb8, 0x4c, 0x98, 0x47, 0xfa, 0x3c, 0x8c, 0x36, 0xb4, 0x3a, 0xa1, + 0x96, 0xa6, 0x13, 0xce, 0x3a, 0x8a, 0x5f, 0x6f, 0x20, 0x04, 0x43, 0xce, 0x82, 0x13, 0x8a, 0x62, + 0xfe, 0x8c, 0xfe, 0x04, 0x9d, 0x13, 0x39, 0x98, 0x5a, 0x31, 0xed, 0xba, 0xc6, 0xb8, 0x3b, 0x13, + 0xb3, 0xbf, 0x38, 0x3a, 0x40, 0x9e, 0x17, 0x4b, 0xdc, 0x6e, 0xc1, 0x2c, 0x13, 0x3c, 0x61, 0xf7, + 0xec, 0xa5, 0xdf, 0x0a, 0xc3, 0x58, 0x97, 0x26, 0x5a, 0x87, 0x31, 0x9d, 0x67, 0x29, 0x3f, 0xcc, + 0xbd, 0xda, 0xab, 0x03, 0x15, 0x83, 0xcb, 0x11, 0x43, 0x01, 0xe0, 0x1c, 0x80, 0x36, 0xe1, 0x98, + 0x2d, 0x6e, 0x44, 0xe0, 0x05, 0x07, 0x2a, 0xae, 0xde, 0x4c, 0xc1, 0x31, 0x17, 0x82, 0x23, 0xf6, + 0x8b, 0x4f, 0xe8, 0x90, 0xf8, 0xf4, 0x54, 0xd9, 0xe8, 0x49, 0x54, 0xd9, 0xa9, 0x13, 0xa9, 0xb2, + 0xf0, 0x09, 0x55, 0x19, 0x5a, 0x85, 0x61, 0xca, 0x34, 0xd6, 0xa4, 0xf1, 0xf7, 0xde, 0x01, 0xa9, + 0xe0, 0x4c, 0x6c, 0xf6, 0xca, 0x11, 0xa0, 0x05, 0xae, 0x2e, 0x5c, 0x9d, 0x0f, 0x3e, 0xda, 0x05, + 0xd8, 0x45, 0x40, 0x2b, 0xf0, 0xb4, 0x4d, 0x2a, 0xc4, 0xb6, 0x8d, 0x46, 0x55, 0x15, 0xbd, 0x99, + 0xc6, 0x23, 0x1c, 0xf4, 0xfc, 0xf7, 0x14, 0x67, 0x85, 0xb3, 0x94, 0x3a, 0x66, 0x62, 0x9f, 0xa2, + 0x7b, 0x30, 0x5e, 0x26, 0x35, 0xc2, 0x48, 0x59, 0x15, 0x32, 0x52, 0xee, 0x20, 0x46, 0x07, 0x40, + 0x9c, 0x72, 0xad, 0xb1, 0x6b, 0xec, 0xe1, 0xfe, 0x01, 0x4e, 0x97, 0x0d, 0xaa, 0x95, 0x6a, 0xfd, + 0x80, 0xe1, 0x00, 0xc0, 0xe7, 0x3c, 0x73, 0x1f, 0x72, 0x57, 0x21, 0xaf, 0x86, 0x22, 0x40, 0x0a, + 0xa4, 0x3f, 0x00, 0x30, 0xb6, 0x66, 0xd0, 0x01, 0x8b, 0xf7, 0x27, 0x70, 0xac, 0xa6, 0x95, 0x48, + 0x4d, 0xad, 0x18, 0x35, 0x46, 0x6c, 0xb7, 0x88, 0x63, 0x7c, 0x6f, 0x89, 0x6f, 0xa1, 0x8b, 0x70, + 0xdc, 0x26, 0x96, 0x69, 0x33, 0xb5, 0x62, 0x90, 0x5a, 0x99, 0xc6, 0x83, 0xa9, 0xe0, 0x4c, 0x14, + 0x8f, 0x89, 0xcd, 0x25, 0xbe, 0x87, 0xae, 0xc1, 0x33, 0xae, 0x92, 0x08, 0x8a, 0xa7, 0x1b, 0xe2, + 0xba, 0x48, 0xc8, 0x44, 0x08, 0x85, 0x45, 0xfa, 0x71, 0x18, 0x4a, 0xc2, 0x4f, 0x51, 0xc4, 0x2b, + 0x8c, 0xd4, 0xd1, 0x14, 0x0c, 0x33, 0xd2, 0xd0, 0x1a, 0x8c, 0x67, 0x5a, 0x14, 0xbb, 0xab, 0x63, + 0x74, 0x20, 0x09, 0x06, 0x9b, 0x46, 0x59, 0x34, 0x41, 0xec, 0x3c, 0xa2, 0x14, 0x8c, 0x95, 0x09, + 0xd5, 0x6d, 0x83, 0xff, 0xd5, 0xc7, 0x63, 0x82, 0x69, 0xd7, 0x16, 0x4a, 0xc0, 0x88, 0x77, 0xcd, + 0xf1, 0xb1, 0x14, 0x98, 0x89, 0xe0, 0xce, 0x1a, 0x15, 0x60, 0x98, 0x5f, 0x8a, 0xa0, 0x14, 0x9b, + 0xbd, 0x79, 0x44, 0xba, 0xfa, 0xa9, 0xc9, 0x6b, 0xdc, 0x5a, 0x69, 0x30, 0x7b, 0x07, 0xbb, 0x50, + 0xa8, 0x04, 0x63, 0x5d, 0x33, 0x93, 0x9b, 0x08, 0xb7, 0x87, 0x45, 0xce, 0xbf, 0x86, 0x10, 0xf0, + 0xdd, 0xa0, 0xe8, 0x06, 0x84, 0xe6, 0x76, 0x83, 0xd8, 0xaa, 0x33, 0xe7, 0xc4, 0xa3, 0xbc, 0x80, + 0x13, 0xbe, 0x23, 0xee, 0x19, 0x64, 0xdb, 0xcb, 0xb4, 0x28, 0xd7, 0x76, 0x76, 0x7a, 0x9a, 0xd0, + 0xf8, 0x49, 0x34, 0xa1, 0x89, 0x1f, 0xd4, 0x84, 0x14, 0x18, 0xa9, 0x12, 0xc6, 0xbb, 0x88, 0xdb, + 0xce, 0x86, 0x68, 0x44, 0xf8, 0x54, 0x55, 0x2c, 0xd0, 0x06, 0x84, 0x6e, 0x8e, 0x52, 0xc2, 0xdc, + 0x3e, 0x31, 0x7c, 0xf3, 0x89, 0x0a, 0x8c, 0x02, 0x61, 0x89, 0x1b, 0x30, 0xd6, 0x15, 0x5c, 0x27, + 0xf3, 0xb6, 0xc8, 0x8e, 0x9b, 0xa5, 0xce, 0x23, 0x3a, 0x03, 0x47, 0x5b, 0x5a, 0xad, 0xe9, 0x25, + 0xa8, 0x58, 0xcc, 0x05, 0xae, 0x83, 0xc4, 0x2d, 0x28, 0xf9, 0xa3, 0x37, 0x8c, 0xfd, 0x6a, 0x28, + 0x32, 0x2a, 0x85, 0xd3, 0x7f, 0x07, 0x70, 0xac, 0x3b, 0x2b, 0x90, 0x02, 0x47, 0x0d, 0x46, 0xea, + 0x34, 0x2e, 0x5a, 0x6b, 0x6e, 0xc8, 0x8c, 0xc2, 0xc2, 0x1a, 0x5d, 0x83, 0x61, 0x31, 0x94, 0xc7, + 0x03, 0x1c, 0x27, 0xee, 0xc3, 0x51, 0x1c, 0x21, 0xbf, 0x5c, 0x57, 0x2f, 0xbd, 0x05, 0xc7, 0x17, + 0x79, 0x07, 0x3c, 0xfe, 0xe8, 0x30, 0x03, 0xa5, 0x8a, 0x66, 0xd4, 0x54, 0xa3, 0xd2, 0xe9, 0x94, + 0xbc, 0x8a, 0x23, 0x78, 0xc2, 0xd9, 0x5f, 0xa9, 0x78, 0x1d, 0x30, 0xf3, 0x25, 0x80, 0x67, 0xfb, + 0xce, 0x0b, 0x28, 0x01, 0xa7, 0x96, 0x95, 0xa2, 0x8a, 0x0b, 0x9b, 0xea, 0xd2, 0x06, 0x5e, 0xcf, + 0x17, 0xd5, 0x45, 0x65, 0x29, 0x7f, 0x77, 0xad, 0x28, 0x8d, 0xa0, 0x0b, 0x70, 0xda, 0x27, 0x5b, + 0xda, 0xc0, 0xea, 0x02, 0x56, 0xf2, 0x45, 0x45, 0x02, 0x28, 0x09, 0x13, 0x7d, 0xc4, 0x58, 0xd9, + 0x5c, 0xcb, 0x2f, 0x28, 0x52, 0x00, 0x4d, 0xc3, 0xb3, 0x3e, 0x79, 0xa1, 0x98, 0x2f, 0xde, 0x2d, + 0x48, 0x41, 0x74, 0x0e, 0xfe, 0xc8, 0x27, 0xc2, 0x4a, 0x7e, 0x51, 0x0a, 0xa1, 0x4b, 0x30, 0x75, + 0x40, 0xb0, 0xa4, 0x60, 0xbc, 0x72, 0x67, 0x59, 0xdd, 0x98, 0x5f, 0x55, 0x16, 0x8a, 0x05, 0x69, + 0xb4, 0x8f, 0xd6, 0x3c, 0xde, 0xf8, 0xbd, 0x72, 0x47, 0x28, 0x2b, 0x77, 0x16, 0x94, 0x82, 0x14, + 0x9e, 0x7d, 0x06, 0x61, 0x30, 0xbf, 0xb9, 0x82, 0xbe, 0x05, 0x30, 0x2c, 0x26, 0x18, 0x34, 0xd4, + 0xa0, 0x93, 0xc8, 0x0e, 0xa8, 0xed, 0x8e, 0x82, 0xff, 0x05, 0xed, 0x4f, 0xe2, 0xeb, 0x95, 0x5f, + 0x3e, 0xd0, 0xb3, 0x94, 0xe8, 0x4d, 0x9b, 0xd4, 0x09, 0xbd, 0x9f, 0x2d, 0x69, 0xd4, 0xd0, 0xb3, + 0x4d, 0x4a, 0xec, 0xab, 0x7e, 0x11, 0x65, 0x5a, 0xa3, 0xac, 0xd9, 0x65, 0x21, 0x6d, 0x11, 0x9a, + 0x35, 0xcc, 0xac, 0x0b, 0x9e, 0xdd, 0xb6, 0x0d, 0x46, 0x1e, 0x7e, 0xf6, 0xc5, 0x7f, 0x02, 0xbf, + 0x49, 0x5f, 0x77, 0x5f, 0x4f, 0x73, 0x9d, 0x7c, 0xa0, 0xb9, 0xbf, 0x7a, 0xad, 0x42, 0xee, 0x6c, + 0xee, 0xfa, 0x5f, 0xa9, 0xe8, 0x1c, 0xc8, 0xa0, 0xaf, 0x01, 0x0c, 0x2e, 0x13, 0x86, 0x2e, 0x0f, + 0x32, 0x4f, 0x0a, 0xe2, 0x99, 0xc1, 0x47, 0xcf, 0xf4, 0xff, 0xc1, 0xe3, 0x8f, 0x03, 0x0e, 0x73, + 0xdc, 0x9f, 0x79, 0xdd, 0x6c, 0x18, 0xcc, 0x3c, 0x84, 0xbc, 0xa7, 0xe0, 0xe3, 0x6f, 0x13, 0xad, + 0xcc, 0xe9, 0x5f, 0x47, 0xbf, 0xea, 0x47, 0xff, 0x10, 0xd6, 0x42, 0xb8, 0x8b, 0xbe, 0x02, 0x30, + 0xe4, 0x14, 0x2c, 0xca, 0x0c, 0x54, 0xd5, 0x82, 0xfb, 0x95, 0x21, 0x3a, 0x40, 0xfa, 0x5f, 0x6f, + 0x9a, 0xfc, 0xcf, 0x50, 0x6e, 0x48, 0xf2, 0xe8, 0x1f, 0x01, 0x78, 0xca, 0x1d, 0xb0, 0xd1, 0x70, + 0x83, 0x78, 0x42, 0x1e, 0x54, 0xdd, 0xa5, 0xff, 0xfe, 0x1b, 0xca, 0xf8, 0xf5, 0xc4, 0xef, 0x8e, + 0x9b, 0xf1, 0x3e, 0xad, 0x5d, 0xa7, 0x02, 0xf6, 0x01, 0x0c, 0x8b, 0x5e, 0x7b, 0x64, 0x03, 0xe8, + 0x69, 0xc9, 0x89, 0x29, 0x59, 0x7c, 0x94, 0x91, 0xbd, 0x8f, 0x32, 0xb2, 0x52, 0xb7, 0xd8, 0x4e, + 0xfa, 0xdf, 0x6f, 0x88, 0xf7, 0xcd, 0xcc, 0x31, 0x53, 0x7d, 0x0e, 0x64, 0x12, 0xe5, 0x47, 0x7b, + 0x20, 0xf0, 0x6c, 0x0f, 0x5c, 0x3a, 0x9c, 0xa1, 0xf8, 0x67, 0x7e, 0xbe, 0x07, 0x40, 0x7b, 0x0f, + 0x64, 0x06, 0xff, 0x2f, 0x7f, 0xf8, 0x69, 0x3c, 0x20, 0x81, 0xf9, 0xff, 0x81, 0x27, 0xb7, 0x46, + 0x17, 0xf0, 0xdd, 0xc5, 0xb5, 0xa7, 0x2f, 0x92, 0x23, 0xcf, 0x5f, 0x24, 0x47, 0x5e, 0xbd, 0x48, + 0x82, 0xbf, 0xb5, 0x93, 0xe0, 0xc3, 0x76, 0x12, 0x3c, 0x6e, 0x27, 0xc1, 0xd3, 0x76, 0x12, 0x7c, + 0xde, 0x4e, 0x82, 0x97, 0xed, 0xe4, 0xc8, 0xab, 0x76, 0x12, 0xfc, 0x73, 0x3f, 0x39, 0xf2, 0x68, + 0x3f, 0x09, 0x9e, 0xee, 0x27, 0x47, 0x9e, 0xef, 0x27, 0x47, 0xfe, 0x58, 0xa8, 0x9a, 0xd6, 0x56, + 0x55, 0x6e, 0x99, 0xce, 0xcc, 0x6c, 0x6b, 0x72, 0x93, 0xe6, 0xf8, 0x83, 0xf3, 0x02, 0x99, 0xb5, + 0x6c, 0xb3, 0x65, 0x94, 0x89, 0x9d, 0xf5, 0xc4, 0x39, 0xab, 0x54, 0x35, 0x73, 0xe4, 0x01, 0x73, + 0xbf, 0x1a, 0xf5, 0xff, 0x78, 0x54, 0x0a, 0xf3, 0x10, 0xfd, 0xfc, 0xbb, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x34, 0x8e, 0x45, 0xff, 0xe7, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/virtual_network/public_crudapi.vesapi.go b/pbgo/extschema/schema/virtual_network/public_crudapi.vesapi.go index 01fe39eb0..27395b5d8 100644 --- a/pbgo/extschema/schema/virtual_network/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/virtual_network/public_crudapi.vesapi.go @@ -2421,10 +2421,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2481,10 +2485,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2543,10 +2551,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_network/public_custom_data_api.pb.go b/pbgo/extschema/schema/virtual_network/public_custom_data_api.pb.go index 051e67b0f..6c43b625e 100644 --- a/pbgo/extschema/schema/virtual_network/public_custom_data_api.pb.go +++ b/pbgo/extschema/schema/virtual_network/public_custom_data_api.pb.go @@ -504,65 +504,66 @@ func init() { } var fileDescriptor_6f54aed5f71dcbe7 = []byte{ - // 927 bytes of a gzipped FileDescriptorProto + // 937 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xcd, 0x6f, 0x1b, 0x45, - 0x1b, 0xf7, 0xac, 0x9d, 0xc4, 0x99, 0xbe, 0x4d, 0xfd, 0x0e, 0xa5, 0x6c, 0xdd, 0xb0, 0x8a, 0x2c, - 0x90, 0x42, 0xc4, 0xee, 0xb6, 0x41, 0x20, 0x14, 0x2e, 0xcd, 0x87, 0x91, 0xac, 0x84, 0x24, 0x5a, - 0x3b, 0xe5, 0xe3, 0xb2, 0x1a, 0xaf, 0x9f, 0x6c, 0x96, 0xd8, 0x3b, 0xcb, 0xcc, 0xac, 0x5b, 0x0b, - 0x81, 0xaa, 0xde, 0x91, 0x10, 0x5c, 0x10, 0xa7, 0x1e, 0xf9, 0x13, 0x10, 0xb9, 0xe4, 0x46, 0x0f, - 0x08, 0x45, 0x70, 0xe9, 0x91, 0x38, 0x1c, 0xe0, 0x96, 0x0b, 0x77, 0xb4, 0xb3, 0xeb, 0xc4, 0x76, - 0x51, 0x55, 0xdf, 0x66, 0xe6, 0xf7, 0xf1, 0x3c, 0xf3, 0xcc, 0xc7, 0x83, 0x57, 0xba, 0x20, 0xac, - 0x80, 0xd9, 0xc2, 0x3b, 0x80, 0x0e, 0xb5, 0xbb, 0x01, 0x97, 0x31, 0x6d, 0xbb, 0x21, 0xc8, 0xfb, - 0x8c, 0x1f, 0xda, 0x51, 0xdc, 0x6c, 0x07, 0x9e, 0xeb, 0xc5, 0x42, 0xb2, 0x8e, 0xdb, 0xa2, 0x92, - 0xba, 0x34, 0x0a, 0xac, 0x88, 0x33, 0xc9, 0xc8, 0xab, 0xa9, 0xd6, 0x4a, 0xb5, 0xd6, 0x98, 0xb6, - 0x6c, 0xfa, 0x81, 0x3c, 0x88, 0x9b, 0x96, 0xc7, 0x3a, 0xb6, 0xcf, 0x7c, 0x66, 0x2b, 0x55, 0x33, - 0xde, 0x57, 0x33, 0x35, 0x51, 0xa3, 0xd4, 0xad, 0x3c, 0xef, 0x33, 0xe6, 0xb7, 0xc1, 0xa6, 0x51, - 0x60, 0xd3, 0x30, 0x64, 0x92, 0xca, 0x80, 0x85, 0x22, 0x43, 0x6f, 0x8d, 0xe6, 0xc9, 0xa2, 0x61, - 0xf0, 0xe6, 0x28, 0x28, 0x7b, 0x11, 0x0c, 0xa0, 0xf9, 0xb1, 0xfd, 0xd1, 0x76, 0xd0, 0xa2, 0x12, - 0x32, 0xb4, 0x32, 0x86, 0x82, 0x80, 0xb0, 0x3b, 0x6a, 0x5e, 0x79, 0x9c, 0xc7, 0xff, 0xaf, 0xd7, - 0x36, 0xd6, 0x59, 0x1c, 0x4a, 0xe0, 0x0e, 0x7c, 0x16, 0x83, 0x90, 0x64, 0x1e, 0xcf, 0x86, 0xb4, - 0x03, 0x22, 0xa2, 0x1e, 0xe8, 0x68, 0x01, 0x2d, 0xce, 0x3a, 0x97, 0x0b, 0xe4, 0x06, 0x9e, 0xde, - 0x0f, 0xda, 0x12, 0xb8, 0xae, 0x29, 0x28, 0x9b, 0x91, 0x1a, 0x2e, 0xfa, 0x9c, 0xc5, 0x91, 0xdb, - 0xec, 0xe9, 0xf9, 0x85, 0xfc, 0xe2, 0xdc, 0xb2, 0x65, 0x3d, 0xb7, 0x88, 0xd6, 0x65, 0xe4, 0x2d, - 0xda, 0x84, 0xb6, 0x33, 0xa3, 0xf4, 0x6b, 0x3d, 0x22, 0xf1, 0xdc, 0x7e, 0x00, 0xed, 0x96, 0x2b, - 0xa0, 0x0d, 0x9e, 0x64, 0x5c, 0x2f, 0x28, 0x43, 0xf3, 0x85, 0x0d, 0x1b, 0xbd, 0x08, 0xd6, 0x8c, - 0x9f, 0xfe, 0x3e, 0xce, 0x4f, 0x7d, 0x83, 0xb4, 0x52, 0x71, 0x30, 0x2a, 0xa2, 0xc1, 0x48, 0x47, - 0xce, 0x55, 0x15, 0xa4, 0x9e, 0xc5, 0x20, 0x6f, 0x60, 0x2c, 0x24, 0xe5, 0xd2, 0x95, 0x41, 0x07, - 0xf4, 0xa9, 0x64, 0x73, 0x6b, 0x58, 0xd1, 0x79, 0xfe, 0xbb, 0x02, 0x72, 0x66, 0x15, 0xda, 0x08, - 0x3a, 0x40, 0x5e, 0xc7, 0x45, 0x08, 0x5b, 0x29, 0x71, 0xfa, 0x19, 0xe2, 0x0c, 0x84, 0x2d, 0x45, - 0x33, 0x70, 0x41, 0x48, 0x88, 0xf4, 0x99, 0x11, 0xca, 0xe3, 0x02, 0x72, 0xd4, 0x3a, 0xa9, 0xe0, - 0x29, 0x4e, 0x43, 0x1f, 0xf4, 0xa2, 0x22, 0xfc, 0x2f, 0x23, 0x9c, 0x6b, 0x48, 0x47, 0x4e, 0x0a, - 0x55, 0xee, 0x63, 0x32, 0x7c, 0x42, 0x22, 0x62, 0xa1, 0x00, 0xb2, 0x8a, 0x0b, 0xc9, 0x85, 0xd5, - 0xd1, 0x42, 0x7e, 0xf1, 0xca, 0x04, 0x75, 0xd9, 0xa0, 0x92, 0x3a, 0x4a, 0x7a, 0x91, 0x9c, 0x36, - 0x92, 0xdc, 0xb9, 0x96, 0x25, 0x57, 0xf9, 0x05, 0x0d, 0x47, 0x4e, 0x0a, 0x9a, 0x88, 0xc9, 0x16, - 0xce, 0x1f, 0x42, 0x2f, 0x0b, 0xbc, 0x32, 0xd1, 0x81, 0x24, 0x7a, 0x6b, 0x13, 0x7a, 0xd5, 0x50, - 0xf2, 0x9e, 0x93, 0xd8, 0x90, 0xdb, 0x78, 0xaa, 0x4b, 0xdb, 0x31, 0xe8, 0x9a, 0xf2, 0x2b, 0x8f, - 0xf9, 0x7d, 0x00, 0x92, 0x07, 0xde, 0xbd, 0x84, 0xe1, 0xa4, 0xc4, 0xf2, 0x3b, 0xb8, 0x38, 0xb0, - 0x20, 0xa5, 0x41, 0x2e, 0xc9, 0x3d, 0x54, 0x7e, 0xd7, 0x2f, 0xfd, 0x92, 0xb5, 0x74, 0xb2, 0xa2, - 0xbd, 0x8b, 0x2a, 0xdf, 0x23, 0x3c, 0x37, 0x5a, 0x87, 0xa4, 0x88, 0xc9, 0x73, 0x52, 0xfa, 0x49, - 0x2f, 0x97, 0xa3, 0xa4, 0xa4, 0x9a, 0x9d, 0x43, 0x9a, 0xfe, 0x9d, 0x89, 0xcb, 0x91, 0x9e, 0xc5, - 0xd2, 0x97, 0xc3, 0xb9, 0x25, 0x18, 0xd1, 0xf1, 0xf5, 0x7a, 0x6d, 0xc3, 0x5d, 0xdf, 0xd9, 0xdb, - 0x6e, 0x54, 0x1d, 0xb7, 0xb6, 0xed, 0xae, 0x7d, 0xdc, 0xa8, 0xd6, 0x4b, 0x39, 0x52, 0xc6, 0x37, - 0xc6, 0x90, 0xdd, 0xd5, 0xf5, 0xcd, 0x6a, 0xa3, 0x5e, 0x42, 0xe4, 0x26, 0x7e, 0x79, 0x18, 0xdb, - 0xd9, 0x6b, 0x64, 0x32, 0x8d, 0xdc, 0xc2, 0xaf, 0x8c, 0x43, 0x03, 0x5d, 0x7e, 0xe9, 0x2e, 0xbe, - 0x36, 0xf6, 0x18, 0x49, 0x11, 0x17, 0xea, 0xb5, 0x46, 0xb5, 0x94, 0x23, 0x2f, 0xe1, 0x6b, 0xf7, - 0x6a, 0x4e, 0x63, 0x6f, 0x75, 0xcb, 0xdd, 0xae, 0x36, 0x3e, 0xdc, 0x71, 0x36, 0x4b, 0x88, 0xcc, - 0x61, 0x9c, 0xd8, 0xed, 0x3a, 0xd5, 0xf7, 0x6b, 0x1f, 0x95, 0xb4, 0xe5, 0x23, 0x0d, 0x5f, 0x5d, - 0x57, 0x3f, 0x69, 0xb2, 0xad, 0xd5, 0xdd, 0x1a, 0xf9, 0x07, 0xe1, 0x2b, 0x97, 0xa6, 0x82, 0xdc, - 0x7e, 0xe1, 0xe2, 0x64, 0xff, 0x50, 0xf9, 0xce, 0x04, 0x8a, 0xf4, 0x5d, 0x54, 0x1e, 0xa2, 0x27, - 0x3f, 0x6a, 0xa8, 0xff, 0xb3, 0xbe, 0xdc, 0x05, 0x61, 0x06, 0xcc, 0xcc, 0xb8, 0x26, 0x07, 0xda, - 0x7a, 0x73, 0x61, 0xff, 0xed, 0x07, 0x9e, 0x29, 0xc0, 0x8b, 0x39, 0x74, 0x40, 0x1c, 0x98, 0x4d, - 0x2a, 0x02, 0xcf, 0xec, 0xb0, 0x30, 0x90, 0x8c, 0x3f, 0xfa, 0xfd, 0xcf, 0x6f, 0xb5, 0xbb, 0x95, - 0xf7, 0xb2, 0xc6, 0x60, 0x5f, 0x7c, 0x79, 0xc2, 0xfe, 0xfc, 0x62, 0xfc, 0xc5, 0x33, 0x6d, 0x44, - 0x04, 0x2d, 0xd7, 0xcb, 0x36, 0xb9, 0x82, 0x96, 0xca, 0xcb, 0xc7, 0x47, 0x28, 0xff, 0xdb, 0x11, - 0x7a, 0xed, 0xf9, 0xc9, 0xef, 0x34, 0x3f, 0x05, 0x4f, 0x3e, 0xfa, 0x55, 0xd7, 0x74, 0xb4, 0xf6, - 0x15, 0x3a, 0x39, 0x35, 0x72, 0x4f, 0x4f, 0x8d, 0xdc, 0xf9, 0xa9, 0x81, 0x1e, 0xf6, 0x0d, 0xf4, - 0x43, 0xdf, 0x40, 0x4f, 0xfa, 0x06, 0x3a, 0xe9, 0x1b, 0xe8, 0x8f, 0xbe, 0x81, 0xfe, 0xea, 0x1b, - 0xb9, 0xf3, 0xbe, 0x81, 0xbe, 0x3e, 0x33, 0x72, 0xc7, 0x67, 0x06, 0x3a, 0x39, 0x33, 0x72, 0x4f, - 0xcf, 0x8c, 0xdc, 0x27, 0x75, 0x9f, 0x45, 0x87, 0xbe, 0xd5, 0x65, 0xc9, 0x27, 0xcc, 0xa9, 0x15, - 0x0b, 0x5b, 0x0d, 0xf6, 0x19, 0xef, 0x98, 0x11, 0x67, 0xdd, 0xa0, 0x05, 0xdc, 0x1c, 0xc0, 0x76, - 0xd4, 0xf4, 0x99, 0x0d, 0x0f, 0x64, 0xd6, 0x15, 0xfe, 0xbb, 0x35, 0x36, 0xa7, 0x55, 0x7b, 0x78, - 0xeb, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x83, 0xfa, 0xae, 0x35, 0x42, 0x07, 0x00, 0x00, + 0x14, 0xf7, 0xac, 0x9d, 0xc6, 0x99, 0xd2, 0xd4, 0x0c, 0xa5, 0x6c, 0xdd, 0xb0, 0x8a, 0x2c, 0x90, + 0x42, 0xc4, 0xee, 0xb6, 0x41, 0x20, 0x14, 0x2e, 0x8d, 0x13, 0x23, 0x59, 0x09, 0x49, 0xb4, 0xde, + 0x94, 0x8f, 0xcb, 0x6a, 0xbc, 0x3b, 0xde, 0x2c, 0xf1, 0xee, 0x2c, 0x33, 0xb3, 0x6e, 0x2d, 0x04, + 0x42, 0xbd, 0x23, 0x21, 0x38, 0x80, 0x38, 0x55, 0x9c, 0xf8, 0x13, 0x10, 0xbd, 0xe4, 0x46, 0x0f, + 0x08, 0x45, 0x70, 0xe9, 0x05, 0x89, 0x38, 0x1c, 0xe0, 0x96, 0x3f, 0x01, 0xed, 0xec, 0x3a, 0xb1, + 0x1d, 0x54, 0xd5, 0xb7, 0x99, 0xf9, 0x7d, 0xbc, 0x37, 0x6f, 0x3e, 0x1e, 0x5c, 0xed, 0x11, 0x6e, + 0x04, 0xd4, 0xe4, 0xee, 0x3e, 0x09, 0xb1, 0xd9, 0x0b, 0x98, 0x48, 0x70, 0xd7, 0x89, 0x88, 0xb8, + 0x47, 0xd9, 0x81, 0x19, 0x27, 0xed, 0x6e, 0xe0, 0x3a, 0x6e, 0xc2, 0x05, 0x0d, 0x1d, 0x0f, 0x0b, + 0xec, 0xe0, 0x38, 0x30, 0x62, 0x46, 0x05, 0x45, 0x2f, 0x67, 0x5a, 0x23, 0xd3, 0x1a, 0x13, 0xda, + 0xaa, 0xee, 0x07, 0x62, 0x3f, 0x69, 0x1b, 0x2e, 0x0d, 0x4d, 0x9f, 0xfa, 0xd4, 0x94, 0xaa, 0x76, + 0xd2, 0x91, 0x33, 0x39, 0x91, 0xa3, 0xcc, 0xad, 0xba, 0xe0, 0x53, 0xea, 0x77, 0x89, 0x89, 0xe3, + 0xc0, 0xc4, 0x51, 0x44, 0x05, 0x16, 0x01, 0x8d, 0x78, 0x8e, 0xde, 0x1c, 0xcf, 0x93, 0xc6, 0xa3, + 0xe0, 0x8d, 0x71, 0x50, 0xf4, 0x63, 0x32, 0x84, 0x16, 0x26, 0xf6, 0x87, 0xbb, 0x81, 0x87, 0x05, + 0xc9, 0xd1, 0xda, 0x04, 0x4a, 0x38, 0x89, 0x7a, 0xe3, 0xe6, 0xb5, 0x87, 0x45, 0xf8, 0x7c, 0xab, + 0xb9, 0xb1, 0x4e, 0x93, 0x48, 0x10, 0x66, 0x91, 0x4f, 0x12, 0xc2, 0x05, 0x5a, 0x80, 0x73, 0x11, + 0x0e, 0x09, 0x8f, 0xb1, 0x4b, 0x54, 0xb0, 0x08, 0x96, 0xe6, 0xac, 0xf3, 0x05, 0x74, 0x1d, 0x5e, + 0xea, 0x04, 0x5d, 0x41, 0x98, 0xaa, 0x48, 0x28, 0x9f, 0xa1, 0x26, 0x2c, 0xfb, 0x8c, 0x26, 0xb1, + 0xd3, 0xee, 0xab, 0xc5, 0xc5, 0xe2, 0xd2, 0xfc, 0x8a, 0x61, 0x3c, 0xb5, 0x88, 0xc6, 0x79, 0xe4, + 0x2d, 0xdc, 0x26, 0x5d, 0x6b, 0x56, 0xea, 0xeb, 0x7d, 0x24, 0xe0, 0x7c, 0x27, 0x20, 0x5d, 0xcf, + 0xe1, 0xa4, 0x4b, 0x5c, 0x41, 0x99, 0x5a, 0x92, 0x86, 0xfa, 0x33, 0x1b, 0xda, 0xfd, 0x98, 0xd4, + 0xb5, 0x9f, 0xff, 0x3d, 0x2c, 0xce, 0x7c, 0x0d, 0x94, 0x4a, 0x79, 0x38, 0x2a, 0x83, 0xe1, 0x48, + 0x05, 0xd6, 0x15, 0x19, 0xa4, 0x95, 0xc7, 0x40, 0xaf, 0x41, 0xc8, 0x05, 0x66, 0xc2, 0x11, 0x41, + 0x48, 0xd4, 0x99, 0x74, 0x73, 0x75, 0x28, 0xe9, 0xac, 0xf8, 0x5d, 0x09, 0x58, 0x73, 0x12, 0xb5, + 0x83, 0x90, 0xa0, 0x57, 0x61, 0x99, 0x44, 0x5e, 0x46, 0xbc, 0x74, 0x81, 0x38, 0x4b, 0x22, 0x4f, + 0xd2, 0x34, 0x58, 0xe2, 0x82, 0xc4, 0xea, 0xec, 0x18, 0xe5, 0x61, 0x09, 0x58, 0x72, 0x1d, 0xd5, + 0xe0, 0x0c, 0xc3, 0x91, 0x4f, 0xd4, 0xb2, 0x24, 0x3c, 0x97, 0x13, 0x4e, 0x15, 0xa0, 0x02, 0x2b, + 0x83, 0x6a, 0xf7, 0x20, 0x1a, 0x3d, 0x21, 0x1e, 0xd3, 0x88, 0x13, 0xb4, 0x06, 0x4b, 0xe9, 0x85, + 0x55, 0xc1, 0x62, 0x71, 0xe9, 0xf2, 0x14, 0x75, 0xd9, 0xc0, 0x02, 0x5b, 0x52, 0x7a, 0x96, 0x9c, + 0x32, 0x96, 0xdc, 0xa9, 0x92, 0x27, 0x57, 0xfb, 0x15, 0x8c, 0x46, 0x4e, 0x0b, 0x9a, 0x8a, 0xd1, + 0x16, 0x2c, 0x1e, 0x90, 0x7e, 0x1e, 0x78, 0x75, 0xaa, 0x03, 0x49, 0xf5, 0xc6, 0x26, 0xe9, 0x37, + 0x22, 0xc1, 0xfa, 0x56, 0x6a, 0x83, 0x6e, 0xc1, 0x99, 0x1e, 0xee, 0x26, 0x44, 0x55, 0xa4, 0x5f, + 0x75, 0xc2, 0xef, 0x3d, 0x22, 0x58, 0xe0, 0xde, 0x4d, 0x19, 0x56, 0x46, 0xac, 0xbe, 0x05, 0xcb, + 0x43, 0x0b, 0x54, 0x19, 0xe6, 0x92, 0xde, 0x43, 0xe9, 0x77, 0xed, 0xdc, 0x2f, 0x5d, 0xcb, 0x26, + 0xab, 0xca, 0xdb, 0xa0, 0xf6, 0x3d, 0x80, 0xf3, 0xe3, 0x75, 0x48, 0x8b, 0x98, 0x3e, 0x27, 0xa9, + 0x9f, 0xf6, 0x72, 0x59, 0x52, 0x8a, 0x1a, 0xf9, 0x39, 0x64, 0xe9, 0xdf, 0x9e, 0xba, 0x1c, 0xd9, + 0x59, 0x2c, 0x7f, 0x3e, 0x9a, 0x5b, 0x8a, 0x21, 0x15, 0x5e, 0x6b, 0x35, 0x37, 0x9c, 0xf5, 0x9d, + 0xbd, 0x6d, 0xbb, 0x61, 0x39, 0xcd, 0x6d, 0xa7, 0xfe, 0xa1, 0xdd, 0x68, 0x55, 0x0a, 0xa8, 0x0a, + 0xaf, 0x4f, 0x20, 0xbb, 0x6b, 0xeb, 0x9b, 0x0d, 0xbb, 0x55, 0x01, 0xe8, 0x06, 0x7c, 0x71, 0x14, + 0xdb, 0xd9, 0xb3, 0x73, 0x99, 0x82, 0x6e, 0xc2, 0x97, 0x26, 0xa1, 0xa1, 0xae, 0xb8, 0x7c, 0x07, + 0x5e, 0x9d, 0x78, 0x8c, 0xa8, 0x0c, 0x4b, 0xad, 0xa6, 0xdd, 0xa8, 0x14, 0xd0, 0x0b, 0xf0, 0xea, + 0xdd, 0xa6, 0x65, 0xef, 0xad, 0x6d, 0x39, 0xdb, 0x0d, 0xfb, 0xfd, 0x1d, 0x6b, 0xb3, 0x02, 0xd0, + 0x3c, 0x84, 0xa9, 0xdd, 0xae, 0xd5, 0x78, 0xb7, 0xf9, 0x41, 0x45, 0x59, 0xf9, 0x53, 0x81, 0x57, + 0xd6, 0xe5, 0x4f, 0x9a, 0x6e, 0x6b, 0x6d, 0xb7, 0x89, 0xbe, 0x55, 0xe0, 0xe5, 0x73, 0x53, 0x8e, + 0x6e, 0x3d, 0x73, 0x71, 0xf2, 0x7f, 0xa8, 0x7a, 0x7b, 0x0a, 0x45, 0xf6, 0x2e, 0x6a, 0x3f, 0x80, + 0xc7, 0x3f, 0x29, 0x60, 0xf0, 0x8b, 0x6a, 0xf7, 0x08, 0xd7, 0x03, 0xaa, 0xe7, 0x5c, 0x9d, 0x11, + 0xec, 0xbd, 0xbe, 0xd8, 0x79, 0xf3, 0xbe, 0xab, 0x73, 0xe2, 0x26, 0x8c, 0x84, 0x84, 0xef, 0xeb, + 0x6d, 0xcc, 0x03, 0x57, 0x0f, 0x69, 0x14, 0x08, 0xca, 0x2e, 0xc2, 0x5c, 0xe0, 0xc8, 0xc3, 0xcc, + 0x1b, 0x32, 0x1e, 0xfc, 0xf1, 0xf7, 0x37, 0xca, 0x9d, 0xda, 0x3b, 0x79, 0xeb, 0x30, 0xcf, 0x3e, + 0x45, 0x6e, 0x7e, 0x7a, 0x36, 0xfe, 0xec, 0x42, 0xa3, 0xe1, 0x81, 0xe7, 0xb8, 0x79, 0x19, 0x56, + 0xc1, 0x72, 0x75, 0xe5, 0xf0, 0x11, 0x28, 0xfe, 0xfe, 0x08, 0xbc, 0xf2, 0xf4, 0xed, 0xed, 0xb4, + 0x3f, 0x26, 0xae, 0x78, 0xf0, 0x9b, 0xaa, 0xa8, 0xa0, 0xfe, 0x25, 0x38, 0x3a, 0xd6, 0x0a, 0x4f, + 0x8e, 0xb5, 0xc2, 0xe9, 0xb1, 0x06, 0xbe, 0x18, 0x68, 0xe0, 0xc7, 0x81, 0x06, 0x1e, 0x0f, 0x34, + 0x70, 0x34, 0xd0, 0xc0, 0x5f, 0x03, 0x0d, 0xfc, 0x33, 0xd0, 0x0a, 0xa7, 0x03, 0x0d, 0x7c, 0x75, + 0xa2, 0x15, 0x0e, 0x4f, 0x34, 0x70, 0x74, 0xa2, 0x15, 0x9e, 0x9c, 0x68, 0x85, 0x8f, 0x5a, 0x3e, + 0x8d, 0x0f, 0x7c, 0xa3, 0x47, 0xd3, 0x6f, 0x9a, 0x61, 0x23, 0xe1, 0xa6, 0x1c, 0x74, 0x28, 0x0b, + 0xf5, 0x98, 0xd1, 0x5e, 0xe0, 0x11, 0xa6, 0x0f, 0x61, 0x33, 0x6e, 0xfb, 0xd4, 0x24, 0xf7, 0x45, + 0xde, 0x37, 0xfe, 0xbf, 0x79, 0xb6, 0x2f, 0xc9, 0x06, 0xf2, 0xc6, 0x7f, 0x01, 0x00, 0x00, 0xff, + 0xff, 0x85, 0x96, 0xe3, 0xc8, 0x64, 0x07, 0x00, 0x00, } func (x SIDCounterType) String() string { diff --git a/pbgo/extschema/schema/virtual_network/types.pb.go b/pbgo/extschema/schema/virtual_network/types.pb.go index d0d4fc088..5f8feed86 100644 --- a/pbgo/extschema/schema/virtual_network/types.pb.go +++ b/pbgo/extschema/schema/virtual_network/types.pb.go @@ -2408,226 +2408,227 @@ func init() { } var fileDescriptor_82cb5476c2fb45fd = []byte{ - // 3504 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0x4f, 0x6c, 0x1b, 0x57, - 0x7a, 0xd7, 0xa3, 0x28, 0xfe, 0xf9, 0xf8, 0x7f, 0x44, 0x29, 0x34, 0xed, 0x65, 0x66, 0xe9, 0x74, - 0x57, 0xc9, 0x52, 0x92, 0x45, 0x3b, 0x8a, 0xed, 0xdd, 0x4d, 0x2c, 0xae, 0xbd, 0x91, 0x1c, 0x57, - 0xcb, 0x8e, 0x5c, 0x35, 0x6b, 0x34, 0x65, 0x47, 0xe4, 0x23, 0x35, 0x6b, 0x72, 0x66, 0x3a, 0xef, - 0x89, 0x32, 0x81, 0x0a, 0x0d, 0x8c, 0xf6, 0xa2, 0x43, 0xff, 0xa4, 0x2d, 0x0a, 0xb8, 0xc7, 0x45, - 0x17, 0x85, 0x8f, 0x05, 0x7a, 0x68, 0x87, 0x07, 0x61, 0x8b, 0x02, 0x41, 0x80, 0x16, 0x3a, 0x15, - 0x46, 0x4f, 0x1b, 0xe6, 0x92, 0x55, 0x2f, 0x29, 0xd0, 0xc3, 0xb6, 0x87, 0xa2, 0x78, 0x6f, 0xfe, - 0x70, 0x38, 0xa2, 0x64, 0x45, 0xf5, 0xa2, 0xdd, 0x4d, 0x6e, 0xc3, 0x79, 0xdf, 0xfb, 0x7d, 0xdf, - 0xfb, 0xde, 0xf7, 0x7f, 0x08, 0xaf, 0x76, 0x31, 0x59, 0x50, 0xb4, 0x45, 0x52, 0xdf, 0xc6, 0x1d, - 0x79, 0xb1, 0xab, 0x18, 0x74, 0x47, 0x6e, 0xd7, 0x54, 0x4c, 0x77, 0x35, 0xe3, 0xe1, 0x22, 0xed, - 0xe9, 0x98, 0x2c, 0xe8, 0x86, 0x46, 0x35, 0xe1, 0x2b, 0x16, 0xe9, 0x82, 0x45, 0xba, 0xe0, 0x23, - 0xcd, 0xcf, 0xb7, 0x14, 0xba, 0xbd, 0xb3, 0xb5, 0x50, 0xd7, 0x3a, 0x8b, 0x2d, 0xad, 0xa5, 0x2d, - 0xf2, 0x5d, 0x5b, 0x3b, 0x4d, 0xfe, 0x8b, 0xff, 0xe0, 0x4f, 0x16, 0x5a, 0xfe, 0xa5, 0x51, 0xc6, - 0x2a, 0xa6, 0xf6, 0xc2, 0xc5, 0xd1, 0x05, 0x4d, 0xa7, 0x8a, 0xa6, 0xda, 0x32, 0xe4, 0x2f, 0x8c, - 0x2e, 0x7a, 0xc4, 0xcb, 0x5f, 0xf2, 0x9d, 0x44, 0x6e, 0x2b, 0x0d, 0x99, 0x62, 0x7b, 0x55, 0xf4, - 0x9f, 0x13, 0xef, 0xd6, 0x46, 0xa1, 0x5f, 0x3e, 0x4e, 0x41, 0xbc, 0x0c, 0x8a, 0x3f, 0x44, 0xf0, - 0xf2, 0xa6, 0xd6, 0xa6, 0x2b, 0xb7, 0xd7, 0xab, 0x86, 0xd2, 0x95, 0x29, 0x5e, 0xb7, 0x8e, 0x2e, - 0xe1, 0x35, 0xb5, 0xa9, 0xdd, 0xef, 0xe9, 0x58, 0x10, 0x21, 0xd8, 0x6d, 0xcb, 0x6a, 0x0e, 0x89, - 0x68, 0x2e, 0x51, 0x89, 0xff, 0xfd, 0x4f, 0x0f, 0x26, 0xc3, 0xaf, 0x4d, 0xe5, 0xfe, 0xfb, 0xe5, - 0x39, 0x24, 0xf1, 0x15, 0x61, 0x13, 0x12, 0xaa, 0xd6, 0xc0, 0x35, 0x82, 0xdb, 0xb8, 0x4e, 0x35, - 0x23, 0x17, 0x10, 0xd1, 0x5c, 0xac, 0x2c, 0x2e, 0x8c, 0x6a, 0xf7, 0x9e, 0xbc, 0x85, 0xdb, 0x1b, - 0x36, 0x0d, 0x83, 0xae, 0xa4, 0x9e, 0xed, 0xa1, 0x4f, 0x4d, 0x84, 0x9e, 0xf4, 0x51, 0x10, 0x02, - 0x13, 0x48, 0x8a, 0x33, 0x1c, 0x87, 0xe4, 0x66, 0xe8, 0x23, 0x13, 0x05, 0xd2, 0xa8, 0xf8, 0x23, - 0x04, 0x97, 0xc7, 0x4a, 0x79, 0x1f, 0xab, 0xb2, 0x4a, 0x5d, 0x49, 0x6f, 0xc0, 0x74, 0x03, 0x37, - 0xe5, 0x9d, 0x36, 0xad, 0xe9, 0x16, 0x5d, 0xad, 0xab, 0xe8, 0x5c, 0xf0, 0x68, 0x25, 0xca, 0x04, - 0x0f, 0x1a, 0x01, 0x1d, 0x49, 0x19, 0x9b, 0xca, 0x06, 0xdb, 0x54, 0x74, 0xe1, 0x36, 0x5c, 0x68, - 0x2a, 0xaa, 0xdc, 0xae, 0x8d, 0x03, 0x08, 0xf8, 0x01, 0x66, 0x39, 0xed, 0x6d, 0x3f, 0x4a, 0xf1, - 0x1d, 0x48, 0xde, 0x5e, 0xdf, 0xd8, 0xc0, 0x46, 0x17, 0x1b, 0xe4, 0x9e, 0x42, 0xa8, 0x70, 0x03, - 0x42, 0x0d, 0x95, 0xd4, 0x14, 0x3d, 0x17, 0x12, 0x27, 0xe7, 0xa2, 0x95, 0x22, 0x03, 0x89, 0x7e, - 0x80, 0x42, 0x45, 0x8e, 0xc4, 0x7e, 0x4d, 0x7d, 0x80, 0x02, 0xe9, 0xa0, 0xf3, 0x14, 0x41, 0xd2, - 0x54, 0x43, 0x25, 0x6b, 0x7a, 0xf1, 0x0f, 0x92, 0x70, 0x61, 0xfc, 0xa9, 0xd9, 0x59, 0x2b, 0x90, - 0x51, 0x35, 0x57, 0x4a, 0xb9, 0x5e, 0xc7, 0x84, 0xd8, 0x7a, 0xcf, 0xfa, 0xf4, 0x7e, 0xa7, 0xa3, - 0xd3, 0xde, 0xea, 0x84, 0x94, 0x52, 0x35, 0x1b, 0x68, 0x85, 0x93, 0x0b, 0xf7, 0x60, 0x76, 0x14, - 0xa0, 0x86, 0x55, 0x79, 0xab, 0x8d, 0x1b, 0xb9, 0xc9, 0x53, 0x81, 0xb2, 0xba, 0x17, 0xe6, 0x8e, - 0xb5, 0x47, 0xf8, 0x16, 0x24, 0x3d, 0x12, 0x35, 0x54, 0x92, 0x9b, 0x3a, 0x05, 0x85, 0xdf, 0xb5, - 0x2d, 0xce, 0x6d, 0x95, 0x08, 0x55, 0x88, 0x79, 0xb7, 0x86, 0xf8, 0xd6, 0xf9, 0x85, 0x53, 0xfd, - 0x73, 0x61, 0x54, 0xd9, 0xab, 0x48, 0x02, 0x7d, 0x88, 0x58, 0x87, 0x6c, 0x5d, 0xeb, 0x74, 0x34, - 0xb5, 0x36, 0x6a, 0x9c, 0xe1, 0xf3, 0x1a, 0xa7, 0x60, 0xc1, 0xad, 0x7b, 0x4c, 0x54, 0xf8, 0xd1, - 0x24, 0xc4, 0x0c, 0x5c, 0x53, 0xd4, 0xa6, 0x56, 0xeb, 0xc8, 0x7a, 0x2e, 0x22, 0x4e, 0xce, 0xc5, - 0xca, 0x6f, 0x3f, 0x47, 0xee, 0x13, 0xaf, 0x75, 0xc1, 0xf2, 0xbb, 0x5f, 0x95, 0xf5, 0x3b, 0x2a, - 0x35, 0x7a, 0x95, 0x7e, 0x80, 0xd9, 0x45, 0xec, 0x09, 0x8a, 0x14, 0x43, 0x46, 0x30, 0x8d, 0x72, - 0xb7, 0xb8, 0x9d, 0x3c, 0x41, 0x81, 0xf4, 0xad, 0xc1, 0x4f, 0xfe, 0x71, 0xb2, 0xb5, 0xdf, 0x47, - 0x75, 0x41, 0xfe, 0x57, 0x13, 0xbd, 0x07, 0x11, 0xb9, 0x43, 0x6e, 0xcc, 0xcb, 0x1d, 0x02, 0x91, - 0x46, 0x7d, 0xa9, 0x3c, 0x2f, 0x93, 0x6d, 0x08, 0xab, 0xbd, 0xeb, 0xf3, 0x6a, 0xaf, 0x0e, 0x61, - 0x5d, 0x2e, 0xcf, 0xeb, 0xb2, 0xc1, 0x1e, 0xae, 0x59, 0x0f, 0xa4, 0x75, 0x75, 0x9e, 0x28, 0x2a, - 0x44, 0x48, 0x77, 0xe9, 0xca, 0x3c, 0xf9, 0x41, 0x1d, 0xc2, 0x54, 0x2d, 0xcf, 0xb7, 0x35, 0x15, - 0xc2, 0xb4, 0x77, 0x7d, 0x9e, 0x3e, 0xec, 0x41, 0x78, 0x17, 0x93, 0x79, 0x82, 0x65, 0xc6, 0x2b, - 0xb3, 0xdf, 0x47, 0x09, 0x21, 0x76, 0x64, 0xa2, 0xb0, 0x74, 0x47, 0x54, 0xe5, 0x0e, 0x66, 0x6f, - 0xe3, 0xfb, 0x7d, 0x14, 0x11, 0x42, 0x03, 0x13, 0x05, 0xa4, 0x3b, 0xec, 0x05, 0xec, 0xf7, 0x51, - 0x48, 0x08, 0x7e, 0x68, 0xa2, 0x09, 0xf6, 0x33, 0xb4, 0xdf, 0x67, 0x46, 0xcd, 0x1e, 0xaf, 0xee, - 0xf7, 0xd1, 0x62, 0x7e, 0xfe, 0xc8, 0x44, 0xaf, 0x56, 0xb1, 0x21, 0x4a, 0x77, 0x44, 0x5b, 0x0f, - 0xa2, 0x7d, 0x6b, 0xa2, 0xad, 0x1f, 0x51, 0x97, 0x0d, 0xb9, 0x83, 0x29, 0x36, 0x08, 0xdb, 0xf7, - 0xea, 0x7e, 0x1f, 0xfd, 0x4a, 0xfe, 0xf2, 0xc0, 0x44, 0x4e, 0xac, 0x12, 0x6d, 0xcd, 0x89, 0xb6, - 0xea, 0x18, 0x16, 0xd3, 0x9b, 0xcb, 0x3f, 0x1f, 0x3c, 0x30, 0x11, 0x92, 0xa2, 0x86, 0xa3, 0x4e, - 0xe1, 0x2a, 0xa4, 0xb4, 0x5d, 0x15, 0x1b, 0x35, 0xca, 0x63, 0x46, 0x4d, 0x69, 0xe4, 0xa2, 0xdc, - 0xad, 0x63, 0x4c, 0xa3, 0x21, 0x23, 0x28, 0xa2, 0xb9, 0x5b, 0x52, 0x82, 0xd3, 0xd8, 0x61, 0xa5, - 0x21, 0xfc, 0x73, 0x00, 0x52, 0x0e, 0xbd, 0x73, 0xc3, 0xc0, 0x6f, 0xf8, 0x9d, 0x73, 0xdf, 0xf0, - 0x30, 0x66, 0xb9, 0xb7, 0xfc, 0x0c, 0x9d, 0x7e, 0xcb, 0xdf, 0xde, 0xef, 0xa3, 0x1b, 0xc2, 0x1b, - 0x47, 0x26, 0xba, 0xba, 0x2e, 0x77, 0xb0, 0xa8, 0x35, 0x45, 0xba, 0x8d, 0x45, 0x4b, 0x32, 0x71, - 0x57, 0xa1, 0xdb, 0xe2, 0xee, 0xb6, 0xd6, 0x11, 0xe9, 0xb6, 0x42, 0x5c, 0x1d, 0x2a, 0x44, 0x24, - 0xdb, 0xb2, 0x81, 0x1b, 0x0c, 0x61, 0x7a, 0xbf, 0x8f, 0x52, 0x42, 0x62, 0x60, 0xa2, 0xa8, 0xc5, - 0x5f, 0x5c, 0x6b, 0x9c, 0x7e, 0x59, 0x97, 0xf6, 0xfb, 0x28, 0x97, 0x9f, 0x3d, 0x32, 0x91, 0x60, - 0xef, 0x60, 0x1a, 0x30, 0x3a, 0x32, 0xcb, 0x2f, 0x8c, 0x60, 0x66, 0xbf, 0x8f, 0x32, 0xf9, 0xd4, - 0xc0, 0x44, 0xb1, 0xb5, 0xd1, 0x15, 0xef, 0x0d, 0x24, 0xa8, 0xf7, 0xb8, 0xc2, 0xaf, 0xc3, 0x45, - 0x55, 0xab, 0xc9, 0x8d, 0x2e, 0x36, 0xa8, 0x42, 0x70, 0xad, 0x81, 0x1b, 0x4a, 0x5d, 0xa6, 0xb8, - 0xc1, 0xe2, 0x2c, 0xc9, 0xc5, 0x4f, 0x09, 0x18, 0x01, 0x29, 0xa7, 0x6a, 0x2b, 0xce, 0xce, 0xdb, - 0xce, 0xc6, 0x4d, 0x45, 0x67, 0xc1, 0x23, 0x77, 0x22, 0x66, 0xe2, 0x54, 0xcc, 0x59, 0x79, 0x2c, - 0x62, 0xfe, 0x77, 0x21, 0x39, 0xea, 0x8a, 0x42, 0x1a, 0x26, 0x1f, 0xe2, 0x9e, 0x95, 0x4c, 0x24, - 0xf6, 0x28, 0xdc, 0x87, 0xa9, 0xae, 0xdc, 0xde, 0xc1, 0x76, 0xd8, 0x7d, 0xf3, 0x3c, 0x26, 0x31, - 0xcc, 0xb3, 0x92, 0x05, 0x76, 0x33, 0x70, 0x1d, 0xe5, 0x7f, 0x1f, 0x81, 0x70, 0xdc, 0x4e, 0xc6, - 0x88, 0xf0, 0xee, 0xa8, 0x08, 0x95, 0x73, 0x59, 0xe5, 0x48, 0x12, 0xf5, 0x88, 0x51, 0x99, 0x83, - 0x19, 0x5f, 0x7e, 0xa8, 0x6f, 0x6b, 0x4a, 0x1d, 0x0b, 0xa9, 0x03, 0x13, 0x05, 0x0e, 0x4d, 0x84, - 0x06, 0x26, 0x9a, 0x2c, 0x97, 0xae, 0x56, 0xbe, 0x02, 0xc0, 0xd2, 0x9c, 0x67, 0x79, 0xea, 0xd0, - 0x44, 0x41, 0xb6, 0xfc, 0x7a, 0x69, 0xb9, 0xf2, 0x2a, 0x64, 0x47, 0x6e, 0xc5, 0x21, 0xcc, 0x1c, - 0x98, 0x28, 0x7e, 0x68, 0xa2, 0xd8, 0xc0, 0x44, 0x53, 0x4b, 0xe5, 0xd2, 0xd2, 0xd5, 0xbb, 0xc1, - 0x08, 0x4a, 0x07, 0xee, 0x06, 0x23, 0xc1, 0xf4, 0xd4, 0xdd, 0x60, 0x24, 0x96, 0x8e, 0x17, 0x29, - 0x4c, 0xaf, 0xa8, 0xbd, 0xef, 0xc8, 0x84, 0x6e, 0xae, 0x55, 0xbf, 0xdb, 0xc6, 0x98, 0xf2, 0x04, - 0xf8, 0x1e, 0x24, 0x18, 0x92, 0xdc, 0x6e, 0x6b, 0x75, 0x99, 0xc5, 0x75, 0xc4, 0x55, 0x50, 0x3c, - 0xa6, 0x02, 0xbc, 0x4b, 0x16, 0xbe, 0xb7, 0xf5, 0x03, 0x5c, 0xa7, 0x12, 0x6e, 0xf2, 0xc8, 0x9e, - 0x7d, 0xba, 0x97, 0x91, 0x1b, 0x0d, 0x83, 0x9d, 0xc8, 0xdd, 0x2f, 0xc5, 0xbb, 0x8a, 0xbe, 0xe2, - 0xfc, 0x2a, 0x3e, 0x0e, 0x40, 0x7c, 0x63, 0x7d, 0xe5, 0x7e, 0x55, 0xd3, 0xda, 0x9c, 0xdf, 0x9b, - 0x90, 0x50, 0xf4, 0xee, 0xb5, 0x9a, 0x6e, 0xe0, 0xa6, 0xf2, 0x08, 0x93, 0x1c, 0xe2, 0x09, 0xfd, - 0x02, 0x73, 0x55, 0xf8, 0x00, 0x85, 0x8b, 0x53, 0xc6, 0xe4, 0xcf, 0xd0, 0x30, 0xa3, 0x23, 0x29, - 0xce, 0xe8, 0xab, 0x36, 0xb9, 0xd0, 0xe0, 0xfb, 0x97, 0x87, 0xfb, 0x03, 0x7c, 0xff, 0x5b, 0x47, - 0x7b, 0x97, 0x1b, 0xb8, 0xa3, 0x2d, 0x95, 0x28, 0x26, 0xb4, 0x54, 0x37, 0x68, 0x89, 0x50, 0xb9, - 0xa5, 0xa8, 0xad, 0x12, 0xd1, 0x9a, 0x74, 0x4b, 0x56, 0x1f, 0xd6, 0x3a, 0xb8, 0xee, 0xe5, 0xf2, - 0x7e, 0xc0, 0xcf, 0x65, 0xd9, 0xe1, 0x72, 0xf3, 0xde, 0x47, 0x26, 0x5a, 0x85, 0x22, 0x24, 0xd6, - 0xaa, 0xdd, 0x6b, 0xa2, 0xf3, 0xba, 0x92, 0xf1, 0x09, 0x9f, 0x9e, 0xb2, 0x69, 0x96, 0xfd, 0x34, - 0xcb, 0x1e, 0x9a, 0xe2, 0xdf, 0x4e, 0x42, 0xda, 0x51, 0xc2, 0x86, 0x42, 0x31, 0x57, 0xc4, 0xdf, - 0x04, 0x58, 0xa2, 0x67, 0x19, 0x55, 0x95, 0x69, 0x4d, 0xd7, 0xb4, 0x36, 0x57, 0x45, 0xac, 0xbc, - 0xf2, 0x1c, 0xeb, 0xf3, 0x23, 0x2d, 0xf0, 0x4c, 0xaa, 0xca, 0x94, 0xbd, 0xb4, 0x22, 0xe1, 0x87, - 0x63, 0x23, 0x61, 0xe8, 0x09, 0x9a, 0x4c, 0xbf, 0xcf, 0xc3, 0x52, 0x69, 0xbf, 0x8f, 0xe6, 0x84, - 0xaf, 0x1d, 0x99, 0xa8, 0xe8, 0x0d, 0x85, 0x4c, 0x1e, 0xb1, 0xa9, 0x19, 0xfc, 0x07, 0x93, 0x4b, - 0x64, 0x72, 0xf9, 0x22, 0x1f, 0x63, 0x27, 0xae, 0xdb, 0x79, 0xeb, 0xe4, 0xc8, 0x57, 0xd8, 0xef, - 0xa3, 0x7c, 0x3e, 0x77, 0x64, 0xa2, 0x2c, 0x93, 0x98, 0x23, 0xf9, 0x32, 0x12, 0x07, 0xcd, 0x73, - 0x50, 0x4e, 0x52, 0xb5, 0x99, 0x79, 0x23, 0x9f, 0x55, 0xca, 0xda, 0xa7, 0xcb, 0xb7, 0x21, 0x73, - 0xec, 0xb4, 0x63, 0xfc, 0x79, 0x65, 0xd4, 0x9f, 0xbf, 0x71, 0x46, 0x8d, 0xfa, 0x1c, 0xb7, 0xb8, - 0x07, 0x19, 0x67, 0x69, 0xe8, 0x30, 0xdb, 0x30, 0xed, 0xde, 0xd8, 0x0b, 0x74, 0x9b, 0x0c, 0xb1, - 0xcf, 0x34, 0xf4, 0x9d, 0x6f, 0xc2, 0xc5, 0x0d, 0xa3, 0xbb, 0x6c, 0xc7, 0x97, 0x75, 0x52, 0x75, - 0x95, 0xc7, 0x05, 0xb9, 0x04, 0x51, 0x56, 0x3d, 0x10, 0x5d, 0xae, 0x63, 0xfb, 0xf0, 0xc3, 0x17, - 0xc5, 0x83, 0x18, 0xcc, 0x56, 0xb1, 0xc1, 0x8c, 0xc4, 0x03, 0xc2, 0x37, 0xae, 0x42, 0x56, 0xd5, - 0x6a, 0x2e, 0xa9, 0xa3, 0x86, 0xe7, 0x94, 0xbd, 0x82, 0xaa, 0xad, 0x3b, 0x5b, 0x6c, 0x34, 0xe1, - 0x77, 0x60, 0x96, 0x18, 0xdd, 0x65, 0x07, 0xa1, 0xa6, 0x92, 0x1a, 0xbf, 0x61, 0x62, 0x57, 0xbe, - 0x37, 0x9f, 0xa7, 0xf8, 0x93, 0x8f, 0xb7, 0x3a, 0x21, 0x4d, 0x93, 0x63, 0xcb, 0x44, 0xb8, 0x05, - 0x69, 0x45, 0xa5, 0xd8, 0x68, 0x32, 0xc9, 0x15, 0x9d, 0x37, 0x16, 0xa7, 0x17, 0xc8, 0x49, 0x97, - 0x7e, 0x4d, 0x67, 0x3d, 0x4a, 0x09, 0x62, 0xb2, 0xda, 0xab, 0xcb, 0x84, 0xf2, 0xcd, 0x21, 0x5f, - 0x57, 0xc2, 0xca, 0x5f, 0x7b, 0x9d, 0x51, 0xff, 0x16, 0x44, 0x9b, 0xec, 0xee, 0x39, 0xad, 0x55, - 0xf3, 0x96, 0x9f, 0x73, 0xaa, 0x31, 0x61, 0xb6, 0x12, 0x7b, 0xb6, 0x87, 0x98, 0x3d, 0xb3, 0x4a, - 0x78, 0x15, 0x49, 0x11, 0x8e, 0xc9, 0xf0, 0xdf, 0x81, 0xd9, 0x91, 0xf3, 0x0c, 0xa3, 0x41, 0xf4, - 0xd4, 0x8c, 0x3b, 0xed, 0x39, 0x95, 0xe3, 0x0e, 0xc2, 0x6f, 0x40, 0x92, 0x28, 0xd4, 0x1b, 0x52, - 0x80, 0x83, 0x2c, 0x7e, 0xce, 0x90, 0xb2, 0x1a, 0x90, 0xe2, 0x0c, 0xc8, 0x05, 0x6e, 0x41, 0xca, - 0xd2, 0xc2, 0x10, 0x39, 0xc6, 0x91, 0xaf, 0x9c, 0x11, 0xf9, 0x04, 0x4d, 0x04, 0xa4, 0x04, 0xc7, - 0x75, 0x19, 0x7d, 0x0f, 0xa6, 0x48, 0x5b, 0xa9, 0x63, 0xbb, 0x86, 0x39, 0x8b, 0x3f, 0xcd, 0x3c, - 0xdd, 0x13, 0x46, 0xac, 0x90, 0x03, 0x48, 0x16, 0x8e, 0xf0, 0x2e, 0x84, 0x38, 0x07, 0x56, 0xc1, - 0x4c, 0x9e, 0x11, 0xf1, 0xd2, 0xd3, 0xbd, 0x29, 0xbe, 0xc9, 0xcd, 0x0f, 0xb7, 0x9c, 0xa7, 0x1c, - 0x92, 0x6c, 0x3c, 0x61, 0x1b, 0x5e, 0xb2, 0xd3, 0xb9, 0xc3, 0xd8, 0xa0, 0xb2, 0xd1, 0x62, 0xac, - 0x92, 0x9c, 0x55, 0xde, 0xc7, 0x4a, 0xd2, 0x76, 0x28, 0xbe, 0xcf, 0x49, 0x2a, 0xd9, 0xe3, 0x2d, - 0x6b, 0x0e, 0x49, 0x33, 0x16, 0xa0, 0x53, 0xd4, 0xd8, 0x70, 0xc2, 0x7b, 0x90, 0xe1, 0xb7, 0xad, - 0x62, 0x3a, 0xe4, 0x91, 0x3a, 0x27, 0x8f, 0xb4, 0x03, 0xe5, 0xc2, 0xeb, 0x70, 0x11, 0xb3, 0x77, - 0xba, 0xc1, 0xea, 0xbe, 0x63, 0x87, 0x49, 0x9f, 0x93, 0xd1, 0x85, 0x21, 0xa8, 0xff, 0x40, 0xdf, - 0x87, 0x14, 0x7e, 0xa4, 0x6b, 0x86, 0xe7, 0x38, 0x99, 0x73, 0x72, 0x49, 0x5a, 0x40, 0x2e, 0xf4, - 0x2d, 0x98, 0x31, 0x70, 0x47, 0x63, 0x4e, 0xa0, 0x34, 0x6a, 0x84, 0xca, 0x94, 0xd4, 0xf4, 0x36, - 0x56, 0x73, 0x02, 0x9f, 0xbb, 0x24, 0x98, 0xe9, 0x71, 0x5f, 0x7f, 0x2d, 0x90, 0xfb, 0x6d, 0x49, - 0xb0, 0x68, 0x37, 0x94, 0xc6, 0x06, 0xa3, 0xac, 0xb6, 0xb1, 0x5a, 0xb9, 0x0c, 0xe9, 0x61, 0x6c, - 0x3c, 0xa9, 0x52, 0xfb, 0x3a, 0x08, 0xce, 0x88, 0xc3, 0x57, 0x88, 0x39, 0x15, 0xdb, 0xd4, 0xeb, - 0xa5, 0xe5, 0xd2, 0x1b, 0x95, 0xaf, 0x43, 0x7a, 0x98, 0x2e, 0x6c, 0xb2, 0xe9, 0x03, 0x13, 0x45, - 0x0f, 0x4d, 0x14, 0x19, 0x98, 0x28, 0x7c, 0xa3, 0xb4, 0x74, 0xa5, 0xb4, 0xb4, 0xe4, 0xab, 0xd8, - 0x22, 0xe9, 0x68, 0xf1, 0x0f, 0x11, 0x64, 0xd7, 0xf1, 0x23, 0xba, 0xaa, 0xe9, 0x6b, 0x8e, 0xb3, - 0xf3, 0x69, 0x48, 0x17, 0xc0, 0xf5, 0x7e, 0x62, 0x57, 0x0d, 0x67, 0xb1, 0xeb, 0xf2, 0xd3, 0xbd, - 0x8c, 0x73, 0xbd, 0x2e, 0xc0, 0xb0, 0x06, 0x1a, 0xce, 0x4e, 0x3c, 0xfa, 0xf5, 0x70, 0x2a, 0xfe, - 0x7b, 0x10, 0xa6, 0x99, 0x9e, 0x94, 0x3a, 0xbf, 0x97, 0x4d, 0x05, 0xef, 0xf2, 0x84, 0xb2, 0x01, - 0x31, 0x45, 0xf7, 0x57, 0x74, 0xe5, 0x9f, 0x99, 0x68, 0x62, 0x4c, 0x55, 0x17, 0xfa, 0x80, 0x55, - 0x21, 0x81, 0x13, 0x98, 0xe9, 0x6e, 0xa1, 0xb7, 0x00, 0xc0, 0xea, 0x52, 0x2b, 0x51, 0xf2, 0x7c, - 0x12, 0xad, 0x24, 0x1c, 0xcc, 0xa0, 0x11, 0x78, 0x84, 0x56, 0x27, 0xa4, 0xa8, 0xa2, 0xaf, 0x58, - 0x14, 0xc2, 0xbb, 0x10, 0x75, 0x45, 0xcd, 0x05, 0x3f, 0x57, 0x36, 0x3e, 0xa6, 0x13, 0x8e, 0xec, - 0xfc, 0x10, 0xde, 0x82, 0x94, 0x73, 0xd7, 0x2d, 0x99, 0xe2, 0x5d, 0xb9, 0x77, 0x6a, 0xc6, 0x99, - 0x90, 0x92, 0x36, 0xf9, 0xdb, 0x16, 0xb5, 0xb0, 0x0a, 0x53, 0x32, 0xa5, 0x06, 0xe1, 0xc3, 0xab, - 0x64, 0xf9, 0xd2, 0x38, 0x23, 0x5f, 0xa1, 0xd4, 0x9a, 0x97, 0x8c, 0x37, 0x73, 0x0b, 0xe0, 0xe6, - 0x3f, 0xa0, 0x1f, 0x9b, 0xe8, 0x32, 0xa4, 0x21, 0xb6, 0x56, 0x75, 0x4b, 0x4e, 0x01, 0x2d, 0x41, - 0x0a, 0x22, 0xcc, 0x54, 0xc4, 0x55, 0x4d, 0x17, 0x26, 0xcb, 0xa5, 0xe5, 0x8f, 0x4c, 0xf4, 0x17, - 0x08, 0x0a, 0x23, 0x74, 0x95, 0xd4, 0xc8, 0x3d, 0xa5, 0xa7, 0xe0, 0xc1, 0x70, 0xd7, 0x6b, 0xeb, - 0x70, 0x0f, 0xe2, 0x5e, 0x9d, 0x43, 0xce, 0xa3, 0x51, 0x21, 0x96, 0x8f, 0xba, 0x46, 0x08, 0xc5, - 0x63, 0x1a, 0x29, 0xa7, 0xec, 0x31, 0x9e, 0x68, 0x1f, 0x1a, 0x2e, 0x00, 0xb0, 0x33, 0x29, 0x5b, - 0x3b, 0x14, 0x93, 0x4a, 0xcc, 0x56, 0x41, 0x3a, 0x78, 0x05, 0x55, 0x5e, 0x81, 0x94, 0x8a, 0x1f, - 0xd1, 0xda, 0xb6, 0x36, 0xe2, 0x39, 0x93, 0x87, 0x26, 0x0a, 0x30, 0xcf, 0xb9, 0x5a, 0xba, 0x56, - 0x7a, 0xfd, 0x6e, 0x30, 0x12, 0x48, 0x4f, 0x16, 0xff, 0x23, 0x08, 0x33, 0x96, 0xcd, 0x6d, 0x2e, - 0x9f, 0xc7, 0xea, 0xec, 0x2a, 0xff, 0xac, 0x56, 0xb7, 0x38, 0xc6, 0xea, 0x92, 0x0e, 0x26, 0x83, - 0x43, 0x5f, 0x9a, 0xdd, 0x17, 0xc1, 0xec, 0xfe, 0x14, 0xc1, 0xec, 0x88, 0xd9, 0xf1, 0xd1, 0x28, - 0xb7, 0xbb, 0x1e, 0x24, 0x08, 0x5f, 0xa9, 0x19, 0x7c, 0xc1, 0x0e, 0xc0, 0xd7, 0x9e, 0x57, 0x09, - 0x8d, 0x33, 0xe2, 0x4a, 0xc1, 0x55, 0x7b, 0x7a, 0xac, 0x6d, 0xc6, 0xc9, 0x30, 0xde, 0x92, 0xe2, - 0x9f, 0x07, 0x60, 0x66, 0xa5, 0x4e, 0x95, 0x2e, 0xae, 0x56, 0xa4, 0xaa, 0xd6, 0x56, 0xea, 0x0a, - 0xb6, 0x9a, 0x81, 0xc7, 0x08, 0xf2, 0x4d, 0xcd, 0xd8, 0x95, 0x8d, 0x46, 0x4d, 0x37, 0xb4, 0x47, - 0xbd, 0x9a, 0xbe, 0x65, 0xd4, 0x74, 0x9b, 0xe4, 0x73, 0xe4, 0x88, 0xaf, 0x3e, 0xdd, 0xcb, 0xf2, - 0x6d, 0xbd, 0xda, 0x96, 0x4c, 0x70, 0x83, 0x1f, 0x52, 0x51, 0x5b, 0xae, 0x9c, 0xa2, 0xf4, 0x92, - 0xcd, 0xa8, 0xca, 0xf8, 0x54, 0xb7, 0x0c, 0x47, 0x10, 0x61, 0x17, 0xb2, 0x8e, 0x4d, 0x8f, 0x70, - 0x0f, 0xbc, 0x48, 0xee, 0x82, 0xcd, 0xc2, 0xc3, 0xb8, 0xf8, 0x9f, 0x01, 0x48, 0x57, 0x9d, 0x81, - 0xe3, 0xe6, 0x5a, 0x95, 0xab, 0xe4, 0x87, 0x01, 0x48, 0xda, 0x53, 0x47, 0x96, 0xa2, 0x3b, 0xb2, - 0x7e, 0xc6, 0x06, 0xdb, 0x8f, 0x64, 0xcf, 0x1a, 0x37, 0x15, 0xdd, 0x1d, 0x35, 0xfe, 0xdd, 0x29, - 0xa3, 0x46, 0xfe, 0x69, 0xe2, 0x09, 0x0a, 0xbd, 0xc6, 0xdb, 0x09, 0xd6, 0xcf, 0xce, 0xed, 0xf7, - 0xd1, 0x2b, 0x42, 0xf1, 0xc8, 0x44, 0x85, 0x31, 0x83, 0x47, 0xa7, 0xdf, 0xde, 0x5c, 0xab, 0x9e, - 0x6f, 0xc6, 0x98, 0xdd, 0xef, 0xa3, 0x74, 0x3e, 0x79, 0x64, 0x22, 0xb0, 0x77, 0xd8, 0x50, 0xf6, - 0xc2, 0xc0, 0x44, 0xb0, 0xa6, 0x8b, 0xb6, 0x7f, 0x49, 0x71, 0xea, 0x39, 0x4e, 0xfe, 0x2d, 0xc8, - 0x1c, 0x3b, 0xde, 0x98, 0x8e, 0x3a, 0xeb, 0xed, 0xa8, 0xa3, 0xde, 0x26, 0x79, 0x15, 0x84, 0x0d, - 0xdc, 0xea, 0x60, 0x95, 0x7a, 0x7b, 0xcc, 0x32, 0xb8, 0x75, 0xa6, 0xfb, 0x35, 0x84, 0xc1, 0x45, - 0x2a, 0x61, 0xfb, 0x7b, 0x80, 0x94, 0x72, 0x08, 0xec, 0x2f, 0x1f, 0xc5, 0x7f, 0x4a, 0x41, 0xf2, - 0xed, 0xb6, 0xb6, 0x25, 0xb7, 0x37, 0x74, 0x5c, 0xe7, 0x30, 0x77, 0x20, 0x4c, 0x76, 0xb6, 0x54, - 0x56, 0x20, 0x5a, 0x46, 0x74, 0xd1, 0x77, 0x77, 0x6b, 0xfa, 0x06, 0x5f, 0xe7, 0xd6, 0x93, 0x7c, - 0xb6, 0xe7, 0x09, 0xf6, 0x48, 0x72, 0xf6, 0x0a, 0x77, 0x21, 0x48, 0x7b, 0x3a, 0xe6, 0xf1, 0x3c, - 0x59, 0xfe, 0xaa, 0x0f, 0x63, 0xd3, 0xba, 0x7f, 0x8f, 0xf8, 0x95, 0x69, 0x06, 0x93, 0x7c, 0x8c, - 0x62, 0xf9, 0xe8, 0x04, 0x0a, 0x4c, 0x06, 0xc3, 0x51, 0x88, 0x4b, 0x1c, 0x43, 0x78, 0xe0, 0x77, - 0xff, 0x29, 0x2e, 0x58, 0xc1, 0x07, 0xea, 0xa9, 0x93, 0xac, 0x2e, 0xc5, 0x15, 0xec, 0xaf, 0x4e, - 0xf4, 0x6f, 0xe1, 0xdb, 0x90, 0x6c, 0x71, 0x05, 0xb8, 0x3d, 0x79, 0xf8, 0xd4, 0x88, 0x9f, 0xb0, - 0xa8, 0x9d, 0x76, 0xfc, 0x36, 0x08, 0xbc, 0xfd, 0x6b, 0x6b, 0x75, 0x0f, 0x44, 0xe4, 0x54, 0x88, - 0x34, 0xdb, 0x71, 0x8f, 0x6d, 0x70, 0x50, 0x7e, 0x0d, 0x2e, 0x78, 0x50, 0x14, 0x95, 0x28, 0x8d, - 0xe1, 0x8c, 0x20, 0x7a, 0x2a, 0xd8, 0xac, 0x0b, 0xb6, 0xc6, 0xb7, 0x39, 0x90, 0xdf, 0x85, 0xa4, - 0x0f, 0x07, 0x4e, 0xc6, 0x71, 0x2d, 0x84, 0x1d, 0x50, 0x19, 0xc1, 0x79, 0x00, 0xb1, 0x36, 0x6e, - 0xc9, 0xf5, 0x5e, 0x8d, 0x5f, 0x67, 0xec, 0xac, 0xd7, 0x99, 0x75, 0xaa, 0xfe, 0xd8, 0x63, 0x14, - 0xc9, 0x87, 0xac, 0x2b, 0x5d, 0x9d, 0x90, 0xc0, 0x42, 0xb3, 0xa7, 0x22, 0x29, 0x67, 0x4a, 0xeb, - 0x08, 0x99, 0x38, 0x9b, 0x90, 0x49, 0x7d, 0x64, 0x10, 0x2c, 0xd4, 0x21, 0xee, 0xed, 0x47, 0x73, - 0x49, 0x0e, 0xf3, 0xfa, 0xf3, 0xa3, 0xce, 0x98, 0x61, 0x8d, 0x97, 0x4f, 0xcc, 0x33, 0x0f, 0x11, - 0x30, 0xa4, 0x88, 0xe5, 0x76, 0x2e, 0x9f, 0x97, 0x38, 0x9f, 0xa5, 0xe7, 0xe5, 0xa1, 0x63, 0xce, - 0x3a, 0x72, 0x16, 0x32, 0xb2, 0x2c, 0xfc, 0x1e, 0xe4, 0x7d, 0x5a, 0xa9, 0x0d, 0x67, 0x78, 0xb9, - 0x14, 0xe7, 0x78, 0xfd, 0xbc, 0x1f, 0x71, 0x86, 0xb1, 0x20, 0x37, 0xaa, 0xc2, 0xe1, 0x28, 0x48, - 0xf8, 0x3e, 0xc0, 0x30, 0x88, 0xe7, 0x32, 0x67, 0x1a, 0x67, 0xf8, 0x03, 0xf8, 0xf0, 0x80, 0x48, - 0x8a, 0xba, 0xd1, 0x4f, 0x78, 0xe0, 0x1d, 0xed, 0x08, 0xe7, 0x1e, 0xed, 0x78, 0xc0, 0x87, 0x63, - 0x9d, 0x1b, 0x10, 0xf7, 0x8e, 0x75, 0x72, 0xd9, 0x53, 0x87, 0x39, 0x31, 0xcf, 0x30, 0x67, 0xcc, - 0x10, 0x67, 0xe6, 0xe7, 0x36, 0xc4, 0x99, 0xfd, 0xb9, 0x0c, 0x71, 0xee, 0xc1, 0xb4, 0xd2, 0xf1, - 0xb6, 0xf7, 0x35, 0xc2, 0xca, 0xd0, 0x4f, 0xc3, 0xbc, 0x44, 0xbf, 0x68, 0xeb, 0x6b, 0x6c, 0xc1, - 0x99, 0xb1, 0x36, 0xda, 0xed, 0xfc, 0x06, 0x35, 0x08, 0x43, 0x1b, 0x1d, 0x16, 0x58, 0x68, 0x3f, - 0x3d, 0x0b, 0xda, 0xc8, 0x70, 0x80, 0xa3, 0xc9, 0x00, 0x96, 0x12, 0x0c, 0xdc, 0x24, 0xb9, 0xa3, - 0x30, 0x0f, 0xde, 0xfe, 0xd2, 0x78, 0xb4, 0x28, 0xb9, 0xec, 0x8c, 0x83, 0xfc, 0xac, 0xbc, 0x53, - 0x21, 0xcb, 0x94, 0x24, 0xdc, 0x24, 0xc2, 0x16, 0x44, 0xf9, 0xec, 0x89, 0xb1, 0xc8, 0xfd, 0xdb, - 0x59, 0x38, 0x7c, 0x6d, 0xec, 0x08, 0xcb, 0xcf, 0x0e, 0x49, 0x11, 0x6b, 0xb4, 0x85, 0x9b, 0x95, - 0x79, 0x48, 0x3a, 0xb4, 0x76, 0x29, 0x7b, 0xf1, 0xc0, 0x44, 0xe1, 0x43, 0x13, 0x85, 0x06, 0x26, - 0x8a, 0xbd, 0x51, 0xba, 0x5e, 0xba, 0x51, 0x5a, 0xba, 0x56, 0x5a, 0x5a, 0x62, 0x10, 0x95, 0x6f, - 0x8c, 0x1d, 0x57, 0xcc, 0x1c, 0x98, 0x28, 0x73, 0x68, 0xa2, 0x34, 0xff, 0x6e, 0xf4, 0x46, 0x69, - 0xe9, 0xfa, 0x67, 0x8c, 0x78, 0x6e, 0xcc, 0xc8, 0x82, 0x45, 0xd0, 0xec, 0xa1, 0x89, 0xa6, 0x07, - 0x26, 0x8a, 0x94, 0xaf, 0x94, 0xca, 0x4b, 0xa5, 0x72, 0xd9, 0x37, 0xb3, 0x08, 0xa5, 0xc3, 0x77, - 0x83, 0x91, 0x74, 0x3a, 0x73, 0x37, 0x18, 0x99, 0x4e, 0x67, 0x8b, 0x7f, 0x16, 0x82, 0xe4, 0x77, - 0x0c, 0x2c, 0x53, 0xec, 0xe6, 0xf3, 0x5f, 0xd6, 0x04, 0x77, 0xfb, 0x7c, 0x89, 0xc9, 0x97, 0x82, - 0x1e, 0xbc, 0xc0, 0xc4, 0xe1, 0xcf, 0x17, 0xbb, 0xfe, 0xb2, 0x25, 0xce, 0xed, 0xb2, 0x7c, 0xa6, - 0xae, 0xc5, 0xd7, 0xb3, 0x3c, 0xd9, 0x0b, 0x7d, 0x4b, 0xd5, 0x54, 0xfc, 0xe6, 0x59, 0x6a, 0x9a, - 0xbf, 0x44, 0x90, 0xb6, 0x39, 0x77, 0x97, 0x1d, 0xe6, 0xa9, 0xff, 0x45, 0xcb, 0xf4, 0xcd, 0xb3, - 0x7f, 0xea, 0x3b, 0x2e, 0x5b, 0x92, 0x8c, 0x34, 0x75, 0x37, 0xef, 0x7c, 0xf4, 0xa6, 0xaf, 0xe6, - 0xfc, 0xb1, 0x89, 0xae, 0xc0, 0x05, 0xc8, 0xda, 0xb7, 0xe5, 0xfe, 0x37, 0x82, 0xdf, 0x10, 0x5a, - 0x86, 0x69, 0x48, 0x58, 0x72, 0x89, 0xf6, 0x01, 0x03, 0x4b, 0xe5, 0xca, 0x2b, 0xc7, 0xdc, 0x51, - 0x78, 0xfc, 0x5f, 0xc8, 0xf7, 0xce, 0x72, 0x91, 0xe2, 0xbf, 0x84, 0x20, 0x25, 0x61, 0xbd, 0x2d, - 0xd7, 0xbf, 0xf4, 0x8b, 0xb3, 0xf9, 0xc5, 0x5b, 0x9f, 0xab, 0x34, 0x1b, 0x53, 0x91, 0x7d, 0xe9, - 0x58, 0x5f, 0x04, 0xc7, 0xfa, 0xa3, 0x30, 0xc4, 0xde, 0xc6, 0xf4, 0x97, 0xde, 0xa9, 0xee, 0x9e, - 0xb3, 0x0b, 0xe2, 0x1f, 0xd4, 0x7f, 0x91, 0x5c, 0xeb, 0x37, 0x8f, 0xf7, 0x38, 0xe9, 0x73, 0xf6, - 0x38, 0x63, 0x5a, 0x9b, 0xff, 0x33, 0xc7, 0xdd, 0x79, 0xc1, 0x7e, 0x3b, 0xf3, 0xff, 0xd5, 0x23, - 0x2b, 0x7f, 0x82, 0x0e, 0x3f, 0x2e, 0x4c, 0x3c, 0xfb, 0xb8, 0x30, 0xf1, 0xd9, 0xc7, 0x05, 0xf4, - 0xfe, 0xa0, 0x80, 0xfe, 0x7a, 0x50, 0x40, 0x1f, 0x0e, 0x0a, 0xe8, 0x70, 0x50, 0x40, 0xcf, 0x06, - 0x05, 0xf4, 0x93, 0x41, 0x01, 0x7d, 0x3a, 0x28, 0x4c, 0x7c, 0x36, 0x28, 0xa0, 0x3f, 0xfe, 0xa4, - 0x30, 0x71, 0xf0, 0x49, 0x01, 0x1d, 0x7e, 0x52, 0x98, 0x78, 0xf6, 0x49, 0x61, 0xe2, 0xc1, 0x46, - 0x4b, 0xd3, 0x1f, 0xb6, 0x16, 0xba, 0x5a, 0x9b, 0x62, 0xc3, 0x90, 0x17, 0x76, 0xc8, 0x22, 0x7f, - 0x68, 0x6a, 0x46, 0x67, 0x5e, 0x37, 0xb4, 0xae, 0xd2, 0xc0, 0xc6, 0xbc, 0xb3, 0xbc, 0xa8, 0x6f, - 0xb5, 0xb4, 0x45, 0xfc, 0x88, 0xda, 0x7f, 0xd3, 0x1e, 0xff, 0xbf, 0xf5, 0xad, 0x10, 0xff, 0xcb, - 0xf6, 0xd5, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xbf, 0x90, 0xbe, 0x7c, 0xdf, 0x2e, 0x00, 0x00, + // 3509 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0x5b, 0x6c, 0x1b, 0x57, + 0x7a, 0xd6, 0xa1, 0x28, 0x5e, 0x7e, 0xde, 0x47, 0x94, 0x42, 0xd3, 0x5e, 0x66, 0x96, 0x4e, 0x77, + 0x95, 0x2c, 0x25, 0x99, 0xb4, 0xa3, 0xd8, 0xee, 0x6e, 0x62, 0x71, 0xe5, 0x8d, 0xe4, 0xb8, 0x5a, + 0x76, 0xe4, 0xaa, 0x59, 0xa3, 0xe9, 0x74, 0x44, 0x1e, 0x52, 0xb3, 0x26, 0x67, 0xa6, 0x33, 0x47, + 0x94, 0x09, 0x54, 0x68, 0x10, 0xb4, 0x28, 0xa0, 0x87, 0x5e, 0x52, 0x14, 0x45, 0xfd, 0x54, 0x60, + 0xd1, 0x45, 0xe1, 0xc7, 0x02, 0x7d, 0x68, 0x87, 0x0f, 0xc2, 0x16, 0x05, 0x82, 0x00, 0x2d, 0xf4, + 0x68, 0xb4, 0x2f, 0x1b, 0xe6, 0x25, 0xab, 0xbe, 0xa4, 0x40, 0x1f, 0xb6, 0x7d, 0x28, 0x8a, 0x73, + 0xe6, 0xc2, 0xe1, 0x88, 0xba, 0x58, 0xf5, 0xa2, 0xdd, 0x4d, 0xde, 0x86, 0x73, 0xfe, 0xf3, 0xfd, + 0xff, 0xf9, 0xcf, 0x7f, 0x1f, 0xc2, 0xab, 0x5d, 0x6c, 0x2c, 0xc8, 0xea, 0xa2, 0x51, 0xdf, 0xc6, + 0x1d, 0x69, 0xb1, 0x2b, 0xeb, 0x64, 0x47, 0x6a, 0x8b, 0x0a, 0x26, 0xbb, 0xaa, 0xfe, 0x68, 0x91, + 0xf4, 0x34, 0x6c, 0x2c, 0x68, 0xba, 0x4a, 0x54, 0xee, 0x2b, 0x16, 0xe9, 0x82, 0x45, 0xba, 0xe0, + 0x23, 0xcd, 0xcf, 0xb7, 0x64, 0xb2, 0xbd, 0xb3, 0xb5, 0x50, 0x57, 0x3b, 0x8b, 0x2d, 0xb5, 0xa5, + 0x2e, 0xb2, 0x5d, 0x5b, 0x3b, 0x4d, 0xf6, 0x8b, 0xfd, 0x60, 0x4f, 0x16, 0x5a, 0xfe, 0xa5, 0x51, + 0xc6, 0x0a, 0x26, 0xf6, 0xc2, 0xe5, 0xd1, 0x05, 0x55, 0x23, 0xb2, 0xaa, 0xd8, 0x32, 0xe4, 0x2f, + 0x8d, 0x2e, 0x7a, 0xc4, 0xcb, 0x5f, 0xf1, 0x9d, 0x44, 0x6a, 0xcb, 0x0d, 0x89, 0x60, 0x7b, 0x95, + 0xf7, 0x9f, 0x13, 0xef, 0x8a, 0xa3, 0xd0, 0x2f, 0x1f, 0xa7, 0x30, 0xbc, 0x0c, 0x8a, 0x3f, 0x40, + 0xf0, 0xf2, 0xa6, 0xda, 0x26, 0xcb, 0x2b, 0xeb, 0x35, 0x5d, 0xee, 0x4a, 0x04, 0xaf, 0x5b, 0x47, + 0x17, 0xf0, 0x9a, 0xd2, 0x54, 0x1f, 0xf4, 0x34, 0xcc, 0xf1, 0x10, 0xec, 0xb6, 0x25, 0x25, 0x87, + 0x78, 0x34, 0x97, 0xa8, 0xc6, 0xff, 0xfe, 0x27, 0x07, 0x93, 0xe1, 0xd7, 0xa6, 0x72, 0xff, 0xfd, + 0xf2, 0x1c, 0x12, 0xd8, 0x0a, 0xb7, 0x09, 0x09, 0x45, 0x6d, 0x60, 0xd1, 0xc0, 0x6d, 0x5c, 0x27, + 0xaa, 0x9e, 0x0b, 0xf0, 0x68, 0x2e, 0x56, 0xe1, 0x17, 0x46, 0xb5, 0x7b, 0x5f, 0xda, 0xc2, 0xed, + 0x0d, 0x9b, 0x86, 0x42, 0x57, 0x53, 0xcf, 0xf6, 0xd0, 0x67, 0x26, 0x42, 0x4f, 0xfa, 0x28, 0x08, + 0x81, 0x09, 0x24, 0xc4, 0x29, 0x8e, 0x43, 0x72, 0x3b, 0xf4, 0xb1, 0x89, 0x02, 0x69, 0x54, 0xfc, + 0x21, 0x82, 0xab, 0x63, 0xa5, 0x7c, 0x80, 0x15, 0x49, 0x21, 0xae, 0xa4, 0xb7, 0x60, 0xba, 0x81, + 0x9b, 0xd2, 0x4e, 0x9b, 0x88, 0x9a, 0x45, 0x27, 0x76, 0x65, 0x8d, 0x09, 0x1e, 0xad, 0x46, 0xa9, + 0xe0, 0x41, 0x3d, 0xa0, 0x21, 0x21, 0x63, 0x53, 0xd9, 0x60, 0x9b, 0xb2, 0xc6, 0xad, 0xc0, 0xa5, + 0xa6, 0xac, 0x48, 0x6d, 0x71, 0x1c, 0x40, 0xc0, 0x0f, 0x30, 0xcb, 0x68, 0x57, 0xfc, 0x28, 0xc5, + 0x77, 0x20, 0xb9, 0xb2, 0xbe, 0xb1, 0x81, 0xf5, 0x2e, 0xd6, 0x8d, 0xfb, 0xb2, 0x41, 0xb8, 0x5b, + 0x10, 0x6a, 0x28, 0x86, 0x28, 0x6b, 0xb9, 0x10, 0x3f, 0x39, 0x17, 0xad, 0x16, 0x29, 0x48, 0xf4, + 0x43, 0x14, 0x2a, 0x32, 0x24, 0xfa, 0x6b, 0xea, 0x43, 0x14, 0x48, 0x07, 0x9d, 0xa7, 0x08, 0x12, + 0xa6, 0x1a, 0x8a, 0xb1, 0xa6, 0x15, 0x7f, 0x3f, 0x09, 0x97, 0xc6, 0x9f, 0x9a, 0x9e, 0xb5, 0x0a, + 0x19, 0x45, 0x75, 0xa5, 0x94, 0xea, 0x75, 0x6c, 0x18, 0xb6, 0xde, 0xb3, 0x3e, 0xbd, 0xdf, 0xed, + 0x68, 0xa4, 0xb7, 0x3a, 0x21, 0xa4, 0x14, 0xd5, 0x06, 0x5a, 0x66, 0xe4, 0xdc, 0x7d, 0x98, 0x1d, + 0x05, 0x10, 0xb1, 0x22, 0x6d, 0xb5, 0x71, 0x23, 0x37, 0x79, 0x2a, 0x50, 0x56, 0xf3, 0xc2, 0xdc, + 0xb5, 0xf6, 0x70, 0xdf, 0x84, 0xa4, 0x47, 0xa2, 0x86, 0x62, 0xe4, 0xa6, 0x4e, 0x41, 0x61, 0x77, + 0x6d, 0x8b, 0xb3, 0xa2, 0x18, 0x5c, 0x0d, 0x62, 0xde, 0xad, 0x21, 0xb6, 0x75, 0x7e, 0xe1, 0x54, + 0xff, 0x5c, 0x18, 0x55, 0xf6, 0x2a, 0x12, 0x40, 0x1b, 0x22, 0xd6, 0x21, 0x5b, 0x57, 0x3b, 0x1d, + 0x55, 0x11, 0x47, 0x8d, 0x33, 0x7c, 0x51, 0xe3, 0xe4, 0x2c, 0xb8, 0x75, 0x8f, 0x89, 0x72, 0x3f, + 0x9c, 0x84, 0x98, 0x8e, 0x45, 0x59, 0x69, 0xaa, 0x62, 0x47, 0xd2, 0x72, 0x11, 0x7e, 0x72, 0x2e, + 0x56, 0x79, 0xfb, 0x0c, 0xb9, 0x4f, 0xbc, 0xd6, 0x05, 0xcb, 0xef, 0x7e, 0x45, 0xd2, 0xee, 0x2a, + 0x44, 0xef, 0x55, 0xfb, 0x01, 0x6a, 0x17, 0xb1, 0x27, 0x28, 0x52, 0x0c, 0xe9, 0xc1, 0x34, 0xca, + 0xdd, 0x61, 0x76, 0xf2, 0x04, 0x05, 0xd2, 0x77, 0x06, 0x3f, 0xfe, 0xc7, 0xc9, 0xd6, 0x7e, 0x1f, + 0xd5, 0x39, 0xe9, 0x5f, 0x4c, 0xf4, 0x1e, 0x44, 0xa4, 0x8e, 0x71, 0x6b, 0x5e, 0xea, 0x18, 0x10, + 0x69, 0xd4, 0xcb, 0x95, 0x79, 0xc9, 0xd8, 0x86, 0xb0, 0xd2, 0xbb, 0x39, 0xaf, 0xf4, 0xea, 0x10, + 0xd6, 0xa4, 0xca, 0xbc, 0x26, 0xe9, 0xf4, 0xe1, 0x86, 0xf5, 0x60, 0xb4, 0xae, 0xcf, 0x1b, 0xb2, + 0x02, 0x11, 0xa3, 0x5b, 0xbe, 0x36, 0x6f, 0x7c, 0xbf, 0x0e, 0x61, 0xa2, 0x54, 0xe6, 0xdb, 0xaa, + 0x02, 0x61, 0xd2, 0xbb, 0x39, 0x4f, 0x1e, 0xf5, 0x20, 0xbc, 0x8b, 0x8d, 0x79, 0x03, 0x4b, 0x94, + 0x57, 0x66, 0xbf, 0x8f, 0x12, 0x5c, 0xec, 0xc8, 0x44, 0x61, 0xe1, 0x2e, 0xaf, 0x48, 0x1d, 0x4c, + 0xdf, 0xc6, 0xf7, 0xfb, 0x28, 0xc2, 0x85, 0x06, 0x26, 0x0a, 0x08, 0x77, 0xe9, 0x0b, 0xd8, 0xef, + 0xa3, 0x10, 0x17, 0xfc, 0xc8, 0x44, 0x13, 0xf4, 0x67, 0x68, 0xbf, 0x4f, 0x8d, 0x9a, 0x3e, 0x5e, + 0xdf, 0xef, 0xa3, 0xc5, 0xfc, 0xfc, 0x91, 0x89, 0x5e, 0xad, 0x61, 0x9d, 0x17, 0xee, 0xf2, 0xb6, + 0x1e, 0x78, 0xfb, 0xd6, 0x78, 0x5b, 0x3f, 0xbc, 0x26, 0xe9, 0x52, 0x07, 0x13, 0xac, 0x1b, 0x74, + 0xdf, 0xab, 0xfb, 0x7d, 0xf4, 0x4b, 0xf9, 0xab, 0x03, 0x13, 0x39, 0xb1, 0x8a, 0xb7, 0x35, 0xc7, + 0xdb, 0xaa, 0xa3, 0x58, 0x54, 0x6f, 0x2e, 0xff, 0x7c, 0xf0, 0xc0, 0x44, 0x48, 0x88, 0xea, 0x8e, + 0x3a, 0xb9, 0xeb, 0x90, 0x52, 0x77, 0x15, 0xac, 0x8b, 0x84, 0xc5, 0x0c, 0x51, 0x6e, 0xe4, 0xa2, + 0xcc, 0xad, 0x63, 0x54, 0xa3, 0x21, 0x3d, 0xc8, 0xa3, 0xb9, 0x3b, 0x42, 0x82, 0xd1, 0xd8, 0x61, + 0xa5, 0xc1, 0xfd, 0x73, 0x00, 0x52, 0x0e, 0xbd, 0x73, 0xc3, 0xc0, 0x6e, 0xf8, 0x9d, 0x0b, 0xdf, + 0xf0, 0x30, 0x66, 0xb9, 0xb7, 0xfc, 0x0c, 0x9d, 0x7e, 0xcb, 0xdf, 0xda, 0xef, 0xa3, 0x5b, 0xdc, + 0x1b, 0x47, 0x26, 0xba, 0xbe, 0x2e, 0x75, 0x30, 0xaf, 0x36, 0x79, 0xb2, 0x8d, 0x79, 0x4b, 0x32, + 0x7e, 0x57, 0x26, 0xdb, 0xfc, 0xee, 0xb6, 0xda, 0xe1, 0xc9, 0xb6, 0x6c, 0xb8, 0x3a, 0x94, 0x0d, + 0xde, 0xd8, 0x96, 0x74, 0xdc, 0xa0, 0x08, 0xd3, 0xfb, 0x7d, 0x94, 0xe2, 0x12, 0x03, 0x13, 0x45, + 0x2d, 0xfe, 0xfc, 0x5a, 0xe3, 0xf4, 0xcb, 0xba, 0xb2, 0xdf, 0x47, 0xb9, 0xfc, 0xec, 0x91, 0x89, + 0x38, 0x7b, 0x07, 0xd5, 0x80, 0xde, 0x91, 0x68, 0x7e, 0xa1, 0x04, 0x33, 0xfb, 0x7d, 0x94, 0xc9, + 0xa7, 0x06, 0x26, 0x8a, 0xad, 0x8d, 0xae, 0x78, 0x6f, 0x20, 0x41, 0xbc, 0xc7, 0xe5, 0x7e, 0x0d, + 0x2e, 0x2b, 0xaa, 0x28, 0x35, 0xba, 0x58, 0x27, 0xb2, 0x81, 0xc5, 0x06, 0x6e, 0xc8, 0x75, 0x89, + 0xe0, 0x06, 0x8d, 0xb3, 0x46, 0x2e, 0x7e, 0x4a, 0xc0, 0x08, 0x08, 0x39, 0x45, 0x5d, 0x76, 0x76, + 0xae, 0x38, 0x1b, 0x37, 0x65, 0x8d, 0x06, 0x8f, 0xdc, 0x89, 0x98, 0x89, 0x53, 0x31, 0x67, 0xa5, + 0xb1, 0x88, 0xf9, 0xdf, 0x81, 0xe4, 0xa8, 0x2b, 0x72, 0x69, 0x98, 0x7c, 0x84, 0x7b, 0x56, 0x32, + 0x11, 0xe8, 0x23, 0xf7, 0x00, 0xa6, 0xba, 0x52, 0x7b, 0x07, 0xdb, 0x61, 0xf7, 0xcd, 0x8b, 0x98, + 0xc4, 0x30, 0xcf, 0x0a, 0x16, 0xd8, 0xed, 0xc0, 0x4d, 0x94, 0xff, 0x3d, 0x04, 0xdc, 0x71, 0x3b, + 0x19, 0x23, 0xc2, 0xbb, 0xa3, 0x22, 0x54, 0x2f, 0x64, 0x95, 0x23, 0x49, 0xd4, 0x23, 0x46, 0x75, + 0x0e, 0x66, 0x7c, 0xf9, 0xa1, 0xbe, 0xad, 0xca, 0x75, 0xcc, 0xa5, 0x0e, 0x4c, 0x14, 0x38, 0x34, + 0x11, 0x1a, 0x98, 0x68, 0xb2, 0x52, 0xba, 0x5e, 0xfd, 0x0a, 0x00, 0x4d, 0x73, 0x9e, 0xe5, 0xa9, + 0x43, 0x13, 0x05, 0xe9, 0xf2, 0xeb, 0xa5, 0xa5, 0xea, 0xab, 0x90, 0x1d, 0xb9, 0x15, 0x87, 0x30, + 0x73, 0x60, 0xa2, 0xf8, 0xa1, 0x89, 0x62, 0x03, 0x13, 0x4d, 0x95, 0x2b, 0xa5, 0xf2, 0xf5, 0x7b, + 0xc1, 0x08, 0x4a, 0x07, 0xee, 0x05, 0x23, 0xc1, 0xf4, 0xd4, 0xbd, 0x60, 0x24, 0x96, 0x8e, 0x17, + 0x09, 0x4c, 0x2f, 0x2b, 0xbd, 0x6f, 0x4b, 0x06, 0xd9, 0x5c, 0xab, 0x7d, 0xa7, 0x8d, 0x31, 0x61, + 0x09, 0xf0, 0x3d, 0x48, 0x50, 0x24, 0xa9, 0xdd, 0x56, 0xeb, 0x12, 0x8d, 0xeb, 0x88, 0xa9, 0xa0, + 0x78, 0x4c, 0x05, 0x78, 0xd7, 0x58, 0xf8, 0xee, 0xd6, 0xf7, 0x71, 0x9d, 0x08, 0xb8, 0xc9, 0x22, + 0x7b, 0xf6, 0xe9, 0x5e, 0x46, 0x6a, 0x34, 0x74, 0x7a, 0x22, 0x77, 0xbf, 0x10, 0xef, 0xca, 0xda, + 0xb2, 0xf3, 0xab, 0xf8, 0x07, 0x01, 0x88, 0x6f, 0xac, 0x2f, 0x3f, 0xa8, 0xa9, 0x6a, 0x9b, 0xf1, + 0x7b, 0x13, 0x12, 0xb2, 0xd6, 0xbd, 0x21, 0x6a, 0x3a, 0x6e, 0xca, 0x8f, 0xb1, 0x91, 0x43, 0x2c, + 0xa1, 0x5f, 0xa2, 0xae, 0x0a, 0x1f, 0xa2, 0x70, 0x71, 0x4a, 0x9f, 0xfc, 0x29, 0x1a, 0x66, 0x74, + 0x24, 0xc4, 0x29, 0x7d, 0xcd, 0x26, 0xe7, 0x64, 0xb6, 0x7f, 0x69, 0xb8, 0x3f, 0xc0, 0xf6, 0xaf, + 0x1c, 0xed, 0xcd, 0x35, 0x70, 0x47, 0x2d, 0x97, 0x08, 0x36, 0x48, 0xa9, 0xae, 0x93, 0x92, 0x41, + 0xa4, 0x96, 0xac, 0xb4, 0x4a, 0x86, 0xda, 0x24, 0x5b, 0x92, 0xf2, 0x48, 0xec, 0xe0, 0x7a, 0x49, + 0xd3, 0xd5, 0x86, 0x97, 0xd5, 0xfb, 0x01, 0x3f, 0xab, 0x25, 0x87, 0xd5, 0xed, 0xfb, 0x1f, 0x9b, + 0x68, 0x15, 0x8a, 0x90, 0x58, 0xab, 0x75, 0x6f, 0xf0, 0xce, 0xeb, 0x6a, 0xc6, 0x77, 0x82, 0xf4, + 0x94, 0x4d, 0xb3, 0xe4, 0xa7, 0x59, 0xf2, 0xd0, 0x14, 0xff, 0x76, 0x12, 0xd2, 0x8e, 0x26, 0x36, + 0x64, 0x82, 0x99, 0x36, 0xfe, 0x26, 0x40, 0xb3, 0x3d, 0x4d, 0xab, 0x8a, 0x44, 0x44, 0x4d, 0x55, + 0xdb, 0x4c, 0x1f, 0xb1, 0xca, 0xf2, 0x19, 0x26, 0xe8, 0x47, 0x5a, 0x60, 0xe9, 0x54, 0x91, 0x08, + 0x7d, 0x69, 0x85, 0xc3, 0x8f, 0xc6, 0x86, 0xc3, 0xd0, 0x13, 0x34, 0x99, 0x7e, 0x9f, 0xc5, 0xa6, + 0xd2, 0x7e, 0x1f, 0xcd, 0x71, 0x5f, 0x3b, 0x32, 0x51, 0xd1, 0x1b, 0x0f, 0xa9, 0x3c, 0x7c, 0x53, + 0xd5, 0xd9, 0x0f, 0x2a, 0x17, 0x4f, 0xe5, 0xf2, 0x85, 0x3f, 0xca, 0x8e, 0x5f, 0xb7, 0x93, 0xd7, + 0xc9, 0xe1, 0xaf, 0xb0, 0xdf, 0x47, 0xf9, 0x7c, 0xee, 0xc8, 0x44, 0x59, 0x2a, 0x31, 0x43, 0xf2, + 0xa5, 0x25, 0x06, 0x9a, 0x67, 0xa0, 0x8c, 0xa4, 0x66, 0x33, 0xf3, 0x86, 0x3f, 0xab, 0x9e, 0xb5, + 0x4f, 0x97, 0x6f, 0x43, 0xe6, 0xd8, 0x69, 0xc7, 0x38, 0xf5, 0xf2, 0xa8, 0x53, 0x7f, 0xe3, 0x9c, + 0x1a, 0xf5, 0x79, 0x6f, 0x71, 0x0f, 0x32, 0xce, 0xd2, 0xd0, 0x6b, 0xb6, 0x61, 0xda, 0xbd, 0xb1, + 0x17, 0xe8, 0x3b, 0x19, 0xc3, 0x3e, 0xd3, 0xd0, 0x81, 0x7e, 0x19, 0x2e, 0x6f, 0xe8, 0xdd, 0x25, + 0x3b, 0xc8, 0xac, 0x1b, 0x35, 0x57, 0x79, 0x4c, 0x90, 0x2b, 0x10, 0xa5, 0x25, 0x84, 0xa1, 0x49, + 0x75, 0x6c, 0x1f, 0x7e, 0xf8, 0xa2, 0x78, 0x10, 0x83, 0xd9, 0x1a, 0xd6, 0xa9, 0x91, 0x78, 0x40, + 0xd8, 0xc6, 0x55, 0xc8, 0x2a, 0xaa, 0xe8, 0x92, 0x3a, 0x6a, 0x38, 0xa3, 0xf6, 0xe5, 0x14, 0x75, + 0xdd, 0xd9, 0x62, 0xa3, 0x71, 0xbf, 0x0d, 0xb3, 0x86, 0xde, 0x5d, 0x72, 0x10, 0x44, 0xc5, 0x10, + 0xd9, 0x0d, 0x1b, 0x76, 0xf9, 0x7b, 0xfb, 0x2c, 0xc5, 0x9f, 0x7c, 0xbc, 0xd5, 0x09, 0x61, 0xda, + 0x38, 0xb6, 0x6c, 0x70, 0x77, 0x20, 0x2d, 0x2b, 0x04, 0xeb, 0x4d, 0x2a, 0xb9, 0xac, 0xb1, 0xee, + 0xe2, 0xf4, 0x2a, 0x39, 0xe9, 0xd2, 0xaf, 0x69, 0xb4, 0x51, 0x29, 0x41, 0x4c, 0x52, 0x7a, 0x75, + 0xc9, 0x20, 0x6c, 0x73, 0xc8, 0xd7, 0x9a, 0xd0, 0x1a, 0xd8, 0x5e, 0xa7, 0xd4, 0xbf, 0x09, 0xd1, + 0x26, 0xbd, 0x7b, 0x46, 0x6b, 0x15, 0xbe, 0x95, 0x33, 0x4e, 0x35, 0x26, 0xd6, 0x56, 0x63, 0xcf, + 0xf6, 0x10, 0xb5, 0x67, 0x5a, 0x0e, 0xaf, 0x22, 0x21, 0xc2, 0x30, 0x29, 0xfe, 0x3b, 0x30, 0x3b, + 0x72, 0x9e, 0x61, 0x34, 0x88, 0x9e, 0x9a, 0x76, 0xa7, 0x3d, 0xa7, 0x72, 0xdc, 0x81, 0xfb, 0x75, + 0x48, 0x1a, 0x32, 0xf1, 0x86, 0x14, 0x60, 0x20, 0x8b, 0xcf, 0x19, 0x52, 0x56, 0x03, 0x42, 0x9c, + 0x02, 0xb9, 0xc0, 0x2d, 0x48, 0x59, 0x5a, 0x18, 0x22, 0xc7, 0x18, 0xf2, 0xb5, 0x73, 0x22, 0x9f, + 0xa0, 0x89, 0x80, 0x90, 0x60, 0xb8, 0x2e, 0xa3, 0xef, 0xc2, 0x94, 0xd1, 0x96, 0xeb, 0xd8, 0x2e, + 0x64, 0xce, 0xe3, 0x4f, 0x33, 0x4f, 0xf7, 0xb8, 0x11, 0x2b, 0x64, 0x00, 0x82, 0x85, 0xc3, 0xbd, + 0x0b, 0x21, 0xc6, 0x81, 0x96, 0x31, 0x93, 0xe7, 0x44, 0xbc, 0xf2, 0x74, 0x6f, 0x8a, 0x6d, 0x72, + 0xf3, 0xc3, 0x1d, 0xe7, 0x29, 0x87, 0x04, 0x1b, 0x8f, 0xdb, 0x86, 0x97, 0xec, 0x9c, 0xee, 0x30, + 0xd6, 0x89, 0xa4, 0xb7, 0x28, 0xab, 0x24, 0x63, 0x95, 0xf7, 0xb1, 0x12, 0xd4, 0x1d, 0x82, 0x1f, + 0x30, 0x92, 0x6a, 0xf6, 0x78, 0xdf, 0x9a, 0x43, 0xc2, 0x8c, 0x05, 0xe8, 0x54, 0x36, 0x36, 0x1c, + 0xf7, 0x1e, 0x64, 0xd8, 0x6d, 0x2b, 0x98, 0x0c, 0x79, 0xa4, 0x2e, 0xc8, 0x23, 0xed, 0x40, 0xb9, + 0xf0, 0x1a, 0x5c, 0xc6, 0xf4, 0x9d, 0xa6, 0xd3, 0xe2, 0xef, 0xd8, 0x61, 0xd2, 0x17, 0x64, 0x74, + 0x69, 0x08, 0xea, 0x3f, 0xd0, 0xf7, 0x20, 0x85, 0x1f, 0x6b, 0xaa, 0xee, 0x39, 0x4e, 0xe6, 0x82, + 0x5c, 0x92, 0x16, 0x90, 0x0b, 0x7d, 0x07, 0x66, 0x74, 0xdc, 0x51, 0xa9, 0x13, 0xc8, 0x0d, 0xd1, + 0x20, 0x12, 0x31, 0x44, 0xad, 0x8d, 0x95, 0x1c, 0xc7, 0x86, 0x2f, 0x09, 0x6a, 0x7a, 0xcc, 0xd7, + 0x5f, 0x0b, 0xe4, 0x7e, 0x4b, 0xe0, 0x2c, 0xda, 0x0d, 0xb9, 0xb1, 0x41, 0x29, 0x6b, 0x6d, 0xac, + 0x54, 0xaf, 0x42, 0x7a, 0x18, 0x1b, 0x4f, 0x2a, 0xd7, 0xbe, 0x0e, 0x9c, 0x33, 0xe7, 0xf0, 0x55, + 0x63, 0x4e, 0xd9, 0x36, 0xf5, 0x7a, 0x69, 0xa9, 0xf4, 0x46, 0xf5, 0xeb, 0x90, 0x1e, 0xa6, 0x0b, + 0x9b, 0x6c, 0xfa, 0xc0, 0x44, 0xd1, 0x43, 0x13, 0x45, 0x06, 0x26, 0x0a, 0xdf, 0x2a, 0x95, 0xaf, + 0x95, 0xca, 0x65, 0x5f, 0xd9, 0x16, 0x49, 0x47, 0x8b, 0x7f, 0x88, 0x20, 0xbb, 0x8e, 0x1f, 0x93, + 0x55, 0x55, 0x5b, 0x73, 0x9c, 0x9d, 0x8d, 0x44, 0xba, 0x00, 0xae, 0xf7, 0x1b, 0x76, 0xd5, 0x70, + 0x1e, 0xbb, 0xae, 0x3c, 0xdd, 0xcb, 0x38, 0xd7, 0xeb, 0x02, 0x0c, 0x6b, 0xa0, 0xe1, 0x00, 0xc5, + 0xa3, 0x5f, 0x0f, 0xa7, 0xe2, 0xbf, 0x07, 0x61, 0x9a, 0xea, 0x49, 0xae, 0xb3, 0x7b, 0xd9, 0x94, + 0xf1, 0x2e, 0x4b, 0x28, 0x1b, 0x10, 0x93, 0x35, 0x7f, 0x59, 0x57, 0xf9, 0xa9, 0x89, 0x26, 0xc6, + 0x94, 0x76, 0xa1, 0x0f, 0x69, 0x15, 0x12, 0x38, 0x81, 0x99, 0xe6, 0x56, 0x7b, 0x0b, 0x00, 0xb4, + 0x38, 0xb5, 0x12, 0x25, 0xcb, 0x27, 0xd1, 0x6a, 0xc2, 0xc1, 0x0c, 0xea, 0x81, 0xc7, 0x68, 0x75, + 0x42, 0x88, 0xca, 0xda, 0xb2, 0x45, 0xc1, 0xbd, 0x0b, 0x51, 0x57, 0xd4, 0x5c, 0xf0, 0xb9, 0xb2, + 0xf1, 0x31, 0x9d, 0x30, 0x64, 0xe7, 0x07, 0xf7, 0x16, 0xa4, 0x9c, 0xbb, 0x6e, 0x49, 0x04, 0xef, + 0x4a, 0xbd, 0x53, 0x33, 0xce, 0x84, 0x90, 0xb4, 0xc9, 0xdf, 0xb6, 0xa8, 0xb9, 0x55, 0x98, 0x92, + 0x08, 0xd1, 0x0d, 0x36, 0xc1, 0x4a, 0x56, 0xae, 0x8c, 0x33, 0xf2, 0x65, 0x42, 0xac, 0xa1, 0xc9, + 0x78, 0x33, 0xb7, 0x00, 0x6e, 0xff, 0x03, 0xfa, 0x91, 0x89, 0xae, 0x42, 0x1a, 0x62, 0x6b, 0x35, + 0xb7, 0xe4, 0xe4, 0x50, 0x19, 0x52, 0x10, 0xa1, 0xa6, 0xc2, 0xaf, 0xaa, 0x1a, 0x37, 0x59, 0x29, + 0x2d, 0x7d, 0x6c, 0xa2, 0x3f, 0x47, 0x50, 0x18, 0xa1, 0xab, 0xa6, 0x46, 0xee, 0x29, 0x3d, 0x05, + 0x0f, 0x87, 0xbb, 0x5e, 0x5b, 0x87, 0xfb, 0x10, 0xf7, 0xea, 0x1c, 0x72, 0x1e, 0x8d, 0x72, 0xb1, + 0x7c, 0xd4, 0x35, 0x42, 0x28, 0x1e, 0xd3, 0x48, 0x25, 0x65, 0xcf, 0xf2, 0x78, 0xfb, 0xd0, 0x70, + 0x09, 0x80, 0x9e, 0x49, 0xde, 0xda, 0x21, 0xd8, 0xa8, 0xc6, 0x6c, 0x15, 0xa4, 0x83, 0xd7, 0x50, + 0xf5, 0x15, 0x48, 0x29, 0xf8, 0x31, 0x11, 0xb7, 0xd5, 0x11, 0xcf, 0x99, 0x3c, 0x34, 0x51, 0x80, + 0x7a, 0xce, 0xf5, 0xd2, 0x8d, 0xd2, 0xeb, 0xf7, 0x82, 0x91, 0x40, 0x7a, 0xb2, 0xf8, 0x1f, 0x41, + 0x98, 0xb1, 0x6c, 0x6e, 0x73, 0xe9, 0x22, 0x56, 0x67, 0x57, 0xf9, 0xe7, 0xb5, 0xba, 0xc5, 0x31, + 0x56, 0x97, 0x74, 0x30, 0x29, 0x1c, 0xfa, 0xd2, 0xec, 0xbe, 0x08, 0x66, 0xf7, 0xa7, 0x08, 0x66, + 0x47, 0xcc, 0x8e, 0xcd, 0x47, 0x99, 0xdd, 0xf5, 0x20, 0x61, 0xb0, 0x15, 0x51, 0x67, 0x0b, 0x76, + 0x00, 0xbe, 0x71, 0x56, 0x25, 0x34, 0xce, 0x88, 0xab, 0x05, 0x57, 0xed, 0xe9, 0xb1, 0xb6, 0x19, + 0x37, 0x86, 0xf1, 0xd6, 0x28, 0xfe, 0x59, 0x00, 0x66, 0x96, 0xeb, 0x44, 0xee, 0xe2, 0x5a, 0x55, + 0xa8, 0xa9, 0x6d, 0xb9, 0x2e, 0x63, 0xab, 0x19, 0xf8, 0x00, 0x41, 0xbe, 0xa9, 0xea, 0xbb, 0x92, + 0xde, 0x10, 0x35, 0x5d, 0x7d, 0xdc, 0x13, 0xb5, 0x2d, 0x5d, 0xd4, 0x6c, 0x92, 0xe7, 0xc8, 0x11, + 0x5f, 0x7d, 0xba, 0x97, 0x65, 0xdb, 0x7a, 0xe2, 0x96, 0x64, 0xe0, 0x06, 0x3b, 0xa4, 0xac, 0xb4, + 0x5c, 0x39, 0x79, 0xe1, 0x25, 0x9b, 0x51, 0x8d, 0xf2, 0xa9, 0x6d, 0xe9, 0x8e, 0x20, 0xdc, 0x2e, + 0x64, 0x1d, 0x9b, 0x1e, 0xe1, 0x1e, 0x78, 0x91, 0xdc, 0x39, 0x9b, 0x85, 0x87, 0x71, 0xf1, 0x3f, + 0x03, 0x90, 0xae, 0x39, 0x53, 0xc7, 0xcd, 0xb5, 0x1a, 0x53, 0xc9, 0x0f, 0x02, 0x90, 0xb4, 0x47, + 0x8f, 0x34, 0x45, 0x77, 0x24, 0xed, 0x9c, 0x0d, 0xb6, 0x1f, 0xc9, 0x1e, 0x38, 0x6e, 0xca, 0x9a, + 0x3b, 0x6f, 0xfc, 0xbb, 0x53, 0xe6, 0x8d, 0xec, 0xfb, 0xc4, 0x13, 0x14, 0x7a, 0x8d, 0xb5, 0x13, + 0xb4, 0x9f, 0x9d, 0xdb, 0xef, 0xa3, 0x57, 0xb8, 0xe2, 0x91, 0x89, 0x0a, 0x63, 0xa6, 0x8f, 0x4e, + 0xbf, 0xbd, 0xb9, 0x56, 0xbb, 0xd8, 0xa0, 0x31, 0xbb, 0xdf, 0x47, 0xe9, 0x7c, 0xf2, 0xc8, 0x44, + 0x60, 0xef, 0xb0, 0xa1, 0xec, 0x85, 0x81, 0x89, 0x60, 0x4d, 0xe3, 0x6d, 0xff, 0x12, 0xe2, 0xc4, + 0x73, 0x9c, 0xfc, 0x5b, 0x90, 0x39, 0x76, 0xbc, 0x31, 0x1d, 0x75, 0xd6, 0xdb, 0x51, 0x47, 0xbd, + 0x4d, 0xf2, 0x2a, 0x70, 0x1b, 0xb8, 0xd5, 0xc1, 0x0a, 0xf1, 0xf6, 0x98, 0x15, 0x70, 0xeb, 0x4c, + 0xf7, 0x93, 0x08, 0x85, 0x8b, 0x54, 0xc3, 0xf6, 0x47, 0x01, 0x21, 0xe5, 0x10, 0xd8, 0x9f, 0x3f, + 0x8a, 0xff, 0x94, 0x82, 0xe4, 0xdb, 0x6d, 0x75, 0x4b, 0x6a, 0x6f, 0x68, 0xb8, 0xce, 0x60, 0xee, + 0x42, 0xd8, 0xd8, 0xd9, 0x52, 0x68, 0x81, 0x68, 0x19, 0xd1, 0x65, 0xdf, 0xdd, 0xad, 0x69, 0x1b, + 0x6c, 0x9d, 0x59, 0x4f, 0xf2, 0xd9, 0x9e, 0x27, 0xd8, 0x23, 0xc1, 0xd9, 0xcb, 0xdd, 0x83, 0x20, + 0xe9, 0x69, 0x98, 0xc5, 0xf3, 0x64, 0xe5, 0xab, 0x3e, 0x8c, 0x4d, 0xeb, 0xfe, 0x3d, 0xe2, 0x57, + 0xa7, 0x29, 0x4c, 0xf2, 0x03, 0x14, 0xcb, 0x47, 0x27, 0x50, 0x60, 0x32, 0x18, 0x8e, 0x42, 0x5c, + 0x60, 0x18, 0xdc, 0x43, 0xbf, 0xfb, 0x4f, 0x31, 0xc1, 0x0a, 0x3e, 0x50, 0x4f, 0x9d, 0x64, 0x75, + 0x29, 0xae, 0x60, 0x7f, 0x75, 0xa2, 0x7f, 0x73, 0xdf, 0x82, 0x64, 0x8b, 0x29, 0xc0, 0xed, 0xc9, + 0xc3, 0xa7, 0x46, 0xfc, 0x84, 0x45, 0xed, 0xb4, 0xe3, 0x2b, 0xc0, 0xb1, 0xf6, 0xaf, 0xad, 0xd6, + 0x3d, 0x10, 0x91, 0x53, 0x21, 0xd2, 0x74, 0xc7, 0x7d, 0xba, 0xc1, 0x41, 0xf9, 0x55, 0xb8, 0xe4, + 0x41, 0x91, 0x15, 0x43, 0x6e, 0x0c, 0x67, 0x04, 0xd1, 0x53, 0xc1, 0x66, 0x5d, 0xb0, 0x35, 0xb6, + 0xcd, 0x81, 0xfc, 0x0e, 0x24, 0x7d, 0x38, 0x70, 0x32, 0x8e, 0x6b, 0x21, 0xf4, 0x80, 0xf2, 0x08, + 0xce, 0x43, 0x88, 0xb5, 0x71, 0x4b, 0xaa, 0xf7, 0x44, 0x76, 0x9d, 0xb1, 0xf3, 0x5e, 0x67, 0xd6, + 0xa9, 0xfa, 0x63, 0x1f, 0xa0, 0x48, 0x3e, 0x64, 0x5d, 0xe9, 0xea, 0x84, 0x00, 0x16, 0x9a, 0x3d, + 0x15, 0x49, 0x39, 0xa3, 0x5a, 0x47, 0xc8, 0xc4, 0xf9, 0x84, 0x4c, 0x6a, 0x23, 0xd3, 0x60, 0xae, + 0x0e, 0x71, 0x6f, 0x3f, 0x9a, 0x4b, 0x32, 0x98, 0xd7, 0xcf, 0x8e, 0x3a, 0x63, 0x86, 0x35, 0x5e, + 0x3e, 0x31, 0xcf, 0x3c, 0x84, 0xc3, 0x90, 0x32, 0x2c, 0xb7, 0x73, 0xf9, 0xbc, 0xc4, 0xf8, 0x94, + 0xcf, 0xca, 0x43, 0xc7, 0x9c, 0x75, 0xe4, 0x2c, 0xc6, 0xc8, 0x32, 0xf7, 0xbb, 0x90, 0xf7, 0x69, + 0x45, 0x1c, 0xce, 0xf0, 0x72, 0x29, 0xc6, 0xf1, 0xe6, 0x45, 0xbf, 0xe4, 0x0c, 0x63, 0x41, 0x6e, + 0x54, 0x85, 0xc3, 0x51, 0x10, 0xf7, 0x3d, 0x80, 0x61, 0x10, 0xcf, 0x65, 0xce, 0x35, 0xce, 0xf0, + 0x07, 0xf0, 0xe1, 0x01, 0x91, 0x10, 0x75, 0xa3, 0x1f, 0xf7, 0xd0, 0x3b, 0xda, 0xe1, 0x2e, 0x3c, + 0xda, 0xf1, 0x80, 0x0f, 0xc7, 0x3a, 0xb7, 0x20, 0xee, 0x1d, 0xeb, 0xe4, 0xb2, 0xa7, 0x0e, 0x73, + 0x62, 0x9e, 0x61, 0xce, 0x98, 0x21, 0xce, 0xcc, 0xcf, 0x6c, 0x88, 0x33, 0xfb, 0x33, 0x19, 0xe2, + 0xdc, 0x87, 0x69, 0xb9, 0xe3, 0x6d, 0xef, 0x45, 0x83, 0x96, 0xa1, 0x9f, 0x85, 0x59, 0x89, 0x7e, + 0xd9, 0xd6, 0xd7, 0xd8, 0x82, 0x33, 0x63, 0x6d, 0xb4, 0xdb, 0xf9, 0x0d, 0xa2, 0x1b, 0x14, 0x6d, + 0x74, 0x58, 0x60, 0xa1, 0xfd, 0xe4, 0x3c, 0x68, 0x23, 0xc3, 0x01, 0x86, 0x26, 0x01, 0x58, 0x4a, + 0xd0, 0x71, 0xd3, 0xc8, 0x1d, 0x85, 0x59, 0xf0, 0xf6, 0x97, 0xc6, 0xa3, 0x45, 0xc9, 0x55, 0x67, + 0x1c, 0xe4, 0x67, 0xe5, 0x9d, 0x0a, 0x59, 0xa6, 0x24, 0xe0, 0xa6, 0xc1, 0x6d, 0x41, 0x94, 0xcd, + 0x9e, 0x28, 0x8b, 0xdc, 0xbf, 0x9d, 0x87, 0xc3, 0xd7, 0xc6, 0x8e, 0xb0, 0xfc, 0xec, 0x90, 0x10, + 0xb1, 0x46, 0x5b, 0xb8, 0x59, 0x9d, 0x87, 0xa4, 0x43, 0x6b, 0x97, 0xb2, 0x97, 0x0f, 0x4c, 0x14, + 0x3e, 0x34, 0x51, 0x68, 0x60, 0xa2, 0xd8, 0x1b, 0xa5, 0x9b, 0xa5, 0x5b, 0xa5, 0xf2, 0x8d, 0x52, + 0xb9, 0x4c, 0x21, 0xaa, 0xdf, 0x18, 0x3b, 0xae, 0x98, 0x39, 0x30, 0x51, 0xe6, 0xd0, 0x44, 0x69, + 0xf6, 0xf1, 0xe8, 0x8d, 0x52, 0xf9, 0xe6, 0xe7, 0x94, 0x78, 0x6e, 0xcc, 0xc8, 0x82, 0x46, 0xd0, + 0xec, 0xa1, 0x89, 0xa6, 0x07, 0x26, 0x8a, 0x54, 0xae, 0x95, 0x2a, 0xe5, 0x52, 0xa5, 0xe2, 0x9b, + 0x59, 0x84, 0xd2, 0xe1, 0x7b, 0xc1, 0x48, 0x3a, 0x9d, 0xb9, 0x17, 0x8c, 0x4c, 0xa7, 0xb3, 0xc5, + 0xbf, 0x08, 0x41, 0xf2, 0xdb, 0x3a, 0x96, 0x08, 0x76, 0xf3, 0xf9, 0x2f, 0x6a, 0x82, 0x5b, 0xb9, + 0x58, 0x62, 0xf2, 0xa5, 0xa0, 0x87, 0x2f, 0x30, 0x71, 0xf8, 0xf3, 0xc5, 0xae, 0xbf, 0x6c, 0x89, + 0x33, 0xbb, 0xac, 0x9c, 0xab, 0x6b, 0xf1, 0xf5, 0x2c, 0x4f, 0xf6, 0x42, 0xdf, 0x54, 0x54, 0x05, + 0xbf, 0x79, 0x9e, 0x9a, 0xe6, 0x2f, 0x11, 0xa4, 0x6d, 0xce, 0xdd, 0x25, 0x87, 0x79, 0xea, 0x7f, + 0xd1, 0x32, 0xdd, 0x79, 0xce, 0xef, 0x7d, 0xc7, 0x05, 0x4c, 0x1a, 0x23, 0x9d, 0xdd, 0xed, 0xbb, + 0x1f, 0xbf, 0xe9, 0x2b, 0x3c, 0x7f, 0x64, 0xa2, 0x6b, 0x70, 0x09, 0xb2, 0xf6, 0x95, 0xb9, 0xff, + 0x92, 0x60, 0xd7, 0x84, 0x96, 0x60, 0x1a, 0x12, 0x96, 0x70, 0xbc, 0x7d, 0xca, 0x40, 0xb9, 0x52, + 0x7d, 0xe5, 0x98, 0x4f, 0x72, 0x1f, 0xfc, 0x17, 0xf2, 0xbd, 0xb3, 0xfc, 0xa4, 0xf8, 0xaf, 0x21, + 0x48, 0x09, 0x58, 0x6b, 0x4b, 0xf5, 0x2f, 0x9d, 0xe3, 0x7c, 0xce, 0xf1, 0xd6, 0x73, 0xd5, 0x67, + 0x63, 0xca, 0xb2, 0x2f, 0xbd, 0xeb, 0x0b, 0xe3, 0x5d, 0x7f, 0x14, 0x86, 0xd8, 0xdb, 0x98, 0xfc, + 0xc2, 0x7b, 0xd6, 0xbd, 0x0b, 0xf6, 0x43, 0xec, 0xd3, 0xfa, 0xcf, 0x93, 0x7f, 0xfd, 0xc6, 0xf1, + 0x6e, 0x27, 0x7d, 0xc1, 0x6e, 0x67, 0x4c, 0x93, 0xf3, 0x7f, 0xe6, 0xbd, 0x3b, 0x2f, 0xd8, 0x79, + 0x67, 0xfe, 0xbf, 0x7a, 0x64, 0xf5, 0x4f, 0xd0, 0xe1, 0x27, 0x85, 0x89, 0x67, 0x9f, 0x14, 0x26, + 0x3e, 0xff, 0xa4, 0x80, 0xde, 0x1f, 0x14, 0xd0, 0x5f, 0x0f, 0x0a, 0xe8, 0xa3, 0x41, 0x01, 0x1d, + 0x0e, 0x0a, 0xe8, 0xd9, 0xa0, 0x80, 0x7e, 0x3c, 0x28, 0xa0, 0xcf, 0x06, 0x85, 0x89, 0xcf, 0x07, + 0x05, 0xf4, 0xc7, 0x9f, 0x16, 0x26, 0x0e, 0x3e, 0x2d, 0xa0, 0xc3, 0x4f, 0x0b, 0x13, 0xcf, 0x3e, + 0x2d, 0x4c, 0x3c, 0xdc, 0x68, 0xa9, 0xda, 0xa3, 0xd6, 0x42, 0x57, 0x6d, 0x13, 0xac, 0xeb, 0xd2, + 0xc2, 0x8e, 0xb1, 0xc8, 0x1e, 0x9a, 0xaa, 0xde, 0x99, 0xd7, 0x74, 0xb5, 0x2b, 0x37, 0xb0, 0x3e, + 0xef, 0x2c, 0x2f, 0x6a, 0x5b, 0x2d, 0x75, 0x11, 0x3f, 0x26, 0xf6, 0xbf, 0xb6, 0xc7, 0xff, 0x8d, + 0x7d, 0x2b, 0xc4, 0xfe, 0xc1, 0x7d, 0xfd, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x52, 0x23, 0x01, + 0x40, 0xee, 0x2e, 0x00, 0x00, } func (this *VoltADNPrivateNetworkReInfoType) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/virtual_site/crudapi/api.vesapi.go b/pbgo/extschema/schema/virtual_site/crudapi/api.vesapi.go index 23541a2c2..a78aa80c8 100644 --- a/pbgo/extschema/schema/virtual_site/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/virtual_site/crudapi/api.vesapi.go @@ -3072,10 +3072,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_site/object.pb.go b/pbgo/extschema/schema/virtual_site/object.pb.go index 57c4bac57..f15bc5377 100644 --- a/pbgo/extschema/schema/virtual_site/object.pb.go +++ b/pbgo/extschema/schema/virtual_site/object.pb.go @@ -234,45 +234,45 @@ func init() { } var fileDescriptor_4c6fd67a59cfdea1 = []byte{ - // 599 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xcf, 0x6e, 0xd3, 0x4e, - 0x10, 0xc7, 0xbd, 0x49, 0x95, 0x56, 0xdb, 0xaa, 0xad, 0xfc, 0xbb, 0xf8, 0x57, 0x60, 0x15, 0x05, - 0x04, 0x15, 0xaa, 0x6d, 0xa9, 0x08, 0x09, 0x2a, 0xfe, 0x48, 0x2d, 0x22, 0x1c, 0x5a, 0x8a, 0x52, - 0x4e, 0x5c, 0xa2, 0xb5, 0x33, 0x71, 0x17, 0xec, 0xac, 0xb5, 0xbb, 0x36, 0xed, 0x01, 0x89, 0x27, - 0x40, 0x3c, 0x06, 0xe2, 0x29, 0x28, 0x07, 0xc4, 0xb1, 0xea, 0xa9, 0x47, 0xea, 0x5c, 0x38, 0x80, - 0xd4, 0x23, 0x47, 0x94, 0x75, 0x1c, 0x25, 0x21, 0x54, 0x95, 0xca, 0x6d, 0xc7, 0xf3, 0x9d, 0x8f, - 0x67, 0x76, 0x66, 0x07, 0xdf, 0x48, 0x41, 0x3a, 0x8c, 0xbb, 0xd2, 0xdf, 0x85, 0x88, 0xba, 0x29, - 0x13, 0x2a, 0xa1, 0x61, 0x53, 0x32, 0x05, 0x2e, 0xf7, 0x5e, 0x82, 0xaf, 0x9c, 0x58, 0x70, 0xc5, - 0xcd, 0xa5, 0x5c, 0xe8, 0xe4, 0x42, 0x67, 0x58, 0xb8, 0x64, 0x07, 0x4c, 0xed, 0x26, 0x9e, 0xe3, - 0xf3, 0xc8, 0x0d, 0x78, 0xc0, 0x5d, 0x1d, 0xe2, 0x25, 0x6d, 0x6d, 0x69, 0x43, 0x9f, 0x72, 0xd4, - 0xd2, 0xa5, 0xd1, 0x7f, 0xf2, 0x58, 0x31, 0xde, 0x91, 0x7d, 0xe7, 0xff, 0xa3, 0x4e, 0xb5, 0x1f, - 0x43, 0xe1, 0xaa, 0x8d, 0xe5, 0x0a, 0x12, 0x3a, 0xe9, 0x58, 0xf8, 0xf5, 0x33, 0xea, 0x19, 0x62, - 0xd5, 0xbe, 0x4c, 0xe1, 0xca, 0xb6, 0xae, 0xcf, 0xbc, 0x8b, 0x67, 0x22, 0x50, 0xb4, 0x45, 0x15, - 0xb5, 0x50, 0x15, 0x2d, 0xcf, 0xae, 0x5e, 0x71, 0x46, 0x8b, 0xcd, 0x85, 0x5b, 0xa0, 0xe8, 0xf3, - 0xfd, 0x18, 0x1a, 0x03, 0xb9, 0xb9, 0x89, 0x17, 0xe4, 0xbe, 0x54, 0x10, 0x35, 0x07, 0x84, 0x92, - 0x26, 0x5c, 0x1d, 0x23, 0xec, 0x68, 0xd5, 0x18, 0x67, 0x3e, 0x8f, 0xdd, 0x2a, 0x68, 0x77, 0xf0, - 0x94, 0x8c, 0xc1, 0xb7, 0xca, 0x1a, 0x71, 0xcd, 0xf9, 0xfb, 0x8d, 0x3b, 0x3b, 0x31, 0xf8, 0x9a, - 0xa1, 0x23, 0xd6, 0x7e, 0x95, 0x3e, 0x1f, 0x58, 0xa5, 0x45, 0x74, 0x74, 0x60, 0xfd, 0x2c, 0xe1, - 0x3a, 0xae, 0x6c, 0x08, 0xa0, 0x0a, 0xcc, 0xfb, 0xed, 0xdb, 0x7b, 0xbe, 0xed, 0xf3, 0x8e, 0xe4, - 0x21, 0xd8, 0x1e, 0x95, 0x60, 0x27, 0x12, 0xc4, 0x4a, 0x55, 0x7f, 0xef, 0xd9, 0x2b, 0xd5, 0x14, - 0xa4, 0xcd, 0xb8, 0xdd, 0xc7, 0xdb, 0x3d, 0xbc, 0xb4, 0x5f, 0x0b, 0xa6, 0x00, 0x3f, 0xc6, 0xe5, - 0x3a, 0x28, 0xf3, 0xe1, 0x9f, 0x94, 0x88, 0x77, 0x98, 0xe2, 0xe7, 0x00, 0x09, 0xa0, 0x2d, 0x5c, - 0xc7, 0x53, 0x9b, 0x4c, 0xfe, 0x03, 0xd0, 0x13, 0x3c, 0xdd, 0x80, 0x38, 0xa4, 0xfe, 0x85, 0x4b, - 0xab, 0xe3, 0xca, 0x23, 0x08, 0xe1, 0xc2, 0x77, 0x54, 0xdb, 0xc6, 0x33, 0x45, 0x33, 0xcc, 0x0d, - 0x3c, 0x1d, 0xf8, 0x4d, 0xdd, 0xc3, 0x7c, 0x0c, 0x6e, 0x9e, 0xd5, 0xc3, 0x7a, 0xc8, 0x3d, 0x1a, - 0x0e, 0x3a, 0x59, 0x09, 0xfc, 0xde, 0xb9, 0xf6, 0x03, 0xe1, 0xb9, 0x1d, 0x45, 0x55, 0x22, 0xcf, - 0x3d, 0x9f, 0xb9, 0x7c, 0xc2, 0x7c, 0x3e, 0xc5, 0xb3, 0xf9, 0x23, 0x6e, 0x0a, 0x68, 0x4b, 0xab, - 0x54, 0x2d, 0x2f, 0xcf, 0xae, 0x5e, 0x9e, 0x38, 0xdd, 0x0d, 0x68, 0xf7, 0x82, 0xd7, 0x17, 0x3e, - 0xbe, 0x99, 0x1b, 0x4e, 0xb3, 0x81, 0x79, 0xe1, 0x97, 0xe6, 0x3d, 0x8c, 0x7d, 0xde, 0x69, 0x31, - 0xfd, 0xe2, 0xac, 0xf2, 0x44, 0xdc, 0x46, 0x21, 0xd0, 0xb9, 0x0c, 0xe9, 0xd7, 0xfe, 0x3b, 0x7a, - 0xb0, 0x88, 0xe7, 0xf1, 0x5c, 0x91, 0x9e, 0x93, 0xb0, 0xd6, 0xfa, 0x3b, 0x74, 0x78, 0x42, 0x8c, - 0xe3, 0x13, 0x62, 0x9c, 0x9e, 0x10, 0xf4, 0x36, 0x23, 0xe8, 0x43, 0x46, 0xd0, 0xd7, 0x8c, 0xa0, - 0xc3, 0x8c, 0xa0, 0xe3, 0x8c, 0xa0, 0x6f, 0x19, 0x41, 0xdf, 0x33, 0x62, 0x9c, 0x66, 0x04, 0xbd, - 0xef, 0x12, 0xe3, 0x53, 0x97, 0xa0, 0xc3, 0x2e, 0x31, 0x8e, 0xbb, 0xc4, 0x78, 0xf1, 0x2c, 0xe0, - 0xf1, 0xab, 0xc0, 0x49, 0x79, 0xa8, 0x40, 0x08, 0xea, 0x24, 0xd2, 0xd5, 0x87, 0x36, 0x17, 0x91, - 0x1d, 0x0b, 0x9e, 0xb2, 0x16, 0x08, 0xbb, 0x70, 0xbb, 0xb1, 0x17, 0x70, 0x17, 0xf6, 0x54, 0x7f, - 0x3d, 0x4c, 0xd8, 0x12, 0x5e, 0x45, 0x2f, 0x88, 0x5b, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0xf5, - 0x43, 0x44, 0xff, 0x1a, 0x05, 0x00, 0x00, + // 606 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0xc1, 0x4f, 0xd4, 0x4e, + 0x14, 0xde, 0xa1, 0xfc, 0x16, 0x32, 0x10, 0x20, 0xfd, 0x5d, 0x2a, 0xea, 0x64, 0xb3, 0x1a, 0x25, + 0x86, 0xb6, 0x09, 0xc6, 0x44, 0x89, 0xf1, 0x00, 0x26, 0x5c, 0x40, 0xcc, 0x62, 0x3c, 0xe8, 0x61, + 0x99, 0xce, 0xbe, 0x2d, 0xa3, 0xed, 0x4e, 0x33, 0x33, 0xad, 0x70, 0x30, 0xf1, 0x2f, 0x30, 0xfe, + 0x19, 0xc6, 0xbf, 0x42, 0x3c, 0xe9, 0x8d, 0x70, 0xe2, 0x28, 0xdd, 0x8b, 0x07, 0x0f, 0xdc, 0xbd, + 0x98, 0x9d, 0x52, 0xb2, 0xbb, 0xae, 0xc4, 0xcb, 0xde, 0x66, 0xfa, 0x7d, 0xef, 0xfb, 0xde, 0x9b, + 0xbe, 0xf7, 0xf0, 0xed, 0x0c, 0x94, 0xc7, 0x85, 0xaf, 0xd8, 0x1e, 0xc4, 0xd4, 0xcf, 0xb8, 0xd4, + 0x29, 0x8d, 0x9a, 0x8a, 0x6b, 0xf0, 0x45, 0xf0, 0x0a, 0x98, 0xf6, 0x12, 0x29, 0xb4, 0xb0, 0x17, + 0x0b, 0xa2, 0x57, 0x10, 0xbd, 0x7e, 0xe2, 0xa2, 0x1b, 0x72, 0xbd, 0x97, 0x06, 0x1e, 0x13, 0xb1, + 0x1f, 0x8a, 0x50, 0xf8, 0x26, 0x24, 0x48, 0xdb, 0xe6, 0x66, 0x2e, 0xe6, 0x54, 0x48, 0x2d, 0x5e, + 0x1d, 0xf4, 0x14, 0x89, 0xe6, 0xa2, 0xa3, 0xce, 0xc1, 0x2b, 0x83, 0xa0, 0x3e, 0x48, 0xa0, 0x84, + 0xea, 0x43, 0xb9, 0x82, 0x82, 0x4e, 0x36, 0x14, 0x7e, 0xeb, 0x92, 0x7a, 0xfa, 0xb4, 0xea, 0xdf, + 0xfe, 0xc3, 0xd5, 0x6d, 0x53, 0x9f, 0xfd, 0x00, 0x4f, 0xc7, 0xa0, 0x69, 0x8b, 0x6a, 0xea, 0xa0, + 0x1a, 0x5a, 0x9a, 0x59, 0xb9, 0xee, 0x0d, 0x16, 0x5b, 0x10, 0xb7, 0x40, 0xd3, 0x67, 0x07, 0x09, + 0x34, 0x2e, 0xe8, 0xf6, 0x26, 0x9e, 0x57, 0x07, 0x4a, 0x43, 0xdc, 0xbc, 0x50, 0x98, 0x30, 0x0a, + 0x37, 0x86, 0x14, 0x76, 0x0c, 0x6b, 0x48, 0x67, 0xae, 0x88, 0xdd, 0x2a, 0xd5, 0xee, 0xe3, 0x49, + 0x95, 0x00, 0x73, 0x2c, 0x23, 0x71, 0xd3, 0xfb, 0xfb, 0x8b, 0x7b, 0x3b, 0x09, 0x30, 0xa3, 0x61, + 0x22, 0x56, 0x7f, 0x59, 0x5f, 0x0e, 0x9d, 0x89, 0x05, 0x74, 0x7c, 0xe8, 0x9c, 0x59, 0x78, 0x17, + 0x57, 0xd7, 0x25, 0x50, 0x0d, 0xf6, 0xf3, 0xf6, 0xbd, 0x7d, 0xe6, 0x32, 0xd1, 0x51, 0x22, 0x02, + 0x37, 0xa0, 0x0a, 0xdc, 0x54, 0x81, 0x5c, 0xae, 0x0d, 0x7f, 0xe7, 0xac, 0x1f, 0xe8, 0x11, 0x97, + 0x6b, 0x19, 0x28, 0x97, 0x0b, 0xf7, 0xdc, 0xd7, 0xed, 0xf9, 0x2a, 0xf7, 0x8d, 0xe4, 0x1a, 0x70, + 0x80, 0xad, 0x0d, 0xd0, 0xf6, 0xcb, 0x3f, 0xe5, 0x63, 0xd1, 0xe1, 0x5a, 0x8c, 0x76, 0x18, 0xc4, + 0x2e, 0x31, 0x91, 0x40, 0x5b, 0x98, 0xe1, 0xc9, 0x4d, 0xae, 0xc6, 0x6c, 0x42, 0xf1, 0x54, 0x03, + 0x92, 0x88, 0xb2, 0xf1, 0xbd, 0xd5, 0x2e, 0xae, 0x3e, 0x86, 0x08, 0xc6, 0xf7, 0x37, 0xea, 0xdb, + 0x78, 0xba, 0xec, 0x07, 0x7b, 0x1d, 0x4f, 0x85, 0xac, 0x69, 0xda, 0xa8, 0xe8, 0xc4, 0x3b, 0x97, + 0xb5, 0xd1, 0x46, 0x24, 0x02, 0x1a, 0x5d, 0x34, 0x53, 0x35, 0x64, 0xbd, 0x73, 0xfd, 0x27, 0xc2, + 0xb3, 0x3b, 0x9a, 0xea, 0x54, 0xfd, 0xf3, 0x88, 0x14, 0xf4, 0x11, 0x23, 0xf2, 0x04, 0xcf, 0x14, + 0x7b, 0xa4, 0x29, 0xa1, 0xad, 0x9c, 0x89, 0x9a, 0xb5, 0x34, 0xb3, 0x72, 0x6d, 0xe4, 0x80, 0x35, + 0xa0, 0xdd, 0x0b, 0x5e, 0x9b, 0xff, 0xf4, 0x76, 0xb6, 0x3f, 0xcd, 0x06, 0x16, 0x25, 0xae, 0xec, + 0x87, 0x18, 0x33, 0xd1, 0x69, 0x71, 0x33, 0xf4, 0x8e, 0x35, 0x52, 0x6e, 0xbd, 0x24, 0x98, 0x5c, + 0xfa, 0xf8, 0xab, 0xff, 0x1f, 0x3f, 0x5a, 0xc0, 0x73, 0x78, 0xb6, 0x4c, 0xcf, 0x4b, 0x79, 0x6b, + 0xed, 0x3d, 0x3a, 0x3a, 0x25, 0x95, 0x93, 0x53, 0x52, 0x39, 0x3b, 0x25, 0xe8, 0x5d, 0x4e, 0xd0, + 0xc7, 0x9c, 0xa0, 0xaf, 0x39, 0x41, 0x47, 0x39, 0x41, 0x27, 0x39, 0x41, 0xdf, 0x73, 0x82, 0x7e, + 0xe4, 0xa4, 0x72, 0x96, 0x13, 0xf4, 0xa1, 0x4b, 0x2a, 0x9f, 0xbb, 0x04, 0x1d, 0x75, 0x49, 0xe5, + 0xa4, 0x4b, 0x2a, 0x2f, 0x9e, 0x86, 0x22, 0x79, 0x1d, 0x7a, 0x99, 0x88, 0x34, 0x48, 0x49, 0xbd, + 0x54, 0xf9, 0xe6, 0xd0, 0x16, 0x32, 0x76, 0x13, 0x29, 0x32, 0xde, 0x02, 0xe9, 0x96, 0xb0, 0x9f, + 0x04, 0xa1, 0xf0, 0x61, 0x5f, 0x9f, 0x6f, 0xa8, 0x11, 0x8b, 0x2a, 0xa8, 0x9a, 0x1d, 0x75, 0xf7, + 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf2, 0x89, 0x1e, 0x34, 0x9d, 0x05, 0x00, 0x00, } func (this *Object) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/virtual_site/public_crudapi.pb.go b/pbgo/extschema/schema/virtual_site/public_crudapi.pb.go index 880b99362..53016893d 100644 --- a/pbgo/extschema/schema/virtual_site/public_crudapi.pb.go +++ b/pbgo/extschema/schema/virtual_site/public_crudapi.pb.go @@ -1058,108 +1058,109 @@ func init() { } var fileDescriptor_df9af660fc83fac9 = []byte{ - // 1611 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcf, 0x6f, 0x13, 0xc7, - 0x1e, 0xcf, 0xd8, 0x8e, 0xb1, 0xc7, 0xf9, 0xb1, 0xcc, 0x83, 0xe0, 0xf8, 0xf1, 0x2c, 0x63, 0x10, - 0xc9, 0x0b, 0xf1, 0x9a, 0x17, 0x84, 0x04, 0x79, 0x0f, 0xde, 0xb3, 0x93, 0x4d, 0x94, 0xbc, 0x84, - 0x44, 0x63, 0x83, 0x2a, 0x0e, 0x5d, 0xad, 0xed, 0xb1, 0xd9, 0x62, 0x7b, 0xb7, 0x3b, 0x63, 0x07, - 0xab, 0x8a, 0x8a, 0x50, 0xaf, 0x55, 0xab, 0xf6, 0x86, 0x7a, 0xe8, 0xa5, 0x52, 0x0f, 0xfd, 0x03, - 0x2a, 0xa5, 0x52, 0xb9, 0x81, 0x38, 0x54, 0xa8, 0xed, 0x81, 0xde, 0xc0, 0xe9, 0x81, 0x23, 0xaa, - 0x7a, 0xe8, 0xb1, 0xda, 0x99, 0x5d, 0x63, 0x3b, 0xc6, 0x71, 0xd2, 0x9c, 0xb2, 0x33, 0xdf, 0xef, - 0xe7, 0xb3, 0xf3, 0x99, 0xef, 0x8f, 0x7c, 0xbd, 0x30, 0x59, 0x27, 0x54, 0xd6, 0x8d, 0x24, 0xcd, - 0xdf, 0x21, 0x15, 0x2d, 0x59, 0xd7, 0x2d, 0x56, 0xd3, 0xca, 0x2a, 0xd5, 0x19, 0x49, 0x9a, 0xb5, - 0x5c, 0x59, 0xcf, 0xab, 0x79, 0xab, 0x56, 0xd0, 0x4c, 0x5d, 0x36, 0x2d, 0x83, 0x19, 0x28, 0x22, - 0x00, 0xb2, 0x00, 0xc8, 0xed, 0x80, 0x48, 0xa2, 0xa4, 0xb3, 0x3b, 0xb5, 0x9c, 0x9c, 0x37, 0x2a, - 0xc9, 0x92, 0x51, 0x32, 0x92, 0x1c, 0x92, 0xab, 0x15, 0xf9, 0x8a, 0x2f, 0xf8, 0x93, 0xa0, 0x8a, - 0x9c, 0x2e, 0x19, 0x46, 0xa9, 0x4c, 0x92, 0x9a, 0xa9, 0x27, 0xb5, 0x6a, 0xd5, 0x60, 0x1a, 0xd3, - 0x8d, 0x2a, 0x75, 0xac, 0x7f, 0x77, 0xac, 0x2d, 0x0e, 0x52, 0x31, 0x59, 0xc3, 0x31, 0x46, 0x3a, - 0x8f, 0x4d, 0x2c, 0xcb, 0xb0, 0x5a, 0xc0, 0x4e, 0x9b, 0x61, 0xb6, 0xb3, 0x4e, 0x76, 0x1a, 0x59, - 0xc3, 0x24, 0xae, 0x29, 0xde, 0x75, 0x15, 0x84, 0x92, 0x6a, 0xbd, 0x0b, 0x1e, 0xeb, 0xbe, 0x2e, - 0xb2, 0xa5, 0x76, 0x7a, 0x4c, 0xf5, 0xb9, 0x50, 0x23, 0xf7, 0x1e, 0xc9, 0x33, 0xc7, 0xf1, 0x7c, - 0x1f, 0xc7, 0xb6, 0x63, 0xc5, 0xbf, 0x01, 0x70, 0x74, 0xc1, 0x22, 0x1a, 0x23, 0x98, 0xbc, 0x5f, - 0x23, 0x94, 0xa1, 0xff, 0xc2, 0x40, 0x85, 0x30, 0xad, 0xa0, 0x31, 0x2d, 0x0c, 0x62, 0x60, 0x3a, - 0x34, 0x77, 0x56, 0xee, 0x8c, 0xca, 0x06, 0x7f, 0x91, 0x40, 0xad, 0x13, 0xa6, 0x65, 0x1b, 0x26, - 0xc1, 0x2d, 0x10, 0xda, 0x80, 0x3e, 0x6a, 0x92, 0x7c, 0xd8, 0xc3, 0xc1, 0x33, 0xf2, 0xdb, 0x43, - 0x2a, 0x0b, 0x8e, 0x8c, 0x49, 0xf2, 0x36, 0x47, 0x7a, 0xfc, 0xe1, 0xf6, 0x88, 0x0d, 0x95, 0x4b, - 0x79, 0xd5, 0xfe, 0x8b, 0x39, 0xd1, 0x7c, 0xf0, 0xe9, 0x75, 0xbf, 0x78, 0x67, 0xfc, 0x0f, 0x00, - 0xc7, 0xdc, 0xe3, 0x52, 0xd3, 0xa8, 0x52, 0x82, 0xfe, 0xb3, 0xe7, 0xbc, 0xb1, 0x9e, 0xe7, 0x5d, - 0x26, 0xac, 0xe7, 0x61, 0xc7, 0x69, 0x83, 0x32, 0x52, 0x51, 0x5b, 0x24, 0x5e, 0x4e, 0x72, 0xbe, - 0x8b, 0x24, 0xc3, 0xbd, 0xf6, 0x52, 0x8d, 0x09, 0xf8, 0xba, 0x4b, 0xb8, 0xd6, 0xa1, 0x7e, 0xaa, - 0x9f, 0xfa, 0x65, 0xc2, 0x0e, 0x20, 0xfd, 0x05, 0x80, 0x63, 0x98, 0x98, 0x65, 0x2d, 0xdf, 0x0a, - 0xd5, 0xff, 0xf6, 0x48, 0x3f, 0xd7, 0x53, 0xba, 0x03, 0xeb, 0x21, 0x7f, 0xb3, 0xe3, 0xb4, 0x17, - 0xfa, 0x9d, 0xd6, 0x21, 0xd9, 0xe7, 0xc4, 0x28, 0x09, 0x25, 0x8b, 0x50, 0xa3, 0x66, 0xe5, 0x89, - 0x5a, 0x27, 0x16, 0xd5, 0x8d, 0x2a, 0xbf, 0xd1, 0x60, 0xda, 0xf7, 0x6a, 0x07, 0x00, 0x3c, 0xee, - 0x5a, 0x6f, 0x09, 0x63, 0xbb, 0xc4, 0xe3, 0x70, 0xbc, 0xa5, 0x50, 0x44, 0x37, 0xfe, 0x10, 0x40, - 0xb8, 0x4c, 0x98, 0xab, 0xf8, 0x34, 0x0c, 0x56, 0xb5, 0x0a, 0xa1, 0xa6, 0x96, 0x27, 0x5c, 0x72, - 0x10, 0xbf, 0xd9, 0x40, 0x08, 0xfa, 0xec, 0x05, 0x57, 0x13, 0xc4, 0xfc, 0x19, 0xdd, 0x86, 0xf6, - 0x1b, 0x39, 0x99, 0x5a, 0x34, 0xac, 0x8a, 0xc6, 0xf8, 0x71, 0xc6, 0xe6, 0xfe, 0xb5, 0x4f, 0x68, - 0xdc, 0x23, 0x2c, 0x71, 0xd0, 0x82, 0x51, 0x20, 0x78, 0xcc, 0xea, 0xd8, 0x8b, 0x7f, 0xec, 0x87, - 0xa1, 0x36, 0x4f, 0xb4, 0x0a, 0x43, 0x79, 0x9e, 0x9c, 0xfc, 0x4d, 0xce, 0xa5, 0xfe, 0x73, 0xff, - 0x02, 0x70, 0xd4, 0x61, 0x28, 0xd0, 0x36, 0x3b, 0x5a, 0x87, 0x23, 0x96, 0xb8, 0x0b, 0x41, 0xe6, - 0xdd, 0xbf, 0x9a, 0x3a, 0xb3, 0x03, 0x87, 0x1c, 0x3c, 0xa7, 0xeb, 0x15, 0x16, 0x5f, 0x9f, 0xb0, - 0x74, 0x94, 0xd5, 0xf0, 0x51, 0x94, 0xd5, 0xb1, 0x23, 0x29, 0x2b, 0xff, 0x51, 0x94, 0x15, 0x5a, - 0x86, 0x7e, 0xca, 0x34, 0x56, 0xa3, 0xe1, 0x2f, 0xbf, 0x00, 0x31, 0xef, 0x74, 0x68, 0x6e, 0xba, - 0x1f, 0x63, 0x86, 0xfb, 0x8a, 0x43, 0xa6, 0xbd, 0x8f, 0xb6, 0x01, 0x76, 0xe0, 0x68, 0x05, 0x1e, - 0xb7, 0x48, 0x91, 0x58, 0x96, 0x5e, 0x2d, 0xa9, 0xa2, 0x01, 0xd3, 0x70, 0x80, 0x33, 0x9e, 0x7e, - 0x4b, 0x29, 0x16, 0xb9, 0x3e, 0xa9, 0x05, 0x13, 0xfb, 0x14, 0xdd, 0x82, 0xe1, 0x02, 0x29, 0x13, - 0x46, 0x0a, 0xaa, 0xb0, 0x91, 0x42, 0x8b, 0x31, 0x38, 0x00, 0xe3, 0x84, 0x83, 0xc6, 0x0e, 0xd8, - 0xe5, 0x7d, 0x07, 0x4e, 0x16, 0x74, 0xaa, 0xe5, 0xca, 0xbd, 0x88, 0xe1, 0x00, 0xc4, 0xa7, 0x5c, - 0x78, 0x17, 0x73, 0x5b, 0xe5, 0xae, 0xfa, 0x02, 0x40, 0xf2, 0xc4, 0xbf, 0x02, 0x30, 0xb4, 0xa6, - 0xd3, 0x01, 0xab, 0xf5, 0x0c, 0x1c, 0x29, 0x6b, 0x39, 0x52, 0x56, 0x8b, 0x7a, 0x99, 0x11, 0xcb, - 0xa9, 0xda, 0x10, 0xdf, 0x5b, 0xe2, 0x5b, 0xe8, 0x2c, 0x1c, 0xb5, 0x88, 0x69, 0x58, 0x4c, 0x2d, - 0xea, 0xa4, 0x5c, 0xa0, 0x61, 0x6f, 0xcc, 0x3b, 0x1d, 0xc4, 0x23, 0x62, 0x73, 0x89, 0xef, 0xa1, - 0x8b, 0xf0, 0x84, 0xe3, 0x24, 0x82, 0xe2, 0xfa, 0xfa, 0xb8, 0x2f, 0x12, 0x36, 0x11, 0x42, 0x81, - 0x88, 0x7f, 0xe7, 0x87, 0x92, 0x38, 0xa7, 0x28, 0xdc, 0x15, 0x46, 0x2a, 0x68, 0x02, 0xfa, 0x19, - 0xa9, 0x6a, 0x55, 0xc6, 0x73, 0x2c, 0x88, 0x9d, 0xd5, 0x21, 0x5a, 0x8e, 0x04, 0xbd, 0x35, 0xbd, - 0x20, 0xba, 0x1e, 0xb6, 0x1f, 0x51, 0x0c, 0x86, 0x0a, 0x84, 0xe6, 0x2d, 0x9d, 0xff, 0x33, 0x0f, - 0x87, 0x84, 0xd2, 0xb6, 0x2d, 0x14, 0x81, 0x01, 0xf7, 0x9a, 0xc3, 0x23, 0x31, 0x30, 0x1d, 0xc0, - 0xad, 0x35, 0xda, 0x84, 0x7e, 0x7e, 0x29, 0x42, 0x52, 0x68, 0xee, 0x4a, 0xbf, 0x5c, 0xed, 0xd6, - 0x25, 0xaf, 0x71, 0xa8, 0x52, 0x65, 0x56, 0x03, 0x3b, 0x3c, 0x48, 0x85, 0xa1, 0xb6, 0x91, 0xc8, - 0xc9, 0x82, 0x6b, 0x07, 0xa2, 0x4d, 0xbd, 0xc1, 0x0b, 0xee, 0x76, 0x46, 0x74, 0x15, 0x42, 0x63, - 0xab, 0x4a, 0x2c, 0xd5, 0x9e, 0x61, 0xc2, 0x41, 0x5e, 0xb4, 0x91, 0x2e, 0xfe, 0x5b, 0x3a, 0xd9, - 0x72, 0x73, 0x2c, 0xc8, 0xbd, 0xed, 0x9d, 0x8e, 0xc6, 0x33, 0x7a, 0x14, 0x8d, 0x67, 0xec, 0x2f, - 0x35, 0x9e, 0x34, 0x0c, 0x94, 0x08, 0xe3, 0xcd, 0xc3, 0x69, 0x61, 0x83, 0x36, 0x1f, 0x7c, 0xac, - 0x24, 0x16, 0x68, 0x0d, 0x42, 0x27, 0x35, 0x29, 0x61, 0x4e, 0x7b, 0x38, 0x60, 0xc3, 0x09, 0x0a, - 0x82, 0x0c, 0x61, 0x91, 0xab, 0x30, 0xd4, 0x16, 0x53, 0x3b, 0xdb, 0xee, 0x92, 0x86, 0x93, 0x99, - 0xf6, 0x23, 0x3a, 0x01, 0x87, 0xeb, 0x5a, 0xb9, 0xe6, 0x26, 0xa5, 0x58, 0xcc, 0x7b, 0xae, 0x80, - 0xc8, 0x75, 0x28, 0x75, 0xc7, 0xed, 0x20, 0xf8, 0x55, 0x5f, 0x60, 0x58, 0xf2, 0xc7, 0x3f, 0x02, - 0x70, 0xa4, 0x3d, 0x1f, 0x50, 0x1a, 0x0e, 0xeb, 0x8c, 0x54, 0x68, 0x58, 0xf4, 0xd2, 0xd9, 0x83, - 0x24, 0x12, 0x16, 0x50, 0x74, 0x11, 0xfa, 0xc5, 0x9c, 0x1d, 0xf6, 0x70, 0x92, 0x70, 0x17, 0x89, - 0x62, 0x1b, 0xf9, 0xb5, 0x3a, 0x7e, 0xf1, 0xbb, 0x70, 0x74, 0x91, 0xb7, 0xbc, 0xc3, 0x0f, 0x07, - 0xd3, 0x50, 0x2a, 0x6a, 0x7a, 0x59, 0xd5, 0x8b, 0xad, 0xd6, 0xc8, 0xcb, 0x36, 0x80, 0xc7, 0xec, - 0xfd, 0x95, 0xa2, 0xdb, 0xf2, 0x66, 0x7e, 0x03, 0xf0, 0x64, 0xcf, 0xa1, 0x00, 0x45, 0xe0, 0xc4, - 0xb2, 0x92, 0x55, 0x71, 0x66, 0x53, 0x5d, 0xda, 0xc0, 0xeb, 0xa9, 0xac, 0xba, 0xa8, 0x2c, 0xa5, - 0x6e, 0xae, 0x65, 0xa5, 0x21, 0xf4, 0x0f, 0x38, 0xd9, 0x65, 0x5b, 0xda, 0xc0, 0xea, 0x02, 0x56, - 0x52, 0x59, 0x45, 0x02, 0x28, 0x0a, 0x23, 0x3d, 0xcc, 0x58, 0xd9, 0x5c, 0x4b, 0x2d, 0x28, 0x92, - 0x07, 0x4d, 0xc2, 0x93, 0x5d, 0xf6, 0x4c, 0x36, 0x95, 0xbd, 0x99, 0x91, 0xbc, 0xe8, 0x14, 0xfc, - 0x5b, 0x97, 0x09, 0x2b, 0xa9, 0x45, 0xc9, 0x87, 0xce, 0xc1, 0xd8, 0x1e, 0xc3, 0x92, 0x82, 0xf1, - 0xca, 0x8d, 0x65, 0x75, 0x23, 0xbd, 0xaa, 0x2c, 0x64, 0x33, 0xd2, 0x70, 0x0f, 0xaf, 0x34, 0xde, - 0xf8, 0xbf, 0x72, 0x43, 0x38, 0x2b, 0x37, 0x16, 0x94, 0x8c, 0xe4, 0x9f, 0xfb, 0x3e, 0x08, 0xbd, - 0xa9, 0xcd, 0x15, 0xf4, 0x02, 0x40, 0xbf, 0x98, 0x54, 0xd0, 0xe0, 0xd3, 0x4c, 0x64, 0x66, 0x10, - 0x57, 0x67, 0xcc, 0xfb, 0xb0, 0xf9, 0x38, 0xfc, 0xef, 0xe2, 0xe5, 0x7b, 0xf9, 0x44, 0xde, 0xa8, - 0x52, 0xa3, 0x4c, 0x12, 0x39, 0x8d, 0x92, 0x44, 0x8d, 0x12, 0x6b, 0x96, 0x6f, 0xdb, 0xcb, 0xd9, - 0x3a, 0xa1, 0x09, 0xdd, 0x48, 0x38, 0x44, 0x09, 0x9b, 0x88, 0x26, 0xb6, 0x2c, 0x9d, 0x91, 0x07, - 0x3f, 0xfd, 0xfa, 0xb9, 0x67, 0x3e, 0x7e, 0xd9, 0xf9, 0x55, 0x99, 0x6c, 0x85, 0x9d, 0x26, 0x3f, - 0x70, 0x1b, 0x81, 0xdc, 0xda, 0xdc, 0xee, 0xf8, 0x3d, 0x44, 0xe7, 0xc1, 0x0c, 0xfa, 0x05, 0x40, - 0xef, 0x32, 0x61, 0xe8, 0xfc, 0xbe, 0x53, 0xa1, 0x10, 0x37, 0x35, 0xe0, 0xf4, 0x18, 0xbf, 0x0f, - 0x9e, 0x7c, 0xeb, 0x01, 0xcd, 0xc7, 0xe1, 0x6b, 0x7b, 0xe5, 0x55, 0x8c, 0xaa, 0xce, 0x8c, 0x7d, - 0x15, 0x5a, 0x44, 0x2b, 0x70, 0x81, 0x97, 0xd1, 0xa5, 0x5e, 0x02, 0xdf, 0xa6, 0x4b, 0x58, 0xb6, - 0xd1, 0xcf, 0x00, 0xfa, 0xec, 0xb2, 0x43, 0x53, 0xfb, 0x17, 0xa6, 0x50, 0x37, 0x3d, 0x68, 0x05, - 0xc7, 0x1b, 0x47, 0xa7, 0x4e, 0x46, 0xb3, 0x07, 0x51, 0x87, 0x7e, 0x07, 0xf0, 0x98, 0x33, 0xf2, - 0xa2, 0x03, 0xcc, 0xc5, 0x91, 0x0b, 0x03, 0xf9, 0x3a, 0xfa, 0x3e, 0x01, 0x47, 0x91, 0x99, 0xab, - 0x11, 0xe5, 0x50, 0x99, 0xd9, 0xe5, 0xb2, 0x6d, 0x67, 0xea, 0x53, 0x00, 0xfd, 0xa2, 0xef, 0xf5, - 0x2f, 0xc6, 0x8e, 0xde, 0x18, 0x99, 0x90, 0xc5, 0x07, 0x0f, 0xd9, 0xfd, 0xe0, 0x21, 0x2b, 0x15, - 0x93, 0x35, 0xe2, 0xdb, 0x47, 0x21, 0xef, 0xca, 0xcc, 0x61, 0xf2, 0x72, 0x1e, 0xcc, 0x44, 0xde, - 0x7d, 0xb4, 0x03, 0x3c, 0x3f, 0xee, 0x80, 0x33, 0x7d, 0x84, 0x88, 0x7f, 0x83, 0xcf, 0x77, 0x00, - 0x68, 0xee, 0x80, 0xa9, 0x01, 0xff, 0x6b, 0x3e, 0xf8, 0x21, 0xec, 0x91, 0x40, 0xfa, 0x33, 0xf0, - 0xf4, 0xfa, 0xf0, 0x02, 0xbe, 0xb9, 0xb8, 0xf6, 0xec, 0x65, 0x74, 0xe8, 0xf9, 0xcb, 0xe8, 0xd0, - 0xeb, 0x97, 0x51, 0x70, 0xbf, 0x19, 0x05, 0x5f, 0x37, 0xa3, 0xe0, 0x49, 0x33, 0x0a, 0x9e, 0x35, - 0xa3, 0xe0, 0x45, 0x33, 0x0a, 0x5e, 0x35, 0xa3, 0x43, 0xaf, 0x9b, 0x51, 0xf0, 0xe9, 0x6e, 0x74, - 0xe8, 0xd1, 0x6e, 0x14, 0x3c, 0xdb, 0x8d, 0x0e, 0x3d, 0xdf, 0x8d, 0x0e, 0xdd, 0xde, 0x2c, 0x19, - 0xe6, 0xdd, 0x92, 0x5c, 0x37, 0xec, 0x89, 0xd4, 0xd2, 0xe4, 0x1a, 0x4d, 0xf2, 0x07, 0xfb, 0x57, - 0x59, 0xc2, 0xb4, 0x8c, 0xba, 0x5e, 0x20, 0x56, 0xc2, 0x35, 0x27, 0xcd, 0x5c, 0xc9, 0x48, 0x92, - 0x7b, 0xcc, 0xf9, 0xf0, 0xd2, 0xe3, 0xfb, 0x4b, 0xce, 0xcf, 0x63, 0x70, 0xe9, 0xcf, 0x00, 0x00, - 0x00, 0xff, 0xff, 0x1b, 0xac, 0xce, 0xe1, 0x1e, 0x13, 0x00, 0x00, + // 1622 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcd, 0x6f, 0xdb, 0x46, + 0x16, 0xf7, 0x48, 0xb2, 0x22, 0x8d, 0xfc, 0xc1, 0xcc, 0x26, 0x8e, 0xac, 0xcd, 0x12, 0x8a, 0x12, + 0xc4, 0x5e, 0xc7, 0xa2, 0xb2, 0x0e, 0x02, 0x24, 0xc6, 0x6e, 0x76, 0x25, 0x9b, 0x36, 0xec, 0xb5, + 0x63, 0x83, 0x52, 0x82, 0x20, 0x87, 0x25, 0x28, 0x6a, 0xa4, 0x70, 0x23, 0x89, 0x5c, 0xce, 0x48, + 0x8e, 0xb1, 0x30, 0x50, 0x04, 0x3d, 0xb6, 0x40, 0xd1, 0x0f, 0x14, 0x48, 0x7b, 0xe8, 0xa5, 0x68, + 0x0f, 0xfd, 0x03, 0x0a, 0xb8, 0x07, 0xdf, 0x1a, 0xe4, 0x50, 0x04, 0xed, 0x25, 0xc7, 0x44, 0xee, + 0x21, 0xc7, 0xa0, 0xe8, 0xa1, 0xbd, 0x15, 0x9c, 0x21, 0x15, 0x49, 0x96, 0x65, 0xd9, 0x75, 0x7a, + 0x12, 0xe7, 0x7d, 0xfc, 0xe6, 0xfd, 0x66, 0xde, 0x7b, 0x7a, 0x24, 0x4c, 0xd5, 0x31, 0x91, 0x0c, + 0x33, 0x45, 0xf4, 0x7b, 0xb8, 0xa2, 0xa5, 0xea, 0x86, 0x4d, 0x6b, 0x5a, 0x59, 0x25, 0x06, 0xc5, + 0x29, 0xab, 0x96, 0x2f, 0x1b, 0xba, 0xaa, 0xdb, 0xb5, 0x82, 0x66, 0x19, 0x92, 0x65, 0x9b, 0xd4, + 0x44, 0x31, 0xee, 0x20, 0x71, 0x07, 0xa9, 0xd5, 0x21, 0x96, 0x2c, 0x19, 0xf4, 0x5e, 0x2d, 0x2f, + 0xe9, 0x66, 0x25, 0x55, 0x32, 0x4b, 0x66, 0x8a, 0xb9, 0xe4, 0x6b, 0x45, 0xb6, 0x62, 0x0b, 0xf6, + 0xc4, 0xa1, 0x62, 0x67, 0x4b, 0xa6, 0x59, 0x2a, 0xe3, 0x94, 0x66, 0x19, 0x29, 0xad, 0x5a, 0x35, + 0xa9, 0x46, 0x0d, 0xb3, 0x4a, 0x5c, 0xed, 0x9f, 0x5d, 0x6d, 0x13, 0x03, 0x57, 0x2c, 0xba, 0xe9, + 0x2a, 0x63, 0xed, 0x61, 0x63, 0xdb, 0x36, 0xed, 0xa6, 0x63, 0xbb, 0xce, 0xb4, 0x5a, 0x51, 0xc7, + 0xdb, 0x95, 0x74, 0xd3, 0xc2, 0x9e, 0x2a, 0xd1, 0x71, 0x14, 0x98, 0xe0, 0x6a, 0xbd, 0xc3, 0x3d, + 0xde, 0x79, 0x5c, 0x78, 0x43, 0x6d, 0xb7, 0x98, 0xe8, 0x71, 0xa0, 0x66, 0xfe, 0xbf, 0x58, 0xa7, + 0xae, 0xe1, 0xc5, 0x1e, 0x86, 0x2d, 0x61, 0x25, 0xbe, 0x02, 0x70, 0x78, 0xce, 0xc6, 0x1a, 0xc5, + 0x0a, 0xfe, 0x5f, 0x0d, 0x13, 0x8a, 0xfe, 0x09, 0x43, 0x15, 0x4c, 0xb5, 0x82, 0x46, 0xb5, 0x28, + 0x88, 0x83, 0xc9, 0xc8, 0xcc, 0x79, 0xa9, 0xfd, 0x56, 0xd6, 0xd8, 0x46, 0xdc, 0x6b, 0x15, 0x53, + 0x2d, 0xb7, 0x69, 0x61, 0xa5, 0xe9, 0x84, 0xd6, 0x60, 0x80, 0x58, 0x58, 0x8f, 0xfa, 0x98, 0xf3, + 0x94, 0xb4, 0xff, 0x95, 0x4a, 0x1c, 0x23, 0x6b, 0x61, 0xdd, 0xc1, 0xc8, 0x8c, 0x3e, 0xda, 0x1a, + 0x72, 0x5c, 0xa5, 0x92, 0xae, 0x3a, 0xbf, 0x0a, 0x03, 0x9a, 0x0d, 0x3f, 0xb9, 0x11, 0xe4, 0x7b, + 0x26, 0x7e, 0x01, 0x70, 0xc4, 0x0b, 0x97, 0x58, 0x66, 0x95, 0x60, 0xf4, 0xf7, 0x3d, 0xf1, 0xc6, + 0xbb, 0xc6, 0xbb, 0x88, 0x69, 0xd7, 0x60, 0x47, 0xc9, 0x26, 0xa1, 0xb8, 0xa2, 0x36, 0x41, 0xfc, + 0x0c, 0xe4, 0x62, 0x07, 0x48, 0x96, 0x59, 0xed, 0x85, 0x1a, 0xe1, 0xee, 0xab, 0x1e, 0xe0, 0x4a, + 0x1b, 0xfb, 0x89, 0x5e, 0xec, 0x17, 0x31, 0x3d, 0x04, 0xf5, 0xe7, 0x00, 0x8e, 0x28, 0xd8, 0x2a, + 0x6b, 0x7a, 0xf3, 0xaa, 0xfe, 0xb5, 0x87, 0xfa, 0x85, 0xae, 0xd4, 0x5d, 0xb7, 0x2e, 0xf4, 0xd7, + 0xdb, 0xa2, 0xbd, 0xd4, 0x2b, 0x5a, 0x17, 0xe4, 0x80, 0x88, 0x51, 0x0a, 0x0a, 0x36, 0x26, 0x66, + 0xcd, 0xd6, 0xb1, 0x5a, 0xc7, 0x36, 0x31, 0xcc, 0x2a, 0x3b, 0xd1, 0x70, 0x26, 0xf0, 0x72, 0x1b, + 0x00, 0x65, 0xd4, 0xd3, 0xde, 0xe6, 0xca, 0x56, 0x8a, 0x27, 0xe1, 0x68, 0x93, 0x21, 0xbf, 0xdd, + 0xc4, 0x23, 0x00, 0xe1, 0x22, 0xa6, 0x1e, 0xe3, 0xb3, 0x30, 0x5c, 0xd5, 0x2a, 0x98, 0x58, 0x9a, + 0x8e, 0x19, 0xe5, 0xb0, 0xf2, 0x5a, 0x80, 0x10, 0x0c, 0x38, 0x0b, 0xc6, 0x26, 0xac, 0xb0, 0x67, + 0x74, 0x17, 0x3a, 0x3b, 0x32, 0x30, 0xb5, 0x68, 0xda, 0x15, 0x8d, 0xb2, 0x70, 0x46, 0x66, 0xfe, + 0x76, 0xc0, 0xd5, 0x78, 0x21, 0x2c, 0x30, 0xa7, 0x39, 0xb3, 0x80, 0x95, 0x11, 0xbb, 0x4d, 0x96, + 0x78, 0x37, 0x08, 0x23, 0x2d, 0x96, 0x68, 0x19, 0x46, 0x74, 0x96, 0x9c, 0x6c, 0x27, 0xf7, 0x50, + 0xff, 0x7a, 0x70, 0x01, 0xb8, 0xec, 0x14, 0xc8, 0xbd, 0x1d, 0x74, 0xb4, 0x0a, 0x87, 0x6c, 0x7e, + 0x16, 0x1c, 0xcc, 0x7f, 0x70, 0x35, 0xb5, 0x67, 0x87, 0x12, 0x71, 0xfd, 0x19, 0x5c, 0xb7, 0x6b, + 0x09, 0xf4, 0xb8, 0x96, 0xb6, 0xb2, 0x1a, 0x3c, 0x8e, 0xb2, 0x3a, 0x71, 0x2c, 0x65, 0x15, 0x3c, + 0x8e, 0xb2, 0x42, 0x8b, 0x30, 0x48, 0xa8, 0x46, 0x6b, 0x24, 0xfa, 0xd9, 0xa7, 0x20, 0xee, 0x9f, + 0x8c, 0xcc, 0x4c, 0xf6, 0x42, 0xcc, 0x32, 0x5b, 0x1e, 0x64, 0xc6, 0xbf, 0xb3, 0x05, 0x14, 0xd7, + 0x1d, 0x2d, 0xc1, 0x93, 0x36, 0x2e, 0x62, 0xdb, 0x36, 0xaa, 0x25, 0x95, 0x37, 0x60, 0x12, 0x0d, + 0x31, 0xc4, 0xb3, 0xfb, 0x94, 0x62, 0x91, 0xf1, 0x13, 0x9a, 0x6e, 0x5c, 0x4e, 0xd0, 0x6d, 0x18, + 0x2d, 0xe0, 0x32, 0xa6, 0xb8, 0xa0, 0x72, 0x1d, 0x2e, 0x34, 0x11, 0xc3, 0x7d, 0x20, 0x8e, 0xb9, + 0xde, 0x8a, 0xeb, 0xec, 0xe1, 0xde, 0x81, 0xe3, 0x05, 0x83, 0x68, 0xf9, 0x72, 0x37, 0x60, 0xd8, + 0x07, 0xf0, 0x19, 0xcf, 0xbd, 0x03, 0xb9, 0xa5, 0x72, 0x97, 0x03, 0x21, 0x20, 0xf8, 0x12, 0x9f, + 0x03, 0x18, 0x59, 0x31, 0x48, 0x9f, 0xd5, 0x7a, 0x0e, 0x0e, 0x95, 0xb5, 0x3c, 0x2e, 0xab, 0x45, + 0xa3, 0x4c, 0xb1, 0xed, 0x56, 0x6d, 0x84, 0xc9, 0x16, 0x98, 0x08, 0x9d, 0x87, 0xc3, 0x36, 0xb6, + 0x4c, 0x9b, 0xaa, 0x45, 0x03, 0x97, 0x0b, 0x24, 0xea, 0x8f, 0xfb, 0x27, 0xc3, 0xca, 0x10, 0x17, + 0x2e, 0x30, 0x19, 0xba, 0x0c, 0x4f, 0xb9, 0x46, 0xfc, 0x52, 0x3c, 0xdb, 0x00, 0xb3, 0x45, 0x5c, + 0xc7, 0xaf, 0x90, 0x7b, 0x24, 0xbe, 0x09, 0x42, 0x81, 0xc7, 0xc9, 0x0b, 0x77, 0x89, 0xe2, 0x0a, + 0x1a, 0x83, 0x41, 0x8a, 0xab, 0x5a, 0x95, 0xb2, 0x1c, 0x0b, 0x2b, 0xee, 0xea, 0x08, 0x2d, 0x47, + 0x80, 0xfe, 0x9a, 0x51, 0xe0, 0x5d, 0x4f, 0x71, 0x1e, 0x51, 0x1c, 0x46, 0x0a, 0x98, 0xe8, 0xb6, + 0xc1, 0xfe, 0xcc, 0xa3, 0x11, 0xce, 0xb4, 0x45, 0x84, 0x62, 0x30, 0xe4, 0x1d, 0x73, 0x74, 0x28, + 0x0e, 0x26, 0x43, 0x4a, 0x73, 0x8d, 0xd6, 0x61, 0x90, 0x1d, 0x0a, 0xa7, 0x14, 0x99, 0xb9, 0xd6, + 0x2b, 0x57, 0x3b, 0x79, 0x49, 0x2b, 0xcc, 0x55, 0xae, 0x52, 0x7b, 0x53, 0x71, 0x71, 0x90, 0x0a, + 0x23, 0x2d, 0x23, 0x91, 0x9b, 0x05, 0xff, 0x38, 0x14, 0x6c, 0xfa, 0xb5, 0x3f, 0xc7, 0x6e, 0x45, + 0x44, 0xd7, 0x21, 0x34, 0x37, 0xaa, 0xd8, 0x56, 0x9d, 0x19, 0x26, 0x1a, 0x66, 0x45, 0x1b, 0xeb, + 0xc0, 0xbf, 0x6d, 0xe0, 0x0d, 0x2f, 0xc7, 0xc2, 0xcc, 0xda, 0x91, 0xb4, 0x35, 0x9e, 0xe1, 0xe3, + 0x68, 0x3c, 0x23, 0xbf, 0xab, 0xf1, 0x64, 0x60, 0xa8, 0x84, 0x29, 0x6b, 0x1e, 0x6e, 0x0b, 0xeb, + 0xb7, 0xf9, 0x28, 0x27, 0x4a, 0x7c, 0x81, 0x56, 0x20, 0x74, 0x53, 0x93, 0x60, 0xea, 0xb6, 0x87, + 0x43, 0x36, 0x9c, 0x30, 0x07, 0xc8, 0x62, 0x1a, 0xbb, 0x0e, 0x23, 0x2d, 0x77, 0xea, 0x64, 0xdb, + 0x7d, 0xbc, 0xe9, 0x66, 0xa6, 0xf3, 0x88, 0x4e, 0xc1, 0xc1, 0xba, 0x56, 0xae, 0x79, 0x49, 0xc9, + 0x17, 0xb3, 0xbe, 0x6b, 0x20, 0x76, 0x03, 0x0a, 0x9d, 0xf7, 0x76, 0x18, 0xff, 0xe5, 0x40, 0x68, + 0x50, 0x08, 0x26, 0xde, 0x06, 0x70, 0xa8, 0x35, 0x1f, 0x50, 0x06, 0x0e, 0x1a, 0x14, 0x57, 0x48, + 0x94, 0xf7, 0xd2, 0xe9, 0xc3, 0x24, 0x92, 0xc2, 0x5d, 0xd1, 0x65, 0x18, 0xe4, 0x73, 0x76, 0xd4, + 0xc7, 0x40, 0xa2, 0x1d, 0x20, 0xb2, 0xa3, 0x64, 0xc7, 0xea, 0xda, 0x25, 0xee, 0xc3, 0xe1, 0x79, + 0xd6, 0xf2, 0x8e, 0x3e, 0x1c, 0x4c, 0x42, 0xa1, 0xa8, 0x19, 0x65, 0xd5, 0x28, 0x36, 0x5b, 0x23, + 0x2b, 0xdb, 0x90, 0x32, 0xe2, 0xc8, 0x97, 0x8a, 0x5e, 0xcb, 0x9b, 0xfa, 0x09, 0xc0, 0xd3, 0x5d, + 0x87, 0x02, 0x14, 0x83, 0x63, 0x8b, 0x72, 0x4e, 0x55, 0xb2, 0xeb, 0xea, 0xc2, 0x9a, 0xb2, 0x9a, + 0xce, 0xa9, 0xf3, 0xf2, 0x42, 0xfa, 0xd6, 0x4a, 0x4e, 0x18, 0x40, 0x7f, 0x81, 0xe3, 0x1d, 0xba, + 0x85, 0x35, 0x45, 0x9d, 0x53, 0xe4, 0x74, 0x4e, 0x16, 0x00, 0x12, 0x61, 0xac, 0x8b, 0x5a, 0x91, + 0xd7, 0x57, 0xd2, 0x73, 0xb2, 0xe0, 0x43, 0xe3, 0xf0, 0x74, 0x87, 0x3e, 0x9b, 0x4b, 0xe7, 0x6e, + 0x65, 0x05, 0x3f, 0x3a, 0x03, 0xff, 0xd4, 0xa1, 0x52, 0xe4, 0xf4, 0xbc, 0x10, 0x40, 0x17, 0x60, + 0x7c, 0x8f, 0x62, 0x41, 0x56, 0x94, 0xa5, 0x9b, 0x8b, 0xea, 0x5a, 0x66, 0x59, 0x9e, 0xcb, 0x65, + 0x85, 0xc1, 0x2e, 0x56, 0x19, 0x65, 0xed, 0xdf, 0xf2, 0x4d, 0x6e, 0x2c, 0xdf, 0x9c, 0x93, 0xb3, + 0x42, 0x70, 0x66, 0x07, 0x42, 0x7f, 0x7a, 0x7d, 0x09, 0xfd, 0x0a, 0x60, 0x90, 0x4f, 0x2a, 0xa8, + 0xff, 0x69, 0x26, 0x36, 0xd5, 0x8f, 0xa9, 0x3b, 0xe6, 0x7d, 0x0c, 0x1a, 0xdf, 0x46, 0xb3, 0xc5, + 0xab, 0x0f, 0xf4, 0xa4, 0x6e, 0x56, 0x89, 0x59, 0xc6, 0xc9, 0xbc, 0x46, 0x70, 0xb2, 0x46, 0xb0, + 0x3d, 0xdd, 0x29, 0x36, 0xf4, 0x16, 0xb9, 0x63, 0x36, 0x5d, 0xc7, 0x24, 0x69, 0x98, 0x49, 0x77, + 0x87, 0xa4, 0xb3, 0x03, 0x49, 0x6e, 0xd8, 0x06, 0xc5, 0x0f, 0x7f, 0xf8, 0xf1, 0x03, 0xdf, 0x6c, + 0xe2, 0xaa, 0xfb, 0xba, 0x99, 0x6a, 0xe6, 0x03, 0x49, 0xfd, 0xdf, 0xeb, 0x10, 0x52, 0x53, 0xb8, + 0xd5, 0xf6, 0xa2, 0x44, 0x66, 0xc1, 0x14, 0xfa, 0x19, 0x40, 0xff, 0x22, 0xa6, 0xe8, 0xe2, 0x81, + 0xe3, 0x22, 0x67, 0x3d, 0xd1, 0xe7, 0x58, 0x99, 0xf8, 0x04, 0x3c, 0xfe, 0xda, 0xe7, 0xd0, 0xbe, + 0xb3, 0x97, 0x76, 0xc5, 0xac, 0x1a, 0xd4, 0xec, 0xca, 0xbc, 0x4d, 0xb5, 0x3f, 0x79, 0x1b, 0x6b, + 0x05, 0xc6, 0xfd, 0x2a, 0xba, 0xd2, 0x8d, 0xfb, 0x7e, 0x94, 0xb9, 0x66, 0x0b, 0xbd, 0x02, 0x30, + 0xe0, 0x94, 0x2a, 0x9a, 0x38, 0xb8, 0x98, 0x39, 0xf1, 0xc9, 0x7e, 0xab, 0x3e, 0xf1, 0xe1, 0x1f, + 0xc3, 0x5c, 0x42, 0xd3, 0x87, 0x61, 0x8e, 0xde, 0xf1, 0xc1, 0x13, 0xee, 0x08, 0x8d, 0x0e, 0x31, + 0x67, 0xc7, 0x2e, 0xf5, 0x65, 0xeb, 0x72, 0xff, 0xe2, 0x8d, 0x26, 0xfa, 0x72, 0x4c, 0x3e, 0x52, + 0xa2, 0x77, 0x98, 0x6c, 0x39, 0x89, 0xbf, 0x0b, 0x60, 0x90, 0xf7, 0xd7, 0xde, 0x45, 0xdf, 0xd6, + 0x83, 0x63, 0x63, 0x12, 0xff, 0xb0, 0x22, 0x79, 0x1f, 0x56, 0x24, 0xb9, 0x62, 0xd1, 0xcd, 0xc4, + 0x47, 0x6f, 0x94, 0xf7, 0xb5, 0xa9, 0xa3, 0x24, 0xf9, 0x2c, 0x98, 0x8a, 0xfd, 0x67, 0x67, 0x1b, + 0xf8, 0xbe, 0xdf, 0x06, 0xe7, 0x7a, 0x30, 0xe4, 0xff, 0xc3, 0xcf, 0xb6, 0x01, 0x68, 0x6c, 0x83, + 0x89, 0x3e, 0xff, 0xb6, 0x1f, 0x7e, 0x17, 0xf5, 0x09, 0x20, 0xf3, 0x3e, 0x78, 0x72, 0x63, 0x70, + 0x4e, 0xb9, 0x35, 0xbf, 0xf2, 0xf4, 0x85, 0x38, 0xf0, 0xec, 0x85, 0x38, 0xf0, 0xea, 0x85, 0x08, + 0xde, 0x6a, 0x88, 0xe0, 0xcb, 0x86, 0x08, 0x1e, 0x37, 0x44, 0xf0, 0xb4, 0x21, 0x82, 0xe7, 0x0d, + 0x11, 0xbc, 0x6c, 0x88, 0x03, 0xaf, 0x1a, 0x22, 0x78, 0x6f, 0x57, 0x1c, 0xd8, 0xd9, 0x15, 0xc1, + 0xd3, 0x5d, 0x71, 0xe0, 0xd9, 0xae, 0x38, 0x70, 0x77, 0xbd, 0x64, 0x5a, 0xf7, 0x4b, 0x52, 0xdd, + 0x74, 0x46, 0x62, 0x5b, 0x93, 0x6a, 0x24, 0xc5, 0x1e, 0x9c, 0xd7, 0xc2, 0xa4, 0x65, 0x9b, 0x75, + 0xa3, 0x80, 0xed, 0xa4, 0xa7, 0x4e, 0x59, 0xf9, 0x92, 0x99, 0xc2, 0x0f, 0xa8, 0xfb, 0xe5, 0xa7, + 0xcb, 0x07, 0xa0, 0x7c, 0x90, 0x5d, 0xce, 0x95, 0xdf, 0x02, 0x00, 0x00, 0xff, 0xff, 0xec, 0x36, + 0x6d, 0xab, 0x9f, 0x13, 0x00, 0x00, } func (x GetResponseFormatCode) String() string { diff --git a/pbgo/extschema/schema/virtual_site/public_crudapi.vesapi.go b/pbgo/extschema/schema/virtual_site/public_crudapi.vesapi.go index b568874bb..548e79d06 100644 --- a/pbgo/extschema/schema/virtual_site/public_crudapi.vesapi.go +++ b/pbgo/extschema/schema/virtual_site/public_crudapi.vesapi.go @@ -2444,10 +2444,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2504,10 +2508,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", @@ -2566,10 +2574,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/virtual_site/public_customapi.pb.go b/pbgo/extschema/schema/virtual_site/public_customapi.pb.go index 2ec06ec00..f46414afe 100644 --- a/pbgo/extschema/schema/virtual_site/public_customapi.pb.go +++ b/pbgo/extschema/schema/virtual_site/public_customapi.pb.go @@ -277,42 +277,44 @@ func init() { } var fileDescriptor_a8e7ee3fff5e5f3c = []byte{ - // 551 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0x41, 0x6b, 0xd4, 0x40, - 0x14, 0xce, 0x64, 0xdb, 0xc2, 0xa6, 0x82, 0x25, 0x07, 0x89, 0xb1, 0x0c, 0x75, 0x0f, 0x52, 0xb0, - 0xc9, 0xe0, 0x7a, 0x16, 0xb1, 0x45, 0xa4, 0x27, 0xcb, 0xea, 0xc9, 0x4b, 0x49, 0xb2, 0x6f, 0xd3, - 0xb1, 0x9b, 0xcc, 0x38, 0x33, 0x59, 0x2c, 0x52, 0x90, 0x1e, 0x3c, 0x78, 0x2a, 0xf8, 0x27, 0xfc, - 0x09, 0x42, 0x2f, 0xbd, 0xd9, 0x93, 0xac, 0x7a, 0xe9, 0xd1, 0xcd, 0x7a, 0xf0, 0xd8, 0x9f, 0x20, - 0x3b, 0x49, 0xba, 0x9b, 0xd2, 0x96, 0xde, 0xde, 0xcb, 0xf7, 0xbe, 0x97, 0xef, 0x7b, 0xf9, 0x62, - 0x3d, 0x1a, 0x80, 0xf4, 0x29, 0x23, 0x32, 0xda, 0x81, 0x24, 0x20, 0x03, 0x2a, 0x54, 0x16, 0xf4, - 0xb7, 0x25, 0x55, 0x40, 0x78, 0x16, 0xf6, 0x69, 0xb4, 0x1d, 0x65, 0x52, 0xb1, 0x24, 0xe0, 0xd4, - 0xe7, 0x82, 0x29, 0x66, 0xbb, 0x05, 0xc5, 0x2f, 0x28, 0xfe, 0x2c, 0xc5, 0xf5, 0x62, 0xaa, 0x76, - 0xb2, 0xd0, 0x8f, 0x58, 0x42, 0x62, 0x16, 0x33, 0xa2, 0x29, 0x61, 0xd6, 0xd3, 0x9d, 0x6e, 0x74, - 0x55, 0xac, 0x72, 0x97, 0x63, 0xc6, 0xe2, 0x3e, 0x90, 0x80, 0x53, 0x12, 0xa4, 0x29, 0x53, 0x81, - 0xa2, 0x2c, 0x95, 0x25, 0xea, 0xd6, 0xb5, 0x81, 0x10, 0x4c, 0x54, 0xd8, 0xbd, 0x3a, 0xc6, 0xf8, - 0x2c, 0xf1, 0x6e, 0x1d, 0x54, 0x7b, 0x1c, 0x2a, 0xa8, 0x75, 0xc1, 0x2f, 0x48, 0x48, 0x07, 0x17, - 0xe8, 0x0f, 0xae, 0xb9, 0xc9, 0xcc, 0xae, 0xd6, 0x86, 0x75, 0xfb, 0x15, 0xf4, 0x21, 0x52, 0x00, - 0x1d, 0x78, 0x97, 0x81, 0x54, 0xf6, 0xb2, 0xd5, 0x4c, 0x83, 0x04, 0x24, 0x0f, 0x22, 0x70, 0xd0, - 0x0a, 0x5a, 0x6d, 0x76, 0xa6, 0x0f, 0x6c, 0xdb, 0x9a, 0x9b, 0x34, 0x8e, 0xa9, 0x01, 0x5d, 0xb7, - 0x3e, 0x21, 0x6b, 0x69, 0xba, 0x45, 0x72, 0x96, 0x4a, 0xb0, 0x7d, 0x6b, 0x5e, 0xbb, 0xd5, 0x2b, - 0x16, 0xdb, 0x8e, 0x5f, 0x3f, 0xf9, 0xf3, 0x09, 0xf6, 0x7a, 0x8f, 0x43, 0xa7, 0x18, 0xb3, 0xd7, - 0xad, 0x79, 0xaa, 0x20, 0x91, 0x8e, 0xb9, 0xd2, 0x58, 0x5d, 0x6c, 0xaf, 0xf9, 0x57, 0x7f, 0x22, - 0xbf, 0x7a, 0xd9, 0xa6, 0x82, 0xa4, 0xd8, 0xa1, 0xa9, 0x2d, 0x3e, 0xd5, 0x51, 0x41, 0x13, 0xc1, - 0xbb, 0x34, 0xed, 0x96, 0x4e, 0x74, 0x6d, 0xdf, 0xb1, 0x16, 0x14, 0xa4, 0x41, 0xaa, 0x4a, 0x1b, - 0x65, 0x57, 0xb7, 0xde, 0xb8, 0xca, 0xfa, 0xdc, 0xd4, 0x7a, 0xfb, 0xd0, 0xb4, 0x9a, 0x1b, 0x3a, - 0x5c, 0xcf, 0xb6, 0x36, 0xed, 0x9f, 0xc8, 0xba, 0xf5, 0x02, 0x54, 0xa5, 0x41, 0xda, 0x0f, 0x6f, - 0xe2, 0xa2, 0x3c, 0xbc, 0xbb, 0x76, 0xb3, 0xe1, 0xe2, 0xbe, 0xad, 0xde, 0xc9, 0x37, 0x13, 0xe5, - 0xdf, 0x9d, 0x49, 0x50, 0x3c, 0xca, 0xbc, 0x72, 0xda, 0x9b, 0x4c, 0x4b, 0x4f, 0x40, 0xd0, 0x3d, - 0xf8, 0xfd, 0xf7, 0x8b, 0xf9, 0xd4, 0x7e, 0x52, 0xfe, 0x04, 0xe4, 0xdc, 0x89, 0x24, 0x1f, 0xce, - 0xeb, 0xfd, 0x5a, 0x36, 0x4a, 0x64, 0x9f, 0xc8, 0xca, 0x82, 0x4b, 0x8e, 0x8f, 0x50, 0xe3, 0xd7, - 0x11, 0xba, 0x7f, 0x8d, 0xb8, 0x97, 0xe1, 0x5b, 0x88, 0xd4, 0xc1, 0x0f, 0xc7, 0x5c, 0x42, 0xeb, - 0x9f, 0xd1, 0x70, 0x84, 0x8d, 0xd3, 0x11, 0x36, 0xce, 0x46, 0x18, 0x7d, 0xcc, 0x31, 0xfa, 0x9a, - 0x63, 0x74, 0x92, 0x63, 0x34, 0xcc, 0x31, 0xfa, 0x93, 0x63, 0xf4, 0x2f, 0xc7, 0xc6, 0x59, 0x8e, - 0xd1, 0xe1, 0x18, 0x1b, 0xc7, 0x63, 0x8c, 0x86, 0x63, 0x6c, 0x9c, 0x8e, 0xb1, 0xf1, 0x66, 0x2b, - 0x66, 0x7c, 0x37, 0xf6, 0x07, 0xac, 0xaf, 0x40, 0x88, 0xc0, 0xcf, 0x24, 0xd1, 0x45, 0x8f, 0x89, - 0xc4, 0xe3, 0x82, 0x0d, 0x68, 0x17, 0x84, 0x57, 0xc1, 0x84, 0x87, 0x31, 0x23, 0xf0, 0x5e, 0x95, - 0x21, 0xbf, 0x24, 0xeb, 0xe1, 0x82, 0x8e, 0xf9, 0xe3, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x11, - 0x1b, 0x48, 0x3b, 0x24, 0x04, 0x00, 0x00, + // 581 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0x4f, 0x6b, 0xd5, 0x4c, + 0x14, 0xc6, 0xef, 0xa4, 0x7f, 0xa0, 0xe9, 0x0b, 0x6f, 0xc9, 0x42, 0xae, 0xd7, 0x32, 0xd4, 0xbb, + 0x90, 0x82, 0x4d, 0x06, 0x2b, 0x2e, 0x45, 0x6c, 0x11, 0xe9, 0xca, 0x52, 0x5d, 0xb9, 0x29, 0x93, + 0xf4, 0x34, 0x1d, 0x7b, 0x93, 0x33, 0xce, 0x4c, 0x42, 0x8b, 0x14, 0xa4, 0x0b, 0x41, 0x57, 0x82, + 0x6b, 0xf7, 0x7e, 0x04, 0xa1, 0x9b, 0xee, 0xec, 0x4a, 0x8a, 0x6e, 0xba, 0xb4, 0xb9, 0x2e, 0x5c, + 0xf6, 0x23, 0xc8, 0x9d, 0x24, 0xbd, 0xcd, 0xc5, 0x96, 0xee, 0xce, 0xc9, 0x6f, 0x9e, 0x33, 0xe7, + 0x39, 0x99, 0xe3, 0xde, 0xcb, 0x41, 0x07, 0x02, 0x99, 0x8e, 0xb6, 0x20, 0xe1, 0x2c, 0x17, 0xca, + 0x64, 0xbc, 0xb7, 0xae, 0x85, 0x01, 0x26, 0xb3, 0xb0, 0x27, 0xa2, 0xf5, 0x28, 0xd3, 0x06, 0x13, + 0x2e, 0x45, 0x20, 0x15, 0x1a, 0xf4, 0x3a, 0xa5, 0x24, 0x28, 0x25, 0xc1, 0x45, 0x49, 0xc7, 0x8f, + 0x85, 0xd9, 0xca, 0xc2, 0x20, 0xc2, 0x84, 0xc5, 0x18, 0x23, 0xb3, 0x92, 0x30, 0xdb, 0xb4, 0x99, + 0x4d, 0x6c, 0x54, 0x96, 0xea, 0xcc, 0xc6, 0x88, 0x71, 0x0f, 0x18, 0x97, 0x82, 0xf1, 0x34, 0x45, + 0xc3, 0x8d, 0xc0, 0x54, 0x57, 0xb4, 0xd3, 0xec, 0x0d, 0x94, 0x42, 0x55, 0xb3, 0x5b, 0x4d, 0x86, + 0xf2, 0xa2, 0xf0, 0x66, 0x13, 0x9a, 0x5d, 0x09, 0x35, 0xea, 0x8e, 0xf8, 0x05, 0x0d, 0x69, 0x3e, + 0x22, 0xbf, 0x73, 0xc5, 0x4c, 0x2e, 0xd4, 0xea, 0x2e, 0xbb, 0xff, 0x3f, 0x87, 0x1e, 0x44, 0x06, + 0x60, 0x0d, 0x5e, 0x67, 0xa0, 0x8d, 0x37, 0xeb, 0x4e, 0xa5, 0x3c, 0x01, 0x2d, 0x79, 0x04, 0x6d, + 0x32, 0x47, 0xe6, 0xa7, 0xd6, 0x86, 0x1f, 0x3c, 0xcf, 0x1d, 0x1f, 0x24, 0x6d, 0xc7, 0x02, 0x1b, + 0x77, 0xdf, 0x11, 0x77, 0x66, 0x58, 0x45, 0x4b, 0x4c, 0x35, 0x78, 0x81, 0x3b, 0x61, 0xdd, 0xda, + 0x12, 0xd3, 0x8b, 0xed, 0xa0, 0x39, 0xf2, 0x27, 0x03, 0xf6, 0x62, 0x57, 0xc2, 0x5a, 0x79, 0xcc, + 0x5b, 0x72, 0x27, 0x84, 0x81, 0x44, 0xb7, 0x9d, 0xb9, 0xb1, 0xf9, 0xe9, 0xc5, 0x85, 0xe0, 0xf2, + 0x5f, 0x14, 0xd4, 0x97, 0xad, 0x18, 0x48, 0xca, 0x1a, 0x56, 0xda, 0x95, 0xc3, 0x3e, 0x6a, 0x34, + 0x68, 0x78, 0x5b, 0xa4, 0x1b, 0x95, 0x13, 0x1b, 0x7b, 0x37, 0xdc, 0x49, 0x03, 0x29, 0x4f, 0x4d, + 0x65, 0xa3, 0xca, 0x9a, 0xd6, 0xc7, 0x2e, 0xb3, 0x3e, 0x3e, 0xb4, 0xbe, 0x78, 0xe4, 0xb8, 0x53, + 0xcb, 0xf6, 0x71, 0x3d, 0x5e, 0x5d, 0xf1, 0xde, 0x3b, 0xee, 0x7f, 0x4f, 0xc1, 0xd4, 0x3d, 0x68, + 0xef, 0xee, 0x75, 0x5c, 0x54, 0x83, 0xef, 0x2c, 0x5c, 0xef, 0x70, 0x39, 0xdf, 0xee, 0x67, 0x72, + 0xf4, 0xd5, 0x21, 0xc5, 0xb7, 0xf6, 0xea, 0xe6, 0x83, 0x9d, 0xc8, 0x8f, 0x30, 0xd5, 0xd8, 0x03, + 0x3f, 0xe4, 0x1a, 0xfc, 0x04, 0x53, 0x61, 0x50, 0x2d, 0xcc, 0x8d, 0x22, 0x11, 0x0d, 0x59, 0x0e, + 0xda, 0x17, 0xe8, 0x57, 0xb7, 0xf8, 0x83, 0x5b, 0xb4, 0xaf, 0x80, 0x6f, 0xec, 0xff, 0xfc, 0xfd, + 0xc9, 0x79, 0xe4, 0x3d, 0xac, 0x96, 0x87, 0x9d, 0x4f, 0x40, 0xb3, 0x37, 0xe7, 0xf1, 0x5e, 0xe3, + 0x4d, 0x55, 0x64, 0x8f, 0xe9, 0xda, 0x7a, 0x87, 0x1d, 0x1e, 0x90, 0xb1, 0x1f, 0x07, 0xe4, 0xf6, + 0x15, 0xa6, 0x9e, 0x85, 0xaf, 0x20, 0x32, 0xfb, 0xdf, 0xdb, 0xce, 0x0c, 0x59, 0xfa, 0x40, 0x8e, + 0x4f, 0x69, 0xeb, 0xe4, 0x94, 0xb6, 0xce, 0x4e, 0x29, 0x79, 0x5b, 0x50, 0xf2, 0xa5, 0xa0, 0xe4, + 0xa8, 0xa0, 0xe4, 0xb8, 0xa0, 0xe4, 0x57, 0x41, 0xc9, 0x9f, 0x82, 0xb6, 0xce, 0x0a, 0x4a, 0x3e, + 0xf6, 0x69, 0xeb, 0xb0, 0x4f, 0xc9, 0x71, 0x9f, 0xb6, 0x4e, 0xfa, 0xb4, 0xf5, 0x72, 0x35, 0x46, + 0xb9, 0x1d, 0x07, 0x39, 0xf6, 0x0c, 0x28, 0xc5, 0x83, 0x4c, 0x33, 0x1b, 0x6c, 0xa2, 0x4a, 0x7c, + 0xa9, 0x30, 0x17, 0x1b, 0xa0, 0xfc, 0x1a, 0x33, 0x19, 0xc6, 0xc8, 0x60, 0xc7, 0x54, 0xcb, 0xf1, + 0x8f, 0x1d, 0x09, 0x27, 0xed, 0x7a, 0xdc, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x32, 0xef, 0x37, + 0xb8, 0x5c, 0x04, 0x00, 0x00, } func (this *SelecteeRequest) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/waf/public_waf_monitoring.pb.go b/pbgo/extschema/schema/waf/public_waf_monitoring.pb.go index d27bc61c3..fdd03e34b 100644 --- a/pbgo/extschema/schema/waf/public_waf_monitoring.pb.go +++ b/pbgo/extschema/schema/waf/public_waf_monitoring.pb.go @@ -1206,90 +1206,90 @@ func init() { } var fileDescriptor_3c8c41ebe678456d = []byte{ - // 1319 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0xcf, 0x6f, 0x1b, 0xc5, - 0x17, 0xf7, 0xac, 0x9d, 0xd8, 0x19, 0x3b, 0xed, 0x76, 0xbe, 0xed, 0x97, 0xad, 0xdb, 0xae, 0x8c, - 0x0b, 0x25, 0x54, 0xd8, 0x8b, 0x52, 0x40, 0x02, 0x55, 0x48, 0x4e, 0xea, 0xa6, 0x46, 0xcd, 0x8f, - 0xae, 0xdd, 0x54, 0xe5, 0x62, 0x8d, 0xbd, 0xe3, 0xcd, 0xc0, 0x7a, 0x67, 0xd9, 0x19, 0xdb, 0x8d, - 0x2a, 0xa4, 0xaa, 0xe2, 0x0f, 0x00, 0x21, 0x24, 0x04, 0x17, 0x8e, 0x9c, 0x90, 0xb8, 0xd2, 0x4b, - 0x6e, 0xe5, 0x42, 0x55, 0x95, 0x4b, 0x8f, 0xd4, 0xe1, 0x40, 0x6f, 0xf9, 0x0f, 0x40, 0x3b, 0xbb, - 0x4e, 0xb2, 0x49, 0x48, 0x22, 0xca, 0x0f, 0x09, 0x71, 0xdb, 0xf7, 0x3e, 0x9f, 0x99, 0x79, 0xef, - 0xf3, 0xde, 0xfc, 0x58, 0x58, 0xea, 0x13, 0x5e, 0xa6, 0xcc, 0xe0, 0xed, 0x15, 0xd2, 0xc5, 0xc6, - 0x00, 0x77, 0x0c, 0xaf, 0xd7, 0x72, 0x68, 0xbb, 0x39, 0xc0, 0x9d, 0x66, 0x97, 0xb9, 0x54, 0x30, - 0x9f, 0xba, 0x76, 0xd9, 0xf3, 0x99, 0x60, 0xe8, 0x58, 0x48, 0x2f, 0x87, 0xf4, 0xf2, 0x00, 0x77, - 0xf2, 0x25, 0x9b, 0x8a, 0x95, 0x5e, 0xab, 0xdc, 0x66, 0x5d, 0xc3, 0x66, 0x36, 0x33, 0x24, 0xb3, - 0xd5, 0xeb, 0x48, 0x4b, 0x1a, 0xf2, 0x2b, 0x9c, 0x21, 0x7f, 0xda, 0x66, 0xcc, 0x76, 0x88, 0x81, - 0x3d, 0x6a, 0x60, 0xd7, 0x65, 0x02, 0x0b, 0xca, 0x5c, 0x1e, 0xa1, 0x67, 0xe2, 0xe1, 0x38, 0xcc, - 0x36, 0xc4, 0xaa, 0x47, 0x46, 0xf0, 0xa9, 0x38, 0xcc, 0xbc, 0xed, 0x63, 0x4f, 0xc6, 0xc1, 0xed, - 0xe3, 0x4e, 0xc7, 0xa1, 0x3e, 0x76, 0xa8, 0x85, 0x05, 0x89, 0xd0, 0xe2, 0x0e, 0x94, 0x70, 0xe2, - 0xf6, 0xe3, 0x93, 0x17, 0x1f, 0x28, 0xf0, 0xb8, 0xd9, 0x73, 0xc8, 0x15, 0x2a, 0xf8, 0x2c, 0xeb, - 0xb9, 0xc2, 0x24, 0x1f, 0xf4, 0x08, 0x17, 0xe8, 0x34, 0x9c, 0x70, 0x71, 0x97, 0x70, 0x0f, 0xb7, - 0x89, 0x06, 0x0a, 0x60, 0x6a, 0xc2, 0xdc, 0x72, 0xa0, 0x39, 0x98, 0x73, 0x70, 0x8b, 0x38, 0xcd, - 0x0e, 0x75, 0x04, 0xf1, 0x35, 0xa5, 0x90, 0x9c, 0xca, 0x4e, 0xbf, 0x50, 0xde, 0x25, 0x63, 0x79, - 0x9e, 0x08, 0x9f, 0xb6, 0xaf, 0x06, 0xe4, 0xcb, 0x92, 0x6b, 0x66, 0x9d, 0x2d, 0x03, 0xbd, 0x09, - 0x33, 0xb6, 0xcf, 0x7a, 0x5e, 0xb3, 0xb5, 0xaa, 0x25, 0x0b, 0xc9, 0xa9, 0x23, 0xd3, 0xfa, 0xfe, - 0x93, 0x98, 0x69, 0xc9, 0x9f, 0x59, 0x45, 0x2f, 0x43, 0xc8, 0x05, 0xf6, 0x45, 0x53, 0xd0, 0x2e, - 0xd1, 0x52, 0x41, 0x88, 0x33, 0xf0, 0xbb, 0xa7, 0x6b, 0xc9, 0x31, 0x3f, 0xf9, 0x79, 0x0a, 0x98, - 0x13, 0x12, 0x6d, 0xd0, 0x2e, 0x41, 0x2f, 0xc2, 0x0c, 0x71, 0xad, 0x90, 0x38, 0xb6, 0x8b, 0x98, - 0x26, 0xae, 0x25, 0x69, 0x3a, 0x4c, 0x71, 0x41, 0x3c, 0x6d, 0x3c, 0x46, 0xf9, 0x2a, 0x05, 0x4c, - 0xe9, 0x47, 0x45, 0x38, 0xe6, 0x63, 0xd7, 0x26, 0x5a, 0x5a, 0x12, 0x72, 0x11, 0x61, 0x43, 0x01, - 0x1a, 0x30, 0x43, 0xa8, 0xc8, 0xe0, 0x89, 0x1d, 0x7a, 0x72, 0x8f, 0xb9, 0x9c, 0xa0, 0x37, 0x60, - 0xca, 0xc2, 0x02, 0x6b, 0x40, 0x4a, 0x55, 0xdc, 0x23, 0xcb, 0xd8, 0x38, 0xe2, 0x9b, 0x92, 0xbf, - 0x19, 0x94, 0x12, 0x0b, 0x6a, 0x43, 0x89, 0x82, 0x2a, 0x3e, 0x52, 0x60, 0xbe, 0x4e, 0xda, 0x3d, - 0x9f, 0x8a, 0xd5, 0x6a, 0x9f, 0xb8, 0xff, 0xd5, 0xf1, 0xc0, 0x3a, 0x16, 0xe2, 0x75, 0xdc, 0xae, - 0x69, 0x54, 0xc5, 0xdb, 0xf0, 0xd4, 0x9e, 0x9a, 0x46, 0xb5, 0xbc, 0x18, 0xab, 0xe5, 0xd4, 0x1e, - 0x99, 0xee, 0x31, 0xfa, 0xd0, 0x15, 0xfd, 0x04, 0xc0, 0x63, 0xbb, 0xe4, 0x46, 0xaf, 0xc1, 0x31, - 0x29, 0xb8, 0x2c, 0xe2, 0xc1, 0xf2, 0x86, 0x64, 0xf4, 0x2a, 0x54, 0x58, 0xb8, 0xd2, 0x91, 0xe9, - 0xc2, 0xfe, 0x43, 0x16, 0x3d, 0x53, 0x61, 0x1e, 0x3a, 0x0e, 0xc7, 0xfa, 0xd8, 0xe9, 0x11, 0x2d, - 0x29, 0x9b, 0x25, 0x34, 0x8a, 0x02, 0x1e, 0xdd, 0xd1, 0x9e, 0xa8, 0x04, 0x15, 0x6a, 0xc9, 0x68, - 0xb2, 0xd3, 0x67, 0xf6, 0x69, 0xe7, 0x9a, 0x65, 0x2a, 0xd4, 0x42, 0xd3, 0x70, 0xbc, 0x2b, 0x17, - 0x8b, 0x9a, 0x2c, 0xbf, 0x63, 0x48, 0x18, 0xc9, 0x72, 0xb0, 0x9a, 0x19, 0x31, 0x8b, 0x77, 0x00, - 0x3c, 0xb1, 0xa7, 0x92, 0xe8, 0xc2, 0xb6, 0xc5, 0xcf, 0x1e, 0xa8, 0xff, 0x33, 0x84, 0xf0, 0xad, - 0x02, 0xd5, 0x9d, 0x93, 0x1d, 0xb0, 0xa9, 0x4e, 0xc2, 0x0c, 0xf6, 0xbc, 0x66, 0x70, 0x50, 0x87, - 0x35, 0x36, 0xd3, 0xd8, 0xf3, 0x1a, 0xab, 0x1e, 0x41, 0xcf, 0xc3, 0x5c, 0x9f, 0xfa, 0xa2, 0x87, - 0x9d, 0xe6, 0x0a, 0xe3, 0x22, 0xd2, 0x38, 0x1b, 0xf9, 0xae, 0x30, 0x2e, 0x10, 0x82, 0x29, 0x4e, - 0x45, 0xb4, 0x11, 0x4c, 0xf9, 0x8d, 0x34, 0x98, 0xe6, 0xc4, 0xef, 0xd3, 0x76, 0xd4, 0xf6, 0xe6, - 0xc8, 0x44, 0x79, 0x98, 0xa1, 0x2e, 0x17, 0xd8, 0x6d, 0x93, 0xb0, 0xdd, 0xcd, 0x4d, 0x1b, 0x9d, - 0x83, 0x47, 0x83, 0xcb, 0x6e, 0x64, 0x37, 0xa9, 0x15, 0x36, 0xbc, 0x39, 0x39, 0xc0, 0x9d, 0x5a, - 0xe4, 0xad, 0x59, 0x41, 0xbc, 0xe1, 0xa5, 0x68, 0x11, 0x2d, 0x13, 0x4e, 0x3f, 0xc0, 0x9d, 0x79, - 0x66, 0xc9, 0x54, 0x5a, 0x4c, 0x84, 0xa9, 0x4c, 0x84, 0x50, 0x8b, 0x09, 0x99, 0x4a, 0x04, 0x05, - 0x69, 0x6b, 0x70, 0x13, 0x5a, 0xc0, 0x5d, 0x52, 0x7c, 0xaa, 0x40, 0xb8, 0x55, 0xfd, 0x7f, 0x99, - 0x5a, 0xcf, 0xc1, 0xb4, 0xdf, 0x73, 0x24, 0x1e, 0x8a, 0x35, 0x1e, 0x98, 0x35, 0x0b, 0x9d, 0x85, - 0x93, 0x12, 0xe0, 0xa4, 0x4f, 0x82, 0x6e, 0x89, 0x04, 0xcb, 0x05, 0xce, 0x7a, 0xe4, 0x0b, 0xb2, - 0x95, 0x24, 0x81, 0xed, 0x91, 0x6a, 0x81, 0xdd, 0xc0, 0x76, 0x4c, 0xeb, 0xec, 0xef, 0x6b, 0x9d, - 0x8b, 0x69, 0x7d, 0xbe, 0x00, 0x27, 0x63, 0x7b, 0x18, 0x8d, 0x43, 0xa5, 0x7a, 0x4d, 0x4d, 0xa0, - 0x34, 0x4c, 0x2e, 0x54, 0xaf, 0xa9, 0xe0, 0xfc, 0x03, 0x00, 0xb3, 0xdb, 0x28, 0x68, 0x12, 0x4e, - 0x2c, 0x54, 0xe6, 0xab, 0xf5, 0xa5, 0xca, 0x6c, 0x55, 0x4d, 0xa0, 0x1c, 0xcc, 0x54, 0x96, 0x96, - 0x9a, 0x8d, 0x9b, 0x4b, 0x55, 0x15, 0x20, 0x15, 0xe6, 0x96, 0x6b, 0x66, 0xe3, 0x7a, 0xe5, 0x6a, - 0xf3, 0xca, 0x62, 0xbd, 0xa1, 0x2a, 0x28, 0x03, 0x53, 0xf5, 0x5a, 0xa3, 0xaa, 0x26, 0x51, 0x16, - 0xa6, 0xeb, 0x55, 0x73, 0xb9, 0x36, 0x5b, 0x55, 0x53, 0xc1, 0xb0, 0xda, 0x42, 0xbd, 0x51, 0x59, - 0x98, 0xad, 0xaa, 0x63, 0xe8, 0x7f, 0xf0, 0xe8, 0x8d, 0xca, 0xe5, 0xe6, 0xc8, 0xd3, 0xac, 0x5d, - 0x52, 0xc7, 0x03, 0xbe, 0x79, 0xfd, 0xaa, 0x34, 0xd2, 0xe8, 0x18, 0x9c, 0x94, 0x46, 0xbd, 0xba, - 0x5c, 0x35, 0x6b, 0x8d, 0x9b, 0x6a, 0x26, 0x98, 0x42, 0xba, 0x1a, 0x95, 0x39, 0x75, 0x22, 0xb0, - 0x82, 0x29, 0xe6, 0x17, 0x2f, 0x55, 0x55, 0x18, 0x58, 0x33, 0x8b, 0x8d, 0x30, 0xaa, 0xec, 0xc8, - 0x0a, 0xc2, 0x56, 0x73, 0xd3, 0xdf, 0x64, 0xa0, 0x7a, 0xa3, 0x72, 0x79, 0x7e, 0xf3, 0x11, 0x57, - 0x59, 0xaa, 0xa1, 0xbb, 0x0a, 0x3c, 0x31, 0xeb, 0x50, 0xe2, 0x8a, 0x51, 0xe7, 0x85, 0x39, 0x73, - 0xf4, 0xd2, 0x41, 0x57, 0x6d, 0x74, 0x55, 0xe6, 0xa7, 0x0e, 0x26, 0x86, 0xe7, 0x7f, 0xf1, 0x33, - 0x30, 0xbc, 0xaf, 0xbd, 0xd3, 0x79, 0xfd, 0x56, 0xbb, 0x34, 0xc0, 0xd8, 0x2b, 0xb5, 0x30, 0xa7, - 0xed, 0x52, 0xf4, 0xaa, 0x7c, 0xa5, 0xd0, 0x27, 0xbc, 0x44, 0x59, 0xc9, 0xf3, 0xd9, 0xad, 0xd5, - 0x91, 0xb7, 0xe4, 0x13, 0x6c, 0xed, 0x80, 0x06, 0xb8, 0x53, 0x1a, 0xf8, 0x54, 0x90, 0xbb, 0x3f, - 0xfe, 0xfc, 0xa9, 0x52, 0x29, 0x5e, 0x8c, 0xde, 0xa8, 0xc6, 0xe6, 0xee, 0xe0, 0xc6, 0xed, 0xcd, - 0xef, 0x0f, 0x83, 0x57, 0x2c, 0x37, 0xc2, 0x73, 0x89, 0x1b, 0x6d, 0x99, 0xac, 0x21, 0xbb, 0x69, - 0x85, 0x0a, 0xfe, 0x16, 0x38, 0x8f, 0x7e, 0x90, 0xe7, 0xa5, 0xdf, 0x27, 0xfe, 0xdf, 0x20, 0x02, - 0x1e, 0xde, 0xd7, 0xfe, 0xff, 0xe7, 0xe5, 0xc3, 0x65, 0xdc, 0xf1, 0x7c, 0xbe, 0x50, 0xe0, 0xa9, - 0xb0, 0xa8, 0xf1, 0x23, 0x78, 0x94, 0x55, 0xe9, 0x70, 0x37, 0xef, 0x28, 0xb7, 0xf2, 0x61, 0xe9, - 0x51, 0x86, 0x5f, 0xfe, 0x15, 0x65, 0x9e, 0x2b, 0xce, 0xfc, 0x81, 0x32, 0xf3, 0x28, 0xcc, 0x26, - 0x91, 0x71, 0x06, 0xe2, 0xfc, 0x0a, 0x82, 0x47, 0x4a, 0x20, 0xda, 0x3f, 0x22, 0xce, 0x9d, 0x40, - 0x1c, 0xe3, 0x70, 0xe2, 0x3c, 0x93, 0x02, 0x51, 0x63, 0xec, 0x56, 0x20, 0x7f, 0x6e, 0xed, 0x1e, - 0x48, 0x3e, 0xba, 0x07, 0xb4, 0xdd, 0x91, 0x2f, 0xb6, 0xde, 0x23, 0x6d, 0x71, 0xf7, 0x81, 0xa6, - 0x68, 0x60, 0xe6, 0x23, 0xb0, 0xf6, 0x76, 0xe2, 0xe1, 0x13, 0x3d, 0xf1, 0xf8, 0x89, 0x9e, 0xd8, - 0x78, 0xa2, 0x83, 0x3b, 0x43, 0x1d, 0x7c, 0x3d, 0xd4, 0xc1, 0xf7, 0x43, 0x1d, 0x3c, 0x1c, 0xea, - 0xe0, 0xa7, 0xa1, 0x0e, 0x7e, 0x19, 0xea, 0x89, 0x8d, 0xa1, 0x0e, 0x3e, 0x5e, 0xd7, 0x13, 0x6b, - 0xeb, 0x3a, 0x78, 0xb8, 0xae, 0x27, 0x1e, 0xaf, 0xeb, 0x89, 0x77, 0xe7, 0x6c, 0xe6, 0xbd, 0x6f, - 0x97, 0xfb, 0x2c, 0x78, 0x86, 0xf9, 0xb8, 0xdc, 0xe3, 0x86, 0xfc, 0xe8, 0x30, 0xbf, 0x1b, 0xe4, - 0xd7, 0xa7, 0x16, 0xf1, 0x4b, 0x23, 0xd8, 0xf0, 0x5a, 0x36, 0x33, 0xc8, 0x2d, 0x11, 0xfd, 0x75, - 0x6d, 0xfd, 0x80, 0xb6, 0xc6, 0xe5, 0x2f, 0xd7, 0x85, 0xdf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x28, - 0xfe, 0x90, 0xc8, 0x9c, 0x0e, 0x00, 0x00, + // 1327 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0xcf, 0x6f, 0x1b, 0x45, + 0x1b, 0xf6, 0xae, 0x9d, 0xd8, 0x1e, 0x3b, 0xed, 0x76, 0xbe, 0x56, 0xdf, 0xd6, 0x6d, 0x57, 0xfe, + 0xdc, 0x8f, 0x12, 0x2a, 0xec, 0x45, 0x29, 0x20, 0x81, 0x2a, 0x24, 0x27, 0x75, 0x53, 0xa3, 0xe6, + 0x47, 0xd7, 0x6e, 0xaa, 0x72, 0xb1, 0xc6, 0xde, 0xf1, 0x66, 0x60, 0xbd, 0xb3, 0xec, 0x8c, 0xed, + 0x46, 0x15, 0x52, 0x55, 0xf1, 0x07, 0x80, 0x10, 0x12, 0x02, 0x21, 0x71, 0xe4, 0x08, 0x12, 0x70, + 0xa0, 0x97, 0xdc, 0xe0, 0x54, 0x55, 0xe5, 0xd2, 0x23, 0x75, 0x38, 0xd0, 0x5b, 0xfe, 0x04, 0x34, + 0xb3, 0xeb, 0x24, 0x9b, 0x84, 0xa6, 0x50, 0x51, 0x24, 0xc4, 0x6d, 0xdf, 0xf7, 0x79, 0x66, 0xe6, + 0x7d, 0x9f, 0xf7, 0x9d, 0x1f, 0x0b, 0xca, 0x03, 0xcc, 0x2a, 0x84, 0x9a, 0xac, 0xb3, 0x8a, 0x7b, + 0xc8, 0x1c, 0xa2, 0xae, 0xe9, 0xf7, 0xdb, 0x2e, 0xe9, 0xb4, 0x86, 0xa8, 0xdb, 0xea, 0x51, 0x8f, + 0x70, 0x1a, 0x10, 0xcf, 0xa9, 0xf8, 0x01, 0xe5, 0x14, 0x1e, 0x09, 0xe9, 0x95, 0x90, 0x5e, 0x19, + 0xa2, 0x6e, 0xa1, 0xec, 0x10, 0xbe, 0xda, 0x6f, 0x57, 0x3a, 0xb4, 0x67, 0x3a, 0xd4, 0xa1, 0xa6, + 0x64, 0xb6, 0xfb, 0x5d, 0x69, 0x49, 0x43, 0x7e, 0x85, 0x33, 0x14, 0x4e, 0x3a, 0x94, 0x3a, 0x2e, + 0x36, 0x91, 0x4f, 0x4c, 0xe4, 0x79, 0x94, 0x23, 0x4e, 0xa8, 0xc7, 0x22, 0xf4, 0x54, 0x3c, 0x1c, + 0x97, 0x3a, 0x26, 0x5f, 0xf3, 0xf1, 0x18, 0x3e, 0x11, 0x87, 0xa9, 0xbf, 0x73, 0xec, 0xf1, 0x38, + 0xb8, 0x73, 0xdc, 0xc9, 0x38, 0x34, 0x40, 0x2e, 0xb1, 0x11, 0xc7, 0x11, 0x5a, 0xda, 0x85, 0x62, + 0x86, 0xbd, 0x41, 0x7c, 0xf2, 0xd2, 0x5d, 0x15, 0x1c, 0xb5, 0xfa, 0x2e, 0xbe, 0x44, 0x38, 0x9b, + 0xa3, 0x7d, 0x8f, 0x5b, 0xf8, 0xdd, 0x3e, 0x66, 0x1c, 0x9e, 0x04, 0x59, 0x0f, 0xf5, 0x30, 0xf3, + 0x51, 0x07, 0xeb, 0x4a, 0x51, 0x99, 0xce, 0x5a, 0xdb, 0x0e, 0x38, 0x0f, 0xf2, 0x2e, 0x6a, 0x63, + 0xb7, 0xd5, 0x25, 0x2e, 0xc7, 0x81, 0xae, 0x16, 0x93, 0xd3, 0xb9, 0x99, 0xff, 0x57, 0xf6, 0xc8, + 0x58, 0x59, 0xc0, 0x3c, 0x20, 0x9d, 0xcb, 0x82, 0x7c, 0x51, 0x72, 0xad, 0x9c, 0xbb, 0x6d, 0xc0, + 0xd7, 0x40, 0xc6, 0x09, 0x68, 0xdf, 0x6f, 0xb5, 0xd7, 0xf4, 0x64, 0x31, 0x39, 0x7d, 0x68, 0xc6, + 0x78, 0xfc, 0x24, 0x56, 0x5a, 0xf2, 0x67, 0xd7, 0xe0, 0x0b, 0x00, 0x30, 0x8e, 0x02, 0xde, 0xe2, + 0xa4, 0x87, 0xf5, 0x94, 0x08, 0x71, 0x16, 0x7c, 0xff, 0x68, 0x3d, 0x39, 0x11, 0x24, 0x3f, 0x49, + 0x29, 0x56, 0x56, 0xa2, 0x4d, 0xd2, 0xc3, 0xf0, 0x39, 0x90, 0xc1, 0x9e, 0x1d, 0x12, 0x27, 0xf6, + 0x10, 0xd3, 0xd8, 0xb3, 0x25, 0xcd, 0x00, 0x29, 0xc6, 0xb1, 0xaf, 0x4f, 0xc6, 0x28, 0x5f, 0xa4, + 0x14, 0x4b, 0xfa, 0x61, 0x09, 0x4c, 0x04, 0xc8, 0x73, 0xb0, 0x9e, 0x96, 0x84, 0x7c, 0x44, 0xd8, + 0x54, 0x15, 0x5d, 0xb1, 0x42, 0xa8, 0x44, 0xc1, 0xb1, 0x5d, 0x7a, 0x32, 0x9f, 0x7a, 0x0c, 0xc3, + 0x57, 0x41, 0xca, 0x46, 0x1c, 0xe9, 0x8a, 0x94, 0xaa, 0xb4, 0x4f, 0x96, 0xb1, 0x71, 0x38, 0xb0, + 0x24, 0x7f, 0x2b, 0x28, 0x35, 0x16, 0xd4, 0xa6, 0x1a, 0x05, 0x55, 0xba, 0xaf, 0x82, 0x42, 0x03, + 0x77, 0xfa, 0x01, 0xe1, 0x6b, 0xb5, 0x01, 0xf6, 0xfe, 0xad, 0xe3, 0x81, 0x75, 0x2c, 0xc6, 0xeb, + 0xb8, 0x53, 0xd3, 0xa8, 0x8a, 0x37, 0xc1, 0x89, 0x7d, 0x35, 0x8d, 0x6a, 0x79, 0x3e, 0x56, 0xcb, + 0xe9, 0x7d, 0x32, 0xdd, 0x67, 0xf4, 0x13, 0x57, 0xf4, 0x43, 0x05, 0x1c, 0xd9, 0x23, 0x37, 0x7c, + 0x19, 0x4c, 0x48, 0xc1, 0x65, 0x11, 0x0f, 0x96, 0x37, 0x24, 0xc3, 0x97, 0x80, 0x4a, 0xc3, 0x95, + 0x0e, 0xcd, 0x14, 0x1f, 0x3f, 0x64, 0xc9, 0xb7, 0x54, 0xea, 0xc3, 0xa3, 0x60, 0x62, 0x80, 0xdc, + 0x3e, 0xd6, 0x93, 0xb2, 0x59, 0x42, 0xa3, 0xc4, 0xc1, 0xe1, 0x5d, 0xed, 0x09, 0xcb, 0x40, 0x25, + 0xb6, 0x8c, 0x26, 0x37, 0x73, 0xea, 0x31, 0xed, 0x5c, 0xb7, 0x2d, 0x95, 0xd8, 0x70, 0x06, 0x4c, + 0xf6, 0xe4, 0x62, 0x51, 0x93, 0x15, 0x76, 0x0d, 0x09, 0x23, 0x59, 0x11, 0xab, 0x59, 0x11, 0xb3, + 0x74, 0x4b, 0x01, 0xc7, 0xf6, 0x55, 0x12, 0x9e, 0xdb, 0xb1, 0xf8, 0xe9, 0x03, 0xf5, 0x7f, 0x8a, + 0x10, 0xbe, 0x56, 0x81, 0xb6, 0x7b, 0xb2, 0x03, 0x36, 0xd5, 0x71, 0x90, 0x41, 0xbe, 0xdf, 0x12, + 0x07, 0x75, 0x58, 0x63, 0x2b, 0x8d, 0x7c, 0xbf, 0xb9, 0xe6, 0x63, 0xf8, 0x3f, 0x90, 0x1f, 0x90, + 0x80, 0xf7, 0x91, 0xdb, 0x5a, 0xa5, 0x8c, 0x47, 0x1a, 0xe7, 0x22, 0xdf, 0x25, 0xca, 0x38, 0x84, + 0x20, 0xc5, 0x08, 0x8f, 0x36, 0x82, 0x25, 0xbf, 0xa1, 0x0e, 0xd2, 0x0c, 0x07, 0x03, 0xd2, 0x89, + 0xda, 0xde, 0x1a, 0x9b, 0xb0, 0x00, 0x32, 0xc4, 0x63, 0x1c, 0x79, 0x1d, 0x1c, 0xb6, 0xbb, 0xb5, + 0x65, 0xc3, 0x33, 0xe0, 0xb0, 0xb8, 0xec, 0xc6, 0x76, 0x8b, 0xd8, 0x61, 0xc3, 0x5b, 0x53, 0x43, + 0xd4, 0xad, 0x47, 0xde, 0xba, 0x2d, 0xe2, 0x0d, 0x2f, 0x45, 0x1b, 0xeb, 0x99, 0x70, 0xfa, 0x21, + 0xea, 0x2e, 0x50, 0x5b, 0xa6, 0xd2, 0xa6, 0x3c, 0x4c, 0x25, 0x1b, 0x42, 0x6d, 0xca, 0x65, 0x2a, + 0x11, 0x24, 0xd2, 0xd6, 0xc1, 0x16, 0xb4, 0x88, 0x7a, 0xb8, 0xf4, 0x48, 0x05, 0x60, 0xbb, 0xfa, + 0xff, 0x30, 0xb5, 0xfe, 0x0b, 0xd2, 0x41, 0xdf, 0x95, 0x78, 0x28, 0xd6, 0xa4, 0x30, 0xeb, 0x36, + 0x3c, 0x0d, 0xa6, 0x24, 0xc0, 0xf0, 0x00, 0x8b, 0x6e, 0x89, 0x04, 0xcb, 0x0b, 0x67, 0x23, 0xf2, + 0x89, 0x6c, 0x25, 0x89, 0x23, 0x67, 0xac, 0x9a, 0xb0, 0x9b, 0xc8, 0x89, 0x69, 0x9d, 0xfb, 0x7d, + 0xad, 0xf3, 0x31, 0xad, 0xcf, 0x16, 0xc1, 0x54, 0x6c, 0x0f, 0xc3, 0x49, 0xa0, 0xd6, 0xae, 0x68, + 0x09, 0x98, 0x06, 0xc9, 0xc5, 0xda, 0x15, 0x4d, 0x39, 0x7b, 0x57, 0x01, 0xb9, 0x1d, 0x14, 0x38, + 0x05, 0xb2, 0x8b, 0xd5, 0x85, 0x5a, 0x63, 0xb9, 0x3a, 0x57, 0xd3, 0x12, 0x30, 0x0f, 0x32, 0xd5, + 0xe5, 0xe5, 0x56, 0xf3, 0xfa, 0x72, 0x4d, 0x53, 0xa0, 0x06, 0xf2, 0x2b, 0x75, 0xab, 0x79, 0xb5, + 0x7a, 0xb9, 0x75, 0x69, 0xa9, 0xd1, 0xd4, 0x54, 0x98, 0x01, 0xa9, 0x46, 0xbd, 0x59, 0xd3, 0x92, + 0x30, 0x07, 0xd2, 0x8d, 0x9a, 0xb5, 0x52, 0x9f, 0xab, 0x69, 0x29, 0x31, 0xac, 0xbe, 0xd8, 0x68, + 0x56, 0x17, 0xe7, 0x6a, 0xda, 0x04, 0xfc, 0x0f, 0x38, 0x7c, 0xad, 0x7a, 0xb1, 0x35, 0xf6, 0xb4, + 0xea, 0x17, 0xb4, 0x49, 0xc1, 0xb7, 0xae, 0x5e, 0x96, 0x46, 0x1a, 0x1e, 0x01, 0x53, 0xd2, 0x68, + 0xd4, 0x56, 0x6a, 0x56, 0xbd, 0x79, 0x5d, 0xcb, 0x88, 0x29, 0xa4, 0xab, 0x59, 0x9d, 0xd7, 0xb2, + 0xc2, 0x12, 0x53, 0x2c, 0x2c, 0x5d, 0xa8, 0x69, 0x40, 0x58, 0xb3, 0x4b, 0xcd, 0x30, 0xaa, 0xdc, + 0xd8, 0x12, 0x61, 0x6b, 0xf9, 0x99, 0x6f, 0xb2, 0x40, 0xbb, 0x56, 0xbd, 0xb8, 0xb0, 0xf5, 0x88, + 0xab, 0x2e, 0xd7, 0xe1, 0xe7, 0x2a, 0x38, 0x36, 0xe7, 0x12, 0xec, 0xf1, 0x71, 0xe7, 0x85, 0x39, + 0x33, 0xf8, 0xfc, 0x41, 0x57, 0x6d, 0x74, 0x55, 0x16, 0xa6, 0x0f, 0x26, 0x86, 0xe7, 0x7f, 0xe9, + 0x2b, 0x65, 0xf4, 0x83, 0x8e, 0xbb, 0xaf, 0xdc, 0xe8, 0x94, 0x87, 0x08, 0xf9, 0xe5, 0x36, 0x62, + 0xa4, 0x53, 0x8e, 0x5e, 0x95, 0x2f, 0x16, 0xb7, 0x01, 0xd1, 0x35, 0x36, 0x0a, 0xec, 0x6d, 0x6c, + 0x80, 0x59, 0x99, 0xd0, 0xb2, 0x1f, 0xd0, 0x1b, 0x6b, 0x63, 0x6f, 0x39, 0xc0, 0xc8, 0xde, 0x05, + 0x0d, 0x51, 0x57, 0xba, 0x6f, 0xff, 0xf4, 0xcb, 0x47, 0x6a, 0xb5, 0x74, 0x3e, 0x7a, 0xbe, 0x9a, + 0x5b, 0x1b, 0x87, 0x99, 0x37, 0xb7, 0xbe, 0xdf, 0x13, 0x0f, 0x5c, 0x66, 0x86, 0x47, 0x16, 0x33, + 0x3b, 0x52, 0x07, 0x53, 0x36, 0xda, 0x2a, 0xe1, 0xec, 0x75, 0xe5, 0x2c, 0xbc, 0xad, 0x8a, 0xa3, + 0x34, 0x18, 0xe0, 0xe0, 0x19, 0xe8, 0xf3, 0xb1, 0xd0, 0xe7, 0xcd, 0xa7, 0xd7, 0xe7, 0x69, 0x44, + 0x60, 0x32, 0xd9, 0xb8, 0x08, 0xdf, 0xaa, 0xe0, 0x44, 0xd8, 0x24, 0xf1, 0x23, 0x7d, 0x2c, 0x45, + 0xf9, 0xc9, 0x6e, 0xf2, 0xb1, 0x20, 0x95, 0x27, 0xa5, 0x47, 0xb2, 0x7c, 0xf7, 0x8c, 0xdb, 0x66, + 0xbe, 0x34, 0xfb, 0x27, 0xda, 0x86, 0x45, 0x19, 0xb4, 0xb0, 0x4c, 0x41, 0xe8, 0xf6, 0xa9, 0x2a, + 0xde, 0x43, 0x42, 0xcf, 0xbf, 0x45, 0xb7, 0xcf, 0xfe, 0x8a, 0x76, 0xfa, 0x83, 0xe2, 0x44, 0xed, + 0xb4, 0x57, 0x9c, 0xc2, 0x99, 0xf5, 0x3b, 0x4a, 0xf2, 0xfe, 0x1d, 0x45, 0xdf, 0x9b, 0xd4, 0x52, + 0xfb, 0x6d, 0xdc, 0xe1, 0xb7, 0xef, 0xea, 0xaa, 0xae, 0xcc, 0xbe, 0xaf, 0xac, 0xbf, 0x91, 0xb8, + 0xf7, 0xd0, 0x48, 0x3c, 0x78, 0x68, 0x24, 0x36, 0x1f, 0x1a, 0xca, 0xad, 0x91, 0xa1, 0x7c, 0x39, + 0x32, 0x94, 0x1f, 0x47, 0x86, 0x72, 0x6f, 0x64, 0x28, 0x3f, 0x8f, 0x0c, 0xe5, 0xd7, 0x91, 0x91, + 0xd8, 0x1c, 0x19, 0xca, 0x07, 0x1b, 0x46, 0x62, 0x7d, 0xc3, 0x50, 0xee, 0x6d, 0x18, 0x89, 0x07, + 0x1b, 0x46, 0xe2, 0xad, 0x79, 0x87, 0xfa, 0xef, 0x38, 0x95, 0x01, 0x15, 0x8f, 0xc1, 0x00, 0x55, + 0xfa, 0xcc, 0x94, 0x1f, 0x5d, 0x1a, 0xf4, 0x44, 0x7a, 0x03, 0x62, 0xe3, 0xa0, 0x3c, 0x86, 0x4d, + 0xbf, 0xed, 0x50, 0x13, 0xdf, 0xe0, 0xd1, 0xbf, 0xdf, 0xf6, 0x6f, 0x70, 0x7b, 0x52, 0xfe, 0xf8, + 0x9d, 0xfb, 0x2d, 0x00, 0x00, 0xff, 0xff, 0x6d, 0xcd, 0x59, 0x81, 0x22, 0x0f, 0x00, 0x00, } func (x MetricLabelOp) String() string { diff --git a/pbgo/extschema/schema/waf_signatures_changelog/crudapi/api.vesapi.go b/pbgo/extschema/schema/waf_signatures_changelog/crudapi/api.vesapi.go index bf447b10f..22e69e3e0 100644 --- a/pbgo/extschema/schema/waf_signatures_changelog/crudapi/api.vesapi.go +++ b/pbgo/extschema/schema/waf_signatures_changelog/crudapi/api.vesapi.go @@ -2998,10 +2998,14 @@ var APISwaggerJSON string = `{ }, "description": { "type": "string", - "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", "title": "description", + "maxLength": 1200, "x-displayname": "Description", - "x-ves-example": "Virtual Host for acmecorp website" + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } }, "disable": { "type": "boolean", diff --git a/pbgo/extschema/schema/waf_signatures_changelog/public_custom_ml_api.pb.go b/pbgo/extschema/schema/waf_signatures_changelog/public_custom_ml_api.pb.go index bcac3d575..67516fb61 100644 --- a/pbgo/extschema/schema/waf_signatures_changelog/public_custom_ml_api.pb.go +++ b/pbgo/extschema/schema/waf_signatures_changelog/public_custom_ml_api.pb.go @@ -355,52 +355,52 @@ func init() { } var fileDescriptor_758855b686288de9 = []byte{ - // 705 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xcf, 0x6b, 0xd4, 0x4e, - 0x14, 0xdf, 0x49, 0xbb, 0xdd, 0x76, 0xfa, 0xfd, 0xfa, 0x63, 0x5a, 0x30, 0xae, 0x35, 0x2e, 0x2b, - 0x48, 0x91, 0x26, 0x91, 0x8a, 0x08, 0xf6, 0x54, 0x3d, 0xa8, 0x07, 0x15, 0xb6, 0x3d, 0x89, 0x10, - 0x66, 0x27, 0xb3, 0xd9, 0xb1, 0x9b, 0x99, 0x98, 0x99, 0xa4, 0x2d, 0xa5, 0x20, 0x3d, 0xe8, 0x55, - 0x10, 0x04, 0xff, 0x03, 0xff, 0x04, 0xa1, 0x97, 0xde, 0xec, 0x49, 0x8a, 0x5e, 0x7a, 0xb4, 0x59, - 0x0f, 0x5e, 0x84, 0x9e, 0x3c, 0xcb, 0x4e, 0xd2, 0xb5, 0x5d, 0x15, 0x4b, 0x6f, 0xef, 0xf3, 0xf9, - 0xcc, 0x7b, 0xc9, 0xfb, 0xbc, 0x37, 0x03, 0xe7, 0x53, 0x2a, 0x1d, 0x26, 0x5c, 0x49, 0xda, 0x34, - 0xc4, 0xee, 0x32, 0x6e, 0x79, 0x92, 0x05, 0x1c, 0xab, 0x24, 0xa6, 0xd2, 0x23, 0x6d, 0xcc, 0x03, - 0xda, 0x11, 0x81, 0x1b, 0x25, 0xcd, 0x0e, 0x23, 0x1e, 0x49, 0xa4, 0x12, 0xa1, 0x17, 0x76, 0x3c, - 0x1c, 0x31, 0x27, 0x8a, 0x85, 0x12, 0xe8, 0x4a, 0x5e, 0xc2, 0xc9, 0x4b, 0x38, 0x7f, 0x2b, 0x51, - 0xb5, 0x03, 0xa6, 0xda, 0x49, 0xd3, 0x21, 0x22, 0x74, 0x03, 0x11, 0x08, 0x57, 0xa7, 0x37, 0x93, - 0x96, 0x46, 0x1a, 0xe8, 0x28, 0x2f, 0x5b, 0x9d, 0x0a, 0x84, 0x08, 0x3a, 0xd4, 0xc5, 0x11, 0x73, - 0x31, 0xe7, 0x42, 0x61, 0xc5, 0x04, 0x97, 0x85, 0x7a, 0xe1, 0xe8, 0x7f, 0x8b, 0xe8, 0xb0, 0x58, - 0x3f, 0x2a, 0xa6, 0x54, 0x52, 0x9e, 0x0e, 0x9c, 0x99, 0x3d, 0x66, 0xe3, 0x6a, 0x35, 0xa2, 0x45, - 0x4e, 0xfd, 0x05, 0x80, 0x13, 0x0b, 0x0a, 0x07, 0xd4, 0x5f, 0xe8, 0x1f, 0x6d, 0xd0, 0x67, 0x68, - 0x0a, 0x8e, 0x71, 0x1c, 0x52, 0x19, 0x61, 0x42, 0x4d, 0x50, 0x03, 0xd3, 0x63, 0x8d, 0x5f, 0x04, - 0x3a, 0x07, 0x2b, 0x69, 0xdb, 0xeb, 0x61, 0xd3, 0xd0, 0xda, 0x48, 0xda, 0x7e, 0x88, 0x43, 0x8a, - 0x2e, 0x42, 0x28, 0x15, 0x8e, 0x95, 0xa7, 0x58, 0x48, 0xcd, 0xa1, 0x3c, 0x4f, 0x33, 0x8b, 0x2c, - 0xa4, 0xe8, 0x3c, 0x1c, 0xa5, 0xdc, 0xcf, 0xc5, 0x61, 0x2d, 0x56, 0x28, 0xf7, 0x7b, 0x52, 0x7d, - 0xed, 0x0f, 0xff, 0x21, 0x23, 0xe4, 0xc3, 0xb3, 0x52, 0xd3, 0x87, 0x5a, 0x31, 0x41, 0x6d, 0x68, - 0x7a, 0x7c, 0xf6, 0xa6, 0x73, 0xbc, 0x29, 0x39, 0x03, 0x75, 0x1b, 0x67, 0xe4, 0xc0, 0x87, 0xea, - 0x3f, 0x00, 0x3c, 0x3d, 0x70, 0x0a, 0x5d, 0x82, 0xe3, 0x58, 0x29, 0x4c, 0x96, 0xbc, 0x9e, 0x5f, - 0x85, 0x07, 0x30, 0xa7, 0x16, 0x57, 0x23, 0x8a, 0x2e, 0xc3, 0xff, 0x43, 0xac, 0x48, 0x9b, 0xf1, - 0xc0, 0x63, 0xbc, 0x25, 0x0a, 0x2b, 0xfe, 0x3b, 0x20, 0xef, 0xf3, 0x96, 0x40, 0x26, 0xac, 0x10, - 0xc1, 0x15, 0x5d, 0x51, 0x85, 0x1b, 0x07, 0x10, 0x21, 0x38, 0xac, 0x0d, 0xcc, 0x7d, 0xd0, 0x31, - 0xaa, 0xc2, 0x51, 0x4c, 0x48, 0x12, 0x63, 0xb2, 0x6a, 0x96, 0x35, 0xdf, 0xc7, 0xe8, 0x14, 0x34, - 0x98, 0x6f, 0x8e, 0x68, 0xd6, 0x60, 0x3e, 0x9a, 0x84, 0x65, 0xa9, 0xb0, 0xa2, 0x66, 0x45, 0x53, - 0x39, 0xe8, 0x4d, 0x86, 0xf9, 0xf9, 0x64, 0x46, 0xf3, 0xc9, 0x30, 0x5f, 0x4f, 0x66, 0x12, 0x96, - 0x89, 0x48, 0xb8, 0x32, 0xc7, 0x6a, 0x60, 0xba, 0xdc, 0xc8, 0xc1, 0xec, 0x77, 0x03, 0xa2, 0x7e, - 0xcb, 0x77, 0xf4, 0x4d, 0x98, 0x8f, 0x18, 0x7a, 0x6b, 0xc0, 0x89, 0xbb, 0x54, 0x0d, 0x0e, 0x04, - 0xcd, 0x9d, 0xd0, 0xf2, 0xde, 0x4a, 0x55, 0x4f, 0x9e, 0x2c, 0xa3, 0xfa, 0x4b, 0xb0, 0xfd, 0xde, - 0x00, 0xd9, 0x07, 0x73, 0xa6, 0x75, 0x63, 0x85, 0xd8, 0xcb, 0x18, 0x47, 0x76, 0x13, 0x4b, 0x46, - 0xec, 0x50, 0x70, 0xa6, 0x44, 0x3c, 0x53, 0x4b, 0xa9, 0xb4, 0x99, 0xb0, 0x03, 0xca, 0x69, 0x8c, - 0x3b, 0x76, 0x4c, 0xb1, 0xbf, 0xf1, 0xf9, 0xeb, 0x6b, 0xe3, 0x41, 0xfd, 0x5e, 0x71, 0xd7, 0xdd, - 0xfe, 0x06, 0x4b, 0x77, 0xad, 0x1f, 0xaf, 0xbb, 0x29, 0x8b, 0x55, 0x82, 0x3b, 0x5e, 0x5b, 0x48, - 0x25, 0xdd, 0xb5, 0x62, 0xb5, 0xd7, 0xdd, 0xdf, 0x36, 0xef, 0x16, 0xb8, 0x5a, 0x9d, 0xdb, 0xda, - 0x04, 0x43, 0x9f, 0x36, 0x81, 0x7d, 0xcc, 0x6e, 0x1e, 0x35, 0x9f, 0x52, 0xa2, 0x36, 0x3e, 0x9a, - 0xc6, 0x35, 0x70, 0xfb, 0x0d, 0xd8, 0xd9, 0xb3, 0x4a, 0xbb, 0x7b, 0x56, 0x69, 0x7f, 0xcf, 0x02, - 0xcf, 0x33, 0x0b, 0xbc, 0xcb, 0x2c, 0xb0, 0x9d, 0x59, 0x60, 0x27, 0xb3, 0xc0, 0x97, 0xcc, 0x02, - 0xdf, 0x32, 0xab, 0xb4, 0x9f, 0x59, 0xe0, 0x55, 0xd7, 0x2a, 0x6d, 0x75, 0x2d, 0xb0, 0xd3, 0xb5, - 0x4a, 0xbb, 0x5d, 0xab, 0xf4, 0xf8, 0x49, 0x20, 0xa2, 0xa5, 0xc0, 0x49, 0x45, 0x47, 0xd1, 0x38, - 0xc6, 0x4e, 0x22, 0x5d, 0x1d, 0xb4, 0x44, 0x1c, 0xda, 0x51, 0x2c, 0x52, 0xe6, 0xd3, 0xd8, 0x3e, - 0x90, 0xdd, 0xa8, 0x19, 0x08, 0x97, 0xae, 0xa8, 0xe2, 0x31, 0xf8, 0xc7, 0x9b, 0xd0, 0x1c, 0xd1, - 0xcf, 0xc1, 0xf5, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x34, 0xcb, 0x3c, 0x68, 0x3d, 0x05, 0x00, - 0x00, + // 713 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xcf, 0x6b, 0x13, 0x41, + 0x14, 0xce, 0x24, 0x4d, 0xd3, 0x4e, 0xfd, 0x39, 0x2d, 0xb8, 0xc6, 0xba, 0x86, 0x08, 0x52, 0xc4, + 0xdd, 0x95, 0x8a, 0x08, 0xf6, 0x54, 0x3d, 0x58, 0x0f, 0x2a, 0xa4, 0x3d, 0x89, 0xb0, 0x4c, 0x66, + 0x27, 0x9b, 0xb1, 0xd9, 0x99, 0x75, 0x67, 0x76, 0xdb, 0x52, 0x0a, 0xd2, 0x83, 0xe0, 0x4d, 0x10, + 0xfc, 0x07, 0xbc, 0xf8, 0x0f, 0x08, 0x42, 0x2f, 0xbd, 0xd9, 0x93, 0x14, 0xbd, 0xf4, 0x68, 0x37, + 0x1e, 0x3c, 0xf6, 0xe4, 0x59, 0x32, 0xbb, 0x4d, 0xdb, 0xa8, 0x58, 0x7a, 0x7b, 0xdf, 0xf7, 0xcd, + 0x7b, 0xd9, 0xf7, 0xbd, 0x97, 0x07, 0x67, 0x13, 0x2a, 0x6d, 0x26, 0x1c, 0x49, 0xda, 0x34, 0xc0, + 0xce, 0x12, 0x6e, 0xb9, 0x92, 0xf9, 0x1c, 0xab, 0x38, 0xa2, 0xd2, 0x25, 0x6d, 0xcc, 0x7d, 0xda, + 0x11, 0xbe, 0x13, 0xc6, 0xcd, 0x0e, 0x23, 0x2e, 0x89, 0xa5, 0x12, 0x81, 0x1b, 0x74, 0x5c, 0x1c, + 0x32, 0x3b, 0x8c, 0x84, 0x12, 0xe8, 0x5a, 0x56, 0xc2, 0xce, 0x4a, 0xd8, 0xff, 0x2a, 0x51, 0xb5, + 0x7c, 0xa6, 0xda, 0x71, 0xd3, 0x26, 0x22, 0x70, 0x7c, 0xe1, 0x0b, 0x47, 0xa7, 0x37, 0xe3, 0x96, + 0x46, 0x1a, 0xe8, 0x28, 0x2b, 0x5b, 0x9d, 0xf4, 0x85, 0xf0, 0x3b, 0xd4, 0xc1, 0x21, 0x73, 0x30, + 0xe7, 0x42, 0x61, 0xc5, 0x04, 0x97, 0xb9, 0x7a, 0xe9, 0xe8, 0x77, 0x8b, 0xf0, 0xb0, 0x58, 0x3f, + 0x2a, 0x26, 0x54, 0x52, 0x9e, 0x0c, 0xbc, 0x99, 0x3e, 0x66, 0xe3, 0x6a, 0x25, 0xa4, 0x79, 0x4e, + 0xfd, 0x15, 0x80, 0xe3, 0xf3, 0x0a, 0xfb, 0xd4, 0x9b, 0xef, 0x3f, 0x6d, 0xd0, 0x17, 0x68, 0x12, + 0x8e, 0x72, 0x1c, 0x50, 0x19, 0x62, 0x42, 0x0d, 0x50, 0x03, 0x53, 0xa3, 0x8d, 0x03, 0x02, 0x5d, + 0x80, 0x95, 0xa4, 0xed, 0xf6, 0xb0, 0x51, 0xd4, 0xda, 0x70, 0xd2, 0x7e, 0x8c, 0x03, 0x8a, 0x2e, + 0x43, 0x28, 0x15, 0x8e, 0x94, 0xab, 0x58, 0x40, 0x8d, 0x52, 0x96, 0xa7, 0x99, 0x05, 0x16, 0x50, + 0x74, 0x11, 0x8e, 0x50, 0xee, 0x65, 0xe2, 0x90, 0x16, 0x2b, 0x94, 0x7b, 0x3d, 0xa9, 0xbe, 0xfa, + 0x97, 0xef, 0x90, 0x21, 0xf2, 0xe0, 0x79, 0xa9, 0xe9, 0x43, 0xad, 0x18, 0xa0, 0x56, 0x9a, 0x1a, + 0x9b, 0xbe, 0x63, 0x1f, 0x6f, 0x4a, 0xf6, 0x40, 0xdd, 0xc6, 0x39, 0x39, 0xf0, 0x43, 0xf5, 0x5f, + 0x00, 0x9e, 0x1d, 0x78, 0x85, 0xae, 0xc0, 0x31, 0xac, 0x14, 0x26, 0x8b, 0x6e, 0xcf, 0xaf, 0xdc, + 0x03, 0x98, 0x51, 0x0b, 0x2b, 0x21, 0x45, 0x57, 0xe1, 0xe9, 0x00, 0x2b, 0xd2, 0x66, 0xdc, 0x77, + 0x19, 0x6f, 0x89, 0xdc, 0x8a, 0x53, 0xfb, 0xe4, 0x43, 0xde, 0x12, 0xc8, 0x80, 0x15, 0x22, 0xb8, + 0xa2, 0xcb, 0x2a, 0x77, 0x63, 0x1f, 0x22, 0x04, 0x87, 0xb4, 0x81, 0x99, 0x0f, 0x3a, 0x46, 0x55, + 0x38, 0x82, 0x09, 0x89, 0x23, 0x4c, 0x56, 0x8c, 0xb2, 0xe6, 0xfb, 0x18, 0x9d, 0x81, 0x45, 0xe6, + 0x19, 0xc3, 0x9a, 0x2d, 0x32, 0x0f, 0x4d, 0xc0, 0xb2, 0x54, 0x58, 0x51, 0xa3, 0xa2, 0xa9, 0x0c, + 0xf4, 0x26, 0xc3, 0xbc, 0x6c, 0x32, 0x23, 0xd9, 0x64, 0x98, 0xa7, 0x27, 0x33, 0x01, 0xcb, 0x44, + 0xc4, 0x5c, 0x19, 0xa3, 0x35, 0x30, 0x55, 0x6e, 0x64, 0x60, 0xfa, 0x75, 0x09, 0xa2, 0x7e, 0xcb, + 0xf7, 0xf5, 0x3f, 0x61, 0x36, 0x64, 0xe8, 0x63, 0x11, 0x8e, 0x3f, 0xa0, 0x6a, 0x70, 0x20, 0x68, + 0xe6, 0x84, 0x96, 0xf7, 0x56, 0xaa, 0x7a, 0xf2, 0x64, 0x19, 0xd6, 0xdf, 0x83, 0xad, 0x4f, 0x45, + 0x90, 0x7e, 0x36, 0xe6, 0x5a, 0xb7, 0x97, 0x89, 0xb5, 0x84, 0x71, 0x68, 0x35, 0xb1, 0x64, 0xc4, + 0x0a, 0x04, 0x67, 0x4a, 0x44, 0x37, 0x6a, 0x07, 0x82, 0x54, 0x98, 0x7b, 0x38, 0xf2, 0x0e, 0xb4, + 0x84, 0x4a, 0x8b, 0x09, 0xcb, 0xa7, 0x9c, 0x46, 0xb8, 0x63, 0x45, 0x14, 0x7b, 0xeb, 0xdf, 0x7e, + 0xbc, 0x2d, 0x3e, 0xaa, 0xcf, 0xe5, 0x77, 0xc0, 0xe9, 0x6f, 0xb7, 0x74, 0x56, 0xfb, 0xf1, 0x9a, + 0x93, 0xb0, 0x48, 0xc5, 0xb8, 0xe3, 0xb6, 0x85, 0x54, 0xd2, 0x59, 0xcd, 0xd7, 0x7e, 0xcd, 0xf9, + 0x63, 0x2b, 0xef, 0x82, 0xeb, 0xd5, 0x99, 0xcd, 0x0d, 0x50, 0xfa, 0xba, 0x01, 0xac, 0x63, 0x76, + 0xfa, 0xa4, 0xf9, 0x9c, 0x12, 0xb5, 0xfe, 0xc5, 0x28, 0xde, 0x04, 0xf7, 0xde, 0x81, 0xed, 0x5d, + 0xb3, 0xb0, 0xb3, 0x6b, 0x16, 0xf6, 0x76, 0x4d, 0xf0, 0x32, 0x35, 0xc1, 0x87, 0xd4, 0x04, 0x5b, + 0xa9, 0x09, 0xb6, 0x53, 0x13, 0x7c, 0x4f, 0x4d, 0xf0, 0x33, 0x35, 0x0b, 0x7b, 0xa9, 0x09, 0xde, + 0x74, 0xcd, 0xc2, 0x66, 0xd7, 0x04, 0xdb, 0x5d, 0xb3, 0xb0, 0xd3, 0x35, 0x0b, 0x4f, 0x9f, 0xf9, + 0x22, 0x5c, 0xf4, 0xed, 0x44, 0x74, 0x14, 0x8d, 0x22, 0x6c, 0xc7, 0xd2, 0xd1, 0x41, 0x4b, 0x44, + 0x81, 0x15, 0x46, 0x22, 0x61, 0x1e, 0x8d, 0xac, 0x7d, 0xd9, 0x09, 0x9b, 0xbe, 0x70, 0xe8, 0xb2, + 0xca, 0x0f, 0xc5, 0x7f, 0xee, 0x45, 0x73, 0x58, 0x9f, 0x8a, 0x5b, 0xbf, 0x03, 0x00, 0x00, 0xff, + 0xff, 0x16, 0x97, 0xcb, 0x46, 0x59, 0x05, 0x00, 0x00, } func (this *StagedSignaturesReq) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/waf_signatures_changelog/public_customapi.pb.go b/pbgo/extschema/schema/waf_signatures_changelog/public_customapi.pb.go index aa5bba116..80ff8236d 100644 --- a/pbgo/extschema/schema/waf_signatures_changelog/public_customapi.pb.go +++ b/pbgo/extschema/schema/waf_signatures_changelog/public_customapi.pb.go @@ -170,41 +170,42 @@ func init() { } var fileDescriptor_8baff276b003f946 = []byte{ - // 542 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x52, 0xb1, 0x6b, 0x14, 0x4f, - 0x14, 0xde, 0xd9, 0x40, 0x7e, 0x64, 0x7f, 0x8d, 0xac, 0x04, 0x8f, 0x33, 0x0c, 0xe1, 0x0a, 0x49, - 0x91, 0xdd, 0x81, 0x88, 0x36, 0x92, 0x42, 0x53, 0x04, 0x44, 0x22, 0x5c, 0x04, 0x41, 0x84, 0x63, - 0x76, 0xf3, 0x6e, 0x76, 0x74, 0x77, 0xdf, 0x38, 0x33, 0xbb, 0x49, 0x08, 0x81, 0x90, 0xc2, 0x5a, - 0x10, 0x2c, 0xad, 0xfd, 0x13, 0x84, 0x34, 0xe9, 0x4c, 0x25, 0x41, 0x9b, 0x94, 0x66, 0xcf, 0xc2, - 0x32, 0x7f, 0x81, 0x88, 0x9b, 0xcd, 0x99, 0x98, 0x13, 0x0f, 0xec, 0xde, 0x9b, 0x6f, 0xbe, 0x99, - 0xef, 0xbd, 0xef, 0xf3, 0x16, 0x4b, 0x30, 0xa1, 0x44, 0x66, 0xe2, 0x04, 0x32, 0xce, 0xd6, 0x79, - 0xbf, 0x67, 0xa4, 0xc8, 0xb9, 0x2d, 0x34, 0x98, 0x5e, 0x9c, 0xf0, 0x5c, 0x40, 0x8a, 0x82, 0xa9, - 0x22, 0x4a, 0x65, 0xdc, 0x8b, 0x0b, 0x63, 0x31, 0xe3, 0x4a, 0x86, 0x4a, 0xa3, 0x45, 0xff, 0xc6, - 0x29, 0x3d, 0x3c, 0xa5, 0x87, 0x7f, 0xa2, 0xb7, 0x03, 0x21, 0x6d, 0x52, 0x44, 0x61, 0x8c, 0x19, - 0x13, 0x28, 0x90, 0xd5, 0xf4, 0xa8, 0xe8, 0xd7, 0x5d, 0xdd, 0xd4, 0xd5, 0xe9, 0xb3, 0xed, 0x19, - 0x81, 0x28, 0x52, 0x60, 0x5c, 0x49, 0xc6, 0xf3, 0x1c, 0x2d, 0xb7, 0x12, 0x73, 0xd3, 0xa0, 0xd7, - 0x2f, 0x6a, 0x46, 0x75, 0x1e, 0xec, 0x5c, 0x04, 0x4b, 0x30, 0x90, 0x97, 0xbf, 0xdd, 0x59, 0x18, - 0x73, 0x68, 0xbb, 0xa9, 0xa0, 0xe1, 0x74, 0x56, 0xbc, 0xe9, 0x2e, 0xa4, 0xc0, 0x0d, 0xac, 0xad, - 0x0e, 0xef, 0x76, 0xe1, 0x85, 0x3f, 0xe3, 0x4d, 0xe5, 0x3c, 0x03, 0xa3, 0x78, 0x0c, 0x2d, 0x32, - 0x4b, 0xe6, 0xa6, 0xba, 0xbf, 0x0e, 0xfc, 0x6b, 0xde, 0x7f, 0x65, 0xd2, 0xfb, 0xd9, 0xb7, 0xdc, - 0x1a, 0x9b, 0x2c, 0x93, 0x15, 0x9e, 0x41, 0x67, 0x87, 0x8c, 0x7c, 0xd0, 0x28, 0x5f, 0x78, 0x57, - 0x75, 0x03, 0x9c, 0x93, 0xd5, 0x22, 0xb3, 0x13, 0x73, 0xff, 0x2f, 0xdc, 0x0e, 0xc7, 0xdb, 0x78, - 0xb8, 0x9c, 0x62, 0xc4, 0xd3, 0x55, 0x05, 0xf1, 0xa3, 0x4d, 0x05, 0x5d, 0x5f, 0x5f, 0xfa, 0x6b, - 0xe1, 0xbb, 0xeb, 0xd1, 0xc7, 0xbc, 0x3f, 0x3c, 0x59, 0x3a, 0x23, 0x2f, 0xd5, 0x2e, 0xdf, 0x55, - 0xd2, 0x7f, 0xeb, 0x7a, 0xd3, 0xcb, 0x60, 0x2f, 0x0b, 0xf5, 0x17, 0xc7, 0x15, 0x32, 0x72, 0x6b, - 0xed, 0x7f, 0xa1, 0x1b, 0xd5, 0x79, 0x49, 0x0e, 0xde, 0xbb, 0xa4, 0xfa, 0xd0, 0x9a, 0xef, 0xdf, - 0xda, 0x88, 0x83, 0x75, 0xce, 0x55, 0x10, 0x71, 0x23, 0xe3, 0x20, 0xc3, 0x5c, 0x5a, 0xd4, 0xf3, - 0xb3, 0x25, 0x98, 0x40, 0x62, 0x20, 0x20, 0x07, 0xcd, 0xd3, 0x40, 0x03, 0x5f, 0xdb, 0xfd, 0xfc, - 0xf5, 0xb5, 0xfb, 0xc0, 0xbf, 0xdf, 0xa4, 0x99, 0x0d, 0x6d, 0x32, 0x6c, 0x6b, 0x58, 0x6f, 0xb3, - 0x52, 0x6a, 0x5b, 0xf0, 0xb4, 0x97, 0xa0, 0xb1, 0x86, 0x6d, 0x35, 0xfe, 0x6d, 0xb3, 0x11, 0xae, - 0xb4, 0xef, 0xec, 0xef, 0x91, 0x89, 0x4f, 0x7b, 0x24, 0x18, 0x73, 0x9c, 0x87, 0xd1, 0x33, 0x88, - 0xed, 0xee, 0xc7, 0x96, 0x7b, 0x85, 0xdc, 0x7b, 0x43, 0x0e, 0x8f, 0xa9, 0x73, 0x74, 0x4c, 0x9d, - 0x93, 0x63, 0x4a, 0x76, 0x2a, 0x4a, 0xde, 0x55, 0x94, 0x1c, 0x54, 0x94, 0x1c, 0x56, 0x94, 0x7c, - 0xa9, 0x28, 0xf9, 0x56, 0x51, 0xe7, 0xa4, 0xa2, 0xe4, 0xd5, 0x80, 0x3a, 0xfb, 0x03, 0x4a, 0x0e, - 0x07, 0xd4, 0x39, 0x1a, 0x50, 0xe7, 0xc9, 0x53, 0x81, 0xea, 0xb9, 0x08, 0x4b, 0x4c, 0x2d, 0x68, - 0xcd, 0xc3, 0xc2, 0xb0, 0xba, 0xe8, 0xa3, 0xce, 0x02, 0xa5, 0xb1, 0x94, 0x6b, 0xa0, 0x83, 0x33, - 0x98, 0xa9, 0x48, 0x20, 0x83, 0x0d, 0xdb, 0x24, 0xfe, 0x2f, 0xc1, 0x8f, 0x26, 0xeb, 0xcc, 0xdf, - 0xfc, 0x11, 0x00, 0x00, 0xff, 0xff, 0xcb, 0xb9, 0x8b, 0x6f, 0x1e, 0x04, 0x00, 0x00, + // 552 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x93, 0x41, 0x6b, 0xd4, 0x40, + 0x14, 0xc7, 0x33, 0x5b, 0xa8, 0x34, 0x5e, 0x24, 0x52, 0x5c, 0xd6, 0x32, 0x94, 0x3d, 0x48, 0x0f, + 0x26, 0x03, 0x15, 0xbd, 0x48, 0x0f, 0xda, 0x43, 0x45, 0xa4, 0xc2, 0x56, 0x10, 0x44, 0x58, 0x26, + 0xd9, 0xb7, 0x93, 0xd1, 0x24, 0x6f, 0x9c, 0x99, 0xa4, 0x2d, 0xa5, 0x50, 0xfa, 0x09, 0x04, 0xc1, + 0x83, 0x47, 0x4f, 0x7e, 0x04, 0xb1, 0x97, 0xde, 0xec, 0x49, 0x8a, 0x5e, 0x7a, 0xb4, 0x59, 0x0f, + 0x1e, 0xfb, 0x11, 0xc4, 0x34, 0xdd, 0xb6, 0x76, 0xc5, 0x05, 0x6f, 0xef, 0xcd, 0x6f, 0xfe, 0x93, + 0xff, 0xcc, 0x3f, 0xcf, 0x5d, 0x28, 0xc0, 0x04, 0x12, 0x99, 0x89, 0x62, 0x48, 0x39, 0x5b, 0xe5, + 0xfd, 0xae, 0x91, 0x22, 0xe3, 0x36, 0xd7, 0x60, 0xba, 0x51, 0xcc, 0x33, 0x01, 0x09, 0x0a, 0xa6, + 0xf2, 0x30, 0x91, 0x51, 0x37, 0xca, 0x8d, 0xc5, 0x94, 0x2b, 0x19, 0x28, 0x8d, 0x16, 0xbd, 0x1b, + 0xc7, 0xf2, 0xe0, 0x58, 0x1e, 0xfc, 0x4d, 0xde, 0xf2, 0x85, 0xb4, 0x71, 0x1e, 0x06, 0x11, 0xa6, + 0x4c, 0xa0, 0x40, 0x56, 0xc9, 0xc3, 0xbc, 0x5f, 0x75, 0x55, 0x53, 0x55, 0xc7, 0xc7, 0xb6, 0x66, + 0x04, 0xa2, 0x48, 0x80, 0x71, 0x25, 0x19, 0xcf, 0x32, 0xb4, 0xdc, 0x4a, 0xcc, 0x4c, 0x4d, 0xaf, + 0x9f, 0xf7, 0x8c, 0xea, 0x2c, 0x6c, 0x9f, 0x87, 0x05, 0x18, 0xc8, 0x8a, 0x3f, 0xf6, 0xcc, 0x8f, + 0x79, 0x69, 0xbb, 0xae, 0xa0, 0xd6, 0xb4, 0x97, 0xdd, 0xe9, 0x0e, 0x24, 0xc0, 0x0d, 0xf4, 0x56, + 0x86, 0x7b, 0x3b, 0xf0, 0xca, 0x9b, 0x71, 0xa7, 0x32, 0x9e, 0x82, 0x51, 0x3c, 0x82, 0x26, 0x99, + 0x25, 0x73, 0x53, 0x9d, 0xd3, 0x05, 0xef, 0x9a, 0x7b, 0xa9, 0x88, 0xbb, 0xbf, 0xfb, 0x66, 0xa3, + 0x62, 0x93, 0x45, 0xbc, 0xcc, 0x53, 0x68, 0x6f, 0x91, 0x91, 0x07, 0x1a, 0xe5, 0x09, 0xf7, 0xaa, + 0xae, 0xc1, 0x19, 0x5b, 0x4d, 0x32, 0x3b, 0x31, 0x77, 0x79, 0xfe, 0x4e, 0x30, 0xde, 0x8b, 0x07, + 0x4b, 0x09, 0x86, 0x3c, 0x59, 0x51, 0x10, 0x3d, 0x59, 0x57, 0xd0, 0xf1, 0xf4, 0x85, 0x6f, 0xcd, + 0xbf, 0x9b, 0x70, 0xe9, 0x53, 0xde, 0x1f, 0xae, 0x2c, 0x9e, 0x88, 0x17, 0xab, 0x94, 0xef, 0x29, + 0xe9, 0x7d, 0x6a, 0xb8, 0xd3, 0x4b, 0x60, 0x2f, 0x1a, 0xf5, 0x16, 0xc6, 0x35, 0x32, 0xf2, 0xd5, + 0x5a, 0xff, 0x23, 0x37, 0xaa, 0xfd, 0x9e, 0xec, 0x7d, 0x6c, 0x90, 0xf2, 0x73, 0xf3, 0x41, 0xff, + 0xf6, 0x5a, 0xe4, 0xaf, 0x72, 0xae, 0xfc, 0x90, 0x1b, 0x19, 0xf9, 0x29, 0x66, 0xd2, 0xa2, 0xbe, + 0x39, 0x7b, 0x0a, 0x8c, 0xe5, 0x59, 0x8f, 0xeb, 0xde, 0x29, 0x2b, 0xc0, 0xf8, 0x12, 0x7d, 0x01, + 0x19, 0x68, 0x9e, 0xf8, 0x1a, 0x78, 0x6f, 0xfb, 0xdb, 0x8f, 0x37, 0x8d, 0x47, 0xde, 0xc3, 0xfa, + 0x4f, 0x67, 0xc3, 0x08, 0x0d, 0xdb, 0x18, 0xd6, 0x9b, 0xac, 0x90, 0xda, 0xe6, 0x3c, 0xe9, 0xc6, + 0x68, 0xac, 0x61, 0x1b, 0x75, 0xb6, 0x9b, 0x6c, 0x44, 0x62, 0xad, 0xbb, 0xbb, 0x3b, 0x64, 0xe2, + 0xeb, 0x0e, 0xf1, 0xc7, 0xbc, 0xea, 0xe3, 0xf0, 0x05, 0x44, 0x76, 0xfb, 0x4b, 0xb3, 0x71, 0x85, + 0xdc, 0x7f, 0x4b, 0xf6, 0x0f, 0xa9, 0x73, 0x70, 0x48, 0x9d, 0xa3, 0x43, 0x4a, 0xb6, 0x4a, 0x4a, + 0x3e, 0x94, 0x94, 0xec, 0x95, 0x94, 0xec, 0x97, 0x94, 0x7c, 0x2f, 0x29, 0xf9, 0x59, 0x52, 0xe7, + 0xa8, 0xa4, 0xe4, 0xf5, 0x80, 0x3a, 0xbb, 0x03, 0x4a, 0xf6, 0x07, 0xd4, 0x39, 0x18, 0x50, 0xe7, + 0xd9, 0x73, 0x81, 0xea, 0xa5, 0x08, 0x0a, 0x4c, 0x2c, 0x68, 0xcd, 0x83, 0xdc, 0xb0, 0xaa, 0xe8, + 0xa3, 0x4e, 0x7d, 0xa5, 0xb1, 0x90, 0x3d, 0xd0, 0xfe, 0x09, 0x66, 0x2a, 0x14, 0xc8, 0x60, 0xcd, + 0xd6, 0xd3, 0xf0, 0x8f, 0xa1, 0x08, 0x27, 0xab, 0x79, 0xb8, 0xf5, 0x2b, 0x00, 0x00, 0xff, 0xff, + 0x45, 0xb5, 0x6d, 0x9c, 0x3a, 0x04, 0x00, 0x00, } func (this *ReleasedSignaturesReq) Equal(that interface{}) bool { diff --git a/pbgo/extschema/schema/ztna/crudapi/api.pb.go b/pbgo/extschema/schema/ztna/crudapi/api.pb.go new file mode 100644 index 000000000..7f1681e88 --- /dev/null +++ b/pbgo/extschema/schema/ztna/crudapi/api.pb.go @@ -0,0 +1,5698 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna/crudapi/api.proto + +package crudapi + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + ztna "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +type ErrorCode int32 + +const ( + EOK ErrorCode = 0 + ENOTFOUND ErrorCode = 1 + EEXISTS ErrorCode = 2 + EUNKNOWN ErrorCode = 3 +) + +var ErrorCode_name = map[int32]string{ + 0: "EOK", + 1: "ENOTFOUND", + 2: "EEXISTS", + 3: "EUNKNOWN", +} + +var ErrorCode_value = map[string]int32{ + "EOK": 0, + "ENOTFOUND": 1, + "EEXISTS": 2, + "EUNKNOWN": 3, +} + +func (ErrorCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{0} +} + +type ObjectCreateReq struct { + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateReq) Reset() { *m = ObjectCreateReq{} } +func (*ObjectCreateReq) ProtoMessage() {} +func (*ObjectCreateReq) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{0} +} +func (m *ObjectCreateReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateReq.Merge(m, src) +} +func (m *ObjectCreateReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateReq proto.InternalMessageInfo + +func (m *ObjectCreateReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateReq) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateReq) GetSpec() *ztna.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectCreateRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna.crudapi.ErrorCode" json:"err,omitempty"` + ObjectUid string `protobuf:"bytes,10001,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateRsp) Reset() { *m = ObjectCreateRsp{} } +func (*ObjectCreateRsp) ProtoMessage() {} +func (*ObjectCreateRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{1} +} +func (m *ObjectCreateRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateRsp.Merge(m, src) +} +func (m *ObjectCreateRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateRsp proto.InternalMessageInfo + +func (m *ObjectCreateRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectCreateRsp) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectCreateRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSpec() *ztna.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + ResourceVersion string `protobuf:"bytes,10001,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + Spec *ztna.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceReq) Reset() { *m = ObjectReplaceReq{} } +func (*ObjectReplaceReq) ProtoMessage() {} +func (*ObjectReplaceReq) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{2} +} +func (m *ObjectReplaceReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceReq.Merge(m, src) +} +func (m *ObjectReplaceReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceReq proto.InternalMessageInfo + +func (m *ObjectReplaceReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectReplaceReq) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectReplaceReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceReq) GetSpec() *ztna.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna.crudapi.ErrorCode" json:"err,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceRsp) Reset() { *m = ObjectReplaceRsp{} } +func (*ObjectReplaceRsp) ProtoMessage() {} +func (*ObjectReplaceRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{3} +} +func (m *ObjectReplaceRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceRsp.Merge(m, src) +} +func (m *ObjectReplaceRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceRsp proto.InternalMessageInfo + +func (m *ObjectReplaceRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectReplaceRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSpec() *ztna.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectGetReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + AllBackrefs bool `protobuf:"varint,10001,opt,name=all_backrefs,json=allBackrefs,proto3" json:"all_backrefs,omitempty"` + BackrefTypes []string `protobuf:"bytes,10002,rep,name=backref_types,json=backrefTypes,proto3" json:"backref_types,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10003,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` +} + +func (m *ObjectGetReq) Reset() { *m = ObjectGetReq{} } +func (*ObjectGetReq) ProtoMessage() {} +func (*ObjectGetReq) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{4} +} +func (m *ObjectGetReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetReq.Merge(m, src) +} +func (m *ObjectGetReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetReq proto.InternalMessageInfo + +func (m *ObjectGetReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectGetReq) GetAllBackrefs() bool { + if m != nil { + return m.AllBackrefs + } + return false +} + +func (m *ObjectGetReq) GetBackrefTypes() []string { + if m != nil { + return m.BackrefTypes + } + return nil +} + +func (m *ObjectGetReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +type ObjectGetRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna.crudapi.ErrorCode" json:"err,omitempty"` + EntBackrefs []*types.Any `protobuf:"bytes,10001,rep,name=ent_backrefs,json=entBackrefs,proto3" json:"ent_backrefs,omitempty"` + ResourceVersion string `protobuf:"bytes,10002,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Status []*ztna.StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` +} + +func (m *ObjectGetRsp) Reset() { *m = ObjectGetRsp{} } +func (*ObjectGetRsp) ProtoMessage() {} +func (*ObjectGetRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{5} +} +func (m *ObjectGetRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetRsp.Merge(m, src) +} +func (m *ObjectGetRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetRsp proto.InternalMessageInfo + +func (m *ObjectGetRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectGetRsp) GetEntBackrefs() []*types.Any { + if m != nil { + return m.EntBackrefs + } + return nil +} + +func (m *ObjectGetRsp) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectGetRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectGetRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectGetRsp) GetSpec() *ztna.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectGetRsp) GetStatus() []*ztna.StatusObject { + if m != nil { + return m.Status + } + return nil +} + +type ObjectListReq struct { + // Filters executed on server-side - all types of filters ANDed + // Tenants to scope the listing of objects - if empty all tenants considered + TenantFilter []string `protobuf:"bytes,10000,rep,name=tenant_filter,json=tenantFilter,proto3" json:"tenant_filter,omitempty"` + // Namespaces to scope the listing of objects - if empty all namespaces considered + NamespaceFilter []string `protobuf:"bytes,10001,rep,name=namespace_filter,json=namespaceFilter,proto3" json:"namespace_filter,omitempty"` + // k8s style label selector expression + LabelFilter string `protobuf:"bytes,10002,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // TODO: currently even if one specified implementation will return all fields + ReportFields []string `protobuf:"bytes,10003,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // Get the resource_version associated with the list + ResourceVersion bool `protobuf:"varint,10004,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10005,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` + // The value for PageStart indicating from very first entry. This will be ignored unless page_limit + // is also defined + PageStart string `protobuf:"bytes,10006,opt,name=page_start,json=pageStart,proto3" json:"page_start,omitempty"` + // The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset, + // the first page will be returned. + PageLimit int32 `protobuf:"varint,10007,opt,name=page_limit,json=pageLimit,proto3" json:"page_limit,omitempty"` +} + +func (m *ObjectListReq) Reset() { *m = ObjectListReq{} } +func (*ObjectListReq) ProtoMessage() {} +func (*ObjectListReq) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{6} +} +func (m *ObjectListReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListReq.Merge(m, src) +} +func (m *ObjectListReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectListReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListReq proto.InternalMessageInfo + +func (m *ObjectListReq) GetTenantFilter() []string { + if m != nil { + return m.TenantFilter + } + return nil +} + +func (m *ObjectListReq) GetNamespaceFilter() []string { + if m != nil { + return m.NamespaceFilter + } + return nil +} + +func (m *ObjectListReq) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ObjectListReq) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ObjectListReq) GetResourceVersion() bool { + if m != nil { + return m.ResourceVersion + } + return false +} + +func (m *ObjectListReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +func (m *ObjectListReq) GetPageStart() string { + if m != nil { + return m.PageStart + } + return "" +} + +func (m *ObjectListReq) GetPageLimit() int32 { + if m != nil { + return m.PageLimit + } + return 0 +} + +type ObjectListRspItem struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + // If ObjectListReq has any specified report_fields, it will appear in below fields + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Status []*ztna.StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` + Tenant string `protobuf:"bytes,10001,opt,name=tenant,proto3" json:"tenant,omitempty"` + Namespace string `protobuf:"bytes,10002,opt,name=namespace,proto3" json:"namespace,omitempty"` + Name string `protobuf:"bytes,10003,opt,name=name,proto3" json:"name,omitempty"` + Labels map[string]string `protobuf:"bytes,10004,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ObjectListRspItem) Reset() { *m = ObjectListRspItem{} } +func (*ObjectListRspItem) ProtoMessage() {} +func (*ObjectListRspItem) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{7} +} +func (m *ObjectListRspItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRspItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRspItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRspItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRspItem.Merge(m, src) +} +func (m *ObjectListRspItem) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRspItem) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRspItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRspItem proto.InternalMessageInfo + +func (m *ObjectListRspItem) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectListRspItem) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRspItem) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectListRspItem) GetSpec() *ztna.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectListRspItem) GetStatus() []*ztna.StatusObject { + if m != nil { + return m.Status + } + return nil +} + +func (m *ObjectListRspItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ObjectListRspItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ObjectListRspItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ObjectListRspItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +type ObjectListRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna.crudapi.ErrorCode" json:"err,omitempty"` + Uids []string `protobuf:"bytes,10001,rep,name=uids,proto3" json:"uids,omitempty"` + Items []*ObjectListRspItem `protobuf:"bytes,10002,rep,name=items,proto3" json:"items,omitempty"` + Metadata *schema.ListMetaType `protobuf:"bytes,10003,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Will only be set if request included a page_limit and there are more pages beyond the current page + NextPage string `protobuf:"bytes,10004,opt,name=next_page,json=nextPage,proto3" json:"next_page,omitempty"` +} + +func (m *ObjectListRsp) Reset() { *m = ObjectListRsp{} } +func (*ObjectListRsp) ProtoMessage() {} +func (*ObjectListRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{8} +} +func (m *ObjectListRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRsp.Merge(m, src) +} +func (m *ObjectListRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRsp proto.InternalMessageInfo + +func (m *ObjectListRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectListRsp) GetUids() []string { + if m != nil { + return m.Uids + } + return nil +} + +func (m *ObjectListRsp) GetItems() []*ObjectListRspItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ObjectListRsp) GetMetadata() *schema.ListMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRsp) GetNextPage() string { + if m != nil { + return m.NextPage + } + return "" +} + +type ObjectDeleteReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` +} + +func (m *ObjectDeleteReq) Reset() { *m = ObjectDeleteReq{} } +func (*ObjectDeleteReq) ProtoMessage() {} +func (*ObjectDeleteReq) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{9} +} +func (m *ObjectDeleteReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteReq.Merge(m, src) +} +func (m *ObjectDeleteReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteReq proto.InternalMessageInfo + +func (m *ObjectDeleteReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +type ObjectDeleteRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna.crudapi.ErrorCode" json:"err,omitempty"` +} + +func (m *ObjectDeleteRsp) Reset() { *m = ObjectDeleteRsp{} } +func (*ObjectDeleteRsp) ProtoMessage() {} +func (*ObjectDeleteRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_876c9e2cb3c1e7c5, []int{10} +} +func (m *ObjectDeleteRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteRsp.Merge(m, src) +} +func (m *ObjectDeleteRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteRsp proto.InternalMessageInfo + +func (m *ObjectDeleteRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func init() { + proto.RegisterEnum("ves.io.schema.ztna.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + golang_proto.RegisterEnum("ves.io.schema.ztna.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.ztna.crudapi.ObjectCreateReq") + golang_proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.ztna.crudapi.ObjectCreateReq") + proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectCreateRsp") + golang_proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectCreateRsp") + proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.ztna.crudapi.ObjectReplaceReq") + golang_proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.ztna.crudapi.ObjectReplaceReq") + proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectReplaceRsp") + golang_proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectReplaceRsp") + proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.ztna.crudapi.ObjectGetReq") + golang_proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.ztna.crudapi.ObjectGetReq") + proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectGetRsp") + golang_proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectGetRsp") + proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.ztna.crudapi.ObjectListReq") + golang_proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.ztna.crudapi.ObjectListReq") + proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.ztna.crudapi.ObjectListRspItem") + golang_proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.ztna.crudapi.ObjectListRspItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna.crudapi.ObjectListRspItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna.crudapi.ObjectListRspItem.LabelsEntry") + proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectListRsp") + golang_proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectListRsp") + proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.ztna.crudapi.ObjectDeleteReq") + golang_proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.ztna.crudapi.ObjectDeleteReq") + proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectDeleteRsp") + golang_proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.ztna.crudapi.ObjectDeleteRsp") +} + +func init() { + proto.RegisterFile("ves.io/schema/ztna/crudapi/api.proto", fileDescriptor_876c9e2cb3c1e7c5) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna/crudapi/api.proto", fileDescriptor_876c9e2cb3c1e7c5) +} + +var fileDescriptor_876c9e2cb3c1e7c5 = []byte{ + // 1376 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0x4d, 0x6c, 0x1b, 0xc5, + 0x17, 0xcf, 0xd8, 0x69, 0x12, 0x8f, 0x93, 0x26, 0x9d, 0x56, 0xfa, 0xbb, 0x6e, 0xba, 0x8d, 0xf6, + 0x1f, 0x44, 0x9a, 0x36, 0xbb, 0x34, 0x1c, 0x48, 0x22, 0x51, 0xd4, 0x0f, 0xa7, 0x8a, 0x9a, 0x3a, + 0xd5, 0xba, 0x2d, 0x90, 0x8b, 0x59, 0x7b, 0x5f, 0xdc, 0x25, 0xeb, 0xdd, 0xed, 0xcc, 0xd8, 0xd4, + 0xa0, 0x48, 0x88, 0x23, 0xa7, 0xf4, 0x03, 0x90, 0x2a, 0x0e, 0x1c, 0xe1, 0xce, 0x01, 0x29, 0x42, + 0xea, 0x31, 0x70, 0x69, 0x45, 0x25, 0x94, 0x23, 0x75, 0x38, 0x70, 0x42, 0x15, 0x67, 0x24, 0xd0, + 0xce, 0xac, 0x5d, 0xdb, 0x71, 0x6a, 0x97, 0x50, 0x89, 0x43, 0x2f, 0xd6, 0xcc, 0x7b, 0xbf, 0xf7, + 0xe6, 0xbd, 0x37, 0xbf, 0x37, 0x33, 0x5e, 0x3c, 0x5e, 0x06, 0xa6, 0xd9, 0x9e, 0xce, 0xf2, 0xd7, + 0xa1, 0x68, 0xea, 0x1f, 0x72, 0xd7, 0xd4, 0xf3, 0xb4, 0x64, 0x99, 0xbe, 0xad, 0x9b, 0xbe, 0xad, + 0xf9, 0xd4, 0xe3, 0x1e, 0x49, 0x4a, 0x94, 0x26, 0x51, 0x5a, 0x80, 0xd2, 0x42, 0x54, 0x72, 0xaa, + 0x60, 0xf3, 0xeb, 0xa5, 0x9c, 0x96, 0xf7, 0x8a, 0x7a, 0xc1, 0x2b, 0x78, 0xba, 0x30, 0xc9, 0x95, + 0x56, 0xc4, 0x4c, 0x4c, 0xc4, 0x48, 0xba, 0x4a, 0x8e, 0x16, 0x3c, 0xaf, 0xe0, 0x80, 0x2e, 0x16, + 0x70, 0x5d, 0x8f, 0x9b, 0xdc, 0xf6, 0x5c, 0x16, 0x6a, 0x0f, 0x87, 0xda, 0xba, 0x0f, 0xd3, 0xad, + 0x84, 0xaa, 0x23, 0xcd, 0x91, 0x7a, 0x7e, 0x93, 0x5d, 0xb3, 0x92, 0x57, 0x7c, 0xa8, 0xa9, 0xd4, + 0x66, 0x55, 0x19, 0x18, 0xb8, 0xe5, 0x16, 0xf3, 0x63, 0x6d, 0xaa, 0xe0, 0xe5, 0xde, 0x87, 0x3c, + 0x0f, 0x01, 0x4a, 0x1b, 0x40, 0xc3, 0x22, 0xea, 0xdd, 0x08, 0x1e, 0x5e, 0x12, 0x06, 0xe7, 0x28, + 0x98, 0x1c, 0x0c, 0xb8, 0x41, 0xe6, 0xf1, 0x40, 0x11, 0xb8, 0x69, 0x99, 0xdc, 0x4c, 0xa0, 0x31, + 0x34, 0x11, 0x9f, 0x3e, 0xaa, 0x35, 0xd7, 0x51, 0x5a, 0x5c, 0x02, 0x6e, 0x5e, 0xa9, 0xf8, 0x70, + 0x36, 0x7e, 0x6f, 0xad, 0x6e, 0x61, 0xd4, 0x47, 0xe4, 0x3d, 0x3c, 0xcc, 0x2a, 0x8c, 0x43, 0x31, + 0x5b, 0x77, 0x17, 0x11, 0xee, 0xfe, 0xdf, 0xe2, 0x2e, 0x23, 0x50, 0x2d, 0x4e, 0xc9, 0xbd, 0xb5, + 0x56, 0x73, 0x63, 0xbf, 0x14, 0x5c, 0xaa, 0xad, 0x30, 0x8b, 0x7b, 0x99, 0x0f, 0xf9, 0x44, 0x54, + 0xb8, 0x1d, 0xd5, 0xda, 0xec, 0x76, 0xc6, 0x87, 0xbc, 0xf0, 0xd7, 0x7f, 0x6f, 0x4d, 0x80, 0x0d, + 0xf1, 0x3b, 0x37, 0xfa, 0xe3, 0xe9, 0xc3, 0x6d, 0xe0, 0x32, 0x08, 0xf5, 0xf7, 0xd6, 0xb2, 0x30, + 0x9f, 0xcc, 0xe0, 0x28, 0x50, 0x9a, 0x58, 0x4f, 0x8f, 0xa1, 0x89, 0xfd, 0xd3, 0xaf, 0x68, 0xbb, + 0x53, 0x4b, 0x4b, 0x51, 0xea, 0xd1, 0x73, 0x9e, 0x05, 0x46, 0x60, 0x42, 0x14, 0x8c, 0xe5, 0xa6, + 0x64, 0x4b, 0xb6, 0x95, 0xb8, 0x15, 0x38, 0x88, 0x19, 0x31, 0x29, 0xba, 0x6a, 0x5b, 0x2f, 0x0b, + 0xce, 0xd5, 0xbf, 0x10, 0x1e, 0x91, 0x43, 0x03, 0x7c, 0xc7, 0xcc, 0x0b, 0x22, 0x36, 0xd7, 0x6d, + 0x7d, 0x47, 0xdd, 0x26, 0xf1, 0x08, 0x05, 0xe6, 0x95, 0x68, 0x1e, 0xb2, 0x65, 0xa0, 0xcc, 0xf6, + 0xdc, 0x5a, 0x75, 0x87, 0x6b, 0x8a, 0x6b, 0x52, 0xfe, 0xaf, 0xd5, 0xf8, 0x85, 0x55, 0xe0, 0x41, + 0xa4, 0xb5, 0x02, 0x7b, 0xe2, 0xdc, 0x4b, 0x4e, 0xa9, 0xdf, 0x20, 0x3c, 0x28, 0x87, 0x17, 0x80, + 0x77, 0xc3, 0x27, 0x15, 0x0f, 0x9a, 0x8e, 0x93, 0xcd, 0x99, 0xf9, 0x55, 0x0a, 0x2b, 0x4c, 0x72, + 0x69, 0xc0, 0x88, 0x9b, 0x8e, 0x73, 0x36, 0x94, 0x91, 0x71, 0x3c, 0x14, 0xea, 0xb3, 0xe2, 0x1c, + 0x4d, 0xdc, 0x4e, 0x8f, 0x45, 0x27, 0x62, 0xc6, 0x60, 0x28, 0x0d, 0xc2, 0x64, 0x44, 0xc7, 0x07, + 0x6d, 0x37, 0xef, 0x94, 0x2c, 0xc8, 0x52, 0x58, 0x01, 0x4a, 0xc1, 0xca, 0xda, 0x56, 0xe2, 0x8e, + 0x74, 0x78, 0x20, 0xd4, 0x19, 0xa1, 0x6a, 0xc1, 0x52, 0xff, 0x88, 0x36, 0xc6, 0xba, 0xa7, 0x9d, + 0x9f, 0xc1, 0x83, 0xe0, 0xf2, 0xa6, 0x2c, 0xa2, 0x13, 0xf1, 0xe9, 0x43, 0x9a, 0xbc, 0xa2, 0xb4, + 0xda, 0x15, 0xa5, 0x9d, 0x71, 0x2b, 0x46, 0x1c, 0x5c, 0x5e, 0xcf, 0xad, 0x5d, 0x3f, 0xdd, 0x7e, + 0xc1, 0xfd, 0xf4, 0x5f, 0xe6, 0x17, 0x79, 0x0b, 0xf7, 0x31, 0x6e, 0xf2, 0x12, 0x4b, 0x7c, 0xf5, + 0x25, 0x12, 0x55, 0x1c, 0x6b, 0x6b, 0x2e, 0x30, 0x32, 0xb4, 0xb3, 0xd1, 0xfb, 0x6b, 0xc8, 0x08, + 0xcd, 0x3a, 0x10, 0x74, 0x33, 0x82, 0x87, 0xe4, 0x70, 0xd1, 0x66, 0x82, 0xa1, 0xe3, 0x78, 0x88, + 0x83, 0x6b, 0xba, 0x3c, 0xbb, 0x62, 0x3b, 0x1c, 0xc4, 0xfe, 0x0b, 0x76, 0x49, 0xe9, 0xbc, 0x10, + 0x06, 0xfb, 0xe4, 0x9a, 0x45, 0x60, 0xbe, 0x99, 0x87, 0x1a, 0xf0, 0x96, 0x04, 0x0e, 0xd7, 0x15, + 0x21, 0x56, 0xc5, 0x83, 0x8e, 0x99, 0x03, 0xa7, 0x86, 0x0b, 0xf7, 0x33, 0x2e, 0x84, 0x21, 0x66, + 0x1c, 0x0f, 0x51, 0xf0, 0x3d, 0x1a, 0xac, 0x0a, 0x8e, 0xc5, 0x02, 0x9e, 0x8a, 0x55, 0xa5, 0x74, + 0x5e, 0x08, 0xdb, 0xb2, 0xe3, 0xae, 0x24, 0xf4, 0x0e, 0x76, 0xec, 0xc2, 0xff, 0xcf, 0x76, 0xe3, + 0x7f, 0xd0, 0x9a, 0xbe, 0x59, 0x80, 0x2c, 0xe3, 0x26, 0xe5, 0x89, 0xcf, 0xc3, 0xd6, 0x0c, 0x44, + 0x99, 0x40, 0x52, 0xd7, 0x3b, 0x76, 0xd1, 0xe6, 0x89, 0x2f, 0x02, 0xfd, 0x3e, 0xa9, 0x5f, 0x0c, + 0x24, 0xea, 0xa3, 0x5e, 0x7c, 0xa0, 0xa1, 0x94, 0xcc, 0x5f, 0xe0, 0x50, 0xec, 0xd8, 0xf0, 0x2f, + 0x49, 0xdc, 0x05, 0x89, 0xc9, 0xff, 0x70, 0x9f, 0xa4, 0x5f, 0xed, 0x72, 0x0d, 0xa7, 0xe4, 0x28, + 0x8e, 0xd5, 0xe9, 0x56, 0x23, 0xd6, 0x53, 0x09, 0x39, 0x88, 0x7b, 0x83, 0x89, 0x3c, 0xf5, 0x62, + 0x86, 0x98, 0x10, 0x03, 0xf7, 0x09, 0xea, 0xb1, 0x80, 0x3b, 0x41, 0x30, 0xb3, 0xcf, 0x3a, 0xda, + 0x76, 0x6c, 0xa9, 0xb6, 0x28, 0x8c, 0x53, 0x2e, 0xa7, 0x15, 0x23, 0xf4, 0x94, 0x9c, 0xc5, 0xf1, + 0x06, 0x31, 0x19, 0xc1, 0xd1, 0x55, 0xa8, 0x88, 0x0d, 0x8d, 0x19, 0xc1, 0x90, 0x1c, 0xc2, 0xfb, + 0xca, 0xa6, 0x53, 0x02, 0xb1, 0x2b, 0x31, 0x43, 0x4e, 0xe6, 0x22, 0x33, 0xa8, 0x43, 0x83, 0xfe, + 0x89, 0x9a, 0x1a, 0x74, 0x4f, 0xc7, 0xf2, 0x41, 0xdc, 0x5b, 0xb2, 0x2d, 0x56, 0x6b, 0x54, 0x31, + 0x21, 0xe7, 0xf1, 0x3e, 0x9b, 0x43, 0x31, 0xbc, 0x45, 0xe2, 0xd3, 0x53, 0xcf, 0x55, 0x0c, 0x43, + 0x1a, 0x93, 0x99, 0x06, 0x1a, 0x8b, 0x62, 0xc7, 0xa7, 0x8f, 0xb4, 0x38, 0x0a, 0xac, 0x6a, 0x84, + 0x6b, 0x20, 0xee, 0x28, 0x8e, 0xb9, 0x70, 0x93, 0x67, 0x83, 0x46, 0x92, 0xcd, 0x1c, 0x33, 0x06, + 0x02, 0xc9, 0x65, 0xb3, 0x00, 0xea, 0xa9, 0xda, 0x23, 0xf8, 0x3c, 0x38, 0xc0, 0xbb, 0x79, 0x92, + 0xa9, 0x17, 0x5b, 0x4c, 0xf6, 0x52, 0xb2, 0xc9, 0xd3, 0x38, 0x56, 0x97, 0x90, 0x7e, 0x1c, 0x4d, + 0x2d, 0x5d, 0x1c, 0xe9, 0x21, 0x43, 0x38, 0x96, 0x4a, 0x2f, 0x5d, 0x99, 0x5f, 0xba, 0x9a, 0x3e, + 0x3f, 0x82, 0x48, 0x1c, 0xf7, 0xa7, 0x52, 0xef, 0x2c, 0x64, 0xae, 0x64, 0x46, 0x22, 0x64, 0x10, + 0x0f, 0xa4, 0xae, 0xa6, 0x2f, 0xa6, 0x97, 0xde, 0x4e, 0x8f, 0x44, 0xa7, 0x7f, 0x8e, 0xe1, 0xe8, + 0x99, 0xcb, 0x0b, 0xe4, 0x7b, 0x84, 0xfb, 0xe4, 0x3b, 0x9e, 0x9c, 0xe8, 0x5c, 0xe0, 0xfa, 0x1f, + 0xa1, 0x64, 0xf7, 0x60, 0xe6, 0xab, 0xef, 0x7e, 0xf2, 0xe8, 0xd7, 0x3b, 0x91, 0x8c, 0x7a, 0x44, + 0xdf, 0x69, 0xa4, 0x4b, 0x30, 0x9b, 0x43, 0x93, 0xcb, 0xa7, 0xd4, 0x93, 0xed, 0x10, 0xb6, 0xcb, + 0xa9, 0x17, 0xf4, 0x2b, 0xd7, 0x3f, 0xa0, 0x36, 0x87, 0x06, 0x13, 0xb2, 0x85, 0x70, 0x7f, 0xf8, + 0x28, 0x24, 0x27, 0x3b, 0xc7, 0xf4, 0xf4, 0x05, 0x9d, 0x7c, 0x0e, 0x34, 0xf3, 0xd5, 0x1b, 0x22, + 0x85, 0xd5, 0xe4, 0xab, 0xbb, 0xa7, 0xa0, 0x7f, 0xf4, 0x74, 0xfb, 0xd7, 0x82, 0x74, 0xde, 0x4c, + 0xce, 0x3c, 0x47, 0x3a, 0xad, 0xe6, 0xe4, 0x07, 0x84, 0xa3, 0x17, 0x80, 0x93, 0x89, 0xce, 0x81, + 0xca, 0x47, 0x5c, 0xb2, 0x4b, 0x24, 0xf3, 0x55, 0x77, 0xf3, 0xbb, 0x08, 0x12, 0x29, 0x59, 0xa4, + 0xdb, 0x94, 0x96, 0x67, 0xc9, 0x1b, 0x1d, 0xf2, 0xa1, 0x60, 0x5a, 0xed, 0x4c, 0xc9, 0xb7, 0x08, + 0xf7, 0x06, 0x7d, 0x46, 0x8e, 0x77, 0xd9, 0xc5, 0x70, 0x23, 0x79, 0xbc, 0xeb, 0x86, 0x57, 0xaf, + 0xd5, 0xd3, 0x59, 0x24, 0xcf, 0x22, 0xd9, 0xf2, 0x14, 0x39, 0xd1, 0x7d, 0x0a, 0x8c, 0xac, 0x23, + 0x8c, 0x83, 0x35, 0x32, 0x9c, 0x82, 0x59, 0x7c, 0x41, 0xc1, 0x4f, 0x8a, 0xc0, 0xc7, 0x89, 0xfa, + 0x8c, 0xc0, 0x75, 0x26, 0x22, 0x78, 0x0d, 0x91, 0x07, 0x08, 0xf7, 0xc9, 0x03, 0xa4, 0x9b, 0x86, + 0xad, 0x9f, 0x4e, 0xc9, 0xee, 0xc1, 0xcc, 0x57, 0x57, 0x45, 0x48, 0x30, 0xd9, 0x35, 0x35, 0xe6, + 0x26, 0xff, 0x31, 0xd5, 0x93, 0x8b, 0xf7, 0x37, 0x10, 0xda, 0xdc, 0x40, 0xe8, 0xa7, 0x0d, 0xb4, + 0xfb, 0x85, 0xb3, 0xb5, 0x81, 0x50, 0x75, 0x03, 0x1d, 0xeb, 0x74, 0x3d, 0x7f, 0x8a, 0x1e, 0x3e, + 0x56, 0x7a, 0xb6, 0x1e, 0x2b, 0x3d, 0x4f, 0x1e, 0x2b, 0xe8, 0xe3, 0xaa, 0x82, 0xbe, 0xae, 0x2a, + 0x68, 0xb3, 0xaa, 0xa0, 0x87, 0x55, 0x05, 0xfd, 0x52, 0x55, 0xd0, 0x6f, 0x55, 0xa5, 0xe7, 0x49, + 0x55, 0x41, 0xeb, 0xdb, 0x4a, 0xcf, 0xfd, 0x6d, 0x05, 0x3d, 0xdc, 0x56, 0x7a, 0xb6, 0xb6, 0x95, + 0x9e, 0xe5, 0xcb, 0x05, 0xcf, 0x5f, 0x2d, 0x68, 0x65, 0x2f, 0x78, 0xf9, 0x51, 0x53, 0x2b, 0x31, + 0x5d, 0x0c, 0x56, 0x3c, 0x5a, 0x9c, 0xf2, 0xa9, 0x57, 0xb6, 0x2d, 0xa0, 0x53, 0x35, 0xb5, 0xee, + 0xe7, 0x0a, 0x9e, 0x0e, 0x37, 0x79, 0xf8, 0xfd, 0xa8, 0xcd, 0xd7, 0xb6, 0x5c, 0x9f, 0xf8, 0x43, + 0xf1, 0xfa, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x69, 0x1d, 0xa8, 0x24, 0x92, 0x13, 0x00, 0x00, +} + +func (x ErrorCode) String() string { + s, ok := ErrorCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ObjectCreateReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateReq) + if !ok { + that2, ok := that.(ObjectCreateReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectCreateRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateRsp) + if !ok { + that2, ok := that.(ObjectCreateRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceReq) + if !ok { + that2, ok := that.(ObjectReplaceReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceRsp) + if !ok { + that2, ok := that.(ObjectReplaceRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectGetReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetReq) + if !ok { + that2, ok := that.(ObjectGetReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.AllBackrefs != that1.AllBackrefs { + return false + } + if len(this.BackrefTypes) != len(that1.BackrefTypes) { + return false + } + for i := range this.BackrefTypes { + if this.BackrefTypes[i] != that1.BackrefTypes[i] { + return false + } + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + return true +} +func (this *ObjectGetRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetRsp) + if !ok { + that2, ok := that.(ObjectGetRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.EntBackrefs) != len(that1.EntBackrefs) { + return false + } + for i := range this.EntBackrefs { + if !this.EntBackrefs[i].Equal(that1.EntBackrefs[i]) { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + return true +} +func (this *ObjectListReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListReq) + if !ok { + that2, ok := that.(ObjectListReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.TenantFilter) != len(that1.TenantFilter) { + return false + } + for i := range this.TenantFilter { + if this.TenantFilter[i] != that1.TenantFilter[i] { + return false + } + } + if len(this.NamespaceFilter) != len(that1.NamespaceFilter) { + return false + } + for i := range this.NamespaceFilter { + if this.NamespaceFilter[i] != that1.NamespaceFilter[i] { + return false + } + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + if this.PageStart != that1.PageStart { + return false + } + if this.PageLimit != that1.PageLimit { + return false + } + return true +} +func (this *ObjectListRspItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRspItem) + if !ok { + that2, ok := that.(ObjectListRspItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + return true +} +func (this *ObjectListRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRsp) + if !ok { + that2, ok := that.(ObjectListRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.Uids) != len(that1.Uids) { + return false + } + for i := range this.Uids { + if this.Uids[i] != that1.Uids[i] { + return false + } + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if this.NextPage != that1.NextPage { + return false + } + return true +} +func (this *ObjectDeleteReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteReq) + if !ok { + that2, ok := that.(ObjectDeleteReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + return true +} +func (this *ObjectDeleteRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteRsp) + if !ok { + that2, ok := that.(ObjectDeleteRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + return true +} +func (this *ObjectCreateReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&crudapi.ObjectCreateReq{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectCreateRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectCreateRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectGetReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "AllBackrefs: "+fmt.Sprintf("%#v", this.AllBackrefs)+",\n") + s = append(s, "BackrefTypes: "+fmt.Sprintf("%#v", this.BackrefTypes)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&crudapi.ObjectGetRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.EntBackrefs != nil { + s = append(s, "EntBackrefs: "+fmt.Sprintf("%#v", this.EntBackrefs)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListReq{") + s = append(s, "TenantFilter: "+fmt.Sprintf("%#v", this.TenantFilter)+",\n") + s = append(s, "NamespaceFilter: "+fmt.Sprintf("%#v", this.NamespaceFilter)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "PageStart: "+fmt.Sprintf("%#v", this.PageStart)+",\n") + s = append(s, "PageLimit: "+fmt.Sprintf("%#v", this.PageLimit)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRspItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 13) + s = append(s, "&crudapi.ObjectListRspItem{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectListRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "Uids: "+fmt.Sprintf("%#v", this.Uids)+",\n") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + s = append(s, "NextPage: "+fmt.Sprintf("%#v", this.NextPage)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringApi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) + Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) + Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) + List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) + ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) + Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + out := new(ObjectCreateRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.crudapi.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + out := new(ObjectReplaceRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.crudapi.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + out := new(ObjectGetRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.crudapi.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + out := new(ObjectListRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.crudapi.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + stream, err := c.cc.NewStream(ctx, &_API_serviceDesc.Streams[0], "/ves.io.schema.ztna.crudapi.API/ListStream", opts...) + if err != nil { + return nil, err + } + x := &aPIListStreamClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type API_ListStreamClient interface { + Recv() (*ObjectListRsp, error) + grpc.ClientStream +} + +type aPIListStreamClient struct { + grpc.ClientStream +} + +func (x *aPIListStreamClient) Recv() (*ObjectListRsp, error) { + m := new(ObjectListRsp) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + out := new(ObjectDeleteRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.crudapi.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + Create(context.Context, *ObjectCreateReq) (*ObjectCreateRsp, error) + Replace(context.Context, *ObjectReplaceReq) (*ObjectReplaceRsp, error) + Get(context.Context, *ObjectGetReq) (*ObjectGetRsp, error) + List(context.Context, *ObjectListReq) (*ObjectListRsp, error) + ListStream(*ObjectListReq, API_ListStreamServer) error + Delete(context.Context, *ObjectDeleteReq) (*ObjectDeleteRsp, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) ListStream(req *ObjectListReq, srv API_ListStreamServer) error { + return status.Errorf(codes.Unimplemented, "method ListStream not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectCreateReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.crudapi.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*ObjectCreateReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectReplaceReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.crudapi.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ObjectReplaceReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectGetReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.crudapi.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*ObjectGetReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.crudapi.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ObjectListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ObjectListReq) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(APIServer).ListStream(m, &aPIListStreamServer{stream}) +} + +type API_ListStreamServer interface { + Send(*ObjectListRsp) error + grpc.ServerStream +} + +type aPIListStreamServer struct { + grpc.ServerStream +} + +func (x *aPIListStreamServer) Send(m *ObjectListRsp) error { + return x.ServerStream.SendMsg(m) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectDeleteReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.crudapi.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*ObjectDeleteReq)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.ztna.crudapi.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "ListStream", + Handler: _API_ListStream_Handler, + ServerStreams: true, + }, + }, + Metadata: "ves.io/schema/ztna/crudapi/api.proto", +} + +func (m *ObjectCreateReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectCreateRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x98 + } + if len(m.BackrefTypes) > 0 { + for iNdEx := len(m.BackrefTypes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.BackrefTypes[iNdEx]) + copy(dAtA[i:], m.BackrefTypes[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.BackrefTypes[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if m.AllBackrefs { + i-- + if m.AllBackrefs { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x88 + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.EntBackrefs) > 0 { + for iNdEx := len(m.EntBackrefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EntBackrefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PageLimit != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.PageLimit)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb8 + } + if len(m.PageStart) > 0 { + i -= len(m.PageStart) + copy(dAtA[i:], m.PageStart) + i = encodeVarintApi(dAtA, i, uint64(len(m.PageStart))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb2 + } + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa8 + } + if m.ResourceVersion { + i-- + if m.ResourceVersion { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa0 + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintApi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.NamespaceFilter) > 0 { + for iNdEx := len(m.NamespaceFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.NamespaceFilter[iNdEx]) + copy(dAtA[i:], m.NamespaceFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.NamespaceFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if len(m.TenantFilter) > 0 { + for iNdEx := len(m.TenantFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.TenantFilter[iNdEx]) + copy(dAtA[i:], m.TenantFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.TenantFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRspItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRspItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRspItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintApi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintApi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.NextPage) > 0 { + i -= len(m.NextPage) + copy(dAtA[i:], m.NextPage) + i = encodeVarintApi(dAtA, i, uint64(len(m.NextPage))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if len(m.Uids) > 0 { + for iNdEx := len(m.Uids) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Uids[iNdEx]) + copy(dAtA[i:], m.Uids[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.Uids[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func encodeVarintApi(dAtA []byte, offset int, v uint64) int { + offset -= sovApi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ObjectCreateReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectCreateRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func (m *ObjectGetReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.AllBackrefs { + n += 4 + } + if len(m.BackrefTypes) > 0 { + for _, s := range m.BackrefTypes { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.IncludeReferredId { + n += 4 + } + return n +} + +func (m *ObjectGetRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.EntBackrefs) > 0 { + for _, e := range m.EntBackrefs { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ObjectListReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.TenantFilter) > 0 { + for _, s := range m.TenantFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.NamespaceFilter) > 0 { + for _, s := range m.NamespaceFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.LabelFilter) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.ResourceVersion { + n += 4 + } + if m.IncludeReferredId { + n += 4 + } + l = len(m.PageStart) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.PageLimit != 0 { + n += 3 + sovApi(uint64(m.PageLimit)) + } + return n +} + +func (m *ObjectListRspItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Tenant) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Namespace) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 3 + sovApi(uint64(mapEntrySize)) + } + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ObjectListRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.Uids) > 0 { + for _, s := range m.Uids { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.NextPage) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func sovApi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozApi(x uint64) (n int) { + return sovApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ObjectCreateReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna.SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectCreateRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectGetReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `AllBackrefs:` + fmt.Sprintf("%v", this.AllBackrefs) + `,`, + `BackrefTypes:` + fmt.Sprintf("%v", this.BackrefTypes) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForEntBackrefs := "[]*Any{" + for _, f := range this.EntBackrefs { + repeatedStringForEntBackrefs += strings.Replace(fmt.Sprintf("%v", f), "Any", "types.Any", 1) + "," + } + repeatedStringForEntBackrefs += "}" + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "ztna.StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + s := strings.Join([]string{`&ObjectGetRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `EntBackrefs:` + repeatedStringForEntBackrefs + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectListReq{`, + `TenantFilter:` + fmt.Sprintf("%v", this.TenantFilter) + `,`, + `NamespaceFilter:` + fmt.Sprintf("%v", this.NamespaceFilter) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `PageStart:` + fmt.Sprintf("%v", this.PageStart) + `,`, + `PageLimit:` + fmt.Sprintf("%v", this.PageLimit) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRspItem) String() string { + if this == nil { + return "nil" + } + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "ztna.StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&ObjectListRspItem{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ObjectListRspItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ObjectListRspItem", "ObjectListRspItem", 1) + "," + } + repeatedStringForItems += "}" + s := strings.Join([]string{`&ObjectListRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `Uids:` + fmt.Sprintf("%v", this.Uids) + `,`, + `Items:` + repeatedStringForItems + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ListMetaType", "schema.ListMetaType", 1) + `,`, + `NextPage:` + fmt.Sprintf("%v", this.NextPage) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func valueToStringApi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ObjectCreateReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectCreateRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllBackrefs", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AllBackrefs = bool(v != 0) + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackrefTypes", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackrefTypes = append(m.BackrefTypes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10003: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntBackrefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntBackrefs = append(m.EntBackrefs, &types.Any{}) + if err := m.EntBackrefs[len(m.EntBackrefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &ztna.StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TenantFilter = append(m.TenantFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NamespaceFilter = append(m.NamespaceFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10004: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResourceVersion = bool(v != 0) + case 10005: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + case 10006: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PageStart", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PageStart = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10007: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PageLimit", wireType) + } + m.PageLimit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PageLimit |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRspItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRspItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRspItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &ztna.StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uids", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uids = append(m.Uids, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ObjectListRspItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ListMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NextPage", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NextPage = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipApi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthApi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupApi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthApi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthApi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowApi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupApi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna/crudapi/api.pb.gw.go b/pbgo/extschema/schema/ztna/crudapi/api.pb.gw.go new file mode 100644 index 000000000..eed16286e --- /dev/null +++ b/pbgo/extschema/schema/ztna/crudapi/api.pb.gw.go @@ -0,0 +1,1101 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/ztna/crudapi/api.proto + +/* +Package crudapi is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package crudapi + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_1 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_1 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_ListStream_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_ListStream_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (API_ListStreamClient, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_ListStream_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.ListStream(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_ListStream_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_ListStream_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.ztna", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Create_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.ztna", "introspect", "write", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.ztna", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.ztna", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.ztna", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.ztna", "introspect", "read", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.ztna", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.ztna", "introspect", "read", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_ListStream_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"ves.io.schema.ztna", "Objects", "stream"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.ztna", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.ztna", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Create_1 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Replace_1 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_Get_1 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_List_1 = runtime.ForwardResponseMessage + + forward_API_ListStream_0 = runtime.ForwardResponseStream + + forward_API_Delete_0 = runtime.ForwardResponseMessage + + forward_API_Delete_1 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/ztna/crudapi/api.vesapi.go b/pbgo/extschema/schema/ztna/crudapi/api.vesapi.go new file mode 100644 index 000000000..80faa0edc --- /dev/null +++ b/pbgo/extschema/schema/ztna/crudapi/api.vesapi.go @@ -0,0 +1,4159 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// augment methods on ObjectReq from api.pb.go + +// EntryConverter +func (r *ObjectCreateReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectCreateReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectCreateReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// EntryConverter +func (r *ObjectReplaceReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectReplaceReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectReplaceReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// CLIENT side + +func NewObjectCreateReq(e db.Entry) (*ObjectCreateReq, error) { + r := &ObjectCreateReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewObjectReplaceReq(e db.Entry) (*ObjectReplaceReq, error) { + r := &ObjectReplaceReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + uid, err := e.Key() + if err != nil { + // See if uid can be got from Metadata.Uid + obj := e.(*object.DBObject) + uid = obj.GetMetadata().GetUid() + + } + r.ObjectUid = uid + return r, nil +} + +func NewObjectGetReq(uid string, opts ...server.CRUDCallOpt) *ObjectGetReq { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + req := &ObjectGetReq{ObjectUid: uid, AllBackrefs: ccOpts.AllBR, BackrefTypes: ccOpts.TypesBR} + req.IncludeReferredId = ccOpts.IncludeReferredID + return req +} + +func newObjectListReqFrom(cco *server.CrudCallOpts) (*ObjectListReq, error) { + r := &ObjectListReq{ + TenantFilter: cco.TenantFilter, + NamespaceFilter: cco.NamespaceFilter, + ReportFields: cco.ReportFields, + IncludeReferredId: cco.IncludeReferredID, + } + switch len(cco.LabelFilter) { + case 0: + case 1: + r.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + if cco.OutResourceVersion != nil { + r.ResourceVersion = true + } + if cco.PageStart != "" { + r.PageStart = cco.PageStart + } + if cco.PageLimit != 0 { + r.PageLimit = cco.PageLimit + } + return r, nil +} + +func NewObjectDeleteReq(uid string) *ObjectDeleteReq { + return &ObjectDeleteReq{ObjectUid: uid} +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Getting from grpcClient") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp == nil { + return nil, errors.ErrOrNil(merr) + } + respDetail := server.GetResponse{} + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + stream, err := c.grpcClient.ListStream(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Listing with grpc client") + } + lc := &crudAPIGrpcListStreamClient{stream} + return lc, nil + +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req := NewObjectDeleteReq(key) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +type crudAPIGrpcListStreamClient struct { + stream API_ListStreamClient +} + +func (lc *crudAPIGrpcListStreamClient) RecvIDs() ([]string, error) { + idSet := []string{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return idSet, err + } + for _, li := range rsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err +} + +func (lc *crudAPIGrpcListStreamClient) RecvItems() ([]server.ListItem, error) { + sliSet := []server.ListItem{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return sliSet, err + } + for _, li := range rsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return nil, fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return nil, fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + hReq, err := http.NewRequest(http.MethodPost, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &ObjectCreateRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + o := object.NewDBObject(nil) + rspo.ToObject(o) + return o, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + rReq, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var objUID string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling ReplaceJSONReq") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["uid"].(string); ok { + objUID = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.uid'", jsn) + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, objUID) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + + rspo := &ObjectReplaceRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, req.ObjectUid) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &ObjectGetRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + o := object.NewDBObject(nil) + gRsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + for _, fVal := range cco.TenantFilter { + q.Add("tenant_filter", fVal) + } + for _, fVal := range cco.NamespaceFilter { + q.Add("namespace_filter", fVal) + } + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + + if cco.IncludeReferredID { + q.Add("include_referred_id", "true") + } + + if cco.OutResourceVersion != nil { + q.Add("resource_version", "true") + } + if cco.PageStart != "" { + q.Add("page_start", cco.PageStart) + } + if cco.PageLimit != 0 { + q.Add("page_limit", fmt.Sprintf("%d", cco.PageLimit)) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ObjectListRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rspo.GetNextPage() + } + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq := NewObjectDeleteReq(key) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, dReq.ObjectUid) + + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + rspo := &ObjectDeleteRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.crudapi.API.Create") + return oah.Create(ctx, req) +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.crudapi.API.Replace") + return oah.Replace(ctx, req) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.crudapi.API.Get") + return oah.Get(ctx, req) +} + +func (c *APIInprocClient) List(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.crudapi.API.List") + return oah.List(ctx, req) +} + +func (c *APIInprocClient) ListStream(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + return nil, fmt.Errorf("ListStream Not implemented") +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.crudapi.API.Delete") + return oah.Delete(ctx, req) +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + rsp, err := c.cl.Create(ctx, req) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req := NewObjectGetReq(key, opts...) + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + rsp, err := c.cl.List(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewObjectDeleteReq(key) + rsp, err := c.cl.Delete(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.ztna.crudapi.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.ztna.crudapi.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.crudapi.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private create request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna.crudapi.API.Create"), zap.Error(err)) + } + } + } + obj := object.NewDBObject(nil) + req.ToObject(obj) + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Create")).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Create with NewObjectCreateRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + return nil, fmt.Errorf("Nil spec in Replace Request") + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.crudapi.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private replace request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna.crudapi.API.Replace"), zap.Error(err)) + } + } + } + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Replace")).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Replace with NewObjectReplaceRsp").Error()) + } + return rsp, nil + +} + +func (s *APISrv) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.crudapi.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private get request") + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceGetRequest{IsPublic: false, UID: key, AllBackRefs: req.AllBackrefs, BackRefTypes: req.BackrefTypes} + rsrcReq.OmitReferredID = !req.IncludeReferredId + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Get")).Err() + } + rsp, err := NewObjectGetRsp(req, rsrcRsp) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Get with NewObjectGetRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.crudapi.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private list request") + } + } + } + var merr error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: false, + GetResourceVersion: req.ResourceVersion, + OmitReferredID: !req.IncludeReferredId, + PageStart: req.PageStart, + PageLimit: req.PageLimit, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "List")) + } + rsp, err := NewObjectListRsp(req, rsrcRsp.Items) + if err != nil { + merr = multierror.Append(merr, err) + } + rsp.Metadata.ResourceVersion = rsrcRsp.ResourceVersion + rsp.NextPage = rsrcRsp.NextPage + return rsp, merr +} + +func (s *APISrv) ListStream(req *ObjectListReq, stream API_ListStreamServer) error { + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: true, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(stream.Context(), rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListStream")) + } + streamSvr := &crudAPIListStreamServer{stream} + for item := range rsrcRsp.ItemsCh { + if err := streamSvr.SendResource(req, item); err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "Stream-Send")) + continue + } + } + return errors.ErrOrNil(merr) +} + +func (s *APISrv) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.crudapi.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private delete request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna.crudapi.API.Delete"), zap.Error(err)) + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceDeleteRequest{Key: key} + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Delete")).Err() + } + return &ObjectDeleteRsp{}, nil +} + +// Assert that APISrv implements both the generated gRPC APIServer interface and the +// stdlib CRUDServer interface +var ( + _ APIServer = &APISrv{} +) + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.crudapi.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.crudapi.API", strings.Join(sl[:len(sl)-1], ".")) +} + +// implements both stdlib.server.ListStreamServer and API_ListStreamServer +type crudAPIListStreamServer struct { + stream API_ListStreamServer +} + +func (lc *crudAPIListStreamServer) Context() context.Context { + return lc.stream.Context() +} + +func (lc *crudAPIListStreamServer) SendResource(r *ObjectListReq, item *server.ResourceListResponseItem) error { + lRsp, err := NewObjectListRsp(r, []*server.ResourceListResponseItem{item}) + if err != nil { + return errors.Wrap(err, "SendResource with NewObjectListRsp") + } + if err := lc.Send(lRsp); err != nil { + return errors.Wrap(err, "ListStreamServer.SendResource()") + } + return nil +} + +func (lc *crudAPIListStreamServer) Send(o *ObjectListRsp) error { + if err := lc.stream.Send(o); err != nil { + return errors.Wrap(err, "ListStreamServer.Send()") + } + return nil +} + +// Implement GetReq interface +func (r *ObjectGetReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectGetReq) GetBackrefParam() (bool, []string) { + return r.AllBackrefs, r.BackrefTypes +} + +// Implement DeleteReq interface +func (r *ObjectDeleteReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectCreateRsp) Key() string { + return r.ObjectUid +} + +func (r *ObjectGetRsp) GetBackrefs(ef db.NewEntryFunc) ([]db.Entry, error) { + brEnts := []db.Entry{} + bRefs := r.GetEntBackrefs() + for _, br := range bRefs { + // convert schema.ves.io/ves.io.examplesvc.objectone.Object to ves.io.examplesvc.objectone.Object + sl := strings.Split(br.TypeUrl, "/") + ot := sl[len(sl)-1] + ent, err := ef(ot, db.OpWithSerializedBytes(br.Value)) + if err != nil { + return nil, errors.Wrap(err, "NewEntry") + } + brEnts = append(brEnts, ent) + } + + return brEnts, nil +} + +// Implement server.ListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjUid() string { + return l.ObjectUid +} + +// Implement server.SROListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ObjectListRspItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ObjectListRspItem) GetObjName() string { + return l.Name +} + +func (l *ObjectListRspItem) GetObjLabels() map[string]string { + return l.Labels +} + +// NewRsp, NewRspFromJSON +func NewObjectCreateRsp(e db.Entry) (*ObjectCreateRsp, error) { + rspo := &ObjectCreateRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectCreateRsp") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "CreateRsp getting Key()") + } + rspo.ObjectUid = key + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectReplaceRsp(e db.Entry) (*ObjectReplaceRsp, error) { + rspo := &ObjectReplaceRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectReplaceRsp") + } + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectGetRsp(r *ObjectGetReq, rsrcRsp *server.ResourceGetResponse) (*ObjectGetRsp, error) { + rspo := &ObjectGetRsp{} + e := rsrcRsp.Entry + brEntries := rsrcRsp.BackRefs + if e == nil { + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *object.DBObject in NewObjectGetRsp") + } + rspo.ResourceVersion = rsrcRsp.ResourceVersion + rspo.FromObject(o) + // Backref + getBackrefsFunc := func() ([]*google_protobuf.Any, error) { + var merr *multierror.Error + var entBackrefs []*google_protobuf.Any + for _, brEnt := range brEntries { + brSer, err := brEnt.MarshalBytes() + if err != nil { + merr = multierror.Append(merr, err) + continue + } + entBackrefs = append(entBackrefs, &google_protobuf.Any{TypeUrl: "schema.ves.io/" + brEnt.Type(), Value: brSer}) + } + return entBackrefs, errors.ErrOrNil(merr) + } + entBackrefs, err := getBackrefsFunc() + if err != nil { + return nil, err + } + rspo.EntBackrefs = entBackrefs + d, err := o.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetRsp") + } + statusObjs, err := object.FindObjectStatus(context.Background(), d, o.GetObjUid()) + if err != nil { + return nil, errors.Wrap(err, "GetRsp") + } + rspo.Status = statusObjs + return rspo, nil +} + +func NewObjectListRsp(req *ObjectListReq, rsrcRspItems []*server.ResourceListResponseItem) (*ObjectListRsp, error) { + if req == nil { + return nil, fmt.Errorf("Nil ObjectListReq") + } + var errs error + o := &ObjectListRsp{} + o.Metadata = &ves_io_schema.ListMetaType{} + o.Uids = []string{} + o.Items = []*ObjectListRspItem{} + for _, rsrcItem := range rsrcRspItems { + if rsrcItem == nil { + errs = multierror.Append(errs, fmt.Errorf("ResourceListResponseItem is nil")) + continue + } + e := rsrcItem.Entry + dbObj, ok := e.(*object.DBObject) + if !ok { + errs = multierror.Append(errs, fmt.Errorf("Expected %T, got %T: %v", &object.DBObject{}, e, e)) + continue + } + key, err := dbObj.Key() + if err != nil { + errs = multierror.Append(errs, errors.WithMessagef(err, "Key() %v FAILED", dbObj)) + continue + } + + tenant := dbObj.GetSystemMetadata().GetTenant() + namespace := dbObj.GetMetadata().GetNamespace() + name := dbObj.GetMetadata().GetName() + labels := dbObj.GetMetadata().GetLabels() + + // TODO: DEPRECATE setting to o.Uids + o.Uids = append(o.Uids, key) + + item := &ObjectListRspItem{ + ObjectUid: key, + Tenant: tenant, + Namespace: namespace, + Name: name, + Labels: labels, + } + if len(req.ReportFields) > 0 { + item.FromObject(e) + } + o.Items = append(o.Items, item) + } + return o, errs +} + +func NewObjectDeleteRsp(ec ErrorCode) (*ObjectDeleteRsp, error) { + return &ObjectDeleteRsp{Err: ec}, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "ves.io/schema/ztna/crudapi/api.proto", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/ves.io.schema.ztna/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.ztna.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Get" + }, + "delete": { + "operationId": "ves.io.schema.ztna.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.ztna.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna/Objects": { + "get": { + "operationId": "ves.io.schema.ztna.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.List" + }, + "post": { + "operationId": "ves.io.schema.ztna.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna/Objects/stream": { + "get": { + "operationId": "ves.io.schema.ztna.crudapi.API.ListStream", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "schema": { + "$ref": "#/x-stream-definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-liststream" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.ListStream" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna/introspect/read/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.ztna.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Get" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna/introspect/read/Objects": { + "get": { + "operationId": "ves.io.schema.ztna.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.List" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna/introspect/write/Object/{object_uid}": { + "delete": { + "operationId": "ves.io.schema.ztna.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.ztna.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna/introspect/write/Objects": { + "post": { + "operationId": "ves.io.schema.ztna.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna", + "x-ves-object-type": "ves.io.schema.ztna.Object", + "x-ves-proto-service": "ves.io.schema.ztna.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + } + }, + "definitions": { + "crudapiObjectCreateReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectCreateReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/ztnaSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectCreateRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectCreateRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztnacrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztnaSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectDeleteRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectDeleteRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztnacrudapiErrorCode" + } + } + }, + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "err": { + "$ref": "#/definitions/ztnacrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztnaSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/ztnaStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectListRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectListRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztnacrudapiErrorCode" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } + }, + "metadata": { + "$ref": "#/definitions/schemaListMetaType" + }, + "next_page": { + "type": "string", + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "crudapiObjectListRspItem": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectListRspItem", + "properties": { + "labels": { + "type": "object" + }, + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztnaSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/ztnaStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" + } + } + }, + "crudapiObjectReplaceReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectReplaceReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztnaSpecType" + } + } + }, + "crudapiObjectReplaceRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.crudapi.ObjectReplaceRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztnacrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/ztnaSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "runtimeStreamError": { + "type": "object", + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "grpc_code": { + "type": "integer", + "format": "int32" + }, + "http_code": { + "type": "integer", + "format": "int32" + }, + "http_status": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "schemaBlindfoldSecretInfoType": { + "type": "object", + "description": "BlindfoldSecretInfoType specifies information about the Secret managed by F5XC Secret Management", + "title": "BlindfoldSecretInfoType", + "x-displayname": "Blindfold Secret", + "x-ves-displayorder": "3,1,2", + "x-ves-proto-message": "ves.io.schema.BlindfoldSecretInfoType", + "properties": { + "decryption_provider": { + "type": "string", + "description": " Name of the Secret Management Access object that contains information about the backend Secret Management service.\n\nExample: - \"value\"-", + "title": "Decryption Provider", + "x-displayname": "Decryption Provider", + "x-ves-example": "value" + }, + "location": { + "type": "string", + "description": " Location is the uri_ref. It could be in url format for string:///\n Or it could be a path if the store provider is an http/https location\n\nExample: - \"string:///U2VjcmV0SW5mb3JtYXRpb24=\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "Location", + "x-displayname": "Location", + "x-ves-example": "string:///U2VjcmV0SW5mb3JtYXRpb24=", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.uri_ref": "true" + } + }, + "store_provider": { + "type": "string", + "description": " Name of the Secret Management Access object that contains information about the store to get encrypted bytes\n This field needs to be provided only if the url scheme is not string:///\n\nExample: - \"value\"-", + "title": "Store Provider", + "x-displayname": "Store Provider", + "x-ves-example": "value" + } + } + }, + "schemaClearSecretInfoType": { + "type": "object", + "description": "ClearSecretInfoType specifies information about the Secret that is not encrypted.", + "title": "ClearSecretInfoType", + "x-displayname": "In-Clear Secret", + "x-ves-displayorder": "2,1", + "x-ves-proto-message": "ves.io.schema.ClearSecretInfoType", + "properties": { + "provider": { + "type": "string", + "description": " Name of the Secret Management Access object that contains information about the store to get encrypted bytes\n This field needs to be provided only if the url scheme is not string:///\n\nExample: - \"box-provider\"-", + "title": "Provider", + "x-displayname": "Provider", + "x-ves-example": "box-provider" + }, + "url": { + "type": "string", + "description": " URL of the secret. Currently supported URL schemes is string:///.\n For string:/// scheme, Secret needs to be encoded Base64 format.\n When asked for this secret, caller will get Secret bytes after Base64 decoding.\n\nExample: - \"string:///U2VjcmV0SW5mb3JtYXRpb24=\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 131072\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "URL", + "maxLength": 131072, + "x-displayname": "URL", + "x-ves-example": "string:///U2VjcmV0SW5mb3JtYXRpb24=", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "131072", + "ves.io.schema.rules.string.uri_ref": "true" + } + } + } + }, + "schemaConditionType": { + "type": "object", + "description": "Conditions are used in the object status to describe the current state of the\nobject, e.g. Ready, Succeeded, etc.", + "title": "ConditionType", + "x-displayname": "Status Condition", + "x-ves-proto-message": "ves.io.schema.ConditionType", + "properties": { + "hostname": { + "type": "string", + "description": " Hostname of the instance of the site that sent the status", + "title": "hostname", + "x-displayname": "Hostname" + }, + "last_update_time": { + "type": "string", + "description": " Last time the condition was updated", + "title": "last_update_time", + "format": "date-time", + "x-displayname": "Last Updated" + }, + "reason": { + "type": "string", + "description": " x-reason: \"Insufficient memory in data plane\"\n A human readable string explaining the reason for reaching this condition\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaEmpty": { + "type": "object", + "description": "x-displayName: \"Empty\"\nThis can be used for messages where no values are needed", + "title": "Empty" + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaIpAddressType": { + "type": "object", + "description": "x-displayName: \"IP Address\"\nIP Address used to specify an IPv4 or IPv6 address", + "title": "IP Address", + "properties": { + "ipv4": { + "description": "x-displayName: \"IPv4 Address\"\nIPv4 Address", + "title": "IPv4 Address", + "$ref": "#/definitions/schemaIpv4AddressType" + }, + "ipv6": { + "description": "x-displayName: \"IPv6 Address\"\nIPv6 Address", + "title": "IPv6 ADDRESS", + "$ref": "#/definitions/schemaIpv6AddressType" + } + } + }, + "schemaIpv4AddressType": { + "type": "object", + "description": "x-displayName: \"IPv4 Address\"\nIPv4 Address in dot-decimal notation", + "title": "IPv4 Address", + "properties": { + "addr": { + "type": "string", + "description": "x-displayName: \"IPv4 Address\"\nx-example: \"192.168.1.1\"\nIPv4 Address in string form with dot-decimal notation", + "title": "IPv4 Address" + } + } + }, + "schemaIpv6AddressType": { + "type": "object", + "description": "x-displayName: \"IPv6 Address\"\nIPv6 Address specified as hexadecimal numbers separated by ':'", + "title": "IPv6 Address", + "properties": { + "addr": { + "type": "string", + "description": "x-displayName: \"IPv6 Address\"\nx-example: \"2001:db8:0:0:0:0:2:1\"\nIPv6 Address in form of string. IPv6 address must be specified as hexadecimal numbers separated by ':'\nThe address can be compacted by suppressing zeros\ne.g. '2001:db8:0:0:0:0:2:1' becomes '2001:db8::2:1' or '2001:db8:0:0:0:2:0:0' becomes '2001:db8::2::'", + "title": "IPv6 Address" + } + } + }, + "schemaListMetaType": { + "type": "object", + "description": "ListMetaType is metadata that all lists must have.", + "title": "ListMetaType", + "x-displayname": "List Metadata", + "x-ves-proto-message": "ves.io.schema.ListMetaType" + }, + "schemaObjectMetaType": { + "type": "object", + "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "ObjectMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaSecretEncodingType": { + "type": "string", + "description": "x-displayName: \"Secret Encoding\"\nSecretEncodingType defines the encoding type of the secret before handled by the Secret Management Service.\n\n - EncodingNone: x-displayName: \"None\"\nNo Encoding\n - EncodingBase64: Base64\n\nx-displayName: \"Base64\"\nBase64 encoding", + "title": "SecretEncodingType", + "enum": [ + "EncodingNone", + "EncodingBase64" + ], + "default": "EncodingNone" + }, + "schemaSecretType": { + "type": "object", + "description": "SecretType is used in an object to indicate a sensitive/confidential field", + "title": "SecretType", + "x-displayname": "Secret", + "x-ves-oneof-field-secret_info_oneof": "[\"blindfold_secret_info\",\"clear_secret_info\"]", + "x-ves-proto-message": "ves.io.schema.SecretType", + "properties": { + "blindfold_secret_info": { + "description": "Exclusive with [clear_secret_info]\n Blindfold Secret is used for the secrets managed by F5XC Secret Management Service", + "title": "Blindfold Secret", + "$ref": "#/definitions/schemaBlindfoldSecretInfoType", + "x-displayname": "Blindfold Secret" + }, + "clear_secret_info": { + "description": "Exclusive with [blindfold_secret_info]\n Clear Secret is used for the secrets that are not encrypted", + "title": "Clear Secret", + "$ref": "#/definitions/schemaClearSecretInfoType", + "x-displayname": "Clear Secret" + } + } + }, + "schemaStatusMetaType": { + "type": "object", + "description": "StatusMetaType is metadata that all status must have.", + "title": "StatusMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.StatusMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " creation_timestamp is when the status object was created. It is used to find/tie-break\n for latest status object from same origin", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " Class of creator which created this StatusObject. This will be service's DNS FQDN.\n This will be set by the system based on client certificate information.\n\nExample: - \"ver.re1.int.ves.io\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "ver.re1.int.ves.io" + }, + "creator_id": { + "type": "string", + "description": " ID of creator which created this StatusObject. This will be a concrete identifier for service (e.g.\n identifying the environment also). This will be set by the system based on client certificate\n information\n\nExample: - \"ver-instance-1\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "ver-instance-1" + }, + "publish": { + "description": " Decides wether this status object will be propagated to user.", + "title": "publish", + "$ref": "#/definitions/schemaStatusPublishType", + "x-displayname": "Publish" + }, + "status_id": { + "type": "string", + "description": " status_id is a field used by the generator to distinguish (if necessary) between two status\n objects for the same config object from the same site and same service and potentially same\n daemon(creator-id)", + "title": "status_id", + "x-displayname": "Status ID" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for a StatusObject.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Origin of this status exchanged by VTRP.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaStatusPublishType": { + "type": "string", + "description": "StatusPublishType is all possible publish operations on a StatusObject\n\n - STATUS_DO_NOT_PUBLISH: Do Not Publish\n\nDo not propagate this status to user. This could be because status is only informational\n - STATUS_PUBLISH: Publish\n\nPropagate this status up to user as it might be actionable", + "title": "StatusPublishType", + "enum": [ + "STATUS_DO_NOT_PUBLISH", + "STATUS_PUBLISH" + ], + "default": "STATUS_DO_NOT_PUBLISH", + "x-displayname": "Status Publish Type", + "x-ves-proto-enum": "ves.io.schema.StatusPublishType" + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectMetaType": { + "type": "object", + "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "value" + }, + "creator_cookie": { + "type": "string", + "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", + "title": "creator_cookie", + "x-displayname": "Creator Cookie", + "x-ves-example": "value" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "value" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "namespace": { + "type": "array", + "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "namespace", + "maxItems": 1, + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Namespace Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "sre_disable": { + "type": "boolean", + "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", + "title": "sre_disable", + "format": "boolean", + "x-displayname": "SRE Disable", + "x-ves-example": "true" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "trace_info": { + "type": "string", + "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", + "title": "trace_info", + "x-displayname": "Trace Info", + "x-ves-example": "value" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Indicate origin of this object.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaVaultSecretInfoType": { + "type": "object", + "description": "x-displayName: \"Vault Secret\"\nVaultSecretInfoType specifies information about the Secret managed by Hashicorp Vault.", + "title": "VaultSecretInfoType", + "properties": { + "key": { + "type": "string", + "description": "x-displayName: \"Key\"\nx-example: \"key_pem\"\nKey of the individual secret. Vault Secrets are stored as key-value pair.\nIf user is only interested in one value from the map, this field should be set to the corresponding key.\nIf not provided entire secret will be returned.", + "title": "Key" + }, + "location": { + "type": "string", + "description": "x-displayName: \"Location\"\nx-required\nx-example: \"v1/data/vhost_key\"\nPath to secret in Vault.", + "title": "Location" + }, + "provider": { + "type": "string", + "description": "x-displayName: \"Provider\"\nx-required\nx-example: \"vault-vh-provider\"\nName of the Secret Management Access object that contains information about the backend Vault.", + "title": "Provider" + }, + "secret_encoding": { + "description": "x-displayName: \"Secret Encoding\"\nThis field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault.", + "title": "secret_encoding", + "$ref": "#/definitions/schemaSecretEncodingType" + }, + "version": { + "type": "integer", + "description": "x-displayName: \"Version\"\nx-example: \"1\"\nVersion of the secret to be fetched. As vault secrets are versioned, user can specify this field to fetch specific version.\nIf not provided latest version will be returned.", + "title": "Version", + "format": "int64" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "schemaWingmanSecretInfoType": { + "type": "object", + "description": "x-displayName: \"Wingman Secret\"\nWingmanSecretInfoType specifies the handle to the wingman secret", + "title": "WingmanSecretInfoType", + "properties": { + "name": { + "type": "string", + "description": "x-displayName: \"Name\"\nx-required\nx-example: \"ChargeBack-API-Key\"\nName of the secret.", + "title": "Name" + } + } + }, + "schemaztnaAction": { + "type": "string", + "description": "x-displayName: \"Action\"\nThis sends allow/reject action in entry configuration of per session policy\n\n - reject: Reject \n\nx-displayName: \"Reject\"\nReject will be choosen as action\n - allow: allow\n\nx-displayName: \"Allow\"\nAllow will be choosen as action .", + "title": "Ztna Policy Action", + "enum": [ + "reject", + "allow" + ], + "default": "reject" + }, + "ztnaAclResourceEntry": { + "type": "object", + "description": "x-displayName: \"Acl Resource Entry\"\n\nList of configuration for acl resource type.", + "title": "AclResourceEntry", + "properties": { + "entries": { + "type": "array", + "description": "x-displayName: \"Entries\"\n\nEntries Config for Acl Resource", + "title": "entries", + "items": { + "$ref": "#/definitions/ztnaEntry" + } + } + } + }, + "ztnaActionType": { + "type": "object", + "description": "\nChoose the next action as logon/active dir auth/ active dir query/resource assign.", + "title": "Action Type", + "x-displayname": "Action Type", + "x-ves-oneof-field-item_type": "[\"active_directory_auth\",\"active_directory_query\",\"log_on\",\"resource_assign\"]", + "x-ves-proto-message": "ves.io.schema.ztna.ActionType", + "properties": { + "active_directory_auth": { + "description": "Exclusive with [active_directory_query log_on resource_assign]\n\n Action type is active Directory auth.", + "title": "Active Directory Auth", + "$ref": "#/definitions/ztnaActiveDirectoryAuth", + "x-displayname": "Active Directory Auth" + }, + "active_directory_query": { + "description": "Exclusive with [active_directory_auth log_on resource_assign]\n\n Action type is active Directory query.", + "title": "Active Directory Query", + "$ref": "#/definitions/ztnaActiveDirectoryQuery", + "x-displayname": "Active Directory Query" + }, + "log_on": { + "description": "Exclusive with [active_directory_auth active_directory_query resource_assign]\n\n Action type is logon ", + "title": "Logon", + "$ref": "#/definitions/ztnaLogonItemType", + "x-displayname": "Log On" + }, + "resource_assign": { + "description": "Exclusive with [active_directory_auth active_directory_query log_on]\n\n Action type is resource assign.", + "title": "Resource Assign", + "$ref": "#/definitions/ztnaResourceAssign", + "x-displayname": "Resource Assign" + } + } + }, + "ztnaActiveDirectoryAuth": { + "type": "object", + "description": "\nList of configuration of Active directory Auth.", + "title": "Active Directory Auth", + "x-displayname": "AAA Active Directory Auth", + "x-ves-proto-message": "ves.io.schema.ztna.ActiveDirectoryAuth", + "properties": { + "active_directory_query": { + "type": "array", + "description": " Send active directory query configuration on success of allow directory auth.", + "title": "AAA Active Directory success", + "items": { + "$ref": "#/definitions/ztnaActiveDirectoryQuery" + }, + "x-displayname": "AAA Active Directory Success" + }, + "deny_name": { + "type": "string", + "description": " Send deny as next item in case it fails to find the query.\n\nExample: - \"Deny\"-", + "title": "AAA Active Directory Failure", + "x-displayname": "AAA Active Directory Failure", + "x-ves-example": "Deny" + }, + "expression": { + "type": "string", + "description": " Expression string to filter the Directory query.\n\nExample: - \"expr {[mcget {session.ad.last.authresult}] == 1}\"-", + "title": "Expression", + "x-displayname": "Expression", + "x-ves-example": "expr {[mcget {session.ad.last.authresult}] == 1}" + }, + "server": { + "type": "string", + "description": " Server name on which log on is success.\n\nExample: - \"ad_auth_server\"-", + "title": "Server Name", + "x-displayname": "Server", + "x-ves-example": "ad_auth_server" + } + } + }, + "ztnaActiveDirectoryQuery": { + "type": "object", + "description": "\nSend active directory query configuration on success of active directory Auth.", + "title": "Active Directory Query", + "x-displayname": "Active Directory Query", + "x-ves-proto-message": "ves.io.schema.ztna.ActiveDirectoryQuery", + "properties": { + "deny_name": { + "type": "string", + "description": " Send deny as next item if query gets failed.\n\nExample: - \"Deny\"-", + "title": "Active Directory Query Failure", + "x-displayname": "AAA Active Directory Query Failure", + "x-ves-example": "Deny" + }, + "filter": { + "type": "string", + "description": " Filter setting for filtering out the assigned resources \n\nExample: - \"(CN=%{session.logon.last.username})\"-", + "title": "Filter", + "x-displayname": "Filter", + "x-ves-example": "(CN=%{session.logon.last.username})" + }, + "resource_assign": { + "description": "\n List of all assigned resources list ", + "title": "resource assigned", + "$ref": "#/definitions/ztnaResourceAssign", + "x-displayname": "Resource Assign" + }, + "server": { + "type": "string", + "description": " Name of the server which gets assigned.\n\nExample: - \"ad_auth_server\"-", + "title": "Server Name", + "x-displayname": "Server", + "x-ves-example": "ad_auth_server" + } + } + }, + "ztnaAllowResourceAssign": { + "type": "object", + "description": "Configuration of assigned resource after success of directory query", + "title": "Resource Assign\n \nx-displayName: \"Resource Assign\"", + "x-displayname": "Resource Assign", + "x-ves-proto-message": "ves.io.schema.ztna.AllowResourceAssign", + "properties": { + "allow_name": { + "type": "string", + "description": " Send allow as next item in case of success\n\nExample: - \"Allow\"-", + "title": "Resource Assign Success", + "x-displayname": "Resource Assign Success Configuration", + "x-ves-example": "Allow" + }, + "deny_name": { + "type": "string", + "description": " Send deny as next item in case of failure\n\nExample: - \"Deny\"-", + "title": "Resource Assign Failure", + "x-displayname": "Resource Assign Failure Configuration", + "x-ves-example": "Deny" + }, + "rules_resource_assign": { + "type": "array", + "description": " Rules for assigning the resources ", + "title": "Rules", + "items": { + "$ref": "#/definitions/ztnaRules" + }, + "x-displayname": "Rules" + }, + "server": { + "type": "string", + "description": " Server name for assigning the resources\n\nExample: - \"ad_auth_server\"-", + "title": "Server Name\n \nx-displayName: \"Server\"\nx-example: \"ad_auth_server\"\nServer name for assigning the resources", + "x-displayname": "Server", + "x-ves-example": "ad_auth_server" + } + } + }, + "ztnaConnectivity": { + "type": "string", + "description": "\nList of Ztna Connectivity policy tunnel type\n\n - PPP: PPP\n\n\nPPP tunnel type for connectivity policy.\n - DTLS: DTLS\n\n\nTunnel Type is DTLS Tunnel for connectivity policy", + "title": "Ztna Connectivity Policy", + "enum": [ + "PPP", + "DTLS" + ], + "default": "PPP", + "x-displayname": "Ztna Connectivity Policy", + "x-ves-proto-enum": "ves.io.schema.ztna.Connectivity" + }, + "ztnaConnectivityPolicyType": { + "type": "object", + "description": "List of Ztna Connectivity Policy type.", + "title": "Ztna ConnectivityPolicyType", + "x-displayname": "Ztna Connectivity Policy Type", + "x-ves-proto-message": "ves.io.schema.ztna.ConnectivityPolicyType", + "properties": { + "connectivities": { + "description": " Connectivity policy configuration. Select connectivity policy as PPP/DTLS", + "title": "Connectivities", + "$ref": "#/definitions/ztnaConnectivity", + "x-displayname": "Tunnel for Connectivities" + }, + "connectivity_policy_name": { + "type": "string", + "description": " Name of connectivity policy", + "title": "Name", + "x-displayname": "Name of Connectivity Policy" + } + } + }, + "ztnaCustmization": { + "type": "object", + "description": "\nUser name and password to log on", + "title": "Custmization", + "x-displayname": "Custmization", + "x-ves-proto-message": "ves.io.schema.ztna.Custmization", + "properties": { + "password": { + "description": "\n This field contains the secret password for log on.", + "title": "Secret Password", + "$ref": "#/definitions/schemaSecretType", + "x-displayname": "Secret Password" + }, + "user_name": { + "type": "string", + "description": "This contains the user name to log on.\n\nExample: - \"User Name\"-", + "title": "Username", + "x-displayname": "User Name", + "x-ves-example": "User Name" + } + } + }, + "ztnaEntry": { + "type": "object", + "description": "x-displayName: \"Entry\"\n\nList of entries for diferrent Acl resource type.", + "title": "Entry", + "properties": { + "action": { + "description": "x-displayName: \"Action\"\n\naction is either allow/reject for acl resource type", + "title": "action", + "$ref": "#/definitions/schemaztnaAction" + }, + "destination_end_port": { + "type": "integer", + "description": "x-displayName: \"destination End Port\"\n\nDestination End Port for acl resource type.", + "title": "dstEndPort", + "format": "int64" + }, + "destination_ip": { + "description": "x-displayName: \"Destination IP\"\n\nDestination IP address for the acl resource type.", + "title": "dstIp", + "$ref": "#/definitions/schemaIpAddressType" + }, + "destination_start_port": { + "type": "integer", + "description": "x-displayName: \"Destination Start Port\"\n\nDestination start port for acl resource type.", + "title": "dstStartPort", + "format": "int64" + } + } + }, + "ztnaExternalServers": { + "type": "object", + "description": "x-displayName: \"External Servers\"\n\nExternal server is list of server for ztna per session policy.", + "title": "Ztna Policy ExternalServers", + "properties": { + "admin_password": { + "description": "x-displayName: \"Admin Password\"\n\nSecret password credential used for external server", + "title": "Admin Password", + "$ref": "#/definitions/schemaSecretType" + }, + "admin_username": { + "type": "string", + "description": "x-displayName: \"Admin Name\"\nx-example: \"Admin\"\nCredentials used for external server", + "title": "adminName" + }, + "domain": { + "type": "string", + "description": "x-displayName: \"Domain\"\nx-example: \"apm.f5net.com\"\nDomain name for the external server", + "title": "domain" + }, + "server_type": { + "description": "x-displayName: \"Server Type\"\n\nserverType of External server", + "title": "serverType", + "$ref": "#/definitions/ztnaServerType" + } + } + }, + "ztnaGlobalSpecType": { + "type": "object", + "description": "Ztna Policy Configuration Spec", + "title": "Ztna Policy Configuration Spec", + "x-displayname": "Global Specification", + "x-ves-proto-message": "ves.io.schema.ztna.GlobalSpecType", + "properties": { + "connectivity": { + "description": " List of Connectivity Policy Type ", + "title": "ConnectivityPolicyType", + "$ref": "#/definitions/ztnaConnectivityPolicyType", + "x-displayname": "Connectivity Access Policy" + }, + "per_session": { + "description": " List of configuration for per session policy type.", + "title": "PerSessionPolicyType", + "$ref": "#/definitions/ztnaPerSessionPolicyType", + "x-displayname": "Session Policy Type" + } + } + }, + "ztnaLeasePoolMember": { + "type": "object", + "description": "x-displayName: \"Lease Pools Member\"\n\nThe lease pool member is pool member for per session policy.", + "title": "Ztna Policy LeasePoolsMembers", + "properties": { + "end_address": { + "description": "x-displayName: \"End Address\"\n\nEnd Address of Lease Pool member", + "title": "endaddress", + "$ref": "#/definitions/schemaIpAddressType" + }, + "start_address": { + "description": "x-displayName: \"Start Address\"\n\nstartAddress of Lease Pool member", + "title": "StartAddress", + "$ref": "#/definitions/schemaIpAddressType" + } + } + }, + "ztnaLogonItemType": { + "type": "object", + "description": "\nSend log on configuration as user name and password", + "title": "Log on as nextItem", + "x-displayname": "Log On Next Item", + "x-ves-proto-message": "ves.io.schema.ztna.LogonItemType", + "properties": { + "active_directory_auth": { + "type": "array", + "description": "\n After logon next item is to verify the group and directory.", + "title": "nextItem", + "items": { + "$ref": "#/definitions/ztnaActiveDirectoryAuth" + }, + "x-displayname": "AAA Active Directory Auth" + }, + "customization": { + "type": "array", + "description": "\n This contains language , username and secret to login", + "title": "Credentials", + "items": { + "$ref": "#/definitions/ztnaCustmization" + }, + "x-displayname": "Credentials" + } + } + }, + "ztnaPerSessionPolicyType": { + "type": "object", + "description": "List of Per Session Policy type.", + "title": "Ztna Per Session Type", + "x-displayname": "Session Policy Type", + "x-ves-proto-message": "ves.io.schema.ztna.PerSessionPolicyType", + "properties": { + "external_server": { + "type": "object", + "description": " List of configuration of external server \n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 256\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.max_pairs: 64\n", + "title": "ExternalServers", + "x-displayname": "External Servers", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64" + } + }, + "lease_pool_member": { + "type": "object", + "description": " List of Lease pool member for Session Policy\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 256\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.max_pairs: 64\n", + "title": "Lease Pool Member", + "x-displayname": "Lease Pool Member", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64" + } + }, + "per_session_policy_name": { + "type": "string", + "description": " This contains the name of session policy", + "title": "Name", + "x-displayname": "Session Policy Name" + }, + "resources": { + "type": "object", + "description": " List of the Policy of session type.\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 256\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.max_pairs: 64\n", + "title": "Session Policy configuration", + "x-displayname": "Resources", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64" + } + }, + "sequence_action": { + "description": " Choose the sequence action from Log On/AAA Directory Auth/\n Active Directory Query/Resource Assign ", + "title": "Sequence of Action", + "$ref": "#/definitions/ztnaSequenceAction", + "x-displayname": "Sequence Action" + } + } + }, + "ztnaResource": { + "type": "object", + "description": "x-displayName: \"Resources\"\n\nChoose the resource type for session policy type as WebTopFull/Acl/ConnectivityResource", + "title": "Resource for Per Session Policy", + "properties": { + "acl": { + "description": "x-displayName: \"Acl Resource Entry\"\n\nResource type is ACL.", + "title": "AclResourceEntry", + "$ref": "#/definitions/ztnaAclResourceEntry" + }, + "connectivity": { + "description": "x-displayName: \"Connectivity Resource Network Access\"\n\nResource type is connectivity .", + "title": "ConnectivityResourceNetworkAccess", + "$ref": "#/definitions/schemaEmpty" + }, + "web": { + "description": "x-displayName: \"Webtop Full Resource Type\"\n\nResource type is webtopfull.", + "title": "WebtopFullResourceType", + "$ref": "#/definitions/schemaEmpty" + } + } + }, + "ztnaResourceAssign": { + "type": "object", + "description": "\nList of all assigned resources.", + "title": "Resource Assign", + "x-displayname": "Resource Assign", + "x-ves-proto-message": "ves.io.schema.ztna.ResourceAssign", + "properties": { + "allow": { + "type": "array", + "description": "\n This sends resource assign configuration", + "title": "Resource Assign", + "items": { + "$ref": "#/definitions/ztnaAllowResourceAssign" + }, + "x-displayname": "Resource Assign Configuration" + } + } + }, + "ztnaRules": { + "type": "object", + "description": "\nSend all the configuration rules.", + "title": "Rules", + "x-displayname": "Rules", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.ztna.Rules", + "properties": { + "acls": { + "type": "array", + "description": " Put the list of all acls resource type name.\n\nExample: - \"acltest1\"-", + "title": "Acls", + "items": { + "type": "string" + }, + "x-displayname": "Acls", + "x-ves-example": "acltest1" + }, + "network_access_rule": { + "type": "array", + "description": " List of network access rules configuration\n\nExample: - \"cp-demo\"-", + "title": "Network access rules", + "items": { + "type": "string" + }, + "x-displayname": "Network Access Rules", + "x-ves-example": "cp-demo" + }, + "web_top_name": { + "type": "string", + "description": " Put the name of webtopfull resource type\n\nExample: - \"webtop1\"-", + "title": "Web Top Name", + "x-displayname": "Web Top Name", + "x-ves-example": "webtop1" + } + } + }, + "ztnaSequenceAction": { + "type": "object", + "description": "\nThis configuration is used to specify the sequence of action \nfor connectivity access Policy", + "title": "sequenceAction", + "x-displayname": "SequenceAction", + "x-ves-proto-message": "ves.io.schema.ztna.SequenceAction", + "properties": { + "connectivity_access_policy_name": { + "type": "string", + "description": " Name of connectivity policy \n\nExample: - \"connectivity_demo\"-", + "title": "connectivityAccessPolicyName", + "x-displayname": "Connectivity AccessPolicy Name", + "x-ves-example": "connectivity_demo" + }, + "next_action": { + "description": " Next Action could be any one from the Log On/AAA Directory Auth/\n Active Directory Query/Resource Assign ", + "title": "Next Item", + "$ref": "#/definitions/ztnaActionType", + "x-displayname": "Next Item " + } + } + }, + "ztnaServerType": { + "type": "string", + "description": "x-displayName: \"Server Type\"\n\nExternal server for using the per session policy\n\n - ActiveDirectory: ActiveDirectory\n\nx-displayName: \"ActiveDirectory\"\n\nActiveDirectory Server Type\n - RadiusServer: RadiusServer\n\nx-displayName: \"RadiusServer\"\n\nRadius Server Type", + "title": "ServerType", + "enum": [ + "ActiveDirectory", + "RadiusServer" + ], + "default": "ActiveDirectory" + }, + "ztnaSpecType": { + "type": "object", + "description": "Ztna Policy specification", + "title": "Ztna Policy Specification", + "x-displayname": "Specification", + "x-ves-proto-message": "ves.io.schema.ztna.SpecType", + "properties": { + "gc_spec": { + "title": "gc_spec", + "$ref": "#/definitions/ztnaGlobalSpecType", + "x-displayname": "GC Spec" + } + } + }, + "ztnaStatusObject": { + "type": "object", + "description": "Most recently observed status of object", + "title": "Status of Ztna Policy Configuration", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.ztna.StatusObject", + "properties": { + "conditions": { + "type": "array", + "description": " Conditions reported by various component of the system", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" + }, + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " Refernce to object for current status", + "title": "object_refs", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Config Object" + } + } + }, + "ztnacrudapiErrorCode": { + "type": "string", + "enum": [ + "EOK", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN" + ], + "default": "EOK", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.ztna.crudapi.ErrorCode" + } + }, + "x-displayname": "", + "x-stream-definitions": { + "crudapiObjectListRsp": { + "properties": { + "error": { + "$ref": "#/definitions/runtimeStreamError" + }, + "result": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "title": "Stream result of crudapiObjectListRsp", + "type": "object" + } + }, + "x-ves-proto-file": "ves.io/schema/ztna/crudapi/api.proto" +}` diff --git a/pbgo/extschema/schema/ztna/crudapi/api.vesmsg.go b/pbgo/extschema/schema/ztna/crudapi/api.vesmsg.go new file mode 100644 index 000000000..c502a54c9 --- /dev/null +++ b/pbgo/extschema/schema/ztna/crudapi/api.vesmsg.go @@ -0,0 +1,1758 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_ztna "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateReq) DeepCopy() *ObjectCreateReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateReqValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateReq) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateReq) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateReqValidator = func() *ValidateObjectCreateReq { + v := &ValidateObjectCreateReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateReqValidator() db.Validator { + return DefaultObjectCreateReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateRsp) DeepCopy() *ObjectCreateRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateRspValidator = func() *ValidateObjectCreateRsp { + v := &ValidateObjectCreateRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateRspValidator() db.Validator { + return DefaultObjectCreateRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteReq) DeepCopy() *ObjectDeleteReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteReqValidator = func() *ValidateObjectDeleteReq { + v := &ValidateObjectDeleteReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteReqValidator() db.Validator { + return DefaultObjectDeleteReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteRsp) DeepCopy() *ObjectDeleteRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteRspValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteRspValidator = func() *ValidateObjectDeleteRsp { + v := &ValidateObjectDeleteRsp{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteRspValidator() db.Validator { + return DefaultObjectDeleteRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetReq) DeepCopy() *ObjectGetReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectGetReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["all_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("all_backrefs")) + if err := fv(ctx, m.GetAllBackrefs(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["backref_types"]; exists { + + vOpts := append(opts, db.WithValidateField("backref_types")) + for idx, item := range m.GetBackrefTypes() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetReqValidator = func() *ValidateObjectGetReq { + v := &ValidateObjectGetReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectGetReqValidator() db.Validator { + return DefaultObjectGetReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetRsp) DeepCopy() *ObjectGetRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectGetRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectGetRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectGetRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ent_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("ent_backrefs")) + for idx, item := range m.GetEntBackrefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetRspValidator = func() *ValidateObjectGetRsp { + v := &ValidateObjectGetRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna.SpecTypeValidator().Validate + + v.FldValidators["status"] = ves_io_schema_ztna.StatusObjectValidator().Validate + + return v +}() + +func ObjectGetRspValidator() db.Validator { + return DefaultObjectGetRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListReq) DeepCopy() *ObjectListReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectListReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace_filter")) + for idx, item := range m.GetNamespaceFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["page_limit"]; exists { + + vOpts := append(opts, db.WithValidateField("page_limit")) + if err := fv(ctx, m.GetPageLimit(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["page_start"]; exists { + + vOpts := append(opts, db.WithValidateField("page_start")) + if err := fv(ctx, m.GetPageStart(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_filter")) + for idx, item := range m.GetTenantFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListReqValidator = func() *ValidateObjectListReq { + v := &ValidateObjectListReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectListReqValidator() db.Validator { + return DefaultObjectListReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRsp) DeepCopy() *ObjectListRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRsp) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateObjectListRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["next_page"]; exists { + + vOpts := append(opts, db.WithValidateField("next_page")) + if err := fv(ctx, m.GetNextPage(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uids"]; exists { + + vOpts := append(opts, db.WithValidateField("uids")) + for idx, item := range m.GetUids() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspValidator = func() *ValidateObjectListRsp { + v := &ValidateObjectListRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ObjectListRspItemValidator().Validate + + return v +}() + +func ObjectListRspValidator() db.Validator { + return DefaultObjectListRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRspItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRspItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRspItem) DeepCopy() *ObjectListRspItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRspItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRspItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRspItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspItemValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRspItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRspItem) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectListRspItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRspItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRspItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRspItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspItemValidator = func() *ValidateObjectListRspItem { + v := &ValidateObjectListRspItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna.SpecTypeValidator().Validate + + v.FldValidators["status"] = ves_io_schema_ztna.StatusObjectValidator().Validate + + return v +}() + +func ObjectListRspItemValidator() db.Validator { + return DefaultObjectListRspItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceReq) DeepCopy() *ObjectReplaceReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectReplaceReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceReqValidator = func() *ValidateObjectReplaceReq { + v := &ValidateObjectReplaceReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceReqValidator() db.Validator { + return DefaultObjectReplaceReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceRsp) DeepCopy() *ObjectReplaceRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectReplaceRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSystemMetadataDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectReplaceRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectReplaceRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceRspValidator = func() *ValidateObjectReplaceRsp { + v := &ValidateObjectReplaceRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceRspValidator() db.Validator { + return DefaultObjectReplaceRspValidator +} + +func (m *ObjectCreateReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna.DBObject) + _ = f + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectCreateRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectGetRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectGetRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectGetRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectGetRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectGetRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectGetRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectListRspItem) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + + m.SystemMetadata = f.GetSystemMetadata() + +} + +func (m *ObjectListRspItem) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectListRspItem) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectListRspItem) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + + f.SystemMetadata = m1.SystemMetadata + +} + +func (m *ObjectListRspItem) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectListRspItem) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() +} + +func (m *ObjectReplaceReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna.DBObject) + _ = f + f.Metadata = m1.Metadata + + f.Spec = m1.Spec +} + +func (m *ObjectReplaceReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectReplaceRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna.DBObject) + _ = f + + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectReplaceRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/ztna/crudapi/pkg.vespkg.go b/pbgo/extschema/schema/ztna/crudapi/pkg.vespkg.go new file mode 100644 index 000000000..981f23f5e --- /dev/null +++ b/pbgo/extschema/schema/ztna/crudapi/pkg.vespkg.go @@ -0,0 +1,85 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ztna.crudapi.ObjectCreateReq"] = ObjectCreateReqValidator() + vr["ves.io.schema.ztna.crudapi.ObjectCreateRsp"] = ObjectCreateRspValidator() + vr["ves.io.schema.ztna.crudapi.ObjectDeleteReq"] = ObjectDeleteReqValidator() + vr["ves.io.schema.ztna.crudapi.ObjectDeleteRsp"] = ObjectDeleteRspValidator() + vr["ves.io.schema.ztna.crudapi.ObjectGetReq"] = ObjectGetReqValidator() + vr["ves.io.schema.ztna.crudapi.ObjectGetRsp"] = ObjectGetRspValidator() + vr["ves.io.schema.ztna.crudapi.ObjectListReq"] = ObjectListReqValidator() + vr["ves.io.schema.ztna.crudapi.ObjectListRsp"] = ObjectListRspValidator() + vr["ves.io.schema.ztna.crudapi.ObjectListRspItem"] = ObjectListRspItemValidator() + vr["ves.io.schema.ztna.crudapi.ObjectReplaceReq"] = ObjectReplaceReqValidator() + vr["ves.io.schema.ztna.crudapi.ObjectReplaceRsp"] = ObjectReplaceRspValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + + mdr.RPCConfidentialRequestRegistry["ves.io.schema.ztna.crudapi.API.Create"] = "ves.io.schema.ztna.crudapi.ObjectCreateReq" + + mdr.RPCConfidentialRequestRegistry["ves.io.schema.ztna.crudapi.API.Replace"] = "ves.io.schema.ztna.crudapi.ObjectReplaceReq" + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + csr = mdr.PvtCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.ztna.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.ztna.crudapi.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.ztna.crudapi.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ztna/object.pb.go b/pbgo/extschema/schema/ztna/object.pb.go new file mode 100644 index 000000000..d9eb8de10 --- /dev/null +++ b/pbgo/extschema/schema/ztna/object.pb.go @@ -0,0 +1,1195 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna/object.proto + +package ztna + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Ztna Policy Configuration +// +// x-displayName: "Ztna Policy Configuration" +// Ztna Policy Configuration +type Object struct { + // metadata + // + // x-displayName: "Metadata" + // Standard object's metadata + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // System generated object's metadata + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // Specification of the policy of the ztna + Spec *SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *Object) Reset() { *m = Object{} } +func (*Object) ProtoMessage() {} +func (*Object) Descriptor() ([]byte, []int) { + return fileDescriptor_b5aff0c6dd1b94a0, []int{0} +} +func (m *Object) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Object) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Object) XXX_Merge(src proto.Message) { + xxx_messageInfo_Object.Merge(m, src) +} +func (m *Object) XXX_Size() int { + return m.Size() +} +func (m *Object) XXX_DiscardUnknown() { + xxx_messageInfo_Object.DiscardUnknown(m) +} + +var xxx_messageInfo_Object proto.InternalMessageInfo + +func (m *Object) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *Object) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *Object) GetSpec() *SpecType { + if m != nil { + return m.Spec + } + return nil +} + +// Ztna Policy Specification +// +// x-displayName: "Specification" +// Ztna Policy specification +type SpecType struct { + // gc_spec + // + // x-displayName: "GC Spec" + GcSpec *GlobalSpecType `protobuf:"bytes,2,opt,name=gc_spec,json=gcSpec,proto3" json:"gc_spec,omitempty"` +} + +func (m *SpecType) Reset() { *m = SpecType{} } +func (*SpecType) ProtoMessage() {} +func (*SpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_b5aff0c6dd1b94a0, []int{1} +} +func (m *SpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_SpecType.Merge(m, src) +} +func (m *SpecType) XXX_Size() int { + return m.Size() +} +func (m *SpecType) XXX_DiscardUnknown() { + xxx_messageInfo_SpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_SpecType proto.InternalMessageInfo + +func (m *SpecType) GetGcSpec() *GlobalSpecType { + if m != nil { + return m.GcSpec + } + return nil +} + +// Status of Ztna Policy Configuration +// +// x-displayName: "Status" +// Most recently observed status of object +type StatusObject struct { + // metadata + // + // x-displayName: "Metadata" + // Standard status's metadata + Metadata *schema.StatusMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // object_refs + // + // x-displayName: "Config Object" + // Refernce to object for current status + ObjectRefs []*schema.ObjectRefType `protobuf:"bytes,2,rep,name=object_refs,json=objectRefs,proto3" json:"object_refs,omitempty"` + // conditions + // + // x-displayName: "Conditions" + // Conditions reported by various component of the system + Conditions []*schema.ConditionType `protobuf:"bytes,3,rep,name=conditions,proto3" json:"conditions,omitempty"` +} + +func (m *StatusObject) Reset() { *m = StatusObject{} } +func (*StatusObject) ProtoMessage() {} +func (*StatusObject) Descriptor() ([]byte, []int) { + return fileDescriptor_b5aff0c6dd1b94a0, []int{2} +} +func (m *StatusObject) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *StatusObject) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *StatusObject) XXX_Merge(src proto.Message) { + xxx_messageInfo_StatusObject.Merge(m, src) +} +func (m *StatusObject) XXX_Size() int { + return m.Size() +} +func (m *StatusObject) XXX_DiscardUnknown() { + xxx_messageInfo_StatusObject.DiscardUnknown(m) +} + +var xxx_messageInfo_StatusObject proto.InternalMessageInfo + +func (m *StatusObject) GetMetadata() *schema.StatusMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *StatusObject) GetObjectRefs() []*schema.ObjectRefType { + if m != nil { + return m.ObjectRefs + } + return nil +} + +func (m *StatusObject) GetConditions() []*schema.ConditionType { + if m != nil { + return m.Conditions + } + return nil +} + +func init() { + proto.RegisterType((*Object)(nil), "ves.io.schema.ztna.Object") + golang_proto.RegisterType((*Object)(nil), "ves.io.schema.ztna.Object") + proto.RegisterType((*SpecType)(nil), "ves.io.schema.ztna.SpecType") + golang_proto.RegisterType((*SpecType)(nil), "ves.io.schema.ztna.SpecType") + proto.RegisterType((*StatusObject)(nil), "ves.io.schema.ztna.StatusObject") + golang_proto.RegisterType((*StatusObject)(nil), "ves.io.schema.ztna.StatusObject") +} + +func init() { proto.RegisterFile("ves.io/schema/ztna/object.proto", fileDescriptor_b5aff0c6dd1b94a0) } +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna/object.proto", fileDescriptor_b5aff0c6dd1b94a0) +} + +var fileDescriptor_b5aff0c6dd1b94a0 = []byte{ + // 497 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0x31, 0x6f, 0xd3, 0x40, + 0x14, 0xc7, 0x7d, 0x49, 0x95, 0x56, 0xd7, 0xaa, 0x54, 0x46, 0x48, 0xa6, 0xc0, 0xb5, 0x0a, 0x0b, + 0x8b, 0xcf, 0x08, 0x26, 0x0a, 0x62, 0x28, 0x12, 0x65, 0xa0, 0x42, 0x4a, 0x98, 0x58, 0xa2, 0xb3, + 0xf3, 0xec, 0x1a, 0x62, 0x9f, 0x75, 0x77, 0xb6, 0x08, 0x12, 0x12, 0x13, 0x33, 0x1f, 0x03, 0xf1, + 0x29, 0x28, 0x13, 0x62, 0x8a, 0x98, 0x32, 0x12, 0x87, 0x81, 0xb1, 0x1f, 0x01, 0xf9, 0xae, 0x8e, + 0x92, 0xe0, 0x81, 0xed, 0x9d, 0xdf, 0xef, 0xfd, 0xdf, 0xff, 0x3d, 0x3f, 0x7c, 0x50, 0x80, 0xa4, + 0x31, 0xf7, 0x64, 0x70, 0x06, 0x09, 0xf3, 0xde, 0xa9, 0x94, 0x79, 0xdc, 0x7f, 0x0d, 0x81, 0xa2, + 0x99, 0xe0, 0x8a, 0xdb, 0xb6, 0x01, 0xa8, 0x01, 0x68, 0x05, 0xec, 0xbb, 0x51, 0xac, 0xce, 0x72, + 0x9f, 0x06, 0x3c, 0xf1, 0x22, 0x1e, 0x71, 0x4f, 0xa3, 0x7e, 0x1e, 0xea, 0x97, 0x7e, 0xe8, 0xc8, + 0x48, 0xec, 0xdf, 0x58, 0xed, 0xc1, 0x33, 0x15, 0xf3, 0x54, 0x5e, 0x26, 0xaf, 0xaf, 0x26, 0xd5, + 0x38, 0x83, 0x3a, 0xd5, 0x5d, 0x4d, 0x15, 0x20, 0x21, 0x2d, 0xd6, 0xca, 0x49, 0x83, 0xff, 0x25, + 0x8d, 0xee, 0x6f, 0x84, 0x3b, 0x2f, 0xf4, 0x3c, 0xf6, 0x03, 0xbc, 0x95, 0x80, 0x62, 0x43, 0xa6, + 0x98, 0x83, 0x0e, 0xd1, 0x9d, 0xed, 0x7b, 0xb7, 0xe8, 0xea, 0x70, 0x06, 0x3c, 0x05, 0xc5, 0x5e, + 0x8e, 0x33, 0xe8, 0x2d, 0x70, 0xfb, 0x39, 0xbe, 0x22, 0xc7, 0x52, 0x41, 0x32, 0x58, 0x28, 0xb4, + 0xb4, 0xc2, 0xed, 0x35, 0x85, 0xbe, 0xa6, 0xd6, 0x74, 0x76, 0x4d, 0xed, 0x69, 0xad, 0x76, 0x17, + 0x6f, 0xc8, 0x0c, 0x02, 0xa7, 0xad, 0x25, 0x6e, 0xd2, 0x7f, 0x37, 0x4c, 0xfb, 0x19, 0x04, 0xba, + 0x56, 0x93, 0x47, 0x07, 0xdf, 0xce, 0x9d, 0xd6, 0x1e, 0xfa, 0x71, 0xee, 0x5c, 0x2b, 0x40, 0xba, + 0x31, 0x77, 0xe3, 0x34, 0x14, 0x4c, 0x2a, 0x91, 0x07, 0x2a, 0x17, 0xd0, 0x3d, 0xc1, 0x5b, 0x75, + 0x89, 0xfd, 0x10, 0x6f, 0x46, 0xc1, 0x40, 0x77, 0x30, 0x26, 0xbb, 0x4d, 0x1d, 0x4e, 0x46, 0xdc, + 0x67, 0xa3, 0x45, 0x9f, 0x4e, 0x14, 0x54, 0x71, 0xb5, 0xaf, 0x9d, 0xbe, 0x62, 0x2a, 0x97, 0xff, + 0xbd, 0x35, 0x83, 0x37, 0x6c, 0xed, 0x29, 0xde, 0x36, 0xa7, 0x34, 0x10, 0x10, 0x4a, 0xa7, 0x75, + 0xd8, 0x6e, 0x18, 0xd7, 0xb4, 0xe9, 0x41, 0x58, 0x15, 0x1f, 0x6f, 0x7e, 0x79, 0xbf, 0x51, 0xd9, + 0xeb, 0x61, 0x5e, 0x7f, 0x97, 0xf6, 0x23, 0x8c, 0x03, 0x9e, 0x0e, 0x63, 0xfd, 0xdf, 0x9d, 0x76, + 0xa3, 0xcc, 0x93, 0x1a, 0xd0, 0x1e, 0x96, 0xf8, 0xa3, 0xab, 0x3f, 0x1f, 0xef, 0xe1, 0x5d, 0xbc, + 0x53, 0xdb, 0xa2, 0x79, 0x3c, 0x3c, 0xfe, 0x88, 0x26, 0x33, 0x62, 0x4d, 0x67, 0xc4, 0xba, 0x98, + 0x11, 0xf4, 0xa1, 0x24, 0xe8, 0x73, 0x49, 0xd0, 0xf7, 0x92, 0xa0, 0x49, 0x49, 0xd0, 0xb4, 0x24, + 0xe8, 0x57, 0x49, 0xd0, 0x9f, 0x92, 0x58, 0x17, 0x25, 0x41, 0x9f, 0xe6, 0xc4, 0xfa, 0x3a, 0x27, + 0x68, 0x32, 0x27, 0xd6, 0x74, 0x4e, 0xac, 0x57, 0xcf, 0x22, 0x9e, 0xbd, 0x89, 0x68, 0xc1, 0x47, + 0x0a, 0x84, 0x60, 0x34, 0x97, 0x9e, 0x0e, 0x42, 0x2e, 0x12, 0x37, 0x13, 0xbc, 0x88, 0x87, 0x20, + 0xdc, 0x3a, 0xed, 0x65, 0x7e, 0xc4, 0x3d, 0x78, 0xab, 0x2e, 0x8f, 0x74, 0xe9, 0x56, 0xfd, 0x8e, + 0x3e, 0xd3, 0xfb, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x85, 0x92, 0x8f, 0x6b, 0x88, 0x03, 0x00, + 0x00, +} + +func (this *Object) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Object) + if !ok { + that2, ok := that.(Object) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *SpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SpecType) + if !ok { + that2, ok := that.(SpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GcSpec.Equal(that1.GcSpec) { + return false + } + return true +} +func (this *StatusObject) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*StatusObject) + if !ok { + that2, ok := that.(StatusObject) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if len(this.ObjectRefs) != len(that1.ObjectRefs) { + return false + } + for i := range this.ObjectRefs { + if !this.ObjectRefs[i].Equal(that1.ObjectRefs[i]) { + return false + } + } + if len(this.Conditions) != len(that1.Conditions) { + return false + } + for i := range this.Conditions { + if !this.Conditions[i].Equal(that1.Conditions[i]) { + return false + } + } + return true +} +func (this *Object) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.Object{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&ztna.SpecType{") + if this.GcSpec != nil { + s = append(s, "GcSpec: "+fmt.Sprintf("%#v", this.GcSpec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *StatusObject) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.StatusObject{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.ObjectRefs != nil { + s = append(s, "ObjectRefs: "+fmt.Sprintf("%#v", this.ObjectRefs)+",\n") + } + if this.Conditions != nil { + s = append(s, "Conditions: "+fmt.Sprintf("%#v", this.Conditions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringObject(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *Object) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Object) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Object) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *SpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GcSpec != nil { + { + size, err := m.GcSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *StatusObject) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StatusObject) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *StatusObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Conditions) > 0 { + for iNdEx := len(m.Conditions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Conditions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if len(m.ObjectRefs) > 0 { + for iNdEx := len(m.ObjectRefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ObjectRefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintObject(dAtA []byte, offset int, v uint64) int { + offset -= sovObject(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Object) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *SpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GcSpec != nil { + l = m.GcSpec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *StatusObject) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if len(m.ObjectRefs) > 0 { + for _, e := range m.ObjectRefs { + l = e.Size() + n += 1 + l + sovObject(uint64(l)) + } + } + if len(m.Conditions) > 0 { + for _, e := range m.Conditions { + l = e.Size() + n += 1 + l + sovObject(uint64(l)) + } + } + return n +} + +func sovObject(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozObject(x uint64) (n int) { + return sovObject(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *Object) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Object{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(this.Spec.String(), "SpecType", "SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SpecType{`, + `GcSpec:` + strings.Replace(fmt.Sprintf("%v", this.GcSpec), "GlobalSpecType", "GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *StatusObject) String() string { + if this == nil { + return "nil" + } + repeatedStringForObjectRefs := "[]*ObjectRefType{" + for _, f := range this.ObjectRefs { + repeatedStringForObjectRefs += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForObjectRefs += "}" + repeatedStringForConditions := "[]*ConditionType{" + for _, f := range this.Conditions { + repeatedStringForConditions += strings.Replace(fmt.Sprintf("%v", f), "ConditionType", "schema.ConditionType", 1) + "," + } + repeatedStringForConditions += "}" + s := strings.Join([]string{`&StatusObject{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "StatusMetaType", "schema.StatusMetaType", 1) + `,`, + `ObjectRefs:` + repeatedStringForObjectRefs + `,`, + `Conditions:` + repeatedStringForConditions + `,`, + `}`, + }, "") + return s +} +func valueToStringObject(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *Object) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Object: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Object: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GcSpec == nil { + m.GcSpec = &GlobalSpecType{} + } + if err := m.GcSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StatusObject) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StatusObject: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StatusObject: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.StatusMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectRefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectRefs = append(m.ObjectRefs, &schema.ObjectRefType{}) + if err := m.ObjectRefs[len(m.ObjectRefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Conditions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Conditions = append(m.Conditions, &schema.ConditionType{}) + if err := m.Conditions[len(m.Conditions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipObject(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthObject + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupObject + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthObject + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthObject = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowObject = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupObject = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna/object.vesmsg.go b/pbgo/extschema/schema/ztna/object.vesmsg.go new file mode 100644 index 000000000..b52c33bfc --- /dev/null +++ b/pbgo/extschema/schema/ztna/object.vesmsg.go @@ -0,0 +1,117 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *SpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *SpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetGcSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting SpecType.gc_spec") + } + + return nil +} + +func (m *SpecType) DeepCopy() *SpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["gc_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("gc_spec")) + if err := fv(ctx, m.GetGcSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSpecTypeValidator = func() *ValidateSpecType { + v := &ValidateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["gc_spec"] = GlobalSpecTypeValidator().Validate + + return v +}() + +func SpecTypeValidator() db.Validator { + return DefaultSpecTypeValidator +} diff --git a/pbgo/extschema/schema/ztna/object.vesobj.go b/pbgo/extschema/schema/ztna/object.vesobj.go new file mode 100644 index 000000000..4bef1e0f7 --- /dev/null +++ b/pbgo/extschema/schema/ztna/object.vesobj.go @@ -0,0 +1,1270 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna + +import ( + "context" + "fmt" + "math/rand" + "strings" + "time" + + google_protobuf "github.com/gogo/protobuf/types" + multierror "github.com/hashicorp/go-multierror" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/store" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + + "github.com/google/uuid" + "gopkg.volterra.us/stdlib/db/sro" +) + +const ( + ObjectDefTblName = "ves.io.schema.ztna.Object.default" + ObjectType = "ves.io.schema.ztna.Object" + + StatusObjectDefTblName = "ves.io.schema.ztna.StatusObject.default" + StatusObjectType = "ves.io.schema.ztna.StatusObject" +) + +// augmented methods on protoc/std generated struct +func (e *Object) Type() string { + return "ves.io.schema.ztna.Object" +} + +func (e *Object) ToEntry() db.Entry { + return NewDBObject(e, db.OpWithNoCopy()) +} + +func LocateObject(ctx context.Context, locator db.EntryLocator, uid, tenant, namespace, name string, opts ...db.FindEntryOpt) (*DBObject, error) { + timestamp, err := google_protobuf.TimestampProto(time.Now()) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if uid != "" { + obj, exist, err := FindObject(ctx, locator, uid, opts...) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if exist && obj != nil { + obj.SystemMetadata.ModificationTimestamp = timestamp + return obj, nil + } + } else { + uid = uuid.New().String() + } + + sysMD := &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: tenant, + CreatorClass: locator.GetCreatorClass(), + CreatorId: locator.GetCreatorID(), + CreationTimestamp: timestamp, + ModificationTimestamp: timestamp, + } + obj := NewDBObject(nil) + obj.SetObjUid(uid) + obj.SetObjName(name) + obj.SetObjNamespace(namespace) + obj.SetObjSystemMetadata(sysMD) + obj.Spec = &SpecType{} + return obj, nil +} + +func FindObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, ObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBObject, error) { + var ( + oList []*DBObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, ObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", ObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +// Redact squashes sensitive info in o (in-place) +func (o *Object) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if o == nil { + return nil + } + + if err := o.GetSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting Object.spec") + } + + return nil +} + +func (o *Object) DeepCopy() *Object { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &Object{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *Object) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *Object) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +func (e *Object) GetTraceInfo() string { + sysMD := e.GetSystemMetadata() + if sysMD == nil { + return "" + } + return sysMD.GetTraceInfo() +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBObject struct { + // Anonymous embed of standard protobuf generated struct + *Object + + tbl db.Table +} + +// GetObjectIndexers returns the associated store.Indexers for Object +func GetObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBObject) Key(opts ...db.KeyOpt) (string, error) { + ko := db.NewKeyOpts(opts...) + if ko.Public { + md := e.GetMetadata() + if md == nil { + return "", fmt.Errorf("Metadata is nil") + } + return fmt.Sprintf("%s/%s", md.GetNamespace(), md.GetName()), nil + } else { + if e.GetSystemMetadata() == nil { + return "", fmt.Errorf("SystemMetadata is nil") + } + return e.GetSystemMetadata().GetUid(), nil + } +} + +func (e *DBObject) Type() string { + return "ves.io.schema.ztna.Object" +} + +func (e *DBObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBObject(e.Object) + n.tbl = e.tbl + return n +} + +func (e *DBObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBObject) Sample(r *rand.Rand) (db.Entry, error) { + uid := uuid.New().String() + o := &Object{ + Metadata: &ves_io_schema.ObjectMetaType{ + Name: uuid.New().String(), + Namespace: uuid.New().String(), + Uid: uid, + }, + SystemMetadata: &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: uuid.New().String(), + }, + Spec: &SpecType{}, + } + + return &DBObject{o, e.tbl}, nil +} + +func (e *DBObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectValidator().Validate(ctx, e.Object, opts...) +} + +func (e *DBObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetSystemMetadataDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.ztna.Object." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBObject) ToStore() store.Entry { + return e.Object +} + +func (e *DBObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBObject) GetTable() db.Table { + return e.tbl +} + +func NewDBObject(o *Object, opts ...db.OpOption) *DBObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBObject{Object: &Object{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBObject{Object: obj} +} + +func NewEntryObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBObject(nil, opts...) + case *Object: + return NewDBObject(v, opts...) + } + return nil +} + +// GetDRefInfo for the field's type +func (e *DBObject) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if e.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := e.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +// Implement sro.SRO interface +func (o *DBObject) GetObjMetadata() sro.ObjectMetadata { + if o.GetMetadata() == nil { + return nil + } + return o.GetMetadata() +} + +func (o *DBObject) SetObjMetadata(in sro.ObjectMetadata) error { + if in == nil { + o.Metadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.ObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjMetadata expected *ObjectMetaType, got %T", in) + } + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSystemMetadata() sro.SystemMetadata { + if o.GetSystemMetadata() == nil { + return nil + } + return o.GetSystemMetadata() +} + +func (o *DBObject) SetObjSystemMetadata(in sro.SystemMetadata) error { + if in == nil { + o.SystemMetadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.SystemObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjSystemMetadata expected *SystemObjectMetaType, got %T", in) + } + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjSpec() sro.Spec { + if o.GetSpec() == nil { + return nil + } + return o.GetSpec() +} + +func (o *DBObject) SetObjSpec(in sro.Spec) error { + if in == nil { + o.Spec = nil + return nil + } + + m, ok := in.(*SpecType) + if !ok { + return fmt.Errorf("Error: SetObjSpec expected *SpecType, got %T", in) + } + o.Spec = m + return nil +} + +func FindObjectStatus(ctx context.Context, d db.Interface, objUid string) ([]*StatusObject, error) { + statusDBEntries, err := d.GetEntryBackrefs(ctx, objUid, ObjectType, db.WithBackrefTypes([]string{"ves.io.schema.ztna.StatusObject"})) + if err != nil { + return nil, err + } + var merr *multierror.Error + var statusObjs []*StatusObject + for _, statusDBEntry := range statusDBEntries { + statusEntry := statusDBEntry.ToStore() + statusObj, ok := statusEntry.(*StatusObject) + if !ok { + merr = multierror.Append(merr, fmt.Errorf("Status Backref expected *StatusObject, got %T: %v", statusEntry, statusEntry)) + continue + } + statusObjs = append(statusObjs, statusObj) + } + return statusObjs, errors.ErrOrNil(merr) +} + +// SetObjectRef sets reference to a configuration object +func (o *StatusObject) SetObjectRef(objKind, objUid string) error { + if len(o.GetObjectRefs()) != 0 { + return fmt.Errorf("StatusObject already has a reference to %v", o.GetObjectRefs()) + } + o.ObjectRefs = append(o.ObjectRefs, &ves_io_schema.ObjectRefType{Kind: objKind, Uid: objUid}) + return nil +} + +func (o *StatusObject) GetStatusObjMetadata() sro.StatusObjectMetadata { + return o.GetMetadata() +} + +func (o *StatusObject) SetStatusObjMetadata(md sro.StatusObjectMetadata) { + if o == nil { + return + } + if o.Metadata == nil { + o.Metadata = &ves_io_schema.StatusMetaType{} + } + o.Metadata = md.(*ves_io_schema.StatusMetaType) +} + +// GenerateUuidv5() returns a deterministic UUIDv5 based on the unique semantic key of status object +func (o *StatusObject) GenerateUuidV5() (string, error) { + statusObjectMetaData := o.GetStatusObjMetadata() + creatorClass := statusObjectMetaData.GetCreatorClass() + creatorId := statusObjectMetaData.GetCreatorId() + statusId := statusObjectMetaData.GetStatusId() + objectRefArray := o.GetObjectRefs() + if len(objectRefArray) == 0 { + return "", fmt.Errorf("StatusObject does not have a reference to config object.") + } + configObjectUuid := objectRefArray[0].Uid + configObjectKind := objectRefArray[0].Kind + keyFields := []string{creatorClass, creatorId, statusId, configObjectKind, configObjectUuid} + secKey := strings.Join(keyFields, "::") + newUuid := uuid.NewSHA1(uuid.NameSpaceOID, []byte(secKey)).String() + return newUuid, nil +} + +// SetUuidV5 sets deterministic uuid for a status object. +func (o *StatusObject) SetUuidV5() error { + if o == nil { + return fmt.Errorf("Status object is nil") + } + uuidV5, err := o.GenerateUuidV5() + if err != nil { + return err + } + o.GetMetadata().SetUid(uuidV5) + return nil +} + +// GetVtrpId returns vtrpId of the status object. +func (o *StatusObject) GetVtrpId() string { + return o.GetMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the status object. +func (o *StatusObject) SetVtrpId(id string) { + o.GetMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *StatusObject) GetVtrpStale() bool { + return o.GetMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the status object +func (o *StatusObject) SetVtrpStale(isStale bool) { + o.GetMetadata().SetVtrpStale(isStale) +} + +func (o *StatusObject) GetStatusObjConditions() []sro.StatusObjectCondition { + if o == nil { + return nil + } + return ves_io_schema.ToStatusObjectConditions(o.GetConditions()) +} + +func (o *StatusObject) SetStatusObjConditions(socSet []sro.StatusObjectCondition) { + if o == nil { + return + } + o.Conditions = ves_io_schema.FromStatusObjectConditions(socSet) +} + +func (o *DBObject) GetObjType() string { + return o.Type() +} + +// GetObjUid returns uuid from source-of-truth, in systemMetadata +func (o *DBObject) GetObjUid() string { + return o.GetSystemMetadata().GetUid() +} + +// GetObjTenant returns tenant from source-of-truth, in systemMetadata +func (o *DBObject) GetObjTenant() string { + return o.GetSystemMetadata().GetTenant() +} + +// GetObjCreatorClass returns creator-class from systemMetadata +func (o *DBObject) GetObjCreatorClass() string { + return o.GetSystemMetadata().GetCreatorClass() +} + +// GetObjectIndex returns object-index from systemMetadata +func (o *DBObject) GetObjectIndex() uint32 { + return o.GetSystemMetadata().GetObjectIndex() +} + +// SetObjUid sets uuid as a hint, in Metadata +func (o *DBObject) SetObjUid(u string) error { + // TODO: make sure 'u' is of uuid form + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Uid = u + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjName() string { + return o.GetMetadata().GetName() +} + +func (o *DBObject) SetObjName(n string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Name = n + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjNamespace() string { + return o.GetMetadata().GetNamespace() +} + +func (o *DBObject) SetObjNamespace(ns string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Namespace = ns + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjLabels() map[string]string { + return o.GetMetadata().GetLabels() +} + +func (o *DBObject) SetObjLabels(l map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Labels = l + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjAnnotations() map[string]string { + return o.GetMetadata().GetAnnotations() +} + +func (o *DBObject) SetObjAnnotations(a map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Annotations = a + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDescription() string { + return o.GetMetadata().GetDescription() +} + +func (o *DBObject) SetObjDescription(d string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Description = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDisable() bool { + return o.GetMetadata().GetDisable() +} + +func (o *DBObject) SetObjDisable(d bool) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Disable = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSREDisable() bool { + return o.GetSystemMetadata().GetSreDisable() +} + +func (o *DBObject) SetObjSREDisable(d bool) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.SreDisable = d + return nil +} + +func (o *DBObject) SetObjCreator(cls, inst string) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.CreatorClass = cls + m.CreatorId = inst + o.SystemMetadata = m + return nil +} + +func (o *DBObject) SetObjectIndex(idx uint32) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.ObjectIndex = idx + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjFinalizers() []string { + return o.GetSystemMetadata().GetFinalizers() +} + +func (o *DBObject) SetObjFinalizers(values ...string) error { + m := o.GetSystemMetadata() + if m == nil { + return fmt.Errorf("Object has nil system_metadata") + } + m.Finalizers = values + return nil +} + +func (o *DBObject) GetObjPendingInitializers() []string { + initializers := o.GetSystemMetadata().GetInitializers() + var pending []string + for _, p := range initializers.GetPending() { + pending = append(pending, p.GetName()) + } + return pending +} + +func (o *DBObject) SetObjPendingInitializers(pending ...string) { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + o.SystemMetadata = m + } + initializers := m.GetInitializers() + if initializers == nil { + initializers = &ves_io_schema.InitializersType{} + m.Initializers = initializers + } + var pendingInitializers []*ves_io_schema.InitializerType + for _, p := range pending { + pendingInitializers = append(pendingInitializers, &ves_io_schema.InitializerType{Name: p}) + } + initializers.Pending = pendingInitializers +} + +func (o *DBObject) IsSpecEqual(other sro.SRO) bool { + otherObjSpec := other.GetObjSpec() + otherSpec, ok := otherObjSpec.(*SpecType) + if !ok { + return false + } + + return o.GetSpec().Equal(otherSpec) +} + +// GetVtrpId returns vtrpId of the object. +func (o *DBObject) GetVtrpId() string { + return o.GetSystemMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the object. +func (o *DBObject) SetVtrpId(id string) { + o.GetSystemMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *DBObject) GetVtrpStale() bool { + return o.GetSystemMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the object +func (o *DBObject) SetVtrpStale(isStale bool) { + o.GetSystemMetadata().SetVtrpStale(isStale) +} + +type ValidateObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*Object) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *Object got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, e.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, e.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectValidator = func() *ValidateObject { + v := &ValidateObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = SpecTypeValidator().Validate + + return v +}() + +func ObjectValidator() db.Validator { + return DefaultObjectValidator +} + +// augmented methods on protoc/std generated struct +func (e *StatusObject) Type() string { + return "ves.io.schema.ztna.StatusObject" +} + +func (e *StatusObject) ToEntry() db.Entry { + return NewDBStatusObject(e, db.OpWithNoCopy()) +} + +func FindStatusObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBStatusObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, StatusObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBStatusObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListStatusObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBStatusObject, error) { + var ( + oList []*DBStatusObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, StatusObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBStatusObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", StatusObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *StatusObject) DeepCopy() *StatusObject { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &StatusObject{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *StatusObject) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *StatusObject) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBStatusObject struct { + // Anonymous embed of standard protobuf generated struct + *StatusObject + + tbl db.Table +} + +// GetStatusObjectIndexers returns the associated store.Indexers for StatusObject +func GetStatusObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBStatusObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBStatusObject) Key(opts ...db.KeyOpt) (string, error) { + return e.GetMetadata().GetUid(), nil +} + +func (e *DBStatusObject) Type() string { + return "ves.io.schema.ztna.StatusObject" +} + +func (e *DBStatusObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBStatusObject(e.StatusObject) + n.tbl = e.tbl + return n +} + +func (e *DBStatusObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBStatusObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBStatusObject) Sample(r *rand.Rand) (db.Entry, error) { + + o := &StatusObject{} + + return &DBStatusObject{o, e.tbl}, nil +} + +func (e *DBStatusObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return StatusObjectValidator().Validate(ctx, e.StatusObject, opts...) +} + +func (e *DBStatusObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBStatusObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBStatusObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBStatusObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBStatusObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBStatusObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBStatusObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetObjectRefsDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetObjectRefsDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.ztna.StatusObject." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBStatusObject) ToStore() store.Entry { + return e.StatusObject +} + +func (e *DBStatusObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBStatusObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBStatusObject) GetTable() db.Table { + return e.tbl +} + +func NewDBStatusObject(o *StatusObject, opts ...db.OpOption) *DBStatusObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBStatusObject{StatusObject: &StatusObject{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBStatusObject{StatusObject: obj} +} + +func NewEntryStatusObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBStatusObject(nil, opts...) + case *StatusObject: + return NewDBStatusObject(v, opts...) + } + return nil +} + +func (e *DBStatusObject) GetObjectRefsDRefInfo() ([]db.DRefInfo, error) { + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + refs := e.GetObjectRefs() + if len(refs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(refs)) + for i, ref := range refs { + if ref == nil { + return nil, fmt.Errorf("StatusObject.object_refs[%d] has a nil value", i) + } + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "ztna.Object", + RefdUID: ref.Uid, + RefdTenant: ref.Tenant, + RefdNS: ref.Namespace, + RefdName: ref.Name, + RefrType: e.Type(), + RefrUID: refrUID, + DRField: "object_refs", + Ref: ref, + }) + } + return drInfos, nil +} + +// GetObjectRefsDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (e *DBStatusObject) GetObjectRefsDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDBEntries, error in key") + } + refdType, err := d.TypeForEntryKind(e.Type(), refrUID, "ztna.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: ztna") + } + tblName := db.DefaultTableName(refdType) + if intTbl, err := d.GetTable(ctx, db.InternalTableName(refdType)); err == nil { + tblName = intTbl.Name() + } + for _, ref := range e.GetObjectRefs() { + e, exist, err := d.FindEntry(ctx, tblName, ref.Uid) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Tbl: %s, Key: %s", tblName, ref.Uid)) + } + if !exist { + continue + } + entries = append(entries, e) + } + return entries, nil +} + +type ValidateStatusObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateStatusObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*StatusObject) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *StatusObject got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["conditions"]; exists { + + vOpts := append(opts, db.WithValidateField("conditions")) + for idx, item := range e.GetConditions() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_refs"]; exists { + + vOpts := append(opts, db.WithValidateField("object_refs")) + for idx, item := range e.GetObjectRefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultStatusObjectValidator = func() *ValidateStatusObject { + v := &ValidateStatusObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["conditions"] = ves_io_schema.ConditionTypeValidator().Validate + + return v +}() + +func StatusObjectValidator() db.Validator { + return DefaultStatusObjectValidator +} diff --git a/pbgo/extschema/schema/ztna/pkg.vespkg.go b/pbgo/extschema/schema/ztna/pkg.vespkg.go new file mode 100644 index 000000000..020ad6303 --- /dev/null +++ b/pbgo/extschema/schema/ztna/pkg.vespkg.go @@ -0,0 +1,150 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna + +import ( + "reflect" + + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/store" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ztna.SpecType"] = SpecTypeValidator() + + vr["ves.io.schema.ztna.Object"] = ObjectValidator() + vr["ves.io.schema.ztna.StatusObject"] = StatusObjectValidator() + + vr["ves.io.schema.ztna.CreateRequest"] = CreateRequestValidator() + vr["ves.io.schema.ztna.CreateResponse"] = CreateResponseValidator() + vr["ves.io.schema.ztna.DeleteRequest"] = DeleteRequestValidator() + vr["ves.io.schema.ztna.GetRequest"] = GetRequestValidator() + vr["ves.io.schema.ztna.GetResponse"] = GetResponseValidator() + vr["ves.io.schema.ztna.ListRequest"] = ListRequestValidator() + vr["ves.io.schema.ztna.ListResponse"] = ListResponseValidator() + vr["ves.io.schema.ztna.ListResponseItem"] = ListResponseItemValidator() + vr["ves.io.schema.ztna.ReplaceRequest"] = ReplaceRequestValidator() + vr["ves.io.schema.ztna.ReplaceResponse"] = ReplaceResponseValidator() + + vr["ves.io.schema.ztna.AclResourceEntry"] = AclResourceEntryValidator() + vr["ves.io.schema.ztna.ActionType"] = ActionTypeValidator() + vr["ves.io.schema.ztna.ActiveDirectoryAuth"] = ActiveDirectoryAuthValidator() + vr["ves.io.schema.ztna.ActiveDirectoryQuery"] = ActiveDirectoryQueryValidator() + vr["ves.io.schema.ztna.AllowResourceAssign"] = AllowResourceAssignValidator() + vr["ves.io.schema.ztna.ConnectivityPolicyType"] = ConnectivityPolicyTypeValidator() + vr["ves.io.schema.ztna.CreateSpecType"] = CreateSpecTypeValidator() + vr["ves.io.schema.ztna.Custmization"] = CustmizationValidator() + vr["ves.io.schema.ztna.Entry"] = EntryValidator() + vr["ves.io.schema.ztna.ExternalServers"] = ExternalServersValidator() + vr["ves.io.schema.ztna.GetSpecType"] = GetSpecTypeValidator() + vr["ves.io.schema.ztna.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.ztna.LeasePoolMember"] = LeasePoolMemberValidator() + vr["ves.io.schema.ztna.LogonItemType"] = LogonItemTypeValidator() + vr["ves.io.schema.ztna.PerSessionPolicyType"] = PerSessionPolicyTypeValidator() + vr["ves.io.schema.ztna.ReplaceSpecType"] = ReplaceSpecTypeValidator() + vr["ves.io.schema.ztna.Resource"] = ResourceValidator() + vr["ves.io.schema.ztna.ResourceAssign"] = ResourceAssignValidator() + vr["ves.io.schema.ztna.Rules"] = RulesValidator() + vr["ves.io.schema.ztna.SequenceAction"] = SequenceActionValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + mdr.EntryFactory["ves.io.schema.ztna.Object"] = NewEntryObject + mdr.EntryStoreMap["ves.io.schema.ztna.Object"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.ztna.Object"] = reflect.TypeOf(&DBObject{}) + mdr.EntryIndexers["ves.io.schema.ztna.Object"] = GetObjectIndexers + mdr.EntryFactory["ves.io.schema.ztna.StatusObject"] = NewEntryStatusObject + mdr.EntryStoreMap["ves.io.schema.ztna.StatusObject"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.ztna.StatusObject"] = reflect.TypeOf(&DBStatusObject{}) + mdr.EntryIndexers["ves.io.schema.ztna.StatusObject"] = GetStatusObjectIndexers + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + + mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.ztna.API.Create"] = []string{ + "spec.per_session.external_server.admin_password.blindfold_secret_info_internal", + "spec.per_session.external_server.admin_password.secret_encoding_type", + "spec.per_session.external_server.admin_password.vault_secret_info", + "spec.per_session.external_server.admin_password.wingman_secret_info", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.blindfold_secret_info_internal", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.secret_encoding_type", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.vault_secret_info", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.wingman_secret_info", + } + + mdr.RPCConfidentialRequestRegistry["ves.io.schema.ztna.API.Create"] = "ves.io.schema.ztna.CreateRequest" + + mdr.RPCHiddenInternalFieldsRegistry["ves.io.schema.ztna.API.Replace"] = []string{ + "spec.per_session.external_server.admin_password.blindfold_secret_info_internal", + "spec.per_session.external_server.admin_password.secret_encoding_type", + "spec.per_session.external_server.admin_password.vault_secret_info", + "spec.per_session.external_server.admin_password.wingman_secret_info", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.blindfold_secret_info_internal", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.secret_encoding_type", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.vault_secret_info", + "spec.per_session.sequence_action.next_action.log_on.customization.#.password.wingman_secret_info", + } + + mdr.RPCConfidentialRequestRegistry["ves.io.schema.ztna.API.Replace"] = "ves.io.schema.ztna.ReplaceRequest" + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + sm["ves.io.schema.ztna.API"] = "config" + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + + sm["config"] = svcfw.P0PolicyInfo{ + Name: "ves-io-allow-config", + ServiceSelector: "akar\\.gc.*\\", + } + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + + csr = mdr.PubCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.ztna.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.ztna.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.ztna.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.ztna.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ztna/public_crudapi.pb.go b/pbgo/extschema/schema/ztna/public_crudapi.pb.go new file mode 100644 index 000000000..1d2e05069 --- /dev/null +++ b/pbgo/extschema/schema/ztna/public_crudapi.pb.go @@ -0,0 +1,5452 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna/public_crudapi.proto + +// Ztna Policy +// +// x-displayName: "Ztna Policy" +// +// Represents schema for a ztna policy + +package ztna + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// GetResponseFormatCode +// +// x-displayName: "Get Response Format" +// This is the various forms that can be requested to be sent in the GetResponse +type GetResponseFormatCode int32 + +const ( + // x-displayName: "Default Format" + // Default format of returned resource + GET_RSP_FORMAT_DEFAULT GetResponseFormatCode = 0 + // x-displayName: "Create request Format" + // Response should be in CreateRequest format + GET_RSP_FORMAT_FOR_CREATE GetResponseFormatCode = 1 + // x-displayName: "Replace request format" + // Response should be in ReplaceRequest format + GET_RSP_FORMAT_FOR_REPLACE GetResponseFormatCode = 2 + // x-displayName: "Status format" + // Response should be in StatusObject(s) format + GET_RSP_FORMAT_STATUS GetResponseFormatCode = 3 + // x-displayName: "GetSpecType format" + // Response should be in format of GetSpecType + GET_RSP_FORMAT_READ GetResponseFormatCode = 4 + // x-displayName: "Referring Objects" + // Response should have other objects referring to this object + GET_RSP_FORMAT_REFERRING_OBJECTS GetResponseFormatCode = 5 + // x-displayName: "Broken Referred Objects" + // Response should have deleted and disabled objects referrred by this object + GET_RSP_FORMAT_BROKEN_REFERENCES GetResponseFormatCode = 6 +) + +var GetResponseFormatCode_name = map[int32]string{ + 0: "GET_RSP_FORMAT_DEFAULT", + 1: "GET_RSP_FORMAT_FOR_CREATE", + 2: "GET_RSP_FORMAT_FOR_REPLACE", + 3: "GET_RSP_FORMAT_STATUS", + 4: "GET_RSP_FORMAT_READ", + 5: "GET_RSP_FORMAT_REFERRING_OBJECTS", + 6: "GET_RSP_FORMAT_BROKEN_REFERENCES", +} + +var GetResponseFormatCode_value = map[string]int32{ + "GET_RSP_FORMAT_DEFAULT": 0, + "GET_RSP_FORMAT_FOR_CREATE": 1, + "GET_RSP_FORMAT_FOR_REPLACE": 2, + "GET_RSP_FORMAT_STATUS": 3, + "GET_RSP_FORMAT_READ": 4, + "GET_RSP_FORMAT_REFERRING_OBJECTS": 5, + "GET_RSP_FORMAT_BROKEN_REFERENCES": 6, +} + +func (GetResponseFormatCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{0} +} + +// CreateRequest is used to create an instance of ztna +// +// x-displayName: "Create Request" +// This is the input message of the 'Create' RPC +type CreateRequest struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes that can be set during create for all configuration objects like name, labels etc. + Metadata *schema.ObjectCreateMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object to be created + Spec *CreateSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *CreateRequest) Reset() { *m = CreateRequest{} } +func (*CreateRequest) ProtoMessage() {} +func (*CreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{0} +} +func (m *CreateRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateRequest.Merge(m, src) +} +func (m *CreateRequest) XXX_Size() int { + return m.Size() +} +func (m *CreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateRequest proto.InternalMessageInfo + +func (m *CreateRequest) GetMetadata() *schema.ObjectCreateMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *CreateRequest) GetSpec() *CreateSpecType { + if m != nil { + return m.Spec + } + return nil +} + +type CreateResponse struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata + // + // x-displayName: "System Metadata" + // System generated attributes all this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,3,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object created + Spec *GetSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *CreateResponse) Reset() { *m = CreateResponse{} } +func (*CreateResponse) ProtoMessage() {} +func (*CreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{1} +} +func (m *CreateResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateResponse.Merge(m, src) +} +func (m *CreateResponse) XXX_Size() int { + return m.Size() +} +func (m *CreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CreateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateResponse proto.InternalMessageInfo + +func (m *CreateResponse) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *CreateResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *CreateResponse) GetSpec() *GetSpecType { + if m != nil { + return m.Spec + } + return nil +} + +// ReplaceRequest is used to replace contents of a ztna +// +// x-displayName: "Replace Request" +// This is the input message of the 'Replace' RPC +type ReplaceRequest struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes that can be set during replace for all configuration objects like labels etc. + Metadata *schema.ObjectReplaceMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object to be replaced + Spec *ReplaceSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` + // resource_version + // + // x-displayName: "Resource Version" + // x-example: "42" + // If provided, do the replace operation if the configuration object is still at 'resource_version' + ResourceVersion string `protobuf:"bytes,3,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` +} + +func (m *ReplaceRequest) Reset() { *m = ReplaceRequest{} } +func (*ReplaceRequest) ProtoMessage() {} +func (*ReplaceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{2} +} +func (m *ReplaceRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceRequest.Merge(m, src) +} +func (m *ReplaceRequest) XXX_Size() int { + return m.Size() +} +func (m *ReplaceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceRequest proto.InternalMessageInfo + +func (m *ReplaceRequest) GetMetadata() *schema.ObjectReplaceMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ReplaceRequest) GetSpec() *ReplaceSpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ReplaceRequest) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +type ReplaceResponse struct { +} + +func (m *ReplaceResponse) Reset() { *m = ReplaceResponse{} } +func (*ReplaceResponse) ProtoMessage() {} +func (*ReplaceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{3} +} +func (m *ReplaceResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceResponse.Merge(m, src) +} +func (m *ReplaceResponse) XXX_Size() int { + return m.Size() +} +func (m *ReplaceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceResponse proto.InternalMessageInfo + +// GetRequest is used to get different forms of a ztna +// +// x-displayName: "Get Request" +// This is the input message of the 'Get' RPC. Different forms of a resource +// for e.g. a ReplaceRequest form (for editing), a CreateRequest form (for +// creating new instance of ztna) etc. can be fetched +type GetRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of the configuration object to be fetched + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // response_format + // + // x-displayName: "Response Format" + // The format in which the configuration object is to be fetched. This could be for example + // - in GetSpec form for the contents of object + // - in CreateRequest form to create a new similar object + // - to ReplaceRequest form to replace changeable values + ResponseFormat GetResponseFormatCode `protobuf:"varint,3,opt,name=response_format,json=responseFormat,proto3,enum=ves.io.schema.ztna.GetResponseFormatCode" json:"response_format,omitempty"` +} + +func (m *GetRequest) Reset() { *m = GetRequest{} } +func (*GetRequest) ProtoMessage() {} +func (*GetRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{4} +} +func (m *GetRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetRequest.Merge(m, src) +} +func (m *GetRequest) XXX_Size() int { + return m.Size() +} +func (m *GetRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetRequest proto.InternalMessageInfo + +func (m *GetRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *GetRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *GetRequest) GetResponseFormat() GetResponseFormatCode { + if m != nil { + return m.ResponseFormat + } + return GET_RSP_FORMAT_DEFAULT +} + +// GetResponse is the shape of a read ztna +// +// x-displayName: "Get Response" +// This is the output message of the 'Get' RPC +type GetResponse struct { + // create_form + // + // x-displayName: "CreateRequest Format" + // Format used to create a new similar object + CreateForm *CreateRequest `protobuf:"bytes,2,opt,name=create_form,json=createForm,proto3" json:"create_form,omitempty"` + // replace_form + // + // x-displayName: "ReplaceRequest Format" + // Format to replace changeable values in object + ReplaceForm *ReplaceRequest `protobuf:"bytes,3,opt,name=replace_form,json=replaceForm,proto3" json:"replace_form,omitempty"` + // resource_version + // + // x-displayName: "Resource Version" + // x-example: "42" + // Version of the object + ResourceVersion string `protobuf:"bytes,4,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata + // + // x-displayName: "System Metadata" + // System generated attributes of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,7,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object read + Spec *GetSpecType `protobuf:"bytes,6,opt,name=spec,proto3" json:"spec,omitempty"` + // status + // + // x-displayName: "Status" + // The status reported by different services for this configuration object + Status []*StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` + // referring_objects + // + // x-displayName: "Referring Objects" + // The set of objects that are referring to this object in their spec + ReferringObjects []*schema.ObjectRefType `protobuf:"bytes,8,rep,name=referring_objects,json=referringObjects,proto3" json:"referring_objects,omitempty"` + // deleted_referred_objects + // + // x-displayName: "Deleted Referred Objects" + // The set of deleted objects that are referred by this object + DeletedReferredObjects []*schema.ObjectRefType `protobuf:"bytes,9,rep,name=deleted_referred_objects,json=deletedReferredObjects,proto3" json:"deleted_referred_objects,omitempty"` + // disabled_referred_objects + // + // x-displayName: "Disabled Referred Objects" + // The set of deleted objects that are referred by this object + DisabledReferredObjects []*schema.ObjectRefType `protobuf:"bytes,10,rep,name=disabled_referred_objects,json=disabledReferredObjects,proto3" json:"disabled_referred_objects,omitempty"` +} + +func (m *GetResponse) Reset() { *m = GetResponse{} } +func (*GetResponse) ProtoMessage() {} +func (*GetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{5} +} +func (m *GetResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetResponse.Merge(m, src) +} +func (m *GetResponse) XXX_Size() int { + return m.Size() +} +func (m *GetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GetResponse proto.InternalMessageInfo + +func (m *GetResponse) GetCreateForm() *CreateRequest { + if m != nil { + return m.CreateForm + } + return nil +} + +func (m *GetResponse) GetReplaceForm() *ReplaceRequest { + if m != nil { + return m.ReplaceForm + } + return nil +} + +func (m *GetResponse) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *GetResponse) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *GetResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *GetResponse) GetSpec() *GetSpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *GetResponse) GetStatus() []*StatusObject { + if m != nil { + return m.Status + } + return nil +} + +func (m *GetResponse) GetReferringObjects() []*schema.ObjectRefType { + if m != nil { + return m.ReferringObjects + } + return nil +} + +func (m *GetResponse) GetDeletedReferredObjects() []*schema.ObjectRefType { + if m != nil { + return m.DeletedReferredObjects + } + return nil +} + +func (m *GetResponse) GetDisabledReferredObjects() []*schema.ObjectRefType { + if m != nil { + return m.DisabledReferredObjects + } + return nil +} + +// ListRequest is used to get a collection of ztna +// +// x-displayName: "List Request" +// This is the input message of the 'List' RPC. Fields can be used to control +// scope and filtering of collection. +type ListRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace to scope the listing of ztna + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // label_filter + // + // x-displayName: "Label Filter" + // x-example: "env in (staging, testing), tier in (web, db)" + // A LabelSelectorType expression that every item in list response will satisfy + LabelFilter string `protobuf:"bytes,2,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // report_fields + // + // x-displayName: "Report Fields" + // x-example: "" + // Extra fields to return along with summary fields + ReportFields []string `protobuf:"bytes,3,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // report_status_fields + // + // x-displayName: "Report Status Fields" + // x-example: "" + // Extra status fields to return along with summary fields + ReportStatusFields []string `protobuf:"bytes,4,rep,name=report_status_fields,json=reportStatusFields,proto3" json:"report_status_fields,omitempty"` +} + +func (m *ListRequest) Reset() { *m = ListRequest{} } +func (*ListRequest) ProtoMessage() {} +func (*ListRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{6} +} +func (m *ListRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListRequest.Merge(m, src) +} +func (m *ListRequest) XXX_Size() int { + return m.Size() +} +func (m *ListRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ListRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ListRequest proto.InternalMessageInfo + +func (m *ListRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListRequest) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ListRequest) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ListRequest) GetReportStatusFields() []string { + if m != nil { + return m.ReportStatusFields + } + return nil +} + +// ListResponseItem is an individual item in a collection of ztna +// +// x-displayName: "List Item" +// By default a summary of ztna is returned in 'List'. By setting +// 'report_fields' in the ListRequest more details of each item can be got. +type ListResponseItem struct { + // tenant + // + // x-displayName: "Tenant" + // x-example: "acmecorp" + // The tenant this item belongs to + Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace this item belongs to + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of this ztna + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // uid + // + // x-displayName: "UID" + // x-example: "d27938ba-967e-40a7-9709-57b8627f9f75" + // The unique uid of this ztna + Uid string `protobuf:"bytes,3,opt,name=uid,proto3" json:"uid,omitempty"` + // description + // + // x-displayName: "Description" + // The description set for this ztna + Description string `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"` + // disabled + // + // x-displayName: "Disabled" + // A value of true indicates ztna is administratively disabled + Disabled bool `protobuf:"varint,12,opt,name=disabled,proto3" json:"disabled,omitempty"` + // labels + // + // x-displayName: "Labels" + // The set of labels present on this ztna + Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // annotations + // + // x-displayName: "Annotations" + // The set of annotations present on this ztna + Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // owner_view + // + // x-displayName: "Owner View" + // Reference to the view object that owns this object. + // If there is no view owner, this field will be nil. + // If not nil, this object can only be edited/deleted through the view + OwnerView *schema.ViewRefType `protobuf:"bytes,9,opt,name=owner_view,json=ownerView,proto3" json:"owner_view,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // If list request has report_fields set then metadata will + // contain all the metadata associated with the object. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,13,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // If list request has report_fields set then system_metadata will + // contain all the system generated details of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,14,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // get_spec + // + // x-displayName: "Get Specification" + // If ListRequest has any specified report_fields, it will appear in object + GetSpec *GetSpecType `protobuf:"bytes,7,opt,name=get_spec,json=getSpec,proto3" json:"get_spec,omitempty"` + // status + // + // x-displayName: "Status" + // The status reported by different services for this configuration object + StatusSet []*StatusObject `protobuf:"bytes,8,rep,name=status_set,json=statusSet,proto3" json:"status_set,omitempty"` +} + +func (m *ListResponseItem) Reset() { *m = ListResponseItem{} } +func (*ListResponseItem) ProtoMessage() {} +func (*ListResponseItem) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{7} +} +func (m *ListResponseItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListResponseItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListResponseItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListResponseItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponseItem.Merge(m, src) +} +func (m *ListResponseItem) XXX_Size() int { + return m.Size() +} +func (m *ListResponseItem) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponseItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ListResponseItem proto.InternalMessageInfo + +func (m *ListResponseItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ListResponseItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListResponseItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ListResponseItem) GetUid() string { + if m != nil { + return m.Uid + } + return "" +} + +func (m *ListResponseItem) GetDescription() string { + if m != nil { + return m.Description + } + return "" +} + +func (m *ListResponseItem) GetDisabled() bool { + if m != nil { + return m.Disabled + } + return false +} + +func (m *ListResponseItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +func (m *ListResponseItem) GetAnnotations() map[string]string { + if m != nil { + return m.Annotations + } + return nil +} + +func (m *ListResponseItem) GetOwnerView() *schema.ViewRefType { + if m != nil { + return m.OwnerView + } + return nil +} + +func (m *ListResponseItem) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ListResponseItem) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ListResponseItem) GetGetSpec() *GetSpecType { + if m != nil { + return m.GetSpec + } + return nil +} + +func (m *ListResponseItem) GetStatusSet() []*StatusObject { + if m != nil { + return m.StatusSet + } + return nil +} + +// ListResponse is the collection of ztna +// +// x-displayName: "List Response" +// This is the output message of 'List' RPC. +type ListResponse struct { + // items + // + // x-displayName: "Items" + // items represents the collection in response + Items []*ListResponseItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` + // errors + // + // x-displayName: "Errors" + // Errors(if any) while listing items from collection + Errors []*schema.ErrorType `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` +} + +func (m *ListResponse) Reset() { *m = ListResponse{} } +func (*ListResponse) ProtoMessage() {} +func (*ListResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{8} +} +func (m *ListResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponse.Merge(m, src) +} +func (m *ListResponse) XXX_Size() int { + return m.Size() +} +func (m *ListResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ListResponse proto.InternalMessageInfo + +func (m *ListResponse) GetItems() []*ListResponseItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ListResponse) GetErrors() []*schema.ErrorType { + if m != nil { + return m.Errors + } + return nil +} + +// DeleteRequest is used to delete a ztna +// +// x-displayName: "Delete Request" +// This is the input message of the 'Delete' RPC. +type DeleteRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // Name of the configuration object + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // fail_if_referred + // + // x-displayName: "Fail-If-Referred" + // Fail the delete operation if this object is being referred by other objects + FailIfReferred bool `protobuf:"varint,3,opt,name=fail_if_referred,json=failIfReferred,proto3" json:"fail_if_referred,omitempty"` +} + +func (m *DeleteRequest) Reset() { *m = DeleteRequest{} } +func (*DeleteRequest) ProtoMessage() {} +func (*DeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_17ad10d27c49c9b4, []int{9} +} +func (m *DeleteRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DeleteRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteRequest.Merge(m, src) +} +func (m *DeleteRequest) XXX_Size() int { + return m.Size() +} +func (m *DeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo + +func (m *DeleteRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *DeleteRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *DeleteRequest) GetFailIfReferred() bool { + if m != nil { + return m.FailIfReferred + } + return false +} + +func init() { + proto.RegisterEnum("ves.io.schema.ztna.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + golang_proto.RegisterEnum("ves.io.schema.ztna.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.ztna.CreateRequest") + golang_proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.ztna.CreateRequest") + proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.ztna.CreateResponse") + golang_proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.ztna.CreateResponse") + proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.ztna.ReplaceRequest") + golang_proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.ztna.ReplaceRequest") + proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.ztna.ReplaceResponse") + golang_proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.ztna.ReplaceResponse") + proto.RegisterType((*GetRequest)(nil), "ves.io.schema.ztna.GetRequest") + golang_proto.RegisterType((*GetRequest)(nil), "ves.io.schema.ztna.GetRequest") + proto.RegisterType((*GetResponse)(nil), "ves.io.schema.ztna.GetResponse") + golang_proto.RegisterType((*GetResponse)(nil), "ves.io.schema.ztna.GetResponse") + proto.RegisterType((*ListRequest)(nil), "ves.io.schema.ztna.ListRequest") + golang_proto.RegisterType((*ListRequest)(nil), "ves.io.schema.ztna.ListRequest") + proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.ztna.ListResponseItem") + golang_proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.ztna.ListResponseItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna.ListResponseItem.AnnotationsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna.ListResponseItem.AnnotationsEntry") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna.ListResponseItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna.ListResponseItem.LabelsEntry") + proto.RegisterType((*ListResponse)(nil), "ves.io.schema.ztna.ListResponse") + golang_proto.RegisterType((*ListResponse)(nil), "ves.io.schema.ztna.ListResponse") + proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.ztna.DeleteRequest") + golang_proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.ztna.DeleteRequest") +} + +func init() { + proto.RegisterFile("ves.io/schema/ztna/public_crudapi.proto", fileDescriptor_17ad10d27c49c9b4) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna/public_crudapi.proto", fileDescriptor_17ad10d27c49c9b4) +} + +var fileDescriptor_17ad10d27c49c9b4 = []byte{ + // 1566 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcf, 0x6f, 0xdb, 0xc6, + 0x12, 0xf6, 0x4a, 0xb2, 0x2c, 0xad, 0xfc, 0x83, 0xd9, 0x97, 0x38, 0x32, 0x5f, 0x1e, 0xad, 0xd0, + 0x46, 0x9e, 0x9f, 0x1f, 0x44, 0x19, 0x2e, 0x0a, 0x34, 0x46, 0x9b, 0x54, 0xb2, 0x69, 0xc7, 0xa9, + 0x63, 0x07, 0x2b, 0x39, 0x29, 0x7a, 0x21, 0x28, 0x69, 0xa5, 0xb0, 0x91, 0x44, 0x96, 0x5c, 0xd9, + 0x75, 0x5b, 0x03, 0x45, 0x8e, 0x3d, 0x15, 0xed, 0xa1, 0x68, 0x90, 0x02, 0x3d, 0xb4, 0x40, 0xfe, + 0x84, 0x02, 0xbe, 0xe4, 0x96, 0x20, 0x87, 0x22, 0x68, 0x2f, 0x3e, 0x36, 0x72, 0x0f, 0xb9, 0x14, + 0x08, 0xfa, 0x17, 0x14, 0xdc, 0x25, 0x15, 0x49, 0xa6, 0x63, 0x39, 0xc9, 0x49, 0xe4, 0xcc, 0x7c, + 0x1f, 0xbf, 0xd9, 0xd9, 0x19, 0xed, 0xc2, 0xff, 0x6e, 0x11, 0x47, 0x31, 0xcc, 0x8c, 0x53, 0xba, + 0x45, 0xea, 0x7a, 0xe6, 0x33, 0xda, 0xd0, 0x33, 0x56, 0xb3, 0x58, 0x33, 0x4a, 0x5a, 0xc9, 0x6e, + 0x96, 0x75, 0xcb, 0x50, 0x2c, 0xdb, 0xa4, 0x26, 0x42, 0x3c, 0x50, 0xe1, 0x81, 0x8a, 0x1b, 0x28, + 0xa6, 0xab, 0x06, 0xbd, 0xd5, 0x2c, 0x2a, 0x25, 0xb3, 0x9e, 0xa9, 0x9a, 0x55, 0x33, 0xc3, 0x42, + 0x8b, 0xcd, 0x0a, 0x7b, 0x63, 0x2f, 0xec, 0x89, 0x53, 0x88, 0xe7, 0xaa, 0xa6, 0x59, 0xad, 0x91, + 0x8c, 0x6e, 0x19, 0x19, 0xbd, 0xd1, 0x30, 0xa9, 0x4e, 0x0d, 0xb3, 0xe1, 0x78, 0xde, 0x7f, 0x7b, + 0xde, 0x36, 0x07, 0xa9, 0x5b, 0x74, 0xc7, 0x73, 0x8a, 0xdd, 0x32, 0x89, 0x6d, 0x9b, 0x76, 0x1b, + 0xd8, 0xed, 0x33, 0xad, 0x4e, 0xd6, 0x89, 0x6e, 0x27, 0xdd, 0xb1, 0x88, 0xef, 0x92, 0xbb, 0x5d, + 0x5b, 0xc4, 0x21, 0x8d, 0xad, 0x1e, 0x78, 0xaa, 0x27, 0xc6, 0x20, 0xdb, 0x5a, 0x77, 0xc4, 0x64, + 0xc0, 0x02, 0x9a, 0xc5, 0x8f, 0x49, 0x89, 0x7a, 0x01, 0x52, 0x40, 0x40, 0x87, 0x0c, 0xf9, 0x27, + 0x00, 0x47, 0x16, 0x6d, 0xa2, 0x53, 0x82, 0xc9, 0x27, 0x4d, 0xe2, 0x50, 0x74, 0x19, 0xc6, 0xea, + 0x84, 0xea, 0x65, 0x9d, 0xea, 0x49, 0x90, 0x02, 0x33, 0x89, 0xf9, 0x29, 0xa5, 0x7b, 0xf5, 0x37, + 0xd8, 0x07, 0x38, 0xea, 0x1a, 0xa1, 0x7a, 0x61, 0xc7, 0x22, 0xb8, 0x0d, 0x42, 0x2b, 0x30, 0xe2, + 0x58, 0xa4, 0x94, 0x0c, 0x31, 0xb0, 0xac, 0x1c, 0x2e, 0x9d, 0xc2, 0xb1, 0x79, 0x8b, 0x94, 0x5c, + 0x6c, 0x6e, 0xec, 0xee, 0xee, 0xb0, 0x0b, 0x51, 0xaa, 0x25, 0xcd, 0xfd, 0xc5, 0x8c, 0x60, 0x21, + 0xfe, 0xf8, 0x52, 0x94, 0x7f, 0x4b, 0x7e, 0x0e, 0xe0, 0xa8, 0x2f, 0xd3, 0xb1, 0xcc, 0x86, 0x43, + 0xd0, 0xbb, 0x87, 0x74, 0xa6, 0x02, 0x75, 0xae, 0x10, 0x1a, 0x20, 0x72, 0x03, 0x8e, 0x39, 0x3b, + 0x0e, 0x25, 0x75, 0xad, 0x4d, 0x12, 0x66, 0x24, 0x17, 0x7a, 0x48, 0xf2, 0x2c, 0xea, 0x30, 0xd5, + 0x28, 0x87, 0x5f, 0xf3, 0x09, 0x97, 0xba, 0xb2, 0x9e, 0x0c, 0xca, 0x7a, 0x85, 0xd0, 0x13, 0xa4, + 0xbc, 0x0f, 0xe0, 0x28, 0x26, 0x56, 0x4d, 0x2f, 0xb5, 0x4b, 0xf3, 0xfe, 0xa1, 0x94, 0xa7, 0x03, + 0x53, 0xf6, 0x60, 0x01, 0x69, 0x5f, 0xe9, 0x52, 0x39, 0x15, 0xa4, 0xd2, 0x03, 0x1f, 0xa3, 0x14, + 0x65, 0xa0, 0x60, 0x13, 0xc7, 0x6c, 0xda, 0x25, 0xa2, 0x6d, 0x11, 0xdb, 0x31, 0xcc, 0x06, 0x5b, + 0xc1, 0x78, 0x2e, 0xf2, 0x6c, 0x0f, 0x00, 0x3c, 0xe6, 0x7b, 0x6f, 0x70, 0x67, 0x67, 0x6a, 0xa7, + 0xe0, 0x58, 0x3b, 0x33, 0x5e, 0x4d, 0xf9, 0x1b, 0x00, 0xe1, 0x0a, 0xa1, 0x7e, 0xa6, 0xe7, 0x60, + 0xbc, 0xa1, 0xd7, 0x89, 0x63, 0xe9, 0x25, 0xc2, 0x52, 0x8d, 0xe3, 0x17, 0x06, 0x84, 0x60, 0xc4, + 0x7d, 0x61, 0x59, 0xc4, 0x31, 0x7b, 0x46, 0x18, 0xba, 0x5f, 0x64, 0x64, 0x5a, 0xc5, 0xb4, 0xeb, + 0x3a, 0x65, 0x72, 0x46, 0xe7, 0xff, 0x77, 0x44, 0x29, 0xfc, 0x4f, 0x2f, 0xb3, 0xe0, 0x45, 0xb3, + 0x4c, 0xf0, 0xa8, 0xdd, 0x65, 0x93, 0xff, 0x1a, 0x84, 0x89, 0x8e, 0x48, 0x94, 0x83, 0x89, 0x12, + 0xdb, 0x84, 0xec, 0x0b, 0xde, 0x22, 0x9e, 0x3f, 0x7a, 0x83, 0x7b, 0xd9, 0x60, 0xc8, 0x51, 0x2e, + 0x2b, 0x52, 0xe1, 0xb0, 0xcd, 0x73, 0xe7, 0x24, 0xe1, 0xa3, 0xbb, 0xa4, 0xbb, 0xfa, 0x38, 0xe1, + 0xe1, 0x18, 0x4d, 0xd0, 0xf2, 0x47, 0x5e, 0xb2, 0xfc, 0x5d, 0xed, 0x32, 0xf8, 0x26, 0xda, 0x65, + 0xe8, 0x8d, 0xb4, 0x4b, 0xf4, 0x75, 0xda, 0x05, 0x5d, 0x86, 0x51, 0x87, 0xea, 0xb4, 0xe9, 0x24, + 0x7f, 0xbc, 0x07, 0x52, 0xe1, 0x80, 0xa4, 0x18, 0x53, 0x9e, 0xc5, 0x70, 0x51, 0xb9, 0xf0, 0x83, + 0x5d, 0x80, 0x3d, 0x18, 0x5a, 0x85, 0xa7, 0x6c, 0x52, 0x21, 0xb6, 0x6d, 0x34, 0xaa, 0x1a, 0x1f, + 0x9c, 0x4e, 0x32, 0xc6, 0x98, 0xce, 0x1d, 0xd1, 0x5a, 0x15, 0x96, 0x8f, 0xd0, 0x86, 0x71, 0xbb, + 0x83, 0x6e, 0xc0, 0x64, 0x99, 0xd4, 0x08, 0x25, 0x65, 0x8d, 0xfb, 0x48, 0xb9, 0xcd, 0x18, 0xef, + 0x83, 0x71, 0xdc, 0x43, 0x63, 0x0f, 0xec, 0xf3, 0x7e, 0x08, 0x27, 0xca, 0x86, 0xa3, 0x17, 0x6b, + 0x41, 0xc4, 0xb0, 0x0f, 0xe2, 0xb3, 0x3e, 0xbc, 0x87, 0xb9, 0xa3, 0x23, 0xaf, 0x46, 0x62, 0x40, + 0x08, 0xc9, 0x3f, 0x03, 0x98, 0x58, 0x33, 0x9c, 0x3e, 0xbb, 0xf0, 0x3c, 0x1c, 0xae, 0xe9, 0x45, + 0x52, 0xd3, 0x2a, 0x46, 0x8d, 0x12, 0xdb, 0xeb, 0xc6, 0x04, 0xb3, 0x2d, 0x33, 0x13, 0x9a, 0x82, + 0x23, 0x36, 0xb1, 0x4c, 0x9b, 0x6a, 0x15, 0x83, 0xd4, 0xca, 0x4e, 0x32, 0x9c, 0x0a, 0xcf, 0xc4, + 0xf1, 0x30, 0x37, 0x2e, 0x33, 0x1b, 0x9a, 0x83, 0xa7, 0xbd, 0x20, 0x5e, 0x14, 0x3f, 0x36, 0xc2, + 0x62, 0x11, 0xf7, 0xf1, 0x12, 0x72, 0x84, 0x7c, 0x2f, 0x0a, 0x05, 0xae, 0x93, 0x37, 0xe6, 0x2a, + 0x25, 0x75, 0x34, 0x0e, 0xa3, 0x94, 0x34, 0xf4, 0x06, 0x65, 0x7b, 0x2a, 0x8e, 0xbd, 0xb7, 0x57, + 0x18, 0x25, 0x02, 0x0c, 0x37, 0x8d, 0x32, 0x9f, 0x66, 0xd8, 0x7d, 0x44, 0x29, 0x98, 0x28, 0x13, + 0xa7, 0x64, 0x1b, 0xec, 0xcf, 0x37, 0x99, 0xe0, 0x99, 0x76, 0x98, 0x90, 0x08, 0x63, 0xfe, 0x32, + 0x27, 0x87, 0x53, 0x60, 0x26, 0x86, 0xdb, 0xef, 0xe8, 0x0a, 0x8c, 0xb2, 0x45, 0xe1, 0x29, 0x25, + 0xe6, 0xe7, 0x82, 0xf6, 0x68, 0x6f, 0x3e, 0xca, 0x1a, 0x83, 0xa8, 0x0d, 0x6a, 0xef, 0x60, 0x0f, + 0x8f, 0x6e, 0xc2, 0x44, 0xc7, 0xd1, 0xc5, 0xab, 0xfe, 0xdb, 0x7d, 0xd1, 0x65, 0x5f, 0xe0, 0x38, + 0x67, 0x27, 0x13, 0xba, 0x08, 0xa1, 0xb9, 0xdd, 0x20, 0xb6, 0xe6, 0x9e, 0x31, 0x92, 0x71, 0xd6, + 0x94, 0x62, 0x0f, 0xef, 0x0d, 0x83, 0x6c, 0xfb, 0x7b, 0x2a, 0xce, 0xa2, 0x5d, 0x4b, 0xd7, 0x60, + 0x19, 0x79, 0x13, 0x83, 0x65, 0xf4, 0xb5, 0x06, 0xcb, 0x02, 0x8c, 0x55, 0x09, 0x65, 0x43, 0xc2, + 0x1b, 0x51, 0xc7, 0x0d, 0x17, 0x3c, 0x54, 0xe5, 0x2f, 0x68, 0x09, 0x42, 0x6f, 0x0b, 0x3a, 0x84, + 0x7a, 0x63, 0xa0, 0xcf, 0x81, 0x12, 0xe7, 0xc0, 0x3c, 0xa1, 0xe2, 0x45, 0x98, 0xe8, 0xa8, 0x9d, + 0xbb, 0x9b, 0x6e, 0x93, 0x1d, 0x6f, 0xe7, 0xb9, 0x8f, 0xe8, 0x34, 0x1c, 0xdc, 0xd2, 0x6b, 0x4d, + 0x7f, 0xd3, 0xf1, 0x97, 0x85, 0xd0, 0x3b, 0x40, 0xbc, 0x04, 0x85, 0xde, 0x3a, 0x9d, 0x04, 0x7f, + 0x35, 0x12, 0x1b, 0x14, 0xa2, 0xf2, 0x17, 0x70, 0xb8, 0xb3, 0xfc, 0x68, 0x01, 0x0e, 0x1a, 0x94, + 0xd4, 0x9d, 0x24, 0x1f, 0x91, 0xd3, 0xfd, 0xec, 0x17, 0xcc, 0x21, 0x68, 0x0e, 0x46, 0xf9, 0x71, + 0x37, 0x19, 0x62, 0xe0, 0x64, 0x0f, 0x58, 0x75, 0x9d, 0x6c, 0x15, 0xbd, 0x38, 0xf9, 0x36, 0x1c, + 0x59, 0x62, 0x93, 0xec, 0xd5, 0xff, 0xcb, 0x67, 0xa0, 0x50, 0xd1, 0x8d, 0x9a, 0x66, 0x54, 0xda, + 0x13, 0x8f, 0x75, 0x63, 0x0c, 0x8f, 0xba, 0xf6, 0xd5, 0x8a, 0x3f, 0xc9, 0x66, 0xff, 0x06, 0xf0, + 0x4c, 0xe0, 0x7f, 0x39, 0x12, 0xe1, 0xf8, 0x8a, 0x5a, 0xd0, 0x70, 0xfe, 0xba, 0xb6, 0xbc, 0x81, + 0xaf, 0x65, 0x0b, 0xda, 0x92, 0xba, 0x9c, 0xdd, 0x5c, 0x2b, 0x08, 0x03, 0xe8, 0x3f, 0x70, 0xa2, + 0xc7, 0xb7, 0xbc, 0x81, 0xb5, 0x45, 0xac, 0x66, 0x0b, 0xaa, 0x00, 0x90, 0x04, 0xc5, 0x00, 0x37, + 0x56, 0xaf, 0xaf, 0x65, 0x17, 0x55, 0x21, 0x84, 0x26, 0xe0, 0x99, 0x1e, 0x7f, 0xbe, 0x90, 0x2d, + 0x6c, 0xe6, 0x85, 0x30, 0x3a, 0x0b, 0xff, 0xd5, 0xe3, 0xc2, 0x6a, 0x76, 0x49, 0x88, 0xa0, 0x69, + 0x98, 0x3a, 0xe4, 0x58, 0x56, 0x31, 0x5e, 0x5d, 0x5f, 0xd1, 0x36, 0x72, 0x57, 0xd5, 0xc5, 0x42, + 0x5e, 0x18, 0x0c, 0x88, 0xca, 0xe1, 0x8d, 0x0f, 0xd4, 0x75, 0x1e, 0xac, 0xae, 0x2f, 0xaa, 0x79, + 0x21, 0x3a, 0xff, 0xdd, 0x10, 0x0c, 0x67, 0xaf, 0xaf, 0xa2, 0xfb, 0x00, 0x46, 0xf9, 0x41, 0x03, + 0x1d, 0x7f, 0x08, 0x11, 0xe5, 0x97, 0x85, 0x78, 0xa7, 0xb0, 0x9b, 0xad, 0x87, 0x49, 0xf7, 0x42, + 0x93, 0x36, 0xcc, 0xb4, 0xd1, 0xa8, 0xd8, 0xba, 0x43, 0xed, 0x66, 0x89, 0x36, 0x6d, 0x92, 0xde, + 0xb6, 0x0d, 0x4a, 0xee, 0xfc, 0xfe, 0xe7, 0xb7, 0xa1, 0x79, 0x39, 0xed, 0x5d, 0xd2, 0x32, 0xed, + 0x32, 0x3a, 0x99, 0xcf, 0xfd, 0xfe, 0x55, 0xda, 0xc6, 0x5d, 0x76, 0xdd, 0x70, 0x16, 0xc0, 0x2c, + 0xfa, 0x01, 0xc0, 0xf0, 0x0a, 0xa1, 0x48, 0x3a, 0xf2, 0x30, 0xc6, 0x45, 0x4e, 0x1e, 0x73, 0x58, + 0x93, 0x37, 0x1f, 0xfd, 0x12, 0x02, 0xad, 0x87, 0x49, 0x31, 0x58, 0xa5, 0x4d, 0xf4, 0x32, 0x13, + 0x99, 0x46, 0xff, 0x0f, 0x12, 0xd9, 0xab, 0x8d, 0x5b, 0x76, 0xd1, 0xf7, 0x00, 0x46, 0xdc, 0x16, + 0x40, 0x93, 0x47, 0x37, 0x07, 0x57, 0x98, 0x3a, 0xae, 0x7b, 0xe4, 0xf5, 0x3e, 0x25, 0x5e, 0x40, + 0xd3, 0xfd, 0x48, 0x44, 0x7b, 0x00, 0x0e, 0x79, 0x47, 0x41, 0xd4, 0xc7, 0x39, 0x51, 0x9c, 0x7a, + 0x69, 0x8c, 0x27, 0xb2, 0xda, 0x4f, 0xa5, 0x73, 0xe2, 0x7b, 0x27, 0xaa, 0x74, 0x8f, 0x6b, 0xd7, + 0xad, 0xfc, 0x5d, 0x00, 0xa3, 0x7c, 0x1e, 0x04, 0x6f, 0xd2, 0xae, 0x59, 0x21, 0x8e, 0x2b, 0xfc, + 0x1e, 0xae, 0xf8, 0xf7, 0x70, 0x45, 0x75, 0xef, 0xe1, 0xf2, 0x66, 0x3f, 0x72, 0xe7, 0x66, 0x4f, + 0x52, 0xf3, 0x05, 0x30, 0x2b, 0xae, 0x3f, 0xd8, 0x03, 0xa1, 0xdf, 0xf6, 0xc0, 0x44, 0x80, 0x30, + 0x3e, 0xdd, 0xf7, 0xf7, 0x00, 0x68, 0xed, 0x81, 0xc9, 0x63, 0xfe, 0x04, 0xee, 0xfc, 0x9a, 0x0c, + 0x09, 0x20, 0xf7, 0x15, 0x78, 0x7c, 0x69, 0x70, 0x11, 0x6f, 0x2e, 0xad, 0x3d, 0x79, 0x2a, 0x0d, + 0xec, 0x3f, 0x95, 0x06, 0x9e, 0x3f, 0x95, 0xc0, 0x97, 0x2d, 0x09, 0xdc, 0x6f, 0x49, 0xe0, 0x51, + 0x4b, 0x02, 0x4f, 0x5a, 0x12, 0xf8, 0xa3, 0x25, 0x81, 0x67, 0x2d, 0x69, 0xe0, 0x79, 0x4b, 0x02, + 0x5f, 0x1f, 0x48, 0x03, 0x0f, 0x0e, 0x24, 0xf0, 0xe4, 0x40, 0x1a, 0xd8, 0x3f, 0x90, 0x06, 0x3e, + 0xba, 0x52, 0x35, 0xad, 0xdb, 0x55, 0x65, 0xcb, 0x74, 0x0f, 0x50, 0xb6, 0xae, 0x34, 0x9d, 0x0c, + 0x7b, 0x70, 0x2f, 0x0b, 0x69, 0xcb, 0x36, 0xb7, 0x8c, 0x32, 0xb1, 0xd3, 0xbe, 0x3b, 0x63, 0x15, + 0xab, 0x66, 0x86, 0x7c, 0x4a, 0xbd, 0xfb, 0x7d, 0xc7, 0x35, 0xbf, 0x18, 0x65, 0x6b, 0xf8, 0xd6, + 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x61, 0x7f, 0x8b, 0x2c, 0x65, 0x11, 0x00, 0x00, +} + +func (x GetResponseFormatCode) String() string { + s, ok := GetResponseFormatCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *CreateRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateRequest) + if !ok { + that2, ok := that.(CreateRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *CreateResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateResponse) + if !ok { + that2, ok := that.(CreateResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ReplaceRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceRequest) + if !ok { + that2, ok := that.(ReplaceRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + return true +} +func (this *ReplaceResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceResponse) + if !ok { + that2, ok := that.(ReplaceResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *GetRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetRequest) + if !ok { + that2, ok := that.(GetRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.ResponseFormat != that1.ResponseFormat { + return false + } + return true +} +func (this *GetResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetResponse) + if !ok { + that2, ok := that.(GetResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CreateForm.Equal(that1.CreateForm) { + return false + } + if !this.ReplaceForm.Equal(that1.ReplaceForm) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + if len(this.ReferringObjects) != len(that1.ReferringObjects) { + return false + } + for i := range this.ReferringObjects { + if !this.ReferringObjects[i].Equal(that1.ReferringObjects[i]) { + return false + } + } + if len(this.DeletedReferredObjects) != len(that1.DeletedReferredObjects) { + return false + } + for i := range this.DeletedReferredObjects { + if !this.DeletedReferredObjects[i].Equal(that1.DeletedReferredObjects[i]) { + return false + } + } + if len(this.DisabledReferredObjects) != len(that1.DisabledReferredObjects) { + return false + } + for i := range this.DisabledReferredObjects { + if !this.DisabledReferredObjects[i].Equal(that1.DisabledReferredObjects[i]) { + return false + } + } + return true +} +func (this *ListRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListRequest) + if !ok { + that2, ok := that.(ListRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if len(this.ReportStatusFields) != len(that1.ReportStatusFields) { + return false + } + for i := range this.ReportStatusFields { + if this.ReportStatusFields[i] != that1.ReportStatusFields[i] { + return false + } + } + return true +} +func (this *ListResponseItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListResponseItem) + if !ok { + that2, ok := that.(ListResponseItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.Uid != that1.Uid { + return false + } + if this.Description != that1.Description { + return false + } + if this.Disabled != that1.Disabled { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + if len(this.Annotations) != len(that1.Annotations) { + return false + } + for i := range this.Annotations { + if this.Annotations[i] != that1.Annotations[i] { + return false + } + } + if !this.OwnerView.Equal(that1.OwnerView) { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.GetSpec.Equal(that1.GetSpec) { + return false + } + if len(this.StatusSet) != len(that1.StatusSet) { + return false + } + for i := range this.StatusSet { + if !this.StatusSet[i].Equal(that1.StatusSet[i]) { + return false + } + } + return true +} +func (this *ListResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListResponse) + if !ok { + that2, ok := that.(ListResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if len(this.Errors) != len(that1.Errors) { + return false + } + for i := range this.Errors { + if !this.Errors[i].Equal(that1.Errors[i]) { + return false + } + } + return true +} +func (this *DeleteRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DeleteRequest) + if !ok { + that2, ok := that.(DeleteRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.FailIfReferred != that1.FailIfReferred { + return false + } + return true +} +func (this *CreateRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.CreateRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.CreateResponse{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.ReplaceRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&ztna.ReplaceResponse{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.GetRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "ResponseFormat: "+fmt.Sprintf("%#v", this.ResponseFormat)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 14) + s = append(s, "&ztna.GetResponse{") + if this.CreateForm != nil { + s = append(s, "CreateForm: "+fmt.Sprintf("%#v", this.CreateForm)+",\n") + } + if this.ReplaceForm != nil { + s = append(s, "ReplaceForm: "+fmt.Sprintf("%#v", this.ReplaceForm)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + if this.ReferringObjects != nil { + s = append(s, "ReferringObjects: "+fmt.Sprintf("%#v", this.ReferringObjects)+",\n") + } + if this.DeletedReferredObjects != nil { + s = append(s, "DeletedReferredObjects: "+fmt.Sprintf("%#v", this.DeletedReferredObjects)+",\n") + } + if this.DisabledReferredObjects != nil { + s = append(s, "DisabledReferredObjects: "+fmt.Sprintf("%#v", this.DisabledReferredObjects)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.ListRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ReportStatusFields: "+fmt.Sprintf("%#v", this.ReportStatusFields)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponseItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 17) + s = append(s, "&ztna.ListResponseItem{") + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Uid: "+fmt.Sprintf("%#v", this.Uid)+",\n") + s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") + s = append(s, "Disabled: "+fmt.Sprintf("%#v", this.Disabled)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + if this.Annotations != nil { + s = append(s, "Annotations: "+mapStringForAnnotations+",\n") + } + if this.OwnerView != nil { + s = append(s, "OwnerView: "+fmt.Sprintf("%#v", this.OwnerView)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.GetSpec != nil { + s = append(s, "GetSpec: "+fmt.Sprintf("%#v", this.GetSpec)+",\n") + } + if this.StatusSet != nil { + s = append(s, "StatusSet: "+fmt.Sprintf("%#v", this.StatusSet)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.ListResponse{") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Errors != nil { + s = append(s, "Errors: "+fmt.Sprintf("%#v", this.Errors)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DeleteRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.DeleteRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "FailIfReferred: "+fmt.Sprintf("%#v", this.FailIfReferred)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCrudapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + // Create Ztna Policy + // + // x-displayName: "Create Ztna Policy" + // Creates a new Ztna Policy Object + Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) + // Get Ztna Policy + // + // x-displayName: "Get Ztna Policy" + // Get the ztna policy object + Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) + // List + // + // x-displayName: "List Ztna Policy" + // List the set of ztna in a namespace + List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) + // Replace Ztna Policy + // + // x-displayName: "Replace Ztna Policy" + // Replaces the content of the Ztna policy object + Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) + // Delete + // + // x-displayName: "Delete Ztna Policy" + // Delete the specified ztna + Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + out := new(CreateResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + out := new(GetResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + out := new(ReplaceResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) { + out := new(types.Empty) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + // Create Ztna Policy + // + // x-displayName: "Create Ztna Policy" + // Creates a new Ztna Policy Object + Create(context.Context, *CreateRequest) (*CreateResponse, error) + // Get Ztna Policy + // + // x-displayName: "Get Ztna Policy" + // Get the ztna policy object + Get(context.Context, *GetRequest) (*GetResponse, error) + // List + // + // x-displayName: "List Ztna Policy" + // List the set of ztna in a namespace + List(context.Context, *ListRequest) (*ListResponse, error) + // Replace Ztna Policy + // + // x-displayName: "Replace Ztna Policy" + // Replaces the content of the Ztna policy object + Replace(context.Context, *ReplaceRequest) (*ReplaceResponse, error) + // Delete + // + // x-displayName: "Delete Ztna Policy" + // Delete the specified ztna + Delete(context.Context, *DeleteRequest) (*types.Empty, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*types.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*CreateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*GetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReplaceRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ReplaceRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*DeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.ztna.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/ztna/public_crudapi.proto", +} + +func (m *CreateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CreateResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x1a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *GetRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResponseFormat != 0 { + i = encodeVarintPublicCrudapi(dAtA, i, uint64(m.ResponseFormat)) + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.DisabledReferredObjects) > 0 { + for iNdEx := len(m.DisabledReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DisabledReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + } + if len(m.DeletedReferredObjects) > 0 { + for iNdEx := len(m.DeletedReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DeletedReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + } + if len(m.ReferringObjects) > 0 { + for iNdEx := len(m.ReferringObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ReferringObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x22 + } + if m.ReplaceForm != nil { + { + size, err := m.ReplaceForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.CreateForm != nil { + { + size, err := m.CreateForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *ListRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ReportStatusFields) > 0 { + for iNdEx := len(m.ReportStatusFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportStatusFields[iNdEx]) + copy(dAtA[i:], m.ReportStatusFields[iNdEx]) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportStatusFields[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponseItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponseItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponseItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + if m.Disabled { + i-- + if m.Disabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x60 + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x5a + } + if len(m.Annotations) > 0 { + for k := range m.Annotations { + v := m.Annotations[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x52 + } + } + if m.OwnerView != nil { + { + size, err := m.OwnerView.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if len(m.StatusSet) > 0 { + for iNdEx := len(m.StatusSet) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.StatusSet[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.GetSpec != nil { + { + size, err := m.GetSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x32 + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x22 + } + } + if len(m.Uid) > 0 { + i -= len(m.Uid) + copy(dAtA[i:], m.Uid) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Uid))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Errors) > 0 { + for iNdEx := len(m.Errors) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Errors[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *DeleteRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DeleteRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DeleteRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FailIfReferred { + i-- + if m.FailIfReferred { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCrudapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCrudapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *CreateRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *CreateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ReplaceRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ReplaceResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *GetRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.ResponseFormat != 0 { + n += 1 + sovPublicCrudapi(uint64(m.ResponseFormat)) + } + return n +} + +func (m *GetResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CreateForm != nil { + l = m.CreateForm.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.ReplaceForm != nil { + l = m.ReplaceForm.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.ReferringObjects) > 0 { + for _, e := range m.ReferringObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.DeletedReferredObjects) > 0 { + for _, e := range m.DeletedReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.DisabledReferredObjects) > 0 { + for _, e := range m.DisabledReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *ListRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.LabelFilter) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.ReportStatusFields) > 0 { + for _, s := range m.ReportStatusFields { + l = len(s) + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *ListResponseItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Uid) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) + } + } + l = len(m.Tenant) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.GetSpec != nil { + l = m.GetSpec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.StatusSet) > 0 { + for _, e := range m.StatusSet { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if m.OwnerView != nil { + l = m.OwnerView.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.Annotations) > 0 { + for k, v := range m.Annotations { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) + } + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Disabled { + n += 2 + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ListResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.Errors) > 0 { + for _, e := range m.Errors { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *DeleteRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.FailIfReferred { + n += 2 + } + return n +} + +func sovPublicCrudapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCrudapi(x uint64) (n int) { + return sovPublicCrudapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *CreateRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateResponse{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectReplaceMetaType", "schema.ObjectReplaceMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ReplaceSpecType", "ReplaceSpecType", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceResponse{`, + `}`, + }, "") + return s +} +func (this *GetRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ResponseFormat:` + fmt.Sprintf("%v", this.ResponseFormat) + `,`, + `}`, + }, "") + return s +} +func (this *GetResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForReferringObjects := "[]*ObjectRefType{" + for _, f := range this.ReferringObjects { + repeatedStringForReferringObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForReferringObjects += "}" + repeatedStringForDeletedReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DeletedReferredObjects { + repeatedStringForDeletedReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDeletedReferredObjects += "}" + repeatedStringForDisabledReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DisabledReferredObjects { + repeatedStringForDisabledReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDisabledReferredObjects += "}" + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + s := strings.Join([]string{`&GetResponse{`, + `CreateForm:` + strings.Replace(this.CreateForm.String(), "CreateRequest", "CreateRequest", 1) + `,`, + `ReplaceForm:` + strings.Replace(this.ReplaceForm.String(), "ReplaceRequest", "ReplaceRequest", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `ReferringObjects:` + repeatedStringForReferringObjects + `,`, + `DeletedReferredObjects:` + repeatedStringForDeletedReferredObjects + `,`, + `DisabledReferredObjects:` + repeatedStringForDisabledReferredObjects + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ListRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ReportStatusFields:` + fmt.Sprintf("%v", this.ReportStatusFields) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponseItem) String() string { + if this == nil { + return "nil" + } + repeatedStringForStatusSet := "[]*StatusObject{" + for _, f := range this.StatusSet { + repeatedStringForStatusSet += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "StatusObject", 1) + "," + } + repeatedStringForStatusSet += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + s := strings.Join([]string{`&ListResponseItem{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Uid:` + fmt.Sprintf("%v", this.Uid) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `GetSpec:` + strings.Replace(fmt.Sprintf("%v", this.GetSpec), "GetSpecType", "GetSpecType", 1) + `,`, + `StatusSet:` + repeatedStringForStatusSet + `,`, + `OwnerView:` + strings.Replace(fmt.Sprintf("%v", this.OwnerView), "ViewRefType", "schema.ViewRefType", 1) + `,`, + `Annotations:` + mapStringForAnnotations + `,`, + `Description:` + fmt.Sprintf("%v", this.Description) + `,`, + `Disabled:` + fmt.Sprintf("%v", this.Disabled) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ListResponseItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ListResponseItem", "ListResponseItem", 1) + "," + } + repeatedStringForItems += "}" + repeatedStringForErrors := "[]*ErrorType{" + for _, f := range this.Errors { + repeatedStringForErrors += strings.Replace(fmt.Sprintf("%v", f), "ErrorType", "schema.ErrorType", 1) + "," + } + repeatedStringForErrors += "}" + s := strings.Join([]string{`&ListResponse{`, + `Items:` + repeatedStringForItems + `,`, + `Errors:` + repeatedStringForErrors + `,`, + `}`, + }, "") + return s +} +func (this *DeleteRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DeleteRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `FailIfReferred:` + fmt.Sprintf("%v", this.FailIfReferred) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCrudapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *CreateRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectCreateMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &CreateSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectReplaceMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseFormat", wireType) + } + m.ResponseFormat = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ResponseFormat |= GetResponseFormatCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CreateForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CreateForm == nil { + m.CreateForm = &CreateRequest{} + } + if err := m.CreateForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReplaceForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ReplaceForm == nil { + m.ReplaceForm = &ReplaceRequest{} + } + if err := m.ReplaceForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReferringObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReferringObjects = append(m.ReferringObjects, &schema.ObjectRefType{}) + if err := m.ReferringObjects[len(m.ReferringObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DeletedReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DeletedReferredObjects = append(m.DeletedReferredObjects, &schema.ObjectRefType{}) + if err := m.DeletedReferredObjects[len(m.DeletedReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisabledReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DisabledReferredObjects = append(m.DisabledReferredObjects, &schema.ObjectRefType{}) + if err := m.DisabledReferredObjects[len(m.DisabledReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportStatusFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportStatusFields = append(m.ReportStatusFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponseItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponseItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponseItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GetSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GetSpec == nil { + m.GetSpec = &GetSpecType{} + } + if err := m.GetSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StatusSet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StatusSet = append(m.StatusSet, &StatusObject{}) + if err := m.StatusSet[len(m.StatusSet)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OwnerView", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OwnerView == nil { + m.OwnerView = &schema.ViewRefType{} + } + if err := m.OwnerView.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Annotations == nil { + m.Annotations = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Annotations[mapkey] = mapvalue + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Disabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Disabled = bool(v != 0) + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ListResponseItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Errors", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Errors = append(m.Errors, &schema.ErrorType{}) + if err := m.Errors[len(m.Errors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeleteRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DeleteRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeleteRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field FailIfReferred", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FailIfReferred = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCrudapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCrudapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCrudapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCrudapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCrudapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCrudapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCrudapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna/public_crudapi.pb.gw.go b/pbgo/extschema/schema/ztna/public_crudapi.pb.gw.go new file mode 100644 index 000000000..cfd20fccb --- /dev/null +++ b/pbgo/extschema/schema/ztna/public_crudapi.pb.gw.go @@ -0,0 +1,716 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/ztna/public_crudapi.proto + +/* +Package ztna is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package ztna + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + val, ok = pathParams["metadata.name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.name") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.name", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.name", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + val, ok = pathParams["metadata.name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.name") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.name", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.name", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "metadata.namespace", "ztnas"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "ztnas", "name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "ztnas"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "metadata.namespace", "ztnas", "metadata.name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "ztnas", "name"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Delete_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/ztna/public_crudapi.vesapi.go b/pbgo/extschema/schema/ztna/public_crudapi.vesapi.go new file mode 100644 index 000000000..2116ae8c1 --- /dev/null +++ b/pbgo/extschema/schema/ztna/public_crudapi.vesapi.go @@ -0,0 +1,3912 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/client/configapi" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +const ( + // CreateRequestFQN is the fully-qualified-name of the CreateRequest message + CreateRequestFQN = "ves.io.schema.ztna.CreateRequest" + // CreateResponseFQN is the fully-qualified-name of the CreateResponse message + CreateResponseFQN = "ves.io.schema.ztna.CreateResponse" + // ReplaceRequestFQN is the fully-qualified-name of the ReplaceRequest message + ReplaceRequestFQN = "ves.io.schema.ztna.ReplaceRequest" + // ReplaceResponseFQN is the fully-qualified-name of the ReplaceResponse message + ReplaceResponseFQN = "ves.io.schema.ztna.ReplaceResponse" + // GetRequestFQN is the fully-qualified-name of the GetRequest message + GetRequestFQN = "ves.io.schema.ztna.GetRequest" + // GetResponseFQN is the fully-qualified-name of the GetResponse message + GetResponseFQN = "ves.io.schema.ztna.GetResponse" + // ListRequestFQN is the fully-qualified-name of the ListRequest message + ListRequestFQN = "ves.io.schema.ztna.ListRequest" + // ListResponseFQN is the fully-qualified-name of the ListResponse message + ListResponseFQN = "ves.io.schema.ztna.ListResponse" + // DeleteRequestFQN is the fully-qualified-name of the DeleteRequest message + DeleteRequestFQN = "ves.io.schema.ztna.DeleteRequest" + // DeleteResponseFQN is the fully-qualified-name of the DeleteResponse message + DeleteResponseFQN = "ves.io.schema.ztna.DeleteResponse" +) + +// CLIENT side +func NewCreateRequest(e db.Entry) (*CreateRequest, error) { + r := &CreateRequest{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewReplaceRequest(e db.Entry) (*ReplaceRequest, error) { + r := &ReplaceRequest{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewGetRequest(key string, opts ...server.CRUDCallOpt) (*GetRequest, error) { + strs := strings.Split(key, "/") + if len(strs) != 2 { + return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) + } + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + var rspFmt GetResponseFormatCode + switch ccOpts.ResponseFormat { + case server.DefaultForm: + rspFmt = GET_RSP_FORMAT_DEFAULT + case server.CreateRequestForm: + rspFmt = GET_RSP_FORMAT_FOR_CREATE + case server.ReplaceRequestForm: + rspFmt = GET_RSP_FORMAT_FOR_REPLACE + case server.StatusForm: + rspFmt = GET_RSP_FORMAT_STATUS + case server.GetSpecForm: + rspFmt = GET_RSP_FORMAT_READ + case server.BrokenRefsForm: + rspFmt = GET_RSP_FORMAT_BROKEN_REFERENCES + default: + return nil, fmt.Errorf("Unsupported Response Format %s", ccOpts.ResponseFormat) + } + return &GetRequest{Namespace: strs[0], Name: strs[1], ResponseFormat: rspFmt}, nil +} +func (m *GetRequest) ResponseFormatString() string { + return m.GetResponseFormat().String() +} + +func NewListRequest(opts ...server.CRUDCallOpt) *ListRequest { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + return &ListRequest{Namespace: ccOpts.Namespace} +} + +func NewDeleteRequest(key string) (*DeleteRequest, error) { + strs := strings.Split(key, "/") + if len(strs) != 2 { + return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) + } + return &DeleteRequest{Namespace: strs[0], Name: strs[1]}, nil +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + var req *CreateRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*CreateRequest) + if !ok { + return nil, fmt.Errorf("%T is not *CreateRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Create") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + } + + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + obj := NewDBObject(nil) + rsp.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rsp, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + var req *ReplaceRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*ReplaceRequest) + if !ok { + return fmt.Errorf("%T is not *ReplaceRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Replace") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return err + } + } + } + + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return nil + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + req := NewListRequest(opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + switch len(cco.LabelFilter) { + case 0: + case 1: + req.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + req.ReportFields = cco.ReportFields + req.ReportStatusFields = cco.ReportStatusFields + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + got := 0 + if e != nil { + got++ + } + if cco.RequestProto != nil { + got++ + } + if cco.RequestJSON != "" { + got++ + } + if got != 1 { + return nil, fmt.Errorf("Only one of entry(%v), WithRequestProto()(%v) or WithRequestJSON()(%v) should be specified", e, cco.RequestProto, cco.RequestJSON) + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + var req *CreateRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*CreateRequest) + if !ok { + return nil, fmt.Errorf("%T is not *CreateRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + } + + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + var namespace string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return nil, errors.Wrapf(err, "Unmarshaling json to find namespace/name") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return nil, fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["namespace"].(string); ok { + namespace = val + } else { + return nil, fmt.Errorf("Request %s does not have 'metadata.namespace'", jsn) + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztnas", c.baseURL, namespace) + + hReq, err := http.NewRequest("POST", url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &CreateResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + configapi.TranscribeCall(ctx, jsn, string(body)) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + + obj := NewDBObject(nil) + rspo.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rspo, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + got := 0 + if e != nil { + got++ + } + if cco.RequestProto != nil { + got++ + } + if cco.RequestJSON != "" { + got++ + } + if got != 1 { + return fmt.Errorf("Only one of entry(%v), WithRequestProto()(%v) or WithRequestJSON()(%v) should be specified", e, cco.RequestProto, cco.RequestJSON) + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + var rReq *ReplaceRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*ReplaceRequest) + if !ok { + return fmt.Errorf("%T is not *ReplaceRequest", cco.RequestProto) + } + rReq = r + } else { + r, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, rReq); err != nil { + return err + } + } + } + + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var namespace, name string + _ = namespace + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling json to find namespace/name") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + + if val, ok := md["namespace"].(string); ok { + namespace = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.namespace'", jsn) + } + + if val, ok := md["name"].(string); ok { + name = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.name'", jsn) + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztnas/%s", c.baseURL, namespace, name) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + hReq = hReq.WithContext(ctx) + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + if _, err := io.ReadAll(rsp.Body); err != nil { + return errors.Wrap(err, "RestClient replace") + } + + configapi.TranscribeCall(ctx, jsn, nil) + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztnas/%s", c.baseURL, req.Namespace, req.Name) + hReq, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + q.Add("response_format", fmt.Sprintf("%d", req.ResponseFormat)) + hReq.URL.RawQuery += q.Encode() + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &GetResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + configapi.TranscribeCall(ctx, req, rspo) + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + + return nil, err + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + req := NewListRequest(opts...) + _ = req + url := fmt.Sprintf("%s/public/namespaces/%s/ztnas", c.baseURL, req.Namespace) + + hReq, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + for _, fName := range cco.ReportStatusFields { + q.Add("report_status_fields", fName) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ListResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + configapi.TranscribeCall(ctx, req, rspo) + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztnas/%s", c.baseURL, dReq.Namespace, dReq.Name) + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + _, err = io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + configapi.TranscribeCall(ctx, dReq, nil) + + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.API.Create") + rsp, err := oah.Create(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.API.Replace") + if rsp, err := oah.Replace(ctx, req); err != nil { + return rsp, err + } + return NewObjectReplaceRsp(nil) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.API.Get") + rsp, err := oah.Get(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) List(ctx context.Context, req *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.API.List") + rsp, err := oah.List(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *DeleteRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna.API.Delete") + rsp, err := oah.Delete(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + + rsp, err := c.cl.Create(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if err != nil { + return nil, err + } + obj := NewDBObject(nil) + rsp.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rsp, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return err + } + } + + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + + return nil, err + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewListRequest(opts...) + switch len(cco.LabelFilter) { + case 0: + case 1: + req.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + rsp, err := c.cl.List(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + rsp, err := c.cl.Delete(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper + + // resource handler function pointers +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.ztna.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.ztna.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna.API.Create"), zap.Error(err)) + } + } + } + reqMsgFQN := "ves.io.schema.ztna.CreateRequest" + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, reqMsgFQN, req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + obj := NewDBObject(nil) + req.ToObject(obj) + if conv, exists := s.sf.Config().MsgToObjConverters[reqMsgFQN]; exists { + if err := conv(req, obj); err != nil { + return nil, err + } + } + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "CreateResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "CreateResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + rspMsgFQN := "ves.io.schema.ztna.CreateResponse" + if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { + if err := conv(rsrcRsp.Entry, rsp); err != nil { + return nil, err + } + } + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.sf, "ves.io.schema.ztna.API.CreateResponse", rsp)...) + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + err := fmt.Errorf("Nil spec in Replace Request") + return nil, svcfw.NewInvalidInputError(err.Error(), err) + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna.API.Replace"), zap.Error(err)) + } + } + } + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.ztna.API.ReplaceRequest", req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "ReplaceResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "ReplaceResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.sf, "ves.io.schema.ztna.API.ReplaceResponse", rsp)...) + return rsp, nil +} + +func (s *APISrv) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + tenant := server.TenantFromContext(ctx) + rsrcReq := &server.ResourceGetRequest{IsPublic: true, Tenant: tenant, Namespace: req.GetNamespace(), Name: req.GetName()} + switch req.ResponseFormat { + case GET_RSP_FORMAT_FOR_CREATE: + rsrcReq.RspInCreateForm = true + + case GET_RSP_FORMAT_FOR_REPLACE: + rsrcReq.RspInReplaceForm = true + + case GET_RSP_FORMAT_READ: + rsrcReq.RspInReadForm = true + + case GET_RSP_FORMAT_STATUS: + rsrcReq.RspInStatusForm = true + + case GET_RSP_FORMAT_REFERRING_OBJECTS: + rsrcReq.RspInReferringObjectsForm = true + + case GET_RSP_FORMAT_BROKEN_REFERENCES: + rsrcReq.RspInBrokenReferencesForm = true + + } + + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectGetRsp(ctx, s.sf, req, rsrcRsp) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + rspMsgFQN := "ves.io.schema.ztna.GetResponse" + if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { + if err := conv(rsrcRsp.Entry, rsp); err != nil { + return nil, err + } + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + Namespace: req.Namespace, + LabelFilter: req.LabelFilter, + RspStreamed: false, + } + if len(req.ReportStatusFields) > 0 { + rsrcReq.ReportStatusFields = &req.ReportStatusFields + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListResource")) + } + rsp, err := NewListResponse(ctx, req, s.sf, rsrcRsp) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListResponse allocation failed")) + } + if merr != nil { + if rsp == nil { + return nil, merr + } + rsp.Errors = append(rsp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: merr.Error(), + }) + + } + return rsp, nil +} + +func (s *APISrv) Delete(ctx context.Context, req *DeleteRequest) (*google_protobuf.Empty, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna.API.Delete"), zap.Error(err)) + } + } + } + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.ztna.API.DeleteRequest", req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + tenant := server.TenantFromContext(ctx) + key := fmt.Sprintf("%s/%s/%s", tenant, req.GetNamespace(), req.GetName()) + rsrcReq := &server.ResourceDeleteRequest{Key: key} + rsrcReq.FailIfReferred = req.FailIfReferred + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "DeleteResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + return &google_protobuf.Empty{}, nil +} + +// Assert that APISrv implements the generated gRPC APIServer interface +var _ APIServer = &APISrv{} + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.API", strings.Join(sl[:len(sl)-1], ".")) +} + +func (r *Object) Key() string { + m := r.GetMetadata() + if m == nil { + return "" + } + return strings.Join([]string{m.Namespace, m.Name}, "/") +} + +func (r *Object) Uid() string { + return r.SystemMetadata.Uid +} + +func (r *ListResponse) GetKeys() []string { + var ret []string + for _, i := range r.Items { + ret = append(ret, i.Namespace+"/"+i.Name) + } + return ret +} + +// Implement server.SROListItem interface on ListResponseItem +func (l *ListResponseItem) GetObjUid() string { + return l.Uid +} + +func (l *ListResponseItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ListResponseItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ListResponseItem) GetObjName() string { + return l.Name +} + +func (l *ListResponseItem) GetObjLabels() map[string]string { + return l.Labels +} + +func NewObjectCreateRsp(e db.Entry) (*CreateResponse, error) { + switch e.(type) { + case nil: + return nil, nil + case *DBObject: + rsp := &CreateResponse{} + rsp.FromObject(e) + return rsp, nil + } + return nil, fmt.Errorf("Entry not of type *DBObject in NewObjectCreateRsp") +} + +func NewObjectReplaceRsp(e db.Entry) (*ReplaceResponse, error) { + return &ReplaceResponse{}, nil +} + +func NewObjectGetRsp(ctx context.Context, sf svcfw.Service, req *GetRequest, rsrcRsp *server.ResourceGetResponse) (*GetResponse, error) { + rsp := &GetResponse{} + e := rsrcRsp.Entry + if e == nil { + return rsp, nil + } + o, ok := e.(*DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *DBObject in NewObjectGetRsp") + } + + rsp.ResourceVersion = rsrcRsp.ResourceVersion + var merr *multierror.Error + buildReadForm := func() { + rsp.Metadata = &ves_io_schema.ObjectGetMetaType{} + rsp.Metadata.FromObjectMetaType(o.Metadata) + rsp.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + rsp.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) + rsp.Spec = &GetSpecType{} + if redactor, ok := e.(db.Redactor); ok { + if err := redactor.Redact(ctx); err != nil { + merr = multierror.Append(merr, errors.WithMessage(err, "Error while redacting entry")) + return + } + } + rsp.Spec.FromGlobalSpecType(o.Spec.GcSpec) + + } + _ = buildReadForm + buildStatusForm := func() { + for _, statusEnt := range rsrcRsp.BackRefs { + statusObj, ok := statusEnt.ToStore().(*StatusObject) + if !ok { + merr = multierror.Append(merr, fmt.Errorf("%T is not *StatusObject", statusEnt)) + continue + } + rsp.Status = append(rsp.Status, statusObj) + } + + } + _ = buildStatusForm + buildReferringObjectsForm := func() { + for _, br := range rsrcRsp.ReferringObjects { + rsp.ReferringObjects = append(rsp.ReferringObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + + } + _ = buildReferringObjectsForm + buildBrokenReferencesForm := func() { + for _, br := range rsrcRsp.DeletedReferredObjects { + rsp.DeletedReferredObjects = append(rsp.DeletedReferredObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + for _, br := range rsrcRsp.DisabledReferredObjects { + rsp.DisabledReferredObjects = append(rsp.DisabledReferredObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + + } + _ = buildBrokenReferencesForm + + switch req.ResponseFormat { + + case GET_RSP_FORMAT_FOR_CREATE: + createReq, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Building CreateRequest from entry") + } + // Name has to be specified for a new create + createReq.Metadata.Name = "" + rsp.CreateForm = createReq + + case GET_RSP_FORMAT_FOR_REPLACE: + replaceReq, err := NewReplaceRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Building ReplaceRequest from entry") + } + rsp.ReplaceForm = replaceReq + + case GET_RSP_FORMAT_STATUS: + buildStatusForm() + + case GET_RSP_FORMAT_READ: + buildReadForm() + + case GET_RSP_FORMAT_REFERRING_OBJECTS: + buildReferringObjectsForm() + + case GET_RSP_FORMAT_BROKEN_REFERENCES: + buildBrokenReferencesForm() + + default: + buildReadForm() + + buildStatusForm() + } + + return rsp, errors.ErrOrNil(merr) +} + +func NewListResponse(ctx context.Context, req *ListRequest, sf svcfw.Service, rsrcRsp *server.ResourceListResponse) (*ListResponse, error) { + if req == nil { + return nil, fmt.Errorf("Nil ListRequest") + } + if rsrcRsp == nil { + return nil, fmt.Errorf("Nil ResourceResponse") + } + + errStrs := []string{} + resp := &ListResponse{} + resp.Items = []*ListResponseItem{} + + for _, rsrcItem := range rsrcRsp.Items { + if rsrcItem == nil { + errStrs = append(errStrs, fmt.Sprintf("Nil ResourceListResponseItem")) + continue + } + + e := rsrcItem.Entry + o, ok := e.(*DBObject) + if !ok { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Entry %T not of type *DBObject in NewListResponse", e), + }) + + continue + } + if redactor, ok := e.(db.Redactor); ok { + if err := redactor.Redact(ctx); err != nil { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Error while redacting in NewListResponse: %s", err), + }) + continue + } + } + item := &ListResponseItem{ + Tenant: o.GetSystemMetadata().GetTenant(), + Namespace: o.GetMetadata().GetNamespace(), + Name: o.GetMetadata().GetName(), + Uid: o.GetMetadata().GetUid(), + OwnerView: o.GetSystemMetadata().GetOwnerView(), + Labels: o.GetMetadata().GetLabels(), + } + + item.Description = o.GetMetadata().GetDescription() + item.Annotations = o.GetMetadata().GetAnnotations() + item.Disabled = o.GetMetadata().GetDisable() + + if len(req.ReportFields) > 0 { + item.Metadata = &ves_io_schema.ObjectGetMetaType{} + item.Metadata.FromObjectMetaType(o.Metadata) + item.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + item.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) + + if o.Object.GetSpec().GetGcSpec() != nil { + msgFQN := "ves.io.schema.ztna.GetResponse" + if conv, exists := sf.Config().ObjToMsgConverters[msgFQN]; exists { + getSpec := &GetSpecType{} + getSpec.FromGlobalSpecType(o.Spec.GcSpec) + getRsp := &GetResponse{Spec: getSpec} + if err := conv(o, getRsp); err != nil { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Converting entry to getResponse: %s", err), + }) + + continue + } + item.GetSpec = getRsp.Spec + } else { + item.GetSpec = &GetSpecType{} + item.GetSpec.FromGlobalSpecType(o.Spec.GcSpec) + } + } + + } + + if len(req.ReportStatusFields) > 0 { + for _, sroStatus := range rsrcItem.StatusSet { + statusDBO, ok := sroStatus.(*DBStatusObject) + if !ok { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("sro.Status %T is not of type *DBStatusObject in NewListResponse", sroStatus), + }) + + continue + } + item.StatusSet = append(item.StatusSet, statusDBO.StatusObject) + } + } + + resp.Items = append(resp.Items, item) + } + return resp, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Ztna Policy", + "description": "\nRepresents schema for a ztna policy", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/{metadata.namespace}/ztnas": { + "post": { + "summary": "Create Ztna Policy", + "description": "Creates a new Ztna Policy Object", + "operationId": "ves.io.schema.ztna.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztnaCreateResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "metadata.namespace", + "description": "namespace\n\nx-example: \"staging\"\nThis defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ztnaCreateRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.API.Create" + }, + "x-displayname": "Ztna Policy", + "x-ves-proto-service": "ves.io.schema.ztna.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{metadata.namespace}/ztnas/{metadata.name}": { + "put": { + "summary": "Replace Ztna Policy", + "description": "Replaces the content of the Ztna policy object", + "operationId": "ves.io.schema.ztna.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztnaReplaceResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "metadata.namespace", + "description": "namespace\n\nx-example: \"staging\"\nThis defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "metadata.name", + "description": "name\n\nx-example: \"acmecorp-web\"\nThe configuration object to be replaced will be looked up by name", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ztnaReplaceRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.API.Replace" + }, + "x-displayname": "Ztna Policy", + "x-ves-proto-service": "ves.io.schema.ztna.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{namespace}/ztnas": { + "get": { + "summary": "List Ztna Policy", + "description": "List the set of ztna in a namespace", + "operationId": "ves.io.schema.ztna.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztnaListResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace to scope the listing of ztna", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "label_filter", + "description": "x-example: \"env in (staging, testing), tier in (web, db)\"\nA LabelSelectorType expression that every item in list response will satisfy", + "in": "query", + "required": false, + "type": "string", + "x-displayname": "Label Filter" + }, + { + "name": "report_fields", + "description": "x-example: \"\"\nExtra fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Fields" + }, + { + "name": "report_status_fields", + "description": "x-example: \"\"\nExtra status fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Status Fields" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.API.List" + }, + "x-displayname": "Ztna Policy", + "x-ves-proto-service": "ves.io.schema.ztna.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{namespace}/ztnas/{name}": { + "get": { + "summary": "Get Ztna Policy", + "description": "Get the ztna policy object", + "operationId": "ves.io.schema.ztna.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztnaGetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nThe name of the configuration object to be fetched", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "response_format", + "description": "The format in which the configuration object is to be fetched. This could be for example\n - in GetSpec form for the contents of object\n - in CreateRequest form to create a new similar object\n - to ReplaceRequest form to replace changeable values\n\nDefault format of returned resource\nResponse should be in CreateRequest format\nResponse should be in ReplaceRequest format\nResponse should be in StatusObject(s) format\nResponse should be in format of GetSpecType\nResponse should have other objects referring to this object\nResponse should have deleted and disabled objects referrred by this object", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT", + "x-displayname": "Broken Referred Objects" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.API.Get" + }, + "delete": { + "summary": "Delete Ztna Policy", + "description": "Delete the specified ztna", + "operationId": "ves.io.schema.ztna.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": {} + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nName of the configuration object", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ztnaDeleteRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna.API.Delete" + }, + "x-displayname": "Ztna Policy", + "x-ves-proto-service": "ves.io.schema.ztna.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + } + }, + "definitions": { + "ioschemaEmpty": { + "type": "object", + "description": "x-displayName: \"Empty\"\nThis can be used for messages where no values are needed", + "title": "Empty" + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "schemaBlindfoldSecretInfoType": { + "type": "object", + "description": "BlindfoldSecretInfoType specifies information about the Secret managed by F5XC Secret Management", + "title": "BlindfoldSecretInfoType", + "x-displayname": "Blindfold Secret", + "x-ves-displayorder": "3,1,2", + "x-ves-proto-message": "ves.io.schema.BlindfoldSecretInfoType", + "properties": { + "decryption_provider": { + "type": "string", + "description": " Name of the Secret Management Access object that contains information about the backend Secret Management service.\n\nExample: - \"value\"-", + "title": "Decryption Provider", + "x-displayname": "Decryption Provider", + "x-ves-example": "value" + }, + "location": { + "type": "string", + "description": " Location is the uri_ref. It could be in url format for string:///\n Or it could be a path if the store provider is an http/https location\n\nExample: - \"string:///U2VjcmV0SW5mb3JtYXRpb24=\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "Location", + "x-displayname": "Location", + "x-ves-example": "string:///U2VjcmV0SW5mb3JtYXRpb24=", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.uri_ref": "true" + } + }, + "store_provider": { + "type": "string", + "description": " Name of the Secret Management Access object that contains information about the store to get encrypted bytes\n This field needs to be provided only if the url scheme is not string:///\n\nExample: - \"value\"-", + "title": "Store Provider", + "x-displayname": "Store Provider", + "x-ves-example": "value" + } + } + }, + "schemaClearSecretInfoType": { + "type": "object", + "description": "ClearSecretInfoType specifies information about the Secret that is not encrypted.", + "title": "ClearSecretInfoType", + "x-displayname": "In-Clear Secret", + "x-ves-displayorder": "2,1", + "x-ves-proto-message": "ves.io.schema.ClearSecretInfoType", + "properties": { + "provider": { + "type": "string", + "description": " Name of the Secret Management Access object that contains information about the store to get encrypted bytes\n This field needs to be provided only if the url scheme is not string:///\n\nExample: - \"box-provider\"-", + "title": "Provider", + "x-displayname": "Provider", + "x-ves-example": "box-provider" + }, + "url": { + "type": "string", + "description": " URL of the secret. Currently supported URL schemes is string:///.\n For string:/// scheme, Secret needs to be encoded Base64 format.\n When asked for this secret, caller will get Secret bytes after Base64 decoding.\n\nExample: - \"string:///U2VjcmV0SW5mb3JtYXRpb24=\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 131072\n ves.io.schema.rules.string.uri_ref: true\n", + "title": "URL", + "maxLength": 131072, + "x-displayname": "URL", + "x-ves-example": "string:///U2VjcmV0SW5mb3JtYXRpb24=", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "131072", + "ves.io.schema.rules.string.uri_ref": "true" + } + } + } + }, + "schemaConditionType": { + "type": "object", + "description": "Conditions are used in the object status to describe the current state of the\nobject, e.g. Ready, Succeeded, etc.", + "title": "ConditionType", + "x-displayname": "Status Condition", + "x-ves-proto-message": "ves.io.schema.ConditionType", + "properties": { + "hostname": { + "type": "string", + "description": " Hostname of the instance of the site that sent the status", + "title": "hostname", + "x-displayname": "Hostname" + }, + "last_update_time": { + "type": "string", + "description": " Last time the condition was updated", + "title": "last_update_time", + "format": "date-time", + "x-displayname": "Last Updated" + }, + "reason": { + "type": "string", + "description": " x-reason: \"Insufficient memory in data plane\"\n A human readable string explaining the reason for reaching this condition\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaErrorCode": { + "type": "string", + "description": "Union of all possible error-codes from system\n\n - EOK: No error\n - EPERMS: Permissions error\n - EBADINPUT: Input is not correct\n - ENOTFOUND: Not found\n - EEXISTS: Already exists\n - EUNKNOWN: Unknown/catchall error\n - ESERIALIZE: Error in serializing/de-serializing\n - EINTERNAL: Server error\n - EPARTIAL: Partial error", + "title": "ErrorCode", + "enum": [ + "EOK", + "EPERMS", + "EBADINPUT", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN", + "ESERIALIZE", + "EINTERNAL", + "EPARTIAL" + ], + "default": "EOK", + "x-displayname": "Error Code", + "x-ves-proto-enum": "ves.io.schema.ErrorCode" + }, + "schemaErrorType": { + "type": "object", + "description": "Information about a error in API operation", + "title": "ErrorType", + "x-displayname": "Error Type", + "x-ves-proto-message": "ves.io.schema.ErrorType", + "properties": { + "code": { + "description": " A simple general code by category", + "title": "code", + "$ref": "#/definitions/schemaErrorCode", + "x-displayname": "Code" + }, + "error_obj": { + "description": " A structured error object for machine parsing", + "title": "error_obj", + "$ref": "#/definitions/protobufAny", + "x-displayname": "Error Object" + }, + "message": { + "type": "string", + "description": " A human readable string of the error\n\nExample: - \"value\"-", + "title": "message", + "x-displayname": "Message", + "x-ves-example": "value" + } + } + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaIpAddressType": { + "type": "object", + "description": "x-displayName: \"IP Address\"\nIP Address used to specify an IPv4 or IPv6 address", + "title": "IP Address", + "properties": { + "ipv4": { + "description": "x-displayName: \"IPv4 Address\"\nIPv4 Address", + "title": "IPv4 Address", + "$ref": "#/definitions/schemaIpv4AddressType" + }, + "ipv6": { + "description": "x-displayName: \"IPv6 Address\"\nIPv6 Address", + "title": "IPv6 ADDRESS", + "$ref": "#/definitions/schemaIpv6AddressType" + } + } + }, + "schemaIpv4AddressType": { + "type": "object", + "description": "x-displayName: \"IPv4 Address\"\nIPv4 Address in dot-decimal notation", + "title": "IPv4 Address", + "properties": { + "addr": { + "type": "string", + "description": "x-displayName: \"IPv4 Address\"\nx-example: \"192.168.1.1\"\nIPv4 Address in string form with dot-decimal notation", + "title": "IPv4 Address" + } + } + }, + "schemaIpv6AddressType": { + "type": "object", + "description": "x-displayName: \"IPv6 Address\"\nIPv6 Address specified as hexadecimal numbers separated by ':'", + "title": "IPv6 Address", + "properties": { + "addr": { + "type": "string", + "description": "x-displayName: \"IPv6 Address\"\nx-example: \"2001:db8:0:0:0:0:2:1\"\nIPv6 Address in form of string. IPv6 address must be specified as hexadecimal numbers separated by ':'\nThe address can be compacted by suppressing zeros\ne.g. '2001:db8:0:0:0:0:2:1' becomes '2001:db8::2:1' or '2001:db8:0:0:0:2:0:0' becomes '2001:db8::2::'", + "title": "IPv6 Address" + } + } + }, + "schemaObjectCreateMetaType": { + "type": "object", + "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", + "title": "ObjectCreateMetaType", + "x-displayname": "Create Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectCreateMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotation", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaObjectGetMetaType": { + "type": "object", + "description": "ObjectGetMetaType is metadata that can be specified in Get/Create response of an object.", + "title": "ObjectGetMetaType", + "x-displayname": "Get Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectGetMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotation", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaObjectReplaceMetaType": { + "type": "object", + "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", + "title": "ObjectReplaceMetaType", + "x-displayname": "Replace Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectReplaceMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaSecretEncodingType": { + "type": "string", + "description": "x-displayName: \"Secret Encoding\"\nSecretEncodingType defines the encoding type of the secret before handled by the Secret Management Service.\n\n - EncodingNone: x-displayName: \"None\"\nNo Encoding\n - EncodingBase64: Base64\n\nx-displayName: \"Base64\"\nBase64 encoding", + "title": "SecretEncodingType", + "enum": [ + "EncodingNone", + "EncodingBase64" + ], + "default": "EncodingNone" + }, + "schemaSecretType": { + "type": "object", + "description": "SecretType is used in an object to indicate a sensitive/confidential field", + "title": "SecretType", + "x-displayname": "Secret", + "x-ves-oneof-field-secret_info_oneof": "[\"blindfold_secret_info\",\"clear_secret_info\"]", + "x-ves-proto-message": "ves.io.schema.SecretType", + "properties": { + "blindfold_secret_info": { + "description": "Exclusive with [clear_secret_info]\n Blindfold Secret is used for the secrets managed by F5XC Secret Management Service", + "title": "Blindfold Secret", + "$ref": "#/definitions/schemaBlindfoldSecretInfoType", + "x-displayname": "Blindfold Secret" + }, + "clear_secret_info": { + "description": "Exclusive with [blindfold_secret_info]\n Clear Secret is used for the secrets that are not encrypted", + "title": "Clear Secret", + "$ref": "#/definitions/schemaClearSecretInfoType", + "x-displayname": "Clear Secret" + } + } + }, + "schemaStatusMetaType": { + "type": "object", + "description": "StatusMetaType is metadata that all status must have.", + "title": "StatusMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.StatusMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " creation_timestamp is when the status object was created. It is used to find/tie-break\n for latest status object from same origin", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " Class of creator which created this StatusObject. This will be service's DNS FQDN.\n This will be set by the system based on client certificate information.\n\nExample: - \"ver.re1.int.ves.io\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "ver.re1.int.ves.io" + }, + "creator_id": { + "type": "string", + "description": " ID of creator which created this StatusObject. This will be a concrete identifier for service (e.g.\n identifying the environment also). This will be set by the system based on client certificate\n information\n\nExample: - \"ver-instance-1\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "ver-instance-1" + }, + "publish": { + "description": " Decides wether this status object will be propagated to user.", + "title": "publish", + "$ref": "#/definitions/schemaStatusPublishType", + "x-displayname": "Publish" + }, + "status_id": { + "type": "string", + "description": " status_id is a field used by the generator to distinguish (if necessary) between two status\n objects for the same config object from the same site and same service and potentially same\n daemon(creator-id)", + "title": "status_id", + "x-displayname": "Status ID" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for a StatusObject.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Origin of this status exchanged by VTRP.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaStatusPublishType": { + "type": "string", + "description": "StatusPublishType is all possible publish operations on a StatusObject\n\n - STATUS_DO_NOT_PUBLISH: Do Not Publish\n\nDo not propagate this status to user. This could be because status is only informational\n - STATUS_PUBLISH: Publish\n\nPropagate this status up to user as it might be actionable", + "title": "StatusPublishType", + "enum": [ + "STATUS_DO_NOT_PUBLISH", + "STATUS_PUBLISH" + ], + "default": "STATUS_DO_NOT_PUBLISH", + "x-displayname": "Status Publish Type", + "x-ves-proto-enum": "ves.io.schema.StatusPublishType" + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectGetMetaType": { + "type": "object", + "description": "SystemObjectGetMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectGetMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectGetMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "prism" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "admin@acmecorp.com" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaVaultSecretInfoType": { + "type": "object", + "description": "x-displayName: \"Vault Secret\"\nVaultSecretInfoType specifies information about the Secret managed by Hashicorp Vault.", + "title": "VaultSecretInfoType", + "properties": { + "key": { + "type": "string", + "description": "x-displayName: \"Key\"\nx-example: \"key_pem\"\nKey of the individual secret. Vault Secrets are stored as key-value pair.\nIf user is only interested in one value from the map, this field should be set to the corresponding key.\nIf not provided entire secret will be returned.", + "title": "Key" + }, + "location": { + "type": "string", + "description": "x-displayName: \"Location\"\nx-required\nx-example: \"v1/data/vhost_key\"\nPath to secret in Vault.", + "title": "Location" + }, + "provider": { + "type": "string", + "description": "x-displayName: \"Provider\"\nx-required\nx-example: \"vault-vh-provider\"\nName of the Secret Management Access object that contains information about the backend Vault.", + "title": "Provider" + }, + "secret_encoding": { + "description": "x-displayName: \"Secret Encoding\"\nThis field defines the encoding type of the secret BEFORE the secret is put into Hashicorp Vault.", + "title": "secret_encoding", + "$ref": "#/definitions/schemaSecretEncodingType" + }, + "version": { + "type": "integer", + "description": "x-displayName: \"Version\"\nx-example: \"1\"\nVersion of the secret to be fetched. As vault secrets are versioned, user can specify this field to fetch specific version.\nIf not provided latest version will be returned.", + "title": "Version", + "format": "int64" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "schemaWingmanSecretInfoType": { + "type": "object", + "description": "x-displayName: \"Wingman Secret\"\nWingmanSecretInfoType specifies the handle to the wingman secret", + "title": "WingmanSecretInfoType", + "properties": { + "name": { + "type": "string", + "description": "x-displayName: \"Name\"\nx-required\nx-example: \"ChargeBack-API-Key\"\nName of the secret.", + "title": "Name" + } + } + }, + "schemaztnaAction": { + "type": "string", + "description": "x-displayName: \"Action\"\nThis sends allow/reject action in entry configuration of per session policy\n\n - reject: Reject \n\nx-displayName: \"Reject\"\nReject will be choosen as action\n - allow: allow\n\nx-displayName: \"Allow\"\nAllow will be choosen as action .", + "title": "Ztna Policy Action", + "enum": [ + "reject", + "allow" + ], + "default": "reject" + }, + "ztnaAclResourceEntry": { + "type": "object", + "description": "x-displayName: \"Acl Resource Entry\"\n\nList of configuration for acl resource type.", + "title": "AclResourceEntry", + "properties": { + "entries": { + "type": "array", + "description": "x-displayName: \"Entries\"\n\nEntries Config for Acl Resource", + "title": "entries", + "items": { + "$ref": "#/definitions/ztnaEntry" + } + } + } + }, + "ztnaActionType": { + "type": "object", + "description": "\nChoose the next action as logon/active dir auth/ active dir query/resource assign.", + "title": "Action Type", + "x-displayname": "Action Type", + "x-ves-oneof-field-item_type": "[\"active_directory_auth\",\"active_directory_query\",\"log_on\",\"resource_assign\"]", + "x-ves-proto-message": "ves.io.schema.ztna.ActionType", + "properties": { + "active_directory_auth": { + "description": "Exclusive with [active_directory_query log_on resource_assign]\n\n Action type is active Directory auth.", + "title": "Active Directory Auth", + "$ref": "#/definitions/ztnaActiveDirectoryAuth", + "x-displayname": "Active Directory Auth" + }, + "active_directory_query": { + "description": "Exclusive with [active_directory_auth log_on resource_assign]\n\n Action type is active Directory query.", + "title": "Active Directory Query", + "$ref": "#/definitions/ztnaActiveDirectoryQuery", + "x-displayname": "Active Directory Query" + }, + "log_on": { + "description": "Exclusive with [active_directory_auth active_directory_query resource_assign]\n\n Action type is logon ", + "title": "Logon", + "$ref": "#/definitions/ztnaLogonItemType", + "x-displayname": "Log On" + }, + "resource_assign": { + "description": "Exclusive with [active_directory_auth active_directory_query log_on]\n\n Action type is resource assign.", + "title": "Resource Assign", + "$ref": "#/definitions/ztnaResourceAssign", + "x-displayname": "Resource Assign" + } + } + }, + "ztnaActiveDirectoryAuth": { + "type": "object", + "description": "\nList of configuration of Active directory Auth.", + "title": "Active Directory Auth", + "x-displayname": "AAA Active Directory Auth", + "x-ves-proto-message": "ves.io.schema.ztna.ActiveDirectoryAuth", + "properties": { + "active_directory_query": { + "type": "array", + "description": " Send active directory query configuration on success of allow directory auth.", + "title": "AAA Active Directory success", + "items": { + "$ref": "#/definitions/ztnaActiveDirectoryQuery" + }, + "x-displayname": "AAA Active Directory Success" + }, + "deny_name": { + "type": "string", + "description": " Send deny as next item in case it fails to find the query.\n\nExample: - \"Deny\"-", + "title": "AAA Active Directory Failure", + "x-displayname": "AAA Active Directory Failure", + "x-ves-example": "Deny" + }, + "expression": { + "type": "string", + "description": " Expression string to filter the Directory query.\n\nExample: - \"expr {[mcget {session.ad.last.authresult}] == 1}\"-", + "title": "Expression", + "x-displayname": "Expression", + "x-ves-example": "expr {[mcget {session.ad.last.authresult}] == 1}" + }, + "server": { + "type": "string", + "description": " Server name on which log on is success.\n\nExample: - \"ad_auth_server\"-", + "title": "Server Name", + "x-displayname": "Server", + "x-ves-example": "ad_auth_server" + } + } + }, + "ztnaActiveDirectoryQuery": { + "type": "object", + "description": "\nSend active directory query configuration on success of active directory Auth.", + "title": "Active Directory Query", + "x-displayname": "Active Directory Query", + "x-ves-proto-message": "ves.io.schema.ztna.ActiveDirectoryQuery", + "properties": { + "deny_name": { + "type": "string", + "description": " Send deny as next item if query gets failed.\n\nExample: - \"Deny\"-", + "title": "Active Directory Query Failure", + "x-displayname": "AAA Active Directory Query Failure", + "x-ves-example": "Deny" + }, + "filter": { + "type": "string", + "description": " Filter setting for filtering out the assigned resources \n\nExample: - \"(CN=%{session.logon.last.username})\"-", + "title": "Filter", + "x-displayname": "Filter", + "x-ves-example": "(CN=%{session.logon.last.username})" + }, + "resource_assign": { + "description": "\n List of all assigned resources list ", + "title": "resource assigned", + "$ref": "#/definitions/ztnaResourceAssign", + "x-displayname": "Resource Assign" + }, + "server": { + "type": "string", + "description": " Name of the server which gets assigned.\n\nExample: - \"ad_auth_server\"-", + "title": "Server Name", + "x-displayname": "Server", + "x-ves-example": "ad_auth_server" + } + } + }, + "ztnaAllowResourceAssign": { + "type": "object", + "description": "Configuration of assigned resource after success of directory query", + "title": "Resource Assign\n \nx-displayName: \"Resource Assign\"", + "x-displayname": "Resource Assign", + "x-ves-proto-message": "ves.io.schema.ztna.AllowResourceAssign", + "properties": { + "allow_name": { + "type": "string", + "description": " Send allow as next item in case of success\n\nExample: - \"Allow\"-", + "title": "Resource Assign Success", + "x-displayname": "Resource Assign Success Configuration", + "x-ves-example": "Allow" + }, + "deny_name": { + "type": "string", + "description": " Send deny as next item in case of failure\n\nExample: - \"Deny\"-", + "title": "Resource Assign Failure", + "x-displayname": "Resource Assign Failure Configuration", + "x-ves-example": "Deny" + }, + "rules_resource_assign": { + "type": "array", + "description": " Rules for assigning the resources ", + "title": "Rules", + "items": { + "$ref": "#/definitions/ztnaRules" + }, + "x-displayname": "Rules" + }, + "server": { + "type": "string", + "description": " Server name for assigning the resources\n\nExample: - \"ad_auth_server\"-", + "title": "Server Name\n \nx-displayName: \"Server\"\nx-example: \"ad_auth_server\"\nServer name for assigning the resources", + "x-displayname": "Server", + "x-ves-example": "ad_auth_server" + } + } + }, + "ztnaConnectivity": { + "type": "string", + "description": "\nList of Ztna Connectivity policy tunnel type\n\n - PPP: PPP\n\n\nPPP tunnel type for connectivity policy.\n - DTLS: DTLS\n\n\nTunnel Type is DTLS Tunnel for connectivity policy", + "title": "Ztna Connectivity Policy", + "enum": [ + "PPP", + "DTLS" + ], + "default": "PPP", + "x-displayname": "Ztna Connectivity Policy", + "x-ves-proto-enum": "ves.io.schema.ztna.Connectivity" + }, + "ztnaConnectivityPolicyType": { + "type": "object", + "description": "List of Ztna Connectivity Policy type.", + "title": "Ztna ConnectivityPolicyType", + "x-displayname": "Ztna Connectivity Policy Type", + "x-ves-proto-message": "ves.io.schema.ztna.ConnectivityPolicyType", + "properties": { + "connectivities": { + "description": " Connectivity policy configuration. Select connectivity policy as PPP/DTLS", + "title": "Connectivities", + "$ref": "#/definitions/ztnaConnectivity", + "x-displayname": "Tunnel for Connectivities" + }, + "connectivity_policy_name": { + "type": "string", + "description": " Name of connectivity policy", + "title": "Name", + "x-displayname": "Name of Connectivity Policy" + } + } + }, + "ztnaCreateRequest": { + "type": "object", + "description": "This is the input message of the 'Create' RPC", + "title": "CreateRequest is used to create an instance of ztna", + "x-displayname": "Create Request", + "x-ves-proto-message": "ves.io.schema.ztna.CreateRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectCreateMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the policy of the ztna", + "title": "spec", + "$ref": "#/definitions/ztnaCreateSpecType", + "x-displayname": "Spec" + } + } + }, + "ztnaCreateResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.CreateResponse", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the policy of the ztna", + "title": "spec", + "$ref": "#/definitions/ztnaGetSpecType", + "x-displayname": "Spec" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "ztnaCreateSpecType": { + "type": "object", + "description": "Creates a new Ztna Policy Object", + "title": "Create Ztna Policy", + "x-displayname": "Create Ztna Policy", + "x-ves-proto-message": "ves.io.schema.ztna.CreateSpecType", + "properties": { + "connectivity": { + "description": " List of Connectivity Policy Type ", + "$ref": "#/definitions/ztnaConnectivityPolicyType", + "x-displayname": "Connectivity Access Policy" + }, + "per_session": { + "description": " List of configuration for per session policy type.", + "$ref": "#/definitions/ztnaPerSessionPolicyType", + "x-displayname": "Session Policy Type" + } + } + }, + "ztnaCustmization": { + "type": "object", + "description": "\nUser name and password to log on", + "title": "Custmization", + "x-displayname": "Custmization", + "x-ves-proto-message": "ves.io.schema.ztna.Custmization", + "properties": { + "password": { + "description": "\n This field contains the secret password for log on.", + "title": "Secret Password", + "$ref": "#/definitions/schemaSecretType", + "x-displayname": "Secret Password" + }, + "user_name": { + "type": "string", + "description": "This contains the user name to log on.\n\nExample: - \"User Name\"-", + "title": "Username", + "x-displayname": "User Name", + "x-ves-example": "User Name" + } + } + }, + "ztnaDeleteRequest": { + "type": "object", + "description": "This is the input message of the 'Delete' RPC.", + "title": "DeleteRequest is used to delete a ztna", + "x-displayname": "Delete Request", + "x-ves-proto-message": "ves.io.schema.ztna.DeleteRequest", + "properties": { + "fail_if_referred": { + "type": "boolean", + "description": " Fail the delete operation if this object is being referred by other objects", + "title": "fail_if_referred", + "format": "boolean", + "x-displayname": "Fail-If-Referred" + }, + "name": { + "type": "string", + "description": " Name of the configuration object\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " Namespace in which the configuration object is present\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + } + } + }, + "ztnaEntry": { + "type": "object", + "description": "x-displayName: \"Entry\"\n\nList of entries for diferrent Acl resource type.", + "title": "Entry", + "properties": { + "action": { + "description": "x-displayName: \"Action\"\n\naction is either allow/reject for acl resource type", + "title": "action", + "$ref": "#/definitions/schemaztnaAction" + }, + "destination_end_port": { + "type": "integer", + "description": "x-displayName: \"destination End Port\"\n\nDestination End Port for acl resource type.", + "title": "dstEndPort", + "format": "int64" + }, + "destination_ip": { + "description": "x-displayName: \"Destination IP\"\n\nDestination IP address for the acl resource type.", + "title": "dstIp", + "$ref": "#/definitions/schemaIpAddressType" + }, + "destination_start_port": { + "type": "integer", + "description": "x-displayName: \"Destination Start Port\"\n\nDestination start port for acl resource type.", + "title": "dstStartPort", + "format": "int64" + } + } + }, + "ztnaExternalServers": { + "type": "object", + "description": "x-displayName: \"External Servers\"\n\nExternal server is list of server for ztna per session policy.", + "title": "Ztna Policy ExternalServers", + "properties": { + "admin_password": { + "description": "x-displayName: \"Admin Password\"\n\nSecret password credential used for external server", + "title": "Admin Password", + "$ref": "#/definitions/schemaSecretType" + }, + "admin_username": { + "type": "string", + "description": "x-displayName: \"Admin Name\"\nx-example: \"Admin\"\nCredentials used for external server", + "title": "adminName" + }, + "domain": { + "type": "string", + "description": "x-displayName: \"Domain\"\nx-example: \"apm.f5net.com\"\nDomain name for the external server", + "title": "domain" + }, + "server_type": { + "description": "x-displayName: \"Server Type\"\n\nserverType of External server", + "title": "serverType", + "$ref": "#/definitions/ztnaServerType" + } + } + }, + "ztnaGetResponse": { + "type": "object", + "description": "This is the output message of the 'Get' RPC", + "title": "GetResponse is the shape of a read ztna", + "x-displayname": "Get Response", + "x-ves-proto-message": "ves.io.schema.ztna.GetResponse", + "properties": { + "create_form": { + "description": "Format used to create a new similar object", + "title": "create_form", + "$ref": "#/definitions/ztnaCreateRequest", + "x-displayname": "CreateRequest Format" + }, + "deleted_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "deleted_referred_objects", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Deleted Referred Objects" + }, + "disabled_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "disabled_referred_objects", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Disabled Referred Objects" + }, + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "referring_objects": { + "type": "array", + "description": "The set of objects that are referring to this object in their spec", + "title": "referring_objects", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Referring Objects" + }, + "replace_form": { + "description": "Format to replace changeable values in object", + "title": "replace_form", + "$ref": "#/definitions/ztnaReplaceRequest", + "x-displayname": "ReplaceRequest Format" + }, + "spec": { + "description": " Specification of the policy of the ztna", + "title": "spec", + "$ref": "#/definitions/ztnaGetSpecType", + "x-displayname": "Spec" + }, + "status": { + "type": "array", + "description": "The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/ztnaStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "ztnaGetResponseFormatCode": { + "type": "string", + "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_STATUS: x-displayName: \"Status format\"\nResponse should be in StatusObject(s) format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", + "title": "GetResponseFormatCode", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT" + }, + "ztnaGetSpecType": { + "type": "object", + "description": "Get the ztna policy object", + "title": "Get Ztna Policy", + "x-displayname": "Get Ztna Policy", + "x-ves-proto-message": "ves.io.schema.ztna.GetSpecType", + "properties": { + "connectivity": { + "description": " List of Connectivity Policy Type ", + "$ref": "#/definitions/ztnaConnectivityPolicyType", + "x-displayname": "Connectivity Access Policy" + }, + "per_session": { + "description": " List of configuration for per session policy type.", + "$ref": "#/definitions/ztnaPerSessionPolicyType", + "x-displayname": "Session Policy Type" + } + } + }, + "ztnaLeasePoolMember": { + "type": "object", + "description": "x-displayName: \"Lease Pools Member\"\n\nThe lease pool member is pool member for per session policy.", + "title": "Ztna Policy LeasePoolsMembers", + "properties": { + "end_address": { + "description": "x-displayName: \"End Address\"\n\nEnd Address of Lease Pool member", + "title": "endaddress", + "$ref": "#/definitions/schemaIpAddressType" + }, + "start_address": { + "description": "x-displayName: \"Start Address\"\n\nstartAddress of Lease Pool member", + "title": "StartAddress", + "$ref": "#/definitions/schemaIpAddressType" + } + } + }, + "ztnaListResponse": { + "type": "object", + "description": "This is the output message of 'List' RPC.", + "title": "ListResponse is the collection of ztna", + "x-displayname": "List Response", + "x-ves-proto-message": "ves.io.schema.ztna.ListResponse", + "properties": { + "errors": { + "type": "array", + "description": " Errors(if any) while listing items from collection", + "title": "errors", + "items": { + "$ref": "#/definitions/schemaErrorType" + }, + "x-displayname": "Errors" + }, + "items": { + "type": "array", + "description": " items represents the collection in response", + "title": "items", + "items": { + "$ref": "#/definitions/ztnaListResponseItem" + }, + "x-displayname": "Items" + } + } + }, + "ztnaListResponseItem": { + "type": "object", + "description": "By default a summary of ztna is returned in 'List'. By setting\n'report_fields' in the ListRequest more details of each item can be got.", + "title": "ListResponseItem is an individual item in a collection of ztna", + "x-displayname": "List Item", + "x-ves-proto-message": "ves.io.schema.ztna.ListResponseItem", + "properties": { + "annotations": { + "type": "object", + "description": " The set of annotations present on this ztna", + "title": "annotations", + "x-displayname": "Annotations" + }, + "description": { + "type": "string", + "description": " The description set for this ztna", + "title": "description", + "x-displayname": "Description" + }, + "disabled": { + "type": "boolean", + "description": " A value of true indicates ztna is administratively disabled", + "title": "disabled", + "format": "boolean", + "x-displayname": "Disabled" + }, + "get_spec": { + "description": " If ListRequest has any specified report_fields, it will appear in object", + "title": "get_spec", + "$ref": "#/definitions/ztnaGetSpecType", + "x-displayname": "Get Specification" + }, + "labels": { + "type": "object", + "description": " The set of labels present on this ztna", + "title": "labels", + "x-displayname": "Labels" + }, + "metadata": { + "description": " If list request has report_fields set then metadata will\n contain all the metadata associated with the object.", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "name": { + "type": "string", + "description": " The name of this ztna\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " The namespace this item belongs to\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "status_set": { + "type": "array", + "description": " The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/ztnaStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " If list request has report_fields set then system_metadata will\n contain all the system generated details of this object.", + "title": "system_metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + }, + "tenant": { + "type": "string", + "description": " The tenant this item belongs to\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " The unique uid of this ztna\n\nExample: - \"d27938ba-967e-40a7-9709-57b8627f9f75\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d27938ba-967e-40a7-9709-57b8627f9f75" + } + } + }, + "ztnaLogonItemType": { + "type": "object", + "description": "\nSend log on configuration as user name and password", + "title": "Log on as nextItem", + "x-displayname": "Log On Next Item", + "x-ves-proto-message": "ves.io.schema.ztna.LogonItemType", + "properties": { + "active_directory_auth": { + "type": "array", + "description": "\n After logon next item is to verify the group and directory.", + "title": "nextItem", + "items": { + "$ref": "#/definitions/ztnaActiveDirectoryAuth" + }, + "x-displayname": "AAA Active Directory Auth" + }, + "customization": { + "type": "array", + "description": "\n This contains language , username and secret to login", + "title": "Credentials", + "items": { + "$ref": "#/definitions/ztnaCustmization" + }, + "x-displayname": "Credentials" + } + } + }, + "ztnaPerSessionPolicyType": { + "type": "object", + "description": "List of Per Session Policy type.", + "title": "Ztna Per Session Type", + "x-displayname": "Session Policy Type", + "x-ves-proto-message": "ves.io.schema.ztna.PerSessionPolicyType", + "properties": { + "external_server": { + "type": "object", + "description": " List of configuration of external server \n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 256\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.max_pairs: 64\n", + "title": "ExternalServers", + "x-displayname": "External Servers", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64" + } + }, + "lease_pool_member": { + "type": "object", + "description": " List of Lease pool member for Session Policy\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 256\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.max_pairs: 64\n", + "title": "Lease Pool Member", + "x-displayname": "Lease Pool Member", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64" + } + }, + "per_session_policy_name": { + "type": "string", + "description": " This contains the name of session policy", + "title": "Name", + "x-displayname": "Session Policy Name" + }, + "resources": { + "type": "object", + "description": " List of the Policy of session type.\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 256\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.max_pairs: 64\n", + "title": "Session Policy configuration", + "x-displayname": "Resources", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64" + } + }, + "sequence_action": { + "description": " Choose the sequence action from Log On/AAA Directory Auth/\n Active Directory Query/Resource Assign ", + "title": "Sequence of Action", + "$ref": "#/definitions/ztnaSequenceAction", + "x-displayname": "Sequence Action" + } + } + }, + "ztnaReplaceRequest": { + "type": "object", + "description": "This is the input message of the 'Replace' RPC", + "title": "ReplaceRequest is used to replace contents of a ztna", + "x-displayname": "Replace Request", + "x-ves-proto-message": "ves.io.schema.ztna.ReplaceRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectReplaceMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the policy of the ztna", + "title": "spec", + "$ref": "#/definitions/ztnaReplaceSpecType", + "x-displayname": "Spec" + } + } + }, + "ztnaReplaceResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna.ReplaceResponse" + }, + "ztnaReplaceSpecType": { + "type": "object", + "description": "Replaces the content of the Ztna policy object", + "title": "Replace Ztna Policy", + "x-displayname": "Replace Ztna Policy", + "x-ves-proto-message": "ves.io.schema.ztna.ReplaceSpecType", + "properties": { + "connectivity": { + "description": " List of Connectivity Policy Type ", + "$ref": "#/definitions/ztnaConnectivityPolicyType", + "x-displayname": "Connectivity Access Policy" + }, + "per_session": { + "description": " List of configuration for per session policy type.", + "$ref": "#/definitions/ztnaPerSessionPolicyType", + "x-displayname": "Session Policy Type" + } + } + }, + "ztnaResource": { + "type": "object", + "description": "x-displayName: \"Resources\"\n\nChoose the resource type for session policy type as WebTopFull/Acl/ConnectivityResource", + "title": "Resource for Per Session Policy", + "properties": { + "acl": { + "description": "x-displayName: \"Acl Resource Entry\"\n\nResource type is ACL.", + "title": "AclResourceEntry", + "$ref": "#/definitions/ztnaAclResourceEntry" + }, + "connectivity": { + "description": "x-displayName: \"Connectivity Resource Network Access\"\n\nResource type is connectivity .", + "title": "ConnectivityResourceNetworkAccess", + "$ref": "#/definitions/ioschemaEmpty" + }, + "web": { + "description": "x-displayName: \"Webtop Full Resource Type\"\n\nResource type is webtopfull.", + "title": "WebtopFullResourceType", + "$ref": "#/definitions/ioschemaEmpty" + } + } + }, + "ztnaResourceAssign": { + "type": "object", + "description": "\nList of all assigned resources.", + "title": "Resource Assign", + "x-displayname": "Resource Assign", + "x-ves-proto-message": "ves.io.schema.ztna.ResourceAssign", + "properties": { + "allow": { + "type": "array", + "description": "\n This sends resource assign configuration", + "title": "Resource Assign", + "items": { + "$ref": "#/definitions/ztnaAllowResourceAssign" + }, + "x-displayname": "Resource Assign Configuration" + } + } + }, + "ztnaRules": { + "type": "object", + "description": "\nSend all the configuration rules.", + "title": "Rules", + "x-displayname": "Rules", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.ztna.Rules", + "properties": { + "acls": { + "type": "array", + "description": " Put the list of all acls resource type name.\n\nExample: - \"acltest1\"-", + "title": "Acls", + "items": { + "type": "string" + }, + "x-displayname": "Acls", + "x-ves-example": "acltest1" + }, + "network_access_rule": { + "type": "array", + "description": " List of network access rules configuration\n\nExample: - \"cp-demo\"-", + "title": "Network access rules", + "items": { + "type": "string" + }, + "x-displayname": "Network Access Rules", + "x-ves-example": "cp-demo" + }, + "web_top_name": { + "type": "string", + "description": " Put the name of webtopfull resource type\n\nExample: - \"webtop1\"-", + "title": "Web Top Name", + "x-displayname": "Web Top Name", + "x-ves-example": "webtop1" + } + } + }, + "ztnaSequenceAction": { + "type": "object", + "description": "\nThis configuration is used to specify the sequence of action \nfor connectivity access Policy", + "title": "sequenceAction", + "x-displayname": "SequenceAction", + "x-ves-proto-message": "ves.io.schema.ztna.SequenceAction", + "properties": { + "connectivity_access_policy_name": { + "type": "string", + "description": " Name of connectivity policy \n\nExample: - \"connectivity_demo\"-", + "title": "connectivityAccessPolicyName", + "x-displayname": "Connectivity AccessPolicy Name", + "x-ves-example": "connectivity_demo" + }, + "next_action": { + "description": " Next Action could be any one from the Log On/AAA Directory Auth/\n Active Directory Query/Resource Assign ", + "title": "Next Item", + "$ref": "#/definitions/ztnaActionType", + "x-displayname": "Next Item " + } + } + }, + "ztnaServerType": { + "type": "string", + "description": "x-displayName: \"Server Type\"\n\nExternal server for using the per session policy\n\n - ActiveDirectory: ActiveDirectory\n\nx-displayName: \"ActiveDirectory\"\n\nActiveDirectory Server Type\n - RadiusServer: RadiusServer\n\nx-displayName: \"RadiusServer\"\n\nRadius Server Type", + "title": "ServerType", + "enum": [ + "ActiveDirectory", + "RadiusServer" + ], + "default": "ActiveDirectory" + }, + "ztnaStatusObject": { + "type": "object", + "description": "Most recently observed status of object", + "title": "Status of Ztna Policy Configuration", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.ztna.StatusObject", + "properties": { + "conditions": { + "type": "array", + "description": " Conditions reported by various component of the system", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" + }, + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " Refernce to object for current status", + "title": "object_refs", + "items": { + "$ref": "#/definitions/schemaObjectRefType" + }, + "x-displayname": "Config Object" + } + } + } + }, + "x-displayname": "Ztna Policy", + "x-ves-proto-file": "ves.io/schema/ztna/public_crudapi.proto" +}` diff --git a/pbgo/extschema/schema/ztna/public_crudapi.vesmsg.go b/pbgo/extschema/schema/ztna/public_crudapi.vesmsg.go new file mode 100644 index 000000000..fe5cd0fe0 --- /dev/null +++ b/pbgo/extschema/schema/ztna/public_crudapi.vesmsg.go @@ -0,0 +1,1654 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CreateRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *CreateRequest) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateRequest.spec") + } + + return nil +} + +func (m *CreateRequest) DeepCopy() *CreateRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateRequestValidator = func() *ValidateCreateRequest { + v := &ValidateCreateRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectCreateMetaTypeValidator().Validate + + v.FldValidators["spec"] = CreateSpecTypeValidator().Validate + + return v +}() + +func CreateRequestValidator() db.Validator { + return DefaultCreateRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CreateResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *CreateResponse) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateResponse.spec") + } + + return nil +} + +func (m *CreateResponse) DeepCopy() *CreateResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateResponseValidator = func() *ValidateCreateResponse { + v := &ValidateCreateResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + return v +}() + +func CreateResponseValidator() db.Validator { + return DefaultCreateResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DeleteRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DeleteRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DeleteRequest) DeepCopy() *DeleteRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DeleteRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DeleteRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DeleteRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DeleteRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateDeleteRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDeleteRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DeleteRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DeleteRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fail_if_referred"]; exists { + + vOpts := append(opts, db.WithValidateField("fail_if_referred")) + if err := fv(ctx, m.GetFailIfReferred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDeleteRequestValidator = func() *ValidateDeleteRequest { + v := &ValidateDeleteRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func DeleteRequestValidator() db.Validator { + return DefaultDeleteRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetRequest) DeepCopy() *GetRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateGetRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["response_format"]; exists { + + vOpts := append(opts, db.WithValidateField("response_format")) + if err := fv(ctx, m.GetResponseFormat(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetRequestValidator = func() *ValidateGetRequest { + v := &ValidateGetRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GetRequestValidator() db.Validator { + return DefaultGetRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *GetResponse) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetCreateForm().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetResponse.create_form") + } + + if err := m.GetReplaceForm().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetResponse.replace_form") + } + + if err := m.GetSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetResponse.spec") + } + + return nil +} + +func (m *GetResponse) DeepCopy() *GetResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetResponseValidator().Validate(ctx, m, opts...) +} + +func (m *GetResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return nil, nil + +} + +type ValidateGetResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["create_form"]; exists { + + vOpts := append(opts, db.WithValidateField("create_form")) + if err := fv(ctx, m.GetCreateForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["deleted_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("deleted_referred_objects")) + for idx, item := range m.GetDeletedReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["disabled_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled_referred_objects")) + for idx, item := range m.GetDisabledReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["referring_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("referring_objects")) + for idx, item := range m.GetReferringObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["replace_form"]; exists { + + vOpts := append(opts, db.WithValidateField("replace_form")) + if err := fv(ctx, m.GetReplaceForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetResponseValidator = func() *ValidateGetResponse { + v := &ValidateGetResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["create_form"] = CreateRequestValidator().Validate + + v.FldValidators["replace_form"] = ReplaceRequestValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["status"] = StatusObjectValidator().Validate + + return v +}() + +func GetResponseValidator() db.Validator { + return DefaultGetResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListRequest) DeepCopy() *ListRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateListRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["report_status_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_status_fields")) + for idx, item := range m.GetReportStatusFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListRequestValidator = func() *ValidateListRequest { + v := &ValidateListRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ListRequestValidator() db.Validator { + return DefaultListRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ListResponse) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + for idx, e := range m.GetItems() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ListResponse.items idx %v", idx) + } + } + + return nil +} + +func (m *ListResponse) DeepCopy() *ListResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ListResponse) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateListResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["errors"]; exists { + + vOpts := append(opts, db.WithValidateField("errors")) + for idx, item := range m.GetErrors() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseValidator = func() *ValidateListResponse { + v := &ValidateListResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ListResponseItemValidator().Validate + + return v +}() + +func ListResponseValidator() db.Validator { + return DefaultListResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponseItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponseItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ListResponseItem) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetGetSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ListResponseItem.get_spec") + } + + return nil +} + +func (m *ListResponseItem) DeepCopy() *ListResponseItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponseItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponseItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponseItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseItemValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponseItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return nil, nil + +} + +type ValidateListResponseItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponseItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponseItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponseItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["annotations"]; exists { + + vOpts := append(opts, db.WithValidateField("annotations")) + for key, value := range m.GetAnnotations() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["description"]; exists { + + vOpts := append(opts, db.WithValidateField("description")) + if err := fv(ctx, m.GetDescription(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["disabled"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled")) + if err := fv(ctx, m.GetDisabled(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["get_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("get_spec")) + if err := fv(ctx, m.GetGetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["owner_view"]; exists { + + vOpts := append(opts, db.WithValidateField("owner_view")) + if err := fv(ctx, m.GetOwnerView(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status_set"]; exists { + + vOpts := append(opts, db.WithValidateField("status_set")) + for idx, item := range m.GetStatusSet() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uid"]; exists { + + vOpts := append(opts, db.WithValidateField("uid")) + if err := fv(ctx, m.GetUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseItemValidator = func() *ValidateListResponseItem { + v := &ValidateListResponseItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["get_spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["status_set"] = StatusObjectValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + return v +}() + +func ListResponseItemValidator() db.Validator { + return DefaultListResponseItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ReplaceRequest) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetSpec().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceRequest.spec") + } + + return nil +} + +func (m *ReplaceRequest) DeepCopy() *ReplaceRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceRequestValidator = func() *ValidateReplaceRequest { + v := &ValidateReplaceRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectReplaceMetaTypeValidator().Validate + + v.FldValidators["spec"] = ReplaceSpecTypeValidator().Validate + + return v +}() + +func ReplaceRequestValidator() db.Validator { + return DefaultReplaceRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceResponse) DeepCopy() *ReplaceResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceResponse got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceResponseValidator = func() *ValidateReplaceResponse { + v := &ValidateReplaceResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ReplaceResponseValidator() db.Validator { + return DefaultReplaceResponseValidator +} + +func (m *CreateRequest) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectCreateMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &CreateSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + +} + +func (m *CreateRequest) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *CreateRequest) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *CreateRequest) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + +} + +func (m *CreateRequest) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *CreateRequest) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *CreateResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *CreateResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *CreateResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *CreateResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *CreateResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *CreateResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *GetResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *GetResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *GetResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *GetResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *GetResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *GetResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ReplaceRequest) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectReplaceMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + +} + +func (m *ReplaceRequest) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ReplaceRequest) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ReplaceRequest) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + +} + +func (m *ReplaceRequest) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ReplaceRequest) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/ztna/types.pb.go b/pbgo/extschema/schema/ztna/types.pb.go new file mode 100644 index 000000000..de182f9d7 --- /dev/null +++ b/pbgo/extschema/schema/ztna/types.pb.go @@ -0,0 +1,8233 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna/types.proto + +package ztna + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// ServerType +// +// x-displayName: "Server Type" +// +// External server for using the per session policy +type ServerType int32 + +const ( + // ActiveDirectory + // + // x-displayName: "ActiveDirectory" + // + // ActiveDirectory Server Type + ActiveDirectory ServerType = 0 + // RadiusServer + // + // x-displayName: "RadiusServer" + // + // Radius Server Type + RadiusServer ServerType = 1 +) + +var ServerType_name = map[int32]string{ + 0: "ActiveDirectory", + 1: "RadiusServer", +} + +var ServerType_value = map[string]int32{ + "ActiveDirectory": 0, + "RadiusServer": 1, +} + +func (ServerType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{0} +} + +// Ztna Policy Action +// +// x-displayName: "Action" +// This sends allow/reject action in entry configuration of per session policy +type Action int32 + +const ( + // Reject + // + // x-displayName: "Reject" + // Reject will be choosen as action + reject Action = 0 + //allow + // + // x-displayName: "Allow" + // Allow will be choosen as action . + allow Action = 1 +) + +var Action_name = map[int32]string{ + 0: "reject", + 1: "allow", +} + +var Action_value = map[string]int32{ + "reject": 0, + "allow": 1, +} + +func (Action) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{1} +} + +// Ztna Connectivity Policy +// +// x-displayName: "Ztna Connectivity Policy" +// +// List of Ztna Connectivity policy tunnel type +type Connectivity int32 + +const ( + // PPP + // + // x-displayName: "PPP Tunnel" + // + // PPP tunnel type for connectivity policy. + PPP Connectivity = 0 + // DTLS + // + // x-displayName: "DTLS Tunnel" + // + // Tunnel Type is DTLS Tunnel for connectivity policy + DTLS Connectivity = 1 +) + +var Connectivity_name = map[int32]string{ + 0: "PPP", + 1: "DTLS", +} + +var Connectivity_value = map[string]int32{ + "PPP": 0, + "DTLS": 1, +} + +func (Connectivity) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{2} +} + +// Ztna Policy LeasePoolsMembers +// +// x-displayName: "Lease Pools Member" +// +// The lease pool member is pool member for per session policy. +type LeasePoolMember struct { + // StartAddress + // + // x-displayName: "Start Address" + // + // startAddress of Lease Pool member + StartAddress *schema.IpAddressType `protobuf:"bytes,1,opt,name=start_address,json=startAddress,proto3" json:"start_address,omitempty"` + // endaddress + // + // x-displayName: "End Address" + // + // End Address of Lease Pool member + EndAddress *schema.IpAddressType `protobuf:"bytes,2,opt,name=end_address,json=endAddress,proto3" json:"end_address,omitempty"` +} + +func (m *LeasePoolMember) Reset() { *m = LeasePoolMember{} } +func (*LeasePoolMember) ProtoMessage() {} +func (*LeasePoolMember) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{0} +} +func (m *LeasePoolMember) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LeasePoolMember) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *LeasePoolMember) XXX_Merge(src proto.Message) { + xxx_messageInfo_LeasePoolMember.Merge(m, src) +} +func (m *LeasePoolMember) XXX_Size() int { + return m.Size() +} +func (m *LeasePoolMember) XXX_DiscardUnknown() { + xxx_messageInfo_LeasePoolMember.DiscardUnknown(m) +} + +var xxx_messageInfo_LeasePoolMember proto.InternalMessageInfo + +func (m *LeasePoolMember) GetStartAddress() *schema.IpAddressType { + if m != nil { + return m.StartAddress + } + return nil +} + +func (m *LeasePoolMember) GetEndAddress() *schema.IpAddressType { + if m != nil { + return m.EndAddress + } + return nil +} + +// Ztna Policy ExternalServers +// +// x-displayName: "External Servers" +// +// External server is list of server for ztna per session policy. +type ExternalServers struct { + // serverType + // + // x-displayName: "Server Type" + // + // serverType of External server + ServerType ServerType `protobuf:"varint,2,opt,name=server_type,json=serverType,proto3,enum=ves.io.schema.ztna.ServerType" json:"server_type,omitempty"` + // domain + // + // x-displayName: "Domain" + // x-example: "apm.f5net.com" + // Domain name for the external server + Domain string `protobuf:"bytes,3,opt,name=domain,proto3" json:"domain,omitempty"` + // adminName + // + // x-displayName: "Admin Name" + // x-example: "Admin" + // Credentials used for external server + AdminUsername string `protobuf:"bytes,4,opt,name=admin_username,json=adminUsername,proto3" json:"admin_username,omitempty"` + // Admin Password + // + // x-displayName: "Admin Password" + // + // Secret password credential used for external server + AdminPassword *schema.SecretType `protobuf:"bytes,5,opt,name=admin_password,json=adminPassword,proto3" json:"admin_password,omitempty"` +} + +func (m *ExternalServers) Reset() { *m = ExternalServers{} } +func (*ExternalServers) ProtoMessage() {} +func (*ExternalServers) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{1} +} +func (m *ExternalServers) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ExternalServers) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ExternalServers) XXX_Merge(src proto.Message) { + xxx_messageInfo_ExternalServers.Merge(m, src) +} +func (m *ExternalServers) XXX_Size() int { + return m.Size() +} +func (m *ExternalServers) XXX_DiscardUnknown() { + xxx_messageInfo_ExternalServers.DiscardUnknown(m) +} + +var xxx_messageInfo_ExternalServers proto.InternalMessageInfo + +func (m *ExternalServers) GetServerType() ServerType { + if m != nil { + return m.ServerType + } + return ActiveDirectory +} + +func (m *ExternalServers) GetDomain() string { + if m != nil { + return m.Domain + } + return "" +} + +func (m *ExternalServers) GetAdminUsername() string { + if m != nil { + return m.AdminUsername + } + return "" +} + +func (m *ExternalServers) GetAdminPassword() *schema.SecretType { + if m != nil { + return m.AdminPassword + } + return nil +} + +// Entry +// +// x-displayName: "Entry" +// +// List of entries for diferrent Acl resource type. +type Entry struct { + // action + // + // x-displayName: "Action" + // + // action is either allow/reject for acl resource type + Action Action `protobuf:"varint,1,opt,name=action,proto3,enum=ves.io.schema.ztna.Action" json:"action,omitempty"` + // dstIp + // + // x-displayName: "Destination IP" + // + // Destination IP address for the acl resource type. + DestinationIp *schema.IpAddressType `protobuf:"bytes,2,opt,name=destination_ip,json=destinationIp,proto3" json:"destination_ip,omitempty"` + // dstStartPort + // + // x-displayName: "Destination Start Port" + // + // Destination start port for acl resource type. + DestinationStartPort uint32 `protobuf:"varint,3,opt,name=destination_start_port,json=destinationStartPort,proto3" json:"destination_start_port,omitempty"` + // dstEndPort + // + // x-displayName: "destination End Port" + // + // Destination End Port for acl resource type. + DestinationEndPort uint32 `protobuf:"varint,4,opt,name=destination_end_port,json=destinationEndPort,proto3" json:"destination_end_port,omitempty"` +} + +func (m *Entry) Reset() { *m = Entry{} } +func (*Entry) ProtoMessage() {} +func (*Entry) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{2} +} +func (m *Entry) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Entry) XXX_Merge(src proto.Message) { + xxx_messageInfo_Entry.Merge(m, src) +} +func (m *Entry) XXX_Size() int { + return m.Size() +} +func (m *Entry) XXX_DiscardUnknown() { + xxx_messageInfo_Entry.DiscardUnknown(m) +} + +var xxx_messageInfo_Entry proto.InternalMessageInfo + +func (m *Entry) GetAction() Action { + if m != nil { + return m.Action + } + return reject +} + +func (m *Entry) GetDestinationIp() *schema.IpAddressType { + if m != nil { + return m.DestinationIp + } + return nil +} + +func (m *Entry) GetDestinationStartPort() uint32 { + if m != nil { + return m.DestinationStartPort + } + return 0 +} + +func (m *Entry) GetDestinationEndPort() uint32 { + if m != nil { + return m.DestinationEndPort + } + return 0 +} + +// AclResourceEntry +// +// x-displayName: "Acl Resource Entry" +// +// List of configuration for acl resource type. +type AclResourceEntry struct { + // entries + // + // x-displayName: "Entries" + // + // Entries Config for Acl Resource + Entries []*Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"` +} + +func (m *AclResourceEntry) Reset() { *m = AclResourceEntry{} } +func (*AclResourceEntry) ProtoMessage() {} +func (*AclResourceEntry) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{3} +} +func (m *AclResourceEntry) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AclResourceEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AclResourceEntry) XXX_Merge(src proto.Message) { + xxx_messageInfo_AclResourceEntry.Merge(m, src) +} +func (m *AclResourceEntry) XXX_Size() int { + return m.Size() +} +func (m *AclResourceEntry) XXX_DiscardUnknown() { + xxx_messageInfo_AclResourceEntry.DiscardUnknown(m) +} + +var xxx_messageInfo_AclResourceEntry proto.InternalMessageInfo + +func (m *AclResourceEntry) GetEntries() []*Entry { + if m != nil { + return m.Entries + } + return nil +} + +// Resource for Per Session Policy +// +// x-displayName: "Resources" +// +// Choose the resource type for session policy type as WebTopFull/Acl/ConnectivityResource +type Resource struct { + // Resource Type + // + // x-displayName: "Select Resource Type" + // Select resource type WebTopFull/Acl/ConnectivityResource + // + // Types that are valid to be assigned to ResourceType: + // *Resource_Acl + // *Resource_Web + // *Resource_Connectivity + ResourceType isResource_ResourceType `protobuf_oneof:"resource_type"` +} + +func (m *Resource) Reset() { *m = Resource{} } +func (*Resource) ProtoMessage() {} +func (*Resource) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{4} +} +func (m *Resource) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Resource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Resource) XXX_Merge(src proto.Message) { + xxx_messageInfo_Resource.Merge(m, src) +} +func (m *Resource) XXX_Size() int { + return m.Size() +} +func (m *Resource) XXX_DiscardUnknown() { + xxx_messageInfo_Resource.DiscardUnknown(m) +} + +var xxx_messageInfo_Resource proto.InternalMessageInfo + +type isResource_ResourceType interface { + isResource_ResourceType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type Resource_Acl struct { + Acl *AclResourceEntry `protobuf:"bytes,2,opt,name=acl,proto3,oneof" json:"acl,omitempty"` +} +type Resource_Web struct { + Web *schema.Empty `protobuf:"bytes,3,opt,name=web,proto3,oneof" json:"web,omitempty"` +} +type Resource_Connectivity struct { + Connectivity *schema.Empty `protobuf:"bytes,4,opt,name=connectivity,proto3,oneof" json:"connectivity,omitempty"` +} + +func (*Resource_Acl) isResource_ResourceType() {} +func (*Resource_Web) isResource_ResourceType() {} +func (*Resource_Connectivity) isResource_ResourceType() {} + +func (m *Resource) GetResourceType() isResource_ResourceType { + if m != nil { + return m.ResourceType + } + return nil +} + +func (m *Resource) GetAcl() *AclResourceEntry { + if x, ok := m.GetResourceType().(*Resource_Acl); ok { + return x.Acl + } + return nil +} + +func (m *Resource) GetWeb() *schema.Empty { + if x, ok := m.GetResourceType().(*Resource_Web); ok { + return x.Web + } + return nil +} + +func (m *Resource) GetConnectivity() *schema.Empty { + if x, ok := m.GetResourceType().(*Resource_Connectivity); ok { + return x.Connectivity + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Resource) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Resource_Acl)(nil), + (*Resource_Web)(nil), + (*Resource_Connectivity)(nil), + } +} + +// Rules +// +// x-displayName: "Rules" +// +// Send all the configuration rules. +type Rules struct { + // Network access rules + // + // x-displayName: "Network Access Rules" + // x-example: "cp-demo" + // List of network access rules configuration + NetworkAccessRule []string `protobuf:"bytes,1,rep,name=network_access_rule,json=networkAccessRule,proto3" json:"network_access_rule,omitempty"` + // Web Top Name + // + // x-displayName: "Web Top Name" + // x-example: "webtop1" + // Put the name of webtopfull resource type + WebTopName string `protobuf:"bytes,2,opt,name=web_top_name,json=webTopName,proto3" json:"web_top_name,omitempty"` + // Acls + // + // x-displayName: "Acls" + // x-example: "acltest1" + // Put the list of all acls resource type name. + Acls []string `protobuf:"bytes,3,rep,name=acls,proto3" json:"acls,omitempty"` +} + +func (m *Rules) Reset() { *m = Rules{} } +func (*Rules) ProtoMessage() {} +func (*Rules) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{5} +} +func (m *Rules) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Rules) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Rules) XXX_Merge(src proto.Message) { + xxx_messageInfo_Rules.Merge(m, src) +} +func (m *Rules) XXX_Size() int { + return m.Size() +} +func (m *Rules) XXX_DiscardUnknown() { + xxx_messageInfo_Rules.DiscardUnknown(m) +} + +var xxx_messageInfo_Rules proto.InternalMessageInfo + +func (m *Rules) GetNetworkAccessRule() []string { + if m != nil { + return m.NetworkAccessRule + } + return nil +} + +func (m *Rules) GetWebTopName() string { + if m != nil { + return m.WebTopName + } + return "" +} + +func (m *Rules) GetAcls() []string { + if m != nil { + return m.Acls + } + return nil +} + +// Resource Assign +// +// x-displayName: "Resource Assign" +// +// Configuration of assigned resource after success of directory query +type AllowResourceAssign struct { + // Server Name + // + // x-displayName: "Server" + // x-example: "ad_auth_server" + // Server name for assigning the resources + Server string `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"` + // Rules + // + // x-displayName: "Rules" + // Rules for assigning the resources + RulesResourceAssign []*Rules `protobuf:"bytes,2,rep,name=rules_resource_assign,json=rulesResourceAssign,proto3" json:"rules_resource_assign,omitempty"` + // Resource Assign Failure + // + // x-displayName: "Resource Assign Failure Configuration" + // x-example: "Deny" + // Send deny as next item in case of failure + DenyName string `protobuf:"bytes,3,opt,name=deny_name,json=denyName,proto3" json:"deny_name,omitempty"` + // Resource Assign Success + // + // x-displayName: "Resource Assign Success Configuration" + // x-example: "Allow" + // Send allow as next item in case of success + AllowName string `protobuf:"bytes,4,opt,name=allow_name,json=allowName,proto3" json:"allow_name,omitempty"` +} + +func (m *AllowResourceAssign) Reset() { *m = AllowResourceAssign{} } +func (*AllowResourceAssign) ProtoMessage() {} +func (*AllowResourceAssign) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{6} +} +func (m *AllowResourceAssign) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AllowResourceAssign) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *AllowResourceAssign) XXX_Merge(src proto.Message) { + xxx_messageInfo_AllowResourceAssign.Merge(m, src) +} +func (m *AllowResourceAssign) XXX_Size() int { + return m.Size() +} +func (m *AllowResourceAssign) XXX_DiscardUnknown() { + xxx_messageInfo_AllowResourceAssign.DiscardUnknown(m) +} + +var xxx_messageInfo_AllowResourceAssign proto.InternalMessageInfo + +func (m *AllowResourceAssign) GetServer() string { + if m != nil { + return m.Server + } + return "" +} + +func (m *AllowResourceAssign) GetRulesResourceAssign() []*Rules { + if m != nil { + return m.RulesResourceAssign + } + return nil +} + +func (m *AllowResourceAssign) GetDenyName() string { + if m != nil { + return m.DenyName + } + return "" +} + +func (m *AllowResourceAssign) GetAllowName() string { + if m != nil { + return m.AllowName + } + return "" +} + +// Resource Assign +// +// x-displayName: "Resource Assign" +// +// List of all assigned resources. +type ResourceAssign struct { + // Resource Assign + // + // x-displayName: "Resource Assign Configuration" + // + // This sends resource assign configuration + Allow []*AllowResourceAssign `protobuf:"bytes,2,rep,name=allow,proto3" json:"allow,omitempty"` +} + +func (m *ResourceAssign) Reset() { *m = ResourceAssign{} } +func (*ResourceAssign) ProtoMessage() {} +func (*ResourceAssign) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{7} +} +func (m *ResourceAssign) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ResourceAssign) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ResourceAssign) XXX_Merge(src proto.Message) { + xxx_messageInfo_ResourceAssign.Merge(m, src) +} +func (m *ResourceAssign) XXX_Size() int { + return m.Size() +} +func (m *ResourceAssign) XXX_DiscardUnknown() { + xxx_messageInfo_ResourceAssign.DiscardUnknown(m) +} + +var xxx_messageInfo_ResourceAssign proto.InternalMessageInfo + +func (m *ResourceAssign) GetAllow() []*AllowResourceAssign { + if m != nil { + return m.Allow + } + return nil +} + +// Active Directory Query +// +// x-displayName: "Active Directory Query" +// +// Send active directory query configuration on success of active directory Auth. +type ActiveDirectoryQuery struct { + // Server Name + // + // x-displayName: "Server" + // x-example: "ad_auth_server" + // Name of the server which gets assigned. + Server string `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"` + // Filter + // + // x-displayName: "Filter" + // x-example: "(CN=%{session.logon.last.username})" + // Filter setting for filtering out the assigned resources + Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"` + // Active Directory Query Failure + // + // x-displayName: "AAA Active Directory Query Failure" + // x-example: "Deny" + // Send deny as next item if query gets failed. + DenyName string `protobuf:"bytes,3,opt,name=deny_name,json=denyName,proto3" json:"deny_name,omitempty"` + // resource assigned + // + // x-displayName: "Resource Assign" + // + // List of all assigned resources list + ResourceAssign *ResourceAssign `protobuf:"bytes,4,opt,name=resource_assign,json=resourceAssign,proto3" json:"resource_assign,omitempty"` +} + +func (m *ActiveDirectoryQuery) Reset() { *m = ActiveDirectoryQuery{} } +func (*ActiveDirectoryQuery) ProtoMessage() {} +func (*ActiveDirectoryQuery) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{8} +} +func (m *ActiveDirectoryQuery) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ActiveDirectoryQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ActiveDirectoryQuery) XXX_Merge(src proto.Message) { + xxx_messageInfo_ActiveDirectoryQuery.Merge(m, src) +} +func (m *ActiveDirectoryQuery) XXX_Size() int { + return m.Size() +} +func (m *ActiveDirectoryQuery) XXX_DiscardUnknown() { + xxx_messageInfo_ActiveDirectoryQuery.DiscardUnknown(m) +} + +var xxx_messageInfo_ActiveDirectoryQuery proto.InternalMessageInfo + +func (m *ActiveDirectoryQuery) GetServer() string { + if m != nil { + return m.Server + } + return "" +} + +func (m *ActiveDirectoryQuery) GetFilter() string { + if m != nil { + return m.Filter + } + return "" +} + +func (m *ActiveDirectoryQuery) GetDenyName() string { + if m != nil { + return m.DenyName + } + return "" +} + +func (m *ActiveDirectoryQuery) GetResourceAssign() *ResourceAssign { + if m != nil { + return m.ResourceAssign + } + return nil +} + +// Active Directory Auth +// +// x-displayName: "AAA Active Directory Auth" +// +// List of configuration of Active directory Auth. +type ActiveDirectoryAuth struct { + // Server Name + // + // x-displayName: "Server" + // x-example: "ad_auth_server" + // Server name on which log on is success. + Server string `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"` + // Expression + // + // x-displayName: "Expression" + // x-example: "expr {[mcget {session.ad.last.authresult}] == 1}" + // Expression string to filter the Directory query. + Expression string `protobuf:"bytes,2,opt,name=expression,proto3" json:"expression,omitempty"` + // AAA Active Directory Failure + // + // x-displayName: "AAA Active Directory Failure" + // x-example: "Deny" + // Send deny as next item in case it fails to find the query. + DenyName string `protobuf:"bytes,3,opt,name=deny_name,json=denyName,proto3" json:"deny_name,omitempty"` + // AAA Active Directory success + // + // x-displayName: "AAA Active Directory Success" + // Send active directory query configuration on success of allow directory auth. + ActiveDirectoryQuery []*ActiveDirectoryQuery `protobuf:"bytes,4,rep,name=active_directory_query,json=activeDirectoryQuery,proto3" json:"active_directory_query,omitempty"` +} + +func (m *ActiveDirectoryAuth) Reset() { *m = ActiveDirectoryAuth{} } +func (*ActiveDirectoryAuth) ProtoMessage() {} +func (*ActiveDirectoryAuth) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{9} +} +func (m *ActiveDirectoryAuth) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ActiveDirectoryAuth) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ActiveDirectoryAuth) XXX_Merge(src proto.Message) { + xxx_messageInfo_ActiveDirectoryAuth.Merge(m, src) +} +func (m *ActiveDirectoryAuth) XXX_Size() int { + return m.Size() +} +func (m *ActiveDirectoryAuth) XXX_DiscardUnknown() { + xxx_messageInfo_ActiveDirectoryAuth.DiscardUnknown(m) +} + +var xxx_messageInfo_ActiveDirectoryAuth proto.InternalMessageInfo + +func (m *ActiveDirectoryAuth) GetServer() string { + if m != nil { + return m.Server + } + return "" +} + +func (m *ActiveDirectoryAuth) GetExpression() string { + if m != nil { + return m.Expression + } + return "" +} + +func (m *ActiveDirectoryAuth) GetDenyName() string { + if m != nil { + return m.DenyName + } + return "" +} + +func (m *ActiveDirectoryAuth) GetActiveDirectoryQuery() []*ActiveDirectoryQuery { + if m != nil { + return m.ActiveDirectoryQuery + } + return nil +} + +// Custmization +// +// x-displayName: "Custmization" +// +// User name and password to log on +type Custmization struct { + // Username + // + // x-displayName: "User Name" + // x-example: "User Name" + //This contains the user name to log on. + UserName string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"` + // Secret Password + // + // x-displayName: "Secret Password" + // + // This field contains the secret password for log on. + Password *schema.SecretType `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"` +} + +func (m *Custmization) Reset() { *m = Custmization{} } +func (*Custmization) ProtoMessage() {} +func (*Custmization) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{10} +} +func (m *Custmization) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Custmization) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Custmization) XXX_Merge(src proto.Message) { + xxx_messageInfo_Custmization.Merge(m, src) +} +func (m *Custmization) XXX_Size() int { + return m.Size() +} +func (m *Custmization) XXX_DiscardUnknown() { + xxx_messageInfo_Custmization.DiscardUnknown(m) +} + +var xxx_messageInfo_Custmization proto.InternalMessageInfo + +func (m *Custmization) GetUserName() string { + if m != nil { + return m.UserName + } + return "" +} + +func (m *Custmization) GetPassword() *schema.SecretType { + if m != nil { + return m.Password + } + return nil +} + +// Log on as nextItem +// +// x-displayName: "Log On Next Item" +// +// Send log on configuration as user name and password +type LogonItemType struct { + // Credentials + // + // x-displayName: "Credentials" + // + // This contains language , username and secret to login + Customization []*Custmization `protobuf:"bytes,1,rep,name=customization,proto3" json:"customization,omitempty"` + // nextItem + // + // x-displayName: "AAA Active Directory Auth" + // + // After logon next item is to verify the group and directory. + ActiveDirectoryAuth []*ActiveDirectoryAuth `protobuf:"bytes,2,rep,name=active_directory_auth,json=activeDirectoryAuth,proto3" json:"active_directory_auth,omitempty"` +} + +func (m *LogonItemType) Reset() { *m = LogonItemType{} } +func (*LogonItemType) ProtoMessage() {} +func (*LogonItemType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{11} +} +func (m *LogonItemType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *LogonItemType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *LogonItemType) XXX_Merge(src proto.Message) { + xxx_messageInfo_LogonItemType.Merge(m, src) +} +func (m *LogonItemType) XXX_Size() int { + return m.Size() +} +func (m *LogonItemType) XXX_DiscardUnknown() { + xxx_messageInfo_LogonItemType.DiscardUnknown(m) +} + +var xxx_messageInfo_LogonItemType proto.InternalMessageInfo + +func (m *LogonItemType) GetCustomization() []*Custmization { + if m != nil { + return m.Customization + } + return nil +} + +func (m *LogonItemType) GetActiveDirectoryAuth() []*ActiveDirectoryAuth { + if m != nil { + return m.ActiveDirectoryAuth + } + return nil +} + +// Action Type +// +// x-displayName: "Action Type" +// +// Choose the next action as logon/active dir auth/ active dir query/resource assign. +type ActionType struct { + // item type + // + // x-displayName: "Item Type" + // + // Choose the Next Configuration Item from the Log On/AAA Directory Auth/ + // Active Directory Query/Resource Assign + // + // Types that are valid to be assigned to ItemType: + // *ActionType_LogOn + // *ActionType_ActiveDirectoryAuth + // *ActionType_ActiveDirectoryQuery + // *ActionType_ResourceAssign + ItemType isActionType_ItemType `protobuf_oneof:"item_type"` +} + +func (m *ActionType) Reset() { *m = ActionType{} } +func (*ActionType) ProtoMessage() {} +func (*ActionType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{12} +} +func (m *ActionType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ActionType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ActionType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ActionType.Merge(m, src) +} +func (m *ActionType) XXX_Size() int { + return m.Size() +} +func (m *ActionType) XXX_DiscardUnknown() { + xxx_messageInfo_ActionType.DiscardUnknown(m) +} + +var xxx_messageInfo_ActionType proto.InternalMessageInfo + +type isActionType_ItemType interface { + isActionType_ItemType() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ActionType_LogOn struct { + LogOn *LogonItemType `protobuf:"bytes,2,opt,name=log_on,json=logOn,proto3,oneof" json:"log_on,omitempty"` +} +type ActionType_ActiveDirectoryAuth struct { + ActiveDirectoryAuth *ActiveDirectoryAuth `protobuf:"bytes,3,opt,name=active_directory_auth,json=activeDirectoryAuth,proto3,oneof" json:"active_directory_auth,omitempty"` +} +type ActionType_ActiveDirectoryQuery struct { + ActiveDirectoryQuery *ActiveDirectoryQuery `protobuf:"bytes,4,opt,name=active_directory_query,json=activeDirectoryQuery,proto3,oneof" json:"active_directory_query,omitempty"` +} +type ActionType_ResourceAssign struct { + ResourceAssign *ResourceAssign `protobuf:"bytes,5,opt,name=resource_assign,json=resourceAssign,proto3,oneof" json:"resource_assign,omitempty"` +} + +func (*ActionType_LogOn) isActionType_ItemType() {} +func (*ActionType_ActiveDirectoryAuth) isActionType_ItemType() {} +func (*ActionType_ActiveDirectoryQuery) isActionType_ItemType() {} +func (*ActionType_ResourceAssign) isActionType_ItemType() {} + +func (m *ActionType) GetItemType() isActionType_ItemType { + if m != nil { + return m.ItemType + } + return nil +} + +func (m *ActionType) GetLogOn() *LogonItemType { + if x, ok := m.GetItemType().(*ActionType_LogOn); ok { + return x.LogOn + } + return nil +} + +func (m *ActionType) GetActiveDirectoryAuth() *ActiveDirectoryAuth { + if x, ok := m.GetItemType().(*ActionType_ActiveDirectoryAuth); ok { + return x.ActiveDirectoryAuth + } + return nil +} + +func (m *ActionType) GetActiveDirectoryQuery() *ActiveDirectoryQuery { + if x, ok := m.GetItemType().(*ActionType_ActiveDirectoryQuery); ok { + return x.ActiveDirectoryQuery + } + return nil +} + +func (m *ActionType) GetResourceAssign() *ResourceAssign { + if x, ok := m.GetItemType().(*ActionType_ResourceAssign); ok { + return x.ResourceAssign + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ActionType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ActionType_LogOn)(nil), + (*ActionType_ActiveDirectoryAuth)(nil), + (*ActionType_ActiveDirectoryQuery)(nil), + (*ActionType_ResourceAssign)(nil), + } +} + +// sequenceAction +// +// x-displayName: "SequenceAction" +// +// This configuration is used to specify the sequence of action +// for connectivity access Policy +type SequenceAction struct { + // connectivityAccessPolicyName + // + // x-displayName: "Connectivity AccessPolicy Name" + // x-example: "connectivity_demo" + // Name of connectivity policy + ConnectivityAccessPolicyName string `protobuf:"bytes,1,opt,name=connectivity_access_policy_name,json=connectivityAccessPolicyName,proto3" json:"connectivity_access_policy_name,omitempty"` + // Next Item + // + // x-displayName: "Next Item " + // Next Action could be any one from the Log On/AAA Directory Auth/ + // Active Directory Query/Resource Assign + NextAction *ActionType `protobuf:"bytes,2,opt,name=next_action,json=nextAction,proto3" json:"next_action,omitempty"` +} + +func (m *SequenceAction) Reset() { *m = SequenceAction{} } +func (*SequenceAction) ProtoMessage() {} +func (*SequenceAction) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{13} +} +func (m *SequenceAction) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SequenceAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SequenceAction) XXX_Merge(src proto.Message) { + xxx_messageInfo_SequenceAction.Merge(m, src) +} +func (m *SequenceAction) XXX_Size() int { + return m.Size() +} +func (m *SequenceAction) XXX_DiscardUnknown() { + xxx_messageInfo_SequenceAction.DiscardUnknown(m) +} + +var xxx_messageInfo_SequenceAction proto.InternalMessageInfo + +func (m *SequenceAction) GetConnectivityAccessPolicyName() string { + if m != nil { + return m.ConnectivityAccessPolicyName + } + return "" +} + +func (m *SequenceAction) GetNextAction() *ActionType { + if m != nil { + return m.NextAction + } + return nil +} + +// Ztna Per Session Type +// +// x-displayName: "Session Policy Type" +// List of Per Session Policy type. +type PerSessionPolicyType struct { + // Session Policy configuration + // + // x-displayName: "Resources" + // List of the Policy of session type. + Resources map[string]*Resource `protobuf:"bytes,1,rep,name=resources,proto3" json:"resources,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Lease Pool Member + // + // x-displayName: "Lease Pool Member" + // List of Lease pool member for Session Policy + LeasePoolMember map[string]*LeasePoolMember `protobuf:"bytes,2,rep,name=lease_pool_member,json=leasePoolMember,proto3" json:"lease_pool_member,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // ExternalServers + // + // x-displayName: "External Servers" + // List of configuration of external server + ExternalServer map[string]*ExternalServers `protobuf:"bytes,3,rep,name=external_server,json=externalServer,proto3" json:"external_server,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Name + // + // x-displayName: "Session Policy Name" + // This contains the name of session policy + PerSessionPolicyName string `protobuf:"bytes,4,opt,name=per_session_policy_name,json=perSessionPolicyName,proto3" json:"per_session_policy_name,omitempty"` + // Sequence of Action + // + // x-displayName: "Sequence Action" + // Choose the sequence action from Log On/AAA Directory Auth/ + // Active Directory Query/Resource Assign + SequenceAction *SequenceAction `protobuf:"bytes,5,opt,name=sequence_action,json=sequenceAction,proto3" json:"sequence_action,omitempty"` +} + +func (m *PerSessionPolicyType) Reset() { *m = PerSessionPolicyType{} } +func (*PerSessionPolicyType) ProtoMessage() {} +func (*PerSessionPolicyType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{14} +} +func (m *PerSessionPolicyType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *PerSessionPolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *PerSessionPolicyType) XXX_Merge(src proto.Message) { + xxx_messageInfo_PerSessionPolicyType.Merge(m, src) +} +func (m *PerSessionPolicyType) XXX_Size() int { + return m.Size() +} +func (m *PerSessionPolicyType) XXX_DiscardUnknown() { + xxx_messageInfo_PerSessionPolicyType.DiscardUnknown(m) +} + +var xxx_messageInfo_PerSessionPolicyType proto.InternalMessageInfo + +func (m *PerSessionPolicyType) GetResources() map[string]*Resource { + if m != nil { + return m.Resources + } + return nil +} + +func (m *PerSessionPolicyType) GetLeasePoolMember() map[string]*LeasePoolMember { + if m != nil { + return m.LeasePoolMember + } + return nil +} + +func (m *PerSessionPolicyType) GetExternalServer() map[string]*ExternalServers { + if m != nil { + return m.ExternalServer + } + return nil +} + +func (m *PerSessionPolicyType) GetPerSessionPolicyName() string { + if m != nil { + return m.PerSessionPolicyName + } + return "" +} + +func (m *PerSessionPolicyType) GetSequenceAction() *SequenceAction { + if m != nil { + return m.SequenceAction + } + return nil +} + +// Ztna ConnectivityPolicyType +// +// x-displayName: "Ztna Connectivity Policy Type" +// List of Ztna Connectivity Policy type. +type ConnectivityPolicyType struct { + // Connectivities + // + // x-displayName: "Tunnel for Connectivities" + // Connectivity policy configuration. Select connectivity policy as PPP/DTLS + Connectivities Connectivity `protobuf:"varint,1,opt,name=connectivities,proto3,enum=ves.io.schema.ztna.Connectivity" json:"connectivities,omitempty"` + // Name + // + // x-displayName: "Name of Connectivity Policy" + // Name of connectivity policy + ConnectivityPolicyName string `protobuf:"bytes,2,opt,name=connectivity_policy_name,json=connectivityPolicyName,proto3" json:"connectivity_policy_name,omitempty"` +} + +func (m *ConnectivityPolicyType) Reset() { *m = ConnectivityPolicyType{} } +func (*ConnectivityPolicyType) ProtoMessage() {} +func (*ConnectivityPolicyType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{15} +} +func (m *ConnectivityPolicyType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ConnectivityPolicyType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ConnectivityPolicyType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ConnectivityPolicyType.Merge(m, src) +} +func (m *ConnectivityPolicyType) XXX_Size() int { + return m.Size() +} +func (m *ConnectivityPolicyType) XXX_DiscardUnknown() { + xxx_messageInfo_ConnectivityPolicyType.DiscardUnknown(m) +} + +var xxx_messageInfo_ConnectivityPolicyType proto.InternalMessageInfo + +func (m *ConnectivityPolicyType) GetConnectivities() Connectivity { + if m != nil { + return m.Connectivities + } + return PPP +} + +func (m *ConnectivityPolicyType) GetConnectivityPolicyName() string { + if m != nil { + return m.ConnectivityPolicyName + } + return "" +} + +// Ztna Policy Configuration Spec +// +// x-displayName: "Global Specification" +// Ztna Policy Configuration Spec +type GlobalSpecType struct { + // ConnectivityPolicyType + // + // x-displayName: "Connectivity Access Policy" + // List of Connectivity Policy Type + Connectivity *ConnectivityPolicyType `protobuf:"bytes,1,opt,name=connectivity,proto3" json:"connectivity,omitempty"` + // PerSessionPolicyType + // + // x-displayName: "Session Policy Type" + // List of configuration for per session policy type. + PerSession *PerSessionPolicyType `protobuf:"bytes,2,opt,name=per_session,json=perSession,proto3" json:"per_session,omitempty"` +} + +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{16} +} +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) +} +func (m *GlobalSpecType) XXX_Size() int { + return m.Size() +} +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo + +func (m *GlobalSpecType) GetConnectivity() *ConnectivityPolicyType { + if m != nil { + return m.Connectivity + } + return nil +} + +func (m *GlobalSpecType) GetPerSession() *PerSessionPolicyType { + if m != nil { + return m.PerSession + } + return nil +} + +// Create Ztna Policy +// +// x-displayName: "Create Ztna Policy" +// Creates a new Ztna Policy Object +type CreateSpecType struct { + Connectivity *ConnectivityPolicyType `protobuf:"bytes,1,opt,name=connectivity,proto3" json:"connectivity,omitempty"` + PerSession *PerSessionPolicyType `protobuf:"bytes,2,opt,name=per_session,json=perSession,proto3" json:"per_session,omitempty"` +} + +func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } +func (*CreateSpecType) ProtoMessage() {} +func (*CreateSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{17} +} +func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CreateSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateSpecType.Merge(m, src) +} +func (m *CreateSpecType) XXX_Size() int { + return m.Size() +} +func (m *CreateSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_CreateSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo + +func (m *CreateSpecType) GetConnectivity() *ConnectivityPolicyType { + if m != nil { + return m.Connectivity + } + return nil +} + +func (m *CreateSpecType) GetPerSession() *PerSessionPolicyType { + if m != nil { + return m.PerSession + } + return nil +} + +// Replace Ztna Policy +// +// x-displayName: "Replace Ztna Policy" +// Replaces the content of the Ztna policy object +type ReplaceSpecType struct { + Connectivity *ConnectivityPolicyType `protobuf:"bytes,1,opt,name=connectivity,proto3" json:"connectivity,omitempty"` + PerSession *PerSessionPolicyType `protobuf:"bytes,2,opt,name=per_session,json=perSession,proto3" json:"per_session,omitempty"` +} + +func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } +func (*ReplaceSpecType) ProtoMessage() {} +func (*ReplaceSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{18} +} +func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceSpecType.Merge(m, src) +} +func (m *ReplaceSpecType) XXX_Size() int { + return m.Size() +} +func (m *ReplaceSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo + +func (m *ReplaceSpecType) GetConnectivity() *ConnectivityPolicyType { + if m != nil { + return m.Connectivity + } + return nil +} + +func (m *ReplaceSpecType) GetPerSession() *PerSessionPolicyType { + if m != nil { + return m.PerSession + } + return nil +} + +// Get Ztna Policy +// +// x-displayName: "Get Ztna Policy" +// Get the ztna policy object +type GetSpecType struct { + Connectivity *ConnectivityPolicyType `protobuf:"bytes,1,opt,name=connectivity,proto3" json:"connectivity,omitempty"` + PerSession *PerSessionPolicyType `protobuf:"bytes,2,opt,name=per_session,json=perSession,proto3" json:"per_session,omitempty"` +} + +func (m *GetSpecType) Reset() { *m = GetSpecType{} } +func (*GetSpecType) ProtoMessage() {} +func (*GetSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_1f3dffd23827b659, []int{19} +} +func (m *GetSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GetSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetSpecType.Merge(m, src) +} +func (m *GetSpecType) XXX_Size() int { + return m.Size() +} +func (m *GetSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GetSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GetSpecType proto.InternalMessageInfo + +func (m *GetSpecType) GetConnectivity() *ConnectivityPolicyType { + if m != nil { + return m.Connectivity + } + return nil +} + +func (m *GetSpecType) GetPerSession() *PerSessionPolicyType { + if m != nil { + return m.PerSession + } + return nil +} + +func init() { + proto.RegisterEnum("ves.io.schema.ztna.ServerType", ServerType_name, ServerType_value) + proto.RegisterEnum("ves.io.schema.ztna.Action", Action_name, Action_value) + proto.RegisterEnum("ves.io.schema.ztna.Connectivity", Connectivity_name, Connectivity_value) + proto.RegisterType((*LeasePoolMember)(nil), "ves.io.schema.ztna.LeasePoolMember") + proto.RegisterType((*ExternalServers)(nil), "ves.io.schema.ztna.ExternalServers") + proto.RegisterType((*Entry)(nil), "ves.io.schema.ztna.Entry") + proto.RegisterType((*AclResourceEntry)(nil), "ves.io.schema.ztna.AclResourceEntry") + proto.RegisterType((*Resource)(nil), "ves.io.schema.ztna.Resource") + proto.RegisterType((*Rules)(nil), "ves.io.schema.ztna.Rules") + proto.RegisterType((*AllowResourceAssign)(nil), "ves.io.schema.ztna.AllowResourceAssign") + proto.RegisterType((*ResourceAssign)(nil), "ves.io.schema.ztna.ResourceAssign") + proto.RegisterType((*ActiveDirectoryQuery)(nil), "ves.io.schema.ztna.ActiveDirectoryQuery") + proto.RegisterType((*ActiveDirectoryAuth)(nil), "ves.io.schema.ztna.ActiveDirectoryAuth") + proto.RegisterType((*Custmization)(nil), "ves.io.schema.ztna.Custmization") + proto.RegisterType((*LogonItemType)(nil), "ves.io.schema.ztna.LogonItemType") + proto.RegisterType((*ActionType)(nil), "ves.io.schema.ztna.ActionType") + proto.RegisterType((*SequenceAction)(nil), "ves.io.schema.ztna.SequenceAction") + proto.RegisterType((*PerSessionPolicyType)(nil), "ves.io.schema.ztna.PerSessionPolicyType") + proto.RegisterMapType((map[string]*ExternalServers)(nil), "ves.io.schema.ztna.PerSessionPolicyType.ExternalServerEntry") + proto.RegisterMapType((map[string]*LeasePoolMember)(nil), "ves.io.schema.ztna.PerSessionPolicyType.LeasePoolMemberEntry") + proto.RegisterMapType((map[string]*Resource)(nil), "ves.io.schema.ztna.PerSessionPolicyType.ResourcesEntry") + proto.RegisterType((*ConnectivityPolicyType)(nil), "ves.io.schema.ztna.ConnectivityPolicyType") + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.ztna.GlobalSpecType") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.ztna.CreateSpecType") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.ztna.ReplaceSpecType") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.ztna.GetSpecType") +} + +func init() { proto.RegisterFile("ves.io/schema/ztna/types.proto", fileDescriptor_1f3dffd23827b659) } + +var fileDescriptor_1f3dffd23827b659 = []byte{ + // 2355 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x59, 0x4d, 0x6c, 0xdb, 0xc8, + 0xf5, 0xd7, 0x48, 0xb6, 0x63, 0x3d, 0x5b, 0xb2, 0x32, 0x76, 0x1c, 0x85, 0xeb, 0x68, 0x19, 0x6d, + 0x80, 0x35, 0x0c, 0x47, 0xfe, 0xff, 0xe5, 0x4d, 0x9b, 0x55, 0x37, 0xbb, 0xb1, 0xf3, 0xe5, 0xb4, + 0xf9, 0x70, 0xe9, 0x2c, 0x8a, 0xee, 0x76, 0xc3, 0x52, 0xd4, 0x58, 0x66, 0x43, 0x91, 0x0c, 0x49, + 0xd9, 0xf1, 0xa2, 0x28, 0x82, 0x3d, 0xea, 0x50, 0x14, 0xe8, 0xa5, 0x08, 0xda, 0x1e, 0xba, 0x97, + 0x02, 0x5b, 0xb4, 0x87, 0xb6, 0x28, 0xb0, 0x54, 0xdb, 0x1c, 0x5a, 0x60, 0xe1, 0x4b, 0x73, 0x4c, + 0x2f, 0x45, 0xa2, 0x5c, 0x5a, 0xf7, 0xb2, 0x28, 0x7a, 0xd8, 0x63, 0x31, 0x33, 0xa4, 0x4c, 0xd2, + 0x94, 0xe3, 0xf6, 0x96, 0xdb, 0x7c, 0xbc, 0x37, 0xef, 0x37, 0xbf, 0xf7, 0xe6, 0xcd, 0xe3, 0x10, + 0x4a, 0x9b, 0xc4, 0xa9, 0x68, 0xe6, 0x82, 0xa3, 0x6e, 0x90, 0x96, 0xb2, 0xf0, 0xa1, 0x6b, 0x28, + 0x0b, 0xee, 0xb6, 0x45, 0x9c, 0x8a, 0x65, 0x9b, 0xae, 0x89, 0x31, 0x9f, 0xaf, 0xf0, 0xf9, 0x0a, + 0x9d, 0x17, 0xce, 0x34, 0x35, 0x77, 0xa3, 0x5d, 0xaf, 0xa8, 0x66, 0x6b, 0xa1, 0x69, 0x36, 0xcd, + 0x05, 0x26, 0x5a, 0x6f, 0xaf, 0xb3, 0x1e, 0xeb, 0xb0, 0x16, 0x5f, 0x42, 0x38, 0x1e, 0x35, 0x61, + 0x10, 0xd7, 0x9f, 0x78, 0x25, 0x3a, 0x61, 0x5a, 0xae, 0x66, 0x1a, 0xbe, 0x61, 0xe1, 0x44, 0x74, + 0x32, 0x84, 0x49, 0x98, 0x89, 0x4e, 0x6d, 0x2a, 0xba, 0xd6, 0x50, 0x5c, 0xe2, 0xcf, 0x8a, 0xb1, + 0x59, 0x8d, 0x6c, 0xc9, 0x91, 0xa5, 0xcb, 0x7f, 0x45, 0x30, 0x71, 0x9d, 0x28, 0x0e, 0x59, 0x35, + 0x4d, 0xfd, 0x06, 0x69, 0xd5, 0x89, 0x8d, 0x97, 0x20, 0xe7, 0xb8, 0x8a, 0xed, 0xca, 0x4a, 0xa3, + 0x61, 0x13, 0xc7, 0x29, 0x22, 0x11, 0xcd, 0x8e, 0x55, 0x67, 0x2a, 0xd1, 0xfd, 0x5f, 0xb3, 0x96, + 0xf8, 0xfc, 0xed, 0x6d, 0x8b, 0x48, 0xe3, 0x4c, 0xc5, 0x1f, 0xc1, 0xe7, 0x61, 0x8c, 0x18, 0x8d, + 0xfe, 0x02, 0xe9, 0x43, 0x2c, 0x00, 0xc4, 0x68, 0xf8, 0xfd, 0xda, 0xa5, 0x1d, 0x0f, 0x5d, 0x00, + 0x31, 0x86, 0x43, 0x98, 0x88, 0x0d, 0xc0, 0x4c, 0xc4, 0x8c, 0x90, 0x8b, 0x74, 0xcb, 0x7f, 0x4b, + 0xc3, 0xc4, 0xe5, 0xfb, 0x2e, 0xb1, 0x0d, 0x45, 0x5f, 0x23, 0xf6, 0x26, 0xb1, 0x1d, 0xfc, 0x0e, + 0x8c, 0x39, 0xac, 0x29, 0x53, 0x16, 0x19, 0xb0, 0x7c, 0xb5, 0x54, 0xd9, 0xef, 0xd9, 0x0a, 0xd7, + 0xe0, 0xd0, 0x9c, 0x7e, 0x1b, 0x4f, 0xc3, 0x48, 0xc3, 0x6c, 0x29, 0x9a, 0x51, 0xcc, 0x88, 0x68, + 0x36, 0x2b, 0xf9, 0x3d, 0x7c, 0x16, 0xf2, 0x4a, 0xa3, 0xa5, 0x19, 0x72, 0xdb, 0xa1, 0x06, 0x5b, + 0xa4, 0x38, 0x44, 0xe7, 0x97, 0xf3, 0x5f, 0x78, 0x28, 0xf5, 0xe9, 0x3f, 0x1e, 0x65, 0x86, 0xed, + 0x4c, 0xf1, 0x41, 0x5a, 0xca, 0x31, 0xa9, 0x77, 0x7d, 0x21, 0x7c, 0x21, 0x50, 0xb3, 0x14, 0xc7, + 0xd9, 0x32, 0xed, 0x46, 0x71, 0x98, 0x71, 0x75, 0x22, 0x06, 0x69, 0x8d, 0xa8, 0x36, 0x71, 0x19, + 0x1a, 0xbe, 0xc2, 0xaa, 0x2f, 0x5f, 0xdb, 0xde, 0xf1, 0x50, 0x1b, 0x4e, 0x42, 0x08, 0xa4, 0x30, + 0x11, 0xd9, 0xa5, 0x88, 0x00, 0x07, 0xa8, 0x85, 0xd1, 0xa0, 0x05, 0x27, 0x21, 0xcb, 0x56, 0xba, + 0xa9, 0xb4, 0x88, 0x50, 0x88, 0xc3, 0x87, 0x53, 0x10, 0x35, 0xb4, 0x27, 0x12, 0x40, 0x2d, 0x7f, + 0x3f, 0x03, 0xc3, 0x97, 0x0d, 0xd7, 0xde, 0xc6, 0x55, 0x18, 0x51, 0x54, 0x1a, 0x57, 0x2c, 0x56, + 0xf2, 0x55, 0x21, 0x89, 0xd1, 0x25, 0x26, 0x21, 0xf9, 0x92, 0xf8, 0x22, 0xe4, 0x1b, 0xc4, 0x71, + 0x35, 0x43, 0xa1, 0x5d, 0x59, 0xb3, 0x0e, 0x15, 0x26, 0xb9, 0x90, 0xce, 0x35, 0x0b, 0xbf, 0x01, + 0xd3, 0xe1, 0x45, 0x78, 0x78, 0x58, 0xa6, 0xed, 0x32, 0xf7, 0xe4, 0xa4, 0xa9, 0xd0, 0xec, 0x1a, + 0x9d, 0x5c, 0x35, 0x6d, 0x17, 0xff, 0x1f, 0x84, 0xc7, 0x65, 0x1a, 0x34, 0x4c, 0x67, 0x88, 0xe9, + 0xe0, 0xd0, 0xdc, 0x65, 0xa3, 0x41, 0x35, 0x6a, 0x1f, 0xa3, 0x1d, 0x0f, 0xfd, 0x14, 0xc1, 0x54, + 0xb0, 0x51, 0x01, 0x82, 0x96, 0x88, 0xa0, 0x1c, 0xdf, 0x0a, 0x25, 0x2b, 0x3a, 0x02, 0xd5, 0x41, + 0x48, 0x85, 0xe2, 0xa0, 0x19, 0xa8, 0x24, 0xe3, 0x14, 0xa6, 0x93, 0xc7, 0xcb, 0x57, 0xa1, 0xb0, + 0xa4, 0xea, 0x12, 0x71, 0xcc, 0xb6, 0xad, 0x12, 0xee, 0x9a, 0x45, 0x38, 0x42, 0x0c, 0xd7, 0xd6, + 0x08, 0x3d, 0x86, 0x99, 0x84, 0xd0, 0x62, 0xbe, 0x61, 0xb2, 0x52, 0x20, 0x59, 0xfe, 0x6d, 0x1a, + 0x46, 0x83, 0x65, 0xf0, 0x39, 0xc8, 0x28, 0xaa, 0xee, 0x7b, 0xe7, 0x74, 0xb2, 0x67, 0xa3, 0x46, + 0x57, 0x52, 0x12, 0x55, 0xc1, 0xb3, 0x90, 0xd9, 0x22, 0x75, 0xe6, 0x8a, 0xb1, 0xea, 0x54, 0x4c, + 0xf3, 0x72, 0xcb, 0x72, 0x99, 0xe4, 0x16, 0xa9, 0xe3, 0x1a, 0x8c, 0xab, 0xa6, 0x61, 0x10, 0xd5, + 0xd5, 0x36, 0x35, 0x77, 0x9b, 0x79, 0x62, 0xb0, 0x4a, 0x44, 0xb6, 0x26, 0xef, 0x78, 0xe8, 0x7d, + 0xf8, 0x26, 0xe4, 0x02, 0x0c, 0x22, 0x8d, 0x94, 0xb9, 0x15, 0xb8, 0x02, 0xc7, 0x19, 0xf4, 0xea, + 0x3e, 0x56, 0x20, 0xc7, 0x90, 0x55, 0x47, 0xbe, 0x41, 0xea, 0xae, 0x69, 0xc1, 0x4c, 0xd4, 0x7c, + 0x75, 0xfc, 0x62, 0xa8, 0xb7, 0x5c, 0x86, 0x9c, 0xed, 0x6b, 0xb3, 0x03, 0x85, 0x8f, 0x3e, 0xf6, + 0x10, 0xea, 0x79, 0x68, 0xb8, 0x3a, 0xbf, 0x38, 0xff, 0xc6, 0x17, 0x1e, 0x4a, 0x7f, 0x75, 0x68, + 0x14, 0x15, 0xd2, 0xe5, 0x3f, 0x21, 0x18, 0x96, 0xda, 0x3a, 0x71, 0x70, 0x05, 0x26, 0x0d, 0xe2, + 0x6e, 0x99, 0xf6, 0x5d, 0x59, 0x51, 0x55, 0xe2, 0x38, 0xb2, 0xdd, 0xd6, 0x49, 0x11, 0x89, 0x99, + 0xd9, 0xac, 0x74, 0xd4, 0x9f, 0x5a, 0x62, 0x33, 0x54, 0x01, 0x8b, 0x30, 0xbe, 0x45, 0xea, 0xb2, + 0x6b, 0x5a, 0x32, 0xcb, 0x1e, 0x69, 0x96, 0x5d, 0x60, 0x8b, 0xd4, 0x6f, 0x9b, 0x16, 0x3d, 0xa2, + 0x18, 0xc3, 0x90, 0xa2, 0xea, 0x4e, 0x31, 0xc3, 0x96, 0x60, 0xed, 0xda, 0xbb, 0xff, 0x7a, 0xfb, + 0xc8, 0xff, 0xcf, 0x33, 0x14, 0x3b, 0x1e, 0xba, 0x0a, 0x8b, 0x50, 0xbc, 0xc9, 0x97, 0x16, 0xf9, + 0xda, 0x62, 0xb0, 0x6d, 0x67, 0xf9, 0x78, 0x22, 0xa2, 0x42, 0x06, 0x0a, 0x30, 0xb4, 0xa4, 0xea, + 0xce, 0xf2, 0x28, 0x37, 0x50, 0xc8, 0x94, 0x7f, 0x91, 0x86, 0xc9, 0x25, 0x5d, 0x37, 0xb7, 0x02, + 0xed, 0x25, 0xc7, 0xd1, 0x9a, 0x06, 0x4d, 0x7e, 0x3c, 0xaf, 0xb0, 0x63, 0x9e, 0x95, 0xfc, 0x1e, + 0xbe, 0x01, 0xc7, 0xe8, 0x5a, 0x8e, 0xdc, 0xa7, 0x49, 0x61, 0x0a, 0x07, 0x45, 0x1c, 0xa3, 0x49, + 0x9a, 0x64, 0x7a, 0x31, 0x33, 0xaf, 0x40, 0xb6, 0x41, 0x8c, 0x6d, 0x4e, 0x04, 0x4f, 0xb3, 0xa3, + 0x74, 0x80, 0xd1, 0x70, 0x12, 0x40, 0xa1, 0xd0, 0xe4, 0xbd, 0x24, 0x2b, 0x65, 0xd9, 0x08, 0x9d, + 0xae, 0xd9, 0x3b, 0x1e, 0x32, 0x40, 0x87, 0xec, 0x4d, 0x72, 0xdf, 0x15, 0xaf, 0xb9, 0xa4, 0x35, + 0x27, 0xc3, 0x07, 0x50, 0x08, 0x90, 0x57, 0x47, 0x1c, 0xd7, 0xd6, 0x8c, 0x26, 0x94, 0x06, 0x60, + 0xae, 0x72, 0x07, 0xc2, 0x64, 0x08, 0x44, 0x5f, 0x69, 0x2a, 0x6c, 0x3c, 0x18, 0x2d, 0xdf, 0x82, + 0x7c, 0x6c, 0x07, 0xe7, 0x61, 0x98, 0xc9, 0xf9, 0x04, 0xbc, 0x9e, 0x78, 0x68, 0xf6, 0x13, 0x2c, + 0x71, 0xad, 0xf2, 0xc7, 0x69, 0x98, 0xa2, 0xd9, 0x72, 0x93, 0x5c, 0xd2, 0x6c, 0xa2, 0xba, 0xa6, + 0xbd, 0xfd, 0xf5, 0x36, 0xb1, 0xb7, 0x07, 0x3a, 0x60, 0x1a, 0x46, 0xd6, 0x35, 0xdd, 0x25, 0xb6, + 0x1f, 0x37, 0x7e, 0xef, 0x60, 0x26, 0xbf, 0x06, 0x13, 0x71, 0x7f, 0xf1, 0x63, 0x57, 0x4e, 0xf4, + 0x57, 0x14, 0x69, 0xde, 0x8e, 0xf4, 0x6b, 0xf7, 0x76, 0x3c, 0xd4, 0x82, 0xbb, 0x61, 0xde, 0xef, + 0xc0, 0xb7, 0x12, 0x78, 0x2f, 0x04, 0x50, 0xfb, 0x23, 0x89, 0x4c, 0x9f, 0xda, 0x07, 0xae, 0x1a, + 0x23, 0xb9, 0xfc, 0x17, 0x1a, 0xa5, 0x51, 0x96, 0x96, 0xda, 0xee, 0xc6, 0x40, 0x92, 0x4a, 0x00, + 0xe4, 0xbe, 0x45, 0x6f, 0x12, 0x7a, 0x51, 0xf9, 0x07, 0x6c, 0x6f, 0xe4, 0x60, 0xb2, 0xee, 0xc0, + 0xb4, 0xc2, 0x6c, 0xc9, 0x8d, 0xc0, 0x98, 0x7c, 0x8f, 0xfa, 0xa4, 0x38, 0xc4, 0x5c, 0x3c, 0x3b, + 0xe8, 0xc6, 0x8b, 0xfb, 0x50, 0x9a, 0x52, 0x12, 0x46, 0x6b, 0x1f, 0xd1, 0x0b, 0xe6, 0x7b, 0xf0, + 0xdd, 0x30, 0x81, 0x26, 0xb4, 0x12, 0x08, 0x9c, 0x0a, 0x6f, 0xe3, 0x60, 0x12, 0x2b, 0x83, 0x40, + 0x57, 0x13, 0xc3, 0xab, 0xfc, 0x3b, 0x04, 0xe3, 0x17, 0xdb, 0x8e, 0xdb, 0xd2, 0x3e, 0x64, 0x37, + 0x0b, 0xa5, 0x84, 0x16, 0x04, 0xe1, 0x94, 0x34, 0x4a, 0x07, 0x18, 0x25, 0x67, 0x61, 0xb4, 0x5f, + 0xb5, 0x64, 0x5e, 0x54, 0xb5, 0xf4, 0x45, 0x6b, 0x6b, 0x3b, 0x1e, 0xba, 0x05, 0x37, 0xa2, 0x96, + 0xe6, 0xce, 0xc3, 0x57, 0xe8, 0x1e, 0xfa, 0xd6, 0xfa, 0x7b, 0x38, 0xbd, 0x67, 0xa5, 0x5a, 0x1c, + 0xb4, 0x7c, 0xf9, 0x37, 0x08, 0x72, 0xd7, 0xcd, 0xa6, 0x69, 0x50, 0xe2, 0x58, 0xa1, 0x76, 0x05, + 0x72, 0x6a, 0xdb, 0x71, 0xcd, 0xc0, 0x02, 0x4b, 0xbd, 0x63, 0x55, 0x31, 0xc9, 0x4f, 0x61, 0x24, + 0x52, 0x54, 0x0d, 0xbf, 0x0f, 0xc7, 0xf6, 0x71, 0xa8, 0xb4, 0xdd, 0x8d, 0x03, 0x8f, 0xf6, 0xfe, + 0xa8, 0x94, 0x26, 0x95, 0xfd, 0x83, 0xe5, 0x5f, 0x0d, 0x01, 0xf0, 0xb2, 0x88, 0x61, 0xae, 0xc1, + 0x88, 0x6e, 0x36, 0x65, 0x3f, 0x3a, 0xc7, 0xaa, 0xa7, 0x92, 0x16, 0x8f, 0x6c, 0x73, 0x25, 0x25, + 0x0d, 0xeb, 0x66, 0xf3, 0x96, 0x81, 0x3f, 0x18, 0x84, 0x93, 0xbb, 0xe6, 0xb0, 0x38, 0x57, 0x52, + 0x89, 0x48, 0xf1, 0xb7, 0x0f, 0x88, 0x7f, 0xf4, 0xdf, 0xc4, 0xff, 0x4a, 0x2a, 0xf9, 0x04, 0xe0, + 0x1b, 0xfb, 0xd3, 0xd1, 0xf0, 0x61, 0xd3, 0xd1, 0x4a, 0x6a, 0x5f, 0x42, 0xfa, 0x35, 0x3d, 0x50, + 0xbf, 0x44, 0xf0, 0x09, 0x0a, 0x1f, 0xa9, 0x9f, 0x20, 0x78, 0x88, 0xe0, 0x78, 0xc0, 0x73, 0x35, + 0xa7, 0x87, 0xd9, 0x84, 0xf9, 0x01, 0x24, 0x56, 0x93, 0x38, 0x39, 0xe8, 0x78, 0x25, 0xed, 0x30, + 0x31, 0xa7, 0x45, 0x51, 0x2f, 0x9f, 0x80, 0xac, 0xe6, 0x92, 0x16, 0x2f, 0x33, 0xc6, 0x1f, 0x79, + 0x28, 0x4d, 0x4b, 0x8d, 0x50, 0x85, 0xf1, 0x23, 0x04, 0xf9, 0x35, 0x72, 0xaf, 0x4d, 0x0c, 0x95, + 0xf0, 0xc8, 0xc1, 0x97, 0xe1, 0xd5, 0x70, 0xf1, 0x12, 0xdc, 0xee, 0x96, 0xa9, 0x6b, 0xaa, 0x9f, + 0xcd, 0x78, 0x22, 0x9c, 0x09, 0x8b, 0xf1, 0xfa, 0x60, 0x95, 0x09, 0xb1, 0xe3, 0xfc, 0x0e, 0x8c, + 0x19, 0xe4, 0xbe, 0x2b, 0xfb, 0x85, 0x3c, 0x8f, 0xc0, 0xd2, 0xe0, 0x42, 0x9e, 0x7f, 0x1a, 0x51, + 0x15, 0xde, 0x2f, 0xff, 0x7e, 0x1c, 0xa6, 0x56, 0x89, 0xbd, 0xc6, 0x33, 0x13, 0x5f, 0x99, 0x85, + 0xf5, 0x3f, 0xd3, 0x90, 0x0d, 0xf6, 0xe9, 0xf8, 0xe7, 0xf0, 0xcb, 0x49, 0x0b, 0x27, 0x69, 0xf7, + 0x3d, 0xed, 0xb0, 0xca, 0x6d, 0xf9, 0x87, 0x69, 0xfa, 0x35, 0x35, 0xfe, 0x10, 0x65, 0xcb, 0x47, + 0xec, 0xe1, 0x02, 0x2a, 0x3e, 0x60, 0x03, 0xc3, 0x0f, 0x51, 0xba, 0x70, 0xa1, 0xf7, 0xf4, 0xcf, + 0x99, 0xd3, 0x9d, 0x2e, 0x12, 0x71, 0x69, 0xd7, 0x43, 0x02, 0xdd, 0x97, 0x68, 0xae, 0x8b, 0xee, + 0x06, 0x11, 0x03, 0x00, 0x22, 0xa5, 0xb6, 0x42, 0x05, 0x67, 0x3a, 0x5d, 0x54, 0xc4, 0xd3, 0x3d, + 0x0f, 0xe1, 0x48, 0xe5, 0x28, 0x52, 0x35, 0x2a, 0x00, 0x9d, 0x2e, 0x1a, 0xc1, 0x43, 0x9f, 0x79, + 0x28, 0x4d, 0xbb, 0x23, 0x9d, 0x2e, 0x4a, 0x8f, 0x22, 0xda, 0xdc, 0xe8, 0x74, 0x51, 0x43, 0xa8, + 0xef, 0x7a, 0xe8, 0xce, 0x45, 0xd3, 0x70, 0x15, 0xcd, 0x70, 0x98, 0x11, 0x51, 0x35, 0x8d, 0x75, + 0xad, 0xd9, 0xb6, 0x59, 0xee, 0x10, 0xd7, 0x4d, 0x5b, 0xe4, 0x15, 0xe6, 0x95, 0xb6, 0xae, 0x2f, + 0x2c, 0xa9, 0xfa, 0x42, 0xb8, 0xb0, 0x0c, 0xac, 0xde, 0x0c, 0x57, 0x83, 0x51, 0xa0, 0xd4, 0xd8, + 0x64, 0xa7, 0x8b, 0x26, 0x84, 0x5c, 0xcf, 0x43, 0xd9, 0x3e, 0xce, 0x3e, 0x3c, 0x61, 0xe8, 0x91, + 0x87, 0x90, 0xb4, 0xc7, 0x2f, 0x7e, 0x9a, 0x86, 0xa3, 0x3a, 0xfd, 0xa4, 0x97, 0x2d, 0xd3, 0xd4, + 0xe5, 0x16, 0xfb, 0xa8, 0xf7, 0xb3, 0xd5, 0xf9, 0x43, 0xb3, 0x1e, 0x7b, 0x14, 0xe0, 0xdc, 0xff, + 0x1b, 0xbd, 0x80, 0xfb, 0xd7, 0x3b, 0x5d, 0xf4, 0x1a, 0x3e, 0xb5, 0xeb, 0xa1, 0x93, 0x61, 0xee, + 0x19, 0x1c, 0x91, 0xc2, 0x11, 0x39, 0x1c, 0x2a, 0x2b, 0x76, 0xba, 0x68, 0x06, 0x0b, 0x3d, 0x0f, + 0x4d, 0x33, 0x63, 0x22, 0xb5, 0x26, 0x72, 0x73, 0x87, 0x70, 0xc1, 0x9b, 0x9d, 0x2e, 0x3a, 0x2b, + 0x2c, 0xee, 0x7a, 0x68, 0xc1, 0x77, 0x01, 0x33, 0xc5, 0xbe, 0x9e, 0x44, 0xc5, 0x68, 0x88, 0xc4, + 0x68, 0x88, 0xfe, 0x53, 0x00, 0xc5, 0xb1, 0x87, 0xa1, 0xef, 0x7b, 0x81, 0xf9, 0x3e, 0x6a, 0x9c, + 0xf8, 0xe8, 0xc2, 0xe4, 0x4e, 0xe8, 0xb1, 0x17, 0x92, 0x9f, 0x65, 0x60, 0x82, 0xf8, 0x2f, 0x0b, + 0xb2, 0x5f, 0x6b, 0x64, 0x18, 0xc1, 0x6f, 0x1d, 0x9a, 0xe0, 0xe8, 0xcb, 0x04, 0xe7, 0xf7, 0xd3, + 0x17, 0xc5, 0xf6, 0x5b, 0x9d, 0x2e, 0x3a, 0x87, 0xbf, 0xb4, 0xeb, 0xa1, 0x6a, 0x98, 0xdf, 0x00, + 0x8b, 0xc8, 0xb1, 0xb0, 0xb8, 0xb3, 0x88, 0x2d, 0x3a, 0xdc, 0xaa, 0xc8, 0x53, 0x01, 0x5d, 0xa0, + 0xd4, 0xe9, 0x22, 0x01, 0x17, 0x7b, 0x1e, 0x9a, 0x0a, 0x00, 0x88, 0x1c, 0xc1, 0x21, 0x28, 0x37, + 0x3b, 0x5d, 0x74, 0x57, 0xd0, 0x76, 0x3d, 0x44, 0x6e, 0x6f, 0x68, 0x8e, 0xb8, 0xae, 0x11, 0xbd, + 0x41, 0x43, 0x7e, 0xef, 0x00, 0xec, 0x8f, 0xff, 0x38, 0x36, 0x1a, 0xd5, 0xf3, 0x22, 0x7b, 0x49, + 0x10, 0x69, 0x6e, 0x12, 0xe7, 0x79, 0x3b, 0xb8, 0xe4, 0x99, 0xef, 0xf8, 0x13, 0x05, 0xb5, 0x79, + 0xa2, 0xd3, 0x45, 0xc7, 0x84, 0xc9, 0x9e, 0x87, 0x26, 0x62, 0x80, 0xe3, 0x5e, 0xca, 0x93, 0x08, + 0xa3, 0xf8, 0x2c, 0x1c, 0xb7, 0x88, 0x2d, 0xfb, 0x1c, 0x44, 0xd2, 0x21, 0xff, 0x6a, 0x98, 0xb2, + 0x62, 0x7e, 0x09, 0xaa, 0x62, 0xc7, 0xcf, 0xaf, 0x41, 0x2a, 0x3c, 0xe0, 0x1a, 0x8a, 0xa6, 0x62, + 0x29, 0xef, 0x44, 0xfa, 0xc2, 0x7b, 0x7b, 0x5f, 0x06, 0x3c, 0x7d, 0xe1, 0x02, 0x64, 0xee, 0x92, + 0x6d, 0x3f, 0x21, 0xd3, 0x26, 0xae, 0xc2, 0xf0, 0xa6, 0xa2, 0xb7, 0xc9, 0x80, 0xe7, 0x8f, 0xc8, + 0x6d, 0x27, 0x71, 0xd1, 0x5a, 0xfa, 0x1c, 0x12, 0x9a, 0x30, 0x95, 0x74, 0x48, 0x13, 0x2c, 0xbc, + 0x19, 0xb5, 0xf0, 0x5a, 0x62, 0x55, 0x11, 0x5d, 0x2a, 0x6c, 0x68, 0x1d, 0x26, 0x13, 0x82, 0xf5, + 0x7f, 0xb4, 0x13, 0x7b, 0x90, 0x0b, 0xd9, 0x29, 0xff, 0x18, 0xc1, 0x74, 0x38, 0x3d, 0x86, 0x6e, + 0x90, 0x15, 0xc8, 0x87, 0xee, 0x2e, 0x8d, 0x38, 0xfe, 0x3b, 0x53, 0x72, 0x35, 0x17, 0x4e, 0xb1, + 0x31, 0x3d, 0x7c, 0x0e, 0x8a, 0x91, 0xcb, 0x32, 0x1c, 0x16, 0xbc, 0xc0, 0x9d, 0x56, 0xf7, 0x61, + 0xa0, 0x81, 0x51, 0xfe, 0x04, 0x41, 0xfe, 0xaa, 0x6e, 0xd6, 0x15, 0x7d, 0xcd, 0x22, 0x2a, 0x83, + 0x75, 0x33, 0xf6, 0x6a, 0xc1, 0x1f, 0x4a, 0xe7, 0x5e, 0x04, 0x6a, 0x6f, 0x63, 0xd1, 0x97, 0x0c, + 0x7c, 0x0d, 0xc6, 0x42, 0x21, 0xeb, 0xd3, 0x38, 0x7b, 0xd8, 0x94, 0x22, 0xc1, 0x5e, 0x40, 0x97, + 0xff, 0x80, 0x20, 0x7f, 0xd1, 0x26, 0x8a, 0x4b, 0x5e, 0x02, 0xb4, 0xb5, 0xa3, 0x3b, 0x6f, 0xc7, + 0xb8, 0x2d, 0xff, 0x11, 0xc1, 0x84, 0x44, 0x2c, 0x5d, 0x51, 0x5f, 0xd6, 0x1d, 0x78, 0x08, 0xc6, + 0xae, 0x12, 0xf7, 0xe5, 0x44, 0x3f, 0xb7, 0x08, 0xb0, 0xf7, 0x04, 0x8e, 0x27, 0x61, 0x22, 0x56, + 0xcc, 0x17, 0x52, 0xb8, 0x00, 0xe3, 0x92, 0xd2, 0xd0, 0xda, 0x0e, 0x17, 0x2c, 0xa0, 0xb9, 0x57, + 0x61, 0xc4, 0x2f, 0x4a, 0x01, 0x46, 0x6c, 0xf2, 0x1d, 0xa2, 0xba, 0x85, 0x14, 0xce, 0xfa, 0xaf, + 0x21, 0x05, 0x34, 0x77, 0x0a, 0x22, 0x4f, 0x6b, 0xf8, 0x08, 0x64, 0x56, 0x57, 0x57, 0x0b, 0x29, + 0x3c, 0x0a, 0x43, 0x97, 0x6e, 0x5f, 0x5f, 0x2b, 0xa0, 0xe5, 0x8f, 0xd0, 0xe3, 0x67, 0xa5, 0xd4, + 0x93, 0x67, 0xa5, 0xd4, 0xe7, 0xcf, 0x4a, 0xe8, 0x41, 0xaf, 0x84, 0x7e, 0xde, 0x2b, 0xa1, 0xcf, + 0x7a, 0x25, 0xf4, 0xb8, 0x57, 0x42, 0x4f, 0x7a, 0x25, 0xf4, 0xb4, 0x57, 0x42, 0x7f, 0xef, 0x95, + 0x52, 0x9f, 0xf7, 0x4a, 0xe8, 0x07, 0xcf, 0x4b, 0xa9, 0xc7, 0xcf, 0x4b, 0xa9, 0x27, 0xcf, 0x4b, + 0xa9, 0xf7, 0x56, 0x9a, 0xa6, 0x75, 0xb7, 0x59, 0xd9, 0x34, 0x75, 0x97, 0xd8, 0xb6, 0x52, 0x69, + 0x3b, 0x0b, 0xac, 0xb1, 0x6e, 0xda, 0xad, 0x33, 0x96, 0x6d, 0x6e, 0x6a, 0x0d, 0x62, 0x9f, 0x09, + 0xa6, 0x17, 0xac, 0x7a, 0xd3, 0x5c, 0x20, 0xf7, 0x5d, 0xff, 0xf7, 0x48, 0xe8, 0xbf, 0x4f, 0x7d, + 0x84, 0xfd, 0x1e, 0x59, 0xfc, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0a, 0x05, 0x31, 0x54, 0x14, + 0x1a, 0x00, 0x00, +} + +func (x ServerType) String() string { + s, ok := ServerType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x Action) String() string { + s, ok := Action_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (x Connectivity) String() string { + s, ok := Connectivity_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *LeasePoolMember) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LeasePoolMember) + if !ok { + that2, ok := that.(LeasePoolMember) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.StartAddress.Equal(that1.StartAddress) { + return false + } + if !this.EndAddress.Equal(that1.EndAddress) { + return false + } + return true +} +func (this *ExternalServers) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ExternalServers) + if !ok { + that2, ok := that.(ExternalServers) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ServerType != that1.ServerType { + return false + } + if this.Domain != that1.Domain { + return false + } + if this.AdminUsername != that1.AdminUsername { + return false + } + if !this.AdminPassword.Equal(that1.AdminPassword) { + return false + } + return true +} +func (this *Entry) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Entry) + if !ok { + that2, ok := that.(Entry) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Action != that1.Action { + return false + } + if !this.DestinationIp.Equal(that1.DestinationIp) { + return false + } + if this.DestinationStartPort != that1.DestinationStartPort { + return false + } + if this.DestinationEndPort != that1.DestinationEndPort { + return false + } + return true +} +func (this *AclResourceEntry) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AclResourceEntry) + if !ok { + that2, ok := that.(AclResourceEntry) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Entries) != len(that1.Entries) { + return false + } + for i := range this.Entries { + if !this.Entries[i].Equal(that1.Entries[i]) { + return false + } + } + return true +} +func (this *Resource) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Resource) + if !ok { + that2, ok := that.(Resource) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.ResourceType == nil { + if this.ResourceType != nil { + return false + } + } else if this.ResourceType == nil { + return false + } else if !this.ResourceType.Equal(that1.ResourceType) { + return false + } + return true +} +func (this *Resource_Acl) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Resource_Acl) + if !ok { + that2, ok := that.(Resource_Acl) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Acl.Equal(that1.Acl) { + return false + } + return true +} +func (this *Resource_Web) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Resource_Web) + if !ok { + that2, ok := that.(Resource_Web) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Web.Equal(that1.Web) { + return false + } + return true +} +func (this *Resource_Connectivity) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Resource_Connectivity) + if !ok { + that2, ok := that.(Resource_Connectivity) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Connectivity.Equal(that1.Connectivity) { + return false + } + return true +} +func (this *Rules) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Rules) + if !ok { + that2, ok := that.(Rules) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.NetworkAccessRule) != len(that1.NetworkAccessRule) { + return false + } + for i := range this.NetworkAccessRule { + if this.NetworkAccessRule[i] != that1.NetworkAccessRule[i] { + return false + } + } + if this.WebTopName != that1.WebTopName { + return false + } + if len(this.Acls) != len(that1.Acls) { + return false + } + for i := range this.Acls { + if this.Acls[i] != that1.Acls[i] { + return false + } + } + return true +} +func (this *AllowResourceAssign) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*AllowResourceAssign) + if !ok { + that2, ok := that.(AllowResourceAssign) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Server != that1.Server { + return false + } + if len(this.RulesResourceAssign) != len(that1.RulesResourceAssign) { + return false + } + for i := range this.RulesResourceAssign { + if !this.RulesResourceAssign[i].Equal(that1.RulesResourceAssign[i]) { + return false + } + } + if this.DenyName != that1.DenyName { + return false + } + if this.AllowName != that1.AllowName { + return false + } + return true +} +func (this *ResourceAssign) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ResourceAssign) + if !ok { + that2, ok := that.(ResourceAssign) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Allow) != len(that1.Allow) { + return false + } + for i := range this.Allow { + if !this.Allow[i].Equal(that1.Allow[i]) { + return false + } + } + return true +} +func (this *ActiveDirectoryQuery) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActiveDirectoryQuery) + if !ok { + that2, ok := that.(ActiveDirectoryQuery) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Server != that1.Server { + return false + } + if this.Filter != that1.Filter { + return false + } + if this.DenyName != that1.DenyName { + return false + } + if !this.ResourceAssign.Equal(that1.ResourceAssign) { + return false + } + return true +} +func (this *ActiveDirectoryAuth) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActiveDirectoryAuth) + if !ok { + that2, ok := that.(ActiveDirectoryAuth) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Server != that1.Server { + return false + } + if this.Expression != that1.Expression { + return false + } + if this.DenyName != that1.DenyName { + return false + } + if len(this.ActiveDirectoryQuery) != len(that1.ActiveDirectoryQuery) { + return false + } + for i := range this.ActiveDirectoryQuery { + if !this.ActiveDirectoryQuery[i].Equal(that1.ActiveDirectoryQuery[i]) { + return false + } + } + return true +} +func (this *Custmization) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Custmization) + if !ok { + that2, ok := that.(Custmization) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.UserName != that1.UserName { + return false + } + if !this.Password.Equal(that1.Password) { + return false + } + return true +} +func (this *LogonItemType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*LogonItemType) + if !ok { + that2, ok := that.(LogonItemType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Customization) != len(that1.Customization) { + return false + } + for i := range this.Customization { + if !this.Customization[i].Equal(that1.Customization[i]) { + return false + } + } + if len(this.ActiveDirectoryAuth) != len(that1.ActiveDirectoryAuth) { + return false + } + for i := range this.ActiveDirectoryAuth { + if !this.ActiveDirectoryAuth[i].Equal(that1.ActiveDirectoryAuth[i]) { + return false + } + } + return true +} +func (this *ActionType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActionType) + if !ok { + that2, ok := that.(ActionType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.ItemType == nil { + if this.ItemType != nil { + return false + } + } else if this.ItemType == nil { + return false + } else if !this.ItemType.Equal(that1.ItemType) { + return false + } + return true +} +func (this *ActionType_LogOn) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActionType_LogOn) + if !ok { + that2, ok := that.(ActionType_LogOn) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.LogOn.Equal(that1.LogOn) { + return false + } + return true +} +func (this *ActionType_ActiveDirectoryAuth) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActionType_ActiveDirectoryAuth) + if !ok { + that2, ok := that.(ActionType_ActiveDirectoryAuth) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ActiveDirectoryAuth.Equal(that1.ActiveDirectoryAuth) { + return false + } + return true +} +func (this *ActionType_ActiveDirectoryQuery) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActionType_ActiveDirectoryQuery) + if !ok { + that2, ok := that.(ActionType_ActiveDirectoryQuery) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ActiveDirectoryQuery.Equal(that1.ActiveDirectoryQuery) { + return false + } + return true +} +func (this *ActionType_ResourceAssign) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ActionType_ResourceAssign) + if !ok { + that2, ok := that.(ActionType_ResourceAssign) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.ResourceAssign.Equal(that1.ResourceAssign) { + return false + } + return true +} +func (this *SequenceAction) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SequenceAction) + if !ok { + that2, ok := that.(SequenceAction) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ConnectivityAccessPolicyName != that1.ConnectivityAccessPolicyName { + return false + } + if !this.NextAction.Equal(that1.NextAction) { + return false + } + return true +} +func (this *PerSessionPolicyType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*PerSessionPolicyType) + if !ok { + that2, ok := that.(PerSessionPolicyType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Resources) != len(that1.Resources) { + return false + } + for i := range this.Resources { + if !this.Resources[i].Equal(that1.Resources[i]) { + return false + } + } + if len(this.LeasePoolMember) != len(that1.LeasePoolMember) { + return false + } + for i := range this.LeasePoolMember { + if !this.LeasePoolMember[i].Equal(that1.LeasePoolMember[i]) { + return false + } + } + if len(this.ExternalServer) != len(that1.ExternalServer) { + return false + } + for i := range this.ExternalServer { + if !this.ExternalServer[i].Equal(that1.ExternalServer[i]) { + return false + } + } + if this.PerSessionPolicyName != that1.PerSessionPolicyName { + return false + } + if !this.SequenceAction.Equal(that1.SequenceAction) { + return false + } + return true +} +func (this *ConnectivityPolicyType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ConnectivityPolicyType) + if !ok { + that2, ok := that.(ConnectivityPolicyType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Connectivities != that1.Connectivities { + return false + } + if this.ConnectivityPolicyName != that1.ConnectivityPolicyName { + return false + } + return true +} +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Connectivity.Equal(that1.Connectivity) { + return false + } + if !this.PerSession.Equal(that1.PerSession) { + return false + } + return true +} +func (this *CreateSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType) + if !ok { + that2, ok := that.(CreateSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Connectivity.Equal(that1.Connectivity) { + return false + } + if !this.PerSession.Equal(that1.PerSession) { + return false + } + return true +} +func (this *ReplaceSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType) + if !ok { + that2, ok := that.(ReplaceSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Connectivity.Equal(that1.Connectivity) { + return false + } + if !this.PerSession.Equal(that1.PerSession) { + return false + } + return true +} +func (this *GetSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType) + if !ok { + that2, ok := that.(GetSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Connectivity.Equal(that1.Connectivity) { + return false + } + if !this.PerSession.Equal(that1.PerSession) { + return false + } + return true +} +func (this *LeasePoolMember) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.LeasePoolMember{") + if this.StartAddress != nil { + s = append(s, "StartAddress: "+fmt.Sprintf("%#v", this.StartAddress)+",\n") + } + if this.EndAddress != nil { + s = append(s, "EndAddress: "+fmt.Sprintf("%#v", this.EndAddress)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ExternalServers) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.ExternalServers{") + s = append(s, "ServerType: "+fmt.Sprintf("%#v", this.ServerType)+",\n") + s = append(s, "Domain: "+fmt.Sprintf("%#v", this.Domain)+",\n") + s = append(s, "AdminUsername: "+fmt.Sprintf("%#v", this.AdminUsername)+",\n") + if this.AdminPassword != nil { + s = append(s, "AdminPassword: "+fmt.Sprintf("%#v", this.AdminPassword)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Entry) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.Entry{") + s = append(s, "Action: "+fmt.Sprintf("%#v", this.Action)+",\n") + if this.DestinationIp != nil { + s = append(s, "DestinationIp: "+fmt.Sprintf("%#v", this.DestinationIp)+",\n") + } + s = append(s, "DestinationStartPort: "+fmt.Sprintf("%#v", this.DestinationStartPort)+",\n") + s = append(s, "DestinationEndPort: "+fmt.Sprintf("%#v", this.DestinationEndPort)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AclResourceEntry) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&ztna.AclResourceEntry{") + if this.Entries != nil { + s = append(s, "Entries: "+fmt.Sprintf("%#v", this.Entries)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Resource) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.Resource{") + if this.ResourceType != nil { + s = append(s, "ResourceType: "+fmt.Sprintf("%#v", this.ResourceType)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Resource_Acl) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.Resource_Acl{` + + `Acl:` + fmt.Sprintf("%#v", this.Acl) + `}`}, ", ") + return s +} +func (this *Resource_Web) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.Resource_Web{` + + `Web:` + fmt.Sprintf("%#v", this.Web) + `}`}, ", ") + return s +} +func (this *Resource_Connectivity) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.Resource_Connectivity{` + + `Connectivity:` + fmt.Sprintf("%#v", this.Connectivity) + `}`}, ", ") + return s +} +func (this *Rules) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna.Rules{") + s = append(s, "NetworkAccessRule: "+fmt.Sprintf("%#v", this.NetworkAccessRule)+",\n") + s = append(s, "WebTopName: "+fmt.Sprintf("%#v", this.WebTopName)+",\n") + s = append(s, "Acls: "+fmt.Sprintf("%#v", this.Acls)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *AllowResourceAssign) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.AllowResourceAssign{") + s = append(s, "Server: "+fmt.Sprintf("%#v", this.Server)+",\n") + if this.RulesResourceAssign != nil { + s = append(s, "RulesResourceAssign: "+fmt.Sprintf("%#v", this.RulesResourceAssign)+",\n") + } + s = append(s, "DenyName: "+fmt.Sprintf("%#v", this.DenyName)+",\n") + s = append(s, "AllowName: "+fmt.Sprintf("%#v", this.AllowName)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ResourceAssign) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&ztna.ResourceAssign{") + if this.Allow != nil { + s = append(s, "Allow: "+fmt.Sprintf("%#v", this.Allow)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ActiveDirectoryQuery) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.ActiveDirectoryQuery{") + s = append(s, "Server: "+fmt.Sprintf("%#v", this.Server)+",\n") + s = append(s, "Filter: "+fmt.Sprintf("%#v", this.Filter)+",\n") + s = append(s, "DenyName: "+fmt.Sprintf("%#v", this.DenyName)+",\n") + if this.ResourceAssign != nil { + s = append(s, "ResourceAssign: "+fmt.Sprintf("%#v", this.ResourceAssign)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ActiveDirectoryAuth) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.ActiveDirectoryAuth{") + s = append(s, "Server: "+fmt.Sprintf("%#v", this.Server)+",\n") + s = append(s, "Expression: "+fmt.Sprintf("%#v", this.Expression)+",\n") + s = append(s, "DenyName: "+fmt.Sprintf("%#v", this.DenyName)+",\n") + if this.ActiveDirectoryQuery != nil { + s = append(s, "ActiveDirectoryQuery: "+fmt.Sprintf("%#v", this.ActiveDirectoryQuery)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *Custmization) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.Custmization{") + s = append(s, "UserName: "+fmt.Sprintf("%#v", this.UserName)+",\n") + if this.Password != nil { + s = append(s, "Password: "+fmt.Sprintf("%#v", this.Password)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *LogonItemType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.LogonItemType{") + if this.Customization != nil { + s = append(s, "Customization: "+fmt.Sprintf("%#v", this.Customization)+",\n") + } + if this.ActiveDirectoryAuth != nil { + s = append(s, "ActiveDirectoryAuth: "+fmt.Sprintf("%#v", this.ActiveDirectoryAuth)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ActionType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna.ActionType{") + if this.ItemType != nil { + s = append(s, "ItemType: "+fmt.Sprintf("%#v", this.ItemType)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ActionType_LogOn) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.ActionType_LogOn{` + + `LogOn:` + fmt.Sprintf("%#v", this.LogOn) + `}`}, ", ") + return s +} +func (this *ActionType_ActiveDirectoryAuth) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.ActionType_ActiveDirectoryAuth{` + + `ActiveDirectoryAuth:` + fmt.Sprintf("%#v", this.ActiveDirectoryAuth) + `}`}, ", ") + return s +} +func (this *ActionType_ActiveDirectoryQuery) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.ActionType_ActiveDirectoryQuery{` + + `ActiveDirectoryQuery:` + fmt.Sprintf("%#v", this.ActiveDirectoryQuery) + `}`}, ", ") + return s +} +func (this *ActionType_ResourceAssign) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna.ActionType_ResourceAssign{` + + `ResourceAssign:` + fmt.Sprintf("%#v", this.ResourceAssign) + `}`}, ", ") + return s +} +func (this *SequenceAction) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.SequenceAction{") + s = append(s, "ConnectivityAccessPolicyName: "+fmt.Sprintf("%#v", this.ConnectivityAccessPolicyName)+",\n") + if this.NextAction != nil { + s = append(s, "NextAction: "+fmt.Sprintf("%#v", this.NextAction)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *PerSessionPolicyType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&ztna.PerSessionPolicyType{") + keysForResources := make([]string, 0, len(this.Resources)) + for k, _ := range this.Resources { + keysForResources = append(keysForResources, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForResources) + mapStringForResources := "map[string]*Resource{" + for _, k := range keysForResources { + mapStringForResources += fmt.Sprintf("%#v: %#v,", k, this.Resources[k]) + } + mapStringForResources += "}" + if this.Resources != nil { + s = append(s, "Resources: "+mapStringForResources+",\n") + } + keysForLeasePoolMember := make([]string, 0, len(this.LeasePoolMember)) + for k, _ := range this.LeasePoolMember { + keysForLeasePoolMember = append(keysForLeasePoolMember, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLeasePoolMember) + mapStringForLeasePoolMember := "map[string]*LeasePoolMember{" + for _, k := range keysForLeasePoolMember { + mapStringForLeasePoolMember += fmt.Sprintf("%#v: %#v,", k, this.LeasePoolMember[k]) + } + mapStringForLeasePoolMember += "}" + if this.LeasePoolMember != nil { + s = append(s, "LeasePoolMember: "+mapStringForLeasePoolMember+",\n") + } + keysForExternalServer := make([]string, 0, len(this.ExternalServer)) + for k, _ := range this.ExternalServer { + keysForExternalServer = append(keysForExternalServer, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExternalServer) + mapStringForExternalServer := "map[string]*ExternalServers{" + for _, k := range keysForExternalServer { + mapStringForExternalServer += fmt.Sprintf("%#v: %#v,", k, this.ExternalServer[k]) + } + mapStringForExternalServer += "}" + if this.ExternalServer != nil { + s = append(s, "ExternalServer: "+mapStringForExternalServer+",\n") + } + s = append(s, "PerSessionPolicyName: "+fmt.Sprintf("%#v", this.PerSessionPolicyName)+",\n") + if this.SequenceAction != nil { + s = append(s, "SequenceAction: "+fmt.Sprintf("%#v", this.SequenceAction)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ConnectivityPolicyType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.ConnectivityPolicyType{") + s = append(s, "Connectivities: "+fmt.Sprintf("%#v", this.Connectivities)+",\n") + s = append(s, "ConnectivityPolicyName: "+fmt.Sprintf("%#v", this.ConnectivityPolicyName)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.GlobalSpecType{") + if this.Connectivity != nil { + s = append(s, "Connectivity: "+fmt.Sprintf("%#v", this.Connectivity)+",\n") + } + if this.PerSession != nil { + s = append(s, "PerSession: "+fmt.Sprintf("%#v", this.PerSession)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.CreateSpecType{") + if this.Connectivity != nil { + s = append(s, "Connectivity: "+fmt.Sprintf("%#v", this.Connectivity)+",\n") + } + if this.PerSession != nil { + s = append(s, "PerSession: "+fmt.Sprintf("%#v", this.PerSession)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.ReplaceSpecType{") + if this.Connectivity != nil { + s = append(s, "Connectivity: "+fmt.Sprintf("%#v", this.Connectivity)+",\n") + } + if this.PerSession != nil { + s = append(s, "PerSession: "+fmt.Sprintf("%#v", this.PerSession)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna.GetSpecType{") + if this.Connectivity != nil { + s = append(s, "Connectivity: "+fmt.Sprintf("%#v", this.Connectivity)+",\n") + } + if this.PerSession != nil { + s = append(s, "PerSession: "+fmt.Sprintf("%#v", this.PerSession)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *LeasePoolMember) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LeasePoolMember) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LeasePoolMember) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.EndAddress != nil { + { + size, err := m.EndAddress.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.StartAddress != nil { + { + size, err := m.StartAddress.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ExternalServers) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalServers) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ExternalServers) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AdminPassword != nil { + { + size, err := m.AdminPassword.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.AdminUsername) > 0 { + i -= len(m.AdminUsername) + copy(dAtA[i:], m.AdminUsername) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AdminUsername))) + i-- + dAtA[i] = 0x22 + } + if len(m.Domain) > 0 { + i -= len(m.Domain) + copy(dAtA[i:], m.Domain) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Domain))) + i-- + dAtA[i] = 0x1a + } + if m.ServerType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.ServerType)) + i-- + dAtA[i] = 0x10 + } + return len(dAtA) - i, nil +} + +func (m *Entry) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Entry) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Entry) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.DestinationEndPort != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DestinationEndPort)) + i-- + dAtA[i] = 0x20 + } + if m.DestinationStartPort != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.DestinationStartPort)) + i-- + dAtA[i] = 0x18 + } + if m.DestinationIp != nil { + { + size, err := m.DestinationIp.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Action != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Action)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *AclResourceEntry) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AclResourceEntry) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AclResourceEntry) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Entries) > 0 { + for iNdEx := len(m.Entries) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Entries[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + return len(dAtA) - i, nil +} + +func (m *Resource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Resource) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Resource) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResourceType != nil { + { + size := m.ResourceType.Size() + i -= size + if _, err := m.ResourceType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *Resource_Acl) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Resource_Acl) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Acl != nil { + { + size, err := m.Acl.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *Resource_Web) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Resource_Web) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Web != nil { + { + size, err := m.Web.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *Resource_Connectivity) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Resource_Connectivity) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Connectivity != nil { + { + size, err := m.Connectivity.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *Rules) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Rules) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Rules) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Acls) > 0 { + for iNdEx := len(m.Acls) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Acls[iNdEx]) + copy(dAtA[i:], m.Acls[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Acls[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.WebTopName) > 0 { + i -= len(m.WebTopName) + copy(dAtA[i:], m.WebTopName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.WebTopName))) + i-- + dAtA[i] = 0x12 + } + if len(m.NetworkAccessRule) > 0 { + for iNdEx := len(m.NetworkAccessRule) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.NetworkAccessRule[iNdEx]) + copy(dAtA[i:], m.NetworkAccessRule[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.NetworkAccessRule[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *AllowResourceAssign) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AllowResourceAssign) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AllowResourceAssign) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.AllowName) > 0 { + i -= len(m.AllowName) + copy(dAtA[i:], m.AllowName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AllowName))) + i-- + dAtA[i] = 0x22 + } + if len(m.DenyName) > 0 { + i -= len(m.DenyName) + copy(dAtA[i:], m.DenyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DenyName))) + i-- + dAtA[i] = 0x1a + } + if len(m.RulesResourceAssign) > 0 { + for iNdEx := len(m.RulesResourceAssign) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.RulesResourceAssign[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Server) > 0 { + i -= len(m.Server) + copy(dAtA[i:], m.Server) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Server))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ResourceAssign) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ResourceAssign) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ResourceAssign) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Allow) > 0 { + for iNdEx := len(m.Allow) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Allow[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + return len(dAtA) - i, nil +} + +func (m *ActiveDirectoryQuery) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ActiveDirectoryQuery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActiveDirectoryQuery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResourceAssign != nil { + { + size, err := m.ResourceAssign.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if len(m.DenyName) > 0 { + i -= len(m.DenyName) + copy(dAtA[i:], m.DenyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DenyName))) + i-- + dAtA[i] = 0x1a + } + if len(m.Filter) > 0 { + i -= len(m.Filter) + copy(dAtA[i:], m.Filter) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Filter))) + i-- + dAtA[i] = 0x12 + } + if len(m.Server) > 0 { + i -= len(m.Server) + copy(dAtA[i:], m.Server) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Server))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ActiveDirectoryAuth) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ActiveDirectoryAuth) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActiveDirectoryAuth) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ActiveDirectoryQuery) > 0 { + for iNdEx := len(m.ActiveDirectoryQuery) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ActiveDirectoryQuery[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + } + if len(m.DenyName) > 0 { + i -= len(m.DenyName) + copy(dAtA[i:], m.DenyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DenyName))) + i-- + dAtA[i] = 0x1a + } + if len(m.Expression) > 0 { + i -= len(m.Expression) + copy(dAtA[i:], m.Expression) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Expression))) + i-- + dAtA[i] = 0x12 + } + if len(m.Server) > 0 { + i -= len(m.Server) + copy(dAtA[i:], m.Server) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Server))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Custmization) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Custmization) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Custmization) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Password != nil { + { + size, err := m.Password.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if len(m.UserName) > 0 { + i -= len(m.UserName) + copy(dAtA[i:], m.UserName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.UserName))) + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *LogonItemType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LogonItemType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *LogonItemType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ActiveDirectoryAuth) > 0 { + for iNdEx := len(m.ActiveDirectoryAuth) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ActiveDirectoryAuth[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Customization) > 0 { + for iNdEx := len(m.Customization) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Customization[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ActionType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ActionType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActionType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ItemType != nil { + { + size := m.ItemType.Size() + i -= size + if _, err := m.ItemType.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ActionType_LogOn) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActionType_LogOn) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.LogOn != nil { + { + size, err := m.LogOn.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ActionType_ActiveDirectoryAuth) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActionType_ActiveDirectoryAuth) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActiveDirectoryAuth != nil { + { + size, err := m.ActiveDirectoryAuth.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *ActionType_ActiveDirectoryQuery) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActionType_ActiveDirectoryQuery) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ActiveDirectoryQuery != nil { + { + size, err := m.ActiveDirectoryQuery.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *ActionType_ResourceAssign) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ActionType_ResourceAssign) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.ResourceAssign != nil { + { + size, err := m.ResourceAssign.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *SequenceAction) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SequenceAction) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SequenceAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.NextAction != nil { + { + size, err := m.NextAction.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.ConnectivityAccessPolicyName) > 0 { + i -= len(m.ConnectivityAccessPolicyName) + copy(dAtA[i:], m.ConnectivityAccessPolicyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ConnectivityAccessPolicyName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *PerSessionPolicyType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PerSessionPolicyType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PerSessionPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SequenceAction != nil { + { + size, err := m.SequenceAction.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.PerSessionPolicyName) > 0 { + i -= len(m.PerSessionPolicyName) + copy(dAtA[i:], m.PerSessionPolicyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.PerSessionPolicyName))) + i-- + dAtA[i] = 0x22 + } + if len(m.ExternalServer) > 0 { + keysForExternalServer := make([]string, 0, len(m.ExternalServer)) + for k := range m.ExternalServer { + keysForExternalServer = append(keysForExternalServer, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExternalServer) + for iNdEx := len(keysForExternalServer) - 1; iNdEx >= 0; iNdEx-- { + v := m.ExternalServer[string(keysForExternalServer[iNdEx])] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(keysForExternalServer[iNdEx]) + copy(dAtA[i:], keysForExternalServer[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForExternalServer[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x1a + } + } + if len(m.LeasePoolMember) > 0 { + keysForLeasePoolMember := make([]string, 0, len(m.LeasePoolMember)) + for k := range m.LeasePoolMember { + keysForLeasePoolMember = append(keysForLeasePoolMember, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLeasePoolMember) + for iNdEx := len(keysForLeasePoolMember) - 1; iNdEx >= 0; iNdEx-- { + v := m.LeasePoolMember[string(keysForLeasePoolMember[iNdEx])] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(keysForLeasePoolMember[iNdEx]) + copy(dAtA[i:], keysForLeasePoolMember[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForLeasePoolMember[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x12 + } + } + if len(m.Resources) > 0 { + keysForResources := make([]string, 0, len(m.Resources)) + for k := range m.Resources { + keysForResources = append(keysForResources, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForResources) + for iNdEx := len(keysForResources) - 1; iNdEx >= 0; iNdEx-- { + v := m.Resources[string(keysForResources[iNdEx])] + baseI := i + if v != nil { + { + size, err := v.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + i -= len(keysForResources[iNdEx]) + copy(dAtA[i:], keysForResources[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(keysForResources[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintTypes(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *ConnectivityPolicyType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ConnectivityPolicyType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ConnectivityPolicyType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ConnectivityPolicyName) > 0 { + i -= len(m.ConnectivityPolicyName) + copy(dAtA[i:], m.ConnectivityPolicyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ConnectivityPolicyName))) + i-- + dAtA[i] = 0x12 + } + if m.Connectivities != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Connectivities)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PerSession != nil { + { + size, err := m.PerSession.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Connectivity != nil { + { + size, err := m.Connectivity.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PerSession != nil { + { + size, err := m.PerSession.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Connectivity != nil { + { + size, err := m.Connectivity.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PerSession != nil { + { + size, err := m.PerSession.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Connectivity != nil { + { + size, err := m.Connectivity.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PerSession != nil { + { + size, err := m.PerSession.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Connectivity != nil { + { + size, err := m.Connectivity.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *LeasePoolMember) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.StartAddress != nil { + l = m.StartAddress.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.EndAddress != nil { + l = m.EndAddress.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ExternalServers) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ServerType != 0 { + n += 1 + sovTypes(uint64(m.ServerType)) + } + l = len(m.Domain) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.AdminUsername) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.AdminPassword != nil { + l = m.AdminPassword.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *Entry) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Action != 0 { + n += 1 + sovTypes(uint64(m.Action)) + } + if m.DestinationIp != nil { + l = m.DestinationIp.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.DestinationStartPort != 0 { + n += 1 + sovTypes(uint64(m.DestinationStartPort)) + } + if m.DestinationEndPort != 0 { + n += 1 + sovTypes(uint64(m.DestinationEndPort)) + } + return n +} + +func (m *AclResourceEntry) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Entries) > 0 { + for _, e := range m.Entries { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *Resource) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ResourceType != nil { + n += m.ResourceType.Size() + } + return n +} + +func (m *Resource_Acl) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Acl != nil { + l = m.Acl.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *Resource_Web) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Web != nil { + l = m.Web.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *Resource_Connectivity) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Connectivity != nil { + l = m.Connectivity.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *Rules) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.NetworkAccessRule) > 0 { + for _, s := range m.NetworkAccessRule { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + l = len(m.WebTopName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.Acls) > 0 { + for _, s := range m.Acls { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *AllowResourceAssign) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Server) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.RulesResourceAssign) > 0 { + for _, e := range m.RulesResourceAssign { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + l = len(m.DenyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.AllowName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ResourceAssign) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Allow) > 0 { + for _, e := range m.Allow { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *ActiveDirectoryQuery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Server) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.Filter) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.DenyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.ResourceAssign != nil { + l = m.ResourceAssign.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ActiveDirectoryAuth) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Server) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.Expression) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.DenyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if len(m.ActiveDirectoryQuery) > 0 { + for _, e := range m.ActiveDirectoryQuery { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *Custmization) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.UserName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Password != nil { + l = m.Password.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *LogonItemType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Customization) > 0 { + for _, e := range m.Customization { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if len(m.ActiveDirectoryAuth) > 0 { + for _, e := range m.ActiveDirectoryAuth { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + return n +} + +func (m *ActionType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ItemType != nil { + n += m.ItemType.Size() + } + return n +} + +func (m *ActionType_LogOn) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.LogOn != nil { + l = m.LogOn.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ActionType_ActiveDirectoryAuth) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveDirectoryAuth != nil { + l = m.ActiveDirectoryAuth.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ActionType_ActiveDirectoryQuery) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ActiveDirectoryQuery != nil { + l = m.ActiveDirectoryQuery.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ActionType_ResourceAssign) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.ResourceAssign != nil { + l = m.ResourceAssign.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *SequenceAction) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ConnectivityAccessPolicyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.NextAction != nil { + l = m.NextAction.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *PerSessionPolicyType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Resources) > 0 { + for k, v := range m.Resources { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovTypes(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + l + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) + } + } + if len(m.LeasePoolMember) > 0 { + for k, v := range m.LeasePoolMember { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovTypes(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + l + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) + } + } + if len(m.ExternalServer) > 0 { + for k, v := range m.ExternalServer { + _ = k + _ = v + l = 0 + if v != nil { + l = v.Size() + l += 1 + sovTypes(uint64(l)) + } + mapEntrySize := 1 + len(k) + sovTypes(uint64(len(k))) + l + n += mapEntrySize + 1 + sovTypes(uint64(mapEntrySize)) + } + } + l = len(m.PerSessionPolicyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.SequenceAction != nil { + l = m.SequenceAction.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ConnectivityPolicyType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Connectivities != 0 { + n += 1 + sovTypes(uint64(m.Connectivities)) + } + l = len(m.ConnectivityPolicyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Connectivity != nil { + l = m.Connectivity.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.PerSession != nil { + l = m.PerSession.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CreateSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Connectivity != nil { + l = m.Connectivity.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.PerSession != nil { + l = m.PerSession.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ReplaceSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Connectivity != nil { + l = m.Connectivity.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.PerSession != nil { + l = m.PerSession.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Connectivity != nil { + l = m.Connectivity.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.PerSession != nil { + l = m.PerSession.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *LeasePoolMember) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LeasePoolMember{`, + `StartAddress:` + strings.Replace(fmt.Sprintf("%v", this.StartAddress), "IpAddressType", "schema.IpAddressType", 1) + `,`, + `EndAddress:` + strings.Replace(fmt.Sprintf("%v", this.EndAddress), "IpAddressType", "schema.IpAddressType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalServers) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalServers{`, + `ServerType:` + fmt.Sprintf("%v", this.ServerType) + `,`, + `Domain:` + fmt.Sprintf("%v", this.Domain) + `,`, + `AdminUsername:` + fmt.Sprintf("%v", this.AdminUsername) + `,`, + `AdminPassword:` + strings.Replace(fmt.Sprintf("%v", this.AdminPassword), "SecretType", "schema.SecretType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Entry) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Entry{`, + `Action:` + fmt.Sprintf("%v", this.Action) + `,`, + `DestinationIp:` + strings.Replace(fmt.Sprintf("%v", this.DestinationIp), "IpAddressType", "schema.IpAddressType", 1) + `,`, + `DestinationStartPort:` + fmt.Sprintf("%v", this.DestinationStartPort) + `,`, + `DestinationEndPort:` + fmt.Sprintf("%v", this.DestinationEndPort) + `,`, + `}`, + }, "") + return s +} +func (this *AclResourceEntry) String() string { + if this == nil { + return "nil" + } + repeatedStringForEntries := "[]*Entry{" + for _, f := range this.Entries { + repeatedStringForEntries += strings.Replace(f.String(), "Entry", "Entry", 1) + "," + } + repeatedStringForEntries += "}" + s := strings.Join([]string{`&AclResourceEntry{`, + `Entries:` + repeatedStringForEntries + `,`, + `}`, + }, "") + return s +} +func (this *Resource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Resource{`, + `ResourceType:` + fmt.Sprintf("%v", this.ResourceType) + `,`, + `}`, + }, "") + return s +} +func (this *Resource_Acl) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Resource_Acl{`, + `Acl:` + strings.Replace(fmt.Sprintf("%v", this.Acl), "AclResourceEntry", "AclResourceEntry", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Resource_Web) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Resource_Web{`, + `Web:` + strings.Replace(fmt.Sprintf("%v", this.Web), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Resource_Connectivity) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Resource_Connectivity{`, + `Connectivity:` + strings.Replace(fmt.Sprintf("%v", this.Connectivity), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *Rules) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Rules{`, + `NetworkAccessRule:` + fmt.Sprintf("%v", this.NetworkAccessRule) + `,`, + `WebTopName:` + fmt.Sprintf("%v", this.WebTopName) + `,`, + `Acls:` + fmt.Sprintf("%v", this.Acls) + `,`, + `}`, + }, "") + return s +} +func (this *AllowResourceAssign) String() string { + if this == nil { + return "nil" + } + repeatedStringForRulesResourceAssign := "[]*Rules{" + for _, f := range this.RulesResourceAssign { + repeatedStringForRulesResourceAssign += strings.Replace(f.String(), "Rules", "Rules", 1) + "," + } + repeatedStringForRulesResourceAssign += "}" + s := strings.Join([]string{`&AllowResourceAssign{`, + `Server:` + fmt.Sprintf("%v", this.Server) + `,`, + `RulesResourceAssign:` + repeatedStringForRulesResourceAssign + `,`, + `DenyName:` + fmt.Sprintf("%v", this.DenyName) + `,`, + `AllowName:` + fmt.Sprintf("%v", this.AllowName) + `,`, + `}`, + }, "") + return s +} +func (this *ResourceAssign) String() string { + if this == nil { + return "nil" + } + repeatedStringForAllow := "[]*AllowResourceAssign{" + for _, f := range this.Allow { + repeatedStringForAllow += strings.Replace(f.String(), "AllowResourceAssign", "AllowResourceAssign", 1) + "," + } + repeatedStringForAllow += "}" + s := strings.Join([]string{`&ResourceAssign{`, + `Allow:` + repeatedStringForAllow + `,`, + `}`, + }, "") + return s +} +func (this *ActiveDirectoryQuery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ActiveDirectoryQuery{`, + `Server:` + fmt.Sprintf("%v", this.Server) + `,`, + `Filter:` + fmt.Sprintf("%v", this.Filter) + `,`, + `DenyName:` + fmt.Sprintf("%v", this.DenyName) + `,`, + `ResourceAssign:` + strings.Replace(this.ResourceAssign.String(), "ResourceAssign", "ResourceAssign", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ActiveDirectoryAuth) String() string { + if this == nil { + return "nil" + } + repeatedStringForActiveDirectoryQuery := "[]*ActiveDirectoryQuery{" + for _, f := range this.ActiveDirectoryQuery { + repeatedStringForActiveDirectoryQuery += strings.Replace(f.String(), "ActiveDirectoryQuery", "ActiveDirectoryQuery", 1) + "," + } + repeatedStringForActiveDirectoryQuery += "}" + s := strings.Join([]string{`&ActiveDirectoryAuth{`, + `Server:` + fmt.Sprintf("%v", this.Server) + `,`, + `Expression:` + fmt.Sprintf("%v", this.Expression) + `,`, + `DenyName:` + fmt.Sprintf("%v", this.DenyName) + `,`, + `ActiveDirectoryQuery:` + repeatedStringForActiveDirectoryQuery + `,`, + `}`, + }, "") + return s +} +func (this *Custmization) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Custmization{`, + `UserName:` + fmt.Sprintf("%v", this.UserName) + `,`, + `Password:` + strings.Replace(fmt.Sprintf("%v", this.Password), "SecretType", "schema.SecretType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *LogonItemType) String() string { + if this == nil { + return "nil" + } + repeatedStringForCustomization := "[]*Custmization{" + for _, f := range this.Customization { + repeatedStringForCustomization += strings.Replace(f.String(), "Custmization", "Custmization", 1) + "," + } + repeatedStringForCustomization += "}" + repeatedStringForActiveDirectoryAuth := "[]*ActiveDirectoryAuth{" + for _, f := range this.ActiveDirectoryAuth { + repeatedStringForActiveDirectoryAuth += strings.Replace(f.String(), "ActiveDirectoryAuth", "ActiveDirectoryAuth", 1) + "," + } + repeatedStringForActiveDirectoryAuth += "}" + s := strings.Join([]string{`&LogonItemType{`, + `Customization:` + repeatedStringForCustomization + `,`, + `ActiveDirectoryAuth:` + repeatedStringForActiveDirectoryAuth + `,`, + `}`, + }, "") + return s +} +func (this *ActionType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ActionType{`, + `ItemType:` + fmt.Sprintf("%v", this.ItemType) + `,`, + `}`, + }, "") + return s +} +func (this *ActionType_LogOn) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ActionType_LogOn{`, + `LogOn:` + strings.Replace(fmt.Sprintf("%v", this.LogOn), "LogonItemType", "LogonItemType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ActionType_ActiveDirectoryAuth) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ActionType_ActiveDirectoryAuth{`, + `ActiveDirectoryAuth:` + strings.Replace(fmt.Sprintf("%v", this.ActiveDirectoryAuth), "ActiveDirectoryAuth", "ActiveDirectoryAuth", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ActionType_ActiveDirectoryQuery) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ActionType_ActiveDirectoryQuery{`, + `ActiveDirectoryQuery:` + strings.Replace(fmt.Sprintf("%v", this.ActiveDirectoryQuery), "ActiveDirectoryQuery", "ActiveDirectoryQuery", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ActionType_ResourceAssign) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ActionType_ResourceAssign{`, + `ResourceAssign:` + strings.Replace(fmt.Sprintf("%v", this.ResourceAssign), "ResourceAssign", "ResourceAssign", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SequenceAction) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SequenceAction{`, + `ConnectivityAccessPolicyName:` + fmt.Sprintf("%v", this.ConnectivityAccessPolicyName) + `,`, + `NextAction:` + strings.Replace(this.NextAction.String(), "ActionType", "ActionType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *PerSessionPolicyType) String() string { + if this == nil { + return "nil" + } + keysForResources := make([]string, 0, len(this.Resources)) + for k, _ := range this.Resources { + keysForResources = append(keysForResources, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForResources) + mapStringForResources := "map[string]*Resource{" + for _, k := range keysForResources { + mapStringForResources += fmt.Sprintf("%v: %v,", k, this.Resources[k]) + } + mapStringForResources += "}" + keysForLeasePoolMember := make([]string, 0, len(this.LeasePoolMember)) + for k, _ := range this.LeasePoolMember { + keysForLeasePoolMember = append(keysForLeasePoolMember, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLeasePoolMember) + mapStringForLeasePoolMember := "map[string]*LeasePoolMember{" + for _, k := range keysForLeasePoolMember { + mapStringForLeasePoolMember += fmt.Sprintf("%v: %v,", k, this.LeasePoolMember[k]) + } + mapStringForLeasePoolMember += "}" + keysForExternalServer := make([]string, 0, len(this.ExternalServer)) + for k, _ := range this.ExternalServer { + keysForExternalServer = append(keysForExternalServer, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExternalServer) + mapStringForExternalServer := "map[string]*ExternalServers{" + for _, k := range keysForExternalServer { + mapStringForExternalServer += fmt.Sprintf("%v: %v,", k, this.ExternalServer[k]) + } + mapStringForExternalServer += "}" + s := strings.Join([]string{`&PerSessionPolicyType{`, + `Resources:` + mapStringForResources + `,`, + `LeasePoolMember:` + mapStringForLeasePoolMember + `,`, + `ExternalServer:` + mapStringForExternalServer + `,`, + `PerSessionPolicyName:` + fmt.Sprintf("%v", this.PerSessionPolicyName) + `,`, + `SequenceAction:` + strings.Replace(this.SequenceAction.String(), "SequenceAction", "SequenceAction", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ConnectivityPolicyType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ConnectivityPolicyType{`, + `Connectivities:` + fmt.Sprintf("%v", this.Connectivities) + `,`, + `ConnectivityPolicyName:` + fmt.Sprintf("%v", this.ConnectivityPolicyName) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType{`, + `Connectivity:` + strings.Replace(this.Connectivity.String(), "ConnectivityPolicyType", "ConnectivityPolicyType", 1) + `,`, + `PerSession:` + strings.Replace(this.PerSession.String(), "PerSessionPolicyType", "PerSessionPolicyType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType{`, + `Connectivity:` + strings.Replace(this.Connectivity.String(), "ConnectivityPolicyType", "ConnectivityPolicyType", 1) + `,`, + `PerSession:` + strings.Replace(this.PerSession.String(), "PerSessionPolicyType", "PerSessionPolicyType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType{`, + `Connectivity:` + strings.Replace(this.Connectivity.String(), "ConnectivityPolicyType", "ConnectivityPolicyType", 1) + `,`, + `PerSession:` + strings.Replace(this.PerSession.String(), "PerSessionPolicyType", "PerSessionPolicyType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType{`, + `Connectivity:` + strings.Replace(this.Connectivity.String(), "ConnectivityPolicyType", "ConnectivityPolicyType", 1) + `,`, + `PerSession:` + strings.Replace(this.PerSession.String(), "PerSessionPolicyType", "PerSessionPolicyType", 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *LeasePoolMember) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LeasePoolMember: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LeasePoolMember: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StartAddress", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.StartAddress == nil { + m.StartAddress = &schema.IpAddressType{} + } + if err := m.StartAddress.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EndAddress", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.EndAddress == nil { + m.EndAddress = &schema.IpAddressType{} + } + if err := m.EndAddress.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalServers) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalServers: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalServers: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ServerType", wireType) + } + m.ServerType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ServerType |= ServerType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Domain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Domain = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AdminUsername", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AdminUsername = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AdminPassword", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.AdminPassword == nil { + m.AdminPassword = &schema.SecretType{} + } + if err := m.AdminPassword.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Entry) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Entry: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Entry: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) + } + m.Action = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Action |= Action(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DestinationIp", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.DestinationIp == nil { + m.DestinationIp = &schema.IpAddressType{} + } + if err := m.DestinationIp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DestinationStartPort", wireType) + } + m.DestinationStartPort = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DestinationStartPort |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DestinationEndPort", wireType) + } + m.DestinationEndPort = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DestinationEndPort |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AclResourceEntry) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AclResourceEntry: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AclResourceEntry: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Entries", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Entries = append(m.Entries, &Entry{}) + if err := m.Entries[len(m.Entries)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Resource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Resource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Resource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Acl", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &AclResourceEntry{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResourceType = &Resource_Acl{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Web", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResourceType = &Resource_Web{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connectivity", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ResourceType = &Resource_Connectivity{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Rules) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Rules: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Rules: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NetworkAccessRule", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NetworkAccessRule = append(m.NetworkAccessRule, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WebTopName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.WebTopName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Acls", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Acls = append(m.Acls, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AllowResourceAssign) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AllowResourceAssign: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AllowResourceAssign: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Server", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Server = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RulesResourceAssign", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RulesResourceAssign = append(m.RulesResourceAssign, &Rules{}) + if err := m.RulesResourceAssign[len(m.RulesResourceAssign)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DenyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DenyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AllowName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ResourceAssign) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResourceAssign: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResourceAssign: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Allow", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Allow = append(m.Allow, &AllowResourceAssign{}) + if err := m.Allow[len(m.Allow)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ActiveDirectoryQuery) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ActiveDirectoryQuery: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ActiveDirectoryQuery: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Server", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Server = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Filter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Filter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DenyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DenyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceAssign", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ResourceAssign == nil { + m.ResourceAssign = &ResourceAssign{} + } + if err := m.ResourceAssign.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ActiveDirectoryAuth) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ActiveDirectoryAuth: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ActiveDirectoryAuth: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Server", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Server = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Expression", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Expression = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DenyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DenyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActiveDirectoryQuery", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ActiveDirectoryQuery = append(m.ActiveDirectoryQuery, &ActiveDirectoryQuery{}) + if err := m.ActiveDirectoryQuery[len(m.ActiveDirectoryQuery)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Custmization) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Custmization: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Custmization: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UserName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Password", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Password == nil { + m.Password = &schema.SecretType{} + } + if err := m.Password.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *LogonItemType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LogonItemType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LogonItemType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Customization", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Customization = append(m.Customization, &Custmization{}) + if err := m.Customization[len(m.Customization)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActiveDirectoryAuth", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ActiveDirectoryAuth = append(m.ActiveDirectoryAuth, &ActiveDirectoryAuth{}) + if err := m.ActiveDirectoryAuth[len(m.ActiveDirectoryAuth)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ActionType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ActionType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ActionType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LogOn", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &LogonItemType{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ItemType = &ActionType_LogOn{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActiveDirectoryAuth", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ActiveDirectoryAuth{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ItemType = &ActionType_ActiveDirectoryAuth{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ActiveDirectoryQuery", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ActiveDirectoryQuery{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ItemType = &ActionType_ActiveDirectoryQuery{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceAssign", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &ResourceAssign{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.ItemType = &ActionType_ResourceAssign{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SequenceAction) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SequenceAction: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SequenceAction: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectivityAccessPolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConnectivityAccessPolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NextAction", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.NextAction == nil { + m.NextAction = &ActionType{} + } + if err := m.NextAction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PerSessionPolicyType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PerSessionPolicyType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PerSessionPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resources", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Resources == nil { + m.Resources = make(map[string]*Resource) + } + var mapkey string + var mapvalue *Resource + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapmsglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthTypes + } + postmsgIndex := iNdEx + mapmsglen + if postmsgIndex < 0 { + return ErrInvalidLengthTypes + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue = &Resource{} + if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Resources[mapkey] = mapvalue + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LeasePoolMember", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.LeasePoolMember == nil { + m.LeasePoolMember = make(map[string]*LeasePoolMember) + } + var mapkey string + var mapvalue *LeasePoolMember + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapmsglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthTypes + } + postmsgIndex := iNdEx + mapmsglen + if postmsgIndex < 0 { + return ErrInvalidLengthTypes + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue = &LeasePoolMember{} + if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.LeasePoolMember[mapkey] = mapvalue + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExternalServer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ExternalServer == nil { + m.ExternalServer = make(map[string]*ExternalServers) + } + var mapkey string + var mapvalue *ExternalServers + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthTypes + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthTypes + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapmsglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthTypes + } + postmsgIndex := iNdEx + mapmsglen + if postmsgIndex < 0 { + return ErrInvalidLengthTypes + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue = &ExternalServers{} + if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + } else { + iNdEx = entryPreIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.ExternalServer[mapkey] = mapvalue + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PerSessionPolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PerSessionPolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SequenceAction", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SequenceAction == nil { + m.SequenceAction = &SequenceAction{} + } + if err := m.SequenceAction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ConnectivityPolicyType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ConnectivityPolicyType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ConnectivityPolicyType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Connectivities", wireType) + } + m.Connectivities = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Connectivities |= Connectivity(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectivityPolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConnectivityPolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connectivity", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Connectivity == nil { + m.Connectivity = &ConnectivityPolicyType{} + } + if err := m.Connectivity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PerSession", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PerSession == nil { + m.PerSession = &PerSessionPolicyType{} + } + if err := m.PerSession.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connectivity", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Connectivity == nil { + m.Connectivity = &ConnectivityPolicyType{} + } + if err := m.Connectivity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PerSession", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PerSession == nil { + m.PerSession = &PerSessionPolicyType{} + } + if err := m.PerSession.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connectivity", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Connectivity == nil { + m.Connectivity = &ConnectivityPolicyType{} + } + if err := m.Connectivity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PerSession", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PerSession == nil { + m.PerSession = &PerSessionPolicyType{} + } + if err := m.PerSession.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connectivity", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Connectivity == nil { + m.Connectivity = &ConnectivityPolicyType{} + } + if err := m.Connectivity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PerSession", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PerSession == nil { + m.PerSession = &PerSessionPolicyType{} + } + if err := m.PerSession.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipTypes(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthTypes + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupTypes + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthTypes + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthTypes = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowTypes = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna/types.vesmsg.go b/pbgo/extschema/schema/ztna/types.vesmsg.go new file mode 100644 index 000000000..88844f7b7 --- /dev/null +++ b/pbgo/extschema/schema/ztna/types.vesmsg.go @@ -0,0 +1,2422 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *AclResourceEntry) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AclResourceEntry) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AclResourceEntry) DeepCopy() *AclResourceEntry { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AclResourceEntry{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AclResourceEntry) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AclResourceEntry) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AclResourceEntryValidator().Validate(ctx, m, opts...) +} + +type ValidateAclResourceEntry struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAclResourceEntry) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AclResourceEntry) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AclResourceEntry got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["entries"]; exists { + + vOpts := append(opts, db.WithValidateField("entries")) + for idx, item := range m.GetEntries() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAclResourceEntryValidator = func() *ValidateAclResourceEntry { + v := &ValidateAclResourceEntry{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["entries"] = EntryValidator().Validate + + return v +}() + +func AclResourceEntryValidator() db.Validator { + return DefaultAclResourceEntryValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ActionType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ActionType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ActionType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetLogOn().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ActionType.log_on") + } + + return nil +} + +func (m *ActionType) DeepCopy() *ActionType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ActionType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ActionType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ActionType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ActionTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateActionType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateActionType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ActionType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ActionType got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetItemType().(type) { + case *ActionType_LogOn: + if fv, exists := v.FldValidators["item_type.log_on"]; exists { + val := m.GetItemType().(*ActionType_LogOn).LogOn + vOpts := append(opts, + db.WithValidateField("item_type"), + db.WithValidateField("log_on"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ActionType_ActiveDirectoryAuth: + if fv, exists := v.FldValidators["item_type.active_directory_auth"]; exists { + val := m.GetItemType().(*ActionType_ActiveDirectoryAuth).ActiveDirectoryAuth + vOpts := append(opts, + db.WithValidateField("item_type"), + db.WithValidateField("active_directory_auth"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ActionType_ActiveDirectoryQuery: + if fv, exists := v.FldValidators["item_type.active_directory_query"]; exists { + val := m.GetItemType().(*ActionType_ActiveDirectoryQuery).ActiveDirectoryQuery + vOpts := append(opts, + db.WithValidateField("item_type"), + db.WithValidateField("active_directory_query"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ActionType_ResourceAssign: + if fv, exists := v.FldValidators["item_type.resource_assign"]; exists { + val := m.GetItemType().(*ActionType_ResourceAssign).ResourceAssign + vOpts := append(opts, + db.WithValidateField("item_type"), + db.WithValidateField("resource_assign"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultActionTypeValidator = func() *ValidateActionType { + v := &ValidateActionType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["item_type.log_on"] = LogonItemTypeValidator().Validate + + return v +}() + +func ActionTypeValidator() db.Validator { + return DefaultActionTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ActiveDirectoryAuth) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ActiveDirectoryAuth) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ActiveDirectoryAuth) DeepCopy() *ActiveDirectoryAuth { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ActiveDirectoryAuth{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ActiveDirectoryAuth) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ActiveDirectoryAuth) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ActiveDirectoryAuthValidator().Validate(ctx, m, opts...) +} + +type ValidateActiveDirectoryAuth struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateActiveDirectoryAuth) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ActiveDirectoryAuth) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ActiveDirectoryAuth got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["active_directory_query"]; exists { + + vOpts := append(opts, db.WithValidateField("active_directory_query")) + for idx, item := range m.GetActiveDirectoryQuery() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["deny_name"]; exists { + + vOpts := append(opts, db.WithValidateField("deny_name")) + if err := fv(ctx, m.GetDenyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["expression"]; exists { + + vOpts := append(opts, db.WithValidateField("expression")) + if err := fv(ctx, m.GetExpression(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["server"]; exists { + + vOpts := append(opts, db.WithValidateField("server")) + if err := fv(ctx, m.GetServer(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultActiveDirectoryAuthValidator = func() *ValidateActiveDirectoryAuth { + v := &ValidateActiveDirectoryAuth{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ActiveDirectoryAuthValidator() db.Validator { + return DefaultActiveDirectoryAuthValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ActiveDirectoryQuery) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ActiveDirectoryQuery) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ActiveDirectoryQuery) DeepCopy() *ActiveDirectoryQuery { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ActiveDirectoryQuery{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ActiveDirectoryQuery) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ActiveDirectoryQuery) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ActiveDirectoryQueryValidator().Validate(ctx, m, opts...) +} + +type ValidateActiveDirectoryQuery struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateActiveDirectoryQuery) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ActiveDirectoryQuery) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ActiveDirectoryQuery got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["deny_name"]; exists { + + vOpts := append(opts, db.WithValidateField("deny_name")) + if err := fv(ctx, m.GetDenyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["filter"]; exists { + + vOpts := append(opts, db.WithValidateField("filter")) + if err := fv(ctx, m.GetFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_assign"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_assign")) + if err := fv(ctx, m.GetResourceAssign(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["server"]; exists { + + vOpts := append(opts, db.WithValidateField("server")) + if err := fv(ctx, m.GetServer(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultActiveDirectoryQueryValidator = func() *ValidateActiveDirectoryQuery { + v := &ValidateActiveDirectoryQuery{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ActiveDirectoryQueryValidator() db.Validator { + return DefaultActiveDirectoryQueryValidator +} + +// augmented methods on protoc/std generated struct + +func (m *AllowResourceAssign) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *AllowResourceAssign) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *AllowResourceAssign) DeepCopy() *AllowResourceAssign { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &AllowResourceAssign{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *AllowResourceAssign) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *AllowResourceAssign) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return AllowResourceAssignValidator().Validate(ctx, m, opts...) +} + +type ValidateAllowResourceAssign struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateAllowResourceAssign) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*AllowResourceAssign) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *AllowResourceAssign got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["allow_name"]; exists { + + vOpts := append(opts, db.WithValidateField("allow_name")) + if err := fv(ctx, m.GetAllowName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["deny_name"]; exists { + + vOpts := append(opts, db.WithValidateField("deny_name")) + if err := fv(ctx, m.GetDenyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["rules_resource_assign"]; exists { + + vOpts := append(opts, db.WithValidateField("rules_resource_assign")) + for idx, item := range m.GetRulesResourceAssign() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["server"]; exists { + + vOpts := append(opts, db.WithValidateField("server")) + if err := fv(ctx, m.GetServer(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultAllowResourceAssignValidator = func() *ValidateAllowResourceAssign { + v := &ValidateAllowResourceAssign{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func AllowResourceAssignValidator() db.Validator { + return DefaultAllowResourceAssignValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ConnectivityPolicyType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ConnectivityPolicyType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ConnectivityPolicyType) DeepCopy() *ConnectivityPolicyType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ConnectivityPolicyType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ConnectivityPolicyType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ConnectivityPolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ConnectivityPolicyTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateConnectivityPolicyType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateConnectivityPolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ConnectivityPolicyType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ConnectivityPolicyType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivities"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivities")) + if err := fv(ctx, m.GetConnectivities(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["connectivity_policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity_policy_name")) + if err := fv(ctx, m.GetConnectivityPolicyName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultConnectivityPolicyTypeValidator = func() *ValidateConnectivityPolicyType { + v := &ValidateConnectivityPolicyType{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ConnectivityPolicyTypeValidator() db.Validator { + return DefaultConnectivityPolicyTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CreateSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *CreateSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetPerSession().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting CreateSpecType.per_session") + } + + return nil +} + +func (m *CreateSpecType) DeepCopy() *CreateSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateCreateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivity"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity")) + if err := fv(ctx, m.GetConnectivity(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["per_session"]; exists { + + vOpts := append(opts, db.WithValidateField("per_session")) + if err := fv(ctx, m.GetPerSession(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { + v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["per_session"] = PerSessionPolicyTypeValidator().Validate + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Custmization) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Custmization) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *Custmization) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetPassword().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting Custmization.password") + } + + return nil +} + +func (m *Custmization) DeepCopy() *Custmization { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Custmization{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Custmization) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Custmization) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CustmizationValidator().Validate(ctx, m, opts...) +} + +type ValidateCustmization struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCustmization) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Custmization) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Custmization got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["password"]; exists { + + vOpts := append(opts, db.WithValidateField("password")) + if err := fv(ctx, m.GetPassword(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["user_name"]; exists { + + vOpts := append(opts, db.WithValidateField("user_name")) + if err := fv(ctx, m.GetUserName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCustmizationValidator = func() *ValidateCustmization { + v := &ValidateCustmization{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["password"] = ves_io_schema.SecretTypeValidator().Validate + + return v +}() + +func CustmizationValidator() db.Validator { + return DefaultCustmizationValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Entry) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Entry) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Entry) DeepCopy() *Entry { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Entry{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Entry) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Entry) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return EntryValidator().Validate(ctx, m, opts...) +} + +type ValidateEntry struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateEntry) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Entry) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Entry got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["action"]; exists { + + vOpts := append(opts, db.WithValidateField("action")) + if err := fv(ctx, m.GetAction(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["destination_end_port"]; exists { + + vOpts := append(opts, db.WithValidateField("destination_end_port")) + if err := fv(ctx, m.GetDestinationEndPort(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["destination_ip"]; exists { + + vOpts := append(opts, db.WithValidateField("destination_ip")) + if err := fv(ctx, m.GetDestinationIp(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["destination_start_port"]; exists { + + vOpts := append(opts, db.WithValidateField("destination_start_port")) + if err := fv(ctx, m.GetDestinationStartPort(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultEntryValidator = func() *ValidateEntry { + v := &ValidateEntry{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["destination_ip"] = ves_io_schema.IpAddressTypeValidator().Validate + + return v +}() + +func EntryValidator() db.Validator { + return DefaultEntryValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ExternalServers) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ExternalServers) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ExternalServers) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetAdminPassword().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ExternalServers.admin_password") + } + + return nil +} + +func (m *ExternalServers) DeepCopy() *ExternalServers { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ExternalServers{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ExternalServers) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ExternalServers) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ExternalServersValidator().Validate(ctx, m, opts...) +} + +type ValidateExternalServers struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateExternalServers) AdminUsernameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for admin_username") + } + + return validatorFn, nil +} + +func (v *ValidateExternalServers) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ExternalServers) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ExternalServers got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["admin_password"]; exists { + + vOpts := append(opts, db.WithValidateField("admin_password")) + if err := fv(ctx, m.GetAdminPassword(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["admin_username"]; exists { + + vOpts := append(opts, db.WithValidateField("admin_username")) + if err := fv(ctx, m.GetAdminUsername(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["domain"]; exists { + + vOpts := append(opts, db.WithValidateField("domain")) + if err := fv(ctx, m.GetDomain(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["server_type"]; exists { + + vOpts := append(opts, db.WithValidateField("server_type")) + if err := fv(ctx, m.GetServerType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultExternalServersValidator = func() *ValidateExternalServers { + v := &ValidateExternalServers{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAdminUsername := v.AdminUsernameValidationRuleHandler + rulesAdminUsername := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + } + vFn, err = vrhAdminUsername(rulesAdminUsername) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ExternalServers.admin_username: %s", err) + panic(errMsg) + } + v.FldValidators["admin_username"] = vFn + + v.FldValidators["admin_password"] = ves_io_schema.SecretTypeValidator().Validate + + return v +}() + +func ExternalServersValidator() db.Validator { + return DefaultExternalServersValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *GetSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetPerSession().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GetSpecType.per_session") + } + + return nil +} + +func (m *GetSpecType) DeepCopy() *GetSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGetSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivity"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity")) + if err := fv(ctx, m.GetConnectivity(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["per_session"]; exists { + + vOpts := append(opts, db.WithValidateField("per_session")) + if err := fv(ctx, m.GetPerSession(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { + v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["per_session"] = PerSessionPolicyTypeValidator().Validate + + return v +}() + +func GetSpecTypeValidator() db.Validator { + return DefaultGetSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *GlobalSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetPerSession().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting GlobalSpecType.per_session") + } + + return nil +} + +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GlobalSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GlobalSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivity"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity")) + if err := fv(ctx, m.GetConnectivity(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["per_session"]; exists { + + vOpts := append(opts, db.WithValidateField("per_session")) + if err := fv(ctx, m.GetPerSession(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["per_session"] = PerSessionPolicyTypeValidator().Validate + + return v +}() + +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *LeasePoolMember) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *LeasePoolMember) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *LeasePoolMember) DeepCopy() *LeasePoolMember { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &LeasePoolMember{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *LeasePoolMember) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *LeasePoolMember) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LeasePoolMemberValidator().Validate(ctx, m, opts...) +} + +type ValidateLeasePoolMember struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateLeasePoolMember) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LeasePoolMember) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *LeasePoolMember got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["end_address"]; exists { + + vOpts := append(opts, db.WithValidateField("end_address")) + if err := fv(ctx, m.GetEndAddress(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["start_address"]; exists { + + vOpts := append(opts, db.WithValidateField("start_address")) + if err := fv(ctx, m.GetStartAddress(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultLeasePoolMemberValidator = func() *ValidateLeasePoolMember { + v := &ValidateLeasePoolMember{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["start_address"] = ves_io_schema.IpAddressTypeValidator().Validate + + v.FldValidators["end_address"] = ves_io_schema.IpAddressTypeValidator().Validate + + return v +}() + +func LeasePoolMemberValidator() db.Validator { + return DefaultLeasePoolMemberValidator +} + +// augmented methods on protoc/std generated struct + +func (m *LogonItemType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *LogonItemType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *LogonItemType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + for idx, e := range m.GetCustomization() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting LogonItemType.customization idx %v", idx) + } + } + + return nil +} + +func (m *LogonItemType) DeepCopy() *LogonItemType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &LogonItemType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *LogonItemType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *LogonItemType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return LogonItemTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateLogonItemType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateLogonItemType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*LogonItemType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *LogonItemType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["active_directory_auth"]; exists { + + vOpts := append(opts, db.WithValidateField("active_directory_auth")) + for idx, item := range m.GetActiveDirectoryAuth() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["customization"]; exists { + + vOpts := append(opts, db.WithValidateField("customization")) + for idx, item := range m.GetCustomization() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultLogonItemTypeValidator = func() *ValidateLogonItemType { + v := &ValidateLogonItemType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["customization"] = CustmizationValidator().Validate + + return v +}() + +func LogonItemTypeValidator() db.Validator { + return DefaultLogonItemTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *PerSessionPolicyType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *PerSessionPolicyType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *PerSessionPolicyType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + for idx, e := range m.GetExternalServer() { + if err := e.Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting PerSessionPolicyType.external_server idx %v", idx) + } + } + + if err := m.GetSequenceAction().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting PerSessionPolicyType.sequence_action") + } + + return nil +} + +func (m *PerSessionPolicyType) DeepCopy() *PerSessionPolicyType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &PerSessionPolicyType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *PerSessionPolicyType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *PerSessionPolicyType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return PerSessionPolicyTypeValidator().Validate(ctx, m, opts...) +} + +type ValidatePerSessionPolicyType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidatePerSessionPolicyType) ResourcesValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemKeyRules := db.GetMapStringKeyRules(rules) + itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) + if err != nil { + return nil, errors.Wrap(err, "Item key ValidationRuleHandler for resources") + } + itemsValidatorFn := func(ctx context.Context, kv map[string]*Resource, opts ...db.ValidateOpt) error { + for key, value := range kv { + if err := itemKeyFn(ctx, key, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + } + if err := ResourceValidator().Validate(ctx, value, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + } + } + return nil + } + mapValFn, err := db.NewMapValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Map ValidationRuleHandler for resources") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.(map[string]*Resource) + if !ok { + return fmt.Errorf("Map validation expected map[ string ]*Resource, got %T", val) + } + if err := mapValFn(ctx, len(elems), opts...); err != nil { + return errors.Wrap(err, "map resources") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items resources") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidatePerSessionPolicyType) LeasePoolMemberValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemKeyRules := db.GetMapStringKeyRules(rules) + itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) + if err != nil { + return nil, errors.Wrap(err, "Item key ValidationRuleHandler for lease_pool_member") + } + itemsValidatorFn := func(ctx context.Context, kv map[string]*LeasePoolMember, opts ...db.ValidateOpt) error { + for key, value := range kv { + if err := itemKeyFn(ctx, key, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + } + if err := LeasePoolMemberValidator().Validate(ctx, value, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + } + } + return nil + } + mapValFn, err := db.NewMapValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Map ValidationRuleHandler for lease_pool_member") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.(map[string]*LeasePoolMember) + if !ok { + return fmt.Errorf("Map validation expected map[ string ]*LeasePoolMember, got %T", val) + } + if err := mapValFn(ctx, len(elems), opts...); err != nil { + return errors.Wrap(err, "map lease_pool_member") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items lease_pool_member") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidatePerSessionPolicyType) ExternalServerValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + itemKeyRules := db.GetMapStringKeyRules(rules) + itemKeyFn, err := db.NewStringValidationRuleHandler(itemKeyRules) + if err != nil { + return nil, errors.Wrap(err, "Item key ValidationRuleHandler for external_server") + } + itemsValidatorFn := func(ctx context.Context, kv map[string]*ExternalServers, opts ...db.ValidateOpt) error { + for key, value := range kv { + if err := itemKeyFn(ctx, key, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("element with key %v", key)) + } + if err := ExternalServersValidator().Validate(ctx, value, opts...); err != nil { + return errors.Wrap(err, fmt.Sprintf("value for element with key %v", key)) + } + } + return nil + } + mapValFn, err := db.NewMapValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "Map ValidationRuleHandler for external_server") + } + + validatorFn := func(ctx context.Context, val interface{}, opts ...db.ValidateOpt) error { + elems, ok := val.(map[string]*ExternalServers) + if !ok { + return fmt.Errorf("Map validation expected map[ string ]*ExternalServers, got %T", val) + } + if err := mapValFn(ctx, len(elems), opts...); err != nil { + return errors.Wrap(err, "map external_server") + } + if err := itemsValidatorFn(ctx, elems, opts...); err != nil { + return errors.Wrap(err, "items external_server") + } + return nil + } + + return validatorFn, nil +} + +func (v *ValidatePerSessionPolicyType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*PerSessionPolicyType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *PerSessionPolicyType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["external_server"]; exists { + vOpts := append(opts, db.WithValidateField("external_server")) + if err := fv(ctx, m.GetExternalServer(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["lease_pool_member"]; exists { + vOpts := append(opts, db.WithValidateField("lease_pool_member")) + if err := fv(ctx, m.GetLeasePoolMember(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["per_session_policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("per_session_policy_name")) + if err := fv(ctx, m.GetPerSessionPolicyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resources"]; exists { + vOpts := append(opts, db.WithValidateField("resources")) + if err := fv(ctx, m.GetResources(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["sequence_action"]; exists { + + vOpts := append(opts, db.WithValidateField("sequence_action")) + if err := fv(ctx, m.GetSequenceAction(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultPerSessionPolicyTypeValidator = func() *ValidatePerSessionPolicyType { + v := &ValidatePerSessionPolicyType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhResources := v.ResourcesValidationRuleHandler + rulesResources := map[string]string{ + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64", + } + vFn, err = vrhResources(rulesResources) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for PerSessionPolicyType.resources: %s", err) + panic(errMsg) + } + v.FldValidators["resources"] = vFn + + vrhLeasePoolMember := v.LeasePoolMemberValidationRuleHandler + rulesLeasePoolMember := map[string]string{ + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64", + } + vFn, err = vrhLeasePoolMember(rulesLeasePoolMember) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for PerSessionPolicyType.lease_pool_member: %s", err) + panic(errMsg) + } + v.FldValidators["lease_pool_member"] = vFn + + vrhExternalServer := v.ExternalServerValidationRuleHandler + rulesExternalServer := map[string]string{ + "ves.io.schema.rules.map.keys.string.max_len": "256", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.max_pairs": "64", + } + vFn, err = vrhExternalServer(rulesExternalServer) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for PerSessionPolicyType.external_server: %s", err) + panic(errMsg) + } + v.FldValidators["external_server"] = vFn + + v.FldValidators["sequence_action"] = SequenceActionValidator().Validate + + return v +}() + +func PerSessionPolicyTypeValidator() db.Validator { + return DefaultPerSessionPolicyTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *ReplaceSpecType) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetPerSession().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting ReplaceSpecType.per_session") + } + + return nil +} + +func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivity"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity")) + if err := fv(ctx, m.GetConnectivity(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["per_session"]; exists { + + vOpts := append(opts, db.WithValidateField("per_session")) + if err := fv(ctx, m.GetPerSession(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { + v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["per_session"] = PerSessionPolicyTypeValidator().Validate + + return v +}() + +func ReplaceSpecTypeValidator() db.Validator { + return DefaultReplaceSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Resource) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Resource) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Resource) DeepCopy() *Resource { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Resource{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Resource) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Resource) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ResourceValidator().Validate(ctx, m, opts...) +} + +type ValidateResource struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateResource) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Resource) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Resource got type %s", t) + } + } + if m == nil { + return nil + } + + switch m.GetResourceType().(type) { + case *Resource_Acl: + if fv, exists := v.FldValidators["resource_type.acl"]; exists { + val := m.GetResourceType().(*Resource_Acl).Acl + vOpts := append(opts, + db.WithValidateField("resource_type"), + db.WithValidateField("acl"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *Resource_Web: + if fv, exists := v.FldValidators["resource_type.web"]; exists { + val := m.GetResourceType().(*Resource_Web).Web + vOpts := append(opts, + db.WithValidateField("resource_type"), + db.WithValidateField("web"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *Resource_Connectivity: + if fv, exists := v.FldValidators["resource_type.connectivity"]; exists { + val := m.GetResourceType().(*Resource_Connectivity).Connectivity + vOpts := append(opts, + db.WithValidateField("resource_type"), + db.WithValidateField("connectivity"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultResourceValidator = func() *ValidateResource { + v := &ValidateResource{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["resource_type.acl"] = AclResourceEntryValidator().Validate + + return v +}() + +func ResourceValidator() db.Validator { + return DefaultResourceValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ResourceAssign) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ResourceAssign) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ResourceAssign) DeepCopy() *ResourceAssign { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ResourceAssign{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ResourceAssign) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ResourceAssign) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ResourceAssignValidator().Validate(ctx, m, opts...) +} + +type ValidateResourceAssign struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateResourceAssign) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ResourceAssign) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ResourceAssign got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["allow"]; exists { + + vOpts := append(opts, db.WithValidateField("allow")) + for idx, item := range m.GetAllow() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultResourceAssignValidator = func() *ValidateResourceAssign { + v := &ValidateResourceAssign{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ResourceAssignValidator() db.Validator { + return DefaultResourceAssignValidator +} + +// augmented methods on protoc/std generated struct + +func (m *Rules) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *Rules) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *Rules) DeepCopy() *Rules { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &Rules{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *Rules) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *Rules) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return RulesValidator().Validate(ctx, m, opts...) +} + +type ValidateRules struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateRules) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*Rules) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *Rules got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["acls"]; exists { + + vOpts := append(opts, db.WithValidateField("acls")) + for idx, item := range m.GetAcls() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["network_access_rule"]; exists { + + vOpts := append(opts, db.WithValidateField("network_access_rule")) + for idx, item := range m.GetNetworkAccessRule() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["web_top_name"]; exists { + + vOpts := append(opts, db.WithValidateField("web_top_name")) + if err := fv(ctx, m.GetWebTopName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultRulesValidator = func() *ValidateRules { + v := &ValidateRules{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func RulesValidator() db.Validator { + return DefaultRulesValidator +} + +// augmented methods on protoc/std generated struct + +func (m *SequenceAction) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SequenceAction) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +// Redact squashes sensitive info in m (in-place) +func (m *SequenceAction) Redact(ctx context.Context) error { + // clear fields with confidential option set (at message or field level) + if m == nil { + return nil + } + + if err := m.GetNextAction().Redact(ctx); err != nil { + return errors.Wrapf(err, "Redacting SequenceAction.next_action") + } + + return nil +} + +func (m *SequenceAction) DeepCopy() *SequenceAction { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SequenceAction{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SequenceAction) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SequenceAction) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SequenceActionValidator().Validate(ctx, m, opts...) +} + +type ValidateSequenceAction struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSequenceAction) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SequenceAction) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SequenceAction got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivity_access_policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity_access_policy_name")) + if err := fv(ctx, m.GetConnectivityAccessPolicyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["next_action"]; exists { + + vOpts := append(opts, db.WithValidateField("next_action")) + if err := fv(ctx, m.GetNextAction(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSequenceActionValidator = func() *ValidateSequenceAction { + v := &ValidateSequenceAction{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["next_action"] = ActionTypeValidator().Validate + + return v +}() + +func SequenceActionValidator() db.Validator { + return DefaultSequenceActionValidator +} + +func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.Connectivity = f.GetConnectivity() + m.PerSession = f.GetPerSession() +} + +func (m *CreateSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *CreateSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.Connectivity = m1.Connectivity + f.PerSession = m1.PerSession +} + +func (m *CreateSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *CreateSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} + +func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.Connectivity = f.GetConnectivity() + m.PerSession = f.GetPerSession() +} + +func (m *GetSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *GetSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.Connectivity = m1.Connectivity + f.PerSession = m1.PerSession +} + +func (m *GetSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *GetSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} + +func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.Connectivity = f.GetConnectivity() + m.PerSession = f.GetPerSession() +} + +func (m *ReplaceSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *ReplaceSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.Connectivity = m1.Connectivity + f.PerSession = m1.PerSession +} + +func (m *ReplaceSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *ReplaceSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} diff --git a/pbgo/extschema/schema/ztna_application/crudapi/api.pb.go b/pbgo/extschema/schema/ztna_application/crudapi/api.pb.go new file mode 100644 index 000000000..c29a93534 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/crudapi/api.pb.go @@ -0,0 +1,5700 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna_application/crudapi/api.proto + +package crudapi + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + ztna_application "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +type ErrorCode int32 + +const ( + EOK ErrorCode = 0 + ENOTFOUND ErrorCode = 1 + EEXISTS ErrorCode = 2 + EUNKNOWN ErrorCode = 3 +) + +var ErrorCode_name = map[int32]string{ + 0: "EOK", + 1: "ENOTFOUND", + 2: "EEXISTS", + 3: "EUNKNOWN", +} + +var ErrorCode_value = map[string]int32{ + "EOK": 0, + "ENOTFOUND": 1, + "EEXISTS": 2, + "EUNKNOWN": 3, +} + +func (ErrorCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{0} +} + +type ObjectCreateReq struct { + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna_application.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateReq) Reset() { *m = ObjectCreateReq{} } +func (*ObjectCreateReq) ProtoMessage() {} +func (*ObjectCreateReq) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{0} +} +func (m *ObjectCreateReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateReq.Merge(m, src) +} +func (m *ObjectCreateReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateReq proto.InternalMessageInfo + +func (m *ObjectCreateReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateReq) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateReq) GetSpec() *ztna_application.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectCreateRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna_application.crudapi.ErrorCode" json:"err,omitempty"` + ObjectUid string `protobuf:"bytes,10001,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna_application.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectCreateRsp) Reset() { *m = ObjectCreateRsp{} } +func (*ObjectCreateRsp) ProtoMessage() {} +func (*ObjectCreateRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{1} +} +func (m *ObjectCreateRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectCreateRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectCreateRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectCreateRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectCreateRsp.Merge(m, src) +} +func (m *ObjectCreateRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectCreateRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectCreateRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectCreateRsp proto.InternalMessageInfo + +func (m *ObjectCreateRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectCreateRsp) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectCreateRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectCreateRsp) GetSpec() *ztna_application.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + ResourceVersion string `protobuf:"bytes,10001,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + Spec *ztna_application.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceReq) Reset() { *m = ObjectReplaceReq{} } +func (*ObjectReplaceReq) ProtoMessage() {} +func (*ObjectReplaceReq) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{2} +} +func (m *ObjectReplaceReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceReq.Merge(m, src) +} +func (m *ObjectReplaceReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceReq proto.InternalMessageInfo + +func (m *ObjectReplaceReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectReplaceReq) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectReplaceReq) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceReq) GetSpec() *ztna_application.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectReplaceRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna_application.crudapi.ErrorCode" json:"err,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna_application.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *ObjectReplaceRsp) Reset() { *m = ObjectReplaceRsp{} } +func (*ObjectReplaceRsp) ProtoMessage() {} +func (*ObjectReplaceRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{3} +} +func (m *ObjectReplaceRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectReplaceRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectReplaceRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectReplaceRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectReplaceRsp.Merge(m, src) +} +func (m *ObjectReplaceRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectReplaceRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectReplaceRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectReplaceRsp proto.InternalMessageInfo + +func (m *ObjectReplaceRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectReplaceRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectReplaceRsp) GetSpec() *ztna_application.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +type ObjectGetReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + AllBackrefs bool `protobuf:"varint,10001,opt,name=all_backrefs,json=allBackrefs,proto3" json:"all_backrefs,omitempty"` + BackrefTypes []string `protobuf:"bytes,10002,rep,name=backref_types,json=backrefTypes,proto3" json:"backref_types,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10003,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` +} + +func (m *ObjectGetReq) Reset() { *m = ObjectGetReq{} } +func (*ObjectGetReq) ProtoMessage() {} +func (*ObjectGetReq) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{4} +} +func (m *ObjectGetReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetReq.Merge(m, src) +} +func (m *ObjectGetReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetReq proto.InternalMessageInfo + +func (m *ObjectGetReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectGetReq) GetAllBackrefs() bool { + if m != nil { + return m.AllBackrefs + } + return false +} + +func (m *ObjectGetReq) GetBackrefTypes() []string { + if m != nil { + return m.BackrefTypes + } + return nil +} + +func (m *ObjectGetReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +type ObjectGetRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna_application.crudapi.ErrorCode" json:"err,omitempty"` + EntBackrefs []*types.Any `protobuf:"bytes,10001,rep,name=ent_backrefs,json=entBackrefs,proto3" json:"ent_backrefs,omitempty"` + ResourceVersion string `protobuf:"bytes,10002,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna_application.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Status []*ztna_application.StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` +} + +func (m *ObjectGetRsp) Reset() { *m = ObjectGetRsp{} } +func (*ObjectGetRsp) ProtoMessage() {} +func (*ObjectGetRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{5} +} +func (m *ObjectGetRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectGetRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectGetRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectGetRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectGetRsp.Merge(m, src) +} +func (m *ObjectGetRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectGetRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectGetRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectGetRsp proto.InternalMessageInfo + +func (m *ObjectGetRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectGetRsp) GetEntBackrefs() []*types.Any { + if m != nil { + return m.EntBackrefs + } + return nil +} + +func (m *ObjectGetRsp) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *ObjectGetRsp) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectGetRsp) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectGetRsp) GetSpec() *ztna_application.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectGetRsp) GetStatus() []*ztna_application.StatusObject { + if m != nil { + return m.Status + } + return nil +} + +type ObjectListReq struct { + // Filters executed on server-side - all types of filters ANDed + // Tenants to scope the listing of objects - if empty all tenants considered + TenantFilter []string `protobuf:"bytes,10000,rep,name=tenant_filter,json=tenantFilter,proto3" json:"tenant_filter,omitempty"` + // Namespaces to scope the listing of objects - if empty all namespaces considered + NamespaceFilter []string `protobuf:"bytes,10001,rep,name=namespace_filter,json=namespaceFilter,proto3" json:"namespace_filter,omitempty"` + // k8s style label selector expression + LabelFilter string `protobuf:"bytes,10002,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // TODO: currently even if one specified implementation will return all fields + ReportFields []string `protobuf:"bytes,10003,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // Get the resource_version associated with the list + ResourceVersion bool `protobuf:"varint,10004,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // in case of ref-by-name whether to report referred's uid + IncludeReferredId bool `protobuf:"varint,10005,opt,name=include_referred_id,json=includeReferredId,proto3" json:"include_referred_id,omitempty"` + // The value for PageStart indicating from very first entry. This will be ignored unless page_limit + // is also defined + PageStart string `protobuf:"bytes,10006,opt,name=page_start,json=pageStart,proto3" json:"page_start,omitempty"` + // The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset, + // the first page will be returned. + PageLimit int32 `protobuf:"varint,10007,opt,name=page_limit,json=pageLimit,proto3" json:"page_limit,omitempty"` +} + +func (m *ObjectListReq) Reset() { *m = ObjectListReq{} } +func (*ObjectListReq) ProtoMessage() {} +func (*ObjectListReq) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{6} +} +func (m *ObjectListReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListReq.Merge(m, src) +} +func (m *ObjectListReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectListReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListReq proto.InternalMessageInfo + +func (m *ObjectListReq) GetTenantFilter() []string { + if m != nil { + return m.TenantFilter + } + return nil +} + +func (m *ObjectListReq) GetNamespaceFilter() []string { + if m != nil { + return m.NamespaceFilter + } + return nil +} + +func (m *ObjectListReq) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ObjectListReq) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ObjectListReq) GetResourceVersion() bool { + if m != nil { + return m.ResourceVersion + } + return false +} + +func (m *ObjectListReq) GetIncludeReferredId() bool { + if m != nil { + return m.IncludeReferredId + } + return false +} + +func (m *ObjectListReq) GetPageStart() string { + if m != nil { + return m.PageStart + } + return "" +} + +func (m *ObjectListReq) GetPageLimit() int32 { + if m != nil { + return m.PageLimit + } + return 0 +} + +type ObjectListRspItem struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` + // If ObjectListReq has any specified report_fields, it will appear in below fields + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + Spec *ztna_application.SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` + Status []*ztna_application.StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` + Tenant string `protobuf:"bytes,10001,opt,name=tenant,proto3" json:"tenant,omitempty"` + Namespace string `protobuf:"bytes,10002,opt,name=namespace,proto3" json:"namespace,omitempty"` + Name string `protobuf:"bytes,10003,opt,name=name,proto3" json:"name,omitempty"` + Labels map[string]string `protobuf:"bytes,10004,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ObjectListRspItem) Reset() { *m = ObjectListRspItem{} } +func (*ObjectListRspItem) ProtoMessage() {} +func (*ObjectListRspItem) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{7} +} +func (m *ObjectListRspItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRspItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRspItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRspItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRspItem.Merge(m, src) +} +func (m *ObjectListRspItem) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRspItem) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRspItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRspItem proto.InternalMessageInfo + +func (m *ObjectListRspItem) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +func (m *ObjectListRspItem) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRspItem) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ObjectListRspItem) GetSpec() *ztna_application.SpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ObjectListRspItem) GetStatus() []*ztna_application.StatusObject { + if m != nil { + return m.Status + } + return nil +} + +func (m *ObjectListRspItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ObjectListRspItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ObjectListRspItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ObjectListRspItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +type ObjectListRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna_application.crudapi.ErrorCode" json:"err,omitempty"` + Uids []string `protobuf:"bytes,10001,rep,name=uids,proto3" json:"uids,omitempty"` + Items []*ObjectListRspItem `protobuf:"bytes,10002,rep,name=items,proto3" json:"items,omitempty"` + Metadata *schema.ListMetaType `protobuf:"bytes,10003,opt,name=metadata,proto3" json:"metadata,omitempty"` + // Will only be set if request included a page_limit and there are more pages beyond the current page + NextPage string `protobuf:"bytes,10004,opt,name=next_page,json=nextPage,proto3" json:"next_page,omitempty"` +} + +func (m *ObjectListRsp) Reset() { *m = ObjectListRsp{} } +func (*ObjectListRsp) ProtoMessage() {} +func (*ObjectListRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{8} +} +func (m *ObjectListRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectListRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectListRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectListRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectListRsp.Merge(m, src) +} +func (m *ObjectListRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectListRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectListRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectListRsp proto.InternalMessageInfo + +func (m *ObjectListRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func (m *ObjectListRsp) GetUids() []string { + if m != nil { + return m.Uids + } + return nil +} + +func (m *ObjectListRsp) GetItems() []*ObjectListRspItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ObjectListRsp) GetMetadata() *schema.ListMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ObjectListRsp) GetNextPage() string { + if m != nil { + return m.NextPage + } + return "" +} + +type ObjectDeleteReq struct { + ObjectUid string `protobuf:"bytes,10000,opt,name=object_uid,json=objectUid,proto3" json:"object_uid,omitempty"` +} + +func (m *ObjectDeleteReq) Reset() { *m = ObjectDeleteReq{} } +func (*ObjectDeleteReq) ProtoMessage() {} +func (*ObjectDeleteReq) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{9} +} +func (m *ObjectDeleteReq) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteReq.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteReq.Merge(m, src) +} +func (m *ObjectDeleteReq) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteReq) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteReq proto.InternalMessageInfo + +func (m *ObjectDeleteReq) GetObjectUid() string { + if m != nil { + return m.ObjectUid + } + return "" +} + +type ObjectDeleteRsp struct { + Err ErrorCode `protobuf:"varint,10000,opt,name=err,proto3,enum=ves.io.schema.ztna_application.crudapi.ErrorCode" json:"err,omitempty"` +} + +func (m *ObjectDeleteRsp) Reset() { *m = ObjectDeleteRsp{} } +func (*ObjectDeleteRsp) ProtoMessage() {} +func (*ObjectDeleteRsp) Descriptor() ([]byte, []int) { + return fileDescriptor_2286404562860eab, []int{10} +} +func (m *ObjectDeleteRsp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ObjectDeleteRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ObjectDeleteRsp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ObjectDeleteRsp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectDeleteRsp.Merge(m, src) +} +func (m *ObjectDeleteRsp) XXX_Size() int { + return m.Size() +} +func (m *ObjectDeleteRsp) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectDeleteRsp.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectDeleteRsp proto.InternalMessageInfo + +func (m *ObjectDeleteRsp) GetErr() ErrorCode { + if m != nil { + return m.Err + } + return EOK +} + +func init() { + proto.RegisterEnum("ves.io.schema.ztna_application.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + golang_proto.RegisterEnum("ves.io.schema.ztna_application.crudapi.ErrorCode", ErrorCode_name, ErrorCode_value) + proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectCreateReq") + golang_proto.RegisterType((*ObjectCreateReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectCreateReq") + proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectCreateRsp") + golang_proto.RegisterType((*ObjectCreateRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectCreateRsp") + proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq") + golang_proto.RegisterType((*ObjectReplaceReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq") + proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectReplaceRsp") + golang_proto.RegisterType((*ObjectReplaceRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectReplaceRsp") + proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectGetReq") + golang_proto.RegisterType((*ObjectGetReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectGetReq") + proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectGetRsp") + golang_proto.RegisterType((*ObjectGetRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectGetRsp") + proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListReq") + golang_proto.RegisterType((*ObjectListReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListReq") + proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListRspItem") + golang_proto.RegisterType((*ObjectListRspItem)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListRspItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListRspItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListRspItem.LabelsEntry") + proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListRsp") + golang_proto.RegisterType((*ObjectListRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectListRsp") + proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectDeleteReq") + golang_proto.RegisterType((*ObjectDeleteReq)(nil), "ves.io.schema.ztna_application.crudapi.ObjectDeleteReq") + proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectDeleteRsp") + golang_proto.RegisterType((*ObjectDeleteRsp)(nil), "ves.io.schema.ztna_application.crudapi.ObjectDeleteRsp") +} + +func init() { + proto.RegisterFile("ves.io/schema/ztna_application/crudapi/api.proto", fileDescriptor_2286404562860eab) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna_application/crudapi/api.proto", fileDescriptor_2286404562860eab) +} + +var fileDescriptor_2286404562860eab = []byte{ + // 1398 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0x4d, 0x6c, 0x13, 0xc7, + 0x17, 0xf7, 0xd8, 0xf9, 0xf2, 0xd8, 0x21, 0x66, 0x40, 0xfa, 0xfb, 0x6f, 0x60, 0x85, 0xb6, 0xb4, + 0x8d, 0x42, 0xd9, 0x85, 0x50, 0x4a, 0x40, 0x2a, 0x12, 0x10, 0x07, 0x45, 0x80, 0x83, 0x36, 0x50, + 0xaa, 0xa8, 0xaa, 0x3b, 0xf6, 0x4e, 0xcc, 0x36, 0xeb, 0xdd, 0x65, 0x66, 0xec, 0xe2, 0xb6, 0x91, + 0x50, 0x91, 0x38, 0x70, 0xe2, 0xab, 0x20, 0xa1, 0x1e, 0xaa, 0x9e, 0x5a, 0xa9, 0xc7, 0x1e, 0x2a, + 0xe5, 0xc2, 0x31, 0xea, 0x09, 0xb5, 0x17, 0x8e, 0xc5, 0xe1, 0xd0, 0x4b, 0x25, 0xa4, 0xde, 0x7a, + 0xaa, 0x76, 0x66, 0xd7, 0xd8, 0x0e, 0xa9, 0x3f, 0x9a, 0x22, 0x55, 0xe2, 0x62, 0xcd, 0xbc, 0x37, + 0xbf, 0x37, 0xf3, 0xde, 0xfb, 0xbd, 0x37, 0xb3, 0x86, 0xfb, 0xab, 0x84, 0x69, 0x96, 0xab, 0xb3, + 0xe2, 0x25, 0x52, 0xc6, 0xfa, 0xa7, 0xdc, 0xc1, 0x79, 0xec, 0x79, 0xb6, 0x55, 0xc4, 0xdc, 0x72, + 0x1d, 0xbd, 0x48, 0x2b, 0x26, 0xf6, 0x2c, 0x1d, 0x7b, 0x96, 0xe6, 0x51, 0x97, 0xbb, 0xe8, 0x0d, + 0x89, 0xd0, 0x24, 0x42, 0x6b, 0x47, 0x68, 0x01, 0x22, 0xb3, 0xaf, 0x64, 0xf1, 0x4b, 0x95, 0x82, + 0x56, 0x74, 0xcb, 0x7a, 0xc9, 0x2d, 0xb9, 0xba, 0x80, 0x17, 0x2a, 0x8b, 0x62, 0x26, 0x26, 0x62, + 0x24, 0xcd, 0x66, 0x76, 0x96, 0x5c, 0xb7, 0x64, 0x13, 0x5d, 0x6c, 0xe6, 0x38, 0x2e, 0x17, 0xd6, + 0x58, 0xa0, 0xfd, 0x7f, 0xa0, 0x6d, 0xd8, 0xc0, 0x4e, 0x2d, 0x50, 0xed, 0x68, 0xf5, 0xc0, 0xf5, + 0x5a, 0x70, 0xad, 0x4a, 0x5e, 0xf3, 0x48, 0xa8, 0x52, 0x5b, 0x55, 0x55, 0xc2, 0x88, 0x53, 0x6d, + 0x83, 0xef, 0xed, 0x10, 0x1d, 0xb7, 0xf0, 0x31, 0x29, 0xf2, 0x60, 0xf1, 0x44, 0x87, 0xc5, 0x4d, + 0x9b, 0xab, 0xdf, 0x47, 0xe1, 0xd8, 0x9c, 0x00, 0x9f, 0xa4, 0x04, 0x73, 0x62, 0x90, 0xcb, 0x68, + 0x06, 0x8e, 0x94, 0x09, 0xc7, 0x26, 0xe6, 0x38, 0x0d, 0x76, 0x83, 0xf1, 0xc4, 0xe4, 0x2e, 0xad, + 0x35, 0xd6, 0x12, 0x71, 0x96, 0x70, 0x7c, 0xbe, 0xe6, 0x91, 0x13, 0x89, 0x07, 0xcb, 0x0d, 0x84, + 0xd1, 0x18, 0xa1, 0x8f, 0xe0, 0x18, 0xab, 0x31, 0x4e, 0xca, 0xf9, 0x86, 0xb9, 0xa8, 0x30, 0xf7, + 0x5a, 0x9b, 0xb9, 0x79, 0xb1, 0xaa, 0xcd, 0x28, 0x7a, 0xb0, 0xdc, 0x0e, 0x37, 0xb6, 0x48, 0xc1, + 0xd9, 0x70, 0x87, 0x2c, 0x1c, 0x60, 0x1e, 0x29, 0xa6, 0x63, 0xc2, 0xec, 0xb8, 0xd6, 0x81, 0x11, + 0xf3, 0x1e, 0x29, 0x0a, 0xdb, 0xc3, 0x0f, 0x96, 0x05, 0xd0, 0x10, 0xbf, 0x47, 0xc7, 0x7f, 0x3a, + 0xf6, 0x7a, 0x07, 0xa8, 0x3c, 0x9c, 0x7a, 0x3b, 0xd6, 0x16, 0x2e, 0xe6, 0xa1, 0x69, 0x18, 0x23, + 0x94, 0xa6, 0x6f, 0xe6, 0x76, 0x83, 0xf1, 0x2d, 0x93, 0x07, 0xb4, 0xee, 0x68, 0xa9, 0x65, 0x29, + 0x75, 0xe9, 0x49, 0xd7, 0x24, 0x86, 0x0f, 0x47, 0x0a, 0x84, 0x32, 0x89, 0xf9, 0x8a, 0x65, 0xa6, + 0x6f, 0xf9, 0xc6, 0xe2, 0x46, 0x5c, 0x8a, 0x2e, 0x58, 0xe6, 0xab, 0xa4, 0x6c, 0x9c, 0x94, 0xfb, + 0x51, 0x98, 0x92, 0x43, 0x83, 0x78, 0x36, 0x2e, 0x0a, 0x12, 0xb7, 0xc6, 0xf3, 0xe6, 0xba, 0x78, + 0x4e, 0xc0, 0x14, 0x25, 0xcc, 0xad, 0xd0, 0x22, 0xc9, 0x57, 0x09, 0x65, 0x96, 0xeb, 0x84, 0x51, + 0x1f, 0x0b, 0x15, 0xef, 0x49, 0xf9, 0xa6, 0xc5, 0xfe, 0xa5, 0x47, 0xe6, 0x8f, 0x75, 0x91, 0xd9, + 0x34, 0xbe, 0xbe, 0xe2, 0xe3, 0x86, 0x51, 0xff, 0x0e, 0xc0, 0xa4, 0x1c, 0x9e, 0x22, 0xbc, 0x1b, + 0x2e, 0xaa, 0x30, 0x89, 0x6d, 0x3b, 0x5f, 0xc0, 0xc5, 0x25, 0x4a, 0x16, 0x99, 0xe4, 0xe1, 0x88, + 0x91, 0xc0, 0xb6, 0x7d, 0x22, 0x90, 0xa1, 0x3d, 0x70, 0x34, 0xd0, 0xe7, 0x45, 0xff, 0x4e, 0xdf, + 0xce, 0xed, 0x8e, 0x8d, 0xc7, 0x8d, 0x64, 0x20, 0xf5, 0x8f, 0xcc, 0x90, 0x0e, 0xb7, 0x59, 0x4e, + 0xd1, 0xae, 0x98, 0x24, 0x4f, 0xc9, 0x22, 0xa1, 0x94, 0x98, 0x79, 0xcb, 0x4c, 0xdf, 0x91, 0x06, + 0xb7, 0x06, 0x3a, 0x23, 0x50, 0xcd, 0x9a, 0xea, 0x37, 0x03, 0xcd, 0x67, 0xdd, 0x34, 0x76, 0x4c, + 0xc1, 0x24, 0x71, 0x78, 0x8b, 0x47, 0xb1, 0xf1, 0xc4, 0xe4, 0x76, 0x4d, 0x5e, 0x9f, 0x5a, 0x78, + 0x7d, 0x6a, 0xc7, 0x9d, 0x9a, 0x91, 0x20, 0x0e, 0x6f, 0xf8, 0xf9, 0xa2, 0xba, 0xbc, 0xfd, 0x2f, + 0xd7, 0xe5, 0x7f, 0x85, 0x83, 0xe8, 0x34, 0x1c, 0x62, 0x1c, 0xf3, 0x0a, 0x4b, 0x7f, 0xfd, 0x15, + 0x10, 0x11, 0x7d, 0xab, 0xa3, 0x29, 0xb1, 0x5e, 0x1e, 0xf9, 0x44, 0xec, 0xe1, 0x32, 0x30, 0x02, + 0x13, 0x3d, 0x10, 0x7a, 0x35, 0x0a, 0x47, 0xe5, 0xf0, 0x8c, 0xc5, 0x04, 0xa3, 0xf7, 0xc0, 0x51, + 0x4e, 0x1c, 0xec, 0xf0, 0xfc, 0xa2, 0x65, 0x73, 0x22, 0xf8, 0x22, 0xd8, 0x28, 0xa5, 0x33, 0x42, + 0xe8, 0xe7, 0xd2, 0xc1, 0x65, 0xc2, 0x3c, 0x5c, 0x24, 0xe1, 0xc2, 0x5b, 0x72, 0xe1, 0x58, 0x43, + 0x11, 0xac, 0x55, 0x61, 0xd2, 0xc6, 0x05, 0x62, 0x87, 0xeb, 0x82, 0x9c, 0x27, 0x84, 0x30, 0x58, + 0xb3, 0x07, 0x8e, 0x52, 0xe2, 0xb9, 0xd4, 0xdf, 0x95, 0xd8, 0x26, 0xf3, 0x79, 0x2d, 0x76, 0x95, + 0xd2, 0x19, 0x21, 0x7c, 0x21, 0x83, 0xee, 0xca, 0x02, 0x58, 0xc7, 0xa0, 0x0d, 0xea, 0xe5, 0xcb, + 0x8d, 0xea, 0xc5, 0x2f, 0x65, 0x0f, 0x97, 0x48, 0x9e, 0x71, 0x4c, 0x79, 0xfa, 0x5e, 0x50, 0xca, + 0xbe, 0x68, 0xde, 0x97, 0x34, 0xf4, 0xb6, 0x55, 0xb6, 0x78, 0xfa, 0xbe, 0xaf, 0x1f, 0x94, 0xfa, + 0x33, 0xbe, 0x44, 0xbd, 0x36, 0x08, 0xb7, 0x36, 0x85, 0x92, 0x79, 0xb3, 0x9c, 0x94, 0x3b, 0x36, + 0x88, 0x57, 0x44, 0xff, 0x07, 0x44, 0x47, 0xff, 0x83, 0x43, 0x92, 0x96, 0xe1, 0x05, 0x1f, 0x4c, + 0xd1, 0x2e, 0x18, 0x6f, 0xd0, 0x30, 0x24, 0xdc, 0x73, 0x09, 0xda, 0x06, 0x07, 0xfc, 0x89, 0xec, + 0x9e, 0x71, 0x43, 0x4c, 0xd0, 0x87, 0x70, 0x48, 0x50, 0x92, 0xf9, 0x9c, 0xf2, 0x0f, 0x96, 0xed, + 0xb6, 0x45, 0xae, 0x4b, 0xbb, 0x76, 0x46, 0x18, 0xca, 0x3a, 0x9c, 0xd6, 0x8c, 0xc0, 0x6a, 0xe6, + 0x08, 0x4c, 0x34, 0x89, 0x51, 0x0a, 0xc6, 0x96, 0x48, 0x4d, 0x24, 0x3d, 0x6e, 0xf8, 0x43, 0xb4, + 0x1d, 0x0e, 0x56, 0xb1, 0x5d, 0x21, 0x22, 0x73, 0x71, 0x43, 0x4e, 0x8e, 0x46, 0xa7, 0x40, 0x0f, + 0x05, 0x7d, 0xb7, 0xb5, 0xa0, 0x37, 0xad, 0xed, 0x6f, 0x83, 0x03, 0x15, 0xcb, 0x64, 0x61, 0x91, + 0x8b, 0x09, 0x3a, 0x07, 0x07, 0x2d, 0x4e, 0xca, 0xc1, 0x8d, 0x95, 0x98, 0x3c, 0xd2, 0x77, 0xc0, + 0x0c, 0x69, 0x08, 0x4d, 0x35, 0x95, 0x83, 0x48, 0x4e, 0x62, 0x72, 0x47, 0x9b, 0x51, 0x1f, 0x15, + 0x12, 0xb7, 0xa9, 0x00, 0x76, 0xc2, 0xb8, 0x43, 0xae, 0xf0, 0xbc, 0x5f, 0x90, 0xb2, 0x29, 0xc4, + 0x8d, 0x11, 0x5f, 0x72, 0x0e, 0x97, 0x88, 0x7a, 0x20, 0x7c, 0xdc, 0x4f, 0x13, 0x9b, 0xf0, 0x6e, + 0x9e, 0x91, 0xea, 0xc5, 0x36, 0xc8, 0x66, 0x85, 0x72, 0xe2, 0x18, 0x8c, 0x37, 0x24, 0x68, 0x18, + 0xc6, 0xb2, 0x73, 0xa7, 0x53, 0x11, 0x34, 0x0a, 0xe3, 0xd9, 0xdc, 0xdc, 0xf9, 0x99, 0xb9, 0x0b, + 0xb9, 0xe9, 0x14, 0x40, 0x09, 0x38, 0x9c, 0xcd, 0xbe, 0x3f, 0x3b, 0x7f, 0x7e, 0x3e, 0x15, 0x45, + 0x49, 0x38, 0x92, 0xbd, 0x90, 0x3b, 0x9d, 0x9b, 0xbb, 0x98, 0x4b, 0xc5, 0x26, 0xaf, 0x27, 0x61, + 0xec, 0xf8, 0xb9, 0x59, 0xf4, 0x3b, 0x80, 0x43, 0xf2, 0x5b, 0x05, 0x1d, 0xee, 0x2d, 0xf0, 0x8d, + 0x0f, 0xc2, 0x4c, 0x7f, 0x40, 0xe6, 0xa9, 0x97, 0xbf, 0xf8, 0xe5, 0xe9, 0x9d, 0xe8, 0x92, 0xfa, + 0xa6, 0xfe, 0xf7, 0x06, 0x74, 0x09, 0x64, 0x47, 0xc1, 0xc4, 0xc2, 0xbb, 0xea, 0x54, 0xa7, 0xd5, + 0x96, 0xc3, 0xa9, 0xeb, 0xf7, 0x09, 0xae, 0x7f, 0x42, 0x2d, 0x4e, 0x9a, 0xe0, 0xe8, 0x46, 0x14, + 0x0e, 0x07, 0x8f, 0x5d, 0x34, 0xd5, 0xdb, 0xb9, 0x9f, 0x7f, 0x3d, 0x64, 0xfa, 0x44, 0x32, 0x4f, + 0xbd, 0x01, 0x84, 0xcf, 0xd7, 0x40, 0xe6, 0x60, 0x77, 0x4e, 0xeb, 0x9f, 0x3d, 0x27, 0xd8, 0xb2, + 0x1f, 0x80, 0xd9, 0xcc, 0x74, 0x9f, 0x01, 0x68, 0x37, 0x85, 0xfe, 0x04, 0x30, 0x76, 0x8a, 0x70, + 0xf4, 0x76, 0x6f, 0xee, 0xc8, 0x67, 0x6b, 0xa6, 0x0f, 0x14, 0xf3, 0xd4, 0xeb, 0x60, 0xf5, 0xc7, + 0xa8, 0x0c, 0xc2, 0xe7, 0xa8, 0x9f, 0x18, 0x2c, 0x64, 0xd1, 0xc9, 0x1e, 0x02, 0x40, 0x09, 0x36, + 0x5f, 0x64, 0x06, 0x3d, 0x05, 0x70, 0xc0, 0x6f, 0x03, 0xe8, 0x50, 0x1f, 0x0d, 0x87, 0x5c, 0xce, + 0x1c, 0xea, 0xab, 0x4f, 0xa9, 0x4e, 0xc3, 0x7d, 0x13, 0x75, 0xcb, 0xfb, 0x85, 0x23, 0xe8, 0x70, + 0x7f, 0x2e, 0x33, 0xf4, 0x03, 0x80, 0xd0, 0xdf, 0x7b, 0x9e, 0x53, 0x82, 0xcb, 0x2f, 0xd9, 0xd9, + 0x77, 0x84, 0xa3, 0xfb, 0x91, 0xd6, 0xa5, 0xa3, 0x3a, 0x13, 0xa7, 0xdc, 0x0f, 0xd0, 0xd5, 0x28, + 0x1c, 0x92, 0x3d, 0xb3, 0xd7, 0xbe, 0xd4, 0x68, 0xce, 0x99, 0xfe, 0x80, 0xcc, 0x53, 0xaf, 0xc9, + 0x04, 0x2d, 0x4f, 0xf4, 0xc5, 0xcf, 0x99, 0x89, 0x4d, 0x29, 0xd0, 0x8c, 0xf9, 0x70, 0x05, 0x80, + 0xd5, 0x15, 0x00, 0x7e, 0x5e, 0x01, 0xdd, 0x5d, 0xdc, 0x8f, 0x57, 0x00, 0xa8, 0xaf, 0x80, 0xbd, + 0xbd, 0x3c, 0x85, 0xee, 0x81, 0x47, 0x4f, 0x94, 0xc8, 0xe3, 0x27, 0x4a, 0xe4, 0xd9, 0x13, 0x05, + 0x5c, 0xad, 0x2b, 0xe0, 0xdb, 0xba, 0x02, 0x56, 0xeb, 0x0a, 0x78, 0x54, 0x57, 0xc0, 0xaf, 0x75, + 0x05, 0xfc, 0x56, 0x57, 0x22, 0xcf, 0xea, 0x0a, 0xb8, 0xb9, 0xa6, 0x44, 0x1e, 0xae, 0x29, 0xe0, + 0xd1, 0x9a, 0x12, 0x79, 0xbc, 0xa6, 0x44, 0x16, 0x3e, 0x28, 0xb9, 0xde, 0x52, 0x49, 0xab, 0xba, + 0xfe, 0xeb, 0x9b, 0x62, 0xad, 0xc2, 0x74, 0x31, 0x58, 0x74, 0x69, 0x79, 0x9f, 0x47, 0xdd, 0xaa, + 0x65, 0x12, 0xba, 0x2f, 0x54, 0xeb, 0x5e, 0xa1, 0xe4, 0xea, 0xe4, 0x0a, 0x0f, 0xfe, 0x77, 0xec, + 0xf0, 0x4f, 0x6e, 0x61, 0x48, 0x7c, 0x04, 0x1e, 0xfc, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xc2, 0x73, + 0x10, 0x7c, 0xfa, 0x15, 0x00, 0x00, +} + +func (x ErrorCode) String() string { + s, ok := ErrorCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ObjectCreateReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateReq) + if !ok { + that2, ok := that.(ObjectCreateReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectCreateRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectCreateRsp) + if !ok { + that2, ok := that.(ObjectCreateRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceReq) + if !ok { + that2, ok := that.(ObjectReplaceReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectReplaceRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectReplaceRsp) + if !ok { + that2, ok := that.(ObjectReplaceRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ObjectGetReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetReq) + if !ok { + that2, ok := that.(ObjectGetReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if this.AllBackrefs != that1.AllBackrefs { + return false + } + if len(this.BackrefTypes) != len(that1.BackrefTypes) { + return false + } + for i := range this.BackrefTypes { + if this.BackrefTypes[i] != that1.BackrefTypes[i] { + return false + } + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + return true +} +func (this *ObjectGetRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectGetRsp) + if !ok { + that2, ok := that.(ObjectGetRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.EntBackrefs) != len(that1.EntBackrefs) { + return false + } + for i := range this.EntBackrefs { + if !this.EntBackrefs[i].Equal(that1.EntBackrefs[i]) { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + return true +} +func (this *ObjectListReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListReq) + if !ok { + that2, ok := that.(ObjectListReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.TenantFilter) != len(that1.TenantFilter) { + return false + } + for i := range this.TenantFilter { + if this.TenantFilter[i] != that1.TenantFilter[i] { + return false + } + } + if len(this.NamespaceFilter) != len(that1.NamespaceFilter) { + return false + } + for i := range this.NamespaceFilter { + if this.NamespaceFilter[i] != that1.NamespaceFilter[i] { + return false + } + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if this.IncludeReferredId != that1.IncludeReferredId { + return false + } + if this.PageStart != that1.PageStart { + return false + } + if this.PageLimit != that1.PageLimit { + return false + } + return true +} +func (this *ObjectListRspItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRspItem) + if !ok { + that2, ok := that.(ObjectListRspItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + return true +} +func (this *ObjectListRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectListRsp) + if !ok { + that2, ok := that.(ObjectListRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + if len(this.Uids) != len(that1.Uids) { + return false + } + for i := range this.Uids { + if this.Uids[i] != that1.Uids[i] { + return false + } + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if this.NextPage != that1.NextPage { + return false + } + return true +} +func (this *ObjectDeleteReq) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteReq) + if !ok { + that2, ok := that.(ObjectDeleteReq) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ObjectUid != that1.ObjectUid { + return false + } + return true +} +func (this *ObjectDeleteRsp) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ObjectDeleteRsp) + if !ok { + that2, ok := that.(ObjectDeleteRsp) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Err != that1.Err { + return false + } + return true +} +func (this *ObjectCreateReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&crudapi.ObjectCreateReq{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectCreateRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectCreateRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectReplaceRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectReplaceRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&crudapi.ObjectGetReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "AllBackrefs: "+fmt.Sprintf("%#v", this.AllBackrefs)+",\n") + s = append(s, "BackrefTypes: "+fmt.Sprintf("%#v", this.BackrefTypes)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectGetRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 11) + s = append(s, "&crudapi.ObjectGetRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + if this.EntBackrefs != nil { + s = append(s, "EntBackrefs: "+fmt.Sprintf("%#v", this.EntBackrefs)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 12) + s = append(s, "&crudapi.ObjectListReq{") + s = append(s, "TenantFilter: "+fmt.Sprintf("%#v", this.TenantFilter)+",\n") + s = append(s, "NamespaceFilter: "+fmt.Sprintf("%#v", this.NamespaceFilter)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "IncludeReferredId: "+fmt.Sprintf("%#v", this.IncludeReferredId)+",\n") + s = append(s, "PageStart: "+fmt.Sprintf("%#v", this.PageStart)+",\n") + s = append(s, "PageLimit: "+fmt.Sprintf("%#v", this.PageLimit)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRspItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 13) + s = append(s, "&crudapi.ObjectListRspItem{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectListRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&crudapi.ObjectListRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "Uids: "+fmt.Sprintf("%#v", this.Uids)+",\n") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + s = append(s, "NextPage: "+fmt.Sprintf("%#v", this.NextPage)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteReq) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteReq{") + s = append(s, "ObjectUid: "+fmt.Sprintf("%#v", this.ObjectUid)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ObjectDeleteRsp) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&crudapi.ObjectDeleteRsp{") + s = append(s, "Err: "+fmt.Sprintf("%#v", this.Err)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringApi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) + Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) + Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) + List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) + ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) + Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + out := new(ObjectCreateRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.crudapi.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + out := new(ObjectReplaceRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.crudapi.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + out := new(ObjectGetRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.crudapi.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + out := new(ObjectListRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.crudapi.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) ListStream(ctx context.Context, in *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + stream, err := c.cc.NewStream(ctx, &_API_serviceDesc.Streams[0], "/ves.io.schema.ztna_application.crudapi.API/ListStream", opts...) + if err != nil { + return nil, err + } + x := &aPIListStreamClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type API_ListStreamClient interface { + Recv() (*ObjectListRsp, error) + grpc.ClientStream +} + +type aPIListStreamClient struct { + grpc.ClientStream +} + +func (x *aPIListStreamClient) Recv() (*ObjectListRsp, error) { + m := new(ObjectListRsp) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + out := new(ObjectDeleteRsp) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.crudapi.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + Create(context.Context, *ObjectCreateReq) (*ObjectCreateRsp, error) + Replace(context.Context, *ObjectReplaceReq) (*ObjectReplaceRsp, error) + Get(context.Context, *ObjectGetReq) (*ObjectGetRsp, error) + List(context.Context, *ObjectListReq) (*ObjectListRsp, error) + ListStream(*ObjectListReq, API_ListStreamServer) error + Delete(context.Context, *ObjectDeleteReq) (*ObjectDeleteRsp, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) ListStream(req *ObjectListReq, srv API_ListStreamServer) error { + return status.Errorf(codes.Unimplemented, "method ListStream not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectCreateReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.crudapi.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*ObjectCreateReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectReplaceReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.crudapi.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ObjectReplaceReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectGetReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.crudapi.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*ObjectGetReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.crudapi.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ObjectListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ObjectListReq) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(APIServer).ListStream(m, &aPIListStreamServer{stream}) +} + +type API_ListStreamServer interface { + Send(*ObjectListRsp) error + grpc.ServerStream +} + +type aPIListStreamServer struct { + grpc.ServerStream +} + +func (x *aPIListStreamServer) Send(m *ObjectListRsp) error { + return x.ServerStream.SendMsg(m) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectDeleteReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.crudapi.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*ObjectDeleteReq)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.ztna_application.crudapi.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "ListStream", + Handler: _API_ListStream_Handler, + ServerStreams: true, + }, + }, + Metadata: "ves.io/schema/ztna_application/crudapi/api.proto", +} + +func (m *ObjectCreateReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectCreateRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectCreateRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectCreateRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectReplaceRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectReplaceRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectReplaceRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x98 + } + if len(m.BackrefTypes) > 0 { + for iNdEx := len(m.BackrefTypes) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.BackrefTypes[iNdEx]) + copy(dAtA[i:], m.BackrefTypes[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.BackrefTypes[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if m.AllBackrefs { + i-- + if m.AllBackrefs { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x88 + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectGetRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectGetRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectGetRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintApi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.EntBackrefs) > 0 { + for iNdEx := len(m.EntBackrefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.EntBackrefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.PageLimit != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.PageLimit)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb8 + } + if len(m.PageStart) > 0 { + i -= len(m.PageStart) + copy(dAtA[i:], m.PageStart) + i = encodeVarintApi(dAtA, i, uint64(len(m.PageStart))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xb2 + } + if m.IncludeReferredId { + i-- + if m.IncludeReferredId { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa8 + } + if m.ResourceVersion { + i-- + if m.ResourceVersion { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa0 + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintApi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.NamespaceFilter) > 0 { + for iNdEx := len(m.NamespaceFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.NamespaceFilter[iNdEx]) + copy(dAtA[i:], m.NamespaceFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.NamespaceFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if len(m.TenantFilter) > 0 { + for iNdEx := len(m.TenantFilter) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.TenantFilter[iNdEx]) + copy(dAtA[i:], m.TenantFilter[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.TenantFilter[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRspItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRspItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRspItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintApi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintApi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintApi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintApi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ObjectListRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectListRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectListRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.NextPage) > 0 { + i -= len(m.NextPage) + copy(dAtA[i:], m.NextPage) + i = encodeVarintApi(dAtA, i, uint64(len(m.NextPage))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0xa2 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x9a + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintApi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x92 + } + } + if len(m.Uids) > 0 { + for iNdEx := len(m.Uids) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Uids[iNdEx]) + copy(dAtA[i:], m.Uids[iNdEx]) + i = encodeVarintApi(dAtA, i, uint64(len(m.Uids[iNdEx]))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x8a + } + } + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteReq) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteReq) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteReq) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ObjectUid) > 0 { + i -= len(m.ObjectUid) + copy(dAtA[i:], m.ObjectUid) + i = encodeVarintApi(dAtA, i, uint64(len(m.ObjectUid))) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x82 + } + return len(dAtA) - i, nil +} + +func (m *ObjectDeleteRsp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ObjectDeleteRsp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ObjectDeleteRsp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Err != 0 { + i = encodeVarintApi(dAtA, i, uint64(m.Err)) + i-- + dAtA[i] = 0x4 + i-- + dAtA[i] = 0xf1 + i-- + dAtA[i] = 0x80 + } + return len(dAtA) - i, nil +} + +func encodeVarintApi(dAtA []byte, offset int, v uint64) int { + offset -= sovApi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ObjectCreateReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectCreateRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectReplaceRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func (m *ObjectGetReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.AllBackrefs { + n += 4 + } + if len(m.BackrefTypes) > 0 { + for _, s := range m.BackrefTypes { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.IncludeReferredId { + n += 4 + } + return n +} + +func (m *ObjectGetRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.EntBackrefs) > 0 { + for _, e := range m.EntBackrefs { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.ResourceVersion) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ObjectListReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.TenantFilter) > 0 { + for _, s := range m.TenantFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.NamespaceFilter) > 0 { + for _, s := range m.NamespaceFilter { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + l = len(m.LabelFilter) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if m.ResourceVersion { + n += 4 + } + if m.IncludeReferredId { + n += 4 + } + l = len(m.PageStart) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if m.PageLimit != 0 { + n += 3 + sovApi(uint64(m.PageLimit)) + } + return n +} + +func (m *ObjectListRspItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Tenant) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Namespace) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 3 + sovApi(uint64(mapEntrySize)) + } + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ObjectListRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + if len(m.Uids) > 0 { + for _, s := range m.Uids { + l = len(s) + n += 3 + l + sovApi(uint64(l)) + } + } + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 3 + l + sovApi(uint64(l)) + } + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 3 + l + sovApi(uint64(l)) + } + l = len(m.NextPage) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteReq) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ObjectUid) + if l > 0 { + n += 3 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ObjectDeleteRsp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Err != 0 { + n += 3 + sovApi(uint64(m.Err)) + } + return n +} + +func sovApi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozApi(x uint64) (n int) { + return sovApi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ObjectCreateReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna_application.SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectCreateRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectCreateRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna_application.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceReq{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna_application.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectReplaceRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectReplaceRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna_application.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectGetReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `AllBackrefs:` + fmt.Sprintf("%v", this.AllBackrefs) + `,`, + `BackrefTypes:` + fmt.Sprintf("%v", this.BackrefTypes) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectGetRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForEntBackrefs := "[]*Any{" + for _, f := range this.EntBackrefs { + repeatedStringForEntBackrefs += strings.Replace(fmt.Sprintf("%v", f), "Any", "types.Any", 1) + "," + } + repeatedStringForEntBackrefs += "}" + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "ztna_application.StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + s := strings.Join([]string{`&ObjectGetRsp{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna_application.SpecType", 1) + `,`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `EntBackrefs:` + repeatedStringForEntBackrefs + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectListReq{`, + `TenantFilter:` + fmt.Sprintf("%v", this.TenantFilter) + `,`, + `NamespaceFilter:` + fmt.Sprintf("%v", this.NamespaceFilter) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `IncludeReferredId:` + fmt.Sprintf("%v", this.IncludeReferredId) + `,`, + `PageStart:` + fmt.Sprintf("%v", this.PageStart) + `,`, + `PageLimit:` + fmt.Sprintf("%v", this.PageLimit) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRspItem) String() string { + if this == nil { + return "nil" + } + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "ztna_application.StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + s := strings.Join([]string{`&ObjectListRspItem{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "SpecType", "ztna_application.SpecType", 1) + `,`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ObjectListRsp) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ObjectListRspItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ObjectListRspItem", "ObjectListRspItem", 1) + "," + } + repeatedStringForItems += "}" + s := strings.Join([]string{`&ObjectListRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `Uids:` + fmt.Sprintf("%v", this.Uids) + `,`, + `Items:` + repeatedStringForItems + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ListMetaType", "schema.ListMetaType", 1) + `,`, + `NextPage:` + fmt.Sprintf("%v", this.NextPage) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteReq) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteReq{`, + `ObjectUid:` + fmt.Sprintf("%v", this.ObjectUid) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectDeleteRsp) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectDeleteRsp{`, + `Err:` + fmt.Sprintf("%v", this.Err) + `,`, + `}`, + }, "") + return s +} +func valueToStringApi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ObjectCreateReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna_application.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectCreateRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectCreateRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectCreateRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna_application.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna_application.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectReplaceRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectReplaceRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectReplaceRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna_application.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllBackrefs", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.AllBackrefs = bool(v != 0) + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackrefTypes", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackrefTypes = append(m.BackrefTypes, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10003: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectGetRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectGetRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectGetRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna_application.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntBackrefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntBackrefs = append(m.EntBackrefs, &types.Any{}) + if err := m.EntBackrefs[len(m.EntBackrefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &ztna_application.StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TenantFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.TenantFilter = append(m.TenantFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NamespaceFilter = append(m.NamespaceFilter, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10004: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.ResourceVersion = bool(v != 0) + case 10005: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeReferredId", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.IncludeReferredId = bool(v != 0) + case 10006: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PageStart", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PageStart = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10007: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field PageLimit", wireType) + } + m.PageLimit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.PageLimit |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRspItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRspItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRspItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ztna_application.SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthApi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &ztna_application.StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectListRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectListRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectListRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 10001: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uids", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uids = append(m.Uids, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10002: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ObjectListRspItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10003: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ListMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10004: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NextPage", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.NextPage = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteReq) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteReq: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteReq: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectUid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectUid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectDeleteRsp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectDeleteRsp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectDeleteRsp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 10000: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Err", wireType) + } + m.Err = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Err |= ErrorCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipApi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowApi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthApi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupApi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthApi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthApi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowApi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupApi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna_application/crudapi/api.pb.gw.go b/pbgo/extschema/schema/ztna_application/crudapi/api.pb.gw.go new file mode 100644 index 000000000..e6ab65dac --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/crudapi/api.pb.gw.go @@ -0,0 +1,1101 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/ztna_application/crudapi/api.proto + +/* +Package crudapi is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package crudapi + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectCreateReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectReplaceReq + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_1 = &utilities.DoubleArray{Encoding: map[string]int{"object_uid": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectGetReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_1 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_1); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_ListStream_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_API_ListStream_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (API_ListStreamClient, runtime.ServerMetadata, error) { + var protoReq ObjectListReq + var metadata runtime.ServerMetadata + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_ListStream_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.ListStream(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_1(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ObjectDeleteReq + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["object_uid"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "object_uid") + } + + protoReq.ObjectUid, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "object_uid", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_1(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_API_Create_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_ListStream_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_ListStream_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_ListStream_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_1, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_1(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_1(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.ztna_application", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Create_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.ztna_application", "introspect", "write", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.ztna_application", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.ztna_application", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.ztna_application", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.ztna_application", "introspect", "read", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"ves.io.schema.ztna_application", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"ves.io.schema.ztna_application", "introspect", "read", "Objects"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_ListStream_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"ves.io.schema.ztna_application", "Objects", "stream"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"ves.io.schema.ztna_application", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"ves.io.schema.ztna_application", "introspect", "write", "Object", "object_uid"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Create_1 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Replace_1 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_Get_1 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_List_1 = runtime.ForwardResponseMessage + + forward_API_ListStream_0 = runtime.ForwardResponseStream + + forward_API_Delete_0 = runtime.ForwardResponseMessage + + forward_API_Delete_1 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/ztna_application/crudapi/api.vesapi.go b/pbgo/extschema/schema/ztna_application/crudapi/api.vesapi.go new file mode 100644 index 000000000..8885ba1e6 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/crudapi/api.vesapi.go @@ -0,0 +1,4210 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + object "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" +) + +var ( + _ = fmt.Sprintf("dummy for fmt import use") +) + +// augment methods on ObjectReq from api.pb.go + +// EntryConverter +func (r *ObjectCreateReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectCreateReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectCreateReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// EntryConverter +func (r *ObjectReplaceReq) FromEntry(e db.Entry) { + r.FromObject(e) +} + +func (r *ObjectReplaceReq) ToEntry(e db.Entry) { + r.ToObject(e) +} + +// db.Redactor +func (r *ObjectReplaceReq) Redact(ctx context.Context) error { + spec := r.GetSpec() + if r, ok := interface{}(spec).(db.Redactor); ok { + return r.Redact(ctx) + } + return nil +} + +// create setters in object from request for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// create setters in response from object for oneof fields + +// CLIENT side + +func NewObjectCreateReq(e db.Entry) (*ObjectCreateReq, error) { + r := &ObjectCreateReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewObjectReplaceReq(e db.Entry) (*ObjectReplaceReq, error) { + r := &ObjectReplaceReq{} + if e == nil { + return r, nil + } + r.FromObject(e) + uid, err := e.Key() + if err != nil { + // See if uid can be got from Metadata.Uid + obj := e.(*object.DBObject) + uid = obj.GetMetadata().GetUid() + + } + r.ObjectUid = uid + return r, nil +} + +func NewObjectGetReq(uid string, opts ...server.CRUDCallOpt) *ObjectGetReq { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + req := &ObjectGetReq{ObjectUid: uid, AllBackrefs: ccOpts.AllBR, BackrefTypes: ccOpts.TypesBR} + req.IncludeReferredId = ccOpts.IncludeReferredID + return req +} + +func newObjectListReqFrom(cco *server.CrudCallOpts) (*ObjectListReq, error) { + r := &ObjectListReq{ + TenantFilter: cco.TenantFilter, + NamespaceFilter: cco.NamespaceFilter, + ReportFields: cco.ReportFields, + IncludeReferredId: cco.IncludeReferredID, + } + switch len(cco.LabelFilter) { + case 0: + case 1: + r.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + if cco.OutResourceVersion != nil { + r.ResourceVersion = true + } + if cco.PageStart != "" { + r.PageStart = cco.PageStart + } + if cco.PageLimit != 0 { + r.PageLimit = cco.PageLimit + } + return r, nil +} + +func NewObjectDeleteReq(uid string) *ObjectDeleteReq { + return &ObjectDeleteReq{ObjectUid: uid} +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Getting from grpcClient") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp == nil { + return nil, errors.ErrOrNil(merr) + } + respDetail := server.GetResponse{} + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + stream, err := c.grpcClient.ListStream(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, errors.Wrap(err, "Listing with grpc client") + } + lc := &crudAPIGrpcListStreamClient{stream} + return lc, nil + +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req := NewObjectDeleteReq(key) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +type crudAPIGrpcListStreamClient struct { + stream API_ListStreamClient +} + +func (lc *crudAPIGrpcListStreamClient) RecvIDs() ([]string, error) { + idSet := []string{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return idSet, err + } + for _, li := range rsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err +} + +func (lc *crudAPIGrpcListStreamClient) RecvItems() ([]server.ListItem, error) { + sliSet := []server.ListItem{} + rsp, err := lc.stream.Recv() + if rsp == nil { + return sliSet, err + } + for _, li := range rsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return nil, fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return nil, fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna_application.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + hReq, err := http.NewRequest(http.MethodPost, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &ObjectCreateRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + o := object.NewDBObject(nil) + rspo.ToObject(o) + return o, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + if e != nil && cco.RequestJSON != "" { + return fmt.Errorf("Both entry and WithRequestJSON() specified") + } + if e == nil && cco.RequestJSON == "" { + return fmt.Errorf("Neither entry nor WithRequestJSON() specified") + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + rReq, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var objUID string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling ReplaceJSONReq") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["uid"].(string); ok { + objUID = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.uid'", jsn) + } + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna_application.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, objUID) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + + rspo := &ObjectReplaceRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + req := NewObjectGetReq(key, opts...) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna_application.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, req.ObjectUid) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &ObjectGetRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + o := object.NewDBObject(nil) + gRsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna_application.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Objects", c.baseURL, t) + + hReq, err := http.NewRequest(http.MethodGet, url, nil) + if err != nil { + return nil, err + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + for _, fVal := range cco.TenantFilter { + q.Add("tenant_filter", fVal) + } + for _, fVal := range cco.NamespaceFilter { + q.Add("namespace_filter", fVal) + } + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + + if cco.IncludeReferredID { + q.Add("include_referred_id", "true") + } + + if cco.OutResourceVersion != nil { + q.Add("resource_version", "true") + } + if cco.PageStart != "" { + q.Add("page_start", cco.PageStart) + } + if cco.PageLimit != 0 { + q.Add("page_limit", fmt.Sprintf("%d", cco.PageLimit)) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ObjectListRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rspo.GetNextPage() + } + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq := NewObjectDeleteReq(key) + + // convert ves.io.examplesvc.objectone.crudapi to ves.io.examplesvc.objectone + sl := strings.Split("ves.io.schema.ztna_application.crudapi", ".") + t := strings.Join(sl[:len(sl)-1], ".") + url := fmt.Sprintf("%s/%s/Object/%s", c.baseURL, t, dReq.ObjectUid) + + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + body, err := io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + + rspo := &ObjectDeleteRsp{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *ObjectCreateReq, opts ...grpc.CallOption) (*ObjectCreateRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.crudapi.API.Create") + return oah.Create(ctx, req) +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ObjectReplaceReq, opts ...grpc.CallOption) (*ObjectReplaceRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.crudapi.API.Replace") + return oah.Replace(ctx, req) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *ObjectGetReq, opts ...grpc.CallOption) (*ObjectGetRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.crudapi.API.Get") + return oah.Get(ctx, req) +} + +func (c *APIInprocClient) List(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (*ObjectListRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.crudapi.API.List") + return oah.List(ctx, req) +} + +func (c *APIInprocClient) ListStream(ctx context.Context, req *ObjectListReq, opts ...grpc.CallOption) (API_ListStreamClient, error) { + return nil, fmt.Errorf("ListStream Not implemented") +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *ObjectDeleteReq, opts ...grpc.CallOption) (*ObjectDeleteRsp, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.crudapi.API") + oah, ok := ah.(*APISrv) + if !ok { + return nil, fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application.crudapi") + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.crudapi.API.Delete") + return oah.Delete(ctx, req) +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewObjectCreateReq(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + + rsp, err := c.cl.Create(ctx, req) + if rsp != nil { + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + req, err := NewObjectReplaceReq(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*ObjectGetRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req := NewObjectGetReq(key, opts...) + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + rsp, err := c.GetRaw(ctx, key, opts...) + if rsp != nil { + o := object.NewDBObject(nil) + rsp.ToObject(o) + return o, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + var merr *multierror.Error + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if err != nil { + merr = multierror.Append(merr, err) + } + if gRsp != nil { + respDetail.Entry = object.NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + respDetail.BackRefs, err = gRsp.GetBackrefs(nef) + if err != nil { + merr = multierror.Append(merr, err) + } + return &respDetail, errors.ErrOrNil(merr) + } + + return nil, errors.ErrOrNil(merr) + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetObjectUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ObjectListRsp, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := newObjectListReqFrom(cco) + if err != nil { + return nil, err + } + rsp, err := c.cl.List(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.GetMetadata().GetResourceVersion() + } + if cco.OutNextPage != nil { + *cco.OutNextPage = rsp.GetNextPage() + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewObjectDeleteReq(key) + rsp, err := c.cl.Delete(ctx, req) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.ztna_application.crudapi.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.ztna_application.crudapi.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *ObjectCreateReq) (*ObjectCreateRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.crudapi.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private create request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna_application.crudapi.API.Create"), zap.Error(err)) + } + } + } + obj := object.NewDBObject(nil) + req.ToObject(obj) + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Create")).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Create with NewObjectCreateRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ObjectReplaceReq) (*ObjectReplaceRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + return nil, fmt.Errorf("Nil spec in Replace Request") + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + return nil, errors.Wrapf(err, "Filling oneof default choice") + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.crudapi.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private replace request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna_application.crudapi.API.Replace"), zap.Error(err)) + } + } + } + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Replace")).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Replace with NewObjectReplaceRsp").Error()) + } + return rsp, nil + +} + +func (s *APISrv) Get(ctx context.Context, req *ObjectGetReq) (*ObjectGetRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.crudapi.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private get request") + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceGetRequest{IsPublic: false, UID: key, AllBackRefs: req.AllBackrefs, BackRefTypes: req.BackrefTypes} + rsrcReq.OmitReferredID = !req.IncludeReferredId + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Get")).Err() + } + rsp, err := NewObjectGetRsp(req, rsrcRsp) + if err != nil { + return nil, status.Error(codes.ResourceExhausted, errors.Wrap(err, "Get with NewObjectGetRsp").Error()) + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ObjectListReq) (*ObjectListRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.crudapi.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + return nil, errors.Wrap(err, "Validating private list request") + } + } + } + var merr error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: false, + GetResourceVersion: req.ResourceVersion, + OmitReferredID: !req.IncludeReferredId, + PageStart: req.PageStart, + PageLimit: req.PageLimit, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "List")) + } + rsp, err := NewObjectListRsp(req, rsrcRsp.Items) + if err != nil { + merr = multierror.Append(merr, err) + } + rsp.Metadata.ResourceVersion = rsrcRsp.ResourceVersion + rsp.NextPage = rsrcRsp.NextPage + return rsp, merr +} + +func (s *APISrv) ListStream(req *ObjectListReq, stream API_ListStreamServer) error { + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + TenantFilter: req.TenantFilter, + NamespaceFilter: req.NamespaceFilter, + LabelFilter: req.LabelFilter, + RspStreamed: true, + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(stream.Context(), rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListStream")) + } + streamSvr := &crudAPIListStreamServer{stream} + for item := range rsrcRsp.ItemsCh { + if err := streamSvr.SendResource(req, item); err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "Stream-Send")) + continue + } + } + return errors.ErrOrNil(merr) +} + +func (s *APISrv) Delete(ctx context.Context, req *ObjectDeleteReq) (*ObjectDeleteRsp, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.crudapi.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + return nil, errors.Wrap(err, "Validating private delete request") + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna_application.crudapi.API.Delete"), zap.Error(err)) + } + } + } + key := req.ToUid() + rsrcReq := &server.ResourceDeleteRequest{Key: key} + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + return nil, server.GRPCStatusFromError(errors.Wrap(err, "Delete")).Err() + } + return &ObjectDeleteRsp{}, nil +} + +// Assert that APISrv implements both the generated gRPC APIServer interface and the +// stdlib CRUDServer interface +var ( + _ APIServer = &APISrv{} +) + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.crudapi.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.crudapi.API", strings.Join(sl[:len(sl)-1], ".")) +} + +// implements both stdlib.server.ListStreamServer and API_ListStreamServer +type crudAPIListStreamServer struct { + stream API_ListStreamServer +} + +func (lc *crudAPIListStreamServer) Context() context.Context { + return lc.stream.Context() +} + +func (lc *crudAPIListStreamServer) SendResource(r *ObjectListReq, item *server.ResourceListResponseItem) error { + lRsp, err := NewObjectListRsp(r, []*server.ResourceListResponseItem{item}) + if err != nil { + return errors.Wrap(err, "SendResource with NewObjectListRsp") + } + if err := lc.Send(lRsp); err != nil { + return errors.Wrap(err, "ListStreamServer.SendResource()") + } + return nil +} + +func (lc *crudAPIListStreamServer) Send(o *ObjectListRsp) error { + if err := lc.stream.Send(o); err != nil { + return errors.Wrap(err, "ListStreamServer.Send()") + } + return nil +} + +// Implement GetReq interface +func (r *ObjectGetReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectGetReq) GetBackrefParam() (bool, []string) { + return r.AllBackrefs, r.BackrefTypes +} + +// Implement DeleteReq interface +func (r *ObjectDeleteReq) ToUid() string { + return r.ObjectUid +} + +func (r *ObjectCreateRsp) Key() string { + return r.ObjectUid +} + +func (r *ObjectGetRsp) GetBackrefs(ef db.NewEntryFunc) ([]db.Entry, error) { + brEnts := []db.Entry{} + bRefs := r.GetEntBackrefs() + for _, br := range bRefs { + // convert schema.ves.io/ves.io.examplesvc.objectone.Object to ves.io.examplesvc.objectone.Object + sl := strings.Split(br.TypeUrl, "/") + ot := sl[len(sl)-1] + ent, err := ef(ot, db.OpWithSerializedBytes(br.Value)) + if err != nil { + return nil, errors.Wrap(err, "NewEntry") + } + brEnts = append(brEnts, ent) + } + + return brEnts, nil +} + +// Implement server.ListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjUid() string { + return l.ObjectUid +} + +// Implement server.SROListItem interface on ObjectListRspItem +func (l *ObjectListRspItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ObjectListRspItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ObjectListRspItem) GetObjName() string { + return l.Name +} + +func (l *ObjectListRspItem) GetObjLabels() map[string]string { + return l.Labels +} + +// NewRsp, NewRspFromJSON +func NewObjectCreateRsp(e db.Entry) (*ObjectCreateRsp, error) { + rspo := &ObjectCreateRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectCreateRsp") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "CreateRsp getting Key()") + } + rspo.ObjectUid = key + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectReplaceRsp(e db.Entry) (*ObjectReplaceRsp, error) { + rspo := &ObjectReplaceRsp{} + switch e.(type) { + case nil: + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("Entry not of type *object.DBObject in NewObjectReplaceRsp") + } + rspo.FromObject(o) + return rspo, nil +} + +func NewObjectGetRsp(r *ObjectGetReq, rsrcRsp *server.ResourceGetResponse) (*ObjectGetRsp, error) { + rspo := &ObjectGetRsp{} + e := rsrcRsp.Entry + brEntries := rsrcRsp.BackRefs + if e == nil { + return rspo, nil + } + o, ok := e.(*object.DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *object.DBObject in NewObjectGetRsp") + } + rspo.ResourceVersion = rsrcRsp.ResourceVersion + rspo.FromObject(o) + // Backref + getBackrefsFunc := func() ([]*google_protobuf.Any, error) { + var merr *multierror.Error + var entBackrefs []*google_protobuf.Any + for _, brEnt := range brEntries { + brSer, err := brEnt.MarshalBytes() + if err != nil { + merr = multierror.Append(merr, err) + continue + } + entBackrefs = append(entBackrefs, &google_protobuf.Any{TypeUrl: "schema.ves.io/" + brEnt.Type(), Value: brSer}) + } + return entBackrefs, errors.ErrOrNil(merr) + } + entBackrefs, err := getBackrefsFunc() + if err != nil { + return nil, err + } + rspo.EntBackrefs = entBackrefs + d, err := o.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetRsp") + } + statusObjs, err := object.FindObjectStatus(context.Background(), d, o.GetObjUid()) + if err != nil { + return nil, errors.Wrap(err, "GetRsp") + } + rspo.Status = statusObjs + return rspo, nil +} + +func NewObjectListRsp(req *ObjectListReq, rsrcRspItems []*server.ResourceListResponseItem) (*ObjectListRsp, error) { + if req == nil { + return nil, fmt.Errorf("Nil ObjectListReq") + } + var errs error + o := &ObjectListRsp{} + o.Metadata = &ves_io_schema.ListMetaType{} + o.Uids = []string{} + o.Items = []*ObjectListRspItem{} + for _, rsrcItem := range rsrcRspItems { + if rsrcItem == nil { + errs = multierror.Append(errs, fmt.Errorf("ResourceListResponseItem is nil")) + continue + } + e := rsrcItem.Entry + dbObj, ok := e.(*object.DBObject) + if !ok { + errs = multierror.Append(errs, fmt.Errorf("Expected %T, got %T: %v", &object.DBObject{}, e, e)) + continue + } + key, err := dbObj.Key() + if err != nil { + errs = multierror.Append(errs, errors.WithMessagef(err, "Key() %v FAILED", dbObj)) + continue + } + + tenant := dbObj.GetSystemMetadata().GetTenant() + namespace := dbObj.GetMetadata().GetNamespace() + name := dbObj.GetMetadata().GetName() + labels := dbObj.GetMetadata().GetLabels() + + // TODO: DEPRECATE setting to o.Uids + o.Uids = append(o.Uids, key) + + item := &ObjectListRspItem{ + ObjectUid: key, + Tenant: tenant, + Namespace: namespace, + Name: name, + Labels: labels, + } + if len(req.ReportFields) > 0 { + item.FromObject(e) + } + o.Items = append(o.Items, item) + } + return o, errs +} + +func NewObjectDeleteRsp(ec ErrorCode) (*ObjectDeleteRsp, error) { + return &ObjectDeleteRsp{Err: ec}, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "ves.io/schema/ztna_application/crudapi/api.proto", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/ves.io.schema.ztna_application/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Get" + }, + "delete": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna_application/Objects": { + "get": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.List" + }, + "post": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna_application/Objects/stream": { + "get": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.ListStream", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "schema": { + "$ref": "#/x-stream-definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-liststream" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.ListStream" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna_application/introspect/read/Object/{object_uid}": { + "get": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectGetRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "all_backrefs", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "backref_types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Get" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna_application/introspect/read/Objects": { + "get": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "tenant_filter", + "description": "Filters executed on server-side - all types of filters ANDed\nTenants to scope the listing of objects - if empty all tenants considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "namespace_filter", + "description": "Namespaces to scope the listing of objects - if empty all namespaces considered.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "label_filter", + "description": "k8s style label selector expression.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "report_fields", + "description": "TODO: currently even if one specified implementation will return all fields.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "resource_version", + "description": "Get the resource_version associated with the list.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "include_referred_id", + "description": "in case of ref-by-name whether to report referred's uid.", + "in": "query", + "required": false, + "type": "boolean", + "format": "boolean" + }, + { + "name": "page_start", + "description": "The value for PageStart indicating from very first entry. This will be ignored unless page_limit\nis also defined.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "page_limit", + "description": "The maximum number of items to return in a single page. If this is greater than 0, and page_start is unset,\nthe first page will be returned.", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.List" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna_application/introspect/write/Object/{object_uid}": { + "delete": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectDeleteRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Delete" + }, + "put": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "object_uid", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectReplaceReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Replace" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + }, + "/ves.io.schema.ztna_application/introspect/write/Objects": { + "post": { + "operationId": "ves.io.schema.ztna_application.crudapi.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/crudapiObjectCreateRsp" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/crudapiObjectCreateReq" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-crudapi-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.crudapi.API.Create" + }, + "x-displayname": "", + "x-ves-object-kind": "ztna_application", + "x-ves-object-type": "ves.io.schema.ztna_application.Object", + "x-ves-proto-service": "ves.io.schema.ztna_application.crudapi.API", + "x-ves-proto-service-type": "AUTO_CRUD" + } + }, + "definitions": { + "crudapiObjectCreateReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectCreateReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/ztna_applicationSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectCreateRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectCreateRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztna_applicationcrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztna_applicationSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectDeleteRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectDeleteRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztna_applicationcrudapiErrorCode" + } + } + }, + "crudapiObjectGetRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectGetRsp", + "properties": { + "ent_backrefs": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "err": { + "$ref": "#/definitions/ztna_applicationcrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztna_applicationSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/ztna_applicationStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "crudapiObjectListRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectListRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztna_applicationcrudapiErrorCode" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/crudapiObjectListRspItem" + } + }, + "metadata": { + "$ref": "#/definitions/schemaListMetaType" + }, + "next_page": { + "type": "string", + "title": "Will only be set if request included a page_limit and there are more pages beyond the current page" + }, + "uids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "crudapiObjectListRspItem": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectListRspItem", + "properties": { + "labels": { + "type": "object" + }, + "metadata": { + "title": "If ObjectListReq has any specified report_fields, it will appear in below fields", + "$ref": "#/definitions/schemaObjectMetaType" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "object_uid": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztna_applicationSpecType" + }, + "status": { + "type": "array", + "items": { + "$ref": "#/definitions/ztna_applicationStatusObject" + } + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + }, + "tenant": { + "type": "string" + } + } + }, + "crudapiObjectReplaceReq": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectReplaceReq", + "properties": { + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "object_uid": { + "type": "string" + }, + "resource_version": { + "type": "string" + }, + "spec": { + "$ref": "#/definitions/ztna_applicationSpecType" + } + } + }, + "crudapiObjectReplaceRsp": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.crudapi.ObjectReplaceRsp", + "properties": { + "err": { + "$ref": "#/definitions/ztna_applicationcrudapiErrorCode" + }, + "metadata": { + "$ref": "#/definitions/schemaObjectMetaType" + }, + "spec": { + "$ref": "#/definitions/ztna_applicationSpecType" + }, + "system_metadata": { + "$ref": "#/definitions/schemaSystemObjectMetaType" + } + } + }, + "ioschemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "runtimeStreamError": { + "type": "object", + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufAny" + } + }, + "grpc_code": { + "type": "integer", + "format": "int32" + }, + "http_code": { + "type": "integer", + "format": "int32" + }, + "http_status": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "schemaConditionType": { + "type": "object", + "description": "Conditions are used in the object status to describe the current state of the\nobject, e.g. Ready, Succeeded, etc.", + "title": "ConditionType", + "x-displayname": "Status Condition", + "x-ves-proto-message": "ves.io.schema.ConditionType", + "properties": { + "hostname": { + "type": "string", + "description": " Hostname of the instance of the site that sent the status", + "title": "hostname", + "x-displayname": "Hostname" + }, + "last_update_time": { + "type": "string", + "description": " Last time the condition was updated", + "title": "last_update_time", + "format": "date-time", + "x-displayname": "Last Updated" + }, + "reason": { + "type": "string", + "description": " x-reason: \"Insufficient memory in data plane\"\n A human readable string explaining the reason for reaching this condition\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaEmpty": { + "type": "object", + "description": "This can be used for messages where no values are needed", + "title": "Empty", + "x-displayname": "Empty", + "x-ves-proto-message": "ves.io.schema.Empty" + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaIpAddressType": { + "type": "object", + "description": "IP Address used to specify an IPv4 or IPv6 address", + "title": "IP Address", + "x-displayname": "IP Address", + "x-ves-displayorder": "3", + "x-ves-oneof-field-ver": "[\"ipv4\",\"ipv6\"]", + "x-ves-proto-message": "ves.io.schema.IpAddressType", + "properties": { + "ipv4": { + "description": "Exclusive with [ipv6]\n IPv4 Address", + "title": "IPv4 Address", + "$ref": "#/definitions/schemaIpv4AddressType", + "x-displayname": "IPv4 Address" + }, + "ipv6": { + "description": "Exclusive with [ipv4]\n IPv6 Address", + "title": "IPv6 ADDRESS", + "$ref": "#/definitions/schemaIpv6AddressType", + "x-displayname": "IPv6 Address" + } + } + }, + "schemaIpv4AddressType": { + "type": "object", + "description": "IPv4 Address in dot-decimal notation", + "title": "IPv4 Address", + "x-displayname": "IPv4 Address", + "x-ves-proto-message": "ves.io.schema.Ipv4AddressType", + "properties": { + "addr": { + "type": "string", + "description": " IPv4 Address in string form with dot-decimal notation\n\nExample: - \"192.168.1.1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IPv4 Address", + "x-displayname": "IPv4 Address", + "x-ves-example": "192.168.1.1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + } + } + }, + "schemaIpv6AddressType": { + "type": "object", + "description": "IPv6 Address specified as hexadecimal numbers separated by ':'", + "title": "IPv6 Address", + "x-displayname": "IPv6 Address", + "x-ves-proto-message": "ves.io.schema.Ipv6AddressType", + "properties": { + "addr": { + "type": "string", + "description": " IPv6 Address in form of string. IPv6 address must be specified as hexadecimal numbers separated by ':'\n The address can be compacted by suppressing zeros\n e.g. '2001:db8:0:0:0:0:2:1' becomes '2001:db8::2:1' or '2001:db8:0:0:0:2:0:0' becomes '2001:db8::2::'\n\nExample: - \"2001:db8:0:0:0:0:2:1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 Address", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001:db8:0:0:0:0:2:1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + } + } + }, + "schemaListMetaType": { + "type": "object", + "description": "ListMetaType is metadata that all lists must have.", + "title": "ListMetaType", + "x-displayname": "List Metadata", + "x-ves-proto-message": "ves.io.schema.ListMetaType" + }, + "schemaObjectMetaType": { + "type": "object", + "description": "ObjectMetaType is metadata(common attributes) of an object that all configuration objects will have.\nThe information in this type can be specified by user during create and replace APIs.", + "title": "ObjectMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. Object create will fail if\n provided by the client and the value exists in the system. Typically generated by the\n server on successful creation of an object and is not allowed to change once populated.\n Shadowed by SystemObjectMeta's uid field.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaStatusMetaType": { + "type": "object", + "description": "StatusMetaType is metadata that all status must have.", + "title": "StatusMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.StatusMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " creation_timestamp is when the status object was created. It is used to find/tie-break\n for latest status object from same origin", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " Class of creator which created this StatusObject. This will be service's DNS FQDN.\n This will be set by the system based on client certificate information.\n\nExample: - \"ver.re1.int.ves.io\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "ver.re1.int.ves.io" + }, + "creator_id": { + "type": "string", + "description": " ID of creator which created this StatusObject. This will be a concrete identifier for service (e.g.\n identifying the environment also). This will be set by the system based on client certificate\n information\n\nExample: - \"ver-instance-1\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "ver-instance-1" + }, + "publish": { + "description": " Decides wether this status object will be propagated to user.", + "title": "publish", + "$ref": "#/definitions/schemaStatusPublishType", + "x-displayname": "Publish" + }, + "status_id": { + "type": "string", + "description": " status_id is a field used by the generator to distinguish (if necessary) between two status\n objects for the same config object from the same site and same service and potentially same\n daemon(creator-id)", + "title": "status_id", + "x-displayname": "Status ID" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for a StatusObject.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Origin of this status exchanged by VTRP.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaStatusPublishType": { + "type": "string", + "description": "StatusPublishType is all possible publish operations on a StatusObject\n\n - STATUS_DO_NOT_PUBLISH: Do Not Publish\n\nDo not propagate this status to user. This could be because status is only informational\n - STATUS_PUBLISH: Publish\n\nPropagate this status up to user as it might be actionable", + "title": "StatusPublishType", + "enum": [ + "STATUS_DO_NOT_PUBLISH", + "STATUS_PUBLISH" + ], + "default": "STATUS_DO_NOT_PUBLISH", + "x-displayname": "Status Publish Type", + "x-ves-proto-enum": "ves.io.schema.StatusPublishType" + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectMetaType": { + "type": "object", + "description": "SystemObjectMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "value" + }, + "creator_cookie": { + "type": "string", + "description": " This can used by the creator of the object for later audit for e.g. by storing the\n version identifying information of the object so at future it can be determined if\n version present at remote end is current or stale.\n\nExample: - \"value\"-", + "title": "creator_cookie", + "x-displayname": "Creator Cookie", + "x-ves-example": "value" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "value" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "namespace": { + "type": "array", + "description": " The namespace this object belongs to. This is populated by the service based on the\n metadata.namespace field when an object is created.\n\nValidation Rules:\n ves.io.schema.rules.repeated.max_items: 1\n", + "title": "namespace", + "maxItems": 1, + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Namespace Reference", + "x-ves-validation-rules": { + "ves.io.schema.rules.repeated.max_items": "1" + } + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "sre_disable": { + "type": "boolean", + "description": " This should be set to true If VES/SRE operator wants to suppress an object from being\n presented to business-logic of a daemon(e.g. due to bad-form/issue-causing Object).\n This is meant only to be used in temporary situations for operational continuity till\n a fix is rolled out in business-logic.\n\nExample: - \"true\"-", + "title": "sre_disable", + "format": "boolean", + "x-displayname": "SRE Disable", + "x-ves-example": "true" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "trace_info": { + "type": "string", + "description": " trace_info holds information(\u003ctrace-id\u003e:\u003cspan-id\u003e:\u003cparent-span-id\u003e) of the request doing\n the object modification. This can be used on the watch side to create subsequent spans.\n This information can be used to co-relate activities across services (modulo state compression)\n for a synchronous API.\n\nExample: - \"value\"-", + "title": "trace_info", + "x-displayname": "Trace Info", + "x-ves-example": "value" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Indicate origin of this object.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + }, + "viewsAdvertiseCustom": { + "type": "object", + "description": "This defines a way to advertise a VIP on specific sites", + "title": "AdvertiseWhere", + "x-displayname": "Advertise Custom", + "x-ves-proto-message": "ves.io.schema.views.AdvertiseCustom", + "properties": { + "advertise_where": { + "type": "array", + "description": " Where should this load balancer be available\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Advertise Where", + "minItems": 1, + "maxItems": 32, + "items": { + "$ref": "#/definitions/viewsWhereType" + }, + "x-displayname": "List of Sites to Advertise", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "viewsAdvertisePublic": { + "type": "object", + "description": "This defines a way to advertise a load balancer on public. If optional public_ip is provided, it will only be advertised on RE sites where that public_ip is available", + "title": "AdvertisePublic", + "x-displayname": "Advertise Public", + "x-ves-proto-message": "ves.io.schema.views.AdvertisePublic", + "properties": { + "public_ip": { + "description": " Dedicated Public IP, which is allocated by F5 Distributed Cloud on request, is used as a VIP.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Public IP", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Public IP", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsSiteNetwork": { + "type": "string", + "description": "This defines network types to be used on site\n\nAll inside and outside networks.\nAll inside and outside networks with internet VIP support.\nAll inside networks.\nAll outside networks.\nAll outside networks with internet VIP support.\nvK8s service network.\n - SITE_NETWORK_IP_FABRIC: VER IP Fabric network for the site\n\nThis Virtual network type is used for exposing virtual host on IP Fabric network on the VER site or\nfor endpoint in IP Fabric network", + "title": "SiteNetwork", + "enum": [ + "SITE_NETWORK_INSIDE_AND_OUTSIDE", + "SITE_NETWORK_INSIDE", + "SITE_NETWORK_OUTSIDE", + "SITE_NETWORK_SERVICE", + "SITE_NETWORK_OUTSIDE_WITH_INTERNET_VIP", + "SITE_NETWORK_INSIDE_AND_OUTSIDE_WITH_INTERNET_VIP", + "SITE_NETWORK_IP_FABRIC" + ], + "default": "SITE_NETWORK_INSIDE_AND_OUTSIDE", + "x-displayname": "Site Network", + "x-ves-proto-enum": "ves.io.schema.views.SiteNetwork" + }, + "viewsWhereCloudEdgeSegment": { + "type": "object", + "description": "This defines a reference to a Segment on a Cloud Edge and an optional ip address where a load balancer could be advertised", + "title": "WhereCloudEdgeSegment", + "x-displayname": "Segment on a Cloud Edge", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.views.WhereCloudEdgeSegment", + "properties": { + "cloud_edge": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Cloud Edge", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the Cloud Edge\n\nExample: - \"8.8.8.8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the Cloud Edge", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the Cloud Edge\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the Cloud Edge", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereSegment": { + "type": "object", + "description": "Parameters to advertise on a given virtual network", + "title": "WhereVirtualNetwork", + "x-displayname": "Virtual Network", + "x-ves-displayorder": "1,2,10", + "x-ves-proto-message": "ves.io.schema.views.WhereSegment", + "properties": { + "ipv4_vip": { + "type": "string", + "description": " Configure IPV4 VIP address\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IPv4 VIP", + "x-displayname": "IPV4 VIP", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6_vip": { + "type": "string", + "description": " Configure IPV6 VIP address\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 VIP", + "x-displayname": "IPV6 VIP", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereSite": { + "type": "object", + "description": "This defines a reference to a CE site along with network type and an optional ip address where a load balancer could be advertised", + "title": "WhereSite", + "x-displayname": "Site", + "x-ves-displayorder": "1,2,3", + "x-ves-proto-message": "ves.io.schema.views.WhereSite", + "properties": { + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the site\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the site", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the site\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the site", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "network": { + "description": " Select network types to be used on site\n By default VIP chosen as ip address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", + "$ref": "#/definitions/viewsSiteNetwork", + "x-displayname": "Network", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "site": { + "description": " Reference to site object\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereSiteSegment": { + "type": "object", + "description": "This defines a reference to a Segment on a Site and an optional ip address where a load balancer could be advertised", + "title": "WhereSiteSegment", + "x-displayname": "Segment on Site", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.views.WhereSiteSegment", + "properties": { + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the site\n\nExample: - \"8.8.8.8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the site", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the site\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the site", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "site": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Site", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereType": { + "type": "object", + "description": "This defines various options where a Loadbalancer could be advertised", + "title": "WhereType", + "x-displayname": "Select Where to Advertise", + "x-ves-displayorder": "4,5", + "x-ves-oneof-field-choice": "[\"cloud_edge_segment\",\"segment\",\"site\",\"site_segment\",\"virtual_network\",\"virtual_site\",\"virtual_site_segment\",\"vk8s_service\"]", + "x-ves-oneof-field-port_choice": "[\"port\",\"use_default_port\"]", + "x-ves-proto-message": "ves.io.schema.views.WhereType", + "properties": { + "cloud_edge_segment": { + "description": "Exclusive with [segment site site_segment virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a segment on a Cloud Edge", + "title": "Segment on Cloud Edge", + "$ref": "#/definitions/viewsWhereCloudEdgeSegment", + "x-displayname": "Segment on Cloud Edge" + }, + "port": { + "type": "integer", + "description": "Exclusive with [use_default_port]\n TCP port to Listen.\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "TCP port to listen", + "format": "int64", + "x-displayname": "TCP Listen Port", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "segment": { + "description": "Exclusive with [cloud_edge_segment site site_segment virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a segment", + "title": "Segment", + "$ref": "#/definitions/viewsWhereSegment", + "x-displayname": "Segment" + }, + "site": { + "description": "Exclusive with [cloud_edge_segment segment site_segment virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a customer site and a given network.", + "title": "Site", + "$ref": "#/definitions/viewsWhereSite", + "x-displayname": "Site" + }, + "site_segment": { + "description": "Exclusive with [cloud_edge_segment segment site virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a segment on a site", + "title": "Segment on Site", + "$ref": "#/definitions/viewsWhereSiteSegment", + "x-displayname": "Segment on Site" + }, + "use_default_port": { + "description": "Exclusive with [port]\n For HTTP, default is 80. For HTTPS/SNI, default is 443.", + "title": "Use Default port", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Use Default TCP Listen Port" + }, + "virtual_network": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_site virtual_site_segment vk8s_service]\n Advertise on a virtual network", + "title": "Virtual Network", + "$ref": "#/definitions/viewsWhereVirtualNetwork", + "x-displayname": "Virtual Network" + }, + "virtual_site": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_network virtual_site_segment vk8s_service]\n Advertise on a customer virtual site and a given network.", + "title": "Virtual Site", + "$ref": "#/definitions/viewsWhereVirtualSite", + "x-displayname": "Virtual Site" + }, + "virtual_site_segment": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_network virtual_site vk8s_service]\n Advertise on a segment on a virtual site", + "title": "Segment on Virtual Site", + "$ref": "#/definitions/viewsWhereVirtualSiteSegment", + "x-displayname": "Segment on Virtual Site" + }, + "vk8s_service": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_network virtual_site virtual_site_segment]\n Advertise on vK8s Service Network on RE.", + "title": "vK8s services network", + "$ref": "#/definitions/viewsWhereVK8SService", + "x-displayname": "vK8s Service Network on RE" + } + } + }, + "viewsWhereVK8SService": { + "type": "object", + "description": "This defines a reference to a RE site or virtual site where a load balancer could be advertised in the vK8s service network", + "title": "WhereVK8SService", + "x-displayname": "vK8s Services on RE", + "x-ves-displayorder": "3", + "x-ves-oneof-field-choice": "[\"site\",\"virtual_site\"]", + "x-ves-proto-message": "ves.io.schema.views.WhereVK8SService", + "properties": { + "site": { + "description": "Exclusive with [virtual_site]\n Reference to site object", + "title": "RE Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "RE Reference" + }, + "virtual_site": { + "description": "Exclusive with [site]\n Reference to virtual site object", + "title": "Virtual Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Virtual Site Reference" + } + } + }, + "viewsWhereVirtualNetwork": { + "type": "object", + "description": "Parameters to advertise on a given virtual network", + "title": "WhereVirtualNetwork", + "x-displayname": "Virtual Network", + "x-ves-displayorder": "1,2,10", + "x-ves-oneof-field-v6_vip_choice": "[\"default_v6_vip\",\"specific_v6_vip\"]", + "x-ves-oneof-field-vip_choice": "[\"default_vip\",\"specific_vip\"]", + "x-ves-proto-message": "ves.io.schema.views.WhereVirtualNetwork", + "properties": { + "default_v6_vip": { + "description": "Exclusive with [specific_v6_vip]\n Use the default VIP, system allocated or configured in the virtual network", + "title": "Default V6 VIP for virtual Network", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default V6 VIP" + }, + "default_vip": { + "description": "Exclusive with [specific_vip]\n Use the default VIP, system allocated or configured in the virtual network", + "title": "Default V4 VIP for Virtual Network", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Default V4 VIP" + }, + "specific_v6_vip": { + "type": "string", + "description": "Exclusive with [default_v6_vip]\n Use given IPV6 address as VIP on virtual Network\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "Specific V6 VIP", + "x-displayname": "Specific V6 VIP", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "specific_vip": { + "type": "string", + "description": "Exclusive with [default_vip]\n Use given IPV4 address as VIP on virtual Network\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "Specific VIP", + "x-displayname": "Specific V4 VIP", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "virtual_network": { + "description": " Select network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Network", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereVirtualSite": { + "type": "object", + "description": "This defines a reference to a customer site virtual site along with network type where a load balancer could be advertised", + "title": "WhereVirtualSite", + "x-displayname": "Virtual Site", + "x-ves-displayorder": "1,2", + "x-ves-proto-message": "ves.io.schema.views.WhereVirtualSite", + "properties": { + "network": { + "description": " Select network types to be used on site.\n IP address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", + "$ref": "#/definitions/viewsSiteNetwork", + "x-displayname": "Network", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "virtual_site": { + "description": " Reference to virtual site object\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Virtual Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Virtual Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereVirtualSiteSegment": { + "type": "object", + "description": "This defines a reference to a customer site virtual site along with network type where a load balancer could be advertised", + "title": "WhereVirtualSiteSegment", + "x-displayname": "Virtual Site", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.views.WhereVirtualSiteSegment", + "properties": { + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the site\n\nExample: - \"8.8.8.8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the site", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the site\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the site", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "virtual_site": { + "description": " Reference to virtual site object\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Virtual Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Virtual Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "ztna_applicationGlobalSpecType": { + "type": "object", + "title": "GlobalSpecType", + "x-displayname": "Global Specification", + "x-ves-proto-message": "ves.io.schema.ztna_application.GlobalSpecType", + "properties": { + "domain_name": { + "type": "string", + "description": " ztna_application's Domain name\n\nExample: - \"my.example.com\"-", + "title": "Domain name", + "x-displayname": "Domain name", + "x-ves-example": "my.example.com" + }, + "msg": { + "description": " Denotes the service IP address and port", + "title": "Service details", + "$ref": "#/definitions/ztna_applicationServiceDetails", + "x-displayname": "Service details" + }, + "policies": { + "description": " Denotes the ZTNA policies", + "title": "ZTNA policies", + "$ref": "#/definitions/ztna_applicationZTNApolicies", + "x-displayname": "ZTNA policies" + }, + "proxy_advertisement": { + "description": " Proxy Advertisement choice", + "title": "Proxy Advertisement", + "$ref": "#/definitions/ztna_applicationProxyAdvertisementType", + "x-displayname": "Proxy Advertisement" + }, + "transport_type": { + "description": " DNS Proxy supports TCP and UDP transport\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Transport Type", + "$ref": "#/definitions/ztna_applicationTransportType", + "x-displayname": "Transport Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "view_internal": { + "description": " Reference to view internal object", + "title": "view_internal", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "View Internal" + } + } + }, + "ztna_applicationProxyAdvertisementType": { + "type": "object", + "description": "Proxy Advertisement Type", + "title": "Proxy Advertisement Type", + "x-displayname": "Proxy Advertisement Type", + "x-ves-oneof-field-advertise_choice": "[\"advertise_custom\",\"advertise_on_public\",\"advertise_on_public_default_vip\",\"do_not_advertise\"]", + "x-ves-proto-message": "ves.io.schema.ztna_application.ProxyAdvertisementType", + "properties": { + "advertise_custom": { + "description": "Exclusive with [advertise_on_public advertise_on_public_default_vip do_not_advertise]\n Advertise this load balancer on specific sites", + "title": "Advertise Custom", + "$ref": "#/definitions/viewsAdvertiseCustom", + "x-displayname": "Custom" + }, + "advertise_on_public": { + "description": "Exclusive with [advertise_custom advertise_on_public_default_vip do_not_advertise]\n Advertise this proxy on public network", + "title": "Advertise On Public", + "$ref": "#/definitions/viewsAdvertisePublic", + "x-displayname": "Internet (Specified VIP)" + }, + "advertise_on_public_default_vip": { + "description": "Exclusive with [advertise_custom advertise_on_public do_not_advertise]\n Advertise this proxy on public network with default VIP\n Advertise this load balancer on public network with default VIP", + "title": "Advertise On Public Default VIP", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Internet" + }, + "do_not_advertise": { + "description": "Exclusive with [advertise_custom advertise_on_public advertise_on_public_default_vip]\n Do not advertise this proxy", + "title": "Do Not Advertise this proxy", + "$ref": "#/definitions/schemaEmpty", + "x-displayname": "Do Not Advertise" + } + } + }, + "ztna_applicationServiceDetails": { + "type": "object", + "description": "Object represents a service IP in the system.\nThis message is part of the ZTNA application schema.", + "title": "Service Details", + "x-displayname": "Service Details", + "x-ves-proto-message": "ves.io.schema.ztna_application.ServiceDetails", + "properties": { + "ip": { + "description": " Used to set the Service IP", + "title": "Service IP", + "$ref": "#/definitions/schemaIpAddressType", + "x-displayname": "Service IP" + }, + "port": { + "type": "integer", + "description": " Matches port", + "title": "Port", + "format": "int32", + "x-displayname": "Port" + } + } + }, + "ztna_applicationSpecType": { + "type": "object", + "description": "Shape of the User specification\nSpecification for User object", + "title": "Specification for User object", + "x-displayname": "Specification", + "x-ves-proto-message": "ves.io.schema.ztna_application.SpecType", + "properties": { + "gc_spec": { + "title": "gc_spec", + "$ref": "#/definitions/ztna_applicationGlobalSpecType", + "x-displayname": "GC Spec" + } + } + }, + "ztna_applicationStatusObject": { + "type": "object", + "description": "Most recently observed status of object\nDisplays status of an object", + "title": "Status for User object", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.ztna_application.StatusObject", + "properties": { + "conditions": { + "type": "array", + "description": " Conditions", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" + }, + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " Object reference", + "title": "object_refs", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Config Object" + } + } + }, + "ztna_applicationTransportType": { + "type": "string", + "description": "Transport Type\n\n - UDP: UDP\n\n - TCP: TCP\n\n - BothTCPAndUDP: Both TCP and UDP\n", + "title": "Transport Type", + "enum": [ + "UDP", + "TCP", + "BothTCPAndUDP" + ], + "default": "UDP", + "x-displayname": "Transport Type", + "x-ves-proto-enum": "ves.io.schema.ztna_application.TransportType" + }, + "ztna_applicationZTNApolicies": { + "type": "object", + "description": "Object represents a policy in the system.\nThis message is part of the ZTNA application schema.", + "title": "ZTNA policies", + "x-displayname": "ZTNA policies", + "x-ves-proto-message": "ves.io.schema.ztna_application.ZTNApolicies", + "properties": { + "connectivity_policy_name": { + "type": "string", + "description": " Used to set the Connectivity policy name\n\nExample: - \"connectivity_demo\"-", + "title": "Connectivity policy name", + "x-displayname": "Connectivity policy name ", + "x-ves-example": "connectivity_demo" + }, + "message_policy_name": { + "type": "string", + "description": " Used to set the Message policy name \n\nExample: - \"msg_demo\"-", + "title": "Message policy name", + "x-displayname": "Message policy name ", + "x-ves-example": "msg_demo" + }, + "session_policy_name": { + "type": "string", + "description": " Used to set the session policy name\n\nExample: - \"ara_p1\"-", + "title": "session policy name", + "x-displayname": "session policy name", + "x-ves-example": "ara_p1" + } + } + }, + "ztna_applicationcrudapiErrorCode": { + "type": "string", + "enum": [ + "EOK", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN" + ], + "default": "EOK", + "x-displayname": "", + "x-ves-proto-enum": "ves.io.schema.ztna_application.crudapi.ErrorCode" + } + }, + "x-displayname": "", + "x-stream-definitions": { + "crudapiObjectListRsp": { + "properties": { + "error": { + "$ref": "#/definitions/runtimeStreamError" + }, + "result": { + "$ref": "#/definitions/crudapiObjectListRsp" + } + }, + "title": "Stream result of crudapiObjectListRsp", + "type": "object" + } + }, + "x-ves-proto-file": "ves.io/schema/ztna_application/crudapi/api.proto" +}` diff --git a/pbgo/extschema/schema/ztna_application/crudapi/api.vesmsg.go b/pbgo/extschema/schema/ztna_application/crudapi/api.vesmsg.go new file mode 100644 index 000000000..a6ee6e4d7 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/crudapi/api.vesmsg.go @@ -0,0 +1,1924 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_ztna_application "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateReq) DeepCopy() *ObjectCreateReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateReqValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateReq) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateReq) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateReq) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateReqValidator = func() *ValidateObjectCreateReq { + v := &ValidateObjectCreateReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna_application.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateReqValidator() db.Validator { + return DefaultObjectCreateReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectCreateRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectCreateRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectCreateRsp) DeepCopy() *ObjectCreateRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectCreateRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectCreateRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectCreateRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectCreateRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectCreateRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateRsp) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ObjectCreateRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectCreateRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectCreateRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectCreateRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectCreateRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectCreateRspValidator = func() *ValidateObjectCreateRsp { + v := &ValidateObjectCreateRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna_application.SpecTypeValidator().Validate + + return v +}() + +func ObjectCreateRspValidator() db.Validator { + return DefaultObjectCreateRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteReq) DeepCopy() *ObjectDeleteReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteReqValidator = func() *ValidateObjectDeleteReq { + v := &ValidateObjectDeleteReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteReqValidator() db.Validator { + return DefaultObjectDeleteReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectDeleteRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectDeleteRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectDeleteRsp) DeepCopy() *ObjectDeleteRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectDeleteRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectDeleteRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectDeleteRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectDeleteRspValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectDeleteRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectDeleteRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectDeleteRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectDeleteRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectDeleteRspValidator = func() *ValidateObjectDeleteRsp { + v := &ValidateObjectDeleteRsp{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectDeleteRspValidator() db.Validator { + return DefaultObjectDeleteRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetReq) DeepCopy() *ObjectGetReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectGetReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["all_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("all_backrefs")) + if err := fv(ctx, m.GetAllBackrefs(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["backref_types"]; exists { + + vOpts := append(opts, db.WithValidateField("backref_types")) + for idx, item := range m.GetBackrefTypes() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetReqValidator = func() *ValidateObjectGetReq { + v := &ValidateObjectGetReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectGetReqValidator() db.Validator { + return DefaultObjectGetReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectGetRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectGetRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectGetRsp) DeepCopy() *ObjectGetRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectGetRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectGetRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectGetRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectGetRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectGetRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectGetRsp) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ObjectGetRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectGetRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectGetRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectGetRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectGetRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ent_backrefs"]; exists { + + vOpts := append(opts, db.WithValidateField("ent_backrefs")) + for idx, item := range m.GetEntBackrefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectGetRspValidator = func() *ValidateObjectGetRsp { + v := &ValidateObjectGetRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna_application.SpecTypeValidator().Validate + + v.FldValidators["status"] = ves_io_schema_ztna_application.StatusObjectValidator().Validate + + return v +}() + +func ObjectGetRspValidator() db.Validator { + return DefaultObjectGetRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListReq) DeepCopy() *ObjectListReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListReqValidator().Validate(ctx, m, opts...) +} + +type ValidateObjectListReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["include_referred_id"]; exists { + + vOpts := append(opts, db.WithValidateField("include_referred_id")) + if err := fv(ctx, m.GetIncludeReferredId(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace_filter")) + for idx, item := range m.GetNamespaceFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["page_limit"]; exists { + + vOpts := append(opts, db.WithValidateField("page_limit")) + if err := fv(ctx, m.GetPageLimit(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["page_start"]; exists { + + vOpts := append(opts, db.WithValidateField("page_start")) + if err := fv(ctx, m.GetPageStart(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant_filter")) + for idx, item := range m.GetTenantFilter() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListReqValidator = func() *ValidateObjectListReq { + v := &ValidateObjectListReq{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ObjectListReqValidator() db.Validator { + return DefaultObjectListReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRsp) DeepCopy() *ObjectListRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRsp) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateObjectListRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["next_page"]; exists { + + vOpts := append(opts, db.WithValidateField("next_page")) + if err := fv(ctx, m.GetNextPage(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uids"]; exists { + + vOpts := append(opts, db.WithValidateField("uids")) + for idx, item := range m.GetUids() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspValidator = func() *ValidateObjectListRsp { + v := &ValidateObjectListRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ObjectListRspItemValidator().Validate + + return v +}() + +func ObjectListRspValidator() db.Validator { + return DefaultObjectListRspValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectListRspItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectListRspItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectListRspItem) DeepCopy() *ObjectListRspItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectListRspItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectListRspItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectListRspItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectListRspItemValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectListRspItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRspItem) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ObjectListRspItem) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectListRspItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectListRspItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectListRspItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectListRspItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectListRspItemValidator = func() *ValidateObjectListRspItem { + v := &ValidateObjectListRspItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna_application.SpecTypeValidator().Validate + + v.FldValidators["status"] = ves_io_schema_ztna_application.StatusObjectValidator().Validate + + return v +}() + +func ObjectListRspItemValidator() db.Validator { + return DefaultObjectListRspItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceReq) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceReq) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceReq) DeepCopy() *ObjectReplaceReq { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceReq{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceReq) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceReq) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceReqValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectReplaceReq) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSpecDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ObjectReplaceReq) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectReplaceReq struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceReq) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceReq) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceReq got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_uid"]; exists { + + vOpts := append(opts, db.WithValidateField("object_uid")) + if err := fv(ctx, m.GetObjectUid(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceReqValidator = func() *ValidateObjectReplaceReq { + v := &ValidateObjectReplaceReq{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna_application.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceReqValidator() db.Validator { + return DefaultObjectReplaceReqValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ObjectReplaceRsp) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ObjectReplaceRsp) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ObjectReplaceRsp) DeepCopy() *ObjectReplaceRsp { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ObjectReplaceRsp{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ObjectReplaceRsp) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ObjectReplaceRsp) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectReplaceRspValidator().Validate(ctx, m, opts...) +} + +func (m *ObjectReplaceRsp) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ObjectReplaceRsp) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *ObjectReplaceRsp) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if m.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := m.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +type ValidateObjectReplaceRsp struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObjectReplaceRsp) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ObjectReplaceRsp) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ObjectReplaceRsp got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["err"]; exists { + + vOpts := append(opts, db.WithValidateField("err")) + if err := fv(ctx, m.GetErr(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectReplaceRspValidator = func() *ValidateObjectReplaceRsp { + v := &ValidateObjectReplaceRsp{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = ves_io_schema_ztna_application.SpecTypeValidator().Validate + + return v +}() + +func ObjectReplaceRspValidator() db.Validator { + return DefaultObjectReplaceRspValidator +} + +func (m *ObjectCreateReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna_application.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna_application.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna_application.DBObject) + _ = f + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectCreateRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna_application.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna_application.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectCreateRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectCreateRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectCreateRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna_application.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectCreateRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectCreateRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectGetRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna_application.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna_application.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectGetRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectGetRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectGetRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna_application.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectGetRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectGetRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectListRspItem) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna_application.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna_application.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() + + m.SystemMetadata = f.GetSystemMetadata() + +} + +func (m *ObjectListRspItem) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectListRspItem) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectListRspItem) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna_application.DBObject) + _ = f + + f.Metadata = m1.Metadata + + f.Spec = m1.Spec + + f.SystemMetadata = m1.SystemMetadata + +} + +func (m *ObjectListRspItem) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectListRspItem) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceReq) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna_application.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna_application.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + + m.Spec = f.GetSpec() +} + +func (m *ObjectReplaceReq) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceReq) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceReq) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna_application.DBObject) + _ = f + f.Metadata = m1.Metadata + + f.Spec = m1.Spec +} + +func (m *ObjectReplaceReq) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceReq) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ObjectReplaceRsp) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*ves_io_schema_ztna_application.DBObject) + if withDeepCopy { + f = e.DeepCopy().(*ves_io_schema_ztna_application.DBObject) + } + _ = f + + m.Metadata = f.GetMetadata() + m.Spec = f.GetSpec() + m.SystemMetadata = f.GetSystemMetadata() +} + +func (m *ObjectReplaceRsp) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ObjectReplaceRsp) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ObjectReplaceRsp) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*ves_io_schema_ztna_application.DBObject) + _ = f + + f.Metadata = m1.Metadata + f.Spec = m1.Spec + f.SystemMetadata = m1.SystemMetadata +} + +func (m *ObjectReplaceRsp) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ObjectReplaceRsp) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/ztna_application/crudapi/pkg.vespkg.go b/pbgo/extschema/schema/ztna_application/crudapi/pkg.vespkg.go new file mode 100644 index 000000000..2f71551f4 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/crudapi/pkg.vespkg.go @@ -0,0 +1,81 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package crudapi + +import ( + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ztna_application.crudapi.ObjectCreateReq"] = ObjectCreateReqValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectCreateRsp"] = ObjectCreateRspValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectDeleteReq"] = ObjectDeleteReqValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectDeleteRsp"] = ObjectDeleteRspValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectGetReq"] = ObjectGetReqValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectGetRsp"] = ObjectGetRspValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectListReq"] = ObjectListReqValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectListRsp"] = ObjectListRspValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectListRspItem"] = ObjectListRspItemValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectReplaceReq"] = ObjectReplaceReqValidator() + vr["ves.io.schema.ztna_application.crudapi.ObjectReplaceRsp"] = ObjectReplaceRspValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + csr = mdr.PvtCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.ztna_application.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.ztna_application.crudapi.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.ztna_application.crudapi.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ztna_application/object.pb.go b/pbgo/extschema/schema/ztna_application/object.pb.go new file mode 100644 index 000000000..6fcfd6d26 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/object.pb.go @@ -0,0 +1,1200 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna_application/object.proto + +package ztna_application + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// User +// +// x-displayName: "Object" +// Object represents a user in the system. +// This message is part of the ZTNA application schema. +type Object struct { + // metadata + // + // x-displayName: "Metadata" + // Standard object's metadata + Metadata *schema.ObjectMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // System generated object's metadata + SystemMetadata *schema.SystemObjectMetaType `protobuf:"bytes,2,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // Specification of the desired behavior of the ztna_application + Spec *SpecType `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *Object) Reset() { *m = Object{} } +func (*Object) ProtoMessage() {} +func (*Object) Descriptor() ([]byte, []int) { + return fileDescriptor_b34b5a83fd4f8d64, []int{0} +} +func (m *Object) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Object) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *Object) XXX_Merge(src proto.Message) { + xxx_messageInfo_Object.Merge(m, src) +} +func (m *Object) XXX_Size() int { + return m.Size() +} +func (m *Object) XXX_DiscardUnknown() { + xxx_messageInfo_Object.DiscardUnknown(m) +} + +var xxx_messageInfo_Object proto.InternalMessageInfo + +func (m *Object) GetMetadata() *schema.ObjectMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *Object) GetSystemMetadata() *schema.SystemObjectMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *Object) GetSpec() *SpecType { + if m != nil { + return m.Spec + } + return nil +} + +// Specification for User object +// +// x-displayName: "Specification" +// Shape of the User specification +// Specification for User object +type SpecType struct { + // gc_spec + // + // x-displayName: "GC Spec" + GcSpec *GlobalSpecType `protobuf:"bytes,2,opt,name=gc_spec,json=gcSpec,proto3" json:"gc_spec,omitempty"` +} + +func (m *SpecType) Reset() { *m = SpecType{} } +func (*SpecType) ProtoMessage() {} +func (*SpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_b34b5a83fd4f8d64, []int{1} +} +func (m *SpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *SpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_SpecType.Merge(m, src) +} +func (m *SpecType) XXX_Size() int { + return m.Size() +} +func (m *SpecType) XXX_DiscardUnknown() { + xxx_messageInfo_SpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_SpecType proto.InternalMessageInfo + +func (m *SpecType) GetGcSpec() *GlobalSpecType { + if m != nil { + return m.GcSpec + } + return nil +} + +// Status for User object +// +// x-displayName: "Status" +// Most recently observed status of object +// Displays status of an object +type StatusObject struct { + // metadata + // + // x-displayName: "Metadata" + // Standard status's metadata + Metadata *schema.StatusMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // object_refs + // + // x-displayName: "Config Object" + // Object reference + ObjectRefs []*schema.ObjectRefType `protobuf:"bytes,2,rep,name=object_refs,json=objectRefs,proto3" json:"object_refs,omitempty"` + // conditions + // + // x-displayName: "Conditions" + // Conditions + Conditions []*schema.ConditionType `protobuf:"bytes,3,rep,name=conditions,proto3" json:"conditions,omitempty"` +} + +func (m *StatusObject) Reset() { *m = StatusObject{} } +func (*StatusObject) ProtoMessage() {} +func (*StatusObject) Descriptor() ([]byte, []int) { + return fileDescriptor_b34b5a83fd4f8d64, []int{2} +} +func (m *StatusObject) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *StatusObject) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *StatusObject) XXX_Merge(src proto.Message) { + xxx_messageInfo_StatusObject.Merge(m, src) +} +func (m *StatusObject) XXX_Size() int { + return m.Size() +} +func (m *StatusObject) XXX_DiscardUnknown() { + xxx_messageInfo_StatusObject.DiscardUnknown(m) +} + +var xxx_messageInfo_StatusObject proto.InternalMessageInfo + +func (m *StatusObject) GetMetadata() *schema.StatusMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *StatusObject) GetObjectRefs() []*schema.ObjectRefType { + if m != nil { + return m.ObjectRefs + } + return nil +} + +func (m *StatusObject) GetConditions() []*schema.ConditionType { + if m != nil { + return m.Conditions + } + return nil +} + +func init() { + proto.RegisterType((*Object)(nil), "ves.io.schema.ztna_application.Object") + golang_proto.RegisterType((*Object)(nil), "ves.io.schema.ztna_application.Object") + proto.RegisterType((*SpecType)(nil), "ves.io.schema.ztna_application.SpecType") + golang_proto.RegisterType((*SpecType)(nil), "ves.io.schema.ztna_application.SpecType") + proto.RegisterType((*StatusObject)(nil), "ves.io.schema.ztna_application.StatusObject") + golang_proto.RegisterType((*StatusObject)(nil), "ves.io.schema.ztna_application.StatusObject") +} + +func init() { + proto.RegisterFile("ves.io/schema/ztna_application/object.proto", fileDescriptor_b34b5a83fd4f8d64) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna_application/object.proto", fileDescriptor_b34b5a83fd4f8d64) +} + +var fileDescriptor_b34b5a83fd4f8d64 = []byte{ + // 507 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0x4f, 0x6b, 0x13, 0x41, + 0x18, 0xc6, 0x77, 0x12, 0x89, 0x65, 0x52, 0x6a, 0x48, 0x11, 0xd6, 0xaa, 0x63, 0x89, 0x97, 0xa0, + 0x64, 0x16, 0xea, 0xc9, 0x52, 0x3c, 0xd4, 0x43, 0x2f, 0x16, 0x21, 0xe9, 0xc9, 0x4b, 0x98, 0x9d, + 0xbc, 0xd9, 0xae, 0x66, 0x77, 0x86, 0x99, 0xd9, 0xc5, 0x08, 0x82, 0x1f, 0x41, 0xfc, 0x14, 0xe2, + 0xa7, 0xb0, 0x9e, 0xc4, 0x53, 0xf0, 0x94, 0xa3, 0xd9, 0x5c, 0x3c, 0xe6, 0x23, 0x48, 0x66, 0xbb, + 0xa1, 0x59, 0xa2, 0xf5, 0xf6, 0x0e, 0xef, 0xf3, 0xfc, 0xde, 0x3f, 0xf3, 0xe2, 0xc7, 0x29, 0x68, + 0x1a, 0x0a, 0x4f, 0xf3, 0x73, 0x88, 0x98, 0xf7, 0xce, 0xc4, 0xac, 0xcf, 0xa4, 0x1c, 0x85, 0x9c, + 0x99, 0x50, 0xc4, 0x9e, 0xf0, 0x5f, 0x03, 0x37, 0x54, 0x2a, 0x61, 0x44, 0x93, 0xe4, 0x62, 0x9a, + 0x8b, 0x69, 0x59, 0xbc, 0xd7, 0x09, 0x42, 0x73, 0x9e, 0xf8, 0x94, 0x8b, 0xc8, 0x0b, 0x44, 0x20, + 0x3c, 0x6b, 0xf3, 0x93, 0xa1, 0x7d, 0xd9, 0x87, 0x8d, 0x72, 0xdc, 0xde, 0xdd, 0xf5, 0xda, 0x42, + 0x2e, 0x21, 0xfa, 0x32, 0x79, 0x67, 0x3d, 0x69, 0xc6, 0x12, 0x8a, 0x54, 0x6b, 0x3d, 0x95, 0x82, + 0x86, 0x38, 0x2d, 0xd9, 0x1f, 0x5d, 0x33, 0xd7, 0x15, 0x5e, 0x6b, 0x81, 0x70, 0xed, 0xa5, 0x9d, + 0xb3, 0xf9, 0x14, 0x6f, 0x45, 0x60, 0xd8, 0x80, 0x19, 0xe6, 0xa2, 0x7d, 0xd4, 0xae, 0x1f, 0xdc, + 0xa7, 0xeb, 0x43, 0xe7, 0xc2, 0x53, 0x30, 0xec, 0x6c, 0x2c, 0xa1, 0xbb, 0x92, 0x37, 0x5f, 0xe0, + 0x5b, 0x7a, 0xac, 0x0d, 0x44, 0xfd, 0x15, 0xa1, 0x62, 0x09, 0x0f, 0x4b, 0x84, 0x9e, 0x55, 0x95, + 0x38, 0x3b, 0xb9, 0xf7, 0xb4, 0xa0, 0x1d, 0xe1, 0x1b, 0x5a, 0x02, 0x77, 0xab, 0x16, 0xd1, 0xa6, + 0xff, 0xde, 0x3c, 0xed, 0x49, 0xe0, 0x96, 0x63, 0x5d, 0x87, 0x0f, 0xbe, 0x5d, 0xb8, 0x95, 0x06, + 0xfa, 0x71, 0xe1, 0xde, 0x4e, 0x41, 0x77, 0x42, 0xd1, 0x09, 0xe3, 0xa1, 0x62, 0xda, 0xa8, 0x84, + 0x9b, 0x44, 0x41, 0xab, 0x87, 0xb7, 0x0a, 0x4b, 0xf3, 0x04, 0xdf, 0x0c, 0x78, 0xdf, 0x56, 0xcb, + 0x1b, 0xa6, 0xd7, 0x55, 0x3b, 0x19, 0x09, 0x9f, 0x8d, 0x56, 0x35, 0x6b, 0x01, 0x5f, 0xc6, 0xcb, + 0x3d, 0x6e, 0xf7, 0x0c, 0x33, 0x89, 0xfe, 0xef, 0x6d, 0xe6, 0xf2, 0x0d, 0xdb, 0xec, 0xe2, 0x7a, + 0x7e, 0x7a, 0x7d, 0x05, 0x43, 0xed, 0x56, 0xf6, 0xab, 0xed, 0xfa, 0xc1, 0xbd, 0x8d, 0x7f, 0xd1, + 0x85, 0xe1, 0xd2, 0x7c, 0xbc, 0xfb, 0xe5, 0x7d, 0xa3, 0xdc, 0x6a, 0x17, 0x8b, 0x42, 0xa3, 0x9b, + 0x47, 0x18, 0x73, 0x11, 0x0f, 0x42, 0x7b, 0x27, 0x6e, 0x75, 0x23, 0xf2, 0x79, 0x21, 0xb0, 0xfd, + 0x5c, 0xd1, 0x1f, 0xee, 0xfe, 0x7c, 0xd6, 0xc0, 0x3b, 0x78, 0xbb, 0x68, 0x91, 0x26, 0xe1, 0xe0, + 0xf8, 0x13, 0x9a, 0xcc, 0x88, 0x33, 0x9d, 0x11, 0x67, 0x31, 0x23, 0xe8, 0x43, 0x46, 0xd0, 0xe7, + 0x8c, 0xa0, 0xef, 0x19, 0x41, 0x93, 0x8c, 0xa0, 0x69, 0x46, 0xd0, 0xaf, 0x8c, 0xa0, 0xdf, 0x19, + 0x71, 0x16, 0x19, 0x41, 0x1f, 0xe7, 0xc4, 0xf9, 0x3a, 0x27, 0x68, 0x32, 0x27, 0xce, 0x74, 0x4e, + 0x9c, 0x57, 0x67, 0x81, 0x90, 0x6f, 0x02, 0x9a, 0x8a, 0x91, 0x01, 0xa5, 0x18, 0x4d, 0xb4, 0x67, + 0x83, 0xa1, 0x50, 0x51, 0x47, 0x2a, 0x91, 0x86, 0x03, 0x50, 0x9d, 0x22, 0xed, 0x49, 0x3f, 0x10, + 0x1e, 0xbc, 0x35, 0x97, 0x47, 0xfd, 0x97, 0xdb, 0xf6, 0x6b, 0xf6, 0xac, 0x9f, 0xfc, 0x09, 0x00, + 0x00, 0xff, 0xff, 0xe9, 0x0e, 0xc0, 0xea, 0xdc, 0x03, 0x00, 0x00, +} + +func (this *Object) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Object) + if !ok { + that2, ok := that.(Object) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *SpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*SpecType) + if !ok { + that2, ok := that.(SpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.GcSpec.Equal(that1.GcSpec) { + return false + } + return true +} +func (this *StatusObject) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*StatusObject) + if !ok { + that2, ok := that.(StatusObject) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if len(this.ObjectRefs) != len(that1.ObjectRefs) { + return false + } + for i := range this.ObjectRefs { + if !this.ObjectRefs[i].Equal(that1.ObjectRefs[i]) { + return false + } + } + if len(this.Conditions) != len(that1.Conditions) { + return false + } + for i := range this.Conditions { + if !this.Conditions[i].Equal(that1.Conditions[i]) { + return false + } + } + return true +} +func (this *Object) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.Object{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *SpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 5) + s = append(s, "&ztna_application.SpecType{") + if this.GcSpec != nil { + s = append(s, "GcSpec: "+fmt.Sprintf("%#v", this.GcSpec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *StatusObject) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.StatusObject{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.ObjectRefs != nil { + s = append(s, "ObjectRefs: "+fmt.Sprintf("%#v", this.ObjectRefs)+",\n") + } + if this.Conditions != nil { + s = append(s, "Conditions: "+fmt.Sprintf("%#v", this.Conditions)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringObject(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *Object) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Object) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Object) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *SpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *SpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.GcSpec != nil { + { + size, err := m.GcSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *StatusObject) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StatusObject) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *StatusObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Conditions) > 0 { + for iNdEx := len(m.Conditions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Conditions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + } + if len(m.ObjectRefs) > 0 { + for iNdEx := len(m.ObjectRefs) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ObjectRefs[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintObject(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintObject(dAtA []byte, offset int, v uint64) int { + offset -= sovObject(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Object) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *SpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GcSpec != nil { + l = m.GcSpec.Size() + n += 1 + l + sovObject(uint64(l)) + } + return n +} + +func (m *StatusObject) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovObject(uint64(l)) + } + if len(m.ObjectRefs) > 0 { + for _, e := range m.ObjectRefs { + l = e.Size() + n += 1 + l + sovObject(uint64(l)) + } + } + if len(m.Conditions) > 0 { + for _, e := range m.Conditions { + l = e.Size() + n += 1 + l + sovObject(uint64(l)) + } + } + return n +} + +func sovObject(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozObject(x uint64) (n int) { + return sovObject(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *Object) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Object{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectMetaType", "schema.ObjectMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectMetaType", "schema.SystemObjectMetaType", 1) + `,`, + `Spec:` + strings.Replace(this.Spec.String(), "SpecType", "SpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SpecType{`, + `GcSpec:` + strings.Replace(fmt.Sprintf("%v", this.GcSpec), "GlobalSpecType", "GlobalSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *StatusObject) String() string { + if this == nil { + return "nil" + } + repeatedStringForObjectRefs := "[]*ObjectRefType{" + for _, f := range this.ObjectRefs { + repeatedStringForObjectRefs += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForObjectRefs += "}" + repeatedStringForConditions := "[]*ConditionType{" + for _, f := range this.Conditions { + repeatedStringForConditions += strings.Replace(fmt.Sprintf("%v", f), "ConditionType", "schema.ConditionType", 1) + "," + } + repeatedStringForConditions += "}" + s := strings.Join([]string{`&StatusObject{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "StatusMetaType", "schema.StatusMetaType", 1) + `,`, + `ObjectRefs:` + repeatedStringForObjectRefs + `,`, + `Conditions:` + repeatedStringForConditions + `,`, + `}`, + }, "") + return s +} +func valueToStringObject(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *Object) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Object: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Object: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &SpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GcSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GcSpec == nil { + m.GcSpec = &GlobalSpecType{} + } + if err := m.GcSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StatusObject) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StatusObject: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StatusObject: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.StatusMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectRefs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ObjectRefs = append(m.ObjectRefs, &schema.ObjectRefType{}) + if err := m.ObjectRefs[len(m.ObjectRefs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Conditions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowObject + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthObject + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthObject + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Conditions = append(m.Conditions, &schema.ConditionType{}) + if err := m.Conditions[len(m.Conditions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipObject(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthObject + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipObject(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowObject + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthObject + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupObject + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthObject + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthObject = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowObject = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupObject = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna_application/object.vesmsg.go b/pbgo/extschema/schema/ztna_application/object.vesmsg.go new file mode 100644 index 000000000..764e7ccc3 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/object.vesmsg.go @@ -0,0 +1,130 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna_application + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *SpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *SpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *SpecType) DeepCopy() *SpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &SpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *SpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *SpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return SpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *SpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetGcSpecDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *SpecType) GetGcSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetGcSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetGcSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetGcSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "gc_spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*SpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *SpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["gc_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("gc_spec")) + if err := fv(ctx, m.GetGcSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultSpecTypeValidator = func() *ValidateSpecType { + v := &ValidateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["gc_spec"] = GlobalSpecTypeValidator().Validate + + return v +}() + +func SpecTypeValidator() db.Validator { + return DefaultSpecTypeValidator +} diff --git a/pbgo/extschema/schema/ztna_application/object.vesobj.go b/pbgo/extschema/schema/ztna_application/object.vesobj.go new file mode 100644 index 000000000..e16d25461 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/object.vesobj.go @@ -0,0 +1,1312 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna_application + +import ( + "context" + "fmt" + "math/rand" + "strings" + "time" + + google_protobuf "github.com/gogo/protobuf/types" + multierror "github.com/hashicorp/go-multierror" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/store" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + + "github.com/google/uuid" + "gopkg.volterra.us/stdlib/db/sro" +) + +const ( + ObjectDefTblName = "ves.io.schema.ztna_application.Object.default" + ObjectType = "ves.io.schema.ztna_application.Object" + + StatusObjectDefTblName = "ves.io.schema.ztna_application.StatusObject.default" + StatusObjectType = "ves.io.schema.ztna_application.StatusObject" +) + +// augmented methods on protoc/std generated struct +func (e *Object) Type() string { + return "ves.io.schema.ztna_application.Object" +} + +func (e *Object) ToEntry() db.Entry { + return NewDBObject(e, db.OpWithNoCopy()) +} + +func LocateObject(ctx context.Context, locator db.EntryLocator, uid, tenant, namespace, name string, opts ...db.FindEntryOpt) (*DBObject, error) { + timestamp, err := google_protobuf.TimestampProto(time.Now()) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if uid != "" { + obj, exist, err := FindObject(ctx, locator, uid, opts...) + if err != nil { + return nil, errors.Wrapf(err, "%s: LocateObject", uid) + } + if exist && obj != nil { + obj.SystemMetadata.ModificationTimestamp = timestamp + return obj, nil + } + } else { + uid = uuid.New().String() + } + + sysMD := &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: tenant, + CreatorClass: locator.GetCreatorClass(), + CreatorId: locator.GetCreatorID(), + CreationTimestamp: timestamp, + ModificationTimestamp: timestamp, + } + obj := NewDBObject(nil) + obj.SetObjUid(uid) + obj.SetObjName(name) + obj.SetObjNamespace(namespace) + obj.SetObjSystemMetadata(sysMD) + obj.Spec = &SpecType{} + return obj, nil +} + +func FindObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, ObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBObject, error) { + var ( + oList []*DBObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, ObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", ObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *Object) DeepCopy() *Object { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &Object{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *Object) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *Object) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +func (e *Object) GetTraceInfo() string { + sysMD := e.GetSystemMetadata() + if sysMD == nil { + return "" + } + return sysMD.GetTraceInfo() +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBObject struct { + // Anonymous embed of standard protobuf generated struct + *Object + + tbl db.Table +} + +// GetObjectIndexers returns the associated store.Indexers for Object +func GetObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBObject) Key(opts ...db.KeyOpt) (string, error) { + ko := db.NewKeyOpts(opts...) + if ko.Public { + md := e.GetMetadata() + if md == nil { + return "", fmt.Errorf("Metadata is nil") + } + return fmt.Sprintf("%s/%s", md.GetNamespace(), md.GetName()), nil + } else { + if e.GetSystemMetadata() == nil { + return "", fmt.Errorf("SystemMetadata is nil") + } + return e.GetSystemMetadata().GetUid(), nil + } +} + +func (e *DBObject) Type() string { + return "ves.io.schema.ztna_application.Object" +} + +func (e *DBObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBObject(e.Object) + n.tbl = e.tbl + return n +} + +func (e *DBObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBObject) Sample(r *rand.Rand) (db.Entry, error) { + uid := uuid.New().String() + o := &Object{ + Metadata: &ves_io_schema.ObjectMetaType{ + Name: uuid.New().String(), + Namespace: uuid.New().String(), + Uid: uid, + }, + SystemMetadata: &ves_io_schema.SystemObjectMetaType{ + Uid: uid, + Tenant: uuid.New().String(), + }, + Spec: &SpecType{}, + } + + return &DBObject{o, e.tbl}, nil +} + +func (e *DBObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ObjectValidator().Validate(ctx, e.Object, opts...) +} + +func (e *DBObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + var drInfos []db.DRefInfo + if fdrInfos, err := e.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + for i := range fdrInfos { + dri := &fdrInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.ztna_application.Object." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + drInfos = append(drInfos, fdrInfos...) + } + if fdrInfos, err := e.GetSystemMetadataDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSystemMetadataDRefInfo() FAILED") + } else { + for i := range fdrInfos { + dri := &fdrInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.ztna_application.Object." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +func (e *DBObject) ToStore() store.Entry { + return e.Object +} + +func (e *DBObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBObject) GetTable() db.Table { + return e.tbl +} + +func NewDBObject(o *Object, opts ...db.OpOption) *DBObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBObject{Object: &Object{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBObject{Object: obj} +} + +func NewEntryObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBObject(nil, opts...) + case *Object: + return NewDBObject(v, opts...) + } + return nil +} + +// GetDRefInfo for the field's type +func (e *DBObject) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if e.GetSpec() == nil { + return nil, nil + } + + drInfos, err := e.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (e *DBObject) GetSystemMetadataDRefInfo() ([]db.DRefInfo, error) { + if e.GetSystemMetadata() == nil { + return nil, nil + } + + drInfos, err := e.GetSystemMetadata().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSystemMetadata().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "system_metadata." + dri.DRField + } + return drInfos, err + +} + +// Implement sro.SRO interface +func (o *DBObject) GetObjMetadata() sro.ObjectMetadata { + if o.GetMetadata() == nil { + return nil + } + return o.GetMetadata() +} + +func (o *DBObject) SetObjMetadata(in sro.ObjectMetadata) error { + if in == nil { + o.Metadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.ObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjMetadata expected *ObjectMetaType, got %T", in) + } + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSystemMetadata() sro.SystemMetadata { + if o.GetSystemMetadata() == nil { + return nil + } + return o.GetSystemMetadata() +} + +func (o *DBObject) SetObjSystemMetadata(in sro.SystemMetadata) error { + if in == nil { + o.SystemMetadata = nil + return nil + } + + m, ok := in.(*ves_io_schema.SystemObjectMetaType) + if !ok { + return fmt.Errorf("Error: SetObjSystemMetadata expected *SystemObjectMetaType, got %T", in) + } + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjSpec() sro.Spec { + if o.GetSpec() == nil { + return nil + } + return o.GetSpec() +} + +func (o *DBObject) SetObjSpec(in sro.Spec) error { + if in == nil { + o.Spec = nil + return nil + } + + m, ok := in.(*SpecType) + if !ok { + return fmt.Errorf("Error: SetObjSpec expected *SpecType, got %T", in) + } + o.Spec = m + return nil +} + +func FindObjectStatus(ctx context.Context, d db.Interface, objUid string) ([]*StatusObject, error) { + statusDBEntries, err := d.GetEntryBackrefs(ctx, objUid, ObjectType, db.WithBackrefTypes([]string{"ves.io.schema.ztna_application.StatusObject"})) + if err != nil { + return nil, err + } + var merr *multierror.Error + var statusObjs []*StatusObject + for _, statusDBEntry := range statusDBEntries { + statusEntry := statusDBEntry.ToStore() + statusObj, ok := statusEntry.(*StatusObject) + if !ok { + merr = multierror.Append(merr, fmt.Errorf("Status Backref expected *StatusObject, got %T: %v", statusEntry, statusEntry)) + continue + } + statusObjs = append(statusObjs, statusObj) + } + return statusObjs, errors.ErrOrNil(merr) +} + +// SetObjectRef sets reference to a configuration object +func (o *StatusObject) SetObjectRef(objKind, objUid string) error { + if len(o.GetObjectRefs()) != 0 { + return fmt.Errorf("StatusObject already has a reference to %v", o.GetObjectRefs()) + } + o.ObjectRefs = append(o.ObjectRefs, &ves_io_schema.ObjectRefType{Kind: objKind, Uid: objUid}) + return nil +} + +func (o *StatusObject) GetStatusObjMetadata() sro.StatusObjectMetadata { + return o.GetMetadata() +} + +func (o *StatusObject) SetStatusObjMetadata(md sro.StatusObjectMetadata) { + if o == nil { + return + } + if o.Metadata == nil { + o.Metadata = &ves_io_schema.StatusMetaType{} + } + o.Metadata = md.(*ves_io_schema.StatusMetaType) +} + +// GenerateUuidv5() returns a deterministic UUIDv5 based on the unique semantic key of status object +func (o *StatusObject) GenerateUuidV5() (string, error) { + statusObjectMetaData := o.GetStatusObjMetadata() + creatorClass := statusObjectMetaData.GetCreatorClass() + creatorId := statusObjectMetaData.GetCreatorId() + statusId := statusObjectMetaData.GetStatusId() + objectRefArray := o.GetObjectRefs() + if len(objectRefArray) == 0 { + return "", fmt.Errorf("StatusObject does not have a reference to config object.") + } + configObjectUuid := objectRefArray[0].Uid + configObjectKind := objectRefArray[0].Kind + keyFields := []string{creatorClass, creatorId, statusId, configObjectKind, configObjectUuid} + secKey := strings.Join(keyFields, "::") + newUuid := uuid.NewSHA1(uuid.NameSpaceOID, []byte(secKey)).String() + return newUuid, nil +} + +// SetUuidV5 sets deterministic uuid for a status object. +func (o *StatusObject) SetUuidV5() error { + if o == nil { + return fmt.Errorf("Status object is nil") + } + uuidV5, err := o.GenerateUuidV5() + if err != nil { + return err + } + o.GetMetadata().SetUid(uuidV5) + return nil +} + +// GetVtrpId returns vtrpId of the status object. +func (o *StatusObject) GetVtrpId() string { + return o.GetMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the status object. +func (o *StatusObject) SetVtrpId(id string) { + o.GetMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *StatusObject) GetVtrpStale() bool { + return o.GetMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the status object +func (o *StatusObject) SetVtrpStale(isStale bool) { + o.GetMetadata().SetVtrpStale(isStale) +} + +func (o *StatusObject) GetStatusObjConditions() []sro.StatusObjectCondition { + if o == nil { + return nil + } + return ves_io_schema.ToStatusObjectConditions(o.GetConditions()) +} + +func (o *StatusObject) SetStatusObjConditions(socSet []sro.StatusObjectCondition) { + if o == nil { + return + } + o.Conditions = ves_io_schema.FromStatusObjectConditions(socSet) +} + +func (o *DBObject) GetObjType() string { + return o.Type() +} + +// GetObjUid returns uuid from source-of-truth, in systemMetadata +func (o *DBObject) GetObjUid() string { + return o.GetSystemMetadata().GetUid() +} + +// GetObjTenant returns tenant from source-of-truth, in systemMetadata +func (o *DBObject) GetObjTenant() string { + return o.GetSystemMetadata().GetTenant() +} + +// GetObjCreatorClass returns creator-class from systemMetadata +func (o *DBObject) GetObjCreatorClass() string { + return o.GetSystemMetadata().GetCreatorClass() +} + +// GetObjectIndex returns object-index from systemMetadata +func (o *DBObject) GetObjectIndex() uint32 { + return o.GetSystemMetadata().GetObjectIndex() +} + +// SetObjUid sets uuid as a hint, in Metadata +func (o *DBObject) SetObjUid(u string) error { + // TODO: make sure 'u' is of uuid form + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Uid = u + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjName() string { + return o.GetMetadata().GetName() +} + +func (o *DBObject) SetObjName(n string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Name = n + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjNamespace() string { + return o.GetMetadata().GetNamespace() +} + +func (o *DBObject) SetObjNamespace(ns string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Namespace = ns + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjLabels() map[string]string { + return o.GetMetadata().GetLabels() +} + +func (o *DBObject) SetObjLabels(l map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Labels = l + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjAnnotations() map[string]string { + return o.GetMetadata().GetAnnotations() +} + +func (o *DBObject) SetObjAnnotations(a map[string]string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Annotations = a + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDescription() string { + return o.GetMetadata().GetDescription() +} + +func (o *DBObject) SetObjDescription(d string) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Description = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjDisable() bool { + return o.GetMetadata().GetDisable() +} + +func (o *DBObject) SetObjDisable(d bool) error { + m := o.GetMetadata() + if m == nil { + m = &ves_io_schema.ObjectMetaType{} + } + m.Disable = d + o.Metadata = m + return nil +} + +func (o *DBObject) GetObjSREDisable() bool { + return o.GetSystemMetadata().GetSreDisable() +} + +func (o *DBObject) SetObjSREDisable(d bool) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.SreDisable = d + return nil +} + +func (o *DBObject) SetObjCreator(cls, inst string) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.CreatorClass = cls + m.CreatorId = inst + o.SystemMetadata = m + return nil +} + +func (o *DBObject) SetObjectIndex(idx uint32) error { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + } + m.ObjectIndex = idx + o.SystemMetadata = m + return nil +} + +func (o *DBObject) GetObjFinalizers() []string { + return o.GetSystemMetadata().GetFinalizers() +} + +func (o *DBObject) SetObjFinalizers(values ...string) error { + m := o.GetSystemMetadata() + if m == nil { + return fmt.Errorf("Object has nil system_metadata") + } + m.Finalizers = values + return nil +} + +func (o *DBObject) GetObjPendingInitializers() []string { + initializers := o.GetSystemMetadata().GetInitializers() + var pending []string + for _, p := range initializers.GetPending() { + pending = append(pending, p.GetName()) + } + return pending +} + +func (o *DBObject) SetObjPendingInitializers(pending ...string) { + m := o.GetSystemMetadata() + if m == nil { + m = &ves_io_schema.SystemObjectMetaType{} + o.SystemMetadata = m + } + initializers := m.GetInitializers() + if initializers == nil { + initializers = &ves_io_schema.InitializersType{} + m.Initializers = initializers + } + var pendingInitializers []*ves_io_schema.InitializerType + for _, p := range pending { + pendingInitializers = append(pendingInitializers, &ves_io_schema.InitializerType{Name: p}) + } + initializers.Pending = pendingInitializers +} + +func (o *DBObject) IsSpecEqual(other sro.SRO) bool { + otherObjSpec := other.GetObjSpec() + otherSpec, ok := otherObjSpec.(*SpecType) + if !ok { + return false + } + + return o.GetSpec().Equal(otherSpec) +} + +// GetVtrpId returns vtrpId of the object. +func (o *DBObject) GetVtrpId() string { + return o.GetSystemMetadata().GetVtrpId() +} + +// SetVtrpId sets vtrpId of the object. +func (o *DBObject) SetVtrpId(id string) { + o.GetSystemMetadata().SetVtrpId(id) +} + +// GetVtrpStale returns true if the object is stale in Mars +func (o *DBObject) GetVtrpStale() bool { + return o.GetSystemMetadata().GetVtrpStale() +} + +// SetVtrpStale sets vtrpStale on the object +func (o *DBObject) SetVtrpStale(isStale bool) { + o.GetSystemMetadata().SetVtrpStale(isStale) +} + +// SetViewInternalRef sets ref from view object(e.g. http_loadbalancer.Object) to view_internal.Object +func (o *DBObject) SetViewInternalRef(viewIntName string) { + o.Spec.GcSpec.ViewInternal = &ves_io_schema_views.ObjectRefType{ + Tenant: o.GetObjTenant(), + Namespace: o.GetObjNamespace(), + Name: viewIntName, + } +} + +type ValidateObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*Object) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *Object got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, e.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, e.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultObjectValidator = func() *ValidateObject { + v := &ValidateObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectMetaTypeValidator().Validate + + v.FldValidators["system_metadata"] = ves_io_schema.SystemObjectMetaTypeValidator().Validate + + v.FldValidators["spec"] = SpecTypeValidator().Validate + + return v +}() + +func ObjectValidator() db.Validator { + return DefaultObjectValidator +} + +// augmented methods on protoc/std generated struct +func (e *StatusObject) Type() string { + return "ves.io.schema.ztna_application.StatusObject" +} + +func (e *StatusObject) ToEntry() db.Entry { + return NewDBStatusObject(e, db.OpWithNoCopy()) +} + +func FindStatusObject(ctx context.Context, finder db.EntryFinder, key string, opts ...db.FindEntryOpt) (*DBStatusObject, bool, error) { + e, exist, err := finder.FindEntry(ctx, StatusObjectDefTblName, key, opts...) + if !exist || err != nil { + return nil, exist, err + } + obj, ok := e.(*DBStatusObject) + if !ok { + return nil, false, fmt.Errorf("Cannot convert entry to object") + } + return obj, exist, err +} + +func ListStatusObject(ctx context.Context, lister db.EntryLister, opts ...db.ListEntriesOpt) ([]*DBStatusObject, error) { + var ( + oList []*DBStatusObject + merr *multierror.Error + ) + eList, err := lister.ListEntries(ctx, StatusObjectDefTblName, opts...) + if err != nil { + merr = multierror.Append(merr, err) + } + for _, e := range eList { + obj, ok := e.(*DBStatusObject) + if ok { + oList = append(oList, obj) + } else { + merr = multierror.Append(merr, fmt.Errorf("Cannot convert entry to %s object", StatusObjectType)) + } + } + return oList, errors.ErrOrNil(merr) +} + +func (o *StatusObject) DeepCopy() *StatusObject { + if o == nil { + return nil + } + ser, err := o.Marshal() + if err != nil { + return nil + } + c := &StatusObject{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (e *StatusObject) ToJSON() (string, error) { + return codec.ToJSON(e) +} + +func (e *StatusObject) ToYAML() (string, error) { + return codec.ToYAML(e) +} + +// A struct wrapping protoc/std generated struct with additional capabilities +// forming a db.Entry +type DBStatusObject struct { + // Anonymous embed of standard protobuf generated struct + *StatusObject + + tbl db.Table +} + +// GetStatusObjectIndexers returns the associated store.Indexers for StatusObject +func GetStatusObjectIndexers() store.Indexers { + + return nil + +} + +func (e *DBStatusObject) GetDB() (*db.DB, error) { + if e.tbl == nil { + return nil, fmt.Errorf("Entry has no table") + } + return e.tbl.GetDB(), nil +} + +// Implement ves.io/stdlib/db.Entry interface +func (e *DBStatusObject) Key(opts ...db.KeyOpt) (string, error) { + return e.GetMetadata().GetUid(), nil +} + +func (e *DBStatusObject) Type() string { + return "ves.io.schema.ztna_application.StatusObject" +} + +func (e *DBStatusObject) DeepCopy() db.Entry { + if e == nil { + return nil + } + n := NewDBStatusObject(e.StatusObject) + n.tbl = e.tbl + return n +} + +func (e *DBStatusObject) MarshalBytes() ([]byte, error) { + return e.Marshal() +} + +func (e *DBStatusObject) UnmarshalBytes(b []byte) error { + return e.Unmarshal(b) +} + +func (e *DBStatusObject) Sample(r *rand.Rand) (db.Entry, error) { + + o := &StatusObject{} + + return &DBStatusObject{o, e.tbl}, nil +} + +func (e *DBStatusObject) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return StatusObjectValidator().Validate(ctx, e.StatusObject, opts...) +} + +func (e *DBStatusObject) SetBlob(ctx context.Context, bID string, bVal interface{}, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "SetBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "SetBlob accessing key") + } + err = db.SetEntryBlob(ctx, key, e.Type(), bID, bVal, opts...) + if err != nil { + return errors.Wrap(err, "SetBlob setting in db") + } + return nil +} + +func (e *DBStatusObject) ClrBlob(ctx context.Context, bID string, opts ...db.BlobOpt) error { + db, err := e.GetDB() + if err != nil { + return errors.Wrap(err, "ClrBlob") + } + key, err := e.Key() + if err != nil { + return errors.Wrap(err, "ClrBlob accessing key") + } + err = db.ClrEntryBlob(ctx, key, e.Type(), bID, opts...) + if err != nil { + return errors.Wrap(err, "ClrBlob clearing in db") + } + return nil +} + +func (e *DBStatusObject) GetBlob(ctx context.Context, bID string, opts ...db.BlobOpt) (interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlob") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlob accessing key") + } + return db.GetEntryBlob(ctx, key, e.Type(), bID, opts...) +} + +func (e *DBStatusObject) GetBlobs(ctx context.Context, opts ...db.BlobOpt) (map[string]interface{}, error) { + db, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs") + } + key, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetBlobs accessing key") + } + return db.GetEntryBlobs(ctx, key, e.Type(), opts...) +} + +func (e *DBStatusObject) IsDeleted() (bool, error) { + db, err := e.GetDB() + if err != nil { + return false, errors.Wrap(err, "IsDeleted") + } + key, err := e.Key() + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing key") + } + isDel, err := db.IsEntryDeleted(key, e.Type()) + if err != nil { + return false, errors.Wrap(err, "IsDeleted accessing db") + } + return isDel, nil +} + +// Implement ves.io/stdlib/db.EntryPvt interface +func (e *DBStatusObject) SetTable(tbl db.Table) { + e.tbl = tbl +} + +func (e *DBStatusObject) GetDRefInfo() ([]db.DRefInfo, error) { + if e == nil { + return nil, nil + } + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + + drInfos, err := e.GetObjectRefsDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetObjectRefsDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + // Convert Spec.LcSpec.vnRefs to ves.io.examplesvc.objectone.Object.Spec.LcSpec.vnRefs + dri.DRField = "ves.io.schema.ztna_application.StatusObject." + dri.DRField + dri.RefrType = e.Type() + dri.RefrUID = refrUID + + // convert any ref_to schema annotation specified by kind value to type value + if !strings.HasPrefix(dri.RefdType, "ves.io") { + d, err := e.GetDB() + if err != nil { + return nil, errors.Wrap(err, "Cannot find db for entry to resolve kind to type") + } + refdType, err := d.TypeForEntryKind(dri.RefrType, dri.RefrUID, dri.RefdType) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Cannot convert kind %s to type", dri.RefdType)) + } + dri.RefdType = refdType + } + } + return drInfos, nil + +} + +func (e *DBStatusObject) ToStore() store.Entry { + return e.StatusObject +} + +func (e *DBStatusObject) ToJSON() (string, error) { + return e.ToStore().ToJSON() +} + +func (e *DBStatusObject) ToYAML() (string, error) { + return e.ToStore().ToYAML() +} + +func (e *DBStatusObject) GetTable() db.Table { + return e.tbl +} + +func NewDBStatusObject(o *StatusObject, opts ...db.OpOption) *DBStatusObject { + op := db.NewOpFrom(opts...) + if o == nil { + return &DBStatusObject{StatusObject: &StatusObject{}} + } + obj := o + if !op.NoCopy() { + obj = o.DeepCopy() + } + return &DBStatusObject{StatusObject: obj} +} + +func NewEntryStatusObject(opts ...db.OpOption) db.Entry { + op := db.NewOpFrom(opts...) + s := op.StoreEntry() + switch v := s.(type) { + case nil: + return NewDBStatusObject(nil, opts...) + case *StatusObject: + return NewDBStatusObject(v, opts...) + } + return nil +} + +func (e *DBStatusObject) GetObjectRefsDRefInfo() ([]db.DRefInfo, error) { + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDRefInfo, error in key") + } + refs := e.GetObjectRefs() + if len(refs) == 0 { + return nil, nil + } + drInfos := make([]db.DRefInfo, 0, len(refs)) + for i, ref := range refs { + if ref == nil { + return nil, fmt.Errorf("StatusObject.object_refs[%d] has a nil value", i) + } + // resolve kind to type if needed at DBObject.GetDRefInfo() + drInfos = append(drInfos, db.DRefInfo{ + RefdType: "ztna_application.Object", + RefdUID: ref.Uid, + RefdTenant: ref.Tenant, + RefdNS: ref.Namespace, + RefdName: ref.Name, + RefrType: e.Type(), + RefrUID: refrUID, + DRField: "object_refs", + Ref: ref, + }) + } + return drInfos, nil +} + +// GetObjectRefsDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (e *DBStatusObject) GetObjectRefsDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refrUID, err := e.Key() + if err != nil { + return nil, errors.Wrap(err, "GetDBEntries, error in key") + } + refdType, err := d.TypeForEntryKind(e.Type(), refrUID, "ztna_application.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: ztna_application") + } + tblName := db.DefaultTableName(refdType) + if intTbl, err := d.GetTable(ctx, db.InternalTableName(refdType)); err == nil { + tblName = intTbl.Name() + } + for _, ref := range e.GetObjectRefs() { + e, exist, err := d.FindEntry(ctx, tblName, ref.Uid) + if err != nil { + return nil, errors.Wrap(err, fmt.Sprintf("Tbl: %s, Key: %s", tblName, ref.Uid)) + } + if !exist { + continue + } + entries = append(entries, e) + } + return entries, nil +} + +type ValidateStatusObject struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateStatusObject) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + e, ok := pm.(*StatusObject) + if !ok { + switch t := pm.(type) { + default: + return fmt.Errorf("Expected type *StatusObject got type %s", t) + } + } + if e == nil { + return nil + } + + if fv, exists := v.FldValidators["conditions"]; exists { + + vOpts := append(opts, db.WithValidateField("conditions")) + for idx, item := range e.GetConditions() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, e.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["object_refs"]; exists { + + vOpts := append(opts, db.WithValidateField("object_refs")) + for idx, item := range e.GetObjectRefs() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultStatusObjectValidator = func() *ValidateStatusObject { + v := &ValidateStatusObject{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["conditions"] = ves_io_schema.ConditionTypeValidator().Validate + + return v +}() + +func StatusObjectValidator() db.Validator { + return DefaultStatusObjectValidator +} diff --git a/pbgo/extschema/schema/ztna_application/pkg.vespkg.go b/pbgo/extschema/schema/ztna_application/pkg.vespkg.go new file mode 100644 index 000000000..17af22f45 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/pkg.vespkg.go @@ -0,0 +1,267 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna_application + +import ( + "reflect" + + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/store" + "gopkg.volterra.us/stdlib/svcfw" +) + +func initializeValidatorRegistry(vr map[string]db.Validator) { + vr["ves.io.schema.ztna_application.SpecType"] = SpecTypeValidator() + + vr["ves.io.schema.ztna_application.Object"] = ObjectValidator() + vr["ves.io.schema.ztna_application.StatusObject"] = StatusObjectValidator() + + vr["ves.io.schema.ztna_application.CreateRequest"] = CreateRequestValidator() + vr["ves.io.schema.ztna_application.CreateResponse"] = CreateResponseValidator() + vr["ves.io.schema.ztna_application.DeleteRequest"] = DeleteRequestValidator() + vr["ves.io.schema.ztna_application.GetRequest"] = GetRequestValidator() + vr["ves.io.schema.ztna_application.GetResponse"] = GetResponseValidator() + vr["ves.io.schema.ztna_application.ListRequest"] = ListRequestValidator() + vr["ves.io.schema.ztna_application.ListResponse"] = ListResponseValidator() + vr["ves.io.schema.ztna_application.ListResponseItem"] = ListResponseItemValidator() + vr["ves.io.schema.ztna_application.ReplaceRequest"] = ReplaceRequestValidator() + vr["ves.io.schema.ztna_application.ReplaceResponse"] = ReplaceResponseValidator() + + vr["ves.io.schema.ztna_application.CreateSpecType"] = CreateSpecTypeValidator() + vr["ves.io.schema.ztna_application.GetSpecType"] = GetSpecTypeValidator() + vr["ves.io.schema.ztna_application.GlobalSpecType"] = GlobalSpecTypeValidator() + vr["ves.io.schema.ztna_application.ProxyAdvertisementType"] = ProxyAdvertisementTypeValidator() + vr["ves.io.schema.ztna_application.ReplaceSpecType"] = ReplaceSpecTypeValidator() + vr["ves.io.schema.ztna_application.ServiceDetails"] = ServiceDetailsValidator() + vr["ves.io.schema.ztna_application.TileAccess"] = TileAccessValidator() + vr["ves.io.schema.ztna_application.ZTNApolicies"] = ZTNApoliciesValidator() + +} + +func initializeEntryRegistry(mdr *svcfw.MDRegistry) { + mdr.EntryFactory["ves.io.schema.ztna_application.Object"] = NewEntryObject + mdr.EntryStoreMap["ves.io.schema.ztna_application.Object"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.ztna_application.Object"] = reflect.TypeOf(&DBObject{}) + mdr.EntryIndexers["ves.io.schema.ztna_application.Object"] = GetObjectIndexers + mdr.EntryFactory["ves.io.schema.ztna_application.StatusObject"] = NewEntryStatusObject + mdr.EntryStoreMap["ves.io.schema.ztna_application.StatusObject"] = store.InMemory + mdr.EntryRegistry["ves.io.schema.ztna_application.StatusObject"] = reflect.TypeOf(&DBStatusObject{}) + mdr.EntryIndexers["ves.io.schema.ztna_application.StatusObject"] = GetStatusObjectIndexers + +} + +func initializeRPCRegistry(mdr *svcfw.MDRegistry) { + + mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.ztna_application.API.Create"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + } + + mdr.RPCAvailableInResFieldRegistry["ves.io.schema.ztna_application.API.Create"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + } + + mdr.RPCAvailableInResFieldRegistry["ves.io.schema.ztna_application.API.Get"] = []svcfw.EnvironmentField{ + { + FieldPath: "create_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "create_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "replace_form.spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + } + + mdr.RPCAvailableInResFieldRegistry["ves.io.schema.ztna_application.API.List"] = []svcfw.EnvironmentField{ + { + FieldPath: "items.#.get_spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "items.#.get_spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + } + + mdr.RPCAvailableInReqFieldRegistry["ves.io.schema.ztna_application.API.Replace"] = []svcfw.EnvironmentField{ + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.cloud_edge_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_network.v6_vip_choice", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + { + FieldPath: "spec.proxy_advertisement.advertise_custom.advertise_where.#.virtual_site_segment.ipv6", + AllowedEnvironments: []string{"crt", "demo1", "prod", "softbank_mec", "staging", "test"}, + }, + } + +} + +func initializeAPIGwServiceSlugsRegistry(sm map[string]string) { + sm["ves.io.schema.ztna_application.API"] = "config" + +} + +func initializeP0PolicyRegistry(sm map[string]svcfw.P0PolicyInfo) { + + sm["config"] = svcfw.P0PolicyInfo{ + Name: "ves-io-allow-config", + ServiceSelector: "akar\\.gc.*\\", + } + +} + +func initializeCRUDServiceRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + var ( + csr *svcfw.CRUDServiceRegistry + customCSR *svcfw.CustomServiceRegistry + ) + _, _ = csr, customCSR + + csr = mdr.PubCRUDServiceRegistry + + func() { + // set swagger jsons for our and external schemas + csr.CRUDSwaggerRegistry["ves.io.schema.ztna_application.Object"] = APISwaggerJSON + csr.CRUDGrpcClientRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIGrpcClient + csr.CRUDRestClientRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIRestClient + csr.CRUDInprocClientRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIInprocClient + if isExternal { + return + } + // registration of api handlers if our own schema + mdr.SvcRegisterHandlers["ves.io.schema.ztna_application.API"] = RegisterAPIServer + mdr.SvcGwRegisterHandlers["ves.io.schema.ztna_application.API"] = RegisterGwAPIHandler + csr.CRUDServerRegistry["ves.io.schema.ztna_application.Object"] = NewCRUDAPIServer + + }() + +} + +func InitializeMDRegistry(mdr *svcfw.MDRegistry, isExternal bool) { + initializeEntryRegistry(mdr) + initializeValidatorRegistry(mdr.ValidatorRegistry) + + initializeCRUDServiceRegistry(mdr, isExternal) + if isExternal { + return + } + + initializeRPCRegistry(mdr) + initializeAPIGwServiceSlugsRegistry(mdr.APIGwServiceSlugs) + initializeP0PolicyRegistry(mdr.P0PolicyRegistry) + +} diff --git a/pbgo/extschema/schema/ztna_application/public_crudapi.pb.go b/pbgo/extschema/schema/ztna_application/public_crudapi.pb.go new file mode 100644 index 000000000..9f01ccf2b --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/public_crudapi.pb.go @@ -0,0 +1,5447 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna_application/public_crudapi.proto + +// Application configuration +// +// x-displayName: "Application configuration" +// Represents ztna application configuration for a given tenant + +package ztna_application + +import ( + context "context" + fmt "fmt" + _ "github.com/gogo/googleapis/google/api" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + types "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + _ "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/vesenv" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// GetResponseFormatCode +// +// x-displayName: "Get Response Format" +// This is the various forms that can be requested to be sent in the GetResponse +type GetResponseFormatCode int32 + +const ( + // x-displayName: "Default Format" + // Default format of returned resource + GET_RSP_FORMAT_DEFAULT GetResponseFormatCode = 0 + // x-displayName: "Create request Format" + // Response should be in CreateRequest format + GET_RSP_FORMAT_FOR_CREATE GetResponseFormatCode = 1 + // x-displayName: "Replace request format" + // Response should be in ReplaceRequest format + GET_RSP_FORMAT_FOR_REPLACE GetResponseFormatCode = 2 + // x-displayName: "Status format" + // Response should be in StatusObject(s) format + GET_RSP_FORMAT_STATUS GetResponseFormatCode = 3 + // x-displayName: "GetSpecType format" + // Response should be in format of GetSpecType + GET_RSP_FORMAT_READ GetResponseFormatCode = 4 + // x-displayName: "Referring Objects" + // Response should have other objects referring to this object + GET_RSP_FORMAT_REFERRING_OBJECTS GetResponseFormatCode = 5 + // x-displayName: "Broken Referred Objects" + // Response should have deleted and disabled objects referrred by this object + GET_RSP_FORMAT_BROKEN_REFERENCES GetResponseFormatCode = 6 +) + +var GetResponseFormatCode_name = map[int32]string{ + 0: "GET_RSP_FORMAT_DEFAULT", + 1: "GET_RSP_FORMAT_FOR_CREATE", + 2: "GET_RSP_FORMAT_FOR_REPLACE", + 3: "GET_RSP_FORMAT_STATUS", + 4: "GET_RSP_FORMAT_READ", + 5: "GET_RSP_FORMAT_REFERRING_OBJECTS", + 6: "GET_RSP_FORMAT_BROKEN_REFERENCES", +} + +var GetResponseFormatCode_value = map[string]int32{ + "GET_RSP_FORMAT_DEFAULT": 0, + "GET_RSP_FORMAT_FOR_CREATE": 1, + "GET_RSP_FORMAT_FOR_REPLACE": 2, + "GET_RSP_FORMAT_STATUS": 3, + "GET_RSP_FORMAT_READ": 4, + "GET_RSP_FORMAT_REFERRING_OBJECTS": 5, + "GET_RSP_FORMAT_BROKEN_REFERENCES": 6, +} + +func (GetResponseFormatCode) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{0} +} + +// CreateRequest is used to create an instance of ztna_application +// +// x-displayName: "Create Request" +// This is the input message of the 'Create' RPC +type CreateRequest struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes that can be set during create for all configuration objects like name, labels etc. + Metadata *schema.ObjectCreateMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object to be created + Spec *CreateSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *CreateRequest) Reset() { *m = CreateRequest{} } +func (*CreateRequest) ProtoMessage() {} +func (*CreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{0} +} +func (m *CreateRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateRequest.Merge(m, src) +} +func (m *CreateRequest) XXX_Size() int { + return m.Size() +} +func (m *CreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateRequest proto.InternalMessageInfo + +func (m *CreateRequest) GetMetadata() *schema.ObjectCreateMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *CreateRequest) GetSpec() *CreateSpecType { + if m != nil { + return m.Spec + } + return nil +} + +type CreateResponse struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata + // + // x-displayName: "System Metadata" + // System generated attributes all this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,3,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object created + Spec *GetSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` +} + +func (m *CreateResponse) Reset() { *m = CreateResponse{} } +func (*CreateResponse) ProtoMessage() {} +func (*CreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{1} +} +func (m *CreateResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateResponse.Merge(m, src) +} +func (m *CreateResponse) XXX_Size() int { + return m.Size() +} +func (m *CreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CreateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateResponse proto.InternalMessageInfo + +func (m *CreateResponse) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *CreateResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *CreateResponse) GetSpec() *GetSpecType { + if m != nil { + return m.Spec + } + return nil +} + +// ReplaceRequest is used to replace contents of a ztna_application +// +// x-displayName: "Replace Request" +// This is the input message of the 'Replace' RPC +type ReplaceRequest struct { + // metadata + // + // x-displayName: "Metadata" + // Common attributes that can be set during replace for all configuration objects like labels etc. + Metadata *schema.ObjectReplaceMetaType `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object to be replaced + Spec *ReplaceSpecType `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"` + // resource_version + // + // x-displayName: "Resource Version" + // x-example: "42" + // If provided, do the replace operation if the configuration object is still at 'resource_version' + ResourceVersion string `protobuf:"bytes,3,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` +} + +func (m *ReplaceRequest) Reset() { *m = ReplaceRequest{} } +func (*ReplaceRequest) ProtoMessage() {} +func (*ReplaceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{2} +} +func (m *ReplaceRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceRequest.Merge(m, src) +} +func (m *ReplaceRequest) XXX_Size() int { + return m.Size() +} +func (m *ReplaceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceRequest proto.InternalMessageInfo + +func (m *ReplaceRequest) GetMetadata() *schema.ObjectReplaceMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ReplaceRequest) GetSpec() *ReplaceSpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *ReplaceRequest) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +type ReplaceResponse struct { +} + +func (m *ReplaceResponse) Reset() { *m = ReplaceResponse{} } +func (*ReplaceResponse) ProtoMessage() {} +func (*ReplaceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{3} +} +func (m *ReplaceResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ReplaceResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ReplaceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceResponse.Merge(m, src) +} +func (m *ReplaceResponse) XXX_Size() int { + return m.Size() +} +func (m *ReplaceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceResponse proto.InternalMessageInfo + +// GetRequest is used to get different forms of a ztna_application +// +// x-displayName: "Get Request" +// This is the input message of the 'Get' RPC. Different forms of a resource +// for e.g. a ReplaceRequest form (for editing), a CreateRequest form (for +// creating new instance of ztna_application) etc. can be fetched +type GetRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of the configuration object to be fetched + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // response_format + // + // x-displayName: "Response Format" + // The format in which the configuration object is to be fetched. This could be for example + // - in GetSpec form for the contents of object + // - in CreateRequest form to create a new similar object + // - to ReplaceRequest form to replace changeable values + ResponseFormat GetResponseFormatCode `protobuf:"varint,3,opt,name=response_format,json=responseFormat,proto3,enum=ves.io.schema.ztna_application.GetResponseFormatCode" json:"response_format,omitempty"` +} + +func (m *GetRequest) Reset() { *m = GetRequest{} } +func (*GetRequest) ProtoMessage() {} +func (*GetRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{4} +} +func (m *GetRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetRequest.Merge(m, src) +} +func (m *GetRequest) XXX_Size() int { + return m.Size() +} +func (m *GetRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GetRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_GetRequest proto.InternalMessageInfo + +func (m *GetRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *GetRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *GetRequest) GetResponseFormat() GetResponseFormatCode { + if m != nil { + return m.ResponseFormat + } + return GET_RSP_FORMAT_DEFAULT +} + +// GetResponse is the shape of a read ztna_application +// +// x-displayName: "Get Response" +// This is the output message of the 'Get' RPC +type GetResponse struct { + // create_form + // + // x-displayName: "CreateRequest Format" + // Format used to create a new similar object + CreateForm *CreateRequest `protobuf:"bytes,2,opt,name=create_form,json=createForm,proto3" json:"create_form,omitempty"` + // replace_form + // + // x-displayName: "ReplaceRequest Format" + // Format to replace changeable values in object + ReplaceForm *ReplaceRequest `protobuf:"bytes,3,opt,name=replace_form,json=replaceForm,proto3" json:"replace_form,omitempty"` + // resource_version + // + // x-displayName: "Resource Version" + // x-example: "42" + // Version of the object + ResourceVersion string `protobuf:"bytes,4,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // Common attributes of the object like name, labels etc. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system metadata + // + // x-displayName: "System Metadata" + // System generated attributes of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,7,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // spec + // + // x-displayName: "Spec" + // A specification of the configuration object read + Spec *GetSpecType `protobuf:"bytes,6,opt,name=spec,proto3" json:"spec,omitempty"` + // status + // + // x-displayName: "Status" + // The status reported by different services for this configuration object + Status []*StatusObject `protobuf:"bytes,20000,rep,name=status,proto3" json:"status,omitempty"` + // referring_objects + // + // x-displayName: "Referring Objects" + // The set of objects that are referring to this object in their spec + ReferringObjects []*schema.ObjectRefType `protobuf:"bytes,8,rep,name=referring_objects,json=referringObjects,proto3" json:"referring_objects,omitempty"` + // deleted_referred_objects + // + // x-displayName: "Deleted Referred Objects" + // The set of deleted objects that are referred by this object + DeletedReferredObjects []*schema.ObjectRefType `protobuf:"bytes,9,rep,name=deleted_referred_objects,json=deletedReferredObjects,proto3" json:"deleted_referred_objects,omitempty"` + // disabled_referred_objects + // + // x-displayName: "Disabled Referred Objects" + // The set of deleted objects that are referred by this object + DisabledReferredObjects []*schema.ObjectRefType `protobuf:"bytes,10,rep,name=disabled_referred_objects,json=disabledReferredObjects,proto3" json:"disabled_referred_objects,omitempty"` +} + +func (m *GetResponse) Reset() { *m = GetResponse{} } +func (*GetResponse) ProtoMessage() {} +func (*GetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{5} +} +func (m *GetResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GetResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetResponse.Merge(m, src) +} +func (m *GetResponse) XXX_Size() int { + return m.Size() +} +func (m *GetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GetResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_GetResponse proto.InternalMessageInfo + +func (m *GetResponse) GetCreateForm() *CreateRequest { + if m != nil { + return m.CreateForm + } + return nil +} + +func (m *GetResponse) GetReplaceForm() *ReplaceRequest { + if m != nil { + return m.ReplaceForm + } + return nil +} + +func (m *GetResponse) GetResourceVersion() string { + if m != nil { + return m.ResourceVersion + } + return "" +} + +func (m *GetResponse) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *GetResponse) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *GetResponse) GetSpec() *GetSpecType { + if m != nil { + return m.Spec + } + return nil +} + +func (m *GetResponse) GetStatus() []*StatusObject { + if m != nil { + return m.Status + } + return nil +} + +func (m *GetResponse) GetReferringObjects() []*schema.ObjectRefType { + if m != nil { + return m.ReferringObjects + } + return nil +} + +func (m *GetResponse) GetDeletedReferredObjects() []*schema.ObjectRefType { + if m != nil { + return m.DeletedReferredObjects + } + return nil +} + +func (m *GetResponse) GetDisabledReferredObjects() []*schema.ObjectRefType { + if m != nil { + return m.DisabledReferredObjects + } + return nil +} + +// ListRequest is used to get a collection of ztna_application +// +// x-displayName: "List Request" +// This is the input message of the 'List' RPC. Fields can be used to control +// scope and filtering of collection. +type ListRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace to scope the listing of ztna_application + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // label_filter + // + // x-displayName: "Label Filter" + // x-example: "env in (staging, testing), tier in (web, db)" + // A LabelSelectorType expression that every item in list response will satisfy + LabelFilter string `protobuf:"bytes,2,opt,name=label_filter,json=labelFilter,proto3" json:"label_filter,omitempty"` + // report_fields + // + // x-displayName: "Report Fields" + // x-example: "" + // Extra fields to return along with summary fields + ReportFields []string `protobuf:"bytes,3,rep,name=report_fields,json=reportFields,proto3" json:"report_fields,omitempty"` + // report_status_fields + // + // x-displayName: "Report Status Fields" + // x-example: "" + // Extra status fields to return along with summary fields + ReportStatusFields []string `protobuf:"bytes,4,rep,name=report_status_fields,json=reportStatusFields,proto3" json:"report_status_fields,omitempty"` +} + +func (m *ListRequest) Reset() { *m = ListRequest{} } +func (*ListRequest) ProtoMessage() {} +func (*ListRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{6} +} +func (m *ListRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListRequest.Merge(m, src) +} +func (m *ListRequest) XXX_Size() int { + return m.Size() +} +func (m *ListRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ListRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ListRequest proto.InternalMessageInfo + +func (m *ListRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListRequest) GetLabelFilter() string { + if m != nil { + return m.LabelFilter + } + return "" +} + +func (m *ListRequest) GetReportFields() []string { + if m != nil { + return m.ReportFields + } + return nil +} + +func (m *ListRequest) GetReportStatusFields() []string { + if m != nil { + return m.ReportStatusFields + } + return nil +} + +// ListResponseItem is an individual item in a collection of ztna_application +// +// x-displayName: "List Item" +// By default a summary of ztna_application is returned in 'List'. By setting +// 'report_fields' in the ListRequest more details of each item can be got. +type ListResponseItem struct { + // tenant + // + // x-displayName: "Tenant" + // x-example: "acmecorp" + // The tenant this item belongs to + Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // The namespace this item belongs to + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // The name of this ztna_application + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // uid + // + // x-displayName: "UID" + // x-example: "d27938ba-967e-40a7-9709-57b8627f9f75" + // The unique uid of this ztna_application + Uid string `protobuf:"bytes,3,opt,name=uid,proto3" json:"uid,omitempty"` + // description + // + // x-displayName: "Description" + // The description set for this ztna_application + Description string `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"` + // disabled + // + // x-displayName: "Disabled" + // A value of true indicates ztna_application is administratively disabled + Disabled bool `protobuf:"varint,12,opt,name=disabled,proto3" json:"disabled,omitempty"` + // labels + // + // x-displayName: "Labels" + // The set of labels present on this ztna_application + Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // annotations + // + // x-displayName: "Annotations" + // The set of annotations present on this ztna_application + Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // owner_view + // + // x-displayName: "Owner View" + // Reference to the view object that owns this object. + // If there is no view owner, this field will be nil. + // If not nil, this object can only be edited/deleted through the view + OwnerView *schema.ViewRefType `protobuf:"bytes,9,opt,name=owner_view,json=ownerView,proto3" json:"owner_view,omitempty"` + // metadata + // + // x-displayName: "Metadata" + // If list request has report_fields set then metadata will + // contain all the metadata associated with the object. + Metadata *schema.ObjectGetMetaType `protobuf:"bytes,13,opt,name=metadata,proto3" json:"metadata,omitempty"` + // system_metadata + // + // x-displayName: "System Metadata" + // If list request has report_fields set then system_metadata will + // contain all the system generated details of this object. + SystemMetadata *schema.SystemObjectGetMetaType `protobuf:"bytes,14,opt,name=system_metadata,json=systemMetadata,proto3" json:"system_metadata,omitempty"` + // get_spec + // + // x-displayName: "Get Specification" + // If ListRequest has any specified report_fields, it will appear in object + GetSpec *GetSpecType `protobuf:"bytes,7,opt,name=get_spec,json=getSpec,proto3" json:"get_spec,omitempty"` + // status + // + // x-displayName: "Status" + // The status reported by different services for this configuration object + StatusSet []*StatusObject `protobuf:"bytes,8,rep,name=status_set,json=statusSet,proto3" json:"status_set,omitempty"` +} + +func (m *ListResponseItem) Reset() { *m = ListResponseItem{} } +func (*ListResponseItem) ProtoMessage() {} +func (*ListResponseItem) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{7} +} +func (m *ListResponseItem) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListResponseItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListResponseItem.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListResponseItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponseItem.Merge(m, src) +} +func (m *ListResponseItem) XXX_Size() int { + return m.Size() +} +func (m *ListResponseItem) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponseItem.DiscardUnknown(m) +} + +var xxx_messageInfo_ListResponseItem proto.InternalMessageInfo + +func (m *ListResponseItem) GetTenant() string { + if m != nil { + return m.Tenant + } + return "" +} + +func (m *ListResponseItem) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ListResponseItem) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *ListResponseItem) GetUid() string { + if m != nil { + return m.Uid + } + return "" +} + +func (m *ListResponseItem) GetDescription() string { + if m != nil { + return m.Description + } + return "" +} + +func (m *ListResponseItem) GetDisabled() bool { + if m != nil { + return m.Disabled + } + return false +} + +func (m *ListResponseItem) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +func (m *ListResponseItem) GetAnnotations() map[string]string { + if m != nil { + return m.Annotations + } + return nil +} + +func (m *ListResponseItem) GetOwnerView() *schema.ViewRefType { + if m != nil { + return m.OwnerView + } + return nil +} + +func (m *ListResponseItem) GetMetadata() *schema.ObjectGetMetaType { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ListResponseItem) GetSystemMetadata() *schema.SystemObjectGetMetaType { + if m != nil { + return m.SystemMetadata + } + return nil +} + +func (m *ListResponseItem) GetGetSpec() *GetSpecType { + if m != nil { + return m.GetSpec + } + return nil +} + +func (m *ListResponseItem) GetStatusSet() []*StatusObject { + if m != nil { + return m.StatusSet + } + return nil +} + +// ListResponse is the collection of ztna_application +// +// x-displayName: "List Response" +// This is the output message of 'List' RPC. +type ListResponse struct { + // items + // + // x-displayName: "Items" + // items represents the collection in response + Items []*ListResponseItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` + // errors + // + // x-displayName: "Errors" + // Errors(if any) while listing items from collection + Errors []*schema.ErrorType `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` +} + +func (m *ListResponse) Reset() { *m = ListResponse{} } +func (*ListResponse) ProtoMessage() {} +func (*ListResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{8} +} +func (m *ListResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ListResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *ListResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListResponse.Merge(m, src) +} +func (m *ListResponse) XXX_Size() int { + return m.Size() +} +func (m *ListResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ListResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ListResponse proto.InternalMessageInfo + +func (m *ListResponse) GetItems() []*ListResponseItem { + if m != nil { + return m.Items + } + return nil +} + +func (m *ListResponse) GetErrors() []*schema.ErrorType { + if m != nil { + return m.Errors + } + return nil +} + +// DeleteRequest is used to delete a ztna_application +// +// x-displayName: "Delete Request" +// This is the input message of the 'Delete' RPC. +type DeleteRequest struct { + // namespace + // + // x-displayName: "Namespace" + // x-example: "ns1" + // Namespace in which the configuration object is present + Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` + // name + // + // x-displayName: "Name" + // x-example: "name" + // Name of the configuration object + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + // fail_if_referred + // + // x-displayName: "Fail-If-Referred" + // Fail the delete operation if this object is being referred by other objects + FailIfReferred bool `protobuf:"varint,3,opt,name=fail_if_referred,json=failIfReferred,proto3" json:"fail_if_referred,omitempty"` +} + +func (m *DeleteRequest) Reset() { *m = DeleteRequest{} } +func (*DeleteRequest) ProtoMessage() {} +func (*DeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_2a6a321e9c422976, []int{9} +} +func (m *DeleteRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *DeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_DeleteRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *DeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteRequest.Merge(m, src) +} +func (m *DeleteRequest) XXX_Size() int { + return m.Size() +} +func (m *DeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo + +func (m *DeleteRequest) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *DeleteRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *DeleteRequest) GetFailIfReferred() bool { + if m != nil { + return m.FailIfReferred + } + return false +} + +func init() { + proto.RegisterEnum("ves.io.schema.ztna_application.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + golang_proto.RegisterEnum("ves.io.schema.ztna_application.GetResponseFormatCode", GetResponseFormatCode_name, GetResponseFormatCode_value) + proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.ztna_application.CreateRequest") + golang_proto.RegisterType((*CreateRequest)(nil), "ves.io.schema.ztna_application.CreateRequest") + proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.ztna_application.CreateResponse") + golang_proto.RegisterType((*CreateResponse)(nil), "ves.io.schema.ztna_application.CreateResponse") + proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.ztna_application.ReplaceRequest") + golang_proto.RegisterType((*ReplaceRequest)(nil), "ves.io.schema.ztna_application.ReplaceRequest") + proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.ztna_application.ReplaceResponse") + golang_proto.RegisterType((*ReplaceResponse)(nil), "ves.io.schema.ztna_application.ReplaceResponse") + proto.RegisterType((*GetRequest)(nil), "ves.io.schema.ztna_application.GetRequest") + golang_proto.RegisterType((*GetRequest)(nil), "ves.io.schema.ztna_application.GetRequest") + proto.RegisterType((*GetResponse)(nil), "ves.io.schema.ztna_application.GetResponse") + golang_proto.RegisterType((*GetResponse)(nil), "ves.io.schema.ztna_application.GetResponse") + proto.RegisterType((*ListRequest)(nil), "ves.io.schema.ztna_application.ListRequest") + golang_proto.RegisterType((*ListRequest)(nil), "ves.io.schema.ztna_application.ListRequest") + proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.ztna_application.ListResponseItem") + golang_proto.RegisterType((*ListResponseItem)(nil), "ves.io.schema.ztna_application.ListResponseItem") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna_application.ListResponseItem.AnnotationsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna_application.ListResponseItem.AnnotationsEntry") + proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna_application.ListResponseItem.LabelsEntry") + golang_proto.RegisterMapType((map[string]string)(nil), "ves.io.schema.ztna_application.ListResponseItem.LabelsEntry") + proto.RegisterType((*ListResponse)(nil), "ves.io.schema.ztna_application.ListResponse") + golang_proto.RegisterType((*ListResponse)(nil), "ves.io.schema.ztna_application.ListResponse") + proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.ztna_application.DeleteRequest") + golang_proto.RegisterType((*DeleteRequest)(nil), "ves.io.schema.ztna_application.DeleteRequest") +} + +func init() { + proto.RegisterFile("ves.io/schema/ztna_application/public_crudapi.proto", fileDescriptor_2a6a321e9c422976) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna_application/public_crudapi.proto", fileDescriptor_2a6a321e9c422976) +} + +var fileDescriptor_2a6a321e9c422976 = []byte{ + // 1586 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4d, 0x6c, 0xdb, 0x46, + 0x16, 0xf6, 0x48, 0xb2, 0x22, 0x3d, 0xf9, 0x87, 0x99, 0x4d, 0x1c, 0x59, 0x9b, 0x25, 0xb4, 0x4a, + 0x76, 0x61, 0xd8, 0x31, 0x65, 0x38, 0x58, 0xec, 0xda, 0x08, 0xbc, 0x2b, 0xdb, 0x94, 0xe1, 0xc4, + 0xb1, 0xbd, 0x94, 0x12, 0x14, 0x39, 0x94, 0xa0, 0xa8, 0x91, 0xc2, 0x46, 0x12, 0x59, 0x72, 0x64, + 0xd7, 0x2d, 0x0c, 0x14, 0x39, 0xf5, 0x58, 0xa0, 0x40, 0x0f, 0x45, 0x5b, 0xf4, 0x52, 0xa0, 0xc7, + 0xa2, 0xa7, 0x02, 0x46, 0x81, 0xf4, 0x94, 0x20, 0x08, 0x8a, 0xa0, 0x3d, 0x34, 0xb7, 0x36, 0x72, + 0x0e, 0x39, 0x06, 0x3d, 0xf7, 0x50, 0x70, 0x86, 0x54, 0x24, 0x59, 0x89, 0x24, 0xd7, 0x27, 0x71, + 0xe6, 0xbd, 0xf7, 0xcd, 0xfb, 0xe6, 0xfd, 0xe8, 0x91, 0x70, 0x79, 0x87, 0x38, 0x92, 0x61, 0xa6, + 0x1d, 0xfd, 0x36, 0xa9, 0x6a, 0xe9, 0x77, 0x69, 0x4d, 0x53, 0x35, 0xcb, 0xaa, 0x18, 0xba, 0x46, + 0x0d, 0xb3, 0x96, 0xb6, 0xea, 0x85, 0x8a, 0xa1, 0xab, 0xba, 0x5d, 0x2f, 0x6a, 0x96, 0x21, 0x59, + 0xb6, 0x49, 0x4d, 0x2c, 0x72, 0x23, 0x89, 0x1b, 0x49, 0x9d, 0x46, 0x89, 0xd9, 0xb2, 0x41, 0x6f, + 0xd7, 0x0b, 0x92, 0x6e, 0x56, 0xd3, 0x65, 0xb3, 0x6c, 0xa6, 0x99, 0x59, 0xa1, 0x5e, 0x62, 0x2b, + 0xb6, 0x60, 0x4f, 0x1c, 0x2e, 0x71, 0xbe, 0x6c, 0x9a, 0xe5, 0x0a, 0x49, 0x6b, 0x96, 0x91, 0xd6, + 0x6a, 0x35, 0x93, 0x32, 0x14, 0xc7, 0x93, 0xfe, 0xd5, 0x93, 0x36, 0x31, 0x48, 0xd5, 0xa2, 0x7b, + 0x9e, 0x30, 0xd1, 0xee, 0x3e, 0xb1, 0x6d, 0xd3, 0x6e, 0x1a, 0xb6, 0xcb, 0x4c, 0xab, 0x15, 0x75, + 0xb2, 0x5d, 0x48, 0xf7, 0x2c, 0xe2, 0x8b, 0x52, 0xed, 0xa2, 0x1d, 0xe2, 0x90, 0xda, 0x4e, 0x87, + 0x79, 0xb2, 0x43, 0xc7, 0x20, 0xbb, 0x6a, 0xbb, 0xc6, 0x4c, 0x8f, 0x8b, 0x35, 0x0b, 0x6f, 0x11, + 0x9d, 0x7a, 0xca, 0xd3, 0x3d, 0x94, 0x5b, 0xdc, 0x4b, 0x7d, 0x8d, 0x60, 0x74, 0xc5, 0x26, 0x1a, + 0x25, 0x0a, 0x79, 0xbb, 0x4e, 0x1c, 0x8a, 0xff, 0x0b, 0x91, 0x2a, 0xa1, 0x5a, 0x51, 0xa3, 0x5a, + 0x1c, 0x25, 0xd1, 0x54, 0x6c, 0xfe, 0x82, 0xd4, 0x1e, 0xa1, 0x2d, 0x76, 0x18, 0xb7, 0xba, 0x4e, + 0xa8, 0x96, 0xdf, 0xb3, 0x88, 0xd2, 0x34, 0xc2, 0x39, 0x08, 0x39, 0x16, 0xd1, 0xe3, 0x01, 0x66, + 0x2c, 0x49, 0xaf, 0x0f, 0xaf, 0xc4, 0x71, 0x72, 0x16, 0xd1, 0x5d, 0x9c, 0xe5, 0xf1, 0x4f, 0xf6, + 0x47, 0x5c, 0x73, 0xa9, 0xac, 0xab, 0xee, 0xaf, 0xc2, 0xc0, 0x16, 0xa3, 0x0f, 0x97, 0xc2, 0xfc, + 0xdc, 0xd4, 0xef, 0x08, 0xc6, 0x7c, 0x97, 0x1d, 0xcb, 0xac, 0x39, 0x04, 0x5f, 0x39, 0xe2, 0x73, + 0xb2, 0xab, 0xcf, 0x6b, 0x84, 0x76, 0x71, 0x78, 0x0b, 0xc6, 0x9d, 0x3d, 0x87, 0x92, 0xaa, 0xda, + 0x04, 0x09, 0x32, 0x90, 0x7f, 0x76, 0x80, 0xe4, 0x98, 0xd6, 0x51, 0xa8, 0x31, 0x6e, 0x7e, 0xdd, + 0x07, 0xdc, 0x6e, 0xbb, 0x81, 0x99, 0x5e, 0x37, 0xb0, 0x46, 0xe8, 0x00, 0xf4, 0x9f, 0x21, 0x18, + 0x53, 0x88, 0x55, 0xd1, 0xf4, 0x66, 0xc8, 0xfe, 0x77, 0x84, 0xfe, 0xc5, 0xae, 0xf4, 0x3d, 0xb3, + 0x2e, 0x57, 0x90, 0x6f, 0xf3, 0x38, 0xdd, 0xcb, 0x63, 0x0f, 0xa8, 0x87, 0xd7, 0x38, 0x0d, 0x82, + 0x4d, 0x1c, 0xb3, 0x6e, 0xeb, 0x44, 0xdd, 0x21, 0xb6, 0x63, 0x98, 0x35, 0x76, 0xb3, 0xd1, 0xe5, + 0xd0, 0xf3, 0x03, 0x84, 0x94, 0x71, 0x5f, 0x7a, 0x93, 0x0b, 0x5b, 0x69, 0x9e, 0x86, 0xf1, 0x26, + 0x4b, 0x1e, 0xe5, 0xd4, 0xe7, 0x08, 0x60, 0x8d, 0x50, 0x9f, 0xf5, 0x79, 0x88, 0xd6, 0xb4, 0x2a, + 0x71, 0x2c, 0x4d, 0x27, 0x8c, 0x76, 0x54, 0x79, 0xb9, 0x81, 0x31, 0x84, 0xdc, 0x05, 0x63, 0x14, + 0x55, 0xd8, 0x33, 0x7e, 0x13, 0xdc, 0x13, 0x19, 0x98, 0x5a, 0x32, 0xed, 0xaa, 0x46, 0x99, 0x3b, + 0x63, 0xf3, 0xff, 0xea, 0x23, 0x44, 0xbe, 0x1b, 0x59, 0x66, 0xb8, 0x62, 0x16, 0x89, 0x32, 0x66, + 0xb7, 0xed, 0xa5, 0x3e, 0x0b, 0x43, 0xac, 0x45, 0x13, 0x6f, 0x42, 0x4c, 0x67, 0x89, 0xca, 0x4e, + 0xf3, 0x2e, 0x77, 0xb6, 0xbf, 0x82, 0xf0, 0x58, 0x2a, 0xc0, 0x11, 0xdc, 0x13, 0xf0, 0xff, 0x61, + 0xc4, 0xe6, 0x77, 0xc2, 0x01, 0x83, 0xfd, 0x55, 0x58, 0x7b, 0xb6, 0x28, 0x31, 0x0f, 0x83, 0x41, + 0x76, 0x0b, 0x51, 0xe8, 0x35, 0x21, 0x6a, 0x2b, 0xb5, 0xe1, 0x93, 0x28, 0xb5, 0x53, 0x27, 0x52, + 0x6a, 0xe1, 0x93, 0x2a, 0x35, 0x7c, 0x0d, 0xc2, 0x0e, 0xd5, 0x68, 0xdd, 0x89, 0x7f, 0xf1, 0x29, + 0x4a, 0x06, 0xa7, 0x62, 0xf3, 0x97, 0x7a, 0xa1, 0xe6, 0x98, 0x3e, 0x77, 0x76, 0x39, 0x78, 0x6f, + 0x1f, 0x29, 0x1e, 0x04, 0x5e, 0x87, 0xd3, 0x36, 0x29, 0x11, 0xdb, 0x36, 0x6a, 0x65, 0x95, 0x37, + 0x69, 0x27, 0x1e, 0x61, 0xa8, 0xe7, 0x5f, 0x51, 0xa2, 0x25, 0xc6, 0x53, 0x68, 0x9a, 0xf1, 0x7d, + 0x07, 0xdf, 0x84, 0x78, 0x91, 0x54, 0x08, 0x25, 0x45, 0x95, 0xcb, 0x48, 0xb1, 0x89, 0x18, 0xed, + 0x03, 0x71, 0xc2, 0xb3, 0x56, 0x3c, 0x63, 0x1f, 0xf7, 0x0d, 0x98, 0x2c, 0x1a, 0x8e, 0x56, 0xa8, + 0x74, 0x03, 0x86, 0x3e, 0x80, 0xcf, 0xf9, 0xe6, 0x1d, 0xc8, 0x2d, 0xd5, 0x7c, 0x35, 0x14, 0x41, + 0x42, 0x20, 0xf5, 0x25, 0x82, 0xd8, 0x86, 0xe1, 0xf4, 0x59, 0xc1, 0x7f, 0x87, 0x91, 0x8a, 0x56, + 0x20, 0x15, 0xb5, 0x64, 0x54, 0x28, 0xb1, 0xbd, 0x4a, 0x8e, 0xb1, 0xbd, 0x2c, 0xdb, 0xc2, 0x17, + 0x60, 0xd4, 0x26, 0x96, 0x69, 0x53, 0xb5, 0x64, 0x90, 0x4a, 0xd1, 0x89, 0x07, 0x93, 0xc1, 0xa9, + 0xa8, 0x32, 0xc2, 0x37, 0xb3, 0x6c, 0x0f, 0xcf, 0xc1, 0x19, 0x4f, 0x89, 0x07, 0xc5, 0xd7, 0x0d, + 0x31, 0x5d, 0xcc, 0x65, 0x3c, 0x84, 0xdc, 0x22, 0xf5, 0x28, 0x0c, 0x02, 0xf7, 0x93, 0x17, 0xf2, + 0x3a, 0x25, 0x55, 0x3c, 0x01, 0x61, 0x4a, 0x6a, 0x5a, 0x8d, 0xb2, 0x5c, 0x8b, 0x2a, 0xde, 0xea, + 0x18, 0x6d, 0x48, 0x80, 0x60, 0xdd, 0x28, 0xf2, 0x4e, 0xa8, 0xb8, 0x8f, 0x38, 0x09, 0xb1, 0x22, + 0x71, 0x74, 0xdb, 0x60, 0x7f, 0xfa, 0xf1, 0x18, 0x67, 0xda, 0xb2, 0x85, 0x13, 0x10, 0xf1, 0xaf, + 0x39, 0x3e, 0x92, 0x44, 0x53, 0x11, 0xa5, 0xb9, 0xc6, 0x79, 0x08, 0xb3, 0x4b, 0xe1, 0x94, 0x62, + 0xf3, 0x57, 0x7a, 0xe5, 0x6b, 0x27, 0x37, 0x69, 0x83, 0x99, 0xcb, 0x35, 0x6a, 0xef, 0x29, 0x1e, + 0x16, 0xd6, 0x21, 0xd6, 0x32, 0x3e, 0x79, 0x99, 0x90, 0x19, 0x18, 0x3a, 0xf3, 0x12, 0x83, 0xe3, + 0xb7, 0xa2, 0xe2, 0x05, 0x00, 0x73, 0xb7, 0x46, 0x6c, 0xd5, 0x9d, 0x79, 0xe2, 0x51, 0x56, 0xc4, + 0x89, 0x8e, 0x33, 0x6e, 0x1a, 0x64, 0xd7, 0xcf, 0xb5, 0x28, 0xd3, 0x76, 0x77, 0xda, 0x1a, 0xd1, + 0xe8, 0x49, 0x34, 0xa2, 0xb1, 0x3f, 0xd5, 0x88, 0xb2, 0x10, 0x29, 0x13, 0xca, 0x1a, 0x89, 0xd7, + 0xd2, 0x06, 0x69, 0x46, 0xca, 0xa9, 0x32, 0x5f, 0xe0, 0x6d, 0x00, 0x2f, 0x4d, 0x1d, 0x42, 0xbd, + 0x56, 0x71, 0x8c, 0x06, 0x14, 0xe5, 0x20, 0x39, 0x42, 0x13, 0x0b, 0x10, 0x6b, 0x89, 0xaf, 0x9b, + 0x7d, 0x77, 0xc8, 0x9e, 0x97, 0xa9, 0xee, 0x23, 0x3e, 0x03, 0xc3, 0x3b, 0x5a, 0xa5, 0xee, 0x27, + 0x29, 0x5f, 0x2c, 0x06, 0xfe, 0x83, 0x12, 0x4b, 0x20, 0x74, 0xc6, 0x6f, 0x10, 0xfb, 0xab, 0xa1, + 0xc8, 0xb0, 0x10, 0x4e, 0x7d, 0x80, 0x60, 0xa4, 0x35, 0x2f, 0x70, 0x16, 0x86, 0x0d, 0x4a, 0xaa, + 0x4e, 0x9c, 0xf7, 0xd7, 0xb9, 0x41, 0x93, 0x4a, 0xe1, 0xe6, 0x78, 0x0e, 0xc2, 0x7c, 0x46, 0x8f, + 0x07, 0x18, 0x50, 0xbc, 0x03, 0x48, 0x76, 0x85, 0xec, 0x7a, 0x3d, 0xbd, 0xd4, 0x1d, 0x18, 0x5d, + 0x65, 0x6d, 0xf0, 0xf8, 0x43, 0xc4, 0x14, 0x08, 0x25, 0xcd, 0xa8, 0xa8, 0x46, 0xa9, 0xd9, 0x2e, + 0x59, 0x29, 0x47, 0x94, 0x31, 0x77, 0x7f, 0xbd, 0xe4, 0xb7, 0xc1, 0xe9, 0xdf, 0x10, 0x9c, 0xed, + 0x3a, 0x38, 0xe0, 0x04, 0x4c, 0xac, 0xc9, 0x79, 0x55, 0xc9, 0x6d, 0xab, 0xd9, 0x2d, 0xe5, 0x7a, + 0x26, 0xaf, 0xae, 0xca, 0xd9, 0xcc, 0x8d, 0x8d, 0xbc, 0x30, 0x84, 0xff, 0x06, 0x93, 0x1d, 0xb2, + 0xec, 0x96, 0xa2, 0xae, 0x28, 0x72, 0x26, 0x2f, 0x0b, 0x08, 0x8b, 0x90, 0xe8, 0x22, 0x56, 0xe4, + 0xed, 0x8d, 0xcc, 0x8a, 0x2c, 0x04, 0xf0, 0x24, 0x9c, 0xed, 0x90, 0xe7, 0xf2, 0x99, 0xfc, 0x8d, + 0x9c, 0x10, 0xc4, 0xe7, 0xe0, 0x2f, 0x1d, 0x22, 0x45, 0xce, 0xac, 0x0a, 0x21, 0x7c, 0x11, 0x92, + 0x47, 0x04, 0x59, 0x59, 0x51, 0xd6, 0x37, 0xd7, 0xd4, 0xad, 0xe5, 0xab, 0xf2, 0x4a, 0x3e, 0x27, + 0x0c, 0x77, 0xd1, 0x5a, 0x56, 0xb6, 0xae, 0xc9, 0x9b, 0x5c, 0x59, 0xde, 0x5c, 0x91, 0x73, 0x42, + 0x78, 0xfe, 0xe7, 0x08, 0x04, 0x33, 0xdb, 0xeb, 0xf8, 0x11, 0x82, 0x30, 0x9f, 0x64, 0xf0, 0x60, + 0x13, 0x4f, 0x42, 0xea, 0x57, 0xdd, 0x1b, 0x0b, 0xf5, 0xc6, 0xfd, 0xb8, 0xfb, 0x76, 0x36, 0x6b, + 0x98, 0xb3, 0x46, 0xad, 0x64, 0x6b, 0x0e, 0xb5, 0xeb, 0x3a, 0xad, 0xdb, 0x64, 0x76, 0xd7, 0x36, + 0x28, 0xb9, 0xfb, 0xd3, 0xb3, 0x8f, 0x02, 0x4b, 0xa9, 0x05, 0xef, 0xed, 0x33, 0xdd, 0x0c, 0xaf, + 0x93, 0x7e, 0xcf, 0x2f, 0x7e, 0xa9, 0xb9, 0xb9, 0x7f, 0xe4, 0x7d, 0xc9, 0x59, 0x44, 0xd3, 0xf8, + 0x7b, 0x04, 0xc1, 0x35, 0x42, 0xf1, 0x74, 0x5f, 0x93, 0x22, 0x27, 0x32, 0x33, 0xc0, 0x54, 0x99, + 0xd2, 0x1e, 0x7c, 0x1b, 0x40, 0x8d, 0xfb, 0xf1, 0x44, 0x77, 0x26, 0x36, 0xd1, 0x8a, 0x8c, 0xc8, + 0x02, 0xfe, 0x77, 0x37, 0x22, 0xaf, 0xf3, 0x9f, 0x4b, 0xf7, 0xf1, 0x77, 0x08, 0x42, 0x6e, 0x29, + 0xe1, 0x99, 0xfe, 0x0a, 0x8e, 0xb3, 0xb8, 0x34, 0x48, 0x75, 0xa6, 0x6e, 0xf5, 0x49, 0x63, 0x1e, + 0xcf, 0x0d, 0x4a, 0x03, 0xff, 0x82, 0xe0, 0x94, 0x37, 0xcb, 0xe2, 0x01, 0x87, 0xde, 0x44, 0xba, + 0x6f, 0x7d, 0x8f, 0x88, 0xd3, 0x4f, 0x56, 0x6d, 0x26, 0xd6, 0x8f, 0x9d, 0x55, 0x1d, 0x6a, 0xfb, + 0x6e, 0x96, 0x7d, 0x83, 0x20, 0xcc, 0xfb, 0x53, 0xef, 0xa2, 0x69, 0xeb, 0x63, 0x89, 0x09, 0x89, + 0x7f, 0xd8, 0x90, 0xfc, 0x0f, 0x1b, 0x92, 0x5c, 0xb5, 0xe8, 0x5e, 0x4a, 0xeb, 0x87, 0xc6, 0x95, + 0xe9, 0xe3, 0xe6, 0xd4, 0x22, 0x9a, 0x4e, 0x94, 0xee, 0x1d, 0xa0, 0xc0, 0x8f, 0x07, 0xe8, 0x1f, + 0x3d, 0x1c, 0xe6, 0x7f, 0x4f, 0x4f, 0x0e, 0x10, 0x6a, 0x1c, 0xa0, 0x99, 0x01, 0xfe, 0xd1, 0xee, + 0xfe, 0x10, 0x0f, 0x08, 0x68, 0xf9, 0x63, 0xf4, 0x70, 0x69, 0x78, 0x45, 0xb9, 0xb1, 0xba, 0xf1, + 0xf8, 0xa9, 0x38, 0xf4, 0xe4, 0xa9, 0x38, 0xf4, 0xe2, 0xa9, 0x88, 0xde, 0x6f, 0x88, 0xe8, 0xab, + 0x86, 0x88, 0x1e, 0x34, 0x44, 0xf4, 0xb8, 0x21, 0xa2, 0x5f, 0x1b, 0x22, 0x7a, 0xde, 0x10, 0x87, + 0x5e, 0x34, 0x44, 0xf4, 0xe1, 0xa1, 0x38, 0x74, 0xef, 0x50, 0x44, 0x8f, 0x0f, 0xc5, 0xa1, 0x27, + 0x87, 0xe2, 0xd0, 0xad, 0x7c, 0xd9, 0xb4, 0xee, 0x94, 0xa5, 0x1d, 0xd3, 0x9d, 0x1e, 0x6d, 0x4d, + 0xaa, 0x3b, 0x69, 0xf6, 0xe0, 0xbe, 0x4d, 0xcd, 0x5a, 0xb6, 0xb9, 0x63, 0x14, 0x89, 0x3d, 0xeb, + 0x8b, 0xd3, 0x56, 0xa1, 0x6c, 0xa6, 0xc9, 0x3b, 0xd4, 0xfb, 0x90, 0xf2, 0x8a, 0xef, 0x29, 0x85, + 0x30, 0xbb, 0xf3, 0xcb, 0x7f, 0x04, 0x00, 0x00, 0xff, 0xff, 0x9b, 0x3f, 0x57, 0x05, 0xfe, 0x12, + 0x00, 0x00, +} + +func (x GetResponseFormatCode) String() string { + s, ok := GetResponseFormatCode_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *CreateRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateRequest) + if !ok { + that2, ok := that.(CreateRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *CreateResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateResponse) + if !ok { + that2, ok := that.(CreateResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + return true +} +func (this *ReplaceRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceRequest) + if !ok { + that2, ok := that.(ReplaceRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + return true +} +func (this *ReplaceResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceResponse) + if !ok { + that2, ok := that.(ReplaceResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + return true +} +func (this *GetRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetRequest) + if !ok { + that2, ok := that.(GetRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.ResponseFormat != that1.ResponseFormat { + return false + } + return true +} +func (this *GetResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetResponse) + if !ok { + that2, ok := that.(GetResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.CreateForm.Equal(that1.CreateForm) { + return false + } + if !this.ReplaceForm.Equal(that1.ReplaceForm) { + return false + } + if this.ResourceVersion != that1.ResourceVersion { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.Spec.Equal(that1.Spec) { + return false + } + if len(this.Status) != len(that1.Status) { + return false + } + for i := range this.Status { + if !this.Status[i].Equal(that1.Status[i]) { + return false + } + } + if len(this.ReferringObjects) != len(that1.ReferringObjects) { + return false + } + for i := range this.ReferringObjects { + if !this.ReferringObjects[i].Equal(that1.ReferringObjects[i]) { + return false + } + } + if len(this.DeletedReferredObjects) != len(that1.DeletedReferredObjects) { + return false + } + for i := range this.DeletedReferredObjects { + if !this.DeletedReferredObjects[i].Equal(that1.DeletedReferredObjects[i]) { + return false + } + } + if len(this.DisabledReferredObjects) != len(that1.DisabledReferredObjects) { + return false + } + for i := range this.DisabledReferredObjects { + if !this.DisabledReferredObjects[i].Equal(that1.DisabledReferredObjects[i]) { + return false + } + } + return true +} +func (this *ListRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListRequest) + if !ok { + that2, ok := that.(ListRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.LabelFilter != that1.LabelFilter { + return false + } + if len(this.ReportFields) != len(that1.ReportFields) { + return false + } + for i := range this.ReportFields { + if this.ReportFields[i] != that1.ReportFields[i] { + return false + } + } + if len(this.ReportStatusFields) != len(that1.ReportStatusFields) { + return false + } + for i := range this.ReportStatusFields { + if this.ReportStatusFields[i] != that1.ReportStatusFields[i] { + return false + } + } + return true +} +func (this *ListResponseItem) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListResponseItem) + if !ok { + that2, ok := that.(ListResponseItem) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Tenant != that1.Tenant { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.Uid != that1.Uid { + return false + } + if this.Description != that1.Description { + return false + } + if this.Disabled != that1.Disabled { + return false + } + if len(this.Labels) != len(that1.Labels) { + return false + } + for i := range this.Labels { + if this.Labels[i] != that1.Labels[i] { + return false + } + } + if len(this.Annotations) != len(that1.Annotations) { + return false + } + for i := range this.Annotations { + if this.Annotations[i] != that1.Annotations[i] { + return false + } + } + if !this.OwnerView.Equal(that1.OwnerView) { + return false + } + if !this.Metadata.Equal(that1.Metadata) { + return false + } + if !this.SystemMetadata.Equal(that1.SystemMetadata) { + return false + } + if !this.GetSpec.Equal(that1.GetSpec) { + return false + } + if len(this.StatusSet) != len(that1.StatusSet) { + return false + } + for i := range this.StatusSet { + if !this.StatusSet[i].Equal(that1.StatusSet[i]) { + return false + } + } + return true +} +func (this *ListResponse) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ListResponse) + if !ok { + that2, ok := that.(ListResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if len(this.Items) != len(that1.Items) { + return false + } + for i := range this.Items { + if !this.Items[i].Equal(that1.Items[i]) { + return false + } + } + if len(this.Errors) != len(that1.Errors) { + return false + } + for i := range this.Errors { + if !this.Errors[i].Equal(that1.Errors[i]) { + return false + } + } + return true +} +func (this *DeleteRequest) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*DeleteRequest) + if !ok { + that2, ok := that.(DeleteRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.Namespace != that1.Namespace { + return false + } + if this.Name != that1.Name { + return false + } + if this.FailIfReferred != that1.FailIfReferred { + return false + } + return true +} +func (this *CreateRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna_application.CreateRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.CreateResponse{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.ReplaceRequest{") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 4) + s = append(s, "&ztna_application.ReplaceResponse{") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.GetRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "ResponseFormat: "+fmt.Sprintf("%#v", this.ResponseFormat)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 14) + s = append(s, "&ztna_application.GetResponse{") + if this.CreateForm != nil { + s = append(s, "CreateForm: "+fmt.Sprintf("%#v", this.CreateForm)+",\n") + } + if this.ReplaceForm != nil { + s = append(s, "ReplaceForm: "+fmt.Sprintf("%#v", this.ReplaceForm)+",\n") + } + s = append(s, "ResourceVersion: "+fmt.Sprintf("%#v", this.ResourceVersion)+",\n") + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.Spec != nil { + s = append(s, "Spec: "+fmt.Sprintf("%#v", this.Spec)+",\n") + } + if this.Status != nil { + s = append(s, "Status: "+fmt.Sprintf("%#v", this.Status)+",\n") + } + if this.ReferringObjects != nil { + s = append(s, "ReferringObjects: "+fmt.Sprintf("%#v", this.ReferringObjects)+",\n") + } + if this.DeletedReferredObjects != nil { + s = append(s, "DeletedReferredObjects: "+fmt.Sprintf("%#v", this.DeletedReferredObjects)+",\n") + } + if this.DisabledReferredObjects != nil { + s = append(s, "DisabledReferredObjects: "+fmt.Sprintf("%#v", this.DisabledReferredObjects)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna_application.ListRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "LabelFilter: "+fmt.Sprintf("%#v", this.LabelFilter)+",\n") + s = append(s, "ReportFields: "+fmt.Sprintf("%#v", this.ReportFields)+",\n") + s = append(s, "ReportStatusFields: "+fmt.Sprintf("%#v", this.ReportStatusFields)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponseItem) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 17) + s = append(s, "&ztna_application.ListResponseItem{") + s = append(s, "Tenant: "+fmt.Sprintf("%#v", this.Tenant)+",\n") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "Uid: "+fmt.Sprintf("%#v", this.Uid)+",\n") + s = append(s, "Description: "+fmt.Sprintf("%#v", this.Description)+",\n") + s = append(s, "Disabled: "+fmt.Sprintf("%#v", this.Disabled)+",\n") + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%#v: %#v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + if this.Labels != nil { + s = append(s, "Labels: "+mapStringForLabels+",\n") + } + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%#v: %#v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + if this.Annotations != nil { + s = append(s, "Annotations: "+mapStringForAnnotations+",\n") + } + if this.OwnerView != nil { + s = append(s, "OwnerView: "+fmt.Sprintf("%#v", this.OwnerView)+",\n") + } + if this.Metadata != nil { + s = append(s, "Metadata: "+fmt.Sprintf("%#v", this.Metadata)+",\n") + } + if this.SystemMetadata != nil { + s = append(s, "SystemMetadata: "+fmt.Sprintf("%#v", this.SystemMetadata)+",\n") + } + if this.GetSpec != nil { + s = append(s, "GetSpec: "+fmt.Sprintf("%#v", this.GetSpec)+",\n") + } + if this.StatusSet != nil { + s = append(s, "StatusSet: "+fmt.Sprintf("%#v", this.StatusSet)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ListResponse) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna_application.ListResponse{") + if this.Items != nil { + s = append(s, "Items: "+fmt.Sprintf("%#v", this.Items)+",\n") + } + if this.Errors != nil { + s = append(s, "Errors: "+fmt.Sprintf("%#v", this.Errors)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *DeleteRequest) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.DeleteRequest{") + s = append(s, "Namespace: "+fmt.Sprintf("%#v", this.Namespace)+",\n") + s = append(s, "Name: "+fmt.Sprintf("%#v", this.Name)+",\n") + s = append(s, "FailIfReferred: "+fmt.Sprintf("%#v", this.FailIfReferred)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringPublicCrudapi(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// APIClient is the client API for API service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type APIClient interface { + // CreateSpecType + // + // x-displayName: "Create User" + Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) + // GetSpecType + // + // x-displayName: "Get User" + Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) + // List + // + // x-displayName: "List Application configuration" + // List the set of ztna_application in a namespace + List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) + // ReplaceSpecType + // + // x-displayName: "Replace User" + Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) + // Delete + // + // x-displayName: "Delete Application configuration" + // Delete the specified ztna_application + Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) +} + +type aPIClient struct { + cc *grpc.ClientConn +} + +func NewAPIClient(cc *grpc.ClientConn) APIClient { + return &aPIClient{cc} +} + +func (c *aPIClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + out := new(CreateResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.API/Create", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + out := new(GetResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.API/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.API/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Replace(ctx context.Context, in *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + out := new(ReplaceResponse) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.API/Replace", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *aPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*types.Empty, error) { + out := new(types.Empty) + err := c.cc.Invoke(ctx, "/ves.io.schema.ztna_application.API/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// APIServer is the server API for API service. +type APIServer interface { + // CreateSpecType + // + // x-displayName: "Create User" + Create(context.Context, *CreateRequest) (*CreateResponse, error) + // GetSpecType + // + // x-displayName: "Get User" + Get(context.Context, *GetRequest) (*GetResponse, error) + // List + // + // x-displayName: "List Application configuration" + // List the set of ztna_application in a namespace + List(context.Context, *ListRequest) (*ListResponse, error) + // ReplaceSpecType + // + // x-displayName: "Replace User" + Replace(context.Context, *ReplaceRequest) (*ReplaceResponse, error) + // Delete + // + // x-displayName: "Delete Application configuration" + // Delete the specified ztna_application + Delete(context.Context, *DeleteRequest) (*types.Empty, error) +} + +// UnimplementedAPIServer can be embedded to have forward compatible implementations. +type UnimplementedAPIServer struct { +} + +func (*UnimplementedAPIServer) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (*UnimplementedAPIServer) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (*UnimplementedAPIServer) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (*UnimplementedAPIServer) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Replace not implemented") +} +func (*UnimplementedAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*types.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} + +func RegisterAPIServer(s *grpc.Server, srv APIServer) { + s.RegisterService(&_API_serviceDesc, srv) +} + +func _API_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.API/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Create(ctx, req.(*CreateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.API/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Get(ctx, req.(*GetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.API/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).List(ctx, req.(*ListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Replace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReplaceRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Replace(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.API/Replace", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Replace(ctx, req.(*ReplaceRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _API_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(APIServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ves.io.schema.ztna_application.API/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(APIServer).Delete(ctx, req.(*DeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _API_serviceDesc = grpc.ServiceDesc{ + ServiceName: "ves.io.schema.ztna_application.API", + HandlerType: (*APIServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _API_Create_Handler, + }, + { + MethodName: "Get", + Handler: _API_Get_Handler, + }, + { + MethodName: "List", + Handler: _API_List_Handler, + }, + { + MethodName: "Replace", + Handler: _API_Replace_Handler, + }, + { + MethodName: "Delete", + Handler: _API_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "ves.io/schema/ztna_application/public_crudapi.proto", +} + +func (m *CreateRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CreateResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x1a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *GetRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ResponseFormat != 0 { + i = encodeVarintPublicCrudapi(dAtA, i, uint64(m.ResponseFormat)) + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Status) > 0 { + for iNdEx := len(m.Status) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Status[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x9 + i-- + dAtA[i] = 0xe2 + i-- + dAtA[i] = 0x82 + } + } + if len(m.DisabledReferredObjects) > 0 { + for iNdEx := len(m.DisabledReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DisabledReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + } + } + if len(m.DeletedReferredObjects) > 0 { + for iNdEx := len(m.DeletedReferredObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.DeletedReferredObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + } + if len(m.ReferringObjects) > 0 { + for iNdEx := len(m.ReferringObjects) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.ReferringObjects[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if m.Spec != nil { + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + if len(m.ResourceVersion) > 0 { + i -= len(m.ResourceVersion) + copy(dAtA[i:], m.ResourceVersion) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ResourceVersion))) + i-- + dAtA[i] = 0x22 + } + if m.ReplaceForm != nil { + { + size, err := m.ReplaceForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.CreateForm != nil { + { + size, err := m.CreateForm.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} + +func (m *ListRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ReportStatusFields) > 0 { + for iNdEx := len(m.ReportStatusFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportStatusFields[iNdEx]) + copy(dAtA[i:], m.ReportStatusFields[iNdEx]) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportStatusFields[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + if len(m.ReportFields) > 0 { + for iNdEx := len(m.ReportFields) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ReportFields[iNdEx]) + copy(dAtA[i:], m.ReportFields[iNdEx]) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.ReportFields[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.LabelFilter) > 0 { + i -= len(m.LabelFilter) + copy(dAtA[i:], m.LabelFilter) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.LabelFilter))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponseItem) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponseItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponseItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.SystemMetadata != nil { + { + size, err := m.SystemMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x72 + } + if m.Metadata != nil { + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x6a + } + if m.Disabled { + i-- + if m.Disabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x60 + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x5a + } + if len(m.Annotations) > 0 { + for k := range m.Annotations { + v := m.Annotations[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x52 + } + } + if m.OwnerView != nil { + { + size, err := m.OwnerView.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + if len(m.StatusSet) > 0 { + for iNdEx := len(m.StatusSet) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.StatusSet[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x42 + } + } + if m.GetSpec != nil { + { + size, err := m.GetSpec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + if len(m.Tenant) > 0 { + i -= len(m.Tenant) + copy(dAtA[i:], m.Tenant) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Tenant))) + i-- + dAtA[i] = 0x32 + } + if len(m.Labels) > 0 { + for k := range m.Labels { + v := m.Labels[k] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(k) + copy(dAtA[i:], k) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = encodeVarintPublicCrudapi(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x22 + } + } + if len(m.Uid) > 0 { + i -= len(m.Uid) + copy(dAtA[i:], m.Uid) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Uid))) + i-- + dAtA[i] = 0x1a + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ListResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ListResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Errors) > 0 { + for iNdEx := len(m.Errors) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Errors[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Items) > 0 { + for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintPublicCrudapi(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *DeleteRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *DeleteRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *DeleteRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.FailIfReferred { + i-- + if m.FailIfReferred { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0x12 + } + if len(m.Namespace) > 0 { + i -= len(m.Namespace) + copy(dAtA[i:], m.Namespace) + i = encodeVarintPublicCrudapi(dAtA, i, uint64(len(m.Namespace))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintPublicCrudapi(dAtA []byte, offset int, v uint64) int { + offset -= sovPublicCrudapi(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *CreateRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *CreateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ReplaceRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ReplaceResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *GetRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.ResponseFormat != 0 { + n += 1 + sovPublicCrudapi(uint64(m.ResponseFormat)) + } + return n +} + +func (m *GetResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CreateForm != nil { + l = m.CreateForm.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.ReplaceForm != nil { + l = m.ReplaceForm.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.ResourceVersion) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Spec != nil { + l = m.Spec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.ReferringObjects) > 0 { + for _, e := range m.ReferringObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.DeletedReferredObjects) > 0 { + for _, e := range m.DeletedReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.DisabledReferredObjects) > 0 { + for _, e := range m.DisabledReferredObjects { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.Status) > 0 { + for _, e := range m.Status { + l = e.Size() + n += 3 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *ListRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.LabelFilter) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.ReportFields) > 0 { + for _, s := range m.ReportFields { + l = len(s) + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.ReportStatusFields) > 0 { + for _, s := range m.ReportStatusFields { + l = len(s) + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *ListResponseItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Uid) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) + } + } + l = len(m.Tenant) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.GetSpec != nil { + l = m.GetSpec.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.StatusSet) > 0 { + for _, e := range m.StatusSet { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if m.OwnerView != nil { + l = m.OwnerView.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if len(m.Annotations) > 0 { + for k, v := range m.Annotations { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovPublicCrudapi(uint64(len(k))) + 1 + len(v) + sovPublicCrudapi(uint64(len(v))) + n += mapEntrySize + 1 + sovPublicCrudapi(uint64(mapEntrySize)) + } + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.Disabled { + n += 2 + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.SystemMetadata != nil { + l = m.SystemMetadata.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + return n +} + +func (m *ListResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + if len(m.Errors) > 0 { + for _, e := range m.Errors { + l = e.Size() + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + } + return n +} + +func (m *DeleteRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Namespace) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + l = len(m.Name) + if l > 0 { + n += 1 + l + sovPublicCrudapi(uint64(l)) + } + if m.FailIfReferred { + n += 2 + } + return n +} + +func sovPublicCrudapi(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozPublicCrudapi(x uint64) (n int) { + return sovPublicCrudapi(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *CreateRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectCreateMetaType", "schema.ObjectCreateMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "CreateSpecType", "CreateSpecType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateResponse{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceRequest{`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectReplaceMetaType", "schema.ObjectReplaceMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "ReplaceSpecType", "ReplaceSpecType", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceResponse{`, + `}`, + }, "") + return s +} +func (this *GetRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ResponseFormat:` + fmt.Sprintf("%v", this.ResponseFormat) + `,`, + `}`, + }, "") + return s +} +func (this *GetResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForReferringObjects := "[]*ObjectRefType{" + for _, f := range this.ReferringObjects { + repeatedStringForReferringObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForReferringObjects += "}" + repeatedStringForDeletedReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DeletedReferredObjects { + repeatedStringForDeletedReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDeletedReferredObjects += "}" + repeatedStringForDisabledReferredObjects := "[]*ObjectRefType{" + for _, f := range this.DisabledReferredObjects { + repeatedStringForDisabledReferredObjects += strings.Replace(fmt.Sprintf("%v", f), "ObjectRefType", "schema.ObjectRefType", 1) + "," + } + repeatedStringForDisabledReferredObjects += "}" + repeatedStringForStatus := "[]*StatusObject{" + for _, f := range this.Status { + repeatedStringForStatus += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "StatusObject", 1) + "," + } + repeatedStringForStatus += "}" + s := strings.Join([]string{`&GetResponse{`, + `CreateForm:` + strings.Replace(this.CreateForm.String(), "CreateRequest", "CreateRequest", 1) + `,`, + `ReplaceForm:` + strings.Replace(this.ReplaceForm.String(), "ReplaceRequest", "ReplaceRequest", 1) + `,`, + `ResourceVersion:` + fmt.Sprintf("%v", this.ResourceVersion) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "GetSpecType", "GetSpecType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `ReferringObjects:` + repeatedStringForReferringObjects + `,`, + `DeletedReferredObjects:` + repeatedStringForDeletedReferredObjects + `,`, + `DisabledReferredObjects:` + repeatedStringForDisabledReferredObjects + `,`, + `Status:` + repeatedStringForStatus + `,`, + `}`, + }, "") + return s +} +func (this *ListRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `LabelFilter:` + fmt.Sprintf("%v", this.LabelFilter) + `,`, + `ReportFields:` + fmt.Sprintf("%v", this.ReportFields) + `,`, + `ReportStatusFields:` + fmt.Sprintf("%v", this.ReportStatusFields) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponseItem) String() string { + if this == nil { + return "nil" + } + repeatedStringForStatusSet := "[]*StatusObject{" + for _, f := range this.StatusSet { + repeatedStringForStatusSet += strings.Replace(fmt.Sprintf("%v", f), "StatusObject", "StatusObject", 1) + "," + } + repeatedStringForStatusSet += "}" + keysForLabels := make([]string, 0, len(this.Labels)) + for k, _ := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k, _ := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + s := strings.Join([]string{`&ListResponseItem{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `Uid:` + fmt.Sprintf("%v", this.Uid) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Tenant:` + fmt.Sprintf("%v", this.Tenant) + `,`, + `GetSpec:` + strings.Replace(fmt.Sprintf("%v", this.GetSpec), "GetSpecType", "GetSpecType", 1) + `,`, + `StatusSet:` + repeatedStringForStatusSet + `,`, + `OwnerView:` + strings.Replace(fmt.Sprintf("%v", this.OwnerView), "ViewRefType", "schema.ViewRefType", 1) + `,`, + `Annotations:` + mapStringForAnnotations + `,`, + `Description:` + fmt.Sprintf("%v", this.Description) + `,`, + `Disabled:` + fmt.Sprintf("%v", this.Disabled) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ObjectGetMetaType", "schema.ObjectGetMetaType", 1) + `,`, + `SystemMetadata:` + strings.Replace(fmt.Sprintf("%v", this.SystemMetadata), "SystemObjectGetMetaType", "schema.SystemObjectGetMetaType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ListResponse) String() string { + if this == nil { + return "nil" + } + repeatedStringForItems := "[]*ListResponseItem{" + for _, f := range this.Items { + repeatedStringForItems += strings.Replace(f.String(), "ListResponseItem", "ListResponseItem", 1) + "," + } + repeatedStringForItems += "}" + repeatedStringForErrors := "[]*ErrorType{" + for _, f := range this.Errors { + repeatedStringForErrors += strings.Replace(fmt.Sprintf("%v", f), "ErrorType", "schema.ErrorType", 1) + "," + } + repeatedStringForErrors += "}" + s := strings.Join([]string{`&ListResponse{`, + `Items:` + repeatedStringForItems + `,`, + `Errors:` + repeatedStringForErrors + `,`, + `}`, + }, "") + return s +} +func (this *DeleteRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&DeleteRequest{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `FailIfReferred:` + fmt.Sprintf("%v", this.FailIfReferred) + `,`, + `}`, + }, "") + return s +} +func valueToStringPublicCrudapi(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *CreateRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectCreateMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &CreateSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectReplaceMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ResponseFormat", wireType) + } + m.ResponseFormat = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ResponseFormat |= GetResponseFormatCode(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CreateForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CreateForm == nil { + m.CreateForm = &CreateRequest{} + } + if err := m.CreateForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReplaceForm", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ReplaceForm == nil { + m.ReplaceForm = &ReplaceRequest{} + } + if err := m.ReplaceForm.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceVersion = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReferringObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReferringObjects = append(m.ReferringObjects, &schema.ObjectRefType{}) + if err := m.ReferringObjects[len(m.ReferringObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DeletedReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DeletedReferredObjects = append(m.DeletedReferredObjects, &schema.ObjectRefType{}) + if err := m.DeletedReferredObjects[len(m.DeletedReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisabledReferredObjects", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DisabledReferredObjects = append(m.DisabledReferredObjects, &schema.ObjectRefType{}) + if err := m.DisabledReferredObjects[len(m.DisabledReferredObjects)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 20000: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Status = append(m.Status, &StatusObject{}) + if err := m.Status[len(m.Status)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelFilter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LabelFilter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportFields = append(m.ReportFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ReportStatusFields", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ReportStatusFields = append(m.ReportStatusFields, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponseItem) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponseItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponseItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Uid", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Uid = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Labels[mapkey] = mapvalue + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Tenant", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Tenant = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GetSpec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GetSpec == nil { + m.GetSpec = &GetSpecType{} + } + if err := m.GetSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StatusSet", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StatusSet = append(m.StatusSet, &StatusObject{}) + if err := m.StatusSet[len(m.StatusSet)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OwnerView", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.OwnerView == nil { + m.OwnerView = &schema.ViewRefType{} + } + if err := m.OwnerView.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Annotations == nil { + m.Annotations = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.Annotations[mapkey] = mapvalue + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Disabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Disabled = bool(v != 0) + case 13: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &schema.ObjectGetMetaType{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 14: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SystemMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SystemMetadata == nil { + m.SystemMetadata = &schema.SystemObjectGetMetaType{} + } + if err := m.SystemMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &ListResponseItem{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Errors", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Errors = append(m.Errors, &schema.ErrorType{}) + if err := m.Errors[len(m.Errors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeleteRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DeleteRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeleteRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthPublicCrudapi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthPublicCrudapi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field FailIfReferred", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.FailIfReferred = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipPublicCrudapi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthPublicCrudapi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipPublicCrudapi(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowPublicCrudapi + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthPublicCrudapi + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupPublicCrudapi + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthPublicCrudapi + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthPublicCrudapi = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowPublicCrudapi = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupPublicCrudapi = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna_application/public_crudapi.pb.gw.go b/pbgo/extschema/schema/ztna_application/public_crudapi.pb.gw.go new file mode 100644 index 000000000..af0e51062 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/public_crudapi.pb.gw.go @@ -0,0 +1,716 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: ves.io/schema/ztna_application/public_crudapi.proto + +/* +Package ztna_application is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package ztna_application + +import ( + "context" + "io" + "net/http" + + "github.com/golang/protobuf/proto" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + "github.com/grpc-ecosystem/grpc-gateway/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/status" +) + +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray + +func request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Create_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + msg, err := server.Create(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_Get_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} +) + +func request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Get(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Get_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_Get_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Get(ctx, &protoReq) + return msg, metadata, err + +} + +var ( + filter_API_List_0 = &utilities.DoubleArray{Encoding: map[string]int{"namespace": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := req.ParseForm(); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.List(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_List_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ListRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_API_List_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.List(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + val, ok = pathParams["metadata.name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.name") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.name", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.name", err) + } + + msg, err := client.Replace(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Replace_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ReplaceRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["metadata.namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.namespace") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.namespace", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.namespace", err) + } + + val, ok = pathParams["metadata.name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "metadata.name") + } + + err = runtime.PopulateFieldFromPath(&protoReq, "metadata.name", val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "metadata.name", err) + } + + msg, err := server.Replace(ctx, &protoReq) + return msg, metadata, err + +} + +func request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client APIClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_API_Delete_0(ctx context.Context, marshaler runtime.Marshaler, server APIServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["namespace"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "namespace") + } + + protoReq.Namespace, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "namespace", err) + } + + val, ok = pathParams["name"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name") + } + + protoReq.Name, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) + } + + msg, err := server.Delete(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterAPIHandlerServer registers the http handlers for service API to "mux". +// UnaryRPC :call APIServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +func RegisterAPIHandlerServer(ctx context.Context, mux *runtime.ServeMux, server APIServer) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Create_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Get_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_List_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Replace_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_API_Delete_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterAPIHandlerFromEndpoint is same as RegisterAPIHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAPIHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAPIHandler(ctx, mux, conn) +} + +// RegisterAPIHandler registers the http handlers for service API to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAPIHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAPIHandlerClient(ctx, mux, NewAPIClient(conn)) +} + +// RegisterAPIHandlerClient registers the http handlers for service API +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "APIClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "APIClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "APIClient" to call the correct interceptors. +func RegisterAPIHandlerClient(ctx context.Context, mux *runtime.ServeMux, client APIClient) error { + + mux.Handle("POST", pattern_API_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_Get_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Get_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Get_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_API_List_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_List_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_List_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_API_Replace_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Replace_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Replace_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_API_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_API_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_API_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_API_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "metadata.namespace", "ztna_applications"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Get_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "ztna_applications", "name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3}, []string{"public", "namespaces", "namespace", "ztna_applications"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Replace_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "metadata.namespace", "ztna_applications", "metadata.name"}, "", runtime.AssumeColonVerbOpt(false))) + + pattern_API_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"public", "namespaces", "namespace", "ztna_applications", "name"}, "", runtime.AssumeColonVerbOpt(false))) +) + +var ( + forward_API_Create_0 = runtime.ForwardResponseMessage + + forward_API_Get_0 = runtime.ForwardResponseMessage + + forward_API_List_0 = runtime.ForwardResponseMessage + + forward_API_Replace_0 = runtime.ForwardResponseMessage + + forward_API_Delete_0 = runtime.ForwardResponseMessage +) diff --git a/pbgo/extschema/schema/ztna_application/public_crudapi.vesapi.go b/pbgo/extschema/schema/ztna_application/public_crudapi.vesapi.go new file mode 100644 index 000000000..ccfd8ae4f --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/public_crudapi.vesapi.go @@ -0,0 +1,3989 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna_application + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "net/http" + "strings" + + google_protobuf "github.com/gogo/protobuf/types" + "github.com/grpc-ecosystem/grpc-gateway/runtime" + multierror "github.com/hashicorp/go-multierror" + "go.uber.org/zap" + "google.golang.org/grpc" + + "gopkg.volterra.us/stdlib/client" + "gopkg.volterra.us/stdlib/client/configapi" + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + "gopkg.volterra.us/stdlib/server" + "gopkg.volterra.us/stdlib/svcfw" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +const ( + // CreateRequestFQN is the fully-qualified-name of the CreateRequest message + CreateRequestFQN = "ves.io.schema.ztna_application.CreateRequest" + // CreateResponseFQN is the fully-qualified-name of the CreateResponse message + CreateResponseFQN = "ves.io.schema.ztna_application.CreateResponse" + // ReplaceRequestFQN is the fully-qualified-name of the ReplaceRequest message + ReplaceRequestFQN = "ves.io.schema.ztna_application.ReplaceRequest" + // ReplaceResponseFQN is the fully-qualified-name of the ReplaceResponse message + ReplaceResponseFQN = "ves.io.schema.ztna_application.ReplaceResponse" + // GetRequestFQN is the fully-qualified-name of the GetRequest message + GetRequestFQN = "ves.io.schema.ztna_application.GetRequest" + // GetResponseFQN is the fully-qualified-name of the GetResponse message + GetResponseFQN = "ves.io.schema.ztna_application.GetResponse" + // ListRequestFQN is the fully-qualified-name of the ListRequest message + ListRequestFQN = "ves.io.schema.ztna_application.ListRequest" + // ListResponseFQN is the fully-qualified-name of the ListResponse message + ListResponseFQN = "ves.io.schema.ztna_application.ListResponse" + // DeleteRequestFQN is the fully-qualified-name of the DeleteRequest message + DeleteRequestFQN = "ves.io.schema.ztna_application.DeleteRequest" + // DeleteResponseFQN is the fully-qualified-name of the DeleteResponse message + DeleteResponseFQN = "ves.io.schema.ztna_application.DeleteResponse" +) + +// CLIENT side +func NewCreateRequest(e db.Entry) (*CreateRequest, error) { + r := &CreateRequest{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewReplaceRequest(e db.Entry) (*ReplaceRequest, error) { + r := &ReplaceRequest{} + if e == nil { + return r, nil + } + r.FromObject(e) + return r, nil +} + +func NewGetRequest(key string, opts ...server.CRUDCallOpt) (*GetRequest, error) { + strs := strings.Split(key, "/") + if len(strs) != 2 { + return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) + } + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + var rspFmt GetResponseFormatCode + switch ccOpts.ResponseFormat { + case server.DefaultForm: + rspFmt = GET_RSP_FORMAT_DEFAULT + case server.CreateRequestForm: + rspFmt = GET_RSP_FORMAT_FOR_CREATE + case server.ReplaceRequestForm: + rspFmt = GET_RSP_FORMAT_FOR_REPLACE + case server.StatusForm: + rspFmt = GET_RSP_FORMAT_STATUS + case server.GetSpecForm: + rspFmt = GET_RSP_FORMAT_READ + case server.BrokenRefsForm: + rspFmt = GET_RSP_FORMAT_BROKEN_REFERENCES + default: + return nil, fmt.Errorf("Unsupported Response Format %s", ccOpts.ResponseFormat) + } + return &GetRequest{Namespace: strs[0], Name: strs[1], ResponseFormat: rspFmt}, nil +} +func (m *GetRequest) ResponseFormatString() string { + return m.GetResponseFormat().String() +} + +func NewListRequest(opts ...server.CRUDCallOpt) *ListRequest { + ccOpts := server.NewCRUDCallOpts() + for _, o := range opts { + o(ccOpts) + } + return &ListRequest{Namespace: ccOpts.Namespace} +} + +func NewDeleteRequest(key string) (*DeleteRequest, error) { + strs := strings.Split(key, "/") + if len(strs) != 2 { + return nil, fmt.Errorf("key must have namespace and name separated by /, but found %s", key) + } + return &DeleteRequest{Namespace: strs[0], Name: strs[1]}, nil +} + +// GRPC Client +type crudAPIGrpcClient struct { + conn *grpc.ClientConn + grpcClient APIClient +} + +func (c *crudAPIGrpcClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + var req *CreateRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*CreateRequest) + if !ok { + return nil, fmt.Errorf("%T is not *CreateRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Create") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + } + + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Create(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + obj := NewDBObject(nil) + rsp.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rsp, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIGrpcClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + var req *ReplaceRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*ReplaceRequest) + if !ok { + return fmt.Errorf("%T is not *ReplaceRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Replace") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return err + } + } + } + + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.grpcClient.Replace(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return nil + +} + +func (c *crudAPIGrpcClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Get(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + return nil, err + +} + +func (c *crudAPIGrpcClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIGrpcClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIGrpcClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + req := NewListRequest(opts...) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + switch len(cco.LabelFilter) { + case 0: + case 1: + req.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + req.ReportFields = cco.ReportFields + req.ReportStatusFields = cco.ReportStatusFields + rsp, err := c.grpcClient.List(ctx, req, cco.GrpcCallOpts...) + if err != nil { + return nil, err + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIGrpcClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIGrpcClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + req, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + ctx = client.AddHdrsToCtx(cco.Headers, ctx) + + rsp, err := c.grpcClient.Delete(ctx, req, cco.GrpcCallOpts...) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func NewCRUDAPIGrpcClient(cc *grpc.ClientConn) server.CRUDClient { + ccl := &crudAPIGrpcClient{cc, NewAPIClient(cc)} + return ccl +} + +// REST Client +type crudAPIRestClient struct { + baseURL string + client http.Client +} + +func (c *crudAPIRestClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + got := 0 + if e != nil { + got++ + } + if cco.RequestProto != nil { + got++ + } + if cco.RequestJSON != "" { + got++ + } + if got != 1 { + return nil, fmt.Errorf("Only one of entry(%v), WithRequestProto()(%v) or WithRequestJSON()(%v) should be specified", e, cco.RequestProto, cco.RequestJSON) + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + var req *CreateRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*CreateRequest) + if !ok { + return nil, fmt.Errorf("%T is not *CreateRequest", cco.RequestProto) + } + req = r + } else { + r, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + req = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + } + + j, err := codec.ToJSON(req, codec.ToWithUseProtoFieldName()) + if err != nil { + return nil, errors.Wrap(err, "RestClient Create") + } + jsn = j + } + + var namespace string + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return nil, errors.Wrapf(err, "Unmarshaling json to find namespace/name") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return nil, fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + if val, ok := md["namespace"].(string); ok { + namespace = val + } else { + return nil, fmt.Errorf("Request %s does not have 'metadata.namespace'", jsn) + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztna_applications", c.baseURL, namespace) + + hReq, err := http.NewRequest("POST", url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + client.AddHdrsToReq(cco.Headers, hReq) + hReq.Header.Set("Content-Type", "application/json") + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient create") + } + + rspo := &CreateResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + configapi.TranscribeCall(ctx, jsn, string(body)) + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + + obj := NewDBObject(nil) + rspo.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rspo, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIRestClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + got := 0 + if e != nil { + got++ + } + if cco.RequestProto != nil { + got++ + } + if cco.RequestJSON != "" { + got++ + } + if got != 1 { + return fmt.Errorf("Only one of entry(%v), WithRequestProto()(%v) or WithRequestJSON()(%v) should be specified", e, cco.RequestProto, cco.RequestJSON) + } + + var jsn string + if cco.RequestJSON != "" { + jsn = cco.RequestJSON + } else { + var rReq *ReplaceRequest + if cco.RequestProto != nil { + r, ok := cco.RequestProto.(*ReplaceRequest) + if !ok { + return fmt.Errorf("%T is not *ReplaceRequest", cco.RequestProto) + } + rReq = r + } else { + r, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + rReq = r + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, rReq); err != nil { + return err + } + } + } + + rReq.ResourceVersion = cco.ResourceVersion + j, err := codec.ToJSON(rReq, codec.ToWithUseProtoFieldName()) + if err != nil { + return errors.Wrap(err, "RestClient Replace") + } + jsn = j + } + + var namespace, name string + _ = namespace + reqMap := make(map[string]interface{}) + if err := json.Unmarshal([]byte(jsn), &reqMap); err != nil { + return errors.Wrapf(err, "Unmarshaling json to find namespace/name") + } + md, ok := reqMap["metadata"].(map[string]interface{}) + if !ok { + return fmt.Errorf("Request %s does not have 'metadata'", jsn) + } + + if val, ok := md["namespace"].(string); ok { + namespace = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.namespace'", jsn) + } + + if val, ok := md["name"].(string); ok { + name = val + } else { + return fmt.Errorf("Request %s does not have 'metadata.name'", jsn) + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztna_applications/%s", c.baseURL, namespace, name) + + hReq, err := http.NewRequest(http.MethodPut, url, bytes.NewBuffer([]byte(jsn))) + if err != nil { + return errors.Wrap(err, "RestClient replace") + } + hReq = hReq.WithContext(ctx) + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful PUT at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + if _, err := io.ReadAll(rsp.Body); err != nil { + return errors.Wrap(err, "RestClient replace") + } + + configapi.TranscribeCall(ctx, jsn, nil) + return nil + +} + +func (c *crudAPIRestClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztna_applications/%s", c.baseURL, req.Namespace, req.Name) + hReq, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + q.Add("response_format", fmt.Sprintf("%d", req.ResponseFormat)) + hReq.URL.RawQuery += q.Encode() + + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful GET at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient Get") + } + + rspo := &GetResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rspo.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + configapi.TranscribeCall(ctx, req, rspo) + return rspo, nil +} + +func (c *crudAPIRestClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIRestClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + + return nil, err + +} + +func (c *crudAPIRestClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIRestClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIRestClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + req := NewListRequest(opts...) + _ = req + url := fmt.Sprintf("%s/public/namespaces/%s/ztna_applications", c.baseURL, req.Namespace) + + hReq, err := http.NewRequest("GET", url, nil) + if err != nil { + return nil, err + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + q := hReq.URL.Query() + switch len(cco.LabelFilter) { + case 0: + case 1: + q.Add("label_filter", cco.LabelFilter[0]) + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + for _, fName := range cco.ReportFields { + q.Add("report_fields", fName) + } + for _, fName := range cco.ReportStatusFields { + q.Add("report_status_fields", fName) + } + + hReq.URL.RawQuery += q.Encode() + rsp, err := c.client.Do(hReq) + if err != nil { + return nil, err + } + defer rsp.Body.Close() + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return nil, fmt.Errorf("Unsuccessful List at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + body, err := io.ReadAll(rsp.Body) + if err != nil { + return nil, errors.Wrap(err, "RestClient List") + } + + rspo := &ListResponse{} + if err := codec.FromJSON(string(body), rspo); err != nil { + return nil, errors.Wrap(err, "Converting json to response protobuf message") + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rspo + cco.OutCallResponse.JSON = string(body) + } + configapi.TranscribeCall(ctx, req, rspo) + return rspo, nil +} + +func (c *crudAPIRestClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIRestClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + dReq, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + url := fmt.Sprintf("%s/public/namespaces/%s/ztna_applications/%s", c.baseURL, dReq.Namespace, dReq.Name) + hReq, err := http.NewRequest(http.MethodDelete, url, nil) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + hReq = hReq.WithContext(ctx) + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + client.AddHdrsToReq(cco.Headers, hReq) + + rsp, err := c.client.Do(hReq) + if err != nil { + return err + } + defer rsp.Body.Close() + + if rsp.StatusCode != http.StatusOK { + body, err := io.ReadAll(rsp.Body) + if err != nil { + return fmt.Errorf("Unsuccessful POST at URL %s, status code %d, body %s, err %s", url, rsp.StatusCode, body, err.Error()) + } + return fmt.Errorf("Unsuccessful DELETE at URL %s, status code %d, body %s", url, rsp.StatusCode, body) + } + + _, err = io.ReadAll(rsp.Body) + if err != nil { + return errors.Wrap(err, "RestClient delete") + } + configapi.TranscribeCall(ctx, dReq, nil) + + return nil + +} + +func NewCRUDAPIRestClient(baseURL string, cl http.Client) server.CRUDClient { + var bURL string + if strings.HasSuffix(baseURL, "/") { + bURL = baseURL[:len(baseURL)-1] + } else { + bURL = baseURL + } + crcl := &crudAPIRestClient{bURL, cl} + return crcl +} + +// INPROC Client (satisfying APIClient interface) +type APIInprocClient struct { + svc svcfw.Service +} + +func (c *APIInprocClient) Create(ctx context.Context, req *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.API.Create") + rsp, err := oah.Create(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) Replace(ctx context.Context, req *ReplaceRequest, opts ...grpc.CallOption) (*ReplaceResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.API.Replace") + if rsp, err := oah.Replace(ctx, req); err != nil { + return rsp, err + } + return NewObjectReplaceRsp(nil) +} + +func (c *APIInprocClient) Get(ctx context.Context, req *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.API.Get") + rsp, err := oah.Get(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) List(ctx context.Context, req *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.API.List") + rsp, err := oah.List(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func (c *APIInprocClient) Delete(ctx context.Context, req *DeleteRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error) { + ah := c.svc.GetAPIHandler("ves.io.schema.ztna_application.API") + oah, ok := ah.(*APISrv) + if !ok { + err := fmt.Errorf("No CRUD Server for ves.io.schema.ztna_application") + return nil, server.GRPCStatusFromError(server.MaybePublicRestError(ctx, err)).Err() + } + ctx = server.ContextWithRpcFQN(ctx, "ves.io.schema.ztna_application.API.Delete") + rsp, err := oah.Delete(ctx, req) + if err != nil { + return rsp, err + } + return rsp, nil +} + +func NewAPIInprocClient(svc svcfw.Service) APIClient { + return &APIInprocClient{svc: svc} +} + +// INPROC CRUD Client (satisfying server.CRUDClient interface) +type crudAPIInprocClient struct { + cl APIClient +} + +func (c *crudAPIInprocClient) Create(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) (db.Entry, error) { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Creating new create request") + } + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return nil, err + } + } + + rsp, err := c.cl.Create(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + if err != nil { + return nil, err + } + obj := NewDBObject(nil) + rsp.ToObject(obj) + if cco.MsgToObjConverter != nil { + if err := cco.MsgToObjConverter(rsp, obj); err != nil { + return nil, err + } + } + return obj, nil + +} + +func (c *crudAPIInprocClient) Replace(ctx context.Context, e db.Entry, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewReplaceRequest(e) + if err != nil { + return errors.Wrap(err, "Creating new replace request") + } + if cco.ObjToMsgConverter != nil { + if err := cco.ObjToMsgConverter(e, req); err != nil { + return err + } + } + + req.ResourceVersion = cco.ResourceVersion + + rsp, err := c.cl.Replace(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func (c *crudAPIInprocClient) GetRaw(ctx context.Context, key string, opts ...server.CRUDCallOpt) (*GetResponse, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + req, err := NewGetRequest(key, opts...) + if err != nil { + return nil, errors.Wrap(err, "Get") + } + rsp, err := c.cl.Get(ctx, req) + if err != nil { + return nil, err + } + if cco.OutResourceVersion != nil { + *cco.OutResourceVersion = rsp.ResourceVersion + } + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, nil +} + +func (c *crudAPIInprocClient) Get(ctx context.Context, key string, opts ...server.CRUDCallOpt) (db.Entry, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + if gRsp != nil { + obj := NewDBObject(nil) + gRsp.ToObject(obj) + return obj, err + } + return nil, err + +} + +func (c *crudAPIInprocClient) GetDetail(ctx context.Context, key string, nef db.NewEntryFunc, opts ...server.CRUDCallOpt) (*server.GetResponse, error) { + + gRsp, err := c.GetRaw(ctx, key, opts...) + respDetail := server.GetResponse{} + if gRsp != nil { + respDetail.Entry = NewDBObject(nil) + gRsp.ToObject(respDetail.Entry) + for _, status := range gRsp.Status { + respDetail.BackRefs = append(respDetail.BackRefs, NewDBStatusObject(status)) + } + + return &respDetail, err + } + + return nil, err + +} + +func (c *crudAPIInprocClient) ListIDs(ctx context.Context, opts ...server.CRUDCallOpt) ([]string, error) { + + idSet := []string{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return idSet, err + } + for _, li := range listRsp.GetItems() { + idSet = append(idSet, li.GetUid()) + } + return idSet, err + +} + +func (c *crudAPIInprocClient) ListItems(ctx context.Context, opts ...server.CRUDCallOpt) ([]server.ListItem, error) { + + sliSet := []server.ListItem{} + listRsp, err := c.List(ctx, opts...) + if listRsp == nil { + return sliSet, err + } + for _, li := range listRsp.GetItems() { + sliSet = append(sliSet, li) + } + return sliSet, err + +} + +func (c *crudAPIInprocClient) List(ctx context.Context, opts ...server.CRUDCallOpt) (*ListResponse, error) { + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req := NewListRequest(opts...) + switch len(cco.LabelFilter) { + case 0: + case 1: + req.LabelFilter = cco.LabelFilter[0] + default: + return nil, fmt.Errorf("Only one label selector expression can be provided, got %d: %s", len(cco.LabelFilter), cco.LabelFilter) + } + + rsp, err := c.cl.List(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return rsp, err +} + +func (c *crudAPIInprocClient) ListStream(ctx context.Context, opts ...server.CRUDCallOpt) (server.ListStreamRsp, error) { + return nil, fmt.Errorf("Not implemented") +} + +func (c *crudAPIInprocClient) Delete(ctx context.Context, key string, opts ...server.CRUDCallOpt) error { + + cco := server.NewCRUDCallOpts() + for _, opt := range opts { + opt(cco) + } + + req, err := NewDeleteRequest(key) + if err != nil { + return errors.Wrap(err, "Delete") + } + + rsp, err := c.cl.Delete(ctx, req) + + if cco.OutCallResponse != nil { + cco.OutCallResponse.ProtoMsg = rsp + } + return err + +} + +func newCRUDAPIInprocClient(svc svcfw.Service) *crudAPIInprocClient { + return &crudAPIInprocClient{cl: NewAPIInprocClient(svc)} +} + +func NewCRUDAPIInprocClient(svc svcfw.Service) server.CRUDClient { + return newCRUDAPIInprocClient(svc) +} + +// SERVER side +type APISrv struct { + oType string + tblName string + sf svcfw.Service + + opts *server.CrudServerOpts + // derived from opts + apiWrapper *server.DBAPIWrapper + + // resource handler function pointers +} + +func (s *APISrv) validateTransport(ctx context.Context) error { + if s.sf.IsTransportNotSupported("ves.io.schema.ztna_application.API", server.TransportFromContext(ctx)) { + userMsg := fmt.Sprintf("ves.io.schema.ztna_application.API not allowed in transport '%s'", server.TransportFromContext(ctx)) + err := svcfw.NewPermissionDeniedError(userMsg, fmt.Errorf(userMsg)) + return server.GRPCStatusFromError(err).Err() + } + return nil +} + +func (s *APISrv) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.API.Create"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna_application.API.Create"), zap.Error(err)) + } + } + } + reqMsgFQN := "ves.io.schema.ztna_application.CreateRequest" + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, reqMsgFQN, req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + obj := NewDBObject(nil) + req.ToObject(obj) + if conv, exists := s.sf.Config().MsgToObjConverters[reqMsgFQN]; exists { + if err := conv(req, obj); err != nil { + return nil, err + } + } + obj.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + rsrcReq := &server.ResourceCreateRequest{Entry: obj} + rsrcRsp, err := s.opts.RsrcHandler.CreateFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "CreateResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectCreateRsp(rsrcRsp.Entry) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "CreateResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + rspMsgFQN := "ves.io.schema.ztna_application.CreateResponse" + if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { + if err := conv(rsrcRsp.Entry, rsp); err != nil { + return nil, err + } + } + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.sf, "ves.io.schema.ztna_application.API.CreateResponse", rsp)...) + return rsp, nil +} + +func (s *APISrv) Replace(ctx context.Context, req *ReplaceRequest) (*ReplaceResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if req.Spec == nil { + err := fmt.Errorf("Nil spec in Replace Request") + return nil, svcfw.NewInvalidInputError(err.Error(), err) + } + if err := svcfw.FillOneofDefaultChoice(ctx, s.sf, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Filling oneof default choice")) + return nil, server.GRPCStatusFromError(err).Err() + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.API.Replace"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna_application.API.Replace"), zap.Error(err)) + } + } + } + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.ztna_application.API.ReplaceRequest", req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + rsrcReq := &server.ResourceReplaceRequest{RequestMsg: req} + rsrcRsp, err := s.opts.RsrcHandler.ReplaceFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "ReplaceResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectReplaceRsp(rsrcRsp.Entry) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "ReplaceResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + bodyFields = append(bodyFields, svcfw.GenAuditRspBodyFields(ctx, s.sf, "ves.io.schema.ztna_application.API.ReplaceResponse", rsp)...) + return rsp, nil +} + +func (s *APISrv) Get(ctx context.Context, req *GetRequest) (*GetResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.API.Get"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + tenant := server.TenantFromContext(ctx) + rsrcReq := &server.ResourceGetRequest{IsPublic: true, Tenant: tenant, Namespace: req.GetNamespace(), Name: req.GetName()} + switch req.ResponseFormat { + case GET_RSP_FORMAT_FOR_CREATE: + rsrcReq.RspInCreateForm = true + + case GET_RSP_FORMAT_FOR_REPLACE: + rsrcReq.RspInReplaceForm = true + + case GET_RSP_FORMAT_READ: + rsrcReq.RspInReadForm = true + + case GET_RSP_FORMAT_STATUS: + rsrcReq.RspInStatusForm = true + + case GET_RSP_FORMAT_REFERRING_OBJECTS: + rsrcReq.RspInReferringObjectsForm = true + + case GET_RSP_FORMAT_BROKEN_REFERENCES: + rsrcReq.RspInBrokenReferencesForm = true + + } + + rsrcRsp, err := s.opts.RsrcHandler.GetFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + rsp, err := NewObjectGetRsp(ctx, s.sf, req, rsrcRsp) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "GetResponse")) + return nil, server.GRPCStatusFromError(err).Err() + } + rspMsgFQN := "ves.io.schema.ztna_application.GetResponse" + if conv, exists := s.sf.Config().ObjToMsgConverters[rspMsgFQN]; exists { + if err := conv(rsrcRsp.Entry, rsp); err != nil { + return nil, err + } + } + return rsp, nil +} + +func (s *APISrv) List(ctx context.Context, req *ListRequest) (*ListResponse, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.API.List"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + } + } + var merr *multierror.Error + rsrcReq := &server.ResourceListRequest{ + Namespace: req.Namespace, + LabelFilter: req.LabelFilter, + RspStreamed: false, + } + if len(req.ReportStatusFields) > 0 { + rsrcReq.ReportStatusFields = &req.ReportStatusFields + } + rsrcRsp, err := s.opts.RsrcHandler.ListFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListResource")) + } + rsp, err := NewListResponse(ctx, req, s.sf, rsrcRsp) + if err != nil { + merr = multierror.Append(merr, errors.Wrap(err, "ListResponse allocation failed")) + } + if merr != nil { + if rsp == nil { + return nil, merr + } + rsp.Errors = append(rsp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: merr.Error(), + }) + + } + return rsp, nil +} + +func (s *APISrv) Delete(ctx context.Context, req *DeleteRequest) (*google_protobuf.Empty, error) { + if err := s.validateTransport(ctx); err != nil { + return nil, err + } + if s.sf.Config().EnableAPIValidation { + if rvFn := s.sf.GetRPCValidator("ves.io.schema.ztna_application.API.Delete"); rvFn != nil { + if err := rvFn(ctx, req); err != nil { + if !server.NoReqValidateFromContext(ctx) { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "Validating Request")) + return nil, server.GRPCStatusFromError(err).Err() + } + s.sf.Logger().Warn(server.NoReqValidateAcceptLog, zap.String("rpc_fqn", "ves.io.schema.ztna_application.API.Delete"), zap.Error(err)) + } + } + } + bodyFields := svcfw.GenAuditReqBodyFields(ctx, s.sf, "ves.io.schema.ztna_application.API.DeleteRequest", req) + defer func() { + if len(bodyFields) > 0 { + server.ExtendAPIAudit(ctx, svcfw.PublicAPIBodyLog.Uid, bodyFields) + } + }() + + tenant := server.TenantFromContext(ctx) + key := fmt.Sprintf("%s/%s/%s", tenant, req.GetNamespace(), req.GetName()) + rsrcReq := &server.ResourceDeleteRequest{Key: key} + rsrcReq.FailIfReferred = req.FailIfReferred + _, err := s.opts.RsrcHandler.DeleteFn(ctx, rsrcReq, s.apiWrapper) + if err != nil { + err := server.MaybePublicRestError(ctx, errors.Wrapf(err, "DeleteResource")) + return nil, server.GRPCStatusFromError(err).Err() + } + return &google_protobuf.Empty{}, nil +} + +// Assert that APISrv implements the generated gRPC APIServer interface +var _ APIServer = &APISrv{} + +func NewCRUDAPIServer(oType string, tblName string, sf svcfw.Service, opts ...server.CRUDServerOpt) (server.APIHandler, string) { + // convert ves.io.examplesvc.objectone.Object to + // ves.io.examplesvc.objectone.API + sl := strings.Split(oType, ".") + csOpts := server.NewCRUDServerOpts() + for _, o := range opts { + o(csOpts) + } + wrapper := server.NewDBAPIWrapper(csOpts.APIWrapperOpts...) + s := &APISrv{ + oType: oType, + tblName: tblName, + sf: sf, + opts: csOpts, + apiWrapper: wrapper, + } + return s, fmt.Sprintf("%s.API", strings.Join(sl[:len(sl)-1], ".")) +} + +func (r *Object) Key() string { + m := r.GetMetadata() + if m == nil { + return "" + } + return strings.Join([]string{m.Namespace, m.Name}, "/") +} + +func (r *Object) Uid() string { + return r.SystemMetadata.Uid +} + +func (r *ListResponse) GetKeys() []string { + var ret []string + for _, i := range r.Items { + ret = append(ret, i.Namespace+"/"+i.Name) + } + return ret +} + +// Implement server.SROListItem interface on ListResponseItem +func (l *ListResponseItem) GetObjUid() string { + return l.Uid +} + +func (l *ListResponseItem) GetObjTenant() string { + return l.Tenant +} + +func (l *ListResponseItem) GetObjNamespace() string { + return l.Namespace +} + +func (l *ListResponseItem) GetObjName() string { + return l.Name +} + +func (l *ListResponseItem) GetObjLabels() map[string]string { + return l.Labels +} + +func NewObjectCreateRsp(e db.Entry) (*CreateResponse, error) { + switch e.(type) { + case nil: + return nil, nil + case *DBObject: + rsp := &CreateResponse{} + rsp.FromObject(e) + return rsp, nil + } + return nil, fmt.Errorf("Entry not of type *DBObject in NewObjectCreateRsp") +} + +func NewObjectReplaceRsp(e db.Entry) (*ReplaceResponse, error) { + return &ReplaceResponse{}, nil +} + +func NewObjectGetRsp(ctx context.Context, sf svcfw.Service, req *GetRequest, rsrcRsp *server.ResourceGetResponse) (*GetResponse, error) { + rsp := &GetResponse{} + e := rsrcRsp.Entry + if e == nil { + return rsp, nil + } + o, ok := e.(*DBObject) + if !ok { + return nil, fmt.Errorf("entry not of type *DBObject in NewObjectGetRsp") + } + + rsp.ResourceVersion = rsrcRsp.ResourceVersion + var merr *multierror.Error + buildReadForm := func() { + rsp.Metadata = &ves_io_schema.ObjectGetMetaType{} + rsp.Metadata.FromObjectMetaType(o.Metadata) + rsp.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + rsp.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) + rsp.Spec = &GetSpecType{} + if redactor, ok := e.(db.Redactor); ok { + if err := redactor.Redact(ctx); err != nil { + merr = multierror.Append(merr, errors.WithMessage(err, "Error while redacting entry")) + return + } + } + rsp.Spec.FromGlobalSpecType(o.Spec.GcSpec) + + } + _ = buildReadForm + buildStatusForm := func() { + for _, statusEnt := range rsrcRsp.BackRefs { + statusObj, ok := statusEnt.ToStore().(*StatusObject) + if !ok { + merr = multierror.Append(merr, fmt.Errorf("%T is not *StatusObject", statusEnt)) + continue + } + rsp.Status = append(rsp.Status, statusObj) + } + + } + _ = buildStatusForm + buildReferringObjectsForm := func() { + for _, br := range rsrcRsp.ReferringObjects { + rsp.ReferringObjects = append(rsp.ReferringObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + + } + _ = buildReferringObjectsForm + buildBrokenReferencesForm := func() { + for _, br := range rsrcRsp.DeletedReferredObjects { + rsp.DeletedReferredObjects = append(rsp.DeletedReferredObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + for _, br := range rsrcRsp.DisabledReferredObjects { + rsp.DisabledReferredObjects = append(rsp.DisabledReferredObjects, &ves_io_schema.ObjectRefType{ + Kind: db.KindForEntryType(br.Type), + Uid: br.UID, + Tenant: br.Tenant, + Namespace: br.Namespace, + Name: br.Name, + }) + } + + } + _ = buildBrokenReferencesForm + + switch req.ResponseFormat { + + case GET_RSP_FORMAT_FOR_CREATE: + createReq, err := NewCreateRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Building CreateRequest from entry") + } + // Name has to be specified for a new create + createReq.Metadata.Name = "" + rsp.CreateForm = createReq + + case GET_RSP_FORMAT_FOR_REPLACE: + replaceReq, err := NewReplaceRequest(e) + if err != nil { + return nil, errors.Wrap(err, "Building ReplaceRequest from entry") + } + rsp.ReplaceForm = replaceReq + + case GET_RSP_FORMAT_STATUS: + buildStatusForm() + + case GET_RSP_FORMAT_READ: + buildReadForm() + + case GET_RSP_FORMAT_REFERRING_OBJECTS: + buildReferringObjectsForm() + + case GET_RSP_FORMAT_BROKEN_REFERENCES: + buildBrokenReferencesForm() + + default: + buildReadForm() + + buildStatusForm() + } + + return rsp, errors.ErrOrNil(merr) +} + +func NewListResponse(ctx context.Context, req *ListRequest, sf svcfw.Service, rsrcRsp *server.ResourceListResponse) (*ListResponse, error) { + if req == nil { + return nil, fmt.Errorf("Nil ListRequest") + } + if rsrcRsp == nil { + return nil, fmt.Errorf("Nil ResourceResponse") + } + + errStrs := []string{} + resp := &ListResponse{} + resp.Items = []*ListResponseItem{} + + for _, rsrcItem := range rsrcRsp.Items { + if rsrcItem == nil { + errStrs = append(errStrs, fmt.Sprintf("Nil ResourceListResponseItem")) + continue + } + + e := rsrcItem.Entry + o, ok := e.(*DBObject) + if !ok { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Entry %T not of type *DBObject in NewListResponse", e), + }) + + continue + } + if redactor, ok := e.(db.Redactor); ok { + if err := redactor.Redact(ctx); err != nil { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Error while redacting in NewListResponse: %s", err), + }) + continue + } + } + item := &ListResponseItem{ + Tenant: o.GetSystemMetadata().GetTenant(), + Namespace: o.GetMetadata().GetNamespace(), + Name: o.GetMetadata().GetName(), + Uid: o.GetMetadata().GetUid(), + OwnerView: o.GetSystemMetadata().GetOwnerView(), + Labels: o.GetMetadata().GetLabels(), + } + + item.Description = o.GetMetadata().GetDescription() + item.Annotations = o.GetMetadata().GetAnnotations() + item.Disabled = o.GetMetadata().GetDisable() + + if len(req.ReportFields) > 0 { + item.Metadata = &ves_io_schema.ObjectGetMetaType{} + item.Metadata.FromObjectMetaType(o.Metadata) + item.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + item.SystemMetadata.FromSystemObjectMetaType(o.SystemMetadata) + + if o.Object.GetSpec().GetGcSpec() != nil { + msgFQN := "ves.io.schema.ztna_application.GetResponse" + if conv, exists := sf.Config().ObjToMsgConverters[msgFQN]; exists { + getSpec := &GetSpecType{} + getSpec.FromGlobalSpecType(o.Spec.GcSpec) + getRsp := &GetResponse{Spec: getSpec} + if err := conv(o, getRsp); err != nil { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("Converting entry to getResponse: %s", err), + }) + + continue + } + item.GetSpec = getRsp.Spec + } else { + item.GetSpec = &GetSpecType{} + item.GetSpec.FromGlobalSpecType(o.Spec.GcSpec) + } + } + + } + + if len(req.ReportStatusFields) > 0 { + for _, sroStatus := range rsrcItem.StatusSet { + statusDBO, ok := sroStatus.(*DBStatusObject) + if !ok { + resp.Errors = append(resp.Errors, &ves_io_schema.ErrorType{ + Code: ves_io_schema.EINTERNAL, + Message: fmt.Sprintf("sro.Status %T is not of type *DBStatusObject in NewListResponse", sroStatus), + }) + + continue + } + item.StatusSet = append(item.StatusSet, statusDBO.StatusObject) + } + } + + resp.Items = append(resp.Items, item) + } + return resp, nil +} + +func RegisterGwAPIHandler(ctx context.Context, mux *runtime.ServeMux, svc interface{}) error { + s, ok := svc.(svcfw.Service) + if !ok { + return fmt.Errorf("svc is not svcfw.Service") + } + return RegisterAPIHandlerClient(ctx, mux, NewAPIInprocClient(s)) +} + +var APISwaggerJSON string = `{ + "swagger": "2.0", + "info": { + "title": "Application configuration", + "description": "Represents ztna application configuration for a given tenant", + "version": "version not set" + }, + "schemes": [ + "http", + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [], + "paths": { + "/public/namespaces/{metadata.namespace}/ztna_applications": { + "post": { + "summary": "Create User", + "operationId": "ves.io.schema.ztna_application.API.Create", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztna_applicationCreateResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "metadata.namespace", + "description": "namespace\n\nx-example: \"staging\"\nThis defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ztna_applicationCreateRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-api-create" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.API.Create" + }, + "x-displayname": "Application configuration", + "x-ves-proto-service": "ves.io.schema.ztna_application.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{metadata.namespace}/ztna_applications/{metadata.name}": { + "put": { + "summary": "Replace User", + "operationId": "ves.io.schema.ztna_application.API.Replace", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztna_applicationReplaceResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "metadata.namespace", + "description": "namespace\n\nx-example: \"staging\"\nThis defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "metadata.name", + "description": "name\n\nx-example: \"acmecorp-web\"\nThe configuration object to be replaced will be looked up by name", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ztna_applicationReplaceRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-api-replace" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.API.Replace" + }, + "x-displayname": "Application configuration", + "x-ves-proto-service": "ves.io.schema.ztna_application.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{namespace}/ztna_applications": { + "get": { + "summary": "List Application configuration", + "description": "List the set of ztna_application in a namespace", + "operationId": "ves.io.schema.ztna_application.API.List", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztna_applicationListResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace to scope the listing of ztna_application", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "label_filter", + "description": "x-example: \"env in (staging, testing), tier in (web, db)\"\nA LabelSelectorType expression that every item in list response will satisfy", + "in": "query", + "required": false, + "type": "string", + "x-displayname": "Label Filter" + }, + { + "name": "report_fields", + "description": "x-example: \"\"\nExtra fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Fields" + }, + { + "name": "report_status_fields", + "description": "x-example: \"\"\nExtra status fields to return along with summary fields", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-displayname": "Report Status Fields" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-api-list" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.API.List" + }, + "x-displayname": "Application configuration", + "x-ves-proto-service": "ves.io.schema.ztna_application.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + }, + "/public/namespaces/{namespace}/ztna_applications/{name}": { + "get": { + "summary": "Get User", + "operationId": "ves.io.schema.ztna_application.API.Get", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ztna_applicationGetResponse" + } + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nThe namespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nThe name of the configuration object to be fetched", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "response_format", + "description": "The format in which the configuration object is to be fetched. This could be for example\n - in GetSpec form for the contents of object\n - in CreateRequest form to create a new similar object\n - to ReplaceRequest form to replace changeable values\n\nDefault format of returned resource\nResponse should be in CreateRequest format\nResponse should be in ReplaceRequest format\nResponse should be in StatusObject(s) format\nResponse should be in format of GetSpecType\nResponse should have other objects referring to this object\nResponse should have deleted and disabled objects referrred by this object", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT", + "x-displayname": "Broken Referred Objects" + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-api-get" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.API.Get" + }, + "delete": { + "summary": "Delete Application configuration", + "description": "Delete the specified ztna_application", + "operationId": "ves.io.schema.ztna_application.API.Delete", + "responses": { + "200": { + "description": "A successful response.", + "schema": {} + }, + "401": { + "description": "Returned when operation is not authorized", + "schema": { + "format": "string" + } + }, + "403": { + "description": "Returned when there is no permission to access resource", + "schema": { + "format": "string" + } + }, + "404": { + "description": "Returned when resource is not found", + "schema": { + "format": "string" + } + }, + "409": { + "description": "Returned when operation on resource is conflicting with current value", + "schema": { + "format": "string" + } + }, + "429": { + "description": "Returned when operation has been rejected as it is happening too frequently", + "schema": { + "format": "string" + } + }, + "500": { + "description": "Returned when server encountered an error in processing API", + "schema": { + "format": "string" + } + }, + "503": { + "description": "Returned when service is unavailable temporarily", + "schema": { + "format": "string" + } + }, + "504": { + "description": "Returned when server timed out processing request", + "schema": { + "format": "string" + } + } + }, + "parameters": [ + { + "name": "namespace", + "description": "namespace\n\nx-example: \"ns1\"\nNamespace in which the configuration object is present", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Namespace" + }, + { + "name": "name", + "description": "name\n\nx-example: \"name\"\nName of the configuration object", + "in": "path", + "required": true, + "type": "string", + "x-displayname": "Name" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ztna_applicationDeleteRequest" + } + } + ], + "tags": [ + "API" + ], + "externalDocs": { + "description": "Examples of this operation", + "url": "https://www.volterra.io/docs/reference/api-ref/ves-io-schema-ztna_application-api-delete" + }, + "x-ves-proto-rpc": "ves.io.schema.ztna_application.API.Delete" + }, + "x-displayname": "Application configuration", + "x-ves-proto-service": "ves.io.schema.ztna_application.API", + "x-ves-proto-service-type": "AUTO_CRUD_PUBLIC" + } + }, + "definitions": { + "ioschemaEmpty": { + "type": "object", + "description": "This can be used for messages where no values are needed", + "title": "Empty", + "x-displayname": "Empty", + "x-ves-proto-message": "ves.io.schema.Empty" + }, + "ioschemaObjectRefType": { + "type": "object", + "description": "This type establishes a 'direct reference' from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name for public API and Uid for private API\nThis type of reference is called direct because the relation is explicit and concrete (as opposed\nto selector reference which builds a group based on labels of selectee objects)", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.ObjectRefType", + "properties": { + "kind": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then kind will hold the referred object's kind (e.g. \"route\")\n\nExample: - \"virtual_site\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "virtual_site" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then uid will hold the referred object's(e.g. route's) uid.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "protobufAny": { + "type": "object", + "description": "-Any- contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an -Any- value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field -@type- which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n-value- which holds the custom JSON in addition to the -@type-\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n-path/google.protobuf.Duration-). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme -http-, -https-, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, -https- is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than -http-, -https- (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "description": "Must be a valid serialized protocol buffer of the above specified type.", + "format": "byte" + } + } + }, + "schemaConditionType": { + "type": "object", + "description": "Conditions are used in the object status to describe the current state of the\nobject, e.g. Ready, Succeeded, etc.", + "title": "ConditionType", + "x-displayname": "Status Condition", + "x-ves-proto-message": "ves.io.schema.ConditionType", + "properties": { + "hostname": { + "type": "string", + "description": " Hostname of the instance of the site that sent the status", + "title": "hostname", + "x-displayname": "Hostname" + }, + "last_update_time": { + "type": "string", + "description": " Last time the condition was updated", + "title": "last_update_time", + "format": "date-time", + "x-displayname": "Last Updated" + }, + "reason": { + "type": "string", + "description": " x-reason: \"Insufficient memory in data plane\"\n A human readable string explaining the reason for reaching this condition\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "service_name": { + "type": "string", + "description": " Name of the service that sent the status", + "title": "service name", + "x-displayname": "Service Name" + }, + "status": { + "type": "string", + "description": " Status of the condition\n \"Success\" Validtion has succeded. Requested operation was successful.\n \"Failed\" Validation has failed.\n \"Incomplete\" Validation of configuration has failed due to missing configuration.\n \"Installed\" Validation has passed and configuration has been installed in data path or K8s\n \"Down\" Configuration is operationally down. e.g. down interface\n \"Disabled\" Configuration is administratively disabled i.e. ObjectMetaType.Disable = true.\n \"NotApplicable\" Configuration is not applicable e.g. tenant service_policy_set(s) in system namespace are not applicable on REs\n\nExample: - \"Failed\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]\n", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "Failed", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Success\\\",\\\"Failed\\\",\\\"Incomplete\\\",\\\"Installed\\\",\\\"Down\\\",\\\"Disabled\\\",\\\"NotApplicable\\\"]" + } + }, + "type": { + "type": "string", + "description": " Type of the condition\n \"Validation\" represents validation user given configuration object\n \"Operational\" represents operational status of a given configuration object\n\nExample: - \"Operational\"-\n\nValidation Rules:\n ves.io.schema.rules.string.in: [\\\"Validation\\\",\\\"Operational\\\"]\n", + "title": "type", + "x-displayname": "Type", + "x-ves-example": "Operational", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.in": "[\\\"Validation\\\",\\\"Operational\\\"]" + } + } + } + }, + "schemaErrorCode": { + "type": "string", + "description": "Union of all possible error-codes from system\n\n - EOK: No error\n - EPERMS: Permissions error\n - EBADINPUT: Input is not correct\n - ENOTFOUND: Not found\n - EEXISTS: Already exists\n - EUNKNOWN: Unknown/catchall error\n - ESERIALIZE: Error in serializing/de-serializing\n - EINTERNAL: Server error\n - EPARTIAL: Partial error", + "title": "ErrorCode", + "enum": [ + "EOK", + "EPERMS", + "EBADINPUT", + "ENOTFOUND", + "EEXISTS", + "EUNKNOWN", + "ESERIALIZE", + "EINTERNAL", + "EPARTIAL" + ], + "default": "EOK", + "x-displayname": "Error Code", + "x-ves-proto-enum": "ves.io.schema.ErrorCode" + }, + "schemaErrorType": { + "type": "object", + "description": "Information about a error in API operation", + "title": "ErrorType", + "x-displayname": "Error Type", + "x-ves-proto-message": "ves.io.schema.ErrorType", + "properties": { + "code": { + "description": " A simple general code by category", + "title": "code", + "$ref": "#/definitions/schemaErrorCode", + "x-displayname": "Code" + }, + "error_obj": { + "description": " A structured error object for machine parsing", + "title": "error_obj", + "$ref": "#/definitions/protobufAny", + "x-displayname": "Error Object" + }, + "message": { + "type": "string", + "description": " A human readable string of the error\n\nExample: - \"value\"-", + "title": "message", + "x-displayname": "Message", + "x-ves-example": "value" + } + } + }, + "schemaInitializerType": { + "type": "object", + "description": "Initializer is information about an initializer that has not yet completed.", + "title": "InitializerType", + "x-displayname": "Initializer", + "x-ves-proto-message": "ves.io.schema.InitializerType", + "properties": { + "name": { + "type": "string", + "description": " name of the service that is responsible for initializing this object.", + "title": "name", + "x-displayname": "Name" + } + } + }, + "schemaInitializersType": { + "type": "object", + "description": "Initializers tracks the progress of initialization of a configuration object", + "title": "InitializersType", + "x-displayname": "Initializers", + "x-ves-proto-message": "ves.io.schema.InitializersType", + "properties": { + "pending": { + "type": "array", + "description": " Pending is a list of initializers that must execute in order before this object is initialized.\n When the last pending initializer is removed, and no failing result is set, the initializers\n struct will be set to nil and the object is considered as initialized and visible to all\n clients.", + "title": "pending", + "items": { + "$ref": "#/definitions/schemaInitializerType" + }, + "x-displayname": "Pending" + }, + "result": { + "description": " If result is set with the Failure field, the object will be persisted to storage and then deleted,\n ensuring that other clients can observe the deletion.", + "title": "result", + "$ref": "#/definitions/schemaStatusType", + "x-displayname": "Result" + } + } + }, + "schemaIpAddressType": { + "type": "object", + "description": "IP Address used to specify an IPv4 or IPv6 address", + "title": "IP Address", + "x-displayname": "IP Address", + "x-ves-displayorder": "3", + "x-ves-oneof-field-ver": "[\"ipv4\",\"ipv6\"]", + "x-ves-proto-message": "ves.io.schema.IpAddressType", + "properties": { + "ipv4": { + "description": "Exclusive with [ipv6]\n IPv4 Address", + "title": "IPv4 Address", + "$ref": "#/definitions/schemaIpv4AddressType", + "x-displayname": "IPv4 Address" + }, + "ipv6": { + "description": "Exclusive with [ipv4]\n IPv6 Address", + "title": "IPv6 ADDRESS", + "$ref": "#/definitions/schemaIpv6AddressType", + "x-displayname": "IPv6 Address" + } + } + }, + "schemaIpv4AddressType": { + "type": "object", + "description": "IPv4 Address in dot-decimal notation", + "title": "IPv4 Address", + "x-displayname": "IPv4 Address", + "x-ves-proto-message": "ves.io.schema.Ipv4AddressType", + "properties": { + "addr": { + "type": "string", + "description": " IPv4 Address in string form with dot-decimal notation\n\nExample: - \"192.168.1.1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IPv4 Address", + "x-displayname": "IPv4 Address", + "x-ves-example": "192.168.1.1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + } + } + }, + "schemaIpv6AddressType": { + "type": "object", + "description": "IPv6 Address specified as hexadecimal numbers separated by ':'", + "title": "IPv6 Address", + "x-displayname": "IPv6 Address", + "x-ves-proto-message": "ves.io.schema.Ipv6AddressType", + "properties": { + "addr": { + "type": "string", + "description": " IPv6 Address in form of string. IPv6 address must be specified as hexadecimal numbers separated by ':'\n The address can be compacted by suppressing zeros\n e.g. '2001:db8:0:0:0:0:2:1' becomes '2001:db8::2:1' or '2001:db8:0:0:0:2:0:0' becomes '2001:db8::2::'\n\nExample: - \"2001:db8:0:0:0:0:2:1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 Address", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001:db8:0:0:0:0:2:1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + } + } + }, + "schemaObjectCreateMetaType": { + "type": "object", + "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", + "title": "ObjectCreateMetaType", + "x-displayname": "Create Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectCreateMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotation", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaObjectGetMetaType": { + "type": "object", + "description": "ObjectGetMetaType is metadata that can be specified in Get/Create response of an object.", + "title": "ObjectGetMetaType", + "x-displayname": "Get Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectGetMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotation", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable", + "x-ves-example": "true" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaObjectReplaceMetaType": { + "type": "object", + "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", + "title": "ObjectReplaceMetaType", + "x-displayname": "Replace Metadata", + "x-ves-proto-message": "ves.io.schema.ObjectReplaceMetaType", + "properties": { + "annotations": { + "type": "object", + "description": " Annotations is an unstructured key value map stored with a resource that may be\n set by external tools to store and retrieve arbitrary metadata. They are not\n queryable and should be preserved when modifying objects.\n\nExample: - \"value\"-\n\nValidation Rules:\n ves.io.schema.rules.map.keys.string.max_len: 64\n ves.io.schema.rules.map.keys.string.min_len: 1\n ves.io.schema.rules.map.values.string.max_len: 1024\n ves.io.schema.rules.map.values.string.min_len: 1\n", + "title": "annotations", + "x-displayname": "Annotations", + "x-ves-example": "value", + "x-ves-validation-rules": { + "ves.io.schema.rules.map.keys.string.max_len": "64", + "ves.io.schema.rules.map.keys.string.min_len": "1", + "ves.io.schema.rules.map.values.string.max_len": "1024", + "ves.io.schema.rules.map.values.string.min_len": "1" + } + }, + "description": { + "type": "string", + "description": " Human readable description for the object\n\nExample: - \"Virtual Host for acmecorp website\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 1200\n", + "title": "description", + "maxLength": 1200, + "x-displayname": "Description", + "x-ves-example": "Virtual Host for acmecorp website", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "1200" + } + }, + "disable": { + "type": "boolean", + "description": " A value of true will administratively disable the object\n\nExample: - \"true\"-", + "title": "disable", + "format": "boolean", + "x-displayname": "Disable" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the user. Values specified here will be used\n by selector expression\n\nExample: - \"value\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "value" + }, + "name": { + "type": "string", + "description": " This is the name of configuration object. It has to be unique within the namespace.\n It can only be specified during create API and cannot be changed during replace API.\n The value of name has to follow DNS-1035 format.\n\nExample: - \"acmecorp-web\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "acmecorp-web", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "namespace": { + "type": "string", + "description": " This defines the workspace within which each the configuration object is to be created.\n Must be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"\n\nExample: - \"staging\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "staging" + } + } + }, + "schemaStatusMetaType": { + "type": "object", + "description": "StatusMetaType is metadata that all status must have.", + "title": "StatusMetaType", + "x-displayname": "Metadata", + "x-ves-proto-message": "ves.io.schema.StatusMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " creation_timestamp is when the status object was created. It is used to find/tie-break\n for latest status object from same origin", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " Class of creator which created this StatusObject. This will be service's DNS FQDN.\n This will be set by the system based on client certificate information.\n\nExample: - \"ver.re1.int.ves.io\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "ver.re1.int.ves.io" + }, + "creator_id": { + "type": "string", + "description": " ID of creator which created this StatusObject. This will be a concrete identifier for service (e.g.\n identifying the environment also). This will be set by the system based on client certificate\n information\n\nExample: - \"ver-instance-1\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "ver-instance-1" + }, + "publish": { + "description": " Decides wether this status object will be propagated to user.", + "title": "publish", + "$ref": "#/definitions/schemaStatusPublishType", + "x-displayname": "Publish" + }, + "status_id": { + "type": "string", + "description": " status_id is a field used by the generator to distinguish (if necessary) between two status\n objects for the same config object from the same site and same service and potentially same\n daemon(creator-id)", + "title": "status_id", + "x-displayname": "Status ID" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for a StatusObject.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + }, + "vtrp_id": { + "type": "string", + "description": " Origin of this status exchanged by VTRP.", + "title": "vtrp_id", + "x-displayname": "VTRP ID" + }, + "vtrp_stale": { + "type": "boolean", + "description": " Indicate whether mars deems this object to be stale via graceful restart timer information", + "title": "vtrp_stale", + "format": "boolean", + "x-displayname": "VTRP Stale" + } + } + }, + "schemaStatusPublishType": { + "type": "string", + "description": "StatusPublishType is all possible publish operations on a StatusObject\n\n - STATUS_DO_NOT_PUBLISH: Do Not Publish\n\nDo not propagate this status to user. This could be because status is only informational\n - STATUS_PUBLISH: Publish\n\nPropagate this status up to user as it might be actionable", + "title": "StatusPublishType", + "enum": [ + "STATUS_DO_NOT_PUBLISH", + "STATUS_PUBLISH" + ], + "default": "STATUS_DO_NOT_PUBLISH", + "x-displayname": "Status Publish Type", + "x-ves-proto-enum": "ves.io.schema.StatusPublishType" + }, + "schemaStatusType": { + "type": "object", + "description": "Status is a return value for calls that don't return other objects.", + "title": "StatusType", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.StatusType", + "properties": { + "code": { + "type": "integer", + "description": " Suggested HTTP return code for this status, 0 if not set.\n\nExample: - \"0\"-", + "title": "code", + "format": "int32", + "x-displayname": "Code", + "x-ves-example": "0" + }, + "reason": { + "type": "string", + "description": " A human-readable description of why this operation is in the\n \"Failure\" status. If this value is empty there\n is no information available.\n\nExample: - \"value\"-", + "title": "reason", + "x-displayname": "Reason", + "x-ves-example": "value" + }, + "status": { + "type": "string", + "description": " Status of the operation.\n One of: \"Success\" or \"Failure\".\n\nExample: - \"value\"-", + "title": "status", + "x-displayname": "Status", + "x-ves-example": "value" + } + } + }, + "schemaSystemObjectGetMetaType": { + "type": "object", + "description": "SystemObjectGetMetaType is metadata generated or populated by the system for all persisted objects and\ncannot be updated directly by users.", + "title": "SystemObjectGetMetaType", + "x-displayname": "System Metadata", + "x-ves-proto-message": "ves.io.schema.SystemObjectGetMetaType", + "properties": { + "creation_timestamp": { + "type": "string", + "description": " CreationTimestamp is a timestamp representing the server time when this object was\n created. It is not guaranteed to be set in happens-before order across separate operations.\n Clients may not set this value. It is represented in RFC3339 form and is in UTC.", + "title": "creation_timestamp", + "format": "date-time", + "x-displayname": "Creation Timestamp" + }, + "creator_class": { + "type": "string", + "description": " A value identifying the class of the user or service which created this configuration object.\n\nExample: - \"value\"-", + "title": "creator_class", + "x-displayname": "Creator Class", + "x-ves-example": "prism" + }, + "creator_id": { + "type": "string", + "description": " A value identifying the exact user or service that created this configuration object\n\nExample: - \"value\"-", + "title": "creator_id", + "x-displayname": "Creator ID", + "x-ves-example": "admin@acmecorp.com" + }, + "deletion_timestamp": { + "type": "string", + "description": " DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This\n field is set by the server when a graceful deletion is requested by the user, and is not\n directly settable by a client. The resource is expected to be deleted (no longer visible\n from resource lists, and not reachable by name) after the time in this field, once the\n finalizers list is empty. As long as the finalizers list contains items, deletion is blocked.\n Once the deletionTimestamp is set, this value may not be unset or be set further into the\n future, although it may be shortened or the resource may be deleted prior to this time.\n For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react\n by sending a graceful termination signal to the containers in the pod. After that 30 seconds,\n the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup,\n remove the pod from the API. In the presence of network partitions, this object may still\n exist after this timestamp, until an administrator or automated process can determine the\n resource is fully terminated.\n If not set, graceful deletion of the object has not been requested.\n\n Populated by the system when a graceful deletion is requested.\n Read-only.", + "title": "deletion_timestamp", + "format": "date-time", + "x-displayname": "Deletion Timestamp" + }, + "finalizers": { + "type": "array", + "description": " Must be empty before the object is deleted from the registry. Each entry\n is an identifier for the responsible component that will remove the entry\n from the list. If the deletionTimestamp of the object is non-nil, entries\n in this list can only be removed.\n\nExample: - \"value\"-", + "title": "finalizers", + "items": { + "type": "string" + }, + "x-displayname": "Finalizers", + "x-ves-example": "value" + }, + "initializers": { + "description": " An initializer is a controller which enforces some system invariant at object creation time.\n This field is a list of initializers that have not yet acted on this object. If nil or empty,\n this object has been completely initialized. Otherwise, the object is considered uninitialized\n and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to\n observe uninitialized objects.\n\n When an object is created, the system will populate this list with the current set of initializers.\n Only privileged users may set or modify this list. Once it is empty, it may not be modified further\n by any user.", + "title": "initializers", + "$ref": "#/definitions/schemaInitializersType", + "x-displayname": "Initializers" + }, + "labels": { + "type": "object", + "description": " Map of string keys and values that can be used to organize and categorize\n (scope and select) objects as chosen by the operator or software. Values here can be interpreted\n by software(backend or frontend) to enable certain behavior e.g. things marked as soft-deleted(restorable).\n\nExample: - \"'ves.io/soft-deleted''true'\"-", + "title": "labels", + "x-displayname": "Labels", + "x-ves-example": "'ves.io/soft-deleted': 'true'" + }, + "modification_timestamp": { + "type": "string", + "description": " ModificationTimestamp is a timestamp representing the server time when this object was\n last modified.", + "title": "modification_timestamp", + "format": "date-time", + "x-displayname": "Modification Timestamp" + }, + "object_index": { + "type": "integer", + "description": " Unique index for the object. Some objects need a unique integer index to be allocated\n for each object type. This field will be populated for all objects that need it and will\n be zero otherwise.\n\nExample: - \"0\"-", + "title": "object_index", + "format": "int64", + "x-displayname": "Object Index", + "x-ves-example": "0" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "tenant": { + "type": "string", + "description": " Tenant to which this configuration object belongs to. The value for this is found from\n presented credentials.\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " uid is the unique in time and space value for this object. It is generated by\n the server on successful creation of an object and is not allowed to change on Replace\n API. The value of is taken from uid field of ObjectMetaType, if provided.\n\nExample: - \"d15f1fad-4d37-48c0-8706-df1824d76d31\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d15f1fad-4d37-48c0-8706-df1824d76d31" + } + } + }, + "schemaViewRefType": { + "type": "object", + "description": "ViewRefType represents a reference to a view", + "title": "ViewRefType", + "x-displayname": "View Reference", + "x-ves-proto-message": "ves.io.schema.ViewRefType", + "properties": { + "kind": { + "type": "string", + "description": " Kind of the view object\n\nExample: - \"http_proxy\"-", + "title": "kind", + "x-displayname": "Kind", + "x-ves-example": "http_proxy" + }, + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contactus-route\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "contactus-route" + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "uid": { + "type": "string", + "description": " UID of the view object\n\nExample: - \"f3744323-1adf-4aaa-a5dc-0707c1d1bd82\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "f3744323-1adf-4aaa-a5dc-0707c1d1bd82" + } + } + }, + "schemaviewsObjectRefType": { + "type": "object", + "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name", + "title": "ObjectRefType", + "x-displayname": "Object reference", + "x-ves-proto-message": "ves.io.schema.views.ObjectRefType", + "properties": { + "name": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then name will hold the referred object's(e.g. route's) name.\n\nExample: - \"contacts-route\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.max_bytes: 128\n ves.io.schema.rules.string.min_bytes: 1\n", + "title": "name", + "minLength": 1, + "maxLength": 128, + "x-displayname": "Name", + "x-ves-example": "contacts-route", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.max_bytes": "128", + "ves.io.schema.rules.string.min_bytes": "1" + } + }, + "namespace": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then namespace will hold the referred object's(e.g. route's) namespace.\n\nExample: - \"ns1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "namespace", + "maxLength": 64, + "x-displayname": "Namespace", + "x-ves-example": "ns1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + }, + "tenant": { + "type": "string", + "description": " When a configuration object(e.g. virtual_host) refers to another(e.g route)\n then tenant will hold the referred object's(e.g. route's) tenant.\n\nExample: - \"acmecorp\"-\n\nValidation Rules:\n ves.io.schema.rules.string.max_bytes: 64\n", + "title": "tenant", + "maxLength": 64, + "x-displayname": "Tenant", + "x-ves-example": "acmecorp", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.max_bytes": "64" + } + } + } + }, + "viewsAdvertiseCustom": { + "type": "object", + "description": "This defines a way to advertise a VIP on specific sites", + "title": "AdvertiseWhere", + "x-displayname": "Advertise Custom", + "x-ves-proto-message": "ves.io.schema.views.AdvertiseCustom", + "properties": { + "advertise_where": { + "type": "array", + "description": " Where should this load balancer be available\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.repeated.max_items: 32\n ves.io.schema.rules.repeated.min_items: 1\n ves.io.schema.rules.repeated.unique: true\n", + "title": "Advertise Where", + "minItems": 1, + "maxItems": 32, + "items": { + "$ref": "#/definitions/viewsWhereType" + }, + "x-displayname": "List of Sites to Advertise", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.repeated.max_items": "32", + "ves.io.schema.rules.repeated.min_items": "1", + "ves.io.schema.rules.repeated.unique": "true" + } + } + } + }, + "viewsAdvertisePublic": { + "type": "object", + "description": "This defines a way to advertise a load balancer on public. If optional public_ip is provided, it will only be advertised on RE sites where that public_ip is available", + "title": "AdvertisePublic", + "x-displayname": "Advertise Public", + "x-ves-proto-message": "ves.io.schema.views.AdvertisePublic", + "properties": { + "public_ip": { + "description": " Dedicated Public IP, which is allocated by F5 Distributed Cloud on request, is used as a VIP.\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Public IP", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Public IP", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsSiteNetwork": { + "type": "string", + "description": "This defines network types to be used on site\n\nAll inside and outside networks.\nAll inside and outside networks with internet VIP support.\nAll inside networks.\nAll outside networks.\nAll outside networks with internet VIP support.\nvK8s service network.\n - SITE_NETWORK_IP_FABRIC: VER IP Fabric network for the site\n\nThis Virtual network type is used for exposing virtual host on IP Fabric network on the VER site or\nfor endpoint in IP Fabric network", + "title": "SiteNetwork", + "enum": [ + "SITE_NETWORK_INSIDE_AND_OUTSIDE", + "SITE_NETWORK_INSIDE", + "SITE_NETWORK_OUTSIDE", + "SITE_NETWORK_SERVICE", + "SITE_NETWORK_OUTSIDE_WITH_INTERNET_VIP", + "SITE_NETWORK_INSIDE_AND_OUTSIDE_WITH_INTERNET_VIP", + "SITE_NETWORK_IP_FABRIC" + ], + "default": "SITE_NETWORK_INSIDE_AND_OUTSIDE", + "x-displayname": "Site Network", + "x-ves-proto-enum": "ves.io.schema.views.SiteNetwork" + }, + "viewsWhereCloudEdgeSegment": { + "type": "object", + "description": "This defines a reference to a Segment on a Cloud Edge and an optional ip address where a load balancer could be advertised", + "title": "WhereCloudEdgeSegment", + "x-displayname": "Segment on a Cloud Edge", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.views.WhereCloudEdgeSegment", + "properties": { + "cloud_edge": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Cloud Edge", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the Cloud Edge\n\nExample: - \"8.8.8.8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the Cloud Edge", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the Cloud Edge\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the Cloud Edge", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereSegment": { + "type": "object", + "description": "Parameters to advertise on a given virtual network", + "title": "WhereVirtualNetwork", + "x-displayname": "Virtual Network", + "x-ves-displayorder": "1,2,10", + "x-ves-proto-message": "ves.io.schema.views.WhereSegment", + "properties": { + "ipv4_vip": { + "type": "string", + "description": " Configure IPV4 VIP address\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IPv4 VIP", + "x-displayname": "IPV4 VIP", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6_vip": { + "type": "string", + "description": " Configure IPV6 VIP address\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 VIP", + "x-displayname": "IPV6 VIP", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereSite": { + "type": "object", + "description": "This defines a reference to a CE site along with network type and an optional ip address where a load balancer could be advertised", + "title": "WhereSite", + "x-displayname": "Site", + "x-ves-displayorder": "1,2,3", + "x-ves-proto-message": "ves.io.schema.views.WhereSite", + "properties": { + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the site\n\nExample: - \"8.8.8.8\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the site", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the site\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the site", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "network": { + "description": " Select network types to be used on site\n By default VIP chosen as ip address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", + "$ref": "#/definitions/viewsSiteNetwork", + "x-displayname": "Network", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "site": { + "description": " Reference to site object\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereSiteSegment": { + "type": "object", + "description": "This defines a reference to a Segment on a Site and an optional ip address where a load balancer could be advertised", + "title": "WhereSiteSegment", + "x-displayname": "Segment on Site", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.views.WhereSiteSegment", + "properties": { + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the site\n\nExample: - \"8.8.8.8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the site", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the site\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the site", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "site": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Site", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereType": { + "type": "object", + "description": "This defines various options where a Loadbalancer could be advertised", + "title": "WhereType", + "x-displayname": "Select Where to Advertise", + "x-ves-displayorder": "4,5", + "x-ves-oneof-field-choice": "[\"cloud_edge_segment\",\"segment\",\"site\",\"site_segment\",\"virtual_network\",\"virtual_site\",\"virtual_site_segment\",\"vk8s_service\"]", + "x-ves-oneof-field-port_choice": "[\"port\",\"use_default_port\"]", + "x-ves-proto-message": "ves.io.schema.views.WhereType", + "properties": { + "cloud_edge_segment": { + "description": "Exclusive with [segment site site_segment virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a segment on a Cloud Edge", + "title": "Segment on Cloud Edge", + "$ref": "#/definitions/viewsWhereCloudEdgeSegment", + "x-displayname": "Segment on Cloud Edge" + }, + "port": { + "type": "integer", + "description": "Exclusive with [use_default_port]\n TCP port to Listen.\n\nValidation Rules:\n ves.io.schema.rules.uint32.gte: 1\n ves.io.schema.rules.uint32.lte: 65535\n", + "title": "TCP port to listen", + "format": "int64", + "x-displayname": "TCP Listen Port", + "x-ves-validation-rules": { + "ves.io.schema.rules.uint32.gte": "1", + "ves.io.schema.rules.uint32.lte": "65535" + } + }, + "segment": { + "description": "Exclusive with [cloud_edge_segment site site_segment virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a segment", + "title": "Segment", + "$ref": "#/definitions/viewsWhereSegment", + "x-displayname": "Segment" + }, + "site": { + "description": "Exclusive with [cloud_edge_segment segment site_segment virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a customer site and a given network.", + "title": "Site", + "$ref": "#/definitions/viewsWhereSite", + "x-displayname": "Site" + }, + "site_segment": { + "description": "Exclusive with [cloud_edge_segment segment site virtual_network virtual_site virtual_site_segment vk8s_service]\n Advertise on a segment on a site", + "title": "Segment on Site", + "$ref": "#/definitions/viewsWhereSiteSegment", + "x-displayname": "Segment on Site" + }, + "use_default_port": { + "description": "Exclusive with [port]\n For HTTP, default is 80. For HTTPS/SNI, default is 443.", + "title": "Use Default port", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Use Default TCP Listen Port" + }, + "virtual_network": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_site virtual_site_segment vk8s_service]\n Advertise on a virtual network", + "title": "Virtual Network", + "$ref": "#/definitions/viewsWhereVirtualNetwork", + "x-displayname": "Virtual Network" + }, + "virtual_site": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_network virtual_site_segment vk8s_service]\n Advertise on a customer virtual site and a given network.", + "title": "Virtual Site", + "$ref": "#/definitions/viewsWhereVirtualSite", + "x-displayname": "Virtual Site" + }, + "virtual_site_segment": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_network virtual_site vk8s_service]\n Advertise on a segment on a virtual site", + "title": "Segment on Virtual Site", + "$ref": "#/definitions/viewsWhereVirtualSiteSegment", + "x-displayname": "Segment on Virtual Site" + }, + "vk8s_service": { + "description": "Exclusive with [cloud_edge_segment segment site site_segment virtual_network virtual_site virtual_site_segment]\n Advertise on vK8s Service Network on RE.", + "title": "vK8s services network", + "$ref": "#/definitions/viewsWhereVK8SService", + "x-displayname": "vK8s Service Network on RE" + } + } + }, + "viewsWhereVK8SService": { + "type": "object", + "description": "This defines a reference to a RE site or virtual site where a load balancer could be advertised in the vK8s service network", + "title": "WhereVK8SService", + "x-displayname": "vK8s Services on RE", + "x-ves-displayorder": "3", + "x-ves-oneof-field-choice": "[\"site\",\"virtual_site\"]", + "x-ves-proto-message": "ves.io.schema.views.WhereVK8SService", + "properties": { + "site": { + "description": "Exclusive with [virtual_site]\n Reference to site object", + "title": "RE Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "RE Reference" + }, + "virtual_site": { + "description": "Exclusive with [site]\n Reference to virtual site object", + "title": "Virtual Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Virtual Site Reference" + } + } + }, + "viewsWhereVirtualNetwork": { + "type": "object", + "description": "Parameters to advertise on a given virtual network", + "title": "WhereVirtualNetwork", + "x-displayname": "Virtual Network", + "x-ves-displayorder": "1,2,10", + "x-ves-oneof-field-v6_vip_choice": "[\"default_v6_vip\",\"specific_v6_vip\"]", + "x-ves-oneof-field-vip_choice": "[\"default_vip\",\"specific_vip\"]", + "x-ves-proto-message": "ves.io.schema.views.WhereVirtualNetwork", + "properties": { + "default_v6_vip": { + "description": "Exclusive with [specific_v6_vip]\n Use the default VIP, system allocated or configured in the virtual network", + "title": "Default V6 VIP for virtual Network", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default V6 VIP" + }, + "default_vip": { + "description": "Exclusive with [specific_vip]\n Use the default VIP, system allocated or configured in the virtual network", + "title": "Default V4 VIP for Virtual Network", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Default V4 VIP" + }, + "specific_v6_vip": { + "type": "string", + "description": "Exclusive with [default_v6_vip]\n Use given IPV6 address as VIP on virtual Network\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "Specific V6 VIP", + "x-displayname": "Specific V6 VIP", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "specific_vip": { + "type": "string", + "description": "Exclusive with [default_vip]\n Use given IPV4 address as VIP on virtual Network\n\nValidation Rules:\n ves.io.schema.rules.string.ipv4: true\n", + "title": "Specific VIP", + "x-displayname": "Specific V4 VIP", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "virtual_network": { + "description": " Select network reference\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Network", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereVirtualSite": { + "type": "object", + "description": "This defines a reference to a customer site virtual site along with network type where a load balancer could be advertised", + "title": "WhereVirtualSite", + "x-displayname": "Virtual Site", + "x-ves-displayorder": "1,2", + "x-ves-proto-message": "ves.io.schema.views.WhereVirtualSite", + "properties": { + "network": { + "description": " Select network types to be used on site.\n IP address of primary network interface in the network\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Network", + "$ref": "#/definitions/viewsSiteNetwork", + "x-displayname": "Network", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "virtual_site": { + "description": " Reference to virtual site object\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Virtual Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Virtual Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "viewsWhereVirtualSiteSegment": { + "type": "object", + "description": "This defines a reference to a customer site virtual site along with network type where a load balancer could be advertised", + "title": "WhereVirtualSiteSegment", + "x-displayname": "Virtual Site", + "x-ves-displayorder": "1,2,3,4", + "x-ves-proto-message": "ves.io.schema.views.WhereVirtualSiteSegment", + "properties": { + "ip": { + "type": "string", + "description": " Use given IP address as VIP on the site\n\nExample: - \"8.8.8.8\"-\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n ves.io.schema.rules.string.ipv4: true\n", + "title": "IP address on the site", + "x-displayname": "IP Address", + "x-ves-example": "8.8.8.8", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true", + "ves.io.schema.rules.string.ipv4": "true" + } + }, + "ipv6": { + "type": "string", + "description": " Use given IPv6 address as VIP on the site\n\nExample: - \"2001::1\"-\n\nValidation Rules:\n ves.io.schema.rules.string.ipv6: true\n", + "title": "IPv6 address on the site", + "x-displayname": "IPv6 Address", + "x-ves-example": "2001::1", + "x-ves-validation-rules": { + "ves.io.schema.rules.string.ipv6": "true" + } + }, + "segment": { + "description": "\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Segment", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Segment", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + }, + "virtual_site": { + "description": " Reference to virtual site object\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "title": "Virtual Site", + "$ref": "#/definitions/schemaviewsObjectRefType", + "x-displayname": "Virtual Site Reference", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "ztna_applicationCreateRequest": { + "type": "object", + "description": "This is the input message of the 'Create' RPC", + "title": "CreateRequest is used to create an instance of ztna_application", + "x-displayname": "Create Request", + "x-ves-proto-message": "ves.io.schema.ztna_application.CreateRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectCreateMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the ztna_application", + "title": "spec", + "$ref": "#/definitions/ztna_applicationCreateSpecType", + "x-displayname": "Spec" + } + } + }, + "ztna_applicationCreateResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.CreateResponse", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the ztna_application", + "title": "spec", + "$ref": "#/definitions/ztna_applicationGetSpecType", + "x-displayname": "Spec" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "ztna_applicationCreateSpecType": { + "type": "object", + "title": "CreateSpecType", + "x-displayname": "Create User", + "x-ves-proto-message": "ves.io.schema.ztna_application.CreateSpecType", + "properties": { + "domain_name": { + "type": "string", + "description": " ztna_application's Domain name\n\nExample: - \"my.example.com\"-", + "x-displayname": "Domain name", + "x-ves-example": "my.example.com" + }, + "msg": { + "description": " Denotes the service IP address and port", + "$ref": "#/definitions/ztna_applicationServiceDetails", + "x-displayname": "Service details" + }, + "policies": { + "description": " Denotes the ZTNA policies", + "$ref": "#/definitions/ztna_applicationZTNApolicies", + "x-displayname": "ZTNA policies" + }, + "proxy_advertisement": { + "description": " Proxy Advertisement choice", + "$ref": "#/definitions/ztna_applicationProxyAdvertisementType", + "x-displayname": "Proxy Advertisement" + }, + "transport_type": { + "description": " DNS Proxy supports TCP and UDP transport\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/ztna_applicationTransportType", + "x-displayname": "Transport Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "ztna_applicationDeleteRequest": { + "type": "object", + "description": "This is the input message of the 'Delete' RPC.", + "title": "DeleteRequest is used to delete a ztna_application", + "x-displayname": "Delete Request", + "x-ves-proto-message": "ves.io.schema.ztna_application.DeleteRequest", + "properties": { + "fail_if_referred": { + "type": "boolean", + "description": " Fail the delete operation if this object is being referred by other objects", + "title": "fail_if_referred", + "format": "boolean", + "x-displayname": "Fail-If-Referred" + }, + "name": { + "type": "string", + "description": " Name of the configuration object\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " Namespace in which the configuration object is present\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + } + } + }, + "ztna_applicationGetResponse": { + "type": "object", + "description": "This is the output message of the 'Get' RPC", + "title": "GetResponse is the shape of a read ztna_application", + "x-displayname": "Get Response", + "x-ves-proto-message": "ves.io.schema.ztna_application.GetResponse", + "properties": { + "create_form": { + "description": "Format used to create a new similar object", + "title": "create_form", + "$ref": "#/definitions/ztna_applicationCreateRequest", + "x-displayname": "CreateRequest Format" + }, + "deleted_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "deleted_referred_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Deleted Referred Objects" + }, + "disabled_referred_objects": { + "type": "array", + "description": "The set of deleted objects that are referred by this object", + "title": "disabled_referred_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Disabled Referred Objects" + }, + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "referring_objects": { + "type": "array", + "description": "The set of objects that are referring to this object in their spec", + "title": "referring_objects", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Referring Objects" + }, + "replace_form": { + "description": "Format to replace changeable values in object", + "title": "replace_form", + "$ref": "#/definitions/ztna_applicationReplaceRequest", + "x-displayname": "ReplaceRequest Format" + }, + "spec": { + "description": " Specification of the desired behavior of the ztna_application", + "title": "spec", + "$ref": "#/definitions/ztna_applicationGetSpecType", + "x-displayname": "Spec" + }, + "status": { + "type": "array", + "description": "The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/ztna_applicationStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " System generated object's metadata", + "title": "system metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + } + } + }, + "ztna_applicationGetResponseFormatCode": { + "type": "string", + "description": "x-displayName: \"Get Response Format\"\nThis is the various forms that can be requested to be sent in the GetResponse\n\n - GET_RSP_FORMAT_DEFAULT: x-displayName: \"Default Format\"\nDefault format of returned resource\n - GET_RSP_FORMAT_FOR_CREATE: x-displayName: \"Create request Format\"\nResponse should be in CreateRequest format\n - GET_RSP_FORMAT_FOR_REPLACE: x-displayName: \"Replace request format\"\nResponse should be in ReplaceRequest format\n - GET_RSP_FORMAT_STATUS: x-displayName: \"Status format\"\nResponse should be in StatusObject(s) format\n - GET_RSP_FORMAT_READ: x-displayName: \"GetSpecType format\"\nResponse should be in format of GetSpecType\n - GET_RSP_FORMAT_REFERRING_OBJECTS: x-displayName: \"Referring Objects\"\nResponse should have other objects referring to this object\n - GET_RSP_FORMAT_BROKEN_REFERENCES: x-displayName: \"Broken Referred Objects\"\nResponse should have deleted and disabled objects referrred by this object", + "title": "GetResponseFormatCode", + "enum": [ + "GET_RSP_FORMAT_DEFAULT", + "GET_RSP_FORMAT_FOR_CREATE", + "GET_RSP_FORMAT_FOR_REPLACE", + "GET_RSP_FORMAT_STATUS", + "GET_RSP_FORMAT_READ", + "GET_RSP_FORMAT_REFERRING_OBJECTS", + "GET_RSP_FORMAT_BROKEN_REFERENCES" + ], + "default": "GET_RSP_FORMAT_DEFAULT" + }, + "ztna_applicationGetSpecType": { + "type": "object", + "title": "GetSpecType", + "x-displayname": "Get User", + "x-ves-proto-message": "ves.io.schema.ztna_application.GetSpecType", + "properties": { + "domain_name": { + "type": "string", + "description": " ztna_application's Domain name\n\nExample: - \"my.example.com\"-", + "x-displayname": "Domain name", + "x-ves-example": "my.example.com" + }, + "msg": { + "description": " Denotes the service IP address and port", + "$ref": "#/definitions/ztna_applicationServiceDetails", + "x-displayname": "Service details" + }, + "policies": { + "description": " Denotes the ZTNA policies", + "$ref": "#/definitions/ztna_applicationZTNApolicies", + "x-displayname": "ZTNA policies" + }, + "proxy_advertisement": { + "description": " Proxy Advertisement choice", + "$ref": "#/definitions/ztna_applicationProxyAdvertisementType", + "x-displayname": "Proxy Advertisement" + }, + "transport_type": { + "description": " DNS Proxy supports TCP and UDP transport\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/ztna_applicationTransportType", + "x-displayname": "Transport Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "ztna_applicationListResponse": { + "type": "object", + "description": "This is the output message of 'List' RPC.", + "title": "ListResponse is the collection of ztna_application", + "x-displayname": "List Response", + "x-ves-proto-message": "ves.io.schema.ztna_application.ListResponse", + "properties": { + "errors": { + "type": "array", + "description": " Errors(if any) while listing items from collection", + "title": "errors", + "items": { + "$ref": "#/definitions/schemaErrorType" + }, + "x-displayname": "Errors" + }, + "items": { + "type": "array", + "description": " items represents the collection in response", + "title": "items", + "items": { + "$ref": "#/definitions/ztna_applicationListResponseItem" + }, + "x-displayname": "Items" + } + } + }, + "ztna_applicationListResponseItem": { + "type": "object", + "description": "By default a summary of ztna_application is returned in 'List'. By setting\n'report_fields' in the ListRequest more details of each item can be got.", + "title": "ListResponseItem is an individual item in a collection of ztna_application", + "x-displayname": "List Item", + "x-ves-proto-message": "ves.io.schema.ztna_application.ListResponseItem", + "properties": { + "annotations": { + "type": "object", + "description": " The set of annotations present on this ztna_application", + "title": "annotations", + "x-displayname": "Annotations" + }, + "description": { + "type": "string", + "description": " The description set for this ztna_application", + "title": "description", + "x-displayname": "Description" + }, + "disabled": { + "type": "boolean", + "description": " A value of true indicates ztna_application is administratively disabled", + "title": "disabled", + "format": "boolean", + "x-displayname": "Disabled" + }, + "get_spec": { + "description": " If ListRequest has any specified report_fields, it will appear in object", + "title": "get_spec", + "$ref": "#/definitions/ztna_applicationGetSpecType", + "x-displayname": "Get Specification" + }, + "labels": { + "type": "object", + "description": " The set of labels present on this ztna_application", + "title": "labels", + "x-displayname": "Labels" + }, + "metadata": { + "description": " If list request has report_fields set then metadata will\n contain all the metadata associated with the object.", + "title": "metadata", + "$ref": "#/definitions/schemaObjectGetMetaType", + "x-displayname": "Metadata" + }, + "name": { + "type": "string", + "description": " The name of this ztna_application\n\nExample: - \"name\"-", + "title": "name", + "x-displayname": "Name", + "x-ves-example": "name" + }, + "namespace": { + "type": "string", + "description": " The namespace this item belongs to\n\nExample: - \"ns1\"-", + "title": "namespace", + "x-displayname": "Namespace", + "x-ves-example": "ns1" + }, + "owner_view": { + "description": " Reference to the view object that owns this object.\n If there is no view owner, this field will be nil.\n If not nil, this object can only be edited/deleted through the view", + "title": "owner_view", + "$ref": "#/definitions/schemaViewRefType", + "x-displayname": "Owner View" + }, + "status_set": { + "type": "array", + "description": " The status reported by different services for this configuration object", + "title": "status", + "items": { + "$ref": "#/definitions/ztna_applicationStatusObject" + }, + "x-displayname": "Status" + }, + "system_metadata": { + "description": " If list request has report_fields set then system_metadata will\n contain all the system generated details of this object.", + "title": "system_metadata", + "$ref": "#/definitions/schemaSystemObjectGetMetaType", + "x-displayname": "System Metadata" + }, + "tenant": { + "type": "string", + "description": " The tenant this item belongs to\n\nExample: - \"acmecorp\"-", + "title": "tenant", + "x-displayname": "Tenant", + "x-ves-example": "acmecorp" + }, + "uid": { + "type": "string", + "description": " The unique uid of this ztna_application\n\nExample: - \"d27938ba-967e-40a7-9709-57b8627f9f75\"-", + "title": "uid", + "x-displayname": "UID", + "x-ves-example": "d27938ba-967e-40a7-9709-57b8627f9f75" + } + } + }, + "ztna_applicationProxyAdvertisementType": { + "type": "object", + "description": "Proxy Advertisement Type", + "title": "Proxy Advertisement Type", + "x-displayname": "Proxy Advertisement Type", + "x-ves-oneof-field-advertise_choice": "[\"advertise_custom\",\"advertise_on_public\",\"advertise_on_public_default_vip\",\"do_not_advertise\"]", + "x-ves-proto-message": "ves.io.schema.ztna_application.ProxyAdvertisementType", + "properties": { + "advertise_custom": { + "description": "Exclusive with [advertise_on_public advertise_on_public_default_vip do_not_advertise]\n Advertise this load balancer on specific sites", + "title": "Advertise Custom", + "$ref": "#/definitions/viewsAdvertiseCustom", + "x-displayname": "Custom" + }, + "advertise_on_public": { + "description": "Exclusive with [advertise_custom advertise_on_public_default_vip do_not_advertise]\n Advertise this proxy on public network", + "title": "Advertise On Public", + "$ref": "#/definitions/viewsAdvertisePublic", + "x-displayname": "Internet (Specified VIP)" + }, + "advertise_on_public_default_vip": { + "description": "Exclusive with [advertise_custom advertise_on_public do_not_advertise]\n Advertise this proxy on public network with default VIP\n Advertise this load balancer on public network with default VIP", + "title": "Advertise On Public Default VIP", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Internet" + }, + "do_not_advertise": { + "description": "Exclusive with [advertise_custom advertise_on_public advertise_on_public_default_vip]\n Do not advertise this proxy", + "title": "Do Not Advertise this proxy", + "$ref": "#/definitions/ioschemaEmpty", + "x-displayname": "Do Not Advertise" + } + } + }, + "ztna_applicationReplaceRequest": { + "type": "object", + "description": "This is the input message of the 'Replace' RPC", + "title": "ReplaceRequest is used to replace contents of a ztna_application", + "x-displayname": "Replace Request", + "x-ves-proto-message": "ves.io.schema.ztna_application.ReplaceRequest", + "properties": { + "metadata": { + "description": " Standard object's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaObjectReplaceMetaType", + "x-displayname": "Metadata" + }, + "spec": { + "description": " Specification of the desired behavior of the ztna_application", + "title": "spec", + "$ref": "#/definitions/ztna_applicationReplaceSpecType", + "x-displayname": "Spec" + } + } + }, + "ztna_applicationReplaceResponse": { + "type": "object", + "x-ves-proto-message": "ves.io.schema.ztna_application.ReplaceResponse" + }, + "ztna_applicationReplaceSpecType": { + "type": "object", + "title": "ReplaceSpecType", + "x-displayname": "Replace User", + "x-ves-proto-message": "ves.io.schema.ztna_application.ReplaceSpecType", + "properties": { + "domain_name": { + "type": "string", + "description": " ztna_application's Domain name\n\nExample: - \"my.example.com\"-", + "x-displayname": "Domain name", + "x-ves-example": "my.example.com" + }, + "msg": { + "description": " Denotes the service IP address and port", + "$ref": "#/definitions/ztna_applicationServiceDetails", + "x-displayname": "Service details" + }, + "policies": { + "description": " Denotes the ZTNA policies", + "$ref": "#/definitions/ztna_applicationZTNApolicies", + "x-displayname": "ZTNA policies" + }, + "proxy_advertisement": { + "description": " Proxy Advertisement choice", + "$ref": "#/definitions/ztna_applicationProxyAdvertisementType", + "x-displayname": "Proxy Advertisement" + }, + "transport_type": { + "description": " DNS Proxy supports TCP and UDP transport\n\nRequired: YES\n\nValidation Rules:\n ves.io.schema.rules.message.required: true\n", + "$ref": "#/definitions/ztna_applicationTransportType", + "x-displayname": "Transport Type", + "x-ves-required": "true", + "x-ves-validation-rules": { + "ves.io.schema.rules.message.required": "true" + } + } + } + }, + "ztna_applicationServiceDetails": { + "type": "object", + "description": "Object represents a service IP in the system.\nThis message is part of the ZTNA application schema.", + "title": "Service Details", + "x-displayname": "Service Details", + "x-ves-proto-message": "ves.io.schema.ztna_application.ServiceDetails", + "properties": { + "ip": { + "description": " Used to set the Service IP", + "title": "Service IP", + "$ref": "#/definitions/schemaIpAddressType", + "x-displayname": "Service IP" + }, + "port": { + "type": "integer", + "description": " Matches port", + "title": "Port", + "format": "int32", + "x-displayname": "Port" + } + } + }, + "ztna_applicationStatusObject": { + "type": "object", + "description": "Most recently observed status of object\nDisplays status of an object", + "title": "Status for User object", + "x-displayname": "Status", + "x-ves-proto-message": "ves.io.schema.ztna_application.StatusObject", + "properties": { + "conditions": { + "type": "array", + "description": " Conditions", + "title": "conditions", + "items": { + "$ref": "#/definitions/schemaConditionType" + }, + "x-displayname": "Conditions" + }, + "metadata": { + "description": " Standard status's metadata", + "title": "metadata", + "$ref": "#/definitions/schemaStatusMetaType", + "x-displayname": "Metadata" + }, + "object_refs": { + "type": "array", + "description": " Object reference", + "title": "object_refs", + "items": { + "$ref": "#/definitions/ioschemaObjectRefType" + }, + "x-displayname": "Config Object" + } + } + }, + "ztna_applicationTransportType": { + "type": "string", + "description": "Transport Type\n\n - UDP: UDP\n\n - TCP: TCP\n\n - BothTCPAndUDP: Both TCP and UDP\n", + "title": "Transport Type", + "enum": [ + "UDP", + "TCP", + "BothTCPAndUDP" + ], + "default": "UDP", + "x-displayname": "Transport Type", + "x-ves-proto-enum": "ves.io.schema.ztna_application.TransportType" + }, + "ztna_applicationZTNApolicies": { + "type": "object", + "description": "Object represents a policy in the system.\nThis message is part of the ZTNA application schema.", + "title": "ZTNA policies", + "x-displayname": "ZTNA policies", + "x-ves-proto-message": "ves.io.schema.ztna_application.ZTNApolicies", + "properties": { + "connectivity_policy_name": { + "type": "string", + "description": " Used to set the Connectivity policy name\n\nExample: - \"connectivity_demo\"-", + "title": "Connectivity policy name", + "x-displayname": "Connectivity policy name ", + "x-ves-example": "connectivity_demo" + }, + "message_policy_name": { + "type": "string", + "description": " Used to set the Message policy name \n\nExample: - \"msg_demo\"-", + "title": "Message policy name", + "x-displayname": "Message policy name ", + "x-ves-example": "msg_demo" + }, + "session_policy_name": { + "type": "string", + "description": " Used to set the session policy name\n\nExample: - \"ara_p1\"-", + "title": "session policy name", + "x-displayname": "session policy name", + "x-ves-example": "ara_p1" + } + } + } + }, + "x-displayname": "Application configuration", + "x-ves-proto-file": "ves.io/schema/ztna_application/public_crudapi.proto" +}` diff --git a/pbgo/extschema/schema/ztna_application/public_crudapi.vesmsg.go b/pbgo/extschema/schema/ztna_application/public_crudapi.vesmsg.go new file mode 100644 index 000000000..6111f3c57 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/public_crudapi.vesmsg.go @@ -0,0 +1,1739 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna_application + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CreateRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateRequest) DeepCopy() *CreateRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateRequestValidator().Validate(ctx, m, opts...) +} + +func (m *CreateRequest) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSpecDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *CreateRequest) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateCreateRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateRequestValidator = func() *ValidateCreateRequest { + v := &ValidateCreateRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectCreateMetaTypeValidator().Validate + + v.FldValidators["spec"] = CreateSpecTypeValidator().Validate + + return v +}() + +func CreateRequestValidator() db.Validator { + return DefaultCreateRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *CreateResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateResponse) DeepCopy() *CreateResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateResponseValidator().Validate(ctx, m, opts...) +} + +func (m *CreateResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSpecDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *CreateResponse) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateCreateResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateResponseValidator = func() *ValidateCreateResponse { + v := &ValidateCreateResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + return v +}() + +func CreateResponseValidator() db.Validator { + return DefaultCreateResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *DeleteRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *DeleteRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *DeleteRequest) DeepCopy() *DeleteRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &DeleteRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *DeleteRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *DeleteRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return DeleteRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateDeleteRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateDeleteRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*DeleteRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *DeleteRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["fail_if_referred"]; exists { + + vOpts := append(opts, db.WithValidateField("fail_if_referred")) + if err := fv(ctx, m.GetFailIfReferred(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultDeleteRequestValidator = func() *ValidateDeleteRequest { + v := &ValidateDeleteRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func DeleteRequestValidator() db.Validator { + return DefaultDeleteRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetRequest) DeepCopy() *GetRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateGetRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["response_format"]; exists { + + vOpts := append(opts, db.WithValidateField("response_format")) + if err := fv(ctx, m.GetResponseFormat(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetRequestValidator = func() *ValidateGetRequest { + v := &ValidateGetRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func GetRequestValidator() db.Validator { + return DefaultGetRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetResponse) DeepCopy() *GetResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetResponseValidator().Validate(ctx, m, opts...) +} + +func (m *GetResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetCreateFormDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetCreateFormDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetReplaceFormDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetReplaceFormDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *GetResponse) GetCreateFormDRefInfo() ([]db.DRefInfo, error) { + if m.GetCreateForm() == nil { + return nil, nil + } + + drInfos, err := m.GetCreateForm().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetCreateForm().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "create_form." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *GetResponse) GetReplaceFormDRefInfo() ([]db.DRefInfo, error) { + if m.GetReplaceForm() == nil { + return nil, nil + } + + drInfos, err := m.GetReplaceForm().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetReplaceForm().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "replace_form." + dri.DRField + } + return drInfos, err + +} + +// GetDRefInfo for the field's type +func (m *GetResponse) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateGetResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["create_form"]; exists { + + vOpts := append(opts, db.WithValidateField("create_form")) + if err := fv(ctx, m.GetCreateForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["deleted_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("deleted_referred_objects")) + for idx, item := range m.GetDeletedReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["disabled_referred_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled_referred_objects")) + for idx, item := range m.GetDisabledReferredObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["referring_objects"]; exists { + + vOpts := append(opts, db.WithValidateField("referring_objects")) + for idx, item := range m.GetReferringObjects() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["replace_form"]; exists { + + vOpts := append(opts, db.WithValidateField("replace_form")) + if err := fv(ctx, m.GetReplaceForm(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status"]; exists { + + vOpts := append(opts, db.WithValidateField("status")) + for idx, item := range m.GetStatus() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetResponseValidator = func() *ValidateGetResponse { + v := &ValidateGetResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["create_form"] = CreateRequestValidator().Validate + + v.FldValidators["replace_form"] = ReplaceRequestValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + v.FldValidators["spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["status"] = StatusObjectValidator().Validate + + return v +}() + +func GetResponseValidator() db.Validator { + return DefaultGetResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListRequest) DeepCopy() *ListRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListRequestValidator().Validate(ctx, m, opts...) +} + +type ValidateListRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["label_filter"]; exists { + + vOpts := append(opts, db.WithValidateField("label_filter")) + if err := fv(ctx, m.GetLabelFilter(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["report_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_fields")) + for idx, item := range m.GetReportFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["report_status_fields"]; exists { + + vOpts := append(opts, db.WithValidateField("report_status_fields")) + for idx, item := range m.GetReportStatusFields() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListRequestValidator = func() *ValidateListRequest { + v := &ValidateListRequest{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ListRequestValidator() db.Validator { + return DefaultListRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListResponse) DeepCopy() *ListResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponse) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetItemsDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ListResponse) GetItemsDRefInfo() ([]db.DRefInfo, error) { + if m.GetItems() == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + for idx, e := range m.GetItems() { + driSet, err := e.GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetItems() GetDRefInfo() FAILED") + } + for i := range driSet { + dri := &driSet[i] + dri.DRField = fmt.Sprintf("items[%v].%s", idx, dri.DRField) + } + drInfos = append(drInfos, driSet...) + } + return drInfos, nil + +} + +type ValidateListResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponse got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["errors"]; exists { + + vOpts := append(opts, db.WithValidateField("errors")) + for idx, item := range m.GetErrors() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["items"]; exists { + + vOpts := append(opts, db.WithValidateField("items")) + for idx, item := range m.GetItems() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseValidator = func() *ValidateListResponse { + v := &ValidateListResponse{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["items"] = ListResponseItemValidator().Validate + + return v +}() + +func ListResponseValidator() db.Validator { + return DefaultListResponseValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ListResponseItem) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ListResponseItem) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ListResponseItem) DeepCopy() *ListResponseItem { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ListResponseItem{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ListResponseItem) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ListResponseItem) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ListResponseItemValidator().Validate(ctx, m, opts...) +} + +func (m *ListResponseItem) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetGetSpecDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetGetSpecDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *ListResponseItem) GetGetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetGetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetGetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetGetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "get_spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateListResponseItem struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateListResponseItem) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ListResponseItem) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ListResponseItem got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["annotations"]; exists { + + vOpts := append(opts, db.WithValidateField("annotations")) + for key, value := range m.GetAnnotations() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["description"]; exists { + + vOpts := append(opts, db.WithValidateField("description")) + if err := fv(ctx, m.GetDescription(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["disabled"]; exists { + + vOpts := append(opts, db.WithValidateField("disabled")) + if err := fv(ctx, m.GetDisabled(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["get_spec"]; exists { + + vOpts := append(opts, db.WithValidateField("get_spec")) + if err := fv(ctx, m.GetGetSpec(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["labels"]; exists { + + vOpts := append(opts, db.WithValidateField("labels")) + for key, value := range m.GetLabels() { + vOpts := append(vOpts, db.WithValidateMapKey(key)) + if err := fv(ctx, value, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["name"]; exists { + + vOpts := append(opts, db.WithValidateField("name")) + if err := fv(ctx, m.GetName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["namespace"]; exists { + + vOpts := append(opts, db.WithValidateField("namespace")) + if err := fv(ctx, m.GetNamespace(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["owner_view"]; exists { + + vOpts := append(opts, db.WithValidateField("owner_view")) + if err := fv(ctx, m.GetOwnerView(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["status_set"]; exists { + + vOpts := append(opts, db.WithValidateField("status_set")) + for idx, item := range m.GetStatusSet() { + vOpts := append(vOpts, db.WithValidateRepItem(idx), db.WithValidateIsRepItem(true)) + if err := fv(ctx, item, vOpts...); err != nil { + return err + } + } + + } + + if fv, exists := v.FldValidators["system_metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("system_metadata")) + if err := fv(ctx, m.GetSystemMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["tenant"]; exists { + + vOpts := append(opts, db.WithValidateField("tenant")) + if err := fv(ctx, m.GetTenant(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["uid"]; exists { + + vOpts := append(opts, db.WithValidateField("uid")) + if err := fv(ctx, m.GetUid(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultListResponseItemValidator = func() *ValidateListResponseItem { + v := &ValidateListResponseItem{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["get_spec"] = GetSpecTypeValidator().Validate + + v.FldValidators["status_set"] = StatusObjectValidator().Validate + + v.FldValidators["metadata"] = ves_io_schema.ObjectGetMetaTypeValidator().Validate + + return v +}() + +func ListResponseItemValidator() db.Validator { + return DefaultListResponseItemValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceRequest) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceRequest) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceRequest) DeepCopy() *ReplaceRequest { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceRequest{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceRequest) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceRequest) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceRequestValidator().Validate(ctx, m, opts...) +} + +func (m *ReplaceRequest) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetSpecDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ReplaceRequest) GetSpecDRefInfo() ([]db.DRefInfo, error) { + if m.GetSpec() == nil { + return nil, nil + } + + drInfos, err := m.GetSpec().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetSpec().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "spec." + dri.DRField + } + return drInfos, err + +} + +type ValidateReplaceRequest struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceRequest) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceRequest) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceRequest got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["metadata"]; exists { + + vOpts := append(opts, db.WithValidateField("metadata")) + if err := fv(ctx, m.GetMetadata(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["resource_version"]; exists { + + vOpts := append(opts, db.WithValidateField("resource_version")) + if err := fv(ctx, m.GetResourceVersion(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["spec"]; exists { + + vOpts := append(opts, db.WithValidateField("spec")) + if err := fv(ctx, m.GetSpec(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceRequestValidator = func() *ValidateReplaceRequest { + v := &ValidateReplaceRequest{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["metadata"] = ves_io_schema.ObjectReplaceMetaTypeValidator().Validate + + v.FldValidators["spec"] = ReplaceSpecTypeValidator().Validate + + return v +}() + +func ReplaceRequestValidator() db.Validator { + return DefaultReplaceRequestValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceResponse) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceResponse) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceResponse) DeepCopy() *ReplaceResponse { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceResponse{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceResponse) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceResponse) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceResponseValidator().Validate(ctx, m, opts...) +} + +type ValidateReplaceResponse struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceResponse) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceResponse) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceResponse got type %s", t) + } + } + if m == nil { + return nil + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceResponseValidator = func() *ValidateReplaceResponse { + v := &ValidateReplaceResponse{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ReplaceResponseValidator() db.Validator { + return DefaultReplaceResponseValidator +} + +func (m *CreateRequest) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectCreateMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &CreateSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + +} + +func (m *CreateRequest) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *CreateRequest) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *CreateRequest) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + +} + +func (m *CreateRequest) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *CreateRequest) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *CreateResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *CreateResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *CreateResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *CreateResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *CreateResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *CreateResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *GetResponse) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectGetMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &GetSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + + if m.SystemMetadata == nil { + m.SystemMetadata = &ves_io_schema.SystemObjectGetMetaType{} + } + m.SystemMetadata.FromSystemObjectMetaTypeWithoutDeepCopy(f.GetSystemMetadata()) + +} + +func (m *GetResponse) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *GetResponse) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *GetResponse) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + + if m1.SystemMetadata != nil { + if f.SystemMetadata == nil { + f.SystemMetadata = &ves_io_schema.SystemObjectMetaType{} + } + } else if f.SystemMetadata != nil { + f.SystemMetadata = nil + } + + if m1.SystemMetadata != nil { + m1.SystemMetadata.ToSystemObjectMetaTypeWithoutDeepCopy(f.SystemMetadata) + } + +} + +func (m *GetResponse) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *GetResponse) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} + +func (m *ReplaceRequest) fromObject(e db.Entry, withDeepCopy bool) { + f := e.(*DBObject) + if withDeepCopy { + f = e.DeepCopy().(*DBObject) + } + _ = f + + if m.Metadata == nil { + m.Metadata = &ves_io_schema.ObjectReplaceMetaType{} + } + m.Metadata.FromObjectMetaTypeWithoutDeepCopy(f.GetMetadata()) + + if m.Spec == nil { + m.Spec = &ReplaceSpecType{} + } + m.Spec.FromGlobalSpecTypeWithoutDeepCopy(f.GetSpec().GetGcSpec()) + +} + +func (m *ReplaceRequest) FromObject(e db.Entry) { + m.fromObject(e, true) +} + +func (m *ReplaceRequest) FromObjectWithoutDeepCopy(e db.Entry) { + m.fromObject(e, false) +} + +func (m *ReplaceRequest) toObject(e db.Entry, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + f := e.(*DBObject) + _ = f + + if m1.Metadata != nil { + if f.Metadata == nil { + f.Metadata = &ves_io_schema.ObjectMetaType{} + } + } else if f.Metadata != nil { + f.Metadata = nil + } + + if m1.Metadata != nil { + m1.Metadata.ToObjectMetaTypeWithoutDeepCopy(f.Metadata) + } + + if m1.Spec != nil { + if f.Spec == nil { + f.Spec = &SpecType{} + } + } else if f.Spec != nil { + f.Spec = nil + } + + if m1.Spec != nil { + if f.Spec.GcSpec == nil { + f.Spec.GcSpec = &GlobalSpecType{} + } + } else if f.Spec != nil { + f.Spec.GcSpec = nil + } + + if m1.Spec != nil { + m1.Spec.ToGlobalSpecTypeWithoutDeepCopy(f.Spec.GcSpec) + } + +} + +func (m *ReplaceRequest) ToObject(e db.Entry) { + m.toObject(e, true) +} + +func (m *ReplaceRequest) ToObjectWithoutDeepCopy(e db.Entry) { + m.toObject(e, false) +} diff --git a/pbgo/extschema/schema/ztna_application/types.pb.go b/pbgo/extschema/schema/ztna_application/types.pb.go new file mode 100644 index 000000000..713fb87e7 --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/types.pb.go @@ -0,0 +1,3786 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: ves.io/schema/ztna_application/types.proto + +package ztna_application + +import ( + fmt "fmt" + _ "github.com/gogo/protobuf/gogoproto" + proto "github.com/gogo/protobuf/proto" + _ "github.com/gogo/protobuf/types" + golang_proto "github.com/golang/protobuf/proto" + schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + io "io" + math "math" + math_bits "math/bits" + reflect "reflect" + strconv "strconv" + strings "strings" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = golang_proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Transport Type +// +// x-displayName: "Transport Type" +// Transport Type +type TransportType int32 + +const ( + // UDP + // + // x-displayName: "UDP" + UDP TransportType = 0 + // TCP + // + // x-displayName: "TCP" + TCP TransportType = 1 + // Both TCP and UDP + // + // x-displayName: "Both TCP and UDP" + BothTCPAndUDP TransportType = 2 +) + +var TransportType_name = map[int32]string{ + 0: "UDP", + 1: "TCP", + 2: "BothTCPAndUDP", +} + +var TransportType_value = map[string]int32{ + "UDP": 0, + "TCP": 1, + "BothTCPAndUDP": 2, +} + +func (TransportType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{0} +} + +// Service Details +// +// x-displayName: "Service Details" +// Object represents a service IP in the system. +// This message is part of the ZTNA application schema. +type ServiceDetails struct { + // Service IP + // + // x-displayName: "Service IP" + // Used to set the Service IP + Ip *schema.IpAddressType `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"` + // Port + // + // x-displayName: "Port" + // Matches port + Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"` +} + +func (m *ServiceDetails) Reset() { *m = ServiceDetails{} } +func (*ServiceDetails) ProtoMessage() {} +func (*ServiceDetails) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{0} +} +func (m *ServiceDetails) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ServiceDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ServiceDetails) XXX_Merge(src proto.Message) { + xxx_messageInfo_ServiceDetails.Merge(m, src) +} +func (m *ServiceDetails) XXX_Size() int { + return m.Size() +} +func (m *ServiceDetails) XXX_DiscardUnknown() { + xxx_messageInfo_ServiceDetails.DiscardUnknown(m) +} + +var xxx_messageInfo_ServiceDetails proto.InternalMessageInfo + +func (m *ServiceDetails) GetIp() *schema.IpAddressType { + if m != nil { + return m.Ip + } + return nil +} + +func (m *ServiceDetails) GetPort() int32 { + if m != nil { + return m.Port + } + return 0 +} + +// ZTNA policies +// +// x-displayName: "ZTNA policies" +// Object represents a policy in the system. +// This message is part of the ZTNA application schema. +type ZTNApolicies struct { + // Connectivity policy name + // + // x-displayName: "Connectivity policy name " + // x-example: "connectivity_demo" + // Used to set the Connectivity policy name + ConnectivityPolicyName string `protobuf:"bytes,2,opt,name=connectivity_policy_name,json=connectivityPolicyName,proto3" json:"connectivity_policy_name,omitempty"` + // session policy name + // + // x-displayName: "session policy name" + // x-example: "ara_p1" + // Used to set the session policy name + SessionPolicyName string `protobuf:"bytes,1,opt,name=session_policy_name,json=sessionPolicyName,proto3" json:"session_policy_name,omitempty"` + // Message policy name + // + // x-displayName: "Message policy name " + // x-example: "msg_demo" + // Used to set the Message policy name + MessagePolicyName string `protobuf:"bytes,3,opt,name=message_policy_name,json=messagePolicyName,proto3" json:"message_policy_name,omitempty"` +} + +func (m *ZTNApolicies) Reset() { *m = ZTNApolicies{} } +func (*ZTNApolicies) ProtoMessage() {} +func (*ZTNApolicies) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{1} +} +func (m *ZTNApolicies) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ZTNApolicies) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ZTNApolicies) XXX_Merge(src proto.Message) { + xxx_messageInfo_ZTNApolicies.Merge(m, src) +} +func (m *ZTNApolicies) XXX_Size() int { + return m.Size() +} +func (m *ZTNApolicies) XXX_DiscardUnknown() { + xxx_messageInfo_ZTNApolicies.DiscardUnknown(m) +} + +var xxx_messageInfo_ZTNApolicies proto.InternalMessageInfo + +func (m *ZTNApolicies) GetConnectivityPolicyName() string { + if m != nil { + return m.ConnectivityPolicyName + } + return "" +} + +func (m *ZTNApolicies) GetSessionPolicyName() string { + if m != nil { + return m.SessionPolicyName + } + return "" +} + +func (m *ZTNApolicies) GetMessagePolicyName() string { + if m != nil { + return m.MessagePolicyName + } + return "" +} + +// TileAccess +// +// x-displayName: "Tile Access" +// Defines access of primary navigation tile. +type TileAccess struct { + // state + // + // x-displayName: "Addon Service State" + // Addon service current state + State schema.TileAccessState `protobuf:"varint,1,opt,name=state,proto3,enum=ves.io.schema.TileAccessState" json:"state,omitempty"` + // display_name + // + // x-displayName: "Display Name" + // Name to use for display purposes + DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` +} + +func (m *TileAccess) Reset() { *m = TileAccess{} } +func (*TileAccess) ProtoMessage() {} +func (*TileAccess) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{2} +} +func (m *TileAccess) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *TileAccess) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *TileAccess) XXX_Merge(src proto.Message) { + xxx_messageInfo_TileAccess.Merge(m, src) +} +func (m *TileAccess) XXX_Size() int { + return m.Size() +} +func (m *TileAccess) XXX_DiscardUnknown() { + xxx_messageInfo_TileAccess.DiscardUnknown(m) +} + +var xxx_messageInfo_TileAccess proto.InternalMessageInfo + +func (m *TileAccess) GetState() schema.TileAccessState { + if m != nil { + return m.State + } + return schema.TILE_AC_NONE +} + +func (m *TileAccess) GetDisplayName() string { + if m != nil { + return m.DisplayName + } + return "" +} + +// Proxy Advertisement Type +// +// x-displayName: "Proxy Advertisement Type" +// Proxy Advertisement Type +type ProxyAdvertisementType struct { + // Proxy Advertisement choice + // + // x-displayName: "Proxy Advertisement choice" + // x-required + // Proxy Advertisement choice, Internet or Custom. + // + // Types that are valid to be assigned to AdvertiseChoice: + // *ProxyAdvertisementType_DoNotAdvertise + // *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip + // *ProxyAdvertisementType_AdvertiseOnPublic + // *ProxyAdvertisementType_AdvertiseCustom + AdvertiseChoice isProxyAdvertisementType_AdvertiseChoice `protobuf_oneof:"advertise_choice"` +} + +func (m *ProxyAdvertisementType) Reset() { *m = ProxyAdvertisementType{} } +func (*ProxyAdvertisementType) ProtoMessage() {} +func (*ProxyAdvertisementType) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{3} +} +func (m *ProxyAdvertisementType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ProxyAdvertisementType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ProxyAdvertisementType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ProxyAdvertisementType.Merge(m, src) +} +func (m *ProxyAdvertisementType) XXX_Size() int { + return m.Size() +} +func (m *ProxyAdvertisementType) XXX_DiscardUnknown() { + xxx_messageInfo_ProxyAdvertisementType.DiscardUnknown(m) +} + +var xxx_messageInfo_ProxyAdvertisementType proto.InternalMessageInfo + +type isProxyAdvertisementType_AdvertiseChoice interface { + isProxyAdvertisementType_AdvertiseChoice() + Equal(interface{}) bool + MarshalTo([]byte) (int, error) + Size() int +} + +type ProxyAdvertisementType_DoNotAdvertise struct { + DoNotAdvertise *schema.Empty `protobuf:"bytes,2,opt,name=do_not_advertise,json=doNotAdvertise,proto3,oneof" json:"do_not_advertise,omitempty"` +} +type ProxyAdvertisementType_AdvertiseOnPublicDefaultVip struct { + AdvertiseOnPublicDefaultVip *schema.Empty `protobuf:"bytes,3,opt,name=advertise_on_public_default_vip,json=advertiseOnPublicDefaultVip,proto3,oneof" json:"advertise_on_public_default_vip,omitempty"` +} +type ProxyAdvertisementType_AdvertiseOnPublic struct { + AdvertiseOnPublic *views.AdvertisePublic `protobuf:"bytes,4,opt,name=advertise_on_public,json=advertiseOnPublic,proto3,oneof" json:"advertise_on_public,omitempty"` +} +type ProxyAdvertisementType_AdvertiseCustom struct { + AdvertiseCustom *views.AdvertiseCustom `protobuf:"bytes,5,opt,name=advertise_custom,json=advertiseCustom,proto3,oneof" json:"advertise_custom,omitempty"` +} + +func (*ProxyAdvertisementType_DoNotAdvertise) isProxyAdvertisementType_AdvertiseChoice() {} +func (*ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) isProxyAdvertisementType_AdvertiseChoice() { +} +func (*ProxyAdvertisementType_AdvertiseOnPublic) isProxyAdvertisementType_AdvertiseChoice() {} +func (*ProxyAdvertisementType_AdvertiseCustom) isProxyAdvertisementType_AdvertiseChoice() {} + +func (m *ProxyAdvertisementType) GetAdvertiseChoice() isProxyAdvertisementType_AdvertiseChoice { + if m != nil { + return m.AdvertiseChoice + } + return nil +} + +func (m *ProxyAdvertisementType) GetDoNotAdvertise() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*ProxyAdvertisementType_DoNotAdvertise); ok { + return x.DoNotAdvertise + } + return nil +} + +func (m *ProxyAdvertisementType) GetAdvertiseOnPublicDefaultVip() *schema.Empty { + if x, ok := m.GetAdvertiseChoice().(*ProxyAdvertisementType_AdvertiseOnPublicDefaultVip); ok { + return x.AdvertiseOnPublicDefaultVip + } + return nil +} + +func (m *ProxyAdvertisementType) GetAdvertiseOnPublic() *views.AdvertisePublic { + if x, ok := m.GetAdvertiseChoice().(*ProxyAdvertisementType_AdvertiseOnPublic); ok { + return x.AdvertiseOnPublic + } + return nil +} + +func (m *ProxyAdvertisementType) GetAdvertiseCustom() *views.AdvertiseCustom { + if x, ok := m.GetAdvertiseChoice().(*ProxyAdvertisementType_AdvertiseCustom); ok { + return x.AdvertiseCustom + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ProxyAdvertisementType) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ProxyAdvertisementType_DoNotAdvertise)(nil), + (*ProxyAdvertisementType_AdvertiseOnPublicDefaultVip)(nil), + (*ProxyAdvertisementType_AdvertiseOnPublic)(nil), + (*ProxyAdvertisementType_AdvertiseCustom)(nil), + } +} + +// GlobalSpecType +// +// x-displayName: "Global Specification" +type GlobalSpecType struct { + // Domain name + // + // x-displayName: "Domain name" + // x-example: "my.example.com" + // ztna_application's Domain name + DomainName string `protobuf:"bytes,1,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"` + // Service details + // + // x-displayName: "Service details" + // Denotes the service IP address and port + Msg *ServiceDetails `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` + // ZTNA policies + // + // x-displayName: "ZTNA policies" + // Denotes the ZTNA policies + Policies *ZTNApolicies `protobuf:"bytes,3,opt,name=policies,proto3" json:"policies,omitempty"` + // Proxy Advertisement + // + // x-displayName: "Proxy Advertisement" + // Proxy Advertisement choice + ProxyAdvertisement *ProxyAdvertisementType `protobuf:"bytes,4,opt,name=proxy_advertisement,json=proxyAdvertisement,proto3" json:"proxy_advertisement,omitempty"` + // Transport Type + // + // x-displayName: "Transport Type" + // x-required + // DNS Proxy supports TCP and UDP transport + TransportType TransportType `protobuf:"varint,5,opt,name=transport_type,json=transportType,proto3,enum=ves.io.schema.ztna_application.TransportType" json:"transport_type,omitempty"` + // view_internal + // + // x-displayName: "View Internal" + // Reference to view internal object + ViewInternal *views.ObjectRefType `protobuf:"bytes,6,opt,name=view_internal,json=viewInternal,proto3" json:"view_internal,omitempty"` +} + +func (m *GlobalSpecType) Reset() { *m = GlobalSpecType{} } +func (*GlobalSpecType) ProtoMessage() {} +func (*GlobalSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{4} +} +func (m *GlobalSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GlobalSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GlobalSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GlobalSpecType.Merge(m, src) +} +func (m *GlobalSpecType) XXX_Size() int { + return m.Size() +} +func (m *GlobalSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GlobalSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GlobalSpecType proto.InternalMessageInfo + +func (m *GlobalSpecType) GetDomainName() string { + if m != nil { + return m.DomainName + } + return "" +} + +func (m *GlobalSpecType) GetMsg() *ServiceDetails { + if m != nil { + return m.Msg + } + return nil +} + +func (m *GlobalSpecType) GetPolicies() *ZTNApolicies { + if m != nil { + return m.Policies + } + return nil +} + +func (m *GlobalSpecType) GetProxyAdvertisement() *ProxyAdvertisementType { + if m != nil { + return m.ProxyAdvertisement + } + return nil +} + +func (m *GlobalSpecType) GetTransportType() TransportType { + if m != nil { + return m.TransportType + } + return UDP +} + +func (m *GlobalSpecType) GetViewInternal() *views.ObjectRefType { + if m != nil { + return m.ViewInternal + } + return nil +} + +// CreateSpecType +// +// x-displayName: "Create User" +type CreateSpecType struct { + DomainName string `protobuf:"bytes,1,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"` + Msg *ServiceDetails `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` + Policies *ZTNApolicies `protobuf:"bytes,3,opt,name=policies,proto3" json:"policies,omitempty"` + ProxyAdvertisement *ProxyAdvertisementType `protobuf:"bytes,4,opt,name=proxy_advertisement,json=proxyAdvertisement,proto3" json:"proxy_advertisement,omitempty"` + TransportType TransportType `protobuf:"varint,5,opt,name=transport_type,json=transportType,proto3,enum=ves.io.schema.ztna_application.TransportType" json:"transport_type,omitempty"` +} + +func (m *CreateSpecType) Reset() { *m = CreateSpecType{} } +func (*CreateSpecType) ProtoMessage() {} +func (*CreateSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{5} +} +func (m *CreateSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *CreateSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateSpecType.Merge(m, src) +} +func (m *CreateSpecType) XXX_Size() int { + return m.Size() +} +func (m *CreateSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_CreateSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateSpecType proto.InternalMessageInfo + +func (m *CreateSpecType) GetDomainName() string { + if m != nil { + return m.DomainName + } + return "" +} + +func (m *CreateSpecType) GetMsg() *ServiceDetails { + if m != nil { + return m.Msg + } + return nil +} + +func (m *CreateSpecType) GetPolicies() *ZTNApolicies { + if m != nil { + return m.Policies + } + return nil +} + +func (m *CreateSpecType) GetProxyAdvertisement() *ProxyAdvertisementType { + if m != nil { + return m.ProxyAdvertisement + } + return nil +} + +func (m *CreateSpecType) GetTransportType() TransportType { + if m != nil { + return m.TransportType + } + return UDP +} + +// ReplaceSpecType +// +// x-displayName: "Replace User" +type ReplaceSpecType struct { + DomainName string `protobuf:"bytes,1,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"` + Msg *ServiceDetails `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` + Policies *ZTNApolicies `protobuf:"bytes,3,opt,name=policies,proto3" json:"policies,omitempty"` + ProxyAdvertisement *ProxyAdvertisementType `protobuf:"bytes,4,opt,name=proxy_advertisement,json=proxyAdvertisement,proto3" json:"proxy_advertisement,omitempty"` + TransportType TransportType `protobuf:"varint,5,opt,name=transport_type,json=transportType,proto3,enum=ves.io.schema.ztna_application.TransportType" json:"transport_type,omitempty"` +} + +func (m *ReplaceSpecType) Reset() { *m = ReplaceSpecType{} } +func (*ReplaceSpecType) ProtoMessage() {} +func (*ReplaceSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{6} +} +func (m *ReplaceSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ReplaceSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *ReplaceSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplaceSpecType.Merge(m, src) +} +func (m *ReplaceSpecType) XXX_Size() int { + return m.Size() +} +func (m *ReplaceSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_ReplaceSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplaceSpecType proto.InternalMessageInfo + +func (m *ReplaceSpecType) GetDomainName() string { + if m != nil { + return m.DomainName + } + return "" +} + +func (m *ReplaceSpecType) GetMsg() *ServiceDetails { + if m != nil { + return m.Msg + } + return nil +} + +func (m *ReplaceSpecType) GetPolicies() *ZTNApolicies { + if m != nil { + return m.Policies + } + return nil +} + +func (m *ReplaceSpecType) GetProxyAdvertisement() *ProxyAdvertisementType { + if m != nil { + return m.ProxyAdvertisement + } + return nil +} + +func (m *ReplaceSpecType) GetTransportType() TransportType { + if m != nil { + return m.TransportType + } + return UDP +} + +// GetSpecType +// +// x-displayName: "Get User" +type GetSpecType struct { + DomainName string `protobuf:"bytes,1,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"` + Msg *ServiceDetails `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` + Policies *ZTNApolicies `protobuf:"bytes,3,opt,name=policies,proto3" json:"policies,omitempty"` + ProxyAdvertisement *ProxyAdvertisementType `protobuf:"bytes,4,opt,name=proxy_advertisement,json=proxyAdvertisement,proto3" json:"proxy_advertisement,omitempty"` + TransportType TransportType `protobuf:"varint,5,opt,name=transport_type,json=transportType,proto3,enum=ves.io.schema.ztna_application.TransportType" json:"transport_type,omitempty"` +} + +func (m *GetSpecType) Reset() { *m = GetSpecType{} } +func (*GetSpecType) ProtoMessage() {} +func (*GetSpecType) Descriptor() ([]byte, []int) { + return fileDescriptor_286a7fe8c8dd486e, []int{7} +} +func (m *GetSpecType) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GetSpecType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil +} +func (m *GetSpecType) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetSpecType.Merge(m, src) +} +func (m *GetSpecType) XXX_Size() int { + return m.Size() +} +func (m *GetSpecType) XXX_DiscardUnknown() { + xxx_messageInfo_GetSpecType.DiscardUnknown(m) +} + +var xxx_messageInfo_GetSpecType proto.InternalMessageInfo + +func (m *GetSpecType) GetDomainName() string { + if m != nil { + return m.DomainName + } + return "" +} + +func (m *GetSpecType) GetMsg() *ServiceDetails { + if m != nil { + return m.Msg + } + return nil +} + +func (m *GetSpecType) GetPolicies() *ZTNApolicies { + if m != nil { + return m.Policies + } + return nil +} + +func (m *GetSpecType) GetProxyAdvertisement() *ProxyAdvertisementType { + if m != nil { + return m.ProxyAdvertisement + } + return nil +} + +func (m *GetSpecType) GetTransportType() TransportType { + if m != nil { + return m.TransportType + } + return UDP +} + +func init() { + proto.RegisterEnum("ves.io.schema.ztna_application.TransportType", TransportType_name, TransportType_value) + golang_proto.RegisterEnum("ves.io.schema.ztna_application.TransportType", TransportType_name, TransportType_value) + proto.RegisterType((*ServiceDetails)(nil), "ves.io.schema.ztna_application.ServiceDetails") + golang_proto.RegisterType((*ServiceDetails)(nil), "ves.io.schema.ztna_application.ServiceDetails") + proto.RegisterType((*ZTNApolicies)(nil), "ves.io.schema.ztna_application.ZTNApolicies") + golang_proto.RegisterType((*ZTNApolicies)(nil), "ves.io.schema.ztna_application.ZTNApolicies") + proto.RegisterType((*TileAccess)(nil), "ves.io.schema.ztna_application.TileAccess") + golang_proto.RegisterType((*TileAccess)(nil), "ves.io.schema.ztna_application.TileAccess") + proto.RegisterType((*ProxyAdvertisementType)(nil), "ves.io.schema.ztna_application.ProxyAdvertisementType") + golang_proto.RegisterType((*ProxyAdvertisementType)(nil), "ves.io.schema.ztna_application.ProxyAdvertisementType") + proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.ztna_application.GlobalSpecType") + golang_proto.RegisterType((*GlobalSpecType)(nil), "ves.io.schema.ztna_application.GlobalSpecType") + proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.ztna_application.CreateSpecType") + golang_proto.RegisterType((*CreateSpecType)(nil), "ves.io.schema.ztna_application.CreateSpecType") + proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.ztna_application.ReplaceSpecType") + golang_proto.RegisterType((*ReplaceSpecType)(nil), "ves.io.schema.ztna_application.ReplaceSpecType") + proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.ztna_application.GetSpecType") + golang_proto.RegisterType((*GetSpecType)(nil), "ves.io.schema.ztna_application.GetSpecType") +} + +func init() { + proto.RegisterFile("ves.io/schema/ztna_application/types.proto", fileDescriptor_286a7fe8c8dd486e) +} +func init() { + golang_proto.RegisterFile("ves.io/schema/ztna_application/types.proto", fileDescriptor_286a7fe8c8dd486e) +} + +var fileDescriptor_286a7fe8c8dd486e = []byte{ + // 930 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0xcf, 0x6e, 0x1b, 0x45, + 0x18, 0xdf, 0xf1, 0x26, 0x6d, 0x99, 0x24, 0xae, 0x33, 0x41, 0xc5, 0xb8, 0xd5, 0x26, 0xb2, 0x90, + 0xa8, 0x2a, 0x7b, 0x2d, 0xa5, 0x05, 0xa1, 0x1e, 0x50, 0xed, 0x04, 0x35, 0xe5, 0x90, 0x5a, 0x1b, + 0x53, 0x44, 0x85, 0xb4, 0x1a, 0xef, 0x7e, 0xd9, 0x0c, 0xec, 0xee, 0x0c, 0x3b, 0x63, 0x53, 0x23, + 0x21, 0xf5, 0x01, 0x90, 0xa8, 0x38, 0xf1, 0x08, 0x15, 0x8f, 0x40, 0x2e, 0x39, 0x22, 0x4e, 0xb9, + 0x91, 0x23, 0x71, 0x2e, 0x70, 0xeb, 0x23, 0xa0, 0x1d, 0x6f, 0x6c, 0xaf, 0x93, 0x12, 0x4e, 0xa8, + 0x87, 0xdc, 0x66, 0xf6, 0xf7, 0xe7, 0x9b, 0x9d, 0xdf, 0x37, 0xa3, 0xc1, 0x77, 0xfa, 0x20, 0x6d, + 0xc6, 0x1b, 0xd2, 0xdb, 0x83, 0x88, 0x36, 0xbe, 0x53, 0x31, 0x75, 0xa9, 0x10, 0x21, 0xf3, 0xa8, + 0x62, 0x3c, 0x6e, 0xa8, 0x81, 0x00, 0x69, 0x8b, 0x84, 0x2b, 0x4e, 0xac, 0x11, 0xd7, 0x1e, 0x71, + 0xed, 0x59, 0x6e, 0xa5, 0x1e, 0x30, 0xb5, 0xd7, 0xeb, 0xda, 0x1e, 0x8f, 0x1a, 0x01, 0x0f, 0x78, + 0x43, 0xcb, 0xba, 0xbd, 0x5d, 0x3d, 0xd3, 0x13, 0x3d, 0x1a, 0xd9, 0x55, 0x56, 0x03, 0xce, 0x83, + 0x10, 0x26, 0x2c, 0xc5, 0x22, 0x90, 0x8a, 0x46, 0x22, 0x23, 0xbc, 0x93, 0x5f, 0x5b, 0x0c, 0x2a, + 0x03, 0x6e, 0xe6, 0x01, 0x2e, 0xd2, 0xf2, 0xd9, 0x2a, 0x2b, 0xef, 0xe6, 0xc1, 0xa9, 0x1f, 0xa8, + 0xdc, 0xca, 0x43, 0x7d, 0x1a, 0x32, 0x9f, 0x2a, 0xc8, 0xd0, 0xb5, 0x19, 0x94, 0xc1, 0xb7, 0x6e, + 0xde, 0x7a, 0xf5, 0x2c, 0x43, 0x4e, 0x17, 0xa8, 0x3a, 0xb8, 0xb8, 0x03, 0x49, 0x9f, 0x79, 0xb0, + 0x09, 0x8a, 0xb2, 0x50, 0x92, 0x1a, 0x2e, 0x30, 0x51, 0x2e, 0xac, 0xa1, 0xdb, 0x0b, 0xeb, 0xb7, + 0xec, 0xfc, 0x06, 0x3e, 0x12, 0x4d, 0xdf, 0x4f, 0x40, 0xca, 0xce, 0x40, 0x80, 0x53, 0x60, 0x82, + 0x10, 0x3c, 0x27, 0x78, 0xa2, 0xca, 0x68, 0x0d, 0xdd, 0x9e, 0x77, 0xf4, 0xb8, 0xfa, 0x12, 0xe1, + 0xc5, 0xa7, 0x9d, 0xed, 0xa6, 0xe0, 0x21, 0xf3, 0x18, 0x48, 0xf2, 0x11, 0x2e, 0x7b, 0x3c, 0x8e, + 0xc1, 0x53, 0xac, 0xcf, 0xd4, 0xc0, 0xd5, 0xc0, 0xc0, 0x8d, 0x69, 0x04, 0xba, 0xd0, 0x5b, 0xce, + 0x8d, 0x69, 0xbc, 0xad, 0xe1, 0x6d, 0x1a, 0x01, 0xb1, 0xf1, 0x8a, 0x04, 0x29, 0x19, 0x8f, 0x73, + 0x22, 0xa4, 0x45, 0xcb, 0x19, 0x94, 0xe7, 0x47, 0x20, 0x25, 0x0d, 0x20, 0xc7, 0x37, 0x47, 0xfc, + 0x0c, 0x9a, 0xf0, 0xab, 0xdf, 0x60, 0xdc, 0x61, 0x21, 0x34, 0x3d, 0x0f, 0xa4, 0x24, 0xf7, 0xf0, + 0xbc, 0x54, 0x54, 0x8d, 0xfc, 0x8b, 0xeb, 0xd6, 0xcc, 0xdf, 0x4f, 0x98, 0x3b, 0x29, 0xcb, 0x19, + 0x91, 0x49, 0x1d, 0x2f, 0xfa, 0x4c, 0x8a, 0x90, 0x4e, 0xff, 0x51, 0x0b, 0xff, 0xfa, 0xf7, 0x81, + 0x39, 0x9f, 0x98, 0xe5, 0xe7, 0x05, 0x67, 0x21, 0xc3, 0x75, 0xc9, 0x9f, 0x4d, 0x7c, 0xa3, 0x9d, + 0xf0, 0x67, 0x83, 0xa6, 0xdf, 0x87, 0x44, 0x31, 0x09, 0x11, 0xc4, 0x2a, 0xdd, 0x50, 0xf2, 0x00, + 0x97, 0x7c, 0xee, 0xc6, 0x5c, 0xb9, 0xf4, 0x14, 0xcb, 0x82, 0x78, 0x7b, 0x66, 0x29, 0x9f, 0x44, + 0x42, 0x0d, 0xb6, 0x0c, 0xa7, 0xe8, 0xf3, 0x6d, 0xae, 0xc6, 0x4e, 0xe4, 0x4b, 0xbc, 0x3a, 0x96, + 0xba, 0xe9, 0xa6, 0xf5, 0xba, 0x21, 0xf3, 0x5c, 0x1f, 0x76, 0x69, 0x2f, 0x54, 0x6e, 0x9f, 0x09, + 0xbd, 0x17, 0xaf, 0x37, 0xbc, 0x39, 0x96, 0x3f, 0x8e, 0xdb, 0x5a, 0xbc, 0x39, 0xd2, 0x3e, 0x61, + 0x82, 0x3c, 0xc1, 0x2b, 0xe7, 0xb8, 0x97, 0xe7, 0xb4, 0xe3, 0x7b, 0x33, 0x8e, 0xba, 0xd7, 0xec, + 0xf1, 0xd2, 0x46, 0x66, 0x5b, 0x86, 0xb3, 0x7c, 0xa6, 0x02, 0xf9, 0x1c, 0x97, 0x26, 0xbe, 0x5e, + 0x4f, 0x2a, 0x1e, 0x95, 0xe7, 0xff, 0x8b, 0xe9, 0x86, 0xe6, 0xb6, 0xe6, 0x0e, 0xf7, 0x11, 0xda, + 0x32, 0x9c, 0xeb, 0x74, 0x06, 0x78, 0x3f, 0x67, 0xbc, 0xc7, 0x99, 0x07, 0x64, 0xe5, 0x60, 0x1f, + 0x15, 0x52, 0xc1, 0x70, 0x1f, 0x5d, 0x5d, 0xaf, 0xdd, 0xad, 0xdd, 0xab, 0x7d, 0xf0, 0xe9, 0xdc, + 0x35, 0x54, 0x2a, 0x54, 0xff, 0x30, 0x71, 0xf1, 0x61, 0xc8, 0xbb, 0x34, 0xdc, 0x11, 0xe0, 0xe9, + 0x48, 0x56, 0xf1, 0x82, 0xcf, 0x23, 0xca, 0xe2, 0xe9, 0xc6, 0xc3, 0xa3, 0x4f, 0xba, 0xe3, 0x1e, + 0x60, 0x33, 0x92, 0x41, 0x16, 0x93, 0x6d, 0xff, 0xfb, 0x85, 0x63, 0xe7, 0xcf, 0x9a, 0x93, 0x4a, + 0xc9, 0x16, 0xbe, 0x76, 0x7a, 0x52, 0xb2, 0x70, 0x6a, 0x17, 0xd9, 0x4c, 0x9f, 0x2e, 0x67, 0xac, + 0x26, 0x01, 0x5e, 0x11, 0x69, 0x67, 0x4d, 0xda, 0x27, 0x6d, 0xad, 0x2c, 0x9f, 0x0f, 0x2f, 0x32, + 0x3d, 0xbf, 0x29, 0x1d, 0x22, 0xce, 0x7c, 0x27, 0x1d, 0x5c, 0x54, 0x09, 0x8d, 0x65, 0x7a, 0xdc, + 0xdd, 0xf4, 0x3a, 0xd1, 0x71, 0x15, 0xd7, 0xeb, 0x17, 0xd5, 0xe8, 0x9c, 0xaa, 0xb4, 0xf5, 0x92, + 0x9a, 0x9e, 0x92, 0x2f, 0xf0, 0x92, 0xbe, 0xc2, 0x58, 0xac, 0x20, 0x89, 0x69, 0x58, 0xbe, 0xa2, + 0x17, 0x5e, 0x3d, 0xb7, 0x07, 0x1e, 0x77, 0xbf, 0x02, 0x4f, 0x39, 0xb0, 0x9b, 0x4a, 0x5b, 0xa5, + 0x5f, 0xbe, 0xcf, 0x6b, 0x9d, 0xc5, 0x74, 0xfa, 0x28, 0x9b, 0x55, 0x7f, 0x34, 0x71, 0x71, 0x23, + 0x01, 0xaa, 0xe0, 0x32, 0xd9, 0xff, 0x3f, 0xd9, 0xfb, 0xcb, 0xbf, 0x7f, 0x3c, 0x73, 0xb0, 0xaa, + 0x2f, 0x4c, 0x7c, 0xdd, 0x01, 0x11, 0x52, 0xef, 0x32, 0x92, 0x37, 0x24, 0x92, 0x1f, 0x4c, 0xbc, + 0xf0, 0x10, 0xd4, 0x65, 0x1c, 0x6f, 0x44, 0x1c, 0x77, 0xee, 0xe3, 0xa5, 0x9c, 0x84, 0x5c, 0xc5, + 0xe6, 0x67, 0x9b, 0xed, 0x92, 0x91, 0x0e, 0x3a, 0x1b, 0xed, 0x12, 0x22, 0xcb, 0x78, 0xa9, 0xc5, + 0xd5, 0x5e, 0x67, 0xa3, 0xdd, 0x8c, 0xfd, 0x14, 0x2b, 0x54, 0xe6, 0x0e, 0xf6, 0x91, 0xd1, 0xfa, + 0x09, 0x1d, 0x1e, 0x5b, 0xc6, 0xd1, 0xb1, 0x65, 0xbc, 0x3a, 0xb6, 0xd0, 0xf3, 0xa1, 0x85, 0x5e, + 0x0e, 0x2d, 0xf4, 0xdb, 0xd0, 0x42, 0x87, 0x43, 0x0b, 0x1d, 0x0d, 0x2d, 0xf4, 0xe7, 0xd0, 0x42, + 0x7f, 0x0d, 0x2d, 0xe3, 0xd5, 0xd0, 0x42, 0x2f, 0x4e, 0x2c, 0xe3, 0xe0, 0xc4, 0x42, 0x87, 0x27, + 0x96, 0x71, 0x74, 0x62, 0x19, 0x4f, 0x3b, 0x01, 0x17, 0x5f, 0x07, 0x76, 0x9f, 0x87, 0x0a, 0x92, + 0x84, 0xda, 0x3d, 0xd9, 0xd0, 0x83, 0x5d, 0x9e, 0x44, 0x75, 0x91, 0xf0, 0x3e, 0xf3, 0x21, 0xa9, + 0x9f, 0xc2, 0x0d, 0xd1, 0x0d, 0x78, 0x03, 0x9e, 0xa9, 0xec, 0x95, 0xf9, 0x9a, 0x97, 0x79, 0xf7, + 0x8a, 0x7e, 0x72, 0xde, 0xfd, 0x27, 0x00, 0x00, 0xff, 0xff, 0xa4, 0x35, 0x22, 0xd4, 0xc2, 0x0b, + 0x00, 0x00, +} + +func (x TransportType) String() string { + s, ok := TransportType_name[int32(x)] + if ok { + return s + } + return strconv.Itoa(int(x)) +} +func (this *ServiceDetails) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ServiceDetails) + if !ok { + that2, ok := that.(ServiceDetails) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.Ip.Equal(that1.Ip) { + return false + } + if this.Port != that1.Port { + return false + } + return true +} +func (this *ZTNApolicies) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ZTNApolicies) + if !ok { + that2, ok := that.(ZTNApolicies) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.ConnectivityPolicyName != that1.ConnectivityPolicyName { + return false + } + if this.SessionPolicyName != that1.SessionPolicyName { + return false + } + if this.MessagePolicyName != that1.MessagePolicyName { + return false + } + return true +} +func (this *TileAccess) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*TileAccess) + if !ok { + that2, ok := that.(TileAccess) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.State != that1.State { + return false + } + if this.DisplayName != that1.DisplayName { + return false + } + return true +} +func (this *ProxyAdvertisementType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyAdvertisementType) + if !ok { + that2, ok := that.(ProxyAdvertisementType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if that1.AdvertiseChoice == nil { + if this.AdvertiseChoice != nil { + return false + } + } else if this.AdvertiseChoice == nil { + return false + } else if !this.AdvertiseChoice.Equal(that1.AdvertiseChoice) { + return false + } + return true +} +func (this *ProxyAdvertisementType_DoNotAdvertise) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyAdvertisementType_DoNotAdvertise) + if !ok { + that2, ok := that.(ProxyAdvertisementType_DoNotAdvertise) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.DoNotAdvertise.Equal(that1.DoNotAdvertise) { + return false + } + return true +} +func (this *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) + if !ok { + that2, ok := that.(ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AdvertiseOnPublicDefaultVip.Equal(that1.AdvertiseOnPublicDefaultVip) { + return false + } + return true +} +func (this *ProxyAdvertisementType_AdvertiseOnPublic) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyAdvertisementType_AdvertiseOnPublic) + if !ok { + that2, ok := that.(ProxyAdvertisementType_AdvertiseOnPublic) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AdvertiseOnPublic.Equal(that1.AdvertiseOnPublic) { + return false + } + return true +} +func (this *ProxyAdvertisementType_AdvertiseCustom) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ProxyAdvertisementType_AdvertiseCustom) + if !ok { + that2, ok := that.(ProxyAdvertisementType_AdvertiseCustom) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.AdvertiseCustom.Equal(that1.AdvertiseCustom) { + return false + } + return true +} +func (this *GlobalSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GlobalSpecType) + if !ok { + that2, ok := that.(GlobalSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DomainName != that1.DomainName { + return false + } + if !this.Msg.Equal(that1.Msg) { + return false + } + if !this.Policies.Equal(that1.Policies) { + return false + } + if !this.ProxyAdvertisement.Equal(that1.ProxyAdvertisement) { + return false + } + if this.TransportType != that1.TransportType { + return false + } + if !this.ViewInternal.Equal(that1.ViewInternal) { + return false + } + return true +} +func (this *CreateSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*CreateSpecType) + if !ok { + that2, ok := that.(CreateSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DomainName != that1.DomainName { + return false + } + if !this.Msg.Equal(that1.Msg) { + return false + } + if !this.Policies.Equal(that1.Policies) { + return false + } + if !this.ProxyAdvertisement.Equal(that1.ProxyAdvertisement) { + return false + } + if this.TransportType != that1.TransportType { + return false + } + return true +} +func (this *ReplaceSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*ReplaceSpecType) + if !ok { + that2, ok := that.(ReplaceSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DomainName != that1.DomainName { + return false + } + if !this.Msg.Equal(that1.Msg) { + return false + } + if !this.Policies.Equal(that1.Policies) { + return false + } + if !this.ProxyAdvertisement.Equal(that1.ProxyAdvertisement) { + return false + } + if this.TransportType != that1.TransportType { + return false + } + return true +} +func (this *GetSpecType) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*GetSpecType) + if !ok { + that2, ok := that.(GetSpecType) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if this.DomainName != that1.DomainName { + return false + } + if !this.Msg.Equal(that1.Msg) { + return false + } + if !this.Policies.Equal(that1.Policies) { + return false + } + if !this.ProxyAdvertisement.Equal(that1.ProxyAdvertisement) { + return false + } + if this.TransportType != that1.TransportType { + return false + } + return true +} +func (this *ServiceDetails) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna_application.ServiceDetails{") + if this.Ip != nil { + s = append(s, "Ip: "+fmt.Sprintf("%#v", this.Ip)+",\n") + } + s = append(s, "Port: "+fmt.Sprintf("%#v", this.Port)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ZTNApolicies) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 7) + s = append(s, "&ztna_application.ZTNApolicies{") + s = append(s, "ConnectivityPolicyName: "+fmt.Sprintf("%#v", this.ConnectivityPolicyName)+",\n") + s = append(s, "SessionPolicyName: "+fmt.Sprintf("%#v", this.SessionPolicyName)+",\n") + s = append(s, "MessagePolicyName: "+fmt.Sprintf("%#v", this.MessagePolicyName)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *TileAccess) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 6) + s = append(s, "&ztna_application.TileAccess{") + s = append(s, "State: "+fmt.Sprintf("%#v", this.State)+",\n") + s = append(s, "DisplayName: "+fmt.Sprintf("%#v", this.DisplayName)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ProxyAdvertisementType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 8) + s = append(s, "&ztna_application.ProxyAdvertisementType{") + if this.AdvertiseChoice != nil { + s = append(s, "AdvertiseChoice: "+fmt.Sprintf("%#v", this.AdvertiseChoice)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ProxyAdvertisementType_DoNotAdvertise) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna_application.ProxyAdvertisementType_DoNotAdvertise{` + + `DoNotAdvertise:` + fmt.Sprintf("%#v", this.DoNotAdvertise) + `}`}, ", ") + return s +} +func (this *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna_application.ProxyAdvertisementType_AdvertiseOnPublicDefaultVip{` + + `AdvertiseOnPublicDefaultVip:` + fmt.Sprintf("%#v", this.AdvertiseOnPublicDefaultVip) + `}`}, ", ") + return s +} +func (this *ProxyAdvertisementType_AdvertiseOnPublic) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna_application.ProxyAdvertisementType_AdvertiseOnPublic{` + + `AdvertiseOnPublic:` + fmt.Sprintf("%#v", this.AdvertiseOnPublic) + `}`}, ", ") + return s +} +func (this *ProxyAdvertisementType_AdvertiseCustom) GoString() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ztna_application.ProxyAdvertisementType_AdvertiseCustom{` + + `AdvertiseCustom:` + fmt.Sprintf("%#v", this.AdvertiseCustom) + `}`}, ", ") + return s +} +func (this *GlobalSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 10) + s = append(s, "&ztna_application.GlobalSpecType{") + s = append(s, "DomainName: "+fmt.Sprintf("%#v", this.DomainName)+",\n") + if this.Msg != nil { + s = append(s, "Msg: "+fmt.Sprintf("%#v", this.Msg)+",\n") + } + if this.Policies != nil { + s = append(s, "Policies: "+fmt.Sprintf("%#v", this.Policies)+",\n") + } + if this.ProxyAdvertisement != nil { + s = append(s, "ProxyAdvertisement: "+fmt.Sprintf("%#v", this.ProxyAdvertisement)+",\n") + } + s = append(s, "TransportType: "+fmt.Sprintf("%#v", this.TransportType)+",\n") + if this.ViewInternal != nil { + s = append(s, "ViewInternal: "+fmt.Sprintf("%#v", this.ViewInternal)+",\n") + } + s = append(s, "}") + return strings.Join(s, "") +} +func (this *CreateSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&ztna_application.CreateSpecType{") + s = append(s, "DomainName: "+fmt.Sprintf("%#v", this.DomainName)+",\n") + if this.Msg != nil { + s = append(s, "Msg: "+fmt.Sprintf("%#v", this.Msg)+",\n") + } + if this.Policies != nil { + s = append(s, "Policies: "+fmt.Sprintf("%#v", this.Policies)+",\n") + } + if this.ProxyAdvertisement != nil { + s = append(s, "ProxyAdvertisement: "+fmt.Sprintf("%#v", this.ProxyAdvertisement)+",\n") + } + s = append(s, "TransportType: "+fmt.Sprintf("%#v", this.TransportType)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *ReplaceSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&ztna_application.ReplaceSpecType{") + s = append(s, "DomainName: "+fmt.Sprintf("%#v", this.DomainName)+",\n") + if this.Msg != nil { + s = append(s, "Msg: "+fmt.Sprintf("%#v", this.Msg)+",\n") + } + if this.Policies != nil { + s = append(s, "Policies: "+fmt.Sprintf("%#v", this.Policies)+",\n") + } + if this.ProxyAdvertisement != nil { + s = append(s, "ProxyAdvertisement: "+fmt.Sprintf("%#v", this.ProxyAdvertisement)+",\n") + } + s = append(s, "TransportType: "+fmt.Sprintf("%#v", this.TransportType)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func (this *GetSpecType) GoString() string { + if this == nil { + return "nil" + } + s := make([]string, 0, 9) + s = append(s, "&ztna_application.GetSpecType{") + s = append(s, "DomainName: "+fmt.Sprintf("%#v", this.DomainName)+",\n") + if this.Msg != nil { + s = append(s, "Msg: "+fmt.Sprintf("%#v", this.Msg)+",\n") + } + if this.Policies != nil { + s = append(s, "Policies: "+fmt.Sprintf("%#v", this.Policies)+",\n") + } + if this.ProxyAdvertisement != nil { + s = append(s, "ProxyAdvertisement: "+fmt.Sprintf("%#v", this.ProxyAdvertisement)+",\n") + } + s = append(s, "TransportType: "+fmt.Sprintf("%#v", this.TransportType)+",\n") + s = append(s, "}") + return strings.Join(s, "") +} +func valueToGoStringTypes(v interface{}, typ string) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) +} +func (m *ServiceDetails) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ServiceDetails) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ServiceDetails) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Ip != nil { + { + size, err := m.Ip.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if m.Port != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.Port)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *ZTNApolicies) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ZTNApolicies) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ZTNApolicies) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.MessagePolicyName) > 0 { + i -= len(m.MessagePolicyName) + copy(dAtA[i:], m.MessagePolicyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.MessagePolicyName))) + i-- + dAtA[i] = 0x1a + } + if len(m.ConnectivityPolicyName) > 0 { + i -= len(m.ConnectivityPolicyName) + copy(dAtA[i:], m.ConnectivityPolicyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ConnectivityPolicyName))) + i-- + dAtA[i] = 0x12 + } + if len(m.SessionPolicyName) > 0 { + i -= len(m.SessionPolicyName) + copy(dAtA[i:], m.SessionPolicyName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.SessionPolicyName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *TileAccess) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *TileAccess) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *TileAccess) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.DisplayName) > 0 { + i -= len(m.DisplayName) + copy(dAtA[i:], m.DisplayName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DisplayName))) + i-- + dAtA[i] = 0x12 + } + if m.State != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.State)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *ProxyAdvertisementType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ProxyAdvertisementType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyAdvertisementType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AdvertiseChoice != nil { + { + size := m.AdvertiseChoice.Size() + i -= size + if _, err := m.AdvertiseChoice.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *ProxyAdvertisementType_DoNotAdvertise) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyAdvertisementType_DoNotAdvertise) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.DoNotAdvertise != nil { + { + size, err := m.DoNotAdvertise.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + return len(dAtA) - i, nil +} +func (m *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublicDefaultVip != nil { + { + size, err := m.AdvertiseOnPublicDefaultVip.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} +func (m *ProxyAdvertisementType_AdvertiseOnPublic) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyAdvertisementType_AdvertiseOnPublic) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseOnPublic != nil { + { + size, err := m.AdvertiseOnPublic.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + return len(dAtA) - i, nil +} +func (m *ProxyAdvertisementType_AdvertiseCustom) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ProxyAdvertisementType_AdvertiseCustom) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AdvertiseCustom != nil { + { + size, err := m.AdvertiseCustom.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } + return len(dAtA) - i, nil +} +func (m *GlobalSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GlobalSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GlobalSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.ViewInternal != nil { + { + size, err := m.ViewInternal.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + if m.TransportType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.TransportType)) + i-- + dAtA[i] = 0x28 + } + if m.ProxyAdvertisement != nil { + { + size, err := m.ProxyAdvertisement.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.Policies != nil { + { + size, err := m.Policies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Msg != nil { + { + size, err := m.Msg.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.DomainName) > 0 { + i -= len(m.DomainName) + copy(dAtA[i:], m.DomainName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DomainName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *CreateSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TransportType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.TransportType)) + i-- + dAtA[i] = 0x28 + } + if m.ProxyAdvertisement != nil { + { + size, err := m.ProxyAdvertisement.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.Policies != nil { + { + size, err := m.Policies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Msg != nil { + { + size, err := m.Msg.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.DomainName) > 0 { + i -= len(m.DomainName) + copy(dAtA[i:], m.DomainName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DomainName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ReplaceSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ReplaceSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ReplaceSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TransportType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.TransportType)) + i-- + dAtA[i] = 0x28 + } + if m.ProxyAdvertisement != nil { + { + size, err := m.ProxyAdvertisement.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.Policies != nil { + { + size, err := m.Policies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Msg != nil { + { + size, err := m.Msg.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.DomainName) > 0 { + i -= len(m.DomainName) + copy(dAtA[i:], m.DomainName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DomainName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetSpecType) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetSpecType) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GetSpecType) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.TransportType != 0 { + i = encodeVarintTypes(dAtA, i, uint64(m.TransportType)) + i-- + dAtA[i] = 0x28 + } + if m.ProxyAdvertisement != nil { + { + size, err := m.ProxyAdvertisement.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } + if m.Policies != nil { + { + size, err := m.Policies.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if m.Msg != nil { + { + size, err := m.Msg.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.DomainName) > 0 { + i -= len(m.DomainName) + copy(dAtA[i:], m.DomainName) + i = encodeVarintTypes(dAtA, i, uint64(len(m.DomainName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { + offset -= sovTypes(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *ServiceDetails) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Port != 0 { + n += 1 + sovTypes(uint64(m.Port)) + } + if m.Ip != nil { + l = m.Ip.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ZTNApolicies) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SessionPolicyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.ConnectivityPolicyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.MessagePolicyName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *TileAccess) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.State != 0 { + n += 1 + sovTypes(uint64(m.State)) + } + l = len(m.DisplayName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *ProxyAdvertisementType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdvertiseChoice != nil { + n += m.AdvertiseChoice.Size() + } + return n +} + +func (m *ProxyAdvertisementType_DoNotAdvertise) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.DoNotAdvertise != nil { + l = m.DoNotAdvertise.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdvertiseOnPublicDefaultVip != nil { + l = m.AdvertiseOnPublicDefaultVip.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ProxyAdvertisementType_AdvertiseOnPublic) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdvertiseOnPublic != nil { + l = m.AdvertiseOnPublic.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *ProxyAdvertisementType_AdvertiseCustom) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AdvertiseCustom != nil { + l = m.AdvertiseCustom.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *GlobalSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DomainName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Msg != nil { + l = m.Msg.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Policies != nil { + l = m.Policies.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ProxyAdvertisement != nil { + l = m.ProxyAdvertisement.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.TransportType != 0 { + n += 1 + sovTypes(uint64(m.TransportType)) + } + if m.ViewInternal != nil { + l = m.ViewInternal.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} + +func (m *CreateSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DomainName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Msg != nil { + l = m.Msg.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Policies != nil { + l = m.Policies.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ProxyAdvertisement != nil { + l = m.ProxyAdvertisement.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.TransportType != 0 { + n += 1 + sovTypes(uint64(m.TransportType)) + } + return n +} + +func (m *ReplaceSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DomainName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Msg != nil { + l = m.Msg.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Policies != nil { + l = m.Policies.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ProxyAdvertisement != nil { + l = m.ProxyAdvertisement.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.TransportType != 0 { + n += 1 + sovTypes(uint64(m.TransportType)) + } + return n +} + +func (m *GetSpecType) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DomainName) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Msg != nil { + l = m.Msg.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.Policies != nil { + l = m.Policies.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.ProxyAdvertisement != nil { + l = m.ProxyAdvertisement.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.TransportType != 0 { + n += 1 + sovTypes(uint64(m.TransportType)) + } + return n +} + +func sovTypes(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTypes(x uint64) (n int) { + return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *ServiceDetails) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServiceDetails{`, + `Port:` + fmt.Sprintf("%v", this.Port) + `,`, + `Ip:` + strings.Replace(fmt.Sprintf("%v", this.Ip), "IpAddressType", "schema.IpAddressType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ZTNApolicies) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ZTNApolicies{`, + `SessionPolicyName:` + fmt.Sprintf("%v", this.SessionPolicyName) + `,`, + `ConnectivityPolicyName:` + fmt.Sprintf("%v", this.ConnectivityPolicyName) + `,`, + `MessagePolicyName:` + fmt.Sprintf("%v", this.MessagePolicyName) + `,`, + `}`, + }, "") + return s +} +func (this *TileAccess) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TileAccess{`, + `State:` + fmt.Sprintf("%v", this.State) + `,`, + `DisplayName:` + fmt.Sprintf("%v", this.DisplayName) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyAdvertisementType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyAdvertisementType{`, + `AdvertiseChoice:` + fmt.Sprintf("%v", this.AdvertiseChoice) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyAdvertisementType_DoNotAdvertise) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyAdvertisementType_DoNotAdvertise{`, + `DoNotAdvertise:` + strings.Replace(fmt.Sprintf("%v", this.DoNotAdvertise), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyAdvertisementType_AdvertiseOnPublicDefaultVip{`, + `AdvertiseOnPublicDefaultVip:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublicDefaultVip), "Empty", "schema.Empty", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyAdvertisementType_AdvertiseOnPublic) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyAdvertisementType_AdvertiseOnPublic{`, + `AdvertiseOnPublic:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseOnPublic), "AdvertisePublic", "views.AdvertisePublic", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ProxyAdvertisementType_AdvertiseCustom) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ProxyAdvertisementType_AdvertiseCustom{`, + `AdvertiseCustom:` + strings.Replace(fmt.Sprintf("%v", this.AdvertiseCustom), "AdvertiseCustom", "views.AdvertiseCustom", 1) + `,`, + `}`, + }, "") + return s +} +func (this *GlobalSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GlobalSpecType{`, + `DomainName:` + fmt.Sprintf("%v", this.DomainName) + `,`, + `Msg:` + strings.Replace(this.Msg.String(), "ServiceDetails", "ServiceDetails", 1) + `,`, + `Policies:` + strings.Replace(this.Policies.String(), "ZTNApolicies", "ZTNApolicies", 1) + `,`, + `ProxyAdvertisement:` + strings.Replace(this.ProxyAdvertisement.String(), "ProxyAdvertisementType", "ProxyAdvertisementType", 1) + `,`, + `TransportType:` + fmt.Sprintf("%v", this.TransportType) + `,`, + `ViewInternal:` + strings.Replace(fmt.Sprintf("%v", this.ViewInternal), "ObjectRefType", "views.ObjectRefType", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CreateSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CreateSpecType{`, + `DomainName:` + fmt.Sprintf("%v", this.DomainName) + `,`, + `Msg:` + strings.Replace(this.Msg.String(), "ServiceDetails", "ServiceDetails", 1) + `,`, + `Policies:` + strings.Replace(this.Policies.String(), "ZTNApolicies", "ZTNApolicies", 1) + `,`, + `ProxyAdvertisement:` + strings.Replace(this.ProxyAdvertisement.String(), "ProxyAdvertisementType", "ProxyAdvertisementType", 1) + `,`, + `TransportType:` + fmt.Sprintf("%v", this.TransportType) + `,`, + `}`, + }, "") + return s +} +func (this *ReplaceSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ReplaceSpecType{`, + `DomainName:` + fmt.Sprintf("%v", this.DomainName) + `,`, + `Msg:` + strings.Replace(this.Msg.String(), "ServiceDetails", "ServiceDetails", 1) + `,`, + `Policies:` + strings.Replace(this.Policies.String(), "ZTNApolicies", "ZTNApolicies", 1) + `,`, + `ProxyAdvertisement:` + strings.Replace(this.ProxyAdvertisement.String(), "ProxyAdvertisementType", "ProxyAdvertisementType", 1) + `,`, + `TransportType:` + fmt.Sprintf("%v", this.TransportType) + `,`, + `}`, + }, "") + return s +} +func (this *GetSpecType) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GetSpecType{`, + `DomainName:` + fmt.Sprintf("%v", this.DomainName) + `,`, + `Msg:` + strings.Replace(this.Msg.String(), "ServiceDetails", "ServiceDetails", 1) + `,`, + `Policies:` + strings.Replace(this.Policies.String(), "ZTNApolicies", "ZTNApolicies", 1) + `,`, + `ProxyAdvertisement:` + strings.Replace(this.ProxyAdvertisement.String(), "ProxyAdvertisementType", "ProxyAdvertisementType", 1) + `,`, + `TransportType:` + fmt.Sprintf("%v", this.TransportType) + `,`, + `}`, + }, "") + return s +} +func valueToStringTypes(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ServiceDetails) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ServiceDetails: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ServiceDetails: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) + } + m.Port = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Port |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Ip", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Ip == nil { + m.Ip = &schema.IpAddressType{} + } + if err := m.Ip.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ZTNApolicies) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ZTNApolicies: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ZTNApolicies: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionPolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SessionPolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectivityPolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConnectivityPolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MessagePolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MessagePolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TileAccess) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TileAccess: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TileAccess: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field State", wireType) + } + m.State = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.State |= schema.TileAccessState(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DisplayName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DisplayName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ProxyAdvertisementType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ProxyAdvertisementType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ProxyAdvertisementType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DoNotAdvertise", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdvertiseChoice = &ProxyAdvertisementType_DoNotAdvertise{v} + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublicDefaultVip", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &schema.Empty{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdvertiseChoice = &ProxyAdvertisementType_AdvertiseOnPublicDefaultVip{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseOnPublic", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.AdvertisePublic{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdvertiseChoice = &ProxyAdvertisementType_AdvertiseOnPublic{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseCustom", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &views.AdvertiseCustom{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.AdvertiseChoice = &ProxyAdvertisementType_AdvertiseCustom{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GlobalSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GlobalSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GlobalSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DomainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Msg", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Msg == nil { + m.Msg = &ServiceDetails{} + } + if err := m.Msg.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policies == nil { + m.Policies = &ZTNApolicies{} + } + if err := m.Policies.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyAdvertisement", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ProxyAdvertisement == nil { + m.ProxyAdvertisement = &ProxyAdvertisementType{} + } + if err := m.ProxyAdvertisement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TransportType", wireType) + } + m.TransportType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TransportType |= TransportType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ViewInternal", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ViewInternal == nil { + m.ViewInternal = &views.ObjectRefType{} + } + if err := m.ViewInternal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CreateSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DomainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Msg", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Msg == nil { + m.Msg = &ServiceDetails{} + } + if err := m.Msg.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policies == nil { + m.Policies = &ZTNApolicies{} + } + if err := m.Policies.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyAdvertisement", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ProxyAdvertisement == nil { + m.ProxyAdvertisement = &ProxyAdvertisementType{} + } + if err := m.ProxyAdvertisement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TransportType", wireType) + } + m.TransportType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TransportType |= TransportType(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ReplaceSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ReplaceSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ReplaceSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DomainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Msg", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Msg == nil { + m.Msg = &ServiceDetails{} + } + if err := m.Msg.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policies == nil { + m.Policies = &ZTNApolicies{} + } + if err := m.Policies.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyAdvertisement", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ProxyAdvertisement == nil { + m.ProxyAdvertisement = &ProxyAdvertisementType{} + } + if err := m.ProxyAdvertisement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TransportType", wireType) + } + m.TransportType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TransportType |= TransportType(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetSpecType) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetSpecType: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetSpecType: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DomainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DomainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Msg", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Msg == nil { + m.Msg = &ServiceDetails{} + } + if err := m.Msg.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Policies", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Policies == nil { + m.Policies = &ZTNApolicies{} + } + if err := m.Policies.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProxyAdvertisement", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ProxyAdvertisement == nil { + m.ProxyAdvertisement = &ProxyAdvertisementType{} + } + if err := m.ProxyAdvertisement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TransportType", wireType) + } + m.TransportType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TransportType |= TransportType(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipTypes(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTypes + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthTypes + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupTypes + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthTypes + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthTypes = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowTypes = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group") +) diff --git a/pbgo/extschema/schema/ztna_application/types.vesmsg.go b/pbgo/extschema/schema/ztna_application/types.vesmsg.go new file mode 100644 index 000000000..d92acde9a --- /dev/null +++ b/pbgo/extschema/schema/ztna_application/types.vesmsg.go @@ -0,0 +1,1453 @@ +// Copyright (c) 2022 F5, Inc. All rights reserved. +// Code generated by ves-gen-schema-go. DO NOT EDIT. + +package ztna_application + +import ( + "context" + "fmt" + "strings" + + "github.com/gogo/protobuf/proto" + + "gopkg.volterra.us/stdlib/codec" + "gopkg.volterra.us/stdlib/db" + "gopkg.volterra.us/stdlib/errors" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" +) + +var ( + // dummy imports in case file has no message with Refs + _ db.Interface + _ = errors.Wrap + _ = strings.Split +) + +// augmented methods on protoc/std generated struct + +func (m *CreateSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *CreateSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *CreateSpecType) DeepCopy() *CreateSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &CreateSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *CreateSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *CreateSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return CreateSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *CreateSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetProxyAdvertisementDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *CreateSpecType) GetProxyAdvertisementDRefInfo() ([]db.DRefInfo, error) { + if m.GetProxyAdvertisement() == nil { + return nil, nil + } + + drInfos, err := m.GetProxyAdvertisement().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetProxyAdvertisement().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "proxy_advertisement." + dri.DRField + } + return drInfos, err + +} + +type ValidateCreateSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateCreateSpecType) TransportTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(TransportType) + return int32(i) + } + // TransportType_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, TransportType_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for transport_type") + } + + return validatorFn, nil +} + +func (v *ValidateCreateSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*CreateSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *CreateSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["domain_name"]; exists { + + vOpts := append(opts, db.WithValidateField("domain_name")) + if err := fv(ctx, m.GetDomainName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["msg"]; exists { + + vOpts := append(opts, db.WithValidateField("msg")) + if err := fv(ctx, m.GetMsg(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policies"]; exists { + + vOpts := append(opts, db.WithValidateField("policies")) + if err := fv(ctx, m.GetPolicies(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["proxy_advertisement"]; exists { + + vOpts := append(opts, db.WithValidateField("proxy_advertisement")) + if err := fv(ctx, m.GetProxyAdvertisement(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["transport_type"]; exists { + + vOpts := append(opts, db.WithValidateField("transport_type")) + if err := fv(ctx, m.GetTransportType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultCreateSpecTypeValidator = func() *ValidateCreateSpecType { + v := &ValidateCreateSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTransportType := v.TransportTypeValidationRuleHandler + rulesTransportType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhTransportType(rulesTransportType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for CreateSpecType.transport_type: %s", err) + panic(errMsg) + } + v.FldValidators["transport_type"] = vFn + + v.FldValidators["msg"] = ServiceDetailsValidator().Validate + + v.FldValidators["proxy_advertisement"] = ProxyAdvertisementTypeValidator().Validate + + return v +}() + +func CreateSpecTypeValidator() db.Validator { + return DefaultCreateSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GetSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GetSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GetSpecType) DeepCopy() *GetSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GetSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GetSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GetSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GetSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *GetSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetProxyAdvertisementDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *GetSpecType) GetProxyAdvertisementDRefInfo() ([]db.DRefInfo, error) { + if m.GetProxyAdvertisement() == nil { + return nil, nil + } + + drInfos, err := m.GetProxyAdvertisement().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetProxyAdvertisement().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "proxy_advertisement." + dri.DRField + } + return drInfos, err + +} + +type ValidateGetSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGetSpecType) TransportTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(TransportType) + return int32(i) + } + // TransportType_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, TransportType_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for transport_type") + } + + return validatorFn, nil +} + +func (v *ValidateGetSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GetSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GetSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["domain_name"]; exists { + + vOpts := append(opts, db.WithValidateField("domain_name")) + if err := fv(ctx, m.GetDomainName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["msg"]; exists { + + vOpts := append(opts, db.WithValidateField("msg")) + if err := fv(ctx, m.GetMsg(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policies"]; exists { + + vOpts := append(opts, db.WithValidateField("policies")) + if err := fv(ctx, m.GetPolicies(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["proxy_advertisement"]; exists { + + vOpts := append(opts, db.WithValidateField("proxy_advertisement")) + if err := fv(ctx, m.GetProxyAdvertisement(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["transport_type"]; exists { + + vOpts := append(opts, db.WithValidateField("transport_type")) + if err := fv(ctx, m.GetTransportType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGetSpecTypeValidator = func() *ValidateGetSpecType { + v := &ValidateGetSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTransportType := v.TransportTypeValidationRuleHandler + rulesTransportType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhTransportType(rulesTransportType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GetSpecType.transport_type: %s", err) + panic(errMsg) + } + v.FldValidators["transport_type"] = vFn + + v.FldValidators["msg"] = ServiceDetailsValidator().Validate + + v.FldValidators["proxy_advertisement"] = ProxyAdvertisementTypeValidator().Validate + + return v +}() + +func GetSpecTypeValidator() db.Validator { + return DefaultGetSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *GlobalSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *GlobalSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *GlobalSpecType) DeepCopy() *GlobalSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &GlobalSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *GlobalSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *GlobalSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return GlobalSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *GlobalSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + var drInfos []db.DRefInfo + if fdrInfos, err := m.GetProxyAdvertisementDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetProxyAdvertisementDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + if fdrInfos, err := m.GetViewInternalDRefInfo(); err != nil { + return nil, errors.Wrap(err, "GetViewInternalDRefInfo() FAILED") + } else { + drInfos = append(drInfos, fdrInfos...) + } + + return drInfos, nil + +} + +// GetDRefInfo for the field's type +func (m *GlobalSpecType) GetProxyAdvertisementDRefInfo() ([]db.DRefInfo, error) { + if m.GetProxyAdvertisement() == nil { + return nil, nil + } + + drInfos, err := m.GetProxyAdvertisement().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetProxyAdvertisement().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "proxy_advertisement." + dri.DRField + } + return drInfos, err + +} + +func (m *GlobalSpecType) GetViewInternalDRefInfo() ([]db.DRefInfo, error) { + + vref := m.GetViewInternal() + if vref == nil { + return nil, nil + } + vdRef := db.NewDirectRefForView(vref) + vdRef.SetKind("view_internal.Object") + dri := db.DRefInfo{ + RefdType: "view_internal.Object", + RefdTenant: vref.Tenant, + RefdNS: vref.Namespace, + RefdName: vref.Name, + DRField: "view_internal", + Ref: vdRef, + } + return []db.DRefInfo{dri}, nil + +} + +// GetViewInternalDBEntries returns the db.Entry corresponding to the ObjRefType from the default Table +func (m *GlobalSpecType) GetViewInternalDBEntries(ctx context.Context, d db.Interface) ([]db.Entry, error) { + var entries []db.Entry + refdType, err := d.TypeForEntryKind("", "", "view_internal.Object") + if err != nil { + return nil, errors.Wrap(err, "Cannot find type for kind: view_internal") + } + + vref := m.GetViewInternal() + if vref == nil { + return nil, nil + } + ref := &ves_io_schema.ObjectRefType{ + Kind: "view_internal.Object", + Tenant: vref.Tenant, + Namespace: vref.Namespace, + Name: vref.Name, + } + refdEnt, err := d.GetReferredEntry(ctx, refdType, ref, db.WithRefOpOptions(db.OpWithReadRefFromInternalTable())) + if err != nil { + return nil, errors.Wrap(err, "Getting referred entry") + } + if refdEnt != nil { + entries = append(entries, refdEnt) + } + + return entries, nil +} + +type ValidateGlobalSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateGlobalSpecType) TransportTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(TransportType) + return int32(i) + } + // TransportType_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, TransportType_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for transport_type") + } + + return validatorFn, nil +} + +func (v *ValidateGlobalSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*GlobalSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *GlobalSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["domain_name"]; exists { + + vOpts := append(opts, db.WithValidateField("domain_name")) + if err := fv(ctx, m.GetDomainName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["msg"]; exists { + + vOpts := append(opts, db.WithValidateField("msg")) + if err := fv(ctx, m.GetMsg(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policies"]; exists { + + vOpts := append(opts, db.WithValidateField("policies")) + if err := fv(ctx, m.GetPolicies(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["proxy_advertisement"]; exists { + + vOpts := append(opts, db.WithValidateField("proxy_advertisement")) + if err := fv(ctx, m.GetProxyAdvertisement(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["transport_type"]; exists { + + vOpts := append(opts, db.WithValidateField("transport_type")) + if err := fv(ctx, m.GetTransportType(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["view_internal"]; exists { + + vOpts := append(opts, db.WithValidateField("view_internal")) + if err := fv(ctx, m.GetViewInternal(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultGlobalSpecTypeValidator = func() *ValidateGlobalSpecType { + v := &ValidateGlobalSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTransportType := v.TransportTypeValidationRuleHandler + rulesTransportType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhTransportType(rulesTransportType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for GlobalSpecType.transport_type: %s", err) + panic(errMsg) + } + v.FldValidators["transport_type"] = vFn + + v.FldValidators["msg"] = ServiceDetailsValidator().Validate + + v.FldValidators["proxy_advertisement"] = ProxyAdvertisementTypeValidator().Validate + + v.FldValidators["view_internal"] = ves_io_schema_views.ObjectRefTypeValidator().Validate + + return v +}() + +func GlobalSpecTypeValidator() db.Validator { + return DefaultGlobalSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ProxyAdvertisementType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ProxyAdvertisementType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ProxyAdvertisementType) DeepCopy() *ProxyAdvertisementType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ProxyAdvertisementType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ProxyAdvertisementType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ProxyAdvertisementType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ProxyAdvertisementTypeValidator().Validate(ctx, m, opts...) +} + +func (m *ProxyAdvertisementType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetAdvertiseChoiceDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ProxyAdvertisementType) GetAdvertiseChoiceDRefInfo() ([]db.DRefInfo, error) { + if m.GetAdvertiseChoice() == nil { + return nil, nil + } + switch m.GetAdvertiseChoice().(type) { + case *ProxyAdvertisementType_DoNotAdvertise: + + return nil, nil + + case *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip: + + return nil, nil + + case *ProxyAdvertisementType_AdvertiseOnPublic: + + drInfos, err := m.GetAdvertiseOnPublic().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseOnPublic().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_on_public." + dri.DRField + } + return drInfos, err + + case *ProxyAdvertisementType_AdvertiseCustom: + + drInfos, err := m.GetAdvertiseCustom().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetAdvertiseCustom().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "advertise_custom." + dri.DRField + } + return drInfos, err + + default: + return nil, nil + } + +} + +type ValidateProxyAdvertisementType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateProxyAdvertisementType) AdvertiseChoiceValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + validatorFn, err := db.NewMessageValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for advertise_choice") + } + return validatorFn, nil +} + +func (v *ValidateProxyAdvertisementType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ProxyAdvertisementType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ProxyAdvertisementType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["advertise_choice"]; exists { + val := m.GetAdvertiseChoice() + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + switch m.GetAdvertiseChoice().(type) { + case *ProxyAdvertisementType_DoNotAdvertise: + if fv, exists := v.FldValidators["advertise_choice.do_not_advertise"]; exists { + val := m.GetAdvertiseChoice().(*ProxyAdvertisementType_DoNotAdvertise).DoNotAdvertise + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("do_not_advertise"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyAdvertisementType_AdvertiseOnPublicDefaultVip: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public_default_vip"]; exists { + val := m.GetAdvertiseChoice().(*ProxyAdvertisementType_AdvertiseOnPublicDefaultVip).AdvertiseOnPublicDefaultVip + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public_default_vip"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyAdvertisementType_AdvertiseOnPublic: + if fv, exists := v.FldValidators["advertise_choice.advertise_on_public"]; exists { + val := m.GetAdvertiseChoice().(*ProxyAdvertisementType_AdvertiseOnPublic).AdvertiseOnPublic + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_on_public"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + case *ProxyAdvertisementType_AdvertiseCustom: + if fv, exists := v.FldValidators["advertise_choice.advertise_custom"]; exists { + val := m.GetAdvertiseChoice().(*ProxyAdvertisementType_AdvertiseCustom).AdvertiseCustom + vOpts := append(opts, + db.WithValidateField("advertise_choice"), + db.WithValidateField("advertise_custom"), + ) + if err := fv(ctx, val, vOpts...); err != nil { + return err + } + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultProxyAdvertisementTypeValidator = func() *ValidateProxyAdvertisementType { + v := &ValidateProxyAdvertisementType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhAdvertiseChoice := v.AdvertiseChoiceValidationRuleHandler + rulesAdvertiseChoice := map[string]string{ + "ves.io.schema.rules.message.required_oneof": "true", + } + vFn, err = vrhAdvertiseChoice(rulesAdvertiseChoice) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ProxyAdvertisementType.advertise_choice: %s", err) + panic(errMsg) + } + v.FldValidators["advertise_choice"] = vFn + + v.FldValidators["advertise_choice.advertise_on_public"] = ves_io_schema_views.AdvertisePublicValidator().Validate + v.FldValidators["advertise_choice.advertise_custom"] = ves_io_schema_views.AdvertiseCustomValidator().Validate + + return v +}() + +func ProxyAdvertisementTypeValidator() db.Validator { + return DefaultProxyAdvertisementTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ReplaceSpecType) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ReplaceSpecType) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ReplaceSpecType) DeepCopy() *ReplaceSpecType { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ReplaceSpecType{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ReplaceSpecType) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ReplaceSpecType) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ReplaceSpecTypeValidator().Validate(ctx, m, opts...) +} + +func (m *ReplaceSpecType) GetDRefInfo() ([]db.DRefInfo, error) { + if m == nil { + return nil, nil + } + + return m.GetProxyAdvertisementDRefInfo() + +} + +// GetDRefInfo for the field's type +func (m *ReplaceSpecType) GetProxyAdvertisementDRefInfo() ([]db.DRefInfo, error) { + if m.GetProxyAdvertisement() == nil { + return nil, nil + } + + drInfos, err := m.GetProxyAdvertisement().GetDRefInfo() + if err != nil { + return nil, errors.Wrap(err, "GetProxyAdvertisement().GetDRefInfo() FAILED") + } + for i := range drInfos { + dri := &drInfos[i] + dri.DRField = "proxy_advertisement." + dri.DRField + } + return drInfos, err + +} + +type ValidateReplaceSpecType struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateReplaceSpecType) TransportTypeValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + var conv db.EnumConvFn + conv = func(v interface{}) int32 { + i := v.(TransportType) + return int32(i) + } + // TransportType_name is generated in .pb.go + validatorFn, err := db.NewEnumValidationRuleHandler(rules, TransportType_name, conv) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for transport_type") + } + + return validatorFn, nil +} + +func (v *ValidateReplaceSpecType) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ReplaceSpecType) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ReplaceSpecType got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["domain_name"]; exists { + + vOpts := append(opts, db.WithValidateField("domain_name")) + if err := fv(ctx, m.GetDomainName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["msg"]; exists { + + vOpts := append(opts, db.WithValidateField("msg")) + if err := fv(ctx, m.GetMsg(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["policies"]; exists { + + vOpts := append(opts, db.WithValidateField("policies")) + if err := fv(ctx, m.GetPolicies(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["proxy_advertisement"]; exists { + + vOpts := append(opts, db.WithValidateField("proxy_advertisement")) + if err := fv(ctx, m.GetProxyAdvertisement(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["transport_type"]; exists { + + vOpts := append(opts, db.WithValidateField("transport_type")) + if err := fv(ctx, m.GetTransportType(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultReplaceSpecTypeValidator = func() *ValidateReplaceSpecType { + v := &ValidateReplaceSpecType{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhTransportType := v.TransportTypeValidationRuleHandler + rulesTransportType := map[string]string{ + "ves.io.schema.rules.message.required": "true", + } + vFn, err = vrhTransportType(rulesTransportType) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for ReplaceSpecType.transport_type: %s", err) + panic(errMsg) + } + v.FldValidators["transport_type"] = vFn + + v.FldValidators["msg"] = ServiceDetailsValidator().Validate + + v.FldValidators["proxy_advertisement"] = ProxyAdvertisementTypeValidator().Validate + + return v +}() + +func ReplaceSpecTypeValidator() db.Validator { + return DefaultReplaceSpecTypeValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ServiceDetails) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ServiceDetails) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ServiceDetails) DeepCopy() *ServiceDetails { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ServiceDetails{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ServiceDetails) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ServiceDetails) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ServiceDetailsValidator().Validate(ctx, m, opts...) +} + +type ValidateServiceDetails struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateServiceDetails) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ServiceDetails) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ServiceDetails got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["ip"]; exists { + + vOpts := append(opts, db.WithValidateField("ip")) + if err := fv(ctx, m.GetIp(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["port"]; exists { + + vOpts := append(opts, db.WithValidateField("port")) + if err := fv(ctx, m.GetPort(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultServiceDetailsValidator = func() *ValidateServiceDetails { + v := &ValidateServiceDetails{FldValidators: map[string]db.ValidatorFunc{}} + + v.FldValidators["ip"] = ves_io_schema.IpAddressTypeValidator().Validate + + return v +}() + +func ServiceDetailsValidator() db.Validator { + return DefaultServiceDetailsValidator +} + +// augmented methods on protoc/std generated struct + +func (m *TileAccess) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *TileAccess) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *TileAccess) DeepCopy() *TileAccess { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &TileAccess{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *TileAccess) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *TileAccess) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return TileAccessValidator().Validate(ctx, m, opts...) +} + +type ValidateTileAccess struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateTileAccess) DisplayNameValidationRuleHandler(rules map[string]string) (db.ValidatorFunc, error) { + + validatorFn, err := db.NewStringValidationRuleHandler(rules) + if err != nil { + return nil, errors.Wrap(err, "ValidationRuleHandler for display_name") + } + + return validatorFn, nil +} + +func (v *ValidateTileAccess) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*TileAccess) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *TileAccess got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["display_name"]; exists { + + vOpts := append(opts, db.WithValidateField("display_name")) + if err := fv(ctx, m.GetDisplayName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["state"]; exists { + + vOpts := append(opts, db.WithValidateField("state")) + if err := fv(ctx, m.GetState(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultTileAccessValidator = func() *ValidateTileAccess { + v := &ValidateTileAccess{FldValidators: map[string]db.ValidatorFunc{}} + + var ( + err error + vFn db.ValidatorFunc + ) + _, _ = err, vFn + vFnMap := map[string]db.ValidatorFunc{} + _ = vFnMap + + vrhDisplayName := v.DisplayNameValidationRuleHandler + rulesDisplayName := map[string]string{ + "ves.io.schema.rules.string.max_len": "256", + } + vFn, err = vrhDisplayName(rulesDisplayName) + if err != nil { + errMsg := fmt.Sprintf("ValidationRuleHandler for TileAccess.display_name: %s", err) + panic(errMsg) + } + v.FldValidators["display_name"] = vFn + + return v +}() + +func TileAccessValidator() db.Validator { + return DefaultTileAccessValidator +} + +// augmented methods on protoc/std generated struct + +func (m *ZTNApolicies) ToJSON() (string, error) { + return codec.ToJSON(m) +} + +func (m *ZTNApolicies) ToYAML() (string, error) { + return codec.ToYAML(m) +} + +func (m *ZTNApolicies) DeepCopy() *ZTNApolicies { + if m == nil { + return nil + } + ser, err := m.Marshal() + if err != nil { + return nil + } + c := &ZTNApolicies{} + err = c.Unmarshal(ser) + if err != nil { + return nil + } + return c +} + +func (m *ZTNApolicies) DeepCopyProto() proto.Message { + if m == nil { + return nil + } + return m.DeepCopy() +} + +func (m *ZTNApolicies) Validate(ctx context.Context, opts ...db.ValidateOpt) error { + return ZTNApoliciesValidator().Validate(ctx, m, opts...) +} + +type ValidateZTNApolicies struct { + FldValidators map[string]db.ValidatorFunc +} + +func (v *ValidateZTNApolicies) Validate(ctx context.Context, pm interface{}, opts ...db.ValidateOpt) error { + m, ok := pm.(*ZTNApolicies) + if !ok { + switch t := pm.(type) { + case nil: + return nil + default: + return fmt.Errorf("Expected type *ZTNApolicies got type %s", t) + } + } + if m == nil { + return nil + } + + if fv, exists := v.FldValidators["connectivity_policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("connectivity_policy_name")) + if err := fv(ctx, m.GetConnectivityPolicyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["message_policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("message_policy_name")) + if err := fv(ctx, m.GetMessagePolicyName(), vOpts...); err != nil { + return err + } + + } + + if fv, exists := v.FldValidators["session_policy_name"]; exists { + + vOpts := append(opts, db.WithValidateField("session_policy_name")) + if err := fv(ctx, m.GetSessionPolicyName(), vOpts...); err != nil { + return err + } + + } + + return nil +} + +// Well-known symbol for default validator implementation +var DefaultZTNApoliciesValidator = func() *ValidateZTNApolicies { + v := &ValidateZTNApolicies{FldValidators: map[string]db.ValidatorFunc{}} + + return v +}() + +func ZTNApoliciesValidator() db.Validator { + return DefaultZTNApoliciesValidator +} + +func (m *CreateSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.DomainName = f.GetDomainName() + m.Msg = f.GetMsg() + m.Policies = f.GetPolicies() + m.ProxyAdvertisement = f.GetProxyAdvertisement() + m.TransportType = f.GetTransportType() +} + +func (m *CreateSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *CreateSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *CreateSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.DomainName = m1.DomainName + f.Msg = m1.Msg + f.Policies = m1.Policies + f.ProxyAdvertisement = m1.ProxyAdvertisement + f.TransportType = m1.TransportType +} + +func (m *CreateSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *CreateSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} + +func (m *GetSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.DomainName = f.GetDomainName() + m.Msg = f.GetMsg() + m.Policies = f.GetPolicies() + m.ProxyAdvertisement = f.GetProxyAdvertisement() + m.TransportType = f.GetTransportType() +} + +func (m *GetSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *GetSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *GetSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.DomainName = m1.DomainName + f.Msg = m1.Msg + f.Policies = m1.Policies + f.ProxyAdvertisement = m1.ProxyAdvertisement + f.TransportType = m1.TransportType +} + +func (m *GetSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *GetSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} + +func (m *ReplaceSpecType) fromGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + if f == nil { + return + } + m.DomainName = f.GetDomainName() + m.Msg = f.GetMsg() + m.Policies = f.GetPolicies() + m.ProxyAdvertisement = f.GetProxyAdvertisement() + m.TransportType = f.GetTransportType() +} + +func (m *ReplaceSpecType) FromGlobalSpecType(f *GlobalSpecType) { + m.fromGlobalSpecType(f, true) +} + +func (m *ReplaceSpecType) FromGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.fromGlobalSpecType(f, false) +} + +func (m *ReplaceSpecType) toGlobalSpecType(f *GlobalSpecType, withDeepCopy bool) { + m1 := m + if withDeepCopy { + m1 = m.DeepCopy() + } + _ = m1 + + f.DomainName = m1.DomainName + f.Msg = m1.Msg + f.Policies = m1.Policies + f.ProxyAdvertisement = m1.ProxyAdvertisement + f.TransportType = m1.TransportType +} + +func (m *ReplaceSpecType) ToGlobalSpecType(f *GlobalSpecType) { + m.toGlobalSpecType(f, true) +} + +func (m *ReplaceSpecType) ToGlobalSpecTypeWithoutDeepCopy(f *GlobalSpecType) { + m.toGlobalSpecType(f, false) +} diff --git a/volterra/cover_profile.txt b/volterra/cover_profile.txt index cf7c5b274..fefad2617 100644 --- a/volterra/cover_profile.txt +++ b/volterra/cover_profile.txt @@ -19515,17061 +19515,17061 @@ github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volte github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3554.48,3558.5 1 0 github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3560.4,3560.53 1 0 github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3560.53,3564.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3566.4,3566.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3566.50,3570.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3576.2,3576.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3576.83,3580.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3580.15,3584.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3589.2,3589.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3589.83,3594.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3597.2,3597.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3597.58,3602.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3606.2,3608.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3608.64,3612.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3612.15,3616.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3620.2,3620.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3620.63,3624.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3624.15,3628.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3632.2,3632.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3632.64,3640.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3640.26,3643.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3643.56,3647.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3649.4,3649.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3649.58,3653.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3655.4,3655.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3655.55,3659.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3666.2,3666.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3666.69,3671.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3671.25,3678.60 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3678.60,3680.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3682.4,3682.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3682.65,3684.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3686.4,3686.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3686.62,3688.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3690.4,3690.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3690.59,3692.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3700.2,3702.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3702.73,3706.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3706.15,3710.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3714.2,3714.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3714.70,3722.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3722.26,3725.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3725.51,3730.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3730.28,3736.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3736.102,3744.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3744.30,3747.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3747.57,3752.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3752.31,3759.64 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3759.64,3761.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3763.10,3763.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3763.69,3765.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3767.10,3767.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3767.66,3769.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3771.10,3771.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3771.63,3773.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3779.8,3779.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3779.51,3783.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3789.6,3789.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3789.64,3791.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3793.6,3793.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3793.65,3797.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3807.2,3807.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3807.73,3815.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3815.26,3818.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3818.54,3823.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3823.27,3828.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3828.60,3830.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3832.6,3832.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3832.65,3834.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3836.6,3836.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3836.62,3838.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3850.2,3852.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3852.74,3860.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3860.26,3863.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3863.48,3867.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3869.4,3869.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3869.53,3873.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3875.4,3875.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3875.50,3879.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3885.2,3885.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3885.85,3889.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3889.15,3893.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3898.2,3898.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3898.65,3903.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3903.25,3910.59 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3910.59,3912.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3914.4,3914.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3914.64,3916.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3918.4,3918.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3918.61,3920.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3922.4,3922.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3922.58,3924.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3931.2,3931.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3931.63,3936.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3936.25,3943.59 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3943.59,3945.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3947.4,3947.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3947.64,3949.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3951.4,3951.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3951.61,3953.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3955.4,3955.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3955.58,3957.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3964.2,3964.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3964.71,3969.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3972.2,3972.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3972.70,3977.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3977.25,3984.60 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3984.60,3986.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3988.4,3988.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3988.65,3990.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3992.4,3992.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3992.62,3994.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3996.4,3996.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3996.59,3998.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4005.2,4005.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4005.75,4010.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4010.26,4015.126 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4015.126,4023.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4023.28,4028.79 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4028.79,4032.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4032.19,4036.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4040.6,4040.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4040.82,4044.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4044.19,4048.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4056.4,4056.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4056.126,4060.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4060.17,4064.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4074.2,4076.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4076.87,4080.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4080.15,4084.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4088.2,4088.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4088.80,4096.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4096.26,4099.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4099.59,4104.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4104.28,4108.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4108.81,4110.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4112.6,4112.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4112.85,4114.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4116.6,4116.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4116.80,4118.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4130.2,4132.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4132.83,4136.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4136.15,4140.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4144.2,4144.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4144.80,4152.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4152.26,4155.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4155.59,4160.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4160.28,4164.94 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4164.94,4166.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4166.52,4168.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4169.7,4169.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4172.6,4172.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4172.89,4174.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4176.6,4176.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4176.88,4178.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4180.6,4180.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4180.78,4182.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4184.6,4186.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4186.107,4194.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4194.30,4197.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4197.52,4201.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4207.6,4207.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4207.104,4215.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4215.30,4218.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4218.63,4222.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4224.8,4224.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4224.63,4228.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4230.8,4230.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4230.62,4234.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4236.8,4236.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4236.59,4240.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4242.8,4242.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4242.65,4246.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4248.8,4248.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4248.57,4252.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4254.8,4254.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4254.54,4258.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4260.8,4260.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4260.58,4264.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4266.8,4266.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4266.58,4270.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4272.8,4272.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4272.66,4276.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4278.8,4278.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4278.52,4282.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4284.8,4284.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4284.67,4288.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4290.8,4290.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4290.59,4294.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4296.8,4296.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4296.64,4300.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4302.8,4302.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4302.62,4306.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4308.8,4308.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4308.53,4312.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4318.6,4318.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4318.107,4326.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4326.30,4329.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4329.56,4332.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4332.54,4334.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4335.9,4335.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4338.8,4338.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4338.61,4342.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4348.6,4348.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4348.118,4356.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4356.30,4359.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4359.55,4363.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4365.8,4365.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4365.63,4369.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4371.8,4371.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4371.58,4375.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4381.6,4381.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4381.81,4383.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4385.6,4385.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4385.85,4387.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4389.6,4389.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4389.81,4391.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4403.2,4405.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4405.80,4409.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4409.15,4413.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4417.2,4417.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4417.82,4425.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4425.26,4428.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4428.59,4433.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4433.28,4437.95 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4437.95,4439.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4439.52,4441.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4442.7,4442.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4445.6,4447.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4447.107,4451.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4451.19,4455.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4459.6,4459.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4459.104,4467.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4467.30,4470.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4470.63,4474.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4476.8,4476.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4476.59,4480.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4482.8,4482.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4482.67,4487.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4487.32,4490.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4490.104,4495.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4495.34,4498.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4498.105,4500.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4502.12,4502.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4502.94,4504.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4506.12,4506.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4506.100,4508.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4514.10,4514.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4514.94,4518.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4520.10,4522.124 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4522.124,4530.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4530.34,4533.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4533.71,4537.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4539.12,4539.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4539.60,4543.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4545.12,4545.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4545.66,4549.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4555.10,4555.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4555.120,4563.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4563.34,4566.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4566.60,4570.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4572.12,4572.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4572.55,4576.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4582.10,4582.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4582.120,4590.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4590.34,4593.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4593.55,4597.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4599.12,4599.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4599.60,4603.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4605.12,4605.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4605.60,4609.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4611.12,4611.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4611.67,4615.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4617.12,4617.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4617.59,4621.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4627.10,4627.122 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4627.122,4635.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4635.34,4638.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4638.56,4642.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4652.8,4652.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4652.63,4656.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4658.8,4658.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4658.57,4662.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4664.8,4664.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4664.56,4669.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4669.32,4672.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4672.95,4677.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4677.34,4680.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4680.105,4682.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4684.12,4684.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4684.94,4686.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4688.12,4688.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4688.100,4690.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4696.10,4696.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4696.85,4700.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4702.10,4704.115 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4704.115,4712.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4712.34,4715.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4715.71,4719.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4721.12,4721.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4721.60,4725.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4727.12,4727.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4727.66,4731.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4737.10,4737.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4737.111,4745.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4745.34,4748.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4748.60,4752.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4754.12,4754.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4754.55,4758.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4764.10,4764.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4764.111,4772.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4772.34,4775.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4775.55,4779.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4781.12,4781.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4781.60,4785.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4787.12,4787.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4787.60,4791.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4793.12,4793.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4793.67,4797.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4799.12,4799.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4799.59,4803.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4809.10,4809.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4809.113,4817.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4817.34,4820.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4820.56,4824.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4834.8,4834.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4834.73,4838.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4840.8,4840.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4840.67,4844.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4846.8,4846.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4846.56,4850.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4856.6,4856.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4856.107,4864.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4864.30,4869.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4869.99,4877.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4877.32,4880.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4880.67,4885.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4885.34,4888.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4888.87,4890.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4890.49,4892.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4893.13,4893.46 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4896.12,4896.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4896.82,4898.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4898.49,4900.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4901.13,4901.42 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4908.10,4908.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4908.68,4912.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4914.10,4914.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4914.62,4918.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4920.10,4920.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4920.68,4924.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4926.10,4926.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4926.68,4931.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4931.34,4934.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4934.105,4939.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4939.36,4942.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4942.107,4944.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4946.14,4946.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4946.96,4948.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4950.14,4950.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4950.102,4952.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4958.12,4958.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4958.95,4962.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4964.12,4966.125 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4966.125,4974.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4974.36,4977.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4977.73,4981.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4983.14,4983.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4983.62,4987.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4989.14,4989.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4989.68,4993.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4999.12,4999.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4999.121,5007.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5007.36,5010.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5010.62,5014.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5016.14,5016.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5016.57,5020.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5026.12,5026.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5026.121,5034.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5034.36,5037.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5037.57,5041.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5043.14,5043.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5043.62,5047.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5049.14,5049.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5049.62,5053.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5055.14,5055.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5055.69,5059.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5061.14,5061.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5061.61,5065.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5071.12,5071.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5071.123,5079.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5079.36,5082.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5082.58,5086.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5096.10,5098.88 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5098.88,5107.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5109.10,5109.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5109.82,5118.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5120.10,5120.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5120.56,5123.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5123.56,5125.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5126.11,5126.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5129.10,5129.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5129.71,5133.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5135.10,5135.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5135.67,5139.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5141.10,5143.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5143.100,5152.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5154.10,5154.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5154.94,5163.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5165.10,5165.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5165.67,5169.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5171.10,5171.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5171.58,5176.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5176.34,5179.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5179.97,5184.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5184.36,5187.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5187.107,5189.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5191.14,5191.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5191.96,5193.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5195.14,5195.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5195.102,5197.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5203.12,5203.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5203.87,5207.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5209.12,5211.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5211.117,5219.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5219.36,5222.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5222.73,5226.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5228.14,5228.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5228.62,5232.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5234.14,5234.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5234.68,5238.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5244.12,5244.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5244.113,5252.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5252.36,5255.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5255.62,5259.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5261.14,5261.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5261.57,5265.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5271.12,5271.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5271.113,5279.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5279.36,5282.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5282.57,5286.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5288.14,5288.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5288.62,5292.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5294.14,5294.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5294.62,5298.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5300.14,5300.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5300.69,5304.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5306.14,5306.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5306.61,5310.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5316.12,5316.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5316.115,5324.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5324.36,5327.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5327.58,5331.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5341.10,5341.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5341.56,5345.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5347.10,5347.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5347.57,5352.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5352.34,5356.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5356.72,5358.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5358.58,5360.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5361.13,5361.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5364.12,5364.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5364.81,5369.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5369.36,5372.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5372.85,5374.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5376.14,5376.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5376.88,5378.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5380.14,5382.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5382.123,5391.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5393.14,5393.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5393.110,5397.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5397.27,5401.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5405.14,5405.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5405.114,5414.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5416.14,5416.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5416.89,5418.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5420.14,5420.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5420.87,5422.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5424.14,5424.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5424.90,5426.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5428.14,5428.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5428.91,5430.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5432.14,5432.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5432.88,5434.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5436.14,5436.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5436.89,5438.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5440.14,5440.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5440.89,5442.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5444.14,5444.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5444.91,5446.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5452.12,5452.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5452.70,5454.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5460.10,5460.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5460.69,5464.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5466.10,5466.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5466.64,5470.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5472.10,5472.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5472.53,5476.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5478.10,5478.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5478.72,5482.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5484.10,5484.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5484.58,5488.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5490.10,5490.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5490.65,5495.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5495.34,5498.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5498.83,5500.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5502.12,5502.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5502.86,5504.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5506.12,5508.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5508.121,5517.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5519.12,5519.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5519.108,5523.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5523.25,5527.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5531.12,5531.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5531.112,5540.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5542.12,5542.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5542.87,5544.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5546.12,5546.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5546.85,5548.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5550.12,5550.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5550.88,5552.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5554.12,5554.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5554.89,5556.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5558.12,5558.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5558.86,5560.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5562.12,5562.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5562.87,5564.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5566.12,5566.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5566.87,5568.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5570.12,5570.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5570.89,5572.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5582.8,5582.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5582.99,5590.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5590.32,5595.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5595.81,5599.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5599.23,5603.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5607.10,5607.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5607.82,5615.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5615.34,5618.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5618.73,5623.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5623.36,5626.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5626.110,5631.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5631.38,5634.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5634.109,5636.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5638.16,5638.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5638.98,5640.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5642.16,5642.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5642.104,5644.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5650.14,5650.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5650.100,5654.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5656.14,5658.130 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5658.130,5666.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5666.38,5669.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5669.75,5673.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5675.16,5675.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5675.64,5679.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5681.16,5681.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5681.70,5685.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5691.14,5691.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5691.126,5699.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5699.38,5702.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5702.64,5706.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5708.16,5708.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5708.59,5712.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5718.14,5718.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5718.126,5726.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5726.38,5729.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5729.59,5733.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5735.16,5735.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5735.64,5739.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5741.16,5741.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5741.64,5745.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5747.16,5747.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5747.71,5751.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5753.16,5753.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5753.63,5757.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5763.14,5763.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5763.128,5771.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5771.38,5774.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5774.60,5778.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5788.12,5788.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5788.80,5793.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5793.36,5796.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5796.116,5801.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5801.38,5804.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5804.109,5806.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5808.16,5808.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5808.98,5810.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5812.16,5812.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5812.104,5814.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5820.14,5820.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5820.106,5824.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5826.14,5828.136 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5828.136,5836.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5836.38,5839.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5839.75,5843.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5845.16,5845.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5845.64,5849.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5851.16,5851.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5851.70,5855.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5861.14,5861.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5861.132,5869.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5869.38,5872.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5872.64,5876.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5878.16,5878.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5878.59,5882.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5888.14,5888.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5888.132,5896.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5896.38,5899.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5899.59,5903.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5905.16,5905.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5905.64,5909.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5911.16,5911.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5911.64,5915.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5917.16,5917.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5917.71,5921.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5923.16,5923.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5923.63,5927.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5933.14,5933.134 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5933.134,5941.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5941.38,5944.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5944.60,5948.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5958.12,5958.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5958.72,5962.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5964.12,5964.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5964.65,5968.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5974.10,5974.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5974.68,5978.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5980.10,5980.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5980.68,5985.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5985.34,5988.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5988.105,5993.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5993.36,5996.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5996.107,5998.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6000.14,6000.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6000.96,6002.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6004.14,6004.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6004.102,6006.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6012.12,6012.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6012.95,6016.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6018.12,6020.125 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6020.125,6028.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6028.36,6031.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6031.73,6035.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6037.14,6037.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6037.62,6041.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6043.14,6043.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6043.68,6047.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6053.12,6053.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6053.121,6061.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6061.36,6064.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6064.62,6068.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6070.14,6070.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6070.57,6074.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6080.12,6080.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6080.121,6088.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6088.36,6091.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6091.57,6095.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6097.14,6097.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6097.62,6101.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6103.14,6103.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6103.62,6107.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6109.14,6109.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6109.69,6113.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6115.14,6115.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6115.61,6119.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6125.12,6125.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6125.123,6133.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6133.36,6136.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6136.58,6140.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6150.10,6152.88 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6152.88,6161.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6163.10,6163.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6163.82,6172.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6174.10,6174.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6174.61,6178.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6180.10,6180.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6180.56,6183.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6183.56,6185.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6186.11,6186.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6189.10,6189.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6189.71,6193.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6195.10,6195.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6195.67,6199.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6201.10,6203.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6203.100,6212.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6214.10,6214.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6214.94,6223.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6225.10,6225.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6225.58,6230.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6230.34,6233.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6233.97,6238.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6238.36,6241.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6241.107,6243.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6245.14,6245.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6245.96,6247.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6249.14,6249.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6249.102,6251.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6257.12,6257.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6257.87,6261.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6263.12,6265.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6265.117,6273.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6273.36,6276.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6276.73,6280.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6282.14,6282.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6282.62,6286.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6288.14,6288.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6288.68,6292.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6298.12,6298.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6298.113,6306.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6306.36,6309.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6309.62,6313.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6315.14,6315.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6315.57,6319.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6325.12,6325.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6325.113,6333.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6333.36,6336.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6336.57,6340.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6342.14,6342.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6342.62,6346.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6348.14,6348.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6348.62,6352.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6354.14,6354.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6354.69,6358.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6360.14,6360.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6360.61,6364.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6370.12,6370.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6370.115,6378.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6378.36,6381.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6381.58,6385.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6395.10,6395.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6395.56,6399.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6401.10,6401.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6401.57,6406.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6406.34,6410.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6410.72,6412.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6412.58,6414.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6415.13,6415.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6418.12,6418.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6418.81,6423.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6423.36,6426.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6426.85,6428.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6430.14,6430.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6430.88,6432.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6434.14,6436.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6436.123,6445.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6447.14,6447.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6447.110,6451.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6451.27,6455.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6459.14,6459.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6459.114,6468.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6470.14,6470.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6470.89,6472.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6474.14,6474.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6474.87,6476.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6478.14,6478.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6478.90,6480.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6482.14,6482.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6482.91,6484.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6486.14,6486.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6486.88,6488.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6490.14,6490.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6490.89,6492.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6494.14,6494.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6494.89,6496.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6498.14,6498.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6498.91,6500.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6506.12,6506.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6506.70,6508.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6514.10,6514.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6514.69,6518.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6520.10,6520.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6520.64,6524.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6526.10,6526.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6526.53,6530.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6532.10,6532.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6532.72,6536.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6538.10,6538.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6538.58,6542.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6544.10,6544.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6544.65,6549.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6549.34,6552.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6552.83,6554.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6556.12,6556.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6556.86,6558.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6560.12,6562.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6562.121,6571.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6573.12,6573.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6573.108,6577.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6577.25,6581.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6585.12,6585.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6585.112,6594.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6596.12,6596.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6596.87,6598.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6600.12,6600.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6600.85,6602.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6604.12,6604.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6604.88,6606.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6608.12,6608.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6608.89,6610.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6612.12,6612.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6612.86,6614.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6616.12,6616.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6616.87,6618.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6620.12,6620.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6620.87,6622.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6624.12,6624.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6624.89,6626.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6640.6,6640.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6640.118,6648.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6648.30,6651.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6651.54,6656.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6656.32,6659.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6659.74,6664.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6664.34,6667.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6667.83,6669.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6671.12,6671.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6671.84,6673.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6675.12,6675.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6675.87,6677.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6677.49,6679.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6680.13,6680.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6683.12,6683.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6683.96,6685.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6687.12,6687.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6687.81,6692.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6692.36,6696.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6696.81,6701.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6701.38,6704.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6704.101,6709.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6709.40,6712.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6712.111,6714.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6716.18,6716.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6716.100,6718.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6720.18,6720.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6720.106,6722.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6728.16,6728.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6728.91,6732.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6734.16,6736.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6736.121,6744.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6744.40,6747.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6747.77,6751.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6753.18,6753.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6753.66,6757.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6759.18,6759.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6759.72,6763.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6769.16,6769.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6769.117,6777.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6777.40,6780.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6780.66,6784.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6786.18,6786.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6786.61,6790.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6796.16,6796.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6796.117,6804.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6804.40,6807.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6807.61,6811.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6813.18,6813.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6813.66,6817.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6819.18,6819.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6819.66,6823.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6825.18,6825.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6825.73,6829.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6831.18,6831.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6831.65,6835.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6841.16,6841.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6841.119,6849.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6849.40,6852.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6852.62,6856.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6866.14,6866.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6866.78,6868.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6868.60,6870.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6871.15,6871.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6874.14,6876.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6876.111,6885.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6887.14,6887.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6887.105,6896.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6902.12,6902.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6902.88,6904.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6906.12,6906.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6906.77,6908.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6914.10,6914.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6914.74,6919.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6919.34,6922.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6922.94,6924.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6926.12,6926.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6926.81,6928.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6930.12,6930.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6930.81,6935.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6935.36,6939.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6939.81,6944.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6944.38,6947.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6947.101,6952.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6952.40,6955.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6955.111,6957.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6959.18,6959.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6959.100,6961.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6963.18,6963.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6963.106,6965.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6971.16,6971.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6971.91,6975.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6977.16,6979.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6979.121,6987.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6987.40,6990.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6990.77,6994.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6996.18,6996.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6996.66,7000.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7002.18,7002.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7002.72,7006.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7012.16,7012.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7012.117,7020.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7020.40,7023.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7023.66,7027.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7029.18,7029.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7029.61,7033.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7039.16,7039.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7039.117,7047.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7047.40,7050.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7050.61,7054.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7056.18,7056.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7056.66,7060.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7062.18,7062.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7062.66,7066.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7068.18,7068.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7068.73,7072.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7074.18,7074.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7074.65,7078.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7084.16,7084.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7084.119,7092.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7092.40,7095.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7095.62,7099.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7109.14,7109.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7109.78,7111.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7111.60,7113.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7114.15,7114.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7117.14,7119.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7119.111,7128.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7130.14,7130.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7130.105,7139.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7141.14,7143.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7143.118,7152.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7154.14,7154.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7154.112,7163.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7177.8,7177.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7177.58,7181.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7183.8,7183.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7183.71,7187.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7189.8,7189.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7189.70,7193.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7199.6,7199.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7199.81,7201.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7213.2,7215.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7215.87,7219.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7219.15,7223.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7227.2,7227.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7227.88,7235.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7235.26,7238.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7238.54,7243.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7243.27,7248.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7248.60,7250.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7252.6,7252.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7252.65,7254.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7256.6,7256.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7256.62,7258.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7270.2,7272.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7272.93,7276.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7276.15,7280.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7284.2,7284.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7284.90,7292.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7292.26,7295.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7295.58,7300.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7300.28,7304.71 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7304.71,7307.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7307.43,7309.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7310.7,7310.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7314.6,7314.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7314.72,7316.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7316.52,7318.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7319.7,7319.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7322.6,7322.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7322.73,7327.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7327.30,7330.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7330.71,7335.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7335.31,7342.64 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7342.64,7344.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7346.10,7346.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7346.69,7348.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7350.10,7350.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7350.66,7352.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7354.10,7354.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7354.63,7356.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7362.8,7362.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7362.77,7367.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7367.32,7372.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7372.92,7380.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7380.34,7383.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7383.56,7387.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7393.10,7393.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7393.92,7401.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7401.34,7404.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7404.56,7408.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7418.8,7418.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7418.66,7422.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7428.6,7428.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7428.73,7433.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7433.30,7439.83 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7439.83,7447.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7447.32,7450.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7450.54,7454.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7456.10,7456.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7456.56,7460.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7466.8,7466.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7466.83,7474.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7474.32,7477.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7477.54,7481.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7483.10,7483.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7483.56,7487.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7507.2,7509.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7509.72,7513.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7513.15,7517.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7521.2,7521.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7521.71,7525.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7525.15,7529.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7533.2,7533.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7533.69,7541.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7541.26,7544.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7544.48,7548.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7550.4,7550.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7550.53,7554.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7556.4,7556.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7556.50,7560.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7568.2,7570.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7570.62,7574.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7574.15,7578.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7582.2,7582.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7582.61,7586.3 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7589.2,7589.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7589.72,7594.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7596.2,7599.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7599.16,7601.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7602.2,7604.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7607.80,7613.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7613.16,7614.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7614.55,7618.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7619.3,7619.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7621.2,7621.40 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7624.101,7640.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7643.82,7652.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7652.58,7656.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7656.48,7659.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7660.3,7660.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7663.2,7663.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7663.58,7666.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7668.2,7668.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7668.54,7671.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7673.2,7673.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7673.53,7677.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7677.48,7680.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7681.3,7681.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7684.2,7684.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7684.51,7687.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7689.2,7689.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7689.56,7692.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7694.2,7694.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7694.63,7699.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7699.26,7705.113 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7705.113,7709.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7709.17,7713.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7717.4,7717.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7717.113,7721.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7721.17,7725.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7729.4,7729.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7729.128,7733.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7733.17,7737.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7741.4,7741.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7741.78,7745.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7751.2,7753.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7753.70,7761.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7761.26,7764.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7764.56,7769.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7769.28,7773.71 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7773.71,7775.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7775.43,7777.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7778.7,7778.34 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7781.6,7783.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7783.101,7787.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7787.19,7791.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7795.6,7795.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7795.92,7803.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7803.30,7806.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7806.52,7810.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7816.6,7816.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7816.85,7818.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7820.6,7820.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7820.77,7822.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7824.6,7824.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7824.68,7826.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7836.2,7836.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7836.69,7840.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7840.15,7844.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7848.2,7850.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7850.80,7858.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7858.26,7861.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7861.48,7865.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7867.4,7867.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7867.53,7871.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7873.4,7873.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7873.50,7877.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7883.2,7883.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7883.87,7891.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7891.26,7894.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7894.48,7898.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7900.4,7900.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7900.53,7904.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7906.4,7906.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7906.50,7910.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7916.2,7916.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7916.83,7920.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7920.15,7924.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7928.2,7928.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7928.83,7933.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7935.2,7937.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7937.64,7941.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7941.15,7945.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7949.2,7949.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7949.63,7953.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7953.15,7957.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7961.2,7961.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7961.64,7969.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7969.26,7972.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7972.56,7976.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7978.4,7978.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7978.58,7982.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7984.4,7984.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7984.55,7988.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7994.2,7994.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7994.69,7999.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7999.25,8006.60 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8006.60,8008.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8010.4,8010.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8010.65,8012.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8014.4,8014.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8014.62,8016.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8018.4,8018.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8018.59,8020.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8026.2,8028.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8028.73,8032.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8032.15,8036.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8040.2,8040.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8040.70,8048.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8048.26,8051.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8051.51,8056.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8056.28,8062.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8062.102,8070.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8070.30,8073.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8073.57,8078.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8078.31,8085.64 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8085.64,8087.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8089.10,8089.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8089.69,8091.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8093.10,8093.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8093.66,8095.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8097.10,8097.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8097.63,8099.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8105.8,8105.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8105.51,8109.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8115.6,8115.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8115.64,8117.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8119.6,8119.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8119.65,8123.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8133.2,8133.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8133.73,8141.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8141.26,8144.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8144.54,8149.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8149.27,8154.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8154.60,8156.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8158.6,8158.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8158.65,8160.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8162.6,8162.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8162.62,8164.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8174.2,8176.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8176.74,8184.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8184.26,8187.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8187.48,8191.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8193.4,8193.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8193.53,8197.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8199.4,8199.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8199.50,8203.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8209.2,8209.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8209.85,8213.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8213.15,8217.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8221.2,8221.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8221.65,8226.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8226.25,8233.59 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8233.59,8235.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8237.4,8237.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8237.64,8239.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8241.4,8241.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8241.61,8243.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8245.4,8245.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8245.58,8247.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8253.2,8253.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8253.63,8258.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8258.25,8265.59 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8265.59,8267.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8269.4,8269.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8269.64,8271.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8273.4,8273.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8273.61,8275.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8277.4,8277.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8277.58,8279.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8285.2,8285.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8285.71,8290.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8292.2,8292.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8292.70,8297.25 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8297.25,8304.60 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8304.60,8306.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8308.4,8308.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8308.65,8310.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8312.4,8312.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8312.62,8314.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8316.4,8316.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8316.59,8318.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8324.2,8324.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8324.75,8329.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8329.26,8334.126 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8334.126,8342.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8342.28,8347.79 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8347.79,8351.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8351.19,8355.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8359.6,8359.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8359.82,8363.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8363.19,8367.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8375.4,8375.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8375.126,8379.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8379.17,8383.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8391.2,8393.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8393.87,8397.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8397.15,8401.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8405.2,8405.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8405.80,8413.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8413.26,8416.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8416.59,8421.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8421.28,8425.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8425.81,8427.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8429.6,8429.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8429.85,8431.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8433.6,8433.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8433.80,8435.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8445.2,8447.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8447.83,8451.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8451.15,8455.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8459.2,8459.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8459.80,8467.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8467.26,8470.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8470.59,8475.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8475.28,8479.94 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8479.94,8481.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8481.52,8483.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8484.7,8484.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8487.6,8487.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8487.89,8489.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8491.6,8491.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8491.88,8493.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8495.6,8495.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8495.78,8497.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8499.6,8501.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8501.107,8509.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8509.30,8512.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8512.52,8516.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8522.6,8522.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8522.104,8530.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8530.30,8533.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8533.63,8537.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8539.8,8539.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8539.63,8543.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8545.8,8545.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8545.62,8549.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8551.8,8551.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8551.59,8555.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8557.8,8557.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8557.65,8561.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8563.8,8563.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8563.57,8567.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8569.8,8569.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8569.54,8573.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8575.8,8575.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8575.58,8579.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8581.8,8581.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8581.58,8585.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8587.8,8587.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8587.66,8591.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8593.8,8593.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8593.52,8597.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8599.8,8599.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8599.67,8603.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8605.8,8605.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8605.59,8609.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8611.8,8611.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8611.64,8615.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8617.8,8617.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8617.62,8621.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8623.8,8623.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8623.53,8627.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8633.6,8633.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8633.107,8641.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8641.30,8644.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8644.56,8647.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8647.54,8649.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8650.9,8650.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8653.8,8653.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8653.61,8657.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8663.6,8663.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8663.118,8671.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8671.30,8674.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8674.55,8678.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8680.8,8680.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8680.63,8684.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8686.8,8686.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8686.58,8690.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8696.6,8696.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8696.81,8698.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8700.6,8700.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8700.85,8702.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8704.6,8704.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8704.81,8706.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8716.2,8718.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8718.80,8722.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8722.15,8726.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8730.2,8730.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8730.82,8738.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8738.26,8741.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8741.59,8746.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8746.28,8750.95 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8750.95,8752.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8752.52,8754.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8755.7,8755.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8758.6,8760.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8760.107,8764.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8764.19,8768.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8772.6,8772.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8772.104,8780.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8780.30,8783.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8783.63,8787.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8789.8,8789.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8789.59,8793.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8795.8,8795.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8795.67,8800.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8800.32,8803.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8803.104,8808.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8808.34,8811.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8811.105,8813.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8815.12,8815.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8815.94,8817.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8819.12,8819.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8819.100,8821.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8827.10,8827.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8827.94,8831.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8833.10,8835.124 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8835.124,8843.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8843.34,8846.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8846.71,8850.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8852.12,8852.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8852.60,8856.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8858.12,8858.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8858.66,8862.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8868.10,8868.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8868.120,8876.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8876.34,8879.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8879.60,8883.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8885.12,8885.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8885.55,8889.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8895.10,8895.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8895.120,8903.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8903.34,8906.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8906.55,8910.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8912.12,8912.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8912.60,8916.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8918.12,8918.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8918.60,8922.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8924.12,8924.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8924.67,8928.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8930.12,8930.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8930.59,8934.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8940.10,8940.122 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8940.122,8948.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8948.34,8951.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8951.56,8955.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8965.8,8965.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8965.63,8969.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8971.8,8971.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8971.57,8975.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8977.8,8977.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8977.56,8982.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8982.32,8985.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8985.95,8990.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8990.34,8993.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8993.105,8995.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8997.12,8997.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8997.94,8999.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9001.12,9001.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9001.100,9003.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9009.10,9009.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9009.85,9013.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9015.10,9017.115 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9017.115,9025.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9025.34,9028.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9028.71,9032.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9034.12,9034.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9034.60,9038.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9040.12,9040.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9040.66,9044.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9050.10,9050.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9050.111,9058.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9058.34,9061.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9061.60,9065.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9067.12,9067.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9067.55,9071.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9077.10,9077.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9077.111,9085.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9085.34,9088.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9088.55,9092.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9094.12,9094.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9094.60,9098.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9100.12,9100.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9100.60,9104.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9106.12,9106.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9106.67,9110.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9112.12,9112.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9112.59,9116.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9122.10,9122.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9122.113,9130.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9130.34,9133.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9133.56,9137.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9147.8,9147.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9147.73,9151.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9153.8,9153.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9153.67,9157.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9159.8,9159.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9159.56,9163.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9169.6,9169.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9169.107,9177.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9177.30,9182.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9182.99,9190.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9190.32,9193.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9193.67,9198.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9198.34,9201.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9201.87,9203.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9203.49,9205.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9206.13,9206.46 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9209.12,9209.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9209.82,9211.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9211.49,9213.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9214.13,9214.42 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9221.10,9221.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9221.68,9225.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9227.10,9227.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9227.62,9231.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9233.10,9233.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9233.68,9237.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9239.10,9239.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9239.68,9244.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9244.34,9247.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9247.105,9252.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9252.36,9255.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9255.107,9257.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9259.14,9259.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9259.96,9261.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9263.14,9263.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9263.102,9265.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9271.12,9271.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9271.95,9275.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9277.12,9279.125 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9279.125,9287.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9287.36,9290.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9290.73,9294.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9296.14,9296.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9296.62,9300.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9302.14,9302.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9302.68,9306.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9312.12,9312.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9312.121,9320.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9320.36,9323.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9323.62,9327.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9329.14,9329.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9329.57,9333.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9339.12,9339.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9339.121,9347.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9347.36,9350.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9350.57,9354.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9356.14,9356.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9356.62,9360.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9362.14,9362.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9362.62,9366.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9368.14,9368.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9368.69,9372.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9374.14,9374.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9374.61,9378.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9384.12,9384.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9384.123,9392.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9392.36,9395.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9395.58,9399.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9409.10,9411.88 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9411.88,9420.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9422.10,9422.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9422.82,9431.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9433.10,9433.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9433.56,9436.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9436.56,9438.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9439.11,9439.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9442.10,9442.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9442.71,9446.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9448.10,9448.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9448.67,9452.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9454.10,9456.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9456.100,9465.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9467.10,9467.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9467.94,9476.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9478.10,9478.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9478.67,9482.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9484.10,9484.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9484.58,9489.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9489.34,9492.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9492.97,9497.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9497.36,9500.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9500.107,9502.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9504.14,9504.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9504.96,9506.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9508.14,9508.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9508.102,9510.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9516.12,9516.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9516.87,9520.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9522.12,9524.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9524.117,9532.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9532.36,9535.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9535.73,9539.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9541.14,9541.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9541.62,9545.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9547.14,9547.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9547.68,9551.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9557.12,9557.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9557.113,9565.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9565.36,9568.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9568.62,9572.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9574.14,9574.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9574.57,9578.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9584.12,9584.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9584.113,9592.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9592.36,9595.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9595.57,9599.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9601.14,9601.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9601.62,9605.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9607.14,9607.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9607.62,9611.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9613.14,9613.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9613.69,9617.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9619.14,9619.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9619.61,9623.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9629.12,9629.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9629.115,9637.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9637.36,9640.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9640.58,9644.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9654.10,9654.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9654.56,9658.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9660.10,9660.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9660.57,9665.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9665.34,9669.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9669.72,9671.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9671.58,9673.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9674.13,9674.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9677.12,9677.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9677.81,9682.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9682.36,9685.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9685.85,9687.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9689.14,9689.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9689.88,9691.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9693.14,9695.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9695.123,9704.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9706.14,9706.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9706.110,9710.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9710.27,9714.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9718.14,9718.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9718.114,9727.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9729.14,9729.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9729.89,9731.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9733.14,9733.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9733.87,9735.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9737.14,9737.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9737.90,9739.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9741.14,9741.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9741.91,9743.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9745.14,9745.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9745.88,9747.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9749.14,9749.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9749.89,9751.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9753.14,9753.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9753.89,9755.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9757.14,9757.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9757.91,9759.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9765.12,9765.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9765.70,9767.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9773.10,9773.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9773.69,9777.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9779.10,9779.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9779.64,9783.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9785.10,9785.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9785.53,9789.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9791.10,9791.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9791.72,9795.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9797.10,9797.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9797.58,9801.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9803.10,9803.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9803.65,9808.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9808.34,9811.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9811.83,9813.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9815.12,9815.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9815.86,9817.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9819.12,9821.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9821.121,9830.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9832.12,9832.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9832.108,9836.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9836.25,9840.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9844.12,9844.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9844.112,9853.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9855.12,9855.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9855.87,9857.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9859.12,9859.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9859.85,9861.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9863.12,9863.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9863.88,9865.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9867.12,9867.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9867.89,9869.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9871.12,9871.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9871.86,9873.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9875.12,9875.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9875.87,9877.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9879.12,9879.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9879.87,9881.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9883.12,9883.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9883.89,9885.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9895.8,9895.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9895.99,9903.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9903.32,9908.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9908.81,9912.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9912.23,9916.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9920.10,9920.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9920.82,9928.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9928.34,9931.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9931.73,9936.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9936.36,9939.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9939.110,9944.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9944.38,9947.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9947.109,9949.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9951.16,9951.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9951.98,9953.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9955.16,9955.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9955.104,9957.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9963.14,9963.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9963.100,9967.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9969.14,9971.130 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9971.130,9979.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9979.38,9982.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9982.75,9986.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9988.16,9988.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9988.64,9992.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9994.16,9994.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9994.70,9998.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10004.14,10004.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10004.126,10012.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10012.38,10015.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10015.64,10019.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10021.16,10021.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10021.59,10025.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10031.14,10031.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10031.126,10039.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10039.38,10042.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10042.59,10046.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10048.16,10048.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10048.64,10052.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10054.16,10054.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10054.64,10058.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10060.16,10060.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10060.71,10064.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10066.16,10066.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10066.63,10070.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10076.14,10076.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10076.128,10084.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10084.38,10087.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10087.60,10091.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10101.12,10101.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10101.80,10106.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10106.36,10109.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10109.116,10114.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10114.38,10117.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10117.109,10119.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10121.16,10121.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10121.98,10123.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10125.16,10125.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10125.104,10127.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10133.14,10133.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10133.106,10137.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10139.14,10141.136 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10141.136,10149.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10149.38,10152.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10152.75,10156.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10158.16,10158.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10158.64,10162.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10164.16,10164.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10164.70,10168.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10174.14,10174.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10174.132,10182.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10182.38,10185.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10185.64,10189.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10191.16,10191.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10191.59,10195.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10201.14,10201.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10201.132,10209.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10209.38,10212.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10212.59,10216.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10218.16,10218.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10218.64,10222.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10224.16,10224.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10224.64,10228.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10230.16,10230.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10230.71,10234.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10236.16,10236.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10236.63,10240.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10246.14,10246.134 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10246.134,10254.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10254.38,10257.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10257.60,10261.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10271.12,10271.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10271.72,10275.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10277.12,10277.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10277.65,10281.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10287.10,10287.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10287.68,10291.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10293.10,10293.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10293.68,10298.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10298.34,10301.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10301.105,10306.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10306.36,10309.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10309.107,10311.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10313.14,10313.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10313.96,10315.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10317.14,10317.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10317.102,10319.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10325.12,10325.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10325.95,10329.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10331.12,10333.125 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10333.125,10341.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10341.36,10344.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10344.73,10348.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10350.14,10350.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10350.62,10354.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10356.14,10356.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10356.68,10360.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10366.12,10366.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10366.121,10374.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10374.36,10377.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10377.62,10381.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10383.14,10383.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10383.57,10387.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10393.12,10393.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10393.121,10401.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10401.36,10404.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10404.57,10408.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10410.14,10410.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10410.62,10414.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10416.14,10416.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10416.62,10420.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10422.14,10422.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10422.69,10426.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10428.14,10428.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10428.61,10432.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10438.12,10438.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10438.123,10446.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10446.36,10449.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10449.58,10453.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10463.10,10465.88 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10465.88,10474.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10476.10,10476.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10476.82,10485.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10487.10,10487.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10487.61,10491.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10493.10,10493.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10493.56,10496.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10496.56,10498.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10499.11,10499.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10502.10,10502.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10502.71,10506.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10508.10,10508.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10508.67,10512.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10514.10,10516.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10516.100,10525.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10527.10,10527.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10527.94,10536.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10538.10,10538.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10538.58,10543.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10543.34,10546.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10546.97,10551.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10551.36,10554.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10554.107,10556.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10558.14,10558.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10558.96,10560.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10562.14,10562.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10562.102,10564.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10570.12,10570.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10570.87,10574.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10576.12,10578.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10578.117,10586.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10586.36,10589.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10589.73,10593.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10595.14,10595.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10595.62,10599.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10601.14,10601.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10601.68,10605.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10611.12,10611.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10611.113,10619.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10619.36,10622.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10622.62,10626.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10628.14,10628.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10628.57,10632.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10638.12,10638.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10638.113,10646.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10646.36,10649.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10649.57,10653.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10655.14,10655.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10655.62,10659.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10661.14,10661.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10661.62,10665.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10667.14,10667.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10667.69,10671.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10673.14,10673.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10673.61,10677.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10683.12,10683.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10683.115,10691.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10691.36,10694.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10694.58,10698.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10708.10,10708.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10708.56,10712.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10714.10,10714.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10714.57,10719.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10719.34,10723.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10723.72,10725.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10725.58,10727.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10728.13,10728.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10731.12,10731.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10731.81,10736.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10736.36,10739.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10739.85,10741.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10743.14,10743.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10743.88,10745.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10747.14,10749.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10749.123,10758.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10760.14,10760.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10760.110,10764.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10764.27,10768.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10772.14,10772.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10772.114,10781.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10783.14,10783.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10783.89,10785.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10787.14,10787.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10787.87,10789.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10791.14,10791.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10791.90,10793.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10795.14,10795.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10795.91,10797.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10799.14,10799.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10799.88,10801.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10803.14,10803.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10803.89,10805.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10807.14,10807.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10807.89,10809.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10811.14,10811.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10811.91,10813.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10819.12,10819.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10819.70,10821.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10827.10,10827.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10827.69,10831.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10833.10,10833.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10833.64,10837.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10839.10,10839.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10839.53,10843.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10845.10,10845.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10845.72,10849.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10851.10,10851.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10851.58,10855.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10857.10,10857.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10857.65,10862.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10862.34,10865.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10865.83,10867.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10869.12,10869.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10869.86,10871.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10873.12,10875.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10875.121,10884.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10886.12,10886.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10886.108,10890.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10890.25,10894.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10898.12,10898.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10898.112,10907.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10909.12,10909.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10909.87,10911.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10913.12,10913.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10913.85,10915.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10917.12,10917.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10917.88,10919.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10921.12,10921.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10921.89,10923.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10925.12,10925.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10925.86,10927.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10929.12,10929.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10929.87,10931.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10933.12,10933.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10933.87,10935.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10937.12,10937.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10937.89,10939.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10953.6,10953.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10953.118,10961.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10961.30,10964.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10964.54,10969.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10969.32,10972.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10972.74,10977.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10977.34,10980.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10980.83,10982.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10984.12,10984.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10984.84,10986.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10988.12,10988.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10988.87,10990.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10990.49,10992.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10993.13,10993.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10996.12,10996.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10996.96,10998.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11000.12,11000.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11000.81,11005.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11005.36,11009.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11009.81,11014.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11014.38,11017.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11017.101,11022.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11022.40,11025.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11025.111,11027.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11029.18,11029.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11029.100,11031.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11033.18,11033.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11033.106,11035.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11041.16,11041.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11041.91,11045.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11047.16,11049.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11049.121,11057.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11057.40,11060.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11060.77,11064.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11066.18,11066.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11066.66,11070.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11072.18,11072.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11072.72,11076.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11082.16,11082.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11082.117,11090.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11090.40,11093.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11093.66,11097.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11099.18,11099.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11099.61,11103.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11109.16,11109.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11109.117,11117.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11117.40,11120.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11120.61,11124.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11126.18,11126.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11126.66,11130.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11132.18,11132.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11132.66,11136.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11138.18,11138.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11138.73,11142.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11144.18,11144.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11144.65,11148.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11154.16,11154.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11154.119,11162.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11162.40,11165.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11165.62,11169.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11179.14,11179.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11179.78,11181.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11181.60,11183.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11184.15,11184.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11187.14,11189.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11189.111,11198.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11200.14,11200.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11200.105,11209.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11215.12,11215.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11215.88,11217.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11219.12,11219.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11219.77,11221.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11227.10,11227.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11227.74,11232.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11232.34,11235.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11235.94,11237.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11239.12,11239.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11239.81,11241.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11243.12,11243.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11243.81,11248.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11248.36,11252.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11252.81,11257.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11257.38,11260.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11260.101,11265.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11265.40,11268.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11268.111,11270.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11272.18,11272.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11272.100,11274.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11276.18,11276.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11276.106,11278.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11284.16,11284.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11284.91,11288.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11290.16,11292.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11292.121,11300.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11300.40,11303.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11303.77,11307.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11309.18,11309.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11309.66,11313.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11315.18,11315.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11315.72,11319.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11325.16,11325.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11325.117,11333.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11333.40,11336.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11336.66,11340.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11342.18,11342.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11342.61,11346.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11352.16,11352.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11352.117,11360.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11360.40,11363.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11363.61,11367.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11369.18,11369.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11369.66,11373.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11375.18,11375.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11375.66,11379.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11381.18,11381.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11381.73,11385.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11387.18,11387.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11387.65,11391.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11397.16,11397.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11397.119,11405.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11405.40,11408.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11408.62,11412.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11422.14,11422.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11422.78,11424.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11424.60,11426.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11427.15,11427.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11430.14,11432.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11432.111,11441.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11443.14,11443.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11443.105,11452.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11454.14,11456.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11456.118,11465.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11467.14,11467.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11467.112,11476.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11490.8,11490.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11490.58,11494.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11496.8,11496.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11496.71,11500.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11502.8,11502.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11502.70,11506.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11512.6,11512.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11512.81,11514.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11524.2,11526.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11526.87,11530.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11530.15,11534.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11538.2,11538.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11538.88,11546.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11546.26,11549.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11549.54,11554.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11554.27,11559.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11559.60,11561.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11563.6,11563.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11563.65,11565.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11567.6,11567.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11567.62,11569.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11579.2,11581.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11581.93,11585.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11585.15,11589.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11593.2,11593.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11593.90,11601.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11601.26,11604.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11604.58,11609.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11609.28,11613.71 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11613.71,11616.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11616.43,11618.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11619.7,11619.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11623.6,11623.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11623.72,11625.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11625.52,11627.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11628.7,11628.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11631.6,11631.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11631.73,11636.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11636.30,11639.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11639.71,11644.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11644.31,11651.64 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11651.64,11653.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11655.10,11655.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11655.69,11657.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11659.10,11659.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11659.66,11661.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11663.10,11663.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11663.63,11665.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11671.8,11671.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11671.77,11676.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11676.32,11681.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11681.92,11689.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11689.34,11692.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11692.56,11696.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11702.10,11702.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11702.92,11710.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11710.34,11713.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11713.56,11717.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11727.8,11727.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11727.66,11731.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11737.6,11737.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11737.73,11742.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11742.30,11748.83 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11748.83,11756.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11756.32,11759.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11759.54,11763.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11765.10,11765.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11765.56,11769.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11775.8,11775.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11775.83,11783.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11783.32,11786.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11786.54,11790.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11792.10,11792.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11792.56,11796.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11814.2,11816.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11816.72,11820.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11820.15,11824.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11828.2,11828.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11828.71,11832.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11832.15,11836.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11840.2,11840.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11840.69,11848.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11848.26,11851.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11851.48,11855.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11857.4,11857.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11857.53,11861.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11863.4,11863.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11863.50,11867.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11873.2,11875.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11875.62,11879.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11879.15,11883.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11887.2,11887.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11887.61,11891.3 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11893.2,11893.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11893.72,11898.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11900.2,11903.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11903.16,11905.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11907.2,11907.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11910.82,11916.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11916.16,11917.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11917.55,11921.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11922.3,11922.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11925.2,11926.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:24.60,944.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:947.95,957.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:957.58,961.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:961.48,964.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:965.3,965.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:968.2,968.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:968.58,971.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:973.2,973.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:973.54,976.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:978.2,978.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:978.53,982.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:982.48,985.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:986.3,986.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:989.2,989.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:989.51,992.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:994.2,994.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:994.56,997.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1001.2,1003.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1003.64,1007.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1007.15,1011.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1015.2,1015.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1015.71,1019.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1019.15,1023.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1027.2,1027.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1027.72,1035.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1035.26,1038.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1038.48,1042.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1044.4,1044.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1044.53,1048.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1050.4,1050.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1050.50,1054.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1060.2,1060.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1060.75,1068.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1068.26,1071.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1071.55,1074.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1074.41,1076.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1077.5,1077.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1087.2,1089.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1089.63,1093.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1093.15,1097.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1101.2,1101.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1101.64,1109.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1109.26,1114.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1114.97,1118.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1118.17,1122.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1126.4,1126.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1126.96,1130.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1130.17,1134.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1138.4,1138.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1138.103,1142.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1142.17,1146.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1150.4,1150.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1150.53,1155.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1155.28,1159.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1159.72,1161.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1163.6,1163.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1163.69,1165.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1165.43,1167.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1168.7,1168.32 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1175.4,1175.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1175.53,1180.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1180.28,1186.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1186.98,1195.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1197.6,1197.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1197.98,1206.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1208.6,1208.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1208.99,1217.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1219.6,1221.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1221.93,1225.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1225.19,1229.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1233.6,1233.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1233.101,1242.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1244.6,1244.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1244.102,1253.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1255.6,1255.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1255.101,1264.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1270.4,1270.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1270.52,1275.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1275.28,1281.97 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1281.97,1290.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1292.6,1292.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1292.97,1301.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1303.6,1303.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1303.98,1312.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1322.2,1322.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1322.63,1330.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1330.26,1335.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1335.97,1339.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1339.17,1343.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1347.4,1347.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1347.96,1351.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1351.17,1355.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1359.4,1359.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1359.103,1363.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1363.17,1367.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1371.4,1371.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1371.53,1376.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1376.28,1380.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1380.72,1382.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1384.6,1384.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1384.69,1386.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1386.43,1388.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1389.7,1389.32 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1396.4,1396.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1396.53,1401.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1401.28,1407.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1407.98,1416.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1418.6,1418.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1418.98,1427.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1429.6,1429.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1429.99,1438.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1440.6,1442.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1442.93,1446.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1446.19,1450.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1454.6,1454.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1454.101,1463.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1465.6,1465.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1465.102,1474.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1476.6,1476.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1476.101,1485.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1491.4,1491.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1491.52,1496.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1496.28,1502.97 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1502.97,1511.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1513.6,1513.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1513.97,1522.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1524.6,1524.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1524.98,1533.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1543.2,1543.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1543.63,1551.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1551.26,1554.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1554.49,1559.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1559.28,1563.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1563.64,1567.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1569.6,1571.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1571.105,1575.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1575.19,1579.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1583.6,1583.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1583.101,1591.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1591.30,1594.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1594.58,1597.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1597.45,1599.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1600.9,1600.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1608.6,1608.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1608.100,1616.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1616.30,1619.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1619.52,1623.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1625.8,1625.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1625.57,1629.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1631.8,1631.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1631.54,1635.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1641.6,1641.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1641.106,1649.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1649.30,1652.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1652.52,1656.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1658.8,1658.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1658.57,1662.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1664.8,1664.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1664.54,1668.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1674.6,1674.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1674.107,1682.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1682.30,1685.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1685.59,1688.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1688.45,1690.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1691.9,1691.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1699.6,1699.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1699.104,1707.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1707.30,1710.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1710.61,1713.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1713.45,1715.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1716.9,1716.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1720.8,1720.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1720.56,1723.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1723.45,1725.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1726.9,1726.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1734.6,1734.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1734.98,1742.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1742.30,1745.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1745.57,1750.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1750.32,1756.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1756.102,1765.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1767.10,1767.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1767.102,1776.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1778.10,1778.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1778.103,1787.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1789.10,1791.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1791.97,1795.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1795.23,1799.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1803.10,1803.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1803.105,1812.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1814.10,1814.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1814.106,1823.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1825.10,1825.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1825.105,1834.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1844.6,1844.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1844.97,1852.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1852.30,1855.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1855.56,1860.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1860.32,1866.101 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1866.101,1875.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1877.10,1877.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1877.101,1886.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1888.10,1888.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1888.102,1897.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1907.6,1907.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1907.106,1915.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1915.30,1918.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1918.62,1921.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1921.45,1923.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1924.9,1924.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1932.6,1934.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1934.109,1938.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1938.19,1942.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1946.6,1946.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1946.101,1954.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1954.30,1957.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1957.62,1961.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1963.8,1963.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1963.53,1966.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1966.45,1968.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1969.9,1969.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1977.6,1977.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1977.66,1982.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1982.30,1985.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1985.74,1987.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1989.8,1989.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1989.70,1991.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1993.8,1993.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1993.67,1995.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2001.6,2001.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2001.74,2003.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2005.6,2005.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2005.67,2007.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2009.6,2011.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2011.95,2015.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2015.19,2019.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2023.6,2023.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2023.98,2027.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2027.19,2031.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2035.6,2035.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2035.93,2043.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2043.30,2046.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2046.52,2050.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2052.8,2052.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2052.57,2056.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2058.8,2058.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2058.54,2062.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2068.6,2068.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2068.97,2076.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2076.30,2079.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2079.52,2083.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2085.8,2085.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2085.57,2089.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2091.8,2091.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2091.54,2095.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2101.6,2101.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2101.98,2109.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2109.30,2112.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2112.59,2115.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2115.45,2117.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2118.9,2118.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2126.6,2126.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2126.93,2135.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2137.6,2137.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2137.95,2145.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2145.30,2148.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2148.61,2151.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2151.45,2153.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2154.9,2154.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2158.8,2158.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2158.56,2161.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2161.45,2163.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2164.9,2164.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2181.2,2181.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2181.61,2186.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2186.26,2191.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2191.101,2195.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2195.17,2199.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2203.4,2203.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2203.106,2211.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2211.28,2214.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2214.54,2219.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2219.29,2224.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2224.62,2226.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2228.8,2228.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2228.67,2230.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2232.8,2232.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2232.64,2234.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2244.4,2244.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2244.107,2248.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2248.17,2252.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2256.4,2258.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2258.101,2262.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2262.17,2266.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2270.4,2270.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2270.106,2278.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2278.28,2281.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2281.54,2286.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2286.29,2291.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2291.62,2293.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2295.8,2295.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2295.67,2297.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2299.8,2299.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2299.64,2301.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2315.2,2318.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2318.16,2320.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2321.2,2323.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2326.93,2332.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2332.16,2333.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2333.55,2337.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2338.3,2338.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2340.2,2340.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2343.114,2359.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2362.95,2371.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2371.58,2375.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2375.48,2378.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2379.3,2379.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2382.2,2382.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2382.58,2385.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2387.2,2387.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2387.54,2390.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2392.2,2392.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2392.53,2396.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2396.48,2399.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2400.3,2400.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2403.2,2403.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2403.51,2406.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2408.2,2408.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2408.56,2411.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2413.2,2415.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2415.64,2419.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2419.15,2423.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2427.2,2427.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2427.71,2431.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2431.15,2435.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2439.2,2439.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2439.72,2447.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2447.26,2450.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2450.48,2454.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2456.4,2456.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2456.53,2460.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2462.4,2462.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2462.50,2466.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2472.2,2472.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2472.75,2480.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2480.26,2483.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2483.55,2486.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2486.41,2488.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2489.5,2489.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2497.2,2499.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2499.63,2503.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2503.15,2507.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2511.2,2511.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2511.64,2519.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2519.26,2524.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2524.97,2528.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2528.17,2532.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2536.4,2536.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2536.96,2540.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2540.17,2544.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2548.4,2548.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2548.103,2552.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2552.17,2556.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2560.4,2560.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2560.53,2565.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2565.28,2569.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2569.72,2571.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2573.6,2573.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2573.69,2575.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2575.43,2577.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2578.7,2578.32 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2585.4,2585.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2585.53,2590.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2590.28,2596.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2596.98,2605.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2607.6,2607.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2607.98,2616.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2618.6,2618.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2618.99,2627.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2629.6,2631.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2631.93,2635.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2635.19,2639.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2643.6,2643.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2643.101,2652.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2654.6,2654.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2654.102,2663.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2665.6,2665.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2665.101,2674.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2680.4,2680.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2680.52,2685.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2685.28,2691.97 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2691.97,2700.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2702.6,2702.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2702.97,2711.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2713.6,2713.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2713.98,2722.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2732.2,2732.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2732.63,2740.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2740.26,2745.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2745.97,2749.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2749.17,2753.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2757.4,2757.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2757.96,2761.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2761.17,2765.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2769.4,2769.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2769.103,2773.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2773.17,2777.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2781.4,2781.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2781.53,2786.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2786.28,2790.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2790.72,2792.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2794.6,2794.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2794.69,2796.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2796.43,2798.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2799.7,2799.32 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2806.4,2806.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2806.53,2811.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2811.28,2817.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2817.98,2826.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2828.6,2828.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2828.98,2837.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2839.6,2839.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2839.99,2848.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2850.6,2852.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2852.93,2856.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2856.19,2860.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2864.6,2864.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2864.101,2873.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2875.6,2875.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2875.102,2884.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2886.6,2886.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2886.101,2895.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2901.4,2901.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2901.52,2906.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2906.28,2912.97 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2912.97,2921.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2923.6,2923.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2923.97,2932.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2934.6,2934.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2934.98,2943.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2953.2,2953.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2953.63,2961.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2961.26,2964.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2964.49,2969.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2969.28,2973.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2973.64,2977.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2979.6,2981.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2981.105,2985.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2985.19,2989.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2993.6,2993.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2993.101,3001.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3001.30,3004.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3004.58,3007.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3007.45,3009.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3010.9,3010.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3018.6,3018.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3018.100,3026.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3026.30,3029.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3029.52,3033.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3035.8,3035.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3035.57,3039.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3041.8,3041.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3041.54,3045.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3051.6,3051.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3051.106,3059.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3059.30,3062.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3062.52,3066.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3068.8,3068.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3068.57,3072.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3074.8,3074.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3074.54,3078.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3084.6,3084.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3084.107,3092.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3092.30,3095.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3095.59,3098.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3098.45,3100.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3101.9,3101.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3109.6,3109.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3109.104,3117.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3117.30,3120.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3120.61,3123.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3123.45,3125.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3126.9,3126.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3130.8,3130.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3130.56,3133.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3133.45,3135.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3136.9,3136.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3144.6,3144.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3144.98,3152.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3152.30,3155.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3155.57,3160.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3160.32,3166.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3166.102,3175.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3177.10,3177.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3177.102,3186.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3188.10,3188.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3188.103,3197.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3199.10,3201.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3201.97,3205.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3205.23,3209.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3213.10,3213.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3213.105,3222.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3224.10,3224.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3224.106,3233.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3235.10,3235.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3235.105,3244.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3254.6,3254.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3254.97,3262.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3262.30,3265.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3265.56,3270.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3270.32,3276.101 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3276.101,3285.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3287.10,3287.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3287.101,3296.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3298.10,3298.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3298.102,3307.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3317.6,3317.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3317.106,3325.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3325.30,3328.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3328.62,3331.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3331.45,3333.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3334.9,3334.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3342.6,3344.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3344.109,3348.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3348.19,3352.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3356.6,3356.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3356.101,3364.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3364.30,3367.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3367.62,3371.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3373.8,3373.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3373.53,3376.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3376.45,3378.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3379.9,3379.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3387.6,3387.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3387.66,3392.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3392.30,3395.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3395.74,3397.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3399.8,3399.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3399.70,3401.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3403.8,3403.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3403.67,3405.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3411.6,3411.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3411.74,3413.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3415.6,3415.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3415.67,3417.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3419.6,3421.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3421.95,3425.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3425.19,3429.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3433.6,3433.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3433.98,3437.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3437.19,3441.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3445.6,3445.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3445.93,3453.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3453.30,3456.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3456.52,3460.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3462.8,3462.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3462.57,3466.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3468.8,3468.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3468.54,3472.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3478.6,3478.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3478.97,3486.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3486.30,3489.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3489.52,3493.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3495.8,3495.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3495.57,3499.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3501.8,3501.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3501.54,3505.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3511.6,3511.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3511.98,3519.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3519.30,3522.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3522.59,3525.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3525.45,3527.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3528.9,3528.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3536.6,3536.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3536.93,3545.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3547.6,3547.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3547.95,3555.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3555.30,3558.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3558.61,3561.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3561.45,3563.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3564.9,3564.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3568.8,3568.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3568.56,3571.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3571.45,3573.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3574.9,3574.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3590.2,3590.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3590.61,3595.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3595.26,3600.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3600.101,3604.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3604.17,3608.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3612.4,3612.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3612.106,3620.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3620.28,3623.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3623.54,3628.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3628.29,3633.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3633.62,3635.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3637.8,3637.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3637.67,3639.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3641.8,3641.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3641.64,3643.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3653.4,3653.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3653.107,3657.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3657.17,3661.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3665.4,3667.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3667.101,3671.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3671.17,3675.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3679.4,3679.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3679.106,3687.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3687.28,3690.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3690.54,3695.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3695.29,3700.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3700.62,3702.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3704.8,3704.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3704.67,3706.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3708.8,3708.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3708.64,3710.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3724.2,3727.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3727.16,3729.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3731.2,3731.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3734.95,3740.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3740.16,3741.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3741.55,3745.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3746.3,3746.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3749.2,3750.120 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:26.52,2774.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2777.87,2787.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2787.58,2791.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2791.48,2794.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2795.3,2795.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2798.2,2798.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2798.58,2801.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2803.2,2803.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2803.54,2806.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2808.2,2808.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2808.53,2812.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2812.48,2815.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2816.3,2816.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2819.2,2819.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2819.51,2822.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2824.2,2824.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2824.56,2827.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2830.2,2830.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2830.54,2835.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2839.2,2841.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2841.83,2845.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2845.15,2849.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2853.2,2853.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2853.81,2861.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2861.26,2864.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2864.58,2869.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2869.28,2875.113 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2875.113,2879.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2879.19,2883.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2887.6,2887.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2887.113,2891.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2891.19,2895.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2899.6,2899.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2899.128,2903.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2903.19,2907.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2911.6,2911.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2911.78,2915.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2925.2,2925.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2925.89,2929.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2929.15,2933.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2938.2,2938.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2938.58,2943.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2943.26,2946.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2946.70,2948.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2950.4,2950.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2950.71,2952.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2960.2,2962.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2962.71,2970.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2970.26,2973.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2973.48,2977.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2979.4,2979.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2979.53,2983.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2985.4,2985.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2985.50,2989.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2996.2,2996.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2996.56,3001.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3004.2,3004.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3004.57,3007.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3007.48,3009.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3010.3,3010.28 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3014.2,3014.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3014.57,3019.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3022.2,3022.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3022.60,3027.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3031.2,3033.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3033.74,3041.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3041.26,3044.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3044.48,3048.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3050.4,3050.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3050.53,3054.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3056.4,3056.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3056.50,3060.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3066.2,3066.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3066.85,3070.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3070.15,3074.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3079.2,3079.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3079.59,3084.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3087.2,3087.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3087.73,3092.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3092.26,3097.152 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3097.152,3101.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3101.17,3105.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3109.4,3109.148 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3109.148,3113.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3113.17,3117.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3126.2,3126.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3126.49,3131.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3131.26,3136.113 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3136.113,3140.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3140.17,3144.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3148.4,3148.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3148.119,3157.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3165.2,3167.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3167.93,3171.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3171.15,3175.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3179.2,3179.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3179.89,3187.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3187.26,3190.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3190.54,3195.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3195.28,3198.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3198.66,3200.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3202.6,3202.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3202.71,3204.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3206.6,3206.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3206.68,3208.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3214.4,3216.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3216.78,3220.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3220.17,3224.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3228.4,3228.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3228.79,3232.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3232.17,3236.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3246.2,3248.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3248.69,3256.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3256.26,3261.104 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3261.104,3269.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3269.28,3272.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3272.50,3276.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3278.6,3278.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3278.55,3282.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3284.6,3284.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3284.52,3288.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3294.4,3294.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3294.105,3302.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3302.28,3305.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3305.50,3309.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3311.6,3311.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3311.55,3315.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3317.6,3317.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3317.52,3321.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3327.4,3327.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3327.97,3331.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3331.17,3335.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3339.4,3341.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3341.105,3349.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3349.28,3352.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3352.68,3357.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3357.29,3362.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3362.64,3364.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3366.8,3366.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3366.69,3368.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3370.8,3370.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3370.66,3372.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3382.4,3382.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3382.99,3386.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3386.17,3390.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3394.4,3394.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3394.92,3398.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3398.17,3402.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3406.4,3406.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3406.60,3410.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3412.4,3412.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3412.58,3415.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3415.41,3417.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3418.5,3418.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3422.4,3424.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3424.96,3432.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3432.28,3435.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3435.72,3440.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3440.30,3446.125 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3446.125,3454.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3454.32,3457.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3457.59,3462.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3462.34,3465.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3465.71,3467.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3469.12,3469.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3469.76,3471.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3473.12,3473.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3473.73,3475.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3485.8,3485.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3485.125,3493.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3493.32,3496.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3496.59,3501.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3501.34,3504.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3504.71,3506.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3508.12,3508.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3508.76,3510.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3512.12,3512.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3512.73,3514.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3524.8,3526.132 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3526.132,3530.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3530.21,3534.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3538.8,3538.131 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3538.131,3546.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3546.32,3549.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3549.68,3553.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3555.10,3555.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3555.70,3559.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3561.10,3563.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3563.100,3567.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3567.23,3571.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3575.10,3575.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3575.98,3583.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3583.34,3588.112 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3588.112,3592.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3592.25,3596.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3600.12,3600.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3600.96,3608.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3608.36,3611.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3611.72,3616.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3616.38,3620.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3620.92,3625.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3625.40,3630.113 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3630.113,3639.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3641.18,3641.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3641.113,3650.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3652.18,3652.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3652.114,3661.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3667.16,3669.133 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3669.133,3673.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3673.29,3677.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3681.16,3681.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3681.132,3685.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3685.29,3689.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3701.12,3703.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3703.101,3711.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3711.36,3714.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3714.69,3718.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3720.14,3720.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3720.65,3724.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3726.14,3728.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3728.108,3736.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3736.38,3739.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3739.71,3742.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3742.53,3744.18 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3745.17,3745.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3753.14,3753.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3753.107,3757.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3759.14,3759.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3759.105,3763.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3765.14,3765.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3765.65,3770.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3770.38,3773.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3773.103,3778.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3778.40,3781.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3781.111,3783.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3785.18,3785.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3785.100,3787.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3789.18,3789.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3789.106,3791.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3797.16,3797.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3797.93,3801.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3803.16,3805.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3805.123,3813.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3813.40,3816.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3816.77,3820.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3822.18,3822.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3822.66,3826.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3828.18,3828.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3828.72,3832.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3838.16,3838.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3838.119,3846.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3846.40,3849.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3849.66,3853.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3855.18,3855.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3855.61,3859.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3865.16,3865.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3865.119,3873.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3873.40,3876.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3876.61,3880.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3882.18,3882.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3882.66,3886.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3888.18,3888.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3888.66,3892.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3894.18,3894.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3894.73,3898.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3900.18,3900.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3900.65,3904.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3910.16,3910.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3910.121,3918.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3918.40,3921.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3921.62,3925.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3939.12,3939.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3939.103,3943.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3943.25,3947.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3951.12,3953.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3953.95,3962.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3964.12,3964.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3964.100,3968.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3968.25,3972.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3980.10,3980.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3980.68,3983.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3983.47,3985.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3986.11,3986.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3990.10,3990.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3990.71,3993.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3993.47,3995.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3996.11,3996.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4012.4,4012.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4012.94,4016.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4016.17,4020.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4024.4,4024.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4024.58,4029.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4029.28,4034.102 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4034.102,4042.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4042.30,4045.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4045.52,4049.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4055.6,4055.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4055.97,4063.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4063.30,4066.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4066.52,4070.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4076.6,4076.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4076.110,4084.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4084.30,4087.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4087.60,4091.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4101.4,4103.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4103.101,4111.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4111.28,4114.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4114.63,4119.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4119.30,4125.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4125.119,4133.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4133.32,4136.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4136.55,4139.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4139.47,4141.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4142.11,4142.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4146.10,4146.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4146.56,4149.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4149.56,4151.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4152.11,4152.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4155.10,4155.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4155.57,4160.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4160.34,4163.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4163.75,4168.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4168.35,4175.68 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4175.68,4177.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4179.14,4179.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4179.73,4181.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4183.14,4183.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4183.70,4185.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4187.14,4187.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4187.67,4189.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4195.12,4195.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4195.81,4200.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4200.36,4205.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4205.96,4213.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4213.38,4216.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4216.60,4220.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4226.14,4226.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4226.96,4234.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4234.38,4237.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4237.60,4241.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4251.12,4251.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4251.70,4255.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4261.10,4261.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4261.57,4266.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4266.34,4272.87 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4272.87,4280.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4280.36,4283.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4283.58,4287.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4289.14,4289.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4289.60,4293.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4299.12,4299.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4299.87,4307.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4307.36,4310.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4310.58,4314.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4316.14,4316.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4316.60,4320.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4334.8,4334.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4334.119,4343.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4353.4,4353.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4353.104,4357.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4357.17,4361.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4365.4,4365.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4365.57,4370.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4370.28,4375.100 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4375.100,4383.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4383.30,4386.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4386.59,4390.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4396.6,4396.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4396.95,4404.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4404.30,4407.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4407.60,4411.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4413.8,4413.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4413.59,4417.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4427.4,4429.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4429.110,4437.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4437.28,4440.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4440.72,4445.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4445.29,4450.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4450.64,4452.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4454.8,4454.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4454.69,4456.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4458.8,4458.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4458.66,4460.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4470.4,4470.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4470.100,4478.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4478.28,4481.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4481.62,4486.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4486.29,4491.63 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4491.63,4493.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4495.8,4495.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4495.68,4497.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4499.8,4499.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4499.65,4501.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4511.4,4511.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4511.94,4515.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4515.17,4519.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4523.4,4523.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4523.55,4527.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4529.4,4529.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4529.59,4534.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4534.28,4539.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4539.103,4547.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4547.30,4550.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4550.52,4554.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4560.6,4560.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4560.98,4568.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4568.30,4571.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4571.52,4575.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4581.6,4581.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4581.111,4589.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4589.30,4592.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4592.60,4596.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4606.4,4608.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4608.106,4612.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4612.17,4616.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4620.4,4620.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4620.103,4628.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4628.28,4631.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4631.63,4636.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4636.30,4642.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4642.119,4650.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4650.32,4653.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4653.55,4656.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4656.47,4658.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4659.11,4659.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4663.10,4663.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4663.56,4666.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4666.56,4668.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4669.11,4669.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4672.10,4672.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4672.57,4677.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4677.34,4680.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4680.75,4685.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4685.35,4692.68 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4692.68,4694.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4696.14,4696.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4696.73,4698.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4700.14,4700.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4700.70,4702.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4704.14,4704.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4704.67,4706.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4712.12,4712.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4712.81,4717.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4717.36,4722.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4722.96,4730.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4730.38,4733.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4733.60,4737.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4743.14,4743.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4743.96,4751.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4751.38,4754.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4754.60,4758.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4768.12,4768.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4768.70,4772.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4778.10,4778.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4778.57,4783.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4783.34,4789.87 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4789.87,4797.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4797.36,4800.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4800.58,4804.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4806.14,4806.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4806.60,4810.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4816.12,4816.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4816.87,4824.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4824.36,4827.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4827.58,4831.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4833.14,4833.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4833.60,4837.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4851.8,4851.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4851.119,4860.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4870.4,4870.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4870.58,4875.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4875.28,4880.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4880.101,4888.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4888.30,4891.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4891.59,4895.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4901.6,4901.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4901.96,4909.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4909.30,4912.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4912.60,4916.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4918.8,4918.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4918.59,4922.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4932.4,4932.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4932.72,4937.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4937.28,4942.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4942.128,4950.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4950.30,4955.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4955.81,4959.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4959.21,4963.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4967.8,4967.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4967.84,4971.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4971.21,4975.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4983.6,4983.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4983.128,4987.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4987.19,4991.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4999.4,5001.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5001.100,5005.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5005.17,5009.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5013.4,5013.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5013.97,5017.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5017.17,5021.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5029.2,5029.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5029.62,5037.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5037.26,5040.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5040.60,5044.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5046.4,5046.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5046.58,5049.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5049.41,5051.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5052.5,5052.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5056.4,5056.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5056.57,5061.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5061.28,5066.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5066.101,5074.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5074.30,5077.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5077.52,5081.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5087.6,5087.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5087.96,5095.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5095.30,5098.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5098.52,5102.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5108.6,5108.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5108.109,5116.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5116.30,5119.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5119.60,5123.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5133.4,5133.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5133.56,5138.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5138.28,5143.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5143.99,5151.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5151.30,5154.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5154.59,5158.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5164.6,5164.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5164.94,5172.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5172.30,5175.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5175.60,5179.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5181.8,5181.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5181.59,5185.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5195.4,5195.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5195.55,5199.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5201.4,5201.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5201.72,5206.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5206.28,5211.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5211.128,5219.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5219.30,5224.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5224.81,5228.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5228.21,5232.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5236.8,5236.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5236.84,5240.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5240.21,5244.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5252.6,5252.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5252.128,5256.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5256.19,5260.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5272.2,5272.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5272.69,5280.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5280.26,5285.94 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5285.94,5293.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5293.28,5296.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5296.50,5300.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5302.6,5302.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5302.55,5306.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5308.6,5308.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5308.52,5312.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5318.4,5318.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5318.97,5322.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5322.17,5326.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5330.4,5332.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5332.105,5340.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5340.28,5343.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5343.68,5348.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5348.29,5353.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5353.64,5355.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5357.8,5357.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5357.69,5359.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5361.8,5361.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5361.66,5363.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5373.4,5373.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5373.99,5377.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5377.17,5381.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5385.4,5385.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5385.92,5389.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5389.17,5393.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5397.4,5397.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5397.60,5401.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5403.4,5403.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5403.58,5406.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5406.41,5408.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5409.5,5409.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5413.4,5415.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5415.96,5423.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5423.28,5426.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5426.72,5431.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5431.30,5437.125 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5437.125,5445.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5445.32,5448.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5448.59,5453.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5453.34,5456.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5456.71,5458.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5460.12,5460.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5460.76,5462.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5464.12,5464.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5464.73,5466.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5476.8,5476.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5476.125,5484.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5484.32,5487.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5487.59,5492.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5492.34,5495.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5495.71,5497.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5499.12,5499.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5499.76,5501.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5503.12,5503.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5503.73,5505.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5515.8,5517.132 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5517.132,5521.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5521.21,5525.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5529.8,5529.131 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5529.131,5537.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5537.32,5540.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5540.68,5544.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5546.10,5546.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5546.70,5550.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5552.10,5554.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5554.100,5558.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5558.23,5562.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5566.10,5566.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5566.98,5574.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5574.34,5579.112 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5579.112,5583.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5583.25,5587.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5591.12,5591.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5591.96,5599.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5599.36,5602.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5602.72,5607.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5607.38,5611.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5611.92,5616.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5616.40,5621.113 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5621.113,5630.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5632.18,5632.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5632.113,5641.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5643.18,5643.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5643.114,5652.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5658.16,5660.133 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5660.133,5664.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5664.29,5668.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5672.16,5672.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5672.132,5676.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5676.29,5680.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5692.12,5694.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5694.101,5702.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5702.36,5705.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5705.69,5709.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5711.14,5711.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5711.65,5715.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5717.14,5719.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5719.108,5727.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5727.38,5730.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5730.71,5733.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5733.53,5735.18 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5736.17,5736.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5744.14,5744.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5744.107,5748.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5750.14,5750.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5750.105,5754.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5756.14,5756.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5756.65,5761.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5761.38,5764.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5764.103,5769.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5769.40,5772.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5772.111,5774.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5776.18,5776.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5776.100,5778.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5780.18,5780.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5780.106,5782.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5788.16,5788.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5788.93,5792.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5794.16,5796.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5796.123,5804.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5804.40,5807.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5807.77,5811.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5813.18,5813.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5813.66,5817.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5819.18,5819.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5819.72,5823.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5829.16,5829.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5829.119,5837.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5837.40,5840.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5840.66,5844.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5846.18,5846.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5846.61,5850.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5856.16,5856.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5856.119,5864.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5864.40,5867.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5867.61,5871.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5873.18,5873.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5873.66,5877.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5879.18,5879.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5879.66,5883.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5885.18,5885.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5885.73,5889.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5891.18,5891.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5891.65,5895.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5901.16,5901.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5901.121,5909.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5909.40,5912.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5912.62,5916.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5930.12,5930.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5930.103,5934.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5934.25,5938.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5942.12,5944.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5944.95,5953.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5955.12,5955.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5955.100,5959.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5959.25,5963.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5971.10,5971.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5971.68,5974.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5974.47,5976.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5977.11,5977.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5981.10,5981.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5981.71,5984.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5984.47,5986.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5987.11,5987.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6003.4,6003.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6003.94,6007.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6007.17,6011.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6015.4,6017.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6017.85,6025.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6025.28,6028.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6028.50,6032.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6034.6,6034.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6034.55,6038.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6040.6,6040.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6040.52,6044.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6050.4,6050.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6050.88,6054.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6054.17,6058.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6062.4,6064.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6064.110,6072.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6072.28,6075.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6075.72,6080.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6080.29,6085.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6085.64,6087.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6089.8,6089.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6089.69,6091.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6093.8,6093.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6093.66,6095.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6105.4,6105.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6105.100,6113.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6113.28,6116.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6116.62,6121.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6121.29,6126.63 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6126.63,6128.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6130.8,6130.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6130.68,6132.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6134.8,6134.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6134.65,6136.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6146.4,6146.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6146.94,6150.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6150.17,6154.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6158.4,6158.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6158.55,6162.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6164.4,6166.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6166.106,6170.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6170.17,6174.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6178.4,6178.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6178.103,6186.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6186.28,6189.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6189.63,6194.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6194.30,6200.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6200.119,6208.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6208.32,6211.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6211.55,6214.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6214.47,6216.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6217.11,6217.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6221.10,6221.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6221.56,6224.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6224.56,6226.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6227.11,6227.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6230.10,6230.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6230.57,6235.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6235.34,6238.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6238.75,6243.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6243.35,6250.68 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6250.68,6252.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6254.14,6254.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6254.73,6256.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6258.14,6258.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6258.70,6260.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6262.14,6262.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6262.67,6264.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6270.12,6270.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6270.81,6275.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6275.36,6280.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6280.96,6288.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6288.38,6291.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6291.60,6295.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6301.14,6301.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6301.96,6309.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6309.38,6312.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6312.60,6316.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6326.12,6326.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6326.70,6330.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6336.10,6336.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6336.57,6341.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6341.34,6347.87 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6347.87,6355.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6355.36,6358.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6358.58,6362.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6364.14,6364.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6364.60,6368.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6374.12,6374.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6374.87,6382.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6382.36,6385.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6385.58,6389.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6391.14,6391.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6391.60,6395.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6409.8,6409.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6409.119,6418.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6428.4,6428.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6428.62,6433.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6433.28,6438.105 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6438.105,6446.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6446.30,6449.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6449.52,6453.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6459.6,6459.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6459.100,6467.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6467.30,6470.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6470.52,6474.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6480.6,6480.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6480.113,6488.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6488.30,6491.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6491.60,6495.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6505.4,6505.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6505.61,6510.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6510.28,6515.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6515.103,6523.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6523.30,6526.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6526.59,6530.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6536.6,6536.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6536.98,6544.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6544.30,6547.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6547.60,6551.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6553.8,6553.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6553.59,6557.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6567.4,6569.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6569.100,6573.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6573.17,6577.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6581.4,6581.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6581.97,6585.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6585.17,6589.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6593.4,6595.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6595.91,6599.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6599.17,6603.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6607.4,6607.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6607.94,6615.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6615.28,6618.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6618.61,6623.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6623.30,6627.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6627.90,6629.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6631.8,6631.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6631.87,6633.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6648.2,6648.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6648.54,6653.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6656.2,6656.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6656.49,6661.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6661.26,6666.108 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6666.108,6670.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6670.17,6674.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6678.4,6678.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6678.115,6687.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6693.2,6696.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6696.16,6698.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6699.2,6701.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6704.85,6710.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6710.16,6711.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6711.55,6715.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6716.3,6716.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6718.2,6718.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6721.106,6737.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6740.87,6749.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6749.58,6753.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6753.48,6756.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6757.3,6757.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6760.2,6760.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6760.58,6763.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6765.2,6765.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6765.54,6768.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6770.2,6770.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6770.53,6774.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6774.48,6777.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6778.3,6778.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6781.2,6781.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6781.51,6784.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6786.2,6786.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6786.56,6789.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6791.2,6791.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6791.54,6796.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6798.2,6800.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6800.83,6804.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6804.15,6808.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6812.2,6812.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6812.81,6820.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6820.26,6823.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6823.58,6828.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6828.28,6834.113 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6834.113,6838.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6838.19,6842.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6846.6,6846.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6846.113,6850.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6850.19,6854.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6858.6,6858.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6858.128,6862.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6862.19,6866.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6870.6,6870.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6870.78,6874.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6884.2,6884.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6884.89,6888.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6888.15,6892.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6896.2,6896.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6896.58,6901.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6901.26,6904.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6904.70,6906.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6908.4,6908.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6908.71,6910.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6916.2,6918.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6918.71,6926.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6926.26,6929.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6929.48,6933.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6935.4,6935.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6935.53,6939.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6941.4,6941.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6941.50,6945.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6951.2,6953.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6953.74,6961.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6961.26,6964.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6964.48,6968.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6970.4,6970.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6970.53,6974.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6976.4,6976.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6976.50,6980.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6986.2,6986.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6986.85,6990.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6990.15,6994.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6998.2,6998.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6998.73,7003.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7003.26,7008.152 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7008.152,7012.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7012.17,7016.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7020.4,7020.148 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7020.148,7024.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7024.17,7028.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7036.2,7038.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7038.93,7042.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7042.15,7046.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7050.2,7050.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7050.89,7058.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7058.26,7061.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7061.54,7066.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7066.28,7069.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7069.66,7071.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7073.6,7073.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7073.71,7075.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7077.6,7077.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7077.68,7079.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7085.4,7087.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7087.78,7091.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7091.17,7095.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7099.4,7099.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7099.79,7103.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7103.17,7107.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7115.2,7117.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7117.69,7125.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7125.26,7130.104 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7130.104,7138.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7138.28,7141.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7141.50,7145.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7147.6,7147.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7147.55,7151.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7153.6,7153.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7153.52,7157.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7163.4,7163.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7163.105,7171.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7171.28,7174.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7174.50,7178.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7180.6,7180.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7180.55,7184.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7186.6,7186.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7186.52,7190.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7196.4,7196.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7196.97,7200.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7200.17,7204.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7208.4,7210.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7210.105,7218.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7218.28,7221.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7221.68,7226.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7226.29,7231.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7231.64,7233.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7235.8,7235.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7235.69,7237.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7239.8,7239.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7239.66,7241.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7251.4,7251.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7251.99,7255.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7255.17,7259.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7263.4,7263.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7263.92,7267.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7267.17,7271.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7275.4,7277.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7277.96,7285.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7285.28,7288.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7288.72,7293.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7293.30,7299.125 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7299.125,7307.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7307.32,7310.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7310.59,7315.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7315.34,7318.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7318.71,7320.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7322.12,7322.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7322.76,7324.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7326.12,7326.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7326.73,7328.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7338.8,7338.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7338.125,7346.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7346.32,7349.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7349.59,7354.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7354.34,7357.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7357.71,7359.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7361.12,7361.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7361.76,7363.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7365.12,7365.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7365.73,7367.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7377.8,7379.132 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7379.132,7383.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7383.21,7387.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7391.8,7391.131 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7391.131,7399.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7399.32,7402.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7402.68,7406.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7408.10,7408.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7408.70,7412.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7414.10,7416.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7416.100,7420.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7420.23,7424.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7428.10,7428.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7428.98,7436.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7436.34,7441.112 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7441.112,7445.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7445.25,7449.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7453.12,7453.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7453.96,7461.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7461.36,7464.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7464.72,7469.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7469.38,7473.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7473.92,7478.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7478.40,7483.113 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7483.113,7492.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7494.18,7494.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7494.113,7503.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7505.18,7505.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7505.114,7514.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7520.16,7522.133 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7522.133,7526.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7526.29,7530.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7534.16,7534.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7534.132,7538.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7538.29,7542.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7554.12,7556.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7556.101,7564.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7564.36,7567.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7567.69,7571.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7573.14,7573.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7573.65,7577.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7579.14,7581.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7581.108,7589.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7589.38,7592.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7592.71,7595.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7595.53,7597.18 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7598.17,7598.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7606.14,7606.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7606.107,7610.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7612.14,7612.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7612.105,7616.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7618.14,7618.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7618.65,7623.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7623.38,7626.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7626.103,7631.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7631.40,7634.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7634.111,7636.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7638.18,7638.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7638.100,7640.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7642.18,7642.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7642.106,7644.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7650.16,7650.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7650.93,7654.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7656.16,7658.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7658.123,7666.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7666.40,7669.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7669.77,7673.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7675.18,7675.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7675.66,7679.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7681.18,7681.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7681.72,7685.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7691.16,7691.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7691.119,7699.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7699.40,7702.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7702.66,7706.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7708.18,7708.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7708.61,7712.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7718.16,7718.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7718.119,7726.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7726.40,7729.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7729.61,7733.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7735.18,7735.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7735.66,7739.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7741.18,7741.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7741.66,7745.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7747.18,7747.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7747.73,7751.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7753.18,7753.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7753.65,7757.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7763.16,7763.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7763.121,7771.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7771.40,7774.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7774.62,7778.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7792.12,7792.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7792.103,7796.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7796.25,7800.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7804.12,7806.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7806.95,7815.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7817.12,7817.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7817.100,7821.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7821.25,7825.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7833.10,7833.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7833.68,7836.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7836.47,7838.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7839.11,7839.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7843.10,7843.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7843.71,7846.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7846.47,7848.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7849.11,7849.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7865.4,7865.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7865.94,7869.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7869.17,7873.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7877.4,7879.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7879.101,7887.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7887.28,7890.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7890.63,7895.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7895.30,7901.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7901.119,7909.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7909.32,7912.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7912.55,7915.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7915.47,7917.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7918.11,7918.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7922.10,7922.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7922.56,7925.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7925.56,7927.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7928.11,7928.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7931.10,7931.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7931.57,7936.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7936.34,7939.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7939.75,7944.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7944.35,7951.68 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7951.68,7953.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7955.14,7955.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7955.73,7957.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7959.14,7959.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7959.70,7961.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7963.14,7963.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7963.67,7965.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7971.12,7971.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7971.81,7976.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7976.36,7981.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7981.96,7989.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7989.38,7992.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7992.60,7996.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8002.14,8002.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8002.96,8010.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8010.38,8013.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8013.60,8017.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8027.12,8027.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8027.70,8031.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8037.10,8037.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8037.57,8042.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8042.34,8048.87 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8048.87,8056.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8056.36,8059.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8059.58,8063.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8065.14,8065.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8065.60,8069.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8075.12,8075.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8075.87,8083.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8083.36,8086.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8086.58,8090.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8092.14,8092.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8092.60,8096.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8110.8,8110.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8110.119,8119.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8129.4,8129.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8129.104,8133.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8133.17,8137.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8141.4,8143.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8143.110,8151.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8151.28,8154.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8154.72,8159.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8159.29,8164.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8164.64,8166.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8168.8,8168.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8168.69,8170.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8172.8,8172.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8172.66,8174.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8184.4,8184.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8184.100,8192.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8192.28,8195.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8195.62,8200.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8200.29,8205.63 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8205.63,8207.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8209.8,8209.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8209.68,8211.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8213.8,8213.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8213.65,8215.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8225.4,8225.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8225.94,8229.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8229.17,8233.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8237.4,8239.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8239.106,8243.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8243.17,8247.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8251.4,8251.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8251.103,8259.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8259.28,8262.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8262.63,8267.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8267.30,8273.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8273.119,8281.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8281.32,8284.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8284.55,8287.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8287.47,8289.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8290.11,8290.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8294.10,8294.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8294.56,8297.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8297.56,8299.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8300.11,8300.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8303.10,8303.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8303.57,8308.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8308.34,8311.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8311.75,8316.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8316.35,8323.68 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8323.68,8325.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8327.14,8327.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8327.73,8329.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8331.14,8331.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8331.70,8333.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8335.14,8335.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8335.67,8337.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8343.12,8343.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8343.81,8348.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8348.36,8353.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8353.96,8361.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8361.38,8364.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8364.60,8368.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8374.14,8374.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8374.96,8382.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8382.38,8385.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8385.60,8389.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8399.12,8399.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8399.70,8403.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8409.10,8409.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8409.57,8414.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8414.34,8420.87 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8420.87,8428.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8428.36,8431.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8431.58,8435.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8437.14,8437.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8437.60,8441.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8447.12,8447.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8447.87,8455.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8455.36,8458.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8458.58,8462.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8464.14,8464.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8464.60,8468.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8482.8,8482.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8482.119,8491.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8501.4,8501.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8501.72,8506.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8506.28,8511.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8511.128,8519.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8519.30,8524.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8524.81,8528.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8528.21,8532.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8536.8,8536.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8536.84,8540.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8540.21,8544.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8552.6,8552.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8552.128,8556.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8556.19,8560.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8568.4,8570.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8570.100,8574.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8574.17,8578.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8582.4,8582.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8582.97,8586.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8586.17,8590.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8598.2,8598.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8598.62,8606.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8606.26,8609.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8609.72,8614.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8614.28,8619.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8619.128,8627.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8627.30,8632.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8632.81,8636.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8636.21,8640.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8644.8,8644.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8644.84,8648.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8648.21,8652.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8660.6,8660.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8660.128,8664.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8664.19,8668.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8680.2,8680.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8680.69,8688.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8688.26,8693.94 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8693.94,8701.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8701.28,8704.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8704.50,8708.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8710.6,8710.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8710.55,8714.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8716.6,8716.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8716.52,8720.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8726.4,8726.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8726.97,8730.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8730.17,8734.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8738.4,8740.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8740.105,8748.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8748.28,8751.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8751.68,8756.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8756.29,8761.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8761.64,8763.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8765.8,8765.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8765.69,8767.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8769.8,8769.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8769.66,8771.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8781.4,8781.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8781.99,8785.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8785.17,8789.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8793.4,8793.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8793.92,8797.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8797.17,8801.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8805.4,8807.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8807.96,8815.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8815.28,8818.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8818.72,8823.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8823.30,8829.125 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8829.125,8837.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8837.32,8840.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8840.59,8845.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8845.34,8848.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8848.71,8850.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8852.12,8852.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8852.76,8854.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8856.12,8856.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8856.73,8858.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8868.8,8868.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8868.125,8876.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8876.32,8879.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8879.59,8884.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8884.34,8887.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8887.71,8889.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8891.12,8891.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8891.76,8893.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8895.12,8895.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8895.73,8897.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8907.8,8909.132 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8909.132,8913.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8913.21,8917.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8921.8,8921.131 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8921.131,8929.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8929.32,8932.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8932.68,8936.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8938.10,8938.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8938.70,8942.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8944.10,8946.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8946.100,8950.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8950.23,8954.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8958.10,8958.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8958.98,8966.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8966.34,8971.112 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8971.112,8975.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8975.25,8979.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8983.12,8983.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8983.96,8991.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8991.36,8994.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8994.72,8999.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8999.38,9003.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9003.92,9008.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9008.40,9013.113 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9013.113,9022.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9024.18,9024.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9024.113,9033.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9035.18,9035.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9035.114,9044.19 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9050.16,9052.133 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9052.133,9056.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9056.29,9060.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9064.16,9064.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9064.132,9068.29 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9068.29,9072.18 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9084.12,9086.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9086.101,9094.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9094.36,9097.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9097.69,9101.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9103.14,9103.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9103.65,9107.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9109.14,9111.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9111.108,9119.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9119.38,9122.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9122.71,9125.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9125.53,9127.18 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9128.17,9128.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9136.14,9136.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9136.107,9140.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9142.14,9142.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9142.105,9146.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9148.14,9148.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9148.65,9153.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9153.38,9156.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9156.103,9161.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9161.40,9164.111 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9164.111,9166.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9168.18,9168.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9168.100,9170.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9172.18,9172.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9172.106,9174.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9180.16,9180.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9180.93,9184.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9186.16,9188.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9188.123,9196.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9196.40,9199.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9199.77,9203.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9205.18,9205.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9205.66,9209.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9211.18,9211.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9211.72,9215.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9221.16,9221.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9221.119,9229.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9229.40,9232.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9232.66,9236.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9238.18,9238.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9238.61,9242.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9248.16,9248.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9248.119,9256.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9256.40,9259.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9259.61,9263.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9265.18,9265.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9265.66,9269.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9271.18,9271.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9271.66,9275.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9277.18,9277.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9277.73,9281.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9283.18,9283.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9283.65,9287.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9293.16,9293.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9293.121,9301.40 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9301.40,9304.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9304.62,9308.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9322.12,9322.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9322.103,9326.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9326.25,9330.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9334.12,9336.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9336.95,9345.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9347.12,9347.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9347.100,9351.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9351.25,9355.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9363.10,9363.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9363.68,9366.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9366.47,9368.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9369.11,9369.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9373.10,9373.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9373.71,9376.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9376.47,9378.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9379.11,9379.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9395.4,9395.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9395.94,9399.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9399.17,9403.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9407.4,9409.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9409.110,9417.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9417.28,9420.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9420.72,9425.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9425.29,9430.64 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9430.64,9432.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9434.8,9434.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9434.69,9436.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9438.8,9438.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9438.66,9440.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9450.4,9450.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9450.100,9458.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9458.28,9461.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9461.62,9466.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9466.29,9471.63 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9471.63,9473.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9475.8,9475.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9475.68,9477.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9479.8,9479.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9479.65,9481.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9491.4,9491.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9491.94,9495.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9495.17,9499.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9503.4,9505.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9505.106,9509.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9509.17,9513.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9517.4,9517.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9517.103,9525.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9525.28,9528.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9528.63,9533.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9533.30,9539.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9539.119,9547.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9547.32,9550.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9550.55,9553.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9553.47,9555.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9556.11,9556.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9560.10,9560.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9560.56,9563.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9563.56,9565.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9566.11,9566.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9569.10,9569.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9569.57,9574.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9574.34,9577.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9577.75,9582.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9582.35,9589.68 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9589.68,9591.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9593.14,9593.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9593.73,9595.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9597.14,9597.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9597.70,9599.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9601.14,9601.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9601.67,9603.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9609.12,9609.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9609.81,9614.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9614.36,9619.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9619.96,9627.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9627.38,9630.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9630.60,9634.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9640.14,9640.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9640.96,9648.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9648.38,9651.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9651.60,9655.17 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9665.12,9665.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9665.70,9669.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9675.10,9675.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9675.57,9680.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9680.34,9686.87 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9686.87,9694.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9694.36,9697.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9697.58,9701.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9703.14,9703.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9703.60,9707.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9713.12,9713.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9713.87,9721.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9721.36,9724.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9724.58,9728.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9730.14,9730.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9730.60,9734.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9748.8,9748.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9748.119,9757.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9767.4,9769.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9769.100,9773.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9773.17,9777.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9781.4,9781.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9781.97,9785.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9785.17,9789.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9797.2,9800.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9800.16,9802.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9804.2,9804.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9807.87,9813.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9813.16,9814.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9814.55,9818.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9819.3,9819.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9822.2,9823.112 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:23.59,3642.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3645.94,3655.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3655.58,3659.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3659.48,3662.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3663.3,3663.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3666.2,3666.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3666.58,3669.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3671.2,3671.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3671.54,3674.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3676.2,3676.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3676.53,3680.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3680.48,3683.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3684.3,3684.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3687.2,3687.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3687.51,3690.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3692.2,3692.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3692.56,3695.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3699.2,3701.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3701.62,3705.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3705.15,3709.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3713.2,3713.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3713.66,3717.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3717.15,3721.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3725.2,3725.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3725.63,3733.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3733.26,3736.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3736.54,3739.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3739.41,3741.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3742.5,3742.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3750.2,3750.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3750.65,3754.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3754.15,3758.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3764.2,3766.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3766.61,3770.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3770.15,3774.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3778.2,3778.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3778.63,3782.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3782.15,3786.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3790.2,3790.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3790.66,3794.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3794.15,3798.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3804.2,3806.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3806.76,3814.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3814.26,3817.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3817.52,3823.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3823.28,3825.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3825.63,3827.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3828.6,3828.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3828.68,3830.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3832.6,3832.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3832.65,3834.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3839.4,3839.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3839.54,3843.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3845.4,3845.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3845.49,3850.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3850.28,3855.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3855.91,3864.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3866.6,3866.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3866.100,3870.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3870.19,3874.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3878.6,3880.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3880.93,3889.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3891.6,3891.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3891.102,3895.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3895.19,3899.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3903.6,3905.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3905.99,3914.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3916.6,3916.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3916.107,3920.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3920.19,3924.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3932.4,3932.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3932.55,3937.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3937.28,3942.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3942.111,3946.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3946.19,3950.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3954.6,3954.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3954.111,3958.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3958.19,3962.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3970.4,3970.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3970.54,3974.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3976.4,3976.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3976.55,3980.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3986.2,3986.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3986.77,3994.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3994.26,3997.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3997.61,4002.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4002.28,4005.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4005.99,4010.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4010.30,4013.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4013.101,4015.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4017.8,4017.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4017.90,4019.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4021.8,4021.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4021.96,4023.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4029.6,4029.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4029.89,4033.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4035.6,4037.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4037.119,4045.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4045.30,4048.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4048.67,4052.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4054.8,4054.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4054.56,4058.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4060.8,4060.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4060.62,4064.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4070.6,4070.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4070.115,4078.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4078.30,4081.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4081.56,4085.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4087.8,4087.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4087.51,4091.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4097.6,4097.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4097.115,4105.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4105.30,4108.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4108.51,4112.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4114.8,4114.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4114.56,4118.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4120.8,4120.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4120.56,4124.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4126.8,4126.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4126.63,4130.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4132.8,4132.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4132.55,4136.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4142.6,4142.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4142.117,4150.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4150.30,4153.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4153.52,4157.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4167.4,4167.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4167.52,4171.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4173.4,4173.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4173.53,4177.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4183.2,4183.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4183.66,4191.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4191.26,4194.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4194.49,4199.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4199.28,4204.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4204.91,4213.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4215.6,4215.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4215.100,4219.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4219.19,4223.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4227.6,4229.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4229.93,4238.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4240.6,4240.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4240.102,4244.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4244.19,4248.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4252.6,4254.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4254.99,4263.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4265.6,4265.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4265.107,4269.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4269.19,4273.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4281.4,4281.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4281.55,4286.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4286.28,4291.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4291.111,4295.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4295.19,4299.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4303.6,4303.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4303.111,4307.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4307.19,4311.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4319.4,4319.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4319.61,4324.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4324.28,4327.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4327.99,4332.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4332.30,4335.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4335.101,4337.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4339.8,4339.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4339.90,4341.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4343.8,4343.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4343.96,4345.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4351.6,4351.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4351.89,4355.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4357.6,4359.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4359.119,4367.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4367.30,4370.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4370.67,4374.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4376.8,4376.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4376.56,4380.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4382.8,4382.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4382.62,4386.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4392.6,4392.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4392.115,4400.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4400.30,4403.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4403.56,4407.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4409.8,4409.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4409.51,4413.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4419.6,4419.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4419.115,4427.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4427.30,4430.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4430.51,4434.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4436.8,4436.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4436.56,4440.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4442.8,4442.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4442.56,4446.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4448.8,4448.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4448.63,4452.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4454.8,4454.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4454.55,4458.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4464.6,4464.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4464.117,4472.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4472.30,4475.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4475.52,4479.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4489.4,4489.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4489.58,4493.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4499.2,4499.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4499.68,4507.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4507.26,4510.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4510.49,4515.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4515.28,4520.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4520.91,4529.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4531.6,4531.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4531.100,4535.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4535.19,4539.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4543.6,4545.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4545.93,4554.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4556.6,4556.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4556.102,4560.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4560.19,4564.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4568.6,4570.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4570.99,4579.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4581.6,4581.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4581.107,4585.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4585.19,4589.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4597.4,4597.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4597.55,4602.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4602.28,4607.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4607.111,4611.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4611.19,4615.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4619.6,4619.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4619.111,4623.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4623.19,4627.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4635.4,4635.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4635.59,4640.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4640.28,4643.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4643.96,4648.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4648.30,4651.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4651.101,4653.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4655.8,4655.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4655.90,4657.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4659.8,4659.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4659.96,4661.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4667.6,4667.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4667.86,4671.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4673.6,4675.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4675.116,4683.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4683.30,4686.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4686.67,4690.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4692.8,4692.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4692.56,4696.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4698.8,4698.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4698.62,4702.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4708.6,4708.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4708.112,4716.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4716.30,4719.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4719.56,4723.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4725.8,4725.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4725.51,4729.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4735.6,4735.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4735.112,4743.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4743.30,4746.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4746.51,4750.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4752.8,4752.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4752.56,4756.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4758.8,4758.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4758.56,4762.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4764.8,4764.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4764.63,4768.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4770.8,4770.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4770.55,4774.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4780.6,4780.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4780.114,4788.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4788.30,4791.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4791.52,4795.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4805.4,4807.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4807.80,4816.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4818.4,4818.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4818.76,4827.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4829.4,4831.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4831.73,4835.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4835.17,4839.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4843.4,4843.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4843.74,4851.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4851.28,4856.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4856.73,4860.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4860.19,4864.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4868.6,4868.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4868.82,4877.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4879.6,4881.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4881.83,4885.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4885.19,4889.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4893.6,4893.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4893.81,4901.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4901.30,4904.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4904.59,4908.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4910.8,4910.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4910.55,4915.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4915.32,4918.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4918.93,4923.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4923.34,4926.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4926.105,4928.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4930.12,4930.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4930.94,4932.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4934.12,4934.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4934.100,4936.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4942.10,4942.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4942.83,4946.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4948.10,4950.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4950.113,4958.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4958.34,4961.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4961.71,4965.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4967.12,4967.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4967.60,4971.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4973.12,4973.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4973.66,4977.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4983.10,4983.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4983.109,4991.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4991.34,4994.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4994.60,4998.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5000.12,5000.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5000.55,5004.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5010.10,5010.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5010.109,5018.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5018.34,5021.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5021.55,5025.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5027.12,5027.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5027.60,5031.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5033.12,5033.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5033.60,5037.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5039.12,5039.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5039.67,5043.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5045.12,5045.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5045.59,5049.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5055.10,5055.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5055.111,5063.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5063.34,5066.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5066.56,5070.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5084.6,5086.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5086.103,5090.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5090.19,5094.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5098.6,5098.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5098.102,5102.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5102.19,5106.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5110.6,5112.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5112.97,5116.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5116.19,5120.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5124.6,5124.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5124.96,5128.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5128.19,5132.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5144.2,5144.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5144.68,5152.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5152.26,5157.76 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5157.76,5165.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5165.28,5168.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5168.50,5172.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5174.6,5174.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5174.55,5178.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5180.6,5180.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5180.52,5184.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5190.4,5190.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5190.78,5198.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5198.28,5201.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5201.54,5206.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5206.30,5209.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5209.93,5214.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5214.32,5217.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5217.103,5219.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5221.10,5221.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5221.92,5223.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5225.10,5225.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5225.98,5227.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5233.8,5233.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5233.83,5237.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5239.8,5241.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5241.113,5249.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5249.32,5252.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5252.69,5256.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5258.10,5258.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5258.58,5262.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5264.10,5264.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5264.64,5268.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5274.8,5274.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5274.109,5282.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5282.32,5285.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5285.58,5289.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5291.10,5291.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5291.53,5295.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5301.8,5301.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5301.109,5309.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5309.32,5312.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5312.53,5316.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5318.10,5318.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5318.58,5322.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5324.10,5324.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5324.58,5328.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5330.10,5330.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5330.65,5334.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5336.10,5336.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5336.57,5340.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5346.8,5346.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5346.111,5354.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5354.32,5357.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5357.54,5361.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5371.6,5371.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5371.55,5375.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5381.4,5381.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5381.77,5385.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5385.17,5389.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5393.4,5393.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5393.49,5398.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5398.28,5403.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5403.91,5412.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5414.6,5414.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5414.100,5418.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5418.19,5422.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5426.6,5428.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5428.93,5437.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5439.6,5439.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5439.102,5443.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5443.19,5447.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5451.6,5453.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5453.99,5462.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5464.6,5464.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5464.107,5468.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5468.19,5472.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5480.4,5480.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5480.55,5485.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5485.28,5490.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5490.111,5494.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5494.19,5498.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5502.6,5502.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5502.111,5506.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5506.19,5510.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5518.4,5518.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5518.52,5522.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5524.4,5526.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5526.73,5530.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5530.17,5534.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5538.4,5538.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5538.74,5546.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5546.28,5551.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5551.73,5555.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5555.19,5559.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5563.6,5563.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5563.82,5572.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5574.6,5576.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5576.83,5580.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5580.19,5584.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5588.6,5588.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5588.81,5596.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5596.30,5599.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5599.59,5603.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5605.8,5605.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5605.55,5610.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5610.32,5613.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5613.93,5618.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5618.34,5621.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5621.105,5623.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5625.12,5625.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5625.94,5627.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5629.12,5629.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5629.100,5631.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5637.10,5637.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5637.83,5641.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5643.10,5645.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5645.113,5653.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5653.34,5656.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5656.71,5660.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5662.12,5662.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5662.60,5666.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5668.12,5668.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5668.66,5672.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5678.10,5678.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5678.109,5686.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5686.34,5689.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5689.60,5693.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5695.12,5695.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5695.55,5699.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5705.10,5705.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5705.109,5713.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5713.34,5716.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5716.55,5720.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5722.12,5722.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5722.60,5726.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5728.12,5728.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5728.60,5732.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5734.12,5734.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5734.67,5738.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5740.12,5740.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5740.59,5744.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5750.10,5750.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5750.111,5758.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5758.34,5761.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5761.56,5765.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5779.6,5781.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5781.103,5785.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5785.19,5789.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5793.6,5793.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5793.102,5797.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5797.19,5801.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5805.6,5807.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5807.97,5811.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5811.19,5815.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5819.6,5819.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5819.96,5823.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5823.19,5827.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5839.2,5839.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5839.71,5847.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5847.26,5850.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5850.49,5855.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5855.28,5860.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5860.91,5869.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5871.6,5871.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5871.100,5875.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5875.19,5879.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5883.6,5885.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5885.93,5894.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5896.6,5896.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5896.102,5900.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5900.19,5904.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5908.6,5910.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5910.99,5919.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5921.6,5921.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5921.107,5925.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5925.19,5929.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5937.4,5937.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5937.50,5941.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5943.4,5943.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5943.55,5948.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5948.28,5953.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5953.111,5957.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5957.19,5961.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5965.6,5965.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5965.111,5969.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5969.19,5973.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5981.4,5981.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5981.52,5987.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5987.28,5989.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5989.63,5991.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5992.6,5992.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5992.68,5994.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5996.6,5996.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5996.65,5998.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6007.2,6007.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6007.65,6015.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6015.26,6020.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6020.78,6028.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6028.28,6031.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6031.54,6036.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6036.30,6039.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6039.93,6044.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6044.32,6047.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6047.103,6049.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6051.10,6051.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6051.92,6053.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6055.10,6055.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6055.98,6057.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6063.8,6063.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6063.83,6067.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6069.8,6071.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6071.113,6079.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6079.32,6082.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6082.69,6086.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6088.10,6088.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6088.58,6092.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6094.10,6094.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6094.64,6098.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6104.8,6104.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6104.109,6112.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6112.32,6115.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6115.58,6119.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6121.10,6121.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6121.53,6125.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6131.8,6131.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6131.109,6139.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6139.32,6142.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6142.53,6146.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6148.10,6148.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6148.58,6152.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6154.10,6154.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6154.58,6158.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6160.10,6160.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6160.65,6164.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6166.10,6166.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6166.57,6170.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6176.8,6176.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6176.111,6184.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6184.32,6187.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6187.54,6191.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6201.6,6201.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6201.55,6205.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6211.4,6211.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6211.77,6215.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6215.17,6219.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6223.4,6223.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6223.78,6231.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6231.28,6234.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6234.51,6239.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6239.30,6242.90 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6242.90,6247.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6247.32,6250.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6250.103,6252.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6254.10,6254.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6254.92,6256.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6258.10,6258.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6258.98,6260.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6266.8,6266.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6266.80,6270.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6272.8,6274.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6274.110,6282.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6282.32,6285.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6285.69,6289.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6291.10,6291.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6291.58,6295.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6297.10,6297.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6297.64,6301.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6307.8,6307.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6307.106,6315.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6315.32,6318.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6318.58,6322.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6324.10,6324.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6324.53,6328.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6334.8,6334.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6334.106,6342.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6342.32,6345.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6345.53,6349.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6351.10,6351.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6351.58,6355.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6357.10,6357.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6357.58,6361.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6363.10,6363.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6363.65,6367.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6369.10,6369.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6369.57,6373.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6379.8,6379.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6379.108,6387.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6387.32,6390.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6390.54,6394.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6408.4,6408.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6408.49,6413.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6413.28,6418.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6418.91,6427.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6429.6,6429.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6429.100,6433.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6433.19,6437.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6441.6,6443.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6443.93,6452.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6454.6,6454.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6454.102,6458.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6458.19,6462.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6466.6,6468.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6468.99,6477.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6479.6,6479.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6479.107,6483.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6483.19,6487.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6495.4,6495.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6495.55,6500.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6500.28,6505.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6505.111,6509.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6509.19,6513.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6517.6,6517.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6517.111,6521.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6521.19,6525.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6533.4,6535.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6535.73,6539.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6539.17,6543.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6547.4,6547.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6547.74,6555.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6555.28,6560.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6560.73,6564.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6564.19,6568.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6572.6,6572.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6572.82,6581.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6583.6,6585.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6585.83,6589.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6589.19,6593.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6597.6,6597.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6597.81,6605.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6605.30,6608.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6608.59,6612.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6614.8,6614.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6614.55,6619.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6619.32,6622.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6622.93,6627.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6627.34,6630.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6630.105,6632.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6634.12,6634.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6634.94,6636.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6638.12,6638.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6638.100,6640.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6646.10,6646.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6646.83,6650.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6652.10,6654.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6654.113,6662.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6662.34,6665.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6665.71,6669.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6671.12,6671.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6671.60,6675.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6677.12,6677.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6677.66,6681.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6687.10,6687.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6687.109,6695.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6695.34,6698.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6698.60,6702.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6704.12,6704.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6704.55,6708.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6714.10,6714.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6714.109,6722.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6722.34,6725.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6725.55,6729.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6731.12,6731.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6731.60,6735.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6737.12,6737.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6737.60,6741.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6743.12,6743.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6743.67,6747.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6749.12,6749.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6749.59,6753.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6759.10,6759.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6759.111,6767.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6767.34,6770.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6770.56,6774.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6788.6,6790.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6790.103,6794.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6794.19,6798.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6802.6,6802.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6802.102,6806.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6806.19,6810.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6814.6,6816.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6816.97,6820.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6820.19,6824.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6828.6,6828.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6828.96,6832.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6832.19,6836.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6844.4,6844.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6844.47,6848.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6854.2,6854.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6854.66,6862.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6862.26,6865.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6865.49,6870.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6870.28,6875.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6875.91,6884.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6886.6,6886.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6886.100,6890.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6890.19,6894.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6898.6,6900.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6900.93,6909.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6911.6,6911.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6911.102,6915.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6915.19,6919.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6923.6,6925.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6925.99,6934.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6936.6,6936.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6936.107,6940.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6940.19,6944.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6952.4,6952.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6952.61,6955.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6955.41,6957.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6958.5,6958.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6962.4,6962.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6962.55,6967.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6967.28,6972.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6972.111,6976.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6976.19,6980.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6984.6,6984.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6984.111,6988.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6988.19,6992.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7000.4,7000.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7000.55,7004.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7006.4,7008.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7008.73,7012.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7012.17,7016.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7020.4,7020.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7020.74,7028.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7028.28,7033.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7033.73,7037.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7037.19,7041.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7045.6,7045.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7045.82,7054.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7056.6,7058.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7058.83,7062.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7062.19,7066.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7070.6,7070.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7070.81,7078.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7078.30,7081.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7081.59,7085.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7087.8,7087.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7087.55,7092.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7092.32,7095.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7095.93,7100.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7100.34,7103.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7103.105,7105.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7107.12,7107.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7107.94,7109.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7111.12,7111.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7111.100,7113.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7119.10,7119.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7119.83,7123.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7125.10,7127.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7127.113,7135.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7135.34,7138.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7138.71,7142.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7144.12,7144.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7144.60,7148.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7150.12,7150.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7150.66,7154.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7160.10,7160.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7160.109,7168.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7168.34,7171.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7171.60,7175.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7177.12,7177.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7177.55,7181.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7187.10,7187.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7187.109,7195.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7195.34,7198.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7198.55,7202.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7204.12,7204.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7204.60,7208.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7210.12,7210.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7210.60,7214.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7216.12,7216.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7216.67,7220.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7222.12,7222.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7222.59,7226.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7232.10,7232.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7232.111,7240.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7240.34,7243.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7243.56,7247.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7261.6,7263.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7263.103,7267.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7267.19,7271.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7275.6,7275.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7275.102,7279.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7279.19,7283.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7287.6,7289.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7289.97,7293.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7293.19,7297.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7301.6,7301.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7301.96,7305.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7305.19,7309.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7321.2,7321.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7321.70,7329.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7329.26,7332.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7332.51,7337.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7337.28,7340.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7340.89,7345.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7345.30,7348.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7348.101,7350.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7352.8,7352.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7352.90,7354.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7356.8,7356.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7356.96,7358.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7364.6,7364.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7364.79,7368.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7370.6,7372.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7372.109,7380.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7380.30,7383.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7383.67,7387.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7389.8,7389.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7389.56,7393.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7395.8,7395.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7395.62,7399.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7405.6,7405.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7405.105,7413.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7413.30,7416.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7416.56,7420.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7422.8,7422.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7422.51,7426.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7432.6,7432.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7432.105,7440.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7440.30,7443.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7443.51,7447.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7449.8,7449.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7449.56,7453.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7455.8,7455.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7455.56,7459.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7461.8,7461.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7461.63,7465.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7467.8,7467.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7467.55,7471.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7477.6,7477.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7477.107,7485.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7485.30,7488.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7488.52,7492.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7502.4,7504.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7504.74,7508.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7508.17,7512.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7516.4,7516.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7516.74,7520.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7520.17,7524.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7532.2,7532.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7532.67,7540.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7540.26,7543.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7543.49,7548.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7548.28,7553.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7553.91,7562.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7564.6,7564.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7564.100,7568.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7568.19,7572.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7576.6,7578.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7578.93,7587.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7589.6,7589.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7589.102,7593.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7593.19,7597.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7601.6,7603.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7603.99,7612.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7614.6,7614.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7614.107,7618.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7618.19,7622.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7630.4,7630.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7630.55,7635.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7635.28,7640.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7640.111,7644.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7644.19,7648.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7652.6,7652.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7652.111,7656.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7656.19,7660.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7668.4,7670.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7670.73,7674.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7674.17,7678.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7682.4,7682.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7682.74,7690.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7690.28,7695.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7695.73,7699.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7699.19,7703.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7707.6,7707.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7707.82,7716.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7718.6,7720.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7720.83,7724.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7724.19,7728.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7732.6,7732.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7732.81,7740.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7740.30,7743.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7743.59,7747.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7749.8,7749.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7749.55,7754.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7754.32,7757.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7757.93,7762.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7762.34,7765.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7765.105,7767.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7769.12,7769.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7769.94,7771.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7773.12,7773.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7773.100,7775.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7781.10,7781.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7781.83,7785.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7787.10,7789.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7789.113,7797.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7797.34,7800.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7800.71,7804.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7806.12,7806.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7806.60,7810.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7812.12,7812.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7812.66,7816.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7822.10,7822.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7822.109,7830.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7830.34,7833.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7833.60,7837.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7839.12,7839.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7839.55,7843.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7849.10,7849.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7849.109,7857.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7857.34,7860.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7860.55,7864.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7866.12,7866.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7866.60,7870.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7872.12,7872.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7872.60,7876.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7878.12,7878.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7878.67,7882.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7884.12,7884.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7884.59,7888.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7894.10,7894.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7894.111,7902.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7902.34,7905.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7905.56,7909.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7923.6,7925.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7925.103,7929.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7929.19,7933.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7937.6,7937.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7937.102,7941.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7941.19,7945.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7949.6,7951.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7951.97,7955.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7955.19,7959.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7963.6,7963.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7963.96,7967.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7967.19,7971.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7979.4,7979.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7979.47,7983.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7989.2,7989.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7989.63,7997.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7997.26,8000.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8000.52,8006.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8006.28,8008.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8008.63,8010.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8011.6,8011.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8011.68,8013.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8015.6,8015.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8015.65,8017.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8022.4,8022.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8022.54,8026.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8028.4,8028.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8028.49,8033.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8033.28,8038.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8038.91,8047.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8049.6,8049.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8049.100,8053.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8053.19,8057.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8061.6,8063.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8063.93,8072.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8074.6,8074.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8074.102,8078.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8078.19,8082.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8086.6,8088.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8088.99,8097.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8099.6,8099.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8099.107,8103.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8103.19,8107.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8115.4,8115.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8115.50,8119.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8121.4,8121.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8121.55,8126.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8126.28,8131.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8131.111,8135.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8135.19,8139.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8143.6,8143.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8143.111,8147.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8147.19,8151.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8163.2,8163.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8163.67,8171.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8171.26,8174.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8174.49,8179.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8179.28,8184.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8184.91,8193.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8195.6,8195.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8195.100,8199.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8199.19,8203.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8207.6,8209.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8209.93,8218.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8220.6,8220.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8220.102,8224.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8224.19,8228.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8232.6,8234.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8234.99,8243.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8245.6,8245.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8245.107,8249.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8249.19,8253.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8261.4,8261.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8261.55,8266.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8266.28,8271.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8271.111,8275.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8275.19,8279.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8283.6,8283.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8283.111,8287.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8287.19,8291.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8299.4,8299.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8299.52,8303.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8305.4,8305.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8305.60,8310.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8310.28,8313.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8313.97,8318.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8318.30,8321.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8321.101,8323.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8325.8,8325.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8325.90,8327.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8329.8,8329.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8329.96,8331.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8337.6,8337.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8337.87,8341.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8343.6,8345.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8345.117,8353.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8353.30,8356.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8356.67,8360.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8362.8,8362.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8362.56,8366.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8368.8,8368.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8368.62,8372.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8378.6,8378.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8378.113,8386.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8386.30,8389.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8389.56,8393.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8395.8,8395.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8395.51,8399.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8405.6,8405.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8405.113,8413.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8413.30,8416.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8416.51,8420.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8422.8,8422.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8422.56,8426.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8428.8,8428.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8428.56,8432.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8434.8,8434.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8434.63,8438.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8440.8,8440.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8440.55,8444.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8450.6,8450.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8450.115,8458.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8458.30,8461.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8461.52,8465.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8475.4,8477.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8477.73,8481.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8481.17,8485.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8489.4,8489.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8489.74,8497.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8497.28,8502.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8502.73,8506.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8506.19,8510.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8514.6,8514.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8514.82,8523.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8525.6,8527.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8527.83,8531.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8531.19,8535.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8539.6,8539.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8539.81,8547.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8547.30,8550.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8550.59,8554.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8556.8,8556.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8556.55,8561.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8561.32,8564.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8564.93,8569.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8569.34,8572.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8572.105,8574.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8576.12,8576.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8576.94,8578.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8580.12,8580.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8580.100,8582.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8588.10,8588.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8588.83,8592.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8594.10,8596.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8596.113,8604.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8604.34,8607.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8607.71,8611.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8613.12,8613.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8613.60,8617.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8619.12,8619.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8619.66,8623.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8629.10,8629.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8629.109,8637.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8637.34,8640.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8640.60,8644.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8646.12,8646.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8646.55,8650.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8656.10,8656.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8656.109,8664.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8664.34,8667.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8667.55,8671.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8673.12,8673.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8673.60,8677.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8679.12,8679.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8679.60,8683.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8685.12,8685.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8685.67,8689.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8691.12,8691.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8691.59,8695.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8701.10,8701.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8701.111,8709.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8709.34,8712.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8712.56,8716.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8730.6,8732.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8732.103,8736.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8736.19,8740.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8744.6,8744.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8744.102,8748.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8748.19,8752.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8756.6,8758.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8758.97,8762.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8762.19,8766.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8770.6,8770.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8770.96,8774.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8774.19,8778.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8790.2,8790.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8790.71,8798.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8798.26,8801.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8801.47,8806.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8806.28,8809.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8809.86,8814.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8814.30,8817.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8817.101,8819.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8821.8,8821.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8821.90,8823.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8825.8,8825.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8825.96,8827.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8833.6,8833.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8833.76,8837.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8839.6,8841.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8841.106,8849.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8849.30,8852.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8852.67,8856.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8858.8,8858.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8858.56,8862.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8864.8,8864.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8864.62,8868.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8874.6,8874.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8874.102,8882.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8882.30,8885.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8885.56,8889.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8891.8,8891.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8891.51,8895.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8901.6,8901.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8901.102,8909.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8909.30,8912.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8912.51,8916.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8918.8,8918.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8918.56,8922.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8924.8,8924.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8924.56,8928.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8930.8,8930.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8930.63,8934.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8936.8,8936.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8936.55,8940.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8946.6,8946.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8946.104,8954.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8954.30,8957.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8957.52,8961.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8975.2,8978.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8978.16,8980.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8981.2,8983.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8986.92,8992.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8992.16,8993.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8993.55,8997.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8998.3,8998.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9000.2,9000.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9003.113,9019.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9022.94,9031.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9031.58,9035.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9035.48,9038.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9039.3,9039.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9042.2,9042.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9042.58,9045.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9047.2,9047.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9047.54,9050.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9052.2,9052.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9052.53,9056.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9056.48,9059.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9060.3,9060.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9063.2,9063.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9063.51,9066.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9068.2,9068.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9068.56,9071.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9073.2,9075.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9075.62,9079.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9079.15,9083.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9087.2,9087.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9087.66,9091.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9091.15,9095.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9099.2,9099.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9099.63,9107.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9107.26,9110.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9110.54,9113.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9113.41,9115.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9116.5,9116.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9124.2,9124.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9124.65,9128.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9128.15,9132.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9136.2,9138.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9138.61,9142.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9142.15,9146.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9150.2,9150.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9150.63,9154.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9154.15,9158.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9162.2,9162.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9162.66,9166.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9166.15,9170.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9174.2,9176.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9176.76,9184.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9184.26,9187.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9187.52,9193.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9193.28,9195.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9195.63,9197.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9198.6,9198.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9198.68,9200.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9202.6,9202.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9202.65,9204.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9209.4,9209.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9209.54,9213.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9215.4,9215.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9215.49,9220.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9220.28,9225.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9225.91,9234.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9236.6,9236.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9236.100,9240.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9240.19,9244.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9248.6,9250.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9250.93,9259.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9261.6,9261.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9261.102,9265.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9265.19,9269.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9273.6,9275.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9275.99,9284.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9286.6,9286.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9286.107,9290.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9290.19,9294.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9302.4,9302.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9302.55,9307.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9307.28,9312.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9312.111,9316.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9316.19,9320.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9324.6,9324.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9324.111,9328.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9328.19,9332.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9340.4,9340.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9340.54,9344.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9346.4,9346.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9346.55,9350.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9356.2,9356.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9356.77,9364.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9364.26,9367.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9367.61,9372.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9372.28,9375.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9375.99,9380.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9380.30,9383.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9383.101,9385.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9387.8,9387.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9387.90,9389.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9391.8,9391.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9391.96,9393.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9399.6,9399.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9399.89,9403.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9405.6,9407.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9407.119,9415.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9415.30,9418.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9418.67,9422.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9424.8,9424.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9424.56,9428.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9430.8,9430.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9430.62,9434.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9440.6,9440.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9440.115,9448.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9448.30,9451.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9451.56,9455.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9457.8,9457.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9457.51,9461.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9467.6,9467.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9467.115,9475.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9475.30,9478.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9478.51,9482.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9484.8,9484.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9484.56,9488.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9490.8,9490.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9490.56,9494.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9496.8,9496.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9496.63,9500.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9502.8,9502.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9502.55,9506.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9512.6,9512.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9512.117,9520.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9520.30,9523.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9523.52,9527.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9537.4,9537.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9537.52,9541.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9543.4,9543.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9543.53,9547.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9553.2,9553.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9553.66,9561.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9561.26,9564.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9564.49,9569.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9569.28,9574.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9574.91,9583.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9585.6,9585.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9585.100,9589.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9589.19,9593.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9597.6,9599.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9599.93,9608.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9610.6,9610.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9610.102,9614.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9614.19,9618.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9622.6,9624.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9624.99,9633.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9635.6,9635.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9635.107,9639.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9639.19,9643.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9651.4,9651.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9651.55,9656.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9656.28,9661.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9661.111,9665.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9665.19,9669.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9673.6,9673.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9673.111,9677.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9677.19,9681.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9689.4,9689.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9689.61,9694.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9694.28,9697.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9697.99,9702.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9702.30,9705.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9705.101,9707.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9709.8,9709.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9709.90,9711.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9713.8,9713.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9713.96,9715.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9721.6,9721.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9721.89,9725.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9727.6,9729.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9729.119,9737.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9737.30,9740.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9740.67,9744.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9746.8,9746.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9746.56,9750.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9752.8,9752.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9752.62,9756.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9762.6,9762.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9762.115,9770.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9770.30,9773.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9773.56,9777.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9779.8,9779.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9779.51,9783.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9789.6,9789.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9789.115,9797.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9797.30,9800.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9800.51,9804.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9806.8,9806.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9806.56,9810.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9812.8,9812.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9812.56,9816.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9818.8,9818.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9818.63,9822.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9824.8,9824.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9824.55,9828.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9834.6,9834.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9834.117,9842.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9842.30,9845.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9845.52,9849.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9859.4,9859.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9859.58,9863.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9869.2,9869.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9869.68,9877.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9877.26,9880.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9880.49,9885.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9885.28,9890.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9890.91,9899.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9901.6,9901.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9901.100,9905.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9905.19,9909.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9913.6,9915.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9915.93,9924.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9926.6,9926.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9926.102,9930.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9930.19,9934.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9938.6,9940.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9940.99,9949.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9951.6,9951.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9951.107,9955.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9955.19,9959.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9967.4,9967.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9967.55,9972.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9972.28,9977.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9977.111,9981.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9981.19,9985.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9989.6,9989.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9989.111,9993.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9993.19,9997.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10005.4,10005.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10005.59,10010.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10010.28,10013.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10013.96,10018.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10018.30,10021.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10021.101,10023.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10025.8,10025.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10025.90,10027.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10029.8,10029.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10029.96,10031.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10037.6,10037.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10037.86,10041.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10043.6,10045.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10045.116,10053.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10053.30,10056.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10056.67,10060.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10062.8,10062.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10062.56,10066.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10068.8,10068.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10068.62,10072.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10078.6,10078.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10078.112,10086.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10086.30,10089.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10089.56,10093.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10095.8,10095.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10095.51,10099.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10105.6,10105.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10105.112,10113.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10113.30,10116.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10116.51,10120.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10122.8,10122.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10122.56,10126.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10128.8,10128.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10128.56,10132.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10134.8,10134.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10134.63,10138.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10140.8,10140.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10140.55,10144.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10150.6,10150.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10150.114,10158.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10158.30,10161.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10161.52,10165.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10175.4,10177.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10177.80,10186.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10188.4,10188.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10188.76,10197.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10199.4,10201.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10201.73,10205.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10205.17,10209.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10213.4,10213.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10213.74,10221.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10221.28,10226.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10226.73,10230.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10230.19,10234.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10238.6,10238.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10238.82,10247.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10249.6,10251.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10251.83,10255.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10255.19,10259.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10263.6,10263.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10263.81,10271.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10271.30,10274.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10274.59,10278.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10280.8,10280.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10280.55,10285.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10285.32,10288.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10288.93,10293.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10293.34,10296.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10296.105,10298.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10300.12,10300.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10300.94,10302.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10304.12,10304.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10304.100,10306.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10312.10,10312.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10312.83,10316.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10318.10,10320.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10320.113,10328.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10328.34,10331.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10331.71,10335.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10337.12,10337.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10337.60,10341.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10343.12,10343.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10343.66,10347.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10353.10,10353.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10353.109,10361.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10361.34,10364.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10364.60,10368.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10370.12,10370.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10370.55,10374.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10380.10,10380.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10380.109,10388.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10388.34,10391.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10391.55,10395.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10397.12,10397.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10397.60,10401.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10403.12,10403.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10403.60,10407.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10409.12,10409.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10409.67,10413.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10415.12,10415.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10415.59,10419.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10425.10,10425.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10425.111,10433.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10433.34,10436.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10436.56,10440.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10454.6,10456.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10456.103,10460.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10460.19,10464.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10468.6,10468.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10468.102,10472.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10472.19,10476.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10480.6,10482.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10482.97,10486.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10486.19,10490.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10494.6,10494.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10494.96,10498.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10498.19,10502.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10514.2,10514.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10514.68,10522.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10522.26,10527.76 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10527.76,10535.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10535.28,10538.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10538.50,10542.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10544.6,10544.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10544.55,10548.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10550.6,10550.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10550.52,10554.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10560.4,10560.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10560.78,10568.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10568.28,10571.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10571.54,10576.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10576.30,10579.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10579.93,10584.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10584.32,10587.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10587.103,10589.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10591.10,10591.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10591.92,10593.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10595.10,10595.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10595.98,10597.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10603.8,10603.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10603.83,10607.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10609.8,10611.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10611.113,10619.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10619.32,10622.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10622.69,10626.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10628.10,10628.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10628.58,10632.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10634.10,10634.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10634.64,10638.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10644.8,10644.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10644.109,10652.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10652.32,10655.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10655.58,10659.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10661.10,10661.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10661.53,10665.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10671.8,10671.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10671.109,10679.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10679.32,10682.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10682.53,10686.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10688.10,10688.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10688.58,10692.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10694.10,10694.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10694.58,10698.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10700.10,10700.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10700.65,10704.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10706.10,10706.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10706.57,10710.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10716.8,10716.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10716.111,10724.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10724.32,10727.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10727.54,10731.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10741.6,10741.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10741.55,10745.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10751.4,10751.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10751.77,10755.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10755.17,10759.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10763.4,10763.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10763.49,10768.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10768.28,10773.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10773.91,10782.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10784.6,10784.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10784.100,10788.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10788.19,10792.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10796.6,10798.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10798.93,10807.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10809.6,10809.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10809.102,10813.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10813.19,10817.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10821.6,10823.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10823.99,10832.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10834.6,10834.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10834.107,10838.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10838.19,10842.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10850.4,10850.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10850.55,10855.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10855.28,10860.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10860.111,10864.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10864.19,10868.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10872.6,10872.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10872.111,10876.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10876.19,10880.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10888.4,10888.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10888.52,10892.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10894.4,10896.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10896.73,10900.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10900.17,10904.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10908.4,10908.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10908.74,10916.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10916.28,10921.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10921.73,10925.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10925.19,10929.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10933.6,10933.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10933.82,10942.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10944.6,10946.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10946.83,10950.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10950.19,10954.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10958.6,10958.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10958.81,10966.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10966.30,10969.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10969.59,10973.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10975.8,10975.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10975.55,10980.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10980.32,10983.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10983.93,10988.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10988.34,10991.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10991.105,10993.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10995.12,10995.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10995.94,10997.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10999.12,10999.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10999.100,11001.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11007.10,11007.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11007.83,11011.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11013.10,11015.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11015.113,11023.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11023.34,11026.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11026.71,11030.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11032.12,11032.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11032.60,11036.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11038.12,11038.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11038.66,11042.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11048.10,11048.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11048.109,11056.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11056.34,11059.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11059.60,11063.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11065.12,11065.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11065.55,11069.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11075.10,11075.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11075.109,11083.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11083.34,11086.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11086.55,11090.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11092.12,11092.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11092.60,11096.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11098.12,11098.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11098.60,11102.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11104.12,11104.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11104.67,11108.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11110.12,11110.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11110.59,11114.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11120.10,11120.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11120.111,11128.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11128.34,11131.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11131.56,11135.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11149.6,11151.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11151.103,11155.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11155.19,11159.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11163.6,11163.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11163.102,11167.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11167.19,11171.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11175.6,11177.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11177.97,11181.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11181.19,11185.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11189.6,11189.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11189.96,11193.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11193.19,11197.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11209.2,11209.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11209.71,11217.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11217.26,11220.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11220.49,11225.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11225.28,11230.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11230.91,11239.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11241.6,11241.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11241.100,11245.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11245.19,11249.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11253.6,11255.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11255.93,11264.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11266.6,11266.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11266.102,11270.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11270.19,11274.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11278.6,11280.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11280.99,11289.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11291.6,11291.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11291.107,11295.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11295.19,11299.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11307.4,11307.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11307.50,11311.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11313.4,11313.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11313.55,11318.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11318.28,11323.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11323.111,11327.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11327.19,11331.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11335.6,11335.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11335.111,11339.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11339.19,11343.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11351.4,11351.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11351.52,11357.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11357.28,11359.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11359.63,11361.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11362.6,11362.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11362.68,11364.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11366.6,11366.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11366.65,11368.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11377.2,11377.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11377.65,11385.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11385.26,11390.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11390.78,11398.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11398.28,11401.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11401.54,11406.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11406.30,11409.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11409.93,11414.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11414.32,11417.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11417.103,11419.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11421.10,11421.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11421.92,11423.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11425.10,11425.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11425.98,11427.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11433.8,11433.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11433.83,11437.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11439.8,11441.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11441.113,11449.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11449.32,11452.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11452.69,11456.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11458.10,11458.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11458.58,11462.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11464.10,11464.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11464.64,11468.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11474.8,11474.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11474.109,11482.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11482.32,11485.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11485.58,11489.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11491.10,11491.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11491.53,11495.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11501.8,11501.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11501.109,11509.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11509.32,11512.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11512.53,11516.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11518.10,11518.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11518.58,11522.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11524.10,11524.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11524.58,11528.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11530.10,11530.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11530.65,11534.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11536.10,11536.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11536.57,11540.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11546.8,11546.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11546.111,11554.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11554.32,11557.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11557.54,11561.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11571.6,11571.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11571.55,11575.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11581.4,11581.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11581.77,11585.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11585.17,11589.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11593.4,11593.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11593.78,11601.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11601.28,11604.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11604.51,11609.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11609.30,11612.90 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11612.90,11617.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11617.32,11620.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11620.103,11622.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11624.10,11624.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11624.92,11626.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11628.10,11628.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11628.98,11630.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11636.8,11636.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11636.80,11640.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11642.8,11644.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11644.110,11652.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11652.32,11655.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11655.69,11659.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11661.10,11661.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11661.58,11665.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11667.10,11667.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11667.64,11671.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11677.8,11677.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11677.106,11685.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11685.32,11688.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11688.58,11692.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11694.10,11694.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11694.53,11698.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11704.8,11704.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11704.106,11712.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11712.32,11715.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11715.53,11719.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11721.10,11721.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11721.58,11725.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11727.10,11727.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11727.58,11731.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11733.10,11733.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11733.65,11737.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11739.10,11739.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11739.57,11743.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11749.8,11749.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11749.108,11757.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11757.32,11760.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11760.54,11764.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11778.4,11778.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11778.49,11783.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11783.28,11788.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11788.91,11797.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11799.6,11799.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11799.100,11803.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11803.19,11807.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11811.6,11813.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11813.93,11822.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11824.6,11824.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11824.102,11828.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11828.19,11832.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11836.6,11838.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11838.99,11847.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11849.6,11849.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11849.107,11853.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11853.19,11857.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11865.4,11865.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11865.55,11870.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11870.28,11875.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11875.111,11879.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11879.19,11883.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11887.6,11887.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11887.111,11891.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11891.19,11895.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11903.4,11905.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11905.73,11909.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11909.17,11913.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11917.4,11917.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11917.74,11925.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11925.28,11930.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11930.73,11934.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11934.19,11938.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11942.6,11942.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11942.82,11951.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11953.6,11955.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11955.83,11959.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11959.19,11963.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11967.6,11967.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11967.81,11975.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11975.30,11978.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11978.59,11982.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11984.8,11984.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11984.55,11989.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11989.32,11992.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11992.93,11997.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11997.34,12000.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12000.105,12002.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12004.12,12004.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12004.94,12006.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12008.12,12008.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12008.100,12010.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12016.10,12016.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12016.83,12020.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12022.10,12024.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12024.113,12032.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12032.34,12035.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12035.71,12039.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12041.12,12041.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12041.60,12045.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12047.12,12047.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12047.66,12051.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12057.10,12057.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12057.109,12065.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12065.34,12068.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12068.60,12072.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12074.12,12074.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12074.55,12078.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12084.10,12084.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12084.109,12092.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12092.34,12095.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12095.55,12099.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12101.12,12101.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12101.60,12105.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12107.12,12107.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12107.60,12111.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12113.12,12113.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12113.67,12117.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12119.12,12119.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12119.59,12123.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12129.10,12129.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12129.111,12137.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12137.34,12140.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12140.56,12144.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12158.6,12160.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12160.103,12164.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12164.19,12168.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12172.6,12172.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12172.102,12176.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12176.19,12180.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12184.6,12186.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12186.97,12190.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12190.19,12194.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12198.6,12198.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12198.96,12202.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12202.19,12206.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12214.4,12214.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12214.47,12218.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12224.2,12224.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12224.66,12232.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12232.26,12235.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12235.49,12240.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12240.28,12245.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12245.91,12254.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12256.6,12256.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12256.100,12260.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12260.19,12264.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12268.6,12270.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12270.93,12279.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12281.6,12281.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12281.102,12285.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12285.19,12289.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12293.6,12295.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12295.99,12304.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12306.6,12306.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12306.107,12310.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12310.19,12314.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12322.4,12322.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12322.61,12325.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12325.41,12327.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12328.5,12328.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12332.4,12332.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12332.55,12337.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12337.28,12342.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12342.111,12346.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12346.19,12350.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12354.6,12354.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12354.111,12358.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12358.19,12362.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12370.4,12370.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12370.55,12374.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12376.4,12378.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12378.73,12382.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12382.17,12386.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12390.4,12390.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12390.74,12398.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12398.28,12403.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12403.73,12407.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12407.19,12411.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12415.6,12415.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12415.82,12424.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12426.6,12428.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12428.83,12432.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12432.19,12436.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12440.6,12440.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12440.81,12448.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12448.30,12451.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12451.59,12455.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12457.8,12457.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12457.55,12462.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12462.32,12465.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12465.93,12470.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12470.34,12473.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12473.105,12475.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12477.12,12477.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12477.94,12479.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12481.12,12481.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12481.100,12483.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12489.10,12489.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12489.83,12493.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12495.10,12497.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12497.113,12505.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12505.34,12508.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12508.71,12512.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12514.12,12514.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12514.60,12518.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12520.12,12520.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12520.66,12524.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12530.10,12530.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12530.109,12538.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12538.34,12541.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12541.60,12545.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12547.12,12547.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12547.55,12551.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12557.10,12557.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12557.109,12565.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12565.34,12568.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12568.55,12572.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12574.12,12574.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12574.60,12578.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12580.12,12580.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12580.60,12584.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12586.12,12586.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12586.67,12590.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12592.12,12592.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12592.59,12596.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12602.10,12602.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12602.111,12610.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12610.34,12613.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12613.56,12617.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12631.6,12633.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12633.103,12637.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12637.19,12641.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12645.6,12645.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12645.102,12649.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12649.19,12653.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12657.6,12659.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12659.97,12663.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12663.19,12667.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12671.6,12671.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12671.96,12675.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12675.19,12679.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12691.2,12691.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12691.70,12699.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12699.26,12702.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12702.51,12707.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12707.28,12710.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12710.89,12715.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12715.30,12718.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12718.101,12720.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12722.8,12722.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12722.90,12724.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12726.8,12726.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12726.96,12728.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12734.6,12734.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12734.79,12738.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12740.6,12742.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12742.109,12750.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12750.30,12753.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12753.67,12757.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12759.8,12759.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12759.56,12763.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12765.8,12765.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12765.62,12769.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12775.6,12775.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12775.105,12783.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12783.30,12786.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12786.56,12790.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12792.8,12792.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12792.51,12796.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12802.6,12802.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12802.105,12810.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12810.30,12813.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12813.51,12817.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12819.8,12819.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12819.56,12823.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12825.8,12825.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12825.56,12829.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12831.8,12831.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12831.63,12835.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12837.8,12837.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12837.55,12841.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12847.6,12847.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12847.107,12855.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12855.30,12858.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12858.52,12862.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12872.4,12874.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12874.74,12878.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12878.17,12882.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12886.4,12886.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12886.74,12890.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12890.17,12894.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12902.2,12902.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12902.67,12910.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12910.26,12913.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12913.49,12918.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12918.28,12923.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12923.91,12932.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12934.6,12934.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12934.100,12938.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12938.19,12942.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12946.6,12948.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12948.93,12957.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12959.6,12959.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12959.102,12963.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12963.19,12967.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12971.6,12973.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12973.99,12982.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12984.6,12984.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12984.107,12988.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12988.19,12992.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13000.4,13000.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13000.55,13005.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13005.28,13010.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13010.111,13014.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13014.19,13018.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13022.6,13022.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13022.111,13026.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13026.19,13030.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13038.4,13040.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13040.73,13044.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13044.17,13048.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13052.4,13052.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13052.74,13060.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13060.28,13065.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13065.73,13069.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13069.19,13073.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13077.6,13077.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13077.82,13086.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13088.6,13090.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13090.83,13094.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13094.19,13098.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13102.6,13102.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13102.81,13110.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13110.30,13113.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13113.59,13117.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13119.8,13119.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13119.55,13124.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13124.32,13127.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13127.93,13132.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13132.34,13135.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13135.105,13137.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13139.12,13139.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13139.94,13141.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13143.12,13143.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13143.100,13145.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13151.10,13151.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13151.83,13155.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13157.10,13159.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13159.113,13167.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13167.34,13170.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13170.71,13174.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13176.12,13176.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13176.60,13180.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13182.12,13182.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13182.66,13186.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13192.10,13192.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13192.109,13200.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13200.34,13203.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13203.60,13207.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13209.12,13209.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13209.55,13213.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13219.10,13219.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13219.109,13227.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13227.34,13230.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13230.55,13234.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13236.12,13236.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13236.60,13240.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13242.12,13242.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13242.60,13246.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13248.12,13248.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13248.67,13252.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13254.12,13254.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13254.59,13258.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13264.10,13264.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13264.111,13272.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13272.34,13275.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13275.56,13279.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13293.6,13295.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13295.103,13299.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13299.19,13303.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13307.6,13307.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13307.102,13311.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13311.19,13315.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13319.6,13321.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13321.97,13325.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13325.19,13329.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13333.6,13333.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13333.96,13337.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13337.19,13341.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13349.4,13349.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13349.47,13353.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13359.2,13359.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13359.63,13367.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13367.26,13370.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13370.52,13376.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13376.28,13378.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13378.63,13380.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13381.6,13381.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13381.68,13383.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13385.6,13385.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13385.65,13387.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13392.4,13392.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13392.54,13396.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13398.4,13398.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13398.49,13403.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13403.28,13408.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13408.91,13417.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13419.6,13419.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13419.100,13423.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13423.19,13427.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13431.6,13433.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13433.93,13442.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13444.6,13444.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13444.102,13448.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13448.19,13452.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13456.6,13458.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13458.99,13467.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13469.6,13469.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13469.107,13473.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13473.19,13477.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13485.4,13485.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13485.50,13489.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13491.4,13491.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13491.55,13496.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13496.28,13501.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13501.111,13505.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13505.19,13509.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13513.6,13513.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13513.111,13517.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13517.19,13521.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13533.2,13533.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13533.67,13541.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13541.26,13544.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13544.49,13549.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13549.28,13554.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13554.91,13563.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13565.6,13565.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13565.100,13569.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13569.19,13573.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13577.6,13579.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13579.93,13588.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13590.6,13590.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13590.102,13594.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13594.19,13598.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13602.6,13604.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13604.99,13613.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13615.6,13615.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13615.107,13619.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13619.19,13623.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13631.4,13631.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13631.55,13636.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13636.28,13641.111 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13641.111,13645.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13645.19,13649.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13653.6,13653.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13653.111,13657.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13657.19,13661.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13669.4,13669.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13669.52,13673.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13675.4,13675.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13675.60,13680.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13680.28,13683.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13683.97,13688.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13688.30,13691.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13691.101,13693.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13695.8,13695.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13695.90,13697.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13699.8,13699.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13699.96,13701.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13707.6,13707.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13707.87,13711.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13713.6,13715.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13715.117,13723.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13723.30,13726.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13726.67,13730.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13732.8,13732.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13732.56,13736.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13738.8,13738.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13738.62,13742.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13748.6,13748.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13748.113,13756.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13756.30,13759.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13759.56,13763.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13765.8,13765.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13765.51,13769.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13775.6,13775.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13775.113,13783.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13783.30,13786.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13786.51,13790.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13792.8,13792.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13792.56,13796.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13798.8,13798.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13798.56,13802.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13804.8,13804.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13804.63,13808.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13810.8,13810.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13810.55,13814.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13820.6,13820.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13820.115,13828.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13828.30,13831.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13831.52,13835.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13845.4,13847.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13847.73,13851.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13851.17,13855.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13859.4,13859.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13859.74,13867.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13867.28,13872.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13872.73,13876.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13876.19,13880.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13884.6,13884.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13884.82,13893.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13895.6,13897.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13897.83,13901.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13901.19,13905.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13909.6,13909.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13909.81,13917.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13917.30,13920.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13920.59,13924.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13926.8,13926.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13926.55,13931.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13931.32,13934.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13934.93,13939.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13939.34,13942.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13942.105,13944.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13946.12,13946.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13946.94,13948.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13950.12,13950.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13950.100,13952.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13958.10,13958.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13958.83,13962.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13964.10,13966.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13966.113,13974.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13974.34,13977.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13977.71,13981.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13983.12,13983.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13983.60,13987.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13989.12,13989.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13989.66,13993.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13999.10,13999.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13999.109,14007.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14007.34,14010.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14010.60,14014.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14016.12,14016.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14016.55,14020.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14026.10,14026.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14026.109,14034.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14034.34,14037.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14037.55,14041.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14043.12,14043.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14043.60,14047.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14049.12,14049.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14049.60,14053.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14055.12,14055.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14055.67,14059.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14061.12,14061.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14061.59,14065.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14071.10,14071.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14071.111,14079.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14079.34,14082.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14082.56,14086.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14100.6,14102.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14102.103,14106.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14106.19,14110.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14114.6,14114.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14114.102,14118.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14118.19,14122.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14126.6,14128.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14128.97,14132.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14132.19,14136.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14140.6,14140.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14140.96,14144.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14144.19,14148.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14160.2,14160.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14160.71,14168.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14168.26,14171.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14171.47,14176.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14176.28,14179.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14179.86,14184.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14184.30,14187.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14187.101,14189.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14191.8,14191.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14191.90,14193.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14195.8,14195.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14195.96,14197.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14203.6,14203.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14203.76,14207.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14209.6,14211.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14211.106,14219.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14219.30,14222.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14222.67,14226.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14228.8,14228.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14228.56,14232.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14234.8,14234.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14234.62,14238.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14244.6,14244.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14244.102,14252.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14252.30,14255.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14255.56,14259.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14261.8,14261.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14261.51,14265.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14271.6,14271.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14271.102,14279.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14279.30,14282.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14282.51,14286.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14288.8,14288.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14288.56,14292.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14294.8,14294.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14294.56,14298.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14300.8,14300.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14300.63,14304.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14306.8,14306.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14306.55,14310.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14316.6,14316.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14316.104,14324.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14324.30,14327.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14327.52,14331.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14345.2,14348.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14348.16,14350.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14352.2,14352.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14355.94,14361.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14361.16,14362.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14362.55,14366.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14367.3,14367.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14370.2,14371.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:22.53,252.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:255.88,265.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:265.58,269.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:269.48,272.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:273.3,273.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:276.2,276.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:276.58,279.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:281.2,281.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:281.54,284.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:286.2,286.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:286.53,290.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:290.48,293.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:294.3,294.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:297.2,297.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:297.51,300.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:302.2,302.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:302.56,305.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:309.2,311.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:311.71,319.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:319.26,322.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:322.58,326.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:328.4,328.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:328.64,332.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:334.4,334.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:334.61,338.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:340.4,340.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:340.54,344.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:346.4,346.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:346.54,350.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:352.4,352.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:352.51,356.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:362.2,362.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:362.82,366.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:366.15,370.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:374.2,374.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:374.81,382.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:382.26,385.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:385.61,389.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:391.4,391.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:391.56,395.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:401.2,401.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:401.81,409.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:409.26,412.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:412.61,416.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:418.4,418.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:418.56,422.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:428.2,428.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:428.72,436.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:436.26,439.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:439.65,442.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:442.41,444.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:445.5,445.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:449.4,449.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:449.51,452.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:452.50,454.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:455.5,455.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:458.4,460.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:460.85,469.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:471.4,471.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:471.96,475.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:475.17,479.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:483.4,483.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:483.48,487.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:489.4,489.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:489.69,492.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:492.41,494.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:495.5,495.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:499.4,499.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:499.53,503.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:509.2,509.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:509.71,517.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:517.26,520.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:520.61,524.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:526.4,526.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:526.56,530.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:537.2,537.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:537.64,542.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:545.2,545.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:545.55,550.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:553.2,553.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:553.61,558.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:561.2,561.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:561.54,566.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:569.2,569.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:569.66,574.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:576.2,579.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:579.16,581.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:582.2,584.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:587.86,593.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:593.16,594.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:594.55,598.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:599.3,599.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:601.2,601.46 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:604.107,620.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:623.88,632.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:632.58,636.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:636.48,639.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:640.3,640.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:643.2,643.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:643.58,646.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:648.2,648.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:648.54,651.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:653.2,653.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:653.53,657.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:657.48,660.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:661.3,661.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:664.2,664.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:664.51,667.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:669.2,669.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:669.56,672.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:674.2,676.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:676.71,684.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:684.26,687.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:687.58,691.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:693.4,693.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:693.64,697.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:699.4,699.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:699.61,703.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:705.4,705.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:705.54,709.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:711.4,711.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:711.54,715.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:717.4,717.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:717.51,721.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:727.2,727.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:727.82,731.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:731.15,735.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:739.2,739.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:739.81,747.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:747.26,750.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:750.61,754.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:756.4,756.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:756.56,760.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:766.2,766.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:766.81,774.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:774.26,777.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:777.61,781.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:783.4,783.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:783.56,787.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:793.2,793.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:793.72,801.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:801.26,804.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:804.65,807.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:807.41,809.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:810.5,810.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:814.4,814.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:814.51,817.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:817.50,819.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:820.5,820.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:823.4,825.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:825.85,834.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:836.4,836.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:836.96,840.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:840.17,844.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:848.4,848.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:848.48,852.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:854.4,854.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:854.69,857.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:857.41,859.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:860.5,860.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:864.4,864.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:864.53,868.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:874.2,874.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:874.71,882.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:882.26,885.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:885.61,889.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:891.4,891.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:891.56,895.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:901.2,901.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:901.64,906.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:908.2,908.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:908.55,913.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:915.2,915.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:915.61,920.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:922.2,922.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:922.54,927.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:929.2,929.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:929.66,934.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:936.2,939.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:939.16,941.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:943.2,943.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:946.88,952.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:952.16,953.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:953.55,957.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:958.3,958.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:961.2,962.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36.58,14066.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14069.93,14079.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14079.58,14083.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14083.48,14086.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14087.3,14087.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14090.2,14090.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14090.58,14093.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14095.2,14095.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14095.54,14098.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14100.2,14100.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14100.53,14104.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14104.48,14107.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14108.3,14108.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14111.2,14111.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14111.51,14114.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14116.2,14116.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14116.56,14119.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14122.2,14122.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14122.59,14127.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14131.2,14133.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14133.75,14141.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14141.26,14144.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14144.59,14149.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14149.28,14155.105 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14155.105,14163.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14163.30,14166.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14166.58,14171.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14171.32,14174.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14174.70,14176.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14178.10,14178.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14178.75,14180.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14182.10,14182.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14182.72,14184.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14190.8,14190.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14190.50,14194.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14196.8,14196.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14196.52,14200.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14202.8,14202.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14202.55,14207.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14207.32,14210.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14210.68,14212.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14214.10,14214.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14214.73,14216.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14218.10,14218.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14218.70,14220.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14230.6,14230.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14230.94,14238.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14238.30,14241.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14241.56,14245.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14247.8,14247.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14247.56,14251.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14253.8,14253.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14253.55,14258.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14258.32,14261.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14261.68,14263.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14265.10,14265.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14265.73,14267.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14269.10,14269.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14269.70,14271.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14281.6,14281.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14281.91,14289.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14289.30,14292.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14292.50,14296.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14298.8,14298.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14298.52,14302.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14304.8,14304.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14304.55,14308.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14310.8,14310.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14310.52,14315.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14315.32,14318.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14318.65,14320.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14322.10,14322.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14322.70,14324.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14326.10,14326.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14326.67,14328.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14338.6,14338.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14338.99,14346.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14346.30,14349.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14349.50,14353.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14355.8,14355.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14355.52,14359.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14361.8,14361.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14361.55,14366.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14366.32,14369.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14369.68,14371.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14373.10,14373.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14373.73,14375.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14377.10,14377.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14377.70,14379.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14385.8,14385.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14385.52,14390.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14390.32,14393.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14393.65,14395.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14397.10,14397.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14397.70,14399.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14401.10,14401.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14401.67,14403.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14413.6,14413.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14413.102,14421.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14421.30,14426.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14426.87,14430.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14430.21,14434.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14438.8,14438.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14438.88,14447.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14449.8,14451.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14451.82,14455.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14455.21,14459.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14463.8,14463.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14463.83,14472.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14474.8,14474.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14474.63,14479.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14479.32,14482.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14482.75,14484.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14486.10,14486.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14486.80,14488.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14490.10,14490.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14490.77,14492.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14502.6,14502.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14502.99,14510.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14510.30,14513.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14513.55,14517.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14519.8,14519.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14519.60,14524.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14524.32,14527.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14527.72,14529.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14531.10,14531.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14531.77,14533.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14535.10,14535.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14535.74,14537.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14547.6,14547.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14547.107,14555.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14555.30,14558.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14558.50,14562.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14564.8,14564.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14564.52,14568.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14570.8,14570.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14570.55,14575.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14575.32,14578.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14578.68,14580.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14582.10,14582.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14582.73,14584.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14586.10,14586.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14586.70,14588.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14594.8,14594.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14594.60,14599.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14599.32,14602.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14602.72,14604.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14606.10,14606.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14606.77,14608.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14610.10,14610.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14610.74,14612.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14622.6,14622.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14622.99,14630.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14630.30,14635.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14635.72,14643.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14643.32,14646.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14646.54,14650.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14652.10,14652.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14652.59,14656.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14658.10,14658.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14658.56,14662.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14668.8,14668.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14668.80,14676.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14676.32,14679.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14679.54,14683.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14685.10,14685.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14685.59,14689.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14691.10,14691.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14691.56,14695.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14705.6,14707.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14707.95,14716.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14718.6,14718.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14718.107,14722.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14722.19,14726.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14738.2,14738.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14738.78,14746.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14746.26,14749.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14749.53,14754.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14754.28,14757.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14757.65,14759.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14761.6,14761.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14761.70,14763.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14765.6,14765.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14765.67,14767.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14777.2,14777.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14777.90,14781.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14781.15,14785.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14789.2,14789.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14789.75,14793.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14793.15,14797.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14803.2,14805.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14805.77,14813.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14813.26,14816.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14816.48,14820.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14822.4,14822.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14822.53,14826.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14828.4,14828.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14828.50,14832.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14838.2,14838.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14838.78,14846.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14846.26,14849.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14849.59,14854.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14854.27,14859.61 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14859.61,14861.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14863.6,14863.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14863.66,14865.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14867.6,14867.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14867.63,14869.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14879.2,14879.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14879.80,14887.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14887.26,14890.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14890.58,14896.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14896.28,14898.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14898.63,14900.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14901.6,14901.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14901.68,14903.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14905.6,14905.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14905.65,14907.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14912.4,14914.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14914.109,14922.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14922.28,14925.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14925.63,14930.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14930.30,14935.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14935.128,14939.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14939.21,14943.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14947.8,14947.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14947.129,14955.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14955.32,14958.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14958.75,14963.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14963.34,14969.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14969.119,14973.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14973.25,14977.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14981.12,14981.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14981.120,14985.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14985.25,14989.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14993.12,14993.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14993.118,14997.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14997.25,15001.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15005.12,15007.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15007.126,15015.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15015.36,15018.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15018.61,15021.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15021.51,15023.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15024.15,15024.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15028.14,15028.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15028.58,15032.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15038.12,15038.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15038.123,15047.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15049.12,15049.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15049.123,15058.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15060.12,15060.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15060.89,15065.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15065.36,15068.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15068.80,15070.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15072.14,15072.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15072.76,15074.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15076.14,15076.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15076.73,15078.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15096.6,15098.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15098.109,15102.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15102.19,15106.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15110.6,15110.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15110.109,15114.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15114.19,15118.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15122.6,15122.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15122.54,15127.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15127.30,15132.126 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15132.126,15136.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15136.21,15140.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15144.8,15144.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15144.126,15148.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15148.21,15152.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15156.8,15158.144 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15158.144,15166.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15166.32,15169.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15169.57,15174.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15174.34,15179.127 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15179.127,15183.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15183.25,15187.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15191.12,15191.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15191.130,15195.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15195.25,15199.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15207.10,15207.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15207.66,15212.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15212.34,15217.141 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15217.141,15221.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15221.25,15225.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15229.12,15229.144 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15229.144,15233.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15233.25,15237.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15249.8,15249.145 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15249.145,15253.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15253.21,15257.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15265.6,15265.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15265.61,15270.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15270.30,15275.142 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15275.142,15283.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15283.32,15286.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15286.80,15289.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15289.47,15291.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15292.11,15292.137 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15296.10,15298.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15298.106,15302.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15302.23,15306.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15310.10,15310.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15310.107,15314.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15314.23,15318.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15326.8,15326.135 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15326.135,15330.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15330.21,15334.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15338.8,15340.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15340.118,15344.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15344.21,15348.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15352.8,15352.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15352.125,15360.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15360.32,15363.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15363.79,15366.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15366.47,15368.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15369.11,15369.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15373.10,15375.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15375.106,15379.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15379.23,15383.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15387.10,15387.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15387.107,15391.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15391.23,15395.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15411.4,15411.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15411.102,15419.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15419.28,15422.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15422.63,15427.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15427.30,15432.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15432.128,15436.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15436.21,15440.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15444.8,15444.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15444.129,15452.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15452.32,15455.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15455.75,15460.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15460.34,15466.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15466.119,15470.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15470.25,15474.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15478.12,15478.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15478.120,15482.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15482.25,15486.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15490.12,15490.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15490.118,15494.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15494.25,15498.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15502.12,15504.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15504.126,15512.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15512.36,15515.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15515.61,15518.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15518.51,15520.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15521.15,15521.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15525.14,15525.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15525.58,15529.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15535.12,15535.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15535.123,15544.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15546.12,15546.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15546.123,15555.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15557.12,15557.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15557.89,15562.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15562.36,15565.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15565.80,15567.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15569.14,15569.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15569.76,15571.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15573.14,15573.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15573.73,15575.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15593.6,15593.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15593.71,15598.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15598.30,15604.122 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15604.122,15612.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15612.32,15615.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15615.57,15618.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15618.47,15620.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15621.11,15621.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15625.10,15625.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15625.54,15629.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15635.8,15635.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15635.119,15644.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15646.8,15646.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15646.119,15655.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15657.8,15659.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15659.113,15663.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15663.21,15667.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15671.8,15671.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15671.118,15680.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15682.8,15682.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15682.85,15687.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15687.32,15690.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15690.76,15692.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15694.10,15694.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15694.72,15696.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15698.10,15698.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15698.69,15700.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15706.8,15706.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15706.92,15711.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15711.32,15716.144 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15716.144,15724.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15724.34,15727.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15727.82,15730.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15730.49,15732.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15733.13,15733.139 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15737.12,15739.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15739.108,15743.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15743.25,15747.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15751.12,15751.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15751.109,15755.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15755.25,15759.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15767.10,15767.137 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15767.137,15771.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15771.23,15775.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15779.10,15781.120 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15781.120,15785.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15785.23,15789.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15793.10,15793.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15793.127,15801.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15801.34,15804.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15804.81,15807.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15807.49,15809.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15810.13,15810.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15814.12,15816.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15816.108,15820.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15820.25,15824.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15828.12,15828.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15828.109,15832.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15832.25,15836.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15852.6,15854.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15854.109,15858.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15858.19,15862.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15866.6,15866.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15866.109,15870.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15870.19,15874.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15878.6,15878.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15878.54,15883.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15883.30,15888.126 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15888.126,15892.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15892.21,15896.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15900.8,15900.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15900.126,15904.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15904.21,15908.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15912.8,15914.144 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15914.144,15922.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15922.32,15925.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15925.57,15930.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15930.34,15935.127 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15935.127,15939.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15939.25,15943.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15947.12,15947.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15947.130,15951.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15951.25,15955.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15963.10,15963.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15963.66,15968.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15968.34,15973.141 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15973.141,15977.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15977.25,15981.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15985.12,15985.144 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15985.144,15989.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15989.25,15993.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16005.8,16005.145 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16005.145,16009.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16009.21,16013.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16025.4,16025.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16025.99,16029.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16029.17,16033.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16041.2,16041.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16041.85,16045.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16045.15,16049.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16055.2,16057.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16057.83,16061.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16061.15,16065.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16069.2,16069.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16069.82,16077.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16077.26,16080.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16080.67,16085.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16085.28,16088.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16088.117,16090.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16096.4,16098.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16098.117,16102.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16102.17,16106.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16110.4,16110.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16110.116,16114.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16114.17,16118.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16122.4,16122.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16122.74,16127.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16127.28,16130.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16130.117,16135.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16135.30,16139.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16139.96,16144.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16144.32,16147.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16147.76,16149.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16151.10,16151.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16151.72,16153.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16155.10,16155.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16155.69,16157.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16163.8,16163.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16163.119,16168.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16168.32,16173.121 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16173.121,16177.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16177.23,16181.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16185.10,16185.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16185.126,16194.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16196.10,16198.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16198.123,16206.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16206.34,16211.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16211.87,16220.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16222.12,16222.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16222.87,16231.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16237.10,16237.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16237.129,16245.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16245.34,16248.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16248.63,16253.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16253.36,16258.106 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16258.106,16267.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16269.14,16269.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16269.106,16278.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16284.12,16284.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16284.65,16289.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16289.36,16294.110 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16294.110,16303.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16305.14,16305.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16305.110,16314.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16324.10,16324.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16324.125,16332.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16332.34,16337.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16337.89,16346.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16348.12,16348.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16348.89,16357.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16363.10,16365.132 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16365.132,16369.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16369.23,16373.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16377.10,16377.133 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16377.133,16381.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16381.23,16385.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16389.10,16389.124 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16389.124,16393.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16393.23,16397.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16401.10,16401.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16401.127,16409.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16409.34,16412.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16412.67,16415.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16415.49,16417.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16418.13,16418.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16426.10,16428.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16428.121,16432.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16432.23,16436.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16440.10,16440.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16440.130,16448.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16448.34,16451.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16451.69,16455.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16457.12,16457.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16457.59,16460.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16460.49,16462.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16463.13,16463.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16471.10,16471.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16471.120,16480.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16482.10,16482.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16482.120,16491.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16497.8,16497.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16497.107,16502.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16502.32,16505.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16505.78,16507.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16517.6,16517.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16517.103,16522.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16522.30,16526.79 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16526.79,16528.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16543.2,16543.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16543.67,16548.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16548.26,16551.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16551.87,16556.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16556.28,16560.75 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16560.75,16565.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16565.30,16570.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16570.86,16574.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16574.21,16578.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16582.8,16582.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16582.85,16586.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16586.21,16590.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16598.6,16598.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16598.88,16603.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16603.30,16606.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16606.86,16608.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16610.8,16610.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16610.79,16613.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16613.45,16615.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16616.9,16616.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16624.6,16624.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16624.86,16626.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16628.6,16628.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16628.83,16633.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16633.30,16638.104 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16638.104,16642.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16642.21,16646.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16650.8,16650.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16650.109,16658.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16658.32,16661.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16661.61,16664.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16664.47,16666.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16667.11,16667.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16675.8,16675.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16675.117,16683.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16683.32,16686.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16686.70,16689.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16689.47,16691.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16692.11,16692.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16700.8,16702.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16702.99,16706.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16706.21,16710.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16714.8,16714.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16714.101,16722.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16722.32,16725.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16725.60,16728.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16728.47,16730.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16731.11,16731.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16739.8,16739.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16739.104,16747.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16747.32,16750.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16750.58,16755.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16755.33,16762.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16762.67,16764.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16766.12,16766.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16766.72,16768.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16770.12,16770.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16770.69,16772.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16774.12,16774.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16774.66,16776.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16786.8,16786.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16786.103,16794.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16794.32,16797.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16797.64,16801.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16803.10,16803.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16803.61,16808.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16808.33,16815.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16815.67,16817.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16819.12,16819.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16819.72,16821.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16823.12,16823.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16823.69,16825.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16827.12,16827.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16827.66,16829.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16839.8,16839.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16839.107,16847.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16847.32,16850.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16850.62,16854.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16856.10,16856.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16856.61,16859.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16859.47,16861.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16862.11,16862.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16866.10,16866.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16866.63,16869.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16869.47,16871.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16872.11,16872.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16880.8,16880.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16880.91,16885.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16885.32,16888.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16888.85,16891.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16891.47,16893.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16894.11,16894.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16898.10,16898.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16898.90,16900.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16900.47,16902.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16903.11,16903.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16906.10,16906.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16906.93,16908.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16908.47,16910.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16911.11,16911.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16922.6,16924.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16924.105,16928.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16928.19,16932.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16936.6,16936.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16936.110,16945.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16947.6,16947.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16947.77,16952.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16952.30,16955.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16955.74,16957.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16959.8,16959.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16959.70,16961.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16963.8,16963.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16963.67,16965.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16971.6,16971.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16971.84,16976.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16976.30,16979.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16979.84,16984.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16984.32,16988.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16988.85,16990.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16992.10,16994.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16994.107,16998.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16998.23,17002.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17006.10,17006.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17006.103,17010.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17010.23,17014.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17018.10,17018.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17018.94,17026.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17026.34,17029.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17029.64,17032.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17032.49,17034.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17035.13,17035.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17039.12,17039.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17039.64,17042.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17042.49,17044.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17045.13,17045.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17049.12,17049.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17049.64,17052.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17052.49,17054.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17055.13,17055.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17063.10,17063.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17063.98,17072.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17074.10,17074.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17074.75,17076.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17082.8,17082.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17082.76,17087.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17087.32,17091.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17091.78,17093.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17095.10,17097.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17097.100,17101.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17101.23,17105.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17109.10,17109.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17109.96,17113.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17113.23,17117.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17121.10,17121.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17121.87,17129.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17129.34,17132.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17132.64,17135.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17135.49,17137.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17138.13,17138.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17142.12,17142.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17142.64,17145.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17145.49,17147.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17148.13,17148.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17152.12,17152.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17152.64,17155.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17155.49,17157.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17158.13,17158.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17166.10,17166.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17166.91,17175.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17177.10,17177.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17177.68,17179.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17185.8,17185.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17185.81,17190.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17190.32,17194.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17194.82,17196.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17198.10,17198.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17198.71,17200.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17202.10,17204.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17204.104,17208.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17208.23,17212.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17216.10,17216.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17216.100,17220.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17220.23,17224.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17228.10,17228.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17228.91,17236.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17236.34,17239.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17239.64,17242.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17242.49,17244.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17245.13,17245.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17249.12,17249.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17249.64,17252.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17252.49,17254.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17255.13,17255.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17259.12,17259.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17259.64,17262.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17262.49,17264.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17265.13,17265.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17273.10,17273.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17273.95,17282.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17296.4,17296.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17296.85,17301.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17301.28,17305.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17305.73,17310.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17310.30,17315.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17315.86,17319.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17319.21,17323.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17327.8,17327.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17327.85,17331.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17331.21,17335.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17343.6,17343.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17343.76,17345.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17347.6,17347.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17347.76,17349.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17351.6,17351.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17351.81,17356.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17356.30,17361.104 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17361.104,17365.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17365.21,17369.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17373.8,17373.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17373.109,17381.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17381.32,17384.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17384.61,17387.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17387.47,17389.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17390.11,17390.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17398.8,17398.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17398.117,17406.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17406.32,17409.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17409.70,17412.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17412.47,17414.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17415.11,17415.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17423.8,17425.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17425.99,17429.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17429.21,17433.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17437.8,17437.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17437.101,17445.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17445.32,17448.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17448.60,17451.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17451.47,17453.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17454.11,17454.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17462.8,17462.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17462.104,17470.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17470.32,17473.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17473.58,17478.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17478.33,17485.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17485.67,17487.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17489.12,17489.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17489.72,17491.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17493.12,17493.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17493.69,17495.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17497.12,17497.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17497.66,17499.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17509.8,17509.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17509.103,17517.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17517.32,17520.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17520.64,17524.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17526.10,17526.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17526.61,17531.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17531.33,17538.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17538.67,17540.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17542.12,17542.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17542.72,17544.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17546.12,17546.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17546.69,17548.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17550.12,17550.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17550.66,17552.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17562.8,17562.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17562.107,17570.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17570.32,17573.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17573.62,17577.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17579.10,17579.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17579.61,17582.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17582.47,17584.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17585.11,17585.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17589.10,17589.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17589.63,17592.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17592.47,17594.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17595.11,17595.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17603.8,17603.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17603.91,17608.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17608.32,17611.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17611.85,17614.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17614.47,17616.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17617.11,17617.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17621.10,17621.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17621.90,17623.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17623.47,17625.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17626.11,17626.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17629.10,17629.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17629.93,17631.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17631.47,17633.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17634.11,17634.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17645.6,17647.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17647.103,17651.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17651.19,17655.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17659.6,17659.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17659.108,17668.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17670.6,17670.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17670.75,17675.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17675.30,17678.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17678.74,17680.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17682.8,17682.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17682.70,17684.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17686.8,17686.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17686.67,17688.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17694.6,17694.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17694.82,17699.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17699.30,17702.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17702.84,17707.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17707.32,17711.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17711.85,17713.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17715.10,17717.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17717.107,17721.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17721.23,17725.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17729.10,17729.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17729.103,17733.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17733.23,17737.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17741.10,17741.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17741.94,17749.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17749.34,17752.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17752.64,17755.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17755.49,17757.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17758.13,17758.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17762.12,17762.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17762.64,17765.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17765.49,17767.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17768.13,17768.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17772.12,17772.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17772.64,17775.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17775.49,17777.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17778.13,17778.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17786.10,17786.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17786.98,17795.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17797.10,17797.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17797.75,17799.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17805.8,17805.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17805.76,17810.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17810.32,17814.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17814.78,17816.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17818.10,17820.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17820.100,17824.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17824.23,17828.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17832.10,17832.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17832.96,17836.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17836.23,17840.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17844.10,17844.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17844.87,17852.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17852.34,17855.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17855.64,17858.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17858.49,17860.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17861.13,17861.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17865.12,17865.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17865.64,17868.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17868.49,17870.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17871.13,17871.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17875.12,17875.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17875.64,17878.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17878.49,17880.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17881.13,17881.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17889.10,17889.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17889.91,17898.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17900.10,17900.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17900.68,17902.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17908.8,17908.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17908.81,17913.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17913.32,17917.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17917.82,17919.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17921.10,17921.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17921.71,17923.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17925.10,17927.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17927.104,17931.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17931.23,17935.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17939.10,17939.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17939.100,17943.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17943.23,17947.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17951.10,17951.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17951.91,17959.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17959.34,17962.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17962.64,17965.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17965.49,17967.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17968.13,17968.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17972.12,17972.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17972.64,17975.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17975.49,17977.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17978.13,17978.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17982.12,17982.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17982.64,17985.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17985.49,17987.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17988.13,17988.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17996.10,17996.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17996.95,18005.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18024.2,18024.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18024.62,18029.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18029.26,18035.110 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18035.110,18039.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18039.17,18043.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18047.4,18047.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18047.106,18051.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18051.17,18055.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18059.4,18059.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18059.110,18063.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18063.17,18067.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18071.4,18071.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18071.72,18074.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18074.41,18076.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18077.5,18077.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18081.4,18083.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18083.106,18092.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18094.4,18094.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18094.108,18102.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18102.28,18105.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18105.53,18110.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18110.30,18114.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18114.74,18116.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18118.8,18118.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18118.66,18120.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18122.8,18124.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18124.91,18133.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18135.8,18135.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18135.94,18144.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18146.8,18146.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18146.91,18155.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18165.4,18165.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18165.106,18174.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18176.4,18176.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18176.112,18185.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18187.4,18187.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18187.85,18189.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18189.19,18191.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18192.5,18192.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18195.4,18195.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18195.73,18200.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18200.28,18203.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18203.72,18205.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18207.6,18207.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18207.68,18209.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18211.6,18211.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18211.65,18213.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18225.2,18227.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18227.71,18235.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18235.26,18240.95 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18240.95,18244.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18244.17,18248.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18252.4,18252.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18252.94,18256.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18256.17,18260.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18264.4,18264.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18264.50,18269.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18269.28,18274.106 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18274.106,18278.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18278.19,18282.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18286.6,18286.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18286.108,18294.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18294.30,18297.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18297.67,18301.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18307.6,18307.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18307.115,18315.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18315.30,18318.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18318.60,18323.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18323.32,18329.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18329.111,18333.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18333.23,18337.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18341.10,18341.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18341.107,18349.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18349.34,18354.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18354.89,18363.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18365.12,18365.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18365.89,18374.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18376.12,18376.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18376.90,18385.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18391.10,18391.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18391.76,18396.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18396.34,18399.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18399.78,18401.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18403.12,18403.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18403.74,18405.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18407.12,18407.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18407.71,18409.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18415.10,18415.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18415.72,18420.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18420.34,18425.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18425.90,18434.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18436.12,18436.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18436.92,18445.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18447.12,18447.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18447.91,18456.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18466.8,18466.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18466.67,18470.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18476.6,18476.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18476.107,18484.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18484.30,18487.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18487.60,18492.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18492.32,18498.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18498.111,18502.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18502.23,18506.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18510.10,18510.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18510.107,18518.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18518.34,18523.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18523.89,18532.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18534.12,18534.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18534.89,18543.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18545.12,18545.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18545.90,18554.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18560.10,18560.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18560.76,18565.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18565.34,18568.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18568.78,18570.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18572.12,18572.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18572.74,18574.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18576.12,18576.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18576.71,18578.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18584.10,18584.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18584.72,18589.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18589.34,18594.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18594.90,18603.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18605.12,18605.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18605.92,18614.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18616.12,18616.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18616.91,18625.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18635.8,18635.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18635.53,18640.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18640.32,18646.105 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18646.105,18650.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18650.23,18654.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18658.10,18658.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18658.101,18666.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18666.34,18671.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18671.89,18680.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18682.12,18682.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18682.89,18691.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18693.12,18693.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18693.90,18702.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18708.10,18708.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18708.81,18712.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18714.10,18714.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18714.70,18719.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18719.34,18722.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18722.78,18724.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18726.12,18726.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18726.74,18728.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18730.12,18730.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18730.71,18732.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18738.10,18738.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18738.66,18743.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18743.34,18748.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18748.90,18757.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18759.12,18759.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18759.92,18768.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18770.12,18770.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18770.91,18779.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18793.6,18793.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18793.74,18797.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18799.6,18799.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18799.75,18801.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18803.6,18805.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18805.106,18809.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18809.19,18813.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18817.6,18817.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18817.105,18825.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18825.30,18828.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18828.65,18833.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18833.32,18836.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18836.80,18841.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18841.34,18847.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18847.102,18851.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18851.25,18855.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18859.12,18859.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18859.98,18863.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18863.25,18867.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18871.12,18871.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18871.89,18879.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18879.36,18882.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18882.66,18885.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18885.51,18887.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18888.15,18888.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18892.14,18892.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18892.66,18895.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18895.51,18897.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18898.15,18898.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18902.14,18902.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18902.66,18905.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18905.51,18907.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18908.15,18908.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18916.12,18916.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18916.70,18918.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18928.8,18928.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18928.66,18932.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18938.6,18938.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18938.82,18943.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18943.30,18949.116 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18949.116,18953.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18953.21,18957.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18961.8,18961.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18961.113,18965.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18965.21,18969.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18973.8,18973.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18973.120,18981.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18981.32,18984.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18984.56,18989.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18989.34,18994.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18994.101,18998.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18998.25,19002.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19006.12,19006.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19006.97,19010.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19010.25,19014.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19018.12,19018.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19018.88,19026.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19026.36,19029.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19029.66,19032.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19032.51,19034.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19035.15,19035.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19039.14,19039.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19039.66,19042.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19042.51,19044.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19045.15,19045.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19049.14,19049.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19049.66,19052.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19052.51,19054.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19055.15,19055.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19063.12,19063.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19063.69,19065.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19071.10,19071.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19071.57,19076.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19076.34,19082.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19082.102,19086.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19086.25,19090.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19094.12,19094.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19094.98,19098.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19098.25,19102.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19106.12,19106.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19106.89,19114.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19114.36,19117.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19117.66,19120.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19120.51,19122.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19123.15,19123.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19127.14,19127.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19127.66,19130.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19130.51,19132.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19133.15,19133.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19137.14,19137.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19137.66,19140.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19140.51,19142.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19143.15,19143.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19151.12,19151.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19151.70,19153.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19159.10,19159.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19159.67,19163.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19169.8,19171.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19171.119,19175.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19175.21,19179.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19183.8,19183.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19183.115,19191.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19191.32,19196.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19196.87,19205.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19207.10,19207.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19207.87,19216.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19218.10,19218.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19218.88,19227.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19233.8,19235.115 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19235.115,19243.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19243.32,19248.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19248.97,19256.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19256.34,19261.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19261.83,19265.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19265.25,19269.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19273.12,19273.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19273.91,19277.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19277.25,19281.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19289.10,19289.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19289.93,19297.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19297.34,19302.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19302.82,19310.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19310.36,19315.117 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19315.117,19319.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19319.27,19323.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19327.14,19327.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19327.109,19335.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19335.38,19338.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19338.74,19343.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19343.40,19347.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19347.86,19349.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19351.18,19351.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19351.94,19353.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19353.55,19355.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19356.19,19356.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19359.18,19359.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19359.88,19363.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19369.16,19369.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19369.74,19374.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19374.40,19378.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19378.86,19380.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19382.18,19382.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19382.94,19384.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19384.55,19386.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19387.19,19387.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19390.18,19390.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19390.88,19394.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19408.12,19408.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19408.86,19412.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19412.25,19416.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19420.12,19420.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19420.90,19424.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19424.25,19428.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19432.12,19432.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19432.83,19436.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19436.25,19440.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19444.12,19444.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19444.90,19448.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19448.25,19452.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19460.10,19460.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19460.97,19468.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19468.34,19473.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19473.82,19477.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19477.25,19481.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19485.12,19485.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19485.91,19489.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19489.25,19493.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19501.10,19501.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19501.85,19509.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19509.34,19514.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19514.84,19518.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19518.25,19522.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19530.10,19530.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19530.97,19538.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19538.34,19543.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19543.83,19547.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19547.25,19551.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19555.12,19555.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19555.83,19559.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19559.25,19563.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19567.12,19567.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19567.81,19571.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19571.25,19575.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19583.10,19583.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19583.85,19591.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19591.34,19596.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19596.90,19600.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19600.25,19604.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19608.12,19608.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19608.91,19612.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19612.25,19616.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19620.12,19620.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19620.95,19624.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19624.25,19628.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19632.12,19632.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19632.88,19636.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19636.25,19640.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19648.10,19648.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19648.98,19656.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19656.34,19661.115 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19661.115,19665.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19665.25,19669.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19673.12,19673.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19673.97,19677.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19677.25,19681.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19685.12,19685.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19685.93,19689.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19689.25,19693.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19697.12,19697.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19697.90,19701.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19701.25,19705.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19709.12,19709.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19709.93,19713.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19713.25,19717.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19721.12,19721.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19721.106,19725.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19725.25,19729.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19733.12,19733.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19733.94,19737.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19737.25,19741.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19745.12,19745.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19745.87,19749.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19749.25,19753.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19757.12,19757.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19757.95,19761.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19761.25,19765.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19769.12,19769.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19769.103,19773.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19773.25,19777.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19781.12,19781.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19781.100,19785.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19785.25,19789.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19793.12,19793.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19793.97,19797.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19797.25,19801.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19813.8,19813.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19813.125,19817.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19817.21,19821.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19825.8,19827.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19827.118,19831.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19831.21,19835.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19839.8,19839.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19839.121,19843.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19843.21,19847.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19851.8,19851.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19851.88,19854.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19854.45,19856.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19857.9,19857.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19861.8,19861.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19861.84,19866.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19866.32,19869.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19869.76,19871.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19873.10,19873.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19873.72,19875.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19877.10,19877.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19877.69,19879.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19885.8,19885.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19885.86,19890.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19890.32,19895.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19895.96,19903.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19903.34,19906.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19906.56,19910.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19912.12,19912.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19912.61,19916.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19918.12,19918.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19918.58,19922.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19928.10,19928.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19928.95,19936.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19936.34,19941.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19941.97,19949.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19949.36,19952.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19952.75,19956.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19958.14,19958.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19958.75,19962.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19968.12,19968.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19968.93,19972.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19972.25,19976.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19984.10,19984.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19984.95,19988.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19988.23,19992.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19996.10,19996.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19996.99,20004.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20004.34,20007.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20007.55,20011.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20021.8,20021.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20021.80,20026.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20026.32,20031.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20031.88,20040.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20042.10,20042.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20042.90,20051.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20053.10,20053.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20053.89,20062.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20068.8,20068.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20068.84,20072.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20082.4,20082.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20082.61,20086.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20088.4,20088.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20088.51,20092.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20098.2,20098.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20098.80,20106.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20106.26,20109.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20109.50,20115.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20115.28,20117.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20117.62,20119.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20120.6,20120.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20120.67,20122.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20124.6,20124.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20124.64,20126.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20131.4,20131.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20131.50,20136.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20136.28,20139.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20139.75,20141.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20143.6,20145.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20145.106,20149.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20149.19,20153.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20157.6,20157.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20157.105,20165.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20165.30,20168.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20168.65,20173.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20173.32,20176.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20176.80,20181.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20181.34,20187.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20187.102,20191.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20191.25,20195.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20199.12,20199.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20199.98,20203.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20203.25,20207.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20211.12,20211.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20211.89,20219.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20219.36,20222.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20222.66,20225.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20225.51,20227.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20228.15,20228.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20232.14,20232.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20232.66,20235.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20235.51,20237.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20238.15,20238.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20242.14,20242.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20242.66,20245.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20245.51,20247.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20248.15,20248.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20256.12,20256.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20256.70,20258.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20272.6,20272.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20272.82,20277.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20277.30,20283.123 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20283.123,20287.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20287.21,20291.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20295.8,20295.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20295.120,20299.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20299.21,20303.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20307.8,20307.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20307.127,20315.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20315.32,20318.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20318.56,20323.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20323.34,20328.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20328.101,20332.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20332.25,20336.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20340.12,20340.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20340.97,20344.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20344.25,20348.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20352.12,20352.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20352.88,20360.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20360.36,20363.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20363.66,20366.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20366.51,20368.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20369.15,20369.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20373.14,20373.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20373.66,20376.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20376.51,20378.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20379.15,20379.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20383.14,20383.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20383.66,20386.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20386.51,20388.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20389.15,20389.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20397.12,20397.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20397.69,20399.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20405.10,20405.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20405.57,20410.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20410.34,20416.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20416.102,20420.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20420.25,20424.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20428.12,20428.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20428.98,20432.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20432.25,20436.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20440.12,20440.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20440.89,20448.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20448.36,20451.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20451.66,20454.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20454.51,20456.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20457.15,20457.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20461.14,20461.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20461.66,20464.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20464.51,20466.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20467.15,20467.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20471.14,20471.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20471.66,20474.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20474.51,20476.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20477.15,20477.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20485.12,20485.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20485.70,20487.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20493.10,20493.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20493.67,20497.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20503.8,20505.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20505.119,20509.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20509.21,20513.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20517.8,20517.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20517.115,20525.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20525.32,20530.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20530.87,20539.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20541.10,20541.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20541.87,20550.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20552.10,20552.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20552.88,20561.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20567.8,20569.115 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20569.115,20577.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20577.32,20582.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20582.97,20590.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20590.34,20595.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20595.83,20599.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20599.25,20603.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20607.12,20607.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20607.91,20611.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20611.25,20615.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20623.10,20623.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20623.93,20631.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20631.34,20636.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20636.82,20644.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20644.36,20649.117 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20649.117,20653.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20653.27,20657.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20661.14,20661.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20661.109,20669.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20669.38,20672.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20672.74,20677.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20677.40,20681.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20681.86,20683.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20685.18,20685.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20685.94,20687.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20687.55,20689.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20690.19,20690.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20693.18,20693.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20693.88,20697.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20703.16,20703.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20703.74,20708.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20708.40,20712.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20712.86,20714.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20716.18,20716.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20716.94,20718.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20718.55,20720.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20721.19,20721.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20724.18,20724.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20724.88,20728.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20742.12,20742.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20742.86,20746.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20746.25,20750.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20754.12,20754.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20754.90,20758.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20758.25,20762.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20766.12,20766.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20766.83,20770.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20770.25,20774.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20778.12,20778.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20778.90,20782.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20782.25,20786.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20794.10,20794.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20794.97,20802.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20802.34,20807.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20807.82,20811.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20811.25,20815.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20819.12,20819.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20819.91,20823.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20823.25,20827.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20835.10,20835.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20835.85,20843.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20843.34,20848.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20848.84,20852.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20852.25,20856.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20864.10,20864.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20864.97,20872.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20872.34,20877.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20877.83,20881.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20881.25,20885.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20889.12,20889.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20889.83,20893.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20893.25,20897.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20901.12,20901.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20901.81,20905.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20905.25,20909.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20917.10,20917.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20917.85,20925.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20925.34,20930.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20930.90,20934.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20934.25,20938.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20942.12,20942.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20942.91,20946.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20946.25,20950.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20954.12,20954.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20954.95,20958.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20958.25,20962.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20966.12,20966.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20966.88,20970.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20970.25,20974.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20982.10,20982.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20982.98,20990.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20990.34,20995.115 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20995.115,20999.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20999.25,21003.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21007.12,21007.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21007.97,21011.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21011.25,21015.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21019.12,21019.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21019.93,21023.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21023.25,21027.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21031.12,21031.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21031.90,21035.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21035.25,21039.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21043.12,21043.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21043.93,21047.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21047.25,21051.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21055.12,21055.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21055.106,21059.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21059.25,21063.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21067.12,21067.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21067.94,21071.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21071.25,21075.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21079.12,21079.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21079.87,21083.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21083.25,21087.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21091.12,21091.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21091.95,21095.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21095.25,21099.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21103.12,21103.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21103.103,21107.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21107.25,21111.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21115.12,21115.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21115.100,21119.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21119.25,21123.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21127.12,21127.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21127.97,21131.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21131.25,21135.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21147.8,21147.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21147.125,21151.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21151.21,21155.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21159.8,21159.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21159.88,21162.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21162.45,21164.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21165.9,21165.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21169.8,21169.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21169.84,21174.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21174.32,21177.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21177.76,21179.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21181.10,21181.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21181.72,21183.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21185.10,21185.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21185.69,21187.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21193.8,21193.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21193.80,21198.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21198.32,21203.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21203.88,21212.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21214.10,21214.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21214.90,21223.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21225.10,21225.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21225.89,21234.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21240.8,21240.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21240.81,21245.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21245.32,21249.66 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21249.66,21251.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21253.10,21255.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21255.99,21259.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21259.23,21263.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21267.10,21267.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21267.96,21276.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21278.10,21278.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21278.96,21287.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21293.8,21293.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21293.88,21298.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21298.32,21302.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21302.72,21304.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21306.10,21308.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21308.102,21317.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21319.10,21319.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21319.102,21328.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21342.4,21342.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21342.47,21348.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21348.28,21350.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21350.62,21352.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21353.6,21353.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21353.67,21355.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21357.6,21357.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21357.64,21359.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21368.2,21368.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21368.79,21372.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21372.15,21376.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21382.2,21384.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21384.74,21392.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21392.26,21395.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21395.57,21399.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21401.4,21401.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21401.55,21405.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21411.2,21411.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21411.73,21419.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21419.26,21424.118 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21424.118,21432.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21432.28,21435.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21435.59,21439.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21441.6,21441.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21441.57,21445.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21451.4,21451.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21451.126,21455.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21455.17,21459.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21463.4,21465.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21465.116,21469.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21469.17,21473.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21477.4,21477.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21477.108,21485.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21485.28,21488.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21488.59,21492.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21494.6,21494.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21494.57,21498.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21500.6,21500.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21500.61,21504.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21510.4,21512.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21512.114,21516.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21516.17,21520.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21524.4,21524.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21524.112,21532.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21532.28,21535.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21535.50,21539.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21541.6,21541.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21541.55,21545.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21547.6,21547.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21547.52,21551.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21561.2,21561.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21561.69,21569.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21569.26,21572.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21572.57,21576.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21578.4,21578.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21578.55,21582.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21584.4,21584.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21584.59,21588.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21594.2,21594.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21594.69,21598.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21598.15,21602.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21606.2,21606.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21606.79,21614.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21614.26,21619.118 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21619.118,21627.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21627.28,21630.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21630.59,21634.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21636.6,21636.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21636.57,21640.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21646.4,21646.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21646.126,21650.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21650.17,21654.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21658.4,21660.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21660.104,21664.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21664.17,21668.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21672.4,21672.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21672.99,21676.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21676.17,21680.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21684.4,21684.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21684.85,21688.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21688.17,21692.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21696.4,21698.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21698.116,21702.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21702.17,21706.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21710.4,21710.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21710.108,21718.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21718.28,21721.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21721.59,21725.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21727.6,21727.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21727.57,21731.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21733.6,21733.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21733.61,21737.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21743.4,21745.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21745.114,21749.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21749.17,21753.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21757.4,21757.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21757.112,21765.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21765.28,21768.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21768.50,21772.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21774.6,21774.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21774.55,21778.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21780.6,21780.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21780.52,21784.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21790.4,21790.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21790.53,21795.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21795.28,21798.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21798.66,21803.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21803.30,21807.68 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21807.68,21812.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21812.32,21815.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21815.76,21817.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21819.10,21819.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21819.72,21821.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21823.10,21823.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21823.69,21825.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21831.8,21831.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21831.64,21836.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21836.32,21839.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21839.73,21844.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21844.34,21848.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21848.84,21850.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21852.12,21854.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21854.106,21858.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21858.25,21862.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21866.12,21866.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21866.102,21870.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21870.25,21874.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21878.12,21878.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21878.93,21886.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21886.36,21889.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21889.66,21892.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21892.51,21894.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21895.15,21895.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21899.14,21899.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21899.66,21902.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21902.51,21904.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21905.15,21905.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21909.14,21909.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21909.66,21912.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21912.51,21914.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21915.15,21915.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21923.12,21923.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21923.97,21932.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21934.12,21934.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21934.74,21936.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21942.10,21944.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21944.91,21948.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21948.23,21952.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21956.10,21956.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21956.92,21964.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21964.34,21967.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21967.62,21970.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21970.49,21972.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21973.13,21973.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21981.10,21981.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21981.95,21989.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21989.34,21992.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21992.60,21997.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21997.35,22004.69 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22004.69,22006.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22008.14,22008.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22008.74,22010.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22012.14,22012.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22012.71,22014.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22016.14,22016.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22016.68,22018.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22028.10,22028.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22028.73,22033.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22033.34,22036.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22036.82,22038.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22038.49,22040.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22041.13,22041.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22044.12,22044.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22044.82,22046.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22046.49,22048.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22049.13,22049.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22052.12,22052.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22052.82,22055.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22055.49,22057.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22058.13,22058.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22066.10,22068.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22068.107,22072.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22072.23,22076.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22080.10,22080.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22080.114,22084.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22084.23,22088.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22092.10,22092.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22092.117,22096.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22096.23,22100.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22104.10,22106.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22106.97,22110.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22110.23,22114.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22118.10,22118.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22118.98,22127.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22129.10,22129.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22129.106,22137.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22137.34,22140.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22140.64,22143.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22143.49,22145.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22146.13,22146.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22150.12,22150.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22150.64,22153.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22153.49,22155.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22156.13,22156.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22160.12,22160.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22160.64,22163.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22163.49,22165.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22166.13,22166.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22174.10,22174.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22174.102,22182.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22182.34,22185.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22185.63,22188.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22188.49,22190.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22191.13,22191.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22199.10,22199.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22199.76,22204.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22204.34,22208.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22208.87,22210.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22212.12,22214.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22214.109,22218.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22218.25,22222.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22226.12,22226.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22226.105,22230.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22230.25,22234.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22238.12,22238.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22238.96,22246.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22246.36,22249.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22249.66,22252.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22252.51,22254.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22255.15,22255.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22259.14,22259.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22259.66,22262.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22262.51,22264.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22265.15,22265.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22269.14,22269.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22269.66,22272.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22272.51,22274.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22275.15,22275.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22283.12,22283.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22283.100,22292.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22294.12,22294.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22294.77,22296.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22302.10,22302.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22302.75,22307.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22307.34,22310.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22310.84,22312.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22312.49,22314.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22315.13,22315.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22318.12,22318.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22318.84,22320.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22320.49,22322.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22323.13,22323.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22330.10,22330.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22330.81,22332.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22332.25,22334.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22335.11,22335.40 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22338.10,22338.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22338.68,22343.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22343.34,22347.80 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22347.80,22349.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22351.12,22353.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22353.102,22357.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22357.25,22361.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22365.12,22365.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22365.98,22369.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22369.25,22373.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22377.12,22377.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22377.89,22385.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22385.36,22388.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22388.66,22391.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22391.51,22393.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22394.15,22394.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22398.14,22398.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22398.66,22401.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22401.51,22403.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22404.15,22404.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22408.14,22408.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22408.66,22411.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22411.51,22413.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22414.15,22414.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22422.12,22422.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22422.93,22431.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22433.12,22433.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22433.70,22435.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22441.10,22441.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22441.72,22446.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22446.34,22449.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22449.83,22451.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22453.12,22453.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22453.76,22456.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22456.49,22458.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22459.13,22459.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22467.10,22469.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22469.89,22473.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22473.23,22477.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22481.10,22481.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22481.93,22489.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22489.34,22492.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22492.66,22496.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22498.12,22498.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22498.63,22503.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22503.35,22510.69 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22510.69,22512.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22514.14,22514.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22514.74,22516.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22518.14,22518.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22518.71,22520.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22522.14,22522.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22522.68,22524.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22534.10,22534.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22534.97,22542.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22542.34,22545.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22545.64,22549.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22551.12,22551.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22551.63,22554.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22554.49,22556.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22557.13,22557.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22561.12,22561.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22561.65,22564.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22564.49,22566.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22567.13,22567.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22575.10,22575.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22575.65,22580.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22580.34,22583.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22583.75,22585.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22585.49,22587.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22588.13,22588.34 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22591.12,22591.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22591.76,22593.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22593.49,22595.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22596.13,22596.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22599.12,22599.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22599.75,22601.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22601.49,22603.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22604.13,22604.34 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22607.12,22607.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22607.76,22609.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22609.49,22611.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22612.13,22612.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22615.12,22615.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22615.75,22618.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22618.49,22620.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22621.13,22621.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22629.10,22629.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22629.73,22634.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22634.34,22638.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22638.84,22640.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22642.12,22642.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22642.73,22644.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22646.12,22648.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22648.106,22652.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22652.25,22656.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22660.12,22660.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22660.102,22664.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22664.25,22668.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22672.12,22672.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22672.93,22680.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22680.36,22683.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22683.66,22686.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22686.51,22688.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22689.15,22689.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22693.14,22693.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22693.66,22696.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22696.51,22698.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22699.15,22699.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22703.14,22703.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22703.66,22706.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22706.51,22708.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22709.15,22709.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22717.12,22717.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22717.97,22726.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22732.10,22732.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22732.84,22737.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22737.34,22740.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22740.87,22743.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22743.49,22745.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22746.13,22746.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22750.12,22750.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22750.92,22752.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22752.49,22754.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22755.13,22755.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22758.12,22758.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22758.95,22760.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22760.49,22762.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22763.13,22763.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22782.4,22784.128 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22784.128,22788.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22788.17,22792.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22796.4,22796.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22796.114,22804.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22804.28,22807.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22807.57,22811.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22823.2,22825.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22825.86,22833.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22833.26,22836.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22836.50,22841.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22841.28,22846.106 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22846.106,22850.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22850.19,22854.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22858.6,22858.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22858.108,22862.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22862.19,22866.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22870.6,22870.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22870.115,22878.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22878.30,22881.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22881.60,22886.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22886.32,22892.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22892.111,22896.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22896.23,22900.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22904.10,22904.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22904.107,22912.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22912.34,22917.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22917.89,22926.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22928.12,22928.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22928.89,22937.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22939.12,22939.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22939.90,22948.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22954.10,22954.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22954.76,22959.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22959.34,22962.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22962.78,22964.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22966.12,22966.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22966.74,22968.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22970.12,22970.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22970.71,22972.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22978.10,22978.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22978.72,22983.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22983.34,22988.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22988.90,22997.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22999.12,22999.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22999.92,23008.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23010.12,23010.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23010.91,23019.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23033.6,23033.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23033.107,23041.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23041.30,23044.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23044.60,23049.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23049.32,23055.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23055.111,23059.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23059.23,23063.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23067.10,23067.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23067.107,23075.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23075.34,23080.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23080.89,23089.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23091.12,23091.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23091.89,23100.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23102.12,23102.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23102.90,23111.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23117.10,23117.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23117.76,23122.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23122.34,23125.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23125.78,23127.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23129.12,23129.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23129.74,23131.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23133.12,23133.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23133.71,23135.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23141.10,23141.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23141.72,23146.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23146.34,23151.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23151.90,23160.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23162.12,23162.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23162.92,23171.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23173.12,23173.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23173.91,23182.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23192.8,23192.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23192.53,23197.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23197.32,23203.105 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23203.105,23207.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23207.23,23211.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23215.10,23215.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23215.101,23223.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23223.34,23228.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23228.89,23237.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23239.12,23239.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23239.89,23248.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23250.12,23250.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23250.90,23259.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23265.10,23265.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23265.70,23270.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23270.34,23273.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23273.78,23275.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23277.12,23277.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23277.74,23279.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23281.12,23281.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23281.71,23283.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23289.10,23289.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23289.66,23294.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23294.34,23299.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23299.90,23308.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23310.12,23310.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23310.92,23319.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23321.12,23321.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23321.91,23330.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23352.2,23352.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23352.94,23356.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23356.15,23360.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23365.2,23365.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23365.58,23370.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23370.26,23373.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23373.78,23375.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23377.4,23377.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23377.74,23379.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23381.4,23381.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23381.74,23383.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23385.4,23385.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23385.73,23387.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23387.41,23389.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23390.5,23390.32 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23393.4,23393.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23393.79,23395.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23395.41,23397.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23398.5,23398.37 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23401.4,23401.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23401.69,23403.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23405.4,23405.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23405.75,23407.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23409.4,23409.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23409.68,23411.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23413.4,23413.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23413.72,23415.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23422.2,23422.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23422.58,23427.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23427.26,23432.114 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23432.114,23436.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23436.17,23440.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23444.4,23444.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23444.107,23452.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23452.28,23455.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23455.53,23458.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23458.43,23460.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23461.7,23461.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23474.2,23474.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23474.63,23479.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23479.26,23485.107 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23485.107,23489.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23489.17,23493.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23497.4,23497.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23497.106,23501.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23501.17,23505.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23509.4,23511.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23511.101,23515.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23515.17,23519.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23523.4,23523.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23523.102,23532.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23534.4,23534.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23534.103,23543.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23545.4,23545.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23545.73,23550.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23550.28,23553.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23553.72,23555.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23557.6,23557.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23557.68,23559.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23561.6,23561.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23561.65,23563.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23569.4,23569.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23569.69,23574.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23574.28,23579.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23579.84,23588.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23590.6,23590.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23590.86,23599.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23601.6,23601.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23601.85,23610.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23622.2,23624.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23624.85,23628.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23628.15,23632.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23636.2,23636.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23636.84,23644.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23644.26,23649.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23649.101,23653.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23653.17,23657.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23661.4,23661.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23661.100,23669.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23669.28,23674.71 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23674.71,23678.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23678.19,23682.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23686.6,23686.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23686.78,23694.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23694.30,23697.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23697.61,23701.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23703.8,23703.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23703.59,23707.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23709.8,23709.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23709.63,23713.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23728.2,23728.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23728.68,23733.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23733.26,23737.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23737.90,23739.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23739.19,23741.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23742.5,23742.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23745.4,23745.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23745.78,23750.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23750.28,23753.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23753.72,23755.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23757.6,23757.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23757.68,23759.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23761.6,23761.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23761.65,23763.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23769.4,23771.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23771.105,23775.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23775.17,23779.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23783.4,23785.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23785.118,23793.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23793.28,23796.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23796.54,23801.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23801.30,23804.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23804.72,23806.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23806.45,23808.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23809.9,23809.31 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23816.6,23816.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23816.58,23819.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23819.43,23821.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23822.7,23822.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23826.6,23826.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23826.69,23831.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23831.30,23834.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23834.83,23837.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23837.45,23839.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23840.9,23840.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23844.8,23844.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23844.88,23846.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23846.45,23848.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23849.9,23849.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23852.8,23852.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23852.91,23854.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23854.45,23856.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23857.9,23857.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23868.4,23868.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23868.114,23876.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23876.28,23879.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23879.58,23883.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23885.6,23885.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23885.57,23888.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23888.43,23890.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23891.7,23891.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23895.6,23895.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23895.59,23898.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23898.43,23900.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23901.7,23901.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23914.2,23914.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23914.66,23919.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23919.26,23923.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23923.84,23925.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23925.50,23927.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23928.5,23928.46 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23931.4,23933.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23933.99,23941.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23941.28,23944.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23944.50,23948.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23950.6,23950.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23950.55,23954.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23956.6,23956.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23956.52,23960.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23966.4,23966.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23966.96,23974.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23974.28,23977.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23977.50,23981.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23983.6,23983.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23983.55,23987.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23989.6,23989.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23989.52,23993.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23999.4,23999.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23999.76,24001.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24003.4,24003.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24003.74,24005.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24012.2,24012.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24012.54,24015.39 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24015.39,24017.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24018.3,24018.26 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24023.2,24023.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24023.60,24028.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24028.26,24034.99 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24034.99,24038.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24038.17,24042.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24046.4,24046.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24046.100,24055.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24057.4,24057.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24057.101,24066.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24068.4,24068.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24068.73,24070.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24072.4,24072.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24072.79,24077.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24077.28,24082.134 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24082.134,24086.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24086.19,24090.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24094.6,24094.133 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24094.133,24098.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24098.19,24102.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24106.6,24106.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24106.87,24108.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24110.6,24110.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24110.77,24112.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24114.6,24114.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24114.84,24116.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24118.6,24118.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24118.84,24120.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24122.6,24122.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24122.79,24124.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24130.4,24130.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24130.71,24135.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24135.28,24138.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24138.72,24140.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24142.6,24142.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24142.68,24144.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24146.6,24146.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24146.65,24148.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24154.4,24156.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24156.99,24160.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24160.17,24164.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24168.4,24168.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24168.100,24172.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24172.17,24176.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24186.2,24188.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24188.77,24196.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24196.26,24201.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24201.78,24205.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24205.17,24209.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24213.4,24213.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24213.81,24217.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24217.17,24221.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24225.4,24225.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24225.48,24229.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24231.4,24231.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24231.48,24235.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24237.4,24239.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24239.81,24243.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24243.17,24247.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24251.4,24251.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24251.78,24255.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24255.17,24259.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24263.4,24263.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24263.79,24267.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24267.17,24271.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24275.4,24275.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24275.81,24279.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24279.17,24283.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24287.4,24289.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24289.74,24293.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24293.17,24297.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24301.4,24301.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24301.77,24305.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24305.17,24309.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24313.4,24313.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24313.47,24317.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24323.2,24323.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24323.72,24327.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24327.15,24331.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24335.2,24335.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24335.66,24339.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24339.15,24343.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24347.2,24347.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24347.69,24355.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24355.26,24358.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24358.55,24363.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24363.28,24369.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24369.98,24377.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24377.30,24382.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24382.82,24386.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24386.21,24390.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24394.8,24394.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24394.85,24398.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24398.21,24402.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24406.8,24406.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24406.52,24410.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24412.8,24412.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24412.52,24416.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24418.8,24420.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24420.85,24424.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24424.21,24428.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24432.8,24432.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24432.82,24436.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24436.21,24440.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24444.8,24444.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24444.83,24448.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24448.21,24452.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24456.8,24456.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24456.85,24460.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24460.21,24464.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24468.8,24470.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24470.78,24474.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24474.21,24478.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24482.8,24482.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24482.81,24486.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24486.21,24490.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24494.8,24494.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24494.51,24498.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24504.6,24504.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24504.103,24513.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24515.6,24515.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24515.101,24524.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24526.6,24526.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24526.71,24528.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24538.2,24538.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24538.71,24542.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24542.15,24546.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24550.2,24550.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24550.80,24554.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24554.15,24558.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24564.2,24566.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24566.83,24570.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24570.15,24574.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24578.2,24578.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24578.82,24586.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24586.26,24589.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24589.64,24592.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24592.41,24594.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24595.5,24595.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24604.2,24604.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24604.61,24609.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24609.26,24612.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24612.70,24617.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24617.28,24622.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24622.90,24626.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24626.19,24630.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24634.6,24634.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24634.91,24638.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24638.19,24642.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24650.4,24652.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24652.110,24661.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24663.4,24663.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24663.99,24672.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24674.4,24674.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24674.106,24682.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24682.28,24685.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24685.55,24689.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24695.4,24695.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24695.79,24700.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24700.28,24705.107 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24705.107,24713.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24713.30,24716.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24716.57,24719.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24719.45,24721.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24722.9,24722.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24730.6,24730.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24730.115,24734.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24734.19,24738.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24742.6,24744.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24744.103,24753.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24755.6,24755.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24755.111,24759.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24759.19,24763.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24767.6,24769.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24769.118,24773.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24773.19,24777.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24781.6,24781.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24781.117,24785.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24785.19,24789.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24797.4,24797.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24797.70,24802.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24802.28,24807.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24807.91,24811.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24811.19,24815.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24819.6,24819.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24819.89,24827.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24827.30,24830.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24830.58,24833.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24833.45,24835.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24836.9,24836.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24844.6,24844.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24844.89,24852.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24852.30,24855.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24855.58,24858.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24858.45,24860.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24861.9,24861.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24873.4,24873.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24873.78,24878.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24878.28,24883.105 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24883.105,24887.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24887.19,24891.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24895.6,24895.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24895.99,24904.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24906.6,24906.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24906.99,24915.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24917.6,24917.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24917.104,24926.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24938.2,24940.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24940.64,24948.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24948.26,24951.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24951.64,24955.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24957.4,24959.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24959.72,24968.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24970.4,24970.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24970.79,24979.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24985.2,24985.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24985.65,24993.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24993.26,24996.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24996.52,25000.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25002.4,25002.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25002.67,25006.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25008.4,25010.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25010.93,25014.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25014.17,25018.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25022.4,25022.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25022.97,25026.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25026.17,25030.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25034.4,25034.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25034.70,25039.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25039.28,25044.146 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25044.146,25048.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25048.19,25052.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25056.6,25056.150 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25056.150,25060.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25060.19,25064.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25072.4,25072.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25072.65,25077.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25077.28,25082.132 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25082.132,25086.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25086.19,25090.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25094.6,25094.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25094.130,25098.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25098.19,25102.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25106.6,25106.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25106.132,25110.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25110.19,25114.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25122.4,25122.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25122.57,25126.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25128.4,25130.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25130.99,25134.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25134.17,25138.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25142.4,25142.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25142.98,25146.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25146.17,25150.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25154.4,25156.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25156.72,25165.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25167.4,25167.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25167.79,25176.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25178.4,25180.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25180.94,25189.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25191.4,25191.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25191.90,25195.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25195.17,25199.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25203.4,25203.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25203.88,25207.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25207.17,25211.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25215.4,25215.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25215.87,25224.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25226.4,25228.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25228.94,25236.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25236.28,25239.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25239.58,25244.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25244.29,25249.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25249.62,25251.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25253.8,25253.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25253.67,25255.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25257.8,25257.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25257.64,25259.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25265.6,25267.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25267.77,25271.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25271.19,25275.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25279.6,25279.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25279.78,25287.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25287.30,25292.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25292.74,25300.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25300.32,25303.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25303.54,25307.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25309.10,25309.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25309.59,25313.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25315.10,25315.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25315.56,25319.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25325.8,25325.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25325.77,25329.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25329.21,25333.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25337.8,25339.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25339.87,25347.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25347.32,25350.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25350.54,25354.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25356.10,25356.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25356.59,25360.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25362.10,25362.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25362.56,25366.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25372.8,25372.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25372.91,25381.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25383.8,25385.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25385.85,25389.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25389.21,25393.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25397.8,25397.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25397.84,25405.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25405.32,25408.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25408.70,25411.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25411.47,25413.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25414.11,25414.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25426.6,25426.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25426.56,25431.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25431.30,25436.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25436.99,25444.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25444.32,25447.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25447.63,25450.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25450.47,25452.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25453.11,25453.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25457.10,25457.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25457.61,25461.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25463.10,25463.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25463.61,25467.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25473.8,25473.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25473.100,25477.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25477.21,25481.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25485.8,25485.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25485.96,25489.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25489.21,25493.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25497.8,25497.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25497.99,25501.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25501.21,25505.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25517.4,25517.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25517.93,25525.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25525.28,25530.77 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25530.77,25534.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25534.19,25538.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25542.6,25542.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25542.78,25550.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25550.30,25555.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25555.74,25563.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25563.32,25566.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25566.54,25570.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25572.10,25572.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25572.59,25576.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25578.10,25578.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25578.56,25582.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25588.8,25588.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25588.77,25592.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25592.21,25596.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25600.8,25602.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25602.87,25610.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25610.32,25613.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25613.54,25617.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25619.10,25619.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25619.59,25623.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25625.10,25625.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25625.56,25629.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25635.8,25635.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25635.91,25644.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25646.8,25648.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25648.85,25652.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25652.21,25656.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25660.8,25660.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25660.84,25668.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25668.32,25671.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25671.70,25674.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25674.47,25676.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25677.11,25677.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25689.6,25689.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25689.62,25694.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25694.30,25698.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25698.85,25700.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25702.8,25702.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25702.81,25704.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25706.8,25708.124 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25708.124,25716.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25716.32,25719.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25719.65,25722.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25722.47,25724.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25725.11,25725.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25733.8,25733.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25733.123,25737.9 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25739.8,25739.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25739.121,25743.9 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25745.8,25745.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25745.81,25750.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25750.32,25753.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25753.97,25758.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25758.34,25761.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25761.105,25763.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25765.12,25765.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25765.94,25767.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25769.12,25769.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25769.100,25771.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25777.10,25777.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25777.87,25781.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25783.10,25785.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25785.117,25793.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25793.34,25796.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25796.71,25800.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25802.12,25802.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25802.60,25806.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25808.12,25808.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25808.66,25812.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25818.10,25818.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25818.113,25826.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25826.34,25829.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25829.60,25833.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25835.12,25835.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25835.55,25839.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25845.10,25845.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25845.113,25853.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25853.34,25856.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25856.55,25860.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25862.12,25862.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25862.60,25866.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25868.12,25868.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25868.60,25872.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25874.12,25874.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25874.67,25878.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25880.12,25880.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25880.59,25884.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25890.10,25890.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25890.115,25898.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25898.34,25901.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25901.56,25905.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25919.6,25919.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25919.56,25924.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25924.30,25929.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25929.99,25937.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25937.32,25940.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25940.63,25943.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25943.47,25945.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25946.11,25946.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25950.10,25950.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25950.61,25954.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25956.10,25956.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25956.61,25960.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25966.8,25966.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25966.100,25970.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25970.21,25974.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25978.8,25978.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25978.96,25982.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25982.21,25986.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25990.8,25990.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25990.99,25994.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25994.21,25998.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26014.2,26014.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26014.75,26022.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26022.26,26025.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26025.52,26029.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26031.4,26031.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26031.67,26035.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26037.4,26039.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26039.93,26043.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26043.17,26047.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26051.4,26051.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26051.97,26055.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26055.17,26059.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26063.4,26063.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26063.70,26068.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26068.28,26073.146 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26073.146,26077.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26077.19,26081.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26085.6,26085.150 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26085.150,26089.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26089.19,26093.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26101.4,26101.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26101.65,26106.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26106.28,26111.132 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26111.132,26115.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26115.19,26119.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26123.6,26123.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26123.130,26127.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26127.19,26131.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26135.6,26135.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26135.132,26139.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26139.19,26143.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26151.4,26151.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26151.57,26155.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26157.4,26159.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26159.75,26163.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26163.17,26167.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26171.4,26171.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26171.76,26179.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26179.28,26184.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26184.72,26192.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26192.30,26195.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26195.52,26199.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26201.8,26201.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26201.57,26205.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26207.8,26207.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26207.54,26211.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26217.6,26217.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26217.75,26221.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26221.19,26225.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26229.6,26231.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26231.85,26239.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26239.30,26242.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26242.52,26246.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26248.8,26248.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26248.57,26252.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26254.8,26254.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26254.54,26258.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26264.6,26264.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26264.89,26273.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26275.6,26277.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26277.83,26281.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26281.19,26285.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26289.6,26289.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26289.82,26297.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26297.30,26300.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26300.68,26303.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26303.45,26305.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26306.9,26306.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26318.4,26320.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26320.99,26324.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26324.17,26328.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26332.4,26332.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26332.98,26336.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26336.17,26340.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26344.4,26346.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26346.72,26355.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26357.4,26357.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26357.79,26366.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26368.4,26370.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26370.94,26379.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26381.4,26381.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26381.90,26385.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26385.17,26389.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26393.4,26393.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26393.88,26397.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26397.17,26401.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26405.4,26405.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26405.87,26414.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26416.4,26416.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26416.54,26421.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26421.28,26426.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26426.97,26434.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26434.30,26437.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26437.61,26440.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26440.45,26442.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26443.9,26443.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26447.8,26447.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26447.59,26451.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26453.8,26453.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26453.59,26457.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26463.6,26463.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26463.98,26467.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26467.19,26471.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26475.6,26475.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26475.94,26479.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26479.19,26483.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26487.6,26487.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26487.97,26491.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26491.19,26495.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26509.2,26511.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26511.104,26515.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26515.15,26519.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26523.2,26523.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26523.103,26527.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26527.15,26531.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26536.2,26536.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26536.72,26542.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26542.26,26544.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26544.62,26546.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26547.4,26547.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26547.67,26549.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26551.4,26551.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26551.64,26553.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26560.2,26562.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26562.70,26566.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26566.15,26570.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26574.2,26574.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26574.71,26582.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26582.26,26587.93 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26587.93,26591.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26591.17,26595.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26599.4,26599.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26599.92,26607.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26607.28,26610.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26610.69,26615.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26615.30,26618.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26618.119,26620.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26626.6,26628.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26628.119,26632.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26632.19,26636.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26640.6,26640.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26640.118,26644.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26644.19,26648.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26652.6,26652.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26652.76,26657.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26657.30,26660.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26660.119,26665.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26665.32,26669.98 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26669.98,26674.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26674.34,26677.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26677.78,26679.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26681.12,26681.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26681.74,26683.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26685.12,26685.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26685.71,26687.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26693.10,26693.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26693.121,26698.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26698.34,26703.123 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26703.123,26707.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26707.25,26711.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26715.12,26715.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26715.128,26724.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26726.12,26728.125 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26728.125,26736.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26736.36,26741.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26741.89,26750.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26752.14,26752.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26752.89,26761.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26767.12,26767.131 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26767.131,26775.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26775.36,26778.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26778.65,26783.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26783.38,26788.108 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26788.108,26797.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26799.16,26799.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26799.108,26808.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26814.14,26814.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26814.67,26819.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26819.38,26824.112 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26824.112,26833.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26835.16,26835.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26835.112,26844.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26854.12,26854.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26854.127,26862.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26862.36,26867.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26867.91,26876.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26878.14,26878.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26878.91,26887.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26893.12,26895.134 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26895.134,26899.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26899.25,26903.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26907.12,26907.135 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26907.135,26911.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26911.25,26915.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26919.12,26919.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26919.126,26923.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26923.25,26927.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26931.12,26931.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26931.129,26939.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26939.36,26942.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26942.69,26945.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26945.51,26947.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26948.15,26948.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26956.12,26958.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26958.123,26962.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26962.25,26966.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26970.12,26970.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26970.132,26978.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26978.36,26981.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26981.71,26985.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26987.14,26987.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26987.61,26990.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26990.51,26992.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26993.15,26993.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27001.12,27001.122 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27001.122,27010.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27012.12,27012.122 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27012.122,27021.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27027.10,27027.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27027.109,27032.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27032.34,27035.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27035.80,27037.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27047.8,27047.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27047.105,27052.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27052.32,27056.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27056.81,27058.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27072.4,27074.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27074.99,27078.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27078.17,27082.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27086.4,27086.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27086.98,27094.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27094.28,27099.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27099.103,27103.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27103.19,27107.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27111.6,27111.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27111.102,27119.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27119.30,27124.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27124.73,27128.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27128.21,27132.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27136.8,27136.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27136.80,27144.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27144.32,27147.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27147.63,27151.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27153.10,27153.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27153.61,27157.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27159.10,27159.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27159.65,27163.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27177.4,27179.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27179.118,27183.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27183.17,27187.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27191.4,27191.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27191.117,27195.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27195.17,27199.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27208.2,27208.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27208.58,27213.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27213.26,27216.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27216.74,27221.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27221.28,27224.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27224.73,27226.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27228.6,27228.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27228.82,27230.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27232.6,27232.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27232.81,27234.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27240.4,27240.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27240.79,27245.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27245.28,27248.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27248.84,27250.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27252.6,27252.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27252.82,27254.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27254.43,27256.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27257.7,27257.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27260.6,27260.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27260.92,27262.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27264.6,27264.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27264.99,27266.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27272.4,27272.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27272.78,27277.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27277.28,27283.125 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27283.125,27287.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27287.19,27291.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27295.6,27295.124 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27295.124,27299.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27299.19,27303.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27307.6,27309.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27309.102,27313.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27313.19,27317.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27321.6,27321.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27321.105,27325.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27325.19,27329.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27333.6,27335.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27335.102,27339.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27339.19,27343.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27347.6,27347.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27347.101,27356.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27358.6,27358.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27358.72,27360.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27362.6,27364.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27364.105,27368.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27368.19,27372.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27376.6,27376.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27376.102,27380.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27380.19,27384.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27388.6,27388.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27388.103,27392.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27392.19,27396.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27400.6,27400.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27400.105,27404.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27404.19,27408.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27412.6,27414.98 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27414.98,27418.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27418.19,27422.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27426.6,27426.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27426.101,27430.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27430.19,27434.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27442.4,27442.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27442.74,27444.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27444.50,27448.20 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27448.20,27450.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27451.6,27452.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27454.5,27454.33 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27457.4,27457.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27457.88,27459.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27461.4,27461.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27461.73,27463.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27465.4,27465.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27465.76,27470.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27470.28,27473.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27473.79,27475.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27477.6,27477.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27477.84,27479.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27481.6,27483.105 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27483.105,27485.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27491.4,27491.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27491.64,27496.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27496.27,27501.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27501.60,27503.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27505.6,27505.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27505.65,27507.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27509.6,27509.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27509.62,27511.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27517.4,27517.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27517.84,27519.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27521.4,27523.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27523.116,27527.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27527.17,27531.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27535.4,27535.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27535.115,27539.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27539.17,27543.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27547.4,27547.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27547.83,27552.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27552.28,27556.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27556.78,27558.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27560.6,27560.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27560.76,27562.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27564.6,27566.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27566.109,27574.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27574.30,27577.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27577.78,27582.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27582.32,27585.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27585.103,27587.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27589.10,27589.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27589.92,27591.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27593.10,27593.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27593.98,27595.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27601.8,27601.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27601.68,27605.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27607.8,27609.98 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27609.98,27617.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27617.32,27620.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27620.69,27624.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27626.10,27626.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27626.58,27630.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27632.10,27632.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27632.64,27636.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27642.8,27642.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27642.94,27650.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27650.32,27653.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27653.58,27657.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27659.10,27659.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27659.53,27663.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27669.8,27669.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27669.94,27677.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27677.32,27680.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27680.53,27684.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27686.10,27686.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27686.58,27690.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27692.10,27692.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27692.58,27696.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27698.10,27698.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27698.65,27702.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27704.10,27704.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27704.57,27708.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27714.8,27714.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27714.96,27722.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27722.32,27725.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27725.54,27729.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27739.6,27739.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27739.102,27748.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27754.4,27754.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27754.86,27756.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27756.41,27758.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27759.5,27759.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27762.4,27762.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27762.84,27767.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27767.28,27771.79 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27771.79,27773.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27775.6,27775.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27775.77,27777.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27779.6,27781.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27781.110,27789.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27789.30,27792.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27792.78,27797.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27797.32,27800.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27800.103,27802.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27804.10,27804.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27804.92,27806.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27808.10,27808.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27808.98,27810.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27816.8,27816.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27816.68,27820.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27822.8,27824.98 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27824.98,27832.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27832.32,27835.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27835.69,27839.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27841.10,27841.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27841.58,27845.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27847.10,27847.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27847.64,27851.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27857.8,27857.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27857.94,27865.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27865.32,27868.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27868.58,27872.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27874.10,27874.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27874.53,27878.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27884.8,27884.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27884.94,27892.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27892.32,27895.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27895.53,27899.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27901.10,27901.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27901.58,27905.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27907.10,27907.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27907.58,27911.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27913.10,27913.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27913.65,27917.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27919.10,27919.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27919.57,27923.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27929.8,27929.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27929.96,27937.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27937.32,27940.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27940.54,27944.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27954.6,27954.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27954.103,27963.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27969.4,27969.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27969.87,27971.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27971.41,27973.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27974.5,27974.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27977.4,27979.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27979.123,27987.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27987.28,27990.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27990.53,27993.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27993.43,27995.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27996.7,27996.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28004.4,28004.140 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28004.140,28008.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28008.17,28012.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28022.2,28024.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28024.72,28032.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28032.26,28035.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28035.60,28040.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28040.28,28045.117 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28045.117,28049.7 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28051.6,28051.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28051.125,28055.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28055.19,28059.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28063.6,28063.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28063.125,28067.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28067.19,28071.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28075.6,28075.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28075.86,28077.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28079.6,28079.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28079.94,28084.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28084.30,28089.148 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28089.148,28093.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28093.21,28097.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28101.8,28101.152 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28101.152,28105.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28105.21,28109.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28117.6,28117.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28117.85,28119.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28121.6,28123.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28123.114,28127.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28127.19,28131.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28135.6,28135.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28135.110,28139.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28139.19,28143.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28147.6,28147.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28147.111,28151.7 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28153.6,28155.129 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28155.129,28159.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28159.19,28163.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28167.6,28167.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28167.121,28171.7 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28173.6,28175.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28175.118,28179.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28179.19,28183.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28187.6,28187.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28187.115,28196.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28198.6,28200.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28200.109,28204.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28204.19,28208.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28212.6,28212.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28212.108,28220.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28220.30,28223.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28223.64,28228.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28228.32,28232.10 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28236.8,28238.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28238.94,28242.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28242.21,28246.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28250.8,28250.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28250.96,28258.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28258.32,28261.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28261.64,28264.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28264.56,28266.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28267.11,28267.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28274.8,28274.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28274.94,28278.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28278.21,28282.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28294.4,28294.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28294.62,28298.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28300.4,28302.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28302.96,28311.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28313.4,28313.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28313.100,28317.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28317.17,28321.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28325.4,28325.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28325.55,28330.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28330.27,28335.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28335.60,28337.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28339.6,28339.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28339.65,28341.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28343.6,28343.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28343.62,28345.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28351.4,28351.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28351.66,28355.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28357.4,28357.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28357.58,28362.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28362.28,28368.100 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28368.100,28376.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28376.30,28381.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28381.89,28385.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28385.21,28389.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28393.8,28393.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28393.90,28397.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28397.21,28401.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28405.8,28405.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28405.60,28409.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28411.8,28411.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28411.60,28416.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28416.32,28421.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28421.92,28429.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28429.34,28432.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28432.56,28436.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28438.12,28438.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28438.61,28442.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28444.12,28444.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28444.58,28448.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28454.10,28454.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28454.100,28462.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28462.34,28465.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28465.56,28469.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28471.12,28471.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28471.61,28475.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28477.12,28477.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28477.58,28481.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28495.6,28495.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28495.108,28503.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28503.30,28506.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28506.56,28512.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28512.32,28514.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28514.66,28516.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28517.10,28517.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28517.71,28519.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28521.10,28521.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28521.68,28523.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28532.6,28532.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28532.97,28540.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28540.30,28545.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28545.89,28549.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28549.21,28553.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28557.8,28557.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28557.90,28561.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28561.21,28565.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28569.8,28569.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28569.88,28573.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28573.21,28577.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28581.8,28583.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28583.85,28592.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28594.8,28594.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28594.89,28602.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28602.32,28605.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28605.61,28608.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28608.47,28610.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28611.11,28611.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28619.8,28619.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28619.60,28624.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28624.32,28629.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28629.92,28637.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28637.34,28640.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28640.56,28644.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28646.12,28646.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28646.61,28650.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28652.12,28652.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28652.58,28656.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28662.10,28662.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28662.100,28670.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28670.34,28673.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28673.56,28677.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28679.12,28679.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28679.61,28683.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28685.12,28685.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28685.58,28689.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28703.6,28703.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28703.96,28711.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28711.30,28716.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28716.89,28720.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28720.21,28724.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28728.8,28728.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28728.90,28732.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28732.21,28736.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28740.8,28742.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28742.79,28751.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28753.8,28753.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28753.81,28762.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28764.8,28764.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28764.60,28769.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28769.32,28774.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28774.92,28782.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28782.34,28785.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28785.56,28789.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28791.12,28791.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28791.61,28795.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28797.12,28797.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28797.58,28801.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28807.10,28807.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28807.100,28815.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28815.34,28818.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28818.56,28822.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28824.12,28824.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28824.61,28828.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28830.12,28830.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28830.58,28834.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28848.6,28848.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28848.98,28856.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28856.30,28859.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28859.56,28863.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28865.8,28867.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28867.89,28871.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28871.21,28875.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28879.8,28879.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28879.90,28883.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28883.21,28887.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28891.8,28891.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28891.64,28895.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28897.8,28897.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28897.60,28902.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28902.32,28907.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28907.92,28915.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28915.34,28918.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28918.56,28922.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28924.12,28924.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28924.61,28928.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28930.12,28930.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28930.58,28934.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28940.10,28940.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28940.100,28948.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28948.34,28951.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28951.56,28955.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28957.12,28957.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28957.61,28961.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28963.12,28963.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28963.58,28967.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28981.6,28981.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28981.95,28989.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28989.30,28994.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28994.78,29003.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29005.8,29005.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29005.80,29014.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29020.6,29020.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29020.97,29028.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29028.30,29031.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29031.56,29035.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29037.8,29037.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29037.64,29041.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29047.6,29047.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29047.96,29055.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29055.30,29060.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29060.72,29069.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29071.8,29071.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29071.74,29080.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29082.8,29082.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29082.55,29088.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29088.32,29090.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29090.66,29092.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29093.10,29093.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29093.71,29095.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29097.10,29097.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29097.68,29099.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29104.8,29104.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29104.60,29109.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29109.32,29114.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29114.103,29122.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29122.34,29125.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29125.56,29129.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29131.12,29131.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29131.61,29135.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29137.12,29137.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29137.58,29141.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29147.10,29147.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29147.92,29155.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29155.34,29158.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29158.56,29162.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29164.12,29164.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29164.61,29168.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29170.12,29170.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29170.58,29174.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29180.10,29180.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29180.100,29188.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29188.34,29191.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29191.56,29195.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29197.12,29197.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29197.61,29201.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29203.12,29203.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29203.58,29207.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29221.6,29221.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29221.98,29229.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29229.30,29232.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29232.56,29236.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29238.8,29238.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29238.64,29242.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29244.8,29244.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29244.55,29250.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29250.32,29252.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29252.66,29254.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29255.10,29255.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29255.71,29257.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29259.10,29259.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29259.68,29261.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29266.8,29266.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29266.60,29271.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29271.32,29276.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29276.103,29284.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29284.34,29287.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29287.56,29291.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29293.12,29293.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29293.61,29297.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29299.12,29299.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29299.58,29303.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29309.10,29309.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29309.92,29317.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29317.34,29320.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29320.56,29324.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29326.12,29326.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29326.61,29330.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29332.12,29332.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29332.58,29336.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29342.10,29342.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29342.100,29350.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29350.34,29353.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29353.56,29357.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29359.12,29359.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29359.61,29363.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29365.12,29365.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29365.58,29369.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29383.6,29383.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29383.99,29391.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29391.30,29394.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29394.63,29400.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29400.32,29402.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29402.67,29404.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29405.10,29405.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29405.72,29407.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29409.10,29409.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29409.69,29411.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29416.8,29418.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29418.86,29427.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29429.8,29429.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29429.88,29438.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29444.6,29444.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29444.101,29452.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29452.30,29455.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29455.56,29459.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29461.8,29461.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29461.63,29467.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29467.32,29469.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29469.67,29471.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29472.10,29472.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29472.72,29474.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29476.10,29476.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29476.69,29478.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29487.6,29487.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29487.72,29489.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29489.52,29491.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29492.7,29492.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29499.4,29501.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29501.82,29505.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29505.17,29509.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29513.4,29513.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29513.75,29517.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29517.17,29521.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29525.4,29525.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29525.72,29534.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29536.4,29538.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29538.73,29542.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29542.17,29546.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29550.4,29550.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29550.74,29558.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29558.28,29563.77 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29563.77,29567.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29567.19,29571.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29575.6,29575.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29575.78,29583.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29583.30,29586.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29586.64,29591.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29591.32,29595.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29595.87,29597.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29599.10,29599.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29599.83,29601.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29603.10,29605.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29605.126,29613.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29613.34,29616.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29616.67,29619.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29619.49,29621.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29622.13,29622.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29630.10,29630.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29630.125,29634.11 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29636.10,29636.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29636.123,29640.11 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29642.10,29642.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29642.83,29647.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29647.34,29650.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29650.99,29655.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29655.36,29658.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29658.107,29660.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29662.14,29662.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29662.96,29664.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29666.14,29666.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29666.102,29668.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29674.12,29674.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29674.89,29678.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29680.12,29682.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29682.119,29690.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29690.36,29693.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29693.73,29697.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29699.14,29699.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29699.62,29703.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29705.14,29705.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29705.68,29709.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29715.12,29715.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29715.115,29723.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29723.36,29726.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29726.62,29730.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29732.14,29732.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29732.57,29736.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29742.12,29742.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29742.115,29750.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29750.36,29753.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29753.57,29757.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29759.14,29759.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29759.62,29763.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29765.14,29765.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29765.62,29769.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29771.14,29771.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29771.69,29775.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29777.14,29777.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29777.61,29781.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29787.12,29787.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29787.117,29795.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29795.36,29798.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29798.58,29802.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29820.6,29820.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29820.82,29828.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29828.30,29831.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29831.52,29835.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29837.8,29837.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29837.57,29841.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29843.8,29843.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29843.54,29847.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29853.6,29855.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29855.106,29859.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29859.19,29863.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29867.6,29867.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29867.105,29875.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29875.30,29880.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29880.87,29888.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29888.32,29891.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29891.54,29895.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29897.10,29897.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29897.59,29901.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29903.10,29903.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29903.56,29907.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29913.8,29913.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29913.91,29922.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29928.6,29928.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29928.101,29932.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29932.19,29936.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29940.6,29942.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29942.80,29946.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29946.19,29950.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29954.6,29954.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29954.72,29963.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29965.6,29965.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29965.91,29969.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29969.19,29973.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29977.6,29977.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29977.56,29982.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29982.30,29987.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29987.99,29995.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29995.32,29998.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29998.63,30001.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30001.47,30003.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30004.11,30004.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30008.10,30008.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30008.61,30012.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30014.10,30014.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30014.61,30018.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30024.8,30024.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30024.100,30028.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30028.21,30032.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30036.8,30036.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30036.96,30040.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30040.21,30044.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30048.8,30048.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30048.99,30052.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30052.21,30056.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30068.4,30068.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30068.57,30074.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30074.28,30076.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30076.63,30078.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30079.6,30079.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30079.68,30081.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30083.6,30083.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30083.65,30085.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30094.2,30094.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30094.77,30102.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30102.26,30105.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30105.49,30110.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30110.28,30114.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30114.74,30116.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30116.52,30118.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30119.7,30119.36 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30122.6,30124.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30124.89,30132.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30132.30,30135.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30135.52,30139.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30141.8,30141.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30141.57,30145.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30147.8,30147.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30147.54,30151.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30157.6,30157.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30157.86,30165.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30165.30,30168.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30168.52,30172.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30174.8,30174.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30174.57,30178.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30180.8,30180.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30180.54,30184.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30190.6,30190.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30190.66,30192.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30194.6,30194.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30194.64,30196.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30207.2,30207.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30207.77,30212.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30212.26,30215.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30215.103,30220.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30220.28,30226.106 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30226.106,30230.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30230.19,30234.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30238.6,30238.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30238.107,30246.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30246.30,30249.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30249.58,30252.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30252.45,30254.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30255.9,30255.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30263.6,30263.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30263.110,30271.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30271.30,30274.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30274.56,30279.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30279.31,30286.65 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30286.65,30288.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30290.10,30290.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30290.70,30292.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30294.10,30294.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30294.67,30296.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30298.10,30298.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30298.64,30300.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30310.6,30310.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30310.88,30315.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30315.30,30318.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30318.78,30320.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30320.45,30322.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30323.9,30323.37 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30326.8,30326.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30326.78,30328.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30328.45,30330.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30331.9,30331.37 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30334.8,30334.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30334.78,30337.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30337.45,30339.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30340.9,30340.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30348.6,30348.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30348.89,30351.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30351.43,30353.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30354.7,30354.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30358.6,30360.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30360.104,30364.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30364.19,30368.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30372.6,30372.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30372.108,30380.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30380.30,30383.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30383.62,30387.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30389.8,30389.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30389.59,30394.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30394.31,30401.65 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30401.65,30403.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30405.10,30405.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30405.70,30407.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30409.10,30409.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30409.67,30411.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30413.10,30413.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30413.64,30415.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30425.6,30425.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30425.112,30433.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30433.30,30436.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30436.60,30440.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30442.8,30442.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30442.59,30445.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30445.45,30447.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30448.9,30448.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30452.8,30452.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30452.61,30455.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30455.45,30457.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30458.9,30458.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30466.6,30466.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30466.84,30471.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30471.30,30474.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30474.74,30476.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30478.8,30478.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30478.70,30480.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30482.8,30482.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30482.67,30484.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30490.6,30490.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30490.104,30492.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30492.52,30494.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30495.7,30495.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30498.6,30498.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30498.88,30500.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30500.43,30502.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30503.7,30503.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30506.6,30508.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30508.119,30516.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30516.30,30519.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30519.59,30522.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30522.45,30524.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30525.9,30525.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30533.6,30533.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30533.108,30537.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30537.19,30541.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30554.2,30554.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30554.64,30559.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30559.26,30565.124 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30565.124,30569.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30569.17,30573.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30577.4,30577.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30577.123,30581.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30581.17,30585.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30589.4,30591.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30591.101,30595.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30595.17,30599.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30603.4,30603.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30603.104,30607.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30607.17,30611.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30615.4,30617.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30617.101,30621.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30621.17,30625.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30629.4,30629.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30629.100,30638.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30640.4,30640.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30640.71,30642.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30644.4,30646.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30646.104,30650.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30650.17,30654.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30658.4,30658.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30658.101,30662.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30662.17,30666.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30670.4,30670.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30670.102,30674.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30674.17,30678.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30682.4,30682.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30682.104,30686.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30686.17,30690.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30694.4,30696.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30696.97,30700.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30700.17,30704.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30708.4,30708.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30708.100,30712.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30712.17,30716.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30726.2,30728.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30728.73,30736.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30736.26,30739.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30739.62,30744.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30744.28,30748.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30748.88,30753.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30753.30,30756.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30756.86,30758.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30760.8,30760.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30760.79,30763.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30763.45,30765.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30766.9,30766.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30774.6,30774.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30774.86,30776.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30778.6,30778.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30778.78,30780.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30782.6,30784.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30784.105,30788.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30788.19,30792.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30796.6,30796.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30796.110,30805.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30807.6,30809.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30809.119,30817.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30817.30,30822.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30822.86,30830.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30830.32,30833.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30833.54,30837.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30839.10,30839.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30839.59,30843.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30845.10,30845.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30845.56,30849.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30855.8,30855.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30855.94,30859.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30859.21,30863.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30867.8,30867.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30867.57,30871.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30873.8,30873.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30873.52,30877.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30883.6,30883.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30883.116,30891.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30891.30,30894.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30894.52,30898.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30900.8,30900.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30900.57,30904.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30906.8,30906.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30906.54,30910.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30920.4,30922.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30922.99,30930.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30930.28,30933.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30933.75,30938.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30938.29,30943.65 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30943.65,30945.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30947.8,30947.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30947.70,30949.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30951.8,30951.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30951.67,30953.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30963.4,30963.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30963.92,30971.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30971.28,30974.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30974.59,30977.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30977.43,30979.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30980.7,30980.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30984.6,30984.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30984.54,30987.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30987.43,30989.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30990.7,30990.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30998.4,30998.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30998.95,31002.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31002.17,31006.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31010.4,31010.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31010.60,31015.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31015.28,31019.76 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31019.76,31021.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31023.6,31025.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31025.103,31029.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31029.19,31033.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31037.6,31037.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31037.108,31046.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31048.6,31050.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31050.117,31058.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31058.30,31063.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31063.86,31071.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31071.32,31074.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31074.54,31078.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31080.10,31080.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31080.59,31084.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31086.10,31086.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31086.56,31090.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31096.8,31096.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31096.94,31100.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31100.21,31104.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31108.8,31108.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31108.57,31112.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31114.8,31114.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31114.52,31118.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31124.6,31124.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31124.114,31132.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31132.30,31135.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31135.52,31139.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31141.8,31141.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31141.57,31145.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31147.8,31147.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31147.54,31151.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31165.2,31165.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31165.77,31169.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31169.15,31173.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31177.2,31177.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31177.69,31185.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31185.26,31190.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31190.99,31198.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31198.28,31201.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31201.75,31206.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31206.29,31211.65 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31211.65,31213.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31215.8,31215.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31215.70,31217.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31219.8,31219.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31219.67,31221.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31231.4,31231.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31231.92,31239.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31239.28,31242.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31242.59,31245.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31245.43,31247.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31248.7,31248.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31252.6,31252.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31252.54,31255.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31255.43,31257.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31258.7,31258.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31266.4,31266.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31266.95,31270.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31270.17,31274.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31278.4,31280.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31280.81,31284.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31284.17,31288.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31292.4,31292.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31292.78,31300.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31300.28,31303.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31303.54,31308.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31308.29,31313.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31313.62,31315.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31317.8,31317.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31317.67,31319.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31321.8,31321.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31321.64,31323.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31333.4,31333.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31333.56,31338.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31338.28,31341.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31341.80,31343.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31345.6,31345.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31345.76,31347.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31349.6,31349.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31349.68,31353.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31364.2,31364.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31364.53,31369.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31369.26,31375.96 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31375.96,31383.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31383.28,31386.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31386.55,31392.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31392.30,31394.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31394.65,31396.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31397.8,31397.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31397.70,31399.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31401.8,31401.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31401.67,31403.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31412.4,31412.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31412.98,31420.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31420.28,31423.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31423.53,31428.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31428.30,31432.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31432.74,31434.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31436.8,31436.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31436.66,31438.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31440.8,31442.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31442.91,31451.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31453.8,31453.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31453.94,31462.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31464.8,31464.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31464.91,31473.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31479.6,31479.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31479.57,31483.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31485.6,31485.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31485.59,31490.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31490.30,31495.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31495.103,31499.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31499.21,31503.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31507.8,31507.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31507.94,31516.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31518.8,31518.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31518.101,31527.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31533.6,31533.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31533.50,31538.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31538.30,31543.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31543.86,31552.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31554.8,31554.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31554.88,31563.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31565.8,31565.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31565.87,31574.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31580.6,31580.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31580.67,31585.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31585.30,31588.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31588.87,31590.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31592.8,31592.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31592.87,31594.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31604.4,31604.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31604.91,31612.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31612.28,31615.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31615.53,31620.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31620.30,31624.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31624.74,31626.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31628.8,31628.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31628.66,31630.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31632.8,31634.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31634.91,31643.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31645.8,31645.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31645.94,31654.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31656.8,31656.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31656.91,31665.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31671.6,31671.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31671.57,31675.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31677.6,31677.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31677.59,31682.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31682.30,31687.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31687.103,31691.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31691.21,31695.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31699.8,31699.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31699.94,31708.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31710.8,31710.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31710.101,31719.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31725.6,31725.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31725.50,31730.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31730.30,31735.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31735.86,31744.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31746.8,31746.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31746.88,31755.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31757.8,31757.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31757.87,31766.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31772.6,31772.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31772.60,31777.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31777.30,31780.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31780.81,31782.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31784.8,31784.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31784.81,31786.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31788.8,31788.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31788.82,31790.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31792.8,31794.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31794.103,31803.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31805.8,31805.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31805.110,31809.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31809.21,31813.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31817.8,31817.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31817.107,31826.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31828.8,31828.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31828.110,31832.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31832.21,31836.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31840.8,31840.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31840.111,31848.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31848.32,31851.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31851.62,31854.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31854.47,31856.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31857.11,31857.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31865.8,31867.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31867.113,31876.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31878.8,31878.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31878.114,31887.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31889.8,31889.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31889.81,31891.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31901.4,31901.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31901.89,31909.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31909.28,31912.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31912.62,31917.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31917.30,31922.151 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31922.151,31930.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31930.32,31933.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31933.69,31937.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31939.10,31939.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31939.65,31944.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31944.34,31948.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31948.87,31950.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31952.12,31952.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31952.87,31957.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31957.36,31961.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31961.88,31965.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31967.14,31967.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31967.83,31969.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31983.8,31983.161 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31983.161,31987.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31987.21,31991.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31995.8,31997.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31997.109,32005.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32005.32,32008.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32008.58,32012.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32014.10,32014.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32014.67,32018.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32020.10,32020.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32020.66,32024.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32030.8,32030.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32030.112,32034.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32034.21,32038.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32042.8,32044.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32044.126,32048.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32048.21,32052.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32056.8,32056.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32056.119,32060.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32060.21,32064.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32068.8,32068.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32068.81,32073.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32073.32,32076.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32076.84,32078.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32080.10,32080.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32080.80,32082.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32084.10,32084.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32084.80,32086.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32088.10,32088.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32088.79,32090.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32090.47,32092.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32093.11,32093.38 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32096.10,32096.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32096.85,32098.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32098.47,32100.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32101.11,32101.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32104.10,32104.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32104.75,32106.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32108.10,32108.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32108.81,32110.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32112.10,32112.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32112.74,32114.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32116.10,32116.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32116.78,32118.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32124.8,32124.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32124.90,32126.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32128.8,32128.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32128.86,32130.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32130.54,32132.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32133.9,32133.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32136.8,32138.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32138.118,32142.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32142.21,32146.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32150.8,32150.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32150.120,32158.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32158.32,32161.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32161.61,32166.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32166.34,32172.104 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32172.104,32180.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32180.36,32185.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32185.88,32189.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32189.27,32193.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32197.14,32197.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32197.91,32201.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32201.27,32205.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32209.14,32209.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32209.58,32213.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32215.14,32215.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32215.58,32219.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32221.14,32223.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32223.91,32227.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32227.27,32231.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32235.14,32235.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32235.88,32239.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32239.27,32243.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32247.14,32247.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32247.89,32251.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32251.27,32255.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32259.14,32259.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32259.91,32263.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32263.27,32267.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32271.14,32273.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32273.84,32277.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32277.27,32281.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32285.14,32285.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32285.87,32289.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32289.27,32293.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32297.14,32297.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32297.57,32301.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32307.12,32307.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32307.109,32316.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32318.12,32318.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32318.107,32327.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32329.12,32329.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32329.77,32331.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32341.8,32343.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32343.116,32347.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32347.21,32351.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32355.8,32355.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32355.112,32363.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32363.32,32366.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32366.61,32372.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32372.34,32374.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32374.69,32376.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32377.12,32377.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32377.74,32379.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32381.12,32381.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32381.71,32383.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32388.10,32388.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32388.57,32393.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32393.34,32396.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32396.77,32400.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32402.12,32402.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32402.75,32404.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32414.8,32414.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32414.78,32418.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32420.8,32420.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32420.92,32425.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32425.32,32429.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32429.82,32431.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32433.10,32433.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32433.80,32435.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32437.10,32439.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32439.113,32447.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32447.34,32450.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32450.82,32455.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32455.36,32458.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32458.107,32460.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32462.14,32462.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32462.96,32464.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32466.14,32466.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32466.102,32468.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32474.12,32474.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32474.72,32478.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32480.12,32482.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32482.102,32490.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32490.36,32493.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32493.73,32497.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32499.14,32499.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32499.62,32503.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32505.14,32505.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32505.68,32509.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32515.12,32515.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32515.98,32523.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32523.36,32526.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32526.62,32530.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32532.14,32532.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32532.57,32536.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32542.12,32542.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32542.98,32550.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32550.36,32553.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32553.57,32557.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32559.14,32559.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32559.62,32563.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32565.14,32565.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32565.62,32569.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32571.14,32571.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32571.69,32575.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32577.14,32577.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32577.61,32581.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32587.12,32587.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32587.100,32595.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32595.36,32598.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32598.58,32602.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32612.10,32612.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32612.106,32621.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32627.8,32627.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32627.95,32629.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32629.45,32631.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32632.9,32632.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32635.8,32635.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32635.93,32640.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32640.32,32644.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32644.83,32646.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32648.10,32648.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32648.81,32650.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32652.10,32654.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32654.114,32662.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32662.34,32665.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32665.82,32670.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32670.36,32673.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32673.107,32675.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32677.14,32677.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32677.96,32679.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32681.14,32681.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32681.102,32683.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32689.12,32689.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32689.72,32693.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32695.12,32697.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32697.102,32705.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32705.36,32708.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32708.73,32712.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32714.14,32714.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32714.62,32718.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32720.14,32720.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32720.68,32724.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32730.12,32730.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32730.98,32738.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32738.36,32741.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32741.62,32745.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32747.14,32747.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32747.57,32751.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32757.12,32757.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32757.98,32765.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32765.36,32768.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32768.57,32772.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32774.14,32774.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32774.62,32778.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32780.14,32780.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32780.62,32784.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32786.14,32786.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32786.69,32790.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32792.14,32792.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32792.61,32796.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32802.12,32802.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32802.100,32810.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32810.36,32813.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32813.58,32817.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32827.10,32827.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32827.107,32836.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32842.8,32842.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32842.96,32844.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32844.45,32846.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32847.9,32847.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32850.8,32852.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32852.121,32856.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32856.21,32860.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32864.8,32864.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32864.116,32868.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32868.21,32872.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32876.8,32876.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32876.113,32884.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32884.32,32887.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32887.58,32892.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32892.34,32895.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32895.79,32897.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32899.12,32899.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32899.78,32901.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32907.10,32907.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32907.61,32911.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32913.10,32913.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32913.65,32917.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32919.10,32919.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32919.72,32922.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32922.47,32924.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32925.11,32925.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32929.10,32929.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32929.65,32932.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32932.47,32934.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32935.11,32935.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32939.10,32939.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32939.58,32943.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32949.8,32951.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32951.119,32955.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32955.21,32959.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32963.8,32963.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32963.111,32972.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32974.8,32976.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32976.106,32980.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32980.21,32984.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32988.8,32988.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32988.105,32992.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32992.21,32996.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33000.8,33000.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33000.77,33002.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33004.8,33006.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33006.105,33014.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33014.32,33017.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33017.54,33021.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33023.10,33023.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33023.59,33027.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33029.10,33029.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33029.56,33033.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33039.8,33039.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33039.104,33043.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33043.21,33047.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33051.8,33051.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33051.106,33055.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33055.21,33059.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33063.8,33065.124 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33065.124,33069.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33069.21,33073.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33077.8,33077.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33077.116,33085.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33085.32,33088.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33088.62,33092.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33094.10,33094.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33094.70,33098.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33100.10,33100.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33100.63,33104.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33114.6,33114.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33114.53,33119.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33119.30,33123.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33123.74,33125.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33127.8,33127.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33127.66,33129.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33131.8,33133.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33133.91,33142.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33144.8,33144.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33144.94,33153.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33155.8,33155.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33155.91,33164.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33170.6,33172.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33172.94,33176.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33176.19,33180.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33184.6,33184.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33184.97,33188.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33188.19,33192.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33196.6,33196.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33196.89,33205.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33207.6,33207.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33207.57,33211.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33213.6,33213.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33213.59,33218.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33218.30,33223.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33223.103,33227.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33227.21,33231.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33235.8,33235.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33235.94,33244.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33246.8,33246.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33246.101,33255.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33261.6,33261.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33261.58,33266.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33266.30,33270.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33270.82,33272.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33272.54,33274.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33275.9,33275.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33278.8,33280.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33280.97,33288.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33288.32,33291.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33291.54,33295.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33297.10,33297.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33297.59,33301.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33303.10,33303.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33303.56,33307.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33313.8,33313.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33313.94,33321.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33321.32,33324.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33324.54,33328.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33330.10,33330.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33330.59,33334.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33336.10,33336.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33336.56,33340.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33346.8,33346.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33346.74,33348.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33350.8,33350.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33350.72,33352.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33358.6,33358.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33358.50,33363.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33363.30,33368.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33368.86,33377.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33379.8,33379.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33379.88,33388.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33390.8,33390.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33390.87,33399.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33415.2,33417.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33417.86,33425.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33425.26,33428.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33428.52,33433.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33433.27,33438.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33438.60,33440.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33442.6,33442.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33442.65,33444.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33446.6,33446.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33446.62,33448.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33458.2,33458.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33458.82,33462.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33462.15,33466.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33470.2,33470.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33470.94,33474.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33474.15,33478.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33484.2,33486.88 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33486.88,33494.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33494.26,33497.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33497.67,33501.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33503.4,33505.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33505.101,33509.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33509.17,33513.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33517.4,33517.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33517.93,33526.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33532.2,33532.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33532.91,33536.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33536.15,33540.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33546.2,33548.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33548.101,33552.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33552.15,33556.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33560.2,33560.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33560.100,33568.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33568.26,33571.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33571.61,33574.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33574.41,33576.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33577.5,33577.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33586.2,33586.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33586.62,33591.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33591.26,33597.110 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33597.110,33601.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33601.17,33605.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33609.4,33609.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33609.106,33613.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33613.17,33617.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33621.4,33621.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33621.110,33625.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33625.17,33629.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33633.4,33633.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33633.72,33636.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33636.41,33638.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33639.5,33639.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33643.4,33645.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33645.106,33654.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33656.4,33656.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33656.108,33664.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33664.28,33667.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33667.53,33672.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33672.30,33676.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33676.74,33678.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33680.8,33680.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33680.66,33682.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33684.8,33686.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33686.91,33695.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33697.8,33697.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33697.94,33706.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33708.8,33708.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33708.91,33717.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33727.4,33727.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33727.106,33736.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33738.4,33738.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33738.112,33747.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33749.4,33749.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33749.85,33751.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33751.19,33753.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33754.5,33754.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33757.4,33757.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33757.73,33762.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33762.28,33765.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33765.72,33767.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33769.6,33769.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33769.68,33771.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33773.6,33773.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33773.65,33775.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33787.2,33789.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33789.73,33793.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33793.15,33797.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33801.2,33801.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33801.75,33809.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33809.26,33812.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33812.48,33816.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33818.4,33818.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33818.53,33822.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33824.4,33824.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33824.50,33828.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33836.2,33838.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33838.65,33846.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33846.26,33849.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33849.48,33853.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33855.4,33855.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33855.53,33859.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33861.4,33861.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33861.50,33865.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33871.2,33871.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33871.64,33875.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33875.15,33879.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33884.2,33884.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33884.66,33889.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33889.26,33895.104 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33895.104,33899.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33899.17,33903.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33907.4,33907.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33907.105,33916.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33918.4,33918.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33918.106,33927.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33929.4,33929.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33929.88,33931.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33931.19,33933.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33934.5,33934.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33937.4,33937.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33937.76,33942.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33942.28,33945.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33945.72,33947.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33949.6,33949.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33949.68,33951.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33953.6,33953.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33953.65,33955.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33961.4,33961.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33961.75,33964.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33964.41,33966.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33967.5,33967.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33971.4,33973.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33973.100,33977.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33977.17,33981.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33985.4,33985.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33985.103,33994.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33996.4,33996.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33996.102,34005.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34007.4,34009.136 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34009.136,34017.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34017.28,34020.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34020.74,34025.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34025.30,34029.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34029.99,34033.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34039.6,34039.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34039.71,34044.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34044.30,34048.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34048.85,34050.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34056.6,34056.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34056.72,34061.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34061.30,34065.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34065.86,34069.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34071.8,34071.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34071.91,34073.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34075.8,34075.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34075.91,34077.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34083.6,34083.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34083.72,34088.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34088.30,34092.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34092.86,34096.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34098.8,34098.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34098.91,34100.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34102.8,34102.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34102.96,34106.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34116.4,34116.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34116.125,34120.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34120.17,34124.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34132.2,34135.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34135.16,34137.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34138.2,34140.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34143.91,34149.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34149.16,34150.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34150.55,34154.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34155.3,34155.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34157.2,34157.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34160.112,34179.2 10 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34182.93,34191.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34191.58,34195.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34195.48,34198.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34199.3,34199.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34202.2,34202.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34202.58,34205.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34207.2,34207.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34207.54,34210.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34212.2,34212.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34212.53,34216.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34216.48,34219.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34220.3,34220.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34223.2,34223.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34223.51,34226.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34228.2,34228.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34228.56,34231.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34233.2,34233.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34233.59,34238.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34240.2,34242.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34242.75,34250.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34250.26,34253.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34253.59,34258.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34258.28,34264.105 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34264.105,34272.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34272.30,34275.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34275.58,34280.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34280.32,34283.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34283.70,34285.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34287.10,34287.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34287.75,34289.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34291.10,34291.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34291.72,34293.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34299.8,34299.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34299.50,34303.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34305.8,34305.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34305.52,34309.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34311.8,34311.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34311.55,34316.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34316.32,34319.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34319.68,34321.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34323.10,34323.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34323.73,34325.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34327.10,34327.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34327.70,34329.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34339.6,34339.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34339.94,34347.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34347.30,34350.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34350.56,34354.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34356.8,34356.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34356.56,34360.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34362.8,34362.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34362.55,34367.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34367.32,34370.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34370.68,34372.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34374.10,34374.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34374.73,34376.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34378.10,34378.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34378.70,34380.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34390.6,34390.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34390.91,34398.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34398.30,34401.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34401.50,34405.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34407.8,34407.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34407.52,34411.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34413.8,34413.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34413.55,34417.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34419.8,34419.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34419.52,34424.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34424.32,34427.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34427.65,34429.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34431.10,34431.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34431.70,34433.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34435.10,34435.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34435.67,34437.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34447.6,34447.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34447.99,34455.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34455.30,34458.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34458.50,34462.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34464.8,34464.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34464.52,34468.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34470.8,34470.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34470.55,34475.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34475.32,34478.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34478.68,34480.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34482.10,34482.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34482.73,34484.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34486.10,34486.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34486.70,34488.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34494.8,34494.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34494.52,34499.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34499.32,34502.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34502.65,34504.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34506.10,34506.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34506.70,34508.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34510.10,34510.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34510.67,34512.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34522.6,34522.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34522.102,34530.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34530.30,34535.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34535.87,34539.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34539.21,34543.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34547.8,34547.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34547.88,34556.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34558.8,34560.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34560.82,34564.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34564.21,34568.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34572.8,34572.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34572.83,34581.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34583.8,34583.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34583.63,34588.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34588.32,34591.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34591.75,34593.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34595.10,34595.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34595.80,34597.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34599.10,34599.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34599.77,34601.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34611.6,34611.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34611.99,34619.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34619.30,34622.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34622.55,34626.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34628.8,34628.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34628.60,34633.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34633.32,34636.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34636.72,34638.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34640.10,34640.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34640.77,34642.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34644.10,34644.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34644.74,34646.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34656.6,34656.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34656.107,34664.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34664.30,34667.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34667.50,34671.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34673.8,34673.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34673.52,34677.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34679.8,34679.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34679.55,34684.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34684.32,34687.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34687.68,34689.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34691.10,34691.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34691.73,34693.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34695.10,34695.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34695.70,34697.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34703.8,34703.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34703.60,34708.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34708.32,34711.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34711.72,34713.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34715.10,34715.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34715.77,34717.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34719.10,34719.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34719.74,34721.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34731.6,34731.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34731.99,34739.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34739.30,34744.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34744.72,34752.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34752.32,34755.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34755.54,34759.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34761.10,34761.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34761.59,34765.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34767.10,34767.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34767.56,34771.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34777.8,34777.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34777.80,34785.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34785.32,34788.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34788.54,34792.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34794.10,34794.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34794.59,34798.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34800.10,34800.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34800.56,34804.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34814.6,34816.95 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34816.95,34825.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34827.6,34827.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34827.107,34831.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34831.19,34835.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34847.2,34847.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34847.78,34855.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34855.26,34858.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34858.53,34863.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34863.28,34866.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34866.65,34868.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34870.6,34870.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34870.70,34872.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34874.6,34874.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34874.67,34876.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34886.2,34886.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34886.90,34890.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34890.15,34894.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34898.2,34898.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34898.75,34902.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34902.15,34906.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34910.2,34912.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34912.77,34920.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34920.26,34923.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34923.48,34927.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34929.4,34929.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34929.53,34933.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34935.4,34935.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34935.50,34939.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34945.2,34945.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34945.78,34953.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34953.26,34956.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34956.59,34961.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34961.27,34966.61 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34966.61,34968.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34970.6,34970.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34970.66,34972.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34974.6,34974.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34974.63,34976.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34986.2,34986.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34986.80,34994.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34994.26,34997.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34997.58,35003.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35003.28,35005.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35005.63,35007.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35008.6,35008.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35008.68,35010.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35012.6,35012.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35012.65,35014.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35019.4,35021.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35021.109,35029.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35029.28,35032.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35032.63,35037.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35037.30,35042.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35042.128,35046.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35046.21,35050.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35054.8,35054.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35054.129,35062.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35062.32,35065.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35065.75,35070.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35070.34,35076.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35076.119,35080.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35080.25,35084.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35088.12,35088.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35088.120,35092.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35092.25,35096.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35100.12,35100.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35100.118,35104.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35104.25,35108.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35112.12,35114.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35114.126,35122.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35122.36,35125.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35125.61,35128.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35128.51,35130.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35131.15,35131.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35135.14,35135.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35135.58,35139.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35145.12,35145.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35145.123,35154.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35156.12,35156.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35156.123,35165.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35167.12,35167.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35167.89,35172.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35172.36,35175.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35175.80,35177.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35179.14,35179.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35179.76,35181.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35183.14,35183.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35183.73,35185.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35203.6,35205.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35205.109,35209.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35209.19,35213.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35217.6,35217.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35217.109,35221.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35221.19,35225.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35229.6,35229.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35229.54,35234.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35234.30,35239.126 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35239.126,35243.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35243.21,35247.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35251.8,35251.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35251.126,35255.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35255.21,35259.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35263.8,35265.144 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35265.144,35273.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35273.32,35276.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35276.57,35281.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35281.34,35286.127 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35286.127,35290.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35290.25,35294.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35298.12,35298.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35298.130,35302.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35302.25,35306.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35314.10,35314.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35314.66,35319.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35319.34,35324.141 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35324.141,35328.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35328.25,35332.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35336.12,35336.144 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35336.144,35340.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35340.25,35344.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35356.8,35356.145 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35356.145,35360.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35360.21,35364.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35372.6,35372.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35372.61,35377.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35377.30,35382.142 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35382.142,35390.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35390.32,35393.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35393.80,35396.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35396.47,35398.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35399.11,35399.137 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35403.10,35405.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35405.106,35409.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35409.23,35413.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35417.10,35417.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35417.107,35421.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35421.23,35425.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35433.8,35433.135 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35433.135,35437.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35437.21,35441.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35445.8,35447.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35447.118,35451.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35451.21,35455.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35459.8,35459.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35459.125,35467.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35467.32,35470.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35470.79,35473.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35473.47,35475.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35476.11,35476.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35480.10,35482.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35482.106,35486.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35486.23,35490.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35494.10,35494.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35494.107,35498.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35498.23,35502.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35518.4,35518.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35518.102,35526.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35526.28,35529.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35529.63,35534.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35534.30,35539.128 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35539.128,35543.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35543.21,35547.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35551.8,35551.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35551.129,35559.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35559.32,35562.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35562.75,35567.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35567.34,35573.119 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35573.119,35577.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35577.25,35581.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35585.12,35585.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35585.120,35589.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35589.25,35593.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35597.12,35597.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35597.118,35601.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35601.25,35605.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35609.12,35611.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35611.126,35619.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35619.36,35622.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35622.61,35625.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35625.51,35627.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35628.15,35628.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35632.14,35632.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35632.58,35636.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35642.12,35642.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35642.123,35651.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35653.12,35653.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35653.123,35662.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35664.12,35664.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35664.89,35669.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35669.36,35672.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35672.80,35674.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35676.14,35676.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35676.76,35678.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35680.14,35680.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35680.73,35682.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35700.6,35700.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35700.71,35705.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35705.30,35711.122 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35711.122,35719.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35719.32,35722.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35722.57,35725.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35725.47,35727.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35728.11,35728.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35732.10,35732.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35732.54,35736.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35742.8,35742.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35742.119,35751.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35753.8,35753.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35753.119,35762.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35764.8,35766.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35766.113,35770.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35770.21,35774.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35778.8,35778.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35778.118,35787.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35789.8,35789.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35789.85,35794.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35794.32,35797.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35797.76,35799.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35801.10,35801.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35801.72,35803.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35805.10,35805.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35805.69,35807.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35813.8,35813.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35813.92,35818.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35818.32,35823.144 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35823.144,35831.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35831.34,35834.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35834.82,35837.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35837.49,35839.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35840.13,35840.139 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35844.12,35846.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35846.108,35850.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35850.25,35854.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35858.12,35858.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35858.109,35862.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35862.25,35866.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35874.10,35874.137 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35874.137,35878.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35878.23,35882.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35886.10,35888.120 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35888.120,35892.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35892.23,35896.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35900.10,35900.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35900.127,35908.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35908.34,35911.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35911.81,35914.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35914.49,35916.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35917.13,35917.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35921.12,35923.108 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35923.108,35927.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35927.25,35931.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35935.12,35935.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35935.109,35939.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35939.25,35943.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35959.6,35961.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35961.109,35965.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35965.19,35969.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35973.6,35973.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35973.109,35977.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35977.19,35981.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35985.6,35985.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35985.54,35990.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35990.30,35995.126 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35995.126,35999.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35999.21,36003.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36007.8,36007.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36007.126,36011.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36011.21,36015.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36019.8,36021.144 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36021.144,36029.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36029.32,36032.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36032.57,36037.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36037.34,36042.127 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36042.127,36046.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36046.25,36050.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36054.12,36054.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36054.130,36058.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36058.25,36062.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36070.10,36070.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36070.66,36075.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36075.34,36080.141 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36080.141,36084.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36084.25,36088.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36092.12,36092.144 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36092.144,36096.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36096.25,36100.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36112.8,36112.145 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36112.145,36116.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36116.21,36120.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36132.4,36132.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36132.99,36136.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36136.17,36140.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36148.2,36148.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36148.85,36152.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36152.15,36156.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36160.2,36162.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36162.83,36166.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36166.15,36170.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36174.2,36174.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36174.82,36182.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36182.26,36185.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36185.67,36190.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36190.28,36193.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36193.117,36195.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36201.4,36203.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36203.117,36207.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36207.17,36211.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36215.4,36215.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36215.116,36219.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36219.17,36223.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36227.4,36227.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36227.74,36232.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36232.28,36235.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36235.117,36240.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36240.30,36244.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36244.96,36249.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36249.32,36252.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36252.76,36254.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36256.10,36256.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36256.72,36258.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36260.10,36260.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36260.69,36262.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36268.8,36268.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36268.119,36273.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36273.32,36278.121 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36278.121,36282.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36282.23,36286.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36290.10,36290.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36290.126,36299.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36301.10,36303.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36303.123,36311.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36311.34,36316.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36316.87,36325.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36327.12,36327.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36327.87,36336.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36342.10,36342.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36342.129,36350.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36350.34,36353.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36353.63,36358.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36358.36,36363.106 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36363.106,36372.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36374.14,36374.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36374.106,36383.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36389.12,36389.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36389.65,36394.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36394.36,36399.110 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36399.110,36408.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36410.14,36410.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36410.110,36419.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36429.10,36429.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36429.125,36437.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36437.34,36442.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36442.89,36451.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36453.12,36453.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36453.89,36462.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36468.10,36470.132 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36470.132,36474.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36474.23,36478.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36482.10,36482.133 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36482.133,36486.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36486.23,36490.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36494.10,36494.124 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36494.124,36498.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36498.23,36502.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36506.10,36506.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36506.127,36514.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36514.34,36517.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36517.67,36520.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36520.49,36522.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36523.13,36523.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36531.10,36533.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36533.121,36537.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36537.23,36541.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36545.10,36545.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36545.130,36553.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36553.34,36556.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36556.69,36560.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36562.12,36562.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36562.59,36565.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36565.49,36567.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36568.13,36568.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36576.10,36576.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36576.120,36585.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36587.10,36587.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36587.120,36596.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36602.8,36602.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36602.107,36607.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36607.32,36610.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36610.78,36612.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36622.6,36622.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36622.103,36627.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36627.30,36631.79 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36631.79,36633.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36647.2,36647.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36647.67,36652.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36652.26,36655.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36655.87,36660.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36660.28,36664.75 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36664.75,36669.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36669.30,36674.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36674.86,36678.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36678.21,36682.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36686.8,36686.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36686.85,36690.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36690.21,36694.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36702.6,36702.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36702.88,36707.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36707.30,36710.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36710.86,36712.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36714.8,36714.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36714.79,36717.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36717.45,36719.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36720.9,36720.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36728.6,36728.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36728.86,36730.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36732.6,36732.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36732.83,36737.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36737.30,36742.104 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36742.104,36746.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36746.21,36750.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36754.8,36754.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36754.109,36762.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36762.32,36765.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36765.61,36768.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36768.47,36770.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36771.11,36771.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36779.8,36779.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36779.117,36787.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36787.32,36790.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36790.70,36793.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36793.47,36795.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36796.11,36796.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36804.8,36806.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36806.99,36810.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36810.21,36814.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36818.8,36818.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36818.101,36826.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36826.32,36829.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36829.60,36832.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36832.47,36834.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36835.11,36835.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36843.8,36843.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36843.104,36851.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36851.32,36854.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36854.58,36859.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36859.33,36866.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36866.67,36868.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36870.12,36870.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36870.72,36872.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36874.12,36874.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36874.69,36876.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36878.12,36878.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36878.66,36880.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36890.8,36890.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36890.103,36898.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36898.32,36901.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36901.64,36905.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36907.10,36907.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36907.61,36912.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36912.33,36919.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36919.67,36921.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36923.12,36923.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36923.72,36925.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36927.12,36927.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36927.69,36929.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36931.12,36931.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36931.66,36933.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36943.8,36943.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36943.107,36951.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36951.32,36954.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36954.62,36958.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36960.10,36960.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36960.61,36963.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36963.47,36965.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36966.11,36966.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36970.10,36970.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36970.63,36973.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36973.47,36975.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36976.11,36976.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36984.8,36984.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36984.91,36989.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36989.32,36992.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36992.85,36995.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36995.47,36997.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36998.11,36998.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37002.10,37002.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37002.90,37004.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37004.47,37006.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37007.11,37007.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37010.10,37010.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37010.93,37012.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37012.47,37014.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37015.11,37015.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37026.6,37028.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37028.105,37032.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37032.19,37036.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37040.6,37040.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37040.110,37049.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37051.6,37051.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37051.77,37056.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37056.30,37059.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37059.74,37061.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37063.8,37063.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37063.70,37065.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37067.8,37067.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37067.67,37069.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37075.6,37075.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37075.84,37080.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37080.30,37083.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37083.84,37088.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37088.32,37092.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37092.85,37094.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37096.10,37098.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37098.107,37102.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37102.23,37106.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37110.10,37110.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37110.103,37114.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37114.23,37118.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37122.10,37122.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37122.94,37130.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37130.34,37133.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37133.64,37136.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37136.49,37138.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37139.13,37139.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37143.12,37143.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37143.64,37146.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37146.49,37148.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37149.13,37149.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37153.12,37153.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37153.64,37156.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37156.49,37158.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37159.13,37159.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37167.10,37167.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37167.98,37176.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37178.10,37178.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37178.75,37180.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37186.8,37186.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37186.76,37191.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37191.32,37195.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37195.78,37197.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37199.10,37201.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37201.100,37205.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37205.23,37209.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37213.10,37213.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37213.96,37217.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37217.23,37221.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37225.10,37225.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37225.87,37233.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37233.34,37236.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37236.64,37239.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37239.49,37241.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37242.13,37242.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37246.12,37246.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37246.64,37249.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37249.49,37251.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37252.13,37252.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37256.12,37256.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37256.64,37259.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37259.49,37261.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37262.13,37262.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37270.10,37270.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37270.91,37279.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37281.10,37281.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37281.68,37283.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37289.8,37289.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37289.81,37294.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37294.32,37298.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37298.82,37300.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37302.10,37302.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37302.71,37304.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37306.10,37308.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37308.104,37312.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37312.23,37316.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37320.10,37320.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37320.100,37324.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37324.23,37328.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37332.10,37332.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37332.91,37340.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37340.34,37343.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37343.64,37346.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37346.49,37348.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37349.13,37349.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37353.12,37353.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37353.64,37356.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37356.49,37358.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37359.13,37359.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37363.12,37363.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37363.64,37366.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37366.49,37368.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37369.13,37369.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37377.10,37377.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37377.95,37386.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37400.4,37400.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37400.85,37405.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37405.28,37409.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37409.73,37414.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37414.30,37419.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37419.86,37423.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37423.21,37427.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37431.8,37431.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37431.85,37435.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37435.21,37439.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37447.6,37447.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37447.76,37449.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37451.6,37451.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37451.76,37453.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37455.6,37455.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37455.81,37460.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37460.30,37465.104 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37465.104,37469.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37469.21,37473.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37477.8,37477.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37477.109,37485.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37485.32,37488.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37488.61,37491.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37491.47,37493.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37494.11,37494.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37502.8,37502.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37502.117,37510.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37510.32,37513.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37513.70,37516.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37516.47,37518.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37519.11,37519.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37527.8,37529.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37529.99,37533.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37533.21,37537.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37541.8,37541.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37541.101,37549.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37549.32,37552.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37552.60,37555.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37555.47,37557.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37558.11,37558.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37566.8,37566.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37566.104,37574.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37574.32,37577.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37577.58,37582.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37582.33,37589.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37589.67,37591.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37593.12,37593.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37593.72,37595.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37597.12,37597.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37597.69,37599.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37601.12,37601.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37601.66,37603.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37613.8,37613.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37613.103,37621.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37621.32,37624.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37624.64,37628.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37630.10,37630.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37630.61,37635.33 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37635.33,37642.67 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37642.67,37644.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37646.12,37646.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37646.72,37648.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37650.12,37650.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37650.69,37652.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37654.12,37654.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37654.66,37656.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37666.8,37666.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37666.107,37674.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37674.32,37677.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37677.62,37681.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37683.10,37683.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37683.61,37686.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37686.47,37688.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37689.11,37689.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37693.10,37693.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37693.63,37696.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37696.47,37698.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37699.11,37699.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37707.8,37707.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37707.91,37712.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37712.32,37715.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37715.85,37718.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37718.47,37720.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37721.11,37721.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37725.10,37725.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37725.90,37727.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37727.47,37729.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37730.11,37730.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37733.10,37733.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37733.93,37735.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37735.47,37737.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37738.11,37738.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37749.6,37751.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37751.103,37755.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37755.19,37759.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37763.6,37763.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37763.108,37772.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37774.6,37774.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37774.75,37779.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37779.30,37782.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37782.74,37784.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37786.8,37786.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37786.70,37788.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37790.8,37790.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37790.67,37792.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37798.6,37798.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37798.82,37803.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37803.30,37806.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37806.84,37811.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37811.32,37815.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37815.85,37817.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37819.10,37821.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37821.107,37825.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37825.23,37829.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37833.10,37833.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37833.103,37837.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37837.23,37841.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37845.10,37845.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37845.94,37853.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37853.34,37856.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37856.64,37859.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37859.49,37861.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37862.13,37862.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37866.12,37866.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37866.64,37869.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37869.49,37871.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37872.13,37872.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37876.12,37876.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37876.64,37879.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37879.49,37881.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37882.13,37882.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37890.10,37890.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37890.98,37899.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37901.10,37901.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37901.75,37903.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37909.8,37909.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37909.76,37914.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37914.32,37918.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37918.78,37920.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37922.10,37924.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37924.100,37928.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37928.23,37932.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37936.10,37936.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37936.96,37940.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37940.23,37944.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37948.10,37948.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37948.87,37956.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37956.34,37959.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37959.64,37962.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37962.49,37964.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37965.13,37965.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37969.12,37969.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37969.64,37972.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37972.49,37974.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37975.13,37975.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37979.12,37979.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37979.64,37982.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37982.49,37984.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37985.13,37985.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37993.10,37993.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37993.91,38002.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38004.10,38004.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38004.68,38006.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38012.8,38012.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38012.81,38017.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38017.32,38021.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38021.82,38023.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38025.10,38025.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38025.71,38027.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38029.10,38031.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38031.104,38035.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38035.23,38039.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38043.10,38043.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38043.100,38047.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38047.23,38051.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38055.10,38055.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38055.91,38063.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38063.34,38066.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38066.64,38069.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38069.49,38071.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38072.13,38072.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38076.12,38076.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38076.64,38079.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38079.49,38081.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38082.13,38082.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38086.12,38086.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38086.64,38089.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38089.49,38091.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38092.13,38092.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38100.10,38100.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38100.95,38109.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38127.2,38127.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38127.62,38132.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38132.26,38138.110 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38138.110,38142.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38142.17,38146.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38150.4,38150.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38150.106,38154.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38154.17,38158.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38162.4,38162.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38162.110,38166.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38166.17,38170.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38174.4,38174.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38174.72,38177.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38177.41,38179.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38180.5,38180.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38184.4,38186.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38186.106,38195.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38197.4,38197.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38197.108,38205.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38205.28,38208.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38208.53,38213.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38213.30,38217.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38217.74,38219.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38221.8,38221.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38221.66,38223.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38225.8,38227.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38227.91,38236.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38238.8,38238.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38238.94,38247.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38249.8,38249.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38249.91,38258.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38268.4,38268.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38268.106,38277.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38279.4,38279.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38279.112,38288.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38290.4,38290.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38290.85,38292.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38292.19,38294.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38295.5,38295.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38298.4,38298.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38298.73,38303.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38303.28,38306.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38306.72,38308.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38310.6,38310.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38310.68,38312.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38314.6,38314.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38314.65,38316.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38326.2,38328.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38328.71,38336.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38336.26,38341.95 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38341.95,38345.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38345.17,38349.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38353.4,38353.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38353.94,38357.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38357.17,38361.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38365.4,38365.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38365.50,38370.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38370.28,38375.106 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38375.106,38379.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38379.19,38383.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38387.6,38387.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38387.108,38395.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38395.30,38398.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38398.67,38402.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38408.6,38408.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38408.115,38416.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38416.30,38419.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38419.60,38424.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38424.32,38430.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38430.111,38434.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38434.23,38438.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38442.10,38442.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38442.107,38450.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38450.34,38455.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38455.89,38464.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38466.12,38466.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38466.89,38475.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38477.12,38477.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38477.90,38486.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38492.10,38492.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38492.76,38497.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38497.34,38500.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38500.78,38502.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38504.12,38504.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38504.74,38506.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38508.12,38508.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38508.71,38510.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38516.10,38516.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38516.72,38521.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38521.34,38526.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38526.90,38535.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38537.12,38537.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38537.92,38546.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38548.12,38548.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38548.91,38557.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38567.8,38567.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38567.67,38571.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38577.6,38577.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38577.107,38585.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38585.30,38588.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38588.60,38593.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38593.32,38599.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38599.111,38603.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38603.23,38607.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38611.10,38611.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38611.107,38619.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38619.34,38624.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38624.89,38633.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38635.12,38635.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38635.89,38644.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38646.12,38646.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38646.90,38655.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38661.10,38661.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38661.76,38666.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38666.34,38669.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38669.78,38671.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38673.12,38673.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38673.74,38675.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38677.12,38677.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38677.71,38679.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38685.10,38685.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38685.72,38690.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38690.34,38695.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38695.90,38704.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38706.12,38706.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38706.92,38715.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38717.12,38717.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38717.91,38726.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38736.8,38736.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38736.53,38741.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38741.32,38747.105 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38747.105,38751.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38751.23,38755.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38759.10,38759.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38759.101,38767.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38767.34,38772.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38772.89,38781.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38783.12,38783.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38783.89,38792.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38794.12,38794.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38794.90,38803.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38809.10,38809.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38809.81,38813.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38815.10,38815.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38815.70,38820.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38820.34,38823.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38823.78,38825.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38827.12,38827.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38827.74,38829.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38831.12,38831.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38831.71,38833.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38839.10,38839.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38839.66,38844.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38844.34,38849.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38849.90,38858.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38860.12,38860.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38860.92,38869.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38871.12,38871.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38871.91,38880.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38894.6,38894.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38894.74,38898.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38900.6,38900.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38900.75,38902.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38904.6,38906.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38906.106,38910.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38910.19,38914.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38918.6,38918.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38918.105,38926.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38926.30,38929.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38929.65,38934.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38934.32,38937.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38937.80,38942.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38942.34,38948.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38948.102,38952.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38952.25,38956.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38960.12,38960.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38960.98,38964.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38964.25,38968.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38972.12,38972.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38972.89,38980.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38980.36,38983.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38983.66,38986.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38986.51,38988.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38989.15,38989.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38993.14,38993.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38993.66,38996.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38996.51,38998.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38999.15,38999.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39003.14,39003.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39003.66,39006.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39006.51,39008.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39009.15,39009.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39017.12,39017.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39017.70,39019.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39029.8,39029.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39029.66,39033.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39039.6,39039.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39039.82,39044.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39044.30,39050.116 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39050.116,39054.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39054.21,39058.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39062.8,39062.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39062.113,39066.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39066.21,39070.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39074.8,39074.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39074.120,39082.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39082.32,39085.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39085.56,39090.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39090.34,39095.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39095.101,39099.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39099.25,39103.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39107.12,39107.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39107.97,39111.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39111.25,39115.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39119.12,39119.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39119.88,39127.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39127.36,39130.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39130.66,39133.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39133.51,39135.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39136.15,39136.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39140.14,39140.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39140.66,39143.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39143.51,39145.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39146.15,39146.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39150.14,39150.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39150.66,39153.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39153.51,39155.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39156.15,39156.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39164.12,39164.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39164.69,39166.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39172.10,39172.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39172.57,39177.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39177.34,39183.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39183.102,39187.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39187.25,39191.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39195.12,39195.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39195.98,39199.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39199.25,39203.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39207.12,39207.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39207.89,39215.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39215.36,39218.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39218.66,39221.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39221.51,39223.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39224.15,39224.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39228.14,39228.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39228.66,39231.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39231.51,39233.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39234.15,39234.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39238.14,39238.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39238.66,39241.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39241.51,39243.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39244.15,39244.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39252.12,39252.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39252.70,39254.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39260.10,39260.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39260.67,39264.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39270.8,39272.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39272.119,39276.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39276.21,39280.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39284.8,39284.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39284.115,39292.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39292.32,39297.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39297.87,39306.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39308.10,39308.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39308.87,39317.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39319.10,39319.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39319.88,39328.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39334.8,39336.115 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39336.115,39344.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39344.32,39349.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39349.97,39357.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39357.34,39362.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39362.83,39366.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39366.25,39370.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39374.12,39374.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39374.91,39378.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39378.25,39382.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39390.10,39390.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39390.93,39398.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39398.34,39403.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39403.82,39411.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39411.36,39416.117 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39416.117,39420.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39420.27,39424.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39428.14,39428.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39428.109,39436.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39436.38,39439.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39439.74,39444.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39444.40,39448.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39448.86,39450.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39452.18,39452.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39452.94,39454.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39454.55,39456.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39457.19,39457.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39460.18,39460.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39460.88,39464.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39470.16,39470.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39470.74,39475.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39475.40,39479.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39479.86,39481.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39483.18,39483.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39483.94,39485.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39485.55,39487.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39488.19,39488.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39491.18,39491.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39491.88,39495.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39509.12,39509.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39509.86,39513.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39513.25,39517.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39521.12,39521.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39521.90,39525.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39525.25,39529.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39533.12,39533.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39533.83,39537.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39537.25,39541.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39545.12,39545.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39545.90,39549.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39549.25,39553.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39561.10,39561.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39561.97,39569.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39569.34,39574.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39574.82,39578.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39578.25,39582.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39586.12,39586.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39586.91,39590.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39590.25,39594.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39602.10,39602.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39602.85,39610.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39610.34,39615.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39615.84,39619.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39619.25,39623.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39631.10,39631.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39631.97,39639.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39639.34,39644.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39644.83,39648.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39648.25,39652.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39656.12,39656.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39656.83,39660.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39660.25,39664.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39668.12,39668.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39668.81,39672.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39672.25,39676.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39684.10,39684.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39684.85,39692.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39692.34,39697.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39697.90,39701.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39701.25,39705.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39709.12,39709.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39709.91,39713.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39713.25,39717.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39721.12,39721.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39721.95,39725.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39725.25,39729.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39733.12,39733.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39733.88,39737.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39737.25,39741.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39749.10,39749.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39749.98,39757.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39757.34,39762.115 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39762.115,39766.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39766.25,39770.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39774.12,39774.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39774.97,39778.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39778.25,39782.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39786.12,39786.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39786.93,39790.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39790.25,39794.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39798.12,39798.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39798.90,39802.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39802.25,39806.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39810.12,39810.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39810.93,39814.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39814.25,39818.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39822.12,39822.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39822.106,39826.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39826.25,39830.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39834.12,39834.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39834.94,39838.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39838.25,39842.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39846.12,39846.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39846.87,39850.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39850.25,39854.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39858.12,39858.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39858.95,39862.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39862.25,39866.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39870.12,39870.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39870.103,39874.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39874.25,39878.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39882.12,39882.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39882.100,39886.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39886.25,39890.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39894.12,39894.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39894.97,39898.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39898.25,39902.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39914.8,39914.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39914.125,39918.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39918.21,39922.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39926.8,39928.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39928.118,39932.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39932.21,39936.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39940.8,39940.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39940.121,39944.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39944.21,39948.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39952.8,39952.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39952.88,39955.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39955.45,39957.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39958.9,39958.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39962.8,39962.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39962.84,39967.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39967.32,39970.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39970.76,39972.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39974.10,39974.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39974.72,39976.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39978.10,39978.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39978.69,39980.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39986.8,39986.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39986.86,39991.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39991.32,39996.96 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39996.96,40004.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40004.34,40007.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40007.56,40011.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40013.12,40013.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40013.61,40017.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40019.12,40019.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40019.58,40023.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40029.10,40029.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40029.95,40037.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40037.34,40042.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40042.97,40050.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40050.36,40053.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40053.75,40057.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40059.14,40059.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40059.75,40063.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40069.12,40069.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40069.93,40073.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40073.25,40077.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40085.10,40085.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40085.95,40089.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40089.23,40093.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40097.10,40097.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40097.99,40105.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40105.34,40108.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40108.55,40112.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40122.8,40122.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40122.80,40127.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40127.32,40132.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40132.88,40141.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40143.10,40143.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40143.90,40152.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40154.10,40154.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40154.89,40163.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40169.8,40169.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40169.84,40173.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40183.4,40183.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40183.61,40187.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40189.4,40189.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40189.51,40193.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40199.2,40199.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40199.80,40207.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40207.26,40210.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40210.50,40216.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40216.28,40218.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40218.62,40220.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40221.6,40221.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40221.67,40223.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40225.6,40225.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40225.64,40227.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40232.4,40232.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40232.50,40237.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40237.28,40240.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40240.75,40242.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40244.6,40246.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40246.106,40250.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40250.19,40254.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40258.6,40258.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40258.105,40266.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40266.30,40269.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40269.65,40274.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40274.32,40277.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40277.80,40282.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40282.34,40288.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40288.102,40292.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40292.25,40296.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40300.12,40300.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40300.98,40304.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40304.25,40308.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40312.12,40312.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40312.89,40320.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40320.36,40323.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40323.66,40326.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40326.51,40328.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40329.15,40329.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40333.14,40333.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40333.66,40336.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40336.51,40338.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40339.15,40339.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40343.14,40343.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40343.66,40346.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40346.51,40348.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40349.15,40349.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40357.12,40357.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40357.70,40359.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40373.6,40373.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40373.82,40378.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40378.30,40384.123 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40384.123,40388.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40388.21,40392.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40396.8,40396.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40396.120,40400.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40400.21,40404.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40408.8,40408.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40408.127,40416.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40416.32,40419.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40419.56,40424.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40424.34,40429.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40429.101,40433.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40433.25,40437.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40441.12,40441.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40441.97,40445.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40445.25,40449.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40453.12,40453.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40453.88,40461.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40461.36,40464.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40464.66,40467.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40467.51,40469.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40470.15,40470.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40474.14,40474.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40474.66,40477.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40477.51,40479.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40480.15,40480.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40484.14,40484.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40484.66,40487.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40487.51,40489.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40490.15,40490.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40498.12,40498.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40498.69,40500.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40506.10,40506.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40506.57,40511.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40511.34,40517.102 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40517.102,40521.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40521.25,40525.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40529.12,40529.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40529.98,40533.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40533.25,40537.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40541.12,40541.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40541.89,40549.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40549.36,40552.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40552.66,40555.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40555.51,40557.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40558.15,40558.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40562.14,40562.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40562.66,40565.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40565.51,40567.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40568.15,40568.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40572.14,40572.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40572.66,40575.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40575.51,40577.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40578.15,40578.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40586.12,40586.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40586.70,40588.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40594.10,40594.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40594.67,40598.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40604.8,40606.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40606.119,40610.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40610.21,40614.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40618.8,40618.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40618.115,40626.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40626.32,40631.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40631.87,40640.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40642.10,40642.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40642.87,40651.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40653.10,40653.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40653.88,40662.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40668.8,40670.115 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40670.115,40678.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40678.32,40683.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40683.97,40691.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40691.34,40696.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40696.83,40700.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40700.25,40704.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40708.12,40708.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40708.91,40712.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40712.25,40716.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40724.10,40724.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40724.93,40732.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40732.34,40737.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40737.82,40745.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40745.36,40750.117 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40750.117,40754.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40754.27,40758.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40762.14,40762.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40762.109,40770.38 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40770.38,40773.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40773.74,40778.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40778.40,40782.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40782.86,40784.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40786.18,40786.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40786.94,40788.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40788.55,40790.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40791.19,40791.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40794.18,40794.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40794.88,40798.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40804.16,40804.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40804.74,40809.40 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40809.40,40813.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40813.86,40815.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40817.18,40817.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40817.94,40819.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40819.55,40821.20 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40822.19,40822.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40825.18,40825.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40825.88,40829.19 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40843.12,40843.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40843.86,40847.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40847.25,40851.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40855.12,40855.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40855.90,40859.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40859.25,40863.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40867.12,40867.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40867.83,40871.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40871.25,40875.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40879.12,40879.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40879.90,40883.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40883.25,40887.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40895.10,40895.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40895.97,40903.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40903.34,40908.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40908.82,40912.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40912.25,40916.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40920.12,40920.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40920.91,40924.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40924.25,40928.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40936.10,40936.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40936.85,40944.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40944.34,40949.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40949.84,40953.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40953.25,40957.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40965.10,40965.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40965.97,40973.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40973.34,40978.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40978.83,40982.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40982.25,40986.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40990.12,40990.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40990.83,40994.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40994.25,40998.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41002.12,41002.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41002.81,41006.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41006.25,41010.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41018.10,41018.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41018.85,41026.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41026.34,41031.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41031.90,41035.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41035.25,41039.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41043.12,41043.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41043.91,41047.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41047.25,41051.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41055.12,41055.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41055.95,41059.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41059.25,41063.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41067.12,41067.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41067.88,41071.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41071.25,41075.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41083.10,41083.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41083.98,41091.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41091.34,41096.115 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41096.115,41100.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41100.25,41104.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41108.12,41108.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41108.97,41112.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41112.25,41116.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41120.12,41120.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41120.93,41124.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41124.25,41128.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41132.12,41132.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41132.90,41136.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41136.25,41140.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41144.12,41144.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41144.93,41148.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41148.25,41152.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41156.12,41156.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41156.106,41160.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41160.25,41164.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41168.12,41168.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41168.94,41172.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41172.25,41176.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41180.12,41180.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41180.87,41184.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41184.25,41188.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41192.12,41192.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41192.95,41196.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41196.25,41200.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41204.12,41204.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41204.103,41208.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41208.25,41212.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41216.12,41216.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41216.100,41220.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41220.25,41224.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41228.12,41228.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41228.97,41232.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41232.25,41236.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41248.8,41248.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41248.125,41252.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41252.21,41256.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41260.8,41260.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41260.88,41263.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41263.45,41265.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41266.9,41266.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41270.8,41270.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41270.84,41275.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41275.32,41278.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41278.76,41280.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41282.10,41282.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41282.72,41284.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41286.10,41286.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41286.69,41288.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41294.8,41294.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41294.80,41299.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41299.32,41304.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41304.88,41313.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41315.10,41315.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41315.90,41324.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41326.10,41326.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41326.89,41335.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41341.8,41341.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41341.81,41346.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41346.32,41350.66 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41350.66,41352.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41354.10,41356.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41356.99,41360.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41360.23,41364.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41368.10,41368.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41368.96,41377.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41379.10,41379.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41379.96,41388.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41394.8,41394.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41394.88,41399.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41399.32,41403.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41403.72,41405.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41407.10,41409.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41409.102,41418.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41420.10,41420.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41420.102,41429.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41443.4,41443.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41443.47,41449.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41449.28,41451.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41451.62,41453.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41454.6,41454.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41454.67,41456.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41458.6,41458.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41458.64,41460.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41469.2,41469.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41469.79,41473.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41473.15,41477.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41481.2,41483.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41483.74,41491.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41491.26,41494.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41494.57,41498.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41500.4,41500.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41500.55,41504.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41510.2,41510.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41510.73,41518.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41518.26,41523.118 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41523.118,41531.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41531.28,41534.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41534.59,41538.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41540.6,41540.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41540.57,41544.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41550.4,41550.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41550.126,41554.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41554.17,41558.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41562.4,41564.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41564.116,41568.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41568.17,41572.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41576.4,41576.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41576.108,41584.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41584.28,41587.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41587.59,41591.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41593.6,41593.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41593.57,41597.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41599.6,41599.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41599.61,41603.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41609.4,41611.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41611.114,41615.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41615.17,41619.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41623.4,41623.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41623.112,41631.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41631.28,41634.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41634.50,41638.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41640.6,41640.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41640.55,41644.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41646.6,41646.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41646.52,41650.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41660.2,41660.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41660.69,41668.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41668.26,41671.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41671.57,41675.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41677.4,41677.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41677.55,41681.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41683.4,41683.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41683.59,41687.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41693.2,41693.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41693.69,41697.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41697.15,41701.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41705.2,41705.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41705.79,41713.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41713.26,41718.118 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41718.118,41726.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41726.28,41729.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41729.59,41733.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41735.6,41735.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41735.57,41739.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41745.4,41745.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41745.126,41749.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41749.17,41753.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41757.4,41759.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41759.104,41763.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41763.17,41767.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41771.4,41771.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41771.99,41775.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41775.17,41779.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41783.4,41783.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41783.85,41787.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41787.17,41791.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41795.4,41797.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41797.116,41801.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41801.17,41805.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41809.4,41809.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41809.108,41817.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41817.28,41820.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41820.59,41824.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41826.6,41826.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41826.57,41830.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41832.6,41832.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41832.61,41836.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41842.4,41844.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41844.114,41848.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41848.17,41852.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41856.4,41856.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41856.112,41864.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41864.28,41867.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41867.50,41871.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41873.6,41873.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41873.55,41877.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41879.6,41879.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41879.52,41883.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41889.4,41889.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41889.53,41894.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41894.28,41897.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41897.66,41902.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41902.30,41906.68 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41906.68,41911.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41911.32,41914.76 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41914.76,41916.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41918.10,41918.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41918.72,41920.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41922.10,41922.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41922.69,41924.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41930.8,41930.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41930.64,41935.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41935.32,41938.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41938.73,41943.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41943.34,41947.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41947.84,41949.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41951.12,41953.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41953.106,41957.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41957.25,41961.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41965.12,41965.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41965.102,41969.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41969.25,41973.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41977.12,41977.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41977.93,41985.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41985.36,41988.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41988.66,41991.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41991.51,41993.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41994.15,41994.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41998.14,41998.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41998.66,42001.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42001.51,42003.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42004.15,42004.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42008.14,42008.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42008.66,42011.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42011.51,42013.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42014.15,42014.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42022.12,42022.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42022.97,42031.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42033.12,42033.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42033.74,42035.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42041.10,42043.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42043.91,42047.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42047.23,42051.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42055.10,42055.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42055.92,42063.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42063.34,42066.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42066.62,42069.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42069.49,42071.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42072.13,42072.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42080.10,42080.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42080.95,42088.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42088.34,42091.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42091.60,42096.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42096.35,42103.69 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42103.69,42105.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42107.14,42107.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42107.74,42109.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42111.14,42111.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42111.71,42113.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42115.14,42115.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42115.68,42117.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42127.10,42127.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42127.73,42132.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42132.34,42135.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42135.82,42137.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42137.49,42139.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42140.13,42140.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42143.12,42143.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42143.82,42145.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42145.49,42147.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42148.13,42148.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42151.12,42151.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42151.82,42154.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42154.49,42156.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42157.13,42157.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42165.10,42167.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42167.107,42171.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42171.23,42175.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42179.10,42179.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42179.114,42183.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42183.23,42187.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42191.10,42191.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42191.117,42195.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42195.23,42199.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42203.10,42205.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42205.97,42209.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42209.23,42213.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42217.10,42217.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42217.98,42226.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42228.10,42228.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42228.106,42236.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42236.34,42239.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42239.64,42242.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42242.49,42244.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42245.13,42245.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42249.12,42249.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42249.64,42252.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42252.49,42254.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42255.13,42255.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42259.12,42259.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42259.64,42262.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42262.49,42264.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42265.13,42265.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42273.10,42273.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42273.102,42281.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42281.34,42284.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42284.63,42287.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42287.49,42289.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42290.13,42290.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42298.10,42298.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42298.76,42303.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42303.34,42307.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42307.87,42309.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42311.12,42313.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42313.109,42317.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42317.25,42321.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42325.12,42325.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42325.105,42329.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42329.25,42333.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42337.12,42337.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42337.96,42345.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42345.36,42348.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42348.66,42351.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42351.51,42353.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42354.15,42354.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42358.14,42358.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42358.66,42361.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42361.51,42363.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42364.15,42364.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42368.14,42368.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42368.66,42371.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42371.51,42373.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42374.15,42374.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42382.12,42382.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42382.100,42391.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42393.12,42393.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42393.77,42395.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42401.10,42401.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42401.75,42406.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42406.34,42409.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42409.84,42411.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42411.49,42413.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42414.13,42414.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42417.12,42417.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42417.84,42419.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42419.49,42421.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42422.13,42422.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42429.10,42429.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42429.81,42431.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42431.25,42433.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42434.11,42434.40 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42437.10,42437.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42437.68,42442.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42442.34,42446.80 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42446.80,42448.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42450.12,42452.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42452.102,42456.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42456.25,42460.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42464.12,42464.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42464.98,42468.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42468.25,42472.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42476.12,42476.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42476.89,42484.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42484.36,42487.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42487.66,42490.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42490.51,42492.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42493.15,42493.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42497.14,42497.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42497.66,42500.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42500.51,42502.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42503.15,42503.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42507.14,42507.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42507.66,42510.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42510.51,42512.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42513.15,42513.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42521.12,42521.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42521.93,42530.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42532.12,42532.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42532.70,42534.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42540.10,42540.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42540.72,42545.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42545.34,42548.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42548.83,42550.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42552.12,42552.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42552.76,42555.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42555.49,42557.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42558.13,42558.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42566.10,42568.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42568.89,42572.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42572.23,42576.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42580.10,42580.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42580.93,42588.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42588.34,42591.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42591.66,42595.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42597.12,42597.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42597.63,42602.35 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42602.35,42609.69 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42609.69,42611.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42613.14,42613.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42613.74,42615.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42617.14,42617.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42617.71,42619.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42621.14,42621.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42621.68,42623.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42633.10,42633.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42633.97,42641.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42641.34,42644.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42644.64,42648.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42650.12,42650.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42650.63,42653.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42653.49,42655.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42656.13,42656.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42660.12,42660.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42660.65,42663.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42663.49,42665.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42666.13,42666.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42674.10,42674.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42674.65,42679.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42679.34,42682.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42682.75,42684.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42684.49,42686.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42687.13,42687.34 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42690.12,42690.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42690.76,42692.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42692.49,42694.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42695.13,42695.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42698.12,42698.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42698.75,42700.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42700.49,42702.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42703.13,42703.34 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42706.12,42706.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42706.76,42708.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42708.49,42710.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42711.13,42711.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42714.12,42714.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42714.75,42717.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42717.49,42719.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42720.13,42720.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42728.10,42728.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42728.73,42733.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42733.34,42737.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42737.84,42739.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42741.12,42741.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42741.73,42743.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42745.12,42747.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42747.106,42751.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42751.25,42755.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42759.12,42759.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42759.102,42763.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42763.25,42767.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42771.12,42771.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42771.93,42779.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42779.36,42782.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42782.66,42785.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42785.51,42787.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42788.15,42788.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42792.14,42792.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42792.66,42795.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42795.51,42797.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42798.15,42798.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42802.14,42802.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42802.66,42805.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42805.51,42807.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42808.15,42808.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42816.12,42816.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42816.97,42825.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42831.10,42831.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42831.84,42836.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42836.34,42839.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42839.87,42842.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42842.49,42844.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42845.13,42845.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42849.12,42849.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42849.92,42851.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42851.49,42853.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42854.13,42854.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42857.12,42857.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42857.95,42859.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42859.49,42861.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42862.13,42862.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42881.4,42883.128 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42883.128,42887.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42887.17,42891.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42895.4,42895.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42895.114,42903.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42903.28,42906.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42906.57,42910.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42920.2,42922.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42922.86,42930.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42930.26,42933.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42933.50,42938.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42938.28,42943.106 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42943.106,42947.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42947.19,42951.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42955.6,42955.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42955.108,42959.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42959.19,42963.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42967.6,42967.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42967.115,42975.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42975.30,42978.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42978.60,42983.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42983.32,42989.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42989.111,42993.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42993.23,42997.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43001.10,43001.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43001.107,43009.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43009.34,43014.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43014.89,43023.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43025.12,43025.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43025.89,43034.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43036.12,43036.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43036.90,43045.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43051.10,43051.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43051.76,43056.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43056.34,43059.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43059.78,43061.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43063.12,43063.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43063.74,43065.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43067.12,43067.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43067.71,43069.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43075.10,43075.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43075.72,43080.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43080.34,43085.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43085.90,43094.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43096.12,43096.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43096.92,43105.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43107.12,43107.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43107.91,43116.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43130.6,43130.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43130.107,43138.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43138.30,43141.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43141.60,43146.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43146.32,43152.111 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43152.111,43156.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43156.23,43160.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43164.10,43164.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43164.107,43172.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43172.34,43177.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43177.89,43186.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43188.12,43188.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43188.89,43197.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43199.12,43199.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43199.90,43208.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43214.10,43214.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43214.76,43219.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43219.34,43222.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43222.78,43224.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43226.12,43226.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43226.74,43228.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43230.12,43230.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43230.71,43232.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43238.10,43238.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43238.72,43243.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43243.34,43248.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43248.90,43257.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43259.12,43259.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43259.92,43268.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43270.12,43270.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43270.91,43279.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43289.8,43289.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43289.53,43294.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43294.32,43300.105 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43300.105,43304.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43304.23,43308.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43312.10,43312.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43312.101,43320.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43320.34,43325.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43325.89,43334.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43336.12,43336.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43336.89,43345.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43347.12,43347.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43347.90,43356.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43362.10,43362.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43362.70,43367.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43367.34,43370.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43370.78,43372.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43374.12,43374.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43374.74,43376.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43378.12,43378.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43378.71,43380.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43386.10,43386.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43386.66,43391.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43391.34,43396.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43396.90,43405.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43407.12,43407.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43407.92,43416.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43418.12,43418.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43418.91,43427.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43449.2,43449.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43449.94,43453.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43453.15,43457.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43461.2,43461.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43461.58,43466.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43466.26,43469.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43469.78,43471.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43473.4,43473.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43473.74,43475.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43477.4,43477.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43477.74,43479.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43481.4,43481.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43481.73,43483.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43483.41,43485.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43486.5,43486.32 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43489.4,43489.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43489.79,43491.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43491.41,43493.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43494.5,43494.37 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43497.4,43497.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43497.69,43499.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43501.4,43501.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43501.75,43503.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43505.4,43505.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43505.68,43507.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43509.4,43509.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43509.72,43511.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43517.2,43517.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43517.58,43522.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43522.26,43527.114 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43527.114,43531.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43531.17,43535.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43539.4,43539.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43539.107,43547.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43547.28,43550.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43550.53,43553.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43553.43,43555.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43556.7,43556.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43568.2,43568.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43568.63,43573.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43573.26,43579.107 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43579.107,43583.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43583.17,43587.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43591.4,43591.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43591.106,43595.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43595.17,43599.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43603.4,43605.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43605.101,43609.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43609.17,43613.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43617.4,43617.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43617.102,43626.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43628.4,43628.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43628.103,43637.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43639.4,43639.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43639.73,43644.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43644.28,43647.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43647.72,43649.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43651.6,43651.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43651.68,43653.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43655.6,43655.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43655.65,43657.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43663.4,43663.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43663.69,43668.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43668.28,43673.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43673.84,43682.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43684.6,43684.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43684.86,43693.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43695.6,43695.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43695.85,43704.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43714.2,43716.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43716.85,43720.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43720.15,43724.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43728.2,43728.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43728.84,43736.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43736.26,43741.101 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43741.101,43745.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43745.17,43749.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43753.4,43753.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43753.100,43761.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43761.28,43766.71 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43766.71,43770.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43770.19,43774.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43778.6,43778.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43778.78,43786.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43786.30,43789.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43789.61,43793.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43795.8,43795.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43795.59,43799.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43801.8,43801.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43801.63,43805.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43819.2,43819.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43819.68,43824.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43824.26,43828.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43828.90,43830.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43830.19,43832.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43833.5,43833.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43836.4,43836.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43836.78,43841.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43841.28,43844.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43844.72,43846.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43848.6,43848.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43848.68,43850.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43852.6,43852.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43852.65,43854.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43860.4,43862.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43862.105,43866.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43866.17,43870.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43874.4,43876.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43876.118,43884.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43884.28,43887.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43887.54,43892.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43892.30,43895.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43895.72,43897.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43897.45,43899.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43900.9,43900.31 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43907.6,43907.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43907.58,43910.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43910.43,43912.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43913.7,43913.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43917.6,43917.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43917.69,43922.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43922.30,43925.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43925.83,43928.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43928.45,43930.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43931.9,43931.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43935.8,43935.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43935.88,43937.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43937.45,43939.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43940.9,43940.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43943.8,43943.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43943.91,43945.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43945.45,43947.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43948.9,43948.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43959.4,43959.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43959.114,43967.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43967.28,43970.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43970.58,43974.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43976.6,43976.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43976.57,43979.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43979.43,43981.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43982.7,43982.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43986.6,43986.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43986.59,43989.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43989.43,43991.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43992.7,43992.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44004.2,44004.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44004.66,44009.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44009.26,44013.84 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44013.84,44015.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44015.50,44017.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44018.5,44018.46 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44021.4,44023.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44023.99,44031.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44031.28,44034.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44034.50,44038.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44040.6,44040.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44040.55,44044.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44046.6,44046.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44046.52,44050.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44056.4,44056.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44056.96,44064.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44064.28,44067.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44067.50,44071.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44073.6,44073.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44073.55,44077.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44079.6,44079.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44079.52,44083.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44089.4,44089.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44089.76,44091.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44093.4,44093.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44093.74,44095.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44101.2,44101.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44101.54,44104.39 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44104.39,44106.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44107.3,44107.26 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44111.2,44111.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44111.60,44116.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44116.26,44122.99 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44122.99,44126.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44126.17,44130.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44134.4,44134.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44134.100,44143.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44145.4,44145.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44145.101,44154.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44156.4,44156.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44156.73,44158.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44160.4,44160.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44160.79,44165.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44165.28,44170.134 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44170.134,44174.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44174.19,44178.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44182.6,44182.133 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44182.133,44186.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44186.19,44190.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44194.6,44194.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44194.87,44196.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44198.6,44198.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44198.77,44200.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44202.6,44202.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44202.84,44204.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44206.6,44206.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44206.84,44208.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44210.6,44210.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44210.79,44212.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44218.4,44218.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44218.71,44223.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44223.28,44226.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44226.72,44228.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44230.6,44230.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44230.68,44232.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44234.6,44234.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44234.65,44236.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44242.4,44244.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44244.99,44248.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44248.17,44252.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44256.4,44256.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44256.100,44260.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44260.17,44264.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44272.2,44274.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44274.77,44282.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44282.26,44287.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44287.78,44291.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44291.17,44295.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44299.4,44299.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44299.81,44303.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44303.17,44307.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44311.4,44311.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44311.48,44315.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44317.4,44317.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44317.48,44321.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44323.4,44325.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44325.81,44329.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44329.17,44333.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44337.4,44337.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44337.78,44341.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44341.17,44345.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44349.4,44349.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44349.79,44353.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44353.17,44357.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44361.4,44361.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44361.81,44365.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44365.17,44369.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44373.4,44375.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44375.74,44379.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44379.17,44383.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44387.4,44387.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44387.77,44391.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44391.17,44395.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44399.4,44399.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44399.47,44403.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44409.2,44409.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44409.72,44413.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44413.15,44417.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44421.2,44421.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44421.66,44425.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44425.15,44429.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44433.2,44433.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44433.69,44441.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44441.26,44444.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44444.55,44449.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44449.28,44455.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44455.98,44463.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44463.30,44468.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44468.82,44472.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44472.21,44476.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44480.8,44480.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44480.85,44484.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44484.21,44488.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44492.8,44492.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44492.52,44496.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44498.8,44498.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44498.52,44502.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44504.8,44506.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44506.85,44510.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44510.21,44514.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44518.8,44518.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44518.82,44522.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44522.21,44526.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44530.8,44530.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44530.83,44534.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44534.21,44538.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44542.8,44542.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44542.85,44546.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44546.21,44550.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44554.8,44556.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44556.78,44560.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44560.21,44564.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44568.8,44568.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44568.81,44572.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44572.21,44576.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44580.8,44580.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44580.51,44584.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44590.6,44590.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44590.103,44599.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44601.6,44601.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44601.101,44610.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44612.6,44612.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44612.71,44614.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44624.2,44624.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44624.71,44628.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44628.15,44632.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44636.2,44636.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44636.80,44640.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44640.15,44644.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44648.2,44650.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44650.83,44654.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44654.15,44658.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44662.2,44662.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44662.82,44670.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44670.26,44673.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44673.64,44676.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44676.41,44678.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44679.5,44679.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44687.2,44687.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44687.61,44692.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44692.26,44695.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44695.70,44700.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44700.28,44705.90 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44705.90,44709.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44709.19,44713.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44717.6,44717.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44717.91,44721.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44721.19,44725.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44733.4,44735.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44735.110,44744.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44746.4,44746.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44746.99,44755.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44757.4,44757.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44757.106,44765.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44765.28,44768.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44768.55,44772.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44778.4,44778.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44778.79,44783.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44783.28,44788.107 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44788.107,44796.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44796.30,44799.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44799.57,44802.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44802.45,44804.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44805.9,44805.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44813.6,44813.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44813.115,44817.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44817.19,44821.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44825.6,44827.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44827.103,44836.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44838.6,44838.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44838.111,44842.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44842.19,44846.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44850.6,44852.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44852.118,44856.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44856.19,44860.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44864.6,44864.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44864.117,44868.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44868.19,44872.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44880.4,44880.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44880.70,44885.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44885.28,44890.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44890.91,44894.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44894.19,44898.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44902.6,44902.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44902.89,44910.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44910.30,44913.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44913.58,44916.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44916.45,44918.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44919.9,44919.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44927.6,44927.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44927.89,44935.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44935.30,44938.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44938.58,44941.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44941.45,44943.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44944.9,44944.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44956.4,44956.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44956.78,44961.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44961.28,44966.105 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44966.105,44970.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44970.19,44974.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44978.6,44978.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44978.99,44987.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44989.6,44989.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44989.99,44998.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45000.6,45000.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45000.104,45009.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45019.2,45021.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45021.64,45029.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45029.26,45032.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45032.64,45036.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45038.4,45040.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45040.72,45049.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45051.4,45051.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45051.79,45060.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45066.2,45066.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45066.65,45074.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45074.26,45077.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45077.52,45081.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45083.4,45083.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45083.67,45087.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45089.4,45091.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45091.93,45095.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45095.17,45099.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45103.4,45103.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45103.97,45107.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45107.17,45111.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45115.4,45115.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45115.70,45120.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45120.28,45125.146 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45125.146,45129.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45129.19,45133.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45137.6,45137.150 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45137.150,45141.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45141.19,45145.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45153.4,45153.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45153.65,45158.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45158.28,45163.132 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45163.132,45167.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45167.19,45171.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45175.6,45175.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45175.130,45179.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45179.19,45183.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45187.6,45187.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45187.132,45191.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45191.19,45195.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45203.4,45203.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45203.57,45207.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45209.4,45211.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45211.99,45215.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45215.17,45219.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45223.4,45223.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45223.98,45227.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45227.17,45231.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45235.4,45237.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45237.72,45246.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45248.4,45248.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45248.79,45257.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45259.4,45261.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45261.94,45270.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45272.4,45272.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45272.90,45276.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45276.17,45280.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45284.4,45284.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45284.88,45288.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45288.17,45292.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45296.4,45296.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45296.87,45305.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45307.4,45309.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45309.94,45317.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45317.28,45320.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45320.58,45325.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45325.29,45330.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45330.62,45332.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45334.8,45334.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45334.67,45336.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45338.8,45338.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45338.64,45340.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45346.6,45348.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45348.77,45352.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45352.19,45356.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45360.6,45360.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45360.78,45368.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45368.30,45373.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45373.74,45381.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45381.32,45384.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45384.54,45388.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45390.10,45390.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45390.59,45394.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45396.10,45396.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45396.56,45400.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45406.8,45406.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45406.77,45410.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45410.21,45414.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45418.8,45420.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45420.87,45428.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45428.32,45431.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45431.54,45435.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45437.10,45437.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45437.59,45441.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45443.10,45443.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45443.56,45447.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45453.8,45453.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45453.91,45462.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45464.8,45466.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45466.85,45470.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45470.21,45474.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45478.8,45478.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45478.84,45486.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45486.32,45489.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45489.70,45492.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45492.47,45494.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45495.11,45495.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45507.6,45507.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45507.56,45512.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45512.30,45517.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45517.99,45525.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45525.32,45528.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45528.63,45531.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45531.47,45533.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45534.11,45534.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45538.10,45538.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45538.61,45542.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45544.10,45544.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45544.61,45548.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45554.8,45554.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45554.100,45558.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45558.21,45562.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45566.8,45566.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45566.96,45570.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45570.21,45574.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45578.8,45578.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45578.99,45582.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45582.21,45586.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45598.4,45598.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45598.93,45606.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45606.28,45611.77 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45611.77,45615.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45615.19,45619.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45623.6,45623.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45623.78,45631.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45631.30,45636.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45636.74,45644.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45644.32,45647.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45647.54,45651.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45653.10,45653.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45653.59,45657.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45659.10,45659.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45659.56,45663.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45669.8,45669.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45669.77,45673.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45673.21,45677.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45681.8,45683.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45683.87,45691.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45691.32,45694.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45694.54,45698.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45700.10,45700.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45700.59,45704.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45706.10,45706.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45706.56,45710.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45716.8,45716.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45716.91,45725.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45727.8,45729.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45729.85,45733.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45733.21,45737.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45741.8,45741.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45741.84,45749.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45749.32,45752.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45752.70,45755.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45755.47,45757.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45758.11,45758.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45770.6,45770.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45770.62,45775.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45775.30,45779.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45779.85,45781.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45783.8,45783.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45783.81,45785.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45787.8,45789.124 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45789.124,45797.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45797.32,45800.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45800.65,45803.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45803.47,45805.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45806.11,45806.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45814.8,45814.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45814.123,45818.9 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45820.8,45820.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45820.121,45824.9 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45826.8,45826.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45826.81,45831.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45831.32,45834.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45834.97,45839.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45839.34,45842.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45842.105,45844.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45846.12,45846.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45846.94,45848.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45850.12,45850.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45850.100,45852.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45858.10,45858.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45858.87,45862.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45864.10,45866.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45866.117,45874.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45874.34,45877.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45877.71,45881.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45883.12,45883.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45883.60,45887.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45889.12,45889.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45889.66,45893.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45899.10,45899.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45899.113,45907.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45907.34,45910.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45910.60,45914.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45916.12,45916.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45916.55,45920.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45926.10,45926.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45926.113,45934.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45934.34,45937.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45937.55,45941.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45943.12,45943.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45943.60,45947.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45949.12,45949.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45949.60,45953.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45955.12,45955.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45955.67,45959.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45961.12,45961.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45961.59,45965.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45971.10,45971.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45971.115,45979.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45979.34,45982.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45982.56,45986.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46000.6,46000.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46000.56,46005.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46005.30,46010.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46010.99,46018.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46018.32,46021.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46021.63,46024.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46024.47,46026.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46027.11,46027.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46031.10,46031.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46031.61,46035.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46037.10,46037.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46037.61,46041.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46047.8,46047.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46047.100,46051.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46051.21,46055.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46059.8,46059.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46059.96,46063.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46063.21,46067.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46071.8,46071.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46071.99,46075.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46075.21,46079.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46095.2,46095.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46095.75,46103.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46103.26,46106.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46106.52,46110.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46112.4,46112.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46112.67,46116.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46118.4,46120.93 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46120.93,46124.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46124.17,46128.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46132.4,46132.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46132.97,46136.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46136.17,46140.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46144.4,46144.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46144.70,46149.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46149.28,46154.146 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46154.146,46158.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46158.19,46162.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46166.6,46166.150 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46166.150,46170.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46170.19,46174.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46182.4,46182.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46182.65,46187.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46187.28,46192.132 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46192.132,46196.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46196.19,46200.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46204.6,46204.130 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46204.130,46208.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46208.19,46212.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46216.6,46216.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46216.132,46220.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46220.19,46224.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46232.4,46232.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46232.57,46236.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46238.4,46240.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46240.75,46244.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46244.17,46248.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46252.4,46252.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46252.76,46260.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46260.28,46265.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46265.72,46273.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46273.30,46276.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46276.52,46280.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46282.8,46282.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46282.57,46286.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46288.8,46288.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46288.54,46292.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46298.6,46298.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46298.75,46302.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46302.19,46306.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46310.6,46312.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46312.85,46320.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46320.30,46323.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46323.52,46327.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46329.8,46329.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46329.57,46333.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46335.8,46335.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46335.54,46339.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46345.6,46345.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46345.89,46354.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46356.6,46358.83 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46358.83,46362.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46362.19,46366.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46370.6,46370.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46370.82,46378.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46378.30,46381.68 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46381.68,46384.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46384.45,46386.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46387.9,46387.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46399.4,46401.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46401.99,46405.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46405.17,46409.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46413.4,46413.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46413.98,46417.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46417.17,46421.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46425.4,46427.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46427.72,46436.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46438.4,46438.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46438.79,46447.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46449.4,46451.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46451.94,46460.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46462.4,46462.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46462.90,46466.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46466.17,46470.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46474.4,46474.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46474.88,46478.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46478.17,46482.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46486.4,46486.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46486.87,46495.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46497.4,46497.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46497.54,46502.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46502.28,46507.97 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46507.97,46515.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46515.30,46518.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46518.61,46521.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46521.45,46523.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46524.9,46524.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46528.8,46528.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46528.59,46532.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46534.8,46534.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46534.59,46538.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46544.6,46544.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46544.98,46548.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46548.19,46552.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46556.6,46556.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46556.94,46560.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46560.19,46564.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46568.6,46568.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46568.97,46572.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46572.19,46576.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46588.2,46590.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46590.104,46594.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46594.15,46598.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46602.2,46602.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46602.103,46606.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46606.15,46610.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46614.2,46614.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46614.72,46620.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46620.26,46622.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46622.62,46624.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46625.4,46625.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46625.67,46627.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46629.4,46629.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46629.64,46631.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46636.2,46638.70 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46638.70,46642.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46642.15,46646.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46650.2,46650.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46650.71,46658.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46658.26,46663.93 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46663.93,46667.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46667.17,46671.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46675.4,46675.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46675.92,46683.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46683.28,46686.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46686.69,46691.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46691.30,46694.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46694.119,46696.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46702.6,46704.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46704.119,46708.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46708.19,46712.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46716.6,46716.118 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46716.118,46720.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46720.19,46724.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46728.6,46728.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46728.76,46733.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46733.30,46736.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46736.119,46741.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46741.32,46745.98 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46745.98,46750.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46750.34,46753.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46753.78,46755.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46757.12,46757.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46757.74,46759.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46761.12,46761.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46761.71,46763.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46769.10,46769.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46769.121,46774.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46774.34,46779.123 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46779.123,46783.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46783.25,46787.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46791.12,46791.128 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46791.128,46800.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46802.12,46804.125 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46804.125,46812.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46812.36,46817.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46817.89,46826.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46828.14,46828.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46828.89,46837.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46843.12,46843.131 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46843.131,46851.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46851.36,46854.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46854.65,46859.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46859.38,46864.108 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46864.108,46873.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46875.16,46875.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46875.108,46884.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46890.14,46890.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46890.67,46895.38 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46895.38,46900.112 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46900.112,46909.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46911.16,46911.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46911.112,46920.17 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46930.12,46930.127 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46930.127,46938.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46938.36,46943.91 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46943.91,46952.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46954.14,46954.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46954.91,46963.15 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46969.12,46971.134 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46971.134,46975.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46975.25,46979.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46983.12,46983.135 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46983.135,46987.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46987.25,46991.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46995.12,46995.126 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46995.126,46999.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46999.25,47003.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47007.12,47007.129 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47007.129,47015.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47015.36,47018.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47018.69,47021.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47021.51,47023.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47024.15,47024.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47032.12,47034.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47034.123,47038.25 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47038.25,47042.14 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47046.12,47046.132 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47046.132,47054.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47054.36,47057.71 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47057.71,47061.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47063.14,47063.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47063.61,47066.51 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47066.51,47068.16 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47069.15,47069.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47077.12,47077.122 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47077.122,47086.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47088.12,47088.122 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47088.122,47097.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47103.10,47103.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47103.109,47108.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47108.34,47111.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47111.80,47113.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47123.8,47123.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47123.105,47128.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47128.32,47132.81 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47132.81,47134.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47148.4,47150.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47150.99,47154.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47154.17,47158.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47162.4,47162.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47162.98,47170.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47170.28,47175.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47175.103,47179.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47179.19,47183.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47187.6,47187.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47187.102,47195.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47195.30,47200.73 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47200.73,47204.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47204.21,47208.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47212.8,47212.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47212.80,47220.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47220.32,47223.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47223.63,47227.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47229.10,47229.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47229.61,47233.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47235.10,47235.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47235.65,47239.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47253.4,47255.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47255.118,47259.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47259.17,47263.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47267.4,47267.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47267.117,47271.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47271.17,47275.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47283.2,47283.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47283.58,47288.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47288.26,47291.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47291.74,47296.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47296.28,47299.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47299.73,47301.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47303.6,47303.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47303.82,47305.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47307.6,47307.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47307.81,47309.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47315.4,47315.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47315.79,47320.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47320.28,47323.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47323.84,47325.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47327.6,47327.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47327.82,47329.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47329.43,47331.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47332.7,47332.41 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47335.6,47335.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47335.92,47337.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47339.6,47339.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47339.99,47341.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47347.4,47347.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47347.78,47352.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47352.28,47358.125 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47358.125,47362.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47362.19,47366.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47370.6,47370.124 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47370.124,47374.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47374.19,47378.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47382.6,47384.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47384.102,47388.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47388.19,47392.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47396.6,47396.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47396.105,47400.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47400.19,47404.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47408.6,47410.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47410.102,47414.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47414.19,47418.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47422.6,47422.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47422.101,47431.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47433.6,47433.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47433.72,47435.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47437.6,47439.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47439.105,47443.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47443.19,47447.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47451.6,47451.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47451.102,47455.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47455.19,47459.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47463.6,47463.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47463.103,47467.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47467.19,47471.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47475.6,47475.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47475.105,47479.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47479.19,47483.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47487.6,47489.98 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47489.98,47493.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47493.19,47497.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47501.6,47501.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47501.101,47505.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47505.19,47509.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47517.4,47517.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47517.74,47519.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47519.50,47523.20 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47523.20,47525.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47526.6,47527.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47529.5,47529.33 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47532.4,47532.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47532.88,47534.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47536.4,47536.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47536.73,47538.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47540.4,47540.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47540.76,47545.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47545.28,47548.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47548.79,47550.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47552.6,47552.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47552.84,47554.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47556.6,47558.105 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47558.105,47560.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47566.4,47566.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47566.64,47571.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47571.27,47576.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47576.60,47578.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47580.6,47580.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47580.65,47582.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47584.6,47584.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47584.62,47586.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47592.4,47592.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47592.84,47594.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47596.4,47598.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47598.116,47602.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47602.17,47606.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47610.4,47610.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47610.115,47614.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47614.17,47618.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47622.4,47622.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47622.83,47627.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47627.28,47631.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47631.78,47633.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47635.6,47635.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47635.76,47637.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47639.6,47641.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47641.109,47649.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47649.30,47652.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47652.78,47657.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47657.32,47660.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47660.103,47662.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47664.10,47664.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47664.92,47666.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47668.10,47668.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47668.98,47670.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47676.8,47676.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47676.68,47680.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47682.8,47684.98 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47684.98,47692.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47692.32,47695.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47695.69,47699.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47701.10,47701.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47701.58,47705.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47707.10,47707.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47707.64,47711.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47717.8,47717.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47717.94,47725.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47725.32,47728.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47728.58,47732.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47734.10,47734.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47734.53,47738.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47744.8,47744.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47744.94,47752.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47752.32,47755.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47755.53,47759.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47761.10,47761.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47761.58,47765.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47767.10,47767.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47767.58,47771.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47773.10,47773.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47773.65,47777.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47779.10,47779.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47779.57,47783.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47789.8,47789.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47789.96,47797.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47797.32,47800.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47800.54,47804.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47814.6,47814.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47814.102,47823.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47829.4,47829.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47829.86,47831.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47831.41,47833.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47834.5,47834.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47837.4,47837.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47837.84,47842.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47842.28,47846.79 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47846.79,47848.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47850.6,47850.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47850.77,47852.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47854.6,47856.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47856.110,47864.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47864.30,47867.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47867.78,47872.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47872.32,47875.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47875.103,47877.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47879.10,47879.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47879.92,47881.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47883.10,47883.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47883.98,47885.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47891.8,47891.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47891.68,47895.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47897.8,47899.98 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47899.98,47907.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47907.32,47910.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47910.69,47914.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47916.10,47916.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47916.58,47920.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47922.10,47922.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47922.64,47926.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47932.8,47932.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47932.94,47940.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47940.32,47943.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47943.58,47947.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47949.10,47949.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47949.53,47953.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47959.8,47959.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47959.94,47967.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47967.32,47970.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47970.53,47974.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47976.10,47976.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47976.58,47980.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47982.10,47982.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47982.58,47986.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47988.10,47988.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47988.65,47992.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47994.10,47994.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47994.57,47998.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48004.8,48004.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48004.96,48012.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48012.32,48015.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48015.54,48019.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48029.6,48029.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48029.103,48038.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48044.4,48044.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48044.87,48046.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48046.41,48048.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48049.5,48049.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48052.4,48054.123 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48054.123,48062.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48062.28,48065.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48065.53,48068.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48068.43,48070.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48071.7,48071.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48079.4,48079.140 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48079.140,48083.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48083.17,48087.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48095.2,48097.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48097.72,48105.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48105.26,48108.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48108.60,48113.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48113.28,48118.117 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48118.117,48122.7 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48124.6,48124.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48124.125,48128.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48128.19,48132.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48136.6,48136.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48136.125,48140.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48140.19,48144.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48148.6,48148.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48148.86,48150.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48152.6,48152.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48152.94,48157.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48157.30,48162.148 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48162.148,48166.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48166.21,48170.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48174.8,48174.152 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48174.152,48178.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48178.21,48182.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48190.6,48190.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48190.85,48192.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48194.6,48196.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48196.114,48200.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48200.19,48204.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48208.6,48208.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48208.110,48212.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48212.19,48216.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48220.6,48220.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48220.111,48224.7 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48226.6,48228.129 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48228.129,48232.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48232.19,48236.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48240.6,48240.121 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48240.121,48244.7 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48246.6,48248.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48248.118,48252.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48252.19,48256.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48260.6,48260.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48260.115,48269.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48271.6,48273.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48273.109,48277.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48277.19,48281.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48285.6,48285.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48285.108,48293.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48293.30,48296.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48296.64,48301.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48301.32,48305.10 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48309.8,48311.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48311.94,48315.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48315.21,48319.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48323.8,48323.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48323.96,48331.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48331.32,48334.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48334.64,48337.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48337.56,48339.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48340.11,48340.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48347.8,48347.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48347.94,48351.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48351.21,48355.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48367.4,48367.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48367.62,48371.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48373.4,48375.96 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48375.96,48384.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48386.4,48386.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48386.100,48390.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48390.17,48394.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48398.4,48398.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48398.55,48403.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48403.27,48408.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48408.60,48410.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48412.6,48412.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48412.65,48414.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48416.6,48416.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48416.62,48418.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48424.4,48424.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48424.66,48428.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48430.4,48430.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48430.58,48435.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48435.28,48441.100 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48441.100,48449.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48449.30,48454.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48454.89,48458.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48458.21,48462.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48466.8,48466.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48466.90,48470.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48470.21,48474.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48478.8,48478.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48478.60,48482.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48484.8,48484.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48484.60,48489.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48489.32,48494.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48494.92,48502.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48502.34,48505.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48505.56,48509.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48511.12,48511.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48511.61,48515.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48517.12,48517.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48517.58,48521.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48527.10,48527.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48527.100,48535.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48535.34,48538.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48538.56,48542.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48544.12,48544.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48544.61,48548.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48550.12,48550.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48550.58,48554.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48568.6,48568.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48568.108,48576.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48576.30,48579.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48579.56,48585.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48585.32,48587.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48587.66,48589.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48590.10,48590.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48590.71,48592.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48594.10,48594.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48594.68,48596.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48605.6,48605.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48605.97,48613.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48613.30,48618.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48618.89,48622.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48622.21,48626.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48630.8,48630.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48630.90,48634.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48634.21,48638.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48642.8,48642.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48642.88,48646.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48646.21,48650.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48654.8,48656.85 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48656.85,48665.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48667.8,48667.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48667.89,48675.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48675.32,48678.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48678.61,48681.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48681.47,48683.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48684.11,48684.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48692.8,48692.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48692.60,48697.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48697.32,48702.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48702.92,48710.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48710.34,48713.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48713.56,48717.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48719.12,48719.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48719.61,48723.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48725.12,48725.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48725.58,48729.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48735.10,48735.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48735.100,48743.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48743.34,48746.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48746.56,48750.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48752.12,48752.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48752.61,48756.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48758.12,48758.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48758.58,48762.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48776.6,48776.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48776.96,48784.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48784.30,48789.89 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48789.89,48793.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48793.21,48797.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48801.8,48801.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48801.90,48805.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48805.21,48809.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48813.8,48815.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48815.79,48824.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48826.8,48826.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48826.81,48835.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48837.8,48837.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48837.60,48842.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48842.32,48847.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48847.92,48855.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48855.34,48858.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48858.56,48862.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48864.12,48864.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48864.61,48868.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48870.12,48870.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48870.58,48874.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48880.10,48880.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48880.100,48888.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48888.34,48891.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48891.56,48895.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48897.12,48897.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48897.61,48901.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48903.12,48903.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48903.58,48907.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48921.6,48921.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48921.98,48929.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48929.30,48932.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48932.56,48936.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48938.8,48940.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48940.89,48944.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48944.21,48948.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48952.8,48952.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48952.90,48956.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48956.21,48960.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48964.8,48964.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48964.64,48968.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48970.8,48970.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48970.60,48975.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48975.32,48980.92 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48980.92,48988.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48988.34,48991.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48991.56,48995.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48997.12,48997.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48997.61,49001.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49003.12,49003.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49003.58,49007.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49013.10,49013.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49013.100,49021.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49021.34,49024.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49024.56,49028.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49030.12,49030.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49030.61,49034.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49036.12,49036.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49036.58,49040.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49054.6,49054.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49054.95,49062.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49062.30,49067.78 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49067.78,49076.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49078.8,49078.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49078.80,49087.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49093.6,49093.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49093.97,49101.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49101.30,49104.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49104.56,49108.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49110.8,49110.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49110.64,49114.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49120.6,49120.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49120.96,49128.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49128.30,49133.72 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49133.72,49142.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49144.8,49144.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49144.74,49153.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49155.8,49155.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49155.55,49161.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49161.32,49163.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49163.66,49165.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49166.10,49166.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49166.71,49168.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49170.10,49170.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49170.68,49172.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49177.8,49177.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49177.60,49182.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49182.32,49187.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49187.103,49195.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49195.34,49198.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49198.56,49202.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49204.12,49204.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49204.61,49208.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49210.12,49210.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49210.58,49214.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49220.10,49220.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49220.92,49228.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49228.34,49231.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49231.56,49235.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49237.12,49237.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49237.61,49241.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49243.12,49243.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49243.58,49247.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49253.10,49253.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49253.100,49261.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49261.34,49264.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49264.56,49268.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49270.12,49270.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49270.61,49274.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49276.12,49276.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49276.58,49280.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49294.6,49294.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49294.98,49302.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49302.30,49305.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49305.56,49309.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49311.8,49311.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49311.64,49315.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49317.8,49317.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49317.55,49323.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49323.32,49325.66 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49325.66,49327.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49328.10,49328.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49328.71,49330.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49332.10,49332.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49332.68,49334.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49339.8,49339.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49339.60,49344.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49344.32,49349.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49349.103,49357.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49357.34,49360.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49360.56,49364.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49366.12,49366.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49366.61,49370.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49372.12,49372.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49372.58,49376.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49382.10,49382.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49382.92,49390.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49390.34,49393.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49393.56,49397.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49399.12,49399.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49399.61,49403.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49405.12,49405.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49405.58,49409.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49415.10,49415.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49415.100,49423.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49423.34,49426.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49426.56,49430.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49432.12,49432.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49432.61,49436.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49438.12,49438.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49438.58,49442.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49456.6,49456.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49456.99,49464.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49464.30,49467.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49467.63,49473.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49473.32,49475.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49475.67,49477.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49478.10,49478.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49478.72,49480.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49482.10,49482.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49482.69,49484.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49489.8,49491.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49491.86,49500.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49502.8,49502.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49502.88,49511.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49517.6,49517.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49517.101,49525.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49525.30,49528.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49528.56,49532.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49534.8,49534.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49534.63,49540.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49540.32,49542.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49542.67,49544.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49545.10,49545.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49545.72,49547.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49549.10,49549.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49549.69,49551.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49560.6,49560.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49560.72,49562.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49562.52,49564.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49565.7,49565.35 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49572.4,49574.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49574.82,49578.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49578.17,49582.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49586.4,49586.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49586.75,49590.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49590.17,49594.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49598.4,49598.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49598.72,49607.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49609.4,49611.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49611.73,49615.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49615.17,49619.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49623.4,49623.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49623.74,49631.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49631.28,49636.77 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49636.77,49640.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49640.19,49644.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49648.6,49648.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49648.78,49656.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49656.30,49659.64 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49659.64,49664.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49664.32,49668.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49668.87,49670.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49672.10,49672.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49672.83,49674.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49676.10,49678.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49678.126,49686.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49686.34,49689.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49689.67,49692.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49692.49,49694.14 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49695.13,49695.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49703.10,49703.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49703.125,49707.11 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49709.10,49709.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49709.123,49713.11 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49715.10,49715.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49715.83,49720.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49720.34,49723.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49723.99,49728.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49728.36,49731.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49731.107,49733.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49735.14,49735.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49735.96,49737.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49739.14,49739.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49739.102,49741.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49747.12,49747.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49747.89,49751.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49753.12,49755.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49755.119,49763.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49763.36,49766.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49766.73,49770.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49772.14,49772.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49772.62,49776.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49778.14,49778.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49778.68,49782.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49788.12,49788.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49788.115,49796.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49796.36,49799.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49799.62,49803.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49805.14,49805.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49805.57,49809.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49815.12,49815.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49815.115,49823.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49823.36,49826.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49826.57,49830.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49832.14,49832.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49832.62,49836.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49838.14,49838.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49838.62,49842.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49844.14,49844.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49844.69,49848.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49850.14,49850.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49850.61,49854.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49860.12,49860.117 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49860.117,49868.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49868.36,49871.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49871.58,49875.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49893.6,49893.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49893.82,49901.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49901.30,49904.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49904.52,49908.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49910.8,49910.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49910.57,49914.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49916.8,49916.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49916.54,49920.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49926.6,49928.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49928.106,49932.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49932.19,49936.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49940.6,49940.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49940.105,49948.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49948.30,49953.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49953.87,49961.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49961.32,49964.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49964.54,49968.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49970.10,49970.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49970.59,49974.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49976.10,49976.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49976.56,49980.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49986.8,49986.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49986.91,49995.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50001.6,50001.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50001.101,50005.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50005.19,50009.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50013.6,50015.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50015.80,50019.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50019.19,50023.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50027.6,50027.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50027.72,50036.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50038.6,50038.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50038.91,50042.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50042.19,50046.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50050.6,50050.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50050.56,50055.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50055.30,50060.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50060.99,50068.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50068.32,50071.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50071.63,50074.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50074.47,50076.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50077.11,50077.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50081.10,50081.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50081.61,50085.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50087.10,50087.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50087.61,50091.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50097.8,50097.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50097.100,50101.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50101.21,50105.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50109.8,50109.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50109.96,50113.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50113.21,50117.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50121.8,50121.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50121.99,50125.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50125.21,50129.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50141.4,50141.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50141.57,50147.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50147.28,50149.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50149.63,50151.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50152.6,50152.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50152.68,50154.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50156.6,50156.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50156.65,50158.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50167.2,50167.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50167.77,50175.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50175.26,50178.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50178.49,50183.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50183.28,50187.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50187.74,50189.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50189.52,50191.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50192.7,50192.36 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50195.6,50197.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50197.89,50205.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50205.30,50208.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50208.52,50212.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50214.8,50214.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50214.57,50218.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50220.8,50220.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50220.54,50224.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50230.6,50230.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50230.86,50238.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50238.30,50241.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50241.52,50245.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50247.8,50247.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50247.57,50251.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50253.8,50253.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50253.54,50257.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50263.6,50263.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50263.66,50265.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50267.6,50267.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50267.64,50269.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50279.2,50279.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50279.77,50284.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50284.26,50287.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50287.103,50292.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50292.28,50298.106 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50298.106,50302.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50302.19,50306.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50310.6,50310.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50310.107,50318.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50318.30,50321.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50321.58,50324.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50324.45,50326.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50327.9,50327.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50335.6,50335.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50335.110,50343.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50343.30,50346.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50346.56,50351.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50351.31,50358.65 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50358.65,50360.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50362.10,50362.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50362.70,50364.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50366.10,50366.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50366.67,50368.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50370.10,50370.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50370.64,50372.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50382.6,50382.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50382.88,50387.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50387.30,50390.78 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50390.78,50392.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50392.45,50394.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50395.9,50395.37 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50398.8,50398.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50398.78,50400.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50400.45,50402.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50403.9,50403.37 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50406.8,50406.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50406.78,50409.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50409.45,50411.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50412.9,50412.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50420.6,50420.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50420.89,50423.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50423.43,50425.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50426.7,50426.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50430.6,50432.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50432.104,50436.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50436.19,50440.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50444.6,50444.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50444.108,50452.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50452.30,50455.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50455.62,50459.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50461.8,50461.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50461.59,50466.31 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50466.31,50473.65 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50473.65,50475.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50477.10,50477.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50477.70,50479.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50481.10,50481.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50481.67,50483.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50485.10,50485.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50485.64,50487.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50497.6,50497.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50497.112,50505.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50505.30,50508.60 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50508.60,50512.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50514.8,50514.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50514.59,50517.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50517.45,50519.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50520.9,50520.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50524.8,50524.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50524.61,50527.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50527.45,50529.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50530.9,50530.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50538.6,50538.84 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50538.84,50543.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50543.30,50546.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50546.74,50548.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50550.8,50550.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50550.70,50552.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50554.8,50554.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50554.67,50556.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50562.6,50562.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50562.104,50564.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50564.52,50566.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50567.7,50567.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50570.6,50570.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50570.88,50572.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50572.43,50574.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50575.7,50575.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50578.6,50580.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50580.119,50588.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50588.30,50591.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50591.59,50594.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50594.45,50596.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50597.9,50597.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50605.6,50605.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50605.108,50609.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50609.19,50613.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50625.2,50625.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50625.64,50630.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50630.26,50636.124 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50636.124,50640.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50640.17,50644.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50648.4,50648.123 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50648.123,50652.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50652.17,50656.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50660.4,50662.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50662.101,50666.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50666.17,50670.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50674.4,50674.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50674.104,50678.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50678.17,50682.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50686.4,50688.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50688.101,50692.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50692.17,50696.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50700.4,50700.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50700.100,50709.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50711.4,50711.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50711.71,50713.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50715.4,50717.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50717.104,50721.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50721.17,50725.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50729.4,50729.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50729.101,50733.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50733.17,50737.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50741.4,50741.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50741.102,50745.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50745.17,50749.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50753.4,50753.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50753.104,50757.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50757.17,50761.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50765.4,50767.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50767.97,50771.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50771.17,50775.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50779.4,50779.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50779.100,50783.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50783.17,50787.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50795.2,50797.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50797.73,50805.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50805.26,50808.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50808.62,50813.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50813.28,50817.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50817.88,50822.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50822.30,50825.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50825.86,50827.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50829.8,50829.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50829.79,50832.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50832.45,50834.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50835.9,50835.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50843.6,50843.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50843.86,50845.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50847.6,50847.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50847.78,50849.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50851.6,50853.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50853.105,50857.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50857.19,50861.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50865.6,50865.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50865.110,50874.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50876.6,50878.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50878.119,50886.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50886.30,50891.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50891.86,50899.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50899.32,50902.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50902.54,50906.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50908.10,50908.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50908.59,50912.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50914.10,50914.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50914.56,50918.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50924.8,50924.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50924.94,50928.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50928.21,50932.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50936.8,50936.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50936.57,50940.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50942.8,50942.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50942.52,50946.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50952.6,50952.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50952.116,50960.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50960.30,50963.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50963.52,50967.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50969.8,50969.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50969.57,50973.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50975.8,50975.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50975.54,50979.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50989.4,50991.99 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50991.99,50999.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50999.28,51002.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51002.75,51007.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51007.29,51012.65 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51012.65,51014.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51016.8,51016.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51016.70,51018.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51020.8,51020.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51020.67,51022.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51032.4,51032.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51032.92,51040.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51040.28,51043.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51043.59,51046.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51046.43,51048.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51049.7,51049.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51053.6,51053.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51053.54,51056.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51056.43,51058.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51059.7,51059.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51067.4,51067.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51067.95,51071.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51071.17,51075.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51079.4,51079.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51079.60,51084.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51084.28,51088.76 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51088.76,51090.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51092.6,51094.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51094.103,51098.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51098.19,51102.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51106.6,51106.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51106.108,51115.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51117.6,51119.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51119.117,51127.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51127.30,51132.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51132.86,51140.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51140.32,51143.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51143.54,51147.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51149.10,51149.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51149.59,51153.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51155.10,51155.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51155.56,51159.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51165.8,51165.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51165.94,51169.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51169.21,51173.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51177.8,51177.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51177.57,51181.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51183.8,51183.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51183.52,51187.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51193.6,51193.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51193.114,51201.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51201.30,51204.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51204.52,51208.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51210.8,51210.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51210.57,51214.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51216.8,51216.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51216.54,51220.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51234.2,51234.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51234.77,51238.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51238.15,51242.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51246.2,51246.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51246.69,51254.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51254.26,51259.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51259.99,51267.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51267.28,51270.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51270.75,51275.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51275.29,51280.65 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51280.65,51282.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51284.8,51284.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51284.70,51286.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51288.8,51288.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51288.67,51290.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51300.4,51300.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51300.92,51308.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51308.28,51311.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51311.59,51314.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51314.43,51316.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51317.7,51317.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51321.6,51321.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51321.54,51324.43 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51324.43,51326.8 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51327.7,51327.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51335.4,51335.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51335.95,51339.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51339.17,51343.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51347.4,51349.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51349.81,51353.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51353.17,51357.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51361.4,51361.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51361.78,51369.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51369.28,51372.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51372.54,51377.29 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51377.29,51382.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51382.62,51384.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51386.8,51386.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51386.67,51388.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51390.8,51390.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51390.64,51392.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51402.4,51402.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51402.56,51407.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51407.28,51410.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51410.80,51412.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51414.6,51414.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51414.76,51416.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51418.6,51418.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51418.68,51422.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51432.2,51432.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51432.53,51437.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51437.26,51443.96 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51443.96,51451.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51451.28,51454.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51454.55,51460.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51460.30,51462.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51462.65,51464.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51465.8,51465.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51465.70,51467.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51469.8,51469.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51469.67,51471.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51480.4,51480.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51480.98,51488.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51488.28,51491.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51491.53,51496.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51496.30,51500.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51500.74,51502.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51504.8,51504.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51504.66,51506.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51508.8,51510.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51510.91,51519.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51521.8,51521.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51521.94,51530.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51532.8,51532.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51532.91,51541.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51547.6,51547.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51547.57,51551.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51553.6,51553.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51553.59,51558.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51558.30,51563.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51563.103,51567.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51567.21,51571.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51575.8,51575.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51575.94,51584.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51586.8,51586.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51586.101,51595.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51601.6,51601.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51601.50,51606.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51606.30,51611.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51611.86,51620.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51622.8,51622.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51622.88,51631.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51633.8,51633.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51633.87,51642.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51648.6,51648.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51648.67,51653.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51653.30,51656.87 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51656.87,51658.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51660.8,51660.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51660.87,51662.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51672.4,51672.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51672.91,51680.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51680.28,51683.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51683.53,51688.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51688.30,51692.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51692.74,51694.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51696.8,51696.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51696.66,51698.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51700.8,51702.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51702.91,51711.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51713.8,51713.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51713.94,51722.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51724.8,51724.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51724.91,51733.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51739.6,51739.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51739.57,51743.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51745.6,51745.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51745.59,51750.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51750.30,51755.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51755.103,51759.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51759.21,51763.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51767.8,51767.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51767.94,51776.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51778.8,51778.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51778.101,51787.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51793.6,51793.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51793.50,51798.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51798.30,51803.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51803.86,51812.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51814.8,51814.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51814.88,51823.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51825.8,51825.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51825.87,51834.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51840.6,51840.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51840.60,51845.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51845.30,51848.81 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51848.81,51850.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51852.8,51852.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51852.81,51854.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51856.8,51856.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51856.82,51858.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51860.8,51862.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51862.103,51871.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51873.8,51873.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51873.110,51877.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51877.21,51881.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51885.8,51885.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51885.107,51894.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51896.8,51896.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51896.110,51900.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51900.21,51904.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51908.8,51908.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51908.111,51916.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51916.32,51919.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51919.62,51922.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51922.47,51924.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51925.11,51925.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51933.8,51935.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51935.113,51944.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51946.8,51946.114 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51946.114,51955.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51957.8,51957.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51957.81,51959.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51969.4,51969.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51969.89,51977.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51977.28,51980.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51980.62,51985.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51985.30,51990.151 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51990.151,51998.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51998.32,52001.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52001.69,52005.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52007.10,52007.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52007.65,52012.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52012.34,52016.87 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52016.87,52018.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52020.12,52020.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52020.87,52025.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52025.36,52029.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52029.88,52033.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52035.14,52035.83 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52035.83,52037.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52051.8,52051.161 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52051.161,52055.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52055.21,52059.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52063.8,52065.109 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52065.109,52073.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52073.32,52076.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52076.58,52080.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52082.10,52082.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52082.67,52086.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52088.10,52088.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52088.66,52092.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52098.8,52098.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52098.112,52102.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52102.21,52106.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52110.8,52112.126 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52112.126,52116.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52116.21,52120.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52124.8,52124.119 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52124.119,52128.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52128.21,52132.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52136.8,52136.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52136.81,52141.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52141.32,52144.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52144.84,52146.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52148.10,52148.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52148.80,52150.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52152.10,52152.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52152.80,52154.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52156.10,52156.79 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52156.79,52158.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52158.47,52160.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52161.11,52161.38 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52164.10,52164.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52164.85,52166.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52166.47,52168.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52169.11,52169.43 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52172.10,52172.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52172.75,52174.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52176.10,52176.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52176.81,52178.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52180.10,52180.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52180.74,52182.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52184.10,52184.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52184.78,52186.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52192.8,52192.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52192.90,52194.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52196.8,52196.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52196.86,52198.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52198.54,52200.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52201.9,52201.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52204.8,52206.118 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52206.118,52210.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52210.21,52214.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52218.8,52218.120 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52218.120,52226.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52226.32,52229.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52229.61,52234.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52234.34,52240.104 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52240.104,52248.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52248.36,52253.88 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52253.88,52257.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52257.27,52261.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52265.14,52265.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52265.91,52269.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52269.27,52273.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52277.14,52277.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52277.58,52281.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52283.14,52283.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52283.58,52287.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52289.14,52291.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52291.91,52295.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52295.27,52299.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52303.14,52303.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52303.88,52307.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52307.27,52311.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52315.14,52315.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52315.89,52319.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52319.27,52323.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52327.14,52327.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52327.91,52331.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52331.27,52335.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52339.14,52341.84 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52341.84,52345.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52345.27,52349.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52353.14,52353.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52353.87,52357.27 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52357.27,52361.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52365.14,52365.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52365.57,52369.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52375.12,52375.109 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52375.109,52384.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52386.12,52386.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52386.107,52395.13 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52397.12,52397.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52397.77,52399.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52409.8,52411.116 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52411.116,52415.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52415.21,52419.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52423.8,52423.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52423.112,52431.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52431.32,52434.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52434.61,52440.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52440.34,52442.69 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52442.69,52444.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52445.12,52445.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52445.74,52447.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52449.12,52449.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52449.71,52451.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52456.10,52456.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52456.57,52461.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52461.34,52464.77 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52464.77,52468.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52470.12,52470.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52470.75,52472.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52482.8,52482.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52482.78,52486.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52488.8,52488.92 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52488.92,52493.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52493.32,52497.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52497.82,52499.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52501.10,52501.80 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52501.80,52503.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52505.10,52507.113 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52507.113,52515.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52515.34,52518.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52518.82,52523.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52523.36,52526.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52526.107,52528.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52530.14,52530.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52530.96,52532.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52534.14,52534.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52534.102,52536.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52542.12,52542.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52542.72,52546.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52548.12,52550.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52550.102,52558.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52558.36,52561.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52561.73,52565.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52567.14,52567.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52567.62,52571.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52573.14,52573.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52573.68,52577.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52583.12,52583.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52583.98,52591.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52591.36,52594.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52594.62,52598.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52600.14,52600.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52600.57,52604.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52610.12,52610.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52610.98,52618.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52618.36,52621.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52621.57,52625.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52627.14,52627.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52627.62,52631.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52633.14,52633.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52633.62,52637.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52639.14,52639.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52639.69,52643.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52645.14,52645.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52645.61,52649.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52655.12,52655.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52655.100,52663.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52663.36,52666.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52666.58,52670.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52680.10,52680.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52680.106,52689.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52695.8,52695.95 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52695.95,52697.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52697.45,52699.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52700.9,52700.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52703.8,52703.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52703.93,52708.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52708.32,52712.83 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52712.83,52714.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52716.10,52716.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52716.81,52718.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52720.10,52722.114 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52722.114,52730.34 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52730.34,52733.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52733.82,52738.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52738.36,52741.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52741.107,52743.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52745.14,52745.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52745.96,52747.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52749.14,52749.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52749.102,52751.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52757.12,52757.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52757.72,52761.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52763.12,52765.102 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52765.102,52773.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52773.36,52776.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52776.73,52780.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52782.14,52782.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52782.62,52786.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52788.14,52788.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52788.68,52792.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52798.12,52798.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52798.98,52806.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52806.36,52809.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52809.62,52813.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52815.14,52815.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52815.57,52819.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52825.12,52825.98 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52825.98,52833.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52833.36,52836.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52836.57,52840.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52842.14,52842.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52842.62,52846.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52848.14,52848.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52848.62,52852.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52854.14,52854.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52854.69,52858.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52860.14,52860.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52860.61,52864.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52870.12,52870.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52870.100,52878.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52878.36,52881.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52881.58,52885.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52895.10,52895.107 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52895.107,52904.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52910.8,52910.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52910.96,52912.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52912.45,52914.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52915.9,52915.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52918.8,52920.121 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52920.121,52924.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52924.21,52928.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52932.8,52932.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52932.116,52936.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52936.21,52940.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52944.8,52944.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52944.113,52952.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52952.32,52955.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52955.58,52960.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52960.34,52963.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52963.79,52965.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52967.12,52967.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52967.78,52969.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52975.10,52975.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52975.61,52979.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52981.10,52981.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52981.65,52985.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52987.10,52987.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52987.72,52990.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52990.47,52992.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52993.11,52993.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52997.10,52997.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52997.65,53000.47 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53000.47,53002.12 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53003.11,53003.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53007.10,53007.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53007.58,53011.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53017.8,53019.119 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53019.119,53023.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53023.21,53027.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53031.8,53031.111 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53031.111,53040.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53042.8,53044.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53044.106,53048.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53048.21,53052.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53056.8,53056.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53056.105,53060.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53060.21,53064.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53068.8,53068.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53068.77,53070.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53072.8,53074.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53074.105,53082.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53082.32,53085.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53085.54,53089.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53091.10,53091.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53091.59,53095.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53097.10,53097.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53097.56,53101.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53107.8,53107.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53107.104,53111.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53111.21,53115.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53119.8,53119.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53119.106,53123.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53123.21,53127.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53131.8,53133.124 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53133.124,53137.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53137.21,53141.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53145.8,53145.116 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53145.116,53153.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53153.32,53156.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53156.62,53160.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53162.10,53162.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53162.70,53166.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53168.10,53168.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53168.63,53172.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53182.6,53182.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53182.53,53187.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53187.30,53191.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53191.74,53193.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53195.8,53195.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53195.66,53197.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53199.8,53201.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53201.91,53210.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53212.8,53212.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53212.94,53221.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53223.8,53223.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53223.91,53232.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53238.6,53240.94 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53240.94,53244.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53244.19,53248.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53252.6,53252.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53252.97,53256.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53256.19,53260.8 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53264.6,53264.89 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53264.89,53273.7 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53275.6,53275.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53275.57,53279.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53281.6,53281.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53281.59,53286.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53286.30,53291.103 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53291.103,53295.21 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53295.21,53299.10 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53303.8,53303.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53303.94,53312.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53314.8,53314.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53314.101,53323.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53329.6,53329.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53329.58,53334.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53334.30,53338.82 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53338.82,53340.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53340.54,53342.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53343.9,53343.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53346.8,53348.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53348.97,53356.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53356.32,53359.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53359.54,53363.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53365.10,53365.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53365.59,53369.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53371.10,53371.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53371.56,53375.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53381.8,53381.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53381.94,53389.32 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53389.32,53392.54 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53392.54,53396.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53398.10,53398.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53398.59,53402.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53404.10,53404.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53404.56,53408.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53414.8,53414.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53414.74,53416.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53418.8,53418.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53418.72,53420.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53426.6,53426.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53426.50,53431.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53431.30,53436.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53436.86,53445.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53447.8,53447.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53447.88,53456.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53458.8,53458.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53458.87,53467.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53481.2,53483.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53483.86,53491.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53491.26,53494.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53494.52,53499.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53499.27,53504.60 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53504.60,53506.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53508.6,53508.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53508.65,53510.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53512.6,53512.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53512.62,53514.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53524.2,53524.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53524.82,53528.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53528.15,53532.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53536.2,53536.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53536.94,53540.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53540.15,53544.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53548.2,53550.88 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53550.88,53558.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53558.26,53561.67 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53561.67,53565.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53567.4,53569.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53569.101,53573.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53573.17,53577.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53581.4,53581.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53581.93,53590.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53596.2,53596.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53596.91,53600.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53600.15,53604.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53608.2,53610.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53610.101,53614.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53614.15,53618.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53622.2,53622.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53622.100,53630.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53630.26,53633.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53633.61,53636.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53636.41,53638.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53639.5,53639.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53647.2,53647.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53647.62,53652.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53652.26,53658.110 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53658.110,53662.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53662.17,53666.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53670.4,53670.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53670.106,53674.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53674.17,53678.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53682.4,53682.110 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53682.110,53686.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53686.17,53690.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53694.4,53694.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53694.72,53697.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53697.41,53699.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53700.5,53700.44 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53704.4,53706.106 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53706.106,53715.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53717.4,53717.108 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53717.108,53725.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53725.28,53728.53 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53728.53,53733.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53733.30,53737.74 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53737.74,53739.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53741.8,53741.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53741.66,53743.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53745.8,53747.91 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53747.91,53756.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53758.8,53758.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53758.94,53767.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53769.8,53769.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53769.91,53778.9 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53788.4,53788.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53788.106,53797.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53799.4,53799.112 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53799.112,53808.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53810.4,53810.85 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53810.85,53812.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53812.19,53814.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53815.5,53815.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53818.4,53818.73 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53818.73,53823.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53823.28,53826.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53826.72,53828.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53830.6,53830.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53830.68,53832.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53834.6,53834.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53834.65,53836.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53846.2,53848.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53848.73,53852.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53852.15,53856.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53860.2,53860.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53860.75,53868.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53868.26,53871.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53871.48,53875.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53877.4,53877.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53877.53,53881.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53883.4,53883.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53883.50,53887.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53893.2,53895.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53895.65,53903.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53903.26,53906.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53906.48,53910.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53912.4,53912.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53912.53,53916.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53918.4,53918.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53918.50,53922.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53928.2,53928.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53928.64,53932.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53932.15,53936.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53940.2,53940.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53940.66,53945.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53945.26,53951.104 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53951.104,53955.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53955.17,53959.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53963.4,53963.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53963.105,53972.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53974.4,53974.106 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53974.106,53983.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53985.4,53985.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53985.88,53987.19 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53987.19,53989.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53990.5,53990.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53993.4,53993.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53993.76,53998.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53998.28,54001.72 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54001.72,54003.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54005.6,54005.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54005.68,54007.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54009.6,54009.65 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54009.65,54011.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54017.4,54017.75 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54017.75,54020.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54020.41,54022.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54023.5,54023.47 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54027.4,54029.100 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54029.100,54033.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54033.17,54037.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54041.4,54041.103 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54041.103,54050.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54052.4,54052.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54052.102,54061.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54063.4,54065.136 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54065.136,54073.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54073.28,54076.74 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54076.74,54081.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54081.30,54085.99 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54085.99,54089.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54095.6,54095.71 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54095.71,54100.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54100.30,54104.85 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54104.85,54106.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54112.6,54112.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54112.72,54117.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54117.30,54121.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54121.86,54125.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54127.8,54127.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54127.91,54129.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54131.8,54131.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54131.91,54133.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54139.6,54139.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54139.72,54144.30 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54144.30,54148.86 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54148.86,54152.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54154.8,54154.91 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54154.91,54156.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54158.8,54158.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54158.96,54162.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54172.4,54172.125 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54172.125,54176.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54176.17,54180.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54188.2,54191.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54191.16,54193.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54195.2,54195.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54198.93,54204.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54204.16,54205.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54205.55,54209.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54210.3,54210.99 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54213.2,54214.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:22.53,84.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:87.88,97.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:97.58,101.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:101.48,104.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:105.3,105.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:108.2,108.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:108.58,111.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:113.2,113.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:113.54,116.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:118.2,118.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:118.53,122.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:122.48,125.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:126.3,126.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:129.2,129.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:129.51,132.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:134.2,134.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:134.56,137.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:140.2,140.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:140.58,143.39 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:143.39,145.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:146.3,146.29 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:151.2,151.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:151.53,154.39 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:154.39,156.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:157.3,157.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:161.2,164.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:164.16,166.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:167.2,169.49 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:172.86,178.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:178.16,179.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:179.55,183.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:184.3,184.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:186.2,186.46 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:189.107,205.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:208.88,217.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:217.58,221.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:221.48,224.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:225.3,225.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:228.2,228.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:228.58,231.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:233.2,233.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:233.54,236.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:238.2,238.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:238.53,242.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:242.48,245.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:246.3,246.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:249.2,249.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:249.51,252.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:254.2,254.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:254.56,257.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:259.2,259.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:259.58,262.39 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:262.39,264.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:265.3,265.29 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:269.2,269.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:269.53,272.39 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:272.39,274.4 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:275.3,275.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:279.2,282.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:282.16,284.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:286.2,286.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:289.88,295.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:295.16,296.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:296.55,300.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:301.3,301.94 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:304.2,305.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:23.52,513.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:516.87,526.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:526.58,530.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:530.48,533.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:534.3,534.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:537.2,537.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:537.58,540.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:542.2,542.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:542.54,545.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:547.2,547.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:547.53,551.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:551.48,554.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:555.3,555.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:558.2,558.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:558.51,561.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:563.2,563.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:563.56,566.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:570.2,572.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:572.75,580.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:580.26,583.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:583.61,588.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:588.28,594.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:594.98,602.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:602.30,605.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:605.62,609.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:611.8,611.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:611.60,616.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:616.32,619.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:619.80,621.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:623.10,623.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:623.76,628.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:628.34,631.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:631.97,636.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:636.36,639.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:639.107,641.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:643.14,643.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:643.96,645.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:647.14,647.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:647.102,649.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:655.12,655.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:655.87,659.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:661.12,663.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:663.117,671.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:671.36,674.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:674.73,678.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:680.14,680.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:680.62,684.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:686.14,686.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:686.68,690.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:696.12,696.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:696.113,704.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:704.36,707.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:707.62,711.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:713.14,713.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:713.57,717.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:723.12,723.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:723.113,731.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:731.36,734.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:734.57,738.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:740.14,740.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:740.62,744.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:746.14,746.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:746.62,750.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:752.14,752.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:752.69,756.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:758.14,758.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:758.61,762.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:768.12,768.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:768.115,776.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:776.36,779.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:779.58,783.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:793.10,795.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:795.104,799.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:799.23,803.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:807.10,807.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:807.96,816.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:826.6,826.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:826.100,834.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:834.30,837.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:837.62,841.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:847.6,847.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:847.105,855.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:855.30,858.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:858.62,862.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:868.6,868.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:868.101,876.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:876.30,879.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:879.62,883.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:897.2,897.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:897.74,901.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:901.15,905.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:911.2,913.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:913.101,921.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:921.26,924.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:924.65,929.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:929.27,934.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:934.62,936.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:938.6,938.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:938.67,940.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:942.6,942.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:942.64,944.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:954.2,954.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:954.102,958.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:958.15,962.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:968.2,970.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:970.89,978.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:978.26,981.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:981.57,986.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:986.27,991.61 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:991.61,993.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:995.6,995.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:995.66,997.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:999.6,999.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:999.63,1001.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1011.2,1011.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1011.86,1015.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1015.15,1019.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1025.2,1027.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1027.103,1031.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1031.15,1035.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1039.2,1039.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1039.105,1043.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1043.15,1047.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1053.2,1055.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1055.82,1059.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1059.15,1063.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1067.2,1067.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1067.78,1071.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1071.15,1075.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1081.2,1083.90 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1083.90,1091.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1091.26,1094.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1094.63,1097.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1097.41,1099.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1100.5,1100.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1108.2,1108.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1108.90,1112.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1112.15,1116.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1122.2,1124.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1124.80,1132.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1132.26,1135.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1135.56,1139.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1141.4,1143.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1143.80,1147.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1147.17,1151.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1155.4,1155.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1155.72,1164.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1170.2,1170.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1170.76,1174.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1174.15,1178.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1184.2,1186.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1186.86,1194.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1194.26,1197.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1197.65,1202.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1202.27,1207.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1207.62,1209.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1211.6,1211.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1211.67,1213.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1215.6,1215.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1215.64,1217.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1227.2,1227.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1227.82,1231.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1231.15,1235.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1239.2,1242.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1242.16,1244.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1245.2,1247.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1250.85,1256.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1256.16,1257.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1257.55,1261.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1262.3,1262.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1264.2,1264.45 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1267.106,1283.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1286.87,1295.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1295.58,1299.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1299.48,1302.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1303.3,1303.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1306.2,1306.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1306.58,1309.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1311.2,1311.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1311.54,1314.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1316.2,1316.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1316.53,1320.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1320.48,1323.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1324.3,1324.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1327.2,1327.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1327.51,1330.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1332.2,1332.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1332.56,1335.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1337.2,1339.75 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1339.75,1347.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1347.26,1350.61 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1350.61,1355.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1355.28,1361.98 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1361.98,1369.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1369.30,1372.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1372.62,1376.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1378.8,1378.60 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1378.60,1383.32 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1383.32,1386.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1386.80,1388.11 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1390.10,1390.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1390.76,1395.34 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1395.34,1398.97 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1398.97,1403.36 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1403.36,1406.107 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1406.107,1408.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1410.14,1410.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1410.96,1412.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1414.14,1414.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1414.102,1416.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1422.12,1422.87 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1422.87,1426.13 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1428.12,1430.117 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1430.117,1438.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1438.36,1441.73 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1441.73,1445.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1447.14,1447.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1447.62,1451.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1453.14,1453.68 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1453.68,1457.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1463.12,1463.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1463.113,1471.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1471.36,1474.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1474.62,1478.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1480.14,1480.57 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1480.57,1484.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1490.12,1490.113 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1490.113,1498.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1498.36,1501.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1501.57,1505.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1507.14,1507.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1507.62,1511.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1513.14,1513.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1513.62,1517.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1519.14,1519.69 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1519.69,1523.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1525.14,1525.61 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1525.61,1529.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1535.12,1535.115 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1535.115,1543.36 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1543.36,1546.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1546.58,1550.15 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1560.10,1562.104 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1562.104,1566.23 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1566.23,1570.12 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1574.10,1574.96 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1574.96,1583.11 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1593.6,1593.100 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1593.100,1601.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1601.30,1604.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1604.62,1608.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1614.6,1614.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1614.105,1622.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1622.30,1625.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1625.62,1629.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1635.6,1635.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1635.101,1643.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1643.30,1646.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1646.62,1650.9 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1664.2,1664.74 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1664.74,1668.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1668.15,1672.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1676.2,1678.101 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1678.101,1686.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1686.26,1689.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1689.65,1694.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1694.27,1699.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1699.62,1701.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1703.6,1703.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1703.67,1705.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1707.6,1707.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1707.64,1709.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1719.2,1719.102 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1719.102,1723.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1723.15,1727.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1731.2,1733.89 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1733.89,1741.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1741.26,1744.57 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1744.57,1749.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1749.27,1754.61 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1754.61,1756.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1758.6,1758.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1758.66,1760.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1762.6,1762.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1762.63,1764.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1774.2,1774.86 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1774.86,1778.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1778.15,1782.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1786.2,1788.103 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1788.103,1792.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1792.15,1796.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1800.2,1800.105 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1800.105,1804.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1804.15,1808.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1812.2,1814.82 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1814.82,1818.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1818.15,1822.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1826.2,1826.78 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1826.78,1830.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1830.15,1834.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1838.2,1840.90 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1840.90,1848.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1848.26,1851.63 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1851.63,1854.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1854.41,1856.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1857.5,1857.77 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1865.2,1865.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1865.90,1869.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1869.15,1873.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1877.2,1879.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1879.80,1887.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1887.26,1890.56 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1890.56,1894.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1896.4,1898.80 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1898.80,1902.17 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1902.17,1906.6 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1910.4,1910.72 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1910.72,1919.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1925.2,1925.76 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1925.76,1929.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1929.15,1933.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1937.2,1939.86 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1939.86,1947.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1947.26,1950.65 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1950.65,1955.27 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1955.27,1960.62 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1960.62,1962.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1964.6,1964.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1964.67,1966.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1968.6,1968.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1968.64,1970.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1980.2,1980.82 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1980.82,1984.15 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1984.15,1988.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1992.2,1995.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1995.16,1997.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1999.2,1999.48 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2002.87,2008.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2008.16,2009.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2009.55,2013.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2014.3,2014.93 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2017.2,2018.105 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:22.56,190.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:193.91,203.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:203.58,207.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:207.48,210.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:211.3,211.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:214.2,214.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:214.58,217.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:219.2,219.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:219.54,222.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:224.2,224.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:224.53,228.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:228.48,231.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:232.3,232.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:235.2,235.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:235.51,238.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:240.2,240.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:240.56,243.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:247.2,249.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:249.79,257.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:257.26,260.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:260.55,263.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:263.41,265.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:266.5,266.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:274.2,274.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:274.70,282.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:282.26,285.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:285.55,290.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:290.28,296.112 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:296.112,304.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:304.30,307.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:307.52,310.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:310.45,312.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:313.9,313.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:317.8,317.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:317.53,320.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:320.45,322.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:323.9,323.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:331.6,331.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:331.104,339.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:339.30,342.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:342.58,345.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:345.45,347.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:348.9,348.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:352.8,352.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:352.66,355.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:355.45,357.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:358.9,358.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:362.8,362.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:362.62,365.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:365.45,367.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:368.9,368.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:372.8,372.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:372.53,375.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:375.45,377.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:378.9,378.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:394.2,394.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:394.58,403.3 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:405.2,408.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:408.16,410.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:411.2,413.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:416.89,422.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:422.16,423.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:423.55,427.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:428.3,428.81 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:430.2,430.49 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:433.110,449.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:452.91,461.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:461.58,465.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:465.48,468.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:469.3,469.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:472.2,472.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:472.58,475.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:477.2,477.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:477.54,480.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:482.2,482.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:482.53,486.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:486.48,489.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:490.3,490.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:493.2,493.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:493.51,496.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:498.2,498.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:498.56,501.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:503.2,505.79 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:505.79,513.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:513.26,516.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:516.55,519.41 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:519.41,521.6 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:522.5,522.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:530.2,530.70 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:530.70,538.26 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:538.26,541.55 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:541.55,546.28 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:546.28,552.112 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:552.112,560.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:560.30,563.52 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:563.52,566.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:566.45,568.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:569.9,569.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:573.8,573.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:573.53,576.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:576.45,578.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:579.9,579.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:587.6,587.104 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:587.104,595.30 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:595.30,598.58 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:598.58,601.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:601.45,603.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:604.9,604.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:608.8,608.66 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:608.66,611.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:611.45,613.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:614.9,614.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:618.8,618.62 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:618.62,621.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:621.45,623.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:624.9,624.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:628.8,628.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:628.53,631.45 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:631.45,633.10 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:634.9,634.50 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:650.2,650.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:650.58,659.3 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:661.2,664.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:664.16,666.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:668.2,668.52 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:671.91,677.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:677.16,678.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:678.55,682.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:683.3,683.97 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:686.2,687.110 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:23.63,130.2 1 1 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:133.98,143.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:143.58,147.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:147.48,150.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:151.3,151.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:154.2,154.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:154.58,157.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:159.2,159.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:159.54,162.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:164.2,164.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:164.53,168.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:168.48,171.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:172.3,172.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:175.2,175.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:175.51,178.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:180.2,180.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:180.56,183.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:186.2,186.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:186.63,192.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:192.26,194.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:194.62,196.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:197.4,197.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:197.67,199.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:201.4,201.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:201.64,203.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:209.2,209.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:209.55,214.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:214.26,220.91 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:220.91,229.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:231.4,231.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:231.101,239.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:239.28,242.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:242.50,246.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:248.6,248.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:248.55,252.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:258.4,258.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:258.90,267.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:273.2,276.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:276.16,278.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:279.2,281.59 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:284.96,290.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:290.16,291.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:291.55,295.4 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:296.3,296.88 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:298.2,298.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:301.117,317.2 8 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:320.98,329.58 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:329.58,333.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:333.48,336.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:337.3,337.30 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:340.2,340.58 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:340.58,343.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:345.2,345.54 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:345.54,348.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:350.2,350.53 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:350.53,354.48 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:354.48,357.4 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:358.3,358.25 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:361.2,361.51 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:361.51,364.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:366.2,366.56 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:366.56,369.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:371.2,371.63 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:371.63,377.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:377.26,379.62 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:379.62,381.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:382.4,382.67 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:382.67,384.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:386.4,386.64 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:386.64,388.5 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:393.2,393.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:393.55,398.26 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:398.26,404.91 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:404.91,413.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:415.4,415.101 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:415.101,423.28 6 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:423.28,426.50 2 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:426.50,430.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:432.6,432.55 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:432.55,436.7 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:442.4,442.90 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:442.90,451.5 4 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:457.2,460.16 3 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:460.16,462.3 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:464.2,464.59 1 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:467.98,473.16 5 0 -gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:473.16,474.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3566.4,3566.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3566.50,3570.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3576.2,3576.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3576.83,3580.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3580.15,3584.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3589.2,3589.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3589.83,3594.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3597.2,3597.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3597.58,3602.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3606.2,3608.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3608.64,3612.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3612.15,3616.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3620.2,3620.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3620.63,3624.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3624.15,3628.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3632.2,3632.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3632.64,3640.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3640.26,3643.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3643.56,3647.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3649.4,3649.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3649.58,3653.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3655.4,3655.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3655.55,3659.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3666.2,3666.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3666.69,3671.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3671.25,3678.60 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3678.60,3680.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3682.4,3682.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3682.65,3684.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3686.4,3686.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3686.62,3688.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3690.4,3690.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3690.59,3692.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3700.2,3702.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3702.73,3706.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3706.15,3710.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3714.2,3714.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3714.70,3722.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3722.26,3725.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3725.51,3730.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3730.28,3736.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3736.102,3744.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3744.30,3747.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3747.57,3752.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3752.31,3759.64 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3759.64,3761.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3763.10,3763.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3763.69,3765.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3767.10,3767.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3767.66,3769.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3771.10,3771.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3771.63,3773.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3779.8,3779.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3779.51,3783.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3789.6,3789.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3789.64,3791.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3793.6,3793.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3793.65,3797.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3807.2,3807.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3807.73,3815.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3815.26,3818.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3818.54,3823.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3823.27,3828.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3828.60,3830.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3832.6,3832.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3832.65,3834.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3836.6,3836.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3836.62,3838.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3850.2,3852.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3852.74,3860.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3860.26,3863.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3863.48,3867.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3869.4,3869.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3869.53,3873.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3875.4,3875.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3875.50,3879.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3885.2,3885.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3885.85,3889.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3889.15,3893.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3898.2,3898.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3898.65,3903.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3903.25,3910.59 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3910.59,3912.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3914.4,3914.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3914.64,3916.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3918.4,3918.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3918.61,3920.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3922.4,3922.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3922.58,3924.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3931.2,3931.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3931.63,3936.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3936.25,3943.59 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3943.59,3945.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3947.4,3947.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3947.64,3949.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3951.4,3951.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3951.61,3953.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3955.4,3955.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3955.58,3957.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3964.2,3964.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3964.71,3969.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3972.2,3972.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3972.70,3977.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3977.25,3984.60 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3984.60,3986.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3988.4,3988.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3988.65,3990.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3992.4,3992.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3992.62,3994.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3996.4,3996.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:3996.59,3998.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4005.2,4005.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4005.75,4010.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4010.26,4015.126 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4015.126,4023.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4023.28,4028.79 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4028.79,4032.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4032.19,4036.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4040.6,4040.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4040.82,4044.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4044.19,4048.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4056.4,4056.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4056.126,4060.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4060.17,4064.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4074.2,4076.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4076.87,4080.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4080.15,4084.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4088.2,4088.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4088.80,4096.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4096.26,4099.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4099.59,4104.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4104.28,4108.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4108.81,4110.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4112.6,4112.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4112.85,4114.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4116.6,4116.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4116.80,4118.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4130.2,4132.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4132.83,4136.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4136.15,4140.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4144.2,4144.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4144.80,4152.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4152.26,4155.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4155.59,4160.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4160.28,4164.94 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4164.94,4166.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4166.52,4168.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4169.7,4169.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4172.6,4172.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4172.89,4174.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4176.6,4176.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4176.88,4178.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4180.6,4180.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4180.78,4182.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4184.6,4186.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4186.107,4194.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4194.30,4197.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4197.52,4201.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4207.6,4207.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4207.104,4215.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4215.30,4218.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4218.63,4222.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4224.8,4224.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4224.63,4228.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4230.8,4230.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4230.62,4234.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4236.8,4236.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4236.59,4240.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4242.8,4242.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4242.65,4246.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4248.8,4248.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4248.57,4252.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4254.8,4254.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4254.54,4258.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4260.8,4260.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4260.58,4264.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4266.8,4266.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4266.58,4270.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4272.8,4272.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4272.66,4276.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4278.8,4278.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4278.52,4282.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4284.8,4284.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4284.67,4288.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4290.8,4290.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4290.59,4294.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4296.8,4296.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4296.64,4300.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4302.8,4302.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4302.62,4306.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4308.8,4308.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4308.53,4312.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4318.6,4318.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4318.107,4326.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4326.30,4329.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4329.56,4332.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4332.54,4334.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4335.9,4335.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4338.8,4338.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4338.61,4342.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4348.6,4348.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4348.118,4356.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4356.30,4359.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4359.55,4363.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4365.8,4365.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4365.63,4369.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4371.8,4371.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4371.58,4375.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4381.6,4381.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4381.81,4383.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4385.6,4385.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4385.85,4387.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4389.6,4389.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4389.81,4391.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4403.2,4405.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4405.80,4409.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4409.15,4413.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4417.2,4417.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4417.82,4425.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4425.26,4428.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4428.59,4433.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4433.28,4437.95 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4437.95,4439.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4439.52,4441.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4442.7,4442.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4445.6,4447.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4447.107,4451.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4451.19,4455.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4459.6,4459.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4459.104,4467.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4467.30,4470.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4470.63,4474.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4476.8,4476.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4476.59,4480.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4482.8,4482.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4482.67,4487.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4487.32,4490.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4490.104,4495.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4495.34,4498.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4498.105,4500.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4502.12,4502.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4502.94,4504.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4506.12,4506.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4506.100,4508.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4514.10,4514.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4514.94,4518.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4520.10,4522.124 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4522.124,4530.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4530.34,4533.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4533.71,4537.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4539.12,4539.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4539.60,4543.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4545.12,4545.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4545.66,4549.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4555.10,4555.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4555.120,4563.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4563.34,4566.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4566.60,4570.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4572.12,4572.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4572.55,4576.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4582.10,4582.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4582.120,4590.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4590.34,4593.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4593.55,4597.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4599.12,4599.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4599.60,4603.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4605.12,4605.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4605.60,4609.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4611.12,4611.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4611.67,4615.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4617.12,4617.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4617.59,4621.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4627.10,4627.122 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4627.122,4635.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4635.34,4638.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4638.56,4642.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4652.8,4652.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4652.63,4656.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4658.8,4658.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4658.57,4662.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4664.8,4664.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4664.56,4669.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4669.32,4672.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4672.95,4677.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4677.34,4680.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4680.105,4682.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4684.12,4684.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4684.94,4686.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4688.12,4688.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4688.100,4690.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4696.10,4696.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4696.85,4700.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4702.10,4704.115 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4704.115,4712.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4712.34,4715.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4715.71,4719.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4721.12,4721.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4721.60,4725.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4727.12,4727.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4727.66,4731.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4737.10,4737.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4737.111,4745.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4745.34,4748.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4748.60,4752.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4754.12,4754.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4754.55,4758.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4764.10,4764.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4764.111,4772.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4772.34,4775.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4775.55,4779.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4781.12,4781.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4781.60,4785.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4787.12,4787.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4787.60,4791.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4793.12,4793.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4793.67,4797.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4799.12,4799.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4799.59,4803.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4809.10,4809.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4809.113,4817.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4817.34,4820.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4820.56,4824.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4834.8,4834.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4834.73,4838.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4840.8,4840.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4840.67,4844.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4846.8,4846.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4846.56,4850.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4856.6,4856.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4856.107,4864.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4864.30,4869.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4869.99,4877.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4877.32,4880.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4880.67,4885.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4885.34,4888.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4888.87,4890.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4890.49,4892.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4893.13,4893.46 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4896.12,4896.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4896.82,4898.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4898.49,4900.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4901.13,4901.42 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4908.10,4908.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4908.68,4912.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4914.10,4914.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4914.62,4918.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4920.10,4920.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4920.68,4924.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4926.10,4926.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4926.68,4931.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4931.34,4934.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4934.105,4939.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4939.36,4942.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4942.107,4944.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4946.14,4946.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4946.96,4948.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4950.14,4950.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4950.102,4952.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4958.12,4958.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4958.95,4962.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4964.12,4966.125 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4966.125,4974.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4974.36,4977.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4977.73,4981.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4983.14,4983.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4983.62,4987.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4989.14,4989.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4989.68,4993.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4999.12,4999.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:4999.121,5007.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5007.36,5010.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5010.62,5014.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5016.14,5016.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5016.57,5020.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5026.12,5026.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5026.121,5034.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5034.36,5037.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5037.57,5041.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5043.14,5043.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5043.62,5047.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5049.14,5049.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5049.62,5053.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5055.14,5055.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5055.69,5059.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5061.14,5061.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5061.61,5065.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5071.12,5071.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5071.123,5079.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5079.36,5082.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5082.58,5086.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5096.10,5098.88 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5098.88,5107.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5109.10,5109.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5109.82,5118.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5120.10,5120.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5120.56,5123.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5123.56,5125.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5126.11,5126.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5129.10,5129.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5129.71,5133.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5135.10,5135.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5135.67,5139.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5141.10,5143.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5143.100,5152.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5154.10,5154.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5154.94,5163.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5165.10,5165.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5165.67,5169.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5171.10,5171.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5171.58,5176.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5176.34,5179.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5179.97,5184.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5184.36,5187.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5187.107,5189.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5191.14,5191.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5191.96,5193.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5195.14,5195.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5195.102,5197.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5203.12,5203.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5203.87,5207.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5209.12,5211.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5211.117,5219.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5219.36,5222.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5222.73,5226.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5228.14,5228.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5228.62,5232.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5234.14,5234.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5234.68,5238.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5244.12,5244.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5244.113,5252.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5252.36,5255.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5255.62,5259.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5261.14,5261.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5261.57,5265.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5271.12,5271.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5271.113,5279.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5279.36,5282.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5282.57,5286.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5288.14,5288.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5288.62,5292.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5294.14,5294.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5294.62,5298.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5300.14,5300.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5300.69,5304.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5306.14,5306.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5306.61,5310.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5316.12,5316.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5316.115,5324.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5324.36,5327.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5327.58,5331.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5341.10,5341.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5341.56,5345.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5347.10,5347.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5347.57,5352.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5352.34,5356.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5356.72,5358.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5358.58,5360.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5361.13,5361.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5364.12,5364.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5364.81,5369.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5369.36,5372.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5372.85,5374.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5376.14,5376.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5376.88,5378.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5380.14,5382.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5382.123,5391.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5393.14,5393.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5393.110,5397.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5397.27,5401.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5405.14,5405.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5405.114,5414.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5416.14,5416.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5416.89,5418.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5420.14,5420.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5420.87,5422.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5424.14,5424.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5424.90,5426.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5428.14,5428.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5428.91,5430.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5432.14,5432.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5432.88,5434.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5436.14,5436.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5436.89,5438.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5440.14,5440.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5440.89,5442.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5444.14,5444.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5444.91,5446.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5452.12,5452.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5452.70,5454.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5460.10,5460.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5460.69,5464.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5466.10,5466.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5466.64,5470.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5472.10,5472.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5472.53,5476.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5478.10,5478.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5478.72,5482.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5484.10,5484.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5484.58,5488.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5490.10,5490.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5490.65,5495.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5495.34,5498.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5498.83,5500.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5502.12,5502.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5502.86,5504.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5506.12,5508.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5508.121,5517.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5519.12,5519.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5519.108,5523.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5523.25,5527.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5531.12,5531.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5531.112,5540.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5542.12,5542.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5542.87,5544.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5546.12,5546.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5546.85,5548.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5550.12,5550.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5550.88,5552.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5554.12,5554.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5554.89,5556.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5558.12,5558.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5558.86,5560.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5562.12,5562.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5562.87,5564.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5566.12,5566.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5566.87,5568.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5570.12,5570.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5570.89,5572.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5582.8,5582.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5582.99,5590.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5590.32,5595.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5595.81,5599.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5599.23,5603.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5607.10,5607.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5607.82,5615.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5615.34,5618.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5618.73,5623.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5623.36,5626.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5626.110,5631.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5631.38,5634.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5634.109,5636.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5638.16,5638.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5638.98,5640.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5642.16,5642.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5642.104,5644.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5650.14,5650.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5650.100,5654.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5656.14,5658.130 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5658.130,5666.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5666.38,5669.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5669.75,5673.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5675.16,5675.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5675.64,5679.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5681.16,5681.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5681.70,5685.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5691.14,5691.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5691.126,5699.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5699.38,5702.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5702.64,5706.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5708.16,5708.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5708.59,5712.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5718.14,5718.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5718.126,5726.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5726.38,5729.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5729.59,5733.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5735.16,5735.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5735.64,5739.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5741.16,5741.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5741.64,5745.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5747.16,5747.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5747.71,5751.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5753.16,5753.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5753.63,5757.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5763.14,5763.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5763.128,5771.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5771.38,5774.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5774.60,5778.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5788.12,5788.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5788.80,5793.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5793.36,5796.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5796.116,5801.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5801.38,5804.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5804.109,5806.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5808.16,5808.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5808.98,5810.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5812.16,5812.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5812.104,5814.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5820.14,5820.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5820.106,5824.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5826.14,5828.136 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5828.136,5836.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5836.38,5839.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5839.75,5843.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5845.16,5845.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5845.64,5849.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5851.16,5851.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5851.70,5855.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5861.14,5861.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5861.132,5869.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5869.38,5872.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5872.64,5876.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5878.16,5878.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5878.59,5882.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5888.14,5888.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5888.132,5896.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5896.38,5899.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5899.59,5903.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5905.16,5905.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5905.64,5909.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5911.16,5911.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5911.64,5915.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5917.16,5917.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5917.71,5921.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5923.16,5923.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5923.63,5927.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5933.14,5933.134 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5933.134,5941.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5941.38,5944.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5944.60,5948.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5958.12,5958.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5958.72,5962.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5964.12,5964.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5964.65,5968.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5974.10,5974.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5974.68,5978.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5980.10,5980.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5980.68,5985.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5985.34,5988.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5988.105,5993.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5993.36,5996.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:5996.107,5998.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6000.14,6000.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6000.96,6002.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6004.14,6004.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6004.102,6006.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6012.12,6012.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6012.95,6016.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6018.12,6020.125 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6020.125,6028.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6028.36,6031.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6031.73,6035.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6037.14,6037.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6037.62,6041.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6043.14,6043.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6043.68,6047.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6053.12,6053.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6053.121,6061.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6061.36,6064.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6064.62,6068.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6070.14,6070.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6070.57,6074.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6080.12,6080.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6080.121,6088.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6088.36,6091.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6091.57,6095.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6097.14,6097.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6097.62,6101.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6103.14,6103.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6103.62,6107.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6109.14,6109.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6109.69,6113.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6115.14,6115.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6115.61,6119.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6125.12,6125.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6125.123,6133.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6133.36,6136.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6136.58,6140.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6150.10,6152.88 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6152.88,6161.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6163.10,6163.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6163.82,6172.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6174.10,6174.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6174.61,6178.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6180.10,6180.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6180.56,6183.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6183.56,6185.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6186.11,6186.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6189.10,6189.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6189.71,6193.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6195.10,6195.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6195.67,6199.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6201.10,6203.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6203.100,6212.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6214.10,6214.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6214.94,6223.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6225.10,6225.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6225.58,6230.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6230.34,6233.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6233.97,6238.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6238.36,6241.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6241.107,6243.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6245.14,6245.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6245.96,6247.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6249.14,6249.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6249.102,6251.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6257.12,6257.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6257.87,6261.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6263.12,6265.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6265.117,6273.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6273.36,6276.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6276.73,6280.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6282.14,6282.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6282.62,6286.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6288.14,6288.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6288.68,6292.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6298.12,6298.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6298.113,6306.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6306.36,6309.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6309.62,6313.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6315.14,6315.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6315.57,6319.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6325.12,6325.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6325.113,6333.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6333.36,6336.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6336.57,6340.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6342.14,6342.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6342.62,6346.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6348.14,6348.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6348.62,6352.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6354.14,6354.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6354.69,6358.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6360.14,6360.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6360.61,6364.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6370.12,6370.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6370.115,6378.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6378.36,6381.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6381.58,6385.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6395.10,6395.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6395.56,6399.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6401.10,6401.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6401.57,6406.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6406.34,6410.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6410.72,6412.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6412.58,6414.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6415.13,6415.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6418.12,6418.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6418.81,6423.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6423.36,6426.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6426.85,6428.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6430.14,6430.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6430.88,6432.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6434.14,6436.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6436.123,6445.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6447.14,6447.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6447.110,6451.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6451.27,6455.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6459.14,6459.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6459.114,6468.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6470.14,6470.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6470.89,6472.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6474.14,6474.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6474.87,6476.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6478.14,6478.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6478.90,6480.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6482.14,6482.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6482.91,6484.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6486.14,6486.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6486.88,6488.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6490.14,6490.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6490.89,6492.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6494.14,6494.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6494.89,6496.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6498.14,6498.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6498.91,6500.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6506.12,6506.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6506.70,6508.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6514.10,6514.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6514.69,6518.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6520.10,6520.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6520.64,6524.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6526.10,6526.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6526.53,6530.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6532.10,6532.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6532.72,6536.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6538.10,6538.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6538.58,6542.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6544.10,6544.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6544.65,6549.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6549.34,6552.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6552.83,6554.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6556.12,6556.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6556.86,6558.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6560.12,6562.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6562.121,6571.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6573.12,6573.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6573.108,6577.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6577.25,6581.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6585.12,6585.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6585.112,6594.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6596.12,6596.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6596.87,6598.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6600.12,6600.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6600.85,6602.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6604.12,6604.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6604.88,6606.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6608.12,6608.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6608.89,6610.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6612.12,6612.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6612.86,6614.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6616.12,6616.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6616.87,6618.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6620.12,6620.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6620.87,6622.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6624.12,6624.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6624.89,6626.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6640.6,6640.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6640.118,6648.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6648.30,6651.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6651.54,6656.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6656.32,6659.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6659.74,6664.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6664.34,6667.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6667.83,6669.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6671.12,6671.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6671.84,6673.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6675.12,6675.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6675.87,6677.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6677.49,6679.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6680.13,6680.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6683.12,6683.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6683.96,6685.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6687.12,6687.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6687.81,6692.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6692.36,6696.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6696.81,6701.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6701.38,6704.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6704.101,6709.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6709.40,6712.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6712.111,6714.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6716.18,6716.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6716.100,6718.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6720.18,6720.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6720.106,6722.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6728.16,6728.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6728.91,6732.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6734.16,6736.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6736.121,6744.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6744.40,6747.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6747.77,6751.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6753.18,6753.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6753.66,6757.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6759.18,6759.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6759.72,6763.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6769.16,6769.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6769.117,6777.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6777.40,6780.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6780.66,6784.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6786.18,6786.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6786.61,6790.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6796.16,6796.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6796.117,6804.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6804.40,6807.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6807.61,6811.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6813.18,6813.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6813.66,6817.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6819.18,6819.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6819.66,6823.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6825.18,6825.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6825.73,6829.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6831.18,6831.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6831.65,6835.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6841.16,6841.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6841.119,6849.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6849.40,6852.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6852.62,6856.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6866.14,6866.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6866.78,6868.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6868.60,6870.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6871.15,6871.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6874.14,6876.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6876.111,6885.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6887.14,6887.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6887.105,6896.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6902.12,6902.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6902.88,6904.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6906.12,6906.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6906.77,6908.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6914.10,6914.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6914.74,6919.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6919.34,6922.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6922.94,6924.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6926.12,6926.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6926.81,6928.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6930.12,6930.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6930.81,6935.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6935.36,6939.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6939.81,6944.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6944.38,6947.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6947.101,6952.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6952.40,6955.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6955.111,6957.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6959.18,6959.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6959.100,6961.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6963.18,6963.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6963.106,6965.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6971.16,6971.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6971.91,6975.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6977.16,6979.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6979.121,6987.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6987.40,6990.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6990.77,6994.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6996.18,6996.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:6996.66,7000.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7002.18,7002.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7002.72,7006.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7012.16,7012.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7012.117,7020.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7020.40,7023.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7023.66,7027.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7029.18,7029.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7029.61,7033.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7039.16,7039.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7039.117,7047.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7047.40,7050.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7050.61,7054.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7056.18,7056.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7056.66,7060.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7062.18,7062.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7062.66,7066.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7068.18,7068.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7068.73,7072.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7074.18,7074.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7074.65,7078.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7084.16,7084.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7084.119,7092.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7092.40,7095.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7095.62,7099.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7109.14,7109.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7109.78,7111.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7111.60,7113.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7114.15,7114.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7117.14,7119.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7119.111,7128.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7130.14,7130.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7130.105,7139.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7141.14,7143.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7143.118,7152.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7154.14,7154.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7154.112,7163.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7177.8,7177.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7177.58,7181.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7183.8,7183.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7183.71,7187.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7189.8,7189.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7189.70,7193.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7199.6,7199.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7199.81,7201.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7213.2,7215.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7215.87,7219.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7219.15,7223.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7227.2,7227.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7227.88,7235.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7235.26,7238.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7238.54,7243.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7243.27,7248.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7248.60,7250.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7252.6,7252.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7252.65,7254.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7256.6,7256.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7256.62,7258.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7270.2,7272.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7272.93,7276.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7276.15,7280.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7284.2,7284.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7284.90,7292.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7292.26,7295.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7295.58,7300.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7300.28,7304.71 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7304.71,7307.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7307.43,7309.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7310.7,7310.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7314.6,7314.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7314.72,7316.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7316.52,7318.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7319.7,7319.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7322.6,7322.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7322.73,7327.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7327.30,7330.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7330.71,7335.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7335.31,7342.64 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7342.64,7344.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7346.10,7346.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7346.69,7348.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7350.10,7350.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7350.66,7352.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7354.10,7354.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7354.63,7356.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7362.8,7362.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7362.77,7367.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7367.32,7372.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7372.92,7380.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7380.34,7383.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7383.56,7387.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7393.10,7393.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7393.92,7401.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7401.34,7404.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7404.56,7408.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7418.8,7418.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7418.66,7422.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7428.6,7428.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7428.73,7433.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7433.30,7439.83 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7439.83,7447.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7447.32,7450.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7450.54,7454.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7456.10,7456.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7456.56,7460.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7466.8,7466.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7466.83,7474.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7474.32,7477.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7477.54,7481.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7483.10,7483.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7483.56,7487.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7507.2,7509.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7509.72,7513.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7513.15,7517.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7521.2,7521.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7521.71,7525.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7525.15,7529.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7533.2,7533.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7533.69,7541.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7541.26,7544.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7544.48,7548.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7550.4,7550.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7550.53,7554.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7556.4,7556.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7556.50,7560.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7568.2,7570.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7570.62,7574.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7574.15,7578.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7582.2,7582.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7582.61,7586.3 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7589.2,7589.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7589.72,7594.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7596.2,7599.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7599.16,7601.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7602.2,7604.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7607.80,7613.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7613.16,7614.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7614.55,7618.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7619.3,7619.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7621.2,7621.40 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7624.101,7640.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7643.82,7652.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7652.58,7656.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7656.48,7659.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7660.3,7660.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7663.2,7663.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7663.58,7666.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7668.2,7668.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7668.54,7671.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7673.2,7673.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7673.53,7677.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7677.48,7680.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7681.3,7681.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7684.2,7684.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7684.51,7687.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7689.2,7689.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7689.56,7692.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7694.2,7694.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7694.63,7699.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7699.26,7705.113 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7705.113,7709.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7709.17,7713.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7717.4,7717.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7717.113,7721.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7721.17,7725.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7729.4,7729.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7729.128,7733.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7733.17,7737.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7741.4,7741.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7741.78,7745.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7751.2,7753.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7753.70,7761.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7761.26,7764.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7764.56,7769.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7769.28,7773.71 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7773.71,7775.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7775.43,7777.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7778.7,7778.34 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7781.6,7783.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7783.101,7787.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7787.19,7791.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7795.6,7795.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7795.92,7803.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7803.30,7806.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7806.52,7810.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7816.6,7816.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7816.85,7818.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7820.6,7820.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7820.77,7822.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7824.6,7824.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7824.68,7826.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7836.2,7836.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7836.69,7840.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7840.15,7844.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7848.2,7850.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7850.80,7858.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7858.26,7861.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7861.48,7865.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7867.4,7867.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7867.53,7871.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7873.4,7873.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7873.50,7877.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7883.2,7883.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7883.87,7891.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7891.26,7894.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7894.48,7898.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7900.4,7900.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7900.53,7904.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7906.4,7906.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7906.50,7910.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7916.2,7916.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7916.83,7920.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7920.15,7924.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7928.2,7928.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7928.83,7933.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7935.2,7937.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7937.64,7941.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7941.15,7945.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7949.2,7949.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7949.63,7953.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7953.15,7957.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7961.2,7961.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7961.64,7969.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7969.26,7972.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7972.56,7976.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7978.4,7978.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7978.58,7982.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7984.4,7984.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7984.55,7988.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7994.2,7994.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7994.69,7999.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:7999.25,8006.60 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8006.60,8008.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8010.4,8010.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8010.65,8012.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8014.4,8014.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8014.62,8016.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8018.4,8018.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8018.59,8020.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8026.2,8028.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8028.73,8032.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8032.15,8036.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8040.2,8040.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8040.70,8048.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8048.26,8051.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8051.51,8056.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8056.28,8062.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8062.102,8070.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8070.30,8073.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8073.57,8078.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8078.31,8085.64 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8085.64,8087.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8089.10,8089.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8089.69,8091.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8093.10,8093.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8093.66,8095.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8097.10,8097.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8097.63,8099.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8105.8,8105.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8105.51,8109.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8115.6,8115.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8115.64,8117.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8119.6,8119.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8119.65,8123.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8133.2,8133.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8133.73,8141.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8141.26,8144.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8144.54,8149.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8149.27,8154.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8154.60,8156.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8158.6,8158.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8158.65,8160.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8162.6,8162.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8162.62,8164.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8174.2,8176.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8176.74,8184.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8184.26,8187.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8187.48,8191.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8193.4,8193.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8193.53,8197.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8199.4,8199.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8199.50,8203.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8209.2,8209.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8209.85,8213.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8213.15,8217.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8221.2,8221.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8221.65,8226.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8226.25,8233.59 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8233.59,8235.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8237.4,8237.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8237.64,8239.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8241.4,8241.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8241.61,8243.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8245.4,8245.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8245.58,8247.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8253.2,8253.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8253.63,8258.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8258.25,8265.59 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8265.59,8267.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8269.4,8269.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8269.64,8271.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8273.4,8273.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8273.61,8275.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8277.4,8277.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8277.58,8279.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8285.2,8285.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8285.71,8290.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8292.2,8292.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8292.70,8297.25 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8297.25,8304.60 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8304.60,8306.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8308.4,8308.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8308.65,8310.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8312.4,8312.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8312.62,8314.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8316.4,8316.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8316.59,8318.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8324.2,8324.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8324.75,8329.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8329.26,8334.126 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8334.126,8342.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8342.28,8347.79 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8347.79,8351.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8351.19,8355.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8359.6,8359.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8359.82,8363.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8363.19,8367.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8375.4,8375.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8375.126,8379.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8379.17,8383.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8391.2,8393.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8393.87,8397.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8397.15,8401.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8405.2,8405.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8405.80,8413.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8413.26,8416.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8416.59,8421.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8421.28,8425.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8425.81,8427.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8429.6,8429.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8429.85,8431.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8433.6,8433.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8433.80,8435.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8445.2,8447.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8447.83,8451.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8451.15,8455.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8459.2,8459.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8459.80,8467.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8467.26,8470.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8470.59,8475.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8475.28,8479.94 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8479.94,8481.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8481.52,8483.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8484.7,8484.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8487.6,8487.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8487.89,8489.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8491.6,8491.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8491.88,8493.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8495.6,8495.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8495.78,8497.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8499.6,8501.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8501.107,8509.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8509.30,8512.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8512.52,8516.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8522.6,8522.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8522.104,8530.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8530.30,8533.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8533.63,8537.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8539.8,8539.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8539.63,8543.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8545.8,8545.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8545.62,8549.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8551.8,8551.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8551.59,8555.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8557.8,8557.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8557.65,8561.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8563.8,8563.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8563.57,8567.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8569.8,8569.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8569.54,8573.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8575.8,8575.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8575.58,8579.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8581.8,8581.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8581.58,8585.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8587.8,8587.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8587.66,8591.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8593.8,8593.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8593.52,8597.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8599.8,8599.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8599.67,8603.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8605.8,8605.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8605.59,8609.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8611.8,8611.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8611.64,8615.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8617.8,8617.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8617.62,8621.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8623.8,8623.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8623.53,8627.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8633.6,8633.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8633.107,8641.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8641.30,8644.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8644.56,8647.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8647.54,8649.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8650.9,8650.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8653.8,8653.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8653.61,8657.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8663.6,8663.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8663.118,8671.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8671.30,8674.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8674.55,8678.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8680.8,8680.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8680.63,8684.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8686.8,8686.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8686.58,8690.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8696.6,8696.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8696.81,8698.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8700.6,8700.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8700.85,8702.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8704.6,8704.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8704.81,8706.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8716.2,8718.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8718.80,8722.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8722.15,8726.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8730.2,8730.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8730.82,8738.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8738.26,8741.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8741.59,8746.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8746.28,8750.95 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8750.95,8752.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8752.52,8754.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8755.7,8755.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8758.6,8760.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8760.107,8764.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8764.19,8768.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8772.6,8772.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8772.104,8780.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8780.30,8783.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8783.63,8787.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8789.8,8789.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8789.59,8793.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8795.8,8795.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8795.67,8800.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8800.32,8803.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8803.104,8808.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8808.34,8811.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8811.105,8813.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8815.12,8815.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8815.94,8817.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8819.12,8819.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8819.100,8821.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8827.10,8827.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8827.94,8831.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8833.10,8835.124 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8835.124,8843.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8843.34,8846.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8846.71,8850.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8852.12,8852.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8852.60,8856.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8858.12,8858.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8858.66,8862.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8868.10,8868.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8868.120,8876.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8876.34,8879.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8879.60,8883.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8885.12,8885.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8885.55,8889.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8895.10,8895.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8895.120,8903.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8903.34,8906.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8906.55,8910.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8912.12,8912.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8912.60,8916.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8918.12,8918.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8918.60,8922.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8924.12,8924.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8924.67,8928.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8930.12,8930.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8930.59,8934.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8940.10,8940.122 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8940.122,8948.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8948.34,8951.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8951.56,8955.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8965.8,8965.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8965.63,8969.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8971.8,8971.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8971.57,8975.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8977.8,8977.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8977.56,8982.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8982.32,8985.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8985.95,8990.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8990.34,8993.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8993.105,8995.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8997.12,8997.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:8997.94,8999.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9001.12,9001.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9001.100,9003.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9009.10,9009.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9009.85,9013.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9015.10,9017.115 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9017.115,9025.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9025.34,9028.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9028.71,9032.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9034.12,9034.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9034.60,9038.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9040.12,9040.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9040.66,9044.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9050.10,9050.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9050.111,9058.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9058.34,9061.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9061.60,9065.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9067.12,9067.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9067.55,9071.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9077.10,9077.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9077.111,9085.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9085.34,9088.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9088.55,9092.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9094.12,9094.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9094.60,9098.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9100.12,9100.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9100.60,9104.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9106.12,9106.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9106.67,9110.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9112.12,9112.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9112.59,9116.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9122.10,9122.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9122.113,9130.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9130.34,9133.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9133.56,9137.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9147.8,9147.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9147.73,9151.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9153.8,9153.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9153.67,9157.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9159.8,9159.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9159.56,9163.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9169.6,9169.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9169.107,9177.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9177.30,9182.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9182.99,9190.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9190.32,9193.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9193.67,9198.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9198.34,9201.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9201.87,9203.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9203.49,9205.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9206.13,9206.46 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9209.12,9209.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9209.82,9211.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9211.49,9213.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9214.13,9214.42 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9221.10,9221.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9221.68,9225.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9227.10,9227.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9227.62,9231.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9233.10,9233.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9233.68,9237.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9239.10,9239.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9239.68,9244.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9244.34,9247.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9247.105,9252.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9252.36,9255.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9255.107,9257.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9259.14,9259.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9259.96,9261.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9263.14,9263.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9263.102,9265.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9271.12,9271.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9271.95,9275.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9277.12,9279.125 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9279.125,9287.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9287.36,9290.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9290.73,9294.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9296.14,9296.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9296.62,9300.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9302.14,9302.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9302.68,9306.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9312.12,9312.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9312.121,9320.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9320.36,9323.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9323.62,9327.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9329.14,9329.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9329.57,9333.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9339.12,9339.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9339.121,9347.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9347.36,9350.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9350.57,9354.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9356.14,9356.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9356.62,9360.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9362.14,9362.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9362.62,9366.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9368.14,9368.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9368.69,9372.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9374.14,9374.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9374.61,9378.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9384.12,9384.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9384.123,9392.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9392.36,9395.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9395.58,9399.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9409.10,9411.88 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9411.88,9420.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9422.10,9422.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9422.82,9431.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9433.10,9433.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9433.56,9436.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9436.56,9438.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9439.11,9439.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9442.10,9442.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9442.71,9446.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9448.10,9448.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9448.67,9452.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9454.10,9456.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9456.100,9465.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9467.10,9467.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9467.94,9476.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9478.10,9478.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9478.67,9482.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9484.10,9484.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9484.58,9489.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9489.34,9492.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9492.97,9497.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9497.36,9500.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9500.107,9502.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9504.14,9504.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9504.96,9506.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9508.14,9508.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9508.102,9510.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9516.12,9516.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9516.87,9520.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9522.12,9524.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9524.117,9532.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9532.36,9535.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9535.73,9539.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9541.14,9541.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9541.62,9545.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9547.14,9547.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9547.68,9551.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9557.12,9557.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9557.113,9565.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9565.36,9568.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9568.62,9572.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9574.14,9574.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9574.57,9578.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9584.12,9584.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9584.113,9592.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9592.36,9595.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9595.57,9599.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9601.14,9601.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9601.62,9605.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9607.14,9607.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9607.62,9611.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9613.14,9613.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9613.69,9617.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9619.14,9619.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9619.61,9623.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9629.12,9629.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9629.115,9637.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9637.36,9640.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9640.58,9644.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9654.10,9654.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9654.56,9658.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9660.10,9660.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9660.57,9665.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9665.34,9669.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9669.72,9671.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9671.58,9673.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9674.13,9674.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9677.12,9677.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9677.81,9682.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9682.36,9685.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9685.85,9687.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9689.14,9689.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9689.88,9691.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9693.14,9695.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9695.123,9704.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9706.14,9706.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9706.110,9710.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9710.27,9714.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9718.14,9718.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9718.114,9727.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9729.14,9729.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9729.89,9731.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9733.14,9733.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9733.87,9735.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9737.14,9737.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9737.90,9739.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9741.14,9741.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9741.91,9743.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9745.14,9745.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9745.88,9747.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9749.14,9749.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9749.89,9751.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9753.14,9753.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9753.89,9755.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9757.14,9757.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9757.91,9759.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9765.12,9765.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9765.70,9767.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9773.10,9773.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9773.69,9777.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9779.10,9779.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9779.64,9783.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9785.10,9785.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9785.53,9789.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9791.10,9791.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9791.72,9795.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9797.10,9797.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9797.58,9801.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9803.10,9803.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9803.65,9808.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9808.34,9811.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9811.83,9813.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9815.12,9815.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9815.86,9817.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9819.12,9821.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9821.121,9830.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9832.12,9832.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9832.108,9836.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9836.25,9840.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9844.12,9844.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9844.112,9853.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9855.12,9855.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9855.87,9857.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9859.12,9859.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9859.85,9861.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9863.12,9863.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9863.88,9865.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9867.12,9867.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9867.89,9869.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9871.12,9871.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9871.86,9873.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9875.12,9875.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9875.87,9877.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9879.12,9879.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9879.87,9881.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9883.12,9883.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9883.89,9885.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9895.8,9895.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9895.99,9903.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9903.32,9908.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9908.81,9912.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9912.23,9916.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9920.10,9920.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9920.82,9928.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9928.34,9931.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9931.73,9936.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9936.36,9939.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9939.110,9944.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9944.38,9947.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9947.109,9949.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9951.16,9951.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9951.98,9953.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9955.16,9955.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9955.104,9957.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9963.14,9963.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9963.100,9967.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9969.14,9971.130 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9971.130,9979.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9979.38,9982.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9982.75,9986.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9988.16,9988.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9988.64,9992.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9994.16,9994.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:9994.70,9998.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10004.14,10004.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10004.126,10012.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10012.38,10015.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10015.64,10019.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10021.16,10021.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10021.59,10025.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10031.14,10031.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10031.126,10039.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10039.38,10042.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10042.59,10046.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10048.16,10048.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10048.64,10052.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10054.16,10054.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10054.64,10058.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10060.16,10060.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10060.71,10064.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10066.16,10066.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10066.63,10070.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10076.14,10076.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10076.128,10084.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10084.38,10087.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10087.60,10091.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10101.12,10101.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10101.80,10106.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10106.36,10109.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10109.116,10114.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10114.38,10117.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10117.109,10119.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10121.16,10121.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10121.98,10123.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10125.16,10125.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10125.104,10127.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10133.14,10133.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10133.106,10137.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10139.14,10141.136 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10141.136,10149.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10149.38,10152.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10152.75,10156.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10158.16,10158.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10158.64,10162.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10164.16,10164.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10164.70,10168.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10174.14,10174.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10174.132,10182.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10182.38,10185.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10185.64,10189.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10191.16,10191.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10191.59,10195.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10201.14,10201.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10201.132,10209.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10209.38,10212.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10212.59,10216.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10218.16,10218.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10218.64,10222.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10224.16,10224.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10224.64,10228.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10230.16,10230.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10230.71,10234.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10236.16,10236.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10236.63,10240.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10246.14,10246.134 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10246.134,10254.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10254.38,10257.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10257.60,10261.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10271.12,10271.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10271.72,10275.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10277.12,10277.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10277.65,10281.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10287.10,10287.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10287.68,10291.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10293.10,10293.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10293.68,10298.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10298.34,10301.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10301.105,10306.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10306.36,10309.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10309.107,10311.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10313.14,10313.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10313.96,10315.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10317.14,10317.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10317.102,10319.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10325.12,10325.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10325.95,10329.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10331.12,10333.125 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10333.125,10341.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10341.36,10344.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10344.73,10348.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10350.14,10350.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10350.62,10354.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10356.14,10356.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10356.68,10360.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10366.12,10366.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10366.121,10374.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10374.36,10377.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10377.62,10381.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10383.14,10383.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10383.57,10387.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10393.12,10393.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10393.121,10401.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10401.36,10404.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10404.57,10408.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10410.14,10410.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10410.62,10414.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10416.14,10416.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10416.62,10420.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10422.14,10422.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10422.69,10426.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10428.14,10428.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10428.61,10432.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10438.12,10438.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10438.123,10446.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10446.36,10449.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10449.58,10453.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10463.10,10465.88 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10465.88,10474.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10476.10,10476.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10476.82,10485.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10487.10,10487.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10487.61,10491.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10493.10,10493.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10493.56,10496.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10496.56,10498.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10499.11,10499.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10502.10,10502.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10502.71,10506.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10508.10,10508.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10508.67,10512.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10514.10,10516.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10516.100,10525.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10527.10,10527.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10527.94,10536.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10538.10,10538.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10538.58,10543.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10543.34,10546.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10546.97,10551.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10551.36,10554.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10554.107,10556.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10558.14,10558.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10558.96,10560.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10562.14,10562.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10562.102,10564.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10570.12,10570.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10570.87,10574.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10576.12,10578.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10578.117,10586.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10586.36,10589.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10589.73,10593.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10595.14,10595.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10595.62,10599.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10601.14,10601.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10601.68,10605.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10611.12,10611.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10611.113,10619.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10619.36,10622.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10622.62,10626.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10628.14,10628.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10628.57,10632.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10638.12,10638.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10638.113,10646.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10646.36,10649.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10649.57,10653.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10655.14,10655.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10655.62,10659.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10661.14,10661.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10661.62,10665.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10667.14,10667.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10667.69,10671.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10673.14,10673.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10673.61,10677.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10683.12,10683.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10683.115,10691.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10691.36,10694.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10694.58,10698.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10708.10,10708.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10708.56,10712.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10714.10,10714.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10714.57,10719.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10719.34,10723.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10723.72,10725.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10725.58,10727.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10728.13,10728.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10731.12,10731.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10731.81,10736.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10736.36,10739.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10739.85,10741.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10743.14,10743.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10743.88,10745.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10747.14,10749.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10749.123,10758.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10760.14,10760.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10760.110,10764.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10764.27,10768.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10772.14,10772.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10772.114,10781.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10783.14,10783.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10783.89,10785.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10787.14,10787.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10787.87,10789.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10791.14,10791.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10791.90,10793.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10795.14,10795.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10795.91,10797.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10799.14,10799.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10799.88,10801.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10803.14,10803.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10803.89,10805.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10807.14,10807.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10807.89,10809.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10811.14,10811.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10811.91,10813.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10819.12,10819.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10819.70,10821.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10827.10,10827.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10827.69,10831.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10833.10,10833.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10833.64,10837.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10839.10,10839.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10839.53,10843.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10845.10,10845.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10845.72,10849.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10851.10,10851.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10851.58,10855.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10857.10,10857.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10857.65,10862.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10862.34,10865.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10865.83,10867.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10869.12,10869.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10869.86,10871.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10873.12,10875.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10875.121,10884.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10886.12,10886.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10886.108,10890.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10890.25,10894.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10898.12,10898.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10898.112,10907.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10909.12,10909.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10909.87,10911.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10913.12,10913.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10913.85,10915.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10917.12,10917.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10917.88,10919.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10921.12,10921.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10921.89,10923.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10925.12,10925.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10925.86,10927.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10929.12,10929.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10929.87,10931.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10933.12,10933.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10933.87,10935.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10937.12,10937.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10937.89,10939.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10953.6,10953.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10953.118,10961.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10961.30,10964.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10964.54,10969.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10969.32,10972.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10972.74,10977.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10977.34,10980.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10980.83,10982.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10984.12,10984.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10984.84,10986.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10988.12,10988.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10988.87,10990.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10990.49,10992.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10993.13,10993.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10996.12,10996.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:10996.96,10998.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11000.12,11000.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11000.81,11005.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11005.36,11009.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11009.81,11014.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11014.38,11017.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11017.101,11022.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11022.40,11025.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11025.111,11027.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11029.18,11029.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11029.100,11031.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11033.18,11033.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11033.106,11035.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11041.16,11041.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11041.91,11045.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11047.16,11049.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11049.121,11057.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11057.40,11060.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11060.77,11064.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11066.18,11066.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11066.66,11070.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11072.18,11072.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11072.72,11076.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11082.16,11082.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11082.117,11090.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11090.40,11093.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11093.66,11097.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11099.18,11099.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11099.61,11103.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11109.16,11109.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11109.117,11117.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11117.40,11120.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11120.61,11124.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11126.18,11126.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11126.66,11130.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11132.18,11132.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11132.66,11136.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11138.18,11138.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11138.73,11142.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11144.18,11144.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11144.65,11148.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11154.16,11154.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11154.119,11162.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11162.40,11165.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11165.62,11169.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11179.14,11179.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11179.78,11181.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11181.60,11183.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11184.15,11184.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11187.14,11189.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11189.111,11198.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11200.14,11200.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11200.105,11209.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11215.12,11215.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11215.88,11217.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11219.12,11219.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11219.77,11221.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11227.10,11227.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11227.74,11232.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11232.34,11235.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11235.94,11237.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11239.12,11239.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11239.81,11241.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11243.12,11243.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11243.81,11248.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11248.36,11252.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11252.81,11257.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11257.38,11260.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11260.101,11265.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11265.40,11268.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11268.111,11270.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11272.18,11272.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11272.100,11274.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11276.18,11276.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11276.106,11278.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11284.16,11284.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11284.91,11288.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11290.16,11292.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11292.121,11300.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11300.40,11303.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11303.77,11307.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11309.18,11309.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11309.66,11313.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11315.18,11315.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11315.72,11319.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11325.16,11325.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11325.117,11333.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11333.40,11336.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11336.66,11340.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11342.18,11342.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11342.61,11346.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11352.16,11352.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11352.117,11360.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11360.40,11363.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11363.61,11367.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11369.18,11369.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11369.66,11373.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11375.18,11375.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11375.66,11379.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11381.18,11381.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11381.73,11385.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11387.18,11387.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11387.65,11391.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11397.16,11397.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11397.119,11405.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11405.40,11408.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11408.62,11412.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11422.14,11422.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11422.78,11424.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11424.60,11426.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11427.15,11427.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11430.14,11432.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11432.111,11441.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11443.14,11443.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11443.105,11452.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11454.14,11456.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11456.118,11465.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11467.14,11467.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11467.112,11476.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11490.8,11490.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11490.58,11494.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11496.8,11496.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11496.71,11500.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11502.8,11502.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11502.70,11506.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11512.6,11512.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11512.81,11514.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11524.2,11526.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11526.87,11530.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11530.15,11534.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11538.2,11538.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11538.88,11546.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11546.26,11549.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11549.54,11554.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11554.27,11559.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11559.60,11561.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11563.6,11563.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11563.65,11565.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11567.6,11567.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11567.62,11569.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11579.2,11581.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11581.93,11585.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11585.15,11589.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11593.2,11593.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11593.90,11601.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11601.26,11604.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11604.58,11609.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11609.28,11613.71 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11613.71,11616.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11616.43,11618.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11619.7,11619.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11623.6,11623.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11623.72,11625.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11625.52,11627.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11628.7,11628.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11631.6,11631.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11631.73,11636.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11636.30,11639.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11639.71,11644.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11644.31,11651.64 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11651.64,11653.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11655.10,11655.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11655.69,11657.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11659.10,11659.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11659.66,11661.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11663.10,11663.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11663.63,11665.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11671.8,11671.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11671.77,11676.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11676.32,11681.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11681.92,11689.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11689.34,11692.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11692.56,11696.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11702.10,11702.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11702.92,11710.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11710.34,11713.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11713.56,11717.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11727.8,11727.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11727.66,11731.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11737.6,11737.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11737.73,11742.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11742.30,11748.83 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11748.83,11756.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11756.32,11759.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11759.54,11763.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11765.10,11765.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11765.56,11769.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11775.8,11775.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11775.83,11783.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11783.32,11786.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11786.54,11790.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11792.10,11792.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11792.56,11796.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11814.2,11816.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11816.72,11820.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11820.15,11824.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11828.2,11828.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11828.71,11832.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11832.15,11836.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11840.2,11840.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11840.69,11848.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11848.26,11851.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11851.48,11855.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11857.4,11857.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11857.53,11861.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11863.4,11863.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11863.50,11867.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11873.2,11875.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11875.62,11879.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11879.15,11883.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11887.2,11887.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11887.61,11891.3 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11893.2,11893.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11893.72,11898.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11900.2,11903.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11903.16,11905.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11907.2,11907.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11910.82,11916.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11916.16,11917.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11917.55,11921.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11922.3,11922.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_fleet.go:11925.2,11926.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:24.60,944.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:947.95,957.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:957.58,961.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:961.48,964.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:965.3,965.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:968.2,968.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:968.58,971.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:973.2,973.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:973.54,976.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:978.2,978.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:978.53,982.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:982.48,985.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:986.3,986.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:989.2,989.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:989.51,992.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:994.2,994.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:994.56,997.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1001.2,1003.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1003.64,1007.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1007.15,1011.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1015.2,1015.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1015.71,1019.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1019.15,1023.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1027.2,1027.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1027.72,1035.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1035.26,1038.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1038.48,1042.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1044.4,1044.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1044.53,1048.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1050.4,1050.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1050.50,1054.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1060.2,1060.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1060.75,1068.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1068.26,1071.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1071.55,1074.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1074.41,1076.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1077.5,1077.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1087.2,1089.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1089.63,1093.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1093.15,1097.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1101.2,1101.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1101.64,1109.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1109.26,1114.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1114.97,1118.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1118.17,1122.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1126.4,1126.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1126.96,1130.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1130.17,1134.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1138.4,1138.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1138.103,1142.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1142.17,1146.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1150.4,1150.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1150.53,1155.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1155.28,1159.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1159.72,1161.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1163.6,1163.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1163.69,1165.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1165.43,1167.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1168.7,1168.32 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1175.4,1175.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1175.53,1180.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1180.28,1186.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1186.98,1195.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1197.6,1197.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1197.98,1206.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1208.6,1208.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1208.99,1217.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1219.6,1221.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1221.93,1225.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1225.19,1229.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1233.6,1233.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1233.101,1242.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1244.6,1244.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1244.102,1253.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1255.6,1255.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1255.101,1264.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1270.4,1270.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1270.52,1275.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1275.28,1281.97 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1281.97,1290.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1292.6,1292.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1292.97,1301.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1303.6,1303.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1303.98,1312.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1322.2,1322.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1322.63,1330.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1330.26,1335.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1335.97,1339.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1339.17,1343.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1347.4,1347.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1347.96,1351.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1351.17,1355.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1359.4,1359.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1359.103,1363.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1363.17,1367.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1371.4,1371.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1371.53,1376.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1376.28,1380.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1380.72,1382.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1384.6,1384.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1384.69,1386.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1386.43,1388.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1389.7,1389.32 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1396.4,1396.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1396.53,1401.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1401.28,1407.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1407.98,1416.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1418.6,1418.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1418.98,1427.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1429.6,1429.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1429.99,1438.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1440.6,1442.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1442.93,1446.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1446.19,1450.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1454.6,1454.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1454.101,1463.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1465.6,1465.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1465.102,1474.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1476.6,1476.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1476.101,1485.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1491.4,1491.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1491.52,1496.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1496.28,1502.97 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1502.97,1511.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1513.6,1513.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1513.97,1522.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1524.6,1524.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1524.98,1533.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1543.2,1543.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1543.63,1551.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1551.26,1554.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1554.49,1559.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1559.28,1563.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1563.64,1567.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1569.6,1571.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1571.105,1575.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1575.19,1579.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1583.6,1583.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1583.101,1591.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1591.30,1594.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1594.58,1597.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1597.45,1599.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1600.9,1600.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1608.6,1608.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1608.100,1616.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1616.30,1619.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1619.52,1623.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1625.8,1625.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1625.57,1629.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1631.8,1631.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1631.54,1635.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1641.6,1641.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1641.106,1649.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1649.30,1652.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1652.52,1656.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1658.8,1658.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1658.57,1662.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1664.8,1664.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1664.54,1668.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1674.6,1674.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1674.107,1682.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1682.30,1685.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1685.59,1688.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1688.45,1690.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1691.9,1691.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1699.6,1699.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1699.104,1707.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1707.30,1710.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1710.61,1713.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1713.45,1715.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1716.9,1716.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1720.8,1720.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1720.56,1723.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1723.45,1725.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1726.9,1726.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1734.6,1734.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1734.98,1742.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1742.30,1745.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1745.57,1750.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1750.32,1756.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1756.102,1765.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1767.10,1767.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1767.102,1776.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1778.10,1778.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1778.103,1787.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1789.10,1791.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1791.97,1795.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1795.23,1799.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1803.10,1803.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1803.105,1812.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1814.10,1814.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1814.106,1823.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1825.10,1825.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1825.105,1834.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1844.6,1844.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1844.97,1852.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1852.30,1855.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1855.56,1860.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1860.32,1866.101 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1866.101,1875.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1877.10,1877.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1877.101,1886.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1888.10,1888.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1888.102,1897.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1907.6,1907.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1907.106,1915.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1915.30,1918.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1918.62,1921.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1921.45,1923.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1924.9,1924.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1932.6,1934.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1934.109,1938.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1938.19,1942.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1946.6,1946.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1946.101,1954.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1954.30,1957.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1957.62,1961.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1963.8,1963.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1963.53,1966.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1966.45,1968.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1969.9,1969.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1977.6,1977.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1977.66,1982.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1982.30,1985.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1985.74,1987.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1989.8,1989.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1989.70,1991.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1993.8,1993.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:1993.67,1995.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2001.6,2001.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2001.74,2003.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2005.6,2005.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2005.67,2007.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2009.6,2011.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2011.95,2015.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2015.19,2019.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2023.6,2023.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2023.98,2027.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2027.19,2031.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2035.6,2035.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2035.93,2043.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2043.30,2046.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2046.52,2050.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2052.8,2052.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2052.57,2056.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2058.8,2058.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2058.54,2062.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2068.6,2068.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2068.97,2076.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2076.30,2079.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2079.52,2083.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2085.8,2085.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2085.57,2089.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2091.8,2091.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2091.54,2095.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2101.6,2101.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2101.98,2109.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2109.30,2112.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2112.59,2115.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2115.45,2117.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2118.9,2118.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2126.6,2126.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2126.93,2135.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2137.6,2137.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2137.95,2145.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2145.30,2148.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2148.61,2151.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2151.45,2153.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2154.9,2154.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2158.8,2158.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2158.56,2161.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2161.45,2163.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2164.9,2164.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2181.2,2181.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2181.61,2186.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2186.26,2191.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2191.101,2195.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2195.17,2199.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2203.4,2203.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2203.106,2211.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2211.28,2214.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2214.54,2219.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2219.29,2224.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2224.62,2226.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2228.8,2228.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2228.67,2230.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2232.8,2232.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2232.64,2234.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2244.4,2244.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2244.107,2248.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2248.17,2252.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2256.4,2258.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2258.101,2262.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2262.17,2266.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2270.4,2270.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2270.106,2278.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2278.28,2281.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2281.54,2286.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2286.29,2291.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2291.62,2293.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2295.8,2295.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2295.67,2297.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2299.8,2299.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2299.64,2301.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2315.2,2318.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2318.16,2320.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2321.2,2323.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2326.93,2332.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2332.16,2333.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2333.55,2337.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2338.3,2338.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2340.2,2340.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2343.114,2359.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2362.95,2371.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2371.58,2375.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2375.48,2378.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2379.3,2379.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2382.2,2382.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2382.58,2385.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2387.2,2387.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2387.54,2390.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2392.2,2392.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2392.53,2396.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2396.48,2399.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2400.3,2400.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2403.2,2403.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2403.51,2406.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2408.2,2408.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2408.56,2411.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2413.2,2415.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2415.64,2419.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2419.15,2423.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2427.2,2427.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2427.71,2431.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2431.15,2435.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2439.2,2439.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2439.72,2447.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2447.26,2450.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2450.48,2454.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2456.4,2456.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2456.53,2460.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2462.4,2462.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2462.50,2466.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2472.2,2472.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2472.75,2480.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2480.26,2483.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2483.55,2486.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2486.41,2488.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2489.5,2489.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2497.2,2499.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2499.63,2503.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2503.15,2507.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2511.2,2511.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2511.64,2519.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2519.26,2524.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2524.97,2528.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2528.17,2532.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2536.4,2536.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2536.96,2540.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2540.17,2544.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2548.4,2548.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2548.103,2552.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2552.17,2556.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2560.4,2560.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2560.53,2565.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2565.28,2569.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2569.72,2571.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2573.6,2573.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2573.69,2575.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2575.43,2577.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2578.7,2578.32 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2585.4,2585.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2585.53,2590.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2590.28,2596.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2596.98,2605.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2607.6,2607.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2607.98,2616.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2618.6,2618.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2618.99,2627.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2629.6,2631.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2631.93,2635.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2635.19,2639.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2643.6,2643.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2643.101,2652.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2654.6,2654.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2654.102,2663.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2665.6,2665.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2665.101,2674.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2680.4,2680.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2680.52,2685.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2685.28,2691.97 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2691.97,2700.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2702.6,2702.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2702.97,2711.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2713.6,2713.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2713.98,2722.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2732.2,2732.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2732.63,2740.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2740.26,2745.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2745.97,2749.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2749.17,2753.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2757.4,2757.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2757.96,2761.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2761.17,2765.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2769.4,2769.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2769.103,2773.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2773.17,2777.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2781.4,2781.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2781.53,2786.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2786.28,2790.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2790.72,2792.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2794.6,2794.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2794.69,2796.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2796.43,2798.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2799.7,2799.32 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2806.4,2806.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2806.53,2811.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2811.28,2817.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2817.98,2826.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2828.6,2828.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2828.98,2837.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2839.6,2839.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2839.99,2848.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2850.6,2852.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2852.93,2856.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2856.19,2860.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2864.6,2864.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2864.101,2873.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2875.6,2875.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2875.102,2884.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2886.6,2886.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2886.101,2895.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2901.4,2901.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2901.52,2906.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2906.28,2912.97 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2912.97,2921.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2923.6,2923.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2923.97,2932.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2934.6,2934.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2934.98,2943.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2953.2,2953.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2953.63,2961.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2961.26,2964.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2964.49,2969.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2969.28,2973.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2973.64,2977.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2979.6,2981.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2981.105,2985.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2985.19,2989.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2993.6,2993.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:2993.101,3001.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3001.30,3004.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3004.58,3007.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3007.45,3009.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3010.9,3010.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3018.6,3018.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3018.100,3026.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3026.30,3029.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3029.52,3033.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3035.8,3035.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3035.57,3039.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3041.8,3041.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3041.54,3045.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3051.6,3051.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3051.106,3059.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3059.30,3062.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3062.52,3066.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3068.8,3068.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3068.57,3072.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3074.8,3074.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3074.54,3078.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3084.6,3084.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3084.107,3092.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3092.30,3095.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3095.59,3098.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3098.45,3100.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3101.9,3101.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3109.6,3109.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3109.104,3117.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3117.30,3120.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3120.61,3123.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3123.45,3125.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3126.9,3126.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3130.8,3130.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3130.56,3133.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3133.45,3135.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3136.9,3136.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3144.6,3144.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3144.98,3152.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3152.30,3155.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3155.57,3160.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3160.32,3166.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3166.102,3175.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3177.10,3177.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3177.102,3186.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3188.10,3188.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3188.103,3197.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3199.10,3201.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3201.97,3205.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3205.23,3209.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3213.10,3213.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3213.105,3222.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3224.10,3224.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3224.106,3233.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3235.10,3235.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3235.105,3244.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3254.6,3254.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3254.97,3262.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3262.30,3265.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3265.56,3270.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3270.32,3276.101 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3276.101,3285.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3287.10,3287.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3287.101,3296.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3298.10,3298.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3298.102,3307.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3317.6,3317.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3317.106,3325.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3325.30,3328.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3328.62,3331.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3331.45,3333.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3334.9,3334.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3342.6,3344.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3344.109,3348.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3348.19,3352.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3356.6,3356.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3356.101,3364.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3364.30,3367.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3367.62,3371.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3373.8,3373.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3373.53,3376.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3376.45,3378.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3379.9,3379.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3387.6,3387.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3387.66,3392.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3392.30,3395.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3395.74,3397.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3399.8,3399.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3399.70,3401.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3403.8,3403.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3403.67,3405.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3411.6,3411.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3411.74,3413.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3415.6,3415.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3415.67,3417.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3419.6,3421.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3421.95,3425.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3425.19,3429.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3433.6,3433.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3433.98,3437.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3437.19,3441.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3445.6,3445.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3445.93,3453.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3453.30,3456.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3456.52,3460.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3462.8,3462.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3462.57,3466.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3468.8,3468.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3468.54,3472.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3478.6,3478.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3478.97,3486.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3486.30,3489.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3489.52,3493.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3495.8,3495.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3495.57,3499.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3501.8,3501.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3501.54,3505.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3511.6,3511.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3511.98,3519.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3519.30,3522.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3522.59,3525.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3525.45,3527.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3528.9,3528.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3536.6,3536.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3536.93,3545.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3547.6,3547.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3547.95,3555.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3555.30,3558.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3558.61,3561.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3561.45,3563.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3564.9,3564.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3568.8,3568.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3568.56,3571.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3571.45,3573.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3574.9,3574.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3590.2,3590.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3590.61,3595.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3595.26,3600.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3600.101,3604.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3604.17,3608.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3612.4,3612.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3612.106,3620.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3620.28,3623.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3623.54,3628.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3628.29,3633.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3633.62,3635.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3637.8,3637.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3637.67,3639.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3641.8,3641.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3641.64,3643.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3653.4,3653.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3653.107,3657.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3657.17,3661.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3665.4,3667.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3667.101,3671.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3671.17,3675.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3679.4,3679.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3679.106,3687.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3687.28,3690.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3690.54,3695.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3695.29,3700.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3700.62,3702.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3704.8,3704.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3704.67,3706.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3708.8,3708.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3708.64,3710.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3724.2,3727.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3727.16,3729.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3731.2,3731.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3734.95,3740.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3740.16,3741.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3741.55,3745.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3746.3,3746.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_forward_proxy_policy.go:3749.2,3750.120 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:26.52,2774.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2777.87,2787.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2787.58,2791.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2791.48,2794.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2795.3,2795.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2798.2,2798.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2798.58,2801.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2803.2,2803.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2803.54,2806.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2808.2,2808.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2808.53,2812.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2812.48,2815.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2816.3,2816.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2819.2,2819.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2819.51,2822.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2824.2,2824.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2824.56,2827.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2830.2,2830.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2830.54,2835.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2839.2,2841.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2841.83,2845.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2845.15,2849.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2853.2,2853.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2853.81,2861.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2861.26,2864.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2864.58,2869.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2869.28,2875.113 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2875.113,2879.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2879.19,2883.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2887.6,2887.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2887.113,2891.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2891.19,2895.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2899.6,2899.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2899.128,2903.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2903.19,2907.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2911.6,2911.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2911.78,2915.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2925.2,2925.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2925.89,2929.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2929.15,2933.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2938.2,2938.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2938.58,2943.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2943.26,2946.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2946.70,2948.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2950.4,2950.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2950.71,2952.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2960.2,2962.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2962.71,2970.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2970.26,2973.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2973.48,2977.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2979.4,2979.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2979.53,2983.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2985.4,2985.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2985.50,2989.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2996.2,2996.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:2996.56,3001.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3004.2,3004.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3004.57,3007.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3007.48,3009.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3010.3,3010.28 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3014.2,3014.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3014.57,3019.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3022.2,3022.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3022.60,3027.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3031.2,3033.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3033.74,3041.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3041.26,3044.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3044.48,3048.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3050.4,3050.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3050.53,3054.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3056.4,3056.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3056.50,3060.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3066.2,3066.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3066.85,3070.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3070.15,3074.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3079.2,3079.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3079.59,3084.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3087.2,3087.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3087.73,3092.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3092.26,3097.152 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3097.152,3101.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3101.17,3105.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3109.4,3109.148 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3109.148,3113.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3113.17,3117.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3126.2,3126.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3126.49,3131.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3131.26,3136.113 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3136.113,3140.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3140.17,3144.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3148.4,3148.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3148.119,3157.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3165.2,3167.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3167.93,3171.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3171.15,3175.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3179.2,3179.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3179.89,3187.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3187.26,3190.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3190.54,3195.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3195.28,3198.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3198.66,3200.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3202.6,3202.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3202.71,3204.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3206.6,3206.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3206.68,3208.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3214.4,3216.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3216.78,3220.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3220.17,3224.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3228.4,3228.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3228.79,3232.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3232.17,3236.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3246.2,3248.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3248.69,3256.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3256.26,3261.104 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3261.104,3269.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3269.28,3272.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3272.50,3276.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3278.6,3278.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3278.55,3282.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3284.6,3284.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3284.52,3288.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3294.4,3294.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3294.105,3302.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3302.28,3305.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3305.50,3309.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3311.6,3311.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3311.55,3315.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3317.6,3317.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3317.52,3321.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3327.4,3327.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3327.97,3331.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3331.17,3335.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3339.4,3341.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3341.105,3349.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3349.28,3352.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3352.68,3357.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3357.29,3362.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3362.64,3364.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3366.8,3366.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3366.69,3368.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3370.8,3370.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3370.66,3372.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3382.4,3382.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3382.99,3386.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3386.17,3390.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3394.4,3394.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3394.92,3398.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3398.17,3402.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3406.4,3406.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3406.60,3410.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3412.4,3412.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3412.58,3415.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3415.41,3417.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3418.5,3418.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3422.4,3424.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3424.96,3432.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3432.28,3435.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3435.72,3440.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3440.30,3446.125 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3446.125,3454.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3454.32,3457.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3457.59,3462.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3462.34,3465.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3465.71,3467.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3469.12,3469.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3469.76,3471.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3473.12,3473.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3473.73,3475.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3485.8,3485.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3485.125,3493.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3493.32,3496.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3496.59,3501.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3501.34,3504.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3504.71,3506.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3508.12,3508.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3508.76,3510.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3512.12,3512.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3512.73,3514.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3524.8,3526.132 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3526.132,3530.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3530.21,3534.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3538.8,3538.131 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3538.131,3546.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3546.32,3549.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3549.68,3553.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3555.10,3555.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3555.70,3559.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3561.10,3563.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3563.100,3567.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3567.23,3571.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3575.10,3575.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3575.98,3583.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3583.34,3588.112 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3588.112,3592.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3592.25,3596.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3600.12,3600.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3600.96,3608.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3608.36,3611.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3611.72,3616.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3616.38,3620.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3620.92,3625.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3625.40,3630.113 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3630.113,3639.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3641.18,3641.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3641.113,3650.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3652.18,3652.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3652.114,3661.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3667.16,3669.133 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3669.133,3673.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3673.29,3677.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3681.16,3681.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3681.132,3685.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3685.29,3689.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3701.12,3703.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3703.101,3711.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3711.36,3714.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3714.69,3718.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3720.14,3720.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3720.65,3724.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3726.14,3728.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3728.108,3736.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3736.38,3739.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3739.71,3742.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3742.53,3744.18 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3745.17,3745.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3753.14,3753.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3753.107,3757.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3759.14,3759.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3759.105,3763.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3765.14,3765.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3765.65,3770.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3770.38,3773.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3773.103,3778.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3778.40,3781.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3781.111,3783.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3785.18,3785.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3785.100,3787.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3789.18,3789.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3789.106,3791.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3797.16,3797.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3797.93,3801.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3803.16,3805.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3805.123,3813.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3813.40,3816.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3816.77,3820.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3822.18,3822.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3822.66,3826.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3828.18,3828.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3828.72,3832.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3838.16,3838.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3838.119,3846.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3846.40,3849.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3849.66,3853.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3855.18,3855.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3855.61,3859.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3865.16,3865.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3865.119,3873.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3873.40,3876.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3876.61,3880.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3882.18,3882.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3882.66,3886.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3888.18,3888.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3888.66,3892.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3894.18,3894.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3894.73,3898.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3900.18,3900.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3900.65,3904.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3910.16,3910.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3910.121,3918.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3918.40,3921.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3921.62,3925.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3939.12,3939.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3939.103,3943.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3943.25,3947.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3951.12,3953.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3953.95,3962.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3964.12,3964.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3964.100,3968.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3968.25,3972.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3980.10,3980.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3980.68,3983.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3983.47,3985.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3986.11,3986.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3990.10,3990.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3990.71,3993.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3993.47,3995.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:3996.11,3996.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4012.4,4012.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4012.94,4016.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4016.17,4020.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4024.4,4024.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4024.58,4029.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4029.28,4034.102 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4034.102,4042.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4042.30,4045.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4045.52,4049.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4055.6,4055.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4055.97,4063.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4063.30,4066.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4066.52,4070.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4076.6,4076.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4076.110,4084.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4084.30,4087.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4087.60,4091.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4101.4,4103.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4103.101,4111.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4111.28,4114.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4114.63,4119.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4119.30,4125.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4125.119,4133.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4133.32,4136.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4136.55,4139.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4139.47,4141.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4142.11,4142.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4146.10,4146.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4146.56,4149.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4149.56,4151.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4152.11,4152.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4155.10,4155.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4155.57,4160.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4160.34,4163.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4163.75,4168.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4168.35,4175.68 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4175.68,4177.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4179.14,4179.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4179.73,4181.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4183.14,4183.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4183.70,4185.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4187.14,4187.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4187.67,4189.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4195.12,4195.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4195.81,4200.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4200.36,4205.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4205.96,4213.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4213.38,4216.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4216.60,4220.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4226.14,4226.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4226.96,4234.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4234.38,4237.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4237.60,4241.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4251.12,4251.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4251.70,4255.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4261.10,4261.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4261.57,4266.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4266.34,4272.87 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4272.87,4280.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4280.36,4283.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4283.58,4287.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4289.14,4289.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4289.60,4293.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4299.12,4299.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4299.87,4307.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4307.36,4310.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4310.58,4314.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4316.14,4316.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4316.60,4320.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4334.8,4334.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4334.119,4343.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4353.4,4353.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4353.104,4357.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4357.17,4361.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4365.4,4365.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4365.57,4370.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4370.28,4375.100 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4375.100,4383.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4383.30,4386.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4386.59,4390.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4396.6,4396.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4396.95,4404.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4404.30,4407.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4407.60,4411.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4413.8,4413.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4413.59,4417.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4427.4,4429.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4429.110,4437.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4437.28,4440.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4440.72,4445.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4445.29,4450.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4450.64,4452.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4454.8,4454.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4454.69,4456.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4458.8,4458.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4458.66,4460.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4470.4,4470.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4470.100,4478.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4478.28,4481.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4481.62,4486.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4486.29,4491.63 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4491.63,4493.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4495.8,4495.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4495.68,4497.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4499.8,4499.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4499.65,4501.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4511.4,4511.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4511.94,4515.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4515.17,4519.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4523.4,4523.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4523.55,4527.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4529.4,4529.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4529.59,4534.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4534.28,4539.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4539.103,4547.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4547.30,4550.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4550.52,4554.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4560.6,4560.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4560.98,4568.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4568.30,4571.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4571.52,4575.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4581.6,4581.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4581.111,4589.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4589.30,4592.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4592.60,4596.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4606.4,4608.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4608.106,4612.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4612.17,4616.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4620.4,4620.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4620.103,4628.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4628.28,4631.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4631.63,4636.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4636.30,4642.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4642.119,4650.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4650.32,4653.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4653.55,4656.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4656.47,4658.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4659.11,4659.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4663.10,4663.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4663.56,4666.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4666.56,4668.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4669.11,4669.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4672.10,4672.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4672.57,4677.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4677.34,4680.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4680.75,4685.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4685.35,4692.68 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4692.68,4694.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4696.14,4696.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4696.73,4698.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4700.14,4700.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4700.70,4702.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4704.14,4704.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4704.67,4706.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4712.12,4712.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4712.81,4717.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4717.36,4722.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4722.96,4730.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4730.38,4733.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4733.60,4737.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4743.14,4743.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4743.96,4751.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4751.38,4754.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4754.60,4758.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4768.12,4768.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4768.70,4772.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4778.10,4778.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4778.57,4783.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4783.34,4789.87 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4789.87,4797.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4797.36,4800.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4800.58,4804.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4806.14,4806.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4806.60,4810.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4816.12,4816.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4816.87,4824.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4824.36,4827.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4827.58,4831.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4833.14,4833.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4833.60,4837.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4851.8,4851.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4851.119,4860.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4870.4,4870.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4870.58,4875.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4875.28,4880.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4880.101,4888.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4888.30,4891.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4891.59,4895.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4901.6,4901.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4901.96,4909.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4909.30,4912.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4912.60,4916.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4918.8,4918.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4918.59,4922.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4932.4,4932.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4932.72,4937.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4937.28,4942.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4942.128,4950.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4950.30,4955.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4955.81,4959.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4959.21,4963.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4967.8,4967.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4967.84,4971.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4971.21,4975.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4983.6,4983.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4983.128,4987.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4987.19,4991.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:4999.4,5001.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5001.100,5005.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5005.17,5009.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5013.4,5013.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5013.97,5017.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5017.17,5021.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5029.2,5029.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5029.62,5037.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5037.26,5040.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5040.60,5044.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5046.4,5046.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5046.58,5049.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5049.41,5051.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5052.5,5052.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5056.4,5056.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5056.57,5061.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5061.28,5066.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5066.101,5074.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5074.30,5077.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5077.52,5081.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5087.6,5087.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5087.96,5095.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5095.30,5098.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5098.52,5102.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5108.6,5108.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5108.109,5116.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5116.30,5119.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5119.60,5123.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5133.4,5133.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5133.56,5138.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5138.28,5143.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5143.99,5151.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5151.30,5154.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5154.59,5158.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5164.6,5164.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5164.94,5172.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5172.30,5175.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5175.60,5179.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5181.8,5181.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5181.59,5185.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5195.4,5195.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5195.55,5199.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5201.4,5201.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5201.72,5206.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5206.28,5211.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5211.128,5219.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5219.30,5224.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5224.81,5228.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5228.21,5232.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5236.8,5236.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5236.84,5240.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5240.21,5244.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5252.6,5252.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5252.128,5256.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5256.19,5260.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5272.2,5272.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5272.69,5280.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5280.26,5285.94 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5285.94,5293.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5293.28,5296.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5296.50,5300.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5302.6,5302.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5302.55,5306.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5308.6,5308.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5308.52,5312.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5318.4,5318.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5318.97,5322.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5322.17,5326.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5330.4,5332.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5332.105,5340.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5340.28,5343.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5343.68,5348.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5348.29,5353.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5353.64,5355.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5357.8,5357.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5357.69,5359.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5361.8,5361.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5361.66,5363.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5373.4,5373.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5373.99,5377.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5377.17,5381.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5385.4,5385.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5385.92,5389.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5389.17,5393.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5397.4,5397.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5397.60,5401.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5403.4,5403.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5403.58,5406.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5406.41,5408.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5409.5,5409.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5413.4,5415.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5415.96,5423.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5423.28,5426.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5426.72,5431.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5431.30,5437.125 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5437.125,5445.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5445.32,5448.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5448.59,5453.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5453.34,5456.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5456.71,5458.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5460.12,5460.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5460.76,5462.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5464.12,5464.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5464.73,5466.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5476.8,5476.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5476.125,5484.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5484.32,5487.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5487.59,5492.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5492.34,5495.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5495.71,5497.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5499.12,5499.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5499.76,5501.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5503.12,5503.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5503.73,5505.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5515.8,5517.132 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5517.132,5521.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5521.21,5525.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5529.8,5529.131 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5529.131,5537.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5537.32,5540.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5540.68,5544.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5546.10,5546.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5546.70,5550.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5552.10,5554.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5554.100,5558.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5558.23,5562.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5566.10,5566.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5566.98,5574.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5574.34,5579.112 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5579.112,5583.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5583.25,5587.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5591.12,5591.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5591.96,5599.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5599.36,5602.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5602.72,5607.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5607.38,5611.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5611.92,5616.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5616.40,5621.113 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5621.113,5630.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5632.18,5632.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5632.113,5641.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5643.18,5643.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5643.114,5652.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5658.16,5660.133 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5660.133,5664.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5664.29,5668.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5672.16,5672.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5672.132,5676.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5676.29,5680.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5692.12,5694.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5694.101,5702.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5702.36,5705.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5705.69,5709.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5711.14,5711.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5711.65,5715.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5717.14,5719.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5719.108,5727.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5727.38,5730.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5730.71,5733.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5733.53,5735.18 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5736.17,5736.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5744.14,5744.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5744.107,5748.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5750.14,5750.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5750.105,5754.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5756.14,5756.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5756.65,5761.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5761.38,5764.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5764.103,5769.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5769.40,5772.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5772.111,5774.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5776.18,5776.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5776.100,5778.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5780.18,5780.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5780.106,5782.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5788.16,5788.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5788.93,5792.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5794.16,5796.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5796.123,5804.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5804.40,5807.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5807.77,5811.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5813.18,5813.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5813.66,5817.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5819.18,5819.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5819.72,5823.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5829.16,5829.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5829.119,5837.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5837.40,5840.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5840.66,5844.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5846.18,5846.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5846.61,5850.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5856.16,5856.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5856.119,5864.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5864.40,5867.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5867.61,5871.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5873.18,5873.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5873.66,5877.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5879.18,5879.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5879.66,5883.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5885.18,5885.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5885.73,5889.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5891.18,5891.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5891.65,5895.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5901.16,5901.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5901.121,5909.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5909.40,5912.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5912.62,5916.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5930.12,5930.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5930.103,5934.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5934.25,5938.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5942.12,5944.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5944.95,5953.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5955.12,5955.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5955.100,5959.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5959.25,5963.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5971.10,5971.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5971.68,5974.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5974.47,5976.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5977.11,5977.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5981.10,5981.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5981.71,5984.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5984.47,5986.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:5987.11,5987.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6003.4,6003.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6003.94,6007.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6007.17,6011.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6015.4,6017.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6017.85,6025.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6025.28,6028.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6028.50,6032.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6034.6,6034.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6034.55,6038.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6040.6,6040.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6040.52,6044.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6050.4,6050.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6050.88,6054.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6054.17,6058.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6062.4,6064.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6064.110,6072.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6072.28,6075.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6075.72,6080.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6080.29,6085.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6085.64,6087.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6089.8,6089.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6089.69,6091.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6093.8,6093.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6093.66,6095.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6105.4,6105.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6105.100,6113.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6113.28,6116.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6116.62,6121.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6121.29,6126.63 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6126.63,6128.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6130.8,6130.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6130.68,6132.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6134.8,6134.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6134.65,6136.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6146.4,6146.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6146.94,6150.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6150.17,6154.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6158.4,6158.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6158.55,6162.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6164.4,6166.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6166.106,6170.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6170.17,6174.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6178.4,6178.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6178.103,6186.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6186.28,6189.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6189.63,6194.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6194.30,6200.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6200.119,6208.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6208.32,6211.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6211.55,6214.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6214.47,6216.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6217.11,6217.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6221.10,6221.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6221.56,6224.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6224.56,6226.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6227.11,6227.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6230.10,6230.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6230.57,6235.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6235.34,6238.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6238.75,6243.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6243.35,6250.68 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6250.68,6252.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6254.14,6254.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6254.73,6256.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6258.14,6258.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6258.70,6260.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6262.14,6262.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6262.67,6264.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6270.12,6270.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6270.81,6275.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6275.36,6280.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6280.96,6288.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6288.38,6291.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6291.60,6295.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6301.14,6301.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6301.96,6309.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6309.38,6312.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6312.60,6316.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6326.12,6326.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6326.70,6330.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6336.10,6336.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6336.57,6341.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6341.34,6347.87 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6347.87,6355.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6355.36,6358.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6358.58,6362.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6364.14,6364.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6364.60,6368.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6374.12,6374.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6374.87,6382.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6382.36,6385.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6385.58,6389.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6391.14,6391.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6391.60,6395.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6409.8,6409.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6409.119,6418.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6428.4,6428.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6428.62,6433.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6433.28,6438.105 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6438.105,6446.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6446.30,6449.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6449.52,6453.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6459.6,6459.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6459.100,6467.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6467.30,6470.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6470.52,6474.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6480.6,6480.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6480.113,6488.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6488.30,6491.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6491.60,6495.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6505.4,6505.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6505.61,6510.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6510.28,6515.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6515.103,6523.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6523.30,6526.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6526.59,6530.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6536.6,6536.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6536.98,6544.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6544.30,6547.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6547.60,6551.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6553.8,6553.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6553.59,6557.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6567.4,6569.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6569.100,6573.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6573.17,6577.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6581.4,6581.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6581.97,6585.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6585.17,6589.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6593.4,6595.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6595.91,6599.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6599.17,6603.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6607.4,6607.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6607.94,6615.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6615.28,6618.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6618.61,6623.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6623.30,6627.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6627.90,6629.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6631.8,6631.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6631.87,6633.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6648.2,6648.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6648.54,6653.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6656.2,6656.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6656.49,6661.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6661.26,6666.108 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6666.108,6670.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6670.17,6674.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6678.4,6678.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6678.115,6687.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6693.2,6696.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6696.16,6698.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6699.2,6701.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6704.85,6710.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6710.16,6711.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6711.55,6715.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6716.3,6716.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6718.2,6718.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6721.106,6737.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6740.87,6749.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6749.58,6753.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6753.48,6756.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6757.3,6757.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6760.2,6760.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6760.58,6763.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6765.2,6765.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6765.54,6768.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6770.2,6770.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6770.53,6774.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6774.48,6777.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6778.3,6778.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6781.2,6781.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6781.51,6784.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6786.2,6786.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6786.56,6789.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6791.2,6791.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6791.54,6796.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6798.2,6800.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6800.83,6804.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6804.15,6808.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6812.2,6812.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6812.81,6820.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6820.26,6823.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6823.58,6828.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6828.28,6834.113 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6834.113,6838.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6838.19,6842.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6846.6,6846.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6846.113,6850.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6850.19,6854.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6858.6,6858.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6858.128,6862.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6862.19,6866.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6870.6,6870.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6870.78,6874.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6884.2,6884.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6884.89,6888.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6888.15,6892.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6896.2,6896.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6896.58,6901.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6901.26,6904.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6904.70,6906.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6908.4,6908.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6908.71,6910.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6916.2,6918.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6918.71,6926.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6926.26,6929.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6929.48,6933.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6935.4,6935.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6935.53,6939.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6941.4,6941.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6941.50,6945.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6951.2,6953.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6953.74,6961.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6961.26,6964.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6964.48,6968.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6970.4,6970.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6970.53,6974.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6976.4,6976.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6976.50,6980.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6986.2,6986.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6986.85,6990.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6990.15,6994.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6998.2,6998.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:6998.73,7003.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7003.26,7008.152 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7008.152,7012.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7012.17,7016.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7020.4,7020.148 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7020.148,7024.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7024.17,7028.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7036.2,7038.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7038.93,7042.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7042.15,7046.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7050.2,7050.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7050.89,7058.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7058.26,7061.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7061.54,7066.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7066.28,7069.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7069.66,7071.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7073.6,7073.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7073.71,7075.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7077.6,7077.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7077.68,7079.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7085.4,7087.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7087.78,7091.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7091.17,7095.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7099.4,7099.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7099.79,7103.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7103.17,7107.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7115.2,7117.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7117.69,7125.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7125.26,7130.104 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7130.104,7138.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7138.28,7141.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7141.50,7145.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7147.6,7147.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7147.55,7151.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7153.6,7153.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7153.52,7157.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7163.4,7163.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7163.105,7171.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7171.28,7174.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7174.50,7178.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7180.6,7180.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7180.55,7184.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7186.6,7186.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7186.52,7190.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7196.4,7196.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7196.97,7200.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7200.17,7204.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7208.4,7210.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7210.105,7218.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7218.28,7221.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7221.68,7226.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7226.29,7231.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7231.64,7233.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7235.8,7235.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7235.69,7237.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7239.8,7239.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7239.66,7241.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7251.4,7251.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7251.99,7255.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7255.17,7259.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7263.4,7263.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7263.92,7267.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7267.17,7271.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7275.4,7277.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7277.96,7285.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7285.28,7288.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7288.72,7293.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7293.30,7299.125 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7299.125,7307.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7307.32,7310.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7310.59,7315.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7315.34,7318.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7318.71,7320.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7322.12,7322.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7322.76,7324.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7326.12,7326.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7326.73,7328.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7338.8,7338.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7338.125,7346.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7346.32,7349.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7349.59,7354.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7354.34,7357.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7357.71,7359.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7361.12,7361.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7361.76,7363.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7365.12,7365.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7365.73,7367.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7377.8,7379.132 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7379.132,7383.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7383.21,7387.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7391.8,7391.131 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7391.131,7399.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7399.32,7402.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7402.68,7406.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7408.10,7408.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7408.70,7412.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7414.10,7416.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7416.100,7420.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7420.23,7424.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7428.10,7428.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7428.98,7436.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7436.34,7441.112 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7441.112,7445.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7445.25,7449.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7453.12,7453.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7453.96,7461.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7461.36,7464.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7464.72,7469.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7469.38,7473.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7473.92,7478.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7478.40,7483.113 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7483.113,7492.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7494.18,7494.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7494.113,7503.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7505.18,7505.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7505.114,7514.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7520.16,7522.133 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7522.133,7526.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7526.29,7530.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7534.16,7534.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7534.132,7538.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7538.29,7542.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7554.12,7556.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7556.101,7564.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7564.36,7567.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7567.69,7571.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7573.14,7573.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7573.65,7577.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7579.14,7581.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7581.108,7589.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7589.38,7592.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7592.71,7595.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7595.53,7597.18 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7598.17,7598.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7606.14,7606.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7606.107,7610.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7612.14,7612.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7612.105,7616.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7618.14,7618.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7618.65,7623.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7623.38,7626.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7626.103,7631.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7631.40,7634.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7634.111,7636.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7638.18,7638.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7638.100,7640.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7642.18,7642.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7642.106,7644.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7650.16,7650.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7650.93,7654.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7656.16,7658.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7658.123,7666.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7666.40,7669.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7669.77,7673.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7675.18,7675.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7675.66,7679.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7681.18,7681.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7681.72,7685.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7691.16,7691.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7691.119,7699.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7699.40,7702.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7702.66,7706.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7708.18,7708.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7708.61,7712.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7718.16,7718.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7718.119,7726.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7726.40,7729.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7729.61,7733.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7735.18,7735.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7735.66,7739.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7741.18,7741.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7741.66,7745.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7747.18,7747.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7747.73,7751.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7753.18,7753.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7753.65,7757.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7763.16,7763.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7763.121,7771.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7771.40,7774.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7774.62,7778.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7792.12,7792.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7792.103,7796.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7796.25,7800.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7804.12,7806.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7806.95,7815.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7817.12,7817.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7817.100,7821.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7821.25,7825.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7833.10,7833.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7833.68,7836.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7836.47,7838.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7839.11,7839.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7843.10,7843.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7843.71,7846.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7846.47,7848.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7849.11,7849.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7865.4,7865.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7865.94,7869.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7869.17,7873.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7877.4,7879.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7879.101,7887.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7887.28,7890.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7890.63,7895.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7895.30,7901.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7901.119,7909.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7909.32,7912.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7912.55,7915.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7915.47,7917.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7918.11,7918.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7922.10,7922.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7922.56,7925.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7925.56,7927.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7928.11,7928.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7931.10,7931.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7931.57,7936.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7936.34,7939.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7939.75,7944.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7944.35,7951.68 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7951.68,7953.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7955.14,7955.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7955.73,7957.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7959.14,7959.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7959.70,7961.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7963.14,7963.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7963.67,7965.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7971.12,7971.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7971.81,7976.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7976.36,7981.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7981.96,7989.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7989.38,7992.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:7992.60,7996.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8002.14,8002.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8002.96,8010.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8010.38,8013.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8013.60,8017.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8027.12,8027.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8027.70,8031.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8037.10,8037.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8037.57,8042.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8042.34,8048.87 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8048.87,8056.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8056.36,8059.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8059.58,8063.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8065.14,8065.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8065.60,8069.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8075.12,8075.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8075.87,8083.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8083.36,8086.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8086.58,8090.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8092.14,8092.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8092.60,8096.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8110.8,8110.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8110.119,8119.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8129.4,8129.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8129.104,8133.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8133.17,8137.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8141.4,8143.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8143.110,8151.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8151.28,8154.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8154.72,8159.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8159.29,8164.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8164.64,8166.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8168.8,8168.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8168.69,8170.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8172.8,8172.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8172.66,8174.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8184.4,8184.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8184.100,8192.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8192.28,8195.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8195.62,8200.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8200.29,8205.63 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8205.63,8207.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8209.8,8209.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8209.68,8211.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8213.8,8213.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8213.65,8215.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8225.4,8225.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8225.94,8229.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8229.17,8233.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8237.4,8239.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8239.106,8243.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8243.17,8247.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8251.4,8251.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8251.103,8259.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8259.28,8262.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8262.63,8267.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8267.30,8273.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8273.119,8281.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8281.32,8284.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8284.55,8287.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8287.47,8289.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8290.11,8290.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8294.10,8294.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8294.56,8297.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8297.56,8299.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8300.11,8300.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8303.10,8303.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8303.57,8308.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8308.34,8311.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8311.75,8316.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8316.35,8323.68 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8323.68,8325.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8327.14,8327.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8327.73,8329.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8331.14,8331.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8331.70,8333.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8335.14,8335.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8335.67,8337.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8343.12,8343.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8343.81,8348.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8348.36,8353.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8353.96,8361.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8361.38,8364.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8364.60,8368.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8374.14,8374.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8374.96,8382.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8382.38,8385.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8385.60,8389.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8399.12,8399.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8399.70,8403.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8409.10,8409.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8409.57,8414.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8414.34,8420.87 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8420.87,8428.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8428.36,8431.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8431.58,8435.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8437.14,8437.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8437.60,8441.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8447.12,8447.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8447.87,8455.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8455.36,8458.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8458.58,8462.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8464.14,8464.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8464.60,8468.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8482.8,8482.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8482.119,8491.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8501.4,8501.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8501.72,8506.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8506.28,8511.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8511.128,8519.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8519.30,8524.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8524.81,8528.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8528.21,8532.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8536.8,8536.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8536.84,8540.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8540.21,8544.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8552.6,8552.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8552.128,8556.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8556.19,8560.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8568.4,8570.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8570.100,8574.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8574.17,8578.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8582.4,8582.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8582.97,8586.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8586.17,8590.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8598.2,8598.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8598.62,8606.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8606.26,8609.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8609.72,8614.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8614.28,8619.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8619.128,8627.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8627.30,8632.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8632.81,8636.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8636.21,8640.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8644.8,8644.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8644.84,8648.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8648.21,8652.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8660.6,8660.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8660.128,8664.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8664.19,8668.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8680.2,8680.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8680.69,8688.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8688.26,8693.94 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8693.94,8701.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8701.28,8704.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8704.50,8708.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8710.6,8710.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8710.55,8714.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8716.6,8716.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8716.52,8720.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8726.4,8726.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8726.97,8730.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8730.17,8734.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8738.4,8740.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8740.105,8748.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8748.28,8751.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8751.68,8756.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8756.29,8761.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8761.64,8763.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8765.8,8765.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8765.69,8767.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8769.8,8769.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8769.66,8771.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8781.4,8781.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8781.99,8785.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8785.17,8789.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8793.4,8793.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8793.92,8797.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8797.17,8801.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8805.4,8807.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8807.96,8815.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8815.28,8818.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8818.72,8823.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8823.30,8829.125 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8829.125,8837.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8837.32,8840.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8840.59,8845.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8845.34,8848.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8848.71,8850.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8852.12,8852.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8852.76,8854.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8856.12,8856.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8856.73,8858.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8868.8,8868.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8868.125,8876.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8876.32,8879.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8879.59,8884.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8884.34,8887.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8887.71,8889.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8891.12,8891.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8891.76,8893.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8895.12,8895.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8895.73,8897.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8907.8,8909.132 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8909.132,8913.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8913.21,8917.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8921.8,8921.131 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8921.131,8929.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8929.32,8932.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8932.68,8936.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8938.10,8938.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8938.70,8942.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8944.10,8946.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8946.100,8950.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8950.23,8954.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8958.10,8958.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8958.98,8966.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8966.34,8971.112 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8971.112,8975.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8975.25,8979.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8983.12,8983.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8983.96,8991.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8991.36,8994.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8994.72,8999.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:8999.38,9003.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9003.92,9008.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9008.40,9013.113 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9013.113,9022.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9024.18,9024.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9024.113,9033.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9035.18,9035.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9035.114,9044.19 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9050.16,9052.133 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9052.133,9056.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9056.29,9060.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9064.16,9064.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9064.132,9068.29 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9068.29,9072.18 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9084.12,9086.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9086.101,9094.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9094.36,9097.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9097.69,9101.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9103.14,9103.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9103.65,9107.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9109.14,9111.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9111.108,9119.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9119.38,9122.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9122.71,9125.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9125.53,9127.18 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9128.17,9128.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9136.14,9136.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9136.107,9140.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9142.14,9142.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9142.105,9146.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9148.14,9148.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9148.65,9153.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9153.38,9156.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9156.103,9161.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9161.40,9164.111 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9164.111,9166.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9168.18,9168.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9168.100,9170.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9172.18,9172.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9172.106,9174.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9180.16,9180.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9180.93,9184.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9186.16,9188.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9188.123,9196.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9196.40,9199.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9199.77,9203.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9205.18,9205.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9205.66,9209.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9211.18,9211.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9211.72,9215.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9221.16,9221.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9221.119,9229.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9229.40,9232.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9232.66,9236.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9238.18,9238.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9238.61,9242.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9248.16,9248.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9248.119,9256.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9256.40,9259.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9259.61,9263.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9265.18,9265.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9265.66,9269.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9271.18,9271.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9271.66,9275.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9277.18,9277.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9277.73,9281.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9283.18,9283.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9283.65,9287.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9293.16,9293.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9293.121,9301.40 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9301.40,9304.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9304.62,9308.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9322.12,9322.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9322.103,9326.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9326.25,9330.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9334.12,9336.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9336.95,9345.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9347.12,9347.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9347.100,9351.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9351.25,9355.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9363.10,9363.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9363.68,9366.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9366.47,9368.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9369.11,9369.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9373.10,9373.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9373.71,9376.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9376.47,9378.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9379.11,9379.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9395.4,9395.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9395.94,9399.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9399.17,9403.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9407.4,9409.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9409.110,9417.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9417.28,9420.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9420.72,9425.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9425.29,9430.64 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9430.64,9432.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9434.8,9434.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9434.69,9436.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9438.8,9438.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9438.66,9440.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9450.4,9450.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9450.100,9458.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9458.28,9461.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9461.62,9466.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9466.29,9471.63 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9471.63,9473.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9475.8,9475.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9475.68,9477.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9479.8,9479.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9479.65,9481.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9491.4,9491.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9491.94,9495.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9495.17,9499.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9503.4,9505.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9505.106,9509.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9509.17,9513.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9517.4,9517.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9517.103,9525.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9525.28,9528.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9528.63,9533.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9533.30,9539.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9539.119,9547.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9547.32,9550.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9550.55,9553.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9553.47,9555.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9556.11,9556.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9560.10,9560.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9560.56,9563.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9563.56,9565.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9566.11,9566.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9569.10,9569.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9569.57,9574.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9574.34,9577.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9577.75,9582.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9582.35,9589.68 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9589.68,9591.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9593.14,9593.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9593.73,9595.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9597.14,9597.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9597.70,9599.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9601.14,9601.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9601.67,9603.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9609.12,9609.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9609.81,9614.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9614.36,9619.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9619.96,9627.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9627.38,9630.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9630.60,9634.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9640.14,9640.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9640.96,9648.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9648.38,9651.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9651.60,9655.17 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9665.12,9665.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9665.70,9669.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9675.10,9675.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9675.57,9680.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9680.34,9686.87 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9686.87,9694.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9694.36,9697.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9697.58,9701.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9703.14,9703.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9703.60,9707.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9713.12,9713.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9713.87,9721.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9721.36,9724.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9724.58,9728.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9730.14,9730.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9730.60,9734.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9748.8,9748.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9748.119,9757.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9767.4,9769.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9769.100,9773.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9773.17,9777.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9781.4,9781.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9781.97,9785.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9785.17,9789.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9797.2,9800.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9800.16,9802.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9804.2,9804.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9807.87,9813.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9813.16,9814.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9814.55,9818.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9819.3,9819.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_gcp_vpc_site.go:9822.2,9823.112 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:23.59,3642.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3645.94,3655.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3655.58,3659.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3659.48,3662.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3663.3,3663.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3666.2,3666.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3666.58,3669.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3671.2,3671.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3671.54,3674.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3676.2,3676.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3676.53,3680.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3680.48,3683.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3684.3,3684.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3687.2,3687.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3687.51,3690.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3692.2,3692.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3692.56,3695.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3699.2,3701.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3701.62,3705.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3705.15,3709.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3713.2,3713.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3713.66,3717.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3717.15,3721.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3725.2,3725.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3725.63,3733.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3733.26,3736.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3736.54,3739.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3739.41,3741.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3742.5,3742.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3750.2,3750.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3750.65,3754.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3754.15,3758.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3764.2,3766.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3766.61,3770.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3770.15,3774.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3778.2,3778.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3778.63,3782.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3782.15,3786.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3790.2,3790.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3790.66,3794.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3794.15,3798.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3804.2,3806.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3806.76,3814.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3814.26,3817.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3817.52,3823.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3823.28,3825.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3825.63,3827.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3828.6,3828.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3828.68,3830.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3832.6,3832.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3832.65,3834.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3839.4,3839.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3839.54,3843.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3845.4,3845.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3845.49,3850.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3850.28,3855.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3855.91,3864.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3866.6,3866.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3866.100,3870.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3870.19,3874.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3878.6,3880.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3880.93,3889.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3891.6,3891.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3891.102,3895.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3895.19,3899.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3903.6,3905.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3905.99,3914.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3916.6,3916.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3916.107,3920.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3920.19,3924.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3932.4,3932.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3932.55,3937.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3937.28,3942.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3942.111,3946.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3946.19,3950.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3954.6,3954.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3954.111,3958.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3958.19,3962.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3970.4,3970.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3970.54,3974.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3976.4,3976.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3976.55,3980.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3986.2,3986.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3986.77,3994.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3994.26,3997.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:3997.61,4002.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4002.28,4005.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4005.99,4010.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4010.30,4013.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4013.101,4015.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4017.8,4017.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4017.90,4019.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4021.8,4021.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4021.96,4023.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4029.6,4029.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4029.89,4033.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4035.6,4037.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4037.119,4045.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4045.30,4048.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4048.67,4052.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4054.8,4054.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4054.56,4058.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4060.8,4060.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4060.62,4064.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4070.6,4070.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4070.115,4078.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4078.30,4081.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4081.56,4085.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4087.8,4087.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4087.51,4091.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4097.6,4097.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4097.115,4105.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4105.30,4108.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4108.51,4112.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4114.8,4114.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4114.56,4118.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4120.8,4120.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4120.56,4124.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4126.8,4126.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4126.63,4130.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4132.8,4132.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4132.55,4136.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4142.6,4142.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4142.117,4150.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4150.30,4153.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4153.52,4157.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4167.4,4167.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4167.52,4171.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4173.4,4173.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4173.53,4177.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4183.2,4183.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4183.66,4191.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4191.26,4194.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4194.49,4199.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4199.28,4204.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4204.91,4213.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4215.6,4215.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4215.100,4219.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4219.19,4223.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4227.6,4229.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4229.93,4238.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4240.6,4240.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4240.102,4244.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4244.19,4248.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4252.6,4254.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4254.99,4263.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4265.6,4265.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4265.107,4269.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4269.19,4273.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4281.4,4281.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4281.55,4286.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4286.28,4291.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4291.111,4295.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4295.19,4299.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4303.6,4303.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4303.111,4307.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4307.19,4311.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4319.4,4319.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4319.61,4324.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4324.28,4327.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4327.99,4332.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4332.30,4335.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4335.101,4337.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4339.8,4339.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4339.90,4341.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4343.8,4343.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4343.96,4345.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4351.6,4351.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4351.89,4355.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4357.6,4359.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4359.119,4367.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4367.30,4370.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4370.67,4374.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4376.8,4376.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4376.56,4380.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4382.8,4382.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4382.62,4386.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4392.6,4392.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4392.115,4400.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4400.30,4403.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4403.56,4407.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4409.8,4409.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4409.51,4413.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4419.6,4419.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4419.115,4427.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4427.30,4430.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4430.51,4434.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4436.8,4436.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4436.56,4440.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4442.8,4442.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4442.56,4446.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4448.8,4448.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4448.63,4452.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4454.8,4454.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4454.55,4458.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4464.6,4464.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4464.117,4472.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4472.30,4475.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4475.52,4479.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4489.4,4489.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4489.58,4493.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4499.2,4499.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4499.68,4507.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4507.26,4510.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4510.49,4515.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4515.28,4520.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4520.91,4529.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4531.6,4531.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4531.100,4535.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4535.19,4539.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4543.6,4545.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4545.93,4554.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4556.6,4556.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4556.102,4560.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4560.19,4564.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4568.6,4570.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4570.99,4579.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4581.6,4581.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4581.107,4585.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4585.19,4589.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4597.4,4597.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4597.55,4602.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4602.28,4607.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4607.111,4611.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4611.19,4615.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4619.6,4619.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4619.111,4623.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4623.19,4627.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4635.4,4635.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4635.59,4640.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4640.28,4643.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4643.96,4648.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4648.30,4651.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4651.101,4653.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4655.8,4655.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4655.90,4657.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4659.8,4659.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4659.96,4661.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4667.6,4667.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4667.86,4671.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4673.6,4675.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4675.116,4683.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4683.30,4686.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4686.67,4690.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4692.8,4692.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4692.56,4696.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4698.8,4698.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4698.62,4702.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4708.6,4708.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4708.112,4716.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4716.30,4719.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4719.56,4723.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4725.8,4725.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4725.51,4729.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4735.6,4735.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4735.112,4743.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4743.30,4746.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4746.51,4750.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4752.8,4752.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4752.56,4756.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4758.8,4758.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4758.56,4762.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4764.8,4764.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4764.63,4768.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4770.8,4770.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4770.55,4774.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4780.6,4780.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4780.114,4788.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4788.30,4791.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4791.52,4795.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4805.4,4807.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4807.80,4816.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4818.4,4818.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4818.76,4827.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4829.4,4831.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4831.73,4835.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4835.17,4839.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4843.4,4843.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4843.74,4851.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4851.28,4856.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4856.73,4860.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4860.19,4864.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4868.6,4868.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4868.82,4877.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4879.6,4881.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4881.83,4885.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4885.19,4889.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4893.6,4893.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4893.81,4901.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4901.30,4904.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4904.59,4908.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4910.8,4910.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4910.55,4915.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4915.32,4918.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4918.93,4923.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4923.34,4926.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4926.105,4928.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4930.12,4930.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4930.94,4932.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4934.12,4934.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4934.100,4936.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4942.10,4942.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4942.83,4946.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4948.10,4950.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4950.113,4958.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4958.34,4961.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4961.71,4965.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4967.12,4967.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4967.60,4971.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4973.12,4973.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4973.66,4977.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4983.10,4983.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4983.109,4991.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4991.34,4994.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:4994.60,4998.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5000.12,5000.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5000.55,5004.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5010.10,5010.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5010.109,5018.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5018.34,5021.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5021.55,5025.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5027.12,5027.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5027.60,5031.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5033.12,5033.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5033.60,5037.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5039.12,5039.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5039.67,5043.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5045.12,5045.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5045.59,5049.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5055.10,5055.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5055.111,5063.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5063.34,5066.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5066.56,5070.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5084.6,5086.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5086.103,5090.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5090.19,5094.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5098.6,5098.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5098.102,5102.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5102.19,5106.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5110.6,5112.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5112.97,5116.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5116.19,5120.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5124.6,5124.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5124.96,5128.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5128.19,5132.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5144.2,5144.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5144.68,5152.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5152.26,5157.76 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5157.76,5165.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5165.28,5168.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5168.50,5172.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5174.6,5174.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5174.55,5178.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5180.6,5180.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5180.52,5184.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5190.4,5190.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5190.78,5198.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5198.28,5201.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5201.54,5206.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5206.30,5209.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5209.93,5214.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5214.32,5217.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5217.103,5219.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5221.10,5221.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5221.92,5223.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5225.10,5225.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5225.98,5227.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5233.8,5233.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5233.83,5237.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5239.8,5241.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5241.113,5249.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5249.32,5252.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5252.69,5256.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5258.10,5258.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5258.58,5262.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5264.10,5264.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5264.64,5268.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5274.8,5274.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5274.109,5282.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5282.32,5285.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5285.58,5289.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5291.10,5291.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5291.53,5295.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5301.8,5301.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5301.109,5309.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5309.32,5312.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5312.53,5316.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5318.10,5318.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5318.58,5322.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5324.10,5324.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5324.58,5328.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5330.10,5330.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5330.65,5334.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5336.10,5336.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5336.57,5340.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5346.8,5346.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5346.111,5354.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5354.32,5357.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5357.54,5361.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5371.6,5371.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5371.55,5375.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5381.4,5381.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5381.77,5385.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5385.17,5389.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5393.4,5393.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5393.49,5398.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5398.28,5403.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5403.91,5412.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5414.6,5414.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5414.100,5418.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5418.19,5422.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5426.6,5428.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5428.93,5437.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5439.6,5439.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5439.102,5443.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5443.19,5447.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5451.6,5453.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5453.99,5462.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5464.6,5464.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5464.107,5468.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5468.19,5472.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5480.4,5480.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5480.55,5485.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5485.28,5490.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5490.111,5494.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5494.19,5498.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5502.6,5502.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5502.111,5506.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5506.19,5510.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5518.4,5518.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5518.52,5522.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5524.4,5526.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5526.73,5530.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5530.17,5534.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5538.4,5538.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5538.74,5546.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5546.28,5551.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5551.73,5555.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5555.19,5559.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5563.6,5563.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5563.82,5572.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5574.6,5576.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5576.83,5580.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5580.19,5584.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5588.6,5588.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5588.81,5596.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5596.30,5599.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5599.59,5603.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5605.8,5605.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5605.55,5610.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5610.32,5613.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5613.93,5618.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5618.34,5621.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5621.105,5623.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5625.12,5625.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5625.94,5627.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5629.12,5629.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5629.100,5631.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5637.10,5637.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5637.83,5641.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5643.10,5645.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5645.113,5653.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5653.34,5656.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5656.71,5660.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5662.12,5662.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5662.60,5666.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5668.12,5668.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5668.66,5672.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5678.10,5678.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5678.109,5686.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5686.34,5689.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5689.60,5693.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5695.12,5695.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5695.55,5699.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5705.10,5705.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5705.109,5713.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5713.34,5716.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5716.55,5720.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5722.12,5722.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5722.60,5726.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5728.12,5728.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5728.60,5732.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5734.12,5734.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5734.67,5738.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5740.12,5740.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5740.59,5744.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5750.10,5750.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5750.111,5758.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5758.34,5761.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5761.56,5765.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5779.6,5781.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5781.103,5785.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5785.19,5789.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5793.6,5793.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5793.102,5797.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5797.19,5801.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5805.6,5807.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5807.97,5811.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5811.19,5815.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5819.6,5819.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5819.96,5823.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5823.19,5827.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5839.2,5839.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5839.71,5847.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5847.26,5850.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5850.49,5855.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5855.28,5860.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5860.91,5869.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5871.6,5871.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5871.100,5875.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5875.19,5879.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5883.6,5885.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5885.93,5894.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5896.6,5896.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5896.102,5900.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5900.19,5904.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5908.6,5910.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5910.99,5919.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5921.6,5921.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5921.107,5925.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5925.19,5929.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5937.4,5937.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5937.50,5941.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5943.4,5943.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5943.55,5948.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5948.28,5953.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5953.111,5957.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5957.19,5961.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5965.6,5965.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5965.111,5969.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5969.19,5973.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5981.4,5981.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5981.52,5987.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5987.28,5989.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5989.63,5991.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5992.6,5992.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5992.68,5994.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5996.6,5996.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:5996.65,5998.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6007.2,6007.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6007.65,6015.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6015.26,6020.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6020.78,6028.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6028.28,6031.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6031.54,6036.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6036.30,6039.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6039.93,6044.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6044.32,6047.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6047.103,6049.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6051.10,6051.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6051.92,6053.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6055.10,6055.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6055.98,6057.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6063.8,6063.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6063.83,6067.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6069.8,6071.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6071.113,6079.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6079.32,6082.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6082.69,6086.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6088.10,6088.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6088.58,6092.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6094.10,6094.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6094.64,6098.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6104.8,6104.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6104.109,6112.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6112.32,6115.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6115.58,6119.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6121.10,6121.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6121.53,6125.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6131.8,6131.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6131.109,6139.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6139.32,6142.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6142.53,6146.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6148.10,6148.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6148.58,6152.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6154.10,6154.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6154.58,6158.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6160.10,6160.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6160.65,6164.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6166.10,6166.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6166.57,6170.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6176.8,6176.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6176.111,6184.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6184.32,6187.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6187.54,6191.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6201.6,6201.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6201.55,6205.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6211.4,6211.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6211.77,6215.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6215.17,6219.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6223.4,6223.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6223.78,6231.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6231.28,6234.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6234.51,6239.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6239.30,6242.90 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6242.90,6247.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6247.32,6250.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6250.103,6252.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6254.10,6254.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6254.92,6256.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6258.10,6258.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6258.98,6260.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6266.8,6266.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6266.80,6270.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6272.8,6274.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6274.110,6282.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6282.32,6285.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6285.69,6289.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6291.10,6291.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6291.58,6295.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6297.10,6297.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6297.64,6301.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6307.8,6307.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6307.106,6315.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6315.32,6318.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6318.58,6322.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6324.10,6324.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6324.53,6328.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6334.8,6334.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6334.106,6342.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6342.32,6345.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6345.53,6349.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6351.10,6351.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6351.58,6355.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6357.10,6357.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6357.58,6361.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6363.10,6363.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6363.65,6367.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6369.10,6369.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6369.57,6373.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6379.8,6379.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6379.108,6387.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6387.32,6390.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6390.54,6394.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6408.4,6408.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6408.49,6413.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6413.28,6418.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6418.91,6427.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6429.6,6429.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6429.100,6433.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6433.19,6437.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6441.6,6443.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6443.93,6452.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6454.6,6454.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6454.102,6458.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6458.19,6462.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6466.6,6468.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6468.99,6477.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6479.6,6479.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6479.107,6483.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6483.19,6487.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6495.4,6495.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6495.55,6500.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6500.28,6505.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6505.111,6509.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6509.19,6513.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6517.6,6517.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6517.111,6521.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6521.19,6525.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6533.4,6535.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6535.73,6539.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6539.17,6543.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6547.4,6547.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6547.74,6555.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6555.28,6560.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6560.73,6564.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6564.19,6568.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6572.6,6572.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6572.82,6581.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6583.6,6585.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6585.83,6589.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6589.19,6593.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6597.6,6597.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6597.81,6605.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6605.30,6608.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6608.59,6612.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6614.8,6614.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6614.55,6619.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6619.32,6622.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6622.93,6627.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6627.34,6630.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6630.105,6632.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6634.12,6634.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6634.94,6636.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6638.12,6638.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6638.100,6640.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6646.10,6646.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6646.83,6650.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6652.10,6654.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6654.113,6662.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6662.34,6665.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6665.71,6669.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6671.12,6671.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6671.60,6675.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6677.12,6677.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6677.66,6681.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6687.10,6687.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6687.109,6695.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6695.34,6698.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6698.60,6702.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6704.12,6704.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6704.55,6708.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6714.10,6714.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6714.109,6722.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6722.34,6725.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6725.55,6729.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6731.12,6731.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6731.60,6735.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6737.12,6737.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6737.60,6741.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6743.12,6743.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6743.67,6747.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6749.12,6749.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6749.59,6753.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6759.10,6759.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6759.111,6767.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6767.34,6770.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6770.56,6774.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6788.6,6790.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6790.103,6794.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6794.19,6798.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6802.6,6802.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6802.102,6806.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6806.19,6810.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6814.6,6816.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6816.97,6820.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6820.19,6824.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6828.6,6828.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6828.96,6832.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6832.19,6836.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6844.4,6844.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6844.47,6848.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6854.2,6854.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6854.66,6862.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6862.26,6865.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6865.49,6870.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6870.28,6875.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6875.91,6884.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6886.6,6886.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6886.100,6890.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6890.19,6894.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6898.6,6900.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6900.93,6909.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6911.6,6911.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6911.102,6915.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6915.19,6919.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6923.6,6925.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6925.99,6934.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6936.6,6936.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6936.107,6940.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6940.19,6944.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6952.4,6952.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6952.61,6955.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6955.41,6957.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6958.5,6958.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6962.4,6962.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6962.55,6967.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6967.28,6972.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6972.111,6976.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6976.19,6980.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6984.6,6984.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6984.111,6988.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:6988.19,6992.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7000.4,7000.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7000.55,7004.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7006.4,7008.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7008.73,7012.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7012.17,7016.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7020.4,7020.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7020.74,7028.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7028.28,7033.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7033.73,7037.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7037.19,7041.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7045.6,7045.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7045.82,7054.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7056.6,7058.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7058.83,7062.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7062.19,7066.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7070.6,7070.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7070.81,7078.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7078.30,7081.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7081.59,7085.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7087.8,7087.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7087.55,7092.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7092.32,7095.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7095.93,7100.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7100.34,7103.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7103.105,7105.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7107.12,7107.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7107.94,7109.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7111.12,7111.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7111.100,7113.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7119.10,7119.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7119.83,7123.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7125.10,7127.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7127.113,7135.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7135.34,7138.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7138.71,7142.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7144.12,7144.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7144.60,7148.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7150.12,7150.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7150.66,7154.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7160.10,7160.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7160.109,7168.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7168.34,7171.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7171.60,7175.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7177.12,7177.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7177.55,7181.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7187.10,7187.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7187.109,7195.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7195.34,7198.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7198.55,7202.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7204.12,7204.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7204.60,7208.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7210.12,7210.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7210.60,7214.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7216.12,7216.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7216.67,7220.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7222.12,7222.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7222.59,7226.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7232.10,7232.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7232.111,7240.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7240.34,7243.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7243.56,7247.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7261.6,7263.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7263.103,7267.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7267.19,7271.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7275.6,7275.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7275.102,7279.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7279.19,7283.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7287.6,7289.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7289.97,7293.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7293.19,7297.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7301.6,7301.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7301.96,7305.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7305.19,7309.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7321.2,7321.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7321.70,7329.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7329.26,7332.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7332.51,7337.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7337.28,7340.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7340.89,7345.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7345.30,7348.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7348.101,7350.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7352.8,7352.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7352.90,7354.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7356.8,7356.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7356.96,7358.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7364.6,7364.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7364.79,7368.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7370.6,7372.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7372.109,7380.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7380.30,7383.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7383.67,7387.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7389.8,7389.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7389.56,7393.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7395.8,7395.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7395.62,7399.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7405.6,7405.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7405.105,7413.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7413.30,7416.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7416.56,7420.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7422.8,7422.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7422.51,7426.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7432.6,7432.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7432.105,7440.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7440.30,7443.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7443.51,7447.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7449.8,7449.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7449.56,7453.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7455.8,7455.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7455.56,7459.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7461.8,7461.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7461.63,7465.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7467.8,7467.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7467.55,7471.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7477.6,7477.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7477.107,7485.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7485.30,7488.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7488.52,7492.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7502.4,7504.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7504.74,7508.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7508.17,7512.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7516.4,7516.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7516.74,7520.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7520.17,7524.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7532.2,7532.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7532.67,7540.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7540.26,7543.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7543.49,7548.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7548.28,7553.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7553.91,7562.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7564.6,7564.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7564.100,7568.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7568.19,7572.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7576.6,7578.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7578.93,7587.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7589.6,7589.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7589.102,7593.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7593.19,7597.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7601.6,7603.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7603.99,7612.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7614.6,7614.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7614.107,7618.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7618.19,7622.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7630.4,7630.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7630.55,7635.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7635.28,7640.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7640.111,7644.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7644.19,7648.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7652.6,7652.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7652.111,7656.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7656.19,7660.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7668.4,7670.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7670.73,7674.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7674.17,7678.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7682.4,7682.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7682.74,7690.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7690.28,7695.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7695.73,7699.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7699.19,7703.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7707.6,7707.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7707.82,7716.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7718.6,7720.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7720.83,7724.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7724.19,7728.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7732.6,7732.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7732.81,7740.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7740.30,7743.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7743.59,7747.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7749.8,7749.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7749.55,7754.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7754.32,7757.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7757.93,7762.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7762.34,7765.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7765.105,7767.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7769.12,7769.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7769.94,7771.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7773.12,7773.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7773.100,7775.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7781.10,7781.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7781.83,7785.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7787.10,7789.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7789.113,7797.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7797.34,7800.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7800.71,7804.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7806.12,7806.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7806.60,7810.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7812.12,7812.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7812.66,7816.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7822.10,7822.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7822.109,7830.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7830.34,7833.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7833.60,7837.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7839.12,7839.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7839.55,7843.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7849.10,7849.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7849.109,7857.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7857.34,7860.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7860.55,7864.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7866.12,7866.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7866.60,7870.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7872.12,7872.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7872.60,7876.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7878.12,7878.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7878.67,7882.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7884.12,7884.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7884.59,7888.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7894.10,7894.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7894.111,7902.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7902.34,7905.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7905.56,7909.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7923.6,7925.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7925.103,7929.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7929.19,7933.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7937.6,7937.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7937.102,7941.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7941.19,7945.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7949.6,7951.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7951.97,7955.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7955.19,7959.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7963.6,7963.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7963.96,7967.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7967.19,7971.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7979.4,7979.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7979.47,7983.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7989.2,7989.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7989.63,7997.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:7997.26,8000.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8000.52,8006.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8006.28,8008.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8008.63,8010.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8011.6,8011.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8011.68,8013.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8015.6,8015.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8015.65,8017.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8022.4,8022.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8022.54,8026.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8028.4,8028.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8028.49,8033.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8033.28,8038.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8038.91,8047.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8049.6,8049.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8049.100,8053.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8053.19,8057.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8061.6,8063.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8063.93,8072.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8074.6,8074.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8074.102,8078.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8078.19,8082.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8086.6,8088.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8088.99,8097.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8099.6,8099.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8099.107,8103.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8103.19,8107.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8115.4,8115.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8115.50,8119.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8121.4,8121.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8121.55,8126.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8126.28,8131.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8131.111,8135.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8135.19,8139.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8143.6,8143.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8143.111,8147.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8147.19,8151.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8163.2,8163.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8163.67,8171.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8171.26,8174.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8174.49,8179.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8179.28,8184.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8184.91,8193.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8195.6,8195.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8195.100,8199.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8199.19,8203.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8207.6,8209.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8209.93,8218.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8220.6,8220.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8220.102,8224.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8224.19,8228.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8232.6,8234.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8234.99,8243.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8245.6,8245.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8245.107,8249.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8249.19,8253.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8261.4,8261.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8261.55,8266.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8266.28,8271.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8271.111,8275.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8275.19,8279.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8283.6,8283.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8283.111,8287.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8287.19,8291.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8299.4,8299.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8299.52,8303.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8305.4,8305.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8305.60,8310.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8310.28,8313.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8313.97,8318.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8318.30,8321.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8321.101,8323.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8325.8,8325.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8325.90,8327.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8329.8,8329.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8329.96,8331.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8337.6,8337.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8337.87,8341.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8343.6,8345.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8345.117,8353.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8353.30,8356.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8356.67,8360.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8362.8,8362.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8362.56,8366.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8368.8,8368.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8368.62,8372.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8378.6,8378.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8378.113,8386.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8386.30,8389.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8389.56,8393.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8395.8,8395.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8395.51,8399.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8405.6,8405.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8405.113,8413.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8413.30,8416.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8416.51,8420.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8422.8,8422.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8422.56,8426.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8428.8,8428.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8428.56,8432.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8434.8,8434.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8434.63,8438.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8440.8,8440.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8440.55,8444.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8450.6,8450.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8450.115,8458.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8458.30,8461.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8461.52,8465.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8475.4,8477.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8477.73,8481.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8481.17,8485.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8489.4,8489.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8489.74,8497.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8497.28,8502.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8502.73,8506.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8506.19,8510.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8514.6,8514.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8514.82,8523.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8525.6,8527.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8527.83,8531.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8531.19,8535.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8539.6,8539.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8539.81,8547.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8547.30,8550.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8550.59,8554.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8556.8,8556.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8556.55,8561.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8561.32,8564.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8564.93,8569.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8569.34,8572.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8572.105,8574.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8576.12,8576.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8576.94,8578.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8580.12,8580.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8580.100,8582.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8588.10,8588.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8588.83,8592.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8594.10,8596.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8596.113,8604.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8604.34,8607.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8607.71,8611.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8613.12,8613.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8613.60,8617.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8619.12,8619.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8619.66,8623.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8629.10,8629.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8629.109,8637.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8637.34,8640.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8640.60,8644.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8646.12,8646.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8646.55,8650.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8656.10,8656.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8656.109,8664.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8664.34,8667.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8667.55,8671.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8673.12,8673.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8673.60,8677.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8679.12,8679.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8679.60,8683.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8685.12,8685.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8685.67,8689.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8691.12,8691.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8691.59,8695.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8701.10,8701.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8701.111,8709.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8709.34,8712.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8712.56,8716.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8730.6,8732.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8732.103,8736.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8736.19,8740.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8744.6,8744.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8744.102,8748.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8748.19,8752.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8756.6,8758.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8758.97,8762.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8762.19,8766.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8770.6,8770.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8770.96,8774.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8774.19,8778.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8790.2,8790.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8790.71,8798.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8798.26,8801.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8801.47,8806.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8806.28,8809.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8809.86,8814.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8814.30,8817.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8817.101,8819.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8821.8,8821.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8821.90,8823.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8825.8,8825.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8825.96,8827.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8833.6,8833.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8833.76,8837.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8839.6,8841.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8841.106,8849.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8849.30,8852.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8852.67,8856.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8858.8,8858.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8858.56,8862.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8864.8,8864.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8864.62,8868.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8874.6,8874.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8874.102,8882.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8882.30,8885.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8885.56,8889.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8891.8,8891.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8891.51,8895.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8901.6,8901.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8901.102,8909.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8909.30,8912.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8912.51,8916.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8918.8,8918.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8918.56,8922.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8924.8,8924.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8924.56,8928.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8930.8,8930.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8930.63,8934.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8936.8,8936.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8936.55,8940.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8946.6,8946.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8946.104,8954.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8954.30,8957.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8957.52,8961.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8975.2,8978.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8978.16,8980.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8981.2,8983.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8986.92,8992.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8992.16,8993.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8993.55,8997.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:8998.3,8998.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9000.2,9000.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9003.113,9019.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9022.94,9031.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9031.58,9035.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9035.48,9038.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9039.3,9039.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9042.2,9042.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9042.58,9045.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9047.2,9047.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9047.54,9050.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9052.2,9052.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9052.53,9056.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9056.48,9059.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9060.3,9060.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9063.2,9063.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9063.51,9066.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9068.2,9068.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9068.56,9071.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9073.2,9075.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9075.62,9079.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9079.15,9083.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9087.2,9087.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9087.66,9091.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9091.15,9095.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9099.2,9099.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9099.63,9107.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9107.26,9110.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9110.54,9113.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9113.41,9115.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9116.5,9116.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9124.2,9124.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9124.65,9128.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9128.15,9132.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9136.2,9138.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9138.61,9142.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9142.15,9146.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9150.2,9150.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9150.63,9154.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9154.15,9158.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9162.2,9162.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9162.66,9166.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9166.15,9170.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9174.2,9176.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9176.76,9184.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9184.26,9187.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9187.52,9193.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9193.28,9195.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9195.63,9197.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9198.6,9198.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9198.68,9200.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9202.6,9202.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9202.65,9204.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9209.4,9209.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9209.54,9213.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9215.4,9215.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9215.49,9220.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9220.28,9225.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9225.91,9234.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9236.6,9236.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9236.100,9240.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9240.19,9244.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9248.6,9250.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9250.93,9259.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9261.6,9261.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9261.102,9265.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9265.19,9269.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9273.6,9275.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9275.99,9284.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9286.6,9286.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9286.107,9290.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9290.19,9294.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9302.4,9302.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9302.55,9307.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9307.28,9312.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9312.111,9316.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9316.19,9320.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9324.6,9324.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9324.111,9328.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9328.19,9332.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9340.4,9340.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9340.54,9344.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9346.4,9346.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9346.55,9350.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9356.2,9356.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9356.77,9364.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9364.26,9367.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9367.61,9372.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9372.28,9375.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9375.99,9380.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9380.30,9383.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9383.101,9385.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9387.8,9387.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9387.90,9389.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9391.8,9391.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9391.96,9393.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9399.6,9399.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9399.89,9403.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9405.6,9407.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9407.119,9415.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9415.30,9418.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9418.67,9422.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9424.8,9424.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9424.56,9428.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9430.8,9430.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9430.62,9434.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9440.6,9440.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9440.115,9448.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9448.30,9451.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9451.56,9455.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9457.8,9457.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9457.51,9461.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9467.6,9467.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9467.115,9475.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9475.30,9478.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9478.51,9482.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9484.8,9484.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9484.56,9488.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9490.8,9490.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9490.56,9494.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9496.8,9496.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9496.63,9500.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9502.8,9502.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9502.55,9506.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9512.6,9512.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9512.117,9520.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9520.30,9523.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9523.52,9527.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9537.4,9537.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9537.52,9541.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9543.4,9543.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9543.53,9547.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9553.2,9553.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9553.66,9561.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9561.26,9564.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9564.49,9569.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9569.28,9574.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9574.91,9583.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9585.6,9585.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9585.100,9589.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9589.19,9593.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9597.6,9599.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9599.93,9608.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9610.6,9610.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9610.102,9614.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9614.19,9618.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9622.6,9624.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9624.99,9633.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9635.6,9635.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9635.107,9639.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9639.19,9643.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9651.4,9651.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9651.55,9656.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9656.28,9661.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9661.111,9665.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9665.19,9669.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9673.6,9673.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9673.111,9677.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9677.19,9681.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9689.4,9689.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9689.61,9694.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9694.28,9697.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9697.99,9702.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9702.30,9705.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9705.101,9707.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9709.8,9709.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9709.90,9711.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9713.8,9713.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9713.96,9715.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9721.6,9721.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9721.89,9725.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9727.6,9729.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9729.119,9737.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9737.30,9740.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9740.67,9744.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9746.8,9746.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9746.56,9750.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9752.8,9752.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9752.62,9756.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9762.6,9762.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9762.115,9770.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9770.30,9773.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9773.56,9777.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9779.8,9779.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9779.51,9783.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9789.6,9789.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9789.115,9797.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9797.30,9800.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9800.51,9804.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9806.8,9806.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9806.56,9810.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9812.8,9812.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9812.56,9816.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9818.8,9818.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9818.63,9822.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9824.8,9824.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9824.55,9828.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9834.6,9834.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9834.117,9842.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9842.30,9845.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9845.52,9849.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9859.4,9859.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9859.58,9863.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9869.2,9869.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9869.68,9877.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9877.26,9880.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9880.49,9885.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9885.28,9890.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9890.91,9899.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9901.6,9901.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9901.100,9905.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9905.19,9909.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9913.6,9915.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9915.93,9924.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9926.6,9926.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9926.102,9930.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9930.19,9934.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9938.6,9940.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9940.99,9949.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9951.6,9951.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9951.107,9955.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9955.19,9959.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9967.4,9967.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9967.55,9972.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9972.28,9977.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9977.111,9981.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9981.19,9985.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9989.6,9989.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9989.111,9993.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:9993.19,9997.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10005.4,10005.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10005.59,10010.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10010.28,10013.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10013.96,10018.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10018.30,10021.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10021.101,10023.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10025.8,10025.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10025.90,10027.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10029.8,10029.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10029.96,10031.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10037.6,10037.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10037.86,10041.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10043.6,10045.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10045.116,10053.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10053.30,10056.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10056.67,10060.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10062.8,10062.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10062.56,10066.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10068.8,10068.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10068.62,10072.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10078.6,10078.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10078.112,10086.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10086.30,10089.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10089.56,10093.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10095.8,10095.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10095.51,10099.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10105.6,10105.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10105.112,10113.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10113.30,10116.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10116.51,10120.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10122.8,10122.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10122.56,10126.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10128.8,10128.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10128.56,10132.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10134.8,10134.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10134.63,10138.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10140.8,10140.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10140.55,10144.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10150.6,10150.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10150.114,10158.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10158.30,10161.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10161.52,10165.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10175.4,10177.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10177.80,10186.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10188.4,10188.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10188.76,10197.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10199.4,10201.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10201.73,10205.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10205.17,10209.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10213.4,10213.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10213.74,10221.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10221.28,10226.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10226.73,10230.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10230.19,10234.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10238.6,10238.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10238.82,10247.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10249.6,10251.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10251.83,10255.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10255.19,10259.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10263.6,10263.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10263.81,10271.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10271.30,10274.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10274.59,10278.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10280.8,10280.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10280.55,10285.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10285.32,10288.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10288.93,10293.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10293.34,10296.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10296.105,10298.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10300.12,10300.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10300.94,10302.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10304.12,10304.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10304.100,10306.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10312.10,10312.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10312.83,10316.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10318.10,10320.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10320.113,10328.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10328.34,10331.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10331.71,10335.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10337.12,10337.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10337.60,10341.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10343.12,10343.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10343.66,10347.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10353.10,10353.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10353.109,10361.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10361.34,10364.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10364.60,10368.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10370.12,10370.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10370.55,10374.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10380.10,10380.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10380.109,10388.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10388.34,10391.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10391.55,10395.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10397.12,10397.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10397.60,10401.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10403.12,10403.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10403.60,10407.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10409.12,10409.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10409.67,10413.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10415.12,10415.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10415.59,10419.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10425.10,10425.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10425.111,10433.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10433.34,10436.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10436.56,10440.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10454.6,10456.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10456.103,10460.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10460.19,10464.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10468.6,10468.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10468.102,10472.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10472.19,10476.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10480.6,10482.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10482.97,10486.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10486.19,10490.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10494.6,10494.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10494.96,10498.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10498.19,10502.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10514.2,10514.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10514.68,10522.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10522.26,10527.76 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10527.76,10535.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10535.28,10538.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10538.50,10542.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10544.6,10544.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10544.55,10548.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10550.6,10550.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10550.52,10554.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10560.4,10560.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10560.78,10568.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10568.28,10571.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10571.54,10576.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10576.30,10579.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10579.93,10584.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10584.32,10587.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10587.103,10589.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10591.10,10591.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10591.92,10593.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10595.10,10595.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10595.98,10597.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10603.8,10603.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10603.83,10607.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10609.8,10611.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10611.113,10619.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10619.32,10622.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10622.69,10626.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10628.10,10628.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10628.58,10632.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10634.10,10634.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10634.64,10638.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10644.8,10644.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10644.109,10652.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10652.32,10655.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10655.58,10659.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10661.10,10661.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10661.53,10665.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10671.8,10671.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10671.109,10679.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10679.32,10682.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10682.53,10686.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10688.10,10688.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10688.58,10692.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10694.10,10694.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10694.58,10698.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10700.10,10700.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10700.65,10704.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10706.10,10706.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10706.57,10710.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10716.8,10716.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10716.111,10724.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10724.32,10727.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10727.54,10731.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10741.6,10741.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10741.55,10745.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10751.4,10751.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10751.77,10755.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10755.17,10759.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10763.4,10763.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10763.49,10768.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10768.28,10773.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10773.91,10782.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10784.6,10784.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10784.100,10788.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10788.19,10792.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10796.6,10798.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10798.93,10807.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10809.6,10809.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10809.102,10813.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10813.19,10817.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10821.6,10823.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10823.99,10832.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10834.6,10834.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10834.107,10838.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10838.19,10842.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10850.4,10850.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10850.55,10855.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10855.28,10860.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10860.111,10864.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10864.19,10868.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10872.6,10872.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10872.111,10876.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10876.19,10880.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10888.4,10888.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10888.52,10892.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10894.4,10896.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10896.73,10900.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10900.17,10904.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10908.4,10908.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10908.74,10916.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10916.28,10921.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10921.73,10925.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10925.19,10929.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10933.6,10933.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10933.82,10942.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10944.6,10946.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10946.83,10950.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10950.19,10954.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10958.6,10958.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10958.81,10966.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10966.30,10969.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10969.59,10973.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10975.8,10975.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10975.55,10980.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10980.32,10983.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10983.93,10988.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10988.34,10991.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10991.105,10993.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10995.12,10995.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10995.94,10997.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10999.12,10999.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:10999.100,11001.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11007.10,11007.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11007.83,11011.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11013.10,11015.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11015.113,11023.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11023.34,11026.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11026.71,11030.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11032.12,11032.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11032.60,11036.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11038.12,11038.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11038.66,11042.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11048.10,11048.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11048.109,11056.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11056.34,11059.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11059.60,11063.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11065.12,11065.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11065.55,11069.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11075.10,11075.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11075.109,11083.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11083.34,11086.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11086.55,11090.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11092.12,11092.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11092.60,11096.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11098.12,11098.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11098.60,11102.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11104.12,11104.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11104.67,11108.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11110.12,11110.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11110.59,11114.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11120.10,11120.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11120.111,11128.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11128.34,11131.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11131.56,11135.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11149.6,11151.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11151.103,11155.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11155.19,11159.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11163.6,11163.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11163.102,11167.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11167.19,11171.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11175.6,11177.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11177.97,11181.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11181.19,11185.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11189.6,11189.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11189.96,11193.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11193.19,11197.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11209.2,11209.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11209.71,11217.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11217.26,11220.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11220.49,11225.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11225.28,11230.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11230.91,11239.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11241.6,11241.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11241.100,11245.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11245.19,11249.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11253.6,11255.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11255.93,11264.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11266.6,11266.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11266.102,11270.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11270.19,11274.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11278.6,11280.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11280.99,11289.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11291.6,11291.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11291.107,11295.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11295.19,11299.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11307.4,11307.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11307.50,11311.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11313.4,11313.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11313.55,11318.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11318.28,11323.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11323.111,11327.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11327.19,11331.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11335.6,11335.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11335.111,11339.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11339.19,11343.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11351.4,11351.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11351.52,11357.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11357.28,11359.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11359.63,11361.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11362.6,11362.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11362.68,11364.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11366.6,11366.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11366.65,11368.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11377.2,11377.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11377.65,11385.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11385.26,11390.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11390.78,11398.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11398.28,11401.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11401.54,11406.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11406.30,11409.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11409.93,11414.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11414.32,11417.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11417.103,11419.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11421.10,11421.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11421.92,11423.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11425.10,11425.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11425.98,11427.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11433.8,11433.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11433.83,11437.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11439.8,11441.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11441.113,11449.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11449.32,11452.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11452.69,11456.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11458.10,11458.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11458.58,11462.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11464.10,11464.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11464.64,11468.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11474.8,11474.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11474.109,11482.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11482.32,11485.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11485.58,11489.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11491.10,11491.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11491.53,11495.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11501.8,11501.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11501.109,11509.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11509.32,11512.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11512.53,11516.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11518.10,11518.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11518.58,11522.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11524.10,11524.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11524.58,11528.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11530.10,11530.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11530.65,11534.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11536.10,11536.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11536.57,11540.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11546.8,11546.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11546.111,11554.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11554.32,11557.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11557.54,11561.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11571.6,11571.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11571.55,11575.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11581.4,11581.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11581.77,11585.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11585.17,11589.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11593.4,11593.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11593.78,11601.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11601.28,11604.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11604.51,11609.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11609.30,11612.90 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11612.90,11617.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11617.32,11620.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11620.103,11622.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11624.10,11624.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11624.92,11626.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11628.10,11628.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11628.98,11630.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11636.8,11636.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11636.80,11640.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11642.8,11644.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11644.110,11652.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11652.32,11655.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11655.69,11659.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11661.10,11661.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11661.58,11665.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11667.10,11667.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11667.64,11671.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11677.8,11677.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11677.106,11685.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11685.32,11688.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11688.58,11692.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11694.10,11694.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11694.53,11698.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11704.8,11704.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11704.106,11712.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11712.32,11715.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11715.53,11719.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11721.10,11721.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11721.58,11725.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11727.10,11727.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11727.58,11731.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11733.10,11733.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11733.65,11737.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11739.10,11739.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11739.57,11743.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11749.8,11749.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11749.108,11757.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11757.32,11760.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11760.54,11764.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11778.4,11778.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11778.49,11783.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11783.28,11788.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11788.91,11797.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11799.6,11799.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11799.100,11803.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11803.19,11807.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11811.6,11813.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11813.93,11822.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11824.6,11824.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11824.102,11828.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11828.19,11832.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11836.6,11838.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11838.99,11847.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11849.6,11849.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11849.107,11853.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11853.19,11857.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11865.4,11865.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11865.55,11870.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11870.28,11875.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11875.111,11879.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11879.19,11883.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11887.6,11887.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11887.111,11891.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11891.19,11895.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11903.4,11905.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11905.73,11909.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11909.17,11913.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11917.4,11917.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11917.74,11925.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11925.28,11930.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11930.73,11934.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11934.19,11938.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11942.6,11942.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11942.82,11951.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11953.6,11955.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11955.83,11959.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11959.19,11963.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11967.6,11967.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11967.81,11975.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11975.30,11978.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11978.59,11982.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11984.8,11984.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11984.55,11989.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11989.32,11992.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11992.93,11997.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:11997.34,12000.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12000.105,12002.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12004.12,12004.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12004.94,12006.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12008.12,12008.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12008.100,12010.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12016.10,12016.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12016.83,12020.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12022.10,12024.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12024.113,12032.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12032.34,12035.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12035.71,12039.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12041.12,12041.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12041.60,12045.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12047.12,12047.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12047.66,12051.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12057.10,12057.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12057.109,12065.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12065.34,12068.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12068.60,12072.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12074.12,12074.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12074.55,12078.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12084.10,12084.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12084.109,12092.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12092.34,12095.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12095.55,12099.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12101.12,12101.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12101.60,12105.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12107.12,12107.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12107.60,12111.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12113.12,12113.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12113.67,12117.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12119.12,12119.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12119.59,12123.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12129.10,12129.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12129.111,12137.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12137.34,12140.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12140.56,12144.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12158.6,12160.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12160.103,12164.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12164.19,12168.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12172.6,12172.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12172.102,12176.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12176.19,12180.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12184.6,12186.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12186.97,12190.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12190.19,12194.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12198.6,12198.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12198.96,12202.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12202.19,12206.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12214.4,12214.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12214.47,12218.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12224.2,12224.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12224.66,12232.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12232.26,12235.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12235.49,12240.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12240.28,12245.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12245.91,12254.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12256.6,12256.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12256.100,12260.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12260.19,12264.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12268.6,12270.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12270.93,12279.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12281.6,12281.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12281.102,12285.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12285.19,12289.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12293.6,12295.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12295.99,12304.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12306.6,12306.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12306.107,12310.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12310.19,12314.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12322.4,12322.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12322.61,12325.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12325.41,12327.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12328.5,12328.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12332.4,12332.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12332.55,12337.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12337.28,12342.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12342.111,12346.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12346.19,12350.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12354.6,12354.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12354.111,12358.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12358.19,12362.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12370.4,12370.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12370.55,12374.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12376.4,12378.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12378.73,12382.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12382.17,12386.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12390.4,12390.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12390.74,12398.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12398.28,12403.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12403.73,12407.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12407.19,12411.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12415.6,12415.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12415.82,12424.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12426.6,12428.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12428.83,12432.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12432.19,12436.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12440.6,12440.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12440.81,12448.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12448.30,12451.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12451.59,12455.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12457.8,12457.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12457.55,12462.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12462.32,12465.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12465.93,12470.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12470.34,12473.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12473.105,12475.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12477.12,12477.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12477.94,12479.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12481.12,12481.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12481.100,12483.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12489.10,12489.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12489.83,12493.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12495.10,12497.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12497.113,12505.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12505.34,12508.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12508.71,12512.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12514.12,12514.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12514.60,12518.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12520.12,12520.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12520.66,12524.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12530.10,12530.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12530.109,12538.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12538.34,12541.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12541.60,12545.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12547.12,12547.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12547.55,12551.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12557.10,12557.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12557.109,12565.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12565.34,12568.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12568.55,12572.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12574.12,12574.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12574.60,12578.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12580.12,12580.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12580.60,12584.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12586.12,12586.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12586.67,12590.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12592.12,12592.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12592.59,12596.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12602.10,12602.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12602.111,12610.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12610.34,12613.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12613.56,12617.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12631.6,12633.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12633.103,12637.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12637.19,12641.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12645.6,12645.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12645.102,12649.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12649.19,12653.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12657.6,12659.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12659.97,12663.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12663.19,12667.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12671.6,12671.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12671.96,12675.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12675.19,12679.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12691.2,12691.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12691.70,12699.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12699.26,12702.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12702.51,12707.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12707.28,12710.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12710.89,12715.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12715.30,12718.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12718.101,12720.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12722.8,12722.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12722.90,12724.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12726.8,12726.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12726.96,12728.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12734.6,12734.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12734.79,12738.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12740.6,12742.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12742.109,12750.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12750.30,12753.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12753.67,12757.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12759.8,12759.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12759.56,12763.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12765.8,12765.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12765.62,12769.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12775.6,12775.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12775.105,12783.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12783.30,12786.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12786.56,12790.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12792.8,12792.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12792.51,12796.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12802.6,12802.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12802.105,12810.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12810.30,12813.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12813.51,12817.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12819.8,12819.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12819.56,12823.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12825.8,12825.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12825.56,12829.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12831.8,12831.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12831.63,12835.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12837.8,12837.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12837.55,12841.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12847.6,12847.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12847.107,12855.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12855.30,12858.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12858.52,12862.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12872.4,12874.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12874.74,12878.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12878.17,12882.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12886.4,12886.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12886.74,12890.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12890.17,12894.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12902.2,12902.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12902.67,12910.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12910.26,12913.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12913.49,12918.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12918.28,12923.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12923.91,12932.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12934.6,12934.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12934.100,12938.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12938.19,12942.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12946.6,12948.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12948.93,12957.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12959.6,12959.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12959.102,12963.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12963.19,12967.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12971.6,12973.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12973.99,12982.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12984.6,12984.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12984.107,12988.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:12988.19,12992.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13000.4,13000.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13000.55,13005.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13005.28,13010.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13010.111,13014.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13014.19,13018.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13022.6,13022.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13022.111,13026.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13026.19,13030.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13038.4,13040.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13040.73,13044.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13044.17,13048.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13052.4,13052.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13052.74,13060.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13060.28,13065.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13065.73,13069.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13069.19,13073.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13077.6,13077.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13077.82,13086.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13088.6,13090.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13090.83,13094.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13094.19,13098.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13102.6,13102.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13102.81,13110.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13110.30,13113.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13113.59,13117.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13119.8,13119.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13119.55,13124.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13124.32,13127.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13127.93,13132.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13132.34,13135.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13135.105,13137.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13139.12,13139.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13139.94,13141.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13143.12,13143.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13143.100,13145.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13151.10,13151.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13151.83,13155.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13157.10,13159.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13159.113,13167.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13167.34,13170.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13170.71,13174.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13176.12,13176.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13176.60,13180.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13182.12,13182.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13182.66,13186.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13192.10,13192.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13192.109,13200.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13200.34,13203.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13203.60,13207.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13209.12,13209.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13209.55,13213.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13219.10,13219.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13219.109,13227.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13227.34,13230.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13230.55,13234.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13236.12,13236.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13236.60,13240.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13242.12,13242.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13242.60,13246.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13248.12,13248.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13248.67,13252.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13254.12,13254.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13254.59,13258.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13264.10,13264.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13264.111,13272.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13272.34,13275.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13275.56,13279.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13293.6,13295.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13295.103,13299.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13299.19,13303.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13307.6,13307.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13307.102,13311.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13311.19,13315.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13319.6,13321.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13321.97,13325.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13325.19,13329.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13333.6,13333.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13333.96,13337.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13337.19,13341.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13349.4,13349.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13349.47,13353.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13359.2,13359.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13359.63,13367.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13367.26,13370.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13370.52,13376.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13376.28,13378.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13378.63,13380.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13381.6,13381.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13381.68,13383.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13385.6,13385.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13385.65,13387.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13392.4,13392.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13392.54,13396.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13398.4,13398.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13398.49,13403.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13403.28,13408.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13408.91,13417.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13419.6,13419.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13419.100,13423.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13423.19,13427.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13431.6,13433.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13433.93,13442.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13444.6,13444.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13444.102,13448.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13448.19,13452.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13456.6,13458.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13458.99,13467.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13469.6,13469.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13469.107,13473.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13473.19,13477.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13485.4,13485.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13485.50,13489.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13491.4,13491.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13491.55,13496.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13496.28,13501.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13501.111,13505.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13505.19,13509.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13513.6,13513.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13513.111,13517.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13517.19,13521.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13533.2,13533.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13533.67,13541.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13541.26,13544.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13544.49,13549.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13549.28,13554.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13554.91,13563.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13565.6,13565.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13565.100,13569.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13569.19,13573.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13577.6,13579.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13579.93,13588.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13590.6,13590.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13590.102,13594.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13594.19,13598.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13602.6,13604.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13604.99,13613.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13615.6,13615.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13615.107,13619.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13619.19,13623.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13631.4,13631.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13631.55,13636.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13636.28,13641.111 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13641.111,13645.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13645.19,13649.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13653.6,13653.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13653.111,13657.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13657.19,13661.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13669.4,13669.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13669.52,13673.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13675.4,13675.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13675.60,13680.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13680.28,13683.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13683.97,13688.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13688.30,13691.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13691.101,13693.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13695.8,13695.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13695.90,13697.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13699.8,13699.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13699.96,13701.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13707.6,13707.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13707.87,13711.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13713.6,13715.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13715.117,13723.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13723.30,13726.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13726.67,13730.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13732.8,13732.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13732.56,13736.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13738.8,13738.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13738.62,13742.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13748.6,13748.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13748.113,13756.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13756.30,13759.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13759.56,13763.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13765.8,13765.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13765.51,13769.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13775.6,13775.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13775.113,13783.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13783.30,13786.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13786.51,13790.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13792.8,13792.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13792.56,13796.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13798.8,13798.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13798.56,13802.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13804.8,13804.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13804.63,13808.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13810.8,13810.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13810.55,13814.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13820.6,13820.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13820.115,13828.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13828.30,13831.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13831.52,13835.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13845.4,13847.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13847.73,13851.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13851.17,13855.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13859.4,13859.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13859.74,13867.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13867.28,13872.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13872.73,13876.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13876.19,13880.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13884.6,13884.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13884.82,13893.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13895.6,13897.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13897.83,13901.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13901.19,13905.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13909.6,13909.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13909.81,13917.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13917.30,13920.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13920.59,13924.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13926.8,13926.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13926.55,13931.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13931.32,13934.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13934.93,13939.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13939.34,13942.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13942.105,13944.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13946.12,13946.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13946.94,13948.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13950.12,13950.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13950.100,13952.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13958.10,13958.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13958.83,13962.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13964.10,13966.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13966.113,13974.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13974.34,13977.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13977.71,13981.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13983.12,13983.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13983.60,13987.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13989.12,13989.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13989.66,13993.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13999.10,13999.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:13999.109,14007.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14007.34,14010.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14010.60,14014.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14016.12,14016.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14016.55,14020.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14026.10,14026.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14026.109,14034.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14034.34,14037.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14037.55,14041.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14043.12,14043.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14043.60,14047.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14049.12,14049.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14049.60,14053.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14055.12,14055.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14055.67,14059.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14061.12,14061.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14061.59,14065.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14071.10,14071.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14071.111,14079.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14079.34,14082.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14082.56,14086.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14100.6,14102.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14102.103,14106.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14106.19,14110.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14114.6,14114.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14114.102,14118.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14118.19,14122.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14126.6,14128.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14128.97,14132.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14132.19,14136.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14140.6,14140.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14140.96,14144.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14144.19,14148.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14160.2,14160.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14160.71,14168.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14168.26,14171.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14171.47,14176.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14176.28,14179.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14179.86,14184.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14184.30,14187.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14187.101,14189.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14191.8,14191.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14191.90,14193.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14195.8,14195.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14195.96,14197.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14203.6,14203.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14203.76,14207.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14209.6,14211.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14211.106,14219.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14219.30,14222.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14222.67,14226.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14228.8,14228.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14228.56,14232.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14234.8,14234.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14234.62,14238.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14244.6,14244.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14244.102,14252.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14252.30,14255.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14255.56,14259.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14261.8,14261.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14261.51,14265.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14271.6,14271.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14271.102,14279.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14279.30,14282.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14282.51,14286.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14288.8,14288.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14288.56,14292.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14294.8,14294.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14294.56,14298.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14300.8,14300.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14300.63,14304.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14306.8,14306.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14306.55,14310.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14316.6,14316.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14316.104,14324.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14324.30,14327.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14327.52,14331.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14345.2,14348.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14348.16,14350.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14352.2,14352.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14355.94,14361.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14361.16,14362.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14362.55,14366.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14367.3,14367.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_global_log_receiver.go:14370.2,14371.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:22.53,252.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:255.88,265.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:265.58,269.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:269.48,272.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:273.3,273.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:276.2,276.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:276.58,279.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:281.2,281.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:281.54,284.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:286.2,286.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:286.53,290.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:290.48,293.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:294.3,294.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:297.2,297.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:297.51,300.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:302.2,302.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:302.56,305.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:309.2,311.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:311.71,319.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:319.26,322.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:322.58,326.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:328.4,328.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:328.64,332.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:334.4,334.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:334.61,338.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:340.4,340.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:340.54,344.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:346.4,346.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:346.54,350.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:352.4,352.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:352.51,356.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:362.2,362.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:362.82,366.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:366.15,370.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:374.2,374.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:374.81,382.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:382.26,385.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:385.61,389.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:391.4,391.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:391.56,395.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:401.2,401.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:401.81,409.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:409.26,412.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:412.61,416.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:418.4,418.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:418.56,422.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:428.2,428.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:428.72,436.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:436.26,439.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:439.65,442.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:442.41,444.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:445.5,445.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:449.4,449.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:449.51,452.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:452.50,454.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:455.5,455.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:458.4,460.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:460.85,469.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:471.4,471.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:471.96,475.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:475.17,479.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:483.4,483.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:483.48,487.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:489.4,489.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:489.69,492.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:492.41,494.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:495.5,495.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:499.4,499.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:499.53,503.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:509.2,509.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:509.71,517.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:517.26,520.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:520.61,524.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:526.4,526.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:526.56,530.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:537.2,537.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:537.64,542.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:545.2,545.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:545.55,550.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:553.2,553.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:553.61,558.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:561.2,561.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:561.54,566.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:569.2,569.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:569.66,574.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:576.2,579.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:579.16,581.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:582.2,584.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:587.86,593.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:593.16,594.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:594.55,598.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:599.3,599.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:601.2,601.46 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:604.107,620.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:623.88,632.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:632.58,636.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:636.48,639.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:640.3,640.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:643.2,643.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:643.58,646.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:648.2,648.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:648.54,651.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:653.2,653.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:653.53,657.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:657.48,660.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:661.3,661.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:664.2,664.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:664.51,667.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:669.2,669.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:669.56,672.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:674.2,676.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:676.71,684.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:684.26,687.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:687.58,691.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:693.4,693.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:693.64,697.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:699.4,699.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:699.61,703.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:705.4,705.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:705.54,709.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:711.4,711.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:711.54,715.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:717.4,717.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:717.51,721.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:727.2,727.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:727.82,731.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:731.15,735.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:739.2,739.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:739.81,747.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:747.26,750.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:750.61,754.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:756.4,756.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:756.56,760.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:766.2,766.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:766.81,774.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:774.26,777.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:777.61,781.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:783.4,783.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:783.56,787.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:793.2,793.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:793.72,801.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:801.26,804.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:804.65,807.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:807.41,809.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:810.5,810.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:814.4,814.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:814.51,817.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:817.50,819.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:820.5,820.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:823.4,825.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:825.85,834.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:836.4,836.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:836.96,840.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:840.17,844.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:848.4,848.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:848.48,852.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:854.4,854.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:854.69,857.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:857.41,859.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:860.5,860.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:864.4,864.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:864.53,868.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:874.2,874.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:874.71,882.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:882.26,885.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:885.61,889.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:891.4,891.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:891.56,895.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:901.2,901.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:901.64,906.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:908.2,908.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:908.55,913.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:915.2,915.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:915.61,920.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:922.2,922.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:922.54,927.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:929.2,929.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:929.66,934.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:936.2,939.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:939.16,941.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:943.2,943.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:946.88,952.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:952.16,953.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:953.55,957.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:958.3,958.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_healthcheck.go:961.2,962.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36.58,14066.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14069.93,14079.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14079.58,14083.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14083.48,14086.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14087.3,14087.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14090.2,14090.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14090.58,14093.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14095.2,14095.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14095.54,14098.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14100.2,14100.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14100.53,14104.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14104.48,14107.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14108.3,14108.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14111.2,14111.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14111.51,14114.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14116.2,14116.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14116.56,14119.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14122.2,14122.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14122.59,14127.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14131.2,14133.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14133.75,14141.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14141.26,14144.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14144.59,14149.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14149.28,14155.105 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14155.105,14163.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14163.30,14166.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14166.58,14171.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14171.32,14174.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14174.70,14176.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14178.10,14178.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14178.75,14180.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14182.10,14182.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14182.72,14184.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14190.8,14190.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14190.50,14194.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14196.8,14196.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14196.52,14200.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14202.8,14202.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14202.55,14207.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14207.32,14210.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14210.68,14212.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14214.10,14214.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14214.73,14216.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14218.10,14218.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14218.70,14220.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14230.6,14230.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14230.94,14238.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14238.30,14241.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14241.56,14245.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14247.8,14247.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14247.56,14251.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14253.8,14253.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14253.55,14258.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14258.32,14261.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14261.68,14263.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14265.10,14265.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14265.73,14267.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14269.10,14269.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14269.70,14271.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14281.6,14281.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14281.91,14289.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14289.30,14292.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14292.50,14296.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14298.8,14298.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14298.52,14302.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14304.8,14304.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14304.55,14308.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14310.8,14310.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14310.52,14315.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14315.32,14318.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14318.65,14320.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14322.10,14322.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14322.70,14324.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14326.10,14326.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14326.67,14328.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14338.6,14338.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14338.99,14346.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14346.30,14349.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14349.50,14353.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14355.8,14355.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14355.52,14359.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14361.8,14361.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14361.55,14366.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14366.32,14369.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14369.68,14371.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14373.10,14373.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14373.73,14375.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14377.10,14377.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14377.70,14379.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14385.8,14385.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14385.52,14390.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14390.32,14393.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14393.65,14395.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14397.10,14397.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14397.70,14399.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14401.10,14401.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14401.67,14403.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14413.6,14413.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14413.102,14421.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14421.30,14426.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14426.87,14430.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14430.21,14434.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14438.8,14438.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14438.88,14447.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14449.8,14451.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14451.82,14455.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14455.21,14459.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14463.8,14463.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14463.83,14472.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14474.8,14474.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14474.63,14479.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14479.32,14482.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14482.75,14484.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14486.10,14486.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14486.80,14488.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14490.10,14490.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14490.77,14492.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14502.6,14502.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14502.99,14510.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14510.30,14513.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14513.55,14517.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14519.8,14519.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14519.60,14524.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14524.32,14527.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14527.72,14529.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14531.10,14531.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14531.77,14533.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14535.10,14535.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14535.74,14537.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14547.6,14547.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14547.107,14555.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14555.30,14558.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14558.50,14562.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14564.8,14564.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14564.52,14568.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14570.8,14570.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14570.55,14575.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14575.32,14578.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14578.68,14580.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14582.10,14582.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14582.73,14584.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14586.10,14586.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14586.70,14588.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14594.8,14594.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14594.60,14599.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14599.32,14602.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14602.72,14604.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14606.10,14606.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14606.77,14608.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14610.10,14610.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14610.74,14612.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14622.6,14622.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14622.99,14630.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14630.30,14635.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14635.72,14643.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14643.32,14646.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14646.54,14650.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14652.10,14652.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14652.59,14656.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14658.10,14658.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14658.56,14662.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14668.8,14668.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14668.80,14676.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14676.32,14679.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14679.54,14683.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14685.10,14685.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14685.59,14689.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14691.10,14691.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14691.56,14695.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14705.6,14707.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14707.95,14716.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14718.6,14718.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14718.107,14722.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14722.19,14726.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14738.2,14738.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14738.78,14746.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14746.26,14749.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14749.53,14754.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14754.28,14757.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14757.65,14759.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14761.6,14761.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14761.70,14763.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14765.6,14765.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14765.67,14767.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14777.2,14777.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14777.90,14781.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14781.15,14785.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14789.2,14789.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14789.75,14793.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14793.15,14797.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14803.2,14805.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14805.77,14813.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14813.26,14816.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14816.48,14820.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14822.4,14822.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14822.53,14826.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14828.4,14828.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14828.50,14832.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14838.2,14838.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14838.78,14846.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14846.26,14849.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14849.59,14854.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14854.27,14859.61 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14859.61,14861.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14863.6,14863.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14863.66,14865.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14867.6,14867.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14867.63,14869.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14879.2,14879.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14879.80,14887.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14887.26,14890.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14890.58,14896.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14896.28,14898.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14898.63,14900.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14901.6,14901.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14901.68,14903.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14905.6,14905.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14905.65,14907.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14912.4,14914.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14914.109,14922.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14922.28,14925.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14925.63,14930.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14930.30,14935.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14935.128,14939.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14939.21,14943.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14947.8,14947.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14947.129,14955.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14955.32,14958.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14958.75,14963.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14963.34,14969.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14969.119,14973.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14973.25,14977.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14981.12,14981.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14981.120,14985.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14985.25,14989.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14993.12,14993.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14993.118,14997.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:14997.25,15001.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15005.12,15007.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15007.126,15015.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15015.36,15018.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15018.61,15021.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15021.51,15023.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15024.15,15024.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15028.14,15028.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15028.58,15032.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15038.12,15038.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15038.123,15047.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15049.12,15049.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15049.123,15058.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15060.12,15060.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15060.89,15065.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15065.36,15068.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15068.80,15070.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15072.14,15072.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15072.76,15074.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15076.14,15076.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15076.73,15078.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15096.6,15098.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15098.109,15102.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15102.19,15106.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15110.6,15110.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15110.109,15114.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15114.19,15118.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15122.6,15122.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15122.54,15127.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15127.30,15132.126 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15132.126,15136.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15136.21,15140.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15144.8,15144.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15144.126,15148.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15148.21,15152.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15156.8,15158.144 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15158.144,15166.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15166.32,15169.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15169.57,15174.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15174.34,15179.127 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15179.127,15183.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15183.25,15187.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15191.12,15191.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15191.130,15195.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15195.25,15199.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15207.10,15207.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15207.66,15212.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15212.34,15217.141 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15217.141,15221.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15221.25,15225.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15229.12,15229.144 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15229.144,15233.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15233.25,15237.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15249.8,15249.145 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15249.145,15253.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15253.21,15257.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15265.6,15265.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15265.61,15270.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15270.30,15275.142 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15275.142,15283.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15283.32,15286.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15286.80,15289.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15289.47,15291.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15292.11,15292.137 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15296.10,15298.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15298.106,15302.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15302.23,15306.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15310.10,15310.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15310.107,15314.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15314.23,15318.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15326.8,15326.135 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15326.135,15330.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15330.21,15334.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15338.8,15340.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15340.118,15344.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15344.21,15348.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15352.8,15352.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15352.125,15360.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15360.32,15363.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15363.79,15366.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15366.47,15368.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15369.11,15369.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15373.10,15375.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15375.106,15379.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15379.23,15383.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15387.10,15387.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15387.107,15391.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15391.23,15395.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15411.4,15411.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15411.102,15419.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15419.28,15422.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15422.63,15427.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15427.30,15432.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15432.128,15436.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15436.21,15440.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15444.8,15444.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15444.129,15452.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15452.32,15455.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15455.75,15460.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15460.34,15466.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15466.119,15470.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15470.25,15474.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15478.12,15478.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15478.120,15482.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15482.25,15486.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15490.12,15490.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15490.118,15494.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15494.25,15498.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15502.12,15504.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15504.126,15512.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15512.36,15515.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15515.61,15518.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15518.51,15520.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15521.15,15521.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15525.14,15525.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15525.58,15529.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15535.12,15535.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15535.123,15544.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15546.12,15546.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15546.123,15555.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15557.12,15557.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15557.89,15562.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15562.36,15565.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15565.80,15567.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15569.14,15569.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15569.76,15571.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15573.14,15573.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15573.73,15575.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15593.6,15593.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15593.71,15598.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15598.30,15604.122 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15604.122,15612.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15612.32,15615.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15615.57,15618.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15618.47,15620.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15621.11,15621.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15625.10,15625.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15625.54,15629.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15635.8,15635.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15635.119,15644.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15646.8,15646.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15646.119,15655.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15657.8,15659.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15659.113,15663.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15663.21,15667.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15671.8,15671.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15671.118,15680.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15682.8,15682.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15682.85,15687.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15687.32,15690.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15690.76,15692.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15694.10,15694.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15694.72,15696.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15698.10,15698.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15698.69,15700.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15706.8,15706.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15706.92,15711.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15711.32,15716.144 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15716.144,15724.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15724.34,15727.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15727.82,15730.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15730.49,15732.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15733.13,15733.139 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15737.12,15739.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15739.108,15743.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15743.25,15747.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15751.12,15751.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15751.109,15755.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15755.25,15759.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15767.10,15767.137 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15767.137,15771.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15771.23,15775.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15779.10,15781.120 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15781.120,15785.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15785.23,15789.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15793.10,15793.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15793.127,15801.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15801.34,15804.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15804.81,15807.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15807.49,15809.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15810.13,15810.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15814.12,15816.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15816.108,15820.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15820.25,15824.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15828.12,15828.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15828.109,15832.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15832.25,15836.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15852.6,15854.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15854.109,15858.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15858.19,15862.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15866.6,15866.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15866.109,15870.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15870.19,15874.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15878.6,15878.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15878.54,15883.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15883.30,15888.126 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15888.126,15892.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15892.21,15896.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15900.8,15900.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15900.126,15904.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15904.21,15908.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15912.8,15914.144 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15914.144,15922.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15922.32,15925.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15925.57,15930.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15930.34,15935.127 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15935.127,15939.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15939.25,15943.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15947.12,15947.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15947.130,15951.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15951.25,15955.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15963.10,15963.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15963.66,15968.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15968.34,15973.141 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15973.141,15977.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15977.25,15981.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15985.12,15985.144 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15985.144,15989.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:15989.25,15993.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16005.8,16005.145 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16005.145,16009.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16009.21,16013.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16025.4,16025.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16025.99,16029.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16029.17,16033.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16041.2,16041.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16041.85,16045.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16045.15,16049.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16055.2,16057.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16057.83,16061.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16061.15,16065.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16069.2,16069.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16069.82,16077.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16077.26,16080.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16080.67,16085.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16085.28,16088.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16088.117,16090.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16096.4,16098.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16098.117,16102.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16102.17,16106.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16110.4,16110.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16110.116,16114.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16114.17,16118.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16122.4,16122.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16122.74,16127.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16127.28,16130.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16130.117,16135.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16135.30,16139.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16139.96,16144.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16144.32,16147.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16147.76,16149.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16151.10,16151.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16151.72,16153.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16155.10,16155.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16155.69,16157.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16163.8,16163.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16163.119,16168.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16168.32,16173.121 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16173.121,16177.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16177.23,16181.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16185.10,16185.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16185.126,16194.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16196.10,16198.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16198.123,16206.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16206.34,16211.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16211.87,16220.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16222.12,16222.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16222.87,16231.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16237.10,16237.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16237.129,16245.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16245.34,16248.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16248.63,16253.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16253.36,16258.106 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16258.106,16267.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16269.14,16269.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16269.106,16278.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16284.12,16284.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16284.65,16289.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16289.36,16294.110 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16294.110,16303.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16305.14,16305.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16305.110,16314.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16324.10,16324.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16324.125,16332.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16332.34,16337.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16337.89,16346.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16348.12,16348.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16348.89,16357.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16363.10,16365.132 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16365.132,16369.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16369.23,16373.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16377.10,16377.133 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16377.133,16381.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16381.23,16385.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16389.10,16389.124 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16389.124,16393.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16393.23,16397.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16401.10,16401.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16401.127,16409.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16409.34,16412.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16412.67,16415.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16415.49,16417.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16418.13,16418.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16426.10,16428.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16428.121,16432.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16432.23,16436.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16440.10,16440.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16440.130,16448.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16448.34,16451.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16451.69,16455.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16457.12,16457.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16457.59,16460.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16460.49,16462.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16463.13,16463.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16471.10,16471.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16471.120,16480.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16482.10,16482.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16482.120,16491.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16497.8,16497.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16497.107,16502.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16502.32,16505.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16505.78,16507.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16517.6,16517.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16517.103,16522.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16522.30,16526.79 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16526.79,16528.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16543.2,16543.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16543.67,16548.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16548.26,16551.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16551.87,16556.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16556.28,16560.75 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16560.75,16565.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16565.30,16570.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16570.86,16574.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16574.21,16578.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16582.8,16582.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16582.85,16586.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16586.21,16590.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16598.6,16598.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16598.88,16603.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16603.30,16606.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16606.86,16608.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16610.8,16610.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16610.79,16613.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16613.45,16615.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16616.9,16616.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16624.6,16624.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16624.86,16626.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16628.6,16628.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16628.83,16633.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16633.30,16638.104 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16638.104,16642.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16642.21,16646.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16650.8,16650.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16650.109,16658.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16658.32,16661.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16661.61,16664.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16664.47,16666.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16667.11,16667.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16675.8,16675.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16675.117,16683.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16683.32,16686.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16686.70,16689.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16689.47,16691.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16692.11,16692.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16700.8,16702.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16702.99,16706.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16706.21,16710.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16714.8,16714.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16714.101,16722.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16722.32,16725.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16725.60,16728.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16728.47,16730.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16731.11,16731.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16739.8,16739.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16739.104,16747.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16747.32,16750.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16750.58,16755.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16755.33,16762.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16762.67,16764.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16766.12,16766.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16766.72,16768.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16770.12,16770.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16770.69,16772.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16774.12,16774.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16774.66,16776.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16786.8,16786.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16786.103,16794.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16794.32,16797.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16797.64,16801.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16803.10,16803.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16803.61,16808.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16808.33,16815.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16815.67,16817.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16819.12,16819.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16819.72,16821.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16823.12,16823.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16823.69,16825.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16827.12,16827.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16827.66,16829.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16839.8,16839.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16839.107,16847.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16847.32,16850.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16850.62,16854.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16856.10,16856.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16856.61,16859.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16859.47,16861.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16862.11,16862.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16866.10,16866.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16866.63,16869.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16869.47,16871.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16872.11,16872.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16880.8,16880.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16880.91,16885.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16885.32,16888.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16888.85,16891.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16891.47,16893.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16894.11,16894.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16898.10,16898.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16898.90,16900.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16900.47,16902.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16903.11,16903.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16906.10,16906.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16906.93,16908.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16908.47,16910.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16911.11,16911.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16922.6,16924.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16924.105,16928.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16928.19,16932.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16936.6,16936.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16936.110,16945.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16947.6,16947.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16947.77,16952.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16952.30,16955.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16955.74,16957.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16959.8,16959.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16959.70,16961.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16963.8,16963.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16963.67,16965.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16971.6,16971.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16971.84,16976.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16976.30,16979.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16979.84,16984.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16984.32,16988.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16988.85,16990.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16992.10,16994.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16994.107,16998.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:16998.23,17002.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17006.10,17006.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17006.103,17010.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17010.23,17014.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17018.10,17018.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17018.94,17026.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17026.34,17029.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17029.64,17032.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17032.49,17034.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17035.13,17035.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17039.12,17039.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17039.64,17042.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17042.49,17044.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17045.13,17045.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17049.12,17049.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17049.64,17052.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17052.49,17054.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17055.13,17055.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17063.10,17063.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17063.98,17072.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17074.10,17074.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17074.75,17076.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17082.8,17082.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17082.76,17087.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17087.32,17091.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17091.78,17093.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17095.10,17097.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17097.100,17101.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17101.23,17105.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17109.10,17109.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17109.96,17113.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17113.23,17117.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17121.10,17121.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17121.87,17129.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17129.34,17132.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17132.64,17135.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17135.49,17137.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17138.13,17138.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17142.12,17142.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17142.64,17145.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17145.49,17147.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17148.13,17148.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17152.12,17152.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17152.64,17155.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17155.49,17157.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17158.13,17158.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17166.10,17166.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17166.91,17175.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17177.10,17177.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17177.68,17179.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17185.8,17185.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17185.81,17190.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17190.32,17194.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17194.82,17196.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17198.10,17198.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17198.71,17200.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17202.10,17204.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17204.104,17208.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17208.23,17212.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17216.10,17216.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17216.100,17220.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17220.23,17224.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17228.10,17228.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17228.91,17236.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17236.34,17239.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17239.64,17242.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17242.49,17244.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17245.13,17245.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17249.12,17249.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17249.64,17252.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17252.49,17254.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17255.13,17255.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17259.12,17259.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17259.64,17262.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17262.49,17264.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17265.13,17265.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17273.10,17273.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17273.95,17282.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17296.4,17296.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17296.85,17301.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17301.28,17305.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17305.73,17310.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17310.30,17315.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17315.86,17319.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17319.21,17323.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17327.8,17327.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17327.85,17331.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17331.21,17335.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17343.6,17343.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17343.76,17345.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17347.6,17347.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17347.76,17349.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17351.6,17351.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17351.81,17356.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17356.30,17361.104 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17361.104,17365.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17365.21,17369.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17373.8,17373.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17373.109,17381.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17381.32,17384.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17384.61,17387.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17387.47,17389.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17390.11,17390.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17398.8,17398.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17398.117,17406.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17406.32,17409.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17409.70,17412.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17412.47,17414.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17415.11,17415.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17423.8,17425.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17425.99,17429.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17429.21,17433.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17437.8,17437.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17437.101,17445.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17445.32,17448.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17448.60,17451.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17451.47,17453.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17454.11,17454.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17462.8,17462.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17462.104,17470.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17470.32,17473.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17473.58,17478.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17478.33,17485.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17485.67,17487.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17489.12,17489.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17489.72,17491.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17493.12,17493.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17493.69,17495.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17497.12,17497.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17497.66,17499.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17509.8,17509.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17509.103,17517.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17517.32,17520.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17520.64,17524.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17526.10,17526.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17526.61,17531.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17531.33,17538.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17538.67,17540.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17542.12,17542.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17542.72,17544.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17546.12,17546.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17546.69,17548.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17550.12,17550.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17550.66,17552.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17562.8,17562.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17562.107,17570.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17570.32,17573.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17573.62,17577.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17579.10,17579.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17579.61,17582.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17582.47,17584.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17585.11,17585.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17589.10,17589.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17589.63,17592.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17592.47,17594.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17595.11,17595.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17603.8,17603.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17603.91,17608.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17608.32,17611.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17611.85,17614.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17614.47,17616.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17617.11,17617.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17621.10,17621.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17621.90,17623.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17623.47,17625.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17626.11,17626.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17629.10,17629.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17629.93,17631.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17631.47,17633.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17634.11,17634.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17645.6,17647.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17647.103,17651.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17651.19,17655.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17659.6,17659.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17659.108,17668.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17670.6,17670.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17670.75,17675.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17675.30,17678.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17678.74,17680.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17682.8,17682.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17682.70,17684.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17686.8,17686.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17686.67,17688.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17694.6,17694.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17694.82,17699.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17699.30,17702.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17702.84,17707.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17707.32,17711.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17711.85,17713.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17715.10,17717.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17717.107,17721.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17721.23,17725.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17729.10,17729.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17729.103,17733.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17733.23,17737.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17741.10,17741.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17741.94,17749.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17749.34,17752.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17752.64,17755.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17755.49,17757.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17758.13,17758.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17762.12,17762.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17762.64,17765.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17765.49,17767.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17768.13,17768.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17772.12,17772.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17772.64,17775.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17775.49,17777.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17778.13,17778.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17786.10,17786.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17786.98,17795.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17797.10,17797.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17797.75,17799.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17805.8,17805.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17805.76,17810.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17810.32,17814.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17814.78,17816.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17818.10,17820.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17820.100,17824.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17824.23,17828.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17832.10,17832.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17832.96,17836.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17836.23,17840.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17844.10,17844.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17844.87,17852.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17852.34,17855.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17855.64,17858.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17858.49,17860.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17861.13,17861.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17865.12,17865.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17865.64,17868.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17868.49,17870.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17871.13,17871.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17875.12,17875.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17875.64,17878.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17878.49,17880.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17881.13,17881.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17889.10,17889.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17889.91,17898.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17900.10,17900.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17900.68,17902.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17908.8,17908.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17908.81,17913.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17913.32,17917.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17917.82,17919.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17921.10,17921.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17921.71,17923.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17925.10,17927.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17927.104,17931.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17931.23,17935.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17939.10,17939.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17939.100,17943.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17943.23,17947.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17951.10,17951.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17951.91,17959.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17959.34,17962.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17962.64,17965.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17965.49,17967.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17968.13,17968.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17972.12,17972.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17972.64,17975.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17975.49,17977.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17978.13,17978.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17982.12,17982.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17982.64,17985.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17985.49,17987.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17988.13,17988.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17996.10,17996.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:17996.95,18005.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18024.2,18024.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18024.62,18029.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18029.26,18035.110 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18035.110,18039.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18039.17,18043.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18047.4,18047.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18047.106,18051.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18051.17,18055.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18059.4,18059.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18059.110,18063.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18063.17,18067.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18071.4,18071.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18071.72,18074.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18074.41,18076.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18077.5,18077.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18081.4,18083.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18083.106,18092.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18094.4,18094.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18094.108,18102.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18102.28,18105.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18105.53,18110.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18110.30,18114.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18114.74,18116.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18118.8,18118.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18118.66,18120.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18122.8,18124.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18124.91,18133.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18135.8,18135.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18135.94,18144.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18146.8,18146.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18146.91,18155.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18165.4,18165.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18165.106,18174.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18176.4,18176.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18176.112,18185.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18187.4,18187.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18187.85,18189.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18189.19,18191.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18192.5,18192.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18195.4,18195.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18195.73,18200.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18200.28,18203.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18203.72,18205.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18207.6,18207.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18207.68,18209.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18211.6,18211.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18211.65,18213.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18225.2,18227.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18227.71,18235.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18235.26,18240.95 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18240.95,18244.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18244.17,18248.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18252.4,18252.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18252.94,18256.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18256.17,18260.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18264.4,18264.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18264.50,18269.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18269.28,18274.106 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18274.106,18278.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18278.19,18282.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18286.6,18286.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18286.108,18294.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18294.30,18297.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18297.67,18301.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18307.6,18307.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18307.115,18315.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18315.30,18318.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18318.60,18323.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18323.32,18329.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18329.111,18333.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18333.23,18337.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18341.10,18341.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18341.107,18349.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18349.34,18354.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18354.89,18363.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18365.12,18365.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18365.89,18374.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18376.12,18376.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18376.90,18385.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18391.10,18391.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18391.76,18396.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18396.34,18399.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18399.78,18401.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18403.12,18403.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18403.74,18405.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18407.12,18407.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18407.71,18409.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18415.10,18415.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18415.72,18420.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18420.34,18425.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18425.90,18434.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18436.12,18436.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18436.92,18445.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18447.12,18447.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18447.91,18456.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18466.8,18466.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18466.67,18470.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18476.6,18476.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18476.107,18484.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18484.30,18487.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18487.60,18492.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18492.32,18498.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18498.111,18502.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18502.23,18506.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18510.10,18510.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18510.107,18518.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18518.34,18523.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18523.89,18532.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18534.12,18534.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18534.89,18543.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18545.12,18545.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18545.90,18554.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18560.10,18560.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18560.76,18565.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18565.34,18568.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18568.78,18570.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18572.12,18572.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18572.74,18574.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18576.12,18576.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18576.71,18578.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18584.10,18584.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18584.72,18589.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18589.34,18594.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18594.90,18603.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18605.12,18605.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18605.92,18614.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18616.12,18616.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18616.91,18625.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18635.8,18635.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18635.53,18640.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18640.32,18646.105 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18646.105,18650.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18650.23,18654.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18658.10,18658.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18658.101,18666.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18666.34,18671.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18671.89,18680.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18682.12,18682.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18682.89,18691.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18693.12,18693.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18693.90,18702.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18708.10,18708.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18708.81,18712.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18714.10,18714.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18714.70,18719.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18719.34,18722.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18722.78,18724.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18726.12,18726.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18726.74,18728.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18730.12,18730.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18730.71,18732.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18738.10,18738.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18738.66,18743.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18743.34,18748.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18748.90,18757.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18759.12,18759.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18759.92,18768.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18770.12,18770.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18770.91,18779.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18793.6,18793.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18793.74,18797.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18799.6,18799.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18799.75,18801.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18803.6,18805.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18805.106,18809.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18809.19,18813.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18817.6,18817.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18817.105,18825.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18825.30,18828.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18828.65,18833.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18833.32,18836.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18836.80,18841.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18841.34,18847.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18847.102,18851.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18851.25,18855.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18859.12,18859.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18859.98,18863.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18863.25,18867.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18871.12,18871.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18871.89,18879.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18879.36,18882.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18882.66,18885.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18885.51,18887.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18888.15,18888.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18892.14,18892.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18892.66,18895.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18895.51,18897.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18898.15,18898.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18902.14,18902.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18902.66,18905.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18905.51,18907.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18908.15,18908.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18916.12,18916.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18916.70,18918.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18928.8,18928.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18928.66,18932.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18938.6,18938.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18938.82,18943.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18943.30,18949.116 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18949.116,18953.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18953.21,18957.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18961.8,18961.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18961.113,18965.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18965.21,18969.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18973.8,18973.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18973.120,18981.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18981.32,18984.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18984.56,18989.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18989.34,18994.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18994.101,18998.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:18998.25,19002.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19006.12,19006.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19006.97,19010.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19010.25,19014.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19018.12,19018.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19018.88,19026.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19026.36,19029.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19029.66,19032.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19032.51,19034.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19035.15,19035.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19039.14,19039.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19039.66,19042.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19042.51,19044.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19045.15,19045.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19049.14,19049.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19049.66,19052.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19052.51,19054.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19055.15,19055.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19063.12,19063.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19063.69,19065.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19071.10,19071.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19071.57,19076.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19076.34,19082.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19082.102,19086.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19086.25,19090.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19094.12,19094.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19094.98,19098.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19098.25,19102.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19106.12,19106.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19106.89,19114.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19114.36,19117.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19117.66,19120.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19120.51,19122.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19123.15,19123.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19127.14,19127.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19127.66,19130.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19130.51,19132.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19133.15,19133.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19137.14,19137.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19137.66,19140.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19140.51,19142.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19143.15,19143.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19151.12,19151.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19151.70,19153.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19159.10,19159.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19159.67,19163.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19169.8,19171.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19171.119,19175.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19175.21,19179.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19183.8,19183.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19183.115,19191.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19191.32,19196.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19196.87,19205.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19207.10,19207.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19207.87,19216.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19218.10,19218.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19218.88,19227.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19233.8,19235.115 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19235.115,19243.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19243.32,19248.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19248.97,19256.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19256.34,19261.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19261.83,19265.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19265.25,19269.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19273.12,19273.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19273.91,19277.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19277.25,19281.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19289.10,19289.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19289.93,19297.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19297.34,19302.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19302.82,19310.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19310.36,19315.117 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19315.117,19319.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19319.27,19323.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19327.14,19327.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19327.109,19335.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19335.38,19338.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19338.74,19343.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19343.40,19347.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19347.86,19349.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19351.18,19351.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19351.94,19353.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19353.55,19355.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19356.19,19356.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19359.18,19359.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19359.88,19363.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19369.16,19369.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19369.74,19374.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19374.40,19378.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19378.86,19380.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19382.18,19382.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19382.94,19384.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19384.55,19386.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19387.19,19387.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19390.18,19390.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19390.88,19394.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19408.12,19408.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19408.86,19412.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19412.25,19416.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19420.12,19420.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19420.90,19424.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19424.25,19428.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19432.12,19432.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19432.83,19436.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19436.25,19440.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19444.12,19444.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19444.90,19448.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19448.25,19452.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19460.10,19460.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19460.97,19468.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19468.34,19473.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19473.82,19477.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19477.25,19481.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19485.12,19485.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19485.91,19489.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19489.25,19493.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19501.10,19501.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19501.85,19509.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19509.34,19514.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19514.84,19518.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19518.25,19522.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19530.10,19530.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19530.97,19538.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19538.34,19543.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19543.83,19547.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19547.25,19551.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19555.12,19555.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19555.83,19559.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19559.25,19563.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19567.12,19567.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19567.81,19571.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19571.25,19575.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19583.10,19583.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19583.85,19591.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19591.34,19596.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19596.90,19600.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19600.25,19604.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19608.12,19608.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19608.91,19612.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19612.25,19616.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19620.12,19620.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19620.95,19624.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19624.25,19628.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19632.12,19632.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19632.88,19636.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19636.25,19640.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19648.10,19648.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19648.98,19656.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19656.34,19661.115 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19661.115,19665.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19665.25,19669.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19673.12,19673.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19673.97,19677.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19677.25,19681.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19685.12,19685.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19685.93,19689.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19689.25,19693.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19697.12,19697.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19697.90,19701.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19701.25,19705.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19709.12,19709.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19709.93,19713.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19713.25,19717.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19721.12,19721.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19721.106,19725.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19725.25,19729.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19733.12,19733.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19733.94,19737.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19737.25,19741.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19745.12,19745.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19745.87,19749.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19749.25,19753.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19757.12,19757.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19757.95,19761.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19761.25,19765.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19769.12,19769.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19769.103,19773.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19773.25,19777.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19781.12,19781.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19781.100,19785.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19785.25,19789.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19793.12,19793.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19793.97,19797.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19797.25,19801.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19813.8,19813.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19813.125,19817.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19817.21,19821.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19825.8,19827.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19827.118,19831.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19831.21,19835.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19839.8,19839.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19839.121,19843.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19843.21,19847.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19851.8,19851.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19851.88,19854.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19854.45,19856.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19857.9,19857.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19861.8,19861.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19861.84,19866.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19866.32,19869.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19869.76,19871.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19873.10,19873.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19873.72,19875.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19877.10,19877.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19877.69,19879.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19885.8,19885.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19885.86,19890.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19890.32,19895.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19895.96,19903.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19903.34,19906.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19906.56,19910.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19912.12,19912.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19912.61,19916.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19918.12,19918.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19918.58,19922.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19928.10,19928.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19928.95,19936.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19936.34,19941.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19941.97,19949.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19949.36,19952.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19952.75,19956.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19958.14,19958.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19958.75,19962.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19968.12,19968.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19968.93,19972.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19972.25,19976.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19984.10,19984.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19984.95,19988.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19988.23,19992.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19996.10,19996.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:19996.99,20004.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20004.34,20007.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20007.55,20011.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20021.8,20021.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20021.80,20026.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20026.32,20031.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20031.88,20040.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20042.10,20042.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20042.90,20051.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20053.10,20053.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20053.89,20062.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20068.8,20068.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20068.84,20072.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20082.4,20082.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20082.61,20086.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20088.4,20088.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20088.51,20092.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20098.2,20098.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20098.80,20106.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20106.26,20109.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20109.50,20115.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20115.28,20117.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20117.62,20119.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20120.6,20120.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20120.67,20122.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20124.6,20124.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20124.64,20126.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20131.4,20131.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20131.50,20136.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20136.28,20139.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20139.75,20141.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20143.6,20145.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20145.106,20149.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20149.19,20153.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20157.6,20157.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20157.105,20165.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20165.30,20168.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20168.65,20173.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20173.32,20176.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20176.80,20181.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20181.34,20187.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20187.102,20191.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20191.25,20195.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20199.12,20199.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20199.98,20203.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20203.25,20207.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20211.12,20211.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20211.89,20219.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20219.36,20222.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20222.66,20225.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20225.51,20227.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20228.15,20228.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20232.14,20232.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20232.66,20235.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20235.51,20237.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20238.15,20238.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20242.14,20242.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20242.66,20245.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20245.51,20247.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20248.15,20248.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20256.12,20256.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20256.70,20258.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20272.6,20272.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20272.82,20277.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20277.30,20283.123 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20283.123,20287.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20287.21,20291.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20295.8,20295.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20295.120,20299.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20299.21,20303.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20307.8,20307.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20307.127,20315.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20315.32,20318.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20318.56,20323.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20323.34,20328.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20328.101,20332.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20332.25,20336.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20340.12,20340.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20340.97,20344.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20344.25,20348.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20352.12,20352.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20352.88,20360.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20360.36,20363.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20363.66,20366.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20366.51,20368.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20369.15,20369.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20373.14,20373.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20373.66,20376.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20376.51,20378.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20379.15,20379.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20383.14,20383.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20383.66,20386.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20386.51,20388.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20389.15,20389.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20397.12,20397.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20397.69,20399.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20405.10,20405.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20405.57,20410.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20410.34,20416.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20416.102,20420.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20420.25,20424.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20428.12,20428.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20428.98,20432.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20432.25,20436.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20440.12,20440.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20440.89,20448.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20448.36,20451.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20451.66,20454.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20454.51,20456.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20457.15,20457.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20461.14,20461.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20461.66,20464.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20464.51,20466.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20467.15,20467.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20471.14,20471.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20471.66,20474.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20474.51,20476.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20477.15,20477.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20485.12,20485.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20485.70,20487.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20493.10,20493.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20493.67,20497.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20503.8,20505.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20505.119,20509.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20509.21,20513.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20517.8,20517.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20517.115,20525.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20525.32,20530.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20530.87,20539.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20541.10,20541.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20541.87,20550.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20552.10,20552.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20552.88,20561.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20567.8,20569.115 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20569.115,20577.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20577.32,20582.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20582.97,20590.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20590.34,20595.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20595.83,20599.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20599.25,20603.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20607.12,20607.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20607.91,20611.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20611.25,20615.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20623.10,20623.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20623.93,20631.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20631.34,20636.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20636.82,20644.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20644.36,20649.117 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20649.117,20653.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20653.27,20657.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20661.14,20661.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20661.109,20669.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20669.38,20672.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20672.74,20677.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20677.40,20681.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20681.86,20683.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20685.18,20685.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20685.94,20687.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20687.55,20689.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20690.19,20690.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20693.18,20693.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20693.88,20697.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20703.16,20703.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20703.74,20708.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20708.40,20712.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20712.86,20714.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20716.18,20716.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20716.94,20718.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20718.55,20720.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20721.19,20721.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20724.18,20724.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20724.88,20728.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20742.12,20742.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20742.86,20746.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20746.25,20750.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20754.12,20754.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20754.90,20758.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20758.25,20762.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20766.12,20766.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20766.83,20770.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20770.25,20774.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20778.12,20778.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20778.90,20782.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20782.25,20786.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20794.10,20794.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20794.97,20802.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20802.34,20807.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20807.82,20811.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20811.25,20815.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20819.12,20819.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20819.91,20823.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20823.25,20827.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20835.10,20835.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20835.85,20843.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20843.34,20848.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20848.84,20852.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20852.25,20856.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20864.10,20864.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20864.97,20872.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20872.34,20877.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20877.83,20881.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20881.25,20885.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20889.12,20889.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20889.83,20893.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20893.25,20897.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20901.12,20901.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20901.81,20905.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20905.25,20909.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20917.10,20917.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20917.85,20925.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20925.34,20930.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20930.90,20934.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20934.25,20938.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20942.12,20942.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20942.91,20946.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20946.25,20950.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20954.12,20954.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20954.95,20958.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20958.25,20962.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20966.12,20966.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20966.88,20970.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20970.25,20974.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20982.10,20982.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20982.98,20990.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20990.34,20995.115 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20995.115,20999.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:20999.25,21003.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21007.12,21007.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21007.97,21011.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21011.25,21015.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21019.12,21019.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21019.93,21023.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21023.25,21027.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21031.12,21031.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21031.90,21035.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21035.25,21039.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21043.12,21043.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21043.93,21047.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21047.25,21051.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21055.12,21055.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21055.106,21059.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21059.25,21063.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21067.12,21067.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21067.94,21071.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21071.25,21075.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21079.12,21079.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21079.87,21083.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21083.25,21087.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21091.12,21091.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21091.95,21095.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21095.25,21099.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21103.12,21103.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21103.103,21107.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21107.25,21111.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21115.12,21115.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21115.100,21119.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21119.25,21123.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21127.12,21127.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21127.97,21131.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21131.25,21135.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21147.8,21147.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21147.125,21151.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21151.21,21155.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21159.8,21159.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21159.88,21162.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21162.45,21164.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21165.9,21165.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21169.8,21169.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21169.84,21174.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21174.32,21177.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21177.76,21179.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21181.10,21181.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21181.72,21183.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21185.10,21185.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21185.69,21187.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21193.8,21193.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21193.80,21198.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21198.32,21203.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21203.88,21212.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21214.10,21214.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21214.90,21223.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21225.10,21225.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21225.89,21234.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21240.8,21240.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21240.81,21245.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21245.32,21249.66 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21249.66,21251.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21253.10,21255.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21255.99,21259.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21259.23,21263.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21267.10,21267.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21267.96,21276.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21278.10,21278.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21278.96,21287.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21293.8,21293.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21293.88,21298.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21298.32,21302.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21302.72,21304.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21306.10,21308.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21308.102,21317.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21319.10,21319.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21319.102,21328.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21342.4,21342.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21342.47,21348.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21348.28,21350.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21350.62,21352.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21353.6,21353.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21353.67,21355.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21357.6,21357.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21357.64,21359.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21368.2,21368.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21368.79,21372.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21372.15,21376.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21382.2,21384.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21384.74,21392.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21392.26,21395.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21395.57,21399.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21401.4,21401.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21401.55,21405.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21411.2,21411.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21411.73,21419.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21419.26,21424.118 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21424.118,21432.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21432.28,21435.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21435.59,21439.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21441.6,21441.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21441.57,21445.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21451.4,21451.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21451.126,21455.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21455.17,21459.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21463.4,21465.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21465.116,21469.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21469.17,21473.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21477.4,21477.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21477.108,21485.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21485.28,21488.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21488.59,21492.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21494.6,21494.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21494.57,21498.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21500.6,21500.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21500.61,21504.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21510.4,21512.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21512.114,21516.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21516.17,21520.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21524.4,21524.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21524.112,21532.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21532.28,21535.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21535.50,21539.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21541.6,21541.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21541.55,21545.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21547.6,21547.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21547.52,21551.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21561.2,21561.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21561.69,21569.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21569.26,21572.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21572.57,21576.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21578.4,21578.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21578.55,21582.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21584.4,21584.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21584.59,21588.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21594.2,21594.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21594.69,21598.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21598.15,21602.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21606.2,21606.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21606.79,21614.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21614.26,21619.118 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21619.118,21627.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21627.28,21630.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21630.59,21634.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21636.6,21636.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21636.57,21640.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21646.4,21646.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21646.126,21650.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21650.17,21654.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21658.4,21660.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21660.104,21664.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21664.17,21668.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21672.4,21672.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21672.99,21676.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21676.17,21680.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21684.4,21684.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21684.85,21688.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21688.17,21692.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21696.4,21698.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21698.116,21702.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21702.17,21706.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21710.4,21710.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21710.108,21718.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21718.28,21721.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21721.59,21725.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21727.6,21727.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21727.57,21731.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21733.6,21733.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21733.61,21737.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21743.4,21745.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21745.114,21749.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21749.17,21753.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21757.4,21757.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21757.112,21765.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21765.28,21768.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21768.50,21772.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21774.6,21774.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21774.55,21778.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21780.6,21780.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21780.52,21784.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21790.4,21790.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21790.53,21795.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21795.28,21798.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21798.66,21803.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21803.30,21807.68 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21807.68,21812.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21812.32,21815.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21815.76,21817.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21819.10,21819.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21819.72,21821.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21823.10,21823.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21823.69,21825.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21831.8,21831.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21831.64,21836.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21836.32,21839.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21839.73,21844.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21844.34,21848.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21848.84,21850.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21852.12,21854.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21854.106,21858.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21858.25,21862.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21866.12,21866.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21866.102,21870.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21870.25,21874.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21878.12,21878.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21878.93,21886.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21886.36,21889.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21889.66,21892.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21892.51,21894.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21895.15,21895.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21899.14,21899.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21899.66,21902.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21902.51,21904.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21905.15,21905.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21909.14,21909.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21909.66,21912.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21912.51,21914.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21915.15,21915.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21923.12,21923.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21923.97,21932.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21934.12,21934.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21934.74,21936.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21942.10,21944.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21944.91,21948.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21948.23,21952.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21956.10,21956.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21956.92,21964.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21964.34,21967.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21967.62,21970.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21970.49,21972.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21973.13,21973.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21981.10,21981.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21981.95,21989.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21989.34,21992.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21992.60,21997.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:21997.35,22004.69 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22004.69,22006.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22008.14,22008.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22008.74,22010.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22012.14,22012.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22012.71,22014.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22016.14,22016.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22016.68,22018.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22028.10,22028.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22028.73,22033.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22033.34,22036.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22036.82,22038.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22038.49,22040.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22041.13,22041.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22044.12,22044.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22044.82,22046.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22046.49,22048.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22049.13,22049.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22052.12,22052.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22052.82,22055.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22055.49,22057.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22058.13,22058.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22066.10,22068.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22068.107,22072.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22072.23,22076.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22080.10,22080.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22080.114,22084.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22084.23,22088.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22092.10,22092.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22092.117,22096.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22096.23,22100.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22104.10,22106.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22106.97,22110.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22110.23,22114.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22118.10,22118.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22118.98,22127.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22129.10,22129.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22129.106,22137.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22137.34,22140.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22140.64,22143.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22143.49,22145.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22146.13,22146.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22150.12,22150.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22150.64,22153.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22153.49,22155.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22156.13,22156.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22160.12,22160.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22160.64,22163.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22163.49,22165.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22166.13,22166.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22174.10,22174.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22174.102,22182.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22182.34,22185.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22185.63,22188.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22188.49,22190.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22191.13,22191.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22199.10,22199.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22199.76,22204.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22204.34,22208.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22208.87,22210.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22212.12,22214.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22214.109,22218.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22218.25,22222.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22226.12,22226.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22226.105,22230.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22230.25,22234.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22238.12,22238.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22238.96,22246.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22246.36,22249.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22249.66,22252.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22252.51,22254.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22255.15,22255.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22259.14,22259.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22259.66,22262.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22262.51,22264.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22265.15,22265.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22269.14,22269.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22269.66,22272.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22272.51,22274.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22275.15,22275.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22283.12,22283.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22283.100,22292.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22294.12,22294.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22294.77,22296.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22302.10,22302.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22302.75,22307.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22307.34,22310.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22310.84,22312.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22312.49,22314.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22315.13,22315.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22318.12,22318.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22318.84,22320.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22320.49,22322.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22323.13,22323.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22330.10,22330.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22330.81,22332.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22332.25,22334.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22335.11,22335.40 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22338.10,22338.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22338.68,22343.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22343.34,22347.80 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22347.80,22349.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22351.12,22353.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22353.102,22357.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22357.25,22361.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22365.12,22365.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22365.98,22369.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22369.25,22373.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22377.12,22377.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22377.89,22385.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22385.36,22388.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22388.66,22391.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22391.51,22393.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22394.15,22394.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22398.14,22398.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22398.66,22401.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22401.51,22403.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22404.15,22404.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22408.14,22408.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22408.66,22411.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22411.51,22413.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22414.15,22414.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22422.12,22422.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22422.93,22431.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22433.12,22433.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22433.70,22435.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22441.10,22441.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22441.72,22446.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22446.34,22449.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22449.83,22451.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22453.12,22453.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22453.76,22456.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22456.49,22458.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22459.13,22459.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22467.10,22469.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22469.89,22473.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22473.23,22477.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22481.10,22481.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22481.93,22489.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22489.34,22492.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22492.66,22496.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22498.12,22498.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22498.63,22503.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22503.35,22510.69 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22510.69,22512.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22514.14,22514.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22514.74,22516.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22518.14,22518.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22518.71,22520.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22522.14,22522.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22522.68,22524.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22534.10,22534.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22534.97,22542.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22542.34,22545.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22545.64,22549.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22551.12,22551.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22551.63,22554.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22554.49,22556.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22557.13,22557.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22561.12,22561.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22561.65,22564.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22564.49,22566.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22567.13,22567.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22575.10,22575.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22575.65,22580.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22580.34,22583.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22583.75,22585.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22585.49,22587.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22588.13,22588.34 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22591.12,22591.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22591.76,22593.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22593.49,22595.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22596.13,22596.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22599.12,22599.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22599.75,22601.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22601.49,22603.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22604.13,22604.34 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22607.12,22607.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22607.76,22609.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22609.49,22611.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22612.13,22612.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22615.12,22615.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22615.75,22618.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22618.49,22620.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22621.13,22621.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22629.10,22629.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22629.73,22634.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22634.34,22638.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22638.84,22640.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22642.12,22642.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22642.73,22644.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22646.12,22648.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22648.106,22652.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22652.25,22656.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22660.12,22660.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22660.102,22664.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22664.25,22668.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22672.12,22672.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22672.93,22680.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22680.36,22683.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22683.66,22686.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22686.51,22688.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22689.15,22689.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22693.14,22693.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22693.66,22696.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22696.51,22698.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22699.15,22699.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22703.14,22703.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22703.66,22706.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22706.51,22708.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22709.15,22709.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22717.12,22717.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22717.97,22726.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22732.10,22732.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22732.84,22737.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22737.34,22740.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22740.87,22743.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22743.49,22745.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22746.13,22746.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22750.12,22750.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22750.92,22752.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22752.49,22754.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22755.13,22755.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22758.12,22758.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22758.95,22760.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22760.49,22762.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22763.13,22763.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22782.4,22784.128 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22784.128,22788.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22788.17,22792.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22796.4,22796.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22796.114,22804.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22804.28,22807.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22807.57,22811.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22823.2,22825.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22825.86,22833.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22833.26,22836.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22836.50,22841.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22841.28,22846.106 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22846.106,22850.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22850.19,22854.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22858.6,22858.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22858.108,22862.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22862.19,22866.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22870.6,22870.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22870.115,22878.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22878.30,22881.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22881.60,22886.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22886.32,22892.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22892.111,22896.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22896.23,22900.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22904.10,22904.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22904.107,22912.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22912.34,22917.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22917.89,22926.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22928.12,22928.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22928.89,22937.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22939.12,22939.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22939.90,22948.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22954.10,22954.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22954.76,22959.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22959.34,22962.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22962.78,22964.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22966.12,22966.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22966.74,22968.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22970.12,22970.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22970.71,22972.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22978.10,22978.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22978.72,22983.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22983.34,22988.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22988.90,22997.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22999.12,22999.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:22999.92,23008.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23010.12,23010.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23010.91,23019.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23033.6,23033.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23033.107,23041.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23041.30,23044.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23044.60,23049.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23049.32,23055.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23055.111,23059.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23059.23,23063.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23067.10,23067.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23067.107,23075.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23075.34,23080.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23080.89,23089.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23091.12,23091.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23091.89,23100.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23102.12,23102.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23102.90,23111.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23117.10,23117.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23117.76,23122.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23122.34,23125.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23125.78,23127.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23129.12,23129.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23129.74,23131.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23133.12,23133.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23133.71,23135.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23141.10,23141.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23141.72,23146.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23146.34,23151.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23151.90,23160.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23162.12,23162.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23162.92,23171.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23173.12,23173.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23173.91,23182.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23192.8,23192.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23192.53,23197.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23197.32,23203.105 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23203.105,23207.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23207.23,23211.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23215.10,23215.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23215.101,23223.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23223.34,23228.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23228.89,23237.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23239.12,23239.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23239.89,23248.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23250.12,23250.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23250.90,23259.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23265.10,23265.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23265.70,23270.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23270.34,23273.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23273.78,23275.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23277.12,23277.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23277.74,23279.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23281.12,23281.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23281.71,23283.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23289.10,23289.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23289.66,23294.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23294.34,23299.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23299.90,23308.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23310.12,23310.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23310.92,23319.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23321.12,23321.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23321.91,23330.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23352.2,23352.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23352.94,23356.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23356.15,23360.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23365.2,23365.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23365.58,23370.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23370.26,23373.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23373.78,23375.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23377.4,23377.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23377.74,23379.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23381.4,23381.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23381.74,23383.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23385.4,23385.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23385.73,23387.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23387.41,23389.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23390.5,23390.32 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23393.4,23393.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23393.79,23395.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23395.41,23397.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23398.5,23398.37 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23401.4,23401.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23401.69,23403.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23405.4,23405.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23405.75,23407.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23409.4,23409.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23409.68,23411.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23413.4,23413.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23413.72,23415.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23422.2,23422.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23422.58,23427.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23427.26,23432.114 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23432.114,23436.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23436.17,23440.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23444.4,23444.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23444.107,23452.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23452.28,23455.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23455.53,23458.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23458.43,23460.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23461.7,23461.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23474.2,23474.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23474.63,23479.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23479.26,23485.107 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23485.107,23489.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23489.17,23493.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23497.4,23497.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23497.106,23501.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23501.17,23505.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23509.4,23511.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23511.101,23515.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23515.17,23519.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23523.4,23523.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23523.102,23532.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23534.4,23534.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23534.103,23543.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23545.4,23545.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23545.73,23550.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23550.28,23553.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23553.72,23555.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23557.6,23557.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23557.68,23559.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23561.6,23561.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23561.65,23563.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23569.4,23569.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23569.69,23574.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23574.28,23579.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23579.84,23588.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23590.6,23590.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23590.86,23599.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23601.6,23601.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23601.85,23610.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23622.2,23624.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23624.85,23628.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23628.15,23632.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23636.2,23636.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23636.84,23644.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23644.26,23649.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23649.101,23653.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23653.17,23657.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23661.4,23661.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23661.100,23669.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23669.28,23674.71 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23674.71,23678.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23678.19,23682.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23686.6,23686.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23686.78,23694.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23694.30,23697.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23697.61,23701.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23703.8,23703.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23703.59,23707.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23709.8,23709.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23709.63,23713.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23728.2,23728.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23728.68,23733.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23733.26,23737.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23737.90,23739.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23739.19,23741.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23742.5,23742.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23745.4,23745.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23745.78,23750.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23750.28,23753.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23753.72,23755.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23757.6,23757.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23757.68,23759.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23761.6,23761.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23761.65,23763.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23769.4,23771.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23771.105,23775.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23775.17,23779.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23783.4,23785.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23785.118,23793.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23793.28,23796.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23796.54,23801.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23801.30,23804.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23804.72,23806.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23806.45,23808.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23809.9,23809.31 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23816.6,23816.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23816.58,23819.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23819.43,23821.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23822.7,23822.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23826.6,23826.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23826.69,23831.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23831.30,23834.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23834.83,23837.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23837.45,23839.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23840.9,23840.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23844.8,23844.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23844.88,23846.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23846.45,23848.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23849.9,23849.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23852.8,23852.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23852.91,23854.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23854.45,23856.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23857.9,23857.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23868.4,23868.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23868.114,23876.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23876.28,23879.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23879.58,23883.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23885.6,23885.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23885.57,23888.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23888.43,23890.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23891.7,23891.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23895.6,23895.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23895.59,23898.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23898.43,23900.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23901.7,23901.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23914.2,23914.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23914.66,23919.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23919.26,23923.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23923.84,23925.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23925.50,23927.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23928.5,23928.46 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23931.4,23933.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23933.99,23941.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23941.28,23944.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23944.50,23948.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23950.6,23950.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23950.55,23954.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23956.6,23956.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23956.52,23960.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23966.4,23966.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23966.96,23974.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23974.28,23977.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23977.50,23981.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23983.6,23983.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23983.55,23987.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23989.6,23989.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23989.52,23993.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23999.4,23999.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:23999.76,24001.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24003.4,24003.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24003.74,24005.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24012.2,24012.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24012.54,24015.39 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24015.39,24017.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24018.3,24018.26 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24023.2,24023.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24023.60,24028.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24028.26,24034.99 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24034.99,24038.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24038.17,24042.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24046.4,24046.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24046.100,24055.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24057.4,24057.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24057.101,24066.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24068.4,24068.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24068.73,24070.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24072.4,24072.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24072.79,24077.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24077.28,24082.134 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24082.134,24086.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24086.19,24090.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24094.6,24094.133 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24094.133,24098.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24098.19,24102.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24106.6,24106.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24106.87,24108.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24110.6,24110.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24110.77,24112.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24114.6,24114.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24114.84,24116.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24118.6,24118.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24118.84,24120.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24122.6,24122.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24122.79,24124.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24130.4,24130.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24130.71,24135.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24135.28,24138.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24138.72,24140.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24142.6,24142.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24142.68,24144.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24146.6,24146.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24146.65,24148.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24154.4,24156.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24156.99,24160.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24160.17,24164.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24168.4,24168.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24168.100,24172.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24172.17,24176.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24186.2,24188.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24188.77,24196.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24196.26,24201.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24201.78,24205.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24205.17,24209.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24213.4,24213.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24213.81,24217.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24217.17,24221.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24225.4,24225.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24225.48,24229.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24231.4,24231.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24231.48,24235.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24237.4,24239.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24239.81,24243.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24243.17,24247.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24251.4,24251.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24251.78,24255.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24255.17,24259.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24263.4,24263.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24263.79,24267.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24267.17,24271.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24275.4,24275.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24275.81,24279.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24279.17,24283.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24287.4,24289.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24289.74,24293.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24293.17,24297.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24301.4,24301.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24301.77,24305.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24305.17,24309.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24313.4,24313.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24313.47,24317.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24323.2,24323.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24323.72,24327.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24327.15,24331.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24335.2,24335.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24335.66,24339.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24339.15,24343.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24347.2,24347.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24347.69,24355.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24355.26,24358.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24358.55,24363.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24363.28,24369.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24369.98,24377.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24377.30,24382.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24382.82,24386.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24386.21,24390.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24394.8,24394.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24394.85,24398.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24398.21,24402.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24406.8,24406.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24406.52,24410.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24412.8,24412.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24412.52,24416.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24418.8,24420.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24420.85,24424.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24424.21,24428.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24432.8,24432.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24432.82,24436.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24436.21,24440.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24444.8,24444.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24444.83,24448.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24448.21,24452.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24456.8,24456.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24456.85,24460.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24460.21,24464.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24468.8,24470.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24470.78,24474.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24474.21,24478.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24482.8,24482.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24482.81,24486.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24486.21,24490.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24494.8,24494.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24494.51,24498.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24504.6,24504.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24504.103,24513.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24515.6,24515.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24515.101,24524.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24526.6,24526.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24526.71,24528.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24538.2,24538.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24538.71,24542.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24542.15,24546.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24550.2,24550.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24550.80,24554.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24554.15,24558.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24564.2,24566.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24566.83,24570.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24570.15,24574.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24578.2,24578.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24578.82,24586.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24586.26,24589.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24589.64,24592.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24592.41,24594.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24595.5,24595.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24604.2,24604.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24604.61,24609.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24609.26,24612.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24612.70,24617.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24617.28,24622.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24622.90,24626.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24626.19,24630.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24634.6,24634.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24634.91,24638.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24638.19,24642.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24650.4,24652.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24652.110,24661.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24663.4,24663.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24663.99,24672.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24674.4,24674.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24674.106,24682.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24682.28,24685.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24685.55,24689.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24695.4,24695.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24695.79,24700.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24700.28,24705.107 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24705.107,24713.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24713.30,24716.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24716.57,24719.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24719.45,24721.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24722.9,24722.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24730.6,24730.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24730.115,24734.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24734.19,24738.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24742.6,24744.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24744.103,24753.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24755.6,24755.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24755.111,24759.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24759.19,24763.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24767.6,24769.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24769.118,24773.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24773.19,24777.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24781.6,24781.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24781.117,24785.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24785.19,24789.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24797.4,24797.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24797.70,24802.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24802.28,24807.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24807.91,24811.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24811.19,24815.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24819.6,24819.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24819.89,24827.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24827.30,24830.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24830.58,24833.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24833.45,24835.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24836.9,24836.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24844.6,24844.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24844.89,24852.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24852.30,24855.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24855.58,24858.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24858.45,24860.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24861.9,24861.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24873.4,24873.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24873.78,24878.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24878.28,24883.105 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24883.105,24887.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24887.19,24891.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24895.6,24895.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24895.99,24904.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24906.6,24906.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24906.99,24915.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24917.6,24917.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24917.104,24926.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24938.2,24940.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24940.64,24948.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24948.26,24951.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24951.64,24955.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24957.4,24959.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24959.72,24968.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24970.4,24970.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24970.79,24979.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24985.2,24985.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24985.65,24993.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24993.26,24996.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:24996.52,25000.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25002.4,25002.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25002.67,25006.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25008.4,25010.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25010.93,25014.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25014.17,25018.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25022.4,25022.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25022.97,25026.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25026.17,25030.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25034.4,25034.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25034.70,25039.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25039.28,25044.146 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25044.146,25048.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25048.19,25052.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25056.6,25056.150 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25056.150,25060.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25060.19,25064.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25072.4,25072.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25072.65,25077.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25077.28,25082.132 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25082.132,25086.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25086.19,25090.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25094.6,25094.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25094.130,25098.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25098.19,25102.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25106.6,25106.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25106.132,25110.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25110.19,25114.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25122.4,25122.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25122.57,25126.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25128.4,25130.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25130.99,25134.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25134.17,25138.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25142.4,25142.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25142.98,25146.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25146.17,25150.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25154.4,25156.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25156.72,25165.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25167.4,25167.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25167.79,25176.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25178.4,25180.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25180.94,25189.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25191.4,25191.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25191.90,25195.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25195.17,25199.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25203.4,25203.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25203.88,25207.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25207.17,25211.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25215.4,25215.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25215.87,25224.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25226.4,25228.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25228.94,25236.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25236.28,25239.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25239.58,25244.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25244.29,25249.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25249.62,25251.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25253.8,25253.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25253.67,25255.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25257.8,25257.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25257.64,25259.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25265.6,25267.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25267.77,25271.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25271.19,25275.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25279.6,25279.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25279.78,25287.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25287.30,25292.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25292.74,25300.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25300.32,25303.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25303.54,25307.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25309.10,25309.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25309.59,25313.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25315.10,25315.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25315.56,25319.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25325.8,25325.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25325.77,25329.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25329.21,25333.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25337.8,25339.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25339.87,25347.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25347.32,25350.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25350.54,25354.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25356.10,25356.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25356.59,25360.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25362.10,25362.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25362.56,25366.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25372.8,25372.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25372.91,25381.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25383.8,25385.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25385.85,25389.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25389.21,25393.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25397.8,25397.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25397.84,25405.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25405.32,25408.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25408.70,25411.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25411.47,25413.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25414.11,25414.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25426.6,25426.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25426.56,25431.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25431.30,25436.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25436.99,25444.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25444.32,25447.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25447.63,25450.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25450.47,25452.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25453.11,25453.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25457.10,25457.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25457.61,25461.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25463.10,25463.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25463.61,25467.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25473.8,25473.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25473.100,25477.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25477.21,25481.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25485.8,25485.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25485.96,25489.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25489.21,25493.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25497.8,25497.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25497.99,25501.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25501.21,25505.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25517.4,25517.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25517.93,25525.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25525.28,25530.77 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25530.77,25534.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25534.19,25538.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25542.6,25542.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25542.78,25550.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25550.30,25555.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25555.74,25563.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25563.32,25566.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25566.54,25570.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25572.10,25572.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25572.59,25576.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25578.10,25578.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25578.56,25582.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25588.8,25588.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25588.77,25592.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25592.21,25596.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25600.8,25602.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25602.87,25610.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25610.32,25613.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25613.54,25617.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25619.10,25619.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25619.59,25623.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25625.10,25625.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25625.56,25629.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25635.8,25635.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25635.91,25644.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25646.8,25648.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25648.85,25652.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25652.21,25656.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25660.8,25660.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25660.84,25668.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25668.32,25671.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25671.70,25674.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25674.47,25676.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25677.11,25677.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25689.6,25689.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25689.62,25694.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25694.30,25698.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25698.85,25700.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25702.8,25702.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25702.81,25704.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25706.8,25708.124 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25708.124,25716.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25716.32,25719.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25719.65,25722.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25722.47,25724.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25725.11,25725.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25733.8,25733.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25733.123,25737.9 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25739.8,25739.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25739.121,25743.9 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25745.8,25745.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25745.81,25750.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25750.32,25753.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25753.97,25758.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25758.34,25761.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25761.105,25763.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25765.12,25765.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25765.94,25767.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25769.12,25769.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25769.100,25771.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25777.10,25777.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25777.87,25781.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25783.10,25785.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25785.117,25793.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25793.34,25796.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25796.71,25800.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25802.12,25802.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25802.60,25806.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25808.12,25808.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25808.66,25812.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25818.10,25818.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25818.113,25826.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25826.34,25829.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25829.60,25833.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25835.12,25835.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25835.55,25839.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25845.10,25845.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25845.113,25853.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25853.34,25856.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25856.55,25860.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25862.12,25862.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25862.60,25866.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25868.12,25868.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25868.60,25872.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25874.12,25874.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25874.67,25878.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25880.12,25880.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25880.59,25884.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25890.10,25890.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25890.115,25898.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25898.34,25901.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25901.56,25905.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25919.6,25919.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25919.56,25924.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25924.30,25929.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25929.99,25937.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25937.32,25940.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25940.63,25943.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25943.47,25945.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25946.11,25946.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25950.10,25950.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25950.61,25954.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25956.10,25956.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25956.61,25960.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25966.8,25966.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25966.100,25970.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25970.21,25974.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25978.8,25978.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25978.96,25982.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25982.21,25986.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25990.8,25990.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25990.99,25994.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:25994.21,25998.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26014.2,26014.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26014.75,26022.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26022.26,26025.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26025.52,26029.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26031.4,26031.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26031.67,26035.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26037.4,26039.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26039.93,26043.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26043.17,26047.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26051.4,26051.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26051.97,26055.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26055.17,26059.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26063.4,26063.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26063.70,26068.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26068.28,26073.146 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26073.146,26077.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26077.19,26081.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26085.6,26085.150 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26085.150,26089.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26089.19,26093.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26101.4,26101.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26101.65,26106.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26106.28,26111.132 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26111.132,26115.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26115.19,26119.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26123.6,26123.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26123.130,26127.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26127.19,26131.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26135.6,26135.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26135.132,26139.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26139.19,26143.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26151.4,26151.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26151.57,26155.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26157.4,26159.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26159.75,26163.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26163.17,26167.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26171.4,26171.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26171.76,26179.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26179.28,26184.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26184.72,26192.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26192.30,26195.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26195.52,26199.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26201.8,26201.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26201.57,26205.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26207.8,26207.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26207.54,26211.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26217.6,26217.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26217.75,26221.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26221.19,26225.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26229.6,26231.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26231.85,26239.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26239.30,26242.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26242.52,26246.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26248.8,26248.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26248.57,26252.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26254.8,26254.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26254.54,26258.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26264.6,26264.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26264.89,26273.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26275.6,26277.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26277.83,26281.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26281.19,26285.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26289.6,26289.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26289.82,26297.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26297.30,26300.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26300.68,26303.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26303.45,26305.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26306.9,26306.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26318.4,26320.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26320.99,26324.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26324.17,26328.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26332.4,26332.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26332.98,26336.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26336.17,26340.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26344.4,26346.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26346.72,26355.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26357.4,26357.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26357.79,26366.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26368.4,26370.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26370.94,26379.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26381.4,26381.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26381.90,26385.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26385.17,26389.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26393.4,26393.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26393.88,26397.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26397.17,26401.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26405.4,26405.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26405.87,26414.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26416.4,26416.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26416.54,26421.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26421.28,26426.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26426.97,26434.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26434.30,26437.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26437.61,26440.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26440.45,26442.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26443.9,26443.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26447.8,26447.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26447.59,26451.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26453.8,26453.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26453.59,26457.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26463.6,26463.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26463.98,26467.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26467.19,26471.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26475.6,26475.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26475.94,26479.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26479.19,26483.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26487.6,26487.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26487.97,26491.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26491.19,26495.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26509.2,26511.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26511.104,26515.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26515.15,26519.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26523.2,26523.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26523.103,26527.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26527.15,26531.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26536.2,26536.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26536.72,26542.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26542.26,26544.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26544.62,26546.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26547.4,26547.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26547.67,26549.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26551.4,26551.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26551.64,26553.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26560.2,26562.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26562.70,26566.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26566.15,26570.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26574.2,26574.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26574.71,26582.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26582.26,26587.93 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26587.93,26591.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26591.17,26595.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26599.4,26599.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26599.92,26607.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26607.28,26610.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26610.69,26615.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26615.30,26618.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26618.119,26620.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26626.6,26628.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26628.119,26632.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26632.19,26636.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26640.6,26640.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26640.118,26644.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26644.19,26648.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26652.6,26652.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26652.76,26657.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26657.30,26660.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26660.119,26665.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26665.32,26669.98 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26669.98,26674.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26674.34,26677.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26677.78,26679.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26681.12,26681.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26681.74,26683.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26685.12,26685.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26685.71,26687.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26693.10,26693.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26693.121,26698.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26698.34,26703.123 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26703.123,26707.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26707.25,26711.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26715.12,26715.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26715.128,26724.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26726.12,26728.125 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26728.125,26736.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26736.36,26741.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26741.89,26750.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26752.14,26752.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26752.89,26761.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26767.12,26767.131 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26767.131,26775.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26775.36,26778.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26778.65,26783.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26783.38,26788.108 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26788.108,26797.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26799.16,26799.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26799.108,26808.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26814.14,26814.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26814.67,26819.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26819.38,26824.112 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26824.112,26833.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26835.16,26835.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26835.112,26844.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26854.12,26854.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26854.127,26862.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26862.36,26867.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26867.91,26876.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26878.14,26878.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26878.91,26887.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26893.12,26895.134 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26895.134,26899.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26899.25,26903.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26907.12,26907.135 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26907.135,26911.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26911.25,26915.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26919.12,26919.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26919.126,26923.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26923.25,26927.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26931.12,26931.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26931.129,26939.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26939.36,26942.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26942.69,26945.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26945.51,26947.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26948.15,26948.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26956.12,26958.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26958.123,26962.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26962.25,26966.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26970.12,26970.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26970.132,26978.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26978.36,26981.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26981.71,26985.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26987.14,26987.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26987.61,26990.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26990.51,26992.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:26993.15,26993.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27001.12,27001.122 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27001.122,27010.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27012.12,27012.122 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27012.122,27021.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27027.10,27027.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27027.109,27032.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27032.34,27035.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27035.80,27037.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27047.8,27047.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27047.105,27052.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27052.32,27056.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27056.81,27058.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27072.4,27074.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27074.99,27078.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27078.17,27082.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27086.4,27086.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27086.98,27094.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27094.28,27099.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27099.103,27103.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27103.19,27107.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27111.6,27111.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27111.102,27119.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27119.30,27124.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27124.73,27128.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27128.21,27132.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27136.8,27136.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27136.80,27144.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27144.32,27147.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27147.63,27151.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27153.10,27153.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27153.61,27157.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27159.10,27159.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27159.65,27163.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27177.4,27179.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27179.118,27183.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27183.17,27187.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27191.4,27191.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27191.117,27195.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27195.17,27199.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27208.2,27208.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27208.58,27213.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27213.26,27216.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27216.74,27221.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27221.28,27224.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27224.73,27226.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27228.6,27228.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27228.82,27230.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27232.6,27232.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27232.81,27234.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27240.4,27240.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27240.79,27245.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27245.28,27248.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27248.84,27250.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27252.6,27252.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27252.82,27254.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27254.43,27256.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27257.7,27257.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27260.6,27260.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27260.92,27262.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27264.6,27264.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27264.99,27266.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27272.4,27272.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27272.78,27277.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27277.28,27283.125 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27283.125,27287.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27287.19,27291.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27295.6,27295.124 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27295.124,27299.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27299.19,27303.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27307.6,27309.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27309.102,27313.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27313.19,27317.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27321.6,27321.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27321.105,27325.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27325.19,27329.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27333.6,27335.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27335.102,27339.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27339.19,27343.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27347.6,27347.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27347.101,27356.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27358.6,27358.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27358.72,27360.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27362.6,27364.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27364.105,27368.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27368.19,27372.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27376.6,27376.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27376.102,27380.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27380.19,27384.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27388.6,27388.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27388.103,27392.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27392.19,27396.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27400.6,27400.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27400.105,27404.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27404.19,27408.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27412.6,27414.98 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27414.98,27418.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27418.19,27422.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27426.6,27426.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27426.101,27430.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27430.19,27434.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27442.4,27442.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27442.74,27444.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27444.50,27448.20 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27448.20,27450.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27451.6,27452.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27454.5,27454.33 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27457.4,27457.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27457.88,27459.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27461.4,27461.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27461.73,27463.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27465.4,27465.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27465.76,27470.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27470.28,27473.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27473.79,27475.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27477.6,27477.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27477.84,27479.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27481.6,27483.105 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27483.105,27485.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27491.4,27491.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27491.64,27496.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27496.27,27501.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27501.60,27503.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27505.6,27505.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27505.65,27507.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27509.6,27509.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27509.62,27511.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27517.4,27517.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27517.84,27519.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27521.4,27523.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27523.116,27527.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27527.17,27531.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27535.4,27535.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27535.115,27539.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27539.17,27543.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27547.4,27547.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27547.83,27552.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27552.28,27556.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27556.78,27558.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27560.6,27560.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27560.76,27562.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27564.6,27566.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27566.109,27574.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27574.30,27577.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27577.78,27582.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27582.32,27585.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27585.103,27587.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27589.10,27589.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27589.92,27591.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27593.10,27593.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27593.98,27595.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27601.8,27601.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27601.68,27605.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27607.8,27609.98 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27609.98,27617.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27617.32,27620.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27620.69,27624.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27626.10,27626.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27626.58,27630.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27632.10,27632.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27632.64,27636.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27642.8,27642.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27642.94,27650.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27650.32,27653.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27653.58,27657.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27659.10,27659.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27659.53,27663.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27669.8,27669.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27669.94,27677.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27677.32,27680.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27680.53,27684.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27686.10,27686.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27686.58,27690.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27692.10,27692.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27692.58,27696.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27698.10,27698.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27698.65,27702.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27704.10,27704.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27704.57,27708.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27714.8,27714.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27714.96,27722.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27722.32,27725.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27725.54,27729.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27739.6,27739.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27739.102,27748.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27754.4,27754.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27754.86,27756.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27756.41,27758.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27759.5,27759.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27762.4,27762.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27762.84,27767.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27767.28,27771.79 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27771.79,27773.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27775.6,27775.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27775.77,27777.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27779.6,27781.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27781.110,27789.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27789.30,27792.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27792.78,27797.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27797.32,27800.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27800.103,27802.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27804.10,27804.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27804.92,27806.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27808.10,27808.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27808.98,27810.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27816.8,27816.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27816.68,27820.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27822.8,27824.98 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27824.98,27832.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27832.32,27835.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27835.69,27839.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27841.10,27841.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27841.58,27845.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27847.10,27847.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27847.64,27851.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27857.8,27857.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27857.94,27865.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27865.32,27868.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27868.58,27872.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27874.10,27874.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27874.53,27878.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27884.8,27884.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27884.94,27892.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27892.32,27895.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27895.53,27899.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27901.10,27901.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27901.58,27905.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27907.10,27907.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27907.58,27911.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27913.10,27913.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27913.65,27917.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27919.10,27919.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27919.57,27923.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27929.8,27929.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27929.96,27937.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27937.32,27940.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27940.54,27944.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27954.6,27954.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27954.103,27963.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27969.4,27969.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27969.87,27971.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27971.41,27973.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27974.5,27974.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27977.4,27979.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27979.123,27987.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27987.28,27990.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27990.53,27993.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27993.43,27995.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:27996.7,27996.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28004.4,28004.140 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28004.140,28008.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28008.17,28012.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28022.2,28024.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28024.72,28032.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28032.26,28035.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28035.60,28040.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28040.28,28045.117 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28045.117,28049.7 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28051.6,28051.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28051.125,28055.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28055.19,28059.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28063.6,28063.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28063.125,28067.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28067.19,28071.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28075.6,28075.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28075.86,28077.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28079.6,28079.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28079.94,28084.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28084.30,28089.148 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28089.148,28093.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28093.21,28097.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28101.8,28101.152 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28101.152,28105.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28105.21,28109.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28117.6,28117.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28117.85,28119.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28121.6,28123.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28123.114,28127.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28127.19,28131.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28135.6,28135.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28135.110,28139.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28139.19,28143.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28147.6,28147.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28147.111,28151.7 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28153.6,28155.129 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28155.129,28159.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28159.19,28163.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28167.6,28167.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28167.121,28171.7 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28173.6,28175.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28175.118,28179.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28179.19,28183.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28187.6,28187.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28187.115,28196.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28198.6,28200.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28200.109,28204.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28204.19,28208.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28212.6,28212.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28212.108,28220.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28220.30,28223.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28223.64,28228.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28228.32,28232.10 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28236.8,28238.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28238.94,28242.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28242.21,28246.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28250.8,28250.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28250.96,28258.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28258.32,28261.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28261.64,28264.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28264.56,28266.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28267.11,28267.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28274.8,28274.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28274.94,28278.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28278.21,28282.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28294.4,28294.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28294.62,28298.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28300.4,28302.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28302.96,28311.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28313.4,28313.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28313.100,28317.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28317.17,28321.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28325.4,28325.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28325.55,28330.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28330.27,28335.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28335.60,28337.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28339.6,28339.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28339.65,28341.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28343.6,28343.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28343.62,28345.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28351.4,28351.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28351.66,28355.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28357.4,28357.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28357.58,28362.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28362.28,28368.100 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28368.100,28376.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28376.30,28381.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28381.89,28385.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28385.21,28389.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28393.8,28393.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28393.90,28397.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28397.21,28401.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28405.8,28405.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28405.60,28409.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28411.8,28411.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28411.60,28416.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28416.32,28421.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28421.92,28429.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28429.34,28432.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28432.56,28436.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28438.12,28438.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28438.61,28442.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28444.12,28444.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28444.58,28448.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28454.10,28454.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28454.100,28462.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28462.34,28465.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28465.56,28469.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28471.12,28471.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28471.61,28475.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28477.12,28477.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28477.58,28481.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28495.6,28495.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28495.108,28503.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28503.30,28506.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28506.56,28512.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28512.32,28514.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28514.66,28516.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28517.10,28517.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28517.71,28519.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28521.10,28521.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28521.68,28523.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28532.6,28532.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28532.97,28540.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28540.30,28545.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28545.89,28549.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28549.21,28553.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28557.8,28557.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28557.90,28561.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28561.21,28565.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28569.8,28569.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28569.88,28573.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28573.21,28577.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28581.8,28583.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28583.85,28592.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28594.8,28594.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28594.89,28602.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28602.32,28605.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28605.61,28608.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28608.47,28610.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28611.11,28611.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28619.8,28619.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28619.60,28624.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28624.32,28629.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28629.92,28637.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28637.34,28640.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28640.56,28644.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28646.12,28646.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28646.61,28650.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28652.12,28652.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28652.58,28656.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28662.10,28662.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28662.100,28670.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28670.34,28673.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28673.56,28677.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28679.12,28679.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28679.61,28683.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28685.12,28685.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28685.58,28689.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28703.6,28703.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28703.96,28711.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28711.30,28716.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28716.89,28720.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28720.21,28724.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28728.8,28728.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28728.90,28732.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28732.21,28736.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28740.8,28742.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28742.79,28751.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28753.8,28753.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28753.81,28762.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28764.8,28764.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28764.60,28769.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28769.32,28774.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28774.92,28782.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28782.34,28785.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28785.56,28789.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28791.12,28791.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28791.61,28795.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28797.12,28797.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28797.58,28801.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28807.10,28807.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28807.100,28815.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28815.34,28818.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28818.56,28822.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28824.12,28824.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28824.61,28828.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28830.12,28830.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28830.58,28834.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28848.6,28848.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28848.98,28856.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28856.30,28859.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28859.56,28863.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28865.8,28867.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28867.89,28871.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28871.21,28875.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28879.8,28879.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28879.90,28883.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28883.21,28887.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28891.8,28891.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28891.64,28895.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28897.8,28897.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28897.60,28902.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28902.32,28907.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28907.92,28915.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28915.34,28918.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28918.56,28922.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28924.12,28924.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28924.61,28928.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28930.12,28930.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28930.58,28934.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28940.10,28940.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28940.100,28948.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28948.34,28951.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28951.56,28955.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28957.12,28957.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28957.61,28961.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28963.12,28963.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28963.58,28967.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28981.6,28981.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28981.95,28989.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28989.30,28994.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:28994.78,29003.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29005.8,29005.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29005.80,29014.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29020.6,29020.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29020.97,29028.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29028.30,29031.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29031.56,29035.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29037.8,29037.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29037.64,29041.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29047.6,29047.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29047.96,29055.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29055.30,29060.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29060.72,29069.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29071.8,29071.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29071.74,29080.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29082.8,29082.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29082.55,29088.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29088.32,29090.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29090.66,29092.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29093.10,29093.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29093.71,29095.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29097.10,29097.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29097.68,29099.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29104.8,29104.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29104.60,29109.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29109.32,29114.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29114.103,29122.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29122.34,29125.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29125.56,29129.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29131.12,29131.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29131.61,29135.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29137.12,29137.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29137.58,29141.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29147.10,29147.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29147.92,29155.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29155.34,29158.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29158.56,29162.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29164.12,29164.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29164.61,29168.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29170.12,29170.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29170.58,29174.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29180.10,29180.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29180.100,29188.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29188.34,29191.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29191.56,29195.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29197.12,29197.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29197.61,29201.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29203.12,29203.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29203.58,29207.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29221.6,29221.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29221.98,29229.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29229.30,29232.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29232.56,29236.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29238.8,29238.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29238.64,29242.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29244.8,29244.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29244.55,29250.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29250.32,29252.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29252.66,29254.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29255.10,29255.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29255.71,29257.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29259.10,29259.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29259.68,29261.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29266.8,29266.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29266.60,29271.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29271.32,29276.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29276.103,29284.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29284.34,29287.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29287.56,29291.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29293.12,29293.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29293.61,29297.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29299.12,29299.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29299.58,29303.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29309.10,29309.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29309.92,29317.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29317.34,29320.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29320.56,29324.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29326.12,29326.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29326.61,29330.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29332.12,29332.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29332.58,29336.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29342.10,29342.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29342.100,29350.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29350.34,29353.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29353.56,29357.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29359.12,29359.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29359.61,29363.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29365.12,29365.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29365.58,29369.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29383.6,29383.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29383.99,29391.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29391.30,29394.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29394.63,29400.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29400.32,29402.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29402.67,29404.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29405.10,29405.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29405.72,29407.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29409.10,29409.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29409.69,29411.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29416.8,29418.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29418.86,29427.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29429.8,29429.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29429.88,29438.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29444.6,29444.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29444.101,29452.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29452.30,29455.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29455.56,29459.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29461.8,29461.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29461.63,29467.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29467.32,29469.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29469.67,29471.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29472.10,29472.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29472.72,29474.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29476.10,29476.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29476.69,29478.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29487.6,29487.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29487.72,29489.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29489.52,29491.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29492.7,29492.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29499.4,29501.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29501.82,29505.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29505.17,29509.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29513.4,29513.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29513.75,29517.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29517.17,29521.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29525.4,29525.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29525.72,29534.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29536.4,29538.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29538.73,29542.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29542.17,29546.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29550.4,29550.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29550.74,29558.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29558.28,29563.77 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29563.77,29567.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29567.19,29571.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29575.6,29575.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29575.78,29583.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29583.30,29586.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29586.64,29591.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29591.32,29595.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29595.87,29597.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29599.10,29599.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29599.83,29601.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29603.10,29605.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29605.126,29613.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29613.34,29616.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29616.67,29619.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29619.49,29621.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29622.13,29622.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29630.10,29630.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29630.125,29634.11 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29636.10,29636.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29636.123,29640.11 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29642.10,29642.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29642.83,29647.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29647.34,29650.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29650.99,29655.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29655.36,29658.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29658.107,29660.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29662.14,29662.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29662.96,29664.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29666.14,29666.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29666.102,29668.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29674.12,29674.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29674.89,29678.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29680.12,29682.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29682.119,29690.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29690.36,29693.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29693.73,29697.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29699.14,29699.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29699.62,29703.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29705.14,29705.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29705.68,29709.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29715.12,29715.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29715.115,29723.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29723.36,29726.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29726.62,29730.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29732.14,29732.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29732.57,29736.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29742.12,29742.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29742.115,29750.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29750.36,29753.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29753.57,29757.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29759.14,29759.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29759.62,29763.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29765.14,29765.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29765.62,29769.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29771.14,29771.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29771.69,29775.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29777.14,29777.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29777.61,29781.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29787.12,29787.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29787.117,29795.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29795.36,29798.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29798.58,29802.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29820.6,29820.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29820.82,29828.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29828.30,29831.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29831.52,29835.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29837.8,29837.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29837.57,29841.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29843.8,29843.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29843.54,29847.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29853.6,29855.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29855.106,29859.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29859.19,29863.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29867.6,29867.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29867.105,29875.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29875.30,29880.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29880.87,29888.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29888.32,29891.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29891.54,29895.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29897.10,29897.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29897.59,29901.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29903.10,29903.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29903.56,29907.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29913.8,29913.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29913.91,29922.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29928.6,29928.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29928.101,29932.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29932.19,29936.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29940.6,29942.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29942.80,29946.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29946.19,29950.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29954.6,29954.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29954.72,29963.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29965.6,29965.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29965.91,29969.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29969.19,29973.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29977.6,29977.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29977.56,29982.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29982.30,29987.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29987.99,29995.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29995.32,29998.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:29998.63,30001.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30001.47,30003.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30004.11,30004.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30008.10,30008.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30008.61,30012.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30014.10,30014.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30014.61,30018.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30024.8,30024.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30024.100,30028.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30028.21,30032.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30036.8,30036.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30036.96,30040.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30040.21,30044.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30048.8,30048.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30048.99,30052.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30052.21,30056.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30068.4,30068.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30068.57,30074.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30074.28,30076.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30076.63,30078.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30079.6,30079.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30079.68,30081.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30083.6,30083.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30083.65,30085.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30094.2,30094.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30094.77,30102.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30102.26,30105.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30105.49,30110.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30110.28,30114.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30114.74,30116.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30116.52,30118.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30119.7,30119.36 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30122.6,30124.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30124.89,30132.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30132.30,30135.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30135.52,30139.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30141.8,30141.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30141.57,30145.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30147.8,30147.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30147.54,30151.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30157.6,30157.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30157.86,30165.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30165.30,30168.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30168.52,30172.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30174.8,30174.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30174.57,30178.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30180.8,30180.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30180.54,30184.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30190.6,30190.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30190.66,30192.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30194.6,30194.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30194.64,30196.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30207.2,30207.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30207.77,30212.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30212.26,30215.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30215.103,30220.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30220.28,30226.106 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30226.106,30230.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30230.19,30234.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30238.6,30238.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30238.107,30246.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30246.30,30249.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30249.58,30252.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30252.45,30254.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30255.9,30255.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30263.6,30263.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30263.110,30271.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30271.30,30274.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30274.56,30279.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30279.31,30286.65 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30286.65,30288.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30290.10,30290.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30290.70,30292.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30294.10,30294.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30294.67,30296.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30298.10,30298.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30298.64,30300.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30310.6,30310.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30310.88,30315.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30315.30,30318.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30318.78,30320.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30320.45,30322.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30323.9,30323.37 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30326.8,30326.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30326.78,30328.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30328.45,30330.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30331.9,30331.37 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30334.8,30334.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30334.78,30337.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30337.45,30339.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30340.9,30340.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30348.6,30348.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30348.89,30351.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30351.43,30353.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30354.7,30354.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30358.6,30360.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30360.104,30364.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30364.19,30368.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30372.6,30372.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30372.108,30380.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30380.30,30383.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30383.62,30387.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30389.8,30389.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30389.59,30394.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30394.31,30401.65 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30401.65,30403.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30405.10,30405.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30405.70,30407.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30409.10,30409.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30409.67,30411.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30413.10,30413.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30413.64,30415.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30425.6,30425.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30425.112,30433.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30433.30,30436.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30436.60,30440.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30442.8,30442.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30442.59,30445.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30445.45,30447.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30448.9,30448.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30452.8,30452.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30452.61,30455.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30455.45,30457.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30458.9,30458.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30466.6,30466.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30466.84,30471.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30471.30,30474.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30474.74,30476.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30478.8,30478.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30478.70,30480.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30482.8,30482.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30482.67,30484.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30490.6,30490.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30490.104,30492.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30492.52,30494.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30495.7,30495.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30498.6,30498.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30498.88,30500.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30500.43,30502.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30503.7,30503.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30506.6,30508.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30508.119,30516.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30516.30,30519.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30519.59,30522.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30522.45,30524.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30525.9,30525.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30533.6,30533.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30533.108,30537.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30537.19,30541.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30554.2,30554.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30554.64,30559.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30559.26,30565.124 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30565.124,30569.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30569.17,30573.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30577.4,30577.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30577.123,30581.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30581.17,30585.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30589.4,30591.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30591.101,30595.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30595.17,30599.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30603.4,30603.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30603.104,30607.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30607.17,30611.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30615.4,30617.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30617.101,30621.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30621.17,30625.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30629.4,30629.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30629.100,30638.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30640.4,30640.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30640.71,30642.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30644.4,30646.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30646.104,30650.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30650.17,30654.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30658.4,30658.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30658.101,30662.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30662.17,30666.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30670.4,30670.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30670.102,30674.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30674.17,30678.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30682.4,30682.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30682.104,30686.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30686.17,30690.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30694.4,30696.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30696.97,30700.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30700.17,30704.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30708.4,30708.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30708.100,30712.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30712.17,30716.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30726.2,30728.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30728.73,30736.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30736.26,30739.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30739.62,30744.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30744.28,30748.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30748.88,30753.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30753.30,30756.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30756.86,30758.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30760.8,30760.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30760.79,30763.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30763.45,30765.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30766.9,30766.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30774.6,30774.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30774.86,30776.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30778.6,30778.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30778.78,30780.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30782.6,30784.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30784.105,30788.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30788.19,30792.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30796.6,30796.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30796.110,30805.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30807.6,30809.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30809.119,30817.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30817.30,30822.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30822.86,30830.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30830.32,30833.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30833.54,30837.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30839.10,30839.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30839.59,30843.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30845.10,30845.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30845.56,30849.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30855.8,30855.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30855.94,30859.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30859.21,30863.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30867.8,30867.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30867.57,30871.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30873.8,30873.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30873.52,30877.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30883.6,30883.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30883.116,30891.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30891.30,30894.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30894.52,30898.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30900.8,30900.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30900.57,30904.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30906.8,30906.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30906.54,30910.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30920.4,30922.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30922.99,30930.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30930.28,30933.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30933.75,30938.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30938.29,30943.65 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30943.65,30945.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30947.8,30947.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30947.70,30949.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30951.8,30951.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30951.67,30953.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30963.4,30963.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30963.92,30971.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30971.28,30974.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30974.59,30977.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30977.43,30979.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30980.7,30980.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30984.6,30984.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30984.54,30987.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30987.43,30989.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30990.7,30990.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30998.4,30998.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:30998.95,31002.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31002.17,31006.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31010.4,31010.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31010.60,31015.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31015.28,31019.76 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31019.76,31021.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31023.6,31025.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31025.103,31029.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31029.19,31033.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31037.6,31037.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31037.108,31046.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31048.6,31050.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31050.117,31058.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31058.30,31063.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31063.86,31071.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31071.32,31074.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31074.54,31078.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31080.10,31080.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31080.59,31084.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31086.10,31086.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31086.56,31090.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31096.8,31096.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31096.94,31100.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31100.21,31104.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31108.8,31108.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31108.57,31112.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31114.8,31114.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31114.52,31118.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31124.6,31124.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31124.114,31132.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31132.30,31135.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31135.52,31139.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31141.8,31141.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31141.57,31145.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31147.8,31147.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31147.54,31151.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31165.2,31165.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31165.77,31169.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31169.15,31173.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31177.2,31177.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31177.69,31185.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31185.26,31190.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31190.99,31198.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31198.28,31201.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31201.75,31206.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31206.29,31211.65 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31211.65,31213.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31215.8,31215.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31215.70,31217.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31219.8,31219.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31219.67,31221.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31231.4,31231.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31231.92,31239.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31239.28,31242.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31242.59,31245.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31245.43,31247.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31248.7,31248.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31252.6,31252.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31252.54,31255.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31255.43,31257.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31258.7,31258.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31266.4,31266.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31266.95,31270.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31270.17,31274.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31278.4,31280.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31280.81,31284.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31284.17,31288.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31292.4,31292.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31292.78,31300.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31300.28,31303.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31303.54,31308.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31308.29,31313.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31313.62,31315.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31317.8,31317.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31317.67,31319.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31321.8,31321.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31321.64,31323.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31333.4,31333.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31333.56,31338.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31338.28,31341.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31341.80,31343.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31345.6,31345.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31345.76,31347.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31349.6,31349.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31349.68,31353.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31364.2,31364.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31364.53,31369.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31369.26,31375.96 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31375.96,31383.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31383.28,31386.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31386.55,31392.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31392.30,31394.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31394.65,31396.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31397.8,31397.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31397.70,31399.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31401.8,31401.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31401.67,31403.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31412.4,31412.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31412.98,31420.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31420.28,31423.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31423.53,31428.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31428.30,31432.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31432.74,31434.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31436.8,31436.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31436.66,31438.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31440.8,31442.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31442.91,31451.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31453.8,31453.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31453.94,31462.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31464.8,31464.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31464.91,31473.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31479.6,31479.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31479.57,31483.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31485.6,31485.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31485.59,31490.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31490.30,31495.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31495.103,31499.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31499.21,31503.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31507.8,31507.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31507.94,31516.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31518.8,31518.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31518.101,31527.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31533.6,31533.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31533.50,31538.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31538.30,31543.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31543.86,31552.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31554.8,31554.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31554.88,31563.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31565.8,31565.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31565.87,31574.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31580.6,31580.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31580.67,31585.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31585.30,31588.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31588.87,31590.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31592.8,31592.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31592.87,31594.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31604.4,31604.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31604.91,31612.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31612.28,31615.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31615.53,31620.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31620.30,31624.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31624.74,31626.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31628.8,31628.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31628.66,31630.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31632.8,31634.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31634.91,31643.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31645.8,31645.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31645.94,31654.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31656.8,31656.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31656.91,31665.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31671.6,31671.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31671.57,31675.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31677.6,31677.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31677.59,31682.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31682.30,31687.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31687.103,31691.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31691.21,31695.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31699.8,31699.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31699.94,31708.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31710.8,31710.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31710.101,31719.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31725.6,31725.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31725.50,31730.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31730.30,31735.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31735.86,31744.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31746.8,31746.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31746.88,31755.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31757.8,31757.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31757.87,31766.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31772.6,31772.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31772.60,31777.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31777.30,31780.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31780.81,31782.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31784.8,31784.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31784.81,31786.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31788.8,31788.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31788.82,31790.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31792.8,31794.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31794.103,31803.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31805.8,31805.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31805.110,31809.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31809.21,31813.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31817.8,31817.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31817.107,31826.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31828.8,31828.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31828.110,31832.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31832.21,31836.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31840.8,31840.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31840.111,31848.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31848.32,31851.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31851.62,31854.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31854.47,31856.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31857.11,31857.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31865.8,31867.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31867.113,31876.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31878.8,31878.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31878.114,31887.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31889.8,31889.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31889.81,31891.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31901.4,31901.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31901.89,31909.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31909.28,31912.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31912.62,31917.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31917.30,31922.151 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31922.151,31930.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31930.32,31933.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31933.69,31937.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31939.10,31939.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31939.65,31944.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31944.34,31948.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31948.87,31950.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31952.12,31952.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31952.87,31957.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31957.36,31961.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31961.88,31965.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31967.14,31967.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31967.83,31969.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31983.8,31983.161 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31983.161,31987.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31987.21,31991.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31995.8,31997.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:31997.109,32005.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32005.32,32008.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32008.58,32012.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32014.10,32014.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32014.67,32018.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32020.10,32020.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32020.66,32024.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32030.8,32030.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32030.112,32034.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32034.21,32038.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32042.8,32044.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32044.126,32048.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32048.21,32052.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32056.8,32056.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32056.119,32060.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32060.21,32064.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32068.8,32068.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32068.81,32073.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32073.32,32076.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32076.84,32078.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32080.10,32080.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32080.80,32082.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32084.10,32084.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32084.80,32086.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32088.10,32088.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32088.79,32090.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32090.47,32092.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32093.11,32093.38 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32096.10,32096.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32096.85,32098.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32098.47,32100.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32101.11,32101.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32104.10,32104.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32104.75,32106.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32108.10,32108.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32108.81,32110.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32112.10,32112.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32112.74,32114.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32116.10,32116.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32116.78,32118.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32124.8,32124.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32124.90,32126.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32128.8,32128.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32128.86,32130.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32130.54,32132.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32133.9,32133.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32136.8,32138.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32138.118,32142.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32142.21,32146.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32150.8,32150.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32150.120,32158.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32158.32,32161.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32161.61,32166.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32166.34,32172.104 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32172.104,32180.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32180.36,32185.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32185.88,32189.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32189.27,32193.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32197.14,32197.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32197.91,32201.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32201.27,32205.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32209.14,32209.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32209.58,32213.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32215.14,32215.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32215.58,32219.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32221.14,32223.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32223.91,32227.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32227.27,32231.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32235.14,32235.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32235.88,32239.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32239.27,32243.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32247.14,32247.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32247.89,32251.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32251.27,32255.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32259.14,32259.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32259.91,32263.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32263.27,32267.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32271.14,32273.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32273.84,32277.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32277.27,32281.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32285.14,32285.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32285.87,32289.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32289.27,32293.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32297.14,32297.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32297.57,32301.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32307.12,32307.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32307.109,32316.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32318.12,32318.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32318.107,32327.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32329.12,32329.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32329.77,32331.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32341.8,32343.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32343.116,32347.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32347.21,32351.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32355.8,32355.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32355.112,32363.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32363.32,32366.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32366.61,32372.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32372.34,32374.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32374.69,32376.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32377.12,32377.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32377.74,32379.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32381.12,32381.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32381.71,32383.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32388.10,32388.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32388.57,32393.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32393.34,32396.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32396.77,32400.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32402.12,32402.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32402.75,32404.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32414.8,32414.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32414.78,32418.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32420.8,32420.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32420.92,32425.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32425.32,32429.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32429.82,32431.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32433.10,32433.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32433.80,32435.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32437.10,32439.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32439.113,32447.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32447.34,32450.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32450.82,32455.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32455.36,32458.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32458.107,32460.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32462.14,32462.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32462.96,32464.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32466.14,32466.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32466.102,32468.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32474.12,32474.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32474.72,32478.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32480.12,32482.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32482.102,32490.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32490.36,32493.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32493.73,32497.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32499.14,32499.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32499.62,32503.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32505.14,32505.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32505.68,32509.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32515.12,32515.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32515.98,32523.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32523.36,32526.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32526.62,32530.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32532.14,32532.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32532.57,32536.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32542.12,32542.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32542.98,32550.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32550.36,32553.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32553.57,32557.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32559.14,32559.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32559.62,32563.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32565.14,32565.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32565.62,32569.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32571.14,32571.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32571.69,32575.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32577.14,32577.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32577.61,32581.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32587.12,32587.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32587.100,32595.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32595.36,32598.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32598.58,32602.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32612.10,32612.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32612.106,32621.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32627.8,32627.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32627.95,32629.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32629.45,32631.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32632.9,32632.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32635.8,32635.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32635.93,32640.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32640.32,32644.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32644.83,32646.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32648.10,32648.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32648.81,32650.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32652.10,32654.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32654.114,32662.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32662.34,32665.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32665.82,32670.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32670.36,32673.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32673.107,32675.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32677.14,32677.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32677.96,32679.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32681.14,32681.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32681.102,32683.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32689.12,32689.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32689.72,32693.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32695.12,32697.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32697.102,32705.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32705.36,32708.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32708.73,32712.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32714.14,32714.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32714.62,32718.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32720.14,32720.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32720.68,32724.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32730.12,32730.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32730.98,32738.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32738.36,32741.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32741.62,32745.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32747.14,32747.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32747.57,32751.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32757.12,32757.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32757.98,32765.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32765.36,32768.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32768.57,32772.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32774.14,32774.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32774.62,32778.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32780.14,32780.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32780.62,32784.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32786.14,32786.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32786.69,32790.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32792.14,32792.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32792.61,32796.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32802.12,32802.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32802.100,32810.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32810.36,32813.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32813.58,32817.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32827.10,32827.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32827.107,32836.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32842.8,32842.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32842.96,32844.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32844.45,32846.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32847.9,32847.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32850.8,32852.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32852.121,32856.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32856.21,32860.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32864.8,32864.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32864.116,32868.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32868.21,32872.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32876.8,32876.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32876.113,32884.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32884.32,32887.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32887.58,32892.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32892.34,32895.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32895.79,32897.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32899.12,32899.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32899.78,32901.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32907.10,32907.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32907.61,32911.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32913.10,32913.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32913.65,32917.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32919.10,32919.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32919.72,32922.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32922.47,32924.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32925.11,32925.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32929.10,32929.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32929.65,32932.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32932.47,32934.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32935.11,32935.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32939.10,32939.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32939.58,32943.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32949.8,32951.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32951.119,32955.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32955.21,32959.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32963.8,32963.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32963.111,32972.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32974.8,32976.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32976.106,32980.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32980.21,32984.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32988.8,32988.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32988.105,32992.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:32992.21,32996.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33000.8,33000.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33000.77,33002.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33004.8,33006.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33006.105,33014.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33014.32,33017.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33017.54,33021.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33023.10,33023.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33023.59,33027.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33029.10,33029.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33029.56,33033.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33039.8,33039.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33039.104,33043.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33043.21,33047.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33051.8,33051.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33051.106,33055.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33055.21,33059.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33063.8,33065.124 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33065.124,33069.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33069.21,33073.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33077.8,33077.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33077.116,33085.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33085.32,33088.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33088.62,33092.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33094.10,33094.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33094.70,33098.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33100.10,33100.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33100.63,33104.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33114.6,33114.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33114.53,33119.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33119.30,33123.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33123.74,33125.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33127.8,33127.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33127.66,33129.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33131.8,33133.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33133.91,33142.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33144.8,33144.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33144.94,33153.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33155.8,33155.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33155.91,33164.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33170.6,33172.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33172.94,33176.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33176.19,33180.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33184.6,33184.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33184.97,33188.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33188.19,33192.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33196.6,33196.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33196.89,33205.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33207.6,33207.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33207.57,33211.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33213.6,33213.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33213.59,33218.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33218.30,33223.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33223.103,33227.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33227.21,33231.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33235.8,33235.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33235.94,33244.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33246.8,33246.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33246.101,33255.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33261.6,33261.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33261.58,33266.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33266.30,33270.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33270.82,33272.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33272.54,33274.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33275.9,33275.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33278.8,33280.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33280.97,33288.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33288.32,33291.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33291.54,33295.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33297.10,33297.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33297.59,33301.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33303.10,33303.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33303.56,33307.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33313.8,33313.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33313.94,33321.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33321.32,33324.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33324.54,33328.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33330.10,33330.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33330.59,33334.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33336.10,33336.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33336.56,33340.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33346.8,33346.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33346.74,33348.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33350.8,33350.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33350.72,33352.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33358.6,33358.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33358.50,33363.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33363.30,33368.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33368.86,33377.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33379.8,33379.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33379.88,33388.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33390.8,33390.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33390.87,33399.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33415.2,33417.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33417.86,33425.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33425.26,33428.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33428.52,33433.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33433.27,33438.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33438.60,33440.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33442.6,33442.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33442.65,33444.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33446.6,33446.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33446.62,33448.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33458.2,33458.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33458.82,33462.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33462.15,33466.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33470.2,33470.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33470.94,33474.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33474.15,33478.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33484.2,33486.88 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33486.88,33494.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33494.26,33497.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33497.67,33501.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33503.4,33505.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33505.101,33509.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33509.17,33513.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33517.4,33517.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33517.93,33526.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33532.2,33532.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33532.91,33536.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33536.15,33540.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33546.2,33548.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33548.101,33552.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33552.15,33556.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33560.2,33560.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33560.100,33568.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33568.26,33571.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33571.61,33574.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33574.41,33576.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33577.5,33577.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33586.2,33586.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33586.62,33591.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33591.26,33597.110 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33597.110,33601.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33601.17,33605.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33609.4,33609.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33609.106,33613.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33613.17,33617.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33621.4,33621.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33621.110,33625.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33625.17,33629.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33633.4,33633.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33633.72,33636.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33636.41,33638.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33639.5,33639.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33643.4,33645.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33645.106,33654.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33656.4,33656.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33656.108,33664.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33664.28,33667.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33667.53,33672.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33672.30,33676.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33676.74,33678.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33680.8,33680.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33680.66,33682.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33684.8,33686.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33686.91,33695.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33697.8,33697.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33697.94,33706.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33708.8,33708.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33708.91,33717.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33727.4,33727.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33727.106,33736.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33738.4,33738.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33738.112,33747.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33749.4,33749.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33749.85,33751.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33751.19,33753.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33754.5,33754.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33757.4,33757.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33757.73,33762.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33762.28,33765.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33765.72,33767.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33769.6,33769.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33769.68,33771.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33773.6,33773.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33773.65,33775.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33787.2,33789.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33789.73,33793.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33793.15,33797.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33801.2,33801.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33801.75,33809.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33809.26,33812.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33812.48,33816.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33818.4,33818.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33818.53,33822.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33824.4,33824.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33824.50,33828.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33836.2,33838.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33838.65,33846.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33846.26,33849.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33849.48,33853.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33855.4,33855.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33855.53,33859.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33861.4,33861.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33861.50,33865.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33871.2,33871.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33871.64,33875.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33875.15,33879.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33884.2,33884.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33884.66,33889.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33889.26,33895.104 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33895.104,33899.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33899.17,33903.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33907.4,33907.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33907.105,33916.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33918.4,33918.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33918.106,33927.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33929.4,33929.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33929.88,33931.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33931.19,33933.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33934.5,33934.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33937.4,33937.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33937.76,33942.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33942.28,33945.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33945.72,33947.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33949.6,33949.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33949.68,33951.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33953.6,33953.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33953.65,33955.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33961.4,33961.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33961.75,33964.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33964.41,33966.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33967.5,33967.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33971.4,33973.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33973.100,33977.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33977.17,33981.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33985.4,33985.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33985.103,33994.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33996.4,33996.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:33996.102,34005.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34007.4,34009.136 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34009.136,34017.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34017.28,34020.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34020.74,34025.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34025.30,34029.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34029.99,34033.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34039.6,34039.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34039.71,34044.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34044.30,34048.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34048.85,34050.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34056.6,34056.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34056.72,34061.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34061.30,34065.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34065.86,34069.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34071.8,34071.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34071.91,34073.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34075.8,34075.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34075.91,34077.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34083.6,34083.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34083.72,34088.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34088.30,34092.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34092.86,34096.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34098.8,34098.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34098.91,34100.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34102.8,34102.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34102.96,34106.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34116.4,34116.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34116.125,34120.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34120.17,34124.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34132.2,34135.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34135.16,34137.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34138.2,34140.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34143.91,34149.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34149.16,34150.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34150.55,34154.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34155.3,34155.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34157.2,34157.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34160.112,34179.2 10 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34182.93,34191.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34191.58,34195.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34195.48,34198.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34199.3,34199.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34202.2,34202.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34202.58,34205.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34207.2,34207.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34207.54,34210.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34212.2,34212.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34212.53,34216.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34216.48,34219.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34220.3,34220.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34223.2,34223.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34223.51,34226.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34228.2,34228.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34228.56,34231.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34233.2,34233.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34233.59,34238.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34240.2,34242.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34242.75,34250.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34250.26,34253.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34253.59,34258.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34258.28,34264.105 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34264.105,34272.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34272.30,34275.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34275.58,34280.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34280.32,34283.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34283.70,34285.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34287.10,34287.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34287.75,34289.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34291.10,34291.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34291.72,34293.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34299.8,34299.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34299.50,34303.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34305.8,34305.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34305.52,34309.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34311.8,34311.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34311.55,34316.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34316.32,34319.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34319.68,34321.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34323.10,34323.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34323.73,34325.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34327.10,34327.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34327.70,34329.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34339.6,34339.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34339.94,34347.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34347.30,34350.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34350.56,34354.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34356.8,34356.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34356.56,34360.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34362.8,34362.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34362.55,34367.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34367.32,34370.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34370.68,34372.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34374.10,34374.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34374.73,34376.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34378.10,34378.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34378.70,34380.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34390.6,34390.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34390.91,34398.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34398.30,34401.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34401.50,34405.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34407.8,34407.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34407.52,34411.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34413.8,34413.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34413.55,34417.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34419.8,34419.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34419.52,34424.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34424.32,34427.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34427.65,34429.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34431.10,34431.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34431.70,34433.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34435.10,34435.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34435.67,34437.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34447.6,34447.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34447.99,34455.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34455.30,34458.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34458.50,34462.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34464.8,34464.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34464.52,34468.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34470.8,34470.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34470.55,34475.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34475.32,34478.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34478.68,34480.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34482.10,34482.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34482.73,34484.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34486.10,34486.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34486.70,34488.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34494.8,34494.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34494.52,34499.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34499.32,34502.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34502.65,34504.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34506.10,34506.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34506.70,34508.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34510.10,34510.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34510.67,34512.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34522.6,34522.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34522.102,34530.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34530.30,34535.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34535.87,34539.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34539.21,34543.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34547.8,34547.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34547.88,34556.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34558.8,34560.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34560.82,34564.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34564.21,34568.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34572.8,34572.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34572.83,34581.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34583.8,34583.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34583.63,34588.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34588.32,34591.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34591.75,34593.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34595.10,34595.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34595.80,34597.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34599.10,34599.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34599.77,34601.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34611.6,34611.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34611.99,34619.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34619.30,34622.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34622.55,34626.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34628.8,34628.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34628.60,34633.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34633.32,34636.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34636.72,34638.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34640.10,34640.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34640.77,34642.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34644.10,34644.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34644.74,34646.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34656.6,34656.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34656.107,34664.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34664.30,34667.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34667.50,34671.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34673.8,34673.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34673.52,34677.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34679.8,34679.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34679.55,34684.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34684.32,34687.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34687.68,34689.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34691.10,34691.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34691.73,34693.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34695.10,34695.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34695.70,34697.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34703.8,34703.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34703.60,34708.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34708.32,34711.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34711.72,34713.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34715.10,34715.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34715.77,34717.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34719.10,34719.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34719.74,34721.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34731.6,34731.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34731.99,34739.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34739.30,34744.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34744.72,34752.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34752.32,34755.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34755.54,34759.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34761.10,34761.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34761.59,34765.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34767.10,34767.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34767.56,34771.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34777.8,34777.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34777.80,34785.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34785.32,34788.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34788.54,34792.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34794.10,34794.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34794.59,34798.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34800.10,34800.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34800.56,34804.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34814.6,34816.95 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34816.95,34825.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34827.6,34827.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34827.107,34831.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34831.19,34835.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34847.2,34847.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34847.78,34855.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34855.26,34858.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34858.53,34863.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34863.28,34866.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34866.65,34868.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34870.6,34870.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34870.70,34872.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34874.6,34874.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34874.67,34876.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34886.2,34886.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34886.90,34890.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34890.15,34894.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34898.2,34898.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34898.75,34902.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34902.15,34906.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34910.2,34912.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34912.77,34920.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34920.26,34923.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34923.48,34927.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34929.4,34929.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34929.53,34933.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34935.4,34935.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34935.50,34939.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34945.2,34945.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34945.78,34953.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34953.26,34956.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34956.59,34961.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34961.27,34966.61 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34966.61,34968.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34970.6,34970.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34970.66,34972.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34974.6,34974.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34974.63,34976.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34986.2,34986.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34986.80,34994.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34994.26,34997.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:34997.58,35003.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35003.28,35005.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35005.63,35007.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35008.6,35008.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35008.68,35010.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35012.6,35012.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35012.65,35014.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35019.4,35021.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35021.109,35029.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35029.28,35032.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35032.63,35037.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35037.30,35042.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35042.128,35046.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35046.21,35050.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35054.8,35054.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35054.129,35062.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35062.32,35065.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35065.75,35070.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35070.34,35076.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35076.119,35080.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35080.25,35084.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35088.12,35088.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35088.120,35092.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35092.25,35096.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35100.12,35100.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35100.118,35104.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35104.25,35108.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35112.12,35114.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35114.126,35122.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35122.36,35125.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35125.61,35128.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35128.51,35130.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35131.15,35131.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35135.14,35135.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35135.58,35139.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35145.12,35145.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35145.123,35154.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35156.12,35156.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35156.123,35165.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35167.12,35167.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35167.89,35172.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35172.36,35175.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35175.80,35177.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35179.14,35179.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35179.76,35181.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35183.14,35183.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35183.73,35185.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35203.6,35205.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35205.109,35209.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35209.19,35213.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35217.6,35217.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35217.109,35221.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35221.19,35225.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35229.6,35229.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35229.54,35234.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35234.30,35239.126 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35239.126,35243.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35243.21,35247.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35251.8,35251.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35251.126,35255.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35255.21,35259.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35263.8,35265.144 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35265.144,35273.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35273.32,35276.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35276.57,35281.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35281.34,35286.127 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35286.127,35290.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35290.25,35294.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35298.12,35298.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35298.130,35302.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35302.25,35306.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35314.10,35314.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35314.66,35319.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35319.34,35324.141 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35324.141,35328.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35328.25,35332.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35336.12,35336.144 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35336.144,35340.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35340.25,35344.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35356.8,35356.145 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35356.145,35360.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35360.21,35364.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35372.6,35372.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35372.61,35377.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35377.30,35382.142 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35382.142,35390.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35390.32,35393.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35393.80,35396.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35396.47,35398.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35399.11,35399.137 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35403.10,35405.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35405.106,35409.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35409.23,35413.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35417.10,35417.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35417.107,35421.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35421.23,35425.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35433.8,35433.135 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35433.135,35437.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35437.21,35441.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35445.8,35447.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35447.118,35451.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35451.21,35455.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35459.8,35459.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35459.125,35467.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35467.32,35470.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35470.79,35473.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35473.47,35475.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35476.11,35476.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35480.10,35482.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35482.106,35486.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35486.23,35490.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35494.10,35494.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35494.107,35498.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35498.23,35502.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35518.4,35518.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35518.102,35526.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35526.28,35529.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35529.63,35534.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35534.30,35539.128 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35539.128,35543.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35543.21,35547.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35551.8,35551.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35551.129,35559.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35559.32,35562.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35562.75,35567.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35567.34,35573.119 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35573.119,35577.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35577.25,35581.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35585.12,35585.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35585.120,35589.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35589.25,35593.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35597.12,35597.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35597.118,35601.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35601.25,35605.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35609.12,35611.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35611.126,35619.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35619.36,35622.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35622.61,35625.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35625.51,35627.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35628.15,35628.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35632.14,35632.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35632.58,35636.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35642.12,35642.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35642.123,35651.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35653.12,35653.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35653.123,35662.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35664.12,35664.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35664.89,35669.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35669.36,35672.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35672.80,35674.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35676.14,35676.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35676.76,35678.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35680.14,35680.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35680.73,35682.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35700.6,35700.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35700.71,35705.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35705.30,35711.122 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35711.122,35719.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35719.32,35722.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35722.57,35725.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35725.47,35727.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35728.11,35728.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35732.10,35732.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35732.54,35736.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35742.8,35742.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35742.119,35751.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35753.8,35753.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35753.119,35762.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35764.8,35766.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35766.113,35770.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35770.21,35774.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35778.8,35778.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35778.118,35787.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35789.8,35789.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35789.85,35794.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35794.32,35797.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35797.76,35799.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35801.10,35801.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35801.72,35803.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35805.10,35805.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35805.69,35807.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35813.8,35813.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35813.92,35818.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35818.32,35823.144 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35823.144,35831.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35831.34,35834.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35834.82,35837.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35837.49,35839.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35840.13,35840.139 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35844.12,35846.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35846.108,35850.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35850.25,35854.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35858.12,35858.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35858.109,35862.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35862.25,35866.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35874.10,35874.137 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35874.137,35878.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35878.23,35882.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35886.10,35888.120 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35888.120,35892.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35892.23,35896.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35900.10,35900.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35900.127,35908.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35908.34,35911.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35911.81,35914.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35914.49,35916.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35917.13,35917.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35921.12,35923.108 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35923.108,35927.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35927.25,35931.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35935.12,35935.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35935.109,35939.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35939.25,35943.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35959.6,35961.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35961.109,35965.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35965.19,35969.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35973.6,35973.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35973.109,35977.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35977.19,35981.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35985.6,35985.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35985.54,35990.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35990.30,35995.126 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35995.126,35999.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:35999.21,36003.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36007.8,36007.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36007.126,36011.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36011.21,36015.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36019.8,36021.144 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36021.144,36029.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36029.32,36032.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36032.57,36037.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36037.34,36042.127 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36042.127,36046.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36046.25,36050.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36054.12,36054.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36054.130,36058.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36058.25,36062.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36070.10,36070.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36070.66,36075.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36075.34,36080.141 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36080.141,36084.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36084.25,36088.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36092.12,36092.144 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36092.144,36096.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36096.25,36100.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36112.8,36112.145 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36112.145,36116.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36116.21,36120.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36132.4,36132.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36132.99,36136.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36136.17,36140.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36148.2,36148.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36148.85,36152.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36152.15,36156.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36160.2,36162.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36162.83,36166.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36166.15,36170.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36174.2,36174.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36174.82,36182.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36182.26,36185.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36185.67,36190.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36190.28,36193.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36193.117,36195.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36201.4,36203.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36203.117,36207.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36207.17,36211.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36215.4,36215.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36215.116,36219.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36219.17,36223.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36227.4,36227.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36227.74,36232.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36232.28,36235.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36235.117,36240.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36240.30,36244.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36244.96,36249.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36249.32,36252.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36252.76,36254.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36256.10,36256.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36256.72,36258.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36260.10,36260.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36260.69,36262.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36268.8,36268.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36268.119,36273.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36273.32,36278.121 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36278.121,36282.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36282.23,36286.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36290.10,36290.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36290.126,36299.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36301.10,36303.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36303.123,36311.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36311.34,36316.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36316.87,36325.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36327.12,36327.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36327.87,36336.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36342.10,36342.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36342.129,36350.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36350.34,36353.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36353.63,36358.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36358.36,36363.106 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36363.106,36372.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36374.14,36374.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36374.106,36383.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36389.12,36389.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36389.65,36394.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36394.36,36399.110 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36399.110,36408.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36410.14,36410.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36410.110,36419.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36429.10,36429.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36429.125,36437.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36437.34,36442.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36442.89,36451.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36453.12,36453.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36453.89,36462.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36468.10,36470.132 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36470.132,36474.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36474.23,36478.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36482.10,36482.133 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36482.133,36486.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36486.23,36490.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36494.10,36494.124 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36494.124,36498.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36498.23,36502.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36506.10,36506.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36506.127,36514.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36514.34,36517.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36517.67,36520.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36520.49,36522.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36523.13,36523.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36531.10,36533.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36533.121,36537.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36537.23,36541.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36545.10,36545.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36545.130,36553.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36553.34,36556.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36556.69,36560.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36562.12,36562.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36562.59,36565.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36565.49,36567.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36568.13,36568.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36576.10,36576.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36576.120,36585.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36587.10,36587.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36587.120,36596.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36602.8,36602.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36602.107,36607.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36607.32,36610.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36610.78,36612.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36622.6,36622.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36622.103,36627.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36627.30,36631.79 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36631.79,36633.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36647.2,36647.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36647.67,36652.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36652.26,36655.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36655.87,36660.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36660.28,36664.75 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36664.75,36669.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36669.30,36674.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36674.86,36678.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36678.21,36682.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36686.8,36686.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36686.85,36690.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36690.21,36694.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36702.6,36702.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36702.88,36707.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36707.30,36710.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36710.86,36712.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36714.8,36714.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36714.79,36717.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36717.45,36719.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36720.9,36720.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36728.6,36728.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36728.86,36730.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36732.6,36732.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36732.83,36737.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36737.30,36742.104 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36742.104,36746.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36746.21,36750.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36754.8,36754.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36754.109,36762.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36762.32,36765.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36765.61,36768.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36768.47,36770.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36771.11,36771.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36779.8,36779.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36779.117,36787.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36787.32,36790.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36790.70,36793.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36793.47,36795.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36796.11,36796.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36804.8,36806.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36806.99,36810.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36810.21,36814.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36818.8,36818.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36818.101,36826.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36826.32,36829.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36829.60,36832.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36832.47,36834.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36835.11,36835.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36843.8,36843.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36843.104,36851.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36851.32,36854.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36854.58,36859.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36859.33,36866.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36866.67,36868.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36870.12,36870.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36870.72,36872.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36874.12,36874.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36874.69,36876.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36878.12,36878.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36878.66,36880.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36890.8,36890.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36890.103,36898.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36898.32,36901.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36901.64,36905.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36907.10,36907.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36907.61,36912.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36912.33,36919.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36919.67,36921.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36923.12,36923.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36923.72,36925.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36927.12,36927.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36927.69,36929.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36931.12,36931.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36931.66,36933.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36943.8,36943.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36943.107,36951.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36951.32,36954.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36954.62,36958.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36960.10,36960.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36960.61,36963.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36963.47,36965.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36966.11,36966.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36970.10,36970.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36970.63,36973.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36973.47,36975.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36976.11,36976.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36984.8,36984.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36984.91,36989.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36989.32,36992.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36992.85,36995.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36995.47,36997.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:36998.11,36998.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37002.10,37002.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37002.90,37004.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37004.47,37006.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37007.11,37007.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37010.10,37010.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37010.93,37012.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37012.47,37014.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37015.11,37015.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37026.6,37028.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37028.105,37032.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37032.19,37036.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37040.6,37040.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37040.110,37049.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37051.6,37051.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37051.77,37056.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37056.30,37059.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37059.74,37061.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37063.8,37063.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37063.70,37065.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37067.8,37067.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37067.67,37069.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37075.6,37075.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37075.84,37080.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37080.30,37083.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37083.84,37088.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37088.32,37092.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37092.85,37094.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37096.10,37098.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37098.107,37102.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37102.23,37106.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37110.10,37110.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37110.103,37114.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37114.23,37118.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37122.10,37122.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37122.94,37130.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37130.34,37133.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37133.64,37136.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37136.49,37138.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37139.13,37139.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37143.12,37143.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37143.64,37146.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37146.49,37148.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37149.13,37149.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37153.12,37153.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37153.64,37156.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37156.49,37158.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37159.13,37159.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37167.10,37167.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37167.98,37176.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37178.10,37178.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37178.75,37180.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37186.8,37186.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37186.76,37191.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37191.32,37195.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37195.78,37197.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37199.10,37201.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37201.100,37205.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37205.23,37209.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37213.10,37213.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37213.96,37217.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37217.23,37221.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37225.10,37225.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37225.87,37233.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37233.34,37236.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37236.64,37239.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37239.49,37241.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37242.13,37242.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37246.12,37246.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37246.64,37249.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37249.49,37251.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37252.13,37252.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37256.12,37256.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37256.64,37259.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37259.49,37261.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37262.13,37262.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37270.10,37270.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37270.91,37279.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37281.10,37281.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37281.68,37283.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37289.8,37289.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37289.81,37294.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37294.32,37298.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37298.82,37300.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37302.10,37302.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37302.71,37304.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37306.10,37308.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37308.104,37312.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37312.23,37316.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37320.10,37320.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37320.100,37324.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37324.23,37328.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37332.10,37332.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37332.91,37340.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37340.34,37343.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37343.64,37346.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37346.49,37348.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37349.13,37349.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37353.12,37353.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37353.64,37356.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37356.49,37358.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37359.13,37359.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37363.12,37363.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37363.64,37366.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37366.49,37368.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37369.13,37369.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37377.10,37377.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37377.95,37386.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37400.4,37400.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37400.85,37405.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37405.28,37409.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37409.73,37414.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37414.30,37419.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37419.86,37423.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37423.21,37427.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37431.8,37431.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37431.85,37435.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37435.21,37439.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37447.6,37447.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37447.76,37449.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37451.6,37451.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37451.76,37453.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37455.6,37455.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37455.81,37460.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37460.30,37465.104 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37465.104,37469.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37469.21,37473.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37477.8,37477.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37477.109,37485.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37485.32,37488.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37488.61,37491.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37491.47,37493.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37494.11,37494.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37502.8,37502.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37502.117,37510.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37510.32,37513.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37513.70,37516.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37516.47,37518.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37519.11,37519.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37527.8,37529.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37529.99,37533.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37533.21,37537.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37541.8,37541.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37541.101,37549.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37549.32,37552.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37552.60,37555.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37555.47,37557.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37558.11,37558.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37566.8,37566.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37566.104,37574.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37574.32,37577.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37577.58,37582.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37582.33,37589.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37589.67,37591.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37593.12,37593.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37593.72,37595.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37597.12,37597.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37597.69,37599.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37601.12,37601.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37601.66,37603.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37613.8,37613.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37613.103,37621.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37621.32,37624.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37624.64,37628.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37630.10,37630.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37630.61,37635.33 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37635.33,37642.67 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37642.67,37644.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37646.12,37646.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37646.72,37648.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37650.12,37650.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37650.69,37652.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37654.12,37654.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37654.66,37656.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37666.8,37666.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37666.107,37674.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37674.32,37677.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37677.62,37681.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37683.10,37683.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37683.61,37686.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37686.47,37688.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37689.11,37689.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37693.10,37693.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37693.63,37696.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37696.47,37698.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37699.11,37699.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37707.8,37707.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37707.91,37712.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37712.32,37715.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37715.85,37718.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37718.47,37720.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37721.11,37721.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37725.10,37725.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37725.90,37727.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37727.47,37729.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37730.11,37730.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37733.10,37733.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37733.93,37735.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37735.47,37737.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37738.11,37738.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37749.6,37751.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37751.103,37755.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37755.19,37759.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37763.6,37763.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37763.108,37772.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37774.6,37774.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37774.75,37779.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37779.30,37782.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37782.74,37784.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37786.8,37786.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37786.70,37788.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37790.8,37790.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37790.67,37792.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37798.6,37798.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37798.82,37803.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37803.30,37806.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37806.84,37811.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37811.32,37815.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37815.85,37817.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37819.10,37821.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37821.107,37825.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37825.23,37829.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37833.10,37833.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37833.103,37837.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37837.23,37841.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37845.10,37845.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37845.94,37853.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37853.34,37856.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37856.64,37859.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37859.49,37861.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37862.13,37862.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37866.12,37866.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37866.64,37869.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37869.49,37871.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37872.13,37872.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37876.12,37876.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37876.64,37879.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37879.49,37881.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37882.13,37882.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37890.10,37890.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37890.98,37899.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37901.10,37901.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37901.75,37903.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37909.8,37909.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37909.76,37914.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37914.32,37918.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37918.78,37920.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37922.10,37924.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37924.100,37928.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37928.23,37932.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37936.10,37936.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37936.96,37940.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37940.23,37944.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37948.10,37948.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37948.87,37956.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37956.34,37959.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37959.64,37962.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37962.49,37964.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37965.13,37965.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37969.12,37969.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37969.64,37972.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37972.49,37974.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37975.13,37975.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37979.12,37979.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37979.64,37982.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37982.49,37984.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37985.13,37985.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37993.10,37993.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:37993.91,38002.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38004.10,38004.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38004.68,38006.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38012.8,38012.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38012.81,38017.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38017.32,38021.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38021.82,38023.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38025.10,38025.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38025.71,38027.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38029.10,38031.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38031.104,38035.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38035.23,38039.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38043.10,38043.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38043.100,38047.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38047.23,38051.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38055.10,38055.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38055.91,38063.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38063.34,38066.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38066.64,38069.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38069.49,38071.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38072.13,38072.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38076.12,38076.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38076.64,38079.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38079.49,38081.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38082.13,38082.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38086.12,38086.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38086.64,38089.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38089.49,38091.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38092.13,38092.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38100.10,38100.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38100.95,38109.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38127.2,38127.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38127.62,38132.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38132.26,38138.110 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38138.110,38142.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38142.17,38146.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38150.4,38150.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38150.106,38154.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38154.17,38158.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38162.4,38162.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38162.110,38166.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38166.17,38170.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38174.4,38174.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38174.72,38177.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38177.41,38179.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38180.5,38180.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38184.4,38186.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38186.106,38195.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38197.4,38197.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38197.108,38205.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38205.28,38208.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38208.53,38213.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38213.30,38217.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38217.74,38219.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38221.8,38221.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38221.66,38223.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38225.8,38227.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38227.91,38236.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38238.8,38238.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38238.94,38247.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38249.8,38249.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38249.91,38258.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38268.4,38268.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38268.106,38277.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38279.4,38279.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38279.112,38288.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38290.4,38290.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38290.85,38292.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38292.19,38294.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38295.5,38295.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38298.4,38298.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38298.73,38303.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38303.28,38306.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38306.72,38308.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38310.6,38310.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38310.68,38312.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38314.6,38314.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38314.65,38316.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38326.2,38328.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38328.71,38336.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38336.26,38341.95 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38341.95,38345.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38345.17,38349.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38353.4,38353.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38353.94,38357.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38357.17,38361.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38365.4,38365.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38365.50,38370.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38370.28,38375.106 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38375.106,38379.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38379.19,38383.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38387.6,38387.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38387.108,38395.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38395.30,38398.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38398.67,38402.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38408.6,38408.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38408.115,38416.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38416.30,38419.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38419.60,38424.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38424.32,38430.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38430.111,38434.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38434.23,38438.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38442.10,38442.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38442.107,38450.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38450.34,38455.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38455.89,38464.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38466.12,38466.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38466.89,38475.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38477.12,38477.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38477.90,38486.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38492.10,38492.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38492.76,38497.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38497.34,38500.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38500.78,38502.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38504.12,38504.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38504.74,38506.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38508.12,38508.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38508.71,38510.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38516.10,38516.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38516.72,38521.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38521.34,38526.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38526.90,38535.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38537.12,38537.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38537.92,38546.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38548.12,38548.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38548.91,38557.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38567.8,38567.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38567.67,38571.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38577.6,38577.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38577.107,38585.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38585.30,38588.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38588.60,38593.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38593.32,38599.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38599.111,38603.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38603.23,38607.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38611.10,38611.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38611.107,38619.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38619.34,38624.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38624.89,38633.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38635.12,38635.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38635.89,38644.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38646.12,38646.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38646.90,38655.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38661.10,38661.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38661.76,38666.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38666.34,38669.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38669.78,38671.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38673.12,38673.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38673.74,38675.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38677.12,38677.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38677.71,38679.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38685.10,38685.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38685.72,38690.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38690.34,38695.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38695.90,38704.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38706.12,38706.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38706.92,38715.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38717.12,38717.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38717.91,38726.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38736.8,38736.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38736.53,38741.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38741.32,38747.105 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38747.105,38751.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38751.23,38755.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38759.10,38759.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38759.101,38767.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38767.34,38772.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38772.89,38781.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38783.12,38783.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38783.89,38792.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38794.12,38794.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38794.90,38803.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38809.10,38809.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38809.81,38813.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38815.10,38815.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38815.70,38820.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38820.34,38823.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38823.78,38825.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38827.12,38827.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38827.74,38829.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38831.12,38831.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38831.71,38833.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38839.10,38839.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38839.66,38844.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38844.34,38849.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38849.90,38858.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38860.12,38860.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38860.92,38869.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38871.12,38871.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38871.91,38880.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38894.6,38894.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38894.74,38898.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38900.6,38900.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38900.75,38902.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38904.6,38906.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38906.106,38910.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38910.19,38914.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38918.6,38918.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38918.105,38926.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38926.30,38929.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38929.65,38934.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38934.32,38937.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38937.80,38942.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38942.34,38948.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38948.102,38952.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38952.25,38956.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38960.12,38960.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38960.98,38964.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38964.25,38968.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38972.12,38972.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38972.89,38980.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38980.36,38983.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38983.66,38986.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38986.51,38988.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38989.15,38989.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38993.14,38993.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38993.66,38996.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38996.51,38998.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:38999.15,38999.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39003.14,39003.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39003.66,39006.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39006.51,39008.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39009.15,39009.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39017.12,39017.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39017.70,39019.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39029.8,39029.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39029.66,39033.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39039.6,39039.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39039.82,39044.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39044.30,39050.116 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39050.116,39054.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39054.21,39058.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39062.8,39062.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39062.113,39066.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39066.21,39070.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39074.8,39074.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39074.120,39082.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39082.32,39085.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39085.56,39090.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39090.34,39095.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39095.101,39099.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39099.25,39103.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39107.12,39107.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39107.97,39111.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39111.25,39115.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39119.12,39119.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39119.88,39127.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39127.36,39130.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39130.66,39133.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39133.51,39135.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39136.15,39136.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39140.14,39140.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39140.66,39143.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39143.51,39145.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39146.15,39146.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39150.14,39150.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39150.66,39153.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39153.51,39155.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39156.15,39156.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39164.12,39164.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39164.69,39166.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39172.10,39172.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39172.57,39177.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39177.34,39183.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39183.102,39187.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39187.25,39191.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39195.12,39195.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39195.98,39199.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39199.25,39203.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39207.12,39207.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39207.89,39215.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39215.36,39218.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39218.66,39221.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39221.51,39223.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39224.15,39224.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39228.14,39228.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39228.66,39231.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39231.51,39233.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39234.15,39234.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39238.14,39238.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39238.66,39241.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39241.51,39243.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39244.15,39244.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39252.12,39252.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39252.70,39254.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39260.10,39260.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39260.67,39264.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39270.8,39272.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39272.119,39276.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39276.21,39280.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39284.8,39284.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39284.115,39292.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39292.32,39297.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39297.87,39306.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39308.10,39308.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39308.87,39317.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39319.10,39319.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39319.88,39328.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39334.8,39336.115 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39336.115,39344.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39344.32,39349.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39349.97,39357.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39357.34,39362.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39362.83,39366.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39366.25,39370.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39374.12,39374.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39374.91,39378.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39378.25,39382.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39390.10,39390.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39390.93,39398.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39398.34,39403.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39403.82,39411.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39411.36,39416.117 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39416.117,39420.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39420.27,39424.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39428.14,39428.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39428.109,39436.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39436.38,39439.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39439.74,39444.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39444.40,39448.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39448.86,39450.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39452.18,39452.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39452.94,39454.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39454.55,39456.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39457.19,39457.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39460.18,39460.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39460.88,39464.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39470.16,39470.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39470.74,39475.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39475.40,39479.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39479.86,39481.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39483.18,39483.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39483.94,39485.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39485.55,39487.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39488.19,39488.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39491.18,39491.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39491.88,39495.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39509.12,39509.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39509.86,39513.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39513.25,39517.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39521.12,39521.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39521.90,39525.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39525.25,39529.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39533.12,39533.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39533.83,39537.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39537.25,39541.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39545.12,39545.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39545.90,39549.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39549.25,39553.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39561.10,39561.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39561.97,39569.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39569.34,39574.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39574.82,39578.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39578.25,39582.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39586.12,39586.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39586.91,39590.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39590.25,39594.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39602.10,39602.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39602.85,39610.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39610.34,39615.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39615.84,39619.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39619.25,39623.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39631.10,39631.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39631.97,39639.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39639.34,39644.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39644.83,39648.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39648.25,39652.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39656.12,39656.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39656.83,39660.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39660.25,39664.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39668.12,39668.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39668.81,39672.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39672.25,39676.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39684.10,39684.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39684.85,39692.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39692.34,39697.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39697.90,39701.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39701.25,39705.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39709.12,39709.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39709.91,39713.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39713.25,39717.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39721.12,39721.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39721.95,39725.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39725.25,39729.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39733.12,39733.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39733.88,39737.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39737.25,39741.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39749.10,39749.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39749.98,39757.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39757.34,39762.115 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39762.115,39766.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39766.25,39770.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39774.12,39774.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39774.97,39778.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39778.25,39782.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39786.12,39786.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39786.93,39790.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39790.25,39794.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39798.12,39798.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39798.90,39802.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39802.25,39806.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39810.12,39810.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39810.93,39814.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39814.25,39818.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39822.12,39822.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39822.106,39826.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39826.25,39830.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39834.12,39834.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39834.94,39838.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39838.25,39842.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39846.12,39846.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39846.87,39850.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39850.25,39854.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39858.12,39858.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39858.95,39862.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39862.25,39866.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39870.12,39870.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39870.103,39874.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39874.25,39878.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39882.12,39882.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39882.100,39886.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39886.25,39890.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39894.12,39894.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39894.97,39898.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39898.25,39902.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39914.8,39914.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39914.125,39918.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39918.21,39922.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39926.8,39928.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39928.118,39932.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39932.21,39936.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39940.8,39940.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39940.121,39944.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39944.21,39948.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39952.8,39952.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39952.88,39955.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39955.45,39957.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39958.9,39958.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39962.8,39962.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39962.84,39967.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39967.32,39970.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39970.76,39972.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39974.10,39974.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39974.72,39976.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39978.10,39978.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39978.69,39980.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39986.8,39986.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39986.86,39991.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39991.32,39996.96 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:39996.96,40004.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40004.34,40007.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40007.56,40011.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40013.12,40013.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40013.61,40017.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40019.12,40019.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40019.58,40023.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40029.10,40029.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40029.95,40037.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40037.34,40042.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40042.97,40050.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40050.36,40053.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40053.75,40057.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40059.14,40059.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40059.75,40063.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40069.12,40069.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40069.93,40073.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40073.25,40077.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40085.10,40085.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40085.95,40089.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40089.23,40093.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40097.10,40097.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40097.99,40105.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40105.34,40108.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40108.55,40112.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40122.8,40122.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40122.80,40127.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40127.32,40132.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40132.88,40141.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40143.10,40143.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40143.90,40152.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40154.10,40154.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40154.89,40163.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40169.8,40169.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40169.84,40173.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40183.4,40183.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40183.61,40187.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40189.4,40189.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40189.51,40193.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40199.2,40199.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40199.80,40207.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40207.26,40210.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40210.50,40216.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40216.28,40218.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40218.62,40220.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40221.6,40221.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40221.67,40223.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40225.6,40225.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40225.64,40227.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40232.4,40232.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40232.50,40237.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40237.28,40240.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40240.75,40242.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40244.6,40246.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40246.106,40250.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40250.19,40254.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40258.6,40258.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40258.105,40266.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40266.30,40269.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40269.65,40274.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40274.32,40277.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40277.80,40282.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40282.34,40288.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40288.102,40292.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40292.25,40296.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40300.12,40300.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40300.98,40304.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40304.25,40308.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40312.12,40312.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40312.89,40320.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40320.36,40323.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40323.66,40326.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40326.51,40328.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40329.15,40329.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40333.14,40333.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40333.66,40336.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40336.51,40338.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40339.15,40339.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40343.14,40343.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40343.66,40346.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40346.51,40348.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40349.15,40349.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40357.12,40357.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40357.70,40359.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40373.6,40373.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40373.82,40378.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40378.30,40384.123 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40384.123,40388.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40388.21,40392.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40396.8,40396.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40396.120,40400.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40400.21,40404.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40408.8,40408.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40408.127,40416.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40416.32,40419.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40419.56,40424.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40424.34,40429.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40429.101,40433.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40433.25,40437.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40441.12,40441.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40441.97,40445.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40445.25,40449.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40453.12,40453.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40453.88,40461.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40461.36,40464.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40464.66,40467.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40467.51,40469.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40470.15,40470.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40474.14,40474.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40474.66,40477.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40477.51,40479.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40480.15,40480.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40484.14,40484.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40484.66,40487.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40487.51,40489.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40490.15,40490.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40498.12,40498.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40498.69,40500.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40506.10,40506.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40506.57,40511.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40511.34,40517.102 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40517.102,40521.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40521.25,40525.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40529.12,40529.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40529.98,40533.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40533.25,40537.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40541.12,40541.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40541.89,40549.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40549.36,40552.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40552.66,40555.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40555.51,40557.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40558.15,40558.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40562.14,40562.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40562.66,40565.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40565.51,40567.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40568.15,40568.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40572.14,40572.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40572.66,40575.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40575.51,40577.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40578.15,40578.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40586.12,40586.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40586.70,40588.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40594.10,40594.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40594.67,40598.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40604.8,40606.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40606.119,40610.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40610.21,40614.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40618.8,40618.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40618.115,40626.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40626.32,40631.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40631.87,40640.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40642.10,40642.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40642.87,40651.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40653.10,40653.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40653.88,40662.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40668.8,40670.115 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40670.115,40678.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40678.32,40683.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40683.97,40691.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40691.34,40696.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40696.83,40700.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40700.25,40704.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40708.12,40708.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40708.91,40712.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40712.25,40716.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40724.10,40724.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40724.93,40732.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40732.34,40737.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40737.82,40745.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40745.36,40750.117 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40750.117,40754.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40754.27,40758.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40762.14,40762.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40762.109,40770.38 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40770.38,40773.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40773.74,40778.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40778.40,40782.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40782.86,40784.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40786.18,40786.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40786.94,40788.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40788.55,40790.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40791.19,40791.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40794.18,40794.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40794.88,40798.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40804.16,40804.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40804.74,40809.40 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40809.40,40813.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40813.86,40815.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40817.18,40817.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40817.94,40819.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40819.55,40821.20 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40822.19,40822.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40825.18,40825.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40825.88,40829.19 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40843.12,40843.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40843.86,40847.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40847.25,40851.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40855.12,40855.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40855.90,40859.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40859.25,40863.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40867.12,40867.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40867.83,40871.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40871.25,40875.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40879.12,40879.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40879.90,40883.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40883.25,40887.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40895.10,40895.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40895.97,40903.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40903.34,40908.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40908.82,40912.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40912.25,40916.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40920.12,40920.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40920.91,40924.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40924.25,40928.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40936.10,40936.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40936.85,40944.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40944.34,40949.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40949.84,40953.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40953.25,40957.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40965.10,40965.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40965.97,40973.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40973.34,40978.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40978.83,40982.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40982.25,40986.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40990.12,40990.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40990.83,40994.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:40994.25,40998.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41002.12,41002.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41002.81,41006.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41006.25,41010.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41018.10,41018.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41018.85,41026.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41026.34,41031.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41031.90,41035.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41035.25,41039.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41043.12,41043.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41043.91,41047.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41047.25,41051.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41055.12,41055.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41055.95,41059.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41059.25,41063.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41067.12,41067.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41067.88,41071.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41071.25,41075.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41083.10,41083.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41083.98,41091.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41091.34,41096.115 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41096.115,41100.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41100.25,41104.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41108.12,41108.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41108.97,41112.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41112.25,41116.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41120.12,41120.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41120.93,41124.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41124.25,41128.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41132.12,41132.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41132.90,41136.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41136.25,41140.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41144.12,41144.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41144.93,41148.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41148.25,41152.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41156.12,41156.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41156.106,41160.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41160.25,41164.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41168.12,41168.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41168.94,41172.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41172.25,41176.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41180.12,41180.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41180.87,41184.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41184.25,41188.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41192.12,41192.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41192.95,41196.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41196.25,41200.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41204.12,41204.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41204.103,41208.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41208.25,41212.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41216.12,41216.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41216.100,41220.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41220.25,41224.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41228.12,41228.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41228.97,41232.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41232.25,41236.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41248.8,41248.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41248.125,41252.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41252.21,41256.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41260.8,41260.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41260.88,41263.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41263.45,41265.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41266.9,41266.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41270.8,41270.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41270.84,41275.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41275.32,41278.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41278.76,41280.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41282.10,41282.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41282.72,41284.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41286.10,41286.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41286.69,41288.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41294.8,41294.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41294.80,41299.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41299.32,41304.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41304.88,41313.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41315.10,41315.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41315.90,41324.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41326.10,41326.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41326.89,41335.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41341.8,41341.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41341.81,41346.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41346.32,41350.66 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41350.66,41352.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41354.10,41356.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41356.99,41360.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41360.23,41364.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41368.10,41368.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41368.96,41377.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41379.10,41379.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41379.96,41388.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41394.8,41394.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41394.88,41399.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41399.32,41403.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41403.72,41405.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41407.10,41409.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41409.102,41418.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41420.10,41420.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41420.102,41429.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41443.4,41443.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41443.47,41449.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41449.28,41451.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41451.62,41453.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41454.6,41454.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41454.67,41456.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41458.6,41458.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41458.64,41460.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41469.2,41469.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41469.79,41473.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41473.15,41477.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41481.2,41483.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41483.74,41491.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41491.26,41494.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41494.57,41498.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41500.4,41500.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41500.55,41504.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41510.2,41510.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41510.73,41518.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41518.26,41523.118 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41523.118,41531.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41531.28,41534.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41534.59,41538.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41540.6,41540.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41540.57,41544.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41550.4,41550.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41550.126,41554.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41554.17,41558.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41562.4,41564.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41564.116,41568.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41568.17,41572.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41576.4,41576.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41576.108,41584.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41584.28,41587.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41587.59,41591.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41593.6,41593.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41593.57,41597.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41599.6,41599.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41599.61,41603.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41609.4,41611.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41611.114,41615.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41615.17,41619.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41623.4,41623.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41623.112,41631.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41631.28,41634.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41634.50,41638.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41640.6,41640.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41640.55,41644.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41646.6,41646.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41646.52,41650.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41660.2,41660.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41660.69,41668.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41668.26,41671.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41671.57,41675.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41677.4,41677.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41677.55,41681.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41683.4,41683.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41683.59,41687.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41693.2,41693.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41693.69,41697.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41697.15,41701.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41705.2,41705.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41705.79,41713.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41713.26,41718.118 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41718.118,41726.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41726.28,41729.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41729.59,41733.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41735.6,41735.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41735.57,41739.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41745.4,41745.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41745.126,41749.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41749.17,41753.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41757.4,41759.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41759.104,41763.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41763.17,41767.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41771.4,41771.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41771.99,41775.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41775.17,41779.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41783.4,41783.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41783.85,41787.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41787.17,41791.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41795.4,41797.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41797.116,41801.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41801.17,41805.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41809.4,41809.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41809.108,41817.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41817.28,41820.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41820.59,41824.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41826.6,41826.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41826.57,41830.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41832.6,41832.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41832.61,41836.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41842.4,41844.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41844.114,41848.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41848.17,41852.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41856.4,41856.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41856.112,41864.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41864.28,41867.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41867.50,41871.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41873.6,41873.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41873.55,41877.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41879.6,41879.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41879.52,41883.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41889.4,41889.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41889.53,41894.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41894.28,41897.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41897.66,41902.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41902.30,41906.68 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41906.68,41911.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41911.32,41914.76 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41914.76,41916.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41918.10,41918.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41918.72,41920.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41922.10,41922.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41922.69,41924.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41930.8,41930.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41930.64,41935.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41935.32,41938.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41938.73,41943.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41943.34,41947.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41947.84,41949.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41951.12,41953.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41953.106,41957.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41957.25,41961.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41965.12,41965.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41965.102,41969.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41969.25,41973.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41977.12,41977.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41977.93,41985.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41985.36,41988.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41988.66,41991.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41991.51,41993.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41994.15,41994.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41998.14,41998.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:41998.66,42001.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42001.51,42003.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42004.15,42004.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42008.14,42008.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42008.66,42011.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42011.51,42013.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42014.15,42014.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42022.12,42022.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42022.97,42031.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42033.12,42033.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42033.74,42035.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42041.10,42043.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42043.91,42047.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42047.23,42051.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42055.10,42055.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42055.92,42063.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42063.34,42066.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42066.62,42069.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42069.49,42071.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42072.13,42072.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42080.10,42080.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42080.95,42088.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42088.34,42091.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42091.60,42096.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42096.35,42103.69 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42103.69,42105.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42107.14,42107.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42107.74,42109.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42111.14,42111.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42111.71,42113.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42115.14,42115.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42115.68,42117.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42127.10,42127.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42127.73,42132.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42132.34,42135.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42135.82,42137.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42137.49,42139.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42140.13,42140.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42143.12,42143.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42143.82,42145.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42145.49,42147.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42148.13,42148.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42151.12,42151.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42151.82,42154.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42154.49,42156.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42157.13,42157.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42165.10,42167.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42167.107,42171.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42171.23,42175.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42179.10,42179.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42179.114,42183.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42183.23,42187.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42191.10,42191.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42191.117,42195.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42195.23,42199.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42203.10,42205.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42205.97,42209.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42209.23,42213.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42217.10,42217.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42217.98,42226.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42228.10,42228.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42228.106,42236.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42236.34,42239.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42239.64,42242.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42242.49,42244.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42245.13,42245.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42249.12,42249.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42249.64,42252.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42252.49,42254.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42255.13,42255.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42259.12,42259.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42259.64,42262.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42262.49,42264.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42265.13,42265.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42273.10,42273.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42273.102,42281.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42281.34,42284.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42284.63,42287.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42287.49,42289.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42290.13,42290.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42298.10,42298.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42298.76,42303.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42303.34,42307.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42307.87,42309.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42311.12,42313.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42313.109,42317.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42317.25,42321.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42325.12,42325.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42325.105,42329.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42329.25,42333.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42337.12,42337.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42337.96,42345.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42345.36,42348.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42348.66,42351.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42351.51,42353.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42354.15,42354.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42358.14,42358.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42358.66,42361.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42361.51,42363.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42364.15,42364.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42368.14,42368.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42368.66,42371.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42371.51,42373.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42374.15,42374.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42382.12,42382.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42382.100,42391.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42393.12,42393.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42393.77,42395.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42401.10,42401.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42401.75,42406.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42406.34,42409.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42409.84,42411.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42411.49,42413.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42414.13,42414.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42417.12,42417.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42417.84,42419.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42419.49,42421.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42422.13,42422.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42429.10,42429.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42429.81,42431.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42431.25,42433.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42434.11,42434.40 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42437.10,42437.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42437.68,42442.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42442.34,42446.80 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42446.80,42448.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42450.12,42452.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42452.102,42456.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42456.25,42460.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42464.12,42464.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42464.98,42468.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42468.25,42472.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42476.12,42476.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42476.89,42484.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42484.36,42487.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42487.66,42490.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42490.51,42492.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42493.15,42493.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42497.14,42497.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42497.66,42500.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42500.51,42502.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42503.15,42503.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42507.14,42507.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42507.66,42510.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42510.51,42512.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42513.15,42513.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42521.12,42521.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42521.93,42530.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42532.12,42532.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42532.70,42534.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42540.10,42540.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42540.72,42545.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42545.34,42548.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42548.83,42550.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42552.12,42552.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42552.76,42555.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42555.49,42557.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42558.13,42558.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42566.10,42568.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42568.89,42572.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42572.23,42576.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42580.10,42580.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42580.93,42588.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42588.34,42591.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42591.66,42595.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42597.12,42597.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42597.63,42602.35 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42602.35,42609.69 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42609.69,42611.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42613.14,42613.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42613.74,42615.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42617.14,42617.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42617.71,42619.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42621.14,42621.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42621.68,42623.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42633.10,42633.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42633.97,42641.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42641.34,42644.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42644.64,42648.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42650.12,42650.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42650.63,42653.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42653.49,42655.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42656.13,42656.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42660.12,42660.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42660.65,42663.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42663.49,42665.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42666.13,42666.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42674.10,42674.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42674.65,42679.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42679.34,42682.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42682.75,42684.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42684.49,42686.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42687.13,42687.34 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42690.12,42690.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42690.76,42692.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42692.49,42694.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42695.13,42695.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42698.12,42698.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42698.75,42700.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42700.49,42702.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42703.13,42703.34 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42706.12,42706.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42706.76,42708.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42708.49,42710.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42711.13,42711.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42714.12,42714.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42714.75,42717.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42717.49,42719.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42720.13,42720.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42728.10,42728.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42728.73,42733.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42733.34,42737.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42737.84,42739.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42741.12,42741.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42741.73,42743.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42745.12,42747.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42747.106,42751.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42751.25,42755.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42759.12,42759.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42759.102,42763.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42763.25,42767.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42771.12,42771.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42771.93,42779.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42779.36,42782.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42782.66,42785.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42785.51,42787.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42788.15,42788.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42792.14,42792.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42792.66,42795.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42795.51,42797.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42798.15,42798.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42802.14,42802.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42802.66,42805.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42805.51,42807.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42808.15,42808.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42816.12,42816.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42816.97,42825.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42831.10,42831.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42831.84,42836.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42836.34,42839.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42839.87,42842.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42842.49,42844.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42845.13,42845.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42849.12,42849.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42849.92,42851.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42851.49,42853.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42854.13,42854.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42857.12,42857.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42857.95,42859.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42859.49,42861.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42862.13,42862.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42881.4,42883.128 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42883.128,42887.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42887.17,42891.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42895.4,42895.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42895.114,42903.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42903.28,42906.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42906.57,42910.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42920.2,42922.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42922.86,42930.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42930.26,42933.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42933.50,42938.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42938.28,42943.106 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42943.106,42947.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42947.19,42951.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42955.6,42955.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42955.108,42959.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42959.19,42963.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42967.6,42967.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42967.115,42975.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42975.30,42978.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42978.60,42983.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42983.32,42989.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42989.111,42993.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:42993.23,42997.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43001.10,43001.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43001.107,43009.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43009.34,43014.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43014.89,43023.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43025.12,43025.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43025.89,43034.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43036.12,43036.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43036.90,43045.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43051.10,43051.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43051.76,43056.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43056.34,43059.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43059.78,43061.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43063.12,43063.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43063.74,43065.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43067.12,43067.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43067.71,43069.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43075.10,43075.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43075.72,43080.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43080.34,43085.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43085.90,43094.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43096.12,43096.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43096.92,43105.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43107.12,43107.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43107.91,43116.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43130.6,43130.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43130.107,43138.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43138.30,43141.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43141.60,43146.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43146.32,43152.111 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43152.111,43156.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43156.23,43160.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43164.10,43164.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43164.107,43172.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43172.34,43177.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43177.89,43186.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43188.12,43188.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43188.89,43197.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43199.12,43199.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43199.90,43208.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43214.10,43214.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43214.76,43219.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43219.34,43222.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43222.78,43224.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43226.12,43226.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43226.74,43228.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43230.12,43230.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43230.71,43232.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43238.10,43238.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43238.72,43243.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43243.34,43248.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43248.90,43257.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43259.12,43259.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43259.92,43268.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43270.12,43270.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43270.91,43279.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43289.8,43289.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43289.53,43294.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43294.32,43300.105 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43300.105,43304.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43304.23,43308.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43312.10,43312.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43312.101,43320.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43320.34,43325.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43325.89,43334.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43336.12,43336.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43336.89,43345.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43347.12,43347.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43347.90,43356.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43362.10,43362.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43362.70,43367.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43367.34,43370.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43370.78,43372.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43374.12,43374.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43374.74,43376.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43378.12,43378.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43378.71,43380.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43386.10,43386.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43386.66,43391.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43391.34,43396.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43396.90,43405.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43407.12,43407.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43407.92,43416.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43418.12,43418.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43418.91,43427.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43449.2,43449.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43449.94,43453.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43453.15,43457.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43461.2,43461.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43461.58,43466.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43466.26,43469.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43469.78,43471.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43473.4,43473.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43473.74,43475.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43477.4,43477.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43477.74,43479.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43481.4,43481.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43481.73,43483.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43483.41,43485.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43486.5,43486.32 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43489.4,43489.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43489.79,43491.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43491.41,43493.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43494.5,43494.37 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43497.4,43497.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43497.69,43499.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43501.4,43501.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43501.75,43503.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43505.4,43505.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43505.68,43507.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43509.4,43509.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43509.72,43511.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43517.2,43517.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43517.58,43522.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43522.26,43527.114 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43527.114,43531.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43531.17,43535.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43539.4,43539.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43539.107,43547.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43547.28,43550.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43550.53,43553.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43553.43,43555.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43556.7,43556.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43568.2,43568.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43568.63,43573.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43573.26,43579.107 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43579.107,43583.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43583.17,43587.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43591.4,43591.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43591.106,43595.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43595.17,43599.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43603.4,43605.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43605.101,43609.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43609.17,43613.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43617.4,43617.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43617.102,43626.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43628.4,43628.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43628.103,43637.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43639.4,43639.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43639.73,43644.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43644.28,43647.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43647.72,43649.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43651.6,43651.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43651.68,43653.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43655.6,43655.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43655.65,43657.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43663.4,43663.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43663.69,43668.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43668.28,43673.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43673.84,43682.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43684.6,43684.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43684.86,43693.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43695.6,43695.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43695.85,43704.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43714.2,43716.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43716.85,43720.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43720.15,43724.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43728.2,43728.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43728.84,43736.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43736.26,43741.101 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43741.101,43745.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43745.17,43749.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43753.4,43753.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43753.100,43761.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43761.28,43766.71 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43766.71,43770.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43770.19,43774.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43778.6,43778.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43778.78,43786.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43786.30,43789.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43789.61,43793.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43795.8,43795.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43795.59,43799.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43801.8,43801.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43801.63,43805.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43819.2,43819.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43819.68,43824.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43824.26,43828.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43828.90,43830.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43830.19,43832.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43833.5,43833.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43836.4,43836.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43836.78,43841.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43841.28,43844.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43844.72,43846.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43848.6,43848.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43848.68,43850.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43852.6,43852.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43852.65,43854.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43860.4,43862.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43862.105,43866.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43866.17,43870.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43874.4,43876.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43876.118,43884.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43884.28,43887.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43887.54,43892.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43892.30,43895.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43895.72,43897.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43897.45,43899.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43900.9,43900.31 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43907.6,43907.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43907.58,43910.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43910.43,43912.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43913.7,43913.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43917.6,43917.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43917.69,43922.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43922.30,43925.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43925.83,43928.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43928.45,43930.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43931.9,43931.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43935.8,43935.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43935.88,43937.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43937.45,43939.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43940.9,43940.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43943.8,43943.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43943.91,43945.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43945.45,43947.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43948.9,43948.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43959.4,43959.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43959.114,43967.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43967.28,43970.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43970.58,43974.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43976.6,43976.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43976.57,43979.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43979.43,43981.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43982.7,43982.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43986.6,43986.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43986.59,43989.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43989.43,43991.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:43992.7,43992.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44004.2,44004.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44004.66,44009.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44009.26,44013.84 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44013.84,44015.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44015.50,44017.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44018.5,44018.46 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44021.4,44023.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44023.99,44031.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44031.28,44034.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44034.50,44038.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44040.6,44040.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44040.55,44044.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44046.6,44046.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44046.52,44050.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44056.4,44056.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44056.96,44064.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44064.28,44067.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44067.50,44071.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44073.6,44073.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44073.55,44077.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44079.6,44079.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44079.52,44083.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44089.4,44089.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44089.76,44091.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44093.4,44093.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44093.74,44095.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44101.2,44101.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44101.54,44104.39 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44104.39,44106.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44107.3,44107.26 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44111.2,44111.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44111.60,44116.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44116.26,44122.99 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44122.99,44126.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44126.17,44130.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44134.4,44134.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44134.100,44143.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44145.4,44145.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44145.101,44154.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44156.4,44156.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44156.73,44158.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44160.4,44160.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44160.79,44165.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44165.28,44170.134 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44170.134,44174.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44174.19,44178.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44182.6,44182.133 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44182.133,44186.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44186.19,44190.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44194.6,44194.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44194.87,44196.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44198.6,44198.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44198.77,44200.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44202.6,44202.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44202.84,44204.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44206.6,44206.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44206.84,44208.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44210.6,44210.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44210.79,44212.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44218.4,44218.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44218.71,44223.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44223.28,44226.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44226.72,44228.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44230.6,44230.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44230.68,44232.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44234.6,44234.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44234.65,44236.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44242.4,44244.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44244.99,44248.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44248.17,44252.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44256.4,44256.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44256.100,44260.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44260.17,44264.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44272.2,44274.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44274.77,44282.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44282.26,44287.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44287.78,44291.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44291.17,44295.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44299.4,44299.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44299.81,44303.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44303.17,44307.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44311.4,44311.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44311.48,44315.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44317.4,44317.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44317.48,44321.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44323.4,44325.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44325.81,44329.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44329.17,44333.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44337.4,44337.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44337.78,44341.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44341.17,44345.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44349.4,44349.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44349.79,44353.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44353.17,44357.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44361.4,44361.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44361.81,44365.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44365.17,44369.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44373.4,44375.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44375.74,44379.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44379.17,44383.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44387.4,44387.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44387.77,44391.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44391.17,44395.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44399.4,44399.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44399.47,44403.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44409.2,44409.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44409.72,44413.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44413.15,44417.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44421.2,44421.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44421.66,44425.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44425.15,44429.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44433.2,44433.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44433.69,44441.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44441.26,44444.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44444.55,44449.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44449.28,44455.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44455.98,44463.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44463.30,44468.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44468.82,44472.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44472.21,44476.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44480.8,44480.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44480.85,44484.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44484.21,44488.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44492.8,44492.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44492.52,44496.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44498.8,44498.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44498.52,44502.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44504.8,44506.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44506.85,44510.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44510.21,44514.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44518.8,44518.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44518.82,44522.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44522.21,44526.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44530.8,44530.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44530.83,44534.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44534.21,44538.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44542.8,44542.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44542.85,44546.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44546.21,44550.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44554.8,44556.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44556.78,44560.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44560.21,44564.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44568.8,44568.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44568.81,44572.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44572.21,44576.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44580.8,44580.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44580.51,44584.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44590.6,44590.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44590.103,44599.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44601.6,44601.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44601.101,44610.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44612.6,44612.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44612.71,44614.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44624.2,44624.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44624.71,44628.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44628.15,44632.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44636.2,44636.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44636.80,44640.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44640.15,44644.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44648.2,44650.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44650.83,44654.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44654.15,44658.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44662.2,44662.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44662.82,44670.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44670.26,44673.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44673.64,44676.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44676.41,44678.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44679.5,44679.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44687.2,44687.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44687.61,44692.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44692.26,44695.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44695.70,44700.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44700.28,44705.90 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44705.90,44709.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44709.19,44713.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44717.6,44717.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44717.91,44721.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44721.19,44725.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44733.4,44735.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44735.110,44744.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44746.4,44746.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44746.99,44755.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44757.4,44757.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44757.106,44765.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44765.28,44768.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44768.55,44772.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44778.4,44778.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44778.79,44783.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44783.28,44788.107 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44788.107,44796.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44796.30,44799.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44799.57,44802.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44802.45,44804.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44805.9,44805.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44813.6,44813.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44813.115,44817.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44817.19,44821.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44825.6,44827.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44827.103,44836.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44838.6,44838.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44838.111,44842.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44842.19,44846.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44850.6,44852.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44852.118,44856.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44856.19,44860.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44864.6,44864.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44864.117,44868.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44868.19,44872.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44880.4,44880.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44880.70,44885.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44885.28,44890.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44890.91,44894.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44894.19,44898.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44902.6,44902.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44902.89,44910.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44910.30,44913.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44913.58,44916.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44916.45,44918.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44919.9,44919.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44927.6,44927.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44927.89,44935.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44935.30,44938.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44938.58,44941.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44941.45,44943.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44944.9,44944.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44956.4,44956.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44956.78,44961.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44961.28,44966.105 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44966.105,44970.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44970.19,44974.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44978.6,44978.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44978.99,44987.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44989.6,44989.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:44989.99,44998.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45000.6,45000.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45000.104,45009.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45019.2,45021.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45021.64,45029.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45029.26,45032.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45032.64,45036.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45038.4,45040.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45040.72,45049.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45051.4,45051.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45051.79,45060.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45066.2,45066.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45066.65,45074.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45074.26,45077.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45077.52,45081.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45083.4,45083.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45083.67,45087.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45089.4,45091.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45091.93,45095.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45095.17,45099.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45103.4,45103.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45103.97,45107.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45107.17,45111.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45115.4,45115.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45115.70,45120.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45120.28,45125.146 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45125.146,45129.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45129.19,45133.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45137.6,45137.150 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45137.150,45141.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45141.19,45145.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45153.4,45153.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45153.65,45158.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45158.28,45163.132 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45163.132,45167.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45167.19,45171.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45175.6,45175.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45175.130,45179.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45179.19,45183.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45187.6,45187.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45187.132,45191.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45191.19,45195.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45203.4,45203.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45203.57,45207.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45209.4,45211.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45211.99,45215.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45215.17,45219.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45223.4,45223.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45223.98,45227.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45227.17,45231.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45235.4,45237.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45237.72,45246.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45248.4,45248.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45248.79,45257.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45259.4,45261.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45261.94,45270.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45272.4,45272.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45272.90,45276.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45276.17,45280.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45284.4,45284.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45284.88,45288.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45288.17,45292.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45296.4,45296.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45296.87,45305.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45307.4,45309.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45309.94,45317.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45317.28,45320.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45320.58,45325.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45325.29,45330.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45330.62,45332.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45334.8,45334.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45334.67,45336.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45338.8,45338.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45338.64,45340.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45346.6,45348.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45348.77,45352.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45352.19,45356.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45360.6,45360.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45360.78,45368.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45368.30,45373.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45373.74,45381.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45381.32,45384.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45384.54,45388.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45390.10,45390.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45390.59,45394.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45396.10,45396.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45396.56,45400.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45406.8,45406.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45406.77,45410.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45410.21,45414.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45418.8,45420.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45420.87,45428.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45428.32,45431.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45431.54,45435.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45437.10,45437.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45437.59,45441.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45443.10,45443.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45443.56,45447.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45453.8,45453.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45453.91,45462.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45464.8,45466.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45466.85,45470.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45470.21,45474.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45478.8,45478.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45478.84,45486.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45486.32,45489.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45489.70,45492.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45492.47,45494.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45495.11,45495.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45507.6,45507.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45507.56,45512.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45512.30,45517.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45517.99,45525.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45525.32,45528.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45528.63,45531.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45531.47,45533.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45534.11,45534.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45538.10,45538.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45538.61,45542.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45544.10,45544.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45544.61,45548.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45554.8,45554.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45554.100,45558.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45558.21,45562.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45566.8,45566.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45566.96,45570.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45570.21,45574.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45578.8,45578.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45578.99,45582.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45582.21,45586.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45598.4,45598.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45598.93,45606.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45606.28,45611.77 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45611.77,45615.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45615.19,45619.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45623.6,45623.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45623.78,45631.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45631.30,45636.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45636.74,45644.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45644.32,45647.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45647.54,45651.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45653.10,45653.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45653.59,45657.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45659.10,45659.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45659.56,45663.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45669.8,45669.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45669.77,45673.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45673.21,45677.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45681.8,45683.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45683.87,45691.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45691.32,45694.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45694.54,45698.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45700.10,45700.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45700.59,45704.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45706.10,45706.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45706.56,45710.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45716.8,45716.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45716.91,45725.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45727.8,45729.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45729.85,45733.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45733.21,45737.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45741.8,45741.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45741.84,45749.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45749.32,45752.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45752.70,45755.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45755.47,45757.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45758.11,45758.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45770.6,45770.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45770.62,45775.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45775.30,45779.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45779.85,45781.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45783.8,45783.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45783.81,45785.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45787.8,45789.124 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45789.124,45797.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45797.32,45800.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45800.65,45803.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45803.47,45805.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45806.11,45806.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45814.8,45814.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45814.123,45818.9 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45820.8,45820.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45820.121,45824.9 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45826.8,45826.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45826.81,45831.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45831.32,45834.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45834.97,45839.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45839.34,45842.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45842.105,45844.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45846.12,45846.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45846.94,45848.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45850.12,45850.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45850.100,45852.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45858.10,45858.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45858.87,45862.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45864.10,45866.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45866.117,45874.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45874.34,45877.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45877.71,45881.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45883.12,45883.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45883.60,45887.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45889.12,45889.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45889.66,45893.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45899.10,45899.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45899.113,45907.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45907.34,45910.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45910.60,45914.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45916.12,45916.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45916.55,45920.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45926.10,45926.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45926.113,45934.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45934.34,45937.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45937.55,45941.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45943.12,45943.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45943.60,45947.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45949.12,45949.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45949.60,45953.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45955.12,45955.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45955.67,45959.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45961.12,45961.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45961.59,45965.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45971.10,45971.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45971.115,45979.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45979.34,45982.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:45982.56,45986.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46000.6,46000.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46000.56,46005.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46005.30,46010.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46010.99,46018.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46018.32,46021.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46021.63,46024.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46024.47,46026.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46027.11,46027.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46031.10,46031.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46031.61,46035.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46037.10,46037.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46037.61,46041.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46047.8,46047.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46047.100,46051.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46051.21,46055.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46059.8,46059.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46059.96,46063.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46063.21,46067.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46071.8,46071.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46071.99,46075.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46075.21,46079.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46095.2,46095.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46095.75,46103.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46103.26,46106.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46106.52,46110.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46112.4,46112.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46112.67,46116.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46118.4,46120.93 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46120.93,46124.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46124.17,46128.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46132.4,46132.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46132.97,46136.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46136.17,46140.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46144.4,46144.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46144.70,46149.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46149.28,46154.146 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46154.146,46158.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46158.19,46162.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46166.6,46166.150 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46166.150,46170.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46170.19,46174.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46182.4,46182.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46182.65,46187.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46187.28,46192.132 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46192.132,46196.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46196.19,46200.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46204.6,46204.130 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46204.130,46208.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46208.19,46212.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46216.6,46216.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46216.132,46220.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46220.19,46224.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46232.4,46232.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46232.57,46236.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46238.4,46240.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46240.75,46244.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46244.17,46248.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46252.4,46252.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46252.76,46260.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46260.28,46265.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46265.72,46273.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46273.30,46276.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46276.52,46280.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46282.8,46282.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46282.57,46286.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46288.8,46288.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46288.54,46292.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46298.6,46298.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46298.75,46302.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46302.19,46306.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46310.6,46312.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46312.85,46320.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46320.30,46323.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46323.52,46327.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46329.8,46329.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46329.57,46333.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46335.8,46335.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46335.54,46339.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46345.6,46345.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46345.89,46354.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46356.6,46358.83 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46358.83,46362.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46362.19,46366.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46370.6,46370.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46370.82,46378.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46378.30,46381.68 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46381.68,46384.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46384.45,46386.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46387.9,46387.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46399.4,46401.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46401.99,46405.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46405.17,46409.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46413.4,46413.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46413.98,46417.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46417.17,46421.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46425.4,46427.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46427.72,46436.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46438.4,46438.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46438.79,46447.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46449.4,46451.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46451.94,46460.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46462.4,46462.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46462.90,46466.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46466.17,46470.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46474.4,46474.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46474.88,46478.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46478.17,46482.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46486.4,46486.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46486.87,46495.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46497.4,46497.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46497.54,46502.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46502.28,46507.97 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46507.97,46515.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46515.30,46518.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46518.61,46521.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46521.45,46523.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46524.9,46524.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46528.8,46528.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46528.59,46532.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46534.8,46534.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46534.59,46538.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46544.6,46544.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46544.98,46548.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46548.19,46552.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46556.6,46556.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46556.94,46560.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46560.19,46564.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46568.6,46568.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46568.97,46572.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46572.19,46576.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46588.2,46590.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46590.104,46594.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46594.15,46598.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46602.2,46602.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46602.103,46606.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46606.15,46610.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46614.2,46614.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46614.72,46620.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46620.26,46622.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46622.62,46624.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46625.4,46625.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46625.67,46627.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46629.4,46629.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46629.64,46631.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46636.2,46638.70 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46638.70,46642.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46642.15,46646.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46650.2,46650.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46650.71,46658.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46658.26,46663.93 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46663.93,46667.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46667.17,46671.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46675.4,46675.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46675.92,46683.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46683.28,46686.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46686.69,46691.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46691.30,46694.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46694.119,46696.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46702.6,46704.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46704.119,46708.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46708.19,46712.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46716.6,46716.118 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46716.118,46720.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46720.19,46724.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46728.6,46728.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46728.76,46733.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46733.30,46736.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46736.119,46741.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46741.32,46745.98 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46745.98,46750.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46750.34,46753.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46753.78,46755.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46757.12,46757.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46757.74,46759.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46761.12,46761.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46761.71,46763.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46769.10,46769.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46769.121,46774.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46774.34,46779.123 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46779.123,46783.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46783.25,46787.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46791.12,46791.128 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46791.128,46800.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46802.12,46804.125 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46804.125,46812.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46812.36,46817.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46817.89,46826.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46828.14,46828.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46828.89,46837.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46843.12,46843.131 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46843.131,46851.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46851.36,46854.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46854.65,46859.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46859.38,46864.108 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46864.108,46873.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46875.16,46875.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46875.108,46884.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46890.14,46890.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46890.67,46895.38 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46895.38,46900.112 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46900.112,46909.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46911.16,46911.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46911.112,46920.17 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46930.12,46930.127 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46930.127,46938.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46938.36,46943.91 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46943.91,46952.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46954.14,46954.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46954.91,46963.15 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46969.12,46971.134 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46971.134,46975.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46975.25,46979.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46983.12,46983.135 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46983.135,46987.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46987.25,46991.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46995.12,46995.126 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46995.126,46999.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:46999.25,47003.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47007.12,47007.129 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47007.129,47015.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47015.36,47018.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47018.69,47021.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47021.51,47023.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47024.15,47024.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47032.12,47034.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47034.123,47038.25 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47038.25,47042.14 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47046.12,47046.132 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47046.132,47054.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47054.36,47057.71 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47057.71,47061.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47063.14,47063.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47063.61,47066.51 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47066.51,47068.16 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47069.15,47069.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47077.12,47077.122 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47077.122,47086.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47088.12,47088.122 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47088.122,47097.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47103.10,47103.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47103.109,47108.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47108.34,47111.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47111.80,47113.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47123.8,47123.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47123.105,47128.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47128.32,47132.81 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47132.81,47134.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47148.4,47150.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47150.99,47154.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47154.17,47158.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47162.4,47162.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47162.98,47170.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47170.28,47175.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47175.103,47179.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47179.19,47183.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47187.6,47187.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47187.102,47195.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47195.30,47200.73 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47200.73,47204.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47204.21,47208.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47212.8,47212.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47212.80,47220.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47220.32,47223.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47223.63,47227.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47229.10,47229.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47229.61,47233.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47235.10,47235.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47235.65,47239.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47253.4,47255.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47255.118,47259.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47259.17,47263.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47267.4,47267.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47267.117,47271.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47271.17,47275.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47283.2,47283.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47283.58,47288.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47288.26,47291.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47291.74,47296.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47296.28,47299.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47299.73,47301.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47303.6,47303.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47303.82,47305.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47307.6,47307.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47307.81,47309.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47315.4,47315.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47315.79,47320.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47320.28,47323.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47323.84,47325.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47327.6,47327.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47327.82,47329.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47329.43,47331.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47332.7,47332.41 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47335.6,47335.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47335.92,47337.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47339.6,47339.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47339.99,47341.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47347.4,47347.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47347.78,47352.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47352.28,47358.125 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47358.125,47362.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47362.19,47366.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47370.6,47370.124 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47370.124,47374.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47374.19,47378.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47382.6,47384.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47384.102,47388.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47388.19,47392.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47396.6,47396.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47396.105,47400.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47400.19,47404.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47408.6,47410.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47410.102,47414.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47414.19,47418.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47422.6,47422.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47422.101,47431.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47433.6,47433.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47433.72,47435.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47437.6,47439.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47439.105,47443.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47443.19,47447.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47451.6,47451.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47451.102,47455.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47455.19,47459.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47463.6,47463.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47463.103,47467.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47467.19,47471.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47475.6,47475.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47475.105,47479.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47479.19,47483.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47487.6,47489.98 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47489.98,47493.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47493.19,47497.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47501.6,47501.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47501.101,47505.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47505.19,47509.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47517.4,47517.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47517.74,47519.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47519.50,47523.20 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47523.20,47525.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47526.6,47527.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47529.5,47529.33 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47532.4,47532.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47532.88,47534.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47536.4,47536.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47536.73,47538.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47540.4,47540.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47540.76,47545.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47545.28,47548.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47548.79,47550.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47552.6,47552.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47552.84,47554.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47556.6,47558.105 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47558.105,47560.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47566.4,47566.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47566.64,47571.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47571.27,47576.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47576.60,47578.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47580.6,47580.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47580.65,47582.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47584.6,47584.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47584.62,47586.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47592.4,47592.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47592.84,47594.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47596.4,47598.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47598.116,47602.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47602.17,47606.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47610.4,47610.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47610.115,47614.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47614.17,47618.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47622.4,47622.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47622.83,47627.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47627.28,47631.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47631.78,47633.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47635.6,47635.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47635.76,47637.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47639.6,47641.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47641.109,47649.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47649.30,47652.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47652.78,47657.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47657.32,47660.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47660.103,47662.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47664.10,47664.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47664.92,47666.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47668.10,47668.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47668.98,47670.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47676.8,47676.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47676.68,47680.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47682.8,47684.98 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47684.98,47692.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47692.32,47695.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47695.69,47699.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47701.10,47701.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47701.58,47705.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47707.10,47707.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47707.64,47711.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47717.8,47717.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47717.94,47725.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47725.32,47728.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47728.58,47732.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47734.10,47734.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47734.53,47738.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47744.8,47744.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47744.94,47752.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47752.32,47755.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47755.53,47759.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47761.10,47761.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47761.58,47765.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47767.10,47767.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47767.58,47771.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47773.10,47773.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47773.65,47777.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47779.10,47779.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47779.57,47783.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47789.8,47789.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47789.96,47797.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47797.32,47800.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47800.54,47804.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47814.6,47814.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47814.102,47823.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47829.4,47829.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47829.86,47831.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47831.41,47833.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47834.5,47834.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47837.4,47837.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47837.84,47842.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47842.28,47846.79 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47846.79,47848.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47850.6,47850.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47850.77,47852.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47854.6,47856.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47856.110,47864.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47864.30,47867.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47867.78,47872.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47872.32,47875.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47875.103,47877.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47879.10,47879.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47879.92,47881.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47883.10,47883.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47883.98,47885.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47891.8,47891.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47891.68,47895.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47897.8,47899.98 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47899.98,47907.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47907.32,47910.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47910.69,47914.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47916.10,47916.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47916.58,47920.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47922.10,47922.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47922.64,47926.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47932.8,47932.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47932.94,47940.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47940.32,47943.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47943.58,47947.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47949.10,47949.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47949.53,47953.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47959.8,47959.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47959.94,47967.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47967.32,47970.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47970.53,47974.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47976.10,47976.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47976.58,47980.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47982.10,47982.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47982.58,47986.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47988.10,47988.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47988.65,47992.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47994.10,47994.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:47994.57,47998.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48004.8,48004.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48004.96,48012.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48012.32,48015.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48015.54,48019.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48029.6,48029.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48029.103,48038.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48044.4,48044.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48044.87,48046.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48046.41,48048.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48049.5,48049.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48052.4,48054.123 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48054.123,48062.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48062.28,48065.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48065.53,48068.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48068.43,48070.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48071.7,48071.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48079.4,48079.140 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48079.140,48083.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48083.17,48087.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48095.2,48097.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48097.72,48105.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48105.26,48108.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48108.60,48113.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48113.28,48118.117 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48118.117,48122.7 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48124.6,48124.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48124.125,48128.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48128.19,48132.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48136.6,48136.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48136.125,48140.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48140.19,48144.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48148.6,48148.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48148.86,48150.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48152.6,48152.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48152.94,48157.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48157.30,48162.148 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48162.148,48166.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48166.21,48170.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48174.8,48174.152 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48174.152,48178.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48178.21,48182.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48190.6,48190.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48190.85,48192.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48194.6,48196.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48196.114,48200.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48200.19,48204.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48208.6,48208.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48208.110,48212.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48212.19,48216.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48220.6,48220.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48220.111,48224.7 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48226.6,48228.129 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48228.129,48232.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48232.19,48236.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48240.6,48240.121 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48240.121,48244.7 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48246.6,48248.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48248.118,48252.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48252.19,48256.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48260.6,48260.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48260.115,48269.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48271.6,48273.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48273.109,48277.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48277.19,48281.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48285.6,48285.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48285.108,48293.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48293.30,48296.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48296.64,48301.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48301.32,48305.10 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48309.8,48311.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48311.94,48315.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48315.21,48319.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48323.8,48323.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48323.96,48331.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48331.32,48334.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48334.64,48337.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48337.56,48339.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48340.11,48340.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48347.8,48347.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48347.94,48351.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48351.21,48355.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48367.4,48367.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48367.62,48371.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48373.4,48375.96 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48375.96,48384.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48386.4,48386.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48386.100,48390.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48390.17,48394.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48398.4,48398.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48398.55,48403.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48403.27,48408.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48408.60,48410.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48412.6,48412.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48412.65,48414.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48416.6,48416.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48416.62,48418.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48424.4,48424.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48424.66,48428.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48430.4,48430.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48430.58,48435.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48435.28,48441.100 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48441.100,48449.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48449.30,48454.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48454.89,48458.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48458.21,48462.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48466.8,48466.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48466.90,48470.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48470.21,48474.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48478.8,48478.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48478.60,48482.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48484.8,48484.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48484.60,48489.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48489.32,48494.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48494.92,48502.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48502.34,48505.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48505.56,48509.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48511.12,48511.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48511.61,48515.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48517.12,48517.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48517.58,48521.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48527.10,48527.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48527.100,48535.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48535.34,48538.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48538.56,48542.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48544.12,48544.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48544.61,48548.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48550.12,48550.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48550.58,48554.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48568.6,48568.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48568.108,48576.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48576.30,48579.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48579.56,48585.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48585.32,48587.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48587.66,48589.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48590.10,48590.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48590.71,48592.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48594.10,48594.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48594.68,48596.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48605.6,48605.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48605.97,48613.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48613.30,48618.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48618.89,48622.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48622.21,48626.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48630.8,48630.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48630.90,48634.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48634.21,48638.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48642.8,48642.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48642.88,48646.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48646.21,48650.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48654.8,48656.85 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48656.85,48665.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48667.8,48667.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48667.89,48675.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48675.32,48678.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48678.61,48681.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48681.47,48683.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48684.11,48684.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48692.8,48692.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48692.60,48697.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48697.32,48702.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48702.92,48710.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48710.34,48713.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48713.56,48717.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48719.12,48719.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48719.61,48723.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48725.12,48725.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48725.58,48729.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48735.10,48735.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48735.100,48743.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48743.34,48746.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48746.56,48750.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48752.12,48752.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48752.61,48756.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48758.12,48758.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48758.58,48762.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48776.6,48776.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48776.96,48784.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48784.30,48789.89 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48789.89,48793.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48793.21,48797.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48801.8,48801.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48801.90,48805.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48805.21,48809.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48813.8,48815.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48815.79,48824.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48826.8,48826.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48826.81,48835.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48837.8,48837.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48837.60,48842.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48842.32,48847.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48847.92,48855.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48855.34,48858.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48858.56,48862.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48864.12,48864.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48864.61,48868.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48870.12,48870.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48870.58,48874.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48880.10,48880.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48880.100,48888.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48888.34,48891.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48891.56,48895.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48897.12,48897.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48897.61,48901.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48903.12,48903.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48903.58,48907.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48921.6,48921.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48921.98,48929.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48929.30,48932.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48932.56,48936.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48938.8,48940.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48940.89,48944.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48944.21,48948.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48952.8,48952.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48952.90,48956.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48956.21,48960.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48964.8,48964.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48964.64,48968.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48970.8,48970.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48970.60,48975.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48975.32,48980.92 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48980.92,48988.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48988.34,48991.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48991.56,48995.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48997.12,48997.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:48997.61,49001.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49003.12,49003.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49003.58,49007.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49013.10,49013.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49013.100,49021.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49021.34,49024.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49024.56,49028.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49030.12,49030.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49030.61,49034.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49036.12,49036.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49036.58,49040.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49054.6,49054.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49054.95,49062.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49062.30,49067.78 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49067.78,49076.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49078.8,49078.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49078.80,49087.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49093.6,49093.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49093.97,49101.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49101.30,49104.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49104.56,49108.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49110.8,49110.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49110.64,49114.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49120.6,49120.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49120.96,49128.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49128.30,49133.72 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49133.72,49142.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49144.8,49144.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49144.74,49153.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49155.8,49155.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49155.55,49161.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49161.32,49163.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49163.66,49165.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49166.10,49166.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49166.71,49168.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49170.10,49170.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49170.68,49172.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49177.8,49177.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49177.60,49182.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49182.32,49187.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49187.103,49195.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49195.34,49198.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49198.56,49202.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49204.12,49204.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49204.61,49208.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49210.12,49210.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49210.58,49214.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49220.10,49220.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49220.92,49228.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49228.34,49231.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49231.56,49235.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49237.12,49237.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49237.61,49241.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49243.12,49243.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49243.58,49247.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49253.10,49253.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49253.100,49261.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49261.34,49264.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49264.56,49268.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49270.12,49270.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49270.61,49274.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49276.12,49276.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49276.58,49280.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49294.6,49294.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49294.98,49302.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49302.30,49305.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49305.56,49309.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49311.8,49311.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49311.64,49315.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49317.8,49317.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49317.55,49323.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49323.32,49325.66 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49325.66,49327.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49328.10,49328.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49328.71,49330.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49332.10,49332.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49332.68,49334.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49339.8,49339.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49339.60,49344.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49344.32,49349.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49349.103,49357.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49357.34,49360.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49360.56,49364.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49366.12,49366.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49366.61,49370.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49372.12,49372.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49372.58,49376.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49382.10,49382.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49382.92,49390.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49390.34,49393.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49393.56,49397.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49399.12,49399.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49399.61,49403.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49405.12,49405.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49405.58,49409.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49415.10,49415.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49415.100,49423.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49423.34,49426.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49426.56,49430.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49432.12,49432.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49432.61,49436.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49438.12,49438.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49438.58,49442.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49456.6,49456.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49456.99,49464.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49464.30,49467.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49467.63,49473.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49473.32,49475.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49475.67,49477.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49478.10,49478.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49478.72,49480.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49482.10,49482.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49482.69,49484.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49489.8,49491.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49491.86,49500.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49502.8,49502.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49502.88,49511.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49517.6,49517.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49517.101,49525.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49525.30,49528.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49528.56,49532.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49534.8,49534.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49534.63,49540.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49540.32,49542.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49542.67,49544.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49545.10,49545.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49545.72,49547.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49549.10,49549.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49549.69,49551.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49560.6,49560.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49560.72,49562.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49562.52,49564.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49565.7,49565.35 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49572.4,49574.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49574.82,49578.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49578.17,49582.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49586.4,49586.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49586.75,49590.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49590.17,49594.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49598.4,49598.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49598.72,49607.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49609.4,49611.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49611.73,49615.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49615.17,49619.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49623.4,49623.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49623.74,49631.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49631.28,49636.77 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49636.77,49640.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49640.19,49644.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49648.6,49648.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49648.78,49656.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49656.30,49659.64 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49659.64,49664.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49664.32,49668.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49668.87,49670.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49672.10,49672.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49672.83,49674.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49676.10,49678.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49678.126,49686.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49686.34,49689.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49689.67,49692.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49692.49,49694.14 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49695.13,49695.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49703.10,49703.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49703.125,49707.11 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49709.10,49709.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49709.123,49713.11 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49715.10,49715.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49715.83,49720.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49720.34,49723.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49723.99,49728.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49728.36,49731.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49731.107,49733.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49735.14,49735.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49735.96,49737.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49739.14,49739.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49739.102,49741.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49747.12,49747.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49747.89,49751.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49753.12,49755.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49755.119,49763.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49763.36,49766.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49766.73,49770.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49772.14,49772.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49772.62,49776.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49778.14,49778.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49778.68,49782.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49788.12,49788.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49788.115,49796.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49796.36,49799.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49799.62,49803.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49805.14,49805.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49805.57,49809.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49815.12,49815.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49815.115,49823.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49823.36,49826.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49826.57,49830.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49832.14,49832.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49832.62,49836.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49838.14,49838.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49838.62,49842.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49844.14,49844.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49844.69,49848.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49850.14,49850.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49850.61,49854.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49860.12,49860.117 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49860.117,49868.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49868.36,49871.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49871.58,49875.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49893.6,49893.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49893.82,49901.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49901.30,49904.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49904.52,49908.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49910.8,49910.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49910.57,49914.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49916.8,49916.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49916.54,49920.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49926.6,49928.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49928.106,49932.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49932.19,49936.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49940.6,49940.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49940.105,49948.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49948.30,49953.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49953.87,49961.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49961.32,49964.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49964.54,49968.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49970.10,49970.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49970.59,49974.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49976.10,49976.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49976.56,49980.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49986.8,49986.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:49986.91,49995.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50001.6,50001.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50001.101,50005.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50005.19,50009.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50013.6,50015.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50015.80,50019.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50019.19,50023.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50027.6,50027.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50027.72,50036.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50038.6,50038.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50038.91,50042.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50042.19,50046.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50050.6,50050.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50050.56,50055.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50055.30,50060.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50060.99,50068.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50068.32,50071.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50071.63,50074.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50074.47,50076.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50077.11,50077.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50081.10,50081.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50081.61,50085.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50087.10,50087.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50087.61,50091.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50097.8,50097.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50097.100,50101.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50101.21,50105.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50109.8,50109.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50109.96,50113.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50113.21,50117.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50121.8,50121.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50121.99,50125.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50125.21,50129.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50141.4,50141.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50141.57,50147.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50147.28,50149.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50149.63,50151.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50152.6,50152.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50152.68,50154.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50156.6,50156.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50156.65,50158.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50167.2,50167.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50167.77,50175.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50175.26,50178.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50178.49,50183.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50183.28,50187.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50187.74,50189.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50189.52,50191.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50192.7,50192.36 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50195.6,50197.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50197.89,50205.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50205.30,50208.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50208.52,50212.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50214.8,50214.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50214.57,50218.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50220.8,50220.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50220.54,50224.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50230.6,50230.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50230.86,50238.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50238.30,50241.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50241.52,50245.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50247.8,50247.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50247.57,50251.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50253.8,50253.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50253.54,50257.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50263.6,50263.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50263.66,50265.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50267.6,50267.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50267.64,50269.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50279.2,50279.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50279.77,50284.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50284.26,50287.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50287.103,50292.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50292.28,50298.106 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50298.106,50302.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50302.19,50306.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50310.6,50310.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50310.107,50318.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50318.30,50321.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50321.58,50324.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50324.45,50326.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50327.9,50327.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50335.6,50335.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50335.110,50343.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50343.30,50346.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50346.56,50351.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50351.31,50358.65 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50358.65,50360.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50362.10,50362.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50362.70,50364.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50366.10,50366.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50366.67,50368.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50370.10,50370.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50370.64,50372.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50382.6,50382.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50382.88,50387.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50387.30,50390.78 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50390.78,50392.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50392.45,50394.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50395.9,50395.37 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50398.8,50398.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50398.78,50400.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50400.45,50402.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50403.9,50403.37 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50406.8,50406.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50406.78,50409.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50409.45,50411.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50412.9,50412.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50420.6,50420.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50420.89,50423.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50423.43,50425.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50426.7,50426.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50430.6,50432.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50432.104,50436.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50436.19,50440.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50444.6,50444.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50444.108,50452.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50452.30,50455.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50455.62,50459.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50461.8,50461.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50461.59,50466.31 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50466.31,50473.65 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50473.65,50475.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50477.10,50477.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50477.70,50479.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50481.10,50481.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50481.67,50483.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50485.10,50485.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50485.64,50487.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50497.6,50497.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50497.112,50505.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50505.30,50508.60 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50508.60,50512.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50514.8,50514.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50514.59,50517.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50517.45,50519.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50520.9,50520.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50524.8,50524.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50524.61,50527.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50527.45,50529.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50530.9,50530.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50538.6,50538.84 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50538.84,50543.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50543.30,50546.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50546.74,50548.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50550.8,50550.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50550.70,50552.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50554.8,50554.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50554.67,50556.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50562.6,50562.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50562.104,50564.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50564.52,50566.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50567.7,50567.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50570.6,50570.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50570.88,50572.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50572.43,50574.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50575.7,50575.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50578.6,50580.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50580.119,50588.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50588.30,50591.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50591.59,50594.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50594.45,50596.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50597.9,50597.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50605.6,50605.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50605.108,50609.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50609.19,50613.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50625.2,50625.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50625.64,50630.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50630.26,50636.124 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50636.124,50640.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50640.17,50644.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50648.4,50648.123 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50648.123,50652.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50652.17,50656.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50660.4,50662.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50662.101,50666.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50666.17,50670.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50674.4,50674.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50674.104,50678.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50678.17,50682.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50686.4,50688.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50688.101,50692.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50692.17,50696.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50700.4,50700.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50700.100,50709.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50711.4,50711.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50711.71,50713.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50715.4,50717.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50717.104,50721.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50721.17,50725.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50729.4,50729.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50729.101,50733.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50733.17,50737.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50741.4,50741.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50741.102,50745.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50745.17,50749.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50753.4,50753.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50753.104,50757.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50757.17,50761.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50765.4,50767.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50767.97,50771.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50771.17,50775.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50779.4,50779.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50779.100,50783.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50783.17,50787.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50795.2,50797.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50797.73,50805.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50805.26,50808.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50808.62,50813.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50813.28,50817.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50817.88,50822.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50822.30,50825.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50825.86,50827.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50829.8,50829.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50829.79,50832.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50832.45,50834.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50835.9,50835.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50843.6,50843.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50843.86,50845.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50847.6,50847.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50847.78,50849.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50851.6,50853.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50853.105,50857.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50857.19,50861.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50865.6,50865.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50865.110,50874.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50876.6,50878.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50878.119,50886.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50886.30,50891.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50891.86,50899.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50899.32,50902.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50902.54,50906.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50908.10,50908.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50908.59,50912.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50914.10,50914.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50914.56,50918.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50924.8,50924.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50924.94,50928.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50928.21,50932.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50936.8,50936.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50936.57,50940.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50942.8,50942.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50942.52,50946.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50952.6,50952.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50952.116,50960.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50960.30,50963.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50963.52,50967.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50969.8,50969.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50969.57,50973.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50975.8,50975.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50975.54,50979.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50989.4,50991.99 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50991.99,50999.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:50999.28,51002.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51002.75,51007.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51007.29,51012.65 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51012.65,51014.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51016.8,51016.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51016.70,51018.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51020.8,51020.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51020.67,51022.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51032.4,51032.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51032.92,51040.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51040.28,51043.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51043.59,51046.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51046.43,51048.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51049.7,51049.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51053.6,51053.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51053.54,51056.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51056.43,51058.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51059.7,51059.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51067.4,51067.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51067.95,51071.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51071.17,51075.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51079.4,51079.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51079.60,51084.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51084.28,51088.76 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51088.76,51090.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51092.6,51094.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51094.103,51098.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51098.19,51102.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51106.6,51106.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51106.108,51115.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51117.6,51119.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51119.117,51127.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51127.30,51132.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51132.86,51140.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51140.32,51143.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51143.54,51147.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51149.10,51149.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51149.59,51153.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51155.10,51155.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51155.56,51159.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51165.8,51165.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51165.94,51169.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51169.21,51173.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51177.8,51177.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51177.57,51181.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51183.8,51183.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51183.52,51187.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51193.6,51193.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51193.114,51201.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51201.30,51204.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51204.52,51208.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51210.8,51210.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51210.57,51214.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51216.8,51216.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51216.54,51220.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51234.2,51234.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51234.77,51238.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51238.15,51242.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51246.2,51246.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51246.69,51254.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51254.26,51259.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51259.99,51267.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51267.28,51270.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51270.75,51275.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51275.29,51280.65 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51280.65,51282.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51284.8,51284.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51284.70,51286.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51288.8,51288.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51288.67,51290.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51300.4,51300.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51300.92,51308.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51308.28,51311.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51311.59,51314.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51314.43,51316.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51317.7,51317.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51321.6,51321.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51321.54,51324.43 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51324.43,51326.8 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51327.7,51327.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51335.4,51335.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51335.95,51339.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51339.17,51343.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51347.4,51349.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51349.81,51353.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51353.17,51357.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51361.4,51361.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51361.78,51369.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51369.28,51372.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51372.54,51377.29 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51377.29,51382.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51382.62,51384.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51386.8,51386.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51386.67,51388.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51390.8,51390.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51390.64,51392.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51402.4,51402.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51402.56,51407.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51407.28,51410.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51410.80,51412.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51414.6,51414.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51414.76,51416.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51418.6,51418.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51418.68,51422.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51432.2,51432.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51432.53,51437.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51437.26,51443.96 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51443.96,51451.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51451.28,51454.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51454.55,51460.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51460.30,51462.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51462.65,51464.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51465.8,51465.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51465.70,51467.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51469.8,51469.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51469.67,51471.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51480.4,51480.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51480.98,51488.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51488.28,51491.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51491.53,51496.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51496.30,51500.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51500.74,51502.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51504.8,51504.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51504.66,51506.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51508.8,51510.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51510.91,51519.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51521.8,51521.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51521.94,51530.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51532.8,51532.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51532.91,51541.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51547.6,51547.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51547.57,51551.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51553.6,51553.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51553.59,51558.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51558.30,51563.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51563.103,51567.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51567.21,51571.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51575.8,51575.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51575.94,51584.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51586.8,51586.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51586.101,51595.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51601.6,51601.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51601.50,51606.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51606.30,51611.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51611.86,51620.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51622.8,51622.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51622.88,51631.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51633.8,51633.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51633.87,51642.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51648.6,51648.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51648.67,51653.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51653.30,51656.87 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51656.87,51658.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51660.8,51660.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51660.87,51662.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51672.4,51672.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51672.91,51680.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51680.28,51683.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51683.53,51688.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51688.30,51692.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51692.74,51694.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51696.8,51696.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51696.66,51698.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51700.8,51702.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51702.91,51711.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51713.8,51713.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51713.94,51722.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51724.8,51724.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51724.91,51733.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51739.6,51739.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51739.57,51743.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51745.6,51745.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51745.59,51750.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51750.30,51755.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51755.103,51759.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51759.21,51763.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51767.8,51767.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51767.94,51776.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51778.8,51778.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51778.101,51787.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51793.6,51793.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51793.50,51798.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51798.30,51803.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51803.86,51812.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51814.8,51814.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51814.88,51823.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51825.8,51825.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51825.87,51834.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51840.6,51840.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51840.60,51845.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51845.30,51848.81 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51848.81,51850.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51852.8,51852.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51852.81,51854.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51856.8,51856.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51856.82,51858.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51860.8,51862.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51862.103,51871.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51873.8,51873.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51873.110,51877.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51877.21,51881.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51885.8,51885.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51885.107,51894.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51896.8,51896.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51896.110,51900.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51900.21,51904.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51908.8,51908.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51908.111,51916.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51916.32,51919.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51919.62,51922.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51922.47,51924.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51925.11,51925.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51933.8,51935.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51935.113,51944.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51946.8,51946.114 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51946.114,51955.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51957.8,51957.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51957.81,51959.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51969.4,51969.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51969.89,51977.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51977.28,51980.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51980.62,51985.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51985.30,51990.151 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51990.151,51998.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:51998.32,52001.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52001.69,52005.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52007.10,52007.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52007.65,52012.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52012.34,52016.87 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52016.87,52018.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52020.12,52020.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52020.87,52025.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52025.36,52029.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52029.88,52033.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52035.14,52035.83 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52035.83,52037.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52051.8,52051.161 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52051.161,52055.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52055.21,52059.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52063.8,52065.109 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52065.109,52073.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52073.32,52076.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52076.58,52080.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52082.10,52082.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52082.67,52086.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52088.10,52088.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52088.66,52092.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52098.8,52098.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52098.112,52102.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52102.21,52106.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52110.8,52112.126 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52112.126,52116.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52116.21,52120.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52124.8,52124.119 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52124.119,52128.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52128.21,52132.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52136.8,52136.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52136.81,52141.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52141.32,52144.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52144.84,52146.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52148.10,52148.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52148.80,52150.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52152.10,52152.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52152.80,52154.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52156.10,52156.79 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52156.79,52158.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52158.47,52160.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52161.11,52161.38 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52164.10,52164.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52164.85,52166.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52166.47,52168.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52169.11,52169.43 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52172.10,52172.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52172.75,52174.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52176.10,52176.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52176.81,52178.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52180.10,52180.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52180.74,52182.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52184.10,52184.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52184.78,52186.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52192.8,52192.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52192.90,52194.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52196.8,52196.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52196.86,52198.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52198.54,52200.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52201.9,52201.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52204.8,52206.118 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52206.118,52210.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52210.21,52214.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52218.8,52218.120 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52218.120,52226.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52226.32,52229.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52229.61,52234.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52234.34,52240.104 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52240.104,52248.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52248.36,52253.88 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52253.88,52257.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52257.27,52261.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52265.14,52265.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52265.91,52269.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52269.27,52273.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52277.14,52277.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52277.58,52281.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52283.14,52283.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52283.58,52287.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52289.14,52291.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52291.91,52295.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52295.27,52299.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52303.14,52303.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52303.88,52307.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52307.27,52311.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52315.14,52315.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52315.89,52319.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52319.27,52323.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52327.14,52327.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52327.91,52331.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52331.27,52335.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52339.14,52341.84 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52341.84,52345.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52345.27,52349.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52353.14,52353.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52353.87,52357.27 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52357.27,52361.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52365.14,52365.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52365.57,52369.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52375.12,52375.109 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52375.109,52384.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52386.12,52386.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52386.107,52395.13 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52397.12,52397.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52397.77,52399.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52409.8,52411.116 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52411.116,52415.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52415.21,52419.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52423.8,52423.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52423.112,52431.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52431.32,52434.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52434.61,52440.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52440.34,52442.69 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52442.69,52444.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52445.12,52445.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52445.74,52447.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52449.12,52449.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52449.71,52451.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52456.10,52456.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52456.57,52461.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52461.34,52464.77 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52464.77,52468.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52470.12,52470.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52470.75,52472.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52482.8,52482.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52482.78,52486.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52488.8,52488.92 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52488.92,52493.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52493.32,52497.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52497.82,52499.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52501.10,52501.80 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52501.80,52503.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52505.10,52507.113 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52507.113,52515.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52515.34,52518.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52518.82,52523.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52523.36,52526.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52526.107,52528.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52530.14,52530.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52530.96,52532.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52534.14,52534.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52534.102,52536.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52542.12,52542.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52542.72,52546.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52548.12,52550.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52550.102,52558.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52558.36,52561.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52561.73,52565.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52567.14,52567.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52567.62,52571.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52573.14,52573.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52573.68,52577.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52583.12,52583.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52583.98,52591.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52591.36,52594.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52594.62,52598.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52600.14,52600.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52600.57,52604.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52610.12,52610.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52610.98,52618.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52618.36,52621.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52621.57,52625.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52627.14,52627.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52627.62,52631.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52633.14,52633.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52633.62,52637.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52639.14,52639.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52639.69,52643.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52645.14,52645.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52645.61,52649.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52655.12,52655.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52655.100,52663.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52663.36,52666.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52666.58,52670.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52680.10,52680.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52680.106,52689.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52695.8,52695.95 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52695.95,52697.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52697.45,52699.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52700.9,52700.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52703.8,52703.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52703.93,52708.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52708.32,52712.83 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52712.83,52714.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52716.10,52716.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52716.81,52718.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52720.10,52722.114 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52722.114,52730.34 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52730.34,52733.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52733.82,52738.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52738.36,52741.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52741.107,52743.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52745.14,52745.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52745.96,52747.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52749.14,52749.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52749.102,52751.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52757.12,52757.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52757.72,52761.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52763.12,52765.102 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52765.102,52773.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52773.36,52776.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52776.73,52780.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52782.14,52782.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52782.62,52786.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52788.14,52788.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52788.68,52792.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52798.12,52798.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52798.98,52806.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52806.36,52809.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52809.62,52813.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52815.14,52815.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52815.57,52819.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52825.12,52825.98 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52825.98,52833.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52833.36,52836.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52836.57,52840.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52842.14,52842.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52842.62,52846.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52848.14,52848.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52848.62,52852.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52854.14,52854.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52854.69,52858.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52860.14,52860.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52860.61,52864.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52870.12,52870.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52870.100,52878.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52878.36,52881.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52881.58,52885.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52895.10,52895.107 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52895.107,52904.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52910.8,52910.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52910.96,52912.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52912.45,52914.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52915.9,52915.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52918.8,52920.121 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52920.121,52924.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52924.21,52928.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52932.8,52932.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52932.116,52936.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52936.21,52940.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52944.8,52944.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52944.113,52952.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52952.32,52955.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52955.58,52960.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52960.34,52963.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52963.79,52965.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52967.12,52967.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52967.78,52969.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52975.10,52975.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52975.61,52979.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52981.10,52981.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52981.65,52985.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52987.10,52987.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52987.72,52990.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52990.47,52992.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52993.11,52993.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52997.10,52997.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:52997.65,53000.47 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53000.47,53002.12 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53003.11,53003.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53007.10,53007.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53007.58,53011.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53017.8,53019.119 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53019.119,53023.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53023.21,53027.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53031.8,53031.111 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53031.111,53040.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53042.8,53044.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53044.106,53048.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53048.21,53052.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53056.8,53056.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53056.105,53060.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53060.21,53064.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53068.8,53068.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53068.77,53070.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53072.8,53074.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53074.105,53082.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53082.32,53085.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53085.54,53089.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53091.10,53091.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53091.59,53095.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53097.10,53097.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53097.56,53101.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53107.8,53107.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53107.104,53111.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53111.21,53115.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53119.8,53119.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53119.106,53123.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53123.21,53127.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53131.8,53133.124 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53133.124,53137.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53137.21,53141.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53145.8,53145.116 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53145.116,53153.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53153.32,53156.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53156.62,53160.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53162.10,53162.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53162.70,53166.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53168.10,53168.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53168.63,53172.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53182.6,53182.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53182.53,53187.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53187.30,53191.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53191.74,53193.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53195.8,53195.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53195.66,53197.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53199.8,53201.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53201.91,53210.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53212.8,53212.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53212.94,53221.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53223.8,53223.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53223.91,53232.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53238.6,53240.94 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53240.94,53244.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53244.19,53248.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53252.6,53252.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53252.97,53256.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53256.19,53260.8 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53264.6,53264.89 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53264.89,53273.7 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53275.6,53275.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53275.57,53279.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53281.6,53281.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53281.59,53286.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53286.30,53291.103 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53291.103,53295.21 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53295.21,53299.10 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53303.8,53303.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53303.94,53312.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53314.8,53314.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53314.101,53323.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53329.6,53329.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53329.58,53334.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53334.30,53338.82 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53338.82,53340.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53340.54,53342.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53343.9,53343.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53346.8,53348.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53348.97,53356.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53356.32,53359.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53359.54,53363.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53365.10,53365.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53365.59,53369.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53371.10,53371.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53371.56,53375.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53381.8,53381.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53381.94,53389.32 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53389.32,53392.54 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53392.54,53396.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53398.10,53398.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53398.59,53402.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53404.10,53404.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53404.56,53408.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53414.8,53414.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53414.74,53416.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53418.8,53418.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53418.72,53420.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53426.6,53426.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53426.50,53431.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53431.30,53436.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53436.86,53445.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53447.8,53447.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53447.88,53456.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53458.8,53458.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53458.87,53467.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53481.2,53483.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53483.86,53491.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53491.26,53494.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53494.52,53499.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53499.27,53504.60 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53504.60,53506.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53508.6,53508.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53508.65,53510.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53512.6,53512.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53512.62,53514.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53524.2,53524.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53524.82,53528.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53528.15,53532.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53536.2,53536.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53536.94,53540.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53540.15,53544.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53548.2,53550.88 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53550.88,53558.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53558.26,53561.67 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53561.67,53565.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53567.4,53569.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53569.101,53573.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53573.17,53577.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53581.4,53581.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53581.93,53590.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53596.2,53596.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53596.91,53600.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53600.15,53604.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53608.2,53610.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53610.101,53614.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53614.15,53618.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53622.2,53622.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53622.100,53630.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53630.26,53633.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53633.61,53636.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53636.41,53638.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53639.5,53639.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53647.2,53647.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53647.62,53652.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53652.26,53658.110 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53658.110,53662.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53662.17,53666.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53670.4,53670.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53670.106,53674.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53674.17,53678.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53682.4,53682.110 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53682.110,53686.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53686.17,53690.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53694.4,53694.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53694.72,53697.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53697.41,53699.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53700.5,53700.44 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53704.4,53706.106 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53706.106,53715.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53717.4,53717.108 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53717.108,53725.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53725.28,53728.53 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53728.53,53733.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53733.30,53737.74 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53737.74,53739.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53741.8,53741.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53741.66,53743.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53745.8,53747.91 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53747.91,53756.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53758.8,53758.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53758.94,53767.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53769.8,53769.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53769.91,53778.9 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53788.4,53788.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53788.106,53797.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53799.4,53799.112 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53799.112,53808.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53810.4,53810.85 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53810.85,53812.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53812.19,53814.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53815.5,53815.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53818.4,53818.73 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53818.73,53823.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53823.28,53826.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53826.72,53828.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53830.6,53830.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53830.68,53832.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53834.6,53834.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53834.65,53836.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53846.2,53848.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53848.73,53852.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53852.15,53856.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53860.2,53860.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53860.75,53868.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53868.26,53871.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53871.48,53875.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53877.4,53877.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53877.53,53881.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53883.4,53883.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53883.50,53887.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53893.2,53895.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53895.65,53903.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53903.26,53906.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53906.48,53910.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53912.4,53912.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53912.53,53916.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53918.4,53918.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53918.50,53922.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53928.2,53928.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53928.64,53932.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53932.15,53936.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53940.2,53940.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53940.66,53945.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53945.26,53951.104 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53951.104,53955.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53955.17,53959.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53963.4,53963.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53963.105,53972.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53974.4,53974.106 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53974.106,53983.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53985.4,53985.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53985.88,53987.19 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53987.19,53989.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53990.5,53990.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53993.4,53993.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53993.76,53998.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:53998.28,54001.72 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54001.72,54003.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54005.6,54005.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54005.68,54007.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54009.6,54009.65 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54009.65,54011.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54017.4,54017.75 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54017.75,54020.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54020.41,54022.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54023.5,54023.47 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54027.4,54029.100 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54029.100,54033.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54033.17,54037.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54041.4,54041.103 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54041.103,54050.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54052.4,54052.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54052.102,54061.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54063.4,54065.136 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54065.136,54073.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54073.28,54076.74 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54076.74,54081.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54081.30,54085.99 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54085.99,54089.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54095.6,54095.71 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54095.71,54100.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54100.30,54104.85 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54104.85,54106.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54112.6,54112.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54112.72,54117.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54117.30,54121.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54121.86,54125.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54127.8,54127.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54127.91,54129.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54131.8,54131.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54131.91,54133.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54139.6,54139.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54139.72,54144.30 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54144.30,54148.86 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54148.86,54152.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54154.8,54154.91 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54154.91,54156.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54158.8,54158.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54158.96,54162.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54172.4,54172.125 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54172.125,54176.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54176.17,54180.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54188.2,54191.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54191.16,54193.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54195.2,54195.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54198.93,54204.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54204.16,54205.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54205.55,54209.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54210.3,54210.99 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_http_loadbalancer.go:54213.2,54214.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:22.53,84.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:87.88,97.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:97.58,101.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:101.48,104.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:105.3,105.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:108.2,108.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:108.58,111.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:113.2,113.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:113.54,116.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:118.2,118.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:118.53,122.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:122.48,125.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:126.3,126.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:129.2,129.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:129.51,132.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:134.2,134.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:134.56,137.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:140.2,140.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:140.58,143.39 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:143.39,145.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:146.3,146.29 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:151.2,151.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:151.53,154.39 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:154.39,156.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:157.3,157.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:161.2,164.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:164.16,166.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:167.2,169.49 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:172.86,178.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:178.16,179.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:179.55,183.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:184.3,184.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:186.2,186.46 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:189.107,205.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:208.88,217.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:217.58,221.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:221.48,224.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:225.3,225.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:228.2,228.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:228.58,231.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:233.2,233.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:233.54,236.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:238.2,238.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:238.53,242.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:242.48,245.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:246.3,246.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:249.2,249.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:249.51,252.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:254.2,254.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:254.56,257.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:259.2,259.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:259.58,262.39 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:262.39,264.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:265.3,265.29 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:269.2,269.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:269.53,272.39 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:272.39,274.4 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:275.3,275.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:279.2,282.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:282.16,284.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:286.2,286.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:289.88,295.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:295.16,296.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:296.55,300.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:301.3,301.94 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_ip_prefix_set.go:304.2,305.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:23.52,513.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:516.87,526.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:526.58,530.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:530.48,533.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:534.3,534.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:537.2,537.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:537.58,540.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:542.2,542.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:542.54,545.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:547.2,547.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:547.53,551.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:551.48,554.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:555.3,555.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:558.2,558.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:558.51,561.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:563.2,563.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:563.56,566.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:570.2,572.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:572.75,580.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:580.26,583.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:583.61,588.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:588.28,594.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:594.98,602.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:602.30,605.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:605.62,609.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:611.8,611.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:611.60,616.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:616.32,619.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:619.80,621.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:623.10,623.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:623.76,628.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:628.34,631.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:631.97,636.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:636.36,639.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:639.107,641.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:643.14,643.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:643.96,645.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:647.14,647.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:647.102,649.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:655.12,655.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:655.87,659.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:661.12,663.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:663.117,671.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:671.36,674.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:674.73,678.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:680.14,680.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:680.62,684.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:686.14,686.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:686.68,690.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:696.12,696.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:696.113,704.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:704.36,707.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:707.62,711.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:713.14,713.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:713.57,717.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:723.12,723.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:723.113,731.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:731.36,734.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:734.57,738.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:740.14,740.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:740.62,744.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:746.14,746.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:746.62,750.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:752.14,752.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:752.69,756.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:758.14,758.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:758.61,762.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:768.12,768.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:768.115,776.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:776.36,779.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:779.58,783.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:793.10,795.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:795.104,799.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:799.23,803.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:807.10,807.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:807.96,816.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:826.6,826.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:826.100,834.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:834.30,837.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:837.62,841.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:847.6,847.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:847.105,855.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:855.30,858.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:858.62,862.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:868.6,868.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:868.101,876.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:876.30,879.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:879.62,883.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:897.2,897.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:897.74,901.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:901.15,905.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:911.2,913.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:913.101,921.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:921.26,924.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:924.65,929.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:929.27,934.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:934.62,936.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:938.6,938.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:938.67,940.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:942.6,942.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:942.64,944.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:954.2,954.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:954.102,958.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:958.15,962.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:968.2,970.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:970.89,978.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:978.26,981.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:981.57,986.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:986.27,991.61 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:991.61,993.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:995.6,995.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:995.66,997.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:999.6,999.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:999.63,1001.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1011.2,1011.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1011.86,1015.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1015.15,1019.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1025.2,1027.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1027.103,1031.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1031.15,1035.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1039.2,1039.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1039.105,1043.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1043.15,1047.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1053.2,1055.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1055.82,1059.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1059.15,1063.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1067.2,1067.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1067.78,1071.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1071.15,1075.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1081.2,1083.90 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1083.90,1091.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1091.26,1094.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1094.63,1097.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1097.41,1099.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1100.5,1100.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1108.2,1108.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1108.90,1112.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1112.15,1116.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1122.2,1124.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1124.80,1132.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1132.26,1135.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1135.56,1139.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1141.4,1143.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1143.80,1147.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1147.17,1151.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1155.4,1155.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1155.72,1164.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1170.2,1170.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1170.76,1174.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1174.15,1178.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1184.2,1186.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1186.86,1194.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1194.26,1197.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1197.65,1202.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1202.27,1207.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1207.62,1209.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1211.6,1211.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1211.67,1213.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1215.6,1215.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1215.64,1217.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1227.2,1227.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1227.82,1231.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1231.15,1235.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1239.2,1242.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1242.16,1244.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1245.2,1247.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1250.85,1256.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1256.16,1257.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1257.55,1261.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1262.3,1262.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1264.2,1264.45 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1267.106,1283.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1286.87,1295.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1295.58,1299.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1299.48,1302.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1303.3,1303.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1306.2,1306.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1306.58,1309.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1311.2,1311.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1311.54,1314.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1316.2,1316.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1316.53,1320.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1320.48,1323.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1324.3,1324.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1327.2,1327.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1327.51,1330.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1332.2,1332.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1332.56,1335.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1337.2,1339.75 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1339.75,1347.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1347.26,1350.61 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1350.61,1355.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1355.28,1361.98 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1361.98,1369.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1369.30,1372.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1372.62,1376.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1378.8,1378.60 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1378.60,1383.32 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1383.32,1386.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1386.80,1388.11 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1390.10,1390.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1390.76,1395.34 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1395.34,1398.97 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1398.97,1403.36 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1403.36,1406.107 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1406.107,1408.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1410.14,1410.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1410.96,1412.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1414.14,1414.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1414.102,1416.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1422.12,1422.87 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1422.87,1426.13 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1428.12,1430.117 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1430.117,1438.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1438.36,1441.73 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1441.73,1445.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1447.14,1447.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1447.62,1451.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1453.14,1453.68 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1453.68,1457.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1463.12,1463.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1463.113,1471.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1471.36,1474.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1474.62,1478.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1480.14,1480.57 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1480.57,1484.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1490.12,1490.113 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1490.113,1498.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1498.36,1501.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1501.57,1505.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1507.14,1507.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1507.62,1511.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1513.14,1513.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1513.62,1517.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1519.14,1519.69 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1519.69,1523.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1525.14,1525.61 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1525.61,1529.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1535.12,1535.115 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1535.115,1543.36 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1543.36,1546.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1546.58,1550.15 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1560.10,1562.104 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1562.104,1566.23 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1566.23,1570.12 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1574.10,1574.96 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1574.96,1583.11 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1593.6,1593.100 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1593.100,1601.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1601.30,1604.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1604.62,1608.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1614.6,1614.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1614.105,1622.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1622.30,1625.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1625.62,1629.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1635.6,1635.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1635.101,1643.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1643.30,1646.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1646.62,1650.9 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1664.2,1664.74 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1664.74,1668.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1668.15,1672.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1676.2,1678.101 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1678.101,1686.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1686.26,1689.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1689.65,1694.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1694.27,1699.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1699.62,1701.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1703.6,1703.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1703.67,1705.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1707.6,1707.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1707.64,1709.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1719.2,1719.102 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1719.102,1723.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1723.15,1727.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1731.2,1733.89 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1733.89,1741.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1741.26,1744.57 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1744.57,1749.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1749.27,1754.61 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1754.61,1756.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1758.6,1758.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1758.66,1760.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1762.6,1762.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1762.63,1764.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1774.2,1774.86 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1774.86,1778.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1778.15,1782.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1786.2,1788.103 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1788.103,1792.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1792.15,1796.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1800.2,1800.105 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1800.105,1804.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1804.15,1808.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1812.2,1814.82 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1814.82,1818.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1818.15,1822.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1826.2,1826.78 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1826.78,1830.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1830.15,1834.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1838.2,1840.90 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1840.90,1848.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1848.26,1851.63 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1851.63,1854.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1854.41,1856.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1857.5,1857.77 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1865.2,1865.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1865.90,1869.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1869.15,1873.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1877.2,1879.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1879.80,1887.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1887.26,1890.56 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1890.56,1894.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1896.4,1898.80 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1898.80,1902.17 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1902.17,1906.6 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1910.4,1910.72 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1910.72,1919.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1925.2,1925.76 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1925.76,1929.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1929.15,1933.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1937.2,1939.86 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1939.86,1947.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1947.26,1950.65 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1950.65,1955.27 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1955.27,1960.62 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1960.62,1962.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1964.6,1964.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1964.67,1966.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1968.6,1968.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1968.64,1970.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1980.2,1980.82 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1980.82,1984.15 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1984.15,1988.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1992.2,1995.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1995.16,1997.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:1999.2,1999.48 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2002.87,2008.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2008.16,2009.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2009.55,2013.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2014.3,2014.93 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster.go:2017.2,2018.105 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:22.56,190.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:193.91,203.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:203.58,207.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:207.48,210.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:211.3,211.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:214.2,214.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:214.58,217.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:219.2,219.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:219.54,222.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:224.2,224.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:224.53,228.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:228.48,231.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:232.3,232.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:235.2,235.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:235.51,238.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:240.2,240.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:240.56,243.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:247.2,249.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:249.79,257.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:257.26,260.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:260.55,263.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:263.41,265.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:266.5,266.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:274.2,274.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:274.70,282.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:282.26,285.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:285.55,290.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:290.28,296.112 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:296.112,304.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:304.30,307.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:307.52,310.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:310.45,312.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:313.9,313.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:317.8,317.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:317.53,320.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:320.45,322.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:323.9,323.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:331.6,331.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:331.104,339.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:339.30,342.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:342.58,345.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:345.45,347.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:348.9,348.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:352.8,352.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:352.66,355.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:355.45,357.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:358.9,358.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:362.8,362.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:362.62,365.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:365.45,367.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:368.9,368.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:372.8,372.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:372.53,375.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:375.45,377.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:378.9,378.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:394.2,394.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:394.58,403.3 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:405.2,408.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:408.16,410.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:411.2,413.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:416.89,422.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:422.16,423.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:423.55,427.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:428.3,428.81 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:430.2,430.49 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:433.110,449.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:452.91,461.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:461.58,465.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:465.48,468.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:469.3,469.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:472.2,472.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:472.58,475.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:477.2,477.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:477.54,480.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:482.2,482.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:482.53,486.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:486.48,489.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:490.3,490.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:493.2,493.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:493.51,496.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:498.2,498.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:498.56,501.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:503.2,505.79 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:505.79,513.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:513.26,516.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:516.55,519.41 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:519.41,521.6 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:522.5,522.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:530.2,530.70 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:530.70,538.26 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:538.26,541.55 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:541.55,546.28 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:546.28,552.112 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:552.112,560.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:560.30,563.52 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:563.52,566.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:566.45,568.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:569.9,569.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:573.8,573.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:573.53,576.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:576.45,578.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:579.9,579.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:587.6,587.104 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:587.104,595.30 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:595.30,598.58 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:598.58,601.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:601.45,603.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:604.9,604.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:608.8,608.66 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:608.66,611.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:611.45,613.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:614.9,614.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:618.8,618.62 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:618.62,621.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:621.45,623.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:624.9,624.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:628.8,628.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:628.53,631.45 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:631.45,633.10 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:634.9,634.50 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:650.2,650.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:650.58,659.3 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:661.2,664.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:664.16,666.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:668.2,668.52 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:671.91,677.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:677.16,678.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:678.55,682.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:683.3,683.97 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role.go:686.2,687.110 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:23.63,130.2 1 1 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:133.98,143.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:143.58,147.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:147.48,150.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:151.3,151.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:154.2,154.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:154.58,157.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:159.2,159.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:159.54,162.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:164.2,164.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:164.53,168.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:168.48,171.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:172.3,172.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:175.2,175.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:175.51,178.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:180.2,180.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:180.56,183.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:186.2,186.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:186.63,192.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:192.26,194.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:194.62,196.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:197.4,197.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:197.67,199.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:201.4,201.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:201.64,203.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:209.2,209.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:209.55,214.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:214.26,220.91 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:220.91,229.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:231.4,231.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:231.101,239.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:239.28,242.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:242.50,246.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:248.6,248.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:248.55,252.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:258.4,258.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:258.90,267.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:273.2,276.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:276.16,278.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:279.2,281.59 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:284.96,290.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:290.16,291.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:291.55,295.4 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:296.3,296.88 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:298.2,298.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:301.117,317.2 8 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:320.98,329.58 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:329.58,333.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:333.48,336.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:337.3,337.30 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:340.2,340.58 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:340.58,343.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:345.2,345.54 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:345.54,348.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:350.2,350.53 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:350.53,354.48 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:354.48,357.4 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:358.3,358.25 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:361.2,361.51 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:361.51,364.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:366.2,366.56 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:366.56,369.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:371.2,371.63 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:371.63,377.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:377.26,379.62 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:379.62,381.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:382.4,382.67 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:382.67,384.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:386.4,386.64 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:386.64,388.5 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:393.2,393.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:393.55,398.26 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:398.26,404.91 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:404.91,413.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:415.4,415.101 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:415.101,423.28 6 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:423.28,426.50 2 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:426.50,430.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:432.6,432.55 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:432.55,436.7 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:442.4,442.90 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:442.90,451.5 4 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:457.2,460.16 3 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:460.16,462.3 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:464.2,464.59 1 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:467.98,473.16 5 0 +github.com/volterraedge/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:473.16,474.55 1 0 gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:474.55,478.4 3 0 gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:479.3,479.104 1 0 gopkg.volterra.us/terraform-provider-volterra/volterra/resource_auto_volterra_k8s_cluster_role_binding.go:482.2,483.118 2 0 diff --git a/volterra/data_source_volterra_virtual_host_dns_info_test.go b/volterra/data_source_volterra_virtual_host_dns_info_test.go index 605dca55e..bf15576c1 100644 --- a/volterra/data_source_volterra_virtual_host_dns_info_test.go +++ b/volterra/data_source_volterra_virtual_host_dns_info_test.go @@ -6,9 +6,11 @@ import ( "os" "testing" + "github.com/google/uuid" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" ves_io_schema_ap "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/advertise_policy" ves_io_schema_ns "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace" + ves_io_schema_tenant "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant" ves_io_schema_vh "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" ves_io_schema_vn "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_network" ) @@ -20,9 +22,13 @@ func TestAccDataSourceVHDNSInfoBasic(t *testing.T) { return []string{ ves_io_schema_vh.ObjectType, ves_io_schema_ns.ObjectType, ves_io_schema_vn.ObjectType, ves_io_schema_ap.ObjectType, + ves_io_schema_tenant.ObjectType, } } - testURL, stopFunc, _ := createTestCustomAPIServer(t, getTestObj()) + testURL, stopFunc, f := createTestCustomAPIServer(t, getTestObj()) + tenantName := "ves-io" + tenantObj := mkDBObjTenant(tenantName, uuid.New().String()) + f.MustCreateEntry(tenantObj) defer stopFunc() os.Setenv("VOLT_API_TEST", "true") os.Setenv("VOLT_API_URL", testURL) diff --git a/volterra/drift_detection/drift_detection_resource_auto_http_loadbalancer.go b/volterra/drift_detection/drift_detection_resource_auto_http_loadbalancer.go new file mode 100644 index 000000000..7d5ab0a9f --- /dev/null +++ b/volterra/drift_detection/drift_detection_resource_auto_http_loadbalancer.go @@ -0,0 +1,4025 @@ +package driftdetection + +import ( + "strconv" + + "github.com/gogo/protobuf/types" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_app_type "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" + ves_io_schema_cluster "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/cluster" + ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" + ves_io_schema_rate_limiter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" + ves_io_schema_route "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/route" + ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" + ves_io_schema_views_http_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/http_loadbalancer" + ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" + ves_io_schema_rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" + ves_io_schema_virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" + "gopkg.volterra.us/stdlib/client/vesapi" +) + +func FlattenVk8s(x *ves_io_schema_views.WhereVK8SService) []interface{} { + vk8sValue := make([]interface{}, 0) + if x != nil { + vk8sVal := map[string]interface{}{ + "site": FlattenVk8sSite(x.GetSite()), + "virtual_site": FlattenVk8sVSValue(x.GetVirtualSite()), + } + vk8sValue = append(vk8sValue, vk8sVal) + } + return vk8sValue +} + +func FlattenVk8sSite(x *ves_io_schema_views.ObjectRefType) []interface{} { + vk8sSValue := make([]interface{}, 0) + if x != nil { + vk8sSVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + vk8sSValue = append(vk8sSValue, vk8sSVal) + } + return vk8sSValue +} + +func FlattenVk8sVSValue(x *ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + value := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + rslt = append(rslt, value) + } + return rslt +} + +func FlattenVirtualSite(x *ves_io_schema_views.WhereVirtualSite) []interface{} { + vSValue := make([]interface{}, 0) + if x != nil { + vSVal := map[string]interface{}{ + "network": x.GetNetwork().String(), + "virtual_site": FlattenVSVirtualSite(x.GetVirtualSite()), + } + vSValue = append(vSValue, vSVal) + } + return vSValue +} + +func FlattenVSVirtualSite(x *ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + value := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + rslt = append(rslt, value) + } + return rslt +} + +func FlattenVirtualNetwork(x *ves_io_schema_views.WhereVirtualNetwork) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + vNVal := map[string]interface{}{ + "default_v6_vip": isEmpty(x.GetDefaultV6Vip()), + "specific_v6_vip": x.GetSpecificV6Vip(), + "default_vip": isEmpty(x.GetDefaultVip()), + "specific_vip": x.GetSpecificVip(), + "virtual_network": FlattenVNVirtualNetwork(x.GetVirtualNetwork()), + } + rslt = append(rslt, vNVal) + } + return rslt +} + +func FlattenVNVirtualNetwork(x *ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + value := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + rslt = append(rslt, value) + } + return rslt +} + +func FlattenSiteSite(x *ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + value := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + rslt = append(rslt, value) + } + return rslt +} + +func FlattenSite(x *ves_io_schema_views.WhereSite) []interface{} { + siteValue := make([]interface{}, 0) + if x != nil { + siteVal := map[string]interface{}{ + "ip": x.GetIp(), + "ipv6": x.GetIpv6(), + "network": x.GetNetwork().String(), + "site": FlattenSiteSite(x.GetSite()), + } + siteValue = append(siteValue, siteVal) + } + return siteValue +} + +func FlattenSiteSegment(x *ves_io_schema_views.WhereSiteSegment) []interface{} { + siteSegmentValue := make([]interface{}, 0) + if x != nil { + siteSegmentVal := map[string]interface{}{ + "ip": x.GetIp(), + "ipv6": x.GetIpv6(), + "segment": FlattenSiteSite(x.GetSegment()), + "site": FlattenSiteSite(x.GetSite()), + } + siteSegmentValue = append(siteSegmentValue, siteSegmentVal) + } + return siteSegmentValue +} + +func FlattenVirtualSiteSegment(x *ves_io_schema_views.WhereVirtualSiteSegment) []interface{} { + virtualSiteSegmentValue := make([]interface{}, 0) + if x != nil { + virtualSiteSegmentVal := map[string]interface{}{ + "ip": x.GetIp(), + "ipv6": x.GetIpv6(), + "segment": FlattenSiteSite(x.GetSegment()), + "virtual_site": FlattenSiteSite(x.GetVirtualSite()), + } + virtualSiteSegmentValue = append(virtualSiteSegmentValue, virtualSiteSegmentVal) + } + return virtualSiteSegmentValue +} + +func FlattenAdvertiseWhere(x []*ves_io_schema_views.WhereType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "site": FlattenSite(val.GetSite()), + "site_segment": FlattenSiteSegment(val.GetSiteSegment()), + "virtual_network": FlattenVirtualNetwork(val.GetVirtualNetwork()), + "virtual_site": FlattenVirtualSite(val.GetVirtualSite()), + // "virtual_site_segment": FlattenVirtualSiteSegment(val.GetVirtualSiteSegment()), + "vk8s_service": FlattenVk8s(val.GetVk8SService()), + "port": val.GetPort(), + "use_default_port": isEmpty(val.GetUseDefaultPort()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenAdvertiseCustom(x *ves_io_schema_views.AdvertiseCustom) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "advertise_where": FlattenAdvertiseWhere(x.GetAdvertiseWhere()), + } + rslt = append(rslt, test) + } + return rslt +} + +func FlattenPublicIp(x *ves_io_schema_views.ObjectRefType) []interface{} { + publicIpValue := make([]interface{}, 0) + if x != nil { + value := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + publicIpValue = append(publicIpValue, value) + } + return publicIpValue +} + +func FlattenAdvertiseOnPublic(x *ves_io_schema_views.AdvertisePublic) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "public_ip": FlattenPublicIp(x.GetPublicIp()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenApiDefinition(x *ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + + rslt = append(rslt, test) + } + return rslt +} + +func FlattenADApiDefinitions(x []*ves_io_schema_views.ObjectRefType) []interface{} { + sliceValue := make([]interface{}, 0) + for _, v := range x { + t := map[string]interface{}{ + "name": v.GetName(), + "namespace": v.GetNamespace(), + "tenant": v.GetTenant(), + } + sliceValue = append(sliceValue, t) + } + return sliceValue +} + +func FlattenApiDefinitions(x *ves_io_schema_views_common_waf.ApiDefinitionList) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "api_definitions": FlattenADApiDefinitions(x.GetApiDefinitions()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenMetadata(x *ves_io_schema.MessageMetaType) []interface{} { + metadataValue := make([]interface{}, 0) + if x != nil { + mdVal := map[string]interface{}{ + "description": x.GetDescription(), + "disable": x.GetDisable(), + "name": x.GetName(), + } + metadataValue = append(metadataValue, mdVal) + } + return metadataValue +} + +func FlattenApiEndPoint(x *ves_io_schema_views_common_waf.ApiEndpointDetails) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "methods": FlattenMethods(x.GetMethods()), + "path": x.GetPath(), + } + + rslt = append(rslt, test) + } + return rslt +} + +func FlattenVASEOpenApiValidationRules(x []*ves_io_schema_views_common_waf.FallThroughRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "action_block": isEmpty(val.GetActionBlock()), + "action_report": isEmpty(val.GetActionReport()), + "action_skip": isEmpty(val.GetActionSkip()), + "api_endpoint": FlattenApiEndPoint(val.GetApiEndpoint()), + "api_group": val.GetApiGroup(), + "base_path": val.GetBasePath(), + "metadata": FlattenMetadata(val.GetMetadata()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenVCLFTMOpenApiValidationRules(x []*ves_io_schema_views_common_waf.FallThroughRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "action_block": isEmpty(val.GetActionBlock()), + "action_report": isEmpty(val.GetActionReport()), + "action_skip": isEmpty(val.GetActionSkip()), + "api_endpoint": FlattenApiEndPoint(val.GetApiEndpoint()), + "api_group": val.GetApiGroup(), + "base_path": val.GetBasePath(), + "metadata": FlattenMetadata(val.GetMetadata()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenRequestValidationProperties(x []ves_io_schema.OpenApiValidationProperties) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenVMA(x *ves_io_schema_views_common_waf.OpenApiValidationModeActive) []interface{} { + vMAValue := make([]interface{}, 0) + if x != nil { + vMAVal := map[string]interface{}{ + "request_validation_properties": FlattenRequestValidationProperties(x.GetRequestValidationProperties()), + "enforcement_block": isEmpty(x.GetEnforcementBlock()), + "enforcement_report": isEmpty(x.GetEnforcementReport()), + } + vMAValue = append(vMAValue, vMAVal) + } + return vMAValue +} + +func FlattenVCLOpenApiValidationRules(x []*ves_io_schema_views_common_waf.OpenApiValidationRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "api_endpoint": FlattenApiEndPoint(val.GetApiEndpoint()), + "api_group": val.GetApiGroup(), + "base_path": val.GetBasePath(), + "any_domain": isEmpty(val.GetAnyDomain()), + "specific_domain": val.GetSpecificDomain(), + "metadata": FlattenMetadata(val.GetMetadata()), + "validation_mode": FlattenValidationMode(val.GetValidationMode()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenFallThroughModeCustom(x *ves_io_schema_views_common_waf.CustomFallThroughMode) []interface{} { + ftmcValue := make([]interface{}, 0) + if x != nil { + ftmcVal := map[string]interface{}{ + "open_api_validation_rules": FlattenVASEOpenApiValidationRules(x.GetOpenApiValidationRules()), + } + ftmcValue = append(ftmcValue, ftmcVal) + } + return ftmcValue +} + +func FlattenFallThroughMode(x *ves_io_schema_views_common_waf.OpenApiFallThroughMode) []interface{} { + ftmValue := make([]interface{}, 0) + if x != nil { + ftmVal := map[string]interface{}{ + "fall_through_mode_allow": isEmpty(x.GetFallThroughModeAllow()), + "fall_through_mode_custom": FlattenFallThroughModeCustom(x.GetFallThroughModeCustom()), + } + ftmValue = append(ftmValue, ftmVal) + } + return ftmValue +} + +func FlattenQueryParameters(x *ves_io_schema_views_common_waf.ValidationSettingForQueryParameters) []interface{} { + qpValue := make([]interface{}, 0) + if x != nil { + qpeValue := map[string]interface{}{ + "allow_additional_headers": isEmpty(x.GetAllowAdditionalParameters()), + "disallow_additional_headers": isEmpty(x.GetDisallowAdditionalParameters()), + } + qpValue = append(qpValue, qpeValue) + } + return qpValue +} + +func FlattenPVSCHeaders(x *ves_io_schema_views_common_waf.ValidationSettingForHeaders) []interface{} { + hValue := make([]interface{}, 0) + if x != nil { + heValue := map[string]interface{}{ + "allow_additional_headers": x.GetAllowAdditionalHeaders() != nil, + "disallow_additional_headers": x.GetDisallowAdditionalHeaders() != nil, + } + hValue = append(hValue, heValue) + } + return hValue +} + +func FlattenPropertyValidationSettingsCustom(x *ves_io_schema_views_common_waf.ValidationPropertySetting) []interface{} { + pvscValue := make([]interface{}, 0) + if x != nil { + pvsceValue := map[string]interface{}{ + "headers": FlattenPVSCHeaders(x.GetHeaders()), + "query_parameters": FlattenQueryParameters(x.GetQueryParameters()), + } + pvscValue = append(pvscValue, pvsceValue) + } + return pvscValue +} + +func FlattenSettings(x *ves_io_schema_views_common_waf.OpenApiValidationCommonSettings) []interface{} { + sValue := make([]interface{}, 0) + if x != nil { + seVal := map[string]interface{}{ + "oversized_body_fail_validation": x.GetOversizedBodyFailValidation() != nil, + "oversized_body_skip_validation": x.GetOversizedBodySkipValidation() != nil, + "property_validation_settings_custom": FlattenPropertyValidationSettingsCustom(x.GetPropertyValidationSettingsCustom()), + "property_validation_settings_default": x.GetPropertyValidationSettingsDefault() != nil, + } + sValue = append(sValue, seVal) + } + return sValue +} + +func FlattenResponseValidationModeActive(x *ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse) []interface{} { + rvmaValue := make([]interface{}, 0) + if x != nil { + rvmaeValue := map[string]interface{}{ + "response_validation_properties": FlattenRequestValidationProperties(x.GetResponseValidationProperties()), + "enforcement_block": x.GetEnforcementBlock() != nil, + "enforcement_report": x.GetEnforcementReport() != nil, + } + rvmaValue = append(rvmaValue, rvmaeValue) + } + return rvmaValue +} + +func FlattenValidationModeActive(x *ves_io_schema_views_common_waf.OpenApiValidationModeActive) []interface{} { + vmaValue := make([]interface{}, 0) + if x != nil { + vmaVal := map[string]interface{}{ + "request_validation_properties": FlattenRequestValidationProperties(x.GetRequestValidationProperties()), + "enforcement_block": isEmpty(x.GetEnforcementBlock()), + "enforcement_report": isEmpty(x.GetEnforcementReport()), + } + vmaValue = append(vmaValue, vmaVal) + } + return vmaValue +} + +func FlattenValidationMode(x *ves_io_schema_views_common_waf.OpenApiValidationMode) []interface{} { + vmValue := make([]interface{}, 0) + if x != nil { + vmVal := map[string]interface{}{ + "response_validation_mode_active": FlattenResponseValidationModeActive(x.GetResponseValidationModeActive()), + "skip_response_validation": x.GetSkipResponseValidation() != nil, + "skip_validation": isEmpty(x.GetSkipValidation()), + "validation_mode_active": FlattenValidationModeActive(x.GetValidationModeActive()), + } + vmValue = append(vmValue, vmVal) + } + return vmValue +} + +func FlattenValidationAllSpecEndpoints(x *ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings) []interface{} { + valseValue := make([]interface{}, 0) + if x != nil { + valseVal := map[string]interface{}{ + "fall_through_mode": FlattenFallThroughMode(x.GetFallThroughMode()), + "settings": FlattenSettings(x.GetSettings()), + "validation_mode": FlattenValidationMode(x.GetValidationMode()), + } + valseValue = append(valseValue, valseVal) + } + return valseValue +} + +func FlattenOAVR(x []*ves_io_schema_views_common_waf.OpenApiValidationRule) []interface{} { + oavrValue := make([]interface{}, 0) + for _, v := range x { + t := map[string]interface{}{ + "api_endpoint": FlattenApiEndPoint(v.GetApiEndpoint()), + "api_group": v.GetApiGroup(), + "base_path": v.GetBasePath(), + "any_domain": isEmpty(v.GetAnyDomain()), + "specific_domain": v.GetSpecificDomain(), + "metadata": FlattenMetadata(v.GetMetadata()), + "validation_mode": FlattenValidationMode(v.GetValidationMode()), + } + oavrValue = append(oavrValue, t) + } + return oavrValue +} + +func FlattenValidationCustomList(x *ves_io_schema_views_common_waf.ValidateApiBySpecRule) []interface{} { + vclValue := make([]interface{}, 0) + if x != nil { + vclVal := map[string]interface{}{ + "fall_through_mode": FlattenFallThroughMode(x.GetFallThroughMode()), + "open_api_validation_rules": FlattenOAVR(x.GetOpenApiValidationRules()), + "settings": FlattenSettings(x.GetSettings()), + } + vclValue = append(vclValue, vclVal) + } + return vclValue +} + +func FlattenApiSpecification(x *ves_io_schema_views_common_waf.APISpecificationSettings) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mpValue := map[string]interface{}{ + "api_definition": FlattenApiDefinition(x.GetApiDefinition()), + "validation_all_spec_endpoints": FlattenValidationAllSpecEndpoints(x.GetValidationAllSpecEndpoints()), + "validation_custom_list": FlattenValidationCustomList(x.GetValidationCustomList()), + "validation_disabled": isEmpty(x.GetValidationDisabled()), + } + rslt = append(rslt, mpValue) + } + return rslt +} + +func FlattenDiscoveredApiSettings(x *ves_io_schema_app_type.DiscoveredAPISettings) []interface{} { + dasValue := make([]interface{}, 0) + if x != nil { + dasVal := map[string]interface{}{ + "purge_duration_for_inactive_discovered_apis": x.GetPurgeDurationForInactiveDiscoveredApis(), + } + dasValue = append(dasValue, dasVal) + } + return dasValue +} + +func FlattenEnableApiDiscovery(x *ves_io_schema_views_common_waf.ApiDiscoverySetting) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "discovered_api_settings": FlattenDiscoveredApiSettings(x.GetDiscoveredApiSettings()), + "disable_learn_from_redirect_traffic": isEmpty(x.GetDisableLearnFromRedirectTraffic()), + "enable_learn_from_redirect_traffic": isEmpty(x.GetEnableLearnFromRedirectTraffic()), + "sensitive_data_detection_rules": FlattenSensitiveDataDetectionRules(x.GetSensitiveDataDetectionRules()), + } + val = append(val, test) + } + return val +} + +func FlattenSensitiveDataDetectionRules(x *ves_io_schema_app_type.SensitiveDataDetectionRules) []interface{} { + sddrValue := make([]interface{}, 0) + if x != nil { + sddrVal := map[string]interface{}{ + "custom_sensitive_data_detection_rules": FlattenCustomSensitiveDataDetectionRules(x.GetCustomSensitiveDataDetectionRules()), + "disabled_built_in_rules": FlattenDisabledBuiltInRules(x.GetDisabledBuiltInRules()), + } + sddrValue = append(sddrValue, sddrVal) + } + return sddrValue +} + +func FlattenCustomSensitiveDataDetectionRules(x []*ves_io_schema_app_type.CustomSensitiveDataDetectionRule) []interface{} { + csddrValue := make([]interface{}, 0) + for _, v := range x { + csddrVal := map[string]interface{}{ + "metadata": FlattenMetadata(v.GetMetadata()), + "sensitive_data_detection_config": FlattenSensitiveDataDetectionConfig(v.GetSensitiveDataDetectionConfig()), + } + csddrValue = append(csddrValue, csddrVal) + } + return csddrValue +} + +func FlattenSensitiveDataDetectionConfig(v *ves_io_schema_app_type.CustomDataDetectionConfig) []interface{} { + sddcValue := make([]interface{}, 0) + if v != nil { + sddcVal := map[string]interface{}{ + "any_domain": isEmpty(v.GetAnyDomain()), + "specific_domain": v.GetSpecificDomain(), + "key_pattern": FlattenKeyPattern(v.GetKeyPattern()), + "key_value_pattern": FlattenKeyValuePattern(v.GetKeyValuePattern()), + "value_pattern": FlattenValuePattern(v.GetValuePattern()), + "all_request_sections": v.GetAllRequestSections() != nil, + "all_response_sections": v.GetAllResponseSections() != nil, + "all_sections": v.GetAllSections() != nil, + "custom_sections": FlattenCustomSections(v.GetCustomSections()), + "any_target": v.GetAnyTarget() != nil, + "api_endpoint_target": FlattenApiEndpointTarget(v.GetApiEndpointTarget()), + "api_group": v.GetApiGroup(), + "base_path": v.GetBasePath(), + } + sddcValue = append(sddcValue, sddcVal) + } + return sddcValue +} + +func FlattenApiEndpointTarget(v *ves_io_schema_app_type.APIEndpoint) []interface{} { + aetValue := make([]interface{}, 0) + if v != nil { + aetVal := map[string]interface{}{ + "api_endpoint_path": v.GetApiEndpointPath(), + "methods": FlattenMethods(v.GetMethods()), + } + aetValue = append(aetValue, aetVal) + } + return aetValue +} + +func FlattenCustomSectionsSliceToString(x []ves_io_schema.HttpSections) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenCustomSections(v *ves_io_schema_app_type.CustomSections) []interface{} { + csValue := make([]interface{}, 0) + if v != nil { + csVal := map[string]interface{}{ + "custom_sections": FlattenCustomSectionsSliceToString(v.GetCustomSections()), + } + csValue = append(csValue, csVal) + } + return csValue +} + +func FlattenKeyPattern(v *ves_io_schema_app_type.KeyPattern) []interface{} { + kpValue := make([]interface{}, 0) + if v != nil { + kpVal := map[string]interface{}{ + "exact_value": v.GetExactValue(), + "regex_value": v.GetRegexValue(), + } + kpValue = append(kpValue, kpVal) + } + return kpValue +} + +func FlattenValuePattern(v *ves_io_schema_app_type.ValuePattern) []interface{} { + vpValue := make([]interface{}, 0) + if v != nil { + vpVal := map[string]interface{}{ + "exact_value": v.GetExactValue(), + "regex_value": v.GetRegexValue(), + } + vpValue = append(vpValue, vpVal) + } + return vpValue +} + +func FlattenKeyValuePattern(v *ves_io_schema_app_type.KeyValuePattern) []interface{} { + kvpValue := make([]interface{}, 0) + if v != nil { + kvpVal := map[string]interface{}{ + "key_pattern": FlattenKeyPattern(v.GetKeyPattern()), + "value_pattern": FlattenValuePattern(v.GetValuePattern()), + } + kvpValue = append(kvpValue, kvpVal) + } + return kvpValue +} + +func FlattenMethods(x []ves_io_schema.HttpMethod) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenExpression(x []string) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func FlattenIpThreatCategories(x []ves_io_schema_policy.IPThreatCategory) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenAsNumbers(x []uint32) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func FlattenAsnSets(x []*ves_io_schema.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + t := map[string]interface{}{ + "name": v.GetName(), + "namespace": v.GetNamespace(), + "tenant": v.GetTenant(), + } + rslt = append(rslt, t) + } + return rslt +} + +func FlattenPrefixSets(x []*ves_io_schema.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + t := map[string]interface{}{ + "name": v.GetName(), + "namespace": v.GetNamespace(), + "tenant": v.GetTenant(), + } + rslt = append(rslt, t) + } + return rslt +} + +func FlattenIpPrefixes(x []string) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func FlattenClasses(x []ves_io_schema_policy.KnownTlsFingerprintClass) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenExactValues(x []string) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func FlattenExcludedvalues(x []string) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func ConvertSliceStringToInterface(x []string) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func FlattenTransformers(x []ves_io_schema_policy.Transformer) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenItem(x *ves_io_schema_policy.MatcherType) []interface{} { + itemValue := make([]interface{}, 0) + if x != nil { + itemVal := map[string]interface{}{ + "exact_values": x.GetExactValues(), + "regex_values": x.GetRegexValues(), + "transformers": FlattenTransformers(x.GetTransformers()), + } + itemValue = append(itemValue, itemVal) + } + return itemValue +} + +func FlattenCookieMatchers(x []*ves_io_schema_policy.CookieMatcherType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "invert_matcher": val.GetInvertMatcher(), + "check_not_present": isEmpty(val.GetCheckNotPresent()), + "check_present": isEmpty(val.GetCheckPresent()), + "item": FlattenItem(val.GetItem()), + "presence": val.GetPresence(), + "name": val.GetName(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenHeaders(x []*ves_io_schema_policy.HeaderMatcherType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "invert_matcher": val.GetInvertMatcher(), + "check_not_present": isEmpty(val.GetCheckNotPresent()), + "check_present": isEmpty(val.GetCheckPresent()), + "item": FlattenItem(val.GetItem()), + "presence": val.GetPresence(), + "name": val.GetName(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenQueryParams(x []*ves_io_schema_policy.QueryParameterMatcherType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "invert_matcher": val.GetInvertMatcher(), + "key": val.GetKey(), + "check_not_present": isEmpty(val.GetCheckNotPresent()), + "check_present": isEmpty(val.GetCheckPresent()), + "item": FlattenItem(val.GetItem()), + "presence": val.GetPresence(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenApiEndpointRules(x []*ves_io_schema_views_common_waf.APIEndpointProtectionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "action": FlattenAction(val.GetAction()), + "api_endpoint_method": FlattenApiEndpointMethod(val.GetApiEndpointMethod()), + "api_endpoint_path": val.GetApiEndpointPath(), + "client_matcher": FlattenClientMatcher(val.GetClientMatcher()), + "any_domain": isEmpty(val.GetAnyDomain()), + "specific_domain": val.GetSpecificDomain(), + "metadata": FlattenMetadata(val.GetMetadata()), + "request_matcher": FlattenRequestMatcher(val.GetRequestMatcher()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenJwtClaims(x []*ves_io_schema_policy.JWTClaimMatcherType) []interface{} { + jwtClaimsValue := make([]interface{}, 0) + for _, v := range x { + jwtClaimsVal := map[string]interface{}{ + "invert_matcher": v.GetInvertMatcher(), + "check_not_present": isEmpty(v.GetCheckNotPresent()), + "check_present": isEmpty(v.GetCheckPresent()), + "item": FlattenItem(v.GetItem()), + "name": v.GetName(), + } + jwtClaimsValue = append(jwtClaimsValue, jwtClaimsVal) + } + return jwtClaimsValue +} + +func FlattenRequestMatcher(x *ves_io_schema_policy.RequestMatcher) []interface{} { + rmValue := make([]interface{}, 0) + if x != nil { + rmVal := map[string]interface{}{ + "cookie_matchers": FlattenCookieMatchers(x.GetCookieMatchers()), + "headers": FlattenHeaders(x.GetHeaders()), + "jwt_claims": FlattenJwtClaims(x.GetJwtClaims()), + "query_params": FlattenQueryParams(x.GetQueryParams()), + } + rmValue = append(rmValue, rmVal) + } + return rmValue +} + +func FlattenClientMatcher(x *ves_io_schema_policy.ClientMatcher) []interface{} { + cmValue := make([]interface{}, 0) + if x != nil { + cmVal := map[string]interface{}{ + "any_client": isEmpty(x.GetAnyClient()), + "client_selector": FlattenClientSelector(x.GetClientSelector()), + "ip_threat_category_list": FlattenIpThreatCategoryList(x.GetIpThreatCategoryList()), + "any_ip": isEmpty(x.GetAnyIp()), + "asn_list": FlattenAsnList(x.GetAsnList()), + "asn_matcher": FlattenAsnMatcher(x.GetAsnMatcher()), + "ip_matcher": FlattenIpMatcher(x.GetIpMatcher()), + "ip_prefix_list": FlattenIpPrefixList(x.GetIpPrefixList()), + "tls_fingerprint_matcher": FlattenTlsFingerPrintMatcher(x.GetTlsFingerprintMatcher()), + } + cmValue = append(cmValue, cmVal) + } + return cmValue +} + +func FlattenTlsFingerPrintMatcher(x *ves_io_schema_policy.TlsFingerprintMatcherType) []interface{} { + tlsFMValue := make([]interface{}, 0) + if x != nil { + tlsFMVal := map[string]interface{}{ + "classes": FlattenClasses(x.GetClasses()), + "exact_values": x.GetExactValues(), + "excluded_values": x.GetExcludedValues(), + } + tlsFMValue = append(tlsFMValue, tlsFMVal) + } + return tlsFMValue +} + +func FlattenIpPrefixList(x *ves_io_schema_policy.PrefixMatchList) []interface{} { + ipPLValue := make([]interface{}, 0) + if x != nil { + ipPLVal := map[string]interface{}{ + "invert_match": x.GetInvertMatch(), + "ip_prefixes": x.GetIpPrefixes(), + } + ipPLValue = append(ipPLValue, ipPLVal) + } + return ipPLValue +} + +func FlattenIpMatcher(x *ves_io_schema_policy.IpMatcherType) []interface{} { + ipMValue := make([]interface{}, 0) + if x != nil { + ipMVal := map[string]interface{}{ + "invert_matcher": x.GetInvertMatcher(), + "prefix_sets": FlattenPrefixSets(x.GetPrefixSets()), + } + ipMValue = append(ipMValue, ipMVal) + } + return ipMValue +} + +func FlattenAsnMatcher(x *ves_io_schema_policy.AsnMatcherType) []interface{} { + asnMValue := make([]interface{}, 0) + if x != nil { + asnMVal := map[string]interface{}{ + "asn_sets": FlattenAsnSets(x.GetAsnSets()), + } + asnMValue = append(asnMValue, asnMVal) + } + return asnMValue +} + +func FlattenAsnList(x *ves_io_schema_policy.AsnMatchList) []interface{} { + asnLValue := make([]interface{}, 0) + if x != nil { + asnLVal := map[string]interface{}{ + "as_numbers": x.GetAsNumbers(), + } + asnLValue = append(asnLValue, asnLVal) + } + return asnLValue +} + +func FlattenIpThreatCategoryList(x *ves_io_schema_policy.IPThreatCategoryListType) []interface{} { + ipTCLValue := make([]interface{}, 0) + if x != nil { + ipTCLVal := map[string]interface{}{ + "ip_threat_categories": FlattenIpThreatCategories(x.GetIpThreatCategories()), + } + ipTCLValue = append(ipTCLValue, ipTCLVal) + } + return ipTCLValue +} + +func FlattenClientSelector(x *ves_io_schema.LabelSelectorType) []interface{} { + csValue := make([]interface{}, 0) + if x != nil { + csVal := map[string]interface{}{ + "expressions": x.GetExpressions(), + } + csValue = append(csValue, csVal) + } + return csValue +} + +func FlattenApiEndpointMethod(x *ves_io_schema_policy.HttpMethodMatcherType) []interface{} { + apiEPValue := make([]interface{}, 0) + if x != nil { + apiEPVal := map[string]interface{}{ + "invert_matcher": x.GetInvertMatcher(), + "methods": FlattenMethods(x.GetMethods()), + } + apiEPValue = append(apiEPValue, apiEPVal) + } + return apiEPValue +} + +func FlattenAction(x *ves_io_schema_views_common_waf.APIProtectionRuleAction) []interface{} { + actionValue := make([]interface{}, 0) + if x != nil { + actionVal := map[string]interface{}{ + "allow": isEmpty(x.GetAllow()), + "deny": x.GetDeny() != nil, + } + actionValue = append(actionValue, actionVal) + } + return actionValue +} + +func FlattenFAPGIpThreatCategories(x []ves_io_schema_policy.IPThreatCategory) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func ConvertSliceUint32ToInterface(x []uint32) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rslt = append(rslt, val) + } + return rslt +} + +func ConvertObjRefTypeToSlice(x []*ves_io_schema.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + t := map[string]interface{}{ + "name": v.GetName(), + "namespace": v.GetNamespace(), + "tenant": v.GetTenant(), + } + rslt = append(rslt, t) + } + return rslt +} + +func FlattenFAPGClasses(x []ves_io_schema_policy.KnownTlsFingerprintClass) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenApiGroupRules(x []*ves_io_schema_views_common_waf.APIGroupProtectionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "action": FlattenAction(val.GetAction()), + "api_group": val.GetApiGroup(), + "base_path": val.GetBasePath(), + "client_matcher": FlattenClientMatcher(val.GetClientMatcher()), + "any_domain": isEmpty(val.GetAnyDomain()), + "specific_domain": val.GetSpecificDomain(), + "metadata": FlattenMetadata(val.GetMetadata()), + "request_matcher": FlattenRequestMatcher(val.GetRequestMatcher()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenApiProtectionRules(x *ves_io_schema_views_common_waf.APIProtectionRules) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "api_endpoint_rules": FlattenApiEndpointRules(x.GetApiEndpointRules()), + "api_groups_rules": FlattenApiGroupRules(x.GetApiGroupsRules()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenActions(x []ves_io_schema_views_common_waf.ClientSrcRuleAction) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenHTTPHeaders(x []*ves_io_schema.HeaderMatcherType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "invert_match": val.GetInvertMatch(), + "name": val.GetName(), + "exact": val.GetExact(), + "presence": val.GetPresence(), + "regex": val.GetRegex(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenHTTPHeader(x *ves_io_schema_views_common_waf.HttpHeaderMatcherList) []interface{} { + httpHValue := make([]interface{}, 0) + if x != nil { + httpHVal := map[string]interface{}{ + "headers": FlattenHTTPHeaders(x.GetHeaders()), + } + httpHValue = append(httpHValue, httpHVal) + } + return httpHValue +} + +func FlattenBlockedClients(x []*ves_io_schema_views_common_waf.SimpleClientSrcRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "bot_skip_processing": isEmpty(val.GetBotSkipProcessing()), + "skip_processing": isEmpty(val.GetSkipProcessing()), + "waf_skip_processing": isEmpty(val.GetWafSkipProcessing()), + "actions": FlattenActions(val.GetActions()), + "as_number": val.GetAsNumber(), + "http_header": FlattenHTTPHeader(val.GetHttpHeader()), + "ip_prefix": val.GetIpPrefix(), + "user_identifier": val.GetUserIdentifier(), + "expiration_timestamp": FlattenExpirationTimestamp(val.GetExpirationTimestamp()), + "metadata": FlattenMetadata(val.GetMetadata()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenDomain(x *ves_io_schema.DomainType) []interface{} { + domainValue := make([]interface{}, 0) + if x != nil { + domainVal := map[string]interface{}{ + "exact_value": x.GetExactValue(), + "regex_value": x.GetRegexValue(), + "suffix_value": x.GetSuffixValue(), + } + domainValue = append(domainValue, domainVal) + } + return domainValue +} + +func FlattenPath(x *ves_io_schema.PathMatcherType) []interface{} { + pathValue := make([]interface{}, 0) + if x != nil { + pathVal := map[string]interface{}{ + "path": x.GetPath(), + "prefix": x.GetPrefix(), + "regex": x.GetRegex(), + } + pathValue = append(pathValue, pathVal) + } + return pathValue +} + +func FlattenExcludeList(x []*ves_io_schema_views_http_loadbalancer.ShapeJavaScriptExclusionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "any_domain": isEmpty(val.GetAnyDomain()), + "domain": FlattenDomain(val.GetDomain()), + "metadata": FlattenMetadata(val.GetMetadata()), + "path": FlattenPath(val.GetPath()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenRules(x []*ves_io_schema_views_http_loadbalancer.ShapeJavaScriptInsertionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "any_domain": val.GetAnyDomain() != nil, + "domain": FlattenDomain(val.GetDomain()), + "javascript_location": val.GetJavascriptLocation().String(), + "metadata": FlattenMetadata(val.GetMetadata()), + "path": FlattenPath(val.GetPath()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenMIHeaders(x []*ves_io_schema_policy.HeaderMatcherTypeBasic) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "check_not_present": isEmpty(val.GetCheckNotPresent()), + "check_present": isEmpty(val.GetCheckPresent()), + "item": FlattenItem(val.GetItem()), + "name": val.GetName(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenFailureConditions(x []*ves_io_schema.BotDefenseTransactionResultCondition) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "name": val.GetName(), + "regex_values": val.GetRegexValues(), + "status": val.GetStatus().String(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenHttpMethods(x []ves_io_schema.BotHttpMethod) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenProtectedAppEndpoints(x []*ves_io_schema_views_http_loadbalancer.AppEndpointType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "mobile": isEmpty(val.GetMobile()), + "web": isEmpty(val.GetWeb()), + "web_mobile": FlattenWebMobile(val.GetWebMobile()), + "any_domain": isEmpty(val.GetAnyDomain()), + "domain": FlattenDomain(val.GetDomain()), + "flow_label": FlattenFlowLabel(val.GetFlowLabel()), + "undefined_flow_label": isEmpty(val.GetUndefinedFlowLabel()), + "allow_good_bots": isEmpty(val.GetAllowGoodBots()), + "mitigate_good_bots": isEmpty(val.GetMitigateGoodBots()), + "http_methods": FlattenHttpMethods(val.GetHttpMethods()), + "metadata": FlattenMetadata(val.GetMetadata()), + "mitigation": FlattenMitigation(val.GetMitigation()), + "path": FlattenPath(val.GetPath()), + "protocol": val.GetProtocol().String(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenMitigation(x *ves_io_schema_policy.ShapeBotMitigationAction) []interface{} { + mValue := make([]interface{}, 0) + if x != nil { + mVal := map[string]interface{}{ + "block": FlattenBlock(x.GetBlock()), + "flag": FlattenFlag(x.GetFlag()), + "none": isEmpty(x.GetNone()), + "redirect": FlattenRedirect(x.GetRedirect()), + } + mValue = append(mValue, mVal) + } + return mValue +} + +func FlattenRedirect(x *ves_io_schema_policy.ShapeBotRedirectMitigationActionType) []interface{} { + rValue := make([]interface{}, 0) + if x != nil { + rVal := map[string]interface{}{ + "uri": x.GetUri(), + } + rValue = append(rValue, rVal) + } + return rValue +} + +func FlattenFlag(x *ves_io_schema_policy.ShapeBotFlagMitigationActionChoiceType) []interface{} { + flagValue := make([]interface{}, 0) + if x != nil { + flagVal := map[string]interface{}{ + "append_headers": FlattenAppendHeaders(x.GetAppendHeaders()), + "no_headers": isEmpty(x.GetNoHeaders()), + } + flagValue = append(flagValue, flagVal) + } + return flagValue +} + +func FlattenAppendHeaders(x *ves_io_schema_policy.ShapeBotFlagMitigationActionType) []interface{} { + ahValue := make([]interface{}, 0) + if x != nil { + ahVal := map[string]interface{}{ + "auto_type_header_name": x.GetAutoTypeHeaderName(), + "inference_header_name": x.GetInferenceHeaderName(), + } + ahValue = append(ahValue, ahVal) + } + return ahValue +} + +func FlattenBlock(x *ves_io_schema_policy.ShapeBotBlockMitigationActionType) []interface{} { + bValue := make([]interface{}, 0) + if x != nil { + bVal := map[string]interface{}{ + "body": x.GetBody(), + "body_hash": x.GetBodyHash(), + "status": x.GetStatus().String(), + } + bValue = append(bValue, bVal) + } + return bValue +} + +func FlattenFlowLabel(x *ves_io_schema.BotDefenseFlowLabelCategoriesChoiceType) []interface{} { + flValue := make([]interface{}, 0) + if x != nil { + flVal := map[string]interface{}{ + "account_management": FlattenAccountManagement(x.GetAccountManagement()), + "authentication": FlattenAuthentication(x.GetAuthentication()), + "financial_services": FlattenFinancialServices(x.GetFinancialServices()), + "flight": FlattenFlight(x.GetFlight()), + "profile_management": FlattenProfileManagement(x.GetProfileManagement()), + "search": FlattenSearch(x.GetSearch()), + "shopping_gift_cards": FlattenShoppingGiftCards(x.GetShoppingGiftCards()), + } + flValue = append(flValue, flVal) + } + return flValue +} + +func FlattenShoppingGiftCards(x *ves_io_schema.BotDefenseFlowLabelShoppingGiftCardsChoiceType) []interface{} { + sgcValue := make([]interface{}, 0) + if x != nil { + sgcVal := map[string]interface{}{ + "gift_card_make_purchase_with_gift_card": isEmpty(x.GetGiftCardMakePurchaseWithGiftCard()), + "gift_card_validation": isEmpty(x.GetGiftCardValidation()), + "shop_add_to_cart": isEmpty(x.GetShopAddToCart()), + "shop_checkout": isEmpty(x.GetShopCheckout()), + "shop_choose_seat": isEmpty(x.GetShopChooseSeat()), + "shop_enter_drawing_submission": isEmpty(x.GetShopEnterDrawingSubmission()), + "shop_make_payment": isEmpty(x.GetShopMakePayment()), + "shop_order": isEmpty(x.GetShopOrder()), + "shop_price_inquiry": isEmpty(x.GetShopPriceInquiry()), + "shop_promo_code_validation": isEmpty(x.GetShopPromoCodeValidation()), + "shop_purchase_gift_card": isEmpty(x.GetShopPurchaseGiftCard()), + "shop_update_quantity": isEmpty(x.GetShopUpdateQuantity()), + } + sgcValue = append(sgcValue, sgcVal) + } + return sgcValue +} + +func FlattenSearch(x *ves_io_schema.BotDefenseFlowLabelSearchChoiceType) []interface{} { + sValue := make([]interface{}, 0) + if x != nil { + sVal := map[string]interface{}{ + "flight_search": isEmpty(x.GetFlightSearch()), + "product_search": isEmpty(x.GetProductSearch()), + "reservation_search": isEmpty(x.GetReservationSearch()), + "room_search": isEmpty(x.GetRoomSearch()), + } + sValue = append(sValue, sVal) + } + return sValue +} + +func FlattenProfileManagement(x *ves_io_schema.BotDefenseFlowLabelProfileManagementChoiceType) []interface{} { + pmValue := make([]interface{}, 0) + if x != nil { + pmVal := map[string]interface{}{ + "create": isEmpty(x.GetCreate()), + "update": isEmpty(x.GetUpdate()), + "view": isEmpty(x.GetView()), + } + pmValue = append(pmValue, pmVal) + } + return pmValue +} + +func FlattenFlight(x *ves_io_schema.BotDefenseFlowLabelFlightChoiceType) []interface{} { + fValue := make([]interface{}, 0) + if x != nil { + fVal := map[string]interface{}{ + "checkin": isEmpty(x.GetCheckin()), + } + fValue = append(fValue, fVal) + } + return fValue +} + +func FlattenFinancialServices(x *ves_io_schema.BotDefenseFlowLabelFinancialServicesChoiceType) []interface{} { + fsValue := make([]interface{}, 0) + if x != nil { + fsVal := map[string]interface{}{ + "apply": isEmpty(x.GetApply()), + "money_transfer": isEmpty(x.GetMoneyTransfer()), + } + fsValue = append(fsValue, fsVal) + } + return fsValue +} + +func FlattenAuthentication(x *ves_io_schema.BotDefenseFlowLabelAuthenticationChoiceType) []interface{} { + authValue := make([]interface{}, 0) + if x != nil { + authVal := map[string]interface{}{ + // "login": FlattenLogin(x.GetLogin()), + "login_mfa": isEmpty(x.GetLoginMfa()), + "login_partner": isEmpty(x.GetLoginPartner()), + "logout": isEmpty(x.GetLogout()), + "token_refresh": isEmpty(x.GetTokenRefresh()), + } + authValue = append(authValue, authVal) + } + return authValue +} + +func FlattenLogin(x *ves_io_schema.BotDefenseTransactionResult) []interface{} { + lValue := make([]interface{}, 0) + if x != nil { + lVal := map[string]interface{}{ + "disable_transaction_result": isEmpty(x.GetDisableTransactionResult()), + "transaction_result": FlattenTransactionResult(x.GetTransactionResult()), + } + lValue = append(lValue, lVal) + } + return lValue +} + +func FlattenTransactionResult(x *ves_io_schema.BotDefenseTransactionResultType) []interface{} { + trValue := make([]interface{}, 0) + if x != nil { + trVal := map[string]interface{}{ + "failure_conditions": FlattenFailureConditions(x.GetFailureConditions()), + "success_conditions": FlattenFailureConditions(x.GetSuccessConditions()), + } + trValue = append(trValue, trVal) + } + return trValue +} + +func FlattenAccountManagement(x *ves_io_schema.BotDefenseFlowLabelAccountManagementChoiceType) []interface{} { + amValue := make([]interface{}, 0) + if x != nil { + amVal := map[string]interface{}{ + "create": isEmpty(x.GetCreate()), + "password_reset": isEmpty(x.GetPasswordReset()), + } + amValue = append(amValue, amVal) + } + return amValue +} + +func FlattenWebMobile(x *ves_io_schema_views_http_loadbalancer.WebMobileTrafficType) []interface{} { + wmValue := make([]interface{}, 0) + if x != nil { + wmVal := map[string]interface{}{ + "header": FlattenHeader(x.GetHeader()), + "headers": FlattenMIHeaders(x.GetHeaders()), + "mobile_identifier": x.GetMobileIdentifier().String(), + } + wmValue = append(wmValue, wmVal) + } + return wmValue +} + +func FlattenHeader(x *ves_io_schema_policy.HeaderMatcherTypeBasic) []interface{} { + hValue := make([]interface{}, 0) + if x != nil { + hVal := map[string]interface{}{ + "check_not_present": isEmpty(x.GetCheckNotPresent()), + "check_present": isEmpty(x.GetCheckPresent()), + "item": FlattenItem(x.GetItem()), + "name": x.GetName(), + } + hValue = append(hValue, hVal) + } + return hValue +} + +func FlattenBotDefense(x *ves_io_schema_views_http_loadbalancer.ShapeBotDefenseType) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "disable_cors_support": isEmpty(x.GetDisableCorsSupport()), + "enable_cors_support": isEmpty(x.GetEnableCorsSupport()), + "policy": FlattenPolicy(x.GetPolicy()), + "regional_endpoint": x.GetRegionalEndpoint().String(), + "timeout": x.GetTimeout(), + } + val = append(val, test) + } + return val +} + +func FlattenPolicy(x *ves_io_schema_views_http_loadbalancer.ShapeBotDefensePolicyType) []interface{} { + pValue := make([]interface{}, 0) + if x != nil { + pVal := map[string]interface{}{ + "disable_js_insert": isEmpty(x.GetDisableJsInsert()), + "js_insert_all_pages": FlattenJsInsertAllPages(x.GetJsInsertAllPages()), + "js_insert_all_pages_except": FlattenJsInsertAllPagesExcept(x.GetJsInsertAllPagesExcept()), + "js_insertion_rules": FlattenJsInsertionRules(x.GetJsInsertionRules()), + "javascript_mode": x.GetJavascriptMode().String(), + "js_download_path": x.GetJsDownloadPath(), + "disable_mobile_sdk": isEmpty(x.GetDisableMobileSdk()), + "mobile_sdk_config": FlattenMobileSdkConfig(x.GetMobileSdkConfig()), + "protected_app_endpoints": FlattenProtectedAppEndpoints(x.GetProtectedAppEndpoints()), + } + pValue = append(pValue, pVal) + } + return pValue +} + +func FlattenMobileSdkConfig(x *ves_io_schema_views_http_loadbalancer.MobileSDKConfigType) []interface{} { + mscValue := make([]interface{}, 0) + if x != nil { + mscVal := map[string]interface{}{ + "mobile_identifier": FlattenMobileIdentifier(x.GetMobileIdentifier()), + "reload_header_name": x.GetReloadHeaderName(), + } + mscValue = append(mscValue, mscVal) + } + return mscValue +} + +func FlattenMobileIdentifier(x *ves_io_schema_views_http_loadbalancer.MobileTrafficIdentifierType) []interface{} { + miValue := make([]interface{}, 0) + if x != nil { + miVal := map[string]interface{}{ + "headers": FlattenMIHeaders(x.GetHeaders()), + } + miValue = append(miValue, miVal) + } + return miValue +} + +func FlattenJsInsertionRules(x *ves_io_schema_views_http_loadbalancer.ShapeJavaScriptInsertType) []interface{} { + jirValue := make([]interface{}, 0) + if x != nil { + jirVal := map[string]interface{}{ + "exclude_list": FlattenExcludeList(x.GetExcludeList()), + "rules": FlattenRules(x.GetRules()), + } + jirValue = append(jirValue, jirVal) + } + return jirValue +} + +func FlattenJsInsertAllPagesExcept(x *ves_io_schema_views_http_loadbalancer.ShapeJavaScriptInsertAllWithExceptionsType) []interface{} { + jiapeValue := make([]interface{}, 0) + if x != nil { + jiapeVal := map[string]interface{}{ + "exclude_list": FlattenExcludeList(x.GetExcludeList()), + "javascript_location": x.GetJavascriptLocation().String(), + } + jiapeValue = append(jiapeValue, jiapeVal) + } + return jiapeValue +} + +func FlattenJsInsertAllPages(x *ves_io_schema_views_http_loadbalancer.ShapeJavaScriptInsertAllType) []interface{} { + jiapValue := make([]interface{}, 0) + if x != nil { + jiapVal := map[string]interface{}{ + "javascript_location": x.GetJavascriptLocation().String(), + } + jiapValue = append(jiapValue, jiapVal) + } + return jiapValue +} + +func FlattenCaptchaChallenge(x *ves_io_schema_virtual_host.CaptchaChallengeType) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "cookie_expiry": x.GetCookieExpiry(), + "custom_page": x.GetCustomPage(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenEnableChallenge(x *ves_io_schema_views_common_waf.EnableChallenge) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "captcha_challenge_parameters": FlattenCaptchaChallenge(x.GetCaptchaChallengeParameters()), + "default_captcha_challenge_parameters": isEmpty(x.GetDefaultCaptchaChallengeParameters()), + "default_js_challenge_parameters": isEmpty(x.GetDefaultJsChallengeParameters()), + "js_challenge_parameters": FlattenJSChallenge(x.GetJsChallengeParameters()), + "default_mitigation_settings": isEmpty(x.GetDefaultMitigationSettings()), + "malicious_user_mitigation": FlattenMaliciousUserMitigation(x.GetMaliciousUserMitigation()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenJSChallenge(x *ves_io_schema_virtual_host.JavascriptChallengeType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "cookie_expiry": x.GetCookieExpiry(), + "custom_page": x.GetCustomPage(), + "js_script_delay": x.GetJsScriptDelay(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenArgMatchers(x []*ves_io_schema_policy.ArgMatcherType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "invert_matcher": val.GetInvertMatcher(), + "check_not_present": isEmpty(val.GetCheckNotPresent()), + "check_present": isEmpty(val.GetCheckPresent()), + "item": FlattenItem(val.GetItem()), + "presence": val.GetPresence(), + "name": val.GetName(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenPBCRules(x []*ves_io_schema_views_common_waf.ChallengeRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "metadata": FlattenMetadata(val.GetMetadata()), + "spec": FlattenSpec(val.GetSpec()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenSpec(x *ves_io_schema_service_policy_rule.ChallengeRuleSpec) []interface{} { + sValue := make([]interface{}, 0) + if x != nil { + sVal := map[string]interface{}{ + "arg_matchers": FlattenArgMatchers(x.GetArgMatchers()), + "any_asn": isEmpty(x.GetAnyAsn()), + "asn_list": FlattenAsnList(x.GetAsnList()), + "asn_matcher": FlattenAsnMatcher(x.GetAsnMatcher()), + "body_matcher": FlattenItem(x.GetBodyMatcher()), + "disable_challenge": isEmpty(x.GetDisableChallenge()), + "enable_captcha_challenge": isEmpty(x.GetEnableCaptchaChallenge()), + "enable_javascript_challenge": isEmpty(x.GetEnableJavascriptChallenge()), + "any_client": isEmpty(x.GetAnyClient()), + "client_name": x.GetClientName(), + "client_name_matcher": FlattenItem(x.GetClientNameMatcher()), + "client_selector": FlattenClientSelector(x.GetClientSelector()), + "cookie_matchers": FlattenCookieMatchers(x.GetCookieMatchers()), + "domain_matcher": FlattenDomainMatcher(x.GetDomainMatcher()), + "expiration_timestamp": FlattenExpirationTimestamp(x.GetExpirationTimestamp()), + "headers": FlattenHeaders(x.GetHeaders()), + "http_method": FlattenHttpMethod(x.GetHttpMethod()), + "any_ip": isEmpty(x.GetAnyIp()), + "ip_matcher": FlattenIpMatcher(x.GetIpMatcher()), + "ip_prefix_list": FlattenIpPrefixList(x.GetIpPrefixList()), + "path": FlattenSpecPath(x.GetPath()), + "query_params": FlattenQueryParams(x.GetQueryParams()), + "tls_fingerprint_matcher": FlattenTlsFingerPrintMatcher(x.GetTlsFingerprintMatcher()), + } + sValue = append(sValue, sVal) + } + return sValue +} + +func FlattenSpecPath(x *ves_io_schema_policy.PathMatcherType) []interface{} { + pathValue := make([]interface{}, 0) + if x != nil { + pathVal := map[string]interface{}{ + "exact_values": x.GetExactValues(), + "prefix_values": x.GetPrefixValues(), + "regex_values": x.GetRegexValues(), + "suffix_values": x.GetSuffixValues(), + "transformers": FlattenTransformers(x.GetTransformers()), + } + pathValue = append(pathValue, pathVal) + } + return pathValue +} + +func FlattenHttpMethod(x *ves_io_schema_policy.HttpMethodMatcherType) []interface{} { + httpmValue := make([]interface{}, 0) + if x != nil { + httpmVal := map[string]interface{}{ + "invert_matcher": x.GetInvertMatcher(), + "methods": FlattenMethods(x.GetMethods()), + } + httpmValue = append(httpmValue, httpmVal) + } + return httpmValue +} + +func FlattenDomainMatcher(x *ves_io_schema_policy.MatcherTypeBasic) []interface{} { + domainValue := make([]interface{}, 0) + if x != nil { + domainVal := map[string]interface{}{ + "exact_values": x.GetExactValues(), + "regex_values": x.GetRegexValues(), + } + domainValue = append(domainValue, domainVal) + } + return domainValue +} + +func FlattenPolicyBasedChallenge(x *ves_io_schema_views_common_waf.PolicyBasedChallenge) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "captcha_challenge_parameters": FlattenCaptchaChallenge(x.GetCaptchaChallengeParameters()), + "default_captcha_challenge_parameters": isEmpty(x.GetDefaultCaptchaChallengeParameters()), + "always_enable_captcha_challenge": isEmpty(x.GetAlwaysEnableCaptchaChallenge()), + "always_enable_js_challenge": isEmpty(x.GetAlwaysEnableJsChallenge()), + "no_challenge": isEmpty(x.GetNoChallenge()), + "default_js_challenge_parameters": isEmpty(x.GetDefaultJsChallengeParameters()), + "js_challenge_parameters": FlattenJsChallengeParameters(x.GetJsChallengeParameters()), + "default_mitigation_settings": isEmpty(x.GetDefaultMitigationSettings()), + "malicious_user_mitigation": FlattenMaliciousUserMitigation(x.GetMaliciousUserMitigation()), + "rule_list": FlattenRuleList(x.GetRuleList()), + "default_temporary_blocking_parameters": isEmpty(x.GetDefaultTemporaryBlockingParameters()), + "temporary_user_blocking": FlattenTemporaryUserBlocking(x.GetTemporaryUserBlocking()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenTemporaryUserBlocking(x *ves_io_schema_virtual_host.TemporaryUserBlockingType) []interface{} { + tubValue := make([]interface{}, 0) + if x != nil { + tubVal := map[string]interface{}{ + "custom_page": x.GetCustomPage(), + } + tubValue = append(tubValue, tubVal) + } + return tubValue +} + +func FlattenRuleList(x *ves_io_schema_views_common_waf.ChallengeRuleList) []interface{} { + rlValue := make([]interface{}, 0) + if x != nil { + rlVal := map[string]interface{}{ + "rules": FlattenPBCRules(x.GetRules()), + } + rlValue = append(rlValue, rlVal) + } + return rlValue +} + +func FlattenJsChallengeParameters(x *ves_io_schema_virtual_host.JavascriptChallengeType) []interface{} { + jcpValue := make([]interface{}, 0) + if x != nil { + jcpVal := map[string]interface{}{ + "cookie_expiry": x.GetCookieExpiry(), + "custom_page": x.GetCustomPage(), + } + jcpValue = append(jcpValue, jcpVal) + } + return jcpValue +} + +func FlattenCSDRules(x []*ves_io_schema_views_http_loadbalancer.CSDJavaScriptInsertionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "any_domain": val.GetAnyDomain() != nil, + "domain": FlattenDomain(val.GetDomain()), + "metadata": FlattenMetadata(val.GetMetadata()), + "path": FlattenPath(val.GetPath()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenClientSideDefense(x *ves_io_schema_views_http_loadbalancer.ClientSideDefenseType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "policy": FlattenCSDPolicy(x.GetPolicy()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCSDPolicy(x *ves_io_schema_views_http_loadbalancer.ClientSideDefensePolicyType) []interface{} { + pValue := make([]interface{}, 0) + if x != nil { + pVal := map[string]interface{}{ + "disable_js_insert": isEmpty(x.GetDisableJsInsert()), + "js_insert_all_pages": isEmpty(x.GetJsInsertAllPages()), + "js_insert_all_pages_except": FlattenCSDJsInsertAllPagesExcept(x.GetJsInsertAllPagesExcept()), + "js_insertion_rules": FlattenCSDJsInsertionRules(x.GetJsInsertionRules()), + } + pValue = append(pValue, pVal) + } + return pValue +} + +func FlattenCSDJsInsertionRules(x *ves_io_schema_views_http_loadbalancer.CSDJavaScriptInsertType) []interface{} { + jirValue := make([]interface{}, 0) + if x != nil { + jirVal := map[string]interface{}{ + "exclude_list": FlattenExcludeList(x.GetExcludeList()), + "rules": FlattenCSDRules(x.GetRules()), + } + jirValue = append(jirValue, jirVal) + } + return jirValue +} + +func FlattenCSDJsInsertAllPagesExcept(x *ves_io_schema_views_http_loadbalancer.CSDJavaScriptInsertAllWithExceptionsType) []interface{} { + jiapeValue := make([]interface{}, 0) + if x != nil { + jiapeVal := map[string]interface{}{ + "exclude_list": FlattenExcludeList(x.GetExcludeList()), + } + jiapeValue = append(jiapeValue, jiapeVal) + } + return jiapeValue +} + +func FlattenCorsPolicy(x *ves_io_schema.CorsPolicy) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "allow_credentials": x.GetAllowCredentials(), + "allow_headers": x.GetAllowHeaders(), + "allow_methods": x.GetAllowMethods(), + "allow_origin": ConvertSliceStringToInterface(x.GetAllowOrigin()), + "allow_origin_regex": ConvertSliceStringToInterface(x.GetAllowOriginRegex()), + "disabled": x.GetDisabled(), + "expose_headers": x.GetExposeHeaders(), + "max_age": x.GetMaxAge(), + "maximum_age": x.GetMaximumAge(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCsrfPolicy(x *ves_io_schema.CsrfPolicy) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "all_load_balancer_domains": x.GetAllLoadBalancerDomains() != nil, + "custom_domain_list": FlattenCustomDomainList(x.GetCustomDomainList()), + "disabled": isEmpty(x.GetDisabled()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCustomDomainList(x *ves_io_schema.DomainNameList) []interface{} { + cdlValue := make([]interface{}, 0) + if x != nil { + cdlVal := map[string]interface{}{ + "domains": ConvertSliceStringToInterface(x.GetDomains()), + } + cdlValue = append(cdlValue, cdlVal) + } + return cdlValue +} + +func FlattenDataGuardRules(x []*ves_io_schema_policy.SimpleDataGuardRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "apply_data_guard": isEmpty(val.GetApplyDataGuard()), + "skip_data_guard": isEmpty(val.GetSkipDataGuard()), + "any_domain": isEmpty(val.GetAnyDomain()), + "exact_value": val.GetExactValue(), + "suffix_value": val.GetSuffixValue(), + "metadata": FlattenMetadata(val.GetMetadata()), + "path": FlattenPath(val.GetPath()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCountryList(x []ves_io_schema_policy.CountryCode) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenExpirationTimestamp(x *types.Timestamp) string { + if x == nil { + return "" + } + return x.String() +} + +func FlattenDDOSMitigationRules(x []*ves_io_schema_views_http_loadbalancer.DDoSMitigationRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "expiration_timestamp": FlattenExpirationTimestamp(val.GetExpirationTimestamp()), + "metadata": FlattenMetadata(val.GetMetadata()), + "block": isEmpty(val.GetBlock()), + "ddos_client_source": FlattenDdosClientSource(val.GetDdosClientSource()), + "ip_prefix_list": FlattenIpPrefixList(val.GetIpPrefixList()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenDdosClientSource(x *ves_io_schema_views_http_loadbalancer.DDoSClientSource) []interface{} { + dcsValue := make([]interface{}, 0) + if x != nil { + dcsVal := map[string]interface{}{ + "asn_list": FlattenAsnList(x.GetAsnList()), + "country_list": FlattenCountryList(x.GetCountryList()), + "tls_fingerprint_matcher": FlattenTlsFingerPrintMatcher(x.GetTlsFingerprintMatcher()), + } + dcsValue = append(dcsValue, dcsVal) + } + return dcsValue +} + +func FlattenEndpointSubsets(x map[string]string) map[string]interface{} { + rslt := make(map[string]interface{}) + for k, val := range x { + rslt[k] = val + } + return rslt +} + +func FlattenDefaultRoutePools(x []*ves_io_schema_views.OriginPoolWithWeight) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + nestedStruct := map[string]interface{}{ + "endpoint_subsets": FlattenEndpointSubsets(val.GetEndpointSubsets()), + "cluster": FlattenCluster(val.GetCluster()), + "pool": FlattenPool(val.GetPool()), + "priority": val.GetPriority(), + "weight": val.GetWeight(), + } + rslt = append(rslt, nestedStruct) + } + return rslt +} + +func FlattenPool(x *ves_io_schema_views.ObjectRefType) []interface{} { + poolRslt := make([]interface{}, 0) + if x != nil { + poolVal := map[string]interface{}{ + "tenant": x.GetTenant(), + "namespace": x.GetNamespace(), + "name": x.GetName(), + } + poolRslt = append(poolRslt, poolVal) + } + return poolRslt +} + +func FlattenCluster(x *ves_io_schema_views.ObjectRefType) []interface{} { + clusterRslt := make([]interface{}, 0) + if x != nil { + clusterVal := map[string]interface{}{ + "tenant": x.GetTenant(), + "namespace": x.GetNamespace(), + "name": x.GetName(), + } + clusterRslt = append(clusterRslt, clusterVal) + } + return clusterRslt +} + +func FlattenGraphRules(x []*ves_io_schema_policy.GraphQLRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "any_domain": isEmpty(val.GetAnyDomain()), + "exact_value": val.GetExactValue(), + "suffix_value": val.GetSuffixValue(), + "exact_path": val.GetExactPath(), + "graphql_settings": FlattenGraphqlSettings(val.GetGraphqlSettings()), + "metadata": FlattenMetadata(val.GetMetadata()), + "method_get": isEmpty(val.GetMethodGet()), + "method_post": isEmpty(val.GetMethodPost()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenGraphqlSettings(x *ves_io_schema_policy.GraphQLSettingsType) []interface{} { + gsValue := make([]interface{}, 0) + if x != nil { + gsVal := map[string]interface{}{ + "disable_introspection": isEmpty(x.GetDisableIntrospection()), + "enable_introspection": isEmpty(x.GetEnableIntrospection()), + "max_batched_queries": x.GetMaxBatchedQueries(), + "max_depth": x.GetMaxDepth(), + "max_total_length": x.GetMaxTotalLength(), + "max_value_length": x.GetMaxValueLength(), + "policy_name": x.GetPolicyName(), + } + gsValue = append(gsValue, gsVal) + } + return gsValue +} + +func FlattenCookieStickiness(x *ves_io_schema_route.CookieForHashing) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "add_httponly": isEmpty(x.GetAddHttponly()), + "ignore_httponly": isEmpty(x.GetIgnoreHttponly()), + "name": x.GetName(), + "path": x.GetPath(), + "ignore_samesite": isEmpty(x.GetIgnoreSamesite()), + "samesite_lax": isEmpty(x.GetSamesiteLax()), + "samesite_none": isEmpty(x.GetSamesiteNone()), + "samesite_strict": isEmpty(x.GetSamesiteStrict()), + "add_secure": isEmpty(x.GetAddSecure()), + "ignore_secure": isEmpty(x.GetIgnoreSecure()), + "ttl": x.GetTtl(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenHashPolicy(x []*ves_io_schema_route.HashPolicyType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "cookie": FlattenCookie(val.GetCookie()), + "header_name": val.GetHeaderName(), + "source_ip": val.GetSourceIp(), + "terminal": val.GetTerminal(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCookie(x *ves_io_schema_route.CookieForHashing) []interface{} { + cValue := make([]interface{}, 0) + if x != nil { + cVal := map[string]interface{}{ + "add_httponly": isEmpty(x.GetAddHttponly()), + "ignore_httponly": isEmpty(x.GetIgnoreHttponly()), + "name": x.GetName(), + "path": x.GetPath(), + "ignore_samesite": isEmpty(x.GetIgnoreSamesite()), + "samesite_lax": isEmpty(x.GetSamesiteLax()), + "samesite_none": isEmpty(x.GetSamesiteNone()), + "samesite_strict": isEmpty(x.GetSamesiteStrict()), + "add_secure": isEmpty(x.GetAddSecure()), + "ignore_secure": isEmpty(x.GetIgnoreSecure()), + "ttl": x.GetTtl(), + } + cValue = append(cValue, cVal) + } + return cValue +} + +func FlattenRingHash(x *ves_io_schema_views_http_loadbalancer.HashPolicyListType) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "hash_policy": FlattenHashPolicy(x.GetHashPolicy()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenEnableIpReputation(x *ves_io_schema_views_common_waf.IPThreatCategoryListType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "ip_threat_categories": FlattenIpThreatCategories(x.GetIpThreatCategories()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenJwtValidation(x *ves_io_schema_views_common_waf.JWTValidation) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + rs := map[string]interface{}{ + "action": FlattenJWTAction(x.GetAction()), + "auth_server_uri": x.GetAuthServerUri(), + "jwks": x.GetJwks(), + "jwks_config": FlattenJwksConfig(x.GetJwksConfig()), + "mandatory_claims": FlattenMandatoryClaims(x.GetMandatoryClaims()), + "reserved_claims": FlattenReservedClaims(x.GetReservedClaims()), + "target": FlattenTarget(x.GetTarget()), + "token_location": FlattenTokenLocation(x.GetTokenLocation()), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenTokenLocation(x *ves_io_schema_views_common_waf.TokenLocation) []interface{} { + tlValue := make([]interface{}, 0) + if x != nil { + tlVal := map[string]interface{}{ + "bearer_token": isEmpty(x.GetBearerToken()), + "cookie": x.GetCookie(), + "header": x.GetHeader(), + "query_param": x.GetQueryParam(), + } + tlValue = append(tlValue, tlVal) + } + return tlValue +} + +func FlattenTarget(x *ves_io_schema_views_common_waf.Target) []interface{} { + tValue := make([]interface{}, 0) + if x != nil { + tVal := map[string]interface{}{ + "all_endpoint": isEmpty(x.GetAllEndpoint()), + "api_groups": FlattenApiGroups(x.GetApiGroups()), + "base_paths": FlattenBasePaths(x.GetBasePaths()), + } + tValue = append(tValue, tVal) + } + return tValue +} + +func FlattenBasePaths(x *ves_io_schema_views_common_waf.BasePathsType) []interface{} { + bpValue := make([]interface{}, 0) + if x != nil { + bpVal := map[string]interface{}{ + "base_paths": x.GetBasePaths(), + } + bpValue = append(bpValue, bpVal) + } + return bpValue +} + +func FlattenApiGroups(x *ves_io_schema_views_common_waf.APIGroups) []interface{} { + agValue := make([]interface{}, 0) + if x != nil { + agVal := map[string]interface{}{ + "api_groups": x.GetApiGroups(), + } + agValue = append(agValue, agVal) + } + return agValue +} + +func FlattenReservedClaims(x *ves_io_schema_views_common_waf.ReservedClaims) []interface{} { + rcValue := make([]interface{}, 0) + if x != nil { + rcVal := map[string]interface{}{ + "audience": FlattenAudience(x.GetAudience()), + "audience_disable": isEmpty(x.GetAudienceDisable()), + "issuer": x.GetIssuer(), + "issuer_disable": isEmpty(x.GetIssuerDisable()), + "validate_period_disable": isEmpty(x.GetValidatePeriodDisable()), + "validate_period_enable": isEmpty(x.GetValidatePeriodEnable()), + } + rcValue = append(rcValue, rcVal) + } + return rcValue +} + +func FlattenAudience(x *ves_io_schema_views_common_waf.Audiences) []interface{} { + aValue := make([]interface{}, 0) + if x != nil { + aVal := map[string]interface{}{ + "audiences": x.GetAudiences(), + } + aValue = append(aValue, aVal) + } + return aValue +} + +func FlattenMandatoryClaims(x *ves_io_schema_views_common_waf.MandatoryClaims) []interface{} { + mcValue := make([]interface{}, 0) + if x != nil { + mcVal := map[string]interface{}{ + "claim_names": x.GetClaimNames(), + } + mcValue = append(mcValue, mcVal) + } + return mcValue +} + +func FlattenJwksConfig(x *ves_io_schema_views_common_waf.JWKS) []interface{} { + jcValue := make([]interface{}, 0) + if x != nil { + jcVal := map[string]interface{}{ + "cleartext": x.GetCleartext(), + } + jcValue = append(jcValue, jcVal) + } + return jcValue +} + +func FlattenJWTAction(x *ves_io_schema.Action) []interface{} { + aValue := make([]interface{}, 0) + if x != nil { + aVal := map[string]interface{}{ + "block": isEmpty(x.GetBlock()), + "report": isEmpty(x.GetReport()), + } + aValue = append(aValue, aVal) + } + return aValue +} + +func FlattenL7DdosActionJsChallenge(x *ves_io_schema_virtual_host.JavascriptChallengeType) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + rs := map[string]interface{}{ + "cookie_expiry": x.GetCookieExpiry(), + "custom_page": x.GetCustomPage(), + "js_script_delay": x.GetJsScriptDelay(), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenHttp(x *ves_io_schema_views_http_loadbalancer.ProxyTypeHttp) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "dns_volterra_managed": x.GetDnsVolterraManaged(), + "port": x.GetPort(), + "port_ranges": x.GetPortRanges(), + } + val = append(val, test) + } + return val +} + +func FlattenCertificates(x []*ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "name": val.GetName(), + "namespace": val.GetNamespace(), + "tenant": val.GetTenant(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenHashAlgorithms(x []ves_io_schema.HashAlgorithm) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenTlsCertificates(x []*ves_io_schema.TlsCertificateType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "certificate_url": val.GetCertificateUrl(), + "description": val.GetDescription(), + "custom_hash_algorithms": FlattenCustomHashAlgorithms(val.GetCustomHashAlgorithms()), + "disable_ocsp_stapling": isEmpty(val.GetDisableOcspStapling()), + "use_system_defaults": isEmpty(val.GetUseSystemDefaults()), + "private_key": FlattenPrivateKey(val.GetPrivateKey()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenPrivateKey(x *ves_io_schema.SecretType) []interface{} { + pkValue := make([]interface{}, 0) + if x != nil { + pkVal := map[string]interface{}{ + "blindfold_secret_info_internal": FlattenBlindFoldSecretInfoInternal(x.GetBlindfoldSecretInfoInternal()), + "secret_encoding_type": x.GetSecretEncodingType().String(), + "blindfold_secret_info": FlattenBlindFoldSecretInfo(x.GetBlindfoldSecretInfo()), + "clear_secret_info": FlattenClearSecretInfo(x.GetClearSecretInfo()), + "vault_secret_info": FlattenVaultSecretInfo(x.GetVaultSecretInfo()), + "wingman_secret_info": FlattenWingmanSecretInfo(x.GetWingmanSecretInfo()), + } + pkValue = append(pkValue, pkVal) + } + return pkValue +} + +func FlattenWingmanSecretInfo(x *ves_io_schema.WingmanSecretInfoType) []interface{} { + wsiValue := make([]interface{}, 0) + if x != nil { + wsiVal := map[string]interface{}{ + "name": x.GetName(), + } + wsiValue = append(wsiValue, wsiVal) + } + return wsiValue +} + +func FlattenVaultSecretInfo(x *ves_io_schema.VaultSecretInfoType) []interface{} { + vsiValue := make([]interface{}, 0) + if x != nil { + vsiVal := map[string]interface{}{ + "key": x.GetKey(), + "location": x.GetLocation(), + "provider": x.GetProvider(), + "secret_encoding": x.GetSecretEncoding().String(), + "version": x.GetVersion(), + } + vsiValue = append(vsiValue, vsiVal) + } + return vsiValue +} + +func FlattenClearSecretInfo(x *ves_io_schema.ClearSecretInfoType) []interface{} { + csiValue := make([]interface{}, 0) + if x != nil { + csiVal := map[string]interface{}{ + "provider": x.GetProvider(), + "url": x.GetUrl(), + } + csiValue = append(csiValue, csiVal) + } + return csiValue +} + +func FlattenBlindFoldSecretInfo(x *ves_io_schema.BlindfoldSecretInfoType) []interface{} { + bsiValue := make([]interface{}, 0) + if x != nil { + bsiVal := map[string]interface{}{ + "decryption_provider": x.GetDecryptionProvider(), + "location": x.GetLocation(), + "store_provider": x.GetStoreProvider(), + } + bsiValue = append(bsiValue, bsiVal) + } + return bsiValue +} + +func FlattenBlindFoldSecretInfoInternal(x *ves_io_schema.BlindfoldSecretInfoType) []interface{} { + bsiiValue := make([]interface{}, 0) + if x != nil { + bsiiVal := map[string]interface{}{ + "decryption_provider": x.GetDecryptionProvider(), + "location": x.GetLocation(), + "store_provider": x.GetStoreProvider(), + } + bsiiValue = append(bsiiValue, bsiiVal) + } + return bsiiValue +} + +func FlattenCustomHashAlgorithms(x *ves_io_schema.HashAlgorithms) []interface{} { + chaValue := make([]interface{}, 0) + if x != nil { + chaVal := map[string]interface{}{ + "hash_algorithms": FlattenHashAlgorithms(x.GetHashAlgorithms()), + } + chaValue = append(chaValue, chaVal) + } + return chaValue +} + +func FlattenHttps(x *ves_io_schema_views_http_loadbalancer.ProxyTypeHttps) []interface{} { + val := make([]interface{}, 0) + + if x != nil { + test := map[string]interface{}{ + "add_hsts": x.GetAddHsts(), + "connection_idle_timeout": x.GetConnectionIdleTimeout(), + "default_loadbalancer": isEmpty(x.GetDefaultLoadbalancer()), + "non_default_loadbalancer": isEmpty(x.GetNonDefaultLoadbalancer()), + "header_transformation_type": FlattenHeaderTransformationType(x.GetHeaderTransformationType()), + "http_protocol_options": FlattenHttpProtocolOptions(x.GetHttpProtocolOptions()), + "http_redirect": x.GetHttpRedirect(), + "disable_path_normalize": isEmpty(x.GetDisablePathNormalize()), + "enable_path_normalize": isEmpty(x.GetEnablePathNormalize()), + "port": x.GetPort(), + "port_ranges": x.GetPortRanges(), + "append_server_name": x.GetAppendServerName(), + "default_header": isEmpty(x.GetDefaultHeader()), + "pass_through": isEmpty(x.GetPassThrough()), + "server_name": x.GetServerName(), + "tls_cert_params": FlattenTlsCertParams(x.GetTlsCertParams()), + "tls_parameters": FlattenTlsParameters(x.GetTlsParameters()), + } + val = append(val, test) + } + return val +} + +func FlattenTlsParameters(x *ves_io_schema_views.DownstreamTlsParamsType) []interface{} { + tpValue := make([]interface{}, 0) + if x != nil { + tpVal := map[string]interface{}{ + "no_mtls": isEmpty(x.GetNoMtls()), + "use_mtls": FlattenUseMtls(x.GetUseMtls()), + "tls_certificates": FlattenTlsCertificates(x.GetTlsCertificates()), + "tls_config": FlattenTlsConfig(x.GetTlsConfig()), + } + tpValue = append(tpValue, tpVal) + } + return tpValue +} + +func FlattenTlsCertParams(x *ves_io_schema_views.DownstreamTLSCertsParams) []interface{} { + tcpValue := make([]interface{}, 0) + if x != nil { + tcpVal := map[string]interface{}{ + "certificates": FlattenCertificates(x.GetCertificates()), + "no_mtls": isEmpty(x.GetNoMtls()), + "use_mtls": FlattenUseMtls(x.GetUseMtls()), + "tls_config": FlattenTlsConfig(x.GetTlsConfig()), + } + tcpValue = append(tcpValue, tcpVal) + } + return tcpValue +} + +func FlattenTlsConfig(x *ves_io_schema_views.TlsConfig) []interface{} { + tcValue := make([]interface{}, 0) + if x != nil { + tcVal := map[string]interface{}{ + "custom_security": FlattenCustomSecurity(x.GetCustomSecurity()), + "default_security": isEmpty(x.GetDefaultSecurity()), + "low_security": isEmpty(x.GetLowSecurity()), + "medium_security": isEmpty(x.GetMediumSecurity()), + } + tcValue = append(tcValue, tcVal) + } + return tcValue +} + +func FlattenCustomSecurity(x *ves_io_schema_views.CustomCiphers) []interface{} { + csValue := make([]interface{}, 0) + if x != nil { + csVal := map[string]interface{}{ + "cipher_suites": x.GetCipherSuites(), + "max_version": x.GetMaxVersion().String(), + "min_version": x.GetMinVersion().String(), + } + csValue = append(csValue, csVal) + } + return csValue +} + +func FlattenUseMtls(x *ves_io_schema_views.DownstreamTlsValidationContext) []interface{} { + umValue := make([]interface{}, 0) + if x != nil { + umVal := map[string]interface{}{ + "crl": FlattenCrl(x.GetCrl()), + "no_crl": isEmpty(x.GetNoCrl()), + "trusted_ca": FlattenTrustedCA(x.GetTrustedCa()), + "trusted_ca_url": x.GetTrustedCaUrl(), + "xfcc_disabled": isEmpty(x.GetXfccDisabled()), + "xfcc_options": FlattenXfccOptions(x.GetXfccOptions()), + } + umValue = append(umValue, umVal) + } + return umValue +} + +func FlattenXfccHeaderElements(x []ves_io_schema.XfccElement) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenXfccOptions(x *ves_io_schema_views.XfccHeaderKeys) []interface{} { + xoValue := make([]interface{}, 0) + if x != nil { + xoVal := map[string]interface{}{ + "xfcc_header_elements": FlattenXfccHeaderElements(x.GetXfccHeaderElements()), + } + xoValue = append(xoValue, xoVal) + } + return xoValue +} + +func FlattenTrustedCA(x *ves_io_schema_views.ObjectRefType) []interface{} { + tcValue := make([]interface{}, 0) + if x != nil { + tcVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + tcValue = append(tcValue, tcVal) + } + return tcValue +} + +func FlattenCrl(x *ves_io_schema_views.ObjectRefType) []interface{} { + cValue := make([]interface{}, 0) + if x != nil { + cVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + cValue = append(cValue, cVal) + } + return cValue +} + +func FlattenHttpProtocolOptions(x *ves_io_schema_virtual_host.HttpProtocolOptions) []interface{} { + hpoValue := make([]interface{}, 0) + if x != nil { + hpoVal := map[string]interface{}{ + "http_protocol_enable_v1_only": FlattenHttpProtocolEnableV1Only(x.GetHttpProtocolEnableV1Only()), + "http_protocol_enable_v1_v2": isEmpty(x.GetHttpProtocolEnableV1V2()), + "http_protocol_enable_v2_only": isEmpty(x.GetHttpProtocolEnableV2Only()), + } + hpoValue = append(hpoValue, hpoVal) + } + return hpoValue +} + +func FlattenHttpProtocolEnableV1Only(x *ves_io_schema_virtual_host.Http1ProtocolOptions) []interface{} { + hpoValue := make([]interface{}, 0) + if x != nil { + hpoVal := map[string]interface{}{ + "header_transformation": FlattenHeaderTransformationType(x.GetHeaderTransformation()), + } + hpoValue = append(hpoValue, hpoVal) + } + return hpoValue +} + +func FlattenHeaderTransformationType(x *ves_io_schema.HeaderTransformationType) []interface{} { + httValue := make([]interface{}, 0) + if x != nil { + httVal := map[string]interface{}{ + "default_header_transformation": isEmpty(x.GetDefaultHeaderTransformation()), + "legacy_header_transformation": isEmpty(x.GetLegacyHeaderTransformation()), + "preserve_case_header_transformation": isEmpty(x.GetPreserveCaseHeaderTransformation()), + "proper_case_header_transformation": isEmpty(x.GetProperCaseHeaderTransformation()), + } + httValue = append(httValue, httVal) + } + return httValue +} + +func FlattenHttpsAutoCert(x *ves_io_schema_views_http_loadbalancer.ProxyTypeHttpsAutoCerts) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "add_hsts": x.GetAddHsts(), + "connection_idle_timeout": x.GetConnectionIdleTimeout(), + "default_loadbalancer": isEmpty(x.GetDefaultLoadbalancer()), + "non_default_loadbalancer": isEmpty(x.GetNonDefaultLoadbalancer()), + "header_transformation_type": FlattenHeaderTransformationType(x.GetHeaderTransformationType()), + "http_protocol_options": FlattenHttpProtocolOptions(x.GetHttpProtocolOptions()), + "http_redirect": x.GetHttpRedirect(), + "no_mtls": isEmpty(x.GetNoMtls()), + "use_mtls": FlattenUseMtls(x.GetUseMtls()), + "disable_path_normalize": isEmpty(x.GetDisablePathNormalize()), + "enable_path_normalize": isEmpty(x.GetEnablePathNormalize()), + "port": x.GetPort(), + "port_ranges": x.GetPortRanges(), + "append_server_name": x.GetAppendServerName(), + "default_header": isEmpty(x.GetDefaultHeader()), + "pass_through": isEmpty(x.GetPassThrough()), + "server_name": x.GetServerName(), + "tls_config": FlattenTlsConfig(x.GetTlsConfig()), + } + val = append(val, test) + } + return val +} + +func FlattenMaliciousUserMitigation(x *ves_io_schema_views.ObjectRefType) []interface{} { + val := make([]interface{}, 0) + + if x != nil { + value := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + val = append(val, value) + } + return val +} + +func FlattenCSDDR(x []*ves_io_schema_app_type.CustomSensitiveDataDetectionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rs := map[string]interface{}{ + "metadata": FlattenMetadata(val.GetMetadata()), + "sensitive_data_detection_config": FlattenSensitiveDataDetectionConfig(val.GetSensitiveDataDetectionConfig()), + "sensitive_data_type": FlattenSensitiveDataType(val.GetSensitiveDataType()), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenSensitiveDataType(x *ves_io_schema_app_type.CustomSensitiveDataType) []interface{} { + sdtValue := make([]interface{}, 0) + if x != nil { + sdtVal := map[string]interface{}{ + "type": x.GetType(), + } + sdtValue = append(sdtValue, sdtVal) + } + return sdtValue +} + +func FlattenDisabledBuiltInRules(x []*ves_io_schema_app_type.BuiltInSensitiveDataType) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + rs := map[string]interface{}{ + "name": v.GetName(), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenSingleLbApp(x *ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "disable_discovery": isEmpty(x.GetDisableDiscovery()), + "enable_discovery": FlattenEnableApiDiscovery(x.GetEnableDiscovery()), + "disable_malicious_user_detection": isEmpty(x.GetDisableMaliciousUserDetection()), + "enable_malicious_user_detection": isEmpty(x.GetEnableMaliciousUserDetection()), + } + val = append(val, test) + } + return val +} + +func FlattenCookiesToModify(x []*ves_io_schema.CookieManipulationOptionType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "disable_tampering_protection": isEmpty(val.GetDisableTamperingProtection()), + "enable_tampering_protection": isEmpty(val.GetEnableTamperingProtection()), + "add_httponly": isEmpty(val.GetAddHttponly()), + "ignore_httponly": isEmpty(val.GetIgnoreHttponly()), + "ignore_max_age": isEmpty(val.GetIgnoreMaxAge()), + "max_age_value": val.GetMaxAgeValue(), + "name": val.GetName(), + "ignore_samesite": isEmpty(val.GetIgnoreSamesite()), + "samesite_lax": isEmpty(val.GetSamesiteLax()), + "samesite_none": isEmpty(val.GetSamesiteNone()), + "samesite_strict": isEmpty(val.GetSamesiteStrict()), + "add_secure": isEmpty(val.GetAddSecure()), + "ignore_secure": isEmpty(val.GetIgnoreSecure()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCustomError(x map[uint32]string) map[string]interface{} { + mpValue := make(map[string]interface{}) + for key, val := range x { + mpValue[strconv.Itoa(int(key))] = val + } + return mpValue +} + +func FlattenRequestHeadersToAdd(x []*ves_io_schema.HeaderManipulationOptionType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "append": val.GetAppend(), + "name": val.GetName(), + "secret_value": FlattenPrivateKey(val.GetSecretValue()), + "value": val.GetValue(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenMoreOption(x *ves_io_schema_views_http_loadbalancer.AdvancedOptionsType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "buffer_policy": FlattenBufferPolicy(x.GetBufferPolicy()), + "compression_params": FlattenCompressionParams(x.GetCompressionParams()), + "cookies_to_modify": FlattenCookiesToModify(x.GetCookiesToModify()), + "custom_errors": FlattenCustomError(x.GetCustomErrors()), + "disable_default_error_pages": x.GetDisableDefaultErrorPages(), + "idle_timeout": x.GetIdleTimeout(), + "javascript_info": FlattenJavascriptInfo(x.GetJavascriptInfo()), + "jwt": FlattenCertificates(x.GetJwt()), + "max_request_header_size": x.GetMaxRequestHeaderSize(), + "disable_path_normalize": isEmpty(x.GetDisablePathNormalize()), + "enable_path_normalize": isEmpty(x.GetEnablePathNormalize()), + "request_headers_to_add": FlattenRequestHeadersToAdd(x.GetRequestHeadersToAdd()), + "request_headers_to_remove": x.GetRequestHeadersToRemove(), + "response_headers_to_add": FlattenRequestHeadersToAdd(x.GetResponseHeadersToAdd()), + "response_headers_to_remove": x.GetResponseHeadersToRemove(), + "additional_domains": FlattenAdditionalDomains(x.GetAdditionalDomains()), + "enable_strict_sni_host_header_check": x.GetEnableStrictSniHostHeaderCheck() != nil, + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenAdditionalDomains(x *ves_io_schema.DomainNameList) []interface{} { + adValue := make([]interface{}, 0) + if x != nil { + adVal := map[string]interface{}{ + "domains": x.GetDomains(), + } + adValue = append(adValue, adVal) + } + return adValue +} + +func FlattenJavascriptInfo(x *ves_io_schema_virtual_host.JavaScriptConfigType) []interface{} { + jiValue := make([]interface{}, 0) + if x != nil { + jiVal := map[string]interface{}{ + "cache_prefix": x.GetCachePrefix(), + "custom_script_url": x.GetCustomScriptUrl(), + "script_config": x.GetScriptConfig().String(), + } + jiValue = append(jiValue, jiVal) + } + return jiValue +} + +func FlattenCompressionParams(x *ves_io_schema_virtual_host.CompressionType) []interface{} { + cpValue := make([]interface{}, 0) + if x != nil { + cpVal := map[string]interface{}{ + "content_length": x.GetContentLength(), + "content_type": x.GetContentType(), + "disable_on_etag_header": x.GetDisableOnEtagHeader(), + "remove_accept_encoding_header": x.GetRemoveAcceptEncodingHeader(), + } + cpValue = append(cpValue, cpVal) + } + return cpValue +} + +func FlattenBufferPolicy(x *ves_io_schema.BufferConfigType) []interface{} { + bpValue := make([]interface{}, 0) + if x != nil { + bpVal := map[string]interface{}{ + "disabled": x.GetDisabled(), + "max_request_bytes": x.GetMaxRequestBytes(), + "max_request_time": x.GetMaxRequestTime(), + } + bpValue = append(bpValue, bpVal) + } + return bpValue +} + +func FlattenOriginServers(x []*ves_io_schema_views_origin_pool.OriginServerType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + + mapValue := map[string]interface{}{ + "consul_service": FlattenConsulService(val.GetConsulService()), + "custom_endpoint_object": FlattenCustomEndpointObject(val.GetCustomEndpointObject()), + "k8s_service": FlattenK8sService(val.GetK8SService()), + "private_ip": FlattenPrivateIp(val.GetPrivateIp()), + "private_name": FlattenPrivateName(val.GetPrivateName()), + "public_ip": FlattenOSPublicIp(val.GetPublicIp()), + "public_name": FlattenPublicName(val.GetPublicName()), + "vn_private_ip": FlattenVnPrivateIp(val.GetVnPrivateIp()), + "vn_private_name": FlattenVnPrivateName(val.GetVnPrivateName()), + "labels": FlattenEndpointSubsets(val.GetLabels()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenVnPrivateName(x *ves_io_schema_views_origin_pool.OriginServerVirtualNetworkName) []interface{} { + vnPrivateNValue := make([]interface{}, 0) + if x != nil { + vnPrivateNVal := map[string]interface{}{ + "dns_name": x.GetDnsName(), + "private_network": FlattenPrivateNetwork(x.GetPrivateNetwork()), + } + vnPrivateNValue = append(vnPrivateNValue, vnPrivateNVal) + } + return vnPrivateNValue +} + +func FlattenPrivateNetwork(x *ves_io_schema_views.ObjectRefType) []interface{} { + pnNValue := make([]interface{}, 0) + if x != nil { + pnNVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + pnNValue = append(pnNValue, pnNVal) + } + return pnNValue +} + +func FlattenVnPrivateIp(x *ves_io_schema_views_origin_pool.OriginServerVirtualNetworkIP) []interface{} { + vnPrivateIpValue := make([]interface{}, 0) + if x != nil { + vnPrivateIpVal := map[string]interface{}{ + "ip": x.GetIp(), + "virtual_network": FlattenOSVirtualNetwork(x.GetVirtualNetwork()), + "ipv6": x.GetIpv6(), + } + vnPrivateIpValue = append(vnPrivateIpValue, vnPrivateIpVal) + } + return vnPrivateIpValue +} + +func FlattenOSVirtualNetwork(x *ves_io_schema_views.ObjectRefType) []interface{} { + vnValue := make([]interface{}, 0) + if x != nil { + vnVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + vnValue = append(vnValue, vnVal) + } + return vnValue +} + +func FlattenPublicName(x *ves_io_schema_views_origin_pool.OriginServerPublicName) []interface{} { + publicNValue := make([]interface{}, 0) + if x != nil { + publicNVal := map[string]interface{}{ + "dns_name": x.GetDnsName(), + "refresh_interval": x.GetRefreshInterval(), + } + publicNValue = append(publicNValue, publicNVal) + } + return publicNValue +} + +func FlattenOSPublicIp(x *ves_io_schema_views_origin_pool.OriginServerPublicIP) []interface{} { + publicIpValue := make([]interface{}, 0) + if x != nil { + publicIpVal := map[string]interface{}{ + "ip": x.GetIp(), + "ipv6": x.GetIpv6(), + } + publicIpValue = append(publicIpValue, publicIpVal) + } + return publicIpValue +} + +func FlattenPrivateName(x *ves_io_schema_views_origin_pool.OriginServerPrivateName) []interface{} { + pnValue := make([]interface{}, 0) + if x != nil { + pnVal := map[string]interface{}{ + "dns_name": x.GetDnsName(), + "inside_network": isEmpty(x.GetInsideNetwork()), + "outside_network": isEmpty(x.GetOutsideNetwork()), + "refresh_interval": x.GetRefreshInterval(), + "site_locator": FlattenSiteLocator(x.GetSiteLocator()), + } + pnValue = append(pnValue, pnVal) + } + return pnValue +} + +func FlattenPrivateIp(x *ves_io_schema_views_origin_pool.OriginServerPrivateIP) []interface{} { + piValue := make([]interface{}, 0) + if x != nil { + piVal := map[string]interface{}{ + "inside_network": isEmpty(x.GetInsideNetwork()), + "outside_network": isEmpty(x.GetOutsideNetwork()), + "ip": x.GetIp(), + "ipv6": x.GetIpv6(), + "site_locator": FlattenSiteLocator(x.GetSiteLocator()), + } + piValue = append(piValue, piVal) + } + return piValue +} + +func FlattenK8sService(x *ves_io_schema_views_origin_pool.OriginServerK8SService) []interface{} { + k8sValue := make([]interface{}, 0) + if x != nil { + k8sVal := map[string]interface{}{ + "inside_network": isEmpty(x.GetInsideNetwork()), + "outside_network": isEmpty(x.GetOutsideNetwork()), + "vk8s_networks": isEmpty(x.GetVk8SNetworks()), + "service_name": x.GetServiceName(), + "service_selector": FlattenServiceSelector(x.GetServiceSelector()), + "site_locator": FlattenSiteLocator(x.GetSiteLocator()), + } + k8sValue = append(k8sValue, k8sVal) + } + return k8sValue +} + +func FlattenServiceSelector(x *ves_io_schema.LabelSelectorType) []interface{} { + ssValue := make([]interface{}, 0) + if x != nil { + ssVal := map[string]interface{}{ + "expressions": x.GetExpressions(), + } + ssValue = append(ssValue, ssVal) + } + return ssValue +} + +func FlattenCustomEndpointObject(x *ves_io_schema_views_origin_pool.OriginServerCustomEndpoint) []interface{} { + ceoValue := make([]interface{}, 0) + if x != nil { + ceoVal := map[string]interface{}{ + "endpoint": FlattenEndpoint(x.GetEndpoint()), + } + ceoValue = append(ceoValue, ceoVal) + } + return ceoValue +} + +func FlattenEndpoint(x *ves_io_schema_views.ObjectRefType) []interface{} { + eValue := make([]interface{}, 0) + if x != nil { + eVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + eValue = append(eValue, eVal) + } + return eValue +} + +func FlattenConsulService(x *ves_io_schema_views_origin_pool.OriginServerConsulService) []interface{} { + csValue := make([]interface{}, 0) + if x != nil { + csVal := map[string]interface{}{ + "inside_network": isEmpty(x.GetInsideNetwork()), + "outside_network": isEmpty(x.GetOutsideNetwork()), + "service_name": x.GetServiceName(), + "site_locator": FlattenSiteLocator(x.GetSiteLocator()), + } + csValue = append(csValue, csVal) + } + return csValue +} + +func FlattenSiteLocator(x *ves_io_schema_views.SiteLocator) []interface{} { + slValue := make([]interface{}, 0) + if x != nil { + slVal := map[string]interface{}{ + "site": FlattenSLSite(x.GetSite()), + "virtual_site": FlattenSLVirtualSite(x.GetVirtualSite()), + } + slValue = append(slValue, slVal) + } + return slValue +} + +func FlattenSLVirtualSite(x *ves_io_schema_views.ObjectRefType) []interface{} { + vsValue := make([]interface{}, 0) + if x != nil { + vsVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + vsValue = append(vsValue, vsVal) + } + return vsValue +} + +func FlattenSLSite(x *ves_io_schema_views.ObjectRefType) []interface{} { + sValue := make([]interface{}, 0) + if x != nil { + sVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + sValue = append(sValue, sVal) + } + return sValue +} + +func FlattenCircuitBreaker(x *ves_io_schema_cluster.CircuitBreaker) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + rs := map[string]interface{}{ + "connection_limit": x.GetConnectionLimit(), + "max_requests": x.GetMaxRequests(), + "pending_requests": x.GetPendingRequests(), + "priority": x.GetPriority().String(), + "retries": x.GetRetries(), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenDefaultPool(x *ves_io_schema_views_origin_pool.GlobalSpecType) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "advanced_options": FlattenDPAdvancedOption(x.GetAdvancedOptions()), + "endpoint_selection": x.GetEndpointSelection().String(), + "health_check_port": x.GetHealthCheckPort(), + "same_as_endpoint_port": x.GetSameAsEndpointPort() != nil, + "healthcheck": FlattenCertificates(x.GetHealthcheck()), + "loadbalancer_algorithm": x.GetLoadbalancerAlgorithm().String(), + "origin_servers": FlattenOriginServers(x.GetOriginServers()), + "automatic_port": isEmpty(x.GetAutomaticPort()), + "lb_port": isEmpty(x.GetLbPort()), + "port": x.GetPort(), + "no_tls": isEmpty(x.GetNoTls()), + "use_tls": FlattenUseTls(x.GetUseTls()), + "view_internal": FlattenViewInternal(x.GetViewInternal()), + } + val = append(val, test) + } + return val +} + +func FlattenViewInternal(x *ves_io_schema_views.ObjectRefType) []interface{} { + viValue := make([]interface{}, 0) + if x != nil { + viVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + viValue = append(viValue, viVal) + } + return viValue +} + +func FlattenUseTls(x *ves_io_schema_views_origin_pool.UpstreamTlsParameters) []interface{} { + useTlsValue := make([]interface{}, 0) + if x != nil { + useTlsVal := map[string]interface{}{ + "no_mtls": isEmpty(x.GetNoMtls()), + "use_mtls": FlattenOPUseMtls(x.GetUseMtls()), + "use_mtls_obj": FlattenUseMtlsObj(x.GetUseMtlsObj()), + "skip_server_verification": isEmpty(x.GetSkipServerVerification()), + "use_server_verification": FlattenUseServerVerification(x.GetUseServerVerification()), + "volterra_trusted_ca": isEmpty(x.GetVolterraTrustedCa()), + "disable_sni": isEmpty(x.GetDisableSni()), + "sni": x.GetSni(), + "use_host_header_as_sni": isEmpty(x.GetUseHostHeaderAsSni()), + "tls_config": FlattenTlsConfig(x.GetTlsConfig()), + } + useTlsValue = append(useTlsValue, useTlsVal) + } + return useTlsValue +} + +func FlattenUseServerVerification(x *ves_io_schema_views_origin_pool.UpstreamTlsValidationContext) []interface{} { + usvValue := make([]interface{}, 0) + if x != nil { + usvVal := map[string]interface{}{ + "trusted_ca": FlattenTrustedCA(x.GetTrustedCa()), + "trusted_ca_url": x.GetTrustedCaUrl(), + } + usvValue = append(usvValue, usvVal) + } + return usvValue +} + +func FlattenOPUseMtls(x *ves_io_schema_views_origin_pool.TlsCertificatesType) []interface{} { + useMtlsValue := make([]interface{}, 0) + if x != nil { + useMtlsVal := map[string]interface{}{ + "tls_certificates": FlattenTlsCertificates(x.GetTlsCertificates()), + } + useMtlsValue = append(useMtlsValue, useMtlsVal) + } + return useMtlsValue +} + +func FlattenUseMtlsObj(x *ves_io_schema_views.ObjectRefType) []interface{} { + umoValue := make([]interface{}, 0) + if x != nil { + umoVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + umoValue = append(umoValue, umoVal) + } + return umoValue +} + +func FlattenDPAdvancedOption(x *ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions) []interface{} { + aoValue := make([]interface{}, 0) + if x != nil { + aoVal := map[string]interface{}{ + "circuit_breaker": FlattenCircuitBreaker(x.GetCircuitBreaker()), + "default_circuit_breaker": isEmpty(x.GetDefaultCircuitBreaker()), + "disable_circuit_breaker": isEmpty(x.GetDisableCircuitBreaker()), + "connection_timeout": x.GetConnectionTimeout(), + "header_transformation_type": FlattenHeaderTransformationType(x.GetHeaderTransformationType()), + "http_idle_timeout": x.GetHttpIdleTimeout(), + "auto_http_config": isEmpty(x.GetAutoHttpConfig()), + "http1_config": FlattenHTTP1Config(x.GetHttp1Config()), + "http2_options": FlattenHttp2Options(x.GetHttp2Options()), + "disable_lb_source_ip_persistance": isEmpty(x.GetDisableLbSourceIpPersistance()), + "enable_lb_source_ip_persistance": isEmpty(x.GetEnableLbSourceIpPersistance()), + "disable_outlier_detection": isEmpty(x.GetDisableOutlierDetection()), + "outlier_detection": FlattenOutlierDetection(x.GetOutlierDetection()), + "no_panic_threshold": isEmpty(x.GetNoPanicThreshold()), + "panic_threshold": x.GetPanicThreshold(), + "disable_subsets": isEmpty(x.GetDisableSubsets()), + "enable_subsets": FlattenEnableSubsets(x.GetEnableSubsets()), + } + aoValue = append(aoValue, aoVal) + } + return aoValue +} + +func FlattenEnableSubsets(x *ves_io_schema_views_origin_pool.OriginPoolSubsets) []interface{} { + esValue := make([]interface{}, 0) + if x != nil { + esVal := map[string]interface{}{ + "any_endpoint": isEmpty(x.GetAnyEndpoint()), + "default_subset": FlattenDefaultSubset(x.GetDefaultSubset()), + "fail_request": isEmpty(x.GetFailRequest()), + } + esValue = append(esValue, esVal) + } + return esValue +} + +func FlattenDefaultSubset(x *ves_io_schema_views_origin_pool.OriginPoolDefaultSubset) []interface{} { + dsValue := make([]interface{}, 0) + if x != nil { + dsVal := map[string]interface{}{ + "default_subset": FlattenEndpointSubsets(x.GetDefaultSubset()), + } + dsValue = append(dsValue, dsVal) + } + return dsValue +} + +func FlattenOutlierDetection(x *ves_io_schema_cluster.OutlierDetectionType) []interface{} { + odValue := make([]interface{}, 0) + if x != nil { + odVal := map[string]interface{}{ + "base_ejection_time": x.GetBaseEjectionTime(), + "consecutive_5xx": x.GetConsecutive_5Xx(), + "consecutive_gateway_failure": x.GetConsecutiveGatewayFailure(), + "interval": x.GetInterval(), + "max_ejection_percent": x.GetMaxEjectionPercent(), + } + odValue = append(odValue, odVal) + } + return odValue +} + +func FlattenHttp2Options(x *ves_io_schema_cluster.Http2ProtocolOptions) []interface{} { + hoValue := make([]interface{}, 0) + if x != nil { + hoVal := map[string]interface{}{ + "enabled": x.GetEnabled(), + } + hoValue = append(hoValue, hoVal) + } + return hoValue +} + +func FlattenDefaultPoolList(x *ves_io_schema_views.OriginPoolListType) []interface{} { + rslt := make([]interface{}, 0) + + if x != nil { + mapValue := map[string]interface{}{ + "pools": FlattenDefaultRoutePools(x.GetPools()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenCountryCode(x []ves_io_schema_policy.CountryCode) []string { + rslt := make([]string, 0) + for _, val := range x { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenOSSR(x []*ves_io_schema_policy.OriginServerSubsetRule) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + rs := map[string]interface{}{ + "any_asn": isEmpty(v.GetAnyAsn()), + "asn_list": FlattenAsnList(v.GetAsnList()), + "asn_matcher": FlattenAsnMatcher(v.GetAsnMatcher()), + "body_matcher": FlattenItem(v.GetBodyMatcher()), + "country_codes": FlattenCountryCode(v.GetCountryCodes()), + "any_ip": isEmpty(v.GetAnyIp()), + "ip_matcher": FlattenIpMatcher(v.GetIpMatcher()), + "ip_prefix_list": FlattenIpPrefixList(v.GetIpPrefixList()), + "metadata": FlattenMetadata(v.GetMetadata()), + "origin_server_subsets_action": FlattenEndpointSubsets(v.GetOriginServerSubsetsAction()), + "re_name_list": v.GetReNameList(), + "client_selector": FlattenClientSelector(v.GetClientSelector()), + "none": isEmpty(v.GetNone()), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenOSSRL(x *ves_io_schema_views_http_loadbalancer.OriginServerSubsetRuleListType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + rs := map[string]interface{}{ + "origin_server_subset_rules": FlattenOSSR(x.GetOriginServerSubsetRules()), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenARLApiEndpointRules(x []*ves_io_schema_views_common_waf.ApiEndpointRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "api_endpoint_method": FlattenApiEndpointMethod(val.GetApiEndpointMethod()), + "api_endpoint_path": val.GetApiEndpointPath(), + "base_path": val.GetBasePath(), + "any_domain": val.GetAnyDomain() != nil, + "specific_domain": val.GetSpecificDomain(), + "inline_rate_limiter": FlattenInlineRateLimiter(val.GetInlineRateLimiter()), + "ref_rate_limiter": FlattenRefRateLimiter(val.GetRefRateLimiter()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenRefRateLimiter(x *ves_io_schema_views.ObjectRefType) []interface{} { + rrlValue := make([]interface{}, 0) + if x != nil { + rrlVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + rrlValue = append(rrlValue, rrlVal) + } + return rrlValue +} + +func FlattenInlineRateLimiter(x *ves_io_schema_views_common_waf.InlineRateLimiter) []interface{} { + irlValue := make([]interface{}, 0) + if x != nil { + irlVal := map[string]interface{}{ + "ref_user_id": FlattenRefUserId(x.GetRefUserId()), + "use_http_lb_user_id": isEmpty(x.GetUseHttpLbUserId()), + "threshold": x.GetThreshold(), + "unit": x.GetUnit().String(), + } + irlValue = append(irlValue, irlVal) + } + return irlValue +} + +func FlattenRefUserId(x *ves_io_schema_views.ObjectRefType) []interface{} { + ruiValue := make([]interface{}, 0) + if x != nil { + ruiVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + ruiValue = append(ruiValue, ruiVal) + } + return ruiValue +} + +func FlattenServerURLRules(x []*ves_io_schema_views_common_waf.ServerUrlRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "api_group": val.GetApiGroup(), + "base_path": val.GetBasePath(), + "client_matcher": FlattenClientMatcher(val.GetClientMatcher()), + "any_domain": isEmpty(val.GetAnyDomain()), + "specific_domain": val.GetSpecificDomain(), + "inline_rate_limiter": FlattenInlineRateLimiter(val.GetInlineRateLimiter()), + "ref_rate_limiter": FlattenRefRateLimiter(val.GetRefRateLimiter()), + "request_matcher": FlattenRequestMatcher(val.GetRequestMatcher()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenBRLR(x []*ves_io_schema_views_common_waf.BypassRateLimitingRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + rs := map[string]interface{}{ + "client_matcher": FlattenClientMatcher(val.GetClientMatcher()), + "any_url": isEmpty(val.GetAnyUrl()), + "api_endpoint": FlattenApiEndPoint(val.GetApiEndpoint()), + "api_groups": FlattenApiGroups(val.GetApiGroups()), + "base_path": val.GetBasePath(), + "any_domain": isEmpty(val.GetAnyDomain()), + "specific_domain": val.GetSpecificDomain(), + "request_matcher": FlattenRequestMatcher(val.GetRequestMatcher()), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenApiRateLimit(x *ves_io_schema_views_common_waf.APIRateLimit) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "api_endpoint_rules": FlattenARLApiEndpointRules(x.GetApiEndpointRules()), + "bypass_rate_limiting_rules": FlattenBypassRateLimitingRules(x.GetBypassRateLimitingRules()), + "custom_ip_allowed_list": FlattenCustomIpAllowedList(x.GetCustomIpAllowedList()), + "ip_allowed_list": FlattenIpAllowedList(x.GetIpAllowedList()), + "no_ip_allowed_list": isEmpty(x.GetNoIpAllowedList()), + "server_url_rules": FlattenServerURLRules(x.GetServerUrlRules()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenIpAllowedList(x *ves_io_schema_views.PrefixStringListType) []interface{} { + ialValue := make([]interface{}, 0) + if x != nil { + ialVal := map[string]interface{}{ + "ipv6_prefixes": x.GetIpv6Prefixes(), + "prefixes": x.GetPrefixes(), + } + ialValue = append(ialValue, ialVal) + } + return ialValue +} + +func FlattenCustomIpAllowedList(x *ves_io_schema_views_common_waf.CustomIpAllowedList) []interface{} { + cialValue := make([]interface{}, 0) + if x != nil { + cialVal := map[string]interface{}{ + "rate_limiter_allowed_prefixes": FlattenCertificates(x.GetRateLimiterAllowedPrefixes()), + } + cialValue = append(cialValue, cialVal) + } + return cialValue +} + +func FlattenBypassRateLimitingRules(x *ves_io_schema_views_common_waf.BypassRateLimitingRules) []interface{} { + brlrValue := make([]interface{}, 0) + if x != nil { + brlrVal := map[string]interface{}{ + "bypass_rate_limiting_rules": FlattenBRLR(x.GetBypassRateLimitingRules()), + } + brlrValue = append(brlrValue, brlrVal) + } + return brlrValue +} + +func FlattenRateLimit(x *ves_io_schema_views_common_waf.RateLimitConfigType) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mapValue := map[string]interface{}{ + "custom_ip_allowed_list": FlattenCustomIpAllowedList(x.GetCustomIpAllowedList()), + "ip_allowed_list": FlattenIpAllowedList(x.GetIpAllowedList()), + "no_ip_allowed_list": isEmpty(x.GetNoIpAllowedList()), + "no_policies": isEmpty(x.GetNoPolicies()), + "policies": FlattenPolicies(x.GetPolicies()), + "rate_limiter": FlattenRateLimiter(x.GetRateLimiter()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenRateLimiter(x *ves_io_schema_rate_limiter.RateLimitValue) []interface{} { + rlValue := make([]interface{}, 0) + if x != nil { + rlVal := map[string]interface{}{ + "burst_multiplier": x.GetBurstMultiplier(), + "total_number": x.GetTotalNumber(), + "unit": x.GetUnit().String(), + } + rlValue = append(rlValue, rlVal) + } + return rlValue +} + +func FlattenPolicies(x *ves_io_schema_rate_limiter_policy.PolicyList) []interface{} { + pValue := make([]interface{}, 0) + if x.GetPolicies() != nil { + pVal := map[string]interface{}{ + "policies": FlattenCertificates(x.GetPolicies()), + } + pValue = append(pValue, pVal) + } + return pValue +} + +func FlattenTA(x []*ves_io_schema_route.TagAttribute) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + rs := map[string]interface{}{ + "javascript_tag": v.GetJavascriptTag().String(), + "tag_value": v.GetTagValue(), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenJTags(x []*ves_io_schema_route.JavaScriptTag) []interface{} { + rslt := make([]interface{}, 0) + for _, v := range x { + rs := map[string]interface{}{ + "javascript_url": v.GetJavascriptUrl(), + "tag_attributes": FlattenTA(v.GetTagAttributes()), + } + rslt = append(rslt, rs) + } + return rslt +} + +func FlattenRoutes(x []*ves_io_schema_views_http_loadbalancer.RouteType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "custom_route_object": FlattenCustomRouteObject(val.GetCustomRouteObject()), + "direct_response_route": FlattenDirectResponseRoute(val.GetDirectResponseRoute()), + "redirect_route": FlattenRedirectRoute(val.GetRedirectRoute()), + "simple_route": FlattenSimpleRoute(val.GetSimpleRoute()), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenSimpleRoute(x *ves_io_schema_views_http_loadbalancer.RouteTypeSimple) []interface{} { + simpleRouteValue := make([]interface{}, 0) + if x != nil { + simpleRouteVal := map[string]interface{}{ + "advanced_options": FlattenSRAdvancedOptions(x.GetAdvancedOptions()), + "headers": FlattenHTTPHeaders(x.GetHeaders()), + "auto_host_rewrite": isEmpty(x.GetAutoHostRewrite()), + "disable_host_rewrite": isEmpty(x.GetDisableHostRewrite()), + "host_rewrite": x.GetHostRewrite(), + "http_method": x.GetHttpMethod().String(), + "incoming_port": FlattenIncomingPort(x.GetIncomingPort()), + "origin_pools": FlattenDefaultRoutePools(x.GetOriginPools()), + "path": FlattenPath(x.GetPath()), + } + simpleRouteValue = append(simpleRouteValue, simpleRouteVal) + } + return simpleRouteValue +} + +func FlattenSRAdvancedOptions(x *ves_io_schema_views_http_loadbalancer.RouteSimpleAdvancedOptions) []interface{} { + adOptionValue := make([]interface{}, 0) + if x != nil { + adOptionVal := map[string]interface{}{ + "bot_defense_javascript_injection": FlattenBotDefenseJavascriptInjection(x.GetBotDefenseJavascriptInjection()), + "inherited_bot_defense_javascript_injection": x.GetInheritedBotDefenseJavascriptInjection() != nil, + "buffer_policy": FlattenBufferPolicy(x.GetBufferPolicy()), + "common_buffering": isEmpty(x.GetCommonBuffering()), + "do_not_retract_cluster": isEmpty(x.GetDoNotRetractCluster()), + "retract_cluster": isEmpty(x.GetRetractCluster()), + "cors_policy": FlattenCorsPolicy(x.GetCorsPolicy()), + "csrf_policy": FlattenCsrfPolicy(x.GetCsrfPolicy()), + "disable_location_add": x.GetDisableLocationAdd(), + "endpoint_subsets": FlattenEndpointSubsets(x.GetEndpointSubsets()), + "common_hash_policy": x.GetCommonHashPolicy() != nil, + "specific_hash_policy": FlattenSpecificHashPolicy(x.GetSpecificHashPolicy()), + "disable_mirroring": isEmpty(x.GetDisableMirroring()), + "mirror_policy": FlattenMirrorPolicy(x.GetMirrorPolicy()), + "priority": x.GetPriority().String(), + "request_headers_to_add": FlattenRequestHeadersToAdd(x.GetRequestHeadersToAdd()), + "request_headers_to_remove": x.GetRequestHeadersToRemove(), + "response_headers_to_add": FlattenRequestHeadersToAdd(x.GetResponseHeadersToAdd()), + "response_headers_to_remove": x.GetResponseHeadersToRemove(), + "default_retry_policy": isEmpty(x.GetDefaultRetryPolicy()), + "no_retry_policy": isEmpty(x.GetNoRetryPolicy()), + "retry_policy": FlattenRetryPolicy(x.GetRetryPolicy()), + "disable_prefix_rewrite": isEmpty(x.GetDisablePrefixRewrite()), + "prefix_rewrite": x.GetPrefixRewrite(), + "regex_rewrite": FlattenRegexRewrite(x.GetRegexRewrite()), + "disable_spdy": isEmpty(x.GetDisableSpdy()), + "enable_spdy": isEmpty(x.GetEnableSpdy()), + "timeout": x.GetTimeout(), + "app_firewall": FlattenAppFirewall(x.GetAppFirewall()), + "disable_waf": isEmpty(x.GetDisableWaf()), + "inherited_waf": isEmpty(x.GetInheritedWaf()), + "disable_web_socket_config": isEmpty(x.GetDisableWebSocketConfig()), + "web_socket_config": FlattenWebSocketConfig(x.GetWebSocketConfig()), + } + adOptionValue = append(adOptionValue, adOptionVal) + } + return adOptionValue +} + +func FlattenWebSocketConfig(x *ves_io_schema_route.WebsocketConfigType) []interface{} { + wscValue := make([]interface{}, 0) + if x != nil { + wscVal := map[string]interface{}{ + "use_websocket": x.GetUseWebsocket(), + } + wscValue = append(wscValue, wscVal) + } + return wscValue +} + +func FlattenAppFirewall(x *ves_io_schema_views.ObjectRefType) []interface{} { + appFirewallValue := make([]interface{}, 0) + if x != nil { + appFirewallVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + appFirewallValue = append(appFirewallValue, appFirewallVal) + } + return appFirewallValue +} + +func FlattenRegexRewrite(x *ves_io_schema.RegexMatchRewrite) []interface{} { + rrValue := make([]interface{}, 0) + if x != nil { + rrVal := map[string]interface{}{ + "pattern": x.GetPattern(), + "substitution": x.GetSubstitution(), + } + rrValue = append(rrValue, rrVal) + } + return rrValue +} + +func FlattenRetryPolicy(x *ves_io_schema.RetryPolicyType) []interface{} { + retryPolicyValue := make([]interface{}, 0) + if x != nil { + retryPolicyVal := map[string]interface{}{ + "back_off": FlattenBackOff(x.GetBackOff()), + "num_retries": x.GetNumRetries(), + "per_try_timeout": x.GetPerTryTimeout(), + "retriable_status_codes": x.GetRetriableStatusCodes(), + "retry_condition": x.GetRetryCondition(), + "retry_on": x.GetRetryOn(), + } + retryPolicyValue = append(retryPolicyValue, retryPolicyVal) + } + return retryPolicyValue +} + +func FlattenBackOff(x *ves_io_schema.RetryBackOff) []interface{} { + backOffValue := make([]interface{}, 0) + if x != nil { + backOffVal := map[string]interface{}{ + "base_interval": x.GetBaseInterval(), + "max_interval": x.GetMaxInterval(), + } + backOffValue = append(backOffValue, backOffVal) + } + return backOffValue +} + +func FlattenOriginPool(x *ves_io_schema_views.ObjectRefType) []interface{} { + originPoolValue := make([]interface{}, 0) + if x != nil { + originPoolVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + originPoolValue = append(originPoolValue, originPoolVal) + } + return originPoolValue +} + +func FlattenPercent(x *ves_io_schema.FractionalPercent) []interface{} { + percentValue := make([]interface{}, 0) + if x != nil { + percentVal := map[string]interface{}{ + "denominator": x.GetDenominator().String(), + "numerator": x.GetNumerator(), + } + percentValue = append(percentValue, percentVal) + } + return percentValue +} + +func FlattenMirrorPolicy(x *ves_io_schema_views_http_loadbalancer.MirrorPolicyType) []interface{} { + mirrorPolicyValue := make([]interface{}, 0) + if x != nil { + mirrorPolicyVal := map[string]interface{}{ + "origin_pool": FlattenOriginPool(x.GetOriginPool()), + "percent": FlattenPercent(x.GetPercent()), + } + mirrorPolicyValue = append(mirrorPolicyValue, mirrorPolicyVal) + } + return mirrorPolicyValue +} + +func FlattenSpecificHashPolicy(x *ves_io_schema_views_http_loadbalancer.HashPolicyListType) []interface{} { + shpValue := make([]interface{}, 0) + if x != nil { + shpVal := map[string]interface{}{ + "hash_policy": FlattenHashPolicy(x.GetHashPolicy()), + } + shpValue = append(shpValue, shpVal) + } + return shpValue +} + +func FlattenBotDefenseJavascriptInjection(x *ves_io_schema_route.BotDefenseJavascriptInjectionType) []interface{} { + bdjiValue := make([]interface{}, 0) + if x != nil { + bdjiVal := map[string]interface{}{ + "javascript_location": x.GetJavascriptLocation().String(), + "javascript_tags": FlattenJTags(x.GetJavascriptTags()), + } + bdjiValue = append(bdjiValue, bdjiVal) + } + return bdjiValue +} + +func FlattenRedirectRoute(x *ves_io_schema_views_http_loadbalancer.RouteTypeRedirect) []interface{} { + redirectValue := make([]interface{}, 0) + if x != nil { + redirectVal := map[string]interface{}{ + "headers": FlattenHTTPHeaders(x.GetHeaders()), + "http_method": x.GetHttpMethod().String(), + "incoming_port": FlattenIncomingPort(x.GetIncomingPort()), + "path": FlattenPath(x.GetPath()), + "route_redirect": FlattenRouteRedirect(x.GetRouteRedirect()), + } + redirectValue = append(redirectValue, redirectVal) + } + return redirectValue +} + +func FlattenRouteRedirect(x *ves_io_schema_route.RouteRedirect) []interface{} { + routeRValue := make([]interface{}, 0) + if x != nil { + routeRVal := map[string]interface{}{ + "host_redirect": x.GetHostRedirect(), + "port_redirect": x.GetPortRedirect(), + "proto_redirect": x.GetProtoRedirect(), + "all_params": x.GetAllParams(), + "remove_all_params": isEmpty(x.GetRemoveAllParams()), + "replace_params": x.GetReplaceParams(), + "retain_all_params": isEmpty(x.GetRetainAllParams()), + "strip_query_params": FlattenStripQueryParams(x.GetStripQueryParams()), + "path_redirect": x.GetPathRedirect(), + "prefix_rewrite": x.GetPrefixRewrite(), + "response_code": x.GetResponseCode(), + } + routeRValue = append(routeRValue, routeRVal) + } + return routeRValue +} + +func FlattenStripQueryParams(x *ves_io_schema_route.RouteQueryParams) []interface{} { + sqpValue := make([]interface{}, 0) + if x != nil { + sqpVal := map[string]interface{}{ + "query_params": x.GetQueryParams(), + } + sqpValue = append(sqpValue, sqpVal) + } + return sqpValue +} + +func FlattenDirectResponseRoute(x *ves_io_schema_views_http_loadbalancer.RouteTypeDirectResponse) []interface{} { + drrValue := make([]interface{}, 0) + if x != nil { + drrVal := map[string]interface{}{ + "headers": FlattenHTTPHeaders(x.GetHeaders()), + "http_method": x.GetHttpMethod().String(), + "incoming_port": FlattenIncomingPort(x.GetIncomingPort()), + "path": FlattenPath(x.GetPath()), + "route_direct_response": FlattenRouteDirectResponse(x.GetRouteDirectResponse()), + } + drrValue = append(drrValue, drrVal) + } + return drrValue +} + +func FlattenRouteDirectResponse(x *ves_io_schema_route.RouteDirectResponse) []interface{} { + rdrValue := make([]interface{}, 0) + if x != nil { + rdrVal := map[string]interface{}{ + "response_body": x.GetResponseBody(), + "response_code": x.GetResponseCode(), + } + rdrValue = append(rdrValue, rdrVal) + } + return rdrValue +} + +func FlattenIncomingPort(x *ves_io_schema.PortMatcherType) []interface{} { + ipValue := make([]interface{}, 0) + if x != nil { + ipVal := map[string]interface{}{ + "no_port_match": isEmpty(x.GetNoPortMatch()), + "port": x.GetPort(), + "port_ranges": x.GetPortRanges(), + } + ipValue = append(ipValue, ipVal) + } + return ipValue +} + +func FlattenCustomRouteObject(x *ves_io_schema_views_http_loadbalancer.RouteTypeCustomRoute) []interface{} { + croValue := make([]interface{}, 0) + if x != nil { + croVal := map[string]interface{}{ + "route_ref": FlattenRouteRef(x.GetRouteRef()), + } + croValue = append(croValue, croVal) + } + return croValue +} + +func FlattenRouteRef(x *ves_io_schema_views.ObjectRefType) []interface{} { + rrValue := make([]interface{}, 0) + if x != nil { + rrVal := map[string]interface{}{ + "name": x.GetName(), + "namespace": x.GetNamespace(), + "tenant": x.GetTenant(), + } + rrValue = append(rrValue, rrVal) + } + return rrValue +} + +func FlattenActiveServicePolicies(x *ves_io_schema_views_common_waf.ServicePolicyList) []interface{} { + val := make([]interface{}, 0) + + if x != nil { + test := map[string]interface{}{ + "policies": FlattenCertificates(x.GetPolicies()), + } + val = append(val, test) + } + return val +} + +func FlattenSlowDDOSMitigation(x *ves_io_schema_virtual_host.SlowDDoSMitigation) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "request_headers_timeout": x.GetRequestHeadersTimeout(), + "disable_request_timeout": isEmpty(x.GetDisableRequestTimeout()), + "request_timeout": x.GetRequestTimeout(), + } + val = append(val, test) + } + return val +} + +func FlattenEnableTrustClientIpHeaders(x *ves_io_schema_virtual_host.ClientIPHeaders) []interface{} { + val := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "client_ip_headers": ConvertSliceStringToInterface(x.GetClientIpHeaders()), + } + val = append(val, test) + } + return val +} + +func FlattenExcludeAttackTypeContexts(x []*ves_io_schema_policy.AppFirewallAttackTypeContext) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "exclude_attack_type": val.GetExcludeAttackType().String(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenExcludeBotNameContexts(x []*ves_io_schema_policy.BotNameContext) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "bot_name": val.GetBotName(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenExcludeSignatureContexts(x []*ves_io_schema_policy.AppFirewallSignatureContext) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "context": val.GetContext().String(), + "context_name": val.GetContextName(), + "signature_id": val.GetSignatureId(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenExcludeViolationContexts(x []*ves_io_schema_policy.AppFirewallViolationContext) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "context": val.GetContext().String(), + "context_name": val.GetContextName(), + "exclude_violation": val.GetExcludeViolation().String(), + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenWafExclusionRules(x []*ves_io_schema_policy.SimpleWafExclusionRule) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + mapValue := map[string]interface{}{ + "any_domain": val.GetAnyDomain() != nil, + "exact_value": val.GetExactValue(), + "suffix_value": val.GetSuffixValue(), + "expiration_timestamp": FlattenExpirationTimestamp(val.GetExpirationTimestamp()), + "metadata": FlattenMetadata(val.GetMetadata()), + "methods": FlattenMethods(val.GetMethods()), + "any_path": val.GetAnyPath() != nil, + "path_prefix": val.GetPathPrefix(), + "path_regex": val.GetPathRegex(), + "app_firewall_detection_control": FlattenAppFirewallDetectionControl(val.GetAppFirewallDetectionControl()), + "waf_skip_processing": val.GetWafSkipProcessing() != nil, + } + rslt = append(rslt, mapValue) + } + return rslt +} + +func FlattenAppFirewallDetectionControl(x *ves_io_schema_policy.AppFirewallDetectionControl) []interface{} { + afdcValue := make([]interface{}, 0) + if x != nil { + afdcVal := map[string]interface{}{ + "exclude_attack_type_contexts": FlattenExcludeAttackTypeContexts(x.GetExcludeAttackTypeContexts()), + "exclude_bot_name_contexts": FlattenExcludeBotNameContexts(x.GetExcludeBotNameContexts()), + "exclude_signature_contexts": FlattenExcludeSignatureContexts(x.GetExcludeSignatureContexts()), + "exclude_violation_contexts": FlattenExcludeViolationContexts(x.GetExcludeViolationContexts()), + } + afdcValue = append(afdcValue, afdcVal) + } + return afdcValue +} + +func isEmpty(x *ves_io_schema.Empty) bool { + return x != nil +} + +func DriftDetectionSpec(d *schema.ResourceData, resp vesapi.GetObjectResponse) { + spec := resp.GetObjSpec().(*ves_io_schema_views_http_loadbalancer.SpecType) + + d.Set("add_location", spec.GcSpec.GetAddLocation()) + + d.Set("advertise_custom", FlattenAdvertiseCustom(spec.GcSpec.GetAdvertiseCustom())) + + d.Set("advertise_on_public", FlattenAdvertiseOnPublic(spec.GcSpec.GetAdvertiseOnPublic())) + + d.Set("advertise_on_public_default_vip", isEmpty(spec.GcSpec.GetAdvertiseOnPublicDefaultVip())) + + d.Set("do_not_advertise", isEmpty(spec.GcSpec.GetDoNotAdvertise())) + + d.Set("api_definition", FlattenApiDefinition(spec.GcSpec.GetApiDefinition())) + + d.Set("api_definitions", FlattenApiDefinitions(spec.GcSpec.GetApiDefinitions())) + + d.Set("api_specification", FlattenApiSpecification(spec.GcSpec.GetApiSpecification())) + + d.Set("disable_api_definition", isEmpty(spec.GcSpec.GetDisableApiDefinition())) + + d.Set("disable_api_discovery", isEmpty(spec.GcSpec.GetDisableApiDiscovery())) + + d.Set("enable_api_discovery", FlattenEnableApiDiscovery(spec.GcSpec.GetEnableApiDiscovery())) + + d.Set("api_protection_rules", FlattenApiProtectionRules(spec.GcSpec.GetApiProtectionRules())) + + d.Set("blocked_clients", FlattenBlockedClients(spec.GcSpec.GetBlockedClients())) + + d.Set("bot_defense", FlattenBotDefense(spec.GcSpec.GetBotDefense())) + + d.Set("disable_bot_defense", isEmpty(spec.GcSpec.GetDisableBotDefense())) + + d.Set("captcha_challenge", FlattenCaptchaChallenge(spec.GcSpec.GetCaptchaChallenge())) + + d.Set("enable_challenge", FlattenEnableChallenge(spec.GcSpec.GetEnableChallenge())) + + d.Set("js_challenge", FlattenJSChallenge(spec.GcSpec.GetJsChallenge())) + + d.Set("no_challenge", isEmpty(spec.GcSpec.GetNoChallenge())) + + d.Set("policy_based_challenge", FlattenPolicyBasedChallenge(spec.GcSpec.GetPolicyBasedChallenge())) + + d.Set("client_side_defense", FlattenClientSideDefense(spec.GcSpec.GetClientSideDefense())) + + d.Set("disable_client_side_defense", spec.GcSpec.GetDisableClientSideDefense() != nil) + + d.Set("cors_policy", FlattenCorsPolicy(spec.GcSpec.GetCorsPolicy())) + + d.Set("csrf_policy", FlattenCsrfPolicy(spec.GcSpec.GetCsrfPolicy())) + + d.Set("data_guard_rules", FlattenDataGuardRules(spec.GcSpec.GetDataGuardRules())) + + d.Set("ddos_mitigation_rules", FlattenDDOSMitigationRules(spec.GcSpec.GetDdosMitigationRules())) + + d.Set("default_route_pools", FlattenDefaultRoutePools(spec.GcSpec.GetDefaultRoutePools())) + + d.Set("domains", spec.GcSpec.GetDomains()) + + d.Set("graphql_rules", FlattenGraphRules(spec.GcSpec.GetGraphqlRules())) + + d.Set("cookie_stickiness", FlattenCookieStickiness(spec.GcSpec.GetCookieStickiness())) + + d.Set("least_active", isEmpty(spec.GcSpec.GetLeastActive())) + + d.Set("random", isEmpty(spec.GcSpec.GetRandom())) + + d.Set("ring_hash", FlattenRingHash(spec.GcSpec.GetRingHash())) + + d.Set("round_robin", isEmpty(spec.GcSpec.GetRoundRobin())) + + d.Set("source_ip_stickiness", isEmpty(spec.GcSpec.GetSourceIpStickiness())) + + d.Set("disable_ip_reputation", isEmpty(spec.GcSpec.GetDisableIpReputation())) + + d.Set("enable_ip_reputation", FlattenEnableIpReputation(spec.GcSpec.GetEnableIpReputation())) + + d.Set("jwt_validation", FlattenJwtValidation(spec.GcSpec.GetJwtValidation())) + + d.Set("l7_ddos_action_block", isEmpty(spec.GcSpec.GetL7DdosActionBlock())) + + d.Set("l7_ddos_action_default", isEmpty(spec.GcSpec.GetL7DdosActionDefault())) + + d.Set("l7_ddos_action_js_challenge", FlattenL7DdosActionJsChallenge(spec.GcSpec.GetL7DdosActionJsChallenge())) + + d.Set("l7_ddos_action_none", isEmpty(spec.GcSpec.GetL7DdosActionNone())) + + d.Set("http", FlattenHttp(spec.GcSpec.GetHttp())) + + d.Set("https", FlattenHttps(spec.GcSpec.GetHttps())) + + d.Set("https_auto_cert", FlattenHttpsAutoCert(spec.GcSpec.GetHttpsAutoCert())) + + d.Set("disable_malicious_user_detection", isEmpty(spec.GcSpec.GetDisableMaliciousUserDetection())) + + d.Set("enable_malicious_user_detection", isEmpty(spec.GcSpec.GetEnableMaliciousUserDetection())) + + d.Set("malicious_user_mitigation", FlattenMaliciousUserMitigation(spec.GcSpec.GetMaliciousUserMitigation())) + + d.Set("multi_lb_app", isEmpty(spec.GcSpec.GetMultiLbApp())) + + d.Set("single_lb_app", FlattenSingleLbApp(spec.GcSpec.GetSingleLbApp())) + + d.Set("more_option", FlattenMoreOption(spec.GcSpec.GetMoreOption())) + + d.Set("default_pool", FlattenDefaultPool(spec.GcSpec.GetDefaultPool())) + + d.Set("default_pool_list", FlattenDefaultPoolList(spec.GcSpec.GetDefaultPoolList())) + + d.Set("origin_server_subset_rule_list", FlattenOSSRL(spec.GcSpec.GetOriginServerSubsetRuleList())) + + d.Set("protected_cookies", FlattenCookiesToModify(spec.GcSpec.GetProtectedCookies())) + + d.Set("api_rate_limit", FlattenApiRateLimit(spec.GcSpec.GetApiRateLimit())) + + d.Set("disable_rate_limit", isEmpty(spec.GcSpec.GetDisableRateLimit())) + + d.Set("rate_limit", FlattenRateLimit(spec.GcSpec.GetRateLimit())) + + d.Set("routes", FlattenRoutes(spec.GcSpec.GetRoutes())) + + d.Set("active_service_policies", FlattenActiveServicePolicies(spec.GcSpec.GetActiveServicePolicies())) + + d.Set("no_service_policies", isEmpty(spec.GcSpec.GetNoServicePolicies())) + + d.Set("service_policies_from_namespace", isEmpty(spec.GcSpec.GetServicePoliciesFromNamespace())) + + d.Set("slow_ddos_mitigation", FlattenSlowDDOSMitigation(spec.GcSpec.GetSlowDdosMitigation())) + + d.Set("system_default_timeouts", isEmpty(spec.GcSpec.GetSystemDefaultTimeouts())) + + d.Set("disable_trust_client_ip_headers", isEmpty(spec.GcSpec.GetDisableTrustClientIpHeaders())) + + d.Set("enable_trust_client_ip_headers", FlattenEnableTrustClientIpHeaders(spec.GcSpec.GetEnableTrustClientIpHeaders())) + + d.Set("trusted_clients", FlattenBlockedClients(spec.GcSpec.GetTrustedClients())) + + d.Set("user_id_client_ip", isEmpty(spec.GcSpec.GetUserIdClientIp())) + + d.Set("user_identification", FlattenApiDefinition(spec.GcSpec.GetUserIdentification())) + + d.Set("app_firewall", FlattenApiDefinition(spec.GcSpec.GetAppFirewall())) + + d.Set("disable_waf", isEmpty(spec.GcSpec.GetDisableWaf())) + + d.Set("waf_exclusion_rules", FlattenWafExclusionRules(spec.GcSpec.GetWafExclusionRules())) +} diff --git a/volterra/drift_detection/drift_detection_resource_auto_origin_pool.go b/volterra/drift_detection/drift_detection_resource_auto_origin_pool.go new file mode 100644 index 000000000..141c2213f --- /dev/null +++ b/volterra/drift_detection/drift_detection_resource_auto_origin_pool.go @@ -0,0 +1,78 @@ +package driftdetection + +import ( + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + ves_io_schema_cluster "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/cluster" + ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" + "gopkg.volterra.us/stdlib/client/vesapi" +) + +func FlattenHTTP1Config(x *ves_io_schema_cluster.Http1ProtocolOptions) []interface{} { + ruiValue := make([]interface{}, 0) + if x != nil { + ruiVal := map[string]interface{}{ + "header_transformation": FlattenHeaderTransformationType(x.GetHeaderTransformation()), + } + ruiValue = append(ruiValue, ruiVal) + } + return ruiValue +} + +func FlattenAdvancedOptions(x *ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + mpValue := map[string]interface{}{ + "circuit_breaker": FlattenCircuitBreaker(x.GetCircuitBreaker()), + "default_circuit_breaker": isEmpty(x.GetDefaultCircuitBreaker()), + "disable_circuit_breaker": isEmpty(x.GetDisableCircuitBreaker()), + "connection_timeout": x.GetConnectionTimeout(), + "header_transformation_type": FlattenHeaderTransformationType(x.GetHeaderTransformationType()), + "http_idle_timeout": x.GetHttpIdleTimeout(), + "auto_http_config": isEmpty(x.GetAutoHttpConfig()), + "http1_config": FlattenHTTP1Config(x.GetHttp1Config()), + "http2_options": FlattenHttp2Options(x.GetHttp2Options()), + "disable_lb_source_ip_persistance": isEmpty(x.GetDisableLbSourceIpPersistance()), + "enable_lb_source_ip_persistance": isEmpty(x.GetEnableLbSourceIpPersistance()), + "disable_outlier_detection": isEmpty(x.GetDisableOutlierDetection()), + "outlier_detection": FlattenOutlierDetection(x.GetOutlierDetection()), + "no_panic_threshold": isEmpty(x.GetNoPanicThreshold()), + "panic_threshold": x.GetPanicThreshold(), + "disable_proxy_protocol": isEmpty(x.GetDisableProxyProtocol()), + "proxy_protocol_v1": isEmpty(x.GetProxyProtocolV1()), + "proxy_protocol_v2": isEmpty(x.GetProxyProtocolV2()), + "disable_subsets": isEmpty(x.GetDisableSubsets()), + "enable_subsets": FlattenEnableSubsets(x.GetEnableSubsets()), + } + rslt = append(rslt, mpValue) + } + return rslt +} + +func DriftDetectionSpec_OriginPool(d *schema.ResourceData, resp vesapi.GetObjectResponse) { + spec := resp.GetObjSpec().(*ves_io_schema_views_origin_pool.SpecType) + + d.Set("advanced_options", FlattenAdvancedOptions(spec.GcSpec.GetAdvancedOptions())) + + d.Set("endpoint_selection", spec.GcSpec.GetEndpointSelection().String()) + + d.Set("health_check_port", spec.GcSpec.GetHealthCheckPort()) + + d.Set("same_as_endpoint_port", isEmpty(spec.GcSpec.GetSameAsEndpointPort())) + + d.Set("healthcheck", FlattenCertificates(spec.GcSpec.GetHealthcheck())) + + d.Set("loadbalancer_algorithm", spec.GcSpec.GetLoadbalancerAlgorithm().String()) + + d.Set("origin_servers", FlattenOriginServers(spec.GcSpec.OriginServers)) + + d.Set("automatic_port", isEmpty(spec.GcSpec.GetAutomaticPort())) + + d.Set("lb_port", isEmpty(spec.GcSpec.GetLbPort())) + + d.Set("Port", spec.GcSpec.GetPort()) + + d.Set("no_tls", isEmpty(spec.GcSpec.GetNoTls())) + + d.Set("use_tls", FlattenUseTls(spec.GcSpec.GetUseTls())) + +} diff --git a/volterra/drift_detection/drift_detection_resource_auto_volterra_ip_prefix_set.go b/volterra/drift_detection/drift_detection_resource_auto_volterra_ip_prefix_set.go new file mode 100644 index 000000000..5783a74d4 --- /dev/null +++ b/volterra/drift_detection/drift_detection_resource_auto_volterra_ip_prefix_set.go @@ -0,0 +1,13 @@ +package driftdetection + +import ( + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + ves_io_schema_ip_prefix_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ip_prefix_set" + "gopkg.volterra.us/stdlib/client/vesapi" +) + +func DriftDetectionSpecIpPrefixSet(d *schema.ResourceData, resp vesapi.GetObjectResponse) { + spec := resp.GetObjSpec().(*ves_io_schema_ip_prefix_set.SpecType) + d.Set("ipv6_prefix", spec.GcSpec.GetIpv6Prefix()) + d.Set("prefix", spec.GcSpec.GetPrefix()) +} diff --git a/volterra/drift_detection/drift_detection_resource_auto_volterra_tcp_loadbalancer.go b/volterra/drift_detection/drift_detection_resource_auto_volterra_tcp_loadbalancer.go new file mode 100644 index 000000000..4aa0b019c --- /dev/null +++ b/volterra/drift_detection/drift_detection_resource_auto_volterra_tcp_loadbalancer.go @@ -0,0 +1,90 @@ +package driftdetection + +import ( + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_views_tcp_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/tcp_loadbalancer" + "gopkg.volterra.us/stdlib/client/vesapi" +) + +func FlattenTlsTcp(x *ves_io_schema_views_tcp_loadbalancer.ProxyTypeTLSTCP) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "tls_cert_params": FlattenTlsCertParams(x.GetTlsCertParams()), + "tls_parameters": FlattenTlsParameters(x.GetTlsParameters()), + } + rslt = append(rslt, test) + } + return rslt +} + +func FlattenTlsTcpAutoCert(x *ves_io_schema_views_tcp_loadbalancer.ProxyTypeTLSTCPAutoCerts) []interface{} { + rslt := make([]interface{}, 0) + if x != nil { + test := map[string]interface{}{ + "no_mtls": isEmpty(x.GetNoMtls()), + "use_mtls": FlattenUseMtls(x.GetUseMtls()), + "tls_config": FlattenTlsConfig(x.GetTlsConfig()), + } + rslt = append(rslt, test) + } + return rslt +} + +func FlattenOriginPoolsWeights(x []*ves_io_schema_views.OriginPoolWithWeight) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range x { + test := map[string]interface{}{ + "endpoint_subsets": FlattenEndpointSubsets(val.GetEndpointSubsets()), + "cluster": FlattenCluster(val.GetCluster()), + "pool": FlattenPool(val.GetPool()), + "priority": val.GetPriority(), + "weight": val.GetWeight(), + } + rslt = append(rslt, test) + } + return rslt +} + +func FlattenActiveServicePoliciesTcp(x *ves_io_schema_views_tcp_loadbalancer.ServicePolicyList) []interface{} { + val := make([]interface{}, 0) + + if x != nil { + test := map[string]interface{}{ + "policies": FlattenCertificates(x.GetPolicies()), + } + val = append(val, test) + } + return val +} + +func DriftDetectionTcpLoadbalancer(d *schema.ResourceData, resp vesapi.GetObjectResponse) { + spec := resp.GetObjSpec().(*ves_io_schema_views_tcp_loadbalancer.SpecType) + d.Set("advertise_custom", FlattenAdvertiseCustom(spec.GcSpec.GetAdvertiseCustom())) + d.Set("advertise_on_public", FlattenAdvertiseOnPublic(spec.GcSpec.GetAdvertiseOnPublic())) + d.Set("advertise_on_public_default_vip", isEmpty(spec.GcSpec.GetAdvertiseOnPublicDefaultVip())) + d.Set("do_npt_advertise", isEmpty(spec.GcSpec.GetDoNotAdvertise())) + d.Set("do_not_retract_cluster", isEmpty(spec.GcSpec.GetDoNotRetractCluster())) + d.Set("retract_cluster", isEmpty(spec.GcSpec.GetRetractCluster())) + d.Set("dns_volterra_managed", spec.GcSpec.GetDnsVolterraManaged()) + d.Set("domains", spec.GcSpec.GetDomains()) + d.Set("hash_policy_choice_least_active", isEmpty(spec.GcSpec.GetHashPolicyChoiceLeastActive())) + d.Set("hash_policy_choice_random", isEmpty(spec.GcSpec.GetHashPolicyChoiceRandom())) + d.Set("hash_policy_choice_round_robin", isEmpty(spec.GcSpec.GetHashPolicyChoiceRoundRobin())) + d.Set("hash_policy_choice_source_ip_stickiness", isEmpty(spec.GcSpec.GetHashPolicyChoiceSourceIpStickiness())) + d.Set("idle_timeout", spec.GcSpec.GetIdleTimeout()) + d.Set("tcp", isEmpty(spec.GcSpec.GetTcp())) + d.Set("tls_tcp", FlattenTlsTcp(spec.GcSpec.GetTlsTcp())) + d.Set("tls_tcp_auto_cert", FlattenTlsTcpAutoCert(spec.GcSpec.GetTlsTcpAutoCert())) + d.Set("origin_pools_weights", FlattenOriginPoolsWeights(spec.GcSpec.GetOriginPoolsWeights())) + d.Set("listen_port", spec.GcSpec.GetListenPort()) + d.Set("port_ranges", spec.GcSpec.GetPortRanges()) + d.Set("active_service_policies", FlattenActiveServicePoliciesTcp(spec.GcSpec.GetActiveServicePolicies())) + d.Set("no_service_policies", isEmpty(spec.GcSpec.GetNoServicePolicies())) + d.Set("service_policies_from_namespace", isEmpty(spec.GcSpec.GetServicePoliciesFromNamespace())) + d.Set("default_lb_with_sni", isEmpty(spec.GcSpec.GetDefaultLbWithSni())) + d.Set("no_sni", isEmpty(spec.GcSpec.GetNoSni())) + d.Set("sni", isEmpty(spec.GcSpec.GetSni())) + +} diff --git a/volterra/drift_detection/drift_detection_resource_volterra_service_policy.go b/volterra/drift_detection/drift_detection_resource_volterra_service_policy.go new file mode 100644 index 000000000..757547c2a --- /dev/null +++ b/volterra/drift_detection/drift_detection_resource_volterra_service_policy.go @@ -0,0 +1,453 @@ +package driftdetection + +import ( + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" + ves_io_schema_service_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy" + ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + "gopkg.volterra.us/stdlib/client/vesapi" +) + +func FlattenAsnSet(f []*ves_io_schema_views.ObjectRefType) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range f { + val := map[string]interface{}{ + "name": val.GetName(), + "namespace": val.GetNamespace(), + "tenant": val.GetTenant(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenPrefixList(f *ves_io_schema_views.PrefixStringListType) []interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "prefixes": f.GetPrefixes(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenTlsFingerPrintClasses(f []ves_io_schema_policy.KnownTlsFingerprintClass) []interface{} { + rslt := make([]interface{}, 0) + for _, val := range f { + rslt = append(rslt, val.String()) + } + return rslt +} + +func FlattenAllowList(f *ves_io_schema_service_policy.SourceList) []interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "asn_list": FlattenAsnList(f.GetAsnList()), + "asn_set": FlattenAsnSet(f.GetAsnSet()), + "country_list": FlattenCountryList(f.GetCountryList()), + "default_action_allow": isEmpty(f.GetDefaultActionAllow()), + "default_action_deny": isEmpty(f.GetDefaultActionDeny()), + "default_action_next_policy": isEmpty(f.GetDefaultActionNextPolicy()), + "ip_prefix_set": FlattenAsnSet(f.GetIpPrefixSet()), + "prefix_list": FlattenPrefixList(f.GetPrefixList()), + "tls_fingerprint_classes": FlattenTlsFingerPrintClasses(f.GetTlsFingerprintClasses()), + "tls_fingerprint_values": f.GetTlsFingerprintValues(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenPortMatcher(f *ves_io_schema_policy.PortMatcherType) []interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "ports": f.GetPorts(), + "invert_matcher": f.GetInvertMatcher(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenRulesServicePolicy(f []*ves_io_schema.ObjectRefType) interface{} { + rstl := make([]interface{}, 0) + for _, fval := range f { + val := map[string]interface{}{ + "kind": fval.GetKind(), + "name": fval.GetName(), + "namespace": fval.GetNamespace(), + "tenant": fval.GetTenant(), + } + rstl = append(rstl, val) + } + return rstl +} + +func FlattenLegacyRuleList(f *ves_io_schema_service_policy.LegacyRuleList) []interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "rules": FlattenRulesServicePolicy(f.GetRules()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenApiGroupMatcher(f *ves_io_schema_policy.StringMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "invert_matcher": f.GetInvertMatcher(), + "match": f.GetMatch(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenBodyMatcher(f *ves_io_schema_policy.MatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "exact_values": f.GetExactValues(), + "regex_values": f.GetRegexValues(), + "transformers": FlattenTransformers(f.GetTransformers()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenBotAction(f *ves_io_schema_policy.BotAction) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "bot_skip_processing": isEmpty(f.GetBotSkipProcessing()), + "none": isEmpty(f.GetNone()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenIpThreatCategoryListServicePolicy(f *ves_io_schema_service_policy_rule.IPThreatCategoryListType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "ip_threat_categories": FlattenIpThreatCategories(f.GetIpThreatCategories()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenClientRole(f *ves_io_schema_policy.RoleMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "match": f.GetMatch(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenContentRewriteAction(f *ves_io_schema_policy.ContentRewriteAction) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "element_selector": f.GetElementSelector(), + "insert_content": f.GetInsertContent(), + "position": f.GetPosition().String(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenDstAsnList(f *ves_io_schema_policy.AsnMatchList) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "as_numbers": FlattenAsNumbers(f.GetAsNumbers()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenDstAsnMatcher(f *ves_io_schema_policy.AsnMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "asn_sets": FlattenAsnSets(f.GetAsnSets()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenDstIpMatcher(f *ves_io_schema_policy.IpMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "invert_matcher": f.GetInvertMatcher(), + "prefix_sets": FlattenPrefixSets(f.GetPrefixSets()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenDstIpPrefixList(f *ves_io_schema_policy.PrefixMatchList) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "invert_match": f.GetInvertMatch(), + "ip_prefixes": FlattenIpPrefixes(f.GetIpPrefixes()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenL4Dests(f []*ves_io_schema.L4DestType) interface{} { + rslt := make([]interface{}, 0) + for _, val := range f { + t := map[string]interface{}{ + "port_ranges": val.GetPortRanges(), + "prefixes": val.GetPrefixes(), + } + rslt = append(rslt, t) + } + return rslt +} + +func FlattenL4DestMatcher(f *ves_io_schema_policy.L4DestMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "invert_matcher": f.GetInvertMatcher(), + "l4_dests": FlattenL4Dests(f.GetL4Dests()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenLabelMatcher(f *ves_io_schema.LabelMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "keys": f.GetKeys(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenPathServicePolicy(f *ves_io_schema_policy.PathMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "exact_values": f.GetExactValues(), + "prefix_values": f.GetPrefixValues(), + "regex_values": f.GetRegexValues(), + "suffix_values": f.GetSuffixValues(), + "transformers": FlattenTransformers(f.GetTransformers()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenServerSelector(f *ves_io_schema.LabelSelectorType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "expressions": f.GetExpressions(), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenShapeProtectedEndpointAction(f *ves_io_schema_policy.ShapeProtectedEndpointAction) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "app_traffic_type": f.GetAppTrafficType().String(), + "mitigation": FlattenMitigation(f.GetMitigation()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenUrlItems(f []*ves_io_schema_policy.URLItem) interface{} { + rslt := make([]interface{}, 0) + for _, val := range f { + t := map[string]interface{}{ + "domain_regex": val.GetDomainRegex(), + "domain_value": val.GetDomainValue(), + "path_prefix": val.GetPathPrefix(), + "path_regex": val.GetPathRegex(), + "path_value": val.GetPathValue(), + } + rslt = append(rslt, t) + } + return rslt +} + +func FlattenUrlMatcher(f *ves_io_schema_policy.URLMatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "invert_matcher": f.GetInvertMatcher(), + "url_items": FlattenUrlItems(f.GetUrlItems()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenVirtualHostMatcher(f *ves_io_schema_policy.MatcherType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "exact_values": f.GetExactValues(), + "regex_values": f.GetRegexValues(), + "transformers": FlattenTransformers(f.GetTransformers()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenWafAction(f *ves_io_schema_policy.WafAction) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "app_firewall_detection_control": FlattenAppFirewallDetectionControl(f.GetAppFirewallDetectionControl()), + "none": isEmpty(f.GetNone()), + "waf_in_monitoring_mode": isEmpty(f.GetWafInMonitoringMode()), + "waf_skip_processing": isEmpty(f.GetWafSkipProcessing()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenSpecServicePolicy(f *ves_io_schema_service_policy_rule.GlobalSpecType) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "action": f.GetAction().String(), + "api_group_matcher": FlattenApiGroupMatcher(f.GetApiGroupMatcher()), + "arg_matchers": FlattenArgMatchers(f.GetArgMatchers()), + "any_asn": f.GetAnyAsn() != nil, + "asn_list": FlattenAsnList(f.GetAsnList()), + "asn_matcher": FlattenAsnMatcher(f.GetAsnMatcher()), + "body_matcher": FlattenBodyMatcher(f.GetBodyMatcher()), + "bot_action": FlattenBotAction(f.GetBotAction()), + "challenge_action": f.GetChallengeAction().String(), + "any_client": f.GetAnyClient() != nil, + "client_name": f.GetClientName(), + "client_name_matcher": FlattenBodyMatcher(f.GetClientNameMatcher()), + "client_selector": FlattenClientSelector(f.GetClientSelector()), + "ip_threat_category_list": FlattenIpThreatCategoryListServicePolicy(f.GetIpThreatCategoryList()), + "client_role": FlattenClientRole(f.GetClientRole()), + "content_rewrite_action": FlattenContentRewriteAction(f.GetContentRewriteAction()), + "cookie_matchers": FlattenCookieMatchers(f.GetCookieMatchers()), + "domain_matcher": FlattenItem(f.GetDomainMatcher()), + "any_dst_asn": isEmpty(f.GetAnyDstAsn()), + "dst_asn_list": FlattenDstAsnList(f.GetDstAsnList()), + "dst_asn_matcher": FlattenDstAsnMatcher(f.GetDstAsnMatcher()), + "any_dst_ip": f.GetAnyDstIp() != nil, + "dst_ip_matcher": FlattenDstIpMatcher(f.GetDstIpMatcher()), + "dst_ip_prefix_list": FlattenDstIpPrefixList(f.GetDstIpPrefixList()), + "expiration_timestamp": FlattenExpirationTimestamp(f.GetExpirationTimestamp()), + "forwarding_class": FlattenAsnSets(f.GetForwardingClass()), + "goto_policy": FlattenAsnSets(f.GetGotoPolicy()), + "headers": FlattenHeaders(f.GetHeaders()), + "http_method": FlattenHttpMethod(f.GetHttpMethod()), + "any_ip": f.GetAnyIp() != nil, + "ip_matcher": FlattenIpMatcher(f.GetIpMatcher()), + "ip_prefix_list": FlattenIpPrefixList(f.GetIpPrefixList()), + "l4_dest_matcher": FlattenL4DestMatcher(f.GetL4DestMatcher()), + "label_matcher": FlattenLabelMatcher(f.GetLabelMatcher()), + "path": FlattenPathServicePolicy(f.GetPath()), + "port_matcher": FlattenPortMatcher(f.GetPortMatcher()), + "query_params": FlattenQueryParams(f.GetQueryParams()), + "rate_limiter": FlattenAsnSets(f.GetRateLimiter()), + "scheme": f.GetScheme(), + "server_selector": FlattenServerSelector(f.GetServerSelector()), + "shape_protected_endpoint_action": FlattenShapeProtectedEndpointAction(f.GetShapeProtectedEndpointAction()), + "tls_fingerprint_matcher": FlattenTlsFingerPrintMatcher(f.GetTlsFingerprintMatcher()), + "url_matcher": FlattenUrlMatcher(f.GetUrlMatcher()), + "virtual_host_matcher": FlattenVirtualHostMatcher(f.GetVirtualHostMatcher()), + "waf_action": FlattenWafAction(f.GetWafAction()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenRulesRuleList(f []*ves_io_schema_service_policy.Rule) interface{} { + rslt := make([]interface{}, 0) + for _, val := range f { + temp := map[string]interface{}{ + "metadata": FlattenMetadata(val.GetMetadata()), + "spec": FlattenSpecServicePolicy(val.GetSpec()), + } + rslt = append(rslt, temp) + } + return rslt +} + +func FlattenRuleListServicePolicy(f *ves_io_schema_service_policy.RuleList) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "rules": FlattenRulesRuleList(f.GetRules()), + } + rslt = append(rslt, val) + } + return rslt +} + +func FlattenServerNameMatcher(f *ves_io_schema_policy.MatcherTypeBasic) interface{} { + rslt := make([]interface{}, 0) + if f != nil { + val := map[string]interface{}{ + "exact_values": f.GetExactValues(), + "regex_values": f.GetRegexValues(), + } + rslt = append(rslt, val) + } + return rslt +} + +func DriftDetectionSpecServicePolicy(d *schema.ResourceData, resp vesapi.GetObjectResponse) { + spec := resp.GetObjSpec().(*ves_io_schema_service_policy.SpecType) + + d.Set("algo", spec.GcSpec.GetAlgo().String()) + d.Set("port_matcher", FlattenPortMatcher(spec.GcSpec.GetPortMatcher())) + d.Set("allow_all_requests", isEmpty(spec.GcSpec.GetAllowAllRequests())) + d.Set("allow_list", FlattenAllowList(spec.GcSpec.GetAllowList())) + d.Set("deny_all_requests", isEmpty(spec.GcSpec.GetDenyAllRequests())) + d.Set("deny_list", FlattenAllowList(spec.GcSpec.GetDenyList())) + d.Set("internally_generated", isEmpty(spec.GcSpec.GetInternallyGenerated())) + d.Set("legacy_rule_list", FlattenLegacyRuleList(spec.GcSpec.GetLegacyRuleList())) + d.Set("rule_list", FlattenRuleListServicePolicy(spec.GcSpec.GetRuleList())) + d.Set("any_server", isEmpty(spec.GcSpec.GetAnyServer())) + d.Set("server_name", spec.GcSpec.GetServerName()) + d.Set("server_name_matcher", FlattenServerNameMatcher(spec.GcSpec.GetServerNameMatcher())) + d.Set("server_selector", FlattenServerSelector(spec.GetGcSpec().GetServerSelector())) +} diff --git a/volterra/provider.go b/volterra/provider.go index d20c369b2..21bce78c4 100644 --- a/volterra/provider.go +++ b/volterra/provider.go @@ -45,6 +45,7 @@ const ( setCloudSiteInfo = "volterra_set_cloud_site_info" setKnownLabelKey = "volterra_known_label_key" setKnownLabel = "volterra_known_label" + setDnsZoneRRSET = "volterra_dns_zone_record" ) // Provider returns a terraform.ResourceProvider. @@ -228,5 +229,6 @@ func getResourceMap() map[string]*schema.Resource { resourceMap[setCloudSiteInfo] = resourceVolterraSetCloudSiteInfo() resourceMap[setKnownLabelKey] = resourceVolterraSetKnownLabelKey() resourceMap[setKnownLabel] = resourceVolterraSetKnownLabel() + resourceMap[setDnsZoneRRSET] = resourceVolterraSetRRSETRecord() return resourceMap } diff --git a/volterra/provider_auto_helper.go b/volterra/provider_auto_helper.go index dac7bd047..31975bd66 100644 --- a/volterra/provider_auto_helper.go +++ b/volterra/provider_auto_helper.go @@ -1,8 +1,5 @@ - -// // Copyright (c) 2018 Volterra, Inc. All rights reserved. // Code generated by ves-gen-tf-provider. DO NOT EDIT. -// package volterra import ( @@ -11,7 +8,7 @@ import ( "gopkg.volterra.us/stdlib/sets" ves_io_schema_namespace "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace" - + ves_io_schema_advertise_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/advertise_policy" ves_io_schema_alert_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_policy" ves_io_schema_alert_receiver "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/alert_receiver" @@ -40,6 +37,7 @@ import ( ves_io_schema_enhanced_firewall_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/enhanced_firewall_policy" ves_io_schema_fast_acl "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl" ves_io_schema_fast_acl_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fast_acl_rule" + ves_io_schema_filter_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" ves_io_schema_fleet "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/fleet" ves_io_schema_global_log_receiver "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/global_log_receiver" ves_io_schema_healthcheck "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/healthcheck" @@ -90,87 +88,92 @@ import ( ves_io_schema_virtual_k8s "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_k8s" ves_io_schema_virtual_network "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_network" ves_io_schema_virtual_site "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_site" + ves_io_schema_ztna "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" + ves_io_schema_ztna_application "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" ) func getVolterraResourceMap() map[string]*schema.Resource { return map[string]*schema.Resource{ - "volterra_namespace": resourceVolterraNamespace(), - "volterra_advertise_policy": resourceVolterraAdvertisePolicy(), - "volterra_alert_policy": resourceVolterraAlertPolicy(), - "volterra_alert_receiver": resourceVolterraAlertReceiver(), - "volterra_app_firewall": resourceVolterraAppFirewall(), - "volterra_app_setting": resourceVolterraAppSetting(), - "volterra_app_type": resourceVolterraAppType(), - "volterra_bgp": resourceVolterraBgp(), - "volterra_bgp_asn_set": resourceVolterraBgpAsnSet(), - "volterra_apm": resourceVolterraApm(), - "volterra_certificate": resourceVolterraCertificate(), - "volterra_certificate_chain": resourceVolterraCertificateChain(), - "volterra_cloud_credentials": resourceVolterraCloudCredentials(), - "volterra_cloud_link": resourceVolterraCloudLink(), - "volterra_cluster": resourceVolterraCluster(), - "volterra_container_registry": resourceVolterraContainerRegistry(), - "volterra_crl": resourceVolterraCrl(), + "volterra_namespace": resourceVolterraNamespace(), + "volterra_advertise_policy": resourceVolterraAdvertisePolicy(), + "volterra_alert_policy": resourceVolterraAlertPolicy(), + "volterra_alert_receiver": resourceVolterraAlertReceiver(), + "volterra_app_firewall": resourceVolterraAppFirewall(), + "volterra_app_setting": resourceVolterraAppSetting(), + "volterra_app_type": resourceVolterraAppType(), + "volterra_bgp": resourceVolterraBgp(), + "volterra_bgp_asn_set": resourceVolterraBgpAsnSet(), + "volterra_apm": resourceVolterraApm(), + "volterra_certificate": resourceVolterraCertificate(), + "volterra_certificate_chain": resourceVolterraCertificateChain(), + "volterra_cloud_credentials": resourceVolterraCloudCredentials(), + "volterra_cloud_link": resourceVolterraCloudLink(), + "volterra_cluster": resourceVolterraCluster(), + "volterra_container_registry": resourceVolterraContainerRegistry(), + "volterra_crl": resourceVolterraCrl(), "volterra_dc_cluster_group": resourceVolterraDcClusterGroup(), - "volterra_discovery": resourceVolterraDiscovery(), - "volterra_dns_compliance_checks": resourceVolterraDnsComplianceChecks(), - "volterra_dns_domain": resourceVolterraDnsDomain(), - "volterra_dns_lb_health_check": resourceVolterraDnsLbHealthCheck(), - "volterra_dns_lb_pool": resourceVolterraDnsLbPool(), - "volterra_dns_load_balancer": resourceVolterraDnsLoadBalancer(), - "volterra_dns_zone": resourceVolterraDnsZone(), - "volterra_endpoint": resourceVolterraEndpoint(), - "volterra_enhanced_firewall_policy": resourceVolterraEnhancedFirewallPolicy(), - "volterra_fast_acl": resourceVolterraFastAcl(), - "volterra_fast_acl_rule": resourceVolterraFastAclRule(), - "volterra_fleet": resourceVolterraFleet(), - "volterra_global_log_receiver": resourceVolterraGlobalLogReceiver(), - "volterra_healthcheck": resourceVolterraHealthcheck(), - "volterra_ip_prefix_set": resourceVolterraIpPrefixSet(), - "volterra_k8s_cluster": resourceVolterraK8SCluster(), - "volterra_k8s_cluster_role": resourceVolterraK8SClusterRole(), - "volterra_k8s_cluster_role_binding": resourceVolterraK8SClusterRoleBinding(), + "volterra_discovery": resourceVolterraDiscovery(), + "volterra_dns_compliance_checks": resourceVolterraDnsComplianceChecks(), + "volterra_dns_domain": resourceVolterraDnsDomain(), + "volterra_dns_lb_health_check": resourceVolterraDnsLbHealthCheck(), + "volterra_dns_lb_pool": resourceVolterraDnsLbPool(), + "volterra_dns_load_balancer": resourceVolterraDnsLoadBalancer(), + "volterra_dns_zone": resourceVolterraDnsZone(), + "volterra_endpoint": resourceVolterraEndpoint(), + "volterra_enhanced_firewall_policy": resourceVolterraEnhancedFirewallPolicy(), + "volterra_fast_acl": resourceVolterraFastAcl(), + "volterra_fast_acl_rule": resourceVolterraFastAclRule(), + "volterra_filter_set": resourceVolterraFilterSet(), + "volterra_fleet": resourceVolterraFleet(), + "volterra_global_log_receiver": resourceVolterraGlobalLogReceiver(), + "volterra_healthcheck": resourceVolterraHealthcheck(), + "volterra_ip_prefix_set": resourceVolterraIpPrefixSet(), + "volterra_k8s_cluster": resourceVolterraK8SCluster(), + "volterra_k8s_cluster_role": resourceVolterraK8SClusterRole(), + "volterra_k8s_cluster_role_binding": resourceVolterraK8SClusterRoleBinding(), "volterra_k8s_pod_security_admission": resourceVolterraK8SPodSecurityAdmission(), - "volterra_k8s_pod_security_policy": resourceVolterraK8SPodSecurityPolicy(), - "volterra_log_receiver": resourceVolterraLogReceiver(), - "volterra_malicious_user_mitigation": resourceVolterraMaliciousUserMitigation(), - "volterra_network_connector": resourceVolterraNetworkConnector(), - "volterra_network_firewall": resourceVolterraNetworkFirewall(), - "volterra_network_policy": resourceVolterraNetworkPolicy(), - "volterra_network_policy_rule": resourceVolterraNetworkPolicyRule(), - "volterra_nfv_service": resourceVolterraNfvService(), - "volterra_policer": resourceVolterraPolicer(), - "volterra_protocol_inspection": resourceVolterraProtocolInspection(), - "volterra_protocol_policer": resourceVolterraProtocolPolicer(), - "volterra_rate_limiter": resourceVolterraRateLimiter(), - "volterra_role": resourceVolterraRole(), - "volterra_route": resourceVolterraRoute(), - "volterra_secret_policy": resourceVolterraSecretPolicy(), - "volterra_secret_policy_rule": resourceVolterraSecretPolicyRule(), - "volterra_service_policy_rule": resourceVolterraServicePolicyRule(), - "volterra_site_mesh_group": resourceVolterraSiteMeshGroup(), - "volterra_trusted_ca_list": resourceVolterraTrustedCaList(), - "volterra_usb_policy": resourceVolterraUsbPolicy(), - "volterra_user_identification": resourceVolterraUserIdentification(), - "volterra_api_definition": resourceVolterraApiDefinition(), - "volterra_app_api_group": resourceVolterraAppApiGroup(), - "volterra_aws_tgw_site": resourceVolterraAwsTgwSite(), - "volterra_aws_vpc_site": resourceVolterraAwsVpcSite(), - "volterra_azure_vnet_site": resourceVolterraAzureVnetSite(), - "volterra_cdn_loadbalancer": resourceVolterraCdnLoadbalancer(), - "volterra_forward_proxy_policy": resourceVolterraForwardProxyPolicy(), - "volterra_gcp_vpc_site": resourceVolterraGcpVpcSite(), - "volterra_http_loadbalancer": resourceVolterraHttpLoadbalancer(), - "volterra_network_policy_view": resourceVolterraNetworkPolicyView(), - "volterra_origin_pool": resourceVolterraOriginPool(), - "volterra_rate_limiter_policy": resourceVolterraRateLimiterPolicy(), - "volterra_securemesh_site": resourceVolterraSecuremeshSite(), - "volterra_tcp_loadbalancer": resourceVolterraTcpLoadbalancer(), - "volterra_voltstack_site": resourceVolterraVoltstackSite(), - "volterra_virtual_host": resourceVolterraVirtualHost(), - "volterra_virtual_k8s": resourceVolterraVirtualK8S(), - "volterra_virtual_network": resourceVolterraVirtualNetwork(), - "volterra_virtual_site": resourceVolterraVirtualSite(), + "volterra_k8s_pod_security_policy": resourceVolterraK8SPodSecurityPolicy(), + "volterra_log_receiver": resourceVolterraLogReceiver(), + "volterra_malicious_user_mitigation": resourceVolterraMaliciousUserMitigation(), + "volterra_network_connector": resourceVolterraNetworkConnector(), + "volterra_network_firewall": resourceVolterraNetworkFirewall(), + "volterra_network_policy": resourceVolterraNetworkPolicy(), + "volterra_network_policy_rule": resourceVolterraNetworkPolicyRule(), + "volterra_nfv_service": resourceVolterraNfvService(), + "volterra_policer": resourceVolterraPolicer(), + "volterra_protocol_inspection": resourceVolterraProtocolInspection(), + "volterra_protocol_policer": resourceVolterraProtocolPolicer(), + "volterra_rate_limiter": resourceVolterraRateLimiter(), + "volterra_role": resourceVolterraRole(), + "volterra_route": resourceVolterraRoute(), + "volterra_secret_policy": resourceVolterraSecretPolicy(), + "volterra_secret_policy_rule": resourceVolterraSecretPolicyRule(), + "volterra_service_policy_rule": resourceVolterraServicePolicyRule(), + "volterra_site_mesh_group": resourceVolterraSiteMeshGroup(), + "volterra_trusted_ca_list": resourceVolterraTrustedCaList(), + "volterra_usb_policy": resourceVolterraUsbPolicy(), + "volterra_user_identification": resourceVolterraUserIdentification(), + "volterra_api_definition": resourceVolterraApiDefinition(), + "volterra_app_api_group": resourceVolterraAppApiGroup(), + "volterra_aws_tgw_site": resourceVolterraAwsTgwSite(), + "volterra_aws_vpc_site": resourceVolterraAwsVpcSite(), + "volterra_azure_vnet_site": resourceVolterraAzureVnetSite(), + "volterra_cdn_loadbalancer": resourceVolterraCdnLoadbalancer(), + "volterra_forward_proxy_policy": resourceVolterraForwardProxyPolicy(), + "volterra_gcp_vpc_site": resourceVolterraGcpVpcSite(), + "volterra_http_loadbalancer": resourceVolterraHttpLoadbalancer(), + "volterra_network_policy_view": resourceVolterraNetworkPolicyView(), + "volterra_origin_pool": resourceVolterraOriginPool(), + "volterra_rate_limiter_policy": resourceVolterraRateLimiterPolicy(), + "volterra_securemesh_site": resourceVolterraSecuremeshSite(), + "volterra_tcp_loadbalancer": resourceVolterraTcpLoadbalancer(), + "volterra_voltstack_site": resourceVolterraVoltstackSite(), + "volterra_virtual_host": resourceVolterraVirtualHost(), + "volterra_virtual_k8s": resourceVolterraVirtualK8S(), + "volterra_virtual_network": resourceVolterraVirtualNetwork(), + "volterra_virtual_site": resourceVolterraVirtualSite(), + "volterra_ztna": resourceVolterraZtna(), + "volterra_ztna_application": resourceVolterraZtnaApplication(), } } @@ -206,6 +209,7 @@ func getAllAkarObjectTypes() sets.String { ves_io_schema_enhanced_firewall_policy.ObjectType, ves_io_schema_fast_acl.ObjectType, ves_io_schema_fast_acl_rule.ObjectType, + ves_io_schema_filter_set.ObjectType, ves_io_schema_fleet.ObjectType, ves_io_schema_global_log_receiver.ObjectType, ves_io_schema_healthcheck.ObjectType, @@ -256,6 +260,7 @@ func getAllAkarObjectTypes() sets.String { ves_io_schema_virtual_k8s.ObjectType, ves_io_schema_virtual_network.ObjectType, ves_io_schema_virtual_site.ObjectType, + ves_io_schema_ztna.ObjectType, + ves_io_schema_ztna_application.ObjectType, ) } - diff --git a/volterra/resource_auto_volterra_advertise_policy.go b/volterra/resource_auto_volterra_advertise_policy.go index 40ae9ae53..c7c332870 100644 --- a/volterra/resource_auto_volterra_advertise_policy.go +++ b/volterra/resource_auto_volterra_advertise_policy.go @@ -382,32 +382,27 @@ func resourceVolterraAdvertisePolicy() *schema.Resource { "trusted_ca_list": { - Type: schema.TypeList, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeList, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "kind": { - Type: schema.TypeString, - Computed: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Computed: true, }, "name": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "namespace": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "tenant": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, diff --git a/volterra/resource_auto_volterra_apm.go b/volterra/resource_auto_volterra_apm.go index 8a5d87f51..9adec03ae 100644 --- a/volterra/resource_auto_volterra_apm.go +++ b/volterra/resource_auto_volterra_apm.go @@ -5468,7 +5468,7 @@ func resourceVolterraApmCreate(d *schema.ResourceData, meta interface{}) error { amiChoiceTypeFound := false - if v, ok := cs["BestPlusPayG200Mbps"]; ok && !isIntfNil(v) && !amiChoiceTypeFound { + if v, ok := cs["best_plus_pay_g200_mbps"]; ok && !isIntfNil(v) && !amiChoiceTypeFound { amiChoiceTypeFound = true diff --git a/volterra/resource_auto_volterra_aws_tgw_site.go b/volterra/resource_auto_volterra_aws_tgw_site.go index b20dc97b7..e19aa4831 100644 --- a/volterra/resource_auto_volterra_aws_tgw_site.go +++ b/volterra/resource_auto_volterra_aws_tgw_site.go @@ -551,6 +551,26 @@ func resourceVolterraAwsTgwSite() *schema.Resource { Optional: true, }, + "cloud_aggregated_prefix": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "dc_connect_aggregated_prefix": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + "hosted_vifs": { Type: schema.TypeSet, @@ -686,6 +706,64 @@ func resourceVolterraAwsTgwSite() *schema.Resource { }, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "log_receiver": { Type: schema.TypeSet, @@ -3055,6 +3133,104 @@ func resourceVolterraAwsTgwSiteCreate(d *schema.ResourceData, meta interface{}) } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //logs_receiver_choice logsReceiverChoiceTypeFound := false @@ -5106,110 +5282,517 @@ func resourceVolterraAwsTgwSiteUpdate(d *schema.ResourceData, meta interface{}) for _, set := range sl { awsParametersMapStrToI := set.(map[string]interface{}) - deploymentTypeFound := false + if w, ok := awsParametersMapStrToI["aws_region"]; ok && !isIntfNil(w) { + awsParameters.AwsRegion = w.(string) + } - if v, ok := awsParametersMapStrToI["assisted"]; ok && !isIntfNil(v) && !deploymentTypeFound { + if v, ok := awsParametersMapStrToI["az_nodes"]; ok && !isIntfNil(v) { - deploymentTypeFound = true + sl := v.([]interface{}) + azNodes := make([]*ves_io_schema_views.AWSVPCTwoInterfaceNodeType, len(sl)) + awsParameters.AzNodes = azNodes + for i, set := range sl { + azNodes[i] = &ves_io_schema_views.AWSVPCTwoInterfaceNodeType{} + azNodesMapStrToI := set.(map[string]interface{}) - if v.(bool) { - deploymentInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_Assisted{} - deploymentInt.Assisted = &ves_io_schema.Empty{} - awsParameters.Deployment = deploymentInt - } + if w, ok := azNodesMapStrToI["aws_az_name"]; ok && !isIntfNil(w) { + azNodes[i].AwsAzName = w.(string) + } - } + choiceTypeFound := false - if v, ok := awsParametersMapStrToI["aws_cred"]; ok && !isIntfNil(v) && !deploymentTypeFound { + if v, ok := azNodesMapStrToI["inside_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { - deploymentTypeFound = true - deploymentInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_AwsCred{} - deploymentInt.AwsCred = &ves_io_schema_views.ObjectRefType{} - awsParameters.Deployment = deploymentInt + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AWSVPCTwoInterfaceNodeType_InsideSubnet{} + choiceInt.InsideSubnet = &ves_io_schema_views.CloudSubnetType{} + azNodes[i].Choice = choiceInt - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["name"]; ok && !isIntfNil(v) { + choiceTypeFound := false - deploymentInt.AwsCred.Name = v.(string) + if v, ok := cs["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { - } + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} - if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + choiceInt.InsideSubnet.Choice = choiceIntNew - deploymentInt.AwsCred.Namespace = v.(string) + choiceIntNew.ExistingSubnetId = v.(string) - } + } - if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + if v, ok := cs["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { - deploymentInt.AwsCred.Tenant = v.(string) + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceIntNew.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + choiceInt.InsideSubnet.Choice = choiceIntNew - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { - } + choiceIntNew.SubnetParam.Ipv4 = v.(string) - internetVipChoiceTypeFound := false + } - if v, ok := awsParametersMapStrToI["disable_internet_vip"]; ok && !isIntfNil(v) && !internetVipChoiceTypeFound { + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { - internetVipChoiceTypeFound = true + choiceIntNew.SubnetParam.Ipv6 = v.(string) - if v.(bool) { - internetVipChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_DisableInternetVip{} - internetVipChoiceInt.DisableInternetVip = &ves_io_schema.Empty{} - awsParameters.InternetVipChoice = internetVipChoiceInt - } + } - } + } - if v, ok := awsParametersMapStrToI["enable_internet_vip"]; ok && !isIntfNil(v) && !internetVipChoiceTypeFound { + } - internetVipChoiceTypeFound = true + } - if v.(bool) { - internetVipChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_EnableInternetVip{} - internetVipChoiceInt.EnableInternetVip = &ves_io_schema.Empty{} - awsParameters.InternetVipChoice = internetVipChoiceInt - } + } - } + if v, ok := azNodesMapStrToI["reserved_inside_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { - workerNodesTypeFound := false + choiceTypeFound = true - if v, ok := awsParametersMapStrToI["no_worker_nodes"]; ok && !isIntfNil(v) && !workerNodesTypeFound { + if v.(bool) { + choiceInt := &ves_io_schema_views.AWSVPCTwoInterfaceNodeType_ReservedInsideSubnet{} + choiceInt.ReservedInsideSubnet = &ves_io_schema.Empty{} + azNodes[i].Choice = choiceInt + } - workerNodesTypeFound = true + } - if v.(bool) { - workerNodesInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NoWorkerNodes{} - workerNodesInt.NoWorkerNodes = &ves_io_schema.Empty{} - awsParameters.WorkerNodes = workerNodesInt - } + if w, ok := azNodesMapStrToI["disk_size"]; ok && !isIntfNil(w) { + azNodes[i].DiskSize = uint32(w.(int)) + } - } + if v, ok := azNodesMapStrToI["outside_subnet"]; ok && !isIntfNil(v) { - if v, ok := awsParametersMapStrToI["nodes_per_az"]; ok && !isIntfNil(v) && !workerNodesTypeFound { + sl := v.(*schema.Set).List() + outsideSubnet := &ves_io_schema_views.CloudSubnetType{} + azNodes[i].OutsideSubnet = outsideSubnet + for _, set := range sl { + outsideSubnetMapStrToI := set.(map[string]interface{}) - workerNodesTypeFound = true - workerNodesInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NodesPerAz{} + choiceTypeFound := false - awsParameters.WorkerNodes = workerNodesInt + if v, ok := outsideSubnetMapStrToI["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { - workerNodesInt.NodesPerAz = uint32(v.(int)) + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} - } + outsideSubnet.Choice = choiceInt - if v, ok := awsParametersMapStrToI["total_nodes"]; ok && !isIntfNil(v) && !workerNodesTypeFound { + choiceInt.ExistingSubnetId = v.(string) - workerNodesTypeFound = true - workerNodesInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_TotalNodes{} + } - awsParameters.WorkerNodes = workerNodesInt + if v, ok := outsideSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + outsideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + if v, ok := azNodesMapStrToI["workload_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + workloadSubnet := &ves_io_schema_views.CloudSubnetType{} + azNodes[i].WorkloadSubnet = workloadSubnet + for _, set := range sl { + workloadSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := workloadSubnetMapStrToI["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} + + workloadSubnet.Choice = choiceInt + + choiceInt.ExistingSubnetId = v.(string) + + } + + if v, ok := workloadSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + workloadSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + } + + } + + deploymentTypeFound := false + + if v, ok := awsParametersMapStrToI["assisted"]; ok && !isIntfNil(v) && !deploymentTypeFound { + + deploymentTypeFound = true + + if v.(bool) { + deploymentInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_Assisted{} + deploymentInt.Assisted = &ves_io_schema.Empty{} + awsParameters.Deployment = deploymentInt + } + + } + + if v, ok := awsParametersMapStrToI["aws_cred"]; ok && !isIntfNil(v) && !deploymentTypeFound { + + deploymentTypeFound = true + deploymentInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_AwsCred{} + deploymentInt.AwsCred = &ves_io_schema_views.ObjectRefType{} + awsParameters.Deployment = deploymentInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + deploymentInt.AwsCred.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + deploymentInt.AwsCred.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + deploymentInt.AwsCred.Tenant = v.(string) + + } + + } + + } + + if w, ok := awsParametersMapStrToI["disk_size"]; ok && !isIntfNil(w) { + awsParameters.DiskSize = uint32(w.(int)) + } + + if w, ok := awsParametersMapStrToI["instance_type"]; ok && !isIntfNil(w) { + awsParameters.InstanceType = w.(string) + } + + internetVipChoiceTypeFound := false + + if v, ok := awsParametersMapStrToI["disable_internet_vip"]; ok && !isIntfNil(v) && !internetVipChoiceTypeFound { + + internetVipChoiceTypeFound = true + + if v.(bool) { + internetVipChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_DisableInternetVip{} + internetVipChoiceInt.DisableInternetVip = &ves_io_schema.Empty{} + awsParameters.InternetVipChoice = internetVipChoiceInt + } + + } + + if v, ok := awsParametersMapStrToI["enable_internet_vip"]; ok && !isIntfNil(v) && !internetVipChoiceTypeFound { + + internetVipChoiceTypeFound = true + + if v.(bool) { + internetVipChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_EnableInternetVip{} + internetVipChoiceInt.EnableInternetVip = &ves_io_schema.Empty{} + awsParameters.InternetVipChoice = internetVipChoiceInt + } + + } + + securityGroupChoiceTypeFound := false + + if v, ok := awsParametersMapStrToI["custom_security_group"]; ok && !isIntfNil(v) && !securityGroupChoiceTypeFound { + + securityGroupChoiceTypeFound = true + securityGroupChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_CustomSecurityGroup{} + securityGroupChoiceInt.CustomSecurityGroup = &ves_io_schema_views.SecurityGroupType{} + awsParameters.SecurityGroupChoice = securityGroupChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["inside_security_group_id"]; ok && !isIntfNil(v) { + + securityGroupChoiceInt.CustomSecurityGroup.InsideSecurityGroupId = v.(string) + + } + + if v, ok := cs["outside_security_group_id"]; ok && !isIntfNil(v) { + + securityGroupChoiceInt.CustomSecurityGroup.OutsideSecurityGroupId = v.(string) + + } + + } + + } + + if v, ok := awsParametersMapStrToI["f5xc_security_group"]; ok && !isIntfNil(v) && !securityGroupChoiceTypeFound { + + securityGroupChoiceTypeFound = true + + if v.(bool) { + securityGroupChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_F5XcSecurityGroup{} + securityGroupChoiceInt.F5XcSecurityGroup = &ves_io_schema.Empty{} + awsParameters.SecurityGroupChoice = securityGroupChoiceInt + } + + } + + serviceVpcChoiceTypeFound := false + + if v, ok := awsParametersMapStrToI["new_vpc"]; ok && !isIntfNil(v) && !serviceVpcChoiceTypeFound { + + serviceVpcChoiceTypeFound = true + serviceVpcChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NewVpc{} + serviceVpcChoiceInt.NewVpc = &ves_io_schema_views.AWSVPCParamsType{} + awsParameters.ServiceVpcChoice = serviceVpcChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["allocate_ipv6"]; ok && !isIntfNil(v) { + + serviceVpcChoiceInt.NewVpc.AllocateIpv6 = v.(bool) + + } + + nameChoiceTypeFound := false + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) && !nameChoiceTypeFound { + + nameChoiceTypeFound = true + + if v.(bool) { + nameChoiceInt := &ves_io_schema_views.AWSVPCParamsType_Autogenerate{} + nameChoiceInt.Autogenerate = &ves_io_schema.Empty{} + serviceVpcChoiceInt.NewVpc.NameChoice = nameChoiceInt + } + + } + + if v, ok := cs["name_tag"]; ok && !isIntfNil(v) && !nameChoiceTypeFound { + + nameChoiceTypeFound = true + nameChoiceInt := &ves_io_schema_views.AWSVPCParamsType_NameTag{} + + serviceVpcChoiceInt.NewVpc.NameChoice = nameChoiceInt + + nameChoiceInt.NameTag = v.(string) + + } + + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { + + serviceVpcChoiceInt.NewVpc.PrimaryIpv4 = v.(string) + + } + + } + + } + + if v, ok := awsParametersMapStrToI["vpc_id"]; ok && !isIntfNil(v) && !serviceVpcChoiceTypeFound { + + serviceVpcChoiceTypeFound = true + serviceVpcChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_VpcId{} + + awsParameters.ServiceVpcChoice = serviceVpcChoiceInt + + serviceVpcChoiceInt.VpcId = v.(string) + + } + + if w, ok := awsParametersMapStrToI["ssh_key"]; ok && !isIntfNil(w) { + awsParameters.SshKey = w.(string) + } + + tgwChoiceTypeFound := false + + if v, ok := awsParametersMapStrToI["existing_tgw"]; ok && !isIntfNil(v) && !tgwChoiceTypeFound { + + tgwChoiceTypeFound = true + tgwChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_ExistingTgw{} + tgwChoiceInt.ExistingTgw = &ves_io_schema_views_aws_tgw_site.ExistingTGWType{} + awsParameters.TgwChoice = tgwChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["tgw_asn"]; ok && !isIntfNil(v) { + + tgwChoiceInt.ExistingTgw.TgwAsn = uint32(v.(int)) + + } + + if v, ok := cs["tgw_id"]; ok && !isIntfNil(v) { + + tgwChoiceInt.ExistingTgw.TgwId = v.(string) + + } + + if v, ok := cs["volterra_site_asn"]; ok && !isIntfNil(v) { + + tgwChoiceInt.ExistingTgw.VolterraSiteAsn = uint32(v.(int)) + + } + + } + + } + + if v, ok := awsParametersMapStrToI["new_tgw"]; ok && !isIntfNil(v) && !tgwChoiceTypeFound { + + tgwChoiceTypeFound = true + tgwChoiceInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NewTgw{} + tgwChoiceInt.NewTgw = &ves_io_schema_views_aws_tgw_site.TGWParamsType{} + awsParameters.TgwChoice = tgwChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + asnChoiceTypeFound := false + + if v, ok := cs["system_generated"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { + + asnChoiceTypeFound = true + + if v.(bool) { + asnChoiceInt := &ves_io_schema_views_aws_tgw_site.TGWParamsType_SystemGenerated{} + asnChoiceInt.SystemGenerated = &ves_io_schema.Empty{} + tgwChoiceInt.NewTgw.AsnChoice = asnChoiceInt + } + + } + + if v, ok := cs["user_assigned"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { + + asnChoiceTypeFound = true + asnChoiceInt := &ves_io_schema_views_aws_tgw_site.TGWParamsType_UserAssigned{} + asnChoiceInt.UserAssigned = &ves_io_schema_views_aws_tgw_site.TGWAssignedASNType{} + tgwChoiceInt.NewTgw.AsnChoice = asnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["tgw_asn"]; ok && !isIntfNil(v) { + + asnChoiceInt.UserAssigned.TgwAsn = uint32(v.(int)) + + } + + if v, ok := cs["volterra_site_asn"]; ok && !isIntfNil(v) { + + asnChoiceInt.UserAssigned.VolterraSiteAsn = uint32(v.(int)) + + } + + } + + } + + } + + } + + workerNodesTypeFound := false + + if v, ok := awsParametersMapStrToI["no_worker_nodes"]; ok && !isIntfNil(v) && !workerNodesTypeFound { + + workerNodesTypeFound = true + + if v.(bool) { + workerNodesInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NoWorkerNodes{} + workerNodesInt.NoWorkerNodes = &ves_io_schema.Empty{} + awsParameters.WorkerNodes = workerNodesInt + } + + } + + if v, ok := awsParametersMapStrToI["nodes_per_az"]; ok && !isIntfNil(v) && !workerNodesTypeFound { + + workerNodesTypeFound = true + workerNodesInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_NodesPerAz{} + + awsParameters.WorkerNodes = workerNodesInt + + workerNodesInt.NodesPerAz = uint32(v.(int)) + + } + + if v, ok := awsParametersMapStrToI["total_nodes"]; ok && !isIntfNil(v) && !workerNodesTypeFound { + + workerNodesTypeFound = true + workerNodesInt := &ves_io_schema_views_aws_tgw_site.ServicesVPCReplaceType_TotalNodes{} + + awsParameters.WorkerNodes = workerNodesInt workerNodesInt.TotalNodes = uint32(v.(int)) @@ -5612,6 +6195,103 @@ func resourceVolterraAwsTgwSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + logsReceiverChoiceTypeFound := false if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { diff --git a/volterra/resource_auto_volterra_aws_vpc_site.go b/volterra/resource_auto_volterra_aws_vpc_site.go index 3494476fc..f481b654d 100644 --- a/volterra/resource_auto_volterra_aws_vpc_site.go +++ b/volterra/resource_auto_volterra_aws_vpc_site.go @@ -227,6 +227,26 @@ func resourceVolterraAwsVpcSite() *schema.Resource { Optional: true, }, + "cloud_aggregated_prefix": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "dc_connect_aggregated_prefix": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + "hosted_vifs": { Type: schema.TypeSet, @@ -422,6 +442,64 @@ func resourceVolterraAwsVpcSite() *schema.Resource { Optional: true, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "log_receiver": { Type: schema.TypeSet, @@ -3762,6 +3840,104 @@ func resourceVolterraAwsVpcSiteCreate(d *schema.ResourceData, meta interface{}) } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //logs_receiver_choice logsReceiverChoiceTypeFound := false @@ -7692,6 +7868,13 @@ func resourceVolterraAwsVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("aws_region"); ok && !isIntfNil(v) { + + updateSpec.AwsRegion = + v.(string) + + } + blockedServicesChoiceTypeFound := false if v, ok := d.GetOk("block_all_services"); ok && !blockedServicesChoiceTypeFound { @@ -8120,137 +8303,359 @@ func resourceVolterraAwsVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } - internetVipChoiceTypeFound := false + if v, ok := d.GetOk("disk_size"); ok && !isIntfNil(v) { - if v, ok := d.GetOk("disable_internet_vip"); ok && !internetVipChoiceTypeFound { + updateSpec.DiskSize = + uint32(v.(int)) - internetVipChoiceTypeFound = true + } + + egressGatewayChoiceTypeFound := false + + if v, ok := d.GetOk("egress_gateway_default"); ok && !egressGatewayChoiceTypeFound { + + egressGatewayChoiceTypeFound = true if v.(bool) { - internetVipChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_DisableInternetVip{} - internetVipChoiceInt.DisableInternetVip = &ves_io_schema.Empty{} - updateSpec.InternetVipChoice = internetVipChoiceInt + egressGatewayChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_EgressGatewayDefault{} + egressGatewayChoiceInt.EgressGatewayDefault = &ves_io_schema.Empty{} + updateSpec.EgressGatewayChoice = egressGatewayChoiceInt } } - if v, ok := d.GetOk("enable_internet_vip"); ok && !internetVipChoiceTypeFound { + if v, ok := d.GetOk("egress_nat_gw"); ok && !egressGatewayChoiceTypeFound { - internetVipChoiceTypeFound = true + egressGatewayChoiceTypeFound = true + egressGatewayChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_EgressNatGw{} + egressGatewayChoiceInt.EgressNatGw = &ves_io_schema_views.AWSNATGatewaychoiceType{} + updateSpec.EgressGatewayChoice = egressGatewayChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := cs["nat_gw_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AWSNATGatewaychoiceType_NatGwId{} + + egressGatewayChoiceInt.EgressNatGw.Choice = choiceInt + + choiceInt.NatGwId = v.(string) + + } - if v.(bool) { - internetVipChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_EnableInternetVip{} - internetVipChoiceInt.EnableInternetVip = &ves_io_schema.Empty{} - updateSpec.InternetVipChoice = internetVipChoiceInt } } - logsReceiverChoiceTypeFound := false - - if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { + if v, ok := d.GetOk("egress_virtual_private_gateway"); ok && !egressGatewayChoiceTypeFound { - logsReceiverChoiceTypeFound = true - logsReceiverChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_LogReceiver{} - logsReceiverChoiceInt.LogReceiver = &ves_io_schema_views.ObjectRefType{} - updateSpec.LogsReceiverChoice = logsReceiverChoiceInt + egressGatewayChoiceTypeFound = true + egressGatewayChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_EgressVirtualPrivateGateway{} + egressGatewayChoiceInt.EgressVirtualPrivateGateway = &ves_io_schema_views.AWSVirtualPrivateGatewaychoiceType{} + updateSpec.EgressGatewayChoice = egressGatewayChoiceInt sl := v.(*schema.Set).List() for _, set := range sl { cs := set.(map[string]interface{}) - if v, ok := cs["name"]; ok && !isIntfNil(v) { + choiceTypeFound := false - logsReceiverChoiceInt.LogReceiver.Name = v.(string) + if v, ok := cs["vgw_id"]; ok && !isIntfNil(v) && !choiceTypeFound { - } + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AWSVirtualPrivateGatewaychoiceType_VgwId{} - if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + egressGatewayChoiceInt.EgressVirtualPrivateGateway.Choice = choiceInt - logsReceiverChoiceInt.LogReceiver.Namespace = v.(string) + choiceInt.VgwId = v.(string) } - if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + } - logsReceiverChoiceInt.LogReceiver.Tenant = v.(string) + } - } + if v, ok := d.GetOk("instance_type"); ok && !isIntfNil(v) { + + updateSpec.InstanceType = + v.(string) + + } + + internetVipChoiceTypeFound := false + + if v, ok := d.GetOk("disable_internet_vip"); ok && !internetVipChoiceTypeFound { + + internetVipChoiceTypeFound = true + if v.(bool) { + internetVipChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_DisableInternetVip{} + internetVipChoiceInt.DisableInternetVip = &ves_io_schema.Empty{} + updateSpec.InternetVipChoice = internetVipChoiceInt } } - if v, ok := d.GetOk("logs_streaming_disabled"); ok && !logsReceiverChoiceTypeFound { + if v, ok := d.GetOk("enable_internet_vip"); ok && !internetVipChoiceTypeFound { - logsReceiverChoiceTypeFound = true + internetVipChoiceTypeFound = true if v.(bool) { - logsReceiverChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_LogsStreamingDisabled{} - logsReceiverChoiceInt.LogsStreamingDisabled = &ves_io_schema.Empty{} - updateSpec.LogsReceiverChoice = logsReceiverChoiceInt + internetVipChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_EnableInternetVip{} + internetVipChoiceInt.EnableInternetVip = &ves_io_schema.Empty{} + updateSpec.InternetVipChoice = internetVipChoiceInt } } - if v, ok := d.GetOk("offline_survivability_mode"); ok && !isIntfNil(v) { + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - offlineSurvivabilityMode := &ves_io_schema_views.OfflineSurvivabilityModeType{} - updateSpec.OfflineSurvivabilityMode = offlineSurvivabilityMode + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain for _, set := range sl { - offlineSurvivabilityModeMapStrToI := set.(map[string]interface{}) + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) - offlineSurvivabilityModeChoiceTypeFound := false + kubernetesUpgradeDrainEnableChoiceTypeFound := false - if v, ok := offlineSurvivabilityModeMapStrToI["enable_offline_survivability_mode"]; ok && !isIntfNil(v) && !offlineSurvivabilityModeChoiceTypeFound { + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { - offlineSurvivabilityModeChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceTypeFound = true if v.(bool) { - offlineSurvivabilityModeChoiceInt := &ves_io_schema_views.OfflineSurvivabilityModeType_EnableOfflineSurvivabilityMode{} - offlineSurvivabilityModeChoiceInt.EnableOfflineSurvivabilityMode = &ves_io_schema.Empty{} - offlineSurvivabilityMode.OfflineSurvivabilityModeChoice = offlineSurvivabilityModeChoiceInt + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt } } - if v, ok := offlineSurvivabilityModeMapStrToI["no_offline_survivability_mode"]; ok && !isIntfNil(v) && !offlineSurvivabilityModeChoiceTypeFound { + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { - offlineSurvivabilityModeChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt - if v.(bool) { - offlineSurvivabilityModeChoiceInt := &ves_io_schema_views.OfflineSurvivabilityModeType_NoOfflineSurvivabilityMode{} - offlineSurvivabilityModeChoiceInt.NoOfflineSurvivabilityMode = &ves_io_schema.Empty{} - offlineSurvivabilityMode.OfflineSurvivabilityModeChoice = offlineSurvivabilityModeChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + drainMaxUnavailableChoiceTypeFound := false - } + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { - } + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} - siteTypeTypeFound := false + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt - if v, ok := d.GetOk("ingress_egress_gw"); ok && !siteTypeTypeFound { + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) - siteTypeTypeFound = true - siteTypeInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_IngressEgressGw{} - siteTypeInt.IngressEgressGw = &ves_io_schema_views_aws_vpc_site.AWSVPCIngressEgressGwReplaceType{} - updateSpec.SiteType = siteTypeInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { - if v, ok := cs["allowed_vip_port"]; ok && !isIntfNil(v) { + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} - sl := v.(*schema.Set).List() - allowedVipPort := &ves_io_schema_views.AllowedVIPPorts{} - siteTypeInt.IngressEgressGw.AllowedVipPort = allowedVipPort - for _, set := range sl { - allowedVipPortMapStrToI := set.(map[string]interface{}) + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + + logsReceiverChoiceTypeFound := false + + if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { + + logsReceiverChoiceTypeFound = true + logsReceiverChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_LogReceiver{} + logsReceiverChoiceInt.LogReceiver = &ves_io_schema_views.ObjectRefType{} + updateSpec.LogsReceiverChoice = logsReceiverChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + logsReceiverChoiceInt.LogReceiver.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + logsReceiverChoiceInt.LogReceiver.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + logsReceiverChoiceInt.LogReceiver.Tenant = v.(string) + + } + + } + + } + + if v, ok := d.GetOk("logs_streaming_disabled"); ok && !logsReceiverChoiceTypeFound { + + logsReceiverChoiceTypeFound = true + + if v.(bool) { + logsReceiverChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_LogsStreamingDisabled{} + logsReceiverChoiceInt.LogsStreamingDisabled = &ves_io_schema.Empty{} + updateSpec.LogsReceiverChoice = logsReceiverChoiceInt + } + + } + + if v, ok := d.GetOk("offline_survivability_mode"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + offlineSurvivabilityMode := &ves_io_schema_views.OfflineSurvivabilityModeType{} + updateSpec.OfflineSurvivabilityMode = offlineSurvivabilityMode + for _, set := range sl { + offlineSurvivabilityModeMapStrToI := set.(map[string]interface{}) + + offlineSurvivabilityModeChoiceTypeFound := false + + if v, ok := offlineSurvivabilityModeMapStrToI["enable_offline_survivability_mode"]; ok && !isIntfNil(v) && !offlineSurvivabilityModeChoiceTypeFound { + + offlineSurvivabilityModeChoiceTypeFound = true + + if v.(bool) { + offlineSurvivabilityModeChoiceInt := &ves_io_schema_views.OfflineSurvivabilityModeType_EnableOfflineSurvivabilityMode{} + offlineSurvivabilityModeChoiceInt.EnableOfflineSurvivabilityMode = &ves_io_schema.Empty{} + offlineSurvivabilityMode.OfflineSurvivabilityModeChoice = offlineSurvivabilityModeChoiceInt + } + + } + + if v, ok := offlineSurvivabilityModeMapStrToI["no_offline_survivability_mode"]; ok && !isIntfNil(v) && !offlineSurvivabilityModeChoiceTypeFound { + + offlineSurvivabilityModeChoiceTypeFound = true + + if v.(bool) { + offlineSurvivabilityModeChoiceInt := &ves_io_schema_views.OfflineSurvivabilityModeType_NoOfflineSurvivabilityMode{} + offlineSurvivabilityModeChoiceInt.NoOfflineSurvivabilityMode = &ves_io_schema.Empty{} + offlineSurvivabilityMode.OfflineSurvivabilityModeChoice = offlineSurvivabilityModeChoiceInt + } + + } + + } + + } + + securityGroupChoiceTypeFound := false + + if v, ok := d.GetOk("custom_security_group"); ok && !securityGroupChoiceTypeFound { + + securityGroupChoiceTypeFound = true + securityGroupChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_CustomSecurityGroup{} + securityGroupChoiceInt.CustomSecurityGroup = &ves_io_schema_views.SecurityGroupType{} + updateSpec.SecurityGroupChoice = securityGroupChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["inside_security_group_id"]; ok && !isIntfNil(v) { + + securityGroupChoiceInt.CustomSecurityGroup.InsideSecurityGroupId = v.(string) + + } + + if v, ok := cs["outside_security_group_id"]; ok && !isIntfNil(v) { + + securityGroupChoiceInt.CustomSecurityGroup.OutsideSecurityGroupId = v.(string) + + } + + } + + } + + if v, ok := d.GetOk("f5xc_security_group"); ok && !securityGroupChoiceTypeFound { + + securityGroupChoiceTypeFound = true + + if v.(bool) { + securityGroupChoiceInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_F5XcSecurityGroup{} + securityGroupChoiceInt.F5XcSecurityGroup = &ves_io_schema.Empty{} + updateSpec.SecurityGroupChoice = securityGroupChoiceInt + } + + } + + siteTypeTypeFound := false + + if v, ok := d.GetOk("ingress_egress_gw"); ok && !siteTypeTypeFound { + + siteTypeTypeFound = true + siteTypeInt := &ves_io_schema_views_aws_vpc_site.ReplaceSpecType_IngressEgressGw{} + siteTypeInt.IngressEgressGw = &ves_io_schema_views_aws_vpc_site.AWSVPCIngressEgressGwReplaceType{} + updateSpec.SiteType = siteTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["allowed_vip_port"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + allowedVipPort := &ves_io_schema_views.AllowedVIPPorts{} + siteTypeInt.IngressEgressGw.AllowedVipPort = allowedVipPort + for _, set := range sl { + allowedVipPortMapStrToI := set.(map[string]interface{}) portChoiceTypeFound := false @@ -8374,34 +8779,228 @@ func resourceVolterraAwsVpcSiteUpdate(d *schema.ResourceData, meta interface{}) portChoiceTypeFound = true - if v.(bool) { - portChoiceInt := &ves_io_schema_views.AllowedVIPPorts_UseHttpHttpsPort{} - portChoiceInt.UseHttpHttpsPort = &ves_io_schema.Empty{} - allowedVipPortSli.PortChoice = portChoiceInt - } + if v.(bool) { + portChoiceInt := &ves_io_schema_views.AllowedVIPPorts_UseHttpHttpsPort{} + portChoiceInt.UseHttpHttpsPort = &ves_io_schema.Empty{} + allowedVipPortSli.PortChoice = portChoiceInt + } + + } + + if v, ok := allowedVipPortSliMapStrToI["use_http_port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + + if v.(bool) { + portChoiceInt := &ves_io_schema_views.AllowedVIPPorts_UseHttpPort{} + portChoiceInt.UseHttpPort = &ves_io_schema.Empty{} + allowedVipPortSli.PortChoice = portChoiceInt + } + + } + + if v, ok := allowedVipPortSliMapStrToI["use_https_port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + + if v.(bool) { + portChoiceInt := &ves_io_schema_views.AllowedVIPPorts_UseHttpsPort{} + portChoiceInt.UseHttpsPort = &ves_io_schema.Empty{} + allowedVipPortSli.PortChoice = portChoiceInt + } + + } + + } + + } + + if v, ok := cs["az_nodes"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + azNodes := make([]*ves_io_schema_views.AWSVPCTwoInterfaceNodeType, len(sl)) + siteTypeInt.IngressEgressGw.AzNodes = azNodes + for i, set := range sl { + azNodes[i] = &ves_io_schema_views.AWSVPCTwoInterfaceNodeType{} + azNodesMapStrToI := set.(map[string]interface{}) + + if w, ok := azNodesMapStrToI["aws_az_name"]; ok && !isIntfNil(w) { + azNodes[i].AwsAzName = w.(string) + } + + choiceTypeFound := false + + if v, ok := azNodesMapStrToI["inside_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AWSVPCTwoInterfaceNodeType_InsideSubnet{} + choiceInt.InsideSubnet = &ves_io_schema_views.CloudSubnetType{} + azNodes[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := cs["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} + + choiceInt.InsideSubnet.Choice = choiceIntNew + + choiceIntNew.ExistingSubnetId = v.(string) + + } + + if v, ok := cs["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceIntNew.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + choiceInt.InsideSubnet.Choice = choiceIntNew + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceIntNew.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceIntNew.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + if v, ok := azNodesMapStrToI["reserved_inside_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views.AWSVPCTwoInterfaceNodeType_ReservedInsideSubnet{} + choiceInt.ReservedInsideSubnet = &ves_io_schema.Empty{} + azNodes[i].Choice = choiceInt + } + + } + + if w, ok := azNodesMapStrToI["disk_size"]; ok && !isIntfNil(w) { + azNodes[i].DiskSize = uint32(w.(int)) + } + + if v, ok := azNodesMapStrToI["outside_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + outsideSubnet := &ves_io_schema_views.CloudSubnetType{} + azNodes[i].OutsideSubnet = outsideSubnet + for _, set := range sl { + outsideSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := outsideSubnetMapStrToI["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} + + outsideSubnet.Choice = choiceInt + + choiceInt.ExistingSubnetId = v.(string) + + } + + if v, ok := outsideSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + outsideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + if v, ok := azNodesMapStrToI["workload_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + workloadSubnet := &ves_io_schema_views.CloudSubnetType{} + azNodes[i].WorkloadSubnet = workloadSubnet + for _, set := range sl { + workloadSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := workloadSubnetMapStrToI["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} + + workloadSubnet.Choice = choiceInt + + choiceInt.ExistingSubnetId = v.(string) + + } + + if v, ok := workloadSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + workloadSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { - } + choiceInt.SubnetParam.Ipv4 = v.(string) - if v, ok := allowedVipPortSliMapStrToI["use_http_port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + } - portChoiceTypeFound = true + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { - if v.(bool) { - portChoiceInt := &ves_io_schema_views.AllowedVIPPorts_UseHttpPort{} - portChoiceInt.UseHttpPort = &ves_io_schema.Empty{} - allowedVipPortSli.PortChoice = portChoiceInt - } + choiceInt.SubnetParam.Ipv6 = v.(string) - } + } - if v, ok := allowedVipPortSliMapStrToI["use_https_port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + } - portChoiceTypeFound = true + } - if v.(bool) { - portChoiceInt := &ves_io_schema_views.AllowedVIPPorts_UseHttpsPort{} - portChoiceInt.UseHttpsPort = &ves_io_schema.Empty{} - allowedVipPortSli.PortChoice = portChoiceInt } } @@ -9980,6 +10579,79 @@ func resourceVolterraAwsVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["az_nodes"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + azNodes := make([]*ves_io_schema_views.AWSVPCOneInterfaceNodeType, len(sl)) + siteTypeInt.IngressGw.AzNodes = azNodes + for i, set := range sl { + azNodes[i] = &ves_io_schema_views.AWSVPCOneInterfaceNodeType{} + azNodesMapStrToI := set.(map[string]interface{}) + + if w, ok := azNodesMapStrToI["aws_az_name"]; ok && !isIntfNil(w) { + azNodes[i].AwsAzName = w.(string) + } + + if w, ok := azNodesMapStrToI["disk_size"]; ok && !isIntfNil(w) { + azNodes[i].DiskSize = uint32(w.(int)) + } + + if v, ok := azNodesMapStrToI["local_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + localSubnet := &ves_io_schema_views.CloudSubnetType{} + azNodes[i].LocalSubnet = localSubnet + for _, set := range sl { + localSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := localSubnetMapStrToI["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} + + localSubnet.Choice = choiceInt + + choiceInt.ExistingSubnetId = v.(string) + + } + + if v, ok := localSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + localSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + } + + } + if v, ok := cs["performance_enhancement_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() @@ -10145,6 +10817,79 @@ func resourceVolterraAwsVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["az_nodes"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + azNodes := make([]*ves_io_schema_views.AWSVPCOneInterfaceNodeType, len(sl)) + siteTypeInt.VoltstackCluster.AzNodes = azNodes + for i, set := range sl { + azNodes[i] = &ves_io_schema_views.AWSVPCOneInterfaceNodeType{} + azNodesMapStrToI := set.(map[string]interface{}) + + if w, ok := azNodesMapStrToI["aws_az_name"]; ok && !isIntfNil(w) { + azNodes[i].AwsAzName = w.(string) + } + + if w, ok := azNodesMapStrToI["disk_size"]; ok && !isIntfNil(w) { + azNodes[i].DiskSize = uint32(w.(int)) + } + + if v, ok := azNodesMapStrToI["local_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + localSubnet := &ves_io_schema_views.CloudSubnetType{} + azNodes[i].LocalSubnet = localSubnet + for _, set := range sl { + localSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := localSubnetMapStrToI["existing_subnet_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_ExistingSubnetId{} + + localSubnet.Choice = choiceInt + + choiceInt.ExistingSubnetId = v.(string) + + } + + if v, ok := localSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.CloudSubnetType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + localSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + } + + } + dcClusterGroupChoiceTypeFound := false if v, ok := cs["dc_cluster_group"]; ok && !isIntfNil(v) && !dcClusterGroupChoiceTypeFound { @@ -11257,6 +12002,90 @@ func resourceVolterraAwsVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("ssh_key"); ok && !isIntfNil(v) { + + updateSpec.SshKey = + v.(string) + + } + + if v, ok := d.GetOk("vpc"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + vpc := &ves_io_schema_views.AWSVPCchoiceType{} + updateSpec.Vpc = vpc + for _, set := range sl { + vpcMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := vpcMapStrToI["new_vpc"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AWSVPCchoiceType_NewVpc{} + choiceInt.NewVpc = &ves_io_schema_views.AWSVPCParamsType{} + vpc.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["allocate_ipv6"]; ok && !isIntfNil(v) { + + choiceInt.NewVpc.AllocateIpv6 = v.(bool) + + } + + nameChoiceTypeFound := false + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) && !nameChoiceTypeFound { + + nameChoiceTypeFound = true + + if v.(bool) { + nameChoiceInt := &ves_io_schema_views.AWSVPCParamsType_Autogenerate{} + nameChoiceInt.Autogenerate = &ves_io_schema.Empty{} + choiceInt.NewVpc.NameChoice = nameChoiceInt + } + + } + + if v, ok := cs["name_tag"]; ok && !isIntfNil(v) && !nameChoiceTypeFound { + + nameChoiceTypeFound = true + nameChoiceInt := &ves_io_schema_views.AWSVPCParamsType_NameTag{} + + choiceInt.NewVpc.NameChoice = nameChoiceInt + + nameChoiceInt.NameTag = v.(string) + + } + + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { + + choiceInt.NewVpc.PrimaryIpv4 = v.(string) + + } + + } + + } + + if v, ok := vpcMapStrToI["vpc_id"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AWSVPCchoiceType_VpcId{} + + vpc.Choice = choiceInt + + choiceInt.VpcId = v.(string) + + } + + } + + } + workerNodesTypeFound := false if v, ok := d.GetOk("no_worker_nodes"); ok && !workerNodesTypeFound { diff --git a/volterra/resource_auto_volterra_azure_vnet_site.go b/volterra/resource_auto_volterra_azure_vnet_site.go index cf88f25df..8a5af0ed7 100644 --- a/volterra/resource_auto_volterra_azure_vnet_site.go +++ b/volterra/resource_auto_volterra_azure_vnet_site.go @@ -202,6 +202,64 @@ func resourceVolterraAzureVnetSite() *schema.Resource { Optional: true, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "log_receiver": { Type: schema.TypeSet, @@ -6483,6 +6541,104 @@ func resourceVolterraAzureVnetSiteCreate(d *schema.ResourceData, meta interface{ } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //logs_receiver_choice logsReceiverChoiceTypeFound := false @@ -15181,6 +15337,110 @@ func resourceVolterraAzureVnetSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := d.GetOk("disk_size"); ok && !isIntfNil(v) { + + updateSpec.DiskSize = + uint32(v.(int)) + + } + + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + logsReceiverChoiceTypeFound := false if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { @@ -15228,6 +15488,13 @@ func resourceVolterraAzureVnetSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := d.GetOk("machine_type"); ok && !isIntfNil(v) { + + updateSpec.MachineType = + v.(string) + + } + if v, ok := d.GetOk("offline_survivability_mode"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() @@ -15266,6 +15533,37 @@ func resourceVolterraAzureVnetSiteUpdate(d *schema.ResourceData, meta interface{ } + regionChoiceTypeFound := false + + if v, ok := d.GetOk("alternate_region"); ok && !regionChoiceTypeFound { + + regionChoiceTypeFound = true + regionChoiceInt := &ves_io_schema_views_azure_vnet_site.ReplaceSpecType_AlternateRegion{} + + updateSpec.RegionChoice = regionChoiceInt + + regionChoiceInt.AlternateRegion = v.(string) + + } + + if v, ok := d.GetOk("azure_region"); ok && !regionChoiceTypeFound { + + regionChoiceTypeFound = true + regionChoiceInt := &ves_io_schema_views_azure_vnet_site.ReplaceSpecType_AzureRegion{} + + updateSpec.RegionChoice = regionChoiceInt + + regionChoiceInt.AzureRegion = v.(string) + + } + + if v, ok := d.GetOk("resource_group"); ok && !isIntfNil(v) { + + updateSpec.ResourceGroup = + v.(string) + + } + siteTypeTypeFound := false if v, ok := d.GetOk("ingress_egress_gw"); ok && !siteTypeTypeFound { @@ -19265,6 +19563,204 @@ func resourceVolterraAzureVnetSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := cs["node"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + node := &ves_io_schema_views.AzureVnetTwoInterfaceNodeARType{} + siteTypeInt.IngressEgressGwAr.Node = node + for _, set := range sl { + nodeMapStrToI := set.(map[string]interface{}) + + if w, ok := nodeMapStrToI["fault_domain"]; ok && !isIntfNil(w) { + node.FaultDomain = uint32(w.(int)) + } + + if v, ok := nodeMapStrToI["inside_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + insideSubnet := &ves_io_schema_views.AzureSubnetChoiceType{} + node.InsideSubnet = insideSubnet + for _, set := range sl { + insideSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := insideSubnetMapStrToI["subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AzureSubnetChoiceType_Subnet{} + choiceInt.Subnet = &ves_io_schema_views.AzureSubnetType{} + insideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + resourceGroupChoiceTypeFound := false + + if v, ok := cs["subnet_resource_grp"]; ok && !isIntfNil(v) && !resourceGroupChoiceTypeFound { + + resourceGroupChoiceTypeFound = true + resourceGroupChoiceInt := &ves_io_schema_views.AzureSubnetType_SubnetResourceGrp{} + + choiceInt.Subnet.ResourceGroupChoice = resourceGroupChoiceInt + + resourceGroupChoiceInt.SubnetResourceGrp = v.(string) + + } + + if v, ok := cs["vnet_resource_group"]; ok && !isIntfNil(v) && !resourceGroupChoiceTypeFound { + + resourceGroupChoiceTypeFound = true + + if v.(bool) { + resourceGroupChoiceInt := &ves_io_schema_views.AzureSubnetType_VnetResourceGroup{} + resourceGroupChoiceInt.VnetResourceGroup = &ves_io_schema.Empty{} + choiceInt.Subnet.ResourceGroupChoice = resourceGroupChoiceInt + } + + } + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.Subnet.SubnetName = v.(string) + + } + + } + + } + + if v, ok := insideSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AzureSubnetChoiceType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + insideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + if w, ok := nodeMapStrToI["node_number"]; ok && !isIntfNil(w) { + node.NodeNumber = uint32(w.(int)) + } + + if v, ok := nodeMapStrToI["outside_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + outsideSubnet := &ves_io_schema_views.AzureSubnetChoiceType{} + node.OutsideSubnet = outsideSubnet + for _, set := range sl { + outsideSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := outsideSubnetMapStrToI["subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AzureSubnetChoiceType_Subnet{} + choiceInt.Subnet = &ves_io_schema_views.AzureSubnetType{} + outsideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + resourceGroupChoiceTypeFound := false + + if v, ok := cs["subnet_resource_grp"]; ok && !isIntfNil(v) && !resourceGroupChoiceTypeFound { + + resourceGroupChoiceTypeFound = true + resourceGroupChoiceInt := &ves_io_schema_views.AzureSubnetType_SubnetResourceGrp{} + + choiceInt.Subnet.ResourceGroupChoice = resourceGroupChoiceInt + + resourceGroupChoiceInt.SubnetResourceGrp = v.(string) + + } + + if v, ok := cs["vnet_resource_group"]; ok && !isIntfNil(v) && !resourceGroupChoiceTypeFound { + + resourceGroupChoiceTypeFound = true + + if v.(bool) { + resourceGroupChoiceInt := &ves_io_schema_views.AzureSubnetType_VnetResourceGroup{} + resourceGroupChoiceInt.VnetResourceGroup = &ves_io_schema.Empty{} + choiceInt.Subnet.ResourceGroupChoice = resourceGroupChoiceInt + } + + } + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.Subnet.SubnetName = v.(string) + + } + + } + + } + + if v, ok := outsideSubnetMapStrToI["subnet_param"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AzureSubnetChoiceType_SubnetParam{} + choiceInt.SubnetParam = &ves_io_schema_views.CloudSubnetParamType{} + outsideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv4"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv4 = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SubnetParam.Ipv6 = v.(string) + + } + + } + + } + + } + + } + + if w, ok := nodeMapStrToI["update_domain"]; ok && !isIntfNil(w) { + node.UpdateDomain = uint32(w.(int)) + } + + } + + } + outsideStaticRouteChoiceTypeFound := false if v, ok := cs["no_outside_static_routes"]; ok && !isIntfNil(v) && !outsideStaticRouteChoiceTypeFound { @@ -21890,6 +22386,100 @@ func resourceVolterraAzureVnetSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := d.GetOk("ssh_key"); ok && !isIntfNil(v) { + + updateSpec.SshKey = + v.(string) + + } + + if v, ok := d.GetOk("vnet"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + vnet := &ves_io_schema_views.AzureVnetChoiceType{} + updateSpec.Vnet = vnet + for _, set := range sl { + vnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := vnetMapStrToI["existing_vnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AzureVnetChoiceType_ExistingVnet{} + choiceInt.ExistingVnet = &ves_io_schema_views.AzureVnetType{} + vnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["resource_group"]; ok && !isIntfNil(v) { + + choiceInt.ExistingVnet.ResourceGroup = v.(string) + + } + + if v, ok := cs["vnet_name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingVnet.VnetName = v.(string) + + } + + } + + } + + if v, ok := vnetMapStrToI["new_vnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.AzureVnetChoiceType_NewVnet{} + choiceInt.NewVnet = &ves_io_schema_views.AzureVnetParamsType{} + vnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + nameChoiceTypeFound := false + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) && !nameChoiceTypeFound { + + nameChoiceTypeFound = true + + if v.(bool) { + nameChoiceInt := &ves_io_schema_views.AzureVnetParamsType_Autogenerate{} + nameChoiceInt.Autogenerate = &ves_io_schema.Empty{} + choiceInt.NewVnet.NameChoice = nameChoiceInt + } + + } + + if v, ok := cs["name"]; ok && !isIntfNil(v) && !nameChoiceTypeFound { + + nameChoiceTypeFound = true + nameChoiceInt := &ves_io_schema_views.AzureVnetParamsType_Name{} + + choiceInt.NewVnet.NameChoice = nameChoiceInt + + nameChoiceInt.Name = v.(string) + + } + + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { + + choiceInt.NewVnet.PrimaryIpv4 = v.(string) + + } + + } + + } + + } + + } + workerNodesTypeFound := false if v, ok := d.GetOk("no_worker_nodes"); ok && !workerNodesTypeFound { diff --git a/volterra/resource_auto_volterra_cdn_loadbalancer.go b/volterra/resource_auto_volterra_cdn_loadbalancer.go index 7a4382321..77cd1003b 100644 --- a/volterra/resource_auto_volterra_cdn_loadbalancer.go +++ b/volterra/resource_auto_volterra_cdn_loadbalancer.go @@ -15,11 +15,18 @@ import ( "gopkg.volterra.us/stdlib/client/vesapi" ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_app_firewall "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_firewall" + ves_io_schema_app_type "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_type" ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" + ves_io_schema_rate_limiter "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/rate_limiter" + ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" ves_io_schema_views_cdn_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/cdn_loadbalancer" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" ves_io_schema_views_http_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/http_loadbalancer" ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" + ves_io_schema_views_rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" + ves_io_schema_virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" ) // resourceVolterraCdnLoadbalancer is implementation of Volterra's CdnLoadbalancer resources @@ -1468,181 +1475,347 @@ func resourceVolterraCdnLoadbalancer() *schema.Resource { Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "auth_options": { + "api_protection": { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "custom": { + "api_specification": { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "custom_auth_config": { - Type: schema.TypeString, - Optional: true, - }, - }, - }, - }, - - "disable_auth": { - - Type: schema.TypeBool, - Optional: true, - }, + "api_definition": { - "jwt": { + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, - "backup_key": { + "validation_all_spec_endpoints": { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "blindfold_secret_info_internal": { + "fall_through_mode": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "decryption_provider": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "fall_through_mode_allow": { - "location": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, - "store_provider": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "fall_through_mode_custom": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "open_api_validation_rules": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "action_report": { + + Type: schema.TypeBool, + Optional: true, + }, + + "action_skip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "api_endpoint": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "api_group": { + + Type: schema.TypeString, + Optional: true, + }, + + "base_path": { + + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, }, }, }, }, - "secret_encoding_type": { - Type: schema.TypeString, + "oversized_body_fail_validation": { + + Type: schema.TypeBool, Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", }, - "blindfold_secret_info": { + "oversized_body_skip_validation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "settings": { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "decryption_provider": { - Type: schema.TypeString, + "oversized_body_fail_validation": { + + Type: schema.TypeBool, Optional: true, }, - "location": { - Type: schema.TypeString, - Required: true, + "oversized_body_skip_validation": { + + Type: schema.TypeBool, + Optional: true, }, - "store_provider": { - Type: schema.TypeString, + "property_validation_settings_custom": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "headers": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_additional_headers": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "disallow_additional_headers": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "query_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_additional_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disallow_additional_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "property_validation_settings_default": { + + Type: schema.TypeBool, Optional: true, }, }, }, }, - "clear_secret_info": { + "validation_mode": { Type: schema.TypeSet, - Optional: true, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "provider": { - Type: schema.TypeString, + "response_validation_mode_active": { + + Type: schema.TypeSet, Optional: true, - }, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "url": { - Type: schema.TypeString, - Required: true, - }, - }, - }, - }, + "response_validation_properties": { - "vault_secret_info": { + Type: schema.TypeList, - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, - "key": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "enforcement_block": { - "location": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + Type: schema.TypeBool, + Optional: true, + }, - "provider": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, }, - "secret_encoding": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "skip_response_validation": { + + Type: schema.TypeBool, + Optional: true, }, - "version": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "skip_validation": { + + Type: schema.TypeBool, + Optional: true, }, - }, - }, - }, - "wingman_secret_info": { + "validation_mode_active": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "name": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "request_validation_properties": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "enforcement_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, }, }, }, @@ -1651,146 +1824,395 @@ func resourceVolterraCdnLoadbalancer() *schema.Resource { }, }, - "secret_key": { + "validation_custom_list": { Type: schema.TypeSet, - Required: true, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "blindfold_secret_info_internal": { + "fall_through_mode": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "decryption_provider": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "location": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "fall_through_mode_allow": { - "store_provider": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, - }, - }, - }, - "secret_encoding_type": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "fall_through_mode_custom": { - "blindfold_secret_info": { + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - Type: schema.TypeSet, - Optional: true, + "open_api_validation_rules": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "action_report": { + + Type: schema.TypeBool, + Optional: true, + }, + + "action_skip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "api_endpoint": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "api_group": { + + Type: schema.TypeString, + Optional: true, + }, + + "base_path": { + + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "open_api_validation_rules": { + + Type: schema.TypeList, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "decryption_provider": { - Type: schema.TypeString, + "api_endpoint": { + + Type: schema.TypeSet, Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, }, - "location": { + "api_group": { + Type: schema.TypeString, - Required: true, + Optional: true, }, - "store_provider": { + "base_path": { + Type: schema.TypeString, Optional: true, }, - }, - }, - }, - "clear_secret_info": { + "any_domain": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { - "provider": { Type: schema.TypeString, Optional: true, }, - "url": { - Type: schema.TypeString, + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "validation_mode": { + + Type: schema.TypeSet, Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "response_validation_mode_active": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "response_validation_properties": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "enforcement_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "skip_response_validation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "skip_validation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "validation_mode_active": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "request_validation_properties": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "enforcement_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, }, }, }, - "vault_secret_info": { + "oversized_body_fail_validation": { - Type: schema.TypeSet, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "oversized_body_skip_validation": { + + Type: schema.TypeBool, Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "settings": { + + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "key": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "oversized_body_fail_validation": { - "location": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, - "provider": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "oversized_body_skip_validation": { - "secret_encoding": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, - "version": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - }, - }, - }, + "property_validation_settings_custom": { - "wingman_secret_info": { + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "headers": { - "name": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_additional_headers": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "disallow_additional_headers": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "query_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_additional_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disallow_additional_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "property_validation_settings_default": { + + Type: schema.TypeBool, + Optional: true, }, }, }, @@ -1799,525 +2221,746 @@ func resourceVolterraCdnLoadbalancer() *schema.Resource { }, }, - "bearer_token": { + "validation_disabled": { Type: schema.TypeBool, Optional: true, }, + }, + }, + }, - "cookie": { - - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "api_specification_on_cache_miss": { - "name": { - Type: schema.TypeString, - Required: true, - }, - }, - }, - }, + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "header": { + "api_definition": { Type: schema.TypeSet, - Optional: true, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "name": { Type: schema.TypeString, - Required: true, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, }, }, }, }, - "query_param": { + "validation_all_spec_endpoints": { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "key": { - Type: schema.TypeString, + "fall_through_mode": { + + Type: schema.TypeSet, Required: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "geo_filtering": { + "fall_through_mode_allow": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeBool, + Optional: true, + }, - "allow_list": { + "fall_through_mode_custom": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "country_codes": { + "open_api_validation_rules": { - Type: schema.TypeList, + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - Required: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, + "action_block": { - "invert_match": { - Type: schema.TypeBool, - Optional: true, - }, - }, - }, - }, + Type: schema.TypeBool, + Optional: true, + }, - "block_list": { + "action_report": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeBool, + Optional: true, + }, - "country_codes": { + "action_skip": { - Type: schema.TypeList, + Type: schema.TypeBool, + Optional: true, + }, - Required: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, + "api_endpoint": { - "invert_match": { - Type: schema.TypeBool, - Optional: true, - }, - }, - }, - }, - }, - }, - }, + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "ip_filtering": { + "methods": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeList, - "allow_list": { + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, - "invert_match": { - Type: schema.TypeBool, - Optional: true, - }, + "api_group": { - "ip_prefixes": { + Type: schema.TypeString, + Optional: true, + }, - Type: schema.TypeList, + "base_path": { - Optional: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, - }, - }, - }, + Type: schema.TypeString, + Optional: true, + }, - "block_list": { + "metadata": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "invert_match": { - Type: schema.TypeBool, - Optional: true, - }, + "description": { + Type: schema.TypeString, + Optional: true, + }, - "ip_prefixes": { + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, - Type: schema.TypeList, + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, - Optional: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + "oversized_body_fail_validation": { - "origin_pool": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, - Type: schema.TypeSet, - Required: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "oversized_body_skip_validation": { - "follow_origin_redirect": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, - "more_origin_options": { + "settings": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "disable_byte_range_request": { - Type: schema.TypeBool, - Optional: true, - }, + "oversized_body_fail_validation": { - "websocket_proxy": { - Type: schema.TypeBool, - Optional: true, - }, - }, - }, - }, + Type: schema.TypeBool, + Optional: true, + }, - "origin_request_timeout": { - Type: schema.TypeString, - Optional: true, - }, + "oversized_body_skip_validation": { - "origin_servers": { + Type: schema.TypeBool, + Optional: true, + }, - Type: schema.TypeList, - Required: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "property_validation_settings_custom": { - "public_ip": { + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "headers": { - "ip": { + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - Type: schema.TypeString, - Optional: true, - }, + "allow_additional_headers": { - "ipv6": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, - Type: schema.TypeString, - Optional: true, - }, - }, - }, - }, + "disallow_additional_headers": { - "public_name": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "query_parameters": { - "dns_name": { - Type: schema.TypeString, - Required: true, - }, + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "refresh_interval": { - Type: schema.TypeInt, - Optional: true, - }, - }, - }, - }, + "allow_additional_parameters": { - "port": { - Type: schema.TypeInt, - Optional: true, - }, - }, - }, - }, + Type: schema.TypeBool, + Optional: true, + }, - "public_name": { + "disallow_additional_parameters": { - Type: schema.TypeSet, - Required: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, - "dns_name": { - Type: schema.TypeString, - Required: true, - }, + "property_validation_settings_default": { - "refresh_interval": { - Type: schema.TypeInt, - Optional: true, - }, - }, - }, - }, + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, - "no_tls": { + "validation_mode": { - Type: schema.TypeBool, - Optional: true, - }, + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "use_tls": { + "response_validation_mode_active": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "no_mtls": { + "response_validation_properties": { - Type: schema.TypeBool, - Optional: true, - }, + Type: schema.TypeList, - "use_mtls": { + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "enforcement_block": { - "tls_certificates": { + Type: schema.TypeBool, + Optional: true, + }, - Type: schema.TypeList, - Required: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "enforcement_report": { - "certificate_url": { - Type: schema.TypeString, - Required: true, - }, + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, - "description": { - Type: schema.TypeString, - Optional: true, - }, + "skip_response_validation": { - "custom_hash_algorithms": { + Type: schema.TypeBool, + Optional: true, + }, - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "skip_validation": { - "hash_algorithms": { + Type: schema.TypeBool, + Optional: true, + }, - Type: schema.TypeList, + "validation_mode_active": { - Required: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, - }, - }, - }, + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "disable_ocsp_stapling": { + "request_validation_properties": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{}, - }, - }, + Type: schema.TypeList, - "use_system_defaults": { + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{}, + "enforcement_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, }, }, - "private_key": { + "validation_custom_list": { Type: schema.TypeSet, - Required: true, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "blindfold_secret_info_internal": { + "fall_through_mode": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "decryption_provider": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "fall_through_mode_allow": { - "location": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, - "store_provider": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "fall_through_mode_custom": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "open_api_validation_rules": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "action_report": { + + Type: schema.TypeBool, + Optional: true, + }, + + "action_skip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "api_endpoint": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "api_group": { + + Type: schema.TypeString, + Optional: true, + }, + + "base_path": { + + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, }, }, }, }, - "secret_encoding_type": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "blindfold_secret_info": { + "open_api_validation_rules": { - Type: schema.TypeSet, - Optional: true, + Type: schema.TypeList, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "decryption_provider": { - Type: schema.TypeString, + "api_endpoint": { + + Type: schema.TypeSet, Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, }, - "location": { + "api_group": { + Type: schema.TypeString, - Required: true, + Optional: true, }, - "store_provider": { + "base_path": { + Type: schema.TypeString, Optional: true, }, - }, - }, - }, - "clear_secret_info": { + "any_domain": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { - "provider": { Type: schema.TypeString, Optional: true, }, - "url": { - Type: schema.TypeString, + "metadata": { + + Type: schema.TypeSet, Required: true, - }, - }, - }, - }, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "vault_secret_info": { + "description": { + Type: schema.TypeString, + Optional: true, + }, - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, - "key": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, }, - "location": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "validation_mode": { - "provider": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "secret_encoding": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, + "response_validation_mode_active": { - "version": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "response_validation_properties": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "enforcement_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "skip_response_validation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "skip_validation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "validation_mode_active": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "request_validation_properties": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "enforcement_block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enforcement_report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, }, }, }, - "wingman_secret_info": { + "oversized_body_fail_validation": { - Type: schema.TypeSet, + Type: schema.TypeBool, Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + }, - "name": { - Type: schema.TypeString, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "oversized_body_skip_validation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "settings": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "oversized_body_fail_validation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "oversized_body_skip_validation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "property_validation_settings_custom": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "headers": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_additional_headers": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "disallow_additional_headers": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "query_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_additional_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disallow_additional_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "property_validation_settings_default": { + + Type: schema.TypeBool, + Optional: true, }, }, }, @@ -2325,361 +2968,27458 @@ func resourceVolterraCdnLoadbalancer() *schema.Resource { }, }, }, + + "validation_disabled": { + + Type: schema.TypeBool, + Optional: true, + }, }, }, }, - }, - }, - }, - "use_mtls_obj": { + "disable_api_definition": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + Type: schema.TypeBool, + Optional: true, + }, - "name": { - Type: schema.TypeString, + "api_discovery_on_cache_miss": { + + Type: schema.TypeSet, Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "discovered_api_settings": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + + "disable_learn_from_redirect_traffic": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_learn_from_redirect_traffic": { + + Type: schema.TypeBool, + Optional: true, + }, + + "sensitive_data_detection_rules": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + }, + }, }, - "namespace": { - Type: schema.TypeString, + + "disable_api_discovery": { + + Type: schema.TypeBool, Optional: true, }, - "tenant": { - Type: schema.TypeString, + + "enable_api_discovery": { + + Type: schema.TypeSet, Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "discovered_api_settings": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + + "disable_learn_from_redirect_traffic": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_learn_from_redirect_traffic": { + + Type: schema.TypeBool, + Optional: true, + }, + + "sensitive_data_detection_rules": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + }, + }, }, - }, - }, - }, - "skip_server_verification": { + "api_protection_rules": { - Type: schema.TypeBool, - Optional: true, - }, + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ - "use_server_verification": { + "api_endpoint_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow": { + + Type: schema.TypeBool, + Optional: true, + }, + + "deny": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "api_endpoint_method": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "api_endpoint_path": { + Type: schema.TypeString, + Required: true, + }, + + "client_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_client": { + + Type: schema.TypeBool, + Optional: true, + }, + + "client_selector": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_threat_category_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "asn_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "as_numbers": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeInt, + }, + }, + }, + }, + }, + + "asn_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "asn_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "tls_fingerprint_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "classes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "excluded_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { + + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "request_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "headers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "query_params": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "key": { + Type: schema.TypeString, + Required: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "api_groups_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow": { + + Type: schema.TypeBool, + Optional: true, + }, + + "deny": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "api_group": { + Type: schema.TypeString, + Optional: true, + }, + + "base_path": { + Type: schema.TypeString, + Required: true, + }, + + "client_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_client": { + + Type: schema.TypeBool, + Optional: true, + }, + + "client_selector": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_threat_category_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "asn_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "as_numbers": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeInt, + }, + }, + }, + }, + }, + + "asn_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "asn_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "tls_fingerprint_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "classes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "excluded_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { + + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "request_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "headers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "query_params": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "key": { + Type: schema.TypeString, + Required: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "jwt_validation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "block": { + + Type: schema.TypeBool, + Optional: true, + }, + + "report": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "auth_server_uri": { + + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "jwks": { + + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "jwks_config": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cleartext": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "mandatory_claims": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "claim_names": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "reserved_claims": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "audience": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "audiences": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "audience_disable": { + + Type: schema.TypeBool, + Optional: true, + }, + + "issuer": { + + Type: schema.TypeString, + Optional: true, + }, + + "issuer_disable": { + + Type: schema.TypeBool, + Optional: true, + }, + + "validate_period_disable": { + + Type: schema.TypeBool, + Optional: true, + }, + + "validate_period_enable": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "target": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "all_endpoint": { + + Type: schema.TypeBool, + Optional: true, + }, + + "api_groups": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "api_groups": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "base_paths": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "base_paths": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "token_location": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "bearer_token": { + + Type: schema.TypeBool, + Optional: true, + }, + + "cookie": { + + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "header": { + + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "query_param": { + + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "auth_options": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "custom": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "custom_auth_config": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "disable_auth": { + + Type: schema.TypeBool, + Optional: true, + }, + + "jwt": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "backup_key": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blindfold_secret_info_internal": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "secret_encoding_type": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "blindfold_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + }, + + "location": { + Type: schema.TypeString, + Required: true, + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "clear_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "provider": { + Type: schema.TypeString, + Optional: true, + }, + + "url": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "vault_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "provider": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "secret_encoding": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "version": { + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "wingman_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "secret_key": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blindfold_secret_info_internal": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "secret_encoding_type": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "blindfold_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + }, + + "location": { + Type: schema.TypeString, + Required: true, + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "clear_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "provider": { + Type: schema.TypeString, + Optional: true, + }, + + "url": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "vault_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "provider": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "secret_encoding": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "version": { + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "wingman_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "bearer_token": { + + Type: schema.TypeBool, + Optional: true, + }, + + "cookie": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "header": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "query_param": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "common_security_controls": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blocked_clients": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "bot_skip_processing": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "skip_processing": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "waf_skip_processing": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "actions": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "as_number": { + + Type: schema.TypeInt, + Optional: true, + }, + + "http_header": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "headers": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + + "exact": { + + Type: schema.TypeString, + Optional: true, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + }, + + "regex": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix": { + + Type: schema.TypeString, + Optional: true, + }, + + "user_identifier": { + + Type: schema.TypeString, + Optional: true, + }, + + "expiration_timestamp": { + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "captcha_challenge": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "challenge_on_cache_miss": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "captcha_challenge_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "default_captcha_challenge_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "default_js_challenge_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "js_challenge_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + + "js_script_delay": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "default_mitigation_settings": { + + Type: schema.TypeBool, + Optional: true, + }, + + "malicious_user_mitigation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "enable_challenge": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "captcha_challenge_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "default_captcha_challenge_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "default_js_challenge_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "js_challenge_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + + "js_script_delay": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "default_mitigation_settings": { + + Type: schema.TypeBool, + Optional: true, + }, + + "malicious_user_mitigation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "js_challenge": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + + "js_script_delay": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "no_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "policy_based_challenge": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "captcha_challenge_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "default_captcha_challenge_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "always_enable_captcha_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "always_enable_js_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "no_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "default_js_challenge_parameters": { + + Type: schema.TypeBool, + Optional: true, + }, + + "js_challenge_parameters": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_expiry": { + Type: schema.TypeInt, + Optional: true, + }, + + "custom_page": { + Type: schema.TypeString, + Optional: true, + }, + + "js_script_delay": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "default_mitigation_settings": { + + Type: schema.TypeBool, + Optional: true, + }, + + "malicious_user_mitigation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "rule_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "spec": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "arg_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "any_asn": { + + Type: schema.TypeBool, + Optional: true, + }, + + "asn_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "as_numbers": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeInt, + }, + }, + }, + }, + }, + + "asn_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "asn_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "body_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "disable_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_captcha_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_javascript_challenge": { + + Type: schema.TypeBool, + Optional: true, + }, + + "any_client": { + + Type: schema.TypeBool, + Optional: true, + }, + + "client_name": { + + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "client_name_matcher": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "client_selector": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "cookie_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "domain_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "expiration_timestamp": { + Type: schema.TypeString, + Optional: true, + }, + + "headers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "http_method": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "ip_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "path": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "suffix_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "query_params": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "key": { + Type: schema.TypeString, + Required: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "tls_fingerprint_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "classes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "excluded_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "default_temporary_blocking_parameters": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "temporary_user_blocking": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "custom_page": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "cors_policy": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_credentials": { + Type: schema.TypeBool, + Optional: true, + }, + + "allow_headers": { + Type: schema.TypeString, + Optional: true, + }, + + "allow_methods": { + Type: schema.TypeString, + Optional: true, + }, + + "allow_origin": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "allow_origin_regex": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "disabled": { + Type: schema.TypeBool, + Optional: true, + }, + + "expose_headers": { + Type: schema.TypeString, + Optional: true, + }, + + "max_age": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "maximum_age": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "disable_ip_reputation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_ip_reputation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_reputation_on_cache_miss": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "disable_malicious_user_detection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_malicious_user_detection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "malicious_user_detection_on_cache_miss": { + + Type: schema.TypeBool, + Optional: true, + }, + + "api_rate_limit": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "api_endpoint_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "api_endpoint_method": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "api_endpoint_path": { + Type: schema.TypeString, + Required: true, + }, + + "base_path": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "client_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_client": { + + Type: schema.TypeBool, + Optional: true, + }, + + "client_selector": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_threat_category_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "asn_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "as_numbers": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeInt, + }, + }, + }, + }, + }, + + "asn_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "asn_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "tls_fingerprint_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "classes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "excluded_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { + + Type: schema.TypeString, + Optional: true, + }, + + "inline_rate_limiter": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ref_user_id": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "use_http_lb_user_id": { + + Type: schema.TypeBool, + Optional: true, + }, + + "threshold": { + Type: schema.TypeInt, + Required: true, + }, + + "unit": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "ref_rate_limiter": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "request_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "headers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "query_params": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "key": { + Type: schema.TypeString, + Required: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "bypass_rate_limiting_rules": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "bypass_rate_limiting_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "client_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_client": { + + Type: schema.TypeBool, + Optional: true, + }, + + "client_selector": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_threat_category_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "asn_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "as_numbers": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeInt, + }, + }, + }, + }, + }, + + "asn_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "asn_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "tls_fingerprint_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "classes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "excluded_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "any_url": { + + Type: schema.TypeBool, + Optional: true, + }, + + "api_endpoint": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "path": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "api_groups": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "api_groups": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "base_path": { + + Type: schema.TypeString, + Optional: true, + }, + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { + + Type: schema.TypeString, + Optional: true, + }, + + "request_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "headers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "query_params": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "key": { + Type: schema.TypeString, + Required: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "custom_ip_allowed_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "rate_limiter_allowed_prefixes": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_allowed_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "no_ip_allowed_list": { + + Type: schema.TypeBool, + Optional: true, + }, + + "server_url_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "api_group": { + Type: schema.TypeString, + Optional: true, + }, + + "base_path": { + Type: schema.TypeString, + Required: true, + }, + + "client_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_client": { + + Type: schema.TypeBool, + Optional: true, + }, + + "client_selector": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_threat_category_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip_threat_categories": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "asn_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "as_numbers": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeInt, + }, + }, + }, + }, + }, + + "asn_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "asn_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "tls_fingerprint_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "classes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "excluded_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_domain": { + + Type: schema.TypeString, + Optional: true, + }, + + "inline_rate_limiter": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ref_user_id": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "use_http_lb_user_id": { + + Type: schema.TypeBool, + Optional: true, + }, + + "threshold": { + Type: schema.TypeInt, + Required: true, + }, + + "unit": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "ref_rate_limiter": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "request_matcher": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cookie_matchers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "headers": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "query_params": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "key": { + Type: schema.TypeString, + Required: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "disable_rate_limit": { + + Type: schema.TypeBool, + Optional: true, + }, + + "rate_limit": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "custom_ip_allowed_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "rate_limiter_allowed_prefixes": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_allowed_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "no_ip_allowed_list": { + + Type: schema.TypeBool, + Optional: true, + }, + + "no_policies": { + + Type: schema.TypeBool, + Optional: true, + }, + + "policies": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "policies": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "rate_limiter": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "burst_multiplier": { + Type: schema.TypeInt, + Optional: true, + }, + + "total_number": { + Type: schema.TypeInt, + Required: true, + }, + + "unit": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "active_service_policies": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "policies": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "no_service_policies": { + + Type: schema.TypeBool, + Optional: true, + }, + + "service_policies_from_namespace": { + + Type: schema.TypeBool, + Optional: true, + }, + + "trusted_clients": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "bot_skip_processing": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "skip_processing": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "waf_skip_processing": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "actions": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "as_number": { + + Type: schema.TypeInt, + Optional: true, + }, + + "http_header": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "headers": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + + "exact": { + + Type: schema.TypeString, + Optional: true, + }, + + "presence": { + + Type: schema.TypeBool, + Optional: true, + }, + + "regex": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_prefix": { + + Type: schema.TypeString, + Optional: true, + }, + + "user_identifier": { + + Type: schema.TypeString, + Optional: true, + }, + + "expiration_timestamp": { + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "user_id_client_ip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "user_identification": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "geo_filtering": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "country_codes": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "block_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "country_codes": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ip_filtering": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "block_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + + "web_app_firewall": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "csrf_policy": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "all_load_balancer_domains": { + + Type: schema.TypeBool, + Optional: true, + }, + + "custom_domain_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "domains": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "disabled": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "data_guard_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "apply_data_guard": { + + Type: schema.TypeBool, + Optional: true, + }, + + "skip_data_guard": { + + Type: schema.TypeBool, + Optional: true, + }, + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "exact_value": { + + Type: schema.TypeString, + Optional: true, + }, + + "suffix_value": { + + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "path": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "path": { + + Type: schema.TypeString, + Optional: true, + }, + + "prefix": { + + Type: schema.TypeString, + Optional: true, + }, + + "regex": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "graphql_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "exact_value": { + + Type: schema.TypeString, + Optional: true, + }, + + "suffix_value": { + + Type: schema.TypeString, + Optional: true, + }, + + "exact_path": { + Type: schema.TypeString, + Required: true, + }, + + "graphql_settings": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_introspection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_introspection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "max_batched_queries": { + Type: schema.TypeInt, + Required: true, + }, + + "max_depth": { + Type: schema.TypeInt, + Required: true, + }, + + "max_total_length": { + Type: schema.TypeInt, + Required: true, + }, + + "max_value_length": { + Type: schema.TypeInt, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "policy_name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "method_get": { + + Type: schema.TypeBool, + Optional: true, + }, + + "method_post": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "protected_cookies": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_tampering_protection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_tampering_protection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "add_httponly": { + + Type: schema.TypeBool, + Optional: true, + }, + + "ignore_httponly": { + + Type: schema.TypeBool, + Optional: true, + }, + + "ignore_max_age": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "max_age_value": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + + "ignore_samesite": { + + Type: schema.TypeBool, + Optional: true, + }, + + "samesite_lax": { + + Type: schema.TypeBool, + Optional: true, + }, + + "samesite_none": { + + Type: schema.TypeBool, + Optional: true, + }, + + "samesite_strict": { + + Type: schema.TypeBool, + Optional: true, + }, + + "add_secure": { + + Type: schema.TypeBool, + Optional: true, + }, + + "ignore_secure": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "app_firewall": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "app_firewall_on_cache_miss": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "disable_waf": { + + Type: schema.TypeBool, + Optional: true, + }, + + "waf_exclusion_rules": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "any_domain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "exact_value": { + + Type: schema.TypeString, + Optional: true, + }, + + "suffix_value": { + + Type: schema.TypeString, + Optional: true, + }, + + "expiration_timestamp": { + Type: schema.TypeString, + Optional: true, + }, + + "metadata": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "methods": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "any_path": { + + Type: schema.TypeBool, + Optional: true, + }, + + "path_prefix": { + + Type: schema.TypeString, + Optional: true, + }, + + "path_regex": { + + Type: schema.TypeString, + Optional: true, + }, + + "app_firewall_detection_control": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exclude_attack_type_contexts": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "context": { + Type: schema.TypeString, + Required: true, + }, + + "context_name": { + Type: schema.TypeString, + Optional: true, + }, + + "exclude_attack_type": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "exclude_bot_name_contexts": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "bot_name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "exclude_signature_contexts": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "context": { + Type: schema.TypeString, + Required: true, + }, + + "context_name": { + Type: schema.TypeString, + Optional: true, + }, + + "signature_id": { + Type: schema.TypeInt, + Required: true, + }, + }, + }, + }, + + "exclude_violation_contexts": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "context": { + Type: schema.TypeString, + Required: true, + }, + + "context_name": { + Type: schema.TypeString, + Optional: true, + }, + + "exclude_violation": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "waf_skip_processing": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "origin_pool": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "follow_origin_redirect": { + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "more_origin_options": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_byte_range_request": { + Type: schema.TypeBool, + Optional: true, + }, + + "websocket_proxy": { + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "origin_request_timeout": { + Type: schema.TypeString, + Optional: true, + }, + + "origin_servers": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "public_ip": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + + Type: schema.TypeString, + Optional: true, + }, + + "ipv6": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "public_name": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dns_name": { + Type: schema.TypeString, + Required: true, + }, + + "refresh_interval": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "port": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "public_name": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dns_name": { + Type: schema.TypeString, + Required: true, + }, + + "refresh_interval": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "no_tls": { + + Type: schema.TypeBool, + Optional: true, + }, + + "use_tls": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "no_mtls": { + + Type: schema.TypeBool, + Optional: true, + }, + + "use_mtls": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "tls_certificates": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "certificate_url": { + Type: schema.TypeString, + Required: true, + }, + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "custom_hash_algorithms": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "hash_algorithms": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "disable_ocsp_stapling": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + + "use_system_defaults": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + + "private_key": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blindfold_secret_info_internal": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "secret_encoding_type": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "blindfold_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + }, + + "location": { + Type: schema.TypeString, + Required: true, + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "clear_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "provider": { + Type: schema.TypeString, + Optional: true, + }, + + "url": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "vault_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "provider": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "secret_encoding": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "version": { + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "wingman_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "use_mtls_obj": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "skip_server_verification": { + + Type: schema.TypeBool, + Optional: true, + }, + + "use_server_verification": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "trusted_ca": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "trusted_ca_url": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "volterra_trusted_ca": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disable_sni": { + + Type: schema.TypeBool, + Optional: true, + }, + + "sni": { + + Type: schema.TypeString, + Optional: true, + }, + + "use_host_header_as_sni": { + + Type: schema.TypeBool, + Optional: true, + }, + + "tls_config": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "custom_security": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cipher_suites": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "max_version": { + Type: schema.TypeString, + Optional: true, + }, + + "min_version": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "default_security": { + + Type: schema.TypeBool, + Optional: true, + }, + + "low_security": { + + Type: schema.TypeBool, + Optional: true, + }, + + "medium_security": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + } +} + +// resourceVolterraCdnLoadbalancerCreate creates CdnLoadbalancer resource +func resourceVolterraCdnLoadbalancerCreate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + createMeta := &ves_io_schema.ObjectCreateMetaType{} + createSpec := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType{} + createReq := &ves_io_schema_views_cdn_loadbalancer.CreateRequest{ + Metadata: createMeta, + Spec: createSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + createMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + createMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + createMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + createMeta.Namespace = + v.(string) + } + + //add_location + if v, ok := d.GetOk("add_location"); ok && !isIntfNil(v) { + + createSpec.AddLocation = + v.(bool) + + } + + //domains + if v, ok := d.GetOk("domains"); ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + createSpec.Domains = ls + + } + + //loadbalancer_type + + loadbalancerTypeTypeFound := false + + if v, ok := d.GetOk("http"); ok && !loadbalancerTypeTypeFound { + + loadbalancerTypeTypeFound = true + loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType_Http{} + loadbalancerTypeInt.Http = &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp{} + createSpec.LoadbalancerType = loadbalancerTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["dns_volterra_managed"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.Http.DnsVolterraManaged = v.(bool) + + } + + portChoiceTypeFound := false + + if v, ok := cs["port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_Port{} + + loadbalancerTypeInt.Http.PortChoice = portChoiceInt + + portChoiceInt.Port = uint32(v.(int)) + + } + + if v, ok := cs["port_ranges"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_PortRanges{} + + loadbalancerTypeInt.Http.PortChoice = portChoiceInt + + portChoiceInt.PortRanges = v.(string) + + } + + } + + } + + if v, ok := d.GetOk("https"); ok && !loadbalancerTypeTypeFound { + + loadbalancerTypeTypeFound = true + loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType_Https{} + loadbalancerTypeInt.Https = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSCustomCertsType{} + createSpec.LoadbalancerType = loadbalancerTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.Https.AddHsts = v.(bool) + + } + + if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.Https.HttpRedirect = v.(bool) + + } + + if v, ok := cs["tls_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsParameters := &ves_io_schema_views_cdn_loadbalancer.CDNDownstreamTlsParamsType{} + loadbalancerTypeInt.Https.TlsParameters = tlsParameters + for _, set := range sl { + tlsParametersMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsParametersMapStrToI["tls_certificates"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + tlsCertificates := make([]*ves_io_schema.TlsCertificateType, len(sl)) + tlsParameters.TlsCertificates = tlsCertificates + for i, set := range sl { + tlsCertificates[i] = &ves_io_schema.TlsCertificateType{} + tlsCertificatesMapStrToI := set.(map[string]interface{}) + + if w, ok := tlsCertificatesMapStrToI["certificate_url"]; ok && !isIntfNil(w) { + tlsCertificates[i].CertificateUrl = w.(string) + } + + if w, ok := tlsCertificatesMapStrToI["description"]; ok && !isIntfNil(w) { + tlsCertificates[i].Description = w.(string) + } + + ocspStaplingChoiceTypeFound := false + + if v, ok := tlsCertificatesMapStrToI["custom_hash_algorithms"]; ok && !isIntfNil(v) && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_CustomHashAlgorithms{} + ocspStaplingChoiceInt.CustomHashAlgorithms = &ves_io_schema.HashAlgorithms{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["hash_algorithms"]; ok && !isIntfNil(v) { + + hash_algorithmsList := []ves_io_schema.HashAlgorithm{} + for _, j := range v.([]interface{}) { + hash_algorithmsList = append(hash_algorithmsList, ves_io_schema.HashAlgorithm(ves_io_schema.HashAlgorithm_value[j.(string)])) + } + ocspStaplingChoiceInt.CustomHashAlgorithms.HashAlgorithms = hash_algorithmsList + + } + + } + + } + + if _, ok := tlsCertificatesMapStrToI["disable_ocsp_stapling"]; ok && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_DisableOcspStapling{} + ocspStaplingChoiceInt.DisableOcspStapling = &ves_io_schema.Empty{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + } + + if _, ok := tlsCertificatesMapStrToI["use_system_defaults"]; ok && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_UseSystemDefaults{} + ocspStaplingChoiceInt.UseSystemDefaults = &ves_io_schema.Empty{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + } + + if v, ok := tlsCertificatesMapStrToI["private_key"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + privateKey := &ves_io_schema.SecretType{} + tlsCertificates[i].PrivateKey = privateKey + for _, set := range sl { + privateKeyMapStrToI := set.(map[string]interface{}) + + if v, ok := privateKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + privateKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := privateKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + privateKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := privateKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := tlsParametersMapStrToI["tls_config"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} + tlsParameters.TlsConfig = tlsConfig + for _, set := range sl { + tlsConfigMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} + choiceInt.Tls_11Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} + choiceInt.Tls_12Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := d.GetOk("https_auto_cert"); ok && !loadbalancerTypeTypeFound { + + loadbalancerTypeTypeFound = true + loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType_HttpsAutoCert{} + loadbalancerTypeInt.HttpsAutoCert = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSAutoCertsType{} + createSpec.LoadbalancerType = loadbalancerTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.HttpsAutoCert.AddHsts = v.(bool) + + } + + if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.HttpsAutoCert.HttpRedirect = v.(bool) + + } + + if v, ok := cs["tls_config"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} + loadbalancerTypeInt.HttpsAutoCert.TlsConfig = tlsConfig + for _, set := range sl { + tlsConfigMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} + choiceInt.Tls_11Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} + choiceInt.Tls_12Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + } + + } + + } + + } + + //more_option + if v, ok := d.GetOk("more_option"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + moreOption := &ves_io_schema_views_cdn_loadbalancer.AdvancedOptionsType{} + createSpec.MoreOption = moreOption + for _, set := range sl { + moreOptionMapStrToI := set.(map[string]interface{}) + + if v, ok := moreOptionMapStrToI["cache_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + cacheOptions := &ves_io_schema_views_cdn_loadbalancer.CacheOptions{} + moreOption.CacheOptions = cacheOptions + for _, set := range sl { + cacheOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := cacheOptionsMapStrToI["cache_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cacheRules := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRule, len(sl)) + cacheOptions.CacheRules = cacheRules + for i, set := range sl { + cacheRules[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule{} + cacheRulesMapStrToI := set.(map[string]interface{}) + + cacheActionsTypeFound := false + + if v, ok := cacheRulesMapStrToI["cache_bypass"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + + if v.(bool) { + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{} + cacheActionsInt.CacheBypass = &ves_io_schema.Empty{} + cacheRules[i].CacheActions = cacheActionsInt + } + + } + + if v, ok := cacheRulesMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_EligibleForCache{} + cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions{} + cacheRules[i].CacheActions = cacheActionsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + eligibleForCacheTypeFound := false + + if v, ok := cs["hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_HostnameUri{} + eligibleForCacheInt.HostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.HostnameUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.HostnameUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.HostnameUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_hostname_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameRequestUri{} + eligibleForCacheInt.SchemeHostnameRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameRequestUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameRequestUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameRequestUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUri{} + eligibleForCacheInt.SchemeHostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_hostname_uri_query"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUriQuery{} + eligibleForCacheInt.SchemeHostnameUriQuery = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUriQuery.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUriQuery.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUriQuery.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_proxy_host_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostRequestUri{} + eligibleForCacheInt.SchemeProxyHostRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostRequestUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostRequestUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostRequestUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_proxy_host_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostUri{} + eligibleForCacheInt.SchemeProxyHostUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + } + + } + + if v, ok := cacheRulesMapStrToI["rule_expression_list"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + ruleExpressionList := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList, len(sl)) + cacheRules[i].RuleExpressionList = ruleExpressionList + for i, set := range sl { + ruleExpressionList[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList{} + ruleExpressionListMapStrToI := set.(map[string]interface{}) + + if v, ok := ruleExpressionListMapStrToI["cache_rule_expression"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cacheRuleExpression := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression, len(sl)) + ruleExpressionList[i].CacheRuleExpression = cacheRuleExpression + for i, set := range sl { + cacheRuleExpression[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression{} + cacheRuleExpressionMapStrToI := set.(map[string]interface{}) + + if v, ok := cacheRuleExpressionMapStrToI["cache_headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cacheHeaders := make([]*ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType, len(sl)) + cacheRuleExpression[i].CacheHeaders = cacheHeaders + for i, set := range sl { + cacheHeaders[i] = &ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType{} + cacheHeadersMapStrToI := set.(map[string]interface{}) + + if v, ok := cacheHeadersMapStrToI["name"]; ok && !isIntfNil(v) { + + cacheHeaders[i].Name = ves_io_schema_views_cdn_loadbalancer.HeaderOptions(ves_io_schema_views_cdn_loadbalancer.HeaderOptions_value[v.(string)]) + + } + + if v, ok := cacheHeadersMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + cacheHeaders[i].Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cacheRuleExpressionMapStrToI["cookie_matcher"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatcher := make([]*ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType, len(sl)) + cacheRuleExpression[i].CookieMatcher = cookieMatcher + for i, set := range sl { + cookieMatcher[i] = &ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType{} + cookieMatcherMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatcherMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatcher[i].Name = w.(string) + } + + if v, ok := cookieMatcherMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + cookieMatcher[i].Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cacheRuleExpressionMapStrToI["path_match"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + pathMatch := &ves_io_schema_views_cdn_loadbalancer.CDNPathMatcherType{} + cacheRuleExpression[i].PathMatch = pathMatch + for _, set := range sl { + pathMatchMapStrToI := set.(map[string]interface{}) + + if v, ok := pathMatchMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + pathMatch.Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cacheRuleExpressionMapStrToI["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParameters := make([]*ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType, len(sl)) + cacheRuleExpression[i].QueryParameters = queryParameters + for i, set := range sl { + queryParameters[i] = &ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType{} + queryParametersMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParametersMapStrToI["key"]; ok && !isIntfNil(w) { + queryParameters[i].Key = w.(string) + } + + if v, ok := queryParametersMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + queryParameters[i].Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if w, ok := ruleExpressionListMapStrToI["expression_name"]; ok && !isIntfNil(w) { + ruleExpressionList[i].ExpressionName = w.(string) + } + + } + + } + + if w, ok := cacheRulesMapStrToI["rule_name"]; ok && !isIntfNil(w) { + cacheRules[i].RuleName = w.(string) + } + + } + + } + + if v, ok := cacheOptionsMapStrToI["default_cache_action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + defaultCacheAction := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction{} + cacheOptions.DefaultCacheAction = defaultCacheAction + for _, set := range sl { + defaultCacheActionMapStrToI := set.(map[string]interface{}) + + cacheActionsTypeFound := false + + if v, ok := defaultCacheActionMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + + if v.(bool) { + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheDisabled{} + cacheActionsInt.CacheDisabled = &ves_io_schema.Empty{} + defaultCacheAction.CacheActions = cacheActionsInt + } + + } + + if v, ok := defaultCacheActionMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlDefault{} + + defaultCacheAction.CacheActions = cacheActionsInt + + cacheActionsInt.CacheTtlDefault = v.(string) + + } + + if v, ok := defaultCacheActionMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlOverride{} + + defaultCacheAction.CacheActions = cacheActionsInt + + cacheActionsInt.CacheTtlOverride = v.(string) + + } + + if v, ok := defaultCacheActionMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_EligibleForCache{} + cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.DefaultCacheTTLProps{} + defaultCacheAction.CacheActions = cacheActionsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + cacheActionsInt.EligibleForCache.CacheTtl = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := moreOptionMapStrToI["cache_ttl_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + cacheTtlOptions := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType{} + moreOption.CacheTtlOptions = cacheTtlOptions + for _, set := range sl { + cacheTtlOptionsMapStrToI := set.(map[string]interface{}) + + ttlOptionsTypeFound := false + + if v, ok := cacheTtlOptionsMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + + ttlOptionsTypeFound = true + + if v.(bool) { + ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheDisabled{} + ttlOptionsInt.CacheDisabled = &ves_io_schema.Empty{} + cacheTtlOptions.TtlOptions = ttlOptionsInt + } + + } + + if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + + ttlOptionsTypeFound = true + ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlDefault{} + + cacheTtlOptions.TtlOptions = ttlOptionsInt + + ttlOptionsInt.CacheTtlDefault = v.(string) + + } + + if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + + ttlOptionsTypeFound = true + ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlOverride{} + + cacheTtlOptions.TtlOptions = ttlOptionsInt + + ttlOptionsInt.CacheTtlOverride = v.(string) + + } + + } + + } + + if v, ok := moreOptionMapStrToI["header_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerOptions := &ves_io_schema_views_cdn_loadbalancer.HeaderControlType{} + moreOption.HeaderOptions = headerOptions + for _, set := range sl { + headerOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := headerOptionsMapStrToI["request_headers_to_add"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + requestHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) + headerOptions.RequestHeadersToAdd = requestHeadersToAdd + for i, set := range sl { + requestHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} + requestHeadersToAddMapStrToI := set.(map[string]interface{}) + + if w, ok := requestHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { + requestHeadersToAdd[i].Append = w.(bool) + } + + if w, ok := requestHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { + requestHeadersToAdd[i].Name = w.(string) + } + + valueChoiceTypeFound := false + + if v, ok := requestHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} + valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} + requestHeadersToAdd[i].ValueChoice = valueChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + + valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if v, ok := requestHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + + requestHeadersToAdd[i].ValueChoice = valueChoiceInt + + valueChoiceInt.Value = v.(string) + + } + + } + + } + + if w, ok := headerOptionsMapStrToI["request_headers_to_remove"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + headerOptions.RequestHeadersToRemove = ls + } + + if v, ok := headerOptionsMapStrToI["response_headers_to_add"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + responseHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) + headerOptions.ResponseHeadersToAdd = responseHeadersToAdd + for i, set := range sl { + responseHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} + responseHeadersToAddMapStrToI := set.(map[string]interface{}) + + if w, ok := responseHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { + responseHeadersToAdd[i].Append = w.(bool) + } + + if w, ok := responseHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { + responseHeadersToAdd[i].Name = w.(string) + } + + valueChoiceTypeFound := false + + if v, ok := responseHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} + valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} + responseHeadersToAdd[i].ValueChoice = valueChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + + valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if v, ok := responseHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + + responseHeadersToAdd[i].ValueChoice = valueChoiceInt + + valueChoiceInt.Value = v.(string) + + } + + } + + } + + if w, ok := headerOptionsMapStrToI["response_headers_to_remove"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + headerOptions.ResponseHeadersToRemove = ls + } + + } + + } + + if v, ok := moreOptionMapStrToI["logging_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + loggingOptions := &ves_io_schema_views_cdn_loadbalancer.LoggingOptionsType{} + moreOption.LoggingOptions = loggingOptions + for _, set := range sl { + loggingOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := loggingOptionsMapStrToI["client_log_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} + loggingOptions.ClientLogOptions = clientLogOptions + for _, set := range sl { + clientLogOptionsMapStrToI := set.(map[string]interface{}) + + if w, ok := clientLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + clientLogOptions.HeaderList = ls + } + + } + + } + + if v, ok := loggingOptionsMapStrToI["origin_log_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + originLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} + loggingOptions.OriginLogOptions = originLogOptions + for _, set := range sl { + originLogOptionsMapStrToI := set.(map[string]interface{}) + + if w, ok := originLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + originLogOptions.HeaderList = ls + } + + } + + } + + } + + } + + if v, ok := moreOptionMapStrToI["security_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + securityOptions := &ves_io_schema_views_cdn_loadbalancer.SecurityOptionsType{} + moreOption.SecurityOptions = securityOptions + for _, set := range sl { + securityOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := securityOptionsMapStrToI["api_protection"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiProtection := &ves_io_schema_views_cdn_loadbalancer.ApiProtection{} + securityOptions.ApiProtection = apiProtection + for _, set := range sl { + apiProtectionMapStrToI := set.(map[string]interface{}) + + apiDefinitionChoiceTypeFound := false + + if v, ok := apiProtectionMapStrToI["api_specification"]; ok && !isIntfNil(v) && !apiDefinitionChoiceTypeFound { + + apiDefinitionChoiceTypeFound = true + apiDefinitionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_ApiSpecification{} + apiDefinitionChoiceInt.ApiSpecification = &ves_io_schema_views_common_waf.APISpecificationSettings{} + apiProtection.ApiDefinitionChoice = apiDefinitionChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_definition"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiDefinitionIntNew := &ves_io_schema_views.ObjectRefType{} + apiDefinitionChoiceInt.ApiSpecification.ApiDefinition = apiDefinitionIntNew + + for _, set := range sl { + adMapToStrVal := set.(map[string]interface{}) + if val, ok := adMapToStrVal["name"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Name = val.(string) + } + if val, ok := adMapToStrVal["namespace"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Namespace = val.(string) + } + + if val, ok := adMapToStrVal["tenant"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Tenant = val.(string) + } + } + + } + + validationTargetChoiceTypeFound := false + + if v, ok := cs["validation_all_spec_endpoints"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{} + validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings{} + apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + if v, ok := cs["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_custom_list"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationCustomList{} + validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_common_waf.ValidateApiBySpecRule{} + apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationCustomList.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.OpenApiValidationRule, len(sl)) + validationTargetChoiceInt.ValidationCustomList.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.OpenApiValidationRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + domainChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + openApiValidationRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_SpecificDomain{} + + openApiValidationRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + openApiValidationRules[i].ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationCustomList.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_disabled"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + + if v.(bool) { + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{} + validationTargetChoiceInt.ValidationDisabled = &ves_io_schema.Empty{} + apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["api_specification_on_cache_miss"]; ok && !isIntfNil(v) && !apiDefinitionChoiceTypeFound { + + apiDefinitionChoiceTypeFound = true + apiDefinitionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_ApiSpecificationOnCacheMiss{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss = &ves_io_schema_views_common_waf.APISpecificationSettings{} + apiProtection.ApiDefinitionChoice = apiDefinitionChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_definition"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiDefinitionIntNew := &ves_io_schema_views.ObjectRefType{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ApiDefinition = apiDefinitionIntNew + + for _, set := range sl { + adMapToStrVal := set.(map[string]interface{}) + if val, ok := adMapToStrVal["name"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Name = val.(string) + } + if val, ok := adMapToStrVal["namespace"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Namespace = val.(string) + } + + if val, ok := adMapToStrVal["tenant"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Tenant = val.(string) + } + } + + } + + validationTargetChoiceTypeFound := false + + if v, ok := cs["validation_all_spec_endpoints"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{} + validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + if v, ok := cs["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_custom_list"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationCustomList{} + validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_common_waf.ValidateApiBySpecRule{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationCustomList.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.OpenApiValidationRule, len(sl)) + validationTargetChoiceInt.ValidationCustomList.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.OpenApiValidationRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + domainChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + openApiValidationRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_SpecificDomain{} + + openApiValidationRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + openApiValidationRules[i].ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationCustomList.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_disabled"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + + if v.(bool) { + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{} + validationTargetChoiceInt.ValidationDisabled = &ves_io_schema.Empty{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ValidationTargetChoice = validationTargetChoiceInt + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["disable_api_definition"]; ok && !isIntfNil(v) && !apiDefinitionChoiceTypeFound { + + apiDefinitionChoiceTypeFound = true + + if v.(bool) { + apiDefinitionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDefinition{} + apiDefinitionChoiceInt.DisableApiDefinition = &ves_io_schema.Empty{} + apiProtection.ApiDefinitionChoice = apiDefinitionChoiceInt + } + + } + + apiDiscoveryChoiceTypeFound := false + + if v, ok := apiProtectionMapStrToI["api_discovery_on_cache_miss"]; ok && !isIntfNil(v) && !apiDiscoveryChoiceTypeFound { + + apiDiscoveryChoiceTypeFound = true + apiDiscoveryChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_ApiDiscoveryOnCacheMiss{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} + apiProtection.ApiDiscoveryChoice = apiDiscoveryChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["discovered_api_settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + discoveredApiSettings := &ves_io_schema_app_type.DiscoveredAPISettings{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.DiscoveredApiSettings = discoveredApiSettings + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + learnFromRedirectTrafficTypeFound := false + + if v, ok := cs["disable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["enable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["sensitive_data_detection_rules"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + sensitiveDataDetectionRules := &ves_io_schema_app_type.SensitiveDataDetectionRules{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.SensitiveDataDetectionRules = sensitiveDataDetectionRules + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["disable_api_discovery"]; ok && !isIntfNil(v) && !apiDiscoveryChoiceTypeFound { + + apiDiscoveryChoiceTypeFound = true + + if v.(bool) { + apiDiscoveryChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDiscovery{} + apiDiscoveryChoiceInt.DisableApiDiscovery = &ves_io_schema.Empty{} + apiProtection.ApiDiscoveryChoice = apiDiscoveryChoiceInt + } + + } + + if v, ok := apiProtectionMapStrToI["enable_api_discovery"]; ok && !isIntfNil(v) && !apiDiscoveryChoiceTypeFound { + + apiDiscoveryChoiceTypeFound = true + apiDiscoveryChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_EnableApiDiscovery{} + apiDiscoveryChoiceInt.EnableApiDiscovery = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} + apiProtection.ApiDiscoveryChoice = apiDiscoveryChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["discovered_api_settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + discoveredApiSettings := &ves_io_schema_app_type.DiscoveredAPISettings{} + apiDiscoveryChoiceInt.EnableApiDiscovery.DiscoveredApiSettings = discoveredApiSettings + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + learnFromRedirectTrafficTypeFound := false + + if v, ok := cs["disable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["enable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["sensitive_data_detection_rules"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + sensitiveDataDetectionRules := &ves_io_schema_app_type.SensitiveDataDetectionRules{} + apiDiscoveryChoiceInt.EnableApiDiscovery.SensitiveDataDetectionRules = sensitiveDataDetectionRules + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["api_protection_rules"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiProtectionRules := &ves_io_schema_views_common_waf.APIProtectionRules{} + apiProtection.ApiProtectionRules = apiProtectionRules + for _, set := range sl { + apiProtectionRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiProtectionRulesMapStrToI["api_endpoint_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.APIEndpointProtectionRule, len(sl)) + apiProtectionRules.ApiEndpointRules = apiEndpointRules + for i, set := range sl { + apiEndpointRules[i] = &ves_io_schema_views_common_waf.APIEndpointProtectionRule{} + apiEndpointRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiEndpointRulesMapStrToI["action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} + apiEndpointRules[i].Action = action + for _, set := range sl { + actionMapStrToI := set.(map[string]interface{}) + + actionTypeFound := false + + if v, ok := actionMapStrToI["allow"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} + actionInt.Allow = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + if v, ok := actionMapStrToI["deny"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} + actionInt.Deny = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + } + + } + + if v, ok := apiEndpointRulesMapStrToI["api_endpoint_method"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiEndpointMethod := &ves_io_schema_policy.HttpMethodMatcherType{} + apiEndpointRules[i].ApiEndpointMethod = apiEndpointMethod + for _, set := range sl { + apiEndpointMethodMapStrToI := set.(map[string]interface{}) + + if w, ok := apiEndpointMethodMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + apiEndpointMethod.InvertMatcher = w.(bool) + } + + if v, ok := apiEndpointMethodMapStrToI["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + apiEndpointMethod.Methods = methodsList + + } + + } + + } + + if w, ok := apiEndpointRulesMapStrToI["api_endpoint_path"]; ok && !isIntfNil(w) { + apiEndpointRules[i].ApiEndpointPath = w.(string) + } + + if v, ok := apiEndpointRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + apiEndpointRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + domainChoiceTypeFound := false + + if v, ok := apiEndpointRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + apiEndpointRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_SpecificDomain{} + + apiEndpointRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := apiEndpointRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + apiEndpointRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := apiEndpointRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + apiEndpointRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := apiProtectionRulesMapStrToI["api_groups_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + apiGroupsRules := make([]*ves_io_schema_views_common_waf.APIGroupProtectionRule, len(sl)) + apiProtectionRules.ApiGroupsRules = apiGroupsRules + for i, set := range sl { + apiGroupsRules[i] = &ves_io_schema_views_common_waf.APIGroupProtectionRule{} + apiGroupsRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiGroupsRulesMapStrToI["action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} + apiGroupsRules[i].Action = action + for _, set := range sl { + actionMapStrToI := set.(map[string]interface{}) + + actionTypeFound := false + + if v, ok := actionMapStrToI["allow"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} + actionInt.Allow = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + if v, ok := actionMapStrToI["deny"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} + actionInt.Deny = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + } + + } + + if w, ok := apiGroupsRulesMapStrToI["api_group"]; ok && !isIntfNil(w) { + apiGroupsRules[i].ApiGroup = w.(string) + } + + if w, ok := apiGroupsRulesMapStrToI["base_path"]; ok && !isIntfNil(w) { + apiGroupsRules[i].BasePath = w.(string) + } + + if v, ok := apiGroupsRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + apiGroupsRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + domainChoiceTypeFound := false + + if v, ok := apiGroupsRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + apiGroupsRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := apiGroupsRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_SpecificDomain{} + + apiGroupsRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := apiGroupsRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + apiGroupsRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := apiGroupsRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + apiGroupsRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["jwt_validation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + jwtValidation := &ves_io_schema_views_common_waf.JWTValidation{} + apiProtection.JwtValidation = jwtValidation + for _, set := range sl { + jwtValidationMapStrToI := set.(map[string]interface{}) + + if v, ok := jwtValidationMapStrToI["action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + action := &ves_io_schema.Action{} + jwtValidation.Action = action + for _, set := range sl { + actionMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := actionMapStrToI["block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema.Action_Block{} + actionChoiceInt.Block = &ves_io_schema.Empty{} + action.ActionChoice = actionChoiceInt + } + + } + + if v, ok := actionMapStrToI["report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema.Action_Report{} + actionChoiceInt.Report = &ves_io_schema.Empty{} + action.ActionChoice = actionChoiceInt + } + + } + + } + + } + + jwksConfigurationTypeFound := false + + if v, ok := jwtValidationMapStrToI["auth_server_uri"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { + + jwksConfigurationTypeFound = true + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_AuthServerUri{} + + jwtValidation.JwksConfiguration = jwksConfigurationInt + + jwksConfigurationInt.AuthServerUri = v.(string) + + } + + if v, ok := jwtValidationMapStrToI["jwks"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { + + jwksConfigurationTypeFound = true + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_Jwks{} + + jwtValidation.JwksConfiguration = jwksConfigurationInt + + jwksConfigurationInt.Jwks = v.(string) + + } + + if v, ok := jwtValidationMapStrToI["jwks_config"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { + + jwksConfigurationTypeFound = true + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_JwksConfig{} + jwksConfigurationInt.JwksConfig = &ves_io_schema_views_common_waf.JWKS{} + jwtValidation.JwksConfiguration = jwksConfigurationInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cleartext"]; ok && !isIntfNil(v) { + + jwksConfigurationInt.JwksConfig.Cleartext = v.(string) + + } + + } + + } + + if v, ok := jwtValidationMapStrToI["mandatory_claims"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + mandatoryClaims := &ves_io_schema_views_common_waf.MandatoryClaims{} + jwtValidation.MandatoryClaims = mandatoryClaims + for _, set := range sl { + mandatoryClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := mandatoryClaimsMapStrToI["claim_names"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + mandatoryClaims.ClaimNames = ls + } + + } + + } + + if v, ok := jwtValidationMapStrToI["reserved_claims"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + reservedClaims := &ves_io_schema_views_common_waf.ReservedClaims{} + jwtValidation.ReservedClaims = reservedClaims + for _, set := range sl { + reservedClaimsMapStrToI := set.(map[string]interface{}) + + audienceValidationTypeFound := false + + if v, ok := reservedClaimsMapStrToI["audience"]; ok && !isIntfNil(v) && !audienceValidationTypeFound { + + audienceValidationTypeFound = true + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Audience{} + audienceValidationInt.Audience = &ves_io_schema_views_common_waf.Audiences{} + reservedClaims.AudienceValidation = audienceValidationInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["audiences"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + audienceValidationInt.Audience.Audiences = ls + + } + + } + + } + + if v, ok := reservedClaimsMapStrToI["audience_disable"]; ok && !isIntfNil(v) && !audienceValidationTypeFound { + + audienceValidationTypeFound = true + + if v.(bool) { + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_AudienceDisable{} + audienceValidationInt.AudienceDisable = &ves_io_schema.Empty{} + reservedClaims.AudienceValidation = audienceValidationInt + } + + } + + issuerValidationTypeFound := false + + if v, ok := reservedClaimsMapStrToI["issuer"]; ok && !isIntfNil(v) && !issuerValidationTypeFound { + + issuerValidationTypeFound = true + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Issuer{} + + reservedClaims.IssuerValidation = issuerValidationInt + + issuerValidationInt.Issuer = v.(string) + + } + + if v, ok := reservedClaimsMapStrToI["issuer_disable"]; ok && !isIntfNil(v) && !issuerValidationTypeFound { + + issuerValidationTypeFound = true + + if v.(bool) { + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_IssuerDisable{} + issuerValidationInt.IssuerDisable = &ves_io_schema.Empty{} + reservedClaims.IssuerValidation = issuerValidationInt + } + + } + + validatePeriodTypeFound := false + + if v, ok := reservedClaimsMapStrToI["validate_period_disable"]; ok && !isIntfNil(v) && !validatePeriodTypeFound { + + validatePeriodTypeFound = true + + if v.(bool) { + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodDisable{} + validatePeriodInt.ValidatePeriodDisable = &ves_io_schema.Empty{} + reservedClaims.ValidatePeriod = validatePeriodInt + } + + } + + if v, ok := reservedClaimsMapStrToI["validate_period_enable"]; ok && !isIntfNil(v) && !validatePeriodTypeFound { + + validatePeriodTypeFound = true + + if v.(bool) { + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{} + validatePeriodInt.ValidatePeriodEnable = &ves_io_schema.Empty{} + reservedClaims.ValidatePeriod = validatePeriodInt + } + + } + + } + + } + + if v, ok := jwtValidationMapStrToI["target"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + target := &ves_io_schema_views_common_waf.Target{} + jwtValidation.Target = target + for _, set := range sl { + targetMapStrToI := set.(map[string]interface{}) + + targetTypeFound := false + + if v, ok := targetMapStrToI["all_endpoint"]; ok && !isIntfNil(v) && !targetTypeFound { + + targetTypeFound = true + + if v.(bool) { + targetInt := &ves_io_schema_views_common_waf.Target_AllEndpoint{} + targetInt.AllEndpoint = &ves_io_schema.Empty{} + target.Target = targetInt + } + + } + + if v, ok := targetMapStrToI["api_groups"]; ok && !isIntfNil(v) && !targetTypeFound { + + targetTypeFound = true + targetInt := &ves_io_schema_views_common_waf.Target_ApiGroups{} + targetInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} + target.Target = targetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_groups"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + targetInt.ApiGroups.ApiGroups = ls + + } + + } + + } + + if v, ok := targetMapStrToI["base_paths"]; ok && !isIntfNil(v) && !targetTypeFound { + + targetTypeFound = true + targetInt := &ves_io_schema_views_common_waf.Target_BasePaths{} + targetInt.BasePaths = &ves_io_schema_views_common_waf.BasePathsType{} + target.Target = targetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["base_paths"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + targetInt.BasePaths.BasePaths = ls + + } + + } + + } + + } + + } + + if v, ok := jwtValidationMapStrToI["token_location"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tokenLocation := &ves_io_schema_views_common_waf.TokenLocation{} + jwtValidation.TokenLocation = tokenLocation + for _, set := range sl { + tokenLocationMapStrToI := set.(map[string]interface{}) + + tokenLocationTypeFound := false + + if v, ok := tokenLocationMapStrToI["bearer_token"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { + + tokenLocationTypeFound = true + + if v.(bool) { + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_BearerToken{} + tokenLocationInt.BearerToken = &ves_io_schema.Empty{} + tokenLocation.TokenLocation = tokenLocationInt + } + + } + + if v, ok := tokenLocationMapStrToI["cookie"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { + + tokenLocationTypeFound = true + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Cookie{} + + tokenLocation.TokenLocation = tokenLocationInt + + tokenLocationInt.Cookie = v.(string) + + } + + if v, ok := tokenLocationMapStrToI["header"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { + + tokenLocationTypeFound = true + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Header{} + + tokenLocation.TokenLocation = tokenLocationInt + + tokenLocationInt.Header = v.(string) + + } + + if v, ok := tokenLocationMapStrToI["query_param"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { + + tokenLocationTypeFound = true + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_QueryParam{} + + tokenLocation.TokenLocation = tokenLocationInt + + tokenLocationInt.QueryParam = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := securityOptionsMapStrToI["auth_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + authOptions := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions{} + securityOptions.AuthOptions = authOptions + for _, set := range sl { + authOptionsMapStrToI := set.(map[string]interface{}) + + authOptionsTypeFound := false + + if v, ok := authOptionsMapStrToI["custom"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + + authOptionsTypeFound = true + authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Custom{} + authOptionsInt.Custom = &ves_io_schema_views_cdn_loadbalancer.CDNCustomAuthentication{} + authOptions.AuthOptions = authOptionsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["custom_auth_config"]; ok && !isIntfNil(v) { + + authOptionsInt.Custom.CustomAuthConfig = v.(string) + + } + + } + + } + + if v, ok := authOptionsMapStrToI["disable_auth"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + + authOptionsTypeFound = true + + if v.(bool) { + authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_DisableAuth{} + authOptionsInt.DisableAuth = &ves_io_schema.Empty{} + authOptions.AuthOptions = authOptionsInt + } + + } + + if v, ok := authOptionsMapStrToI["jwt"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + + authOptionsTypeFound = true + authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Jwt{} + authOptionsInt.Jwt = &ves_io_schema_policy.JwtTokenAuthOptions{} + authOptions.AuthOptions = authOptionsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["backup_key"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + backupKey := &ves_io_schema.SecretType{} + authOptionsInt.Jwt.BackupKey = backupKey + for _, set := range sl { + backupKeyMapStrToI := set.(map[string]interface{}) + + if v, ok := backupKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + backupKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := backupKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + backupKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := backupKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := backupKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := backupKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := backupKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cs["secret_key"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + secretKey := &ves_io_schema.SecretType{} + authOptionsInt.Jwt.SecretKey = secretKey + for _, set := range sl { + secretKeyMapStrToI := set.(map[string]interface{}) + + if v, ok := secretKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + secretKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := secretKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + secretKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := secretKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := secretKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := secretKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := secretKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + tokenSourceTypeFound := false + + if v, ok := cs["bearer_token"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + + tokenSourceTypeFound = true + + if v.(bool) { + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_BearerToken{} + tokenSourceInt.BearerToken = &ves_io_schema.Empty{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt + } + + } + + if v, ok := cs["cookie"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + + tokenSourceTypeFound = true + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Cookie{} + tokenSourceInt.Cookie = &ves_io_schema_policy.HttpCookieName{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + tokenSourceInt.Cookie.Name = v.(string) + + } + + } + + } + + if v, ok := cs["header"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + + tokenSourceTypeFound = true + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Header{} + tokenSourceInt.Header = &ves_io_schema_policy.HttpHeaderName{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + tokenSourceInt.Header.Name = v.(string) + + } + + } + + } + + if v, ok := cs["query_param"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + + tokenSourceTypeFound = true + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_QueryParam{} + tokenSourceInt.QueryParam = &ves_io_schema_policy.HttpQueryParameterName{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + tokenSourceInt.QueryParam.Key = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := securityOptionsMapStrToI["common_security_controls"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + commonSecurityControls := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls{} + securityOptions.CommonSecurityControls = commonSecurityControls + for _, set := range sl { + commonSecurityControlsMapStrToI := set.(map[string]interface{}) + + if v, ok := commonSecurityControlsMapStrToI["blocked_clients"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + blockedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) + commonSecurityControls.BlockedClients = blockedClients + for i, set := range sl { + blockedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} + blockedClientsMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := blockedClientsMapStrToI["bot_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} + blockedClients[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := blockedClientsMapStrToI["skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} + blockedClients[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := blockedClientsMapStrToI["waf_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} + blockedClients[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := blockedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { + + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} + for _, j := range v.([]interface{}) { + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) + } + blockedClients[i].Actions = actionsList + + } + + clientSourceChoiceTypeFound := false + + if v, ok := blockedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} + + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.AsNumber = uint32(v.(int)) + + } + + if v, ok := blockedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema.HeaderMatcherType, len(sl)) + clientSourceChoiceInt.HttpHeader.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_match"]; ok && !isIntfNil(w) { + headers[i].InvertMatch = w.(bool) + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + valueMatchTypeFound := false + + if v, ok := headersMapStrToI["exact"]; ok && !isIntfNil(v) && !valueMatchTypeFound { + + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Exact{} + + headers[i].ValueMatch = valueMatchInt + + valueMatchInt.Exact = v.(string) + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !valueMatchTypeFound { + + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Presence{} + + headers[i].ValueMatch = valueMatchInt + + valueMatchInt.Presence = v.(bool) + + } + + if v, ok := headersMapStrToI["regex"]; ok && !isIntfNil(v) && !valueMatchTypeFound { + + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Regex{} + + headers[i].ValueMatch = valueMatchInt + + valueMatchInt.Regex = v.(string) + + } + + } + + } + + } + + } + + if v, ok := blockedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} + + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.IpPrefix = v.(string) + + } + + if v, ok := blockedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} + + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.UserIdentifier = v.(string) + + } + + if w, ok := blockedClientsMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + blockedClients[i].ExpirationTimestamp = ts + } + + if v, ok := blockedClientsMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + blockedClients[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + challengeTypeTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["captcha_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { + + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_CaptchaChallenge{} + challengeTypeInt.CaptchaChallenge = &ves_io_schema_virtual_host.CaptchaChallengeType{} + commonSecurityControls.ChallengeType = challengeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + challengeTypeInt.CaptchaChallenge.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + challengeTypeInt.CaptchaChallenge.CustomPage = v.(string) + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["challenge_on_cache_miss"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { + + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ChallengeOnCacheMiss{} + challengeTypeInt.ChallengeOnCacheMiss = &ves_io_schema_views_common_waf.EnableChallenge{} + commonSecurityControls.ChallengeType = challengeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + captchaChallengeParametersChoiceTypeFound := false + + if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { + + captchaChallengeParametersChoiceTypeFound = true + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} + challengeTypeInt.ChallengeOnCacheMiss.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CustomPage = v.(string) + + } + + } + + } + + if v, ok := cs["default_captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { + + captchaChallengeParametersChoiceTypeFound = true + + if v.(bool) { + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.ChallengeOnCacheMiss.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + } + + } + + jsChallengeParametersChoiceTypeFound := false + + if v, ok := cs["default_js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + + if v.(bool) { + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.ChallengeOnCacheMiss.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + } + + } + + if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} + challengeTypeInt.ChallengeOnCacheMiss.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CustomPage = v.(string) + + } + + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.JsScriptDelay = uint32(v.(int)) + + } + + } + + } + + maliciousUserMitigationChoiceTypeFound := false + + if v, ok := cs["default_mitigation_settings"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { + + maliciousUserMitigationChoiceTypeFound = true + + if v.(bool) { + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} + challengeTypeInt.ChallengeOnCacheMiss.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + } + + } + + if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { + + maliciousUserMitigationChoiceTypeFound = true + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} + challengeTypeInt.ChallengeOnCacheMiss.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Tenant = v.(string) + + } + + } + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["enable_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { + + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_EnableChallenge{} + challengeTypeInt.EnableChallenge = &ves_io_schema_views_common_waf.EnableChallenge{} + commonSecurityControls.ChallengeType = challengeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + captchaChallengeParametersChoiceTypeFound := false + + if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { + + captchaChallengeParametersChoiceTypeFound = true + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} + challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CustomPage = v.(string) + + } + + } + + } + + if v, ok := cs["default_captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { + + captchaChallengeParametersChoiceTypeFound = true + + if v.(bool) { + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + } + + } + + jsChallengeParametersChoiceTypeFound := false + + if v, ok := cs["default_js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + + if v.(bool) { + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + } + + } + + if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} + challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CustomPage = v.(string) + + } + + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.JsScriptDelay = uint32(v.(int)) + + } + + } + + } + + maliciousUserMitigationChoiceTypeFound := false + + if v, ok := cs["default_mitigation_settings"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { + + maliciousUserMitigationChoiceTypeFound = true + + if v.(bool) { + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} + challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + } + + } + + if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { + + maliciousUserMitigationChoiceTypeFound = true + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} + challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Tenant = v.(string) + + } + + } + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["js_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { + + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_JsChallenge{} + challengeTypeInt.JsChallenge = &ves_io_schema_virtual_host.JavascriptChallengeType{} + commonSecurityControls.ChallengeType = challengeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + challengeTypeInt.JsChallenge.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + challengeTypeInt.JsChallenge.CustomPage = v.(string) + + } + + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { + + challengeTypeInt.JsChallenge.JsScriptDelay = uint32(v.(int)) + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["no_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { + + challengeTypeTypeFound = true + + if v.(bool) { + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoChallenge{} + challengeTypeInt.NoChallenge = &ves_io_schema.Empty{} + commonSecurityControls.ChallengeType = challengeTypeInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["policy_based_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { + + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_PolicyBasedChallenge{} + challengeTypeInt.PolicyBasedChallenge = &ves_io_schema_views_common_waf.PolicyBasedChallenge{} + commonSecurityControls.ChallengeType = challengeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + captchaChallengeParametersChoiceTypeFound := false + + if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { + + captchaChallengeParametersChoiceTypeFound = true + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} + challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CustomPage = v.(string) + + } + + } + + } + + if v, ok := cs["default_captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { + + captchaChallengeParametersChoiceTypeFound = true + + if v.(bool) { + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + } + + } + + challengeChoiceTypeFound := false + + if v, ok := cs["always_enable_captcha_challenge"]; ok && !isIntfNil(v) && !challengeChoiceTypeFound { + + challengeChoiceTypeFound = true + + if v.(bool) { + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{} + challengeChoiceInt.AlwaysEnableCaptchaChallenge = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt + } + + } + + if v, ok := cs["always_enable_js_challenge"]; ok && !isIntfNil(v) && !challengeChoiceTypeFound { + + challengeChoiceTypeFound = true + + if v.(bool) { + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableJsChallenge{} + challengeChoiceInt.AlwaysEnableJsChallenge = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt + } + + } + + if v, ok := cs["no_challenge"]; ok && !isIntfNil(v) && !challengeChoiceTypeFound { + + challengeChoiceTypeFound = true + + if v.(bool) { + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{} + challengeChoiceInt.NoChallenge = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt + } + + } + + jsChallengeParametersChoiceTypeFound := false + + if v, ok := cs["default_js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + + if v.(bool) { + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + } + + } + + if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} + challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CustomPage = v.(string) + + } + + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.JsScriptDelay = uint32(v.(int)) + + } + + } + + } + + maliciousUserMitigationChoiceTypeFound := false + + if v, ok := cs["default_mitigation_settings"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { + + maliciousUserMitigationChoiceTypeFound = true + + if v.(bool) { + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + } + + } + + if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { + + maliciousUserMitigationChoiceTypeFound = true + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} + challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Tenant = v.(string) + + } + + } + + } + + if v, ok := cs["rule_list"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + ruleList := &ves_io_schema_views_common_waf.ChallengeRuleList{} + challengeTypeInt.PolicyBasedChallenge.RuleList = ruleList + for _, set := range sl { + ruleListMapStrToI := set.(map[string]interface{}) + + if v, ok := ruleListMapStrToI["rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rules := make([]*ves_io_schema_views_common_waf.ChallengeRule, len(sl)) + ruleList.Rules = rules + for i, set := range sl { + rules[i] = &ves_io_schema_views_common_waf.ChallengeRule{} + rulesMapStrToI := set.(map[string]interface{}) + + if v, ok := rulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + rules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := rulesMapStrToI["spec"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + spec := &ves_io_schema_service_policy_rule.ChallengeRuleSpec{} + rules[i].Spec = spec + for _, set := range sl { + specMapStrToI := set.(map[string]interface{}) + + if v, ok := specMapStrToI["arg_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + argMatchers := make([]*ves_io_schema_policy.ArgMatcherType, len(sl)) + spec.ArgMatchers = argMatchers + for i, set := range sl { + argMatchers[i] = &ves_io_schema_policy.ArgMatcherType{} + argMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := argMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + argMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := argMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.ArgMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + argMatchers[i].Match = matchInt + } + + } + + if v, ok := argMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.ArgMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + argMatchers[i].Match = matchInt + } + + } + + if v, ok := argMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.ArgMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + argMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := argMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.ArgMatcherType_Presence{} + + argMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := argMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + argMatchers[i].Name = w.(string) + } + + } + + } + + asnChoiceTypeFound := false + + if v, ok := specMapStrToI["any_asn"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { + + asnChoiceTypeFound = true + + if v.(bool) { + asnChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AnyAsn{} + asnChoiceInt.AnyAsn = &ves_io_schema.Empty{} + spec.AsnChoice = asnChoiceInt + } + + } + + if v, ok := specMapStrToI["asn_list"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { + + asnChoiceTypeFound = true + asnChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AsnList{} + asnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + spec.AsnChoice = asnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + asnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := specMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { + + asnChoiceTypeFound = true + asnChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AsnMatcher{} + asnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + spec.AsnChoice = asnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + asnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := specMapStrToI["body_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + bodyMatcher := &ves_io_schema_policy.MatcherType{} + spec.BodyMatcher = bodyMatcher + for _, set := range sl { + bodyMatcherMapStrToI := set.(map[string]interface{}) + + if w, ok := bodyMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + bodyMatcher.ExactValues = ls + } + + if w, ok := bodyMatcherMapStrToI["regex_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + bodyMatcher.RegexValues = ls + } + + if v, ok := bodyMatcherMapStrToI["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + bodyMatcher.Transformers = transformersList + + } + + } + + } + + challengeActionTypeFound := false + + if v, ok := specMapStrToI["disable_challenge"]; ok && !isIntfNil(v) && !challengeActionTypeFound { + + challengeActionTypeFound = true + + if v.(bool) { + challengeActionInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_DisableChallenge{} + challengeActionInt.DisableChallenge = &ves_io_schema.Empty{} + spec.ChallengeAction = challengeActionInt + } + + } + + if v, ok := specMapStrToI["enable_captcha_challenge"]; ok && !isIntfNil(v) && !challengeActionTypeFound { + + challengeActionTypeFound = true + + if v.(bool) { + challengeActionInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_EnableCaptchaChallenge{} + challengeActionInt.EnableCaptchaChallenge = &ves_io_schema.Empty{} + spec.ChallengeAction = challengeActionInt + } + + } + + if v, ok := specMapStrToI["enable_javascript_challenge"]; ok && !isIntfNil(v) && !challengeActionTypeFound { + + challengeActionTypeFound = true + + if v.(bool) { + challengeActionInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_EnableJavascriptChallenge{} + challengeActionInt.EnableJavascriptChallenge = &ves_io_schema.Empty{} + spec.ChallengeAction = challengeActionInt + } + + } + + clientChoiceTypeFound := false + + if v, ok := specMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + spec.ClientChoice = clientChoiceInt + } + + } + + if v, ok := specMapStrToI["client_name"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_ClientName{} + + spec.ClientChoice = clientChoiceInt + + clientChoiceInt.ClientName = v.(string) + + } + + if v, ok := specMapStrToI["client_name_matcher"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_ClientNameMatcher{} + clientChoiceInt.ClientNameMatcher = &ves_io_schema_policy.MatcherType{} + spec.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientNameMatcher.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientNameMatcher.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + clientChoiceInt.ClientNameMatcher.Transformers = transformersList + + } + + } + + } + + if v, ok := specMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + spec.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := specMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + spec.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := specMapStrToI["domain_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + domainMatcher := &ves_io_schema_policy.MatcherTypeBasic{} + spec.DomainMatcher = domainMatcher + for _, set := range sl { + domainMatcherMapStrToI := set.(map[string]interface{}) + + if w, ok := domainMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + domainMatcher.ExactValues = ls + } + + if w, ok := domainMatcherMapStrToI["regex_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + domainMatcher.RegexValues = ls + } + + } + + } + + if w, ok := specMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + spec.ExpirationTimestamp = ts + } + + if v, ok := specMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + spec.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := specMapStrToI["http_method"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + httpMethod := &ves_io_schema_policy.HttpMethodMatcherType{} + spec.HttpMethod = httpMethod + for _, set := range sl { + httpMethodMapStrToI := set.(map[string]interface{}) + + if w, ok := httpMethodMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + httpMethod.InvertMatcher = w.(bool) + } + + if v, ok := httpMethodMapStrToI["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + httpMethod.Methods = methodsList + + } + + } + + } + + ipChoiceTypeFound := false + + if v, ok := specMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipChoiceTypeFound { + + ipChoiceTypeFound = true + + if v.(bool) { + ipChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AnyIp{} + ipChoiceInt.AnyIp = &ves_io_schema.Empty{} + spec.IpChoice = ipChoiceInt + } + + } + + if v, ok := specMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipChoiceTypeFound { + + ipChoiceTypeFound = true + ipChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_IpMatcher{} + ipChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + spec.IpChoice = ipChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := specMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipChoiceTypeFound { + + ipChoiceTypeFound = true + ipChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_IpPrefixList{} + ipChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + spec.IpChoice = ipChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := specMapStrToI["path"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + path := &ves_io_schema_policy.PathMatcherType{} + spec.Path = path + for _, set := range sl { + pathMapStrToI := set.(map[string]interface{}) + + if w, ok := pathMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.ExactValues = ls + } + + if w, ok := pathMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + path.InvertMatcher = w.(bool) + } + + if w, ok := pathMapStrToI["prefix_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.PrefixValues = ls + } + + if w, ok := pathMapStrToI["regex_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.RegexValues = ls + } + + if w, ok := pathMapStrToI["suffix_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.SuffixValues = ls + } + + if v, ok := pathMapStrToI["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + path.Transformers = transformersList + + } + + } + + } + + if v, ok := specMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + spec.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + if v, ok := specMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + spec.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + } + + } + + } + + } + + temporaryBlockingParametersChoiceTypeFound := false + + if v, ok := cs["default_temporary_blocking_parameters"]; ok && !isIntfNil(v) && !temporaryBlockingParametersChoiceTypeFound { + + temporaryBlockingParametersChoiceTypeFound = true + + if v.(bool) { + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{} + temporaryBlockingParametersChoiceInt.DefaultTemporaryBlockingParameters = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt + } + + } + + if v, ok := cs["temporary_user_blocking"]; ok && !isIntfNil(v) && !temporaryBlockingParametersChoiceTypeFound { + + temporaryBlockingParametersChoiceTypeFound = true + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_TemporaryUserBlocking{} + temporaryBlockingParametersChoiceInt.TemporaryUserBlocking = &ves_io_schema_virtual_host.TemporaryUserBlockingType{} + challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + temporaryBlockingParametersChoiceInt.TemporaryUserBlocking.CustomPage = v.(string) + + } + + } + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["cors_policy"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + corsPolicy := &ves_io_schema.CorsPolicy{} + commonSecurityControls.CorsPolicy = corsPolicy + for _, set := range sl { + corsPolicyMapStrToI := set.(map[string]interface{}) + + if w, ok := corsPolicyMapStrToI["allow_credentials"]; ok && !isIntfNil(w) { + corsPolicy.AllowCredentials = w.(bool) + } + + if w, ok := corsPolicyMapStrToI["allow_headers"]; ok && !isIntfNil(w) { + corsPolicy.AllowHeaders = w.(string) + } + + if w, ok := corsPolicyMapStrToI["allow_methods"]; ok && !isIntfNil(w) { + corsPolicy.AllowMethods = w.(string) + } + + if w, ok := corsPolicyMapStrToI["allow_origin"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + corsPolicy.AllowOrigin = ls + } + + if w, ok := corsPolicyMapStrToI["allow_origin_regex"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + corsPolicy.AllowOriginRegex = ls + } + + if w, ok := corsPolicyMapStrToI["disabled"]; ok && !isIntfNil(w) { + corsPolicy.Disabled = w.(bool) + } + + if w, ok := corsPolicyMapStrToI["expose_headers"]; ok && !isIntfNil(w) { + corsPolicy.ExposeHeaders = w.(string) + } + + if w, ok := corsPolicyMapStrToI["max_age"]; ok && !isIntfNil(w) { + corsPolicy.MaxAge = w.(string) + } + + if w, ok := corsPolicyMapStrToI["maximum_age"]; ok && !isIntfNil(w) { + corsPolicy.MaximumAge = int32(w.(int)) + } + + } + + } + + ipReputationChoiceTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["disable_ip_reputation"]; ok && !isIntfNil(v) && !ipReputationChoiceTypeFound { + + ipReputationChoiceTypeFound = true + + if v.(bool) { + ipReputationChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableIpReputation{} + ipReputationChoiceInt.DisableIpReputation = &ves_io_schema.Empty{} + commonSecurityControls.IpReputationChoice = ipReputationChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["enable_ip_reputation"]; ok && !isIntfNil(v) && !ipReputationChoiceTypeFound { + + ipReputationChoiceTypeFound = true + ipReputationChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_EnableIpReputation{} + ipReputationChoiceInt.EnableIpReputation = &ves_io_schema_views_common_waf.IPThreatCategoryListType{} + commonSecurityControls.IpReputationChoice = ipReputationChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + ipReputationChoiceInt.EnableIpReputation.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["ip_reputation_on_cache_miss"]; ok && !isIntfNil(v) && !ipReputationChoiceTypeFound { + + ipReputationChoiceTypeFound = true + ipReputationChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_IpReputationOnCacheMiss{} + ipReputationChoiceInt.IpReputationOnCacheMiss = &ves_io_schema_views_common_waf.IPThreatCategoryListType{} + commonSecurityControls.IpReputationChoice = ipReputationChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + ipReputationChoiceInt.IpReputationOnCacheMiss.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + maliciousUserDetectionChoiceTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["disable_malicious_user_detection"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { + + maliciousUserDetectionChoiceTypeFound = true + + if v.(bool) { + maliciousUserDetectionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{} + maliciousUserDetectionChoiceInt.DisableMaliciousUserDetection = &ves_io_schema.Empty{} + commonSecurityControls.MaliciousUserDetectionChoice = maliciousUserDetectionChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["enable_malicious_user_detection"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { + + maliciousUserDetectionChoiceTypeFound = true + + if v.(bool) { + maliciousUserDetectionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_EnableMaliciousUserDetection{} + maliciousUserDetectionChoiceInt.EnableMaliciousUserDetection = &ves_io_schema.Empty{} + commonSecurityControls.MaliciousUserDetectionChoice = maliciousUserDetectionChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["malicious_user_detection_on_cache_miss"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { + + maliciousUserDetectionChoiceTypeFound = true + + if v.(bool) { + maliciousUserDetectionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_MaliciousUserDetectionOnCacheMiss{} + maliciousUserDetectionChoiceInt.MaliciousUserDetectionOnCacheMiss = &ves_io_schema.Empty{} + commonSecurityControls.MaliciousUserDetectionChoice = maliciousUserDetectionChoiceInt + } + + } + + rateLimitChoiceTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["api_rate_limit"]; ok && !isIntfNil(v) && !rateLimitChoiceTypeFound { + + rateLimitChoiceTypeFound = true + rateLimitChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ApiRateLimit{} + rateLimitChoiceInt.ApiRateLimit = &ves_io_schema_views_common_waf.APIRateLimit{} + commonSecurityControls.RateLimitChoice = rateLimitChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_endpoint_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.ApiEndpointRule, len(sl)) + rateLimitChoiceInt.ApiRateLimit.ApiEndpointRules = apiEndpointRules + for i, set := range sl { + apiEndpointRules[i] = &ves_io_schema_views_common_waf.ApiEndpointRule{} + apiEndpointRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiEndpointRulesMapStrToI["api_endpoint_method"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiEndpointMethod := &ves_io_schema_policy.HttpMethodMatcherType{} + apiEndpointRules[i].ApiEndpointMethod = apiEndpointMethod + for _, set := range sl { + apiEndpointMethodMapStrToI := set.(map[string]interface{}) + + if w, ok := apiEndpointMethodMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + apiEndpointMethod.InvertMatcher = w.(bool) + } + + if v, ok := apiEndpointMethodMapStrToI["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + apiEndpointMethod.Methods = methodsList + + } + + } + + } + + if w, ok := apiEndpointRulesMapStrToI["api_endpoint_path"]; ok && !isIntfNil(w) { + apiEndpointRules[i].ApiEndpointPath = w.(string) + } + + if w, ok := apiEndpointRulesMapStrToI["base_path"]; ok && !isIntfNil(w) { + apiEndpointRules[i].BasePath = w.(string) + } + + if v, ok := apiEndpointRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + apiEndpointRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + domainChoiceTypeFound := false + + if v, ok := apiEndpointRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + apiEndpointRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_SpecificDomain{} + + apiEndpointRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + rateLimiterChoiceTypeFound := false + + if v, ok := apiEndpointRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { + + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} + apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + countByChoiceTypeFound := false + + if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { + + countByChoiceTypeFound = true + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} + countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + countByChoiceInt.RefUserId.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + countByChoiceInt.RefUserId.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + countByChoiceInt.RefUserId.Tenant = v.(string) + + } + + } + + } + + if v, ok := cs["use_http_lb_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { + + countByChoiceTypeFound = true + + if v.(bool) { + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt + } + + } + + if v, ok := cs["threshold"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.InlineRateLimiter.Threshold = uint32(v.(int)) + + } + + if v, ok := cs["unit"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.InlineRateLimiter.Unit = ves_io_schema_rate_limiter.RateLimitPeriodUnit(ves_io_schema_rate_limiter.RateLimitPeriodUnit_value[v.(string)]) + + } + + } + + } + + if v, ok := apiEndpointRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { + + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_RefRateLimiter{} + rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} + apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.RefRateLimiter.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.RefRateLimiter.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.RefRateLimiter.Tenant = v.(string) + + } + + } + + } + + if v, ok := apiEndpointRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + apiEndpointRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + ipAllowedListChoiceTypeFound := false + + if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_BypassRateLimitingRules{} + ipAllowedListChoiceInt.BypassRateLimitingRules = &ves_io_schema_views_common_waf.BypassRateLimitingRules{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + bypassRateLimitingRules := make([]*ves_io_schema_views_common_waf.BypassRateLimitingRule, len(sl)) + ipAllowedListChoiceInt.BypassRateLimitingRules.BypassRateLimitingRules = bypassRateLimitingRules + for i, set := range sl { + bypassRateLimitingRules[i] = &ves_io_schema_views_common_waf.BypassRateLimitingRule{} + bypassRateLimitingRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := bypassRateLimitingRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + bypassRateLimitingRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + destinationTypeTypeFound := false + + if v, ok := bypassRateLimitingRulesMapStrToI["any_url"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { + + destinationTypeTypeFound = true + + if v.(bool) { + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{} + destinationTypeInt.AnyUrl = &ves_io_schema.Empty{} + bypassRateLimitingRules[i].DestinationType = destinationTypeInt + } + + } + + if v, ok := bypassRateLimitingRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { + + destinationTypeTypeFound = true + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiEndpoint{} + destinationTypeInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + bypassRateLimitingRules[i].DestinationType = destinationTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + destinationTypeInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + destinationTypeInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := bypassRateLimitingRulesMapStrToI["api_groups"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { + + destinationTypeTypeFound = true + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiGroups{} + destinationTypeInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} + bypassRateLimitingRules[i].DestinationType = destinationTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_groups"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + destinationTypeInt.ApiGroups.ApiGroups = ls + + } + + } + + } + + if v, ok := bypassRateLimitingRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { + + destinationTypeTypeFound = true + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_BasePath{} + + bypassRateLimitingRules[i].DestinationType = destinationTypeInt + + destinationTypeInt.BasePath = v.(string) + + } + + domainChoiceTypeFound := false + + if v, ok := bypassRateLimitingRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + bypassRateLimitingRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := bypassRateLimitingRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_SpecificDomain{} + + bypassRateLimitingRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := bypassRateLimitingRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + bypassRateLimitingRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["rate_limiter_allowed_prefixes"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rateLimiterAllowedPrefixesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + ipAllowedListChoiceInt.CustomIpAllowedList.RateLimiterAllowedPrefixes = rateLimiterAllowedPrefixesInt + for i, ps := range sl { + + rlapMapToStrVal := ps.(map[string]interface{}) + rateLimiterAllowedPrefixesInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := rlapMapToStrVal["name"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Name = v.(string) + } + + if v, ok := rlapMapToStrVal["namespace"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Namespace = v.(string) + } + + if v, ok := rlapMapToStrVal["tenant"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_IpAllowedList{} + ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv6_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Ipv6Prefixes = ls + + } + + if v, ok := cs["prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Prefixes = ls + + } + + } + + } + + if v, ok := cs["no_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + + if v.(bool) { + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{} + ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + } + + } + + if v, ok := cs["server_url_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + serverUrlRules := make([]*ves_io_schema_views_common_waf.ServerUrlRule, len(sl)) + rateLimitChoiceInt.ApiRateLimit.ServerUrlRules = serverUrlRules + for i, set := range sl { + serverUrlRules[i] = &ves_io_schema_views_common_waf.ServerUrlRule{} + serverUrlRulesMapStrToI := set.(map[string]interface{}) + + if w, ok := serverUrlRulesMapStrToI["api_group"]; ok && !isIntfNil(w) { + serverUrlRules[i].ApiGroup = w.(string) + } + + if w, ok := serverUrlRulesMapStrToI["base_path"]; ok && !isIntfNil(w) { + serverUrlRules[i].BasePath = w.(string) + } + + if v, ok := serverUrlRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + serverUrlRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + domainChoiceTypeFound := false + + if v, ok := serverUrlRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + serverUrlRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := serverUrlRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_SpecificDomain{} + + serverUrlRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + rateLimiterChoiceTypeFound := false + + if v, ok := serverUrlRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { + + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} + serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + countByChoiceTypeFound := false + + if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { + + countByChoiceTypeFound = true + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} + countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + countByChoiceInt.RefUserId.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + countByChoiceInt.RefUserId.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + countByChoiceInt.RefUserId.Tenant = v.(string) + + } + + } + + } + + if v, ok := cs["use_http_lb_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { + + countByChoiceTypeFound = true + + if v.(bool) { + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt + } + + } + + if v, ok := cs["threshold"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.InlineRateLimiter.Threshold = uint32(v.(int)) + + } + + if v, ok := cs["unit"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.InlineRateLimiter.Unit = ves_io_schema_rate_limiter.RateLimitPeriodUnit(ves_io_schema_rate_limiter.RateLimitPeriodUnit_value[v.(string)]) + + } + + } + + } + + if v, ok := serverUrlRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { + + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_RefRateLimiter{} + rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} + serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.RefRateLimiter.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.RefRateLimiter.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + rateLimiterChoiceInt.RefRateLimiter.Tenant = v.(string) + + } + + } + + } + + if v, ok := serverUrlRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + serverUrlRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["disable_rate_limit"]; ok && !isIntfNil(v) && !rateLimitChoiceTypeFound { + + rateLimitChoiceTypeFound = true + + if v.(bool) { + rateLimitChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{} + rateLimitChoiceInt.DisableRateLimit = &ves_io_schema.Empty{} + commonSecurityControls.RateLimitChoice = rateLimitChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["rate_limit"]; ok && !isIntfNil(v) && !rateLimitChoiceTypeFound { + + rateLimitChoiceTypeFound = true + rateLimitChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_RateLimit{} + rateLimitChoiceInt.RateLimit = &ves_io_schema_views_common_waf.RateLimitConfigType{} + commonSecurityControls.RateLimitChoice = rateLimitChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + ipAllowedListChoiceTypeFound := false + + if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} + rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["rate_limiter_allowed_prefixes"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rateLimiterAllowedPrefixesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + ipAllowedListChoiceInt.CustomIpAllowedList.RateLimiterAllowedPrefixes = rateLimiterAllowedPrefixesInt + for i, ps := range sl { + + rlapMapToStrVal := ps.(map[string]interface{}) + rateLimiterAllowedPrefixesInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := rlapMapToStrVal["name"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Name = v.(string) + } + + if v, ok := rlapMapToStrVal["namespace"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Namespace = v.(string) + } + + if v, ok := rlapMapToStrVal["tenant"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_IpAllowedList{} + ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} + rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ipv6_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Ipv6Prefixes = ls + + } + + if v, ok := cs["prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Prefixes = ls + + } + + } + + } + + if v, ok := cs["no_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { + + ipAllowedListChoiceTypeFound = true + + if v.(bool) { + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{} + ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} + rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + } + + } + + policyChoiceTypeFound := false + + if v, ok := cs["no_policies"]; ok && !isIntfNil(v) && !policyChoiceTypeFound { + + policyChoiceTypeFound = true + + if v.(bool) { + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{} + policyChoiceInt.NoPolicies = &ves_io_schema.Empty{} + rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt + } + + } + + if v, ok := cs["policies"]; ok && !isIntfNil(v) && !policyChoiceTypeFound { + + policyChoiceTypeFound = true + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_Policies{} + policyChoiceInt.Policies = &ves_io_schema_views_rate_limiter_policy.PolicyList{} + rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["policies"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + policiesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + policyChoiceInt.Policies.Policies = policiesInt + for i, ps := range sl { + + pMapToStrVal := ps.(map[string]interface{}) + policiesInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := pMapToStrVal["name"]; ok && !isIntfNil(v) { + policiesInt[i].Name = v.(string) + } + + if v, ok := pMapToStrVal["namespace"]; ok && !isIntfNil(v) { + policiesInt[i].Namespace = v.(string) + } + + if v, ok := pMapToStrVal["tenant"]; ok && !isIntfNil(v) { + policiesInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := cs["rate_limiter"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + rateLimiter := &ves_io_schema_rate_limiter.RateLimitValue{} + rateLimitChoiceInt.RateLimit.RateLimiter = rateLimiter + for _, set := range sl { + rateLimiterMapStrToI := set.(map[string]interface{}) + + if w, ok := rateLimiterMapStrToI["burst_multiplier"]; ok && !isIntfNil(w) { + rateLimiter.BurstMultiplier = uint32(w.(int)) + } + + if w, ok := rateLimiterMapStrToI["total_number"]; ok && !isIntfNil(w) { + rateLimiter.TotalNumber = uint32(w.(int)) + } + + if v, ok := rateLimiterMapStrToI["unit"]; ok && !isIntfNil(v) { + + rateLimiter.Unit = ves_io_schema_rate_limiter.RateLimitPeriodUnit(ves_io_schema_rate_limiter.RateLimitPeriodUnit_value[v.(string)]) + + } + + } + + } + + } + + } + + servicePolicyChoiceTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["active_service_policies"]; ok && !isIntfNil(v) && !servicePolicyChoiceTypeFound { + + servicePolicyChoiceTypeFound = true + servicePolicyChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ActiveServicePolicies{} + servicePolicyChoiceInt.ActiveServicePolicies = &ves_io_schema_views_common_waf.ServicePolicyList{} + commonSecurityControls.ServicePolicyChoice = servicePolicyChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["policies"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + policiesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + servicePolicyChoiceInt.ActiveServicePolicies.Policies = policiesInt + for i, ps := range sl { + + pMapToStrVal := ps.(map[string]interface{}) + policiesInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := pMapToStrVal["name"]; ok && !isIntfNil(v) { + policiesInt[i].Name = v.(string) + } + + if v, ok := pMapToStrVal["namespace"]; ok && !isIntfNil(v) { + policiesInt[i].Namespace = v.(string) + } + + if v, ok := pMapToStrVal["tenant"]; ok && !isIntfNil(v) { + policiesInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := commonSecurityControlsMapStrToI["no_service_policies"]; ok && !isIntfNil(v) && !servicePolicyChoiceTypeFound { + + servicePolicyChoiceTypeFound = true + + if v.(bool) { + servicePolicyChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoServicePolicies{} + servicePolicyChoiceInt.NoServicePolicies = &ves_io_schema.Empty{} + commonSecurityControls.ServicePolicyChoice = servicePolicyChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["service_policies_from_namespace"]; ok && !isIntfNil(v) && !servicePolicyChoiceTypeFound { + + servicePolicyChoiceTypeFound = true + + if v.(bool) { + servicePolicyChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{} + servicePolicyChoiceInt.ServicePoliciesFromNamespace = &ves_io_schema.Empty{} + commonSecurityControls.ServicePolicyChoice = servicePolicyChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["trusted_clients"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + trustedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) + commonSecurityControls.TrustedClients = trustedClients + for i, set := range sl { + trustedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} + trustedClientsMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := trustedClientsMapStrToI["bot_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} + trustedClients[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := trustedClientsMapStrToI["skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} + trustedClients[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := trustedClientsMapStrToI["waf_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} + trustedClients[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := trustedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { + + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} + for _, j := range v.([]interface{}) { + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) + } + trustedClients[i].Actions = actionsList + + } + + clientSourceChoiceTypeFound := false + + if v, ok := trustedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} + + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.AsNumber = uint32(v.(int)) + + } + + if v, ok := trustedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema.HeaderMatcherType, len(sl)) + clientSourceChoiceInt.HttpHeader.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_match"]; ok && !isIntfNil(w) { + headers[i].InvertMatch = w.(bool) + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + valueMatchTypeFound := false + + if v, ok := headersMapStrToI["exact"]; ok && !isIntfNil(v) && !valueMatchTypeFound { + + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Exact{} + + headers[i].ValueMatch = valueMatchInt + + valueMatchInt.Exact = v.(string) + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !valueMatchTypeFound { + + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Presence{} + + headers[i].ValueMatch = valueMatchInt + + valueMatchInt.Presence = v.(bool) + + } + + if v, ok := headersMapStrToI["regex"]; ok && !isIntfNil(v) && !valueMatchTypeFound { + + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Regex{} + + headers[i].ValueMatch = valueMatchInt + + valueMatchInt.Regex = v.(string) + + } + + } + + } + + } + + } + + if v, ok := trustedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} + + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.IpPrefix = v.(string) + + } + + if v, ok := trustedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} + + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.UserIdentifier = v.(string) + + } + + if w, ok := trustedClientsMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + trustedClients[i].ExpirationTimestamp = ts + } + + if v, ok := trustedClientsMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + trustedClients[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + userIdChoiceTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["user_id_client_ip"]; ok && !isIntfNil(v) && !userIdChoiceTypeFound { + + userIdChoiceTypeFound = true + + if v.(bool) { + userIdChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{} + userIdChoiceInt.UserIdClientIp = &ves_io_schema.Empty{} + commonSecurityControls.UserIdChoice = userIdChoiceInt + } + + } + + if v, ok := commonSecurityControlsMapStrToI["user_identification"]; ok && !isIntfNil(v) && !userIdChoiceTypeFound { + + userIdChoiceTypeFound = true + userIdChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdentification{} + userIdChoiceInt.UserIdentification = &ves_io_schema_views.ObjectRefType{} + commonSecurityControls.UserIdChoice = userIdChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + userIdChoiceInt.UserIdentification.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + userIdChoiceInt.UserIdentification.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + userIdChoiceInt.UserIdentification.Tenant = v.(string) + + } + + } + + } + + } + + } + + if v, ok := securityOptionsMapStrToI["geo_filtering"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + geoFiltering := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions{} + securityOptions.GeoFiltering = geoFiltering + for _, set := range sl { + geoFilteringMapStrToI := set.(map[string]interface{}) + + geoFilteringTypeTypeFound := false + + if v, ok := geoFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + + geoFilteringTypeTypeFound = true + geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_AllowList{} + geoFilteringTypeInt.AllowList = &ves_io_schema_policy.CountryCodeList{} + geoFiltering.GeoFilteringType = geoFilteringTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + + country_codesList := []ves_io_schema_policy.CountryCode{} + for _, j := range v.([]interface{}) { + country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) + } + geoFilteringTypeInt.AllowList.CountryCodes = country_codesList + + } + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + geoFilteringTypeInt.AllowList.InvertMatch = v.(bool) + + } + + } + + } + + if v, ok := geoFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + + geoFilteringTypeTypeFound = true + geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_BlockList{} + geoFilteringTypeInt.BlockList = &ves_io_schema_policy.CountryCodeList{} + geoFiltering.GeoFilteringType = geoFilteringTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + + country_codesList := []ves_io_schema_policy.CountryCode{} + for _, j := range v.([]interface{}) { + country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) + } + geoFilteringTypeInt.BlockList.CountryCodes = country_codesList + + } + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + geoFilteringTypeInt.BlockList.InvertMatch = v.(bool) + + } + + } + + } + + } + + } + + if v, ok := securityOptionsMapStrToI["ip_filtering"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + ipFiltering := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions{} + securityOptions.IpFiltering = ipFiltering + for _, set := range sl { + ipFilteringMapStrToI := set.(map[string]interface{}) + + ipFilteringTypeTypeFound := false + + if v, ok := ipFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { + + ipFilteringTypeTypeFound = true + ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_AllowList{} + ipFilteringTypeInt.AllowList = &ves_io_schema_policy.PrefixMatchList{} + ipFiltering.IpFilteringType = ipFilteringTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipFilteringTypeInt.AllowList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipFilteringTypeInt.AllowList.IpPrefixes = ls + + } + + } + + } + + if v, ok := ipFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { + + ipFilteringTypeTypeFound = true + ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_BlockList{} + ipFilteringTypeInt.BlockList = &ves_io_schema_policy.PrefixMatchList{} + ipFiltering.IpFilteringType = ipFilteringTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipFilteringTypeInt.BlockList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipFilteringTypeInt.BlockList.IpPrefixes = ls + + } + + } + + } + + } + + } + + if v, ok := securityOptionsMapStrToI["web_app_firewall"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + webAppFirewall := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall{} + securityOptions.WebAppFirewall = webAppFirewall + for _, set := range sl { + webAppFirewallMapStrToI := set.(map[string]interface{}) + + if v, ok := webAppFirewallMapStrToI["csrf_policy"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + csrfPolicy := &ves_io_schema.CsrfPolicy{} + webAppFirewall.CsrfPolicy = csrfPolicy + for _, set := range sl { + csrfPolicyMapStrToI := set.(map[string]interface{}) + + allowedDomainsTypeFound := false + + if v, ok := csrfPolicyMapStrToI["all_load_balancer_domains"]; ok && !isIntfNil(v) && !allowedDomainsTypeFound { + + allowedDomainsTypeFound = true + + if v.(bool) { + allowedDomainsInt := &ves_io_schema.CsrfPolicy_AllLoadBalancerDomains{} + allowedDomainsInt.AllLoadBalancerDomains = &ves_io_schema.Empty{} + csrfPolicy.AllowedDomains = allowedDomainsInt + } + + } + + if v, ok := csrfPolicyMapStrToI["custom_domain_list"]; ok && !isIntfNil(v) && !allowedDomainsTypeFound { + + allowedDomainsTypeFound = true + allowedDomainsInt := &ves_io_schema.CsrfPolicy_CustomDomainList{} + allowedDomainsInt.CustomDomainList = &ves_io_schema.DomainNameList{} + csrfPolicy.AllowedDomains = allowedDomainsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["domains"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + allowedDomainsInt.CustomDomainList.Domains = ls + + } + + } + + } + + if v, ok := csrfPolicyMapStrToI["disabled"]; ok && !isIntfNil(v) && !allowedDomainsTypeFound { + + allowedDomainsTypeFound = true + + if v.(bool) { + allowedDomainsInt := &ves_io_schema.CsrfPolicy_Disabled{} + allowedDomainsInt.Disabled = &ves_io_schema.Empty{} + csrfPolicy.AllowedDomains = allowedDomainsInt + } + + } + + } + + } + + if v, ok := webAppFirewallMapStrToI["data_guard_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + dataGuardRules := make([]*ves_io_schema_policy.SimpleDataGuardRule, len(sl)) + webAppFirewall.DataGuardRules = dataGuardRules + for i, set := range sl { + dataGuardRules[i] = &ves_io_schema_policy.SimpleDataGuardRule{} + dataGuardRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := dataGuardRulesMapStrToI["apply_data_guard"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_ApplyDataGuard{} + actionChoiceInt.ApplyDataGuard = &ves_io_schema.Empty{} + dataGuardRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := dataGuardRulesMapStrToI["skip_data_guard"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_SkipDataGuard{} + actionChoiceInt.SkipDataGuard = &ves_io_schema.Empty{} + dataGuardRules[i].ActionChoice = actionChoiceInt + } + + } + + domainChoiceTypeFound := false + + if v, ok := dataGuardRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + dataGuardRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := dataGuardRulesMapStrToI["exact_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_ExactValue{} + + dataGuardRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.ExactValue = v.(string) + + } + + if v, ok := dataGuardRulesMapStrToI["suffix_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_SuffixValue{} + + dataGuardRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SuffixValue = v.(string) + + } + + if v, ok := dataGuardRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + dataGuardRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := dataGuardRulesMapStrToI["path"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + path := &ves_io_schema.PathMatcherType{} + dataGuardRules[i].Path = path + for _, set := range sl { + pathMapStrToI := set.(map[string]interface{}) + + pathMatchTypeFound := false + + if v, ok := pathMapStrToI["path"]; ok && !isIntfNil(v) && !pathMatchTypeFound { + + pathMatchTypeFound = true + pathMatchInt := &ves_io_schema.PathMatcherType_Path{} + + path.PathMatch = pathMatchInt + + pathMatchInt.Path = v.(string) + + } + + if v, ok := pathMapStrToI["prefix"]; ok && !isIntfNil(v) && !pathMatchTypeFound { + + pathMatchTypeFound = true + pathMatchInt := &ves_io_schema.PathMatcherType_Prefix{} + + path.PathMatch = pathMatchInt + + pathMatchInt.Prefix = v.(string) + + } + + if v, ok := pathMapStrToI["regex"]; ok && !isIntfNil(v) && !pathMatchTypeFound { + + pathMatchTypeFound = true + pathMatchInt := &ves_io_schema.PathMatcherType_Regex{} + + path.PathMatch = pathMatchInt + + pathMatchInt.Regex = v.(string) + + } + + } + + } + + } + + } + + if v, ok := webAppFirewallMapStrToI["graphql_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + graphqlRules := make([]*ves_io_schema_policy.GraphQLRule, len(sl)) + webAppFirewall.GraphqlRules = graphqlRules + for i, set := range sl { + graphqlRules[i] = &ves_io_schema_policy.GraphQLRule{} + graphqlRulesMapStrToI := set.(map[string]interface{}) + + domainChoiceTypeFound := false + + if v, ok := graphqlRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_policy.GraphQLRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + graphqlRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := graphqlRulesMapStrToI["exact_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.GraphQLRule_ExactValue{} + + graphqlRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.ExactValue = v.(string) + + } + + if v, ok := graphqlRulesMapStrToI["suffix_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.GraphQLRule_SuffixValue{} + + graphqlRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SuffixValue = v.(string) + + } + + if w, ok := graphqlRulesMapStrToI["exact_path"]; ok && !isIntfNil(w) { + graphqlRules[i].ExactPath = w.(string) + } + + if v, ok := graphqlRulesMapStrToI["graphql_settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + graphqlSettings := &ves_io_schema_policy.GraphQLSettingsType{} + graphqlRules[i].GraphqlSettings = graphqlSettings + for _, set := range sl { + graphqlSettingsMapStrToI := set.(map[string]interface{}) + + allowIntrospectionQueriesChoiceTypeFound := false + + if v, ok := graphqlSettingsMapStrToI["disable_introspection"]; ok && !isIntfNil(v) && !allowIntrospectionQueriesChoiceTypeFound { + + allowIntrospectionQueriesChoiceTypeFound = true + + if v.(bool) { + allowIntrospectionQueriesChoiceInt := &ves_io_schema_policy.GraphQLSettingsType_DisableIntrospection{} + allowIntrospectionQueriesChoiceInt.DisableIntrospection = &ves_io_schema.Empty{} + graphqlSettings.AllowIntrospectionQueriesChoice = allowIntrospectionQueriesChoiceInt + } + + } + + if v, ok := graphqlSettingsMapStrToI["enable_introspection"]; ok && !isIntfNil(v) && !allowIntrospectionQueriesChoiceTypeFound { + + allowIntrospectionQueriesChoiceTypeFound = true + + if v.(bool) { + allowIntrospectionQueriesChoiceInt := &ves_io_schema_policy.GraphQLSettingsType_EnableIntrospection{} + allowIntrospectionQueriesChoiceInt.EnableIntrospection = &ves_io_schema.Empty{} + graphqlSettings.AllowIntrospectionQueriesChoice = allowIntrospectionQueriesChoiceInt + } + + } + + if w, ok := graphqlSettingsMapStrToI["max_batched_queries"]; ok && !isIntfNil(w) { + graphqlSettings.MaxBatchedQueries = uint32(w.(int)) + } + + if w, ok := graphqlSettingsMapStrToI["max_depth"]; ok && !isIntfNil(w) { + graphqlSettings.MaxDepth = uint32(w.(int)) + } + + if w, ok := graphqlSettingsMapStrToI["max_total_length"]; ok && !isIntfNil(w) { + graphqlSettings.MaxTotalLength = uint32(w.(int)) + } + + if w, ok := graphqlSettingsMapStrToI["max_value_length"]; ok && !isIntfNil(w) { + graphqlSettings.MaxValueLength = uint32(w.(int)) + } + + if w, ok := graphqlSettingsMapStrToI["policy_name"]; ok && !isIntfNil(w) { + graphqlSettings.PolicyName = w.(string) + } + + } + + } + + if v, ok := graphqlRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + graphqlRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + methodChoiceTypeFound := false + + if v, ok := graphqlRulesMapStrToI["method_get"]; ok && !isIntfNil(v) && !methodChoiceTypeFound { + + methodChoiceTypeFound = true + + if v.(bool) { + methodChoiceInt := &ves_io_schema_policy.GraphQLRule_MethodGet{} + methodChoiceInt.MethodGet = &ves_io_schema.Empty{} + graphqlRules[i].MethodChoice = methodChoiceInt + } + + } + + if v, ok := graphqlRulesMapStrToI["method_post"]; ok && !isIntfNil(v) && !methodChoiceTypeFound { + + methodChoiceTypeFound = true + + if v.(bool) { + methodChoiceInt := &ves_io_schema_policy.GraphQLRule_MethodPost{} + methodChoiceInt.MethodPost = &ves_io_schema.Empty{} + graphqlRules[i].MethodChoice = methodChoiceInt + } + + } + + } + + } + + if v, ok := webAppFirewallMapStrToI["protected_cookies"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + protectedCookies := make([]*ves_io_schema.CookieManipulationOptionType, len(sl)) + webAppFirewall.ProtectedCookies = protectedCookies + for i, set := range sl { + protectedCookies[i] = &ves_io_schema.CookieManipulationOptionType{} + protectedCookiesMapStrToI := set.(map[string]interface{}) + + cookieTamperingTypeFound := false + + if v, ok := protectedCookiesMapStrToI["disable_tampering_protection"]; ok && !isIntfNil(v) && !cookieTamperingTypeFound { + + cookieTamperingTypeFound = true + + if v.(bool) { + cookieTamperingInt := &ves_io_schema.CookieManipulationOptionType_DisableTamperingProtection{} + cookieTamperingInt.DisableTamperingProtection = &ves_io_schema.Empty{} + protectedCookies[i].CookieTampering = cookieTamperingInt + } + + } + + if v, ok := protectedCookiesMapStrToI["enable_tampering_protection"]; ok && !isIntfNil(v) && !cookieTamperingTypeFound { + + cookieTamperingTypeFound = true + + if v.(bool) { + cookieTamperingInt := &ves_io_schema.CookieManipulationOptionType_EnableTamperingProtection{} + cookieTamperingInt.EnableTamperingProtection = &ves_io_schema.Empty{} + protectedCookies[i].CookieTampering = cookieTamperingInt + } + + } + + httponlyTypeFound := false + + if v, ok := protectedCookiesMapStrToI["add_httponly"]; ok && !isIntfNil(v) && !httponlyTypeFound { + + httponlyTypeFound = true + + if v.(bool) { + httponlyInt := &ves_io_schema.CookieManipulationOptionType_AddHttponly{} + httponlyInt.AddHttponly = &ves_io_schema.Empty{} + protectedCookies[i].Httponly = httponlyInt + } + + } + + if v, ok := protectedCookiesMapStrToI["ignore_httponly"]; ok && !isIntfNil(v) && !httponlyTypeFound { + + httponlyTypeFound = true + + if v.(bool) { + httponlyInt := &ves_io_schema.CookieManipulationOptionType_IgnoreHttponly{} + httponlyInt.IgnoreHttponly = &ves_io_schema.Empty{} + protectedCookies[i].Httponly = httponlyInt + } + + } + + maxAgeTypeFound := false + + if v, ok := protectedCookiesMapStrToI["ignore_max_age"]; ok && !isIntfNil(v) && !maxAgeTypeFound { + + maxAgeTypeFound = true + + if v.(bool) { + maxAgeInt := &ves_io_schema.CookieManipulationOptionType_IgnoreMaxAge{} + maxAgeInt.IgnoreMaxAge = &ves_io_schema.Empty{} + protectedCookies[i].MaxAge = maxAgeInt + } + + } + + if v, ok := protectedCookiesMapStrToI["max_age_value"]; ok && !isIntfNil(v) && !maxAgeTypeFound { + + maxAgeTypeFound = true + maxAgeInt := &ves_io_schema.CookieManipulationOptionType_MaxAgeValue{} + + protectedCookies[i].MaxAge = maxAgeInt + + maxAgeInt.MaxAgeValue = int32(v.(int)) + + } + + if w, ok := protectedCookiesMapStrToI["name"]; ok && !isIntfNil(w) { + protectedCookies[i].Name = w.(string) + } + + samesiteTypeFound := false + + if v, ok := protectedCookiesMapStrToI["ignore_samesite"]; ok && !isIntfNil(v) && !samesiteTypeFound { + + samesiteTypeFound = true + + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_IgnoreSamesite{} + samesiteInt.IgnoreSamesite = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } + + } + + if v, ok := protectedCookiesMapStrToI["samesite_lax"]; ok && !isIntfNil(v) && !samesiteTypeFound { + + samesiteTypeFound = true + + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_SamesiteLax{} + samesiteInt.SamesiteLax = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } + + } + + if v, ok := protectedCookiesMapStrToI["samesite_none"]; ok && !isIntfNil(v) && !samesiteTypeFound { + + samesiteTypeFound = true + + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_SamesiteNone{} + samesiteInt.SamesiteNone = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } + + } + + if v, ok := protectedCookiesMapStrToI["samesite_strict"]; ok && !isIntfNil(v) && !samesiteTypeFound { + + samesiteTypeFound = true + + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_SamesiteStrict{} + samesiteInt.SamesiteStrict = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } + + } + + secureTypeFound := false + + if v, ok := protectedCookiesMapStrToI["add_secure"]; ok && !isIntfNil(v) && !secureTypeFound { + + secureTypeFound = true + + if v.(bool) { + secureInt := &ves_io_schema.CookieManipulationOptionType_AddSecure{} + secureInt.AddSecure = &ves_io_schema.Empty{} + protectedCookies[i].Secure = secureInt + } + + } + + if v, ok := protectedCookiesMapStrToI["ignore_secure"]; ok && !isIntfNil(v) && !secureTypeFound { + + secureTypeFound = true + + if v.(bool) { + secureInt := &ves_io_schema.CookieManipulationOptionType_IgnoreSecure{} + secureInt.IgnoreSecure = &ves_io_schema.Empty{} + protectedCookies[i].Secure = secureInt + } + + } + + } + + } + + wafChoiceTypeFound := false + + if v, ok := webAppFirewallMapStrToI["app_firewall"]; ok && !isIntfNil(v) && !wafChoiceTypeFound { + + wafChoiceTypeFound = true + wafChoiceInt := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_AppFirewall{} + wafChoiceInt.AppFirewall = &ves_io_schema_views.ObjectRefType{} + webAppFirewall.WafChoice = wafChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + wafChoiceInt.AppFirewall.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + wafChoiceInt.AppFirewall.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + wafChoiceInt.AppFirewall.Tenant = v.(string) + + } + + } + + } + + if v, ok := webAppFirewallMapStrToI["app_firewall_on_cache_miss"]; ok && !isIntfNil(v) && !wafChoiceTypeFound { + + wafChoiceTypeFound = true + wafChoiceInt := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_AppFirewallOnCacheMiss{} + wafChoiceInt.AppFirewallOnCacheMiss = &ves_io_schema_views.ObjectRefType{} + webAppFirewall.WafChoice = wafChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + wafChoiceInt.AppFirewallOnCacheMiss.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + wafChoiceInt.AppFirewallOnCacheMiss.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + wafChoiceInt.AppFirewallOnCacheMiss.Tenant = v.(string) + + } + + } + + } + + if v, ok := webAppFirewallMapStrToI["disable_waf"]; ok && !isIntfNil(v) && !wafChoiceTypeFound { + + wafChoiceTypeFound = true + + if v.(bool) { + wafChoiceInt := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_DisableWaf{} + wafChoiceInt.DisableWaf = &ves_io_schema.Empty{} + webAppFirewall.WafChoice = wafChoiceInt + } + + } + + if v, ok := webAppFirewallMapStrToI["waf_exclusion_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + wafExclusionRules := make([]*ves_io_schema_policy.SimpleWafExclusionRule, len(sl)) + webAppFirewall.WafExclusionRules = wafExclusionRules + for i, set := range sl { + wafExclusionRules[i] = &ves_io_schema_policy.SimpleWafExclusionRule{} + wafExclusionRulesMapStrToI := set.(map[string]interface{}) + + domainChoiceTypeFound := false + + if v, ok := wafExclusionRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + wafExclusionRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := wafExclusionRulesMapStrToI["exact_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_ExactValue{} + + wafExclusionRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.ExactValue = v.(string) + + } + + if v, ok := wafExclusionRulesMapStrToI["suffix_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_SuffixValue{} + + wafExclusionRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SuffixValue = v.(string) + + } + + if w, ok := wafExclusionRulesMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + wafExclusionRules[i].ExpirationTimestamp = ts + } + + if v, ok := wafExclusionRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + wafExclusionRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := wafExclusionRulesMapStrToI["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + wafExclusionRules[i].Methods = methodsList + + } + + pathChoiceTypeFound := false + + if v, ok := wafExclusionRulesMapStrToI["any_path"]; ok && !isIntfNil(v) && !pathChoiceTypeFound { + + pathChoiceTypeFound = true + + if v.(bool) { + pathChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_AnyPath{} + pathChoiceInt.AnyPath = &ves_io_schema.Empty{} + wafExclusionRules[i].PathChoice = pathChoiceInt + } + + } + + if v, ok := wafExclusionRulesMapStrToI["path_prefix"]; ok && !isIntfNil(v) && !pathChoiceTypeFound { + + pathChoiceTypeFound = true + pathChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_PathPrefix{} + + wafExclusionRules[i].PathChoice = pathChoiceInt + + pathChoiceInt.PathPrefix = v.(string) + + } + + if v, ok := wafExclusionRulesMapStrToI["path_regex"]; ok && !isIntfNil(v) && !pathChoiceTypeFound { + + pathChoiceTypeFound = true + pathChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_PathRegex{} + + wafExclusionRules[i].PathChoice = pathChoiceInt + + pathChoiceInt.PathRegex = v.(string) + + } + + wafAdvancedConfigurationTypeFound := false + + if v, ok := wafExclusionRulesMapStrToI["app_firewall_detection_control"]; ok && !isIntfNil(v) && !wafAdvancedConfigurationTypeFound { + + wafAdvancedConfigurationTypeFound = true + wafAdvancedConfigurationInt := &ves_io_schema_policy.SimpleWafExclusionRule_AppFirewallDetectionControl{} + wafAdvancedConfigurationInt.AppFirewallDetectionControl = &ves_io_schema_policy.AppFirewallDetectionControl{} + wafExclusionRules[i].WafAdvancedConfiguration = wafAdvancedConfigurationInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exclude_attack_type_contexts"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + excludeAttackTypeContexts := make([]*ves_io_schema_policy.AppFirewallAttackTypeContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeAttackTypeContexts = excludeAttackTypeContexts + for i, set := range sl { + excludeAttackTypeContexts[i] = &ves_io_schema_policy.AppFirewallAttackTypeContext{} + excludeAttackTypeContextsMapStrToI := set.(map[string]interface{}) + + if v, ok := excludeAttackTypeContextsMapStrToI["context"]; ok && !isIntfNil(v) { + + excludeAttackTypeContexts[i].Context = ves_io_schema_policy.DetectionContext(ves_io_schema_policy.DetectionContext_value[v.(string)]) + + } + + if w, ok := excludeAttackTypeContextsMapStrToI["context_name"]; ok && !isIntfNil(w) { + excludeAttackTypeContexts[i].ContextName = w.(string) + } + + if v, ok := excludeAttackTypeContextsMapStrToI["exclude_attack_type"]; ok && !isIntfNil(v) { + + excludeAttackTypeContexts[i].ExcludeAttackType = ves_io_schema_app_firewall.AttackType(ves_io_schema_app_firewall.AttackType_value[v.(string)]) + + } + + } + + } + + if v, ok := cs["exclude_bot_name_contexts"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + excludeBotNameContexts := make([]*ves_io_schema_policy.BotNameContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeBotNameContexts = excludeBotNameContexts + for i, set := range sl { + excludeBotNameContexts[i] = &ves_io_schema_policy.BotNameContext{} + excludeBotNameContextsMapStrToI := set.(map[string]interface{}) + + if w, ok := excludeBotNameContextsMapStrToI["bot_name"]; ok && !isIntfNil(w) { + excludeBotNameContexts[i].BotName = w.(string) + } + + } + + } + + if v, ok := cs["exclude_signature_contexts"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + excludeSignatureContexts := make([]*ves_io_schema_policy.AppFirewallSignatureContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeSignatureContexts = excludeSignatureContexts + for i, set := range sl { + excludeSignatureContexts[i] = &ves_io_schema_policy.AppFirewallSignatureContext{} + excludeSignatureContextsMapStrToI := set.(map[string]interface{}) + + if v, ok := excludeSignatureContextsMapStrToI["context"]; ok && !isIntfNil(v) { + + excludeSignatureContexts[i].Context = ves_io_schema_policy.DetectionContext(ves_io_schema_policy.DetectionContext_value[v.(string)]) + + } + + if w, ok := excludeSignatureContextsMapStrToI["context_name"]; ok && !isIntfNil(w) { + excludeSignatureContexts[i].ContextName = w.(string) + } + + if w, ok := excludeSignatureContextsMapStrToI["signature_id"]; ok && !isIntfNil(w) { + excludeSignatureContexts[i].SignatureId = uint32(w.(int)) + } + + } + + } + + if v, ok := cs["exclude_violation_contexts"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + excludeViolationContexts := make([]*ves_io_schema_policy.AppFirewallViolationContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeViolationContexts = excludeViolationContexts + for i, set := range sl { + excludeViolationContexts[i] = &ves_io_schema_policy.AppFirewallViolationContext{} + excludeViolationContextsMapStrToI := set.(map[string]interface{}) + + if v, ok := excludeViolationContextsMapStrToI["context"]; ok && !isIntfNil(v) { + + excludeViolationContexts[i].Context = ves_io_schema_policy.DetectionContext(ves_io_schema_policy.DetectionContext_value[v.(string)]) + + } + + if w, ok := excludeViolationContextsMapStrToI["context_name"]; ok && !isIntfNil(w) { + excludeViolationContexts[i].ContextName = w.(string) + } + + if v, ok := excludeViolationContextsMapStrToI["exclude_violation"]; ok && !isIntfNil(v) { + + excludeViolationContexts[i].ExcludeViolation = ves_io_schema_app_firewall.AppFirewallViolationType(ves_io_schema_app_firewall.AppFirewallViolationType_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := wafExclusionRulesMapStrToI["waf_skip_processing"]; ok && !isIntfNil(v) && !wafAdvancedConfigurationTypeFound { + + wafAdvancedConfigurationTypeFound = true + + if v.(bool) { + wafAdvancedConfigurationInt := &ves_io_schema_policy.SimpleWafExclusionRule_WafSkipProcessing{} + wafAdvancedConfigurationInt.WafSkipProcessing = &ves_io_schema.Empty{} + wafExclusionRules[i].WafAdvancedConfiguration = wafAdvancedConfigurationInt + } + + } + + } + + } + + } + + } + + } + + } + + } + + } + + //origin_pool + if v, ok := d.GetOk("origin_pool"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + originPool := &ves_io_schema_views_cdn_loadbalancer.CdnOriginPoolType{} + createSpec.OriginPool = originPool + for _, set := range sl { + originPoolMapStrToI := set.(map[string]interface{}) + + if w, ok := originPoolMapStrToI["follow_origin_redirect"]; ok && !isIntfNil(w) { + originPool.FollowOriginRedirect = w.(bool) + } + + if v, ok := originPoolMapStrToI["more_origin_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + moreOriginOptions := &ves_io_schema_views_cdn_loadbalancer.OriginAdvancedConfiguration{} + originPool.MoreOriginOptions = moreOriginOptions + for _, set := range sl { + moreOriginOptionsMapStrToI := set.(map[string]interface{}) + + if w, ok := moreOriginOptionsMapStrToI["disable_byte_range_request"]; ok && !isIntfNil(w) { + moreOriginOptions.DisableByteRangeRequest = w.(bool) + } + + if w, ok := moreOriginOptionsMapStrToI["websocket_proxy"]; ok && !isIntfNil(w) { + moreOriginOptions.WebsocketProxy = w.(bool) + } + + } + + } + + if w, ok := originPoolMapStrToI["origin_request_timeout"]; ok && !isIntfNil(w) { + originPool.OriginRequestTimeout = w.(string) + } + + if v, ok := originPoolMapStrToI["origin_servers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + originServers := make([]*ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType, len(sl)) + originPool.OriginServers = originServers + for i, set := range sl { + originServers[i] = &ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType{} + originServersMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := originServersMapStrToI["public_ip"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType_PublicIp{} + choiceInt.PublicIp = &ves_io_schema_views_origin_pool.OriginServerPublicIP{} + originServers[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + publicIpChoiceTypeFound := false + + if v, ok := cs["ip"]; ok && !isIntfNil(v) && !publicIpChoiceTypeFound { + + publicIpChoiceTypeFound = true + publicIpChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPublicIP_Ip{} + + choiceInt.PublicIp.PublicIpChoice = publicIpChoiceInt + + publicIpChoiceInt.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) && !publicIpChoiceTypeFound { + + publicIpChoiceTypeFound = true + publicIpChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPublicIP_Ipv6{} + + choiceInt.PublicIp.PublicIpChoice = publicIpChoiceInt + + publicIpChoiceInt.Ipv6 = v.(string) + + } + + } + + } + + if v, ok := originServersMapStrToI["public_name"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType_PublicName{} + choiceInt.PublicName = &ves_io_schema_views_origin_pool.OriginServerPublicName{} + originServers[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["dns_name"]; ok && !isIntfNil(v) { + + choiceInt.PublicName.DnsName = v.(string) + + } + + if v, ok := cs["refresh_interval"]; ok && !isIntfNil(v) { + + choiceInt.PublicName.RefreshInterval = uint32(v.(int)) + + } + + } + + } + + if w, ok := originServersMapStrToI["port"]; ok && !isIntfNil(w) { + originServers[i].Port = uint32(w.(int)) + } + + } + + } + + if v, ok := originPoolMapStrToI["public_name"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + publicName := &ves_io_schema_views_origin_pool.OriginServerPublicName{} + originPool.PublicName = publicName + for _, set := range sl { + publicNameMapStrToI := set.(map[string]interface{}) + + if w, ok := publicNameMapStrToI["dns_name"]; ok && !isIntfNil(w) { + publicName.DnsName = w.(string) + } + + if w, ok := publicNameMapStrToI["refresh_interval"]; ok && !isIntfNil(w) { + publicName.RefreshInterval = uint32(w.(int)) + } + + } + + } + + tlsChoiceTypeFound := false + + if v, ok := originPoolMapStrToI["no_tls"]; ok && !isIntfNil(v) && !tlsChoiceTypeFound { + + tlsChoiceTypeFound = true + + if v.(bool) { + tlsChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CdnOriginPoolType_NoTls{} + tlsChoiceInt.NoTls = &ves_io_schema.Empty{} + originPool.TlsChoice = tlsChoiceInt + } + + } + + if v, ok := originPoolMapStrToI["use_tls"]; ok && !isIntfNil(v) && !tlsChoiceTypeFound { + + tlsChoiceTypeFound = true + tlsChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CdnOriginPoolType_UseTls{} + tlsChoiceInt.UseTls = &ves_io_schema_views_origin_pool.UpstreamTlsParameters{} + originPool.TlsChoice = tlsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + mtlsChoiceTypeFound := false + + if v, ok := cs["no_mtls"]; ok && !isIntfNil(v) && !mtlsChoiceTypeFound { + + mtlsChoiceTypeFound = true + + if v.(bool) { + mtlsChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{} + mtlsChoiceInt.NoMtls = &ves_io_schema.Empty{} + tlsChoiceInt.UseTls.MtlsChoice = mtlsChoiceInt + } + + } + + if v, ok := cs["use_mtls"]; ok && !isIntfNil(v) && !mtlsChoiceTypeFound { + + mtlsChoiceTypeFound = true + mtlsChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseMtls{} + mtlsChoiceInt.UseMtls = &ves_io_schema_views_origin_pool.TlsCertificatesType{} + tlsChoiceInt.UseTls.MtlsChoice = mtlsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["tls_certificates"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + tlsCertificates := make([]*ves_io_schema.TlsCertificateType, len(sl)) + mtlsChoiceInt.UseMtls.TlsCertificates = tlsCertificates + for i, set := range sl { + tlsCertificates[i] = &ves_io_schema.TlsCertificateType{} + tlsCertificatesMapStrToI := set.(map[string]interface{}) + + if w, ok := tlsCertificatesMapStrToI["certificate_url"]; ok && !isIntfNil(w) { + tlsCertificates[i].CertificateUrl = w.(string) + } + + if w, ok := tlsCertificatesMapStrToI["description"]; ok && !isIntfNil(w) { + tlsCertificates[i].Description = w.(string) + } + + ocspStaplingChoiceTypeFound := false + + if v, ok := tlsCertificatesMapStrToI["custom_hash_algorithms"]; ok && !isIntfNil(v) && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_CustomHashAlgorithms{} + ocspStaplingChoiceInt.CustomHashAlgorithms = &ves_io_schema.HashAlgorithms{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["hash_algorithms"]; ok && !isIntfNil(v) { + + hash_algorithmsList := []ves_io_schema.HashAlgorithm{} + for _, j := range v.([]interface{}) { + hash_algorithmsList = append(hash_algorithmsList, ves_io_schema.HashAlgorithm(ves_io_schema.HashAlgorithm_value[j.(string)])) + } + ocspStaplingChoiceInt.CustomHashAlgorithms.HashAlgorithms = hash_algorithmsList + + } + + } + + } + + if _, ok := tlsCertificatesMapStrToI["disable_ocsp_stapling"]; ok && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_DisableOcspStapling{} + ocspStaplingChoiceInt.DisableOcspStapling = &ves_io_schema.Empty{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + } + + if _, ok := tlsCertificatesMapStrToI["use_system_defaults"]; ok && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_UseSystemDefaults{} + ocspStaplingChoiceInt.UseSystemDefaults = &ves_io_schema.Empty{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + } + + if v, ok := tlsCertificatesMapStrToI["private_key"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + privateKey := &ves_io_schema.SecretType{} + tlsCertificates[i].PrivateKey = privateKey + for _, set := range sl { + privateKeyMapStrToI := set.(map[string]interface{}) + + if v, ok := privateKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + privateKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := privateKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + privateKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := privateKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["use_mtls_obj"]; ok && !isIntfNil(v) && !mtlsChoiceTypeFound { + + mtlsChoiceTypeFound = true + mtlsChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseMtlsObj{} + mtlsChoiceInt.UseMtlsObj = &ves_io_schema_views.ObjectRefType{} + tlsChoiceInt.UseTls.MtlsChoice = mtlsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + mtlsChoiceInt.UseMtlsObj.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + mtlsChoiceInt.UseMtlsObj.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + mtlsChoiceInt.UseMtlsObj.Tenant = v.(string) + + } + + } + + } + + serverValidationChoiceTypeFound := false + + if v, ok := cs["skip_server_verification"]; ok && !isIntfNil(v) && !serverValidationChoiceTypeFound { + + serverValidationChoiceTypeFound = true + + if v.(bool) { + serverValidationChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_SkipServerVerification{} + serverValidationChoiceInt.SkipServerVerification = &ves_io_schema.Empty{} + tlsChoiceInt.UseTls.ServerValidationChoice = serverValidationChoiceInt + } + + } + + if v, ok := cs["use_server_verification"]; ok && !isIntfNil(v) && !serverValidationChoiceTypeFound { + + serverValidationChoiceTypeFound = true + serverValidationChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseServerVerification{} + serverValidationChoiceInt.UseServerVerification = &ves_io_schema_views_origin_pool.UpstreamTlsValidationContext{} + tlsChoiceInt.UseTls.ServerValidationChoice = serverValidationChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + trustedCaChoiceTypeFound := false + + if v, ok := cs["trusted_ca"]; ok && !isIntfNil(v) && !trustedCaChoiceTypeFound { + + trustedCaChoiceTypeFound = true + trustedCaChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsValidationContext_TrustedCa{} + trustedCaChoiceInt.TrustedCa = &ves_io_schema_views.ObjectRefType{} + serverValidationChoiceInt.UseServerVerification.TrustedCaChoice = trustedCaChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + trustedCaChoiceInt.TrustedCa.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + trustedCaChoiceInt.TrustedCa.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + trustedCaChoiceInt.TrustedCa.Tenant = v.(string) + + } + + } + + } + + if v, ok := cs["trusted_ca_url"]; ok && !isIntfNil(v) && !trustedCaChoiceTypeFound { + + trustedCaChoiceTypeFound = true + trustedCaChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsValidationContext_TrustedCaUrl{} + + serverValidationChoiceInt.UseServerVerification.TrustedCaChoice = trustedCaChoiceInt + + trustedCaChoiceInt.TrustedCaUrl = v.(string) + + } + + } + + } + + if v, ok := cs["volterra_trusted_ca"]; ok && !isIntfNil(v) && !serverValidationChoiceTypeFound { + + serverValidationChoiceTypeFound = true + + if v.(bool) { + serverValidationChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{} + serverValidationChoiceInt.VolterraTrustedCa = &ves_io_schema.Empty{} + tlsChoiceInt.UseTls.ServerValidationChoice = serverValidationChoiceInt + } + + } + + sniChoiceTypeFound := false + + if v, ok := cs["disable_sni"]; ok && !isIntfNil(v) && !sniChoiceTypeFound { + + sniChoiceTypeFound = true + + if v.(bool) { + sniChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_DisableSni{} + sniChoiceInt.DisableSni = &ves_io_schema.Empty{} + tlsChoiceInt.UseTls.SniChoice = sniChoiceInt + } + + } + + if v, ok := cs["sni"]; ok && !isIntfNil(v) && !sniChoiceTypeFound { + + sniChoiceTypeFound = true + sniChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_Sni{} + + tlsChoiceInt.UseTls.SniChoice = sniChoiceInt + + sniChoiceInt.Sni = v.(string) + + } + + if v, ok := cs["use_host_header_as_sni"]; ok && !isIntfNil(v) && !sniChoiceTypeFound { + + sniChoiceTypeFound = true + + if v.(bool) { + sniChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{} + sniChoiceInt.UseHostHeaderAsSni = &ves_io_schema.Empty{} + tlsChoiceInt.UseTls.SniChoice = sniChoiceInt + } + + } + + if v, ok := cs["tls_config"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsConfig := &ves_io_schema_views.TlsConfig{} + tlsChoiceInt.UseTls.TlsConfig = tlsConfig + for _, set := range sl { + tlsConfigMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := tlsConfigMapStrToI["custom_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.TlsConfig_CustomSecurity{} + choiceInt.CustomSecurity = &ves_io_schema_views.CustomCiphers{} + tlsConfig.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cipher_suites"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + choiceInt.CustomSecurity.CipherSuites = ls + + } + + if v, ok := cs["max_version"]; ok && !isIntfNil(v) { + + choiceInt.CustomSecurity.MaxVersion = ves_io_schema.TlsProtocol(ves_io_schema.TlsProtocol_value[v.(string)]) + + } + + if v, ok := cs["min_version"]; ok && !isIntfNil(v) { + + choiceInt.CustomSecurity.MinVersion = ves_io_schema.TlsProtocol(ves_io_schema.TlsProtocol_value[v.(string)]) + + } + + } + + } + + if v, ok := tlsConfigMapStrToI["default_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views.TlsConfig_DefaultSecurity{} + choiceInt.DefaultSecurity = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + if v, ok := tlsConfigMapStrToI["low_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views.TlsConfig_LowSecurity{} + choiceInt.LowSecurity = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + if v, ok := tlsConfigMapStrToI["medium_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views.TlsConfig_MediumSecurity{} + choiceInt.MediumSecurity = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + } + + } + + } + + } + + } + + } + + log.Printf("[DEBUG] Creating Volterra CdnLoadbalancer object with struct: %+v", createReq) + + createCdnLoadbalancerResp, err := client.CreateObject(context.Background(), ves_io_schema_views_cdn_loadbalancer.ObjectType, createReq) + if err != nil { + return fmt.Errorf("error creating CdnLoadbalancer: %s", err) + } + d.SetId(createCdnLoadbalancerResp.GetObjSystemMetadata().GetUid()) + + return resourceVolterraCdnLoadbalancerRead(d, meta) +} + +func resourceVolterraCdnLoadbalancerRead(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + resp, err := client.GetObject(context.Background(), ves_io_schema_views_cdn_loadbalancer.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] CdnLoadbalancer %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra CdnLoadbalancer %q: %s", d.Id(), err) + } + return setCdnLoadbalancerFields(client, d, resp) +} + +func setCdnLoadbalancerFields(client *APIClient, d *schema.ResourceData, resp vesapi.GetObjectResponse) error { + metadata := resp.GetObjMetadata() + + d.Set("annotations", metadata.GetAnnotations()) + + d.Set("description", metadata.GetDescription()) + + d.Set("disable", metadata.GetDisable()) + + d.Set("labels", metadata.GetLabels()) + + d.Set("name", metadata.GetName()) + + d.Set("namespace", metadata.GetNamespace()) + + return nil +} + +// resourceVolterraCdnLoadbalancerUpdate updates CdnLoadbalancer resource +func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + updateMeta := &ves_io_schema.ObjectReplaceMetaType{} + updateSpec := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType{} + updateReq := &ves_io_schema_views_cdn_loadbalancer.ReplaceRequest{ + Metadata: updateMeta, + Spec: updateSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + updateMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + updateMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + updateMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + updateMeta.Namespace = + v.(string) + } + + if v, ok := d.GetOk("add_location"); ok && !isIntfNil(v) { + + updateSpec.AddLocation = + v.(bool) + + } + + if v, ok := d.GetOk("domains"); ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + updateSpec.Domains = ls + + } + + loadbalancerTypeTypeFound := false + + if v, ok := d.GetOk("http"); ok && !loadbalancerTypeTypeFound { + + loadbalancerTypeTypeFound = true + loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType_Http{} + loadbalancerTypeInt.Http = &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp{} + updateSpec.LoadbalancerType = loadbalancerTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["dns_volterra_managed"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.Http.DnsVolterraManaged = v.(bool) + + } + + portChoiceTypeFound := false + + if v, ok := cs["port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_Port{} + + loadbalancerTypeInt.Http.PortChoice = portChoiceInt + + portChoiceInt.Port = uint32(v.(int)) + + } + + if v, ok := cs["port_ranges"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_PortRanges{} + + loadbalancerTypeInt.Http.PortChoice = portChoiceInt + + portChoiceInt.PortRanges = v.(string) + + } + + } + + } + + if v, ok := d.GetOk("https"); ok && !loadbalancerTypeTypeFound { + + loadbalancerTypeTypeFound = true + loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType_Https{} + loadbalancerTypeInt.Https = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSCustomCertsType{} + updateSpec.LoadbalancerType = loadbalancerTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.Https.AddHsts = v.(bool) + + } + + if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.Https.HttpRedirect = v.(bool) + + } + + if v, ok := cs["tls_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsParameters := &ves_io_schema_views_cdn_loadbalancer.CDNDownstreamTlsParamsType{} + loadbalancerTypeInt.Https.TlsParameters = tlsParameters + for _, set := range sl { + tlsParametersMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsParametersMapStrToI["tls_certificates"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + tlsCertificates := make([]*ves_io_schema.TlsCertificateType, len(sl)) + tlsParameters.TlsCertificates = tlsCertificates + for i, set := range sl { + tlsCertificates[i] = &ves_io_schema.TlsCertificateType{} + tlsCertificatesMapStrToI := set.(map[string]interface{}) + + if w, ok := tlsCertificatesMapStrToI["certificate_url"]; ok && !isIntfNil(w) { + tlsCertificates[i].CertificateUrl = w.(string) + } + + if w, ok := tlsCertificatesMapStrToI["description"]; ok && !isIntfNil(w) { + tlsCertificates[i].Description = w.(string) + } + + ocspStaplingChoiceTypeFound := false + + if v, ok := tlsCertificatesMapStrToI["custom_hash_algorithms"]; ok && !isIntfNil(v) && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_CustomHashAlgorithms{} + ocspStaplingChoiceInt.CustomHashAlgorithms = &ves_io_schema.HashAlgorithms{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["hash_algorithms"]; ok && !isIntfNil(v) { + + hash_algorithmsList := []ves_io_schema.HashAlgorithm{} + for _, j := range v.([]interface{}) { + hash_algorithmsList = append(hash_algorithmsList, ves_io_schema.HashAlgorithm(ves_io_schema.HashAlgorithm_value[j.(string)])) + } + ocspStaplingChoiceInt.CustomHashAlgorithms.HashAlgorithms = hash_algorithmsList + + } + + } + + } + + if _, ok := tlsCertificatesMapStrToI["disable_ocsp_stapling"]; ok && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_DisableOcspStapling{} + ocspStaplingChoiceInt.DisableOcspStapling = &ves_io_schema.Empty{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + } + + if _, ok := tlsCertificatesMapStrToI["use_system_defaults"]; ok && !ocspStaplingChoiceTypeFound { + + ocspStaplingChoiceTypeFound = true + ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_UseSystemDefaults{} + ocspStaplingChoiceInt.UseSystemDefaults = &ves_io_schema.Empty{} + tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + + } + + if v, ok := tlsCertificatesMapStrToI["private_key"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + privateKey := &ves_io_schema.SecretType{} + tlsCertificates[i].PrivateKey = privateKey + for _, set := range sl { + privateKeyMapStrToI := set.(map[string]interface{}) + + if v, ok := privateKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + privateKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := privateKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + privateKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := privateKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := privateKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + privateKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := tlsParametersMapStrToI["tls_config"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} + tlsParameters.TlsConfig = tlsConfig + for _, set := range sl { + tlsConfigMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} + choiceInt.Tls_11Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} + choiceInt.Tls_12Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := d.GetOk("https_auto_cert"); ok && !loadbalancerTypeTypeFound { + + loadbalancerTypeTypeFound = true + loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType_HttpsAutoCert{} + loadbalancerTypeInt.HttpsAutoCert = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSAutoCertsType{} + updateSpec.LoadbalancerType = loadbalancerTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.HttpsAutoCert.AddHsts = v.(bool) + + } + + if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + + loadbalancerTypeInt.HttpsAutoCert.HttpRedirect = v.(bool) + + } + + if v, ok := cs["tls_config"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} + loadbalancerTypeInt.HttpsAutoCert.TlsConfig = tlsConfig + for _, set := range sl { + tlsConfigMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} + choiceInt.Tls_11Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + + if v.(bool) { + choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} + choiceInt.Tls_12Plus = &ves_io_schema.Empty{} + tlsConfig.Choice = choiceInt + } + + } + + } + + } + + } + + } + + if v, ok := d.GetOk("more_option"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + moreOption := &ves_io_schema_views_cdn_loadbalancer.AdvancedOptionsType{} + updateSpec.MoreOption = moreOption + for _, set := range sl { + moreOptionMapStrToI := set.(map[string]interface{}) + + if v, ok := moreOptionMapStrToI["cache_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + cacheOptions := &ves_io_schema_views_cdn_loadbalancer.CacheOptions{} + moreOption.CacheOptions = cacheOptions + for _, set := range sl { + cacheOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := cacheOptionsMapStrToI["cache_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cacheRules := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRule, len(sl)) + cacheOptions.CacheRules = cacheRules + for i, set := range sl { + cacheRules[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule{} + cacheRulesMapStrToI := set.(map[string]interface{}) + + cacheActionsTypeFound := false + + if v, ok := cacheRulesMapStrToI["cache_bypass"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + + if v.(bool) { + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{} + cacheActionsInt.CacheBypass = &ves_io_schema.Empty{} + cacheRules[i].CacheActions = cacheActionsInt + } + + } + + if v, ok := cacheRulesMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_EligibleForCache{} + cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions{} + cacheRules[i].CacheActions = cacheActionsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + eligibleForCacheTypeFound := false + + if v, ok := cs["hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_HostnameUri{} + eligibleForCacheInt.HostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.HostnameUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.HostnameUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.HostnameUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_hostname_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameRequestUri{} + eligibleForCacheInt.SchemeHostnameRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameRequestUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameRequestUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameRequestUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUri{} + eligibleForCacheInt.SchemeHostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_hostname_uri_query"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUriQuery{} + eligibleForCacheInt.SchemeHostnameUriQuery = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUriQuery.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUriQuery.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeHostnameUriQuery.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_proxy_host_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostRequestUri{} + eligibleForCacheInt.SchemeProxyHostRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostRequestUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostRequestUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostRequestUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + if v, ok := cs["scheme_proxy_host_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + + eligibleForCacheTypeFound = true + eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostUri{} + eligibleForCacheInt.SchemeProxyHostUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} + cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostUri.CacheOverride = v.(bool) + + } + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostUri.CacheTtl = v.(string) + + } + + if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + + eligibleForCacheInt.SchemeProxyHostUri.IgnoreResponseCookie = v.(bool) + + } + + } + + } + + } + + } + + if v, ok := cacheRulesMapStrToI["rule_expression_list"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + ruleExpressionList := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList, len(sl)) + cacheRules[i].RuleExpressionList = ruleExpressionList + for i, set := range sl { + ruleExpressionList[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList{} + ruleExpressionListMapStrToI := set.(map[string]interface{}) + + if v, ok := ruleExpressionListMapStrToI["cache_rule_expression"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cacheRuleExpression := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression, len(sl)) + ruleExpressionList[i].CacheRuleExpression = cacheRuleExpression + for i, set := range sl { + cacheRuleExpression[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression{} + cacheRuleExpressionMapStrToI := set.(map[string]interface{}) + + if v, ok := cacheRuleExpressionMapStrToI["cache_headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cacheHeaders := make([]*ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType, len(sl)) + cacheRuleExpression[i].CacheHeaders = cacheHeaders + for i, set := range sl { + cacheHeaders[i] = &ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType{} + cacheHeadersMapStrToI := set.(map[string]interface{}) + + if v, ok := cacheHeadersMapStrToI["name"]; ok && !isIntfNil(v) { + + cacheHeaders[i].Name = ves_io_schema_views_cdn_loadbalancer.HeaderOptions(ves_io_schema_views_cdn_loadbalancer.HeaderOptions_value[v.(string)]) + + } + + if v, ok := cacheHeadersMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + cacheHeaders[i].Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cacheRuleExpressionMapStrToI["cookie_matcher"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatcher := make([]*ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType, len(sl)) + cacheRuleExpression[i].CookieMatcher = cookieMatcher + for i, set := range sl { + cookieMatcher[i] = &ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType{} + cookieMatcherMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatcherMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatcher[i].Name = w.(string) + } + + if v, ok := cookieMatcherMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + cookieMatcher[i].Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cacheRuleExpressionMapStrToI["path_match"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + pathMatch := &ves_io_schema_views_cdn_loadbalancer.CDNPathMatcherType{} + cacheRuleExpression[i].PathMatch = pathMatch + for _, set := range sl { + pathMatchMapStrToI := set.(map[string]interface{}) + + if v, ok := pathMatchMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + pathMatch.Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + if v, ok := cacheRuleExpressionMapStrToI["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParameters := make([]*ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType, len(sl)) + cacheRuleExpression[i].QueryParameters = queryParameters + for i, set := range sl { + queryParameters[i] = &ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType{} + queryParametersMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParametersMapStrToI["key"]; ok && !isIntfNil(w) { + queryParameters[i].Key = w.(string) + } + + if v, ok := queryParametersMapStrToI["operator"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} + queryParameters[i].Operator = operator + for _, set := range sl { + operatorMapStrToI := set.(map[string]interface{}) + + cacheOperatorTypeFound := false + + if v, ok := operatorMapStrToI["contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Contains = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_contain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotContain = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_end_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEndWith = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_equal"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotEqual = v.(string) + + } + + if v, ok := operatorMapStrToI["does_not_start_with"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.DoesNotStartWith = v.(string) + + } + + if v, ok := operatorMapStrToI["endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Endswith = v.(string) + + } + + if v, ok := operatorMapStrToI["equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Equals = v.(string) + + } + + if v, ok := operatorMapStrToI["match_regex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.MatchRegex = v.(string) + + } + + if v, ok := operatorMapStrToI["startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + + cacheOperatorTypeFound = true + cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + + operator.CacheOperator = cacheOperatorInt + + cacheOperatorInt.Startswith = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if w, ok := ruleExpressionListMapStrToI["expression_name"]; ok && !isIntfNil(w) { + ruleExpressionList[i].ExpressionName = w.(string) + } + + } + + } + + if w, ok := cacheRulesMapStrToI["rule_name"]; ok && !isIntfNil(w) { + cacheRules[i].RuleName = w.(string) + } + + } + + } + + if v, ok := cacheOptionsMapStrToI["default_cache_action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + defaultCacheAction := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction{} + cacheOptions.DefaultCacheAction = defaultCacheAction + for _, set := range sl { + defaultCacheActionMapStrToI := set.(map[string]interface{}) + + cacheActionsTypeFound := false + + if v, ok := defaultCacheActionMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + + if v.(bool) { + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheDisabled{} + cacheActionsInt.CacheDisabled = &ves_io_schema.Empty{} + defaultCacheAction.CacheActions = cacheActionsInt + } + + } + + if v, ok := defaultCacheActionMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlDefault{} + + defaultCacheAction.CacheActions = cacheActionsInt + + cacheActionsInt.CacheTtlDefault = v.(string) + + } + + if v, ok := defaultCacheActionMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlOverride{} + + defaultCacheAction.CacheActions = cacheActionsInt + + cacheActionsInt.CacheTtlOverride = v.(string) + + } + + if v, ok := defaultCacheActionMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + + cacheActionsTypeFound = true + cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_EligibleForCache{} + cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.DefaultCacheTTLProps{} + defaultCacheAction.CacheActions = cacheActionsInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + + cacheActionsInt.EligibleForCache.CacheTtl = v.(string) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := moreOptionMapStrToI["cache_ttl_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + cacheTtlOptions := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType{} + moreOption.CacheTtlOptions = cacheTtlOptions + for _, set := range sl { + cacheTtlOptionsMapStrToI := set.(map[string]interface{}) + + ttlOptionsTypeFound := false + + if v, ok := cacheTtlOptionsMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + + ttlOptionsTypeFound = true + + if v.(bool) { + ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheDisabled{} + ttlOptionsInt.CacheDisabled = &ves_io_schema.Empty{} + cacheTtlOptions.TtlOptions = ttlOptionsInt + } + + } + + if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + + ttlOptionsTypeFound = true + ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlDefault{} + + cacheTtlOptions.TtlOptions = ttlOptionsInt + + ttlOptionsInt.CacheTtlDefault = v.(string) + + } + + if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + + ttlOptionsTypeFound = true + ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlOverride{} + + cacheTtlOptions.TtlOptions = ttlOptionsInt + + ttlOptionsInt.CacheTtlOverride = v.(string) + + } + + } + + } + + if v, ok := moreOptionMapStrToI["header_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerOptions := &ves_io_schema_views_cdn_loadbalancer.HeaderControlType{} + moreOption.HeaderOptions = headerOptions + for _, set := range sl { + headerOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := headerOptionsMapStrToI["request_headers_to_add"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + requestHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) + headerOptions.RequestHeadersToAdd = requestHeadersToAdd + for i, set := range sl { + requestHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} + requestHeadersToAddMapStrToI := set.(map[string]interface{}) + + if w, ok := requestHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { + requestHeadersToAdd[i].Append = w.(bool) + } + + if w, ok := requestHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { + requestHeadersToAdd[i].Name = w.(string) + } + + valueChoiceTypeFound := false + + if v, ok := requestHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} + valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} + requestHeadersToAdd[i].ValueChoice = valueChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + + valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if v, ok := requestHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + + requestHeadersToAdd[i].ValueChoice = valueChoiceInt + + valueChoiceInt.Value = v.(string) + + } + + } + + } + + if w, ok := headerOptionsMapStrToI["request_headers_to_remove"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + headerOptions.RequestHeadersToRemove = ls + } + + if v, ok := headerOptionsMapStrToI["response_headers_to_add"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + responseHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) + headerOptions.ResponseHeadersToAdd = responseHeadersToAdd + for i, set := range sl { + responseHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} + responseHeadersToAddMapStrToI := set.(map[string]interface{}) + + if w, ok := responseHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { + responseHeadersToAdd[i].Append = w.(bool) + } + + if w, ok := responseHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { + responseHeadersToAdd[i].Name = w.(string) + } + + valueChoiceTypeFound := false + + if v, ok := responseHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} + valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} + responseHeadersToAdd[i].ValueChoice = valueChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + + valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if v, ok := responseHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + + valueChoiceTypeFound = true + valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + + responseHeadersToAdd[i].ValueChoice = valueChoiceInt + + valueChoiceInt.Value = v.(string) + + } + + } + + } + + if w, ok := headerOptionsMapStrToI["response_headers_to_remove"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + headerOptions.ResponseHeadersToRemove = ls + } + + } + + } + + if v, ok := moreOptionMapStrToI["logging_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + loggingOptions := &ves_io_schema_views_cdn_loadbalancer.LoggingOptionsType{} + moreOption.LoggingOptions = loggingOptions + for _, set := range sl { + loggingOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := loggingOptionsMapStrToI["client_log_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} + loggingOptions.ClientLogOptions = clientLogOptions + for _, set := range sl { + clientLogOptionsMapStrToI := set.(map[string]interface{}) + + if w, ok := clientLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + clientLogOptions.HeaderList = ls + } + + } + + } + + if v, ok := loggingOptionsMapStrToI["origin_log_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + originLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} + loggingOptions.OriginLogOptions = originLogOptions + for _, set := range sl { + originLogOptionsMapStrToI := set.(map[string]interface{}) + + if w, ok := originLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + originLogOptions.HeaderList = ls + } + + } + + } + + } + + } + + if v, ok := moreOptionMapStrToI["security_options"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + securityOptions := &ves_io_schema_views_cdn_loadbalancer.SecurityOptionsType{} + moreOption.SecurityOptions = securityOptions + for _, set := range sl { + securityOptionsMapStrToI := set.(map[string]interface{}) + + if v, ok := securityOptionsMapStrToI["api_protection"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiProtection := &ves_io_schema_views_cdn_loadbalancer.ApiProtection{} + securityOptions.ApiProtection = apiProtection + for _, set := range sl { + apiProtectionMapStrToI := set.(map[string]interface{}) + + apiDefinitionChoiceTypeFound := false + + if v, ok := apiProtectionMapStrToI["api_specification"]; ok && !isIntfNil(v) && !apiDefinitionChoiceTypeFound { + + apiDefinitionChoiceTypeFound = true + apiDefinitionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_ApiSpecification{} + apiDefinitionChoiceInt.ApiSpecification = &ves_io_schema_views_common_waf.APISpecificationSettings{} + apiProtection.ApiDefinitionChoice = apiDefinitionChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_definition"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiDefinitionIntNew := &ves_io_schema_views.ObjectRefType{} + apiDefinitionChoiceInt.ApiSpecification.ApiDefinition = apiDefinitionIntNew + + for _, set := range sl { + adMapToStrVal := set.(map[string]interface{}) + if val, ok := adMapToStrVal["name"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Name = val.(string) + } + if val, ok := adMapToStrVal["namespace"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Namespace = val.(string) + } + + if val, ok := adMapToStrVal["tenant"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Tenant = val.(string) + } + } + + } + + validationTargetChoiceTypeFound := false + + if v, ok := cs["validation_all_spec_endpoints"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{} + validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings{} + apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + if v, ok := cs["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_custom_list"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationCustomList{} + validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_common_waf.ValidateApiBySpecRule{} + apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationCustomList.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.OpenApiValidationRule, len(sl)) + validationTargetChoiceInt.ValidationCustomList.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.OpenApiValidationRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + domainChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + openApiValidationRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_SpecificDomain{} + + openApiValidationRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + openApiValidationRules[i].ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationCustomList.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_disabled"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + + if v.(bool) { + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{} + validationTargetChoiceInt.ValidationDisabled = &ves_io_schema.Empty{} + apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["api_specification_on_cache_miss"]; ok && !isIntfNil(v) && !apiDefinitionChoiceTypeFound { + + apiDefinitionChoiceTypeFound = true + apiDefinitionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_ApiSpecificationOnCacheMiss{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss = &ves_io_schema_views_common_waf.APISpecificationSettings{} + apiProtection.ApiDefinitionChoice = apiDefinitionChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_definition"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiDefinitionIntNew := &ves_io_schema_views.ObjectRefType{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ApiDefinition = apiDefinitionIntNew + + for _, set := range sl { + adMapToStrVal := set.(map[string]interface{}) + if val, ok := adMapToStrVal["name"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Name = val.(string) + } + if val, ok := adMapToStrVal["namespace"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Namespace = val.(string) + } + + if val, ok := adMapToStrVal["tenant"]; ok && !isIntfNil(v) { + apiDefinitionIntNew.Tenant = val.(string) + } + } + + } + + validationTargetChoiceTypeFound := false + + if v, ok := cs["validation_all_spec_endpoints"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{} + validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + if v, ok := cs["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + validationTargetChoiceInt.ValidationAllSpecEndpoints.ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_custom_list"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationCustomList{} + validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_common_waf.ValidateApiBySpecRule{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ValidationTargetChoice = validationTargetChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} + validationTargetChoiceInt.ValidationCustomList.FallThroughMode = fallThroughMode + for _, set := range sl { + fallThroughModeMapStrToI := set.(map[string]interface{}) + + fallThroughModeChoiceTypeFound := false + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_allow"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + + if v.(bool) { + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + } + + } + + if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { + + fallThroughModeChoiceTypeFound = true + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} + fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) + fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["action_block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} + actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} + actionChoiceInt.ActionReport = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["action_skip"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} + actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} + openApiValidationRules[i].ActionChoice = actionChoiceInt + } + + } + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.OpenApiValidationRule, len(sl)) + validationTargetChoiceInt.ValidationCustomList.OpenApiValidationRules = openApiValidationRules + for i, set := range sl { + openApiValidationRules[i] = &ves_io_schema_views_common_waf.OpenApiValidationRule{} + openApiValidationRulesMapStrToI := set.(map[string]interface{}) + + conditionTypeChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + conditionTypeChoiceInt.ApiEndpoint.Methods = methodsList + + } + + if v, ok := cs["path"]; ok && !isIntfNil(v) { + + conditionTypeChoiceInt.ApiEndpoint.Path = v.(string) + + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiGroup{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.ApiGroup = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { + + conditionTypeChoiceTypeFound = true + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_BasePath{} + + openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt + + conditionTypeChoiceInt.BasePath = v.(string) + + } + + domainChoiceTypeFound := false + + if v, ok := openApiValidationRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + openApiValidationRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := openApiValidationRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_SpecificDomain{} + + openApiValidationRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := openApiValidationRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + openApiValidationRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := openApiValidationRulesMapStrToI["validation_mode"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} + openApiValidationRules[i].ValidationMode = validationMode + for _, set := range sl { + validationModeMapStrToI := set.(map[string]interface{}) + + responseValidationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["response_validation_properties"]; ok && !isIntfNil(v) { + + response_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + response_validation_propertiesList = append(response_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + responseValidationModeChoiceInt.ResponseValidationModeActive.ResponseValidationProperties = response_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + if v, ok := validationModeMapStrToI["skip_response_validation"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { + + responseValidationModeChoiceTypeFound = true + + if v.(bool) { + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} + validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt + } + + } + + validationModeChoiceTypeFound := false + + if v, ok := validationModeMapStrToI["skip_validation"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + + if v.(bool) { + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} + validationMode.ValidationModeChoice = validationModeChoiceInt + } + + } + + if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { + + validationModeChoiceTypeFound = true + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} + validationMode.ValidationModeChoice = validationModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["request_validation_properties"]; ok && !isIntfNil(v) { + + request_validation_propertiesList := []ves_io_schema.OpenApiValidationProperties{} + for _, j := range v.([]interface{}) { + request_validation_propertiesList = append(request_validation_propertiesList, ves_io_schema.OpenApiValidationProperties(ves_io_schema.OpenApiValidationProperties_value[j.(string)])) + } + validationModeChoiceInt.ValidationModeActive.RequestValidationProperties = request_validation_propertiesList + + } + + validationEnforcementTypeTypeFound := false + + if v, ok := cs["enforcement_block"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + if v, ok := cs["enforcement_report"]; ok && !isIntfNil(v) && !validationEnforcementTypeTypeFound { + + validationEnforcementTypeTypeFound = true + + if v.(bool) { + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} + validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt + } + + } + + } + + } + + } + + } + + } + + } + + oversizedBodyChoiceTypeFound := false + + if v, ok := cs["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := cs["settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} + validationTargetChoiceInt.ValidationCustomList.Settings = settings + for _, set := range sl { + settingsMapStrToI := set.(map[string]interface{}) + + oversizedBodyChoiceTypeFound := false + + if v, ok := settingsMapStrToI["oversized_body_fail_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + if v, ok := settingsMapStrToI["oversized_body_skip_validation"]; ok && !isIntfNil(v) && !oversizedBodyChoiceTypeFound { + + oversizedBodyChoiceTypeFound = true + + if v.(bool) { + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} + settings.OversizedBodyChoice = oversizedBodyChoiceInt + } + + } + + propertyValidationSettingsChoiceTypeFound := false + + if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["headers"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers + for _, set := range sl { + headersMapStrToI := set.(map[string]interface{}) + + additionalHeadersChoiceTypeFound := false + + if v, ok := headersMapStrToI["allow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + if v, ok := headersMapStrToI["disallow_additional_headers"]; ok && !isIntfNil(v) && !additionalHeadersChoiceTypeFound { + + additionalHeadersChoiceTypeFound = true + + if v.(bool) { + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} + headers.AdditionalHeadersChoice = additionalHeadersChoiceInt + } + + } + + } + + } + + if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters + for _, set := range sl { + queryParametersMapStrToI := set.(map[string]interface{}) + + additionalParametersChoiceTypeFound := false + + if v, ok := queryParametersMapStrToI["allow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + if v, ok := queryParametersMapStrToI["disallow_additional_parameters"]; ok && !isIntfNil(v) && !additionalParametersChoiceTypeFound { + + additionalParametersChoiceTypeFound = true + + if v.(bool) { + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} + queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := settingsMapStrToI["property_validation_settings_default"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { + + propertyValidationSettingsChoiceTypeFound = true + + if v.(bool) { + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} + settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := cs["validation_disabled"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { + + validationTargetChoiceTypeFound = true + + if v.(bool) { + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{} + validationTargetChoiceInt.ValidationDisabled = &ves_io_schema.Empty{} + apiDefinitionChoiceInt.ApiSpecificationOnCacheMiss.ValidationTargetChoice = validationTargetChoiceInt + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["disable_api_definition"]; ok && !isIntfNil(v) && !apiDefinitionChoiceTypeFound { + + apiDefinitionChoiceTypeFound = true + + if v.(bool) { + apiDefinitionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDefinition{} + apiDefinitionChoiceInt.DisableApiDefinition = &ves_io_schema.Empty{} + apiProtection.ApiDefinitionChoice = apiDefinitionChoiceInt + } + + } + + apiDiscoveryChoiceTypeFound := false + + if v, ok := apiProtectionMapStrToI["api_discovery_on_cache_miss"]; ok && !isIntfNil(v) && !apiDiscoveryChoiceTypeFound { + + apiDiscoveryChoiceTypeFound = true + apiDiscoveryChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_ApiDiscoveryOnCacheMiss{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} + apiProtection.ApiDiscoveryChoice = apiDiscoveryChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["discovered_api_settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + discoveredApiSettings := &ves_io_schema_app_type.DiscoveredAPISettings{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.DiscoveredApiSettings = discoveredApiSettings + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + learnFromRedirectTrafficTypeFound := false + + if v, ok := cs["disable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["enable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["sensitive_data_detection_rules"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + sensitiveDataDetectionRules := &ves_io_schema_app_type.SensitiveDataDetectionRules{} + apiDiscoveryChoiceInt.ApiDiscoveryOnCacheMiss.SensitiveDataDetectionRules = sensitiveDataDetectionRules + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["disable_api_discovery"]; ok && !isIntfNil(v) && !apiDiscoveryChoiceTypeFound { + + apiDiscoveryChoiceTypeFound = true + + if v.(bool) { + apiDiscoveryChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_DisableApiDiscovery{} + apiDiscoveryChoiceInt.DisableApiDiscovery = &ves_io_schema.Empty{} + apiProtection.ApiDiscoveryChoice = apiDiscoveryChoiceInt + } + + } + + if v, ok := apiProtectionMapStrToI["enable_api_discovery"]; ok && !isIntfNil(v) && !apiDiscoveryChoiceTypeFound { + + apiDiscoveryChoiceTypeFound = true + apiDiscoveryChoiceInt := &ves_io_schema_views_cdn_loadbalancer.ApiProtection_EnableApiDiscovery{} + apiDiscoveryChoiceInt.EnableApiDiscovery = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} + apiProtection.ApiDiscoveryChoice = apiDiscoveryChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["discovered_api_settings"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + discoveredApiSettings := &ves_io_schema_app_type.DiscoveredAPISettings{} + apiDiscoveryChoiceInt.EnableApiDiscovery.DiscoveredApiSettings = discoveredApiSettings + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + learnFromRedirectTrafficTypeFound := false + + if v, ok := cs["disable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["enable_learn_from_redirect_traffic"]; ok && !isIntfNil(v) && !learnFromRedirectTrafficTypeFound { + + learnFromRedirectTrafficTypeFound = true + + if v.(bool) { + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} + apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt + } + + } + + if v, ok := cs["sensitive_data_detection_rules"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + sensitiveDataDetectionRules := &ves_io_schema_app_type.SensitiveDataDetectionRules{} + apiDiscoveryChoiceInt.EnableApiDiscovery.SensitiveDataDetectionRules = sensitiveDataDetectionRules + for _, set := range sl { + _ = set.(map[string]interface{}) + + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["api_protection_rules"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiProtectionRules := &ves_io_schema_views_common_waf.APIProtectionRules{} + apiProtection.ApiProtectionRules = apiProtectionRules + for _, set := range sl { + apiProtectionRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiProtectionRulesMapStrToI["api_endpoint_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.APIEndpointProtectionRule, len(sl)) + apiProtectionRules.ApiEndpointRules = apiEndpointRules + for i, set := range sl { + apiEndpointRules[i] = &ves_io_schema_views_common_waf.APIEndpointProtectionRule{} + apiEndpointRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiEndpointRulesMapStrToI["action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} + apiEndpointRules[i].Action = action + for _, set := range sl { + actionMapStrToI := set.(map[string]interface{}) + + actionTypeFound := false + + if v, ok := actionMapStrToI["allow"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} + actionInt.Allow = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + if v, ok := actionMapStrToI["deny"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} + actionInt.Deny = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + } + + } + + if v, ok := apiEndpointRulesMapStrToI["api_endpoint_method"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + apiEndpointMethod := &ves_io_schema_policy.HttpMethodMatcherType{} + apiEndpointRules[i].ApiEndpointMethod = apiEndpointMethod + for _, set := range sl { + apiEndpointMethodMapStrToI := set.(map[string]interface{}) + + if w, ok := apiEndpointMethodMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + apiEndpointMethod.InvertMatcher = w.(bool) + } + + if v, ok := apiEndpointMethodMapStrToI["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + apiEndpointMethod.Methods = methodsList + + } + + } + + } + + if w, ok := apiEndpointRulesMapStrToI["api_endpoint_path"]; ok && !isIntfNil(w) { + apiEndpointRules[i].ApiEndpointPath = w.(string) + } + + if v, ok := apiEndpointRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + apiEndpointRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + domainChoiceTypeFound := false + + if v, ok := apiEndpointRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + apiEndpointRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_SpecificDomain{} + + apiEndpointRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := apiEndpointRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + apiEndpointRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := apiEndpointRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + apiEndpointRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + if v, ok := apiProtectionRulesMapStrToI["api_groups_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + apiGroupsRules := make([]*ves_io_schema_views_common_waf.APIGroupProtectionRule, len(sl)) + apiProtectionRules.ApiGroupsRules = apiGroupsRules + for i, set := range sl { + apiGroupsRules[i] = &ves_io_schema_views_common_waf.APIGroupProtectionRule{} + apiGroupsRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiGroupsRulesMapStrToI["action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} + apiGroupsRules[i].Action = action + for _, set := range sl { + actionMapStrToI := set.(map[string]interface{}) + + actionTypeFound := false + + if v, ok := actionMapStrToI["allow"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} + actionInt.Allow = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + if v, ok := actionMapStrToI["deny"]; ok && !isIntfNil(v) && !actionTypeFound { + + actionTypeFound = true + + if v.(bool) { + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} + actionInt.Deny = &ves_io_schema.Empty{} + action.Action = actionInt + } + + } + + } + + } + + if w, ok := apiGroupsRulesMapStrToI["api_group"]; ok && !isIntfNil(w) { + apiGroupsRules[i].ApiGroup = w.(string) + } + + if w, ok := apiGroupsRulesMapStrToI["base_path"]; ok && !isIntfNil(w) { + apiGroupsRules[i].BasePath = w.(string) + } + + if v, ok := apiGroupsRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + apiGroupsRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) + + clientChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { + + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList + + } + + } + + } + + ipAsnChoiceTypeFound := false + + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } + + } + + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { + + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { + + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} + + asnSetsInt[i].Kind = "bgp_asn_set" + + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } + + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } + + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } + + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { + + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList + + } + + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } + + } + + domainChoiceTypeFound := false + + if v, ok := apiGroupsRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + apiGroupsRules[i].DomainChoice = domainChoiceInt + } + + } + + if v, ok := apiGroupsRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_SpecificDomain{} + + apiGroupsRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SpecificDomain = v.(string) + + } + + if v, ok := apiGroupsRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + apiGroupsRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } + + } + + } + + if v, ok := apiGroupsRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + apiGroupsRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) + + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } + + } + + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} + + cookieMatchers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } + + } + + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} + + headers[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } + + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } + + matchTypeFound := false + + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } + + } + + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} + + queryParams[i].Match = matchInt + + matchInt.Presence = v.(bool) + + } + + } + + } + + } + + } + + } + + } + + } + + } + + if v, ok := apiProtectionMapStrToI["jwt_validation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + jwtValidation := &ves_io_schema_views_common_waf.JWTValidation{} + apiProtection.JwtValidation = jwtValidation + for _, set := range sl { + jwtValidationMapStrToI := set.(map[string]interface{}) + + if v, ok := jwtValidationMapStrToI["action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + action := &ves_io_schema.Action{} + jwtValidation.Action = action + for _, set := range sl { + actionMapStrToI := set.(map[string]interface{}) + + actionChoiceTypeFound := false + + if v, ok := actionMapStrToI["block"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema.Action_Block{} + actionChoiceInt.Block = &ves_io_schema.Empty{} + action.ActionChoice = actionChoiceInt + } + + } + + if v, ok := actionMapStrToI["report"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema.Action_Report{} + actionChoiceInt.Report = &ves_io_schema.Empty{} + action.ActionChoice = actionChoiceInt + } + + } + + } + + } + + jwksConfigurationTypeFound := false + + if v, ok := jwtValidationMapStrToI["auth_server_uri"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { + + jwksConfigurationTypeFound = true + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_AuthServerUri{} + + jwtValidation.JwksConfiguration = jwksConfigurationInt + + jwksConfigurationInt.AuthServerUri = v.(string) + + } + + if v, ok := jwtValidationMapStrToI["jwks"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { + + jwksConfigurationTypeFound = true + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_Jwks{} + + jwtValidation.JwksConfiguration = jwksConfigurationInt + + jwksConfigurationInt.Jwks = v.(string) + + } + + if v, ok := jwtValidationMapStrToI["jwks_config"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { + + jwksConfigurationTypeFound = true + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_JwksConfig{} + jwksConfigurationInt.JwksConfig = &ves_io_schema_views_common_waf.JWKS{} + jwtValidation.JwksConfiguration = jwksConfigurationInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["cleartext"]; ok && !isIntfNil(v) { + + jwksConfigurationInt.JwksConfig.Cleartext = v.(string) + + } + + } + + } + + if v, ok := jwtValidationMapStrToI["mandatory_claims"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + mandatoryClaims := &ves_io_schema_views_common_waf.MandatoryClaims{} + jwtValidation.MandatoryClaims = mandatoryClaims + for _, set := range sl { + mandatoryClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := mandatoryClaimsMapStrToI["claim_names"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + mandatoryClaims.ClaimNames = ls + } + + } + + } + + if v, ok := jwtValidationMapStrToI["reserved_claims"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + reservedClaims := &ves_io_schema_views_common_waf.ReservedClaims{} + jwtValidation.ReservedClaims = reservedClaims + for _, set := range sl { + reservedClaimsMapStrToI := set.(map[string]interface{}) + + audienceValidationTypeFound := false + + if v, ok := reservedClaimsMapStrToI["audience"]; ok && !isIntfNil(v) && !audienceValidationTypeFound { + + audienceValidationTypeFound = true + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Audience{} + audienceValidationInt.Audience = &ves_io_schema_views_common_waf.Audiences{} + reservedClaims.AudienceValidation = audienceValidationInt - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - "trusted_ca": { + if v, ok := cs["audiences"]; ok && !isIntfNil(v) { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + audienceValidationInt.Audience.Audiences = ls - "name": { - Type: schema.TypeString, - Optional: true, - }, - "namespace": { - Type: schema.TypeString, - Optional: true, - }, - "tenant": { - Type: schema.TypeString, - Optional: true, - }, - }, - }, - }, + } - "trusted_ca_url": { + } - Type: schema.TypeString, - Optional: true, - }, - }, - }, - }, + } - "volterra_trusted_ca": { + if v, ok := reservedClaimsMapStrToI["audience_disable"]; ok && !isIntfNil(v) && !audienceValidationTypeFound { - Type: schema.TypeBool, - Optional: true, - }, + audienceValidationTypeFound = true - "disable_sni": { + if v.(bool) { + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_AudienceDisable{} + audienceValidationInt.AudienceDisable = &ves_io_schema.Empty{} + reservedClaims.AudienceValidation = audienceValidationInt + } - Type: schema.TypeBool, - Optional: true, - }, + } - "sni": { + issuerValidationTypeFound := false - Type: schema.TypeString, - Optional: true, - }, + if v, ok := reservedClaimsMapStrToI["issuer"]; ok && !isIntfNil(v) && !issuerValidationTypeFound { - "use_host_header_as_sni": { + issuerValidationTypeFound = true + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Issuer{} - Type: schema.TypeBool, - Optional: true, - }, + reservedClaims.IssuerValidation = issuerValidationInt - "tls_config": { + issuerValidationInt.Issuer = v.(string) - Type: schema.TypeSet, - Required: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + } - "custom_security": { + if v, ok := reservedClaimsMapStrToI["issuer_disable"]; ok && !isIntfNil(v) && !issuerValidationTypeFound { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ + issuerValidationTypeFound = true - "cipher_suites": { + if v.(bool) { + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_IssuerDisable{} + issuerValidationInt.IssuerDisable = &ves_io_schema.Empty{} + reservedClaims.IssuerValidation = issuerValidationInt + } - Type: schema.TypeList, + } - Required: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, + validatePeriodTypeFound := false - "max_version": { - Type: schema.TypeString, - Optional: true, - }, + if v, ok := reservedClaimsMapStrToI["validate_period_disable"]; ok && !isIntfNil(v) && !validatePeriodTypeFound { - "min_version": { - Type: schema.TypeString, - Optional: true, - }, - }, - }, - }, + validatePeriodTypeFound = true - "default_security": { + if v.(bool) { + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodDisable{} + validatePeriodInt.ValidatePeriodDisable = &ves_io_schema.Empty{} + reservedClaims.ValidatePeriod = validatePeriodInt + } - Type: schema.TypeBool, - Optional: true, - }, + } - "low_security": { + if v, ok := reservedClaimsMapStrToI["validate_period_enable"]; ok && !isIntfNil(v) && !validatePeriodTypeFound { - Type: schema.TypeBool, - Optional: true, - }, + validatePeriodTypeFound = true - "medium_security": { + if v.(bool) { + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{} + validatePeriodInt.ValidatePeriodEnable = &ves_io_schema.Empty{} + reservedClaims.ValidatePeriod = validatePeriodInt + } - Type: schema.TypeBool, - Optional: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - } -} + } -// resourceVolterraCdnLoadbalancerCreate creates CdnLoadbalancer resource -func resourceVolterraCdnLoadbalancerCreate(d *schema.ResourceData, meta interface{}) error { - client := meta.(*APIClient) + } - createMeta := &ves_io_schema.ObjectCreateMetaType{} - createSpec := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType{} - createReq := &ves_io_schema_views_cdn_loadbalancer.CreateRequest{ - Metadata: createMeta, - Spec: createSpec, - } + } - if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + if v, ok := jwtValidationMapStrToI["target"]; ok && !isIntfNil(v) { - ms := map[string]string{} + sl := v.(*schema.Set).List() + target := &ves_io_schema_views_common_waf.Target{} + jwtValidation.Target = target + for _, set := range sl { + targetMapStrToI := set.(map[string]interface{}) - for k, v := range v.(map[string]interface{}) { - val := v.(string) - ms[k] = val - } - createMeta.Annotations = ms - } + targetTypeFound := false - if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { - createMeta.Description = - v.(string) - } + if v, ok := targetMapStrToI["all_endpoint"]; ok && !isIntfNil(v) && !targetTypeFound { - if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { - createMeta.Disable = - v.(bool) - } + targetTypeFound = true - if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + if v.(bool) { + targetInt := &ves_io_schema_views_common_waf.Target_AllEndpoint{} + targetInt.AllEndpoint = &ves_io_schema.Empty{} + target.Target = targetInt + } - ms := map[string]string{} + } - for k, v := range v.(map[string]interface{}) { - val := v.(string) - ms[k] = val - } - createMeta.Labels = ms - } + if v, ok := targetMapStrToI["api_groups"]; ok && !isIntfNil(v) && !targetTypeFound { - if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { - createMeta.Name = - v.(string) - } + targetTypeFound = true + targetInt := &ves_io_schema_views_common_waf.Target_ApiGroups{} + targetInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} + target.Target = targetInt - if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { - createMeta.Namespace = - v.(string) - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - //add_location - if v, ok := d.GetOk("add_location"); ok && !isIntfNil(v) { + if v, ok := cs["api_groups"]; ok && !isIntfNil(v) { - createSpec.AddLocation = - v.(bool) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + targetInt.ApiGroups.ApiGroups = ls - } + } - //domains - if v, ok := d.GetOk("domains"); ok && !isIntfNil(v) { + } - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) - } - createSpec.Domains = ls + } - } + if v, ok := targetMapStrToI["base_paths"]; ok && !isIntfNil(v) && !targetTypeFound { - //loadbalancer_type + targetTypeFound = true + targetInt := &ves_io_schema_views_common_waf.Target_BasePaths{} + targetInt.BasePaths = &ves_io_schema_views_common_waf.BasePathsType{} + target.Target = targetInt - loadbalancerTypeTypeFound := false + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := d.GetOk("http"); ok && !loadbalancerTypeTypeFound { + if v, ok := cs["base_paths"]; ok && !isIntfNil(v) { - loadbalancerTypeTypeFound = true - loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType_Http{} - loadbalancerTypeInt.Http = &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp{} - createSpec.LoadbalancerType = loadbalancerTypeInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + targetInt.BasePaths.BasePaths = ls - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["dns_volterra_managed"]; ok && !isIntfNil(v) { + } - loadbalancerTypeInt.Http.DnsVolterraManaged = v.(bool) + } - } + } - portChoiceTypeFound := false + } - if v, ok := cs["port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + if v, ok := jwtValidationMapStrToI["token_location"]; ok && !isIntfNil(v) { - portChoiceTypeFound = true - portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_Port{} + sl := v.(*schema.Set).List() + tokenLocation := &ves_io_schema_views_common_waf.TokenLocation{} + jwtValidation.TokenLocation = tokenLocation + for _, set := range sl { + tokenLocationMapStrToI := set.(map[string]interface{}) - loadbalancerTypeInt.Http.PortChoice = portChoiceInt + tokenLocationTypeFound := false - portChoiceInt.Port = uint32(v.(int)) + if v, ok := tokenLocationMapStrToI["bearer_token"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { - } + tokenLocationTypeFound = true - if v, ok := cs["port_ranges"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + if v.(bool) { + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_BearerToken{} + tokenLocationInt.BearerToken = &ves_io_schema.Empty{} + tokenLocation.TokenLocation = tokenLocationInt + } - portChoiceTypeFound = true - portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_PortRanges{} + } - loadbalancerTypeInt.Http.PortChoice = portChoiceInt + if v, ok := tokenLocationMapStrToI["cookie"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { - portChoiceInt.PortRanges = v.(string) + tokenLocationTypeFound = true + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Cookie{} - } + tokenLocation.TokenLocation = tokenLocationInt - } + tokenLocationInt.Cookie = v.(string) - } + } - if v, ok := d.GetOk("https"); ok && !loadbalancerTypeTypeFound { + if v, ok := tokenLocationMapStrToI["header"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { - loadbalancerTypeTypeFound = true - loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType_Https{} - loadbalancerTypeInt.Https = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSCustomCertsType{} - createSpec.LoadbalancerType = loadbalancerTypeInt + tokenLocationTypeFound = true + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Header{} - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + tokenLocation.TokenLocation = tokenLocationInt - if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + tokenLocationInt.Header = v.(string) - loadbalancerTypeInt.Https.AddHsts = v.(bool) + } - } + if v, ok := tokenLocationMapStrToI["query_param"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { - if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + tokenLocationTypeFound = true + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_QueryParam{} - loadbalancerTypeInt.Https.HttpRedirect = v.(bool) + tokenLocation.TokenLocation = tokenLocationInt - } + tokenLocationInt.QueryParam = v.(string) - if v, ok := cs["tls_parameters"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - tlsParameters := &ves_io_schema_views_cdn_loadbalancer.CDNDownstreamTlsParamsType{} - loadbalancerTypeInt.Https.TlsParameters = tlsParameters - for _, set := range sl { - tlsParametersMapStrToI := set.(map[string]interface{}) + } - if v, ok := tlsParametersMapStrToI["tls_certificates"]; ok && !isIntfNil(v) { + } - sl := v.([]interface{}) - tlsCertificates := make([]*ves_io_schema.TlsCertificateType, len(sl)) - tlsParameters.TlsCertificates = tlsCertificates - for i, set := range sl { - tlsCertificates[i] = &ves_io_schema.TlsCertificateType{} - tlsCertificatesMapStrToI := set.(map[string]interface{}) + } - if w, ok := tlsCertificatesMapStrToI["certificate_url"]; ok && !isIntfNil(w) { - tlsCertificates[i].CertificateUrl = w.(string) } - if w, ok := tlsCertificatesMapStrToI["description"]; ok && !isIntfNil(w) { - tlsCertificates[i].Description = w.(string) - } + } - ocspStaplingChoiceTypeFound := false + } - if v, ok := tlsCertificatesMapStrToI["custom_hash_algorithms"]; ok && !isIntfNil(v) && !ocspStaplingChoiceTypeFound { + if v, ok := securityOptionsMapStrToI["auth_options"]; ok && !isIntfNil(v) { - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_CustomHashAlgorithms{} - ocspStaplingChoiceInt.CustomHashAlgorithms = &ves_io_schema.HashAlgorithms{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + sl := v.(*schema.Set).List() + authOptions := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions{} + securityOptions.AuthOptions = authOptions + for _, set := range sl { + authOptionsMapStrToI := set.(map[string]interface{}) + + authOptionsTypeFound := false + + if v, ok := authOptionsMapStrToI["custom"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + + authOptionsTypeFound = true + authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Custom{} + authOptionsInt.Custom = &ves_io_schema_views_cdn_loadbalancer.CDNCustomAuthentication{} + authOptions.AuthOptions = authOptionsInt sl := v.(*schema.Set).List() for _, set := range sl { cs := set.(map[string]interface{}) - if v, ok := cs["hash_algorithms"]; ok && !isIntfNil(v) { + if v, ok := cs["custom_auth_config"]; ok && !isIntfNil(v) { - hash_algorithmsList := []ves_io_schema.HashAlgorithm{} - for _, j := range v.([]interface{}) { - hash_algorithmsList = append(hash_algorithmsList, ves_io_schema.HashAlgorithm(ves_io_schema.HashAlgorithm_value[j.(string)])) - } - ocspStaplingChoiceInt.CustomHashAlgorithms.HashAlgorithms = hash_algorithmsList + authOptionsInt.Custom.CustomAuthConfig = v.(string) } @@ -2687,388 +30427,439 @@ func resourceVolterraCdnLoadbalancerCreate(d *schema.ResourceData, meta interfac } - if _, ok := tlsCertificatesMapStrToI["disable_ocsp_stapling"]; ok && !ocspStaplingChoiceTypeFound { - - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_DisableOcspStapling{} - ocspStaplingChoiceInt.DisableOcspStapling = &ves_io_schema.Empty{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt - - } + if v, ok := authOptionsMapStrToI["disable_auth"]; ok && !isIntfNil(v) && !authOptionsTypeFound { - if _, ok := tlsCertificatesMapStrToI["use_system_defaults"]; ok && !ocspStaplingChoiceTypeFound { + authOptionsTypeFound = true - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_UseSystemDefaults{} - ocspStaplingChoiceInt.UseSystemDefaults = &ves_io_schema.Empty{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + if v.(bool) { + authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_DisableAuth{} + authOptionsInt.DisableAuth = &ves_io_schema.Empty{} + authOptions.AuthOptions = authOptionsInt + } } - if v, ok := tlsCertificatesMapStrToI["private_key"]; ok && !isIntfNil(v) { + if v, ok := authOptionsMapStrToI["jwt"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + + authOptionsTypeFound = true + authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Jwt{} + authOptionsInt.Jwt = &ves_io_schema_policy.JwtTokenAuthOptions{} + authOptions.AuthOptions = authOptionsInt sl := v.(*schema.Set).List() - privateKey := &ves_io_schema.SecretType{} - tlsCertificates[i].PrivateKey = privateKey for _, set := range sl { - privateKeyMapStrToI := set.(map[string]interface{}) + cs := set.(map[string]interface{}) - if v, ok := privateKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + if v, ok := cs["backup_key"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - privateKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + backupKey := &ves_io_schema.SecretType{} + authOptionsInt.Jwt.BackupKey = backupKey for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + backupKeyMapStrToI := set.(map[string]interface{}) - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + if v, ok := backupKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + backupKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) } - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) + if v, ok := backupKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + backupKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + } - } + secretInfoOneofTypeFound := false - } + if v, ok := backupKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - if v, ok := privateKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt - privateKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { - secretInfoOneofTypeFound := false + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) - if v, ok := privateKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["location"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) - if v, ok := cs["location"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + } } - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + if v, ok := backupKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["provider"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) - if v, ok := privateKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["url"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + } } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if v, ok := backupKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["key"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) - if v, ok := privateKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["location"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) - if v, ok := cs["key"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := backupKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + backupKey.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } + + } + + if v, ok := cs["secret_key"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + secretKey := &ves_io_schema.SecretType{} + authOptionsInt.Jwt.SecretKey = secretKey + for _, set := range sl { + secretKeyMapStrToI := set.(map[string]interface{}) + + if v, ok := secretKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + secretKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } - } + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + } } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + if v, ok := secretKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + secretKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) } - } - - } - - if v, ok := privateKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + secretInfoOneofTypeFound := false - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := secretKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt - if v, ok := cs["name"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) - } + } - } + if v, ok := cs["location"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) - } + } - } + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) - if v, ok := tlsParametersMapStrToI["tls_config"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} - tlsParameters.TlsConfig = tlsConfig - for _, set := range sl { - tlsConfigMapStrToI := set.(map[string]interface{}) + } - choiceTypeFound := false + } - if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + if v, ok := secretKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - choiceTypeFound = true + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} - choiceInt.Tls_11Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["provider"]; ok && !isIntfNil(v) { - if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) - choiceTypeFound = true + } - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} - choiceInt.Tls_12Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + if v, ok := cs["url"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) - } + } - } + } - } + } - } + if v, ok := secretKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - } + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := d.GetOk("https_auto_cert"); ok && !loadbalancerTypeTypeFound { + if v, ok := cs["key"]; ok && !isIntfNil(v) { - loadbalancerTypeTypeFound = true - loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.CreateSpecType_HttpsAutoCert{} - loadbalancerTypeInt.HttpsAutoCert = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSAutoCertsType{} - createSpec.LoadbalancerType = loadbalancerTypeInt + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + if v, ok := cs["location"]; ok && !isIntfNil(v) { - loadbalancerTypeInt.HttpsAutoCert.AddHsts = v.(bool) + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) - } + } - if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + if v, ok := cs["provider"]; ok && !isIntfNil(v) { - loadbalancerTypeInt.HttpsAutoCert.HttpRedirect = v.(bool) + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) - } + } - if v, ok := cs["tls_config"]; ok && !isIntfNil(v) { + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} - loadbalancerTypeInt.HttpsAutoCert.TlsConfig = tlsConfig - for _, set := range sl { - tlsConfigMapStrToI := set.(map[string]interface{}) + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) - choiceTypeFound := false + } - if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + if v, ok := cs["version"]; ok && !isIntfNil(v) { - choiceTypeFound = true + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} - choiceInt.Tls_11Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + } - } + } - if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + } - choiceTypeFound = true + if v, ok := secretKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} - choiceInt.Tls_12Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + secretKey.SecretInfoOneof = secretInfoOneofInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["name"]; ok && !isIntfNil(v) { - } + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) - } + } - } + } - //more_option - if v, ok := d.GetOk("more_option"); ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - moreOption := &ves_io_schema_views_cdn_loadbalancer.AdvancedOptionsType{} - createSpec.MoreOption = moreOption - for _, set := range sl { - moreOptionMapStrToI := set.(map[string]interface{}) + } - if v, ok := moreOptionMapStrToI["cache_options"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - cacheOptions := &ves_io_schema_views_cdn_loadbalancer.CacheOptions{} - moreOption.CacheOptions = cacheOptions - for _, set := range sl { - cacheOptionsMapStrToI := set.(map[string]interface{}) + tokenSourceTypeFound := false - if v, ok := cacheOptionsMapStrToI["cache_rules"]; ok && !isIntfNil(v) { + if v, ok := cs["bearer_token"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { - sl := v.([]interface{}) - cacheRules := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRule, len(sl)) - cacheOptions.CacheRules = cacheRules - for i, set := range sl { - cacheRules[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule{} - cacheRulesMapStrToI := set.(map[string]interface{}) + tokenSourceTypeFound = true - cacheActionsTypeFound := false + if v.(bool) { + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_BearerToken{} + tokenSourceInt.BearerToken = &ves_io_schema.Empty{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt + } - if v, ok := cacheRulesMapStrToI["cache_bypass"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + } - cacheActionsTypeFound = true + if v, ok := cs["cookie"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { - if v.(bool) { - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{} - cacheActionsInt.CacheBypass = &ves_io_schema.Empty{} - cacheRules[i].CacheActions = cacheActionsInt - } + tokenSourceTypeFound = true + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Cookie{} + tokenSourceInt.Cookie = &ves_io_schema_policy.HttpCookieName{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cacheRulesMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + if v, ok := cs["name"]; ok && !isIntfNil(v) { - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_EligibleForCache{} - cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions{} - cacheRules[i].CacheActions = cacheActionsInt + tokenSourceInt.Cookie.Name = v.(string) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - eligibleForCacheTypeFound := false + } - if v, ok := cs["hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + } - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_HostnameUri{} - eligibleForCacheInt.HostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + if v, ok := cs["header"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + + tokenSourceTypeFound = true + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Header{} + tokenSourceInt.Header = &ves_io_schema_policy.HttpHeaderName{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt sl := v.(*schema.Set).List() for _, set := range sl { cs := set.(map[string]interface{}) - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + if v, ok := cs["name"]; ok && !isIntfNil(v) { - eligibleForCacheInt.HostnameUri.CacheOverride = v.(bool) + tokenSourceInt.Header.Name = v.(string) } - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.HostnameUri.CacheTtl = v.(string) + } - } + if v, ok := cs["query_param"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + tokenSourceTypeFound = true + tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_QueryParam{} + tokenSourceInt.QueryParam = &ves_io_schema_policy.HttpQueryParameterName{} + authOptionsInt.Jwt.TokenSource = tokenSourceInt - eligibleForCacheInt.HostnameUri.IgnoreResponseCookie = v.(bool) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + tokenSourceInt.QueryParam.Key = v.(string) } @@ -3076,131 +30867,156 @@ func resourceVolterraCdnLoadbalancerCreate(d *schema.ResourceData, meta interfac } - if v, ok := cs["scheme_hostname_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { - - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameRequestUri{} - eligibleForCacheInt.SchemeHostnameRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeHostnameRequestUri.CacheOverride = v.(bool) + } - } + if v, ok := securityOptionsMapStrToI["common_security_controls"]; ok && !isIntfNil(v) { - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + commonSecurityControls := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls{} + securityOptions.CommonSecurityControls = commonSecurityControls + for _, set := range sl { + commonSecurityControlsMapStrToI := set.(map[string]interface{}) - eligibleForCacheInt.SchemeHostnameRequestUri.CacheTtl = v.(string) + if v, ok := commonSecurityControlsMapStrToI["blocked_clients"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + blockedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) + commonSecurityControls.BlockedClients = blockedClients + for i, set := range sl { + blockedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} + blockedClientsMapStrToI := set.(map[string]interface{}) - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + actionChoiceTypeFound := false - eligibleForCacheInt.SchemeHostnameRequestUri.IgnoreResponseCookie = v.(bool) + if v, ok := blockedClientsMapStrToI["bot_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - } + actionChoiceTypeFound = true + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} + blockedClients[i].ActionChoice = actionChoiceInt } } - if v, ok := cs["scheme_hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + if v, ok := blockedClientsMapStrToI["skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUri{} - eligibleForCacheInt.SchemeHostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + actionChoiceTypeFound = true - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} + blockedClients[i].ActionChoice = actionChoiceInt + } - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeHostnameUri.CacheOverride = v.(bool) + if v, ok := blockedClientsMapStrToI["waf_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - } + actionChoiceTypeFound = true - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} + blockedClients[i].ActionChoice = actionChoiceInt + } - eligibleForCacheInt.SchemeHostnameUri.CacheTtl = v.(string) + } - } + if v, ok := blockedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} + for _, j := range v.([]interface{}) { + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) + } + blockedClients[i].Actions = actionsList - eligibleForCacheInt.SchemeHostnameUri.IgnoreResponseCookie = v.(bool) + } - } + clientSourceChoiceTypeFound := false - } + if v, ok := blockedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { + + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} + + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt + + clientSourceChoiceInt.AsNumber = uint32(v.(int)) } - if v, ok := cs["scheme_hostname_uri_query"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + if v, ok := blockedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUriQuery{} - eligibleForCacheInt.SchemeHostnameUriQuery = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt sl := v.(*schema.Set).List() for _, set := range sl { cs := set.(map[string]interface{}) - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { - - eligibleForCacheInt.SchemeHostnameUriQuery.CacheOverride = v.(bool) + if v, ok := cs["headers"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + headers := make([]*ves_io_schema.HeaderMatcherType, len(sl)) + clientSourceChoiceInt.HttpHeader.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + if w, ok := headersMapStrToI["invert_match"]; ok && !isIntfNil(w) { + headers[i].InvertMatch = w.(bool) + } - eligibleForCacheInt.SchemeHostnameUriQuery.CacheTtl = v.(string) + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } - } + valueMatchTypeFound := false - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + if v, ok := headersMapStrToI["exact"]; ok && !isIntfNil(v) && !valueMatchTypeFound { - eligibleForCacheInt.SchemeHostnameUriQuery.IgnoreResponseCookie = v.(bool) + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Exact{} - } + headers[i].ValueMatch = valueMatchInt - } + valueMatchInt.Exact = v.(string) - } + } - if v, ok := cs["scheme_proxy_host_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !valueMatchTypeFound { - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostRequestUri{} - eligibleForCacheInt.SchemeProxyHostRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Presence{} - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + headers[i].ValueMatch = valueMatchInt - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + valueMatchInt.Presence = v.(bool) - eligibleForCacheInt.SchemeProxyHostRequestUri.CacheOverride = v.(bool) + } - } + if v, ok := headersMapStrToI["regex"]; ok && !isIntfNil(v) && !valueMatchTypeFound { - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Regex{} - eligibleForCacheInt.SchemeProxyHostRequestUri.CacheTtl = v.(string) + headers[i].ValueMatch = valueMatchInt - } + valueMatchInt.Regex = v.(string) - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeProxyHostRequestUri.IgnoreResponseCookie = v.(bool) + } } @@ -3208,33 +31024,54 @@ func resourceVolterraCdnLoadbalancerCreate(d *schema.ResourceData, meta interfac } - if v, ok := cs["scheme_proxy_host_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + if v, ok := blockedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostUri{} - eligibleForCacheInt.SchemeProxyHostUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + clientSourceChoiceInt.IpPrefix = v.(string) - eligibleForCacheInt.SchemeProxyHostUri.CacheOverride = v.(bool) + } - } + if v, ok := blockedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} - eligibleForCacheInt.SchemeProxyHostUri.CacheTtl = v.(string) + blockedClients[i].ClientSourceChoice = clientSourceChoiceInt - } + clientSourceChoiceInt.UserIdentifier = v.(string) - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeProxyHostUri.IgnoreResponseCookie = v.(bool) + if w, ok := blockedClientsMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + blockedClients[i].ExpirationTimestamp = ts + } + + if v, ok := blockedClientsMapStrToI["metadata"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + blockedClients[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) } } @@ -3245,3696 +31082,4396 @@ func resourceVolterraCdnLoadbalancerCreate(d *schema.ResourceData, meta interfac } - if v, ok := cacheRulesMapStrToI["rule_expression_list"]; ok && !isIntfNil(v) { + challengeTypeTypeFound := false - sl := v.([]interface{}) - ruleExpressionList := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList, len(sl)) - cacheRules[i].RuleExpressionList = ruleExpressionList - for i, set := range sl { - ruleExpressionList[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList{} - ruleExpressionListMapStrToI := set.(map[string]interface{}) + if v, ok := commonSecurityControlsMapStrToI["captcha_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { - if v, ok := ruleExpressionListMapStrToI["cache_rule_expression"]; ok && !isIntfNil(v) { + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_CaptchaChallenge{} + challengeTypeInt.CaptchaChallenge = &ves_io_schema_virtual_host.CaptchaChallengeType{} + commonSecurityControls.ChallengeType = challengeTypeInt - sl := v.([]interface{}) - cacheRuleExpression := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression, len(sl)) - ruleExpressionList[i].CacheRuleExpression = cacheRuleExpression - for i, set := range sl { - cacheRuleExpression[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression{} - cacheRuleExpressionMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cacheRuleExpressionMapStrToI["cache_headers"]; ok && !isIntfNil(v) { + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - sl := v.([]interface{}) - cacheHeaders := make([]*ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType, len(sl)) - cacheRuleExpression[i].CacheHeaders = cacheHeaders - for i, set := range sl { - cacheHeaders[i] = &ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType{} - cacheHeadersMapStrToI := set.(map[string]interface{}) + challengeTypeInt.CaptchaChallenge.CookieExpiry = uint32(v.(int)) - if v, ok := cacheHeadersMapStrToI["name"]; ok && !isIntfNil(v) { + } - cacheHeaders[i].Name = ves_io_schema_views_cdn_loadbalancer.HeaderOptions(ves_io_schema_views_cdn_loadbalancer.HeaderOptions_value[v.(string)]) + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - } + challengeTypeInt.CaptchaChallenge.CustomPage = v.(string) - if v, ok := cacheHeadersMapStrToI["operator"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - cacheHeaders[i].Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + } - cacheOperatorTypeFound := false + } - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := commonSecurityControlsMapStrToI["challenge_on_cache_miss"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ChallengeOnCacheMiss{} + challengeTypeInt.ChallengeOnCacheMiss = &ves_io_schema_views_common_waf.EnableChallenge{} + commonSecurityControls.ChallengeType = challengeTypeInt - operator.CacheOperator = cacheOperatorInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorInt.Contains = v.(string) + captchaChallengeParametersChoiceTypeFound := false - } + if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + captchaChallengeParametersChoiceTypeFound = true + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} + challengeTypeInt.ChallengeOnCacheMiss.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - cacheOperatorInt.DoesNotContain = v.(string) + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CookieExpiry = uint32(v.(int)) - } + } - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CustomPage = v.(string) - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotEndWith = v.(string) + } - } + } - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["default_captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + captchaChallengeParametersChoiceTypeFound = true - operator.CacheOperator = cacheOperatorInt + if v.(bool) { + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.ChallengeOnCacheMiss.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + } - cacheOperatorInt.DoesNotEqual = v.(string) + } - } + jsChallengeParametersChoiceTypeFound := false - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["default_js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + jsChallengeParametersChoiceTypeFound = true - operator.CacheOperator = cacheOperatorInt + if v.(bool) { + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.ChallengeOnCacheMiss.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + } - cacheOperatorInt.DoesNotStartWith = v.(string) + } - } + if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + jsChallengeParametersChoiceTypeFound = true + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} + challengeTypeInt.ChallengeOnCacheMiss.JsChallengeParametersChoice = jsChallengeParametersChoiceInt - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - cacheOperatorInt.Endswith = v.(string) + jsChallengeParametersChoiceInt.JsChallengeParameters.CookieExpiry = uint32(v.(int)) + + } + + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.CustomPage = v.(string) + + } + + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { + + jsChallengeParametersChoiceInt.JsChallengeParameters.JsScriptDelay = uint32(v.(int)) + + } + + } + + } + + maliciousUserMitigationChoiceTypeFound := false - } + if v, ok := cs["default_mitigation_settings"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + maliciousUserMitigationChoiceTypeFound = true - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + if v.(bool) { + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} + challengeTypeInt.ChallengeOnCacheMiss.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.Equals = v.(string) + if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { - } + maliciousUserMitigationChoiceTypeFound = true + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} + challengeTypeInt.ChallengeOnCacheMiss.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + if v, ok := cs["name"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Name = v.(string) - cacheOperatorInt.MatchRegex = v.(string) + } - } + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Namespace = v.(string) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - cacheOperatorInt.Startswith = v.(string) + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Tenant = v.(string) - } + } - } + } - } + } - } + } - } + } - if v, ok := cacheRuleExpressionMapStrToI["cookie_matcher"]; ok && !isIntfNil(v) { + if v, ok := commonSecurityControlsMapStrToI["enable_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { - sl := v.([]interface{}) - cookieMatcher := make([]*ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType, len(sl)) - cacheRuleExpression[i].CookieMatcher = cookieMatcher - for i, set := range sl { - cookieMatcher[i] = &ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType{} - cookieMatcherMapStrToI := set.(map[string]interface{}) + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_EnableChallenge{} + challengeTypeInt.EnableChallenge = &ves_io_schema_views_common_waf.EnableChallenge{} + commonSecurityControls.ChallengeType = challengeTypeInt - if w, ok := cookieMatcherMapStrToI["name"]; ok && !isIntfNil(w) { - cookieMatcher[i].Name = w.(string) - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cookieMatcherMapStrToI["operator"]; ok && !isIntfNil(v) { + captchaChallengeParametersChoiceTypeFound := false - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - cookieMatcher[i].Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { - cacheOperatorTypeFound := false + captchaChallengeParametersChoiceTypeFound = true + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} + challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CookieExpiry = uint32(v.(int)) - cacheOperatorInt.Contains = v.(string) + } - } + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CustomPage = v.(string) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotContain = v.(string) + } - } + if v, ok := cs["default_captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + captchaChallengeParametersChoiceTypeFound = true - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + if v.(bool) { + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotEndWith = v.(string) + jsChallengeParametersChoiceTypeFound := false - } + if v, ok := cs["default_js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + jsChallengeParametersChoiceTypeFound = true - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + if v.(bool) { + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotEqual = v.(string) + if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { - } + jsChallengeParametersChoiceTypeFound = true + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} + challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + jsChallengeParametersChoiceInt.JsChallengeParameters.CookieExpiry = uint32(v.(int)) - cacheOperatorInt.DoesNotStartWith = v.(string) + } - } + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + jsChallengeParametersChoiceInt.JsChallengeParameters.CustomPage = v.(string) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - cacheOperatorInt.Endswith = v.(string) + jsChallengeParametersChoiceInt.JsChallengeParameters.JsScriptDelay = uint32(v.(int)) - } + } - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + } - operator.CacheOperator = cacheOperatorInt + maliciousUserMitigationChoiceTypeFound := false - cacheOperatorInt.Equals = v.(string) + if v, ok := cs["default_mitigation_settings"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { - } + maliciousUserMitigationChoiceTypeFound = true - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v.(bool) { + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} + challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { - cacheOperatorInt.MatchRegex = v.(string) + maliciousUserMitigationChoiceTypeFound = true + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} + challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["name"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Name = v.(string) - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.Startswith = v.(string) + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - } + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Namespace = v.(string) - } + } - } + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - } + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Tenant = v.(string) } - if v, ok := cacheRuleExpressionMapStrToI["path_match"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - pathMatch := &ves_io_schema_views_cdn_loadbalancer.CDNPathMatcherType{} - cacheRuleExpression[i].PathMatch = pathMatch - for _, set := range sl { - pathMatchMapStrToI := set.(map[string]interface{}) + } - if v, ok := pathMatchMapStrToI["operator"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - pathMatch.Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + } - cacheOperatorTypeFound := false + if v, ok := commonSecurityControlsMapStrToI["js_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_JsChallenge{} + challengeTypeInt.JsChallenge = &ves_io_schema_virtual_host.JavascriptChallengeType{} + commonSecurityControls.ChallengeType = challengeTypeInt - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - cacheOperatorInt.Contains = v.(string) + challengeTypeInt.JsChallenge.CookieExpiry = uint32(v.(int)) - } + } - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + challengeTypeInt.JsChallenge.CustomPage = v.(string) - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotContain = v.(string) + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - } + challengeTypeInt.JsChallenge.JsScriptDelay = uint32(v.(int)) - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotEndWith = v.(string) + if v, ok := commonSecurityControlsMapStrToI["no_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { - } + challengeTypeTypeFound = true - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v.(bool) { + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoChallenge{} + challengeTypeInt.NoChallenge = &ves_io_schema.Empty{} + commonSecurityControls.ChallengeType = challengeTypeInt + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := commonSecurityControlsMapStrToI["policy_based_challenge"]; ok && !isIntfNil(v) && !challengeTypeTypeFound { - cacheOperatorInt.DoesNotEqual = v.(string) + challengeTypeTypeFound = true + challengeTypeInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_PolicyBasedChallenge{} + challengeTypeInt.PolicyBasedChallenge = &ves_io_schema_views_common_waf.PolicyBasedChallenge{} + commonSecurityControls.ChallengeType = challengeTypeInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + captchaChallengeParametersChoiceTypeFound := false - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { - operator.CacheOperator = cacheOperatorInt + captchaChallengeParametersChoiceTypeFound = true + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} + challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt - cacheOperatorInt.DoesNotStartWith = v.(string) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CookieExpiry = uint32(v.(int)) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - cacheOperatorInt.Endswith = v.(string) + captchaChallengeParametersChoiceInt.CaptchaChallengeParameters.CustomPage = v.(string) - } + } - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["default_captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { - cacheOperatorInt.Equals = v.(string) + captchaChallengeParametersChoiceTypeFound = true - } + if v.(bool) { + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt + } - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + challengeChoiceTypeFound := false - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["always_enable_captcha_challenge"]; ok && !isIntfNil(v) && !challengeChoiceTypeFound { - cacheOperatorInt.MatchRegex = v.(string) + challengeChoiceTypeFound = true - } + if v.(bool) { + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{} + challengeChoiceInt.AlwaysEnableCaptchaChallenge = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt + } - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + if v, ok := cs["always_enable_js_challenge"]; ok && !isIntfNil(v) && !challengeChoiceTypeFound { - operator.CacheOperator = cacheOperatorInt + challengeChoiceTypeFound = true - cacheOperatorInt.Startswith = v.(string) + if v.(bool) { + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableJsChallenge{} + challengeChoiceInt.AlwaysEnableJsChallenge = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt + } - } + } - } + if v, ok := cs["no_challenge"]; ok && !isIntfNil(v) && !challengeChoiceTypeFound { - } + challengeChoiceTypeFound = true - } + if v.(bool) { + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{} + challengeChoiceInt.NoChallenge = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt + } - } + } - if v, ok := cacheRuleExpressionMapStrToI["query_parameters"]; ok && !isIntfNil(v) { + jsChallengeParametersChoiceTypeFound := false - sl := v.([]interface{}) - queryParameters := make([]*ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType, len(sl)) - cacheRuleExpression[i].QueryParameters = queryParameters - for i, set := range sl { - queryParameters[i] = &ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType{} - queryParametersMapStrToI := set.(map[string]interface{}) + if v, ok := cs["default_js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { - if w, ok := queryParametersMapStrToI["key"]; ok && !isIntfNil(w) { - queryParameters[i].Key = w.(string) - } + jsChallengeParametersChoiceTypeFound = true - if v, ok := queryParametersMapStrToI["operator"]; ok && !isIntfNil(v) { + if v.(bool) { + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + } - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - queryParameters[i].Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + } + + if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { + + jsChallengeParametersChoiceTypeFound = true + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} + challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorTypeFound := false + if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + jsChallengeParametersChoiceInt.JsChallengeParameters.CookieExpiry = uint32(v.(int)) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - cacheOperatorInt.Contains = v.(string) + jsChallengeParametersChoiceInt.JsChallengeParameters.CustomPage = v.(string) - } + } - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + jsChallengeParametersChoiceInt.JsChallengeParameters.JsScriptDelay = uint32(v.(int)) - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotContain = v.(string) + } - } + } - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + maliciousUserMitigationChoiceTypeFound := false - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + if v, ok := cs["default_mitigation_settings"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { - operator.CacheOperator = cacheOperatorInt + maliciousUserMitigationChoiceTypeFound = true - cacheOperatorInt.DoesNotEndWith = v.(string) + if v.(bool) { + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt + } - } + } - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + maliciousUserMitigationChoiceTypeFound = true + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} + challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt - operator.CacheOperator = cacheOperatorInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorInt.DoesNotEqual = v.(string) + if v, ok := cs["name"]; ok && !isIntfNil(v) { - } + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Name = v.(string) - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Namespace = v.(string) - cacheOperatorInt.DoesNotStartWith = v.(string) + } - } + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + maliciousUserMitigationChoiceInt.MaliciousUserMitigation.Tenant = v.(string) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.Endswith = v.(string) + } - } + if v, ok := cs["rule_list"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + sl := v.(*schema.Set).List() + ruleList := &ves_io_schema_views_common_waf.ChallengeRuleList{} + challengeTypeInt.PolicyBasedChallenge.RuleList = ruleList + for _, set := range sl { + ruleListMapStrToI := set.(map[string]interface{}) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + if v, ok := ruleListMapStrToI["rules"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + sl := v.([]interface{}) + rules := make([]*ves_io_schema_views_common_waf.ChallengeRule, len(sl)) + ruleList.Rules = rules + for i, set := range sl { + rules[i] = &ves_io_schema_views_common_waf.ChallengeRule{} + rulesMapStrToI := set.(map[string]interface{}) - cacheOperatorInt.Equals = v.(string) + if v, ok := rulesMapStrToI["metadata"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + rules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) + + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) } - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.MatchRegex = v.(string) + } - } + if v, ok := rulesMapStrToI["spec"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + sl := v.(*schema.Set).List() + spec := &ves_io_schema_service_policy_rule.ChallengeRuleSpec{} + rules[i].Spec = spec + for _, set := range sl { + specMapStrToI := set.(map[string]interface{}) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + if v, ok := specMapStrToI["arg_matchers"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + sl := v.([]interface{}) + argMatchers := make([]*ves_io_schema_policy.ArgMatcherType, len(sl)) + spec.ArgMatchers = argMatchers + for i, set := range sl { + argMatchers[i] = &ves_io_schema_policy.ArgMatcherType{} + argMatchersMapStrToI := set.(map[string]interface{}) - cacheOperatorInt.Startswith = v.(string) + if w, ok := argMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + argMatchers[i].InvertMatcher = w.(bool) + } - } + matchTypeFound := false - } + if v, ok := argMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.ArgMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + argMatchers[i].Match = matchInt + } - } + } - } + if v, ok := argMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - if w, ok := ruleExpressionListMapStrToI["expression_name"]; ok && !isIntfNil(w) { - ruleExpressionList[i].ExpressionName = w.(string) - } + if v.(bool) { + matchInt := &ves_io_schema_policy.ArgMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + argMatchers[i].Match = matchInt + } - } + } - } + if v, ok := argMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if w, ok := cacheRulesMapStrToI["rule_name"]; ok && !isIntfNil(w) { - cacheRules[i].RuleName = w.(string) - } + matchTypeFound = true + matchInt := &ves_io_schema_policy.ArgMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + argMatchers[i].Match = matchInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if v, ok := cacheOptionsMapStrToI["default_cache_action"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - sl := v.(*schema.Set).List() - defaultCacheAction := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction{} - cacheOptions.DefaultCacheAction = defaultCacheAction - for _, set := range sl { - defaultCacheActionMapStrToI := set.(map[string]interface{}) + } - cacheActionsTypeFound := false + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - if v, ok := defaultCacheActionMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - cacheActionsTypeFound = true + } - if v.(bool) { - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheDisabled{} - cacheActionsInt.CacheDisabled = &ves_io_schema.Empty{} - defaultCacheAction.CacheActions = cacheActionsInt - } + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - } + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - if v, ok := defaultCacheActionMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + } - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlDefault{} + } - defaultCacheAction.CacheActions = cacheActionsInt + } - cacheActionsInt.CacheTtlDefault = v.(string) + if v, ok := argMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true + matchInt := &ves_io_schema_policy.ArgMatcherType_Presence{} - if v, ok := defaultCacheActionMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + argMatchers[i].Match = matchInt - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlOverride{} + matchInt.Presence = v.(bool) - defaultCacheAction.CacheActions = cacheActionsInt + } - cacheActionsInt.CacheTtlOverride = v.(string) + if w, ok := argMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + argMatchers[i].Name = w.(string) + } - } + } - if v, ok := defaultCacheActionMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + } - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_EligibleForCache{} - cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.DefaultCacheTTLProps{} - defaultCacheAction.CacheActions = cacheActionsInt + asnChoiceTypeFound := false - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := specMapStrToI["any_asn"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + asnChoiceTypeFound = true - cacheActionsInt.EligibleForCache.CacheTtl = v.(string) + if v.(bool) { + asnChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AnyAsn{} + asnChoiceInt.AnyAsn = &ves_io_schema.Empty{} + spec.AsnChoice = asnChoiceInt + } - } + } - } + if v, ok := specMapStrToI["asn_list"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { - } + asnChoiceTypeFound = true + asnChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AsnList{} + asnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + spec.AsnChoice = asnChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { - } + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + asnChoiceInt.AsnList.AsNumbers = ls - } + } - if v, ok := moreOptionMapStrToI["cache_ttl_options"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - cacheTtlOptions := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType{} - moreOption.CacheTtlOptions = cacheTtlOptions - for _, set := range sl { - cacheTtlOptionsMapStrToI := set.(map[string]interface{}) + } - ttlOptionsTypeFound := false + if v, ok := specMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !asnChoiceTypeFound { - if v, ok := cacheTtlOptionsMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + asnChoiceTypeFound = true + asnChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AsnMatcher{} + asnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + spec.AsnChoice = asnChoiceInt - ttlOptionsTypeFound = true + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v.(bool) { - ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheDisabled{} - ttlOptionsInt.CacheDisabled = &ves_io_schema.Empty{} - cacheTtlOptions.TtlOptions = ttlOptionsInt - } + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + asnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { - if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} - ttlOptionsTypeFound = true - ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlDefault{} + asnSetsInt[i].Kind = "bgp_asn_set" - cacheTtlOptions.TtlOptions = ttlOptionsInt + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } - ttlOptionsInt.CacheTtlDefault = v.(string) + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } - } + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } - if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } - ttlOptionsTypeFound = true - ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlOverride{} + } - cacheTtlOptions.TtlOptions = ttlOptionsInt + } - ttlOptionsInt.CacheTtlOverride = v.(string) + } - } + } - } + if v, ok := specMapStrToI["body_matcher"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + bodyMatcher := &ves_io_schema_policy.MatcherType{} + spec.BodyMatcher = bodyMatcher + for _, set := range sl { + bodyMatcherMapStrToI := set.(map[string]interface{}) - if v, ok := moreOptionMapStrToI["header_options"]; ok && !isIntfNil(v) { + if w, ok := bodyMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + bodyMatcher.ExactValues = ls + } - sl := v.(*schema.Set).List() - headerOptions := &ves_io_schema_views_cdn_loadbalancer.HeaderControlType{} - moreOption.HeaderOptions = headerOptions - for _, set := range sl { - headerOptionsMapStrToI := set.(map[string]interface{}) + if w, ok := bodyMatcherMapStrToI["regex_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + bodyMatcher.RegexValues = ls + } - if v, ok := headerOptionsMapStrToI["request_headers_to_add"]; ok && !isIntfNil(v) { + if v, ok := bodyMatcherMapStrToI["transformers"]; ok && !isIntfNil(v) { - sl := v.([]interface{}) - requestHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) - headerOptions.RequestHeadersToAdd = requestHeadersToAdd - for i, set := range sl { - requestHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} - requestHeadersToAddMapStrToI := set.(map[string]interface{}) + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + bodyMatcher.Transformers = transformersList - if w, ok := requestHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { - requestHeadersToAdd[i].Append = w.(bool) - } + } - if w, ok := requestHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { - requestHeadersToAdd[i].Name = w.(string) - } + } - valueChoiceTypeFound := false + } - if v, ok := requestHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + challengeActionTypeFound := false - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} - valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} - requestHeadersToAdd[i].ValueChoice = valueChoiceInt + if v, ok := specMapStrToI["disable_challenge"]; ok && !isIntfNil(v) && !challengeActionTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + challengeActionTypeFound = true - if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + if v.(bool) { + challengeActionInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_DisableChallenge{} + challengeActionInt.DisableChallenge = &ves_io_schema.Empty{} + spec.ChallengeAction = challengeActionInt + } - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + if v, ok := specMapStrToI["enable_captcha_challenge"]; ok && !isIntfNil(v) && !challengeActionTypeFound { - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + challengeActionTypeFound = true - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + if v.(bool) { + challengeActionInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_EnableCaptchaChallenge{} + challengeActionInt.EnableCaptchaChallenge = &ves_io_schema.Empty{} + spec.ChallengeAction = challengeActionInt + } - } + } - } + if v, ok := specMapStrToI["enable_javascript_challenge"]; ok && !isIntfNil(v) && !challengeActionTypeFound { - if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + challengeActionTypeFound = true - valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v.(bool) { + challengeActionInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_EnableJavascriptChallenge{} + challengeActionInt.EnableJavascriptChallenge = &ves_io_schema.Empty{} + spec.ChallengeAction = challengeActionInt + } - } + } - secretInfoOneofTypeFound := false + clientChoiceTypeFound := false - if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v, ok := specMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + clientChoiceTypeFound = true - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v.(bool) { + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + spec.ClientChoice = clientChoiceInt + } - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + if v, ok := specMapStrToI["client_name"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - } + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_ClientName{} - if v, ok := cs["location"]; ok && !isIntfNil(v) { + spec.ClientChoice = clientChoiceInt - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + clientChoiceInt.ClientName = v.(string) - } + } - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + if v, ok := specMapStrToI["client_name_matcher"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_ClientNameMatcher{} + clientChoiceInt.ClientNameMatcher = &ves_io_schema_policy.MatcherType{} + spec.ClientChoice = clientChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientNameMatcher.ExactValues = ls - if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientNameMatcher.RegexValues = ls - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - } + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + clientChoiceInt.ClientNameMatcher.Transformers = transformersList + + } + + } + + } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if v, ok := specMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + spec.ClientChoice = clientChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls - if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["key"]; ok && !isIntfNil(v) { + if v, ok := specMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + spec.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) - } + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + matchTypeFound := false - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + } - } + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + matchTypeFound = true - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } - } + } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - if v, ok := cs["name"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - } + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - } + } - } + } - } + } - } + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := requestHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + cookieMatchers[i].Match = matchInt - requestHeadersToAdd[i].ValueChoice = valueChoiceInt + matchInt.Presence = v.(bool) - valueChoiceInt.Value = v.(string) + } - } + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } - } + } - } + } - if w, ok := headerOptionsMapStrToI["request_headers_to_remove"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - headerOptions.RequestHeadersToRemove = ls - } + if v, ok := specMapStrToI["domain_matcher"]; ok && !isIntfNil(v) { - if v, ok := headerOptionsMapStrToI["response_headers_to_add"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + domainMatcher := &ves_io_schema_policy.MatcherTypeBasic{} + spec.DomainMatcher = domainMatcher + for _, set := range sl { + domainMatcherMapStrToI := set.(map[string]interface{}) - sl := v.([]interface{}) - responseHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) - headerOptions.ResponseHeadersToAdd = responseHeadersToAdd - for i, set := range sl { - responseHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} - responseHeadersToAddMapStrToI := set.(map[string]interface{}) + if w, ok := domainMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + domainMatcher.ExactValues = ls + } - if w, ok := responseHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { - responseHeadersToAdd[i].Append = w.(bool) - } + if w, ok := domainMatcherMapStrToI["regex_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + domainMatcher.RegexValues = ls + } - if w, ok := responseHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { - responseHeadersToAdd[i].Name = w.(string) - } + } - valueChoiceTypeFound := false + } - if v, ok := responseHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + if w, ok := specMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + spec.ExpirationTimestamp = ts + } - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} - valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} - responseHeadersToAdd[i].ValueChoice = valueChoiceInt + if v, ok := specMapStrToI["headers"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + spec.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) - if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + matchTypeFound := false - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + matchTypeFound = true - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } - } + } - } + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + matchTypeFound = true - valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } - } + } - secretInfoOneofTypeFound := false + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + } - } + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - if v, ok := cs["location"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + } - } + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + } - } + } - } + } - } + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + headers[i].Match = matchInt - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + matchInt.Presence = v.(bool) - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } - } + } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + if v, ok := specMapStrToI["http_method"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + httpMethod := &ves_io_schema_policy.HttpMethodMatcherType{} + spec.HttpMethod = httpMethod + for _, set := range sl { + httpMethodMapStrToI := set.(map[string]interface{}) - } + if w, ok := httpMethodMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + httpMethod.InvertMatcher = w.(bool) + } - } + if v, ok := httpMethodMapStrToI["methods"]; ok && !isIntfNil(v) { - if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + httpMethod.Methods = methodsList - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["key"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + ipChoiceTypeFound := false - } + if v, ok := specMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipChoiceTypeFound { - if v, ok := cs["location"]; ok && !isIntfNil(v) { + ipChoiceTypeFound = true - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + if v.(bool) { + ipChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_AnyIp{} + ipChoiceInt.AnyIp = &ves_io_schema.Empty{} + spec.IpChoice = ipChoiceInt + } - } + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if v, ok := specMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipChoiceTypeFound { - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + ipChoiceTypeFound = true + ipChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_IpMatcher{} + ipChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + spec.IpChoice = ipChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + ipChoiceInt.IpMatcher.InvertMatcher = v.(bool) - } + } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { - } + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} - } + prefixSetsInt[i].Kind = "ip_prefix_set" - } + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } - if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + } - } + } - } + } - } + if v, ok := specMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipChoiceTypeFound { - } + ipChoiceTypeFound = true + ipChoiceInt := &ves_io_schema_service_policy_rule.ChallengeRuleSpec_IpPrefixList{} + ipChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + spec.IpChoice = ipChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := responseHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + ipChoiceInt.IpPrefixList.InvertMatch = v.(bool) - responseHeadersToAdd[i].ValueChoice = valueChoiceInt + } - valueChoiceInt.Value = v.(string) + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipChoiceInt.IpPrefixList.IpPrefixes = ls - } + } - } + } - if w, ok := headerOptionsMapStrToI["response_headers_to_remove"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - headerOptions.ResponseHeadersToRemove = ls - } + } - } + if v, ok := specMapStrToI["path"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + path := &ves_io_schema_policy.PathMatcherType{} + spec.Path = path + for _, set := range sl { + pathMapStrToI := set.(map[string]interface{}) + + if w, ok := pathMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.ExactValues = ls + } + + if w, ok := pathMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + path.InvertMatcher = w.(bool) + } + + if w, ok := pathMapStrToI["prefix_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.PrefixValues = ls + } + + if w, ok := pathMapStrToI["regex_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.RegexValues = ls + } + + if w, ok := pathMapStrToI["suffix_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + path.SuffixValues = ls + } + + if v, ok := pathMapStrToI["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + path.Transformers = transformersList + + } + + } - } + } - if v, ok := moreOptionMapStrToI["logging_options"]; ok && !isIntfNil(v) { + if v, ok := specMapStrToI["query_params"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - loggingOptions := &ves_io_schema_views_cdn_loadbalancer.LoggingOptionsType{} - moreOption.LoggingOptions = loggingOptions - for _, set := range sl { - loggingOptionsMapStrToI := set.(map[string]interface{}) + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + spec.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) - if v, ok := loggingOptionsMapStrToI["client_log_options"]; ok && !isIntfNil(v) { + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } - sl := v.(*schema.Set).List() - clientLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} - loggingOptions.ClientLogOptions = clientLogOptions - for _, set := range sl { - clientLogOptionsMapStrToI := set.(map[string]interface{}) + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } - if w, ok := clientLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - clientLogOptions.HeaderList = ls - } + matchTypeFound := false - } + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - if v, ok := loggingOptionsMapStrToI["origin_log_options"]; ok && !isIntfNil(v) { + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - sl := v.(*schema.Set).List() - originLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} - loggingOptions.OriginLogOptions = originLogOptions - for _, set := range sl { - originLogOptionsMapStrToI := set.(map[string]interface{}) + } - if w, ok := originLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - originLogOptions.HeaderList = ls - } + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - } + } - } + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := moreOptionMapStrToI["security_options"]; ok && !isIntfNil(v) { + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt - sl := v.(*schema.Set).List() - securityOptions := &ves_io_schema_views_cdn_loadbalancer.SecurityOptionsType{} - moreOption.SecurityOptions = securityOptions - for _, set := range sl { - securityOptionsMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := securityOptionsMapStrToI["auth_options"]; ok && !isIntfNil(v) { + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - authOptions := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions{} - securityOptions.AuthOptions = authOptions - for _, set := range sl { - authOptionsMapStrToI := set.(map[string]interface{}) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - authOptionsTypeFound := false + } - if v, ok := authOptionsMapStrToI["custom"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - authOptionsTypeFound = true - authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Custom{} - authOptionsInt.Custom = &ves_io_schema_views_cdn_loadbalancer.CDNCustomAuthentication{} - authOptions.AuthOptions = authOptionsInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["custom_auth_config"]; ok && !isIntfNil(v) { + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - authOptionsInt.Custom.CustomAuthConfig = v.(string) + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - } + } - } + } - } + } - if v, ok := authOptionsMapStrToI["disable_auth"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - authOptionsTypeFound = true + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} - if v.(bool) { - authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_DisableAuth{} - authOptionsInt.DisableAuth = &ves_io_schema.Empty{} - authOptions.AuthOptions = authOptionsInt - } + queryParams[i].Match = matchInt - } + matchInt.Presence = v.(bool) - if v, ok := authOptionsMapStrToI["jwt"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + } - authOptionsTypeFound = true - authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Jwt{} - authOptionsInt.Jwt = &ves_io_schema_policy.JwtTokenAuthOptions{} - authOptions.AuthOptions = authOptionsInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["backup_key"]; ok && !isIntfNil(v) { + if v, ok := specMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - backupKey := &ves_io_schema.SecretType{} - authOptionsInt.Jwt.BackupKey = backupKey - for _, set := range sl { - backupKeyMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + spec.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) - if v, ok := backupKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - backupKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } + + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } + + } + + } + + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) } } } - if v, ok := backupKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + } - backupKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + } - } + temporaryBlockingParametersChoiceTypeFound := false - secretInfoOneofTypeFound := false + if v, ok := cs["default_temporary_blocking_parameters"]; ok && !isIntfNil(v) && !temporaryBlockingParametersChoiceTypeFound { - if v, ok := backupKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + temporaryBlockingParametersChoiceTypeFound = true - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + if v.(bool) { + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{} + temporaryBlockingParametersChoiceInt.DefaultTemporaryBlockingParameters = &ves_io_schema.Empty{} + challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + if v, ok := cs["temporary_user_blocking"]; ok && !isIntfNil(v) && !temporaryBlockingParametersChoiceTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + temporaryBlockingParametersChoiceTypeFound = true + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_TemporaryUserBlocking{} + temporaryBlockingParametersChoiceInt.TemporaryUserBlocking = &ves_io_schema_virtual_host.TemporaryUserBlockingType{} + challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + temporaryBlockingParametersChoiceInt.TemporaryUserBlocking.CustomPage = v.(string) - } + } - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + } - } + } - } + } - } + if v, ok := commonSecurityControlsMapStrToI["cors_policy"]; ok && !isIntfNil(v) { - if v, ok := backupKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + sl := v.(*schema.Set).List() + corsPolicy := &ves_io_schema.CorsPolicy{} + commonSecurityControls.CorsPolicy = corsPolicy + for _, set := range sl { + corsPolicyMapStrToI := set.(map[string]interface{}) - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + if w, ok := corsPolicyMapStrToI["allow_credentials"]; ok && !isIntfNil(w) { + corsPolicy.AllowCredentials = w.(bool) + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if w, ok := corsPolicyMapStrToI["allow_headers"]; ok && !isIntfNil(w) { + corsPolicy.AllowHeaders = w.(string) + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if w, ok := corsPolicyMapStrToI["allow_methods"]; ok && !isIntfNil(w) { + corsPolicy.AllowMethods = w.(string) + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + if w, ok := corsPolicyMapStrToI["allow_origin"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + corsPolicy.AllowOrigin = ls + } - } + if w, ok := corsPolicyMapStrToI["allow_origin_regex"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + corsPolicy.AllowOriginRegex = ls + } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if w, ok := corsPolicyMapStrToI["disabled"]; ok && !isIntfNil(w) { + corsPolicy.Disabled = w.(bool) + } - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + if w, ok := corsPolicyMapStrToI["expose_headers"]; ok && !isIntfNil(w) { + corsPolicy.ExposeHeaders = w.(string) + } - } + if w, ok := corsPolicyMapStrToI["max_age"]; ok && !isIntfNil(w) { + corsPolicy.MaxAge = w.(string) + } - } + if w, ok := corsPolicyMapStrToI["maximum_age"]; ok && !isIntfNil(w) { + corsPolicy.MaximumAge = int32(w.(int)) + } - } + } - if v, ok := backupKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + ipReputationChoiceTypeFound := false - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := commonSecurityControlsMapStrToI["disable_ip_reputation"]; ok && !isIntfNil(v) && !ipReputationChoiceTypeFound { - if v, ok := cs["key"]; ok && !isIntfNil(v) { + ipReputationChoiceTypeFound = true - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + if v.(bool) { + ipReputationChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableIpReputation{} + ipReputationChoiceInt.DisableIpReputation = &ves_io_schema.Empty{} + commonSecurityControls.IpReputationChoice = ipReputationChoiceInt + } - } + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := commonSecurityControlsMapStrToI["enable_ip_reputation"]; ok && !isIntfNil(v) && !ipReputationChoiceTypeFound { - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + ipReputationChoiceTypeFound = true + ipReputationChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_EnableIpReputation{} + ipReputationChoiceInt.EnableIpReputation = &ves_io_schema_views_common_waf.IPThreatCategoryListType{} + commonSecurityControls.IpReputationChoice = ipReputationChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + ipReputationChoiceInt.EnableIpReputation.IpThreatCategories = ip_threat_categoriesList - } + } - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + } - } + if v, ok := commonSecurityControlsMapStrToI["ip_reputation_on_cache_miss"]; ok && !isIntfNil(v) && !ipReputationChoiceTypeFound { - if v, ok := cs["version"]; ok && !isIntfNil(v) { + ipReputationChoiceTypeFound = true + ipReputationChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_IpReputationOnCacheMiss{} + ipReputationChoiceInt.IpReputationOnCacheMiss = &ves_io_schema_views_common_waf.IPThreatCategoryListType{} + commonSecurityControls.IpReputationChoice = ipReputationChoiceInt - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { - } + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + ipReputationChoiceInt.IpReputationOnCacheMiss.IpThreatCategories = ip_threat_categoriesList - } + } - if v, ok := backupKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + maliciousUserDetectionChoiceTypeFound := false - if v, ok := cs["name"]; ok && !isIntfNil(v) { + if v, ok := commonSecurityControlsMapStrToI["disable_malicious_user_detection"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + maliciousUserDetectionChoiceTypeFound = true - } + if v.(bool) { + maliciousUserDetectionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableMaliciousUserDetection{} + maliciousUserDetectionChoiceInt.DisableMaliciousUserDetection = &ves_io_schema.Empty{} + commonSecurityControls.MaliciousUserDetectionChoice = maliciousUserDetectionChoiceInt + } - } + } - } + if v, ok := commonSecurityControlsMapStrToI["enable_malicious_user_detection"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { - } + maliciousUserDetectionChoiceTypeFound = true - } + if v.(bool) { + maliciousUserDetectionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_EnableMaliciousUserDetection{} + maliciousUserDetectionChoiceInt.EnableMaliciousUserDetection = &ves_io_schema.Empty{} + commonSecurityControls.MaliciousUserDetectionChoice = maliciousUserDetectionChoiceInt + } - if v, ok := cs["secret_key"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - secretKey := &ves_io_schema.SecretType{} - authOptionsInt.Jwt.SecretKey = secretKey - for _, set := range sl { - secretKeyMapStrToI := set.(map[string]interface{}) + if v, ok := commonSecurityControlsMapStrToI["malicious_user_detection_on_cache_miss"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { - if v, ok := secretKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + maliciousUserDetectionChoiceTypeFound = true + + if v.(bool) { + maliciousUserDetectionChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_MaliciousUserDetectionOnCacheMiss{} + maliciousUserDetectionChoiceInt.MaliciousUserDetectionOnCacheMiss = &ves_io_schema.Empty{} + commonSecurityControls.MaliciousUserDetectionChoice = maliciousUserDetectionChoiceInt + } + + } + + rateLimitChoiceTypeFound := false + + if v, ok := commonSecurityControlsMapStrToI["api_rate_limit"]; ok && !isIntfNil(v) && !rateLimitChoiceTypeFound { + + rateLimitChoiceTypeFound = true + rateLimitChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ApiRateLimit{} + rateLimitChoiceInt.ApiRateLimit = &ves_io_schema_views_common_waf.APIRateLimit{} + commonSecurityControls.RateLimitChoice = rateLimitChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["api_endpoint_rules"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.ApiEndpointRule, len(sl)) + rateLimitChoiceInt.ApiRateLimit.ApiEndpointRules = apiEndpointRules + for i, set := range sl { + apiEndpointRules[i] = &ves_io_schema_views_common_waf.ApiEndpointRule{} + apiEndpointRulesMapStrToI := set.(map[string]interface{}) + + if v, ok := apiEndpointRulesMapStrToI["api_endpoint_method"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - secretKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + apiEndpointMethod := &ves_io_schema_policy.HttpMethodMatcherType{} + apiEndpointRules[i].ApiEndpointMethod = apiEndpointMethod for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + apiEndpointMethodMapStrToI := set.(map[string]interface{}) - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + if w, ok := apiEndpointMethodMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + apiEndpointMethod.InvertMatcher = w.(bool) } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + if v, ok := apiEndpointMethodMapStrToI["methods"]; ok && !isIntfNil(v) { + + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + apiEndpointMethod.Methods = methodsList - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) } } } - if v, ok := secretKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { - - secretKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) - + if w, ok := apiEndpointRulesMapStrToI["api_endpoint_path"]; ok && !isIntfNil(w) { + apiEndpointRules[i].ApiEndpointPath = w.(string) } - secretInfoOneofTypeFound := false - - if v, ok := secretKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if w, ok := apiEndpointRulesMapStrToI["base_path"]; ok && !isIntfNil(w) { + apiEndpointRules[i].BasePath = w.(string) + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := apiEndpointRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + apiEndpointRules[i].ClientMatcher = clientMatcher for _, set := range sl { - cs := set.(map[string]interface{}) + clientMatcherMapStrToI := set.(map[string]interface{}) - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + clientChoiceTypeFound := false - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls + + } + + } } - } + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - } + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt - if v, ok := secretKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + } } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + ipAsnChoiceTypeFound := false - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { + + ipAsnChoiceTypeFound = true + + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } } - } + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - } + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - if v, ok := secretKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls - if v, ok := cs["key"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + } } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { - } + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + asnSetsInt[i].Kind = "bgp_asn_set" - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } - } + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } - } + } - } + } - } + } - if v, ok := secretKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - if v, ok := cs["name"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { - } + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) - } + } - } + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { - } + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} - tokenSourceTypeFound := false + prefixSetsInt[i].Kind = "ip_prefix_set" - if v, ok := cs["bearer_token"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } - tokenSourceTypeFound = true + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } - if v.(bool) { - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_BearerToken{} - tokenSourceInt.BearerToken = &ves_io_schema.Empty{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt - } + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } - } + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } - if v, ok := cs["cookie"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + } - tokenSourceTypeFound = true - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Cookie{} - tokenSourceInt.Cookie = &ves_io_schema_policy.HttpCookieName{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + } - tokenSourceInt.Cookie.Name = v.(string) + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - } + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - if v, ok := cs["header"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) - tokenSourceTypeFound = true - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Header{} - tokenSourceInt.Header = &ves_io_schema_policy.HttpHeaderName{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { - if v, ok := cs["name"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls - tokenSourceInt.Header.Name = v.(string) + } - } + } - } + } - } + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { - if v, ok := cs["query_param"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) - tokenSourceTypeFound = true - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_QueryParam{} - tokenSourceInt.QueryParam = &ves_io_schema_policy.HttpQueryParameterName{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList - if v, ok := cs["key"]; ok && !isIntfNil(v) { + } - tokenSourceInt.QueryParam.Key = v.(string) + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } - } + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } - } + } - } + } - } + } - } + } - } + domainChoiceTypeFound := false - } + if v, ok := apiEndpointRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - if v, ok := securityOptionsMapStrToI["geo_filtering"]; ok && !isIntfNil(v) { + domainChoiceTypeFound = true - sl := v.(*schema.Set).List() - geoFiltering := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions{} - securityOptions.GeoFiltering = geoFiltering - for _, set := range sl { - geoFilteringMapStrToI := set.(map[string]interface{}) + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + apiEndpointRules[i].DomainChoice = domainChoiceInt + } - geoFilteringTypeTypeFound := false + } - if v, ok := geoFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - geoFilteringTypeTypeFound = true - geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_AllowList{} - geoFilteringTypeInt.AllowList = &ves_io_schema_policy.CountryCodeList{} - geoFiltering.GeoFilteringType = geoFilteringTypeInt + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_SpecificDomain{} - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + apiEndpointRules[i].DomainChoice = domainChoiceInt - if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + domainChoiceInt.SpecificDomain = v.(string) - country_codesList := []ves_io_schema_policy.CountryCode{} - for _, j := range v.([]interface{}) { - country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) - } - geoFilteringTypeInt.AllowList.CountryCodes = country_codesList + } - } + rateLimiterChoiceTypeFound := false - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + if v, ok := apiEndpointRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { - geoFilteringTypeInt.AllowList.InvertMatch = v.(bool) + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} + apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + countByChoiceTypeFound := false - } + if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { - if v, ok := geoFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + countByChoiceTypeFound = true + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} + countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt - geoFilteringTypeTypeFound = true - geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_BlockList{} - geoFilteringTypeInt.BlockList = &ves_io_schema_policy.CountryCodeList{} - geoFiltering.GeoFilteringType = geoFilteringTypeInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { - if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + countByChoiceInt.RefUserId.Name = v.(string) - country_codesList := []ves_io_schema_policy.CountryCode{} - for _, j := range v.([]interface{}) { - country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) - } - geoFilteringTypeInt.BlockList.CountryCodes = country_codesList + } - } + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + countByChoiceInt.RefUserId.Namespace = v.(string) - geoFilteringTypeInt.BlockList.InvertMatch = v.(bool) + } - } + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - } + countByChoiceInt.RefUserId.Tenant = v.(string) - } + } - } + } - } + } - if v, ok := securityOptionsMapStrToI["ip_filtering"]; ok && !isIntfNil(v) { + if v, ok := cs["use_http_lb_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { - sl := v.(*schema.Set).List() - ipFiltering := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions{} - securityOptions.IpFiltering = ipFiltering - for _, set := range sl { - ipFilteringMapStrToI := set.(map[string]interface{}) + countByChoiceTypeFound = true - ipFilteringTypeTypeFound := false + if v.(bool) { + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt + } - if v, ok := ipFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { + } - ipFilteringTypeTypeFound = true - ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_AllowList{} - ipFilteringTypeInt.AllowList = &ves_io_schema_policy.PrefixMatchList{} - ipFiltering.IpFilteringType = ipFilteringTypeInt + if v, ok := cs["threshold"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + rateLimiterChoiceInt.InlineRateLimiter.Threshold = uint32(v.(int)) - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + } - ipFilteringTypeInt.AllowList.InvertMatch = v.(bool) + if v, ok := cs["unit"]; ok && !isIntfNil(v) { - } + rateLimiterChoiceInt.InlineRateLimiter.Unit = ves_io_schema_rate_limiter.RateLimitPeriodUnit(ves_io_schema_rate_limiter.RateLimitPeriodUnit_value[v.(string)]) - if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + } - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) - } - ipFilteringTypeInt.AllowList.IpPrefixes = ls + } - } + } - } + if v, ok := apiEndpointRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { - } + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_RefRateLimiter{} + rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} + apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt - if v, ok := ipFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - ipFilteringTypeTypeFound = true - ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_BlockList{} - ipFilteringTypeInt.BlockList = &ves_io_schema_policy.PrefixMatchList{} - ipFiltering.IpFilteringType = ipFilteringTypeInt + if v, ok := cs["name"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + rateLimiterChoiceInt.RefRateLimiter.Name = v.(string) - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + } - ipFilteringTypeInt.BlockList.InvertMatch = v.(bool) + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - } + rateLimiterChoiceInt.RefRateLimiter.Namespace = v.(string) - if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + } - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) - } - ipFilteringTypeInt.BlockList.IpPrefixes = ls + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - } + rateLimiterChoiceInt.RefRateLimiter.Tenant = v.(string) - } + } - } + } - } + } - } + if v, ok := apiEndpointRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + apiEndpointRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) - } + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) - } + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } - //origin_pool - if v, ok := d.GetOk("origin_pool"); ok && !isIntfNil(v) { + matchTypeFound := false - sl := v.(*schema.Set).List() - originPool := &ves_io_schema_views_cdn_loadbalancer.CdnOriginPoolType{} - createSpec.OriginPool = originPool - for _, set := range sl { - originPoolMapStrToI := set.(map[string]interface{}) + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if w, ok := originPoolMapStrToI["follow_origin_redirect"]; ok && !isIntfNil(w) { - originPool.FollowOriginRedirect = w.(bool) - } + matchTypeFound = true - if v, ok := originPoolMapStrToI["more_origin_options"]; ok && !isIntfNil(v) { + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } - sl := v.(*schema.Set).List() - moreOriginOptions := &ves_io_schema_views_cdn_loadbalancer.OriginAdvancedConfiguration{} - originPool.MoreOriginOptions = moreOriginOptions - for _, set := range sl { - moreOriginOptionsMapStrToI := set.(map[string]interface{}) + } - if w, ok := moreOriginOptionsMapStrToI["disable_byte_range_request"]; ok && !isIntfNil(w) { - moreOriginOptions.DisableByteRangeRequest = w.(bool) - } + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if w, ok := moreOriginOptionsMapStrToI["websocket_proxy"]; ok && !isIntfNil(w) { - moreOriginOptions.WebsocketProxy = w.(bool) - } + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } - } + } - if w, ok := originPoolMapStrToI["origin_request_timeout"]; ok && !isIntfNil(w) { - originPool.OriginRequestTimeout = w.(string) - } + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := originPoolMapStrToI["origin_servers"]; ok && !isIntfNil(v) { + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt - sl := v.([]interface{}) - originServers := make([]*ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType, len(sl)) - originPool.OriginServers = originServers - for i, set := range sl { - originServers[i] = &ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType{} - originServersMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - choiceTypeFound := false + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if v, ok := originServersMapStrToI["public_ip"]; ok && !isIntfNil(v) && !choiceTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - choiceTypeFound = true - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType_PublicIp{} - choiceInt.PublicIp = &ves_io_schema_views_origin_pool.OriginServerPublicIP{} - originServers[i].Choice = choiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - publicIpChoiceTypeFound := false + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - if v, ok := cs["ip"]; ok && !isIntfNil(v) && !publicIpChoiceTypeFound { + } - publicIpChoiceTypeFound = true - publicIpChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPublicIP_Ip{} + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - choiceInt.PublicIp.PublicIpChoice = publicIpChoiceInt + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - publicIpChoiceInt.Ip = v.(string) + } - } + } - if v, ok := cs["ipv6"]; ok && !isIntfNil(v) && !publicIpChoiceTypeFound { + } - publicIpChoiceTypeFound = true - publicIpChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPublicIP_Ipv6{} + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - choiceInt.PublicIp.PublicIpChoice = publicIpChoiceInt + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} - publicIpChoiceInt.Ipv6 = v.(string) + cookieMatchers[i].Match = matchInt - } + matchInt.Presence = v.(bool) - } + } - } + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } - if v, ok := originServersMapStrToI["public_name"]; ok && !isIntfNil(v) && !choiceTypeFound { + } - choiceTypeFound = true - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNOriginServerType_PublicName{} - choiceInt.PublicName = &ves_io_schema_views_origin_pool.OriginServerPublicName{} - originServers[i].Choice = choiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { - if v, ok := cs["dns_name"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) - choiceInt.PublicName.DnsName = v.(string) + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } - } + matchTypeFound := false - if v, ok := cs["refresh_interval"]; ok && !isIntfNil(v) { + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - choiceInt.PublicName.RefreshInterval = uint32(v.(int)) + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } - } + } - } + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if w, ok := originServersMapStrToI["port"]; ok && !isIntfNil(w) { - originServers[i].Port = uint32(w.(int)) - } + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } - } + } - if v, ok := originPoolMapStrToI["public_name"]; ok && !isIntfNil(v) { + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - sl := v.(*schema.Set).List() - publicName := &ves_io_schema_views_origin_pool.OriginServerPublicName{} - originPool.PublicName = publicName - for _, set := range sl { - publicNameMapStrToI := set.(map[string]interface{}) + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt - if w, ok := publicNameMapStrToI["dns_name"]; ok && !isIntfNil(w) { - publicName.DnsName = w.(string) - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if w, ok := publicNameMapStrToI["refresh_interval"]; ok && !isIntfNil(w) { - publicName.RefreshInterval = uint32(w.(int)) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - } + } - tlsChoiceTypeFound := false + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - if v, ok := originPoolMapStrToI["no_tls"]; ok && !isIntfNil(v) && !tlsChoiceTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - tlsChoiceTypeFound = true + } - if v.(bool) { - tlsChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CdnOriginPoolType_NoTls{} - tlsChoiceInt.NoTls = &ves_io_schema.Empty{} - originPool.TlsChoice = tlsChoiceInt - } + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - } + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - if v, ok := originPoolMapStrToI["use_tls"]; ok && !isIntfNil(v) && !tlsChoiceTypeFound { + } - tlsChoiceTypeFound = true - tlsChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CdnOriginPoolType_UseTls{} - tlsChoiceInt.UseTls = &ves_io_schema_views_origin_pool.UpstreamTlsParameters{} - originPool.TlsChoice = tlsChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - mtlsChoiceTypeFound := false + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["no_mtls"]; ok && !isIntfNil(v) && !mtlsChoiceTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} - mtlsChoiceTypeFound = true + headers[i].Match = matchInt - if v.(bool) { - mtlsChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_NoMtls{} - mtlsChoiceInt.NoMtls = &ves_io_schema.Empty{} - tlsChoiceInt.UseTls.MtlsChoice = mtlsChoiceInt - } + matchInt.Presence = v.(bool) - } + } - if v, ok := cs["use_mtls"]; ok && !isIntfNil(v) && !mtlsChoiceTypeFound { + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } - mtlsChoiceTypeFound = true - mtlsChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseMtls{} - mtlsChoiceInt.UseMtls = &ves_io_schema_views_origin_pool.TlsCertificatesType{} - tlsChoiceInt.UseTls.MtlsChoice = mtlsChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["tls_certificates"]; ok && !isIntfNil(v) { + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { - sl := v.([]interface{}) - tlsCertificates := make([]*ves_io_schema.TlsCertificateType, len(sl)) - mtlsChoiceInt.UseMtls.TlsCertificates = tlsCertificates - for i, set := range sl { - tlsCertificates[i] = &ves_io_schema.TlsCertificateType{} - tlsCertificatesMapStrToI := set.(map[string]interface{}) + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) - if w, ok := tlsCertificatesMapStrToI["certificate_url"]; ok && !isIntfNil(w) { - tlsCertificates[i].CertificateUrl = w.(string) - } + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } - if w, ok := tlsCertificatesMapStrToI["description"]; ok && !isIntfNil(w) { - tlsCertificates[i].Description = w.(string) - } + matchTypeFound := false - ocspStaplingChoiceTypeFound := false + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := tlsCertificatesMapStrToI["custom_hash_algorithms"]; ok && !isIntfNil(v) && !ocspStaplingChoiceTypeFound { + matchTypeFound = true - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_CustomHashAlgorithms{} - ocspStaplingChoiceInt.CustomHashAlgorithms = &ves_io_schema.HashAlgorithms{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["hash_algorithms"]; ok && !isIntfNil(v) { + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - hash_algorithmsList := []ves_io_schema.HashAlgorithm{} - for _, j := range v.([]interface{}) { - hash_algorithmsList = append(hash_algorithmsList, ves_io_schema.HashAlgorithm(ves_io_schema.HashAlgorithm_value[j.(string)])) - } - ocspStaplingChoiceInt.CustomHashAlgorithms.HashAlgorithms = hash_algorithmsList + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } - } + } - } + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if _, ok := tlsCertificatesMapStrToI["disable_ocsp_stapling"]; ok && !ocspStaplingChoiceTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_DisableOcspStapling{} - ocspStaplingChoiceInt.DisableOcspStapling = &ves_io_schema.Empty{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if _, ok := tlsCertificatesMapStrToI["use_system_defaults"]; ok && !ocspStaplingChoiceTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_UseSystemDefaults{} - ocspStaplingChoiceInt.UseSystemDefaults = &ves_io_schema.Empty{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + } - } + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - if v, ok := tlsCertificatesMapStrToI["private_key"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - sl := v.(*schema.Set).List() - privateKey := &ves_io_schema.SecretType{} - tlsCertificates[i].PrivateKey = privateKey - for _, set := range sl { - privateKeyMapStrToI := set.(map[string]interface{}) + } - if v, ok := privateKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - privateKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + } - } + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } - } + } - if v, ok := privateKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + } - privateKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) - secretInfoOneofTypeFound := false + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } - if v, ok := privateKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + matchTypeFound := false - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + matchTypeFound = true - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - } + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if v, ok := privateKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + } - } + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - if v, ok := cs["url"]; ok && !isIntfNil(v) { + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + } - } + } - } + } - } + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := privateKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + queryParams[i].Match = matchInt - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + matchInt.Presence = v.(bool) - if v, ok := cs["key"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + } } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + } - } + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + ipAllowedListChoiceTypeFound := false - } + if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_BypassRateLimitingRules{} + ipAllowedListChoiceInt.BypassRateLimitingRules = &ves_io_schema_views_common_waf.BypassRateLimitingRules{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) { - if v, ok := cs["version"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + bypassRateLimitingRules := make([]*ves_io_schema_views_common_waf.BypassRateLimitingRule, len(sl)) + ipAllowedListChoiceInt.BypassRateLimitingRules.BypassRateLimitingRules = bypassRateLimitingRules + for i, set := range sl { + bypassRateLimitingRules[i] = &ves_io_schema_views_common_waf.BypassRateLimitingRule{} + bypassRateLimitingRulesMapStrToI := set.(map[string]interface{}) - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + if v, ok := bypassRateLimitingRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + bypassRateLimitingRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) - } + clientChoiceTypeFound := false - } + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - if v, ok := privateKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + clientChoiceTypeFound = true - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls - } + } - } + } - } + } - } + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - } + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["use_mtls_obj"]; ok && !isIntfNil(v) && !mtlsChoiceTypeFound { + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { - mtlsChoiceTypeFound = true - mtlsChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseMtlsObj{} - mtlsChoiceInt.UseMtlsObj = &ves_io_schema_views.ObjectRefType{} - tlsChoiceInt.UseTls.MtlsChoice = mtlsChoiceInt + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + } - mtlsChoiceInt.UseMtlsObj.Name = v.(string) + } - } + ipAsnChoiceTypeFound := false - if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - mtlsChoiceInt.UseMtlsObj.Namespace = v.(string) + ipAsnChoiceTypeFound = true - } + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } - if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + } - mtlsChoiceInt.UseMtlsObj.Tenant = v.(string) + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - } + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { - serverValidationChoiceTypeFound := false + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls - if v, ok := cs["skip_server_verification"]; ok && !isIntfNil(v) && !serverValidationChoiceTypeFound { + } - serverValidationChoiceTypeFound = true + } - if v.(bool) { - serverValidationChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_SkipServerVerification{} - serverValidationChoiceInt.SkipServerVerification = &ves_io_schema.Empty{} - tlsChoiceInt.UseTls.ServerValidationChoice = serverValidationChoiceInt - } + } - } + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - if v, ok := cs["use_server_verification"]; ok && !isIntfNil(v) && !serverValidationChoiceTypeFound { + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - serverValidationChoiceTypeFound = true - serverValidationChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseServerVerification{} - serverValidationChoiceInt.UseServerVerification = &ves_io_schema_views_origin_pool.UpstreamTlsValidationContext{} - tlsChoiceInt.UseTls.ServerValidationChoice = serverValidationChoiceInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { - trustedCaChoiceTypeFound := false + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { - if v, ok := cs["trusted_ca"]; ok && !isIntfNil(v) && !trustedCaChoiceTypeFound { + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} - trustedCaChoiceTypeFound = true - trustedCaChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsValidationContext_TrustedCa{} - trustedCaChoiceInt.TrustedCa = &ves_io_schema_views.ObjectRefType{} - serverValidationChoiceInt.UseServerVerification.TrustedCaChoice = trustedCaChoiceInt + asnSetsInt[i].Kind = "bgp_asn_set" - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } - trustedCaChoiceInt.TrustedCa.Name = v.(string) + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } - } + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } - if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + } - trustedCaChoiceInt.TrustedCa.Namespace = v.(string) + } - } + } - if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + } - trustedCaChoiceInt.TrustedCa.Tenant = v.(string) + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - } + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { - if v, ok := cs["trusted_ca_url"]; ok && !isIntfNil(v) && !trustedCaChoiceTypeFound { + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) - trustedCaChoiceTypeFound = true - trustedCaChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsValidationContext_TrustedCaUrl{} + } - serverValidationChoiceInt.UseServerVerification.TrustedCaChoice = trustedCaChoiceInt + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { - trustedCaChoiceInt.TrustedCaUrl = v.(string) + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { - } + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} - } + prefixSetsInt[i].Kind = "ip_prefix_set" - } + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } - if v, ok := cs["volterra_trusted_ca"]; ok && !isIntfNil(v) && !serverValidationChoiceTypeFound { + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } - serverValidationChoiceTypeFound = true + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } - if v.(bool) { - serverValidationChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_VolterraTrustedCa{} - serverValidationChoiceInt.VolterraTrustedCa = &ves_io_schema.Empty{} - tlsChoiceInt.UseTls.ServerValidationChoice = serverValidationChoiceInt - } + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } - } + } - sniChoiceTypeFound := false + } - if v, ok := cs["disable_sni"]; ok && !isIntfNil(v) && !sniChoiceTypeFound { + } - sniChoiceTypeFound = true + } - if v.(bool) { - sniChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_DisableSni{} - sniChoiceInt.DisableSni = &ves_io_schema.Empty{} - tlsChoiceInt.UseTls.SniChoice = sniChoiceInt - } + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - } + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - if v, ok := cs["sni"]; ok && !isIntfNil(v) && !sniChoiceTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sniChoiceTypeFound = true - sniChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_Sni{} + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - tlsChoiceInt.UseTls.SniChoice = sniChoiceInt + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) - sniChoiceInt.Sni = v.(string) + } - } + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { - if v, ok := cs["use_host_header_as_sni"]; ok && !isIntfNil(v) && !sniChoiceTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls - sniChoiceTypeFound = true + } - if v.(bool) { - sniChoiceInt := &ves_io_schema_views_origin_pool.UpstreamTlsParameters_UseHostHeaderAsSni{} - sniChoiceInt.UseHostHeaderAsSni = &ves_io_schema.Empty{} - tlsChoiceInt.UseTls.SniChoice = sniChoiceInt - } + } - } + } - if v, ok := cs["tls_config"]; ok && !isIntfNil(v) { + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - tlsConfig := &ves_io_schema_views.TlsConfig{} - tlsChoiceInt.UseTls.TlsConfig = tlsConfig - for _, set := range sl { - tlsConfigMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) - choiceTypeFound := false + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { - if v, ok := tlsConfigMapStrToI["custom_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList - choiceTypeFound = true - choiceInt := &ves_io_schema_views.TlsConfig_CustomSecurity{} - choiceInt.CustomSecurity = &ves_io_schema_views.CustomCiphers{} - tlsConfig.Choice = choiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } - if v, ok := cs["cipher_suites"]; ok && !isIntfNil(v) { + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) - } - choiceInt.CustomSecurity.CipherSuites = ls + } - } + } - if v, ok := cs["max_version"]; ok && !isIntfNil(v) { + } - choiceInt.CustomSecurity.MaxVersion = ves_io_schema.TlsProtocol(ves_io_schema.TlsProtocol_value[v.(string)]) + } - } + destinationTypeTypeFound := false - if v, ok := cs["min_version"]; ok && !isIntfNil(v) { + if v, ok := bypassRateLimitingRulesMapStrToI["any_url"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { - choiceInt.CustomSecurity.MinVersion = ves_io_schema.TlsProtocol(ves_io_schema.TlsProtocol_value[v.(string)]) + destinationTypeTypeFound = true - } + if v.(bool) { + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{} + destinationTypeInt.AnyUrl = &ves_io_schema.Empty{} + bypassRateLimitingRules[i].DestinationType = destinationTypeInt + } - } + } - } + if v, ok := bypassRateLimitingRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { - if v, ok := tlsConfigMapStrToI["default_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + destinationTypeTypeFound = true + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiEndpoint{} + destinationTypeInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} + bypassRateLimitingRules[i].DestinationType = destinationTypeInt - choiceTypeFound = true + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v.(bool) { - choiceInt := &ves_io_schema_views.TlsConfig_DefaultSecurity{} - choiceInt.DefaultSecurity = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + if v, ok := cs["methods"]; ok && !isIntfNil(v) { - } + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + destinationTypeInt.ApiEndpoint.Methods = methodsList - if v, ok := tlsConfigMapStrToI["low_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + } - choiceTypeFound = true + if v, ok := cs["path"]; ok && !isIntfNil(v) { - if v.(bool) { - choiceInt := &ves_io_schema_views.TlsConfig_LowSecurity{} - choiceInt.LowSecurity = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + destinationTypeInt.ApiEndpoint.Path = v.(string) - } + } - if v, ok := tlsConfigMapStrToI["medium_security"]; ok && !isIntfNil(v) && !choiceTypeFound { + } - choiceTypeFound = true + } - if v.(bool) { - choiceInt := &ves_io_schema_views.TlsConfig_MediumSecurity{} - choiceInt.MediumSecurity = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + if v, ok := bypassRateLimitingRulesMapStrToI["api_groups"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { - } + destinationTypeTypeFound = true + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiGroups{} + destinationTypeInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} + bypassRateLimitingRules[i].DestinationType = destinationTypeInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["api_groups"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + destinationTypeInt.ApiGroups.ApiGroups = ls + + } + + } - } + } - } + if v, ok := bypassRateLimitingRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { - } + destinationTypeTypeFound = true + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_BasePath{} - log.Printf("[DEBUG] Creating Volterra CdnLoadbalancer object with struct: %+v", createReq) + bypassRateLimitingRules[i].DestinationType = destinationTypeInt - createCdnLoadbalancerResp, err := client.CreateObject(context.Background(), ves_io_schema_views_cdn_loadbalancer.ObjectType, createReq) - if err != nil { - return fmt.Errorf("error creating CdnLoadbalancer: %s", err) - } - d.SetId(createCdnLoadbalancerResp.GetObjSystemMetadata().GetUid()) + destinationTypeInt.BasePath = v.(string) - return resourceVolterraCdnLoadbalancerRead(d, meta) -} + } -func resourceVolterraCdnLoadbalancerRead(d *schema.ResourceData, meta interface{}) error { - client := meta.(*APIClient) - name := d.Get("name").(string) - namespace := d.Get("namespace").(string) + domainChoiceTypeFound := false - resp, err := client.GetObject(context.Background(), ves_io_schema_views_cdn_loadbalancer.ObjectType, namespace, name) - if err != nil { - if strings.Contains(err.Error(), "status code 404") { - log.Printf("[INFO] CdnLoadbalancer %s no longer exists", d.Id()) - d.SetId("") - return nil - } - return fmt.Errorf("Error finding Volterra CdnLoadbalancer %q: %s", d.Id(), err) - } - return setCdnLoadbalancerFields(client, d, resp) -} + if v, ok := bypassRateLimitingRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { -func setCdnLoadbalancerFields(client *APIClient, d *schema.ResourceData, resp vesapi.GetObjectResponse) error { - metadata := resp.GetObjMetadata() + domainChoiceTypeFound = true - d.Set("annotations", metadata.GetAnnotations()) + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + bypassRateLimitingRules[i].DomainChoice = domainChoiceInt + } - d.Set("description", metadata.GetDescription()) + } - d.Set("disable", metadata.GetDisable()) + if v, ok := bypassRateLimitingRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - d.Set("labels", metadata.GetLabels()) + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_SpecificDomain{} - d.Set("name", metadata.GetName()) + bypassRateLimitingRules[i].DomainChoice = domainChoiceInt - d.Set("namespace", metadata.GetNamespace()) + domainChoiceInt.SpecificDomain = v.(string) - return nil -} + } -// resourceVolterraCdnLoadbalancerUpdate updates CdnLoadbalancer resource -func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interface{}) error { - client := meta.(*APIClient) + if v, ok := bypassRateLimitingRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { - updateMeta := &ves_io_schema.ObjectReplaceMetaType{} - updateSpec := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType{} - updateReq := &ves_io_schema_views_cdn_loadbalancer.ReplaceRequest{ - Metadata: updateMeta, - Spec: updateSpec, - } + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + bypassRateLimitingRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) - if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { - ms := map[string]string{} + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) - for k, v := range v.(map[string]interface{}) { - val := v.(string) - ms[k] = val - } - updateMeta.Annotations = ms - } + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) + } - if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { - updateMeta.Description = - v.(string) - } + matchTypeFound := false - if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { - updateMeta.Disable = - v.(bool) - } + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + matchTypeFound = true - ms := map[string]string{} + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } - for k, v := range v.(map[string]interface{}) { - val := v.(string) - ms[k] = val - } - updateMeta.Labels = ms - } + } - if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { - updateMeta.Name = - v.(string) - } + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { - updateMeta.Namespace = - v.(string) - } + matchTypeFound = true - if v, ok := d.GetOk("add_location"); ok && !isIntfNil(v) { + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } - updateSpec.AddLocation = - v.(bool) + } - } + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := d.GetOk("domains"); ok && !isIntfNil(v) { + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) - } - updateSpec.Domains = ls + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - loadbalancerTypeTypeFound := false + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - if v, ok := d.GetOk("http"); ok && !loadbalancerTypeTypeFound { + } - loadbalancerTypeTypeFound = true - loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType_Http{} - loadbalancerTypeInt.Http = &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp{} - updateSpec.LoadbalancerType = loadbalancerTypeInt + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - if v, ok := cs["dns_volterra_managed"]; ok && !isIntfNil(v) { + } - loadbalancerTypeInt.Http.DnsVolterraManaged = v.(bool) + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - } + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - portChoiceTypeFound := false + } - if v, ok := cs["port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + } - portChoiceTypeFound = true - portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_Port{} + } - loadbalancerTypeInt.Http.PortChoice = portChoiceInt + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - portChoiceInt.Port = uint32(v.(int)) + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} - } + cookieMatchers[i].Match = matchInt - if v, ok := cs["port_ranges"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + matchInt.Presence = v.(bool) - portChoiceTypeFound = true - portChoiceInt := &ves_io_schema_views_http_loadbalancer.ProxyTypeHttp_PortRanges{} + } - loadbalancerTypeInt.Http.PortChoice = portChoiceInt + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) + } - portChoiceInt.PortRanges = v.(string) + } - } + } - } + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) - if v, ok := d.GetOk("https"); ok && !loadbalancerTypeTypeFound { + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) + } - loadbalancerTypeTypeFound = true - loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType_Https{} - loadbalancerTypeInt.Https = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSCustomCertsType{} - updateSpec.LoadbalancerType = loadbalancerTypeInt + matchTypeFound := false - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + matchTypeFound = true - loadbalancerTypeInt.Https.AddHsts = v.(bool) + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } - } + } - if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - loadbalancerTypeInt.Https.HttpRedirect = v.(bool) + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } - if v, ok := cs["tls_parameters"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - tlsParameters := &ves_io_schema_views_cdn_loadbalancer.CDNDownstreamTlsParamsType{} - loadbalancerTypeInt.Https.TlsParameters = tlsParameters - for _, set := range sl { - tlsParametersMapStrToI := set.(map[string]interface{}) + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := tlsParametersMapStrToI["tls_certificates"]; ok && !isIntfNil(v) { + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt - sl := v.([]interface{}) - tlsCertificates := make([]*ves_io_schema.TlsCertificateType, len(sl)) - tlsParameters.TlsCertificates = tlsCertificates - for i, set := range sl { - tlsCertificates[i] = &ves_io_schema.TlsCertificateType{} - tlsCertificatesMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if w, ok := tlsCertificatesMapStrToI["certificate_url"]; ok && !isIntfNil(w) { - tlsCertificates[i].CertificateUrl = w.(string) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if w, ok := tlsCertificatesMapStrToI["description"]; ok && !isIntfNil(w) { - tlsCertificates[i].Description = w.(string) - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - ocspStaplingChoiceTypeFound := false + } - if v, ok := tlsCertificatesMapStrToI["custom_hash_algorithms"]; ok && !isIntfNil(v) && !ocspStaplingChoiceTypeFound { + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_CustomHashAlgorithms{} - ocspStaplingChoiceInt.CustomHashAlgorithms = &ves_io_schema.HashAlgorithms{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["hash_algorithms"]; ok && !isIntfNil(v) { + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - hash_algorithmsList := []ves_io_schema.HashAlgorithm{} - for _, j := range v.([]interface{}) { - hash_algorithmsList = append(hash_algorithmsList, ves_io_schema.HashAlgorithm(ves_io_schema.HashAlgorithm_value[j.(string)])) - } - ocspStaplingChoiceInt.CustomHashAlgorithms.HashAlgorithms = hash_algorithmsList + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - } + } - } + } - } + } - if _, ok := tlsCertificatesMapStrToI["disable_ocsp_stapling"]; ok && !ocspStaplingChoiceTypeFound { + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_DisableOcspStapling{} - ocspStaplingChoiceInt.DisableOcspStapling = &ves_io_schema.Empty{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} - } + headers[i].Match = matchInt - if _, ok := tlsCertificatesMapStrToI["use_system_defaults"]; ok && !ocspStaplingChoiceTypeFound { + matchInt.Presence = v.(bool) - ocspStaplingChoiceTypeFound = true - ocspStaplingChoiceInt := &ves_io_schema.TlsCertificateType_UseSystemDefaults{} - ocspStaplingChoiceInt.UseSystemDefaults = &ves_io_schema.Empty{} - tlsCertificates[i].OcspStaplingChoice = ocspStaplingChoiceInt + } - } + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } - if v, ok := tlsCertificatesMapStrToI["private_key"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - privateKey := &ves_io_schema.SecretType{} - tlsCertificates[i].PrivateKey = privateKey - for _, set := range sl { - privateKeyMapStrToI := set.(map[string]interface{}) + } - if v, ok := privateKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - privateKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + matchTypeFound := false - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } - if v, ok := privateKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + } - privateKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - secretInfoOneofTypeFound := false + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } - if v, ok := privateKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - if v, ok := cs["location"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - } + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - } + } - } + } - if v, ok := privateKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) + } - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } - } + matchTypeFound := false - } + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - if v, ok := privateKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := cs["key"]; ok && !isIntfNil(v) { + matchTypeFound = true - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - } + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - } + } - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - } + } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - } + } - } + } - } + } - if v, ok := privateKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - privateKey.SecretInfoOneof = secretInfoOneofInt + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + queryParams[i].Match = matchInt - if v, ok := cs["name"]; ok && !isIntfNil(v) { + matchInt.Presence = v.(bool) - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + } - } + } - } + } - } + } - } + } - } + } - } + } - } + } - if v, ok := tlsParametersMapStrToI["tls_config"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} - tlsParameters.TlsConfig = tlsConfig - for _, set := range sl { - tlsConfigMapStrToI := set.(map[string]interface{}) + if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - choiceTypeFound := false + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt - if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - choiceTypeFound = true + if v, ok := cs["rate_limiter_allowed_prefixes"]; ok && !isIntfNil(v) { - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} - choiceInt.Tls_11Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + sl := v.([]interface{}) + rateLimiterAllowedPrefixesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + ipAllowedListChoiceInt.CustomIpAllowedList.RateLimiterAllowedPrefixes = rateLimiterAllowedPrefixesInt + for i, ps := range sl { - } + rlapMapToStrVal := ps.(map[string]interface{}) + rateLimiterAllowedPrefixesInt[i] = &ves_io_schema_views.ObjectRefType{} - if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + if v, ok := rlapMapToStrVal["name"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Name = v.(string) + } - choiceTypeFound = true + if v, ok := rlapMapToStrVal["namespace"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Namespace = v.(string) + } - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} - choiceInt.Tls_12Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + if v, ok := rlapMapToStrVal["tenant"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Tenant = v.(string) + } - } + } - } + } - } + } - } + } - } + if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - } + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_IpAllowedList{} + ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := d.GetOk("https_auto_cert"); ok && !loadbalancerTypeTypeFound { + if v, ok := cs["ipv6_prefixes"]; ok && !isIntfNil(v) { - loadbalancerTypeTypeFound = true - loadbalancerTypeInt := &ves_io_schema_views_cdn_loadbalancer.ReplaceSpecType_HttpsAutoCert{} - loadbalancerTypeInt.HttpsAutoCert = &ves_io_schema_views_cdn_loadbalancer.CDNHTTPSAutoCertsType{} - updateSpec.LoadbalancerType = loadbalancerTypeInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Ipv6Prefixes = ls - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["add_hsts"]; ok && !isIntfNil(v) { + if v, ok := cs["prefixes"]; ok && !isIntfNil(v) { - loadbalancerTypeInt.HttpsAutoCert.AddHsts = v.(bool) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Prefixes = ls - } + } - if v, ok := cs["http_redirect"]; ok && !isIntfNil(v) { + } - loadbalancerTypeInt.HttpsAutoCert.HttpRedirect = v.(bool) + } - } + if v, ok := cs["no_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - if v, ok := cs["tls_config"]; ok && !isIntfNil(v) { + ipAllowedListChoiceTypeFound = true - sl := v.(*schema.Set).List() - tlsConfig := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig{} - loadbalancerTypeInt.HttpsAutoCert.TlsConfig = tlsConfig - for _, set := range sl { - tlsConfigMapStrToI := set.(map[string]interface{}) + if v.(bool) { + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{} + ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} + rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + } - choiceTypeFound := false + } - if v, ok := tlsConfigMapStrToI["tls_11_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + if v, ok := cs["server_url_rules"]; ok && !isIntfNil(v) { - choiceTypeFound = true + sl := v.([]interface{}) + serverUrlRules := make([]*ves_io_schema_views_common_waf.ServerUrlRule, len(sl)) + rateLimitChoiceInt.ApiRateLimit.ServerUrlRules = serverUrlRules + for i, set := range sl { + serverUrlRules[i] = &ves_io_schema_views_common_waf.ServerUrlRule{} + serverUrlRulesMapStrToI := set.(map[string]interface{}) - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_11Plus{} - choiceInt.Tls_11Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + if w, ok := serverUrlRulesMapStrToI["api_group"]; ok && !isIntfNil(w) { + serverUrlRules[i].ApiGroup = w.(string) + } - } + if w, ok := serverUrlRulesMapStrToI["base_path"]; ok && !isIntfNil(w) { + serverUrlRules[i].BasePath = w.(string) + } - if v, ok := tlsConfigMapStrToI["tls_12_plus"]; ok && !isIntfNil(v) && !choiceTypeFound { + if v, ok := serverUrlRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { - choiceTypeFound = true + sl := v.(*schema.Set).List() + clientMatcher := &ves_io_schema_policy.ClientMatcher{} + serverUrlRules[i].ClientMatcher = clientMatcher + for _, set := range sl { + clientMatcherMapStrToI := set.(map[string]interface{}) - if v.(bool) { - choiceInt := &ves_io_schema_views_cdn_loadbalancer.CDNTLSConfig_Tls_12Plus{} - choiceInt.Tls_12Plus = &ves_io_schema.Empty{} - tlsConfig.Choice = choiceInt - } + clientChoiceTypeFound := false - } + if v, ok := clientMatcherMapStrToI["any_client"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - } + clientChoiceTypeFound = true - } + if v.(bool) { + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyClient{} + clientChoiceInt.AnyClient = &ves_io_schema.Empty{} + clientMatcher.ClientChoice = clientChoiceInt + } - } + } - } + if v, ok := clientMatcherMapStrToI["client_selector"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - if v, ok := d.GetOk("more_option"); ok && !isIntfNil(v) { + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_ClientSelector{} + clientChoiceInt.ClientSelector = &ves_io_schema.LabelSelectorType{} + clientMatcher.ClientChoice = clientChoiceInt - sl := v.(*schema.Set).List() - moreOption := &ves_io_schema_views_cdn_loadbalancer.AdvancedOptionsType{} - updateSpec.MoreOption = moreOption - for _, set := range sl { - moreOptionMapStrToI := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := moreOptionMapStrToI["cache_options"]; ok && !isIntfNil(v) { + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - cacheOptions := &ves_io_schema_views_cdn_loadbalancer.CacheOptions{} - moreOption.CacheOptions = cacheOptions - for _, set := range sl { - cacheOptionsMapStrToI := set.(map[string]interface{}) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.ClientSelector.Expressions = ls - if v, ok := cacheOptionsMapStrToI["cache_rules"]; ok && !isIntfNil(v) { + } - sl := v.([]interface{}) - cacheRules := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRule, len(sl)) - cacheOptions.CacheRules = cacheRules - for i, set := range sl { - cacheRules[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule{} - cacheRulesMapStrToI := set.(map[string]interface{}) + } - cacheActionsTypeFound := false + } - if v, ok := cacheRulesMapStrToI["cache_bypass"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + if v, ok := clientMatcherMapStrToI["ip_threat_category_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { - cacheActionsTypeFound = true + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_policy.ClientMatcher_IpThreatCategoryList{} + clientChoiceInt.IpThreatCategoryList = &ves_io_schema_policy.IPThreatCategoryListType{} + clientMatcher.ClientChoice = clientChoiceInt - if v.(bool) { - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_CacheBypass{} - cacheActionsInt.CacheBypass = &ves_io_schema.Empty{} - cacheRules[i].CacheActions = cacheActionsInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["ip_threat_categories"]; ok && !isIntfNil(v) { - if v, ok := cacheRulesMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + ip_threat_categoriesList := []ves_io_schema_policy.IPThreatCategory{} + for _, j := range v.([]interface{}) { + ip_threat_categoriesList = append(ip_threat_categoriesList, ves_io_schema_policy.IPThreatCategory(ves_io_schema_policy.IPThreatCategory_value[j.(string)])) + } + clientChoiceInt.IpThreatCategoryList.IpThreatCategories = ip_threat_categoriesList - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.CDNCacheRule_EligibleForCache{} - cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions{} - cacheRules[i].CacheActions = cacheActionsInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - eligibleForCacheTypeFound := false + } - if v, ok := cs["hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + ipAsnChoiceTypeFound := false - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_HostnameUri{} - eligibleForCacheInt.HostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + if v, ok := clientMatcherMapStrToI["any_ip"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + ipAsnChoiceTypeFound = true - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + if v.(bool) { + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AnyIp{} + ipAsnChoiceInt.AnyIp = &ves_io_schema.Empty{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt + } - eligibleForCacheInt.HostnameUri.CacheOverride = v.(bool) + } - } + if v, ok := clientMatcherMapStrToI["asn_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnList{} + ipAsnChoiceInt.AsnList = &ves_io_schema_policy.AsnMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - eligibleForCacheInt.HostnameUri.CacheTtl = v.(string) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["as_numbers"]; ok && !isIntfNil(v) { - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + ls := make([]uint32, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = uint32(v.(int)) + } + ipAsnChoiceInt.AsnList.AsNumbers = ls - eligibleForCacheInt.HostnameUri.IgnoreResponseCookie = v.(bool) + } - } + } - } + } - } + if v, ok := clientMatcherMapStrToI["asn_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - if v, ok := cs["scheme_hostname_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_AsnMatcher{} + ipAsnChoiceInt.AsnMatcher = &ves_io_schema_policy.AsnMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameRequestUri{} - eligibleForCacheInt.SchemeHostnameRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["asn_sets"]; ok && !isIntfNil(v) { - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + asnSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.AsnMatcher.AsnSets = asnSetsInt + for i, ps := range sl { - eligibleForCacheInt.SchemeHostnameRequestUri.CacheOverride = v.(bool) + asMapToStrVal := ps.(map[string]interface{}) + asnSetsInt[i] = &ves_io_schema.ObjectRefType{} - } + asnSetsInt[i].Kind = "bgp_asn_set" - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + if v, ok := asMapToStrVal["name"]; ok && !isIntfNil(v) { + asnSetsInt[i].Name = v.(string) + } - eligibleForCacheInt.SchemeHostnameRequestUri.CacheTtl = v.(string) + if v, ok := asMapToStrVal["namespace"]; ok && !isIntfNil(v) { + asnSetsInt[i].Namespace = v.(string) + } - } + if v, ok := asMapToStrVal["tenant"]; ok && !isIntfNil(v) { + asnSetsInt[i].Tenant = v.(string) + } - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + if v, ok := asMapToStrVal["uid"]; ok && !isIntfNil(v) { + asnSetsInt[i].Uid = v.(string) + } - eligibleForCacheInt.SchemeHostnameRequestUri.IgnoreResponseCookie = v.(bool) + } - } + } - } + } - } + } - if v, ok := cs["scheme_hostname_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + if v, ok := clientMatcherMapStrToI["ip_matcher"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUri{} - eligibleForCacheInt.SchemeHostnameUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpMatcher{} + ipAsnChoiceInt.IpMatcher = &ves_io_schema_policy.IpMatcherType{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { - eligibleForCacheInt.SchemeHostnameUri.CacheOverride = v.(bool) + ipAsnChoiceInt.IpMatcher.InvertMatcher = v.(bool) - } + } - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { - eligibleForCacheInt.SchemeHostnameUri.CacheTtl = v.(string) + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ipAsnChoiceInt.IpMatcher.PrefixSets = prefixSetsInt + for i, ps := range sl { - } + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Kind = "ip_prefix_set" - eligibleForCacheInt.SchemeHostnameUri.IgnoreResponseCookie = v.(bool) + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } - } + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } - } + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } - } + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } - if v, ok := cs["scheme_hostname_uri_query"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + } - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeHostnameUriQuery{} - eligibleForCacheInt.SchemeHostnameUriQuery = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeHostnameUriQuery.CacheOverride = v.(bool) + if v, ok := clientMatcherMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !ipAsnChoiceTypeFound { - } + ipAsnChoiceTypeFound = true + ipAsnChoiceInt := &ves_io_schema_policy.ClientMatcher_IpPrefixList{} + ipAsnChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + clientMatcher.IpAsnChoice = ipAsnChoiceInt - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - eligibleForCacheInt.SchemeHostnameUriQuery.CacheTtl = v.(string) + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - } + ipAsnChoiceInt.IpPrefixList.InvertMatch = v.(bool) - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeHostnameUriQuery.IgnoreResponseCookie = v.(bool) + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAsnChoiceInt.IpPrefixList.IpPrefixes = ls - } + } - } + } - if v, ok := cs["scheme_proxy_host_request_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + } - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostRequestUri{} - eligibleForCacheInt.SchemeProxyHostRequestUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + if v, ok := clientMatcherMapStrToI["tls_fingerprint_matcher"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + tlsFingerprintMatcher := &ves_io_schema_policy.TlsFingerprintMatcherType{} + clientMatcher.TlsFingerprintMatcher = tlsFingerprintMatcher + for _, set := range sl { + tlsFingerprintMatcherMapStrToI := set.(map[string]interface{}) - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + if v, ok := tlsFingerprintMatcherMapStrToI["classes"]; ok && !isIntfNil(v) { - eligibleForCacheInt.SchemeProxyHostRequestUri.CacheOverride = v.(bool) + classesList := []ves_io_schema_policy.KnownTlsFingerprintClass{} + for _, j := range v.([]interface{}) { + classesList = append(classesList, ves_io_schema_policy.KnownTlsFingerprintClass(ves_io_schema_policy.KnownTlsFingerprintClass_value[j.(string)])) + } + tlsFingerprintMatcher.Classes = classesList - } + } - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + if w, ok := tlsFingerprintMatcherMapStrToI["exact_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExactValues = ls + } - eligibleForCacheInt.SchemeProxyHostRequestUri.CacheTtl = v.(string) + if w, ok := tlsFingerprintMatcherMapStrToI["excluded_values"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + tlsFingerprintMatcher.ExcludedValues = ls + } - } + } - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeProxyHostRequestUri.IgnoreResponseCookie = v.(bool) + } } - } - - } + domainChoiceTypeFound := false - if v, ok := cs["scheme_proxy_host_uri"]; ok && !isIntfNil(v) && !eligibleForCacheTypeFound { + if v, ok := serverUrlRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - eligibleForCacheTypeFound = true - eligibleForCacheInt := &ves_io_schema_views_cdn_loadbalancer.CacheEligibleOptions_SchemeProxyHostUri{} - eligibleForCacheInt.SchemeProxyHostUri = &ves_io_schema_views_cdn_loadbalancer.CacheTTLEnableProps{} - cacheActionsInt.EligibleForCache.EligibleForCache = eligibleForCacheInt + domainChoiceTypeFound = true - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v.(bool) { + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + serverUrlRules[i].DomainChoice = domainChoiceInt + } - if v, ok := cs["cache_override"]; ok && !isIntfNil(v) { + } - eligibleForCacheInt.SchemeProxyHostUri.CacheOverride = v.(bool) + if v, ok := serverUrlRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - } + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_SpecificDomain{} - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + serverUrlRules[i].DomainChoice = domainChoiceInt - eligibleForCacheInt.SchemeProxyHostUri.CacheTtl = v.(string) + domainChoiceInt.SpecificDomain = v.(string) } - if v, ok := cs["ignore_response_cookie"]; ok && !isIntfNil(v) { + rateLimiterChoiceTypeFound := false - eligibleForCacheInt.SchemeProxyHostUri.IgnoreResponseCookie = v.(bool) + if v, ok := serverUrlRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { - } + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} + serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + countByChoiceTypeFound := false - } + if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { - } + countByChoiceTypeFound = true + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} + countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt - if v, ok := cacheRulesMapStrToI["rule_expression_list"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.([]interface{}) - ruleExpressionList := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList, len(sl)) - cacheRules[i].RuleExpressionList = ruleExpressionList - for i, set := range sl { - ruleExpressionList[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpressionList{} - ruleExpressionListMapStrToI := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { - if v, ok := ruleExpressionListMapStrToI["cache_rule_expression"]; ok && !isIntfNil(v) { + countByChoiceInt.RefUserId.Name = v.(string) - sl := v.([]interface{}) - cacheRuleExpression := make([]*ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression, len(sl)) - ruleExpressionList[i].CacheRuleExpression = cacheRuleExpression - for i, set := range sl { - cacheRuleExpression[i] = &ves_io_schema_views_cdn_loadbalancer.CDNCacheRuleExpression{} - cacheRuleExpressionMapStrToI := set.(map[string]interface{}) + } - if v, ok := cacheRuleExpressionMapStrToI["cache_headers"]; ok && !isIntfNil(v) { + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - sl := v.([]interface{}) - cacheHeaders := make([]*ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType, len(sl)) - cacheRuleExpression[i].CacheHeaders = cacheHeaders - for i, set := range sl { - cacheHeaders[i] = &ves_io_schema_views_cdn_loadbalancer.CacheHeaderMatcherType{} - cacheHeadersMapStrToI := set.(map[string]interface{}) + countByChoiceInt.RefUserId.Namespace = v.(string) - if v, ok := cacheHeadersMapStrToI["name"]; ok && !isIntfNil(v) { + } - cacheHeaders[i].Name = ves_io_schema_views_cdn_loadbalancer.HeaderOptions(ves_io_schema_views_cdn_loadbalancer.HeaderOptions_value[v.(string)]) + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - } + countByChoiceInt.RefUserId.Tenant = v.(string) - if v, ok := cacheHeadersMapStrToI["operator"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - cacheHeaders[i].Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + } - cacheOperatorTypeFound := false + } - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["use_http_lb_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + countByChoiceTypeFound = true - operator.CacheOperator = cacheOperatorInt + if v.(bool) { + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} + rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt + } - cacheOperatorInt.Contains = v.(string) + } - } + if v, ok := cs["threshold"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + rateLimiterChoiceInt.InlineRateLimiter.Threshold = uint32(v.(int)) - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["unit"]; ok && !isIntfNil(v) { - cacheOperatorInt.DoesNotContain = v.(string) + rateLimiterChoiceInt.InlineRateLimiter.Unit = ves_io_schema_rate_limiter.RateLimitPeriodUnit(ves_io_schema_rate_limiter.RateLimitPeriodUnit_value[v.(string)]) - } + } - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := serverUrlRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { - cacheOperatorInt.DoesNotEndWith = v.(string) + rateLimiterChoiceTypeFound = true + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_RefRateLimiter{} + rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} + serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["name"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + rateLimiterChoiceInt.RefRateLimiter.Name = v.(string) - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotEqual = v.(string) + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - } + rateLimiterChoiceInt.RefRateLimiter.Namespace = v.(string) - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + rateLimiterChoiceInt.RefRateLimiter.Tenant = v.(string) - cacheOperatorInt.DoesNotStartWith = v.(string) + } - } + } - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + if v, ok := serverUrlRulesMapStrToI["request_matcher"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + sl := v.(*schema.Set).List() + requestMatcher := &ves_io_schema_policy.RequestMatcher{} + serverUrlRules[i].RequestMatcher = requestMatcher + for _, set := range sl { + requestMatcherMapStrToI := set.(map[string]interface{}) - cacheOperatorInt.Endswith = v.(string) + if v, ok := requestMatcherMapStrToI["cookie_matchers"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + cookieMatchers := make([]*ves_io_schema_policy.CookieMatcherType, len(sl)) + requestMatcher.CookieMatchers = cookieMatchers + for i, set := range sl { + cookieMatchers[i] = &ves_io_schema_policy.CookieMatcherType{} + cookieMatchersMapStrToI := set.(map[string]interface{}) + + if w, ok := cookieMatchersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + cookieMatchers[i].InvertMatcher = w.(bool) } - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + matchTypeFound := false - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + if v, ok := cookieMatchersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true - cacheOperatorInt.Equals = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } } - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { - - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + if v, ok := cookieMatchersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true - cacheOperatorInt.MatchRegex = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.CookieMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + cookieMatchers[i].Match = matchInt + } } - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cookieMatchersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + cookieMatchers[i].Match = matchInt - operator.CacheOperator = cacheOperatorInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorInt.Startswith = v.(string) + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - } + } - } + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - } + } - if v, ok := cacheRuleExpressionMapStrToI["cookie_matcher"]; ok && !isIntfNil(v) { + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - sl := v.([]interface{}) - cookieMatcher := make([]*ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType, len(sl)) - cacheRuleExpression[i].CookieMatcher = cookieMatcher - for i, set := range sl { - cookieMatcher[i] = &ves_io_schema_views_cdn_loadbalancer.CacheCookieMatcherType{} - cookieMatcherMapStrToI := set.(map[string]interface{}) + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - if w, ok := cookieMatcherMapStrToI["name"]; ok && !isIntfNil(w) { - cookieMatcher[i].Name = w.(string) - } + } - if v, ok := cookieMatcherMapStrToI["operator"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - cookieMatcher[i].Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + } - cacheOperatorTypeFound := false + if v, ok := cookieMatchersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + matchTypeFound = true + matchInt := &ves_io_schema_policy.CookieMatcherType_Presence{} - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + cookieMatchers[i].Match = matchInt - operator.CacheOperator = cacheOperatorInt + matchInt.Presence = v.(bool) - cacheOperatorInt.Contains = v.(string) + } + if w, ok := cookieMatchersMapStrToI["name"]; ok && !isIntfNil(w) { + cookieMatchers[i].Name = w.(string) } - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := requestMatcherMapStrToI["headers"]; ok && !isIntfNil(v) { - cacheOperatorInt.DoesNotContain = v.(string) + sl := v.([]interface{}) + headers := make([]*ves_io_schema_policy.HeaderMatcherType, len(sl)) + requestMatcher.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema_policy.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) + if w, ok := headersMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + headers[i].InvertMatcher = w.(bool) } - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + matchTypeFound := false - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + if v, ok := headersMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true - cacheOperatorInt.DoesNotEndWith = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } } - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := headersMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} - - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true - cacheOperatorInt.DoesNotEqual = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.HeaderMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + headers[i].Match = matchInt + } } - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := headersMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + headers[i].Match = matchInt - operator.CacheOperator = cacheOperatorInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheOperatorInt.DoesNotStartWith = v.(string) + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - } + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - cacheOperatorInt.Endswith = v.(string) + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } } - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + matchTypeFound = true + matchInt := &ves_io_schema_policy.HeaderMatcherType_Presence{} - operator.CacheOperator = cacheOperatorInt + headers[i].Match = matchInt - cacheOperatorInt.Equals = v.(string) + matchInt.Presence = v.(bool) } - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.MatchRegex = v.(string) + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) } - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + matchTypeFound := false - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true - cacheOperatorInt.Startswith = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } } - } + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - } + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } - } + } - if v, ok := cacheRuleExpressionMapStrToI["path_match"]; ok && !isIntfNil(v) { + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - sl := v.(*schema.Set).List() - pathMatch := &ves_io_schema_views_cdn_loadbalancer.CDNPathMatcherType{} - cacheRuleExpression[i].PathMatch = pathMatch - for _, set := range sl { - pathMatchMapStrToI := set.(map[string]interface{}) + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt - if v, ok := pathMatchMapStrToI["operator"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - pathMatch.Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound := false + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - operator.CacheOperator = cacheOperatorInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - cacheOperatorInt.Contains = v.(string) + } - } + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotContain = v.(string) + } + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) } - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { - cacheOperatorInt.DoesNotEndWith = v.(string) + sl := v.([]interface{}) + queryParams := make([]*ves_io_schema_policy.QueryParameterMatcherType, len(sl)) + requestMatcher.QueryParams = queryParams + for i, set := range sl { + queryParams[i] = &ves_io_schema_policy.QueryParameterMatcherType{} + queryParamsMapStrToI := set.(map[string]interface{}) + if w, ok := queryParamsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + queryParams[i].InvertMatcher = w.(bool) } - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if w, ok := queryParamsMapStrToI["key"]; ok && !isIntfNil(w) { + queryParams[i].Key = w.(string) + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + matchTypeFound := false - operator.CacheOperator = cacheOperatorInt + if v, ok := queryParamsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { - cacheOperatorInt.DoesNotEqual = v.(string) + matchTypeFound = true - } + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + if v, ok := queryParamsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true - cacheOperatorInt.DoesNotStartWith = v.(string) + if v.(bool) { + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + queryParams[i].Match = matchInt + } } - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { - - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + if v, ok := queryParamsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { - operator.CacheOperator = cacheOperatorInt + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + queryParams[i].Match = matchInt - cacheOperatorInt.Endswith = v.(string) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { - cacheOperatorInt.Equals = v.(string) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls - } + } - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.MatchRegex = v.(string) + } } - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := queryParamsMapStrToI["presence"]; ok && !isIntfNil(v) && !matchTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + matchTypeFound = true + matchInt := &ves_io_schema_policy.QueryParameterMatcherType_Presence{} - operator.CacheOperator = cacheOperatorInt + queryParams[i].Match = matchInt - cacheOperatorInt.Startswith = v.(string) + matchInt.Presence = v.(bool) } @@ -6946,130 +35483,172 @@ func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interfac } - if v, ok := cacheRuleExpressionMapStrToI["query_parameters"]; ok && !isIntfNil(v) { + } - sl := v.([]interface{}) - queryParameters := make([]*ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType, len(sl)) - cacheRuleExpression[i].QueryParameters = queryParameters - for i, set := range sl { - queryParameters[i] = &ves_io_schema_views_cdn_loadbalancer.CacheQueryParameterMatcherType{} - queryParametersMapStrToI := set.(map[string]interface{}) + } - if w, ok := queryParametersMapStrToI["key"]; ok && !isIntfNil(w) { - queryParameters[i].Key = w.(string) - } + } - if v, ok := queryParametersMapStrToI["operator"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - operator := &ves_io_schema_views_cdn_loadbalancer.CacheOperator{} - queryParameters[i].Operator = operator - for _, set := range sl { - operatorMapStrToI := set.(map[string]interface{}) + if v, ok := commonSecurityControlsMapStrToI["disable_rate_limit"]; ok && !isIntfNil(v) && !rateLimitChoiceTypeFound { - cacheOperatorTypeFound := false + rateLimitChoiceTypeFound = true - if v, ok := operatorMapStrToI["Contains"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v.(bool) { + rateLimitChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_DisableRateLimit{} + rateLimitChoiceInt.DisableRateLimit = &ves_io_schema.Empty{} + commonSecurityControls.RateLimitChoice = rateLimitChoiceInt + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Contains{} + } - operator.CacheOperator = cacheOperatorInt + if v, ok := commonSecurityControlsMapStrToI["rate_limit"]; ok && !isIntfNil(v) && !rateLimitChoiceTypeFound { - cacheOperatorInt.Contains = v.(string) + rateLimitChoiceTypeFound = true + rateLimitChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_RateLimit{} + rateLimitChoiceInt.RateLimit = &ves_io_schema_views_common_waf.RateLimitConfigType{} + commonSecurityControls.RateLimitChoice = rateLimitChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := operatorMapStrToI["DoesNotContain"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + ipAllowedListChoiceTypeFound := false - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotContain{} + if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - operator.CacheOperator = cacheOperatorInt + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} + rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt - cacheOperatorInt.DoesNotContain = v.(string) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["rate_limiter_allowed_prefixes"]; ok && !isIntfNil(v) { - if v, ok := operatorMapStrToI["DoesNotEndWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + sl := v.([]interface{}) + rateLimiterAllowedPrefixesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + ipAllowedListChoiceInt.CustomIpAllowedList.RateLimiterAllowedPrefixes = rateLimiterAllowedPrefixesInt + for i, ps := range sl { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEndWith{} + rlapMapToStrVal := ps.(map[string]interface{}) + rateLimiterAllowedPrefixesInt[i] = &ves_io_schema_views.ObjectRefType{} - operator.CacheOperator = cacheOperatorInt + if v, ok := rlapMapToStrVal["name"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Name = v.(string) + } - cacheOperatorInt.DoesNotEndWith = v.(string) + if v, ok := rlapMapToStrVal["namespace"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Namespace = v.(string) + } - } + if v, ok := rlapMapToStrVal["tenant"]; ok && !isIntfNil(v) { + rateLimiterAllowedPrefixesInt[i].Tenant = v.(string) + } - if v, ok := operatorMapStrToI["DoesNotEqual"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + } - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotEqual{} + } - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.DoesNotEqual = v.(string) + } - } + if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - if v, ok := operatorMapStrToI["DoesNotStartWith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + ipAllowedListChoiceTypeFound = true + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_IpAllowedList{} + ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} + rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_DoesNotStartWith{} + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["ipv6_prefixes"]; ok && !isIntfNil(v) { - cacheOperatorInt.DoesNotStartWith = v.(string) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Ipv6Prefixes = ls - } + } - if v, ok := operatorMapStrToI["Endswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["prefixes"]; ok && !isIntfNil(v) { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Endswith{} + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipAllowedListChoiceInt.IpAllowedList.Prefixes = ls - operator.CacheOperator = cacheOperatorInt + } - cacheOperatorInt.Endswith = v.(string) + } - } + } - if v, ok := operatorMapStrToI["Equals"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["no_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Equals{} + ipAllowedListChoiceTypeFound = true - operator.CacheOperator = cacheOperatorInt + if v.(bool) { + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{} + ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} + rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt + } - cacheOperatorInt.Equals = v.(string) + } - } + policyChoiceTypeFound := false - if v, ok := operatorMapStrToI["MatchRegex"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + if v, ok := cs["no_policies"]; ok && !isIntfNil(v) && !policyChoiceTypeFound { - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_MatchRegex{} + policyChoiceTypeFound = true - operator.CacheOperator = cacheOperatorInt + if v.(bool) { + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{} + policyChoiceInt.NoPolicies = &ves_io_schema.Empty{} + rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt + } - cacheOperatorInt.MatchRegex = v.(string) + } - } + if v, ok := cs["policies"]; ok && !isIntfNil(v) && !policyChoiceTypeFound { - if v, ok := operatorMapStrToI["Startswith"]; ok && !isIntfNil(v) && !cacheOperatorTypeFound { + policyChoiceTypeFound = true + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_Policies{} + policyChoiceInt.Policies = &ves_io_schema_views_rate_limiter_policy.PolicyList{} + rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt - cacheOperatorTypeFound = true - cacheOperatorInt := &ves_io_schema_views_cdn_loadbalancer.CacheOperator_Startswith{} + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - operator.CacheOperator = cacheOperatorInt + if v, ok := cs["policies"]; ok && !isIntfNil(v) { - cacheOperatorInt.Startswith = v.(string) + sl := v.([]interface{}) + policiesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + policyChoiceInt.Policies.Policies = policiesInt + for i, ps := range sl { - } + pMapToStrVal := ps.(map[string]interface{}) + policiesInt[i] = &ves_io_schema_views.ObjectRefType{} - } + if v, ok := pMapToStrVal["name"]; ok && !isIntfNil(v) { + policiesInt[i].Name = v.(string) + } + + if v, ok := pMapToStrVal["namespace"]; ok && !isIntfNil(v) { + policiesInt[i].Namespace = v.(string) + } + if v, ok := pMapToStrVal["tenant"]; ok && !isIntfNil(v) { + policiesInt[i].Tenant = v.(string) } } @@ -7080,80 +35659,72 @@ func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interfac } - if w, ok := ruleExpressionListMapStrToI["expression_name"]; ok && !isIntfNil(w) { - ruleExpressionList[i].ExpressionName = w.(string) - } - - } - - } + if v, ok := cs["rate_limiter"]; ok && !isIntfNil(v) { - if w, ok := cacheRulesMapStrToI["rule_name"]; ok && !isIntfNil(w) { - cacheRules[i].RuleName = w.(string) - } + sl := v.(*schema.Set).List() + rateLimiter := &ves_io_schema_rate_limiter.RateLimitValue{} + rateLimitChoiceInt.RateLimit.RateLimiter = rateLimiter + for _, set := range sl { + rateLimiterMapStrToI := set.(map[string]interface{}) - } + if w, ok := rateLimiterMapStrToI["burst_multiplier"]; ok && !isIntfNil(w) { + rateLimiter.BurstMultiplier = uint32(w.(int)) + } - } + if w, ok := rateLimiterMapStrToI["total_number"]; ok && !isIntfNil(w) { + rateLimiter.TotalNumber = uint32(w.(int)) + } - if v, ok := cacheOptionsMapStrToI["default_cache_action"]; ok && !isIntfNil(v) { + if v, ok := rateLimiterMapStrToI["unit"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - defaultCacheAction := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction{} - cacheOptions.DefaultCacheAction = defaultCacheAction - for _, set := range sl { - defaultCacheActionMapStrToI := set.(map[string]interface{}) + rateLimiter.Unit = ves_io_schema_rate_limiter.RateLimitPeriodUnit(ves_io_schema_rate_limiter.RateLimitPeriodUnit_value[v.(string)]) - cacheActionsTypeFound := false + } - if v, ok := defaultCacheActionMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + } - cacheActionsTypeFound = true + } - if v.(bool) { - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheDisabled{} - cacheActionsInt.CacheDisabled = &ves_io_schema.Empty{} - defaultCacheAction.CacheActions = cacheActionsInt } } - if v, ok := defaultCacheActionMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { - - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlDefault{} - - defaultCacheAction.CacheActions = cacheActionsInt - - cacheActionsInt.CacheTtlDefault = v.(string) - - } + servicePolicyChoiceTypeFound := false - if v, ok := defaultCacheActionMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + if v, ok := commonSecurityControlsMapStrToI["active_service_policies"]; ok && !isIntfNil(v) && !servicePolicyChoiceTypeFound { - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_CacheTtlOverride{} + servicePolicyChoiceTypeFound = true + servicePolicyChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ActiveServicePolicies{} + servicePolicyChoiceInt.ActiveServicePolicies = &ves_io_schema_views_common_waf.ServicePolicyList{} + commonSecurityControls.ServicePolicyChoice = servicePolicyChoiceInt - defaultCacheAction.CacheActions = cacheActionsInt + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - cacheActionsInt.CacheTtlOverride = v.(string) + if v, ok := cs["policies"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + policiesInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + servicePolicyChoiceInt.ActiveServicePolicies.Policies = policiesInt + for i, ps := range sl { - if v, ok := defaultCacheActionMapStrToI["eligible_for_cache"]; ok && !isIntfNil(v) && !cacheActionsTypeFound { + pMapToStrVal := ps.(map[string]interface{}) + policiesInt[i] = &ves_io_schema_views.ObjectRefType{} - cacheActionsTypeFound = true - cacheActionsInt := &ves_io_schema_views_cdn_loadbalancer.DefaultCacheAction_EligibleForCache{} - cacheActionsInt.EligibleForCache = &ves_io_schema_views_cdn_loadbalancer.DefaultCacheTTLProps{} - defaultCacheAction.CacheActions = cacheActionsInt + if v, ok := pMapToStrVal["name"]; ok && !isIntfNil(v) { + policiesInt[i].Name = v.(string) + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := pMapToStrVal["namespace"]; ok && !isIntfNil(v) { + policiesInt[i].Namespace = v.(string) + } - if v, ok := cs["cache_ttl"]; ok && !isIntfNil(v) { + if v, ok := pMapToStrVal["tenant"]; ok && !isIntfNil(v) { + policiesInt[i].Tenant = v.(string) + } - cacheActionsInt.EligibleForCache.CacheTtl = v.(string) + } } @@ -7161,158 +35732,164 @@ func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interfac } - } + if v, ok := commonSecurityControlsMapStrToI["no_service_policies"]; ok && !isIntfNil(v) && !servicePolicyChoiceTypeFound { - } + servicePolicyChoiceTypeFound = true - } + if v.(bool) { + servicePolicyChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_NoServicePolicies{} + servicePolicyChoiceInt.NoServicePolicies = &ves_io_schema.Empty{} + commonSecurityControls.ServicePolicyChoice = servicePolicyChoiceInt + } - } + } - if v, ok := moreOptionMapStrToI["cache_ttl_options"]; ok && !isIntfNil(v) { + if v, ok := commonSecurityControlsMapStrToI["service_policies_from_namespace"]; ok && !isIntfNil(v) && !servicePolicyChoiceTypeFound { - sl := v.(*schema.Set).List() - cacheTtlOptions := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType{} - moreOption.CacheTtlOptions = cacheTtlOptions - for _, set := range sl { - cacheTtlOptionsMapStrToI := set.(map[string]interface{}) + servicePolicyChoiceTypeFound = true - ttlOptionsTypeFound := false + if v.(bool) { + servicePolicyChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_ServicePoliciesFromNamespace{} + servicePolicyChoiceInt.ServicePoliciesFromNamespace = &ves_io_schema.Empty{} + commonSecurityControls.ServicePolicyChoice = servicePolicyChoiceInt + } - if v, ok := cacheTtlOptionsMapStrToI["cache_disabled"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + } - ttlOptionsTypeFound = true + if v, ok := commonSecurityControlsMapStrToI["trusted_clients"]; ok && !isIntfNil(v) { - if v.(bool) { - ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheDisabled{} - ttlOptionsInt.CacheDisabled = &ves_io_schema.Empty{} - cacheTtlOptions.TtlOptions = ttlOptionsInt - } + sl := v.([]interface{}) + trustedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) + commonSecurityControls.TrustedClients = trustedClients + for i, set := range sl { + trustedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} + trustedClientsMapStrToI := set.(map[string]interface{}) - } + actionChoiceTypeFound := false - if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_default"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + if v, ok := trustedClientsMapStrToI["bot_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - ttlOptionsTypeFound = true - ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlDefault{} + actionChoiceTypeFound = true - cacheTtlOptions.TtlOptions = ttlOptionsInt + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} + trustedClients[i].ActionChoice = actionChoiceInt + } - ttlOptionsInt.CacheTtlDefault = v.(string) + } - } + if v, ok := trustedClientsMapStrToI["skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - if v, ok := cacheTtlOptionsMapStrToI["cache_ttl_override"]; ok && !isIntfNil(v) && !ttlOptionsTypeFound { + actionChoiceTypeFound = true - ttlOptionsTypeFound = true - ttlOptionsInt := &ves_io_schema_views_cdn_loadbalancer.CacheTTLOptionsType_CacheTtlOverride{} + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} + trustedClients[i].ActionChoice = actionChoiceInt + } - cacheTtlOptions.TtlOptions = ttlOptionsInt + } - ttlOptionsInt.CacheTtlOverride = v.(string) + if v, ok := trustedClientsMapStrToI["waf_skip_processing"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - } + actionChoiceTypeFound = true - } + if v.(bool) { + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} + trustedClients[i].ActionChoice = actionChoiceInt + } - } + } - if v, ok := moreOptionMapStrToI["header_options"]; ok && !isIntfNil(v) { + if v, ok := trustedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - headerOptions := &ves_io_schema_views_cdn_loadbalancer.HeaderControlType{} - moreOption.HeaderOptions = headerOptions - for _, set := range sl { - headerOptionsMapStrToI := set.(map[string]interface{}) + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} + for _, j := range v.([]interface{}) { + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) + } + trustedClients[i].Actions = actionsList - if v, ok := headerOptionsMapStrToI["request_headers_to_add"]; ok && !isIntfNil(v) { + } - sl := v.([]interface{}) - requestHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) - headerOptions.RequestHeadersToAdd = requestHeadersToAdd - for i, set := range sl { - requestHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} - requestHeadersToAddMapStrToI := set.(map[string]interface{}) + clientSourceChoiceTypeFound := false - if w, ok := requestHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { - requestHeadersToAdd[i].Append = w.(bool) - } + if v, ok := trustedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - if w, ok := requestHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { - requestHeadersToAdd[i].Name = w.(string) - } + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} - valueChoiceTypeFound := false + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt - if v, ok := requestHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + clientSourceChoiceInt.AsNumber = uint32(v.(int)) - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} - valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} - requestHeadersToAdd[i].ValueChoice = valueChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := trustedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + cs := set.(map[string]interface{}) - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + if v, ok := cs["headers"]; ok && !isIntfNil(v) { - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + sl := v.([]interface{}) + headers := make([]*ves_io_schema.HeaderMatcherType, len(sl)) + clientSourceChoiceInt.HttpHeader.Headers = headers + for i, set := range sl { + headers[i] = &ves_io_schema.HeaderMatcherType{} + headersMapStrToI := set.(map[string]interface{}) - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + if w, ok := headersMapStrToI["invert_match"]; ok && !isIntfNil(w) { + headers[i].InvertMatch = w.(bool) + } - } + if w, ok := headersMapStrToI["name"]; ok && !isIntfNil(w) { + headers[i].Name = w.(string) + } - } + valueMatchTypeFound := false - if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + if v, ok := headersMapStrToI["exact"]; ok && !isIntfNil(v) && !valueMatchTypeFound { - valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Exact{} - } + headers[i].ValueMatch = valueMatchInt - secretInfoOneofTypeFound := false + valueMatchInt.Exact = v.(string) - if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + if v, ok := headersMapStrToI["presence"]; ok && !isIntfNil(v) && !valueMatchTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Presence{} - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + headers[i].ValueMatch = valueMatchInt - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + valueMatchInt.Presence = v.(bool) - } + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := headersMapStrToI["regex"]; ok && !isIntfNil(v) && !valueMatchTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + valueMatchTypeFound = true + valueMatchInt := &ves_io_schema.HeaderMatcherType_Regex{} - } + headers[i].ValueMatch = valueMatchInt - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + valueMatchInt.Regex = v.(string) - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + } + + } } @@ -7320,96 +35897,104 @@ func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interfac } - if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { - - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + if v, ok := trustedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + clientSourceChoiceInt.IpPrefix = v.(string) - } + } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if v, ok := trustedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + clientSourceChoiceTypeFound = true + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} - } + trustedClients[i].ClientSourceChoice = clientSourceChoiceInt - } + clientSourceChoiceInt.UserIdentifier = v.(string) } - if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if w, ok := trustedClientsMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + trustedClients[i].ExpirationTimestamp = ts + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + if v, ok := trustedClientsMapStrToI["metadata"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + trustedClients[i].Metadata = metadata for _, set := range sl { - cs := set.(map[string]interface{}) - - if v, ok := cs["key"]; ok && !isIntfNil(v) { + metadataMapStrToI := set.(map[string]interface{}) - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + } - } + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + } - } + userIdChoiceTypeFound := false - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + if v, ok := commonSecurityControlsMapStrToI["user_id_client_ip"]; ok && !isIntfNil(v) && !userIdChoiceTypeFound { - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + userIdChoiceTypeFound = true - } + if v.(bool) { + userIdChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdClientIp{} + userIdChoiceInt.UserIdClientIp = &ves_io_schema.Empty{} + commonSecurityControls.UserIdChoice = userIdChoiceInt + } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + if v, ok := commonSecurityControlsMapStrToI["user_identification"]; ok && !isIntfNil(v) && !userIdChoiceTypeFound { - } + userIdChoiceTypeFound = true + userIdChoiceInt := &ves_io_schema_views_cdn_loadbalancer.CommonSecurityControls_UserIdentification{} + userIdChoiceInt.UserIdentification = &ves_io_schema_views.ObjectRefType{} + commonSecurityControls.UserIdChoice = userIdChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["name"]; ok && !isIntfNil(v) { - if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + userIdChoiceInt.UserIdentification.Name = v.(string) - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - if v, ok := cs["name"]; ok && !isIntfNil(v) { + userIdChoiceInt.UserIdentification.Namespace = v.(string) - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + } - } + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - } + userIdChoiceInt.UserIdentification.Tenant = v.(string) } @@ -7417,332 +36002,372 @@ func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interfac } - if v, ok := requestHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + } - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + } - requestHeadersToAdd[i].ValueChoice = valueChoiceInt + if v, ok := securityOptionsMapStrToI["geo_filtering"]; ok && !isIntfNil(v) { - valueChoiceInt.Value = v.(string) + sl := v.(*schema.Set).List() + geoFiltering := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions{} + securityOptions.GeoFiltering = geoFiltering + for _, set := range sl { + geoFilteringMapStrToI := set.(map[string]interface{}) + + geoFilteringTypeTypeFound := false + + if v, ok := geoFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + + geoFilteringTypeTypeFound = true + geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_AllowList{} + geoFilteringTypeInt.AllowList = &ves_io_schema_policy.CountryCodeList{} + geoFiltering.GeoFilteringType = geoFilteringTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + + country_codesList := []ves_io_schema_policy.CountryCode{} + for _, j := range v.([]interface{}) { + country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) + } + geoFilteringTypeInt.AllowList.CountryCodes = country_codesList + + } + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + geoFilteringTypeInt.AllowList.InvertMatch = v.(bool) + + } + + } } - } + if v, ok := geoFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { - } + geoFilteringTypeTypeFound = true + geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_BlockList{} + geoFilteringTypeInt.BlockList = &ves_io_schema_policy.CountryCodeList{} + geoFiltering.GeoFilteringType = geoFilteringTypeInt - if w, ok := headerOptionsMapStrToI["request_headers_to_remove"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - headerOptions.RequestHeadersToRemove = ls - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := headerOptionsMapStrToI["response_headers_to_add"]; ok && !isIntfNil(v) { + if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { - sl := v.([]interface{}) - responseHeadersToAdd := make([]*ves_io_schema.HeaderManipulationOptionType, len(sl)) - headerOptions.ResponseHeadersToAdd = responseHeadersToAdd - for i, set := range sl { - responseHeadersToAdd[i] = &ves_io_schema.HeaderManipulationOptionType{} - responseHeadersToAddMapStrToI := set.(map[string]interface{}) + country_codesList := []ves_io_schema_policy.CountryCode{} + for _, j := range v.([]interface{}) { + country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) + } + geoFilteringTypeInt.BlockList.CountryCodes = country_codesList + + } - if w, ok := responseHeadersToAddMapStrToI["append"]; ok && !isIntfNil(w) { - responseHeadersToAdd[i].Append = w.(bool) - } + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - if w, ok := responseHeadersToAddMapStrToI["name"]; ok && !isIntfNil(w) { - responseHeadersToAdd[i].Name = w.(string) - } + geoFilteringTypeInt.BlockList.InvertMatch = v.(bool) - valueChoiceTypeFound := false + } - if v, ok := responseHeadersToAddMapStrToI["secret_value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + } - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_SecretValue{} - valueChoiceInt.SecretValue = &ves_io_schema.SecretType{} - responseHeadersToAdd[i].ValueChoice = valueChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + if v, ok := securityOptionsMapStrToI["ip_filtering"]; ok && !isIntfNil(v) { - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + sl := v.(*schema.Set).List() + ipFiltering := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions{} + securityOptions.IpFiltering = ipFiltering + for _, set := range sl { + ipFilteringMapStrToI := set.(map[string]interface{}) - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + ipFilteringTypeTypeFound := false - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + if v, ok := ipFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { - } + ipFilteringTypeTypeFound = true + ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_AllowList{} + ipFilteringTypeInt.AllowList = &ves_io_schema_policy.PrefixMatchList{} + ipFiltering.IpFilteringType = ipFilteringTypeInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - if v, ok := cs["secret_encoding_type"]; ok && !isIntfNil(v) { + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - valueChoiceInt.SecretValue.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + ipFilteringTypeInt.AllowList.InvertMatch = v.(bool) } - secretInfoOneofTypeFound := false - - if v, ok := cs["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + ipFilteringTypeInt.AllowList.IpPrefixes = ls - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + } - } + if v, ok := ipFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { - if v, ok := cs["location"]; ok && !isIntfNil(v) { + ipFilteringTypeTypeFound = true + ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_BlockList{} + ipFilteringTypeInt.BlockList = &ves_io_schema_policy.PrefixMatchList{} + ipFiltering.IpFilteringType = ipFilteringTypeInt - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + ipFilteringTypeInt.BlockList.InvertMatch = v.(bool) - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + } - } + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) } + ipFilteringTypeInt.BlockList.IpPrefixes = ls } - if v, ok := cs["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + if v, ok := securityOptionsMapStrToI["web_app_firewall"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + webAppFirewall := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall{} + securityOptions.WebAppFirewall = webAppFirewall + for _, set := range sl { + webAppFirewallMapStrToI := set.(map[string]interface{}) - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if v, ok := webAppFirewallMapStrToI["csrf_policy"]; ok && !isIntfNil(v) { - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + sl := v.(*schema.Set).List() + csrfPolicy := &ves_io_schema.CsrfPolicy{} + webAppFirewall.CsrfPolicy = csrfPolicy + for _, set := range sl { + csrfPolicyMapStrToI := set.(map[string]interface{}) - } + allowedDomainsTypeFound := false + if v, ok := csrfPolicyMapStrToI["all_load_balancer_domains"]; ok && !isIntfNil(v) && !allowedDomainsTypeFound { + + allowedDomainsTypeFound = true + + if v.(bool) { + allowedDomainsInt := &ves_io_schema.CsrfPolicy_AllLoadBalancerDomains{} + allowedDomainsInt.AllLoadBalancerDomains = &ves_io_schema.Empty{} + csrfPolicy.AllowedDomains = allowedDomainsInt } } - if v, ok := cs["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v, ok := csrfPolicyMapStrToI["custom_domain_list"]; ok && !isIntfNil(v) && !allowedDomainsTypeFound { - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + allowedDomainsTypeFound = true + allowedDomainsInt := &ves_io_schema.CsrfPolicy_CustomDomainList{} + allowedDomainsInt.CustomDomainList = &ves_io_schema.DomainNameList{} + csrfPolicy.AllowedDomains = allowedDomainsInt sl := v.(*schema.Set).List() for _, set := range sl { cs := set.(map[string]interface{}) - if v, ok := cs["key"]; ok && !isIntfNil(v) { + if v, ok := cs["domains"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + allowedDomainsInt.CustomDomainList.Domains = ls } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + } - } + if v, ok := csrfPolicyMapStrToI["disabled"]; ok && !isIntfNil(v) && !allowedDomainsTypeFound { - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + allowedDomainsTypeFound = true - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + if v.(bool) { + allowedDomainsInt := &ves_io_schema.CsrfPolicy_Disabled{} + allowedDomainsInt.Disabled = &ves_io_schema.Empty{} + csrfPolicy.AllowedDomains = allowedDomainsInt + } - } + } - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + } - } + if v, ok := webAppFirewallMapStrToI["data_guard_rules"]; ok && !isIntfNil(v) { - if v, ok := cs["version"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + dataGuardRules := make([]*ves_io_schema_policy.SimpleDataGuardRule, len(sl)) + webAppFirewall.DataGuardRules = dataGuardRules + for i, set := range sl { + dataGuardRules[i] = &ves_io_schema_policy.SimpleDataGuardRule{} + dataGuardRulesMapStrToI := set.(map[string]interface{}) - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + actionChoiceTypeFound := false - } + if v, ok := dataGuardRulesMapStrToI["apply_data_guard"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { + actionChoiceTypeFound = true + + if v.(bool) { + actionChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_ApplyDataGuard{} + actionChoiceInt.ApplyDataGuard = &ves_io_schema.Empty{} + dataGuardRules[i].ActionChoice = actionChoiceInt } } - if v, ok := cs["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v, ok := dataGuardRulesMapStrToI["skip_data_guard"]; ok && !isIntfNil(v) && !actionChoiceTypeFound { - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - valueChoiceInt.SecretValue.SecretInfoOneof = secretInfoOneofInt + actionChoiceTypeFound = true - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v.(bool) { + actionChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_SkipDataGuard{} + actionChoiceInt.SkipDataGuard = &ves_io_schema.Empty{} + dataGuardRules[i].ActionChoice = actionChoiceInt + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + domainChoiceTypeFound := false - } + if v, ok := dataGuardRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { + domainChoiceTypeFound = true + + if v.(bool) { + domainChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + dataGuardRules[i].DomainChoice = domainChoiceInt } } - } + if v, ok := dataGuardRulesMapStrToI["exact_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - } + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_ExactValue{} - if v, ok := responseHeadersToAddMapStrToI["value"]; ok && !isIntfNil(v) && !valueChoiceTypeFound { + dataGuardRules[i].DomainChoice = domainChoiceInt - valueChoiceTypeFound = true - valueChoiceInt := &ves_io_schema.HeaderManipulationOptionType_Value{} + domainChoiceInt.ExactValue = v.(string) - responseHeadersToAdd[i].ValueChoice = valueChoiceInt + } - valueChoiceInt.Value = v.(string) + if v, ok := dataGuardRulesMapStrToI["suffix_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - } + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleDataGuardRule_SuffixValue{} - } + dataGuardRules[i].DomainChoice = domainChoiceInt - } + domainChoiceInt.SuffixValue = v.(string) - if w, ok := headerOptionsMapStrToI["response_headers_to_remove"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - headerOptions.ResponseHeadersToRemove = ls - } + } - } + if v, ok := dataGuardRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + dataGuardRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) - if v, ok := moreOptionMapStrToI["logging_options"]; ok && !isIntfNil(v) { + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } - sl := v.(*schema.Set).List() - loggingOptions := &ves_io_schema_views_cdn_loadbalancer.LoggingOptionsType{} - moreOption.LoggingOptions = loggingOptions - for _, set := range sl { - loggingOptionsMapStrToI := set.(map[string]interface{}) + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } - if v, ok := loggingOptionsMapStrToI["client_log_options"]; ok && !isIntfNil(v) { + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } - sl := v.(*schema.Set).List() - clientLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} - loggingOptions.ClientLogOptions = clientLogOptions - for _, set := range sl { - clientLogOptionsMapStrToI := set.(map[string]interface{}) + } - if w, ok := clientLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - clientLogOptions.HeaderList = ls - } + } - } + if v, ok := dataGuardRulesMapStrToI["path"]; ok && !isIntfNil(v) { - } + sl := v.(*schema.Set).List() + path := &ves_io_schema.PathMatcherType{} + dataGuardRules[i].Path = path + for _, set := range sl { + pathMapStrToI := set.(map[string]interface{}) - if v, ok := loggingOptionsMapStrToI["origin_log_options"]; ok && !isIntfNil(v) { + pathMatchTypeFound := false - sl := v.(*schema.Set).List() - originLogOptions := &ves_io_schema_views_cdn_loadbalancer.LogHeaderOptions{} - loggingOptions.OriginLogOptions = originLogOptions - for _, set := range sl { - originLogOptionsMapStrToI := set.(map[string]interface{}) + if v, ok := pathMapStrToI["path"]; ok && !isIntfNil(v) && !pathMatchTypeFound { - if w, ok := originLogOptionsMapStrToI["header_list"]; ok && !isIntfNil(w) { - ls := make([]string, len(w.([]interface{}))) - for i, v := range w.([]interface{}) { - ls[i] = v.(string) - } - originLogOptions.HeaderList = ls - } + pathMatchTypeFound = true + pathMatchInt := &ves_io_schema.PathMatcherType_Path{} - } + path.PathMatch = pathMatchInt - } + pathMatchInt.Path = v.(string) - } + } - } + if v, ok := pathMapStrToI["prefix"]; ok && !isIntfNil(v) && !pathMatchTypeFound { - if v, ok := moreOptionMapStrToI["security_options"]; ok && !isIntfNil(v) { + pathMatchTypeFound = true + pathMatchInt := &ves_io_schema.PathMatcherType_Prefix{} - sl := v.(*schema.Set).List() - securityOptions := &ves_io_schema_views_cdn_loadbalancer.SecurityOptionsType{} - moreOption.SecurityOptions = securityOptions - for _, set := range sl { - securityOptionsMapStrToI := set.(map[string]interface{}) + path.PathMatch = pathMatchInt - if v, ok := securityOptionsMapStrToI["auth_options"]; ok && !isIntfNil(v) { + pathMatchInt.Prefix = v.(string) - sl := v.(*schema.Set).List() - authOptions := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions{} - securityOptions.AuthOptions = authOptions - for _, set := range sl { - authOptionsMapStrToI := set.(map[string]interface{}) + } - authOptionsTypeFound := false + if v, ok := pathMapStrToI["regex"]; ok && !isIntfNil(v) && !pathMatchTypeFound { - if v, ok := authOptionsMapStrToI["custom"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + pathMatchTypeFound = true + pathMatchInt := &ves_io_schema.PathMatcherType_Regex{} - authOptionsTypeFound = true - authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Custom{} - authOptionsInt.Custom = &ves_io_schema_views_cdn_loadbalancer.CDNCustomAuthentication{} - authOptions.AuthOptions = authOptionsInt + path.PathMatch = pathMatchInt - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + pathMatchInt.Regex = v.(string) - if v, ok := cs["custom_auth_config"]; ok && !isIntfNil(v) { + } - authOptionsInt.Custom.CustomAuthConfig = v.(string) + } } @@ -7750,595 +36375,668 @@ func resourceVolterraCdnLoadbalancerUpdate(d *schema.ResourceData, meta interfac } - if v, ok := authOptionsMapStrToI["disable_auth"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + if v, ok := webAppFirewallMapStrToI["graphql_rules"]; ok && !isIntfNil(v) { - authOptionsTypeFound = true + sl := v.([]interface{}) + graphqlRules := make([]*ves_io_schema_policy.GraphQLRule, len(sl)) + webAppFirewall.GraphqlRules = graphqlRules + for i, set := range sl { + graphqlRules[i] = &ves_io_schema_policy.GraphQLRule{} + graphqlRulesMapStrToI := set.(map[string]interface{}) - if v.(bool) { - authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_DisableAuth{} - authOptionsInt.DisableAuth = &ves_io_schema.Empty{} - authOptions.AuthOptions = authOptionsInt - } + domainChoiceTypeFound := false - } + if v, ok := graphqlRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - if v, ok := authOptionsMapStrToI["jwt"]; ok && !isIntfNil(v) && !authOptionsTypeFound { + domainChoiceTypeFound = true - authOptionsTypeFound = true - authOptionsInt := &ves_io_schema_views_cdn_loadbalancer.AuthenticationOptions_Jwt{} - authOptionsInt.Jwt = &ves_io_schema_policy.JwtTokenAuthOptions{} - authOptions.AuthOptions = authOptionsInt + if v.(bool) { + domainChoiceInt := &ves_io_schema_policy.GraphQLRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + graphqlRules[i].DomainChoice = domainChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["backup_key"]; ok && !isIntfNil(v) { + if v, ok := graphqlRulesMapStrToI["exact_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - sl := v.(*schema.Set).List() - backupKey := &ves_io_schema.SecretType{} - authOptionsInt.Jwt.BackupKey = backupKey - for _, set := range sl { - backupKeyMapStrToI := set.(map[string]interface{}) + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.GraphQLRule_ExactValue{} - if v, ok := backupKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + graphqlRules[i].DomainChoice = domainChoiceInt - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - backupKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + domainChoiceInt.ExactValue = v.(string) - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + if v, ok := graphqlRulesMapStrToI["suffix_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.GraphQLRule_SuffixValue{} - } + graphqlRules[i].DomainChoice = domainChoiceInt - } + domainChoiceInt.SuffixValue = v.(string) - if v, ok := backupKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + } - backupKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if w, ok := graphqlRulesMapStrToI["exact_path"]; ok && !isIntfNil(w) { + graphqlRules[i].ExactPath = w.(string) + } - } + if v, ok := graphqlRulesMapStrToI["graphql_settings"]; ok && !isIntfNil(v) { - secretInfoOneofTypeFound := false + sl := v.(*schema.Set).List() + graphqlSettings := &ves_io_schema_policy.GraphQLSettingsType{} + graphqlRules[i].GraphqlSettings = graphqlSettings + for _, set := range sl { + graphqlSettingsMapStrToI := set.(map[string]interface{}) - if v, ok := backupKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + allowIntrospectionQueriesChoiceTypeFound := false - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := graphqlSettingsMapStrToI["disable_introspection"]; ok && !isIntfNil(v) && !allowIntrospectionQueriesChoiceTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + allowIntrospectionQueriesChoiceTypeFound = true - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + if v.(bool) { + allowIntrospectionQueriesChoiceInt := &ves_io_schema_policy.GraphQLSettingsType_DisableIntrospection{} + allowIntrospectionQueriesChoiceInt.DisableIntrospection = &ves_io_schema.Empty{} + graphqlSettings.AllowIntrospectionQueriesChoice = allowIntrospectionQueriesChoiceInt + } - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + } - } + if v, ok := graphqlSettingsMapStrToI["enable_introspection"]; ok && !isIntfNil(v) && !allowIntrospectionQueriesChoiceTypeFound { - if v, ok := cs["location"]; ok && !isIntfNil(v) { + allowIntrospectionQueriesChoiceTypeFound = true - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + if v.(bool) { + allowIntrospectionQueriesChoiceInt := &ves_io_schema_policy.GraphQLSettingsType_EnableIntrospection{} + allowIntrospectionQueriesChoiceInt.EnableIntrospection = &ves_io_schema.Empty{} + graphqlSettings.AllowIntrospectionQueriesChoice = allowIntrospectionQueriesChoiceInt + } - } + } - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + if w, ok := graphqlSettingsMapStrToI["max_batched_queries"]; ok && !isIntfNil(w) { + graphqlSettings.MaxBatchedQueries = uint32(w.(int)) + } - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + if w, ok := graphqlSettingsMapStrToI["max_depth"]; ok && !isIntfNil(w) { + graphqlSettings.MaxDepth = uint32(w.(int)) + } - } + if w, ok := graphqlSettingsMapStrToI["max_total_length"]; ok && !isIntfNil(w) { + graphqlSettings.MaxTotalLength = uint32(w.(int)) + } - } + if w, ok := graphqlSettingsMapStrToI["max_value_length"]; ok && !isIntfNil(w) { + graphqlSettings.MaxValueLength = uint32(w.(int)) + } + if w, ok := graphqlSettingsMapStrToI["policy_name"]; ok && !isIntfNil(w) { + graphqlSettings.PolicyName = w.(string) } - if v, ok := backupKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := graphqlRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + graphqlRules[i].Metadata = metadata + for _, set := range sl { + metadataMapStrToI := set.(map[string]interface{}) - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } - } + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) + } - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + } - } + } - } + methodChoiceTypeFound := false - } + if v, ok := graphqlRulesMapStrToI["method_get"]; ok && !isIntfNil(v) && !methodChoiceTypeFound { - if v, ok := backupKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + methodChoiceTypeFound = true - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + if v.(bool) { + methodChoiceInt := &ves_io_schema_policy.GraphQLRule_MethodGet{} + methodChoiceInt.MethodGet = &ves_io_schema.Empty{} + graphqlRules[i].MethodChoice = methodChoiceInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["key"]; ok && !isIntfNil(v) { + if v, ok := graphqlRulesMapStrToI["method_post"]; ok && !isIntfNil(v) && !methodChoiceTypeFound { - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + methodChoiceTypeFound = true - } + if v.(bool) { + methodChoiceInt := &ves_io_schema_policy.GraphQLRule_MethodPost{} + methodChoiceInt.MethodPost = &ves_io_schema.Empty{} + graphqlRules[i].MethodChoice = methodChoiceInt + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + } - } + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + if v, ok := webAppFirewallMapStrToI["protected_cookies"]; ok && !isIntfNil(v) { - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + sl := v.([]interface{}) + protectedCookies := make([]*ves_io_schema.CookieManipulationOptionType, len(sl)) + webAppFirewall.ProtectedCookies = protectedCookies + for i, set := range sl { + protectedCookies[i] = &ves_io_schema.CookieManipulationOptionType{} + protectedCookiesMapStrToI := set.(map[string]interface{}) - } + cookieTamperingTypeFound := false - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + if v, ok := protectedCookiesMapStrToI["disable_tampering_protection"]; ok && !isIntfNil(v) && !cookieTamperingTypeFound { - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + cookieTamperingTypeFound = true - } + if v.(bool) { + cookieTamperingInt := &ves_io_schema.CookieManipulationOptionType_DisableTamperingProtection{} + cookieTamperingInt.DisableTamperingProtection = &ves_io_schema.Empty{} + protectedCookies[i].CookieTampering = cookieTamperingInt + } - if v, ok := cs["version"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + if v, ok := protectedCookiesMapStrToI["enable_tampering_protection"]; ok && !isIntfNil(v) && !cookieTamperingTypeFound { - } + cookieTamperingTypeFound = true - } + if v.(bool) { + cookieTamperingInt := &ves_io_schema.CookieManipulationOptionType_EnableTamperingProtection{} + cookieTamperingInt.EnableTamperingProtection = &ves_io_schema.Empty{} + protectedCookies[i].CookieTampering = cookieTamperingInt + } - } + } - if v, ok := backupKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + httponlyTypeFound := false - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - backupKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := protectedCookiesMapStrToI["add_httponly"]; ok && !isIntfNil(v) && !httponlyTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + httponlyTypeFound = true - if v, ok := cs["name"]; ok && !isIntfNil(v) { + if v.(bool) { + httponlyInt := &ves_io_schema.CookieManipulationOptionType_AddHttponly{} + httponlyInt.AddHttponly = &ves_io_schema.Empty{} + protectedCookies[i].Httponly = httponlyInt + } - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + } - } + if v, ok := protectedCookiesMapStrToI["ignore_httponly"]; ok && !isIntfNil(v) && !httponlyTypeFound { - } + httponlyTypeFound = true - } + if v.(bool) { + httponlyInt := &ves_io_schema.CookieManipulationOptionType_IgnoreHttponly{} + httponlyInt.IgnoreHttponly = &ves_io_schema.Empty{} + protectedCookies[i].Httponly = httponlyInt + } + } + + maxAgeTypeFound := false + + if v, ok := protectedCookiesMapStrToI["ignore_max_age"]; ok && !isIntfNil(v) && !maxAgeTypeFound { + + maxAgeTypeFound = true + + if v.(bool) { + maxAgeInt := &ves_io_schema.CookieManipulationOptionType_IgnoreMaxAge{} + maxAgeInt.IgnoreMaxAge = &ves_io_schema.Empty{} + protectedCookies[i].MaxAge = maxAgeInt } } - if v, ok := cs["secret_key"]; ok && !isIntfNil(v) { + if v, ok := protectedCookiesMapStrToI["max_age_value"]; ok && !isIntfNil(v) && !maxAgeTypeFound { - sl := v.(*schema.Set).List() - secretKey := &ves_io_schema.SecretType{} - authOptionsInt.Jwt.SecretKey = secretKey - for _, set := range sl { - secretKeyMapStrToI := set.(map[string]interface{}) + maxAgeTypeFound = true + maxAgeInt := &ves_io_schema.CookieManipulationOptionType_MaxAgeValue{} - if v, ok := secretKeyMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + protectedCookies[i].MaxAge = maxAgeInt - sl := v.(*schema.Set).List() - blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} - secretKey.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal - for _, set := range sl { - blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + maxAgeInt.MaxAgeValue = int32(v.(int)) - if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.DecryptionProvider = w.(string) - } + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.Location = w.(string) - } + if w, ok := protectedCookiesMapStrToI["name"]; ok && !isIntfNil(w) { + protectedCookies[i].Name = w.(string) + } - if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { - blindfoldSecretInfoInternal.StoreProvider = w.(string) - } + samesiteTypeFound := false - } + if v, ok := protectedCookiesMapStrToI["ignore_samesite"]; ok && !isIntfNil(v) && !samesiteTypeFound { - } + samesiteTypeFound = true - if v, ok := secretKeyMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_IgnoreSamesite{} + samesiteInt.IgnoreSamesite = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } - secretKey.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + } - } + if v, ok := protectedCookiesMapStrToI["samesite_lax"]; ok && !isIntfNil(v) && !samesiteTypeFound { - secretInfoOneofTypeFound := false + samesiteTypeFound = true - if v, ok := secretKeyMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_SamesiteLax{} + samesiteInt.SamesiteLax = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} - secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := protectedCookiesMapStrToI["samesite_none"]; ok && !isIntfNil(v) && !samesiteTypeFound { - if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + samesiteTypeFound = true - secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_SamesiteNone{} + samesiteInt.SamesiteNone = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } - } + } - if v, ok := cs["location"]; ok && !isIntfNil(v) { + if v, ok := protectedCookiesMapStrToI["samesite_strict"]; ok && !isIntfNil(v) && !samesiteTypeFound { - secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + samesiteTypeFound = true - } + if v.(bool) { + samesiteInt := &ves_io_schema.CookieManipulationOptionType_SamesiteStrict{} + samesiteInt.SamesiteStrict = &ves_io_schema.Empty{} + protectedCookies[i].Samesite = samesiteInt + } - if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + secureTypeFound := false - } + if v, ok := protectedCookiesMapStrToI["add_secure"]; ok && !isIntfNil(v) && !secureTypeFound { - } + secureTypeFound = true - } + if v.(bool) { + secureInt := &ves_io_schema.CookieManipulationOptionType_AddSecure{} + secureInt.AddSecure = &ves_io_schema.Empty{} + protectedCookies[i].Secure = secureInt + } - if v, ok := secretKeyMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + } - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} - secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + if v, ok := protectedCookiesMapStrToI["ignore_secure"]; ok && !isIntfNil(v) && !secureTypeFound { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + secureTypeFound = true + + if v.(bool) { + secureInt := &ves_io_schema.CookieManipulationOptionType_IgnoreSecure{} + secureInt.IgnoreSecure = &ves_io_schema.Empty{} + protectedCookies[i].Secure = secureInt + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + } - } + } - if v, ok := cs["url"]; ok && !isIntfNil(v) { + wafChoiceTypeFound := false - secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + if v, ok := webAppFirewallMapStrToI["app_firewall"]; ok && !isIntfNil(v) && !wafChoiceTypeFound { - } + wafChoiceTypeFound = true + wafChoiceInt := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_AppFirewall{} + wafChoiceInt.AppFirewall = &ves_io_schema_views.ObjectRefType{} + webAppFirewall.WafChoice = wafChoiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["name"]; ok && !isIntfNil(v) { - if v, ok := secretKeyMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + wafChoiceInt.AppFirewall.Name = v.(string) - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} - secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - if v, ok := cs["key"]; ok && !isIntfNil(v) { + wafChoiceInt.AppFirewall.Namespace = v.(string) - secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + } - } + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - if v, ok := cs["location"]; ok && !isIntfNil(v) { + wafChoiceInt.AppFirewall.Tenant = v.(string) - secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + } - } + } - if v, ok := cs["provider"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + if v, ok := webAppFirewallMapStrToI["app_firewall_on_cache_miss"]; ok && !isIntfNil(v) && !wafChoiceTypeFound { - } + wafChoiceTypeFound = true + wafChoiceInt := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_AppFirewallOnCacheMiss{} + wafChoiceInt.AppFirewallOnCacheMiss = &ves_io_schema_views.ObjectRefType{} + webAppFirewall.WafChoice = wafChoiceInt - if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + if v, ok := cs["name"]; ok && !isIntfNil(v) { - } + wafChoiceInt.AppFirewallOnCacheMiss.Name = v.(string) - if v, ok := cs["version"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { - } + wafChoiceInt.AppFirewallOnCacheMiss.Namespace = v.(string) - } + } - } + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { - if v, ok := secretKeyMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + wafChoiceInt.AppFirewallOnCacheMiss.Tenant = v.(string) - secretInfoOneofTypeFound = true - secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} - secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} - secretKey.SecretInfoOneof = secretInfoOneofInt + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["name"]; ok && !isIntfNil(v) { + } - secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + if v, ok := webAppFirewallMapStrToI["disable_waf"]; ok && !isIntfNil(v) && !wafChoiceTypeFound { - } + wafChoiceTypeFound = true - } + if v.(bool) { + wafChoiceInt := &ves_io_schema_views_cdn_loadbalancer.WebApplicationFirewall_DisableWaf{} + wafChoiceInt.DisableWaf = &ves_io_schema.Empty{} + webAppFirewall.WafChoice = wafChoiceInt + } - } + } - } + if v, ok := webAppFirewallMapStrToI["waf_exclusion_rules"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + wafExclusionRules := make([]*ves_io_schema_policy.SimpleWafExclusionRule, len(sl)) + webAppFirewall.WafExclusionRules = wafExclusionRules + for i, set := range sl { + wafExclusionRules[i] = &ves_io_schema_policy.SimpleWafExclusionRule{} + wafExclusionRulesMapStrToI := set.(map[string]interface{}) - tokenSourceTypeFound := false + domainChoiceTypeFound := false - if v, ok := cs["bearer_token"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + if v, ok := wafExclusionRulesMapStrToI["any_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - tokenSourceTypeFound = true + domainChoiceTypeFound = true if v.(bool) { - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_BearerToken{} - tokenSourceInt.BearerToken = &ves_io_schema.Empty{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + domainChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_AnyDomain{} + domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} + wafExclusionRules[i].DomainChoice = domainChoiceInt } } - if v, ok := cs["cookie"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + if v, ok := wafExclusionRulesMapStrToI["exact_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - tokenSourceTypeFound = true - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Cookie{} - tokenSourceInt.Cookie = &ves_io_schema_policy.HttpCookieName{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_ExactValue{} - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + wafExclusionRules[i].DomainChoice = domainChoiceInt - if v, ok := cs["name"]; ok && !isIntfNil(v) { + domainChoiceInt.ExactValue = v.(string) - tokenSourceInt.Cookie.Name = v.(string) + } - } + if v, ok := wafExclusionRulesMapStrToI["suffix_value"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { - } + domainChoiceTypeFound = true + domainChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_SuffixValue{} + + wafExclusionRules[i].DomainChoice = domainChoiceInt + + domainChoiceInt.SuffixValue = v.(string) } - if v, ok := cs["header"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + if w, ok := wafExclusionRulesMapStrToI["expiration_timestamp"]; ok && !isIntfNil(w) { + ts, err := parseTime(w.(string)) + if err != nil { + return fmt.Errorf("error creating ExpirationTimestamp, timestamp format is wrong: %s", err) + } + wafExclusionRules[i].ExpirationTimestamp = ts + } - tokenSourceTypeFound = true - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_Header{} - tokenSourceInt.Header = &ves_io_schema_policy.HttpHeaderName{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + if v, ok := wafExclusionRulesMapStrToI["metadata"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() + metadata := &ves_io_schema.MessageMetaType{} + wafExclusionRules[i].Metadata = metadata for _, set := range sl { - cs := set.(map[string]interface{}) + metadataMapStrToI := set.(map[string]interface{}) - if v, ok := cs["name"]; ok && !isIntfNil(v) { + if w, ok := metadataMapStrToI["description"]; ok && !isIntfNil(w) { + metadata.Description = w.(string) + } - tokenSourceInt.Header.Name = v.(string) + if w, ok := metadataMapStrToI["disable"]; ok && !isIntfNil(w) { + metadata.Disable = w.(bool) + } + if w, ok := metadataMapStrToI["name"]; ok && !isIntfNil(w) { + metadata.Name = w.(string) } } } - if v, ok := cs["query_param"]; ok && !isIntfNil(v) && !tokenSourceTypeFound { + if v, ok := wafExclusionRulesMapStrToI["methods"]; ok && !isIntfNil(v) { - tokenSourceTypeFound = true - tokenSourceInt := &ves_io_schema_policy.JwtTokenAuthOptions_QueryParam{} - tokenSourceInt.QueryParam = &ves_io_schema_policy.HttpQueryParameterName{} - authOptionsInt.Jwt.TokenSource = tokenSourceInt + methodsList := []ves_io_schema.HttpMethod{} + for _, j := range v.([]interface{}) { + methodsList = append(methodsList, ves_io_schema.HttpMethod(ves_io_schema.HttpMethod_value[j.(string)])) + } + wafExclusionRules[i].Methods = methodsList - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["key"]; ok && !isIntfNil(v) { + pathChoiceTypeFound := false - tokenSourceInt.QueryParam.Key = v.(string) + if v, ok := wafExclusionRulesMapStrToI["any_path"]; ok && !isIntfNil(v) && !pathChoiceTypeFound { - } + pathChoiceTypeFound = true + if v.(bool) { + pathChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_AnyPath{} + pathChoiceInt.AnyPath = &ves_io_schema.Empty{} + wafExclusionRules[i].PathChoice = pathChoiceInt } } - } + if v, ok := wafExclusionRulesMapStrToI["path_prefix"]; ok && !isIntfNil(v) && !pathChoiceTypeFound { - } + pathChoiceTypeFound = true + pathChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_PathPrefix{} - } + wafExclusionRules[i].PathChoice = pathChoiceInt - } + pathChoiceInt.PathPrefix = v.(string) - if v, ok := securityOptionsMapStrToI["geo_filtering"]; ok && !isIntfNil(v) { + } - sl := v.(*schema.Set).List() - geoFiltering := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions{} - securityOptions.GeoFiltering = geoFiltering - for _, set := range sl { - geoFilteringMapStrToI := set.(map[string]interface{}) + if v, ok := wafExclusionRulesMapStrToI["path_regex"]; ok && !isIntfNil(v) && !pathChoiceTypeFound { - geoFilteringTypeTypeFound := false + pathChoiceTypeFound = true + pathChoiceInt := &ves_io_schema_policy.SimpleWafExclusionRule_PathRegex{} - if v, ok := geoFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + wafExclusionRules[i].PathChoice = pathChoiceInt - geoFilteringTypeTypeFound = true - geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_AllowList{} - geoFilteringTypeInt.AllowList = &ves_io_schema_policy.CountryCodeList{} - geoFiltering.GeoFilteringType = geoFilteringTypeInt + pathChoiceInt.PathRegex = v.(string) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + wafAdvancedConfigurationTypeFound := false - country_codesList := []ves_io_schema_policy.CountryCode{} - for _, j := range v.([]interface{}) { - country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) - } - geoFilteringTypeInt.AllowList.CountryCodes = country_codesList + if v, ok := wafExclusionRulesMapStrToI["app_firewall_detection_control"]; ok && !isIntfNil(v) && !wafAdvancedConfigurationTypeFound { - } + wafAdvancedConfigurationTypeFound = true + wafAdvancedConfigurationInt := &ves_io_schema_policy.SimpleWafExclusionRule_AppFirewallDetectionControl{} + wafAdvancedConfigurationInt.AppFirewallDetectionControl = &ves_io_schema_policy.AppFirewallDetectionControl{} + wafExclusionRules[i].WafAdvancedConfiguration = wafAdvancedConfigurationInt - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - geoFilteringTypeInt.AllowList.InvertMatch = v.(bool) + if v, ok := cs["exclude_attack_type_contexts"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + excludeAttackTypeContexts := make([]*ves_io_schema_policy.AppFirewallAttackTypeContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeAttackTypeContexts = excludeAttackTypeContexts + for i, set := range sl { + excludeAttackTypeContexts[i] = &ves_io_schema_policy.AppFirewallAttackTypeContext{} + excludeAttackTypeContextsMapStrToI := set.(map[string]interface{}) - } + if v, ok := excludeAttackTypeContextsMapStrToI["context"]; ok && !isIntfNil(v) { - } + excludeAttackTypeContexts[i].Context = ves_io_schema_policy.DetectionContext(ves_io_schema_policy.DetectionContext_value[v.(string)]) - if v, ok := geoFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !geoFilteringTypeTypeFound { + } - geoFilteringTypeTypeFound = true - geoFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.GeoFilteringOptions_BlockList{} - geoFilteringTypeInt.BlockList = &ves_io_schema_policy.CountryCodeList{} - geoFiltering.GeoFilteringType = geoFilteringTypeInt + if w, ok := excludeAttackTypeContextsMapStrToI["context_name"]; ok && !isIntfNil(w) { + excludeAttackTypeContexts[i].ContextName = w.(string) + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if v, ok := excludeAttackTypeContextsMapStrToI["exclude_attack_type"]; ok && !isIntfNil(v) { - if v, ok := cs["country_codes"]; ok && !isIntfNil(v) { + excludeAttackTypeContexts[i].ExcludeAttackType = ves_io_schema_app_firewall.AttackType(ves_io_schema_app_firewall.AttackType_value[v.(string)]) - country_codesList := []ves_io_schema_policy.CountryCode{} - for _, j := range v.([]interface{}) { - country_codesList = append(country_codesList, ves_io_schema_policy.CountryCode(ves_io_schema_policy.CountryCode_value[j.(string)])) - } - geoFilteringTypeInt.BlockList.CountryCodes = country_codesList + } - } + } - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + } - geoFilteringTypeInt.BlockList.InvertMatch = v.(bool) + if v, ok := cs["exclude_bot_name_contexts"]; ok && !isIntfNil(v) { - } + sl := v.([]interface{}) + excludeBotNameContexts := make([]*ves_io_schema_policy.BotNameContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeBotNameContexts = excludeBotNameContexts + for i, set := range sl { + excludeBotNameContexts[i] = &ves_io_schema_policy.BotNameContext{} + excludeBotNameContextsMapStrToI := set.(map[string]interface{}) - } + if w, ok := excludeBotNameContextsMapStrToI["bot_name"]; ok && !isIntfNil(w) { + excludeBotNameContexts[i].BotName = w.(string) + } - } + } - } + } - } + if v, ok := cs["exclude_signature_contexts"]; ok && !isIntfNil(v) { - if v, ok := securityOptionsMapStrToI["ip_filtering"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + excludeSignatureContexts := make([]*ves_io_schema_policy.AppFirewallSignatureContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeSignatureContexts = excludeSignatureContexts + for i, set := range sl { + excludeSignatureContexts[i] = &ves_io_schema_policy.AppFirewallSignatureContext{} + excludeSignatureContextsMapStrToI := set.(map[string]interface{}) - sl := v.(*schema.Set).List() - ipFiltering := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions{} - securityOptions.IpFiltering = ipFiltering - for _, set := range sl { - ipFilteringMapStrToI := set.(map[string]interface{}) + if v, ok := excludeSignatureContextsMapStrToI["context"]; ok && !isIntfNil(v) { - ipFilteringTypeTypeFound := false + excludeSignatureContexts[i].Context = ves_io_schema_policy.DetectionContext(ves_io_schema_policy.DetectionContext_value[v.(string)]) - if v, ok := ipFilteringMapStrToI["allow_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { + } - ipFilteringTypeTypeFound = true - ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_AllowList{} - ipFilteringTypeInt.AllowList = &ves_io_schema_policy.PrefixMatchList{} - ipFiltering.IpFilteringType = ipFilteringTypeInt + if w, ok := excludeSignatureContextsMapStrToI["context_name"]; ok && !isIntfNil(w) { + excludeSignatureContexts[i].ContextName = w.(string) + } - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + if w, ok := excludeSignatureContextsMapStrToI["signature_id"]; ok && !isIntfNil(w) { + excludeSignatureContexts[i].SignatureId = uint32(w.(int)) + } - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + } - ipFilteringTypeInt.AllowList.InvertMatch = v.(bool) + } - } + if v, ok := cs["exclude_violation_contexts"]; ok && !isIntfNil(v) { - if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + sl := v.([]interface{}) + excludeViolationContexts := make([]*ves_io_schema_policy.AppFirewallViolationContext, len(sl)) + wafAdvancedConfigurationInt.AppFirewallDetectionControl.ExcludeViolationContexts = excludeViolationContexts + for i, set := range sl { + excludeViolationContexts[i] = &ves_io_schema_policy.AppFirewallViolationContext{} + excludeViolationContextsMapStrToI := set.(map[string]interface{}) - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) - } - ipFilteringTypeInt.AllowList.IpPrefixes = ls + if v, ok := excludeViolationContextsMapStrToI["context"]; ok && !isIntfNil(v) { - } + excludeViolationContexts[i].Context = ves_io_schema_policy.DetectionContext(ves_io_schema_policy.DetectionContext_value[v.(string)]) - } + } - } + if w, ok := excludeViolationContextsMapStrToI["context_name"]; ok && !isIntfNil(w) { + excludeViolationContexts[i].ContextName = w.(string) + } - if v, ok := ipFilteringMapStrToI["block_list"]; ok && !isIntfNil(v) && !ipFilteringTypeTypeFound { + if v, ok := excludeViolationContextsMapStrToI["exclude_violation"]; ok && !isIntfNil(v) { - ipFilteringTypeTypeFound = true - ipFilteringTypeInt := &ves_io_schema_views_cdn_loadbalancer.IpFilteringOptions_BlockList{} - ipFilteringTypeInt.BlockList = &ves_io_schema_policy.PrefixMatchList{} - ipFiltering.IpFilteringType = ipFilteringTypeInt + excludeViolationContexts[i].ExcludeViolation = ves_io_schema_app_firewall.AppFirewallViolationType(ves_io_schema_app_firewall.AppFirewallViolationType_value[v.(string)]) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } - if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + } - ipFilteringTypeInt.BlockList.InvertMatch = v.(bool) + } + + } } - if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + if v, ok := wafExclusionRulesMapStrToI["waf_skip_processing"]; ok && !isIntfNil(v) && !wafAdvancedConfigurationTypeFound { - ls := make([]string, len(v.([]interface{}))) - for i, v := range v.([]interface{}) { - ls[i] = v.(string) + wafAdvancedConfigurationTypeFound = true + + if v.(bool) { + wafAdvancedConfigurationInt := &ves_io_schema_policy.SimpleWafExclusionRule_WafSkipProcessing{} + wafAdvancedConfigurationInt.WafSkipProcessing = &ves_io_schema.Empty{} + wafExclusionRules[i].WafAdvancedConfiguration = wafAdvancedConfigurationInt } - ipFilteringTypeInt.BlockList.IpPrefixes = ls } diff --git a/volterra/resource_auto_volterra_cluster.go b/volterra/resource_auto_volterra_cluster.go index 2b07a524c..4c5acf648 100644 --- a/volterra/resource_auto_volterra_cluster.go +++ b/volterra/resource_auto_volterra_cluster.go @@ -165,27 +165,38 @@ func resourceVolterraCluster() *schema.Resource { "header_transformation_type": { - Type: schema.TypeSet, - Optional: true, + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "default_header_transformation": { - Type: schema.TypeBool, - Optional: true, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, "preserve_case_header_transformation": { - Type: schema.TypeBool, - Optional: true, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, "proper_case_header_transformation": { - Type: schema.TypeBool, - Optional: true, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, }, }, @@ -232,8 +243,46 @@ func resourceVolterraCluster() *schema.Resource { "http1_config": { - Type: schema.TypeBool, + Type: schema.TypeSet, Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, "http2_options": { @@ -303,6 +352,24 @@ func resourceVolterraCluster() *schema.Resource { Optional: true, }, + "disable_proxy_protocol": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proxy_protocol_v1": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proxy_protocol_v2": { + + Type: schema.TypeBool, + Optional: true, + }, + "tls_parameters": { Type: schema.TypeSet, @@ -410,32 +477,27 @@ func resourceVolterraCluster() *schema.Resource { "trusted_ca_list": { - Type: schema.TypeList, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeList, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "kind": { - Type: schema.TypeString, - Computed: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Computed: true, }, "name": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "namespace": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "tenant": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, @@ -732,32 +794,27 @@ func resourceVolterraCluster() *schema.Resource { "trusted_ca_list": { - Type: schema.TypeList, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeList, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "kind": { - Type: schema.TypeString, - Computed: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Computed: true, }, "name": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "namespace": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "tenant": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, @@ -998,6 +1055,18 @@ func resourceVolterraClusterCreate(d *schema.ResourceData, meta interface{}) err } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -1086,11 +1155,76 @@ func resourceVolterraClusterCreate(d *schema.ResourceData, meta interface{}) err if v, ok := d.GetOk("http1_config"); ok && !httpProtocolTypeTypeFound { httpProtocolTypeTypeFound = true + httpProtocolTypeInt := &ves_io_schema_cluster.CreateSpecType_Http1Config{} + httpProtocolTypeInt.Http1Config = &ves_io_schema_cluster.Http1ProtocolOptions{} + createSpec.HttpProtocolType = httpProtocolTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolTypeInt.Http1Config.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolTypeInt := &ves_io_schema_cluster.CreateSpecType_Http1Config{} - httpProtocolTypeInt.Http1Config = &ves_io_schema.Empty{} - createSpec.HttpProtocolType = httpProtocolTypeInt } } @@ -1183,6 +1317,46 @@ func resourceVolterraClusterCreate(d *schema.ResourceData, meta interface{}) err } + //proxy_protocol_type + + proxyProtocolTypeTypeFound := false + + if v, ok := d.GetOk("disable_proxy_protocol"); ok && !proxyProtocolTypeTypeFound { + + proxyProtocolTypeTypeFound = true + + if v.(bool) { + proxyProtocolTypeInt := &ves_io_schema_cluster.CreateSpecType_DisableProxyProtocol{} + proxyProtocolTypeInt.DisableProxyProtocol = &ves_io_schema.Empty{} + createSpec.ProxyProtocolType = proxyProtocolTypeInt + } + + } + + if v, ok := d.GetOk("proxy_protocol_v1"); ok && !proxyProtocolTypeTypeFound { + + proxyProtocolTypeTypeFound = true + + if v.(bool) { + proxyProtocolTypeInt := &ves_io_schema_cluster.CreateSpecType_ProxyProtocolV1{} + proxyProtocolTypeInt.ProxyProtocolV1 = &ves_io_schema.Empty{} + createSpec.ProxyProtocolType = proxyProtocolTypeInt + } + + } + + if v, ok := d.GetOk("proxy_protocol_v2"); ok && !proxyProtocolTypeTypeFound { + + proxyProtocolTypeTypeFound = true + + if v.(bool) { + proxyProtocolTypeInt := &ves_io_schema_cluster.CreateSpecType_ProxyProtocolV2{} + proxyProtocolTypeInt.ProxyProtocolV2 = &ves_io_schema.Empty{} + createSpec.ProxyProtocolType = proxyProtocolTypeInt + } + + } + //tls_parameters if v, ok := d.GetOk("tls_parameters"); ok && !isIntfNil(v) { @@ -1989,6 +2163,18 @@ func resourceVolterraClusterUpdate(d *schema.ResourceData, meta interface{}) err } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -2073,11 +2259,76 @@ func resourceVolterraClusterUpdate(d *schema.ResourceData, meta interface{}) err if v, ok := d.GetOk("http1_config"); ok && !httpProtocolTypeTypeFound { httpProtocolTypeTypeFound = true + httpProtocolTypeInt := &ves_io_schema_cluster.ReplaceSpecType_Http1Config{} + httpProtocolTypeInt.Http1Config = &ves_io_schema_cluster.Http1ProtocolOptions{} + updateSpec.HttpProtocolType = httpProtocolTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolTypeInt.Http1Config.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolTypeInt := &ves_io_schema_cluster.ReplaceSpecType_Http1Config{} - httpProtocolTypeInt.Http1Config = &ves_io_schema.Empty{} - updateSpec.HttpProtocolType = httpProtocolTypeInt } } @@ -2166,6 +2417,44 @@ func resourceVolterraClusterUpdate(d *schema.ResourceData, meta interface{}) err } + proxyProtocolTypeTypeFound := false + + if v, ok := d.GetOk("disable_proxy_protocol"); ok && !proxyProtocolTypeTypeFound { + + proxyProtocolTypeTypeFound = true + + if v.(bool) { + proxyProtocolTypeInt := &ves_io_schema_cluster.ReplaceSpecType_DisableProxyProtocol{} + proxyProtocolTypeInt.DisableProxyProtocol = &ves_io_schema.Empty{} + updateSpec.ProxyProtocolType = proxyProtocolTypeInt + } + + } + + if v, ok := d.GetOk("proxy_protocol_v1"); ok && !proxyProtocolTypeTypeFound { + + proxyProtocolTypeTypeFound = true + + if v.(bool) { + proxyProtocolTypeInt := &ves_io_schema_cluster.ReplaceSpecType_ProxyProtocolV1{} + proxyProtocolTypeInt.ProxyProtocolV1 = &ves_io_schema.Empty{} + updateSpec.ProxyProtocolType = proxyProtocolTypeInt + } + + } + + if v, ok := d.GetOk("proxy_protocol_v2"); ok && !proxyProtocolTypeTypeFound { + + proxyProtocolTypeTypeFound = true + + if v.(bool) { + proxyProtocolTypeInt := &ves_io_schema_cluster.ReplaceSpecType_ProxyProtocolV2{} + proxyProtocolTypeInt.ProxyProtocolV2 = &ves_io_schema.Empty{} + updateSpec.ProxyProtocolType = proxyProtocolTypeInt + } + + } + if v, ok := d.GetOk("tls_parameters"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() diff --git a/volterra/resource_auto_volterra_dns_load_balancer.go b/volterra/resource_auto_volterra_dns_load_balancer.go index 552e141ad..8d5ac5169 100644 --- a/volterra/resource_auto_volterra_dns_load_balancer.go +++ b/volterra/resource_auto_volterra_dns_load_balancer.go @@ -203,40 +203,34 @@ func resourceVolterraDnsLoadBalancer() *schema.Resource { "asn_matcher": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "asn_sets": { - Type: schema.TypeList, - Required: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeList, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "kind": { - Type: schema.TypeString, - Computed: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Computed: true, }, "name": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "namespace": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "tenant": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, @@ -288,6 +282,84 @@ func resourceVolterraDnsLoadBalancer() *schema.Resource { }, }, + "ip_prefix_list": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_match": { + Type: schema.TypeBool, + Optional: true, + }, + + "ip_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ip_prefix_set": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "prefix_sets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "score": { Type: schema.TypeInt, Optional: true, @@ -654,6 +726,90 @@ func resourceVolterraDnsLoadBalancerCreate(d *schema.ResourceData, meta interfac } + if v, ok := rulesMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_dns_load_balancer.LoadBalancingRule_IpPrefixList{} + clientChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + rules[i].ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + clientChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := rulesMapStrToI["ip_prefix_set"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_dns_load_balancer.LoadBalancingRule_IpPrefixSet{} + clientChoiceInt.IpPrefixSet = &ves_io_schema_policy.IpMatcherType{} + rules[i].ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + clientChoiceInt.IpPrefixSet.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + clientChoiceInt.IpPrefixSet.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + if w, ok := rulesMapStrToI["score"]; ok && !isIntfNil(w) { rules[i].Score = uint32(w.(int)) } @@ -1060,6 +1216,90 @@ func resourceVolterraDnsLoadBalancerUpdate(d *schema.ResourceData, meta interfac } + if v, ok := rulesMapStrToI["ip_prefix_list"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_dns_load_balancer.LoadBalancingRule_IpPrefixList{} + clientChoiceInt.IpPrefixList = &ves_io_schema_policy.PrefixMatchList{} + rules[i].ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_match"]; ok && !isIntfNil(v) { + + clientChoiceInt.IpPrefixList.InvertMatch = v.(bool) + + } + + if v, ok := cs["ip_prefixes"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + clientChoiceInt.IpPrefixList.IpPrefixes = ls + + } + + } + + } + + if v, ok := rulesMapStrToI["ip_prefix_set"]; ok && !isIntfNil(v) && !clientChoiceTypeFound { + + clientChoiceTypeFound = true + clientChoiceInt := &ves_io_schema_dns_load_balancer.LoadBalancingRule_IpPrefixSet{} + clientChoiceInt.IpPrefixSet = &ves_io_schema_policy.IpMatcherType{} + rules[i].ClientChoice = clientChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["invert_matcher"]; ok && !isIntfNil(v) { + + clientChoiceInt.IpPrefixSet.InvertMatcher = v.(bool) + + } + + if v, ok := cs["prefix_sets"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + prefixSetsInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + clientChoiceInt.IpPrefixSet.PrefixSets = prefixSetsInt + for i, ps := range sl { + + psMapToStrVal := ps.(map[string]interface{}) + prefixSetsInt[i] = &ves_io_schema.ObjectRefType{} + + prefixSetsInt[i].Kind = "ip_prefix_set" + + if v, ok := psMapToStrVal["name"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Name = v.(string) + } + + if v, ok := psMapToStrVal["namespace"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Namespace = v.(string) + } + + if v, ok := psMapToStrVal["tenant"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Tenant = v.(string) + } + + if v, ok := psMapToStrVal["uid"]; ok && !isIntfNil(v) { + prefixSetsInt[i].Uid = v.(string) + } + + } + + } + + } + + } + if w, ok := rulesMapStrToI["score"]; ok && !isIntfNil(w) { rules[i].Score = uint32(w.(int)) } diff --git a/volterra/resource_auto_volterra_enhanced_firewall_policy.go b/volterra/resource_auto_volterra_enhanced_firewall_policy.go index 020aee804..cfefc6c9d 100644 --- a/volterra/resource_auto_volterra_enhanced_firewall_policy.go +++ b/volterra/resource_auto_volterra_enhanced_firewall_policy.go @@ -18,6 +18,7 @@ import ( ves_io_schema_enhanced_firewall_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/enhanced_firewall_policy" ves_io_schema_network_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/network_policy" ves_io_schema_network_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/network_policy_rule" + ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" ) @@ -701,6 +702,110 @@ func resourceVolterraEnhancedFirewallPolicy() *schema.Resource { }, }, }, + + "segment_policy": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dst_any": { + + Type: schema.TypeBool, + Optional: true, + }, + + "dst_segments": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "segments": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "intra_segment": { + + Type: schema.TypeBool, + Optional: true, + }, + + "src_any": { + + Type: schema.TypeBool, + Optional: true, + }, + + "src_segments": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "segments": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, }, } } @@ -1609,6 +1714,141 @@ func resourceVolterraEnhancedFirewallPolicyCreate(d *schema.ResourceData, meta i } + //segment_policy + if v, ok := d.GetOk("segment_policy"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segmentPolicy := &ves_io_schema_policy.SegmentPolicyType{} + createSpec.SegmentPolicy = segmentPolicy + for _, set := range sl { + segmentPolicyMapStrToI := set.(map[string]interface{}) + + dstSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["dst_any"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstAny{} + dstSegmentChoiceInt.DstAny = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["dst_segments"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstSegments{} + dstSegmentChoiceInt.DstSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + dstSegmentChoiceInt.DstSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := segmentPolicyMapStrToI["intra_segment"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_IntraSegment{} + dstSegmentChoiceInt.IntraSegment = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + srcSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["src_any"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + + if v.(bool) { + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcAny{} + srcSegmentChoiceInt.SrcAny = &ves_io_schema.Empty{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["src_segments"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcSegments{} + srcSegmentChoiceInt.SrcSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + srcSegmentChoiceInt.SrcSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + } + + } + log.Printf("[DEBUG] Creating Volterra EnhancedFirewallPolicy object with struct: %+v", createReq) createEnhancedFirewallPolicyResp, err := client.CreateObject(context.Background(), ves_io_schema_enhanced_firewall_policy.ObjectType, createReq) @@ -2557,6 +2797,140 @@ func resourceVolterraEnhancedFirewallPolicyUpdate(d *schema.ResourceData, meta i } + if v, ok := d.GetOk("segment_policy"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segmentPolicy := &ves_io_schema_policy.SegmentPolicyType{} + updateSpec.SegmentPolicy = segmentPolicy + for _, set := range sl { + segmentPolicyMapStrToI := set.(map[string]interface{}) + + dstSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["dst_any"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstAny{} + dstSegmentChoiceInt.DstAny = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["dst_segments"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstSegments{} + dstSegmentChoiceInt.DstSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + dstSegmentChoiceInt.DstSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := segmentPolicyMapStrToI["intra_segment"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_IntraSegment{} + dstSegmentChoiceInt.IntraSegment = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + srcSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["src_any"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + + if v.(bool) { + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcAny{} + srcSegmentChoiceInt.SrcAny = &ves_io_schema.Empty{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["src_segments"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcSegments{} + srcSegmentChoiceInt.SrcSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + srcSegmentChoiceInt.SrcSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + } + + } + log.Printf("[DEBUG] Updating Volterra EnhancedFirewallPolicy obj with struct: %+v", updateReq) err := client.ReplaceObject(context.Background(), ves_io_schema_enhanced_firewall_policy.ObjectType, updateReq) diff --git a/volterra/resource_auto_volterra_filter_set.go b/volterra/resource_auto_volterra_filter_set.go new file mode 100644 index 000000000..2f05d669a --- /dev/null +++ b/volterra/resource_auto_volterra_filter_set.go @@ -0,0 +1,673 @@ +// +// Copyright (c) 2018 Volterra, Inc. All rights reserved. +// Code generated by ves-gen-tf-provider. DO NOT EDIT. +// + +package volterra + +import ( + "context" + "fmt" + "log" + "strings" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "gopkg.volterra.us/stdlib/client/vesapi" + google_protobuf "github.com/gogo/protobuf/types" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_filter_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/filter_set" +) + +// resourceVolterraFilterSet is implementation of Volterra's FilterSet resources +func resourceVolterraFilterSet() *schema.Resource { + return &schema.Resource{ + Create: resourceVolterraFilterSetCreate, + Read: resourceVolterraFilterSetRead, + Update: resourceVolterraFilterSetUpdate, + Delete: resourceVolterraFilterSetDelete, + + Schema: map[string]*schema.Schema{ + + "annotations": { + Type: schema.TypeMap, + Optional: true, + }, + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + }, + + "labels": { + Type: schema.TypeMap, + Optional: true, + }, + + "name": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "namespace": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "context_key": { + Type: schema.TypeString, + Required: true, + }, + + "filter_fields": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "field_id": { + Type: schema.TypeString, + Required: true, + }, + + "date_field": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "absolute": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "end_date": { + Type: schema.TypeString, + Required: true, + }, + + "start_date": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "relative": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "filter_expression_field": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expression": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "label_selector_field": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "string_field": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "field_values": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + }, + } +} + +// resourceVolterraFilterSetCreate creates FilterSet resource +func resourceVolterraFilterSetCreate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + createMeta := &ves_io_schema.ObjectCreateMetaType{} + createSpec := &ves_io_schema_filter_set.CreateSpecType{} + createReq := &ves_io_schema_filter_set.CreateRequest{ + Metadata: createMeta, + Spec: createSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + createMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + createMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + createMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + createMeta.Namespace = + v.(string) + } + + //context_key + if v, ok := d.GetOk("context_key"); ok && !isIntfNil(v) { + + createSpec.ContextKey = + v.(string) + + } + + //filter_fields + if v, ok := d.GetOk("filter_fields"); ok && !isIntfNil(v) { + + sl := v.([]interface{}) + filterFields := make([]*ves_io_schema_filter_set.FilterSetField, len(sl)) + createSpec.FilterFields = filterFields + for i, set := range sl { + filterFields[i] = &ves_io_schema_filter_set.FilterSetField{} + filterFieldsMapStrToI := set.(map[string]interface{}) + + if w, ok := filterFieldsMapStrToI["field_id"]; ok && !isIntfNil(w) { + filterFields[i].FieldId = w.(string) + } + + fieldValueTypeFound := false + + if v, ok := filterFieldsMapStrToI["date_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_DateField{} + fieldValueInt.DateField = &ves_io_schema_filter_set.FilterTimeRangeField{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + rangeTypeTypeFound := false + + if v, ok := cs["absolute"]; ok && !isIntfNil(v) && !rangeTypeTypeFound { + + rangeTypeTypeFound = true + rangeTypeInt := &ves_io_schema_filter_set.FilterTimeRangeField_Absolute{} + rangeTypeInt.Absolute = &ves_io_schema.DateRange{} + fieldValueInt.DateField.RangeType = rangeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["end_date"]; ok && !isIntfNil(v) { + + ts, err := parseTime(v.(string)) + if err != nil { + return fmt.Errorf("error creating EndDate, timestamp format is wrong: %s", err) + } + rangeTypeInt.Absolute.EndDate = ts + } + + if v, ok := cs["start_date"]; ok && !isIntfNil(v) { + + ts, err := parseTime(v.(string)) + if err != nil { + return fmt.Errorf("error creating StartDate, timestamp format is wrong: %s", err) + } + rangeTypeInt.Absolute.StartDate = ts + } + + } + + } + + if _, ok := cs["relative"]; ok && !rangeTypeTypeFound { + + rangeTypeTypeFound = true + rangeTypeInt := &ves_io_schema_filter_set.FilterTimeRangeField_Relative{} + rangeTypeInt.Relative = &google_protobuf.Duration{} + fieldValueInt.DateField.RangeType = rangeTypeInt + + } + + } + + } + + if v, ok := filterFieldsMapStrToI["filter_expression_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_FilterExpressionField{} + fieldValueInt.FilterExpressionField = &ves_io_schema_filter_set.FilterExpressionField{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expression"]; ok && !isIntfNil(v) { + + fieldValueInt.FilterExpressionField.Expression = v.(string) + + } + + } + + } + + if v, ok := filterFieldsMapStrToI["label_selector_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_LabelSelectorField{} + fieldValueInt.LabelSelectorField = &ves_io_schema.LabelSelectorType{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + fieldValueInt.LabelSelectorField.Expressions = ls + + } + + } + + } + + if v, ok := filterFieldsMapStrToI["string_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_StringField{} + fieldValueInt.StringField = &ves_io_schema_filter_set.FilterStringField{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["field_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + fieldValueInt.StringField.FieldValues = ls + + } + + } + + } + + } + + } + + log.Printf("[DEBUG] Creating Volterra FilterSet object with struct: %+v", createReq) + + createFilterSetResp, err := client.CreateObject(context.Background(), ves_io_schema_filter_set.ObjectType, createReq) + if err != nil { + return fmt.Errorf("error creating FilterSet: %s", err) + } + d.SetId(createFilterSetResp.GetObjSystemMetadata().GetUid()) + + return resourceVolterraFilterSetRead(d, meta) +} + +func resourceVolterraFilterSetRead(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + resp, err := client.GetObject(context.Background(), ves_io_schema_filter_set.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] FilterSet %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra FilterSet %q: %s", d.Id(), err) + } + return setFilterSetFields(client, d, resp) +} + +func setFilterSetFields(client *APIClient, d *schema.ResourceData, resp vesapi.GetObjectResponse) error { + metadata := resp.GetObjMetadata() + + d.Set("annotations", metadata.GetAnnotations()) + + d.Set("description", metadata.GetDescription()) + + d.Set("disable", metadata.GetDisable()) + + d.Set("labels", metadata.GetLabels()) + + d.Set("name", metadata.GetName()) + + d.Set("namespace", metadata.GetNamespace()) + + return nil +} + +// resourceVolterraFilterSetUpdate updates FilterSet resource +func resourceVolterraFilterSetUpdate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + updateMeta := &ves_io_schema.ObjectReplaceMetaType{} + updateSpec := &ves_io_schema_filter_set.ReplaceSpecType{} + updateReq := &ves_io_schema_filter_set.ReplaceRequest{ + Metadata: updateMeta, + Spec: updateSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + updateMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + updateMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + updateMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + updateMeta.Namespace = + v.(string) + } + + if v, ok := d.GetOk("context_key"); ok && !isIntfNil(v) { + + updateSpec.ContextKey = + v.(string) + + } + + if v, ok := d.GetOk("filter_fields"); ok && !isIntfNil(v) { + + sl := v.([]interface{}) + filterFields := make([]*ves_io_schema_filter_set.FilterSetField, len(sl)) + updateSpec.FilterFields = filterFields + for i, set := range sl { + filterFields[i] = &ves_io_schema_filter_set.FilterSetField{} + filterFieldsMapStrToI := set.(map[string]interface{}) + + if w, ok := filterFieldsMapStrToI["field_id"]; ok && !isIntfNil(w) { + filterFields[i].FieldId = w.(string) + } + + fieldValueTypeFound := false + + if v, ok := filterFieldsMapStrToI["date_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_DateField{} + fieldValueInt.DateField = &ves_io_schema_filter_set.FilterTimeRangeField{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + rangeTypeTypeFound := false + + if v, ok := cs["absolute"]; ok && !isIntfNil(v) && !rangeTypeTypeFound { + + rangeTypeTypeFound = true + rangeTypeInt := &ves_io_schema_filter_set.FilterTimeRangeField_Absolute{} + rangeTypeInt.Absolute = &ves_io_schema.DateRange{} + fieldValueInt.DateField.RangeType = rangeTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["end_date"]; ok && !isIntfNil(v) { + + ts, err := parseTime(v.(string)) + if err != nil { + return fmt.Errorf("error creating EndDate, timestamp format is wrong: %s", err) + } + rangeTypeInt.Absolute.EndDate = ts + } + + if v, ok := cs["start_date"]; ok && !isIntfNil(v) { + + ts, err := parseTime(v.(string)) + if err != nil { + return fmt.Errorf("error creating StartDate, timestamp format is wrong: %s", err) + } + rangeTypeInt.Absolute.StartDate = ts + } + + } + + } + + if _, ok := cs["relative"]; ok && !rangeTypeTypeFound { + + rangeTypeTypeFound = true + rangeTypeInt := &ves_io_schema_filter_set.FilterTimeRangeField_Relative{} + rangeTypeInt.Relative = &google_protobuf.Duration{} + fieldValueInt.DateField.RangeType = rangeTypeInt + + } + + } + + } + + if v, ok := filterFieldsMapStrToI["filter_expression_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_FilterExpressionField{} + fieldValueInt.FilterExpressionField = &ves_io_schema_filter_set.FilterExpressionField{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expression"]; ok && !isIntfNil(v) { + + fieldValueInt.FilterExpressionField.Expression = v.(string) + + } + + } + + } + + if v, ok := filterFieldsMapStrToI["label_selector_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_LabelSelectorField{} + fieldValueInt.LabelSelectorField = &ves_io_schema.LabelSelectorType{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["expressions"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + fieldValueInt.LabelSelectorField.Expressions = ls + + } + + } + + } + + if v, ok := filterFieldsMapStrToI["string_field"]; ok && !isIntfNil(v) && !fieldValueTypeFound { + + fieldValueTypeFound = true + fieldValueInt := &ves_io_schema_filter_set.FilterSetField_StringField{} + fieldValueInt.StringField = &ves_io_schema_filter_set.FilterStringField{} + filterFields[i].FieldValue = fieldValueInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["field_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + fieldValueInt.StringField.FieldValues = ls + + } + + } + + } + + } + + } + + log.Printf("[DEBUG] Updating Volterra FilterSet obj with struct: %+v", updateReq) + + err := client.ReplaceObject(context.Background(), ves_io_schema_filter_set.ObjectType, updateReq) + if err != nil { + return fmt.Errorf("error updating FilterSet: %s", err) + } + + return resourceVolterraFilterSetRead(d, meta) +} + +func resourceVolterraFilterSetDelete(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + _, err := client.GetObject(context.Background(), ves_io_schema_filter_set.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] FilterSet %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra FilterSet before deleting %q: %s", d.Id(), err) + } + + log.Printf("[DEBUG] Deleting Volterra FilterSet obj with name %+v in namespace %+v", name, namespace) + return client.DeleteObject(context.Background(), ves_io_schema_filter_set.ObjectType, namespace, name) +} diff --git a/volterra/resource_auto_volterra_fleet.go b/volterra/resource_auto_volterra_fleet.go index 2a63d9928..ad98c3396 100644 --- a/volterra/resource_auto_volterra_fleet.go +++ b/volterra/resource_auto_volterra_fleet.go @@ -405,6 +405,64 @@ func resourceVolterraFleet() *schema.Resource { }, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "log_receiver": { Type: schema.TypeSet, @@ -3977,6 +4035,104 @@ func resourceVolterraFleetCreate(d *schema.ResourceData, meta interface{}) error } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //logs_receiver_choice logsReceiverChoiceTypeFound := false @@ -8307,6 +8463,103 @@ func resourceVolterraFleetUpdate(d *schema.ResourceData, meta interface{}) error } + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + logsReceiverChoiceTypeFound := false if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { diff --git a/volterra/resource_auto_volterra_forward_proxy_policy.go b/volterra/resource_auto_volterra_forward_proxy_policy.go index 04250be3f..b1995a6bf 100644 --- a/volterra/resource_auto_volterra_forward_proxy_policy.go +++ b/volterra/resource_auto_volterra_forward_proxy_policy.go @@ -844,6 +844,110 @@ func resourceVolterraForwardProxyPolicy() *schema.Resource { }, }, }, + + "segment_policy": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dst_any": { + + Type: schema.TypeBool, + Optional: true, + }, + + "dst_segments": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "segments": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "intra_segment": { + + Type: schema.TypeBool, + Optional: true, + }, + + "src_any": { + + Type: schema.TypeBool, + Optional: true, + }, + + "src_segments": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "segments": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, }, } } @@ -2082,6 +2186,141 @@ func resourceVolterraForwardProxyPolicyCreate(d *schema.ResourceData, meta inter } + //segment_policy + if v, ok := d.GetOk("segment_policy"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segmentPolicy := &ves_io_schema_policy.SegmentPolicyType{} + createSpec.SegmentPolicy = segmentPolicy + for _, set := range sl { + segmentPolicyMapStrToI := set.(map[string]interface{}) + + dstSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["dst_any"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstAny{} + dstSegmentChoiceInt.DstAny = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["dst_segments"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstSegments{} + dstSegmentChoiceInt.DstSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + dstSegmentChoiceInt.DstSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := segmentPolicyMapStrToI["intra_segment"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_IntraSegment{} + dstSegmentChoiceInt.IntraSegment = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + srcSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["src_any"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + + if v.(bool) { + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcAny{} + srcSegmentChoiceInt.SrcAny = &ves_io_schema.Empty{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["src_segments"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcSegments{} + srcSegmentChoiceInt.SrcSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + srcSegmentChoiceInt.SrcSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + } + + } + log.Printf("[DEBUG] Creating Volterra ForwardProxyPolicy object with struct: %+v", createReq) createForwardProxyPolicyResp, err := client.CreateObject(context.Background(), ves_io_schema_views_forward_proxy_policy.ObjectType, createReq) @@ -3358,6 +3597,140 @@ func resourceVolterraForwardProxyPolicyUpdate(d *schema.ResourceData, meta inter } + if v, ok := d.GetOk("segment_policy"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segmentPolicy := &ves_io_schema_policy.SegmentPolicyType{} + updateSpec.SegmentPolicy = segmentPolicy + for _, set := range sl { + segmentPolicyMapStrToI := set.(map[string]interface{}) + + dstSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["dst_any"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstAny{} + dstSegmentChoiceInt.DstAny = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["dst_segments"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstSegments{} + dstSegmentChoiceInt.DstSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + dstSegmentChoiceInt.DstSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := segmentPolicyMapStrToI["intra_segment"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_IntraSegment{} + dstSegmentChoiceInt.IntraSegment = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + srcSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["src_any"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + + if v.(bool) { + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcAny{} + srcSegmentChoiceInt.SrcAny = &ves_io_schema.Empty{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["src_segments"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcSegments{} + srcSegmentChoiceInt.SrcSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + srcSegmentChoiceInt.SrcSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + } + + } + log.Printf("[DEBUG] Updating Volterra ForwardProxyPolicy obj with struct: %+v", updateReq) err := client.ReplaceObject(context.Background(), ves_io_schema_views_forward_proxy_policy.ObjectType, updateReq) diff --git a/volterra/resource_auto_volterra_gcp_vpc_site.go b/volterra/resource_auto_volterra_gcp_vpc_site.go index b08ed5fd7..b9b89d3d0 100644 --- a/volterra/resource_auto_volterra_gcp_vpc_site.go +++ b/volterra/resource_auto_volterra_gcp_vpc_site.go @@ -217,6 +217,64 @@ func resourceVolterraGcpVpcSite() *schema.Resource { Required: true, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "log_receiver": { Type: schema.TypeSet, @@ -3186,6 +3244,104 @@ func resourceVolterraGcpVpcSiteCreate(d *schema.ResourceData, meta interface{}) } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //logs_receiver_choice logsReceiverChoiceTypeFound := false @@ -7149,6 +7305,124 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("disk_size"); ok && !isIntfNil(v) { + + updateSpec.DiskSize = + uint32(v.(int)) + + } + + if v, ok := d.GetOk("gcp_region"); ok && !isIntfNil(v) { + + updateSpec.GcpRegion = + v.(string) + + } + + if v, ok := d.GetOk("instance_type"); ok && !isIntfNil(v) { + + updateSpec.InstanceType = + v.(string) + + } + + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + logsReceiverChoiceTypeFound := false if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { @@ -7196,6 +7470,13 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("nodes_per_az"); ok && !isIntfNil(v) { + + updateSpec.NodesPerAz = + uint32(v.(int)) + + } + if v, ok := d.GetOk("offline_survivability_mode"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() @@ -7473,6 +7754,16 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["gcp_zone_names"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + siteTypeInt.IngressEgressGw.GcpZoneNames = ls + + } + globalNetworkChoiceTypeFound := false if v, ok := cs["global_network_list"]; ok && !isIntfNil(v) && !globalNetworkChoiceTypeFound { @@ -8081,63 +8372,140 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } - insideStaticRouteChoiceTypeFound := false - - if v, ok := cs["inside_static_routes"]; ok && !isIntfNil(v) && !insideStaticRouteChoiceTypeFound { - - insideStaticRouteChoiceTypeFound = true - insideStaticRouteChoiceInt := &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressEgressGwReplaceType_InsideStaticRoutes{} - insideStaticRouteChoiceInt.InsideStaticRoutes = &ves_io_schema_views.SiteStaticRoutesListType{} - siteTypeInt.IngressEgressGw.InsideStaticRouteChoice = insideStaticRouteChoiceInt + if v, ok := cs["inside_network"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() + insideNetwork := &ves_io_schema_views.GCPVPCNetworkChoiceType{} + siteTypeInt.IngressEgressGw.InsideNetwork = insideNetwork for _, set := range sl { - cs := set.(map[string]interface{}) + insideNetworkMapStrToI := set.(map[string]interface{}) - if v, ok := cs["static_route_list"]; ok && !isIntfNil(v) { + choiceTypeFound := false - sl := v.([]interface{}) - staticRouteList := make([]*ves_io_schema_views.SiteStaticRoutesType, len(sl)) - insideStaticRouteChoiceInt.InsideStaticRoutes.StaticRouteList = staticRouteList - for i, set := range sl { - staticRouteList[i] = &ves_io_schema_views.SiteStaticRoutesType{} - staticRouteListMapStrToI := set.(map[string]interface{}) + if v, ok := insideNetworkMapStrToI["existing_network"]; ok && !isIntfNil(v) && !choiceTypeFound { - configModeChoiceTypeFound := false + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_ExistingNetwork{} + choiceInt.ExistingNetwork = &ves_io_schema_views.GCPVPCNetworkType{} + insideNetwork.Choice = choiceInt - if v, ok := staticRouteListMapStrToI["custom_static_route"]; ok && !isIntfNil(v) && !configModeChoiceTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - configModeChoiceTypeFound = true - configModeChoiceInt := &ves_io_schema_views.SiteStaticRoutesType_CustomStaticRoute{} - configModeChoiceInt.CustomStaticRoute = &ves_io_schema.StaticRouteType{} - staticRouteList[i].ConfigModeChoice = configModeChoiceInt + if v, ok := cs["name"]; ok && !isIntfNil(v) { - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + choiceInt.ExistingNetwork.Name = v.(string) - if v, ok := cs["attrs"]; ok && !isIntfNil(v) { + } - attrsList := []ves_io_schema.RouteAttrType{} - for _, j := range v.([]interface{}) { - attrsList = append(attrsList, ves_io_schema.RouteAttrType(ves_io_schema.RouteAttrType_value[j.(string)])) - } - configModeChoiceInt.CustomStaticRoute.Attrs = attrsList + } - } + } - if v, ok := cs["labels"]; ok && !isIntfNil(v) { + if v, ok := insideNetworkMapStrToI["new_network"]; ok && !isIntfNil(v) && !choiceTypeFound { - ms := map[string]string{} - for k, v := range v.(map[string]interface{}) { - ms[k] = v.(string) - } - configModeChoiceInt.CustomStaticRoute.Labels = ms - } + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetwork{} + choiceInt.NewNetwork = &ves_io_schema_views.GCPVPCNetworkParamsType{} + insideNetwork.Choice = choiceInt - if v, ok := cs["nexthop"]; ok && !isIntfNil(v) { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - sl := v.(*schema.Set).List() + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.NewNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := insideNetworkMapStrToI["new_network_autogenerate"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetworkAutogenerate{} + choiceInt.NewNetworkAutogenerate = &ves_io_schema_views.GCPVPCNetworkAutogenerateParamsType{} + insideNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) { + + choiceInt.NewNetworkAutogenerate.Autogenerate = v.(bool) + + } + + } + + } + + } + + } + + insideStaticRouteChoiceTypeFound := false + + if v, ok := cs["inside_static_routes"]; ok && !isIntfNil(v) && !insideStaticRouteChoiceTypeFound { + + insideStaticRouteChoiceTypeFound = true + insideStaticRouteChoiceInt := &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressEgressGwReplaceType_InsideStaticRoutes{} + insideStaticRouteChoiceInt.InsideStaticRoutes = &ves_io_schema_views.SiteStaticRoutesListType{} + siteTypeInt.IngressEgressGw.InsideStaticRouteChoice = insideStaticRouteChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["static_route_list"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + staticRouteList := make([]*ves_io_schema_views.SiteStaticRoutesType, len(sl)) + insideStaticRouteChoiceInt.InsideStaticRoutes.StaticRouteList = staticRouteList + for i, set := range sl { + staticRouteList[i] = &ves_io_schema_views.SiteStaticRoutesType{} + staticRouteListMapStrToI := set.(map[string]interface{}) + + configModeChoiceTypeFound := false + + if v, ok := staticRouteListMapStrToI["custom_static_route"]; ok && !isIntfNil(v) && !configModeChoiceTypeFound { + + configModeChoiceTypeFound = true + configModeChoiceInt := &ves_io_schema_views.SiteStaticRoutesType_CustomStaticRoute{} + configModeChoiceInt.CustomStaticRoute = &ves_io_schema.StaticRouteType{} + staticRouteList[i].ConfigModeChoice = configModeChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["attrs"]; ok && !isIntfNil(v) { + + attrsList := []ves_io_schema.RouteAttrType{} + for _, j := range v.([]interface{}) { + attrsList = append(attrsList, ves_io_schema.RouteAttrType(ves_io_schema.RouteAttrType_value[j.(string)])) + } + configModeChoiceInt.CustomStaticRoute.Attrs = attrsList + + } + + if v, ok := cs["labels"]; ok && !isIntfNil(v) { + + ms := map[string]string{} + for k, v := range v.(map[string]interface{}) { + ms[k] = v.(string) + } + configModeChoiceInt.CustomStaticRoute.Labels = ms + } + + if v, ok := cs["nexthop"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() nexthop := &ves_io_schema.NextHopType{} configModeChoiceInt.CustomStaticRoute.Nexthop = nexthop for _, set := range sl { @@ -8345,6 +8713,68 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["inside_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + insideSubnet := &ves_io_schema_views.GCPVPCSubnetChoiceType{} + siteTypeInt.IngressEgressGw.InsideSubnet = insideSubnet + for _, set := range sl { + insideSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := insideSubnetMapStrToI["existing_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_ExistingSubnet{} + choiceInt.ExistingSubnet = &ves_io_schema_views.GCPSubnetType{} + insideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingSubnet.SubnetName = v.(string) + + } + + } + + } + + if v, ok := insideSubnetMapStrToI["new_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_NewSubnet{} + choiceInt.NewSubnet = &ves_io_schema_views.GCPSubnetParamsType{} + insideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { + + choiceInt.NewSubnet.PrimaryIpv4 = v.(string) + + } + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.NewSubnet.SubnetName = v.(string) + + } + + } + + } + + } + + } + networkPolicyChoiceTypeFound := false if v, ok := cs["active_enhanced_firewall_policies"]; ok && !isIntfNil(v) && !networkPolicyChoiceTypeFound { @@ -8441,6 +8871,89 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["node_number"]; ok && !isIntfNil(v) { + + siteTypeInt.IngressEgressGw.NodeNumber = uint32(v.(int)) + + } + + if v, ok := cs["outside_network"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + outsideNetwork := &ves_io_schema_views.GCPVPCNetworkChoiceType{} + siteTypeInt.IngressEgressGw.OutsideNetwork = outsideNetwork + for _, set := range sl { + outsideNetworkMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := outsideNetworkMapStrToI["existing_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_ExistingNetwork{} + choiceInt.ExistingNetwork = &ves_io_schema_views.GCPVPCNetworkType{} + outsideNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := outsideNetworkMapStrToI["new_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetwork{} + choiceInt.NewNetwork = &ves_io_schema_views.GCPVPCNetworkParamsType{} + outsideNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.NewNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := outsideNetworkMapStrToI["new_network_autogenerate"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetworkAutogenerate{} + choiceInt.NewNetworkAutogenerate = &ves_io_schema_views.GCPVPCNetworkAutogenerateParamsType{} + outsideNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) { + + choiceInt.NewNetworkAutogenerate.Autogenerate = v.(bool) + + } + + } + + } + + } + + } + outsideStaticRouteChoiceTypeFound := false if v, ok := cs["no_outside_static_routes"]; ok && !isIntfNil(v) && !outsideStaticRouteChoiceTypeFound { @@ -8705,6 +9218,68 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["outside_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + outsideSubnet := &ves_io_schema_views.GCPVPCSubnetChoiceType{} + siteTypeInt.IngressEgressGw.OutsideSubnet = outsideSubnet + for _, set := range sl { + outsideSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := outsideSubnetMapStrToI["existing_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_ExistingSubnet{} + choiceInt.ExistingSubnet = &ves_io_schema_views.GCPSubnetType{} + outsideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingSubnet.SubnetName = v.(string) + + } + + } + + } + + if v, ok := outsideSubnetMapStrToI["new_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_NewSubnet{} + choiceInt.NewSubnet = &ves_io_schema_views.GCPSubnetParamsType{} + outsideSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { + + choiceInt.NewSubnet.PrimaryIpv4 = v.(string) + + } + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.NewSubnet.SubnetName = v.(string) + + } + + } + + } + + } + + } + if v, ok := cs["performance_enhancement_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() @@ -8722,33 +9297,208 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) perfModeChoiceInt.PerfModeL3Enhanced = &ves_io_schema_views.L3PerformanceEnhancementType{} performanceEnhancementMode.PerfModeChoice = perfModeChoiceInt - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + perfModeChoiceTypeFound := false + + if v, ok := cs["jumbo"]; ok && !isIntfNil(v) && !perfModeChoiceTypeFound { + + perfModeChoiceTypeFound = true + + if v.(bool) { + perfModeChoiceIntNew := &ves_io_schema_views.L3PerformanceEnhancementType_Jumbo{} + perfModeChoiceIntNew.Jumbo = &ves_io_schema.Empty{} + perfModeChoiceInt.PerfModeL3Enhanced.PerfModeChoice = perfModeChoiceIntNew + } + + } + + if v, ok := cs["no_jumbo"]; ok && !isIntfNil(v) && !perfModeChoiceTypeFound { + + perfModeChoiceTypeFound = true + + if v.(bool) { + perfModeChoiceIntNew := &ves_io_schema_views.L3PerformanceEnhancementType_NoJumbo{} + perfModeChoiceIntNew.NoJumbo = &ves_io_schema.Empty{} + perfModeChoiceInt.PerfModeL3Enhanced.PerfModeChoice = perfModeChoiceIntNew + } + + } + + } + + } + + if v, ok := performanceEnhancementModeMapStrToI["perf_mode_l7_enhanced"]; ok && !isIntfNil(v) && !perfModeChoiceTypeFound { + + perfModeChoiceTypeFound = true + + if v.(bool) { + perfModeChoiceInt := &ves_io_schema_views.PerformanceEnhancementModeType_PerfModeL7Enhanced{} + perfModeChoiceInt.PerfModeL7Enhanced = &ves_io_schema.Empty{} + performanceEnhancementMode.PerfModeChoice = perfModeChoiceInt + } + + } + + } + + } + + siteMeshGroupChoiceTypeFound := false + + if v, ok := cs["sm_connection_public_ip"]; ok && !isIntfNil(v) && !siteMeshGroupChoiceTypeFound { + + siteMeshGroupChoiceTypeFound = true + + if v.(bool) { + siteMeshGroupChoiceInt := &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressEgressGwReplaceType_SmConnectionPublicIp{} + siteMeshGroupChoiceInt.SmConnectionPublicIp = &ves_io_schema.Empty{} + siteTypeInt.IngressEgressGw.SiteMeshGroupChoice = siteMeshGroupChoiceInt + } + + } + + if v, ok := cs["sm_connection_pvt_ip"]; ok && !isIntfNil(v) && !siteMeshGroupChoiceTypeFound { + + siteMeshGroupChoiceTypeFound = true + + if v.(bool) { + siteMeshGroupChoiceInt := &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressEgressGwReplaceType_SmConnectionPvtIp{} + siteMeshGroupChoiceInt.SmConnectionPvtIp = &ves_io_schema.Empty{} + siteTypeInt.IngressEgressGw.SiteMeshGroupChoice = siteMeshGroupChoiceInt + } + + } + + } + + } + + if v, ok := d.GetOk("ingress_gw"); ok && !siteTypeTypeFound { + + siteTypeTypeFound = true + siteTypeInt := &ves_io_schema_views_gcp_vpc_site.ReplaceSpecType_IngressGw{} + siteTypeInt.IngressGw = &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressGwReplaceType{} + updateSpec.SiteType = siteTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["gcp_zone_names"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + siteTypeInt.IngressGw.GcpZoneNames = ls + + } + + if v, ok := cs["local_network"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + localNetwork := &ves_io_schema_views.GCPVPCNetworkChoiceType{} + siteTypeInt.IngressGw.LocalNetwork = localNetwork + for _, set := range sl { + localNetworkMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := localNetworkMapStrToI["existing_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_ExistingNetwork{} + choiceInt.ExistingNetwork = &ves_io_schema_views.GCPVPCNetworkType{} + localNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := localNetworkMapStrToI["new_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetwork{} + choiceInt.NewNetwork = &ves_io_schema_views.GCPVPCNetworkParamsType{} + localNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.NewNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := localNetworkMapStrToI["new_network_autogenerate"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetworkAutogenerate{} + choiceInt.NewNetworkAutogenerate = &ves_io_schema_views.GCPVPCNetworkAutogenerateParamsType{} + localNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) { + + choiceInt.NewNetworkAutogenerate.Autogenerate = v.(bool) + + } + + } + + } + + } + + } - perfModeChoiceTypeFound := false + if v, ok := cs["local_subnet"]; ok && !isIntfNil(v) { - if v, ok := cs["jumbo"]; ok && !isIntfNil(v) && !perfModeChoiceTypeFound { + sl := v.(*schema.Set).List() + localSubnet := &ves_io_schema_views.GCPVPCSubnetChoiceType{} + siteTypeInt.IngressGw.LocalSubnet = localSubnet + for _, set := range sl { + localSubnetMapStrToI := set.(map[string]interface{}) - perfModeChoiceTypeFound = true + choiceTypeFound := false - if v.(bool) { - perfModeChoiceIntNew := &ves_io_schema_views.L3PerformanceEnhancementType_Jumbo{} - perfModeChoiceIntNew.Jumbo = &ves_io_schema.Empty{} - perfModeChoiceInt.PerfModeL3Enhanced.PerfModeChoice = perfModeChoiceIntNew - } + if v, ok := localSubnetMapStrToI["existing_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { - } + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_ExistingSubnet{} + choiceInt.ExistingSubnet = &ves_io_schema_views.GCPSubnetType{} + localSubnet.Choice = choiceInt - if v, ok := cs["no_jumbo"]; ok && !isIntfNil(v) && !perfModeChoiceTypeFound { + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - perfModeChoiceTypeFound = true + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { - if v.(bool) { - perfModeChoiceIntNew := &ves_io_schema_views.L3PerformanceEnhancementType_NoJumbo{} - perfModeChoiceIntNew.NoJumbo = &ves_io_schema.Empty{} - perfModeChoiceInt.PerfModeL3Enhanced.PerfModeChoice = perfModeChoiceIntNew - } + choiceInt.ExistingSubnet.SubnetName = v.(string) } @@ -8756,62 +9506,42 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } - if v, ok := performanceEnhancementModeMapStrToI["perf_mode_l7_enhanced"]; ok && !isIntfNil(v) && !perfModeChoiceTypeFound { - - perfModeChoiceTypeFound = true - - if v.(bool) { - perfModeChoiceInt := &ves_io_schema_views.PerformanceEnhancementModeType_PerfModeL7Enhanced{} - perfModeChoiceInt.PerfModeL7Enhanced = &ves_io_schema.Empty{} - performanceEnhancementMode.PerfModeChoice = perfModeChoiceInt - } + if v, ok := localSubnetMapStrToI["new_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { - } + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_NewSubnet{} + choiceInt.NewSubnet = &ves_io_schema_views.GCPSubnetParamsType{} + localSubnet.Choice = choiceInt - } + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) - } + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { - siteMeshGroupChoiceTypeFound := false + choiceInt.NewSubnet.PrimaryIpv4 = v.(string) - if v, ok := cs["sm_connection_public_ip"]; ok && !isIntfNil(v) && !siteMeshGroupChoiceTypeFound { + } - siteMeshGroupChoiceTypeFound = true + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { - if v.(bool) { - siteMeshGroupChoiceInt := &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressEgressGwReplaceType_SmConnectionPublicIp{} - siteMeshGroupChoiceInt.SmConnectionPublicIp = &ves_io_schema.Empty{} - siteTypeInt.IngressEgressGw.SiteMeshGroupChoice = siteMeshGroupChoiceInt - } + choiceInt.NewSubnet.SubnetName = v.(string) - } + } - if v, ok := cs["sm_connection_pvt_ip"]; ok && !isIntfNil(v) && !siteMeshGroupChoiceTypeFound { + } - siteMeshGroupChoiceTypeFound = true + } - if v.(bool) { - siteMeshGroupChoiceInt := &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressEgressGwReplaceType_SmConnectionPvtIp{} - siteMeshGroupChoiceInt.SmConnectionPvtIp = &ves_io_schema.Empty{} - siteTypeInt.IngressEgressGw.SiteMeshGroupChoice = siteMeshGroupChoiceInt } } - } - - } - - if v, ok := d.GetOk("ingress_gw"); ok && !siteTypeTypeFound { + if v, ok := cs["node_number"]; ok && !isIntfNil(v) { - siteTypeTypeFound = true - siteTypeInt := &ves_io_schema_views_gcp_vpc_site.ReplaceSpecType_IngressGw{} - siteTypeInt.IngressGw = &ves_io_schema_views_gcp_vpc_site.GCPVPCIngressGwReplaceType{} - updateSpec.SiteType = siteTypeInt + siteTypeInt.IngressGw.NodeNumber = uint32(v.(int)) - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) + } if v, ok := cs["performance_enhancement_mode"]; ok && !isIntfNil(v) { @@ -9009,6 +9739,16 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["gcp_zone_names"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + siteTypeInt.VoltstackCluster.GcpZoneNames = ls + + } + globalNetworkChoiceTypeFound := false if v, ok := cs["global_network_list"]; ok && !isIntfNil(v) && !globalNetworkChoiceTypeFound { @@ -9713,6 +10453,12 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["node_number"]; ok && !isIntfNil(v) { + + siteTypeInt.VoltstackCluster.NodeNumber = uint32(v.(int)) + + } + outsideStaticRouteChoiceTypeFound := false if v, ok := cs["no_outside_static_routes"]; ok && !isIntfNil(v) && !outsideStaticRouteChoiceTypeFound { @@ -9977,6 +10723,145 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["site_local_network"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + siteLocalNetwork := &ves_io_schema_views.GCPVPCNetworkChoiceType{} + siteTypeInt.VoltstackCluster.SiteLocalNetwork = siteLocalNetwork + for _, set := range sl { + siteLocalNetworkMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := siteLocalNetworkMapStrToI["existing_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_ExistingNetwork{} + choiceInt.ExistingNetwork = &ves_io_schema_views.GCPVPCNetworkType{} + siteLocalNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := siteLocalNetworkMapStrToI["new_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetwork{} + choiceInt.NewNetwork = &ves_io_schema_views.GCPVPCNetworkParamsType{} + siteLocalNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceInt.NewNetwork.Name = v.(string) + + } + + } + + } + + if v, ok := siteLocalNetworkMapStrToI["new_network_autogenerate"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCNetworkChoiceType_NewNetworkAutogenerate{} + choiceInt.NewNetworkAutogenerate = &ves_io_schema_views.GCPVPCNetworkAutogenerateParamsType{} + siteLocalNetwork.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["autogenerate"]; ok && !isIntfNil(v) { + + choiceInt.NewNetworkAutogenerate.Autogenerate = v.(bool) + + } + + } + + } + + } + + } + + if v, ok := cs["site_local_subnet"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + siteLocalSubnet := &ves_io_schema_views.GCPVPCSubnetChoiceType{} + siteTypeInt.VoltstackCluster.SiteLocalSubnet = siteLocalSubnet + for _, set := range sl { + siteLocalSubnetMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := siteLocalSubnetMapStrToI["existing_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_ExistingSubnet{} + choiceInt.ExistingSubnet = &ves_io_schema_views.GCPSubnetType{} + siteLocalSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.ExistingSubnet.SubnetName = v.(string) + + } + + } + + } + + if v, ok := siteLocalSubnetMapStrToI["new_subnet"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.GCPVPCSubnetChoiceType_NewSubnet{} + choiceInt.NewSubnet = &ves_io_schema_views.GCPSubnetParamsType{} + siteLocalSubnet.Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["primary_ipv4"]; ok && !isIntfNil(v) { + + choiceInt.NewSubnet.PrimaryIpv4 = v.(string) + + } + + if v, ok := cs["subnet_name"]; ok && !isIntfNil(v) { + + choiceInt.NewSubnet.SubnetName = v.(string) + + } + + } + + } + + } + + } + siteMeshGroupChoiceTypeFound := false if v, ok := cs["sm_connection_public_ip"]; ok && !isIntfNil(v) && !siteMeshGroupChoiceTypeFound { @@ -10007,6 +10892,13 @@ func resourceVolterraGcpVpcSiteUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("ssh_key"); ok && !isIntfNil(v) { + + updateSpec.SshKey = + v.(string) + + } + log.Printf("[DEBUG] Updating Volterra GcpVpcSite obj with struct: %+v", updateReq) err := client.ReplaceObject(context.Background(), ves_io_schema_views_gcp_vpc_site.ObjectType, updateReq) diff --git a/volterra/resource_auto_volterra_http_loadbalancer.go b/volterra/resource_auto_volterra_http_loadbalancer.go index e36223648..b76af9ae1 100644 --- a/volterra/resource_auto_volterra_http_loadbalancer.go +++ b/volterra/resource_auto_volterra_http_loadbalancer.go @@ -25,11 +25,13 @@ import ( ves_io_schema_route "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/route" ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_views_common_waf "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/common_waf" ves_io_schema_views_http_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/http_loadbalancer" ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" ves_io_schema_views_rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" ves_io_schema_virtual_host "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" statemigration "github.com/volterraedge/terraform-provider-volterra/volterra/state_migration" + drift "github.com/volterraedge/terraform-provider-volterra/volterra/drift_detection" ) // resourceVolterraHttpLoadbalancer is implementation of Volterra's HttpLoadbalancer resources @@ -98,6 +100,130 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ + "cloud_edge_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cloud_edge": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4_vip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6_vip": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "site": { Type: schema.TypeSet, @@ -151,6 +277,82 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "virtual_network": { Type: schema.TypeSet, @@ -256,6 +458,82 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "virtual_site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "vk8s_service": { Type: schema.TypeSet, @@ -1780,6 +2058,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -2030,6 +2318,78 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -2335,6 +2695,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -2585,6 +2955,78 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -3285,8 +3727,9 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, "reload_header_name": { - Type: schema.TypeString, - Required: true, + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, }, }, @@ -3551,7 +3994,84 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{}, + Schema: map[string]*schema.Schema{ + + "disable_transaction_result": { + + Type: schema.TypeBool, + Optional: true, + }, + + "transaction_result": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "failure_conditions": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "status": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "success_conditions": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "status": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + }, }, }, @@ -4395,7 +4915,94 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{}, + Schema: map[string]*schema.Schema{ + + "disable_transaction_result": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "transaction_result": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "failure_conditions": { + + Type: schema.TypeList, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "status": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "success_conditions": { + + Type: schema.TypeList, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "status": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, }, }, @@ -5703,6 +6310,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -6481,78 +7098,6 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, - "disable_ddos_detection": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_ddos_detection": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "disable_auto_mitigation": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_auto_mitigation": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "block": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_challenge": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "cookie_expiry": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "custom_page": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_script_delay": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - "ddos_mitigation_rules": { Type: schema.TypeList, @@ -6698,6 +7243,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -7498,6 +8053,13 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -7517,31 +8079,65 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { "http_protocol_options": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "http_protocol_enable_v1_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, "http_protocol_enable_v1_v2": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, "http_protocol_enable_v2_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, }, }, @@ -8237,6 +8833,13 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -8256,31 +8859,65 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { "http_protocol_options": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "http_protocol_enable_v1_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, "http_protocol_enable_v1_v2": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, "http_protocol_enable_v2_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, }, }, @@ -8926,78 +9563,6 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, - "disable_ddos_detection": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_ddos_detection": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "disable_auto_mitigation": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_auto_mitigation": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "block": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_challenge": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "cookie_expiry": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "custom_page": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_script_delay": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - "disable_malicious_user_detection": { Type: schema.TypeBool, @@ -9766,6 +10331,13 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -9798,9 +10370,52 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { "http1_config": { - Type: schema.TypeBool, + Type: schema.TypeSet, Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, }, "http2_options": { @@ -9896,6 +10511,27 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "disable_proxy_protocol": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proxy_protocol_v1": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proxy_protocol_v2": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "disable_subsets": { Type: schema.TypeBool, @@ -10337,6 +10973,33 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment": { + + Type: schema.TypeSet, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + "ip": { Type: schema.TypeString, @@ -10459,6 +11122,33 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment": { + + Type: schema.TypeSet, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + "refresh_interval": { Type: schema.TypeInt, Optional: true, @@ -11487,6 +12177,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -11884,6 +12584,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -12180,6 +12890,78 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -12460,6 +13242,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -12741,6 +13533,78 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -13096,6 +13960,16 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -13392,6 +14266,78 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -14869,22 +15815,19 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { "regex_rewrite": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "pattern": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "substitution": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, @@ -15260,13 +16203,13 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Optional: true, }, - "disable_threat_intelligence": { + "disable_threat_mesh": { Type: schema.TypeBool, Optional: true, }, - "enable_threat_intelligence": { + "enable_threat_mesh": { Type: schema.TypeBool, Optional: true, @@ -15289,7 +16232,7 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { Type: schema.TypeList, - Optional: true, + Required: true, Elem: &schema.Schema{ Type: schema.TypeString, }, @@ -15687,12 +16630,12 @@ func resourceVolterraHttpLoadbalancer() *schema.Resource { }, }, }, - SchemaVersion: 1, + SchemaVersion: 2, StateUpgraders: []schema.StateUpgrader{ { - Type: statemigration.ResourceHttpLoadbalancerInstanceResourceV0().CoreConfigSchema().ImpliedType(), - Upgrade: statemigration.ResourceHttpLoadbalancerInstanceStateUpgradeV0, - Version: 0, + Type: statemigration.ResourceHttpLoadbalancerInstanceResourceV1().CoreConfigSchema().ImpliedType(), + Upgrade: statemigration.ResourceHttpLoadbalancerInstanceStateUpgradeV1, + Version: 1, }, }, @@ -15843,6 +16786,81 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := advertiseWhereMapStrToI["site_segment"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_SiteSegment{} + choiceInt.SiteSegment = &ves_io_schema_views.WhereSiteSegment{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ipv6 = v.(string) + + } + + if v, ok := cs["segment"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segment := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Segment = segment + for _, set := range sl { + segmentMapStrToI := set.(map[string]interface{}) + + if w, ok := segmentMapStrToI["name"]; ok && !isIntfNil(w) { + segment.Name = w.(string) + } + + if w, ok := segmentMapStrToI["namespace"]; ok && !isIntfNil(w) { + segment.Namespace = w.(string) + } + + if w, ok := segmentMapStrToI["tenant"]; ok && !isIntfNil(w) { + segment.Tenant = w.(string) + } + + } + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + if v, ok := advertiseWhereMapStrToI["virtual_network"]; ok && !isIntfNil(v) && !choiceTypeFound { choiceTypeFound = true @@ -16197,7 +17215,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa apiDefinitionChoiceTypeFound = true apiDefinitionChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_ApiDefinitions{} - apiDefinitionChoiceInt.ApiDefinitions = &ves_io_schema_views_http_loadbalancer.ApiDefinitionList{} + apiDefinitionChoiceInt.ApiDefinitions = &ves_io_schema_views_common_waf.ApiDefinitionList{} createSpec.ApiDefinitionChoice = apiDefinitionChoiceInt sl := v.(*schema.Set).List() @@ -16238,7 +17256,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa apiDefinitionChoiceTypeFound = true apiDefinitionChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_ApiSpecification{} - apiDefinitionChoiceInt.ApiSpecification = &ves_io_schema_views_http_loadbalancer.APISpecificationSettings{} + apiDefinitionChoiceInt.ApiSpecification = &ves_io_schema_views_common_waf.APISpecificationSettings{} createSpec.ApiDefinitionChoice = apiDefinitionChoiceInt sl := v.(*schema.Set).List() @@ -16272,8 +17290,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["validation_all_spec_endpoints"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { validationTargetChoiceTypeFound = true - validationTargetChoiceInt := &ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationAllSpecEndpoints{} - validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings{} + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{} + validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings{} apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt sl := v.(*schema.Set).List() @@ -16283,7 +17301,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - fallThroughMode := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode{} + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} validationTargetChoiceInt.ValidationAllSpecEndpoints.FallThroughMode = fallThroughMode for _, set := range sl { fallThroughModeMapStrToI := set.(map[string]interface{}) @@ -16295,7 +17313,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa fallThroughModeChoiceTypeFound = true if v.(bool) { - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt } @@ -16305,8 +17323,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { fallThroughModeChoiceTypeFound = true - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeCustom{} - fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_http_loadbalancer.CustomFallThroughMode{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt sl := v.(*schema.Set).List() @@ -16316,10 +17334,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - openApiValidationRules := make([]*ves_io_schema_views_http_loadbalancer.FallThroughRule, len(sl)) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules for i, set := range sl { - openApiValidationRules[i] = &ves_io_schema_views_http_loadbalancer.FallThroughRule{} + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} openApiValidationRulesMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -16329,7 +17347,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionBlock{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -16341,7 +17359,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} actionChoiceInt.ActionReport = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -16353,7 +17371,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionSkip{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -16365,8 +17383,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiEndpoint{} - conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt sl := v.(*schema.Set).List() @@ -16396,7 +17414,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiGroup{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -16407,7 +17425,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_BasePath{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -16458,7 +17476,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -16470,7 +17488,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -16480,7 +17498,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["settings"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - settings := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings{} + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} validationTargetChoiceInt.ValidationAllSpecEndpoints.Settings = settings for _, set := range sl { settingsMapStrToI := set.(map[string]interface{}) @@ -16492,7 +17510,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -16504,7 +17522,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -16516,8 +17534,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { propertyValidationSettingsChoiceTypeFound = true - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} - propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_http_loadbalancer.ValidationPropertySetting{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt sl := v.(*schema.Set).List() @@ -16527,7 +17545,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["headers"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - headers := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders{} + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers for _, set := range sl { headersMapStrToI := set.(map[string]interface{}) @@ -16539,7 +17557,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -16551,7 +17569,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -16565,7 +17583,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - queryParameters := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters{} + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters for _, set := range sl { queryParametersMapStrToI := set.(map[string]interface{}) @@ -16577,7 +17595,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -16589,7 +17607,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -16609,7 +17627,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa propertyValidationSettingsChoiceTypeFound = true if v.(bool) { - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt } @@ -16623,7 +17641,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["validation_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - validationMode := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode{} + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} validationTargetChoiceInt.ValidationAllSpecEndpoints.ValidationMode = validationMode for _, set := range sl { validationModeMapStrToI := set.(map[string]interface{}) @@ -16633,8 +17651,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { responseValidationModeChoiceTypeFound = true - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ResponseValidationModeActive{} - responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt sl := v.(*schema.Set).List() @@ -16658,7 +17676,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -16670,7 +17688,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -16686,7 +17704,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa responseValidationModeChoiceTypeFound = true if v.(bool) { - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt } @@ -16700,7 +17718,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationModeChoiceTypeFound = true if v.(bool) { - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} validationMode.ValidationModeChoice = validationModeChoiceInt } @@ -16710,8 +17728,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { validationModeChoiceTypeFound = true - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ValidationModeActive{} - validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} validationMode.ValidationModeChoice = validationModeChoiceInt sl := v.(*schema.Set).List() @@ -16735,7 +17753,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -16747,7 +17765,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -16769,8 +17787,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["validation_custom_list"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { validationTargetChoiceTypeFound = true - validationTargetChoiceInt := &ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationCustomList{} - validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_http_loadbalancer.ValidateApiBySpecRule{} + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationCustomList{} + validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_common_waf.ValidateApiBySpecRule{} apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt sl := v.(*schema.Set).List() @@ -16780,7 +17798,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - fallThroughMode := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode{} + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} validationTargetChoiceInt.ValidationCustomList.FallThroughMode = fallThroughMode for _, set := range sl { fallThroughModeMapStrToI := set.(map[string]interface{}) @@ -16792,7 +17810,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa fallThroughModeChoiceTypeFound = true if v.(bool) { - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt } @@ -16802,8 +17820,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { fallThroughModeChoiceTypeFound = true - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeCustom{} - fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_http_loadbalancer.CustomFallThroughMode{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt sl := v.(*schema.Set).List() @@ -16813,10 +17831,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - openApiValidationRules := make([]*ves_io_schema_views_http_loadbalancer.FallThroughRule, len(sl)) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules for i, set := range sl { - openApiValidationRules[i] = &ves_io_schema_views_http_loadbalancer.FallThroughRule{} + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} openApiValidationRulesMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -16826,7 +17844,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionBlock{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -16838,7 +17856,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} actionChoiceInt.ActionReport = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -16850,7 +17868,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionSkip{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -16862,8 +17880,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiEndpoint{} - conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt sl := v.(*schema.Set).List() @@ -16893,7 +17911,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiGroup{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -16904,7 +17922,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_BasePath{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -16951,10 +17969,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - openApiValidationRules := make([]*ves_io_schema_views_http_loadbalancer.OpenApiValidationRule, len(sl)) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.OpenApiValidationRule, len(sl)) validationTargetChoiceInt.ValidationCustomList.OpenApiValidationRules = openApiValidationRules for i, set := range sl { - openApiValidationRules[i] = &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule{} + openApiValidationRules[i] = &ves_io_schema_views_common_waf.OpenApiValidationRule{} openApiValidationRulesMapStrToI := set.(map[string]interface{}) conditionTypeChoiceTypeFound := false @@ -16962,8 +17980,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_ApiEndpoint{} - conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt sl := v.(*schema.Set).List() @@ -16993,7 +18011,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_ApiGroup{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiGroup{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -17004,7 +18022,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_BasePath{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_BasePath{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -17019,7 +18037,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} openApiValidationRules[i].DomainChoice = domainChoiceInt } @@ -17029,7 +18047,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_SpecificDomain{} openApiValidationRules[i].DomainChoice = domainChoiceInt @@ -17064,7 +18082,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["validation_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - validationMode := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode{} + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} openApiValidationRules[i].ValidationMode = validationMode for _, set := range sl { validationModeMapStrToI := set.(map[string]interface{}) @@ -17074,8 +18092,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { responseValidationModeChoiceTypeFound = true - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ResponseValidationModeActive{} - responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt sl := v.(*schema.Set).List() @@ -17099,7 +18117,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -17111,7 +18129,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -17127,7 +18145,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa responseValidationModeChoiceTypeFound = true if v.(bool) { - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt } @@ -17141,7 +18159,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationModeChoiceTypeFound = true if v.(bool) { - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} validationMode.ValidationModeChoice = validationModeChoiceInt } @@ -17151,8 +18169,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { validationModeChoiceTypeFound = true - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ValidationModeActive{} - validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} validationMode.ValidationModeChoice = validationModeChoiceInt sl := v.(*schema.Set).List() @@ -17176,7 +18194,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -17188,7 +18206,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -17214,7 +18232,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidateApiBySpecRule_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -17226,7 +18244,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidateApiBySpecRule_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -17236,7 +18254,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["settings"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - settings := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings{} + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} validationTargetChoiceInt.ValidationCustomList.Settings = settings for _, set := range sl { settingsMapStrToI := set.(map[string]interface{}) @@ -17248,7 +18266,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -17260,7 +18278,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -17272,8 +18290,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { propertyValidationSettingsChoiceTypeFound = true - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} - propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_http_loadbalancer.ValidationPropertySetting{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt sl := v.(*schema.Set).List() @@ -17283,7 +18301,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["headers"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - headers := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders{} + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers for _, set := range sl { headersMapStrToI := set.(map[string]interface{}) @@ -17295,7 +18313,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -17307,7 +18325,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -17321,7 +18339,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - queryParameters := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters{} + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters for _, set := range sl { queryParametersMapStrToI := set.(map[string]interface{}) @@ -17333,7 +18351,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -17345,7 +18363,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -17365,7 +18383,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa propertyValidationSettingsChoiceTypeFound = true if v.(bool) { - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt } @@ -17385,7 +18403,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validationTargetChoiceTypeFound = true if v.(bool) { - validationTargetChoiceInt := &ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationDisabled{} + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{} validationTargetChoiceInt.ValidationDisabled = &ves_io_schema.Empty{} apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt } @@ -17428,7 +18446,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa apiDiscoveryChoiceTypeFound = true apiDiscoveryChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_EnableApiDiscovery{} - apiDiscoveryChoiceInt.EnableApiDiscovery = &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting{} + apiDiscoveryChoiceInt.EnableApiDiscovery = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} createSpec.ApiDiscoveryChoice = apiDiscoveryChoiceInt sl := v.(*schema.Set).List() @@ -17458,7 +18476,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -17470,7 +18488,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -17901,7 +18919,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("api_protection_rules"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - apiProtectionRules := &ves_io_schema_views_http_loadbalancer.APIProtectionRules{} + apiProtectionRules := &ves_io_schema_views_common_waf.APIProtectionRules{} createSpec.ApiProtectionRules = apiProtectionRules for _, set := range sl { apiProtectionRulesMapStrToI := set.(map[string]interface{}) @@ -17909,16 +18927,16 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiProtectionRulesMapStrToI["api_endpoint_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - apiEndpointRules := make([]*ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule, len(sl)) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.APIEndpointProtectionRule, len(sl)) apiProtectionRules.ApiEndpointRules = apiEndpointRules for i, set := range sl { - apiEndpointRules[i] = &ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule{} + apiEndpointRules[i] = &ves_io_schema_views_common_waf.APIEndpointProtectionRule{} apiEndpointRulesMapStrToI := set.(map[string]interface{}) if v, ok := apiEndpointRulesMapStrToI["action"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - action := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction{} + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} apiEndpointRules[i].Action = action for _, set := range sl { actionMapStrToI := set.(map[string]interface{}) @@ -17930,7 +18948,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} actionInt.Allow = &ves_io_schema.Empty{} action.Action = actionInt } @@ -17942,7 +18960,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Deny{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} actionInt.Deny = &ves_io_schema.Empty{} action.Action = actionInt } @@ -18274,7 +19292,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} apiEndpointRules[i].DomainChoice = domainChoiceInt } @@ -18284,7 +19302,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_SpecificDomain{} apiEndpointRules[i].DomainChoice = domainChoiceInt @@ -18530,6 +19548,98 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -18644,16 +19754,16 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiProtectionRulesMapStrToI["api_groups_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - apiGroupsRules := make([]*ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule, len(sl)) + apiGroupsRules := make([]*ves_io_schema_views_common_waf.APIGroupProtectionRule, len(sl)) apiProtectionRules.ApiGroupsRules = apiGroupsRules for i, set := range sl { - apiGroupsRules[i] = &ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule{} + apiGroupsRules[i] = &ves_io_schema_views_common_waf.APIGroupProtectionRule{} apiGroupsRulesMapStrToI := set.(map[string]interface{}) if v, ok := apiGroupsRulesMapStrToI["action"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - action := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction{} + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} apiGroupsRules[i].Action = action for _, set := range sl { actionMapStrToI := set.(map[string]interface{}) @@ -18665,7 +19775,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} actionInt.Allow = &ves_io_schema.Empty{} action.Action = actionInt } @@ -18677,7 +19787,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Deny{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} actionInt.Deny = &ves_io_schema.Empty{} action.Action = actionInt } @@ -18987,7 +20097,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} apiGroupsRules[i].DomainChoice = domainChoiceInt } @@ -18997,7 +20107,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiGroupsRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_SpecificDomain{} apiGroupsRules[i].DomainChoice = domainChoiceInt @@ -19243,6 +20353,98 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -19362,10 +20564,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("blocked_clients"); ok && !isIntfNil(v) { sl := v.([]interface{}) - blockedClients := make([]*ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule, len(sl)) + blockedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) createSpec.BlockedClients = blockedClients for i, set := range sl { - blockedClients[i] = &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule{} + blockedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} blockedClientsMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -19375,7 +20577,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} blockedClients[i].ActionChoice = actionChoiceInt } @@ -19387,7 +20589,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} blockedClients[i].ActionChoice = actionChoiceInt } @@ -19399,7 +20601,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} blockedClients[i].ActionChoice = actionChoiceInt } @@ -19408,9 +20610,9 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { - actionsList := []ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction{} + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} for _, j := range v.([]interface{}) { - actionsList = append(actionsList, ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction(ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction_value[j.(string)])) + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) } blockedClients[i].Actions = actionsList @@ -19421,7 +20623,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_AsNumber{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -19432,8 +20634,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_HttpHeader{} - clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_http_loadbalancer.HttpHeaderMatcherList{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt sl := v.(*schema.Set).List() @@ -19503,7 +20705,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_IpPrefix{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -19514,7 +20716,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_UserIdentifier{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -22568,7 +23770,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa challengeTypeTypeFound = true challengeTypeInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_EnableChallenge{} - challengeTypeInt.EnableChallenge = &ves_io_schema_views_http_loadbalancer.EnableChallenge{} + challengeTypeInt.EnableChallenge = &ves_io_schema_views_common_waf.EnableChallenge{} createSpec.ChallengeType = challengeTypeInt sl := v.(*schema.Set).List() @@ -22580,7 +23782,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { captchaChallengeParametersChoiceTypeFound = true - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_CaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt @@ -22609,7 +23811,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa captchaChallengeParametersChoiceTypeFound = true if v.(bool) { - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt } @@ -22623,7 +23825,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa jsChallengeParametersChoiceTypeFound = true if v.(bool) { - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultJsChallengeParameters{} jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt } @@ -22633,7 +23835,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { jsChallengeParametersChoiceTypeFound = true - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_JsChallengeParameters{} jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt @@ -22670,7 +23872,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa maliciousUserMitigationChoiceTypeFound = true if v.(bool) { - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultMitigationSettings{} maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt } @@ -22680,7 +23882,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { maliciousUserMitigationChoiceTypeFound = true - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_MaliciousUserMitigation{} maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt @@ -22763,7 +23965,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa challengeTypeTypeFound = true challengeTypeInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_PolicyBasedChallenge{} - challengeTypeInt.PolicyBasedChallenge = &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge{} + challengeTypeInt.PolicyBasedChallenge = &ves_io_schema_views_common_waf.PolicyBasedChallenge{} createSpec.ChallengeType = challengeTypeInt sl := v.(*schema.Set).List() @@ -22775,7 +23977,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { captchaChallengeParametersChoiceTypeFound = true - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_CaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt @@ -22804,7 +24006,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa captchaChallengeParametersChoiceTypeFound = true if v.(bool) { - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt } @@ -22818,7 +24020,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa challengeChoiceTypeFound = true if v.(bool) { - challengeChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{} + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{} challengeChoiceInt.AlwaysEnableCaptchaChallenge = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt } @@ -22830,7 +24032,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa challengeChoiceTypeFound = true if v.(bool) { - challengeChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_AlwaysEnableJsChallenge{} + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableJsChallenge{} challengeChoiceInt.AlwaysEnableJsChallenge = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt } @@ -22842,7 +24044,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa challengeChoiceTypeFound = true if v.(bool) { - challengeChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_NoChallenge{} + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{} challengeChoiceInt.NoChallenge = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt } @@ -22856,7 +24058,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa jsChallengeParametersChoiceTypeFound = true if v.(bool) { - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultJsChallengeParameters{} jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt } @@ -22866,7 +24068,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { jsChallengeParametersChoiceTypeFound = true - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_JsChallengeParameters{} jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt @@ -22903,7 +24105,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa maliciousUserMitigationChoiceTypeFound = true if v.(bool) { - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultMitigationSettings{} maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt } @@ -22913,7 +24115,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { maliciousUserMitigationChoiceTypeFound = true - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_MaliciousUserMitigation{} maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt @@ -22946,7 +24148,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["rule_list"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - ruleList := &ves_io_schema_views_http_loadbalancer.ChallengeRuleList{} + ruleList := &ves_io_schema_views_common_waf.ChallengeRuleList{} challengeTypeInt.PolicyBasedChallenge.RuleList = ruleList for _, set := range sl { ruleListMapStrToI := set.(map[string]interface{}) @@ -22954,10 +24156,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := ruleListMapStrToI["rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - rules := make([]*ves_io_schema_views_http_loadbalancer.ChallengeRule, len(sl)) + rules := make([]*ves_io_schema_views_common_waf.ChallengeRule, len(sl)) ruleList.Rules = rules for i, set := range sl { - rules[i] = &ves_io_schema_views_http_loadbalancer.ChallengeRule{} + rules[i] = &ves_io_schema_views_common_waf.ChallengeRule{} rulesMapStrToI := set.(map[string]interface{}) if v, ok := rulesMapStrToI["metadata"]; ok && !isIntfNil(v) { @@ -23936,7 +25138,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa temporaryBlockingParametersChoiceTypeFound = true if v.(bool) { - temporaryBlockingParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{} + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{} temporaryBlockingParametersChoiceInt.DefaultTemporaryBlockingParameters = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt } @@ -23946,7 +25148,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["temporary_user_blocking"]; ok && !isIntfNil(v) && !temporaryBlockingParametersChoiceTypeFound { temporaryBlockingParametersChoiceTypeFound = true - temporaryBlockingParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_TemporaryUserBlocking{} + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_TemporaryUserBlocking{} temporaryBlockingParametersChoiceInt.TemporaryUserBlocking = &ves_io_schema_virtual_host.TemporaryUserBlockingType{} challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt @@ -24779,113 +25981,6 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } - //ddos_detection_choice - - ddosDetectionChoiceTypeFound := false - - if v, ok := d.GetOk("disable_ddos_detection"); ok && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - - if v.(bool) { - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_DisableDdosDetection{} - ddosDetectionChoiceInt.DisableDdosDetection = &ves_io_schema.Empty{} - createSpec.DdosDetectionChoice = ddosDetectionChoiceInt - } - - } - - if v, ok := d.GetOk("enable_ddos_detection"); ok && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_EnableDdosDetection{} - ddosDetectionChoiceInt.EnableDdosDetection = &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting{} - createSpec.DdosDetectionChoice = ddosDetectionChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - autoMitigationChoiceTypeFound := false - - if v, ok := cs["disable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - - if v.(bool) { - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_DisableAutoMitigation{} - autoMitigationChoiceInt.DisableAutoMitigation = &ves_io_schema.Empty{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - } - - } - - if v, ok := cs["enable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_EnableAutoMitigation{} - autoMitigationChoiceInt.EnableAutoMitigation = &ves_io_schema_views_http_loadbalancer.AutoMitigationAction{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - actionTypeFound := false - - if v, ok := cs["block"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - - if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{} - actionInt.Block = &ves_io_schema.Empty{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - } - - } - - if v, ok := cs["js_challenge"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_JsChallenge{} - actionInt.JsChallenge = &ves_io_schema_virtual_host.JavascriptChallengeType{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CookieExpiry = uint32(v.(int)) - - } - - if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CustomPage = v.(string) - - } - - if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.JsScriptDelay = uint32(v.(int)) - - } - - } - - } - - } - - } - - } - - } - //ddos_mitigation_rules if v, ok := d.GetOk("ddos_mitigation_rules"); ok && !isIntfNil(v) { @@ -25731,7 +26826,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa ipReputationChoiceTypeFound = true ipReputationChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_EnableIpReputation{} - ipReputationChoiceInt.EnableIpReputation = &ves_io_schema_views_http_loadbalancer.IPThreatCategoryListType{} + ipReputationChoiceInt.EnableIpReputation = &ves_io_schema_views_common_waf.IPThreatCategoryListType{} createSpec.IpReputationChoice = ipReputationChoiceInt sl := v.(*schema.Set).List() @@ -25756,7 +26851,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("jwt_validation"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - jwtValidation := &ves_io_schema_views_http_loadbalancer.JWTValidation{} + jwtValidation := &ves_io_schema_views_common_waf.JWTValidation{} createSpec.JwtValidation = jwtValidation for _, set := range sl { jwtValidationMapStrToI := set.(map[string]interface{}) @@ -25804,7 +26899,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["auth_server_uri"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { jwksConfigurationTypeFound = true - jwksConfigurationInt := &ves_io_schema_views_http_loadbalancer.JWTValidation_AuthServerUri{} + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_AuthServerUri{} jwtValidation.JwksConfiguration = jwksConfigurationInt @@ -25815,7 +26910,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["jwks"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { jwksConfigurationTypeFound = true - jwksConfigurationInt := &ves_io_schema_views_http_loadbalancer.JWTValidation_Jwks{} + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_Jwks{} jwtValidation.JwksConfiguration = jwksConfigurationInt @@ -25826,8 +26921,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["jwks_config"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { jwksConfigurationTypeFound = true - jwksConfigurationInt := &ves_io_schema_views_http_loadbalancer.JWTValidation_JwksConfig{} - jwksConfigurationInt.JwksConfig = &ves_io_schema_views_http_loadbalancer.JWKS{} + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_JwksConfig{} + jwksConfigurationInt.JwksConfig = &ves_io_schema_views_common_waf.JWKS{} jwtValidation.JwksConfiguration = jwksConfigurationInt sl := v.(*schema.Set).List() @@ -25847,7 +26942,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["mandatory_claims"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - mandatoryClaims := &ves_io_schema_views_http_loadbalancer.MandatoryClaims{} + mandatoryClaims := &ves_io_schema_views_common_waf.MandatoryClaims{} jwtValidation.MandatoryClaims = mandatoryClaims for _, set := range sl { mandatoryClaimsMapStrToI := set.(map[string]interface{}) @@ -25867,7 +26962,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["reserved_claims"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - reservedClaims := &ves_io_schema_views_http_loadbalancer.ReservedClaims{} + reservedClaims := &ves_io_schema_views_common_waf.ReservedClaims{} jwtValidation.ReservedClaims = reservedClaims for _, set := range sl { reservedClaimsMapStrToI := set.(map[string]interface{}) @@ -25877,8 +26972,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := reservedClaimsMapStrToI["audience"]; ok && !isIntfNil(v) && !audienceValidationTypeFound { audienceValidationTypeFound = true - audienceValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_Audience{} - audienceValidationInt.Audience = &ves_io_schema_views_http_loadbalancer.Audiences{} + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Audience{} + audienceValidationInt.Audience = &ves_io_schema_views_common_waf.Audiences{} reservedClaims.AudienceValidation = audienceValidationInt sl := v.(*schema.Set).List() @@ -25904,7 +26999,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa audienceValidationTypeFound = true if v.(bool) { - audienceValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_AudienceDisable{} + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_AudienceDisable{} audienceValidationInt.AudienceDisable = &ves_io_schema.Empty{} reservedClaims.AudienceValidation = audienceValidationInt } @@ -25916,7 +27011,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := reservedClaimsMapStrToI["issuer"]; ok && !isIntfNil(v) && !issuerValidationTypeFound { issuerValidationTypeFound = true - issuerValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_Issuer{} + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Issuer{} reservedClaims.IssuerValidation = issuerValidationInt @@ -25929,7 +27024,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa issuerValidationTypeFound = true if v.(bool) { - issuerValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_IssuerDisable{} + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_IssuerDisable{} issuerValidationInt.IssuerDisable = &ves_io_schema.Empty{} reservedClaims.IssuerValidation = issuerValidationInt } @@ -25943,7 +27038,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validatePeriodTypeFound = true if v.(bool) { - validatePeriodInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodDisable{} + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodDisable{} validatePeriodInt.ValidatePeriodDisable = &ves_io_schema.Empty{} reservedClaims.ValidatePeriod = validatePeriodInt } @@ -25955,7 +27050,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa validatePeriodTypeFound = true if v.(bool) { - validatePeriodInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodEnable{} + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{} validatePeriodInt.ValidatePeriodEnable = &ves_io_schema.Empty{} reservedClaims.ValidatePeriod = validatePeriodInt } @@ -25969,7 +27064,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["target"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - target := &ves_io_schema_views_http_loadbalancer.Target{} + target := &ves_io_schema_views_common_waf.Target{} jwtValidation.Target = target for _, set := range sl { targetMapStrToI := set.(map[string]interface{}) @@ -25981,7 +27076,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa targetTypeFound = true if v.(bool) { - targetInt := &ves_io_schema_views_http_loadbalancer.Target_AllEndpoint{} + targetInt := &ves_io_schema_views_common_waf.Target_AllEndpoint{} targetInt.AllEndpoint = &ves_io_schema.Empty{} target.Target = targetInt } @@ -25991,8 +27086,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := targetMapStrToI["api_groups"]; ok && !isIntfNil(v) && !targetTypeFound { targetTypeFound = true - targetInt := &ves_io_schema_views_http_loadbalancer.Target_ApiGroups{} - targetInt.ApiGroups = &ves_io_schema_views_http_loadbalancer.APIGroups{} + targetInt := &ves_io_schema_views_common_waf.Target_ApiGroups{} + targetInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} target.Target = targetInt sl := v.(*schema.Set).List() @@ -26016,8 +27111,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := targetMapStrToI["base_paths"]; ok && !isIntfNil(v) && !targetTypeFound { targetTypeFound = true - targetInt := &ves_io_schema_views_http_loadbalancer.Target_BasePaths{} - targetInt.BasePaths = &ves_io_schema_views_http_loadbalancer.BasePathsType{} + targetInt := &ves_io_schema_views_common_waf.Target_BasePaths{} + targetInt.BasePaths = &ves_io_schema_views_common_waf.BasePathsType{} target.Target = targetInt sl := v.(*schema.Set).List() @@ -26045,7 +27140,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["token_location"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - tokenLocation := &ves_io_schema_views_http_loadbalancer.TokenLocation{} + tokenLocation := &ves_io_schema_views_common_waf.TokenLocation{} jwtValidation.TokenLocation = tokenLocation for _, set := range sl { tokenLocationMapStrToI := set.(map[string]interface{}) @@ -26057,7 +27152,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa tokenLocationTypeFound = true if v.(bool) { - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_BearerToken{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_BearerToken{} tokenLocationInt.BearerToken = &ves_io_schema.Empty{} tokenLocation.TokenLocation = tokenLocationInt } @@ -26067,7 +27162,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := tokenLocationMapStrToI["cookie"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { tokenLocationTypeFound = true - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_Cookie{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Cookie{} tokenLocation.TokenLocation = tokenLocationInt @@ -26078,7 +27173,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := tokenLocationMapStrToI["header"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { tokenLocationTypeFound = true - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_Header{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Header{} tokenLocation.TokenLocation = tokenLocationInt @@ -26089,7 +27184,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := tokenLocationMapStrToI["query_param"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { tokenLocationTypeFound = true - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_QueryParam{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_QueryParam{} tokenLocation.TokenLocation = tokenLocationInt @@ -26298,6 +27393,18 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -26339,11 +27446,76 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { httpProtocolChoiceTypeFound = true + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema_virtual_host.Http1ProtocolOptions{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} - httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema.Empty{} - httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt } } @@ -27345,6 +28517,18 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -27386,11 +28570,76 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { httpProtocolChoiceTypeFound = true + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema_virtual_host.Http1ProtocolOptions{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} - httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema.Empty{} - httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt } } @@ -27875,7 +29124,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa apiDiscoveryChoiceTypeFound = true apiDiscoveryChoiceInt := &ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableDiscovery{} - apiDiscoveryChoiceInt.EnableDiscovery = &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting{} + apiDiscoveryChoiceInt.EnableDiscovery = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} mlConfigChoiceInt.SingleLbApp.ApiDiscoveryChoice = apiDiscoveryChoiceInt sl := v.(*schema.Set).List() @@ -27905,7 +29154,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -27917,7 +29166,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -28344,111 +29593,6 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } - ddosDetectionChoiceTypeFound := false - - if v, ok := cs["disable_ddos_detection"]; ok && !isIntfNil(v) && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - - if v.(bool) { - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_DisableDdosDetection{} - ddosDetectionChoiceInt.DisableDdosDetection = &ves_io_schema.Empty{} - mlConfigChoiceInt.SingleLbApp.DdosDetectionChoice = ddosDetectionChoiceInt - } - - } - - if v, ok := cs["enable_ddos_detection"]; ok && !isIntfNil(v) && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableDdosDetection{} - ddosDetectionChoiceInt.EnableDdosDetection = &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting{} - mlConfigChoiceInt.SingleLbApp.DdosDetectionChoice = ddosDetectionChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - autoMitigationChoiceTypeFound := false - - if v, ok := cs["disable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - - if v.(bool) { - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_DisableAutoMitigation{} - autoMitigationChoiceInt.DisableAutoMitigation = &ves_io_schema.Empty{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - } - - } - - if v, ok := cs["enable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_EnableAutoMitigation{} - autoMitigationChoiceInt.EnableAutoMitigation = &ves_io_schema_views_http_loadbalancer.AutoMitigationAction{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - actionTypeFound := false - - if v, ok := cs["block"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - - if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{} - actionInt.Block = &ves_io_schema.Empty{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - } - - } - - if v, ok := cs["js_challenge"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_JsChallenge{} - actionInt.JsChallenge = &ves_io_schema_virtual_host.JavascriptChallengeType{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CookieExpiry = uint32(v.(int)) - - } - - if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CustomPage = v.(string) - - } - - if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.JsScriptDelay = uint32(v.(int)) - - } - - } - - } - - } - - } - - } - - } - maliciousUserDetectionChoiceTypeFound := false if v, ok := cs["disable_malicious_user_detection"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { @@ -29412,6 +30556,18 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -29461,11 +30617,76 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := advancedOptionsMapStrToI["http1_config"]; ok && !isIntfNil(v) && !httpProtocolTypeTypeFound { httpProtocolTypeTypeFound = true + httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} + httpProtocolTypeInt.Http1Config = &ves_io_schema_cluster.Http1ProtocolOptions{} + advancedOptions.HttpProtocolType = httpProtocolTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolTypeInt.Http1Config.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} - httpProtocolTypeInt.Http1Config = &ves_io_schema.Empty{} - advancedOptions.HttpProtocolType = httpProtocolTypeInt } } @@ -29601,6 +30822,44 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + proxyProtocolChoiceTypeFound := false + + if v, ok := advancedOptionsMapStrToI["disable_proxy_protocol"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableProxyProtocol{} + proxyProtocolChoiceInt.DisableProxyProtocol = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v1"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV1{} + proxyProtocolChoiceInt.ProxyProtocolV1 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v2"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV2{} + proxyProtocolChoiceInt.ProxyProtocolV2 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + subsetChoiceTypeFound := false if v, ok := advancedOptionsMapStrToI["disable_subsets"]; ok && !isIntfNil(v) && !subsetChoiceTypeFound { @@ -30151,6 +31410,39 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateIP_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateIp.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + privateIpChoiceTypeFound := false if v, ok := cs["ip"]; ok && !isIntfNil(v) && !privateIpChoiceTypeFound { @@ -30302,6 +31594,39 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateName_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateName.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["refresh_interval"]; ok && !isIntfNil(v) { choiceInt.PrivateName.RefreshInterval = uint32(v.(int)) @@ -31803,7 +33128,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa rateLimitChoiceTypeFound = true rateLimitChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_ApiRateLimit{} - rateLimitChoiceInt.ApiRateLimit = &ves_io_schema_views_http_loadbalancer.APIRateLimit{} + rateLimitChoiceInt.ApiRateLimit = &ves_io_schema_views_common_waf.APIRateLimit{} createSpec.RateLimitChoice = rateLimitChoiceInt sl := v.(*schema.Set).List() @@ -31813,10 +33138,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["api_endpoint_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - apiEndpointRules := make([]*ves_io_schema_views_http_loadbalancer.ApiEndpointRule, len(sl)) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.ApiEndpointRule, len(sl)) rateLimitChoiceInt.ApiRateLimit.ApiEndpointRules = apiEndpointRules for i, set := range sl { - apiEndpointRules[i] = &ves_io_schema_views_http_loadbalancer.ApiEndpointRule{} + apiEndpointRules[i] = &ves_io_schema_views_common_waf.ApiEndpointRule{} apiEndpointRulesMapStrToI := set.(map[string]interface{}) if v, ok := apiEndpointRulesMapStrToI["api_endpoint_method"]; ok && !isIntfNil(v) { @@ -32144,7 +33469,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} apiEndpointRules[i].DomainChoice = domainChoiceInt } @@ -32154,7 +33479,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_SpecificDomain{} apiEndpointRules[i].DomainChoice = domainChoiceInt @@ -32167,8 +33492,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_InlineRateLimiter{} - rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_http_loadbalancer.InlineRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt sl := v.(*schema.Set).List() @@ -32180,7 +33505,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { countByChoiceTypeFound = true - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_RefUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt @@ -32215,7 +33540,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa countByChoiceTypeFound = true if v.(bool) { - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt } @@ -32241,7 +33566,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_RefRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_RefRateLimiter{} rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt @@ -32485,6 +33810,98 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -32601,8 +34018,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_BypassRateLimitingRules{} - ipAllowedListChoiceInt.BypassRateLimitingRules = &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRules{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_BypassRateLimitingRules{} + ipAllowedListChoiceInt.BypassRateLimitingRules = &ves_io_schema_views_common_waf.BypassRateLimitingRules{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt sl := v.(*schema.Set).List() @@ -32612,10 +34029,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - bypassRateLimitingRules := make([]*ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule, len(sl)) + bypassRateLimitingRules := make([]*ves_io_schema_views_common_waf.BypassRateLimitingRule, len(sl)) ipAllowedListChoiceInt.BypassRateLimitingRules.BypassRateLimitingRules = bypassRateLimitingRules for i, set := range sl { - bypassRateLimitingRules[i] = &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule{} + bypassRateLimitingRules[i] = &ves_io_schema_views_common_waf.BypassRateLimitingRule{} bypassRateLimitingRulesMapStrToI := set.(map[string]interface{}) if v, ok := bypassRateLimitingRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { @@ -32909,7 +34326,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa destinationTypeTypeFound = true if v.(bool) { - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyUrl{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{} destinationTypeInt.AnyUrl = &ves_io_schema.Empty{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt } @@ -32919,8 +34336,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { destinationTypeTypeFound = true - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_ApiEndpoint{} - destinationTypeInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiEndpoint{} + destinationTypeInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt sl := v.(*schema.Set).List() @@ -32950,8 +34367,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["api_groups"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { destinationTypeTypeFound = true - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_ApiGroups{} - destinationTypeInt.ApiGroups = &ves_io_schema_views_http_loadbalancer.APIGroups{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiGroups{} + destinationTypeInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt sl := v.(*schema.Set).List() @@ -32975,7 +34392,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { destinationTypeTypeFound = true - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_BasePath{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_BasePath{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt @@ -32990,7 +34407,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} bypassRateLimitingRules[i].DomainChoice = domainChoiceInt } @@ -33000,7 +34417,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_SpecificDomain{} bypassRateLimitingRules[i].DomainChoice = domainChoiceInt @@ -33222,6 +34639,98 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -33340,8 +34849,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_CustomIpAllowedList{} - ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_http_loadbalancer.CustomIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt sl := v.(*schema.Set).List() @@ -33381,7 +34890,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_IpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_IpAllowedList{} ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt @@ -33418,7 +34927,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa ipAllowedListChoiceTypeFound = true if v.(bool) { - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_NoIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{} ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt } @@ -33428,10 +34937,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["server_url_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - serverUrlRules := make([]*ves_io_schema_views_http_loadbalancer.ServerUrlRule, len(sl)) + serverUrlRules := make([]*ves_io_schema_views_common_waf.ServerUrlRule, len(sl)) rateLimitChoiceInt.ApiRateLimit.ServerUrlRules = serverUrlRules for i, set := range sl { - serverUrlRules[i] = &ves_io_schema_views_http_loadbalancer.ServerUrlRule{} + serverUrlRules[i] = &ves_io_schema_views_common_waf.ServerUrlRule{} serverUrlRulesMapStrToI := set.(map[string]interface{}) if w, ok := serverUrlRulesMapStrToI["api_group"]; ok && !isIntfNil(w) { @@ -33733,7 +35242,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} serverUrlRules[i].DomainChoice = domainChoiceInt } @@ -33743,7 +35252,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := serverUrlRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_SpecificDomain{} serverUrlRules[i].DomainChoice = domainChoiceInt @@ -33756,8 +35265,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := serverUrlRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_InlineRateLimiter{} - rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_http_loadbalancer.InlineRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt sl := v.(*schema.Set).List() @@ -33769,7 +35278,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { countByChoiceTypeFound = true - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_RefUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt @@ -33804,7 +35313,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa countByChoiceTypeFound = true if v.(bool) { - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt } @@ -33830,7 +35339,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := serverUrlRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_RefRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_RefRateLimiter{} rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt @@ -34074,6 +35583,98 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -34205,7 +35806,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa rateLimitChoiceTypeFound = true rateLimitChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_RateLimit{} - rateLimitChoiceInt.RateLimit = &ves_io_schema_views_http_loadbalancer.RateLimitConfigType{} + rateLimitChoiceInt.RateLimit = &ves_io_schema_views_common_waf.RateLimitConfigType{} createSpec.RateLimitChoice = rateLimitChoiceInt sl := v.(*schema.Set).List() @@ -34217,8 +35818,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_CustomIpAllowedList{} - ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_http_loadbalancer.CustomIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt sl := v.(*schema.Set).List() @@ -34258,7 +35859,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_IpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_IpAllowedList{} ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt @@ -34295,7 +35896,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa ipAllowedListChoiceTypeFound = true if v.(bool) { - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{} ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt } @@ -34309,7 +35910,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa policyChoiceTypeFound = true if v.(bool) { - policyChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoPolicies{} + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{} policyChoiceInt.NoPolicies = &ves_io_schema.Empty{} rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt } @@ -34319,7 +35920,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := cs["policies"]; ok && !isIntfNil(v) && !policyChoiceTypeFound { policyChoiceTypeFound = true - policyChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_Policies{} + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_Policies{} policyChoiceInt.Policies = &ves_io_schema_views_rate_limiter_policy.PolicyList{} rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt @@ -36535,7 +38136,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa servicePolicyChoiceTypeFound = true servicePolicyChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_ActiveServicePolicies{} - servicePolicyChoiceInt.ActiveServicePolicies = &ves_io_schema_views_http_loadbalancer.ServicePolicyList{} + servicePolicyChoiceInt.ActiveServicePolicies = &ves_io_schema_views_common_waf.ServicePolicyList{} createSpec.ServicePolicyChoice = servicePolicyChoiceInt sl := v.(*schema.Set).List() @@ -36658,30 +38259,30 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa } - //threat_intelligence_choice + //threat_mesh_choice - threatIntelligenceChoiceTypeFound := false + threatMeshChoiceTypeFound := false - if v, ok := d.GetOk("disable_threat_intelligence"); ok && !threatIntelligenceChoiceTypeFound { + if v, ok := d.GetOk("disable_threat_mesh"); ok && !threatMeshChoiceTypeFound { - threatIntelligenceChoiceTypeFound = true + threatMeshChoiceTypeFound = true if v.(bool) { - threatIntelligenceChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_DisableThreatIntelligence{} - threatIntelligenceChoiceInt.DisableThreatIntelligence = &ves_io_schema.Empty{} - createSpec.ThreatIntelligenceChoice = threatIntelligenceChoiceInt + threatMeshChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_DisableThreatMesh{} + threatMeshChoiceInt.DisableThreatMesh = &ves_io_schema.Empty{} + createSpec.ThreatMeshChoice = threatMeshChoiceInt } } - if v, ok := d.GetOk("enable_threat_intelligence"); ok && !threatIntelligenceChoiceTypeFound { + if v, ok := d.GetOk("enable_threat_mesh"); ok && !threatMeshChoiceTypeFound { - threatIntelligenceChoiceTypeFound = true + threatMeshChoiceTypeFound = true if v.(bool) { - threatIntelligenceChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_EnableThreatIntelligence{} - threatIntelligenceChoiceInt.EnableThreatIntelligence = &ves_io_schema.Empty{} - createSpec.ThreatIntelligenceChoice = threatIntelligenceChoiceInt + threatMeshChoiceInt := &ves_io_schema_views_http_loadbalancer.CreateSpecType_EnableThreatMesh{} + threatMeshChoiceInt.EnableThreatMesh = &ves_io_schema.Empty{} + createSpec.ThreatMeshChoice = threatMeshChoiceInt } } @@ -36731,10 +38332,10 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("trusted_clients"); ok && !isIntfNil(v) { sl := v.([]interface{}) - trustedClients := make([]*ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule, len(sl)) + trustedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) createSpec.TrustedClients = trustedClients for i, set := range sl { - trustedClients[i] = &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule{} + trustedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} trustedClientsMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -36744,7 +38345,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} trustedClients[i].ActionChoice = actionChoiceInt } @@ -36756,7 +38357,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} trustedClients[i].ActionChoice = actionChoiceInt } @@ -36768,7 +38369,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} trustedClients[i].ActionChoice = actionChoiceInt } @@ -36777,9 +38378,9 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { - actionsList := []ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction{} + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} for _, j := range v.([]interface{}) { - actionsList = append(actionsList, ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction(ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction_value[j.(string)])) + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) } trustedClients[i].Actions = actionsList @@ -36790,7 +38391,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_AsNumber{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -36801,8 +38402,8 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_HttpHeader{} - clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_http_loadbalancer.HttpHeaderMatcherList{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt sl := v.(*schema.Set).List() @@ -36872,7 +38473,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_IpPrefix{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -36883,7 +38484,7 @@ func resourceVolterraHttpLoadbalancerCreate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_UserIdentifier{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -37330,6 +38931,8 @@ func setHttpLoadbalancerFields(client *APIClient, d *schema.ResourceData, resp v d.Set("namespace", metadata.GetNamespace()) + drift.DriftDetectionSpec(d, resp) + return nil } @@ -37474,6 +39077,81 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := advertiseWhereMapStrToI["site_segment"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_SiteSegment{} + choiceInt.SiteSegment = &ves_io_schema_views.WhereSiteSegment{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ipv6 = v.(string) + + } + + if v, ok := cs["segment"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segment := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Segment = segment + for _, set := range sl { + segmentMapStrToI := set.(map[string]interface{}) + + if w, ok := segmentMapStrToI["name"]; ok && !isIntfNil(w) { + segment.Name = w.(string) + } + + if w, ok := segmentMapStrToI["namespace"]; ok && !isIntfNil(w) { + segment.Namespace = w.(string) + } + + if w, ok := segmentMapStrToI["tenant"]; ok && !isIntfNil(w) { + segment.Tenant = w.(string) + } + + } + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + if v, ok := advertiseWhereMapStrToI["virtual_network"]; ok && !isIntfNil(v) && !choiceTypeFound { choiceTypeFound = true @@ -37826,7 +39504,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa apiDefinitionChoiceTypeFound = true apiDefinitionChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_ApiDefinitions{} - apiDefinitionChoiceInt.ApiDefinitions = &ves_io_schema_views_http_loadbalancer.ApiDefinitionList{} + apiDefinitionChoiceInt.ApiDefinitions = &ves_io_schema_views_common_waf.ApiDefinitionList{} updateSpec.ApiDefinitionChoice = apiDefinitionChoiceInt sl := v.(*schema.Set).List() @@ -37867,7 +39545,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa apiDefinitionChoiceTypeFound = true apiDefinitionChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_ApiSpecification{} - apiDefinitionChoiceInt.ApiSpecification = &ves_io_schema_views_http_loadbalancer.APISpecificationSettings{} + apiDefinitionChoiceInt.ApiSpecification = &ves_io_schema_views_common_waf.APISpecificationSettings{} updateSpec.ApiDefinitionChoice = apiDefinitionChoiceInt sl := v.(*schema.Set).List() @@ -37901,8 +39579,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["validation_all_spec_endpoints"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { validationTargetChoiceTypeFound = true - validationTargetChoiceInt := &ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationAllSpecEndpoints{} - validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings{} + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationAllSpecEndpoints{} + validationTargetChoiceInt.ValidationAllSpecEndpoints = &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings{} apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt sl := v.(*schema.Set).List() @@ -37912,7 +39590,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - fallThroughMode := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode{} + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} validationTargetChoiceInt.ValidationAllSpecEndpoints.FallThroughMode = fallThroughMode for _, set := range sl { fallThroughModeMapStrToI := set.(map[string]interface{}) @@ -37924,7 +39602,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa fallThroughModeChoiceTypeFound = true if v.(bool) { - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt } @@ -37934,8 +39612,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { fallThroughModeChoiceTypeFound = true - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeCustom{} - fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_http_loadbalancer.CustomFallThroughMode{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt sl := v.(*schema.Set).List() @@ -37945,10 +39623,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - openApiValidationRules := make([]*ves_io_schema_views_http_loadbalancer.FallThroughRule, len(sl)) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules for i, set := range sl { - openApiValidationRules[i] = &ves_io_schema_views_http_loadbalancer.FallThroughRule{} + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} openApiValidationRulesMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -37958,7 +39636,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionBlock{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -37970,7 +39648,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} actionChoiceInt.ActionReport = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -37982,7 +39660,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionSkip{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -37994,8 +39672,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiEndpoint{} - conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt sl := v.(*schema.Set).List() @@ -38025,7 +39703,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiGroup{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -38036,7 +39714,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_BasePath{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -38087,7 +39765,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38099,7 +39777,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationAllSpecEndpointsSettings_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationAllSpecEndpoints.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38109,7 +39787,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["settings"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - settings := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings{} + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} validationTargetChoiceInt.ValidationAllSpecEndpoints.Settings = settings for _, set := range sl { settingsMapStrToI := set.(map[string]interface{}) @@ -38121,7 +39799,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38133,7 +39811,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38145,8 +39823,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { propertyValidationSettingsChoiceTypeFound = true - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} - propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_http_loadbalancer.ValidationPropertySetting{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt sl := v.(*schema.Set).List() @@ -38156,7 +39834,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["headers"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - headers := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders{} + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers for _, set := range sl { headersMapStrToI := set.(map[string]interface{}) @@ -38168,7 +39846,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -38180,7 +39858,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -38194,7 +39872,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - queryParameters := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters{} + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters for _, set := range sl { queryParametersMapStrToI := set.(map[string]interface{}) @@ -38206,7 +39884,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -38218,7 +39896,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -38238,7 +39916,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa propertyValidationSettingsChoiceTypeFound = true if v.(bool) { - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt } @@ -38252,7 +39930,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["validation_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - validationMode := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode{} + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} validationTargetChoiceInt.ValidationAllSpecEndpoints.ValidationMode = validationMode for _, set := range sl { validationModeMapStrToI := set.(map[string]interface{}) @@ -38262,8 +39940,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { responseValidationModeChoiceTypeFound = true - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ResponseValidationModeActive{} - responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt sl := v.(*schema.Set).List() @@ -38287,7 +39965,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38299,7 +39977,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38315,7 +39993,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa responseValidationModeChoiceTypeFound = true if v.(bool) { - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt } @@ -38329,7 +40007,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationModeChoiceTypeFound = true if v.(bool) { - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} validationMode.ValidationModeChoice = validationModeChoiceInt } @@ -38339,8 +40017,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { validationModeChoiceTypeFound = true - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ValidationModeActive{} - validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} validationMode.ValidationModeChoice = validationModeChoiceInt sl := v.(*schema.Set).List() @@ -38364,7 +40042,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38376,7 +40054,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38398,8 +40076,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["validation_custom_list"]; ok && !isIntfNil(v) && !validationTargetChoiceTypeFound { validationTargetChoiceTypeFound = true - validationTargetChoiceInt := &ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationCustomList{} - validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_http_loadbalancer.ValidateApiBySpecRule{} + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationCustomList{} + validationTargetChoiceInt.ValidationCustomList = &ves_io_schema_views_common_waf.ValidateApiBySpecRule{} apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt sl := v.(*schema.Set).List() @@ -38409,7 +40087,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["fall_through_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - fallThroughMode := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode{} + fallThroughMode := &ves_io_schema_views_common_waf.OpenApiFallThroughMode{} validationTargetChoiceInt.ValidationCustomList.FallThroughMode = fallThroughMode for _, set := range sl { fallThroughModeMapStrToI := set.(map[string]interface{}) @@ -38421,7 +40099,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa fallThroughModeChoiceTypeFound = true if v.(bool) { - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeAllow{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeAllow{} fallThroughModeChoiceInt.FallThroughModeAllow = &ves_io_schema.Empty{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt } @@ -38431,8 +40109,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := fallThroughModeMapStrToI["fall_through_mode_custom"]; ok && !isIntfNil(v) && !fallThroughModeChoiceTypeFound { fallThroughModeChoiceTypeFound = true - fallThroughModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiFallThroughMode_FallThroughModeCustom{} - fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_http_loadbalancer.CustomFallThroughMode{} + fallThroughModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiFallThroughMode_FallThroughModeCustom{} + fallThroughModeChoiceInt.FallThroughModeCustom = &ves_io_schema_views_common_waf.CustomFallThroughMode{} fallThroughMode.FallThroughModeChoice = fallThroughModeChoiceInt sl := v.(*schema.Set).List() @@ -38442,10 +40120,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - openApiValidationRules := make([]*ves_io_schema_views_http_loadbalancer.FallThroughRule, len(sl)) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.FallThroughRule, len(sl)) fallThroughModeChoiceInt.FallThroughModeCustom.OpenApiValidationRules = openApiValidationRules for i, set := range sl { - openApiValidationRules[i] = &ves_io_schema_views_http_loadbalancer.FallThroughRule{} + openApiValidationRules[i] = &ves_io_schema_views_common_waf.FallThroughRule{} openApiValidationRulesMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -38455,7 +40133,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionBlock{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionBlock{} actionChoiceInt.ActionBlock = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -38467,7 +40145,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionReport{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionReport{} actionChoiceInt.ActionReport = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -38479,7 +40157,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ActionSkip{} + actionChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ActionSkip{} actionChoiceInt.ActionSkip = &ves_io_schema.Empty{} openApiValidationRules[i].ActionChoice = actionChoiceInt } @@ -38491,8 +40169,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiEndpoint{} - conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt sl := v.(*schema.Set).List() @@ -38522,7 +40200,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_ApiGroup{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_ApiGroup{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -38533,7 +40211,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.FallThroughRule_BasePath{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.FallThroughRule_BasePath{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -38580,10 +40258,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["open_api_validation_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - openApiValidationRules := make([]*ves_io_schema_views_http_loadbalancer.OpenApiValidationRule, len(sl)) + openApiValidationRules := make([]*ves_io_schema_views_common_waf.OpenApiValidationRule, len(sl)) validationTargetChoiceInt.ValidationCustomList.OpenApiValidationRules = openApiValidationRules for i, set := range sl { - openApiValidationRules[i] = &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule{} + openApiValidationRules[i] = &ves_io_schema_views_common_waf.OpenApiValidationRule{} openApiValidationRulesMapStrToI := set.(map[string]interface{}) conditionTypeChoiceTypeFound := false @@ -38591,8 +40269,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_ApiEndpoint{} - conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiEndpoint{} + conditionTypeChoiceInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt sl := v.(*schema.Set).List() @@ -38622,7 +40300,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["api_group"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_ApiGroup{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_ApiGroup{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -38633,7 +40311,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !conditionTypeChoiceTypeFound { conditionTypeChoiceTypeFound = true - conditionTypeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_BasePath{} + conditionTypeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_BasePath{} openApiValidationRules[i].ConditionTypeChoice = conditionTypeChoiceInt @@ -38648,7 +40326,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} openApiValidationRules[i].DomainChoice = domainChoiceInt } @@ -38658,7 +40336,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationRule_SpecificDomain{} openApiValidationRules[i].DomainChoice = domainChoiceInt @@ -38693,7 +40371,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := openApiValidationRulesMapStrToI["validation_mode"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - validationMode := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode{} + validationMode := &ves_io_schema_views_common_waf.OpenApiValidationMode{} openApiValidationRules[i].ValidationMode = validationMode for _, set := range sl { validationModeMapStrToI := set.(map[string]interface{}) @@ -38703,8 +40381,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["response_validation_mode_active"]; ok && !isIntfNil(v) && !responseValidationModeChoiceTypeFound { responseValidationModeChoiceTypeFound = true - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ResponseValidationModeActive{} - responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ResponseValidationModeActive{} + responseValidationModeChoiceInt.ResponseValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt sl := v.(*schema.Set).List() @@ -38728,7 +40406,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38740,7 +40418,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActiveResponse_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActiveResponse_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} responseValidationModeChoiceInt.ResponseValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38756,7 +40434,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa responseValidationModeChoiceTypeFound = true if v.(bool) { - responseValidationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipResponseValidation{} + responseValidationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipResponseValidation{} responseValidationModeChoiceInt.SkipResponseValidation = &ves_io_schema.Empty{} validationMode.ResponseValidationModeChoice = responseValidationModeChoiceInt } @@ -38770,7 +40448,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationModeChoiceTypeFound = true if v.(bool) { - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_SkipValidation{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_SkipValidation{} validationModeChoiceInt.SkipValidation = &ves_io_schema.Empty{} validationMode.ValidationModeChoice = validationModeChoiceInt } @@ -38780,8 +40458,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := validationModeMapStrToI["validation_mode_active"]; ok && !isIntfNil(v) && !validationModeChoiceTypeFound { validationModeChoiceTypeFound = true - validationModeChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationMode_ValidationModeActive{} - validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive{} + validationModeChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationMode_ValidationModeActive{} + validationModeChoiceInt.ValidationModeActive = &ves_io_schema_views_common_waf.OpenApiValidationModeActive{} validationMode.ValidationModeChoice = validationModeChoiceInt sl := v.(*schema.Set).List() @@ -38805,7 +40483,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementBlock{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementBlock{} validationEnforcementTypeInt.EnforcementBlock = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38817,7 +40495,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationEnforcementTypeTypeFound = true if v.(bool) { - validationEnforcementTypeInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationModeActive_EnforcementReport{} + validationEnforcementTypeInt := &ves_io_schema_views_common_waf.OpenApiValidationModeActive_EnforcementReport{} validationEnforcementTypeInt.EnforcementReport = &ves_io_schema.Empty{} validationModeChoiceInt.ValidationModeActive.ValidationEnforcementType = validationEnforcementTypeInt } @@ -38843,7 +40521,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidateApiBySpecRule_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38855,7 +40533,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidateApiBySpecRule_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.ValidateApiBySpecRule_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} validationTargetChoiceInt.ValidationCustomList.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38865,7 +40543,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["settings"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - settings := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings{} + settings := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings{} validationTargetChoiceInt.ValidationCustomList.Settings = settings for _, set := range sl { settingsMapStrToI := set.(map[string]interface{}) @@ -38877,7 +40555,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodyFailValidation{} oversizedBodyChoiceInt.OversizedBodyFailValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38889,7 +40567,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa oversizedBodyChoiceTypeFound = true if v.(bool) { - oversizedBodyChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} + oversizedBodyChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_OversizedBodySkipValidation{} oversizedBodyChoiceInt.OversizedBodySkipValidation = &ves_io_schema.Empty{} settings.OversizedBodyChoice = oversizedBodyChoiceInt } @@ -38901,8 +40579,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := settingsMapStrToI["property_validation_settings_custom"]; ok && !isIntfNil(v) && !propertyValidationSettingsChoiceTypeFound { propertyValidationSettingsChoiceTypeFound = true - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} - propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_http_loadbalancer.ValidationPropertySetting{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsCustom{} + propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom = &ves_io_schema_views_common_waf.ValidationPropertySetting{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt sl := v.(*schema.Set).List() @@ -38912,7 +40590,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["headers"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - headers := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders{} + headers := &ves_io_schema_views_common_waf.ValidationSettingForHeaders{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.Headers = headers for _, set := range sl { headersMapStrToI := set.(map[string]interface{}) @@ -38924,7 +40602,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_AllowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_AllowAdditionalHeaders{} additionalHeadersChoiceInt.AllowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -38936,7 +40614,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalHeadersChoiceTypeFound = true if v.(bool) { - additionalHeadersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForHeaders_DisallowAdditionalHeaders{} + additionalHeadersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForHeaders_DisallowAdditionalHeaders{} additionalHeadersChoiceInt.DisallowAdditionalHeaders = &ves_io_schema.Empty{} headers.AdditionalHeadersChoice = additionalHeadersChoiceInt } @@ -38950,7 +40628,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["query_parameters"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - queryParameters := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters{} + queryParameters := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsCustom.QueryParameters = queryParameters for _, set := range sl { queryParametersMapStrToI := set.(map[string]interface{}) @@ -38962,7 +40640,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_AllowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_AllowAdditionalParameters{} additionalParametersChoiceInt.AllowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -38974,7 +40652,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa additionalParametersChoiceTypeFound = true if v.(bool) { - additionalParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} + additionalParametersChoiceInt := &ves_io_schema_views_common_waf.ValidationSettingForQueryParameters_DisallowAdditionalParameters{} additionalParametersChoiceInt.DisallowAdditionalParameters = &ves_io_schema.Empty{} queryParameters.AdditionalParametersChoice = additionalParametersChoiceInt } @@ -38994,7 +40672,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa propertyValidationSettingsChoiceTypeFound = true if v.(bool) { - propertyValidationSettingsChoiceInt := &ves_io_schema_views_http_loadbalancer.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} + propertyValidationSettingsChoiceInt := &ves_io_schema_views_common_waf.OpenApiValidationCommonSettings_PropertyValidationSettingsDefault{} propertyValidationSettingsChoiceInt.PropertyValidationSettingsDefault = &ves_io_schema.Empty{} settings.PropertyValidationSettingsChoice = propertyValidationSettingsChoiceInt } @@ -39014,7 +40692,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validationTargetChoiceTypeFound = true if v.(bool) { - validationTargetChoiceInt := &ves_io_schema_views_http_loadbalancer.APISpecificationSettings_ValidationDisabled{} + validationTargetChoiceInt := &ves_io_schema_views_common_waf.APISpecificationSettings_ValidationDisabled{} validationTargetChoiceInt.ValidationDisabled = &ves_io_schema.Empty{} apiDefinitionChoiceInt.ApiSpecification.ValidationTargetChoice = validationTargetChoiceInt } @@ -39055,7 +40733,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa apiDiscoveryChoiceTypeFound = true apiDiscoveryChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_EnableApiDiscovery{} - apiDiscoveryChoiceInt.EnableApiDiscovery = &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting{} + apiDiscoveryChoiceInt.EnableApiDiscovery = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} updateSpec.ApiDiscoveryChoice = apiDiscoveryChoiceInt sl := v.(*schema.Set).List() @@ -39085,7 +40763,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -39097,7 +40775,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableApiDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -39527,7 +41205,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("api_protection_rules"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - apiProtectionRules := &ves_io_schema_views_http_loadbalancer.APIProtectionRules{} + apiProtectionRules := &ves_io_schema_views_common_waf.APIProtectionRules{} updateSpec.ApiProtectionRules = apiProtectionRules for _, set := range sl { apiProtectionRulesMapStrToI := set.(map[string]interface{}) @@ -39535,16 +41213,16 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiProtectionRulesMapStrToI["api_endpoint_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - apiEndpointRules := make([]*ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule, len(sl)) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.APIEndpointProtectionRule, len(sl)) apiProtectionRules.ApiEndpointRules = apiEndpointRules for i, set := range sl { - apiEndpointRules[i] = &ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule{} + apiEndpointRules[i] = &ves_io_schema_views_common_waf.APIEndpointProtectionRule{} apiEndpointRulesMapStrToI := set.(map[string]interface{}) if v, ok := apiEndpointRulesMapStrToI["action"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - action := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction{} + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} apiEndpointRules[i].Action = action for _, set := range sl { actionMapStrToI := set.(map[string]interface{}) @@ -39556,7 +41234,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} actionInt.Allow = &ves_io_schema.Empty{} action.Action = actionInt } @@ -39568,7 +41246,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Deny{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} actionInt.Deny = &ves_io_schema.Empty{} action.Action = actionInt } @@ -39900,7 +41578,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} apiEndpointRules[i].DomainChoice = domainChoiceInt } @@ -39910,7 +41588,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIEndpointProtectionRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIEndpointProtectionRule_SpecificDomain{} apiEndpointRules[i].DomainChoice = domainChoiceInt @@ -40156,6 +41834,98 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -40270,16 +42040,16 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiProtectionRulesMapStrToI["api_groups_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - apiGroupsRules := make([]*ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule, len(sl)) + apiGroupsRules := make([]*ves_io_schema_views_common_waf.APIGroupProtectionRule, len(sl)) apiProtectionRules.ApiGroupsRules = apiGroupsRules for i, set := range sl { - apiGroupsRules[i] = &ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule{} + apiGroupsRules[i] = &ves_io_schema_views_common_waf.APIGroupProtectionRule{} apiGroupsRulesMapStrToI := set.(map[string]interface{}) if v, ok := apiGroupsRulesMapStrToI["action"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - action := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction{} + action := &ves_io_schema_views_common_waf.APIProtectionRuleAction{} apiGroupsRules[i].Action = action for _, set := range sl { actionMapStrToI := set.(map[string]interface{}) @@ -40291,7 +42061,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Allow{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Allow{} actionInt.Allow = &ves_io_schema.Empty{} action.Action = actionInt } @@ -40303,7 +42073,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionTypeFound = true if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.APIProtectionRuleAction_Deny{} + actionInt := &ves_io_schema_views_common_waf.APIProtectionRuleAction_Deny{} actionInt.Deny = &ves_io_schema.Empty{} action.Action = actionInt } @@ -40613,7 +42383,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} apiGroupsRules[i].DomainChoice = domainChoiceInt } @@ -40623,7 +42393,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiGroupsRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.APIGroupProtectionRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.APIGroupProtectionRule_SpecificDomain{} apiGroupsRules[i].DomainChoice = domainChoiceInt @@ -40869,6 +42639,98 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -40987,10 +42849,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("blocked_clients"); ok && !isIntfNil(v) { sl := v.([]interface{}) - blockedClients := make([]*ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule, len(sl)) + blockedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) updateSpec.BlockedClients = blockedClients for i, set := range sl { - blockedClients[i] = &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule{} + blockedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} blockedClientsMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -41000,7 +42862,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} blockedClients[i].ActionChoice = actionChoiceInt } @@ -41012,7 +42874,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} blockedClients[i].ActionChoice = actionChoiceInt } @@ -41024,7 +42886,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} blockedClients[i].ActionChoice = actionChoiceInt } @@ -41033,9 +42895,9 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { - actionsList := []ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction{} + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} for _, j := range v.([]interface{}) { - actionsList = append(actionsList, ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction(ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction_value[j.(string)])) + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) } blockedClients[i].Actions = actionsList @@ -41046,7 +42908,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_AsNumber{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -41057,8 +42919,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_HttpHeader{} - clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_http_loadbalancer.HttpHeaderMatcherList{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt sl := v.(*schema.Set).List() @@ -41128,7 +42990,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_IpPrefix{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -41139,7 +43001,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := blockedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_UserIdentifier{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} blockedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -44189,7 +46051,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa challengeTypeTypeFound = true challengeTypeInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_EnableChallenge{} - challengeTypeInt.EnableChallenge = &ves_io_schema_views_http_loadbalancer.EnableChallenge{} + challengeTypeInt.EnableChallenge = &ves_io_schema_views_common_waf.EnableChallenge{} updateSpec.ChallengeType = challengeTypeInt sl := v.(*schema.Set).List() @@ -44201,7 +46063,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { captchaChallengeParametersChoiceTypeFound = true - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_CaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt @@ -44230,7 +46092,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa captchaChallengeParametersChoiceTypeFound = true if v.(bool) { - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultCaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.EnableChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt } @@ -44244,7 +46106,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa jsChallengeParametersChoiceTypeFound = true if v.(bool) { - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultJsChallengeParameters{} jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt } @@ -44254,7 +46116,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { jsChallengeParametersChoiceTypeFound = true - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_JsChallengeParameters{} jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} challengeTypeInt.EnableChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt @@ -44291,7 +46153,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa maliciousUserMitigationChoiceTypeFound = true if v.(bool) { - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_DefaultMitigationSettings{} maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt } @@ -44301,7 +46163,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { maliciousUserMitigationChoiceTypeFound = true - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.EnableChallenge_MaliciousUserMitigation{} maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} challengeTypeInt.EnableChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt @@ -44384,7 +46246,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa challengeTypeTypeFound = true challengeTypeInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_PolicyBasedChallenge{} - challengeTypeInt.PolicyBasedChallenge = &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge{} + challengeTypeInt.PolicyBasedChallenge = &ves_io_schema_views_common_waf.PolicyBasedChallenge{} updateSpec.ChallengeType = challengeTypeInt sl := v.(*schema.Set).List() @@ -44396,7 +46258,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["captcha_challenge_parameters"]; ok && !isIntfNil(v) && !captchaChallengeParametersChoiceTypeFound { captchaChallengeParametersChoiceTypeFound = true - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_CaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_CaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.CaptchaChallengeParameters = &ves_io_schema_virtual_host.CaptchaChallengeType{} challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt @@ -44425,7 +46287,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa captchaChallengeParametersChoiceTypeFound = true if v.(bool) { - captchaChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{} + captchaChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultCaptchaChallengeParameters{} captchaChallengeParametersChoiceInt.DefaultCaptchaChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.CaptchaChallengeParametersChoice = captchaChallengeParametersChoiceInt } @@ -44439,7 +46301,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa challengeChoiceTypeFound = true if v.(bool) { - challengeChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{} + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableCaptchaChallenge{} challengeChoiceInt.AlwaysEnableCaptchaChallenge = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt } @@ -44451,7 +46313,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa challengeChoiceTypeFound = true if v.(bool) { - challengeChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_AlwaysEnableJsChallenge{} + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_AlwaysEnableJsChallenge{} challengeChoiceInt.AlwaysEnableJsChallenge = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt } @@ -44463,7 +46325,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa challengeChoiceTypeFound = true if v.(bool) { - challengeChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_NoChallenge{} + challengeChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_NoChallenge{} challengeChoiceInt.NoChallenge = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.ChallengeChoice = challengeChoiceInt } @@ -44477,7 +46339,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa jsChallengeParametersChoiceTypeFound = true if v.(bool) { - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultJsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultJsChallengeParameters{} jsChallengeParametersChoiceInt.DefaultJsChallengeParameters = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt } @@ -44487,7 +46349,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["js_challenge_parameters"]; ok && !isIntfNil(v) && !jsChallengeParametersChoiceTypeFound { jsChallengeParametersChoiceTypeFound = true - jsChallengeParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_JsChallengeParameters{} + jsChallengeParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_JsChallengeParameters{} jsChallengeParametersChoiceInt.JsChallengeParameters = &ves_io_schema_virtual_host.JavascriptChallengeType{} challengeTypeInt.PolicyBasedChallenge.JsChallengeParametersChoice = jsChallengeParametersChoiceInt @@ -44524,7 +46386,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa maliciousUserMitigationChoiceTypeFound = true if v.(bool) { - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultMitigationSettings{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultMitigationSettings{} maliciousUserMitigationChoiceInt.DefaultMitigationSettings = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt } @@ -44534,7 +46396,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["malicious_user_mitigation"]; ok && !isIntfNil(v) && !maliciousUserMitigationChoiceTypeFound { maliciousUserMitigationChoiceTypeFound = true - maliciousUserMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_MaliciousUserMitigation{} + maliciousUserMitigationChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_MaliciousUserMitigation{} maliciousUserMitigationChoiceInt.MaliciousUserMitigation = &ves_io_schema_views.ObjectRefType{} challengeTypeInt.PolicyBasedChallenge.MaliciousUserMitigationChoice = maliciousUserMitigationChoiceInt @@ -44567,7 +46429,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["rule_list"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - ruleList := &ves_io_schema_views_http_loadbalancer.ChallengeRuleList{} + ruleList := &ves_io_schema_views_common_waf.ChallengeRuleList{} challengeTypeInt.PolicyBasedChallenge.RuleList = ruleList for _, set := range sl { ruleListMapStrToI := set.(map[string]interface{}) @@ -44575,10 +46437,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := ruleListMapStrToI["rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - rules := make([]*ves_io_schema_views_http_loadbalancer.ChallengeRule, len(sl)) + rules := make([]*ves_io_schema_views_common_waf.ChallengeRule, len(sl)) ruleList.Rules = rules for i, set := range sl { - rules[i] = &ves_io_schema_views_http_loadbalancer.ChallengeRule{} + rules[i] = &ves_io_schema_views_common_waf.ChallengeRule{} rulesMapStrToI := set.(map[string]interface{}) if v, ok := rulesMapStrToI["metadata"]; ok && !isIntfNil(v) { @@ -45557,7 +47419,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa temporaryBlockingParametersChoiceTypeFound = true if v.(bool) { - temporaryBlockingParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{} + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_DefaultTemporaryBlockingParameters{} temporaryBlockingParametersChoiceInt.DefaultTemporaryBlockingParameters = &ves_io_schema.Empty{} challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt } @@ -45567,7 +47429,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["temporary_user_blocking"]; ok && !isIntfNil(v) && !temporaryBlockingParametersChoiceTypeFound { temporaryBlockingParametersChoiceTypeFound = true - temporaryBlockingParametersChoiceInt := &ves_io_schema_views_http_loadbalancer.PolicyBasedChallenge_TemporaryUserBlocking{} + temporaryBlockingParametersChoiceInt := &ves_io_schema_views_common_waf.PolicyBasedChallenge_TemporaryUserBlocking{} temporaryBlockingParametersChoiceInt.TemporaryUserBlocking = &ves_io_schema_virtual_host.TemporaryUserBlockingType{} challengeTypeInt.PolicyBasedChallenge.TemporaryBlockingParametersChoice = temporaryBlockingParametersChoiceInt @@ -46395,111 +48257,6 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } - ddosDetectionChoiceTypeFound := false - - if v, ok := d.GetOk("disable_ddos_detection"); ok && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - - if v.(bool) { - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_DisableDdosDetection{} - ddosDetectionChoiceInt.DisableDdosDetection = &ves_io_schema.Empty{} - updateSpec.DdosDetectionChoice = ddosDetectionChoiceInt - } - - } - - if v, ok := d.GetOk("enable_ddos_detection"); ok && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_EnableDdosDetection{} - ddosDetectionChoiceInt.EnableDdosDetection = &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting{} - updateSpec.DdosDetectionChoice = ddosDetectionChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - autoMitigationChoiceTypeFound := false - - if v, ok := cs["disable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - - if v.(bool) { - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_DisableAutoMitigation{} - autoMitigationChoiceInt.DisableAutoMitigation = &ves_io_schema.Empty{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - } - - } - - if v, ok := cs["enable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_EnableAutoMitigation{} - autoMitigationChoiceInt.EnableAutoMitigation = &ves_io_schema_views_http_loadbalancer.AutoMitigationAction{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - actionTypeFound := false - - if v, ok := cs["block"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - - if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{} - actionInt.Block = &ves_io_schema.Empty{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - } - - } - - if v, ok := cs["js_challenge"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_JsChallenge{} - actionInt.JsChallenge = &ves_io_schema_virtual_host.JavascriptChallengeType{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CookieExpiry = uint32(v.(int)) - - } - - if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CustomPage = v.(string) - - } - - if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.JsScriptDelay = uint32(v.(int)) - - } - - } - - } - - } - - } - - } - - } - if v, ok := d.GetOk("ddos_mitigation_rules"); ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -47337,7 +49094,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa ipReputationChoiceTypeFound = true ipReputationChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_EnableIpReputation{} - ipReputationChoiceInt.EnableIpReputation = &ves_io_schema_views_http_loadbalancer.IPThreatCategoryListType{} + ipReputationChoiceInt.EnableIpReputation = &ves_io_schema_views_common_waf.IPThreatCategoryListType{} updateSpec.IpReputationChoice = ipReputationChoiceInt sl := v.(*schema.Set).List() @@ -47361,7 +49118,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("jwt_validation"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - jwtValidation := &ves_io_schema_views_http_loadbalancer.JWTValidation{} + jwtValidation := &ves_io_schema_views_common_waf.JWTValidation{} updateSpec.JwtValidation = jwtValidation for _, set := range sl { jwtValidationMapStrToI := set.(map[string]interface{}) @@ -47409,7 +49166,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["auth_server_uri"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { jwksConfigurationTypeFound = true - jwksConfigurationInt := &ves_io_schema_views_http_loadbalancer.JWTValidation_AuthServerUri{} + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_AuthServerUri{} jwtValidation.JwksConfiguration = jwksConfigurationInt @@ -47420,7 +49177,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["jwks"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { jwksConfigurationTypeFound = true - jwksConfigurationInt := &ves_io_schema_views_http_loadbalancer.JWTValidation_Jwks{} + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_Jwks{} jwtValidation.JwksConfiguration = jwksConfigurationInt @@ -47431,8 +49188,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["jwks_config"]; ok && !isIntfNil(v) && !jwksConfigurationTypeFound { jwksConfigurationTypeFound = true - jwksConfigurationInt := &ves_io_schema_views_http_loadbalancer.JWTValidation_JwksConfig{} - jwksConfigurationInt.JwksConfig = &ves_io_schema_views_http_loadbalancer.JWKS{} + jwksConfigurationInt := &ves_io_schema_views_common_waf.JWTValidation_JwksConfig{} + jwksConfigurationInt.JwksConfig = &ves_io_schema_views_common_waf.JWKS{} jwtValidation.JwksConfiguration = jwksConfigurationInt sl := v.(*schema.Set).List() @@ -47452,7 +49209,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["mandatory_claims"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - mandatoryClaims := &ves_io_schema_views_http_loadbalancer.MandatoryClaims{} + mandatoryClaims := &ves_io_schema_views_common_waf.MandatoryClaims{} jwtValidation.MandatoryClaims = mandatoryClaims for _, set := range sl { mandatoryClaimsMapStrToI := set.(map[string]interface{}) @@ -47472,7 +49229,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["reserved_claims"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - reservedClaims := &ves_io_schema_views_http_loadbalancer.ReservedClaims{} + reservedClaims := &ves_io_schema_views_common_waf.ReservedClaims{} jwtValidation.ReservedClaims = reservedClaims for _, set := range sl { reservedClaimsMapStrToI := set.(map[string]interface{}) @@ -47482,8 +49239,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := reservedClaimsMapStrToI["audience"]; ok && !isIntfNil(v) && !audienceValidationTypeFound { audienceValidationTypeFound = true - audienceValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_Audience{} - audienceValidationInt.Audience = &ves_io_schema_views_http_loadbalancer.Audiences{} + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Audience{} + audienceValidationInt.Audience = &ves_io_schema_views_common_waf.Audiences{} reservedClaims.AudienceValidation = audienceValidationInt sl := v.(*schema.Set).List() @@ -47509,7 +49266,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa audienceValidationTypeFound = true if v.(bool) { - audienceValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_AudienceDisable{} + audienceValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_AudienceDisable{} audienceValidationInt.AudienceDisable = &ves_io_schema.Empty{} reservedClaims.AudienceValidation = audienceValidationInt } @@ -47521,7 +49278,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := reservedClaimsMapStrToI["issuer"]; ok && !isIntfNil(v) && !issuerValidationTypeFound { issuerValidationTypeFound = true - issuerValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_Issuer{} + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_Issuer{} reservedClaims.IssuerValidation = issuerValidationInt @@ -47534,7 +49291,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa issuerValidationTypeFound = true if v.(bool) { - issuerValidationInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_IssuerDisable{} + issuerValidationInt := &ves_io_schema_views_common_waf.ReservedClaims_IssuerDisable{} issuerValidationInt.IssuerDisable = &ves_io_schema.Empty{} reservedClaims.IssuerValidation = issuerValidationInt } @@ -47548,7 +49305,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validatePeriodTypeFound = true if v.(bool) { - validatePeriodInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodDisable{} + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodDisable{} validatePeriodInt.ValidatePeriodDisable = &ves_io_schema.Empty{} reservedClaims.ValidatePeriod = validatePeriodInt } @@ -47560,7 +49317,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa validatePeriodTypeFound = true if v.(bool) { - validatePeriodInt := &ves_io_schema_views_http_loadbalancer.ReservedClaims_ValidatePeriodEnable{} + validatePeriodInt := &ves_io_schema_views_common_waf.ReservedClaims_ValidatePeriodEnable{} validatePeriodInt.ValidatePeriodEnable = &ves_io_schema.Empty{} reservedClaims.ValidatePeriod = validatePeriodInt } @@ -47574,7 +49331,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["target"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - target := &ves_io_schema_views_http_loadbalancer.Target{} + target := &ves_io_schema_views_common_waf.Target{} jwtValidation.Target = target for _, set := range sl { targetMapStrToI := set.(map[string]interface{}) @@ -47586,7 +49343,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa targetTypeFound = true if v.(bool) { - targetInt := &ves_io_schema_views_http_loadbalancer.Target_AllEndpoint{} + targetInt := &ves_io_schema_views_common_waf.Target_AllEndpoint{} targetInt.AllEndpoint = &ves_io_schema.Empty{} target.Target = targetInt } @@ -47596,8 +49353,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := targetMapStrToI["api_groups"]; ok && !isIntfNil(v) && !targetTypeFound { targetTypeFound = true - targetInt := &ves_io_schema_views_http_loadbalancer.Target_ApiGroups{} - targetInt.ApiGroups = &ves_io_schema_views_http_loadbalancer.APIGroups{} + targetInt := &ves_io_schema_views_common_waf.Target_ApiGroups{} + targetInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} target.Target = targetInt sl := v.(*schema.Set).List() @@ -47621,8 +49378,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := targetMapStrToI["base_paths"]; ok && !isIntfNil(v) && !targetTypeFound { targetTypeFound = true - targetInt := &ves_io_schema_views_http_loadbalancer.Target_BasePaths{} - targetInt.BasePaths = &ves_io_schema_views_http_loadbalancer.BasePathsType{} + targetInt := &ves_io_schema_views_common_waf.Target_BasePaths{} + targetInt.BasePaths = &ves_io_schema_views_common_waf.BasePathsType{} target.Target = targetInt sl := v.(*schema.Set).List() @@ -47650,7 +49407,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := jwtValidationMapStrToI["token_location"]; ok && !isIntfNil(v) { sl := v.(*schema.Set).List() - tokenLocation := &ves_io_schema_views_http_loadbalancer.TokenLocation{} + tokenLocation := &ves_io_schema_views_common_waf.TokenLocation{} jwtValidation.TokenLocation = tokenLocation for _, set := range sl { tokenLocationMapStrToI := set.(map[string]interface{}) @@ -47662,7 +49419,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa tokenLocationTypeFound = true if v.(bool) { - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_BearerToken{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_BearerToken{} tokenLocationInt.BearerToken = &ves_io_schema.Empty{} tokenLocation.TokenLocation = tokenLocationInt } @@ -47672,7 +49429,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := tokenLocationMapStrToI["cookie"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { tokenLocationTypeFound = true - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_Cookie{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Cookie{} tokenLocation.TokenLocation = tokenLocationInt @@ -47683,7 +49440,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := tokenLocationMapStrToI["header"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { tokenLocationTypeFound = true - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_Header{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_Header{} tokenLocation.TokenLocation = tokenLocationInt @@ -47694,7 +49451,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := tokenLocationMapStrToI["query_param"]; ok && !isIntfNil(v) && !tokenLocationTypeFound { tokenLocationTypeFound = true - tokenLocationInt := &ves_io_schema_views_http_loadbalancer.TokenLocation_QueryParam{} + tokenLocationInt := &ves_io_schema_views_common_waf.TokenLocation_QueryParam{} tokenLocation.TokenLocation = tokenLocationInt @@ -47899,6 +49656,18 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -47940,11 +49709,76 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { httpProtocolChoiceTypeFound = true + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema_virtual_host.Http1ProtocolOptions{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} - httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema.Empty{} - httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt } } @@ -48946,6 +50780,18 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -48987,11 +50833,76 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { httpProtocolChoiceTypeFound = true + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema_virtual_host.Http1ProtocolOptions{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} - httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema.Empty{} - httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt } } @@ -49471,7 +51382,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa apiDiscoveryChoiceTypeFound = true apiDiscoveryChoiceInt := &ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableDiscovery{} - apiDiscoveryChoiceInt.EnableDiscovery = &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting{} + apiDiscoveryChoiceInt.EnableDiscovery = &ves_io_schema_views_common_waf.ApiDiscoverySetting{} mlConfigChoiceInt.SingleLbApp.ApiDiscoveryChoice = apiDiscoveryChoiceInt sl := v.(*schema.Set).List() @@ -49501,7 +51412,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_DisableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.DisableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -49513,7 +51424,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa learnFromRedirectTrafficTypeFound = true if v.(bool) { - learnFromRedirectTrafficInt := &ves_io_schema_views_http_loadbalancer.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} + learnFromRedirectTrafficInt := &ves_io_schema_views_common_waf.ApiDiscoverySetting_EnableLearnFromRedirectTraffic{} learnFromRedirectTrafficInt.EnableLearnFromRedirectTraffic = &ves_io_schema.Empty{} apiDiscoveryChoiceInt.EnableDiscovery.LearnFromRedirectTraffic = learnFromRedirectTrafficInt } @@ -49940,111 +51851,6 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } - ddosDetectionChoiceTypeFound := false - - if v, ok := cs["disable_ddos_detection"]; ok && !isIntfNil(v) && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - - if v.(bool) { - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_DisableDdosDetection{} - ddosDetectionChoiceInt.DisableDdosDetection = &ves_io_schema.Empty{} - mlConfigChoiceInt.SingleLbApp.DdosDetectionChoice = ddosDetectionChoiceInt - } - - } - - if v, ok := cs["enable_ddos_detection"]; ok && !isIntfNil(v) && !ddosDetectionChoiceTypeFound { - - ddosDetectionChoiceTypeFound = true - ddosDetectionChoiceInt := &ves_io_schema_views_http_loadbalancer.SingleLoadBalancerAppSetting_EnableDdosDetection{} - ddosDetectionChoiceInt.EnableDdosDetection = &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting{} - mlConfigChoiceInt.SingleLbApp.DdosDetectionChoice = ddosDetectionChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - autoMitigationChoiceTypeFound := false - - if v, ok := cs["disable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - - if v.(bool) { - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_DisableAutoMitigation{} - autoMitigationChoiceInt.DisableAutoMitigation = &ves_io_schema.Empty{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - } - - } - - if v, ok := cs["enable_auto_mitigation"]; ok && !isIntfNil(v) && !autoMitigationChoiceTypeFound { - - autoMitigationChoiceTypeFound = true - autoMitigationChoiceInt := &ves_io_schema_views_http_loadbalancer.EnableDDoSDetectionSetting_EnableAutoMitigation{} - autoMitigationChoiceInt.EnableAutoMitigation = &ves_io_schema_views_http_loadbalancer.AutoMitigationAction{} - ddosDetectionChoiceInt.EnableDdosDetection.AutoMitigationChoice = autoMitigationChoiceInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - actionTypeFound := false - - if v, ok := cs["block"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - - if v.(bool) { - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_Block{} - actionInt.Block = &ves_io_schema.Empty{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - } - - } - - if v, ok := cs["js_challenge"]; ok && !isIntfNil(v) && !actionTypeFound { - - actionTypeFound = true - actionInt := &ves_io_schema_views_http_loadbalancer.AutoMitigationAction_JsChallenge{} - actionInt.JsChallenge = &ves_io_schema_virtual_host.JavascriptChallengeType{} - autoMitigationChoiceInt.EnableAutoMitigation.Action = actionInt - - sl := v.(*schema.Set).List() - for _, set := range sl { - cs := set.(map[string]interface{}) - - if v, ok := cs["cookie_expiry"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CookieExpiry = uint32(v.(int)) - - } - - if v, ok := cs["custom_page"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.CustomPage = v.(string) - - } - - if v, ok := cs["js_script_delay"]; ok && !isIntfNil(v) { - - actionInt.JsChallenge.JsScriptDelay = uint32(v.(int)) - - } - - } - - } - - } - - } - - } - - } - maliciousUserDetectionChoiceTypeFound := false if v, ok := cs["disable_malicious_user_detection"]; ok && !isIntfNil(v) && !maliciousUserDetectionChoiceTypeFound { @@ -51005,6 +52811,18 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -51054,11 +52872,76 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := advancedOptionsMapStrToI["http1_config"]; ok && !isIntfNil(v) && !httpProtocolTypeTypeFound { httpProtocolTypeTypeFound = true + httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} + httpProtocolTypeInt.Http1Config = &ves_io_schema_cluster.Http1ProtocolOptions{} + advancedOptions.HttpProtocolType = httpProtocolTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolTypeInt.Http1Config.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} - httpProtocolTypeInt.Http1Config = &ves_io_schema.Empty{} - advancedOptions.HttpProtocolType = httpProtocolTypeInt } } @@ -51194,6 +53077,44 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + proxyProtocolChoiceTypeFound := false + + if v, ok := advancedOptionsMapStrToI["disable_proxy_protocol"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableProxyProtocol{} + proxyProtocolChoiceInt.DisableProxyProtocol = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v1"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV1{} + proxyProtocolChoiceInt.ProxyProtocolV1 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v2"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV2{} + proxyProtocolChoiceInt.ProxyProtocolV2 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + subsetChoiceTypeFound := false if v, ok := advancedOptionsMapStrToI["disable_subsets"]; ok && !isIntfNil(v) && !subsetChoiceTypeFound { @@ -51744,6 +53665,39 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateIP_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateIp.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + privateIpChoiceTypeFound := false if v, ok := cs["ip"]; ok && !isIntfNil(v) && !privateIpChoiceTypeFound { @@ -51895,6 +53849,39 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateName_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateName.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["refresh_interval"]; ok && !isIntfNil(v) { choiceInt.PrivateName.RefreshInterval = uint32(v.(int)) @@ -53392,7 +55379,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa rateLimitChoiceTypeFound = true rateLimitChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_ApiRateLimit{} - rateLimitChoiceInt.ApiRateLimit = &ves_io_schema_views_http_loadbalancer.APIRateLimit{} + rateLimitChoiceInt.ApiRateLimit = &ves_io_schema_views_common_waf.APIRateLimit{} updateSpec.RateLimitChoice = rateLimitChoiceInt sl := v.(*schema.Set).List() @@ -53402,10 +55389,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["api_endpoint_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - apiEndpointRules := make([]*ves_io_schema_views_http_loadbalancer.ApiEndpointRule, len(sl)) + apiEndpointRules := make([]*ves_io_schema_views_common_waf.ApiEndpointRule, len(sl)) rateLimitChoiceInt.ApiRateLimit.ApiEndpointRules = apiEndpointRules for i, set := range sl { - apiEndpointRules[i] = &ves_io_schema_views_http_loadbalancer.ApiEndpointRule{} + apiEndpointRules[i] = &ves_io_schema_views_common_waf.ApiEndpointRule{} apiEndpointRulesMapStrToI := set.(map[string]interface{}) if v, ok := apiEndpointRulesMapStrToI["api_endpoint_method"]; ok && !isIntfNil(v) { @@ -53733,7 +55720,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} apiEndpointRules[i].DomainChoice = domainChoiceInt } @@ -53743,7 +55730,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_SpecificDomain{} apiEndpointRules[i].DomainChoice = domainChoiceInt @@ -53756,8 +55743,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_InlineRateLimiter{} - rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_http_loadbalancer.InlineRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt sl := v.(*schema.Set).List() @@ -53769,7 +55756,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { countByChoiceTypeFound = true - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_RefUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt @@ -53804,7 +55791,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa countByChoiceTypeFound = true if v.(bool) { - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt } @@ -53830,7 +55817,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := apiEndpointRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ApiEndpointRule_RefRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ApiEndpointRule_RefRateLimiter{} rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} apiEndpointRules[i].RateLimiterChoice = rateLimiterChoiceInt @@ -54074,6 +56061,98 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -54190,8 +56269,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_BypassRateLimitingRules{} - ipAllowedListChoiceInt.BypassRateLimitingRules = &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRules{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_BypassRateLimitingRules{} + ipAllowedListChoiceInt.BypassRateLimitingRules = &ves_io_schema_views_common_waf.BypassRateLimitingRules{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt sl := v.(*schema.Set).List() @@ -54201,10 +56280,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["bypass_rate_limiting_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - bypassRateLimitingRules := make([]*ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule, len(sl)) + bypassRateLimitingRules := make([]*ves_io_schema_views_common_waf.BypassRateLimitingRule, len(sl)) ipAllowedListChoiceInt.BypassRateLimitingRules.BypassRateLimitingRules = bypassRateLimitingRules for i, set := range sl { - bypassRateLimitingRules[i] = &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule{} + bypassRateLimitingRules[i] = &ves_io_schema_views_common_waf.BypassRateLimitingRule{} bypassRateLimitingRulesMapStrToI := set.(map[string]interface{}) if v, ok := bypassRateLimitingRulesMapStrToI["client_matcher"]; ok && !isIntfNil(v) { @@ -54498,7 +56577,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa destinationTypeTypeFound = true if v.(bool) { - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyUrl{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyUrl{} destinationTypeInt.AnyUrl = &ves_io_schema.Empty{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt } @@ -54508,8 +56587,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["api_endpoint"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { destinationTypeTypeFound = true - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_ApiEndpoint{} - destinationTypeInt.ApiEndpoint = &ves_io_schema_views_http_loadbalancer.ApiEndpointDetails{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiEndpoint{} + destinationTypeInt.ApiEndpoint = &ves_io_schema_views_common_waf.ApiEndpointDetails{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt sl := v.(*schema.Set).List() @@ -54539,8 +56618,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["api_groups"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { destinationTypeTypeFound = true - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_ApiGroups{} - destinationTypeInt.ApiGroups = &ves_io_schema_views_http_loadbalancer.APIGroups{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_ApiGroups{} + destinationTypeInt.ApiGroups = &ves_io_schema_views_common_waf.APIGroups{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt sl := v.(*schema.Set).List() @@ -54564,7 +56643,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["base_path"]; ok && !isIntfNil(v) && !destinationTypeTypeFound { destinationTypeTypeFound = true - destinationTypeInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_BasePath{} + destinationTypeInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_BasePath{} bypassRateLimitingRules[i].DestinationType = destinationTypeInt @@ -54579,7 +56658,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} bypassRateLimitingRules[i].DomainChoice = domainChoiceInt } @@ -54589,7 +56668,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := bypassRateLimitingRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.BypassRateLimitingRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.BypassRateLimitingRule_SpecificDomain{} bypassRateLimitingRules[i].DomainChoice = domainChoiceInt @@ -54811,6 +56890,98 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -54929,8 +57100,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_CustomIpAllowedList{} - ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_http_loadbalancer.CustomIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt sl := v.(*schema.Set).List() @@ -54970,7 +57141,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_IpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_IpAllowedList{} ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt @@ -55007,7 +57178,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa ipAllowedListChoiceTypeFound = true if v.(bool) { - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.APIRateLimit_NoIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.APIRateLimit_NoIpAllowedList{} ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} rateLimitChoiceInt.ApiRateLimit.IpAllowedListChoice = ipAllowedListChoiceInt } @@ -55017,10 +57188,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["server_url_rules"]; ok && !isIntfNil(v) { sl := v.([]interface{}) - serverUrlRules := make([]*ves_io_schema_views_http_loadbalancer.ServerUrlRule, len(sl)) + serverUrlRules := make([]*ves_io_schema_views_common_waf.ServerUrlRule, len(sl)) rateLimitChoiceInt.ApiRateLimit.ServerUrlRules = serverUrlRules for i, set := range sl { - serverUrlRules[i] = &ves_io_schema_views_http_loadbalancer.ServerUrlRule{} + serverUrlRules[i] = &ves_io_schema_views_common_waf.ServerUrlRule{} serverUrlRulesMapStrToI := set.(map[string]interface{}) if w, ok := serverUrlRulesMapStrToI["api_group"]; ok && !isIntfNil(w) { @@ -55322,7 +57493,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa domainChoiceTypeFound = true if v.(bool) { - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_AnyDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_AnyDomain{} domainChoiceInt.AnyDomain = &ves_io_schema.Empty{} serverUrlRules[i].DomainChoice = domainChoiceInt } @@ -55332,7 +57503,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := serverUrlRulesMapStrToI["specific_domain"]; ok && !isIntfNil(v) && !domainChoiceTypeFound { domainChoiceTypeFound = true - domainChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_SpecificDomain{} + domainChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_SpecificDomain{} serverUrlRules[i].DomainChoice = domainChoiceInt @@ -55345,8 +57516,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := serverUrlRulesMapStrToI["inline_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_InlineRateLimiter{} - rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_http_loadbalancer.InlineRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_InlineRateLimiter{} + rateLimiterChoiceInt.InlineRateLimiter = &ves_io_schema_views_common_waf.InlineRateLimiter{} serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt sl := v.(*schema.Set).List() @@ -55358,7 +57529,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["ref_user_id"]; ok && !isIntfNil(v) && !countByChoiceTypeFound { countByChoiceTypeFound = true - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_RefUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_RefUserId{} countByChoiceInt.RefUserId = &ves_io_schema_views.ObjectRefType{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt @@ -55393,7 +57564,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa countByChoiceTypeFound = true if v.(bool) { - countByChoiceInt := &ves_io_schema_views_http_loadbalancer.InlineRateLimiter_UseHttpLbUserId{} + countByChoiceInt := &ves_io_schema_views_common_waf.InlineRateLimiter_UseHttpLbUserId{} countByChoiceInt.UseHttpLbUserId = &ves_io_schema.Empty{} rateLimiterChoiceInt.InlineRateLimiter.CountByChoice = countByChoiceInt } @@ -55419,7 +57590,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := serverUrlRulesMapStrToI["ref_rate_limiter"]; ok && !isIntfNil(v) && !rateLimiterChoiceTypeFound { rateLimiterChoiceTypeFound = true - rateLimiterChoiceInt := &ves_io_schema_views_http_loadbalancer.ServerUrlRule_RefRateLimiter{} + rateLimiterChoiceInt := &ves_io_schema_views_common_waf.ServerUrlRule_RefRateLimiter{} rateLimiterChoiceInt.RefRateLimiter = &ves_io_schema_views.ObjectRefType{} serverUrlRules[i].RateLimiterChoice = rateLimiterChoiceInt @@ -55663,6 +57834,98 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } + if v, ok := requestMatcherMapStrToI["jwt_claims"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + jwtClaims := make([]*ves_io_schema_policy.JWTClaimMatcherType, len(sl)) + requestMatcher.JwtClaims = jwtClaims + for i, set := range sl { + jwtClaims[i] = &ves_io_schema_policy.JWTClaimMatcherType{} + jwtClaimsMapStrToI := set.(map[string]interface{}) + + if w, ok := jwtClaimsMapStrToI["invert_matcher"]; ok && !isIntfNil(w) { + jwtClaims[i].InvertMatcher = w.(bool) + } + + matchTypeFound := false + + if v, ok := jwtClaimsMapStrToI["check_not_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckNotPresent{} + matchInt.CheckNotPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["check_present"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + + if v.(bool) { + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_CheckPresent{} + matchInt.CheckPresent = &ves_io_schema.Empty{} + jwtClaims[i].Match = matchInt + } + + } + + if v, ok := jwtClaimsMapStrToI["item"]; ok && !isIntfNil(v) && !matchTypeFound { + + matchTypeFound = true + matchInt := &ves_io_schema_policy.JWTClaimMatcherType_Item{} + matchInt.Item = &ves_io_schema_policy.MatcherType{} + jwtClaims[i].Match = matchInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["exact_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.ExactValues = ls + + } + + if v, ok := cs["regex_values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + matchInt.Item.RegexValues = ls + + } + + if v, ok := cs["transformers"]; ok && !isIntfNil(v) { + + transformersList := []ves_io_schema_policy.Transformer{} + for _, j := range v.([]interface{}) { + transformersList = append(transformersList, ves_io_schema_policy.Transformer(ves_io_schema_policy.Transformer_value[j.(string)])) + } + matchInt.Item.Transformers = transformersList + + } + + } + + } + + if w, ok := jwtClaimsMapStrToI["name"]; ok && !isIntfNil(w) { + jwtClaims[i].Name = w.(string) + } + + } + + } + if v, ok := requestMatcherMapStrToI["query_params"]; ok && !isIntfNil(v) { sl := v.([]interface{}) @@ -55794,7 +58057,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa rateLimitChoiceTypeFound = true rateLimitChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_RateLimit{} - rateLimitChoiceInt.RateLimit = &ves_io_schema_views_http_loadbalancer.RateLimitConfigType{} + rateLimitChoiceInt.RateLimit = &ves_io_schema_views_common_waf.RateLimitConfigType{} updateSpec.RateLimitChoice = rateLimitChoiceInt sl := v.(*schema.Set).List() @@ -55806,8 +58069,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["custom_ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_CustomIpAllowedList{} - ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_http_loadbalancer.CustomIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_CustomIpAllowedList{} + ipAllowedListChoiceInt.CustomIpAllowedList = &ves_io_schema_views_common_waf.CustomIpAllowedList{} rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt sl := v.(*schema.Set).List() @@ -55847,7 +58110,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["ip_allowed_list"]; ok && !isIntfNil(v) && !ipAllowedListChoiceTypeFound { ipAllowedListChoiceTypeFound = true - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_IpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_IpAllowedList{} ipAllowedListChoiceInt.IpAllowedList = &ves_io_schema_views.PrefixStringListType{} rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt @@ -55884,7 +58147,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa ipAllowedListChoiceTypeFound = true if v.(bool) { - ipAllowedListChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoIpAllowedList{} + ipAllowedListChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoIpAllowedList{} ipAllowedListChoiceInt.NoIpAllowedList = &ves_io_schema.Empty{} rateLimitChoiceInt.RateLimit.IpAllowedListChoice = ipAllowedListChoiceInt } @@ -55898,7 +58161,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa policyChoiceTypeFound = true if v.(bool) { - policyChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_NoPolicies{} + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_NoPolicies{} policyChoiceInt.NoPolicies = &ves_io_schema.Empty{} rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt } @@ -55908,7 +58171,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := cs["policies"]; ok && !isIntfNil(v) && !policyChoiceTypeFound { policyChoiceTypeFound = true - policyChoiceInt := &ves_io_schema_views_http_loadbalancer.RateLimitConfigType_Policies{} + policyChoiceInt := &ves_io_schema_views_common_waf.RateLimitConfigType_Policies{} policyChoiceInt.Policies = &ves_io_schema_views_rate_limiter_policy.PolicyList{} rateLimitChoiceInt.RateLimit.PolicyChoice = policyChoiceInt @@ -58121,7 +60384,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa servicePolicyChoiceTypeFound = true servicePolicyChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_ActiveServicePolicies{} - servicePolicyChoiceInt.ActiveServicePolicies = &ves_io_schema_views_http_loadbalancer.ServicePolicyList{} + servicePolicyChoiceInt.ActiveServicePolicies = &ves_io_schema_views_common_waf.ServicePolicyList{} updateSpec.ServicePolicyChoice = servicePolicyChoiceInt sl := v.(*schema.Set).List() @@ -58242,28 +60505,28 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa } - threatIntelligenceChoiceTypeFound := false + threatMeshChoiceTypeFound := false - if v, ok := d.GetOk("disable_threat_intelligence"); ok && !threatIntelligenceChoiceTypeFound { + if v, ok := d.GetOk("disable_threat_mesh"); ok && !threatMeshChoiceTypeFound { - threatIntelligenceChoiceTypeFound = true + threatMeshChoiceTypeFound = true if v.(bool) { - threatIntelligenceChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_DisableThreatIntelligence{} - threatIntelligenceChoiceInt.DisableThreatIntelligence = &ves_io_schema.Empty{} - updateSpec.ThreatIntelligenceChoice = threatIntelligenceChoiceInt + threatMeshChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_DisableThreatMesh{} + threatMeshChoiceInt.DisableThreatMesh = &ves_io_schema.Empty{} + updateSpec.ThreatMeshChoice = threatMeshChoiceInt } } - if v, ok := d.GetOk("enable_threat_intelligence"); ok && !threatIntelligenceChoiceTypeFound { + if v, ok := d.GetOk("enable_threat_mesh"); ok && !threatMeshChoiceTypeFound { - threatIntelligenceChoiceTypeFound = true + threatMeshChoiceTypeFound = true if v.(bool) { - threatIntelligenceChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_EnableThreatIntelligence{} - threatIntelligenceChoiceInt.EnableThreatIntelligence = &ves_io_schema.Empty{} - updateSpec.ThreatIntelligenceChoice = threatIntelligenceChoiceInt + threatMeshChoiceInt := &ves_io_schema_views_http_loadbalancer.ReplaceSpecType_EnableThreatMesh{} + threatMeshChoiceInt.EnableThreatMesh = &ves_io_schema.Empty{} + updateSpec.ThreatMeshChoice = threatMeshChoiceInt } } @@ -58310,10 +60573,10 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := d.GetOk("trusted_clients"); ok && !isIntfNil(v) { sl := v.([]interface{}) - trustedClients := make([]*ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule, len(sl)) + trustedClients := make([]*ves_io_schema_views_common_waf.SimpleClientSrcRule, len(sl)) updateSpec.TrustedClients = trustedClients for i, set := range sl { - trustedClients[i] = &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule{} + trustedClients[i] = &ves_io_schema_views_common_waf.SimpleClientSrcRule{} trustedClientsMapStrToI := set.(map[string]interface{}) actionChoiceTypeFound := false @@ -58323,7 +60586,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_BotSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_BotSkipProcessing{} actionChoiceInt.BotSkipProcessing = &ves_io_schema.Empty{} trustedClients[i].ActionChoice = actionChoiceInt } @@ -58335,7 +60598,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_SkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_SkipProcessing{} actionChoiceInt.SkipProcessing = &ves_io_schema.Empty{} trustedClients[i].ActionChoice = actionChoiceInt } @@ -58347,7 +60610,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa actionChoiceTypeFound = true if v.(bool) { - actionChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_WafSkipProcessing{} + actionChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_WafSkipProcessing{} actionChoiceInt.WafSkipProcessing = &ves_io_schema.Empty{} trustedClients[i].ActionChoice = actionChoiceInt } @@ -58356,9 +60619,9 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["actions"]; ok && !isIntfNil(v) { - actionsList := []ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction{} + actionsList := []ves_io_schema_views_common_waf.ClientSrcRuleAction{} for _, j := range v.([]interface{}) { - actionsList = append(actionsList, ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction(ves_io_schema_views_http_loadbalancer.ClientSrcRuleAction_value[j.(string)])) + actionsList = append(actionsList, ves_io_schema_views_common_waf.ClientSrcRuleAction(ves_io_schema_views_common_waf.ClientSrcRuleAction_value[j.(string)])) } trustedClients[i].Actions = actionsList @@ -58369,7 +60632,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["as_number"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_AsNumber{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_AsNumber{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -58380,8 +60643,8 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["http_header"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_HttpHeader{} - clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_http_loadbalancer.HttpHeaderMatcherList{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_HttpHeader{} + clientSourceChoiceInt.HttpHeader = &ves_io_schema_views_common_waf.HttpHeaderMatcherList{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt sl := v.(*schema.Set).List() @@ -58451,7 +60714,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["ip_prefix"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_IpPrefix{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_IpPrefix{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt @@ -58462,7 +60725,7 @@ func resourceVolterraHttpLoadbalancerUpdate(d *schema.ResourceData, meta interfa if v, ok := trustedClientsMapStrToI["user_identifier"]; ok && !isIntfNil(v) && !clientSourceChoiceTypeFound { clientSourceChoiceTypeFound = true - clientSourceChoiceInt := &ves_io_schema_views_http_loadbalancer.SimpleClientSrcRule_UserIdentifier{} + clientSourceChoiceInt := &ves_io_schema_views_common_waf.SimpleClientSrcRule_UserIdentifier{} trustedClients[i].ClientSourceChoice = clientSourceChoiceInt diff --git a/volterra/resource_auto_volterra_ip_prefix_set.go b/volterra/resource_auto_volterra_ip_prefix_set.go index bda7ed09b..9e6b26a07 100644 --- a/volterra/resource_auto_volterra_ip_prefix_set.go +++ b/volterra/resource_auto_volterra_ip_prefix_set.go @@ -16,6 +16,7 @@ import ( ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_ip_prefix_set "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ip_prefix_set" + drift "github.com/volterraedge/terraform-provider-volterra/volterra/drift_detection" ) // resourceVolterraIpPrefixSet is implementation of Volterra's IpPrefixSet resources @@ -201,6 +202,9 @@ func setIpPrefixSetFields(client *APIClient, d *schema.ResourceData, resp vesapi d.Set("namespace", metadata.GetNamespace()) + drift.DriftDetectionSpecIpPrefixSet(d,resp) + + return nil } diff --git a/volterra/resource_auto_volterra_nfv_service.go b/volterra/resource_auto_volterra_nfv_service.go index 75e53c460..cdc8fc177 100644 --- a/volterra/resource_auto_volterra_nfv_service.go +++ b/volterra/resource_auto_volterra_nfv_service.go @@ -2207,6 +2207,18 @@ func resourceVolterraNfvService() *schema.Resource { Type: schema.TypeBool, Optional: true, }, + + "best_plus_pay_g200_mbps": { + + Type: schema.TypeBool, + Optional: true, + }, + + "best_plus_payg_1gbps": { + + Type: schema.TypeBool, + Optional: true, + }, }, }, }, @@ -5971,7 +5983,7 @@ func resourceVolterraNfvServiceCreate(d *schema.ResourceData, meta interface{}) amiChoiceTypeFound := false - if v, ok := cs["AWAFPayG200Mbps"]; ok && !isIntfNil(v) && !amiChoiceTypeFound { + if v, ok := cs["awaf_pay_g200_mbps"]; ok && !isIntfNil(v) && !amiChoiceTypeFound { amiChoiceTypeFound = true @@ -5983,7 +5995,7 @@ func resourceVolterraNfvServiceCreate(d *schema.ResourceData, meta interface{}) } - if v, ok := cs["AWAFPayG3Gbps"]; ok && !isIntfNil(v) && !amiChoiceTypeFound { + if v, ok := cs["awaf_pay_g3_gbps"]; ok && !isIntfNil(v) && !amiChoiceTypeFound { amiChoiceTypeFound = true diff --git a/volterra/resource_auto_volterra_origin_pool.go b/volterra/resource_auto_volterra_origin_pool.go index 44a0d8b6e..6f119ae35 100644 --- a/volterra/resource_auto_volterra_origin_pool.go +++ b/volterra/resource_auto_volterra_origin_pool.go @@ -13,11 +13,12 @@ import ( "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" "gopkg.volterra.us/stdlib/client/vesapi" - + drift "github.com/volterraedge/terraform-provider-volterra/volterra/drift_detection" ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_cluster "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/cluster" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" ves_io_schema_views_origin_pool "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/origin_pool" + statemigration "github.com/volterraedge/terraform-provider-volterra/volterra/state_migration" ) // resourceVolterraOriginPool is implementation of Volterra's OriginPool resources @@ -123,27 +124,38 @@ func resourceVolterraOriginPool() *schema.Resource { "header_transformation_type": { - Type: schema.TypeSet, - Optional: true, + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "default_header_transformation": { - Type: schema.TypeBool, - Optional: true, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, "preserve_case_header_transformation": { - Type: schema.TypeBool, - Optional: true, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, "proper_case_header_transformation": { - Type: schema.TypeBool, - Optional: true, + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, }, }, @@ -162,8 +174,46 @@ func resourceVolterraOriginPool() *schema.Resource { "http1_config": { - Type: schema.TypeBool, + Type: schema.TypeSet, Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, "http2_options": { @@ -183,16 +233,14 @@ func resourceVolterraOriginPool() *schema.Resource { "disable_lb_source_ip_persistance": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, "enable_lb_source_ip_persistance": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, "disable_outlier_detection": { @@ -248,6 +296,24 @@ func resourceVolterraOriginPool() *schema.Resource { Optional: true, }, + "disable_proxy_protocol": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proxy_protocol_v1": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proxy_protocol_v2": { + + Type: schema.TypeBool, + Optional: true, + }, + "disable_subsets": { Type: schema.TypeBool, @@ -633,6 +699,29 @@ func resourceVolterraOriginPool() *schema.Resource { Optional: true, }, + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + "ip": { Type: schema.TypeString, @@ -738,6 +827,29 @@ func resourceVolterraOriginPool() *schema.Resource { Optional: true, }, + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + "refresh_interval": { Type: schema.TypeInt, Optional: true, @@ -1351,6 +1463,14 @@ func resourceVolterraOriginPool() *schema.Resource { }, }, }, + SchemaVersion: 1, + StateUpgraders: []schema.StateUpgrader{ + { + Type: statemigration.ResourceOriginPoolInstanceResourceV1().CoreConfigSchema().ImpliedType(), + Upgrade: statemigration.ResourceOriginPoolInstanceStateUpgradeV1, + Version: 0, + }, + }, } } @@ -1513,6 +1633,18 @@ func resourceVolterraOriginPoolCreate(d *schema.ResourceData, meta interface{}) } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -1562,11 +1694,76 @@ func resourceVolterraOriginPoolCreate(d *schema.ResourceData, meta interface{}) if v, ok := advancedOptionsMapStrToI["http1_config"]; ok && !isIntfNil(v) && !httpProtocolTypeTypeFound { httpProtocolTypeTypeFound = true + httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} + httpProtocolTypeInt.Http1Config = &ves_io_schema_cluster.Http1ProtocolOptions{} + advancedOptions.HttpProtocolType = httpProtocolTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolTypeInt.Http1Config.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} - httpProtocolTypeInt.Http1Config = &ves_io_schema.Empty{} - advancedOptions.HttpProtocolType = httpProtocolTypeInt } } @@ -1702,6 +1899,44 @@ func resourceVolterraOriginPoolCreate(d *schema.ResourceData, meta interface{}) } + proxyProtocolChoiceTypeFound := false + + if v, ok := advancedOptionsMapStrToI["disable_proxy_protocol"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableProxyProtocol{} + proxyProtocolChoiceInt.DisableProxyProtocol = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v1"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV1{} + proxyProtocolChoiceInt.ProxyProtocolV1 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v2"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV2{} + proxyProtocolChoiceInt.ProxyProtocolV2 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + subsetChoiceTypeFound := false if v, ok := advancedOptionsMapStrToI["disable_subsets"]; ok && !isIntfNil(v) && !subsetChoiceTypeFound { @@ -2258,6 +2493,39 @@ func resourceVolterraOriginPoolCreate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateIP_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateIp.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + privateIpChoiceTypeFound := false if v, ok := cs["ip"]; ok && !isIntfNil(v) && !privateIpChoiceTypeFound { @@ -2409,6 +2677,39 @@ func resourceVolterraOriginPoolCreate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateName_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateName.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["refresh_interval"]; ok && !isIntfNil(v) { choiceInt.PrivateName.RefreshInterval = uint32(v.(int)) @@ -3303,6 +3604,8 @@ func setOriginPoolFields(client *APIClient, d *schema.ResourceData, resp vesapi. d.Set("namespace", metadata.GetNamespace()) + drift.DriftDetectionSpec_OriginPool(d, resp) + return nil } @@ -3464,6 +3767,18 @@ func resourceVolterraOriginPoolUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -3513,11 +3828,76 @@ func resourceVolterraOriginPoolUpdate(d *schema.ResourceData, meta interface{}) if v, ok := advancedOptionsMapStrToI["http1_config"]; ok && !isIntfNil(v) && !httpProtocolTypeTypeFound { httpProtocolTypeTypeFound = true + httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} + httpProtocolTypeInt.Http1Config = &ves_io_schema_cluster.Http1ProtocolOptions{} + advancedOptions.HttpProtocolType = httpProtocolTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolTypeInt.Http1Config.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } - if v.(bool) { - httpProtocolTypeInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_Http1Config{} - httpProtocolTypeInt.Http1Config = &ves_io_schema.Empty{} - advancedOptions.HttpProtocolType = httpProtocolTypeInt } } @@ -3653,6 +4033,44 @@ func resourceVolterraOriginPoolUpdate(d *schema.ResourceData, meta interface{}) } + proxyProtocolChoiceTypeFound := false + + if v, ok := advancedOptionsMapStrToI["disable_proxy_protocol"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_DisableProxyProtocol{} + proxyProtocolChoiceInt.DisableProxyProtocol = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v1"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV1{} + proxyProtocolChoiceInt.ProxyProtocolV1 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + + if v, ok := advancedOptionsMapStrToI["proxy_protocol_v2"]; ok && !isIntfNil(v) && !proxyProtocolChoiceTypeFound { + + proxyProtocolChoiceTypeFound = true + + if v.(bool) { + proxyProtocolChoiceInt := &ves_io_schema_views_origin_pool.OriginPoolAdvancedOptions_ProxyProtocolV2{} + proxyProtocolChoiceInt.ProxyProtocolV2 = &ves_io_schema.Empty{} + advancedOptions.ProxyProtocolChoice = proxyProtocolChoiceInt + } + + } + subsetChoiceTypeFound := false if v, ok := advancedOptionsMapStrToI["disable_subsets"]; ok && !isIntfNil(v) && !subsetChoiceTypeFound { @@ -4203,6 +4621,39 @@ func resourceVolterraOriginPoolUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateIP_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateIp.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + privateIpChoiceTypeFound := false if v, ok := cs["ip"]; ok && !isIntfNil(v) && !privateIpChoiceTypeFound { @@ -4354,6 +4805,39 @@ func resourceVolterraOriginPoolUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := cs["segment"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_views_origin_pool.OriginServerPrivateName_Segment{} + networkChoiceInt.Segment = &ves_io_schema_views.ObjectRefType{} + choiceInt.PrivateName.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.Segment.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["refresh_interval"]; ok && !isIntfNil(v) { choiceInt.PrivateName.RefreshInterval = uint32(v.(int)) diff --git a/volterra/resource_auto_volterra_rate_limiter_policy.go b/volterra/resource_auto_volterra_rate_limiter_policy.go index 5cc60771e..93316ca14 100644 --- a/volterra/resource_auto_volterra_rate_limiter_policy.go +++ b/volterra/resource_auto_volterra_rate_limiter_policy.go @@ -437,6 +437,16 @@ func resourceVolterraRateLimiterPolicy() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, diff --git a/volterra/resource_auto_volterra_route.go b/volterra/resource_auto_volterra_route.go index ad9c2b08d..981def1c1 100644 --- a/volterra/resource_auto_volterra_route.go +++ b/volterra/resource_auto_volterra_route.go @@ -1128,22 +1128,19 @@ func resourceVolterraRoute() *schema.Resource { "regex_rewrite": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "pattern": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "substitution": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, diff --git a/volterra/resource_auto_volterra_securemesh_site.go b/volterra/resource_auto_volterra_securemesh_site.go index cb0790fca..f3202184d 100644 --- a/volterra/resource_auto_volterra_securemesh_site.go +++ b/volterra/resource_auto_volterra_securemesh_site.go @@ -212,6 +212,64 @@ func resourceVolterraSecuremeshSite() *schema.Resource { }, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "log_receiver": { Type: schema.TypeSet, @@ -1654,6 +1712,29 @@ func resourceVolterraSecuremeshSite() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment_network": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + "site_local_inside_network": { Type: schema.TypeBool, @@ -3297,6 +3378,104 @@ func resourceVolterraSecuremeshSiteCreate(d *schema.ResourceData, meta interface } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //logs_receiver_choice logsReceiverChoiceTypeFound := false @@ -5262,6 +5441,39 @@ func resourceVolterraSecuremeshSiteCreate(d *schema.ResourceData, meta interface } + if v, ok := cs["segment_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_network_interface.EthernetInterfaceType_SegmentNetwork{} + networkChoiceInt.SegmentNetwork = &ves_io_schema_views.ObjectRefType{} + interfaceChoiceInt.EthernetInterface.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["site_local_inside_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { networkChoiceTypeFound = true @@ -7488,6 +7700,103 @@ func resourceVolterraSecuremeshSiteUpdate(d *schema.ResourceData, meta interface } + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + logsReceiverChoiceTypeFound := false if v, ok := d.GetOk("log_receiver"); ok && !logsReceiverChoiceTypeFound { @@ -9448,6 +9757,39 @@ func resourceVolterraSecuremeshSiteUpdate(d *schema.ResourceData, meta interface } + if v, ok := cs["segment_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_network_interface.EthernetInterfaceType_SegmentNetwork{} + networkChoiceInt.SegmentNetwork = &ves_io_schema_views.ObjectRefType{} + interfaceChoiceInt.EthernetInterface.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["site_local_inside_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { networkChoiceTypeFound = true diff --git a/volterra/resource_auto_volterra_service_policy_rule.go b/volterra/resource_auto_volterra_service_policy_rule.go index 5db1072b9..682fa66d0 100644 --- a/volterra/resource_auto_volterra_service_policy_rule.go +++ b/volterra/resource_auto_volterra_service_policy_rule.go @@ -18,6 +18,7 @@ import ( ves_io_schema_app_firewall "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/app_firewall" ves_io_schema_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/policy" ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" ) // resourceVolterraServicePolicyRule is implementation of Volterra's ServicePolicyRule resources @@ -700,6 +701,17 @@ func resourceVolterraServicePolicyRule() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -916,6 +928,16 @@ func resourceVolterraServicePolicyRule() *schema.Resource { Type: schema.TypeString, }, }, + + "ipv6_prefixes": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, }, }, }, @@ -1489,6 +1511,110 @@ func resourceVolterraServicePolicyRule() *schema.Resource { }, }, + "segment_policy": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dst_any": { + + Type: schema.TypeBool, + Optional: true, + }, + + "dst_segments": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "segments": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "intra_segment": { + + Type: schema.TypeBool, + Optional: true, + }, + + "src_any": { + + Type: schema.TypeBool, + Optional: true, + }, + + "src_segments": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "segments": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + "server_selector": { Type: schema.TypeSet, @@ -3965,6 +4091,141 @@ func resourceVolterraServicePolicyRuleCreate(d *schema.ResourceData, meta interf } + //segment_policy + if v, ok := d.GetOk("segment_policy"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segmentPolicy := &ves_io_schema_policy.SegmentPolicyType{} + createSpec.SegmentPolicy = segmentPolicy + for _, set := range sl { + segmentPolicyMapStrToI := set.(map[string]interface{}) + + dstSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["dst_any"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstAny{} + dstSegmentChoiceInt.DstAny = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["dst_segments"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstSegments{} + dstSegmentChoiceInt.DstSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + dstSegmentChoiceInt.DstSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := segmentPolicyMapStrToI["intra_segment"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_IntraSegment{} + dstSegmentChoiceInt.IntraSegment = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + srcSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["src_any"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + + if v.(bool) { + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcAny{} + srcSegmentChoiceInt.SrcAny = &ves_io_schema.Empty{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["src_segments"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcSegments{} + srcSegmentChoiceInt.SrcSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + srcSegmentChoiceInt.SrcSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + } + + } + //server_selector if v, ok := d.GetOk("server_selector"); ok && !isIntfNil(v) { @@ -6543,6 +6804,140 @@ func resourceVolterraServicePolicyRuleUpdate(d *schema.ResourceData, meta interf } + if v, ok := d.GetOk("segment_policy"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segmentPolicy := &ves_io_schema_policy.SegmentPolicyType{} + updateSpec.SegmentPolicy = segmentPolicy + for _, set := range sl { + segmentPolicyMapStrToI := set.(map[string]interface{}) + + dstSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["dst_any"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstAny{} + dstSegmentChoiceInt.DstAny = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["dst_segments"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_DstSegments{} + dstSegmentChoiceInt.DstSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + dstSegmentChoiceInt.DstSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + if v, ok := segmentPolicyMapStrToI["intra_segment"]; ok && !isIntfNil(v) && !dstSegmentChoiceTypeFound { + + dstSegmentChoiceTypeFound = true + + if v.(bool) { + dstSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_IntraSegment{} + dstSegmentChoiceInt.IntraSegment = &ves_io_schema.Empty{} + segmentPolicy.DstSegmentChoice = dstSegmentChoiceInt + } + + } + + srcSegmentChoiceTypeFound := false + + if v, ok := segmentPolicyMapStrToI["src_any"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + + if v.(bool) { + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcAny{} + srcSegmentChoiceInt.SrcAny = &ves_io_schema.Empty{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + } + + } + + if v, ok := segmentPolicyMapStrToI["src_segments"]; ok && !isIntfNil(v) && !srcSegmentChoiceTypeFound { + + srcSegmentChoiceTypeFound = true + srcSegmentChoiceInt := &ves_io_schema_policy.SegmentPolicyType_SrcSegments{} + srcSegmentChoiceInt.SrcSegments = &ves_io_schema_views.SegmentRefList{} + segmentPolicy.SrcSegmentChoice = srcSegmentChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["segments"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + segmentsInt := make([]*ves_io_schema_views.ObjectRefType, len(sl)) + srcSegmentChoiceInt.SrcSegments.Segments = segmentsInt + for i, ps := range sl { + + sMapToStrVal := ps.(map[string]interface{}) + segmentsInt[i] = &ves_io_schema_views.ObjectRefType{} + + if v, ok := sMapToStrVal["name"]; ok && !isIntfNil(v) { + segmentsInt[i].Name = v.(string) + } + + if v, ok := sMapToStrVal["namespace"]; ok && !isIntfNil(v) { + segmentsInt[i].Namespace = v.(string) + } + + if v, ok := sMapToStrVal["tenant"]; ok && !isIntfNil(v) { + segmentsInt[i].Tenant = v.(string) + } + + } + + } + + } + + } + + } + + } + if v, ok := d.GetOk("server_selector"); ok && !isIntfNil(v) { sl := v.(*schema.Set).List() diff --git a/volterra/resource_auto_volterra_site_mesh_group.go b/volterra/resource_auto_volterra_site_mesh_group.go index e0d84c575..244525cef 100644 --- a/volterra/resource_auto_volterra_site_mesh_group.go +++ b/volterra/resource_auto_volterra_site_mesh_group.go @@ -121,7 +121,20 @@ func resourceVolterraSiteMeshGroup() *schema.Resource { Type: schema.TypeSet, Optional: true, Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{}, + Schema: map[string]*schema.Schema{ + + "control_and_data_plane_mesh": { + + Type: schema.TypeBool, + Optional: true, + }, + + "data_plane_mesh": { + + Type: schema.TypeBool, + Optional: true, + }, + }, }, }, @@ -154,6 +167,18 @@ func resourceVolterraSiteMeshGroup() *schema.Resource { }, }, }, + + "control_and_data_plane_mesh": { + + Type: schema.TypeBool, + Optional: true, + }, + + "data_plane_mesh": { + + Type: schema.TypeBool, + Optional: true, + }, }, }, }, diff --git a/volterra/resource_auto_volterra_tcp_loadbalancer.go b/volterra/resource_auto_volterra_tcp_loadbalancer.go index e2ec40dd0..c203b746a 100644 --- a/volterra/resource_auto_volterra_tcp_loadbalancer.go +++ b/volterra/resource_auto_volterra_tcp_loadbalancer.go @@ -17,6 +17,7 @@ import ( ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" ves_io_schema_views_tcp_loadbalancer "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/tcp_loadbalancer" + drift "github.com/volterraedge/terraform-provider-volterra/volterra/drift_detection" ) // resourceVolterraTcpLoadbalancer is implementation of Volterra's TcpLoadbalancer resources @@ -80,6 +81,130 @@ func resourceVolterraTcpLoadbalancer() *schema.Resource { Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ + "cloud_edge_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cloud_edge": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4_vip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6_vip": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "site": { Type: schema.TypeSet, @@ -133,6 +258,82 @@ func resourceVolterraTcpLoadbalancer() *schema.Resource { }, }, + "site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "virtual_network": { Type: schema.TypeSet, @@ -238,6 +439,82 @@ func resourceVolterraTcpLoadbalancer() *schema.Resource { }, }, + "virtual_site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "vk8s_service": { Type: schema.TypeSet, @@ -1507,6 +1784,81 @@ func resourceVolterraTcpLoadbalancerCreate(d *schema.ResourceData, meta interfac } + if v, ok := advertiseWhereMapStrToI["site_segment"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_SiteSegment{} + choiceInt.SiteSegment = &ves_io_schema_views.WhereSiteSegment{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ipv6 = v.(string) + + } + + if v, ok := cs["segment"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segment := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Segment = segment + for _, set := range sl { + segmentMapStrToI := set.(map[string]interface{}) + + if w, ok := segmentMapStrToI["name"]; ok && !isIntfNil(w) { + segment.Name = w.(string) + } + + if w, ok := segmentMapStrToI["namespace"]; ok && !isIntfNil(w) { + segment.Namespace = w.(string) + } + + if w, ok := segmentMapStrToI["tenant"]; ok && !isIntfNil(w) { + segment.Tenant = w.(string) + } + + } + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + if v, ok := advertiseWhereMapStrToI["virtual_network"]; ok && !isIntfNil(v) && !choiceTypeFound { choiceTypeFound = true @@ -3290,6 +3642,8 @@ func setTcpLoadbalancerFields(client *APIClient, d *schema.ResourceData, resp ve d.Set("namespace", metadata.GetNamespace()) + drift.DriftDetectionTcpLoadbalancer(d,resp) + return nil } @@ -3427,6 +3781,81 @@ func resourceVolterraTcpLoadbalancerUpdate(d *schema.ResourceData, meta interfac } + if v, ok := advertiseWhereMapStrToI["site_segment"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_SiteSegment{} + choiceInt.SiteSegment = &ves_io_schema_views.WhereSiteSegment{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ipv6 = v.(string) + + } + + if v, ok := cs["segment"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segment := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Segment = segment + for _, set := range sl { + segmentMapStrToI := set.(map[string]interface{}) + + if w, ok := segmentMapStrToI["name"]; ok && !isIntfNil(w) { + segment.Name = w.(string) + } + + if w, ok := segmentMapStrToI["namespace"]; ok && !isIntfNil(w) { + segment.Namespace = w.(string) + } + + if w, ok := segmentMapStrToI["tenant"]; ok && !isIntfNil(w) { + segment.Tenant = w.(string) + } + + } + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + if v, ok := advertiseWhereMapStrToI["virtual_network"]; ok && !isIntfNil(v) && !choiceTypeFound { choiceTypeFound = true diff --git a/volterra/resource_auto_volterra_virtual_host.go b/volterra/resource_auto_volterra_virtual_host.go index ed65068fb..d63bd3c03 100644 --- a/volterra/resource_auto_volterra_virtual_host.go +++ b/volterra/resource_auto_volterra_virtual_host.go @@ -1263,6 +1263,13 @@ func resourceVolterraVirtualHost() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -1280,6 +1287,72 @@ func resourceVolterraVirtualHost() *schema.Resource { }, }, + "http_protocol_options": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "http_protocol_enable_v1_only": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "http_protocol_enable_v1_v2": { + + Type: schema.TypeBool, + Optional: true, + }, + + "http_protocol_enable_v2_only": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + "idle_timeout": { Type: schema.TypeInt, Optional: true, @@ -2618,6 +2691,83 @@ func resourceVolterraVirtualHost() *schema.Resource { }, }, }, + + "ztna_proxy_configurations": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ztna_application_config": { + + Type: schema.TypeList, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "ztna_policy_config": { + + Type: schema.TypeList, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, }, } } @@ -4088,6 +4238,18 @@ func resourceVolterraVirtualHostCreate(d *schema.ResourceData, meta interface{}) } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -4116,6 +4278,122 @@ func resourceVolterraVirtualHostCreate(d *schema.ResourceData, meta interface{}) } + //http_protocol_options + if v, ok := d.GetOk("http_protocol_options"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + httpProtocolOptions := &ves_io_schema_virtual_host.HttpProtocolOptions{} + createSpec.HttpProtocolOptions = httpProtocolOptions + for _, set := range sl { + httpProtocolOptionsMapStrToI := set.(map[string]interface{}) + + httpProtocolChoiceTypeFound := false + + if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { + + httpProtocolChoiceTypeFound = true + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema_virtual_host.Http1ProtocolOptions{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_v2"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { + + httpProtocolChoiceTypeFound = true + + if v.(bool) { + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1V2{} + httpProtocolChoiceInt.HttpProtocolEnableV1V2 = &ves_io_schema.Empty{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + } + + } + + if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v2_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { + + httpProtocolChoiceTypeFound = true + + if v.(bool) { + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV2Only{} + httpProtocolChoiceInt.HttpProtocolEnableV2Only = &ves_io_schema.Empty{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + } + + } + + } + + } + //idle_timeout if v, ok := d.GetOk("idle_timeout"); ok && !isIntfNil(v) { @@ -5666,6 +5944,83 @@ func resourceVolterraVirtualHostCreate(d *schema.ResourceData, meta interface{}) } + //ztna_proxy_configurations + if v, ok := d.GetOk("ztna_proxy_configurations"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + ztnaProxyConfigurations := &ves_io_schema_virtual_host.ZtnaProxyConfiguration{} + createSpec.ZtnaProxyConfigurations = ztnaProxyConfigurations + for _, set := range sl { + ztnaProxyConfigurationsMapStrToI := set.(map[string]interface{}) + + if v, ok := ztnaProxyConfigurationsMapStrToI["ztna_application_config"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + ztnaApplicationConfigInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ztnaProxyConfigurations.ZtnaApplicationConfig = ztnaApplicationConfigInt + for i, ps := range sl { + + zacMapToStrVal := ps.(map[string]interface{}) + ztnaApplicationConfigInt[i] = &ves_io_schema.ObjectRefType{} + + ztnaApplicationConfigInt[i].Kind = "ztna_application" + + if v, ok := zacMapToStrVal["name"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Name = v.(string) + } + + if v, ok := zacMapToStrVal["namespace"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Namespace = v.(string) + } + + if v, ok := zacMapToStrVal["tenant"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Tenant = v.(string) + } + + if v, ok := zacMapToStrVal["uid"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Uid = v.(string) + } + + } + + } + + if v, ok := ztnaProxyConfigurationsMapStrToI["ztna_policy_config"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + ztnaPolicyConfigInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ztnaProxyConfigurations.ZtnaPolicyConfig = ztnaPolicyConfigInt + for i, ps := range sl { + + zpcMapToStrVal := ps.(map[string]interface{}) + ztnaPolicyConfigInt[i] = &ves_io_schema.ObjectRefType{} + + ztnaPolicyConfigInt[i].Kind = "ztna" + + if v, ok := zpcMapToStrVal["name"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Name = v.(string) + } + + if v, ok := zpcMapToStrVal["namespace"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Namespace = v.(string) + } + + if v, ok := zpcMapToStrVal["tenant"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Tenant = v.(string) + } + + if v, ok := zpcMapToStrVal["uid"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Uid = v.(string) + } + + } + + } + + } + + } + log.Printf("[DEBUG] Creating Volterra VirtualHost object with struct: %+v", createReq) createVirtualHostResp, err := client.CreateObject(context.Background(), ves_io_schema_virtual_host.ObjectType, createReq) @@ -7154,6 +7509,18 @@ func resourceVolterraVirtualHostUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := headerTransformationTypeMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformationType.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + if v, ok := headerTransformationTypeMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { headerTransformationChoiceTypeFound = true @@ -7182,6 +7549,121 @@ func resourceVolterraVirtualHostUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("http_protocol_options"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + httpProtocolOptions := &ves_io_schema_virtual_host.HttpProtocolOptions{} + updateSpec.HttpProtocolOptions = httpProtocolOptions + for _, set := range sl { + httpProtocolOptionsMapStrToI := set.(map[string]interface{}) + + httpProtocolChoiceTypeFound := false + + if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { + + httpProtocolChoiceTypeFound = true + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1Only{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only = &ves_io_schema_virtual_host.Http1ProtocolOptions{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["header_transformation"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + headerTransformation := &ves_io_schema.HeaderTransformationType{} + httpProtocolChoiceInt.HttpProtocolEnableV1Only.HeaderTransformation = headerTransformation + for _, set := range sl { + headerTransformationMapStrToI := set.(map[string]interface{}) + + headerTransformationChoiceTypeFound := false + + if v, ok := headerTransformationMapStrToI["default_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_DefaultHeaderTransformation{} + headerTransformationChoiceInt.DefaultHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["legacy_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_LegacyHeaderTransformation{} + headerTransformationChoiceInt.LegacyHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["preserve_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_PreserveCaseHeaderTransformation{} + headerTransformationChoiceInt.PreserveCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + if v, ok := headerTransformationMapStrToI["proper_case_header_transformation"]; ok && !isIntfNil(v) && !headerTransformationChoiceTypeFound { + + headerTransformationChoiceTypeFound = true + + if v.(bool) { + headerTransformationChoiceInt := &ves_io_schema.HeaderTransformationType_ProperCaseHeaderTransformation{} + headerTransformationChoiceInt.ProperCaseHeaderTransformation = &ves_io_schema.Empty{} + headerTransformation.HeaderTransformationChoice = headerTransformationChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v1_v2"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { + + httpProtocolChoiceTypeFound = true + + if v.(bool) { + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV1V2{} + httpProtocolChoiceInt.HttpProtocolEnableV1V2 = &ves_io_schema.Empty{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + } + + } + + if v, ok := httpProtocolOptionsMapStrToI["http_protocol_enable_v2_only"]; ok && !isIntfNil(v) && !httpProtocolChoiceTypeFound { + + httpProtocolChoiceTypeFound = true + + if v.(bool) { + httpProtocolChoiceInt := &ves_io_schema_virtual_host.HttpProtocolOptions_HttpProtocolEnableV2Only{} + httpProtocolChoiceInt.HttpProtocolEnableV2Only = &ves_io_schema.Empty{} + httpProtocolOptions.HttpProtocolChoice = httpProtocolChoiceInt + } + + } + + } + + } + if v, ok := d.GetOk("idle_timeout"); ok && !isIntfNil(v) { updateSpec.IdleTimeout = @@ -8709,6 +9191,82 @@ func resourceVolterraVirtualHostUpdate(d *schema.ResourceData, meta interface{}) } + if v, ok := d.GetOk("ztna_proxy_configurations"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + ztnaProxyConfigurations := &ves_io_schema_virtual_host.ZtnaProxyConfiguration{} + updateSpec.ZtnaProxyConfigurations = ztnaProxyConfigurations + for _, set := range sl { + ztnaProxyConfigurationsMapStrToI := set.(map[string]interface{}) + + if v, ok := ztnaProxyConfigurationsMapStrToI["ztna_application_config"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + ztnaApplicationConfigInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ztnaProxyConfigurations.ZtnaApplicationConfig = ztnaApplicationConfigInt + for i, ps := range sl { + + zacMapToStrVal := ps.(map[string]interface{}) + ztnaApplicationConfigInt[i] = &ves_io_schema.ObjectRefType{} + + ztnaApplicationConfigInt[i].Kind = "ztna_application" + + if v, ok := zacMapToStrVal["name"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Name = v.(string) + } + + if v, ok := zacMapToStrVal["namespace"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Namespace = v.(string) + } + + if v, ok := zacMapToStrVal["tenant"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Tenant = v.(string) + } + + if v, ok := zacMapToStrVal["uid"]; ok && !isIntfNil(v) { + ztnaApplicationConfigInt[i].Uid = v.(string) + } + + } + + } + + if v, ok := ztnaProxyConfigurationsMapStrToI["ztna_policy_config"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + ztnaPolicyConfigInt := make([]*ves_io_schema.ObjectRefType, len(sl)) + ztnaProxyConfigurations.ZtnaPolicyConfig = ztnaPolicyConfigInt + for i, ps := range sl { + + zpcMapToStrVal := ps.(map[string]interface{}) + ztnaPolicyConfigInt[i] = &ves_io_schema.ObjectRefType{} + + ztnaPolicyConfigInt[i].Kind = "ztna" + + if v, ok := zpcMapToStrVal["name"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Name = v.(string) + } + + if v, ok := zpcMapToStrVal["namespace"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Namespace = v.(string) + } + + if v, ok := zpcMapToStrVal["tenant"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Tenant = v.(string) + } + + if v, ok := zpcMapToStrVal["uid"]; ok && !isIntfNil(v) { + ztnaPolicyConfigInt[i].Uid = v.(string) + } + + } + + } + + } + + } + log.Printf("[DEBUG] Updating Volterra VirtualHost obj with struct: %+v", updateReq) err := client.ReplaceObject(context.Background(), ves_io_schema_virtual_host.ObjectType, updateReq) diff --git a/volterra/resource_auto_volterra_voltstack_site.go b/volterra/resource_auto_volterra_voltstack_site.go index a83c8b6a6..438ff973e 100644 --- a/volterra/resource_auto_volterra_voltstack_site.go +++ b/volterra/resource_auto_volterra_voltstack_site.go @@ -309,6 +309,64 @@ func resourceVolterraVoltstackSite() *schema.Resource { Optional: true, }, + "kubernetes_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "disable_upgrade_drain": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_upgrade_drain": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "drain_max_unavailable_node_count": { + + Type: schema.TypeInt, + Optional: true, + }, + + "drain_max_unavailable_node_percentage": { + + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "drain_node_timeout": { + Type: schema.TypeInt, + Required: true, + }, + + "disable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "enable_vega_upgrade_mode": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + "local_control_plane": { Type: schema.TypeSet, @@ -1818,6 +1876,29 @@ func resourceVolterraVoltstackSite() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment_network": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + "site_local_inside_network": { Type: schema.TypeBool, @@ -6705,6 +6786,29 @@ func resourceVolterraVoltstackSite() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment_network": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + "site_local_inside_network": { Type: schema.TypeBool, @@ -7307,6 +7411,104 @@ func resourceVolterraVoltstackSiteCreate(d *schema.ResourceData, meta interface{ } + //kubernetes_upgrade_drain + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + createSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + //local_control_plane_choice localControlPlaneChoiceTypeFound := false @@ -9369,6 +9571,39 @@ func resourceVolterraVoltstackSiteCreate(d *schema.ResourceData, meta interface{ } + if v, ok := cs["segment_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_network_interface.EthernetInterfaceType_SegmentNetwork{} + networkChoiceInt.SegmentNetwork = &ves_io_schema_views.ObjectRefType{} + interfaceChoiceInt.EthernetInterface.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["site_local_inside_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { networkChoiceTypeFound = true @@ -15615,6 +15850,39 @@ func resourceVolterraVoltstackSiteCreate(d *schema.ResourceData, meta interface{ } + if v, ok := storageInterfaceMapStrToI["segment_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_network_interface.EthernetInterfaceType_SegmentNetwork{} + networkChoiceInt.SegmentNetwork = &ves_io_schema_views.ObjectRefType{} + storageInterface.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Tenant = v.(string) + + } + + } + + } + if v, ok := storageInterfaceMapStrToI["site_local_inside_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { networkChoiceTypeFound = true @@ -16378,6 +16646,103 @@ func resourceVolterraVoltstackSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := d.GetOk("kubernetes_upgrade_drain"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + kubernetesUpgradeDrain := &ves_io_schema_views.KubernetesUpgradeDrain{} + updateSpec.KubernetesUpgradeDrain = kubernetesUpgradeDrain + for _, set := range sl { + kubernetesUpgradeDrainMapStrToI := set.(map[string]interface{}) + + kubernetesUpgradeDrainEnableChoiceTypeFound := false + + if v, ok := kubernetesUpgradeDrainMapStrToI["disable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + + if v.(bool) { + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_DisableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.DisableUpgradeDrain = &ves_io_schema.Empty{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + } + + } + + if v, ok := kubernetesUpgradeDrainMapStrToI["enable_upgrade_drain"]; ok && !isIntfNil(v) && !kubernetesUpgradeDrainEnableChoiceTypeFound { + + kubernetesUpgradeDrainEnableChoiceTypeFound = true + kubernetesUpgradeDrainEnableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrain_EnableUpgradeDrain{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain = &ves_io_schema_views.KubernetesUpgradeDrainConfig{} + kubernetesUpgradeDrain.KubernetesUpgradeDrainEnableChoice = kubernetesUpgradeDrainEnableChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + drainMaxUnavailableChoiceTypeFound := false + + if v, ok := cs["drain_max_unavailable_node_count"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodeCount{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodeCount = uint32(v.(int)) + + } + + if v, ok := cs["drain_max_unavailable_node_percentage"]; ok && !isIntfNil(v) && !drainMaxUnavailableChoiceTypeFound { + + drainMaxUnavailableChoiceTypeFound = true + drainMaxUnavailableChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DrainMaxUnavailableNodePercentage{} + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainMaxUnavailableChoice = drainMaxUnavailableChoiceInt + + drainMaxUnavailableChoiceInt.DrainMaxUnavailableNodePercentage = uint32(v.(int)) + + } + + if v, ok := cs["drain_node_timeout"]; ok && !isIntfNil(v) { + + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.DrainNodeTimeout = uint32(v.(int)) + + } + + vegaUpgradeModeToggleChoiceTypeFound := false + + if v, ok := cs["disable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_DisableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.DisableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + if v, ok := cs["enable_vega_upgrade_mode"]; ok && !isIntfNil(v) && !vegaUpgradeModeToggleChoiceTypeFound { + + vegaUpgradeModeToggleChoiceTypeFound = true + + if v.(bool) { + vegaUpgradeModeToggleChoiceInt := &ves_io_schema_views.KubernetesUpgradeDrainConfig_EnableVegaUpgradeMode{} + vegaUpgradeModeToggleChoiceInt.EnableVegaUpgradeMode = &ves_io_schema.Empty{} + kubernetesUpgradeDrainEnableChoiceInt.EnableUpgradeDrain.VegaUpgradeModeToggleChoice = vegaUpgradeModeToggleChoiceInt + } + + } + + } + + } + + } + + } + localControlPlaneChoiceTypeFound := false if v, ok := d.GetOk("local_control_plane"); ok && !localControlPlaneChoiceTypeFound { @@ -18432,6 +18797,39 @@ func resourceVolterraVoltstackSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := cs["segment_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_network_interface.EthernetInterfaceType_SegmentNetwork{} + networkChoiceInt.SegmentNetwork = &ves_io_schema_views.ObjectRefType{} + interfaceChoiceInt.EthernetInterface.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Tenant = v.(string) + + } + + } + + } + if v, ok := cs["site_local_inside_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { networkChoiceTypeFound = true @@ -24672,6 +25070,39 @@ func resourceVolterraVoltstackSiteUpdate(d *schema.ResourceData, meta interface{ } + if v, ok := storageInterfaceMapStrToI["segment_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { + + networkChoiceTypeFound = true + networkChoiceInt := &ves_io_schema_network_interface.EthernetInterfaceType_SegmentNetwork{} + networkChoiceInt.SegmentNetwork = &ves_io_schema_views.ObjectRefType{} + storageInterface.NetworkChoice = networkChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + networkChoiceInt.SegmentNetwork.Tenant = v.(string) + + } + + } + + } + if v, ok := storageInterfaceMapStrToI["site_local_inside_network"]; ok && !isIntfNil(v) && !networkChoiceTypeFound { networkChoiceTypeFound = true diff --git a/volterra/resource_auto_volterra_ztna.go b/volterra/resource_auto_volterra_ztna.go new file mode 100644 index 000000000..e7755d331 --- /dev/null +++ b/volterra/resource_auto_volterra_ztna.go @@ -0,0 +1,2878 @@ +// +// Copyright (c) 2018 Volterra, Inc. All rights reserved. +// Code generated by ves-gen-tf-provider. DO NOT EDIT. +// + +package volterra + +import ( + "context" + "fmt" + "log" + "strings" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "gopkg.volterra.us/stdlib/client/vesapi" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_ztna "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna" +) + +// resourceVolterraZtna is implementation of Volterra's Ztna resources +func resourceVolterraZtna() *schema.Resource { + return &schema.Resource{ + Create: resourceVolterraZtnaCreate, + Read: resourceVolterraZtnaRead, + Update: resourceVolterraZtnaUpdate, + Delete: resourceVolterraZtnaDelete, + + Schema: map[string]*schema.Schema{ + + "annotations": { + Type: schema.TypeMap, + Optional: true, + }, + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + }, + + "labels": { + Type: schema.TypeMap, + Optional: true, + }, + + "name": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "namespace": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "connectivity": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "connectivities": { + Type: schema.TypeString, + Optional: true, + }, + + "connectivity_policy_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "per_session": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "external_server": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + "value": { + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "admin_password": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blindfold_secret_info_internal": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "secret_encoding_type": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "blindfold_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + }, + + "location": { + Type: schema.TypeString, + Required: true, + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "clear_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "provider": { + Type: schema.TypeString, + Optional: true, + }, + + "url": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "vault_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "provider": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "secret_encoding": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "version": { + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "wingman_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "admin_username": { + Type: schema.TypeString, + Optional: true, + }, + + "domain": { + Type: schema.TypeString, + Optional: true, + }, + + "server_type": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "lease_pool_member": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + "value": { + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "end_address": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ipv6": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "start_address": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ipv6": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "per_session_policy_name": { + Type: schema.TypeString, + Optional: true, + }, + + "resources": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + "value": { + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "acl": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "entries": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "action": { + Type: schema.TypeString, + Optional: true, + }, + + "destination_end_port": { + Type: schema.TypeInt, + Optional: true, + }, + + "destination_ip": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ipv6": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "destination_start_port": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "connectivity": { + + Type: schema.TypeBool, + Optional: true, + }, + + "web": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "sequence_action": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "connectivity_access_policy_name": { + Type: schema.TypeString, + Optional: true, + }, + + "next_action": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "active_directory_auth": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "active_directory_query": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "filter": { + Type: schema.TypeString, + Optional: true, + }, + + "resource_assign": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_name": { + Type: schema.TypeString, + Optional: true, + }, + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "rules_resource_assign": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "acls": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "network_access_rule": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "web_top_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "expression": { + Type: schema.TypeString, + Optional: true, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "active_directory_query": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "filter": { + Type: schema.TypeString, + Optional: true, + }, + + "resource_assign": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_name": { + Type: schema.TypeString, + Optional: true, + }, + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "rules_resource_assign": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "acls": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "network_access_rule": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "web_top_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "log_on": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "active_directory_auth": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "active_directory_query": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "filter": { + Type: schema.TypeString, + Optional: true, + }, + + "resource_assign": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_name": { + Type: schema.TypeString, + Optional: true, + }, + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "rules_resource_assign": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "acls": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "network_access_rule": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "web_top_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "expression": { + Type: schema.TypeString, + Optional: true, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "customization": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "password": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blindfold_secret_info_internal": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "secret_encoding_type": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "blindfold_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + }, + + "location": { + Type: schema.TypeString, + Required: true, + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "clear_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "provider": { + Type: schema.TypeString, + Optional: true, + }, + + "url": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "vault_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "provider": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "secret_encoding": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "version": { + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "wingman_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "user_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "resource_assign": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "allow_name": { + Type: schema.TypeString, + Optional: true, + }, + + "deny_name": { + Type: schema.TypeString, + Optional: true, + }, + + "rules_resource_assign": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "acls": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "network_access_rule": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "web_top_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "server": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + } +} + +// resourceVolterraZtnaCreate creates Ztna resource +func resourceVolterraZtnaCreate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + createMeta := &ves_io_schema.ObjectCreateMetaType{} + createSpec := &ves_io_schema_ztna.CreateSpecType{} + createReq := &ves_io_schema_ztna.CreateRequest{ + Metadata: createMeta, + Spec: createSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + createMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + createMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + createMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + createMeta.Namespace = + v.(string) + } + + //connectivity + if v, ok := d.GetOk("connectivity"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + connectivity := &ves_io_schema_ztna.ConnectivityPolicyType{} + createSpec.Connectivity = connectivity + for _, set := range sl { + connectivityMapStrToI := set.(map[string]interface{}) + + if v, ok := connectivityMapStrToI["connectivities"]; ok && !isIntfNil(v) { + + connectivity.Connectivities = ves_io_schema_ztna.Connectivity(ves_io_schema_ztna.Connectivity_value[v.(string)]) + + } + + if w, ok := connectivityMapStrToI["connectivity_policy_name"]; ok && !isIntfNil(w) { + connectivity.ConnectivityPolicyName = w.(string) + } + + } + + } + + //per_session + if v, ok := d.GetOk("per_session"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + perSession := &ves_io_schema_ztna.PerSessionPolicyType{} + createSpec.PerSession = perSession + for _, set := range sl { + perSessionMapStrToI := set.(map[string]interface{}) + + if v, ok := perSessionMapStrToI["external_server"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + externalServer := make(map[string]*ves_io_schema_ztna.ExternalServers) + perSession.ExternalServer = externalServer + for _, set := range sl { + externalServerMapStrToI := set.(map[string]interface{}) + key, ok := externalServerMapStrToI["name"] + if ok && !isIntfNil(key) { + externalServer[key.(string)] = &ves_io_schema_ztna.ExternalServers{} + val, _ := externalServerMapStrToI["value"] + + externalServerVals := val.(*schema.Set).List() + for _, intVal := range externalServerVals { + + externalServerStaticMap := intVal.(map[string]interface{}) + + if w, ok := externalServerStaticMap["admin_password"]; ok && !isIntfNil(w) { + externalServer[key.(string)].AdminPassword = w.(*ves_io_schema.SecretType) + } + + if w, ok := externalServerStaticMap["admin_username"]; ok && !isIntfNil(w) { + externalServer[key.(string)].AdminUsername = w.(string) + } + + if w, ok := externalServerStaticMap["domain"]; ok && !isIntfNil(w) { + externalServer[key.(string)].Domain = w.(string) + } + + if w, ok := externalServerStaticMap["server_type"]; ok && !isIntfNil(w) { + externalServer[key.(string)].ServerType = w.(ves_io_schema_ztna.ServerType) + } + + // break after one loop + break + } + } + } + + } + + if v, ok := perSessionMapStrToI["lease_pool_member"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + leasePoolMember := make(map[string]*ves_io_schema_ztna.LeasePoolMember) + perSession.LeasePoolMember = leasePoolMember + for _, set := range sl { + leasePoolMemberMapStrToI := set.(map[string]interface{}) + key, ok := leasePoolMemberMapStrToI["name"] + if ok && !isIntfNil(key) { + leasePoolMember[key.(string)] = &ves_io_schema_ztna.LeasePoolMember{} + val, _ := leasePoolMemberMapStrToI["value"] + + leasePoolMemberVals := val.(*schema.Set).List() + for _, intVal := range leasePoolMemberVals { + + leasePoolMemberStaticMap := intVal.(map[string]interface{}) + + if w, ok := leasePoolMemberStaticMap["end_address"]; ok && !isIntfNil(w) { + leasePoolMember[key.(string)].EndAddress = w.(*ves_io_schema.IpAddressType) + } + + if w, ok := leasePoolMemberStaticMap["start_address"]; ok && !isIntfNil(w) { + leasePoolMember[key.(string)].StartAddress = w.(*ves_io_schema.IpAddressType) + } + + // break after one loop + break + } + } + } + + } + + if w, ok := perSessionMapStrToI["per_session_policy_name"]; ok && !isIntfNil(w) { + perSession.PerSessionPolicyName = w.(string) + } + + if v, ok := perSessionMapStrToI["resources"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resources := make(map[string]*ves_io_schema_ztna.Resource) + perSession.Resources = resources + for _, set := range sl { + resourcesMapStrToI := set.(map[string]interface{}) + key, ok := resourcesMapStrToI["name"] + if ok && !isIntfNil(key) { + resources[key.(string)] = &ves_io_schema_ztna.Resource{} + val, _ := resourcesMapStrToI["value"] + + resourcesVals := val.(*schema.Set).List() + for _, intVal := range resourcesVals { + + resourcesStaticMap := intVal.(map[string]interface{}) + + if w, ok := resourcesStaticMap["resource_type"]; ok && !isIntfNil(w) { + resources[key.(string)].ResourceType = nil + } + + // break after one loop + break + } + } + } + + } + + if v, ok := perSessionMapStrToI["sequence_action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + sequenceAction := &ves_io_schema_ztna.SequenceAction{} + perSession.SequenceAction = sequenceAction + for _, set := range sl { + sequenceActionMapStrToI := set.(map[string]interface{}) + + if w, ok := sequenceActionMapStrToI["connectivity_access_policy_name"]; ok && !isIntfNil(w) { + sequenceAction.ConnectivityAccessPolicyName = w.(string) + } + + if v, ok := sequenceActionMapStrToI["next_action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + nextAction := &ves_io_schema_ztna.ActionType{} + sequenceAction.NextAction = nextAction + for _, set := range sl { + nextActionMapStrToI := set.(map[string]interface{}) + + itemTypeTypeFound := false + + if v, ok := nextActionMapStrToI["active_directory_auth"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_ActiveDirectoryAuth{} + itemTypeInt.ActiveDirectoryAuth = &ves_io_schema_ztna.ActiveDirectoryAuth{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["active_directory_query"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + activeDirectoryQuery := make([]*ves_io_schema_ztna.ActiveDirectoryQuery, len(sl)) + itemTypeInt.ActiveDirectoryAuth.ActiveDirectoryQuery = activeDirectoryQuery + for i, set := range sl { + activeDirectoryQuery[i] = &ves_io_schema_ztna.ActiveDirectoryQuery{} + activeDirectoryQueryMapStrToI := set.(map[string]interface{}) + + if w, ok := activeDirectoryQueryMapStrToI["deny_name"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].DenyName = w.(string) + } + + if w, ok := activeDirectoryQueryMapStrToI["filter"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Filter = w.(string) + } + + if v, ok := activeDirectoryQueryMapStrToI["resource_assign"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resourceAssign := &ves_io_schema_ztna.ResourceAssign{} + activeDirectoryQuery[i].ResourceAssign = resourceAssign + for _, set := range sl { + resourceAssignMapStrToI := set.(map[string]interface{}) + + if v, ok := resourceAssignMapStrToI["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + resourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + if w, ok := activeDirectoryQueryMapStrToI["server"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Server = w.(string) + } + + } + + } + + if v, ok := cs["deny_name"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryAuth.DenyName = v.(string) + + } + + if v, ok := cs["expression"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryAuth.Expression = v.(string) + + } + + if v, ok := cs["server"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryAuth.Server = v.(string) + + } + + } + + } + + if v, ok := nextActionMapStrToI["active_directory_query"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_ActiveDirectoryQuery{} + itemTypeInt.ActiveDirectoryQuery = &ves_io_schema_ztna.ActiveDirectoryQuery{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["deny_name"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryQuery.DenyName = v.(string) + + } + + if v, ok := cs["filter"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryQuery.Filter = v.(string) + + } + + if v, ok := cs["resource_assign"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resourceAssign := &ves_io_schema_ztna.ResourceAssign{} + itemTypeInt.ActiveDirectoryQuery.ResourceAssign = resourceAssign + for _, set := range sl { + resourceAssignMapStrToI := set.(map[string]interface{}) + + if v, ok := resourceAssignMapStrToI["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + resourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + if v, ok := cs["server"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryQuery.Server = v.(string) + + } + + } + + } + + if v, ok := nextActionMapStrToI["log_on"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_LogOn{} + itemTypeInt.LogOn = &ves_io_schema_ztna.LogonItemType{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["active_directory_auth"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + activeDirectoryAuth := make([]*ves_io_schema_ztna.ActiveDirectoryAuth, len(sl)) + itemTypeInt.LogOn.ActiveDirectoryAuth = activeDirectoryAuth + for i, set := range sl { + activeDirectoryAuth[i] = &ves_io_schema_ztna.ActiveDirectoryAuth{} + activeDirectoryAuthMapStrToI := set.(map[string]interface{}) + + if v, ok := activeDirectoryAuthMapStrToI["active_directory_query"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + activeDirectoryQuery := make([]*ves_io_schema_ztna.ActiveDirectoryQuery, len(sl)) + activeDirectoryAuth[i].ActiveDirectoryQuery = activeDirectoryQuery + for i, set := range sl { + activeDirectoryQuery[i] = &ves_io_schema_ztna.ActiveDirectoryQuery{} + activeDirectoryQueryMapStrToI := set.(map[string]interface{}) + + if w, ok := activeDirectoryQueryMapStrToI["deny_name"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].DenyName = w.(string) + } + + if w, ok := activeDirectoryQueryMapStrToI["filter"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Filter = w.(string) + } + + if v, ok := activeDirectoryQueryMapStrToI["resource_assign"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resourceAssign := &ves_io_schema_ztna.ResourceAssign{} + activeDirectoryQuery[i].ResourceAssign = resourceAssign + for _, set := range sl { + resourceAssignMapStrToI := set.(map[string]interface{}) + + if v, ok := resourceAssignMapStrToI["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + resourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + if w, ok := activeDirectoryQueryMapStrToI["server"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Server = w.(string) + } + + } + + } + + if w, ok := activeDirectoryAuthMapStrToI["deny_name"]; ok && !isIntfNil(w) { + activeDirectoryAuth[i].DenyName = w.(string) + } + + if w, ok := activeDirectoryAuthMapStrToI["expression"]; ok && !isIntfNil(w) { + activeDirectoryAuth[i].Expression = w.(string) + } + + if w, ok := activeDirectoryAuthMapStrToI["server"]; ok && !isIntfNil(w) { + activeDirectoryAuth[i].Server = w.(string) + } + + } + + } + + if v, ok := cs["customization"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + customization := make([]*ves_io_schema_ztna.Custmization, len(sl)) + itemTypeInt.LogOn.Customization = customization + for i, set := range sl { + customization[i] = &ves_io_schema_ztna.Custmization{} + customizationMapStrToI := set.(map[string]interface{}) + + if v, ok := customizationMapStrToI["password"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + password := &ves_io_schema.SecretType{} + customization[i].Password = password + for _, set := range sl { + passwordMapStrToI := set.(map[string]interface{}) + + if v, ok := passwordMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + password.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := passwordMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + password.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := passwordMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := passwordMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := passwordMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := passwordMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if w, ok := customizationMapStrToI["user_name"]; ok && !isIntfNil(w) { + customization[i].UserName = w.(string) + } + + } + + } + + } + + } + + if v, ok := nextActionMapStrToI["resource_assign"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_ResourceAssign{} + itemTypeInt.ResourceAssign = &ves_io_schema_ztna.ResourceAssign{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + itemTypeInt.ResourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + } + + } + + log.Printf("[DEBUG] Creating Volterra Ztna object with struct: %+v", createReq) + + createZtnaResp, err := client.CreateObject(context.Background(), ves_io_schema_ztna.ObjectType, createReq) + if err != nil { + return fmt.Errorf("error creating Ztna: %s", err) + } + d.SetId(createZtnaResp.GetObjSystemMetadata().GetUid()) + + return resourceVolterraZtnaRead(d, meta) +} + +func resourceVolterraZtnaRead(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + resp, err := client.GetObject(context.Background(), ves_io_schema_ztna.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] Ztna %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra Ztna %q: %s", d.Id(), err) + } + return setZtnaFields(client, d, resp) +} + +func setZtnaFields(client *APIClient, d *schema.ResourceData, resp vesapi.GetObjectResponse) error { + metadata := resp.GetObjMetadata() + + d.Set("annotations", metadata.GetAnnotations()) + + d.Set("description", metadata.GetDescription()) + + d.Set("disable", metadata.GetDisable()) + + d.Set("labels", metadata.GetLabels()) + + d.Set("name", metadata.GetName()) + + d.Set("namespace", metadata.GetNamespace()) + + return nil +} + +// resourceVolterraZtnaUpdate updates Ztna resource +func resourceVolterraZtnaUpdate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + updateMeta := &ves_io_schema.ObjectReplaceMetaType{} + updateSpec := &ves_io_schema_ztna.ReplaceSpecType{} + updateReq := &ves_io_schema_ztna.ReplaceRequest{ + Metadata: updateMeta, + Spec: updateSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + updateMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + updateMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + updateMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + updateMeta.Namespace = + v.(string) + } + + if v, ok := d.GetOk("connectivity"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + connectivity := &ves_io_schema_ztna.ConnectivityPolicyType{} + updateSpec.Connectivity = connectivity + for _, set := range sl { + connectivityMapStrToI := set.(map[string]interface{}) + + if v, ok := connectivityMapStrToI["connectivities"]; ok && !isIntfNil(v) { + + connectivity.Connectivities = ves_io_schema_ztna.Connectivity(ves_io_schema_ztna.Connectivity_value[v.(string)]) + + } + + if w, ok := connectivityMapStrToI["connectivity_policy_name"]; ok && !isIntfNil(w) { + connectivity.ConnectivityPolicyName = w.(string) + } + + } + + } + + if v, ok := d.GetOk("per_session"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + perSession := &ves_io_schema_ztna.PerSessionPolicyType{} + updateSpec.PerSession = perSession + for _, set := range sl { + perSessionMapStrToI := set.(map[string]interface{}) + + if v, ok := perSessionMapStrToI["external_server"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + externalServer := make(map[string]*ves_io_schema_ztna.ExternalServers) + perSession.ExternalServer = externalServer + for _, set := range sl { + externalServerMapStrToI := set.(map[string]interface{}) + key, ok := externalServerMapStrToI["name"] + if ok && !isIntfNil(key) { + externalServer[key.(string)] = &ves_io_schema_ztna.ExternalServers{} + val, _ := externalServerMapStrToI["value"] + + externalServerVals := val.(*schema.Set).List() + for _, intVal := range externalServerVals { + + externalServerStaticMap := intVal.(map[string]interface{}) + + if w, ok := externalServerStaticMap["admin_password"]; ok && !isIntfNil(w) { + externalServer[key.(string)].AdminPassword = w.(*ves_io_schema.SecretType) + } + + if w, ok := externalServerStaticMap["admin_username"]; ok && !isIntfNil(w) { + externalServer[key.(string)].AdminUsername = w.(string) + } + + if w, ok := externalServerStaticMap["domain"]; ok && !isIntfNil(w) { + externalServer[key.(string)].Domain = w.(string) + } + + if w, ok := externalServerStaticMap["server_type"]; ok && !isIntfNil(w) { + externalServer[key.(string)].ServerType = w.(ves_io_schema_ztna.ServerType) + } + + // break after one loop + break + } + } + } + + } + + if v, ok := perSessionMapStrToI["lease_pool_member"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + leasePoolMember := make(map[string]*ves_io_schema_ztna.LeasePoolMember) + perSession.LeasePoolMember = leasePoolMember + for _, set := range sl { + leasePoolMemberMapStrToI := set.(map[string]interface{}) + key, ok := leasePoolMemberMapStrToI["name"] + if ok && !isIntfNil(key) { + leasePoolMember[key.(string)] = &ves_io_schema_ztna.LeasePoolMember{} + val, _ := leasePoolMemberMapStrToI["value"] + + leasePoolMemberVals := val.(*schema.Set).List() + for _, intVal := range leasePoolMemberVals { + + leasePoolMemberStaticMap := intVal.(map[string]interface{}) + + if w, ok := leasePoolMemberStaticMap["end_address"]; ok && !isIntfNil(w) { + leasePoolMember[key.(string)].EndAddress = w.(*ves_io_schema.IpAddressType) + } + + if w, ok := leasePoolMemberStaticMap["start_address"]; ok && !isIntfNil(w) { + leasePoolMember[key.(string)].StartAddress = w.(*ves_io_schema.IpAddressType) + } + + // break after one loop + break + } + } + } + + } + + if w, ok := perSessionMapStrToI["per_session_policy_name"]; ok && !isIntfNil(w) { + perSession.PerSessionPolicyName = w.(string) + } + + if v, ok := perSessionMapStrToI["resources"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resources := make(map[string]*ves_io_schema_ztna.Resource) + perSession.Resources = resources + for _, set := range sl { + resourcesMapStrToI := set.(map[string]interface{}) + key, ok := resourcesMapStrToI["name"] + if ok && !isIntfNil(key) { + resources[key.(string)] = &ves_io_schema_ztna.Resource{} + val, _ := resourcesMapStrToI["value"] + + resourcesVals := val.(*schema.Set).List() + for _, intVal := range resourcesVals { + + resourcesStaticMap := intVal.(map[string]interface{}) + + if w, ok := resourcesStaticMap["resource_type"]; ok && !isIntfNil(w) { + resources[key.(string)].ResourceType = nil + } + + // break after one loop + break + } + } + } + + } + + if v, ok := perSessionMapStrToI["sequence_action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + sequenceAction := &ves_io_schema_ztna.SequenceAction{} + perSession.SequenceAction = sequenceAction + for _, set := range sl { + sequenceActionMapStrToI := set.(map[string]interface{}) + + if w, ok := sequenceActionMapStrToI["connectivity_access_policy_name"]; ok && !isIntfNil(w) { + sequenceAction.ConnectivityAccessPolicyName = w.(string) + } + + if v, ok := sequenceActionMapStrToI["next_action"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + nextAction := &ves_io_schema_ztna.ActionType{} + sequenceAction.NextAction = nextAction + for _, set := range sl { + nextActionMapStrToI := set.(map[string]interface{}) + + itemTypeTypeFound := false + + if v, ok := nextActionMapStrToI["active_directory_auth"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_ActiveDirectoryAuth{} + itemTypeInt.ActiveDirectoryAuth = &ves_io_schema_ztna.ActiveDirectoryAuth{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["active_directory_query"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + activeDirectoryQuery := make([]*ves_io_schema_ztna.ActiveDirectoryQuery, len(sl)) + itemTypeInt.ActiveDirectoryAuth.ActiveDirectoryQuery = activeDirectoryQuery + for i, set := range sl { + activeDirectoryQuery[i] = &ves_io_schema_ztna.ActiveDirectoryQuery{} + activeDirectoryQueryMapStrToI := set.(map[string]interface{}) + + if w, ok := activeDirectoryQueryMapStrToI["deny_name"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].DenyName = w.(string) + } + + if w, ok := activeDirectoryQueryMapStrToI["filter"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Filter = w.(string) + } + + if v, ok := activeDirectoryQueryMapStrToI["resource_assign"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resourceAssign := &ves_io_schema_ztna.ResourceAssign{} + activeDirectoryQuery[i].ResourceAssign = resourceAssign + for _, set := range sl { + resourceAssignMapStrToI := set.(map[string]interface{}) + + if v, ok := resourceAssignMapStrToI["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + resourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + if w, ok := activeDirectoryQueryMapStrToI["server"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Server = w.(string) + } + + } + + } + + if v, ok := cs["deny_name"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryAuth.DenyName = v.(string) + + } + + if v, ok := cs["expression"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryAuth.Expression = v.(string) + + } + + if v, ok := cs["server"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryAuth.Server = v.(string) + + } + + } + + } + + if v, ok := nextActionMapStrToI["active_directory_query"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_ActiveDirectoryQuery{} + itemTypeInt.ActiveDirectoryQuery = &ves_io_schema_ztna.ActiveDirectoryQuery{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["deny_name"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryQuery.DenyName = v.(string) + + } + + if v, ok := cs["filter"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryQuery.Filter = v.(string) + + } + + if v, ok := cs["resource_assign"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resourceAssign := &ves_io_schema_ztna.ResourceAssign{} + itemTypeInt.ActiveDirectoryQuery.ResourceAssign = resourceAssign + for _, set := range sl { + resourceAssignMapStrToI := set.(map[string]interface{}) + + if v, ok := resourceAssignMapStrToI["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + resourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + if v, ok := cs["server"]; ok && !isIntfNil(v) { + + itemTypeInt.ActiveDirectoryQuery.Server = v.(string) + + } + + } + + } + + if v, ok := nextActionMapStrToI["log_on"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_LogOn{} + itemTypeInt.LogOn = &ves_io_schema_ztna.LogonItemType{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["active_directory_auth"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + activeDirectoryAuth := make([]*ves_io_schema_ztna.ActiveDirectoryAuth, len(sl)) + itemTypeInt.LogOn.ActiveDirectoryAuth = activeDirectoryAuth + for i, set := range sl { + activeDirectoryAuth[i] = &ves_io_schema_ztna.ActiveDirectoryAuth{} + activeDirectoryAuthMapStrToI := set.(map[string]interface{}) + + if v, ok := activeDirectoryAuthMapStrToI["active_directory_query"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + activeDirectoryQuery := make([]*ves_io_schema_ztna.ActiveDirectoryQuery, len(sl)) + activeDirectoryAuth[i].ActiveDirectoryQuery = activeDirectoryQuery + for i, set := range sl { + activeDirectoryQuery[i] = &ves_io_schema_ztna.ActiveDirectoryQuery{} + activeDirectoryQueryMapStrToI := set.(map[string]interface{}) + + if w, ok := activeDirectoryQueryMapStrToI["deny_name"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].DenyName = w.(string) + } + + if w, ok := activeDirectoryQueryMapStrToI["filter"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Filter = w.(string) + } + + if v, ok := activeDirectoryQueryMapStrToI["resource_assign"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + resourceAssign := &ves_io_schema_ztna.ResourceAssign{} + activeDirectoryQuery[i].ResourceAssign = resourceAssign + for _, set := range sl { + resourceAssignMapStrToI := set.(map[string]interface{}) + + if v, ok := resourceAssignMapStrToI["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + resourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + if w, ok := activeDirectoryQueryMapStrToI["server"]; ok && !isIntfNil(w) { + activeDirectoryQuery[i].Server = w.(string) + } + + } + + } + + if w, ok := activeDirectoryAuthMapStrToI["deny_name"]; ok && !isIntfNil(w) { + activeDirectoryAuth[i].DenyName = w.(string) + } + + if w, ok := activeDirectoryAuthMapStrToI["expression"]; ok && !isIntfNil(w) { + activeDirectoryAuth[i].Expression = w.(string) + } + + if w, ok := activeDirectoryAuthMapStrToI["server"]; ok && !isIntfNil(w) { + activeDirectoryAuth[i].Server = w.(string) + } + + } + + } + + if v, ok := cs["customization"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + customization := make([]*ves_io_schema_ztna.Custmization, len(sl)) + itemTypeInt.LogOn.Customization = customization + for i, set := range sl { + customization[i] = &ves_io_schema_ztna.Custmization{} + customizationMapStrToI := set.(map[string]interface{}) + + if v, ok := customizationMapStrToI["password"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + password := &ves_io_schema.SecretType{} + customization[i].Password = password + for _, set := range sl { + passwordMapStrToI := set.(map[string]interface{}) + + if v, ok := passwordMapStrToI["blindfold_secret_info_internal"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + blindfoldSecretInfoInternal := &ves_io_schema.BlindfoldSecretInfoType{} + password.BlindfoldSecretInfoInternal = blindfoldSecretInfoInternal + for _, set := range sl { + blindfoldSecretInfoInternalMapStrToI := set.(map[string]interface{}) + + if w, ok := blindfoldSecretInfoInternalMapStrToI["decryption_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.DecryptionProvider = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["location"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.Location = w.(string) + } + + if w, ok := blindfoldSecretInfoInternalMapStrToI["store_provider"]; ok && !isIntfNil(w) { + blindfoldSecretInfoInternal.StoreProvider = w.(string) + } + + } + + } + + if v, ok := passwordMapStrToI["secret_encoding_type"]; ok && !isIntfNil(v) { + + password.SecretEncodingType = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + secretInfoOneofTypeFound := false + + if v, ok := passwordMapStrToI["blindfold_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_BlindfoldSecretInfo{} + secretInfoOneofInt.BlindfoldSecretInfo = &ves_io_schema.BlindfoldSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["decryption_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.DecryptionProvider = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.Location = v.(string) + + } + + if v, ok := cs["store_provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.BlindfoldSecretInfo.StoreProvider = v.(string) + + } + + } + + } + + if v, ok := passwordMapStrToI["clear_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_ClearSecretInfo{} + secretInfoOneofInt.ClearSecretInfo = &ves_io_schema.ClearSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["url"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.ClearSecretInfo.Url = v.(string) + + } + + } + + } + + if v, ok := passwordMapStrToI["vault_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_VaultSecretInfo{} + secretInfoOneofInt.VaultSecretInfo = &ves_io_schema.VaultSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["key"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Key = v.(string) + + } + + if v, ok := cs["location"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Location = v.(string) + + } + + if v, ok := cs["provider"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Provider = v.(string) + + } + + if v, ok := cs["secret_encoding"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.SecretEncoding = ves_io_schema.SecretEncodingType(ves_io_schema.SecretEncodingType_value[v.(string)]) + + } + + if v, ok := cs["version"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.VaultSecretInfo.Version = uint32(v.(int)) + + } + + } + + } + + if v, ok := passwordMapStrToI["wingman_secret_info"]; ok && !isIntfNil(v) && !secretInfoOneofTypeFound { + + secretInfoOneofTypeFound = true + secretInfoOneofInt := &ves_io_schema.SecretType_WingmanSecretInfo{} + secretInfoOneofInt.WingmanSecretInfo = &ves_io_schema.WingmanSecretInfoType{} + password.SecretInfoOneof = secretInfoOneofInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + secretInfoOneofInt.WingmanSecretInfo.Name = v.(string) + + } + + } + + } + + } + + } + + if w, ok := customizationMapStrToI["user_name"]; ok && !isIntfNil(w) { + customization[i].UserName = w.(string) + } + + } + + } + + } + + } + + if v, ok := nextActionMapStrToI["resource_assign"]; ok && !isIntfNil(v) && !itemTypeTypeFound { + + itemTypeTypeFound = true + itemTypeInt := &ves_io_schema_ztna.ActionType_ResourceAssign{} + itemTypeInt.ResourceAssign = &ves_io_schema_ztna.ResourceAssign{} + nextAction.ItemType = itemTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["allow"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + allow := make([]*ves_io_schema_ztna.AllowResourceAssign, len(sl)) + itemTypeInt.ResourceAssign.Allow = allow + for i, set := range sl { + allow[i] = &ves_io_schema_ztna.AllowResourceAssign{} + allowMapStrToI := set.(map[string]interface{}) + + if w, ok := allowMapStrToI["allow_name"]; ok && !isIntfNil(w) { + allow[i].AllowName = w.(string) + } + + if w, ok := allowMapStrToI["deny_name"]; ok && !isIntfNil(w) { + allow[i].DenyName = w.(string) + } + + if v, ok := allowMapStrToI["rules_resource_assign"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + rulesResourceAssign := make([]*ves_io_schema_ztna.Rules, len(sl)) + allow[i].RulesResourceAssign = rulesResourceAssign + for i, set := range sl { + rulesResourceAssign[i] = &ves_io_schema_ztna.Rules{} + rulesResourceAssignMapStrToI := set.(map[string]interface{}) + + if w, ok := rulesResourceAssignMapStrToI["acls"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].Acls = ls + } + + if w, ok := rulesResourceAssignMapStrToI["network_access_rule"]; ok && !isIntfNil(w) { + ls := make([]string, len(w.([]interface{}))) + for i, v := range w.([]interface{}) { + ls[i] = v.(string) + } + rulesResourceAssign[i].NetworkAccessRule = ls + } + + if w, ok := rulesResourceAssignMapStrToI["web_top_name"]; ok && !isIntfNil(w) { + rulesResourceAssign[i].WebTopName = w.(string) + } + + } + + } + + if w, ok := allowMapStrToI["server"]; ok && !isIntfNil(w) { + allow[i].Server = w.(string) + } + + } + + } + + } + + } + + } + + } + + } + + } + + } + + } + + log.Printf("[DEBUG] Updating Volterra Ztna obj with struct: %+v", updateReq) + + err := client.ReplaceObject(context.Background(), ves_io_schema_ztna.ObjectType, updateReq) + if err != nil { + return fmt.Errorf("error updating Ztna: %s", err) + } + + return resourceVolterraZtnaRead(d, meta) +} + +func resourceVolterraZtnaDelete(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + _, err := client.GetObject(context.Background(), ves_io_schema_ztna.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] Ztna %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra Ztna before deleting %q: %s", d.Id(), err) + } + + log.Printf("[DEBUG] Deleting Volterra Ztna obj with name %+v in namespace %+v", name, namespace) + return client.DeleteObject(context.Background(), ves_io_schema_ztna.ObjectType, namespace, name) +} diff --git a/volterra/resource_auto_volterra_ztna_application.go b/volterra/resource_auto_volterra_ztna_application.go new file mode 100644 index 000000000..6af22671a --- /dev/null +++ b/volterra/resource_auto_volterra_ztna_application.go @@ -0,0 +1,2113 @@ +// +// Copyright (c) 2018 Volterra, Inc. All rights reserved. +// Code generated by ves-gen-tf-provider. DO NOT EDIT. +// + +package volterra + +import ( + "context" + "fmt" + "log" + "strings" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "gopkg.volterra.us/stdlib/client/vesapi" + + ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + ves_io_schema_ztna_application "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/ztna_application" +) + +// resourceVolterraZtnaApplication is implementation of Volterra's ZtnaApplication resources +func resourceVolterraZtnaApplication() *schema.Resource { + return &schema.Resource{ + Create: resourceVolterraZtnaApplicationCreate, + Read: resourceVolterraZtnaApplicationRead, + Update: resourceVolterraZtnaApplicationUpdate, + Delete: resourceVolterraZtnaApplicationDelete, + + Schema: map[string]*schema.Schema{ + + "annotations": { + Type: schema.TypeMap, + Optional: true, + }, + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + }, + + "labels": { + Type: schema.TypeMap, + Optional: true, + }, + + "name": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "namespace": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "domain_name": { + Type: schema.TypeString, + Optional: true, + }, + + "msg": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ipv6": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "addr": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "port": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "policies": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "connectivity_policy_name": { + Type: schema.TypeString, + Optional: true, + }, + + "message_policy_name": { + Type: schema.TypeString, + Optional: true, + }, + + "session_policy_name": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "proxy_advertisement": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "advertise_custom": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "advertise_where": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cloud_edge_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cloud_edge": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ipv4_vip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6_vip": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Optional: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "network": { + Type: schema.TypeString, + Required: true, + }, + + "site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "virtual_network": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_v6_vip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_v6_vip": { + + Type: schema.TypeString, + Optional: true, + }, + + "default_vip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "specific_vip": { + + Type: schema.TypeString, + Optional: true, + }, + + "virtual_network": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "network": { + Type: schema.TypeString, + Required: true, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "virtual_site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "vk8s_service": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "port": { + + Type: schema.TypeInt, + Optional: true, + }, + + "use_default_port": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "advertise_on_public": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "public_ip": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "advertise_on_public_default_vip": { + + Type: schema.TypeBool, + Optional: true, + }, + + "do_not_advertise": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "transport_type": { + Type: schema.TypeString, + Required: true, + }, + }, + } +} + +// resourceVolterraZtnaApplicationCreate creates ZtnaApplication resource +func resourceVolterraZtnaApplicationCreate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + createMeta := &ves_io_schema.ObjectCreateMetaType{} + createSpec := &ves_io_schema_ztna_application.CreateSpecType{} + createReq := &ves_io_schema_ztna_application.CreateRequest{ + Metadata: createMeta, + Spec: createSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + createMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + createMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + createMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + createMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + createMeta.Namespace = + v.(string) + } + + //domain_name + if v, ok := d.GetOk("domain_name"); ok && !isIntfNil(v) { + + createSpec.DomainName = + v.(string) + + } + + //msg + if v, ok := d.GetOk("msg"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + msg := &ves_io_schema_ztna_application.ServiceDetails{} + createSpec.Msg = msg + for _, set := range sl { + msgMapStrToI := set.(map[string]interface{}) + + if v, ok := msgMapStrToI["ip"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + ip := &ves_io_schema.IpAddressType{} + msg.Ip = ip + for _, set := range sl { + ipMapStrToI := set.(map[string]interface{}) + + verTypeFound := false + + if v, ok := ipMapStrToI["ipv4"]; ok && !isIntfNil(v) && !verTypeFound { + + verTypeFound = true + verInt := &ves_io_schema.IpAddressType_Ipv4{} + verInt.Ipv4 = &ves_io_schema.Ipv4AddressType{} + ip.Ver = verInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["addr"]; ok && !isIntfNil(v) { + + verInt.Ipv4.Addr = v.(string) + + } + + } + + } + + if v, ok := ipMapStrToI["ipv6"]; ok && !isIntfNil(v) && !verTypeFound { + + verTypeFound = true + verInt := &ves_io_schema.IpAddressType_Ipv6{} + verInt.Ipv6 = &ves_io_schema.Ipv6AddressType{} + ip.Ver = verInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["addr"]; ok && !isIntfNil(v) { + + verInt.Ipv6.Addr = v.(string) + + } + + } + + } + + } + + } + + if w, ok := msgMapStrToI["port"]; ok && !isIntfNil(w) { + msg.Port = int32(w.(int)) + } + + } + + } + + //policies + if v, ok := d.GetOk("policies"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + policies := &ves_io_schema_ztna_application.ZTNApolicies{} + createSpec.Policies = policies + for _, set := range sl { + policiesMapStrToI := set.(map[string]interface{}) + + if w, ok := policiesMapStrToI["connectivity_policy_name"]; ok && !isIntfNil(w) { + policies.ConnectivityPolicyName = w.(string) + } + + if w, ok := policiesMapStrToI["message_policy_name"]; ok && !isIntfNil(w) { + policies.MessagePolicyName = w.(string) + } + + if w, ok := policiesMapStrToI["session_policy_name"]; ok && !isIntfNil(w) { + policies.SessionPolicyName = w.(string) + } + + } + + } + + //proxy_advertisement + if v, ok := d.GetOk("proxy_advertisement"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + proxyAdvertisement := &ves_io_schema_ztna_application.ProxyAdvertisementType{} + createSpec.ProxyAdvertisement = proxyAdvertisement + for _, set := range sl { + proxyAdvertisementMapStrToI := set.(map[string]interface{}) + + advertiseChoiceTypeFound := false + + if v, ok := proxyAdvertisementMapStrToI["advertise_custom"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_AdvertiseCustom{} + advertiseChoiceInt.AdvertiseCustom = &ves_io_schema_views.AdvertiseCustom{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["advertise_where"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + advertiseWhere := make([]*ves_io_schema_views.WhereType, len(sl)) + advertiseChoiceInt.AdvertiseCustom.AdvertiseWhere = advertiseWhere + for i, set := range sl { + advertiseWhere[i] = &ves_io_schema_views.WhereType{} + advertiseWhereMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := advertiseWhereMapStrToI["site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_Site{} + choiceInt.Site = &ves_io_schema_views.WhereSite{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.Site.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.Site.Ipv6 = v.(string) + + } + + if v, ok := cs["network"]; ok && !isIntfNil(v) { + + choiceInt.Site.Network = ves_io_schema_views.SiteNetwork(ves_io_schema_views.SiteNetwork_value[v.(string)]) + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.Site.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["site_segment"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_SiteSegment{} + choiceInt.SiteSegment = &ves_io_schema_views.WhereSiteSegment{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ipv6 = v.(string) + + } + + if v, ok := cs["segment"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segment := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Segment = segment + for _, set := range sl { + segmentMapStrToI := set.(map[string]interface{}) + + if w, ok := segmentMapStrToI["name"]; ok && !isIntfNil(w) { + segment.Name = w.(string) + } + + if w, ok := segmentMapStrToI["namespace"]; ok && !isIntfNil(w) { + segment.Namespace = w.(string) + } + + if w, ok := segmentMapStrToI["tenant"]; ok && !isIntfNil(w) { + segment.Tenant = w.(string) + } + + } + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["virtual_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_VirtualNetwork{} + choiceInt.VirtualNetwork = &ves_io_schema_views.WhereVirtualNetwork{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + v6VipChoiceTypeFound := false + + if v, ok := cs["default_v6_vip"]; ok && !isIntfNil(v) && !v6VipChoiceTypeFound { + + v6VipChoiceTypeFound = true + + if v.(bool) { + v6VipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_DefaultV6Vip{} + v6VipChoiceInt.DefaultV6Vip = &ves_io_schema.Empty{} + choiceInt.VirtualNetwork.V6VipChoice = v6VipChoiceInt + } + + } + + if v, ok := cs["specific_v6_vip"]; ok && !isIntfNil(v) && !v6VipChoiceTypeFound { + + v6VipChoiceTypeFound = true + v6VipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_SpecificV6Vip{} + + choiceInt.VirtualNetwork.V6VipChoice = v6VipChoiceInt + + v6VipChoiceInt.SpecificV6Vip = v.(string) + + } + + vipChoiceTypeFound := false + + if v, ok := cs["default_vip"]; ok && !isIntfNil(v) && !vipChoiceTypeFound { + + vipChoiceTypeFound = true + + if v.(bool) { + vipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_DefaultVip{} + vipChoiceInt.DefaultVip = &ves_io_schema.Empty{} + choiceInt.VirtualNetwork.VipChoice = vipChoiceInt + } + + } + + if v, ok := cs["specific_vip"]; ok && !isIntfNil(v) && !vipChoiceTypeFound { + + vipChoiceTypeFound = true + vipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_SpecificVip{} + + choiceInt.VirtualNetwork.VipChoice = vipChoiceInt + + vipChoiceInt.SpecificVip = v.(string) + + } + + if v, ok := cs["virtual_network"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + virtualNetwork := &ves_io_schema_views.ObjectRefType{} + choiceInt.VirtualNetwork.VirtualNetwork = virtualNetwork + for _, set := range sl { + virtualNetworkMapStrToI := set.(map[string]interface{}) + + if w, ok := virtualNetworkMapStrToI["name"]; ok && !isIntfNil(w) { + virtualNetwork.Name = w.(string) + } + + if w, ok := virtualNetworkMapStrToI["namespace"]; ok && !isIntfNil(w) { + virtualNetwork.Namespace = w.(string) + } + + if w, ok := virtualNetworkMapStrToI["tenant"]; ok && !isIntfNil(w) { + virtualNetwork.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["virtual_site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_VirtualSite{} + choiceInt.VirtualSite = &ves_io_schema_views.WhereVirtualSite{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["network"]; ok && !isIntfNil(v) { + + choiceInt.VirtualSite.Network = ves_io_schema_views.SiteNetwork(ves_io_schema_views.SiteNetwork_value[v.(string)]) + + } + + if v, ok := cs["virtual_site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + virtualSite := &ves_io_schema_views.ObjectRefType{} + choiceInt.VirtualSite.VirtualSite = virtualSite + for _, set := range sl { + virtualSiteMapStrToI := set.(map[string]interface{}) + + if w, ok := virtualSiteMapStrToI["name"]; ok && !isIntfNil(w) { + virtualSite.Name = w.(string) + } + + if w, ok := virtualSiteMapStrToI["namespace"]; ok && !isIntfNil(w) { + virtualSite.Namespace = w.(string) + } + + if w, ok := virtualSiteMapStrToI["tenant"]; ok && !isIntfNil(w) { + virtualSite.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["vk8s_service"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_Vk8SService{} + choiceInt.Vk8SService = &ves_io_schema_views.WhereVK8SService{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := cs["site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.WhereVK8SService_Site{} + choiceIntNew.Site = &ves_io_schema_views.ObjectRefType{} + choiceInt.Vk8SService.Choice = choiceIntNew + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceIntNew.Site.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + choiceIntNew.Site.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + choiceIntNew.Site.Tenant = v.(string) + + } + + } + + } + + if v, ok := cs["virtual_site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.WhereVK8SService_VirtualSite{} + choiceIntNew.VirtualSite = &ves_io_schema_views.ObjectRefType{} + choiceInt.Vk8SService.Choice = choiceIntNew + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceIntNew.VirtualSite.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + choiceIntNew.VirtualSite.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + choiceIntNew.VirtualSite.Tenant = v.(string) + + } + + } + + } + + } + + } + + portChoiceTypeFound := false + + if v, ok := advertiseWhereMapStrToI["port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + portChoiceInt := &ves_io_schema_views.WhereType_Port{} + + advertiseWhere[i].PortChoice = portChoiceInt + + portChoiceInt.Port = uint32(v.(int)) + + } + + if v, ok := advertiseWhereMapStrToI["use_default_port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + + if v.(bool) { + portChoiceInt := &ves_io_schema_views.WhereType_UseDefaultPort{} + portChoiceInt.UseDefaultPort = &ves_io_schema.Empty{} + advertiseWhere[i].PortChoice = portChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := proxyAdvertisementMapStrToI["advertise_on_public"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_AdvertiseOnPublic{} + advertiseChoiceInt.AdvertiseOnPublic = &ves_io_schema_views.AdvertisePublic{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["public_ip"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + publicIp := &ves_io_schema_views.ObjectRefType{} + advertiseChoiceInt.AdvertiseOnPublic.PublicIp = publicIp + for _, set := range sl { + publicIpMapStrToI := set.(map[string]interface{}) + + if w, ok := publicIpMapStrToI["name"]; ok && !isIntfNil(w) { + publicIp.Name = w.(string) + } + + if w, ok := publicIpMapStrToI["namespace"]; ok && !isIntfNil(w) { + publicIp.Namespace = w.(string) + } + + if w, ok := publicIpMapStrToI["tenant"]; ok && !isIntfNil(w) { + publicIp.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := proxyAdvertisementMapStrToI["advertise_on_public_default_vip"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + + if v.(bool) { + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_AdvertiseOnPublicDefaultVip{} + advertiseChoiceInt.AdvertiseOnPublicDefaultVip = &ves_io_schema.Empty{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + } + + } + + if v, ok := proxyAdvertisementMapStrToI["do_not_advertise"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + + if v.(bool) { + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_DoNotAdvertise{} + advertiseChoiceInt.DoNotAdvertise = &ves_io_schema.Empty{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + } + + } + + } + + } + + //transport_type + if v, ok := d.GetOk("transport_type"); ok && !isIntfNil(v) { + + createSpec.TransportType = ves_io_schema_ztna_application.TransportType(ves_io_schema_ztna_application.TransportType_value[v.(string)]) + + } + + log.Printf("[DEBUG] Creating Volterra ZtnaApplication object with struct: %+v", createReq) + + createZtnaApplicationResp, err := client.CreateObject(context.Background(), ves_io_schema_ztna_application.ObjectType, createReq) + if err != nil { + return fmt.Errorf("error creating ZtnaApplication: %s", err) + } + d.SetId(createZtnaApplicationResp.GetObjSystemMetadata().GetUid()) + + return resourceVolterraZtnaApplicationRead(d, meta) +} + +func resourceVolterraZtnaApplicationRead(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + resp, err := client.GetObject(context.Background(), ves_io_schema_ztna_application.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] ZtnaApplication %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra ZtnaApplication %q: %s", d.Id(), err) + } + return setZtnaApplicationFields(client, d, resp) +} + +func setZtnaApplicationFields(client *APIClient, d *schema.ResourceData, resp vesapi.GetObjectResponse) error { + metadata := resp.GetObjMetadata() + + d.Set("annotations", metadata.GetAnnotations()) + + d.Set("description", metadata.GetDescription()) + + d.Set("disable", metadata.GetDisable()) + + d.Set("labels", metadata.GetLabels()) + + d.Set("name", metadata.GetName()) + + d.Set("namespace", metadata.GetNamespace()) + + return nil +} + +// resourceVolterraZtnaApplicationUpdate updates ZtnaApplication resource +func resourceVolterraZtnaApplicationUpdate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + + updateMeta := &ves_io_schema.ObjectReplaceMetaType{} + updateSpec := &ves_io_schema_ztna_application.ReplaceSpecType{} + updateReq := &ves_io_schema_ztna_application.ReplaceRequest{ + Metadata: updateMeta, + Spec: updateSpec, + } + + if v, ok := d.GetOk("annotations"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Annotations = ms + } + + if v, ok := d.GetOk("description"); ok && !isIntfNil(v) { + updateMeta.Description = + v.(string) + } + + if v, ok := d.GetOk("disable"); ok && !isIntfNil(v) { + updateMeta.Disable = + v.(bool) + } + + if v, ok := d.GetOk("labels"); ok && !isIntfNil(v) { + + ms := map[string]string{} + + for k, v := range v.(map[string]interface{}) { + val := v.(string) + ms[k] = val + } + updateMeta.Labels = ms + } + + if v, ok := d.GetOk("name"); ok && !isIntfNil(v) { + updateMeta.Name = + v.(string) + } + + if v, ok := d.GetOk("namespace"); ok && !isIntfNil(v) { + updateMeta.Namespace = + v.(string) + } + + if v, ok := d.GetOk("domain_name"); ok && !isIntfNil(v) { + + updateSpec.DomainName = + v.(string) + + } + + if v, ok := d.GetOk("msg"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + msg := &ves_io_schema_ztna_application.ServiceDetails{} + updateSpec.Msg = msg + for _, set := range sl { + msgMapStrToI := set.(map[string]interface{}) + + if v, ok := msgMapStrToI["ip"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + ip := &ves_io_schema.IpAddressType{} + msg.Ip = ip + for _, set := range sl { + ipMapStrToI := set.(map[string]interface{}) + + verTypeFound := false + + if v, ok := ipMapStrToI["ipv4"]; ok && !isIntfNil(v) && !verTypeFound { + + verTypeFound = true + verInt := &ves_io_schema.IpAddressType_Ipv4{} + verInt.Ipv4 = &ves_io_schema.Ipv4AddressType{} + ip.Ver = verInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["addr"]; ok && !isIntfNil(v) { + + verInt.Ipv4.Addr = v.(string) + + } + + } + + } + + if v, ok := ipMapStrToI["ipv6"]; ok && !isIntfNil(v) && !verTypeFound { + + verTypeFound = true + verInt := &ves_io_schema.IpAddressType_Ipv6{} + verInt.Ipv6 = &ves_io_schema.Ipv6AddressType{} + ip.Ver = verInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["addr"]; ok && !isIntfNil(v) { + + verInt.Ipv6.Addr = v.(string) + + } + + } + + } + + } + + } + + if w, ok := msgMapStrToI["port"]; ok && !isIntfNil(w) { + msg.Port = int32(w.(int)) + } + + } + + } + + if v, ok := d.GetOk("policies"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + policies := &ves_io_schema_ztna_application.ZTNApolicies{} + updateSpec.Policies = policies + for _, set := range sl { + policiesMapStrToI := set.(map[string]interface{}) + + if w, ok := policiesMapStrToI["connectivity_policy_name"]; ok && !isIntfNil(w) { + policies.ConnectivityPolicyName = w.(string) + } + + if w, ok := policiesMapStrToI["message_policy_name"]; ok && !isIntfNil(w) { + policies.MessagePolicyName = w.(string) + } + + if w, ok := policiesMapStrToI["session_policy_name"]; ok && !isIntfNil(w) { + policies.SessionPolicyName = w.(string) + } + + } + + } + + if v, ok := d.GetOk("proxy_advertisement"); ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + proxyAdvertisement := &ves_io_schema_ztna_application.ProxyAdvertisementType{} + updateSpec.ProxyAdvertisement = proxyAdvertisement + for _, set := range sl { + proxyAdvertisementMapStrToI := set.(map[string]interface{}) + + advertiseChoiceTypeFound := false + + if v, ok := proxyAdvertisementMapStrToI["advertise_custom"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_AdvertiseCustom{} + advertiseChoiceInt.AdvertiseCustom = &ves_io_schema_views.AdvertiseCustom{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["advertise_where"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + advertiseWhere := make([]*ves_io_schema_views.WhereType, len(sl)) + advertiseChoiceInt.AdvertiseCustom.AdvertiseWhere = advertiseWhere + for i, set := range sl { + advertiseWhere[i] = &ves_io_schema_views.WhereType{} + advertiseWhereMapStrToI := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := advertiseWhereMapStrToI["site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_Site{} + choiceInt.Site = &ves_io_schema_views.WhereSite{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.Site.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.Site.Ipv6 = v.(string) + + } + + if v, ok := cs["network"]; ok && !isIntfNil(v) { + + choiceInt.Site.Network = ves_io_schema_views.SiteNetwork(ves_io_schema_views.SiteNetwork_value[v.(string)]) + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.Site.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["site_segment"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_SiteSegment{} + choiceInt.SiteSegment = &ves_io_schema_views.WhereSiteSegment{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["ip"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ip = v.(string) + + } + + if v, ok := cs["ipv6"]; ok && !isIntfNil(v) { + + choiceInt.SiteSegment.Ipv6 = v.(string) + + } + + if v, ok := cs["segment"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + segment := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Segment = segment + for _, set := range sl { + segmentMapStrToI := set.(map[string]interface{}) + + if w, ok := segmentMapStrToI["name"]; ok && !isIntfNil(w) { + segment.Name = w.(string) + } + + if w, ok := segmentMapStrToI["namespace"]; ok && !isIntfNil(w) { + segment.Namespace = w.(string) + } + + if w, ok := segmentMapStrToI["tenant"]; ok && !isIntfNil(w) { + segment.Tenant = w.(string) + } + + } + + } + + if v, ok := cs["site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + site := &ves_io_schema_views.ObjectRefType{} + choiceInt.SiteSegment.Site = site + for _, set := range sl { + siteMapStrToI := set.(map[string]interface{}) + + if w, ok := siteMapStrToI["name"]; ok && !isIntfNil(w) { + site.Name = w.(string) + } + + if w, ok := siteMapStrToI["namespace"]; ok && !isIntfNil(w) { + site.Namespace = w.(string) + } + + if w, ok := siteMapStrToI["tenant"]; ok && !isIntfNil(w) { + site.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["virtual_network"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_VirtualNetwork{} + choiceInt.VirtualNetwork = &ves_io_schema_views.WhereVirtualNetwork{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + v6VipChoiceTypeFound := false + + if v, ok := cs["default_v6_vip"]; ok && !isIntfNil(v) && !v6VipChoiceTypeFound { + + v6VipChoiceTypeFound = true + + if v.(bool) { + v6VipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_DefaultV6Vip{} + v6VipChoiceInt.DefaultV6Vip = &ves_io_schema.Empty{} + choiceInt.VirtualNetwork.V6VipChoice = v6VipChoiceInt + } + + } + + if v, ok := cs["specific_v6_vip"]; ok && !isIntfNil(v) && !v6VipChoiceTypeFound { + + v6VipChoiceTypeFound = true + v6VipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_SpecificV6Vip{} + + choiceInt.VirtualNetwork.V6VipChoice = v6VipChoiceInt + + v6VipChoiceInt.SpecificV6Vip = v.(string) + + } + + vipChoiceTypeFound := false + + if v, ok := cs["default_vip"]; ok && !isIntfNil(v) && !vipChoiceTypeFound { + + vipChoiceTypeFound = true + + if v.(bool) { + vipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_DefaultVip{} + vipChoiceInt.DefaultVip = &ves_io_schema.Empty{} + choiceInt.VirtualNetwork.VipChoice = vipChoiceInt + } + + } + + if v, ok := cs["specific_vip"]; ok && !isIntfNil(v) && !vipChoiceTypeFound { + + vipChoiceTypeFound = true + vipChoiceInt := &ves_io_schema_views.WhereVirtualNetwork_SpecificVip{} + + choiceInt.VirtualNetwork.VipChoice = vipChoiceInt + + vipChoiceInt.SpecificVip = v.(string) + + } + + if v, ok := cs["virtual_network"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + virtualNetwork := &ves_io_schema_views.ObjectRefType{} + choiceInt.VirtualNetwork.VirtualNetwork = virtualNetwork + for _, set := range sl { + virtualNetworkMapStrToI := set.(map[string]interface{}) + + if w, ok := virtualNetworkMapStrToI["name"]; ok && !isIntfNil(w) { + virtualNetwork.Name = w.(string) + } + + if w, ok := virtualNetworkMapStrToI["namespace"]; ok && !isIntfNil(w) { + virtualNetwork.Namespace = w.(string) + } + + if w, ok := virtualNetworkMapStrToI["tenant"]; ok && !isIntfNil(w) { + virtualNetwork.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["virtual_site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_VirtualSite{} + choiceInt.VirtualSite = &ves_io_schema_views.WhereVirtualSite{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["network"]; ok && !isIntfNil(v) { + + choiceInt.VirtualSite.Network = ves_io_schema_views.SiteNetwork(ves_io_schema_views.SiteNetwork_value[v.(string)]) + + } + + if v, ok := cs["virtual_site"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + virtualSite := &ves_io_schema_views.ObjectRefType{} + choiceInt.VirtualSite.VirtualSite = virtualSite + for _, set := range sl { + virtualSiteMapStrToI := set.(map[string]interface{}) + + if w, ok := virtualSiteMapStrToI["name"]; ok && !isIntfNil(w) { + virtualSite.Name = w.(string) + } + + if w, ok := virtualSiteMapStrToI["namespace"]; ok && !isIntfNil(w) { + virtualSite.Namespace = w.(string) + } + + if w, ok := virtualSiteMapStrToI["tenant"]; ok && !isIntfNil(w) { + virtualSite.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := advertiseWhereMapStrToI["vk8s_service"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceInt := &ves_io_schema_views.WhereType_Vk8SService{} + choiceInt.Vk8SService = &ves_io_schema_views.WhereVK8SService{} + advertiseWhere[i].Choice = choiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + choiceTypeFound := false + + if v, ok := cs["site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.WhereVK8SService_Site{} + choiceIntNew.Site = &ves_io_schema_views.ObjectRefType{} + choiceInt.Vk8SService.Choice = choiceIntNew + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceIntNew.Site.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + choiceIntNew.Site.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + choiceIntNew.Site.Tenant = v.(string) + + } + + } + + } + + if v, ok := cs["virtual_site"]; ok && !isIntfNil(v) && !choiceTypeFound { + + choiceTypeFound = true + choiceIntNew := &ves_io_schema_views.WhereVK8SService_VirtualSite{} + choiceIntNew.VirtualSite = &ves_io_schema_views.ObjectRefType{} + choiceInt.Vk8SService.Choice = choiceIntNew + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + choiceIntNew.VirtualSite.Name = v.(string) + + } + + if v, ok := cs["namespace"]; ok && !isIntfNil(v) { + + choiceIntNew.VirtualSite.Namespace = v.(string) + + } + + if v, ok := cs["tenant"]; ok && !isIntfNil(v) { + + choiceIntNew.VirtualSite.Tenant = v.(string) + + } + + } + + } + + } + + } + + portChoiceTypeFound := false + + if v, ok := advertiseWhereMapStrToI["port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + portChoiceInt := &ves_io_schema_views.WhereType_Port{} + + advertiseWhere[i].PortChoice = portChoiceInt + + portChoiceInt.Port = uint32(v.(int)) + + } + + if v, ok := advertiseWhereMapStrToI["use_default_port"]; ok && !isIntfNil(v) && !portChoiceTypeFound { + + portChoiceTypeFound = true + + if v.(bool) { + portChoiceInt := &ves_io_schema_views.WhereType_UseDefaultPort{} + portChoiceInt.UseDefaultPort = &ves_io_schema.Empty{} + advertiseWhere[i].PortChoice = portChoiceInt + } + + } + + } + + } + + } + + } + + if v, ok := proxyAdvertisementMapStrToI["advertise_on_public"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_AdvertiseOnPublic{} + advertiseChoiceInt.AdvertiseOnPublic = &ves_io_schema_views.AdvertisePublic{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["public_ip"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + publicIp := &ves_io_schema_views.ObjectRefType{} + advertiseChoiceInt.AdvertiseOnPublic.PublicIp = publicIp + for _, set := range sl { + publicIpMapStrToI := set.(map[string]interface{}) + + if w, ok := publicIpMapStrToI["name"]; ok && !isIntfNil(w) { + publicIp.Name = w.(string) + } + + if w, ok := publicIpMapStrToI["namespace"]; ok && !isIntfNil(w) { + publicIp.Namespace = w.(string) + } + + if w, ok := publicIpMapStrToI["tenant"]; ok && !isIntfNil(w) { + publicIp.Tenant = w.(string) + } + + } + + } + + } + + } + + if v, ok := proxyAdvertisementMapStrToI["advertise_on_public_default_vip"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + + if v.(bool) { + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_AdvertiseOnPublicDefaultVip{} + advertiseChoiceInt.AdvertiseOnPublicDefaultVip = &ves_io_schema.Empty{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + } + + } + + if v, ok := proxyAdvertisementMapStrToI["do_not_advertise"]; ok && !isIntfNil(v) && !advertiseChoiceTypeFound { + + advertiseChoiceTypeFound = true + + if v.(bool) { + advertiseChoiceInt := &ves_io_schema_ztna_application.ProxyAdvertisementType_DoNotAdvertise{} + advertiseChoiceInt.DoNotAdvertise = &ves_io_schema.Empty{} + proxyAdvertisement.AdvertiseChoice = advertiseChoiceInt + } + + } + + } + + } + + if v, ok := d.GetOk("transport_type"); ok && !isIntfNil(v) { + + updateSpec.TransportType = ves_io_schema_ztna_application.TransportType(ves_io_schema_ztna_application.TransportType_value[v.(string)]) + + } + + log.Printf("[DEBUG] Updating Volterra ZtnaApplication obj with struct: %+v", updateReq) + + err := client.ReplaceObject(context.Background(), ves_io_schema_ztna_application.ObjectType, updateReq) + if err != nil { + return fmt.Errorf("error updating ZtnaApplication: %s", err) + } + + return resourceVolterraZtnaApplicationRead(d, meta) +} + +func resourceVolterraZtnaApplicationDelete(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + name := d.Get("name").(string) + namespace := d.Get("namespace").(string) + + _, err := client.GetObject(context.Background(), ves_io_schema_ztna_application.ObjectType, namespace, name) + if err != nil { + if strings.Contains(err.Error(), "status code 404") { + log.Printf("[INFO] ZtnaApplication %s no longer exists", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error finding Volterra ZtnaApplication before deleting %q: %s", d.Id(), err) + } + + log.Printf("[DEBUG] Deleting Volterra ZtnaApplication obj with name %+v in namespace %+v", name, namespace) + return client.DeleteObject(context.Background(), ves_io_schema_ztna_application.ObjectType, namespace, name) +} diff --git a/volterra/resource_volterra_dns_zone_record.go b/volterra/resource_volterra_dns_zone_record.go new file mode 100644 index 000000000..1ca1cfe59 --- /dev/null +++ b/volterra/resource_volterra_dns_zone_record.go @@ -0,0 +1,4081 @@ +// +// Copyright (c) 2023 F5 Inc. All rights reserved. +// + +package volterra + +import ( + "context" + "fmt" + "log" + "net/http" + + "github.com/google/uuid" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + ves_io_schema_dns_zone "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone" + ves_io_schema_dns_zone_rrset "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/rrset" + ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + "gopkg.volterra.us/stdlib/codec" +) + +const ( + setRRSETRPCFQN = "ves.io.schema.dns_zone.rrset.CustomAPI" + urirrset = "/public/namespaces/system/dns_zones/%s/rrsets/%s" + urirrsetall = "/public/namespaces/system/dns_zones/%s/rrsets/%s/%s/%s" +) + +// resourceVolterraSetKnownLabel is implementation of Volterra's known_label resources +func resourceVolterraSetRRSETRecord() *schema.Resource { + return &schema.Resource{ + Create: resourceVolterraSetRRSETRecordCreate, + Read: resourceVolterraSetRRSETRecordRead, + Update: resourceVolterraSetRRSETRecordUpdate, + Delete: resourceVolterraSetRRSETRecordDelete, + + Schema: map[string]*schema.Schema{ + "dns_zone_name": { + Type: schema.TypeString, + Required: true, + }, + "group_name": { + Type: schema.TypeString, + Required: true, + }, + "rrset": { + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "ttl": { + Type: schema.TypeInt, + Optional: true, + }, + + "a_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "aaaa_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "afsdb_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "hostname": { + Type: schema.TypeString, + Required: true, + }, + + "subtype": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "alias_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "value": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "caa_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "flags": { + Type: schema.TypeInt, + Optional: true, + }, + + "tag": { + Type: schema.TypeString, + Optional: true, + }, + + "value": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "cds_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "sha1_digest": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "sha256_digest": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "sha384_digest": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "ds_key_algorithm": { + Type: schema.TypeString, + Required: true, + }, + + "key_tag": { + Type: schema.TypeInt, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "cert_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "algorithm": { + Type: schema.TypeString, + Required: true, + }, + + "cert_key_tag": { + Type: schema.TypeInt, + Required: true, + }, + + "cert_type": { + Type: schema.TypeString, + Required: true, + }, + + "certificate": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "cname_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + + "value": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "dlv_record": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "sha1_digest": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "sha256_digest": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "sha384_digest": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "ds_key_algorithm": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "key_tag": { + Type: schema.TypeInt, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "ds_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "sha1_digest": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "sha256_digest": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "sha384_digest": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "digest": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "ds_key_algorithm": { + Type: schema.TypeString, + Required: true, + }, + + "key_tag": { + Type: schema.TypeInt, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "eui48_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "value": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "eui64_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "value": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "lb_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "value": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "loc_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "altitude": { + Type: schema.TypeFloat, + Required: true, + }, + + "horizontal_precision": { + Type: schema.TypeFloat, + Optional: true, + }, + + "latitude_degree": { + Type: schema.TypeInt, + Required: true, + }, + + "latitude_hemisphere": { + Type: schema.TypeString, + Required: true, + }, + + "latitude_minute": { + Type: schema.TypeInt, + Optional: true, + }, + + "latitude_second": { + Type: schema.TypeFloat, + Optional: true, + }, + + "location_diameter": { + Type: schema.TypeFloat, + Optional: true, + }, + + "longitude_degree": { + Type: schema.TypeInt, + Required: true, + }, + + "longitude_hemisphere": { + Type: schema.TypeString, + Required: true, + }, + + "longitude_minute": { + Type: schema.TypeInt, + Optional: true, + }, + + "longitude_second": { + Type: schema.TypeFloat, + Optional: true, + }, + + "vertical_precision": { + Type: schema.TypeFloat, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "mx_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "domain": { + Type: schema.TypeString, + Optional: true, + }, + + "priority": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "naptr_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "flags": { + Type: schema.TypeString, + Required: true, + }, + + "order": { + Type: schema.TypeInt, + Required: true, + }, + + "preference": { + Type: schema.TypeInt, + Required: true, + }, + + "regexp": { + Type: schema.TypeString, + Optional: true, + }, + + "replacement": { + Type: schema.TypeString, + Optional: true, + }, + + "service": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "ns_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "ptr_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "srv_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "port": { + Type: schema.TypeInt, + Optional: true, + }, + + "priority": { + Type: schema.TypeInt, + Optional: true, + }, + + "target": { + Type: schema.TypeString, + Optional: true, + }, + + "weight": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "sshfp_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "algorithm": { + Type: schema.TypeString, + Required: true, + }, + + "fingerprint": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "sha1_fingerprint": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "fingerprint": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "sha256_fingerprint": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "fingerprint": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "fingerprinttype": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + + "tlsa_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "certificate_association_data": { + Type: schema.TypeString, + Required: true, + }, + + "certificate_usage": { + Type: schema.TypeString, + Required: true, + }, + + "matching_type": { + Type: schema.TypeString, + Required: true, + }, + + "selector": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + }, + }, + }, + + "txt_record": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + + "values": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + }, + }, + }, + }, + } +} + +// resourceVolterraSetRRSETRecordCreate creates dns_zone_record resource +func resourceVolterraSetRRSETRecordCreate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + var dnsZoneName, groupName string + var RrSetGroup *ves_io_schema_dns_zone.RRSet + if v, ok := d.GetOk("dns_zone_name"); ok { + dnsZoneName = v.(string) + } + if v, ok := d.GetOk("group_name"); ok { + groupName = v.(string) + } + if v, ok := d.GetOk("rrset"); ok { + sl := v.([]interface{}) + for _, set := range sl { + RrSetGroup = &ves_io_schema_dns_zone.RRSet{} + RrSetGroupMapStrToI := set.(map[string]interface{}) + + if w, ok := RrSetGroupMapStrToI["description"]; ok && !isIntfNil(w) { + RrSetGroup.Description = w.(string) + } + + if w, ok := RrSetGroupMapStrToI["ttl"]; ok && !isIntfNil(w) { + RrSetGroup.Ttl = uint32(w.(int)) + } + + typeRecordSetTypeFound := false + + if v, ok := RrSetGroupMapStrToI["a_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_ARecord{} + typeRecordSetInt.ARecord = &ves_io_schema_dns_zone.DNSAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.ARecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.ARecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["aaaa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_AaaaRecord{} + typeRecordSetInt.AaaaRecord = &ves_io_schema_dns_zone.DNSAAAAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AaaaRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.AaaaRecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["afsdb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_AfsdbRecord{} + typeRecordSetInt.AfsdbRecord = &ves_io_schema_dns_zone.DNSAFSDBRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AfsdbRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.AFSDBRecordValue, len(sl)) + typeRecordSetInt.AfsdbRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.AFSDBRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["hostname"]; ok && !isIntfNil(w) { + values[i].Hostname = w.(string) + } + + if v, ok := valuesMapStrToI["subtype"]; ok && !isIntfNil(v) { + + values[i].Subtype = ves_io_schema_dns_zone.AFSDBRecordSubtype(ves_io_schema_dns_zone.AFSDBRecordSubtype_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["alias_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_AliasRecord{} + typeRecordSetInt.AliasRecord = &ves_io_schema_dns_zone.DNSAliasResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AliasRecord.Name = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AliasRecord.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["caa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CaaRecord{} + typeRecordSetInt.CaaRecord = &ves_io_schema_dns_zone.DNSCAAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CaaRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.CertificationAuthorityAuthorization, len(sl)) + typeRecordSetInt.CaaRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.CertificationAuthorityAuthorization{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["flags"]; ok && !isIntfNil(w) { + values[i].Flags = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["tag"]; ok && !isIntfNil(w) { + values[i].Tag = w.(string) + } + + if w, ok := valuesMapStrToI["value"]; ok && !isIntfNil(w) { + values[i].Value = w.(string) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["cds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CdsRecord{} + typeRecordSetInt.CdsRecord = &ves_io_schema_dns_zone.DNSCDSRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CdsRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.DSRecordValue, len(sl)) + typeRecordSetInt.CdsRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.DSRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + digestChoiceTypeFound := false + + if v, ok := valuesMapStrToI["sha1_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha1Digest{} + digestChoiceInt.Sha1Digest = &ves_io_schema_dns_zone.SHA1Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha1Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha256Digest{} + digestChoiceInt.Sha256Digest = &ves_io_schema_dns_zone.SHA256Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha256Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha384_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha384Digest{} + digestChoiceInt.Sha384Digest = &ves_io_schema_dns_zone.SHA384Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha384Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["ds_key_algorithm"]; ok && !isIntfNil(v) { + + values[i].DsKeyAlgorithm = ves_io_schema_dns_zone.DSKeyAlgorithm(ves_io_schema_dns_zone.DSKeyAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["key_tag"]; ok && !isIntfNil(w) { + values[i].KeyTag = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["cert_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CertRecord{} + typeRecordSetInt.CertRecord = &ves_io_schema_dns_zone.CERTResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CertRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.CERTRecordValue, len(sl)) + typeRecordSetInt.CertRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.CERTRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if v, ok := valuesMapStrToI["algorithm"]; ok && !isIntfNil(v) { + + values[i].Algorithm = ves_io_schema_dns_zone.CERTAlgorithm(ves_io_schema_dns_zone.CERTAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["cert_key_tag"]; ok && !isIntfNil(w) { + values[i].CertKeyTag = uint32(w.(int)) + } + + if v, ok := valuesMapStrToI["cert_type"]; ok && !isIntfNil(v) { + + values[i].CertType = ves_io_schema_dns_zone.CERTType(ves_io_schema_dns_zone.CERTType_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["certificate"]; ok && !isIntfNil(w) { + values[i].Certificate = w.(string) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["cname_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CnameRecord{} + typeRecordSetInt.CnameRecord = &ves_io_schema_dns_zone.DNSCNAMEResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CnameRecord.Name = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CnameRecord.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["dlv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_DlvRecord{} + typeRecordSetInt.DlvRecord = &ves_io_schema_dns_zone.DLVResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.DlvRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.DSRecordValue, len(sl)) + typeRecordSetInt.DlvRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.DSRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + digestChoiceTypeFound := false + + if v, ok := valuesMapStrToI["sha1_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha1Digest{} + digestChoiceInt.Sha1Digest = &ves_io_schema_dns_zone.SHA1Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha1Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha256Digest{} + digestChoiceInt.Sha256Digest = &ves_io_schema_dns_zone.SHA256Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha256Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha384_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha384Digest{} + digestChoiceInt.Sha384Digest = &ves_io_schema_dns_zone.SHA384Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha384Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["ds_key_algorithm"]; ok && !isIntfNil(v) { + + values[i].DsKeyAlgorithm = ves_io_schema_dns_zone.DSKeyAlgorithm(ves_io_schema_dns_zone.DSKeyAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["key_tag"]; ok && !isIntfNil(w) { + values[i].KeyTag = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["ds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_DsRecord{} + typeRecordSetInt.DsRecord = &ves_io_schema_dns_zone.DNSDSRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.DsRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.DSRecordValue, len(sl)) + typeRecordSetInt.DsRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.DSRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + digestChoiceTypeFound := false + + if v, ok := valuesMapStrToI["sha1_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha1Digest{} + digestChoiceInt.Sha1Digest = &ves_io_schema_dns_zone.SHA1Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha1Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha256Digest{} + digestChoiceInt.Sha256Digest = &ves_io_schema_dns_zone.SHA256Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha256Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha384_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha384Digest{} + digestChoiceInt.Sha384Digest = &ves_io_schema_dns_zone.SHA384Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha384Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["ds_key_algorithm"]; ok && !isIntfNil(v) { + + values[i].DsKeyAlgorithm = ves_io_schema_dns_zone.DSKeyAlgorithm(ves_io_schema_dns_zone.DSKeyAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["key_tag"]; ok && !isIntfNil(w) { + values[i].KeyTag = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["eui48_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_Eui48Record{} + typeRecordSetInt.Eui48Record = &ves_io_schema_dns_zone.DNSEUI48ResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui48Record.Name = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui48Record.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["eui64_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_Eui64Record{} + typeRecordSetInt.Eui64Record = &ves_io_schema_dns_zone.DNSEUI64ResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui64Record.Name = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui64Record.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["lb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_LbRecord{} + typeRecordSetInt.LbRecord = &ves_io_schema_dns_zone.DNSLBResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.LbRecord.Name = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + valueInt := &ves_io_schema_views.ObjectRefType{} + typeRecordSetInt.LbRecord.Value = valueInt + + for _, set := range sl { + vMapToStrVal := set.(map[string]interface{}) + if val, ok := vMapToStrVal["name"]; ok && !isIntfNil(v) { + valueInt.Name = val.(string) + } + if val, ok := vMapToStrVal["namespace"]; ok && !isIntfNil(v) { + valueInt.Namespace = val.(string) + } + + if val, ok := vMapToStrVal["tenant"]; ok && !isIntfNil(v) { + valueInt.Tenant = val.(string) + } + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["loc_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_LocRecord{} + typeRecordSetInt.LocRecord = &ves_io_schema_dns_zone.DNSLOCResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.LocRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.LOCValue, len(sl)) + typeRecordSetInt.LocRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.LOCValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["altitude"]; ok && !isIntfNil(w) { + values[i].Altitude = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["horizontal_precision"]; ok && !isIntfNil(w) { + values[i].HorizontalPrecision = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["latitude_degree"]; ok && !isIntfNil(w) { + values[i].LatitudeDegree = int32(w.(int)) + } + + if v, ok := valuesMapStrToI["latitude_hemisphere"]; ok && !isIntfNil(v) { + + values[i].LatitudeHemisphere = ves_io_schema_dns_zone.LatitudeHemisphere(ves_io_schema_dns_zone.LatitudeHemisphere_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["latitude_minute"]; ok && !isIntfNil(w) { + values[i].LatitudeMinute = int32(w.(int)) + } + + if w, ok := valuesMapStrToI["latitude_second"]; ok && !isIntfNil(w) { + values[i].LatitudeSecond = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["location_diameter"]; ok && !isIntfNil(w) { + values[i].LocationDiameter = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["longitude_degree"]; ok && !isIntfNil(w) { + values[i].LongitudeDegree = int32(w.(int)) + } + + if v, ok := valuesMapStrToI["longitude_hemisphere"]; ok && !isIntfNil(v) { + + values[i].LongitudeHemisphere = ves_io_schema_dns_zone.LongitudeHemisphere(ves_io_schema_dns_zone.LongitudeHemisphere_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["longitude_minute"]; ok && !isIntfNil(w) { + values[i].LongitudeMinute = int32(w.(int)) + } + + if w, ok := valuesMapStrToI["longitude_second"]; ok && !isIntfNil(w) { + values[i].LongitudeSecond = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["vertical_precision"]; ok && !isIntfNil(w) { + values[i].VerticalPrecision = float32(w.(float64)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["mx_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_MxRecord{} + typeRecordSetInt.MxRecord = &ves_io_schema_dns_zone.DNSMXResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.MxRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.MailExchanger, len(sl)) + typeRecordSetInt.MxRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.MailExchanger{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["domain"]; ok && !isIntfNil(w) { + values[i].Domain = w.(string) + } + + if w, ok := valuesMapStrToI["priority"]; ok && !isIntfNil(w) { + values[i].Priority = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["naptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_NaptrRecord{} + typeRecordSetInt.NaptrRecord = &ves_io_schema_dns_zone.DNSNAPTRResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.NaptrRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.NAPTRValue, len(sl)) + typeRecordSetInt.NaptrRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.NAPTRValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["flags"]; ok && !isIntfNil(w) { + values[i].Flags = w.(string) + } + + if w, ok := valuesMapStrToI["order"]; ok && !isIntfNil(w) { + values[i].Order = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["preference"]; ok && !isIntfNil(w) { + values[i].Preference = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["regexp"]; ok && !isIntfNil(w) { + values[i].Regexp = w.(string) + } + + if w, ok := valuesMapStrToI["replacement"]; ok && !isIntfNil(w) { + values[i].Replacement = w.(string) + } + + if w, ok := valuesMapStrToI["service"]; ok && !isIntfNil(w) { + values[i].Service = w.(string) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["ns_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_NsRecord{} + typeRecordSetInt.NsRecord = &ves_io_schema_dns_zone.DNSNSResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.NsRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.NsRecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["ptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_PtrRecord{} + typeRecordSetInt.PtrRecord = &ves_io_schema_dns_zone.DNSPTRResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.PtrRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.PtrRecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["srv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_SrvRecord{} + typeRecordSetInt.SrvRecord = &ves_io_schema_dns_zone.DNSSRVResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.SrvRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.SRVService, len(sl)) + typeRecordSetInt.SrvRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.SRVService{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["port"]; ok && !isIntfNil(w) { + values[i].Port = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["priority"]; ok && !isIntfNil(w) { + values[i].Priority = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["target"]; ok && !isIntfNil(w) { + values[i].Target = w.(string) + } + + if w, ok := valuesMapStrToI["weight"]; ok && !isIntfNil(w) { + values[i].Weight = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["sshfp_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_SshfpRecord{} + typeRecordSetInt.SshfpRecord = &ves_io_schema_dns_zone.SSHFPResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.SshfpRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.SSHFPRecordValue, len(sl)) + typeRecordSetInt.SshfpRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.SSHFPRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if v, ok := valuesMapStrToI["algorithm"]; ok && !isIntfNil(v) { + + values[i].Algorithm = ves_io_schema_dns_zone.SSHFPAlgorithm(ves_io_schema_dns_zone.SSHFPAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["fingerprint"]; ok && !isIntfNil(w) { + values[i].Fingerprint = w.(string) + } + + fingerprintTypeTypeFound := false + + if v, ok := valuesMapStrToI["sha1_fingerprint"]; ok && !isIntfNil(v) && !fingerprintTypeTypeFound { + + fingerprintTypeTypeFound = true + fingerprintTypeInt := &ves_io_schema_dns_zone.SSHFPRecordValue_Sha1Fingerprint{} + fingerprintTypeInt.Sha1Fingerprint = &ves_io_schema_dns_zone.SHA1Fingerprint{} + values[i].FingerprintType = fingerprintTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fingerprint"]; ok && !isIntfNil(v) { + + fingerprintTypeInt.Sha1Fingerprint.Fingerprint = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_fingerprint"]; ok && !isIntfNil(v) && !fingerprintTypeTypeFound { + + fingerprintTypeTypeFound = true + fingerprintTypeInt := &ves_io_schema_dns_zone.SSHFPRecordValue_Sha256Fingerprint{} + fingerprintTypeInt.Sha256Fingerprint = &ves_io_schema_dns_zone.SHA256Fingerprint{} + values[i].FingerprintType = fingerprintTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fingerprint"]; ok && !isIntfNil(v) { + + fingerprintTypeInt.Sha256Fingerprint.Fingerprint = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["fingerprinttype"]; ok && !isIntfNil(v) { + + values[i].Fingerprinttype = ves_io_schema_dns_zone.SSHFPFingerprintType(ves_io_schema_dns_zone.SSHFPFingerprintType_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["tlsa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_TlsaRecord{} + typeRecordSetInt.TlsaRecord = &ves_io_schema_dns_zone.TLSAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.TlsaRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.TLSARecordValue, len(sl)) + typeRecordSetInt.TlsaRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.TLSARecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["certificate_association_data"]; ok && !isIntfNil(w) { + values[i].CertificateAssociationData = w.(string) + } + + if v, ok := valuesMapStrToI["certificate_usage"]; ok && !isIntfNil(v) { + + values[i].CertificateUsage = ves_io_schema_dns_zone.TLSARecordCertificateUsage(ves_io_schema_dns_zone.TLSARecordCertificateUsage_value[v.(string)]) + + } + + if v, ok := valuesMapStrToI["matching_type"]; ok && !isIntfNil(v) { + + values[i].MatchingType = ves_io_schema_dns_zone.TLSARecordMatchingType(ves_io_schema_dns_zone.TLSARecordMatchingType_value[v.(string)]) + + } + + if v, ok := valuesMapStrToI["selector"]; ok && !isIntfNil(v) { + + values[i].Selector = ves_io_schema_dns_zone.TLSARecordCSelector(ves_io_schema_dns_zone.TLSARecordCSelector_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["txt_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_TxtRecord{} + typeRecordSetInt.TxtRecord = &ves_io_schema_dns_zone.DNSTXTResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.TxtRecord.Name = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.TxtRecord.Values = ls + + } + + } + + } + + } + + } + req := &ves_io_schema_dns_zone_rrset.CreateRequest{ + DnsZoneName: dnsZoneName, + GroupName: groupName, + Rrset: RrSetGroup, + } + yamlReq, err := codec.ToYAML(req) + if err != nil { + return fmt.Errorf("error marshalling rpc response to yaml: %s", err) + } + log.Printf("[DEBUG] setting volterra record create request: %+v", req) + _, err = client.CustomAPI(context.Background(), http.MethodPost, fmt.Sprintf(urirrset, dnsZoneName, groupName), fmt.Sprintf("%s.%s", setRRSETRPCFQN, "Create"), yamlReq) + if err != nil { + return fmt.Errorf("Error encountered while creating a record. Error: %s", err) + } + d.SetId(uuid.New().String()) + return resourceVolterraSetRRSETRecordRead(d, meta) +} + +// resourceVolterraSetKnownLabelRead read dns_zone_record resource +func resourceVolterraSetRRSETRecordRead(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + var dnsZoneName, groupName, recordName, types string + if v, ok := d.GetOk("dns_zone_name"); ok { + dnsZoneName = v.(string) + } + if v, ok := d.GetOk("group_name"); ok { + groupName = v.(string) + } + if v, ok := d.GetOk("rrset"); ok { + sl := v.([]interface{}) + for _, set := range sl { + RrSetGroupMapStrToI := set.(map[string]interface{}) + typeRecordSetTypeFound := false + if v, ok := RrSetGroupMapStrToI["a_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "A" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + if v, ok := RrSetGroupMapStrToI["aaaa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "AAAA" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["afsdb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "AFSDB" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["alias_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "ALIAS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["caa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CAA" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["cds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CDS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["cert_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CERT" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["cname_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CNAME" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["dlv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "DLV" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["ds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "DS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["eui48_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "EUI48" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["eui64_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "EUI64" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["lb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "LB" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["loc_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "LOC" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["mx_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "MX" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["naptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "NAPTR" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["ns_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "NS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["ptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "PTR" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["srv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "SRV" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["sshfp_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "SSHFP" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["tlsa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "TLSA" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["txt_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "TXT" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + } + + } + req := &ves_io_schema_dns_zone_rrset.GetRequest{ + DnsZoneName: dnsZoneName, + GroupName: groupName, + RecordName: recordName, + Type: types, + } + yamlReq, err := codec.ToYAML(req) + if err != nil { + return fmt.Errorf("error marshalling rpc response to yaml: %s", err) + } + log.Printf("[DEBUG] setting volterra dns_zone_record resource get request value: %+v", req) + _, err = client.CustomAPI(context.Background(), http.MethodGet, fmt.Sprintf(urirrsetall, dnsZoneName, groupName, recordName, types), fmt.Sprintf("%s.%s", setRRSETRPCFQN, "Get"), yamlReq) + if err != nil { + fmt.Printf("Error encountered while fetching dns_zone_record resource info. Error: %s", err) + } + return nil +} + +// resourceVolterraSetKnownLabelUpdate updates dns_zone_record resource +func resourceVolterraSetRRSETRecordUpdate(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + var dnsZoneName, groupName, recordName, types string + var RrSetGroup *ves_io_schema_dns_zone.RRSet + if v, ok := d.GetOk("dns_zone_name"); ok { + dnsZoneName = v.(string) + } + if v, ok := d.GetOk("group_name"); ok { + groupName = v.(string) + } + if v, ok := d.GetOk("rrset"); ok { + sl := v.([]interface{}) + for _, set := range sl { + RrSetGroup = &ves_io_schema_dns_zone.RRSet{} + RrSetGroupMapStrToI := set.(map[string]interface{}) + + if w, ok := RrSetGroupMapStrToI["description"]; ok && !isIntfNil(w) { + RrSetGroup.Description = w.(string) + } + + if w, ok := RrSetGroupMapStrToI["ttl"]; ok && !isIntfNil(w) { + RrSetGroup.Ttl = uint32(w.(int)) + } + + typeRecordSetTypeFound := false + + if v, ok := RrSetGroupMapStrToI["a_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_ARecord{} + typeRecordSetInt.ARecord = &ves_io_schema_dns_zone.DNSAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "A" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.ARecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.ARecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["aaaa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_AaaaRecord{} + typeRecordSetInt.AaaaRecord = &ves_io_schema_dns_zone.DNSAAAAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "AAAA" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AaaaRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.AaaaRecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["afsdb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_AfsdbRecord{} + typeRecordSetInt.AfsdbRecord = &ves_io_schema_dns_zone.DNSAFSDBRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "AFSDB" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AfsdbRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.AFSDBRecordValue, len(sl)) + typeRecordSetInt.AfsdbRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.AFSDBRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["hostname"]; ok && !isIntfNil(w) { + values[i].Hostname = w.(string) + } + + if v, ok := valuesMapStrToI["subtype"]; ok && !isIntfNil(v) { + + values[i].Subtype = ves_io_schema_dns_zone.AFSDBRecordSubtype(ves_io_schema_dns_zone.AFSDBRecordSubtype_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["alias_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_AliasRecord{} + typeRecordSetInt.AliasRecord = &ves_io_schema_dns_zone.DNSAliasResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "ALIAS" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AliasRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.AliasRecord.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["caa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CaaRecord{} + typeRecordSetInt.CaaRecord = &ves_io_schema_dns_zone.DNSCAAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "CAA" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CaaRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.CertificationAuthorityAuthorization, len(sl)) + typeRecordSetInt.CaaRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.CertificationAuthorityAuthorization{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["flags"]; ok && !isIntfNil(w) { + values[i].Flags = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["tag"]; ok && !isIntfNil(w) { + values[i].Tag = w.(string) + } + + if w, ok := valuesMapStrToI["value"]; ok && !isIntfNil(w) { + values[i].Value = w.(string) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["cds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CdsRecord{} + typeRecordSetInt.CdsRecord = &ves_io_schema_dns_zone.DNSCDSRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "CDS" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CdsRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.DSRecordValue, len(sl)) + typeRecordSetInt.CdsRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.DSRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + digestChoiceTypeFound := false + + if v, ok := valuesMapStrToI["sha1_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha1Digest{} + digestChoiceInt.Sha1Digest = &ves_io_schema_dns_zone.SHA1Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha1Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha256Digest{} + digestChoiceInt.Sha256Digest = &ves_io_schema_dns_zone.SHA256Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha256Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha384_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha384Digest{} + digestChoiceInt.Sha384Digest = &ves_io_schema_dns_zone.SHA384Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha384Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["ds_key_algorithm"]; ok && !isIntfNil(v) { + + values[i].DsKeyAlgorithm = ves_io_schema_dns_zone.DSKeyAlgorithm(ves_io_schema_dns_zone.DSKeyAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["key_tag"]; ok && !isIntfNil(w) { + values[i].KeyTag = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["cert_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CertRecord{} + typeRecordSetInt.CertRecord = &ves_io_schema_dns_zone.CERTResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "CERT" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CertRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.CERTRecordValue, len(sl)) + typeRecordSetInt.CertRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.CERTRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if v, ok := valuesMapStrToI["algorithm"]; ok && !isIntfNil(v) { + + values[i].Algorithm = ves_io_schema_dns_zone.CERTAlgorithm(ves_io_schema_dns_zone.CERTAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["cert_key_tag"]; ok && !isIntfNil(w) { + values[i].CertKeyTag = uint32(w.(int)) + } + + if v, ok := valuesMapStrToI["cert_type"]; ok && !isIntfNil(v) { + + values[i].CertType = ves_io_schema_dns_zone.CERTType(ves_io_schema_dns_zone.CERTType_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["certificate"]; ok && !isIntfNil(w) { + values[i].Certificate = w.(string) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["cname_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_CnameRecord{} + typeRecordSetInt.CnameRecord = &ves_io_schema_dns_zone.DNSCNAMEResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "CNAME" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CnameRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.CnameRecord.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["dlv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_DlvRecord{} + typeRecordSetInt.DlvRecord = &ves_io_schema_dns_zone.DLVResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "DLV" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.DlvRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.DSRecordValue, len(sl)) + typeRecordSetInt.DlvRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.DSRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + digestChoiceTypeFound := false + + if v, ok := valuesMapStrToI["sha1_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha1Digest{} + digestChoiceInt.Sha1Digest = &ves_io_schema_dns_zone.SHA1Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha1Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha256Digest{} + digestChoiceInt.Sha256Digest = &ves_io_schema_dns_zone.SHA256Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha256Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha384_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha384Digest{} + digestChoiceInt.Sha384Digest = &ves_io_schema_dns_zone.SHA384Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha384Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["ds_key_algorithm"]; ok && !isIntfNil(v) { + + values[i].DsKeyAlgorithm = ves_io_schema_dns_zone.DSKeyAlgorithm(ves_io_schema_dns_zone.DSKeyAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["key_tag"]; ok && !isIntfNil(w) { + values[i].KeyTag = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["ds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_DsRecord{} + typeRecordSetInt.DsRecord = &ves_io_schema_dns_zone.DNSDSRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "DS" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.DsRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.DSRecordValue, len(sl)) + typeRecordSetInt.DsRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.DSRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + digestChoiceTypeFound := false + + if v, ok := valuesMapStrToI["sha1_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha1Digest{} + digestChoiceInt.Sha1Digest = &ves_io_schema_dns_zone.SHA1Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha1Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha256Digest{} + digestChoiceInt.Sha256Digest = &ves_io_schema_dns_zone.SHA256Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha256Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha384_digest"]; ok && !isIntfNil(v) && !digestChoiceTypeFound { + + digestChoiceTypeFound = true + digestChoiceInt := &ves_io_schema_dns_zone.DSRecordValue_Sha384Digest{} + digestChoiceInt.Sha384Digest = &ves_io_schema_dns_zone.SHA384Digest{} + values[i].DigestChoice = digestChoiceInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["digest"]; ok && !isIntfNil(v) { + + digestChoiceInt.Sha384Digest.Digest = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["ds_key_algorithm"]; ok && !isIntfNil(v) { + + values[i].DsKeyAlgorithm = ves_io_schema_dns_zone.DSKeyAlgorithm(ves_io_schema_dns_zone.DSKeyAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["key_tag"]; ok && !isIntfNil(w) { + values[i].KeyTag = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["eui48_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_Eui48Record{} + typeRecordSetInt.Eui48Record = &ves_io_schema_dns_zone.DNSEUI48ResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "EUI48" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui48Record.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui48Record.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["eui64_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_Eui64Record{} + typeRecordSetInt.Eui64Record = &ves_io_schema_dns_zone.DNSEUI64ResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "EUI64" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui64Record.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + typeRecordSetInt.Eui64Record.Value = v.(string) + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["lb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_LbRecord{} + typeRecordSetInt.LbRecord = &ves_io_schema_dns_zone.DNSLBResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "LB" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.LbRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["value"]; ok && !isIntfNil(v) { + + sl := v.(*schema.Set).List() + valueInt := &ves_io_schema_views.ObjectRefType{} + typeRecordSetInt.LbRecord.Value = valueInt + + for _, set := range sl { + vMapToStrVal := set.(map[string]interface{}) + if val, ok := vMapToStrVal["name"]; ok && !isIntfNil(v) { + valueInt.Name = val.(string) + } + if val, ok := vMapToStrVal["namespace"]; ok && !isIntfNil(v) { + valueInt.Namespace = val.(string) + } + + if val, ok := vMapToStrVal["tenant"]; ok && !isIntfNil(v) { + valueInt.Tenant = val.(string) + } + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["loc_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_LocRecord{} + typeRecordSetInt.LocRecord = &ves_io_schema_dns_zone.DNSLOCResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "LOC" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.LocRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.LOCValue, len(sl)) + typeRecordSetInt.LocRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.LOCValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["altitude"]; ok && !isIntfNil(w) { + values[i].Altitude = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["horizontal_precision"]; ok && !isIntfNil(w) { + values[i].HorizontalPrecision = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["latitude_degree"]; ok && !isIntfNil(w) { + values[i].LatitudeDegree = int32(w.(int)) + } + + if v, ok := valuesMapStrToI["latitude_hemisphere"]; ok && !isIntfNil(v) { + + values[i].LatitudeHemisphere = ves_io_schema_dns_zone.LatitudeHemisphere(ves_io_schema_dns_zone.LatitudeHemisphere_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["latitude_minute"]; ok && !isIntfNil(w) { + values[i].LatitudeMinute = int32(w.(int)) + } + + if w, ok := valuesMapStrToI["latitude_second"]; ok && !isIntfNil(w) { + values[i].LatitudeSecond = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["location_diameter"]; ok && !isIntfNil(w) { + values[i].LocationDiameter = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["longitude_degree"]; ok && !isIntfNil(w) { + values[i].LongitudeDegree = int32(w.(int)) + } + + if v, ok := valuesMapStrToI["longitude_hemisphere"]; ok && !isIntfNil(v) { + + values[i].LongitudeHemisphere = ves_io_schema_dns_zone.LongitudeHemisphere(ves_io_schema_dns_zone.LongitudeHemisphere_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["longitude_minute"]; ok && !isIntfNil(w) { + values[i].LongitudeMinute = int32(w.(int)) + } + + if w, ok := valuesMapStrToI["longitude_second"]; ok && !isIntfNil(w) { + values[i].LongitudeSecond = float32(w.(float64)) + } + + if w, ok := valuesMapStrToI["vertical_precision"]; ok && !isIntfNil(w) { + values[i].VerticalPrecision = float32(w.(float64)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["mx_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_MxRecord{} + typeRecordSetInt.MxRecord = &ves_io_schema_dns_zone.DNSMXResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "MX" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.MxRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.MailExchanger, len(sl)) + typeRecordSetInt.MxRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.MailExchanger{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["domain"]; ok && !isIntfNil(w) { + values[i].Domain = w.(string) + } + + if w, ok := valuesMapStrToI["priority"]; ok && !isIntfNil(w) { + values[i].Priority = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["naptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_NaptrRecord{} + typeRecordSetInt.NaptrRecord = &ves_io_schema_dns_zone.DNSNAPTRResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "NAPTR" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.NaptrRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.NAPTRValue, len(sl)) + typeRecordSetInt.NaptrRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.NAPTRValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["flags"]; ok && !isIntfNil(w) { + values[i].Flags = w.(string) + } + + if w, ok := valuesMapStrToI["order"]; ok && !isIntfNil(w) { + values[i].Order = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["preference"]; ok && !isIntfNil(w) { + values[i].Preference = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["regexp"]; ok && !isIntfNil(w) { + values[i].Regexp = w.(string) + } + + if w, ok := valuesMapStrToI["replacement"]; ok && !isIntfNil(w) { + values[i].Replacement = w.(string) + } + + if w, ok := valuesMapStrToI["service"]; ok && !isIntfNil(w) { + values[i].Service = w.(string) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["ns_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_NsRecord{} + typeRecordSetInt.NsRecord = &ves_io_schema_dns_zone.DNSNSResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "NS" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.NsRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.NsRecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["ptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_PtrRecord{} + typeRecordSetInt.PtrRecord = &ves_io_schema_dns_zone.DNSPTRResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "PTR" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.PtrRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.PtrRecord.Values = ls + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["srv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_SrvRecord{} + typeRecordSetInt.SrvRecord = &ves_io_schema_dns_zone.DNSSRVResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "SRV" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.SrvRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.SRVService, len(sl)) + typeRecordSetInt.SrvRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.SRVService{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["port"]; ok && !isIntfNil(w) { + values[i].Port = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["priority"]; ok && !isIntfNil(w) { + values[i].Priority = uint32(w.(int)) + } + + if w, ok := valuesMapStrToI["target"]; ok && !isIntfNil(w) { + values[i].Target = w.(string) + } + + if w, ok := valuesMapStrToI["weight"]; ok && !isIntfNil(w) { + values[i].Weight = uint32(w.(int)) + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["sshfp_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_SshfpRecord{} + typeRecordSetInt.SshfpRecord = &ves_io_schema_dns_zone.SSHFPResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "SSHFP" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.SshfpRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.SSHFPRecordValue, len(sl)) + typeRecordSetInt.SshfpRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.SSHFPRecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if v, ok := valuesMapStrToI["algorithm"]; ok && !isIntfNil(v) { + + values[i].Algorithm = ves_io_schema_dns_zone.SSHFPAlgorithm(ves_io_schema_dns_zone.SSHFPAlgorithm_value[v.(string)]) + + } + + if w, ok := valuesMapStrToI["fingerprint"]; ok && !isIntfNil(w) { + values[i].Fingerprint = w.(string) + } + + fingerprintTypeTypeFound := false + + if v, ok := valuesMapStrToI["sha1_fingerprint"]; ok && !isIntfNil(v) && !fingerprintTypeTypeFound { + + fingerprintTypeTypeFound = true + fingerprintTypeInt := &ves_io_schema_dns_zone.SSHFPRecordValue_Sha1Fingerprint{} + fingerprintTypeInt.Sha1Fingerprint = &ves_io_schema_dns_zone.SHA1Fingerprint{} + values[i].FingerprintType = fingerprintTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fingerprint"]; ok && !isIntfNil(v) { + + fingerprintTypeInt.Sha1Fingerprint.Fingerprint = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["sha256_fingerprint"]; ok && !isIntfNil(v) && !fingerprintTypeTypeFound { + + fingerprintTypeTypeFound = true + fingerprintTypeInt := &ves_io_schema_dns_zone.SSHFPRecordValue_Sha256Fingerprint{} + fingerprintTypeInt.Sha256Fingerprint = &ves_io_schema_dns_zone.SHA256Fingerprint{} + values[i].FingerprintType = fingerprintTypeInt + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["fingerprint"]; ok && !isIntfNil(v) { + + fingerprintTypeInt.Sha256Fingerprint.Fingerprint = v.(string) + + } + + } + + } + + if v, ok := valuesMapStrToI["fingerprinttype"]; ok && !isIntfNil(v) { + + values[i].Fingerprinttype = ves_io_schema_dns_zone.SSHFPFingerprintType(ves_io_schema_dns_zone.SSHFPFingerprintType_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["tlsa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_TlsaRecord{} + typeRecordSetInt.TlsaRecord = &ves_io_schema_dns_zone.TLSAResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "TLSA" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.TlsaRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + sl := v.([]interface{}) + values := make([]*ves_io_schema_dns_zone.TLSARecordValue, len(sl)) + typeRecordSetInt.TlsaRecord.Values = values + for i, set := range sl { + values[i] = &ves_io_schema_dns_zone.TLSARecordValue{} + valuesMapStrToI := set.(map[string]interface{}) + + if w, ok := valuesMapStrToI["certificate_association_data"]; ok && !isIntfNil(w) { + values[i].CertificateAssociationData = w.(string) + } + + if v, ok := valuesMapStrToI["certificate_usage"]; ok && !isIntfNil(v) { + + values[i].CertificateUsage = ves_io_schema_dns_zone.TLSARecordCertificateUsage(ves_io_schema_dns_zone.TLSARecordCertificateUsage_value[v.(string)]) + + } + + if v, ok := valuesMapStrToI["matching_type"]; ok && !isIntfNil(v) { + + values[i].MatchingType = ves_io_schema_dns_zone.TLSARecordMatchingType(ves_io_schema_dns_zone.TLSARecordMatchingType_value[v.(string)]) + + } + + if v, ok := valuesMapStrToI["selector"]; ok && !isIntfNil(v) { + + values[i].Selector = ves_io_schema_dns_zone.TLSARecordCSelector(ves_io_schema_dns_zone.TLSARecordCSelector_value[v.(string)]) + + } + + } + + } + + } + + } + + if v, ok := RrSetGroupMapStrToI["txt_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + + typeRecordSetTypeFound = true + typeRecordSetInt := &ves_io_schema_dns_zone.RRSet_TxtRecord{} + typeRecordSetInt.TxtRecord = &ves_io_schema_dns_zone.DNSTXTResourceRecord{} + RrSetGroup.TypeRecordSet = typeRecordSetInt + types = "TXT" + + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + + if v, ok := cs["name"]; ok && !isIntfNil(v) { + + typeRecordSetInt.TxtRecord.Name = v.(string) + recordName = v.(string) + + } + + if v, ok := cs["values"]; ok && !isIntfNil(v) { + + ls := make([]string, len(v.([]interface{}))) + for i, v := range v.([]interface{}) { + ls[i] = v.(string) + } + typeRecordSetInt.TxtRecord.Values = ls + + } + + } + + } + + } + + } + reqUp := &ves_io_schema_dns_zone_rrset.ReplaceRequest{ + DnsZoneName: dnsZoneName, + GroupName: groupName, + RecordName: recordName, + Type: types, + Rrset: RrSetGroup, + } + yamlReqUp, err := codec.ToYAML(reqUp) + if err != nil { + log.Printf("Ignored: Error marshalling rpc response to yaml: %s", err) + } + log.Printf("[DEBUG] setting volterra dns_zone_record resource update request value: %+v", reqUp) + _, err = client.CustomAPI(context.Background(), http.MethodPut, fmt.Sprintf(urirrsetall, dnsZoneName, groupName, recordName, types), fmt.Sprintf("%s.%s", setRRSETRPCFQN, "Replace"), yamlReqUp) + if err != nil { + log.Printf("Update: Ignored: Error encountered while updating dns_zone_record resource. Error: : %s", err) + } + return nil +} + +// resourceVolterraSetRRSETRecordDelete delete dns_zone_record resource +func resourceVolterraSetRRSETRecordDelete(d *schema.ResourceData, meta interface{}) error { + client := meta.(*APIClient) + var dnsZoneName, groupName, recordName, types string + if v, ok := d.GetOk("dns_zone_name"); ok { + dnsZoneName = v.(string) + } + if v, ok := d.GetOk("group_name"); ok { + groupName = v.(string) + } + if v, ok := d.GetOk("rrset"); ok { + sl := v.([]interface{}) + for _, set := range sl { + RrSetGroupMapStrToI := set.(map[string]interface{}) + typeRecordSetTypeFound := false + if v, ok := RrSetGroupMapStrToI["a_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "A" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + if v, ok := RrSetGroupMapStrToI["aaaa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "AAAA" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["afsdb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "AFSDB" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["alias_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "ALIAS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["caa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CAA" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["cds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CDS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["cert_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CERT" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["cname_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "CNAME" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["dlv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "DLV" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["ds_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "DS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["eui48_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "EUI48" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["eui64_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "EUI64" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["lb_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "LB" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["loc_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "LOC" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["mx_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "MX" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["naptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "NAPTR" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["ns_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "NS" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["ptr_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "PTR" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["srv_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "SRV" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["sshfp_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "SSHFP" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["tlsa_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "TLSA" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + if v, ok := RrSetGroupMapStrToI["txt_record"]; ok && !isIntfNil(v) && !typeRecordSetTypeFound { + typeRecordSetTypeFound = true + types = "TXT" + sl := v.(*schema.Set).List() + for _, set := range sl { + cs := set.(map[string]interface{}) + if v, ok := cs["name"]; ok && !isIntfNil(v) { + recordName = v.(string) + } + } + } + + } + + } + reqDel := &ves_io_schema_dns_zone_rrset.DeleteRequest{ + DnsZoneName: dnsZoneName, + GroupName: groupName, + RecordName: recordName, + Type: types, + } + yamlReqDel, err := codec.ToYAML(reqDel) + if err != nil { + log.Printf("Ignored: Error marshalling rpc response to yaml: %s", err) + } + log.Printf("[DEBUG] setting volterra dns_zone_record resource delete request value: %+v", reqDel) + _, err = client.CustomAPI(context.Background(), http.MethodDelete, fmt.Sprintf(urirrsetall, dnsZoneName, groupName, recordName, types), fmt.Sprintf("%s.%s", setRRSETRPCFQN, "Delete"), yamlReqDel) + if err != nil { + log.Printf("Update: Ignored: Error encountered while deleting dns_zone_record resource. Error: : %s", err) + } + return nil +} diff --git a/volterra/resource_volterra_dns_zone_record_test.go b/volterra/resource_volterra_dns_zone_record_test.go new file mode 100644 index 000000000..40c40e27d --- /dev/null +++ b/volterra/resource_volterra_dns_zone_record_test.go @@ -0,0 +1,68 @@ +// Copyright (c) 2023 F5 Inc. All rights reserved. +package volterra + +import ( + "fmt" + "os" + "testing" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" + ves_io_schema_dns_zone "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone" +) + +func TestAccDNSZoneRecord(t *testing.T) { + name := generateResourceName() + resourceName := "volterra_dns_zone_record." + name + testURL, stopFunc, _ := createTestCustomAPIServer(t, []string{ves_io_schema_dns_zone.ObjectType}) + defer stopFunc() + os.Setenv("VOLT_API_TEST", "true") + os.Setenv("VOLT_API_URL", testURL) + os.Setenv("TF_ACC", "true") + os.Setenv("VOLT_VESENV", "true") + os.Setenv("VOLT_TENANT", "ves-io") + resource.Test(t, resource.TestCase{ + Providers: testAccProviders, + PreCheck: func() { testAccPreCheck() }, + Steps: []resource.TestStep{ + { + Config: testConfigDNSZoneRecord(name), + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttr(resourceName, "group_name", "vestest-services"), + resource.TestCheckResourceAttr(resourceName, "rrset.#", "1"), + resource.TestCheckResourceAttr(resourceName, "rrset.0.a_record.#", "1"), + resource.TestCheckResourceAttr(resourceName, "rrset.0.a_record.0.values.#", "1"), + ), + }, + }, + }) +} + +func testConfigDNSZoneRecord(name string) string { + return fmt.Sprintf(` + resource "volterra_dns_zone" "system_yblviux3bvh7-co-jp" { + primary { + rr_set_group { + metadata { + description = "" + disable = false + name = "vestest-services" + } + } + } + name = "%[1]s" + namespace = "system" + } + resource "volterra_dns_zone_record" "%[1]s" { + dns_zone_name = "%[1]s" + group_name = "vestest-services" + rrset { + description = "test is written1234" + ttl = "68" + a_record { + name = "%[1]s" + values = ["1.5.1.1"] + } + } + } + `, name) +} diff --git a/volterra/resource_volterra_http_lb_test.go b/volterra/resource_volterra_http_lb_test.go index 44b77c174..b025ad6cd 100644 --- a/volterra/resource_volterra_http_lb_test.go +++ b/volterra/resource_volterra_http_lb_test.go @@ -2,10 +2,8 @@ package volterra import ( - "context" "fmt" "os" - "reflect" "testing" "github.com/google/uuid" @@ -26,7 +24,6 @@ import ( ves_io_schema_views_rate_limiter_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views/rate_limiter_policy" "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" vh_dns_info "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host_dns_info" - statemigration "github.com/volterraedge/terraform-provider-volterra/volterra/state_migration" "gopkg.volterra.us/stdlib/client" "gopkg.volterra.us/stdlib/server" ) @@ -53,7 +50,7 @@ func TestHTTPLB(t *testing.T) { client.WithTenant(tenantName), client.WithCreatorClass("test"), client.WithCreatorID("test-"+t.Name())) - tenantObj := mkDBObjTenant(tenantName, uuid.New().String()) + tenantObj := mkDBObjTenant(tenantName, uuid.New().String(), withAddonServices("f5xc-waap-standard")) f.MustCreateEntry(tenantObj) nsName := "default" @@ -279,10 +276,15 @@ func testConfigHTTPLB(name, namespace, existLbName, existNsName string, timeout rules { metadata { name = "allow-ns" + disable = false } spec { action = "ALLOW" + any_client = false + any_dst_asn = false + any_dst_ip = false + scheme = [] client_selector { expressions = [ "name.ves.io/namespace in (foo)" @@ -293,6 +295,8 @@ func testConfigHTTPLB(name, namespace, existLbName, existNsName string, timeout challenge_action = "DEFAULT_CHALLENGE" waf_action { none = true + waf_in_monitoring_mode = false + waf_skip_processing = false } } } @@ -300,6 +304,11 @@ func testConfigHTTPLB(name, namespace, existLbName, existNsName string, timeout } resource "volterra_http_loadbalancer" "%[1]s" { name = "%[1]s" + disable_api_definition = true + disable_api_discovery = true + disable_malicious_user_detection = true + disable_trust_client_ip_headers = true + l7_ddos_action_default = true namespace = volterra_namespace.app.name labels = { "ves.io/app_type" = volterra_app_type.app_type.name @@ -314,11 +323,15 @@ func testConfigHTTPLB(name, namespace, existLbName, existNsName string, timeout disable_rate_limit = false app_firewall { name = volterra_app_firewall.app_fwd_athena.name + namespace = "%[2]s" + tenant = "tenant1" } no_service_policies = false active_service_policies { policies { name = volterra_service_policy.allow_ns.name + namespace = "%[2]s" + tenant = "tenant1" } } round_robin = true @@ -327,33 +340,39 @@ func testConfigHTTPLB(name, namespace, existLbName, existNsName string, timeout user_identification { name = volterra_user_identification.%[1]s.name namespace = "%[2]s" + tenant = "tenant1" } rate_limit { + no_ip_allowed_list = false + no_policies = false ip_allowed_list { + ipv6_prefixes = [] prefixes = ["8.8.8.8/32"] } policies { policies { name = volterra_rate_limiter_policy.%[1]s.name namespace = "%[2]s" + tenant = "tenant1" } } } more_option { - disable_default_error_pages = false - disable_path_normalize = true - enable_path_normalize = false - enable_strict_sni_host_header_check = false - idle_timeout = %[5]d - max_request_header_size = 80 - request_headers_to_remove = [] - response_headers_to_remove = [] + custom_errors = {} + disable_default_error_pages = false + disable_path_normalize = true + enable_path_normalize = false + enable_strict_sni_host_header_check = false + idle_timeout = %[5]d + max_request_header_size = 80 + request_headers_to_remove = [] + response_headers_to_remove = [] - request_headers_to_add { - append = false - name = "X-real-ip" - value = "$[client_address]" - } + request_headers_to_add { + append = false + name = "X-real-ip" + value = "$[client_address]" + } } } resource "volterra_api_definition" "example" { @@ -498,6 +517,13 @@ func testConfigHTTPLBWithAutoCert(name, namespace, existLbName, existNsName stri } resource "volterra_http_loadbalancer" "%[1]s" { name = "%[1]s" + disable_api_definition = true + disable_api_discovery = true + disable_malicious_user_detection = true + disable_trust_client_ip_headers = true + l7_ddos_action_default = true + disable_waf = true + user_id_client_ip = true namespace = volterra_namespace.app.name labels = { "new-test" = "true" @@ -505,7 +531,17 @@ func testConfigHTTPLBWithAutoCert(name, namespace, existLbName, existNsName stri advertise_on_public_default_vip = true no_challenge = true https_auto_cert { - port_ranges= "80,443" + add_hsts = true + connection_idle_timeout = 120000 + default_header = false + default_loadbalancer = false + disable_path_normalize = false + enable_path_normalize = true + http_redirect = true + no_mtls = true + non_default_loadbalancer = true + pass_through = false + port_ranges = "80,443" } disable_rate_limit = true no_service_policies = true @@ -519,36 +555,3 @@ func testConfigHTTPLBWithAutoCert(name, namespace, existLbName, existNsName stri } `, name, namespace, existLbName, existNsName, timeout) } - -func TestResourceHttpLoadbalancerInstanceStateUpgradeV0(t *testing.T) { - rawState := map[string]interface{}{ - "enable_ddos_detection": []interface{}{ - map[string]interface{}{ - "disable_auto_mitigation": true, - "enable_auto_mitigation": true, - }, - }, - } - - // Expected output state after upgrade - expectedState := map[string]interface{}{ - "enable_ddos_detection": []interface{}{ - map[string]interface{}{ - "disable_auto_mitigation": true, - "enable_auto_mitigation": []interface{}{ - map[string]interface{}{ - "block": true, - }, - }, - }, - }, - } - - updatedState, err := statemigration.ResourceHttpLoadbalancerInstanceStateUpgradeV0(context.Background(), rawState, nil) - if err != nil { - t.Fatalf("error during state upgrade: %v", err) - } - if !reflect.DeepEqual(updatedState, expectedState) { - t.Fatalf("expected state:\n%#v\ngot:\n%#v\n", expectedState, updatedState) - } -} diff --git a/volterra/resource_volterra_reg_approval_test.go b/volterra/resource_volterra_reg_approval_test.go index 2f6d804a2..648b67dc0 100644 --- a/volterra/resource_volterra_reg_approval_test.go +++ b/volterra/resource_volterra_reg_approval_test.go @@ -7,6 +7,7 @@ import ( "os" "testing" + "github.com/gogo/protobuf/types" "github.com/stretchr/testify/assert" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" @@ -139,6 +140,9 @@ type MauriceCustomAPI struct { sf svcfw.Service } +var _ schema_registration.CustomAPIServer = &MauriceCustomAPI{} + +// volterra.MauriceCustomAPI does not satisfy interface ves_io_schema_registration.CustomAPIServer func GetMauriceFixtureOpts(etcdURL string) []generic.ConfigOpt { // custom modules @@ -198,6 +202,18 @@ func GetMauriceFixtureOpts(etcdURL string) []generic.ConfigOpt { return fcOpts } +func (s *MauriceCustomAPI) Get(ctx context.Context, r *schema_registration.GetRequest) (*schema_registration.GetResponse, error) { + return &schema_registration.GetResponse{}, nil +} + +func (s *MauriceCustomAPI) List(ctx context.Context, r *schema_registration.ListRequest) (*schema_registration.ListResponse, error) { + return nil, nil +} + +func (s *MauriceCustomAPI) Delete(ctx context.Context, r *schema_registration.DeleteRequest) (*types.Empty, error) { + return nil, nil +} + func (s *MauriceCustomAPI) RegistrationApprove(ctx context.Context, r *schema_registration.ApprovalReq) (*schema_registration.ObjectChangeResp, error) { tenant := server.TenantFromContext(ctx) if tenant == "" { diff --git a/volterra/resource_volterra_registration_approval.go b/volterra/resource_volterra_registration_approval.go index 3a91a5249..420439485 100644 --- a/volterra/resource_volterra_registration_approval.go +++ b/volterra/resource_volterra_registration_approval.go @@ -22,6 +22,9 @@ import ( ) const ( + getRegRPCFQN = "ves.io.schema.registration.CustomAPI.Get" + getRegURI = "/public/namespaces/system/registrations/%s" + listRegRPCFQN = "ves.io.schema.registration.CustomAPI.ListRegistrationsByState" listRegURI = "/public/namespaces/system/listregistrationsbystate" @@ -198,7 +201,14 @@ func resourceVolterraRegistrationApprovalCreate(d *schema.ResourceData, meta int func resourceVolterraRegistrationApprovalRead(d *schema.ResourceData, meta interface{}) error { client := meta.(*APIClient) regName := d.Get("registration_name").(string) - _, err := client.GetObject(context.Background(), ves_io_schema_registration.ObjectType, svcfw.SystemNSVal, regName) + approvalReq := &ves_io_schema_registration.GetRequest{Name: regName, Namespace: svcfw.SystemNSVal} + + log.Printf("[DEBUG] Deleting Volterra Registration obj with name %+v in namespace %+v", approvalReq.Name, approvalReq.Namespace) + yamlReq, err := codec.ToYAML(approvalReq) + if err != nil { + return fmt.Errorf("Error marshalling rpc response to yaml: %s", err) + } + _, err = client.CustomAPI(context.Background(), http.MethodGet, fmt.Sprintf(getRegURI, regName), getRegRPCFQN, yamlReq) if err != nil { if strings.Contains(err.Error(), "status code 404") { log.Printf("[INFO] Registration %s no longer exists", d.Id()) diff --git a/volterra/resource_volterra_service_policy.go b/volterra/resource_volterra_service_policy.go index 60b92c340..b4d8145bc 100644 --- a/volterra/resource_volterra_service_policy.go +++ b/volterra/resource_volterra_service_policy.go @@ -20,6 +20,7 @@ import ( ves_io_schema_service_policy "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy" ves_io_schema_service_policy_rule "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/service_policy_rule" ves_io_schema_views "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/views" + drift "github.com/volterraedge/terraform-provider-volterra/volterra/drift_detection" ) // resourceVolterraServicePolicy is implementation of Volterra's ServicePolicy resources @@ -4469,6 +4470,8 @@ func setServicePolicyFields(client *APIClient, d *schema.ResourceData, resp vesa d.Set("namespace", metadata.GetNamespace()) + drift.DriftDetectionSpecServicePolicy(d, resp) + return nil } diff --git a/volterra/resource_volterra_virtual_host_test.go b/volterra/resource_volterra_virtual_host_test.go index da0e39385..6fa058a27 100644 --- a/volterra/resource_volterra_virtual_host_test.go +++ b/volterra/resource_volterra_virtual_host_test.go @@ -7,20 +7,29 @@ import ( "strings" "testing" + "github.com/google/uuid" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" + ves_io_schema_tenant "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/tenant" ves_io_schema_vh "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/virtual_host" ) func TestAccVirtualHostBasic(t *testing.T) { name := generateResourceName() resourceName := "volterra_virtual_host." + name - testURL, stopFunc := createTestServer(t, ves_io_schema_vh.ObjectType) + testURL, stopFunc, f := createTestCustomAPIServer(t, []string{ + ves_io_schema_tenant.ObjectType, + ves_io_schema_vh.ObjectType, + }) defer stopFunc() os.Setenv("VOLT_API_TEST", "true") os.Setenv("VOLT_API_URL", testURL) os.Setenv("TF_ACC", "true") os.Setenv("VOLT_VESENV", "true") os.Setenv("VOLT_TENANT", "ves-io") + tenantName := "ves-io" + tenantObj := mkDBObjTenant(tenantName, uuid.New().String()) + f.MustCreateEntry(tenantObj) + resource.Test(t, resource.TestCase{ Providers: testAccProviders, PreCheck: func() { testAccPreCheck() }, diff --git a/volterra/state_migration/resource_auto_state_migration_volterra_http_loadbalancer.go b/volterra/state_migration/resource_auto_state_migration_volterra_http_loadbalancer.go index 873b99c93..1b73a0b6f 100644 --- a/volterra/state_migration/resource_auto_state_migration_volterra_http_loadbalancer.go +++ b/volterra/state_migration/resource_auto_state_migration_volterra_http_loadbalancer.go @@ -7,7 +7,7 @@ import ( "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" ) -func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { +func ResourceHttpLoadbalancerInstanceResourceV1() *schema.Resource { return &schema.Resource{ Schema: map[string]*schema.Schema{ @@ -120,6 +120,82 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, + "site_segment": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + Type: schema.TypeString, + Required: true, + }, + + "ipv6": { + Type: schema.TypeString, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "site": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + "virtual_network": { Type: schema.TypeSet, @@ -1999,6 +2075,78 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -2554,6 +2702,78 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -3254,8 +3474,9 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, "reload_header_name": { - Type: schema.TypeString, - Required: true, + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", }, }, }, @@ -6450,103 +6671,31 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, - "disable_ddos_detection": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_ddos_detection": { + "ddos_mitigation_rules": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeList, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "disable_auto_mitigation": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + "expiration_timestamp": { + Type: schema.TypeString, + Optional: true, }, - "enable_auto_mitigation": { + "metadata": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Required: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ - "block": { + "description": { + Type: schema.TypeString, + Optional: true, + }, - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_challenge": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "cookie_expiry": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "custom_page": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_script_delay": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - - "ddos_mitigation_rules": { - - Type: schema.TypeList, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "expiration_timestamp": { - Type: schema.TypeString, - Optional: true, - }, - - "metadata": { - - Type: schema.TypeSet, - Required: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "description": { - Type: schema.TypeString, - Optional: true, - }, - - "disable": { + "disable": { Type: schema.TypeBool, Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", @@ -7467,6 +7616,13 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -7486,31 +7642,65 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { "http_protocol_options": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "http_protocol_enable_v1_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, "http_protocol_enable_v1_v2": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, "http_protocol_enable_v2_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, }, }, @@ -8206,6 +8396,13 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -8225,31 +8422,65 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { "http_protocol_options": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "http_protocol_enable_v1_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, }, "http_protocol_enable_v1_v2": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, "http_protocol_enable_v2_only": { - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeBool, + Optional: true, }, }, }, @@ -8895,78 +9126,6 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, - "disable_ddos_detection": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_ddos_detection": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "disable_auto_mitigation": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "enable_auto_mitigation": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "block": { - - Type: schema.TypeBool, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_challenge": { - - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - - "cookie_expiry": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "custom_page": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - - "js_script_delay": { - Type: schema.TypeInt, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - "disable_malicious_user_detection": { Type: schema.TypeBool, @@ -9735,6 +9894,13 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "preserve_case_header_transformation": { Type: schema.TypeBool, @@ -9767,9 +9933,52 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { "http1_config": { - Type: schema.TypeBool, + Type: schema.TypeSet, Optional: true, Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, }, "http2_options": { @@ -9865,6 +10074,27 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "disable_proxy_protocol": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proxy_protocol_v1": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proxy_protocol_v2": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "disable_subsets": { Type: schema.TypeBool, @@ -10306,6 +10536,33 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment": { + + Type: schema.TypeSet, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + "ip": { Type: schema.TypeString, @@ -10428,6 +10685,33 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Deprecated: "This field is deprecated and will be removed in future release.", }, + "segment": { + + Type: schema.TypeSet, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + "refresh_interval": { Type: schema.TypeInt, Optional: true, @@ -12149,6 +12433,78 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -12710,6 +13066,78 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -13361,6 +13789,78 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { }, }, + "jwt_claims": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "invert_matcher": { + Type: schema.TypeBool, + Optional: true, + }, + + "check_not_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "check_present": { + + Type: schema.TypeBool, + Optional: true, + }, + + "item": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "exact_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "regex_values": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "transformers": { + + Type: schema.TypeList, + + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "name": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + "query_params": { Type: schema.TypeList, @@ -14838,22 +15338,19 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { "regex_rewrite": { - Type: schema.TypeSet, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeSet, + Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "pattern": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, "substitution": { - Type: schema.TypeString, - Optional: true, - Deprecated: "This field is deprecated and will be removed in future release.", + Type: schema.TypeString, + Optional: true, }, }, }, @@ -15229,13 +15726,13 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Optional: true, }, - "disable_threat_intelligence": { + "disable_threat_mesh": { Type: schema.TypeBool, Optional: true, }, - "enable_threat_intelligence": { + "enable_threat_mesh": { Type: schema.TypeBool, Optional: true, @@ -15258,7 +15755,7 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { Type: schema.TypeList, - Optional: true, + Required: true, Elem: &schema.Schema{ Type: schema.TypeString, }, @@ -15659,14 +16156,68 @@ func ResourceHttpLoadbalancerInstanceResourceV0() *schema.Resource { } } -func ResourceHttpLoadbalancerInstanceStateUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - for _, v := range rawState["enable_ddos_detection"].([]interface{}) { - a := v.(map[string]interface{}) - value, ok := a["enable_auto_mitigation"] - if ok { - if reflect.TypeOf(value).Kind() == reflect.Bool { - a["enable_auto_mitigation"] = []interface{}{map[string]interface{}{ - "block": a["enable_auto_mitigation"].(bool), +func ResourceHttpLoadbalancerInstanceStateUpgradeV1(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { + httpsAutoCert, ok := rawState["https_auto_cert"].([]interface{}) + if !ok { + return rawState, nil + } + + for _, v := range httpsAutoCert { + a, ok := v.(map[string]interface{}) + if !ok { + continue + } + + httpProtocolOptions, ok := a["http_protocol_options"].([]interface{}) + if !ok { + continue + } + + for _, va := range httpProtocolOptions { + aa, ok := va.(map[string]interface{}) + if !ok { + continue + } + + value, ok := aa["http_protocol_enable_v1_only"] + if ok && reflect.TypeOf(value).Kind() == reflect.Bool { + aa["http_protocol_enable_v1_only"] = []interface{}{map[string]interface{}{ + "header_transformation": []interface{}{map[string]interface{}{ + "legacy_header_transformation": true, + }}, + }} + } + } + } + + defaultPool, ok := rawState["default_pool"].([]interface{}) + if !ok { + return rawState, nil + } + + for _, v := range defaultPool { + a, ok := v.(map[string]interface{}) + if !ok { + continue + } + + advancedOptions, ok := a["advanced_options"].([]interface{}) + if !ok { + continue + } + + for _, va := range advancedOptions { + aa, ok := va.(map[string]interface{}) + if !ok { + continue + } + + value, ok := aa["http1_config"] + if ok && reflect.TypeOf(value).Kind() == reflect.Bool { + aa["http1_config"] = []interface{}{map[string]interface{}{ + "header_transformation": []interface{}{map[string]interface{}{ + "legacy_header_transformation": true, + }}, }} } } diff --git a/volterra/state_migration/resource_auto_state_migration_volterra_origin_pool.go b/volterra/state_migration/resource_auto_state_migration_volterra_origin_pool.go new file mode 100644 index 000000000..024ad5aa9 --- /dev/null +++ b/volterra/state_migration/resource_auto_state_migration_volterra_origin_pool.go @@ -0,0 +1,1471 @@ +package statemigration + +import ( + "context" + "reflect" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" +) + +func ResourceOriginPoolInstanceResourceV1() *schema.Resource { + return &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "annotations": { + Type: schema.TypeMap, + Optional: true, + }, + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "disable": { + Type: schema.TypeBool, + Optional: true, + }, + + "labels": { + Type: schema.TypeMap, + Optional: true, + }, + + "name": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "namespace": { + Type: schema.TypeString, + Required: true, + ForceNew: true, + }, + + "advanced_options": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "circuit_breaker": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "connection_limit": { + Type: schema.TypeInt, + Optional: true, + }, + + "max_requests": { + Type: schema.TypeInt, + Optional: true, + }, + + "pending_requests": { + Type: schema.TypeInt, + Optional: true, + }, + + "priority": { + Type: schema.TypeString, + Optional: true, + }, + + "retries": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "default_circuit_breaker": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disable_circuit_breaker": { + + Type: schema.TypeBool, + Optional: true, + }, + + "connection_timeout": { + Type: schema.TypeInt, + Optional: true, + }, + + "header_transformation_type": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "http_idle_timeout": { + Type: schema.TypeInt, + Optional: true, + }, + + "auto_http_config": { + + Type: schema.TypeBool, + Optional: true, + }, + + "http1_config": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "header_transformation": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "legacy_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "preserve_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proper_case_header_transformation": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "http2_options": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "enabled": { + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + + "disable_lb_source_ip_persistance": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_lb_source_ip_persistance": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disable_outlier_detection": { + + Type: schema.TypeBool, + Optional: true, + }, + + "outlier_detection": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "base_ejection_time": { + Type: schema.TypeInt, + Optional: true, + }, + + "consecutive_5xx": { + Type: schema.TypeInt, + Optional: true, + }, + + "consecutive_gateway_failure": { + Type: schema.TypeInt, + Optional: true, + }, + + "interval": { + Type: schema.TypeInt, + Optional: true, + }, + + "max_ejection_percent": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "no_panic_threshold": { + + Type: schema.TypeBool, + Optional: true, + }, + + "panic_threshold": { + + Type: schema.TypeInt, + Optional: true, + }, + + "disable_proxy_protocol": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proxy_protocol_v1": { + + Type: schema.TypeBool, + Optional: true, + }, + + "proxy_protocol_v2": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disable_subsets": { + + Type: schema.TypeBool, + Optional: true, + }, + + "enable_subsets": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "endpoint_subsets": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "keys": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "any_endpoint": { + + Type: schema.TypeBool, + Optional: true, + }, + + "default_subset": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "default_subset": { + Type: schema.TypeMap, + Optional: true, + }, + }, + }, + }, + + "fail_request": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "endpoint_selection": { + Type: schema.TypeString, + Required: true, + }, + + "health_check_port": { + + Type: schema.TypeInt, + Optional: true, + }, + + "same_as_endpoint_port": { + + Type: schema.TypeBool, + Optional: true, + }, + + "healthcheck": { + + Type: schema.TypeList, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "loadbalancer_algorithm": { + Type: schema.TypeString, + Required: true, + }, + + "origin_servers": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "consul_service": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "inside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "outside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "service_name": { + Type: schema.TypeString, + Required: true, + }, + + "site_locator": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "custom_endpoint_object": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "endpoint": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "k8s_service": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "inside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "outside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "vk8s_networks": { + + Type: schema.TypeBool, + Optional: true, + }, + + "service_name": { + + Type: schema.TypeString, + Optional: true, + }, + + "service_selector": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "expressions": { + + Type: schema.TypeList, + + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "site_locator": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "private_ip": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "inside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "outside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ip": { + + Type: schema.TypeString, + Optional: true, + }, + + "ipv6": { + + Type: schema.TypeString, + Optional: true, + }, + + "site_locator": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "private_name": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dns_name": { + Type: schema.TypeString, + Required: true, + }, + + "inside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "outside_network": { + + Type: schema.TypeBool, + Optional: true, + }, + + "segment": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "refresh_interval": { + Type: schema.TypeInt, + Optional: true, + }, + + "site_locator": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "virtual_site": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "kind": { + Type: schema.TypeString, + Computed: true, + }, + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "public_ip": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "ip": { + + Type: schema.TypeString, + Optional: true, + }, + + "ipv6": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "public_name": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dns_name": { + Type: schema.TypeString, + Required: true, + }, + + "refresh_interval": { + Type: schema.TypeInt, + Optional: true, + }, + }, + }, + }, + + "vn_private_ip": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "virtual_network": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "ip": { + + Type: schema.TypeString, + Optional: true, + }, + + "ipv6": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "vn_private_name": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "dns_name": { + Type: schema.TypeString, + Required: true, + }, + + "private_network": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + + "labels": { + Type: schema.TypeMap, + Optional: true, + }, + }, + }, + }, + + "automatic_port": { + + Type: schema.TypeBool, + Optional: true, + }, + + "lb_port": { + + Type: schema.TypeBool, + Optional: true, + }, + + "port": { + + Type: schema.TypeInt, + Optional: true, + }, + + "no_tls": { + + Type: schema.TypeBool, + Optional: true, + }, + + "use_tls": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "no_mtls": { + + Type: schema.TypeBool, + Optional: true, + }, + + "use_mtls": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "tls_certificates": { + + Type: schema.TypeList, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "certificate_url": { + Type: schema.TypeString, + Required: true, + }, + + "description": { + Type: schema.TypeString, + Optional: true, + }, + + "custom_hash_algorithms": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "hash_algorithms": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + }, + }, + }, + + "disable_ocsp_stapling": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + + "use_system_defaults": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{}, + }, + }, + + "private_key": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "blindfold_secret_info_internal": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "secret_encoding_type": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "blindfold_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "decryption_provider": { + Type: schema.TypeString, + Optional: true, + }, + + "location": { + Type: schema.TypeString, + Required: true, + }, + + "store_provider": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "clear_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "provider": { + Type: schema.TypeString, + Optional: true, + }, + + "url": { + Type: schema.TypeString, + Required: true, + }, + }, + }, + }, + + "vault_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "key": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "location": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "provider": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "secret_encoding": { + Type: schema.TypeString, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + + "version": { + Type: schema.TypeInt, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + + "wingman_secret_info": { + + Type: schema.TypeSet, + Optional: true, + Deprecated: "This field is deprecated and will be removed in future release.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Required: true, + Deprecated: "This field is deprecated and will be removed in future release.", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + + "use_mtls_obj": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "skip_server_verification": { + + Type: schema.TypeBool, + Optional: true, + }, + + "use_server_verification": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "trusted_ca": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "name": { + Type: schema.TypeString, + Optional: true, + }, + "namespace": { + Type: schema.TypeString, + Optional: true, + }, + "tenant": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "trusted_ca_url": { + + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "volterra_trusted_ca": { + + Type: schema.TypeBool, + Optional: true, + }, + + "disable_sni": { + + Type: schema.TypeBool, + Optional: true, + }, + + "sni": { + + Type: schema.TypeString, + Optional: true, + }, + + "use_host_header_as_sni": { + + Type: schema.TypeBool, + Optional: true, + }, + + "tls_config": { + + Type: schema.TypeSet, + Required: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "custom_security": { + + Type: schema.TypeSet, + Optional: true, + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + + "cipher_suites": { + + Type: schema.TypeList, + + Required: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + + "max_version": { + Type: schema.TypeString, + Optional: true, + }, + + "min_version": { + Type: schema.TypeString, + Optional: true, + }, + }, + }, + }, + + "default_security": { + + Type: schema.TypeBool, + Optional: true, + }, + + "low_security": { + + Type: schema.TypeBool, + Optional: true, + }, + + "medium_security": { + + Type: schema.TypeBool, + Optional: true, + }, + }, + }, + }, + }, + }, + }, + }, + } +} + +func ResourceOriginPoolInstanceStateUpgradeV1(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { + advancedOptions, ok := rawState["advanced_options"].([]interface{}) + if !ok { + return rawState, nil + } + + for _, va := range advancedOptions { + aa, ok := va.(map[string]interface{}) + if !ok { + continue + } + + value, ok := aa["http1_config"] + if ok && reflect.TypeOf(value).Kind() == reflect.Bool { + aa["http1_config"] = []interface{}{map[string]interface{}{ + "header_transformation": []interface{}{map[string]interface{}{ + "legacy_header_transformation": true, + }}, + }} + } + } + return rawState, nil +} diff --git a/volterra/test_server_helper.go b/volterra/test_server_helper.go index 97031c50a..04d79b285 100644 --- a/volterra/test_server_helper.go +++ b/volterra/test_server_helper.go @@ -22,6 +22,7 @@ import ( ves_io_schema "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema" ves_io_schema_api_credential "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/api_credential" ves_io_schema_combined "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/combined" + ves_io_schema_dns_zone_rrset "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/dns_zone/rrset" ves_io_schema_known_label "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/known_label" ves_io_schema_known_label_key "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/known_label_key" ves_io_schema_ns "github.com/volterraedge/terraform-provider-volterra/pbgo/extschema/schema/namespace" @@ -547,6 +548,7 @@ func makeCustomTestServer(t *testing.T, objectTypes []string) (*generic.Fixture, "ves.io.schema.views.terraform_parameters.CustomAPI": newTFCustomAPIServer, "ves.io.schema.views.terraform_parameters.CustomActionAPI": newTFCustomActionAPIServer, "ves.io.schema.namespace.NamespaceCustomAPI": newNamespaceCustomAPIServer, + "ves.io.schema.dns_zone.rrset.CustomAPI": newDnsZoneRecordCustomAPIServer, } // bail if there isn't a handler for every possible public custom API defined in schema repo @@ -618,8 +620,16 @@ func generateResourceName() string { return acctest.RandStringFromCharSet(10, acctest.CharSetAlpha) } +type TenantOption func(pbObj *ves_io_schema_tenant.Object) + +func withAddonServices(addons ...string) TenantOption { + return func(pbObj *ves_io_schema_tenant.Object) { + pbObj.Spec.GcSpec.AddonServicesSubscribed = addons + } +} + // mkDBObjTenant creates an instance of *ves_io_schema_tenant.DBObject -func mkDBObjTenant(name, uid string) *ves_io_schema_tenant.DBObject { +func mkDBObjTenant(name, uid string, opts ...TenantOption) *ves_io_schema_tenant.DBObject { pbObj := &ves_io_schema_tenant.Object{ Metadata: &ves_io_schema.ObjectMetaType{ Name: name, @@ -641,9 +651,39 @@ func mkDBObjTenant(name, uid string) *ves_io_schema_tenant.DBObject { GcSpec: &ves_io_schema_tenant.GlobalSpecType{}, }, } + for _, opt := range opts { + opt(pbObj) + } return ves_io_schema_tenant.NewDBObject(pbObj) } +// ves.io.schema.known_label.CustomAPI handling - start +type dnsZoneRecordCustomAPIServer struct { + sf svcfw.Service +} + +func newDnsZoneRecordCustomAPIServer(sf svcfw.Service) server.APIHandler { + return &dnsZoneRecordCustomAPIServer{sf: sf} +} + +func (s *dnsZoneRecordCustomAPIServer) Create(ctx context.Context, req *ves_io_schema_dns_zone_rrset.CreateRequest) (*ves_io_schema_dns_zone_rrset.Response, error) { + return &ves_io_schema_dns_zone_rrset.Response{}, nil +} + +func (s *dnsZoneRecordCustomAPIServer) Get(ctx context.Context, req *ves_io_schema_dns_zone_rrset.GetRequest) (*ves_io_schema_dns_zone_rrset.Response, error) { + return &ves_io_schema_dns_zone_rrset.Response{}, nil +} + +func (s *dnsZoneRecordCustomAPIServer) Replace(ctx context.Context, req *ves_io_schema_dns_zone_rrset.ReplaceRequest) (*ves_io_schema_dns_zone_rrset.Response, error) { + return &ves_io_schema_dns_zone_rrset.Response{}, nil +} + +func (s *dnsZoneRecordCustomAPIServer) Delete(ctx context.Context, req *ves_io_schema_dns_zone_rrset.DeleteRequest) (*ves_io_schema_dns_zone_rrset.Response, error) { + return &ves_io_schema_dns_zone_rrset.Response{}, nil +} + +var _ ves_io_schema_dns_zone_rrset.CustomAPIServer = &dnsZoneRecordCustomAPIServer{} + // ves.io.schema.known_label.CustomAPI handling - start type knownLabelCustomAPIServer struct { sf svcfw.Service